{"report_id":"fe7a857c-f72a-41e7-8681-b501540c8b71","version":0,"status":"done","tags":[],"date":"2026-07-27T12:17:01Z","url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":0,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"final":{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"title":"PERSIMMON TRADE - Best choice for cryptocurrency trading.","dom":{"size":99309,"mime_type":"text/html; charset=utf-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (9847)","md5":"c23ff838750d776ec942f88dcd4b80a9","sha1":"bac9af6f6c40526a58522f26abe77e4bb5111cbb","sha256":"1c2ffbee9d4450942bca09bf2694b03ab53ecbcedc00a437e934955cb87454bf","sha512":"ca64f7cd87b01223827c4784e35474da98e8e423182c4406cac5f6662183500a393bfc728e0c3e166869eca6c9ca6b82f2bedb3dadba87dc01ae216a25228d45","ssdeep":"768:Zqh7+2ILjzeslrYBrRkiQeQfQ2/IF4FDMFlNAs6s69iQimUnTKY8rkEUj7Iz9:ZO+2IfArRh/M180EQXX0rfTKY8ry7Iz9","tlshash":"33a38430a9b1092900cf62c2e9f157192277e307db060ae9b6ec43f55fcfdad8a53659","dom_hash":"domhashb31b07c692cae69856ecb56ab4455ef4","first_seen":"","last_seen":"","times_seen":0,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":0,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T12:17:01Z","useragent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0","referer":"","cookies":null,"exit_node":"qguvgzjxzsgb3vs"},"stats":{"alert_count":{"ids":0,"urlquery":0,"analyzer":2}},"detection":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"ultradns","sensor_type":"DNS","title":"DigiCert UltraDNS","description":"DigiCert UltraDNS","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"salesiq.zohopublic.eu","verdict":"malicious","severity":"medium","comment":"","link":"https://vercara.digicert.com/ultra-dns-public","meta":null}],"urlquery":null},"summary":[{"fqdn":"www.tradingview-widget.com","ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"domain_registered":"2020-06-05","domain_rank":196495,"first_seen":"2021-04-08T06:14:48Z","last_seen":"2026-07-24T15:28:31.440139Z","alert_count":0,"request_count":140,"received_data":3906708,"sent_data":77928,"comment":"","tags":null,"fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"s3.tradingview.com","ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"domain_registered":"2010-03-20","domain_rank":165395,"first_seen":"2018-06-24T04:06:00Z","last_seen":"2026-07-25T05:38:23.80932Z","alert_count":0,"request_count":4,"received_data":57518,"sent_data":1994,"comment":"","tags":null,"fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}]},{"fqdn":"www.google.com","ip":{"addr":"142.251.154.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"1997-09-15","domain_rank":22,"first_seen":"2015-05-10T13:11:19Z","last_seen":"2026-07-26T22:51:17.688286Z","alert_count":0,"request_count":1,"received_data":717,"sent_data":551,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translate-pa.googleapis.com","ip":{"addr":"172.217.113.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":32329,"sent_data":575,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widgetdata.tradingview.com","ip":{"addr":"93.123.102.177","port":443,"asn":199524,"as":"G-Core Labs S.A.","country":"United Kingdom","country_code":"GB"},"domain_registered":"2010-03-20","domain_rank":179381,"first_seen":"2015-02-20T09:47:36Z","last_seen":"2026-07-26T01:26:45.690501Z","alert_count":0,"request_count":2,"received_data":448,"sent_data":1550,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widget-sheriff.tradingview-widget.com","ip":{"addr":"143.204.238.28","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2020-06-05","domain_rank":206730,"first_seen":"2024-02-01T14:12:53Z","last_seen":"2026-07-24T23:32:22.077351Z","alert_count":0,"request_count":4,"received_data":2257,"sent_data":2276,"comment":"","tags":null,"fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"www.youtube.com","ip":{"addr":"142.251.151.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":2,"received_data":32194,"sent_data":1550,"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":"persimmontrades.com","ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"domain_registered":"2023-10-17","domain_rank":0,"first_seen":"2026-06-14T14:02:12.946619Z","last_seen":"2026-07-27T08:58:20.021981Z","alert_count":27,"request_count":27,"received_data":8046374,"sent_data":15262,"comment":"","tags":null,"fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"name":"Google Maps","description":"Google Maps is a web mapping service. It offers satellite imagery, aerial photography, street maps, 360° interactive panoramic views of streets, real-time traffic conditions, and route planning for traveling by foot, car, bicycle and air, or public transportation.","website":"https://maps.google.com","common_platform_enumeration":"","icon":"Google Maps.svg","categories":["Maps"]}]},{"fqdn":"translate.googleapis.com","ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":6317,"first_seen":"2012-05-31T07:21:21Z","last_seen":"2026-07-20T14:48:05.930258Z","alert_count":0,"request_count":2,"received_data":268611,"sent_data":1158,"comment":"","tags":null,"fingerprints":null},{"fqdn":"scanner.tradingview.com","ip":{"addr":"143.204.238.100","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2010-03-20","domain_rank":111106,"first_seen":"2016-08-02T09:33:18Z","last_seen":"2026-07-22T10:20:45.048286Z","alert_count":0,"request_count":1,"received_data":167423,"sent_data":680,"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":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}]},{"fqdn":"fonts.googleapis.com","ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":313,"first_seen":"2012-05-23T12:41:44Z","last_seen":"2026-07-26T22:23:14.439231Z","alert_count":0,"request_count":2,"received_data":11440,"sent_data":1051,"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.gstatic.com","ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2008-02-11","domain_rank":146047,"first_seen":"2012-05-29T15:36:17Z","last_seen":"2026-07-26T23:06:30.068608Z","alert_count":0,"request_count":5,"received_data":48622,"sent_data":3093,"comment":"","tags":null,"fingerprints":null},{"fqdn":"s3-symbol-logo.tradingview.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2010-03-20","domain_rank":110931,"first_seen":"2020-11-23T08:22:37Z","last_seen":"2026-07-25T00:19:15.629884Z","alert_count":0,"request_count":16,"received_data":16548,"sent_data":9316,"comment":"","tags":null,"fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"salesiq.zohopublic.eu","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":427646,"first_seen":"2017-02-02T13:42:49Z","last_seen":"2026-07-22T12:28:56.666846Z","alert_count":3,"request_count":3,"received_data":164245,"sent_data":2424,"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":"snowplow-pixel.tradingview.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2010-03-20","domain_rank":110021,"first_seen":"2020-02-21T21:21:18Z","last_seen":"2026-07-21T08:39:31.331722Z","alert_count":0,"request_count":4,"received_data":0,"sent_data":2304,"comment":"","tags":null,"fingerprints":null},{"fqdn":"fonts.gstatic.com","ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2008-02-11","domain_rank":0,"first_seen":"2014-04-02T10:51:04Z","last_seen":"2026-07-26T22:19:52.505461Z","alert_count":0,"request_count":4,"received_data":33151,"sent_data":2256,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translate.google.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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":3386,"sent_data":1096,"comment":"","tags":null,"fingerprints":null},{"fqdn":"maps.googleapis.com","ip":{"addr":"172.217.113.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":3442,"first_seen":"2012-05-22T14:23:23Z","last_seen":"2026-07-27T08:05:41.956091Z","alert_count":0,"request_count":2,"received_data":312564,"sent_data":1001,"comment":"","tags":null,"fingerprints":null}],"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.tradingview-widget.com/static/bundles/embed/create-tab-labels-impl.0b547767d07e08bb7253.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"026653f0df81a4a71e532c30f5935de9","sha1":"722c6637aa2fe6239886103cc1bfa3b53bb9bb51","sha256":"a4ea1ddd9ece32035132ddf73bb24b7ac12ab958618768fc64f3fd487751c53d","sha512":"5ea3f8bb0f15978b4ce3057fd1ebc515d72a707b58f9431704b7cb96d14d06ec56541b9aadf21ad9653f1e731835339028c9130d8b15a6c612f8ceb06dc8c598","ssdeep":"384:j4796kY6CQx86mYPdvUY1C8KfTP4v8mQlnN/b0Aw:j4796NQx86mYPeYVK5mQlnN/Pw","tlshash":"2e720ac37755b06976a365ba807f414da33f2819b56f8cd0e190ecd8aaed648813bf4c","size":16770,"data":"","first_seen":"2026-07-23T13:38:20.515019Z","last_seen":"2026-07-27T14:22:59.63092Z","times_seen":101,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"42e34d43963ba5c8f37c775b35258a3f","sha1":"77848caef3f422b34490fbcc9b420a2eae91e973","sha256":"4bca020551dc54855ef72cda3d88a25ac010c32345bebd8111e1d884f56b1dfb","sha512":"1d102717114d2322ba1fd3ec6fab0b9da9bc194793c340ce4efc56611ac5ea53860b13a04ec8c3e20da463da1c752b9254516dce5bc499934db40f301037ea5a","ssdeep":"","tlshash":"8690020da4210201206830c4fa8236426c9104a04f099c100101d81061c910bc8556df","size":46,"data":"","first_seen":"2026-05-25T20:24:44.282834Z","last_seen":"2026-07-27T14:18:36.437881Z","times_seen":3862,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"2d411354f21bb22b65f55d8bfad14f6e","sha1":"0a0a24845eb1cac5a48518e1bc5db6e3d5dce792","sha256":"cb1426008557b5894157468472242e22bb84d186d91063e50456abb38b79ed23","sha512":"f95f53d57cf6b8cd06137c700ea9f82b2342115f8ac40630b9fcd57322f6e4d42e6ed7ffe48e64c0dbe39388cfb9f76813d882fb40b9c5504cf0e670ab3b28fb","ssdeep":"","tlshash":"1d80002080a00000a28830c2e008002c3838c3320a8022c0838080028082ae082e02a3","size":27,"data":"","first_seen":"2026-07-16T11:36:17.999846Z","last_seen":"2026-07-27T14:18:36.438501Z","times_seen":2432,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"8483c97c0a0a3d873a09ddc605f47391","sha1":"3a93abcfd491c6f2c8e899e35bf80427b465f462","sha256":"9671bf109b8886678177b24bba3ded2a6c71b71ddbf20d21f84dd976d8b20c62","sha512":"bed4397c75bab4f4e8f0ad97dd2183a398dbf1b6cdd792b70c1f709082788fe60c3d4709ecac9d90f2141c74955b8f9c6500cb23c98c844430df74e414508a7f","ssdeep":"384:LipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4O1rBQDh30:eNogFbLrqh30","tlshash":"4e924267c80da32ac5569d2abc6bb602fc6d076945e52a6076ecc86c04c7d43e30fb7d","size":20265,"data":"","first_seen":"2026-07-27T10:33:56.653391Z","last_seen":"2026-07-27T14:23:37.944343Z","times_seen":45,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"8062d232826eee4ffac1e152a5142514","sha1":"1b7f2090ebcfc1380f56c34dfc4f294c7301605d","sha256":"ace81cabed19b96885e6fec0ca99bfc73b71b6ad7df50664f92e68ca7281512c","sha512":"4e11703f66d5cb936d78dc2aca12c94504819135e1040189ba4675f1c0b5c1478ece5ca2f02d7c893a38b341f34dc318703d6d7a4c51307c031d5384676f2c01","ssdeep":"","tlshash":"78f02d7c1403dcf784fa1082c6b8e2c0c653856aef942ee123408ac2220ebaf02b1bd1","size":651,"data":"","first_seen":"2026-05-25T20:24:44.288837Z","last_seen":"2026-07-27T14:18:36.439781Z","times_seen":4002,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"f07c4f86a1b5524cec5397c170a0e9b5","sha1":"a8ef59c61a316f6095680bcecfa0c48466d72593","sha256":"32849254237db69547de8eb2f61b99d95e7466b89168687bf780bfd79467fbd0","sha512":"2c656e2adb0d00233577547ecc1f0efcf98bdfcf0f87ffc62fedafb4e4fc22e8c04e348d02bb3f3d0db21962e55712f132738e0685fa2c3e9755a241d55b9446","ssdeep":"","tlshash":"ce11570a0135042a7ae04164b6362ef5352c3add4b43daec5b857c0972b3a768d50bfe","size":957,"data":"","first_seen":"2026-05-25T20:34:17.759767Z","last_seen":"2026-07-27T14:18:36.440266Z","times_seen":3198,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"a451bd95e420d24a151cb5a25660fc44","sha1":"de8b722786339662ff8f0f6a25cd85930eddfb6d","sha256":"c8f09d6bcd1db51b6c98a3f11c98e6af82972a8fbd80e72dd14822bdc7c8ca97","sha512":"80b4700545cf6047c2c0d3f4a2156c0bef71d9bb050e302185e1806abce0b043b96d282712e02494ca2472e027a0e018e825ef23fd7a8d5f2768342dd46f086a","ssdeep":"","tlshash":"25e0cd478124c410b2d65848e53919f53109b59ae64309f1f260bf0cb1567f394d5dfc","size":321,"data":"","first_seen":"2026-07-24T11:36:48.290535Z","last_seen":"2026-07-27T14:18:36.44092Z","times_seen":1558,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"9d9bc5ffab15aed4773d569d62c5ba8b","sha1":"0c8d1aaf4c47cdfcda045dab107ca532b1f79b2c","sha256":"46a2e650802f69388f056281de89811b65b26bbb94350a0e175c7c4c4368a483","sha512":"8a7e0f121165dd69fcc12c3e8c8fa5cc13a4459d091f1229d33efba3db5cbe6adbd703665df67609399e5adc89884506e7fd6abb61759b06e7abd565d01c79e9","ssdeep":"384:RMt9Rl8Do+vHgzH6wmrebszczwhH/p5lOrylk6uNFCSF5I3epMtK3/MWFei:RWvGDo+vHgzH6/8szcyzuvCSF56yMi","tlshash":"44a2648196270c052bea174a68325103b22446f8d647395cbd786dee6e2cbc671f37fb","size":21867,"data":"","first_seen":"2026-07-24T11:36:48.297592Z","last_seen":"2026-07-27T14:18:36.441524Z","times_seen":1558,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"569704bfe6c1be70bea96e62c95d10b2","sha1":"1ebe9e3483f15928d18af8367a993cc1fe6f95f6","sha256":"577136df8200adf35699ebd443ff95aff588911e5451a64e7249b954d496ab08","sha512":"27482e4bae245a82e789bd6bba1746bd03fc6d2916045062e35f6bd7d8496ff54720271e9b16bf9c72972f08d7d7aeed33e1c0e2d0ef905ea9253578b05d44f2","ssdeep":"","tlshash":"6c3150f9e42264750ad310d832b7c7aa3f333595f1c72552c4bcc08a15a6dca24a3eed","size":1547,"data":"","first_seen":"2026-07-20T15:50:49.068553Z","last_seen":"2026-07-27T14:18:36.442087Z","times_seen":2308,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"d080aef1e28b9ced897f549e49b13916","sha1":"75abf1173fad589cc5e35b388fa0a3067188e157","sha256":"cb914bbd5f3df056d111c04f26650d699d100920c24e13e5e50c67ecd1de4e93","sha512":"746fc099bb9ed96629e79d592c09b25bb38203a52cb1dced0a65325ff096b1ce9f508f5f2a26570312d75569a6b56be634501e6fa6a59c2fbde67af8418caa04","ssdeep":"","tlshash":"48d0a754212b612234dc3054d62ee6d1f5151a922fd310ebd7992018b665893a9547ed","size":245,"data":"","first_seen":"2026-05-25T20:24:44.292788Z","last_seen":"2026-07-27T14:18:36.442678Z","times_seen":4004,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_timeline_widget.8f56278542a9179f39f5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"f52abc055236b0e7c579e36502699d99","sha1":"5bf9aa5b6bf9365cfc73148d7e6f8a13e4a9aab9","sha256":"5a0df6f2035e30d5ce764cd4cbb4ab9949635c5c371acfaf7137d6f6886f7beb","sha512":"774855c25c78f2bcb39c20a8e81337c8e8ec8fe94c6b8171d33bec0129c8325769244128a2b28b8a9174a74b4df5752e0eb75808a09e45821a5aac3f095537d7","ssdeep":"768:5DS/P+ySy+3+xUxJYIq+Rrvq1oxmjPIXqSEgN559qzPgWrHS01X2ExQie0sC/DYp:5DkP+LZWP4qtgSPy3wXeUUn","tlshash":"b03329567191b06d66b710db90bf1104f77a2d54bc5ecc60a2bcaccd38b0a48662bfa9","size":52187,"data":"","first_seen":"2026-07-24T21:10:00.120004Z","last_seen":"2026-07-27T14:14:25.385439Z","times_seen":142,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/36166.7637be1cf2514504ac79.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"51776a5fc46a025b06d1b20c444a8934","sha1":"ded406bfe93dcf4112270cd3f1634b7bec2da0cf","sha256":"6619f156d8b0192fb34d6c756bf0bda361c55a6a2d79c9fe1117d9a83ad626df","sha512":"1a8c2a8de6868dcf9765cf86c13f9a9f50c87cc022a6142c3a48a4e8da04589a6c06376ccb2928de274dd64f5558784b2a5f2c5c13617c7c40ea38359ab819ad","ssdeep":"384:Ew9WKLri/jpKfQVAFzMnNReRhrt3bkiRWXxKziTObRcRbF:Ew9WKa9K4Gz4fejx1RWszhbe9F","tlshash":"8492b5c8b1e1f0e556e768a0807f444bf13a7d19349e9060a3a2d4d678b46dec07bf6e","size":21217,"data":"","first_seen":"2026-07-25T03:24:57.421925Z","last_seen":"2026-07-27T14:26:47.098053Z","times_seen":306,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","size":4812,"data":"","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-27T14:18:36.426457Z","times_seen":4545,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"c37495f6ca72950f28ad5a6a79a0bab4","sha1":"b23429fd2dea7f2557a8a68545083949759c3ad4","sha256":"b4511e0c850bde295127e6af14148f016b9aea35ea705cdf3106a5a1edbd93b8","sha512":"ddee6e0c9cd60676d9195e2fb635982af76e72cf188acf0f42ba7ac648dbd5acc579a186a2c51fb5ac9d5e758c5289ab285ea4e80694b19f70a1715a5707b77c","ssdeep":"384:L+x0EMPsBRgXD2PTmdN2/5dQ1tHSJm/BtU:L7E2NJuJmI","tlshash":"2cc2c007cd96b099f3f6e24e0eb4d50c2cb453495270d702be868e289ae5ee69d2f315","size":27626,"data":"","first_seen":"2026-05-05T10:36:04.872376Z","last_seen":"2026-07-27T14:18:36.415557Z","times_seen":4159,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"42e34d43963ba5c8f37c775b35258a3f","sha1":"77848caef3f422b34490fbcc9b420a2eae91e973","sha256":"4bca020551dc54855ef72cda3d88a25ac010c32345bebd8111e1d884f56b1dfb","sha512":"1d102717114d2322ba1fd3ec6fab0b9da9bc194793c340ce4efc56611ac5ea53860b13a04ec8c3e20da463da1c752b9254516dce5bc499934db40f301037ea5a","ssdeep":"","tlshash":"8690020da4210201206830c4fa8236426c9104a04f099c100101d81061c910bc8556df","size":46,"data":"","first_seen":"2026-05-25T20:24:44.282834Z","last_seen":"2026-07-27T14:18:36.437881Z","times_seen":3862,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"2d411354f21bb22b65f55d8bfad14f6e","sha1":"0a0a24845eb1cac5a48518e1bc5db6e3d5dce792","sha256":"cb1426008557b5894157468472242e22bb84d186d91063e50456abb38b79ed23","sha512":"f95f53d57cf6b8cd06137c700ea9f82b2342115f8ac40630b9fcd57322f6e4d42e6ed7ffe48e64c0dbe39388cfb9f76813d882fb40b9c5504cf0e670ab3b28fb","ssdeep":"","tlshash":"1d80002080a00000a28830c2e008002c3838c3320a8022c0838080028082ae082e02a3","size":27,"data":"","first_seen":"2026-07-16T11:36:17.999846Z","last_seen":"2026-07-27T14:18:36.438501Z","times_seen":2432,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"e4fc940c205e8d372a380476ecdee311","sha1":"157ae24e8705a7409f6bd59e7f909067783f6ef4","sha256":"288bcd91ddbd8a0b4fd740ff59b9bf7220be1d741c50441f19142cf4629dbe05","sha512":"40ba1ae0d7e3703e4ac4c800c0fe10fcd7cc955fdcf79b1e434e97242ae5572ceaf6913f11270dae9aa5194fda1b41ba87acff5db76fb1e303dab76e71f87f37","ssdeep":"384:LipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4S30:eNogFbLrF30","tlshash":"84822067c80da32ac456de26bc7bb602fc2e075945b529646aecc86c04c7d53e30bb7d","size":18674,"data":"","first_seen":"2026-07-27T08:02:42.011171Z","last_seen":"2026-07-27T14:22:59.785539Z","times_seen":125,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"8062d232826eee4ffac1e152a5142514","sha1":"1b7f2090ebcfc1380f56c34dfc4f294c7301605d","sha256":"ace81cabed19b96885e6fec0ca99bfc73b71b6ad7df50664f92e68ca7281512c","sha512":"4e11703f66d5cb936d78dc2aca12c94504819135e1040189ba4675f1c0b5c1478ece5ca2f02d7c893a38b341f34dc318703d6d7a4c51307c031d5384676f2c01","ssdeep":"","tlshash":"78f02d7c1403dcf784fa1082c6b8e2c0c653856aef942ee123408ac2220ebaf02b1bd1","size":651,"data":"","first_seen":"2026-05-25T20:24:44.288837Z","last_seen":"2026-07-27T14:18:36.439781Z","times_seen":4002,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"f103cd93b96905ea7d90bf627d9ef69d","sha1":"e37e19173263d551d84957d033ef7a1a30e180ed","sha256":"30455182bf8db66b87f96444e3b4356eae13954eb33b29a9636817b091c7d25d","sha512":"8610576226b73656614eb67bb72368cab9d6d3834045eee7eeef1f25cea0d1c245c08cc7e15ef0d13a7a854d676e1ed45115d0c7fab0d4631d1b43caeeeef526","ssdeep":"","tlshash":"0711880a0135042a7ae04164b6362ef5363d3add4e43d6fc9b857c0872b3a728d50bfd","size":1016,"data":"","first_seen":"2026-05-25T20:24:44.28983Z","last_seen":"2026-07-27T14:22:59.78666Z","times_seen":562,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"569704bfe6c1be70bea96e62c95d10b2","sha1":"1ebe9e3483f15928d18af8367a993cc1fe6f95f6","sha256":"577136df8200adf35699ebd443ff95aff588911e5451a64e7249b954d496ab08","sha512":"27482e4bae245a82e789bd6bba1746bd03fc6d2916045062e35f6bd7d8496ff54720271e9b16bf9c72972f08d7d7aeed33e1c0e2d0ef905ea9253578b05d44f2","ssdeep":"","tlshash":"6c3150f9e42264750ad310d832b7c7aa3f333595f1c72552c4bcc08a15a6dca24a3eed","size":1547,"data":"","first_seen":"2026-07-20T15:50:49.068553Z","last_seen":"2026-07-27T14:18:36.442087Z","times_seen":2308,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"d080aef1e28b9ced897f549e49b13916","sha1":"75abf1173fad589cc5e35b388fa0a3067188e157","sha256":"cb914bbd5f3df056d111c04f26650d699d100920c24e13e5e50c67ecd1de4e93","sha512":"746fc099bb9ed96629e79d592c09b25bb38203a52cb1dced0a65325ff096b1ce9f508f5f2a26570312d75569a6b56be634501e6fa6a59c2fbde67af8418caa04","ssdeep":"","tlshash":"48d0a754212b612234dc3054d62ee6d1f5151a922fd310ebd7992018b665893a9547ed","size":245,"data":"","first_seen":"2026-05-25T20:24:44.292788Z","last_seen":"2026-07-27T14:18:36.442678Z","times_seen":4004,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_timeline_widget.e5191b4c73374dc05339.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"535549135f01435f70d28ed1fb164308","sha1":"8088bad59988a235e1c06408cac8975133ec14fb","sha256":"3aa764c015f8145394216beb6c32086072356d506874f177f274baac2c704dbf","sha512":"595799f8052203f67e32e9ab0821afe1258b7663d9a81ce9f476193e3d2e3465417ae0e2f55834a465f22febf1f62a80c655e83773727e1666619da4b65af985","ssdeep":"192:44ZIR0wTbdhqy1pxKf8lJkiomn1xnRAG4pUk0Afm92:PeR0wOq3Kf8/kdm1xnRAG4pUk0Afm4","tlshash":"def1c49c3018e53121fb0852003ae4a2f72c63eb5f0bd4a09267fcf96868ed47633e95","size":7870,"data":"","first_seen":"2026-07-24T21:10:00.145585Z","last_seen":"2026-07-27T14:14:25.42539Z","times_seen":142,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"0af33a0629a4a15d05b8d21be003c0eb","sha1":"d61ed97048a72976c85785513a62b5e8590fb75a","sha256":"4dbdbd0c38d1d6468cbd0ec6b02411faaeffeddfc87c7b638be2e1263931cd14","sha512":"4350a5eab085a85477d149b1a91edb41a808bb070818e9d43e5e1147e4c71a0a5c3438616ab61efb6497365cb84e1f518343afd20431bb8612ba9f7a2165f814","ssdeep":"1536:wjugPsJO3KbxBvr1tBzoxvAgVIvrKfu2DNzmR5axsx5Eng/vc2JZu4+ej3aNOtHm:k0yKlvh/Z+839HMY74qBs","tlshash":"149309ddb2c5b06257e731b910af650ab237249d680d8440f139e8f6bc74b4aa13be7d","size":88966,"data":"","first_seen":"2026-05-05T10:36:04.846561Z","last_seen":"2026-07-27T14:22:59.587085Z","times_seen":2310,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/42288.47ecaeca1012ee3e1d8c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"146c86b697d57edadedb79e577a2b819","sha1":"fac3ccefeac950dd75b09bf983e4db643acb17cf","sha256":"e7c1e85bb4c79e48526d268113263cbed1b8dc51caa0f7ece95022ce45c6426a","sha512":"0c8f76ba43c26ac96ac8ce77228656bc32000075828146c8e3f5f6c8d83aa1124958db4a287753456a136751fe65d9fc935c7e8efead69cb7bc5587e6f54cd75","ssdeep":"384:IPLZpvbUA+tmPj2DF4ciyLHBoIUEDHfKXqEVKtwAqXrNc2G/p5RuePAU32wDP7Fb:IT78mPj0FHLHevUfKa+EwBxnJePTr6Y","tlshash":"a29219c260053875dddf6eef405b45ade33e243538055499b238adec02a9a5873a7f2f","size":20221,"data":"","first_seen":"2026-07-22T11:33:41.962494Z","last_seen":"2026-07-27T14:23:37.865812Z","times_seen":267,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7504.1288d1d28b2f47f7ac43.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"185306b73eb6156ba89819ac42f09043","sha1":"0e91a337a58188b9760881d3eeb271cc4c8ac2d0","sha256":"4433e6c002fc34e6971b340b447cb59f9704a935f8ff79457535ae6c04f2a91e","sha512":"62e46a9de161a635772e81ac6f569c8a85bcde20c9143b5dbf3fff3d0acc7a668643a351bbfe42e981d28861648256d6fb72849990fbdf3089e0d8da3a378c9b","ssdeep":"384:t0ohD1L+Hfz4m0ehDLL+HfzLNVEGdmMDPHt+eiWxyATTSXUaaexXzIDyg5nAWhJw:t0ohJL+Hfcm0eh3L+HfdaGdmMDvwWxn4","tlshash":"3aa294c83ad3f0ea926721f514af14c7f2392e666c9d9660c15de0d87c3602df12bd6a","size":22216,"data":"","first_seen":"2026-07-04T00:11:22.529436Z","last_seen":"2026-07-27T14:22:59.608024Z","times_seen":381,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80207.3e5e7d68c875b367cad0.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"efb45a2a5e9dedce76162279dc170b0e","sha1":"38843307f1bc14de893dfe253b89aa9ec4532bfa","sha256":"c4adc1700ca5f8538ca44843bf76da33e0bc360cdf11ff0ddafbd8856c5bad4d","sha512":"3ef5908b8c8ed8de392171a9c51bbea83f11fdb7542f8fb58439589ee43db4b6785bdb1a3e71993950d28351eb79c5548d8567cfb5f4a5991ab3488d323d675e","ssdeep":"1536:guE5AIu9J3vqcJNT6FuEckfLVnddIwc99EkRIWEEPk2SYHj28kxu:DGxu95vqcHT6gT8VnddPgTRCEgYDDkxu","tlshash":"7f33a56091880f44656183d0bcff24602d9c3d5b4ab665bcde9f0d5b4e99ac83e3bd3a","size":54012,"data":"","first_seen":"2026-06-24T00:20:51.960912Z","last_seen":"2026-07-27T14:22:59.685731Z","times_seen":415,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-screener.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"1d1f8c8f959c6dfe16b5df875e3e6a20","sha1":"05c8ccc14d187d3f57e68109996ffb71835de5a8","sha256":"362c5302b447aa33060156e760f193574c506b4bcbcce3d720c0422a830da740","sha512":"66818bdae0d6b15dd9e97bd4ab64b6396595b2f685c5643165618cfce9f13699a12db224ea81c51e78e303be467795c01dd25084441a89c487fab2fcfb37882c","ssdeep":"384:gfLuCWoofYkFdjEUjrb2oNf0qIOj26eoVH7MXt:u4MUnb2oJDIOj26eQYXt","tlshash":"f452c6aab660ecbd41d945cbe07a2720b61d3a44b207eca4b5acd4c550edccca531f7e","size":13242,"data":"","first_seen":"2026-07-16T20:48:56.348973Z","last_seen":"2026-07-27T14:22:59.711075Z","times_seen":273,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.56093.a47a90809660f801c2ac.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"51c25a0bfe62c19a67cf2b95b6bca15c","sha1":"d31fa4f6ee0c62987e69688ba41c6e49c115c722","sha256":"e804fa7b20565e31cf03df061c695a3e4816b6642e311b9ab69fb1c74cb9b5f8","sha512":"67701c95fe95d12ce594204da841a88c0d5a52b842367ad2f62ed76e360eaa8a13731aade15f0dfc0419ea0bdac268402e28367c7a755e46bd8fba65ab59a2e9","ssdeep":"96:xvhtKURB2yTdjoA5OoH80e1NzU3rJkbTJRr:JhNRzTdnH80e1q3rgTJh","tlshash":"7ca14227d010c1ea2fb6da24b795dcd0b5f4b1e100f1e8ca7b466f66c21bd6528352f8","size":4946,"data":"","first_seen":"2026-07-23T13:38:20.523865Z","last_seen":"2026-07-27T14:22:59.531035Z","times_seen":253,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94708.73d2bca37207c67a41f4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"eb8c592becd98b3361efe0b94719d5c6","sha1":"a0d1ee8521cfba7aa407ac50937aedd5f39bf878","sha256":"647fb8708ead9f5ba58a75d3b5e6d45f3df1f26a67f068d19a46752de40e327d","sha512":"27e850e1b55df1bfb523a33007db88c5bf3fca11c34b9f448fad508275031d48062410c7e49cd891d38f4058b2dad657828a8ce9f5a047b24a8804c477a90feb","ssdeep":"768:Qy2uEBDBP0oAifg+OMQjn3FMjhYVwPn9/meP+Tjwqcq8xGQKpb5dg+xU7wbwpEvK:k950TT3WOOP9AsqcK555x/dMDjcXRdH6","tlshash":"f4f2f917f1a7b46693db809ae4724213a33c18013d05486dbabc9ddd2a3f942b663f7d","size":35736,"data":"","first_seen":"2026-07-23T13:38:20.417189Z","last_seen":"2026-07-27T14:18:36.345123Z","times_seen":1474,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/20061.8715a452514d45d5dd3b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"7d505e8048a3d56a7c35fec43b942e28","sha1":"7cc8e3f14d3c2bc72667a4b341a18173ba08360e","sha256":"3c8a6537a973cf0adf27e43d6727b986d50fc12ac3b1bf62528b892270b5a901","sha512":"42ecf81a5c530657c264164cdace5abb238353df391c16cb5f4eb18c3d4eea154e934f76f113c9fe8c77cd66d8e6038b288ce213c22f225e959c5b61f6221849","ssdeep":"192:OlOIsbRrYGv5JJjaqRSPoi35z6e5WyoEH6R+0332JtcIKidzTnM:OlOIs1BnJjaq+oCm1GH6etcFidzTM","tlshash":"44f1b89870c9b07653c60867f0735488f23c2550788e89a0f298dcf63ab285ed267f9d","size":7907,"data":"","first_seen":"2026-07-23T13:38:20.472499Z","last_seen":"2026-07-27T14:18:36.357551Z","times_seen":1321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80706.a5913aa6ad62d9dbf031.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"7d7a3ddeb844a1fdfe8b024f9df9f0b6","sha1":"b3afece36b14fafc7889e9b954f9736c892a2849","sha256":"0752584a0f2ad3bba4f44bbd6a44bf08a76726c524b79367996ab9b20e03bfba","sha512":"c0b04bf9ca52fee536a54ae9fcb3fcac9ee210f95be1205e4fe48f0cbb1f25a4db788a4ae10cd4b5ee13e1dc5159c2a4d48516d50bf1ee07d2da1a00fa95ac38","ssdeep":"96:VI23hKdh7P1lIbeWL9aqfMbFNriK6Vizc/MuomCA9P0LX4BYyCnsI6T:n3wT9lIbeWJaqfvXQcEA0LHxnf6T","tlshash":"c4e1c6c832b1f0eaa3e325e480ab5806e13a6d5a558e60b6e34557d37874fc540ffec5","size":7142,"data":"","first_seen":"2026-07-23T13:38:20.481503Z","last_seen":"2026-07-27T14:18:36.416149Z","times_seen":1483,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/56258.282e6141fc02ac85d0d5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"a9563eafb41c9e6b519a29f0206f6b89","sha1":"43a8b417d99fe60c3d65ddae1e66d8cabd277000","sha256":"ba67ff82446ee411a3ef96ebe6abe55cf6cc1abfd78c841cd5d9a0a70804725a","sha512":"1e31a74cb24aeb33cac85e854608a21314f1416f3db595d14b0577305da06f72bf42b9dea2c36f570fcea9dbd7d88793bd8bc291d498ab58b1e2413f173b781d","ssdeep":"96:AaPctCCkctcSycQOchchctDOAXtC4C2GM0/CnXkMHsU3KEu9pJfmJuuImRBYkqMy:NcUrctcXc3chchc1OotC4ChMUCX1HFRM","tlshash":"d5c1118471c1f09513db9a82a4370606f27d5c5c704b79ece3d0d4d6aabba4db42bb36","size":5966,"data":"","first_seen":"2026-05-19T10:58:17.796011Z","last_seen":"2026-07-27T14:22:59.718752Z","times_seen":998,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","size":34195,"data":"","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-27T14:18:36.427118Z","times_seen":1638,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_market_overview_widget.96429594954f17872c5a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"03bc89731b32b1acbc599b78c5ad4624","sha1":"40392222483220f8536bcd1e283521ad2276d808","sha256":"11c7ad45c015a6203aa5c872605633fa14d2a2a7e0374ae87d02988e959caaea","sha512":"d303fa5207ebaf243084c56a4a0a0928c92b1e96eec9a382612a311e9536765be8a58a894568b60b7f7cb8f9a35c74aac9dff6cfc41e2cf5bc9ce659663d1e05","ssdeep":"768:wrxJjBy63DjsTJbYTbsTieTbvsUWiHNoSB5dg6N6z45YKY8ziB5/UIpi0WxAoFTc:8xJY62ddA3KHlm1J7Th","tlshash":"b3f2b731f12028ae02ea439b54751303d1532e8cf566e9ecbd79acdd570c9c8a2b6e7d","size":35621,"data":"","first_seen":"2026-07-24T21:01:56.866569Z","last_seen":"2026-07-27T14:22:59.72105Z","times_seen":215,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87995.911b26181778fecc4b4e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"6a05d8171572287378e38e6964e02fe8","sha1":"63d026c77be2140ec887f9ff6d3f073098c753d7","sha256":"6c8f663aeaed79d462dc53895df9b7870b0e620a0dfe1116cb122d17391b60ed","sha512":"a4076a5db83f1d9f5054f7bcbcbb078c8881c79fcd79ea086d710a4a25568695a0fb17213a40d0b396482e293c7d980d411e5f128a7a040a765286cf92d3595e","ssdeep":"768:72RxBdTMf+AnnZv7+SVxp9QYQ2UYfzvEB7DU0M/Zm8FNpVwLY8jnEM//i7XeBFK8:7SEnnZv7+S9Un78F/VwLY8jnEM//i7XM","tlshash":"97e2a642e342606702f381ed0c354503a339ebd5784649acb6a98defb56cd0cb5bab7d","size":31267,"data":"","first_seen":"2026-07-24T18:44:55.949977Z","last_seen":"2026-07-27T14:22:59.58383Z","times_seen":317,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"42e34d43963ba5c8f37c775b35258a3f","sha1":"77848caef3f422b34490fbcc9b420a2eae91e973","sha256":"4bca020551dc54855ef72cda3d88a25ac010c32345bebd8111e1d884f56b1dfb","sha512":"1d102717114d2322ba1fd3ec6fab0b9da9bc194793c340ce4efc56611ac5ea53860b13a04ec8c3e20da463da1c752b9254516dce5bc499934db40f301037ea5a","ssdeep":"","tlshash":"8690020da4210201206830c4fa8236426c9104a04f099c100101d81061c910bc8556df","size":46,"data":"","first_seen":"2026-05-25T20:24:44.282834Z","last_seen":"2026-07-27T14:18:36.437881Z","times_seen":3862,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"2d411354f21bb22b65f55d8bfad14f6e","sha1":"0a0a24845eb1cac5a48518e1bc5db6e3d5dce792","sha256":"cb1426008557b5894157468472242e22bb84d186d91063e50456abb38b79ed23","sha512":"f95f53d57cf6b8cd06137c700ea9f82b2342115f8ac40630b9fcd57322f6e4d42e6ed7ffe48e64c0dbe39388cfb9f76813d882fb40b9c5504cf0e670ab3b28fb","ssdeep":"","tlshash":"1d80002080a00000a28830c2e008002c3838c3320a8022c0838080028082ae082e02a3","size":27,"data":"","first_seen":"2026-07-16T11:36:17.999846Z","last_seen":"2026-07-27T14:18:36.438501Z","times_seen":2432,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"b25e3ea4df985c1208cd03a705557bb6","sha1":"b129eff7286697baa80f9af5bb8221b950b70c69","sha256":"f04db38be2b0bb3aff1eb6901ec962d1d77ad08232921f6fb1e37aa7dc6de086","sha512":"039a8c7ef54a3f21255dfa8bc314bac284869fa0f8a436f2f830d8b4a4fb46281fc5791a7fee45ef7304bfe533ca25a252810881764ccaddb52e160777d17fa9","ssdeep":"384:LipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4J30:eNogFbLrM30","tlshash":"c3822067c80da32ac456de26bc7bb602fc2e075945a529646aecc86c04c7d53e30bb7d","size":18641,"data":"","first_seen":"2026-07-27T08:10:50.657207Z","last_seen":"2026-07-27T14:14:25.454916Z","times_seen":53,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"8062d232826eee4ffac1e152a5142514","sha1":"1b7f2090ebcfc1380f56c34dfc4f294c7301605d","sha256":"ace81cabed19b96885e6fec0ca99bfc73b71b6ad7df50664f92e68ca7281512c","sha512":"4e11703f66d5cb936d78dc2aca12c94504819135e1040189ba4675f1c0b5c1478ece5ca2f02d7c893a38b341f34dc318703d6d7a4c51307c031d5384676f2c01","ssdeep":"","tlshash":"78f02d7c1403dcf784fa1082c6b8e2c0c653856aef942ee123408ac2220ebaf02b1bd1","size":651,"data":"","first_seen":"2026-05-25T20:24:44.288837Z","last_seen":"2026-07-27T14:18:36.439781Z","times_seen":4002,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"f07c4f86a1b5524cec5397c170a0e9b5","sha1":"a8ef59c61a316f6095680bcecfa0c48466d72593","sha256":"32849254237db69547de8eb2f61b99d95e7466b89168687bf780bfd79467fbd0","sha512":"2c656e2adb0d00233577547ecc1f0efcf98bdfcf0f87ffc62fedafb4e4fc22e8c04e348d02bb3f3d0db21962e55712f132738e0685fa2c3e9755a241d55b9446","ssdeep":"","tlshash":"ce11570a0135042a7ae04164b6362ef5352c3add4b43daec5b857c0972b3a768d50bfe","size":957,"data":"","first_seen":"2026-05-25T20:34:17.759767Z","last_seen":"2026-07-27T14:18:36.440266Z","times_seen":3198,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"569704bfe6c1be70bea96e62c95d10b2","sha1":"1ebe9e3483f15928d18af8367a993cc1fe6f95f6","sha256":"577136df8200adf35699ebd443ff95aff588911e5451a64e7249b954d496ab08","sha512":"27482e4bae245a82e789bd6bba1746bd03fc6d2916045062e35f6bd7d8496ff54720271e9b16bf9c72972f08d7d7aeed33e1c0e2d0ef905ea9253578b05d44f2","ssdeep":"","tlshash":"6c3150f9e42264750ad310d832b7c7aa3f333595f1c72552c4bcc08a15a6dca24a3eed","size":1547,"data":"","first_seen":"2026-07-20T15:50:49.068553Z","last_seen":"2026-07-27T14:18:36.442087Z","times_seen":2308,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"d080aef1e28b9ced897f549e49b13916","sha1":"75abf1173fad589cc5e35b388fa0a3067188e157","sha256":"cb914bbd5f3df056d111c04f26650d699d100920c24e13e5e50c67ecd1de4e93","sha512":"746fc099bb9ed96629e79d592c09b25bb38203a52cb1dced0a65325ff096b1ce9f508f5f2a26570312d75569a6b56be634501e6fa6a59c2fbde67af8418caa04","ssdeep":"","tlshash":"48d0a754212b612234dc3054d62ee6d1f5151a922fd310ebd7992018b665893a9547ed","size":245,"data":"","first_seen":"2026-05-25T20:24:44.292788Z","last_seen":"2026-07-27T14:18:36.442678Z","times_seen":4004,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70644.448743def325feb61967.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8cde28c2b9d157a818e87a14278c7a00","sha1":"1de831d7926ffcdfe3bdd82419e6225185d37e34","sha256":"f5576d28408b822a04da2e824feb2d936edf1e1959b29e0849e709c4ff1beba7","sha512":"dfeb6f084e4ee784b4a74a0525c09ed8d481320b0708417429758d5d393b7f6eec9e153c60a63025903dc145cd998cce1676335c44ba0e9011bf068fb3dd2e24","ssdeep":"384:57bUjPiPk+mozZ2DZNFAw0wg7LEJ8yBzjkjWQIfQ/6URF2a6nUFlUTr1H6ssDLv5:57gjPi8+hiTRXbfQOXXUFwhHnecsfHp","tlshash":"ae13f5c936d6b02452b73475007f710bf23eaea1284e8450d117e8d87cb5a9fa27be6d","size":42319,"data":"","first_seen":"2026-05-23T04:38:21.326763Z","last_seen":"2026-07-27T14:17:30.797308Z","times_seen":850,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","size":132552,"data":"","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-27T14:17:30.792424Z","times_seen":2594,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"42e34d43963ba5c8f37c775b35258a3f","sha1":"77848caef3f422b34490fbcc9b420a2eae91e973","sha256":"4bca020551dc54855ef72cda3d88a25ac010c32345bebd8111e1d884f56b1dfb","sha512":"1d102717114d2322ba1fd3ec6fab0b9da9bc194793c340ce4efc56611ac5ea53860b13a04ec8c3e20da463da1c752b9254516dce5bc499934db40f301037ea5a","ssdeep":"","tlshash":"8690020da4210201206830c4fa8236426c9104a04f099c100101d81061c910bc8556df","size":46,"data":"","first_seen":"2026-05-25T20:24:44.282834Z","last_seen":"2026-07-27T14:18:36.437881Z","times_seen":3862,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"2d411354f21bb22b65f55d8bfad14f6e","sha1":"0a0a24845eb1cac5a48518e1bc5db6e3d5dce792","sha256":"cb1426008557b5894157468472242e22bb84d186d91063e50456abb38b79ed23","sha512":"f95f53d57cf6b8cd06137c700ea9f82b2342115f8ac40630b9fcd57322f6e4d42e6ed7ffe48e64c0dbe39388cfb9f76813d882fb40b9c5504cf0e670ab3b28fb","ssdeep":"","tlshash":"1d80002080a00000a28830c2e008002c3838c3320a8022c0838080028082ae082e02a3","size":27,"data":"","first_seen":"2026-07-16T11:36:17.999846Z","last_seen":"2026-07-27T14:18:36.438501Z","times_seen":2432,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"0b9a7313574f91705786cba9dc59952a","sha1":"55579995b6f4f3cb5ef305e9a9ecc6f157b0078d","sha256":"30160b7c8cc24649f2bd7f6e7d3431f3ad7e58b3f8ec3d452029ac720825ae0e","sha512":"e065b6c83e4bb99fe9c092368359eab8046e3163a89fc39c516b144a5450a2d457224a7e16ff3264cf0b68433a21450e83044ad8467e7e004340da07c8bead08","ssdeep":"384:LipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4TPZ/Mb30:eNogFbLrePZ/Mb30","tlshash":"ef823067c80da72ac4569e26bc7bb602fc2e075945a529606aecc86c04c7d53e30fb7d","size":18866,"data":"","first_seen":"2026-07-27T07:58:13.990369Z","last_seen":"2026-07-27T14:17:31.088593Z","times_seen":301,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"8062d232826eee4ffac1e152a5142514","sha1":"1b7f2090ebcfc1380f56c34dfc4f294c7301605d","sha256":"ace81cabed19b96885e6fec0ca99bfc73b71b6ad7df50664f92e68ca7281512c","sha512":"4e11703f66d5cb936d78dc2aca12c94504819135e1040189ba4675f1c0b5c1478ece5ca2f02d7c893a38b341f34dc318703d6d7a4c51307c031d5384676f2c01","ssdeep":"","tlshash":"78f02d7c1403dcf784fa1082c6b8e2c0c653856aef942ee123408ac2220ebaf02b1bd1","size":651,"data":"","first_seen":"2026-05-25T20:24:44.288837Z","last_seen":"2026-07-27T14:18:36.439781Z","times_seen":4002,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"f07c4f86a1b5524cec5397c170a0e9b5","sha1":"a8ef59c61a316f6095680bcecfa0c48466d72593","sha256":"32849254237db69547de8eb2f61b99d95e7466b89168687bf780bfd79467fbd0","sha512":"2c656e2adb0d00233577547ecc1f0efcf98bdfcf0f87ffc62fedafb4e4fc22e8c04e348d02bb3f3d0db21962e55712f132738e0685fa2c3e9755a241d55b9446","ssdeep":"","tlshash":"ce11570a0135042a7ae04164b6362ef5352c3add4b43daec5b857c0972b3a768d50bfe","size":957,"data":"","first_seen":"2026-05-25T20:34:17.759767Z","last_seen":"2026-07-27T14:18:36.440266Z","times_seen":3198,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"a451bd95e420d24a151cb5a25660fc44","sha1":"de8b722786339662ff8f0f6a25cd85930eddfb6d","sha256":"c8f09d6bcd1db51b6c98a3f11c98e6af82972a8fbd80e72dd14822bdc7c8ca97","sha512":"80b4700545cf6047c2c0d3f4a2156c0bef71d9bb050e302185e1806abce0b043b96d282712e02494ca2472e027a0e018e825ef23fd7a8d5f2768342dd46f086a","ssdeep":"","tlshash":"25e0cd478124c410b2d65848e53919f53109b59ae64309f1f260bf0cb1567f394d5dfc","size":321,"data":"","first_seen":"2026-07-24T11:36:48.290535Z","last_seen":"2026-07-27T14:18:36.44092Z","times_seen":1558,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"9d9bc5ffab15aed4773d569d62c5ba8b","sha1":"0c8d1aaf4c47cdfcda045dab107ca532b1f79b2c","sha256":"46a2e650802f69388f056281de89811b65b26bbb94350a0e175c7c4c4368a483","sha512":"8a7e0f121165dd69fcc12c3e8c8fa5cc13a4459d091f1229d33efba3db5cbe6adbd703665df67609399e5adc89884506e7fd6abb61759b06e7abd565d01c79e9","ssdeep":"384:RMt9Rl8Do+vHgzH6wmrebszczwhH/p5lOrylk6uNFCSF5I3epMtK3/MWFei:RWvGDo+vHgzH6/8szcyzuvCSF56yMi","tlshash":"44a2648196270c052bea174a68325103b22446f8d647395cbd786dee6e2cbc671f37fb","size":21867,"data":"","first_seen":"2026-07-24T11:36:48.297592Z","last_seen":"2026-07-27T14:18:36.441524Z","times_seen":1558,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"569704bfe6c1be70bea96e62c95d10b2","sha1":"1ebe9e3483f15928d18af8367a993cc1fe6f95f6","sha256":"577136df8200adf35699ebd443ff95aff588911e5451a64e7249b954d496ab08","sha512":"27482e4bae245a82e789bd6bba1746bd03fc6d2916045062e35f6bd7d8496ff54720271e9b16bf9c72972f08d7d7aeed33e1c0e2d0ef905ea9253578b05d44f2","ssdeep":"","tlshash":"6c3150f9e42264750ad310d832b7c7aa3f333595f1c72552c4bcc08a15a6dca24a3eed","size":1547,"data":"","first_seen":"2026-07-20T15:50:49.068553Z","last_seen":"2026-07-27T14:18:36.442087Z","times_seen":2308,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":true,"md5":"d080aef1e28b9ced897f549e49b13916","sha1":"75abf1173fad589cc5e35b388fa0a3067188e157","sha256":"cb914bbd5f3df056d111c04f26650d699d100920c24e13e5e50c67ecd1de4e93","sha512":"746fc099bb9ed96629e79d592c09b25bb38203a52cb1dced0a65325ff096b1ce9f508f5f2a26570312d75569a6b56be634501e6fa6a59c2fbde67af8418caa04","ssdeep":"","tlshash":"48d0a754212b612234dc3054d62ee6d1f5151a922fd310ebd7992018b665893a9547ed","size":245,"data":"","first_seen":"2026-05-25T20:24:44.292788Z","last_seen":"2026-07-27T14:18:36.442678Z","times_seen":4004,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","size":19935,"data":"","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-27T14:18:36.366377Z","times_seen":2987,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7278.738759ef0ac33469253b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"0b8a552598142ab8089cd94992779448","sha1":"87a17e3637b405af0a42d322fc032cfd1da668b2","sha256":"22e612835027b9e83688180a91ed31c88f1ccb25ae05dc6866015bd73cb709a8","sha512":"3117f337cfd3fac0235478fc1c3bed80263bf95c521e7d287c8d86eada785db4a298db00b8523d0c3f22c5bced964bb3c73d3b355fb4211325d32ddc24fdcb10","ssdeep":"768:FbBK1Dsf6MP7AAKZAlrHp4Czh1HBvJ+vmdv2cKWPUqz+1xKGDZwYzYAlFKVGjqtr:UsfDP7ADAzlRBvJ++dv2cKWPUqz+1xK9","tlshash":"52d2940ab26054a711db01db4077405bea3fa6e9a04185befa688cdd0b6ee4c3167b7d","size":30098,"data":"","first_seen":"2026-07-23T13:38:20.531806Z","last_seen":"2026-07-27T14:18:36.413596Z","times_seen":1302,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_ticker_tape_widget.965c90dc6d41319f132d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8194369d30f2aef481ad9b0e75ee118e","sha1":"37a70e62467216b914515bcbdac9df29330d6ae5","sha256":"44ece61da7dd37300e68e5b567453707c97eafcbaccfab2e1cf62f6b05966071","sha512":"4371d06b7b2b3c3742f8395c8c142405ef02bdfae5eb8f48ebb626a5ef89ccac5e87891a1a1806d59bd827f4c45bd0043bcb15e4858bc5264022119f93954367","ssdeep":"384:sN6NujCBUjpEQ4aa20p3kHYB022b2jfMwttlhp4XYzNn0+fo1r7K/A5akkVC8WGq:sMsjCBmEQ4aa26y22b2jfMwt1p4XYhDS","tlshash":"7492e9133394247b80ea44eb91fd4647b6224888f6828818b96ccdce276ddd935b7f7d","size":20040,"data":"","first_seen":"2026-07-23T13:38:20.453766Z","last_seen":"2026-07-27T14:17:31.035343Z","times_seen":839,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/30288.59207aa2607ea1597287.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"ea1d9d8d3342c88f33ec3b530e0573ef","sha1":"d655950fc76c40243ee9494c5fcc45e069dbaad3","sha256":"5c4b42f42930e52d140aec5e82b967b86ea0bc4581cfea3ecd33ca21c156520f","sha512":"4a85bff8bc70939b4386535712fa0ce2eae8d2f970a7e4c0f966b40eef502520b53f0bcc55b8062e0d4154ec40c589d4be511f57f11176afdb68166e3b090436","ssdeep":"1536:M/5WmDah7ltfnbgA/bllhJ9AwCh85Q9BO9X/tH78kJM:MZilpvbAR9By/5M","tlshash":"6e330ac572d6f0ab03d605e584bb5042f33d49a9b80d84a1f658e9d13c66c9e63b3fac","size":50816,"data":"","first_seen":"2026-07-23T22:46:45.786098Z","last_seen":"2026-07-27T14:23:37.825633Z","times_seen":350,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"fad65b9159a5c9f6082a70e88dee0e29","sha1":"39d5ddd9196ea0631d5850e5fdf303fa6c8f06fa","sha256":"316636e0c1f983642af435364b2283d7157e266d6a5c36529c6b41e2176f8a95","sha512":"cf5ece24c02c62c3c198758346c517123f3661dd8a5b53b3eb0ca34538cf6178e467be48439b96c345d3b664aab733bab704d7213737ca06bfa91fd5d2dc8805","ssdeep":"","tlshash":"b0c09b47f579154b04959105d386458c7264450d05365d352341609b3cf3f9d174d1bc","size":136,"data":"","first_seen":"2026-06-08T08:22:25.104796Z","last_seen":"2026-07-27T13:37:19.554652Z","times_seen":54,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"14e6ff4162c43db96f83f90de27df629","sha1":"0d07d0d53244c2cc76f3b0ff434af5d5d1a30197","sha256":"5c15bb8a7a366f0610bde7181327f2858a9e2b5bb52db43678d2820c2beed0d8","sha512":"2b136e9f47e9b6dc11426a2c1a242030f159b9a2e3590b464875db9a3a34f4ade008ef433b89b6754f667e195f66d622c6cc5d9b0eb3ef25ba3ded0006d4a6f0","ssdeep":"","tlshash":"e9e0f14ebe070461650451f8d0bfc49cfc896b85c57885d484d5c438395cec8d0eb62d","size":414,"data":"","first_seen":"2026-06-14T14:02:22.294467Z","last_seen":"2026-07-27T12:17:29.280109Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"c60101b3f0a5ae345d0b2d5e737a0b9e","sha1":"e3f57ccafc2835ca27ae9a96899b068a73cea926","sha256":"1ebbdb871743aa94c8bc919f8c1ea3a9a7bd0408022aa9b0c313d76d609a2449","sha512":"cc9a816948a0db51115955d8769e37b55e7c741888a46c38d3646f675b3a6ce5d666c6ab710dfa2f6cd7627ea739cedbf265e697c2fe207f5eb5f18b056a9572","ssdeep":"","tlshash":"3dc09247f131264b14dae11ae79b488c72bc8519463e4d2833a9a0da3eb3f8d170e5a8","size":138,"data":"","first_seen":"2026-06-14T14:02:22.299911Z","last_seen":"2026-07-27T12:17:29.280635Z","times_seen":5,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"a1b66aea8b14aafd84ea5d78f005f7f7","sha1":"3c5a4b22523360fe1b6ad1c41949f591cf353e35","sha256":"42d2f0cb71bec7c277c1222944c444cdd5af079750ce0352747324251f383b38","sha512":"0ecc0ce99569a7e3f5d383df1408868dc53b7efc1c8c3e2f2c829b88703efbb5771f3d18dff721f631baeb36e603e00bdc582014fc8abf294da4771676a8a19a","ssdeep":"","tlshash":"396136d59617426f50f36d73fe814402ac65a45fc866cd80fe0e5e984b825a4f3bce62","size":3323,"data":"","first_seen":"2026-06-14T14:02:22.302801Z","last_seen":"2026-07-27T12:17:29.281371Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3860.5f16537eaf7e20020b4e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"34d9a9e23b80a74cac96a1fdc8b17713","sha1":"b393728b7ea8e6ac005f6c86b488e02071f63301","sha256":"2c657551334765e1a746645655755ad8c33a53aaff89573d035b0970a0cd7be9","sha512":"a41a131efa17f1f6100df8503263cbc5d532cfa555a21bb62d75081258dcdd7facb5c88388e83d049df3d20dc1f3928e4dacc11d15c31dc03abf1ece32185708","ssdeep":"3072:pp9tDEUX4jYZc8poacue363JC53xnW9QGg7WXzQ0dwyw:prtD5ojOHpiue363JC53xnW9QGg7WXxg","tlshash":"5b04d6963296e06213f185f908710442f31ab989394b85acf5bc9dd73c9ac4e72bdf78","size":177376,"data":"","first_seen":"2026-07-23T13:38:20.551065Z","last_seen":"2026-07-27T14:22:59.541559Z","times_seen":248,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/61495.37ee7d182cf84caa7681.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"1101547aa0a5f1429817d5e491a4287b","sha1":"0bb8f75c93fe64e583a0bc2f0859ff602e1d94a7","sha256":"1f91a265530e9f4142c3b135c93094b7746dba4d3ff42b4ba49d8690c98c7597","sha512":"9f661d05439bbe5f87c7b8580707ce9d517a82a994773de68693c0ba9d653c3bf2565b248d08253aecfc1781e4706198fc30eab02cf96336de418992131d8497","ssdeep":"768:VbtJRlpt8ZUxC6nEFMQQE0rmtel4/0Q+xg23ba1Sj7Fk+1/1NB2VVR4m:VbtvCZLu/004/7+Gsba1SaU2F","tlshash":"cbe2e55632357a3601ef508b58fb0043e23a64486114992dfc7cdeec6ebdd8a623657f","size":32657,"data":"","first_seen":"2026-07-25T03:24:57.451516Z","last_seen":"2026-07-27T14:22:59.551008Z","times_seen":283,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/js/script.min.js?ver=1.3.3","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"32edc421c412f712b3fc52e9feadf901","sha1":"57dc8f361e4a4bb9b00d364847588fde311218cf","sha256":"3c1d996eef14611bcb5d3c41592a982c85b6afee8cb232f3a5003aac02c013f4","sha512":"0e5743642d5ce9e384fce9ef5e196ff3850e4c33eb62b1b5f100c74d6201af83bf6fa18e4665fe5afa54b3eeae323790105b0ae9ac80ef251b6b404af4036a6d","ssdeep":"1536:rSO+VRNyFnTyFYaRNyFBMyFVTyFR7NyaRnyFJVTyFNCshRny01AfCEhtnmQqyFsl:wJV7VroDq","tlshash":"0f33ff0e64b01062465ba5764e1a4f01e671854f9e9abc30bf8d1b946f0f00f66f7bee","size":53227,"data":"","first_seen":"2025-09-22T10:43:48.593757Z","last_seen":"2026-07-27T12:17:29.208943Z","times_seen":27,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.83031.2ba881756d332385188c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"a6b774013c1979fb43105262f5b3f98c","sha1":"3d0388027d8429640d1a42606b3eeb629b531da2","sha256":"87bbc5540f9fe4f357a1d9adead64447f2e0e52530ceaee0cebfda403d3a5b37","sha512":"240af447a4ad0c5739c98771da0bb9b33fbaad1f58826c86f943f8cb166611d176debb1d637c2abc374f2b10845cad59b1c8821006fd7ebcb9f90c5322c63e28","ssdeep":"","tlshash":"b8113257d024d5ea3f7ada19b394ddd5b8f0b09605f2c4da37082f44c21be991828af9","size":1052,"data":"","first_seen":"2026-07-24T21:10:00.131755Z","last_seen":"2026-07-27T14:14:25.410168Z","times_seen":142,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_screener_v1_widget.3c6dcb48241b38ad20cd.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"b07d7762afc64303abb48d31f9b49b37","sha1":"1c890e25377b837bc68ec086492e285e65d16c18","sha256":"1eb5c13d7babdf9d1b73d7ad5a55022781e5d3f382adc1ee187565d64a40827f","sha512":"a8f88cc675c375635ddd8bede571efff87e5328f1d0d90c979d7b07ebc0ae4eb81802b64a9d6eff50ce17142110fbbb224ff8fc3c4c22a1338431110a908c8b5","ssdeep":"12288:N5WOCvvhWwgPkUciIrBbM37JDMclwUYGZTw7yhLrLl1wrFh:N5WOitgPkDiIrBbM37JDMclwUYGZTw7N","tlshash":"8dd43a71a1a5293011f6c2dad8b66406623d2647f80604adfe7d8cdf168ee45f13bf3a","size":602700,"data":"","first_seen":"2026-07-25T03:24:57.336653Z","last_seen":"2026-07-27T14:22:59.629809Z","times_seen":282,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"1edb2832b292eaf1f490fd35fadf61ec","sha1":"40184dc94dd19e2bb7b906af7cc99c694efae8d5","sha256":"68c5b31fb26ad1af6d37dc872285b1e5c9837fed11bba1414d053e93e3728567","sha512":"a575cef153e42834c4fe933e7ec67a2a5442aec23dcf472bb585c8da5b858bfac30b279e03691938a35400b286055406e5a9f34bd3d5e5c8b51f1dbccd902df0","ssdeep":"384:rNtq6SWGLOzCHMJY+Uhb7773Y6cR39CF0msq2k70wcWKd:PjSWGLOuHM4hb7773X3F0msq2k7jcWI","tlshash":"ea62d7887043b09a42d925ef986b5149f7380898740d84b5b651f8d23caed9f63f3ebc","size":14701,"data":"","first_seen":"2026-07-24T05:39:08.468159Z","last_seen":"2026-07-27T14:22:59.694422Z","times_seen":432,"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/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"eee9a1207007c5ca4881ae1d2d28501c","sha1":"055b95815ec1c7e235a4cd1b81986d5d91189286","sha256":"10db7fa38c6dbe779e1409808ec38f25074b935da180aa0f225307cc79e1bcd4","sha512":"0d0e9b5d67d5b34cbd057ef33fcfb4719221ed6139a1ab0796edd0018d992cf6c14a9e7bec89c99d8d91831b7a3602575c9c03e64dcf381ba15f0587cde57194","ssdeep":"3072:8D4U6KKZgtBOjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:8QcMsb0muBzg","tlshash":"d944e9d8b2a174669363f4a5413f000fb13b68a9f8484dacb28dd8e26df4959417bf7c","size":266390,"data":"","first_seen":"2026-07-22T19:32:39.227777Z","last_seen":"2026-07-27T14:17:31.048583Z","times_seen":312,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.46024.97176aa48fe9d9a0d127.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"07d126f5f997c2ed316e3742d5b45af1","sha1":"826dfb648f32acec5e5699cc15a08026e137e6a3","sha256":"fb0cd50a605d7edce14affef79a6dfae9404ba2f7d7818008345363e9e26a988","sha512":"c7114acc89392a1469487feb62b74be0cd3a585a3b5d7a4bb38f30575f557f59860a020911d77ff07f283945810bbfe3bd8586e314442a21ea0c2e1e3625bfc6","ssdeep":"3072:WFM91hHo+AyVKC+wNBsx4A5b0jp4mMGOlyIhVh4dt//9:WFM91hHo+Ay/NNBM4A5bsp4mMGOlVp4d","tlshash":"69b3fe03c901d0ea9fb2d6063ba5dcc878f0774541f0e6c27b998f29c5a3da6593a778","size":115596,"data":"","first_seen":"2026-07-25T03:24:57.378453Z","last_seen":"2026-07-27T14:22:59.548805Z","times_seen":284,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12965.406ee59fa009f0e9c26b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8f068d27c22abe7d9f3f34955d82c013","sha1":"1bb36f3e26b99198a5baab85523b9c98993d8ca3","sha256":"3f53d80ee40e4e88681a0616c27021de72b0dcd57a831595b1569d7bd6f24602","sha512":"2745c2ed092eb78acfa3ce76236a417d40d860e8bb59414a438d07e088373f58b4e4f47813c291879b7b6b36e85b92df41dec082e34ac67c93bb748392e00929","ssdeep":"384:u+Rrmj0QFMfquq4C/u9jqPADqjCI4LWa7ORlzHOafnpuu2Gzxn:u+RrmIbfqdh/u9jqPADqjsLWa7ODtfnF","tlshash":"4852933b71e316b246e645d5843e36429b770284b08750b0b56bebfd0b9ec456223afc","size":13643,"data":"","first_seen":"2026-07-24T21:10:00.134074Z","last_seen":"2026-07-27T14:14:25.43861Z","times_seen":141,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.57291.7208384210f7c33bcce4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"df08a1dd70ffac4f28fcc3d7dbbe08a4","sha1":"7ccdbd9c3c329f4aa7c79c73e2bb3943ea45ebef","sha256":"db9d406f4660f93fca8338121e3f490d121c0d8c145adf7b5255109dd254fc22","sha512":"ddbd2ec7971bce16527fb401f1a3a6162efc2a827a9684ba05c3c7a2453eac89da95cba33f9f32fce00d8e36547421b0446718bda2cf81251f62240f8a342978","ssdeep":"","tlshash":"3d512127d020d5f22f73ca08b792edd675f072a111f2e8da7b4a6f65c25bc5018395b4","size":2513,"data":"","first_seen":"2026-07-23T13:38:20.437954Z","last_seen":"2026-07-27T14:18:36.36027Z","times_seen":1166,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","size":3529,"data":"","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-27T14:18:36.428394Z","times_seen":1506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/78688.b21e867ddcc73806d1eb.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"d960399c64635574ab482388a66e51ee","sha1":"229694eb75d1af359961453cdc4994de4116f75c","sha256":"3867272c188376eb0690e2a9bafcfffce6ca8a51b1f961070ab828fe321abf5e","sha512":"1d21dd4d1f2954f95a206bdfa95c45752e36b0f75446fe0f88bf507c70f77e2cf8e3556d3b15913793556c64a5478b69a7cb5313e9d3ccf451d510ef04f5ef3e","ssdeep":"768:MjZ5Iu0QQG3ZKbntDwoWfTQL6JsihnAcuggtc6sPlr0RHsQSmvFmRuA5LSZd4vdy:UKCgg9LLmvcYjI6sCEIRJbqHw5LuwX","tlshash":"d8f2e555f282706142e750ee0c760513f23aaa963c4a456cf53c99cf7a5d919f3b2b3c","size":34800,"data":"","first_seen":"2026-07-24T18:44:55.946861Z","last_seen":"2026-07-27T14:22:59.576871Z","times_seen":254,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51031.535f27b776f394c7e43a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"cd701b7197ef255d09501c8c91343508","sha1":"d84cab0e7c13c5801a0a2c6df4aba3f32e6b316d","sha256":"714cb61cc6924e6d1e8241ff191fc5aeb03baebbbaa81c15949838a09fb406f6","sha512":"ae8f1406dc1e5c9e8082d922e8a0d6257582733129c26617fefb99243013fa5f0bc9eb178dd69665786b8fb7fd0b7ccdd7ed719fe60676564b82598253efca75","ssdeep":"768:CcDTi4tT8YE9xSrNtzDcsIj/XWm9hIz4dp9VUZ+n5Vz2mpehIeVeLh9zoJZemINE:hryj/XWgGET5Vz2mp9emzoJZemINyKfS","tlshash":"7e131a35652af5f79ee941ea543754829bbc00523444042876bccdec278caf9f23aef9","size":43860,"data":"","first_seen":"2026-07-24T11:36:48.046407Z","last_seen":"2026-07-27T14:18:36.397568Z","times_seen":1546,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/71424.eaefaf568dc8f1d16228.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"d28b49d04557c0480cdbf81791cd43e4","sha1":"5e3a933096e33a38573e6f19d421af3adced7eb3","sha256":"21caef4db64aefa7c30365f0531a6b960cb10fa95ec42c10a6fa7de721bddee9","sha512":"087a004245d3199dec5b9b58bec642b846508dc967ba639a6b7eaa4289fe4a7bcca4cccaff9c3453cdc12b02032d564596001b3d891d12aaf21df4603b27a819","ssdeep":"96:BkL7dHrG9n2UbPK2Fv7927Erv8mYNWNPoHJuocGImcU8aG3y/J4Pphe8JxEpUOPs:BM7kNIAeyTmcu8VC8nIeCwIiT0BEF","tlshash":"16124324fb93b2b351cb619a583f080bf33a14d9132510a8735189dd1dfc99ab6afb74","size":9097,"data":"","first_seen":"2026-07-23T13:38:20.56175Z","last_seen":"2026-07-27T14:22:59.719959Z","times_seen":342,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80594.e87444e26f9e12545231.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"75148ecd9563758ef37fbf710fa1ed9c","sha1":"de1a10ecd54ec0decbb03a8cd557426111cea6d0","sha256":"cf8c7a93d59e717ec020cee201f3d4cc1c2abdd9d284d8c741acd1489c03835c","sha512":"f58c5f5e173f73a99e68100eddfff45b2ea08d85d707f75a9b525aed76766a2a71017d55a717a9392da38d5c5ae394e073d0e7784e029bda8c8aae2a167f353d","ssdeep":"768:E+Rr6eBG5q/FjGgPqzEthfn9evRIZ3XQl0m0FSCUSxlfHiTzJuqgyLDNZGItbNb6:spKxt59evRIZXxQy8NbNANtfJiO","tlshash":"5f13c83df5d1956372eb84ff4f66f6435a266402b26b6fe0b135d3c0244ac8b1222e6d","size":41784,"data":"","first_seen":"2026-07-23T13:38:20.394325Z","last_seen":"2026-07-27T14:18:36.366982Z","times_seen":1424,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.94947.78350a9903056b993c26.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"ca07c1961f9b98a2b190f872aebba5c1","sha1":"9e765a84de461cb72d1dda1a992eb168a347762a","sha256":"a73e581e82580c634a0afa42bd7a8ada31e093c3eb60aa347c906aae841b3aeb","sha512":"a67762b341ac2d78faa332f26b523a96315b5af223ab2412020c2f5ddb5da9672e687275ff53b962f79998a9e3156f990109016fd3d54e511ff855544a441857","ssdeep":"","tlshash":"1cb092222060fc24386b140875a10eb268b822e5282684eebb2518442026a680900f8c","size":112,"data":"","first_seen":"2026-05-05T10:36:04.862254Z","last_seen":"2026-07-27T14:23:37.840068Z","times_seen":815,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/69113.5f4406ac8b4436afdc23.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8c88ce407a538a14bff85954f6fb23f2","sha1":"20cc9856f0669e2b47804f5898e16e5049528f64","sha256":"2c1f8c23670876104ee7d980e9114d9cb2c088968d87b10cbd878f00397dcb46","sha512":"3c195cec522d44f6c2dce76aa4afbb00d51848a0663a1ce0b5adf73bcc1e9e1a733fd2a8885aa1ef621f486bd2a97b16e178ed33670f73bde3c4cc86bd8c0fc9","ssdeep":"768:Gtv5X/myZwOFu9JgkOrK7fkWXRqQqmAdNqeoNbs8Cj5D2gjK8YIRcOrSu9:GdB/IgkOFTlpQVA8kC3ISuH9","tlshash":"4bd219503021a0aad2f792efd03b464eb333325d78064e69f0689ced55cde993174bba","size":30078,"data":"","first_seen":"2026-07-23T13:38:20.459952Z","last_seen":"2026-07-27T14:23:37.834748Z","times_seen":196,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/blocks/common-tooltip.443e2901fbe781f27cb4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"fda19ced4005a318ad6f7c196047bdb8","sha1":"29be20778e7d4930c00cad0c136ef37d4ae6d859","sha256":"8479bbca58062eb92f1b267862057bc371b14e1c343c3bfa97d22400ea84e601","sha512":"8673e75b8e36c8278474b7140380e1541c5ab1a39dc60d8aef20fa4337e35ec339e06d3718243331041c2968a2b7d7bf62dca74bac409a67e393d592f0afac27","ssdeep":"192:5SSRtax7aOQ4Y4d5HUtsIcphhrQp28wvFJ7DTC5cH6m2DybRe7kCTsHE2nbCErrU:5SScbhhcMRL7DTC6a12bRePs9eE2NatI","tlshash":"8e32e8e2338b36b412e515a3687a9245ff340884780f4460b5a9d8e42c6addbf3f3d6c","size":11696,"data":"","first_seen":"2026-07-24T21:10:00.088454Z","last_seen":"2026-07-27T14:14:25.350526Z","times_seen":141,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"maps.googleapis.com/maps/api/js?key=AIzaSyDduF2tLXicDEPDMAtC6-NLOekX0A5vlnY","fqdn":"maps.googleapis.com","domain":"maps.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.113.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"b4bb07fb382e3f14979fe5902599319d","sha1":"99510994356d7f5de57aa46eec60edb972f4701f","sha256":"298b2ddecb6186b2922e34432e1c649c2ad56fd8849edc89a1b574eeef5d8bc4","sha512":"3c2351d52d971d1e6ad0133fa3b3848a0a6d2c80621967e661aae671de53f93b3b420f7fae680ad473cbd08dcb94d8ccd3442c706d413dc2ccd8f76a0e93252a","ssdeep":"3072:GfzHovwhh+hNI8cMS9xlgb7HBrT+kQqbdhfDnT8tSsZ95urOHLNeM6NGPbQ7RpYc:azuHI8cMGcbBrykCh5ucLNbLPMRWc","tlshash":"4c643d947362746287b2e4b4502b0007f17ea49af00c89acf69cddf2aef994945b7f74","size":311453,"data":"","first_seen":"2026-07-27T12:17:15.198543Z","last_seen":"2026-07-27T12:17:29.192144Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-overview.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"4da1b674340092915d8702d72bbe37b0","sha1":"ce34f4674f2388596b084664c821b5250567b1b5","sha256":"1f6b07878dd267a707f5bb13e3a0134826e90cec748b3d157a5d5c825425d808","sha512":"3321f820f80a9e2c194db19056ee00ee2760604f76843711d9b6f1d2684cda9e54d923c356489f24bbd6cacf8990882c9228b4f66f2c9362a095be087c3448a5","ssdeep":"384:gf6uCWoofYkFdj9uA222tEVSdDmMasVBvSFTXu:uDluA222tEVSdDmMaEYJXu","tlshash":"da52e76af660dcbd51d946cfa07a2720b61e3944f203aca4b9acd4c450adccca431f7e","size":13439,"data":"","first_seen":"2026-07-16T22:06:47.054006Z","last_seen":"2026-07-27T14:14:27.12313Z","times_seen":919,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/blocks/overflow-tooltips.6c9e7a9e84cff3e7568d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8585e73b106451afec7d614976670c9c","sha1":"56604fcba10488e8973efe787e3ea4ac668118e0","sha256":"9abfa28c773fb1a5727ed06a299c38baff4e03029964fb0042de5cfc2b048c88","sha512":"7ca2da55902be17c9a1cb6602c8cf11283359e79f7efaebef96f5fcc2e67173273bfaefa99b490826dfa8ed9b3661ba7d7135fbaa68fbc8a875caaf10b9bab35","ssdeep":"384:TCXScxJ9CdRRDnOaiOSRePsUaArNaMg4Da7CHLHI8abmvUho:OCcxJ9CdRpnOadSRePsUagNaRaa7CrH5","tlshash":"e152e8f2338b35b122d505a7687b6344fb395884b84b4470b569d8e52c2adcbe2f3d6c","size":14107,"data":"","first_seen":"2026-07-24T21:10:00.124032Z","last_seen":"2026-07-27T14:14:25.422549Z","times_seen":141,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-ticker-tape.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"2671d4a92091986b7abd2e1e685669ca","sha1":"b59db96af3dd1593356058703fc7af3cd7269919","sha256":"986cfef49d6a6ccd5cb1f1cbf562e8341ed581936885830831a2f4c3dc2b5901","sha512":"c07159fc500c72469ba6dfb7ccf5afdbaf476906fb039e5bfc7ab2c95e79b0067a47e6e02ad44915b9ba426273dc39996ffb1899c029253b56e4b02f7d419883","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6Or26ZMViZMEmkfknYH:uD5Unb26nD6Or26ZkFE9fknE","tlshash":"8e52d8a9b660ecbd51d945dbe07a2321b6193944b203aca4b9ecd4c510fdccca131f7e","size":13608,"data":"","first_seen":"2026-07-20T13:42:57.5385Z","last_seen":"2026-07-27T14:17:31.047073Z","times_seen":1435,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_screener_v1_widget.9dbe1b28214d7a1471ba.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"078c641a9165940f92f650670dcfe56c","sha1":"588a588b3de873254a2ca6be4975e9a456d154af","sha256":"bf1232ee83f71f223d4d69f4ec7b7ffc474385b0bf3e2ea817a41a51de2fdffc","sha512":"d70d6ac8dc2d5315cae23b5ad2102e5968136636834d12b08553280efe2990f9bb1ca243bb1cc9bcee0f291f1db4af42d8ef1716326c2ca0de1643e12bdfe1ff","ssdeep":"768:2O2u/W/ww+vFmk6+uoYOgJV3MDbos8ZJh9qWxZjcLY8Z4NqSY:2O2u/WIw49gJV3ebo9h9HrD+7F","tlshash":"35e27ded923cd6b336f12da96d7a9863f33c24237c5980d49393b56409a6ff4a232513","size":31926,"data":"","first_seen":"2026-07-25T03:24:57.413219Z","last_seen":"2026-07-27T14:22:59.565195Z","times_seen":284,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_ticker_tape_widget.962f777c23b660d830a5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"6261f54efc700f40121ffb4b8469e97e","sha1":"ce3b28aab3d88f4c8efb56c9421582b8795b170a","sha256":"784267261c93801d2acc456a3fd6bdebee924adb480d41166947dbef83d09720","sha512":"24eac8beb0159520437818ae9b0622b1a35010f7b030d8235bafbe66000eccedec201dadd509607239623d395152fe9e364a0fc0ff255a87f05f763c2bd6ce2b","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNFmn1BnRMC4p2kuVcsFAvaGg:4wqLp/vXunkfr8/kPm1BnRMC4p2kazAO","tlshash":"fe12e9ac354ce53225bb0c525479e462f72c23fb5e0ae0a09367fcf96858ed46633d91","size":9160,"data":"","first_seen":"2026-07-24T15:28:44.921696Z","last_seen":"2026-07-27T14:17:30.984461Z","times_seen":808,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3552.4c5535183b7a0330a89d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"8cb7d12d58618d9e9433db7cf169e678","sha1":"dd2e2830dd9f4f8c3e4000fb90c94712f7315f67","sha256":"e54bba4bdf7867aec664fc0c023a4e77650464bb7e2e1a2d80ef75500363cd92","sha512":"9c9ce4a19d03df706a0fb6495901a15dd961b87797e48e43669a130ec51d4d3788fcd9e251dd54f1560134509553e5c7a1cc17249ad1f6f562d104b6b10d9a66","ssdeep":"192:ETCSGJXJ6h4GX8tWKEN7Nbj61RO2g6OQLgwF8TEz5XnC/x6/v60KjBHAH4yiFbBw:EmSGehtqWNN7Nbj61ROQLRF8TkVNjaAj","tlshash":"ab42b53d719358a8666780e980390b7ba6283980a58741bcfb78dccf46cddd46277f38","size":12192,"data":"","first_seen":"2026-07-22T11:33:41.980937Z","last_seen":"2026-07-27T14:18:36.416705Z","times_seen":1761,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15049.08e0888e7d45f371417a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"db48995ff5f730ecb170f36e4e2cc18a","sha1":"044ce4f192cecbee308979fbae086c96bfb8db14","sha256":"c81b7b8904e0431a7b79c10f58c825619389b9b17ab64e096121d6f89e2dbe44","sha512":"b421809d047c58d7c47154fd7dd0c211a8727f97c41abc92cb643758b44cc1861e7dc1a4ebc141ba015e211d59dee2becc24789ebb814d22544421123442befa","ssdeep":"768:ffIIzV3q50QTARuL5BAPuQ8GYzHdnj2WyvbVLKdrPQg4xGCSHyezAYMfKngc/oze:nw7H1awIgJdAag7nwvsBKJ/n","tlshash":"a8e2f8c23285b8773bf350e618791542962e35627c0a48bcfa6d29cf3c1cd8a617fa75","size":32261,"data":"","first_seen":"2026-07-24T18:44:55.936981Z","last_seen":"2026-07-27T14:22:59.637616Z","times_seen":311,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"d1dd83167c5f56af1fcd416113399dd2","sha1":"2c22e5b424e41d0fc18cdb6fffd64ae6efd00545","sha256":"a19e09a0ae50dd98895c725fc3589bb34a69375c4205e508233326868f50225e","sha512":"f42e3fcb53f53e49d4a50b563e673d08923e4e6dd95ae5fbd639dd5ea483012857454fe66d6b8e63c9282fa5126b95c19a29010638cb676d3881314c36934ba4","ssdeep":"","tlshash":"e55112965872e0dac8436c29dfef913961444037ac16ece57e9cd903ffb060ea64d9d4","size":2818,"data":"","first_seen":"2026-07-27T12:06:12.664755Z","last_seen":"2026-07-27T13:00:32.837525Z","times_seen":10,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-timeline.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"45fde7c9b5fe73225f39ad186531ae50","sha1":"b91437d3352f7dd8837afe887ace22fe90baa81e","sha256":"16109a716500895b8fd1cb8a20b8cb6b361b9f67433db420d47af19a222d8643","sha512":"aa4ebb4663ea67325d359a985581e77385865f9469415de45528fe183d217cc2d128e2209f14a6f5489e86cf41dc5c6d2337bc87f24204a333c47a0709c05840","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OlmaRMViZMEaGT:uD5Unb26nD6OlmaRkFEJT","tlshash":"e252d7a9b660dcbd41d945dba07a2321b61d3a48b207aca4b5ece4c510fdccca531f7e","size":13397,"data":"","first_seen":"2026-07-23T06:14:49.706446Z","last_seen":"2026-07-27T14:14:25.315542Z","times_seen":135,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12181.b65a58355ff7cc34950f.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"90cd4a18a60bc908d0840ba4fec27dc6","sha1":"bb5de7eba54b0d9323f872960612df642a27716e","sha256":"ae043b44480c283e0e50b84e353fe3e98e560fb8f9bd14638f61a5dfadc231ba","sha512":"1ff83bc8bcac42839140d927da7b753dc51b3ab887327bf07fef3ca3b194425621ed7376ef404517f818a80b9f3d96955fd5c9239c1dc05e599503f7118edc99","ssdeep":"1536:U4ecrc2hMNlbPWqfxN+fUE44ld4e44IJmuJY7+fHfvWr05KNyhLcSbWd4+o:4CxdswjaWyn","tlshash":"10d345b217f406f473b80d5293f77e591b3c74a359882c52d2a4d9a0dd40fc2a96ba3e","size":138370,"data":"","first_seen":"2026-07-01T19:46:28.364877Z","last_seen":"2026-07-27T14:23:37.873503Z","times_seen":1150,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_market_overview_widget.b3778cf59c7972fb2117.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"1c5e4ac62052f34aee8fe1e7000ecff9","sha1":"0029565b602cc5671a3dece11206c502615dd320","sha256":"e23fb884523506d32b7743fa2a1bf5aa00fe8f36e95450bbdaac26f32bed80dd","sha512":"bb33fac88808b72a28a10b28ef125f8043debaeff6d4c701028ea700061e4637b2e4eead6f8d2d6ff22e6a8ccb2b954946546c00cbb4b63536c16cea814ace92","ssdeep":"192:nbDxftZMoGKLpSH0NQ6WCb6sp160EAkdDIkL1OQXIL5kvPNVed394a6jaOIj:nbDXZ2KLUHZ6Wnsr60Lk1IC1OQ4L5kvQ","tlshash":"e3320bec2558d47125b508511879b462f21d32bbaf4ed0e09363fcf8686dfe86733992","size":11157,"data":"","first_seen":"2026-07-24T21:01:56.897779Z","last_seen":"2026-07-27T14:22:59.672074Z","times_seen":228,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/js/plugins.min.js","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"bc10f3c597de855e4fa36a1000221326","sha1":"2bc9da202a98bac8e3b9ffd85346590869351e26","sha256":"4d7c1e93506d2126040dbcf4678cc94b0e50e9987b0be6e23795a3fdeb8e182d","sha512":"96a81b08011126f49cdd453c462f5f3a99f223f39e78dec3716abc993c744f04d19eea5a8d6dba4ba9bfc01f37b5e81d21e01378b5ad9adbd70dca0b64c0868a","ssdeep":"49152:v5qgEhCd/X9zYw0rRSt3FK7Y7sionSzQpe8s8PEp/gkMe4926YVDrBPOt/6ZqwUL:3z8s8Z","tlshash":"d6a5a54ab7e125359257f03a9d2fc9087236a45b2a4aed04394c52e45f1d83c93faff8","size":2070825,"data":"","first_seen":"2025-09-22T10:43:48.666115Z","last_seen":"2026-07-27T12:17:29.282599Z","times_seen":27,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/79207.6a62fc803d3d07898936.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"9f9984517a8cd65036faf42932513a8f","sha1":"05cac6f7fbc24daccaaefb92b34f6eecdc91d8d1","sha256":"597ae9e64dd837a96e9166ffeb016e0757a49f06719163620ea9c616bae3ea2a","sha512":"f122449c6f6d72c179c4a59ec669368d3caaf2e5fc59ab4dbe5a3b10c172380e9033fe19842cb0c81ba7ef956058ff787693678223786ed92f6f5188ca177f44","ssdeep":"96:S0yn+dFlV8m0eKoPnRuKfeYX1X45tTZkcdrEAUbNfBn3Codbrbth1o3I9dxKsbRN:S0yn+dFlV81YRuKWYXWhdrIBn3Pjh1Ag","tlshash":"faa1b6c630f770d673aa19e5813b0447f2be09d13a0b96e5b4989cc938750167a63fac","size":4721,"data":"","first_seen":"2026-07-23T13:38:20.419582Z","last_seen":"2026-07-27T14:18:36.346184Z","times_seen":1368,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/91471.b29974fd0c9e082b675f.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"7ee1c473d086f208519ca0b747a9f6ab","sha1":"3dc0b238a5eae7c6f9dd0b900ace997a2f1c30b3","sha256":"e4c7751039c0012824c9d1bed4e691de339abd9bc2615467769fc60d005a8d1c","sha512":"afead0c3ca6cede488d5640db1c34ec7afc5fa34fe5be03c03b988d43dd7a7d272a36f9b642f16a94adbf6b3fa441c5180293b7a5644005ad5839834a6e0ed4c","ssdeep":"768:jK3FhYqmQ21dNvWXt3iYeRYgEsWp+62DYOmsdePjzuvuEQnLpa7oA1fzfHk2G64I:2U2NHgBeu0DWfP4iJNr","tlshash":"3403e6c932d6b0ba13e705e980bb1006e3be0989b84d9561f698dcd13d3589b6373f6d","size":37994,"data":"","first_seen":"2026-07-24T21:01:56.87909Z","last_seen":"2026-07-27T14:22:59.65359Z","times_seen":223,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/iframe_api?v=3.2.5","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.151.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"995a58cfca5d586dca3b5579b3dc9f3d","sha1":"4eedb0ee98b595a39b4839a80c76aebe95e55f37","sha256":"412370935f9625c094daf0f288c67a20b7882914f7a07d17819d5041c8cf87c9","sha512":"2916b5b66e474f3876fb9a6166fff2b69221dcba05894564307a63dbdd80bdffd565c730a50be61ed1bc31c956fa70e78bca3e56e14d2b28d4a0746b2d9494d7","ssdeep":"","tlshash":"cd11ed7b3d84e639865894e4a03fc31cf1b224957c50cd9110cde899e65cacadd2d5fc","size":993,"data":"","first_seen":"2026-07-22T11:04:10.481101Z","last_seen":"2026-07-27T14:17:47.138267Z","times_seen":747,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/11312.780d600a2696ddf6ee44.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"b0720897b12cf88ecebb46f6d89d7c69","sha1":"2fa28bedeea569b2619cdae53062a791ac2bbe17","sha256":"dfc29df647149630e1dbf361ac94f0081f774d552a89224ac3ea2157929c77f5","sha512":"c904e06401e522c893ae37d44d3745ffe459571313cd4e58adfe5e55d3b410df4f6331734bd900341a146bb7d42fbe0b55dd284cac4015d1b744b697066356b0","ssdeep":"192:KHIIzhrJQdAWfH7Gusa7Emt8EBHi61ihHD/wRKZSouH1Oby7eaHHBPUaP6KgUsnm:KHIIzhrGH7Gc7Emt8EBCGMHD/KE9a7Hd","tlshash":"960218dc30a2b47a4b8718def4395942f035657cb446ccc1eaed8d8918634ada3b3d9d","size":9003,"data":"","first_seen":"2026-07-22T21:16:51.837735Z","last_seen":"2026-07-27T14:17:30.987385Z","times_seen":288,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/76577.f73a01e1f00043622b65.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"6a57b1deb31991bb129476b06e9cad11","sha1":"d00dffa870d90063d146679279b23729d7cc0bb2","sha256":"4ba69451c43dc3871ed3f2b689d739650d0189c1095c65a1e4c3050c3ca9a662","sha512":"73f9b1560727a29f3cfe717e938a390645a6bb2cae109ebddc8e909a042a048adc3d51bccd2be01a77a3839b742c0edf3283489d06d79bb43e3d75bc2974df1e","ssdeep":"768:VXEgvhG7/2KArEGBxc1lmprTmMAo58FRGdfycQKRAppcS+oLAMzpOXYq9EqLN6e:V5G7/0r9HqlmprTmMAw8FRGdfycNAgVf","tlshash":"7873f8cdb281b46546e7a1b0803f550bf23a6998700d8488f235e8e97c7ca5ea177f7d","size":76578,"data":"","first_seen":"2026-07-25T03:24:57.112206Z","last_seen":"2026-07-27T14:22:59.58821Z","times_seen":283,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"salesiq.zohopublic.eu/widget","fqdn":"salesiq.zohopublic.eu","domain":"zohopublic.eu","tld":"eu"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"f20f7aaf8840b5c93a2b01879f604328","sha1":"c9b959ed617e79e20135bf2861268ec7daef459f","sha256":"a8f37f8c1837676e8a1d8eb590f9d0cc339342ad5e97d530d329f586b0ecfdcc","sha512":"ef721e6ddf7213976cbac384f25dcd0095c93df84807ea1e8c35c874c21ac2249ed2604205ea2e4bac476695ec7d1072766eb6eaf21633de8e780baf9c18253c","ssdeep":"3072:Qb/b2xaJ1LPrNJ5UaGk33LCQYYpal6dxbpESQBNu:Ub7J1brnLCQYYpal4wSt","tlshash":"48f34c6970d5707a02a31178243f7b0a613b5a456a59cdf0ea71ca901cb4b8772f3feb","size":162740,"data":"","first_seen":"2026-07-25T08:40:34.285484Z","last_seen":"2026-07-27T12:17:29.256057Z","times_seen":15,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/www-widgetapi.vflset/www-widgetapi.js","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.151.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"f169a9e94953731cb0dd5faef429318c","sha1":"f45e6b6193cd71c1eb183c51bc65c84a8aeb6719","sha256":"3aeb791f41afb9d7500326010b8852214536360b695c2d0328f4fd265badb21f","sha512":"cd7412530b69607b86d4dff17990a998e2e471f38eda724d55e2886738a75ade824cfdf11e37f976ac63ac431297869dacf364df631987a52e23ef79e5b1ba70","ssdeep":"384:lavCc95Hmr6jQumbwoPtjJTfgX+pnB4yeCzwCzUB1lzh9nYi0PC0nX1IXwK:lrS5U9io1jhfayRSnnYi6FGgK","tlshash":"3dc2e9cd7bb1b471437366b5802f100fb23e58aeb408c698b288d8e16db55690677f7e","size":26769,"data":"","first_seen":"2026-06-15T12:26:58.098489Z","last_seen":"2026-07-27T14:22:09.487804Z","times_seen":8761,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/69352.33011f244b92ea0b642c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"5892ca5b3227e78df9d2ab92c3248724","sha1":"60544e547f80c21daf35460e9a75d3e817a58acd","sha256":"69236d01bc831a7a43ff776d09a39734ce30f2be4ecd83b55272b4c1d798c182","sha512":"1a6f2ba628e22166c5e1285ea8771085d4fb4bc18728dd29dcc612bfff921b3cde7047233fac48e47050cb6922013824b1166676d4d77219f87ed820d7333524","ssdeep":"48:fGoeBtt/RMHZr15WY7bq5+EGbplkGbDlZ6JGbHwa+EPyZT1k0SL6tGbdnRyeqg5v:RZ15FbqYtZ6UyEeT1hUAeJ4hZ72cYtOO","tlshash":"6ea165cd33c5f46523e2aad7a4bf510be13e198d601c6814b399e8e178579ce8132f78","size":4689,"data":"","first_seen":"2026-07-23T13:38:20.554349Z","last_seen":"2026-07-27T14:17:30.929347Z","times_seen":852,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87926.8ab9cfede16295107017.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"5f5b2f579bfcf6854f67787677d11c94","sha1":"6de49cc606825ccf66acbceb2ba4d23d91f0ec4c","sha256":"38c41c9069ed7604e737e462760f16363aad09961b1091c66dfab594df263108","sha512":"3a309c43d694230393cf3d65bb8e48af52ff337f61f287f020e266764e5df3ad2531cd999bc8dbf42e74c27546fd871a68515a183ef1c35d24e0c0cb77549a6c","ssdeep":"384:KossZPZ8HYrU0jAWia49Aa4/WHA1E9y3ywtUPIsxmvxqlOwSCoBPy7:KossZPZEYrU0AWPXa4/WHH9WywtUgsSi","tlshash":"9752c9ea72c1357251da45a7613e7202a3394588f4898178b52cecdf172edcd73b2abc","size":13639,"data":"","first_seen":"2026-07-23T13:38:20.421953Z","last_seen":"2026-07-27T14:18:36.398168Z","times_seen":1172,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94825.8a90c0c3ebd413eb9c81.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"321406610467d6dffd30c75b9184e9df","sha1":"eb120d6cc348265cbed0295dd3cfab7428c5425f","sha256":"3f94fcd41f3f37d9d46697679761c3bf1712a0f67a22b38bc5e3c44b47eb56b5","sha512":"8d1b1035b2fe029452f0a7de35ef2793e6da96377c589956a5e21eaf23f3b2ae7bcedfe568a74bb8ba9a46109cdc8876912e2d73814beca47bbfa286c3081136","ssdeep":"768:QmBTez9037WM2rFgD0Nm7YLSxeUf4DK4uA8JUJESLb/XW4xmmInIPxHgask+vvw4:Q4Ow7uxNVvpPpghBT4Uf","tlshash":"17e2b693b3f9a02966ded0dad8341403e31924447884046cf27dbdde6b5dd88b2b9b7e","size":33900,"data":"","first_seen":"2026-07-23T13:38:20.509185Z","last_seen":"2026-07-27T14:22:59.606994Z","times_seen":618,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"warn","text":"Google Maps JavaScript API has been loaded directly without loading=async. This can result in suboptimal performance. For best-practice loading patterns please see https://goo.gle/js-api-loading","filename":"https://maps.googleapis.com/maps/api/js?key=AIzaSyDduF2tLXicDEPDMAtC6-NLOekX0A5vlnY","line_number":328,"column_number":325},{"level":"warn","text":"2026-07-27T12:16:31.256Z:Chart.MiniChart:BITBAY:BTCUSD symbol resolving error: invalid symbol","filename":"https://www.tradingview-widget.com/static/bundles/embed/91471.b29974fd0c9e082b675f.js","line_number":13,"column_number":980}]},"http":[{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/76577.f73a01e1f00043622b65.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.552Z","timestamp":1785154590552,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/76577.f73a01e1f00043622b65.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-12b22\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1f5730e771f8a5d655f387b77fd1d510\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":76578,"size_decoded":29340,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"6a57b1deb31991bb129476b06e9cad11","sha1":"d00dffa870d90063d146679279b23729d7cc0bb2","sha256":"4ba69451c43dc3871ed3f2b689d739650d0189c1095c65a1e4c3050c3ca9a662","sha512":"73f9b1560727a29f3cfe717e938a390645a6bb2cae109ebddc8e909a042a048adc3d51bccd2be01a77a3839b742c0edf3283489d06d79bb43e3d75bc2974df1e","ssdeep":"768:VXEgvhG7/2KArEGBxc1lmprTmMAo58FRGdfycQKRAppcS+oLAMzpOXYq9EqLN6e:V5G7/0r9HqlmprTmMAw8FRGdfycNAgVf","tlshash":"7873f8cdb281b46546e7a1b0803f550bf23a6998700d8488f235e8e97c7ca5ea177f7d","first_seen":"2026-07-25T03:24:57.112206Z","last_seen":"2026-07-27T14:22:59.58821Z","times_seen":283,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3NjU3N10sezEzMDY5OSh0LGUsbil7InVzZSBzdHJpY3QiO24uZChlLHtjb25maWd1cmVTdG9yZTooKT0+TyxjcmVhdGVBc3luY1RodW5rOigpPT5qLGNyZWF0ZVNsaWNlOigpPT5rfSk7dmFyIGkscj1uKDMyNzIzOSksbz0obigzNjQzNTApLG4oNzg3NzI0KSkscz1uKDk1Mzc0OSksYT0oaT1mdW5jdGlvbih0LGUpe3JldHVybiBpPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8e19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5JiZmdW5jdGlvbih0LGUpe3QuX19wcm90b19fPWV9fHxmdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiYodFtuXT1lW25dKX0saSh0LGUpfSxmdW5jdGlvbih0LGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIrU3RyaW5nKGUpKyIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpO2Z1bmN0aW9uIG4oKXt0aGlzLmNvbnN0cnVjdG9yPXR9aSh0LGUpLHQucHJvdG90eXBlPW51bGw9PT1lP09iamVjdC5jcmVhdGUoZSk6KG4ucHJvdG90eXBlPWUucHJvdG90eXBlLG5ldyBuKX0pLHU9ZnVuY3Rpb24odCxlKXt2YXIgbixpLHIsbyxzPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZigxJnJbMF0pdGhyb3cgclsxXTtyZXR1cm4gclsxXX0sdHJ5czpbXSxvcHM6W119O3JldHVybiBvPXtuZXh0OmEoMCksdGhyb3c6YSgxKSxyZXR1cm46YSgyKX0sImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKG9bU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksbztmdW5jdGlvbiBhKG8pe3JldHVybiBmdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24obyl7aWYobil0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7Zm9yKDtzOyl0cnl7aWYobj0xLGkmJihyPTImb1swXT9pLnJldHVybjpvWzBdP2kudGhyb3d8fCgocj1pLnJldHVybikmJnIuY2FsbChpKSwwKTppLm5leHQpJiYhKHI9ci5jYWxsKGksb1sxXSkpLmRvbmUpcmV0dXJuIHI7c3dpdGNoKGk9MCxyJiYobz1bMiZvWzBdLHIudmFsdWVdKSxvWzBdKXtjYXNlIDA6Y2FzZSAxOnI9bzticmVhaztjYXNlIDQ6cmV0dXJuIHMubGFiZWwrKyx7dmFsdWU6b1sxXSxkb25lOiExfTtjYXNlIDU6cy5sYWJlbCsrLGk9b1sxXSxvPVswXTtjb250aW51ZTtjYXNlIDc6bz1zLm9wcy5wb3AoKSxzLnRyeXMucG9wKCk7Y29udGludWU7ZGVmYXVsdDppZighKHI9cy50cnlzLChyPXIubGVuZ3RoPjAmJnJbci5sZW5ndGgtMV0pfHw2IT09b1swXSYmMiE9PW9bMF0pKXtzPTA7Y29udGludWV9aWYoMz09PW9bMF0mJighcnx8b1sxXT5yWzBdJiZvWzFdPHJbM10pKXtzLmxhYmVsPW9bMV07YnJlYWt9aWYoNj09PW9bMF0mJnMubGFiZWw8clsxXSl7cy5sYWJlbD1yWzFdLHI9bzticmVha31pZihyJiZzLmxhYmVsPHJbMl0pe3MubGFiZWw9clsyXSxzLm9wcy5wdXNoKG8pO2JyZWFrfXJbMl0mJnMub3BzLnBvcCgpLHMudHJ5cy5wb3AoKTtjb250aW51ZX1vPWUuY2FsbCh0LHMpfWNhdGNoKHQpe289WzYsdF0saT0wfWZpbmFsbHl7bj1yPTB9aWYoNSZvWzBdKXRocm93IG9bMV07cmV0dXJue3ZhbHVlOm9bMF0/b1sxXTp2b2lkIDAsZG9uZTohMH19KFtvLGFdKX19fSxsPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTAsaT1lLmxlbmd0aCxyPXQubGVuZ3RoO248aTtuKysscisrKXRbcl09ZVtuXTtyZXR1cm4gdH0sYz1PYmplY3QuZGVmaW5lUHJvcGVydHksZj1PYmplY3QuZGVmaW5lUHJvcGVydGllcyxoPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzLGQ9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxwPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksdj1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLGc9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBlIGluIHQ/Yyh0LGUse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOm59KTp0W2VdPW59LG09ZnVuY3Rpb24odCxlKXtmb3IodmFyIG4gaW4gZXx8KGU9e30pKXAuY2FsbChlLG4pJiZnKHQsbixlW25dKTtpZihkKWZvcih2YXIgaT0wLHI9ZChlKTtpPHIubGVuZ3RoO2krKyl7bj1yW2ldO3YuY2FsbChlLG4pJiZnKHQsbixlW25dKX1yZXR1cm4gdH0seT1mdW5jdGlvbih0LGUpe3JldHVybiBmKHQsaChlKSl9LGI9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9DT01QT1NFX18/d2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX0NPTVBPU0VfXzpmdW5jdGlvbigpe2lmKDAhPT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiJvYmplY3QiPT10eXBlb2YgYXJndW1lbnRzWzBdP28uY29tcG9zZTpvLmNvbXBvc2UuYXBwbHkobnVsbCxhcmd1bWVudHMpfTsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18mJndpbmRvdy5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9fO2Z1bmN0aW9uIF8odCl7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dClyZXR1cm4hMTtmb3IodmFyIGU9dDtudWxsIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKGUpOyllPU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQpPT09ZX12YXIgdz1mdW5jdGlvbih0KXtmdW5jdGlvbiBlKCl7Zm9yKHZhciBuPVtdLGk9MDtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKW5baV09YXJndW1lbnRzW2ldO3ZhciByPXQuYXBwbHkodGhpcyxuKXx8dGhpcztyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKHIsZS5wcm90b3R5cGUpLHJ9cmV0dXJuIGEoZSx0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wuc3BlY2llcyx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksCmUucHJvdG90eXBlLmNvbmNhdD1mdW5jdGlvbigpe2Zvcih2YXIgZT1bXSxuPTA7bjxhcmd1bWVudHMubGVuZ3RoO24rKyllW25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gdC5wcm90b3R5cGUuY29uY2F0LmFwcGx5KHRoaXMsZSl9LGUucHJvdG90eXBlLnByZXBlbmQ9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sbj0wO248YXJndW1lbnRzLmxlbmd0aDtuKyspdFtuXT1hcmd1bWVudHNbbl07cmV0dXJuIDE9PT10Lmxlbmd0aCYmQXJyYXkuaXNBcnJheSh0WzBdKT9uZXcoZS5iaW5kLmFwcGx5KGUsbChbdm9pZCAwXSx0WzBdLmNvbmNhdCh0aGlzKSkpKTpuZXcoZS5iaW5kLmFwcGx5KGUsbChbdm9pZCAwXSx0LmNvbmNhdCh0aGlzKSkpKX0sZX0oQXJyYXkpO2Z1bmN0aW9uIHgoKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PXt9KTt2YXIgZT10LnRodW5rLG49dm9pZCAwPT09ZXx8ZSxpPSh0LmltbXV0YWJsZUNoZWNrLHQuc2VyaWFsaXphYmxlQ2hlY2ssbmV3IHcpO24mJigiYm9vbGVhbiI9PXR5cGVvZiBuP2kucHVzaChzLmRlZmF1bHQpOmkucHVzaChzLmRlZmF1bHQud2l0aEV4dHJhQXJndW1lbnQobi5leHRyYUFyZ3VtZW50KSkpOzA7cmV0dXJuIGl9KHQpfX1mdW5jdGlvbiBPKHQpe3ZhciBlLG49eCgpLGk9dHx8e30scj1pLnJlZHVjZXIscz12b2lkIDA9PT1yP3ZvaWQgMDpyLGE9aS5taWRkbGV3YXJlLHU9dm9pZCAwPT09YT9uKCk6YSxjPWkuZGV2VG9vbHMsZj12b2lkIDA9PT1jfHxjLGg9aS5wcmVsb2FkZWRTdGF0ZSxkPXZvaWQgMD09PWg/dm9pZCAwOmgscD1pLmVuaGFuY2Vycyx2PXZvaWQgMD09PXA/dm9pZCAwOnA7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHMpZT1zO2Vsc2V7aWYoIV8ocykpdGhyb3cgbmV3IEVycm9yKCcicmVkdWNlciIgaXMgYSByZXF1aXJlZCBhcmd1bWVudCwgYW5kIG11c3QgYmUgYSBmdW5jdGlvbiBvciBhbiBvYmplY3Qgb2YgZnVuY3Rpb25zIHRoYXQgY2FuIGJlIHBhc3NlZCB0byBjb21iaW5lUmVkdWNlcnMnKTtlPSgwLG8uY29tYmluZVJlZHVjZXJzKShzKX12YXIgZz11OyJmdW5jdGlvbiI9PXR5cGVvZiBnJiYoZz1nKG4pKTt2YXIgeT1vLmFwcGx5TWlkZGxld2FyZS5hcHBseSh2b2lkIDAsZyksdz1vLmNvbXBvc2U7ZiYmKHc9YihtKHt0cmFjZTohMX0sIm9iamVjdCI9PXR5cGVvZiBmJiZmKSkpO3ZhciBPPVt5XTtBcnJheS5pc0FycmF5KHYpP089bChbeV0sdik6ImZ1bmN0aW9uIj09dHlwZW9mIHYmJihPPXYoTykpO3ZhciBFPXcuYXBwbHkodm9pZCAwLE8pO3JldHVybigwLG8uY3JlYXRlU3RvcmUpKGUsZCxFKX1mdW5jdGlvbiBFKHQsZSl7ZnVuY3Rpb24gbigpe2Zvcih2YXIgbj1bXSxpPTA7aTxhcmd1bWVudHMubGVuZ3RoO2krKyluW2ldPWFyZ3VtZW50c1tpXTtpZihlKXt2YXIgcj1lLmFwcGx5KHZvaWQgMCxuKTtpZighcil0aHJvdyBuZXcgRXJyb3IoInByZXBhcmVBY3Rpb24gZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0Iik7cmV0dXJuIG0obSh7dHlwZTp0LHBheWxvYWQ6ci5wYXlsb2FkfSwibWV0YSJpbiByJiZ7bWV0YTpyLm1ldGF9KSwiZXJyb3IiaW4gciYme2Vycm9yOnIuZXJyb3J9KX1yZXR1cm57dHlwZTp0LHBheWxvYWQ6blswXX19cmV0dXJuIG4udG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iIit0fSxuLnR5cGU9dCxuLm1hdGNoPWZ1bmN0aW9uKGUpe3JldHVybiBlLnR5cGU9PT10fSxufWZ1bmN0aW9uIEModCl7dmFyIGUsbj17fSxpPVtdLHI9e2FkZENhc2U6ZnVuY3Rpb24odCxlKXt2YXIgaT0ic3RyaW5nIj09dHlwZW9mIHQ/dDp0LnR5cGU7aWYoaSBpbiBuKXRocm93IG5ldyBFcnJvcigiYWRkQ2FzZSBjYW5ub3QgYmUgY2FsbGVkIHdpdGggdHdvIHJlZHVjZXJzIGZvciB0aGUgc2FtZSBhY3Rpb24gdHlwZSIpO3JldHVybiBuW2ldPWUscn0sYWRkTWF0Y2hlcjpmdW5jdGlvbih0LGUpe3JldHVybiBpLnB1c2goe21hdGNoZXI6dCxyZWR1Y2VyOmV9KSxyfSxhZGREZWZhdWx0Q2FzZTpmdW5jdGlvbih0KXtyZXR1cm4gZT10LHJ9fTtyZXR1cm4gdChyKSxbbixpLGVdfWZ1bmN0aW9uIGsodCl7dmFyIGU9dC5uYW1lLG49dC5pbml0aWFsU3RhdGU7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJgbmFtZWAgaXMgYSByZXF1aXJlZCBvcHRpb24gZm9yIGNyZWF0ZVNsaWNlIik7dmFyIGk9dC5yZWR1Y2Vyc3x8e30sbz0iZnVuY3Rpb24iPT10eXBlb2YgdC5leHRyYVJlZHVjZXJzP0ModC5leHRyYVJlZHVjZXJzKTpbdC5leHRyYVJlZHVjZXJzXSxzPW9bMF0sYT12b2lkIDA9PT1zP3t9OnMsdT1vWzFdLGM9dm9pZCAwPT09dT9bXTp1LGY9b1syXSxoPXZvaWQgMD09PWY/dm9pZCAwOmYsZD1PYmplY3Qua2V5cyhpKSxwPXt9LHY9e30sZz17fTtkLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBuLHIsbz1pW3RdLHM9ZSsiLyIrdDsicmVkdWNlciJpbiBvPyhuPW8ucmVkdWNlcixyPW8ucHJlcGFyZSk6bj1vLHBbdF09bix2W3NdPW4sZ1t0XT1yP0UocyxyKTpFKHMpfSkpO3ZhciB5PWZ1bmN0aW9uKHQsZSxuLGkpe3ZvaWQgMD09PW4mJihuPVtdKTt2YXIgbz0iZnVuY3Rpb24iPT10eXBlb2YgZT9DKGUpOltlLG4saV0scz1vWzBdLGE9b1sxXSx1PW9bMl0sYz0oMCxyLmRlZmF1bHQpKHQsKGZ1bmN0aW9uKCl7fSkpO3JldHVybiBmdW5jdGlvbih0LGUpe3ZvaWQgMD09PXQmJih0PWMpO3ZhciBuPWwoW3NbZS50eXBlXV0sYS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybigwLHQubWF0Y2hlcikoZSl9KSkubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC5yZWR1Y2VyfSkpKTtyZXR1cm4gMD09PW4uZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4hIXR9KSkubGVuZ3RoJiYobj1bdV0pLG4ucmVkdWNlKChmdW5jdGlvbih0LG4pe2lmKG4pe3ZhciBpO2lmKCgwLHIuaXNEcmFmdCkodCkpcmV0dXJuIHZvaWQgMD09PShpPW4odCxlKSk/dDppO2lmKCgwLHIuaXNEcmFmdGFibGUpKHQpKXJldHVybigwLHIuZGVmYXVsdCkodCwoZnVuY3Rpb24odCl7cmV0dXJuIG4odCxlKX0pKTtpZih2b2lkIDA9PT0oaT1uKHQsZSkpKXtpZihudWxsPT09dClyZXR1cm4gdAo7dGhyb3cgRXJyb3IoIkEgY2FzZSByZWR1Y2VyIG9uIGEgbm9uLWRyYWZ0YWJsZSB2YWx1ZSBtdXN0IG5vdCByZXR1cm4gdW5kZWZpbmVkIil9cmV0dXJuIGl9cmV0dXJuIHR9KSx0KX19KG4sbShtKHt9LGEpLHYpLGMsaCk7cmV0dXJue25hbWU6ZSxyZWR1Y2VyOnksYWN0aW9uczpnLGNhc2VSZWR1Y2VyczpwfX12YXIgUz1mdW5jdGlvbih0KXt2b2lkIDA9PT10JiYodD0yMSk7Zm9yKHZhciBlPSIiLG49dDtuLS07KWUrPSJNb2R1bGVTeW1iaGFzT3duUHItMDEyMzQ1Njc4OUFCQ0RFRkdITlJWZmdjdGlVdnpfS3FZVEprTHhwWlhJalFXIls2NCpNYXRoLnJhbmRvbSgpfDBdO3JldHVybiBlfSxEPVsibmFtZSIsIm1lc3NhZ2UiLCJzdGFjayIsImNvZGUiXSxNPWZ1bmN0aW9uKHQsZSl7dGhpcy5wYXlsb2FkPXQsdGhpcy5tZXRhPWV9LFA9ZnVuY3Rpb24odCxlKXt0aGlzLnBheWxvYWQ9dCx0aGlzLm1ldGE9ZX0sQT1mdW5jdGlvbih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtmb3IodmFyIGU9e30sbj0wLGk9RDtuPGkubGVuZ3RoO24rKyl7dmFyIHI9aVtuXTsic3RyaW5nIj09dHlwZW9mIHRbcl0mJihlW3JdPXRbcl0pfXJldHVybiBlfXJldHVybnttZXNzYWdlOlN0cmluZyh0KX19O2Z1bmN0aW9uIGoodCxlLG4pe3ZhciBpPUUodCsiL2Z1bGZpbGxlZCIsKGZ1bmN0aW9uKHQsZSxuLGkpe3JldHVybntwYXlsb2FkOnQsbWV0YTp5KG0oe30saXx8e30pLHthcmc6bixyZXF1ZXN0SWQ6ZSxyZXF1ZXN0U3RhdHVzOiJmdWxmaWxsZWQifSl9fSkpLHI9RSh0KyIvcGVuZGluZyIsKGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm57cGF5bG9hZDp2b2lkIDAsbWV0YTp5KG0oe30sbnx8e30pLHthcmc6ZSxyZXF1ZXN0SWQ6dCxyZXF1ZXN0U3RhdHVzOiJwZW5kaW5nIn0pfX0pKSxvPUUodCsiL3JlamVjdGVkIiwoZnVuY3Rpb24odCxlLGkscixvKXtyZXR1cm57cGF5bG9hZDpyLGVycm9yOihuJiZuLnNlcmlhbGl6ZUVycm9yfHxBKSh0fHwiUmVqZWN0ZWQiKSxtZXRhOnkobSh7fSxvfHx7fSkse2FyZzppLHJlcXVlc3RJZDplLHJlamVjdGVkV2l0aFZhbHVlOiEhcixyZXF1ZXN0U3RhdHVzOiJyZWplY3RlZCIsYWJvcnRlZDoiQWJvcnRFcnJvciI9PT0obnVsbD09dD92b2lkIDA6dC5uYW1lKSxjb25kaXRpb246IkNvbmRpdGlvbkVycm9yIj09PShudWxsPT10P3ZvaWQgMDp0Lm5hbWUpfSl9fSkpLHM9InVuZGVmaW5lZCIhPXR5cGVvZiBBYm9ydENvbnRyb2xsZXI/QWJvcnRDb250cm9sbGVyOmZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe3RoaXMuc2lnbmFsPXthYm9ydGVkOiExLGFkZEV2ZW50TGlzdGVuZXI6ZnVuY3Rpb24oKXt9LGRpc3BhdGNoRXZlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4hMX0sb25hYm9ydDpmdW5jdGlvbigpe30scmVtb3ZlRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbigpe319fXJldHVybiB0LnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpezB9LHR9KCk7cmV0dXJuIE9iamVjdC5hc3NpZ24oKGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihhLGwsYyl7dmFyIGYsaCxkPShudWxsIT0oZj1udWxsPT1uP3ZvaWQgMDpuLmlkR2VuZXJhdG9yKT9mOlMpKCkscD1uZXcgcyx2PW5ldyBQcm9taXNlKChmdW5jdGlvbih0LGUpe3JldHVybiBwLnNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGUoe25hbWU6IkFib3J0RXJyb3IiLG1lc3NhZ2U6aHx8IkFib3J0ZWQifSl9KSl9KSksZz0hMTt2YXIgbT1mdW5jdGlvbigpe3JldHVybiBzPXRoaXMsZj1udWxsLGg9ZnVuY3Rpb24oKXt2YXIgcyxmLGg7cmV0dXJuIHUodGhpcywoZnVuY3Rpb24odSl7c3dpdGNoKHUubGFiZWwpe2Nhc2UgMDppZih1LnRyeXMucHVzaChbMCwyLCwzXSksbiYmbi5jb25kaXRpb24mJiExPT09bi5jb25kaXRpb24odCx7Z2V0U3RhdGU6bCxleHRyYTpjfSkpdGhyb3d7bmFtZToiQ29uZGl0aW9uRXJyb3IiLG1lc3NhZ2U6IkFib3J0ZWQgZHVlIHRvIGNvbmRpdGlvbiBjYWxsYmFjayByZXR1cm5pbmcgZmFsc2UuIn07cmV0dXJuIGc9ITAsYShyKGQsdCxudWxsPT0ocz1udWxsPT1uP3ZvaWQgMDpuLmdldFBlbmRpbmdNZXRhKT92b2lkIDA6cy5jYWxsKG4se3JlcXVlc3RJZDpkLGFyZzp0fSx7Z2V0U3RhdGU6bCxleHRyYTpjfSkpKSxbNCxQcm9taXNlLnJhY2UoW3YsUHJvbWlzZS5yZXNvbHZlKGUodCx7ZGlzcGF0Y2g6YSxnZXRTdGF0ZTpsLGV4dHJhOmMscmVxdWVzdElkOmQsc2lnbmFsOnAuc2lnbmFsLHJlamVjdFdpdGhWYWx1ZTpmdW5jdGlvbih0LGUpe3JldHVybiBuZXcgTSh0LGUpfSxmdWxmaWxsV2l0aFZhbHVlOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBQKHQsZSl9fSkpLnRoZW4oKGZ1bmN0aW9uKGUpe2lmKGUgaW5zdGFuY2VvZiBNKXRocm93IGU7cmV0dXJuIGUgaW5zdGFuY2VvZiBQP2koZS5wYXlsb2FkLGQsdCxlLm1ldGEpOmkoZSxkLHQpfSkpXSldO2Nhc2UgMTpyZXR1cm4gZj11LnNlbnQoKSxbMywzXTtjYXNlIDI6cmV0dXJuIGg9dS5zZW50KCksZj1oIGluc3RhbmNlb2YgTT9vKG51bGwsZCx0LGgucGF5bG9hZCxoLm1ldGEpOm8oaCxkLHQpLFszLDNdO2Nhc2UgMzpyZXR1cm4gbiYmIW4uZGlzcGF0Y2hDb25kaXRpb25SZWplY3Rpb24mJm8ubWF0Y2goZikmJmYubWV0YS5jb25kaXRpb258fGEoZiksWzIsZl19fSkpfSxuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxlKXt2YXIgbj1mdW5jdGlvbih0KXt0cnl7cihoLm5leHQodCkpfWNhdGNoKHQpe2UodCl9fSxpPWZ1bmN0aW9uKHQpe3RyeXtyKGgudGhyb3codCkpfWNhdGNoKHQpe2UodCl9fSxyPWZ1bmN0aW9uKGUpe3JldHVybiBlLmRvbmU/dChlLnZhbHVlKTpQcm9taXNlLnJlc29sdmUoZS52YWx1ZSkudGhlbihuLGkpfTtyKChoPWguYXBwbHkocyxmKSkubmV4dCgpKX0pKTt2YXIgcyxmLGh9KCk7cmV0dXJuIE9iamVjdC5hc3NpZ24obSx7YWJvcnQ6ZnVuY3Rpb24odCl7ZyYmKGg9dCxwLmFib3J0KCkpfSxyZXF1ZXN0SWQ6ZCxhcmc6dCx1bndyYXA6ZnVuY3Rpb24oKXtyZXR1cm4gbS50aGVuKFQpfX0pfX0pLHtwZW5kaW5nOnIscmVqZWN0ZWQ6byxmdWxmaWxsZWQ6aSx0eXBlUHJlZml4OnR9KX1mdW5jdGlvbiBUKHQpewppZih0Lm1ldGEmJnQubWV0YS5yZWplY3RlZFdpdGhWYWx1ZSl0aHJvdyB0LnBheWxvYWQ7aWYodC5lcnJvcil0aHJvdyB0LmVycm9yO3JldHVybiB0LnBheWxvYWR9KDAsci5lbmFibGVFUzUpKCl9LDg1MzMzNih0LGUpe3ZhciBuLGkscjtpPVtlXSxuPWZ1bmN0aW9uKHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBlKHQpe2lmKEFycmF5LmlzQXJyYXkodCkpe2Zvcih2YXIgZT0wLG49QXJyYXkodC5sZW5ndGgpO2U8dC5sZW5ndGg7ZSsrKW5bZV09dFtlXTtyZXR1cm4gbn1yZXR1cm4gQXJyYXkuZnJvbSh0KX1PYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49ITE7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpe3ZhciBpPXtnZXQgcGFzc2l2ZSgpe249ITB9fTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidGVzdFBhc3NpdmUiLG51bGwsaSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3RQYXNzaXZlIixudWxsLGkpfXZhciByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnBsYXRmb3JtJiYvaVAoYWR8aG9uZXxvZCkvLnRlc3Qod2luZG93Lm5hdmlnYXRvci5wbGF0Zm9ybSksbz1bXSxzPSExLGE9LTEsdT12b2lkIDAsbD12b2lkIDAsYz1mdW5jdGlvbih0KXtyZXR1cm4gby5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4hKCFlLm9wdGlvbnMuYWxsb3dUb3VjaE1vdmV8fCFlLm9wdGlvbnMuYWxsb3dUb3VjaE1vdmUodCkpfSkpfSxmPWZ1bmN0aW9uKHQpe3ZhciBlPXR8fHdpbmRvdy5ldmVudDtyZXR1cm4hIWMoZS50YXJnZXQpfHwxPGUudG91Y2hlcy5sZW5ndGh8fChlLnByZXZlbnREZWZhdWx0JiZlLnByZXZlbnREZWZhdWx0KCksITEpfSxoPWZ1bmN0aW9uKCl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2b2lkIDAhPT1sJiYoZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9bCxsPXZvaWQgMCksdm9pZCAwIT09dSYmKGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3c9dSx1PXZvaWQgMCl9KSl9O3QuZGlzYWJsZUJvZHlTY3JvbGw9ZnVuY3Rpb24odCxpKXtpZihyKXtpZighdClyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJkaXNhYmxlQm9keVNjcm9sbCB1bnN1Y2Nlc3NmdWwgLSB0YXJnZXRFbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBjYWxsaW5nIGRpc2FibGVCb2R5U2Nyb2xsIG9uIElPUyBkZXZpY2VzLiIpO2lmKHQmJiFvLnNvbWUoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRhcmdldEVsZW1lbnQ9PT10fSkpKXt2YXIgaD17dGFyZ2V0RWxlbWVudDp0LG9wdGlvbnM6aXx8e319O289W10uY29uY2F0KGUobyksW2hdKSx0Lm9udG91Y2hzdGFydD1mdW5jdGlvbih0KXsxPT09dC50YXJnZXRUb3VjaGVzLmxlbmd0aCYmKGE9dC50YXJnZXRUb3VjaGVzWzBdLmNsaWVudFkpfSx0Lm9udG91Y2htb3ZlPWZ1bmN0aW9uKGUpe3ZhciBuLGkscixvOzE9PT1lLnRhcmdldFRvdWNoZXMubGVuZ3RoJiYoaT10LG89KG49ZSkudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRZLWEsIWMobi50YXJnZXQpJiYoaSYmMD09PWkuc2Nyb2xsVG9wJiYwPG98fChyPWkpJiZyLnNjcm9sbEhlaWdodC1yLnNjcm9sbFRvcDw9ci5jbGllbnRIZWlnaHQmJm88MD9mKG4pOm4uc3RvcFByb3BhZ2F0aW9uKCkpKX0sc3x8KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZixuP3twYXNzaXZlOiExfTp2b2lkIDApLHM9ITApfX1lbHNle3A9aSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2lmKHZvaWQgMD09PWwpe3ZhciB0PSEhcCYmITA9PT1wLnJlc2VydmVTY3JvbGxCYXJHYXAsZT13aW5kb3cuaW5uZXJXaWR0aC1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7dCYmMDxlJiYobD1kb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCxkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodD1lKyJweCIpfXZvaWQgMD09PXUmJih1PWRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3csZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIil9KSk7dmFyIGQ9e3RhcmdldEVsZW1lbnQ6dCxvcHRpb25zOml8fHt9fTtvPVtdLmNvbmNhdChlKG8pLFtkXSl9dmFyIHB9LHQuY2xlYXJBbGxCb2R5U2Nyb2xsTG9ja3M9ZnVuY3Rpb24oKXtyPyhvLmZvckVhY2goKGZ1bmN0aW9uKHQpe3QudGFyZ2V0RWxlbWVudC5vbnRvdWNoc3RhcnQ9bnVsbCx0LnRhcmdldEVsZW1lbnQub250b3VjaG1vdmU9bnVsbH0pKSxzJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmLG4/e3Bhc3NpdmU6ITF9OnZvaWQgMCkscz0hMSksbz1bXSxhPS0xKTooaCgpLG89W10pfSx0LmVuYWJsZUJvZHlTY3JvbGw9ZnVuY3Rpb24odCl7aWYocil7aWYoIXQpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiZW5hYmxlQm9keVNjcm9sbCB1bnN1Y2Nlc3NmdWwgLSB0YXJnZXRFbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBjYWxsaW5nIGVuYWJsZUJvZHlTY3JvbGwgb24gSU9TIGRldmljZXMuIik7dC5vbnRvdWNoc3RhcnQ9bnVsbCx0Lm9udG91Y2htb3ZlPW51bGwsbz1vLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUudGFyZ2V0RWxlbWVudCE9PXR9KSkscyYmMD09PW8ubGVuZ3RoJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmLG4/e3Bhc3NpdmU6ITF9OnZvaWQgMCkscz0hMSl9ZWxzZSAxPT09by5sZW5ndGgmJm9bMF0udGFyZ2V0RWxlbWVudD09PXQ/KGgoKSxvPVtdKTpvPW8uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gZS50YXJnZXRFbGVtZW50IT09dH0pKX19LHZvaWQgMD09PShyPSJmdW5jdGlvbiI9PXR5cGVvZiBuP24uYXBwbHkoZSxpKTpuKXx8KHQuZXhwb3J0cz1yKX0sMzI3MjM5KHQsZSxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCxuPUFycmF5KGU+MT9lLTE6MCksaT0xO2k8ZTtpKyspbltpLTFdPWFyZ3VtZW50c1tpXQo7dGhyb3cgRXJyb3IoIltJbW1lcl0gbWluaWZpZWQgZXJyb3IgbnI6ICIrdCsobi5sZW5ndGg/IiAiK24ubWFwKChmdW5jdGlvbih0KXtyZXR1cm4iJyIrdCsiJyJ9KSkuam9pbigiLCIpOiIiKSsiLiBGaW5kIHRoZSBmdWxsIGVycm9yIGF0OiBodHRwczovL2JpdC5seS8zY1hFS1dmIil9ZnVuY3Rpb24gcih0KXtyZXR1cm4hIXQmJiEhdFtYXX1mdW5jdGlvbiBvKHQpe3JldHVybiEhdCYmKGZ1bmN0aW9uKHQpe2lmKCF0fHwib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuITE7dmFyIGU9T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO2lmKG51bGw9PT1lKXJldHVybiEwO3ZhciBuPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsImNvbnN0cnVjdG9yIikmJmUuY29uc3RydWN0b3I7cmV0dXJuIG49PT1PYmplY3R8fCJmdW5jdGlvbiI9PXR5cGVvZiBuJiZGdW5jdGlvbi50b1N0cmluZy5jYWxsKG4pPT09WX0odCl8fEFycmF5LmlzQXJyYXkodCl8fCEhdFtLXXx8ISF0LmNvbnN0cnVjdG9yW0tdfHxkKHQpfHxwKHQpKX1mdW5jdGlvbiBzKHQpe3JldHVybiByKHQpfHxpKDIzLHQpLHRbWF0udH1mdW5jdGlvbiBhKHQsZSxuKXt2b2lkIDA9PT1uJiYobj0hMSksMD09PXUodCk/KG4/T2JqZWN0LmtleXM6JCkodCkuZm9yRWFjaCgoZnVuY3Rpb24oaSl7biYmInN5bWJvbCI9PXR5cGVvZiBpfHxlKGksdFtpXSx0KX0pKTp0LmZvckVhY2goKGZ1bmN0aW9uKG4saSl7cmV0dXJuIGUoaSxuLHQpfSkpfWZ1bmN0aW9uIHUodCl7dmFyIGU9dFtYXTtyZXR1cm4gZT9lLmk+Mz9lLmktNDplLmk6QXJyYXkuaXNBcnJheSh0KT8xOmQodCk/MjpwKHQpPzM6MH1mdW5jdGlvbiBsKHQsZSl7cmV0dXJuIDI9PT11KHQpP3QuaGFzKGUpOk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpfWZ1bmN0aW9uIGModCxlKXtyZXR1cm4gMj09PXUodCk/dC5nZXQoZSk6dFtlXX1mdW5jdGlvbiBmKHQsZSxuKXt2YXIgaT11KHQpOzI9PT1pP3Quc2V0KGUsbik6Mz09PWk/KHQuZGVsZXRlKGUpLHQuYWRkKG4pKTp0W2VdPW59ZnVuY3Rpb24gaCh0LGUpe3JldHVybiB0PT09ZT8wIT09dHx8MS90PT0xL2U6dCE9dCYmZSE9ZX1mdW5jdGlvbiBkKHQpe3JldHVybiBVJiZ0IGluc3RhbmNlb2YgTWFwfWZ1bmN0aW9uIHAodCl7cmV0dXJuIHomJnQgaW5zdGFuY2VvZiBTZXR9ZnVuY3Rpb24gdih0KXtyZXR1cm4gdC5vfHx0LnR9ZnVuY3Rpb24gZyh0KXtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KTt2YXIgZT1RKHQpO2RlbGV0ZSBlW1hdO2Zvcih2YXIgbj0kKGUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXSxvPWVbcl07ITE9PT1vLndyaXRhYmxlJiYoby53cml0YWJsZT0hMCxvLmNvbmZpZ3VyYWJsZT0hMCksKG8uZ2V0fHxvLnNldCkmJihlW3JdPXtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsZW51bWVyYWJsZTpvLmVudW1lcmFibGUsdmFsdWU6dFtyXX0pfXJldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0KSxlKX1mdW5jdGlvbiBtKHQsZSl7cmV0dXJuIHZvaWQgMD09PWUmJihlPSExKSxiKHQpfHxyKHQpfHwhbyh0KXx8KHUodCk+MSYmKHQuc2V0PXQuYWRkPXQuY2xlYXI9dC5kZWxldGU9eSksT2JqZWN0LmZyZWV6ZSh0KSxlJiZhKHQsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG0oZSwhMCl9KSwhMCkpLHR9ZnVuY3Rpb24geSgpe2koMil9ZnVuY3Rpb24gYih0KXtyZXR1cm4gbnVsbD09dHx8Im9iamVjdCIhPXR5cGVvZiB0fHxPYmplY3QuaXNGcm96ZW4odCl9ZnVuY3Rpb24gXyh0KXt2YXIgZT1KW3RdO3JldHVybiBlfHxpKDE4LHQpLGV9ZnVuY3Rpb24gdyh0LGUpe0pbdF18fChKW3RdPWUpfWZ1bmN0aW9uIHgoKXtyZXR1cm4gQn1mdW5jdGlvbiBPKHQsZSl7ZSYmKF8oIlBhdGNoZXMiKSx0LnU9W10sdC5zPVtdLHQudj1lKX1mdW5jdGlvbiBFKHQpe0ModCksdC5wLmZvckVhY2goUyksdC5wPW51bGx9ZnVuY3Rpb24gQyh0KXt0PT09QiYmKEI9dC5sKX1mdW5jdGlvbiBrKHQpe3JldHVybiBCPXtwOltdLGw6QixoOnQsbTohMCxfOjB9fWZ1bmN0aW9uIFModCl7dmFyIGU9dFtYXTswPT09ZS5pfHwxPT09ZS5pP2UuaigpOmUuTz0hMH1mdW5jdGlvbiBEKHQsZSl7ZS5fPWUucC5sZW5ndGg7dmFyIG49ZS5wWzBdLHI9dm9pZCAwIT09dCYmdCE9PW47cmV0dXJuIGUuaC5nfHxfKCJFUzUiKS5TKGUsdCxyKSxyPyhuW1hdLlAmJihFKGUpLGkoNCkpLG8odCkmJih0PU0oZSx0KSxlLmx8fEEoZSx0KSksZS51JiZfKCJQYXRjaGVzIikuTShuW1hdLHQsZS51LGUucykpOnQ9TShlLG4sW10pLEUoZSksZS51JiZlLnYoZS51LGUucyksdCE9PUc/dDp2b2lkIDB9ZnVuY3Rpb24gTSh0LGUsbil7aWYoYihlKSlyZXR1cm4gZTt2YXIgaT1lW1hdO2lmKCFpKXJldHVybiBhKGUsKGZ1bmN0aW9uKHIsbyl7cmV0dXJuIFAodCxpLGUscixvLG4pfSksITApLGU7aWYoaS5BIT09dClyZXR1cm4gZTtpZighaS5QKXJldHVybiBBKHQsaS50LCEwKSxpLnQ7aWYoIWkuSSl7aS5JPSEwLGkuQS5fLS07dmFyIHI9ND09PWkuaXx8NT09PWkuaT9pLm89ZyhpLmspOmkubzthKDM9PT1pLmk/bmV3IFNldChyKTpyLChmdW5jdGlvbihlLG8pe3JldHVybiBQKHQsaSxyLGUsbyxuKX0pKSxBKHQsciwhMSksbiYmdC51JiZfKCJQYXRjaGVzIikuUihpLG4sdC51LHQucyl9cmV0dXJuIGkub31mdW5jdGlvbiBQKHQsZSxuLGkscyxhKXtpZihyKHMpKXt2YXIgdT1NKHQscyxhJiZlJiYzIT09ZS5pJiYhbChlLkQsaSk/YS5jb25jYXQoaSk6dm9pZCAwKTtpZihmKG4saSx1KSwhcih1KSlyZXR1cm47dC5tPSExfWlmKG8ocykmJiFiKHMpKXtpZighdC5oLkYmJnQuXzwxKXJldHVybjtNKHQscyksZSYmZS5BLmx8fEEodCxzKX19ZnVuY3Rpb24gQSh0LGUsbil7dm9pZCAwPT09biYmKG49ITEpLHQuaC5GJiZ0Lm0mJm0oZSxuKX1mdW5jdGlvbiBqKHQsZSl7dmFyIG49dFtYXTtyZXR1cm4obj92KG4pOnQpW2VdfWZ1bmN0aW9uIFQodCxlKXtpZihlIGluIHQpZm9yKHZhciBuPU9iamVjdC5nZXRQcm90b3R5cGVPZih0KTtuOyl7CnZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKTtpZihpKXJldHVybiBpO249T2JqZWN0LmdldFByb3RvdHlwZU9mKG4pfX1mdW5jdGlvbiBOKHQpe3QuUHx8KHQuUD0hMCx0LmwmJk4odC5sKSl9ZnVuY3Rpb24gSSh0KXt0Lm98fCh0Lm89Zyh0LnQpKX1mdW5jdGlvbiBMKHQsZSxuKXt2YXIgaT1kKGUpP18oIk1hcFNldCIpLk4oZSxuKTpwKGUpP18oIk1hcFNldCIpLlQoZSxuKTp0Lmc/ZnVuY3Rpb24odCxlKXt2YXIgbj1BcnJheS5pc0FycmF5KHQpLGk9e2k6bj8xOjAsQTplP2UuQTp4KCksUDohMSxJOiExLEQ6e30sbDplLHQsazpudWxsLG86bnVsbCxqOm51bGwsQzohMX0scj1pLG89WjtuJiYocj1baV0sbz10dCk7dmFyIHM9UHJveHkucmV2b2NhYmxlKHIsbyksYT1zLnJldm9rZSx1PXMucHJveHk7cmV0dXJuIGkuaz11LGkuaj1hLHV9KGUsbik6XygiRVM1IikuSihlLG4pO3JldHVybihuP24uQTp4KCkpLnAucHVzaChpKSxpfWZ1bmN0aW9uIFYodCl7cmV0dXJuIHIodCl8fGkoMjIsdCksZnVuY3Rpb24gdChlKXtpZighbyhlKSlyZXR1cm4gZTt2YXIgbixpPWVbWF0scj11KGUpO2lmKGkpe2lmKCFpLlAmJihpLmk8NHx8IV8oIkVTNSIpLksoaSkpKXJldHVybiBpLnQ7aS5JPSEwLG49UihlLHIpLGkuST0hMX1lbHNlIG49UihlLHIpO3JldHVybiBhKG4sKGZ1bmN0aW9uKGUscil7aSYmYyhpLnQsZSk9PT1yfHxmKG4sZSx0KHIpKX0pKSwzPT09cj9uZXcgU2V0KG4pOm59KHQpfWZ1bmN0aW9uIFIodCxlKXtzd2l0Y2goZSl7Y2FzZSAyOnJldHVybiBuZXcgTWFwKHQpO2Nhc2UgMzpyZXR1cm4gQXJyYXkuZnJvbSh0KX1yZXR1cm4gZyh0KX1mdW5jdGlvbiBXKCl7ZnVuY3Rpb24gdCh0LGUpe3ZhciBuPW9bdF07cmV0dXJuIG4/bi5lbnVtZXJhYmxlPWU6b1t0XT1uPXtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTplLGdldDpmdW5jdGlvbigpe3ZhciBlPXRoaXNbWF07cmV0dXJuIFouZ2V0KGUsdCl9LHNldDpmdW5jdGlvbihlKXt2YXIgbj10aGlzW1hdO1ouc2V0KG4sdCxlKX19LG59ZnVuY3Rpb24gZSh0KXtmb3IodmFyIGU9dC5sZW5ndGgtMTtlPj0wO2UtLSl7dmFyIHI9dFtlXVtYXTtpZighci5QKXN3aXRjaChyLmkpe2Nhc2UgNTppKHIpJiZOKHIpO2JyZWFrO2Nhc2UgNDpuKHIpJiZOKHIpfX19ZnVuY3Rpb24gbih0KXtmb3IodmFyIGU9dC50LG49dC5rLGk9JChuKSxyPWkubGVuZ3RoLTE7cj49MDtyLS0pe3ZhciBvPWlbcl07aWYobyE9PVgpe3ZhciBzPWVbb107aWYodm9pZCAwPT09cyYmIWwoZSxvKSlyZXR1cm4hMDt2YXIgYT1uW29dLHU9YSYmYVtYXTtpZih1P3UudCE9PXM6IWgoYSxzKSlyZXR1cm4hMH19dmFyIGM9ISFlW1hdO3JldHVybiBpLmxlbmd0aCE9PSQoZSkubGVuZ3RoKyhjPzA6MSl9ZnVuY3Rpb24gaSh0KXt2YXIgZT10Lms7aWYoZS5sZW5ndGghPT10LnQubGVuZ3RoKXJldHVybiEwO3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxlLmxlbmd0aC0xKTtyZXR1cm4hKCFufHxuLmdldCl9dmFyIG89e307dygiRVM1Iix7SjpmdW5jdGlvbihlLG4pe3ZhciBpPUFycmF5LmlzQXJyYXkoZSkscj1mdW5jdGlvbihlLG4pe2lmKGUpe2Zvcih2YXIgaT1BcnJheShuLmxlbmd0aCkscj0wO3I8bi5sZW5ndGg7cisrKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShpLCIiK3IsdChyLCEwKSk7cmV0dXJuIGl9dmFyIG89UShuKTtkZWxldGUgb1tYXTtmb3IodmFyIHM9JChvKSxhPTA7YTxzLmxlbmd0aDthKyspe3ZhciB1PXNbYV07b1t1XT10KHUsZXx8ISFvW3VdLmVudW1lcmFibGUpfXJldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZihuKSxvKX0oaSxlKSxvPXtpOmk/NTo0LEE6bj9uLkE6eCgpLFA6ITEsSTohMSxEOnt9LGw6bix0OmUsazpyLG86bnVsbCxPOiExLEM6ITF9O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkocixYLHt2YWx1ZTpvLHdyaXRhYmxlOiEwfSkscn0sUzpmdW5jdGlvbih0LG4sbyl7bz9yKG4pJiZuW1hdLkE9PT10JiZlKHQucCk6KHQudSYmZnVuY3Rpb24gdChlKXtpZihlJiYib2JqZWN0Ij09dHlwZW9mIGUpe3ZhciBuPWVbWF07aWYobil7dmFyIHI9bi50LG89bi5rLHM9bi5ELHU9bi5pO2lmKDQ9PT11KWEobywoZnVuY3Rpb24oZSl7ZSE9PVgmJih2b2lkIDAhPT1yW2VdfHxsKHIsZSk/c1tlXXx8dChvW2VdKTooc1tlXT0hMCxOKG4pKSl9KSksYShyLChmdW5jdGlvbih0KXt2b2lkIDAhPT1vW3RdfHxsKG8sdCl8fChzW3RdPSExLE4obikpfSkpO2Vsc2UgaWYoNT09PXUpe2lmKGkobikmJihOKG4pLHMubGVuZ3RoPSEwKSxvLmxlbmd0aDxyLmxlbmd0aClmb3IodmFyIGM9by5sZW5ndGg7YzxyLmxlbmd0aDtjKyspc1tjXT0hMTtlbHNlIGZvcih2YXIgZj1yLmxlbmd0aDtmPG8ubGVuZ3RoO2YrKylzW2ZdPSEwO2Zvcih2YXIgaD1NYXRoLm1pbihvLmxlbmd0aCxyLmxlbmd0aCksZD0wO2Q8aDtkKyspdm9pZCAwPT09c1tkXSYmdChvW2RdKX19fX0odC5wWzBdKSxlKHQucCkpfSxLOmZ1bmN0aW9uKHQpe3JldHVybiA0PT09dC5pP24odCk6aSh0KX19KX1uLmQoZSx7ZGVmYXVsdDooKT0+cnQsZW5hYmxlRVM1OigpPT5XLGlzRHJhZnQ6KCk9PnIsaXNEcmFmdGFibGU6KCk9Pm8sb3JpZ2luYWw6KCk9PnN9KTt2YXIgRixCLEg9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sKCJ4IiksVT0idW5kZWZpbmVkIiE9dHlwZW9mIE1hcCx6PSJ1bmRlZmluZWQiIT10eXBlb2YgU2V0LHE9InVuZGVmaW5lZCIhPXR5cGVvZiBQcm94eSYmdm9pZCAwIT09UHJveHkucmV2b2NhYmxlJiYidW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QsRz1IP1N5bWJvbC5mb3IoImltbWVyLW5vdGhpbmciKTooKEY9e30pWyJpbW1lci1ub3RoaW5nIl09ITAsRiksSz1IP1N5bWJvbC5mb3IoImltbWVyLWRyYWZ0YWJsZSIpOiJfXyRpbW1lcl9kcmFmdGFibGUiLFg9SD9TeW1ib2wuZm9yKCJpbW1lci1zdGF0ZSIpOiJfXyRpbW1lcl9zdGF0ZSIsWT0oInVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5pdGVyYXRvciwKIiIrT2JqZWN0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciksJD0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3Qub3duS2V5cz9SZWZsZWN0Lm93bktleXM6dm9pZCAwIT09T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scz9mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModCkuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpfTpPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyxRPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzfHxmdW5jdGlvbih0KXt2YXIgZT17fTtyZXR1cm4gJCh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtlW25dPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKX0pKSxlfSxKPXt9LFo9e2dldDpmdW5jdGlvbih0LGUpe2lmKGU9PT1YKXJldHVybiB0O3ZhciBuPXYodCk7aWYoIWwobixlKSlyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3ZhciBpLHI9VChlLG4pO3JldHVybiByPyJ2YWx1ZSJpbiByP3IudmFsdWU6bnVsbD09PShpPXIuZ2V0KXx8dm9pZCAwPT09aT92b2lkIDA6aS5jYWxsKHQuayk6dm9pZCAwfSh0LG4sZSk7dmFyIGk9bltlXTtyZXR1cm4gdC5JfHwhbyhpKT9pOmk9PT1qKHQudCxlKT8oSSh0KSx0Lm9bZV09TCh0LkEuaCxpLHQpKTppfSxoYXM6ZnVuY3Rpb24odCxlKXtyZXR1cm4gZSBpbiB2KHQpfSxvd25LZXlzOmZ1bmN0aW9uKHQpe3JldHVybiBSZWZsZWN0Lm93bktleXModih0KSl9LHNldDpmdW5jdGlvbih0LGUsbil7dmFyIGk9VCh2KHQpLGUpO2lmKG51bGw9PWk/dm9pZCAwOmkuc2V0KXJldHVybiBpLnNldC5jYWxsKHQuayxuKSwhMDtpZighdC5QKXt2YXIgcj1qKHYodCksZSksbz1udWxsPT1yP3ZvaWQgMDpyW1hdO2lmKG8mJm8udD09PW4pcmV0dXJuIHQub1tlXT1uLHQuRFtlXT0hMSwhMDtpZihoKG4scikmJih2b2lkIDAhPT1ufHxsKHQudCxlKSkpcmV0dXJuITA7SSh0KSxOKHQpfXJldHVybiB0Lm9bZV09PT1uJiYibnVtYmVyIiE9dHlwZW9mIG4mJih2b2lkIDAhPT1ufHxlIGluIHQubyl8fCh0Lm9bZV09bix0LkRbZV09ITAsITApfSxkZWxldGVQcm9wZXJ0eTpmdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDAhPT1qKHQudCxlKXx8ZSBpbiB0LnQ/KHQuRFtlXT0hMSxJKHQpLE4odCkpOmRlbGV0ZSB0LkRbZV0sdC5vJiZkZWxldGUgdC5vW2VdLCEwfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I6ZnVuY3Rpb24odCxlKXt2YXIgbj12KHQpLGk9UmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKTtyZXR1cm4gaT97d3JpdGFibGU6ITAsY29uZmlndXJhYmxlOjEhPT10Lml8fCJsZW5ndGgiIT09ZSxlbnVtZXJhYmxlOmkuZW51bWVyYWJsZSx2YWx1ZTpuW2VdfTppfSxkZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbigpe2koMTEpfSxnZXRQcm90b3R5cGVPZjpmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQudCl9LHNldFByb3RvdHlwZU9mOmZ1bmN0aW9uKCl7aSgxMil9fSx0dD17fTthKFosKGZ1bmN0aW9uKHQsZSl7dHRbdF09ZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzWzBdPWFyZ3VtZW50c1swXVswXSxlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KSksdHQuZGVsZXRlUHJvcGVydHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gWi5kZWxldGVQcm9wZXJ0eS5jYWxsKHRoaXMsdFswXSxlKX0sdHQuc2V0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gWi5zZXQuY2FsbCh0aGlzLHRbMF0sZSxuLHRbMF0pfTt2YXIgZXQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe3ZhciBlPXRoaXM7dGhpcy5nPXEsdGhpcy5GPSEwLHRoaXMucHJvZHVjZT1mdW5jdGlvbih0LG4scil7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiBuKXt2YXIgcz1uO249dDt2YXIgYT1lO3JldHVybiBmdW5jdGlvbih0KXt2YXIgZT10aGlzO3ZvaWQgMD09PXQmJih0PXMpO2Zvcih2YXIgaT1hcmd1bWVudHMubGVuZ3RoLHI9QXJyYXkoaT4xP2ktMTowKSxvPTE7bzxpO28rKylyW28tMV09YXJndW1lbnRzW29dO3JldHVybiBhLnByb2R1Y2UodCwoZnVuY3Rpb24odCl7dmFyIGk7cmV0dXJuKGk9bikuY2FsbC5hcHBseShpLFtlLHRdLmNvbmNhdChyKSl9KSl9fXZhciB1O2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBuJiZpKDYpLHZvaWQgMCE9PXImJiJmdW5jdGlvbiIhPXR5cGVvZiByJiZpKDcpLG8odCkpe3ZhciBsPWsoZSksYz1MKGUsdCx2b2lkIDApLGY9ITA7dHJ5e3U9bihjKSxmPSExfWZpbmFsbHl7Zj9FKGwpOkMobCl9cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBQcm9taXNlJiZ1IGluc3RhbmNlb2YgUHJvbWlzZT91LnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiBPKGwsciksRCh0LGwpfSksKGZ1bmN0aW9uKHQpe3Rocm93IEUobCksdH0pKTooTyhsLHIpLEQodSxsKSl9aWYoIXR8fCJvYmplY3QiIT10eXBlb2YgdCl7aWYoKHU9bih0KSk9PT1HKXJldHVybjtyZXR1cm4gdm9pZCAwPT09dSYmKHU9dCksZS5GJiZtKHUsITApLHV9aSgyMSx0KX0sdGhpcy5wcm9kdWNlV2l0aFBhdGNoZXM9ZnVuY3Rpb24odCxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdD9mdW5jdGlvbihuKXtmb3IodmFyIGk9YXJndW1lbnRzLmxlbmd0aCxyPUFycmF5KGk+MT9pLTE6MCksbz0xO288aTtvKyspcltvLTFdPWFyZ3VtZW50c1tvXTtyZXR1cm4gZS5wcm9kdWNlV2l0aFBhdGNoZXMobiwoZnVuY3Rpb24oZSl7cmV0dXJuIHQuYXBwbHkodm9pZCAwLFtlXS5jb25jYXQocikpfSkpfTpbZS5wcm9kdWNlKHQsbiwoZnVuY3Rpb24odCxlKXtpPXQscj1lfSkpLGkscl07dmFyIGkscn0sImJvb2xlYW4iPT10eXBlb2YobnVsbD09dD92b2lkIDA6dC51c2VQcm94aWVzKSYmdGhpcy5zZXRVc2VQcm94aWVzKHQudXNlUHJveGllcyksImJvb2xlYW4iPT10eXBlb2YobnVsbD09dD92b2lkIDA6dC5hdXRvRnJlZXplKSYmdGhpcy5zZXRBdXRvRnJlZXplKHQuYXV0b0ZyZWV6ZSl9dmFyIGU9dC5wcm90b3R5cGU7cmV0dXJuIGUuY3JlYXRlRHJhZnQ9ZnVuY3Rpb24odCl7byh0KXx8aSg4KSxyKHQpJiYodD1WKHQpKTt2YXIgZT1rKHRoaXMpLG49TCh0aGlzLHQsdm9pZCAwKQo7cmV0dXJuIG5bWF0uQz0hMCxDKGUpLG59LGUuZmluaXNoRHJhZnQ9ZnVuY3Rpb24odCxlKXt2YXIgbj0odCYmdFtYXSkuQTtyZXR1cm4gTyhuLGUpLEQodm9pZCAwLG4pfSxlLnNldEF1dG9GcmVlemU9ZnVuY3Rpb24odCl7dGhpcy5GPXR9LGUuc2V0VXNlUHJveGllcz1mdW5jdGlvbih0KXt0JiYhcSYmaSgyMCksdGhpcy5nPXR9LGUuYXBwbHlQYXRjaGVzPWZ1bmN0aW9uKHQsZSl7dmFyIG47Zm9yKG49ZS5sZW5ndGgtMTtuPj0wO24tLSl7dmFyIGk9ZVtuXTtpZigwPT09aS5wYXRoLmxlbmd0aCYmInJlcGxhY2UiPT09aS5vcCl7dD1pLnZhbHVlO2JyZWFrfX1uPi0xJiYoZT1lLnNsaWNlKG4rMSkpO3ZhciBvPV8oIlBhdGNoZXMiKS4kO3JldHVybiByKHQpP28odCxlKTp0aGlzLnByb2R1Y2UodCwoZnVuY3Rpb24odCl7cmV0dXJuIG8odCxlKX0pKX0sdH0oKSxudD1uZXcgZXQsaXQ9bnQucHJvZHVjZTtudC5wcm9kdWNlV2l0aFBhdGNoZXMuYmluZChudCksbnQuc2V0QXV0b0ZyZWV6ZS5iaW5kKG50KSxudC5zZXRVc2VQcm94aWVzLmJpbmQobnQpLG50LmFwcGx5UGF0Y2hlcy5iaW5kKG50KSxudC5jcmVhdGVEcmFmdC5iaW5kKG50KSxudC5maW5pc2hEcmFmdC5iaW5kKG50KTtjb25zdCBydD1pdH0sODE1NzI4KHQsZSxuKXt2YXIgaSxyLG8scz1uKDQ4MjUwNCk7IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3I9W24oNDgyNTA0KSxuKDIxMDk3MSksbigxODYyMzQpLG4oMTY4NzAxKV0saT1mdW5jdGlvbih0KXt2YXIgZT0idWktZWZmZWN0cy0iLG49InVpLWVmZmVjdHMtc3R5bGUiLGk9InVpLWVmZmVjdHMtYW5pbWF0ZWQiO3JldHVybiB0LmVmZmVjdHM9e2VmZmVjdDp7fX0sZnVuY3Rpb24oKXt2YXIgZSxuPVsiYWRkIiwicmVtb3ZlIiwidG9nZ2xlIl0saT17Ym9yZGVyOjEsYm9yZGVyQm90dG9tOjEsYm9yZGVyQ29sb3I6MSxib3JkZXJMZWZ0OjEsYm9yZGVyUmlnaHQ6MSxib3JkZXJUb3A6MSxib3JkZXJXaWR0aDoxLG1hcmdpbjoxLHBhZGRpbmc6MX07ZnVuY3Rpb24gcih0KXtyZXR1cm4gdC5yZXBsYWNlKC8tKFtcZGEtel0pL2dpLChmdW5jdGlvbih0LGUpe3JldHVybiBlLnRvVXBwZXJDYXNlKCl9KSl9ZnVuY3Rpb24gbyh0KXt2YXIgZSxuLGk9dC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3P3Qub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHQsbnVsbCk6dC5jdXJyZW50U3R5bGUsbz17fTtpZihpJiZpLmxlbmd0aCYmaVswXSYmaVtpWzBdXSlmb3Iobj1pLmxlbmd0aDtuLS07KSJzdHJpbmciPT10eXBlb2YgaVtlPWlbbl1dJiYob1tyKGUpXT1pW2VdKTtlbHNlIGZvcihlIGluIGkpInN0cmluZyI9PXR5cGVvZiBpW2VdJiYob1tlXT1pW2VdKTtyZXR1cm4gb31mdW5jdGlvbiBhKGUsbil7dmFyIHIsbyxzPXt9O2ZvcihyIGluIG4pbz1uW3JdLGVbcl0hPT1vJiYoaVtyXXx8IXQuZnguc3RlcFtyXSYmaXNOYU4ocGFyc2VGbG9hdChvKSl8fChzW3JdPW8pKTtyZXR1cm4gc310LmVhY2goWyJib3JkZXJMZWZ0U3R5bGUiLCJib3JkZXJSaWdodFN0eWxlIiwiYm9yZGVyQm90dG9tU3R5bGUiLCJib3JkZXJUb3BTdHlsZSJdLChmdW5jdGlvbihlLG4pe3QuZnguc3RlcFtuXT1mdW5jdGlvbih0KXsoIm5vbmUiIT09dC5lbmQmJiF0LnNldEF0dHJ8fDE9PT10LnBvcyYmIXQuc2V0QXR0cikmJihzLnN0eWxlKHQuZWxlbSxuLHQuZW5kKSx0LnNldEF0dHI9ITApfX0pKSx0LmZuLmFkZEJhY2t8fCh0LmZuLmFkZEJhY2s9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PXQ/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIodCkpfSksdC5lZmZlY3RzLmFuaW1hdGVDbGFzcz1mdW5jdGlvbihlLGkscixzKXt2YXIgdT10LnNwZWVkKGkscixzKTtyZXR1cm4gdGhpcy5xdWV1ZSgoZnVuY3Rpb24oKXt2YXIgaSxyPXQodGhpcykscz1yLmF0dHIoImNsYXNzIil8fCIiLGw9dS5jaGlsZHJlbj9yLmZpbmQoIioiKS5hZGRCYWNrKCk6cjtsPWwubWFwKChmdW5jdGlvbigpe3JldHVybntlbDp0KHRoaXMpLHN0YXJ0Om8odGhpcyl9fSkpLChpPWZ1bmN0aW9uKCl7dC5lYWNoKG4sKGZ1bmN0aW9uKHQsbil7ZVtuXSYmcltuKyJDbGFzcyJdKGVbbl0pfSkpfSkoKSxsPWwubWFwKChmdW5jdGlvbigpe3JldHVybiB0aGlzLmVuZD1vKHRoaXMuZWxbMF0pLHRoaXMuZGlmZj1hKHRoaXMuc3RhcnQsdGhpcy5lbmQpLHRoaXN9KSksci5hdHRyKCJjbGFzcyIscyksbD1sLm1hcCgoZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49dC5EZWZlcnJlZCgpLGk9dC5leHRlbmQoe30sdSx7cXVldWU6ITEsY29tcGxldGU6ZnVuY3Rpb24oKXtuLnJlc29sdmUoZSl9fSk7cmV0dXJuIHRoaXMuZWwuYW5pbWF0ZSh0aGlzLmRpZmYsaSksbi5wcm9taXNlKCl9KSksdC53aGVuLmFwcGx5KHQsbC5nZXQoKSkuZG9uZSgoZnVuY3Rpb24oKXtpKCksdC5lYWNoKGFyZ3VtZW50cywoZnVuY3Rpb24oKXt2YXIgZT10aGlzLmVsO3QuZWFjaCh0aGlzLmRpZmYsKGZ1bmN0aW9uKHQpe2UuY3NzKHQsIiIpfSkpfSkpLHUuY29tcGxldGUuY2FsbChyWzBdKX0pKX0pKX0sdC5mbi5leHRlbmQoe2FkZENsYXNzOihlPXQuZm4uYWRkQ2xhc3MsZnVuY3Rpb24obixpLHIsbyl7cmV0dXJuIGk/dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDpufSxpLHIsbyk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24obixpLHIsbyl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg+MT90LmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwodGhpcyx7cmVtb3ZlOm59LGkscixvKTplLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KHQuZm4ucmVtb3ZlQ2xhc3MpLHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuLGkscixvLHMpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGl8fHZvaWQgMD09PWk/cj90LmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwodGhpcyxpP3thZGQ6bn06e3JlbW92ZTpufSxyLG8scyk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse3RvZ2dsZTpufSxpLHIsbykKfX0odC5mbi50b2dnbGVDbGFzcyksc3dpdGNoQ2xhc3M6ZnVuY3Rpb24oZSxuLGkscixvKXtyZXR1cm4gdC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDpuLHJlbW92ZTplfSxpLHIsbyl9fSl9KCksZnVuY3Rpb24oKXt2YXIgcjtmdW5jdGlvbiBvKGUsbixpLHIpe3JldHVybiB0LmlzUGxhaW5PYmplY3QoZSkmJihuPWUsZT1lLmVmZmVjdCksZT17ZWZmZWN0OmV9LG51bGw9PW4mJihuPXt9KSwiZnVuY3Rpb24iPT10eXBlb2YgbiYmKHI9bixpPW51bGwsbj17fSksKCJudW1iZXIiPT10eXBlb2Ygbnx8dC5meC5zcGVlZHNbbl0pJiYocj1pLGk9bixuPXt9KSwiZnVuY3Rpb24iPT10eXBlb2YgaSYmKHI9aSxpPW51bGwpLG4mJnQuZXh0ZW5kKGUsbiksaT1pfHxuLmR1cmF0aW9uLGUuZHVyYXRpb249dC5meC5vZmY/MDoibnVtYmVyIj09dHlwZW9mIGk/aTppIGluIHQuZnguc3BlZWRzP3QuZnguc3BlZWRzW2ldOnQuZnguc3BlZWRzLl9kZWZhdWx0LGUuY29tcGxldGU9cnx8bi5jb21wbGV0ZSxlfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIShlJiYibnVtYmVyIiE9dHlwZW9mIGUmJiF0LmZ4LnNwZWVkc1tlXSl8fCgic3RyaW5nIj09dHlwZW9mIGUmJiF0LmVmZmVjdHMuZWZmZWN0W2VdfHwoImZ1bmN0aW9uIj09dHlwZW9mIGV8fCJvYmplY3QiPT10eXBlb2YgZSYmIWUuZWZmZWN0KSl9ZnVuY3Rpb24gYSh0LGUpe3ZhciBuPWUub3V0ZXJXaWR0aCgpLGk9ZS5vdXRlckhlaWdodCgpLHI9L15yZWN0XCgoLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0byksP1xzKigtP1xkKlwuP1xkKnB4fC0/XGQrJXxhdXRvKSw/XHMqKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pLD9ccyooLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0bylcKSQvLmV4ZWModCl8fFsiIiwwLG4saSwwXTtyZXR1cm57dG9wOnBhcnNlRmxvYXQoclsxXSl8fDAscmlnaHQ6ImF1dG8iPT09clsyXT9uOnBhcnNlRmxvYXQoclsyXSksYm90dG9tOiJhdXRvIj09PXJbM10/aTpwYXJzZUZsb2F0KHJbM10pLGxlZnQ6cGFyc2VGbG9hdChyWzRdKXx8MH19dC5leHByJiZ0LmV4cHIucHNldWRvcyYmdC5leHByLnBzZXVkb3MuYW5pbWF0ZWQmJih0LmV4cHIucHNldWRvcy5hbmltYXRlZD0ocj10LmV4cHIucHNldWRvcy5hbmltYXRlZCxmdW5jdGlvbihlKXtyZXR1cm4hIXQoZSkuZGF0YShpKXx8cihlKX0pKSwhMSE9PXQudWlCYWNrQ29tcGF0JiZ0LmV4dGVuZCh0LmVmZmVjdHMse3NhdmU6ZnVuY3Rpb24odCxuKXtmb3IodmFyIGk9MCxyPW4ubGVuZ3RoO2k8cjtpKyspbnVsbCE9PW5baV0mJnQuZGF0YShlK25baV0sdFswXS5zdHlsZVtuW2ldXSl9LHJlc3RvcmU6ZnVuY3Rpb24odCxuKXtmb3IodmFyIGkscj0wLG89bi5sZW5ndGg7cjxvO3IrKyludWxsIT09bltyXSYmKGk9dC5kYXRhKGUrbltyXSksdC5jc3MobltyXSxpKSl9LHNldE1vZGU6ZnVuY3Rpb24odCxlKXtyZXR1cm4idG9nZ2xlIj09PWUmJihlPXQuaXMoIjpoaWRkZW4iKT8ic2hvdyI6ImhpZGUiKSxlfSxjcmVhdGVXcmFwcGVyOmZ1bmN0aW9uKGUpe2lmKGUucGFyZW50KCkuaXMoIi51aS1lZmZlY3RzLXdyYXBwZXIiKSlyZXR1cm4gZS5wYXJlbnQoKTt2YXIgbj17d2lkdGg6ZS5vdXRlcldpZHRoKCEwKSxoZWlnaHQ6ZS5vdXRlckhlaWdodCghMCksZmxvYXQ6ZS5jc3MoImZsb2F0Iil9LGk9dCgiPGRpdj48L2Rpdj4iKS5hZGRDbGFzcygidWktZWZmZWN0cy13cmFwcGVyIikuY3NzKHtmb250U2l6ZToiMTAwJSIsYmFja2dyb3VuZDoidHJhbnNwYXJlbnQiLGJvcmRlcjoibm9uZSIsbWFyZ2luOjAscGFkZGluZzowfSkscj17d2lkdGg6ZS53aWR0aCgpLGhlaWdodDplLmhlaWdodCgpfSxvPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dHJ5e28uaWR9Y2F0Y2godCl7bz1kb2N1bWVudC5ib2R5fXJldHVybiBlLndyYXAoaSksKGVbMF09PT1vfHx0LmNvbnRhaW5zKGVbMF0sbykpJiZ0KG8pLnRyaWdnZXIoImZvY3VzIiksaT1lLnBhcmVudCgpLCJzdGF0aWMiPT09ZS5jc3MoInBvc2l0aW9uIik/KGkuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUifSksZS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSJ9KSk6KHQuZXh0ZW5kKG4se3Bvc2l0aW9uOmUuY3NzKCJwb3NpdGlvbiIpLHpJbmRleDplLmNzcygiei1pbmRleCIpfSksdC5lYWNoKFsidG9wIiwibGVmdCIsImJvdHRvbSIsInJpZ2h0Il0sKGZ1bmN0aW9uKHQsaSl7bltpXT1lLmNzcyhpKSxpc05hTihwYXJzZUludChuW2ldLDEwKSkmJihuW2ldPSJhdXRvIil9KSksZS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIsdG9wOjAsbGVmdDowLHJpZ2h0OiJhdXRvIixib3R0b206ImF1dG8ifSkpLGUuY3NzKHIpLGkuY3NzKG4pLnNob3coKX0scmVtb3ZlV3JhcHBlcjpmdW5jdGlvbihlKXt2YXIgbj1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3JldHVybiBlLnBhcmVudCgpLmlzKCIudWktZWZmZWN0cy13cmFwcGVyIikmJihlLnBhcmVudCgpLnJlcGxhY2VXaXRoKGUpLChlWzBdPT09bnx8dC5jb250YWlucyhlWzBdLG4pKSYmdChuKS50cmlnZ2VyKCJmb2N1cyIpKSxlfX0pLHQuZXh0ZW5kKHQuZWZmZWN0cyx7dmVyc2lvbjoiMS4xMy4yIixkZWZpbmU6ZnVuY3Rpb24oZSxuLGkpe3JldHVybiBpfHwoaT1uLG49ImVmZmVjdCIpLHQuZWZmZWN0cy5lZmZlY3RbZV09aSx0LmVmZmVjdHMuZWZmZWN0W2VdLm1vZGU9bixpfSxzY2FsZWREaW1lbnNpb25zOmZ1bmN0aW9uKHQsZSxuKXtpZigwPT09ZSlyZXR1cm57aGVpZ2h0OjAsd2lkdGg6MCxvdXRlckhlaWdodDowLG91dGVyV2lkdGg6MH07dmFyIGk9Imhvcml6b250YWwiIT09bj8oZXx8MTAwKS8xMDA6MSxyPSJ2ZXJ0aWNhbCIhPT1uPyhlfHwxMDApLzEwMDoxO3JldHVybntoZWlnaHQ6dC5oZWlnaHQoKSpyLHdpZHRoOnQud2lkdGgoKSppLG91dGVySGVpZ2h0OnQub3V0ZXJIZWlnaHQoKSpyLG91dGVyV2lkdGg6dC5vdXRlcldpZHRoKCkqaX19LGNsaXBUb0JveDpmdW5jdGlvbih0KXtyZXR1cm57d2lkdGg6dC5jbGlwLnJpZ2h0LXQuY2xpcC5sZWZ0LGhlaWdodDp0LmNsaXAuYm90dG9tLXQuY2xpcC50b3AsbGVmdDp0LmNsaXAubGVmdCx0b3A6dC5jbGlwLnRvcH19LHVuc2hpZnQ6ZnVuY3Rpb24odCxlLG4pewp2YXIgaT10LnF1ZXVlKCk7ZT4xJiZpLnNwbGljZS5hcHBseShpLFsxLDBdLmNvbmNhdChpLnNwbGljZShlLG4pKSksdC5kZXF1ZXVlKCl9LHNhdmVTdHlsZTpmdW5jdGlvbih0KXt0LmRhdGEobix0WzBdLnN0eWxlLmNzc1RleHQpfSxyZXN0b3JlU3R5bGU6ZnVuY3Rpb24odCl7dFswXS5zdHlsZS5jc3NUZXh0PXQuZGF0YShuKXx8IiIsdC5yZW1vdmVEYXRhKG4pfSxtb2RlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5pcygiOmhpZGRlbiIpO3JldHVybiJ0b2dnbGUiPT09ZSYmKGU9bj8ic2hvdyI6ImhpZGUiKSwobj8iaGlkZSI9PT1lOiJzaG93Ij09PWUpJiYoZT0ibm9uZSIpLGV9LGdldEJhc2VsaW5lOmZ1bmN0aW9uKHQsZSl7dmFyIG4saTtzd2l0Y2godFswXSl7Y2FzZSJ0b3AiOm49MDticmVhaztjYXNlIm1pZGRsZSI6bj0uNTticmVhaztjYXNlImJvdHRvbSI6bj0xO2JyZWFrO2RlZmF1bHQ6bj10WzBdL2UuaGVpZ2h0fXN3aXRjaCh0WzFdKXtjYXNlImxlZnQiOmk9MDticmVhaztjYXNlImNlbnRlciI6aT0uNTticmVhaztjYXNlInJpZ2h0IjppPTE7YnJlYWs7ZGVmYXVsdDppPXRbMV0vZS53aWR0aH1yZXR1cm57eDppLHk6bn19LGNyZWF0ZVBsYWNlaG9sZGVyOmZ1bmN0aW9uKG4pe3ZhciBpLHI9bi5jc3MoInBvc2l0aW9uIiksbz1uLnBvc2l0aW9uKCk7cmV0dXJuIG4uY3NzKHttYXJnaW5Ub3A6bi5jc3MoIm1hcmdpblRvcCIpLG1hcmdpbkJvdHRvbTpuLmNzcygibWFyZ2luQm90dG9tIiksbWFyZ2luTGVmdDpuLmNzcygibWFyZ2luTGVmdCIpLG1hcmdpblJpZ2h0Om4uY3NzKCJtYXJnaW5SaWdodCIpfSkub3V0ZXJXaWR0aChuLm91dGVyV2lkdGgoKSkub3V0ZXJIZWlnaHQobi5vdXRlckhlaWdodCgpKSwvXihzdGF0aWN8cmVsYXRpdmUpLy50ZXN0KHIpJiYocj0iYWJzb2x1dGUiLGk9dCgiPCIrblswXS5ub2RlTmFtZSsiPiIpLmluc2VydEFmdGVyKG4pLmNzcyh7ZGlzcGxheTovXihpbmxpbmV8cnVieSkvLnRlc3Qobi5jc3MoImRpc3BsYXkiKSk/ImlubGluZS1ibG9jayI6ImJsb2NrIix2aXNpYmlsaXR5OiJoaWRkZW4iLG1hcmdpblRvcDpuLmNzcygibWFyZ2luVG9wIiksbWFyZ2luQm90dG9tOm4uY3NzKCJtYXJnaW5Cb3R0b20iKSxtYXJnaW5MZWZ0Om4uY3NzKCJtYXJnaW5MZWZ0IiksbWFyZ2luUmlnaHQ6bi5jc3MoIm1hcmdpblJpZ2h0IiksZmxvYXQ6bi5jc3MoImZsb2F0Iil9KS5vdXRlcldpZHRoKG4ub3V0ZXJXaWR0aCgpKS5vdXRlckhlaWdodChuLm91dGVySGVpZ2h0KCkpLmFkZENsYXNzKCJ1aS1lZmZlY3RzLXBsYWNlaG9sZGVyIiksbi5kYXRhKGUrInBsYWNlaG9sZGVyIixpKSksbi5jc3Moe3Bvc2l0aW9uOnIsbGVmdDpvLmxlZnQsdG9wOm8udG9wfSksaX0scmVtb3ZlUGxhY2Vob2xkZXI6ZnVuY3Rpb24odCl7dmFyIG49ZSsicGxhY2Vob2xkZXIiLGk9dC5kYXRhKG4pO2kmJihpLnJlbW92ZSgpLHQucmVtb3ZlRGF0YShuKSl9LGNsZWFuVXA6ZnVuY3Rpb24oZSl7dC5lZmZlY3RzLnJlc3RvcmVTdHlsZShlKSx0LmVmZmVjdHMucmVtb3ZlUGxhY2Vob2xkZXIoZSl9LHNldFRyYW5zaXRpb246ZnVuY3Rpb24oZSxuLGkscil7cmV0dXJuIHI9cnx8e30sdC5lYWNoKG4sKGZ1bmN0aW9uKHQsbil7dmFyIG89ZS5jc3NVbml0KG4pO29bMF0+MCYmKHJbbl09b1swXSppK29bMV0pfSkpLHJ9fSksdC5mbi5leHRlbmQoe2VmZmVjdDpmdW5jdGlvbigpe3ZhciBlPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpLG49dC5lZmZlY3RzLmVmZmVjdFtlLmVmZmVjdF0scj1uLm1vZGUscz1lLnF1ZXVlLGE9c3x8ImZ4Iix1PWUuY29tcGxldGUsbD1lLm1vZGUsYz1bXSxmPWZ1bmN0aW9uKGUpe3ZhciBuPXQodGhpcyksbz10LmVmZmVjdHMubW9kZShuLGwpfHxyO24uZGF0YShpLCEwKSxjLnB1c2gobyksciYmKCJzaG93Ij09PW98fG89PT1yJiYiaGlkZSI9PT1vKSYmbi5zaG93KCksciYmIm5vbmUiPT09b3x8dC5lZmZlY3RzLnNhdmVTdHlsZShuKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmZSgpfTtpZih0LmZ4Lm9mZnx8IW4pcmV0dXJuIGw/dGhpc1tsXShlLmR1cmF0aW9uLHUpOnRoaXMuZWFjaCgoZnVuY3Rpb24oKXt1JiZ1LmNhbGwodGhpcyl9KSk7ZnVuY3Rpb24gaChvKXt2YXIgcz10KHRoaXMpO2Z1bmN0aW9uIGEoKXtzLnJlbW92ZURhdGEoaSksdC5lZmZlY3RzLmNsZWFuVXAocyksImhpZGUiPT09ZS5tb2RlJiZzLmhpZGUoKSxmKCl9ZnVuY3Rpb24gZigpeyJmdW5jdGlvbiI9PXR5cGVvZiB1JiZ1LmNhbGwoc1swXSksImZ1bmN0aW9uIj09dHlwZW9mIG8mJm8oKX1lLm1vZGU9Yy5zaGlmdCgpLCExPT09dC51aUJhY2tDb21wYXR8fHI/Im5vbmUiPT09ZS5tb2RlPyhzW2xdKCksZigpKTpuLmNhbGwoc1swXSxlLGEpOihzLmlzKCI6aGlkZGVuIik/ImhpZGUiPT09bDoic2hvdyI9PT1sKT8oc1tsXSgpLGYoKSk6bi5jYWxsKHNbMF0sZSxmKX1yZXR1cm4hMT09PXM/dGhpcy5lYWNoKGYpLmVhY2goaCk6dGhpcy5xdWV1ZShhLGYpLnF1ZXVlKGEsaCl9LHNob3c6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKHMoZSkpcmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBuPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiBuLm1vZGU9InNob3ciLHRoaXMuZWZmZWN0LmNhbGwodGhpcyxuKX19KHQuZm4uc2hvdyksaGlkZTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYocyhlKSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIG49by5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIG4ubW9kZT0iaGlkZSIsdGhpcy5lZmZlY3QuY2FsbCh0aGlzLG4pfX0odC5mbi5oaWRlKSx0b2dnbGU6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKHMoZSl8fCJib29sZWFuIj09dHlwZW9mIGUpcmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBuPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiBuLm1vZGU9InRvZ2dsZSIsdGhpcy5lZmZlY3QuY2FsbCh0aGlzLG4pfX0odC5mbi50b2dnbGUpLGNzc1VuaXQ6ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5jc3MoZSksaT1bXQo7cmV0dXJuIHQuZWFjaChbImVtIiwicHgiLCIlIiwicHQiXSwoZnVuY3Rpb24odCxlKXtuLmluZGV4T2YoZSk+MCYmKGk9W3BhcnNlRmxvYXQobiksZV0pfSkpLGl9LGNzc0NsaXA6ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dGhpcy5jc3MoImNsaXAiLCJyZWN0KCIrdC50b3ArInB4ICIrdC5yaWdodCsicHggIit0LmJvdHRvbSsicHggIit0LmxlZnQrInB4KSIpOmEodGhpcy5jc3MoImNsaXAiKSx0aGlzKX0sdHJhbnNmZXI6ZnVuY3Rpb24oZSxuKXt2YXIgaT10KHRoaXMpLHI9dChlLnRvKSxvPSJmaXhlZCI9PT1yLmNzcygicG9zaXRpb24iKSxzPXQoImJvZHkiKSxhPW8/cy5zY3JvbGxUb3AoKTowLHU9bz9zLnNjcm9sbExlZnQoKTowLGw9ci5vZmZzZXQoKSxjPXt0b3A6bC50b3AtYSxsZWZ0OmwubGVmdC11LGhlaWdodDpyLmlubmVySGVpZ2h0KCksd2lkdGg6ci5pbm5lcldpZHRoKCl9LGY9aS5vZmZzZXQoKSxoPXQoIjxkaXYgY2xhc3M9J3VpLWVmZmVjdHMtdHJhbnNmZXInPjwvZGl2PiIpO2guYXBwZW5kVG8oImJvZHkiKS5hZGRDbGFzcyhlLmNsYXNzTmFtZSkuY3NzKHt0b3A6Zi50b3AtYSxsZWZ0OmYubGVmdC11LGhlaWdodDppLmlubmVySGVpZ2h0KCksd2lkdGg6aS5pbm5lcldpZHRoKCkscG9zaXRpb246bz8iZml4ZWQiOiJhYnNvbHV0ZSJ9KS5hbmltYXRlKGMsZS5kdXJhdGlvbixlLmVhc2luZywoZnVuY3Rpb24oKXtoLnJlbW92ZSgpLCJmdW5jdGlvbiI9PXR5cGVvZiBuJiZuKCl9KSl9fSksdC5meC5zdGVwLmNsaXA9ZnVuY3Rpb24oZSl7ZS5jbGlwSW5pdHx8KGUuc3RhcnQ9dChlLmVsZW0pLmNzc0NsaXAoKSwic3RyaW5nIj09dHlwZW9mIGUuZW5kJiYoZS5lbmQ9YShlLmVuZCxlLmVsZW0pKSxlLmNsaXBJbml0PSEwKSx0KGUuZWxlbSkuY3NzQ2xpcCh7dG9wOmUucG9zKihlLmVuZC50b3AtZS5zdGFydC50b3ApK2Uuc3RhcnQudG9wLHJpZ2h0OmUucG9zKihlLmVuZC5yaWdodC1lLnN0YXJ0LnJpZ2h0KStlLnN0YXJ0LnJpZ2h0LGJvdHRvbTplLnBvcyooZS5lbmQuYm90dG9tLWUuc3RhcnQuYm90dG9tKStlLnN0YXJ0LmJvdHRvbSxsZWZ0OmUucG9zKihlLmVuZC5sZWZ0LWUuc3RhcnQubGVmdCkrZS5zdGFydC5sZWZ0fSl9fSgpLGZ1bmN0aW9uKCl7dmFyIGU9e307dC5lYWNoKFsiUXVhZCIsIkN1YmljIiwiUXVhcnQiLCJRdWludCIsIkV4cG8iXSwoZnVuY3Rpb24odCxuKXtlW25dPWZ1bmN0aW9uKGUpe3JldHVybiBNYXRoLnBvdyhlLHQrMil9fSkpLHQuZXh0ZW5kKGUse1NpbmU6ZnVuY3Rpb24odCl7cmV0dXJuIDEtTWF0aC5jb3ModCpNYXRoLlBJLzIpfSxDaXJjOmZ1bmN0aW9uKHQpe3JldHVybiAxLU1hdGguc3FydCgxLXQqdCl9LEVsYXN0aWM6ZnVuY3Rpb24odCl7cmV0dXJuIDA9PT10fHwxPT09dD90Oi1NYXRoLnBvdygyLDgqKHQtMSkpKk1hdGguc2luKCg4MCoodC0xKS03LjUpKk1hdGguUEkvMTUpfSxCYWNrOmZ1bmN0aW9uKHQpe3JldHVybiB0KnQqKDMqdC0yKX0sQm91bmNlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuPTQ7dDwoKGU9TWF0aC5wb3coMiwtLW4pKS0xKS8xMTspO3JldHVybiAxL01hdGgucG93KDQsMy1uKS03LjU2MjUqTWF0aC5wb3coKDMqZS0yKS8yMi10LDIpfX0pLHQuZWFjaChlLChmdW5jdGlvbihlLG4pe3QuZWFzaW5nWyJlYXNlSW4iK2VdPW4sdC5lYXNpbmdbImVhc2VPdXQiK2VdPWZ1bmN0aW9uKHQpe3JldHVybiAxLW4oMS10KX0sdC5lYXNpbmdbImVhc2VJbk91dCIrZV09ZnVuY3Rpb24odCl7cmV0dXJuIHQ8LjU/bigyKnQpLzI6MS1uKC0yKnQrMikvMn19KSl9KCksdC5lZmZlY3RzfSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YgaT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDI5MzI3MSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aS5pZT0hIS9tc2llIFtcdy5dKy8uZXhlYyhuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkpfSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw0MDYwNzIodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpLG4oMTY4NzAxKV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7dC5leHByLnBzZXVkb3N8fCh0LmV4cHIucHNldWRvcz10LmV4cHJbIjoiXSk7dC51bmlxdWVTb3J0fHwodC51bmlxdWVTb3J0PXQudW5pcXVlKTtpZighdC5lc2NhcGVTZWxlY3Rvcil7dmFyIGU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15ceDgwLVx1RkZGRlx3LV0vZyxuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGU/IlwwIj09PXQ/Iu+/vSI6dC5zbGljZSgwLC0xKSsiXFwiK3QuY2hhckNvZGVBdCh0Lmxlbmd0aC0xKS50b1N0cmluZygxNikrIiAiOiJcXCIrdH07dC5lc2NhcGVTZWxlY3Rvcj1mdW5jdGlvbih0KXtyZXR1cm4odCsiIikucmVwbGFjZShlLG4pfX10LmZuLmV2ZW4mJnQuZm4ub2RkfHx0LmZuLmV4dGVuZCh7ZXZlbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIHQlMj09MH0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdCUyPT0xfSkpfX0pfSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSwyMTA5NzEodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpLG4oMTY4NzAxKV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7fSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw3MTY5OSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aS5rZXlDb2RlPXtCQUNLU1BBQ0U6OCxDT01NQToxODgsREVMRVRFOjQ2LERPV046NDAsRU5EOjM1LEVOVEVSOjEzLApFU0NBUEU6MjcsSE9NRTozNixMRUZUOjM3LFBBR0VfRE9XTjozNCxQQUdFX1VQOjMzLFBFUklPRDoxOTAsUklHSFQ6MzksU1BBQ0U6MzIsVEFCOjksVVA6Mzh9fSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSwxODYyMzQodCxlLG4pe3ZhciBpLHIsbztyPVtuKDQ4MjUwNCldLGk9ZnVuY3Rpb24odCxlKXt2YXIgbixpPSJiYWNrZ3JvdW5kQ29sb3IgYm9yZGVyQm90dG9tQ29sb3IgYm9yZGVyTGVmdENvbG9yIGJvcmRlclJpZ2h0Q29sb3IgYm9yZGVyVG9wQ29sb3IgY29sb3IgY29sdW1uUnVsZUNvbG9yIG91dGxpbmVDb2xvciB0ZXh0RGVjb3JhdGlvbkNvbG9yIHRleHRFbXBoYXNpc0NvbG9yIixyPXt9LG89ci50b1N0cmluZyxzPS9eKFtcLStdKT1ccyooXGQrXC4/XGQqKS8sYT1be3JlOi9yZ2JhP1woXHMqKFxkezEsM30pXHMqLFxzKihcZHsxLDN9KVxzKixccyooXGR7MSwzfSlccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuW3RbMV0sdFsyXSx0WzNdLHRbNF1dfX0se3JlOi9yZ2JhP1woXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuWzIuNTUqdFsxXSwyLjU1KnRbMl0sMi41NSp0WzNdLHRbNF1dfX0se3JlOi8jKFthLWYwLTldezJ9KShbYS1mMC05XXsyfSkoW2EtZjAtOV17Mn0pKFthLWYwLTldezJ9KT8vLHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVybltwYXJzZUludCh0WzFdLDE2KSxwYXJzZUludCh0WzJdLDE2KSxwYXJzZUludCh0WzNdLDE2KSx0WzRdPyhwYXJzZUludCh0WzRdLDE2KS8yNTUpLnRvRml4ZWQoMik6MV19fSx7cmU6LyMoW2EtZjAtOV0pKFthLWYwLTldKShbYS1mMC05XSkoW2EtZjAtOV0pPy8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuW3BhcnNlSW50KHRbMV0rdFsxXSwxNikscGFyc2VJbnQodFsyXSt0WzJdLDE2KSxwYXJzZUludCh0WzNdK3RbM10sMTYpLHRbNF0/KHBhcnNlSW50KHRbNF0rdFs0XSwxNikvMjU1KS50b0ZpeGVkKDIpOjFdfX0se3JlOi9oc2xhP1woXHMqKFxkKyg/OlwuXGQrKT8pXHMqLFxzKihcZCsoPzpcLlxkKyk/KVwlXHMqLFxzKihcZCsoPzpcLlxkKyk/KVwlXHMqKD86LFxzKihcZD8oPzpcLlxkKyk/KVxzKik/XCkvLHNwYWNlOiJoc2xhIixwYXJzZTpmdW5jdGlvbih0KXtyZXR1cm5bdFsxXSx0WzJdLzEwMCx0WzNdLzEwMCx0WzRdXX19XSx1PXQuQ29sb3I9ZnVuY3Rpb24oZSxuLGkscil7cmV0dXJuIG5ldyB0LkNvbG9yLmZuLnBhcnNlKGUsbixpLHIpfSxsPXtyZ2JhOntwcm9wczp7cmVkOntpZHg6MCx0eXBlOiJieXRlIn0sZ3JlZW46e2lkeDoxLHR5cGU6ImJ5dGUifSxibHVlOntpZHg6Mix0eXBlOiJieXRlIn19fSxoc2xhOntwcm9wczp7aHVlOntpZHg6MCx0eXBlOiJkZWdyZWVzIn0sc2F0dXJhdGlvbjp7aWR4OjEsdHlwZToicGVyY2VudCJ9LGxpZ2h0bmVzczp7aWR4OjIsdHlwZToicGVyY2VudCJ9fX19LGM9e2J5dGU6e2Zsb29yOiEwLG1heDoyNTV9LHBlcmNlbnQ6e21heDoxfSxkZWdyZWVzOnttb2Q6MzYwLGZsb29yOiEwfX0sZj11LnN1cHBvcnQ9e30saD10KCI8cD4iKVswXSxkPXQuZWFjaDtmdW5jdGlvbiBwKHQpe3JldHVybiBudWxsPT10P3QrIiI6Im9iamVjdCI9PXR5cGVvZiB0P3Jbby5jYWxsKHQpXXx8Im9iamVjdCI6dHlwZW9mIHR9ZnVuY3Rpb24gdih0LGUsbil7dmFyIGk9Y1tlLnR5cGVdfHx7fTtyZXR1cm4gbnVsbD09dD9ufHwhZS5kZWY/bnVsbDplLmRlZjoodD1pLmZsb29yP35+dDpwYXJzZUZsb2F0KHQpLGlzTmFOKHQpP2UuZGVmOmkubW9kPyh0K2kubW9kKSVpLm1vZDpNYXRoLm1pbihpLm1heCxNYXRoLm1heCgwLHQpKSl9ZnVuY3Rpb24gZyhlKXt2YXIgaT11KCkscj1pLl9yZ2JhPVtdO3JldHVybiBlPWUudG9Mb3dlckNhc2UoKSxkKGEsKGZ1bmN0aW9uKHQsbil7dmFyIG8scz1uLnJlLmV4ZWMoZSksYT1zJiZuLnBhcnNlKHMpLHU9bi5zcGFjZXx8InJnYmEiO2lmKGEpcmV0dXJuIG89aVt1XShhKSxpW2xbdV0uY2FjaGVdPW9bbFt1XS5jYWNoZV0scj1pLl9yZ2JhPW8uX3JnYmEsITF9KSksci5sZW5ndGg/KCIwLDAsMCwwIj09PXIuam9pbigpJiZ0LmV4dGVuZChyLG4udHJhbnNwYXJlbnQpLGkpOm5bZV19ZnVuY3Rpb24gbSh0LGUsbil7cmV0dXJuIDYqKG49KG4rMSklMSk8MT90KyhlLXQpKm4qNjoyKm48MT9lOjMqbjwyP3QrKGUtdCkqKDIvMy1uKSo2OnR9aC5zdHlsZS5jc3NUZXh0PSJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMSwxLDEsLjUpIixmLnJnYmE9aC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IuaW5kZXhPZigicmdiYSIpPi0xLGQobCwoZnVuY3Rpb24odCxlKXtlLmNhY2hlPSJfIit0LGUucHJvcHMuYWxwaGE9e2lkeDozLHR5cGU6InBlcmNlbnQiLGRlZjoxfX0pKSx0LmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLChmdW5jdGlvbih0LGUpe3JbIltvYmplY3QgIitlKyJdIl09ZS50b0xvd2VyQ2FzZSgpfSkpLHUuZm49dC5leHRlbmQodS5wcm90b3R5cGUse3BhcnNlOmZ1bmN0aW9uKGkscixvLHMpe2lmKGk9PT1lKXJldHVybiB0aGlzLl9yZ2JhPVtudWxsLG51bGwsbnVsbCxudWxsXSx0aGlzOyhpLmpxdWVyeXx8aS5ub2RlVHlwZSkmJihpPXQoaSkuY3NzKHIpLHI9ZSk7dmFyIGE9dGhpcyxjPXAoaSksZj10aGlzLl9yZ2JhPVtdO3JldHVybiByIT09ZSYmKGk9W2kscixvLHNdLGM9ImFycmF5IiksInN0cmluZyI9PT1jP3RoaXMucGFyc2UoZyhpKXx8bi5fZGVmYXVsdCk6ImFycmF5Ij09PWM/KGQobC5yZ2JhLnByb3BzLChmdW5jdGlvbih0LGUpe2ZbZS5pZHhdPXYoaVtlLmlkeF0sZSl9KSksdGhpcyk6Im9iamVjdCI9PT1jPyhkKGwsaSBpbnN0YW5jZW9mIHU/ZnVuY3Rpb24odCxlKXtpW2UuY2FjaGVdJiYoYVtlLmNhY2hlXT1pW2UuY2FjaGVdLnNsaWNlKCkpfTpmdW5jdGlvbihlLG4pe3ZhciByPW4uY2FjaGUKO2Qobi5wcm9wcywoZnVuY3Rpb24odCxlKXtpZighYVtyXSYmbi50byl7aWYoImFscGhhIj09PXR8fG51bGw9PWlbdF0pcmV0dXJuO2Fbcl09bi50byhhLl9yZ2JhKX1hW3JdW2UuaWR4XT12KGlbdF0sZSwhMCl9KSksYVtyXSYmdC5pbkFycmF5KG51bGwsYVtyXS5zbGljZSgwLDMpKTwwJiYobnVsbD09YVtyXVszXSYmKGFbcl1bM109MSksbi5mcm9tJiYoYS5fcmdiYT1uLmZyb20oYVtyXSkpKX0pLHRoaXMpOnZvaWQgMH0saXM6ZnVuY3Rpb24odCl7dmFyIGU9dSh0KSxuPSEwLGk9dGhpcztyZXR1cm4gZChsLChmdW5jdGlvbih0LHIpe3ZhciBvLHM9ZVtyLmNhY2hlXTtyZXR1cm4gcyYmKG89aVtyLmNhY2hlXXx8ci50byYmci50byhpLl9yZ2JhKXx8W10sZChyLnByb3BzLChmdW5jdGlvbih0LGUpe2lmKG51bGwhPXNbZS5pZHhdKXJldHVybiBuPXNbZS5pZHhdPT09b1tlLmlkeF19KSkpLG59KSksbn0sX3NwYWNlOmZ1bmN0aW9uKCl7dmFyIHQ9W10sZT10aGlzO3JldHVybiBkKGwsKGZ1bmN0aW9uKG4saSl7ZVtpLmNhY2hlXSYmdC5wdXNoKG4pfSkpLHQucG9wKCl9LHRyYW5zaXRpb246ZnVuY3Rpb24odCxlKXt2YXIgbj11KHQpLGk9bi5fc3BhY2UoKSxyPWxbaV0sbz0wPT09dGhpcy5hbHBoYSgpP3UoInRyYW5zcGFyZW50Iik6dGhpcyxzPW9bci5jYWNoZV18fHIudG8oby5fcmdiYSksYT1zLnNsaWNlKCk7cmV0dXJuIG49bltyLmNhY2hlXSxkKHIucHJvcHMsKGZ1bmN0aW9uKHQsaSl7dmFyIHI9aS5pZHgsbz1zW3JdLHU9bltyXSxsPWNbaS50eXBlXXx8e307bnVsbCE9PXUmJihudWxsPT09bz9hW3JdPXU6KGwubW9kJiYodS1vPmwubW9kLzI/bys9bC5tb2Q6by11PmwubW9kLzImJihvLT1sLm1vZCkpLGFbcl09digodS1vKSplK28saSkpKX0pKSx0aGlzW2ldKGEpfSxibGVuZDpmdW5jdGlvbihlKXtpZigxPT09dGhpcy5fcmdiYVszXSlyZXR1cm4gdGhpczt2YXIgbj10aGlzLl9yZ2JhLnNsaWNlKCksaT1uLnBvcCgpLHI9dShlKS5fcmdiYTtyZXR1cm4gdSh0Lm1hcChuLChmdW5jdGlvbih0LGUpe3JldHVybigxLWkpKnJbZV0raSp0fSkpKX0sdG9SZ2JhU3RyaW5nOmZ1bmN0aW9uKCl7dmFyIGU9InJnYmEoIixuPXQubWFwKHRoaXMuX3JnYmEsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGwhPXQ/dDplPjI/MTowfSkpO3JldHVybiAxPT09blszXSYmKG4ucG9wKCksZT0icmdiKCIpLGUrbi5qb2luKCkrIikifSx0b0hzbGFTdHJpbmc6ZnVuY3Rpb24oKXt2YXIgZT0iaHNsYSgiLG49dC5tYXAodGhpcy5oc2xhKCksKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQmJih0PWU+Mj8xOjApLGUmJmU8MyYmKHQ9TWF0aC5yb3VuZCgxMDAqdCkrIiUiKSx0fSkpO3JldHVybiAxPT09blszXSYmKG4ucG9wKCksZT0iaHNsKCIpLGUrbi5qb2luKCkrIikifSx0b0hleFN0cmluZzpmdW5jdGlvbihlKXt2YXIgbj10aGlzLl9yZ2JhLnNsaWNlKCksaT1uLnBvcCgpO3JldHVybiBlJiZuLnB1c2gofn4oMjU1KmkpKSwiIyIrdC5tYXAobiwoZnVuY3Rpb24odCl7cmV0dXJuIDE9PT0odD0odHx8MCkudG9TdHJpbmcoMTYpKS5sZW5ndGg/IjAiK3Q6dH0pKS5qb2luKCIiKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMD09PXRoaXMuX3JnYmFbM10/InRyYW5zcGFyZW50Ijp0aGlzLnRvUmdiYVN0cmluZygpfX0pLHUuZm4ucGFyc2UucHJvdG90eXBlPXUuZm4sbC5oc2xhLnRvPWZ1bmN0aW9uKHQpe2lmKG51bGw9PXRbMF18fG51bGw9PXRbMV18fG51bGw9PXRbMl0pcmV0dXJuW251bGwsbnVsbCxudWxsLHRbM11dO3ZhciBlLG4saT10WzBdLzI1NSxyPXRbMV0vMjU1LG89dFsyXS8yNTUscz10WzNdLGE9TWF0aC5tYXgoaSxyLG8pLHU9TWF0aC5taW4oaSxyLG8pLGw9YS11LGM9YSt1LGY9LjUqYztyZXR1cm4gZT11PT09YT8wOmk9PT1hPzYwKihyLW8pL2wrMzYwOnI9PT1hPzYwKihvLWkpL2wrMTIwOjYwKihpLXIpL2wrMjQwLG49MD09PWw/MDpmPD0uNT9sL2M6bC8oMi1jKSxbTWF0aC5yb3VuZChlKSUzNjAsbixmLHM/PzFdfSxsLmhzbGEuZnJvbT1mdW5jdGlvbih0KXtpZihudWxsPT10WzBdfHxudWxsPT10WzFdfHxudWxsPT10WzJdKXJldHVybltudWxsLG51bGwsbnVsbCx0WzNdXTt2YXIgZT10WzBdLzM2MCxuPXRbMV0saT10WzJdLHI9dFszXSxvPWk8PS41P2kqKDErbik6aStuLWkqbixzPTIqaS1vO3JldHVybltNYXRoLnJvdW5kKDI1NSptKHMsbyxlKzEvMykpLE1hdGgucm91bmQoMjU1Km0ocyxvLGUpKSxNYXRoLnJvdW5kKDI1NSptKHMsbyxlLTEvMykpLHJdfSxkKGwsKGZ1bmN0aW9uKHQsbil7dmFyIGk9bi5wcm9wcyxyPW4uY2FjaGUsbz1uLnRvLGE9bi5mcm9tO3UuZm5bdF09ZnVuY3Rpb24odCl7aWYobyYmIXRoaXNbcl0mJih0aGlzW3JdPW8odGhpcy5fcmdiYSkpLHQ9PT1lKXJldHVybiB0aGlzW3JdLnNsaWNlKCk7dmFyIG4scz1wKHQpLGw9ImFycmF5Ij09PXN8fCJvYmplY3QiPT09cz90OmFyZ3VtZW50cyxjPXRoaXNbcl0uc2xpY2UoKTtyZXR1cm4gZChpLChmdW5jdGlvbih0LGUpe3ZhciBuPWxbIm9iamVjdCI9PT1zP3Q6ZS5pZHhdO251bGw9PW4mJihuPWNbZS5pZHhdKSxjW2UuaWR4XT12KG4sZSl9KSksYT8oKG49dShhKGMpKSlbcl09YyxuKTp1KGMpfSxkKGksKGZ1bmN0aW9uKGUsbil7dS5mbltlXXx8KHUuZm5bZV09ZnVuY3Rpb24oaSl7dmFyIHIsbyxhLHUsbD1wKGkpO3JldHVybiBvPShyPXRoaXNbdT0iYWxwaGEiPT09ZT90aGlzLl9oc2xhPyJoc2xhIjoicmdiYSI6dF0oKSlbbi5pZHhdLCJ1bmRlZmluZWQiPT09bD9vOigiZnVuY3Rpb24iPT09bCYmKGw9cChpPWkuY2FsbCh0aGlzLG8pKSksbnVsbD09aSYmbi5lbXB0eT90aGlzOigic3RyaW5nIj09PWwmJihhPXMuZXhlYyhpKSkmJihpPW8rcGFyc2VGbG9hdChhWzJdKSooIisiPT09YVsxXT8xOi0xKSkscltuLmlkeF09aSx0aGlzW3VdKHIpKSl9KX0pKX0pKSx1Lmhvb2s9ZnVuY3Rpb24oZSl7dmFyIG49ZS5zcGxpdCgiICIpO2QobiwoZnVuY3Rpb24oZSxuKXt0LmNzc0hvb2tzW25dPXtzZXQ6ZnVuY3Rpb24oZSxpKXt2YXIgcixvLHM9IiI7aWYoInRyYW5zcGFyZW50IiE9PWkmJigic3RyaW5nIiE9PXAoaSl8fChyPWcoaSkpKSl7CmlmKGk9dShyfHxpKSwhZi5yZ2JhJiYxIT09aS5fcmdiYVszXSl7Zm9yKG89ImJhY2tncm91bmRDb2xvciI9PT1uP2UucGFyZW50Tm9kZTplOygiIj09PXN8fCJ0cmFuc3BhcmVudCI9PT1zKSYmbyYmby5zdHlsZTspdHJ5e3M9dC5jc3MobywiYmFja2dyb3VuZENvbG9yIiksbz1vLnBhcmVudE5vZGV9Y2F0Y2godCl7fWk9aS5ibGVuZChzJiYidHJhbnNwYXJlbnQiIT09cz9zOiJfZGVmYXVsdCIpfWk9aS50b1JnYmFTdHJpbmcoKX10cnl7ZS5zdHlsZVtuXT1pfWNhdGNoKHQpe319fSx0LmZ4LnN0ZXBbbl09ZnVuY3Rpb24oZSl7ZS5jb2xvckluaXR8fChlLnN0YXJ0PXUoZS5lbGVtLG4pLGUuZW5kPXUoZS5lbmQpLGUuY29sb3JJbml0PSEwKSx0LmNzc0hvb2tzW25dLnNldChlLmVsZW0sZS5zdGFydC50cmFuc2l0aW9uKGUuZW5kLGUucG9zKSl9fSkpfSx1Lmhvb2soaSksdC5jc3NIb29rcy5ib3JkZXJDb2xvcj17ZXhwYW5kOmZ1bmN0aW9uKHQpe3ZhciBlPXt9O3JldHVybiBkKFsiVG9wIiwiUmlnaHQiLCJCb3R0b20iLCJMZWZ0Il0sKGZ1bmN0aW9uKG4saSl7ZVsiYm9yZGVyIitpKyJDb2xvciJdPXR9KSksZX19LG49dC5Db2xvci5uYW1lcz17YXF1YToiIzAwZmZmZiIsYmxhY2s6IiMwMDAwMDAiLGJsdWU6IiMwMDAwZmYiLGZ1Y2hzaWE6IiNmZjAwZmYiLGdyYXk6IiM4MDgwODAiLGdyZWVuOiIjMDA4MDAwIixsaW1lOiIjMDBmZjAwIixtYXJvb246IiM4MDAwMDAiLG5hdnk6IiMwMDAwODAiLG9saXZlOiIjODA4MDAwIixwdXJwbGU6IiM4MDAwODAiLHJlZDoiI2ZmMDAwMCIsc2lsdmVyOiIjYzBjMGMwIix0ZWFsOiIjMDA4MDgwIix3aGl0ZToiI2ZmZmZmZiIseWVsbG93OiIjZmZmZjAwIix0cmFuc3BhcmVudDpbbnVsbCxudWxsLG51bGwsMF0sX2RlZmF1bHQ6IiNmZmZmZmYifX0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mIGk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSwxNjg3MDEodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aT10LnVpfHx7fSx0LnVpLnZlcnNpb249IjEuMTMuMiJ9KT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDY2NjM0OSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSxpPWZ1bmN0aW9uKHQpe3ZhciBlPTAsbj1BcnJheS5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksaT1BcnJheS5wcm90b3R5cGUuc2xpY2U7cmV0dXJuIHQuY2xlYW5EYXRhPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuKXt2YXIgaSxyLG87Zm9yKG89MDtudWxsIT0ocj1uW29dKTtvKyspKGk9dC5fZGF0YShyLCJldmVudHMiKSkmJmkucmVtb3ZlJiZ0KHIpLnRyaWdnZXJIYW5kbGVyKCJyZW1vdmUiKTtlKG4pfX0odC5jbGVhbkRhdGEpLHQud2lkZ2V0PWZ1bmN0aW9uKGUsbixpKXt2YXIgcixvLHMsYT17fSx1PWUuc3BsaXQoIi4iKVswXSxsPXUrIi0iKyhlPWUuc3BsaXQoIi4iKVsxXSk7cmV0dXJuIGl8fChpPW4sbj10LldpZGdldCksQXJyYXkuaXNBcnJheShpKSYmKGk9dC5leHRlbmQuYXBwbHkobnVsbCxbe31dLmNvbmNhdChpKSkpLHQuZXhwci5wc2V1ZG9zW2wudG9Mb3dlckNhc2UoKV09ZnVuY3Rpb24oZSl7cmV0dXJuISF0LmRhdGEoZSxsKX0sdFt1XT10W3VdfHx7fSxyPXRbdV1bZV0sbz10W3VdW2VdPWZ1bmN0aW9uKHQsZSl7aWYoIXRoaXN8fCF0aGlzLl9jcmVhdGVXaWRnZXQpcmV0dXJuIG5ldyBvKHQsZSk7YXJndW1lbnRzLmxlbmd0aCYmdGhpcy5fY3JlYXRlV2lkZ2V0KHQsZSl9LHQuZXh0ZW5kKG8scix7dmVyc2lvbjppLnZlcnNpb24sX3Byb3RvOnQuZXh0ZW5kKHt9LGkpLF9jaGlsZENvbnN0cnVjdG9yczpbXX0pLChzPW5ldyBuKS5vcHRpb25zPXQud2lkZ2V0LmV4dGVuZCh7fSxzLm9wdGlvbnMpLHQuZWFjaChpLChmdW5jdGlvbih0LGUpe2FbdF09ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKCl7cmV0dXJuIG4ucHJvdG90eXBlW3RdLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiByKGUpe3JldHVybiBuLnByb3RvdHlwZVt0XS5hcHBseSh0aGlzLGUpfXJldHVybiBmdW5jdGlvbigpe3ZhciB0LG49dGhpcy5fc3VwZXIsbz10aGlzLl9zdXBlckFwcGx5O3JldHVybiB0aGlzLl9zdXBlcj1pLHRoaXMuX3N1cGVyQXBwbHk9cix0PWUuYXBwbHkodGhpcyxhcmd1bWVudHMpLHRoaXMuX3N1cGVyPW4sdGhpcy5fc3VwZXJBcHBseT1vLHR9fSgpOmV9KSksby5wcm90b3R5cGU9dC53aWRnZXQuZXh0ZW5kKHMse3dpZGdldEV2ZW50UHJlZml4OnImJnMud2lkZ2V0RXZlbnRQcmVmaXh8fGV9LGEse2NvbnN0cnVjdG9yOm8sbmFtZXNwYWNlOnUsd2lkZ2V0TmFtZTplLHdpZGdldEZ1bGxOYW1lOmx9KSxyPyh0LmVhY2goci5fY2hpbGRDb25zdHJ1Y3RvcnMsKGZ1bmN0aW9uKGUsbil7dmFyIGk9bi5wcm90b3R5cGU7dC53aWRnZXQoaS5uYW1lc3BhY2UrIi4iK2kud2lkZ2V0TmFtZSxvLG4uX3Byb3RvKX0pKSxkZWxldGUgci5fY2hpbGRDb25zdHJ1Y3RvcnMpOm4uX2NoaWxkQ29uc3RydWN0b3JzLnB1c2gobyksdC53aWRnZXQuYnJpZGdlKGUsbyksb30sdC53aWRnZXQuZXh0ZW5kPWZ1bmN0aW9uKGUpe2Zvcih2YXIgcixvLHM9aS5jYWxsKGFyZ3VtZW50cywxKSxhPTAsdT1zLmxlbmd0aDthPHU7YSsrKWZvcihyIGluIHNbYV0pbz1zW2FdW3JdLG4uY2FsbChzW2FdLHIpJiZ2b2lkIDAhPT1vJiYodC5pc1BsYWluT2JqZWN0KG8pP2Vbcl09dC5pc1BsYWluT2JqZWN0KGVbcl0pP3Qud2lkZ2V0LmV4dGVuZCh7fSxlW3JdLG8pOnQud2lkZ2V0LmV4dGVuZCh7fSxvKTplW3JdPW8pO3JldHVybiBlfSx0LndpZGdldC5icmlkZ2U9ZnVuY3Rpb24oZSxuKXt2YXIgcj1uLnByb3RvdHlwZS53aWRnZXRGdWxsTmFtZXx8ZTt0LmZuW2VdPWZ1bmN0aW9uKG8pe3ZhciBzPSJzdHJpbmciPT10eXBlb2YgbyxhPWkuY2FsbChhcmd1bWVudHMsMSksdT10aGlzCjtyZXR1cm4gcz90aGlzLmxlbmd0aHx8Imluc3RhbmNlIiE9PW8/dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBuLGk9dC5kYXRhKHRoaXMscik7cmV0dXJuImluc3RhbmNlIj09PW8/KHU9aSwhMSk6aT8iZnVuY3Rpb24iIT10eXBlb2YgaVtvXXx8Il8iPT09by5jaGFyQXQoMCk/dC5lcnJvcigibm8gc3VjaCBtZXRob2QgJyIrbysiJyBmb3IgIitlKyIgd2lkZ2V0IGluc3RhbmNlIik6KG49aVtvXS5hcHBseShpLGEpKSE9PWkmJnZvaWQgMCE9PW4/KHU9biYmbi5qcXVlcnk/dS5wdXNoU3RhY2sobi5nZXQoKSk6biwhMSk6dm9pZCAwOnQuZXJyb3IoImNhbm5vdCBjYWxsIG1ldGhvZHMgb24gIitlKyIgcHJpb3IgdG8gaW5pdGlhbGl6YXRpb247IGF0dGVtcHRlZCB0byBjYWxsIG1ldGhvZCAnIitvKyInIil9KSk6dT12b2lkIDA6KGEubGVuZ3RoJiYobz10LndpZGdldC5leHRlbmQuYXBwbHkobnVsbCxbb10uY29uY2F0KGEpKSksdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBlPXQuZGF0YSh0aGlzLHIpO2U/KGUub3B0aW9uKG98fHt9KSxlLl9pbml0JiZlLl9pbml0KCkpOnQuZGF0YSh0aGlzLHIsbmV3IG4obyx0aGlzKSl9KSkpLHV9fSx0LldpZGdldD1mdW5jdGlvbigpe30sdC5XaWRnZXQuX2NoaWxkQ29uc3RydWN0b3JzPVtdLHQuV2lkZ2V0LnByb3RvdHlwZT17d2lkZ2V0TmFtZToid2lkZ2V0Iix3aWRnZXRFdmVudFByZWZpeDoiIixkZWZhdWx0RWxlbWVudDoiPGRpdj4iLG9wdGlvbnM6e2NsYXNzZXM6e30sZGlzYWJsZWQ6ITEsY3JlYXRlOm51bGx9LF9jcmVhdGVXaWRnZXQ6ZnVuY3Rpb24obixpKXtpPXQoaXx8dGhpcy5kZWZhdWx0RWxlbWVudHx8dGhpcylbMF0sdGhpcy5lbGVtZW50PXQoaSksdGhpcy51dWlkPWUrKyx0aGlzLmV2ZW50TmFtZXNwYWNlPSIuIit0aGlzLndpZGdldE5hbWUrdGhpcy51dWlkLHRoaXMuYmluZGluZ3M9dCgpLHRoaXMuaG92ZXJhYmxlPXQoKSx0aGlzLmZvY3VzYWJsZT10KCksdGhpcy5jbGFzc2VzRWxlbWVudExvb2t1cD17fSxpIT09dGhpcyYmKHQuZGF0YShpLHRoaXMud2lkZ2V0RnVsbE5hbWUsdGhpcyksdGhpcy5fb24oITAsdGhpcy5lbGVtZW50LHtyZW1vdmU6ZnVuY3Rpb24odCl7dC50YXJnZXQ9PT1pJiZ0aGlzLmRlc3Ryb3koKX19KSx0aGlzLmRvY3VtZW50PXQoaS5zdHlsZT9pLm93bmVyRG9jdW1lbnQ6aS5kb2N1bWVudHx8aSksdGhpcy53aW5kb3c9dCh0aGlzLmRvY3VtZW50WzBdLmRlZmF1bHRWaWV3fHx0aGlzLmRvY3VtZW50WzBdLnBhcmVudFdpbmRvdykpLHRoaXMub3B0aW9ucz10LndpZGdldC5leHRlbmQoe30sdGhpcy5vcHRpb25zLHRoaXMuX2dldENyZWF0ZU9wdGlvbnMoKSxuKSx0aGlzLl9jcmVhdGUoKSx0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJnRoaXMuX3NldE9wdGlvbkRpc2FibGVkKHRoaXMub3B0aW9ucy5kaXNhYmxlZCksdGhpcy5fdHJpZ2dlcigiY3JlYXRlIixudWxsLHRoaXMuX2dldENyZWF0ZUV2ZW50RGF0YSgpKSx0aGlzLl9pbml0KCl9LF9nZXRDcmVhdGVPcHRpb25zOmZ1bmN0aW9uKCl7cmV0dXJue319LF9nZXRDcmVhdGVFdmVudERhdGE6dC5ub29wLF9jcmVhdGU6dC5ub29wLF9pbml0OnQubm9vcCxkZXN0cm95OmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9kZXN0cm95KCksdC5lYWNoKHRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAsKGZ1bmN0aW9uKHQsbil7ZS5fcmVtb3ZlQ2xhc3Mobix0KX0pKSx0aGlzLmVsZW1lbnQub2ZmKHRoaXMuZXZlbnROYW1lc3BhY2UpLnJlbW92ZURhdGEodGhpcy53aWRnZXRGdWxsTmFtZSksdGhpcy53aWRnZXQoKS5vZmYodGhpcy5ldmVudE5hbWVzcGFjZSkucmVtb3ZlQXR0cigiYXJpYS1kaXNhYmxlZCIpLHRoaXMuYmluZGluZ3Mub2ZmKHRoaXMuZXZlbnROYW1lc3BhY2UpfSxfZGVzdHJveTp0Lm5vb3Asd2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudH0sb3B0aW9uOmZ1bmN0aW9uKGUsbil7dmFyIGkscixvLHM9ZTtpZigwPT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9ucyk7aWYoInN0cmluZyI9PXR5cGVvZiBlKWlmKHM9e30saT1lLnNwbGl0KCIuIiksZT1pLnNoaWZ0KCksaS5sZW5ndGgpe2ZvcihyPXNbZV09dC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9uc1tlXSksbz0wO288aS5sZW5ndGgtMTtvKyspcltpW29dXT1yW2lbb11dfHx7fSxyPXJbaVtvXV07aWYoZT1pLnBvcCgpLDE9PT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT1yW2VdP251bGw6cltlXTtyW2VdPW59ZWxzZXtpZigxPT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09dGhpcy5vcHRpb25zW2VdP251bGw6dGhpcy5vcHRpb25zW2VdO3NbZV09bn1yZXR1cm4gdGhpcy5fc2V0T3B0aW9ucyhzKSx0aGlzfSxfc2V0T3B0aW9uczpmdW5jdGlvbih0KXt2YXIgZTtmb3IoZSBpbiB0KXRoaXMuX3NldE9wdGlvbihlLHRbZV0pO3JldHVybiB0aGlzfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKHQsZSl7cmV0dXJuImNsYXNzZXMiPT09dCYmdGhpcy5fc2V0T3B0aW9uQ2xhc3NlcyhlKSx0aGlzLm9wdGlvbnNbdF09ZSwiZGlzYWJsZWQiPT09dCYmdGhpcy5fc2V0T3B0aW9uRGlzYWJsZWQoZSksdGhpc30sX3NldE9wdGlvbkNsYXNzZXM6ZnVuY3Rpb24oZSl7dmFyIG4saSxyO2ZvcihuIGluIGUpcj10aGlzLmNsYXNzZXNFbGVtZW50TG9va3VwW25dLGVbbl0hPT10aGlzLm9wdGlvbnMuY2xhc3Nlc1tuXSYmciYmci5sZW5ndGgmJihpPXQoci5nZXQoKSksdGhpcy5fcmVtb3ZlQ2xhc3MocixuKSxpLmFkZENsYXNzKHRoaXMuX2NsYXNzZXMoe2VsZW1lbnQ6aSxrZXlzOm4sY2xhc3NlczplLGFkZDohMH0pKSl9LF9zZXRPcHRpb25EaXNhYmxlZDpmdW5jdGlvbih0KXt0aGlzLl90b2dnbGVDbGFzcyh0aGlzLndpZGdldCgpLHRoaXMud2lkZ2V0RnVsbE5hbWUrIi1kaXNhYmxlZCIsbnVsbCwhIXQpLHQmJih0aGlzLl9yZW1vdmVDbGFzcyh0aGlzLmhvdmVyYWJsZSxudWxsLCJ1aS1zdGF0ZS1ob3ZlciIpLHRoaXMuX3JlbW92ZUNsYXNzKHRoaXMuZm9jdXNhYmxlLG51bGwsInVpLXN0YXRlLWZvY3VzIikpfSwKZW5hYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoe2Rpc2FibGVkOiExfSl9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2V0T3B0aW9ucyh7ZGlzYWJsZWQ6ITB9KX0sX2NsYXNzZXM6ZnVuY3Rpb24oZSl7dmFyIG49W10saT10aGlzO2Z1bmN0aW9uIHIoKXt2YXIgbj1bXTtlLmVsZW1lbnQuZWFjaCgoZnVuY3Rpb24oZSxyKXt0Lm1hcChpLmNsYXNzZXNFbGVtZW50TG9va3VwLChmdW5jdGlvbih0KXtyZXR1cm4gdH0pKS5zb21lKChmdW5jdGlvbih0KXtyZXR1cm4gdC5pcyhyKX0pKXx8bi5wdXNoKHIpfSkpLGkuX29uKHQobikse3JlbW92ZToiX3VudHJhY2tDbGFzc2VzRWxlbWVudCJ9KX1mdW5jdGlvbiBvKG8scyl7dmFyIGEsdTtmb3IodT0wO3U8by5sZW5ndGg7dSsrKWE9aS5jbGFzc2VzRWxlbWVudExvb2t1cFtvW3VdXXx8dCgpLGUuYWRkPyhyKCksYT10KHQudW5pcXVlU29ydChhLmdldCgpLmNvbmNhdChlLmVsZW1lbnQuZ2V0KCkpKSkpOmE9dChhLm5vdChlLmVsZW1lbnQpLmdldCgpKSxpLmNsYXNzZXNFbGVtZW50TG9va3VwW29bdV1dPWEsbi5wdXNoKG9bdV0pLHMmJmUuY2xhc3Nlc1tvW3VdXSYmbi5wdXNoKGUuY2xhc3Nlc1tvW3VdXSl9cmV0dXJuKGU9dC5leHRlbmQoe2VsZW1lbnQ6dGhpcy5lbGVtZW50LGNsYXNzZXM6dGhpcy5vcHRpb25zLmNsYXNzZXN8fHt9fSxlKSkua2V5cyYmbyhlLmtleXMubWF0Y2goL1xTKy9nKXx8W10sITApLGUuZXh0cmEmJm8oZS5leHRyYS5tYXRjaCgvXFMrL2cpfHxbXSksbi5qb2luKCIgIil9LF91bnRyYWNrQ2xhc3Nlc0VsZW1lbnQ6ZnVuY3Rpb24oZSl7dmFyIG49dGhpczt0LmVhY2gobi5jbGFzc2VzRWxlbWVudExvb2t1cCwoZnVuY3Rpb24oaSxyKXstMSE9PXQuaW5BcnJheShlLnRhcmdldCxyKSYmKG4uY2xhc3Nlc0VsZW1lbnRMb29rdXBbaV09dChyLm5vdChlLnRhcmdldCkuZ2V0KCkpKX0pKSx0aGlzLl9vZmYodChlLnRhcmdldCkpfSxfcmVtb3ZlQ2xhc3M6ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0aGlzLl90b2dnbGVDbGFzcyh0LGUsbiwhMSl9LF9hZGRDbGFzczpmdW5jdGlvbih0LGUsbil7cmV0dXJuIHRoaXMuX3RvZ2dsZUNsYXNzKHQsZSxuLCEwKX0sX3RvZ2dsZUNsYXNzOmZ1bmN0aW9uKHQsZSxuLGkpe2k9ImJvb2xlYW4iPT10eXBlb2YgaT9pOm47dmFyIHI9InN0cmluZyI9PXR5cGVvZiB0fHxudWxsPT09dCxvPXtleHRyYTpyP2U6bixrZXlzOnI/dDplLGVsZW1lbnQ6cj90aGlzLmVsZW1lbnQ6dCxhZGQ6aX07cmV0dXJuIG8uZWxlbWVudC50b2dnbGVDbGFzcyh0aGlzLl9jbGFzc2VzKG8pLGkpLHRoaXN9LF9vbjpmdW5jdGlvbihlLG4saSl7dmFyIHIsbz10aGlzOyJib29sZWFuIiE9dHlwZW9mIGUmJihpPW4sbj1lLGU9ITEpLGk/KG49cj10KG4pLHRoaXMuYmluZGluZ3M9dGhpcy5iaW5kaW5ncy5hZGQobikpOihpPW4sbj10aGlzLmVsZW1lbnQscj10aGlzLndpZGdldCgpKSx0LmVhY2goaSwoZnVuY3Rpb24oaSxzKXtmdW5jdGlvbiBhKCl7aWYoZXx8ITAhPT1vLm9wdGlvbnMuZGlzYWJsZWQmJiF0KHRoaXMpLmhhc0NsYXNzKCJ1aS1zdGF0ZS1kaXNhYmxlZCIpKXJldHVybigic3RyaW5nIj09dHlwZW9mIHM/b1tzXTpzKS5hcHBseShvLGFyZ3VtZW50cyl9InN0cmluZyIhPXR5cGVvZiBzJiYoYS5ndWlkPXMuZ3VpZD1zLmd1aWR8fGEuZ3VpZHx8dC5ndWlkKyspO3ZhciB1PWkubWF0Y2goL14oW1x3Oi1dKilccyooLiopJC8pLGw9dVsxXStvLmV2ZW50TmFtZXNwYWNlLGM9dVsyXTtjP3Iub24obCxjLGEpOm4ub24obCxhKX0pKX0sX29mZjpmdW5jdGlvbihlLG4pe249KG58fCIiKS5zcGxpdCgiICIpLmpvaW4odGhpcy5ldmVudE5hbWVzcGFjZSsiICIpK3RoaXMuZXZlbnROYW1lc3BhY2UsZS5vZmYobiksdGhpcy5iaW5kaW5ncz10KHRoaXMuYmluZGluZ3Mubm90KGUpLmdldCgpKSx0aGlzLmZvY3VzYWJsZT10KHRoaXMuZm9jdXNhYmxlLm5vdChlKS5nZXQoKSksdGhpcy5ob3ZlcmFibGU9dCh0aGlzLmhvdmVyYWJsZS5ub3QoZSkuZ2V0KCkpfSxfZGVsYXk6ZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBuKCl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgdD9pW3RdOnQpLmFwcGx5KGksYXJndW1lbnRzKX12YXIgaT10aGlzO3JldHVybiBzZXRUaW1lb3V0KG4sZXx8MCl9LF9ob3ZlcmFibGU6ZnVuY3Rpb24oZSl7dGhpcy5ob3ZlcmFibGU9dGhpcy5ob3ZlcmFibGUuYWRkKGUpLHRoaXMuX29uKGUse21vdXNlZW50ZXI6ZnVuY3Rpb24oZSl7dGhpcy5fYWRkQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWhvdmVyIil9LG1vdXNlbGVhdmU6ZnVuY3Rpb24oZSl7dGhpcy5fcmVtb3ZlQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWhvdmVyIil9fSl9LF9mb2N1c2FibGU6ZnVuY3Rpb24oZSl7dGhpcy5mb2N1c2FibGU9dGhpcy5mb2N1c2FibGUuYWRkKGUpLHRoaXMuX29uKGUse2ZvY3VzaW46ZnVuY3Rpb24oZSl7dGhpcy5fYWRkQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWZvY3VzIil9LGZvY3Vzb3V0OmZ1bmN0aW9uKGUpe3RoaXMuX3JlbW92ZUNsYXNzKHQoZS5jdXJyZW50VGFyZ2V0KSxudWxsLCJ1aS1zdGF0ZS1mb2N1cyIpfX0pfSxfdHJpZ2dlcjpmdW5jdGlvbihlLG4saSl7dmFyIHIsbyxzPXRoaXMub3B0aW9uc1tlXTtpZihpPWl8fHt9LChuPXQuRXZlbnQobikpLnR5cGU9KGU9PT10aGlzLndpZGdldEV2ZW50UHJlZml4P2U6dGhpcy53aWRnZXRFdmVudFByZWZpeCtlKS50b0xvd2VyQ2FzZSgpLG4udGFyZ2V0PXRoaXMuZWxlbWVudFswXSxvPW4ub3JpZ2luYWxFdmVudClmb3IociBpbiBvKXIgaW4gbnx8KG5bcl09b1tyXSk7cmV0dXJuIHRoaXMuZWxlbWVudC50cmlnZ2VyKG4saSksISgiZnVuY3Rpb24iPT10eXBlb2YgcyYmITE9PT1zLmFwcGx5KHRoaXMuZWxlbWVudFswXSxbbl0uY29uY2F0KGkpKXx8bi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl9fSx0LmVhY2goe3Nob3c6ImZhZGVJbiIsaGlkZToiZmFkZU91dCJ9LChmdW5jdGlvbihlLG4pe3QuV2lkZ2V0LnByb3RvdHlwZVsiXyIrZV09ZnVuY3Rpb24oaSxyLG8pewp2YXIgczsic3RyaW5nIj09dHlwZW9mIHImJihyPXtlZmZlY3Q6cn0pO3ZhciBhPXI/ITA9PT1yfHwibnVtYmVyIj09dHlwZW9mIHI/bjpyLmVmZmVjdHx8bjplOyJudW1iZXIiPT10eXBlb2Yocj1yfHx7fSk/cj17ZHVyYXRpb246cn06ITA9PT1yJiYocj17fSkscz0hdC5pc0VtcHR5T2JqZWN0KHIpLHIuY29tcGxldGU9byxyLmRlbGF5JiZpLmRlbGF5KHIuZGVsYXkpLHMmJnQuZWZmZWN0cyYmdC5lZmZlY3RzLmVmZmVjdFthXT9pW2VdKHIpOmEhPT1lJiZpW2FdP2lbYV0oci5kdXJhdGlvbixyLmVhc2luZyxvKTppLnF1ZXVlKChmdW5jdGlvbihuKXt0KHRoaXMpW2VdKCksbyYmby5jYWxsKGlbMF0pLG4oKX0pKX19KSksdC53aWRnZXR9LHZvaWQgMD09PShvPSJmdW5jdGlvbiI9PXR5cGVvZiBpP2kuYXBwbHkoZSxyKTppKXx8KHQuZXhwb3J0cz1vKX0oKX0sMjg5MTMyKHQsZSxuKXt2YXIgaSxyLG87IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3I9W24oNDgyNTA0KSxuKDI5MzI3MSksbigxNjg3MDEpLG4oNjY2MzQ5KV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7dmFyIGU9ITE7cmV0dXJuIHQoZG9jdW1lbnQpLm9uKCJtb3VzZXVwIiwoZnVuY3Rpb24oKXtlPSExfSkpLHQud2lkZ2V0KCJ1aS5tb3VzZSIse3ZlcnNpb246IjEuMTMuMiIsb3B0aW9uczp7Y2FuY2VsOiJpbnB1dCwgdGV4dGFyZWEsIGJ1dHRvbiwgc2VsZWN0LCBvcHRpb24iLGRpc3RhbmNlOjEsZGVsYXk6MH0sX21vdXNlSW5pdDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5lbGVtZW50Lm9uKCJtb3VzZWRvd24uIit0aGlzLndpZGdldE5hbWUsKGZ1bmN0aW9uKHQpe3JldHVybiBlLl9tb3VzZURvd24odCl9KSkub24oImNsaWNrLiIrdGhpcy53aWRnZXROYW1lLChmdW5jdGlvbihuKXtpZighMD09PXQuZGF0YShuLnRhcmdldCxlLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIpKXJldHVybiB0LnJlbW92ZURhdGEobi50YXJnZXQsZS53aWRnZXROYW1lKyIucHJldmVudENsaWNrRXZlbnQiKSxuLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLCExfSkpLHRoaXMuc3RhcnRlZD0hMX0sX21vdXNlRGVzdHJveTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5vZmYoIi4iK3RoaXMud2lkZ2V0TmFtZSksdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGUmJnRoaXMuZG9jdW1lbnQub2ZmKCJtb3VzZW1vdmUuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGUpLm9mZigibW91c2V1cC4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZVVwRGVsZWdhdGUpfSxfbW91c2VEb3duOmZ1bmN0aW9uKG4pe2lmKCFlKXt0aGlzLl9tb3VzZU1vdmVkPSExLHRoaXMuX21vdXNlU3RhcnRlZCYmdGhpcy5fbW91c2VVcChuKSx0aGlzLl9tb3VzZURvd25FdmVudD1uO3ZhciBpPXRoaXMscj0xPT09bi53aGljaCxvPSEoInN0cmluZyIhPXR5cGVvZiB0aGlzLm9wdGlvbnMuY2FuY2VsfHwhbi50YXJnZXQubm9kZU5hbWUpJiZ0KG4udGFyZ2V0KS5jbG9zZXN0KHRoaXMub3B0aW9ucy5jYW5jZWwpLmxlbmd0aDtyZXR1cm4hKHImJiFvJiZ0aGlzLl9tb3VzZUNhcHR1cmUobikpfHwodGhpcy5tb3VzZURlbGF5TWV0PSF0aGlzLm9wdGlvbnMuZGVsYXksdGhpcy5tb3VzZURlbGF5TWV0fHwodGhpcy5fbW91c2VEZWxheVRpbWVyPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7aS5tb3VzZURlbGF5TWV0PSEwfSksdGhpcy5vcHRpb25zLmRlbGF5KSksdGhpcy5fbW91c2VEaXN0YW5jZU1ldChuKSYmdGhpcy5fbW91c2VEZWxheU1ldChuKSYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSE9PXRoaXMuX21vdXNlU3RhcnQobiksIXRoaXMuX21vdXNlU3RhcnRlZCk/KG4ucHJldmVudERlZmF1bHQoKSwhMCk6KCEwPT09dC5kYXRhKG4udGFyZ2V0LHRoaXMud2lkZ2V0TmFtZSsiLnByZXZlbnRDbGlja0V2ZW50IikmJnQucmVtb3ZlRGF0YShuLnRhcmdldCx0aGlzLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIpLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlPWZ1bmN0aW9uKHQpe3JldHVybiBpLl9tb3VzZU1vdmUodCl9LHRoaXMuX21vdXNlVXBEZWxlZ2F0ZT1mdW5jdGlvbih0KXtyZXR1cm4gaS5fbW91c2VVcCh0KX0sdGhpcy5kb2N1bWVudC5vbigibW91c2Vtb3ZlLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlKS5vbigibW91c2V1cC4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZVVwRGVsZWdhdGUpLG4ucHJldmVudERlZmF1bHQoKSxlPSEwLCEwKSl9fSxfbW91c2VNb3ZlOmZ1bmN0aW9uKGUpe2lmKHRoaXMuX21vdXNlTW92ZWQpe2lmKHQudWkuaWUmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHxkb2N1bWVudC5kb2N1bWVudE1vZGU8OSkmJiFlLmJ1dHRvbilyZXR1cm4gdGhpcy5fbW91c2VVcChlKTtpZighZS53aGljaClpZihlLm9yaWdpbmFsRXZlbnQuYWx0S2V5fHxlLm9yaWdpbmFsRXZlbnQuY3RybEtleXx8ZS5vcmlnaW5hbEV2ZW50Lm1ldGFLZXl8fGUub3JpZ2luYWxFdmVudC5zaGlmdEtleSl0aGlzLmlnbm9yZU1pc3NpbmdXaGljaD0hMDtlbHNlIGlmKCF0aGlzLmlnbm9yZU1pc3NpbmdXaGljaClyZXR1cm4gdGhpcy5fbW91c2VVcChlKX1yZXR1cm4oZS53aGljaHx8ZS5idXR0b24pJiYodGhpcy5fbW91c2VNb3ZlZD0hMCksdGhpcy5fbW91c2VTdGFydGVkPyh0aGlzLl9tb3VzZURyYWcoZSksZS5wcmV2ZW50RGVmYXVsdCgpKToodGhpcy5fbW91c2VEaXN0YW5jZU1ldChlKSYmdGhpcy5fbW91c2VEZWxheU1ldChlKSYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSE9PXRoaXMuX21vdXNlU3RhcnQodGhpcy5fbW91c2VEb3duRXZlbnQsZSksdGhpcy5fbW91c2VTdGFydGVkP3RoaXMuX21vdXNlRHJhZyhlKTp0aGlzLl9tb3VzZVVwKGUpKSwhdGhpcy5fbW91c2VTdGFydGVkKX0sX21vdXNlVXA6ZnVuY3Rpb24obil7dGhpcy5kb2N1bWVudC5vZmYoIm1vdXNlbW92ZS4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSkub2ZmKCJtb3VzZXVwLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlVXBEZWxlZ2F0ZSksCnRoaXMuX21vdXNlU3RhcnRlZCYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSxuLnRhcmdldD09PXRoaXMuX21vdXNlRG93bkV2ZW50LnRhcmdldCYmdC5kYXRhKG4udGFyZ2V0LHRoaXMud2lkZ2V0TmFtZSsiLnByZXZlbnRDbGlja0V2ZW50IiwhMCksdGhpcy5fbW91c2VTdG9wKG4pKSx0aGlzLl9tb3VzZURlbGF5VGltZXImJihjbGVhclRpbWVvdXQodGhpcy5fbW91c2VEZWxheVRpbWVyKSxkZWxldGUgdGhpcy5fbW91c2VEZWxheVRpbWVyKSx0aGlzLmlnbm9yZU1pc3NpbmdXaGljaD0hMSxlPSExLG4ucHJldmVudERlZmF1bHQoKX0sX21vdXNlRGlzdGFuY2VNZXQ6ZnVuY3Rpb24odCl7cmV0dXJuIE1hdGgubWF4KE1hdGguYWJzKHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VYLXQucGFnZVgpLE1hdGguYWJzKHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VZLXQucGFnZVkpKT49dGhpcy5vcHRpb25zLmRpc3RhbmNlfSxfbW91c2VEZWxheU1ldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1vdXNlRGVsYXlNZXR9LF9tb3VzZVN0YXJ0OmZ1bmN0aW9uKCl7fSxfbW91c2VEcmFnOmZ1bmN0aW9uKCl7fSxfbW91c2VTdG9wOmZ1bmN0aW9uKCl7fSxfbW91c2VDYXB0dXJlOmZ1bmN0aW9uKCl7cmV0dXJuITB9fSl9KT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDEyMTYzNCh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigyODkxMzIpLG4oNzE2OTkpLG4oMTY4NzAxKSxuKDY2NjM0OSldLGk9ZnVuY3Rpb24odCl7cmV0dXJuIHQud2lkZ2V0KCJ1aS5zbGlkZXIiLHQudWkubW91c2Use3ZlcnNpb246IjEuMTMuMiIsd2lkZ2V0RXZlbnRQcmVmaXg6InNsaWRlIixvcHRpb25zOnthbmltYXRlOiExLGNsYXNzZXM6eyJ1aS1zbGlkZXIiOiJ1aS1jb3JuZXItYWxsIiwidWktc2xpZGVyLWhhbmRsZSI6InVpLWNvcm5lci1hbGwiLCJ1aS1zbGlkZXItcmFuZ2UiOiJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1oZWFkZXIifSxkaXN0YW5jZTowLG1heDoxMDAsbWluOjAsb3JpZW50YXRpb246Imhvcml6b250YWwiLHJhbmdlOiExLHN0ZXA6MSx2YWx1ZTowLHZhbHVlczpudWxsLGNoYW5nZTpudWxsLHNsaWRlOm51bGwsc3RhcnQ6bnVsbCxzdG9wOm51bGx9LG51bVBhZ2VzOjUsX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuX2tleVNsaWRpbmc9ITEsdGhpcy5fbW91c2VTbGlkaW5nPSExLHRoaXMuX2FuaW1hdGVPZmY9ITAsdGhpcy5faGFuZGxlSW5kZXg9bnVsbCx0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpLHRoaXMuX21vdXNlSW5pdCgpLHRoaXMuX2NhbGN1bGF0ZU5ld01heCgpLHRoaXMuX2FkZENsYXNzKCJ1aS1zbGlkZXIgdWktc2xpZGVyLSIrdGhpcy5vcmllbnRhdGlvbiwidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiksdGhpcy5fcmVmcmVzaCgpLHRoaXMuX2FuaW1hdGVPZmY9ITF9LF9yZWZyZXNoOmZ1bmN0aW9uKCl7dGhpcy5fY3JlYXRlUmFuZ2UoKSx0aGlzLl9jcmVhdGVIYW5kbGVzKCksdGhpcy5fc2V0dXBFdmVudHMoKSx0aGlzLl9yZWZyZXNoVmFsdWUoKX0sX2NyZWF0ZUhhbmRsZXM6ZnVuY3Rpb24oKXt2YXIgZSxuLGk9dGhpcy5vcHRpb25zLHI9dGhpcy5lbGVtZW50LmZpbmQoIi51aS1zbGlkZXItaGFuZGxlIiksbz0iPHNwYW4gdGFiaW5kZXg9JzAnPjwvc3Bhbj4iLHM9W107Zm9yKG49aS52YWx1ZXMmJmkudmFsdWVzLmxlbmd0aHx8MSxyLmxlbmd0aD5uJiYoci5zbGljZShuKS5yZW1vdmUoKSxyPXIuc2xpY2UoMCxuKSksZT1yLmxlbmd0aDtlPG47ZSsrKXMucHVzaChvKTt0aGlzLmhhbmRsZXM9ci5hZGQodChzLmpvaW4oIiIpKS5hcHBlbmRUbyh0aGlzLmVsZW1lbnQpKSx0aGlzLl9hZGRDbGFzcyh0aGlzLmhhbmRsZXMsInVpLXNsaWRlci1oYW5kbGUiLCJ1aS1zdGF0ZS1kZWZhdWx0IiksdGhpcy5oYW5kbGU9dGhpcy5oYW5kbGVzLmVxKDApLHRoaXMuaGFuZGxlcy5lYWNoKChmdW5jdGlvbihlKXt0KHRoaXMpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiLGUpLmF0dHIoInRhYkluZGV4IiwwKX0pKX0sX2NyZWF0ZVJhbmdlOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcHRpb25zO2UucmFuZ2U/KCEwPT09ZS5yYW5nZSYmKGUudmFsdWVzP2UudmFsdWVzLmxlbmd0aCYmMiE9PWUudmFsdWVzLmxlbmd0aD9lLnZhbHVlcz1bZS52YWx1ZXNbMF0sZS52YWx1ZXNbMF1dOkFycmF5LmlzQXJyYXkoZS52YWx1ZXMpJiYoZS52YWx1ZXM9ZS52YWx1ZXMuc2xpY2UoMCkpOmUudmFsdWVzPVt0aGlzLl92YWx1ZU1pbigpLHRoaXMuX3ZhbHVlTWluKCldKSx0aGlzLnJhbmdlJiZ0aGlzLnJhbmdlLmxlbmd0aD8odGhpcy5fcmVtb3ZlQ2xhc3ModGhpcy5yYW5nZSwidWktc2xpZGVyLXJhbmdlLW1pbiB1aS1zbGlkZXItcmFuZ2UtbWF4IiksdGhpcy5yYW5nZS5jc3Moe2xlZnQ6IiIsYm90dG9tOiIifSkpOih0aGlzLnJhbmdlPXQoIjxkaXY+IikuYXBwZW5kVG8odGhpcy5lbGVtZW50KSx0aGlzLl9hZGRDbGFzcyh0aGlzLnJhbmdlLCJ1aS1zbGlkZXItcmFuZ2UiKSksIm1pbiIhPT1lLnJhbmdlJiYibWF4IiE9PWUucmFuZ2V8fHRoaXMuX2FkZENsYXNzKHRoaXMucmFuZ2UsInVpLXNsaWRlci1yYW5nZS0iK2UucmFuZ2UpKToodGhpcy5yYW5nZSYmdGhpcy5yYW5nZS5yZW1vdmUoKSx0aGlzLnJhbmdlPW51bGwpfSxfc2V0dXBFdmVudHM6ZnVuY3Rpb24oKXt0aGlzLl9vZmYodGhpcy5oYW5kbGVzKSx0aGlzLl9vbih0aGlzLmhhbmRsZXMsdGhpcy5faGFuZGxlRXZlbnRzKSx0aGlzLl9ob3ZlcmFibGUodGhpcy5oYW5kbGVzKSx0aGlzLl9mb2N1c2FibGUodGhpcy5oYW5kbGVzKX0sX2Rlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmhhbmRsZXMucmVtb3ZlKCksdGhpcy5yYW5nZSYmdGhpcy5yYW5nZS5yZW1vdmUoKSx0aGlzLl9tb3VzZURlc3Ryb3koKX0sX21vdXNlQ2FwdHVyZTpmdW5jdGlvbihlKXt2YXIgbixpLHIsbyxzLGEsdSxsPXRoaXMsYz10aGlzLm9wdGlvbnM7cmV0dXJuIWMuZGlzYWJsZWQmJih0aGlzLmVsZW1lbnRTaXplPXt3aWR0aDp0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLGhlaWdodDp0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKQp9LHRoaXMuZWxlbWVudE9mZnNldD10aGlzLmVsZW1lbnQub2Zmc2V0KCksbj17eDplLnBhZ2VYLHk6ZS5wYWdlWX0saT10aGlzLl9ub3JtVmFsdWVGcm9tTW91c2Uobikscj10aGlzLl92YWx1ZU1heCgpLXRoaXMuX3ZhbHVlTWluKCkrMSx0aGlzLmhhbmRsZXMuZWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5hYnMoaS1sLnZhbHVlcyhlKSk7KHI+bnx8cj09PW4mJihlPT09bC5fbGFzdENoYW5nZWRWYWx1ZXx8bC52YWx1ZXMoZSk9PT1jLm1pbikpJiYocj1uLG89dCh0aGlzKSxzPWUpfSkpLCExIT09dGhpcy5fc3RhcnQoZSxzKSYmKHRoaXMuX21vdXNlU2xpZGluZz0hMCx0aGlzLl9oYW5kbGVJbmRleD1zLHRoaXMuX2FkZENsYXNzKG8sbnVsbCwidWktc3RhdGUtYWN0aXZlIiksby50cmlnZ2VyKCJmb2N1cyIpLGE9by5vZmZzZXQoKSx1PSF0KGUudGFyZ2V0KS5wYXJlbnRzKCkuYWRkQmFjaygpLmlzKCIudWktc2xpZGVyLWhhbmRsZSIpLHRoaXMuX2NsaWNrT2Zmc2V0PXU/e2xlZnQ6MCx0b3A6MH06e2xlZnQ6ZS5wYWdlWC1hLmxlZnQtby53aWR0aCgpLzIsdG9wOmUucGFnZVktYS50b3Atby5oZWlnaHQoKS8yLShwYXJzZUludChvLmNzcygiYm9yZGVyVG9wV2lkdGgiKSwxMCl8fDApLShwYXJzZUludChvLmNzcygiYm9yZGVyQm90dG9tV2lkdGgiKSwxMCl8fDApKyhwYXJzZUludChvLmNzcygibWFyZ2luVG9wIiksMTApfHwwKX0sdGhpcy5oYW5kbGVzLmhhc0NsYXNzKCJ1aS1zdGF0ZS1ob3ZlciIpfHx0aGlzLl9zbGlkZShlLHMsaSksdGhpcy5fYW5pbWF0ZU9mZj0hMCwhMCkpfSxfbW91c2VTdGFydDpmdW5jdGlvbigpe3JldHVybiEwfSxfbW91c2VEcmFnOmZ1bmN0aW9uKHQpe3ZhciBlPXt4OnQucGFnZVgseTp0LnBhZ2VZfSxuPXRoaXMuX25vcm1WYWx1ZUZyb21Nb3VzZShlKTtyZXR1cm4gdGhpcy5fc2xpZGUodCx0aGlzLl9oYW5kbGVJbmRleCxuKSwhMX0sX21vdXNlU3RvcDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVtb3ZlQ2xhc3ModGhpcy5oYW5kbGVzLG51bGwsInVpLXN0YXRlLWFjdGl2ZSIpLHRoaXMuX21vdXNlU2xpZGluZz0hMSx0aGlzLl9zdG9wKHQsdGhpcy5faGFuZGxlSW5kZXgpLHRoaXMuX2NoYW5nZSh0LHRoaXMuX2hhbmRsZUluZGV4KSx0aGlzLl9oYW5kbGVJbmRleD1udWxsLHRoaXMuX2NsaWNrT2Zmc2V0PW51bGwsdGhpcy5fYW5pbWF0ZU9mZj0hMSwhMX0sX2RldGVjdE9yaWVudGF0aW9uOmZ1bmN0aW9uKCl7dGhpcy5vcmllbnRhdGlvbj0idmVydGljYWwiPT09dGhpcy5vcHRpb25zLm9yaWVudGF0aW9uPyJ2ZXJ0aWNhbCI6Imhvcml6b250YWwifSxfbm9ybVZhbHVlRnJvbU1vdXNlOmZ1bmN0aW9uKHQpe3ZhciBlLG4saSxyLG87cmV0dXJuImhvcml6b250YWwiPT09dGhpcy5vcmllbnRhdGlvbj8oZT10aGlzLmVsZW1lbnRTaXplLndpZHRoLG49dC54LXRoaXMuZWxlbWVudE9mZnNldC5sZWZ0LSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC5sZWZ0OjApKTooZT10aGlzLmVsZW1lbnRTaXplLmhlaWdodCxuPXQueS10aGlzLmVsZW1lbnRPZmZzZXQudG9wLSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC50b3A6MCkpLChpPW4vZSk+MSYmKGk9MSksaTwwJiYoaT0wKSwidmVydGljYWwiPT09dGhpcy5vcmllbnRhdGlvbiYmKGk9MS1pKSxyPXRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSxvPXRoaXMuX3ZhbHVlTWluKCkraSpyLHRoaXMuX3RyaW1BbGlnblZhbHVlKG8pfSxfdWlIYXNoOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT17aGFuZGxlOnRoaXMuaGFuZGxlc1t0XSxoYW5kbGVJbmRleDp0LHZhbHVlOnZvaWQgMCE9PWU/ZTp0aGlzLnZhbHVlKCl9O3JldHVybiB0aGlzLl9oYXNNdWx0aXBsZVZhbHVlcygpJiYoaS52YWx1ZT12b2lkIDAhPT1lP2U6dGhpcy52YWx1ZXModCksaS52YWx1ZXM9bnx8dGhpcy52YWx1ZXMoKSksaX0sX2hhc011bHRpcGxlVmFsdWVzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RofSxfc3RhcnQ6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fdHJpZ2dlcigic3RhcnQiLHQsdGhpcy5fdWlIYXNoKGUpKX0sX3NsaWRlOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaSxyPXRoaXMudmFsdWUoKSxvPXRoaXMudmFsdWVzKCk7dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSYmKGk9dGhpcy52YWx1ZXMoZT8wOjEpLHI9dGhpcy52YWx1ZXMoZSksMj09PXRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoJiYhMD09PXRoaXMub3B0aW9ucy5yYW5nZSYmKG49MD09PWU/TWF0aC5taW4oaSxuKTpNYXRoLm1heChpLG4pKSxvW2VdPW4pLG4hPT1yJiYhMSE9PXRoaXMuX3RyaWdnZXIoInNsaWRlIix0LHRoaXMuX3VpSGFzaChlLG4sbykpJiYodGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLnZhbHVlcyhlLG4pOnRoaXMudmFsdWUobikpfSxfc3RvcDpmdW5jdGlvbih0LGUpe3RoaXMuX3RyaWdnZXIoInN0b3AiLHQsdGhpcy5fdWlIYXNoKGUpKX0sX2NoYW5nZTpmdW5jdGlvbih0LGUpe3RoaXMuX2tleVNsaWRpbmd8fHRoaXMuX21vdXNlU2xpZGluZ3x8KHRoaXMuX2xhc3RDaGFuZ2VkVmFsdWU9ZSx0aGlzLl90cmlnZ2VyKCJjaGFuZ2UiLHQsdGhpcy5fdWlIYXNoKGUpKSl9LHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLm9wdGlvbnMudmFsdWU9dGhpcy5fdHJpbUFsaWduVmFsdWUodCksdGhpcy5fcmVmcmVzaFZhbHVlKCksdm9pZCB0aGlzLl9jaGFuZ2UobnVsbCwwKSk6dGhpcy5fdmFsdWUoKX0sdmFsdWVzOmZ1bmN0aW9uKHQsZSl7dmFyIG4saSxyO2lmKGFyZ3VtZW50cy5sZW5ndGg+MSlyZXR1cm4gdGhpcy5vcHRpb25zLnZhbHVlc1t0XT10aGlzLl90cmltQWxpZ25WYWx1ZShlKSx0aGlzLl9yZWZyZXNoVmFsdWUoKSx2b2lkIHRoaXMuX2NoYW5nZShudWxsLHQpO2lmKCFhcmd1bWVudHMubGVuZ3RoKXJldHVybiB0aGlzLl92YWx1ZXMoKQo7aWYoIUFycmF5LmlzQXJyYXkoYXJndW1lbnRzWzBdKSlyZXR1cm4gdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLl92YWx1ZXModCk6dGhpcy52YWx1ZSgpO2ZvcihuPXRoaXMub3B0aW9ucy52YWx1ZXMsaT1hcmd1bWVudHNbMF0scj0wO3I8bi5sZW5ndGg7cis9MSluW3JdPXRoaXMuX3RyaW1BbGlnblZhbHVlKGlbcl0pLHRoaXMuX2NoYW5nZShudWxsLHIpO3RoaXMuX3JlZnJlc2hWYWx1ZSgpfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKHQsZSl7dmFyIG4saT0wO3N3aXRjaCgicmFuZ2UiPT09dCYmITA9PT10aGlzLm9wdGlvbnMucmFuZ2UmJigibWluIj09PWU/KHRoaXMub3B0aW9ucy52YWx1ZT10aGlzLl92YWx1ZXMoMCksdGhpcy5vcHRpb25zLnZhbHVlcz1udWxsKToibWF4Ij09PWUmJih0aGlzLm9wdGlvbnMudmFsdWU9dGhpcy5fdmFsdWVzKHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoLTEpLHRoaXMub3B0aW9ucy52YWx1ZXM9bnVsbCkpLEFycmF5LmlzQXJyYXkodGhpcy5vcHRpb25zLnZhbHVlcykmJihpPXRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoKSx0aGlzLl9zdXBlcih0LGUpLHQpe2Nhc2Uib3JpZW50YXRpb24iOnRoaXMuX2RldGVjdE9yaWVudGF0aW9uKCksdGhpcy5fcmVtb3ZlQ2xhc3MoInVpLXNsaWRlci1ob3Jpem9udGFsIHVpLXNsaWRlci12ZXJ0aWNhbCIpLl9hZGRDbGFzcygidWktc2xpZGVyLSIrdGhpcy5vcmllbnRhdGlvbiksdGhpcy5fcmVmcmVzaFZhbHVlKCksdGhpcy5vcHRpb25zLnJhbmdlJiZ0aGlzLl9yZWZyZXNoUmFuZ2UoZSksdGhpcy5oYW5kbGVzLmNzcygiaG9yaXpvbnRhbCI9PT1lPyJib3R0b20iOiJsZWZ0IiwiIik7YnJlYWs7Y2FzZSJ2YWx1ZSI6dGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSx0aGlzLl9jaGFuZ2UobnVsbCwwKSx0aGlzLl9hbmltYXRlT2ZmPSExO2JyZWFrO2Nhc2UidmFsdWVzIjpmb3IodGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSxuPWktMTtuPj0wO24tLSl0aGlzLl9jaGFuZ2UobnVsbCxuKTt0aGlzLl9hbmltYXRlT2ZmPSExO2JyZWFrO2Nhc2Uic3RlcCI6Y2FzZSJtaW4iOmNhc2UibWF4Ijp0aGlzLl9hbmltYXRlT2ZmPSEwLHRoaXMuX2NhbGN1bGF0ZU5ld01heCgpLHRoaXMuX3JlZnJlc2hWYWx1ZSgpLHRoaXMuX2FuaW1hdGVPZmY9ITE7YnJlYWs7Y2FzZSJyYW5nZSI6dGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoKCksdGhpcy5fYW5pbWF0ZU9mZj0hMX19LF9zZXRPcHRpb25EaXNhYmxlZDpmdW5jdGlvbih0KXt0aGlzLl9zdXBlcih0KSx0aGlzLl90b2dnbGVDbGFzcyhudWxsLCJ1aS1zdGF0ZS1kaXNhYmxlZCIsISF0KX0sX3ZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLnZhbHVlO3JldHVybiB0PXRoaXMuX3RyaW1BbGlnblZhbHVlKHQpfSxfdmFsdWVzOmZ1bmN0aW9uKHQpe3ZhciBlLG4saTtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiBlPXRoaXMub3B0aW9ucy52YWx1ZXNbdF0sZT10aGlzLl90cmltQWxpZ25WYWx1ZShlKTtpZih0aGlzLl9oYXNNdWx0aXBsZVZhbHVlcygpKXtmb3Iobj10aGlzLm9wdGlvbnMudmFsdWVzLnNsaWNlKCksaT0wO2k8bi5sZW5ndGg7aSs9MSluW2ldPXRoaXMuX3RyaW1BbGlnblZhbHVlKG5baV0pO3JldHVybiBufXJldHVybltdfSxfdHJpbUFsaWduVmFsdWU6ZnVuY3Rpb24odCl7aWYodDw9dGhpcy5fdmFsdWVNaW4oKSlyZXR1cm4gdGhpcy5fdmFsdWVNaW4oKTtpZih0Pj10aGlzLl92YWx1ZU1heCgpKXJldHVybiB0aGlzLl92YWx1ZU1heCgpO3ZhciBlPXRoaXMub3B0aW9ucy5zdGVwPjA/dGhpcy5vcHRpb25zLnN0ZXA6MSxuPSh0LXRoaXMuX3ZhbHVlTWluKCkpJWUsaT10LW47cmV0dXJuIDIqTWF0aC5hYnMobik+PWUmJihpKz1uPjA/ZTotZSkscGFyc2VGbG9hdChpLnRvRml4ZWQoNSkpfSxfY2FsY3VsYXRlTmV3TWF4OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLm1heCxlPXRoaXMuX3ZhbHVlTWluKCksbj10aGlzLm9wdGlvbnMuc3RlcDsodD1NYXRoLnJvdW5kKCh0LWUpL24pKm4rZSk+dGhpcy5vcHRpb25zLm1heCYmKHQtPW4pLHRoaXMubWF4PXBhcnNlRmxvYXQodC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbigpKSl9LF9wcmVjaXNpb246ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9wcmVjaXNpb25PZih0aGlzLm9wdGlvbnMuc3RlcCk7cmV0dXJuIG51bGwhPT10aGlzLm9wdGlvbnMubWluJiYodD1NYXRoLm1heCh0LHRoaXMuX3ByZWNpc2lvbk9mKHRoaXMub3B0aW9ucy5taW4pKSksdH0sX3ByZWNpc2lvbk9mOmZ1bmN0aW9uKHQpe3ZhciBlPXQudG9TdHJpbmcoKSxuPWUuaW5kZXhPZigiLiIpO3JldHVybi0xPT09bj8wOmUubGVuZ3RoLW4tMX0sX3ZhbHVlTWluOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5taW59LF92YWx1ZU1heDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1heH0sX3JlZnJlc2hSYW5nZTpmdW5jdGlvbih0KXsidmVydGljYWwiPT09dCYmdGhpcy5yYW5nZS5jc3Moe3dpZHRoOiIiLGxlZnQ6IiJ9KSwiaG9yaXpvbnRhbCI9PT10JiZ0aGlzLnJhbmdlLmNzcyh7aGVpZ2h0OiIiLGJvdHRvbToiIn0pfSxfcmVmcmVzaFZhbHVlOmZ1bmN0aW9uKCl7dmFyIGUsbixpLHIsbyxzPXRoaXMub3B0aW9ucy5yYW5nZSxhPXRoaXMub3B0aW9ucyx1PXRoaXMsbD0hdGhpcy5fYW5pbWF0ZU9mZiYmYS5hbmltYXRlLGM9e307dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLmhhbmRsZXMuZWFjaCgoZnVuY3Rpb24oaSl7bj0odS52YWx1ZXMoaSktdS5fdmFsdWVNaW4oKSkvKHUuX3ZhbHVlTWF4KCktdS5fdmFsdWVNaW4oKSkqMTAwLGNbImhvcml6b250YWwiPT09dS5vcmllbnRhdGlvbj8ibGVmdCI6ImJvdHRvbSJdPW4rIiUiLHQodGhpcykuc3RvcCgxLDEpW2w/ImFuaW1hdGUiOiJjc3MiXShjLGEuYW5pbWF0ZSksITA9PT11Lm9wdGlvbnMucmFuZ2UmJigiaG9yaXpvbnRhbCI9PT11Lm9yaWVudGF0aW9uPygwPT09aSYmdS5yYW5nZS5zdG9wKDEsMSlbbD8iYW5pbWF0ZSI6ImNzcyJdKHtsZWZ0Om4rIiUifSxhLmFuaW1hdGUpLAoxPT09aSYmdS5yYW5nZVtsPyJhbmltYXRlIjoiY3NzIl0oe3dpZHRoOm4tZSsiJSJ9LHtxdWV1ZTohMSxkdXJhdGlvbjphLmFuaW1hdGV9KSk6KDA9PT1pJiZ1LnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2JvdHRvbTpuKyIlIn0sYS5hbmltYXRlKSwxPT09aSYmdS5yYW5nZVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDpuLWUrIiUifSx7cXVldWU6ITEsZHVyYXRpb246YS5hbmltYXRlfSkpKSxlPW59KSk6KGk9dGhpcy52YWx1ZSgpLHI9dGhpcy5fdmFsdWVNaW4oKSxvPXRoaXMuX3ZhbHVlTWF4KCksbj1vIT09cj8oaS1yKS8oby1yKSoxMDA6MCxjWyJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24/ImxlZnQiOiJib3R0b20iXT1uKyIlIix0aGlzLmhhbmRsZS5zdG9wKDEsMSlbbD8iYW5pbWF0ZSI6ImNzcyJdKGMsYS5hbmltYXRlKSwibWluIj09PXMmJiJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24mJnRoaXMucmFuZ2Uuc3RvcCgxLDEpW2w/ImFuaW1hdGUiOiJjc3MiXSh7d2lkdGg6bisiJSJ9LGEuYW5pbWF0ZSksIm1heCI9PT1zJiYiaG9yaXpvbnRhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe3dpZHRoOjEwMC1uKyIlIn0sYS5hbmltYXRlKSwibWluIj09PXMmJiJ2ZXJ0aWNhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDpuKyIlIn0sYS5hbmltYXRlKSwibWF4Ij09PXMmJiJ2ZXJ0aWNhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDoxMDAtbisiJSJ9LGEuYW5pbWF0ZSkpfSxfaGFuZGxlRXZlbnRzOntrZXlkb3duOmZ1bmN0aW9uKGUpe3ZhciBuLGkscixvPXQoZS50YXJnZXQpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiKTtzd2l0Y2goZS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5IT01FOmNhc2UgdC51aS5rZXlDb2RlLkVORDpjYXNlIHQudWkua2V5Q29kZS5QQUdFX1VQOmNhc2UgdC51aS5rZXlDb2RlLlBBR0VfRE9XTjpjYXNlIHQudWkua2V5Q29kZS5VUDpjYXNlIHQudWkua2V5Q29kZS5SSUdIVDpjYXNlIHQudWkua2V5Q29kZS5ET1dOOmNhc2UgdC51aS5rZXlDb2RlLkxFRlQ6aWYoZS5wcmV2ZW50RGVmYXVsdCgpLCF0aGlzLl9rZXlTbGlkaW5nJiYodGhpcy5fa2V5U2xpZGluZz0hMCx0aGlzLl9hZGRDbGFzcyh0KGUudGFyZ2V0KSxudWxsLCJ1aS1zdGF0ZS1hY3RpdmUiKSwhMT09PXRoaXMuX3N0YXJ0KGUsbykpKXJldHVybn1zd2l0Y2gocj10aGlzLm9wdGlvbnMuc3RlcCxuPWk9dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLnZhbHVlcyhvKTp0aGlzLnZhbHVlKCksZS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5IT01FOmk9dGhpcy5fdmFsdWVNaW4oKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5FTkQ6aT10aGlzLl92YWx1ZU1heCgpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlBBR0VfVVA6aT10aGlzLl90cmltQWxpZ25WYWx1ZShuKyh0aGlzLl92YWx1ZU1heCgpLXRoaXMuX3ZhbHVlTWluKCkpL3RoaXMubnVtUGFnZXMpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlBBR0VfRE9XTjppPXRoaXMuX3RyaW1BbGlnblZhbHVlKG4tKHRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSkvdGhpcy5udW1QYWdlcyk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuVVA6Y2FzZSB0LnVpLmtleUNvZGUuUklHSFQ6aWYobj09PXRoaXMuX3ZhbHVlTWF4KCkpcmV0dXJuO2k9dGhpcy5fdHJpbUFsaWduVmFsdWUobityKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5ET1dOOmNhc2UgdC51aS5rZXlDb2RlLkxFRlQ6aWYobj09PXRoaXMuX3ZhbHVlTWluKCkpcmV0dXJuO2k9dGhpcy5fdHJpbUFsaWduVmFsdWUobi1yKX10aGlzLl9zbGlkZShlLG8saSl9LGtleXVwOmZ1bmN0aW9uKGUpe3ZhciBuPXQoZS50YXJnZXQpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiKTt0aGlzLl9rZXlTbGlkaW5nJiYodGhpcy5fa2V5U2xpZGluZz0hMSx0aGlzLl9zdG9wKGUsbiksdGhpcy5fY2hhbmdlKGUsbiksdGhpcy5fcmVtb3ZlQ2xhc3ModChlLnRhcmdldCksbnVsbCwidWktc3RhdGUtYWN0aXZlIikpfX19KX0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mIGk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw0OTE4Nih0LGUpe3ZhciBuLGkscixvO289ZnVuY3Rpb24odCl7dmFyIGU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxuPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKHQpe3JldHVybiJbb2JqZWN0IEFycmF5XSI9PT1lLmNhbGwodCl9O2Z1bmN0aW9uIGkodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHR9ZnVuY3Rpb24gcih0KXtyZXR1cm4gdC5yZXBsYWNlKC9bXC1cW1xde30oKSorPy4sXFxcXiR8I1xzXS9nLCJcXCQmIil9ZnVuY3Rpb24gbyh0LGUpe3JldHVybiBudWxsIT10JiYib2JqZWN0Ij09dHlwZW9mIHQmJmUgaW4gdH12YXIgcz1SZWdFeHAucHJvdG90eXBlLnRlc3QsYT0vXFMvO2Z1bmN0aW9uIHUodCl7cmV0dXJuIWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHMuY2FsbCh0LGUpfShhLHQpfXZhciBsPXsiJiI6IiZhbXA7IiwiPCI6IiZsdDsiLCI+IjoiJmd0OyIsJyInOiImcXVvdDsiLCInIjoiJiMzOTsiLCIvIjoiJiN4MkY7IiwiYCI6IiYjeDYwOyIsIj0iOiImI3gzRDsifSxjPS9ccyovLGY9L1xzKy8saD0vXHMqPS8sZD0vXHMqXH0vLHA9LyN8XF58XC98Pnxce3wmfD18IS87ZnVuY3Rpb24gdih0KXt0aGlzLnN0cmluZz10LHRoaXMudGFpbD10LHRoaXMucG9zPTB9ZnVuY3Rpb24gZyh0LGUpe3RoaXMudmlldz10LHRoaXMuY2FjaGU9eyIuIjp0aGlzLnZpZXd9LHRoaXMucGFyZW50PWV9ZnVuY3Rpb24gbSgpe3RoaXMuY2FjaGU9e319di5wcm90b3R5cGUuZW9zPWZ1bmN0aW9uKCl7cmV0dXJuIiI9PT10aGlzLnRhaWx9LHYucHJvdG90eXBlLnNjYW49ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy50YWlsLm1hdGNoKHQpO2lmKCFlfHwwIT09ZS5pbmRleClyZXR1cm4iIgo7dmFyIG49ZVswXTtyZXR1cm4gdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcobi5sZW5ndGgpLHRoaXMucG9zKz1uLmxlbmd0aCxufSx2LnByb3RvdHlwZS5zY2FuVW50aWw9ZnVuY3Rpb24odCl7dmFyIGUsbj10aGlzLnRhaWwuc2VhcmNoKHQpO3N3aXRjaChuKXtjYXNlLTE6ZT10aGlzLnRhaWwsdGhpcy50YWlsPSIiO2JyZWFrO2Nhc2UgMDplPSIiO2JyZWFrO2RlZmF1bHQ6ZT10aGlzLnRhaWwuc3Vic3RyaW5nKDAsbiksdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcobil9cmV0dXJuIHRoaXMucG9zKz1lLmxlbmd0aCxlfSxnLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgZyh0LHRoaXMpfSxnLnByb3RvdHlwZS5sb29rdXA9ZnVuY3Rpb24odCl7dmFyIGUsbj10aGlzLmNhY2hlO2lmKG4uaGFzT3duUHJvcGVydHkodCkpZT1uW3RdO2Vsc2V7Zm9yKHZhciByLHMsYT10aGlzLHU9ITE7YTspe2lmKHQuaW5kZXhPZigiLiIpPjApZm9yKGU9YS52aWV3LHI9dC5zcGxpdCgiLiIpLHM9MDtudWxsIT1lJiZzPHIubGVuZ3RoOylzPT09ci5sZW5ndGgtMSYmKHU9byhlLHJbc10pKSxlPWVbcltzKytdXTtlbHNlIGU9YS52aWV3W3RdLHU9byhhLnZpZXcsdCk7aWYodSlicmVhazthPWEucGFyZW50fW5bdF09ZX1yZXR1cm4gaShlKSYmKGU9ZS5jYWxsKHRoaXMudmlldykpLGV9LG0ucHJvdG90eXBlLmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXt0aGlzLmNhY2hlPXt9fSxtLnByb3RvdHlwZS5wYXJzZT1mdW5jdGlvbihlLGkpe3ZhciBvPXRoaXMuY2FjaGUscz1vW2VdO3JldHVybiBudWxsPT1zJiYocz1vW2VdPWZ1bmN0aW9uKGUsaSl7aWYoIWUpcmV0dXJuW107dmFyIG8scyxhLGw9W10sZz1bXSxtPVtdLHk9ITEsYj0hMTtmdW5jdGlvbiBfKCl7aWYoeSYmIWIpZm9yKDttLmxlbmd0aDspZGVsZXRlIGdbbS5wb3AoKV07ZWxzZSBtPVtdO3k9ITEsYj0hMX1mdW5jdGlvbiB3KHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKHQ9dC5zcGxpdChmLDIpKSwhbih0KXx8MiE9PXQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB0YWdzOiAiK3QpO289bmV3IFJlZ0V4cChyKHRbMF0pKyJcXHMqIikscz1uZXcgUmVnRXhwKCJcXHMqIityKHRbMV0pKSxhPW5ldyBSZWdFeHAoIlxccyoiK3IoIn0iK3RbMV0pKX13KGl8fHQudGFncyk7Zm9yKHZhciB4LE8sRSxDLGssUyxEPW5ldyB2KGUpOyFELmVvcygpOyl7aWYoeD1ELnBvcyxFPUQuc2NhblVudGlsKG8pKWZvcih2YXIgTT0wLFA9RS5sZW5ndGg7TTxQOysrTSl1KEM9RS5jaGFyQXQoTSkpP20ucHVzaChnLmxlbmd0aCk6Yj0hMCxnLnB1c2goWyJ0ZXh0IixDLHgseCsxXSkseCs9MSwiXG4iPT09QyYmXygpO2lmKCFELnNjYW4obykpYnJlYWs7aWYoeT0hMCxPPUQuc2NhbihwKXx8Im5hbWUiLEQuc2NhbihjKSwiPSI9PT1PPyhFPUQuc2NhblVudGlsKGgpLEQuc2NhbihoKSxELnNjYW5VbnRpbChzKSk6InsiPT09Tz8oRT1ELnNjYW5VbnRpbChhKSxELnNjYW4oZCksRC5zY2FuVW50aWwocyksTz0iJiIpOkU9RC5zY2FuVW50aWwocyksIUQuc2NhbihzKSl0aHJvdyBuZXcgRXJyb3IoIlVuY2xvc2VkIHRhZyBhdCAiK0QucG9zKTtpZihrPVtPLEUseCxELnBvc10sZy5wdXNoKGspLCIjIj09PU98fCJeIj09PU8pbC5wdXNoKGspO2Vsc2UgaWYoIi8iPT09Tyl7aWYoIShTPWwucG9wKCkpKXRocm93IG5ldyBFcnJvcignVW5vcGVuZWQgc2VjdGlvbiAiJytFKyciIGF0ICcreCk7aWYoU1sxXSE9PUUpdGhyb3cgbmV3IEVycm9yKCdVbmNsb3NlZCBzZWN0aW9uICInK1NbMV0rJyIgYXQgJyt4KX1lbHNlIm5hbWUiPT09T3x8InsiPT09T3x8IiYiPT09Tz9iPSEwOiI9Ij09PU8mJncoRSl9aWYoUz1sLnBvcCgpKXRocm93IG5ldyBFcnJvcignVW5jbG9zZWQgc2VjdGlvbiAiJytTWzFdKyciIGF0ICcrRC5wb3MpO3JldHVybiBmdW5jdGlvbih0KXtmb3IodmFyIGUsbj1bXSxpPW4scj1bXSxvPTAscz10Lmxlbmd0aDtvPHM7KytvKXN3aXRjaCgoZT10W29dKVswXSl7Y2FzZSIjIjpjYXNlIl4iOmkucHVzaChlKSxyLnB1c2goZSksaT1lWzRdPVtdO2JyZWFrO2Nhc2UiLyI6ci5wb3AoKVs1XT1lWzJdLGk9ci5sZW5ndGg+MD9yW3IubGVuZ3RoLTFdWzRdOm47YnJlYWs7ZGVmYXVsdDppLnB1c2goZSl9cmV0dXJuIG59KGZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuLGk9W10scj0wLG89dC5sZW5ndGg7cjxvOysrcikoZT10W3JdKSYmKCJ0ZXh0Ij09PWVbMF0mJm4mJiJ0ZXh0Ij09PW5bMF0/KG5bMV0rPWVbMV0sblszXT1lWzNdKTooaS5wdXNoKGUpLG49ZSkpO3JldHVybiBpfShnKSl9KGUsaSkpLHN9LG0ucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbih0LGUsbil7dmFyIGk9dGhpcy5wYXJzZSh0KSxyPWUgaW5zdGFuY2VvZiBnP2U6bmV3IGcoZSk7cmV0dXJuIHRoaXMucmVuZGVyVG9rZW5zKGkscixuLHQpfSxtLnByb3RvdHlwZS5yZW5kZXJUb2tlbnM9ZnVuY3Rpb24odCxlLG4saSl7Zm9yKHZhciByLG8scyxhPSIiLHU9MCxsPXQubGVuZ3RoO3U8bDsrK3Upcz12b2lkIDAsIiMiPT09KG89KHI9dFt1XSlbMF0pP3M9dGhpcy5yZW5kZXJTZWN0aW9uKHIsZSxuLGkpOiJeIj09PW8/cz10aGlzLnJlbmRlckludmVydGVkKHIsZSxuLGkpOiI+Ij09PW8/cz10aGlzLnJlbmRlclBhcnRpYWwocixlLG4saSk6IiYiPT09bz9zPXRoaXMudW5lc2NhcGVkVmFsdWUocixlKToibmFtZSI9PT1vP3M9dGhpcy5lc2NhcGVkVmFsdWUocixlKToidGV4dCI9PT1vJiYocz10aGlzLnJhd1ZhbHVlKHIpKSx2b2lkIDAhPT1zJiYoYSs9cyk7cmV0dXJuIGF9LG0ucHJvdG90eXBlLnJlbmRlclNlY3Rpb249ZnVuY3Rpb24odCxlLHIsbyl7dmFyIHM9dGhpcyxhPSIiLHU9ZS5sb29rdXAodFsxXSk7aWYodSl7aWYobih1KSlmb3IodmFyIGw9MCxjPXUubGVuZ3RoO2w8YzsrK2wpYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLnB1c2godVtsXSkscixvKTtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgdXx8InN0cmluZyI9PXR5cGVvZiB1fHwibnVtYmVyIj09dHlwZW9mIHUpYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLnB1c2godSkscixvKTtlbHNlIGlmKGkodSkpewppZigic3RyaW5nIiE9dHlwZW9mIG8pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgdXNlIGhpZ2hlci1vcmRlciBzZWN0aW9ucyB3aXRob3V0IHRoZSBvcmlnaW5hbCB0ZW1wbGF0ZSIpO251bGwhPSh1PXUuY2FsbChlLnZpZXcsby5zbGljZSh0WzNdLHRbNV0pLChmdW5jdGlvbih0KXtyZXR1cm4gcy5yZW5kZXIodCxlLHIpfSkpKSYmKGErPXUpfWVsc2UgYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLHIsbyk7cmV0dXJuIGF9fSxtLnByb3RvdHlwZS5yZW5kZXJJbnZlcnRlZD1mdW5jdGlvbih0LGUsaSxyKXt2YXIgbz1lLmxvb2t1cCh0WzFdKTtpZighb3x8bihvKSYmMD09PW8ubGVuZ3RoKXJldHVybiB0aGlzLnJlbmRlclRva2Vucyh0WzRdLGUsaSxyKX0sbS5wcm90b3R5cGUucmVuZGVyUGFydGlhbD1mdW5jdGlvbih0LGUsbil7aWYobil7dmFyIHI9aShuKT9uKHRbMV0pOm5bdFsxXV07cmV0dXJuIG51bGwhPXI/dGhpcy5yZW5kZXJUb2tlbnModGhpcy5wYXJzZShyKSxlLG4scik6dm9pZCAwfX0sbS5wcm90b3R5cGUudW5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24odCxlKXt2YXIgbj1lLmxvb2t1cCh0WzFdKTtpZihudWxsIT1uKXJldHVybiBufSxtLnByb3RvdHlwZS5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24oZSxuKXt2YXIgaT1uLmxvb2t1cChlWzFdKTtpZihudWxsIT1pKXJldHVybiB0LmVzY2FwZShpKX0sbS5wcm90b3R5cGUucmF3VmFsdWU9ZnVuY3Rpb24odCl7cmV0dXJuIHRbMV19LHQubmFtZT0ibXVzdGFjaGUuanMiLHQudmVyc2lvbj0iMi4yLjEiLHQudGFncz1bInt7IiwifX0iXTt2YXIgeT1uZXcgbTt0LmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXtyZXR1cm4geS5jbGVhckNhY2hlKCl9LHQucGFyc2U9ZnVuY3Rpb24odCxlKXtyZXR1cm4geS5wYXJzZSh0LGUpfSx0LnJlbmRlcj1mdW5jdGlvbih0LGUsaSl7aWYoInN0cmluZyIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgdGVtcGxhdGUhIFRlbXBsYXRlIHNob3VsZCBiZSBhICJzdHJpbmciIGJ1dCAiJysobihyPXQpPyJhcnJheSI6dHlwZW9mIHIpKyciIHdhcyBnaXZlbiBhcyB0aGUgZmlyc3QgYXJndW1lbnQgZm9yIG11c3RhY2hlI3JlbmRlcih0ZW1wbGF0ZSwgdmlldywgcGFydGlhbHMpJyk7dmFyIHI7cmV0dXJuIHkucmVuZGVyKHQsZSxpKX0sdC50b19odG1sPWZ1bmN0aW9uKGUsbixyLG8pe3ZhciBzPXQucmVuZGVyKGUsbixyKTtpZighaShvKSlyZXR1cm4gcztvKHMpfSx0LmVzY2FwZT1mdW5jdGlvbih0KXtyZXR1cm4gU3RyaW5nKHQpLnJlcGxhY2UoL1smPD4iJ2A9XC9dL2csKGZ1bmN0aW9uKHQpe3JldHVybiBsW3RdfSkpfSx0LlNjYW5uZXI9dix0LkNvbnRleHQ9Zyx0LldyaXRlcj1tfSxlJiYic3RyaW5nIiE9dHlwZW9mIGUubm9kZU5hbWU/byhlKTooaT1bZV0sdm9pZCAwPT09KHI9ImZ1bmN0aW9uIj09dHlwZW9mKG49byk/bi5hcHBseShlLGkpOm4pfHwodC5leHBvcnRzPXIpKX0sMzIwNDAzKHQsZSl7InVzZSBzdHJpY3QiO3ZhciBuLGk9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8IXdpbmRvdy5kb2N1bWVudHx8IXdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KTtmdW5jdGlvbiByKCl7aWYobilyZXR1cm4gbjtpZighaXx8IXdpbmRvdy5kb2N1bWVudC5ib2R5KXJldHVybiJpbmRldGVybWluYXRlIjt2YXIgdD13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkFCQ0QiKSksdC5kaXI9InJ0bCIsdC5zdHlsZS5mb250U2l6ZT0iMTRweCIsdC5zdHlsZS53aWR0aD0iNHB4Iix0LnN0eWxlLmhlaWdodD0iMXB4Iix0LnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsdC5zdHlsZS50b3A9Ii0xMDAwcHgiLHQuc3R5bGUub3ZlcmZsb3c9InNjcm9sbCIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KSxuPSJyZXZlcnNlIix0LnNjcm9sbExlZnQ+MD9uPSJkZWZhdWx0IjoodC5zY3JvbGxMZWZ0PTEsMD09PXQuc2Nyb2xsTGVmdCYmKG49Im5lZ2F0aXZlIikpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodCksbn1lLmdldE5vcm1hbGl6ZWRTY3JvbGxMZWZ0PWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zY3JvbGxMZWZ0O2lmKCJydGwiIT09ZSlyZXR1cm4gbjt2YXIgaT1yKCk7aWYoImluZGV0ZXJtaW5hdGUiPT09aSlyZXR1cm4gTnVtYmVyLk5hTjtzd2l0Y2goaSl7Y2FzZSJuZWdhdGl2ZSI6cmV0dXJuIHQuc2Nyb2xsV2lkdGgtdC5jbGllbnRXaWR0aCtuO2Nhc2UicmV2ZXJzZSI6cmV0dXJuIHQuc2Nyb2xsV2lkdGgtdC5jbGllbnRXaWR0aC1ufXJldHVybiBufX0sODI5MTgwKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO3ZhciBpPW4oNjAxODQxKTtjb25zdCByPS97KFx3Kyl9L2csbz0veyhcZCspfS9nO1N0cmluZy5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKC4uLnQpe2NvbnN0IGU9KDAsaS5pc09iamVjdCkodFswXSksbj1lP3I6byxzPWU/KGUsbik9Pntjb25zdCBpPXRbMF07cmV0dXJuIHZvaWQgMCE9PWlbbl0/aVtuXTplfTooZSxuKT0+e2NvbnN0IGk9cGFyc2VJbnQobiwxMCkscj10W2ldO3JldHVybiB2b2lkIDAhPT1yP3I6ZX07cmV0dXJuIHRoaXMucmVwbGFjZShuLHMpfX0sMzYzMjY5KHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUse21vYmlsZXRvdWNoOigpPT5yLHNldENsYXNzZXM6KCk9PnMsdG91Y2g6KCk9Pm99KTt2YXIgaT1uKDczODQ1OCk7Y29uc3Qgcj1pLm1vYmlsZXRvdWNoLG89aS50b3VjaDtmdW5jdGlvbiBzKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoaS50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLGkubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwzMTg5NzQodCxlLG4peyJ1c2Ugc3RyaWN0IjtuLmQoZSx7Q2hlY2tNb2JpbGU6KCk9PmMsaXNEZXNrdG9wQXBwOigpPT51LGlzTGludXg6KCk9PmEsaXNNYWM6KCk9PnMsaXNTYWZhcmk6KCk9PmgsaXNTeW1waG9ueUVtYmVkOigpPT5sLG9uR29Qcm86KCk9PmQsCm9uV2lkZ2V0OigpPT5yLm9uV2lkZ2V0LHN1cHBvcnRUb3VjaDooKT0+Zn0pO3ZhciBpPW4oNzM4NDU4KSxyPW4oMzc3MjI2KTtjb25zdCBvPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gaS5pc01hY31mdW5jdGlvbiBhKCl7cmV0dXJuIGkuaXNMaW51eH1mdW5jdGlvbiB1KCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gbCgpe3JldHVybiBvLmlzU3ltcGhvbnl8fCExfWNvbnN0IGM9e0FuZHJvaWQ6KCk9PmkuaXNBbmRyb2lkLEJsYWNrQmVycnk6KCk9PmkuaXNCbGFja0JlcnJ5LGlPUzooKT0+aS5pc0lPUyxPcGVyYTooKT0+aS5pc09wZXJhTWluaSxpc0lQYWQ6KCk9PmkuaXNJUGFkLGFueTooKT0+aS5pc0FueU1vYmlsZX07ZnVuY3Rpb24gZigpe3JldHVybiBpLm1vYmlsZXRvdWNofHxpLnRvdWNofHxpLmlzQW55TW9iaWxlfW8uaXNNb2JpbGU9YyxvLm9uV2lkZ2V0PXIub25XaWRnZXQ7aS5pc0Nocm9tZSxpLmlzRkYsaS5pc0VkZ2U7Y29uc3QgaD1pLmlzU2FmYXJpO2Z1bmN0aW9uIGQoKXtyZXR1cm4iL3ByaWNpbmcvIj09PXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZX19LDMzNjMzNCh0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oMTI5MzY1KTtlLmNyZWF0ZVJvb3Q9aS5jcmVhdGVSb290LGkuaHlkcmF0ZVJvb3R9LDEyOTM2NSh0LGUsbil7InVzZSBzdHJpY3QiOyFmdW5jdGlvbiB0KCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRSh0KX1jYXRjaCh0KXtjb25zb2xlLmVycm9yKHQpfX0oKSx0LmV4cG9ydHM9big1MzIzODcpfSw3Nzk0NzQodCxlLG4peyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9bigxMjI3NDkpfSw5ODY3MDUodCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKDQ4MjUwNCkscj1uKDM2MzI2OSkubW9iaWxldG91Y2g7IWZ1bmN0aW9uKHQsZSxuKXtmdW5jdGlvbiBpKGkscil7cj1yfHxpK247dmFyIG89dCgpLHM9aSsiLiIrcisiLXNwZWNpYWwtZXZlbnQiO2Z1bmN0aW9uIGEoZSl7dChvKS5lYWNoKChmdW5jdGlvbigpe3ZhciBuPXQodGhpcyk7dGhpcz09PWUudGFyZ2V0fHxuLmhhcyhlLnRhcmdldCkubGVuZ3RofHxuLnRyaWdnZXJIYW5kbGVyKHIsW2UudGFyZ2V0XSl9KSl9dC5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe2RlbGV0ZShvPW8uYWRkKHRoaXMpKS5wcmV2T2JqZWN0LDE9PT1vLmxlbmd0aCYmdChlKS5iaW5kKHMsYSl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7ZGVsZXRlKG89by5ub3QodGhpcykpLnByZXZPYmplY3QsMD09PW8ubGVuZ3RoJiZ0KGUpLnVuYmluZChzKX0sYWRkOmZ1bmN0aW9uKHQpe3ZhciBlPXQuaGFuZGxlcjt0LmhhbmRsZXI9ZnVuY3Rpb24odCxuKXt0LnRhcmdldD1uLGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfX19fXQubWFwKCJjbGljayBkYmxjbGljayBtb3VzZW1vdmUgbW91c2Vkb3duIG1vdXNldXAgbW91c2VvdmVyIG1vdXNlb3V0IGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKHQpe2kodCl9KSksaSgiZm9jdXNpbiIsImZvY3VzIituKSxpKCJmb2N1c291dCIsImJsdXIiK24pLHImJihpKCJ0b3VjaHN0YXJ0IiwibW91c2Vkb3duIituKSxpKCJ0b3VjaG1vdmUiLCJtb3VzZW1vdmUiK24pLGkoInRvdWNoZW5kIiwibW91c2V1cCIrbikpLHQuYWRkT3V0c2lkZUV2ZW50PWl9KGksZG9jdW1lbnQsIm91dHNpZGUiKX0sOTM0MTkodCxlLG4peyJ1c2Ugc3RyaWN0IjtuKDQwNjA3Mil9LDM2NDgzOCh0LGUsbil7InVzZSBzdHJpY3QiO24oOTM0MTkpLG4oNjY2MzQ5KSxuKDI4OTEzMil9LDcxMTk3OSh0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpLHIsbyxzLGE9big0ODI1MDQpO3I9KGk9YSkod2luZG93KSxvPWkoZG9jdW1lbnQpLHM9ZnVuY3Rpb24odCl7dmFyIGU9YS5kYXRhKHQudGFyZ2V0KTtlLmxvY2FsU2Nyb2xsP3QudGFyZ2V0LnNjcm9sbFRvcD50LnRhcmdldC5zY3JvbGxIZWlnaHQtaSh0LnRhcmdldCkuaGVpZ2h0KCktKGUudG9sZXJhbmNlfHwxOTApJiZpKHRoaXMpLnRyaWdnZXIoInNjcm9sbHRvZW5kIik6ci5zY3JvbGxUb3AoKT5vLmhlaWdodCgpLXIuaW5uZXJIZWlnaHQoKS0oZS50b2xlcmFuY2V8fDE5MCkmJmkodGhpcykudHJpZ2dlcigic2Nyb2xsdG9lbmQiKX0saS5ldmVudC5zcGVjaWFsLnNjcm9sbHRvZW5kPXtzZXR1cDpmdW5jdGlvbih0LGUpe2kodGhpcykuYmluZCgic2Nyb2xsLnNjcm9sbHRvZW5kIixzKX0sdGVhcmRvd246ZnVuY3Rpb24odCl7aSh0aGlzKS51bmJpbmQoInNjcm9sbC5zY3JvbGx0b2VuZCIscyl9fSxhLmV2ZW50LnNwZWNpYWwuc2Nyb2xsdG89e2JpbmRUeXBlOiJzY3JvbGwiLGhhbmRsZTpmdW5jdGlvbih0KXt2YXIgZT10LmhhbmRsZU9iajt0LnNjcm9sbERhdGF8fCh0LnNjcm9sbERhdGE9e3Njcm9sbFRvcDpyLnNjcm9sbFRvcCgpfSk7dmFyIG49bnVsbDtpZigibnVtYmVyIj09dHlwZW9mIHQuZGF0YS50byluPXQuc2Nyb2xsRGF0YS5zY3JvbGxUb3A+dC5kYXRhLnRvLSh0LmRhdGEudG9sZXJhbmNlfHwwKTtlbHNle2lmKCJib3R0b20iIT09dC5kYXRhLnRvKXRocm93IG5ldyBFcnJvcignU3BlY2lhbCBldmVudCBzY3JvbGx0bzogcHJvcGVydHkgInRvIiBoYXMgdW5leHBlY3RlZCB2YWx1ZScpO3Quc2Nyb2xsRGF0YS5ib3R0b21PZmZzZXR8fCh0LnNjcm9sbERhdGEuYm90dG9tT2Zmc2V0PW8uaGVpZ2h0KCktci5pbm5lckhlaWdodCgpKSxuPXQuc2Nyb2xsRGF0YS5zY3JvbGxUb3A+dC5zY3JvbGxEYXRhLmJvdHRvbU9mZnNldC0odC5kYXRhLnRvbGVyYW5jZXx8MCl9dmFyIGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmFwcGx5KGFyZ3VtZW50cyk7cmV0dXJuIG4/KGkucHVzaCghMCksCmUuaGFuZGxlci5hcHBseSh0aGlzLGkpKTp0LmRhdGEudHdvd2F5PyhpLnB1c2goITEpLGUuaGFuZGxlci5hcHBseSh0aGlzLGkpKTp2b2lkIDB9fX0sODcyODgxKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUse2RlZmF1bHQ6KCk9Pk19KTt2YXIgaT1uKDg4NjUxNCkscj1uKDI2OTM2Nik7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK248aTspaWYoZSh0W25dLG4sdCkpcmV0dXJuITA7cmV0dXJuITF9O3ZhciBzPW4oNzEyODAxKTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxuLGksYSx1KXt2YXIgbD0xJm4sYz10Lmxlbmd0aCxmPWUubGVuZ3RoO2lmKGMhPWYmJiEobCYmZj5jKSlyZXR1cm4hMTt2YXIgaD11LmdldCh0KSxkPXUuZ2V0KGUpO2lmKGgmJmQpcmV0dXJuIGg9PWUmJmQ9PXQ7dmFyIHA9LTEsdj0hMCxnPTImbj9uZXcgci5kZWZhdWx0OnZvaWQgMDtmb3IodS5zZXQodCxlKSx1LnNldChlLHQpOysrcDxjOyl7dmFyIG09dFtwXSx5PWVbcF07aWYoaSl2YXIgYj1sP2koeSxtLHAsZSx0LHUpOmkobSx5LHAsdCxlLHUpO2lmKHZvaWQgMCE9PWIpe2lmKGIpY29udGludWU7dj0hMTticmVha31pZihnKXtpZighbyhlLChmdW5jdGlvbih0LGUpe2lmKCEoMCxzLmRlZmF1bHQpKGcsZSkmJihtPT09dHx8YShtLHQsbixpLHUpKSlyZXR1cm4gZy5wdXNoKGUpfSkpKXt2PSExO2JyZWFrfX1lbHNlIGlmKG0hPT15JiYhYShtLHksbixpLHUpKXt2PSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUoZSksdn07dmFyIHU9big4NzI5OTkpLGw9big4NjUzMzApLGM9big5MTA3NzgpO2NvbnN0IGY9ZnVuY3Rpb24odCl7dmFyIGU9LTEsbj1BcnJheSh0LnNpemUpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKHQsaSl7blsrK2VdPVtpLHRdfSkpLG59O3ZhciBoPW4oOTcyMDE3KSxkPXUuZGVmYXVsdD91LmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxwPWQ/ZC52YWx1ZU9mOnZvaWQgMDtjb25zdCB2PWZ1bmN0aW9uKHQsZSxuLGkscixvLHMpe3N3aXRjaChuKXtjYXNlIltvYmplY3QgRGF0YVZpZXddIjppZih0LmJ5dGVMZW5ndGghPWUuYnl0ZUxlbmd0aHx8dC5ieXRlT2Zmc2V0IT1lLmJ5dGVPZmZzZXQpcmV0dXJuITE7dD10LmJ1ZmZlcixlPWUuYnVmZmVyO2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiEodC5ieXRlTGVuZ3RoIT1lLmJ5dGVMZW5ndGh8fCFvKG5ldyBsLmRlZmF1bHQodCksbmV3IGwuZGVmYXVsdChlKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuKDAsYy5kZWZhdWx0KSgrdCwrZSk7Y2FzZSJbb2JqZWN0IEVycm9yXSI6cmV0dXJuIHQubmFtZT09ZS5uYW1lJiZ0Lm1lc3NhZ2U9PWUubWVzc2FnZTtjYXNlIltvYmplY3QgUmVnRXhwXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiB0PT1lKyIiO2Nhc2UiW29iamVjdCBNYXBdIjp2YXIgdT1mO2Nhc2UiW29iamVjdCBTZXRdIjp2YXIgZD0xJmk7aWYodXx8KHU9aC5kZWZhdWx0KSx0LnNpemUhPWUuc2l6ZSYmIWQpcmV0dXJuITE7dmFyIHY9cy5nZXQodCk7aWYodilyZXR1cm4gdj09ZTtpfD0yLHMuc2V0KHQsZSk7dmFyIGc9YSh1KHQpLHUoZSksaSxyLG8scyk7cmV0dXJuIHMuZGVsZXRlKHQpLGc7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOmlmKHApcmV0dXJuIHAuY2FsbCh0KT09cC5jYWxsKGUpfXJldHVybiExfTt2YXIgZz1uKDgwNjI0MCksbT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IHk9ZnVuY3Rpb24odCxlLG4saSxyLG8pe3ZhciBzPTEmbixhPSgwLGcuZGVmYXVsdCkodCksdT1hLmxlbmd0aDtpZih1IT0oMCxnLmRlZmF1bHQpKGUpLmxlbmd0aCYmIXMpcmV0dXJuITE7Zm9yKHZhciBsPXU7bC0tOyl7dmFyIGM9YVtsXTtpZighKHM/YyBpbiBlOm0uY2FsbChlLGMpKSlyZXR1cm4hMX12YXIgZj1vLmdldCh0KSxoPW8uZ2V0KGUpO2lmKGYmJmgpcmV0dXJuIGY9PWUmJmg9PXQ7dmFyIGQ9ITA7by5zZXQodCxlKSxvLnNldChlLHQpO2Zvcih2YXIgcD1zOysrbDx1Oyl7dmFyIHY9dFtjPWFbbF1dLHk9ZVtjXTtpZihpKXZhciBiPXM/aSh5LHYsYyxlLHQsbyk6aSh2LHksYyx0LGUsbyk7aWYoISh2b2lkIDA9PT1iP3Y9PT15fHxyKHYseSxuLGksbyk6Yikpe2Q9ITE7YnJlYWt9cHx8KHA9ImNvbnN0cnVjdG9yIj09Yyl9aWYoZCYmIXApe3ZhciBfPXQuY29uc3RydWN0b3Isdz1lLmNvbnN0cnVjdG9yO189PXd8fCEoImNvbnN0cnVjdG9yImluIHQpfHwhKCJjb25zdHJ1Y3RvciJpbiBlKXx8ImZ1bmN0aW9uIj09dHlwZW9mIF8mJl8gaW5zdGFuY2VvZiBfJiYiZnVuY3Rpb24iPT10eXBlb2YgdyYmdyBpbnN0YW5jZW9mIHd8fChkPSExKX1yZXR1cm4gby5kZWxldGUodCksby5kZWxldGUoZSksZH07dmFyIGI9big5Njk3ODUpLF89bigyOTU2MzUpLHc9big2NTkwMTgpLHg9bigxNjUyNjcpLE89IltvYmplY3QgQXJndW1lbnRzXSIsRT0iW29iamVjdCBBcnJheV0iLEM9IltvYmplY3QgT2JqZWN0XSIsaz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IFM9ZnVuY3Rpb24odCxlLG4scixvLHMpe3ZhciB1PSgwLF8uZGVmYXVsdCkodCksbD0oMCxfLmRlZmF1bHQpKGUpLGM9dT9FOigwLGIuZGVmYXVsdCkodCksZj1sP0U6KDAsYi5kZWZhdWx0KShlKSxoPShjPWM9PU8/QzpjKT09QyxkPShmPWY9PU8/QzpmKT09QyxwPWM9PWY7aWYocCYmKDAsdy5kZWZhdWx0KSh0KSl7aWYoISgwLHcuZGVmYXVsdCkoZSkpcmV0dXJuITE7dT0hMCxoPSExfWlmKHAmJiFoKXJldHVybiBzfHwocz1uZXcgaS5kZWZhdWx0KSx1fHwoMCx4LmRlZmF1bHQpKHQpP2EodCxlLG4scixvLHMpOnYodCxlLGMsbixyLG8scyk7aWYoISgxJm4pKXt2YXIgZz1oJiZrLmNhbGwodCwiX193cmFwcGVkX18iKSxtPWQmJmsuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKGd8fG0pe3ZhciBTPWc/dC52YWx1ZSgpOnQsRD1tP2UudmFsdWUoKTplO3JldHVybiBzfHwocz1uZXcgaS5kZWZhdWx0KSxvKFMsRCxuLHIscyl9fXJldHVybiEhcCYmKHN8fChzPW5ldyBpLmRlZmF1bHQpLAp5KHQsZSxuLHIsbyxzKSl9O3ZhciBEPW4oMzYwNjIwKTtjb25zdCBNPWZ1bmN0aW9uIHQoZSxuLGkscixvKXtyZXR1cm4gZT09PW58fChudWxsPT1lfHxudWxsPT1ufHwhKDAsRC5kZWZhdWx0KShlKSYmISgwLEQuZGVmYXVsdCkobik/ZSE9ZSYmbiE9bjpTKGUsbixpLHIsdCxvKSl9fSwxNjc1MDIodCxlLG4peyJ1c2Ugc3RyaWN0IjtuLmQoZSx7ZGVmYXVsdDooKT0+cn0pO3ZhciBpPW4oODcyODgxKTtjb25zdCByPWZ1bmN0aW9uKHQsZSl7cmV0dXJuKDAsaS5kZWZhdWx0KSh0LGUpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/59941.af22f3ab83cdfcc3935a.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.134Z","timestamp":1785154591134,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/59941.af22f3ab83cdfcc3935a.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785154591.1.1785154591..b177bc9a-34b2-4836-9972-6f558777cbde..f8ff18cc-c06f-46ed-8329-31a0a2ab1153.1785154591101.1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b70-2da\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:20 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 74db33497aa2eb60c15fa4f954826809\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":730,"size_decoded":1064,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (730), with no line terminators","md5":"d829b77313e592f8d1913e78559754cd","sha1":"4bb78c4325498d327399604dd0dd90aa01fc6c87","sha256":"fdce8cb0a541548e40c8119d9c9bfcf3a9759dab795202f5302b4806a5938d50","sha512":"b1fa8c3f6815776f559376b98c708080898a95bd9128718fed3bb876db210241ae2be25002f53de0843ab5eb05c194a2f2f7f4a0b1000577797bf91ad7dbce5b","ssdeep":"","tlshash":"eb0128dea3465539e633dd73035783cb3004f6a28d389919fa44e92544cf7f04424d0e","first_seen":"2025-07-09T16:57:52.264591Z","last_seen":"2026-07-27T14:18:36.433053Z","times_seen":10731,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtVDJTTzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1UMlNPOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtVDJTTzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV8xLVQyU086dmFyKC0tY29sb3Itd2hpdGUpfS5sYWJlbC1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLV8wLVQyU08pfS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3Zne2hlaWdodDoxMHB4O21hcmdpbjo3cHggMDt3aWR0aDoxN3B4fS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3ZnIHBhdGh7ZmlsbDp2YXIoLS1fMS1UMlNPKX0ubGFiZWwtZTljNmR5Y1YgLnN2Z1RleHRXcmFwLWU5YzZkeWNWIHN2Z3ttYXJnaW46NnB4IDB9LmxhYmVsLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmcgcGF0aHtmaWxsOnZhcigtLV8xLVQyU08pfS5sYWJlbC1lOWM2ZHljVi5sYXJnZS1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSl9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5sb2dvV3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjExcHg7bWFyZ2luOjExcHggMCAxMHB4O3dpZHRoOjIwcHh9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjE0cHg7bWFyZ2luOjEwcHggMDt3aWR0aDo3N3B4fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80097.0a3cfdc2802879522aec.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.199Z","timestamp":1785154590199,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80097.0a3cfdc2802879522aec.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-1a12\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 94fddd8c03a7e1601a11fc1bf1b8d41f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":6674,"size_decoded":2450,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (6674), with no line terminators","md5":"f0f634ef413698b5d2803a87d22f7371","sha1":"ab445a3dad78a0af77a6322c79837164dfd71745","sha256":"1e4004685024a3a4b841fc7a40ed6764efd60d076fe2e0c80cdbbf12774e9185","sha512":"47e707e11fa655ed28f08621ee8c795d8b011467a77b8d0d9c5f726095defe1ed1bfaf8cc7cfdd1b9aaa695fd7547e66f982736269473037353f153cdb81e031","ssdeep":"96:DLRLhVLZjin09Bfgc0H3IFtxsIRH0kq7fDvLNvqK/VmTqX:lLA0Ic0H4FtxV10kq7fDvL9qK/VmTc","tlshash":"c4d14622531ea0ff2177aa294bdc4f0f4e35d5a1d6a2760c93192b940b8f7fc47e560a","first_seen":"2026-07-16T11:36:17.8282Z","last_seen":"2026-07-27T14:17:30.941413Z","times_seen":956,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtOEhRSjojMDAwMDstLV8xLThIUUo6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC04SFFKOiMwMDAwOy0tXzEtOEhRSjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKX1hLnR2LXRpY2tlci1pdGVtLXRhcGV7b3ZlcmZsb3c6aGlkZGVufS50di10aWNrZXItaXRlbS10YXBle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDowIDAgYXV0bztmb250LXNpemU6MTZweDtoZWlnaHQ6NDRweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10aWNrZXItaXRlbS10YXBlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcil9fS50di10aWNrZXItaXRlbS10YXBle291dGxpbmU6bm9uZTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlfS50di10aWNrZXItaXRlbS10YXBlOmZvY3Vze291dGxpbmU6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6MX0udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1czphZnRlcntkaXNwbGF5OmJsb2NrfS50di10aWNrZXItaXRlbS10YXBlOmZvY3VzLXZpc2libGU6YWZ0ZXJ7ZGlzcGxheTpibG9ja30udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpOmFmdGVye2Rpc3BsYXk6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlKTtib3JkZXItcmFkaXVzOjJweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fYm9yZGVyLXdyYXBwZXJ7Ym9yZGVyLWlubGluZS1lbmQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtwYWRkaW5nLWlubGluZS1zdGFydDoxNnB4O3dpZHRoOjEwMCV9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2JvcmRlci13cmFwcGVyLC50di10aWNrZXItaXRlbS10YXBlX19pbm5lci13cmFwcGVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCV9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyLC50di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcntkaXNwbGF5OmZsZXh9LnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnttYXJnaW4taW5saW5lLWVuZDoxMnB4fS50di10aWNrZXItaXRlbS10YXBlX19pY29uLXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGVfX3N5bWJvbHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4fS50di10aWNrZXItaXRlbS10YXBlX19pY29ue21hcmdpbi1pbmxpbmUtZW5kOjhweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZXtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwfS50di10aWNrZXItaXRlbS10YXBlX19sYXN0e2JvcmRlci1yYWRpdXM6M3B4O21hcmdpbjotMXB4IC0ycHg7cGFkZGluZzoxcHggMnB4O3RyYW5zaXRpb24tZHVyYXRpb246LjM1czt0cmFuc2l0aW9uLXByb3BlcnR5OmJhY2tncm91bmR9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3QtLWdyb3dpbmd7Y29sb3I6dmFyKC0tY29sb3ItZ3Jvd2luZyl9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3QtLWZhbGxpbmd7Y29sb3I6dmFyKC0tY29sb3ItZmFsbGluZyl9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVye21hcmdpbi1pbmxpbmUtc3RhcnQ6MTJweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXItLXVwe2NvbG9yOnZhcigtLWNvbG9yLWdyb3dpbmcpfS50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlci0tZG93bntjb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKX0udHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLWFicywudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXB0e2RpcmVjdGlvbjpsdHJ9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3R7Zm9udC1zaXplOjE0cHg7aGVpZ2h0OjcycHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2lubmVyLXdyYXBwZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnttYXJnaW4taW5saW5lLWVuZDowfS50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19zeW1ib2x7bWFyZ2luLWJvdHRvbTo0cHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwfS50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19sYXN0e2ZvbnQtd2VpZ2h0OjcwMH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9faWNvbnttYXJnaW4taW5saW5lLWVuZDo2cHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVye21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXItLWRvd24sLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyLS11cHttYXJnaW4tbGVmdDotN3B4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbntwb2ludGVyLWV2ZW50czpub25lO3dpZHRoOjM0NnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fYm9yZGVyLXdyYXBwZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjB9LnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24gLnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3Qtd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24gLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcntiYWNrZ3JvdW5kOnZhcigtLV8xLThIUUopO2JvcmRlci1yYWRpdXM6NnB4O2hlaWdodDoxNnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVye3dpZHRoOjEwMHB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fbGFzdC13cmFwcGVye3dpZHRoOjcwcHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlcnt3aWR0aDoxMTBweH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdHt3aWR0aDoxMjVweH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3Qtd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVye2hlaWdodDoxMnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbi50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnt3aWR0aDo3MnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbi50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlcnt3aWR0aDo5MnB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtdGlja2VyLWl0ZW0tdGFwZS0tdHJhbnNwYXJlbnQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1fMC04SFFKKX19LnR2LXRpY2tlci1pdGVtLXRhcGUtLXRyYW5zcGFyZW50IC50di10aWNrZXItaXRlbS10YXBlX19ib3JkZXItd3JhcHBlcntib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKX0udHYtdGlja2VyLWl0ZW0tdGFwZV9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmt7YWxpZ24tc2VsZjpjZW50ZXI7YmFja2dyb3VuZDp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgdmlld0JveD0nMCAwIDEwIDEwJyUzRSUzQ3BhdGggZmlsbD0nJTIzZmY0YTY4JyBkPSdNNSAxMEE1IDUgMCAxIDAgNSAwYTUgNSAwIDAgMCAwIDEwbS0uNS0zaDFjLjYgMCAuNiAxIDAgMWgtMWMtLjYgMC0uNi0xIDAtMU00IDJoMnYybC0uNSAyaC0xTDQgNHonLyUzRSUzQy9zdmclM0UiKSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb250YWluO2N1cnNvcjpkZWZhdWx0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O3dpZHRoOjE2cHh9LnRpY2tlclRhcGUtTl9reXBqdDl7b3ZlcmZsb3c6aGlkZGVufS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OXtvdmVyZmxvdy14OnNjcm9sbH1Ac3VwcG9ydHMgKC1tb3otYXBwZWFyYW5jZTpub25lKXsudGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDl7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9fS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OS5zYi1zY3JvbGxiYXItd3JhcHtkaXNwbGF5Om5vbmV9LnRpY2tlclRhcGUtTl9reXBqdDkubm9BdXRvU2Nyb2xsLU5fa3lwanQ5Ojotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmU7aGVpZ2h0OjA7d2lkdGg6MH0udGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLC50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7ZGlzcGxheTpub25lfS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0udGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDkgLnRhcGUtTl9reXBqdDl7YW5pbWF0aW9uOm5vbmV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnRpY2tlclRhcGUtTl9reXBqdDl7b3ZlcmZsb3cteDpzY3JvbGx9QHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6bm9uZSl7LnRpY2tlclRhcGUtTl9reXBqdDl7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9fS50aWNrZXJUYXBlLU5fa3lwanQ5LnNiLXNjcm9sbGJhci13cmFwe2Rpc3BsYXk6bm9uZX0udGlja2VyVGFwZS1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lO2hlaWdodDowO3dpZHRoOjB9LnRpY2tlclRhcGUtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLC50aWNrZXJUYXBlLU5fa3lwanQ5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tkaXNwbGF5Om5vbmV9LnRpY2tlclRhcGUtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9fS50YXBlLU5fa3lwanQ5e2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLXBsYXktc3RhdGU6cnVubmluZzthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0b31AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnRhcGUtTl9reXBqdDk6aG92ZXJ7YW5pbWF0aW9uLXBsYXktc3RhdGU6cGF1c2VkfX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsudGFwZS1OX2t5cGp0OXthbmltYXRpb24tcGxheS1zdGF0ZTpwYXVzZWR9fS5oZWFkLU5fa3lwanQ5LC5za2VsZXRvbi1OX2t5cGp0OSwudGFpbC1OX2t5cGp0OXtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0b30="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3552.4c5535183b7a0330a89d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.288Z","timestamp":1785154590288,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3552.4c5535183b7a0330a89d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-2fa2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:37\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a25b744a2cf40fb75112cdab29cbe731\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":12194,"size_decoded":4814,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3071)","md5":"8cb7d12d58618d9e9433db7cf169e678","sha1":"dd2e2830dd9f4f8c3e4000fb90c94712f7315f67","sha256":"e54bba4bdf7867aec664fc0c023a4e77650464bb7e2e1a2d80ef75500363cd92","sha512":"9c9ce4a19d03df706a0fb6495901a15dd961b87797e48e43669a130ec51d4d3788fcd9e251dd54f1560134509553e5c7a1cc17249ad1f6f562d104b6b10d9a66","ssdeep":"192:ETCSGJXJ6h4GX8tWKEN7Nbj61RO2g6OQLgwF8TEz5XnC/x6/v60KjBHAH4yiFbBw:EmSGehtqWNN7Nbj61ROQLRF8TkVNjaAj","tlshash":"ab42b53d719358a8666780e980390b7ba6283980a58741bcfb78dccf46cddd46277f38","first_seen":"2026-07-22T11:33:41.980937Z","last_seen":"2026-07-27T14:18:36.416705Z","times_seen":1761,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNTUyXSx7NDUwMjk1KHQpe3QuZXhwb3J0cz17fX0sNDYyMzUodCl7dC5leHBvcnRzPXt9fSw5NzMxMTkodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7cXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2U6KCk9Pm59KTt2YXIgaT1zKDc1NTYyNyksYT1zKDk4NDM3Nik7dmFyIG89cygyMTYxMSk7ZnVuY3Rpb24gbih0LGUscyl7Y29uc3Qgbj0oMCxvLnRvTnVtYmVyT3JVbmRlZmluZWQpKHQpO2lmKCJlY29ub21pYyI9PT1lPy50eXBlJiYwPT09bnx8dm9pZCAwPT09bilyZXR1cm47Y29uc3QgbD1zPy5jdXN0b21QcmljZUZvcm1hdHRlcnx8InZvbHVtZSI9PT1lLmZvcm1hdCYmbmV3IGEuVm9sdW1lRm9ybWF0dGVyKHtwcmVjaXNpb246Mn0pfHxuZXcgaS5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTplLnByaWNlc2NhbGV8fDEwMCxtaW5Nb3ZlOmUubWlubW92fHwxLGZyYWN0aW9uYWw6ZS5mcmFjdGlvbmFsLG1pbk1vdmUyOmUubWlubW92ZTJ9KSxyPXZvaWQgMCE9PXM/LnNpZ25Qb3NpdGl2ZUNoYW5nZT9zLnNpZ25Qb3NpdGl2ZUNoYW5nZTpzPy5zaWduUG9zaXRpdmU7cmV0dXJuKCh0LGU9ITApPT5lP2AoJHt0fSlgOnQpKGwuZm9ybWF0KG4se3NpZ25Qb3NpdGl2ZTpyLHNpZ25OZWdhdGl2ZTpzPy5zaWduTmVnYXRpdmV9KSxzPy5jaGFuZ2VJbkJyYWNrZXRzKX19LDYwMjg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3F1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3k6KCk9PmF9KTt2YXIgaT1zKDE4NTI3MSk7ZnVuY3Rpb24gYSh0KXtzd2l0Y2godCl7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtjYXNlIlBDVERZIjpyZXR1cm4gaS50KG51bGwse2NvbnRleHQ6Il9tYXhfbGVuXzkifSxzKDQ0NTA1KSk7Y2FzZSJQQ1RQQVIiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNDY4NDYwKSk7ZGVmYXVsdDpyZXR1cm4gdH19Nzg2NzYwKHQsZSxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtyZXR1cm4ibWN4X2ZyZWUiPT09dH1mdW5jdGlvbiBhKHQpe3JldHVybiEhdCYmKGkodC5zeW1ib2xuYW1lKXx8InBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZpKHQudmFsdWVzPy5hbHRlcm5hdGl2ZSkpfXMuZChlLHtpc01jeFF1b3RlRGF0YTooKT0+YX0pfSwxMDE3MTIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybiB0LmVuZHNXaXRoKCJfZGx5Iil9ZnVuY3Rpb24gYSh0KXtyZXR1cm4hIXQmJighKHZvaWQgMD09PXQuc3ltYm9sbmFtZXx8IWkodC5zeW1ib2xuYW1lKSl8fEJvb2xlYW4oInBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZ0LnZhbHVlcyYmdm9pZCAwIT09dC52YWx1ZXMuYWx0ZXJuYXRpdmUmJmkodC52YWx1ZXMuYWx0ZXJuYXRpdmUpKSl9cy5kKGUse2lzU2ZRdW90ZURhdGE6KCk9PmF9KX0sMjAyNDYwKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse0Fic3RyYWN0SW5kaWNhdG9yOigpPT5sfSk7dmFyIGk9cygyMjEwNjEpLGE9cygxNTAxNTApLG89cygxNTk1MTMpO3MoMzQ0Nzg1KTtjb25zdCBuPSgwLGkuZ2V0TG9nZ2VyKSgiR1VJLkJsb2Nrcy5BYnN0cmFjdEluZGljYXRvciIpO2NsYXNzIGx7Y29uc3RydWN0b3IodCl7dGhpcy5fY2xhc3NTdWZmaXg9IiIsdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJhYnN0cmFjdC1pbmRpY2F0b3IiLHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9zaG93VG9vbHRpcD0hMCx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuX3Rvb2x0aXBUeXBlPSJjdXN0b20iLHRoaXMuX2xhc3RUb29sdGlwVGV4dD0iIix0aGlzLl9xdW90ZVNlc3Npb249dC5xdW90ZVNlc3Npb259Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy5fdmFsdWV9Z2V0VG9vbHRpcFRleHQoKXtyZXR1cm4gdGhpcy5fbGFiZWxNYXBbdGhpcy5fdmFsdWVdfHwiIn1nZXRMYWJlbCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fZWx9dXBkYXRlKHQsZSl7dGhpcy5fdXBkYXRlVmFsdWUodCxlKSx0aGlzLl9yZW5kZXIoKX1zZXRUb29sdGlwRW5hYmxlZCh0PSExKXt0aGlzLl9zaG93VG9vbHRpcCE9PXQmJih0aGlzLl9zaG93VG9vbHRpcD10LHRoaXMuX3JlbmRlclRvb2x0aXAoKSl9ZW5hYmxlU2hvcnRNb2RlKCl7ITAhPT10aGlzLl9zaG9ydE1vZGUmJih0aGlzLl9zaG9ydE1vZGU9ITAsdGhpcy5fcmVuZGVyKCkpfWRpc2FibGVTaG9ydE1vZGUoKXshMSE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLG8uZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKHQpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09dCYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQsdGhpcy5fcmVuZGVyKCkpfV9pbml0KHQpe3RoaXMuX2VsPXQuZWw/dC5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPXQuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPXQuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPXQubGFiZWxNYXAsCnRoaXMuX3Nob3dUb29sdGlwPXQuc2hvd1Rvb2x0aXAsdGhpcy5fY2xhc3NTdWZmaXg9dC5jbGFzc1N1ZmZpeCx0aGlzLl9zeW1ib2xOYW1lPXQuc3ltYm9sLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQuc2Vzc2lvblN0YXR1c0ljb24sdGhpcy5fb25WYWx1ZUNoYW5nZT10Lm9uVmFsdWVDaGFuZ2UsdC50b29sdGlwVHlwZSYmKHRoaXMuX3Rvb2x0aXBUeXBlPXQudG9vbHRpcFR5cGUpLHRoaXMuX3F1b3RlU2Vzc2lvbkdVSUQ9KDAsYS5ndWlkKSgpLCEwPT09dC5zaG9ydCYmdGhpcy5lbmFibGVTaG9ydE1vZGUoKSx0LmRhdGEmJnRoaXMuX3VwZGF0ZVZhbHVlKHQuZGF0YSl9X2NsZWFyQ2xhc3Nlcygpe09iamVjdC52YWx1ZXModGhpcy5fY2xhc3NNYXApLm1hcCgodD0+e3RoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7dH1gKSx0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKGAke3R9JHt0aGlzLl9jbGFzc1N1ZmZpeH1gKX0pKX1fcmVuZGVyKCl7dGhpcy5fcmVuZGVyQ2xhc3NlcygpLHRoaXMuX3JlbmRlclRvb2x0aXAoKSx0aGlzLl9yZW5kZXJMYWJlbCgpfV9yZW5kZXJMYWJlbCgpe3RoaXMuX2VsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fdXBkYXRlVmFsdWUodCxlKXtjb25zdCBzPXRoaXMuX2dldFZhbHVlRnJvbURhdGEodCk7KGV8fHMhPT10aGlzLl92YWx1ZSkmJih0aGlzLl92YWx1ZT1zLHRoaXMuX29uVmFsdWVDaGFuZ2U/Lih0aGlzLl92YWx1ZSkpfV9yZW5kZXJDbGFzc2VzKCl7Y29uc3QgdD10aGlzLl9lbC5jbGFzc0xpc3Q7dC5hZGQodGhpcy5fY29tcG9uZW50Q2xhc3MsdGhpcy5fY29tcG9uZW50Q2xhc3MrdGhpcy5fY2xhc3NTdWZmaXgpO2NvbnN0IGU9dGhpcy5fY2xhc3NNYXBbdGhpcy5fdmFsdWVdO2Zvcihjb25zdCBzIGluIHRoaXMuX2NsYXNzTWFwKXtjb25zdCBpPXRoaXMuX2NsYXNzTWFwW3NdO2kmJihpPT09ZT8odC5hZGQoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5hZGQoaSsiX193aXRoSWNvbiIpKToodC5yZW1vdmUoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5yZW1vdmUoaSsiX193aXRoSWNvbiIpKSl9IWUmJnRoaXMuX3ZhbHVlJiZuLmxvZ1dhcm4oYG5vIGNsYXNzTmFtZSBmb3Igc3RhdHVzICR7dGhpcy5fdmFsdWV9YCl9X3JlbmRlclRvb2x0aXAoKXtjb25zdCB0PXRoaXMuX3Nob3dUb29sdGlwP3RoaXMuZ2V0VG9vbHRpcFRleHQoKToiIjt0IT09dGhpcy5fbGFzdFRvb2x0aXBUZXh0JiYodGhpcy5fbGFzdFRvb2x0aXBUZXh0PXQsdGhpcy5fZWwuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdCksImN1c3RvbSI9PT10aGlzLl90b29sdGlwVHlwZSYmdGhpcy5fZWwuY2xhc3NMaXN0LnRvZ2dsZSgiYXBwbHktY29tbW9uLXRvb2x0aXAiLHRoaXMuX3Nob3dUb29sdGlwKSl9X2dldFF1b3RlU2Vzc2lvbklkKCl7cmV0dXJuYCR7dGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4fS4ke3RoaXMuX3F1b3RlU2Vzc2lvbkdVSUR9YH19fSwzMDY5MCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtEYXRhTW9kZUluZGljYXRvcjooKT0+ZH0pO3ZhciBpLGE9cygxODUyNzEpLG89KHMoODI5MTgwKSxzKDQ1MDI5NSkscygyMDI0NjApKTshZnVuY3Rpb24odCl7dC5EZWxheWVkPSJkZWxheWVkIix0LkRlbGF5ZWRTdHJlYW1pbmc9ImRlbGF5ZWRfc3RyZWFtaW5nIix0LkVuZE9mRGF5PSJlbmRvZmRheSIsdC5TbmFwc2hvdD0ic25hcHNob3QiLHQuUmVhbHRpbWU9InJlYWx0aW1lIix0LkNvbm5lY3Rpbmc9ImNvbm5lY3RpbmciLHQuTG9hZGluZz0ibG9hZGluZyIsdC5JbnZhbGlkPSJpbnZhbGlkIix0LkZvcmJpZGRlbj0iZm9yYmlkZGVuIix0LlN0cmVhbWluZz0ic3RyZWFtaW5nIn0oaXx8KGk9e30pKTtjb25zdCBuPXtjb25uZWN0aW5nOiJ0di1kYXRhLW1vZGUtLWNvbm5lY3RpbmciLGRlbGF5ZWQ6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZGVsYXllZF9zdHJlYW1pbmc6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZW5kb2ZkYXk6InR2LWRhdGEtbW9kZS0tZW5kb2ZkYXkiLGZvcmJpZGRlbjoidHYtZGF0YS1tb2RlLS1mb3JiaWRkZW4iLHJlYWx0aW1lOiJ0di1kYXRhLW1vZGUtLXJlYWx0aW1lIixzbmFwc2hvdDoidHYtZGF0YS1tb2RlLS1zbmFwc2hvdCIsbG9hZGluZzoidHYtZGF0YS1tb2RlLS1sb2FkaW5nIixyZXBsYXk6InR2LWRhdGEtbW9kZS0tcmVwbGF5In07ZnVuY3Rpb24gbCgpe3JldHVybntjb25uZWN0aW5nOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfY29ubmVjdGluZ19sZXR0ZXIifSxzKDg1OTk5NCkpLGRlbGF5ZWQ6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LHMoODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxzKDM5NDUwMSkpLGVuZG9mZGF5OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxzKDU3MDkzOSkpLGZvcmJpZGRlbjphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxzKDM5NDkyMSkpLHJlYWx0aW1lOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0scyg4NjY0NCkpLHNuYXBzaG90OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0scygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxzKDc1NjQ1NykpfX1jb25zdCByPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgZCBleHRlbmRzIG8uQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KHQpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9CnNldE1vZGUodCxlKXt0aGlzLnVwZGF0ZSh7dmFsdWVzOnt1cGRhdGVfbW9kZTp0LHVwZGF0ZV9tb2RlX3NlY29uZHM6ZX19KX1oaWRlKCl7dGhpcy5fZWwuY2xhc3NMaXN0LmFkZCgiaS1oaWRkZW4iKX1zaG93KCl7dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX1nZXRUb29sdGlwVGV4dCgpe2xldCB0PSIiO2NvbnN0IGU9dGhpcy5nZXRWYWx1ZSgpO2lmKCIiPT09ZSlyZXR1cm4gdDtzd2l0Y2goZSl7Y2FzZSJkZWxheWVkIjp0PWEudChudWxsLHZvaWQgMCxzKDc5MDUyNCkpO2JyZWFrO2Nhc2UiZGVsYXllZF9zdHJlYW1pbmciOnQ9YS50KG51bGwsdm9pZCAwLHMoODE0NjEpKTticmVhaztkZWZhdWx0OnQ9dGhpcy5fbGFiZWxNYXBbZV18fHR9cmV0dXJuWyJkZWxheWVkIiwiZGVsYXllZF9zdHJlYW1pbmciXS5pbmNsdWRlcyhlKSYmKHQ9dC5mb3JtYXQoe251bWJlcjpTdHJpbmcoTWF0aC5yb3VuZCh0aGlzLl9tb2RlSW50ZXJ2YWwvNjApKX0pKSx0fV9pbml0KHQ9e30pe2NvbnN0IGU9T2JqZWN0LmFzc2lnbih7fSx7Y2xhc3NNYXA6bixjbGFzc1N1ZmZpeDoiIixkYXRhOnt2YWx1ZXM6e3VwZGF0ZV9tb2RlOiJjb25uZWN0aW5nIn19LGxhYmVsTWFwOntjb25uZWN0aW5nOmEudChudWxsLHZvaWQgMCxzKDE5NDE5NCkpLGRlbGF5ZWQ6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZW5kb2ZkYXk6YS50KG51bGwsdm9pZCAwLHMoNjAxNzY0KSksZm9yYmlkZGVuOmEudChudWxsLHZvaWQgMCxzKDMyODMxMykpLHJlYWx0aW1lOmEudChudWxsLHZvaWQgMCxzKDg4MzkyOCkpLHNuYXBzaG90OmEudChudWxsLHZvaWQgMCxzKDU2MjM5NSkpLGxvYWRpbmc6IiIscmVwbGF5OmEudChudWxsLHZvaWQgMCxzKDk3NzI3KSl9LG1vZGVJbnRlcnZhbDo2MDAsc2hvcnQ6ITEsc2hvcnRMYWJlbE1hcDpsKCksc2hvd1Rvb2x0aXA6ITAsdG9vbHRpcFR5cGU6ImN1c3RvbSJ9LHQpO3RoaXMuX21vZGVJbnRlcnZhbD1lLm1vZGVJbnRlcnZhbHx8NjAwLHRoaXMuX3Nob3J0TGFiZWxNYXA9ZS5zaG9ydExhYmVsTWFwfHxsKCksc3VwZXIuX2luaXQoZSksdGhpcy5fcmVuZGVyKCl9X2dldFZhbHVlRnJvbURhdGEodCl7bGV0IGU7cmV0dXJuIGU9dm9pZCAwIT09dC52YWx1ZXMmJnZvaWQgMCE9PXQudmFsdWVzLnVwZGF0ZV9tb2RlP3QudmFsdWVzLnVwZGF0ZV9tb2RlOnRoaXMuZ2V0VmFsdWUoKSxyW2VdfHxlfV91cGRhdGVWYWx1ZSh0LGUpe3ZvaWQgMCE9PXQudmFsdWVzJiZ2b2lkIDAhPT10LnZhbHVlcy51cGRhdGVfbW9kZV9zZWNvbmRzJiYodGhpcy5fbW9kZUludGVydmFsPXQudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMpLHN1cGVyLl91cGRhdGVWYWx1ZSh0LGUpfX19LDU2MzkxOCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtNYXJrZXRTdGF0dXNJbmRpY2F0b3I6KCk9Pmx9KTt2YXIgaT1zKDE4NTI3MSksYT1zKDIwMjQ2MCk7cyg0NjIzNSk7Y29uc3Qgbz17aW52YWxpZDoidHYtbWFya2V0LXN0YXR1cy0taW52YWxpZCIsbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQiLG91dF9vZl9zZXNzaW9uOiJ0di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbiIscG9zdF9tYXJrZXQ6InR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0IixwcmVfbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IixuaWdodDoidHYtbWFya2V0LXN0YXR1cy0tbmlnaHQiLGxvYWRpbmc6InR2LW1hcmtldC1zdGF0dXMtLWxvYWRpbmciLGhvbGlkYXk6InR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkiLHJlcGxheToidHYtbWFya2V0LXN0YXR1cy0tcmVwbGF5IixkZWxpc3RlZDoidHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQifSxuPXtpbnZhbGlkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1pbnZhbGlkIixtYXJrZXQ6InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW1hcmtldCIsb3V0X29mX3Nlc3Npb246InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW91dC1vZi1zZXNzaW9uIixwb3N0X21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcG9zdC1tYXJrZXQiLG5pZ2h0OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1uaWdodCIscHJlX21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcHJlLW1hcmtldCIsbG9hZGluZzoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tbG9hZGluZyIsaG9saWRheToidHYtbWFya2V0LXN0YXR1c19faWNvbi0taG9saWRheSIscmVwbGF5OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1yZXBsYXkiLGRlbGlzdGVkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1kZWxpc3RlZCJ9O2NsYXNzIGwgZXh0ZW5kcyBhLkFic3RyYWN0SW5kaWNhdG9ye2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMuX3F1b3RlU2Vzc2lvblByZWZpeD0ibWFya2V0LXN0YXR1cy1pbmRpY2F0b3IiLHRoaXMuX2NvbXBvbmVudENsYXNzPSJ0di1tYXJrZXQtc3RhdHVzIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2luaXQodCl9c2V0U3RhdHVzKHQsZSl7Y29uc3Qgcz17dmFsdWVzOntjdXJyZW50X3Nlc3Npb246ImRlbGlzdGVkIj09PXRoaXMuZ2V0VmFsdWUoKT8iZGVsaXN0ZWQiOnR9fTt0aGlzLnVwZGF0ZShzLGUpfWdldFRvb2x0aXBUZXh0KCl7bGV0IHQ9c3VwZXIuZ2V0VG9vbHRpcFRleHQoKTtyZXR1cm4iIj09PXR8fCIiIT09dGhpcy5fZXh0cmFUaXRsZSYmKHQ9YCR7dH0sICR7dGhpcy5fZXh0cmFUaXRsZX1gKSx0fXNldEV4dHJhVGl0bGUodCl7dGhpcy5fZXh0cmFUaXRsZT10fXJlc2V0KCl7dGhpcy5fY2xlYXJDbGFzc2VzKCksdGhpcy5fbGFiZWxFbC50ZXh0Q29udGVudD0iIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2VsLnNldEF0dHJpYnV0ZSgidGl0bGUiLCIiKSx0aGlzLl92YWx1ZT0iIn1lbmFibGVTaG9ydE1vZGUodD0hMCl7dm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpLHN1cGVyLmVuYWJsZVNob3J0TW9kZSgpfWRpc2FibGVTaG9ydE1vZGUoKXsKdm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpLHN1cGVyLmRpc2FibGVTaG9ydE1vZGUoKX1fcmVuZGVyTGFiZWwoKXt0aGlzLl9sYWJlbEVsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fZ2V0VmFsdWVGcm9tRGF0YSh0KXtyZXR1cm4gdC52YWx1ZXM/LnR5cGVzcGVjcz8uaW5jbHVkZXMoImRpc2NvbnRpbnVlZCIpPyJkZWxpc3RlZCI6dm9pZCAwIT09dC52YWx1ZXM/LmN1cnJlbnRfc2Vzc2lvbj90LnZhbHVlcy5jdXJyZW50X3Nlc3Npb246dGhpcy5nZXRWYWx1ZSgpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJMYWJlbEVsZW1lbnQoKSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbj90aGlzLl9yZW5kZXJJY29uRWxlbWVudCgpOnRoaXMuX3JlbmRlckRvdEVsZW1lbnQoKSxzdXBlci5fcmVuZGVyKCl9X2luaXQodCl7Y29uc3QgZT1PYmplY3QuYXNzaWduKHt9LGZ1bmN0aW9uKCl7Y29uc3QgdD17aW52YWxpZDppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoNjM4NDA1KSksbWFya2V0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg3MDI3ODgpKSxvdXRfb2Zfc2Vzc2lvbjppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoOTE0NTcyKSkscG9zdF9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDg2NzQ1NSkpLHByZV9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDkxODg0MikpLGxvYWRpbmc6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDI3NDQxNSkpLGhvbGlkYXk6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDY4NTEwNCkpLGRlbGlzdGVkOmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg1NTIxNSkpLG5pZ2h0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg4OTc1OTEpKSxyZXBsYXk6IiJ9O3JldHVybntjbGFzc01hcDpvLGljb25DbGFzc01hcDpuLGNsYXNzU3VmZml4OiIiLGRhdGE6e30sZXh0cmFUaXRsZToiIixsYWJlbE1hcDp0LHNob3J0OiExLHNob3dUb29sdGlwOiEwLHRvb2x0aXBUeXBlOiJjdXN0b20ifX0oKSx0KTtzdXBlci5faW5pdChlKSx0aGlzLnNldEV4dHJhVGl0bGUoZS5leHRyYVRpdGxlKSx0aGlzLl9yZW5kZXIoKX1fcmVuZGVyTGFiZWxFbGVtZW50KCl7dm9pZCAwPT09dGhpcy5fbGFiZWxFbCYmKHRoaXMuX2xhYmVsRWw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLHRoaXMuX2xhYmVsRWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2xhYmVsYCksdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKGAke3RoaXMuX2NvbXBvbmVudENsYXNzfV9fbGFiZWwke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2xhYmVsRWwpKX1fcmVuZGVyRG90RWxlbWVudCgpe3RoaXMuX2VsLmNvbnRhaW5zKHRoaXMuX2ljb25FbCkmJnRoaXMuX2VsLnJlbW92ZUNoaWxkKHRoaXMuX2ljb25FbCksdm9pZCAwPT09dGhpcy5fZG90RWwmJih0aGlzLl9kb3RFbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZG90RWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2RvdGApLHRoaXMuX2RvdEVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19kb3Qke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2RvdEVsKSl9X3JlbmRlckljb25FbGVtZW50KCl7dGhpcy5fZWwuY29udGFpbnModGhpcy5fZG90RWwpJiZ0aGlzLl9lbC5yZW1vdmVDaGlsZCh0aGlzLl9kb3RFbCksdm9pZCAwPT09dGhpcy5faWNvbkVsJiZ0aGlzLl92YWx1ZSYmKHRoaXMuX2ljb25FbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uYCksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uJHt0aGlzLl9jbGFzc1N1ZmZpeH1gKSx0aGlzLl9lbC5hcHBlbmRDaGlsZCh0aGlzLl9pY29uRWwpKX19fSw4OTE3NzgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UHJpY2VDb2xvcmVyOigpPT5pfSk7dmFyIGksYT1zKDIxODgxNCksbz1zKDUwNTU2KTshZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUpe3JldHVybiAwPT09dD9lJiZ2b2lkIDAhPT1lLm5ldXRyYWw/ZS5uZXV0cmFsOmEuY29sb3IuYmxhY2s3MDp0PjA/ZSYmdm9pZCAwIT09ZS51cD9lLnVwOm8uY29sb3JzUGFsZXR0ZVsiY29sb3Itc3VjY2VzcyJdOmUmJnZvaWQgMCE9PWUuZG93bj9lLmRvd246by5jb2xvcnNQYWxldHRlWyJjb2xvci1kYW5nZXIiXX10LmZvcm1hdFNpZ249ZSx0LmZvcm1hdERpZmY9ZnVuY3Rpb24odCxzKXtyZXR1cm4gZShzLXQpfSx0LmRvbURpZmZlcmVuY2U9ZnVuY3Rpb24odCxlLHM9MCxpPSIiLGE9IiIpe2Z1bmN0aW9uIG8odCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPXQsZX1jb25zdCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKCFzKXJldHVybiBuLmFwcGVuZENoaWxkKG8odCkpLG47Y29uc3QgbD10KyIiLHI9ZSsiIjtsZXQgZD1udWxsO2lmKGwubGVuZ3RoPT09ci5sZW5ndGgpe2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCsrKWlmKGwuY2hhckF0KHQpIT09ci5jaGFyQXQodCkpe2Q9dDticmVha319ZWxzZSBkPU51bWJlcigiMCIpO2lmKG51bGw9PT1kKXJldHVybiBuLmFwcGVuZENoaWxkKG8obCkpLG47Y29uc3QgXz1vKGwuc3Vic3RyaW5nKDAsZCkpLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiB1LmNsYXNzTmFtZT1zPDA/aTphLHUuYXBwZW5kQ2hpbGQobyhsLnN1YnN0cmluZyhkKSkpLG4uYXBwZW5kQ2hpbGQoXyksbi5hcHBlbmRDaGlsZCh1KSxufX0oaXx8KGk9e30pKX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"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.113.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"moz-nullprincipal:{df5b6ca5-68be-4660-ba0e-35b1a03e80ea}?https://persimmontrades.com","date":"2026-07-27T12:16:31.009Z","timestamp":1785154591009,"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":"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://persimmontrades.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\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 12:16:31 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=GZHA33dC1v7YDkWIiLEy7fcBVUxRdPWi1Ntp6IrQSSIQdvYBZ-JKJN0Wmnn1PYcYIqX4km7a9YKNKQ44qVH6nOsT1OK28tEZqBM_Z0yk8CcgklhRH1ePD8v4fmfO3o4O_Us97IsWCX8sjZYz3zC_Zs2fegmAeq6YrewHWVgdHXjGuzvkta_1YOYGExkWc1DX-4xYZ61hsZ1M7ztp4ZULcELa0bNaeQRF; expires=Tue, 26-Jan-2027 12:16:31 GMT; path=/; domain=.translate-pa.googleapis.com; HttpOnly\r\nexpires: Mon, 27 Jul 2026 12:16:31 GMT\r\ncache-control: private\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":31482,"size_decoded":3482,"mime_type":"text/javascript; charset=UTF-8","magic":"Unicode text, UTF-8 text","md5":"91115de97ad1a90076e130223cdd90ad","sha1":"f3ad22e4fa892dfbff0d083bc0465fc3a2240317","sha256":"816e9881b1955d8beff3011d93481dad4c4de71bbd80b50ac267e7e45d4c3bad","sha512":"fbca69c3431240ab374b9ccfb06d76074059cdfe2f153743b292020271a8a3a36885189594a97fd74b43249b1f6359af62dfd0731e7b50e024f37faebdccf620","ssdeep":"192:Z6STcB9aqiD0+52DdKXrWryLxizUSTcB9aqdD0+52DdKXrWryLxG:JTcbaU3KXiMxidTcbah3KXiMxG","tlshash":"d0e267bae8b50d9b6a5e65b416fa2a03306041db4edc3c053b1c1e4c6fdec1e6c7169e","first_seen":"2025-09-02T05:12:23.753308Z","last_seen":"2026-07-27T14:18:32.49442Z","times_seen":7643,"resource_available":true,"data":"Ly8gQVBJIGNhbGxiYWNrCmNhbGxiYWNrKHsKICAic291cmNlTGFuZ3VhZ2VzIjogWwogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXV0byIsCiAgICAgICJuYW1lIjogIkdqZW5ramVubiBzcHLDpWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWIiLAogICAgICAibmFtZSI6ICJhYmtoYXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNlIiwKICAgICAgIm5hbWUiOiAiYWNlaG5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhY2giLAogICAgICAibmFtZSI6ICJhY2hvbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWEiLAogICAgICAibmFtZSI6ICJhZmFyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFmIiwKICAgICAgIm5hbWUiOiAiYWZyaWthYW5zIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNxIiwKICAgICAgIm5hbWUiOiAiYWxiYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbHoiLAogICAgICAibmFtZSI6ICJhbHVyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFtIiwKICAgICAgIm5hbWUiOiAiYW1oYXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXIiLAogICAgICAibmFtZSI6ICJhcmFiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh5IiwKICAgICAgIm5hbWUiOiAiYXJtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheiIsCiAgICAgICJuYW1lIjogImFzZXJiYWpkc2phbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFzIiwKICAgICAgIm5hbWUiOiAiYXNzYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhdiIsCiAgICAgICJuYW1lIjogImF2YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXdhIiwKICAgICAgIm5hbWUiOiAiYXdhZGhpIgogICAgfSwKICAgIHsKICAgICAibGFuZ3VhZ2UiOiAiYXkiLAogICAgICAibmFtZSI6ICJheW1hcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmFuIiwKICAgICAgIm5hbWUiOiAiYmFsaW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYWwiLAogICAgICAibmFtZSI6ICJiYWx1dHNqaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibSIsCiAgICAgICJuYW1lIjogImJhbWJhcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmNpIiwKICAgICAgIm5hbWUiOiAiYmFvdWzDqSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYSIsCiAgICAgICJuYW1lIjogImJhc2praXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldSIsCiAgICAgICJuYW1lIjogImJhc2tpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnR4IiwKICAgICAgIm5hbWUiOiAiYmF0YWsga2FybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHMiLAogICAgICAibmFtZSI6ICJiYXRhayBzaW1hbHVuZ3VuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJiYyIsCiAgICAgICJuYW1lIjogImJhdGFrIHRvYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVtIiwKICAgICAgIm5hbWUiOiAiYmVtYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm4iLAogICAgICAibmFtZSI6ICJiZW5nYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJldyIsCiAgICAgICJuYW1lIjogImJldGF3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaG8iLAogICAgICAibmFtZSI6ICJiaG9qcHVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaWsiLAogICAgICAibmFtZSI6ICJiaWtvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJicyIsCiAgICAgICJuYW1lIjogImJvc25pc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnIiLAogICAgICAibmFtZSI6ICJicmV0b25zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZyIsCiAgICAgICJuYW1lIjogImJ1bGdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ1YSIsCiAgICAgICJuYW1lIjogImJ1cmphdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJteSIsCiAgICAgICJuYW1lIjogImJ1cm1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZWIiLAogICAgICAibmFtZSI6ICJjZWJ1YW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoIiwKICAgICAgIm5hbWUiOiAiY2hhbW9ycm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnkiLAogICAgICAibmFtZSI6ICJjaGljaGV3YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkYSIsCiAgICAgICJuYW1lIjogImRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZhLUFGIiwKICAgICAgIm5hbWUiOiAiZGFyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkdiIsCiAgICAgICJuYW1lIjogImRoaXZlaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGluIiwKICAgICAgIm5hbWUiOiAiZGlua2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG9pIiwKICAgICAgIm5hbWUiOiAiZG9ncmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG92IiwKICAgICAgIm5hbWUiOiAiZG9tYmUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHl1IiwKICAgICAgIm5hbWUiOiAiRHl1bGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHoiLAogICAgICAibmFtZSI6ICJkem9uZ2toYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbiIsCiAgICAgICJuYW1lIjogImVuZ2Vsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZW8iLAogICAgICAibmFtZSI6ICJlc3BlcmFudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXQiLAogICAgICAibmFtZSI6ICJlc3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZWUiLAogICAgICAibmFtZSI6ICJld2UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEiLAogICAgICAibmFtZSI6ICJmYXJzaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmaiIsCiAgICAgICJuYW1lIjogImZpamlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZpIiwKICAgICAgIm5hbWUiOiAiZmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm9uIiwKICAgICAgIm5hbWUiOiAiZm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyIiwKICAgICAgIm5hbWUiOiAiZnJhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyLUNBIiwKICAgICAgIm5hbWUiOiAiRnJhbnNrIChDYW5hZGEpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ5IiwKICAgICAgIm5hbWUiOiAiZnJpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmdXIiLAogICAgICAibmFtZSI6ICJmcml1bGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmZiIsCiAgICAgICJuYW1lIjogImZ1bGZ1bGRlIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZvIiwKICAgICAgIm5hbWUiOiAiZsOmcsO4eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdsIiwKICAgICAgIm5hbWUiOiAiZ2FsaXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2EiLAogICAgICAibmFtZSI6ICJnZW9yZ2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbCIsCiAgICAgICJuYW1lIjogImdyZXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImduIiwKICAgICAgIm5hbWUiOiAiZ3VhcmFuw60iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3UiLAogICAgICAibmFtZSI6ICJndWphcmF0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYWEiLAogICAgICAibmFtZSI6ICJnYWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY25oIiwKICAgICAgIm5hbWUiOiAiaGFraGEgY2hpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoYSIsCiAgICAgICJuYW1lIjogImhhdXNhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhdyIsCiAgICAgICJuYW1lIjogImhhd2FpaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml3IiwKICAgICAgIm5hbWUiOiAiaGVicmFpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGlsIiwKICAgICAgIm5hbWUiOiAiaGlsaWdheW5vbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaSIsCiAgICAgICJuYW1lIjogImhpbmRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhtbiIsCiAgICAgICJuYW1lIjogImhtb25nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyeCIsCiAgICAgICJuYW1lIjogImh1bnNyaWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmUiLAogICAgICAibmFtZSI6ICJodml0ZXJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWJhIiwKICAgICAgIm5hbWUiOiAiaWJhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZyIsCiAgICAgICJuYW1lIjogImlnYm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWxvIiwKICAgICAgIm5hbWUiOiAiaWxva2FubyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZCIsCiAgICAgICJuYW1lIjogImluZG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUtTGF0biIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUiLAogICAgICAibmFtZSI6ICJJbnVrdGl0dXQgKHN0YXZlbHNlKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYSIsCiAgICAgICJuYW1lIjogImlyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXMiLAogICAgICAibmFtZSI6ICJpc2xhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdCIsCiAgICAgICJuYW1lIjogIml0YWxpZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYWgiLAogICAgICAibmFtZSI6ICJqYWt1dGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYW0iLAogICAgICAibmFtZSI6ICJqYW1haWNhbnNrIHBhdG9pcyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYSIsCiAgICAgICJuYW1lIjogImphcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAianciLAogICAgICAibmFtZSI6ICJqYXZhbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInlpIiwKICAgICAgIm5hbWUiOiAiamlkZGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYWMiLAogICAgICAibmFtZSI6ICJqaW5ncG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieW8iLAogICAgICAibmFtZSI6ICJqb3J1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2wiLAogICAgICAibmFtZSI6ICJrYWxhYWxsaXN1dCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbiIsCiAgICAgICJuYW1lIjogImthbm5hZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVlIiwKICAgICAgIm5hbWUiOiAia2FudG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3IiLAogICAgICAibmFtZSI6ICJrYW51cmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFtIiwKICAgICAgIm5hbWUiOiAia2FwYW1wYW5nYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2siLAogICAgICAibmFtZSI6ICJrYXNha2hpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2EiLAogICAgICAibmFtZSI6ICJrYXRhbGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2VrIiwKICAgICAgIm5hbWUiOiAia2VrY2hpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtoYSIsCiAgICAgICJuYW1lIjogImtoYXNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImttIiwKICAgICAgIm5hbWUiOiAia2htZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2dnIiwKICAgICAgIm5hbWUiOiAia2lnYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZyIsCiAgICAgICJuYW1lIjogImtpa29uZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemgtQ04iLAogICAgICAibmFtZSI6ICJraW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydyIsCiAgICAgICJuYW1lIjogImtpbnlhcndhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt5IiwKICAgICAgIm5hbWUiOiAia2lyZ2lzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJuIiwKICAgICAgIm5hbWUiOiAia2lydW5kaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrdHUiLAogICAgICAibmFtZSI6ICJraXR1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHJwIiwKICAgICAgIm5hbWUiOiAia29rYm9yb2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3YiLAogICAgICAibmFtZSI6ICJrb21pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdvbSIsCiAgICAgICJuYW1lIjogImtvbmthbmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia28iLAogICAgICAibmFtZSI6ICJrb3JlYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbyIsCiAgICAgICJuYW1lIjogImtvcnNpa2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHQiLAogICAgICAibmFtZSI6ICJrcmVvbCAoSGFpdGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNycyIsCiAgICAgICJuYW1lIjogImtyZW9sIChTZXljaGVsbGVuZSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3JoIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChreXJpbGxpc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaC1MYXRuIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrcmkiLAogICAgICAibmFtZSI6ICJrcmlvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyIiwKICAgICAgIm5hbWUiOiAia3JvYXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3UiLAogICAgICAibmFtZSI6ICJrdXJkaXNrIChrdXJtYW5qaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2tiIiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoc29yYW5pKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbyIsCiAgICAgICJuYW1lIjogImxhb3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHRnIiwKICAgICAgIm5hbWUiOiAibGF0Z2FsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxhIiwKICAgICAgIm5hbWUiOiAibGF0aW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHYiLAogICAgICAibmFtZSI6ICJsYXR2aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpaiIsCiAgICAgICJuYW1lIjogImxpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpIiwKICAgICAgIm5hbWUiOiAibGltYnVyZ3NrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxuIiwKICAgICAgIm5hbWUiOiAibGluZ2FsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdCIsCiAgICAgICJuYW1lIjogImxpdGF1aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxtbyIsCiAgICAgICJuYW1lIjogImxvbWJhcmRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGciLAogICAgICAibmFtZSI6ICJsdWdhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1byIsCiAgICAgICJuYW1lIjogImx1byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYiIsCiAgICAgICJuYW1lIjogImx1eGVtYm91cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZyIsCiAgICAgICJuYW1lIjogIm1hZGFnYXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hZCIsCiAgICAgICJuYW1lIjogIm1hZHVyZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFpIiwKICAgICAgIm5hbWUiOiAibWFpdGhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFrIiwKICAgICAgIm5hbWUiOiAiTWFrYXNzYXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWsiLAogICAgICAibmFtZSI6ICJtYWtlZG9uc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWwiLAogICAgICAibmFtZSI6ICJtYWxheWFsYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMiLAogICAgICAibmFtZSI6ICJtYWxheWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtcy1BcmFiIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2sgKGphd2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm10IiwKICAgICAgIm5hbWUiOiAibWFsdGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hbSIsCiAgICAgICJuYW1lIjogIm1hbSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndiIsCiAgICAgICJuYW1lIjogIm1hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pIiwKICAgICAgIm5hbWUiOiAibWFvcmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXIiLAogICAgICAibmFtZSI6ICJtYXJhdGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1oIiwKICAgICAgIm5hbWUiOiAibWFyc2hhbGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtd3IiLAogICAgICAibmFtZSI6ICJtYXJ3YWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1mZSIsCiAgICAgICJuYW1lIjogIm1hdXJpdGlzayBrcmVvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbmktTXRlaSIsCiAgICAgICJuYW1lIjogIm1laXRlaWxvbiAobWFuaXB1cmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pbiIsCiAgICAgICJuYW1lIjogIm1pbmFuZyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdXMiLAogICAgICAibmFtZSI6ICJtaXpvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1uIiwKICAgICAgIm5hbWUiOiAibW9uZ29sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmhlIiwKICAgICAgIm5hbWUiOiAibmFodWF0bCAow7hzdGxpZ2UgSHVhc3RlY2EpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5kYy1aVyIsCiAgICAgICJuYW1lIjogIm5kYXUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnIiLAogICAgICAibmFtZSI6ICJuZGViZWxlIChzw7hyKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubCIsCiAgICAgICJuYW1lIjogIm5lZGVybGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5ldyIsCiAgICAgICJuYW1lIjogIk5lcGFsIGJoYXNhIChuZXdhcmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5lIiwKICAgICAgIm5hbWUiOiAibmVwYWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibS1Oa29vIiwKICAgICAgIm5hbWUiOiAiTktvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5vIiwKICAgICAgIm5hbWUiOiAibm9yc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnVzIiwKICAgICAgIm5hbWUiOiAibnVlciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvYyIsCiAgICAgICJuYW1lIjogIm9rc2l0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvciIsCiAgICAgICJuYW1lIjogIm9yaXlhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9tIiwKICAgICAgIm5hbWUiOiAib3JvbW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3MiLAogICAgICAibmFtZSI6ICJvc3NldGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYWciLAogICAgICAibmFtZSI6ICJwYW5nYXNpbmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhIiwKICAgICAgIm5hbWUiOiAiUGFuamFiaSAoZ3VybXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhLUFyYWIiLAogICAgICAibmFtZSI6ICJwYW5qYWJpIChzaGFobXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhcCIsCiAgICAgICJuYW1lIjogInBhcGlhbWVudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHMiLAogICAgICAibmFtZSI6ICJwYXNodG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGwiLAogICAgICAibmFtZSI6ICJwb2xzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChCcmFzaWwpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInB0LVBUIiwKICAgICAgIm5hbWUiOiAicG9ydHVnaXNpc2sgKFBvcnR1Z2FsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJxdSIsCiAgICAgICJuYW1lIjogInF1ZWNodWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicm9tIiwKICAgICAgIm5hbWUiOiAicm9tYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvIiwKICAgICAgIm5hbWUiOiAicnVtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydSIsCiAgICAgICJuYW1lIjogInJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2UiLAogICAgICAibmFtZSI6ICJzYW1pc2sgKG5vcmQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNtIiwKICAgICAgIm5hbWUiOiAic2Ftb2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2ciLAogICAgICAibmFtZSI6ICJzYW5nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYSIsCiAgICAgICJuYW1lIjogInNhbnNrcml0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdC1MYXRuIiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2F0IiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAob2wgY2hpa2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN6bCIsCiAgICAgICJuYW1lIjogInNjaGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuc28iLAogICAgICAibmFtZSI6ICJzZXBlZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3IiLAogICAgICAibmFtZSI6ICJzZXJiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNobiIsCiAgICAgICJuYW1lIjogInNoYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic24iLAogICAgICAibmFtZSI6ICJzaG9uYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzY24iLAogICAgICAibmFtZSI6ICJzaWNpbGlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNkIiwKICAgICAgIm5hbWUiOiAic2luZGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNpIiwKICAgICAgIm5hbWUiOiAic2luZ2FsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2QiLAogICAgICAibmFtZSI6ICJza290c2sgZ8OmbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzayIsCiAgICAgICJuYW1lIjogInNsb3Zha2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbCIsCiAgICAgICJuYW1lIjogInNsb3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNvIiwKICAgICAgIm5hbWUiOiAic29tYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN0IiwKICAgICAgIm5hbWUiOiAic290aG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXMiLAogICAgICAibmFtZSI6ICJzcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3UiLAogICAgICAibmFtZSI6ICJzdW5kYW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdXMiLAogICAgICAibmFtZSI6ICJzdXN1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN2IiwKICAgICAgIm5hbWUiOiAic3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN3IiwKICAgICAgIm5hbWUiOiAic3dhaGlsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcyIsCiAgICAgICJuYW1lIjogInN3YXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRnIiwKICAgICAgIm5hbWUiOiAidGFkc2ppa2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0bCIsCiAgICAgICJuYW1lIjogInRhZ2Fsb2ciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHkiLAogICAgICAibmFtZSI6ICJ0YWhpdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXItTGF0biIsCiAgICAgICJuYW1lIjogInRhbWF6aWdodCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXIiLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQgKHRpZmluYWdoKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0YSIsCiAgICAgICJuYW1lIjogInRhbWlsIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR0IiwKICAgICAgIm5hbWUiOiAidGF0YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGUiLAogICAgICAibmFtZSI6ICJ0ZWx1Z3UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGV0IiwKICAgICAgIm5hbWUiOiAidGV0dW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGgiLAogICAgICAibmFtZSI6ICJ0aGFpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJvIiwKICAgICAgIm5hbWUiOiAidGliZXRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpIiwKICAgICAgIm5hbWUiOiAidGlncmluamEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGl2IiwKICAgICAgIm5hbWUiOiAidGl2IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRwaSIsCiAgICAgICJuYW1lIjogInRvayBwaXNpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0byIsCiAgICAgICJuYW1lIjogInRvbmdhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1YSIsCiAgICAgICJuYW1lIjogInRzaGlsdWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNzIiwKICAgICAgIm5hbWUiOiAidHNqZWtraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlIiwKICAgICAgIm5hbWUiOiAidHNqZXRzamVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2hrIiwKICAgICAgIm5hbWUiOiAidHNqdWt0c2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3YiLAogICAgICAibmFtZSI6ICJ0c2p1dmFzamlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cyIsCiAgICAgICJuYW1lIjogInRzb25nYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0biIsCiAgICAgICJuYW1lIjogInRzd2FuYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0Y3kiLAogICAgICAibmFtZSI6ICJ0dWx1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR1bSIsCiAgICAgICJuYW1lIjogInR1bWJ1a2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGsiLAogICAgICAibmFtZSI6ICJ0dXJrbWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHl2IiwKICAgICAgIm5hbWUiOiAidHV2aW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhayIsCiAgICAgICJuYW1lIjogInR3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ciIsCiAgICAgICJuYW1lIjogInR5cmtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGUiLAogICAgICAibmFtZSI6ICJ0eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVkbSIsCiAgICAgICJuYW1lIjogInVkbXVydGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZyIsCiAgICAgICJuYW1lIjogInVpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVrIiwKICAgICAgIm5hbWUiOiAidWtyYWluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHUiLAogICAgICAibmFtZSI6ICJ1bmdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVyIiwKICAgICAgIm5hbWUiOiAidXJkdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1eiIsCiAgICAgICJuYW1lIjogInVzYmVraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlIiwKICAgICAgIm5hbWUiOiAidmVuZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmVjIiwKICAgICAgIm5hbWUiOiAidmVuZXRpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2aSIsCiAgICAgICJuYW1lIjogInZpZXRuYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjeSIsCiAgICAgICJuYW1lIjogIndhbGlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndhciIsCiAgICAgICJuYW1lIjogIndhcmF5LXdhcmF5IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndvIiwKICAgICAgIm5hbWUiOiAid29sb2YiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieGgiLAogICAgICAibmFtZSI6ICJ4aG9zYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWEiLAogICAgICAibmFtZSI6ICJ5dWthdGFuc2sgbWF5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6YXAiLAogICAgICAibmFtZSI6ICJ6YXBvdGVjIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInp1IiwKICAgICAgIm5hbWUiOiAienVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjaG0iLAogICAgICAibmFtZSI6ICLDuHN0bWFyaXNrIgogICAgfQogIF0sCiAgInRhcmdldExhbmd1YWdlcyI6IFsKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFiIiwKICAgICAgIm5hbWUiOiAiYWJraGFzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFjZSIsCiAgICAgICJuYW1lIjogImFjZWhuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNoIiwKICAgICAgIm5hbWUiOiAiYWNob2xpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFhIiwKICAgICAgIm5hbWUiOiAiYWZhciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhZiIsCiAgICAgICJuYW1lIjogImFmcmlrYWFucyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcSIsCiAgICAgICJuYW1lIjogImFsYmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWx6IiwKICAgICAgIm5hbWUiOiAiYWx1ciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbSIsCiAgICAgICJuYW1lIjogImFtaGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFyIiwKICAgICAgIm5hbWUiOiAiYXJhYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoeSIsCiAgICAgICJuYW1lIjogImFybWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXoiLAogICAgICAibmFtZSI6ICJhc2VyYmFqZHNqYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhcyIsCiAgICAgICJuYW1lIjogImFzc2FtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXYiLAogICAgICAibmFtZSI6ICJhdmFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImF3YSIsCiAgICAgICJuYW1lIjogImF3YWRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheSIsCiAgICAgICJuYW1lIjogImF5bWFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYW4iLAogICAgICAibmFtZSI6ICJiYWxpbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhbCIsCiAgICAgICJuYW1lIjogImJhbHV0c2ppIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJtIiwKICAgICAgIm5hbWUiOiAiYmFtYmFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiY2kiLAogICAgICAibmFtZSI6ICJiYW91bMOpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhIiwKICAgICAgIm5hbWUiOiAiYmFzamtpcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImV1IiwKICAgICAgIm5hbWUiOiAiYmFza2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHgiLAogICAgICAibmFtZSI6ICJiYXRhayBrYXJvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ0cyIsCiAgICAgICJuYW1lIjogImJhdGFrIHNpbWFsdW5ndW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmJjIiwKICAgICAgIm5hbWUiOiAiYmF0YWsgdG9iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZW0iLAogICAgICAibmFtZSI6ICJiZW1iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibiIsCiAgICAgICJuYW1lIjogImJlbmdhbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmV3IiwKICAgICAgIm5hbWUiOiAiYmV0YXdpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJobyIsCiAgICAgICJuYW1lIjogImJob2pwdXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJpayIsCiAgICAgICJuYW1lIjogImJpa29sIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJzIiwKICAgICAgIm5hbWUiOiAiYm9zbmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiciIsCiAgICAgICJuYW1lIjogImJyZXRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJnIiwKICAgICAgIm5hbWUiOiAiYnVsZ2Fyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnVhIiwKICAgICAgIm5hbWUiOiAiYnVyamF0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm15IiwKICAgICAgIm5hbWUiOiAiYnVybWVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlYiIsCiAgICAgICJuYW1lIjogImNlYnVhbm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2giLAogICAgICAibmFtZSI6ICJjaGFtb3JybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJueSIsCiAgICAgICJuYW1lIjogImNoaWNoZXdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRhIiwKICAgICAgIm5hbWUiOiAiZGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEtQUYiLAogICAgICAibmFtZSI6ICJkYXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImR2IiwKICAgICAgIm5hbWUiOiAiZGhpdmVoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkaW4iLAogICAgICAibmFtZSI6ICJkaW5rYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb2kiLAogICAgICAibmFtZSI6ICJkb2dyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb3YiLAogICAgICAibmFtZSI6ICJkb21iZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeXUiLAogICAgICAibmFtZSI6ICJEeXVsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeiIsCiAgICAgICJuYW1lIjogImR6b25na2hhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVuIiwKICAgICAgIm5hbWUiOiAiZW5nZWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbyIsCiAgICAgICJuYW1lIjogImVzcGVyYW50byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldCIsCiAgICAgICJuYW1lIjogImVzdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlZSIsCiAgICAgICJuYW1lIjogImV3ZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmYSIsCiAgICAgICJuYW1lIjogImZhcnNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZqIiwKICAgICAgIm5hbWUiOiAiZmlqaWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmkiLAogICAgICAibmFtZSI6ICJmaW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmb24iLAogICAgICAibmFtZSI6ICJmb24iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnIiLAogICAgICAibmFtZSI6ICJmcmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnItQ0EiLAogICAgICAibmFtZSI6ICJGcmFuc2sgKENhbmFkYSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnkiLAogICAgICAibmFtZSI6ICJmcmlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ1ciIsCiAgICAgICJuYW1lIjogImZyaXVsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZmIiwKICAgICAgIm5hbWUiOiAiZnVsZnVsZGUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm8iLAogICAgICAibmFtZSI6ICJmw6Zyw7h5c2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2wiLAogICAgICAibmFtZSI6ICJnYWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYSIsCiAgICAgICJuYW1lIjogImdlb3JnaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVsIiwKICAgICAgIm5hbWUiOiAiZ3Jlc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ24iLAogICAgICAibmFtZSI6ICJndWFyYW7DrSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndSIsCiAgICAgICJuYW1lIjogImd1amFyYXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhYSIsCiAgICAgICJuYW1lIjogImdhYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbmgiLAogICAgICAibmFtZSI6ICJoYWtoYSBjaGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhIiwKICAgICAgIm5hbWUiOiAiaGF1c2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGF3IiwKICAgICAgIm5hbWUiOiAiaGF3YWlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXciLAogICAgICAibmFtZSI6ICJoZWJyYWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaWwiLAogICAgICAibmFtZSI6ICJoaWxpZ2F5bm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhpIiwKICAgICAgIm5hbWUiOiAiaGluZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaG1uIiwKICAgICAgIm5hbWUiOiAiaG1vbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHJ4IiwKICAgICAgIm5hbWUiOiAiaHVuc3JpayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZSIsCiAgICAgICJuYW1lIjogImh2aXRlcnVzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpYmEiLAogICAgICAibmFtZSI6ICJpYmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlnIiwKICAgICAgIm5hbWUiOiAiaWdibyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpbG8iLAogICAgICAibmFtZSI6ICJpbG9rYW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlkIiwKICAgICAgIm5hbWUiOiAiaW5kb25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdS1MYXRuIiwKICAgICAgIm5hbWUiOiAiSW51a3RpdHV0IChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdSIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAoc3RhdmVsc2UpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhIiwKICAgICAgIm5hbWUiOiAiaXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpcyIsCiAgICAgICJuYW1lIjogImlzbGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml0IiwKICAgICAgIm5hbWUiOiAiaXRhbGllbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhaCIsCiAgICAgICJuYW1lIjogImpha3V0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphbSIsCiAgICAgICJuYW1lIjogImphbWFpY2Fuc2sgcGF0b2lzIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphIiwKICAgICAgIm5hbWUiOiAiamFwYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqdyIsCiAgICAgICJuYW1lIjogImphdmFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieWkiLAogICAgICAibmFtZSI6ICJqaWRkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImthYyIsCiAgICAgICJuYW1lIjogImppbmdwbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5byIsCiAgICAgICJuYW1lIjogImpvcnViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbCIsCiAgICAgICJuYW1lIjogImthbGFhbGxpc3V0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtuIiwKICAgICAgIm5hbWUiOiAia2FubmFkYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWUiLAogICAgICAibmFtZSI6ICJrYW50b25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrciIsCiAgICAgICJuYW1lIjogImthbnVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYW0iLAogICAgICAibmFtZSI6ICJrYXBhbXBhbmdhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrayIsCiAgICAgICJuYW1lIjogImthc2FraGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjYSIsCiAgICAgICJuYW1lIjogImthdGFsYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZWsiLAogICAgICAibmFtZSI6ICJrZWtjaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2hhIiwKICAgICAgIm5hbWUiOiAia2hhc2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia20iLAogICAgICAibmFtZSI6ICJraG1lciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZ2ciLAogICAgICAibmFtZSI6ICJraWdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtnIiwKICAgICAgIm5hbWUiOiAia2lrb25nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6aC1DTiIsCiAgICAgICJuYW1lIjogImtpbmVzaXNrIChmb3JlbmtsZXQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInpoLVRXIiwKICAgICAgIm5hbWUiOiAia2luZXNpc2sgKHRyYWRpc2pvbmVsbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnciLAogICAgICAibmFtZSI6ICJraW55YXJ3YW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJreSIsCiAgICAgICJuYW1lIjogImtpcmdpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybiIsCiAgICAgICJuYW1lIjogImtpcnVuZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3R1IiwKICAgICAgIm5hbWUiOiAia2l0dWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRycCIsCiAgICAgICJuYW1lIjogImtva2Jvcm9rIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt2IiwKICAgICAgIm5hbWUiOiAia29taSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnb20iLAogICAgICAibmFtZSI6ICJrb25rYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtvIiwKICAgICAgIm5hbWUiOiAia29yZWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY28iLAogICAgICAibmFtZSI6ICJrb3JzaWthbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh0IiwKICAgICAgIm5hbWUiOiAia3Jlb2wgKEhhaXRpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcnMiLAogICAgICAibmFtZSI6ICJrcmVvbCAoU2V5Y2hlbGxlbmUpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaCIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAoa3lyaWxsaXNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcmgtTGF0biIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3JpIiwKICAgICAgIm5hbWUiOiAia3JpbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJociIsCiAgICAgICJuYW1lIjogImtyb2F0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt1IiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoa3VybWFuamkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNrYiIsCiAgICAgICJuYW1lIjogImt1cmRpc2sgKHNvcmFuaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibG8iLAogICAgICAibmFtZSI6ICJsYW90aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx0ZyIsCiAgICAgICJuYW1lIjogImxhdGdhbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYSIsCiAgICAgICJuYW1lIjogImxhdGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx2IiwKICAgICAgIm5hbWUiOiAibGF0dmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaWoiLAogICAgICAibmFtZSI6ICJsaWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaSIsCiAgICAgICJuYW1lIjogImxpbWJ1cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbiIsCiAgICAgICJuYW1lIjogImxpbmdhbGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHQiLAogICAgICAibmFtZSI6ICJsaXRhdWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbW8iLAogICAgICAibmFtZSI6ICJsb21iYXJkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxnIiwKICAgICAgIm5hbWUiOiAibHVnYW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdW8iLAogICAgICAibmFtZSI6ICJsdW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGIiLAogICAgICAibmFtZSI6ICJsdXhlbWJvdXJnc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWciLAogICAgICAibmFtZSI6ICJtYWRhZ2Fzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYWQiLAogICAgICAibmFtZSI6ICJtYWR1cmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1haSIsCiAgICAgICJuYW1lIjogIm1haXRoaWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hayIsCiAgICAgICJuYW1lIjogIk1ha2Fzc2FyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1rIiwKICAgICAgIm5hbWUiOiAibWFrZWRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1sIiwKICAgICAgIm5hbWUiOiAibWFsYXlhbGFtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1zIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMtQXJhYiIsCiAgICAgICJuYW1lIjogIm1hbGF5aXNrIChqYXdpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtdCIsCiAgICAgICJuYW1lIjogIm1hbHRlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYW0iLAogICAgICAibmFtZSI6ICJtYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3YiLAogICAgICAibmFtZSI6ICJtYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaSIsCiAgICAgICJuYW1lIjogIm1hb3JpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1yIiwKICAgICAgIm5hbWUiOiAibWFyYXRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaCIsCiAgICAgICJuYW1lIjogIm1hcnNoYWxsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXdyIiwKICAgICAgIm5hbWUiOiAibWFyd2FkaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZmUiLAogICAgICAibmFtZSI6ICJtYXVyaXRpc2sga3Jlb2wiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibW5pLU10ZWkiLAogICAgICAibmFtZSI6ICJtZWl0ZWlsb24gKG1hbmlwdXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaW4iLAogICAgICAibmFtZSI6ICJtaW5hbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHVzIiwKICAgICAgIm5hbWUiOiAibWl6byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbiIsCiAgICAgICJuYW1lIjogIm1vbmdvbHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5oZSIsCiAgICAgICJuYW1lIjogIm5haHVhdGwgKMO4c3RsaWdlIEh1YXN0ZWNhKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZGMtWlciLAogICAgICAibmFtZSI6ICJuZGF1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5yIiwKICAgICAgIm5hbWUiOiAibmRlYmVsZSAoc8O4cikiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmwiLAogICAgICAibmFtZSI6ICJuZWRlcmxhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZXciLAogICAgICAibmFtZSI6ICJOZXBhbCBiaGFzYSAobmV3YXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZSIsCiAgICAgICJuYW1lIjogIm5lcGFsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm0tTmtvbyIsCiAgICAgICJuYW1lIjogIk5LbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubyIsCiAgICAgICJuYW1lIjogIm5vcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm51cyIsCiAgICAgICJuYW1lIjogIm51ZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib2MiLAogICAgICAibmFtZSI6ICJva3NpdGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3IiLAogICAgICAibmFtZSI6ICJvcml5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvbSIsCiAgICAgICJuYW1lIjogIm9yb21vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9zIiwKICAgICAgIm5hbWUiOiAib3NzZXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFnIiwKICAgICAgIm5hbWUiOiAicGFuZ2FzaW5hbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYSIsCiAgICAgICJuYW1lIjogIlBhbmphYmkgKGd1cm11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYS1BcmFiIiwKICAgICAgIm5hbWUiOiAicGFuamFiaSAoc2hhaG11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYXAiLAogICAgICAibmFtZSI6ICJwYXBpYW1lbnRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBzIiwKICAgICAgIm5hbWUiOiAicGFzaHRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBsIiwKICAgICAgIm5hbWUiOiAicG9sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHQiLAogICAgICAibmFtZSI6ICJwb3J0dWdpc2lzayAoQnJhc2lsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdC1QVCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChQb3J0dWdhbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicXUiLAogICAgICAibmFtZSI6ICJxdWVjaHVhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvbSIsCiAgICAgICJuYW1lIjogInJvbWFuaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybyIsCiAgICAgICJuYW1lIjogInJ1bWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnUiLAogICAgICAibmFtZSI6ICJydXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNlIiwKICAgICAgIm5hbWUiOiAic2FtaXNrIChub3JkKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbSIsCiAgICAgICJuYW1lIjogInNhbW9hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNnIiwKICAgICAgIm5hbWUiOiAic2FuZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2EiLAogICAgICAibmFtZSI6ICJzYW5za3JpdCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYXQtTGF0biIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKGxhdGluc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdCIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKG9sIGNoaWtpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzemwiLAogICAgICAibmFtZSI6ICJzY2hsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnNvIiwKICAgICAgIm5hbWUiOiAic2VwZWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNyIiwKICAgICAgIm5hbWUiOiAic2VyYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaG4iLAogICAgICAibmFtZSI6ICJzaGFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNuIiwKICAgICAgIm5hbWUiOiAic2hvbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2NuIiwKICAgICAgIm5hbWUiOiAic2ljaWxpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzZCIsCiAgICAgICJuYW1lIjogInNpbmRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaSIsCiAgICAgICJuYW1lIjogInNpbmdhbGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdkIiwKICAgICAgIm5hbWUiOiAic2tvdHNrIGfDpmxpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2siLAogICAgICAibmFtZSI6ICJzbG92YWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2wiLAogICAgICAibmFtZSI6ICJzbG92ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbyIsCiAgICAgICJuYW1lIjogInNvbWFsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdCIsCiAgICAgICJuYW1lIjogInNvdGhvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVzIiwKICAgICAgIm5hbWUiOiAic3BhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN1IiwKICAgICAgIm5hbWUiOiAic3VuZGFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3VzIiwKICAgICAgIm5hbWUiOiAic3VzdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdiIsCiAgICAgICJuYW1lIjogInN2ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdyIsCiAgICAgICJuYW1lIjogInN3YWhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3MiLAogICAgICAibmFtZSI6ICJzd2F0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ZyIsCiAgICAgICJuYW1lIjogInRhZHNqaWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGwiLAogICAgICAibmFtZSI6ICJ0YWdhbG9nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5IiwKICAgICAgIm5hbWUiOiAidGFoaXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyLUxhdG4iLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyIiwKICAgICAgIm5hbWUiOiAidGFtYXppZ2h0ICh0aWZpbmFnaCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGEiLAogICAgICAibmFtZSI6ICJ0YW1pbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dCIsCiAgICAgICJuYW1lIjogInRhdGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRlIiwKICAgICAgIm5hbWUiOiAidGVsdWd1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRldCIsCiAgICAgICJuYW1lIjogInRldHVtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRoIiwKICAgICAgIm5hbWUiOiAidGhhaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibyIsCiAgICAgICJuYW1lIjogInRpYmV0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0aSIsCiAgICAgICJuYW1lIjogInRpZ3JpbmphIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpdiIsCiAgICAgICJuYW1lIjogInRpdiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cGkiLAogICAgICAibmFtZSI6ICJ0b2sgcGlzaW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG8iLAogICAgICAibmFtZSI6ICJ0b25nYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdWEiLAogICAgICAibmFtZSI6ICJ0c2hpbHViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcyIsCiAgICAgICJuYW1lIjogInRzamVra2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZSIsCiAgICAgICJuYW1lIjogInRzamV0c2plbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoayIsCiAgICAgICJuYW1lIjogInRzanVrdHNqaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImN2IiwKICAgICAgIm5hbWUiOiAidHNqdXZhc2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHMiLAogICAgICAibmFtZSI6ICJ0c29uZ2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG4iLAogICAgICAibmFtZSI6ICJ0c3dhbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGN5IiwKICAgICAgIm5hbWUiOiAidHVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dW0iLAogICAgICAibmFtZSI6ICJ0dW1idWthIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRrIiwKICAgICAgIm5hbWUiOiAidHVya21lbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5diIsCiAgICAgICJuYW1lIjogInR1dmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWsiLAogICAgICAibmFtZSI6ICJ0d2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHIiLAogICAgICAibmFtZSI6ICJ0eXJraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRlIiwKICAgICAgIm5hbWUiOiAidHlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZG0iLAogICAgICAibmFtZSI6ICJ1ZG11cnRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidWciLAogICAgICAibmFtZSI6ICJ1aWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ayIsCiAgICAgICJuYW1lIjogInVrcmFpbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh1IiwKICAgICAgIm5hbWUiOiAidW5nYXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ciIsCiAgICAgICJuYW1lIjogInVyZHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidXoiLAogICAgICAibmFtZSI6ICJ1c2Jla2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2ZSIsCiAgICAgICJuYW1lIjogInZlbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlYyIsCiAgICAgICJuYW1lIjogInZlbmV0aWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmkiLAogICAgICAibmFtZSI6ICJ2aWV0bmFtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3kiLAogICAgICAibmFtZSI6ICJ3YWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3YXIiLAogICAgICAibmFtZSI6ICJ3YXJheS13YXJheSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3byIsCiAgICAgICJuYW1lIjogIndvbG9mIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInhoIiwKICAgICAgIm5hbWUiOiAieGhvc2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVhIiwKICAgICAgIm5hbWUiOiAieXVrYXRhbnNrIG1heWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemFwIiwKICAgICAgIm5hbWUiOiAiemFwb3RlYyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6dSIsCiAgICAgICJuYW1lIjogInp1bHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2htIiwKICAgICAgIm5hbWUiOiAiw7hzdG1hcmlzayIKICAgIH0KICBdCn0KKTs="}},"time_used":29,"timings":{"blocked":0,"dns":2,"connect":8,"send":0,"wait":26,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.119Z","timestamp":1785154591119,"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://persimmontrades.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: 428747\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":20284,"size_decoded":4799,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-07-27T14:18:32.467043Z","times_seen":17847,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_ticker_tape_widget.962f777c23b660d830a5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.206Z","timestamp":1785154590206,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/runtime-embed_ticker_tape_widget.962f777c23b660d830a5.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-23c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:03\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: dfd6872bbb501f70eeeff69f762c7c10\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9160,"size_decoded":5436,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3066)","md5":"6261f54efc700f40121ffb4b8469e97e","sha1":"ce3b28aab3d88f4c8efb56c9421582b8795b170a","sha256":"784267261c93801d2acc456a3fd6bdebee924adb480d41166947dbef83d09720","sha512":"24eac8beb0159520437818ae9b0622b1a35010f7b030d8235bafbe66000eccedec201dadd509607239623d395152fe9e364a0fc0ff255a87f05f763c2bd6ce2b","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNFmn1BnRMC4p2kuVcsFAvaGg:4wqLp/vXunkfr8/kPm1BnRMC4p2kazAO","tlshash":"fe12e9ac354ce53225bb0c525479e462f72c23fb5e0ae0a09367fcf96858ed46633d91","first_seen":"2026-07-24T15:28:44.921696Z","last_seen":"2026-07-27T14:17:30.984461Z","times_seen":808,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLHQscixuPXt9LGE9e307ZnVuY3Rpb24gbChlKXt2YXIgdD1hW2VdO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQuZXhwb3J0czt2YXIgcj1hW2VdPXtleHBvcnRzOnt9fTtyZXR1cm4gbltlXS5jYWxsKHIuZXhwb3J0cyxyLHIuZXhwb3J0cyxsKSxyLmV4cG9ydHN9bC5tPW4sbC5fcGx1cmFsPXthcjooZSx0PTYscj0oMD09ZT8wOjE9PWU/MToyPT1lPzI6ZSUxMDA+PTMmJmUlMTAwPD0xMD8zOmUlMTAwPj0xMSYmZSUxMDA8PTk5PzQ6NSkpPT5udWxsPT1lPzA6K3IsY3M6KGUsdD0zLHI9KDE9PWU/MDplPj0yJiZlPD00PzE6MikpPT5udWxsPT1lPzA6K3IscnU6KGUsdD0zLHI9KGUlMTA9PTEmJmUlMTAwIT0xMT8wOmUlMTA+PTImJmUlMTA8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjIpKT0+bnVsbD09ZT8wOityLHJvOihlLHQ9MyxyPSgxPT1lPzA6ZSUxMDA+MTl8fGUlMTAwPT0wJiYwIT1lPzI6MSkpPT5udWxsPT1lPzA6K3IscGw6KGUsdD0zLHI9KDE9PWU/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorcixwdDooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGRlOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZW46KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcixlczooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLHN2OihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaXQ6KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcix0cjooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGVsOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZnI6KGUsdD0yLHI9ZT4xKT0+bnVsbD09ZT8wOityLGZhOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsamE6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixrbzooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLHRoOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3Isdmk6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcix6aDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLGhlX0lMOihlLHQ9NCxyPSgxPT1lPzA6Mj09ZT8xOmU+MTAmJmUlMTA9PTA/MjozKSk9Pm51bGw9PWU/MDorcixjYV9FUzooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLG5sX05MOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaHVfSFU6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixpZF9JRDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLG1zX01ZOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsemhfVFc6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcn0sZT1bXSxsLk89KHQscixuLGEpPT57aWYoIXIpe3ZhciBjPTEvMDtmb3IoZj0wO2Y8ZS5sZW5ndGg7ZisrKXtmb3IodmFyW3IsbixhXT1lW2ZdLGk9ITAsbz0wO288ci5sZW5ndGg7bysrKSghMSZhfHxjPj1hKSYmT2JqZWN0LmtleXMobC5PKS5ldmVyeSgoZT0+bC5PW2VdKHJbb10pKSk/ci5zcGxpY2Uoby0tLDEpOihpPSExLGE8YyYmKGM9YSkpO2lmKGkpe2Uuc3BsaWNlKGYtLSwxKTt2YXIgZD1uKCk7dm9pZCAwIT09ZCYmKHQ9ZCl9fXJldHVybiB0fWE9YXx8MDtmb3IodmFyIGY9ZS5sZW5ndGg7Zj4wJiZlW2YtMV1bMl0+YTtmLS0pZVtmXT1lW2YtMV07ZVtmXT1bcixuLGFdfSxsLm49ZT0+e3ZhciB0PWUmJmUuX19lc01vZHVsZT8oKT0+ZS5kZWZhdWx0OigpPT5lO3JldHVybiBsLmQodCx7YTp0fSksdH0sbC5kPShlLHQpPT57Zm9yKHZhciByIGluIHQpbC5vKHQscikmJiFsLm8oZSxyKSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscix7ZW51bWVyYWJsZTohMCxnZXQ6dFtyXX0pfSxsLmY9e30sbC5lPWU9PlByb21pc2UuYWxsKE9iamVjdC5rZXlzKGwuZikucmVkdWNlKCgodCxyKT0+KGwuZltyXShlLHQpLHQpKSxbXSkpLGwudT1lPT4yODgzMT09PWU/Il9fTEFOR19fLiIrZSsiLmY5ZTczNTZmZjkxZjgzN2Y0N2M3LmpzIjoyMzU2Nz09PWU/Il9fTEFOR19fLiIrZSsiLjVmZGRjMTU5OTgxNDJjYmM2MWVmLmpzIjooezczOTc6InBlcmlvZC1mb3JtYXR0ZXIiLDEzOTkzOiJwdXNoc3RyZWFtLW11bHRpcGxleGVyIiwxNjgxMzoidHJhZGluZ3ZpZXctY29weXJpZ2h0LXdpdGgtYm9yZGVyLWRhdGEtaW1wbCIsMzU5ODA6ImNsZWFyLW9sZC1zZXR0aW5ncyIsNDI3MDY6InNpbXBsZS1kaWFsb2ciLDcxMzk0OiJjbW9uZXljb210dy1jb3B5cmlnaHQtZGF0YS1pbXBsIiw3NjA0MDoidHJhZGluZ3ZpZXctY29weXJpZ2h0LW5ldy1kYXRhLWltcGwiLDc5MDQxOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtdHJhZGUtd2l0aC1kYXRhLWltcGwiLDg1MDM4OiJsZW50YXJ1LWNvcHlyaWdodC1kYXRhLWltcGwiLDk1MjA3OiJzbm93cGxvdy10cmFja2VyLWJhc2UiLDk3NTA5OiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtZGF0YS1pbXBsIn1bZV18fGUpKyIuIit7MTUzNDoiNzRmZmUxZTcyNWE0NjVkNDM0MWUiLDcyODU6IjhiYzgyOTI2NjUyOGZhNzRhZjVjIiw3Mzk3OiIwNTllNjIyOTI0MDIzMjcwMTZjNCIsMTM5OTM6IjNiMTk5YzZhZDhiZjVjM2NhYzY3IiwxNjgxMzoiN2U0NTI3YmM1NTIxOWVhM2FkNzYiLDI4MTc2OiIyMTM0Mjg2NWU3NGZmYmVmZmY0NCIsMzU5ODA6ImMzNDA0MmE0YTEwY2I1ZmIyZTNkIiwzOTYwOToiOGNlMGQ3OTNiMmI2MGJlN2E0ZDUiLDQyNzA2OiI2YjExNWU3Mzc3MjU0M2Y0YmMzMCIsNTUyMjk6IjI1NzIxODgxOWZhYTY2MzlhMzg5Iiw2NTEwMDoiZjQyMmUxYWQwNjAxNmRiMGQ0N2EiLDcwNjQ0OiI0NDg3NDNkZWYzMjVmZWI2MTk2NyIsNzEzOTQ6ImU2Mzk3NWJhMWQzNjdkZjdhOWQ4Iiw3NjA0MDoiODlhNTFiOTg4ZWM0M2VkMDRlZTciLDc5MDQxOiJiYjRmN2NiMDY4ZmZiZWU4Y2JiYSIsODA5MTU6IjY5NDA0ZmRhOGFhZmMyNzQyYzU1Iiw4NTAzODoiNGMwZDZkZjMwNDVkZTQxNzMxNzgiLDg1NDM0OiJiODViNzVkZjkxYjIyYmFjOGQzOSIsOTUyMDc6IjQ2NWY4YWYxYWE3MmFjM2ExYzMyIiw5NzUwOToiMjdmMzQ5YTFkNTg0ODNmMjdlYWEifVtlXSsiLmpzIiwKbC5taW5pQ3NzRj1lPT45Nzc5Nz09PWU/ZSsiLmQ5ODVlZWJlNjczOTdmMDJmYTY0LmNzcyI6ODQzMDY9PT1lP2UrIi4zMWQ2Y2ZlMGQxNmFlOTMxYjczYy5jc3MiOjUyMzk2PT09ZT9lKyIuZWQ3NmNhZjJmZmUwMTQ0NjBiYTYuY3NzIjoyMDM1ND09PWU/ZSsiLjJkZGY5MzRmOGVkYzI4MDJkOTBhLmNzcyI6MTM0OTI9PT1lP2UrIi4yYzc3NzMwZDExMjVhNDk4NWJkYy5jc3MiOjM3NzQ2PT09ZT9lKyIuMzQ1MjI3YmIxNmUwZDhiYzliZDUuY3NzIjoxMjM4NT09PWU/ZSsiLjc4NTYxZWJkZWYwNWNlNjQ4YjVkLmNzcyI6ODEwNzI9PT1lP2UrIi4yOTI3YTE3NzIzMWZkZDBlMjRjMS5jc3MiOjk0MjMyPT09ZT9lKyIuYWI2NzMxYjY5OGE4YzI4NTRhOTAuY3NzIjoxNzA4Nz09PWU/ZSsiLmE1ZWFlYjMwZjdkMjY5Zjk3YjQxLmNzcyI6ZSsiLiIrezY0NDU6ImFjNjM1YmExNTE5NGRmNDg0NjE2Iiw4NTc5OiI2ZjY1MThiZTQyOTM4MjI3ODZlMCIsMTAzNjY6IjA3ZTIwZTdiYmVlMjdjOWQ1ZmJjIiwxMjA1MToiYjg0YmU3ODFiYjkwZDQ1N2YxZGYiLDE5NTk1OiJkOTYyYWI3NWJkM2UxYmFhNWFhZSIsMTk3ODc6ImJiYjY2ZmEwZmQyYmQwNGQwODc1IiwyOTI5NjoiYjQwOGYyODIyZmE1Yjk1NjliYWMiLDQwOTE0OiJhOGRkNjk2YmU3ZGRlNmNlNmRkYiIsNDQyNTM6Ijg0MDViYWYzM2MzZWZkMDE1MjhlIiw1MzUyMToiZGM5YmM3MGE2YTgwZjJjOTRmNTUiLDU3MzAwOiJjMWY1ZmM0ZTE1OTkwNjg1ZmI3MyIsNTk5NDE6ImFmMjJmM2FiODNjZGZjYzM5MzVhIiw2MDA2MjoiNDk1NDQ0YTdmYWMxNzNmYjI4Y2QiLDY3MjEyOiI3Y2ExMmFiN2VjY2YxYzQ4YWVhMSIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0Iiw3ODg5OToiYmI1ZjgxZDk0YmU1YjVhN2JiZDEiLDg3NzQwOiI1ZTFhNzY3OTBlZTQ5YTM3OTVmYSIsODk1NTg6Ijk4MWEzNGIxOWI0MWZhZDkyYjg4Iiw5MDk2MDoiZWM5NDFhY2NmYWEzZWQyY2Q2ZTIifVtlXSsiLmNzcyIsbC5nPWZ1bmN0aW9uKCl7aWYoIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzKXJldHVybiBnbG9iYWxUaGlzO3RyeXtyZXR1cm4gdGhpc3x8bmV3IEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9Y2F0Y2goZSl7aWYoIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cpcmV0dXJuIHdpbmRvd319KCksbC5vPShlLHQpPT5PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KSx0PXt9LHI9InRyYWRpbmd2aWV3OiIsbC5sPShlLG4sYSxjKT0+e2lmKHRbZV0pdFtlXS5wdXNoKG4pO2Vsc2V7dmFyIGksbztpZih2b2lkIDAhPT1hKWZvcih2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgdT1kW2ZdO2lmKHUuZ2V0QXR0cmlidXRlKCJzcmMiKT09ZXx8dS5nZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIpPT1yK2Epe2k9dTticmVha319aXx8KG89ITAsKGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IikpLmNoYXJzZXQ9InV0Zi04IixsLm5jJiZpLnNldEF0dHJpYnV0ZSgibm9uY2UiLGwubmMpLGkuc2V0QXR0cmlidXRlKCJkYXRhLXdlYnBhY2siLHIrYSksaS5zcmM9ZSwwIT09aS5zcmMuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihpLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSksdFtlXT1bbl07dmFyIHM9KHIsbik9PntpLm9uZXJyb3I9aS5vbmxvYWQ9bnVsbCxjbGVhclRpbWVvdXQoYik7dmFyIGE9dFtlXTtpZihkZWxldGUgdFtlXSxpLnBhcmVudE5vZGUmJmkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpKSxhJiZhLmZvckVhY2goKGU9PmUobikpKSxyKXJldHVybiByKG4pfSxiPXNldFRpbWVvdXQocy5iaW5kKG51bGwsdm9pZCAwLHt0eXBlOiJ0aW1lb3V0Iix0YXJnZXQ6aX0pLDEyZTQpO2kub25lcnJvcj1zLmJpbmQobnVsbCxpLm9uZXJyb3IpLGkub25sb2FkPXMuYmluZChudWxsLGkub25sb2FkKSxvJiZkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpfX0sbC5yPWU9PnsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxsLmo9ODM2MDgsKCgpPT57dmFyIGU7bC5nLmltcG9ydFNjcmlwdHMmJihlPWwuZy5sb2NhdGlvbisiIik7dmFyIHQ9bC5nLmRvY3VtZW50O2lmKCFlJiZ0JiYodC5jdXJyZW50U2NyaXB0JiYiU0NSSVBUIj09PXQuY3VycmVudFNjcmlwdC50YWdOYW1lLnRvVXBwZXJDYXNlKCkmJihlPXQuY3VycmVudFNjcmlwdC5zcmMpLCFlKSl7dmFyIHI9dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0Iik7aWYoci5sZW5ndGgpZm9yKHZhciBuPXIubGVuZ3RoLTE7bj4tMSYmKCFlfHwhL15odHRwKHM/KTovLnRlc3QoZSkpOyllPXJbbi0tXS5zcmN9aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBdXRvbWF0aWMgcHVibGljUGF0aCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3NlciIpO2U9ZS5yZXBsYWNlKC9eYmxvYjovLCIiKS5yZXBsYWNlKC8jLiokLywiIikucmVwbGFjZSgvXD8uKiQvLCIiKS5yZXBsYWNlKC9cL1teXC9dKyQvLCIvIiksbC5wPWV9KSgpLGwuZy5sb2NhdGlvbiYmbC5wLnN0YXJ0c1dpdGgobC5nLmxvY2F0aW9uLm9yaWdpbikmJihsLnA9bC5wLnNsaWNlKGwuZy5sb2NhdGlvbi5vcmlnaW4ubGVuZ3RoKSksKCgpPT57Y29uc3QgZT1sLnU7bC51PXQ9PmUodCkucmVwbGFjZSgiX19MQU5HX18iLGwuZy5sYW5ndWFnZSl9KSgpLCgoKT0+e3ZhciBlPWwuZSx0PU9iamVjdC5jcmVhdGUobnVsbCk7ZnVuY3Rpb24gcih0LG4pe3JldHVybiBlKHQpLmNhdGNoKChmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oYSl7dmFyIGw9ZnVuY3Rpb24oKXtzZWxmLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbCwhMSksITE9PT1uYXZpZ2F0b3Iub25MaW5lP3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixsLCExKTphKG48Mj9yKHQsbisxKTplKHQpKX0KO3NldFRpbWVvdXQobCxuKm4qMWUzKX0pKX0pKX1sLmU9ZnVuY3Rpb24oZSl7aWYoIXRbZV0pe3RbZV09cihlLDApO3ZhciBuPWZ1bmN0aW9uKCl7ZGVsZXRlIHRbZV19O3RbZV0udGhlbihuLG4pfXJldHVybiB0W2VdfX0pKCksKCgpPT57aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCl7dmFyIGU9ZT0+bmV3IFByb21pc2UoKCh0LHIpPT57dmFyIG49bC5taW5pQ3NzRihlKSxhPWwucCtuO2lmKCgoZSx0KT0+e2Zvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGE9KGM9cltuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKXx8Yy5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZigic3R5bGVzaGVldCI9PT1jLnJlbCYmKGE9PT1lfHxhPT09dCkpcmV0dXJuIGN9dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIik7Zm9yKG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIGM7aWYoKGE9KGM9bFtuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKSk9PT1lfHxhPT09dClyZXR1cm4gY319KShuLGEpKXJldHVybiB0KCk7KChlLHQscixuLGEpPT57dmFyIGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2wucmVsPSJzdHlsZXNoZWV0IixsLnR5cGU9InRleHQvY3NzIixsLm9uZXJyb3I9bC5vbmxvYWQ9cj0+e2lmKGwub25lcnJvcj1sLm9ubG9hZD1udWxsLCJsb2FkIj09PXIudHlwZSluKCk7ZWxzZXt2YXIgYz1yJiYoImxvYWQiPT09ci50eXBlPyJtaXNzaW5nIjpyLnR5cGUpLGk9ciYmci50YXJnZXQmJnIudGFyZ2V0LmhyZWZ8fHQsbz1uZXcgRXJyb3IoIkxvYWRpbmcgQ1NTIGNodW5rICIrZSsiIGZhaWxlZC5cbigiK2krIikiKTtvLmNvZGU9IkNTU19DSFVOS19MT0FEX0ZBSUxFRCIsby50eXBlPWMsby5yZXF1ZXN0PWksbC5wYXJlbnROb2RlJiZsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobCksYShvKX19LGwuaHJlZj10LDAhPT1sLmhyZWYuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihsLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSxyP3IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxyLm5leHRTaWJsaW5nKTpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGwpfSkoZSxhLG51bGwsdCxyKX0pKSx0PXs4MzYwODowfTtsLmYubWluaUNzcz0ocixuKT0+e3Rbcl0/bi5wdXNoKHRbcl0pOjAhPT10W3JdJiZ7NjQ0NToxLDg1Nzk6MSwxMDM2NjoxLDEyMDUxOjEsMTIzODU6MSwxMzQ5MjoxLDE3MDg3OjEsMTk1OTU6MSwxOTc4NzoxLDIwMzU0OjEsMjkyOTY6MSwzNzc0NjoxLDQwOTE0OjEsNDQyNTM6MSw1MjM5NjoxLDUzNTIxOjEsNTczMDA6MSw1OTk0MToxLDYwMDYyOjEsNjcyMTI6MSw3NDAxMToxLDc4ODk5OjEsODEwNzI6MSw4NDMwNjoxLDg3NzQwOjEsODk1NTg6MSw5MDk2MDoxLDk0MjMyOjEsOTc3OTc6MX1bcl0mJm4ucHVzaCh0W3JdPWUocikudGhlbigoKCk9Pnt0W3JdPTB9KSwoZT0+e3Rocm93IGRlbGV0ZSB0W3JdLGV9KSkpfX19KSgpLGwuaTE4bmV4dD0oZSx0PXt9LHIsbj1sLmcubGFuZ3VhZ2UpPT57aWYobnVsbD09PWUpe2lmKEFycmF5LmlzQXJyYXkocikpcmV0dXJuIHJbdm9pZCAwPT09dC5jb3VudD8wOmwuX3BsdXJhbFtuXSh0LmNvdW50KV0ucmVwbGFjZSgveyhcdyspfS9nLCgoZSxyKT0+dm9pZCAwIT09KHQucmVwbGFjZXx8dClbcl0/KHQucmVwbGFjZXx8dClbcl06ZSkpO2lmKCJvYmplY3QiPT10eXBlb2YgcilyZXR1cm4gcltsLmcubGFuZ3VhZ2VdP2wuaTE4bmV4dChudWxsLHQscltsLmcubGFuZ3VhZ2VdKTpsLmkxOG5leHQobnVsbCx0LHIuZW4sImVuIil9ZWxzZSBpZihyJiZlKXtjb25zdCBuPWAke2V9JHt0LmNvbnRleHQ/YF8ke3QuY29udGV4dH1gOiIifWA7aWYocltuXSlyZXR1cm4gbC5pMThuZXh0KG51bGwsdCxyW25dKX1yZXR1cm4ibnVtYmVyIj09dHlwZW9mIGU/ZS50b1N0cmluZygpOiJzdHJpbmciIT10eXBlb2YgZT8iIjplfSwoKCk9Pnt2YXIgZT17ODM2MDg6MCw0NjkwNzowLDMyODE2OjAsNDMzMjU6MCwzOTA1OjAsMTU5MzI6MCw1MTUwODowLDg0MDg6MCw4MDA5NzowfTtsLmYuaj0odCxyKT0+e3ZhciBuPWwubyhlLHQpP2VbdF06dm9pZCAwO2lmKDAhPT1uKWlmKG4pci5wdXNoKG5bMl0pO2Vsc2UgaWYoL14oMSgoNzB8OTcpODd8MDM2NnwyMDUxfDIzODV8MzQ5Mnw1OTMyfDk1OTUpfDMoMjgxNnw3NzQ2fDkwNSl8NCgwOTE0fDMzMjV8NDI1M3w2OTA3KXw1KDE1MDh8MjM5NnwzNTIxfDczMDB8OTk0MSl8NigwMDYyfDQ0NXw3MjEyKXw4KCgzNjB8NDB8OTU1KTh8MDA5N3wxMDcyfDQzMDZ8NTc5fDc3NDApfDkoMDk2MHw0MjMyfDc3OTcpfDIwMzU0fDI5Mjk2fDc0MDExfDc4ODk5KSQvLnRlc3QodCkpZVt0XT0wO2Vsc2V7dmFyIGE9bmV3IFByb21pc2UoKChyLGEpPT5uPWVbdF09W3IsYV0pKTtyLnB1c2goblsyXT1hKTt2YXIgYz1sLnArbC51KHQpLGk9bmV3IEVycm9yO2wubChjLChyPT57aWYobC5vKGUsdCkmJigwIT09KG49ZVt0XSkmJihlW3RdPXZvaWQgMCksbikpe3ZhciBhPXImJigibG9hZCI9PT1yLnR5cGU/Im1pc3NpbmciOnIudHlwZSksYz1yJiZyLnRhcmdldCYmci50YXJnZXQuc3JjO2kubWVzc2FnZT0iTG9hZGluZyBjaHVuayAiK3QrIiBmYWlsZWQuXG4oIithKyI6ICIrYysiKSIsaS5uYW1lPSJDaHVua0xvYWRFcnJvciIsaS50eXBlPWEsaS5yZXF1ZXN0PWMsblsxXShpKX19KSwiY2h1bmstIit0LHQpfX0sbC5PLmo9dD0+MD09PWVbdF07dmFyIHQ9KHQscik9Pnt2YXIgbixhLFtjLGksb109cixkPTA7aWYoYy5zb21lKCh0PT4wIT09ZVt0XSkpKXtmb3IobiBpbiBpKWwubyhpLG4pJiYobC5tW25dPWlbbl0pO2lmKG8pdmFyIGY9byhsKX1mb3IodCYmdChyKTtkPGMubGVuZ3RoO2QrKylhPWNbZF0sbC5vKGUsYSkmJmVbYV0mJmVbYV1bMF0oKSxlW2FdPTA7cmV0dXJuIGwuTyhmKX0scj1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdO3IuZm9yRWFjaCh0LmJpbmQobnVsbCwwKSksci5wdXNoPXQuYmluZChudWxsLHIucHVzaC5iaW5kKHIpKX0pKCksCmwucD1sLmcmJmwuZy5XRUJQQUNLX1BVQkxJQ19QQVRIfHxsLnB9KSgpOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3552.4c5535183b7a0330a89d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.224Z","timestamp":1785154590224,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3552.4c5535183b7a0330a89d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-2fa2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:37\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2677a3a08fdeb87ada1082239483bdf2\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":12194,"size_decoded":4814,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3071)","md5":"8cb7d12d58618d9e9433db7cf169e678","sha1":"dd2e2830dd9f4f8c3e4000fb90c94712f7315f67","sha256":"e54bba4bdf7867aec664fc0c023a4e77650464bb7e2e1a2d80ef75500363cd92","sha512":"9c9ce4a19d03df706a0fb6495901a15dd961b87797e48e43669a130ec51d4d3788fcd9e251dd54f1560134509553e5c7a1cc17249ad1f6f562d104b6b10d9a66","ssdeep":"192:ETCSGJXJ6h4GX8tWKEN7Nbj61RO2g6OQLgwF8TEz5XnC/x6/v60KjBHAH4yiFbBw:EmSGehtqWNN7Nbj61ROQLRF8TkVNjaAj","tlshash":"ab42b53d719358a8666780e980390b7ba6283980a58741bcfb78dccf46cddd46277f38","first_seen":"2026-07-22T11:33:41.980937Z","last_seen":"2026-07-27T14:18:36.416705Z","times_seen":1761,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNTUyXSx7NDUwMjk1KHQpe3QuZXhwb3J0cz17fX0sNDYyMzUodCl7dC5leHBvcnRzPXt9fSw5NzMxMTkodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7cXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2U6KCk9Pm59KTt2YXIgaT1zKDc1NTYyNyksYT1zKDk4NDM3Nik7dmFyIG89cygyMTYxMSk7ZnVuY3Rpb24gbih0LGUscyl7Y29uc3Qgbj0oMCxvLnRvTnVtYmVyT3JVbmRlZmluZWQpKHQpO2lmKCJlY29ub21pYyI9PT1lPy50eXBlJiYwPT09bnx8dm9pZCAwPT09bilyZXR1cm47Y29uc3QgbD1zPy5jdXN0b21QcmljZUZvcm1hdHRlcnx8InZvbHVtZSI9PT1lLmZvcm1hdCYmbmV3IGEuVm9sdW1lRm9ybWF0dGVyKHtwcmVjaXNpb246Mn0pfHxuZXcgaS5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTplLnByaWNlc2NhbGV8fDEwMCxtaW5Nb3ZlOmUubWlubW92fHwxLGZyYWN0aW9uYWw6ZS5mcmFjdGlvbmFsLG1pbk1vdmUyOmUubWlubW92ZTJ9KSxyPXZvaWQgMCE9PXM/LnNpZ25Qb3NpdGl2ZUNoYW5nZT9zLnNpZ25Qb3NpdGl2ZUNoYW5nZTpzPy5zaWduUG9zaXRpdmU7cmV0dXJuKCh0LGU9ITApPT5lP2AoJHt0fSlgOnQpKGwuZm9ybWF0KG4se3NpZ25Qb3NpdGl2ZTpyLHNpZ25OZWdhdGl2ZTpzPy5zaWduTmVnYXRpdmV9KSxzPy5jaGFuZ2VJbkJyYWNrZXRzKX19LDYwMjg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3F1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3k6KCk9PmF9KTt2YXIgaT1zKDE4NTI3MSk7ZnVuY3Rpb24gYSh0KXtzd2l0Y2godCl7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtjYXNlIlBDVERZIjpyZXR1cm4gaS50KG51bGwse2NvbnRleHQ6Il9tYXhfbGVuXzkifSxzKDQ0NTA1KSk7Y2FzZSJQQ1RQQVIiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNDY4NDYwKSk7ZGVmYXVsdDpyZXR1cm4gdH19Nzg2NzYwKHQsZSxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtyZXR1cm4ibWN4X2ZyZWUiPT09dH1mdW5jdGlvbiBhKHQpe3JldHVybiEhdCYmKGkodC5zeW1ib2xuYW1lKXx8InBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZpKHQudmFsdWVzPy5hbHRlcm5hdGl2ZSkpfXMuZChlLHtpc01jeFF1b3RlRGF0YTooKT0+YX0pfSwxMDE3MTIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybiB0LmVuZHNXaXRoKCJfZGx5Iil9ZnVuY3Rpb24gYSh0KXtyZXR1cm4hIXQmJighKHZvaWQgMD09PXQuc3ltYm9sbmFtZXx8IWkodC5zeW1ib2xuYW1lKSl8fEJvb2xlYW4oInBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZ0LnZhbHVlcyYmdm9pZCAwIT09dC52YWx1ZXMuYWx0ZXJuYXRpdmUmJmkodC52YWx1ZXMuYWx0ZXJuYXRpdmUpKSl9cy5kKGUse2lzU2ZRdW90ZURhdGE6KCk9PmF9KX0sMjAyNDYwKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse0Fic3RyYWN0SW5kaWNhdG9yOigpPT5sfSk7dmFyIGk9cygyMjEwNjEpLGE9cygxNTAxNTApLG89cygxNTk1MTMpO3MoMzQ0Nzg1KTtjb25zdCBuPSgwLGkuZ2V0TG9nZ2VyKSgiR1VJLkJsb2Nrcy5BYnN0cmFjdEluZGljYXRvciIpO2NsYXNzIGx7Y29uc3RydWN0b3IodCl7dGhpcy5fY2xhc3NTdWZmaXg9IiIsdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJhYnN0cmFjdC1pbmRpY2F0b3IiLHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9zaG93VG9vbHRpcD0hMCx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuX3Rvb2x0aXBUeXBlPSJjdXN0b20iLHRoaXMuX2xhc3RUb29sdGlwVGV4dD0iIix0aGlzLl9xdW90ZVNlc3Npb249dC5xdW90ZVNlc3Npb259Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy5fdmFsdWV9Z2V0VG9vbHRpcFRleHQoKXtyZXR1cm4gdGhpcy5fbGFiZWxNYXBbdGhpcy5fdmFsdWVdfHwiIn1nZXRMYWJlbCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fZWx9dXBkYXRlKHQsZSl7dGhpcy5fdXBkYXRlVmFsdWUodCxlKSx0aGlzLl9yZW5kZXIoKX1zZXRUb29sdGlwRW5hYmxlZCh0PSExKXt0aGlzLl9zaG93VG9vbHRpcCE9PXQmJih0aGlzLl9zaG93VG9vbHRpcD10LHRoaXMuX3JlbmRlclRvb2x0aXAoKSl9ZW5hYmxlU2hvcnRNb2RlKCl7ITAhPT10aGlzLl9zaG9ydE1vZGUmJih0aGlzLl9zaG9ydE1vZGU9ITAsdGhpcy5fcmVuZGVyKCkpfWRpc2FibGVTaG9ydE1vZGUoKXshMSE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLG8uZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKHQpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09dCYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQsdGhpcy5fcmVuZGVyKCkpfV9pbml0KHQpe3RoaXMuX2VsPXQuZWw/dC5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPXQuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPXQuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPXQubGFiZWxNYXAsCnRoaXMuX3Nob3dUb29sdGlwPXQuc2hvd1Rvb2x0aXAsdGhpcy5fY2xhc3NTdWZmaXg9dC5jbGFzc1N1ZmZpeCx0aGlzLl9zeW1ib2xOYW1lPXQuc3ltYm9sLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQuc2Vzc2lvblN0YXR1c0ljb24sdGhpcy5fb25WYWx1ZUNoYW5nZT10Lm9uVmFsdWVDaGFuZ2UsdC50b29sdGlwVHlwZSYmKHRoaXMuX3Rvb2x0aXBUeXBlPXQudG9vbHRpcFR5cGUpLHRoaXMuX3F1b3RlU2Vzc2lvbkdVSUQ9KDAsYS5ndWlkKSgpLCEwPT09dC5zaG9ydCYmdGhpcy5lbmFibGVTaG9ydE1vZGUoKSx0LmRhdGEmJnRoaXMuX3VwZGF0ZVZhbHVlKHQuZGF0YSl9X2NsZWFyQ2xhc3Nlcygpe09iamVjdC52YWx1ZXModGhpcy5fY2xhc3NNYXApLm1hcCgodD0+e3RoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7dH1gKSx0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKGAke3R9JHt0aGlzLl9jbGFzc1N1ZmZpeH1gKX0pKX1fcmVuZGVyKCl7dGhpcy5fcmVuZGVyQ2xhc3NlcygpLHRoaXMuX3JlbmRlclRvb2x0aXAoKSx0aGlzLl9yZW5kZXJMYWJlbCgpfV9yZW5kZXJMYWJlbCgpe3RoaXMuX2VsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fdXBkYXRlVmFsdWUodCxlKXtjb25zdCBzPXRoaXMuX2dldFZhbHVlRnJvbURhdGEodCk7KGV8fHMhPT10aGlzLl92YWx1ZSkmJih0aGlzLl92YWx1ZT1zLHRoaXMuX29uVmFsdWVDaGFuZ2U/Lih0aGlzLl92YWx1ZSkpfV9yZW5kZXJDbGFzc2VzKCl7Y29uc3QgdD10aGlzLl9lbC5jbGFzc0xpc3Q7dC5hZGQodGhpcy5fY29tcG9uZW50Q2xhc3MsdGhpcy5fY29tcG9uZW50Q2xhc3MrdGhpcy5fY2xhc3NTdWZmaXgpO2NvbnN0IGU9dGhpcy5fY2xhc3NNYXBbdGhpcy5fdmFsdWVdO2Zvcihjb25zdCBzIGluIHRoaXMuX2NsYXNzTWFwKXtjb25zdCBpPXRoaXMuX2NsYXNzTWFwW3NdO2kmJihpPT09ZT8odC5hZGQoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5hZGQoaSsiX193aXRoSWNvbiIpKToodC5yZW1vdmUoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5yZW1vdmUoaSsiX193aXRoSWNvbiIpKSl9IWUmJnRoaXMuX3ZhbHVlJiZuLmxvZ1dhcm4oYG5vIGNsYXNzTmFtZSBmb3Igc3RhdHVzICR7dGhpcy5fdmFsdWV9YCl9X3JlbmRlclRvb2x0aXAoKXtjb25zdCB0PXRoaXMuX3Nob3dUb29sdGlwP3RoaXMuZ2V0VG9vbHRpcFRleHQoKToiIjt0IT09dGhpcy5fbGFzdFRvb2x0aXBUZXh0JiYodGhpcy5fbGFzdFRvb2x0aXBUZXh0PXQsdGhpcy5fZWwuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdCksImN1c3RvbSI9PT10aGlzLl90b29sdGlwVHlwZSYmdGhpcy5fZWwuY2xhc3NMaXN0LnRvZ2dsZSgiYXBwbHktY29tbW9uLXRvb2x0aXAiLHRoaXMuX3Nob3dUb29sdGlwKSl9X2dldFF1b3RlU2Vzc2lvbklkKCl7cmV0dXJuYCR7dGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4fS4ke3RoaXMuX3F1b3RlU2Vzc2lvbkdVSUR9YH19fSwzMDY5MCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtEYXRhTW9kZUluZGljYXRvcjooKT0+ZH0pO3ZhciBpLGE9cygxODUyNzEpLG89KHMoODI5MTgwKSxzKDQ1MDI5NSkscygyMDI0NjApKTshZnVuY3Rpb24odCl7dC5EZWxheWVkPSJkZWxheWVkIix0LkRlbGF5ZWRTdHJlYW1pbmc9ImRlbGF5ZWRfc3RyZWFtaW5nIix0LkVuZE9mRGF5PSJlbmRvZmRheSIsdC5TbmFwc2hvdD0ic25hcHNob3QiLHQuUmVhbHRpbWU9InJlYWx0aW1lIix0LkNvbm5lY3Rpbmc9ImNvbm5lY3RpbmciLHQuTG9hZGluZz0ibG9hZGluZyIsdC5JbnZhbGlkPSJpbnZhbGlkIix0LkZvcmJpZGRlbj0iZm9yYmlkZGVuIix0LlN0cmVhbWluZz0ic3RyZWFtaW5nIn0oaXx8KGk9e30pKTtjb25zdCBuPXtjb25uZWN0aW5nOiJ0di1kYXRhLW1vZGUtLWNvbm5lY3RpbmciLGRlbGF5ZWQ6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZGVsYXllZF9zdHJlYW1pbmc6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZW5kb2ZkYXk6InR2LWRhdGEtbW9kZS0tZW5kb2ZkYXkiLGZvcmJpZGRlbjoidHYtZGF0YS1tb2RlLS1mb3JiaWRkZW4iLHJlYWx0aW1lOiJ0di1kYXRhLW1vZGUtLXJlYWx0aW1lIixzbmFwc2hvdDoidHYtZGF0YS1tb2RlLS1zbmFwc2hvdCIsbG9hZGluZzoidHYtZGF0YS1tb2RlLS1sb2FkaW5nIixyZXBsYXk6InR2LWRhdGEtbW9kZS0tcmVwbGF5In07ZnVuY3Rpb24gbCgpe3JldHVybntjb25uZWN0aW5nOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfY29ubmVjdGluZ19sZXR0ZXIifSxzKDg1OTk5NCkpLGRlbGF5ZWQ6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LHMoODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxzKDM5NDUwMSkpLGVuZG9mZGF5OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxzKDU3MDkzOSkpLGZvcmJpZGRlbjphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxzKDM5NDkyMSkpLHJlYWx0aW1lOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0scyg4NjY0NCkpLHNuYXBzaG90OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0scygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxzKDc1NjQ1NykpfX1jb25zdCByPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgZCBleHRlbmRzIG8uQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KHQpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9CnNldE1vZGUodCxlKXt0aGlzLnVwZGF0ZSh7dmFsdWVzOnt1cGRhdGVfbW9kZTp0LHVwZGF0ZV9tb2RlX3NlY29uZHM6ZX19KX1oaWRlKCl7dGhpcy5fZWwuY2xhc3NMaXN0LmFkZCgiaS1oaWRkZW4iKX1zaG93KCl7dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX1nZXRUb29sdGlwVGV4dCgpe2xldCB0PSIiO2NvbnN0IGU9dGhpcy5nZXRWYWx1ZSgpO2lmKCIiPT09ZSlyZXR1cm4gdDtzd2l0Y2goZSl7Y2FzZSJkZWxheWVkIjp0PWEudChudWxsLHZvaWQgMCxzKDc5MDUyNCkpO2JyZWFrO2Nhc2UiZGVsYXllZF9zdHJlYW1pbmciOnQ9YS50KG51bGwsdm9pZCAwLHMoODE0NjEpKTticmVhaztkZWZhdWx0OnQ9dGhpcy5fbGFiZWxNYXBbZV18fHR9cmV0dXJuWyJkZWxheWVkIiwiZGVsYXllZF9zdHJlYW1pbmciXS5pbmNsdWRlcyhlKSYmKHQ9dC5mb3JtYXQoe251bWJlcjpTdHJpbmcoTWF0aC5yb3VuZCh0aGlzLl9tb2RlSW50ZXJ2YWwvNjApKX0pKSx0fV9pbml0KHQ9e30pe2NvbnN0IGU9T2JqZWN0LmFzc2lnbih7fSx7Y2xhc3NNYXA6bixjbGFzc1N1ZmZpeDoiIixkYXRhOnt2YWx1ZXM6e3VwZGF0ZV9tb2RlOiJjb25uZWN0aW5nIn19LGxhYmVsTWFwOntjb25uZWN0aW5nOmEudChudWxsLHZvaWQgMCxzKDE5NDE5NCkpLGRlbGF5ZWQ6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZW5kb2ZkYXk6YS50KG51bGwsdm9pZCAwLHMoNjAxNzY0KSksZm9yYmlkZGVuOmEudChudWxsLHZvaWQgMCxzKDMyODMxMykpLHJlYWx0aW1lOmEudChudWxsLHZvaWQgMCxzKDg4MzkyOCkpLHNuYXBzaG90OmEudChudWxsLHZvaWQgMCxzKDU2MjM5NSkpLGxvYWRpbmc6IiIscmVwbGF5OmEudChudWxsLHZvaWQgMCxzKDk3NzI3KSl9LG1vZGVJbnRlcnZhbDo2MDAsc2hvcnQ6ITEsc2hvcnRMYWJlbE1hcDpsKCksc2hvd1Rvb2x0aXA6ITAsdG9vbHRpcFR5cGU6ImN1c3RvbSJ9LHQpO3RoaXMuX21vZGVJbnRlcnZhbD1lLm1vZGVJbnRlcnZhbHx8NjAwLHRoaXMuX3Nob3J0TGFiZWxNYXA9ZS5zaG9ydExhYmVsTWFwfHxsKCksc3VwZXIuX2luaXQoZSksdGhpcy5fcmVuZGVyKCl9X2dldFZhbHVlRnJvbURhdGEodCl7bGV0IGU7cmV0dXJuIGU9dm9pZCAwIT09dC52YWx1ZXMmJnZvaWQgMCE9PXQudmFsdWVzLnVwZGF0ZV9tb2RlP3QudmFsdWVzLnVwZGF0ZV9tb2RlOnRoaXMuZ2V0VmFsdWUoKSxyW2VdfHxlfV91cGRhdGVWYWx1ZSh0LGUpe3ZvaWQgMCE9PXQudmFsdWVzJiZ2b2lkIDAhPT10LnZhbHVlcy51cGRhdGVfbW9kZV9zZWNvbmRzJiYodGhpcy5fbW9kZUludGVydmFsPXQudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMpLHN1cGVyLl91cGRhdGVWYWx1ZSh0LGUpfX19LDU2MzkxOCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtNYXJrZXRTdGF0dXNJbmRpY2F0b3I6KCk9Pmx9KTt2YXIgaT1zKDE4NTI3MSksYT1zKDIwMjQ2MCk7cyg0NjIzNSk7Y29uc3Qgbz17aW52YWxpZDoidHYtbWFya2V0LXN0YXR1cy0taW52YWxpZCIsbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQiLG91dF9vZl9zZXNzaW9uOiJ0di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbiIscG9zdF9tYXJrZXQ6InR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0IixwcmVfbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IixuaWdodDoidHYtbWFya2V0LXN0YXR1cy0tbmlnaHQiLGxvYWRpbmc6InR2LW1hcmtldC1zdGF0dXMtLWxvYWRpbmciLGhvbGlkYXk6InR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkiLHJlcGxheToidHYtbWFya2V0LXN0YXR1cy0tcmVwbGF5IixkZWxpc3RlZDoidHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQifSxuPXtpbnZhbGlkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1pbnZhbGlkIixtYXJrZXQ6InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW1hcmtldCIsb3V0X29mX3Nlc3Npb246InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW91dC1vZi1zZXNzaW9uIixwb3N0X21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcG9zdC1tYXJrZXQiLG5pZ2h0OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1uaWdodCIscHJlX21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcHJlLW1hcmtldCIsbG9hZGluZzoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tbG9hZGluZyIsaG9saWRheToidHYtbWFya2V0LXN0YXR1c19faWNvbi0taG9saWRheSIscmVwbGF5OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1yZXBsYXkiLGRlbGlzdGVkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1kZWxpc3RlZCJ9O2NsYXNzIGwgZXh0ZW5kcyBhLkFic3RyYWN0SW5kaWNhdG9ye2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMuX3F1b3RlU2Vzc2lvblByZWZpeD0ibWFya2V0LXN0YXR1cy1pbmRpY2F0b3IiLHRoaXMuX2NvbXBvbmVudENsYXNzPSJ0di1tYXJrZXQtc3RhdHVzIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2luaXQodCl9c2V0U3RhdHVzKHQsZSl7Y29uc3Qgcz17dmFsdWVzOntjdXJyZW50X3Nlc3Npb246ImRlbGlzdGVkIj09PXRoaXMuZ2V0VmFsdWUoKT8iZGVsaXN0ZWQiOnR9fTt0aGlzLnVwZGF0ZShzLGUpfWdldFRvb2x0aXBUZXh0KCl7bGV0IHQ9c3VwZXIuZ2V0VG9vbHRpcFRleHQoKTtyZXR1cm4iIj09PXR8fCIiIT09dGhpcy5fZXh0cmFUaXRsZSYmKHQ9YCR7dH0sICR7dGhpcy5fZXh0cmFUaXRsZX1gKSx0fXNldEV4dHJhVGl0bGUodCl7dGhpcy5fZXh0cmFUaXRsZT10fXJlc2V0KCl7dGhpcy5fY2xlYXJDbGFzc2VzKCksdGhpcy5fbGFiZWxFbC50ZXh0Q29udGVudD0iIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2VsLnNldEF0dHJpYnV0ZSgidGl0bGUiLCIiKSx0aGlzLl92YWx1ZT0iIn1lbmFibGVTaG9ydE1vZGUodD0hMCl7dm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpLHN1cGVyLmVuYWJsZVNob3J0TW9kZSgpfWRpc2FibGVTaG9ydE1vZGUoKXsKdm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpLHN1cGVyLmRpc2FibGVTaG9ydE1vZGUoKX1fcmVuZGVyTGFiZWwoKXt0aGlzLl9sYWJlbEVsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fZ2V0VmFsdWVGcm9tRGF0YSh0KXtyZXR1cm4gdC52YWx1ZXM/LnR5cGVzcGVjcz8uaW5jbHVkZXMoImRpc2NvbnRpbnVlZCIpPyJkZWxpc3RlZCI6dm9pZCAwIT09dC52YWx1ZXM/LmN1cnJlbnRfc2Vzc2lvbj90LnZhbHVlcy5jdXJyZW50X3Nlc3Npb246dGhpcy5nZXRWYWx1ZSgpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJMYWJlbEVsZW1lbnQoKSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbj90aGlzLl9yZW5kZXJJY29uRWxlbWVudCgpOnRoaXMuX3JlbmRlckRvdEVsZW1lbnQoKSxzdXBlci5fcmVuZGVyKCl9X2luaXQodCl7Y29uc3QgZT1PYmplY3QuYXNzaWduKHt9LGZ1bmN0aW9uKCl7Y29uc3QgdD17aW52YWxpZDppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoNjM4NDA1KSksbWFya2V0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg3MDI3ODgpKSxvdXRfb2Zfc2Vzc2lvbjppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoOTE0NTcyKSkscG9zdF9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDg2NzQ1NSkpLHByZV9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDkxODg0MikpLGxvYWRpbmc6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDI3NDQxNSkpLGhvbGlkYXk6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDY4NTEwNCkpLGRlbGlzdGVkOmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg1NTIxNSkpLG5pZ2h0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg4OTc1OTEpKSxyZXBsYXk6IiJ9O3JldHVybntjbGFzc01hcDpvLGljb25DbGFzc01hcDpuLGNsYXNzU3VmZml4OiIiLGRhdGE6e30sZXh0cmFUaXRsZToiIixsYWJlbE1hcDp0LHNob3J0OiExLHNob3dUb29sdGlwOiEwLHRvb2x0aXBUeXBlOiJjdXN0b20ifX0oKSx0KTtzdXBlci5faW5pdChlKSx0aGlzLnNldEV4dHJhVGl0bGUoZS5leHRyYVRpdGxlKSx0aGlzLl9yZW5kZXIoKX1fcmVuZGVyTGFiZWxFbGVtZW50KCl7dm9pZCAwPT09dGhpcy5fbGFiZWxFbCYmKHRoaXMuX2xhYmVsRWw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLHRoaXMuX2xhYmVsRWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2xhYmVsYCksdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKGAke3RoaXMuX2NvbXBvbmVudENsYXNzfV9fbGFiZWwke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2xhYmVsRWwpKX1fcmVuZGVyRG90RWxlbWVudCgpe3RoaXMuX2VsLmNvbnRhaW5zKHRoaXMuX2ljb25FbCkmJnRoaXMuX2VsLnJlbW92ZUNoaWxkKHRoaXMuX2ljb25FbCksdm9pZCAwPT09dGhpcy5fZG90RWwmJih0aGlzLl9kb3RFbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZG90RWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2RvdGApLHRoaXMuX2RvdEVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19kb3Qke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2RvdEVsKSl9X3JlbmRlckljb25FbGVtZW50KCl7dGhpcy5fZWwuY29udGFpbnModGhpcy5fZG90RWwpJiZ0aGlzLl9lbC5yZW1vdmVDaGlsZCh0aGlzLl9kb3RFbCksdm9pZCAwPT09dGhpcy5faWNvbkVsJiZ0aGlzLl92YWx1ZSYmKHRoaXMuX2ljb25FbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uYCksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uJHt0aGlzLl9jbGFzc1N1ZmZpeH1gKSx0aGlzLl9lbC5hcHBlbmRDaGlsZCh0aGlzLl9pY29uRWwpKX19fSw4OTE3NzgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UHJpY2VDb2xvcmVyOigpPT5pfSk7dmFyIGksYT1zKDIxODgxNCksbz1zKDUwNTU2KTshZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUpe3JldHVybiAwPT09dD9lJiZ2b2lkIDAhPT1lLm5ldXRyYWw/ZS5uZXV0cmFsOmEuY29sb3IuYmxhY2s3MDp0PjA/ZSYmdm9pZCAwIT09ZS51cD9lLnVwOm8uY29sb3JzUGFsZXR0ZVsiY29sb3Itc3VjY2VzcyJdOmUmJnZvaWQgMCE9PWUuZG93bj9lLmRvd246by5jb2xvcnNQYWxldHRlWyJjb2xvci1kYW5nZXIiXX10LmZvcm1hdFNpZ249ZSx0LmZvcm1hdERpZmY9ZnVuY3Rpb24odCxzKXtyZXR1cm4gZShzLXQpfSx0LmRvbURpZmZlcmVuY2U9ZnVuY3Rpb24odCxlLHM9MCxpPSIiLGE9IiIpe2Z1bmN0aW9uIG8odCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPXQsZX1jb25zdCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKCFzKXJldHVybiBuLmFwcGVuZENoaWxkKG8odCkpLG47Y29uc3QgbD10KyIiLHI9ZSsiIjtsZXQgZD1udWxsO2lmKGwubGVuZ3RoPT09ci5sZW5ndGgpe2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCsrKWlmKGwuY2hhckF0KHQpIT09ci5jaGFyQXQodCkpe2Q9dDticmVha319ZWxzZSBkPU51bWJlcigiMCIpO2lmKG51bGw9PT1kKXJldHVybiBuLmFwcGVuZENoaWxkKG8obCkpLG47Y29uc3QgXz1vKGwuc3Vic3RyaW5nKDAsZCkpLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiB1LmNsYXNzTmFtZT1zPDA/aTphLHUuYXBwZW5kQ2hpbGQobyhsLnN1YnN0cmluZyhkKSkpLG4uYXBwZW5kQ2hpbGQoXyksbi5hcHBlbmRDaGlsZCh1KSxufX0oaXx8KGk9e30pKX19XSk7"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCSOL.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.861Z","timestamp":1785154591861,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCSOL.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"persimmontrades.com/frontmain/css/plugin.min.css","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.310Z","timestamp":1785154589310,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/css/plugin.min.css HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 71751\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\nalt-svc: h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\"\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":577547,"size_decoded":72239,"mime_type":"text/css","magic":"ASCII text","md5":"e36fefd643a46344fdf083a4a76aad5e","sha1":"9e58ac547e8927111e334bbc4319df8dec5c4a61","sha256":"6148407369f346c0ec7d2f8cc85cc7ebaf453b6f948cb79d34d9713c13ceed06","sha512":"d4c2b46ae0be0709cb51962a1c586849e791916ed96e20f074573a71a48b66d5ae68009e3fd88a457cb2bae28e21e49b61df484e8b518509f28fd2a00de3fc64","ssdeep":"12288:KQlt2777TxLFHyltIqcnjZg1f61SkCqrVsv:vq7XHyffc6","tlshash":"44c4436994f70984260bc45817df2b547338a06b8819dcadb6cf7a8ccfc6a9485d2fcd","first_seen":"2026-06-14T14:02:22.169107Z","last_seen":"2026-07-27T12:17:29.249897Z","times_seen":4,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsKLyohCiAqIEJvb3RzdHJhcCB2NC4xLjAgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pCiAqIENvcHlyaWdodCAyMDExLTIwMTkgVGhlIEJvb3RzdHJhcCBBdXRob3JzCiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLgogKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKQogKi8KCjpyb290IHsKICAgIC0tYmx1ZTogIzAwN2JmZjsKICAgIC0taW5kaWdvOiAjNjYxMGYyOwogICAgLS1wdXJwbGU6ICM2ZjQyYzE7CiAgICAtLXBpbms6ICNlODNlOGM7CiAgICAtLXJlZDogI2RjMzU0NTsKICAgIC0tb3JhbmdlOiAjZmQ3ZTE0OwogICAgLS15ZWxsb3c6ICNmZmMxMDc7CiAgICAtLWdyZWVuOiAjMjhhNzQ1OwogICAgLS10ZWFsOiAjMjBjOTk3OwogICAgLS1jeWFuOiAjMTdhMmI4OwogICAgLS13aGl0ZTogI2ZmZjsKICAgIC0tZ3JheTogIzZjNzU3ZDsKICAgIC0tZ3JheS1kYXJrOiAjMzQzYTQwOwogICAgLS1wcmltYXJ5OiAjNDEzYWE0OwogICAgLS1zZWNvbmRhcnk6ICMwNmI1OTA7CiAgICAtLXN1Y2Nlc3M6ICMzNWI1M2U7CiAgICAtLWluZm86ICMzNzdkZmY7CiAgICAtLXdhcm5pbmc6ICNmZmFmMDA7CiAgICAtLWRhbmdlcjogI2UyMzYzNjsKICAgIC0tbGlnaHQ6ICNmZmZmZmY7CiAgICAtLWRhcms6ICMyMDI0Mjg7CiAgICAtLWJyZWFrcG9pbnQteHM6IDA7CiAgICAtLWJyZWFrcG9pbnQtc206IDU3NnB4OwogICAgLS1icmVha3BvaW50LW1kOiA3NjhweDsKICAgIC0tYnJlYWtwb2ludC1sZzogOTkycHg7CiAgICAtLWJyZWFrcG9pbnQteGw6IDEyMDBweDsKICAgIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBSb2JvdG8sICJIZWx2ZXRpY2EgTmV1ZSIsIEFyaWFsLCBzYW5zLXNlcmlmLCAiQXBwbGUgQ29sb3IgRW1vamkiLCAiU2Vnb2UgVUkgRW1vamkiLCAiU2Vnb2UgVUkgU3ltYm9sIjsKICAgIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICJMaWJlcmF0aW9uIE1vbm8iLCAiQ291cmllciBOZXciLCBtb25vc3BhY2UKfQoKKiwKOjphZnRlciwKOjpiZWZvcmUgewogICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgpodG1sIHsKICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOwogICAgbGluZS1oZWlnaHQ6IDEuMTU7CiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7CiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsKICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyOwogICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApCn0KCkAtbXMtdmlld3BvcnQgewogICAgd2lkdGg6IGRldmljZS13aWR0aAp9CgphcnRpY2xlLAphc2lkZSwKZGlhbG9nLApmaWdjYXB0aW9uLApmaWd1cmUsCmZvb3RlciwKaGVhZGVyLApoZ3JvdXAsCm1haW4sCm5hdiwKc2VjdGlvbiB7CiAgICBkaXNwbGF5OiBibG9jawp9Cgpib2R5IHsKICAgIG1hcmdpbjogMDsKICAgIGZvbnQtZmFtaWx5OiBQb3BwaW5zLCBNaXJ6YSwgc2Fucy1zZXJpZjsKICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBsaW5lLWhlaWdodDogMS41OwogICAgY29sb3I6ICM1YTY2NzE7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZgp9CgpbdGFiaW5kZXg9Ii0xIl06Zm9jdXMgewogICAgb3V0bGluZTogMCAhaW1wb3J0YW50Cn0KCmhyIHsKICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsKICAgIGhlaWdodDogMDsKICAgIG92ZXJmbG93OiB2aXNpYmxlCn0KCmgxLApoMiwKaDMsCmg0LApoNSwKaDYgewogICAgbWFyZ2luLXRvcDogMDsKICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbQp9CgpwIHsKICAgIG1hcmdpbi10b3A6IDA7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0sCmFiYnJbdGl0bGVdIHsKICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7CiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7CiAgICBjdXJzb3I6IGhlbHA7CiAgICBib3JkZXItYm90dG9tOiAwCn0KCmFkZHJlc3MgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0Cn0KCmRsLApvbCwKdWwgewogICAgbWFyZ2luLXRvcDogMDsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKb2wgb2wsCm9sIHVsLAp1bCBvbCwKdWwgdWwgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgpkdCB7CiAgICBmb250LXdlaWdodDogNzAwCn0KCmRkIHsKICAgIG1hcmdpbi1ib3R0b206IC41cmVtOwogICAgbWFyZ2luLWxlZnQ6IDAKfQoKYmxvY2txdW90ZSB7CiAgICBtYXJnaW46IDAgMCAxcmVtCn0KCmRmbiB7CiAgICBmb250LXN0eWxlOiBpdGFsaWMKfQoKYiwKc3Ryb25nIHsKICAgIGZvbnQtd2VpZ2h0OiBib2xkZXIKfQoKc21hbGwgewogICAgZm9udC1zaXplOiA4MCUKfQoKc3ViLApzdXAgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZm9udC1zaXplOiA3NSU7CiAgICBsaW5lLWhlaWdodDogMDsKICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZQp9CgpzdWIgewogICAgYm90dG9tOiAtLjI1ZW0KfQoKc3VwIHsKICAgIHRvcDogLS41ZW0KfQoKYSB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cwp9CgphOmhvdmVyIHsKICAgIGNvbG9yOiAjMDA1NmIzOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lCn0KCmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHsKICAgIGNvbG9yOiBpbmhlcml0OwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lCn0KCmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pOmZvY3VzLAphOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKTpob3ZlciB7CiAgICBjb2xvcjogaW5oZXJpdDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZQp9CgphOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKTpmb2N1cyB7CiAgICBvdXRsaW5lOiAwCn0KCmNvZGUsCmtiZCwKcHJlLApzYW1wIHsKICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsKICAgIGZvbnQtc2l6ZTogMWVtCn0KCnByZSB7CiAgICBtYXJnaW4tdG9wOiAwOwogICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgIG92ZXJmbG93OiBhdXRvOwogICAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXIKfQoKZmlndXJlIHsKICAgIG1hcmdpbjogMCAwIDFyZW0KfQoKaW1nIHsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgICBib3JkZXItc3R5bGU6IG5vbmUKfQoKc3ZnOm5vdCg6cm9vdCkgewogICAgb3ZlcmZsb3c6IGhpZGRlbgp9Cgp0YWJsZSB7CiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlCn0KCmNhcHRpb24gewogICAgcGFkZGluZy10b3A6IC43NXJlbTsKICAgIHBhZGRpbmctYm90dG9tOiAuNzVyZW07CiAgICBjb2xvcjogIzZjNzU3ZDsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbQp9Cgp0aCB7CiAgICB0ZXh0LWFsaWduOiBpbmhlcml0Cn0KCmxhYmVsIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIG1hcmdpbi1ib3R0b206IC41cmVtCn0KCmJ1dHRvbiB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXItcmFkaXVzOiAwCn0KCmJ1dHRvbjpmb2N1cyB7CiAgICBvdXRsaW5lOiAxcHggZG90dGVkOwogICAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yCn0KCmJ1dHRvbiwKaW5wdXQsCm9wdGdyb3VwLApzZWxlY3QsCnRleHRhcmVhIHsKICAgIG1hcmdpbjogMDsKICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OwogICAgZm9udC1zaXplOiBpbmhlcml0OwogICAgbGluZS1oZWlnaHQ6IGluaGVyaXQKfQoKYnV0dG9uLAppbnB1dCB7CiAgICBvdmVyZmxvdzogdmlzaWJsZQp9CgpidXR0b24sCnNlbGVjdCB7CiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZQp9CgpbdHlwZT1yZXNldF0sClt0eXBlPXN1Ym1pdF0sCmJ1dHRvbiwKaHRtbCBbdHlwZT1idXR0b25dIHsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCn0KClt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsClt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lciwKW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciwKYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHsKICAgIHBhZGRpbmc6IDA7CiAgICBib3JkZXItc3R5bGU6IG5vbmUKfQoKaW5wdXRbdHlwZT1jaGVja2JveF0sCmlucHV0W3R5cGU9cmFkaW9dIHsKICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBwYWRkaW5nOiAwCn0KCmlucHV0W3R5cGU9ZGF0ZV0sCmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLAppbnB1dFt0eXBlPW1vbnRoXSwKaW5wdXRbdHlwZT10aW1lXSB7CiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3gKfQoKdGV4dGFyZWEgewogICAgb3ZlcmZsb3c6IGF1dG87CiAgICByZXNpemU6IHZlcnRpY2FsCn0KCmZpZWxkc2V0IHsKICAgIG1pbi13aWR0aDogMDsKICAgIHBhZGRpbmc6IDA7CiAgICBtYXJnaW46IDA7CiAgICBib3JkZXI6IDAKfQoKbGVnZW5kIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nOiAwOwogICAgbWFyZ2luLWJvdHRvbTogLjVyZW07CiAgICBmb250LXNpemU6IDEuNXJlbTsKICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0OwogICAgY29sb3I6IGluaGVyaXQ7CiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsCn0KCnByb2dyZXNzIHsKICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZQp9CgpbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLApbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHsKICAgIGhlaWdodDogYXV0bwp9CgpbdHlwZT1zZWFyY2hdIHsKICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OwogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCn0KClt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sClt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24gewogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCn0KCjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24gewogICAgZm9udDogaW5oZXJpdDsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCn0KCm91dHB1dCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKc3VtbWFyeSB7CiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKdGVtcGxhdGUgewogICAgZGlzcGxheTogbm9uZQp9CgpbaGlkZGVuXSB7CiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQKfQoKLmgxLAouaDIsCi5oMywKLmg0LAouaDUsCi5oNiwKaDEsCmgyLApoMywKaDQsCmg1LApoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07CiAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogMS40OwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmgxLApoMSB7CiAgICBmb250LXNpemU6IDIuNjZyZW0KfQoKLmgyLApoMiB7CiAgICBmb250LXNpemU6IDIuNHJlbQp9CgouaDMsCmgzIHsKICAgIGZvbnQtc2l6ZTogMnJlbQp9CgouaDQsCmg0IHsKICAgIGZvbnQtc2l6ZTogMS42cmVtCn0KCi5oNSwKaDUgewogICAgZm9udC1zaXplOiAxLjMzcmVtCn0KCi5oNiwKaDYgewogICAgZm9udC1zaXplOiAxLjJyZW0KfQoKLmxlYWQgewogICAgZm9udC1zaXplOiAxLjMzcmVtOwogICAgZm9udC13ZWlnaHQ6IDQwMAp9CgouZGlzcGxheS0xIHsKICAgIGZvbnQtc2l6ZTogNC44cmVtOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjIKfQoKLmRpc3BsYXktMiB7CiAgICBmb250LXNpemU6IDRyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbGluZS1oZWlnaHQ6IDEuMgp9CgouZGlzcGxheS0zIHsKICAgIGZvbnQtc2l6ZTogMy4ycmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjIKfQoKLmRpc3BsYXktNCB7CiAgICBmb250LXNpemU6IDIuMjVyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbGluZS1oZWlnaHQ6IDEuMgp9CgpociB7CiAgICBtYXJnaW4tdG9wOiAxcmVtOwogICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgIGJvcmRlcjogMDsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4xKQp9Cgouc21hbGwsCnNtYWxsIHsKICAgIGZvbnQtc2l6ZTogODAlOwogICAgZm9udC13ZWlnaHQ6IDQwMAp9CgoubWFyaywKbWFyayB7CiAgICBwYWRkaW5nOiAuMmVtOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMwp9CgoubGlzdC11bnN0eWxlZCB7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBsaXN0LXN0eWxlOiBub25lCn0KCi5saXN0LWlubGluZSB7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBsaXN0LXN0eWxlOiBub25lCn0KCi5saXN0LWlubGluZS1pdGVtIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jawp9CgoubGlzdC1pbmxpbmUtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHsKICAgIG1hcmdpbi1yaWdodDogLjVyZW0KfQoKLmluaXRpYWxpc20gewogICAgZm9udC1zaXplOiA5MCU7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlCn0KCi5ibG9ja3F1b3RlIHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW07CiAgICBmb250LXNpemU6IDEuMjVyZW0KfQoKLmJsb2NrcXVvdGUtZm9vdGVyIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgZm9udC1zaXplOiA4MCU7CiAgICBjb2xvcjogIzZjNzU3ZAp9CgouYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXDIwMTQgXDAwQTAiCn0KCi5pbWctZmx1aWQgewogICAgbWF4LXdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiBhdXRvCn0KCi5pbWctdGh1bWJuYWlsIHsKICAgIHBhZGRpbmc6IC4yNXJlbTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IGF1dG8KfQoKLmZpZ3VyZSB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLmZpZ3VyZS1pbWcgewogICAgbWFyZ2luLWJvdHRvbTogLjVyZW07CiAgICBsaW5lLWhlaWdodDogMQp9CgouZmlndXJlLWNhcHRpb24gewogICAgZm9udC1zaXplOiA5MCU7CiAgICBjb2xvcjogIzZjNzU3ZAp9Cgpjb2RlLAprYmQsCnByZSwKc2FtcCB7CiAgICBmb250LWZhbWlseTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCAiTGliZXJhdGlvbiBNb25vIiwgIkNvdXJpZXIgTmV3IiwgbW9ub3NwYWNlCn0KCmNvZGUgewogICAgZm9udC1zaXplOiA4Ny41JTsKICAgIGNvbG9yOiAjZTgzZThjOwogICAgd29yZC1icmVhazogYnJlYWstd29yZAp9CgphPmNvZGUgewogICAgY29sb3I6IGluaGVyaXQKfQoKa2JkIHsKICAgIHBhZGRpbmc6IC4ycmVtIC40cmVtOwogICAgZm9udC1zaXplOiA4Ny41JTsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMnJlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAtLjFyZW0gMCByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0uMXJlbSAwIHJnYmEoMCwgMCwgMCwgLjI1KQp9CgprYmQga2JkIHsKICAgIHBhZGRpbmc6IDA7CiAgICBmb250LXNpemU6IDEwMCU7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZQp9CgpwcmUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBmb250LXNpemU6IDg3LjUlOwogICAgY29sb3I6ICMyMTI1MjkKfQoKcHJlIGNvZGUgewogICAgZm9udC1zaXplOiBpbmhlcml0OwogICAgY29sb3I6IGluaGVyaXQ7CiAgICB3b3JkLWJyZWFrOiBub3JtYWwKfQoKLnByZS1zY3JvbGxhYmxlIHsKICAgIG1heC1oZWlnaHQ6IDM0MHB4OwogICAgb3ZlcmZsb3cteTogc2Nyb2xsCn0KCi5jb250YWluZXIgewogICAgd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OwogICAgcGFkZGluZy1sZWZ0OiAxNXB4OwogICAgbWFyZ2luLXJpZ2h0OiBhdXRvOwogICAgbWFyZ2luLWxlZnQ6IGF1dG8KfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5jb250YWluZXIgewogICAgICAgIG1heC13aWR0aDogNTQwcHgKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKICAgIC5jb250YWluZXIgewogICAgICAgIG1heC13aWR0aDogNzIwcHgKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKICAgIC5jb250YWluZXIgewogICAgICAgIG1heC13aWR0aDogOTYwcHgKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7CiAgICAuY29udGFpbmVyIHsKICAgICAgICBtYXgtd2lkdGg6IDExNDBweAogICAgfQp9CgouY29udGFpbmVyLWZsdWlkIHsKICAgIHdpZHRoOiAxMDAlOwogICAgcGFkZGluZy1yaWdodDogMTVweDsKICAgIHBhZGRpbmctbGVmdDogMTVweDsKICAgIG1hcmdpbi1yaWdodDogYXV0bzsKICAgIG1hcmdpbi1sZWZ0OiBhdXRvCn0KCi5yb3cgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OwogICAgbWFyZ2luLWxlZnQ6IC0xNXB4Cn0KCi5uby1ndXR0ZXJzIHsKICAgIG1hcmdpbi1yaWdodDogMDsKICAgIG1hcmdpbi1sZWZ0OiAwCn0KCi5uby1ndXR0ZXJzPi5jb2wsCi5uby1ndXR0ZXJzPltjbGFzcyo9Y29sLV0gewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMAp9CgouY29sLAouY29sLTEsCi5jb2wtMTAsCi5jb2wtMTEsCi5jb2wtMTIsCi5jb2wtMiwKLmNvbC0zLAouY29sLTQsCi5jb2wtNSwKLmNvbC02LAouY29sLTcsCi5jb2wtOCwKLmNvbC05LAouY29sLWF1dG8sCi5jb2wtbGcsCi5jb2wtbGctMSwKLmNvbC1sZy0xMCwKLmNvbC1sZy0xMSwKLmNvbC1sZy0xMiwKLmNvbC1sZy0yLAouY29sLWxnLTMsCi5jb2wtbGctNCwKLmNvbC1sZy01LAouY29sLWxnLTYsCi5jb2wtbGctNywKLmNvbC1sZy04LAouY29sLWxnLTksCi5jb2wtbGctYXV0bywKLmNvbC1tZCwKLmNvbC1tZC0xLAouY29sLW1kLTEwLAouY29sLW1kLTExLAouY29sLW1kLTEyLAouY29sLW1kLTIsCi5jb2wtbWQtMywKLmNvbC1tZC00LAouY29sLW1kLTUsCi5jb2wtbWQtNiwKLmNvbC1tZC03LAouY29sLW1kLTgsCi5jb2wtbWQtOSwKLmNvbC1tZC1hdXRvLAouY29sLXNtLAouY29sLXNtLTEsCi5jb2wtc20tMTAsCi5jb2wtc20tMTEsCi5jb2wtc20tMTIsCi5jb2wtc20tMiwKLmNvbC1zbS0zLAouY29sLXNtLTQsCi5jb2wtc20tNSwKLmNvbC1zbS02LAouY29sLXNtLTcsCi5jb2wtc20tOCwKLmNvbC1zbS05LAouY29sLXNtLWF1dG8sCi5jb2wteGwsCi5jb2wteGwtMSwKLmNvbC14bC0xMCwKLmNvbC14bC0xMSwKLmNvbC14bC0xMiwKLmNvbC14bC0yLAouY29sLXhsLTMsCi5jb2wteGwtNCwKLmNvbC14bC01LAouY29sLXhsLTYsCi5jb2wteGwtNywKLmNvbC14bC04LAouY29sLXhsLTksCi5jb2wteGwtYXV0byB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB3aWR0aDogMTAwJTsKICAgIG1pbi1oZWlnaHQ6IDFweDsKICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7CiAgICBwYWRkaW5nLWxlZnQ6IDE1cHgKfQoKLmNvbCB7CiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7CiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgIGZsZXgtYmFzaXM6IDA7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgIGZsZXgtZ3JvdzogMTsKICAgIG1heC13aWR0aDogMTAwJQp9CgouY29sLWF1dG8gewogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87CiAgICAtbXMtZmxleDogMCAwIGF1dG87CiAgICBmbGV4OiAwIDAgYXV0bzsKICAgIHdpZHRoOiBhdXRvOwogICAgbWF4LXdpZHRoOiBub25lCn0KCi5jb2wtMSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgOC4zMzMzMyU7CiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMlOwogICAgZmxleDogMCAwIDguMzMzMzMlOwogICAgbWF4LXdpZHRoOiA4LjMzMzMzJQp9CgouY29sLTIgewogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogMCAwIDE2LjY2NjY3JTsKICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjclOwogICAgZmxleDogMCAwIDE2LjY2NjY3JTsKICAgIG1heC13aWR0aDogMTYuNjY2NjclCn0KCi5jb2wtMyB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgMjUlOwogICAgLW1zLWZsZXg6IDAgMCAyNSU7CiAgICBmbGV4OiAwIDAgMjUlOwogICAgbWF4LXdpZHRoOiAyNSUKfQoKLmNvbC00IHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAtd2Via2l0LWZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzJTsKICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJQp9CgouY29sLTUgewogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogMCAwIDQxLjY2NjY3JTsKICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjclOwogICAgZmxleDogMCAwIDQxLjY2NjY3JTsKICAgIG1heC13aWR0aDogNDEuNjY2NjclCn0KCi5jb2wtNiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgNTAlOwogICAgLW1zLWZsZXg6IDAgMCA1MCU7CiAgICBmbGV4OiAwIDAgNTAlOwogICAgbWF4LXdpZHRoOiA1MCUKfQoKLmNvbC03IHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAtd2Via2l0LWZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzJTsKICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJQp9CgouY29sLTggewogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogMCAwIDY2LjY2NjY3JTsKICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjclOwogICAgZmxleDogMCAwIDY2LjY2NjY3JTsKICAgIG1heC13aWR0aDogNjYuNjY2NjclCn0KCi5jb2wtOSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgNzUlOwogICAgLW1zLWZsZXg6IDAgMCA3NSU7CiAgICBmbGV4OiAwIDAgNzUlOwogICAgbWF4LXdpZHRoOiA3NSUKfQoKLmNvbC0xMCB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlOwogICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMyU7CiAgICBmbGV4OiAwIDAgODMuMzMzMzMlOwogICAgbWF4LXdpZHRoOiA4My4zMzMzMyUKfQoKLmNvbC0xMSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgOTEuNjY2NjclOwogICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NyU7CiAgICBmbGV4OiAwIDAgOTEuNjY2NjclOwogICAgbWF4LXdpZHRoOiA5MS42NjY2NyUKfQoKLmNvbC0xMiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTsKICAgIC1tcy1mbGV4OiAwIDAgMTAwJTsKICAgIGZsZXg6IDAgMCAxMDAlOwogICAgbWF4LXdpZHRoOiAxMDAlCn0KCi5vcmRlci1maXJzdCB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAwOwogICAgLXdlYmtpdC1vcmRlcjogLTE7CiAgICAtbXMtZmxleC1vcmRlcjogLTE7CiAgICBvcmRlcjogLTEKfQoKLm9yZGVyLWxhc3QgewogICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTQ7CiAgICAtd2Via2l0LW9yZGVyOiAxMzsKICAgIC1tcy1mbGV4LW9yZGVyOiAxMzsKICAgIG9yZGVyOiAxMwp9Cgoub3JkZXItMCB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxOwogICAgLXdlYmtpdC1vcmRlcjogMDsKICAgIC1tcy1mbGV4LW9yZGVyOiAwOwogICAgb3JkZXI6IDAKfQoKLm9yZGVyLTEgewogICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjsKICAgIC13ZWJraXQtb3JkZXI6IDE7CiAgICAtbXMtZmxleC1vcmRlcjogMTsKICAgIG9yZGVyOiAxCn0KCi5vcmRlci0yIHsKICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDM7CiAgICAtd2Via2l0LW9yZGVyOiAyOwogICAgLW1zLWZsZXgtb3JkZXI6IDI7CiAgICBvcmRlcjogMgp9Cgoub3JkZXItMyB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA0OwogICAgLXdlYmtpdC1vcmRlcjogMzsKICAgIC1tcy1mbGV4LW9yZGVyOiAzOwogICAgb3JkZXI6IDMKfQoKLm9yZGVyLTQgewogICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNTsKICAgIC13ZWJraXQtb3JkZXI6IDQ7CiAgICAtbXMtZmxleC1vcmRlcjogNDsKICAgIG9yZGVyOiA0Cn0KCi5vcmRlci01IHsKICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDY7CiAgICAtd2Via2l0LW9yZGVyOiA1OwogICAgLW1zLWZsZXgtb3JkZXI6IDU7CiAgICBvcmRlcjogNQp9Cgoub3JkZXItNiB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA3OwogICAgLXdlYmtpdC1vcmRlcjogNjsKICAgIC1tcy1mbGV4LW9yZGVyOiA2OwogICAgb3JkZXI6IDYKfQoKLm9yZGVyLTcgewogICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogODsKICAgIC13ZWJraXQtb3JkZXI6IDc7CiAgICAtbXMtZmxleC1vcmRlcjogNzsKICAgIG9yZGVyOiA3Cn0KCi5vcmRlci04IHsKICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDk7CiAgICAtd2Via2l0LW9yZGVyOiA4OwogICAgLW1zLWZsZXgtb3JkZXI6IDg7CiAgICBvcmRlcjogOAp9Cgoub3JkZXItOSB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMDsKICAgIC13ZWJraXQtb3JkZXI6IDk7CiAgICAtbXMtZmxleC1vcmRlcjogOTsKICAgIG9yZGVyOiA5Cn0KCi5vcmRlci0xMCB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMTsKICAgIC13ZWJraXQtb3JkZXI6IDEwOwogICAgLW1zLWZsZXgtb3JkZXI6IDEwOwogICAgb3JkZXI6IDEwCn0KCi5vcmRlci0xMSB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMjsKICAgIC13ZWJraXQtb3JkZXI6IDExOwogICAgLW1zLWZsZXgtb3JkZXI6IDExOwogICAgb3JkZXI6IDExCn0KCi5vcmRlci0xMiB7CiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMzsKICAgIC13ZWJraXQtb3JkZXI6IDEyOwogICAgLW1zLWZsZXgtb3JkZXI6IDEyOwogICAgb3JkZXI6IDEyCn0KCi5vZmZzZXQtMSB7CiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyUKfQoKLm9mZnNldC0yIHsKICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyUKfQoKLm9mZnNldC0zIHsKICAgIG1hcmdpbi1sZWZ0OiAyNSUKfQoKLm9mZnNldC00IHsKICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyUKfQoKLm9mZnNldC01IHsKICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyUKfQoKLm9mZnNldC02IHsKICAgIG1hcmdpbi1sZWZ0OiA1MCUKfQoKLm9mZnNldC03IHsKICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyUKfQoKLm9mZnNldC04IHsKICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyUKfQoKLm9mZnNldC05IHsKICAgIG1hcmdpbi1sZWZ0OiA3NSUKfQoKLm9mZnNldC0xMCB7CiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlCn0KCi5vZmZzZXQtMTEgewogICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JQp9CgpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewogICAgLmNvbC1zbSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwOwogICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwOwogICAgICAgIGZsZXgtYmFzaXM6IDA7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTsKICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgICBmbGV4LWdyb3c6IDE7CiAgICAgICAgbWF4LXdpZHRoOiAxMDAlCiAgICB9CiAgICAuY29sLXNtLWF1dG8gewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bzsKICAgICAgICAtbXMtZmxleDogMCAwIGF1dG87CiAgICAgICAgZmxleDogMCAwIGF1dG87CiAgICAgICAgd2lkdGg6IGF1dG87CiAgICAgICAgbWF4LXdpZHRoOiBub25lCiAgICB9CiAgICAuY29sLXNtLTEgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgOC4zMzMzMyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA4LjMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgOC4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiA4LjMzMzMzJQogICAgfQogICAgLmNvbC1zbS0yIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDE2LjY2NjY3JTsKICAgICAgICAtbXMtZmxleDogMCAwIDE2LjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NjclOwogICAgICAgIG1heC13aWR0aDogMTYuNjY2NjclCiAgICB9CiAgICAuY29sLXNtLTMgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMjUlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgMjUlOwogICAgICAgIGZsZXg6IDAgMCAyNSU7CiAgICAgICAgbWF4LXdpZHRoOiAyNSUKICAgIH0KICAgIC5jb2wtc20tNCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTsKICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJQogICAgfQogICAgLmNvbC1zbS01IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDQxLjY2NjY3JTsKICAgICAgICAtbXMtZmxleDogMCAwIDQxLjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNDEuNjY2NjclOwogICAgICAgIG1heC13aWR0aDogNDEuNjY2NjclCiAgICB9CiAgICAuY29sLXNtLTYgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNTAlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlOwogICAgICAgIGZsZXg6IDAgMCA1MCU7CiAgICAgICAgbWF4LXdpZHRoOiA1MCUKICAgIH0KICAgIC5jb2wtc20tNyB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDU4LjMzMzMzJTsKICAgICAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJQogICAgfQogICAgLmNvbC1zbS04IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDY2LjY2NjY3JTsKICAgICAgICAtbXMtZmxleDogMCAwIDY2LjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjclOwogICAgICAgIG1heC13aWR0aDogNjYuNjY2NjclCiAgICB9CiAgICAuY29sLXNtLTkgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNzUlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNzUlOwogICAgICAgIGZsZXg6IDAgMCA3NSU7CiAgICAgICAgbWF4LXdpZHRoOiA3NSUKICAgIH0KICAgIC5jb2wtc20tMTAgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiA4My4zMzMzMyUKICAgIH0KICAgIC5jb2wtc20tMTEgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgOTEuNjY2NjclOwogICAgICAgIC1tcy1mbGV4OiAwIDAgOTEuNjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7CiAgICAgICAgbWF4LXdpZHRoOiA5MS42NjY2NyUKICAgIH0KICAgIC5jb2wtc20tMTIgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTsKICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7CiAgICAgICAgZmxleDogMCAwIDEwMCU7CiAgICAgICAgbWF4LXdpZHRoOiAxMDAlCiAgICB9CiAgICAub3JkZXItc20tZmlyc3QgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDA7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogLTE7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IC0xOwogICAgICAgIG9yZGVyOiAtMQogICAgfQogICAgLm9yZGVyLXNtLWxhc3QgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDE0OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDEzOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxMzsKICAgICAgICBvcmRlcjogMTMKICAgIH0KICAgIC5vcmRlci1zbS0wIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDA7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDA7CiAgICAgICAgb3JkZXI6IDAKICAgIH0KICAgIC5vcmRlci1zbS0xIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDE7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7CiAgICAgICAgb3JkZXI6IDEKICAgIH0KICAgIC5vcmRlci1zbS0yIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAzOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDI7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDI7CiAgICAgICAgb3JkZXI6IDIKICAgIH0KICAgIC5vcmRlci1zbS0zIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA0OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDM7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDM7CiAgICAgICAgb3JkZXI6IDMKICAgIH0KICAgIC5vcmRlci1zbS00IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA1OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDQ7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDQ7CiAgICAgICAgb3JkZXI6IDQKICAgIH0KICAgIC5vcmRlci1zbS01IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA2OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDU7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDU7CiAgICAgICAgb3JkZXI6IDUKICAgIH0KICAgIC5vcmRlci1zbS02IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA3OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDY7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDY7CiAgICAgICAgb3JkZXI6IDYKICAgIH0KICAgIC5vcmRlci1zbS03IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA4OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDc7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDc7CiAgICAgICAgb3JkZXI6IDcKICAgIH0KICAgIC5vcmRlci1zbS04IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiA5OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDg7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDg7CiAgICAgICAgb3JkZXI6IDgKICAgIH0KICAgIC5vcmRlci1zbS05IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMDsKICAgICAgICAtd2Via2l0LW9yZGVyOiA5OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA5OwogICAgICAgIG9yZGVyOiA5CiAgICB9CiAgICAub3JkZXItc20tMTAgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDExOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDEwOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxMDsKICAgICAgICBvcmRlcjogMTAKICAgIH0KICAgIC5vcmRlci1zbS0xMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTI7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTE7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDExOwogICAgICAgIG9yZGVyOiAxMQogICAgfQogICAgLm9yZGVyLXNtLTEyIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMzsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMjsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTI7CiAgICAgICAgb3JkZXI6IDEyCiAgICB9CiAgICAub2Zmc2V0LXNtLTAgewogICAgICAgIG1hcmdpbi1sZWZ0OiAwCiAgICB9CiAgICAub2Zmc2V0LXNtLTEgewogICAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJQogICAgfQogICAgLm9mZnNldC1zbS0yIHsKICAgICAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclCiAgICB9CiAgICAub2Zmc2V0LXNtLTMgewogICAgICAgIG1hcmdpbi1sZWZ0OiAyNSUKICAgIH0KICAgIC5vZmZzZXQtc20tNCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJQogICAgfQogICAgLm9mZnNldC1zbS01IHsKICAgICAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclCiAgICB9CiAgICAub2Zmc2V0LXNtLTYgewogICAgICAgIG1hcmdpbi1sZWZ0OiA1MCUKICAgIH0KICAgIC5vZmZzZXQtc20tNyB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJQogICAgfQogICAgLm9mZnNldC1zbS04IHsKICAgICAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclCiAgICB9CiAgICAub2Zmc2V0LXNtLTkgewogICAgICAgIG1hcmdpbi1sZWZ0OiA3NSUKICAgIH0KICAgIC5vZmZzZXQtc20tMTAgewogICAgICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQtc20tMTEgewogICAgICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyUKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKICAgIC5jb2wtbWQgewogICAgICAgIC13ZWJraXQtZmxleC1iYXNpczogMDsKICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgICAgICBmbGV4LWJhc2lzOiAwOwogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7CiAgICAgICAgZmxleC1ncm93OiAxOwogICAgICAgIG1heC13aWR0aDogMTAwJQogICAgfQogICAgLmNvbC1tZC1hdXRvIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87CiAgICAgICAgLW1zLWZsZXg6IDAgMCBhdXRvOwogICAgICAgIGZsZXg6IDAgMCBhdXRvOwogICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgIG1heC13aWR0aDogbm9uZQogICAgfQogICAgLmNvbC1tZC0xIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDguMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDguMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogOC4zMzMzMyUKICAgIH0KICAgIC5jb2wtbWQtMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxNi42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JQogICAgfQogICAgLmNvbC1tZC0zIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDI1JTsKICAgICAgICAtbXMtZmxleDogMCAwIDI1JTsKICAgICAgICBmbGV4OiAwIDAgMjUlOwogICAgICAgIG1heC13aWR0aDogMjUlCiAgICB9CiAgICAuY29sLW1kLTQgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMzMuMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyUKICAgIH0KICAgIC5jb2wtbWQtNSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA0MS42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDQxLjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JQogICAgfQogICAgLmNvbC1tZC02IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTsKICAgICAgICAtbXMtZmxleDogMCAwIDUwJTsKICAgICAgICBmbGV4OiAwIDAgNTAlOwogICAgICAgIG1heC13aWR0aDogNTAlCiAgICB9CiAgICAuY29sLW1kLTcgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNTguMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiA1OC4zMzMzMyUKICAgIH0KICAgIC5jb2wtbWQtOCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDY2LjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JQogICAgfQogICAgLmNvbC1tZC05IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDc1JTsKICAgICAgICAtbXMtZmxleDogMCAwIDc1JTsKICAgICAgICBmbGV4OiAwIDAgNzUlOwogICAgICAgIG1heC13aWR0aDogNzUlCiAgICB9CiAgICAuY29sLW1kLTEwIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDgzLjMzMzMzJTsKICAgICAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogODMuMzMzMzMlCiAgICB9CiAgICAuY29sLW1kLTExIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTsKICAgICAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgOTEuNjY2NjclOwogICAgICAgIG1heC13aWR0aDogOTEuNjY2NjclCiAgICB9CiAgICAuY29sLW1kLTEyIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDEwMCU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlOwogICAgICAgIGZsZXg6IDAgMCAxMDAlOwogICAgICAgIG1heC13aWR0aDogMTAwJQogICAgfQogICAgLm9yZGVyLW1kLWZpcnN0IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAwOwogICAgICAgIC13ZWJraXQtb3JkZXI6IC0xOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAtMTsKICAgICAgICBvcmRlcjogLTEKICAgIH0KICAgIC5vcmRlci1tZC1sYXN0IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxNDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMzsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTM7CiAgICAgICAgb3JkZXI6IDEzCiAgICB9CiAgICAub3JkZXItbWQtMCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTsKICAgICAgICAtd2Via2l0LW9yZGVyOiAwOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAwOwogICAgICAgIG9yZGVyOiAwCiAgICB9CiAgICAub3JkZXItbWQtMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxOwogICAgICAgIG9yZGVyOiAxCiAgICB9CiAgICAub3JkZXItbWQtMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMzsKICAgICAgICAtd2Via2l0LW9yZGVyOiAyOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAyOwogICAgICAgIG9yZGVyOiAyCiAgICB9CiAgICAub3JkZXItbWQtMyB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAzOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAzOwogICAgICAgIG9yZGVyOiAzCiAgICB9CiAgICAub3JkZXItbWQtNCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNTsKICAgICAgICAtd2Via2l0LW9yZGVyOiA0OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA0OwogICAgICAgIG9yZGVyOiA0CiAgICB9CiAgICAub3JkZXItbWQtNSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNjsKICAgICAgICAtd2Via2l0LW9yZGVyOiA1OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA1OwogICAgICAgIG9yZGVyOiA1CiAgICB9CiAgICAub3JkZXItbWQtNiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNzsKICAgICAgICAtd2Via2l0LW9yZGVyOiA2OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA2OwogICAgICAgIG9yZGVyOiA2CiAgICB9CiAgICAub3JkZXItbWQtNyB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogODsKICAgICAgICAtd2Via2l0LW9yZGVyOiA3OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA3OwogICAgICAgIG9yZGVyOiA3CiAgICB9CiAgICAub3JkZXItbWQtOCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogOTsKICAgICAgICAtd2Via2l0LW9yZGVyOiA4OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA4OwogICAgICAgIG9yZGVyOiA4CiAgICB9CiAgICAub3JkZXItbWQtOSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTA7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogOTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogOTsKICAgICAgICBvcmRlcjogOQogICAgfQogICAgLm9yZGVyLW1kLTEwIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMTsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTA7CiAgICAgICAgb3JkZXI6IDEwCiAgICB9CiAgICAub3JkZXItbWQtMTEgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDEyOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDExOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxMTsKICAgICAgICBvcmRlcjogMTEKICAgIH0KICAgIC5vcmRlci1tZC0xMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTM7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTI7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDEyOwogICAgICAgIG9yZGVyOiAxMgogICAgfQogICAgLm9mZnNldC1tZC0wIHsKICAgICAgICBtYXJnaW4tbGVmdDogMAogICAgfQogICAgLm9mZnNldC1tZC0xIHsKICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQtbWQtMiB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JQogICAgfQogICAgLm9mZnNldC1tZC0zIHsKICAgICAgICBtYXJnaW4tbGVmdDogMjUlCiAgICB9CiAgICAub2Zmc2V0LW1kLTQgewogICAgICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQtbWQtNSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JQogICAgfQogICAgLm9mZnNldC1tZC02IHsKICAgICAgICBtYXJnaW4tbGVmdDogNTAlCiAgICB9CiAgICAub2Zmc2V0LW1kLTcgewogICAgICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQtbWQtOCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JQogICAgfQogICAgLm9mZnNldC1tZC05IHsKICAgICAgICBtYXJnaW4tbGVmdDogNzUlCiAgICB9CiAgICAub2Zmc2V0LW1kLTEwIHsKICAgICAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlCiAgICB9CiAgICAub2Zmc2V0LW1kLTExIHsKICAgICAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclCiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7CiAgICAuY29sLWxnIHsKICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7CiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7CiAgICAgICAgZmxleC1iYXNpczogMDsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAxOwogICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxOwogICAgICAgIGZsZXgtZ3JvdzogMTsKICAgICAgICBtYXgtd2lkdGg6IDEwMCUKICAgIH0KICAgIC5jb2wtbGctYXV0byB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCBhdXRvOwogICAgICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsKICAgICAgICBmbGV4OiAwIDAgYXV0bzsKICAgICAgICB3aWR0aDogYXV0bzsKICAgICAgICBtYXgtd2lkdGg6IG5vbmUKICAgIH0KICAgIC5jb2wtbGctMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA4LjMzMzMzJTsKICAgICAgICAtbXMtZmxleDogMCAwIDguMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA4LjMzMzMzJTsKICAgICAgICBtYXgtd2lkdGg6IDguMzMzMzMlCiAgICB9CiAgICAuY29sLWxnLTIgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMTYuNjY2NjclOwogICAgICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjclOwogICAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7CiAgICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyUKICAgIH0KICAgIC5jb2wtbGctMyB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAyNSU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAyNSU7CiAgICAgICAgZmxleDogMCAwIDI1JTsKICAgICAgICBtYXgtd2lkdGg6IDI1JQogICAgfQogICAgLmNvbC1sZy00IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDMzLjMzMzMzJTsKICAgICAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlCiAgICB9CiAgICAuY29sLWxnLTUgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNDEuNjY2NjclOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7CiAgICAgICAgbWF4LXdpZHRoOiA0MS42NjY2NyUKICAgIH0KICAgIC5jb2wtbGctNiB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA1MCU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7CiAgICAgICAgZmxleDogMCAwIDUwJTsKICAgICAgICBtYXgtd2lkdGg6IDUwJQogICAgfQogICAgLmNvbC1sZy03IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDU4LjMzMzMzJTsKICAgICAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogNTguMzMzMzMlCiAgICB9CiAgICAuY29sLWxnLTggewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNjYuNjY2NjclOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7CiAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjY2NyUKICAgIH0KICAgIC5jb2wtbGctOSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA3NSU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA3NSU7CiAgICAgICAgZmxleDogMCAwIDc1JTsKICAgICAgICBtYXgtd2lkdGg6IDc1JQogICAgfQogICAgLmNvbC1sZy0xMCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA4My4zMzMzMyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzJTsKICAgICAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJQogICAgfQogICAgLmNvbC1sZy0xMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA5MS42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDkxLjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JQogICAgfQogICAgLmNvbC1sZy0xMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTsKICAgICAgICBmbGV4OiAwIDAgMTAwJTsKICAgICAgICBtYXgtd2lkdGg6IDEwMCUKICAgIH0KICAgIC5vcmRlci1sZy1maXJzdCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAtMTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogLTE7CiAgICAgICAgb3JkZXI6IC0xCiAgICB9CiAgICAub3JkZXItbGctbGFzdCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTQ7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTM7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDEzOwogICAgICAgIG9yZGVyOiAxMwogICAgfQogICAgLm9yZGVyLWxnLTAgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDE7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMDsKICAgICAgICBvcmRlcjogMAogICAgfQogICAgLm9yZGVyLWxnLTEgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTsKICAgICAgICBvcmRlcjogMQogICAgfQogICAgLm9yZGVyLWxnLTIgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDM7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMjsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMjsKICAgICAgICBvcmRlcjogMgogICAgfQogICAgLm9yZGVyLWxnLTMgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDQ7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMzsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMzsKICAgICAgICBvcmRlcjogMwogICAgfQogICAgLm9yZGVyLWxnLTQgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDU7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogNDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogNDsKICAgICAgICBvcmRlcjogNAogICAgfQogICAgLm9yZGVyLWxnLTUgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDY7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogNTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogNTsKICAgICAgICBvcmRlcjogNQogICAgfQogICAgLm9yZGVyLWxnLTYgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDc7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogNjsKICAgICAgICAtbXMtZmxleC1vcmRlcjogNjsKICAgICAgICBvcmRlcjogNgogICAgfQogICAgLm9yZGVyLWxnLTcgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDg7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogNzsKICAgICAgICAtbXMtZmxleC1vcmRlcjogNzsKICAgICAgICBvcmRlcjogNwogICAgfQogICAgLm9yZGVyLWxnLTggewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDk7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogODsKICAgICAgICAtbXMtZmxleC1vcmRlcjogODsKICAgICAgICBvcmRlcjogOAogICAgfQogICAgLm9yZGVyLWxnLTkgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDEwOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDk7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDk7CiAgICAgICAgb3JkZXI6IDkKICAgIH0KICAgIC5vcmRlci1sZy0xMCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTE7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTA7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDEwOwogICAgICAgIG9yZGVyOiAxMAogICAgfQogICAgLm9yZGVyLWxnLTExIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMjsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTE7CiAgICAgICAgb3JkZXI6IDExCiAgICB9CiAgICAub3JkZXItbGctMTIgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDEzOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDEyOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxMjsKICAgICAgICBvcmRlcjogMTIKICAgIH0KICAgIC5vZmZzZXQtbGctMCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDAKICAgIH0KICAgIC5vZmZzZXQtbGctMSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlCiAgICB9CiAgICAub2Zmc2V0LWxnLTIgewogICAgICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyUKICAgIH0KICAgIC5vZmZzZXQtbGctMyB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1JQogICAgfQogICAgLm9mZnNldC1sZy00IHsKICAgICAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlCiAgICB9CiAgICAub2Zmc2V0LWxnLTUgewogICAgICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyUKICAgIH0KICAgIC5vZmZzZXQtbGctNiB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwJQogICAgfQogICAgLm9mZnNldC1sZy03IHsKICAgICAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlCiAgICB9CiAgICAub2Zmc2V0LWxnLTggewogICAgICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyUKICAgIH0KICAgIC5vZmZzZXQtbGctOSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDc1JQogICAgfQogICAgLm9mZnNldC1sZy0xMCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJQogICAgfQogICAgLm9mZnNldC1sZy0xMSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JQogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKICAgIC5jb2wteGwgewogICAgICAgIC13ZWJraXQtZmxleC1iYXNpczogMDsKICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgICAgICBmbGV4LWJhc2lzOiAwOwogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7CiAgICAgICAgZmxleC1ncm93OiAxOwogICAgICAgIG1heC13aWR0aDogMTAwJQogICAgfQogICAgLmNvbC14bC1hdXRvIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87CiAgICAgICAgLW1zLWZsZXg6IDAgMCBhdXRvOwogICAgICAgIGZsZXg6IDAgMCBhdXRvOwogICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgIG1heC13aWR0aDogbm9uZQogICAgfQogICAgLmNvbC14bC0xIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDguMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDguMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogOC4zMzMzMyUKICAgIH0KICAgIC5jb2wteGwtMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxNi42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JQogICAgfQogICAgLmNvbC14bC0zIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDI1JTsKICAgICAgICAtbXMtZmxleDogMCAwIDI1JTsKICAgICAgICBmbGV4OiAwIDAgMjUlOwogICAgICAgIG1heC13aWR0aDogMjUlCiAgICB9CiAgICAuY29sLXhsLTQgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMzMuMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyUKICAgIH0KICAgIC5jb2wteGwtNSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA0MS42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDQxLjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JQogICAgfQogICAgLmNvbC14bC02IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTsKICAgICAgICAtbXMtZmxleDogMCAwIDUwJTsKICAgICAgICBmbGV4OiAwIDAgNTAlOwogICAgICAgIG1heC13aWR0aDogNTAlCiAgICB9CiAgICAuY29sLXhsLTcgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNTguMzMzMzMlOwogICAgICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7CiAgICAgICAgbWF4LXdpZHRoOiA1OC4zMzMzMyUKICAgIH0KICAgIC5jb2wteGwtOCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDY2LjY2NjY3JTsKICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JQogICAgfQogICAgLmNvbC14bC05IHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDc1JTsKICAgICAgICAtbXMtZmxleDogMCAwIDc1JTsKICAgICAgICBmbGV4OiAwIDAgNzUlOwogICAgICAgIG1heC13aWR0aDogNzUlCiAgICB9CiAgICAuY29sLXhsLTEwIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDgzLjMzMzMzJTsKICAgICAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMlOwogICAgICAgIG1heC13aWR0aDogODMuMzMzMzMlCiAgICB9CiAgICAuY29sLXhsLTExIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTsKICAgICAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgOTEuNjY2NjclOwogICAgICAgIG1heC13aWR0aDogOTEuNjY2NjclCiAgICB9CiAgICAuY29sLXhsLTEyIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgICAgIC13ZWJraXQtZmxleDogMCAwIDEwMCU7CiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlOwogICAgICAgIGZsZXg6IDAgMCAxMDAlOwogICAgICAgIG1heC13aWR0aDogMTAwJQogICAgfQogICAgLm9yZGVyLXhsLWZpcnN0IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAwOwogICAgICAgIC13ZWJraXQtb3JkZXI6IC0xOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAtMTsKICAgICAgICBvcmRlcjogLTEKICAgIH0KICAgIC5vcmRlci14bC1sYXN0IHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxNDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMzsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTM7CiAgICAgICAgb3JkZXI6IDEzCiAgICB9CiAgICAub3JkZXIteGwtMCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTsKICAgICAgICAtd2Via2l0LW9yZGVyOiAwOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAwOwogICAgICAgIG9yZGVyOiAwCiAgICB9CiAgICAub3JkZXIteGwtMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxOwogICAgICAgIG9yZGVyOiAxCiAgICB9CiAgICAub3JkZXIteGwtMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMzsKICAgICAgICAtd2Via2l0LW9yZGVyOiAyOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAyOwogICAgICAgIG9yZGVyOiAyCiAgICB9CiAgICAub3JkZXIteGwtMyB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAzOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAzOwogICAgICAgIG9yZGVyOiAzCiAgICB9CiAgICAub3JkZXIteGwtNCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNTsKICAgICAgICAtd2Via2l0LW9yZGVyOiA0OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA0OwogICAgICAgIG9yZGVyOiA0CiAgICB9CiAgICAub3JkZXIteGwtNSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNjsKICAgICAgICAtd2Via2l0LW9yZGVyOiA1OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA1OwogICAgICAgIG9yZGVyOiA1CiAgICB9CiAgICAub3JkZXIteGwtNiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogNzsKICAgICAgICAtd2Via2l0LW9yZGVyOiA2OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA2OwogICAgICAgIG9yZGVyOiA2CiAgICB9CiAgICAub3JkZXIteGwtNyB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogODsKICAgICAgICAtd2Via2l0LW9yZGVyOiA3OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA3OwogICAgICAgIG9yZGVyOiA3CiAgICB9CiAgICAub3JkZXIteGwtOCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogOTsKICAgICAgICAtd2Via2l0LW9yZGVyOiA4OwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiA4OwogICAgICAgIG9yZGVyOiA4CiAgICB9CiAgICAub3JkZXIteGwtOSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTA7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogOTsKICAgICAgICAtbXMtZmxleC1vcmRlcjogOTsKICAgICAgICBvcmRlcjogOQogICAgfQogICAgLm9yZGVyLXhsLTEwIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAxMTsKICAgICAgICAtd2Via2l0LW9yZGVyOiAxMDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMTA7CiAgICAgICAgb3JkZXI6IDEwCiAgICB9CiAgICAub3JkZXIteGwtMTEgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDEyOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDExOwogICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxMTsKICAgICAgICBvcmRlcjogMTEKICAgIH0KICAgIC5vcmRlci14bC0xMiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMTM7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMTI7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDEyOwogICAgICAgIG9yZGVyOiAxMgogICAgfQogICAgLm9mZnNldC14bC0wIHsKICAgICAgICBtYXJnaW4tbGVmdDogMAogICAgfQogICAgLm9mZnNldC14bC0xIHsKICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQteGwtMiB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JQogICAgfQogICAgLm9mZnNldC14bC0zIHsKICAgICAgICBtYXJnaW4tbGVmdDogMjUlCiAgICB9CiAgICAub2Zmc2V0LXhsLTQgewogICAgICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQteGwtNSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JQogICAgfQogICAgLm9mZnNldC14bC02IHsKICAgICAgICBtYXJnaW4tbGVmdDogNTAlCiAgICB9CiAgICAub2Zmc2V0LXhsLTcgewogICAgICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyUKICAgIH0KICAgIC5vZmZzZXQteGwtOCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JQogICAgfQogICAgLm9mZnNldC14bC05IHsKICAgICAgICBtYXJnaW4tbGVmdDogNzUlCiAgICB9CiAgICAub2Zmc2V0LXhsLTEwIHsKICAgICAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlCiAgICB9CiAgICAub2Zmc2V0LXhsLTExIHsKICAgICAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclCiAgICB9Cn0KCi50YWJsZSB7CiAgICB3aWR0aDogMTAwJTsKICAgIG1heC13aWR0aDogMTAwJTsKICAgIG1hcmdpbi1ib3R0b206IDFyZW07CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9CgoudGFibGUgdGQsCi50YWJsZSB0aCB7CiAgICBwYWRkaW5nOiAuNzVyZW07CiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTYKfQoKLnRhYmxlIHRoZWFkIHRoIHsKICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207CiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNgp9CgoudGFibGUgdGJvZHkrdGJvZHkgewogICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZWUyZTYKfQoKLnRhYmxlIC50YWJsZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmCn0KCi50YWJsZS1zbSB0ZCwKLnRhYmxlLXNtIHRoIHsKICAgIHBhZGRpbmc6IC4zcmVtCn0KCi50YWJsZS1ib3JkZXJlZCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2Cn0KCi50YWJsZS1ib3JkZXJlZCB0ZCwKLnRhYmxlLWJvcmRlcmVkIHRoIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYKfQoKLnRhYmxlLWJvcmRlcmVkIHRoZWFkIHRkLAoudGFibGUtYm9yZGVyZWQgdGhlYWQgdGggewogICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4Cn0KCi50YWJsZS1ib3JkZXJsZXNzIHRib2R5K3Rib2R5LAoudGFibGUtYm9yZGVybGVzcyB0ZCwKLnRhYmxlLWJvcmRlcmxlc3MgdGgsCi50YWJsZS1ib3JkZXJsZXNzIHRoZWFkIHRoIHsKICAgIGJvcmRlcjogMAp9CgoudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjA1KQp9CgoudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDc1KQp9CgoudGFibGUtcHJpbWFyeSwKLnRhYmxlLXByaW1hcnk+dGQsCi50YWJsZS1wcmltYXJ5PnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWM4ZTYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiOWI2ZGUKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyPnRkLAoudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2I5YjZkZQp9CgoudGFibGUtc2Vjb25kYXJ5LAoudGFibGUtc2Vjb25kYXJ5PnRkLAoudGFibGUtc2Vjb25kYXJ5PnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiOWVhZTAKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2E1ZTRkNwp9CgoudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3Zlcj50ZCwKLnRhYmxlLWhvdmVyIC50YWJsZS1zZWNvbmRhcnk6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2E1ZTRkNwp9CgoudGFibGUtc3VjY2VzcywKLnRhYmxlLXN1Y2Nlc3M+dGQsCi50YWJsZS1zdWNjZXNzPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjNmVhYzkKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiM2UzYjcKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyPnRkLAoudGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2IzZTNiNwp9CgoudGFibGUtaW5mbywKLnRhYmxlLWluZm8+dGQsCi50YWJsZS1pbmZvPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2RiZmYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNhZWNiZmYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyPnRkLAoudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2FlY2JmZgp9CgoudGFibGUtd2FybmluZywKLnRhYmxlLXdhcm5pbmc+dGQsCi50YWJsZS13YXJuaW5nPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU5YjgKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxOWYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyPnRkLAoudGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTE5Zgp9CgoudGFibGUtZGFuZ2VyLAoudGFibGUtZGFuZ2VyPnRkLAoudGFibGUtZGFuZ2VyPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2M3YzcKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjFiMQp9CgoudGFibGUtaG92ZXIgLnRhYmxlLWRhbmdlcjpob3Zlcj50ZCwKLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjFiMQp9CgoudGFibGUtbGlnaHQsCi50YWJsZS1saWdodD50ZCwKLnRhYmxlLWxpZ2h0PnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyCn0KCi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXI+dGQsCi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMgp9CgoudGFibGUtZGFyaywKLnRhYmxlLWRhcms+dGQsCi50YWJsZS1kYXJrPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjMWMyYzMKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiNGI1YjYKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyPnRkLAoudGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogI2I0YjViNgp9CgoudGFibGUtYWN0aXZlLAoudGFibGUtYWN0aXZlPnRkLAoudGFibGUtYWN0aXZlPnRoIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjA3NSkKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDc1KQp9CgoudGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3Zlcj50ZCwKLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXI+dGggewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDc1KQp9CgoudGFibGUgLnRoZWFkLWRhcmsgdGggewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5OwogICAgYm9yZGVyLWNvbG9yOiAjMzIzODNlCn0KCi50YWJsZSAudGhlYWQtbGlnaHQgdGggewogICAgY29sb3I6ICM0OTUwNTc7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwogICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2Cn0KCi50YWJsZS1kYXJrIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOQp9CgoudGFibGUtZGFyayB0ZCwKLnRhYmxlLWRhcmsgdGgsCi50YWJsZS1kYXJrIHRoZWFkIHRoIHsKICAgIGJvcmRlci1jb2xvcjogIzMyMzgzZQp9CgoudGFibGUtZGFyay50YWJsZS1ib3JkZXJlZCB7CiAgICBib3JkZXI6IDAKfQoKLnRhYmxlLWRhcmsudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjA1KQp9CgoudGFibGUtZGFyay50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wNzUpCn0KCkBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KSB7CiAgICAudGFibGUtcmVzcG9uc2l2ZS1zbSB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXIKICAgIH0KICAgIC50YWJsZS1yZXNwb25zaXZlLXNtPi50YWJsZS1ib3JkZXJlZCB7CiAgICAgICAgYm9yZGVyOiAwCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KSB7CiAgICAudGFibGUtcmVzcG9uc2l2ZS1tZCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXIKICAgIH0KICAgIC50YWJsZS1yZXNwb25zaXZlLW1kPi50YWJsZS1ib3JkZXJlZCB7CiAgICAgICAgYm9yZGVyOiAwCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KSB7CiAgICAudGFibGUtcmVzcG9uc2l2ZS1sZyB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXIKICAgIH0KICAgIC50YWJsZS1yZXNwb25zaXZlLWxnPi50YWJsZS1ib3JkZXJlZCB7CiAgICAgICAgYm9yZGVyOiAwCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCkgewogICAgLnRhYmxlLXJlc3BvbnNpdmUteGwgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOwogICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyCiAgICB9CiAgICAudGFibGUtcmVzcG9uc2l2ZS14bD4udGFibGUtYm9yZGVyZWQgewogICAgICAgIGJvcmRlcjogMAogICAgfQp9CgoudGFibGUtcmVzcG9uc2l2ZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlOwogICAgb3ZlcmZsb3cteDogYXV0bzsKICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsKICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyCn0KCi50YWJsZS1yZXNwb25zaXZlPi50YWJsZS1ib3JkZXJlZCB7CiAgICBib3JkZXI6IDAKfQoKLmZvcm0tY29udHJvbCB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlOwogICAgcGFkZGluZzogLjM3NXJlbSAxLjJyZW07CiAgICBmb250LXNpemU6IDFyZW07CiAgICBsaW5lLWhlaWdodDogMi4yOwogICAgY29sb3I6ICM0OTUwNTc7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwogICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKICAgIC1vLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7CiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0OwogICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCwgLXdlYmtpdC1ib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQKfQoKQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7CiAgICAuZm9ybS1jb250cm9sIHsKICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7CiAgICAgICAgLW8tdHJhbnNpdGlvbjogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBub25lCiAgICB9Cn0KCi5mb3JtLWNvbnRyb2w6Oi1tcy1leHBhbmQgewogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBib3JkZXI6IDAKfQoKLmZvcm0tY29udHJvbDpmb2N1cyB7CiAgICBjb2xvcjogIzQ5NTA1NzsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICM0MTNhYTQ7CiAgICBvdXRsaW5lOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpCn0KCi5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewogICAgY29sb3I6ICM2Yzc1N2Q7CiAgICBvcGFjaXR5OiAxCn0KCi5mb3JtLWNvbnRyb2w6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7CiAgICBjb2xvcjogIzZjNzU3ZDsKICAgIG9wYWNpdHk6IDEKfQoKLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIgewogICAgY29sb3I6ICM2Yzc1N2Q7CiAgICBvcGFjaXR5OiAxCn0KCi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsCi5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgICBvcGFjaXR5OiAxCn0KCnNlbGVjdC5mb3JtLWNvbnRyb2w6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHsKICAgIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KQp9CgpzZWxlY3QuZm9ybS1jb250cm9sOmZvY3VzOjotbXMtdmFsdWUgewogICAgY29sb3I6ICM0OTUwNTc7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmCn0KCi5mb3JtLWNvbnRyb2wtZmlsZSwKLmZvcm0tY29udHJvbC1yYW5nZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlCn0KCi5jb2wtZm9ybS1sYWJlbCB7CiAgICBwYWRkaW5nLXRvcDogY2FsYyguMzc1cmVtICsgMXB4KTsKICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKC4zNzVyZW0gKyAxcHgpOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGZvbnQtc2l6ZTogaW5oZXJpdDsKICAgIGxpbmUtaGVpZ2h0OiAyLjIKfQoKLmNvbC1mb3JtLWxhYmVsLWxnIHsKICAgIHBhZGRpbmctdG9wOiBjYWxjKC41cmVtICsgMXB4KTsKICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKC41cmVtICsgMXB4KTsKICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjMKfQoKLmNvbC1mb3JtLWxhYmVsLXNtIHsKICAgIHBhZGRpbmctdG9wOiBjYWxjKC4yNXJlbSArIDFweCk7CiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyguMjVyZW0gKyAxcHgpOwogICAgZm9udC1zaXplOiAuODc1cmVtOwogICAgbGluZS1oZWlnaHQ6IDEuNQp9CgouZm9ybS1jb250cm9sLXBsYWludGV4dCB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlOwogICAgcGFkZGluZy10b3A6IC4zNzVyZW07CiAgICBwYWRkaW5nLWJvdHRvbTogLjM3NXJlbTsKICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICBsaW5lLWhlaWdodDogMi4yOwogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItd2lkdGg6IDFweCAwCn0KCi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1sZywKLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLAouaW5wdXQtZ3JvdXAtbGc+LmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFwcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5idG4sCi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmlucHV0LWdyb3VwLXRleHQsCi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5idG4sCi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5pbnB1dC1ncm91cC10ZXh0LAouaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFwcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5idG4sCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmlucHV0LWdyb3VwLXRleHQsCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5idG4sCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uZm9ybS1jb250cm9sLXBsYWludGV4dC5pbnB1dC1ncm91cC10ZXh0IHsKICAgIHBhZGRpbmctcmlnaHQ6IDA7CiAgICBwYWRkaW5nLWxlZnQ6IDAKfQoKLmZvcm0tY29udHJvbC1zbSwKLmlucHV0LWdyb3VwLXNtPi5mb3JtLWNvbnRyb2wsCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5idG4sCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5pbnB1dC1ncm91cC10ZXh0LAouaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0biwKLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5pbnB1dC1ncm91cC10ZXh0IHsKICAgIHBhZGRpbmc6IC4yNXJlbSAuNXJlbTsKICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLXJhZGl1czogLjJyZW0KfQoKLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1hcHBlbmQ+c2VsZWN0LmJ0bjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSksCi5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPnNlbGVjdC5pbnB1dC1ncm91cC10ZXh0Om5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSwKLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1wcmVwZW5kPnNlbGVjdC5idG46bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLAouaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLXByZXBlbmQ+c2VsZWN0LmlucHV0LWdyb3VwLXRleHQ6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLAouaW5wdXQtZ3JvdXAtc20+c2VsZWN0LmZvcm0tY29udHJvbDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSksCnNlbGVjdC5mb3JtLWNvbnRyb2wtc206bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHsKICAgIGhlaWdodDogY2FsYygxLjgxMjVyZW0gKyAycHgpCn0KCi5mb3JtLWNvbnRyb2wtbGcsCi5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLAouaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFwcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCwKLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4sCi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCB7CiAgICBwYWRkaW5nOiAuNXJlbSAxcmVtOwogICAgZm9udC1zaXplOiAxLjI1cmVtOwogICAgbGluZS1oZWlnaHQ6IDIuMzsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICBib3JkZXItcmFkaXVzOiAuM3JlbQp9CgouaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFwcGVuZD5zZWxlY3QuYnRuOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSwKLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+c2VsZWN0LmlucHV0LWdyb3VwLXRleHQ6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLAouaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLXByZXBlbmQ+c2VsZWN0LmJ0bjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSksCi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD5zZWxlY3QuaW5wdXQtZ3JvdXAtdGV4dDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSksCi5pbnB1dC1ncm91cC1sZz5zZWxlY3QuZm9ybS1jb250cm9sOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSwKc2VsZWN0LmZvcm0tY29udHJvbC1sZzpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkgewogICAgaGVpZ2h0OiBjYWxjKDIuODc1cmVtICsgMnB4KQp9CgouZm9ybS1ncm91cCB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5mb3JtLXRleHQgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tdG9wOiAuNjZyZW0KfQoKLmZvcm0tcm93IHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwOwogICAgbWFyZ2luLXJpZ2h0OiAtNXB4OwogICAgbWFyZ2luLWxlZnQ6IC01cHgKfQoKLmZvcm0tcm93Pi5jb2wsCi5mb3JtLXJvdz5bY2xhc3MqPWNvbC1dIHsKICAgIHBhZGRpbmctcmlnaHQ6IDVweDsKICAgIHBhZGRpbmctbGVmdDogNXB4Cn0KCi5mb3JtLWNoZWNrIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtCn0KCi5mb3JtLWNoZWNrLWlucHV0IHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIG1hcmdpbi10b3A6IC4zcmVtOwogICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtCn0KCi5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkfi5mb3JtLWNoZWNrLWxhYmVsIHsKICAgIGNvbG9yOiAjNmM3NTdkCn0KCi5mb3JtLWNoZWNrLWxhYmVsIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmZvcm0tY2hlY2staW5saW5lIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIHBhZGRpbmctbGVmdDogMDsKICAgIG1hcmdpbi1yaWdodDogLjc1cmVtCn0KCi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7CiAgICBwb3NpdGlvbjogc3RhdGljOwogICAgbWFyZ2luLXRvcDogMDsKICAgIG1hcmdpbi1yaWdodDogLjMxMjVyZW07CiAgICBtYXJnaW4tbGVmdDogMAp9CgoudmFsaWQtZmVlZGJhY2sgewogICAgZGlzcGxheTogbm9uZTsKICAgIHdpZHRoOiAxMDAlOwogICAgbWFyZ2luLXRvcDogLjI1cmVtOwogICAgZm9udC1zaXplOiA4MCU7CiAgICBjb2xvcjogIzI4YTc0NQp9CgoudmFsaWQtdG9vbHRpcCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDEwMCU7CiAgICB6LWluZGV4OiA1OwogICAgZGlzcGxheTogbm9uZTsKICAgIG1heC13aWR0aDogMTAwJTsKICAgIHBhZGRpbmc6IC41cmVtOwogICAgbWFyZ2luLXRvcDogLjFyZW07CiAgICBmb250LXNpemU6IC44NzVyZW07CiAgICBsaW5lLWhlaWdodDogMTsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MCwgMTY3LCA2OSwgLjgpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtCn0KCi5jdXN0b20tc2VsZWN0LmlzLXZhbGlkLAouZm9ybS1jb250cm9sLmlzLXZhbGlkLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCB7CiAgICBib3JkZXItY29sb3I6ICMyOGE3NDUKfQoKLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsCi5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkOmZvY3VzLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzIHsKICAgIGJvcmRlci1jb2xvcjogIzI4YTc0NTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgLjI1KTsKICAgIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIC4yNSkKfQoKLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWR+LnZhbGlkLWZlZWRiYWNrLAouY3VzdG9tLXNlbGVjdC5pcy12YWxpZH4udmFsaWQtdG9vbHRpcCwKLmZvcm0tY29udHJvbC5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssCi5mb3JtLWNvbnRyb2wuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkfi52YWxpZC1mZWVkYmFjaywKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWR+LnZhbGlkLXRvb2x0aXAsCi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkfi52YWxpZC10b29sdGlwIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZH4uZm9ybS1jaGVjay1sYWJlbCB7CiAgICBjb2xvcjogIzI4YTc0NQp9CgouZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssCi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkfi52YWxpZC10b29sdGlwLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfi52YWxpZC10b29sdGlwIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWwsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWwgewogICAgY29sb3I6ICMyOGE3NDUKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzcxZGQ4YQp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWR+LnZhbGlkLWZlZWRiYWNrLAouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZH4udmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZH4udmFsaWQtdG9vbHRpcCB7CiAgICBkaXNwbGF5OiBibG9jawp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzM0Y2U1Nwp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1c34uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIC4yNSkKfQoKLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbCwKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbCB7CiAgICBib3JkZXItY29sb3I6ICMyOGE3NDUKfQoKLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWR+LmN1c3RvbS1maWxlLWxhYmVsOjpiZWZvcmUgewogICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0Cn0KCi5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssCi5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZH4udmFsaWQtdG9vbHRpcCwKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkfi52YWxpZC1mZWVkYmFjaywKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkfi52YWxpZC10b29sdGlwIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWwsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWwgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgLjI1KQp9CgouaW52YWxpZC1mZWVkYmFjayB7CiAgICBkaXNwbGF5OiBub25lOwogICAgd2lkdGg6IDEwMCU7CiAgICBtYXJnaW4tdG9wOiAuMjVyZW07CiAgICBmb250LXNpemU6IDgwJTsKICAgIGNvbG9yOiAjZGMzNTQ1Cn0KCi5pbnZhbGlkLXRvb2x0aXAgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAxMDAlOwogICAgei1pbmRleDogNTsKICAgIGRpc3BsYXk6IG5vbmU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nOiAuNXJlbTsKICAgIG1hcmdpbi10b3A6IC4xcmVtOwogICAgZm9udC1zaXplOiAuODc1cmVtOwogICAgbGluZS1oZWlnaHQ6IDE7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIwLCA1MywgNjksIC44KTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMnJlbQp9CgouY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkLAouZm9ybS1jb250cm9sLmlzLWludmFsaWQsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQsCi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCB7CiAgICBib3JkZXItY29sb3I6ICNkYzM1NDUKfQoKLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cywKLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkOmZvY3VzLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMgewogICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1OwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgLjI1KQp9CgouY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLAouY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsCi5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywKLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWR+LmludmFsaWQtdG9vbHRpcCwKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWR+LmludmFsaWQtdG9vbHRpcCB7CiAgICBkaXNwbGF5OiBibG9jawp9CgouZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsIHsKICAgIGNvbG9yOiAjZGMzNTQ1Cn0KCi5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssCi5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcCwKLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywKLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZH4uaW52YWxpZC10b29sdGlwIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbCwKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWR+LmN1c3RvbS1jb250cm9sLWxhYmVsIHsKICAgIGNvbG9yOiAjZGMzNTQ1Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZhMmE5Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLAouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC10b29sdGlwLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWR+LmludmFsaWQtdG9vbHRpcCB7CiAgICBkaXNwbGF5OiBibG9jawp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlNDYwNmQKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIC4yNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgLjI1KQp9CgouY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZH4uY3VzdG9tLWZpbGUtbGFiZWwsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbCB7CiAgICBib3JkZXItY29sb3I6ICNkYzM1NDUKfQoKLmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWR+LmN1c3RvbS1maWxlLWxhYmVsOjpiZWZvcmUsCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlIHsKICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdAp9CgouY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywKLmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcCwKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAgewogICAgZGlzcGxheTogYmxvY2sKfQoKLmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVsLAoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6aW52YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWwgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgLjI1KQp9CgouZm9ybS1pbmxpbmUgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgZmxleC1mbG93OiByb3cgd3JhcDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgouZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sgewogICAgd2lkdGg6IDEwMCUKfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5mb3JtLWlubGluZSBsYWJlbCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwCiAgICB9CiAgICAuZm9ybS1pbmxpbmUgLmZvcm0tZ3JvdXAgewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgYXV0bzsKICAgICAgICAtbXMtZmxleDogMCAwIGF1dG87CiAgICAgICAgZmxleDogMCAwIGF1dG87CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDsKICAgICAgICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDsKICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwCiAgICB9CiAgICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUKICAgIH0KICAgIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrCiAgICB9CiAgICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1zZWxlY3QsCiAgICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwIHsKICAgICAgICB3aWR0aDogYXV0bwogICAgfQogICAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrIHsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiBhdXRvOwogICAgICAgIHBhZGRpbmctbGVmdDogMAogICAgfQogICAgLmZvcm0taW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC4yNXJlbTsKICAgICAgICBtYXJnaW4tbGVmdDogMAogICAgfQogICAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbCB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcgogICAgfQogICAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMAogICAgfQp9CgouYnRuIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOwogICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIHBhZGRpbmc6IC4zNzVyZW0gMnJlbTsKICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjI1cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKICAgIHRyYW5zaXRpb246IGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIC13ZWJraXQtYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0OwogICAgLW8tdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0OwogICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0OwogICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dAp9CgpAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpIHsKICAgIC5idG4gewogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBub25lOwogICAgICAgIHRyYW5zaXRpb246IG5vbmUKICAgIH0KfQoKLmJ0bjpmb2N1cywKLmJ0bjpob3ZlciB7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoKLmJ0bi5mb2N1cywKLmJ0bjpmb2N1cyB7CiAgICBvdXRsaW5lOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KQp9CgouYnRuLmRpc2FibGVkLAouYnRuOmRpc2FibGVkIHsKICAgIG9wYWNpdHk6IC42NTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSkKfQoKLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsCi5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KSwgaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpLCBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KQp9CgphLmJ0bi5kaXNhYmxlZCwKZmllbGRzZXQ6ZGlzYWJsZWQgYS5idG4gewogICAgcG9pbnRlci1ldmVudHM6IG5vbmUKfQoKLmJ0bi1wcmltYXJ5IHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzQxM2FhNDsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpCn0KCi5idG4tcHJpbWFyeTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNjMwODg7CiAgICBib3JkZXItY29sb3I6ICMzMjJkN2UKfQoKLmJ0bi1wcmltYXJ5LmZvY3VzLAouYnRuLXByaW1hcnk6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoNjUsIDU4LCAxNjQsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSg2NSwgNTgsIDE2NCwgLjUpCn0KCi5idG4tcHJpbWFyeS5kaXNhYmxlZCwKLmJ0bi1wcmltYXJ5OmRpc2FibGVkIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzQxM2FhNDsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgouYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLAouc2hvdz4uYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMmQ3ZTsKICAgIGJvcmRlci1jb2xvcjogIzJlMjk3NQp9CgouYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLAouc2hvdz4uYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNjUsIDU4LCAxNjQsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDY1LCA1OCwgMTY0LCAuNSkKfQoKLmJ0bi1zZWNvbmRhcnkgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZiNTkwOwogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSkKfQoKLmJ0bi1zZWNvbmRhcnk6aG92ZXIgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDU5MDczOwogICAgYm9yZGVyLWNvbG9yOiAjMDQ4NDY5Cn0KCi5idG4tc2Vjb25kYXJ5LmZvY3VzLAouYnRuLXNlY29uZGFyeTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSg2LCAxODEsIDE0NCwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgMCAuMnJlbSByZ2JhKDYsIDE4MSwgMTQ0LCAuNSkKfQoKLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsCi5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzA2YjU5MDsKICAgIGJvcmRlci1jb2xvcjogIzA2YjU5MAp9CgouYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzA0ODQ2OTsKICAgIGJvcmRlci1jb2xvcjogIzA0Nzc1Zgp9CgouYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsCi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNiwgMTgxLCAxNDQsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDYsIDE4MSwgMTQ0LCAuNSkKfQoKLmJ0bi1zdWNjZXNzIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzM1YjUzZTsKICAgIGJvcmRlci1jb2xvcjogIzM1YjUzZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpCn0KCi5idG4tc3VjY2Vzczpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzk3MzQ7CiAgICBib3JkZXItY29sb3I6ICMyOThlMzAKfQoKLmJ0bi1zdWNjZXNzLmZvY3VzLAouYnRuLXN1Y2Nlc3M6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoNTMsIDE4MSwgNjIsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSg1MywgMTgxLCA2MiwgLjUpCn0KCi5idG4tc3VjY2Vzcy5kaXNhYmxlZCwKLmJ0bi1zdWNjZXNzOmRpc2FibGVkIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzM1YjUzZTsKICAgIGJvcmRlci1jb2xvcjogIzM1YjUzZQp9CgouYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLAouc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzI5OGUzMDsKICAgIGJvcmRlci1jb2xvcjogIzI3ODQyZAp9CgouYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLAouc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNTMsIDE4MSwgNjIsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDUzLCAxODEsIDYyLCAuNSkKfQoKLmJ0bi1pbmZvIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzM3N2RmZjsKICAgIGJvcmRlci1jb2xvcjogIzM3N2RmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpCn0KCi5idG4taW5mbzpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTY0ZmY7CiAgICBib3JkZXItY29sb3I6ICMwNDVjZmYKfQoKLmJ0bi1pbmZvLmZvY3VzLAouYnRuLWluZm86Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoNTUsIDEyNSwgMjU1LCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoNTUsIDEyNSwgMjU1LCAuNSkKfQoKLmJ0bi1pbmZvLmRpc2FibGVkLAouYnRuLWluZm86ZGlzYWJsZWQgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzc3ZGZmOwogICAgYm9yZGVyLWNvbG9yOiAjMzc3ZGZmCn0KCi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsCi5zaG93Pi5idG4taW5mby5kcm9wZG93bi10b2dnbGUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQ1Y2ZmOwogICAgYm9yZGVyLWNvbG9yOiAjMDA1NmY2Cn0KCi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsCi5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsCi5zaG93Pi5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSg1NSwgMTI1LCAyNTUsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDU1LCAxMjUsIDI1NSwgLjUpCn0KCi5idG4td2FybmluZyB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFmMDA7CiAgICBib3JkZXItY29sb3I6ICNmZmFmMDA7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KQp9CgouYnRuLXdhcm5pbmc6aG92ZXIgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk5NTAwOwogICAgYm9yZGVyLWNvbG9yOiAjY2M4YzAwCn0KCi5idG4td2FybmluZy5mb2N1cywKLmJ0bi13YXJuaW5nOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMTc1LCAwLCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAxNzUsIDAsIC41KQp9CgouYnRuLXdhcm5pbmcuZGlzYWJsZWQsCi5idG4td2FybmluZzpkaXNhYmxlZCB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFmMDA7CiAgICBib3JkZXItY29sb3I6ICNmZmFmMDAKfQoKLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhjMDA7CiAgICBib3JkZXItY29sb3I6ICNiZjgzMDAKfQoKLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMTc1LCAwLCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSgyNTUsIDE3NSwgMCwgLjUpCn0KCi5idG4tZGFuZ2VyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2UyMzYzNjsKICAgIGJvcmRlci1jb2xvcjogI2UyMzYzNjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpCn0KCi5idG4tZGFuZ2VyOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2QzMWUxZTsKICAgIGJvcmRlci1jb2xvcjogI2M4MWQxZAp9CgouYnRuLWRhbmdlci5mb2N1cywKLmJ0bi1kYW5nZXI6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoMjI2LCA1NCwgNTQsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSgyMjYsIDU0LCA1NCwgLjUpCn0KCi5idG4tZGFuZ2VyLmRpc2FibGVkLAouYnRuLWRhbmdlcjpkaXNhYmxlZCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlMjM2MzY7CiAgICBib3JkZXItY29sb3I6ICNlMjM2MzYKfQoKLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsCi5zaG93Pi5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjODFkMWQ7CiAgICBib3JkZXItY29sb3I6ICNiZDFiMWIKfQoKLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsCi5zaG93Pi5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDIyNiwgNTQsIDU0LCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSgyMjYsIDU0LCA1NCwgLjUpCn0KCi5idG4tbGlnaHQgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyLWNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSkKfQoKLmJ0bi1saWdodDpob3ZlciB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7CiAgICBib3JkZXItY29sb3I6ICNlNmU2ZTYKfQoKLmJ0bi1saWdodC5mb2N1cywKLmJ0bi1saWdodDpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDAgLjJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5idG4tbGlnaHQuZGlzYWJsZWQsCi5idG4tbGlnaHQ6ZGlzYWJsZWQgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyLWNvbG9yOiAjZmZmCn0KCi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGUgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OwogICAgYm9yZGVyLWNvbG9yOiAjZGZkZmRmCn0KCi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSkKfQoKLmJ0bi1kYXJrIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjQyODsKICAgIGJvcmRlci1jb2xvcjogIzIwMjQyODsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpCn0KCi5idG4tZGFyazpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjExMTM7CiAgICBib3JkZXItY29sb3I6ICMwOTBiMGMKfQoKLmJ0bi1kYXJrLmZvY3VzLAouYnRuLWRhcms6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCAwIC4ycmVtIHJnYmEoMzIsIDM2LCA0MCwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSksIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpLCAwIDAgMCAuMnJlbSByZ2JhKDMyLCAzNiwgNDAsIC41KQp9CgouYnRuLWRhcmsuZGlzYWJsZWQsCi5idG4tZGFyazpkaXNhYmxlZCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDI0Mjg7CiAgICBib3JkZXItY29sb3I6ICMyMDI0MjgKfQoKLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTBiMGM7CiAgICBib3JkZXItY29sb3I6ICMwNDA0MDUKfQoKLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDMyLCAzNiwgNDAsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDMyLCAzNiwgNDAsIC41KQp9CgouYnRuLW91dGxpbmUtcHJpbWFyeSB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgouYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTNhYTQ7CiAgICBib3JkZXItY29sb3I6ICM0MTNhYTQKfQoKLmJ0bi1vdXRsaW5lLXByaW1hcnkuZm9jdXMsCi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg2NSwgNTgsIDE2NCwgLjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg2NSwgNTgsIDE2NCwgLjUpCn0KCi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLAouYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KCi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLAouc2hvdz4uYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDEzYWE0OwogICAgYm9yZGVyLWNvbG9yOiAjNDEzYWE0Cn0KCi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLAouc2hvdz4uYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSg2NSwgNTgsIDE2NCwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNjUsIDU4LCAxNjQsIC41KQp9CgouYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwCn0KCi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZiNTkwOwogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwCn0KCi5idG4tb3V0bGluZS1zZWNvbmRhcnkuZm9jdXMsCi5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDYsIDE4MSwgMTQ0LCAuNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDYsIDE4MSwgMTQ0LCAuNSkKfQoKLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kaXNhYmxlZCwKLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZCB7CiAgICBjb2xvcjogIzA2YjU5MDsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KCi5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZiNTkwOwogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwCn0KCi5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSg2LCAxODEsIDE0NCwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNiwgMTgxLCAxNDQsIC41KQp9CgouYnRuLW91dGxpbmUtc3VjY2VzcyB7CiAgICBjb2xvcjogIzM1YjUzZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIGJvcmRlci1jb2xvcjogIzM1YjUzZQp9CgouYnRuLW91dGxpbmUtc3VjY2Vzczpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNWI1M2U7CiAgICBib3JkZXItY29sb3I6ICMzNWI1M2UKfQoKLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZm9jdXMsCi5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg1MywgMTgxLCA2MiwgLjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg1MywgMTgxLCA2MiwgLjUpCn0KCi5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLAouYnRuLW91dGxpbmUtc3VjY2VzczpkaXNhYmxlZCB7CiAgICBjb2xvcjogIzM1YjUzZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KCi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLAouc2hvdz4uYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzViNTNlOwogICAgYm9yZGVyLWNvbG9yOiAjMzViNTNlCn0KCi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLAouc2hvdz4uYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSwgMCAwIDAgLjJyZW0gcmdiYSg1MywgMTgxLCA2MiwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNTMsIDE4MSwgNjIsIC41KQp9CgouYnRuLW91dGxpbmUtaW5mbyB7CiAgICBjb2xvcjogIzM3N2RmZjsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIGJvcmRlci1jb2xvcjogIzM3N2RmZgp9CgouYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzdkZmY7CiAgICBib3JkZXItY29sb3I6ICMzNzdkZmYKfQoKLmJ0bi1vdXRsaW5lLWluZm8uZm9jdXMsCi5idG4tb3V0bGluZS1pbmZvOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSg1NSwgMTI1LCAyNTUsIC41KTsKICAgIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoNTUsIDEyNSwgMjU1LCAuNSkKfQoKLmJ0bi1vdXRsaW5lLWluZm8uZGlzYWJsZWQsCi5idG4tb3V0bGluZS1pbmZvOmRpc2FibGVkIHsKICAgIGNvbG9yOiAjMzc3ZGZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQKfQoKLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsCi5zaG93Pi5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzdkZmY7CiAgICBib3JkZXItY29sb3I6ICMzNzdkZmYKfQoKLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLAouYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsCi5zaG93Pi5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDU1LCAxMjUsIDI1NSwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoNTUsIDEyNSwgMjU1LCAuNSkKfQoKLmJ0bi1vdXRsaW5lLXdhcm5pbmcgewogICAgY29sb3I6ICNmZmFmMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgICBib3JkZXItY29sb3I6ICNmZmFmMDAKfQoKLmJ0bi1vdXRsaW5lLXdhcm5pbmc6aG92ZXIgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZjAwOwogICAgYm9yZGVyLWNvbG9yOiAjZmZhZjAwCn0KCi5idG4tb3V0bGluZS13YXJuaW5nLmZvY3VzLAouYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAxNzUsIDAsIC41KTsKICAgIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAxNzUsIDAsIC41KQp9CgouYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCwKLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQgewogICAgY29sb3I6ICNmZmFmMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9CgouYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjMjEyNTI5OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWYwMDsKICAgIGJvcmRlci1jb2xvcjogI2ZmYWYwMAp9CgouYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsCi5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAxNzUsIDAsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMTc1LCAwLCAuNSkKfQoKLmJ0bi1vdXRsaW5lLWRhbmdlciB7CiAgICBjb2xvcjogI2UyMzYzNjsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIGJvcmRlci1jb2xvcjogI2UyMzYzNgp9CgouYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2UyMzYzNjsKICAgIGJvcmRlci1jb2xvcjogI2UyMzYzNgp9CgouYnRuLW91dGxpbmUtZGFuZ2VyLmZvY3VzLAouYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgyMjYsIDU0LCA1NCwgLjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgyMjYsIDU0LCA1NCwgLjUpCn0KCi5idG4tb3V0bGluZS1kYW5nZXIuZGlzYWJsZWQsCi5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWQgewogICAgY29sb3I6ICNlMjM2MzY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9CgouYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsCi5zaG93Pi5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2UyMzYzNjsKICAgIGJvcmRlci1jb2xvcjogI2UyMzYzNgp9CgouYnRuLW91dGxpbmUtZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsCi5zaG93Pi5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoMjI2LCA1NCwgNTQsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDIyNiwgNTQsIDU0LCAuNSkKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0IHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogICAgYm9yZGVyLWNvbG9yOiAjZmZmCn0KCi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICNmZmYKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0LmZvY3VzLAouYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KTsKICAgIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCwKLmJ0bi1vdXRsaW5lLWxpZ2h0OmRpc2FibGVkIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICNmZmYKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywKLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIC4xMjUpLCAwIDAgMCAuMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgouYnRuLW91dGxpbmUtZGFyayB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIGJvcmRlci1jb2xvcjogIzIwMjQyOAp9CgouYnRuLW91dGxpbmUtZGFyazpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDI0Mjg7CiAgICBib3JkZXItY29sb3I6ICMyMDI0MjgKfQoKLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMsCi5idG4tb3V0bGluZS1kYXJrOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgzMiwgMzYsIDQwLCAuNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDMyLCAzNiwgNDAsIC41KQp9CgouYnRuLW91dGxpbmUtZGFyay5kaXNhYmxlZCwKLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWQgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9CgouYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwKLnNob3c+LmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjQyODsKICAgIGJvcmRlci1jb2xvcjogIzIwMjQyOAp9CgouYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsCi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywKLnNob3c+LmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoMzIsIDM2LCA0MCwgLjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSksIDAgMCAwIC4ycmVtIHJnYmEoMzIsIDM2LCA0MCwgLjUpCn0KCi5idG4tbGluayB7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgY29sb3I6ICM0MTNhYTQ7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9CgouYnRuLWxpbms6aG92ZXIgewogICAgY29sb3I6ICMwMDU2YjM7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQKfQoKLmJ0bi1saW5rLmZvY3VzLAouYnRuLWxpbms6Zm9jdXMgewogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmJ0bi1saW5rLmRpc2FibGVkLAouYnRuLWxpbms6ZGlzYWJsZWQgewogICAgY29sb3I6ICM2Yzc1N2Q7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZQp9CgouYnRuLWdyb3VwLWxnPi5idG4sCi5idG4tbGcgewogICAgcGFkZGluZzogLjVyZW0gMi4zM3JlbTsKICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjY2cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4zcmVtCn0KCi5idG4tZ3JvdXAtc20+LmJ0biwKLmJ0bi1zbSB7CiAgICBwYWRkaW5nOiAuMjVyZW0gMS42NnJlbTsKICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjE2cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtCn0KCi5idG4tYmxvY2sgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJQp9CgouYnRuLWJsb2NrKy5idG4tYmxvY2sgewogICAgbWFyZ2luLXRvcDogLjVyZW0KfQoKaW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jaywKaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLAppbnB1dFt0eXBlPXN1Ym1pdF0uYnRuLWJsb2NrIHsKICAgIHdpZHRoOiAxMDAlCn0KCi5mYWRlIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhcjsKICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXI7CiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyCn0KCkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewogICAgLmZhZGUgewogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBub25lOwogICAgICAgIHRyYW5zaXRpb246IG5vbmUKICAgIH0KfQoKLmZhZGU6bm90KC5zaG93KSB7CiAgICBvcGFjaXR5OiAwCn0KCi5jb2xsYXBzZTpub3QoLnNob3cpIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLmNvbGxhcHNpbmcgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgaGVpZ2h0OiAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IC4zNXMgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGhlaWdodCAuMzVzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjM1cyBlYXNlCn0KCkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewogICAgLmNvbGxhcHNpbmcgewogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBub25lOwogICAgICAgIHRyYW5zaXRpb246IG5vbmUKICAgIH0KfQoKLmRyb3Bkb3duLAouZHJvcGxlZnQsCi5kcm9wcmlnaHQsCi5kcm9wdXAgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5kcm9wZG93bi1tZW51IHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDAwOwogICAgZGlzcGxheTogbm9uZTsKICAgIGZsb2F0OiBsZWZ0OwogICAgbWluLXdpZHRoOiAxMHJlbTsKICAgIHBhZGRpbmc6IDEuMTZyZW0gMDsKICAgIG1hcmdpbjogLjEyNXJlbSAwIDA7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBjb2xvcjogIzVhNjY3MTsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBsaXN0LXN0eWxlOiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7CiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4xNSk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgLjE3NSk7CiAgICBib3gtc2hhZG93OiAwIC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAuMTc1KQp9CgouZHJvcGRvd24tbWVudS1yaWdodCB7CiAgICByaWdodDogMDsKICAgIGxlZnQ6IGF1dG8KfQoKLmRyb3B1cCAuZHJvcGRvd24tbWVudSB7CiAgICB0b3A6IGF1dG87CiAgICBib3R0b206IDEwMCU7CiAgICBtYXJnaW4tdG9wOiAwOwogICAgbWFyZ2luLWJvdHRvbTogLjEyNXJlbQp9CgouZHJvcHJpZ2h0IC5kcm9wZG93bi1tZW51IHsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiBhdXRvOwogICAgbGVmdDogMTAwJTsKICAgIG1hcmdpbi10b3A6IDA7CiAgICBtYXJnaW4tbGVmdDogLjEyNXJlbQp9CgouZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKICAgIHZlcnRpY2FsLWFsaWduOiAwCn0KCi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7CiAgICB0b3A6IDA7CiAgICByaWdodDogMTAwJTsKICAgIGxlZnQ6IGF1dG87CiAgICBtYXJnaW4tdG9wOiAwOwogICAgbWFyZ2luLXJpZ2h0OiAuMTI1cmVtCn0KCi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUgewogICAgdmVydGljYWwtYWxpZ246IDAKfQoKLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePWJvdHRvbV0sCi5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1sZWZ0XSwKLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePXJpZ2h0XSwKLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePXRvcF0gewogICAgcmlnaHQ6IGF1dG87CiAgICBib3R0b206IGF1dG8KfQoKLmRyb3Bkb3duLWRpdmlkZXIgewogICAgaGVpZ2h0OiAwOwogICAgbWFyZ2luOiAuNXJlbSAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmCn0KCi5kcm9wZG93bi1pdGVtIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nOiAuNXJlbSAxLjVyZW07CiAgICBjbGVhcjogYm90aDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIHRleHQtYWxpZ246IGluaGVyaXQ7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBib3JkZXI6IDAKfQoKLmRyb3Bkb3duLWl0ZW06Zm9jdXMsCi5kcm9wZG93bi1pdGVtOmhvdmVyIHsKICAgIGNvbG9yOiAjMTYxODFiOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYQp9CgouZHJvcGRvd24taXRlbS5hY3RpdmUsCi5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmYKfQoKLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsCi5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHsKICAgIGNvbG9yOiAjNmM3NTdkOwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQKfQoKLmRyb3Bkb3duLW1lbnUuc2hvdyB7CiAgICBkaXNwbGF5OiBibG9jawp9CgouZHJvcGRvd24taGVhZGVyIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogMS4xNnJlbSAxLjVyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgZm9udC1zaXplOiAuODc1cmVtOwogICAgY29sb3I6ICM2Yzc1N2Q7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwCn0KCi5kcm9wZG93bi1pdGVtLXRleHQgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nOiAuNXJlbSAxLjVyZW07CiAgICBjb2xvcjogIzIxMjUyOQp9CgouYnRuLWdyb3VwLAouYnRuLWdyb3VwLXZlcnRpY2FsIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUKfQoKLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLAouYnRuLWdyb3VwPi5idG4gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogMCAxIGF1dG87CiAgICAtbXMtZmxleDogMCAxIGF1dG87CiAgICBmbGV4OiAwIDEgYXV0bwp9CgouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46aG92ZXIsCi5idG4tZ3JvdXA+LmJ0bjpob3ZlciB7CiAgICB6LWluZGV4OiAxCn0KCi5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi5hY3RpdmUsCi5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjphY3RpdmUsCi5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpmb2N1cywKLmJ0bi1ncm91cD4uYnRuLmFjdGl2ZSwKLmJ0bi1ncm91cD4uYnRuOmFjdGl2ZSwKLmJ0bi1ncm91cD4uYnRuOmZvY3VzIHsKICAgIHotaW5kZXg6IDEKfQoKLmJ0bi1ncm91cCAuYnRuKy5idG4sCi5idG4tZ3JvdXAgLmJ0bisuYnRuLWdyb3VwLAouYnRuLWdyb3VwIC5idG4tZ3JvdXArLmJ0biwKLmJ0bi1ncm91cCAuYnRuLWdyb3VwKy5idG4tZ3JvdXAsCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bisuYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsIC5idG4rLmJ0bi1ncm91cCwKLmJ0bi1ncm91cC12ZXJ0aWNhbCAuYnRuLWdyb3VwKy5idG4sCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bi1ncm91cCsuYnRuLWdyb3VwIHsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4Cn0KCi5idG4tdG9vbGJhciB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcDsKICAgIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0OwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAtbXMtZmxleC1wYWNrOiBzdGFydDsKICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydAp9CgouYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHsKICAgIHdpZHRoOiBhdXRvCn0KCi5idG4tZ3JvdXA+LmJ0bjpmaXJzdC1jaGlsZCB7CiAgICBtYXJnaW4tbGVmdDogMAp9CgouYnRuLWdyb3VwPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4uYnRuLAouYnRuLWdyb3VwPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwCn0KCi5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLAouYnRuLWdyb3VwPi5idG46bm90KDpmaXJzdC1jaGlsZCkgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQoKLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07CiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbQp9CgouZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwKLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwKLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7CiAgICBtYXJnaW4tbGVmdDogMAp9CgouZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3JlIHsKICAgIG1hcmdpbi1yaWdodDogMAp9CgouYnRuLWdyb3VwLXNtPi5idG4rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwKLmJ0bi1zbSsuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHsKICAgIHBhZGRpbmctcmlnaHQ6IDEuMjQ1cmVtOwogICAgcGFkZGluZy1sZWZ0OiAxLjI0NXJlbQp9CgouYnRuLWdyb3VwLWxnPi5idG4rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwKLmJ0bi1sZysuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHsKICAgIHBhZGRpbmctcmlnaHQ6IDEuNzQ3NXJlbTsKICAgIHBhZGRpbmctbGVmdDogMS43NDc1cmVtCn0KCi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KQp9CgouYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZS5idG4tbGluayB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgICBib3gtc2hhZG93OiBub25lCn0KCi5idG4tZ3JvdXAtdmVydGljYWwgewogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0OwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDsKICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0biwKLmJ0bi1ncm91cC12ZXJ0aWNhbCAuYnRuLWdyb3VwIHsKICAgIHdpZHRoOiAxMDAlCn0KCi5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bisuYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4rLmJ0bi1ncm91cCwKLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwKy5idG4sCi5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cCsuYnRuLWdyb3VwIHsKICAgIG1hcmdpbi10b3A6IC0xcHg7CiAgICBtYXJnaW4tbGVmdDogMAp9CgouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4uYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkgewogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9CgouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+LmJ0biwKLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpIHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAKfQoKLmJ0bi1ncm91cC10b2dnbGU+LmJ0biwKLmJ0bi1ncm91cC10b2dnbGU+LmJ0bi1ncm91cD4uYnRuIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmJ0bi1ncm91cC10b2dnbGU+LmJ0biBpbnB1dFt0eXBlPWNoZWNrYm94XSwKLmJ0bi1ncm91cC10b2dnbGU+LmJ0biBpbnB1dFt0eXBlPXJhZGlvXSwKLmJ0bi1ncm91cC10b2dnbGU+LmJ0bi1ncm91cD4uYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdLAouYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPi5idG4gaW5wdXRbdHlwZT1yYWRpb10gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lCn0KCi5pbnB1dC1ncm91cCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaDsKICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoOwogICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7CiAgICB3aWR0aDogMTAwJQp9CgouaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlLAouaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QsCi5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvOwogICAgLW1zLWZsZXg6IDEgMSBhdXRvOwogICAgZmxleDogMSAxIGF1dG87CiAgICB3aWR0aDogMSU7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGU6Zm9jdXMsCi5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpmb2N1cywKLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2w6Zm9jdXMgewogICAgei1pbmRleDogMwp9CgouaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlKy5jdXN0b20tZmlsZSwKLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuY3VzdG9tLXNlbGVjdCwKLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLmN1c3RvbS1maWxlLAouaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLmN1c3RvbS1zZWxlY3QsCi5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCsuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCsuY3VzdG9tLWZpbGUsCi5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5jdXN0b20tc2VsZWN0LAouaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCsuZm9ybS1jb250cm9sIHsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4Cn0KCi5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLAouaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpIHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAp9CgouaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCksCi5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpIHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCn0KCi5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCwKLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwCn0KCi5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGU6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLAouaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQoKLmlucHV0LWdyb3VwLWFwcGVuZCwKLmlucHV0LWdyb3VwLXByZXBlbmQgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXgKfQoKLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuLAouaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHotaW5kZXg6IDIKfQoKLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuKy5idG4sCi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0bisuaW5wdXQtZ3JvdXAtdGV4dCwKLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCsuYnRuLAouaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0Ky5pbnB1dC1ncm91cC10ZXh0LAouaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuKy5idG4sCi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4rLmlucHV0LWdyb3VwLXRleHQsCi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0Ky5idG4sCi5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0Ky5pbnB1dC1ncm91cC10ZXh0IHsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4Cn0KCi5pbnB1dC1ncm91cC1wcmVwZW5kIHsKICAgIG1hcmdpbi1yaWdodDogLTFweAp9CgouaW5wdXQtZ3JvdXAtYXBwZW5kIHsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4Cn0KCi5pbnB1dC1ncm91cC10ZXh0IHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgcGFkZGluZzogLjM3NXJlbSAxLjJyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgZm9udC1zaXplOiAxcmVtOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGxpbmUtaGVpZ2h0OiAyLjI7CiAgICBjb2xvcjogIzQ5NTA1NzsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwogICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMnJlbQp9CgouaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPWNoZWNrYm94XSwKLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1yYWRpb10gewogICAgbWFyZ2luLXRvcDogMAp9CgouaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksCi5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+LmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSwKLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKT4uYnRuLAouaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPi5pbnB1dC1ncm91cC10ZXh0LAouaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0biwKLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5pbnB1dC1ncm91cC10ZXh0IHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAp9CgouaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLAouaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCwKLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkPi5idG46bm90KDpmaXJzdC1jaGlsZCksCi5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZD4uaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSwKLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpPi5idG4sCi5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKT4uaW5wdXQtZ3JvdXAtdGV4dCB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9CgouY3VzdG9tLWNvbnRyb2wgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtaW4taGVpZ2h0OiAxLjVyZW07CiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbQp9CgouY3VzdG9tLWNvbnRyb2wtaW5saW5lIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIG1hcmdpbi1yaWdodDogMXJlbQp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgei1pbmRleDogLTE7CiAgICBvcGFjaXR5OiAwCn0KCi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIC4yNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KQp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQ6YWN0aXZlfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2IzZDdmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkfi5jdXN0b20tY29udHJvbC1sYWJlbCB7CiAgICBjb2xvcjogIzZjNzU3ZAp9CgouY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZgp9CgouY3VzdG9tLWNvbnRyb2wtbGFiZWwgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IC4yNXJlbTsKICAgIGxlZnQ6IDA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxcmVtOwogICAgaGVpZ2h0OiAxcmVtOwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBjb250ZW50OiAiIjsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOwogICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2OwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgwLCAwLCAwLCAuMSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgwLCAwLCAwLCAuMSkKfQoKLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IC4yNXJlbTsKICAgIGxlZnQ6IDA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxcmVtOwogICAgaGVpZ2h0OiAxcmVtOwogICAgY29udGVudDogIiI7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiA1MCUgNTAlOwogICAgYmFja2dyb3VuZC1zaXplOiA1MCUgNTAlCn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmCn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyUyM2ZmZicgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzRSUzQy9zdmclM0UiKQp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgICBib3gtc2hhZG93OiBub25lCn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGV+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nJTIzZmZmJyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0UiKQp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIzLCAyNTUsIC41KQp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDppbmRldGVybWluYXRlfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIzLCAyNTUsIC41KQp9CgouY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlCn0KCi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZgp9CgouY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM0UlM0NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM0UlM0Mvc3ZnJTNFIikKfQoKLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMywgMjU1LCAuNSkKfQoKLmN1c3RvbS1zZWxlY3QgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IGNhbGMoMi4yNXJlbSArIDJweCk7CiAgICBwYWRkaW5nOiAuMzc1cmVtIDEuNzVyZW0gLjM3NXJlbSAuNzVyZW07CiAgICBsaW5lLWhlaWdodDogMS41OwogICAgY29sb3I6ICM0OTUwNTc7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRSIpIG5vLXJlcGVhdCByaWdodCAuNzVyZW0gY2VudGVyOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDhweCAxMHB4OwogICAgYmFja2dyb3VuZC1zaXplOiA4cHggMTBweDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsKICAgIGFwcGVhcmFuY2U6IG5vbmUKfQoKLmN1c3RvbS1zZWxlY3Q6Zm9jdXMgewogICAgYm9yZGVyLWNvbG9yOiAjODBiZGZmOwogICAgb3V0bGluZTogMDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCA1cHggcmdiYSgxMjgsIDE4OSwgMjU1LCAuNSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDVweCByZ2JhKDEyOCwgMTg5LCAyNTUsIC41KQp9CgouY3VzdG9tLXNlbGVjdDpmb2N1czo6LW1zLXZhbHVlIHsKICAgIGNvbG9yOiAjNDk1MDU3OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZgp9CgouY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0sCi5jdXN0b20tc2VsZWN0W3NpemVdOm5vdChbc2l6ZT0iMSJdKSB7CiAgICBoZWlnaHQ6IGF1dG87CiAgICBwYWRkaW5nLXJpZ2h0OiAuNzVyZW07CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lCn0KCi5jdXN0b20tc2VsZWN0OmRpc2FibGVkIHsKICAgIGNvbG9yOiAjNmM3NTdkOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZgp9CgouY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZCB7CiAgICBvcGFjaXR5OiAwCn0KCi5jdXN0b20tc2VsZWN0LXNtIHsKICAgIGhlaWdodDogY2FsYygxLjgxMjVyZW0gKyAycHgpOwogICAgcGFkZGluZy10b3A6IC4zNzVyZW07CiAgICBwYWRkaW5nLWJvdHRvbTogLjM3NXJlbTsKICAgIGZvbnQtc2l6ZTogNzUlCn0KCi5jdXN0b20tc2VsZWN0LWxnIHsKICAgIGhlaWdodDogY2FsYygyLjg3NXJlbSArIDJweCk7CiAgICBwYWRkaW5nLXRvcDogLjM3NXJlbTsKICAgIHBhZGRpbmctYm90dG9tOiAuMzc1cmVtOwogICAgZm9udC1zaXplOiAxMjUlCn0KCi5jdXN0b20tZmlsZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmN1c3RvbS1maWxlLWlucHV0IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHotaW5kZXg6IDI7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKICAgIG1hcmdpbjogMDsKICAgIG9wYWNpdHk6IDAKfQoKLmN1c3RvbS1maWxlLWlucHV0OmZvY3Vzfi5jdXN0b20tZmlsZS1sYWJlbCB7CiAgICBib3JkZXItY29sb3I6ICM4MGJkZmY7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIC4yNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpCn0KCi5jdXN0b20tZmlsZS1pbnB1dDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsKICAgIGJvcmRlci1jb2xvcjogIzgwYmRmZgp9CgouY3VzdG9tLWZpbGUtaW5wdXQ6bGFuZyhlbil+LmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7CiAgICBjb250ZW50OiAiQnJvd3NlIgp9CgouY3VzdG9tLWZpbGUtbGFiZWwgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBsZWZ0OiAwOwogICAgei1pbmRleDogMTsKICAgIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKICAgIHBhZGRpbmc6IC4zNzVyZW0gLjc1cmVtOwogICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgIGNvbG9yOiAjNDk1MDU3OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KQp9CgouY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwOwogICAgYm90dG9tOiAwOwogICAgei1pbmRleDogMzsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgaGVpZ2h0OiBjYWxjKGNhbGMoMi4yNXJlbSArIDJweCkgLSAxcHggKiAyKTsKICAgIHBhZGRpbmc6IC4zNzVyZW0gLjc1cmVtOwogICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgIGNvbG9yOiAjNDk1MDU3OwogICAgY29udGVudDogIkJyb3dzZSI7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwogICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2VkNGRhOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIC4yNXJlbSAuMjVyZW0gMDsKICAgIGJvcmRlci1yYWRpdXM6IDAgLjI1cmVtIC4yNXJlbSAwCn0KCi5jdXN0b20tcmFuZ2UgewogICAgd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsKICAgIGFwcGVhcmFuY2U6IG5vbmUKfQoKLmN1c3RvbS1yYW5nZTpmb2N1cyB7CiAgICBvdXRsaW5lOiAwCn0KCi5jdXN0b20tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIgewogICAgYm9yZGVyOiAwCn0KCi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsKICAgIHdpZHRoOiAxcmVtOwogICAgaGVpZ2h0OiAxcmVtOwogICAgbWFyZ2luLXRvcDogLS4yNXJlbTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7CiAgICBib3JkZXI6IDA7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFyZW07CiAgICBib3JkZXItcmFkaXVzOiAxcmVtOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIC4xcmVtIC4yNXJlbSByZ2JhKDAsIDAsIDAsIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgLjFyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpOwogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgYXBwZWFyYW5jZTogbm9uZQp9CgouY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjpmb2N1cyB7CiAgICBvdXRsaW5lOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KTsKICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpCn0KCi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkN2ZmCn0KCi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAuNXJlbTsKICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcmVtOwogICAgYm9yZGVyLXJhZGl1czogMXJlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpCn0KCi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIgewogICAgd2lkdGg6IDFyZW07CiAgICBoZWlnaHQ6IDFyZW07CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwogICAgYm9yZGVyOiAwOwogICAgYm9yZGVyLXJhZGl1czogMXJlbTsKICAgIGJveC1zaGFkb3c6IDAgLjFyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpOwogICAgLW1vei1hcHBlYXJhbmNlOiBub25lOwogICAgYXBwZWFyYW5jZTogbm9uZQp9CgouY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iOmZvY3VzIHsKICAgIG91dGxpbmU6IDA7CiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KQp9CgouY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iOmFjdGl2ZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkN2ZmCn0KCi5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sgewogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IC41cmVtOwogICAgY29sb3I6IHRyYW5zcGFyZW50OwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItcmFkaXVzOiAxcmVtOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpCn0KCi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYiB7CiAgICB3aWR0aDogMXJlbTsKICAgIGhlaWdodDogMXJlbTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7CiAgICBib3JkZXI6IDA7CiAgICBib3JkZXItcmFkaXVzOiAxcmVtOwogICAgYm94LXNoYWRvdzogMCAuMXJlbSAuMjVyZW0gcmdiYSgwLCAwLCAwLCAuMSk7CiAgICBhcHBlYXJhbmNlOiBub25lCn0KCi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYjpmb2N1cyB7CiAgICBvdXRsaW5lOiAwOwogICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIC4yNSkKfQoKLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iOmFjdGl2ZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkN2ZmCn0KCi5jdXN0b20tcmFuZ2U6Oi1tcy10cmFjayB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogLjVyZW07CiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItd2lkdGg6IC41cmVtOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoMCwgMCwgMCwgLjEpCn0KCi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLWxvd2VyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7CiAgICBib3JkZXItcmFkaXVzOiAxcmVtCn0KCi5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVyIHsKICAgIG1hcmdpbi1yaWdodDogMTVweDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7CiAgICBib3JkZXItcmFkaXVzOiAxcmVtCn0KCi5uYXYgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgbGlzdC1zdHlsZTogbm9uZQp9CgoubmF2LWxpbmsgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nOiAuNXJlbSAxcmVtCn0KCi5uYXYtbGluazpmb2N1cywKLm5hdi1saW5rOmhvdmVyIHsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZQp9CgoubmF2LWxpbmsuZGlzYWJsZWQgewogICAgY29sb3I6ICM2Yzc1N2QKfQoKLm5hdi10YWJzIHsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2Cn0KCi5uYXYtdGFicyAubmF2LWl0ZW0gewogICAgbWFyZ2luLWJvdHRvbTogLTFweAp9CgoubmF2LXRhYnMgLm5hdi1saW5rIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9CgoubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzLAoubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyIHsKICAgIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTYKfQoKLm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZCB7CiAgICBjb2xvcjogIzZjNzU3ZDsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudAp9CgoubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rLAoubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7CiAgICBjb2xvcjogIzA2YjU5MDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiAjZmZmCn0KCi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7CiAgICBtYXJnaW4tdG9wOiAtMXB4OwogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9CgoubmF2LXBpbGxzIC5uYXYtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4OwogICAgYm9yZGVyLXJhZGl1czogMjAwcHgKfQoKLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLAoubmF2LXBpbGxzIC5zaG93Pi5uYXYtbGluayB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTNhYTQKfQoKLm5hdi1maWxsIC5uYXYtaXRlbSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxIDEgYXV0bzsKICAgIC1tcy1mbGV4OiAxIDEgYXV0bzsKICAgIGZsZXg6IDEgMSBhdXRvOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5uYXYtanVzdGlmaWVkIC5uYXYtaXRlbSB7CiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7CiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgIGZsZXgtYmFzaXM6IDA7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgIGZsZXgtZ3JvdzogMTsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgoudGFiLWNvbnRlbnQ+LnRhYi1wYW5lIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnRhYi1jb250ZW50Pi5hY3RpdmUgewogICAgZGlzcGxheTogYmxvY2sKfQoKLm5hdmJhciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICBwYWRkaW5nOiAxLjNyZW0gMXJlbQp9CgoubmF2YmFyPi5jb250YWluZXIsCi5uYXZiYXI+LmNvbnRhaW5lci1mbHVpZCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4KfQoKLm5hdmJhci1icmFuZCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBwYWRkaW5nLXRvcDogLjMxMjVyZW07CiAgICBwYWRkaW5nLWJvdHRvbTogLjMxMjVyZW07CiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07CiAgICBmb250LXNpemU6IDEuMjVyZW07CiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXAKfQoKLm5hdmJhci1icmFuZDpmb2N1cywKLm5hdmJhci1icmFuZDpob3ZlciB7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoKLm5hdmJhci1uYXYgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgbGlzdC1zdHlsZTogbm9uZQp9CgoubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMAp9CgoubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICBwb3NpdGlvbjogc3RhdGljOwogICAgZmxvYXQ6IG5vbmUKfQoKLm5hdmJhci10ZXh0IHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHBhZGRpbmctdG9wOiAuNXJlbTsKICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbQp9CgoubmF2YmFyLWNvbGxhcHNlIHsKICAgIC13ZWJraXQtZmxleC1iYXNpczogMTAwJTsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAxMDAlOwogICAgZmxleC1iYXNpczogMTAwJTsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTsKICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxOwogICAgZmxleC1ncm93OiAxOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5uYXZiYXItdG9nZ2xlciB7CiAgICBwYWRkaW5nOiAuMjVyZW0gLjc1cmVtOwogICAgZm9udC1zaXplOiAxLjI1cmVtOwogICAgbGluZS1oZWlnaHQ6IDE7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLm5hdmJhci10b2dnbGVyOmZvY3VzLAoubmF2YmFyLXRvZ2dsZXI6aG92ZXIgewogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lCn0KCi5uYXZiYXItdG9nZ2xlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLm5hdmJhci10b2dnbGVyLWljb24gewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDEuNWVtOwogICAgaGVpZ2h0OiAxLjVlbTsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgICBjb250ZW50OiAiIjsKICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsKICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlCn0KCkBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KSB7CiAgICAubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLAogICAgLm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lci1mbHVpZCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDAKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5uYXZiYXItZXhwYW5kLXNtIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlCiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW0KICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXIsCiAgICAubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLWZsdWlkIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcAogICAgfQogICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IGF1dG87CiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IGF1dG87CiAgICAgICAgZmxleC1iYXNpczogYXV0bwogICAgfQogICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KSB7CiAgICAubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLAogICAgLm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lci1mbHVpZCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDAKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKICAgIC5uYXZiYXItZXhwYW5kLW1kIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlCiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW0KICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXIsCiAgICAubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLWZsdWlkIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcAogICAgfQogICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1jb2xsYXBzZSB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IGF1dG87CiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IGF1dG87CiAgICAgICAgZmxleC1iYXNpczogYXV0bwogICAgfQogICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjk5MS45OHB4KSB7CiAgICAubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLAogICAgLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci1mbHVpZCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDAKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKICAgIC5uYXZiYXItZXhwYW5kLWxnIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93CiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlCiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW0KICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXIsCiAgICAubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLWZsdWlkIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcAogICAgfQogICAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IGF1dG87CiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IGF1dG87CiAgICAgICAgZmxleC1iYXNpczogYXV0bwogICAgfQogICAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCkgewogICAgLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lciwKICAgIC5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXItZmx1aWQgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwCiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewogICAgLm5hdmJhci1leHBhbmQteGwgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICAtbXMtZmxleC1mbG93OiByb3cgbm93cmFwOwogICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQKICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cKICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUKICAgIH0KICAgIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CiAgICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07CiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbQogICAgfQogICAgLm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lciwKICAgIC5uYXZiYXItZXhwYW5kLXhsPi5jb250YWluZXItZmx1aWQgewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwOwogICAgICAgIGZsZXgtd3JhcDogbm93cmFwCiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLWNvbGxhcHNlIHsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1iYXNpczogYXV0bzsKICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogYXV0bzsKICAgICAgICBmbGV4LWJhc2lzOiBhdXRvCiAgICB9CiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIgewogICAgICAgIGRpc3BsYXk6IG5vbmUKICAgIH0KfQoKLm5hdmJhci1leHBhbmQgewogICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQKfQoKLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lciwKLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci1mbHVpZCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwOwogICAgcGFkZGluZy1sZWZ0OiAwCn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHsKICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93OwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7CiAgICBmbGV4LWRpcmVjdGlvbjogcm93Cn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZQp9CgoubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgcGFkZGluZy1yaWdodDogLjVyZW07CiAgICBwYWRkaW5nLWxlZnQ6IC41cmVtCn0KCi5uYXZiYXItZXhwYW5kPi5jb250YWluZXIsCi5uYXZiYXItZXhwYW5kPi5jb250YWluZXItZmx1aWQgewogICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgIGZsZXgtd3JhcDogbm93cmFwCn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2UgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgIC13ZWJraXQtZmxleC1iYXNpczogYXV0bzsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvOwogICAgZmxleC1iYXNpczogYXV0bwp9CgoubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIgewogICAgZGlzcGxheTogbm9uZQp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzLAoubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMsCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHsKICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIC4zKQp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmU+Lm5hdi1saW5rLAoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3c+Lm5hdi1saW5rIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKQp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29uIHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMCwgMCwgMCwgMC41KScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0UiKQp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6Zm9jdXMsCi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6aG92ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQgewogICAgY29sb3I6ICNmZmYKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMsCi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpCn0KCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMsCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjUpCn0KCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuYWN0aXZlPi5uYXYtbGluaywKLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuc2hvdywKLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93Pi5uYXYtbGluayB7CiAgICBjb2xvcjogI2ZmZgp9CgoubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTsKICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSkKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlci1pY29uIHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMjU1LCAyNTUsIDI1NSwgMC41KScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0UiKQp9CgoubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KQp9CgoubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGEgewogICAgY29sb3I6ICNmZmYKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzLAoubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNhcmQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBtaW4td2lkdGg6IDA7CiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7CiAgICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLmNhcmQ+aHIgewogICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgbWFyZ2luLWxlZnQ6IDAKfQoKLmNhcmQ+Lmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNXJlbTsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMjVyZW0KfQoKLmNhcmQ+Lmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4yNXJlbTsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjI1cmVtCn0KCi5jYXJkLWJvZHkgewogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMSAxIGF1dG87CiAgICAtbXMtZmxleDogMSAxIGF1dG87CiAgICBmbGV4OiAxIDEgYXV0bzsKICAgIHBhZGRpbmc6IDEuNjdyZW0gMnJlbSAxLjhyZW0gMnJlbQp9CgouY2FyZC10aXRsZSB7CiAgICBtYXJnaW4tYm90dG9tOiAuNzVyZW0KfQoKLmNhcmQtc3VidGl0bGUgewogICAgbWFyZ2luLXRvcDogLS4zNzVyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jYXJkLWxpbms6aG92ZXIgewogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lCn0KCi5jYXJkLWxpbmsrLmNhcmQtbGluayB7CiAgICBtYXJnaW4tbGVmdDogMS42N3JlbSAycmVtIDEuOHJlbSAycmVtCn0KCi5jYXJkLWhlYWRlciB7CiAgICBwYWRkaW5nOiAuNzVyZW0gMS42N3JlbSAycmVtIDEuOHJlbSAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9CgouY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCkgY2FsYyguMjVyZW0gLSAxcHgpIDAgMDsKICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoLjI1cmVtIC0gMXB4KSBjYWxjKC4yNXJlbSAtIDFweCkgMCAwCn0KCi5jYXJkLWhlYWRlcisubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKICAgIGJvcmRlci10b3A6IDAKfQoKLmNhcmQtZm9vdGVyIHsKICAgIHBhZGRpbmc6IC43NXJlbSAxLjY3cmVtIDJyZW0gMS44cmVtIDJyZW07CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgY2FsYyguMjVyZW0gLSAxcHgpIGNhbGMoLjI1cmVtIC0gMXB4KTsKICAgIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKC4yNXJlbSAtIDFweCkgY2FsYyguMjVyZW0gLSAxcHgpCn0KCi5jYXJkLWhlYWRlci10YWJzIHsKICAgIG1hcmdpbi1yaWdodDogLTEuNjdyZW0gMnJlbSAxLjhyZW0gMnJlbS8yOwogICAgbWFyZ2luLWJvdHRvbTogLS43NXJlbTsKICAgIG1hcmdpbi1sZWZ0OiAtMS42N3JlbSAycmVtIDEuOHJlbSAycmVtLzI7CiAgICBib3JkZXItYm90dG9tOiAwCn0KCi5jYXJkLWhlYWRlci1waWxscyB7CiAgICBtYXJnaW4tcmlnaHQ6IC0xLjY3cmVtIDJyZW0gMS44cmVtIDJyZW0vMjsKICAgIG1hcmdpbi1sZWZ0OiAtMS42N3JlbSAycmVtIDEuOHJlbSAycmVtLzIKfQoKLmNhcmQtaW1nLW92ZXJsYXkgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgcGFkZGluZzogMS4yNXJlbQp9CgouY2FyZC1pbWcgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IGNhbGMoLjI1cmVtIC0gMXB4KTsKICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoLjI1cmVtIC0gMXB4KQp9CgouY2FyZC1pbWctdG9wIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCk7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCk7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCk7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYyguMjVyZW0gLSAxcHgpCn0KCi5jYXJkLWltZy1ib3R0b20gewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCk7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYyguMjVyZW0gLSAxcHgpOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCk7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKC4yNXJlbSAtIDFweCkKfQoKLmNhcmQtZGVjayB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgp9CgouY2FyZC1kZWNrIC5jYXJkIHsKICAgIG1hcmdpbi1ib3R0b206IDE1cHgKfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5jYXJkLWRlY2sgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IHdyYXA7CiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7CiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OwogICAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweAogICAgfQogICAgLmNhcmQtZGVjayAuY2FyZCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXg6IDEgMCAwJTsKICAgICAgICAtbXMtZmxleDogMSAwIDAlOwogICAgICAgIGZsZXg6IDEgMCAwJTsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4CiAgICB9Cn0KCi5jYXJkLWdyb3VwIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCn0KCi5jYXJkLWdyb3VwPi5jYXJkIHsKICAgIG1hcmdpbi1ib3R0b206IDE1cHgKfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5jYXJkLWdyb3VwIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXAKICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgICAgIC13ZWJraXQtZmxleDogMSAwIDAlOwogICAgICAgIC1tcy1mbGV4OiAxIDAgMCU7CiAgICAgICAgZmxleDogMSAwIDAlOwogICAgICAgIG1hcmdpbi1ib3R0b206IDAKICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkKy5jYXJkIHsKICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICBib3JkZXItbGVmdDogMAogICAgfQogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6Zmlyc3QtY2hpbGQgewogICAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAogICAgfQogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6Zmlyc3QtY2hpbGQgLmNhcmQtaGVhZGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6Zmlyc3QtY2hpbGQgLmNhcmQtaW1nLXRvcCB7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAogICAgfQogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6Zmlyc3QtY2hpbGQgLmNhcmQtZm9vdGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6Zmlyc3QtY2hpbGQgLmNhcmQtaW1nLWJvdHRvbSB7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAogICAgfQogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6bGFzdC1jaGlsZCB7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwogICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkOmxhc3QtY2hpbGQgLmNhcmQtaGVhZGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6bGFzdC1jaGlsZCAuY2FyZC1pbWctdG9wIHsKICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMAogICAgfQogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6bGFzdC1jaGlsZCAuY2FyZC1mb290ZXIsCiAgICAuY2FyZC1ncm91cD4uY2FyZDpsYXN0LWNoaWxkIC5jYXJkLWltZy1ib3R0b20gewogICAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCiAgICB9CiAgICAuY2FyZC1ncm91cD4uY2FyZDpvbmx5LWNoaWxkIHsKICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNXJlbTsKICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkOm9ubHktY2hpbGQgLmNhcmQtaGVhZGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6b25seS1jaGlsZCAuY2FyZC1pbWctdG9wIHsKICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNXJlbTsKICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMjVyZW07CiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjI1cmVtOwogICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMjVyZW0KICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkOm9ubHktY2hpbGQgLmNhcmQtZm9vdGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6b25seS1jaGlsZCAuY2FyZC1pbWctYm90dG9tIHsKICAgICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMjVyZW07CiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4yNXJlbTsKICAgICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IC4yNXJlbTsKICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMjVyZW0KICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KDpvbmx5LWNoaWxkKSB7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAKICAgIH0KICAgIC5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6bm90KDpvbmx5LWNoaWxkKSAuY2FyZC1mb290ZXIsCiAgICAuY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCkgLmNhcmQtaGVhZGVyLAogICAgLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sCiAgICAuY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCkgLmNhcmQtaW1nLXRvcCB7CiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAKICAgIH0KfQoKLmNhcmQtY29sdW1ucyAuY2FyZCB7CiAgICBtYXJnaW4tYm90dG9tOiAuNzVyZW0KfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5jYXJkLWNvbHVtbnMgewogICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzOwogICAgICAgIGNvbHVtbi1jb3VudDogMzsKICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDEuMjVyZW07CiAgICAgICAgY29sdW1uLWdhcDogMS4yNXJlbTsKICAgICAgICBvcnBoYW5zOiAxOwogICAgICAgIHdpZG93czogMQogICAgfQogICAgLmNhcmQtY29sdW1ucyAuY2FyZCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9Cn0KCi5hY2NvcmRpb24gLmNhcmQ6bm90KDpmaXJzdC1vZi10eXBlKTpub3QoOmxhc3Qtb2YtdHlwZSkgewogICAgYm9yZGVyLWJvdHRvbTogMDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDAKfQoKLmFjY29yZGlvbiAuY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpIC5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXItcmFkaXVzOiAwCn0KCi5hY2NvcmRpb24gLmNhcmQ6Zmlyc3Qtb2YtdHlwZSB7CiAgICBib3JkZXItYm90dG9tOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9CgouYWNjb3JkaW9uIC5jYXJkOmxhc3Qtb2YtdHlwZSB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwCn0KCi5icmVhZGNydW1iIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwOwogICAgcGFkZGluZzogMCAwOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLmJyZWFkY3J1bWItaXRlbSsuYnJlYWRjcnVtYi1pdGVtIHsKICAgIHBhZGRpbmctbGVmdDogMAp9CgouYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBwYWRkaW5nLXJpZ2h0OiAwOwogICAgY29sb3I6ICM2Yzc1N2Q7CiAgICBjb250ZW50OiAi74SSIgp9CgouYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7CiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZQp9CgouYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoKLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUgewogICAgY29sb3I6ICM1YTY2NzEKfQoKLnBhZ2luYXRpb24gewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBsaXN0LXN0eWxlOiBub25lOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjY2cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NnJlbQp9CgoucGFnZS1saW5rIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogLjhyZW0gMXJlbTsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4OwogICAgbGluZS1oZWlnaHQ6IDEuMjU7CiAgICBjb2xvcjogIzAwN2JmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2Cn0KCi5wYWdlLWxpbms6aG92ZXIgewogICAgei1pbmRleDogMjsKICAgIGNvbG9yOiAjMDA1NmIzOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNgp9CgoucGFnZS1saW5rOmZvY3VzIHsKICAgIHotaW5kZXg6IDI7CiAgICBvdXRsaW5lOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAuMjUpOwogICAgYm94LXNoYWRvdzogMCAwIDAgLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgLjI1KQp9CgoucGFnZS1saW5rOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHsKICAgIGN1cnNvcjogcG9pbnRlcgp9CgoucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsgewogICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNjZyZW07CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMjY2cmVtOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMjY2cmVtOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjI2NnJlbQp9CgoucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMjY2cmVtOwogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC4yNjZyZW07CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMjY2cmVtOwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4yNjZyZW0KfQoKLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7CiAgICB6LWluZGV4OiAxOwogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwogICAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmCn0KCi5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7CiAgICBjb2xvcjogIzZjNzU3ZDsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgY3Vyc29yOiBhdXRvOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNgp9CgoucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHsKICAgIHBhZGRpbmc6IC43NXJlbSAxLjVyZW07CiAgICBmb250LXNpemU6IDEuMjVyZW07CiAgICBsaW5lLWhlaWdodDogMS41Cn0KCi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4zcmVtOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogLjNyZW07CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IC4zcmVtOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjNyZW0KfQoKLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjNyZW07CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjNyZW07CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuM3JlbTsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuM3JlbQp9CgoucGFnaW5hdGlvbi1zbSAucGFnZS1saW5rIHsKICAgIHBhZGRpbmc6IC4yNXJlbSAuNXJlbTsKICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAxLjUKfQoKLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogLjJyZW07CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMnJlbTsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjJyZW07CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMnJlbQp9CgoucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMnJlbTsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4ycmVtCn0KCi5iYWRnZSB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBwYWRkaW5nOiAuMjVlbSAuNGVtOwogICAgZm9udC1zaXplOiA3NSU7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgbGluZS1oZWlnaHQ6IDE7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLmJhZGdlOmVtcHR5IHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLmJ0biAuYmFkZ2UgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdG9wOiAtMXB4Cn0KCi5iYWRnZS1waWxsIHsKICAgIHBhZGRpbmctcmlnaHQ6IC42ZW07CiAgICBwYWRkaW5nLWxlZnQ6IC42ZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcmVtOwogICAgYm9yZGVyLXJhZGl1czogMTByZW0KfQoKLmJhZGdlLXByaW1hcnkgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDEzYWE0Cn0KCi5iYWRnZS1wcmltYXJ5W2hyZWZdOmZvY3VzLAouYmFkZ2UtcHJpbWFyeVtocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzMjJkN2UKfQoKLmJhZGdlLXNlY29uZGFyeSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwNmI1OTAKfQoKLmJhZGdlLXNlY29uZGFyeVtocmVmXTpmb2N1cywKLmJhZGdlLXNlY29uZGFyeVtocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDg0NjkKfQoKLmJhZGdlLXN1Y2Nlc3MgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzViNTNlCn0KCi5iYWRnZS1zdWNjZXNzW2hyZWZdOmZvY3VzLAouYmFkZ2Utc3VjY2Vzc1tocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyOThlMzAKfQoKLmJhZGdlLWluZm8gewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzc3ZGZmCn0KCi5iYWRnZS1pbmZvW2hyZWZdOmZvY3VzLAouYmFkZ2UtaW5mb1tocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDVjZmYKfQoKLmJhZGdlLXdhcm5pbmcgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZjAwCn0KCi5iYWRnZS13YXJuaW5nW2hyZWZdOmZvY3VzLAouYmFkZ2Utd2FybmluZ1tocmVmXTpob3ZlciB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhjMDAKfQoKLmJhZGdlLWRhbmdlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlMjM2MzYKfQoKLmJhZGdlLWRhbmdlcltocmVmXTpmb2N1cywKLmJhZGdlLWRhbmdlcltocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjODFkMWQKfQoKLmJhZGdlLWxpZ2h0IHsKICAgIGNvbG9yOiAjMjEyNTI5OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZgp9CgouYmFkZ2UtbGlnaHRbaHJlZl06Zm9jdXMsCi5iYWRnZS1saWdodFtocmVmXTpob3ZlciB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTYKfQoKLmJhZGdlLWRhcmsgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAyNDI4Cn0KCi5iYWRnZS1kYXJrW2hyZWZdOmZvY3VzLAouYmFkZ2UtZGFya1tocmVmXTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTBiMGMKfQoKLmp1bWJvdHJvbiB7CiAgICBwYWRkaW5nOiAycmVtIDFyZW07CiAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICBib3JkZXItcmFkaXVzOiAuM3JlbQp9CgpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewogICAgLmp1bWJvdHJvbiB7CiAgICAgICAgcGFkZGluZzogNHJlbSAycmVtCiAgICB9Cn0KCi5qdW1ib3Ryb24tZmx1aWQgewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDAKfQoKLmFsZXJ0IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHBhZGRpbmc6IDEuNnJlbSAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMS4zM3JlbTsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLmFsZXJ0LWhlYWRpbmcgewogICAgY29sb3I6IGluaGVyaXQKfQoKLmFsZXJ0LWxpbmsgewogICAgZm9udC13ZWlnaHQ6IDcwMAp9CgouYWxlcnQtZGlzbWlzc2libGUgewogICAgcGFkZGluZy1yaWdodDogNS41cmVtCn0KCi5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2UgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBwYWRkaW5nOiAxLjZyZW0gMnJlbTsKICAgIGNvbG9yOiBpbmhlcml0Cn0KCi5hbGVydC1wcmltYXJ5IHsKICAgIGNvbG9yOiAjNDEzYWE0OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDhlZDsKICAgIGJvcmRlci1jb2xvcjogI2NhYzhlNgp9CgouYWxlcnQtcHJpbWFyeSBociB7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjYjliNmRlCn0KCi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjMzIyZDdlCn0KCi5hbGVydC1zZWNvbmRhcnkgewogICAgY29sb3I6ICMwNmI1OTA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RmMGU5OwogICAgYm9yZGVyLWNvbG9yOiAjYjllYWUwCn0KCi5hbGVydC1zZWNvbmRhcnkgaHIgewogICAgYm9yZGVyLXRvcC1jb2xvcjogI2E1ZTRkNwp9CgouYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjMDQ4NDY5Cn0KCi5hbGVydC1zdWNjZXNzIHsKICAgIGNvbG9yOiAjMzViNTNlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Q3ZjBkODsKICAgIGJvcmRlci1jb2xvcjogI2M2ZWFjOQp9CgouYWxlcnQtc3VjY2VzcyBociB7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjYjNlM2I3Cn0KCi5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjMjk4ZTMwCn0KCi5hbGVydC1pbmZvIHsKICAgIGNvbG9yOiAjMzc3ZGZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Q3ZTVmZjsKICAgIGJvcmRlci1jb2xvcjogI2M3ZGJmZgp9CgouYWxlcnQtaW5mbyBociB7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjYWVjYmZmCn0KCi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjMDQ1Y2ZmCn0KCi5hbGVydC13YXJuaW5nIHsKICAgIGNvbG9yOiAjZmZhZjAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWZjYzsKICAgIGJvcmRlci1jb2xvcjogI2ZmZTliOAp9CgouYWxlcnQtd2FybmluZyBociB7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZlMTlmCn0KCi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjY2M4YzAwCn0KCi5hbGVydC1kYW5nZXIgewogICAgY29sb3I6ICNlMjM2MzY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlkN2Q3OwogICAgYm9yZGVyLWNvbG9yOiAjZjdjN2M3Cn0KCi5hbGVydC1kYW5nZXIgaHIgewogICAgYm9yZGVyLXRvcC1jb2xvcjogI2Y0YjFiMQp9CgouYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjYzgxZDFkCn0KCi5hbGVydC1saWdodCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICNmZmYKfQoKLmFsZXJ0LWxpZ2h0IGhyIHsKICAgIGJvcmRlci10b3AtY29sb3I6ICNmMmYyZjIKfQoKLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjZTZlNmU2Cn0KCi5hbGVydC1kYXJrIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2QyZDNkNDsKICAgIGJvcmRlci1jb2xvcjogI2MxYzJjMwp9CgouYWxlcnQtZGFyayBociB7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjYjRiNWI2Cn0KCi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHsKICAgIGNvbG9yOiAjMDkwYjBjCn0KCkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7CiAgICBmcm9tIHsKICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAuNTRyZW0gMAogICAgfQogICAgdG8gewogICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMAogICAgfQp9CgpAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHsKICAgIGZyb20gewogICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC41NHJlbSAwCiAgICB9CiAgICB0byB7CiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwCiAgICB9Cn0KCi5wcm9ncmVzcyB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIGhlaWdodDogLjU0cmVtOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGZvbnQtc2l6ZTogLjc1cmVtOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI1cmVtOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoMCwgMCwgMCwgLjEpOwogICAgYm94LXNoYWRvdzogaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKDAsIDAsIDAsIC4xKQp9CgoucHJvZ3Jlc3MtYmFyIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgY29sb3I6ICNmZmY7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggLjZzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiB3aWR0aCAuNnMgZWFzZTsKICAgIHRyYW5zaXRpb246IHdpZHRoIC42cyBlYXNlCn0KCkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewogICAgLnByb2dyZXNzLWJhciB7CiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lOwogICAgICAgIC1vLXRyYW5zaXRpb246IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogbm9uZQogICAgfQp9CgoucHJvZ3Jlc3MtYmFyLXN0cmlwZWQgewogICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOwogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7CiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogLjU0cmVtIC41NHJlbTsKICAgIGJhY2tncm91bmQtc2l6ZTogLjU0cmVtIC41NHJlbQp9CgoucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAxcyBsaW5lYXIgaW5maW5pdGU7CiAgICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzIDFzIGxpbmVhciBpbmZpbml0ZQp9CgoubWVkaWEgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0OwogICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQKfQoKLm1lZGlhLWJvZHkgewogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgoubGlzdC1ncm91cCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIHBhZGRpbmctbGVmdDogMDsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24gewogICAgd2lkdGg6IDEwMCU7CiAgICBjb2xvcjogIzQ5NTA1NzsKICAgIHRleHQtYWxpZ246IGluaGVyaXQKfQoKLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsCi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjNDk1MDU3OwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYQp9CgoubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUgewogICAgY29sb3I6ICMyMTI1Mjk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmCn0KCi5saXN0LWdyb3VwLWl0ZW0gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nOiAuNzVyZW0gMS4yNXJlbTsKICAgIG1hcmdpbi1ib3R0b206IC0xcHg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMTI1KQp9CgoubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogLjI1cmVtOwogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC4yNXJlbQp9CgoubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMjVyZW07CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IC4yNXJlbTsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IC4yNXJlbQp9CgoubGlzdC1ncm91cC1pdGVtOmZvY3VzLAoubGlzdC1ncm91cC1pdGVtOmhvdmVyIHsKICAgIHotaW5kZXg6IDE7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoKLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwKLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZCB7CiAgICBjb2xvcjogIzZjNzU3ZDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYKfQoKLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewogICAgei1pbmRleDogMjsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICAgIGJvcmRlci1jb2xvcjogIzAwN2JmZgp9CgoubGlzdC1ncm91cC1mbHVzaCAubGlzdC1ncm91cC1pdGVtIHsKICAgIGJvcmRlci1yaWdodDogMDsKICAgIGJvcmRlci1sZWZ0OiAwOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwogICAgYm9yZGVyLXJhZGl1czogMAp9CgoubGlzdC1ncm91cC1mbHVzaDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKICAgIGJvcmRlci10b3A6IDAKfQoKLmxpc3QtZ3JvdXAtZmx1c2g6bGFzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewogICAgYm9yZGVyLWJvdHRvbTogMAp9CgoubGlzdC1ncm91cC1pdGVtLXByaW1hcnkgewogICAgY29sb3I6ICMyMjFlNTU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjOGU2Cn0KCi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLAoubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7CiAgICBjb2xvcjogIzIyMWU1NTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiOWI2ZGUKfQoKLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMWU1NTsKICAgIGJvcmRlci1jb2xvcjogIzIyMWU1NQp9CgoubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeSB7CiAgICBjb2xvcjogIzAzNWU0YjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiOWVhZTAKfQoKLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywKLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7CiAgICBjb2xvcjogIzAzNWU0YjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNhNWU0ZDcKfQoKLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDM1ZTRiOwogICAgYm9yZGVyLWNvbG9yOiAjMDM1ZTRiCn0KCi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7CiAgICBjb2xvcjogIzFjNWUyMDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjNmVhYzkKfQoKLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsCi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjMWM1ZTIwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2IzZTNiNwp9CgoubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWM1ZTIwOwogICAgYm9yZGVyLWNvbG9yOiAjMWM1ZTIwCn0KCi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7CiAgICBjb2xvcjogIzFkNDE4NTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2RiZmYKfQoKLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsCi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjMWQ0MTg1OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2FlY2JmZgp9CgoubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQ0MTg1OwogICAgYm9yZGVyLWNvbG9yOiAjMWQ0MTg1Cn0KCi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7CiAgICBjb2xvcjogIzg1NWIwMDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU5YjgKfQoKLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsCi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjODU1YjAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTE5Zgp9CgoubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU1YjAwOwogICAgYm9yZGVyLWNvbG9yOiAjODU1YjAwCn0KCi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHsKICAgIGNvbG9yOiAjNzYxYzFjOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3YzdjNwp9CgoubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLAoubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjNzYxYzFjOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjFiMQp9CgoubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICM3NjFjMWM7CiAgICBib3JkZXItY29sb3I6ICM3NjFjMWMKfQoKLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7CiAgICBjb2xvcjogIzg1ODU4NTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYKfQoKLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLAoubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIgewogICAgY29sb3I6ICM4NTg1ODU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyCn0KCi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU4NTg1OwogICAgYm9yZGVyLWNvbG9yOiAjODU4NTg1Cn0KCi5saXN0LWdyb3VwLWl0ZW0tZGFyayB7CiAgICBjb2xvcjogIzExMTMxNTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjMWMyYzMKfQoKLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsCi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICAgIGNvbG9yOiAjMTExMzE1OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2I0YjViNgp9CgoubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExMzE1OwogICAgYm9yZGVyLWNvbG9yOiAjMTExMzE1Cn0KCi5jbG9zZSB7CiAgICBmbG9hdDogcmlnaHQ7CiAgICBmb250LXNpemU6IDEuNXJlbTsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBsaW5lLWhlaWdodDogMTsKICAgIGNvbG9yOiAjMDAwOwogICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjsKICAgIG9wYWNpdHk6IC41Cn0KCi5jbG9zZTpmb2N1cywKLmNsb3NlOmhvdmVyIHsKICAgIGNvbG9yOiAjMDAwOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgb3BhY2l0eTogLjc1Cn0KCi5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKYnV0dG9uLmNsb3NlIHsKICAgIHBhZGRpbmc6IDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlcjogMDsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQp9CgoubW9kYWwtb3BlbiB7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5tb2RhbCB7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICB0b3A6IDA7CiAgICByaWdodDogMDsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDUwOwogICAgZGlzcGxheTogbm9uZTsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBvdXRsaW5lOiAwCn0KCi5tb2RhbC1vcGVuIC5tb2RhbCB7CiAgICBvdmVyZmxvdy14OiBoaWRkZW47CiAgICBvdmVyZmxvdy15OiBhdXRvCn0KCi5tb2RhbC1kaWFsb2cgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IGF1dG87CiAgICBtYXJnaW46IC41cmVtOwogICAgcG9pbnRlci1ldmVudHM6IG5vbmUKfQoKLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4zcyBlYXNlLW91dDsKICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4zcyBlYXNlLW91dDsKICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0OwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dCwgLXdlYmtpdC10cmFuc2Zvcm0gLjNzIGVhc2Utb3V0OwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpCn0KCkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewogICAgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7CiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lOwogICAgICAgIC1vLXRyYW5zaXRpb246IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogbm9uZQogICAgfQp9CgoubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKQp9CgoubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gKC41cmVtICogMikpCn0KCi5tb2RhbC1jb250ZW50IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgd2lkdGg6IDEwMCU7CiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7CiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwogICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMik7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4zcmVtOwogICAgYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgLjI1cmVtIC41cmVtIHJnYmEoMCwgMCwgMCwgLjUpOwogICAgYm94LXNoYWRvdzogMCAuMjVyZW0gLjVyZW0gcmdiYSgwLCAwLCAwLCAuNSk7CiAgICBvdXRsaW5lOiAwCn0KCi5tb2RhbC1iYWNrZHJvcCB7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICB0b3A6IDA7CiAgICByaWdodDogMDsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDQwOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMAp9CgoubW9kYWwtYmFja2Ryb3AuZmFkZSB7CiAgICBvcGFjaXR5OiAwCn0KCi5tb2RhbC1iYWNrZHJvcC5zaG93IHsKICAgIG9wYWNpdHk6IC41Cn0KCi5tb2RhbC1oZWFkZXIgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0OwogICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5OwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgcGFkZGluZzogMXJlbTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmOwogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuM3JlbTsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4zcmVtOwogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjNyZW07CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjNyZW0KfQoKLm1vZGFsLWhlYWRlciAuY2xvc2UgewogICAgcGFkZGluZzogMXJlbTsKICAgIG1hcmdpbjogLTFyZW0gLTFyZW0gLTFyZW0gYXV0bwp9CgoubW9kYWwtdGl0bGUgewogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjUKfQoKLm1vZGFsLWJvZHkgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMSAxIGF1dG87CiAgICAtbXMtZmxleDogMSAxIGF1dG87CiAgICBmbGV4OiAxIDEgYXV0bzsKICAgIHBhZGRpbmc6IDFyZW0KfQoKLm1vZGFsLWZvb3RlciB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZDsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgIC1tcy1mbGV4LXBhY2s6IGVuZDsKICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICBwYWRkaW5nOiAxcmVtOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWYKfQoKLm1vZGFsLWZvb3Rlcj46bm90KDpmaXJzdC1jaGlsZCkgewogICAgbWFyZ2luLWxlZnQ6IC4yNXJlbQp9CgoubW9kYWwtZm9vdGVyPjpub3QoOmxhc3QtY2hpbGQpIHsKICAgIG1hcmdpbi1yaWdodDogLjI1cmVtCn0KCi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IC05OTk5cHg7CiAgICB3aWR0aDogNTBweDsKICAgIGhlaWdodDogNTBweDsKICAgIG92ZXJmbG93OiBzY3JvbGwKfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5tb2RhbC1kaWFsb2cgewogICAgICAgIG1heC13aWR0aDogNTAwcHg7CiAgICAgICAgbWFyZ2luOiAxLjc1cmVtIGF1dG8KICAgIH0KICAgIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQgewogICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtICgxLjc1cmVtICogMikpCiAgICB9CiAgICAubW9kYWwtY29udGVudCB7CiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAuNSk7CiAgICAgICAgYm94LXNoYWRvdzogMCAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgLjUpCiAgICB9CiAgICAubW9kYWwtc20gewogICAgICAgIG1heC13aWR0aDogMzAwcHgKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKICAgIC5tb2RhbC1sZyB7CiAgICAgICAgbWF4LXdpZHRoOiA4MDBweAogICAgfQp9CgoudG9vbHRpcCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB6LWluZGV4OiAxMDcwOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW46IDA7CiAgICBmb250LWZhbWlseTogUG9wcGlucywgTWlyemEsIHNhbnMtc2VyaWY7CiAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICB0ZXh0LWFsaWduOiBzdGFydDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIHRleHQtc2hhZG93OiBub25lOwogICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7CiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOwogICAgd29yZC1icmVhazogbm9ybWFsOwogICAgd29yZC1zcGFjaW5nOiBub3JtYWw7CiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOwogICAgbGluZS1icmVhazogYXV0bzsKICAgIGZvbnQtc2l6ZTogLjg3NXJlbTsKICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsKICAgIG9wYWNpdHk6IDAKfQoKLnRvb2x0aXAuc2hvdyB7CiAgICBvcGFjaXR5OiAuOQp9CgoudG9vbHRpcCAuYXJyb3cgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogLjhyZW07CiAgICBoZWlnaHQ6IC40cmVtCn0KCi50b29sdGlwIC5hcnJvdzo6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1zdHlsZTogc29saWQKfQoKLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSwKLmJzLXRvb2x0aXAtdG9wIHsKICAgIHBhZGRpbmc6IC40cmVtIDAKfQoKLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3csCi5icy10b29sdGlwLXRvcCAuYXJyb3cgewogICAgYm90dG9tOiAwCn0KCi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUsCi5icy10b29sdGlwLXRvcCAuYXJyb3c6OmJlZm9yZSB7CiAgICB0b3A6IDA7CiAgICBib3JkZXItd2lkdGg6IC40cmVtIC40cmVtIDA7CiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwCn0KCi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSwKLmJzLXRvb2x0aXAtcmlnaHQgewogICAgcGFkZGluZzogMCAuNHJlbQp9CgouYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93LAouYnMtdG9vbHRpcC1yaWdodCAuYXJyb3cgewogICAgbGVmdDogMDsKICAgIHdpZHRoOiAuNHJlbTsKICAgIGhlaWdodDogLjhyZW0KfQoKLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIC5hcnJvdzo6YmVmb3JlLAouYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSB7CiAgICByaWdodDogMDsKICAgIGJvcmRlci13aWR0aDogLjRyZW0gLjRyZW0gLjRyZW0gMDsKICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMAp9CgouYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dLAouYnMtdG9vbHRpcC1ib3R0b20gewogICAgcGFkZGluZzogLjRyZW0gMAp9CgouYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5hcnJvdywKLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdyB7CiAgICB0b3A6IDAKfQoKLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmJlZm9yZSwKLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdzo6YmVmb3JlIHsKICAgIGJvdHRvbTogMDsKICAgIGJvcmRlci13aWR0aDogMCAuNHJlbSAuNHJlbTsKICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDAKfQoKLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0sCi5icy10b29sdGlwLWxlZnQgewogICAgcGFkZGluZzogMCAuNHJlbQp9CgouYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3csCi5icy10b29sdGlwLWxlZnQgLmFycm93IHsKICAgIHJpZ2h0OiAwOwogICAgd2lkdGg6IC40cmVtOwogICAgaGVpZ2h0OiAuOHJlbQp9CgouYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3c6OmJlZm9yZSwKLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3c6OmJlZm9yZSB7CiAgICBsZWZ0OiAwOwogICAgYm9yZGVyLXdpZHRoOiAuNHJlbSAwIC40cmVtIC40cmVtOwogICAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDAKfQoKLnRvb2x0aXAtaW5uZXIgewogICAgbWF4LXdpZHRoOiAyMDBweDsKICAgIHBhZGRpbmc6IC4yNXJlbSAuNXJlbTsKICAgIGNvbG9yOiAjZmZmOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI1cmVtCn0KCi5wb3BvdmVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDYwOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXgtd2lkdGg6IDI3NnB4OwogICAgZm9udC1mYW1pbHk6IFBvcHBpbnMsIE1pcnphLCBzYW5zLXNlcmlmOwogICAgZm9udC1zdHlsZTogbm9ybWFsOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgdGV4dC1hbGlnbjogc3RhcnQ7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICB0ZXh0LXNoYWRvdzogbm9uZTsKICAgIHRleHQtdHJhbnNmb3JtOiBub25lOwogICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsKICAgIHdvcmQtYnJlYWs6IG5vcm1hbDsKICAgIHdvcmQtc3BhY2luZzogbm9ybWFsOwogICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsKICAgIGxpbmUtYnJlYWs6IGF1dG87CiAgICBmb250LXNpemU6IC44NzVyZW07CiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwogICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjIpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4zcmVtOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIC4yNXJlbSAuNXJlbSByZ2JhKDAsIDAsIDAsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgLjI1cmVtIC41cmVtIHJnYmEoMCwgMCwgMCwgLjIpCn0KCi5wb3BvdmVyIC5hcnJvdyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxcmVtOwogICAgaGVpZ2h0OiAuNXJlbTsKICAgIG1hcmdpbjogMCAuM3JlbQp9CgoucG9wb3ZlciAuYXJyb3c6OmFmdGVyLAoucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbnRlbnQ6ICIiOwogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1zdHlsZTogc29saWQKfQoKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSwKLmJzLXBvcG92ZXItdG9wIHsKICAgIG1hcmdpbi1ib3R0b206IC41cmVtCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93LAouYnMtcG9wb3Zlci10b3AgLmFycm93IHsKICAgIGJvdHRvbTogY2FsYygoLjVyZW0gKyAxcHgpICogLTEpCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjphZnRlciwKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3c6OmJlZm9yZSwKLmJzLXBvcG92ZXItdG9wIC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLXRvcCAuYXJyb3c6OmJlZm9yZSB7CiAgICBib3JkZXItd2lkdGg6IC41cmVtIC41cmVtIDAKfQoKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3c6OmJlZm9yZSwKLmJzLXBvcG92ZXItdG9wIC5hcnJvdzo6YmVmb3JlIHsKICAgIGJvdHRvbTogMDsKICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdIC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLXRvcCAuYXJyb3c6OmFmdGVyIHsKICAgIGJvdHRvbTogMXB4OwogICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZgp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0sCi5icy1wb3BvdmVyLXJpZ2h0IHsKICAgIG1hcmdpbi1sZWZ0OiAuNXJlbQp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93LAouYnMtcG9wb3Zlci1yaWdodCAuYXJyb3cgewogICAgbGVmdDogY2FsYygoLjVyZW0gKyAxcHgpICogLTEpOwogICAgd2lkdGg6IC41cmVtOwogICAgaGVpZ2h0OiAxcmVtOwogICAgbWFyZ2luOiAuM3JlbSAwCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3c6OmFmdGVyLAouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93OjpiZWZvcmUsCi5icy1wb3BvdmVyLXJpZ2h0IC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLXJpZ2h0IC5hcnJvdzo6YmVmb3JlIHsKICAgIGJvcmRlci13aWR0aDogLjVyZW0gLjVyZW0gLjVyZW0gMAp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93OjpiZWZvcmUsCi5icy1wb3BvdmVyLXJpZ2h0IC5hcnJvdzo6YmVmb3JlIHsKICAgIGxlZnQ6IDA7CiAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93OjphZnRlciwKLmJzLXBvcG92ZXItcmlnaHQgLmFycm93OjphZnRlciB7CiAgICBsZWZ0OiAxcHg7CiAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmZmYKfQoKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSwKLmJzLXBvcG92ZXItYm90dG9tIHsKICAgIG1hcmdpbi10b3A6IC41cmVtCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93LAouYnMtcG9wb3Zlci1ib3R0b20gLmFycm93IHsKICAgIHRvcDogY2FsYygoLjVyZW0gKyAxcHgpICogLTEpCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93OjphZnRlciwKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmJlZm9yZSwKLmJzLXBvcG92ZXItYm90dG9tIC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLWJvdHRvbSAuYXJyb3c6OmJlZm9yZSB7CiAgICBib3JkZXItd2lkdGg6IDAgLjVyZW0gLjVyZW0gLjVyZW0KfQoKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmJlZm9yZSwKLmJzLXBvcG92ZXItYm90dG9tIC5hcnJvdzo6YmVmb3JlIHsKICAgIHRvcDogMDsKICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLWJvdHRvbSAuYXJyb3c6OmFmdGVyIHsKICAgIHRvcDogMXB4OwogICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZgp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLAouYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogNTAlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMXJlbTsKICAgIG1hcmdpbi1sZWZ0OiAtLjVyZW07CiAgICBjb250ZW50OiAiIjsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3Cn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdLAouYnMtcG9wb3Zlci1sZWZ0IHsKICAgIG1hcmdpbi1yaWdodDogLjVyZW0KfQoKLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gLmFycm93LAouYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdyB7CiAgICByaWdodDogY2FsYygoLjVyZW0gKyAxcHgpICogLTEpOwogICAgd2lkdGg6IC41cmVtOwogICAgaGVpZ2h0OiAxcmVtOwogICAgbWFyZ2luOiAuM3JlbSAwCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzo6YmVmb3JlLAouYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YWZ0ZXIsCi5icy1wb3BvdmVyLWxlZnQgLmFycm93OjpiZWZvcmUgewogICAgYm9yZGVyLXdpZHRoOiAuNXJlbSAwIC41cmVtIC41cmVtCn0KCi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdzo6YmVmb3JlLAouYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YmVmb3JlIHsKICAgIHJpZ2h0OiAwOwogICAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3c6OmFmdGVyLAouYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YWZ0ZXIgewogICAgcmlnaHQ6IDFweDsKICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmCn0KCi5wb3BvdmVyLWhlYWRlciB7CiAgICBwYWRkaW5nOiAuNXJlbSAuNzVyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgZm9udC1zaXplOiAxcmVtOwogICAgY29sb3I6IGluaGVyaXQ7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoLjNyZW0gLSAxcHgpOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYyguM3JlbSAtIDFweCk7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKC4zcmVtIC0gMXB4KTsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKC4zcmVtIC0gMXB4KQp9CgoucG9wb3Zlci1oZWFkZXI6ZW1wdHkgewogICAgZGlzcGxheTogbm9uZQp9CgoucG9wb3Zlci1ib2R5IHsKICAgIHBhZGRpbmc6IC41cmVtIC43NXJlbTsKICAgIGNvbG9yOiAjMjEyNTI5Cn0KCi5jYXJvdXNlbCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmNhcm91c2VsLWlubmVyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouY2Fyb3VzZWwtaXRlbSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiBub25lOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC42cyBlYXNlOwogICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIC42cyBlYXNlOwogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwcHg7CiAgICBwZXJzcGVjdGl2ZTogMTAwMHB4Cn0KCkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewogICAgLmNhcm91c2VsLWl0ZW0gewogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBub25lOwogICAgICAgIHRyYW5zaXRpb246IG5vbmUKICAgIH0KfQoKLmNhcm91c2VsLWl0ZW0tbmV4dCwKLmNhcm91c2VsLWl0ZW0tcHJldiwKLmNhcm91c2VsLWl0ZW0uYWN0aXZlIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5jYXJvdXNlbC1pdGVtLW5leHQsCi5jYXJvdXNlbC1pdGVtLXByZXYgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwCn0KCi5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LAouY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApCn0KCkBzdXBwb3J0cyAoKC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkKSBvciAodHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkKSkgewogICAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsCiAgICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9Cn0KCi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCwKLmNhcm91c2VsLWl0ZW0tbmV4dCB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkKfQoKQHN1cHBvcnRzICgoLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2QpIG9yICh0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2QpKSB7CiAgICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQsCiAgICAuY2Fyb3VzZWwtaXRlbS1uZXh0IHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKQogICAgfQp9CgouYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCwKLmNhcm91c2VsLWl0ZW0tcHJldiB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkKfQoKQHN1cHBvcnRzICgoLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2QpIG9yICh0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2QpKSB7CiAgICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCwKICAgIC5jYXJvdXNlbC1pdGVtLXByZXYgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkKICAgIH0KfQoKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0gewogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjZzOwogICAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogLjZzOwogICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjZzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OwogICAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHkKfQoKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsCi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCwKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlIHsKICAgIG9wYWNpdHk6IDEKfQoKLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsCi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7CiAgICBvcGFjaXR5OiAwCn0KCi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LAouY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcHJldiwKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dCwKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tcHJldiwKLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKQp9CgpAc3VwcG9ydHMgKCgtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZCkgb3IgKHRyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZCkpIHsKICAgIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LAogICAgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXByZXYsCiAgICAuY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1uZXh0LAogICAgLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tcHJldiwKICAgIC5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KfQoKLmNhcm91c2VsLWNvbnRyb2wtbmV4dCwKLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBib3R0b206IDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIHdpZHRoOiAxNSU7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIG9wYWNpdHk6IC41Cn0KCi5jYXJvdXNlbC1jb250cm9sLW5leHQ6Zm9jdXMsCi5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsCi5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsCi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIgewogICAgY29sb3I6ICNmZmY7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICBvdXRsaW5lOiAwOwogICAgb3BhY2l0eTogLjkKfQoKLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7CiAgICBsZWZ0OiAwCn0KCi5jYXJvdXNlbC1jb250cm9sLW5leHQgewogICAgcmlnaHQ6IDAKfQoKLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLAouY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24gewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDIwcHg7CiAgICBoZWlnaHQ6IDIwcHg7CiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsKICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7CiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJQp9CgouY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24gewogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzRSUzQy9zdmclM0UiKQp9CgouY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24gewogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0UiKQp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIGJvdHRvbTogMTBweDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxNTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgcGFkZGluZy1sZWZ0OiAwOwogICAgbWFyZ2luLXJpZ2h0OiAxNSU7CiAgICBtYXJnaW4tbGVmdDogMTUlOwogICAgbGlzdC1zdHlsZTogbm9uZQp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwOwogICAgLXdlYmtpdC1mbGV4OiAwIDEgYXV0bzsKICAgIC1tcy1mbGV4OiAwIDEgYXV0bzsKICAgIGZsZXg6IDAgMSBhdXRvOwogICAgd2lkdGg6IDMwcHg7CiAgICBoZWlnaHQ6IDNweDsKICAgIG1hcmdpbi1yaWdodDogM3B4OwogICAgbWFyZ2luLWxlZnQ6IDNweDsKICAgIHRleHQtaW5kZW50OiAtOTk5cHg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaTo6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogLTEwcHg7CiAgICBsZWZ0OiAwOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwcHg7CiAgICBjb250ZW50OiAiIgp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaTo6YWZ0ZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYm90dG9tOiAtMTBweDsKICAgIGxlZnQ6IDA7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTBweDsKICAgIGNvbnRlbnQ6ICIiCn0KCi5jYXJvdXNlbC1pbmRpY2F0b3JzIC5hY3RpdmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZgp9CgouY2Fyb3VzZWwtY2FwdGlvbiB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMTUlOwogICAgYm90dG9tOiAyMHB4OwogICAgbGVmdDogMTUlOwogICAgei1pbmRleDogMTA7CiAgICBwYWRkaW5nLXRvcDogMjBweDsKICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OwogICAgY29sb3I6ICNmZmY7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmFsaWduLWJhc2VsaW5lIHsKICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50Cn0KCi5hbGlnbi10b3AgewogICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50Cn0KCi5hbGlnbi1taWRkbGUgewogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50Cn0KCi5hbGlnbi1ib3R0b20gewogICAgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50Cn0KCi5hbGlnbi10ZXh0LWJvdHRvbSB7CiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudAp9CgouYWxpZ24tdGV4dC10b3AgewogICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQKfQoKLmJnLXByaW1hcnkgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzQxM2FhNCAhaW1wb3J0YW50Cn0KCmEuYmctcHJpbWFyeTpmb2N1cywKYS5iZy1wcmltYXJ5OmhvdmVyLApidXR0b24uYmctcHJpbWFyeTpmb2N1cywKYnV0dG9uLmJnLXByaW1hcnk6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMmQ3ZSAhaW1wb3J0YW50Cn0KCi5iZy1zZWNvbmRhcnkgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzA2YjU5MCAhaW1wb3J0YW50Cn0KCmEuYmctc2Vjb25kYXJ5OmZvY3VzLAphLmJnLXNlY29uZGFyeTpob3ZlciwKYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cywKYnV0dG9uLmJnLXNlY29uZGFyeTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQ4NDY5ICFpbXBvcnRhbnQKfQoKLmJnLXN1Y2Nlc3MgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzM1YjUzZSAhaW1wb3J0YW50Cn0KCmEuYmctc3VjY2Vzczpmb2N1cywKYS5iZy1zdWNjZXNzOmhvdmVyLApidXR0b24uYmctc3VjY2Vzczpmb2N1cywKYnV0dG9uLmJnLXN1Y2Nlc3M6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzI5OGUzMCAhaW1wb3J0YW50Cn0KCi5iZy1pbmZvIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzdkZmYgIWltcG9ydGFudAp9CgphLmJnLWluZm86Zm9jdXMsCmEuYmctaW5mbzpob3ZlciwKYnV0dG9uLmJnLWluZm86Zm9jdXMsCmJ1dHRvbi5iZy1pbmZvOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDVjZmYgIWltcG9ydGFudAp9CgouYmctd2FybmluZyB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZjAwICFpbXBvcnRhbnQKfQoKYS5iZy13YXJuaW5nOmZvY3VzLAphLmJnLXdhcm5pbmc6aG92ZXIsCmJ1dHRvbi5iZy13YXJuaW5nOmZvY3VzLApidXR0b24uYmctd2FybmluZzpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YzAwICFpbXBvcnRhbnQKfQoKLmJnLWRhbmdlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTIzNjM2ICFpbXBvcnRhbnQKfQoKYS5iZy1kYW5nZXI6Zm9jdXMsCmEuYmctZGFuZ2VyOmhvdmVyLApidXR0b24uYmctZGFuZ2VyOmZvY3VzLApidXR0b24uYmctZGFuZ2VyOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjODFkMWQgIWltcG9ydGFudAp9CgouYmctbGlnaHQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50Cn0KCmEuYmctbGlnaHQ6Zm9jdXMsCmEuYmctbGlnaHQ6aG92ZXIsCmJ1dHRvbi5iZy1saWdodDpmb2N1cywKYnV0dG9uLmJnLWxpZ2h0OmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTYgIWltcG9ydGFudAp9CgouYmctZGFyayB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAyNDI4ICFpbXBvcnRhbnQKfQoKYS5iZy1kYXJrOmZvY3VzLAphLmJnLWRhcms6aG92ZXIsCmJ1dHRvbi5iZy1kYXJrOmZvY3VzLApidXR0b24uYmctZGFyazpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkwYjBjICFpbXBvcnRhbnQKfQoKLmJnLXdoaXRlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudAp9CgouYmctdHJhbnNwYXJlbnQgewogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudAp9CgouYm9yZGVyIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQgIWltcG9ydGFudAp9CgouYm9yZGVyLXRvcCB7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZThlZCAhaW1wb3J0YW50Cn0KCi5ib3JkZXItcmlnaHQgewogICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U0ZThlZCAhaW1wb3J0YW50Cn0KCi5ib3JkZXItYm90dG9tIHsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkICFpbXBvcnRhbnQKfQoKLmJvcmRlci1sZWZ0IHsKICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U0ZThlZCAhaW1wb3J0YW50Cn0KCi5ib3JkZXItMCB7CiAgICBib3JkZXI6IDAgIWltcG9ydGFudAp9CgouYm9yZGVyLXRvcC0wIHsKICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudAp9CgouYm9yZGVyLXJpZ2h0LTAgewogICAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQKfQoKLmJvcmRlci1ib3R0b20tMCB7CiAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQKfQoKLmJvcmRlci1sZWZ0LTAgewogICAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudAp9CgouYm9yZGVyLXByaW1hcnkgewogICAgYm9yZGVyLWNvbG9yOiAjNDEzYWE0ICFpbXBvcnRhbnQKfQoKLmJvcmRlci1zZWNvbmRhcnkgewogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwICFpbXBvcnRhbnQKfQoKLmJvcmRlci1zdWNjZXNzIHsKICAgIGJvcmRlci1jb2xvcjogIzM1YjUzZSAhaW1wb3J0YW50Cn0KCi5ib3JkZXItaW5mbyB7CiAgICBib3JkZXItY29sb3I6ICMzNzdkZmYgIWltcG9ydGFudAp9CgouYm9yZGVyLXdhcm5pbmcgewogICAgYm9yZGVyLWNvbG9yOiAjZmZhZjAwICFpbXBvcnRhbnQKfQoKLmJvcmRlci1kYW5nZXIgewogICAgYm9yZGVyLWNvbG9yOiAjZTIzNjM2ICFpbXBvcnRhbnQKfQoKLmJvcmRlci1saWdodCB7CiAgICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudAp9CgouYm9yZGVyLWRhcmsgewogICAgYm9yZGVyLWNvbG9yOiAjMjAyNDI4ICFpbXBvcnRhbnQKfQoKLmJvcmRlci13aGl0ZSB7CiAgICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudAp9Cgoucm91bmRlZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjZyZW0gIWltcG9ydGFudDsKICAgIGJvcmRlci1yYWRpdXM6IC4yNjZyZW0gIWltcG9ydGFudAp9Cgoucm91bmRlZC10b3AgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjI2NnJlbSAhaW1wb3J0YW50Cn0KCi5yb3VuZGVkLXJpZ2h0IHsKICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC4yNjZyZW0gIWltcG9ydGFudDsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjI2NnJlbSAhaW1wb3J0YW50Cn0KCi5yb3VuZGVkLWJvdHRvbSB7CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjI2NnJlbSAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQ7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMjY2cmVtICFpbXBvcnRhbnQKfQoKLnJvdW5kZWQtbGVmdCB7CiAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNjZyZW0gIWltcG9ydGFudDsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4yNjZyZW0gIWltcG9ydGFudDsKICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjI2NnJlbSAhaW1wb3J0YW50OwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjI2NnJlbSAhaW1wb3J0YW50Cn0KCi5yb3VuZGVkLWNpcmNsZSB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OwogICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQKfQoKLnJvdW5kZWQtMCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsKICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudAp9CgouY2xlYXJmaXg6OmFmdGVyIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgY2xlYXI6IGJvdGg7CiAgICBjb250ZW50OiAiIgp9CgouZC1ub25lIHsKICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudAp9CgouZC1pbmxpbmUgewogICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQKfQoKLmQtaW5saW5lLWJsb2NrIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50Cn0KCi5kLWJsb2NrIHsKICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQKfQoKLmQtdGFibGUgewogICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudAp9CgouZC10YWJsZS1yb3cgewogICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQKfQoKLmQtdGFibGUtY2VsbCB7CiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQKfQoKLmQtZmxleCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50Cn0KCi5kLWlubGluZS1mbGV4IHsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50Cn0KCkBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSB7CiAgICAuZC1zbS1ub25lIHsKICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXNtLWlubGluZSB7CiAgICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXNtLWlubGluZS1ibG9jayB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXNtLWJsb2NrIHsKICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1zbS10YWJsZSB7CiAgICAgICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudAogICAgfQogICAgLmQtc20tdGFibGUtcm93IHsKICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudAogICAgfQogICAgLmQtc20tdGFibGUtY2VsbCB7CiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1zbS1mbGV4IHsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1zbS1pbmxpbmUtZmxleCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKICAgIC5kLW1kLW5vbmUgewogICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudAogICAgfQogICAgLmQtbWQtaW5saW5lIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudAogICAgfQogICAgLmQtbWQtaW5saW5lLWJsb2NrIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudAogICAgfQogICAgLmQtbWQtYmxvY2sgewogICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLW1kLXRhYmxlIHsKICAgICAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1tZC10YWJsZS1yb3cgewogICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1tZC10YWJsZS1jZWxsIHsKICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLW1kLWZsZXggewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLW1kLWlubGluZS1mbGV4IHsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewogICAgLmQtbGctbm9uZSB7CiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1sZy1pbmxpbmUgewogICAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1sZy1pbmxpbmUtYmxvY2sgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1sZy1ibG9jayB7CiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudAogICAgfQogICAgLmQtbGctdGFibGUgewogICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLWxnLXRhYmxlLXJvdyB7CiAgICAgICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLWxnLXRhYmxlLWNlbGwgewogICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudAogICAgfQogICAgLmQtbGctZmxleCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudAogICAgfQogICAgLmQtbGctaW5saW5lLWZsZXggewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50CiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewogICAgLmQteGwtbm9uZSB7CiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZC14bC1pbmxpbmUgewogICAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZC14bC1pbmxpbmUtYmxvY2sgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuZC14bC1ibG9jayB7CiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudAogICAgfQogICAgLmQteGwtdGFibGUgewogICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXhsLXRhYmxlLXJvdyB7CiAgICAgICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXhsLXRhYmxlLWNlbGwgewogICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudAogICAgfQogICAgLmQteGwtZmxleCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudAogICAgfQogICAgLmQteGwtaW5saW5lLWZsZXggewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3ggIWltcG9ydGFudDsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50CiAgICB9Cn0KCkBtZWRpYSBwcmludCB7CiAgICAuZC1wcmludC1ub25lIHsKICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXByaW50LWlubGluZSB7CiAgICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXByaW50LWlubGluZS1ibG9jayB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQKICAgIH0KICAgIC5kLXByaW50LWJsb2NrIHsKICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1wcmludC10YWJsZSB7CiAgICAgICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudAogICAgfQogICAgLmQtcHJpbnQtdGFibGUtcm93IHsKICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudAogICAgfQogICAgLmQtcHJpbnQtdGFibGUtY2VsbCB7CiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1wcmludC1mbGV4IHsKICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50CiAgICB9CiAgICAuZC1wcmludC1pbmxpbmUtZmxleCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94ICFpbXBvcnRhbnQ7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50OwogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQKICAgIH0KfQoKLmVtYmVkLXJlc3BvbnNpdmUgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIHBhZGRpbmc6IDA7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5lbWJlZC1yZXNwb25zaXZlOjpiZWZvcmUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb250ZW50OiAiIgp9CgouZW1iZWQtcmVzcG9uc2l2ZSAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLAouZW1iZWQtcmVzcG9uc2l2ZSBlbWJlZCwKLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLAouZW1iZWQtcmVzcG9uc2l2ZSBvYmplY3QsCi5lbWJlZC1yZXNwb25zaXZlIHZpZGVvIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGJvcmRlcjogMAp9CgouZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OTo6YmVmb3JlIHsKICAgIHBhZGRpbmctdG9wOiA0Mi44NTcxNCUKfQoKLmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6OmJlZm9yZSB7CiAgICBwYWRkaW5nLXRvcDogNTYuMjUlCn0KCi5lbWJlZC1yZXNwb25zaXZlLTRieTM6OmJlZm9yZSB7CiAgICBwYWRkaW5nLXRvcDogNzUlCn0KCi5lbWJlZC1yZXNwb25zaXZlLTFieTE6OmJlZm9yZSB7CiAgICBwYWRkaW5nLXRvcDogMTAwJQp9CgouZmxleC1yb3cgewogICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50Cn0KCi5mbGV4LWNvbHVtbiB7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50Cn0KCi5mbGV4LXJvdy1yZXZlcnNlIHsKICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQKfQoKLmZsZXgtY29sdW1uLXJldmVyc2UgewogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQKfQoKLmZsZXgtd3JhcCB7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQKfQoKLmZsZXgtbm93cmFwIHsKICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudAp9CgouZmxleC13cmFwLXJldmVyc2UgewogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50Cn0KCi5mbGV4LWZpbGwgewogICAgLXdlYmtpdC1ib3gtZmxleDogMSAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1mbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OwogICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7CiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50Cn0KCi5mbGV4LWdyb3ctMCB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAwICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcG9zaXRpdmU6IDAgIWltcG9ydGFudDsKICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50Cn0KCi5mbGV4LWdyb3ctMSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcG9zaXRpdmU6IDEgIWltcG9ydGFudDsKICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50Cn0KCi5mbGV4LXNocmluay0wIHsKICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAwICFpbXBvcnRhbnQ7CiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50Cn0KCi5mbGV4LXNocmluay0xIHsKICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7CiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50Cn0KCi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQgewogICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKfQoKLmp1c3RpZnktY29udGVudC1lbmQgewogICAgLXdlYmtpdC1ib3gtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50Cn0KCi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50Cn0KCi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7CiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQKfQoKLmp1c3RpZnktY29udGVudC1hcm91bmQgewogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudAp9CgouYWxpZ24taXRlbXMtc3RhcnQgewogICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKfQoKLmFsaWduLWl0ZW1zLWVuZCB7CiAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQKfQoKLmFsaWduLWl0ZW1zLWNlbnRlciB7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudAp9CgouYWxpZ24taXRlbXMtYmFzZWxpbmUgewogICAgLXdlYmtpdC1ib3gtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudAp9CgouYWxpZ24taXRlbXMtc3RyZXRjaCB7CiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQKfQoKLmFsaWduLWNvbnRlbnQtc3RhcnQgewogICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKfQoKLmFsaWduLWNvbnRlbnQtZW5kIHsKICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50Cn0KCi5hbGlnbi1jb250ZW50LWNlbnRlciB7CiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50Cn0KCi5hbGlnbi1jb250ZW50LWJldHdlZW4gewogICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudAp9CgouYWxpZ24tY29udGVudC1hcm91bmQgewogICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQKfQoKLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7CiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50Cn0KCi5hbGlnbi1zZWxmLWF1dG8gewogICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQKfQoKLmFsaWduLXNlbGYtc3RhcnQgewogICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50Cn0KCi5hbGlnbi1zZWxmLWVuZCB7CiAgICAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQKfQoKLmFsaWduLXNlbGYtY2VudGVyIHsKICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50Cn0KCi5hbGlnbi1zZWxmLWJhc2VsaW5lIHsKICAgIC13ZWJraXQtYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50Cn0KCi5hbGlnbi1zZWxmLXN0cmV0Y2ggewogICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQKfQoKQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKICAgIC5mbGV4LXNtLXJvdyB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20tY29sdW1uIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20tcm93LXJldmVyc2UgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1zbS1jb2x1bW4tcmV2ZXJzZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1zbS13cmFwIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20tbm93cmFwIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20td3JhcC1yZXZlcnNlIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20tZmlsbCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsKICAgICAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1zbS1ncm93LTAgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDAgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXNtLWdyb3ctMSB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDEgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtc20tc2hyaW5rLTAgewogICAgICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1uZWdhdGl2ZTogMCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXNtLXNocmluay0xIHsKICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbmVnYXRpdmU6IDEgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50CiAgICB9CiAgICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC1zbS1lbmQgewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIgewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4gewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQgewogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLXNtLXN0YXJ0IHsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLXNtLWVuZCB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24taXRlbXMtc20tY2VudGVyIHsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24taXRlbXMtc20tc3RyZXRjaCB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1zbS1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtc20tZW5kIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1zbS1jZW50ZXIgewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbiB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQgewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2ggewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtc20tYXV0byB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtc20tc3RhcnQgewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1zbS1lbmQgewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1zbS1jZW50ZXIgewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLXNtLWJhc2VsaW5lIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1zbS1zdHJldGNoIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50CiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSB7CiAgICAuZmxleC1tZC1yb3cgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLWNvbHVtbiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLXJvdy1yZXZlcnNlIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtbWQtY29sdW1uLXJldmVyc2UgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtbWQtd3JhcCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLW5vd3JhcCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLWZpbGwgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDEgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtbWQtZ3Jvdy0wIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1tZC1ncm93LTEgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDEgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LW1kLXNocmluay0wIHsKICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbmVnYXRpdmU6IDAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1tZC1zaHJpbmstMSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXNocmluazogMSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy1tZC1lbmQgewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLW1kLXN0cmV0Y2ggewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQgewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LW1kLWJldHdlZW4gewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLW1kLWF1dG8gewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGF1dG8gIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtbWQtZW5kIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtbWQtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtbWQtc3RyZXRjaCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewogICAgLmZsZXgtbGctcm93IHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy1jb2x1bW4gewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LWxnLWNvbHVtbi1yZXZlcnNlIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LWxnLXdyYXAgewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy1ub3dyYXAgewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy13cmFwLXJldmVyc2UgewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy1maWxsIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OwogICAgICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LWxnLWdyb3ctMCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtbGctZ3Jvdy0xIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDEgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC1sZy1zaHJpbmstMCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXNocmluazogMCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgtbGctc2hyaW5rLTEgewogICAgICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1uZWdhdGl2ZTogMSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQtbGctc3RhcnQgewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50CiAgICB9CiAgICAuanVzdGlmeS1jb250ZW50LWxnLWVuZCB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50CiAgICB9CiAgICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24taXRlbXMtbGctc3RhcnQgewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24taXRlbXMtbGctZW5kIHsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy1sZy1jZW50ZXIgewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUgewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LWxnLXN0YXJ0IHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1sZy1lbmQgewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1sZy1hdXRvIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi1sZy1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLWxnLWVuZCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLWxnLWNlbnRlciB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYtbGctYmFzZWxpbmUgewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2ggewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7CiAgICAuZmxleC14bC1yb3cgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLWNvbHVtbiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgteGwtY29sdW1uLXJldmVyc2UgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWwgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudAogICAgfQogICAgLmZsZXgteGwtd3JhcCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLW5vd3JhcCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLWZpbGwgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDEgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLmZsZXgteGwtZ3Jvdy0wIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC14bC1ncm93LTEgewogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDEgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbGV4LXhsLXNocmluay0wIHsKICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtbmVnYXRpdmU6IDAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxleC14bC1zaHJpbmstMSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXNocmluazogMSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQteGwtZW5kIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudAogICAgfQogICAgLmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQKICAgIH0KICAgIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy14bC1zdGFydCB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy14bC1lbmQgewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLXhsLWNlbnRlciB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWl0ZW1zLXhsLXN0cmV0Y2ggewogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQteGwtc3RhcnQgewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LXhsLWVuZCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQteGwtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1jb250ZW50LXhsLWJldHdlZW4gewogICAgICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHsKICAgICAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLXhsLWF1dG8gewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGF1dG8gIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYteGwtZW5kIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYteGwtY2VudGVyIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAuYWxpZ24tc2VsZi14bC1iYXNlbGluZSB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudAogICAgfQogICAgLmFsaWduLXNlbGYteGwtc3RyZXRjaCB7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudAogICAgfQp9CgouZmxvYXQtbGVmdCB7CiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50Cn0KCi5mbG9hdC1yaWdodCB7CiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudAp9CgouZmxvYXQtbm9uZSB7CiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50Cn0KCkBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSB7CiAgICAuZmxvYXQtc20tbGVmdCB7CiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudAogICAgfQogICAgLmZsb2F0LXNtLXJpZ2h0IHsKICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudAogICAgfQogICAgLmZsb2F0LXNtLW5vbmUgewogICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKICAgIC5mbG9hdC1tZC1sZWZ0IHsKICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxvYXQtbWQtcmlnaHQgewogICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50CiAgICB9CiAgICAuZmxvYXQtbWQtbm9uZSB7CiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewogICAgLmZsb2F0LWxnLWxlZnQgewogICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbG9hdC1sZy1yaWdodCB7CiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbG9hdC1sZy1ub25lIHsKICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50CiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewogICAgLmZsb2F0LXhsLWxlZnQgewogICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbG9hdC14bC1yaWdodCB7CiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5mbG9hdC14bC1ub25lIHsKICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50CiAgICB9Cn0KCi5wb3NpdGlvbi1zdGF0aWMgewogICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50Cn0KCi5wb3NpdGlvbi1yZWxhdGl2ZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudAp9CgoucG9zaXRpb24tYWJzb2x1dGUgewogICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQKfQoKLnBvc2l0aW9uLWZpeGVkIHsKICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50Cn0KCi5wb3NpdGlvbi1zdGlja3kgewogICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5ICFpbXBvcnRhbnQ7CiAgICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQKfQoKLmZpeGVkLXRvcCB7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICB0b3A6IDA7CiAgICByaWdodDogMDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDMwCn0KCi5maXhlZC1ib3R0b20gewogICAgcG9zaXRpb246IGZpeGVkOwogICAgcmlnaHQ6IDA7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgei1pbmRleDogMTAzMAp9CgpAc3VwcG9ydHMgKChwb3NpdGlvbjotd2Via2l0LXN0aWNreSkgb3IgKHBvc2l0aW9uOnN0aWNreSkpIHsKICAgIC5zdGlja3ktdG9wIHsKICAgICAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7CiAgICAgICAgcG9zaXRpb246IHN0aWNreTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgei1pbmRleDogMTAyMAogICAgfQp9Cgouc3Itb25seSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMXB4OwogICAgaGVpZ2h0OiAxcHg7CiAgICBwYWRkaW5nOiAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgYm9yZGVyOiAwCn0KCi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsCi5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyB7CiAgICBwb3NpdGlvbjogc3RhdGljOwogICAgd2lkdGg6IGF1dG87CiAgICBoZWlnaHQ6IGF1dG87CiAgICBvdmVyZmxvdzogdmlzaWJsZTsKICAgIGNsaXA6IGF1dG87CiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsCn0KCi5zaGFkb3ctc20gewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KSAhaW1wb3J0YW50OwogICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkgIWltcG9ydGFudAp9Cgouc2hhZG93IHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkgIWltcG9ydGFudDsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpICFpbXBvcnRhbnQKfQoKLnNoYWRvdy1sZyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpICFpbXBvcnRhbnQ7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KSAhaW1wb3J0YW50Cn0KCi5zaGFkb3ctbm9uZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudAp9Cgoudy0yNSB7CiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQKfQoKLnctNTAgewogICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50Cn0KCi53LTc1IHsKICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudAp9Cgoudy0xMDAgewogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudAp9Cgoudy1hdXRvIHsKICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQKfQoKLmgtMjUgewogICAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudAp9CgouaC01MCB7CiAgICBoZWlnaHQ6IDUwJSAhaW1wb3J0YW50Cn0KCi5oLTc1IHsKICAgIGhlaWdodDogNzUlICFpbXBvcnRhbnQKfQoKLmgtMTAwIHsKICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50Cn0KCi5oLWF1dG8gewogICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQKfQoKLm13LTEwMCB7CiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudAp9CgoubWgtMTAwIHsKICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudAp9CgoubS0wIHsKICAgIG1hcmdpbjogMCAhaW1wb3J0YW50Cn0KCi5tdC0wLAoubXktMCB7CiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQKfQoKLm1yLTAsCi5teC0wIHsKICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50Cn0KCi5tYi0wLAoubXktMCB7CiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQKfQoKLm1sLTAsCi5teC0wIHsKICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQKfQoKLm0tMSB7CiAgICBtYXJnaW46IC4yNXJlbSAhaW1wb3J0YW50Cn0KCi5tdC0xLAoubXktMSB7CiAgICBtYXJnaW4tdG9wOiAuMjVyZW0gIWltcG9ydGFudAp9CgoubXItMSwKLm14LTEgewogICAgbWFyZ2luLXJpZ2h0OiAuMjVyZW0gIWltcG9ydGFudAp9CgoubWItMSwKLm15LTEgewogICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtICFpbXBvcnRhbnQKfQoKLm1sLTEsCi5teC0xIHsKICAgIG1hcmdpbi1sZWZ0OiAuMjVyZW0gIWltcG9ydGFudAp9CgoubS0yIHsKICAgIG1hcmdpbjogLjVyZW0gIWltcG9ydGFudAp9CgoubXQtMiwKLm15LTIgewogICAgbWFyZ2luLXRvcDogLjVyZW0gIWltcG9ydGFudAp9CgoubXItMiwKLm14LTIgewogICAgbWFyZ2luLXJpZ2h0OiAuNXJlbSAhaW1wb3J0YW50Cn0KCi5tYi0yLAoubXktMiB7CiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbSAhaW1wb3J0YW50Cn0KCi5tbC0yLAoubXgtMiB7CiAgICBtYXJnaW4tbGVmdDogLjVyZW0gIWltcG9ydGFudAp9CgoubS0zIHsKICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50Cn0KCi5tdC0zLAoubXktMyB7CiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQKfQoKLm1yLTMsCi5teC0zIHsKICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50Cn0KCi5tYi0zLAoubXktMyB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQKfQoKLm1sLTMsCi5teC0zIHsKICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKfQoKLm0tNCB7CiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50Cn0KCi5tdC00LAoubXktNCB7CiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudAp9CgoubXItNCwKLm14LTQgewogICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudAp9CgoubWItNCwKLm15LTQgewogICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQKfQoKLm1sLTQsCi5teC00IHsKICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudAp9CgoubS01IHsKICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50Cn0KCi5tdC01LAoubXktNSB7CiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQKfQoKLm1yLTUsCi5teC01IHsKICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50Cn0KCi5tYi01LAoubXktNSB7CiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQKfQoKLm1sLTUsCi5teC01IHsKICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQKfQoKLnAtMCB7CiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQKfQoKLnB0LTAsCi5weS0wIHsKICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQKfQoKLnByLTAsCi5weC0wIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudAp9CgoucGItMCwKLnB5LTAgewogICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudAp9CgoucGwtMCwKLnB4LTAgewogICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQKfQoKLnAtMSB7CiAgICBwYWRkaW5nOiAuMjVyZW0gIWltcG9ydGFudAp9CgoucHQtMSwKLnB5LTEgewogICAgcGFkZGluZy10b3A6IC4yNXJlbSAhaW1wb3J0YW50Cn0KCi5wci0xLAoucHgtMSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAuMjVyZW0gIWltcG9ydGFudAp9CgoucGItMSwKLnB5LTEgewogICAgcGFkZGluZy1ib3R0b206IC4yNXJlbSAhaW1wb3J0YW50Cn0KCi5wbC0xLAoucHgtMSB7CiAgICBwYWRkaW5nLWxlZnQ6IC4yNXJlbSAhaW1wb3J0YW50Cn0KCi5wLTIgewogICAgcGFkZGluZzogLjVyZW0gIWltcG9ydGFudAp9CgoucHQtMiwKLnB5LTIgewogICAgcGFkZGluZy10b3A6IC41cmVtICFpbXBvcnRhbnQKfQoKLnByLTIsCi5weC0yIHsKICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtICFpbXBvcnRhbnQKfQoKLnBiLTIsCi5weS0yIHsKICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbSAhaW1wb3J0YW50Cn0KCi5wbC0yLAoucHgtMiB7CiAgICBwYWRkaW5nLWxlZnQ6IC41cmVtICFpbXBvcnRhbnQKfQoKLnAtMyB7CiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQKfQoKLnB0LTMsCi5weS0zIHsKICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQKfQoKLnByLTMsCi5weC0zIHsKICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudAp9CgoucGItMywKLnB5LTMgewogICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudAp9CgoucGwtMywKLnB4LTMgewogICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKfQoKLnAtNCB7CiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudAp9CgoucHQtNCwKLnB5LTQgewogICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50Cn0KCi5wci00LAoucHgtNCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudAp9CgoucGItNCwKLnB5LTQgewogICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50Cn0KCi5wbC00LAoucHgtNCB7CiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50Cn0KCi5wLTUgewogICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50Cn0KCi5wdC01LAoucHktNSB7CiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50Cn0KCi5wci01LAoucHgtNSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQKfQoKLnBiLTUsCi5weS01IHsKICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQKfQoKLnBsLTUsCi5weC01IHsKICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50Cn0KCi5tLWF1dG8gewogICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQKfQoKLm10LWF1dG8sCi5teS1hdXRvIHsKICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudAp9CgoubXItYXV0bywKLm14LWF1dG8gewogICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQKfQoKLm1iLWF1dG8sCi5teS1hdXRvIHsKICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudAp9CgoubWwtYXV0bywKLm14LWF1dG8gewogICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudAp9CgpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewogICAgLm0tc20tMCB7CiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1zbS0wLAogICAgLm15LXNtLTAgewogICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudAogICAgfQogICAgLm1yLXNtLTAsCiAgICAubXgtc20tMCB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1zbS0wLAogICAgLm15LXNtLTAgewogICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudAogICAgfQogICAgLm1sLXNtLTAsCiAgICAubXgtc20tMCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudAogICAgfQogICAgLm0tc20tMSB7CiAgICAgICAgbWFyZ2luOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LXNtLTEsCiAgICAubXktc20tMSB7CiAgICAgICAgbWFyZ2luLXRvcDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1zbS0xLAogICAgLm14LXNtLTEgewogICAgICAgIG1hcmdpbi1yaWdodDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1zbS0xLAogICAgLm15LXNtLTEgewogICAgICAgIG1hcmdpbi1ib3R0b206IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtc20tMSwKICAgIC5teC1zbS0xIHsKICAgICAgICBtYXJnaW4tbGVmdDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLXNtLTIgewogICAgICAgIG1hcmdpbjogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LXNtLTIsCiAgICAubXktc20tMiB7CiAgICAgICAgbWFyZ2luLXRvcDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1yLXNtLTIsCiAgICAubXgtc20tMiB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWItc20tMiwKICAgIC5teS1zbS0yIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtc20tMiwKICAgIC5teC1zbS0yIHsKICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0tc20tMyB7CiAgICAgICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1zbS0zLAogICAgLm15LXNtLTMgewogICAgICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1yLXNtLTMsCiAgICAubXgtc20tMyB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1zbS0zLAogICAgLm15LXNtLTMgewogICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLXNtLTMsCiAgICAubXgtc20tMyB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0tc20tNCB7CiAgICAgICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LXNtLTQsCiAgICAubXktc20tNCB7CiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1zbS00LAogICAgLm14LXNtLTQgewogICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1zbS00LAogICAgLm15LXNtLTQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtc20tNCwKICAgIC5teC1zbS00IHsKICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLXNtLTUgewogICAgICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtc20tNSwKICAgIC5teS1zbS01IHsKICAgICAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1zbS01LAogICAgLm14LXNtLTUgewogICAgICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWItc20tNSwKICAgIC5teS1zbS01IHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1zbS01LAogICAgLm14LXNtLTUgewogICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXNtLTAgewogICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudAogICAgfQogICAgLnB0LXNtLTAsCiAgICAucHktc20tMCB7CiAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudAogICAgfQogICAgLnByLXNtLTAsCiAgICAucHgtc20tMCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAucGItc20tMCwKICAgIC5weS1zbS0wIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtc20tMCwKICAgIC5weC1zbS0wIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudAogICAgfQogICAgLnAtc20tMSB7CiAgICAgICAgcGFkZGluZzogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1zbS0xLAogICAgLnB5LXNtLTEgewogICAgICAgIHBhZGRpbmctdG9wOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLXNtLTEsCiAgICAucHgtc20tMSB7CiAgICAgICAgcGFkZGluZy1yaWdodDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1zbS0xLAogICAgLnB5LXNtLTEgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLXNtLTEsCiAgICAucHgtc20tMSB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnAtc20tMiB7CiAgICAgICAgcGFkZGluZzogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LXNtLTIsCiAgICAucHktc20tMiB7CiAgICAgICAgcGFkZGluZy10b3A6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1zbS0yLAogICAgLnB4LXNtLTIgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1zbS0yLAogICAgLnB5LXNtLTIgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtc20tMiwKICAgIC5weC1zbS0yIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXNtLTMgewogICAgICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LXNtLTMsCiAgICAucHktc20tMyB7CiAgICAgICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLXNtLTMsCiAgICAucHgtc20tMyB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGItc20tMywKICAgIC5weS1zbS0zIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtc20tMywKICAgIC5weC1zbS0zIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnAtc20tNCB7CiAgICAgICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1zbS00LAogICAgLnB5LXNtLTQgewogICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLXNtLTQsCiAgICAucHgtc20tNCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1zbS00LAogICAgLnB5LXNtLTQgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLXNtLTQsCiAgICAucHgtc20tNCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnAtc20tNSB7CiAgICAgICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtc20tNSwKICAgIC5weS1zbS01IHsKICAgICAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHItc20tNSwKICAgIC5weC1zbS01IHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1zbS01LAogICAgLnB5LXNtLTUgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1zbS01LAogICAgLnB4LXNtLTUgewogICAgICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS1zbS1hdXRvIHsKICAgICAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm10LXNtLWF1dG8sCiAgICAubXktc20tYXV0byB7CiAgICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAubXItc20tYXV0bywKICAgIC5teC1zbS1hdXRvIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm1iLXNtLWF1dG8sCiAgICAubXktc20tYXV0byB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtc20tYXV0bywKICAgIC5teC1zbS1hdXRvIHsKICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50CiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSB7CiAgICAubS1tZC0wIHsKICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudAogICAgfQogICAgLm10LW1kLTAsCiAgICAubXktbWQtMCB7CiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbWQtMCwKICAgIC5teC1tZC0wIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudAogICAgfQogICAgLm1iLW1kLTAsCiAgICAubXktbWQtMCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtbWQtMCwKICAgIC5teC1tZC0wIHsKICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubS1tZC0xIHsKICAgICAgICBtYXJnaW46IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbWQtMSwKICAgIC5teS1tZC0xIHsKICAgICAgICBtYXJnaW4tdG9wOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1yLW1kLTEsCiAgICAubXgtbWQtMSB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLW1kLTEsCiAgICAubXktbWQtMSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1tZC0xLAogICAgLm14LW1kLTEgewogICAgICAgIG1hcmdpbi1sZWZ0OiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0tbWQtMiB7CiAgICAgICAgbWFyZ2luOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbWQtMiwKICAgIC5teS1tZC0yIHsKICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbWQtMiwKICAgIC5teC1tZC0yIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1tZC0yLAogICAgLm15LW1kLTIgewogICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1tZC0yLAogICAgLm14LW1kLTIgewogICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS1tZC0zIHsKICAgICAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LW1kLTMsCiAgICAubXktbWQtMyB7CiAgICAgICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbWQtMywKICAgIC5teC1tZC0zIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLW1kLTMsCiAgICAubXktbWQtMyB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtbWQtMywKICAgIC5teC1tZC0zIHsKICAgICAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS1tZC00IHsKICAgICAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbWQtNCwKICAgIC5teS1tZC00IHsKICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1yLW1kLTQsCiAgICAubXgtbWQtNCB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLW1kLTQsCiAgICAubXktbWQtNCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1tZC00LAogICAgLm14LW1kLTQgewogICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0tbWQtNSB7CiAgICAgICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1tZC01LAogICAgLm15LW1kLTUgewogICAgICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1yLW1kLTUsCiAgICAubXgtbWQtNSB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1tZC01LAogICAgLm15LW1kLTUgewogICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLW1kLTUsCiAgICAubXgtbWQtNSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnAtbWQtMCB7CiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtbWQtMCwKICAgIC5weS1tZC0wIHsKICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAucHItbWQtMCwKICAgIC5weC1tZC0wIHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1tZC0wLAogICAgLnB5LW1kLTAgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1tZC0wLAogICAgLnB4LW1kLTAgewogICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAucC1tZC0xIHsKICAgICAgICBwYWRkaW5nOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LW1kLTEsCiAgICAucHktbWQtMSB7CiAgICAgICAgcGFkZGluZy10b3A6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHItbWQtMSwKICAgIC5weC1tZC0xIHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLW1kLTEsCiAgICAucHktbWQtMSB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtbWQtMSwKICAgIC5weC1tZC0xIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC1tZC0yIHsKICAgICAgICBwYWRkaW5nOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtbWQtMiwKICAgIC5weS1tZC0yIHsKICAgICAgICBwYWRkaW5nLXRvcDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLW1kLTIsCiAgICAucHgtbWQtMiB7CiAgICAgICAgcGFkZGluZy1yaWdodDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLW1kLTIsCiAgICAucHktbWQtMiB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1tZC0yLAogICAgLnB4LW1kLTIgewogICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnAtbWQtMyB7CiAgICAgICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtbWQtMywKICAgIC5weS1tZC0zIHsKICAgICAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHItbWQtMywKICAgIC5weC1tZC0zIHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wYi1tZC0zLAogICAgLnB5LW1kLTMgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1tZC0zLAogICAgLnB4LW1kLTMgewogICAgICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC1tZC00IHsKICAgICAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LW1kLTQsCiAgICAucHktbWQtNCB7CiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHItbWQtNCwKICAgIC5weC1tZC00IHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLW1kLTQsCiAgICAucHktbWQtNCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtbWQtNCwKICAgIC5weC1tZC00IHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC1tZC01IHsKICAgICAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1tZC01LAogICAgLnB5LW1kLTUgewogICAgICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1tZC01LAogICAgLnB4LW1kLTUgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLW1kLTUsCiAgICAucHktbWQtNSB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLW1kLTUsCiAgICAucHgtbWQtNSB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLW1kLWF1dG8gewogICAgICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbWQtYXV0bywKICAgIC5teS1tZC1hdXRvIHsKICAgICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1tZC1hdXRvLAogICAgLm14LW1kLWF1dG8gewogICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50CiAgICB9CiAgICAubWItbWQtYXV0bywKICAgIC5teS1tZC1hdXRvIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1tZC1hdXRvLAogICAgLm14LW1kLWF1dG8gewogICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKICAgIC5tLWxnLTAgewogICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbGctMCwKICAgIC5teS1sZy0wIHsKICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1sZy0wLAogICAgLm14LWxnLTAgewogICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubWItbGctMCwKICAgIC5teS1sZy0wIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1sZy0wLAogICAgLm14LWxnLTAgewogICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLWxnLTEgewogICAgICAgIG1hcmdpbjogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1sZy0xLAogICAgLm15LWxnLTEgewogICAgICAgIG1hcmdpbi10b3A6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbGctMSwKICAgIC5teC1sZy0xIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWItbGctMSwKICAgIC5teS1sZy0xIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLWxnLTEsCiAgICAubXgtbGctMSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS1sZy0yIHsKICAgICAgICBtYXJnaW46IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1sZy0yLAogICAgLm15LWxnLTIgewogICAgICAgIG1hcmdpbi10b3A6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1sZy0yLAogICAgLm14LWxnLTIgewogICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLWxnLTIsCiAgICAubXktbGctMiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLWxnLTIsCiAgICAubXgtbGctMiB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLWxnLTMgewogICAgICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQtbGctMywKICAgIC5teS1sZy0zIHsKICAgICAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci1sZy0zLAogICAgLm14LWxnLTMgewogICAgICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWItbGctMywKICAgIC5teS1sZy0zIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC1sZy0zLAogICAgLm14LWxnLTMgewogICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLWxnLTQgewogICAgICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1sZy00LAogICAgLm15LWxnLTQgewogICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbGctNCwKICAgIC5teC1sZy00IHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWItbGctNCwKICAgIC5teS1sZy00IHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLWxnLTQsCiAgICAubXgtbGctNCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS1sZy01IHsKICAgICAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LWxnLTUsCiAgICAubXktbGctNSB7CiAgICAgICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXItbGctNSwKICAgIC5teC1sZy01IHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLWxnLTUsCiAgICAubXktbGctNSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwtbGctNSwKICAgIC5teC1sZy01IHsKICAgICAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC1sZy0wIHsKICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1sZy0wLAogICAgLnB5LWxnLTAgewogICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1sZy0wLAogICAgLnB4LWxnLTAgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudAogICAgfQogICAgLnBiLWxnLTAsCiAgICAucHktbGctMCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudAogICAgfQogICAgLnBsLWxnLTAsCiAgICAucHgtbGctMCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLWxnLTEgewogICAgICAgIHBhZGRpbmc6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtbGctMSwKICAgIC5weS1sZy0xIHsKICAgICAgICBwYWRkaW5nLXRvcDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1sZy0xLAogICAgLnB4LWxnLTEgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGItbGctMSwKICAgIC5weS1sZy0xIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1sZy0xLAogICAgLnB4LWxnLTEgewogICAgICAgIHBhZGRpbmctbGVmdDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLWxnLTIgewogICAgICAgIHBhZGRpbmc6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1sZy0yLAogICAgLnB5LWxnLTIgewogICAgICAgIHBhZGRpbmctdG9wOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHItbGctMiwKICAgIC5weC1sZy0yIHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGItbGctMiwKICAgIC5weS1sZy0yIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLWxnLTIsCiAgICAucHgtbGctMiB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC1sZy0zIHsKICAgICAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC1sZy0zLAogICAgLnB5LWxnLTMgewogICAgICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1sZy0zLAogICAgLnB4LWxnLTMgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLWxnLTMsCiAgICAucHktbGctMyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLWxnLTMsCiAgICAucHgtbGctMyB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLWxnLTQgewogICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQtbGctNCwKICAgIC5weS1sZy00IHsKICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci1sZy00LAogICAgLnB4LWxnLTQgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGItbGctNCwKICAgIC5weS1sZy00IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC1sZy00LAogICAgLnB4LWxnLTQgewogICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLWxnLTUgewogICAgICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LWxnLTUsCiAgICAucHktbGctNSB7CiAgICAgICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLWxnLTUsCiAgICAucHgtbGctNSB7CiAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGItbGctNSwKICAgIC5weS1sZy01IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwtbGctNSwKICAgIC5weC1sZy01IHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0tbGctYXV0byB7CiAgICAgICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC1sZy1hdXRvLAogICAgLm15LWxnLWF1dG8gewogICAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm1yLWxnLWF1dG8sCiAgICAubXgtbGctYXV0byB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi1sZy1hdXRvLAogICAgLm15LWxnLWF1dG8gewogICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm1sLWxnLWF1dG8sCiAgICAubXgtbGctYXV0byB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKICAgIC5tLXhsLTAgewogICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubXQteGwtMCwKICAgIC5teS14bC0wIHsKICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci14bC0wLAogICAgLm14LXhsLTAgewogICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubWIteGwtMCwKICAgIC5teS14bC0wIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC14bC0wLAogICAgLm14LXhsLTAgewogICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLXhsLTEgewogICAgICAgIG1hcmdpbjogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC14bC0xLAogICAgLm15LXhsLTEgewogICAgICAgIG1hcmdpbi10b3A6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXIteGwtMSwKICAgIC5teC14bC0xIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWIteGwtMSwKICAgIC5teS14bC0xIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLXhsLTEsCiAgICAubXgteGwtMSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS14bC0yIHsKICAgICAgICBtYXJnaW46IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC14bC0yLAogICAgLm15LXhsLTIgewogICAgICAgIG1hcmdpbi10b3A6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci14bC0yLAogICAgLm14LXhsLTIgewogICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLXhsLTIsCiAgICAubXkteGwtMiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLXhsLTIsCiAgICAubXgteGwtMiB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLXhsLTMgewogICAgICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXQteGwtMywKICAgIC5teS14bC0zIHsKICAgICAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tci14bC0zLAogICAgLm14LXhsLTMgewogICAgICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWIteGwtMywKICAgIC5teS14bC0zIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tbC14bC0zLAogICAgLm14LXhsLTMgewogICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tLXhsLTQgewogICAgICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC14bC00LAogICAgLm15LXhsLTQgewogICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXIteGwtNCwKICAgIC5teC14bC00IHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWIteGwtNCwKICAgIC5teS14bC00IHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1sLXhsLTQsCiAgICAubXgteGwtNCB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubS14bC01IHsKICAgICAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm10LXhsLTUsCiAgICAubXkteGwtNSB7CiAgICAgICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubXIteGwtNSwKICAgIC5teC14bC01IHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm1iLXhsLTUsCiAgICAubXkteGwtNSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAubWwteGwtNSwKICAgIC5teC14bC01IHsKICAgICAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC14bC0wIHsKICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC14bC0wLAogICAgLnB5LXhsLTAgewogICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci14bC0wLAogICAgLnB4LXhsLTAgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudAogICAgfQogICAgLnBiLXhsLTAsCiAgICAucHkteGwtMCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudAogICAgfQogICAgLnBsLXhsLTAsCiAgICAucHgteGwtMCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXhsLTEgewogICAgICAgIHBhZGRpbmc6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQteGwtMSwKICAgIC5weS14bC0xIHsKICAgICAgICBwYWRkaW5nLXRvcDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci14bC0xLAogICAgLnB4LXhsLTEgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IC4yNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGIteGwtMSwKICAgIC5weS14bC0xIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC14bC0xLAogICAgLnB4LXhsLTEgewogICAgICAgIHBhZGRpbmctbGVmdDogLjI1cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXhsLTIgewogICAgICAgIHBhZGRpbmc6IC41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC14bC0yLAogICAgLnB5LXhsLTIgewogICAgICAgIHBhZGRpbmctdG9wOiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHIteGwtMiwKICAgIC5weC14bC0yIHsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGIteGwtMiwKICAgIC5weS14bC0yIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLXhsLTIsCiAgICAucHgteGwtMiB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucC14bC0zIHsKICAgICAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wdC14bC0zLAogICAgLnB5LXhsLTMgewogICAgICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci14bC0zLAogICAgLnB4LXhsLTMgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBiLXhsLTMsCiAgICAucHkteGwtMyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudAogICAgfQogICAgLnBsLXhsLTMsCiAgICAucHgteGwtMyB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXhsLTQgewogICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucHQteGwtNCwKICAgIC5weS14bC00IHsKICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wci14bC00LAogICAgLnB4LXhsLTQgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGIteGwtNCwKICAgIC5weS14bC00IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wbC14bC00LAogICAgLnB4LXhsLTQgewogICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQKICAgIH0KICAgIC5wLXhsLTUgewogICAgICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnB0LXhsLTUsCiAgICAucHkteGwtNSB7CiAgICAgICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLnByLXhsLTUsCiAgICAucHgteGwtNSB7CiAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGIteGwtNSwKICAgIC5weS14bC01IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAucGwteGwtNSwKICAgIC5weC14bC01IHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudAogICAgfQogICAgLm0teGwtYXV0byB7CiAgICAgICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tdC14bC1hdXRvLAogICAgLm15LXhsLWF1dG8gewogICAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm1yLXhsLWF1dG8sCiAgICAubXgteGwtYXV0byB7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQKICAgIH0KICAgIC5tYi14bC1hdXRvLAogICAgLm15LXhsLWF1dG8gewogICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudAogICAgfQogICAgLm1sLXhsLWF1dG8sCiAgICAubXgteGwtYXV0byB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudAogICAgfQp9CgoudGV4dC1tb25vc3BhY2UgewogICAgZm9udC1mYW1pbHk6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgIkxpYmVyYXRpb24gTW9ubyIsICJDb3VyaWVyIE5ldyIsIG1vbm9zcGFjZQp9CgoudGV4dC1qdXN0aWZ5IHsKICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudAp9CgoudGV4dC1ub3dyYXAgewogICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50Cn0KCi50ZXh0LXRydW5jYXRlIHsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9CgoudGV4dC1sZWZ0IHsKICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudAp9CgoudGV4dC1yaWdodCB7CiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50Cn0KCi50ZXh0LWNlbnRlciB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudAp9CgpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewogICAgLnRleHQtc20tbGVmdCB7CiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50CiAgICB9CiAgICAudGV4dC1zbS1yaWdodCB7CiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudAogICAgfQogICAgLnRleHQtc20tY2VudGVyIHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgewogICAgLnRleHQtbWQtbGVmdCB7CiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50CiAgICB9CiAgICAudGV4dC1tZC1yaWdodCB7CiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudAogICAgfQogICAgLnRleHQtbWQtY2VudGVyIHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewogICAgLnRleHQtbGctbGVmdCB7CiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50CiAgICB9CiAgICAudGV4dC1sZy1yaWdodCB7CiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudAogICAgfQogICAgLnRleHQtbGctY2VudGVyIHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKICAgIC50ZXh0LXhsLWxlZnQgewogICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudAogICAgfQogICAgLnRleHQteGwtcmlnaHQgewogICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQKICAgIH0KICAgIC50ZXh0LXhsLWNlbnRlciB7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQKICAgIH0KfQoKLnRleHQtbG93ZXJjYXNlIHsKICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudAp9CgoudGV4dC11cHBlcmNhc2UgewogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50Cn0KCi50ZXh0LWNhcGl0YWxpemUgewogICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudAp9CgouZm9udC13ZWlnaHQtbGlnaHQgewogICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50Cn0KCi5mb250LXdlaWdodC1ub3JtYWwgewogICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50Cn0KCi5mb250LXdlaWdodC1ib2xkIHsKICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudAp9CgouZm9udC1pdGFsaWMgewogICAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQKfQoKLnRleHQtd2hpdGUgewogICAgY29sb3I6ICNmZmYgIWltcG9ydGFudAp9CgoudGV4dC1wcmltYXJ5IHsKICAgIGNvbG9yOiAjNDEzYWE0ICFpbXBvcnRhbnQKfQoKYS50ZXh0LXByaW1hcnk6Zm9jdXMsCmEudGV4dC1wcmltYXJ5OmhvdmVyIHsKICAgIGNvbG9yOiAjMzIyZDdlICFpbXBvcnRhbnQKfQoKLnRleHQtc2Vjb25kYXJ5IHsKICAgIGNvbG9yOiAjMDZiNTkwICFpbXBvcnRhbnQKfQoKYS50ZXh0LXNlY29uZGFyeTpmb2N1cywKYS50ZXh0LXNlY29uZGFyeTpob3ZlciB7CiAgICBjb2xvcjogIzA0ODQ2OSAhaW1wb3J0YW50Cn0KCi50ZXh0LXN1Y2Nlc3MgewogICAgY29sb3I6ICMzNWI1M2UgIWltcG9ydGFudAp9CgphLnRleHQtc3VjY2Vzczpmb2N1cywKYS50ZXh0LXN1Y2Nlc3M6aG92ZXIgewogICAgY29sb3I6ICMyOThlMzAgIWltcG9ydGFudAp9CgoudGV4dC1pbmZvIHsKICAgIGNvbG9yOiAjMzc3ZGZmICFpbXBvcnRhbnQKfQoKYS50ZXh0LWluZm86Zm9jdXMsCmEudGV4dC1pbmZvOmhvdmVyIHsKICAgIGNvbG9yOiAjMDQ1Y2ZmICFpbXBvcnRhbnQKfQoKLnRleHQtd2FybmluZyB7CiAgICBjb2xvcjogI2ZmYWYwMCAhaW1wb3J0YW50Cn0KCmEudGV4dC13YXJuaW5nOmZvY3VzLAphLnRleHQtd2FybmluZzpob3ZlciB7CiAgICBjb2xvcjogI2NjOGMwMCAhaW1wb3J0YW50Cn0KCi50ZXh0LWRhbmdlciB7CiAgICBjb2xvcjogI2UyMzYzNiAhaW1wb3J0YW50Cn0KCmEudGV4dC1kYW5nZXI6Zm9jdXMsCmEudGV4dC1kYW5nZXI6aG92ZXIgewogICAgY29sb3I6ICNjODFkMWQgIWltcG9ydGFudAp9CgoudGV4dC1saWdodCB7CiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50Cn0KCmEudGV4dC1saWdodDpmb2N1cywKYS50ZXh0LWxpZ2h0OmhvdmVyIHsKICAgIGNvbG9yOiAjZTZlNmU2ICFpbXBvcnRhbnQKfQoKLnRleHQtZGFyayB7CiAgICBjb2xvcjogIzIwMjQyOCAhaW1wb3J0YW50Cn0KCmEudGV4dC1kYXJrOmZvY3VzLAphLnRleHQtZGFyazpob3ZlciB7CiAgICBjb2xvcjogIzA5MGIwYyAhaW1wb3J0YW50Cn0KCi50ZXh0LWJvZHkgewogICAgY29sb3I6ICM1YTY2NzEgIWltcG9ydGFudAp9CgoudGV4dC1tdXRlZCB7CiAgICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50Cn0KCi50ZXh0LWJsYWNrLTUwIHsKICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KSAhaW1wb3J0YW50Cn0KCi50ZXh0LXdoaXRlLTUwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KSAhaW1wb3J0YW50Cn0KCi50ZXh0LWhpZGUgewogICAgZm9udDogMC8wIGE7CiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7CiAgICB0ZXh0LXNoYWRvdzogbm9uZTsKICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgYm9yZGVyOiAwCn0KCi52aXNpYmxlIHsKICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudAp9CgouaW52aXNpYmxlIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50Cn0KCkBtZWRpYSBwcmludCB7CiAgICAqLAogICAgOjphZnRlciwKICAgIDo6YmVmb3JlIHsKICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwogICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudAogICAgfQogICAgYTpub3QoLmJ0bikgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lCiAgICB9CiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIgewogICAgICAgIGNvbnRlbnQ6ICIgKCIgYXR0cih0aXRsZSkgIikiCiAgICB9CiAgICBwcmUgewogICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50CiAgICB9CiAgICBibG9ja3F1b3RlLAogICAgcHJlIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWRiNWJkOwogICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZAogICAgfQogICAgdGhlYWQgewogICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cAogICAgfQogICAgaW1nLAogICAgdHIgewogICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZAogICAgfQogICAgaDIsCiAgICBoMywKICAgIHAgewogICAgICAgIG9ycGhhbnM6IDM7CiAgICAgICAgd2lkb3dzOiAzCiAgICB9CiAgICBoMiwKICAgIGgzIHsKICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZAogICAgfQogICAgQHBhZ2UgewogICAgICAgIHNpemU6IGEzCiAgICB9CiAgICBib2R5IHsKICAgICAgICBtaW4td2lkdGg6IDk5MnB4ICFpbXBvcnRhbnQKICAgIH0KICAgIC5jb250YWluZXIgewogICAgICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudAogICAgfQogICAgLm5hdmJhciB7CiAgICAgICAgZGlzcGxheTogbm9uZQogICAgfQogICAgLmJhZGdlIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwCiAgICB9CiAgICAudGFibGUgewogICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudAogICAgfQogICAgLnRhYmxlIHRkLAogICAgLnRhYmxlIHRoIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQKICAgIH0KICAgIC50YWJsZS1ib3JkZXJlZCB0ZCwKICAgIC50YWJsZS1ib3JkZXJlZCB0aCB7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50CiAgICB9Cn0KCkBjaGFyc2V0ICJVVEYtOCI7Ci8qIQpBbmltYXRlLmNzcyAtIGh0dHA6Ly9kYW5lZGVuLm1lL2FuaW1hdGUKTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVAoKQ29weXJpZ2h0IChjKSAyMDE1IERhbmllbCBFZGVuCiovCgouYW5pbWF0ZWQgewogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOwogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsKICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGgKfQoKLmFuaW1hdGVkLmluZmluaXRlIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZQp9CgouYW5pbWF0ZWQuaGluZ2UgewogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzOwogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycwp9CgouYW5pbWF0ZWQuYm91bmNlSW4sCi5hbmltYXRlZC5ib3VuY2VPdXQgewogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC43NXM7CiAgICBhbmltYXRpb24tZHVyYXRpb246IC43NXMKfQoKLmFuaW1hdGVkLmZsaXBPdXRYLAouYW5pbWF0ZWQuZmxpcE91dFkgewogICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC43NXM7CiAgICBhbmltYXRpb24tZHVyYXRpb246IC43NXMKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7CiAgICAwJSwKICAgIDEwMCUsCiAgICAyMCUsCiAgICA1MyUsCiAgICA4MCUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSk7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDQwJSwKICAgIDQzJSB7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjc1NSwgLjA1MCwgLjg1NSwgLjA2MCk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC43NTUsIC4wNTAsIC44NTUsIC4wNjApOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCkKICAgIH0KICAgIDcwJSB7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjc1NSwgLjA1MCwgLjg1NSwgLjA2MCk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC43NTUsIC4wNTAsIC44NTUsIC4wNjApOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTRweCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2UgewogICAgMCUsCiAgICAxMDAlLAogICAgMjAlLAogICAgNTMlLAogICAgODAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9CiAgICA0MCUsCiAgICA0MyUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC43NTUsIC4wNTAsIC44NTUsIC4wNjApOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNzU1LCAuMDUwLCAuODU1LCAuMDYwKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApCiAgICB9CiAgICA3MCUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC43NTUsIC4wNTAsIC44NTUsIC4wNjApOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNzU1LCAuMDUwLCAuODU1LCAuMDYwKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApCiAgICB9CiAgICA5MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApCiAgICB9Cn0KCi5ib3VuY2UgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlOwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b20KfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHsKICAgIDAlLAogICAgMTAwJSwKICAgIDUwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMjUlLAogICAgNzUlIHsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCkBrZXlmcmFtZXMgZmxhc2ggewogICAgMCUsCiAgICAxMDAlLAogICAgNTAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAyNSUsCiAgICA3NSUgewogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLmZsYXNoIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoOwogICAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoCn0KCkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpCiAgICB9CiAgICA1MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpCiAgICB9Cn0KCkBrZXlmcmFtZXMgcHVsc2UgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQogICAgNTAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQp9CgoucHVsc2UgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7CiAgICBhbmltYXRpb24tbmFtZTogcHVsc2UKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQogICAgMzAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAuNzUsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAuNzUsIDEpCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC43NSwgMS4yNSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC43NSwgMS4yNSwgMSkKICAgIH0KICAgIDUwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgLjg1LCAxKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgLjg1LCAxKQogICAgfQogICAgNjUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQp9CgpAa2V5ZnJhbWVzIHJ1YmJlckJhbmQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQogICAgMzAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAuNzUsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAuNzUsIDEpCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC43NSwgMS4yNSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC43NSwgMS4yNSwgMSkKICAgIH0KICAgIDUwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgLjg1LCAxKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgLjg1LCAxKQogICAgfQogICAgNjUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQp9CgoucnViYmVyQmFuZCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kOwogICAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHsKICAgIDAlLAogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwJSwKICAgIDMwJSwKICAgIDUwJSwKICAgIDcwJSwKICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKQogICAgfQogICAgMjAlLAogICAgNDAlLAogICAgNjAlLAogICAgODAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIHNoYWtlIHsKICAgIDAlLAogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwJSwKICAgIDMwJSwKICAgIDUwJSwKICAgIDcwJSwKICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKQogICAgfQogICAgMjAlLAogICAgNDAlLAogICAgNjAlLAogICAgODAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKQogICAgfQp9Cgouc2hha2UgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7CiAgICBhbmltYXRpb24tbmFtZTogc2hha2UKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHsKICAgIDIwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKQogICAgfQogICAgNDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZykKICAgIH0KICAgIDYwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZykKICAgIH0KICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZykKICAgIH0KfQoKQGtleWZyYW1lcyBzd2luZyB7CiAgICAyMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZykKICAgIH0KICAgIDQwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZykKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpCiAgICB9Cn0KCi5zd2luZyB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyOwogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7CiAgICBhbmltYXRpb24tbmFtZTogc3dpbmcKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQogICAgMTAlLAogICAgMjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKQogICAgfQogICAgMzAlLAogICAgNTAlLAogICAgNzAlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZykKICAgIH0KICAgIDQwJSwKICAgIDYwJSwKICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZykKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQp9CgpAa2V5ZnJhbWVzIHRhZGEgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQogICAgMTAlLAogICAgMjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKQogICAgfQogICAgMzAlLAogICAgNTAlLAogICAgNzAlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZykKICAgIH0KICAgIDQwJSwKICAgIDYwJSwKICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZykKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKQogICAgfQp9CgoudGFkYSB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0YWRhOwogICAgYW5pbWF0aW9uLW5hbWU6IHRhZGEKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHdvYmJsZSB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9CiAgICAxNSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZykKICAgIH0KICAgIDMwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpCiAgICB9CiAgICA0NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZykKICAgIH0KICAgIDYwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKQGtleWZyYW1lcyB3b2JibGUgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQogICAgMTUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpCiAgICB9CiAgICAzMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKQogICAgfQogICAgNDUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKQogICAgfQogICAgNzUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCi53b2JibGUgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlOwogICAgYW5pbWF0aW9uLW5hbWU6IHdvYmJsZQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8gewogICAgMTEuMSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQogICAgMjIuMiUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKQogICAgfQogICAgMzMuMyUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpCiAgICB9CiAgICA0NC40JSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKQogICAgfQogICAgNTUuNSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZykKICAgIH0KICAgIDY2LjYlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLS43ODEyNWRlZykgc2tld1koLS43ODEyNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtLjc4MTI1ZGVnKSBza2V3WSgtLjc4MTI1ZGVnKQogICAgfQogICAgNzcuNyUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCguMzkwNjI1ZGVnKSBza2V3WSguMzkwNjI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC4zOTA2MjVkZWcpIHNrZXdZKC4zOTA2MjVkZWcpCiAgICB9CiAgICA4OC44JSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0uMTk1MzEyNWRlZykgc2tld1koLS4xOTUzMTI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0uMTk1MzEyNWRlZykgc2tld1koLS4xOTUzMTI1ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCkBrZXlmcmFtZXMgamVsbG8gewogICAgMTEuMSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQogICAgMjIuMiUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKQogICAgfQogICAgMzMuMyUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpCiAgICB9CiAgICA0NC40JSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKQogICAgfQogICAgNTUuNSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZykKICAgIH0KICAgIDY2LjYlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLS43ODEyNWRlZykgc2tld1koLS43ODEyNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtLjc4MTI1ZGVnKSBza2V3WSgtLjc4MTI1ZGVnKQogICAgfQogICAgNzcuNyUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCguMzkwNjI1ZGVnKSBza2V3WSguMzkwNjI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC4zOTA2MjVkZWcpIHNrZXdZKC4zOTA2MjVkZWcpCiAgICB9CiAgICA4OC44JSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0uMTk1MzEyNWRlZykgc2tld1koLS4xOTUzMTI1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0uMTk1MzEyNWRlZykgc2tld1koLS4xOTUzMTI1ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCi5qZWxsbyB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqZWxsbzsKICAgIGFuaW1hdGlvbi1uYW1lOiBqZWxsbzsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyCn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7CiAgICAwJSwKICAgIDEwMCUsCiAgICAyMCUsCiAgICA0MCUsCiAgICA2MCUsCiAgICA4MCUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSkKICAgIH0KICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKQogICAgfQogICAgMjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkKICAgIH0KICAgIDQwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpCiAgICB9CiAgICA2MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSkKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbiB7CiAgICAwJSwKICAgIDEwMCUsCiAgICAyMCUsCiAgICA0MCUsCiAgICA2MCUsCiAgICA4MCUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSkKICAgIH0KICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKQogICAgfQogICAgMjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkKICAgIH0KICAgIDQwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpCiAgICB9CiAgICA2MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSkKICAgIH0KfQoKLmJvdW5jZUluIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluOwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluCn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24gewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbkRvd24gewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmJvdW5jZUluRG93biB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247CiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duCn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkxlZnQgewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VJbkxlZnQgewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmJvdW5jZUluTGVmdCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7CiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHsKICAgIDAlLAogICAgMTAwJSwKICAgIDYwJSwKICAgIDc1JSwKICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjIxNSwgLjYxLCAuMzU1LCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjIxNSwgLjYxLCAuMzU1LCAxKQogICAgfQogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApCiAgICB9CiAgICA2MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKQogICAgfQogICAgNzUlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKQogICAgfQogICAgOTAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7CiAgICAwJSwKICAgIDEwMCUsCiAgICA2MCUsCiAgICA3NSUsCiAgICA5MCUgewogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSkKICAgIH0KICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCkKICAgIH0KICAgIDc1JSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkKICAgIH0KICAgIDkwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgouYm91bmNlSW5SaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAgewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApCiAgICB9CiAgICA5MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZUluVXAgewogICAgMCUsCiAgICAxMDAlLAogICAgNjAlLAogICAgNzUlLAogICAgOTAlIHsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpCiAgICB9CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApCiAgICB9CiAgICA3NSUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApCiAgICB9CiAgICA5MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQp9CgouYm91bmNlSW5VcCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwOwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXAKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7CiAgICAyMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KQogICAgfQogICAgNTAlLAogICAgNTUlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMykKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXQgewogICAgMjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkKICAgIH0KICAgIDUwJSwKICAgIDU1JSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpCiAgICB9Cn0KCi5ib3VuY2VPdXQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0OwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0RG93biB7CiAgICAyMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApCiAgICB9CiAgICA0MCUsCiAgICA0NSUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHsKICAgIDIwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkKICAgIH0KICAgIDQwJSwKICAgIDQ1JSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKQogICAgfQp9CgouYm91bmNlT3V0RG93biB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd24KfQoKQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dExlZnQgewogICAgMjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApCiAgICB9Cn0KCkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7CiAgICAyMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkKICAgIH0KfQoKLmJvdW5jZU91dExlZnQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDsKICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7CiAgICAyMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7CiAgICAyMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCkKICAgIH0KfQoKLmJvdW5jZU91dFJpZ2h0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7CiAgICAyMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkKICAgIH0KICAgIDQwJSwKICAgIDQ1JSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHsKICAgIDIwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKQogICAgfQogICAgNDAlLAogICAgNDUlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApCiAgICB9Cn0KCi5ib3VuY2VPdXRVcCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsKICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCi5mYWRlSW4gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluOwogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbgp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkRvd24gewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmZhZGVJbkRvd24gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duCn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCi5mYWRlSW5Eb3duQmlnIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkxlZnQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmZhZGVJbkxlZnQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCi5mYWRlSW5MZWZ0QmlnIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluUmlnaHQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCi5mYWRlSW5SaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmZhZGVJblJpZ2h0QmlnIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnOwogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnCn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlSW5VcCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLmZhZGVJblVwIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwOwogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwCn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9Cn0KCkBrZXlmcmFtZXMgZmFkZUluVXBCaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZQogICAgfQp9CgouZmFkZUluVXBCaWcgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWcKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCi5mYWRlT3V0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24gewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0RG93biB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKQogICAgfQp9CgouZmFkZU91dERvd24gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247CiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd24KfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKQogICAgfQp9CgouZmFkZU91dERvd25CaWcgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWcKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApCiAgICB9Cn0KCi5mYWRlT3V0TGVmdCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKQogICAgfQp9CgouZmFkZU91dExlZnRCaWcgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7CiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWcKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKQogICAgfQp9CgouZmFkZU91dFJpZ2h0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApCiAgICB9Cn0KCi5mYWRlT3V0UmlnaHRCaWcgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnOwogICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCkKICAgIH0KfQoKQGtleWZyYW1lcyBmYWRlT3V0VXAgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKQogICAgfQp9CgouZmFkZU91dFVwIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXAKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKQogICAgfQp9CgouZmFkZU91dFVwQmlnIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZzsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWcKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsaXAgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dAogICAgfQogICAgNDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dAogICAgfQogICAgNTAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4KICAgIH0KICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4KICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4KICAgIH0KfQoKQGtleWZyYW1lcyBmbGlwIHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQKICAgIH0KICAgIDQwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQKICAgIH0KICAgIDUwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9Cn0KCi5hbmltYXRlZC5mbGlwIHsKICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwOwogICAgYW5pbWF0aW9uLW5hbWU6IGZsaXAKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblggewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQp9CgpAa2V5ZnJhbWVzIGZsaXBJblggewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQp9CgouZmxpcEluWCB7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7CiAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgUngtd2lkdGgtNTAgewogICAgMCUgewogICAgICAgIHdpZHRoOiAwJQogICAgfQogICAgMTAwJSB7CiAgICAgICAgd2lkdGg6IDUwJQogICAgfQp9CgpAa2V5ZnJhbWVzIFJ4LXdpZHRoLTUwIHsKICAgIDAlIHsKICAgICAgICB3aWR0aDogMCUKICAgIH0KICAgIDEwMCUgewogICAgICAgIHdpZHRoOiA1MCUKICAgIH0KfQoKQC13ZWJraXQta2V5ZnJhbWVzIFJ4LXdpZHRoLTc1IHsKICAgIDAlIHsKICAgICAgICB3aWR0aDogMCUKICAgIH0KICAgIDEwMCUgewogICAgICAgIHdpZHRoOiA3NSUKICAgIH0KfQoKQGtleWZyYW1lcyBSeC13aWR0aC03NSB7CiAgICAwJSB7CiAgICAgICAgd2lkdGg6IDAlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICB3aWR0aDogNzUlCiAgICB9Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBSeC13aWR0aC02NSB7CiAgICAwJSB7CiAgICAgICAgd2lkdGg6IDAlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICB3aWR0aDogNjUlCiAgICB9Cn0KCkBrZXlmcmFtZXMgUngtd2lkdGgtNjUgewogICAgMCUgewogICAgICAgIHdpZHRoOiAwJQogICAgfQogICAgMTAwJSB7CiAgICAgICAgd2lkdGg6IDY1JQogICAgfQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgUngtd2lkdGgtNjAgewogICAgMCUgewogICAgICAgIHdpZHRoOiAwJQogICAgfQogICAgMTAwJSB7CiAgICAgICAgd2lkdGg6IDYwJQogICAgfQp9CgpAa2V5ZnJhbWVzIFJ4LXdpZHRoLTYwIHsKICAgIDAlIHsKICAgICAgICB3aWR0aDogMCUKICAgIH0KICAgIDEwMCUgewogICAgICAgIHdpZHRoOiA2MCUKICAgIH0KfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQp9CgpAa2V5ZnJhbWVzIGZsaXBJblkgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICA0MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluCiAgICB9CiAgICA2MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQp9CgouZmxpcEluWSB7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7CiAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFggewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkKICAgIH0KICAgIDMwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyBmbGlwT3V0WCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQogICAgMzAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9CgouZmxpcE91dFggewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFg7CiAgICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkKICAgIH0KICAgIDMwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyBmbGlwT3V0WSB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KQogICAgfQogICAgMzAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9CgouZmxpcE91dFkgewogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTsKICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WQp9CgpALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQogICAgNjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQp9CgpAa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDYwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICA4MCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKLmxpZ2h0U3BlZWRJbiB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47CiAgICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluOwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsKICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLmxpZ2h0U3BlZWRPdXQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDsKICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0OwogICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOwogICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbgp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4gewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKQGtleWZyYW1lcyByb3RhdGVJbiB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQp9Cgoucm90YXRlSW4gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW47CiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW4KfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCi5yb3RhdGVJbkRvd25MZWZ0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7CiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKLnJvdGF0ZUluRG93blJpZ2h0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KfQoKLnJvdGF0ZUluVXBMZWZ0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0OwogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQp9Cgoucm90YXRlSW5VcFJpZ2h0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDsKICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9Cgoucm90YXRlT3V0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDsKICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLnJvdGF0ZU91dERvd25MZWZ0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0OwogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLnJvdGF0ZU91dERvd25SaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7CiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9CgpAa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCi5yb3RhdGVPdXRVcExlZnQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0OwogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKQGtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9Cgoucm90YXRlT3V0VXBSaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGhpbmdlIHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQKICAgIH0KICAgIDIwJSwKICAgIDYwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQKICAgIH0KICAgIDQwJSwKICAgIDgwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCkBrZXlmcmFtZXMgaGluZ2UgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dAogICAgfQogICAgMjAlLAogICAgNjAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dAogICAgfQogICAgNDAlLAogICAgODAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApOwogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLmhpbmdlIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhpbmdlOwogICAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlCn0KCkAtd2Via2l0LWtleWZyYW1lcyByb2xsSW4gewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKQGtleWZyYW1lcyByb2xsSW4gewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmUKICAgIH0KfQoKLnJvbGxJbiB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsSW47CiAgICBhbmltYXRpb24tbmFtZTogcm9sbEluCn0KCkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKQogICAgfQp9CgpAa2V5ZnJhbWVzIHJvbGxPdXQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpCiAgICB9Cn0KCi5yb2xsT3V0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7CiAgICBhbmltYXRpb24tbmFtZTogcm9sbE91dAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKQogICAgfQogICAgNTAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCkBrZXlmcmFtZXMgem9vbUluIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKQogICAgfQogICAgNTAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCi56b29tSW4gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluOwogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21Jbgp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKQogICAgfQp9CgpAa2V5ZnJhbWVzIHpvb21JbkRvd24gewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpCiAgICB9CiAgICA2MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSkKICAgIH0KfQoKLnpvb21JbkRvd24gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjsKICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duCn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpCiAgICB9Cn0KCkBrZXlmcmFtZXMgem9vbUluTGVmdCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKQogICAgfQp9Cgouem9vbUluTGVmdCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0OwogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0IHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpCiAgICB9Cn0KCkBrZXlmcmFtZXMgem9vbUluUmlnaHQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KQogICAgfQogICAgNjAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSkKICAgIH0KfQoKLnpvb21JblJpZ2h0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpCiAgICB9CiAgICA2MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKQogICAgfQp9CgpAa2V5ZnJhbWVzIHpvb21JblVwIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDYwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpCiAgICB9Cn0KCi56b29tSW5VcCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDsKICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgNTAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9CgpAa2V5ZnJhbWVzIHpvb21PdXQgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDEKICAgIH0KICAgIDUwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMykKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDAKICAgIH0KfQoKLnpvb21PdXQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDsKICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7CiAgICA0MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEpCiAgICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dERvd24gewogICAgNDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKQogICAgfQp9Cgouem9vbU91dERvd24gewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dERvd247CiAgICBhbmltYXRpb24tbmFtZTogem9vbU91dERvd24KfQoKQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHsKICAgIDQwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyCiAgICB9Cn0KCkBrZXlmcmFtZXMgem9vbU91dExlZnQgewogICAgNDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXIKICAgIH0KfQoKLnpvb21PdXRMZWZ0IHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0OwogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0UmlnaHQgewogICAgNDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcgogICAgfQp9CgpAa2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7CiAgICA0MCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyCiAgICB9Cn0KCi56b29tT3V0UmlnaHQgewogICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHsKICAgIDQwJSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpOwogICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSkKICAgIH0KICAgIDEwMCUgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsKICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMSkKICAgIH0KfQoKQGtleWZyYW1lcyB6b29tT3V0VXAgewogICAgNDAlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSk7CiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41NSwgLjA1NSwgLjY3NSwgLjE5KQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKTsKICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxKQogICAgfQp9Cgouem9vbU91dFVwIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDsKICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXAKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOwogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVJbkRvd24gewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7CiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KfQoKLnNsaWRlSW5Eb3duIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duOwogICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duCn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9Cn0KCi5zbGlkZUluTGVmdCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDsKICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdAp9CgpALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KfQoKLnNsaWRlSW5SaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7CiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluVXAgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVJblVwIHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQp9Cgouc2xpZGVJblVwIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDsKICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXAKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKQogICAgfQp9Cgouc2xpZGVPdXREb3duIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjsKICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd24KfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApCiAgICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkKICAgIH0KfQoKLnNsaWRlT3V0TGVmdCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7CiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHsKICAgIDAlIHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApCiAgICB9Cn0KCkBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKQogICAgfQp9Cgouc2xpZGVPdXRSaWdodCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0OwogICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKQogICAgfQp9CgpAa2V5ZnJhbWVzIHNsaWRlT3V0VXAgewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCiAgICB9CiAgICAxMDAlIHsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKQogICAgfQp9Cgouc2xpZGVPdXRVcCB7CiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwOwogICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXAKfQoKLyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMy4xIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tCiAqIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgKEljb25zOiBDQyBCWSA0LjAsIEZvbnRzOiBTSUwgT0ZMIDEuMSwgQ29kZTogTUlUIExpY2Vuc2UpCiAqLwoKQGZvbnQtZmFjZSB7CiAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEJyYW5kcyc7CiAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgc3JjOiB1cmwoLi4vZm9udHMvZmEtYnJhbmRzLTQwMC5lb3QpOwogICAgc3JjOiB1cmwoLi4vZm9udHMvZmEtYnJhbmRzLTQwMGQ0MWRkNDFkLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSwgdXJsKC4uL2ZvbnRzL2ZhLWJyYW5kcy00MDAud29mZjIpIGZvcm1hdCgid29mZjIiKSwgdXJsKC4uL2ZvbnRzL2ZhLWJyYW5kcy00MDAud29mZikgZm9ybWF0KCJ3b2ZmIiksIHVybCguLi9mb250cy9mYS1icmFuZHMtNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLCB1cmwoLi4vZm9udHMvZmEtYnJhbmRzLTQwMC5zdmcjZm9udGF3ZXNvbWUpIGZvcm1hdCgic3ZnIikKfQoKLmZhYiB7CiAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEJyYW5kcycKfQoKLmZhLAouZmFiLAouZmFsLAouZmFyLAouZmFzIHsKICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7CiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtdmFyaWFudDogbm9ybWFsOwogICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87CiAgICBsaW5lLWhlaWdodDogMQp9CgouZmEtbGcgewogICAgZm9udC1zaXplOiAxLjMzMzMzZW07CiAgICBsaW5lLWhlaWdodDogLjc1ZW07CiAgICB2ZXJ0aWNhbC1hbGlnbjogLS4wNjY3ZW0KfQoKLmZhLXhzIHsKICAgIGZvbnQtc2l6ZTogLjc1ZW0KfQoKLmZhLXNtIHsKICAgIGZvbnQtc2l6ZTogLjg3NWVtCn0KCi5mYS0xeCB7CiAgICBmb250LXNpemU6IDFlbQp9CgouZmEtMnggewogICAgZm9udC1zaXplOiAyZW0KfQoKLmZhLTN4IHsKICAgIGZvbnQtc2l6ZTogM2VtCn0KCi5mYS00eCB7CiAgICBmb250LXNpemU6IDRlbQp9CgouZmEtNXggewogICAgZm9udC1zaXplOiA1ZW0KfQoKLmZhLTZ4IHsKICAgIGZvbnQtc2l6ZTogNmVtCn0KCi5mYS03eCB7CiAgICBmb250LXNpemU6IDdlbQp9CgouZmEtOHggewogICAgZm9udC1zaXplOiA4ZW0KfQoKLmZhLTl4IHsKICAgIGZvbnQtc2l6ZTogOWVtCn0KCi5mYS0xMHggewogICAgZm9udC1zaXplOiAxMGVtCn0KCi5mYS1mdyB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICB3aWR0aDogMS4yNWVtCn0KCi5mYS11bCB7CiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CiAgICBtYXJnaW4tbGVmdDogMi41ZW07CiAgICBwYWRkaW5nLWxlZnQ6IDAKfQoKLmZhLXVsPmxpIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouZmEtbGkgewogICAgbGVmdDogLTJlbTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHdpZHRoOiAyZW07CiAgICBsaW5lLWhlaWdodDogaW5oZXJpdAp9CgouZmEtYm9yZGVyIHsKICAgIGJvcmRlcjogLjA4ZW0gc29saWQgI2VlZTsKICAgIGJvcmRlci1yYWRpdXM6IC4xZW07CiAgICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtCn0KCi5mYS1wdWxsLWxlZnQgewogICAgZmxvYXQ6IGxlZnQKfQoKLmZhLXB1bGwtcmlnaHQgewogICAgZmxvYXQ6IHJpZ2h0Cn0KCi5mYS5mYS1wdWxsLWxlZnQsCi5mYWIuZmEtcHVsbC1sZWZ0LAouZmFsLmZhLXB1bGwtbGVmdCwKLmZhci5mYS1wdWxsLWxlZnQsCi5mYXMuZmEtcHVsbC1sZWZ0IHsKICAgIG1hcmdpbi1yaWdodDogLjNlbQp9CgouZmEuZmEtcHVsbC1yaWdodCwKLmZhYi5mYS1wdWxsLXJpZ2h0LAouZmFsLmZhLXB1bGwtcmlnaHQsCi5mYXIuZmEtcHVsbC1yaWdodCwKLmZhcy5mYS1wdWxsLXJpZ2h0IHsKICAgIG1hcmdpbi1sZWZ0OiAuM2VtCn0KCi5mYS1zcGluIHsKICAgIGFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXIKfQoKLmZhLXB1bHNlIHsKICAgIGFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KQp9CgpAa2V5ZnJhbWVzIGZhLXNwaW4gewogICAgMCUgewogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApCiAgICB9CiAgICB0byB7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pCiAgICB9Cn0KCi5mYS1yb3RhdGUtOTAgewogICAgLW1zLWZpbHRlcjogInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTEpIjsKICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKQp9CgouZmEtcm90YXRlLTE4MCB7CiAgICAtbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MikiOwogICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKQp9CgouZmEtcm90YXRlLTI3MCB7CiAgICAtbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MykiOwogICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKQp9CgouZmEtZmxpcC1ob3Jpem9udGFsIHsKICAgIC1tcy1maWx0ZXI6ICJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0wLCBtaXJyb3I9MSkiOwogICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpCn0KCi5mYS1mbGlwLXZlcnRpY2FsIHsKICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKQp9CgouZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWwsCi5mYS1mbGlwLXZlcnRpY2FsIHsKICAgIC1tcy1maWx0ZXI6ICJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yLCBtaXJyb3I9MSkiCn0KCi5mYS1mbGlwLWhvcml6b250YWwuZmEtZmxpcC12ZXJ0aWNhbCB7CiAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKQp9Cgo6cm9vdCAuZmEtZmxpcC1ob3Jpem9udGFsLAo6cm9vdCAuZmEtZmxpcC12ZXJ0aWNhbCwKOnJvb3QgLmZhLXJvdGF0ZS0xODAsCjpyb290IC5mYS1yb3RhdGUtMjcwLAo6cm9vdCAuZmEtcm90YXRlLTkwIHsKICAgIGZpbHRlcjogbm9uZQp9CgouZmEtc3RhY2sgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgaGVpZ2h0OiAyZW07CiAgICBsaW5lLWhlaWdodDogMmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIHdpZHRoOiAyLjVlbQp9CgouZmEtc3RhY2stMXgsCi5mYS1zdGFjay0yeCB7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgd2lkdGg6IDEwMCUKfQoKLmZhLXN0YWNrLTF4IHsKICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0Cn0KCi5mYS1zdGFjay0yeCB7CiAgICBmb250LXNpemU6IDJlbQp9CgouZmEtaW52ZXJzZSB7CiAgICBjb2xvcjogI2ZmZgp9CgouZmEtNTAwcHg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2ZSIKfQoKLmZhLWFjY2Vzc2libGUtaWNvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzY4Igp9CgouZmEtYWNjdXNvZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2OSIKfQoKLmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZhZiIKfQoKLmZhLWFkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NDEiCn0KCi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiOSIKfQoKLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmJiIgp9CgouZmEtYWRqdXN0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNDIiCn0KCi5mYS1hZG46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3MCIKfQoKLmZhLWFkb2JlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NzgiCn0KCi5mYS1hZHZlcnNhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzZhIgp9CgouZmEtYWZmaWxpYXRldGhlbWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2YiIKfQoKLmZhLWFpci1mcmVzaGVuZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVkMCIKfQoKLmZhLWFsZ29saWE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2YyIKfQoKLmZhLWFsaWduLWNlbnRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDM3Igp9CgouZmEtYWxpZ24tanVzdGlmeTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDM5Igp9CgouZmEtYWxpZ24tbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDM2Igp9CgouZmEtYWxpZ24tcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAzOCIKfQoKLmZhLWFsaXBheTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjQyIgp9CgouZmEtYWxsZXJnaWVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NjEiCn0KCi5mYS1hbWF6b246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3MCIKfQoKLmZhLWFtYXpvbi1wYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyYyIKfQoKLmZhLWFtYnVsYW5jZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGY5Igp9CgouZmEtYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhMyIKfQoKLmZhLWFtaWxpYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzZkIgp9CgouZmEtYW5jaG9yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxM2QiCn0KCi5mYS1hbmRyb2lkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxN2IiCn0KCi5mYS1hbmdlbGxpc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwOSIKfQoKLmZhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDMiCn0KCi5mYS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTAwIgp9CgouZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDEiCn0KCi5mYS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwMiIKfQoKLmZhLWFuZ2xlLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwNyIKfQoKLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwNCIKfQoKLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDUiCn0KCi5mYS1hbmdsZS11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTA2Igp9CgouZmEtYW5ncnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU1NiIKfQoKLmZhLWFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2ZSIKfQoKLmZhLWFuZ3VsYXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyMCIKfQoKLmZhLWFua2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY0NCIKfQoKLmZhLWFwcC1zdG9yZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzZmIgp9CgouZmEtYXBwLXN0b3JlLWlvczpiZWZvcmUgewogICAgY29udGVudDogIlxmMzcwIgp9CgouZmEtYXBwZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3MSIKfQoKLmZhLWFwcGxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNzkiCn0KCi5mYS1hcHBsZS1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVkMSIKfQoKLmZhLWFwcGxlLXBheTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDE1Igp9CgouZmEtYXJjaGl2ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTg3Igp9CgouZmEtYXJjaHdheTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTU3Igp9CgouZmEtYXJyb3ctYWx0LWNpcmNsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNTgiCn0KCi5mYS1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1OSIKfQoKLmZhLWFycm93LWFsdC1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1YSIKfQoKLmZhLWFycm93LWFsdC1jaXJjbGUtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1YiIKfQoKLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYWIiCn0KCi5mYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGE4Igp9CgouZmEtYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYTkiCn0KCi5mYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhYSIKfQoKLmZhLWFycm93LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2MyIKfQoKLmZhLWFycm93LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2MCIKfQoKLmZhLWFycm93LXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNjEiCn0KCi5mYS1hcnJvdy11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDYyIgp9CgouZmEtYXJyb3dzLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGIyIgp9CgouZmEtYXJyb3dzLWFsdC1oOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzciCn0KCi5mYS1hcnJvd3MtYWx0LXY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzOCIKfQoKLmZhLWFydHN0YXRpb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc3YSIKfQoKLmZhLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgewogICAgY29udGVudDogIlxmMmEyIgp9CgouZmEtYXN0ZXJpc2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2OSIKfQoKLmZhLWFzeW1tZXRyaWs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3MiIKfQoKLmZhLWF0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmEiCn0KCi5mYS1hdGxhczpiZWZvcmUgewogICAgY29udGVudDogIlxmNTU4Igp9CgouZmEtYXRsYXNzaWFuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3N2IiCn0KCi5mYS1hdG9tOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZDIiCn0KCi5mYS1hdWRpYmxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNzMiCn0KCi5mYS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjllIgp9CgouZmEtYXV0b3ByZWZpeGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MWMiCn0KCi5mYS1hdmlhbmV4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNzQiCn0KCi5mYS1hdmlhdG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyMSIKfQoKLmZhLWF3YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NTkiCn0KCi5mYS1hd3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3NSIKfQoKLmZhLWJhYnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc3YyIKfQoKLmZhLWJhYnktY2FycmlhZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc3ZCIKfQoKLmZhLWJhY2tzcGFjZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTVhIgp9CgouZmEtYmFja3dhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA0YSIKfQoKLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0ZSIKfQoKLmZhLWJhbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDVlIgp9CgouZmEtYmFuZC1haWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ2MiIKfQoKLmZhLWJhbmRjYW1wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDUiCn0KCi5mYS1iYXJjb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMmEiCn0KCi5mYS1iYXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYzkiCn0KCi5mYS1iYXNlYmFsbC1iYWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MzMiCn0KCi5mYS1iYXNrZXRiYWxsLWJhbGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQzNCIKfQoKLmZhLWJhdGg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjZCIKfQoKLmZhLWJhdHRlcnktZW1wdHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0NCIKfQoKLmZhLWJhdHRlcnktZnVsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjQwIgp9CgouZmEtYmF0dGVyeS1oYWxmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDIiCn0KCi5mYS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0MyIKfQoKLmZhLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0MSIKfQoKLmZhLWJlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM2Igp9CgouZmEtYmVlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMGZjIgp9CgouZmEtYmVoYW5jZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI0Igp9CgouZmEtYmVoYW5jZS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiNSIKfQoKLmZhLWJlbGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBmMyIKfQoKLmZhLWJlbGwtc2xhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmNiIKfQoKLmZhLWJlemllci1jdXJ2ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTViIgp9CgouZmEtYmlibGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY0NyIKfQoKLmZhLWJpY3ljbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwNiIKfQoKLmZhLWJpbW9iamVjdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzc4Igp9CgouZmEtYmlub2N1bGFyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMWU1Igp9CgouZmEtYmlvaGF6YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODAiCn0KCi5mYS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmQiCn0KCi5mYS1iaXRidWNrZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3MSIKfQoKLmZhLWJpdGNvaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3OSIKfQoKLmZhLWJpdHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3YSIKfQoKLmZhLWJsYWNrLXRpZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjdlIgp9CgouZmEtYmxhY2tiZXJyeTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzdiIgp9CgouZmEtYmxlbmRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTE3Igp9CgouZmEtYmxlbmRlci1waG9uZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNmI2Igp9CgouZmEtYmxpbmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5ZCIKfQoKLmZhLWJsb2c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc4MSIKfQoKLmZhLWJsb2dnZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3YyIKfQoKLmZhLWJsb2dnZXItYjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzdkIgp9CgouZmEtYmx1ZXRvb3RoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTMiCn0KCi5mYS1ibHVldG9vdGgtYjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjk0Igp9CgouZmEtYm9sZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDMyIgp9CgouZmEtYm9sdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGU3Igp9CgouZmEtYm9tYjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWUyIgp9CgouZmEtYm9uZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWQ3Igp9CgouZmEtYm9uZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTVjIgp9CgouZmEtYm9vazpiZWZvcmUgewogICAgY29udGVudDogIlxmMDJkIgp9CgouZmEtYm9vay1kZWFkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2YjciCn0KCi5mYS1ib29rLW9wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUxOCIKfQoKLmZhLWJvb2stcmVhZGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZGEiCn0KCi5mYS1ib29rbWFyazpiZWZvcmUgewogICAgY29udGVudDogIlxmMDJlIgp9CgouZmEtYm93bGluZy1iYWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MzYiCn0KCi5mYS1ib3g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ2NiIKfQoKLmZhLWJveC1vcGVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0OWUiCn0KCi5mYS1ib3hlczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDY4Igp9CgouZmEtYnJhaWxsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmExIgp9CgouZmEtYnJhaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVkYyIKfQoKLmZhLWJyaWVmY2FzZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGIxIgp9CgouZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ2OSIKfQoKLmZhLWJyb2FkY2FzdC10b3dlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTE5Igp9CgouZmEtYnJvb206YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUxYSIKfQoKLmZhLWJydXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NWQiCn0KCi5mYS1idGM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1YSIKfQoKLmZhLWJ1ZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTg4Igp9CgouZmEtYnVpbGRpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhZCIKfQoKLmZhLWJ1bGxob3JuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYTEiCn0KCi5mYS1idWxsc2V5ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQwIgp9CgouZmEtYnVybjpiZWZvcmUgewogICAgY29udGVudDogIlxmNDZhIgp9CgouZmEtYnVyb21vYmVsZXhwZXJ0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzdmIgp9CgouZmEtYnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMDciCn0KCi5mYS1idXMtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NWUiCn0KCi5mYS1idXNpbmVzcy10aW1lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NGEiCn0KCi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMGQiCn0KCi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWMiCn0KCi5mYS1jYWxlbmRhcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTMzIgp9CgouZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNzMiCn0KCi5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmUgewogICAgY29udGVudDogIlxmMjc0Igp9CgouZmEtY2FsZW5kYXItZGF5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODMiCn0KCi5mYS1jYWxlbmRhci1taW51czpiZWZvcmUgewogICAgY29udGVudDogIlxmMjcyIgp9CgouZmEtY2FsZW5kYXItcGx1czpiZWZvcmUgewogICAgY29udGVudDogIlxmMjcxIgp9CgouZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3MyIKfQoKLmZhLWNhbGVuZGFyLXdlZWs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc4NCIKfQoKLmZhLWNhbWVyYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDMwIgp9CgouZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwODMiCn0KCi5mYS1jYW1wZ3JvdW5kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2YmIiCn0KCi5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODUiCn0KCi5mYS1jYW5keS1jYW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODYiCn0KCi5mYS1jYW5uYWJpczpiZWZvcmUgewogICAgY29udGVudDogIlxmNTVmIgp9CgouZmEtY2Fwc3VsZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ2YiIKfQoKLmZhLWNhcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI5Igp9CgouZmEtY2FyLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWRlIgp9CgouZmEtY2FyLWJhdHRlcnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVkZiIKfQoKLmZhLWNhci1jcmFzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWUxIgp9CgouZmEtY2FyLXNpZGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVlNCIKfQoKLmZhLWNhcmV0LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBkNyIKfQoKLmZhLWNhcmV0LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBkOSIKfQoKLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZGEiCn0KCi5mYS1jYXJldC1zcXVhcmUtZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTUwIgp9CgouZmEtY2FyZXQtc3F1YXJlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5MSIKfQoKLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTUyIgp9CgouZmEtY2FyZXQtc3F1YXJlLXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTEiCn0KCi5mYS1jYXJldC11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGQ4Igp9CgouZmEtY2Fycm90OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODciCn0KCi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxOCIKfQoKLmZhLWNhcnQtcGx1czpiZWZvcmUgewogICAgY29udGVudDogIlxmMjE3Igp9CgouZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNzg4Igp9CgouZmEtY2F0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2YmUiCn0KCi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MmQiCn0KCi5mYS1jYy1hbWV4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZjMiCn0KCi5mYS1jYy1hcHBsZS1wYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQxNiIKfQoKLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNGMiCn0KCi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWYyIgp9CgouZmEtY2MtamNiOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNGIiCn0KCi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZjEiCn0KCi5mYS1jYy1wYXlwYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmNCIKfQoKLmZhLWNjLXN0cmlwZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWY1Igp9CgouZmEtY2MtdmlzYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWYwIgp9CgouZmEtY2VudGVyY29kZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzgwIgp9CgouZmEtY2VudG9zOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ODkiCn0KCi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGEzIgp9CgouZmEtY2hhaXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZjMCIKfQoKLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUxYiIKfQoKLmZhLWNoYWxrYm9hcmQtdGVhY2hlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTFjIgp9CgouZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWU3Igp9CgouZmEtY2hhcnQtYXJlYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWZlIgp9CgouZmEtY2hhcnQtYmFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwODAiCn0KCi5mYS1jaGFydC1saW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMDEiCn0KCi5mYS1jaGFydC1waWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwMCIKfQoKLmZhLWNoZWNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMGMiCn0KCi5mYS1jaGVjay1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA1OCIKfQoKLmZhLWNoZWNrLWRvdWJsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTYwIgp9CgouZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGEiCn0KCi5mYS1jaGVzczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDM5Igp9CgouZmEtY2hlc3MtYmlzaG9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0M2EiCn0KCi5mYS1jaGVzcy1ib2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDNjIgp9CgouZmEtY2hlc3Mta2luZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNDNmIgp9CgouZmEtY2hlc3Mta25pZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NDEiCn0KCi5mYS1jaGVzcy1wYXduOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NDMiCn0KCi5mYS1jaGVzcy1xdWVlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNDQ1Igp9CgouZmEtY2hlc3Mtcm9vazpiZWZvcmUgewogICAgY29udGVudDogIlxmNDQ3Igp9CgouZmEtY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTNhIgp9CgouZmEtY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTM3Igp9CgouZmEtY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzOCIKfQoKLmZhLWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzkiCn0KCi5mYS1jaGV2cm9uLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA3OCIKfQoKLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDUzIgp9CgouZmEtY2hldnJvbi1yaWdodDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDU0Igp9CgouZmEtY2hldnJvbi11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDc3Igp9CgouZmEtY2hpbGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhZSIKfQoKLmZhLWNocm9tZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjY4Igp9CgouZmEtY2h1cmNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MWQiCn0KCi5mYS1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMSIKfQoKLmZhLWNpcmNsZS1ub3RjaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWNlIgp9CgouZmEtY2l0eTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjRmIgp9CgouZmEtY2xpcGJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMjgiCn0KCi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ2YyIKfQoKLmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NmQiCn0KCi5mYS1jbG9jazpiZWZvcmUgewogICAgY29udGVudDogIlxmMDE3Igp9CgouZmEtY2xvbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0ZCIKfQoKLmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMGEiCn0KCi5mYS1jbG91ZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGMyIgp9CgouZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODEiCn0KCi5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNzNiIgp9CgouZmEtY2xvdWQtbW9vbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNmMzIgp9CgouZmEtY2xvdWQtbW9vbi1yYWluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3M2MiCn0KCi5mYS1jbG91ZC1yYWluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3M2QiCn0KCi5mYS1jbG91ZC1zaG93ZXJzLWhlYXZ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NDAiCn0KCi5mYS1jbG91ZC1zdW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZjNCIKfQoKLmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NDMiCn0KCi5mYS1jbG91ZC11cGxvYWQtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODIiCn0KCi5mYS1jbG91ZHNjYWxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODMiCn0KCi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODQiCn0KCi5mYS1jbG91ZHZlcnNpZnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4NSIKfQoKLmZhLWNvY2t0YWlsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjEiCn0KCi5mYS1jb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjEiCn0KCi5mYS1jb2RlLWJyYW5jaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTI2Igp9CgouZmEtY29kZXBlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWNiIgp9CgouZmEtY29kaWVwaWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4NCIKfQoKLmZhLWNvZmZlZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGY0Igp9CgouZmEtY29nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMTMiCn0KCi5mYS1jb2dzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwODUiCn0KCi5mYS1jb2luczpiZWZvcmUgewogICAgY29udGVudDogIlxmNTFlIgp9CgouZmEtY29sdW1uczpiZWZvcmUgewogICAgY29udGVudDogIlxmMGRiIgp9CgouZmEtY29tbWVudDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDc1Igp9CgouZmEtY29tbWVudC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3YSIKfQoKLmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NTEiCn0KCi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRhZCIKfQoKLmZhLWNvbW1lbnQtc2xhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRiMyIKfQoKLmZhLWNvbW1lbnRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwODYiCn0KCi5mYS1jb21tZW50cy1kb2xsYXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY1MyIKfQoKLmZhLWNvbXBhY3QtZGlzYzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTFmIgp9CgouZmEtY29tcGFzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMTRlIgp9CgouZmEtY29tcHJlc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2NiIKfQoKLmZhLWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc4YyIKfQoKLmZhLWNvbmNpZXJnZS1iZWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjIiCn0KCi5mYS1jb25mbHVlbmNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3OGQiCn0KCi5mYS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjBlIgp9CgouZmEtY29udGFvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmQiCn0KCi5mYS1jb29raWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU2MyIKfQoKLmZhLWNvb2tpZS1iaXRlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjQiCn0KCi5mYS1jb3B5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYzUiCn0KCi5mYS1jb3B5cmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmOSIKfQoKLmZhLWNvdWNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0YjgiCn0KCi5mYS1jcGFuZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4OCIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1ZSIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlNyIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlOCIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlOSIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlYSIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlYiIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlYyIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZWQiCn0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZWUiCn0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZWYiCn0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZjAiCn0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmMSIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmMiIKfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmUgewogICAgY29udGVudDogIlxmNGYzIgp9CgouZmEtY3JlZGl0LWNhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5ZCIKfQoKLmZhLWNyaXRpY2FsLXJvbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZjOSIKfQoKLmZhLWNyb3A6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyNSIKfQoKLmZhLWNyb3AtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjUiCn0KCi5mYS1jcm9zczpiZWZvcmUgewogICAgY29udGVudDogIlxmNjU0Igp9CgouZmEtY3Jvc3NoYWlyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMDViIgp9CgouZmEtY3JvdzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTIwIgp9CgouZmEtY3Jvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyMSIKfQoKLmZhLWNzczM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzYyIKfQoKLmZhLWNzczMtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGIiCn0KCi5mYS1jdWJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYjIiCn0KCi5mYS1jdWJlczpiZWZvcmUgewogICAgY29udGVudDogIlxmMWIzIgp9CgouZmEtY3V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYzQiCn0KCi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGMiCn0KCi5mYS1kLWFuZC1kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGQiCn0KCi5mYS1kLWFuZC1kLWJleW9uZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNmNhIgp9CgouZmEtZGFzaGN1YmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxMCIKfQoKLmZhLWRhdGFiYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzAiCn0KCi5mYS1kZWFmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTQiCn0KCi5mYS1kZWxpY2lvdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhNSIKfQoKLmZhLWRlbW9jcmF0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NDciCn0KCi5mYS1kZXBsb3lkb2c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4ZSIKfQoKLmZhLWRlc2twcm86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4ZiIKfQoKLmZhLWRlc2t0b3A6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwOCIKfQoKLmZhLWRldjpiZWZvcmUgewogICAgY29udGVudDogIlxmNmNjIgp9CgouZmEtZGV2aWFudGFydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWJkIgp9CgouZmEtZGhhcm1hY2hha3JhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NTUiCn0KCi5mYS1kaGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc5MCIKfQoKLmZhLWRpYWdub3NlczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDcwIgp9CgouZmEtZGlhc3BvcmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc5MSIKfQoKLmZhLWRpY2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyMiIKfQoKLmZhLWRpY2UtZDIwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2Y2YiCn0KCi5mYS1kaWNlLWQ2OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ZDEiCn0KCi5mYS1kaWNlLWZpdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyMyIKfQoKLmZhLWRpY2UtZm91cjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTI0Igp9CgouZmEtZGljZS1vbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyNSIKfQoKLmZhLWRpY2Utc2l4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MjYiCn0KCi5mYS1kaWNlLXRocmVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MjciCn0KCi5mYS1kaWNlLXR3bzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTI4Igp9CgouZmEtZGlnZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWE2Igp9CgouZmEtZGlnaXRhbC1vY2VhbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzkxIgp9CgouZmEtZGlnaXRhbC10YWNob2dyYXBoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjYiCn0KCi5mYS1kaXJlY3Rpb25zOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZWIiCn0KCi5mYS1kaXNjb3JkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOTIiCn0KCi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM5MyIKfQoKLmZhLWRpdmlkZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTI5Igp9CgouZmEtZGl6enk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU2NyIKfQoKLmZhLWRuYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDcxIgp9CgouZmEtZG9jaHViOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOTQiCn0KCi5mYS1kb2NrZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM5NSIKfQoKLmZhLWRvZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNmQzIgp9CgouZmEtZG9sbGFyLXNpZ246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1NSIKfQoKLmZhLWRvbGx5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NzIiCn0KCi5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NzQiCn0KCi5mYS1kb25hdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRiOSIKfQoKLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MmEiCn0KCi5mYS1kb29yLW9wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyYiIKfQoKLmZhLWRvdC1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5MiIKfQoKLmZhLWRvdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRiYSIKfQoKLmZhLWRvd25sb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMTkiCn0KCi5mYS1kcmFmdDJkaWdpdGFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOTYiCn0KCi5mYS1kcmFmdGluZy1jb21wYXNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NjgiCn0KCi5mYS1kcmFnb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZkNSIKfQoKLmZhLWRyYXctcG9seWdvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWVlIgp9CgouZmEtZHJpYmJibGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3ZCIKfQoKLmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzk3Igp9CgouZmEtZHJvcGJveDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZiIgp9CgouZmEtZHJ1bTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTY5Igp9CgouZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTZhIgp9CgouZmEtZHJ1bXN0aWNrLWJpdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZkNyIKfQoKLmZhLWRydXBhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWE5Igp9CgouZmEtZHVtYmJlbGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ0YiIKfQoKLmZhLWR1bXBzdGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3OTMiCn0KCi5mYS1kdW1wc3Rlci1maXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3OTQiCn0KCi5mYS1kdW5nZW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ZDkiCn0KCi5mYS1keWFsb2c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM5OSIKfQoKLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM5YSIKfQoKLmZhLWViYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmNCIKfQoKLmZhLWVkZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4MiIKfQoKLmZhLWVkaXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA0NCIKfQoKLmZhLWVqZWN0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNTIiCn0KCi5mYS1lbGVtZW50b3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQzMCIKfQoKLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0MSIKfQoKLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0MiIKfQoKLmZhLWVsbG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVmMSIKfQoKLmZhLWVtYmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MjMiCn0KCi5mYS1lbXBpcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkMSIKfQoKLmZhLWVudmVsb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZTAiCn0KCi5mYS1lbnZlbG9wZS1vcGVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjYiCn0KCi5mYS1lbnZlbG9wZS1vcGVuLXRleHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY1OCIKfQoKLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk5Igp9CgouZmEtZW52aXJhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTkiCn0KCi5mYS1lcXVhbHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyYyIKfQoKLmZhLWVyYXNlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJkIgp9CgouZmEtZXJsYW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOWQiCn0KCi5mYS1ldGhlcmV1bTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDJlIgp9CgouZmEtZXRoZXJuZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc5NiIKfQoKLmZhLWV0c3k6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkNyIKfQoKLmZhLWV1cm8tc2lnbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTUzIgp9CgouZmEtZXhjaGFuZ2UtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNjIiCn0KCi5mYS1leGNsYW1hdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJhIgp9CgouZmEtZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNmEiCn0KCi5mYS1leGNsYW1hdGlvbi10cmlhbmdsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDcxIgp9CgouZmEtZXhwYW5kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNjUiCn0KCi5mYS1leHBhbmQtYXJyb3dzLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzFlIgp9CgouZmEtZXhwZWRpdGVkc3NsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyM2UiCn0KCi5mYS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzVkIgp9CgouZmEtZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNjAiCn0KCi5mYS1leWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2ZSIKfQoKLmZhLWV5ZS1kcm9wcGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmIiCn0KCi5mYS1leWUtc2xhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA3MCIKfQoKLmZhLWZhY2Vib29rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwOWEiCn0KCi5mYS1mYWNlYm9vay1mOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOWUiCn0KCi5mYS1mYWNlYm9vay1tZXNzZW5nZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM5ZiIKfQoKLmZhLWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDgyIgp9CgouZmEtZmFudGFzeS1mbGlnaHQtZ2FtZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZkYyIKfQoKLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA0OSIKfQoKLmZhLWZhc3QtZm9yd2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDUwIgp9CgouZmEtZmF4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYWMiCn0KCi5mYS1mZWF0aGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MmQiCn0KCi5mYS1mZWF0aGVyLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTZiIgp9CgouZmEtZmVkZXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc5NyIKfQoKLmZhLWZlZG9yYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNzk4Igp9CgouZmEtZmVtYWxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODIiCn0KCi5mYS1maWdodGVyLWpldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGZiIgp9CgouZmEtZmlnbWE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc5OSIKfQoKLmZhLWZpbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1YiIKfQoKLmZhLWZpbGUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNWMiCn0KCi5mYS1maWxlLWFyY2hpdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjNiIKfQoKLmZhLWZpbGUtYXVkaW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjNyIKfQoKLmZhLWZpbGUtY29kZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWM5Igp9CgouZmEtZmlsZS1jb250cmFjdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTZjIgp9CgouZmEtZmlsZS1jc3Y6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZkZCIKfQoKLmZhLWZpbGUtZG93bmxvYWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU2ZCIKfQoKLmZhLWZpbGUtZXhjZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjMyIKfQoKLmZhLWZpbGUtZXhwb3J0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NmUiCn0KCi5mYS1maWxlLWltYWdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzUiCn0KCi5mYS1maWxlLWltcG9ydDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTZmIgp9CgouZmEtZmlsZS1pbnZvaWNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzAiCn0KCi5mYS1maWxlLWludm9pY2UtZG9sbGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzEiCn0KCi5mYS1maWxlLW1lZGljYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ3NyIKfQoKLmZhLWZpbGUtbWVkaWNhbC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ3OCIKfQoKLmZhLWZpbGUtcGRmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzEiCn0KCi5mYS1maWxlLXBvd2VycG9pbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjNCIKfQoKLmZhLWZpbGUtcHJlc2NyaXB0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzIiCn0KCi5mYS1maWxlLXNpZ25hdHVyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTczIgp9CgouZmEtZmlsZS11cGxvYWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU3NCIKfQoKLmZhLWZpbGUtdmlkZW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjOCIKfQoKLmZhLWZpbGUtd29yZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWMyIgp9CgouZmEtZmlsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTc1Igp9CgouZmEtZmlsbC1kcmlwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzYiCn0KCi5mYS1maWxtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMDgiCn0KCi5mYS1maWx0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBiMCIKfQoKLmZhLWZpbmdlcnByaW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzciCn0KCi5mYS1maXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNmQiCn0KCi5mYS1maXJlLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2U0Igp9CgouZmEtZmlyZS1leHRpbmd1aXNoZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzNCIKfQoKLmZhLWZpcmVmb3g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2OSIKfQoKLmZhLWZpcnN0LWFpZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDc5Igp9CgouZmEtZmlyc3Qtb3JkZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiMCIKfQoKLmZhLWZpcnN0LW9yZGVyLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTBhIgp9CgouZmEtZmlyc3RkcmFmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2ExIgp9CgouZmEtZmlzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTc4Igp9CgouZmEtZmlzdC1yYWlzZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZkZSIKfQoKLmZhLWZsYWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAyNCIKfQoKLmZhLWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMWUiCn0KCi5mYS1mbGFnLXVzYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNzRkIgp9CgouZmEtZmxhc2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjMyIKfQoKLmZhLWZsaWNrcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZlIgp9CgouZmEtZmxpcGJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NGQiCn0KCi5mYS1mbHVzaGVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NzkiCn0KCi5mYS1mbHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQxNyIKfQoKLmZhLWZvbGRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDdiIgp9CgouZmEtZm9sZGVyLW1pbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NWQiCn0KCi5mYS1mb2xkZXItb3BlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDdjIgp9CgouZmEtZm9sZGVyLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY1ZSIKfQoKLmZhLWZvbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAzMSIKfQoKLmZhLWZvbnQtYXdlc29tZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmI0Igp9CgouZmEtZm9udC1hd2Vzb21lLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzVjIgp9CgouZmEtZm9udC1hd2Vzb21lLWZsYWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyNSIKfQoKLmZhLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlNiIKfQoKLmZhLWZvbnRpY29uczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjgwIgp9CgouZmEtZm9udGljb25zLWZpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYTIiCn0KCi5mYS1mb290YmFsbC1iYWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NGUiCn0KCi5mYS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4NiIKfQoKLmZhLWZvcnQtYXdlc29tZS1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhMyIKfQoKLmZhLWZvcnVtYmVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTEiCn0KCi5mYS1mb3J3YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNGUiCn0KCi5mYS1mb3Vyc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODAiCn0KCi5mYS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmM1Igp9CgouZmEtZnJlZWJzZDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2E0Igp9CgouZmEtZnJvZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTJlIgp9CgouZmEtZnJvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExOSIKfQoKLmZhLWZyb3duLW9wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU3YSIKfQoKLmZhLWZ1bGNydW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwYiIKfQoKLmZhLWZ1bm5lbC1kb2xsYXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY2MiIKfQoKLmZhLWZ1dGJvbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWUzIgp9CgouZmEtZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwYyIKfQoKLmZhLWdhbGFjdGljLXNlbmF0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTBkIgp9CgouZmEtZ2FtZXBhZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTFiIgp9CgouZmEtZ2FzLXB1bXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUyZiIKfQoKLmZhLWdhdmVsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZTMiCn0KCi5mYS1nZW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhNSIKfQoKLmZhLWdlbmRlcmxlc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyZCIKfQoKLmZhLWdldC1wb2NrZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2NSIKfQoKLmZhLWdnOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjAiCn0KCi5mYS1nZy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2MSIKfQoKLmZhLWdob3N0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ZTIiCn0KCi5mYS1naWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNmIiCn0KCi5mYS1naWZ0czpiZWZvcmUgewogICAgY29udGVudDogIlxmNzljIgp9CgouZmEtZ2l0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDMiCn0KCi5mYS1naXQtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDIiCn0KCi5mYS1naXRodWI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5YiIKfQoKLmZhLWdpdGh1Yi1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMyIKfQoKLmZhLWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5MiIKfQoKLmZhLWdpdGtyYWtlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmM2E2Igp9CgouZmEtZ2l0bGFiOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTYiCn0KCi5mYS1naXR0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyNiIKfQoKLmZhLWdsYXNzLWNoZWVyczpiZWZvcmUgewogICAgY29udGVudDogIlxmNzlmIgp9CgouZmEtZ2xhc3MtbWFydGluaTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDAwIgp9CgouZmEtZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU3YiIKfQoKLmZhLWdsYXNzLXdoaXNrZXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhMCIKfQoKLmZhLWdsYXNzZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUzMCIKfQoKLmZhLWdsaWRlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTUiCn0KCi5mYS1nbGlkZS1nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTYiCn0KCi5mYS1nbG9iZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGFjIgp9CgouZmEtZ2xvYmUtYWZyaWNhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1N2MiCn0KCi5mYS1nbG9iZS1hbWVyaWNhczpiZWZvcmUgewogICAgY29udGVudDogIlxmNTdkIgp9CgouZmEtZ2xvYmUtYXNpYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTdlIgp9CgouZmEtZ2xvYmUtZXVyb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YTIiCn0KCi5mYS1nb2ZvcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhNyIKfQoKLmZhLWdvbGYtYmFsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDUwIgp9CgouZmEtZ29vZHJlYWRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYTgiCn0KCi5mYS1nb29kcmVhZHMtZzpiZWZvcmUgewogICAgY29udGVudDogIlxmM2E5Igp9CgouZmEtZ29vZ2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYTAiCn0KCi5mYS1nb29nbGUtZHJpdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhYSIKfQoKLmZhLWdvb2dsZS1wbGF5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYWIiCn0KCi5mYS1nb29nbGUtcGx1czpiZWZvcmUgewogICAgY29udGVudDogIlxmMmIzIgp9CgouZmEtZ29vZ2xlLXBsdXMtZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMGQ1Igp9CgouZmEtZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZDQiCn0KCi5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWUiCn0KCi5mYS1nb3B1cmFtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NjQiCn0KCi5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTlkIgp9CgouZmEtZ3JhdGlwYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4NCIKfQoKLmZhLWdyYXY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkNiIKfQoKLmZhLWdyZWF0ZXItdGhhbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTMxIgp9CgouZmEtZ3JlYXRlci10aGFuLWVxdWFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MzIiCn0KCi5mYS1ncmltYWNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1N2YiCn0KCi5mYS1ncmluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ODAiCn0KCi5mYS1ncmluLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTgxIgp9CgouZmEtZ3Jpbi1iZWFtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ODIiCn0KCi5mYS1ncmluLWJlYW0tc3dlYXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4MyIKfQoKLmZhLWdyaW4taGVhcnRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ODQiCn0KCi5mYS1ncmluLXNxdWludDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTg1Igp9CgouZmEtZ3Jpbi1zcXVpbnQtdGVhcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4NiIKfQoKLmZhLWdyaW4tc3RhcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4NyIKfQoKLmZhLWdyaW4tdGVhcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4OCIKfQoKLmZhLWdyaW4tdG9uZ3VlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ODkiCn0KCi5mYS1ncmluLXRvbmd1ZS1zcXVpbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4YSIKfQoKLmZhLWdyaW4tdG9uZ3VlLXdpbms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU4YiIKfQoKLmZhLWdyaW4td2luazpiZWZvcmUgewogICAgY29udGVudDogIlxmNThjIgp9CgouZmEtZ3JpcC1ob3Jpem9udGFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OGQiCn0KCi5mYS1ncmlwLWxpbmVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YTQiCn0KCi5mYS1ncmlwLWxpbmVzLXZlcnRpY2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YTUiCn0KCi5mYS1ncmlwLXZlcnRpY2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OGUiCn0KCi5mYS1ncmlwZmlyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmM2FjIgp9CgouZmEtZ3J1bnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhZCIKfQoKLmZhLWd1aXRhcjpiZWZvcmUgewogICAgY29udGVudDogIlxmN2E2Igp9CgouZmEtZ3VscDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2FlIgp9CgouZmEtaC1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBmZCIKfQoKLmZhLWhhY2tlci1uZXdzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDQiCn0KCi5mYS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNhZiIKfQoKLmZhLWhhY2tlcnJhbms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVmNyIKfQoKLmZhLWhhbW1lcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNmUzIgp9CgouZmEtaGFtc2E6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY2NSIKfQoKLmZhLWhhbmQtaG9sZGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNGJkIgp9CgouZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0YmUiCn0KCi5mYS1oYW5kLWhvbGRpbmctdXNkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0YzAiCn0KCi5mYS1oYW5kLWxpemFyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjU4Igp9CgouZmEtaGFuZC1wYXBlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjU2Igp9CgouZmEtaGFuZC1wZWFjZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjViIgp9CgouZmEtaGFuZC1wb2ludC1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYTciCn0KCi5mYS1oYW5kLXBvaW50LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhNSIKfQoKLmZhLWhhbmQtcG9pbnQtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhNCIKfQoKLmZhLWhhbmQtcG9pbnQtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhNiIKfQoKLmZhLWhhbmQtcG9pbnRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjVhIgp9CgouZmEtaGFuZC1yb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTUiCn0KCi5mYS1oYW5kLXNjaXNzb3JzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTciCn0KCi5mYS1oYW5kLXNwb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTkiCn0KCi5mYS1oYW5kczpiZWZvcmUgewogICAgY29udGVudDogIlxmNGMyIgp9CgouZmEtaGFuZHMtaGVscGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNGM0Igp9CgouZmEtaGFuZHNoYWtlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjUiCn0KCi5mYS1oYW51a2lhaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNmU2Igp9CgouZmEtaGFzaHRhZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjkyIgp9CgouZmEtaGF0LXdpemFyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNmU4Igp9CgouZmEtaGF5a2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NjYiCn0KCi5mYS1oZGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhMCIKfQoKLmZhLWhlYWRpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkYyIKfQoKLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAyNSIKfQoKLmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OGYiCn0KCi5mYS1oZWFkc2V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OTAiCn0KCi5mYS1oZWFydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDA0Igp9CgouZmEtaGVhcnQtYnJva2VuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YTkiCn0KCi5mYS1oZWFydGJlYXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxZSIKfQoKLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUzMyIKfQoKLmZhLWhpZ2hsaWdodGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OTEiCn0KCi5mYS1oaWtpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZlYyIKfQoKLmZhLWhpcHBvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ZWQiCn0KCi5mYS1oaXBzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NTIiCn0KCi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYjAiCn0KCi5mYS1oaXN0b3J5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZGEiCn0KCi5mYS1ob2NrZXktcHVjazpiZWZvcmUgewogICAgY29udGVudDogIlxmNDUzIgp9CgouZmEtaG9sbHktYmVycnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhYSIKfQoKLmZhLWhvbWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAxNSIKfQoKLmZhLWhvb2xpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MjciCn0KCi5mYS1ob3JuYmlsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTkyIgp9CgouZmEtaG9yc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZmMCIKfQoKLmZhLWhvcnNlLWhlYWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhYiIKfQoKLmZhLWhvc3BpdGFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZjgiCn0KCi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ3ZCIKfQoKLmZhLWhvc3BpdGFsLXN5bWJvbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDdlIgp9CgouZmEtaG90LXR1YjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTkzIgp9CgouZmEtaG90ZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU5NCIKfQoKLmZhLWhvdGphcjpiZWZvcmUgewogICAgY29udGVudDogIlxmM2IxIgp9CgouZmEtaG91cmdsYXNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTQiCn0KCi5mYS1ob3VyZ2xhc3MtZW5kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTMiCn0KCi5mYS1ob3VyZ2xhc3MtaGFsZjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjUyIgp9CgouZmEtaG91cmdsYXNzLXN0YXJ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTEiCn0KCi5mYS1ob3VzZS1kYW1hZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZmMSIKfQoKLmZhLWhvdXp6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyN2MiCn0KCi5mYS1ocnl2bmlhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ZjIiCn0KCi5mYS1odG1sNTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTNiIgp9CgouZmEtaHVic3BvdDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2IyIgp9CgouZmEtaS1jdXJzb3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0NiIKfQoKLmZhLWljaWNsZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhZCIKfQoKLmZhLWlkLWJhZGdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzEiCn0KCi5mYS1pZC1jYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzIiCn0KCi5mYS1pZC1jYXJkLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDdmIgp9CgouZmEtaWdsb286YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhZSIKfQoKLmZhLWltYWdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwM2UiCn0KCi5mYS1pbWFnZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwMiIKfQoKLmZhLWltZGI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkOCIKfQoKLmZhLWluYm94OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMWMiCn0KCi5mYS1pbmRlbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAzYyIKfQoKLmZhLWluZHVzdHJ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNzUiCn0KCi5mYS1pbmZpbml0eTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTM0Igp9CgouZmEtaW5mbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTI5Igp9CgouZmEtaW5mby1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA1YSIKfQoKLmZhLWluc3RhZ3JhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZkIgp9CgouZmEtaW50ZXJjb206YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdhZiIKfQoKLmZhLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmIiCn0KCi5mYS1pbnZpc2lvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmN2IwIgp9CgouZmEtaW94aG9zdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA4Igp9CgouZmEtaXRhbGljOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMzMiCn0KCi5mYS1pdHVuZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiNCIKfQoKLmZhLWl0dW5lcy1ub3RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYjUiCn0KCi5mYS1qYXZhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZTQiCn0KCi5mYS1qZWRpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NjkiCn0KCi5mYS1qZWRpLW9yZGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MGUiCn0KCi5mYS1qZW5raW5zOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYjYiCn0KCi5mYS1qaXJhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YjEiCn0KCi5mYS1qb2dldDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2I3Igp9CgouZmEtam9pbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU5NSIKfQoKLmZhLWpvb21sYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWFhIgp9CgouZmEtam91cm5hbC13aGlsbHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY2YSIKfQoKLmZhLWpzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYjgiCn0KCi5mYS1qcy1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiOSIKfQoKLmZhLWpzZmlkZGxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxY2MiCn0KCi5mYS1rYWFiYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjZiIgp9CgouZmEta2FnZ2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZmEiCn0KCi5mYS1rZXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA4NCIKfQoKLmZhLWtleWJhc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmNSIKfQoKLmZhLWtleWJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMWMiCn0KCi5mYS1rZXljZG46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiYSIKfQoKLmZhLWtoYW5kYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjZkIgp9CgouZmEta2lja3N0YXJ0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiYiIKfQoKLmZhLWtpY2tzdGFydGVyLWs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiYyIKfQoKLmZhLWtpc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU5NiIKfQoKLmZhLWtpc3MtYmVhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTk3Igp9CgouZmEta2lzcy13aW5rLWhlYXJ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OTgiCn0KCi5mYS1raXdpLWJpcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUzNSIKfQoKLmZhLWtvcnZ1ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDJmIgp9CgouZmEtbGFuZG1hcms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY2ZiIKfQoKLmZhLWxhbmd1YWdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYWIiCn0KCi5mYS1sYXB0b3A6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwOSIKfQoKLmZhLWxhcHRvcC1jb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZmMiCn0KCi5mYS1sYXJhdmVsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYmQiCn0KCi5mYS1sYXN0Zm06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwMiIKfQoKLmZhLWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwMyIKfQoKLmZhLWxhdWdoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OTkiCn0KCi5mYS1sYXVnaC1iZWFtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OWEiCn0KCi5mYS1sYXVnaC1zcXVpbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU5YiIKfQoKLmZhLWxhdWdoLXdpbms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU5YyIKfQoKLmZhLWxheWVyLWdyb3VwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1ZmQiCn0KCi5mYS1sZWFmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNmMiCn0KCi5mYS1sZWFucHViOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTIiCn0KCi5mYS1sZW1vbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDk0Igp9CgouZmEtbGVzczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDFkIgp9CgouZmEtbGVzcy10aGFuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MzYiCn0KCi5mYS1sZXNzLXRoYW4tZXF1YWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUzNyIKfQoKLmZhLWxldmVsLWRvd24tYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYmUiCn0KCi5mYS1sZXZlbC11cC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNiZiIKfQoKLmZhLWxpZmUtcmluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWNkIgp9CgouZmEtbGlnaHRidWxiOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZWIiCn0KCi5mYS1saW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYzAiCn0KCi5mYS1saW5rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYzEiCn0KCi5mYS1saW5rZWRpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDhjIgp9CgouZmEtbGlua2VkaW4taW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBlMSIKfQoKLmZhLWxpbm9kZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmI4Igp9CgouZmEtbGludXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3YyIKfQoKLmZhLWxpcmEtc2lnbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk1Igp9CgouZmEtbGlzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDNhIgp9CgouZmEtbGlzdC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAyMiIKfQoKLmZhLWxpc3Qtb2w6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjYiIKfQoKLmZhLWxpc3QtdWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjYSIKfQoKLmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjQiCn0KCi5mYS1sb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMjMiCn0KCi5mYS1sb2NrLW9wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjMSIKfQoKLmZhLWxvbmctYXJyb3ctYWx0LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwOSIKfQoKLmZhLWxvbmctYXJyb3ctYWx0LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwYSIKfQoKLmZhLWxvbmctYXJyb3ctYWx0LXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMGIiCn0KCi5mYS1sb25nLWFycm93LWFsdC11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzBjIgp9CgouZmEtbG93LXZpc2lvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmE4Igp9CgouZmEtbHVnZ2FnZS1jYXJ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1OWQiCn0KCi5mYS1seWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYzMiCn0KCi5mYS1tYWdlbnRvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYzQiCn0KCi5mYS1tYWdpYzpiZWZvcmUgewogICAgY29udGVudDogIlxmMGQwIgp9CgouZmEtbWFnbmV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNzYiCn0KCi5mYS1tYWlsLWJ1bGs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY3NCIKfQoKLmZhLW1haWxjaGltcDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTllIgp9CgouZmEtbWFsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTgzIgp9CgouZmEtbWFuZGFsb3JpYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwZiIKfQoKLmZhLW1hcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjc5Igp9CgouZmEtbWFwLW1hcmtlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTlmIgp9CgouZmEtbWFwLW1hcmtlZC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhMCIKfQoKLmZhLW1hcC1tYXJrZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA0MSIKfQoKLmZhLW1hcC1tYXJrZXItYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzYzUiCn0KCi5mYS1tYXAtcGluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNzYiCn0KCi5mYS1tYXAtc2lnbnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3NyIKfQoKLmZhLW1hcmtkb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2MGYiCn0KCi5mYS1tYXJrZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhMSIKfQoKLmZhLW1hcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyMiIKfQoKLmZhLW1hcnMtZG91YmxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMjciCn0KCi5mYS1tYXJzLXN0cm9rZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI5Igp9CgouZmEtbWFycy1zdHJva2UtaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJiIgp9CgouZmEtbWFycy1zdHJva2UtdjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJhIgp9CgouZmEtbWFzazpiZWZvcmUgewogICAgY29udGVudDogIlxmNmZhIgp9CgouZmEtbWFzdG9kb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmNiIKfQoKLmZhLW1heGNkbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTM2Igp9CgouZmEtbWVkYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhMiIKfQoKLmZhLW1lZGFwcHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjNiIKfQoKLmZhLW1lZGl1bTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNhIgp9CgouZmEtbWVkaXVtLW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjNyIKfQoKLmZhLW1lZGtpdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMGZhIgp9CgouZmEtbWVkcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjOCIKfQoKLmZhLW1lZXR1cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmUwIgp9CgouZmEtbWVnYXBvcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhMyIKfQoKLmZhLW1laDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTFhIgp9CgouZmEtbWVoLWJsYW5rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YTQiCn0KCi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YTUiCn0KCi5mYS1tZW1vcnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUzOCIKfQoKLmZhLW1lbmRlbGV5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YjMiCn0KCi5mYS1tZW5vcmFoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NzYiCn0KCi5mYS1tZXJjdXJ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMjMiCn0KCi5mYS1tZXRlb3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc1MyIKfQoKLmZhLW1pY3JvY2hpcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRiIgp9CgouZmEtbWljcm9waG9uZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTMwIgp9CgouZmEtbWljcm9waG9uZS1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjOSIKfQoKLmZhLW1pY3JvcGhvbmUtYWx0LXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MzkiCn0KCi5mYS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzEiCn0KCi5mYS1taWNyb3Njb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2MTAiCn0KCi5mYS1taWNyb3NvZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjYSIKfQoKLmZhLW1pbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNjgiCn0KCi5mYS1taW51cy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA1NiIKfQoKLmZhLW1pbnVzLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQ2Igp9CgouZmEtbWl0dGVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YjUiCn0KCi5mYS1taXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjYiIKfQoKLmZhLW1peGNsb3VkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyODkiCn0KCi5mYS1taXp1bmk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNjYyIKfQoKLmZhLW1vYmlsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTBiIgp9CgouZmEtbW9iaWxlLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2NkIgp9CgouZmEtbW9keDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjg1Igp9CgouZmEtbW9uZXJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZDAiCn0KCi5mYS1tb25leS1iaWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZDYiCn0KCi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2QxIgp9CgouZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1M2EiCn0KCi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1M2IiCn0KCi5mYS1tb25leS1jaGVjazpiZWZvcmUgewogICAgY29udGVudDogIlxmNTNjIgp9CgouZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1M2QiCn0KCi5mYS1tb251bWVudDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWE2Igp9CgouZmEtbW9vbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTg2Igp9CgouZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWE3Igp9CgouZmEtbW9zcXVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NzgiCn0KCi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMWMiCn0KCi5mYS1tb3VudGFpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNmZjIgp9CgouZmEtbW91c2UtcG9pbnRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjQ1Igp9CgouZmEtbXVnLWhvdDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2I2Igp9CgouZmEtbXVzaWM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwMSIKfQoKLmZhLW5hcHN0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNkMiIKfQoKLmZhLW5lb3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjYxMiIKfQoKLmZhLW5ldHdvcmstd2lyZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjZmZiIKfQoKLmZhLW5ldXRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJjIgp9CgouZmEtbmV3c3BhcGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWEiCn0KCi5mYS1uaW1ibHI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhOCIKfQoKLmZhLW5pbnRlbmRvLXN3aXRjaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDE4Igp9CgouZmEtbm9kZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDE5Igp9CgouZmEtbm9kZS1qczpiZWZvcmUgewogICAgY29udGVudDogIlxmM2QzIgp9CgouZmEtbm90LWVxdWFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1M2UiCn0KCi5mYS1ub3Rlcy1tZWRpY2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ODEiCn0KCi5mYS1ucG06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNkNCIKfQoKLmZhLW5zODpiZWZvcmUgewogICAgY29udGVudDogIlxmM2Q1Igp9CgouZmEtbnV0cml0aW9uaXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNkNiIKfQoKLmZhLW9iamVjdC1ncm91cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjQ3Igp9CgouZmEtb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0OCIKfQoKLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2MyIKfQoKLmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjQiCn0KCi5mYS1vaWwtY2FuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2MTMiCn0KCi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUxMCIKfQoKLmZhLW9tOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2NzkiCn0KCi5mYS1vcGVuY2FydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNkIgp9CgouZmEtb3BlbmlkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOWIiCn0KCi5mYS1vcGVyYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjZhIgp9CgouZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNjIgp9CgouZmEtb3NpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MWEiCn0KCi5mYS1vdHRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNzAwIgp9CgouZmEtb3V0ZGVudDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDNiIgp9CgouZmEtcGFnZTQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNkNyIKfQoKLmZhLXBhZ2VsaW5lczpiZWZvcmUgewogICAgY29udGVudDogIlxmMThjIgp9CgouZmEtcGFpbnQtYnJ1c2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmYyIKfQoKLmZhLXBhaW50LXJvbGxlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWFhIgp9CgouZmEtcGFsZXR0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTNmIgp9CgouZmEtcGFsZmVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZDgiCn0KCi5mYS1wYWxsZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ4MiIKfQoKLmZhLXBhcGVyLXBsYW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDgiCn0KCi5mYS1wYXBlcmNsaXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjNiIKfQoKLmZhLXBhcmFjaHV0ZS1ib3g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRjZCIKfQoKLmZhLXBhcmFncmFwaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWRkIgp9CgouZmEtcGFya2luZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTQwIgp9CgouZmEtcGFzc3BvcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVhYiIKfQoKLmZhLXBhc3RhZmFyaWFuaXNtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2N2IiCn0KCi5mYS1wYXN0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGVhIgp9CgouZmEtcGF0cmVvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmM2Q5Igp9CgouZmEtcGF1c2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA0YyIKfQoKLmZhLXBhdXNlLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjhiIgp9CgouZmEtcGF3OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYjAiCn0KCi5mYS1wYXlwYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlZCIKfQoKLmZhLXBlYWNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2N2MiCn0KCi5mYS1wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwNCIKfQoKLmZhLXBlbi1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwNSIKfQoKLmZhLXBlbi1mYW5jeTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWFjIgp9CgouZmEtcGVuLW5pYjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWFkIgp9CgouZmEtcGVuLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTRiIgp9CgouZmEtcGVuY2lsLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzAzIgp9CgouZmEtcGVuY2lsLXJ1bGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YWUiCn0KCi5mYS1wZW5ueS1hcmNhZGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjcwNCIKfQoKLmZhLXBlb3BsZS1jYXJyeTpiZWZvcmUgewogICAgY29udGVudDogIlxmNGNlIgp9CgouZmEtcGVyY2VudDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjk1Igp9CgouZmEtcGVyY2VudGFnZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTQxIgp9CgouZmEtcGVyaXNjb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZGEiCn0KCi5mYS1wZXJzb24tYm9vdGg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc1NiIKfQoKLmZhLXBoYWJyaWNhdG9yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZGIiCn0KCi5mYS1waG9lbml4LWZyYW1ld29yazpiZWZvcmUgewogICAgY29udGVudDogIlxmM2RjIgp9CgouZmEtcGhvZW5peC1zcXVhZHJvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTExIgp9CgouZmEtcGhvbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5NSIKfQoKLmZhLXBob25lLXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZGQiCn0KCi5mYS1waG9uZS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5OCIKfQoKLmZhLXBob25lLXZvbHVtZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmEwIgp9CgouZmEtcGhwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0NTciCn0KCi5mYS1waWVkLXBpcGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYWUiCn0KCi5mYS1waWVkLXBpcGVyLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWE4Igp9CgouZmEtcGllZC1waXBlci1oYXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRlNSIKfQoKLmZhLXBpZWQtcGlwZXItcHA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhNyIKfQoKLmZhLXBpZ2d5LWJhbms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRkMyIKfQoKLmZhLXBpbGxzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ODQiCn0KCi5mYS1waW50ZXJlc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBkMiIKfQoKLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMzEiCn0KCi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZDMiCn0KCi5mYS1wbGFjZS1vZi13b3JzaGlwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2N2YiCn0KCi5mYS1wbGFuZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDcyIgp9CgouZmEtcGxhbmUtYXJyaXZhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWFmIgp9CgouZmEtcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YjAiCn0KCi5mYS1wbGF5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNGIiCn0KCi5mYS1wbGF5LWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQ0Igp9CgouZmEtcGxheXN0YXRpb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNkZiIKfQoKLmZhLXBsdWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlNiIKfQoKLmZhLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA2NyIKfQoKLmZhLXBsdXMtY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNTUiCn0KCi5mYS1wbHVzLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGZlIgp9CgouZmEtcG9kY2FzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmNlIgp9CgouZmEtcG9sbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNjgxIgp9CgouZmEtcG9sbC1oOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2ODIiCn0KCi5mYS1wb286YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmZSIKfQoKLmZhLXBvby1zdG9ybTpiZWZvcmUgewogICAgY29udGVudDogIlxmNzVhIgp9CgouZmEtcG9vcDpiZWZvcmUgewogICAgY29udGVudDogIlxmNjE5Igp9CgouZmEtcG9ydHJhaXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlMCIKfQoKLmZhLXBvdW5kLXNpZ246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1NCIKfQoKLmZhLXBvd2VyLW9mZjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDExIgp9CgouZmEtcHJheTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjgzIgp9CgouZmEtcHJheWluZy1oYW5kczpiZWZvcmUgewogICAgY29udGVudDogIlxmNjg0Igp9CgouZmEtcHJlc2NyaXB0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YjEiCn0KCi5mYS1wcmVzY3JpcHRpb24tYm90dGxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ODUiCn0KCi5mYS1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDg2Igp9CgouZmEtcHJpbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAyZiIKfQoKLmZhLXByb2NlZHVyZXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ4NyIKfQoKLmZhLXByb2R1Y3QtaHVudDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjg4Igp9CgouZmEtcHJvamVjdC1kaWFncmFtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NDIiCn0KCi5mYS1wdXNoZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlMSIKfQoKLmZhLXB1enpsZS1waWVjZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJlIgp9CgouZmEtcHl0aG9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZTIiCn0KCi5mYS1xcTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWQ2Igp9CgouZmEtcXJjb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMjkiCn0KCi5mYS1xdWVzdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTI4Igp9CgouZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNTkiCn0KCi5mYS1xdWlkZGl0Y2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ1OCIKfQoKLmZhLXF1aW5zY2FwZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDU5Igp9CgouZmEtcXVvcmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjNCIKfQoKLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwZCIKfQoKLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMGUiCn0KCi5mYS1xdXJhbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNjg3Igp9CgouZmEtci1wcm9qZWN0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZjciCn0KCi5mYS1yYWRpYXRpb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdiOSIKfQoKLmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdiYSIKfQoKLmZhLXJhaW5ib3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc1YiIKfQoKLmZhLXJhbmRvbTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDc0Igp9CgouZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YmIiCn0KCi5mYS1yYXZlbHJ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDkiCn0KCi5mYS1yZWFjdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDFiIgp9CgouZmEtcmVhY3RldXJvcGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjc1ZCIKfQoKLmZhLXJlYWRtZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNGQ1Igp9CgouZmEtcmViZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkMCIKfQoKLmZhLXJlY2VpcHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU0MyIKfQoKLmZhLXJlY3ljbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiOCIKfQoKLmZhLXJlZC1yaXZlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmM2UzIgp9CgouZmEtcmVkZGl0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYTEiCn0KCi5mYS1yZWRkaXQtYWxpZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4MSIKfQoKLmZhLXJlZGRpdC1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhMiIKfQoKLmZhLXJlZGhhdDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2JjIgp9CgouZmEtcmVkbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMDFlIgp9CgouZmEtcmVkby1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmOSIKfQoKLmZhLXJlZ2lzdGVyZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1ZCIKfQoKLmZhLXJlbnJlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMThiIgp9CgouZmEtcmVwbHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlNSIKfQoKLmZhLXJlcGx5LWFsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTIyIgp9CgouZmEtcmVwbHlkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZTYiCn0KCi5mYS1yZXB1YmxpY2FuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NWUiCn0KCi5mYS1yZXNlYXJjaGdhdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmOCIKfQoKLmZhLXJlc29sdmluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmM2U3Igp9CgouZmEtcmVzdHJvb206YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdiZCIKfQoKLmZhLXJldHdlZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA3OSIKfQoKLmZhLXJldjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWIyIgp9CgouZmEtcmliYm9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZDYiCn0KCi5mYS1yaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MGIiCn0KCi5mYS1yb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMTgiCn0KCi5mYS1yb2JvdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTQ0Igp9CgouZmEtcm9ja2V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzUiCn0KCi5mYS1yb2NrZXRjaGF0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZTgiCn0KCi5mYS1yb2Nrcm1zOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZTkiCn0KCi5mYS1yb3V0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNGQ3Igp9CgouZmEtcnNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwOWUiCn0KCi5mYS1yc3Mtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNDMiCn0KCi5mYS1ydWJsZS1zaWduOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTgiCn0KCi5mYS1ydWxlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTQ1Igp9CgouZmEtcnVsZXItY29tYmluZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU0NiIKfQoKLmZhLXJ1bGVyLWhvcml6b250YWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU0NyIKfQoKLmZhLXJ1bGVyLXZlcnRpY2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NDgiCn0KCi5mYS1ydW5uaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MGMiCn0KCi5mYS1ydXBlZS1zaWduOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTYiCn0KCi5mYS1zYWQtY3J5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YjMiCn0KCi5mYS1zYWQtdGVhcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNWI0Igp9CgouZmEtc2FmYXJpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjciCn0KCi5mYS1zYXNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MWUiCn0KCi5mYS1zYXRlbGxpdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdiZiIKfQoKLmZhLXNhdGVsbGl0ZS1kaXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YzAiCn0KCi5mYS1zYXZlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYzciCn0KCi5mYS1zY2hsaXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlYSIKfQoKLmZhLXNjaG9vbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTQ5Igp9CgouZmEtc2NyZXdkcml2ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU0YSIKfQoKLmZhLXNjcmliZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjhhIgp9CgouZmEtc2Nyb2xsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MGUiCn0KCi5mYS1zZC1jYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YzIiCn0KCi5mYS1zZWFyY2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwMiIKfQoKLmZhLXNlYXJjaC1kb2xsYXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY4OCIKfQoKLmZhLXNlYXJjaC1sb2NhdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNjg5Igp9CgouZmEtc2VhcmNoLW1pbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMTAiCn0KCi5mYS1zZWFyY2gtcGx1czpiZWZvcmUgewogICAgY29udGVudDogIlxmMDBlIgp9CgouZmEtc2VhcmNoZW5naW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlYiIKfQoKLmZhLXNlZWRsaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZDgiCn0KCi5mYS1zZWxsY2FzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRhIgp9CgouZmEtc2VsbHN5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTMiCn0KCi5mYS1zZXJ2ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzMyIKfQoKLmZhLXNlcnZpY2VzdGFjazpiZWZvcmUgewogICAgY29udGVudDogIlxmM2VjIgp9CgouZmEtc2hhcGVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2MWYiCn0KCi5mYS1zaGFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMDY0Igp9CgouZmEtc2hhcmUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTAiCn0KCi5mYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTEiCn0KCi5mYS1zaGFyZS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0ZCIKfQoKLmZhLXNoZWtlbC1zaWduOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMGIiCn0KCi5mYS1zaGllbGQtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZWQiCn0KCi5mYS1zaGlwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMWEiCn0KCi5mYS1zaGlwcGluZy1mYXN0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0OGIiCn0KCi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxNCIKfQoKLmZhLXNob2UtcHJpbnRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NGIiCn0KCi5mYS1zaG9wcGluZy1iYWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5MCIKfQoKLmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjkxIgp9CgouZmEtc2hvcHBpbmctY2FydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDdhIgp9CgouZmEtc2hvcHdhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjViNSIKfQoKLmZhLXNob3dlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmNjIgp9CgouZmEtc2h1dHRsZS12YW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjViNiIKfQoKLmZhLXNpZ246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRkOSIKfQoKLmZhLXNpZ24taW4tYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjYiCn0KCi5mYS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTciCn0KCi5mYS1zaWduLW91dC1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmNSIKfQoKLmZhLXNpZ25hbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDEyIgp9CgouZmEtc2lnbmF0dXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YjciCn0KCi5mYS1zaW0tY2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2M0Igp9CgouZmEtc2ltcGx5YnVpbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxNSIKfQoKLmZhLXNpc3RyaXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNlZSIKfQoKLmZhLXNpdGVtYXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBlOCIKfQoKLmZhLXNpdGg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUxMiIKfQoKLmZhLXNrYXRpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdjNSIKfQoKLmZhLXNrZXRjaDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2M2Igp9CgouZmEtc2tpaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3YzkiCn0KCi5mYS1za2lpbmctbm9yZGljOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3Y2EiCn0KCi5mYS1za3VsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTRjIgp9CgouZmEtc2t1bGwtY3Jvc3Nib25lczpiZWZvcmUgewogICAgY29udGVudDogIlxmNzE0Igp9CgouZmEtc2t5YXRsYXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxNiIKfQoKLmZhLXNreXBlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxN2UiCn0KCi5mYS1zbGFjazpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk4Igp9CgouZmEtc2xhY2staGFzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2VmIgp9CgouZmEtc2xhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjcxNSIKfQoKLmZhLXNsZWlnaDpiZWZvcmUgewogICAgY29udGVudDogIlxmN2NjIgp9CgouZmEtc2xpZGVycy1oOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZGUiCn0KCi5mYS1zbGlkZXNoYXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTciCn0KCi5mYS1zbWlsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTE4Igp9CgouZmEtc21pbGUtYmVhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWI4Igp9CgouZmEtc21pbGUtd2luazpiZWZvcmUgewogICAgY29udGVudDogIlxmNGRhIgp9CgouZmEtc21vZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNzVmIgp9CgouZmEtc21va2luZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNDhkIgp9CgouZmEtc21va2luZy1iYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjU0ZCIKfQoKLmZhLXNtczpiZWZvcmUgewogICAgY29udGVudDogIlxmN2NkIgp9CgouZmEtc25hcGNoYXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhYiIKfQoKLmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYWMiCn0KCi5mYS1zbmFwY2hhdC1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhZCIKfQoKLmZhLXNub3dib2FyZGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmN2NlIgp9CgouZmEtc25vd2ZsYWtlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZGMiCn0KCi5mYS1zbm93bWFuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ZDAiCn0KCi5mYS1zbm93cGxvdzpiZWZvcmUgewogICAgY29udGVudDogIlxmN2QyIgp9CgouZmEtc29ja3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY5NiIKfQoKLmZhLXNvbGFyLXBhbmVsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YmEiCn0KCi5mYS1zb3J0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZGMiCn0KCi5mYS1zb3J0LWFscGhhLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1ZCIKfQoKLmZhLXNvcnQtYWxwaGEtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1ZSIKfQoKLmZhLXNvcnQtYW1vdW50LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2MCIKfQoKLmZhLXNvcnQtYW1vdW50LXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjEiCn0KCi5mYS1zb3J0LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBkZCIKfQoKLmZhLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjIiCn0KCi5mYS1zb3J0LW51bWVyaWMtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2MyIKfQoKLmZhLXNvcnQtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBkZSIKfQoKLmZhLXNvdW5kY2xvdWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiZSIKfQoKLmZhLXNvdXJjZXRyZWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdkMyIKfQoKLmZhLXNwYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWJiIgp9CgouZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk3Igp9CgouZmEtc3BlYWthcDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2YzIgp9CgouZmEtc3BpZGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MTciCn0KCi5mYS1zcGlubmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMTAiCn0KCi5mYS1zcGxvdGNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YmMiCn0KCi5mYS1zcG90aWZ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYmMiCn0KCi5mYS1zcHJheS1jYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjViZCIKfQoKLmZhLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGM4Igp9CgouZmEtc3F1YXJlLWZ1bGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ1YyIKfQoKLmZhLXNxdWFyZS1yb290LWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNjk4Igp9CgouZmEtc3F1YXJlc3BhY2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjViZSIKfQoKLmZhLXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOGQiCn0KCi5mYS1zdGFjay1vdmVyZmxvdzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZjIgp9CgouZmEtc3RhbXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjViZiIKfQoKLmZhLXN0YXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwNSIKfQoKLmZhLXN0YXItYW5kLWNyZXNjZW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2OTkiCn0KCi5mYS1zdGFyLWhhbGY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA4OSIKfQoKLmZhLXN0YXItaGFsZi1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjMCIKfQoKLmZhLXN0YXItb2YtZGF2aWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjY5YSIKfQoKLmZhLXN0YXItb2YtbGlmZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjIxIgp9CgouZmEtc3RheWxpbmtlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2Y1Igp9CgouZmEtc3RlYW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiNiIKfQoKLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI3Igp9CgouZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZjYiCn0KCi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNDgiCn0KCi5mYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA1MSIKfQoKLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZjEiCn0KCi5mYS1zdGlja2VyLW11bGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNmNyIKfQoKLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDkiCn0KCi5mYS1zdG9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNGQiCn0KCi5mYS1zdG9wLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjhkIgp9CgouZmEtc3RvcHdhdGNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjIiCn0KCi5mYS1zdG9yZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTRlIgp9CgouZmEtc3RvcmUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NGYiCn0KCi5mYS1zdHJhdmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyOCIKfQoKLmZhLXN0cmVhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmNTUwIgp9CgouZmEtc3RyZWV0LXZpZXc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxZCIKfQoKLmZhLXN0cmlrZXRocm91Z2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjYyIKfQoKLmZhLXN0cmlwZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDI5Igp9CgouZmEtc3RyaXBlLXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQyYSIKfQoKLmZhLXN0cm9vcHdhZmVsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NTEiCn0KCi5mYS1zdHVkaW92aW5hcmk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNmOCIKfQoKLmZhLXN0dW1ibGV1cG9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYTQiCn0KCi5mYS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhMyIKfQoKLmZhLXN1YnNjcmlwdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJjIgp9CgouZmEtc3Vid2F5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMzkiCn0KCi5mYS1zdWl0Y2FzZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMGYyIgp9CgouZmEtc3VpdGNhc2Utcm9sbGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNWMxIgp9CgouZmEtc3VuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODUiCn0KCi5mYS1zdXBlcnBvd2VyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRkIgp9CgouZmEtc3VwZXJzY3JpcHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyYiIKfQoKLmZhLXN1cHBsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmM2Y5Igp9CgouZmEtc3VycHJpc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjMiIKfQoKLmZhLXN1c2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdkNiIKfQoKLmZhLXN3YXRjaGJvb2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjMyIKfQoKLmZhLXN3aW1tZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjNCIKfQoKLmZhLXN3aW1taW5nLXBvb2w6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjNSIKfQoKLmZhLXN5bmFnb2d1ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjliIgp9CgouZmEtc3luYzpiZWZvcmUgewogICAgY29udGVudDogIlxmMDIxIgp9CgouZmEtc3luYy1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmMSIKfQoKLmZhLXN5cmluZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ4ZSIKfQoKLmZhLXRhYmxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwY2UiCn0KCi5mYS10YWJsZS10ZW5uaXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ1ZCIKfQoKLmZhLXRhYmxldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTBhIgp9CgouZmEtdGFibGV0LWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmM2ZhIgp9CgouZmEtdGFibGV0czpiZWZvcmUgewogICAgY29udGVudDogIlxmNDkwIgp9CgouZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjNmZCIKfQoKLmZhLXRhZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMDJiIgp9CgouZmEtdGFnczpiZWZvcmUgewogICAgY29udGVudDogIlxmMDJjIgp9CgouZmEtdGFwZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNGRiIgp9CgouZmEtdGFza3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBhZSIKfQoKLmZhLXRheGk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiYSIKfQoKLmZhLXRlYW1zcGVhazpiZWZvcmUgewogICAgY29udGVudDogIlxmNGY5Igp9CgouZmEtdGVldGg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjYyZSIKfQoKLmZhLXRlZXRoLW9wZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjYyZiIKfQoKLmZhLXRlbGVncmFtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzYiCn0KCi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUgewogICAgY29udGVudDogIlxmM2ZlIgp9CgouZmEtdGVtcGVyYXR1cmUtaGlnaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNzY5Igp9CgouZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NmIiCn0KCi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDUiCn0KCi5mYS10ZW5nZTpiZWZvcmUgewogICAgY29udGVudDogIlxmN2Q3Igp9CgouZmEtdGVybWluYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyMCIKfQoKLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMzQiCn0KCi5mYS10ZXh0LXdpZHRoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMzUiCn0KCi5mYS10aDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDBhIgp9CgouZmEtdGgtbGFyZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwOSIKfQoKLmZhLXRoLWxpc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwYiIKfQoKLmZhLXRoZS1yZWQteWV0aTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjlkIgp9CgouZmEtdGhlYXRlci1tYXNrczpiZWZvcmUgewogICAgY29udGVudDogIlxmNjMwIgp9CgouZmEtdGhlbWVjbzpiZWZvcmUgewogICAgY29udGVudDogIlxmNWM2Igp9CgouZmEtdGhlbWVpc2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjIiCn0KCi5mYS10aGVybW9tZXRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNDkxIgp9CgouZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjYiIKfQoKLmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjNyIKfQoKLmZhLXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjOSIKfQoKLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjYSIKfQoKLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzgiCn0KCi5mYS10aGluay1wZWFrczpiZWZvcmUgewogICAgY29udGVudDogIlxmNzMxIgp9CgouZmEtdGh1bWJzLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2NSIKfQoKLmZhLXRodW1icy11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTY0Igp9CgouZmEtdGh1bWJ0YWNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwOGQiCn0KCi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzZmYiCn0KCi5mYS10aW1lczpiZWZvcmUgewogICAgY29udGVudDogIlxmMDBkIgp9CgouZmEtdGltZXMtY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNTciCn0KCi5mYS10aW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwNDMiCn0KCi5mYS10aW50LXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YzciCn0KCi5mYS10aXJlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWM4Igp9CgouZmEtdG9nZ2xlLW9mZjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA0Igp9CgouZmEtdG9nZ2xlLW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMDUiCn0KCi5mYS10b2lsZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdkOCIKfQoKLmZhLXRvaWxldC1wYXBlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNzFlIgp9CgouZmEtdG9vbGJveDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTUyIgp9CgouZmEtdG9vbHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdkOSIKfQoKLmZhLXRvb3RoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1YzkiCn0KCi5mYS10b3JhaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNmEwIgp9CgouZmEtdG9yaWktZ2F0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNmExIgp9CgouZmEtdHJhY3RvcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNzIyIgp9CgouZmEtdHJhZGUtZmVkZXJhdGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTEzIgp9CgouZmEtdHJhZGVtYXJrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNWMiCn0KCi5mYS10cmFmZmljLWxpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2MzciCn0KCi5mYS10cmFpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM4Igp9CgouZmEtdHJhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmN2RhIgp9CgouZmEtdHJhbnNnZW5kZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyNCIKfQoKLmZhLXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI1Igp9CgouZmEtdHJhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmOCIKfQoKLmZhLXRyYXNoLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmVkIgp9CgouZmEtdHJlZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWJiIgp9CgouZmEtdHJlbGxvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODEiCn0KCi5mYS10cmlwYWR2aXNvcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjYyIgp9CgouZmEtdHJvcGh5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwOTEiCn0KCi5mYS10cnVjazpiZWZvcmUgewogICAgY29udGVudDogIlxmMGQxIgp9CgouZmEtdHJ1Y2stbG9hZGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNGRlIgp9CgouZmEtdHJ1Y2stbW9uc3RlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNjNiIgp9CgouZmEtdHJ1Y2stbW92aW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZGYiCn0KCi5mYS10cnVjay1waWNrdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjYzYyIKfQoKLmZhLXRzaGlydDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTUzIgp9CgouZmEtdHR5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTQiCn0KCi5mYS10dW1ibHI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3MyIKfQoKLmZhLXR1bWJsci1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3NCIKfQoKLmZhLXR2OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmMiCn0KCi5mYS10d2l0Y2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlOCIKfQoKLmZhLXR3aXR0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5OSIKfQoKLmZhLXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwODEiCn0KCi5mYS10eXBvMzpiZWZvcmUgewogICAgY29udGVudDogIlxmNDJiIgp9CgouZmEtdWJlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmNDAyIgp9CgouZmEtdWJ1bnR1OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ZGYiCn0KCi5mYS11aWtpdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDAzIgp9CgouZmEtdW1icmVsbGE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBlOSIKfQoKLmZhLXVtYnJlbGxhLWJlYWNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1Y2EiCn0KCi5mYS11bmRlcmxpbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBjZCIKfQoKLmZhLXVuZG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjBlMiIKfQoKLmZhLXVuZG8tYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZWEiCn0KCi5mYS11bmlyZWdpc3RyeTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDA0Igp9CgouZmEtdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjlhIgp9CgouZmEtdW5pdmVyc2l0eTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTljIgp9CgouZmEtdW5saW5rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjciCn0KCi5mYS11bmxvY2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjA5YyIKfQoKLmZhLXVubG9jay1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzZSIKfQoKLmZhLXVudGFwcGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQwNSIKfQoKLmZhLXVwbG9hZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDkzIgp9CgouZmEtdXBzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ZTAiCn0KCi5mYS11c2I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4NyIKfQoKLmZhLXVzZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjAwNyIKfQoKLmZhLXVzZXItYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MDYiCn0KCi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNGZhIgp9CgouZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmYiIKfQoKLmZhLXVzZXItY2hlY2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjRmYyIKfQoKLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYmQiCn0KCi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZmQiCn0KCi5mYS11c2VyLWNvZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNGZlIgp9CgouZmEtdXNlci1lZGl0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZmYiCn0KCi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwMCIKfQoKLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwMSIKfQoKLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNzI4Igp9CgouZmEtdXNlci1sb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MDIiCn0KCi5mYS11c2VyLW1kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZjAiCn0KCi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MDMiCn0KCi5mYS11c2VyLW5pbmphOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MDQiCn0KCi5mYS11c2VyLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzNCIKfQoKLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMWIiCn0KCi5mYS11c2VyLXNoaWVsZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTA1Igp9CgouZmEtdXNlci1zbGFzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNTA2Igp9CgouZmEtdXNlci10YWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjUwNyIKfQoKLmZhLXVzZXItdGllOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MDgiCn0KCi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMzUiCn0KCi5mYS11c2VyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMGMwIgp9CgouZmEtdXNlcnMtY29nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1MDkiCn0KCi5mYS11c3BzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3ZTEiCn0KCi5mYS11c3N1bm5haDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDA3Igp9CgouZmEtdXRlbnNpbC1zcG9vbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmU1Igp9CgouZmEtdXRlbnNpbHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlNyIKfQoKLmZhLXZhYWRpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNDA4Igp9CgouZmEtdmVjdG9yLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNWNiIgp9CgouZmEtdmVudXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyMSIKfQoKLmZhLXZlbnVzLWRvdWJsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI2Igp9CgouZmEtdmVudXMtbWFyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI4Igp9CgouZmEtdmlhY29pbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM3Igp9CgouZmEtdmlhZGVvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTkiCn0KCi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYWEiCn0KCi5mYS12aWFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0OTIiCn0KCi5mYS12aWFsczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDkzIgp9CgouZmEtdmliZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQwOSIKfQoKLmZhLXZpZGVvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwM2QiCn0KCi5mYS12aWRlby1zbGFzaDpiZWZvcmUgewogICAgY29udGVudDogIlxmNGUyIgp9CgouZmEtdmloYXJhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY2YTciCn0KCi5mYS12aW1lbzpiZWZvcmUgewogICAgY29udGVudDogIlxmNDBhIgp9CgouZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOTQiCn0KCi5mYS12aW1lby12OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyN2QiCn0KCi5mYS12aW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxY2EiCn0KCi5mYS12azpiZWZvcmUgewogICAgY29udGVudDogIlxmMTg5Igp9CgouZmEtdm52OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MGIiCn0KCi5mYS12b2xsZXliYWxsLWJhbGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ1ZiIKfQoKLmZhLXZvbHVtZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMjciCn0KCi5mYS12b2x1bWUtbXV0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNmE5Igp9CgouZmEtdm9sdW1lLW9mZjpiZWZvcmUgewogICAgY29udGVudDogIlxmMDI2Igp9CgouZmEtdm9sdW1lLXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwMjgiCn0KCi5mYS12b3RlLXllYTpiZWZvcmUgewogICAgY29udGVudDogIlxmNzcyIgp9CgouZmEtdnItY2FyZGJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MjkiCn0KCi5mYS12dWVqczpiZWZvcmUgewogICAgY29udGVudDogIlxmNDFmIgp9CgouZmEtd2Fsa2luZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNTU0Igp9CgouZmEtd2FsbGV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1NTUiCn0KCi5mYS13YXJlaG91c2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ5NCIKfQoKLmZhLXdhdGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3NzMiCn0KCi5mYS13ZWVibHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjVjYyIKfQoKLmZhLXdlaWJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOGEiCn0KCi5mYS13ZWlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQ5NiIKfQoKLmZhLXdlaWdodC1oYW5naW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1Y2QiCn0KCi5mYS13ZWl4aW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkNyIKfQoKLmZhLXdoYXRzYXBwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMzIiCn0KCi5mYS13aGF0c2FwcC1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQwYyIKfQoKLmZhLXdoZWVsY2hhaXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5MyIKfQoKLmZhLXdobWNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MGQiCn0KCi5mYS13aWZpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWIiCn0KCi5mYS13aWtpcGVkaWEtdzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjY2Igp9CgouZmEtd2luZDpiZWZvcmUgewogICAgY29udGVudDogIlxmNzJlIgp9CgouZmEtd2luZG93LWNsb3NlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MTAiCn0KCi5mYS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkMCIKfQoKLmZhLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmQxIgp9CgouZmEtd2luZG93LXJlc3RvcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkMiIKfQoKLmZhLXdpbmRvd3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3YSIKfQoKLmZhLXdpbmUtYm90dGxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY3MmYiCn0KCi5mYS13aW5lLWdsYXNzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0ZTMiCn0KCi5mYS13aW5lLWdsYXNzLWFsdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNWNlIgp9CgouZmEtd2l4OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY1Y2YiCn0KCi5mYS13aXphcmRzLW9mLXRoZS1jb2FzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmNzMwIgp9CgouZmEtd29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmUgewogICAgY29udGVudDogIlxmNTE0Igp9CgouZmEtd29uLXNpZ246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1OSIKfQoKLmZhLXdvcmRwcmVzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMTlhIgp9CgouZmEtd29yZHByZXNzLXNpbXBsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDExIgp9CgouZmEtd3BiZWdpbm5lcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjk3Igp9CgouZmEtd3BleHBsb3JlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRlIgp9CgouZmEtd3Bmb3JtczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjk4Igp9CgouZmEtd3ByZXNzcjpiZWZvcmUgewogICAgY29udGVudDogIlxmM2U0Igp9CgouZmEtd3JlbmNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwYWQiCn0KCi5mYS14LXJheTpiZWZvcmUgewogICAgY29udGVudDogIlxmNDk3Igp9CgouZmEteGJveDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDEyIgp9CgouZmEteGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTY4Igp9CgouZmEteGluZy1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2OSIKfQoKLmZhLXktY29tYmluYXRvcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNiIgp9CgouZmEteWFob286YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5ZSIKfQoKLmZhLXlhbmRleDpiZWZvcmUgewogICAgY29udGVudDogIlxmNDEzIgp9CgouZmEteWFuZGV4LWludGVybmF0aW9uYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjQxNCIKfQoKLmZhLXlhcm46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjdlMyIKfQoKLmZhLXllbHA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlOSIKfQoKLmZhLXllbi1zaWduOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTciCn0KCi5mYS15aW4teWFuZzpiZWZvcmUgewogICAgY29udGVudDogIlxmNmFkIgp9CgouZmEteW9hc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiMSIKfQoKLmZhLXlvdXR1YmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2NyIKfQoKLmZhLXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGY0MzEiCn0KCi5mYS16aGlodTpiZWZvcmUgewogICAgY29udGVudDogIlxmNjNmIgp9Cgouc3Itb25seSB7CiAgICBib3JkZXI6IDA7CiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOwogICAgaGVpZ2h0OiAxcHg7CiAgICBtYXJnaW46IC0xcHg7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgcGFkZGluZzogMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxcHgKfQoKLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwKLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHsKICAgIGNsaXA6IGF1dG87CiAgICBoZWlnaHQ6IGF1dG87CiAgICBtYXJnaW46IDA7CiAgICBvdmVyZmxvdzogdmlzaWJsZTsKICAgIHBvc2l0aW9uOiBzdGF0aWM7CiAgICB3aWR0aDogYXV0bwp9CgpAZm9udC1mYWNlIHsKICAgIGZvbnQtZmFtaWx5OiAiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBzcmM6IHVybCguLi9mb250cy9mYS1icmFuZHMtNDAwLmVvdCk7CiAgICBzcmM6IHVybCguLi9mb250cy9mYS1icmFuZHMtNDAwZDQxZGQ0MWQuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLCB1cmwoLi4vZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoLi4vZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmKSBmb3JtYXQoIndvZmYiKSwgdXJsKC4uL2ZvbnRzL2ZhLWJyYW5kcy00MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksIHVybCguLi9mb250cy9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKQp9CgouZmFiIHsKICAgIGZvbnQtZmFtaWx5OiAiRm9udCBBd2Vzb21lIDUgQnJhbmRzIgp9CgpAZm9udC1mYWNlIHsKICAgIGZvbnQtZmFtaWx5OiAiRm9udCBBd2Vzb21lIDUgRnJlZSI7CiAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgc3JjOiB1cmwoLi4vZm9udHMvZmEtcmVndWxhci00MDAuZW90KTsKICAgIHNyYzogdXJsKC4uL2ZvbnRzL2ZhLXJlZ3VsYXItNDAwZDQxZGQ0MWQuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLCB1cmwoLi4vZm9udHMvZmEtcmVndWxhci00MDAud29mZjIpIGZvcm1hdCgid29mZjIiKSwgdXJsKC4uL2ZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYpIGZvcm1hdCgid29mZiIpLCB1cmwoLi4vZm9udHMvZmEtcmVndWxhci00MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksIHVybCguLi9mb250cy9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWUpIGZvcm1hdCgic3ZnIikKfQoKLmZhciB7CiAgICBmb250LXdlaWdodDogNDAwCn0KCkBmb250LWZhY2UgewogICAgZm9udC1mYW1pbHk6ICJGb250IEF3ZXNvbWUgNSBGcmVlIjsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtd2VpZ2h0OiA5MDA7CiAgICBzcmM6IHVybCguLi9mb250cy9mYS1zb2xpZC05MDAuZW90KTsKICAgIHNyYzogdXJsKC4uL2ZvbnRzL2ZhLXNvbGlkLTkwMGQ0MWRkNDFkLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSwgdXJsKC4uL2ZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoLi4vZm9udHMvZmEtc29saWQtOTAwLndvZmYpIGZvcm1hdCgid29mZiIpLCB1cmwoLi4vZm9udHMvZmEtc29saWQtOTAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLCB1cmwoLi4vZm9udHMvZmEtc29saWQtOTAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKQp9CgouZmEsCi5mYXIsCi5mYXMgewogICAgZm9udC1mYW1pbHk6ICJGb250IEF3ZXNvbWUgNSBGcmVlIgp9CgouZmEsCi5mYXMgewogICAgZm9udC13ZWlnaHQ6IDkwMAp9CgpAZm9udC1mYWNlIHsKICAgIGZvbnQtZmFtaWx5OiBmb250ZWxsbzsKICAgIHNyYzogdXJsKC4uL2ZvbnRzL2ZvbnRlbGxvYzVlNmM1ZTYuaHRtbD82ODE0NzQxNSk7CiAgICBzcmM6IHVybCguLi9mb250cy9mb250ZWxsb2M1ZTZjNWU2Lmh0bWw/NjgxNDc0MTUjaWVmaXgpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKC4uL2ZvbnRzL2ZvbnRlbGxvYzVlNi0yYzVlNi5odG1sPzY4MTQ3NDE1KSBmb3JtYXQoJ3dvZmYyJyksIHVybCguLi9mb250cy9mb250ZWxsb2M1ZTYtM2M1ZTYuaHRtbD82ODE0NzQxNSkgZm9ybWF0KCd3b2ZmJyksIHVybCguLi9mb250cy9mb250ZWxsb2M1ZTYtNGM1ZTYuaHRtbD82ODE0NzQxNSkgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoLi4vZm9udHMvZm9udGVsbG9jNWU2LTVjNWU2Lmh0bWw/NjgxNDc0MTUjZm9udGVsbG8pIGZvcm1hdCgnc3ZnJyk7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZm9udC1zdHlsZTogbm9ybWFsCn0KCltjbGFzcyo9IiBpY29uLSJdOmJlZm9yZSwKW2NsYXNzXj1pY29uLV06YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiBmb250ZWxsbzsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBzcGVhazogbm9uZTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDsKICAgIHdpZHRoOiAxZW07CiAgICBtYXJnaW4tcmlnaHQ6IC4yZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDsKICAgIHRleHQtdHJhbnNmb3JtOiBub25lOwogICAgbGluZS1oZWlnaHQ6IDFlbTsKICAgIG1hcmdpbi1sZWZ0OiAuMmVtOwogICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlCn0KCi5pY29uLXR3aXR0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZjA5OScKfQoKLmljb24tZmFjZWJvb2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZjA5YScKfQoKLmljb24tZ3BsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZjBkNScKfQoKLmljb24tbGlua2VkaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZjBlMScKfQoKLmljb24tYXBwbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZjE3OScKfQoKLmljb24td2luZG93czpiZWZvcmUgewogICAgY29udGVudDogJ1xmMTdhJwp9CgovKiEgalF1ZXJ5IFVJIC0gdjEuMTIuMSAtIDIwMTktMDctMjIKKiBodHRwOi8vanF1ZXJ5dWkuY29tCiogSW5jbHVkZXM6IGNvcmUuY3NzLCBkYXRlcGlja2VyLmNzcywgc2xpZGVyLmNzcwoqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzOyBMaWNlbnNlZCBNSVQgKi8KCi51aS1oZWxwZXItaGlkZGVuIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7CiAgICBib3JkZXI6IDA7CiAgICBjbGlwOiByZWN0KDAgMCAwIDApOwogICAgaGVpZ2h0OiAxcHg7CiAgICBtYXJnaW46IC0xcHg7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgcGFkZGluZzogMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxcHgKfQoKLnVpLWhlbHBlci1yZXNldCB7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwOwogICAgYm9yZGVyOiAwOwogICAgb3V0bGluZTogMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjM7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICBmb250LXNpemU6IDEwMCU7CiAgICBsaXN0LXN0eWxlOiBub25lCn0KCi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIsCi51aS1oZWxwZXItY2xlYXJmaXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgZGlzcGxheTogdGFibGU7CiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlCn0KCi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIgewogICAgY2xlYXI6IGJvdGgKfQoKLnVpLWhlbHBlci16Zml4IHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIG9wYWNpdHk6IDA7CiAgICBmaWx0ZXI6IEFscGhhKE9wYWNpdHk9MCkKfQoKLnVpLWZyb250IHsKICAgIHotaW5kZXg6IDEwMAp9CgoudWktc3RhdGUtZGlzYWJsZWQgewogICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZQp9CgoudWktaWNvbiB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgbWFyZ2luLXRvcDogLS4yNWVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQKfQoKLnVpLXdpZGdldC1pY29uLWJsb2NrIHsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgZGlzcGxheTogYmxvY2sKfQoKLnVpLXdpZGdldC1vdmVybGF5IHsKICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJQp9CgoudWktZGF0ZXBpY2tlciB7CiAgICB3aWR0aDogMTdlbTsKICAgIHBhZGRpbmc6IC4yZW0gLjJlbSAwOwogICAgZGlzcGxheTogbm9uZQp9CgoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgcGFkZGluZzogLjJlbSAwCn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQsCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAycHg7CiAgICB3aWR0aDogMS44ZW07CiAgICBoZWlnaHQ6IDEuOGVtCn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIsCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIgewogICAgdG9wOiAxcHgKfQoKLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7CiAgICBsZWZ0OiAycHgKfQoKLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7CiAgICByaWdodDogMnB4Cn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIgewogICAgbGVmdDogMXB4Cn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIgewogICAgcmlnaHQ6IDFweAp9CgoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHNwYW4sCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgc3BhbiB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgdG9wOiA1MCU7CiAgICBtYXJnaW4tdG9wOiAtOHB4Cn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHsKICAgIG1hcmdpbjogMCAyLjNlbTsKICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3QgewogICAgZm9udC1zaXplOiAxZW07CiAgICBtYXJnaW46IDFweCAwCn0KCi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLAoudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHsKICAgIHdpZHRoOiA0NSUKfQoKLnVpLWRhdGVwaWNrZXIgdGFibGUgewogICAgd2lkdGg6IDEwMCU7CiAgICBmb250LXNpemU6IC45ZW07CiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwogICAgbWFyZ2luOiAwIDAgLjRlbQp9CgoudWktZGF0ZXBpY2tlciB0aCB7CiAgICBwYWRkaW5nOiAuN2VtIC4zZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgYm9yZGVyOiAwCn0KCi51aS1kYXRlcGlja2VyIHRkIHsKICAgIGJvcmRlcjogMDsKICAgIHBhZGRpbmc6IDFweAp9CgoudWktZGF0ZXBpY2tlciB0ZCBhLAoudWktZGF0ZXBpY2tlciB0ZCBzcGFuIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogLjJlbTsKICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lCn0KCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgewogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgIG1hcmdpbjogLjdlbSAwIDAgMDsKICAgIHBhZGRpbmc6IDAgLjJlbTsKICAgIGJvcmRlci1sZWZ0OiAwOwogICAgYm9yZGVyLXJpZ2h0OiAwOwogICAgYm9yZGVyLWJvdHRvbTogMAp9CgoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7CiAgICBmbG9hdDogcmlnaHQ7CiAgICBtYXJnaW46IC41ZW0gLjJlbSAuNGVtOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW0gLjZlbTsKICAgIHdpZHRoOiBhdXRvOwogICAgb3ZlcmZsb3c6IHZpc2libGUKfQoKLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50IHsKICAgIGZsb2F0OiBsZWZ0Cn0KCi51aS1kYXRlcGlja2VyLnVpLWRhdGVwaWNrZXItbXVsdGkgewogICAgd2lkdGg6IGF1dG8KfQoKLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgewogICAgZmxvYXQ6IGxlZnQKfQoKLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgdGFibGUgewogICAgd2lkdGg6IDk1JTsKICAgIG1hcmdpbjogMCBhdXRvIC40ZW0KfQoKLnVpLWRhdGVwaWNrZXItbXVsdGktMiAudWktZGF0ZXBpY2tlci1ncm91cCB7CiAgICB3aWR0aDogNTAlCn0KCi51aS1kYXRlcGlja2VyLW11bHRpLTMgLnVpLWRhdGVwaWNrZXItZ3JvdXAgewogICAgd2lkdGg6IDMzLjMlCn0KCi51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAgewogICAgd2lkdGg6IDI1JQp9CgoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlciwKLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7CiAgICBib3JkZXItbGVmdC13aWR0aDogMAp9CgoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHsKICAgIGNsZWFyOiBsZWZ0Cn0KCi51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7CiAgICBjbGVhcjogYm90aDsKICAgIHdpZHRoOiAxMDAlOwogICAgZm9udC1zaXplOiAwCn0KCi51aS1kYXRlcGlja2VyLXJ0bCB7CiAgICBkaXJlY3Rpb246IHJ0bAp9CgoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldiB7CiAgICByaWdodDogMnB4OwogICAgbGVmdDogYXV0bwp9CgoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7CiAgICBsZWZ0OiAycHg7CiAgICByaWdodDogYXV0bwp9CgoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjpob3ZlciB7CiAgICByaWdodDogMXB4OwogICAgbGVmdDogYXV0bwp9CgoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dDpob3ZlciB7CiAgICBsZWZ0OiAxcHg7CiAgICByaWdodDogYXV0bwp9CgoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7CiAgICBjbGVhcjogcmlnaHQKfQoKLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHsKICAgIGZsb2F0OiBsZWZ0Cn0KCi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQsCi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cCB7CiAgICBmbG9hdDogcmlnaHQKfQoKLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLAoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7CiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7CiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4Cn0KCi51aS1kYXRlcGlja2VyIC51aS1pY29uIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICBsZWZ0OiAuNWVtOwogICAgdG9wOiAuM2VtCn0KCi51aS1zbGlkZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdGV4dC1hbGlnbjogbGVmdAp9CgoudWktc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHotaW5kZXg6IDI7CiAgICB3aWR0aDogMS4yZW07CiAgICBoZWlnaHQ6IDEuMmVtOwogICAgY3Vyc29yOiBkZWZhdWx0OwogICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTsKICAgIHRvdWNoLWFjdGlvbjogbm9uZQp9CgoudWktc2xpZGVyIC51aS1zbGlkZXItcmFuZ2UgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgei1pbmRleDogMTsKICAgIGZvbnQtc2l6ZTogLjdlbTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm9yZGVyOiAwOwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwCn0KCi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1oYW5kbGUsCi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1yYW5nZSB7CiAgICBmaWx0ZXI6IGluaGVyaXQKfQoKLnVpLXNsaWRlci1ob3Jpem9udGFsIHsKICAgIGhlaWdodDogLjhlbQp9CgoudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1oYW5kbGUgewogICAgdG9wOiAtLjNlbTsKICAgIG1hcmdpbi1sZWZ0OiAtLjZlbQp9CgoudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZSB7CiAgICB0b3A6IDA7CiAgICBoZWlnaHQ6IDEwMCUKfQoKLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWluIHsKICAgIGxlZnQ6IDAKfQoKLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWF4IHsKICAgIHJpZ2h0OiAwCn0KCi51aS1zbGlkZXItdmVydGljYWwgewogICAgd2lkdGg6IC44ZW07CiAgICBoZWlnaHQ6IDEwMHB4Cn0KCi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUgewogICAgbGVmdDogLS4zZW07CiAgICBtYXJnaW4tbGVmdDogMDsKICAgIG1hcmdpbi1ib3R0b206IC0uNmVtCn0KCi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCUKfQoKLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7CiAgICBib3R0b206IDAKfQoKLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7CiAgICB0b3A6IDAKfQoKQGNoYXJzZXQgIlVURi04IjsKQGZvbnQtZmFjZSB7CiAgICBmb250LWZhbWlseTogeXRwcmVndWxhcjsKICAgIHNyYzogdXJsKGZvbnQveXRwLXJlZ3VsYXIuaHRtbCkKfQoKQGZvbnQtZmFjZSB7CiAgICBmb250LWZhbWlseTogeXRwcmVndWxhcjsKICAgIHNyYzogdXJsKGRhdGE6YXBwbGljYXRpb24veC1mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUE1c0FCRUFBQUFBRkNBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUJnQUFBQUJ3QUFBQWNaOWl1TlVkRVJVWUFBQUdjQUFBQUhRQUFBQ0FBZEFBRVQxTXZNZ0FBQWJ3QUFBQkpBQUFBWUhVTVVyRmpiV0Z3QUFBQ0NBQUFBS2tBQUFHS241WHljV04yZENBQUFBSzBBQUFBTmdBQUFEWU5MUW9oWm5CbmJRQUFBdXdBQUFHeEFBQUNaVk8wTDZkbllYTndBQUFFb0FBQUFBZ0FBQUFJQUFBQUVHZHNlV1lBQUFTb0FBQUdWUUFBQjRqejg2ZFNhR1ZoWkFBQUN3QUFBQUF6QUFBQU5nYktPTnBvYUdWaEFBQUxOQUFBQUNBQUFBQWtFU1FMWEdodGRIZ0FBQXRVQUFBQVZBQUFBUnhPbXdWd2JHOWpZUUFBQzZnQUFBQWpBQUFBa0ZvRVhSUnRZWGh3QUFBTHpBQUFBQ0FBQUFBZ0FXb0I2MjVoYldVQUFBdnNBQUFBK3dBQUFlb2szRWIrY0c5emRBQUFET2dBQUFEQUFBQUJOOTl0djFsd2NtVndBQUFOcUFBQUFMa0FBQUZZM0k2aWtuZGxZbVlBQUE1a0FBQUFCZ0FBQUFiSE1sR25BQUFBQVFBQUFBRE1QYUxQQUFBQUFNM05rN1FBQUFBQXpjMTNzWGphWTJCa1lHRGdBMklKQmhCZ1ltQUVRamNnWmdIekdBQUhUQUI1QUFBQWVOcGpZR2Jad0RpQmdaV0JoZFdZNVN3REE4TXNDTTEwbGlHTktRM0lCMHJCQVNNREVnajFEdmRqY0dEZ2ZjREFsdllQcUpKVmxkRVpwb1pWa3VVWmtGSmdZQVFBVVVVTGV3QUFBSGphWTJCZ1lHYUFZQmtHUmdZUWFBSHlHTUY4Rm9ZTUlDM0dJQUFVWVFPeWVCa1VHS0lZcWhnV0tIQXA2Q3ZFUDJENC94K3NBeVR1eUpBSUZHZUFpelArLy9yLzhmL0QvL2Yrbi9IQThvSG8vV2NLYmxEenNRQkdvT2t3U1VZbUlNR0VyZ0RpUkx5QWhaV05uWU9UaTV1SGw0OWZRRkJJV0VSVVRGeENVa3BhUmhZaUx5ZXZvS2lrcktLcXBxNmhxYVd0bzZ1bmIyQm9aR3hpYW1iT1FGMWdRWll1QUlRbkg0SUFBQUFBQUFBQUFBQUJlZ0VuQUhFQXN3QzlBT0FBNVFEK0FSY0JJd0JkQUhJQnRnQmNBR0FBWmdCeUFJOEFvZ0VyQWJJQVV3QkVCUkVBQUhqYVhWRzdUbHRCRU4wTkR3T0J4TmdnT2RvVXM1bVF4bnVoQlFuRTFZMWlaRHVGNVFocE4zS1JpM0VCSDBDQlJBM2FyeG1nb2FSSW13WWhGMGg4UWo0aEVqTnJpS0kwT3p1emM4NlpNMHZLa2FwMzZXdlBVK2Nra01MZEJzMDIvVTVJdGJNQTk2VHI2NDJNdElNSFdteG05TXAxKy80TEJwdlJsRHRxQU9VOWJ5a1BHVTA3Z1ZxMHAvN1IvQXFHKy93Zjh6c1l0RFRUOU5RNkNla2hCT2FiY1V1RDd4bk51c3NQK29MVjRXSXdNS1NZcHVJdVA2WlMvcmMwNTJyTHNMV1IwYnlETXhINXlUUkFVMnR0QkpyKzFDSFY4M0VVUzVETHByRTJtSml5L2lRVHdZWEpkRlZUdGN6NDJzRmRzclBvWUlNcXpZRUgyTU5XZVF3ZURnOG1GTkszSk1vc0RSSDJZcXZFQ0JHVEhBbzU1ZHpKL3FSQStVZ1N4cnhKU2p2amhyVUd4cEhYd0tBMlQ3UC9QSnROYlc4ZHd2aFpITUYzdnhsTE92aklodG9ZRVdJN1lpbUFDVVJDUmxYNWhoclB2U3dHNUZMN3owQ1VnT1h4ajMrZENMVHUyRVE4bDdWMURqRldDSHArMjl6eXk0cTdWcm5PaTBKM2I2cHFxTklwemZ0ZXpyN0hBNTRlQzhOQlk4R2J6L3YrU29INlBDeXVOR2dPQkVONk4zci9vclhxaUt1OEZ6NnlKOU8vc1ZvQUFBQUFBUUFCLy84QUQzamFUWlZyYkJ4WEZjZnZ1Zk5lNzJObWR4Nzd0bWZITzJONzYxMTc3ODRPVHIxNTRZQWJSN1JRdVVRaHR0b1N1WFpLRlFWS0tZcWdpRkpBZ2twSWtWQ2xJbjhvcFNvbWpYWTNWSEhURmxkRUlZcGF5MWhSK0lENEJoYTI3Rm9JRVFHcGQ4SWR1NGxZN2M2ZU9mZWUvLzJmMyt6ZWl6QWFRd2lmNGlZUmd3UlViZ0dxakxZRk52Vnh0Y1Z6ZnhsdE01aUdxTVVFYVM1SXR3VSt2VFBhaGlCUEZGTXBtb281aG52OFhuakZuK1VtNy94bWpGMUdDTEhvUGYrZmdzVVZFWWNTS0ljR2tZYmFXWXhLTFozYmdHYTUwcXBBQ1EwTmV5WW9ZSUxhRFRxcHVyVUsyRlpCVVlsSlk4dWtFYzBlZ0xwYm8ra1k4Ty9CUWN4MmR2d1AyRmg2L1ErR2wxOWZ5cm91YkhtZXI3cnBqSGxsUFovTktCK3RwMi80L1R6eFN4MHpvLzc0dVVZMjl2SlpPRUhJZm5nNGx6ejdjanlYem4vakp3cUN3Q09MZGoyaVBTUDNGL2hVQUhGM3YrQ3ZpZWU1RElxaEpETFJBQ0xvUEdwSEVDcTFNN1NkNWlEWi9XNnpRVzhtdTlFY3FsN1NJNnhZYWlPcG54Q3lkd1BOV3FXSi90U1NqWTFtcXRxVTVaWU5wV2FsMnBKaUd5MFhTaTFiVnVLWDFGeWgxR3VNb0pZZVVlSnZ5L0dFVmJUcGZUT2pISlJWelVpbTB0bGN3ZWtiS0QxUXJnUjVNOTdPVjhuSXlNalFzS1BVRUtXR05FVkZGQndxRXMveUhNRVZGTU0xUEljNEZoaVdRVnhIY3hqRDB6elhFa2dibUhlNUcxZUE5VDk1NTQ1M3hkK0I5dGJwaTZ2ajEwK2Z2ajYrZXZIMEZqdTd2UERVNXN6Vlk4ZXV6bXcrdFhBQnY3a0Vvdi92MzNXT3Yrdi9DOExHOU0yeEQxOS9FcXV6Q3l1SFZ1WTZSMjVPYnozNStvZHc0TkRLd3V6V0hBSzg2cTl4MjF3S1lZUWtqRmVaM001Zi9UVW13NlFvMTJQKzM4V2YwekVacFZBQmxWQU5mUXUxb3dIWFhNRDFBZEl5UWh2Tmdlb3UyYjFMQXVoQWtWd3lFeFJwcy9wcEFFMjMwcXJUWDFNckVWWGlsNVc0cWxtOXRoTUFNcFIyTXRWSEFiWE1uQkp2WjhvVkdqZFo1WEs2dTZjd05FeHFkTko5ZG5tNEQrOGVJZVllTTdoSDBiM0g5YmNRdWN6ZGVINzVlZitUeFR2ZU8vNXR1REsyTXJzNWQrSG16UXR6bTdNcmJQNlpxeE1ycnoyK3ZmMzRheXNUVjUrNWlOOVloTWk1MVc5M1RpejUvd0ZwK3VqeS9NbnRHWHgrZGZyanFmbHJPNzg4T2I5ODlNYU1QNzE2K05yOEZPcENqYnZudzAzMkJVcm04MmdLZlFjMTBTSmFBd3daR0lOSEVVcmtzYUVuZEkzWENwcEJhdldhVTdOcmRhL3U3UWZQc25tQkYxUmVLNE5qQ3hia2dWUkpkVy9NZG1peWpIa2hDZ0t2R2tyTnErdUduZ1BMVURYVmlvSlRjR3hPTldndUVOT0lZbWtxMWxRcWFEdTJxMUFxS2k2cVJoNkNOMHVxaGxrbjFXSXd0MVozRlRxSDZsdDJrV0xrcVpwUTJGMUg0RDNYMUN6RlVrQ3AxUjhFVmFlS0dyM21nWHB5ZDNPS1pUY2dpb01pM3FJbXFBMkZhRlNZcmtIZDdCWUVTblNNZHFBeDFITmdnLzZwRzBCbzk1UkFHZWhxb05BdWFSSFI5MHdHZFh5SnRrQUoxRHhTRFZRQ2ZTOG9jdWkrRW9ocWFnTmpGcm9uaXlMQU9ZYkJndlNReHVYeGlVU0NHUVhSZUpCbmphZmhiZjZ4QnM4UDlaY2xMTEpkVEpmZEwzYkxSc2dkNTBOZjUyUDdKSVdqSW5ZcUZ1WmhVR0VydWNGMFFqL3pOSnRQR0FyRHo3RVlGaTBjaHZTcHc4Qy9tSlJnUlZMZmdyRWY3UnZvd2h5akozSlBmUGxYL2g4Ti82ZlpyeVg3YmgvcEpzUGo0UUxYOVJhODlOTDNRUWtsam1PcW5vZ25VNkhjeEtrb0kvSnNhSjhjRGNmQ3FaQU1DMmNmRmVTb0h1K1dGRW1XeklRcXg4UFZtQ1RoU0ZxUEtxTElzZ3hKeDBRWVp0MWlvY2pnZnJQYmpJb2lsdGtYeHp4VGxFNUZWVEwxemI3WW1UT1N6WEdpRUJVMFpnSHpYZXhqZDlIa2xEdFRjMlA3aVI0L1dtcWsvakdoZlpYalpXMWJZRlZwM3kwMUcrb2NyaC9LOVZTVDMrMDVPVXNhRW5BWUdLWlJmV0lwRFFhWFQyRWoyL3ZDbDFTNW5OZTdqSHE1ZUNBbE03ck9wRng4UFAxWmYvTnpDVWRrcFhqVWhIbWRmZGkvWHYzMUQ2V2NjUEFJRGpOTW1QbkJ6QytFckFpcFp6UGYrK0xrUXlHUmhUREVwQ05rYm1McHo4ODkyem1FMys4c3dxMVlPRElxZjJaN2xPOFJkSkhuN1JTOGtwWTZyMHFoQWc3eFhJSG5oVml1K3pCRGJoY3gxNlVPZkdWZ2FHa29YZTZMaHdTK2g3TmdTYSt2UjdFU1p2UHlxNlZVcU4rU0MwWlNUUG0zb0VUR294R0loL3A2MHczbmFJeUovR3l3ZjlDTW5uQWVtUjM1MjRoVDVERXJ4T3dCaFI1NUNPTXczZSt1MFQwdE9Fc1IwSk14K05CSGZ0RC9BSitEL2Y3di9UVys5dCtQK0JvOWUvN3ZOWXorQnk2RnNLa0FBQUI0Mm1OZ1pHQmdZR1J3Ykk4SVdoelBiL09WUVo2REFRVE9uaTNmQ0tQLysveDd5ck9CTlJUSTVXQmdBb2tDQUczbURiQUFlTnBqWUdSZ1lGWDl0NWVCZ2VmdGY1Ly9XVHdiR0lBaUtNQWRBSnljQnBoNDJtTjZ3K0RDd2NEQUFNSXNaOEQwSGhCTkxJYXA1MkQ0NzhmQndIUVJ5dmJCcFo3bkxZTXRLZVpqdDVPSmh4VDFUS3NZR0ZoREVUVGpjU0FHMGd5UG9SZ296aWdJcEwwaE5FaU9CY2dGQUVCb05DMTQybU5nWU5DQndqb2NjQUxEQkVZOVJoc2dQSU1NbVpjUmhIdEloa2NBOXBRc3BBQUFBUUFBQUVjQlZBQUxBQUFBQUFBQ0FBRUFBZ0FXQUFBQkFBQ1RBQUFBQUhqYWxaQ3hUZ0pCRkVYUEFwSm9ZWWdGOVZaVVNJQUZUZERDbm1pSWdzVEtzQVNRdUdpQ3UwWWFDcjRPZm9tS096c1RDSFJtTXpQbjNibHozOHNDRnl6SjR1WE9nYktXWlkrOEtzc1pMcWs3emtwOWNKeWpTT1Q0akQ5V2p2UFN0NDZ2S0hvRngydHh5ZkdHcW5mUE8xOGt5b2hTR2pCakpQcVJGbXFQbVdvbFdrWjlvMHVIWi9Fa2ZUTmdUbzBLVlgwMTd1alJwcytUeURxdlQ3eFc5VS9VVjFWejlacnlyUW44bzhRT0wxSnNkVkEvNUl3WnB2N2YvWXNLVFc1ME8xUHFwektOWnl3MVVuS292MmM5ZGJrRDdjMS96ZGhYRlNyTmRJejNIYnVhSkZIMUtNOUNaeUROM04zU29pRnVwZlA2Nm1iT1lBZDhrMEVHQUhqYWJjMDVUd0poSElUeFowQkJCYy9QNElrSTd5NHNoMGRCc29zSEtpcUhlTFVpaVRFMEZINTZYZGwvNlRTL1pJb1pVc3p6TSthZC8zSU9TaWxObW0xMjJHV1BmUTRvY0VpUkkwcVVjWGo0VktnU1VLTk9neWJIbkhES0dTRVI3WGpqZ2t1dTZIRE5EYmQwdWVPZUIzcjBHVERra1JGUFBQUENLMjlhMEtJeXltcEp5MXBSVG5tdGFrM3IydENtdGpManorL3BoNWVkZlUyY2MyRml5LzNweDRYcG1iNVpNYXRtWU5iTXV0a3dtMllyMFc4bkJuT2orT2NYVkRrMFBuamFSYzY3RG9KQUVBVlFGdVQ5ZnFzSkNTWjIrdzEyUWtOanJDQ3g5dytzYlN5MTlEc0dLLzlPYjNSWnVqazNrN256WnA4YnNidlNrWFhvUjhZZXc5Z2F2TjlRTkhTVUhURmNoNG9NZnVvVjB1cUdOTDRudjI1ZW1xM3lIenpBRHdWY3dPc0ZITUN0Qld6QVdRbFlnSjBJbUlBMXJSbUFlUmJRQVdNNnZRRDA0QTlHZ1hnbFJCbzRLaCsxOWdKR1lEZ3pCcU9uWkFMR084a1VUTGFTR1poV2tqbVlyU1VMTUE4a1M3Q1lpNVpnS1RsUXhyL1cxRjVhQUFBQUFBRlJwOGN4QUFBPSkgZm9ybWF0KCd3b2ZmJyksIHVybChmb250L3l0cC1yZWd1bGFyLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbAp9CgoubWJfWVRQbGF5ZXI6Zm9jdXMgewogICAgb3V0bGluZTogMAp9CgouWVRQV3JhcHBlciB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICBwZXJzcGVjdGl2ZTogMTAwMDsKICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgoubWJfWVRQbGF5ZXIgLmxvYWRpbmcgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAxMHB4OwogICAgcmlnaHQ6IDEwcHg7CiAgICBmb250LXNpemU6IDEycHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUxKTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHBhZGRpbmc6IDJweCA0cHg7CiAgICBib3JkZXItcmFkaXVzOiA1cHg7CiAgICBmb250LWZhbWlseTogIkRyb2lkIFNhbnMiLCBzYW5zLXNlcmlmOwogICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGUgLjFzIGluZmluaXRlIGFsdGVybmF0ZTsKICAgIGFuaW1hdGlvbjogZmFkZSAuMXMgaW5maW5pdGUgYWx0ZXJuYXRlCn0KCi5pbmxpbmVQbGF5QnV0dG9uLAoubWJfWVRQQmFyIC55dHBpY29uIHsKICAgIGZvbnQtZmFtaWx5OiB5dHByZWd1bGFyCn0KCkAtd2Via2l0LWtleWZyYW1lcyBmYWRlIHsKICAgIDAlIHsKICAgICAgICBvcGFjaXR5OiAuNQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQp9CgpAa2V5ZnJhbWVzIGZhZGUgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IC41CiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAxCiAgICB9Cn0KCi5ZVFBGdWxsc2NyZWVuIHsKICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7CiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsKICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7CiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsKICAgIHRvcDogMCAhaW1wb3J0YW50OwogICAgbGVmdDogMCAhaW1wb3J0YW50OwogICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7CiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsKICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudAp9CgouaW5saW5lUGxheUJ1dHRvbiB7CiAgICBmb250LXNpemU6IDQ1cHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC40KTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiA4MHB4OwogICAgaGVpZ2h0OiA4MHB4OwogICAgbGluZS1oZWlnaHQ6IDgwcHg7CiAgICB0b3A6IDA7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgcmlnaHQ6IDA7CiAgICBtYXJnaW46IGF1dG87CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBvcGFjaXR5OiAuODsKICAgIHRyYW5zaXRpb246IGFsbCAuNHM7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMykKfQoKLm1iX1lUUGxheWVyOmhvdmVyIC5pbmxpbmVQbGF5QnV0dG9uIHsKICAgIG9wYWNpdHk6IDE7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpCn0KCi5pbmxpbmVQbGF5QnV0dG9uOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMykgIWltcG9ydGFudAp9CgoubWJZVFBfd3JhcHBlciBpZnJhbWUgewogICAgbWF4LXdpZHRoOiA4MDAwcHggIWltcG9ydGFudAp9CgouaW5saW5lX1lUUGxheWVyIHsKICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbGVmdDogMDsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgLjcpOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNSkKfQoKLmlubGluZV9ZVFBsYXllciBpbWcgewogICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7CiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50Cn0KCi5tYl9ZVFBCYXIsCi5tYl9ZVFBCYXIgLmJ1dHRvbkJhciB7CiAgICBsZWZ0OiAwOwogICAgcGFkZGluZzogNXB4OwogICAgd2lkdGg6IDEwMCU7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Cn0KCi5tYl9ZVFBCYXIgLnl0cGljb24gewogICAgZm9udC1zaXplOiAyMHB4Cn0KCi5tYl9ZVFBCYXIgLm1iX1lUUFVybC55dHBpY29uIHsKICAgIGZvbnQtc2l6ZTogMzBweAp9CgoubWJfWVRQQmFyIHsKICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBoZWlnaHQ6IDEwcHg7CiAgICBiYWNrZ3JvdW5kOiAjMzMzOwogICAgcG9zaXRpb246IGZpeGVkOwogICAgYm90dG9tOiAwOwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIHotaW5kZXg6IDEwMDA7CiAgICBmb250OiAxNHB4LzE2cHggc2Fucy1zZXJpZjsKICAgIGNvbG9yOiAjZmZmOwogICAgb3BhY2l0eTogLjEKfQoKLm1iX1lUUEJhci52aXNpYmxlLAoubWJfWVRQQmFyOmhvdmVyIHsKICAgIG9wYWNpdHk6IDEKfQoKLm1iX1lUUEJhciAuYnV0dG9uQmFyIHsKICAgIHRyYW5zaXRpb246IGFsbCAuNXM7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBmb250OiAxMnB4LzE0cHggc2FuLXNlcmlmOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAtMzBweDsKICAgIGhlaWdodDogNDBweAp9CgoubWJfWVRQQmFyOmhvdmVyIC5idXR0b25CYXIgewogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNCkKfQoKLm1iX1lUUEJhciBzcGFuIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZvbnQ6IDE2cHgvMjBweCBzYW5zLXNlcmlmOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IDMwcHg7CiAgICBoZWlnaHQ6IDI1cHg7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KCi5tYl9ZVFBCYXIgc3Bhbi5tYl9ZVFBUaW1lIHsKICAgIHdpZHRoOiAxMzBweAp9CgoubWJfWVRQQmFyIHNwYW4ubWJfT25seVlULAoubWJfWVRQQmFyIHNwYW4ubWJfWVRQVXJsIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiBhdXRvOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB0b3A6IDZweDsKICAgIHJpZ2h0OiAxMHB4OwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi5tYl9ZVFBCYXIgc3Bhbi5tYl9ZVFBVcmwgaW1nIHsKICAgIHdpZHRoOiA2MHB4Cn0KCi5tYl9ZVFBCYXIgc3Bhbi5tYl9Pbmx5WVQgewogICAgbGVmdDogMzAwcHg7CiAgICByaWdodDogYXV0bwp9CgoubWJfWVRQQmFyIHNwYW4ubWJfT25seVlUIGltZyB7CiAgICB3aWR0aDogMjVweAp9CgoubWJfWVRQQmFyIHNwYW4ubWJfWVRQVXJsIGEgewogICAgY29sb3I6ICNmZmYKfQoKLm1iX1lUUEJhciAubWJfWVRQTXV0ZVVubXV0ZSwKLm1iX1lUUEJhciAubWJfWVRQUGxheVBhdXNlLAoubWJfWVRQbGF5ZXIgLm1iX1lUUEJhciAubWJfWVRQUGxheVBhdXNlIGltZyB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLm1iX1lUUEJhciAubWJfWVRQUHJvZ3Jlc3MgewogICAgaGVpZ2h0OiAxMHB4OwogICAgd2lkdGg6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiAjMjIyOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMAp9CgoubWJfWVRQQmFyIC5tYl9ZVFBMb2FkZWQgewogICAgaGVpZ2h0OiAxMHB4OwogICAgd2lkdGg6IDA7CiAgICBiYWNrZ3JvdW5kOiAjNDQ0OwogICAgbGVmdDogMAp9CgoubWJfWVRQQmFyIC5tYl9ZVFBzZWVrYmFyIHsKICAgIGhlaWdodDogMTBweDsKICAgIHdpZHRoOiAwOwogICAgYmFja2dyb3VuZDogI2JiMTEwZTsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDA7CiAgICBib3gtc2hhZG93OiByZ2JhKDgyLCA4MiwgODIsIC40NykgMXB4IDFweCAzcHgKfQoKLm1iX1lUUEJhciAuWVRQT3ZlcmxheSB7CiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBmbGF0OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgouWVRQT3ZlcmxheS5yYXN0ZXIgewogICAgYmFja2dyb3VuZDogdXJsKGltYWdlcy9yYXN0ZXIucG5nKQp9CgouWVRQT3ZlcmxheS5yYXN0ZXIucmV0aW5hIHsKICAgIGJhY2tncm91bmQ6IHVybChpbWFnZXMvcmFzdGVyQDJ4LnBuZykKfQoKLllUUE92ZXJsYXkucmFzdGVyLWRvdCB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3Jhc3Rlcl9kb3QucG5nKQp9CgouWVRQT3ZlcmxheS5yYXN0ZXItZG90LnJldGluYSB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3Jhc3Rlcl9kb3RAMngucG5nKQp9CgoubWJfWVRQQmFyIC5zaW1wbGVTbGlkZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IDEwMHB4OwogICAgaGVpZ2h0OiAxMHB4OwogICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgbWFyZ2luLXJpZ2h0OiAxMHB4OwogICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7CiAgICBib3JkZXItcmFkaXVzOiAzcHgKfQoKLm1iX1lUUEJhci5jb21wYWN0IC5zaW1wbGVTbGlkZXIgewogICAgd2lkdGg6IDQwcHgKfQoKLm1iX1lUUEJhci5jb21wYWN0IHNwYW4ubWJfT25seVlUIHsKICAgIGxlZnQ6IDI2MHB4Cn0KCi5tYl9ZVFBCYXIgLnNpbXBsZVNsaWRlci5tdXRlZCB7CiAgICBvcGFjaXR5OiAuMwp9CgoubWJfWVRQQmFyIC5sZXZlbCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAwOwogICAgYm90dG9tOiAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3gKfQoKLm1iX1lUUEJhciAubGV2ZWwuaG9yaXpvbnRhbCB7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogMAp9CgoubWJfWVRQQmFyIC5sZXZlbC52ZXJ0aWNhbCB7CiAgICBoZWlnaHQ6IGF1dG87CiAgICB3aWR0aDogMTAwJQp9CgovKiEKICogIExpbmUgQXdlc29tZSAxLjEuMCBieSBAaWNvbnNfOCAtIGh0dHBzOi8vaWNvbnM4LmNvbS9saW5lLWF3ZXNvbWUKICogIExpY2Vuc2UgLSBodHRwczovL2ljb25zOC5jb20vZ29vZC1ib3ktbGljZW5zZS8gKEZvbnQ6IFNJTCBPRkwgMS4xLCBDU1M6IE1JVCBMaWNlbnNlKQogKgogKiBNYWRlIHdpdGggbG92ZSBieSBJY29uczggWyBodHRwczovL2ljb25zOC5jb20vIF0gdXNpbmcgRm9udEN1c3RvbSBbIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb250Q3VzdG9tL2ZvbnRjdXN0b20gXQogKgogKiBDb250YWN0czoKICogICAgWyBodHRwczovL2ljb25zOC5jb20vY29udGFjdCBdCiAqCiAqIEZvbGxvdyBJY29uOCBvbgogKiAgICBUd2l0dGVyIFsgaHR0cHM6Ly90d2l0dGVyLmNvbS9pY29uc184IF0KICogICAgRmFjZWJvb2sgWyBodHRwczovL3d3dy5mYWNlYm9vay5jb20vSWNvbnM4IF0KICogICAgR29vZ2xlKyBbIGh0dHBzOi8vcGx1cy5nb29nbGUuY29tLytJY29uczggXQogKiAgICBHaXRIdWIgWyBodHRwczovL2dpdGh1Yi5jb20vaWNvbnM4IF0KICovCgoubGEsCi5sYS1zdGFjayB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLmxhLWZ3LAoubGEtbGkgewogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCkBmb250LWZhY2UgewogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgc3JjOiB1cmwoLi4vZm9udHMvbGluZS1hd2Vzb21lZWI0ZmViNGYuZW90P3Y9MS4xLik7CiAgICBzcmM6IHVybCguLi9mb250cy9saW5lLWF3ZXNvbWUwMTc2MDE3Ni5lb3Q/P3Y9MS4xLiNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLCB1cmwoLi4vZm9udHMvbGluZS1hd2Vzb21lZWI0ZmViNGYud29mZjI/dj0xLjEuKSBmb3JtYXQoIndvZmYyIiksIHVybCguLi9mb250cy9saW5lLWF3ZXNvbWVlYjRmZWI0Zi53b2ZmP3Y9MS4xLikgZm9ybWF0KCJ3b2ZmIiksIHVybCguLi9mb250cy9saW5lLWF3ZXNvbWVlYjRmZWI0Zi50dGY/dj0xLjEuKSBmb3JtYXQoInRydWV0eXBlIiksIHVybCguLi9mb250cy9saW5lLWF3ZXNvbWVlYjRmZWI0Zi5zdmc/dj0xLjEuI2ZhKSBmb3JtYXQoInN2ZyIpOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbAp9CgpAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIHsKICAgIEBmb250LWZhY2UgewogICAgICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgICAgICBzcmM6IHVybCguLi9mb250cy9saW5lLWF3ZXNvbWVlYjRmZWI0Zi5zdmc/dj0xLjEuI2ZhKSBmb3JtYXQoInN2ZyIpCiAgICB9Cn0KCi5sYSB7CiAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNnB4LzEgTGluZUF3ZXNvbWU7CiAgICBmb250LXNpemU6IGluaGVyaXQ7CiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7CiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OwogICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7CiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwogICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQKfQoKLmxhLWxnIHsKICAgIGZvbnQtc2l6ZTogMS4zMzMzMzMzM2VtOwogICAgbGluZS1oZWlnaHQ6IC43NWVtOwogICAgdmVydGljYWwtYWxpZ246IC0xNSUKfQoKLmxhLTJ4IHsKICAgIGZvbnQtc2l6ZTogMmVtCn0KCi5sYS0zeCB7CiAgICBmb250LXNpemU6IDNlbQp9CgoubGEtNHggewogICAgZm9udC1zaXplOiA0ZW0KfQoKLmxhLTV4IHsKICAgIGZvbnQtc2l6ZTogNWVtCn0KCi5sYS1mdyB7CiAgICB3aWR0aDogMS4yODU3MTQyOWVtCn0KCi5sYS11bCB7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICBtYXJnaW4tbGVmdDogMi4xNDI4NTcxNGVtOwogICAgbGlzdC1zdHlsZS10eXBlOiBub25lCn0KCi5sYS11bD5saSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmxhLWxpIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IC0yLjE0Mjg1NzE0ZW07CiAgICB3aWR0aDogMi4xNDI4NTcxNGVtOwogICAgdG9wOiAuMTQyODU3MTRlbQp9CgoubGEtbGkubGEtbGcgewogICAgbGVmdDogLTEuODU3MTQyODZlbQp9CgoubGEtYm9yZGVyIHsKICAgIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07CiAgICBib3JkZXI6IC4wOGVtIHNvbGlkICNlZWU7CiAgICBib3JkZXItcmFkaXVzOiAuMWVtCn0KCi5wdWxsLXJpZ2h0IHsKICAgIGZsb2F0OiByaWdodAp9CgoucHVsbC1sZWZ0IHsKICAgIGZsb2F0OiBsZWZ0Cn0KCi5saS5wdWxsLWxlZnQgewogICAgbWFyZ2luLXJpZ2h0OiAuM2VtCn0KCi5saS5wdWxsLXJpZ2h0IHsKICAgIG1hcmdpbi1sZWZ0OiAuM2VtCn0KCi5sYS1zcGluIHsKICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjsKICAgIGFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXIKfQoKQC13ZWJraXQta2V5ZnJhbWVzIGZhLXNwaW4gewogICAgMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpCiAgICB9Cn0KCkBrZXlmcmFtZXMgZmEtc3BpbiB7CiAgICAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOwogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZykKICAgIH0KfQoKLmxhLXJvdGF0ZS05MCB7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTEpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7CiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpCn0KCi5sYS1yb3RhdGUtMTgwIHsKICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249Mik7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7CiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsKICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykKfQoKLmxhLXJvdGF0ZS0yNzAgewogICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0zKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsKICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKQp9CgoubGEtZmxpcC1ob3Jpem9udGFsIHsKICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsKICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpCn0KCi5sYS1mbGlwLXZlcnRpY2FsIHsKICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsKICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpCn0KCjpyb290IC5sYS1mbGlwLWhvcml6b250YWwsCjpyb290IC5sYS1mbGlwLXZlcnRpY2FsLAo6cm9vdCAubGEtcm90YXRlLTE4MCwKOnJvb3QgLmxhLXJvdGF0ZS0yNzAsCjpyb290IC5sYS1yb3RhdGUtOTAgewogICAgZmlsdGVyOiBub25lCn0KCi5sYS1zdGFjayB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB3aWR0aDogMmVtOwogICAgaGVpZ2h0OiAyZW07CiAgICBsaW5lLWhlaWdodDogMmVtOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQp9CgoubGEtc3RhY2stMXgsCi5sYS1zdGFjay0yeCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmxhLXN0YWNrLTF4IHsKICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0Cn0KCi5sYS1zdGFjay0yeCB7CiAgICBmb250LXNpemU6IDJlbQp9CgoubGEtaW52ZXJzZSB7CiAgICBjb2xvcjogI2ZmZgp9CgoubGEtNTAwcHg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwMCIKfQoKLmxhLWFkanVzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTAxIgp9CgoubGEtYWRuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDIiCn0KCi5sYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwMyIKfQoKLmxhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwNCIKfQoKLmxhLWFsaWduLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwNSIKfQoKLmxhLWFsaWduLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDYiCn0KCi5sYS1hbWF6b246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwNyIKfQoKLmxhLWFtYnVsYW5jZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTA4Igp9CgoubGEtYW5jaG9yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMDkiCn0KCi5sYS1hbmRyb2lkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMGEiCn0KCi5sYS1hbmdlbGxpc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwYiIKfQoKLmxhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMGMiCn0KCi5sYS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTBkIgp9CgoubGEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMGUiCn0KCi5sYS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEwZiIKfQoKLmxhLWFuZ2xlLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMCIKfQoKLmxhLWFuZ2xlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMSIKfQoKLmxhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMTIiCn0KCi5sYS1hbmdsZS11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTEzIgp9CgoubGEtYXBwbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExNCIKfQoKLmxhLWFyY2hpdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExNSIKfQoKLmxhLWFyZWEtY2hhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExNiIKfQoKLmxhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMTciCn0KCi5sYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTE4Igp9CgoubGEtYXJyb3ctY2lyY2xlLW8tZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTE5Igp9CgoubGEtYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTFhIgp9CgoubGEtYXJyb3ctY2lyY2xlLW8tcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExYiIKfQoKLmxhLWFycm93LWNpcmNsZS1vLXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMWMiCn0KCi5sYS1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExZCIKfQoKLmxhLWFycm93LWNpcmNsZS11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTFlIgp9CgoubGEtYXJyb3ctZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTFmIgp9CgoubGEtYXJyb3ctbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTIwIgp9CgoubGEtYXJyb3ctcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyMSIKfQoKLmxhLWFycm93LXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjIiCn0KCi5sYS1hcnJvd3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyMyIKfQoKLmxhLWFycm93cy1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyNCIKfQoKLmxhLWFycm93cy1oOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjUiCn0KCi5sYS1hcnJvd3MtdjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTI2Igp9CgoubGEtYXN0ZXJpc2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyNyIKfQoKLmxhLWF0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjgiCn0KCi5sYS1hdXRvbW9iaWxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjkiCn0KCi5sYS1iYWNrd2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJhIgp9CgoubGEtYmFsYW5jZS1zY2FsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTJiIgp9CgoubGEtYmFuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMmMiCn0KCi5sYS1iYW5rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMmQiCn0KCi5sYS1iYXItY2hhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEyZSIKfQoKLmxhLWJhci1jaGFydC1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMmYiCn0KCi5sYS1iYXJjb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzAiCn0KCi5sYS1iYXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzEiCn0KCi5sYS1iYXR0ZXJ5LTA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzMiIKfQoKLmxhLWJhdHRlcnktMTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTMzIgp9CgoubGEtYmF0dGVyeS0yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzQiCn0KCi5sYS1iYXR0ZXJ5LTM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzNSIKfQoKLmxhLWJhdHRlcnktNDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTM2Igp9CgoubGEtYmF0dGVyeS1lbXB0eTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTM3Igp9CgoubGEtYmF0dGVyeS1mdWxsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMzgiCn0KCi5sYS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjEzOSIKfQoKLmxhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTNhIgp9CgoubGEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMTNiIgp9CgoubGEtYmVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxM2MiCn0KCi5sYS1iZWVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxM2QiCn0KCi5sYS1iZWhhbmNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxM2UiCn0KCi5sYS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTNmIgp9CgoubGEtYmVsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQwIgp9CgoubGEtYmVsbC1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNDEiCn0KCi5sYS1iZWxsLXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNDIiCn0KCi5sYS1iZWxsLXNsYXNoLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0MyIKfQoKLmxhLWJpY3ljbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0NCIKfQoKLmxhLWJpbm9jdWxhcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0NSIKfQoKLmxhLWJpcnRoZGF5LWNha2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE0NiIKfQoKLmxhLWJpdGJ1Y2tldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQ3Igp9CgoubGEtYml0YnVja2V0LXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQ4Igp9CgoubGEtYml0Y29pbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTQ5Igp9CgoubGEtYmxhY2stdGllOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGEiCn0KCi5sYS1ib2xkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGIiCn0KCi5sYS1ib2x0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGMiCn0KCi5sYS1ib21iOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGQiCn0KCi5sYS1ib29rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNGUiCn0KCi5sYS1ib29rbWFyazpiZWZvcmUgewogICAgY29udGVudDogIlxmMTRmIgp9CgoubGEtYm9va21hcmstbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTUwIgp9CgoubGEtYnJpZWZjYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTEiCn0KCi5sYS1idGM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1MiIKfQoKLmxhLWJ1ZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTUzIgp9CgoubGEtYnVpbGRpbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1NCIKfQoKLmxhLWJ1aWxkaW5nLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1NSIKfQoKLmxhLWJ1bGxob3JuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTYiCn0KCi5sYS1idWxsc2V5ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTU3Igp9CgoubGEtYnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTgiCn0KCi5sYS1idXlzZWxsYWRzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNTkiCn0KCi5sYS1jYWI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1YSIKfQoKLmxhLWNhbGN1bGF0b3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE1YiIKfQoKLmxhLWNhbGVuZGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNWMiCn0KCi5sYS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNWQiCn0KCi5sYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNWUiCn0KCi5sYS1jYWxlbmRhci1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNWYiCn0KCi5sYS1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2MCIKfQoKLmxhLWNhbGVuZGFyLXRpbWVzLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2MSIKfQoKLmxhLWNhbWVyYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTYyIgp9CgoubGEtY2FtZXJhLXJldHJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjMiCn0KCi5sYS1jYXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2NCIKfQoKLmxhLWNhcmV0LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2NSIKfQoKLmxhLWNhcmV0LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2NiIKfQoKLmxhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjciCn0KCi5sYS1jYXJldC1zcXVhcmUtby1kb3duOmJlZm9yZSwKLmxhLXRvZ2dsZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjgiCn0KCi5sYS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSwKLmxhLXRvZ2dsZS1sZWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNjkiCn0KCi5sYS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUsCi5sYS10b2dnbGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2YSIKfQoKLmxhLWNhcmV0LXNxdWFyZS1vLXVwOmJlZm9yZSwKLmxhLXRvZ2dsZS11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZiIgp9CgoubGEtY2FyZXQtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE2YyIKfQoKLmxhLWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZkIgp9CgoubGEtY2FydC1wbHVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNmUiCn0KCi5sYS1jYzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTZmIgp9CgoubGEtY2MtYW1leDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTcwIgp9CgoubGEtY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3MSIKfQoKLmxhLWNjLWRpc2NvdmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNzIiCn0KCi5sYS1jYy1qY2I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3MyIKfQoKLmxhLWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3NCIKfQoKLmxhLWNjLXBheXBhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTc1Igp9CgoubGEtY2Mtc3RyaXBlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNzYiCn0KCi5sYS1jYy12aXNhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxNzciCn0KCi5sYS1jZXJ0aWZpY2F0ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTc4Igp9CgoubGEtY2hhaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3OSIKfQoKLmxhLWNoYWluLWJyb2tlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTdhIgp9CgoubGEtY2hlY2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3YiIKfQoKLmxhLWNoZWNrLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTdjIgp9CgoubGEtY2hlY2stY2lyY2xlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3ZCIKfQoKLmxhLWNoZWNrLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTdlIgp9CgoubGEtY2hlY2stc3F1YXJlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE3ZiIKfQoKLmxhLWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4MCIKfQoKLmxhLWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4MSIKfQoKLmxhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODIiCn0KCi5sYS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTgzIgp9CgoubGEtY2hldnJvbi1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODQiCn0KCi5sYS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4NSIKfQoKLmxhLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4NiIKfQoKLmxhLWNoZXZyb24tdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4NyIKfQoKLmxhLWNoaWxkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxODgiCn0KCi5sYS1jaHJvbWU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4OSIKfQoKLmxhLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMThhIgp9CgoubGEtY2lyY2xlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE4YiIKfQoKLmxhLWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOGMiCn0KCi5sYS1jaXJjbGUtdGhpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMThkIgp9CgoubGEtY2xpcGJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOGUiCn0KCi5sYS1jbG9jay1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOGYiCn0KCi5sYS1jbG9uZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTkwIgp9CgoubGEtY2xvc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5MSIKfQoKLmxhLWNsb3VkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOTIiCn0KCi5sYS1jbG91ZC1kb3dubG9hZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMTkzIgp9CgoubGEtY2xvdWQtdXBsb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOTQiCn0KCi5sYS1jbnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5NSIKfQoKLmxhLWNvZGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5NiIKfQoKLmxhLWNvZGUtZm9yazpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk3Igp9CgoubGEtY29kZXBlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMTk4Igp9CgoubGEtY29mZmVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxOTkiCn0KCi5sYS1jb2c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5YSIKfQoKLmxhLWNvZ3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5YiIKfQoKLmxhLWNvbHVtbnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5YyIKfQoKLmxhLWNvbW1lbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjE5ZCIKfQoKLmxhLWNvbW1lbnQtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTllIgp9CgoubGEtY29tbWVudGluZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTlmIgp9CgoubGEtY29tbWVudGluZy1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYTAiCn0KCi5sYS1jb21tZW50czpiZWZvcmUgewogICAgY29udGVudDogIlxmMWExIgp9CgoubGEtY29tbWVudHMtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWEyIgp9CgoubGEtY29tcGFzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMWEzIgp9CgoubGEtY29tcHJlc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhNCIKfQoKLmxhLWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYTUiCn0KCi5sYS1jb250YW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhNiIKfQoKLmxhLWNvcHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhNyIKfQoKLmxhLWNvcHlyaWdodDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWE4Igp9CgoubGEtY3JlYXRpdmUtY29tbW9uczpiZWZvcmUgewogICAgY29udGVudDogIlxmMWE5Igp9CgoubGEtY3JlZGl0LWNhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhYSIKfQoKLmxhLWNyb3A6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhYiIKfQoKLmxhLWNyb3NzaGFpcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhYyIKfQoKLmxhLWNzczM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhZCIKfQoKLmxhLWN1YmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFhZSIKfQoKLmxhLWN1YmVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYWYiCn0KCi5sYS1jdXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiMCIKfQoKLmxhLWN1dGxlcnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiMSIKfQoKLmxhLWRhc2hib2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWIyIgp9CgoubGEtZGFzaGN1YmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiMyIKfQoKLmxhLWRhdGFiYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYjQiCn0KCi5sYS1kZWRlbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiNSIKfQoKLmxhLWRlbGljaW91czpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI2Igp9CgoubGEtZGVza3RvcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI3Igp9CgoubGEtZGV2aWFudGFydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI4Igp9CgoubGEtZGlhbW9uZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWI5Igp9CgoubGEtZGlnZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWJhIgp9CgoubGEtZG9sbGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYmIiCn0KCi5sYS1kb3QtY2lyY2xlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFiYyIKfQoKLmxhLWRvd25sb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYmQiCn0KCi5sYS1kcmliYmJsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWJlIgp9CgoubGEtZHJvcGJveDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWJmIgp9CgoubGEtZHJ1cGFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzAiCn0KCi5sYS1lZGl0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzEiCn0KCi5sYS1lamVjdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWMyIgp9CgoubGEtZWxsaXBzaXMtaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWMzIgp9CgoubGEtZWxsaXBzaXMtdjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWM0Igp9CgoubGEtZW1waXJlOmJlZm9yZSwKLmxhLWdlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzUiCn0KCi5sYS1lbnZlbG9wZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWM2Igp9CgoubGEtZW52ZWxvcGUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWM3Igp9CgoubGEtZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxYzgiCn0KCi5sYS1lcmFzZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjOSIKfQoKLmxhLWV1cjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWNhIgp9CgoubGEtZXVybzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWNiIgp9CgoubGEtZXhjaGFuZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjYyIKfQoKLmxhLWV4Y2xhbWF0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxY2QiCn0KCi5sYS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFjZSIKfQoKLmxhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxY2YiCn0KCi5sYS1leHBhbmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkMCIKfQoKLmxhLWV4cGVkaXRlZHNzbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWQxIgp9CgoubGEtZXh0ZXJuYWwtbGluazpiZWZvcmUgewogICAgY29udGVudDogIlxmMWQyIgp9CgoubGEtZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkMyIKfQoKLmxhLWV5ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWQ0Igp9CgoubGEtZXllLXNsYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDUiCn0KCi5sYS1leWVkcm9wcGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDYiCn0KCi5sYS1mYWNlYm9vay1mOmJlZm9yZSwKLmxhLWZhY2Vib29rOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDciCn0KCi5sYS1mYWNlYm9vay1vZmZpY2lhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWQ4Igp9CgoubGEtZmFjZWJvb2stc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZDkiCn0KCi5sYS1mYXN0LWJhY2t3YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZGEiCn0KCi5sYS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFkYiIKfQoKLmxhLWZheDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWRjIgp9CgoubGEtZmVtYWxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZGQiCn0KCi5sYS1maWdodGVyLWpldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWRlIgp9CgoubGEtZmlsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWRmIgp9CgoubGEtZmlsZS1hcmNoaXZlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlMCIKfQoKLmxhLWZpbGUtYXVkaW8tbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWUxIgp9CgoubGEtZmlsZS1jb2RlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlMiIKfQoKLmxhLWZpbGUtZXhjZWwtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWUzIgp9CgoubGEtZmlsZS1pbWFnZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTQiCn0KCi5sYS1maWxlLW1vdmllLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlNSIKfQoKLmxhLWZpbGUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWU2Igp9CgoubGEtZmlsZS1wZGYtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWU3Igp9CgoubGEtZmlsZS1waG90by1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZTgiCn0KCi5sYS1maWxlLXBpY3R1cmUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWU5Igp9CgoubGEtZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFlYSIKfQoKLmxhLWZpbGUtc291bmQtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWViIgp9CgoubGEtZmlsZS10ZXh0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWMiCn0KCi5sYS1maWxlLXRleHQtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWVkIgp9CgoubGEtZmlsZS12aWRlby1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZWUiCn0KCi5sYS1maWxlLXdvcmQtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWVmIgp9CgoubGEtZmlsZS16aXAtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWYwIgp9CgoubGEtZmlsZXMtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWYxIgp9CgoubGEtZmlsbTpiZWZvcmUgewogICAgY29udGVudDogIlxmMWYyIgp9CgoubGEtZmlsdGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZjMiCn0KCi5sYS1maXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZjQiCn0KCi5sYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMWY1Igp9CgoubGEtZmlyZWZveDpiZWZvcmUgewogICAgY29udGVudDogIlxmMWY2Igp9CgoubGEtZmxhZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWY3Igp9CgoubGEtZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmOCIKfQoKLmxhLWZsYWctbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMWY5Igp9CgoubGEtZmxhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmYSIKfQoKLmxhLWZsYXNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmIiCn0KCi5sYS1mbGlja3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmYyIKfQoKLmxhLWZsb3BweS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmQiCn0KCi5sYS1mb2xkZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjFmZSIKfQoKLmxhLWZvbGRlci1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxZmYiCn0KCi5sYS1mb2xkZXItb3BlbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjAwIgp9CgoubGEtZm9sZGVyLW9wZW4tbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjAxIgp9CgoubGEtZm9udDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjAyIgp9CgoubGEtZm9udGljb25zOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMDMiCn0KCi5sYS1mb3J1bWJlZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA0Igp9CgoubGEtZm9yd2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA1Igp9CgoubGEtZm91cnNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA2Igp9CgoubGEtZnJvd24tbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA3Igp9CgoubGEtZnV0Ym9sLW86YmVmb3JlLAoubGEtc29jY2VyLWJhbGwtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA4Igp9CgoubGEtZ2FtZXBhZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjA5Igp9CgoubGEtZ2F2ZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwYSIKfQoKLmxhLWdicDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjBiIgp9CgoubGEtZ2VhcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjBjIgp9CgoubGEtZ2VhcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwZCIKfQoKLmxhLWdlbmRlcmxlc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwZSIKfQoKLmxhLWdldC1wb2NrZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIwZiIKfQoKLmxhLWdnOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTAiCn0KCi5sYS1nZy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxMSIKfQoKLmxhLWdpZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxMiIKfQoKLmxhLWdpdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjEzIgp9CgoubGEtZ2l0LXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjE0Igp9CgoubGEtZ2l0aHViOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTUiCn0KCi5sYS1naXRodWItYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTYiCn0KCi5sYS1naXRodWItc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMTciCn0KCi5sYS1nbGFzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjE4Igp9CgoubGEtZ2xvYmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxOSIKfQoKLmxhLWdvb2dsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjFhIgp9CgoubGEtZ29vZ2xlLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxYiIKfQoKLmxhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjFjIgp9CgoubGEtZ29vZ2xlLXdhbGxldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjFkIgp9CgoubGEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIxZSIKfQoKLmxhLWdpdHRpcDpiZWZvcmUsCi5sYS1ncmF0aXBheTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjFmIgp9CgoubGEtZ3JvdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyMCIKfQoKLmxhLWgtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMjEiCn0KCi5sYS1oYWNrZXItbmV3czpiZWZvcmUgewogICAgY29udGVudDogIlxmMjIyIgp9CgoubGEtaGFuZC1ncmFiLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyMyIKfQoKLmxhLWhhbmQtbGl6YXJkLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyNCIKfQoKLmxhLWhhbmQtby1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMjUiCn0KCi5sYS1oYW5kLW8tbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI2Igp9CgoubGEtaGFuZC1vLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMjciCn0KCi5sYS1oYW5kLW8tdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyOCIKfQoKLmxhLWhhbmQtcGFwZXItbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjI5Igp9CgoubGEtaGFuZC1wZWFjZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMmEiCn0KCi5sYS1oYW5kLXBvaW50ZXItbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJiIgp9CgoubGEtaGFuZC1yb2NrLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIyYyIKfQoKLmxhLWhhbmQtc2Npc3NvcnMtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJkIgp9CgoubGEtaGFuZC1zcG9jay1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyMmUiCn0KCi5sYS1oYW5kLXN0b3AtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjJmIgp9CgoubGEtaGRkLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzMCIKfQoKLmxhLWhlYWRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjMxIgp9CgoubGEtaGVhZHBob25lczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjMyIgp9CgoubGEtaGVhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzMyIKfQoKLmxhLWhlYXJ0LW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzNCIKfQoKLmxhLWhlYXJ0YmVhdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM1Igp9CgoubGEtaGlzdG9yeTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM2Igp9CgoubGEtaG9tZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM3Igp9CgoubGEtaG9zcGl0YWwtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjM4Igp9CgoubGEtaG90ZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzOSIKfQoKLmxhLWhvdXJnbGFzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNhIgp9CgoubGEtaG91cmdsYXNzLTE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzYiIKfQoKLmxhLWhvdXJnbGFzcy0yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyM2MiCn0KCi5sYS1ob3VyZ2xhc3MtMzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNkIgp9CgoubGEtaG91cmdsYXNzLWVuZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjNlIgp9CgoubGEtaG91cmdsYXNzLWhhbGY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjIzZiIKfQoKLmxhLWhvdXJnbGFzcy1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDAiCn0KCi5sYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0MSIKfQoKLmxhLWhvdXp6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDIiCn0KCi5sYS1odG1sNTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjQzIgp9CgoubGEtaS1jdXJzb3I6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0NCIKfQoKLmxhLWlsczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjQ1Igp9CgoubGEtaW1hZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0NiIKfQoKLmxhLWluYm94OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDciCn0KCi5sYS1pbmRlbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0OCIKfQoKLmxhLWluZHVzdHJ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNDkiCn0KCi5sYS1pbmZvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNGEiCn0KCi5sYS1pbmZvLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjRiIgp9CgoubGEtaW5yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNGMiCn0KCi5sYS1pbnN0YWdyYW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI0ZCIKfQoKLmxhLWluc3RpdHV0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNGUiCn0KCi5sYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjRmIgp9CgoubGEtaW94aG9zdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjUwIgp9CgoubGEtaXRhbGljOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTEiCn0KCi5sYS1qb29tbGE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1MiIKfQoKLmxhLWpweTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjUzIgp9CgoubGEtanNmaWRkbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1NCIKfQoKLmxhLWtleTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjU1Igp9CgoubGEta2V5Ym9hcmQtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjU2Igp9CgoubGEta3J3OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTciCn0KCi5sYS1sYW5ndWFnZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjU4Igp9CgoubGEtbGFwdG9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNTkiCn0KCi5sYS1sYXN0Zm06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1YSIKfQoKLmxhLWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1YiIKfQoKLmxhLWxlYWY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1YyIKfQoKLmxhLWxlYW5wdWI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI1ZCIKfQoKLmxhLWxlZ2FsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNWUiCn0KCi5sYS1sZW1vbi1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNWYiCn0KCi5sYS1sZXZlbC1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjAiCn0KCi5sYS1sZXZlbC11cDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjYxIgp9CgoubGEtbGlmZS1ib3V5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjIiCn0KCi5sYS1saWZlLWJ1b3k6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2MyIKfQoKLmxhLWxpZmUtcmluZzpiZWZvcmUsCi5sYS1zdXBwb3J0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjQiCn0KCi5sYS1saWZlLXNhdmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNjUiCn0KCi5sYS1saWdodGJ1bGItbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjY2Igp9CgoubGEtbGluZS1jaGFydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjY3Igp9CgoubGEtbGluazpiZWZvcmUgewogICAgY29udGVudDogIlxmMjY4Igp9CgoubGEtbGlua2VkaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2OSIKfQoKLmxhLWxpbmtlZGluLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjZhIgp9CgoubGEtbGludXg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2YiIKfQoKLmxhLWxpc3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI2YyIKfQoKLmxhLWxpc3QtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmQiCn0KCi5sYS1saXN0LW9sOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmUiCn0KCi5sYS1saXN0LXVsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNmYiCn0KCi5sYS1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxmMjcwIgp9CgoubGEtbG9jazpiZWZvcmUgewogICAgY29udGVudDogIlxmMjcxIgp9CgoubGEtbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNzIiCn0KCi5sYS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3MyIKfQoKLmxhLWxvbmctYXJyb3ctcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3NCIKfQoKLmxhLWxvbmctYXJyb3ctdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3NSIKfQoKLmxhLW1hZ2ljOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyNzYiCn0KCi5sYS1tYWduZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3NyIKfQoKLmxhLW1haWwtZm9yd2FyZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjc4Igp9CgoubGEtbWFpbC1yZXBseTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjc5Igp9CgoubGEtbWFpbC1yZXBseS1hbGw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3YSIKfQoKLmxhLW1hbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3YiIKfQoKLmxhLW1hcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjdjIgp9CgoubGEtbWFwLW1hcmtlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMjdkIgp9CgoubGEtbWFwLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3ZSIKfQoKLmxhLW1hcC1waW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI3ZiIKfQoKLmxhLW1hcC1zaWduczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjgwIgp9CgoubGEtbWFyczpiZWZvcmUgewogICAgY29udGVudDogIlxmMjgxIgp9CgoubGEtbWFycy1kb3VibGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4MiIKfQoKLmxhLW1hcnMtc3Ryb2tlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyODMiCn0KCi5sYS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyODQiCn0KCi5sYS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyODUiCn0KCi5sYS1tYXhjZG46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4NiIKfQoKLmxhLW1lYW5wYXRoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyODciCn0KCi5sYS1tZWRpdW06YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4OCIKfQoKLmxhLW1lZGtpdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMjg5Igp9CgoubGEtbWVoLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4YSIKfQoKLmxhLW1lcmN1cnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4YiIKfQoKLmxhLW1pY3JvcGhvbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4YyIKfQoKLmxhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4ZCIKfQoKLmxhLW1pbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOGUiCn0KCi5sYS1taW51cy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI4ZiIKfQoKLmxhLW1pbnVzLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjkwIgp9CgoubGEtbWludXMtc3F1YXJlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5MSIKfQoKLmxhLW1vYmlsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjkyIgp9CgoubGEtbW9iaWxlLXBob25lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTMiCn0KCi5sYS1tb25leTpiZWZvcmUgewogICAgY29udGVudDogIlxmMjk0Igp9CgoubGEtbW9vbi1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTUiCn0KCi5sYS1tb3J0YXItYm9hcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5NiIKfQoKLmxhLW1vdG9yY3ljbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5NyIKfQoKLmxhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5OCIKfQoKLmxhLW11c2ljOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOTkiCn0KCi5sYS1uYXZpY29uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOWEiCn0KCi5sYS1uZXV0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5YiIKfQoKLmxhLW5ld3NwYXBlci1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOWMiCn0KCi5sYS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjI5ZCIKfQoKLmxhLW9iamVjdC11bmdyb3VwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOWUiCn0KCi5sYS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyOWYiCn0KCi5sYS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmEwIgp9CgoubGEtb3BlbmNhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhMSIKfQoKLmxhLW9wZW5pZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmEyIgp9CgoubGEtb3BlcmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhMyIKfQoKLmxhLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhNCIKfQoKLmxhLW91dGRlbnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhNSIKfQoKLmxhLXBhZ2VsaW5lczpiZWZvcmUgewogICAgY29udGVudDogIlxmMmE2Igp9CgoubGEtcGFpbnQtYnJ1c2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhNyIKfQoKLmxhLXBhcGVyLXBsYW5lOmJlZm9yZSwKLmxhLXNlbmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhOCIKfQoKLmxhLXBhcGVyLXBsYW5lLW86YmVmb3JlLAoubGEtc2VuZC1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYTkiCn0KCi5sYS1wYXBlcmNsaXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhYSIKfQoKLmxhLXBhcmFncmFwaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmFiIgp9CgoubGEtcGFzdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhYyIKfQoKLmxhLXBhdXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYWQiCn0KCi5sYS1wYXc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJhZSIKfQoKLmxhLXBheXBhbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmFmIgp9CgoubGEtcGVuY2lsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjAiCn0KCi5sYS1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjEiCn0KCi5sYS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiMiIKfQoKLmxhLXBob25lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjMiCn0KCi5sYS1waG9uZS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiNCIKfQoKLmxhLXBob3RvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYjUiCn0KCi5sYS1waWN0dXJlLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiNiIKfQoKLmxhLXBpZS1jaGFydDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmI3Igp9CgoubGEtcGllZC1waXBlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmI4Igp9CgoubGEtcGllZC1waXBlci1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiOSIKfQoKLmxhLXBpbnRlcmVzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmJhIgp9CgoubGEtcGludGVyZXN0LXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiYiIKfQoKLmxhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJiYyIKfQoKLmxhLXBsYW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYmQiCn0KCi5sYS1wbGF5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYmUiCn0KCi5sYS1wbGF5LWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmJmIgp9CgoubGEtcGxheS1jaXJjbGUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMmMwIgp9CgoubGEtcGx1ZzpiZWZvcmUgewogICAgY29udGVudDogIlxmMmMxIgp9CgoubGEtcGx1czpiZWZvcmUgewogICAgY29udGVudDogIlxmMmMyIgp9CgoubGEtcGx1cy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjMyIKfQoKLmxhLXBsdXMtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzQiCn0KCi5sYS1wbHVzLXNxdWFyZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzUiCn0KCi5sYS1wb3dlci1vZmY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjNiIKfQoKLmxhLXByaW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzciCn0KCi5sYS1wdXp6bGUtcGllY2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjOCIKfQoKLmxhLXFxOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyYzkiCn0KCi5sYS1xcmNvZGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjYSIKfQoKLmxhLXF1ZXN0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyY2IiCn0KCi5sYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjYyIKfQoKLmxhLXF1b3RlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJjZCIKfQoKLmxhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyY2UiCn0KCi5sYS1yYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmNmIgp9CgoubGEtcmFuZG9tOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDAiCn0KCi5sYS1yZWJlbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmQxIgp9CgoubGEtcmVjeWNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmQyIgp9CgoubGEtcmVkZGl0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDMiCn0KCi5sYS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDQiCn0KCi5sYS1yZWZyZXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDUiCn0KCi5sYS1yZWdpc3RlcmVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZDYiCn0KCi5sYS1yZW5yZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkNyIKfQoKLmxhLXJlb3JkZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkOCIKfQoKLmxhLXJlcGVhdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmQ5Igp9CgoubGEtcmVwbHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkYSIKfQoKLmxhLXJlcGx5LWFsbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRiIgp9CgoubGEtcmV0d2VldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmRjIgp9CgoubGEtcm1iOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZGQiCn0KCi5sYS1yb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZGUiCn0KCi5sYS1yb2NrZXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJkZiIKfQoKLmxhLXJvdGF0ZS1sZWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZTAiCn0KCi5sYS1yb3RhdGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlMSIKfQoKLmxhLXJvdWJsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmUyIgp9CgoubGEtZmVlZDpiZWZvcmUsCi5sYS1yc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlMyIKfQoKLmxhLXJzcy1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlNCIKfQoKLmxhLXJ1YjpiZWZvcmUgewogICAgY29udGVudDogIlxmMmU1Igp9CgoubGEtcnVibGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlNiIKfQoKLmxhLXJ1cGVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZTciCn0KCi5sYS1zYWZhcmk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlOCIKfQoKLmxhLXNhdmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlOSIKfQoKLmxhLXNjaXNzb3JzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZWEiCn0KCi5sYS1zZWFyY2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlYiIKfQoKLmxhLXNlYXJjaC1taW51czpiZWZvcmUgewogICAgY29udGVudDogIlxmMmVjIgp9CgoubGEtc2VhcmNoLXBsdXM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJlZCIKfQoKLmxhLXNlbGxzeTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmVlIgp9CgoubGEtc2VydmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZWYiCn0KCi5sYS1zaGFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMmYwIgp9CgoubGEtc2hhcmUtYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjEiCn0KCi5sYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjIiCn0KCi5sYS1zaGFyZS1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmMyIKfQoKLmxhLXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjQiCn0KCi5sYS1zaGVrZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmNSIKfQoKLmxhLXNoZXFlbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMmY2Igp9CgoubGEtc2hpZWxkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjciCn0KCi5sYS1zaGlwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZjgiCn0KCi5sYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmOSIKfQoKLmxhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmYSIKfQoKLmxhLXNpZ24taW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmYiIKfQoKLmxhLXNpZ24tb3V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZmMiCn0KCi5sYS1zaWduYWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjJmZCIKfQoKLmxhLXNpbXBseWJ1aWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZmUiCn0KCi5sYS1zaXRlbWFwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYyZmYiCn0KCi5sYS1za3lhdGxhczpiZWZvcmUgewogICAgY29udGVudDogIlxmMzAwIgp9CgoubGEtc2t5cGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwMSIKfQoKLmxhLXNsYWNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDIiCn0KCi5sYS1zbGlkZXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDMiCn0KCi5sYS1zbGlkZXNoYXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDQiCn0KCi5sYS1zbWlsZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDUiCn0KCi5sYS1zb3J0OmJlZm9yZSwKLmxhLXVuc29ydGVkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDYiCn0KCi5sYS1zb3J0LWFscGhhLWFzYzpiZWZvcmUgewogICAgY29udGVudDogIlxmMzA3Igp9CgoubGEtc29ydC1hbHBoYS1kZXNjOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMDgiCn0KCi5sYS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwOSIKfQoKLmxhLXNvcnQtYW1vdW50LWRlc2M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwYSIKfQoKLmxhLXNvcnQtYXNjOmJlZm9yZSwKLmxhLXNvcnQtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwYiIKfQoKLmxhLXNvcnQtZGVzYzpiZWZvcmUsCi5sYS1zb3J0LWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwYyIKfQoKLmxhLXNvcnQtbnVtZXJpYy1hc2M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMwZCIKfQoKLmxhLXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMGUiCn0KCi5sYS1zb3VuZGNsb3VkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMGYiCn0KCi5sYS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMTAiCn0KCi5sYS1zcGlubmVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMTEiCn0KCi5sYS1zcG9vbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzEyIgp9CgoubGEtc3BvdGlmeTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzEzIgp9CgoubGEtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMTQiCn0KCi5sYS1zcXVhcmUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMzE1Igp9CgoubGEtc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMxNiIKfQoKLmxhLXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMTciCn0KCi5sYS1zdGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMTgiCn0KCi5sYS1zdGFyLWhhbGY6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMxOSIKfQoKLmxhLXN0YXItaGFsZi1lbXB0eTpiZWZvcmUsCi5sYS1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsCi5sYS1zdGFyLWhhbGYtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMzFhIgp9CgoubGEtc3Rhci1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMWIiCn0KCi5sYS1zdGVhbTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzFjIgp9CgoubGEtc3RlYW0tc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMWQiCn0KCi5sYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMWUiCn0KCi5sYS1zdGVwLWZvcndhcmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMxZiIKfQoKLmxhLXN0ZXRob3Njb3BlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMjAiCn0KCi5sYS1zdGlja3ktbm90ZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzIxIgp9CgoubGEtc3RpY2t5LW5vdGUtbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMzIyIgp9CgoubGEtc3RvcDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzIzIgp9CgoubGEtc3RyZWV0LXZpZXc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMyNCIKfQoKLmxhLXN0cmlrZXRocm91Z2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMyNSIKfQoKLmxhLXN0dW1ibGV1cG9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMjYiCn0KCi5sYS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMyNyIKfQoKLmxhLXN1YnNjcmlwdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzI4Igp9CgoubGEtc3Vid2F5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMjkiCn0KCi5sYS1zdWl0Y2FzZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzJhIgp9CgoubGEtc3VuLW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMyYiIKfQoKLmxhLXN1cGVyc2NyaXB0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMmMiCn0KCi5sYS10YWJsZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzJkIgp9CgoubGEtdGFibGV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMmUiCn0KCi5sYS10YWNob21ldGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMmYiCn0KCi5sYS10YWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzMCIKfQoKLmxhLXRhZ3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzMSIKfQoKLmxhLXRhc2tzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzIiCn0KCi5sYS10YXhpOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzMiCn0KCi5sYS10ZWxldmlzaW9uOmJlZm9yZSwKLmxhLXR2OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzQiCn0KCi5sYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzUiCn0KCi5sYS10ZXJtaW5hbDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzM2Igp9CgoubGEtdGV4dC1oZWlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzNyIKfQoKLmxhLXRleHQtd2lkdGg6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzOCIKfQoKLmxhLXRoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzMzkiCn0KCi5sYS10aC1sYXJnZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzNhIgp9CgoubGEtdGgtbGlzdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzNiIgp9CgoubGEtdGh1bWItdGFjazpiZWZvcmUgewogICAgY29udGVudDogIlxmMzNjIgp9CgoubGEtdGh1bWJzLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzZCIKfQoKLmxhLXRodW1icy1vLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjMzZSIKfQoKLmxhLXRodW1icy1vLXVwOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzM2YiCn0KCi5sYS10aHVtYnMtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0MCIKfQoKLmxhLXRpY2tldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzQxIgp9CgoubGEtcmVtb3ZlOmJlZm9yZSwKLmxhLXRpbWVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNDIiCn0KCi5sYS10aW1lcy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0MyIKfQoKLmxhLXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNDQiCn0KCi5sYS10aW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNDUiCn0KCi5sYS10b2dnbGUtb2ZmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNDYiCn0KCi5sYS10b2dnbGUtb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0NyIKfQoKLmxhLXRyYWRlbWFyazpiZWZvcmUgewogICAgY29udGVudDogIlxmMzQ4Igp9CgoubGEtdHJhaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0OSIKfQoKLmxhLWludGVyc2V4OmJlZm9yZSwKLmxhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNGEiCn0KCi5sYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0YiIKfQoKLmxhLXRyYXNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNGMiCn0KCi5sYS10cmFzaC1vOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNGQiCn0KCi5sYS10cmVlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNGUiCn0KCi5sYS10cmVsbG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM0ZiIKfQoKLmxhLXRyaXBhZHZpc29yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNTAiCn0KCi5sYS10cm9waHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1MSIKfQoKLmxhLXRydWNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNTIiCn0KCi5sYS10cnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1MyIKfQoKLmxhLXR0eTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzU0Igp9CgoubGEtdHVtYmxyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNTUiCn0KCi5sYS10dW1ibHItc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNTYiCn0KCi5sYS10dXJraXNoLWxpcmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1NyIKfQoKLmxhLXR3aXRjaDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzU4Igp9CgoubGEtdHdpdHRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzU5Igp9CgoubGEtdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1YSIKfQoKLmxhLXVtYnJlbGxhOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNWIiCn0KCi5sYS11bmRlcmxpbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1YyIKfQoKLmxhLXVuZG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1ZCIKfQoKLmxhLXVuaXZlcnNpdHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM1ZSIKfQoKLmxhLXVubGluazpiZWZvcmUgewogICAgY29udGVudDogIlxmMzVmIgp9CgoubGEtdW5sb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNjAiCn0KCi5sYS11bmxvY2stYWx0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNjEiCn0KCi5sYS11cGxvYWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2MiIKfQoKLmxhLXVzZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzYzIgp9CgoubGEtdXNlcjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzY0Igp9CgoubGEtdXNlci1tZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzY1Igp9CgoubGEtdXNlci1wbHVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNjYiCn0KCi5sYS11c2VyLXNlY3JldDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzY3Igp9CgoubGEtdXNlci10aW1lczpiZWZvcmUgewogICAgY29udGVudDogIlxmMzY4Igp9CgoubGEtdXNlcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2OSIKfQoKLmxhLXZlbnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNmEiCn0KCi5sYS12ZW51cy1kb3VibGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2YiIKfQoKLmxhLXZlbnVzLW1hcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2YyIKfQoKLmxhLXZpYWNvaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2ZCIKfQoKLmxhLXZpZGVvLWNhbWVyYTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzZlIgp9CgoubGEtdmltZW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM2ZiIKfQoKLmxhLXZpbWVvLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzcwIgp9CgoubGEtdmluZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzcxIgp9CgoubGEtdms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3MiIKfQoKLmxhLXZvbHVtZS1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNzMiCn0KCi5sYS12b2x1bWUtb2ZmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzNzQiCn0KCi5sYS12b2x1bWUtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3NSIKfQoKLmxhLXdhcm5pbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3NiIKfQoKLmxhLXdlY2hhdDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzc3Igp9CgoubGEtd2VpYm86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3OCIKfQoKLmxhLXdlaXhpbjpiZWZvcmUgewogICAgY29udGVudDogIlxmMzc5Igp9CgoubGEtd2hhdHNhcHA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3YSIKfQoKLmxhLXdoZWVsY2hhaXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3YiIKfQoKLmxhLXdpZmk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3YyIKfQoKLmxhLXdpa2lwZWRpYS13OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzN2QiCn0KCi5sYS13aW5kb3dzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzN2UiCn0KCi5sYS13b246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM3ZiIKfQoKLmxhLXdvcmRwcmVzczpiZWZvcmUgewogICAgY29udGVudDogIlxmMzgwIgp9CgoubGEtd3JlbmNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODEiCn0KCi5sYS14aW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODIiCn0KCi5sYS14aW5nLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzgzIgp9CgoubGEteS1jb21iaW5hdG9yOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODQiCn0KCi5sYS15LWNvbWJpbmF0b3Itc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzODUiCn0KCi5sYS15YWhvbzpiZWZvcmUgewogICAgY29udGVudDogIlxmMzg2Igp9CgoubGEteWM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4NyIKfQoKLmxhLXljLXNxdWFyZTpiZWZvcmUgewogICAgY29udGVudDogIlxmMzg4Igp9CgoubGEteWVscDpiZWZvcmUgewogICAgY29udGVudDogIlxmMzg5Igp9CgoubGEteWVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGEiCn0KCi5sYS15b3V0dWJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGIiCn0KCi5sYS15b3V0dWJlLXBsYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjM4YyIKfQoKLmxhLXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYzOGQiCn0KCkBmb250LWZhY2UgewogICAgZm9udC1mYW1pbHk6IExpbmVhcmljb25zLUZyZWU7CiAgICBzcmM6IHVybCguLi9mb250cy9MaW5lYXJpY29ucy1GcmVlNTRlOTU0ZTkuaHRtbD93MTE4ZCk7CiAgICBzcmM6IHVybCguLi9mb250cy9MaW5lYXJpY29ucy1GcmVlZDQxZGQ0MWQuaHRtbD8jaWVmaXh3MTE4ZCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoLi4vZm9udHMvTGluZWFyaWNvbnMtRnJlZTU0ZTktMjU0ZTkuaHRtbD93MTE4ZCkgZm9ybWF0KCd3b2ZmMicpLCB1cmwoLi4vZm9udHMvTGluZWFyaWNvbnMtRnJlZTU0ZTktMzU0ZTkuaHRtbD93MTE4ZCkgZm9ybWF0KCd3b2ZmJyksIHVybCguLi9mb250cy9MaW5lYXJpY29ucy1GcmVlNTRlOS00NTRlOS5odG1sP3cxMThkKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCguLi9mb250cy9MaW5lYXJpY29ucy1GcmVlNTRlOS01NTRlOS5odG1sP3cxMThkI0xpbmVhcmljb25zLUZyZWUpIGZvcm1hdCgnc3ZnJyk7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZm9udC1zdHlsZTogbm9ybWFsCn0KCi5sbnIgewogICAgZm9udC1mYW1pbHk6IExpbmVhcmljb25zLUZyZWU7CiAgICBzcGVhazogbm9uZTsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDsKICAgIHRleHQtdHJhbnNmb3JtOiBub25lOwogICAgbGluZS1oZWlnaHQ6IDE7CiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGUKfQoKLmxuci1ob21lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MDAiCn0KCi5sbnItYXBhcnRtZW50OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MDEiCn0KCi5sbnItcGVuY2lsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MDIiCn0KCi5sbnItbWFnaWMtd2FuZDpiZWZvcmUgewogICAgY29udGVudDogIlxlODAzIgp9CgoubG5yLWRyb3A6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgwNCIKfQoKLmxuci1saWdodGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MDUiCn0KCi5sbnItcG9vcDpiZWZvcmUgewogICAgY29udGVudDogIlxlODA2Igp9CgoubG5yLXN1bjpiZWZvcmUgewogICAgY29udGVudDogIlxlODA3Igp9CgoubG5yLW1vb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgwOCIKfQoKLmxuci1jbG91ZDpiZWZvcmUgewogICAgY29udGVudDogIlxlODA5Igp9CgoubG5yLWNsb3VkLXVwbG9hZDpiZWZvcmUgewogICAgY29udGVudDogIlxlODBhIgp9CgoubG5yLWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MGIiCn0KCi5sbnItY2xvdWQtc3luYzpiZWZvcmUgewogICAgY29udGVudDogIlxlODBjIgp9CgoubG5yLWNsb3VkLWNoZWNrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MGQiCn0KCi5sbnItZGF0YWJhc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgwZSIKfQoKLmxuci1sb2NrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MGYiCn0KCi5sbnItY29nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MTAiCn0KCi5sbnItdHJhc2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgxMSIKfQoKLmxuci1kaWNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MTIiCn0KCi5sbnItaGVhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgxMyIKfQoKLmxuci1zdGFyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MTQiCn0KCi5sbnItc3Rhci1oYWxmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MTUiCn0KCi5sbnItc3Rhci1lbXB0eTpiZWZvcmUgewogICAgY29udGVudDogIlxlODE2Igp9CgoubG5yLWZsYWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgxNyIKfQoKLmxuci1lbnZlbG9wZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODE4Igp9CgoubG5yLXBhcGVyY2xpcDpiZWZvcmUgewogICAgY29udGVudDogIlxlODE5Igp9CgoubG5yLWluYm94OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MWEiCn0KCi5sbnItZXllOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MWIiCn0KCi5sbnItcHJpbnRlcjpiZWZvcmUgewogICAgY29udGVudDogIlxlODFjIgp9CgoubG5yLWZpbGUtZW1wdHk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgxZCIKfQoKLmxuci1maWxlLWFkZDpiZWZvcmUgewogICAgY29udGVudDogIlxlODFlIgp9CgoubG5yLWVudGVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MWYiCn0KCi5sbnItZXhpdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODIwIgp9CgoubG5yLWdyYWR1YXRpb24taGF0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjEiCn0KCi5sbnItbGljZW5zZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODIyIgp9CgoubG5yLW11c2ljLW5vdGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyMyIKfQoKLmxuci1maWxtLXBsYXk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNCIKfQoKLmxuci1jYW1lcmEtdmlkZW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNSIKfQoKLmxuci1jYW1lcmE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNiIKfQoKLmxuci1waWN0dXJlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjciCn0KCi5sbnItYm9vazpiZWZvcmUgewogICAgY29udGVudDogIlxlODI4Igp9CgoubG5yLWJvb2ttYXJrOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjkiCn0KCi5sbnItdXNlcjpiZWZvcmUgewogICAgY29udGVudDogIlxlODJhIgp9CgoubG5yLXVzZXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MmIiCn0KCi5sbnItc2hpcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyYyIKfQoKLmxuci1zdG9yZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODJkIgp9CgoubG5yLWNhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyZSIKfQoKLmxuci10YWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyZiIKfQoKLmxuci1waG9uZS1oYW5kc2V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MzAiCn0KCi5sbnItcGhvbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgzMSIKfQoKLmxuci1wdXNocGluOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MzIiCn0KCi5sbnItbWFwLW1hcmtlcjpiZWZvcmUgewogICAgY29udGVudDogIlxlODMzIgp9CgoubG5yLW1hcDpiZWZvcmUgewogICAgY29udGVudDogIlxlODM0Igp9CgoubG5yLWxvY2F0aW9uOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MzUiCn0KCi5sbnItY2FsZW5kYXItZnVsbDpiZWZvcmUgewogICAgY29udGVudDogIlxlODM2Igp9CgoubG5yLWtleWJvYXJkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MzciCn0KCi5sbnItc3BlbGwtY2hlY2s6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgzOCIKfQoKLmxuci1zY3JlZW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgzOSIKfQoKLmxuci1zbWFydHBob25lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2EiCn0KCi5sbnItdGFibGV0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2IiCn0KCi5sbnItbGFwdG9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2MiCn0KCi5sbnItbGFwdG9wLXBob25lOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2QiCn0KCi5sbnItcG93ZXItc3dpdGNoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2UiCn0KCi5sbnItYnViYmxlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4M2YiCn0KCi5sbnItaGVhcnQtcHVsc2U6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0MCIKfQoKLmxuci1jb25zdHJ1Y3Rpb246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0MSIKfQoKLmxuci1waWUtY2hhcnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0MiIKfQoKLmxuci1jaGFydC1iYXJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NDMiCn0KCi5sbnItZ2lmdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODQ0Igp9CgoubG5yLWRpYW1vbmQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0NSIKfQoKLmxuci1saW5lYXJpY29uczpiZWZvcmUgewogICAgY29udGVudDogIlxlODQ2Igp9CgoubG5yLWRpbm5lcjpiZWZvcmUgewogICAgY29udGVudDogIlxlODQ3Igp9CgoubG5yLWNvZmZlZS1jdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0OCIKfQoKLmxuci1sZWFmOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NDkiCn0KCi5sbnItcGF3OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NGEiCn0KCi5sbnItcm9ja2V0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NGIiCn0KCi5sbnItYnJpZWZjYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NGMiCn0KCi5sbnItYnVzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NGQiCn0KCi5sbnItY2FyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NGUiCn0KCi5sbnItdHJhaW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg0ZiIKfQoKLmxuci1iaWN5Y2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NTAiCn0KCi5sbnItd2hlZWxjaGFpcjpiZWZvcmUgewogICAgY29udGVudDogIlxlODUxIgp9CgoubG5yLXNlbGVjdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODUyIgp9CgoubG5yLWVhcnRoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NTMiCn0KCi5sbnItc21pbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg1NCIKfQoKLmxuci1zYWQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg1NSIKfQoKLmxuci1uZXV0cmFsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NTYiCn0KCi5sbnItbXVzdGFjaGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg1NyIKfQoKLmxuci1hbGFybTpiZWZvcmUgewogICAgY29udGVudDogIlxlODU4Igp9CgoubG5yLWJ1bGxob3JuOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NTkiCn0KCi5sbnItdm9sdW1lLWhpZ2g6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg1YSIKfQoKLmxuci12b2x1bWUtbWVkaXVtOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NWIiCn0KCi5sbnItdm9sdW1lLWxvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODVjIgp9CgoubG5yLXZvbHVtZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODVkIgp9CgoubG5yLW1pYzpiZWZvcmUgewogICAgY29udGVudDogIlxlODVlIgp9CgoubG5yLWhvdXJnbGFzczpiZWZvcmUgewogICAgY29udGVudDogIlxlODVmIgp9CgoubG5yLXVuZG86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg2MCIKfQoKLmxuci1yZWRvOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NjEiCn0KCi5sbnItc3luYzpiZWZvcmUgewogICAgY29udGVudDogIlxlODYyIgp9CgoubG5yLWhpc3Rvcnk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg2MyIKfQoKLmxuci1jbG9jazpiZWZvcmUgewogICAgY29udGVudDogIlxlODY0Igp9CgoubG5yLWRvd25sb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NjUiCn0KCi5sbnItdXBsb2FkOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NjYiCn0KCi5sbnItZW50ZXItZG93bjpiZWZvcmUgewogICAgY29udGVudDogIlxlODY3Igp9CgoubG5yLWV4aXQtdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg2OCIKfQoKLmxuci1idWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg2OSIKfQoKLmxuci1jb2RlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NmEiCn0KCi5sbnItbGluazpiZWZvcmUgewogICAgY29udGVudDogIlxlODZiIgp9CgoubG5yLXVubGluazpiZWZvcmUgewogICAgY29udGVudDogIlxlODZjIgp9CgoubG5yLXRodW1icy11cDpiZWZvcmUgewogICAgY29udGVudDogIlxlODZkIgp9CgoubG5yLXRodW1icy1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NmUiCn0KCi5sbnItbWFnbmlmaWVyOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NmYiCn0KCi5sbnItY3Jvc3M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3MCIKfQoKLmxuci1tZW51OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NzEiCn0KCi5sbnItbGlzdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODcyIgp9CgoubG5yLWNoZXZyb24tdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3MyIKfQoKLmxuci1jaGV2cm9uLWRvd246YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3NCIKfQoKLmxuci1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3NSIKfQoKLmxuci1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NzYiCn0KCi5sbnItYXJyb3ctdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3NyIKfQoKLmxuci1hcnJvdy1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4NzgiCn0KCi5sbnItYXJyb3ctbGVmdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODc5Igp9CgoubG5yLWFycm93LXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4N2EiCn0KCi5sbnItbW92ZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODdiIgp9CgoubG5yLXdhcm5pbmc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3YyIKfQoKLmxuci1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3ZCIKfQoKLmxuci1tZW51LWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODdlIgp9CgoubG5yLWNoZWNrbWFyay1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg3ZiIKfQoKLmxuci1jcm9zcy1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4MCIKfQoKLmxuci1wbHVzLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODgxIgp9CgoubG5yLWNpcmNsZS1taW51czpiZWZvcmUgewogICAgY29udGVudDogIlxlODgyIgp9CgoubG5yLWFycm93LXVwLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODgzIgp9CgoubG5yLWFycm93LWRvd24tY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4ODQiCn0KCi5sbnItYXJyb3ctbGVmdC1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4NSIKfQoKLmxuci1hcnJvdy1yaWdodC1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4NiIKfQoKLmxuci1jaGV2cm9uLXVwLWNpcmNsZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODg3Igp9CgoubG5yLWNoZXZyb24tZG93bi1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4OCIKfQoKLmxuci1jaGV2cm9uLWxlZnQtY2lyY2xlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4ODkiCn0KCi5sbnItY2hldnJvbi1yaWdodC1jaXJjbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4YSIKfQoKLmxuci1jcm9wOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OGIiCn0KCi5sbnItZnJhbWUtZXhwYW5kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OGMiCn0KCi5sbnItZnJhbWUtY29udHJhY3Q6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4ZCIKfQoKLmxuci1sYXllcnM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4ZSIKfQoKLmxuci1mdW5uZWw6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg4ZiIKfQoKLmxuci10ZXh0LWZvcm1hdDpiZWZvcmUgewogICAgY29udGVudDogIlxlODkwIgp9CgoubG5yLXRleHQtZm9ybWF0LXJlbW92ZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODkxIgp9CgoubG5yLXRleHQtc2l6ZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODkyIgp9CgoubG5yLWJvbGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg5MyIKfQoKLmxuci1pdGFsaWM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg5NCIKfQoKLmxuci11bmRlcmxpbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg5NSIKfQoKLmxuci1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OTYiCn0KCi5sbnItaGlnaGxpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OTciCn0KCi5sbnItdGV4dC1hbGlnbi1sZWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OTgiCn0KCi5sbnItdGV4dC1hbGlnbi1jZW50ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTg5OSIKfQoKLmxuci10ZXh0LWFsaWduLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OWEiCn0KCi5sbnItdGV4dC1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OWIiCn0KCi5sbnItbGluZS1zcGFjaW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OWMiCn0KCi5sbnItaW5kZW50LWluY3JlYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OWQiCn0KCi5sbnItaW5kZW50LWRlY3JlYXNlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4OWUiCn0KCi5sbnItcGlsY3JvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODlmIgp9CgoubG5yLWRpcmVjdGlvbi1sdHI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZThhMCIKfQoKLmxuci1kaXJlY3Rpb24tcnRsOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTEiCn0KCi5sbnItcGFnZS1icmVhazpiZWZvcmUgewogICAgY29udGVudDogIlxlOGEyIgp9CgoubG5yLXNvcnQtYWxwaGEtYXNjOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTMiCn0KCi5sbnItc29ydC1hbW91bnQtYXNjOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTQiCn0KCi5sbnItaGFuZDpiZWZvcmUgewogICAgY29udGVudDogIlxlOGE1Igp9CgoubG5yLXBvaW50ZXItdXA6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZThhNiIKfQoKLmxuci1wb2ludGVyLXJpZ2h0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTciCn0KCi5sbnItcG9pbnRlci1kb3duOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTgiCn0KCi5sbnItcG9pbnRlci1sZWZ0OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4YTkiCn0KCi5tZnAtYmcgewogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgei1pbmRleDogMTA0MjsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICBiYWNrZ3JvdW5kOiAjMGIwYjBiOwogICAgb3BhY2l0eTogLjgKfQoKLm1mcC13cmFwIHsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIHotaW5kZXg6IDEwNDM7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbgp9CgoubWZwLWNvbnRhaW5lciB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBwYWRkaW5nOiAwIDhweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3gKfQoKLm1mcC1jb250YWluZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICcnOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgaGVpZ2h0OiAxMDAlOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQp9CgoubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUgewogICAgZGlzcGxheTogbm9uZQp9CgoubWZwLWNvbnRlbnQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIG1hcmdpbjogMCBhdXRvOwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIHotaW5kZXg6IDEwNDUKfQoKLm1mcC1hamF4LWhvbGRlciAubWZwLWNvbnRlbnQsCi5tZnAtaW5saW5lLWhvbGRlciAubWZwLWNvbnRlbnQgewogICAgd2lkdGg6IDEwMCU7CiAgICBjdXJzb3I6IGF1dG8KfQoKLm1mcC1hamF4LWN1ciB7CiAgICBjdXJzb3I6IHByb2dyZXNzCn0KCi5tZnAtem9vbS1vdXQtY3VyLAoubWZwLXpvb20tb3V0LWN1ciAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHsKICAgIGN1cnNvcjogLW1vei16b29tLW91dDsKICAgIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDsKICAgIGN1cnNvcjogem9vbS1vdXQKfQoKLm1mcC16b29tIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGN1cnNvcjogLXdlYmtpdC16b29tLWluOwogICAgY3Vyc29yOiAtbW96LXpvb20taW47CiAgICBjdXJzb3I6IHpvb20taW4KfQoKLm1mcC1hdXRvLWN1cnNvciAubWZwLWNvbnRlbnQgewogICAgY3Vyc29yOiBhdXRvCn0KCi5tZnAtYXJyb3csCi5tZnAtY2xvc2UsCi5tZnAtY291bnRlciwKLm1mcC1wcmVsb2FkZXIgewogICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7CiAgICB1c2VyLXNlbGVjdDogbm9uZQp9CgoubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7CiAgICBkaXNwbGF5OiBub25lCn0KCi5tZnAtaGlkZSB7CiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQKfQoKLm1mcC1wcmVsb2FkZXIgewogICAgY29sb3I6ICNjY2M7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDUwJTsKICAgIHdpZHRoOiBhdXRvOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgbWFyZ2luLXRvcDogLS44ZW07CiAgICBsZWZ0OiA4cHg7CiAgICByaWdodDogOHB4OwogICAgei1pbmRleDogMTA0NAp9CgoubWZwLXByZWxvYWRlciBhIHsKICAgIGNvbG9yOiAjY2NjCn0KCi5tZnAtcHJlbG9hZGVyIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLm1mcC1zLWVycm9yIC5tZnAtY29udGVudCB7CiAgICBkaXNwbGF5OiBub25lCn0KCmJ1dHRvbi5tZnAtYXJyb3csCmJ1dHRvbi5tZnAtY2xvc2UgewogICAgb3ZlcmZsb3c6IHZpc2libGU7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDA7CiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIG91dGxpbmU6IDA7CiAgICBwYWRkaW5nOiAwOwogICAgei1pbmRleDogMTA0NjsKICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbgp9CgpidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgewogICAgcGFkZGluZzogMDsKICAgIGJvcmRlcjogMAp9CgoubWZwLWNsb3NlIHsKICAgIHdpZHRoOiA0NHB4OwogICAgaGVpZ2h0OiA0NHB4OwogICAgbGluZS1oZWlnaHQ6IDQ0cHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIG9wYWNpdHk6IC42NTsKICAgIHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtc2l6ZTogMjhweDsKICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZQp9CgoubWZwLWNsb3NlOmZvY3VzLAoubWZwLWNsb3NlOmhvdmVyIHsKICAgIG9wYWNpdHk6IDEKfQoKLm1mcC1jbG9zZTphY3RpdmUgewogICAgdG9wOiAxcHgKfQoKLm1mcC1jbG9zZS1idG4taW4gLm1mcC1jbG9zZSB7CiAgICBjb2xvcjogIzMzMwp9CgoubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSwKLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHJpZ2h0OiAtNnB4OwogICAgdGV4dC1hbGlnbjogcmlnaHQ7CiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7CiAgICB3aWR0aDogMTAwJQp9CgoubWZwLWNvdW50ZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgcmlnaHQ6IDA7CiAgICBjb2xvcjogI2NjYzsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGxpbmUtaGVpZ2h0OiAxOHB4OwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9CgoubWZwLWFycm93IHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIG9wYWNpdHk6IC42NTsKICAgIG1hcmdpbjogMDsKICAgIHRvcDogNTAlOwogICAgbWFyZ2luLXRvcDogLTU1cHg7CiAgICBwYWRkaW5nOiAwOwogICAgd2lkdGg6IDkwcHg7CiAgICBoZWlnaHQ6IDExMHB4OwogICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudAp9CgoubWZwLWFycm93OmFjdGl2ZSB7CiAgICBtYXJnaW4tdG9wOiAtNTRweAp9CgoubWZwLWFycm93OmZvY3VzLAoubWZwLWFycm93OmhvdmVyIHsKICAgIG9wYWNpdHk6IDEKfQoKLm1mcC1hcnJvdzphZnRlciwKLm1mcC1hcnJvdzpiZWZvcmUgewogICAgY29udGVudDogJyc7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAwOwogICAgaGVpZ2h0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIG1hcmdpbi10b3A6IDM1cHg7CiAgICBtYXJnaW4tbGVmdDogMzVweDsKICAgIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50Cn0KCi5tZnAtYXJyb3c6YWZ0ZXIgewogICAgYm9yZGVyLXRvcC13aWR0aDogMTNweDsKICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7CiAgICB0b3A6IDhweAp9CgoubWZwLWFycm93OmJlZm9yZSB7CiAgICBib3JkZXItdG9wLXdpZHRoOiAyMXB4OwogICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMjFweDsKICAgIG9wYWNpdHk6IC43Cn0KCi5tZnAtYXJyb3ctbGVmdCB7CiAgICBsZWZ0OiAwCn0KCi5tZnAtYXJyb3ctbGVmdDphZnRlciB7CiAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI2ZmZjsKICAgIG1hcmdpbi1sZWZ0OiAzMXB4Cn0KCi5tZnAtYXJyb3ctbGVmdDpiZWZvcmUgewogICAgbWFyZ2luLWxlZnQ6IDI1cHg7CiAgICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNmM2YzZgp9CgoubWZwLWFycm93LXJpZ2h0IHsKICAgIHJpZ2h0OiAwCn0KCi5tZnAtYXJyb3ctcmlnaHQ6YWZ0ZXIgewogICAgYm9yZGVyLWxlZnQ6IDE3cHggc29saWQgI2ZmZjsKICAgIG1hcmdpbi1sZWZ0OiAzOXB4Cn0KCi5tZnAtYXJyb3ctcmlnaHQ6YmVmb3JlIHsKICAgIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzZjNmM2YKfQoKLm1mcC1pZnJhbWUtaG9sZGVyIHsKICAgIHBhZGRpbmctdG9wOiA0MHB4OwogICAgcGFkZGluZy1ib3R0b206IDQwcHgKfQoKLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY29udGVudCB7CiAgICBsaW5lLWhlaWdodDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgbWF4LXdpZHRoOiA5MDBweAp9CgoubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7CiAgICB0b3A6IC00MHB4Cn0KCi5tZnAtaWZyYW1lLXNjYWxlciB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMDsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBwYWRkaW5nLXRvcDogNTYuMjUlCn0KCi5tZnAtaWZyYW1lLXNjYWxlciBpZnJhbWUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgLjYpOwogICAgYmFja2dyb3VuZDogIzAwMAp9CgppbWcubWZwLWltZyB7CiAgICB3aWR0aDogYXV0bzsKICAgIG1heC13aWR0aDogMTAwJTsKICAgIGhlaWdodDogYXV0bzsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDA7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgcGFkZGluZzogNDBweCAwIDQwcHg7CiAgICBtYXJnaW46IDAgYXV0bwp9CgoubWZwLWZpZ3VyZSB7CiAgICBsaW5lLWhlaWdodDogMAp9CgoubWZwLWZpZ3VyZTphZnRlciB7CiAgICBjb250ZW50OiAnJzsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDQwcHg7CiAgICBib3R0b206IDQwcHg7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHJpZ2h0OiAwOwogICAgd2lkdGg6IGF1dG87CiAgICBoZWlnaHQ6IGF1dG87CiAgICB6LWluZGV4OiAtMTsKICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAuNik7CiAgICBiYWNrZ3JvdW5kOiAjNDQ0Cn0KCi5tZnAtZmlndXJlIHNtYWxsIHsKICAgIGNvbG9yOiAjYmRiZGJkOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBmb250LXNpemU6IDEycHg7CiAgICBsaW5lLWhlaWdodDogMTRweAp9CgoubWZwLWZpZ3VyZSBmaWd1cmUgewogICAgbWFyZ2luOiAwCn0KCi5tZnAtYm90dG9tLWJhciB7CiAgICBtYXJnaW4tdG9wOiAtMzZweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGN1cnNvcjogYXV0bwp9CgoubWZwLXRpdGxlIHsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBsaW5lLWhlaWdodDogMThweDsKICAgIGNvbG9yOiAjZjNmM2YzOwogICAgd29yZC13cmFwOiBicmVhay13b3JkOwogICAgcGFkZGluZy1yaWdodDogMzZweAp9CgoubWZwLWltYWdlLWhvbGRlciAubWZwLWNvbnRlbnQgewogICAgbWF4LXdpZHRoOiAxMDAlCn0KCi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo4MDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLApzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OjMwMHB4KSB7CiAgICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIgewogICAgICAgIHBhZGRpbmctbGVmdDogMDsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwCiAgICB9CiAgICAubWZwLWltZy1tb2JpbGUgaW1nLm1mcC1pbWcgewogICAgICAgIHBhZGRpbmc6IDAKICAgIH0KICAgIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZTphZnRlciB7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGJvdHRvbTogMAogICAgfQogICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlIHNtYWxsIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmU7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweAogICAgfQogICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtYm90dG9tLWJhciB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNik7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIG1hcmdpbjogMDsKICAgICAgICB0b3A6IGF1dG87CiAgICAgICAgcGFkZGluZzogM3B4IDVweDsKICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveAogICAgfQogICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtYm90dG9tLWJhcjplbXB0eSB7CiAgICAgICAgcGFkZGluZzogMAogICAgfQogICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY291bnRlciB7CiAgICAgICAgcmlnaHQ6IDVweDsKICAgICAgICB0b3A6IDNweAogICAgfQogICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY2xvc2UgewogICAgICAgIHRvcDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICB3aWR0aDogMzVweDsKICAgICAgICBoZWlnaHQ6IDM1cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNik7CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAwCiAgICB9Cn0KCkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6OTAwcHgpIHsKICAgIC5tZnAtYXJyb3cgewogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNzUpOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjc1KQogICAgfQogICAgLm1mcC1hcnJvdy1sZWZ0IHsKICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDA7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMAogICAgfQogICAgLm1mcC1hcnJvdy1yaWdodCB7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlOwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUKICAgIH0KICAgIC5tZnAtY29udGFpbmVyIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHgKICAgIH0KfQoKLmFyZXMudHBhcnJvd3MgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1pbi13aWR0aDogNjBweDsKICAgIG1pbi1oZWlnaHQ6IDYwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDsKICAgIGJvcmRlci1yYWRpdXM6IDUwJQp9CgouYXJlcy50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAyNXB4OwogICAgY29sb3I6ICNhYWE7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiA2MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuM3M7CiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIC4zczsKICAgIHRyYW5zaXRpb246IGNvbG9yIC4zczsKICAgIHotaW5kZXg6IDI7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmFyZXMudHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MWYiCn0KCi5hcmVzLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgxZSIKfQoKLmFyZXMudHBhcnJvd3M6aG92ZXI6YmVmb3JlIHsKICAgIGNvbG9yOiAjMDAwCn0KCi5hcmVzIC50cC10aXRsZS13cmFwIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHotaW5kZXg6IDE7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgbWluLWhlaWdodDogNjBweDsKICAgIGxpbmUtaGVpZ2h0OiA2MHB4OwogICAgdG9wOiAwOwogICAgbWFyZ2luLWxlZnQ6IDMwcHg7CiAgICBib3JkZXItcmFkaXVzOiAwIDMwcHggMzBweCAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJQp9CgouYXJlcy50cC1yaWdodGFycm93IC50cC10aXRsZS13cmFwIHsKICAgIHJpZ2h0OiAwOwogICAgbWFyZ2luLXJpZ2h0OiAzMHB4OwogICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogICAgYm9yZGVyLXJhZGl1czogMzBweCAwIDAgMzBweAp9CgouYXJlcy50cGFycm93czpob3ZlciAudHAtdGl0bGUtd3JhcCB7CiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKSBzY2FsZVkoMSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpIHNjYWxlWSgxKQp9CgouYXJlcyAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDBweCk7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgY29sb3I6ICMwMDA7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZm9udC1zaXplOiAxNHB4OwogICAgbGluZS1oZWlnaHQ6IDYwcHg7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgcGFkZGluZzogMCAyMHB4OwogICAgbWFyZ2luLWxlZnQ6IDEwcHg7CiAgICBvcGFjaXR5OiAwCn0KCi5hcmVzLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMHB4KTsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgbWFyZ2luLXJpZ2h0OiAxMHB4Cn0KCi5hcmVzLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItdGl0bGVob2xkZXIgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7CiAgICBvcGFjaXR5OiAxCn0KCi5hcmVzLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLmFyZXMgLnRwLWJ1bGxldCB7CiAgICB3aWR0aDogMTNweDsKICAgIGhlaWdodDogMTNweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveAp9CgouYXJlcyAudHAtYnVsbGV0LnNlbGVjdGVkLAouYXJlcyAudHAtYnVsbGV0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmFyZXMgLnRwLWJ1bGxldC10aXRsZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb2xvcjogIzg4ODsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIHBhZGRpbmc6IDAgMTBweDsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICByaWdodDogMjdweDsKICAgIHRvcDogLTRweDsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIGxpbmUtaGVpZ2h0OiAyMHB4OwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9CgouYXJlcyAudHAtYnVsbGV0LXRpdGxlOmFmdGVyIHsKICAgIHdpZHRoOiAwOwogICAgaGVpZ2h0OiAwOwogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAgIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTBweDsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuNzUpOwogICAgY29udGVudDogIiAiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IC0xMHB4OwogICAgdG9wOiAwCn0KCi5hcmVzIC50cC1idWxsZXQ6aG92ZXIgLnRwLWJ1bGxldC10aXRsZSB7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkKfQoKLmFyZXMgLnRwLWJ1bGxldC5zZWxlY3RlZDpob3ZlciAudHAtYnVsbGV0LXRpdGxlIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmFyZXMgLnRwLWJ1bGxldC5zZWxlY3RlZDpob3ZlciAudHAtYnVsbGV0LXRpdGxlOmFmdGVyIHsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZgp9CgouYXJlcy50cC1idWxsZXRzOmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogICAgdmlzaWJpbGl0eTogaGlkZGVuCn0KCi5hcmVzLnRwLWJ1bGxldHM6aG92ZXIgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LXRpdGxlIHsKICAgIHZpc2liaWxpdHk6IHZpc2libGUKfQoKLmFyZXMgLnRwLXRhYiB7CiAgICBvcGFjaXR5OiAxOwogICAgcGFkZGluZzogMTBweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTUKfQoKLmFyZXMgLnRwLXRhYi1pbWFnZSB7CiAgICB3aWR0aDogNjBweDsKICAgIGhlaWdodDogNjBweDsKICAgIG1heC1oZWlnaHQ6IDEwMCU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBmbG9hdDogbGVmdAp9CgouYXJlcyAudHAtdGFiLWNvbnRlbnQgewogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDg1cHg7CiAgICBsZWZ0OiAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIG1hcmdpbi10b3A6IC0xNXB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGNvbG9yOiAjMzMzOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUKfQoKLmFyZXMgLnRwLXRhYi1kYXRlIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgY29sb3I6ICNhYWE7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgZm9udC1zaXplOiAxMnB4OwogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYXJlcyAudHAtdGFiLXRpdGxlIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIGNvbG9yOiAjMzMzOwogICAgZm9udC1zaXplOiAxNHB4OwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIHRleHQtdHJhbnNmb3JtOiBub25lOwogICAgbGluZS1oZWlnaHQ6IDE3cHgKfQoKLmFyZXMgLnRwLXRhYi5zZWxlY3RlZCwKLmFyZXMgLnRwLXRhYjpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjZWVlCn0KCi5jdXN0b20udHBhcnJvd3MgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDAwCn0KCi5jdXN0b20udHBhcnJvd3M6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzAwMAp9CgouY3VzdG9tLnRwYXJyb3dzOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBmb250LXNpemU6IDE1cHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDQwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmN1c3RvbS50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNCIKfQoKLmN1c3RvbS50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjUiCn0KCi5jdXN0b20udHAtYnVsbGV0czpiZWZvcmUgewogICAgY29udGVudDogIiAiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBwYWRkaW5nOiAxMHB4OwogICAgbWFyZ2luLWxlZnQ6IC0xMHB4OwogICAgbWFyZ2luLXRvcDogLTEwcHg7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveAp9CgouY3VzdG9tIC50cC1idWxsZXQgewogICAgd2lkdGg6IDEycHg7CiAgICBoZWlnaHQ6IDEycHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBiYWNrZ3JvdW5kOiAjYWFhOwogICAgYmFja2dyb3VuZDogcmdiYSgxMjUsIDEyNSwgMTI1LCAuNSk7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveAp9CgouY3VzdG9tIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5jdXN0b20gLnRwLWJ1bGxldDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjN2Q3ZDdkCn0KCi5kaW9uZS50cGFycm93cyB7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogMTAwcHg7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApOwogICAgbGluZS1oZWlnaHQ6IDEwMCU7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5kaW9uZS50cGFycm93czpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC40NSkKfQoKLmRpb25lIC50cC1hcnItaW1nd3JhcHBlciB7CiAgICB3aWR0aDogMTAwcHg7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgdG9wOiAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouZGlvbmUudHAtcmlnaHRhcnJvdyAudHAtYXJyLWltZ3dyYXBwZXIgewogICAgbGVmdDogYXV0bzsKICAgIHJpZ2h0OiAwCn0KCi5kaW9uZSAudHAtYXJyLWltZ2hvbGRlciB7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOwogICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgIHdpZHRoOiAxMDBweDsKICAgIGhlaWdodDogMTAwJTsKICAgIHRvcDogMDsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTBweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTBweCk7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgb3BhY2l0eTogMDsKICAgIGxlZnQ6IDAKfQoKLmRpb25lLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci1pbWdob2xkZXIgewogICAgcmlnaHQ6IDA7CiAgICBsZWZ0OiBhdXRvOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCkKfQoKLmRpb25lLnRwYXJyb3dzOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsaW5lLWhlaWdodDogMzBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMjJweDsKICAgIHRvcDogNTAlOwogICAgbGVmdDogNTAlOwogICAgZm9udC1zaXplOiAzMHB4OwogICAgbWFyZ2luLXRvcDogLTE1cHg7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5kaW9uZS50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBtYXJnaW4tbGVmdDogNnB4Cn0KCi5kaW9uZS50cGFycm93czpob3ZlcjpiZWZvcmUgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTsKICAgIG9wYWNpdHk6IDAKfQoKLmRpb25lLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6aG92ZXI6YmVmb3JlIHsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpCn0KCi5kaW9uZS50cGFycm93czpob3ZlciAudHAtYXJyLWltZ2hvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIG9wYWNpdHk6IDE7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCn0KCi5kaW9uZSAudHAtYnVsbGV0IHsKICAgIG9wYWNpdHk6IDE7CiAgICB3aWR0aDogNTBweDsKICAgIGhlaWdodDogNTBweDsKICAgIHBhZGRpbmc6IDNweDsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICBtYXJnaW46IDA7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcwp9CgouZGlvbmUgLnRwLWJ1bGxldC1pbWFnZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIC1tb3otYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAuMjUpOwogICAgYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAuMjUpOwogICAgd2lkdGg6IDQ0cHg7CiAgICBoZWlnaHQ6IDQ0cHg7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcgp9CgouZGlvbmUgLnRwLWJ1bGxldC10aXRsZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBib3R0b206IDY1cHg7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBsZWZ0OiA1MCU7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNzUpOwogICAgY29sb3I6ICNmZmY7CiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDsKICAgIG9wYWNpdHk6IDA7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC4wMDFweCkgdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE0cHgpOwogICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWiguMDAxcHgpIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgICBvcGFjaXR5OiAwOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9CgouZGlvbmUgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LXRpdGxlIHsKICAgIHRyYW5zZm9ybTogcm90YXRlWCgwKSB0cmFuc2xhdGVYKC01MCUpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMCkgdHJhbnNsYXRlWCgtNTAlKTsKICAgIG9wYWNpdHk6IDEKfQoKLmRpb25lIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5kaW9uZSAudHAtYnVsbGV0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7CiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkpKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSAxMDAlKTsKICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSIjZmZmZmZmIiwgZW5kQ29sb3JzdHI9IiM3Nzc3NzciLCBHcmFkaWVudFR5cGU9MCkKfQoKLmRpb25lIC50cC1idWxsZXQtdGl0bGU6YWZ0ZXIgewogICAgY29udGVudDogIiAiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogNTAlOwogICAgbWFyZ2luLWxlZnQ6IC04cHg7CiAgICB3aWR0aDogMDsKICAgIGhlaWdodDogMDsKICAgIGJvcmRlci1zdHlsZTogc29saWQ7CiAgICBib3JkZXItd2lkdGg6IDhweCA4cHggMCA4cHg7CiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgLjc1KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsKICAgIGJvdHRvbTogLThweAp9CgouZXJpbnllbi50cGFycm93cyB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNSk7CiAgICBtaW4td2lkdGg6IDcwcHg7CiAgICBtaW4taGVpZ2h0OiA3MHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB6LWluZGV4OiAxMDAwOwogICAgYm9yZGVyLXJhZGl1czogMzVweAp9CgouZXJpbnllbi50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAyMHB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiA3MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgei1pbmRleDogMjsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouZXJpbnllbi50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNCIKfQoKLmVyaW55ZW4udHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI1Igp9CgouZXJpbnllbiAudHAtdGl0bGUtd3JhcCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB6LWluZGV4OiAxOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgbWluLWhlaWdodDogNzBweDsKICAgIGxpbmUtaGVpZ2h0OiA3MHB4OwogICAgdG9wOiAwOwogICAgbWFyZ2luLWxlZnQ6IDA7CiAgICBib3JkZXItcmFkaXVzOiAzNXB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4zczsKICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOwogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgb3BhY2l0eTogMAp9CgouZXJpbnllbi50cGFycm93czpob3ZlciAudHAtdGl0bGUtd3JhcCB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGUKfQoKLmVyaW55ZW4udHAtcmlnaHRhcnJvdyAudHAtdGl0bGUtd3JhcCB7CiAgICByaWdodDogMDsKICAgIG1hcmdpbi1yaWdodDogMDsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDM1cHg7CiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OwogICAgcGFkZGluZy1sZWZ0OiAxMHB4Cn0KCi5lcmlueWVuLnRwLWxlZnRhcnJvdyAudHAtdGl0bGUtd3JhcCB7CiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7CiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4Cn0KCi5lcmlueWVuIC50cC1hcnItdGl0bGVob2xkZXIgewogICAgbGV0dGVyLXNwYWNpbmc6IDNweDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDBweCk7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZm9udC1zaXplOiAxM3B4OwogICAgbGluZS1oZWlnaHQ6IDcwcHg7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgcGFkZGluZzogMCAyMHB4OwogICAgbWFyZ2luLWxlZnQ6IDExcHg7CiAgICBvcGFjaXR5OiAwCn0KCi5lcmlueWVuIC50cC1hcnItaW1naG9sZGVyIHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyCn0KCi5lcmlueWVuIC50cC1hcnItaW1nLW92ZXIgewogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpCn0KCi5lcmlueWVuLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMHB4KTsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgbWFyZ2luLXJpZ2h0OiAxMXB4Cn0KCi5lcmlueWVuLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItdGl0bGVob2xkZXIgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7CiAgICBvcGFjaXR5OiAxCn0KCi5lcmlueWVuLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogIzU1NTsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzU1NSAwLCAjMjIyIDEwMCUpOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzU1NSAwLCAjMjIyIDEwMCUpOwogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM1NTUgMCwgIzIyMiAxMDAlKTsKICAgIGZpbHRlcjogcHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydGNvbG9yc3RyPSIjNTU1NTU1IiwgZW5kY29sb3JzdHI9IiMyMjIyMjIiLCBncmFkaWVudHR5cGU9MCk7CiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7CiAgICBtYXJnaW4tbGVmdDogLTE1cHg7CiAgICBtYXJnaW4tdG9wOiAtMTBweDsKICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OwogICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgIGJveC1zaGFkb3c6IDAgMCAycHggMXB4IHJnYmEoMzMsIDMzLCAzMywgLjMpCn0KCi5lcmlueWVuIC50cC1idWxsZXQgewogICAgd2lkdGg6IDEzcHg7CiAgICBoZWlnaHQ6IDEzcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBiYWNrZ3JvdW5kOiAjMTExOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLmVyaW55ZW4gLnRwLWJ1bGxldC5zZWxlY3RlZCwKLmVyaW55ZW4gLnRwLWJ1bGxldDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjZTVlNWU1OwogICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZTVlNWU1IDAsICM5OTkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAsICNlNWU1ZTUpLCBjb2xvci1zdG9wKDEwMCUsICM5OTkpKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2U1ZTVlNSAwLCAjOTk5IDEwMCUpOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2U1ZTVlNSAwLCAjOTk5IDEwMCUpOwogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNlNWU1ZTUgMCwgIzk5OSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlNWU1ZTUgMCwgIzk5OSAxMDAlKTsKICAgIGZpbHRlcjogcHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydGNvbG9yc3RyPSIjZTVlNWU1IiwgZW5kY29sb3JzdHI9IiM5OTk5OTkiLCBncmFkaWVudHR5cGU9MCk7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTU1OwogICAgd2lkdGg6IDEycHg7CiAgICBoZWlnaHQ6IDEycHgKfQoKLmVyaW55ZW4gLnRwLXRodW1iIHsKICAgIG9wYWNpdHk6IDEKfQoKLmVyaW55ZW4gLnRwLXRodW1iLW92ZXIgewogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHotaW5kZXg6IDE7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5lcmlueWVuIC50cC10aHVtYi1tb3JlOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBmb250LXNpemU6IDEycHg7CiAgICBjb2xvcjogI2FhYTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAxMnB4OwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIHotaW5kZXg6IDI7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDIwcHg7CiAgICByaWdodDogMjBweDsKICAgIHotaW5kZXg6IDIKfQoKLmVyaW55ZW4gLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNSIKfQoKLmVyaW55ZW4gLnRwLXRodW1iLXRpdGxlIHsKICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5OwogICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBsaW5lLWhlaWdodDogMTVweDsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICB6LWluZGV4OiAyOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHotaW5kZXg6IDI7CiAgICBwYWRkaW5nOiAyMHB4IDM1cHggMjBweCAyMHB4OwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmVyaW55ZW4gLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1tb3JlOmJlZm9yZSwKLmVyaW55ZW4gLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi1tb3JlOmJlZm9yZSB7CiAgICBjb2xvcjogI2FhYQp9CgouZXJpbnllbiAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW92ZXIsCi5lcmlueWVuIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItb3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5lcmlueWVuIC50cC10aHVtYi5zZWxlY3RlZCAudHAtdGh1bWItdGl0bGUsCi5lcmlueWVuIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItdGl0bGUgewogICAgY29sb3I6ICMwMDAKfQoKLmVyaW55ZW4gLnRwLXRhYi10aXRsZSB7CiAgICBjb2xvcjogI2E4ZDhlZTsKICAgIGZvbnQtc2l6ZTogMTNweDsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgZm9udC1mYW1pbHk6ICJSb2JvdG8gU2xhYiI7CiAgICBtYXJnaW4tYm90dG9tOiA1cHgKfQoKLmVyaW55ZW4gLnRwLXRhYi1kZXNjIHsKICAgIGZvbnQtc2l6ZTogMThweDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIGxpbmUtaGVpZ2h0OiAyNXB4OwogICAgZm9udC1mYW1pbHk6ICJSb2JvdG8gU2xhYiIKfQoKLmd5Z2VzLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogIzc3NzsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3NyAwLCAjNjY2IDEwMCUpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwLCAjNzc3KSwgY29sb3Itc3RvcCgxMDAlLCAjNjY2KSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM3NzcgMCwgIzY2NiAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM3NzcgMCwgIzY2NiAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3IDAsICM2NjYgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNzc3IDAsICM2NjYgMTAwJSk7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iIzc3Nzc3NyIsIGVuZENvbG9yc3RyPSIjNjY2NjY2IiwgR3JhZGllbnRUeXBlPTApOwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3g7CiAgICBib3JkZXItcmFkaXVzOiAxMHB4Cn0KCi5neWdlcyAudHAtYnVsbGV0IHsKICAgIHdpZHRoOiAxMnB4OwogICAgaGVpZ2h0OiAxMnB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYmFja2dyb3VuZDogIzMzMzsKICAgIGJvcmRlcjogM3B4IHNvbGlkICM0NDQ7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveAp9CgouZ3lnZXMgLnRwLWJ1bGxldC5zZWxlY3RlZCwKLmd5Z2VzIC50cC1idWxsZXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiAwLCAjZTFlMWUxIDEwMCUpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwLCAjZmZmKSwgY29sb3Itc3RvcCgxMDAlLCAjZTFlMWUxKSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYgMCwgI2UxZTFlMSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYgMCwgI2UxZTFlMSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAsICNlMWUxZTEgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDAsICNlMWUxZTEgMTAwJSk7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iI2ZmZmZmZiIsIGVuZENvbG9yc3RyPSIjZTFlMWUxIiwgR3JhZGllbnRUeXBlPTApCn0KCi5neWdlcyAudHAtdGh1bWIgewogICAgb3BhY2l0eTogMQp9CgouZ3lnZXMgLnRwLXRodW1iLWltZy13cmFwIHsKICAgIHBhZGRpbmc6IDNweDsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG1hcmdpbjogMDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5neWdlcyAudHAtdGh1bWItaW1hZ2UgewogICAgcGFkZGluZzogM3B4OwogICAgZGlzcGxheTogYmxvY2s7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouZ3lnZXMgLnRwLXRodW1iLXRpdGxlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJvdHRvbTogMTAwJTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGxlZnQ6IDUwJTsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpOwogICAgcGFkZGluZzogMTBweCAzMHB4OwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgb3BhY2l0eTogMDsKICAgIHRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLjAwMXB4KSB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTRweCk7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC4wMDFweCkgdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE0cHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXAKfQoKLmd5Z2VzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItdGl0bGUgewogICAgdHJhbnNmb3JtOiByb3RhdGVYKDApIHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwKSB0cmFuc2xhdGVYKC01MCUpOwogICAgb3BhY2l0eTogMQp9CgouZ3lnZXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1pbWctd3JhcCwKLmd5Z2VzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItaW1nLXdyYXAgewogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9IiNmZmZmZmYiLCBlbmRDb2xvcnN0cj0iIzc3Nzc3NyIsIEdyYWRpZW50VHlwZT0wKQp9CgouZ3lnZXMgLnRwLXRodW1iLXRpdGxlOmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgd2lkdGg6IDA7CiAgICBoZWlnaHQ6IDA7CiAgICBib3JkZXItc3R5bGU6IHNvbGlkOwogICAgYm9yZGVyLXdpZHRoOiA4cHggOHB4IDAgOHB4OwogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsKICAgIGJvdHRvbTogLThweAp9CgouZ3lnZXMgLnRwLXRhYiB7CiAgICBvcGFjaXR5OiAxOwogICAgcGFkZGluZzogMTBweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KQp9CgouZ3lnZXMgLnRwLXRhYi1pbWFnZSB7CiAgICB3aWR0aDogNjBweDsKICAgIGhlaWdodDogNjBweDsKICAgIG1heC1oZWlnaHQ6IDEwMCU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBmbG9hdDogbGVmdAp9CgouZ3lnZXMgLnRwLXRhYi1jb250ZW50IHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA4NXB4OwogICAgbGVmdDogMDsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBtYXJnaW4tdG9wOiAtMTVweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBjb2xvcjogIzMzMzsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlCn0KCi5neWdlcyAudHAtdGFiLWRhdGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjUpOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmd5Z2VzIC50cC10YWItdGl0bGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7CiAgICBsaW5lLWhlaWdodDogMTdweAp9CgouZ3lnZXMgLnRwLXRhYi5zZWxlY3RlZCwKLmd5Z2VzIC50cC10YWI6aG92ZXIgewogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNSkKfQoKLmhhZGVzLnRwYXJyb3dzIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4xNSk7CiAgICB3aWR0aDogMTAwcHg7CiAgICBoZWlnaHQ6IDEwMHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB6LWluZGV4OiAxMDAwCn0KCi5oYWRlcy50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAzMHB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAxMDBweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzLCBjb2xvciAuM3MKfQoKLmhhZGVzLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI0Igp9CgouaGFkZXMudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI1Igp9CgouaGFkZXMudHBhcnJvd3M6aG92ZXI6YmVmb3JlIHsKICAgIGNvbG9yOiAjYWFhOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkKfQoKLmhhZGVzIC50cC1hcnItYWxsd3JhcHBlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAxMDAlOwogICAgdG9wOiAwOwogICAgYmFja2dyb3VuZDogIzg4ODsKICAgIHdpZHRoOiAxMDBweDsKICAgIGhlaWdodDogMTAwcHg7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLW1zLWZpbHRlcjogInByb2dpZDpkeGltYWdldHJhbnNmb3JtLm1pY3Jvc29mdC5hbHBoYShvcGFjaXR5PTApIjsKICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTsKICAgIC1tb3otb3BhY2l0eTogMDsKICAgIC1raHRtbC1vcGFjaXR5OiAwOwogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV5KC05MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZXkoLTkwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJQp9CgouaGFkZXMudHAtcmlnaHRhcnJvdyAudHAtYXJyLWFsbHdyYXBwZXIgewogICAgbGVmdDogYXV0bzsKICAgIHJpZ2h0OiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZXkoOTBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGV5KDkwZGVnKQp9CgouaGFkZXM6aG92ZXIgLnRwLWFyci1hbGx3cmFwcGVyIHsKICAgIC1tcy1maWx0ZXI6ICJwcm9naWQ6ZHhpbWFnZXRyYW5zZm9ybS5taWNyb3NvZnQuYWxwaGEob3BhY2l0eT0xMDApIjsKICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApOwogICAgLW1vei1vcGFjaXR5OiAxOwogICAgLWtodG1sLW9wYWNpdHk6IDE7CiAgICBvcGFjaXR5OiAxOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZXkoMCk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZXkoMCkKfQoKLmhhZGVzIC50cC1hcnItaW1naG9sZGVyIHsKICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCUKfQoKLmhhZGVzLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLmhhZGVzIC50cC1idWxsZXQgewogICAgd2lkdGg6IDNweDsKICAgIGhlaWdodDogM3B4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYmFja2dyb3VuZDogIzg4ODsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJvcmRlcjogNXB4IHNvbGlkICNmZmY7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsKICAgIGJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgLjIpOwogICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNDAwOwogICAgcGVyc3BlY3RpdmU6IDQwMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGV6KC4wMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleiguMDFweCkKfQoKLmhhZGVzIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5oYWRlcyAudHAtYnVsbGV0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICM1NTUKfQoKLmhhZGVzIC50cC1idWxsZXQtaW1hZ2UgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAtODBweDsKICAgIGxlZnQ6IC02MHB4OwogICAgd2lkdGg6IDEyMHB4OwogICAgaGVpZ2h0OiA2MHB4OwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBmbGF0OwogICAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0OwogICAgcGVyc3BlY3RpdmU6IDYwMDsKICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMDsKICAgIHRyYW5zZm9ybTogcm90YXRleCgtOTBkZWcpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZXgoLTkwZGVnKTsKICAgIGJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgLjIpOwogICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlCn0KCi5oYWRlcyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtaW1hZ2UgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBvcGFjaXR5OiAxOwogICAgdHJhbnNmb3JtOiByb3RhdGV4KDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZXgoMCk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCn0KCi5oYWRlcyAudHAtdGh1bWIgewogICAgb3BhY2l0eTogMQp9CgouaGFkZXMgLnRwLXRodW1iLWltZy13cmFwIHsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIHBhZGRpbmc6IDNweDsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG1hcmdpbjogMDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5oYWRlcyAudHAtdGh1bWItaW1hZ2UgewogICAgcGFkZGluZzogM3B4OwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KQp9CgouaGFkZXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1pbWctd3JhcCwKLmhhZGVzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItaW1nLXdyYXAgewogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpIDEwMCUpOwogICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9IiNmZmZmZmYiLCBlbmRDb2xvcnN0cj0iIzc3Nzc3NyIsIEdyYWRpZW50VHlwZT0wKQp9CgouaGFkZXMgLnRwLXRodW1iLXRpdGxlOmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgd2lkdGg6IDA7CiAgICBoZWlnaHQ6IDA7CiAgICBib3JkZXItc3R5bGU6IHNvbGlkOwogICAgYm9yZGVyLXdpZHRoOiA4cHggOHB4IDAgOHB4OwogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC43NSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICBib3R0b206IC04cHgKfQoKLmhhZGVzIC50cC10YWIgewogICAgb3BhY2l0eTogMQp9CgouaGFkZXMgLnRwLXRhYi10aXRsZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbG9yOiAjMzMzOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGZvbnQtc2l6ZTogMThweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGxpbmUtaGVpZ2h0OiAyNXB4Cn0KCi5oYWRlcyAudHAtdGFiLXByaWNlIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgY29sb3I6ICM5OTk7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBtYXJnaW4tdG9wOiAxMHB4OwogICAgbGluZS1oZWlnaHQ6IDIwcHgKfQoKLmhhZGVzIC50cC10YWItYnV0dG9uIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIG1hcmdpbi10b3A6IDE1cHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwYWRkaW5nOiA1cHggMTVweDsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAxNHB4OwogICAgYmFja2dyb3VuZDogIzIxOWJkNzsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIGZvbnQtd2VpZ2h0OiA0MDAKfQoKLmhhZGVzIC50cC10YWItaW5uZXIgewogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5oZWJlLnRwYXJyb3dzIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBtaW4td2lkdGg6IDcwcHg7CiAgICBtaW4taGVpZ2h0OiA3MHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB6LWluZGV4OiAxMDAwCn0KCi5oZWJlLnRwYXJyb3dzOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBmb250LXNpemU6IDMwcHg7CiAgICBjb2xvcjogI2FhYTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDcwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4zczsKICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgLjNzOwogICAgdHJhbnNpdGlvbjogY29sb3IgLjNzOwogICAgei1pbmRleDogMjsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBtaW4td2lkdGg6IDcwcHg7CiAgICBtaW4taGVpZ2h0OiA3MHB4Cn0KCi5oZWJlLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI0Igp9CgouaGViZS50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjUiCn0KCi5oZWJlLnRwYXJyb3dzOmhvdmVyOmJlZm9yZSB7CiAgICBjb2xvcjogIzAwMAp9CgouaGViZSAudHAtdGl0bGUtd3JhcCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB6LWluZGV4OiAwOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjc1KTsKICAgIG1pbi1oZWlnaHQ6IDYwcHg7CiAgICBsaW5lLWhlaWdodDogNjBweDsKICAgIHRvcDogLTEwcHg7CiAgICBtYXJnaW4tbGVmdDogMDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zczsKICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDUwJQp9CgouaGViZS50cC1yaWdodGFycm93IC50cC10aXRsZS13cmFwIHsKICAgIHJpZ2h0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJQp9CgouaGViZS50cGFycm93czpob3ZlciAudHAtdGl0bGUtd3JhcCB7CiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSkKfQoKLmhlYmUgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZm9udC1zaXplOiAxMnB4OwogICAgbGluZS1oZWlnaHQ6IDkwcHg7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgcGFkZGluZzogMCAyMHB4IDAgOTBweAp9CgouaGViZS50cC1yaWdodGFycm93IC50cC1hcnItdGl0bGVob2xkZXIgewogICAgbWFyZ2luLWxlZnQ6IDA7CiAgICBwYWRkaW5nOiAwIDkwcHggMCAyMHB4Cn0KCi5oZWJlLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItdGl0bGVob2xkZXIgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7CiAgICBvcGFjaXR5OiAxCn0KCi5oZWJlIC50cC1hcnItaW1naG9sZGVyIHsKICAgIHdpZHRoOiA5MHB4OwogICAgaGVpZ2h0OiA5MHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMTAwJTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7CiAgICB0b3A6IDA7CiAgICByaWdodDogLTkwcHgKfQoKLmhlYmUudHAtcmlnaHRhcnJvdyAudHAtYXJyLWltZ2hvbGRlciB7CiAgICByaWdodDogYXV0bzsKICAgIGxlZnQ6IC05MHB4Cn0KCi5oZWJlLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLmhlYmUgLnRwLWJ1bGxldCB7CiAgICB3aWR0aDogM3B4OwogICAgaGVpZ2h0OiAzcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYm9yZGVyOiA1cHggc29saWQgIzIyMjsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OwogICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNDAwOwogICAgcGVyc3BlY3RpdmU6IDQwMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC4wMXB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWiguMDFweCk7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5oZWJlIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5oZWJlIC50cC1idWxsZXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzIyMjsKICAgIGJvcmRlci1jb2xvcjogI2ZmZgp9CgouaGViZSAudHAtYnVsbGV0LWltYWdlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogLTkwcHg7CiAgICBsZWZ0OiAtNDBweDsKICAgIHdpZHRoOiA3MHB4OwogICAgaGVpZ2h0OiA3MHB4OwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBmbGF0OwogICAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0OwogICAgcGVyc3BlY3RpdmU6IDYwMDsKICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMDsKICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7CiAgICBib3JkZXItcmFkaXVzOiA2cHgKfQoKLmhlYmUgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LWltYWdlIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgb3BhY2l0eTogMTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCn0KCi5oZWJlIC50cC10YWItdGl0bGUgewogICAgY29sb3I6ICNhOGQ4ZWU7CiAgICBmb250LXNpemU6IDEzcHg7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgIGZvbnQtZmFtaWx5OiAiUm9ib3RvIFNsYWIiOwogICAgbWFyZ2luLWJvdHRvbTogNXB4Cn0KCi5oZWJlIC50cC10YWItZGVzYyB7CiAgICBmb250LXNpemU6IDE4cHg7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgY29sb3I6ICNmZmY7CiAgICBsaW5lLWhlaWdodDogMjVweDsKICAgIGZvbnQtZmFtaWx5OiAiUm9ib3RvIFNsYWIiCn0KCi5oZXBoYWlzdG9zLnRwYXJyb3dzIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTsKICAgIHdpZHRoOiA0MHB4OwogICAgaGVpZ2h0OiA0MHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB6LWluZGV4OiAxMDAwOwogICAgYm9yZGVyLXJhZGl1czogNTAlCn0KCi5oZXBoYWlzdG9zLnRwYXJyb3dzOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICMwMDAKfQoKLmhlcGhhaXN0b3MudHBhcnJvd3M6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiByZXZpY29uczsKICAgIGZvbnQtc2l6ZTogMThweDsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBsaW5lLWhlaWdodDogNDBweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgouaGVwaGFpc3Rvcy50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyYyI7CiAgICBtYXJnaW4tbGVmdDogLTJweAp9CgouaGVwaGFpc3Rvcy50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MmQiOwogICAgbWFyZ2luLXJpZ2h0OiAtMnB4Cn0KCi5oZXBoYWlzdG9zLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLmhlcGhhaXN0b3MgLnRwLWJ1bGxldCB7CiAgICB3aWR0aDogMTJweDsKICAgIGhlaWdodDogMTJweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJhY2tncm91bmQ6ICM5OTk7CiAgICBib3JkZXI6IDNweCBzb2xpZCAjZjVmNWY1OwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYm94LXNpemluZzogY29udGVudC1ib3g7CiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDFweCByZ2JhKDEzMCwgMTMwLCAxMzAsIC4zKQp9CgouaGVwaGFpc3RvcyAudHAtYnVsbGV0LnNlbGVjdGVkLAouaGVwaGFpc3RvcyAudHAtYnVsbGV0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBib3JkZXItY29sb3I6ICMwMDAKfQoKLmhlcm1lcy50cGFycm93cyB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNSk7CiAgICB3aWR0aDogMzBweDsKICAgIGhlaWdodDogMTEwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDAKfQoKLmhlcm1lcy50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAxNXB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAxMTBweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcwp9CgouaGVybWVzLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI0Igp9CgouaGVybWVzLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNSIKfQoKLmhlcm1lcy50cGFycm93cy50cC1sZWZ0YXJyb3c6aG92ZXI6YmVmb3JlIHsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7CiAgICBvcGFjaXR5OiAwCn0KCi5oZXJtZXMudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpob3ZlcjpiZWZvcmUgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7CiAgICBvcGFjaXR5OiAwCn0KCi5oZXJtZXMgLnRwLWFyci1hbGx3cmFwcGVyIHsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTgwcHg7CiAgICBoZWlnaHQ6IDE0MHB4OwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzIC4zczsKICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgLjNzOwogICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4OwogICAgcGVyc3BlY3RpdmU6IDEwMDBweAp9CgouaGVybWVzLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci1hbGx3cmFwcGVyIHsKICAgIHJpZ2h0OiAwOwogICAgbGVmdDogYXV0bwp9CgouaGVybWVzLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItYWxsd3JhcHBlciB7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCn0KCi5oZXJtZXMgLnRwLWFyci1pbWdob2xkZXIgewogICAgd2lkdGg6IDE4MHB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGhlaWdodDogMTEwcHg7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xODBweCk7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgdHJhbnNpdGlvbi1kZWxheTogLjNzCn0KCi5oZXJtZXMudHAtcmlnaHRhcnJvdyAudHAtYXJyLWltZ2hvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpCn0KCi5oZXJtZXMudHBhcnJvd3M6aG92ZXIgLnRwLWFyci1pbWdob2xkZXIgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkKfQoKLmhlcm1lcyAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICAgIHRvcDogMTEwcHg7CiAgICB3aWR0aDogMTgwcHg7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nOiAwIDEwcHg7CiAgICBsaW5lLWhlaWdodDogMzBweDsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43NSk7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBmb250LXNpemU6IDEycHg7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIHRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwogICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Cn0KCi5oZXJtZXMudHBhcnJvd3M6aG92ZXIgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC42czsKICAgIHRyYW5zaXRpb24tZGVsYXk6IC42czsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDApOwogICAgdHJhbnNmb3JtOiByb3RhdGVYKDApCn0KCi5oZXJtZXMgLnRwLWJ1bGxldCB7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYm9yZGVyLXJhZGl1czogMzAwcHg7CiAgICB3aWR0aDogMTRweDsKICAgIGhlaWdodDogMTRweDsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggI2ZmZjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2U7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUKfQoKLmhlcm1lcyAudHAtYnVsbGV0OmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjIpCn0KCi5oZXJtZXMgLnRwLWJ1bGxldDphZnRlciB7CiAgICBjb250ZW50OiAnICc7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBib3R0b206IDA7CiAgICBoZWlnaHQ6IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm94LXNoYWRvdzogMCAwIDFweCAjZmZmOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjNzIGVhc2UKfQoKLmhlcm1lcyAudHAtYnVsbGV0LnNlbGVjdGVkOmFmdGVyIHsKICAgIGhlaWdodDogMTAwJQp9CgouaGVybWVzIC50cC10YWIgewogICAgb3BhY2l0eTogMTsKICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Cn0KCi5oZXJtZXMgLnRwLXRhYi1pbWFnZSB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogNjAlOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5oZXJtZXMgLnRwLXRhYi1jb250ZW50IHsKICAgIGJhY2tncm91bmQ6ICMzNjM2MzY7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAzMHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIG1pbi1oZWlnaHQ6IDQwJTsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IC0xMHB4Cn0KCi5oZXJtZXMgLnRwLXRhYi1kYXRlIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgY29sb3I6ICM4ODg7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZm9udC1zaXplOiAxMnB4OwogICAgbWFyZ2luLWJvdHRvbTogMTBweAp9CgouaGVybWVzIC50cC10YWItdGl0bGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMTZweDsKICAgIGZvbnQtd2VpZ2h0OiA4MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgbGluZS1oZWlnaHQ6IDE5cHgKfQoKLmhlcm1lcyAudHAtdGFiLnNlbGVjdGVkIC50cC10YWItdGl0bGU6YWZ0ZXIgewogICAgd2lkdGg6IDA7CiAgICBoZWlnaHQ6IDA7CiAgICBib3JkZXItc3R5bGU6IHNvbGlkOwogICAgYm9yZGVyLXdpZHRoOiAzMHB4IDAgMzBweCAxMHB4OwogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzYzNjM2OwogICAgY29udGVudDogIiAiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IC05cHg7CiAgICBib3R0b206IDUwJTsKICAgIG1hcmdpbi1ib3R0b206IC0zMHB4Cn0KCi5oZXJtZXMgLnRwLXRhYi1tYXNrIHsKICAgIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudAp9CgpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTYwcHgpIHsKICAgIC5oZXJtZXMgLnRwLXRhYiAudHAtdGFiLXRpdGxlIHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHgKICAgIH0KICAgIC5oZXJtZXMgLnRwLXRhYi1kYXRlIHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEzcHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweAogICAgfQogICAgLmhlcm1lcyAudHAtdGFiLWNvbnRlbnQgewogICAgICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDI1cHgKICAgIH0KfQoKQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2OHB4KSB7CiAgICAuaGVybWVzIC50cC10YWIgLnRwLXRhYi10aXRsZSB7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4CiAgICB9CiAgICAuaGVybWVzIC50cC10YWItZGF0ZSB7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDVweAogICAgfQogICAgLmhlcm1lcyAudHAtdGFiLWNvbnRlbnQgewogICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDIwcHgKICAgIH0KfQoKLmhlc3BlcmlkZW4udHBhcnJvd3MgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDA7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKLmhlc3BlcmlkZW4udHBhcnJvd3M6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzAwMAp9CgouaGVzcGVyaWRlbi50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAyMHB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiA0MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5oZXNwZXJpZGVuLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODJjIjsKICAgIG1hcmdpbi1sZWZ0OiAtM3B4Cn0KCi5oZXNwZXJpZGVuLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyZCI7CiAgICBtYXJnaW4tcmlnaHQ6IC0zcHgKfQoKLmhlc3BlcmlkZW4udHAtYnVsbGV0czpiZWZvcmUgewogICAgY29udGVudDogIiAiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBwYWRkaW5nOiAxMHB4OwogICAgbWFyZ2luLWxlZnQ6IC0xMHB4OwogICAgbWFyZ2luLXRvcDogLTEwcHg7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsKICAgIGJvcmRlci1yYWRpdXM6IDhweAp9CgouaGVzcGVyaWRlbiAudHAtYnVsbGV0IHsKICAgIHdpZHRoOiAxMnB4OwogICAgaGVpZ2h0OiAxMnB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYmFja2dyb3VuZDogIzk5OTsKICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzk5OSAwLCAjZTFlMWUxIDEwMCUpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwLCAjOTk5KSwgY29sb3Itc3RvcCgxMDAlLCAjZTFlMWUxKSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM5OTkgMCwgI2UxZTFlMSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM5OTkgMCwgI2UxZTFlMSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjOTk5IDAsICNlMWUxZTEgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjOTk5IDAsICNlMWUxZTEgMTAwJSk7CiAgICBmaWx0ZXI6IHByb2dpZDpkeGltYWdldHJhbnNmb3JtLm1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRjb2xvcnN0cj0iIzk5OTk5OSIsIGVuZGNvbG9yc3RyPSIjZTFlMWUxIiwgZ3JhZGllbnR0eXBlPTApOwogICAgYm9yZGVyOiAzcHggc29saWQgI2U1ZTVlNTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Cn0KCi5oZXNwZXJpZGVuIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5oZXNwZXJpZGVuIC50cC1idWxsZXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzY2Ngp9CgouaGVzcGVyaWRlbiAudHAtdGh1bWIgewogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMHB4OwogICAgcGVyc3BlY3RpdmU6IDYwMHB4Cn0KCi5oZXNwZXJpZGVuIC50cC10aHVtYiAudHAtdGh1bWItdGl0bGUgewogICAgZm9udC1zaXplOiAxMnB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbWFyZ2luLXRvcDogLTEwcHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgei1pbmRleDogMTAwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOwogICAgcGFkZGluZzogNXB4IDEwcHg7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgdHJhbnNmb3JtOiByb3RhdGV4KDkwZGVnKSB0cmFuc2xhdGV6KC4wMDFweCk7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV4KDkwZGVnKSB0cmFuc2xhdGV6KC4wMDFweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwogICAgb3BhY2l0eTogMAp9CgouaGVzcGVyaWRlbiAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLXRpdGxlIHsKICAgIHRyYW5zZm9ybTogcm90YXRleCgwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV4KDApOwogICAgb3BhY2l0eTogMQp9CgouaGVzcGVyaWRlbiAudHAtdGFiIHsKICAgIG9wYWNpdHk6IDE7CiAgICBwYWRkaW5nOiAxMHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNQp9CgouaGVzcGVyaWRlbiAudHAtdGFiLWltYWdlIHsKICAgIHdpZHRoOiA2MHB4OwogICAgaGVpZ2h0OiA2MHB4OwogICAgbWF4LWhlaWdodDogMTAwJTsKICAgIG1heC13aWR0aDogMTAwJTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZsb2F0OiBsZWZ0Cn0KCi5oZXNwZXJpZGVuIC50cC10YWItY29udGVudCB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgcGFkZGluZzogMTVweCAxNXB4IDE1cHggODVweDsKICAgIGxlZnQ6IDA7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgbWFyZ2luLXRvcDogLTE1cHg7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgY29sb3I6ICMzMzM7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZQp9CgouaGVzcGVyaWRlbiAudHAtdGFiLWRhdGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogI2FhYTsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBmb250LXNpemU6IDEycHg7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5oZXNwZXJpZGVuIC50cC10YWItdGl0bGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgY29sb3I6ICMzMzM7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7CiAgICBsaW5lLWhlaWdodDogMTdweAp9CgouaGVzcGVyaWRlbiAudHAtdGFiLnNlbGVjdGVkLAouaGVzcGVyaWRlbiAudHAtdGFiOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICNlZWUKfQoKLm1ldGlzLnRwYXJyb3dzIHsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBwYWRkaW5nOiAxMHB4OwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIHdpZHRoOiA2MHB4OwogICAgaGVpZ2h0OiA2MHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgoubWV0aXMudHBhcnJvd3M6aG92ZXIgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjc1KQp9CgoubWV0aXMudHBhcnJvd3M6YmVmb3JlIHsKICAgIGNvbG9yOiAjMDAwOwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcwp9CgoubWV0aXMudHBhcnJvd3M6aG92ZXI6YmVmb3JlIHsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KQp9CgoubWV0aXMgLnRwLWJ1bGxldCB7CiAgICBvcGFjaXR5OiAxOwogICAgd2lkdGg6IDUwcHg7CiAgICBoZWlnaHQ6IDUwcHg7CiAgICBwYWRkaW5nOiAzcHg7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMjUpOwogICAgbWFyZ2luOiAwOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIHRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKLm1ldGlzIC50cC1idWxsZXQtaW1hZ2UgewogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIGJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgLjI1KTsKICAgIHdpZHRoOiA0NHB4OwogICAgaGVpZ2h0OiA0NHB4OwogICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIKfQoKLm1ldGlzIC50cC1idWxsZXQtdGl0bGUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYm90dG9tOiA2NXB4OwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbGVmdDogNTAlOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjc1KTsKICAgIGNvbG9yOiAjZmZmOwogICAgcGFkZGluZzogMTBweCAzMHB4OwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWiguMDAxcHgpIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNHB4KTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLjAwMXB4KSB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTRweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwogICAgb3BhY2l0eTogMDsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXAKfQoKLm1ldGlzIC50cC1idWxsZXQ6aG92ZXIgLnRwLWJ1bGxldC10aXRsZSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMCkgdHJhbnNsYXRlWCgtNTAlKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDApIHRyYW5zbGF0ZVgoLTUwJSk7CiAgICBvcGFjaXR5OiAxCn0KCi5tZXRpcyAudHAtYnVsbGV0LnNlbGVjdGVkLAoubWV0aXMgLnRwLWJ1bGxldDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpOwogICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDExOSwgMTE5LCAxMTksIDEpKSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCwgcmdiYSgxMTksIDExOSwgMTE5LCAxKSAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYmEoMTE5LCAxMTksIDExOSwgMSkgMTAwJSk7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iI2ZmZmZmZiIsIGVuZENvbG9yc3RyPSIjNzc3Nzc3IiwgR3JhZGllbnRUeXBlPTApCn0KCi5tZXRpcyAudHAtYnVsbGV0LXRpdGxlOmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgd2lkdGg6IDA7CiAgICBoZWlnaHQ6IDA7CiAgICBib3JkZXItc3R5bGU6IHNvbGlkOwogICAgYm9yZGVyLXdpZHRoOiA4cHggOHB4IDAgOHB4OwogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC43NSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICBib3R0b206IC04cHgKfQoKLm1ldGlzIC50cC10YWItbnVtYmVyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiA0MHB4OwogICAgbGluZS1oZWlnaHQ6IDMwcHg7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZm9udC1mYW1pbHk6ICJQbGF5ZmFpciBEaXNwbGF5IjsKICAgIHdpZHRoOiA1MHB4OwogICAgbWFyZ2luLXJpZ2h0OiAxN3B4OwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgZmxvYXQ6IGxlZnQKfQoKLm1ldGlzIC50cC10YWItbWFzayB7CiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7CiAgICBsZWZ0OiAwOwogICAgbWF4LXdpZHRoOiA5MHB4ICFpbXBvcnRhbnQ7CiAgICB0cmFuc2l0aW9uOiAuNHMgcGFkZGluZy1sZWZ0LCAuNHMgbGVmdCwgLjRzIG1heC13aWR0aAp9CgoubWV0aXM6aG92ZXIgLnRwLXRhYi1tYXNrIHsKICAgIHBhZGRpbmctbGVmdDogMDsKICAgIGxlZnQ6IDUwcHg7CiAgICBtYXgtd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQKfQoKLm1ldGlzIC50cC10YWItZGl2aWRlciB7CiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIGhlaWdodDogMzBweDsKICAgIHdpZHRoOiAxcHg7CiAgICBtYXJnaW4tdG9wOiA1cHg7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBmbG9hdDogbGVmdAp9CgoubWV0aXMgLnRwLXRhYi10aXRsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMjBweDsKICAgIGxpbmUtaGVpZ2h0OiAyMHB4OwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtZmFtaWx5OiAiUGxheWZhaXIgRGlzcGxheSI7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nLXRvcDogMTBweDsKICAgIHBhZGRpbmctbGVmdDogMzBweDsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7CiAgICB0cmFuc2l0aW9uOiAuNHMgYWxsCn0KCi5tZXRpcyAudHAtdGFiLXRpdGxlLW1hc2sgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIGxlZnQ6IDY3cHgKfQoKLm1ldGlzOmhvdmVyIC50cC10YWItdGl0bGUgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApCn0KCi5tZXRpcyAudHAtdGFiIHsKICAgIG9wYWNpdHk6IC4xNTsKICAgIHRyYW5zaXRpb246IC40cyBhbGwKfQoKLm1ldGlzIC50cC10YWIuc2VsZWN0ZWQsCi5tZXRpcyAudHAtdGFiOmhvdmVyIHsKICAgIG9wYWNpdHk6IDEKfQoKLm1ldGlzIC50cC10YWIuc2VsZWN0ZWQgLnRwLXRhYi1kaXZpZGVyIHsKICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjZGIwODMKfQoKLm1ldGlzLnRwLXRhYnMgewogICAgbWF4LXdpZHRoOiAxMThweCAhaW1wb3J0YW50OwogICAgcGFkZGluZy1sZWZ0OiA1MHB4Cn0KCi5tZXRpcy50cC10YWJzOmJlZm9yZSB7CiAgICBjb250ZW50OiAiICI7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogODhweDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjE1KTsKICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRyYW5zaXRpb246IC40cyBhbGwKfQoKLm1ldGlzLnRwLXRhYnM6aG92ZXI6YmVmb3JlIHsKICAgIHdpZHRoOiAxMThweAp9CgpAbWVkaWEgKG1heC13aWR0aDo0OTlweCkgewogICAgLm1ldGlzLnRwLXRhYnM6YmVmb3JlIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43NSkKICAgIH0KfQoKLnBlcnNlcGhvbmUudHBhcnJvd3MgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogI2FhYTsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjAwLCAyMDAsIDIwMCwgLjUpOwogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNmNWY1ZjUKfQoKLnBlcnNlcGhvbmUudHBhcnJvd3M6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzMzMwp9CgoucGVyc2VwaG9uZS50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IHJldmljb25zOwogICAgZm9udC1zaXplOiAxNXB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiA0MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5wZXJzZXBob25lLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxlODI0Igp9CgoucGVyc2VwaG9uZS50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjUiCn0KCi5wZXJzZXBob25lLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogI3RyYW5zcGFyZW50OwogICAgcGFkZGluZzogMTBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsKICAgIG1hcmdpbi10b3A6IC0xMHB4OwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLnBlcnNlcGhvbmUgLnRwLWJ1bGxldCB7CiAgICB3aWR0aDogMTJweDsKICAgIGhlaWdodDogMTJweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJhY2tncm91bmQ6ICNhYWE7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1OwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYm94LXNpemluZzogY29udGVudC1ib3gKfQoKLnBlcnNlcGhvbmUgLnRwLWJ1bGxldC5zZWxlY3RlZCwKLnBlcnNlcGhvbmUgLnRwLWJ1bGxldDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjMjIyCn0KCi51cmFudXMudHBhcnJvd3MgewogICAgd2lkdGg6IDUwcHg7CiAgICBoZWlnaHQ6IDUwcHg7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLnVyYW51cy50cGFycm93czpiZWZvcmUgewogICAgd2lkdGg6IDUwcHg7CiAgICBoZWlnaHQ6IDUwcHg7CiAgICBsaW5lLWhlaWdodDogNTBweDsKICAgIGZvbnQtc2l6ZTogNDBweDsKICAgIHRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MKfQoKLnVyYW51cy50cGFycm93czpob3ZlcjpiZWZvcmUgewogICAgb3BhY2l0eTogLjc1Cn0KCi51cmFudXMgLnRwLWJ1bGxldCB7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzIGVhc2U7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLnVyYW51cyAudHAtYnVsbGV0LnNlbGVjdGVkLAoudXJhbnVzIC50cC1idWxsZXQ6aG92ZXIgewogICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmY7CiAgICBib3JkZXI6IG5vbmU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLnVyYW51cyAudHAtYnVsbGV0LWlubmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIHRyYW5zZm9ybSAuM3MgZWFzZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIG91dGxpbmU6IDA7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMyk7CiAgICB0ZXh0LWluZGVudDogLTk5OWVtOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgcG9zaXRpb246IGFic29sdXRlCn0KCi51cmFudXMgLnRwLWJ1bGxldC5zZWxlY3RlZCAudHAtYnVsbGV0LWlubmVyLAoudXJhbnVzIC50cC1idWxsZXQ6aG92ZXIgLnRwLWJ1bGxldC1pbm5lciB7CiAgICB0cmFuc2Zvcm06IHNjYWxlKC40KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNCk7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmCn0KCi56ZXVzLnRwYXJyb3dzIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIG1pbi13aWR0aDogNzBweDsKICAgIG1pbi1oZWlnaHQ6IDcwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDsKICAgIGJvcmRlci1yYWRpdXM6IDM1cHg7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMSkKfQoKLnpldXMudHBhcnJvd3M6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiByZXZpY29uczsKICAgIGZvbnQtc2l6ZTogMjBweDsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBsaW5lLWhlaWdodDogNzBweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHotaW5kZXg6IDI7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnpldXMudHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjQiCn0KCi56ZXVzLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZTgyNSIKfQoKLnpldXMgLnRwLXRpdGxlLXdyYXAgewogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgb3BhY2l0eTogMDsKICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgYm9yZGVyLXJhZGl1czogNTAlCn0KCi56ZXVzIC50cC1hcnItaW1naG9sZGVyIHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAuM3MKfQoKLnpldXMudHAtcmlnaHRhcnJvdyAudHAtYXJyLWltZ2hvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKQp9CgouemV1cy50cGFycm93czpob3ZlciAudHAtYXJyLWltZ2hvbGRlciB7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIG9wYWNpdHk6IDEKfQoKLnpldXMudHBhcnJvd3M6aG92ZXIgLnRwLXRpdGxlLXdyYXAgewogICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIG9wYWNpdHk6IDEKfQoKLnpldXMgLnRwLWJ1bGxldCB7CiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsKICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTsKICAgIHdpZHRoOiAxM3B4OwogICAgaGVpZ2h0OiAxM3B4OwogICAgYm9yZGVyOiAycHggc29saWQgI2ZmZgp9CgouemV1cyAudHAtYnVsbGV0OmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZQp9CgouemV1cyAudHAtYnVsbGV0LnNlbGVjdGVkOmFmdGVyLAouemV1cyAudHAtYnVsbGV0OmhvdmVyOmFmdGVyIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpCn0KCi56ZXVzIC50cC1idWxsZXQtaW1hZ2UsCi56ZXVzIC50cC1idWxsZXQtaW1hZ2VvdmVybGF5IHsKICAgIHdpZHRoOiAxMzVweDsKICAgIGhlaWdodDogNjBweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTsKICAgIGJvdHRvbTogMjVweDsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtNjVweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGJvcmRlci1yYWRpdXM6IDRweAp9CgouemV1cyAudHAtYnVsbGV0LWltYWdlb3ZlcmxheSwKLnpldXMgLnRwLWJ1bGxldC10aXRsZSB7CiAgICB6LWluZGV4OiAyOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UKfQoKLnpldXMgLnRwLWJ1bGxldC10aXRsZSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGxpbmUtaGVpZ2h0OiAxNXB4OwogICAgZm9udC1zaXplOiAxM3B4OwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIHotaW5kZXg6IDM7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBib3R0b206IDQ1cHg7CiAgICB3aWR0aDogMTM1cHg7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgbGVmdDogLTU3cHgKfQoKLnpldXMgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LWltYWdlLAouemV1cyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtaW1hZ2VvdmVybGF5LAouemV1cyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKQp9CgouemV1cyAudHAtdGh1bWIgewogICAgb3BhY2l0eTogMQp9CgouemV1cyAudHAtdGh1bWItb3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMjUpOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgei1pbmRleDogMTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MKfQoKLnpldXMgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiByZXZpY29uczsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGNvbG9yOiAjYWFhOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjc1KTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDEycHg7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgei1pbmRleDogMjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMjBweDsKICAgIHJpZ2h0OiAyMHB4OwogICAgei1pbmRleDogMgp9CgouemV1cyAudHAtdGh1bWItbW9yZTpiZWZvcmUgewogICAgY29udGVudDogIlxlODI1Igp9CgouemV1cyAudHAtdGh1bWItdGl0bGUgewogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7CiAgICBsZXR0ZXItc3BhY2luZzogMXB4OwogICAgZm9udC1zaXplOiAxMnB4OwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAxNXB4OwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIHotaW5kZXg6IDI7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgei1pbmRleDogMjsKICAgIHBhZGRpbmc6IDIwcHggMzVweCAyMHB4IDIwcHg7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOwogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouemV1cyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW1vcmU6YmVmb3JlLAouemV1cyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICAgIGNvbG9yOiAjYWFhCn0KCi56ZXVzIC50cC10aHVtYi5zZWxlY3RlZCAudHAtdGh1bWItb3ZlciwKLnpldXMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi1vdmVyIHsKICAgIGJhY2tncm91bmQ6ICMwMDAKfQoKLnpldXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi10aXRsZSwKLnpldXMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi10aXRsZSB7CiAgICBjb2xvcjogI2ZmZgp9CgouemV1cyAudHAtdGFiIHsKICAgIG9wYWNpdHk6IDE7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Cn0KCi56ZXVzIC50cC10YWItdGl0bGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4yNSk7CiAgICBmb250LWZhbWlseTogIlJvYm90byBTbGFiIiwgc2VyaWY7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgZm9udC1zaXplOiAxM3B4OwogICAgbGluZS1oZWlnaHQ6IDEzcHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIHBhZGRpbmc6IDlweCAxMHB4Cn0KCi56ZXVzIC50cC10YWIuc2VsZWN0ZWQgLnRwLXRhYi10aXRsZSwKLnpldXMgLnRwLXRhYjpob3ZlciAudHAtdGFiLXRpdGxlIHsKICAgIGNvbG9yOiAjMDAwOwogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKQp9CgoucG9zdC10YWJzIC50cC10aHVtYiB7CiAgICBvcGFjaXR5OiAxCn0KCi5wb3N0LXRhYnMgLnRwLXRodW1iLW92ZXIgewogICAgYmFja2dyb3VuZDogIzI1MjUyNTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHotaW5kZXg6IDE7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzCn0KCi5wb3N0LXRhYnMgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiByZXZpY29uczsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGNvbG9yOiAjYWFhOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjc1KTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDEycHg7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgei1pbmRleDogMjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMTVweDsKICAgIHJpZ2h0OiAxNXB4OwogICAgei1pbmRleDogMgp9CgoucG9zdC10YWJzIC50cC10aHVtYi1tb3JlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGU4MjUiCn0KCi5wb3N0LXRhYnMgLnRwLXRodW1iLXRpdGxlIHsKICAgIGZvbnQtZmFtaWx5OiByYWxld2F5OwogICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBsaW5lLWhlaWdodDogMTVweDsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICB6LWluZGV4OiAyOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHotaW5kZXg6IDI7CiAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCAxNXB4OwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zczsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLnBvc3QtdGFicyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW1vcmU6YmVmb3JlLAoucG9zdC10YWJzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItbW9yZTpiZWZvcmUgewogICAgY29sb3I6ICNhYWEKfQoKLnBvc3QtdGFicyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW92ZXIsCi5wb3N0LXRhYnMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi1vdmVyIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLnBvc3QtdGFicyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLXRpdGxlLAoucG9zdC10YWJzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItdGl0bGUgewogICAgY29sb3I6ICMwMDAKfQoKLm93bC1jYXJvdXNlbCwKLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gewogICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgoub3dsLWNhcm91c2VsIHsKICAgIGRpc3BsYXk6IG5vbmU7CiAgICB3aWR0aDogMTAwJTsKICAgIHotaW5kZXg6IDEKfQoKLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZOwogICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247CiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbgp9Cgoub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIgewogICAgY29udGVudDogIi4iOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBjbGVhcjogYm90aDsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIGxpbmUtaGVpZ2h0OiAwOwogICAgaGVpZ2h0OiAwCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtLAoub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlciB7CiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHsKICAgIG1pbi1oZWlnaHQ6IDFweDsKICAgIGZsb2F0OiBsZWZ0OwogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUKfQoKLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCUKfQoKLm93bC1jYXJvdXNlbCAub3dsLWRvdHMuZGlzYWJsZWQsCi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYuZGlzYWJsZWQgewogICAgZGlzcGxheTogbm9uZQp9Cgoubm8tanMgLm93bC1jYXJvdXNlbCwKLm93bC1jYXJvdXNlbC5vd2wtbG9hZGVkIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1kb3QsCi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0LAoub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldiB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOwogICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsKICAgIHVzZXItc2VsZWN0OiBub25lCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LAoub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldiwKLm93bC1jYXJvdXNlbCBidXR0b24ub3dsLWRvdCB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogaW5oZXJpdDsKICAgIGJvcmRlcjogbm9uZTsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKICAgIGZvbnQ6IGluaGVyaXQKfQoKLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7CiAgICBvcGFjaXR5OiAwOwogICAgZGlzcGxheTogYmxvY2sKfQoKLm93bC1jYXJvdXNlbC5vd2wtaGlkZGVuIHsKICAgIG9wYWNpdHk6IDAKfQoKLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0gewogICAgdmlzaWJpbGl0eTogaGlkZGVuCn0KCi5vd2wtY2Fyb3VzZWwub3dsLWRyYWcgLm93bC1pdGVtIHsKICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15OwogICAgdG91Y2gtYWN0aW9uOiBwYW4teTsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOwogICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgdXNlci1zZWxlY3Q6IG5vbmUKfQoKLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7CiAgICBjdXJzb3I6IG1vdmU7CiAgICBjdXJzb3I6IGdyYWIKfQoKLm93bC1jYXJvdXNlbC5vd2wtcnRsIHsKICAgIGRpcmVjdGlvbjogcnRsCn0KCi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0gewogICAgZmxvYXQ6IHJpZ2h0Cn0KCi5vd2wtY2Fyb3VzZWwgLmFuaW1hdGVkIHsKICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7CiAgICB6LWluZGV4OiAwCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQgewogICAgei1pbmRleDogMQp9Cgoub3dsLWNhcm91c2VsIC5mYWRlT3V0IHsKICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Cn0KCkBrZXlmcmFtZXMgZmFkZU91dCB7CiAgICAwJSB7CiAgICAgICAgb3BhY2l0eTogMQogICAgfQogICAgMTAwJSB7CiAgICAgICAgb3BhY2l0eTogMAogICAgfQp9Cgoub3dsLWhlaWdodCB7CiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjVzIGVhc2UtaW4tb3V0Cn0KCi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eSB7CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZQp9Cgoub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSwKLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5W3NyY149IiJdIHsKICAgIG1heC1oZWlnaHQ6IDAKfQoKLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHsKICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QKfQoKLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZDogIzAwMAp9Cgoub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGhlaWdodDogODBweDsKICAgIHdpZHRoOiA4MHB4OwogICAgbGVmdDogNTAlOwogICAgdG9wOiA1MCU7CiAgICBtYXJnaW4tbGVmdDogLTQwcHg7CiAgICBtYXJnaW4tdG9wOiAtNDBweDsKICAgIGJhY2tncm91bmQ6IHVybChvd2wudmlkZW8ucGxheS5odG1sKSBuby1yZXBlYXQ7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICB6LWluZGV4OiAxOwogICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2UKfQoKLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7CiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKQp9Cgoub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiwKLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10biB7CiAgICBkaXNwbGF5OiBub25lCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7CiAgICBvcGFjaXR5OiAwOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47CiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNlCn0KCi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1mcmFtZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAxOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCUKfQoKLnNlbGVjdDItY29udGFpbmVyIHsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBtYXJnaW46IDA7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KCi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUKfQoKLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9Cgouc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnNlbGVjdDItY29udGFpbmVyW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgewogICAgcGFkZGluZy1yaWdodDogOHB4OwogICAgcGFkZGluZy1sZWZ0OiAyMHB4Cn0KCi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZQp9Cgouc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBwYWRkaW5nLWxlZnQ6IDhweDsKICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9Cgouc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgewogICAgZmxvYXQ6IGxlZnQKfQoKLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQgewogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGJvcmRlcjogbm9uZTsKICAgIGZvbnQtc2l6ZTogMTAwJTsKICAgIHBhZGRpbmc6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24gewogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCn0KCi5zZWxlY3QyLWRyb3Bkb3duIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhOwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogLTEwMDAwMHB4OwogICAgd2lkdGg6IDEwMCU7CiAgICB6LWluZGV4OiAxMDUxCn0KCi5zZWxlY3QyLXJlc3VsdHMgewogICAgZGlzcGxheTogYmxvY2sKfQoKLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7CiAgICBsaXN0LXN0eWxlOiBub25lOwogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMAp9Cgouc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gewogICAgcGFkZGluZzogNnB4OwogICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lCn0KCi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkXSB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHsKICAgIGxlZnQ6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZSB7CiAgICBib3JkZXItYm90dG9tOiBub25lOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3cgewogICAgYm9yZGVyLXRvcDogbm9uZTsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9Cgouc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogNHB4Cn0KCi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7CiAgICBwYWRkaW5nOiA0cHg7CiAgICB3aWR0aDogMTAwJTsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3gKfQoKLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQp9Cgouc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duLnNlbGVjdDItc2VhcmNoLS1oaWRlIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnNlbGVjdDItY2xvc2UtbWFzayB7CiAgICBib3JkZXI6IDA7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgbWluLWhlaWdodDogMTAwJTsKICAgIG1pbi13aWR0aDogMTAwJTsKICAgIGhlaWdodDogYXV0bzsKICAgIHdpZHRoOiBhdXRvOwogICAgb3BhY2l0eTogMDsKICAgIHotaW5kZXg6IDk5OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKQp9Cgouc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7CiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsKICAgIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDsKICAgIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7CiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDsKICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7CiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7CiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsKICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlci1yYWRpdXM6IDRweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7CiAgICBjb2xvcjogIzQ0NAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBmbG9hdDogcmlnaHQ7CiAgICBmb250LXdlaWdodDogNzAwCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHsKICAgIGNvbG9yOiAjOTk5Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHsKICAgIGhlaWdodDogMTAwJTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMXB4OwogICAgcmlnaHQ6IDFweDsKICAgIHdpZHRoOiAyMHB4Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIgewogICAgbGVmdDogNTAlOwogICAgbWFyZ2luLXRvcDogLTJweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogNTAlCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHsKICAgIGZsb2F0OiBsZWZ0Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHsKICAgIGxlZnQ6IDFweDsKICAgIHJpZ2h0OiBhdXRvCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsKICAgIGN1cnNvcjogZGVmYXVsdAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIgewogICAgZGlzcGxheTogbm9uZQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHsKICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDsKICAgIGJvcmRlci13aWR0aDogMCA0cHggNXB4IDRweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgY3Vyc29yOiB0ZXh0Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgewogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwOwogICAgd2lkdGg6IDEwMCUKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCBsaSB7CiAgICBsaXN0LXN0eWxlOiBub25lCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIgewogICAgY29sb3I6ICM5OTk7CiAgICBtYXJnaW4tdG9wOiA1cHg7CiAgICBmbG9hdDogbGVmdAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGZsb2F0OiByaWdodDsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBtYXJnaW4tdG9wOiA1cHg7CiAgICBtYXJnaW4tcmlnaHQ6IDEwcHgKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICBmbG9hdDogbGVmdDsKICAgIG1hcmdpbi1yaWdodDogNXB4OwogICAgbWFyZ2luLXRvcDogNXB4OwogICAgcGFkZGluZzogMCA1cHgKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7CiAgICBjb2xvcjogIzk5OTsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBtYXJnaW4tcmlnaHQ6IDJweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyIHsKICAgIGNvbG9yOiAjMzMzCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lLAouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSwKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7CiAgICBmbG9hdDogcmlnaHQKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UgewogICAgbWFyZ2luLWxlZnQ6IDVweDsKICAgIG1hcmdpbi1yaWdodDogYXV0bwp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHsKICAgIG1hcmdpbi1sZWZ0OiAycHg7CiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8KfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIG91dGxpbmU6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7CiAgICBjdXJzb3I6IGRlZmF1bHQKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLAouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUsCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgewogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQgewogICAgYm9yZGVyOiAxcHggc29saWQgI2FhYQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IG5vbmU7CiAgICBvdXRsaW5lOiAwOwogICAgYm94LXNoYWRvdzogbm9uZTsKICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMgewogICAgbWF4LWhlaWdodDogMjAwcHg7CiAgICBvdmVyZmxvdy15OiBhdXRvCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1ncm91cF0gewogICAgcGFkZGluZzogMAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0gewogICAgY29sb3I6ICM5OTkKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVdIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gewogICAgcGFkZGluZy1sZWZ0OiAxZW0KfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAgewogICAgcGFkZGluZy1sZWZ0OiAwCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7CiAgICBtYXJnaW4tbGVmdDogLTFlbTsKICAgIHBhZGRpbmctbGVmdDogMmVtCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gewogICAgbWFyZ2luLWxlZnQ6IC0yZW07CiAgICBwYWRkaW5nLWxlZnQ6IDNlbQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7CiAgICBtYXJnaW4tbGVmdDogLTNlbTsKICAgIHBhZGRpbmctbGVmdDogNGVtCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7CiAgICBtYXJnaW4tbGVmdDogLTRlbTsKICAgIHBhZGRpbmctbGVmdDogNWVtCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gewogICAgbWFyZ2luLWxlZnQ6IC01ZW07CiAgICBwYWRkaW5nLWxlZnQ6IDZlbQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5N2ZiOwogICAgY29sb3I6ICNmZmYKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHsKICAgIGN1cnNvcjogZGVmYXVsdDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogNnB4Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OwogICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIG91dGxpbmU6IDA7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYgNTAlLCAjZWVlIDEwMCUpOwogICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiA1MCUsICNlZWUgMTAwJSk7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDUwJSwgI2VlZSAxMDAlKTsKICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDsKICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjRkZFRUVFRUUnLCBHcmFkaWVudFR5cGU9MCkKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmIKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgewogICAgY29sb3I6ICM0NDQ7CiAgICBsaW5lLWhlaWdodDogMjhweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBmbG9hdDogcmlnaHQ7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgbWFyZ2luLXJpZ2h0OiAxMHB4Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHsKICAgIGNvbG9yOiAjOTk5Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7CiAgICBib3JkZXI6IG5vbmU7CiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNhYWE7CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4OwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsKICAgIGhlaWdodDogMjZweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMXB4OwogICAgcmlnaHQ6IDFweDsKICAgIHdpZHRoOiAyMHB4OwogICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2NjYyAxMDAlKTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWUgNTAlLCAjY2NjIDEwMCUpOwogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZSA1MCUsICNjY2MgMTAwJSk7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGQ0NDQ0NDJywgR3JhZGllbnRUeXBlPTApCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIgewogICAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OwogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAgIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDsKICAgIGhlaWdodDogMDsKICAgIGxlZnQ6IDUwJTsKICAgIG1hcmdpbi1sZWZ0OiAtNHB4OwogICAgbWFyZ2luLXRvcDogLTJweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogNTAlOwogICAgd2lkdGg6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIgewogICAgZmxvYXQ6IGxlZnQKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgewogICAgYm9yZGVyOiBub25lOwogICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTsKICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7CiAgICBsZWZ0OiAxcHg7CiAgICByaWdodDogYXV0bwp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYgp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IG5vbmUKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM4ODggdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHgKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7CiAgICBib3JkZXItdG9wOiBub25lOwogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwogICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDAsICNlZWUgNTAlKTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYgMCwgI2VlZSA1MCUpOwogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiAwLCAjZWVlIDUwJSk7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgewogICAgYm9yZGVyLWJvdHRvbTogbm9uZTsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZSA1MCUsICNmZmYgMTAwJSk7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2ZmZiAxMDAlKTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUgNTAlLCAjZmZmIDEwMCUpOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14OwogICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkZGRkZGRicsIEdyYWRpZW50VHlwZT0wKQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIGN1cnNvcjogdGV4dDsKICAgIG91dGxpbmU6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMgewogICAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYgp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHsKICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwIDVweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICBmbG9hdDogbGVmdDsKICAgIG1hcmdpbi1yaWdodDogNXB4OwogICAgbWFyZ2luLXRvcDogNXB4OwogICAgcGFkZGluZzogMCA1cHgKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7CiAgICBjb2xvcjogIzg4ODsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBtYXJnaW4tcmlnaHQ6IDJweAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyIHsKICAgIGNvbG9yOiAjNTU1Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHsKICAgIGZsb2F0OiByaWdodDsKICAgIG1hcmdpbi1sZWZ0OiA1cHg7CiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8KfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7CiAgICBtYXJnaW4tbGVmdDogMnB4OwogICAgbWFyZ2luLXJpZ2h0OiBhdXRvCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmIKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIGJvcmRlci10b3A6IG5vbmU7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHsKICAgIGJvcmRlci1ib3R0b206IG5vbmU7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhOwogICAgb3V0bGluZTogMAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7CiAgICBvdXRsaW5lOiAwOwogICAgYm94LXNoYWRvdzogbm9uZQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24gewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUgewogICAgYm9yZGVyLWJvdHRvbTogbm9uZQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHsKICAgIGJvcmRlci10b3A6IG5vbmUKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7CiAgICBtYXgtaGVpZ2h0OiAyMDBweDsKICAgIG92ZXJmbG93LXk6IGF1dG8KfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbltyb2xlPWdyb3VwXSB7CiAgICBwYWRkaW5nOiAwCn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1kaXNhYmxlZD10cnVlXSB7CiAgICBjb2xvcjogZ3JleQp9Cgouc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3OwogICAgY29sb3I6ICNmZmYKfQoKLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHsKICAgIGN1cnNvcjogZGVmYXVsdDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogNnB4Cn0KCi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7CiAgICBib3JkZXItY29sb3I6ICM1ODk3ZmIKfQoKI2RlYnVuZ2NvbnRyb2xscywKLmRlYnVndGltZWxpbmUgewogICAgd2lkdGg6IDEwMCU7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Cn0KCi5yZXZfY29sdW1uLAoucmV2X2NvbHVtbiAudHAtcGFyYWxsYXgtd3JhcCwKLnRwLXN2Zy1sYXllciBzdmcgewogICAgdmVydGljYWwtYWxpZ246IHRvcAp9CgojZGVidW5nY29udHJvbGxzIHsKICAgIHotaW5kZXg6IDEwMDAwMDsKICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgIGJvdHRvbTogMDsKICAgIGhlaWdodDogYXV0bzsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjYpOwogICAgcGFkZGluZzogMTBweAp9CgouZGVidWd0aW1lbGluZSB7CiAgICBoZWlnaHQ6IDEwcHg7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBtYXJnaW4tYm90dG9tOiAzcHg7CiAgICBkaXNwbGF5OiBub25lOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcAp9CgouZGVidWd0aW1lbGluZTpob3ZlciB7CiAgICBoZWlnaHQ6IDE1cHgKfQoKLnRoZV90aW1lbGluZV90ZXN0ZXIgewogICAgYmFja2dyb3VuZDogI2U3NGMzYzsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogMAp9CgoucnMtZ28tZnVsbHNjcmVlbiB7CiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsKICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7CiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsKICAgIHRvcDogMCAhaW1wb3J0YW50OwogICAgbGVmdDogMCAhaW1wb3J0YW50OwogICAgei1pbmRleDogOTk5OTk5OSAhaW1wb3J0YW50OwogICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50Cn0KCi5kZWJ1Z3RpbWVsaW5lLnRsX3NsaWRlIC50aGVfdGltZWxpbmVfdGVzdGVyIHsKICAgIGJhY2tncm91bmQ6ICNmMzljMTIKfQoKLmRlYnVndGltZWxpbmUudGxfZnJhbWUgLnRoZV90aW1lbGluZV90ZXN0ZXIgewogICAgYmFja2dyb3VuZDogIzM0OThkYgp9CgouZGVidWd0aW1saW5lX3R4dCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBmb250LXNpemU6IDdweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDEwcHg7CiAgICB0b3A6IDA7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgbGluZS1oZWlnaHQ6IDEwcHgKfQoKQGZvbnQtZmFjZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBzcmM6IHVybCguLi9mb250cy9yZXZpY29ucy9yZXZpY29uczkwYzY5MGM2Lmh0bWw/NTUxMDg4OCk7CiAgICBzcmM6IHVybCguLi9mb250cy9yZXZpY29ucy9yZXZpY29uczkwYzY5MGM2Lmh0bWw/NTUxMDg4OCNpZWZpeCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoLi4vZm9udHMvcmV2aWNvbnMvcmV2aWNvbnM5MGM2LTI5MGM2Lmh0bWw/NTUxMDg4OCkgZm9ybWF0KCd3b2ZmJyksIHVybCguLi9mb250cy9yZXZpY29ucy9yZXZpY29uczkwYzYtMzkwYzYuaHRtbD81NTEwODg4KSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCguLi9mb250cy9yZXZpY29ucy9yZXZpY29uczkwYzYtNDkwYzYuaHRtbD81NTEwODg4I3Jldmljb25zKSBmb3JtYXQoJ3N2ZycpOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbAp9CgpbY2xhc3MqPSIgcmV2aWNvbi0iXTpiZWZvcmUsCltjbGFzc149cmV2aWNvbi1dOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBmb250LXN0eWxlOiBub3JtYWw7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgc3BlYWs6IG5vbmU7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7CiAgICB3aWR0aDogMWVtOwogICAgbWFyZ2luLXJpZ2h0OiAuMmVtOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgZm9udC12YXJpYW50OiBub3JtYWw7CiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKICAgIGxpbmUtaGVpZ2h0OiAxZW07CiAgICBtYXJnaW4tbGVmdDogLjJlbQp9CgoucmV2aWNvbi1zZWFyY2gtMTpiZWZvcmUgewogICAgY29udGVudDogJ1xlODAyJwp9CgoucmV2aWNvbi1wZW5jaWwtMTpiZWZvcmUgewogICAgY29udGVudDogJ1xlODMxJwp9CgoucmV2aWNvbi1waWN0dXJlLTE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgwMycKfQoKLnJldmljb24tY2FuY2VsOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MGEnCn0KCi5yZXZpY29uLWluZm8tY2lyY2xlZDpiZWZvcmUgewogICAgY29udGVudDogJ1xlODBmJwp9CgoucmV2aWNvbi10cmFzaDpiZWZvcmUgewogICAgY29udGVudDogJ1xlODAxJwp9CgoucmV2aWNvbi1sZWZ0LWRpcjpiZWZvcmUgewogICAgY29udGVudDogJ1xlODE3Jwp9CgoucmV2aWNvbi1yaWdodC1kaXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgxOCcKfQoKLnJldmljb24tZG93bi1vcGVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4M2InCn0KCi5yZXZpY29uLWxlZnQtb3BlbjpiZWZvcmUgewogICAgY29udGVudDogJ1xlODE5Jwp9CgoucmV2aWNvbi1yaWdodC1vcGVuOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MWEnCn0KCi5yZXZpY29uLWFuZ2xlLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyMCcKfQoKLnJldmljb24tYW5nbGUtcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgxZCcKfQoKLnJldmljb24tbGVmdC1iaWc6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgxZicKfQoKLnJldmljb24tcmlnaHQtYmlnOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MWUnCn0KCi5yZXZpY29uLW1hZ2ljOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MDcnCn0KCi5yZXZpY29uLXBpY3R1cmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgwMCcKfQoKLnJldmljb24tZXhwb3J0OmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MGInCn0KCi5yZXZpY29uLWNvZzpiZWZvcmUgewogICAgY29udGVudDogJ1xlODMyJwp9CgoucmV2aWNvbi1sb2dpbjpiZWZvcmUgewogICAgY29udGVudDogJ1xlODMzJwp9CgoucmV2aWNvbi1sb2dvdXQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgzNCcKfQoKLnJldmljb24tdmlkZW86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgwNScKfQoKLnJldmljb24tYXJyb3ctY29tYm86YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyNycKfQoKLnJldmljb24tbGVmdC1vcGVuLTE6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyYScKfQoKLnJldmljb24tcmlnaHQtb3Blbi0xOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MmInCn0KCi5yZXZpY29uLWxlZnQtb3Blbi1taW5pOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MjInCn0KCi5yZXZpY29uLXJpZ2h0LW9wZW4tbWluaTpiZWZvcmUgewogICAgY29udGVudDogJ1xlODIzJwp9CgoucmV2aWNvbi1sZWZ0LW9wZW4tYmlnOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MjQnCn0KCi5yZXZpY29uLXJpZ2h0LW9wZW4tYmlnOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MjUnCn0KCi5yZXZpY29uLWxlZnQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgzNicKfQoKLnJldmljb24tcmlnaHQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyNicKfQoKLnJldmljb24tY2N3OmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MDgnCn0KCi5yZXZpY29uLWFycm93cy1jY3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgwNicKfQoKLnJldmljb24tcGFsZXR0ZTpiZWZvcmUgewogICAgY29udGVudDogJ1xlODI5Jwp9CgoucmV2aWNvbi1saXN0LWFkZDpiZWZvcmUgewogICAgY29udGVudDogJ1xlODBjJwp9CgoucmV2aWNvbi1kb2M6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgwOScKfQoKLnJldmljb24tbGVmdC1vcGVuLW91dGxpbmU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyZScKfQoKLnJldmljb24tbGVmdC1vcGVuLTI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgyYycKfQoKLnJldmljb24tcmlnaHQtb3Blbi1vdXRsaW5lOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGU4MmYnCn0KCi5yZXZpY29uLXJpZ2h0LW9wZW4tMjpiZWZvcmUgewogICAgY29udGVudDogJ1xlODJkJwp9CgoucmV2aWNvbi1lcXVhbGl6ZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICdcZTgzYScKfQoKLnJldmljb24tbGF5ZXJzLWFsdDpiZWZvcmUgewogICAgY29udGVudDogJ1xlODA0Jwp9CgoucmV2aWNvbi1wb3B1cDpiZWZvcmUgewogICAgY29udGVudDogJ1xlODI4Jwp9CgoucmV2X3NsaWRlcl93cmFwcGVyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHotaW5kZXg6IDA7CiAgICB3aWR0aDogMTAwJQp9CgoucmV2X3NsaWRlciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBvdmVyZmxvdzogdmlzaWJsZQp9CgouZW50cnktY29udGVudCAucmV2X3NsaWRlciBhLAoucmV2X3NsaWRlciBhIHsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLnRwLW92ZXJmbG93LWhpZGRlbiB7CiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQKfQoKLmdyb3VwX292X2hpZGRlbiB7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5yZXZfc2xpZGVyIGltZywKLnRwLXNpbXBsZXJlc3BvbnNpdmUgaW1nIHsKICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OwogICAgdHJhbnNpdGlvbjogbm9uZTsKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDA7CiAgICBib3JkZXI6IG5vbmUKfQoKLnJldl9zbGlkZXIgLm5vLXNsaWRlcy10ZXh0IHsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwYWRkaW5nLXRvcDogODBweAp9CgoucmV2X3NsaWRlcj51bCwKLnJldl9zbGlkZXI+dWw+bGksCi5yZXZfc2xpZGVyPnVsPmxpOmJlZm9yZSwKLnJldl9zbGlkZXJfd3JhcHBlcj51bCwKLnRwLXJldnNsaWRlci1tYWludWw+bGksCi50cC1yZXZzbGlkZXItbWFpbnVsPmxpOmJlZm9yZSwKLnRwLXNpbXBsZXJlc3BvbnNpdmU+dWwsCi50cC1zaW1wbGVyZXNwb25zaXZlPnVsPmxpLAoudHAtc2ltcGxlcmVzcG9uc2l2ZT51bD5saTpiZWZvcmUgewogICAgbGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7CiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CiAgICBvdmVyZmxvdy14OiB2aXNpYmxlOwogICAgb3ZlcmZsb3cteTogdmlzaWJsZTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7CiAgICB0ZXh0LWluZGVudDogMDsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDAKfQoKLnJldl9zbGlkZXI+dWw+bGksCi5yZXZfc2xpZGVyPnVsPmxpOmJlZm9yZSwKLnRwLXJldnNsaWRlci1tYWludWw+bGksCi50cC1yZXZzbGlkZXItbWFpbnVsPmxpOmJlZm9yZSwKLnRwLXNpbXBsZXJlc3BvbnNpdmU+dWw+bGksCi50cC1zaW1wbGVyZXNwb25zaXZlPnVsPmxpOmJlZm9yZSB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW4KfQoKLnRwLXJldnNsaWRlci1tYWludWwsCi50cC1yZXZzbGlkZXItc2xpZGVzbGkgewogICAgcGFkZGluZzogMCAhaW1wb3J0YW50OwogICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7CiAgICBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQKfQoKLmZ1bGxzY3JlZW4tY29udGFpbmVyLAouZnVsbHdpZHRoYmFubmVyLWNvbnRhaW5lciB7CiAgICBwYWRkaW5nOiAwOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5yZXZfc2xpZGVyIGxpLnRwLXJldnNsaWRlci1zbGlkZXNsaSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudAp9CgoudHAtY2FwdGlvbiAucnMtdW50b2dnbGVkLWNvbnRlbnQgewogICAgZGlzcGxheTogYmxvY2sKfQoKLnRwLWNhcHRpb24gLnJzLXRvZ2dsZWQtY29udGVudCB7CiAgICBkaXNwbGF5OiBub25lCn0KCi5ycy10b2dnbGUtY29udGVudC1hY3RpdmUudHAtY2FwdGlvbiAucnMtdG9nZ2xlZC1jb250ZW50IHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5ycy10b2dnbGUtY29udGVudC1hY3RpdmUudHAtY2FwdGlvbiAucnMtdW50b2dnbGVkLWNvbnRlbnQgewogICAgZGlzcGxheTogbm9uZQp9CgoucmV2X3NsaWRlciAuY2FwdGlvbiwKLnJldl9zbGlkZXIgLnRwLWNhcHRpb24gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQgIWltcG9ydGFudDsKICAgIHotaW5kZXg6IDEKfQoKLnJldl9zbGlkZXIgLmNhcHRpb24sCi5yZXZfc2xpZGVyIC50cC1jYXB0aW9uLAoudHAtc2ltcGxlcmVzcG9uc2l2ZSBpbWcgewogICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtby11c2VyLXNlbGVjdDogbm9uZQp9CgoucmV2X3NsaWRlciAudHAtbWFzay13cmFwIC50cC1jYXB0aW9uLAoucmV2X3NsaWRlciAudHAtbWFzay13cmFwIDpsYXN0LWNoaWxkLAoud3BiX3RleHRfY29sdW1uIC5yZXZfc2xpZGVyIC50cC1tYXNrLXdyYXAgLnRwLWNhcHRpb24sCi53cGJfdGV4dF9jb2x1bW4gLnJldl9zbGlkZXIgLnRwLW1hc2std3JhcCA6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi50cC1zdmctbGF5ZXIgc3ZnIHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi50cC1jYXJvdXNlbC13cmFwcGVyIHsKICAgIGN1cnNvcjogdXJsKG9wZW5oYW5kLmh0bWwpLCBtb3ZlCn0KCi50cC1jYXJvdXNlbC13cmFwcGVyLmRyYWdnZWQgewogICAgY3Vyc29yOiB1cmwoY2xvc2VkaGFuZC5odG1sKSwgbW92ZQp9CgoudHBfaW5uZXJfcGFkZGluZyB7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50Cn0KCi50cC1jYXB0aW9uLnRwLWxheWVyLXNlbGVjdGFibGUgewogICAgLW1vei11c2VyLXNlbGVjdDogYWxsOwogICAgLWtodG1sLXVzZXItc2VsZWN0OiBhbGw7CiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBhbGw7CiAgICAtby11c2VyLXNlbGVjdDogYWxsCn0KCi50cC1jYXB0aW9uLnRwLWhpZGRlbi1jYXB0aW9uLAoudHAtZm9yY2Vub3R2aXNpYmxlLAoudHAtaGlkZS1yZXZzbGlkZXIsCi50cC1wYXJhbGxheC13cmFwLnRwLWhpZGRlbi1jYXB0aW9uIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OwogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Cn0KCi5yZXZfc2xpZGVyIGF1ZGlvLAoucmV2X3NsaWRlciBlbWJlZCwKLnJldl9zbGlkZXIgaWZyYW1lLAoucmV2X3NsaWRlciBvYmplY3QsCi5yZXZfc2xpZGVyIHZpZGVvIHsKICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50Cn0KCi50cC1lbGVtZW50LWJhY2tncm91bmQgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgei1pbmRleDogMAp9CgoudHAtYmxvY2ttYXNrLAoudHAtYmxvY2ttYXNrX2luLAoudHAtYmxvY2ttYXNrX291dCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgei1pbmRleDogMTAwMDsKICAgIHRyYW5zZm9ybTogc2NhbGVYKDApIHNjYWxlWSgwKQp9CgoudHAtcGFyYWxsYXgtd3JhcCB7CiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkCn0KCi5yZXZfcm93X3pvbmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIG1pbi1oZWlnaHQ6IDUwcHg7CiAgICBmb250LXNpemU6IDAKfQoKLnJldl9jb2x1bW5faW5uZXIsCi5yZXZfc2xpZGVyIC50cC1jYXB0aW9uLnJldl9yb3cgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3gKfQoKLnJldl9yb3dfem9uZV90b3AgewogICAgdG9wOiAwCn0KCi5yZXZfcm93X3pvbmVfbWlkZGxlIHsKICAgIHRvcDogNTAlOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5yZXZfcm93X3pvbmVfYm90dG9tIHsKICAgIGJvdHRvbTogMAp9CgoucmV2X3NsaWRlciAudHAtY2FwdGlvbi5yZXZfcm93IHsKICAgIGRpc3BsYXk6IHRhYmxlOwogICAgdGFibGUtbGF5b3V0OiBmaXhlZDsKICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7CiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsKICAgIGZvbnQtc2l6ZTogMAp9CgoucmV2X2NvbHVtbiB7CiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgaGVpZ2h0OiBhdXRvOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGZvbnQtc2l6ZTogMAp9CgoucmV2X2NvbHVtbl9pbm5lciB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50Cn0KCi5yZXZfY29sdW1uX2JnIHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHotaW5kZXg6IDA7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDsKICAgIGJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudAp9CgoudHAtY2FwdGlvbiAuYmFja2Nvcm5lciwKLnRwLWNhcHRpb24gLmJhY2tjb3JuZXJ0b3AsCi50cC1jYXB0aW9uIC5mcm9udGNvcm5lciwKLnRwLWNhcHRpb24gLmZyb250Y29ybmVydG9wIHsKICAgIGhlaWdodDogMDsKICAgIHRvcDogMDsKICAgIHdpZHRoOiAwOwogICAgcG9zaXRpb246IGFic29sdXRlCn0KCi5yZXZfY29sdW1uX2lubmVyIC50cC1sb29wLXdyYXAsCi5yZXZfY29sdW1uX2lubmVyIC50cC1tYXNrLXdyYXAsCi5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwIHsKICAgIHRleHQtYWxpZ246IGluaGVyaXQKfQoKLnJldl9jb2x1bW5faW5uZXIgLnRwLW1hc2std3JhcCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLnJldl9jb2x1bW5faW5uZXIgLnRwLXBhcmFsbGF4LXdyYXAsCi5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwIC50cC1sb29wLXdyYXAsCi5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwIC50cC1tYXNrLXdyYXAgewogICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7CiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7CiAgICB0b3A6IGF1dG8gIWltcG9ydGFudDsKICAgIGxpbmUtaGVpZ2h0OiAwCn0KCi50cC12aWRlby1wbGF5LWJ1dHRvbiwKLnRwLXZpZGVvLXBsYXktYnV0dG9uIGkgewogICAgbGluZS1oZWlnaHQ6IDUwcHggIWltcG9ydGFudDsKICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLnJldl9jb2x1bW5faW5uZXIgLnJldl9sYXllcl9pbl9jb2x1bW4sCi5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwLAoucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCAudHAtbG9vcC13cmFwLAoucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCAudHAtbWFzay13cmFwIHsKICAgIHZlcnRpY2FsLWFsaWduOiB0b3AKfQoKLnJldl9icmVha19jb2x1bW5zIHsKICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQKfQoKLnJldl9icmVha19jb2x1bW5zIC50cC1wYXJhbGxheC13cmFwLnJldl9jb2x1bW4gewogICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsKICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQKfQoKLmZ1bGx3aWR0aGJhbm5lci1jb250YWluZXIgewogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouZnVsbHdpZHRoYmFubmVyLWNvbnRhaW5lciAuZnVsbHdpZHRoYWJhbm5lciB7CiAgICB3aWR0aDogMTAwJTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoudHAtc3RhdGljLWxheWVycyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB6LWluZGV4OiAxMDE7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwCn0KCi50cC1jYXB0aW9uIC5mcm9udGNvcm5lciB7CiAgICBib3JkZXItbGVmdDogNDBweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIGJvcmRlci1yaWdodDogMCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIGJvcmRlci10b3A6IDQwcHggc29saWQgIzAwYThmZjsKICAgIGxlZnQ6IC00MHB4Cn0KCi50cC1jYXB0aW9uIC5iYWNrY29ybmVyIHsKICAgIGJvcmRlci1sZWZ0OiAwIHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLXJpZ2h0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLWJvdHRvbTogNDBweCBzb2xpZCAjMDBhOGZmOwogICAgcmlnaHQ6IDAKfQoKLnRwLWNhcHRpb24gLmZyb250Y29ybmVydG9wIHsKICAgIGJvcmRlci1sZWZ0OiA0MHB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLXJpZ2h0OiAwIHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLWJvdHRvbTogNDBweCBzb2xpZCAjMDBhOGZmOwogICAgbGVmdDogLTQwcHgKfQoKLnRwLWNhcHRpb24gLmJhY2tjb3JuZXJ0b3AgewogICAgYm9yZGVyLWxlZnQ6IDAgc29saWQgdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItcmlnaHQ6IDQwcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItdG9wOiA0MHB4IHNvbGlkICMwMGE4ZmY7CiAgICByaWdodDogMAp9CgoudHAtbGF5ZXItaW5uZXItcm90YXRpb24gewogICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQKfQoKaW1nLnRwLXNsaWRlci1hbHRlcm5hdGl2ZS1pbWFnZSB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogYXV0bwp9CgouY2FwdGlvbi5mdWxsc2NyZWVudmlkZW8sCi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyLAoudHAtY2FwdGlvbi5jb3ZlcnNjcmVlbnZpZGVvLAoudHAtY2FwdGlvbi5mdWxsc2NyZWVudmlkZW8gewogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlCn0KCi5ub0ZpbHRlckNsYXNzIHsKICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50Cn0KCi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIHotaW5kZXg6IDAKfQoKLmNhcHRpb24uZnVsbHNjcmVlbnZpZGVvIGF1ZGlvLAouY2FwdGlvbi5mdWxsc2NyZWVudmlkZW8gaWZyYW1lLAouY2FwdGlvbi5mdWxsc2NyZWVudmlkZW8gdmlkZW8sCi50cC1jYXB0aW9uLmZ1bGxzY3JlZW52aWRlbyBpZnJhbWUsCi50cC1jYXB0aW9uLmZ1bGxzY3JlZW52aWRlbyBpZnJhbWUgYXVkaW8sCi50cC1jYXB0aW9uLmZ1bGxzY3JlZW52aWRlbyBpZnJhbWUgdmlkZW8gewogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsKICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50OwogICAgZGlzcGxheTogbm9uZQp9CgouZnVsbGNvdmVyZWR2aWRlbyBhdWRpbywKLmZ1bGxzY3JlZW52aWRlbyBhdWRpbyAuZnVsbGNvdmVyZWR2aWRlbyB2aWRlbywKLmZ1bGxzY3JlZW52aWRlbyB2aWRlbyB7CiAgICBiYWNrZ3JvdW5kOiAjMDAwCn0KCi5mdWxsY292ZXJlZHZpZGVvIC50cC1wb3N0ZXIgewogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDAKfQoKLnZpZGVvaXNwbGF5aW5nIC5odG1sNXZpZCAudHAtcG9zdGVyIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnRwLXZpZGVvLXBsYXktYnV0dG9uIHsKICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zKTsKICAgIGJvcmRlci1yYWRpdXM6IDVweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogNTAlOwogICAgbGVmdDogNTAlOwogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tdG9wOiAtMjVweDsKICAgIG1hcmdpbi1sZWZ0OiAtMjVweDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIHdpZHRoOiA1MHB4OwogICAgaGVpZ2h0OiA1MHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHotaW5kZXg6IDQ7CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZS1vdXQgIWltcG9ydGFudAp9CgoudHAtYXVkaW8taHRtbDUgLnRwLXZpZGVvLXBsYXktYnV0dG9uLAoudHAtaGlkZGVuYXVkaW8gewogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Cn0KCi50cC1jYXB0aW9uIC5odG1sNXZpZCB7CiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OwogICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQKfQoKLnRwLXZpZGVvLXBsYXktYnV0dG9uIGkgewogICAgd2lkdGg6IDUwcHg7CiAgICBoZWlnaHQ6IDUwcHg7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudAp9CgoucnMtZnVsbHZpZGVvLWNvdmVyLAoudHAtZG90dGVkb3ZlcmxheSwKLnRwLXNoYWRvd2NvdmVyIHsKICAgIGhlaWdodDogMTAwJTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUKfQoKLnRwLWNhcHRpb246aG92ZXIgLnRwLXZpZGVvLXBsYXktYnV0dG9uIHsKICAgIG9wYWNpdHk6IDE7CiAgICBkaXNwbGF5OiBibG9jawp9CgoudHAtY2FwdGlvbiAudHAtcmV2c3RvcCB7CiAgICBkaXNwbGF5OiBub25lOwogICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7CiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7CiAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7CiAgICBsaW5lLWhlaWdodDogMjBweCAhaW1wb3J0YW50OwogICAgdmVydGljYWwtYWxpZ246IHRvcDsKICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50Cn0KCi50cC1zZWVrLWJhciwKLnRwLXZpZGVvLWJ1dHRvbiwKLnRwLXZvbHVtZS1iYXIgewogICAgb3V0bGluZTogMDsKICAgIGxpbmUtaGVpZ2h0OiAxMnB4OwogICAgbWFyZ2luOiAwOwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi52aWRlb2lzcGxheWluZyAucmV2aWNvbi1yaWdodC1kaXIgewogICAgZGlzcGxheTogbm9uZQp9CgoudmlkZW9pc3BsYXlpbmcgLnRwLXJldnN0b3AgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrCn0KCi52aWRlb2lzcGxheWluZyAudHAtdmlkZW8tcGxheS1idXR0b24gewogICAgZGlzcGxheTogbm9uZQp9CgouZnVsbGNvdmVyZWR2aWRlbyAudHAtdmlkZW8tcGxheS1idXR0b24gewogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Cn0KCi5mdWxsc2NyZWVudmlkZW8gLmZ1bGxzY3JlZW52aWRlbyBhdWRpbywKLmZ1bGxzY3JlZW52aWRlbyAuZnVsbHNjcmVlbnZpZGVvIHZpZGVvIHsKICAgIG9iamVjdC1maXQ6IGNvbnRhaW4gIWltcG9ydGFudAp9CgouZnVsbHNjcmVlbnZpZGVvIC5mdWxsY292ZXJlZHZpZGVvIGF1ZGlvLAouZnVsbHNjcmVlbnZpZGVvIC5mdWxsY292ZXJlZHZpZGVvIHZpZGVvIHsKICAgIG9iamVjdC1maXQ6IGNvdmVyICFpbXBvcnRhbnQKfQoKLnRwLXZpZGVvLWNvbnRyb2xzIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDA7CiAgICByaWdodDogMDsKICAgIHBhZGRpbmc6IDVweDsKICAgIG9wYWNpdHk6IDA7CiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zczsKICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDAgMTMlLCAjMzIzMjMyIDEwMCUpOwogICAgZGlzcGxheTogdGFibGU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgoucmV2LWJ0bi5yZXYtaGlkZGVuaWNvbiBpLAoucmV2LWJ0bi5yZXYtd2l0aGljb24gaSB7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0ICFpbXBvcnRhbnQ7CiAgICBmb250LXNpemU6IDE1cHgKfQoKLnRwLWNhcHRpb246aG92ZXIgLnRwLXZpZGVvLWNvbnRyb2xzIHsKICAgIG9wYWNpdHk6IC45Cn0KCi50cC12aWRlby1idXR0b24gewogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNSk7CiAgICBib3JkZXI6IDA7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICBmb250LXNpemU6IDEycHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIHBhZGRpbmc6IDAKfQoKLnRwLXZpZGVvLWJ1dHRvbjpob3ZlciB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnRwLXZpZGVvLWJ1dHRvbi13cmFwLAoudHAtdmlkZW8tc2Vlay1iYXItd3JhcCwKLnRwLXZpZGVvLXZvbC1iYXItd3JhcCB7CiAgICBwYWRkaW5nOiAwIDVweDsKICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KCi50cC12aWRlby1zZWVrLWJhci13cmFwIHsKICAgIHdpZHRoOiA4MCUKfQoKLnRwLXZpZGVvLXZvbC1iYXItd3JhcCB7CiAgICB3aWR0aDogMjAlCn0KCi50cC1zZWVrLWJhciwKLnRwLXZvbHVtZS1iYXIgewogICAgd2lkdGg6IDEwMCU7CiAgICBwYWRkaW5nOiAwCn0KCi5ycy1mdWxsdmlkZW8tY292ZXIgewogICAgd2lkdGg6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICB6LWluZGV4OiA1Cn0KCi5kaXNhYmxlZF9sYyAudHAtdmlkZW8tcGxheS1idXR0b24sCi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLAoucnMtYmFja2dyb3VuZC12aWRlby1sYXllciB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywKLnJzLWJhY2tncm91bmQtdmlkZW8tbGF5ZXIgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9uIHsKICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudAp9CgoudHAtYXVkaW8taHRtbDUgLnRwLXZpZGVvLWNvbnRyb2xzIHsKICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsKICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudAp9CgoudHAtZG90dGVkb3ZlcmxheSB7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0OwogICAgd2lkdGg6IDEwMCU7CiAgICB6LWluZGV4OiAzCn0KCi50cC1kb3R0ZWRvdmVybGF5LnR3b3h0d28gewogICAgYmFja2dyb3VuZDogdXJsKC4uL2Fzc2V0cy9ncmlkdGlsZS5odG1sKQp9CgoudHAtZG90dGVkb3ZlcmxheS50d294dHdvd2hpdGUgewogICAgYmFja2dyb3VuZDogdXJsKC4uL2Fzc2V0cy9ncmlkdGlsZV93aGl0ZS5odG1sKQp9CgoudHAtZG90dGVkb3ZlcmxheS50aHJlZXh0aHJlZSB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vYXNzZXRzL2dyaWR0aWxlXzN4My5odG1sKQp9CgoudHAtZG90dGVkb3ZlcmxheS50aHJlZXh0aHJlZXdoaXRlIHsKICAgIGJhY2tncm91bmQ6IHVybCguLi9hc3NldHMvZ3JpZHRpbGVfM3gzX3doaXRlLmh0bWwpCn0KCi50cC1zaGFkb3djb3ZlciB7CiAgICB3aWR0aDogMTAwJTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICB6LWluZGV4OiAtMQp9CgoudHAtc2hhZG93MSB7CiAgICBib3gtc2hhZG93OiAwIDEwcHggNnB4IC02cHggcmdiYSgwLCAwLCAwLCAuOCkKfQoKLnRwLXNoYWRvdzI6YWZ0ZXIsCi50cC1zaGFkb3cyOmJlZm9yZSwKLnRwLXNoYWRvdzM6YmVmb3JlLAoudHAtc2hhZG93NDphZnRlciB7CiAgICB6LWluZGV4OiAtMjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgYm90dG9tOiAxMHB4OwogICAgbGVmdDogMTBweDsKICAgIHdpZHRoOiA1MCU7CiAgICB0b3A6IDg1JTsKICAgIG1heC13aWR0aDogMzAwcHg7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3gtc2hhZG93OiAwIDE1cHggMTBweCByZ2JhKDAsIDAsIDAsIC44KTsKICAgIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKQp9CgoudHAtc2hhZG93MjphZnRlciwKLnRwLXNoYWRvdzQ6YWZ0ZXIgewogICAgdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7CiAgICByaWdodDogMTBweDsKICAgIGxlZnQ6IGF1dG8KfQoKLnRwLXNoYWRvdzUgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgLjMpLCAwIDAgNDBweCByZ2JhKDAsIDAsIDAsIC4xKSBpbnNldAp9CgoudHAtc2hhZG93NTphZnRlciwKLnRwLXNoYWRvdzU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgei1pbmRleDogLTI7CiAgICBib3gtc2hhZG93OiAwIDAgMjVweCAwIHJnYmEoMCwgMCwgMCwgLjYpOwogICAgdG9wOiAzMCU7CiAgICBib3R0b206IDA7CiAgICBsZWZ0OiAyMHB4OwogICAgcmlnaHQ6IDIwcHg7CiAgICBib3JkZXItcmFkaXVzOiAxMDBweC8yMHB4Cn0KCi50cC1idXR0b24gewogICAgcGFkZGluZzogNnB4IDEzcHggNXB4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgaGVpZ2h0OiAzMHB4OwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsKICAgIHRleHQtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuNikgIWltcG9ydGFudDsKICAgIGZvbnQtc2l6ZTogMTVweDsKICAgIGxpbmUtaGVpZ2h0OiA0NXB4ICFpbXBvcnRhbnQ7CiAgICBmb250LWZhbWlseTogYXJpYWwsIHNhbnMtc2VyaWY7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoKLnRwLWJ1dHRvbi5iaWcgewogICAgY29sb3I6ICNmZmY7CiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjYpOwogICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgIHBhZGRpbmc6IDlweCAyMHB4OwogICAgZm9udC1zaXplOiAxOXB4OwogICAgbGluZS1oZWlnaHQ6IDU3cHggIWltcG9ydGFudAp9CgoucHVyY2hhc2U6aG92ZXIsCi50cC1idXR0b24uYmlnOmhvdmVyLAoudHAtYnV0dG9uOmhvdmVyIHsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSwgMTVweCAxMXB4Cn0KCi5wdXJjaGFzZS5ncmVlbiwKLnB1cmNoYXNlOmhvdmVyLmdyZWVuLAoudHAtYnV0dG9uLmdyZWVuLAoudHAtYnV0dG9uOmhvdmVyLmdyZWVuIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyMWExMTc7CiAgICBib3gtc2hhZG93OiAwIDNweCAwIDAgIzEwNGQwYgp9CgoucHVyY2hhc2UuYmx1ZSwKLnB1cmNoYXNlOmhvdmVyLmJsdWUsCi50cC1idXR0b24uYmx1ZSwKLnRwLWJ1dHRvbjpob3Zlci5ibHVlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDc4Y2I7CiAgICBib3gtc2hhZG93OiAwIDNweCAwIDAgIzBmM2U2OAp9CgoucHVyY2hhc2UucmVkLAoucHVyY2hhc2U6aG92ZXIucmVkLAoudHAtYnV0dG9uLnJlZCwKLnRwLWJ1dHRvbjpob3Zlci5yZWQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2NiMWQxZDsKICAgIGJveC1zaGFkb3c6IDAgM3B4IDAgMCAjN2MxMjEyCn0KCi5wdXJjaGFzZS5vcmFuZ2UsCi5wdXJjaGFzZTpob3Zlci5vcmFuZ2UsCi50cC1idXR0b24ub3JhbmdlLAoudHAtYnV0dG9uOmhvdmVyLm9yYW5nZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjcwOwogICAgYm94LXNoYWRvdzogMCAzcHggMCAwICNhMzRjMDAKfQoKLnB1cmNoYXNlLmRhcmtncmV5LAoucHVyY2hhc2U6aG92ZXIuZGFya2dyZXksCi50cC1idXR0b24uZGFya2dyZXksCi50cC1idXR0b24uZ3JleSwKLnRwLWJ1dHRvbjpob3Zlci5kYXJrZ3JleSwKLnRwLWJ1dHRvbjpob3Zlci5ncmV5IHsKICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTU7CiAgICBib3gtc2hhZG93OiAwIDNweCAwIDAgIzIyMgp9CgoucHVyY2hhc2UubGlnaHRncmV5LAoucHVyY2hhc2U6aG92ZXIubGlnaHRncmV5LAoudHAtYnV0dG9uLmxpZ2h0Z3JleSwKLnRwLWJ1dHRvbjpob3Zlci5saWdodGdyZXkgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODsKICAgIGJveC1zaGFkb3c6IDAgM3B4IDAgMCAjNTU1Cn0KCi5yZXYtYnRuLAoucmV2LWJ0bjp2aXNpdGVkIHsKICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDsKICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OwogICAgbGluZS1oZWlnaHQ6IDQ0cHg7CiAgICBmb250LXNpemU6IDE3cHg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgcGFkZGluZzogMTJweCAzNXB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnJldi1idG4ucmV2LXVwcGVyY2FzZSwKLnJldi1idG4ucmV2LXVwcGVyY2FzZTp2aXNpdGVkIHsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICBsZXR0ZXItc3BhY2luZzogMXB4OwogICAgZm9udC1zaXplOiAxNXB4OwogICAgZm9udC13ZWlnaHQ6IDkwMAp9CgoucmV2LWJ0bi5yZXYtd2l0aGljb24gaSB7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdG9wOiAwOwogICAgbWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudAp9CgoucmV2LWJ0bi5yZXYtaGlkZGVuaWNvbiBpIHsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0b3A6IDA7CiAgICBvcGFjaXR5OiAwOwogICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsKICAgIHdpZHRoOiAwICFpbXBvcnRhbnQKfQoKLnJldi1idG4ucmV2LWhpZGRlbmljb246aG92ZXIgaSB7CiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7CiAgICBtYXJnaW4tbGVmdDogMTBweCAhaW1wb3J0YW50OwogICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudAp9CgoucmV2LWJ0bi5yZXYtbWVkaXVtLAoucmV2LWJ0bi5yZXYtbWVkaXVtOnZpc2l0ZWQgewogICAgbGluZS1oZWlnaHQ6IDM2cHg7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBwYWRkaW5nOiAxMHB4IDMwcHgKfQoKLnJldi1idG4ucmV2LW1lZGl1bS5yZXYtaGlkZGVuaWNvbiBpLAoucmV2LWJ0bi5yZXYtbWVkaXVtLnJldi13aXRoaWNvbiBpIHsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIHRvcDogMAp9CgoucmV2LWJ0bi5yZXYtc21hbGwsCi5yZXYtYnRuLnJldi1zbWFsbDp2aXNpdGVkIHsKICAgIGxpbmUtaGVpZ2h0OiAyOHB4OwogICAgZm9udC1zaXplOiAxMnB4OwogICAgcGFkZGluZzogN3B4IDIwcHgKfQoKLnJldi1idG4ucmV2LXNtYWxsLnJldi1oaWRkZW5pY29uIGksCi5yZXYtYnRuLnJldi1zbWFsbC5yZXYtd2l0aGljb24gaSB7CiAgICBmb250LXNpemU6IDEycHg7CiAgICB0b3A6IDAKfQoKLnJldi1tYXhyb3VuZCB7CiAgICBib3JkZXItcmFkaXVzOiAzMHB4Cn0KCi5yZXYtbWlucm91bmQgewogICAgYm9yZGVyLXJhZGl1czogM3B4Cn0KCi5yZXYtYnVyZ2VyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiA2MHB4OwogICAgaGVpZ2h0OiA2MHB4OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIHBhZGRpbmc6IDIycHggMCAwIDE0cHg7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDUxLCA1MSwgNTEsIC4yNSk7CiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi5yZXYtYnVyZ2VyIHNwYW4gewogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMzBweDsKICAgIGhlaWdodDogM3B4OwogICAgYmFja2dyb3VuZDogIzMzMzsKICAgIHRyYW5zaXRpb246IC43czsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQKfQoKLnJldi1idXJnZXIucmV2Yi13aGl0ZSBzcGFuLAoucmV2LWJ1cmdlci5yZXZiLXdoaXRlbm9ib3JkZXIgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5yZXYtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpIHsKICAgIG1hcmdpbjogM3B4IDAKfQoKI2RpYWxvZ19hZGRidXR0b24gLnJldi1idXJnZXI6aG92ZXIgOmZpcnN0LWNoaWxkLAoub3BlbiAucmV2LWJ1cmdlciA6Zmlyc3QtY2hpbGQsCi5vcGVuLnJldi1idXJnZXIgOmZpcnN0LWNoaWxkIHsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpIHJvdGF0ZSgtNDVkZWcpCn0KCiNkaWFsb2dfYWRkYnV0dG9uIC5yZXYtYnVyZ2VyOmhvdmVyIDpudGgtY2hpbGQoMiksCi5vcGVuIC5yZXYtYnVyZ2VyIDpudGgtY2hpbGQoMiksCi5vcGVuLnJldi1idXJnZXIgOm50aC1jaGlsZCgyKSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOwogICAgb3BhY2l0eTogMAp9CgojZGlhbG9nX2FkZGJ1dHRvbiAucmV2LWJ1cmdlcjpob3ZlciA6bGFzdC1jaGlsZCwKLm9wZW4gLnJldi1idXJnZXIgOmxhc3QtY2hpbGQsCi5vcGVuLnJldi1idXJnZXIgOmxhc3QtY2hpbGQgewogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpIHJvdGF0ZSgtMTM1ZGVnKQp9CgoucmV2LWJ1cmdlci5yZXZiLXdoaXRlIHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpCn0KCi5yZXYtYnVyZ2VyLnJldmItZGFya25vYm9yZGVyLAoucmV2LWJ1cmdlci5yZXZiLXdoaXRlbm9ib3JkZXIgewogICAgYm9yZGVyOiAwCn0KCi5yZXYtYnVyZ2VyLnJldmItZGFya25vYm9yZGVyIHNwYW4gewogICAgYmFja2dyb3VuZDogIzMzMwp9CgoucmV2LWJ1cmdlci5yZXZiLXdoaXRlZnVsbCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgYm9yZGVyOiBub25lCn0KCi5yZXYtYnVyZ2VyLnJldmItd2hpdGVmdWxsIHNwYW4gewogICAgYmFja2dyb3VuZDogIzMzMwp9CgoucmV2LWJ1cmdlci5yZXZiLWRhcmtmdWxsIHsKICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICBib3JkZXI6IG5vbmUKfQoKLnJldi1idXJnZXIucmV2Yi1kYXJrZnVsbCBzcGFuLAoucmV2LXNjcm9sbC1idG4ucmV2cy1mdWxsd2hpdGUgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgpAa2V5ZnJhbWVzIHJldi1hbmktbW91c2UgewogICAgMCUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgdG9wOiAyOSUKICAgIH0KICAgIDE1JSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB0b3A6IDUwJQogICAgfQogICAgNTAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRvcDogNTAlCiAgICB9CiAgICAxMDAlIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRvcDogMjklCiAgICB9Cn0KCi5yZXYtc2Nyb2xsLWJ0biB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBsZWZ0OiAwOwogICAgcmlnaHQ6IDA7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICB3aWR0aDogMzVweDsKICAgIGhlaWdodDogNTVweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmOwogICAgYm9yZGVyLXJhZGl1czogMjNweAp9CgoucmV2LXNjcm9sbC1idG4+KiB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBsaW5lLWhlaWdodDogMThweDsKICAgIGZvbnQtc2l6ZTogMTNweDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtZmFtaWx5OiBwcm94aW1hLW5vdmEsICJIZWx2ZXRpY2EgTmV1ZSIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7CiAgICBsZXR0ZXItc3BhY2luZzogMnB4Cn0KCi5yZXYtc2Nyb2xsLWJ0bj4uYWN0aXZlLAoucmV2LXNjcm9sbC1idG4+OmZvY3VzLAoucmV2LXNjcm9sbC1idG4+OmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5yZXYtc2Nyb2xsLWJ0bj4uYWN0aXZlLAoucmV2LXNjcm9sbC1idG4+OmFjdGl2ZSwKLnJldi1zY3JvbGwtYnRuPjpmb2N1cywKLnJldi1zY3JvbGwtYnRuPjpob3ZlciB7CiAgICBvcGFjaXR5OiAuOAp9CgoucmV2LXNjcm9sbC1idG4ucmV2cy1mdWxsd2hpdGUgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiAjMzMzCn0KCi5yZXYtc2Nyb2xsLWJ0bi5yZXZzLWZ1bGxkYXJrIHsKICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICBib3JkZXI6IG5vbmUKfQoKLnJldi1zY3JvbGwtYnRuLnJldnMtZnVsbGRhcmsgc3BhbiwKLnRwLWJ1bGxldCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5yZXYtc2Nyb2xsLWJ0biBzcGFuIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgdG9wOiAyOSU7CiAgICBsZWZ0OiA1MCU7CiAgICB3aWR0aDogOHB4OwogICAgaGVpZ2h0OiA4cHg7CiAgICBtYXJnaW46IC00cHggMCAwIC00cHg7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgYW5pbWF0aW9uOiByZXYtYW5pLW1vdXNlIDIuNXMgbGluZWFyIGluZmluaXRlCn0KCi5yZXYtc2Nyb2xsLWJ0bi5yZXZzLWRhcmsgewogICAgYm9yZGVyLWNvbG9yOiAjMzMzCn0KCi5yZXYtc2Nyb2xsLWJ0bi5yZXZzLWRhcmsgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiAjMzMzCn0KCi5yZXYtY29udHJvbC1idG4gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgei1pbmRleDogNTsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAyMHB4OwogICAgbGluZS1oZWlnaHQ6IDYwcHg7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZm9udC1zdHlsZTogbm9ybWFsOwogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7CiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOwogICAgYm9yZGVyLXJhZGl1czogNTBweDsKICAgIHRleHQtc2hhZG93OiBub25lOwogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNSk7CiAgICB3aWR0aDogNjBweDsKICAgIGhlaWdodDogNjBweDsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnJldi1jYnV0dG9uLWRhcmstc3IsCi5yZXYtY2J1dHRvbi1saWdodC1zciB7CiAgICBib3JkZXItcmFkaXVzOiAzcHgKfQoKLnJldi1jYnV0dG9uLWxpZ2h0LAoucmV2LWNidXR0b24tbGlnaHQtc3IgewogICAgY29sb3I6ICMzMzM7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSkKfQoKLnJldi1zYnV0dG9uIHsKICAgIGxpbmUtaGVpZ2h0OiAzN3B4OwogICAgd2lkdGg6IDM3cHg7CiAgICBoZWlnaHQ6IDM3cHgKfQoKLnJldi1zYnV0dG9uLWJsdWUgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5OAp9CgoucmV2LXNidXR0b24tbGlnaHRibHVlIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGEwZDEKfQoKLnJldi1zYnV0dG9uLXJlZCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0YjM5Cn0KCi50cC1iYW5uZXJ0aW1lciB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogNXB4OwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjE1KTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHotaW5kZXg6IDIwMDsKICAgIHRvcDogMAp9CgoudHAtYmFubmVydGltZXIudHAtYm90dG9tIHsKICAgIHRvcDogYXV0bzsKICAgIGJvdHRvbTogMCAhaW1wb3J0YW50OwogICAgaGVpZ2h0OiA1cHgKfQoKLnRwLWNhcHRpb24gaW1nIHsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIC1tcy1maWx0ZXI6ICJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jMDBGRkZGRkYsZW5kQ29sb3JzdHI9IzAwRkZGRkZGKSI7CiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSMwMEZGRkZGRiwgZW5kQ29sb3JzdHI9IzAwRkZGRkZGKTsKICAgIHpvb206IDEKfQoKLmNhcHRpb24uc2xpZGVsaW5rIGEgZGl2LAoudHAtY2FwdGlvbi5zbGlkZWxpbmsgYSBkaXYgewogICAgd2lkdGg6IDMwMDBweDsKICAgIGhlaWdodDogMTUwMHB4OwogICAgYmFja2dyb3VuZDogdXJsKC4uL2Fzc2V0cy9jb2xvcmVkYmcuaHRtbCkKfQoKLnRwLWNhcHRpb24uc2xpZGVsaW5rIGEgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vYXNzZXRzL2NvbG9yZWRiZy5odG1sKQp9CgoudHAtbG9hZGVyLnNwaW5uZXIwLAoudHAtbG9hZGVyLnNwaW5uZXI1IHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbG9hZGVyLmh0bWwpOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdAp9CgoudHAtc2hhcGUgewogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCUKfQoKLnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jawp9CgoudHAtY2FwdGlvbiAucnMtc3RhcnJpbmcgLnN0YXItcmF0aW5nIHsKICAgIGZsb2F0OiBub25lOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgdmVydGljYWwtYWxpZ246IHRvcDsKICAgIGNvbG9yOiAjZmZjMzIxICFpbXBvcnRhbnQKfQoKLnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nIC5zdGFyLXJhdGluZywKLnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nLXBhZ2UgLnN0YXItcmF0aW5nIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGhlaWdodDogMWVtOwogICAgd2lkdGg6IDUuNGVtOwogICAgZm9udC1mYW1pbHk6IHN0YXI7CiAgICBmb250LXNpemU6IDFlbSAhaW1wb3J0YW50Cn0KCi50cC1sb2FkZXIuc3Bpbm5lcjAsCi50cC1sb2FkZXIuc3Bpbm5lcjEgewogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBtYXJnaW4tdG9wOiAtMjBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMjBweDsKICAgIGFuaW1hdGlvbjogdHAtcm90YXRlcGxhbmUgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMCwgMCwgMCwgLjE1KQp9CgoudHAtY2FwdGlvbiAucnMtc3RhcnJpbmcgLnN0YXItcmF0aW5nOmJlZm9yZSwKLnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nLXBhZ2UgLnN0YXItcmF0aW5nOmJlZm9yZSB7CiAgICBjb250ZW50OiAiXDczXDczXDczXDczXDczIjsKICAgIGNvbG9yOiAjZTBkYWRmOwogICAgZmxvYXQ6IGxlZnQ7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlCn0KCi50cC1jYXB0aW9uIC5ycy1zdGFycmluZyAuc3Rhci1yYXRpbmcgc3BhbiB7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgZmxvYXQ6IGxlZnQ7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcGFkZGluZy10b3A6IDEuNWVtOwogICAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudAp9CgoudHAtY2FwdGlvbiAucnMtc3RhcnJpbmcgLnN0YXItcmF0aW5nIHNwYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcNTNcNTNcNTNcNTNcNTMiOwogICAgdG9wOiAwOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMAp9CgoudHAtbG9hZGVyIHsKICAgIHRvcDogNTAlOwogICAgbGVmdDogNTAlOwogICAgei1pbmRleDogMTAwMDA7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUKfQoKLnRwLWxvYWRlci5zcGlubmVyMCB7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyCn0KCi50cC1sb2FkZXIuc3Bpbm5lcjUgewogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMHB4OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIG1hcmdpbjogLTIycHg7CiAgICB3aWR0aDogNDRweDsKICAgIGhlaWdodDogNDRweDsKICAgIGJvcmRlci1yYWRpdXM6IDNweAp9CgpAa2V5ZnJhbWVzIHRwLXJvdGF0ZXBsYW5lIHsKICAgIDAlIHsKICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKDApIHJvdGF0ZVkoMCkKICAgIH0KICAgIDUwJSB7CiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMCkKICAgIH0KICAgIDEwMCUgewogICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MGRlZykgcm90YXRlWSgtMTc5LjlkZWcpCiAgICB9Cn0KCi50cC1sb2FkZXIuc3Bpbm5lcjIgewogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBtYXJnaW4tdG9wOiAtMjBweDsKICAgIG1hcmdpbi1sZWZ0OiAtMjBweDsKICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpOwogICAgYm9yZGVyLXJhZGl1czogMTAwJTsKICAgIGFuaW1hdGlvbjogdHAtc2NhbGVvdXQgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQKfQoKQGtleWZyYW1lcyB0cC1zY2FsZW91dCB7CiAgICAwJSB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKQogICAgfQogICAgMTAwJSB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgICAgICBvcGFjaXR5OiAwCiAgICB9Cn0KCi50cC1sb2FkZXIuc3Bpbm5lcjMgewogICAgbWFyZ2luOiAtOXB4IDAgMCAtMzVweDsKICAgIHdpZHRoOiA3MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi50cC1sb2FkZXIuc3Bpbm5lcjMgLmJvdW5jZTEsCi50cC1sb2FkZXIuc3Bpbm5lcjMgLmJvdW5jZTIsCi50cC1sb2FkZXIuc3Bpbm5lcjMgLmJvdW5jZTMgewogICAgd2lkdGg6IDE4cHg7CiAgICBoZWlnaHQ6IDE4cHg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm94LXNoYWRvdzogMCAwIDIwcHggMCByZ2JhKDAsIDAsIDAsIC4xNSk7CiAgICBib3JkZXItcmFkaXVzOiAxMDAlOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgYW5pbWF0aW9uOiB0cC1ib3VuY2VkZWxheSAxLjRzIGluZmluaXRlIGVhc2UtaW4tb3V0OwogICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aAp9CgoudHAtbG9hZGVyLnNwaW5uZXIzIC5ib3VuY2UxIHsKICAgIGFuaW1hdGlvbi1kZWxheTogLS4zMnMKfQoKLnRwLWxvYWRlci5zcGlubmVyMyAuYm91bmNlMiB7CiAgICBhbmltYXRpb24tZGVsYXk6IC0uMTZzCn0KCkBrZXlmcmFtZXMgdHAtYm91bmNlZGVsYXkgewogICAgMCUsCiAgICAxMDAlLAogICAgODAlIHsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApCiAgICB9CiAgICA0MCUgewogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkKICAgIH0KfQoKLnRwLWxvYWRlci5zcGlubmVyNCB7CiAgICBtYXJnaW46IC0yMHB4IDAgMCAtMjBweDsKICAgIHdpZHRoOiA0MHB4OwogICAgaGVpZ2h0OiA0MHB4OwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgYW5pbWF0aW9uOiB0cC1yb3RhdGUgMnMgaW5maW5pdGUgbGluZWFyCn0KCi50cC1sb2FkZXIuc3Bpbm5lcjQgLmRvdDEsCi50cC1sb2FkZXIuc3Bpbm5lcjQgLmRvdDIgewogICAgd2lkdGg6IDYwJTsKICAgIGhlaWdodDogNjAlOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7CiAgICBhbmltYXRpb246IHRwLWJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDsKICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpCn0KCi50cC1sb2FkZXIuc3Bpbm5lcjQgLmRvdDIgewogICAgdG9wOiBhdXRvOwogICAgYm90dG9tOiAwOwogICAgYW5pbWF0aW9uLWRlbGF5OiAtMXMKfQoKQGtleWZyYW1lcyB0cC1yb3RhdGUgewogICAgMTAwJSB7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKQogICAgfQp9CgpAa2V5ZnJhbWVzIHRwLWJvdW5jZSB7CiAgICAwJSwKICAgIDEwMCUgewogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCkKICAgIH0KICAgIDUwJSB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKQogICAgfQp9CgoudHAtYnVsbGV0cy5uYXZiYXIsCi50cC10YWJzLm5hdmJhciwKLnRwLXRodW1icy5uYXZiYXIgewogICAgYm9yZGVyOiBub25lOwogICAgbWluLWhlaWdodDogMDsKICAgIG1hcmdpbjogMDsKICAgIGJvcmRlci1yYWRpdXM6IDAKfQoKLnRwLWJ1bGxldHMsCi50cC10YWJzLAoudHAtdGh1bWJzIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgei1pbmRleDogMTAwMDsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDAKfQoKLnRwLXRhYiwKLnRwLXRodW1iIHsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIG9wYWNpdHk6IC41OwogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgoudHAtYXJyLWltZ2hvbGRlciwKLnRwLXRhYi1pbWFnZSwKLnRwLXRodW1iLWltYWdlLAoudHAtdmlkZW9wb3N0ZXIgewogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMAp9CgoudHAtdGFiLnNlbGVjdGVkLAoudHAtdGFiOmhvdmVyLAoudHAtdGh1bWIuc2VsZWN0ZWQsCi50cC10aHVtYjpob3ZlciB7CiAgICBvcGFjaXR5OiAxCn0KCi50cC10YWItbWFzaywKLnRwLXRodW1iLW1hc2sgewogICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50Cn0KCi50cC10YWJzLAoudHAtdGh1bWJzIHsKICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94ICFpbXBvcnRhbnQKfQoKLnRwLWJ1bGxldCB7CiAgICB3aWR0aDogMTVweDsKICAgIGhlaWdodDogMTVweDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpOwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi50cC1idWxsZXQuc2VsZWN0ZWQsCi50cC1idWxsZXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgoudHBhcnJvd3MgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogIzAwMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgd2lkdGg6IDQwcHg7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHotaW5kZXg6IDEwMDAKfQoKLnRwYXJyb3dzOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICMwMDAKfQoKLnRwYXJyb3dzOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogcmV2aWNvbnM7CiAgICBmb250LXNpemU6IDE1cHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDQwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmhnaW5mbywKLmhnbGF5ZXJpbmZvIHsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogJ1xlODI0Jwp9CgoudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogJ1xlODI1Jwp9Cgpib2R5LnJ0bCAudHAta2JpbWcgewogICAgbGVmdDogMCAhaW1wb3J0YW50Cn0KCi5kZGR3cmFwcGVyc2hhZG93IHsKICAgIGJveC1zaGFkb3c6IDAgNDVweCAxMDBweCByZ2JhKDAsIDAsIDAsIC40KQp9CgouaGdsYXllcmluZm8gewogICAgcG9zaXRpb246IGZpeGVkOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMDsKICAgIGNvbG9yOiAjZmZmOwogICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43NSk7CiAgICBwYWRkaW5nOiA1cHggMTBweDsKICAgIHotaW5kZXg6IDIwMDA7CiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsCn0KCi5oZWxwZ3JpZCwKLmhnaW5mbyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGUKfQoKLmhnaW5mbyB7CiAgICB0b3A6IC0ycHg7CiAgICBsZWZ0OiAtMnB4OwogICAgY29sb3I6ICNlNzRjM2M7CiAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgcGFkZGluZzogMnB4IDVweAp9CgouaW5kZWJ1Z21vZGUgLnRwLWNhcHRpb246aG92ZXIgewogICAgYm9yZGVyOiAxcHggZGFzaGVkICNjMDM5MmIgIWltcG9ydGFudAp9CgouaGVscGdyaWQgewogICAgYm9yZGVyOiAycHggZGFzaGVkICNjMDM5MmI7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgei1pbmRleDogMAp9CgojcmV2c2xpZGVybG9nbG9nbG9nIHsKICAgIHBhZGRpbmc6IDE1cHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMjAwcHg7CiAgICBoZWlnaHQ6IDE1MHB4OwogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7CiAgICB6LWluZGV4OiAxMDAwMDA7CiAgICBmb250LXNpemU6IDEwcHg7CiAgICBvdmVyZmxvdzogc2Nyb2xsCn0KCi5hZGVuIHsKICAgIGZpbHRlcjogaHVlLXJvdGF0ZSgtMjBkZWcpIGNvbnRyYXN0KC45KSBzYXR1cmF0ZSguODUpIGJyaWdodG5lc3MoMS4yKQp9CgouYWRlbjo6YWZ0ZXIgewogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDY2LCAxMCwgMTQsIC4yKSwgdHJhbnNwYXJlbnQpOwogICAgbWl4LWJsZW5kLW1vZGU6IGRhcmtlbgp9CgoucGVycGV0dWE6OmFmdGVyLAoucmV5ZXM6OmFmdGVyIHsKICAgIG1peC1ibGVuZC1tb2RlOiBzb2Z0LWxpZ2h0OwogICAgb3BhY2l0eTogLjUKfQoKLmlua3dlbGwgewogICAgZmlsdGVyOiBzZXBpYSguMykgY29udHJhc3QoMS4xKSBicmlnaHRuZXNzKDEuMSkgZ3JheXNjYWxlKDEpCn0KCi5wZXJwZXR1YTo6YWZ0ZXIgewogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwNWI5YSwgI2U2YzEzZCkKfQoKLnJleWVzIHsKICAgIGZpbHRlcjogc2VwaWEoLjIyKSBicmlnaHRuZXNzKDEuMSkgY29udHJhc3QoLjg1KSBzYXR1cmF0ZSguNzUpCn0KCi5yZXllczo6YWZ0ZXIgewogICAgYmFja2dyb3VuZDogI2VmY2RhZAp9CgouZ2luZ2hhbSB7CiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSkgaHVlLXJvdGF0ZSgtMTBkZWcpCn0KCi5naW5naGFtOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoNjYsIDEwLCAxNCwgLjIpLCB0cmFuc3BhcmVudCk7CiAgICBtaXgtYmxlbmQtbW9kZTogZGFya2VuCn0KCi50b2FzdGVyIHsKICAgIGZpbHRlcjogY29udHJhc3QoMS41KSBicmlnaHRuZXNzKC45KQp9CgoudG9hc3Rlcjo6YWZ0ZXIgewogICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgIzgwNGUwZiwgIzNiMDAzYik7CiAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuCn0KCi53YWxkZW4gewogICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMSkgaHVlLXJvdGF0ZSgtMTBkZWcpIHNlcGlhKC4zKSBzYXR1cmF0ZSgxLjYpCn0KCi53YWxkZW46OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6ICMwNGM7CiAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuOwogICAgb3BhY2l0eTogLjMKfQoKLmh1ZHNvbiB7CiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKSBjb250cmFzdCguOSkgc2F0dXJhdGUoMS4xKQp9CgouaHVkc29uOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAjYTZiMWZmIDUwJSwgIzM0MjEzNCk7CiAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7CiAgICBvcGFjaXR5OiAuNQp9CgouZWFybHliaXJkIHsKICAgIGZpbHRlcjogY29udHJhc3QoLjkpIHNlcGlhKC4yKQp9CgouZWFybHliaXJkOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAjZDBiYThlIDIwJSwgIzM2MDMwOSA4NSUsICMxZDAyMTAgMTAwJSk7CiAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheQp9CgoubWF5ZmFpciB7CiAgICBmaWx0ZXI6IGNvbnRyYXN0KDEuMSkgc2F0dXJhdGUoMS4xKQp9CgoubWF5ZmFpcjo6YWZ0ZXIgewogICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA0MCUgNDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KSwgcmdiYSgyNTUsIDIwMCwgMjAwLCAuNiksICMxMTEgNjAlKTsKICAgIG1peC1ibGVuZC1tb2RlOiBvdmVybGF5OwogICAgb3BhY2l0eTogLjQKfQoKLmxvZmkgewogICAgZmlsdGVyOiBzYXR1cmF0ZSgxLjEpIGNvbnRyYXN0KDEuNSkKfQoKLmxvZmk6OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHRyYW5zcGFyZW50IDcwJSwgIzIyMiAxNTAlKTsKICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseQp9CgouXzE5NzcgewogICAgZmlsdGVyOiBjb250cmFzdCgxLjEpIGJyaWdodG5lc3MoMS4xKSBzYXR1cmF0ZSgxLjMpCn0KCi5fMTk3NzphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0MywgMTA2LCAxODgsIC4zKTsKICAgIG1peC1ibGVuZC1tb2RlOiBzY3JlZW4KfQoKLmJyb29rbHluIHsKICAgIGZpbHRlcjogY29udHJhc3QoLjkpIGJyaWdodG5lc3MoMS4xKQp9CgouYnJvb2tseW46OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMTY4LCAyMjMsIDE5MywgLjQpIDcwJSwgI2M0YjdjOCk7CiAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheQp9CgoueHBybzIgewogICAgZmlsdGVyOiBzZXBpYSguMykKfQoKLnhwcm8yOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAjZTZlN2UwIDQwJSwgcmdiYSg0MywgNDIsIDE2MSwgLjYpIDExMCUpOwogICAgbWl4LWJsZW5kLW1vZGU6IGNvbG9yLWJ1cm4KfQoKLm5hc2h2aWxsZSB7CiAgICBmaWx0ZXI6IHNlcGlhKC4yKSBjb250cmFzdCgxLjIpIGJyaWdodG5lc3MoMS4wNSkgc2F0dXJhdGUoMS4yKQp9CgoubmFzaHZpbGxlOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDcwLCAxNTAsIC40KTsKICAgIG1peC1ibGVuZC1tb2RlOiBsaWdodGVuCn0KCi5uYXNodmlsbGU6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0NywgMTc2LCAxNTMsIC41Nik7CiAgICBtaXgtYmxlbmQtbW9kZTogZGFya2VuCn0KCi5sYXJrIHsKICAgIGZpbHRlcjogY29udHJhc3QoLjkpCn0KCi5sYXJrOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0MiwgMjQyLCAyNDIsIC44KTsKICAgIG1peC1ibGVuZC1tb2RlOiBkYXJrZW4KfQoKLmxhcms6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjMjIyNTNmOwogICAgbWl4LWJsZW5kLW1vZGU6IGNvbG9yLWRvZGdlCn0KCi5tb29uIHsKICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpIGNvbnRyYXN0KDEuMSkgYnJpZ2h0bmVzcygxLjEpCn0KCi5tb29uOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2EwYTBhMDsKICAgIG1peC1ibGVuZC1tb2RlOiBzb2Z0LWxpZ2h0Cn0KCi5tb29uOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiAjMzgzODM4OwogICAgbWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW4KfQoKLmNsYXJlbmRvbiB7CiAgICBmaWx0ZXI6IGNvbnRyYXN0KDEuMikgc2F0dXJhdGUoMS4zNSkKfQoKLmNsYXJlbmRvbjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogcmdiYSgxMjcsIDE4NywgMjI3LCAuMik7CiAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheQp9Cgoud2lsbG93IHsKICAgIGZpbHRlcjogZ3JheXNjYWxlKC41KSBjb250cmFzdCguOTUpIGJyaWdodG5lc3MoLjkpCn0KCi53aWxsb3c6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByYWRpYWwtZ3JhZGllbnQoNDAlLCBjaXJjbGUsICNkNGE5YWYgNTUlLCAjMDAwIDE1MCUpOwogICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXkKfQoKLndpbGxvdzo6YWZ0ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2Q4Y2RjYjsKICAgIG1peC1ibGVuZC1tb2RlOiBjb2xvcgp9CgoucmlzZSB7CiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSkgc2VwaWEoLjIpIGNvbnRyYXN0KC45KSBzYXR1cmF0ZSguOSkKfQoKLnJpc2U6OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMjMyLCAxOTcsIDE1MiwgLjgpLCB0cmFuc3BhcmVudCA5MCUpOwogICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7CiAgICBvcGFjaXR5OiAuNgp9CgoucmlzZTo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMjM2LCAyMDUsIDE2OSwgLjE1KSA1NSUsIHJnYmEoNTAsIDMwLCA3LCAuNCkpOwogICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5Cn0KCi5fMTk3NzphZnRlciwKLl8xOTc3OmJlZm9yZSwKLmFkZW46YWZ0ZXIsCi5hZGVuOmJlZm9yZSwKLmJyb29rbHluOmFmdGVyLAouYnJvb2tseW46YmVmb3JlLAouY2xhcmVuZG9uOmFmdGVyLAouY2xhcmVuZG9uOmJlZm9yZSwKLmVhcmx5YmlyZDphZnRlciwKLmVhcmx5YmlyZDpiZWZvcmUsCi5naW5naGFtOmFmdGVyLAouZ2luZ2hhbTpiZWZvcmUsCi5odWRzb246YWZ0ZXIsCi5odWRzb246YmVmb3JlLAouaW5rd2VsbDphZnRlciwKLmlua3dlbGw6YmVmb3JlLAoubGFyazphZnRlciwKLmxhcms6YmVmb3JlLAoubG9maTphZnRlciwKLmxvZmk6YmVmb3JlLAoubWF5ZmFpcjphZnRlciwKLm1heWZhaXI6YmVmb3JlLAoubW9vbjphZnRlciwKLm1vb246YmVmb3JlLAoubmFzaHZpbGxlOmFmdGVyLAoubmFzaHZpbGxlOmJlZm9yZSwKLnBlcnBldHVhOmFmdGVyLAoucGVycGV0dWE6YmVmb3JlLAoucmV5ZXM6YWZ0ZXIsCi5yZXllczpiZWZvcmUsCi5yaXNlOmFmdGVyLAoucmlzZTpiZWZvcmUsCi5zbHVtYmVyOmFmdGVyLAouc2x1bWJlcjpiZWZvcmUsCi50b2FzdGVyOmFmdGVyLAoudG9hc3RlcjpiZWZvcmUsCi53YWxkZW46YWZ0ZXIsCi53YWxkZW46YmVmb3JlLAoud2lsbG93OmFmdGVyLAoud2lsbG93OmJlZm9yZSwKLnhwcm8yOmFmdGVyLAoueHBybzI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICcnOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogMTAwJTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZQp9CgouXzE5NzcsCi5hZGVuLAouYnJvb2tseW4sCi5jbGFyZW5kb24sCi5lYXJseWJpcmQsCi5naW5naGFtLAouaHVkc29uLAouaW5rd2VsbCwKLmxhcmssCi5sb2ZpLAoubWF5ZmFpciwKLm1vb24sCi5uYXNodmlsbGUsCi5wZXJwZXR1YSwKLnJleWVzLAoucmlzZSwKLnNsdW1iZXIsCi50b2FzdGVyLAoud2FsZGVuLAoud2lsbG93LAoueHBybzIgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5fMTk3NyBpbWcsCi5hZGVuIGltZywKLmJyb29rbHluIGltZywKLmNsYXJlbmRvbiBpbWcsCi5lYXJseWJpcmQgaW1nLAouZ2luZ2hhbSBpbWcsCi5odWRzb24gaW1nLAouaW5rd2VsbCBpbWcsCi5sYXJrIGltZywKLmxvZmkgaW1nLAoubWF5ZmFpciBpbWcsCi5tb29uIGltZywKLm5hc2h2aWxsZSBpbWcsCi5wZXJwZXR1YSBpbWcsCi5yZXllcyBpbWcsCi5yaXNlIGltZywKLnNsdW1iZXIgaW1nLAoudG9hc3RlciBpbWcsCi53YWxkZW4gaW1nLAoud2lsbG93IGltZywKLnhwcm8yIGltZyB7CiAgICB3aWR0aDogMTAwJTsKICAgIHotaW5kZXg6IDEKfQoKLl8xOTc3OmJlZm9yZSwKLmFkZW46YmVmb3JlLAouYnJvb2tseW46YmVmb3JlLAouY2xhcmVuZG9uOmJlZm9yZSwKLmVhcmx5YmlyZDpiZWZvcmUsCi5naW5naGFtOmJlZm9yZSwKLmh1ZHNvbjpiZWZvcmUsCi5pbmt3ZWxsOmJlZm9yZSwKLmxhcms6YmVmb3JlLAoubG9maTpiZWZvcmUsCi5tYXlmYWlyOmJlZm9yZSwKLm1vb246YmVmb3JlLAoubmFzaHZpbGxlOmJlZm9yZSwKLnBlcnBldHVhOmJlZm9yZSwKLnJleWVzOmJlZm9yZSwKLnJpc2U6YmVmb3JlLAouc2x1bWJlcjpiZWZvcmUsCi50b2FzdGVyOmJlZm9yZSwKLndhbGRlbjpiZWZvcmUsCi53aWxsb3c6YmVmb3JlLAoueHBybzI6YmVmb3JlIHsKICAgIHotaW5kZXg6IDIKfQoKLl8xOTc3OmFmdGVyLAouYWRlbjphZnRlciwKLmJyb29rbHluOmFmdGVyLAouY2xhcmVuZG9uOmFmdGVyLAouZWFybHliaXJkOmFmdGVyLAouZ2luZ2hhbTphZnRlciwKLmh1ZHNvbjphZnRlciwKLmlua3dlbGw6YWZ0ZXIsCi5sYXJrOmFmdGVyLAoubG9maTphZnRlciwKLm1heWZhaXI6YWZ0ZXIsCi5tb29uOmFmdGVyLAoubmFzaHZpbGxlOmFmdGVyLAoucGVycGV0dWE6YWZ0ZXIsCi5yZXllczphZnRlciwKLnJpc2U6YWZ0ZXIsCi5zbHVtYmVyOmFmdGVyLAoudG9hc3RlcjphZnRlciwKLndhbGRlbjphZnRlciwKLndpbGxvdzphZnRlciwKLnhwcm8yOmFmdGVyIHsKICAgIHotaW5kZXg6IDMKfQoKLnNsdW1iZXIgewogICAgZmlsdGVyOiBzYXR1cmF0ZSguNjYpIGJyaWdodG5lc3MoMS4wNSkKfQoKLnNsdW1iZXI6OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMTI1LCAxMDUsIDI0LCAuNSk7CiAgICBtaXgtYmxlbmQtbW9kZTogc29mdC1saWdodAp9Cgouc2x1bWJlcjo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoNjksIDQxLCAxMiwgLjQpOwogICAgbWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW4KfQoKLnRwLWtiaW1nLXdyYXA6YWZ0ZXIsCi50cC1rYmltZy13cmFwOmJlZm9yZSB7CiAgICBoZWlnaHQ6IDUwMCU7CiAgICB3aWR0aDogNTAwJQp9Cgouc2xpY2stc2xpZGVyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOwogICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7CiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTsKICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7CiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50Cn0KCi5zbGljay1saXN0IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDAKfQoKLnNsaWNrLWxpc3Q6Zm9jdXMgewogICAgb3V0bGluZTogMAp9Cgouc2xpY2stbGlzdC5kcmFnZ2luZyB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBjdXJzb3I6IGhhbmQKfQoKLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCwKLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2sgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKQp9Cgouc2xpY2stdHJhY2sgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5zbGljay10cmFjazphZnRlciwKLnNsaWNrLXRyYWNrOmJlZm9yZSB7CiAgICBkaXNwbGF5OiB0YWJsZTsKICAgIGNvbnRlbnQ6ICcnCn0KCi5zbGljay10cmFjazphZnRlciB7CiAgICBjbGVhcjogYm90aAp9Cgouc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sgewogICAgdmlzaWJpbGl0eTogaGlkZGVuCn0KCi5zbGljay1zbGlkZSB7CiAgICBkaXNwbGF5OiBub25lOwogICAgZmxvYXQ6IGxlZnQ7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBtaW4taGVpZ2h0OiAxcHgKfQoKW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7CiAgICBmbG9hdDogcmlnaHQKfQoKLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZQp9Cgouc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW4KfQoKLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGhlaWdodDogYXV0bzsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Cn0KCi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4gewogICAgZGlzcGxheTogbm9uZQp9CgojdHJ1bWJvd3lnLWljb25zLAojdHJ1bWJvd3lnLWljb25zIHN2ZyB7CiAgICBoZWlnaHQ6IDA7CiAgICB3aWR0aDogMAp9CgojdHJ1bWJvd3lnLWljb25zIHsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB2aXNpYmlsaXR5OiBoaWRkZW4KfQoKLnRydW1ib3d5Zy1ib3ggKiwKLnRydW1ib3d5Zy1ib3ggOjphZnRlciwKLnRydW1ib3d5Zy1ib3ggOjpiZWZvcmUgewogICAgYm94LXNpemluZzogYm9yZGVyLWJveAp9CgoudHJ1bWJvd3lnLWJveCBzdmcgewogICAgd2lkdGg6IDE3cHg7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBmaWxsOiAjMjIyCn0KCi50cnVtYm93eWctYm94LAoudHJ1bWJvd3lnLWVkaXRvciB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7CiAgICB3aWR0aDogMTAwJTsKICAgIG1pbi1oZWlnaHQ6IDMwMHB4OwogICAgbWFyZ2luOiAxN3B4IGF1dG8KfQoKLnRydW1ib3d5Zy1ib3ggLnRydW1ib3d5Zy1lZGl0b3IgewogICAgbWFyZ2luOiAwIGF1dG8KfQoKLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWZ1bGxzY3JlZW4gewogICAgYmFja2dyb3VuZDogI2ZlZmVmZTsKICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50Cn0KCi50cnVtYm93eWctZWRpdG9yLAoudHJ1bWJvd3lnLXRleHRhcmVhIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBwYWRkaW5nOiAyMHB4OwogICAgbWluLWhlaWdodDogMzAwcHg7CiAgICB3aWR0aDogMTAwJTsKICAgIGJvcmRlci1zdHlsZTogbm9uZTsKICAgIHJlc2l6ZTogbm9uZTsKICAgIG91dGxpbmU6IDA7CiAgICBvdmVyZmxvdzogYXV0bwp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctYXV0b2dyb3ctb24tZW50ZXIsCi50cnVtYm93eWctdGV4dGFyZWEudHJ1bWJvd3lnLWF1dG9ncm93LW9uLWVudGVyIHsKICAgIHRyYW5zaXRpb246IGhlaWdodCAuM3MgZWFzZS1vdXQKfQoKLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvciAqLAoudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yOjpiZWZvcmUgewogICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7CiAgICB0ZXh0LXNoYWRvdzogMCAwIDdweCAjMzMzCn0KCkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MCBcMCkgewogICAgLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvciAqLAogICAgLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvcjo6YmVmb3JlIHsKICAgICAgICBjb2xvcjogcmdiYSgyMDAsIDIwMCwgMjAwLCAuNikgIWltcG9ydGFudAogICAgfQp9CgpAc3VwcG9ydHMgKC1tcy1hY2NlbGVyYXRvcjp0cnVlKSB7CiAgICAudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yICosCiAgICAudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yOjpiZWZvcmUgewogICAgICAgIGNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIC42KSAhaW1wb3J0YW50CiAgICB9Cn0KCi50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgaHIsCi50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgaW1nIHsKICAgIG9wYWNpdHk6IC4yCn0KCi50cnVtYm93eWctdGV4dGFyZWEgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBvdmVyZmxvdzogYXV0bzsKICAgIGJvcmRlcjogbm9uZTsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIGZvbnQtZmFtaWx5OiBJbmNvbnNvbGF0YSwgQ29uc29sYXMsIENvdXJpZXIsICJDb3VyaWVyIE5ldyIsIHNhbnMtc2VyaWY7CiAgICBsaW5lLWhlaWdodDogMThweAp9CgoudHJ1bWJvd3lnLWJveC50cnVtYm93eWctZWRpdG9yLXZpc2libGUgLnRydW1ib3d5Zy10ZXh0YXJlYSB7CiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50OwogICAgd2lkdGg6IDI1JTsKICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudAp9CgoudHJ1bWJvd3lnLWJveC50cnVtYm93eWctZWRpdG9yLWhpZGRlbiAudHJ1bWJvd3lnLXRleHRhcmVhIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi50cnVtYm93eWctYm94LnRydW1ib3d5Zy1lZGl0b3ItaGlkZGVuIC50cnVtYm93eWctZWRpdG9yIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWRpc2FibGVkIC50cnVtYm93eWctdGV4dGFyZWEgewogICAgb3BhY2l0eTogLjg7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLnRydW1ib3d5Zy1lZGl0b3JbY29udGVudGVkaXRhYmxlPXRydWVdOmVtcHR5Om5vdCg6Zm9jdXMpOjpiZWZvcmUgewogICAgY29udGVudDogYXR0cihwbGFjZWhvbGRlcik7CiAgICBjb2xvcjogIzk5OTsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lCn0KCi50cnVtYm93eWctYnV0dG9uLXBhbmUgewogICAgd2lkdGg6IDEwMCU7CiAgICBtaW4taGVpZ2h0OiAzNnB4OwogICAgYmFja2dyb3VuZDogI2VjZjBmMTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDdlMGUyOwogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMCA1cHg7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CiAgICBsaW5lLWhlaWdodDogMTBweDsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIHotaW5kZXg6IDExCn0KCi50cnVtYm93eWctYnV0dG9uLXBhbmU6OmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAzNnB4OwogICAgbGVmdDogMDsKICAgIHJpZ2h0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDFweDsKICAgIGJhY2tncm91bmQ6ICNkN2UwZTIKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cCAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4tYnV0dG9uIHN2ZyB7CiAgICBjb2xvcjogdHJhbnNwYXJlbnQKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cDo6YWZ0ZXIgewogICAgY29udGVudDogIiAiOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDFweDsKICAgIGJhY2tncm91bmQ6ICNkN2UwZTI7CiAgICBtYXJnaW46IDAgNXB4OwogICAgaGVpZ2h0OiAzNXB4OwogICAgdmVydGljYWwtYWxpZ246IHRvcAp9CgoudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOmxhc3QtY2hpbGQ6OmFmdGVyIHsKICAgIGNvbnRlbnQ6IG5vbmUKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b24gewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IDM1cHg7CiAgICBoZWlnaHQ6IDM1cHg7CiAgICBwYWRkaW5nOiAxcHggNnB4ICFpbXBvcnRhbnQ7CiAgICBtYXJnaW4tYm90dG9tOiAxcHg7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYm9yZGVyOiBub25lOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMsIG9wYWNpdHkgMTUwbXMKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b24udHJ1bWJvd3lnLXRleHR1YWwtYnV0dG9uIHsKICAgIHdpZHRoOiBhdXRvOwogICAgbGluZS1oZWlnaHQ6IDM1cHg7CiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsKICAgIHVzZXItc2VsZWN0OiBub25lCn0KCi50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uLnRydW1ib3d5Zy1kaXNhYmxlLAoudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lLnRydW1ib3d5Zy1kaXNhYmxlIGJ1dHRvbjpub3QoLnRydW1ib3d5Zy1ub3QtZGlzYWJsZSk6bm90KC50cnVtYm93eWctYWN0aXZlKSwKLnRydW1ib3d5Zy1kaXNhYmxlZCAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbjpub3QoLnRydW1ib3d5Zy1ub3QtZGlzYWJsZSk6bm90KC50cnVtYm93eWctdmlld0hUTUwtYnV0dG9uKSB7CiAgICBvcGFjaXR5OiAuMjsKICAgIGN1cnNvcjogZGVmYXVsdAp9CgoudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lLnRydW1ib3d5Zy1kaXNhYmxlIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOjpiZWZvcmUsCi50cnVtYm93eWctZGlzYWJsZWQgLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6ICNlM2U5ZWIKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b24udHJ1bWJvd3lnLWFjdGl2ZSwKLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b246bm90KC50cnVtYm93eWctZGlzYWJsZSk6Zm9jdXMsCi50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uOm5vdCgudHJ1bWJvd3lnLWRpc2FibGUpOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBvdXRsaW5lOiAwCn0KCi50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1vcGVuLWRyb3Bkb3duOjphZnRlciB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbnRlbnQ6ICIgIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMjVweDsKICAgIHJpZ2h0OiAzcHg7CiAgICBoZWlnaHQ6IDA7CiAgICB3aWR0aDogMDsKICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLXRvcC1jb2xvcjogIzU1NQp9CgoudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctb3Blbi1kcm9wZG93bi50cnVtYm93eWctdGV4dHVhbC1idXR0b24gewogICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7CiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQKfQoKLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLW9wZW4tZHJvcGRvd24udHJ1bWJvd3lnLXRleHR1YWwtYnV0dG9uOjphZnRlciB7CiAgICB0b3A6IDE3cHg7CiAgICByaWdodDogN3B4Cn0KCi50cnVtYm93eWctbW9kYWwsCi50cnVtYm93eWctbW9kYWwtYm94IHsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDUwJTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZQp9CgoudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctcmlnaHQgewogICAgZmxvYXQ6IHJpZ2h0Cn0KCi50cnVtYm93eWctZHJvcGRvd24gewogICAgd2lkdGg6IDIwMHB4OwogICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjBmMTsKICAgIHBhZGRpbmc6IDVweCAwOwogICAgYm9yZGVyLXRvcDogbm9uZTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBtYXJnaW4tbGVmdDogLTFweDsKICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgLjEpIDAgMnB4IDNweDsKICAgIHotaW5kZXg6IDEyCn0KCi50cnVtYm93eWctZHJvcGRvd24gYnV0dG9uIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDM1cHg7CiAgICBsaW5lLWhlaWdodDogMzVweDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBwYWRkaW5nOiAwIDEwcHg7CiAgICBjb2xvcjogIzMzMyAhaW1wb3J0YW50OwogICAgYm9yZGVyOiBub25lOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIGZvbnQtc2l6ZTogMTVweDsKICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcwp9CgoudHJ1bWJvd3lnLWRyb3Bkb3duIGJ1dHRvbjpmb2N1cywKLnRydW1ib3d5Zy1kcm9wZG93biBidXR0b246aG92ZXIgewogICAgYmFja2dyb3VuZDogI2VjZjBmMQp9CgoudHJ1bWJvd3lnLWRyb3Bkb3duIGJ1dHRvbiBzdmcgewogICAgZmxvYXQ6IGxlZnQ7CiAgICBtYXJnaW4tcmlnaHQ6IDE0cHgKfQoKLnRydW1ib3d5Zy1tb2RhbCB7CiAgICBtYXgtd2lkdGg6IDUyMHB4OwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDM1MHB4OwogICAgei1pbmRleDogMTI7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi50cnVtYm93eWctbW9kYWwtYm94IHsKICAgIG1heC13aWR0aDogNTAwcHg7CiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7CiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDsKICAgIHotaW5kZXg6IDE7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgZm9udC1zaXplOiAxNHB4OwogICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAuMikgMCAycHggM3B4Cn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtdGl0bGUgewogICAgZm9udC1zaXplOiAyNHB4OwogICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgIG1hcmdpbjogMCAwIDIwcHg7CiAgICBwYWRkaW5nOiAxNXB4IDAgMTNweDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7CiAgICBjb2xvcjogIzMzMzsKICAgIGJhY2tncm91bmQ6ICNmYmZjZmMKfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1wcm9ncmVzcyB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogM3B4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiA1OHB4Cn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctcHJvZ3Jlc3MgLnRydW1ib3d5Zy1wcm9ncmVzcy1iYXIgewogICAgYmFja2dyb3VuZDogIzJiYzA2YTsKICAgIHdpZHRoOiAwOwogICAgaGVpZ2h0OiAxMDAlOwogICAgdHJhbnNpdGlvbjogd2lkdGggMTUwbXMgbGluZWFyCn0KCi50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWFyZ2luOiAxNXB4IDEycHg7CiAgICBoZWlnaHQ6IDI5cHg7CiAgICBsaW5lLWhlaWdodDogMjlweDsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBoZWlnaHQ6IDI1cHg7CiAgICBsaW5lLWhlaWdodDogMjVweDsKICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcwp9CgoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCAudHJ1bWJvd3lnLWlucHV0LWluZm9zIHNwYW4gewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogIzY5ODc4ZjsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZjZmM7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVkZWRlOwogICAgcGFkZGluZzogMCA3cHg7CiAgICB3aWR0aDogMTUwcHgKfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyBzcGFuLnRydW1ib3d5Zy1tc2ctZXJyb3IgewogICAgY29sb3I6ICNlNzRjM2MKfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwudHJ1bWJvd3lnLWlucHV0LWVycm9yIGlucHV0LAoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbC50cnVtYm93eWctaW5wdXQtZXJyb3IgdGV4dGFyZWEgewogICAgYm9yZGVyOiAxcHggc29saWQgI2U3NGMzYwp9CgoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbC50cnVtYm93eWctaW5wdXQtZXJyb3IgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyB7CiAgICBtYXJnaW4tdG9wOiAtMjdweAp9CgoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCBpbnB1dCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICByaWdodDogMDsKICAgIGhlaWdodDogMjdweDsKICAgIGxpbmUtaGVpZ2h0OiAyN3B4OwogICAgYm9yZGVyOiAxcHggc29saWQgI2RlZGVkZTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBtYXgtd2lkdGg6IDMzMHB4OwogICAgd2lkdGg6IDcwJTsKICAgIHBhZGRpbmc6IDAgN3B4OwogICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zCn0KCi50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0OmZvY3VzLAoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCBpbnB1dDpob3ZlciB7CiAgICBvdXRsaW5lOiAwOwogICAgYm9yZGVyOiAxcHggc29saWQgIzk1YTVhNgp9CgoudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCBpbnB1dDpmb2N1cyB7CiAgICBiYWNrZ3JvdW5kOiAjZmJmY2ZjCn0KCi50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdIHsKICAgIGxlZnQ6IDVweDsKICAgIHRvcDogNXB4OwogICAgcmlnaHQ6IGF1dG8KfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF0rLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyBzcGFuIHsKICAgIHdpZHRoOiBhdXRvOwogICAgcGFkZGluZy1sZWZ0OiAyNXB4Cn0KCi50cnVtYm93eWctbW9kYWwtYm94IC5lcnJvciB7CiAgICBtYXJnaW4tdG9wOiAyNXB4OwogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogcmVkCn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJvdHRvbTogMTBweDsKICAgIHJpZ2h0OiAwOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgY29sb3I6ICNmZmY7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDBweDsKICAgIGhlaWdodDogMzVweDsKICAgIGxpbmUtaGVpZ2h0OiAzM3B4OwogICAgbWFyZ2luOiAwIDEwcHg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOwogICAgYm9yZGVyOiBub25lOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgZm9udC1mYW1pbHk6ICJUcmVidWNoZXQgTVMiLCBIZWx2ZXRpY2EsIFZlcmRhbmEsIHNhbnMtc2VyaWY7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMKfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdCB7CiAgICByaWdodDogMTEwcHg7CiAgICBiYWNrZ3JvdW5kOiAjMmJjMDZhCn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQ6Zm9jdXMsCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQwZDQ3ZTsKICAgIG91dGxpbmU6IDAKfQoKLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdDphY3RpdmUgewogICAgYmFja2dyb3VuZDogIzI1YTI1YQp9CgoudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtcmVzZXQgewogICAgY29sb3I6ICM1NTU7CiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2Cn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1yZXNldDpmb2N1cywKLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICNmYmZiZmI7CiAgICBvdXRsaW5lOiAwCn0KCi50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1yZXNldDphY3RpdmUgewogICAgYmFja2dyb3VuZDogI2Q1ZDVkNQp9CgoudHJ1bWJvd3lnLW92ZXJsYXkgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB3aWR0aDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICBkaXNwbGF5OiBub25lOwogICAgdG9wOiAwOwogICAgei1pbmRleDogMTAKfQoKYm9keS50cnVtYm93eWctYm9keS1mdWxsc2NyZWVuIHsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLnRydW1ib3d5Zy1mdWxsc2NyZWVuIHsKICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDA7CiAgICB6LWluZGV4OiA5OTk5OQp9CgoudHJ1bWJvd3lnLWZ1bGxzY3JlZW4gLnRydW1ib3d5Zy1lZGl0b3IsCi50cnVtYm93eWctZnVsbHNjcmVlbi50cnVtYm93eWctYm94IHsKICAgIGJvcmRlcjogbm9uZQp9CgoudHJ1bWJvd3lnLWZ1bGxzY3JlZW4gLnRydW1ib3d5Zy1lZGl0b3IsCi50cnVtYm93eWctZnVsbHNjcmVlbiAudHJ1bWJvd3lnLXRleHRhcmVhIHsKICAgIGhlaWdodDogY2FsYygxMDAlIC0gMzdweCkgIWltcG9ydGFudDsKICAgIG92ZXJmbG93OiBhdXRvCn0KCi50cnVtYm93eWctZnVsbHNjcmVlbiAudHJ1bWJvd3lnLW92ZXJsYXkgewogICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQKfQoKLnRydW1ib3d5Zy1mdWxsc2NyZWVuIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIC50cnVtYm93eWctZnVsbHNjcmVlbi1idXR0b24gc3ZnIHsKICAgIGNvbG9yOiAjMjIyOwogICAgZmlsbDogdHJhbnNwYXJlbnQKfQoKLnRydW1ib3d5Zy1lZGl0b3IgZW1iZWQsCi50cnVtYm93eWctZWRpdG9yIGltZywKLnRydW1ib3d5Zy1lZGl0b3Igb2JqZWN0LAoudHJ1bWJvd3lnLWVkaXRvciB2aWRlbyB7CiAgICBtYXgtd2lkdGg6IDEwMCUKfQoKLnRydW1ib3d5Zy1lZGl0b3IgaW1nLAoudHJ1bWJvd3lnLWVkaXRvciB2aWRlbyB7CiAgICBoZWlnaHQ6IGF1dG8KfQoKLnRydW1ib3d5Zy1lZGl0b3IgaW1nIHsKICAgIGN1cnNvcjogbW92ZQp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIHsKICAgIGJhY2tncm91bmQ6ICNmZWZlZmUgIWltcG9ydGFudDsKICAgIGZvbnQtZmFtaWx5OiAiVHJlYnVjaGV0IE1TIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7CiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDsKICAgIGxpbmUtaGVpZ2h0OiAxLjQ1ZW0gIWltcG9ydGFudDsKICAgIGNvbG9yOiAjMzMzCn0KCi50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgYSB7CiAgICBjb2xvcjogIzE1YyAhaW1wb3J0YW50OwogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudAp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGJsb2NrcXVvdGUsCi50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgZGl2LAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIG9sLAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIHAsCi50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgdWwgewogICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwogICAgYmFja2dyb3VuZDogMCAwICFpbXBvcnRhbnQ7CiAgICBtYXJnaW46IDAgMCAxNXB4ICFpbXBvcnRhbnQ7CiAgICBsaW5lLWhlaWdodDogMS40ZW0gIWltcG9ydGFudDsKICAgIGZvbnQtZmFtaWx5OiAiVHJlYnVjaGV0IE1TIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7CiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDsKICAgIGJvcmRlcjogbm9uZQp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGhyLAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGlmcmFtZSwKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBvYmplY3QgewogICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50Cn0KCi50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgYmxvY2txdW90ZSB7CiAgICBtYXJnaW4tbGVmdDogMzJweCAhaW1wb3J0YW50OwogICAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7CiAgICBjb2xvcjogIzU1NQp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIHVsIHsKICAgIGxpc3Qtc3R5bGU6IGRpc2MKfQoKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBvbCwKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyB1bCB7CiAgICBwYWRkaW5nLWxlZnQ6IDIwcHggIWltcG9ydGFudAp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIG9sIG9sLAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIG9sIHVsLAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIHVsIG9sLAoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIHVsIHVsIHsKICAgIGJvcmRlcjogbm9uZTsKICAgIG1hcmdpbjogMnB4ICFpbXBvcnRhbnQ7CiAgICBwYWRkaW5nOiAwIDAgMCAyNHB4ICFpbXBvcnRhbnQKfQoKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBociB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGhlaWdodDogMXB4OwogICAgYm9yZGVyOiBub25lOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2MKfQoKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoMSwKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoMiwKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoMywKLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoNCB7CiAgICBjb2xvcjogIzExMTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OwogICAgcGFkZGluZzogMCAhaW1wb3J0YW50OwogICAgZm9udC13ZWlnaHQ6IDcwMAp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGgxIHsKICAgIGZvbnQtc2l6ZTogMzJweCAhaW1wb3J0YW50OwogICAgbGluZS1oZWlnaHQ6IDM4cHggIWltcG9ydGFudDsKICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudAp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGgyIHsKICAgIGZvbnQtc2l6ZTogMjZweCAhaW1wb3J0YW50OwogICAgbGluZS1oZWlnaHQ6IDM0cHggIWltcG9ydGFudDsKICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudAp9CgoudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGgzIHsKICAgIGZvbnQtc2l6ZTogMjJweCAhaW1wb3J0YW50OwogICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDsKICAgIG1hcmdpbi1ib3R0b206IDdweCAhaW1wb3J0YW50Cn0KCi50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaDQgewogICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7CiAgICBsaW5lLWhlaWdodDogMjJweCAhaW1wb3J0YW50OwogICAgbWFyZ2luLWJvdHRvbTogN3B4ICFpbXBvcnRhbnQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctdGV4dGFyZWEgewogICAgYmFja2dyb3VuZDogIzExMTsKICAgIGNvbG9yOiAjZGRkCn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzQzNDM0Cn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctZnVsbHNjcmVlbiB7CiAgICBiYWNrZ3JvdW5kOiAjMTExCn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgKiwKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94LnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvcjo6YmVmb3JlIHsKICAgIHRleHQtc2hhZG93OiAwIDAgN3B4ICNjY2MKfQoKQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowIFwwKSB7CiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yICosCiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yOjpiZWZvcmUgewogICAgICAgIGNvbG9yOiByZ2JhKDIwLCAyMCwgMjAsIC42KSAhaW1wb3J0YW50CiAgICB9Cn0KCkBzdXBwb3J0cyAoLW1zLWFjY2VsZXJhdG9yOnRydWUpIHsKICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgKiwKICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3I6OmJlZm9yZSB7CiAgICAgICAgY29sb3I6IHJnYmEoMjAsIDIwLCAyMCwgLjYpICFpbXBvcnRhbnQKICAgIH0KfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94IHN2ZyB7CiAgICBmaWxsOiAjZWNmMGYxOwogICAgY29sb3I6ICNlY2YwZjEKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjsKICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzNDM0MzQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmU6OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6ICMzNDM0MzQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6bm90KDplbXB0eSk6OmFmdGVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDM0MzQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6bm90KDplbXB0eSkgLnRydW1ib3d5Zy1mdWxsc2NyZWVuLWJ1dHRvbiBzdmcgewogICAgY29sb3I6IHRyYW5zcGFyZW50Cn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lLnRydW1ib3d5Zy1kaXNhYmxlIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmEyYTJhCn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbi50cnVtYm93eWctYWN0aXZlLAoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b246bm90KC50cnVtYm93eWctZGlzYWJsZSk6Zm9jdXMsCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbjpub3QoLnRydW1ib3d5Zy1kaXNhYmxlKTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzCn0KCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctb3Blbi1kcm9wZG93bjo6YWZ0ZXIgewogICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZgp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1mdWxsc2NyZWVuIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIC50cnVtYm93eWctZnVsbHNjcmVlbi1idXR0b24gc3ZnIHsKICAgIGNvbG9yOiAjZWNmMGYxOwogICAgZmlsbDogdHJhbnNwYXJlbnQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctZHJvcGRvd24gewogICAgYm9yZGVyLWNvbG9yOiAjMjIyOwogICAgYmFja2dyb3VuZDogIzMzMzsKICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgLjMpIDAgMnB4IDNweAp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1kcm9wZG93biBidXR0b24gewogICAgYmFja2dyb3VuZDogIzMzMzsKICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctZHJvcGRvd24gYnV0dG9uOmZvY3VzLAoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1kcm9wZG93biBidXR0b246aG92ZXIgewogICAgYmFja2dyb3VuZDogIzIyMgp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggewogICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMgp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC10aXRsZSB7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzU1NTsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZDogIzNjM2MzYwp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBtYXJnaW46IDE1cHggMTJweDsKICAgIGhlaWdodDogMjdweDsKICAgIGxpbmUtaGVpZ2h0OiAyN3B4OwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyBzcGFuIHsKICAgIGNvbG9yOiAjZWVlOwogICAgYmFja2dyb3VuZC1jb2xvcjogIzJmMmYyZjsKICAgIGJvcmRlci1jb2xvcjogIzIyMgp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyBzcGFuLnRydW1ib3d5Zy1tc2ctZXJyb3IgewogICAgY29sb3I6ICNlNzRjM2MKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsLnRydW1ib3d5Zy1pbnB1dC1lcnJvciBpbnB1dCwKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsLnRydW1ib3d5Zy1pbnB1dC1lcnJvciB0ZXh0YXJlYSB7CiAgICBib3JkZXItY29sb3I6ICNlNzRjM2MKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0IHsKICAgIGJvcmRlci1jb2xvcjogIzIyMjsKICAgIGNvbG9yOiAjZWVlOwogICAgYmFja2dyb3VuZDogIzMzMwp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgaW5wdXQ6Zm9jdXMsCi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCBpbnB1dDpob3ZlciB7CiAgICBib3JkZXItY29sb3I6ICM2MjYyNjIKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0OmZvY3VzIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMyZjJmMmYKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQgewogICAgYmFja2dyb3VuZDogIzFiNzk0Mwp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdDpmb2N1cywKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQ6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzI1YTI1YQp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdDphY3RpdmUgewogICAgYmFja2dyb3VuZDogIzE3NjQzNwp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0IHsKICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICBjb2xvcjogI2NjYwp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmZvY3VzLAoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICM0NDQKfQoKLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1yZXNldDphY3RpdmUgewogICAgYmFja2dyb3VuZDogIzExMQp9CgoudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1vdmVybGF5IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTUsIDE1LCAxNSwgLjYpCn0="}},"time_used":95,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"receive":69,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.210Z","timestamp":1785154590210,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/13148.32cc01dc01751b91682c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a06d56c-12cc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 15 May 2026 08:12:28 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/15/2026 10:19:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 03f911a140f42bedb64278f4f292d14d\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4812,"size_decoded":2619,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3061)","md5":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-27T14:18:36.426457Z","times_seen":4545,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.212Z","timestamp":1785154590212,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/49265.c208ef8379e073f94d16.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a435fcb-4ddf\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 30 Jun 2026 06:18:51 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/30/2026 11:55:09\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e79d9dcc354b997cba5b03a0d41c5f3e\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":19935,"size_decoded":7323,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-27T14:18:36.366377Z","times_seen":2987,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0OTI2NV0sezc1Njg1MSh0KXsidXNlIHN0cmljdCI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxyPXQubGVuZ3RoLG49MDtuPHI7bisrKXt2YXIgdT10LmNoYXJDb2RlQXQobik7aWYodT49NTUyOTYmJnU8PTU2MzE5JiZyPm4rMSl7dmFyIGE9dC5jaGFyQ29kZUF0KG4rMSk7YT49NTYzMjAmJmE8PTU3MzQzJiYodT0xMDI0Kih1LTU1Mjk2KSthLTU2MzIwKzY1NTM2LG4rPTEpfXU8MTI4P2UucHVzaCh1KTp1PDIwNDg/KGUucHVzaCh1Pj42fDE5MiksZS5wdXNoKDYzJnV8MTI4KSk6dTw1NTI5Nnx8dT49NTczNDQmJnU8NjU1MzY/KGUucHVzaCh1Pj4xMnwyMjQpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6dT49NjU1MzYmJnU8PTExMTQxMTE/KGUucHVzaCh1Pj4xOHwyNDApLGUucHVzaCh1Pj4xMiY2M3wxMjgpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6ZS5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZSkuYnVmZmVyfX0sNTA0NDAyKHQsZSxyKXt2YXIgbj1yKDYzODIyMSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0PW4odF49dD4+PjE2LDIyNDY4MjI1MDcpLHQ9bih0Xj10Pj4+MTMsMzI2NjQ4OTkwOSksKHRePXQ+Pj4xNik+Pj4wfX0sNjM4MjIxKHQpeyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbih0LGUpe3ZhciByPTY1NTM1JnQsbj02NTUzNSZlO3JldHVybiByKm4rKCh0Pj4+MTYmNjU1MzUpKm4rciooZT4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KHQsZSxyKXt2YXIgbj1yKDYzODIyMSksdT1yKDUwNDQwMiksYT1yKDc1Njg1MSksbz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYyh0LGUpe3JldHVybiB0PDxlfHQ+Pj4zMi1lfXQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGU9ZT8wfGU6MCwic3RyaW5nIj09dHlwZW9mIHQmJih0PWEodCkpLCEodCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIHI9bmV3IFVpbnQzMkFycmF5KFtlXSk7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT1uZXcgVWludDMyQXJyYXkodCwwLHIpLGE9MDthPHI7YSsrKXVbYV09bih1W2FdLG9bMF0pLHVbYV09Yyh1W2FdLDE1KSx1W2FdPW4odVthXSxvWzFdKSxlWzBdPWVbMF1edVthXSxlWzBdPWMoZVswXSwxMyksZVswXT1uKGVbMF0sNSkrMzg2NDI5MjE5Nn0odCxyKSxmdW5jdGlvbih0LGUpe3ZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT10LmJ5dGVMZW5ndGglNCxhPTAsZj1uZXcgVWludDhBcnJheSh0LDQqcix1KTtzd2l0Y2godSl7Y2FzZSAzOmFePWZbMl08PDE2O2Nhc2UgMjphXj1mWzFdPDw4O2Nhc2UgMTphXj1mWzBdLGE9YyhhPW4oYSxvWzBdKSwxNSksYT1uKGEsb1sxXSksZVswXT1lWzBdXmF9fSh0LHIpLGZ1bmN0aW9uKHQsZSl7ZVswXT1lWzBdXnQuYnl0ZUxlbmd0aCxlWzBdPXUoZVswXSl9KHQsciksci5idWZmZXJ9fSw0MTQxMjModCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoMTYyMzE2KSx1PXIoOTgxNTIzKTtjb25zdCBhPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJTZXQiKX0sMjY5MzY2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDcxMzE0OCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5zZXQodCwiX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIpLHRoaXN9O2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBvKHQpe3ZhciBlPS0xLHI9bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQ7KytlPHI7KXRoaXMuYWRkKHRbZV0pfW8ucHJvdG90eXBlLmFkZD1vLnByb3RvdHlwZS5wdXNoPXUsby5wcm90b3R5cGUuaGFzPWE7Y29uc3QgYz1vfSw4ODY1MTQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoNzM1OTgzKTtjb25zdCB1PWZ1bmN0aW9uKCl7dGhpcy5fX2RhdGFfXz1uZXcgbi5kZWZhdWx0LHRoaXMuc2l6ZT0wfTtjb25zdCBhPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18scj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxyfTtjb25zdCBvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX07Y29uc3QgYz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBmPXIoNjk0MjEpLHM9cig3MTMxNDgpO2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKHIgaW5zdGFuY2VvZiBuLmRlZmF1bHQpe3ZhciB1PXIuX19kYXRhX187aWYoIWYuZGVmYXVsdHx8dS5sZW5ndGg8MTk5KXJldHVybiB1LnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK3Iuc2l6ZSx0aGlzO3I9dGhpcy5fX2RhdGFfXz1uZXcgcy5kZWZhdWx0KHUpfXJldHVybiByLnNldCh0LGUpLHRoaXMuc2l6ZT1yLnNpemUsdGhpc307ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQodCk7dGhpcy5zaXplPWUuc2l6ZX1sLnByb3RvdHlwZS5jbGVhcj11LGwucHJvdG90eXBlLmRlbGV0ZT1hLGwucHJvdG90eXBlLmdldD1vLGwucHJvdG90eXBlLmhhcz1jLGwucHJvdG90eXBlLnNldD1pO2NvbnN0IGQ9bH0sODY1MzMwKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPXIoOTgxNTIzKS5kZWZhdWx0LlVpbnQ4QXJyYXl9LDkyODQ1Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjIzMTYpLHU9cig5ODE1MjMpO2NvbnN0IGE9KDAsbi5kZWZhdWx0KSh1LmRlZmF1bHQsIldlYWtNYXAiKX0sCjk4NDEzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK3I8biYmITEhPT1lKHRbcl0scix0KTspO3JldHVybiB0fX0sMjI0NDE2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDY4ODk2NSk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH07Y29uc3QgYT1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPXItMSx1PXQubGVuZ3RoOysrbjx1OylpZih0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX07Y29uc3Qgbz1mdW5jdGlvbih0LGUscil7cmV0dXJuIGU9PWU/YSh0LGUscik6KDAsbi5kZWZhdWx0KSh0LHUscil9O2NvbnN0IGM9ZnVuY3Rpb24odCxlKXtyZXR1cm4hIShudWxsPT10PzA6dC5sZW5ndGgpJiZvKHQsZSwwKT4tMX19LDgyNTAzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPS0xLHU9bnVsbD09dD8wOnQubGVuZ3RoOysrbjx1OylpZihyKGUsdFtuXSkpcmV0dXJuITA7cmV0dXJuITF9fSw4MjA5NzUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1BcnJheSh0KTsrK3I8dDspbltyXT1lKHIpO3JldHVybiBufTt2YXIgdT1yKDUzMTU1NyksYT1yKDI5NTYzNSksbz1yKDY1OTAxOCksYz1yKDkyMTE0MyksZj1yKDE2NTI2Nykscz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj0oMCxhLmRlZmF1bHQpKHQpLGk9IXImJigwLHUuZGVmYXVsdCkodCksbD0hciYmIWkmJigwLG8uZGVmYXVsdCkodCksZD0hciYmIWkmJiFsJiYoMCxmLmRlZmF1bHQpKHQpLHY9cnx8aXx8bHx8ZCxwPXY/bih0Lmxlbmd0aCxTdHJpbmcpOltdLGI9cC5sZW5ndGg7Zm9yKHZhciB5IGluIHQpIWUmJiFzLmNhbGwodCx5KXx8diYmKCJsZW5ndGgiPT15fHxsJiYoIm9mZnNldCI9PXl8fCJwYXJlbnQiPT15KXx8ZCYmKCJidWZmZXIiPT15fHwiYnl0ZUxlbmd0aCI9PXl8fCJieXRlT2Zmc2V0Ij09eSl8fCgwLGMuZGVmYXVsdCkoeSxiKSl8fHAucHVzaCh5KTtyZXR1cm4gcH19LDQ0ODYyNih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPWUubGVuZ3RoLHU9dC5sZW5ndGg7KytyPG47KXRbdStyXT1lW3JdO3JldHVybiB0fX0sMTY4NTMzKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDI1NDczOCksdT1yKDkxMDc3OCksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IG89ZnVuY3Rpb24odCxlLHIpe3ZhciBvPXRbZV07YS5jYWxsKHQsZSkmJigwLHUuZGVmYXVsdCkobyxyKSYmKHZvaWQgMCE9PXJ8fGUgaW4gdCl8fCgwLG4uZGVmYXVsdCkodCxlLHIpfX0sMjU0NzM4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDM2MDQ5KTtjb25zdCB1PWZ1bmN0aW9uKHQsZSxyKXsiX19wcm90b19fIj09ZSYmbi5kZWZhdWx0PygwLG4uZGVmYXVsdCkodCxlLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTpyLHdyaXRhYmxlOiEwfSk6dFtlXT1yfX0sNDkzMDE4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pkh9KTt2YXIgbj1yKDg4NjUxNCksdT1yKDk4NDEzOSksYT1yKDE2ODUzMyksbz1yKDYxODU3KSxjPXIoMzA5MDgwKTtjb25zdCBmPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQmJigwLG8uZGVmYXVsdCkoZSwoMCxjLmRlZmF1bHQpKGUpLHQpfTt2YXIgcz1yKDIxNzQ1Nyk7Y29uc3QgaT1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYoMCxvLmRlZmF1bHQpKGUsKDAscy5kZWZhdWx0KShlKSx0KX07dmFyIGw9cig0ODcwNjApLGQ9cig3MDU3NDkpLHY9cigyMzA5NTEpO2NvbnN0IHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsdi5kZWZhdWx0KSh0KSxlKX07dmFyIGI9cigxMTY2NDEpO2NvbnN0IHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsYi5kZWZhdWx0KSh0KSxlKX07dmFyIGg9cig4MDYyNDApLGo9cig5OTE1OTkpLGc9cig5Njk3ODUpLHc9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBfPWZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLHI9bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIGUmJiJzdHJpbmciPT10eXBlb2YgdFswXSYmdy5jYWxsKHQsImluZGV4IikmJihyLmluZGV4PXQuaW5kZXgsci5pbnB1dD10LmlucHV0KSxyfTt2YXIgQT1yKDM3NzI1MSk7Y29uc3QgbT1mdW5jdGlvbih0LGUpe3ZhciByPWU/KDAsQS5kZWZhdWx0KSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKHIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9O3ZhciBPPS9cdyokLztjb25zdCB4PWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyB0LmNvbnN0cnVjdG9yKHQuc291cmNlLE8uZXhlYyh0KSk7cmV0dXJuIGUubGFzdEluZGV4PXQubGFzdEluZGV4LGV9O3ZhciBVPXIoODcyOTk5KSxFPVUuZGVmYXVsdD9VLmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxUPUU/RS52YWx1ZU9mOnZvaWQgMDtjb25zdCBTPWZ1bmN0aW9uKHQpe3JldHVybiBUP09iamVjdChULmNhbGwodCkpOnt9fTt2YXIgST1yKDEzOTA3KTtjb25zdCBNPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj10LmNvbnN0cnVjdG9yO3N3aXRjaChlKXtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4oMCxBLmRlZmF1bHQpKHQpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpyZXR1cm4gbmV3IG4oK3QpO2Nhc2UiW29iamVjdCBEYXRhVmlld10iOnJldHVybiBtKHQscik7Y2FzZSJbb2JqZWN0IEZsb2F0MzJBcnJheV0iOmNhc2UiW29iamVjdCBGbG9hdDY0QXJyYXldIjoKY2FzZSJbb2JqZWN0IEludDhBcnJheV0iOmNhc2UiW29iamVjdCBJbnQxNkFycmF5XSI6Y2FzZSJbb2JqZWN0IEludDMyQXJyYXldIjpjYXNlIltvYmplY3QgVWludDhBcnJheV0iOmNhc2UiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MzJBcnJheV0iOnJldHVybigwLEkuZGVmYXVsdCkodCxyKTtjYXNlIltvYmplY3QgTWFwXSI6Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgTnVtYmVyXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiBuZXcgbih0KTtjYXNlIltvYmplY3QgUmVnRXhwXSI6cmV0dXJuIHgodCk7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOnJldHVybiBTKHQpfX07dmFyIEI9cig4MDc1NzUpLFA9cigyOTU2MzUpLGs9cig2NTkwMTgpLHo9cig2NzI1MTEpLEM9cig4ODAxMTUpLEQ9cigzNjA2MjApO2NvbnN0IEY9ZnVuY3Rpb24odCl7cmV0dXJuKDAsRC5kZWZhdWx0KSh0KSYmIltvYmplY3QgU2V0XSI9PSgwLGcuZGVmYXVsdCkodCl9O3ZhciBMPXIoODk5MzM5KSxOPXIoMzY5ODk5KSxXPU4uZGVmYXVsdCYmTi5kZWZhdWx0LmlzU2V0O2NvbnN0IFY9Vz8oMCxMLmRlZmF1bHQpKFcpOkY7dmFyICQ9IltvYmplY3QgQXJndW1lbnRzXSIsUj0iW29iamVjdCBGdW5jdGlvbl0iLHE9IltvYmplY3QgT2JqZWN0XSIsRz17fTtHWyRdPUdbIltvYmplY3QgQXJyYXldIl09R1siW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1HWyJbb2JqZWN0IERhdGFWaWV3XSJdPUdbIltvYmplY3QgQm9vbGVhbl0iXT1HWyJbb2JqZWN0IERhdGVdIl09R1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09R1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09R1siW29iamVjdCBJbnQ4QXJyYXldIl09R1siW29iamVjdCBJbnQxNkFycmF5XSJdPUdbIltvYmplY3QgSW50MzJBcnJheV0iXT1HWyJbb2JqZWN0IE1hcF0iXT1HWyJbb2JqZWN0IE51bWJlcl0iXT1HW3FdPUdbIltvYmplY3QgUmVnRXhwXSJdPUdbIltvYmplY3QgU2V0XSJdPUdbIltvYmplY3QgU3RyaW5nXSJdPUdbIltvYmplY3QgU3ltYm9sXSJdPUdbIltvYmplY3QgVWludDhBcnJheV0iXT1HWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUdbIltvYmplY3QgVWludDE2QXJyYXldIl09R1siW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxHWyJbb2JqZWN0IEVycm9yXSJdPUdbUl09R1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IEg9ZnVuY3Rpb24gdChlLHIsbyx2LGIsdyl7dmFyIEEsbT0xJnIsTz0yJnIseD00JnI7aWYobyYmKEE9Yj9vKGUsdixiLHcpOm8oZSkpLHZvaWQgMCE9PUEpcmV0dXJuIEE7aWYoISgwLEMuZGVmYXVsdCkoZSkpcmV0dXJuIGU7dmFyIFU9KDAsUC5kZWZhdWx0KShlKTtpZihVKXtpZihBPV8oZSksIW0pcmV0dXJuKDAsZC5kZWZhdWx0KShlLEEpfWVsc2V7dmFyIEU9KDAsZy5kZWZhdWx0KShlKSxUPUU9PVJ8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PUU7aWYoKDAsay5kZWZhdWx0KShlKSlyZXR1cm4oMCxsLmRlZmF1bHQpKGUsbSk7aWYoRT09cXx8RT09JHx8VCYmIWIpe2lmKEE9T3x8VD97fTooMCxCLmRlZmF1bHQpKGUpLCFtKXJldHVybiBPP3koZSxpKEEsZSkpOnAoZSxmKEEsZSkpfWVsc2V7aWYoIUdbRV0pcmV0dXJuIGI/ZTp7fTtBPU0oZSxFLG0pfX13fHwodz1uZXcgbi5kZWZhdWx0KTt2YXIgUz13LmdldChlKTtpZihTKXJldHVybiBTO3cuc2V0KGUsQSksVihlKT9lLmZvckVhY2goKGZ1bmN0aW9uKG4pe0EuYWRkKHQobixyLG8sbixlLHcpKX0pKTooMCx6LmRlZmF1bHQpKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKG4sdSl7QS5zZXQodSx0KG4scixvLHUsZSx3KSl9KSk7dmFyIEk9eD9PP2ouZGVmYXVsdDpoLmRlZmF1bHQ6Tz9zLmRlZmF1bHQ6Yy5kZWZhdWx0LEQ9VT92b2lkIDA6SShlKTtyZXR1cm4oMCx1LmRlZmF1bHQpKER8fGUsKGZ1bmN0aW9uKG4sdSl7RCYmKG49ZVt1PW5dKSwoMCxhLmRlZmF1bHQpKEEsdSx0KG4scixvLHUsZSx3KSl9KSksQX19LDg1MTA4Mih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig4ODAxMTUpLHU9T2JqZWN0LmNyZWF0ZTtjb25zdCBhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gZnVuY3Rpb24oZSl7aWYoISgwLG4uZGVmYXVsdCkoZSkpcmV0dXJue307aWYodSlyZXR1cm4gdShlKTt0LnByb3RvdHlwZT1lO3ZhciByPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAscn19KCl9LDY4ODk2NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscixuKXtmb3IodmFyIHU9dC5sZW5ndGgsYT1yKyhuPzE6LTEpO24/YS0tOisrYTx1OylpZihlKHRbYV0sYSx0KSlyZXR1cm4gYTtyZXR1cm4tMX19LDkxNjA4NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig0NDg2MjYpLHU9cigyOTU2MzUpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIpe3ZhciBhPWUodCk7cmV0dXJuKDAsdS5kZWZhdWx0KSh0KT9hOigwLG4uZGVmYXVsdCkoYSxyKHQpKX19LDgzMDg3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig2OTM5NDEpO2NvbnN0IHU9KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5rZXlzLE9iamVjdCk7dmFyIGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBvPWZ1bmN0aW9uKHQpe2lmKCEoMCxuLmRlZmF1bHQpKHQpKXJldHVybiB1KHQpO3ZhciBlPVtdO2Zvcih2YXIgciBpbiBPYmplY3QodCkpYS5jYWxsKHQscikmJiJjb25zdHJ1Y3RvciIhPXImJmUucHVzaChyKTtyZXR1cm4gZX19LDg5OTMzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX0sNzEyODAxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzKGUpfX0sCjM3NzI1MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49cig4NjUzMzApO2NvbnN0IHU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IHQuY29uc3RydWN0b3IodC5ieXRlTGVuZ3RoKTtyZXR1cm4gbmV3IG4uZGVmYXVsdChlKS5zZXQobmV3IG4uZGVmYXVsdCh0KSksZX19LDQ4NzA2MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5mfSk7dmFyIG49cig5ODE1MjMpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXU/bi5kZWZhdWx0LkJ1ZmZlcjp2b2lkIDAsYz1vP28uYWxsb2NVbnNhZmU6dm9pZCAwO2NvbnN0IGY9ZnVuY3Rpb24odCxlKXtpZihlKXJldHVybiB0LnNsaWNlKCk7dmFyIHI9dC5sZW5ndGgsbj1jP2Mocik6bmV3IHQuY29uc3RydWN0b3Iocik7cmV0dXJuIHQuY29weShuKSxufX0sMTM5MDcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMzc3MjUxKTtjb25zdCB1PWZ1bmN0aW9uKHQsZSl7dmFyIHI9ZT8oMCxuLmRlZmF1bHQpKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3Iocix0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfX0sNzA1NzQ5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7dmFyIHI9LTEsbj10Lmxlbmd0aDtmb3IoZXx8KGU9QXJyYXkobikpOysrcjxuOyllW3JdPXRbcl07cmV0dXJuIGV9fSw2MTg1Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjg1MzMpLHU9cigyNTQ3MzgpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIsYSl7dmFyIG89IXI7cnx8KHI9e30pO2Zvcih2YXIgYz0tMSxmPWUubGVuZ3RoOysrYzxmOyl7dmFyIHM9ZVtjXSxpPWE/YShyW3NdLHRbc10scyxyLHQpOnZvaWQgMDt2b2lkIDA9PT1pJiYoaT10W3NdKSxvPygwLHUuZGVmYXVsdCkocixzLGkpOigwLG4uZGVmYXVsdCkocixzLGkpfXJldHVybiByfX0sMzYwNDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMTYyMzE2KTtjb25zdCB1PWZ1bmN0aW9uKCl7dHJ5e3ZhciB0PSgwLG4uZGVmYXVsdCkoT2JqZWN0LCJkZWZpbmVQcm9wZXJ0eSIpO3JldHVybiB0KHt9LCIiLHt9KSx0fWNhdGNoKHQpe319KCl9LDgwNjI0MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig5MTYwODUpLHU9cigyMzA5NTEpLGE9cigzMDkwODApO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsbi5kZWZhdWx0KSh0LGEuZGVmYXVsdCx1LmRlZmF1bHQpfX0sOTkxNTk5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDkxNjA4NSksdT1yKDExNjY0MSksYT1yKDIxNzQ1Nyk7Y29uc3Qgbz1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsYS5kZWZhdWx0LHUuZGVmYXVsdCl9fSwzOTI1NDUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpfSwyMzA5NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsdT0wLGE9W107KytyPG47KXt2YXIgbz10W3JdO2UobyxyLHQpJiYoYVt1KytdPW8pfXJldHVybiBhfTt2YXIgdT1yKDE3NzY1NSksYT1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztjb25zdCBjPW8/ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/W106KHQ9T2JqZWN0KHQpLG4obyh0KSwoZnVuY3Rpb24oZSl7cmV0dXJuIGEuY2FsbCh0LGUpfSkpKX06dS5kZWZhdWx0fSwxMTY2NDEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO3ZhciBuPXIoNDQ4NjI2KSx1PXIoMzkyNTQ1KSxhPXIoMjMwOTUxKSxvPXIoMTc3NjU1KTtjb25zdCBjPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdO3Q7KSgwLG4uZGVmYXVsdCkoZSwoMCxhLmRlZmF1bHQpKHQpKSx0PSgwLHUuZGVmYXVsdCkodCk7cmV0dXJuIGV9Om8uZGVmYXVsdH0sOTY5Nzg1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm19KTt2YXIgbj1yKDE2MjMxNiksdT1yKDk4MTUyMyk7Y29uc3QgYT0oMCxuLmRlZmF1bHQpKHUuZGVmYXVsdCwiRGF0YVZpZXciKTt2YXIgbz1yKDY5NDIxKTtjb25zdCBjPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJQcm9taXNlIik7dmFyIGY9cig0MTQxMjMpLHM9cig5Mjg0NTMpLGk9cigxNzg0OTcpLGw9cig3MzA1MDMpLGQ9IltvYmplY3QgTWFwXSIsdj0iW29iamVjdCBQcm9taXNlXSIscD0iW29iamVjdCBTZXRdIixiPSJbb2JqZWN0IFdlYWtNYXBdIix5PSJbb2JqZWN0IERhdGFWaWV3XSIsaD0oMCxsLmRlZmF1bHQpKGEpLGo9KDAsbC5kZWZhdWx0KShvLmRlZmF1bHQpLGc9KDAsbC5kZWZhdWx0KShjKSx3PSgwLGwuZGVmYXVsdCkoZi5kZWZhdWx0KSxfPSgwLGwuZGVmYXVsdCkocy5kZWZhdWx0KSxBPWkuZGVmYXVsdDsoYSYmQShuZXcgYShuZXcgQXJyYXlCdWZmZXIoMSkpKSE9eXx8by5kZWZhdWx0JiZBKG5ldyBvLmRlZmF1bHQpIT1kfHxjJiZBKGMucmVzb2x2ZSgpKSE9dnx8Zi5kZWZhdWx0JiZBKG5ldyBmLmRlZmF1bHQpIT1wfHxzLmRlZmF1bHQmJkEobmV3IHMuZGVmYXVsdCkhPWIpJiYoQT1mdW5jdGlvbih0KXt2YXIgZT0oMCxpLmRlZmF1bHQpKHQpLHI9IltvYmplY3QgT2JqZWN0XSI9PWU/dC5jb25zdHJ1Y3Rvcjp2b2lkIDAsbj1yPygwLGwuZGVmYXVsdCkocik6IiI7aWYobilzd2l0Y2gobil7Y2FzZSBoOgpyZXR1cm4geTtjYXNlIGo6cmV0dXJuIGQ7Y2FzZSBnOnJldHVybiB2O2Nhc2UgdzpyZXR1cm4gcDtjYXNlIF86cmV0dXJuIGJ9cmV0dXJuIGV9KTtjb25zdCBtPUF9LDgwNzU3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4NTEwODIpLHU9cigzOTI1NDUpLGE9cig2OTM5NDEpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIHQuY29uc3RydWN0b3J8fCgwLGEuZGVmYXVsdCkodCk/e306KDAsbi5kZWZhdWx0KSgoMCx1LmRlZmF1bHQpKHQpKX19LDkyMTE0Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49L14oPzowfFsxLTldXGQqKSQvO2NvbnN0IHU9ZnVuY3Rpb24odCxlKXt2YXIgcj10eXBlb2YgdDtyZXR1cm4hIShlPWU/PzkwMDcxOTkyNTQ3NDA5OTEpJiYoIm51bWJlciI9PXJ8fCJzeW1ib2wiIT1yJiZuLnRlc3QodCkpJiZ0Pi0xJiZ0JTE9PTAmJnQ8ZX19LDY5Mzk0MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49T2JqZWN0LnByb3RvdHlwZTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUucHJvdG90eXBlfHxuKX19LDM2OTg5OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5jfSk7dmFyIG49cig2MDI5NDIpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXUmJm4uZGVmYXVsdC5wcm9jZXNzO2NvbnN0IGM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9YSYmYS5yZXF1aXJlJiZhLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8byYmby5iaW5kaW5nJiZvLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpfSwxMzk4NDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIHQoZShyKSl9fX0sOTcyMDE3KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQpe3ZhciBlPS0xLHI9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtyWysrZV09dH0pKSxyfX0sMjAzNjgxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDQ5MzAxOCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsNSl9fSw1NDc4NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoODgwMTE1KSx1PXIoOTgxNTIzKTtjb25zdCBhPWZ1bmN0aW9uKCl7cmV0dXJuIHUuZGVmYXVsdC5EYXRlLm5vdygpfTt2YXIgbz1yKDQwNjQ0OSksYz1NYXRoLm1heCxmPU1hdGgubWluO2NvbnN0IHM9ZnVuY3Rpb24odCxlLHIpe3ZhciB1LHMsaSxsLGQsdixwPTAsYj0hMSx5PSExLGg9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO2Z1bmN0aW9uIGooZSl7dmFyIHI9dSxuPXM7cmV0dXJuIHU9cz12b2lkIDAscD1lLGw9dC5hcHBseShuLHIpfWZ1bmN0aW9uIGcodCl7dmFyIHI9dC12O3JldHVybiB2b2lkIDA9PT12fHxyPj1lfHxyPDB8fHkmJnQtcD49aX1mdW5jdGlvbiB3KCl7dmFyIHQ9YSgpO2lmKGcodCkpcmV0dXJuIF8odCk7ZD1zZXRUaW1lb3V0KHcsZnVuY3Rpb24odCl7dmFyIHI9ZS0odC12KTtyZXR1cm4geT9mKHIsaS0odC1wKSk6cn0odCkpfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGQ9dm9pZCAwLGgmJnU/aih0KToodT1zPXZvaWQgMCxsKX1mdW5jdGlvbiBBKCl7dmFyIHQ9YSgpLHI9Zyh0KTtpZih1PWFyZ3VtZW50cyxzPXRoaXMsdj10LHIpe2lmKHZvaWQgMD09PWQpcmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBwPXQsZD1zZXRUaW1lb3V0KHcsZSksYj9qKHQpOmx9KHYpO2lmKHkpcmV0dXJuIGNsZWFyVGltZW91dChkKSxkPXNldFRpbWVvdXQodyxlKSxqKHYpfXJldHVybiB2b2lkIDA9PT1kJiYoZD1zZXRUaW1lb3V0KHcsZSkpLGx9cmV0dXJuIGU9KDAsby5kZWZhdWx0KShlKXx8MCwoMCxuLmRlZmF1bHQpKHIpJiYoYj0hIXIubGVhZGluZyxpPSh5PSJtYXhXYWl0ImluIHIpP2MoKDAsby5kZWZhdWx0KShyLm1heFdhaXQpfHwwLGUpOmksaD0idHJhaWxpbmciaW4gcj8hIXIudHJhaWxpbmc6aCksQS5jYW5jZWw9ZnVuY3Rpb24oKXt2b2lkIDAhPT1kJiZjbGVhclRpbWVvdXQoZCkscD0wLHU9dj1zPWQ9dm9pZCAwfSxBLmZsdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PWQ/bDpfKGEoKSl9LEF9fSw1MzE1NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoMTc4NDk3KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1PYmplY3QucHJvdG90eXBlLGM9by5oYXNPd25Qcm9wZXJ0eSxmPW8ucHJvcGVydHlJc0VudW1lcmFibGUscz1hKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/YTpmdW5jdGlvbih0KXtyZXR1cm4oMCx1LmRlZmF1bHQpKHQpJiZjLmNhbGwodCwiY2FsbGVlIikmJiFmLmNhbGwodCwiY2FsbGVlIil9O2NvbnN0IGk9c30sMjk1NjM1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPUFycmF5LmlzQXJyYXl9LDM5MjkwOCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig5MjgxMzIpLHU9cig5OTA2MDQpO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJigwLHUuZGVmYXVsdCkodC5sZW5ndGgpJiYhKDAsbi5kZWZhdWx0KSh0KX19LDY1OTAxOCh0LGUscil7CiJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Zn0pO3ZhciBuPXIoOTgxNTIzKTtjb25zdCB1PWZ1bmN0aW9uKCl7cmV0dXJuITF9O3ZhciBhPSJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmZXhwb3J0cyYmIWV4cG9ydHMubm9kZVR5cGUmJmV4cG9ydHMsbz1hJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsYz1vJiZvLmV4cG9ydHM9PT1hP24uZGVmYXVsdC5CdWZmZXI6dm9pZCAwO2NvbnN0IGY9KGM/Yy5pc0J1ZmZlcjp2b2lkIDApfHx1fSw5OTA2MDQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiZ0Pi0xJiZ0JTE9PTAmJnQ8PTkwMDcxOTkyNTQ3NDA5OTF9fSw2NzI1MTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoOTY5Nzg1KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IE1hcF0iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1yKDg5OTMzOSksYz1yKDM2OTg5OSksZj1jLmRlZmF1bHQmJmMuZGVmYXVsdC5pc01hcDtjb25zdCBzPWY/KDAsby5kZWZhdWx0KShmKTphfSwzNjA2MjAodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdH19LDcxNzMzMih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNzg0OTcpLHU9cigzNjA2MjApO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fHwoMCx1LmRlZmF1bHQpKHQpJiYiW29iamVjdCBTeW1ib2xdIj09KDAsbi5kZWZhdWx0KSh0KX19LDE2NTI2Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5sfSk7dmFyIG49cigxNzg0OTcpLHU9cig5OTA2MDQpLGE9cigzNjA2MjApLG89e307b1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09b1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09b1siW29iamVjdCBJbnQ4QXJyYXldIl09b1siW29iamVjdCBJbnQxNkFycmF5XSJdPW9bIltvYmplY3QgSW50MzJBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09b1siW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPW9bIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsb1siW29iamVjdCBBcmd1bWVudHNdIl09b1siW29iamVjdCBBcnJheV0iXT1vWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPW9bIltvYmplY3QgQm9vbGVhbl0iXT1vWyJbb2JqZWN0IERhdGFWaWV3XSJdPW9bIltvYmplY3QgRGF0ZV0iXT1vWyJbb2JqZWN0IEVycm9yXSJdPW9bIltvYmplY3QgRnVuY3Rpb25dIl09b1siW29iamVjdCBNYXBdIl09b1siW29iamVjdCBOdW1iZXJdIl09b1siW29iamVjdCBPYmplY3RdIl09b1siW29iamVjdCBSZWdFeHBdIl09b1siW29iamVjdCBTZXRdIl09b1siW29iamVjdCBTdHJpbmddIl09b1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IGM9ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KSYmKDAsdS5kZWZhdWx0KSh0Lmxlbmd0aCkmJiEhb1soMCxuLmRlZmF1bHQpKHQpXX07dmFyIGY9cig4OTkzMzkpLHM9cigzNjk4OTkpLGk9cy5kZWZhdWx0JiZzLmRlZmF1bHQuaXNUeXBlZEFycmF5O2NvbnN0IGw9aT8oMCxmLmRlZmF1bHQpKGkpOmN9LDMwOTA4MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4MjA5NzUpLHU9cig4MzA4NzUpLGE9cigzOTI5MDgpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQpOigwLHUuZGVmYXVsdCkodCl9fSwyMTc0NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoODIwOTc1KSx1PXIoODgwMTE1KSxhPXIoNjkzOTQxKTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO2lmKG51bGwhPXQpZm9yKHZhciByIGluIE9iamVjdCh0KSllLnB1c2gocik7cmV0dXJuIGV9O3ZhciBjPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7Y29uc3QgZj1mdW5jdGlvbih0KXtpZighKDAsdS5kZWZhdWx0KSh0KSlyZXR1cm4gbyh0KTt2YXIgZT0oMCxhLmRlZmF1bHQpKHQpLHI9W107Zm9yKHZhciBuIGluIHQpKCJjb25zdHJ1Y3RvciIhPW58fCFlJiZjLmNhbGwodCxuKSkmJnIucHVzaChuKTtyZXR1cm4gcn07dmFyIHM9cigzOTI5MDgpO2NvbnN0IGk9ZnVuY3Rpb24odCl7cmV0dXJuKDAscy5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQsITApOmYodCl9fSw2NjMwNDYodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNzEzMTQ4KTtmdW5jdGlvbiB1KHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHR8fG51bGwhPWUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZnVuY3Rpb24iKTt2YXIgcj1mdW5jdGlvbigpe3ZhciBuPWFyZ3VtZW50cyx1PWU/ZS5hcHBseSh0aGlzLG4pOm5bMF0sYT1yLmNhY2hlO2lmKGEuaGFzKHUpKXJldHVybiBhLmdldCh1KTt2YXIgbz10LmFwcGx5KHRoaXMsbik7cmV0dXJuIHIuY2FjaGU9YS5zZXQodSxvKXx8YSxvfTtyZXR1cm4gci5jYWNoZT1uZXcodS5DYWNoZXx8bi5kZWZhdWx0KSxyfXUuQ2FjaGU9bi5kZWZhdWx0O2NvbnN0IGE9dX0sODYyMzg4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7fX0sMTc3NjU1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7cmV0dXJuW119fSw1ODcxNjgodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNTQ3ODUxKSx1PXIoODgwMTE1KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxyKXsKdmFyIGE9ITAsbz0hMDtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuKDAsdS5kZWZhdWx0KShyKSYmKGE9ImxlYWRpbmciaW4gcj8hIXIubGVhZGluZzphLG89InRyYWlsaW5nImluIHI/ISFyLnRyYWlsaW5nOm8pLCgwLG4uZGVmYXVsdCkodCxlLHtsZWFkaW5nOmEsbWF4V2FpdDplLHRyYWlsaW5nOm99KX19LDQwNjQ0OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT52fSk7dmFyIG49L1xzLztjb25zdCB1PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS0mJm4udGVzdCh0LmNoYXJBdChlKSk7KTtyZXR1cm4gZX07dmFyIGE9L15ccysvO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLHUodCkrMSkucmVwbGFjZShhLCIiKTp0fTt2YXIgYz1yKDg4MDExNSksZj1yKDcxNzMzMikscz0vXlstK10weFswLTlhLWZdKyQvaSxpPS9eMGJbMDFdKyQvaSxsPS9eMG9bMC03XSskL2ksZD1wYXJzZUludDtjb25zdCB2PWZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gdDtpZigoMCxmLmRlZmF1bHQpKHQpKXJldHVybiBOYU47aWYoKDAsYy5kZWZhdWx0KSh0KSl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQudmFsdWVPZj90LnZhbHVlT2YoKTp0O3Q9KDAsYy5kZWZhdWx0KShlKT9lKyIiOmV9aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiAwPT09dD90Oit0O3Q9byh0KTt2YXIgcj1pLnRlc3QodCk7cmV0dXJuIHJ8fGwudGVzdCh0KT9kKHQuc2xpY2UoMikscj8yOjgpOnMudGVzdCh0KT9OYU46K3R9fSwzNTI4MzcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoMjY5MzY2KSx1PXIoMjI0NDE2KSxhPXIoODI1MDM5KSxvPXIoNzEyODAxKSxjPXIoNDE0MTIzKSxmPXIoODYyMzg4KSxzPXIoOTcyMDE3KTtjb25zdCBpPWMuZGVmYXVsdCYmMS8oMCxzLmRlZmF1bHQpKG5ldyBjLmRlZmF1bHQoWywtMF0pKVsxXT09MS8wP2Z1bmN0aW9uKHQpe3JldHVybiBuZXcgYy5kZWZhdWx0KHQpfTpmLmRlZmF1bHQ7Y29uc3QgbD1mdW5jdGlvbih0LGUscil7dmFyIGM9LTEsZj11LmRlZmF1bHQsbD10Lmxlbmd0aCxkPSEwLHY9W10scD12O2lmKHIpZD0hMSxmPWEuZGVmYXVsdDtlbHNlIGlmKGw+PTIwMCl7dmFyIGI9ZT9udWxsOmkodCk7aWYoYilyZXR1cm4oMCxzLmRlZmF1bHQpKGIpO2Q9ITEsZj1vLmRlZmF1bHQscD1uZXcgbi5kZWZhdWx0fWVsc2UgcD1lP1tdOnY7dDpmb3IoOysrYzxsOyl7dmFyIHk9dFtjXSxoPWU/ZSh5KTp5O2lmKHk9cnx8MCE9PXk/eTowLGQmJmg9PWgpe2Zvcih2YXIgaj1wLmxlbmd0aDtqLS07KWlmKHBbal09PT1oKWNvbnRpbnVlIHQ7ZSYmcC5wdXNoKGgpLHYucHVzaCh5KX1lbHNlIGYocCxoLHIpfHwocCE9PXYmJnAucHVzaChoKSx2LnB1c2goeSkpfXJldHVybiB2fTtjb25zdCBkPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lmxlbmd0aD9sKHQpOltdfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/75304.174496dbf62bc90db59a.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.523Z","timestamp":1785154590523,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/75304.174496dbf62bc90db59a.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 32\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"6a58ab11-20\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: de751e61f29ce9123ba365533fac297f\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":32,"size_decoded":816,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"10831c7be3a76a74645935347043e2b5","sha1":"b94e8e987207e65fcaacb92d7fe9b6abae350446","sha256":"02392cb348576ae4401ed04ea67dc7a708f88cf080b321001192ee8fdfbee047","sha512":"41692d9ad3993dc97c90842a9f189a9a277965aef5fd1d867477557e363ee994e2b1b5d574c54d283206deedf65ad81600a071f6be8114830168dcbfb724f32b","ssdeep":"","tlshash":"bb8004d170053c3c00077000053340c7dc5140c1cd731451500453415f140750103510","first_seen":"2023-06-28T13:47:54Z","last_seen":"2026-07-27T14:22:59.59247Z","times_seen":1534,"resource_available":false,"data":"LnVpLWRyYWdnYWJsZXt0b3VjaC1hY3Rpb246bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.46024.97176aa48fe9d9a0d127.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.541Z","timestamp":1785154590541,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.46024.97176aa48fe9d9a0d127.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632876-1c38c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:18 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a3de8bf791f6b583616b85d646c4af2a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":115596,"size_decoded":32391,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3072)","md5":"07d126f5f997c2ed316e3742d5b45af1","sha1":"826dfb648f32acec5e5699cc15a08026e137e6a3","sha256":"fb0cd50a605d7edce14affef79a6dfae9404ba2f7d7818008345363e9e26a988","sha512":"c7114acc89392a1469487feb62b74be0cd3a585a3b5d7a4bb38f30575f557f59860a020911d77ff07f283945810bbfe3bd8586e314442a21ea0c2e1e3625bfc6","ssdeep":"3072:WFM91hHo+AyVKC+wNBsx4A5b0jp4mMGOlyIhVh4dt//9:WFM91hHo+Ay/NNBM4A5bsp4mMGOlVp4d","tlshash":"69b3fe03c901d0ea9fb2d6063ba5dcc878f0774541f0e6c27b998f29c5a3da6593a778","first_seen":"2026-07-25T03:24:57.378453Z","last_seen":"2026-07-27T14:22:59.548805Z","times_seen":284,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwyMDg2NiwyNDkyOSw0MDI0MCw0NjAyNCw1MjMyNCw1NzE4NCw1ODY2Nyw5NDM4OF0sezE2MDU2MihlKXtlLmV4cG9ydHM9WyJDTUYiXX0sNjE3MzQwKGUpe2UuZXhwb3J0cz1bIkNvbHVtbnMiXX0sMTE4NDkxKGUpe2UuZXhwb3J0cz1bIkNhbmRsZXMiXX0sNzk2MDkzKGUpe2UuZXhwb3J0cz1bIkFyZWEiXX0sOTQxNjI5KGUpe2UuZXhwb3J0cz1bIkJhcnMiXX0sNTI1MzMxKGUpe2UuZXhwb3J0cz1bIkJhc2VsaW5lIl19LDQxMzQzKGUpe2UuZXhwb3J0cz1bIkthZ2kiXX0sOTY3ODQxKGUpe2UuZXhwb3J0cz1bIkhMQyBhcmVhIl19LDY4MzAwKGUpe2UuZXhwb3J0cz1bIkhMQyBiYXJzIl19LDMzMTgyNChlKXtlLmV4cG9ydHM9WyJIb2xsb3cgY2FuZGxlcyJdfSw4MzU1NDMoZSl7ZS5leHBvcnRzPVsiSGVpa2luIEFzaGkiXX0sOTUyODEwKGUpe2UuZXhwb3J0cz1bIkhpZ2gtbG93Il19LDIxMDQ5OShlKXtlLmV4cG9ydHM9WyJMaW5lIl19LDE4NjE0NyhlKXtlLmV4cG9ydHM9WyJMaW5lIHdpdGggbWFya2VycyJdfSwzMDc0MzYoZSl7ZS5leHBvcnRzPVsiTGluZSBicmVhayJdfSw2ODc5NTEoZSl7ZS5leHBvcnRzPVsiU2Vzc2lvbiB2b2x1bWUgcHJvZmlsZSJdfSw5MTYxNDgoZSl7ZS5leHBvcnRzPVsiU3RlcCBsaW5lIl19LDg2NzAyMShlKXtlLmV4cG9ydHM9WyJQb2ludCAmIGZpZ3VyZSJdfSwxODgzNTIoZSl7ZS5leHBvcnRzPVsiUmFuZ2UiXX0sNDYxNzM4KGUpe2UuZXhwb3J0cz1bIlJlbmtvIl19LDExNzk4NChlKXtlLmV4cG9ydHM9WyJUaW1lIHByaWNlIG9wcG9ydHVuaXR5Il19LDg5MjM3NShlKXtlLmV4cG9ydHM9WyJWb2x1bWUgY2FuZGxlcyJdfSwyMDEwNzMoZSl7ZS5leHBvcnRzPVsiVm9sdW1lIGZvb3RwcmludCJdfSw2NDE1OTgoZSl7ZS5leHBvcnRzPVsiUHJpY2VzIl19LDc1NDYoZSl7ZS5leHBvcnRzPVsiWWllbGQiXX0sNzUxMDMzKGUpe2UuZXhwb3J0cz1bIllpZWxkcyJdfSw5NDk3MDQoZSl7ZS5leHBvcnRzPVsiTUZJIl19LDI3NDg3NChlKXtlLmV4cG9ydHM9WyItREkiXX0sODE5MDQyKGUpe2UuZXhwb3J0cz1bIitESSJdfSwzNjIwMDQoZSl7ZS5leHBvcnRzPVsiQWxsIGl0ZW1zIl19LDMzMzM1KGUpe2UuZXhwb3J0cz1bIk5vdGhpbmcgc2VsZWN0ZWQiXX0sNzU0OTI1KGUpe2UuZXhwb3J0cz1bIlBhdHRlcm4iXX0sNjgzNjI3KGUpe2UuZXhwb3J0cz1bIlNvbWV0aGluZyB3ZW50IHdyb25nIl19LDg1OTk5NChlKXtlLmV4cG9ydHM9WyJDIl19LDg5MjM2MyhlKXtlLmV4cG9ydHM9WyJEIl19LDM5NDUwMShlKXtlLmV4cG9ydHM9WyJEIl19LDU3MDkzOShlKXtlLmV4cG9ydHM9WyJFIl19LDM5NDkyMShlKXtlLmV4cG9ydHM9WyJGIl19LDg2NjQ0KGUpe2UuZXhwb3J0cz1bIlIiXX0sNzU2NDU3KGUpe2UuZXhwb3J0cz1bIlIiXX0sMjU3MzI2KGUpe2UuZXhwb3J0cz1bIlMiXX0sMTg1NDk5KGUpe2UuZXhwb3J0cz1bIkFsbCBQYWlycyJdfSwyMTc3ODgoZSl7ZS5leHBvcnRzPVsiTiJdfSw0MTM1MzcoZSl7ZS5leHBvcnRzPVsiQiJdfSw5OTE2OTcoZSl7ZS5leHBvcnRzPVsiUyJdfSwxOTE0MzIoZSl7ZS5leHBvcnRzPVsiRCJdfSw4ODkxMChlKXtlLmV4cG9ydHM9WyJNIl19LDMyMzU3MChlKXtlLmV4cG9ydHM9WyJXIl19LDI0MDczKGUpe2UuZXhwb3J0cz1bImgiXX0sNjE4NChlKXtlLmV4cG9ydHM9WyJtIl19LDIwNTkoZSl7ZS5leHBvcnRzPVsiTWFyZ2lucyJdfSw1NjU5NjIoZSl7ZS5leHBvcnRzPVsiQnV5Il19LDQ1OTQ2MyhlKXtlLmV4cG9ydHM9WyJOZXV0cmFsIl19LDI1NzY0MyhlKXtlLmV4cG9ydHM9WyJTZWxsIl19LDQ4OTg2OShlKXtlLmV4cG9ydHM9WyJTdHJvbmcgQnV5Il19LDY5MTU0MyhlKXtlLmV4cG9ydHM9WyJTdHJvbmcgU2VsbCJdfSw3MzQ3NTAoZSl7ZS5leHBvcnRzPVsiTWF5Il19LDI0ODc4NShlKXtlLmV4cG9ydHM9WyJCdWxsIEJlYXIgUG93ZXIiXX0sOTMwMDk4KGUpe2UuZXhwb3J0cz1bIkRvamkiXX0sNzYzMjI2KGUpe2UuZXhwb3J0cz1bIlNwaW5uaW5nIFRvcCBCbGFjayJdfSwzMzM5MTQoZSl7ZS5leHBvcnRzPVsiU3Bpbm5pbmcgVG9wIFdoaXRlIl19LDQ3NzQ3NShlKXtlLmV4cG9ydHM9WyJUZWNobmljYWxzIl19LDU5NjE2OChlKXtlLmV4cG9ydHM9WyJWb2wiXX0sODY4NDE5KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSBXZWlnaHRlZCBBdmVyYWdlIFByaWNlIl19LDU3MDYyKGUpe2UuZXhwb3J0cz1bIk4vQSJdfSw1MzkyMzgoZSl7ZS5leHBvcnRzPVsiJVIiXX0sMTYxNTgzKGUpe2UuZXhwb3J0cz1bIjEtTW9udGggSGlnaCJdfSwyMDA5MjAoZSl7ZS5leHBvcnRzPVsiMS1Nb250aCBMb3ciXX0sMTgxMjI4KGUpe2UuZXhwb3J0cz1bIjEtWSBCZXRhIl19LDE4NjcyNihlKXtlLmV4cG9ydHM9WyIxLVllYXIgQmV0YSJdfSwxMTE5NzYoZSl7ZS5leHBvcnRzPVsiMSB5ZWFyIl19LDgxODAwMihlKXtlLmV4cG9ydHM9WyIxIHllYXIgcHJpY2UgdGFyZ2V0Il19LDE3MzI0MChlKXtlLmV4cG9ydHM9WyIxNW0iXX0sODMyNzMzKGUpe2UuZXhwb3J0cz1bIjFNIl19LDQ5MjEzNShlKXtlLmV4cG9ydHM9WyIxVyJdfSw0MTU3NTEoZSl7ZS5leHBvcnRzPVsiMW0iXX0sMjg5NDY0KGUpe2UuZXhwb3J0cz1bIjFoIl19LDk5MDc3KGUpe2UuZXhwb3J0cz1bIjMtTW9udGggSGlnaCJdfSw4ODY5MTgoZSl7ZS5leHBvcnRzPVsiMy1Nb250aCBMb3ciXX0sNzc5MDgzKGUpe2UuZXhwb3J0cz1bIjMtTW9udGggUGVyZiJdfSw2NjQyNDIoZSl7ZS5leHBvcnRzPVsiMy1Nb250aCBQZXJmb3JtYW5jZSJdfSwzMjgwMzAoZSl7ZS5leHBvcnRzPVsiMyBtb250aHMiXX0sNTUyNzQzKGUpe2UuZXhwb3J0cz1bIjRoIl19LDE5MzI1OShlKXtlLmV4cG9ydHM9WyI1MiBXZWVrIEhpZ2giXX0sNjY5MzA4KGUpe2UuZXhwb3J0cz1bIjUyIFdlZWsgTG93Il19LDQ5MDU3NyhlKXtlLmV4cG9ydHM9WyI1WSBQZXJmIl19LDkzNTgxOShlKXtlLmV4cG9ydHM9WyI1WSBQZXJmb3JtYW5jZSJdfSw4MDE0ODAoZSl7ZS5leHBvcnRzPVsiNW0iXX0sCjk3ODc2MChlKXtlLmV4cG9ydHM9WyI2LU1vbnRoIEhpZ2giXX0sNjAzNTA5KGUpe2UuZXhwb3J0cz1bIjYtTW9udGggTG93Il19LDc2ODc4NihlKXtlLmV4cG9ydHM9WyI2LU1vbnRoIFBlcmYiXX0sOTYwNjYzKGUpe2UuZXhwb3J0cz1bIjYtTW9udGggUGVyZm9ybWFuY2UiXX0sNzUzMTYoZSl7ZS5leHBvcnRzPVsiQ0NJMjAiXX0sNzk2ODkxKGUpe2UuZXhwb3J0cz1bIkNFRiJdfSw0NDM2MjcoZSl7ZS5leHBvcnRzPVsiQ291bnRyeSJdfSwyMjU3MDYoZSl7ZS5leHBvcnRzPVsiQ291cG9uIl19LDgyNTE3OChlKXtlLmV4cG9ydHM9WyJDb3VyaWVyIFNlcnZpY2VzIl19LDY4Mzc0MChlKXtlLmV4cG9ydHM9WyJDb2FsIl19LDMxMDQoZSl7ZS5leHBvcnRzPVsiQ29hbCBNaW5pbmcgU3VwcG9ydCJdfSw4MzU4OTQoZSl7ZS5leHBvcnRzPVsiQ29hbCBXaG9sZXNhbGUiXX0sMzI1NzMyKGUpe2UuZXhwb3J0cz1bIkNvY29zIChLZWVsaW5nKSBJc2xhbmRzIl19LDMyNzA4NChlKXtlLmV4cG9ydHM9WyJDb2ZmZWUgJiBUZWEiXX0sMzU1MDIoZSl7ZS5leHBvcnRzPVsiQ29mZmVlLCBUZWEgJiBDb2NvYSBGYXJtaW5nIl19LDU0NTgoZSl7ZS5leHBvcnRzPVsiQ29pbiJdfSw2MjM4MDkoZSl7ZS5leHBvcnRzPVsiQ29rZSBDb2FsIE1pbmluZyJdfSwxMzU4NjcoZSl7ZS5leHBvcnRzPVsiQ29sb21iaWEiXX0sNDkyNjc5KGUpe2UuZXhwb3J0cz1bIkNvbG9yaW5nIEFnZW50Il19LDcxODY3MyhlKXtlLmV4cG9ydHM9WyJDb2xsZWN0aXZlIEludmVzdG1lbnQgRnVuZCBPcGVyYXRvcnMiXX0sMzMyNjA5KGUpe2UuZXhwb3J0cz1bIkNvbHVtbiBzZXRzIl19LDU3OTA2NShlKXtlLmV4cG9ydHM9WyJDb2x1bW4gc2V0dXAiXX0sNDg0MTM2KGUpe2UuZXhwb3J0cz1bIkNvbW9yb3MiXX0sNjE3NDI3KGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGFubmVsIEluZGV4ICgyMCkiXX0sMTUyOTEzKGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGVtaWNhbHMiXX0sMTU4MDg1KGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGVtaWNhbHMgV2hvbGVzYWxlIl19LDk4MTI4MyhlKXtlLmV4cG9ydHM9WyJDb21tb24gU3RvY2siXX0sNDE1NjkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBBaXJjcmFmdCBNYW51ZmFjdHVyaW5nIl19LDM2NzU4MyhlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEJhbmtzIl19LDg4OTIzOChlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEJ1aWxkaW5ncyJdfSw4MDI1MTkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBEb2N1bWVudCBNYW5hZ2VtZW50Il19LDY5MjUxNihlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEVxdWlwbWVudCBSZW50YWwiXX0sNTc5ODM1KGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgRmlzaGluZyJdfSw1MzUwNyhlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEZvb2QgU2VydmljZXMiXX0sNjQ5NTEwKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgTGVhc2luZyJdfSw0NTg5NzkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBMb2FucyJdfSw1MjUxNjMoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBOdXJzZXJpZXMiXX0sOTU3OTM1KGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUHJpbnRpbmcvRm9ybXMiXX0sNzY2NDAyKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUHJpbnRpbmcgU2VydmljZXMiXX0sNTQ3MjMyKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUkVJVHMiXX0sNDM3NzAxKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgU2VydmljZXMiXX0sNTA1MjA5KGUpe2UuZXhwb3J0cz1bIkNvbW11dGVyIEZlcnJ5Il19LDM1NjY2MShlKXtlLmV4cG9ydHM9WyJDb21tdXRpbmcgU2VydmljZXMiXX0sNjg3NTIoZSl7ZS5leHBvcnRzPVsiQ29tbXVuaWNhdGlvbiAmIFNhdGVsbGl0ZSBFcXVpcG1lbnQiXX0sODU4MTgoZSl7ZS5leHBvcnRzPVsiQ29tbXVuaWNhdGlvbnMiXX0sODg1Njg4KGUpe2UuZXhwb3J0cz1bIkNvbW11bmljYXRpb25zICYgTmV0d29ya2luZyJdfSwyMjUwMjgoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgJiBFbGVjdHJvbmljcyBSZXRhaWxlcnMiXX0sNjE3MjYzKGUpe2UuZXhwb3J0cz1bIkNvbXB1dGVyIENvbW11bmljYXRpb25zIl19LDY2NTQyMihlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBIYXJkd2FyZSJdfSw0MTI2NjUoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgSGFyZHdhcmUgJiBTb2Z0d2FyZSBSZXRhaWxlcnMiXX0sMjgyMjE3KGUpe2UuZXhwb3J0cz1bIkNvbXB1dGVyIEhhcmR3YXJlIENvbXBvbmVudCBBc3NlbWJseSJdfSwzOTQ5NChlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBQZXJpcGhlcmFscyJdfSw3MjU4MzAoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgUHJvY2Vzc2luZyBIYXJkd2FyZSJdfSw1NzA3NChlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBQcm9ncmFtbWluZyJdfSw4OTY0NShlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBUcmFpbmluZyJdfSw5NjQ4NTgoZSl7ZS5leHBvcnRzPVsiQ29uZ28iXX0sMjcxNTU4KGUpe2UuZXhwb3J0cz1bIkNvbmdvICh0aGUgRGVtb2NyYXRpYyBSZXB1YmxpYyBvZiB0aGUpIl19LDcyMTMzMyhlKXtlLmV4cG9ydHM9WyJDb25nbG9tZXJhdGVzIl19LDEzMDgzMyhlKXtlLmV4cG9ydHM9WyJDb25mZXJlbmNpbmcgVG9vbHMgJiBTeXN0ZW1zIl19LDE5NDE5NChlKXtlLmV4cG9ydHM9WyJDb25uZWN0aW5nIl19LDgzNTk0NyhlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gJiBFbmdpbmVlcmluZyJdfSw2NjI4MTQoZSl7ZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIE1hY2hpbmVyeSJdfSwxNzg1OTQoZSl7ZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIE1hdGVyaWFsIFByb2Nlc3NpbmciXX0sOTk2NyhlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWwgV2hvbGVzYWxlIl19LDUwMTQ4MihlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWxzIl19LDI3NzQ1NChlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMiXX0sODI0MjczKGUpe2UuZXhwb3J0cz1bIkNvbnN0cnVjdGlvbiBTdXBwbGllcyAmIEZpeHR1cmVzIl19LDEyNjgzOShlKXsKZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIFN1cHBsaWVzICYgRml4dHVyZXMgV2hvbGVzYWxlIl19LDM5NzkwOChlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBDcmVkaXQgQ2FyZHMgU2VydmljZXMiXX0sOTU5MjUyKGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEN5Y2xpY2FsIl19LDU0NTM5NShlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBDeWNsaWNhbHMiXX0sNzkwNzE2KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEdvb2RzIFJlbnRhbCJdfSw3MzE5ODMoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgRG9jdW1lbnQgTWFuYWdlbWVudCJdfSw3NTQ4NDMoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgRHVyYWJsZXMiXX0sNTU1MDg4KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWNzIFJldGFpbGVycyJdfSwyMjg0KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWNzL0FwcGxpYW5jZXMiXX0sOTI0MzkzKGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWMgV2hvbGVzYWxlIl19LDM5NDY2NihlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBMZWFzaW5nIl19LDMxOTM5MyhlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBMZW5kaW5nIl19LDgzMTg4MihlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBOb24tQ3ljbGljYWxzIl19LDU1NjQ3NShlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBOb24tRHVyYWJsZXMiXX0sMTUyODA4KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIFNlcnZpY2VzIl19LDg0NzM5OChlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBTdW5kcmllcyJdfSwxNjkyOTEoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgUHVibGlzaGluZyJdfSwzMjI1MjkoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgUmVwYWlyIFNlcnZpY2VzIl19LDI2NDkoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIvTm9uLUN5Y2xpY2FsIl19LDM2OTQzNihlKXtlLmV4cG9ydHM9WyJDb250YWluZXIgJiBQYWNrYWdpbmcgTWF0ZXJpYWwgV2hvbGVzYWxlIl19LDQ4NTM0OShlKXtlLmV4cG9ydHM9WyJDb250YWluZXJzL1BhY2thZ2luZyJdfSw2OTc5MzQoZSl7ZS5leHBvcnRzPVsiQ29udGVudCAmIFNpdGUgTWFuYWdlbWVudCBTZXJ2aWNlcyJdfSwyOTY1MjUoZSl7ZS5leHBvcnRzPVsiQ29udHJhY3QgRHJpbGxpbmciXX0sNzIzMjgyKGUpe2UuZXhwb3J0cz1bIkNvb2tpZSwgQ3JhY2tlciAmIFBhc3RhIE1hbnVmYWN0dXJpbmciXX0sNzA4ODU5KGUpe2UuZXhwb3J0cz1bIkNvb2sgSXNsYW5kcyJdfSwyMjI3NTkoZSl7ZS5leHBvcnRzPVsiQ29wcGVyIE9yZSAgTWluaW5nIl19LDIyNDQwNihlKXtlLmV4cG9ydHM9WyJDb3B5cmlnaHQgTWFuYWdlbWVudCJdfSwyNzIyMzkoZSl7ZS5leHBvcnRzPVsiQ29ycG9yYXRlIEFjY291bnRpbmcgU2VydmljZXMiXX0sMzUwNzQzKGUpe2UuZXhwb3J0cz1bIkNvcnBvcmF0ZSBGaW5hbmNpYWwgU2VydmljZXMiXX0sNzQzNzc4KGUpe2UuZXhwb3J0cz1bIkNvc21ldGljcyAmIFBlcmZ1bWVzIl19LDI2ODg0NChlKXtlLmV4cG9ydHM9WyJDb3N0YSBSaWNhIl19LDkxNTcwNShlKXtlLmV4cG9ydHM9WyJDYXRhbG9nL1NwZWNpYWx0eSBEaXN0cmlidXRpb24iXX0sNjQxMDI2KGUpe2UuZXhwb3J0cz1bIkNheW1hbiBJc2xhbmRzIl19LDkxMjgyNihlKXtlLmV4cG9ydHM9WyJDYWJsZSBTZXJ2aWNlIFByb3ZpZGVycyJdfSwzMTI4ODcoZSl7ZS5leHBvcnRzPVsiQ2FibGUvU2F0ZWxsaXRlIFRWIl19LDYwMTA5NyhlKXtlLmV4cG9ydHM9WyJDYWJvIFZlcmRlIl19LDMyOTgzMChlKXtlLmV4cG9ydHM9WyJDYWZlcyJdfSw5NjQ4MzQoZSl7ZS5leHBvcnRzPVsiQ2FsbCBDZW50ZXIgU2VydmljZXMiXX0sNTU1NDg5KGUpe2UuZXhwb3J0cz1bIkNhbWJvZGlhIl19LDk3NzAyOChlKXtlLmV4cG9ydHM9WyJDYW1lcm9vbiJdfSwxNTE4OShlKXtlLmV4cG9ydHM9WyJDYW5hZGEiXX0sNTM1MTMyKGUpe2UuZXhwb3J0cz1bIkNhcEV4ICh7cGVyaW9kfSkiXX0sMTQ5NTAzKGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwiXX0sOTg2NTg5KGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwgR29vZHMiXX0sNTQ4MzUyKGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwgTG9uZyBUZXJtIl19LDI3NTEyMShlKXtlLmV4cG9ydHM9WyJDYXJib24gQ2FwdHVyZSAmIFN0b3JhZ2UiXX0sMzMwNTczKGUpe2UuZXhwb3J0cz1bIkNhcmJvbmF0ZWQgU29mdCBEcmlua3MiXX0sMzkxNzYoZSl7ZS5leHBvcnRzPVsiQ2FycGV0cyAmIEN1cnRhaW5zIl19LDQ3NjgzNyhlKXtlLmV4cG9ydHM9WyJDYXNoICYgRXF1aXZhbGVudHMgKEZZKSJdfSw3NjUwMTcoZSl7ZS5leHBvcnRzPVsiQ2FzaCAmIEVxdWl2YWxlbnRzIChNUlEpIl19LDI1NDk0NyhlKXtlLmV4cG9ydHM9WyJDYXNoIGFuZCBzaG9ydCB0ZXJtIGludmVzdG1lbnRzIChGWSkiXX0sNzg4ODM4KGUpe2UuZXhwb3J0cz1bIkNhc2ggYW5kIHNob3J0IHRlcm0gaW52ZXN0bWVudHMgKE1SUSkiXX0sOTE1MTU0KGUpe2UuZXhwb3J0cz1bIkNhc2ggb24gaGFuZCAoRlkpIl19LDI0NzM2MChlKXtlLmV4cG9ydHM9WyJDYXNoIG9uIGhhbmQgKE1SUSkiXX0sNjA2MjA3KGUpe2UuZXhwb3J0cz1bIkNhc2lub3MiXX0sODU3MzQ1KGUpe2UuZXhwb3J0cz1bIkNhc2lub3MvR2FtaW5nIl19LDY1ODI1NihlKXtlLmV4cG9ydHM9WyJDYXNpbm9zICYgR2FtaW5nIl19LDkxMDQ2OChlKXtlLmV4cG9ydHM9WyJDYXN1YWx0eSBJbnN1cmFuY2UiXX0sMTQzNTE4KGUpe2UuZXhwb3J0cz1bIkNlbGx1bGFyIEZpYmVyIl19LDkwODQ1NihlKXtlLmV4cG9ydHM9WyJDZW1lbnQgJiBDb25jcmV0ZSBNYW51ZmFjdHVyaW5nIl19LDc3NDc4KGUpe2UuZXhwb3J0cz1bIkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyJdfSw0ODM1NShlKXtlLmV4cG9ydHM9WyJDaGFkIl19LDI1ODE0MyhlKXtlLmV4cG9ydHM9WyJDaGFpa2luIE1vbmV5IEZsb3cgKDIwKSJdfSw2NzM0ODcoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIl19LDk2OTQ3MihlKXtlLmV4cG9ydHM9WyJDaGFuZ2UgJSJdfSw2ODEwNDMoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIGZpbHRlciJdfSwzODI3NTEoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIGZyb20gT3BlbiJdfSw5MzYwMzQoZSl7CmUuZXhwb3J0cz1bIkNoYW5nZSBmcm9tIE9wZW4gJSJdfSw2NTcxMTQoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIHtyZXNvbHV0aW9ufSJdfSw3OTA5NDkoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIHtyZXNvbHV0aW9ufSwgJSJdfSw1OTU0NDEoZSl7ZS5leHBvcnRzPVsiQ2hhcnRlciAmIFByaXZhdGUgQWlyIFNlcnZpY2VzIl19LDgxODQ5NihlKXtlLmV4cG9ydHM9WyJDaGFydGVyIEJ1cyBTZXJ2aWNlcyJdfSwyNDAxOTEoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBBZ3JpY3VsdHVyYWwiXX0sMjMzNzIoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBNYWpvciBEaXZlcnNpZmllZCJdfSw5NjMwNTUoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBTcGVjaWFsdHkiXX0sMjA1ODM0KGUpe2UuZXhwb3J0cz1bIkNoZyJdfSwyMTA4MTUoZSl7ZS5leHBvcnRzPVsiQ2hnICUiXX0sNjMzNDU0KGUpe2UuZXhwb3J0cz1bIkNoZyBmcm9tIE9wZW4iXX0sODUzODk1KGUpe2UuZXhwb3J0cz1bIkNoZyBmcm9tIE9wZW4gJSJdfSw0NDE1MjYoZSl7ZS5leHBvcnRzPVsiQ2hpbGQgQ2FyZSAmIEZhbWlseSBTZXJ2aWNlcyJdfSw3Mzg0MzIoZSl7ZS5leHBvcnRzPVsiQ2hpbGRyZW4gJiBJbmZhbnRzIENsb3RoaW5nIl19LDc4Njg1OChlKXtlLmV4cG9ydHM9WyJDaGlsZHJlbiAmIEluZmFudHMgQ2xvdGhpbmcgUmV0YWlsZXJzIl19LDkwNDMzOChlKXtlLmV4cG9ydHM9WyJDaGlsZSJdfSwzOTA2NTIoZSl7ZS5leHBvcnRzPVsiQ2huZyA0VyJdfSwyMzY3OTgoZSl7ZS5leHBvcnRzPVsiQ2huZyA1MlciXX0sNTI3NDI4KGUpe2UuZXhwb3J0cz1bIkNobmcgMVciXX0sMTQ4OTA5KGUpe2UuZXhwb3J0cz1bIkNob2NvbGF0ZSAmIENvbmZlY3Rpb25lcnkiXX0sMzk0MDM5KGUpe2UuZXhwb3J0cz1bIkNob3NlbiBtYXJrZXRzIGNvdW50Il19LDk1NjQ2NChlKXtlLmV4cG9ydHM9WyJDaHJpc3RtYXMgSXNsYW5kIl19LDU3NDg5NShlKXtlLmV4cG9ydHM9WyJDaXZpbCBFbmdpbmVlcnMgJiBBcmNoaXRlY3RzIl19LDI0MzY4NyhlKXtlLmV4cG9ydHM9WyJDaWdhcnMgJiBDaWdhcmV0dGUgTWFudWZhY3R1cmluZyJdfSwxNjUxOTgoZSl7ZS5leHBvcnRzPVsiQ2xlYW5pbmcgU2VydmljZXMiXX0sMjA0NDM3KGUpe2UuZXhwb3J0cz1bIkNsZWFyaW5nLCBTZXR0bGVtZW50ICYgQ3VzdG9kaWFsIFNlcnZpY2UiXX0sODIwODY2KGUpe2UuZXhwb3J0cz1bIkNsb3NlIl19LDY4OTg0KGUpe2UuZXhwb3J0cz1bIkNsb3NlZCBFbmQgRnVuZHMiXX0sNjM2MDAxKGUpe2UuZXhwb3J0cz1bIkNsb3NlZC1lbmQgZnVuZCJdfSw2OTc1MzQoZSl7ZS5leHBvcnRzPVsiQ2xvdWQgQ29tcHV0aW5nIFNlcnZpY2VzIl19LDM1OTUzMChlKXtlLmV4cG9ydHM9WyJDcnVpc2UgTGluZXMiXX0sMjg0MDA0KGUpe2UuZXhwb3J0cz1bIkNyeXB0b2N1cnJlbmNpZXMiXX0sNTA5OTgyKGUpe2UuZXhwb3J0cz1bIkNyYWZ0ICYgTWljcm8gQnJld2VycyJdfSw0NzQ3MjgoZSl7ZS5leHBvcnRzPVsiQ3JlZGl0IFVuaW9ucyJdfSw0MDc0KGUpe2UuZXhwb3J0cz1bIkNyb2F0aWEiXX0sOTU0ODM5KGUpe2UuZXhwb3J0cz1bIkNyb3NzZXMiXX0sNTYzNjY2KGUpe2UuZXhwb3J0cz1bIkNyb3NzZXMgRG93biJdfSwxNjc2MTMoZSl7ZS5leHBvcnRzPVsiQ3Jvc3NlcyBVcCJdfSw5NjU4ODMoZSl7ZS5leHBvcnRzPVsiQ3V0bGVyeSAmIEZsYXR3YXJlIl19LDc2OTE0MChlKXtlLmV4cG9ydHM9WyJDdWJhIl19LDU4OTQxNyhlKXtlLmV4cG9ydHM9WyJDdXJhY2FvIl19LDk0NTE3MShlKXtlLmV4cG9ydHM9WyJDdXJhw6dhbyJdfSwzODczNTIoZSl7ZS5leHBvcnRzPVsiQ3VycmVuY3kgb2YgdGhlIGxvY2FsIG1hcmtldCJdfSw0NDkwNjAoZSl7ZS5leHBvcnRzPVsiQ3VycmVudCB0cmFkaW5nIGRheSJdfSw4ODQxMjMoZSl7ZS5leHBvcnRzPVsiQ3VycmVudCBBc3NldHMiXX0sMjQzNTA3KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgUmF0aW8iXX0sNDYwMTM5KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgUmF0aW8gKE1SUSkiXX0sNDk5MjY1KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgcmF0aW8gKHtwZXJpb2R9KSJdfSw2MzQ3MzcoZSl7ZS5leHBvcnRzPVsiQ3lwcnVzIl19LDEyOTgwOChlKXtlLmV4cG9ydHM9WyJDemVjaCBSZXB1YmxpYyJdfSwyNjE5OTAoZSl7ZS5leHBvcnRzPVsiQ3plY2hpYSJdfSw0OTg3NjIoZSl7ZS5leHBvcnRzPVsiQ8O0dGUgZCdJdm9pcmUiXX0sNzk5NTUzKGUpe2UuZXhwb3J0cz1bIkFPIl19LDE1MDQ3NChlKXtlLmV4cG9ydHM9WyJBRFIiXX0sODAzMDI0KGUpe2UuZXhwb3J0cz1bIkFEWCJdfSw5NjAwNjkoZSl7ZS5leHBvcnRzPVsiQVRSIl19LDQxOTUzKGUpe2UuZXhwb3J0cz1bIkFtdXNlbWVudCBQYXJrcyBhbmQgWm9vcyJdfSw3ODEwODgoZSl7ZS5leHBvcnRzPVsiQW1idWxhbmNlICYgRW1lcmdlbmN5IFNlcnZpY2VzIl19LDEwNDU1MyhlKXtlLmV4cG9ydHM9WyJBbWVyaWNhbiBTYW1vYSJdfSw5OTE0NjQoZSl7ZS5leHBvcnRzPVsiQW1lcmljYXMiXX0sMjk3NTcwKGUpe2UuZXhwb3J0cz1bIkFudGFyY3RpY2EiXX0sNzQ1ODkoZSl7ZS5leHBvcnRzPVsiQW50aWd1YSBhbmQgQmFyYnVkYSJdfSwzODAzNTAoZSl7ZS5leHBvcnRzPVsiQW50aXF1ZSBEZWFsZXJzIl19LDkyMTg0NyhlKXtlLmV4cG9ydHM9WyJBbnkiXX0sOTY1MjEzKGUpe2UuZXhwb3J0cz1bIkFuZG9ycmEiXX0sNzc3MjAoZSl7ZS5leHBvcnRzPVsiQW5nb2xhIl19LDg1NDkwMihlKXtlLmV4cG9ydHM9WyJBbmd1aWxsYSJdfSw0NzM4MzQoZSl7ZS5leHBvcnRzPVsiQW5pbWFsIEJyZWVkaW5nIl19LDY2MDY4NChlKXtlLmV4cG9ydHM9WyJBbmltYWwgRmVlZCJdfSw1NDM4NjYoZSl7ZS5leHBvcnRzPVsiQW5pbWFsIFNsYXVnaHRlcmluZyAmIFByb2Nlc3NpbmciXX0sODMxNzgxKGUpe2UuZXhwb3J0cz1bIkFubnVhbCBSZXYiXX0sMTU2OTY5KGUpe2UuZXhwb3J0cz1bIkFiYW5kb25lZCBCYWJ5IEJlYXJpc2giXX0sNzY0MTM2KGUpe2UuZXhwb3J0cz1bIkFiYW5kb25lZCBCYWJ5IEJ1bGxpc2giXX0sOTg2NTA1KGUpe2UuZXhwb3J0cz1bIkFib3ZlIl19LDY4NzQ3OShlKXsKZS5leHBvcnRzPVsiQWJvdmUgb3IgRXF1YWwiXX0sMjM5MDI3KGUpe2UuZXhwb3J0cz1bIkFjY2Vzc29yaWVzIl19LDYwMzI5MihlKXtlLmV4cG9ydHM9WyJBY2NvdW50aW5nICYgVGF4IFByZXBhcmF0aW9uIl19LDE4NzA3NShlKXtlLmV4cG9ydHM9WyJBZHVsdCBFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gJiBCcm9hZGNhc3RpbmciXX0sMjkwNzg0KGUpe2UuZXhwb3J0cz1bIkFkdWx0IFByb2R1Y3RzIFJldGFpbGVycyJdfSw3MDk5MyhlKXtlLmV4cG9ydHM9WyJBZHZhbmNlZCBFbGVjdHJvbmljIEVxdWlwbWVudCJdfSw2Mjk2NDAoZSl7ZS5leHBvcnRzPVsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgJiBUZWNobm9sb2d5Il19LDI5NDAzMyhlKXtlLmV4cG9ydHM9WyJBZHZhbmNlZCBNZWRpY2FsIEVxdWlwbWVudCBXaG9sZXNhbGUiXX0sNTgwMzQwKGUpe2UuZXhwb3J0cz1bIkFkdmFuY2VkIFBvbHltZXIiXX0sMzc1ODc2KGUpe2UuZXhwb3J0cz1bIkFkdmVudHVyZSBTcG9ydHMgRmFjaWxpdGllcyAmIFNraSBSZXNvcnRzIl19LDI2ODM2OShlKXtlLmV4cG9ydHM9WyJBZHZlcnRpc2luZyAmIE1hcmtldGluZyJdfSwxMjY4NjkoZSl7ZS5leHBvcnRzPVsiQWR2ZXJ0aXNpbmcgQWdlbmN5Il19LDI4NTY3NyhlKXtlLmV4cG9ydHM9WyJBZHZlcnRpc2luZy9NYXJrZXRpbmcgU2VydmljZXMiXX0sMjM5MDc3KGUpe2UuZXhwb3J0cz1bIkFkZCBub3RlIGZvciB7c3ltYm9sfSJdfSw4MTU3MTIoZSl7ZS5leHBvcnRzPVsiQWRkIGFsbCBzZWxlY3RlZCB0byB3YXRjaGxpc3QiXX0sNzIwNTQ2KGUpe2UuZXhwb3J0cz1bIkFkZCBhbGwgc2VsZWN0ZWQgdG8gY29tcGFyZSJdfSw5OTUyOShlKXtlLmV4cG9ydHM9WyJBZGQgdG8gZmF2b3JpdGVzIl19LDU2MDQ3MChlKXtlLmV4cG9ydHM9WyJBZGQge3N5bWJvbH0gdG8gY29tcGFyZSJdfSwyMjQwNTYoZSl7ZS5leHBvcnRzPVsiQWRkIHtzeW1ib2xOYW1lfSB0byB3YXRjaGxpc3QiXX0sOTE4MzEwKGUpe2UuZXhwb3J0cz1bIkFkaGVzaXZlIl19LDEwMzQ4NihlKXtlLmV4cG9ydHM9WyJBZGp1c3QgZmlsdGVycyJdfSwxMzA5NjkoZSl7ZS5leHBvcnRzPVsiQWVyb3NwYWNlICYgRGVmZW5zZSJdfSw1NzI5NjIoZSl7ZS5leHBvcnRzPVsiQWZ0ZXIgQ2xvc2UiXX0sNTMyMDI4KGUpe2UuZXhwb3J0cz1bIkFmdGVyIGhvdXJzIGdhaW5lcnMiXX0sOTkzMTAxKGUpe2UuZXhwb3J0cz1bIkFmZ2hhbmlzdGFuIl19LDY1MDM0NChlKXtlLmV4cG9ydHM9WyJBZnJpY2EiXX0sNDgyMTAxKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJhbCBNYWNoaW5lcnkiXX0sNjg1MTUwKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJhbCBCaW90ZWNobm9sb2d5Il19LDM5MTY3MihlKXtlLmV4cG9ydHM9WyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIl19LDM2Mjg3OChlKXtlLmV4cG9ydHM9WyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIFdob2xlc2FsZSJdfSw2MDI2ODAoZSl7ZS5leHBvcnRzPVsiQWdyaWN1bHR1cmFsIENvbW1vZGl0aWVzL01pbGxpbmciXX0sODg3MzkyKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJlIFN1cHBvcnQgU2VydmljZXMiXX0sMjA4OTY0KGUpe2UuZXhwb3J0cz1bIkFpciAmIEdhcyBDb21wcmVzc29ycyJdfSw3MDQ4NDYoZSl7ZS5leHBvcnRzPVsiQWlyIEZyZWlnaHQiXX0sODA3MDQyKGUpe2UuZXhwb3J0cz1bIkFpciBGcmVpZ2h0ICYgQ291cmllciBTZXJ2aWNlcyJdfSw5NjQ4MTAoZSl7ZS5leHBvcnRzPVsiQWlyIEZyZWlnaHQgJiBMb2dpc3RpY3MiXX0sNzkwNDkzKGUpe2UuZXhwb3J0cz1bIkFpciBGcmVpZ2h0L0NvdXJpZXJzIl19LDU2ODMzNihlKXtlLmV4cG9ydHM9WyJBaXIgRnJlaWdodC9EZWxpdmVyeSBTZXJ2aWNlcyJdfSw2NDgwOTEoZSl7ZS5leHBvcnRzPVsiQWlyY3JhZnQgRXF1aXBtZW50IFdob2xlc2FsZSJdfSw3MDIxNzEoZSl7ZS5leHBvcnRzPVsiQWlyY3JhZnQgUGFydHMgTWFudWZhY3R1cmluZyJdfSw2MDgyNzYoZSl7ZS5leHBvcnRzPVsiQWlybGluZSBDYXRlcmluZyBTZXJ2aWNlcyJdfSwzNTA0MDMoZSl7ZS5leHBvcnRzPVsiQWlybGluZXMiXX0sNzg2NDcwKGUpe2UuZXhwb3J0cz1bIkFpcnBvcnQgT3BlcmF0b3JzIl19LDMwMjMwMyhlKXtlLmV4cG9ydHM9WyJBaXJwb3J0IFNlcnZpY2VzIl19LDcxNDUwMChlKXtlLmV4cG9ydHM9WyJBbHRlcm5hdGl2ZSBNZWRpY2luZSJdfSwyMTAwODEoZSl7ZS5leHBvcnRzPVsiQWx0ZXJuYXRpdmUgTWVkaWNpbmUgRmFjaWxpdGllcyJdfSwxOTU3NDUoZSl7ZS5leHBvcnRzPVsiQWx0ZXJuYXRpdmUgUG93ZXIgR2VuZXJhdGlvbiJdfSw2Njc5OTMoZSl7ZS5leHBvcnRzPVsiQWx1bWludW0iXX0sMjA3NzcxKGUpe2UuZXhwb3J0cz1bIkFsdW1pbnVtIFJvbGxpbmciXX0sMjgwMDI1KGUpe2UuZXhwb3J0cz1bIkFsYmFuaWEiXX0sMjk2MTgxKGUpe2UuZXhwb3J0cz1bIkFsZ2VyaWEiXX0sMjMzNjkwKGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw5NjIwMTYoZSl7ZS5leHBvcnRzPVsiQWxsIE90aGVyIEZvb2QgTWFudWZhY3R1cmluZyJdfSw5MzA1NzgoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgSGlnaCJdfSwyNTM0NzEoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgTG93Il19LDgxNTQoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgUGVyZiJdfSw0ODYzMDIoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgUGVyZm9ybWFuY2UiXX0sMzIyOTg2KGUpe2UuZXhwb3J0cz1bIkFsbCBhYm91dCBuZXcgc2NyZWVuZXIiXX0sMjQxMzE3KGUpe2UuZXhwb3J0cz1bIkFsbC10aW1lIGhpZ2giXX0sNjI1NDg4KGUpe2UuZXhwb3J0cz1bIkFsbC10aW1lIGxvdyJdfSw1MjY3MzQoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbC9Gb290d2VhciJdfSw5MDI5ODQoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbC9Gb290d2VhciBSZXRhaWwiXX0sMjQxNzg3KGUpe2UuZXhwb3J0cz1bIkFwcGFyZWwgJiBBY2Nlc3NvcmllcyJdfSwzOTU3MjUoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbCAmIEFjY2Vzc29yaWVzIFJldGFpbGVycyJdfSw5MjgwOShlKXtlLmV4cG9ydHM9WyJBcHBhcmVsIFdob2xlc2FsZSJdfSwzMDI0NDcoZSl7CmUuZXhwb3J0cz1bIkFwcGxpYW5jZSAmIEhvdXNld2FyZSBXaG9sZXNhbGUiXX0sMTE4NDAoZSl7ZS5leHBvcnRzPVsiQXBwbGlhbmNlcywgVG9vbHMgJiBIb3VzZXdhcmVzIl19LDg0MjE1NChlKXtlLmV4cG9ydHM9WyJBcHBsaWNhdGlvbiBTb2Z0d2FyZSJdfSwxNTc1MzgoZSl7ZS5leHBvcnRzPVsiQXBwbGllZCBmaWx0ZXJzIGNvdW50Il19LDUyNjc4NShlKXtlLmV4cG9ydHM9WyJBcHIiXX0sNTgxMjYwKGUpe2UuZXhwb3J0cz1bIkFxdWFjdWx0dXJlIl19LDExNDc1NihlKXtlLmV4cG9ydHM9WyJBcnViYSJdfSw4NTc1ODcoZSl7ZS5leHBvcnRzPVsiQXJnZW50aW5hIl19LDc3OTk1MihlKXtlLmV4cG9ydHM9WyJBcm1lbmlhIl19LDg4NjQ2NShlKXtlLmV4cG9ydHM9WyJBcm1zICYgQW1tdW5pdGlvbnMgTWFudWZhY3R1cmluZyJdfSw3NjU3NjUoZSl7ZS5leHBvcnRzPVsiQXJvb24gRG93biJdfSwyMTM3MDMoZSl7ZS5leHBvcnRzPVsiQXJvb24gRG93biAoMTQpIl19LDE1ODM5NihlKXtlLmV4cG9ydHM9WyJBcm9vbiBVcCJdfSw0NzM4NShlKXtlLmV4cG9ydHM9WyJBcm9vbiBVcCAoMTQpIl19LDY4OTE4MihlKXtlLmV4cG9ydHM9WyJBc2lhIl19LDc2NDE3MShlKXtlLmV4cG9ydHM9WyJBc2lhIC8gUGFjaWZpYyJdfSw2NzI3MTAoZSl7ZS5leHBvcnRzPVsiQXNrIl19LDc0ODI5MChlKXtlLmV4cG9ydHM9WyJBc3NldCB0dXJub3ZlciAoe3BlcmlvZH0pIl19LDY2Mzg2MChlKXtlLmV4cG9ydHM9WyJBc3NldHMiXX0sNDY1MjIyKGUpe2UuZXhwb3J0cz1bIkF1dG9tYXRpYyBWZW5kaW5nIE1hY2hpbmVzIl19LDI5ODY2MihlKXtlLmV4cG9ydHM9WyJBdXRvbW9iaWxlcyAmIE11bHRpIFV0aWxpdHkgVmVoaWNsZXMiXX0sMzY5NjQ2KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQWNjZXNzb3JpZXMiXX0sNTQzMTU3KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQWZ0ZXJtYXJrZXQiXX0sMTc1NzQ0KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQmF0dGVyaWVzIl19LDM4NTU5MShlKXtlLmV4cG9ydHM9WyJBdXRvbW90aXZlIEJvZHkgUGFydHMiXX0sOTU3MDg5KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgUGFydHMgJiBBY2Nlc3NvcmllcyBSZXRhaWxlcnMiXX0sMTU3MjU0KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgU3lzdGVtcyJdfSwxMjU2NjIoZSl7ZS5leHBvcnRzPVsiQXV0byAmIFRydWNrIE1hbnVmYWN0dXJlcnMiXX0sODc1NTc5KGUpe2UuZXhwb3J0cz1bIkF1dG8gJiBUcnVjayBQYXJ0cyBXaG9sZXNhbGUiXX0sODc4NzIzKGUpe2UuZXhwb3J0cz1bIkF1dG8gJiBUcnVjayBXaG9sZXNhbGUiXX0sOTU4MjM1KGUpe2UuZXhwb3J0cz1bIkF1dG8gQ2xlYW5pbmcgUHJvZHVjdHMiXX0sMzcwMTIoZSl7ZS5leHBvcnRzPVsiQXV0byBQYXJ0czogT0VNIl19LDg5ODk4NyhlKXtlLmV4cG9ydHM9WyJBdXRvIFJlZnJlc2giXX0sOTk2OTcyKGUpe2UuZXhwb3J0cz1bIkF1dG8gVmVoaWNsZXMsIFBhcnRzICYgU2VydmljZSBSZXRhaWxlcnMiXX0sNjYxOTgzKGUpe2UuZXhwb3J0cz1bIkF1dG8sIFRydWNrICYgTW90b3JjeWNsZSBQYXJ0cyJdfSw5Mzc2MihlKXtlLmV4cG9ydHM9WyJBdWciXX0sMjc5MjMzKGUpe2UuZXhwb3J0cz1bIkF1c3RyYWxpYSJdfSwyMzgyNzgoZSl7ZS5leHBvcnRzPVsiQXVzdHJpYSJdfSw4MTMwNzcoZSl7ZS5leHBvcnRzPVsiQXZhaWwgQ29pbnMiXX0sODM1OTYxKGUpe2UuZXhwb3J0cz1bIkF2YWlsYWJsZSBDb2lucyJdfSwzMjMzOTIoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBEYXkgUmFuZ2UgKDE0KSJdfSw1NzgxOTgoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBEaXJlY3Rpb25hbCBJbmRleCAoMTQpIl19LDMxNTQ2MihlKXtlLmV4cG9ydHM9WyJBdmVyYWdlIFRydWUgUmFuZ2UgKDE0KSJdfSwyOTc5MzAoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBWb2x1bWUgKDEwIGRheSkiXX0sNTY2NDM0KGUpe2UuZXhwb3J0cz1bIkF2ZXJhZ2UgVm9sdW1lICgzMCBkYXkpIl19LDk3NzA2MihlKXtlLmV4cG9ydHM9WyJBdmVyYWdlIFZvbHVtZSAoNjAgZGF5KSJdfSw1NzI1ODQoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBWb2x1bWUgKDkwIGRheSkiXX0sMjUyNzc4KGUpe2UuZXhwb3J0cz1bIkF2ZyBWb2wgKDEwKSJdfSw0OTU2MzIoZSl7ZS5leHBvcnRzPVsiQXZnIFZvbCAoMzApIl19LDI2OTE4MShlKXtlLmV4cG9ydHM9WyJBdmcgVm9sICg2MCkiXX0sNzk3NjA0KGUpe2UuZXhwb3J0cz1bIkF2ZyBWb2wgKDkwKSJdfSwzNDQ1NTIoZSl7ZS5leHBvcnRzPVsiQXdlc29tZSBPc2NpbGxhdG9yIl19LDQ2ODE3KGUpe2UuZXhwb3J0cz1bIkF6ZXJiYWlqYW4iXX0sNDMwNTMwKGUpe2UuZXhwb3J0cz1bIkJCIExvdyJdfSw5MTM5OTIoZSl7ZS5leHBvcnRzPVsiQkIgVXAiXX0sOTQ5ODI1KGUpe2UuZXhwb3J0cz1bIkJCUG93ZXIiXX0sNDI1Mzc4KGUpe2UuZXhwb3J0cz1bIkJvdHN3YW5hIl19LDE5NjcwMChlKXtlLmV4cG9ydHM9WyJCb3R0bGVkIFdhdGVyICYgSWNlIl19LDczMDc2MyhlKXtlLmV4cG9ydHM9WyJCb3V2ZXQgSXNsYW5kIl19LDkzMTMwNChlKXtlLmV4cG9ydHM9WyJCb2xpdmlhIl19LDE5NjY5MShlKXtlLmV4cG9ydHM9WyJCb2xsaW5nZXIgTG93ZXIgQmFuZCAoMjApIl19LDk5NTYzMShlKXtlLmV4cG9ydHM9WyJCb2xsaW5nZXIgVXBwZXIgQmFuZCAoMjApIl19LDU1NzIzNShlKXtlLmV4cG9ydHM9WyJCb25haXJlLCBTaW50IEV1c3RhdGl1cyBhbmQgU2FiYSJdfSw5NzYzNDYoZSl7ZS5leHBvcnRzPVsiQm9vayAmIE1hZ2F6aW5lIFJldGFpbGVycyJdfSwyNDUzMTcoZSl7ZS5leHBvcnRzPVsiQm9vayB2YWx1ZSBwZXIgc2hhcmUgKHtwZXJpb2R9KSJdfSw0NDYyNDcoZSl7ZS5leHBvcnRzPVsiQm9vayBQcmludGluZyBTZXJ2aWNlcyJdfSw3NTAxODIoZSl7ZS5leHBvcnRzPVsiQm9vayBQdWJsaXNoaW5nIl19LDk3MDY5MShlKXtlLmV4cG9ydHM9WyJCb3NuaWEgYW5kIEhlcnplZ292aW5hIl19LDUzNTkwOChlKXtlLmV4cG9ydHM9WyJCYXRocm9vbSBGaXh0dXJlcyJdfSw2ODg1NTIoZSl7CmUuZXhwb3J0cz1bIkJhdHRlcmllcyAmIFVuaW50ZXJydXB0aWJsZSBQb3dlciBzdXBwbGllcyJdfSw0OTgyODgoZSl7ZS5leHBvcnRzPVsiQmF1eGl0ZSBNaW5pbmciXX0sNTA4NTQ5KGUpe2UuZXhwb3J0cz1bIkJhYnkgRm9vZCJdfSwzMzUyNTkoZSl7ZS5leHBvcnRzPVsiQmFoYW1hcyJdfSw1Nzg2NjUoZSl7ZS5leHBvcnRzPVsiQmFocmFpbiJdfSw5NDQxNTUoZSl7ZS5leHBvcnRzPVsiQmFsYW5jZSBTaGVldCJdfSw2ODg5NjkoZSl7ZS5leHBvcnRzPVsiQmFsbCAmIFJvbGxlciBCZWFyaW5ncyJdfSw0NTIwMTUoZSl7ZS5leHBvcnRzPVsiQmFuZ2xhZGVzaCJdfSw0OTc4MzcoZSl7ZS5leHBvcnRzPVsiQmFua3MiXX0sODI0NTk1KGUpe2UuZXhwb3J0cz1bIkJhbnF1ZXQgSGFsbHMgJiBDYXRlcmluZyJdfSw4MjkzODcoZSl7ZS5leHBvcnRzPVsiQmFyYmFkb3MiXX0sNzE2MTEoZSl7ZS5leHBvcnRzPVsiQmFzaWMgRVBTIChGWSkiXX0sMTAzNzkxKGUpe2UuZXhwb3J0cz1bIkJhc2ljIEVQUyAoVFRNKSJdfSw0MDExNjgoZSl7ZS5leHBvcnRzPVsiQmFzaWMgTWF0ZXJpYWxzIl19LDMwMzU3NShlKXtlLmV4cG9ydHM9WyJCZXRhIDVZIl19LDg5NzAwNyhlKXtlLmV4cG9ydHM9WyJCZXRhIC0gMyBZZWFyIl19LDEyODc5MShlKXtlLmV4cG9ydHM9WyJCZXRhIC0gNSBZZWFyIl19LDg2NzA0MChlKXtlLmV4cG9ydHM9WyJCZXRhIDNZIl19LDM2NTY2MChlKXtlLmV4cG9ydHM9WyJCZXR3ZWVuIl19LDc5Mjg2NihlKXtlLmV4cG9ydHM9WyJCZXZlcmFnZXMgKFByb2R1Y3Rpb24vRGlzdHJpYnV0aW9uKSJdfSw2NTc0NzEoZSl7ZS5leHBvcnRzPVsiQmV2ZXJhZ2VzOiBBbGNvaG9saWMiXX0sODkzODg1KGUpe2UuZXhwb3J0cz1bIkJldmVyYWdlczogTm9uLUFsY29ob2xpYyJdfSw0NjI4OTYoZSl7ZS5leHBvcnRzPVsiQmVhcmlzaCBFbmd1bGZpbmciXX0sNDUwOTA3KGUpe2UuZXhwb3J0cz1bIkJlYXJpc2ggSGFyYW1pIl19LDI3MzE0MihlKXtlLmV4cG9ydHM9WyJCZWF1dHkgU3VwcGx5IFNob3AiXX0sNTAxMTYoZSl7ZS5leHBvcnRzPVsiQmVlZiAmIFZlYWwgRmFybWluZyJdfSw5NDk2MzYoZSl7ZS5leHBvcnRzPVsiQmVlciwgV2luZSAmIExpcXVvciBTdG9yZXMiXX0sNzAwNTA4KGUpe2UuZXhwb3J0cz1bIkJlZm9yZSBPcGVuIl19LDUyMzU1MihlKXtlLmV4cG9ydHM9WyJCZWxhcnVzIl19LDgzMzI0KGUpe2UuZXhwb3J0cz1bIkJlbGdpdW0iXX0sNzg3NzAxKGUpe2UuZXhwb3J0cz1bIkJlbGl6ZSJdfSwxNzc1MDYoZSl7ZS5leHBvcnRzPVsiQmVsb3ciXX0sMjA0ODA0KGUpe2UuZXhwb3J0cz1bIkJlbG93IG9yIEVxdWFsIl19LDU4ODg0OChlKXtlLmV4cG9ydHM9WyJCZW5pbiJdfSwzMTQ3MzcoZSl7ZS5leHBvcnRzPVsiQmVybXVkYSJdfSwyODQ0NDIoZSl7ZS5leHBvcnRzPVsiQmh1dGFuIl19LDg5NDczOChlKXtlLmV4cG9ydHM9WyJCaWN5Y2xlIE1hbnVmYWN0dXJpbmciXX0sNDI5NTA4KGUpe2UuZXhwb3J0cz1bIkJpZCJdfSw4Njg4MTAoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IG1vbnRoLiJdfSw5MTM5NTUoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IHllYXIuIl19LDUzMjMxNihlKXtlLmV4cG9ydHM9WyJCaW8gTWVkaWNhbCBEZXZpY2VzIl19LDYzNTE1NyhlKXtlLmV4cG9ydHM9WyJCaW8gRGlhZ25vc3RpY3MgJiBUZXN0aW5nIl19LDY0ODI0OShlKXtlLmV4cG9ydHM9WyJCaW8gVGhlcmFwZXV0aWMgRHJ1Z3MiXX0sNzk2MjYoZSl7ZS5leHBvcnRzPVsiQmlvZGllc2VsIl19LDU1NzIzOShlKXtlLmV4cG9ydHM9WyJCaW9tYXNzICYgQmlvZ2FzIEZ1ZWxzIl19LDYzNzQwOShlKXtlLmV4cG9ydHM9WyJCaW9tZXRyaWMgUHJvZHVjdHMiXX0sMzQ1NzUzKGUpe2UuZXhwb3J0cz1bIkJpb3BoYXJtYWNldXRpY2FscyJdfSwxNzk0MTMoZSl7ZS5leHBvcnRzPVsiQmlvdGVjaG5vbG9neSJdfSw4OTIxNDMoZSl7ZS5leHBvcnRzPVsiQmlvdGVjaG5vbG9neSAmIE1lZGljYWwgUmVzZWFyY2giXX0sOTA0NzU3KGUpe2UuZXhwb3J0cz1bIkJpcnRoIENvbnRyb2wgUHJvZHVjdHMiXX0sMzkxOTA2KGUpe2UuZXhwb3J0cz1bIkJydW5laSJdfSw4MjEzOTkoZSl7ZS5leHBvcnRzPVsiQnJhbmRpbmcgJiBOYW1pbmciXX0sNjEyOTY3KGUpe2UuZXhwb3J0cz1bIkJyYXppbCJdfSw3ODkxODAoZSl7ZS5leHBvcnRzPVsiQnJlYWQgJiBCYWtlcnkgUHJvZHVjdCBNYW51ZmFjdHVyaW5nIl19LDI0MzA0MihlKXtlLmV4cG9ydHM9WyJCcmVha2Zhc3QgQ2VyZWFsIE1hbnVmYWN0dXJpbmciXX0sNDgwNDEzKGUpe2UuZXhwb3J0cz1bIkJyZXdlcnMiXX0sNzQ0MjQ2KGUpe2UuZXhwb3J0cz1bIkJyaXRpc2ggSW5kaWFuIE9jZWFuIFRlcnJpdG9yeSJdfSw2NTMzNDAoZSl7ZS5leHBvcnRzPVsiQnJpdGlzaCBWaXJnaW4gSXNsYW5kcyJdfSw4MTg2MTYoZSl7ZS5leHBvcnRzPVsiQnJvYWRjYXN0aW5nIl19LDk1MTk2MyhlKXtlLmV4cG9ydHM9WyJCcm9hZGNhc3RpbmcgRXF1aXBtZW50Il19LDYyODQ4MShlKXtlLmV4cG9ydHM9WyJCcm9rZXJhZ2UgU2VydmljZXMiXX0sNjU1MDc3KGUpe2UuZXhwb3J0cz1bIkJyb29tcywgQnJ1c2hlcyAmIER1c3RwYW5zIl19LDE2MTcxNyhlKXtlLmV4cG9ydHM9WyJCdWlsZGVyIE1lcmNoYW50cyJdfSwzODY3MTkoZSl7ZS5leHBvcnRzPVsiQnVpbGRpbmcgQ29udHJhY3RvcnMiXX0sMjU3MjM0KGUpe2UuZXhwb3J0cz1bIkJ1aWxkaW5nIFByb2R1Y3RzIl19LDcxNDAzMShlKXtlLmV4cG9ydHM9WyJCdWxnYXJpYSJdfSwzMzk1MjcoZSl7ZS5leHBvcnRzPVsiQnVsbGlzaCBFbmd1bGZpbmciXX0sNDYzODk2KGUpe2UuZXhwb3J0cz1bIkJ1bGxpc2ggSGFyYW1pIl19LDE5ODI5NyhlKXtlLmV4cG9ydHM9WyJCdXJraW5hIEZhc28iXX0sNzU4MjIoZSl7ZS5leHBvcnRzPVsiQnVydW5kaSJdfSwzNzI2NDcoZSl7ZS5leHBvcnRzPVsiQnVzaW5lc3MgU2VydmljZXMiXX0sOTczNShlKXtlLmV4cG9ydHM9WyJCdXNpbmVzcyBTdXBwb3J0IFNlcnZpY2VzIl19LDg3MDI5OShlKXtlLmV4cG9ydHM9WyJCdXNpbmVzcyBTdXBwb3J0IFN1cHBsaWVzIl19LDc4MzMxOChlKXsKZS5leHBvcnRzPVsiR292ZXJubWVudCJdfSw1NjUyOTQoZSl7ZS5leHBvcnRzPVsiR29sZCJdfSw2ODM1KGUpe2UuZXhwb3J0cz1bIkdvbGQgTWluaW5nIl19LDY5ODMyNShlKXtlLmV4cG9ydHM9WyJHb2xmIENvdXJzZXMiXX0sNzczOTI2KGUpe2UuZXhwb3J0cz1bIkdvb2R3aWxsIl19LDM2NzY5MChlKXtlLmV4cG9ydHM9WyJHYWJvbiJdfSw3MDg3ODUoZSl7ZS5leHBvcnRzPVsiR2FtYmlhIl19LDIyMDE1NihlKXtlLmV4cG9ydHM9WyJHYW1ibGluZyAmIEdhbWluZyBNYWNoaW5lIE1hbnVmYWN0dXJlcnMiXX0sNTg0ODQxKGUpe2UuZXhwb3J0cz1bIkdhbWVzLCBUb3lzICYgQ2hpbGRyZW4gVmVoaWNsZXMiXX0sNDg1OTM1KGUpe2UuZXhwb3J0cz1bIkdhbWluZyBNYWNoaW5lIE9wZXJhdG9ycyJdfSw5MzAwNjkoZSl7ZS5leHBvcnRzPVsiR2FwICUiXX0sMjM3OTk2KGUpe2UuZXhwb3J0cz1bIkdhcyBEaXN0cmlidXRvcnMiXX0sNTI1MTExKGUpe2UuZXhwb3J0cz1bIkdhcyBEcmlsbGluZyAtIE9uc2hvcmUiXX0sNjY3MzE2KGUpe2UuZXhwb3J0cz1bIkdhc29saW5lIHN0YXRpb25zIl19LDU2MzUzMChlKXtlLmV4cG9ydHM9WyJHZXQgcmVhZHkgdG8gc3dpdGNoIHRvIHRoZSBuZXcgU3RvY2sgU2NyZWVuZXIiXX0sOTEwODIxKGUpe2UuZXhwb3J0cz1bIkdlbmVyYWwiXX0sODU1MTc3KGUpe2UuZXhwb3J0cz1bIkdlbmVyYWwgRWR1Y2F0aW9uIFNlcnZpY2VzIl19LDI0MTk5NShlKXtlLmV4cG9ydHM9WyJHZW5lcmFsIEdvdmVybm1lbnQiXX0sMzQ2MTQ2KGUpe2UuZXhwb3J0cz1bIkdlbmVyaWMgUGhhcm1hY2V1dGljYWxzIl19LDgyNDEyMyhlKXtlLmV4cG9ydHM9WyJHZW9waHlzaWNhbCBTdXJ2ZXlpbmcgJiBNYXBwaW5nIFNlcnZpY2VzIl19LDc5NTk1MShlKXtlLmV4cG9ydHM9WyJHZW9yZ2lhIl19LDQ2NjY5OChlKXtlLmV4cG9ydHM9WyJHZXJtYW55Il19LDQ5ODY3OShlKXtlLmV4cG9ydHM9WyJHaGFuYSJdfSw3NzEwMTcoZSl7ZS5leHBvcnRzPVsiR2licmFsdGFyIl19LDE1MzI0MShlKXtlLmV4cG9ydHM9WyJHaWZ0LCBOb3ZlbHR5ICYgU291dmVuaXIgU3RvcmVzIl19LDIzNjIyMShlKXtlLmV4cG9ydHM9WyJHbGFzcyBDb250YWluZXJzICYgUGFja2FnaW5nIl19LDYwOTQ2MShlKXtlLmV4cG9ydHM9WyJHbGFzc2VzLCBTcGVjdGFjbGVzICYgQ29udGFjdCBsZW5zZXMiXX0sNjA1Njc0KGUpe2UuZXhwb3J0cz1bIkdsb2JhbCBjdXJyZW5jeSJdfSw3NTAyNzcoZSl7ZS5leHBvcnRzPVsiR3JhaW4gKENyb3ApIFByb2R1Y3Rpb24iXX0sMTIzNzM2KGUpe2UuZXhwb3J0cz1bIkdyYXZlc3RvbmUgRG9qaSJdfSwzMTgzOTkoZSl7ZS5leHBvcnRzPVsiR3JlZW5sYW5kIl19LDc5MzI4OShlKXtlLmV4cG9ydHM9WyJHcmVlY2UiXX0sOTMyMDg2KGUpe2UuZXhwb3J0cz1bIkdyZW5hZGEiXX0sMzc4Mzk5KGUpe2UuZXhwb3J0cz1bIkdyb3NzIE1hcmdpbiJdfSw5MDA5NDUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgTWFyZ2luIChGWSkiXX0sNjYxODkzKGUpe2UuZXhwb3J0cz1bIkdyb3NzIE1hcmdpbiAoVFRNKSJdfSwzNTYxMjUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgUHJvZml0IChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sODcwMjYyKGUpe2UuZXhwb3J0cz1bIkdyb3NzIFByb2ZpdCAoRlkpIl19LDQyNjY1MihlKXtlLmV4cG9ydHM9WyJHcm9zcyBQcm9maXQgKE1SUSkiXX0sMTkxNTc0KGUpe2UuZXhwb3J0cz1bIkdyb3NzIFByb2ZpdCAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDEwNzkwNChlKXtlLmV4cG9ydHM9WyJHcm9zcyBQcm9maXQgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3NjEzMDUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgUHJvZml0IChUVE0gWW9ZIEdyb3d0aCkiXX0sOTY2NTA1KGUpe2UuZXhwb3J0cz1bIkdyb3NzIG1hcmdpbiAoe3BlcmlvZH0pIl19LDM5NzYwMihlKXtlLmV4cG9ydHM9WyJHcm9zcyBwcm9maXQgKHtwZXJpb2R9KSJdfSwzMjkyOTEoZSl7ZS5leHBvcnRzPVsiR3JvdW5kIEZyZWlnaHQgJiBMb2dpc3RpY3MiXX0sODYyOTQ5KGUpe2UuZXhwb3J0cz1bIkdyb3VwIl19LDc5MDY1NihlKXtlLmV4cG9ydHM9WyJHcm91cHMiXX0sMjQyMTE2KGUpe2UuZXhwb3J0cz1bIkd1eWFuYSJdfSwxNjQ4NzcoZSl7ZS5leHBvcnRzPVsiR3VhZGVsb3VwZSJdfSw1NDQzMjUoZSl7ZS5leHBvcnRzPVsiR3VhbSJdfSw4Nzc0ODcoZSl7ZS5leHBvcnRzPVsiR3VhdGVtYWxhIl19LDQwODkxNihlKXtlLmV4cG9ydHM9WyJHdWVybnNleSJdfSw1ODQzMyhlKXtlLmV4cG9ydHM9WyJHdWlkZWQgVG91ciBPcGVyYXRvcnMiXX0sNDM2NDU1KGUpe2UuZXhwb3J0cz1bIkd1aW5lYSJdfSwzMDgyMjkoZSl7ZS5leHBvcnRzPVsiR3VpbmVhLUJpc3NhdSJdfSw3MTc3ODEoZSl7ZS5leHBvcnRzPVsiR3ltcywgRml0bmVzcyBhbmQgU3BhIENlbnRlcnMiXX0sMjM3MjQxKGUpe2UuZXhwb3J0cz1bIkRFQlQvRVFVSVRZIl19LDI4Nzk5OChlKXtlLmV4cG9ydHM9WyJEUiJdfSw5ODUyNTkoZSl7ZS5leHBvcnRzPVsiRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSBDb2x1bW4gU2V0ICd7bmFtZX0nID8iXX0sMjc3MDExKGUpe2UuZXhwb3J0cz1bIkRvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgU2NyZWVuICd7bmFtZX0nID8iXX0sODMyNTYyKGUpe2UuZXhwb3J0cz1bIkRvY3RvcidzIE9mZmljZSJdfSw1MjQ1NyhlKXtlLmV4cG9ydHM9WyJEb2xscyAmIFN0dWZmZWQgVG95cyJdfSwxOTQzMjYoZSl7ZS5leHBvcnRzPVsiRG9taW5pY2EiXX0sODE4NjA0KGUpe2UuZXhwb3J0cz1bIkRvbWluaWNhbiBSZXB1YmxpYyJdfSwzNTE5NjMoZSl7ZS5leHBvcnRzPVsiRG9uY2hDaDIwIExvdyJdfSw2MTc0NjgoZSl7ZS5leHBvcnRzPVsiRG9uY2hDaDIwIFVwIl19LDYwODY1NihlKXtlLmV4cG9ydHM9WyJEb25jaGlhbiBDaGFubmVscyBMb3dlciBCYW5kICgyMCkiXX0sMzc4MDI0KGUpe2UuZXhwb3J0cz1bIkRvbmNoaWFuIENoYW5uZWxzIFVwcGVyIEJhbmQgKDIwKSJdfSwxODIxNDMoZSl7ZS5leHBvcnRzPVsiRG9vcnMgJiBXaW5kb3cgRnJhbWVzIl19LDg4NDc4MChlKXsKZS5leHBvcnRzPVsiRGF0YSBQcm9jZXNzaW5nIFNlcnZpY2VzIl19LDUwNzcyOShlKXtlLmV4cG9ydHM9WyJEYXRlIl19LDc4OTAxNShlKXtlLmV4cG9ydHM9WyJEYWlyeSBQcm9kdWN0cyJdfSw0OTUyMTAoZSl7ZS5leHBvcnRzPVsiRGVidCJdfSwyNTk2NShlKXtlLmV4cG9ydHM9WyJEZWJ0L0VxIl19LDMxNTA5MihlKXtlLmV4cG9ydHM9WyJEZWJ0L0VxdWl0eSwgTVJRIl19LDU0NzM2MihlKXtlLmV4cG9ydHM9WyJEZWJ0IHRvIEFzc2V0cyJdfSwzMDY5NjYoZSl7ZS5leHBvcnRzPVsiRGVidCB0byBFcXVpdHkgUmF0aW8gKE1SUSkiXX0sNzY5MDM2KGUpe2UuZXhwb3J0cz1bIkRlYyJdfSw4MjQ0MDMoZSl7ZS5leHBvcnRzPVsiRGVlcCBTZWEgRnJlaWdodCJdfSwyMjk1MjUoZSl7ZS5leHBvcnRzPVsiRGVsYXllZCJdfSw0MzE0NDEoZSl7ZS5leHBvcnRzPVsiRGVsZXRlIl19LDg1MjUwMShlKXtlLmV4cG9ydHM9WyJEZW5tYXJrIl19LDQzNjk3MChlKXtlLmV4cG9ydHM9WyJEZXBhcnRtZW50L1NwZWNpYWx0eSBSZXRhaWwgU3RvcmVzIl19LDQxNTEwNShlKXtlLmV4cG9ydHM9WyJEZXBhcnRtZW50IFN0b3JlcyJdfSw3MTQ3NDUoZSl7ZS5leHBvcnRzPVsiRGVwb3NpdGFyeSBSZWNlaXB0Il19LDM5Nzk4NyhlKXtlLmV4cG9ydHM9WyJEZXNjcmlwdGlvbiJdfSw5OTQwMjUoZSl7ZS5leHBvcnRzPVsiRGVzY3JpcHRpdmUiXX0sNzAyMjA2KGUpe2UuZXhwb3J0cz1bIkRlc2lnbiBTZXJ2aWNlcyJdfSwxODgzNjIoZSl7ZS5leHBvcnRzPVsiRGl2IFBhaWQiXX0sOTIyNzE0KGUpe2UuZXhwb3J0cz1bIkRpdiBQcmVmIl19LDQzODgxMChlKXtlLmV4cG9ydHM9WyJEaXYgWWllbGQgRldEIl19LDExNTMwNChlKXtlLmV4cG9ydHM9WyJEaXYgcGVyIFNoYXJlIChGWSkiXX0sMTExODI5KGUpe2UuZXhwb3J0cz1bIkRpdiBwZXIgU2hhcmUgKE1SUSkiXX0sODgyOTE5KGUpe2UuZXhwb3J0cz1bIkRpdmVyc2lmaWVkIENoZW1pY2FscyJdfSw2NjkxODUoZSl7ZS5leHBvcnRzPVsiRGl2ZXJzaWZpZWQgSW52ZXN0bWVudCBTZXJ2aWNlcyJdfSwzNjAwNihlKXtlLmV4cG9ydHM9WyJEaXZlcnNpZmllZCBSRUlUcyJdfSw5MDM3MzEoZSl7ZS5leHBvcnRzPVsiRGl2ZXJzaWZpZWQgVHJhZGluZyAmIERpc3RyaWJ1dGluZyJdfSw5NzY2MDcoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmQgWWllbGQgRm9yd2FyZCJdfSw0NTc1MDUoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmQgcGF5b3V0IHJhdGlvICh7cGVyaW9kfSkiXX0sNjU5MjY3KGUpe2UuZXhwb3J0cz1bIkRpdmlkZW5kcyJdfSw1NTAyMTYoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIFBhaWQgKEZZKSJdfSw0OTMyMDAoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIFByZWZlcnJlZCJdfSwyNzQ3MjkoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIHBlciBTaGFyZSAoRlkpIl19LDI5MjIyMChlKXtlLmV4cG9ydHM9WyJEaXZpZGVuZHMgcGVyIFNoYXJlIChNUlEpIl19LDU1Nzk0MShlKXtlLmV4cG9ydHM9WyJEaXZpZGVuZHMgcGVyIHNoYXJlIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sNTc4NTcxKGUpe2UuZXhwb3J0cz1bIkRpYWdub3N0aWMgJiBUZXN0aW5nIFN1YnN0YW5jZXMiXX0sMTg4MTIxKGUpe2UuZXhwb3J0cz1bIkRpYWdub3N0aWMgJiBUZXN0aW5nIFN1YnN0YW5jZXMgTWFudWZhY3R1cmVycyJdfSw5NTIwODkoZSl7ZS5leHBvcnRzPVsiRGlhbW9uZCBNaW5pbmciXX0sMTM3Mzc3KGUpe2UuZXhwb3J0cz1bIkRpZ2l0YWwgTWVkaWEgQWdlbmNpZXMiXX0sNDM2NDgwKGUpe2UuZXhwb3J0cz1bIkRpZ2l0YWwgUHVibGlzaGluZyJdfSwyNTE0OTYoZSl7ZS5leHBvcnRzPVsiRGlyZWN0IE1hcmtldGluZyJdfSw4NjUwMzEoZSl7ZS5leHBvcnRzPVsiRGlyZWN0b3J5IFB1Ymxpc2hpbmciXX0sNTE4MTE3KGUpe2UuZXhwb3J0cz1bIkRpc2NvdW50IFN0b3JlcyJdfSw2MzcxODQoZSl7ZS5leHBvcnRzPVsiRGlzY291bnQgU3RvcmVzIHdpdGggZ3JvY2VyaWVzIl19LDc5NTEyNChlKXtlLmV4cG9ydHM9WyJEaXNjb3VudCBTdG9yZXMgd2l0aG91dCBncm9jZXJpZXMiXX0sMjk5ODI0KGUpe2UuZXhwb3J0cz1bIkRpc3BsYXkgU2NyZWVucyJdfSwxMzAyMChlKXtlLmV4cG9ydHM9WyJEaXN0aWxsZXJpZXMiXX0sNTU4MDk1KGUpe2UuZXhwb3J0cz1bIkRpc3RpbGxlcnMgJiBXaW5lcmllcyJdfSwxNzEzNDIoZSl7ZS5leHBvcnRzPVsiRGlzdHJpYnV0aW9uIFNlcnZpY2VzIl19LDUwNzc5OChlKXtlLmV4cG9ydHM9WyJEamlib3V0aSJdfSw4OTY3NzIoZSl7ZS5leHBvcnRzPVsiRHJ1Z3N0b3JlIENoYWlucyJdfSw1NjEwNjAoZSl7ZS5leHBvcnRzPVsiRHJ1ZyBEZWxpdmVyeSBTeXN0ZW1zIl19LDU1OTIwNihlKXtlLmV4cG9ydHM9WyJEcnVnIFJldGFpbGVycyJdfSwzNzU0NChlKXtlLmV4cG9ydHM9WyJEcmFnb25mbHkgRG9qaSJdfSw0NzAxMDUoZSl7ZS5leHBvcnRzPVsiRS1jb21tZXJjZSAmIEF1Y3Rpb24gU2VydmljZXMiXX0sMTA3OTA1KGUpe2UuZXhwb3J0cz1bIkVNQTEwIl19LDY0OTY0NChlKXtlLmV4cG9ydHM9WyJFTUExMDAiXX0sMTQzNjMoZSl7ZS5leHBvcnRzPVsiRU1BMjAiXX0sNjA1NDM4KGUpe2UuZXhwb3J0cz1bIkVNQTIwMCJdfSw5NTQ4NTkoZSl7ZS5leHBvcnRzPVsiRU1BMzAiXX0sNTExODQ0KGUpe2UuZXhwb3J0cz1bIkVNQTUiXX0sNTM4MDE4KGUpe2UuZXhwb3J0cz1bIkVNQTUwIl19LDY3NzgxMyhlKXtlLmV4cG9ydHM9WyJFTVBMT1lFRVMiXX0sNjk5NyhlKXtlLmV4cG9ydHM9WyJFQklUREEiXX0sOTg2MjkyKGUpe2UuZXhwb3J0cz1bIkVCSVREQSAoQW5udWFsIFlvWSBHcm93dGgpIl19LDc0NjIzKGUpe2UuZXhwb3J0cz1bIkVCSVREQSAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDUzOTcwNShlKXtlLmV4cG9ydHM9WyJFQklUREEgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw4MzQ2NjgoZSl7ZS5leHBvcnRzPVsiRUJJVERBIChUVE0gWW9ZIEdyb3d0aCkiXX0sNTQwOTkoZSl7ZS5leHBvcnRzPVsiRUJJVERBIChUVE0pIl19LDMyNzE0OShlKXtlLmV4cG9ydHM9WyJFUFMgKEZZKSJdfSwyNTU4NTcoZSl7ZS5leHBvcnRzPVsiRVBTIChUVE0pIl19LAo5MzEwOTMoZSl7ZS5leHBvcnRzPVsiRVBTIERpbHV0ZWQgKE1SUSkiXX0sNTI4OTcyKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sMTEyMjc4KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChGWSkiXX0sOTY2MjU2KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sODIyNzgyKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sNDA2ODYzKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChUVE0gWW9ZIEdyb3d0aCkiXX0sOTg2NTE2KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChUVE0pIl19LDc4OTE1NShlKXtlLmV4cG9ydHM9WyJFUFMgRXN0aW1hdGUiXX0sMjA1NTQ4KGUpe2UuZXhwb3J0cz1bIkVQUyBGb3JlY2FzdCJdfSw4MDI1OTAoZSl7ZS5leHBvcnRzPVsiRVBTIEZvcmVjYXN0IChNUlEpIl19LDcyODU0NShlKXtlLmV4cG9ydHM9WyJFUFMgZGlsdXRlZCAoe3BlcmlvZH0pIl19LDMwMDI3NShlKXtlLmV4cG9ydHM9WyJFVEMiXX0sNjk0MDcyKGUpe2UuZXhwb3J0cz1bIkVURiJdfSw5NzIyNDAoZSl7ZS5leHBvcnRzPVsiRVROIl19LDI2MzIzMChlKXtlLmV4cG9ydHM9WyJFViJdfSw3NzY0NjQoZSl7ZS5leHBvcnRzPVsiRVYvRUJJVERBIl19LDQ4NTc5MChlKXtlLmV4cG9ydHM9WyJFbXBsb3ltZW50IFNlcnZpY2VzIl19LDI0OTk3OChlKXtlLmV4cG9ydHM9WyJFbnRlciBhIG5ldyBjb2x1bW4gc2V0IG5hbWU6Il19LDg5MDk5KGUpe2UuZXhwb3J0cz1bIkVudGVyIGEgbmV3IHNjcmVlbiBuYW1lOiJdfSw0NTgwMTEoZSl7ZS5leHBvcnRzPVsiRW50ZXJ0YWlubWVudCBQcm9kdWN0aW9uIl19LDIxODc2NyhlKXtlLmV4cG9ydHM9WyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gRXF1aXBtZW50ICYgU2VydmljZXMiXX0sNjczMTYxKGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgdmFsdWUiXX0sNjc0NDgxKGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgU29mdHdhcmUiXX0sMTExMTI1KGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgVmFsdWUvRUJJVERBIChUVE0pIl19LDUzMTI4OChlKXtlLmV4cG9ydHM9WyJFbnRlcnByaXNlIFZhbHVlIChNUlEpIl19LDkxNTEyNChlKXtlLmV4cG9ydHM9WyJFbnRpcmUgd29ybGQiXX0sMjA1MjA5KGUpe2UuZXhwb3J0cz1bIkVudmlyb25tZW50YWwgQmlvdGVjaG5vbG9neSJdfSw1ODA2NzIoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBDb25zdWx0YW5jeSBTZXJ2aWNlcyJdfSwzMDcwMTcoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyJdfSw2OTAwOTAoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyAmIEVxdWlwbWVudCJdfSw2MDE3NjQoZSl7ZS5leHBvcnRzPVsiRW5kIG9mIERheSJdfSw4MjU1NDIoZSl7ZS5leHBvcnRzPVsiRW5lcmd5Il19LDU2MDM4OShlKXtlLmV4cG9ydHM9WyJFbmVyZ3kgTWluZXJhbHMiXX0sMzY3NzYwKGUpe2UuZXhwb3J0cz1bIkVuZXJneSBEcmlua3MiXX0sMjk3MzA0KGUpe2UuZXhwb3J0cz1bIkVuZ2luZSAmIFBvd2VydHJhaW4gU3lzdGVtcyJdfSwyMjMyNjIoZSl7ZS5leHBvcnRzPVsiRW5naW5lZXJpbmcgJiBDb25zdHJ1Y3Rpb24iXX0sMTM0MDU5KGUpe2UuZXhwb3J0cz1bIkVhcm5pbmdzIHRoaXMgd2VlayJdfSw0MTMzOTcoZSl7ZS5leHBvcnRzPVsiRWN1YWRvciJdfSwyNDMwODIoZSl7ZS5leHBvcnRzPVsiRWR1Y2F0aW9uICYgVHJhaW5pbmcgSW5mb3JtYXRpb24gUHJvdmlkZXJzIl19LDE0NDI2MChlKXtlLmV4cG9ydHM9WyJFZHVjYXRpb25hbCBTZXJ2aWNlcyJdfSwzMzc0MzcoZSl7ZS5leHBvcnRzPVsiRWd5cHQiXX0sODgwODcyKGUpe2UuZXhwb3J0cz1bIkVsIFNhbHZhZG9yIl19LDI3NDc4MihlKXtlLmV4cG9ydHM9WyJFbGVjdHJpYyBDb25zdHJ1Y3Rpb24iXX0sNzg3MTcwKGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljIEVxdWlwbWVudCBXaG9sZXNhbGUiXX0sODExODcwKGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljIFV0aWxpdGllcyJdfSwzNDY3MTEoZSl7ZS5leHBvcnRzPVsiRWxlY3RyaWMgVXRpbGl0aWVzOiBDZW50cmFsIl19LDk5OTAxNChlKXtlLmV4cG9ydHM9WyJFbGVjdHJpY2FsIChBbHRlcm5hdGl2ZSkgVmVoaWNsZXMiXX0sNDYxMjI3KGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljYWwgQ29tcG9uZW50cyAmIEVxdWlwbWVudCJdfSw0MTY1MzcoZSl7ZS5leHBvcnRzPVsiRWxlY3RyaWNhbCBNZWFzdXJpbmcgJiBUZXN0aW5nIEluc3RydW1lbnRzIl19LDYxNDQ0MChlKXtlLmV4cG9ydHM9WyJFbGVjdHJpY2FsIFByb2R1Y3RzIl19LDMyMTQ2NShlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbiBUdWJlcyAmIEluc3VsYXRvcnMiXX0sMTAyMjQ3KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWNzIERpc3RyaWJ1dG9ycyJdfSw5NzcwMDkoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pY3MvQXBwbGlhbmNlIFN0b3JlcyJdfSwyNjAwMzcoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pY3MvQXBwbGlhbmNlcyJdfSwzNjg1NjAoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBDb21wb25lbnQiXX0sNDQ5NDE5KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgQ29tcG9uZW50cyJdfSwxNTQwNDcoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBFcXVpcG1lbnQgJiBQYXJ0cyJdfSwzOTYzMTYoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBFcXVpcG1lbnQvSW5zdHJ1bWVudHMiXX0sNzczMTQ0KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgRXF1aXBtZW50cyAmIFBhcnRzIl19LDg5NDczNyhlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbmljIFByb2R1Y3Rpb24gRXF1aXBtZW50Il19LDY1NDMyKGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgUmVwYWlyIFNlcnZpY2VzIl19LDc1OTYxNShlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbmljIFRlY2hub2xvZ3kiXX0sOTIyNDU5KGUpe2UuZXhwb3J0cz1bIkVsZXZhdG9yICYgQ29udmV5aW5nIEVxdWlwbWVudCJdfSw4NzM0MDMoZSl7ZS5leHBvcnRzPVsiRXBveHkiXX0sMzQwMjM5KGUpe2UuZXhwb3J0cz1bIkVxdWFsIl0KfSw3NDY1MjQoZSl7ZS5leHBvcnRzPVsiRXF1YXRvcmlhbCBHdWluZWEiXX0sNzMwODczKGUpe2UuZXhwb3J0cz1bIkVyaXRyZWEiXX0sOTQxMjAoZSl7ZS5leHBvcnRzPVsiRXN0b25pYSJdfSw4OTgzMDMoZSl7ZS5leHBvcnRzPVsiRXN3YXRpbmkiXX0sNDUwNjIzKGUpe2UuZXhwb3J0cz1bIkV0aGFub2wgRnVlbHMiXX0sMzMxOTEoZSl7ZS5leHBvcnRzPVsiRXRoaW9waWEiXX0sOTUyMzY3KGUpe2UuZXhwb3J0cz1bIkV1cm9wZSJdfSw1MzUxNDYoZSl7ZS5leHBvcnRzPVsiRXVyb3BlYW4gVW5pb24iXX0sMzQ5NjcwKGUpe2UuZXhwb3J0cz1bIkV2ZW5pbmcgU3RhciJdfSw3MjE0NDEoZSl7ZS5leHBvcnRzPVsiRXh0ZW5kZWQgSG91cnMiXX0sODI2NjA3KGUpe2UuZXhwb3J0cz1bIkV4Y2hhbmdlIl19LDU0ODc1MyhlKXtlLmV4cG9ydHM9WyJFeGNoYW5nZSBUcmFkZWQgRnVuZCJdfSwyMjI1MzIoZSl7ZS5leHBvcnRzPVsiRXhjaGFuZ2UgVHJhZGVkIEZ1bmRzIl19LDYxMTExOChlKXtlLmV4cG9ydHM9WyJFeGNoYW5nZSB0eXBlIl19LDI5OTMxNihlKXtlLmV4cG9ydHM9WyJFeGVjdXRpdmUgU2VhcmNoIFNlcnZpY2VzIl19LDkxOTE3NyhlKXtlLmV4cG9ydHM9WyJFeGhpYml0aW9uICYgQ29uZmVyZW5jZSBTZXJ2aWNlcyJdfSw1ODA4MzIoZSl7ZS5leHBvcnRzPVsiRXhvdGljIl19LDM2NTU4OShlKXtlLmV4cG9ydHM9WyJFeHBpcmF0aW9uIl19LDYzNDUwNihlKXtlLmV4cG9ydHM9WyJFeHBvbmVudGlhbCBNb3ZpbmcgQXZlcmFnZSAoe251bWJlcn0pIl19LDM5MTI1MShlKXtlLmV4cG9ydHM9WyJFeHBsb3NpdmVzIl19LDIxNDI3OShlKXtlLmV4cG9ydHM9WyJGRCBNa3QgQ2FwIl19LDI5ODU3NihlKXtlLmV4cG9ydHM9WyJGUSJdfSwyODc5MTgoZSl7ZS5leHBvcnRzPVsiRlkiXX0sNjMyODQ3KGUpe2UuZXhwb3J0cz1bIkZvb2QgRGlzdHJpYnV0b3JzIl19LDQwMzk0MyhlKXtlLmV4cG9ydHM9WyJGb29kIEluZ3JlZGllbnRzIl19LDUxNDM4NyhlKXtlLmV4cG9ydHM9WyJGb29kIE1hcmtldHMiXX0sMTQ2MDQzKGUpe2UuZXhwb3J0cz1bIkZvb2QgUHJvY2Vzc2luZyJdfSwyMzE0MzQoZSl7ZS5leHBvcnRzPVsiRm9vZCBSZXRhaWwiXX0sODYzNjYxKGUpe2UuZXhwb3J0cz1bIkZvb2QgUmV0YWlsICYgRGlzdHJpYnV0aW9uIl19LDk3NjgyMihlKXtlLmV4cG9ydHM9WyJGb29kIFdob2xlc2FsZSJdfSwyNTc3MDkoZSl7ZS5leHBvcnRzPVsiRm9vZDogTWFqb3IgRGl2ZXJzaWZpZWQiXX0sNDI0Njg1KGUpe2UuZXhwb3J0cz1bIkZvb2Q6IE1lYXQvRmlzaC9EYWlyeSJdfSw5MzE4ODMoZSl7ZS5leHBvcnRzPVsiRm9vZDogU3BlY2lhbHR5L0NhbmR5Il19LDY5ODA1NyhlKXtlLmV4cG9ydHM9WyJGb290d2VhciJdfSw5MTUwMzcoZSl7ZS5leHBvcnRzPVsiRm9vdHdlYXIgUmV0YWlsZXJzIl19LDk3MzI5NShlKXtlLmV4cG9ydHM9WyJGb290d2VhciBXaG9sZXNhbGUiXX0sODA4MDA4KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCAmIFdvb2QgUHJvZHVjdHMiXX0sNDY0MjM5KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCBOdXJzZXJpZXMgJiBHYXRoZXJpbmcgb2YgRm9yZXN0IFByb2R1Y3RzIl19LDM0NDY1MyhlKXtlLmV4cG9ydHM9WyJGb3Jlc3QgUHJvZHVjdHMiXX0sODMxODc1KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCBTdXBwb3J0ICYgU2VydmljZXMiXX0sMjU1MDkzKGUpe2UuZXhwb3J0cz1bIkZvcmV4Il19LDI0OTgyKGUpe2UuZXhwb3J0cz1bIkZvc3NpbCBGdWVsIEVsZWN0cmljIFV0aWxpdGllcyJdfSwxOTM3MTEoZSl7ZS5leHBvcnRzPVsiRm9zc2lsIEZ1ZWwgSVBQcyJdfSwyNjA2MDUoZSl7ZS5leHBvcnRzPVsiRmF2b3JpdGUgc2V0cyJdfSw1ODA2NTgoZSl7ZS5leHBvcnRzPVsiRmFicmljIER5ZWluZyAmIEZpbmlzaGluZyJdfSw3NTI0MzAoZSl7ZS5leHBvcnRzPVsiRmFjdG9yaW5nIl19LDk5MzQ3NShlKXtlLmV4cG9ydHM9WyJGYWxrbGFuZCBJc2xhbmRzIl19LDYwNzcyMyhlKXtlLmV4cG9ydHM9WyJGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcykiXX0sNDI4OTc4KGUpe2UuZXhwb3J0cz1bIkZhbGxpbmcgcGFpcnMiXX0sNDUyNDg3KGUpe2UuZXhwb3J0cz1bIkZhcm9lIElzbGFuZHMiXX0sNzQ1NTE2KGUpe2UuZXhwb3J0cz1bIkZhc2hpb24gRXlld2VhciJdfSw2MTczNDEoZSl7ZS5leHBvcnRzPVsiRmViIl19LDYzNjA2NChlKXtlLmV4cG9ydHM9WyJGZXJ0aWxpemVyIl19LDIxNDg1KGUpe2UuZXhwb3J0cz1bIkZpYmVyIE9wdGljIENhYmxlIE1hbnVmYWN0dXJpbmciXX0sMTUyNDA5KGUpe2UuZXhwb3J0cz1bIkZpamkiXX0sMTQxNzI3KGUpe2UuZXhwb3J0cz1bIkZpbHRlcnMiXX0sNDYyMTkzKGUpe2UuZXhwb3J0cz1bIkZpbmFuY2UiXX0sOTkyMjk2KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2UvUmVudGFsL0xlYXNpbmciXX0sNjY1OTA1KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2U6IENvbnN1bWVyIFNlcnZpY2VzIl19LDc2OTg3NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpbmcgY2FzaCBmbG93ICh7cGVyaW9kfSkiXX0sMTI4NDc5KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2lhbCJdfSw5MjA2NDIoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFsICYgQ29tbW9kaXR5IE1hcmtldCBPcGVyYXRvcnMiXX0sNTAwMjQ3KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2lhbCBDb25nbG9tZXJhdGVzIl19LDYxNDQzMyhlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWwgSW5mb3JtYXRpb24gUHJvdmlkZXJzIl19LDkzNzI2NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWwgUHVibGlzaGluZy9TZXJ2aWNlcyJdfSw0NDM0OTYoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFsIFRlY2hub2xvZ3kgJiBJbmZyYXN0cnVjdHVyZSJdfSwzNjkzMjUoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFscyJdfSw2MTMxNChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWxzIGN1cnJlbmN5Il19LDM0MTI0NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWxzIGluIl19LDk3NjQ1NChlKXtlLmV4cG9ydHM9WyJGaW5sYW5kIl19LDMxNDUyMShlKXtlLmV4cG9ydHM9WyJGaXNjYWwgeWVhciBlbmQiXX0sMzAxNjk1KGUpe2UuZXhwb3J0cz1bIkZpc2hpbmcgJiBGYXJtaW5nIl19LAoyMTYxODkoZSl7ZS5leHBvcnRzPVsiRmlzaGluZyAmIEZhcm1pbmcgV2hvbGVzYWxlIl19LDQ3NTIyNShlKXtlLmV4cG9ydHM9WyJGbHVpZCBQb3dlciBDeWxpbmRlciAmIEFjdHVhdG9ycyJdfSw3MjMwODgoZSl7ZS5leHBvcnRzPVsiRmxvYXQiXX0sNDg1NDI5KGUpe2UuZXhwb3J0cz1bIkZsb29yIENvdmVyaW5nIFJldGFpbGVycyJdfSw4MTg2MjgoZSl7ZS5leHBvcnRzPVsiRmxvb3JpbmcgJiBJbnRlcmlvciBUaWxlIE1hbnVmYWN0dXJlcnMiXX0sMzg5NDg3KGUpe2UuZXhwb3J0cz1bIkZsb3Jpc3RzIl19LDM5ODIzNyhlKXtlLmV4cG9ydHM9WyJGbG91ciBNaWxsaW5nIl19LDkxNjYyKGUpe2UuZXhwb3J0cz1bIkZydWl0ICYgVmVnZXRhYmxlIFByb2Nlc3NpbmciXX0sNzc0MjE2KGUpe2UuZXhwb3J0cz1bIkZydWl0IERyaW5rcyJdfSw5Njg4MTUoZSl7ZS5leHBvcnRzPVsiRnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSwxMzYyMzgoZSl7ZS5leHBvcnRzPVsiRnJhbmNlIl19LDE0NDYzKGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93Il19LDYwNzU2MChlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoQW5udWFsIFlvWSBHcm93dGgpIl19LDM0NDM2KGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93IChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sMjY1MDYoZSl7ZS5leHBvcnRzPVsiRnJlZSBDYXNoIEZsb3cgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3ODU3MShlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoVFRNIFlvWSBHcm93dGgpIl19LDE2NzY4OChlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoVFRNKSJdfSw1MzExNzMoZSl7ZS5leHBvcnRzPVsiRnJlZSBDYXNoIEZsb3cgTWFyZ2luIChGWSkiXX0sOTI0NTUzKGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93IE1hcmdpbiAoVFRNKSJdfSw2MjI1NTkoZSl7ZS5leHBvcnRzPVsiRnJlZSBjYXNoIGZsb3cgKHtwZXJpb2R9KSJdfSw5NjkyMzcoZSl7ZS5leHBvcnRzPVsiRnJlaWdodCBMb2dpc3RpY3MiXX0sMzQyNzA2KGUpe2UuZXhwb3J0cz1bIkZyZWlnaHQgVHJ1Y2tpbmciXX0sOTc2MDc5KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBHdWlhbmEiXX0sODYzODI1KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBQb2x5bmVzaWEiXX0sMzI4NjA3KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllcyJdfSw3ODI5NjQoZSl7ZS5leHBvcnRzPVsiRnJvemVuIEZvb2QgTWFudWZhY3R1cmluZyJdfSw5NDM5MDMoZSl7ZS5leHBvcnRzPVsiRnV0dXJlcyJdfSw2ODczMzIoZSl7ZS5leHBvcnRzPVsiRnVsbHkgRGlsdXRlZCBNYXJrZXQgQ2FwIl19LDg4MTkxOShlKXtlLmV4cG9ydHM9WyJGdW5lcmFsIFNlcnZpY2VzIl19LDI2NjY3MShlKXtlLmV4cG9ydHM9WyJGdXJuaXR1cmUiXX0sODM4NShlKXtlLmV4cG9ydHM9WyJGdXJuaXR1cmUgUmV0YWlsZXJzIl19LDk3ODU2MShlKXtlLmV4cG9ydHM9WyJHMjAiXX0sNTgxNjc5KGUpe2UuZXhwb3J0cz1bIktuaXR3ZWFyIl19LDY3Njg2KGUpe2UuZXhwb3J0cz1bIktvc292byJdfSwyNzc1NjAoZSl7ZS5leHBvcnRzPVsiS2F6YWtoc3RhbiJdfSw2Nzk1NDYoZSl7ZS5leHBvcnRzPVsiS2VsdG5lciBDaGFubmVscyBMb3dlciBCYW5kICgyMCkiXX0sMzA1ODg1KGUpe2UuZXhwb3J0cz1bIktlbHRuZXIgQ2hhbm5lbHMgVXBwZXIgQmFuZCAoMjApIl19LDgxNDk2NihlKXtlLmV4cG9ydHM9WyJLZW55YSJdfSw0NTcyNDIoZSl7ZS5leHBvcnRzPVsiS2l0Y2hlbiBBcHBsaWFuY2VzIl19LDQyMjYxOShlKXtlLmV4cG9ydHM9WyJLaXRjaGVuIENhYmluZXRzIl19LDQ1NzY5NChlKXtlLmV4cG9ydHM9WyJLaWNraW5nIEJlYXJpc2giXX0sNjE4NDkyKGUpe2UuZXhwb3J0cz1bIktpY2tpbmcgQnVsbGlzaCJdfSw0NDYyOTMoZSl7ZS5leHBvcnRzPVsiS2lyaWJhdGkiXX0sMjU3NzYwKGUpe2UuZXhwb3J0cz1bIktsdENoMjAgTG93Il19LDI0MDcxNShlKXtlLmV4cG9ydHM9WyJLbHRDaDIwIFVwIl19LDM5NTEzMChlKXtlLmV4cG9ydHM9WyJLdXdhaXQiXX0sNDU4NjYwKGUpe2UuZXhwb3J0cz1bIkt5cmd5enN0YW4iXX0sODgzNjIwKGUpe2UuZXhwb3J0cz1bIkhvdGVscyAmIE1vdGVscyJdfSwxNjQyNzcoZSl7ZS5leHBvcnRzPVsiSG90ZWxzL1Jlc29ydHMvQ3J1aXNlIGxpbmVzIl19LDM5OTc5MShlKXtlLmV4cG9ydHM9WyJIb3RlbHMsIE1vdGVscyAmIENydWlzZSBMaW5lcyJdfSw3MTg2MDcoZSl7ZS5leHBvcnRzPVsiSG91c2Vob2xkIEFwcGxpYW5jZXMiXX0sMjc1NDk4KGUpe2UuZXhwb3J0cz1bIkhvdXNlaG9sZCBFbGVjdHJvbmljcyJdfSw2OTkyODkoZSl7ZS5leHBvcnRzPVsiSG91c2Vob2xkIFByb2R1Y3RzIl19LDI5MzcwNyhlKXtlLmV4cG9ydHM9WyJIb3VzZWhvbGQvUGVyc29uYWwgQ2FyZSJdfSw3MzA0OTYoZSl7ZS5leHBvcnRzPVsiSG9sZGluZyBDb21wYW5pZXMiXX0sMTI3NDkoZSl7ZS5leHBvcnRzPVsiSG9seSBTZWUiXX0sNjc0MTA1KGUpe2UuZXhwb3J0cz1bIkhvbWUgQXVkaW8iXX0sMjY1NDIoZSl7ZS5leHBvcnRzPVsiSG9tZSBEZWNvciBSZXRhaWxlcnMiXX0sNzk3ODYoZSl7ZS5leHBvcnRzPVsiSG9tZSBGdXJuaXNoaW5ncyJdfSwyOTEyMDMoZSl7ZS5leHBvcnRzPVsiSG9tZSBGdXJuaXNoaW5ncyBSZXRhaWxlcnMiXX0sNDYxNDUyKGUpe2UuZXhwb3J0cz1bIkhvbWUgRnVybmlzaGluZ3MgV2hvbGVzYWxlIl19LDI5Njc4MShlKXtlLmV4cG9ydHM9WyJIb21lIEhlYWx0aGNhcmUgU2VydmljZXMiXX0sMTE2Mjg3KGUpe2UuZXhwb3J0cz1bIkhvbWUgSW1wcm92ZW1lbnQgQ2hhaW5zIl19LDY2MTE0NyhlKXtlLmV4cG9ydHM9WyJIb21lIEltcHJvdmVtZW50IFByb2R1Y3RzICYgU2VydmljZXMgUmV0YWlsZXJzIl19LDg1MjcyNChlKXtlLmV4cG9ydHM9WyJIb21lYnVpbGRpbmciXX0sMjAyODE2KGUpe2UuZXhwb3J0cz1bIkhvbmR1cmFzIl19LDQ2Mzc3OShlKXtlLmV4cG9ydHM9WyJIb25nIEtvbmcsIENoaW5hIl19LDU0NTkyNShlKXtlLmV4cG9ydHM9WyJIb3JzZSAmIERvZyBSYWNlIFRyYWNrcyJdfSwxMjQ0MDIoZSl7CmUuZXhwb3J0cz1bIkhvc2llcnkgJiBTb2NrIl19LDM4MDk0NChlKXtlLmV4cG9ydHM9WyJIb3NwaXRhbC9OdXJzaW5nIE1hbmFnZW1lbnQiXX0sNTQ5MTM3KGUpe2UuZXhwb3J0cz1bIkhvc3BpdGFsaXR5IFJFSVRzIl19LDc3MjU0OChlKXtlLmV4cG9ydHM9WyJIb3NwaXRhbHMsIENsaW5pY3MgJiBQcmltYXJ5IENhcmUgU2VydmljZXMiXX0sMTM2OTQ2KGUpe2UuZXhwb3J0cz1bIkhhaXIgQWNjZXNzb3JpZXMiXX0sODk0NzA5KGUpe2UuZXhwb3J0cz1bIkhhaXRpIl19LDgyODY0MShlKXtlLmV4cG9ydHM9WyJIYWxhbCBBbmltYWwgU2xhdWdodGVyaW5nICYgUHJvY2Vzc2luZyJdfSw4NjU5MDcoZSl7ZS5leHBvcnRzPVsiSGFtbWVyIl19LDM0ODMzMChlKXtlLmV4cG9ydHM9WyJIYW5naW5nIE1hbiJdfSw0NjY0NzkoZSl7ZS5leHBvcnRzPVsiSGFuZGJhZ3MgJiBMdWdnYWdlIl19LDE0NDAxKGUpe2UuZXhwb3J0cz1bIkhhbmRiYWdzICYgTHVnZ2FnZSBSZXRhaWxlcnMiXX0sMTAwOTU2KGUpe2UuZXhwb3J0cz1bIkhlYWx0aCBGb29kIFN0b3JlcyJdfSwzNTAwOTAoZSl7ZS5leHBvcnRzPVsiSGVhbHRoIEluc3VyYW5jZSJdfSw2MjA2MDEoZSl7ZS5leHBvcnRzPVsiSGVhbHRoIFNlcnZpY2VzIl19LDQxODQ1NyhlKXtlLmV4cG9ydHM9WyJIZWFsdGggVGVjaG5vbG9neSJdfSw4MDY4NjcoZSl7ZS5leHBvcnRzPVsiSGVhbHRoY2FyZSJdfSw2OTMxODUoZSl7ZS5leHBvcnRzPVsiSGVhbHRoY2FyZSBGYWNpbGl0aWVzICYgU2VydmljZXMiXX0sMTY4NzI4KGUpe2UuZXhwb3J0cz1bIkhlYWx0aGNhcmUgUkVJVHMiXX0sMjM2MTIzKGUpe2UuZXhwb3J0cz1bIkhlYXJkIElzbGFuZCBhbmQgTWNEb25hbGQgSXNsYW5kcyJdfSw1Mzk5MjIoZSl7ZS5leHBvcnRzPVsiSGVhdGluZywgVmVudGlsYXRpb24gJiBBaXIgQ29uZGl0aW9uaW5nIFN5c3RlbXMiXX0sMjYyOTgzKGUpe2UuZXhwb3J0cz1bIkhlYXZ5IEJ1c2VzICYgQ29hY2hlcyJdfSw0NTgxMjcoZSl7ZS5leHBvcnRzPVsiSGVhdnkgRWxlY3RyaWNhbCBFcXVpcG1lbnQiXX0sMjUwNTIoZSl7ZS5leHBvcnRzPVsiSGVhdnkgTW90b3JzICYgR2VuZXJhdG9ycyJdfSwzODE2MDQoZSl7ZS5leHBvcnRzPVsiSGVhdnkgTWFjaGluZXJ5ICYgVmVoaWNsZXMiXX0sNTE4MDQ0KGUpe2UuZXhwb3J0cz1bIkhlYXZ5IE1hY2hpbmVyeSAmIFZlaGljbGVzIFdob2xlc2FsZSJdfSw5OTgwNjcoZSl7ZS5leHBvcnRzPVsiSGVhdnkgVHJ1Y2tzIl19LDg5ODMzNihlKXtlLmV4cG9ydHM9WyJIZWRnZSBGdW5kcyJdfSwxMjI3NjQoZSl7ZS5leHBvcnRzPVsiSGlkZSBjdXJyZW5jeSJdfSw3MjEwMDEoZSl7ZS5leHBvcnRzPVsiSGlkZSBkZXNjcmlwdGlvbiJdfSw3NTcyMzEoZSl7ZS5leHBvcnRzPVsiSGlkZSByYXRpbmciXX0sOTI2ODI1KGUpe2UuZXhwb3J0cz1bIkhpZGUgc3ltYm9sIHR5cGUiXX0sODQ1NTYzKGUpe2UuZXhwb3J0cz1bIkhpZ2giXX0sODg1OTMoZSl7ZS5leHBvcnRzPVsiSGlnaC1kaXZpZGVuZCJdfSw5MDAzNzUoZSl7ZS5leHBvcnRzPVsiSGlnaCA1MlciXX0sNDczNzYyKGUpe2UuZXhwb3J0cz1bIkhpZ2h3YXkgJiBCcmlkZ2UgQ29uc3RydWN0aW9uIl19LDc3Mjg4NihlKXtlLmV4cG9ydHM9WyJIaWdod2F5IE9wZXJhdG9ycyJdfSw1MTM3NzYoZSl7ZS5leHBvcnRzPVsiSGlnaHdheXMgJiBSYWlsIFRyYWNrcyJdfSw3NjA3MTkoZSl7ZS5leHBvcnRzPVsiSHVsbCBNb3ZpbmcgQXZlcmFnZSAoOSkiXX0sNzM5MjAzKGUpe2UuZXhwb3J0cz1bIkh1bGxNQTkiXX0sNTk1OTk2KGUpe2UuZXhwb3J0cz1bIkh1bWFuIFJlc291cmNlcyBDb25zdWx0aW5nIFNlcnZpY2VzIl19LDY2MTM2NihlKXtlLmV4cG9ydHM9WyJIdW5nYXJ5Il19LDM0NzI0OShlKXtlLmV4cG9ydHM9WyJIeWRyb2dlbiBGdWVsIl19LDg4NzgzNyhlKXtlLmV4cG9ydHM9WyJIeWRyb3Bvd2VyIEVxdWlwbWVudCJdfSw1NzQ1NDMoZSl7ZS5leHBvcnRzPVsiSVQgU2VydmljZXMgJiBDb25zdWx0aW5nIl19LDcxNTEwNyhlKXtlLmV4cG9ydHM9WyJJbnRlZ3JhdGVkICBNaW5pbmciXX0sODg2ZTMoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBDaXJjdWl0cyJdfSw0MTQ4NzMoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBMb2dpc3RpY3MgT3BlcmF0b3JzIl19LDI2MjA0NShlKXtlLmV4cG9ydHM9WyJJbnRlZ3JhdGVkIE9pbCJdfSw5OTkxMzEoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBPaWwgJiBHYXMiXX0sNzQ1NTkwKGUpe2UuZXhwb3J0cz1bIkludGVncmF0ZWQgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDU5ODA4MyhlKXtlLmV4cG9ydHM9WyJJbnRlci1kZWFsZXIgQnJva2VyIl19LDI2NzcyMihlKXtlLmV4cG9ydHM9WyJJbnRlcmlvciBEZXNpZ24gU2VydmljZXMiXX0sODI3NDU2KGUpe2UuZXhwb3J0cz1bIkludGVybmF0aW9uYWwgVHJhZGUgRmluYW5jaW5nIl19LDgyMDQ2NChlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCAmIE1haWwgT3JkZXIgRGVwYXJ0bWVudCBTdG9yZXMiXX0sNzcxMjkyKGUpe2UuZXhwb3J0cz1bIkludGVybmV0ICYgTWFpbCBPcmRlciBEaXNjb3VudCBTdG9yZXMiXX0sMzA2OChlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBHYW1pbmciXX0sNDYzNTIzKGUpe2UuZXhwb3J0cz1bIkludGVybmV0IFNvZnR3YXJlL1NlcnZpY2VzIl19LDc5Nzk5NyhlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBTZWN1cml0eSAmIFRyYW5zYWN0aW9ucyBTZXJ2aWNlcyJdfSw5MDU1OTMoZSl7ZS5leHBvcnRzPVsiSW50ZXJuZXQgU2VydmljZSBQcm92aWRlcnMiXX0sNjc0NzI5KGUpe2UuZXhwb3J0cz1bIkludGVybmV0IFNlcnZpY2VzIl19LDI3NTAxMihlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBSZXRhaWwiXX0sMjcyMTYxKGUpe2UuZXhwb3J0cz1bIkludmVydGVkIEhhbW1lciJdfSw2Mzg0OTgoZSl7ZS5leHBvcnRzPVsiSW52ZXN0aW5nIGNhc2ggZmxvdyAoe3BlcmlvZH0pIl19LDk4NjkxNChlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtlcnMvQnJva2Vycy9TZXJ2aWNlIl19LDQ3NTE3NChlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtpbmciXX0sOTEyNjU4KGUpewplLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtpbmcgJiBCcm9rZXJhZ2UgU2VydmljZXMiXX0sOTczNzI0KGUpe2UuZXhwb3J0cz1bIkludmVzdG1lbnQgQmFua3MvQnJva2VycyJdfSw0MDkyNzIoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBNYW5hZ2VtZW50Il19LDU5MTk2MihlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IE1hbmFnZW1lbnQgJiBGdW5kIE9wZXJhdG9ycyJdfSwzNzkwNjUoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBNYW5hZ2VycyJdfSw3NTYxMzYoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBTdXBwb3J0IFRvb2xzIl19LDc4NDMzMihlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IFRydXN0cyJdfSwyOTU5NzIoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBUcnVzdHMvTXV0dWFsIEZ1bmRzIl19LDE4MjQzNyhlKXtlLmV4cG9ydHM9WyJJbmNvbWUiXX0sODQ3NTQ0KGUpe2UuZXhwb3J0cz1bIkluY29tZSBTdGF0ZW1lbnQiXX0sMTcyMjk1KGUpe2UuZXhwb3J0cz1bIkluZGVwZW5kZW50IFBvd2VyIFByb2R1Y2VycyJdfSwxMjI5MDAoZSl7ZS5leHBvcnRzPVsiSW5kZXgiXX0sMzcyNTIwKGUpe2UuZXhwb3J0cz1bIkluZGlhIl19LDgwMjk3NShlKXtlLmV4cG9ydHM9WyJJbmRvbmVzaWEiXX0sMTk1ODc4KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgIFJlYWwgRXN0YXRlIERldmVsb3BtZW50Il19LDY1MDEwMyhlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIEJpb3RlY2hub2xvZ3kgQ2hlbWljYWxzIl19LDk0ODMxMChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIENvbmdsb21lcmF0ZXMiXX0sODE3OTUxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgQ2xvdGhpbmcgJiBVbmlmb3JtcyJdfSw2NjI2NjgoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBFbGVjdHJpY2FsIFN3aXRjaGdlYXIiXX0sMjI2NjcwKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgR2FzIl19LDQ5NDU4OChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIE1hY2hpbmVyeSJdfSw2NTczNzEoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBNYWNoaW5lcnkgJiBFcXVpcG1lbnQiXX0sNzY2Nzc3KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IFdob2xlc2FsZSJdfSwyNzYyNDcoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBNb3VsZHMiXX0sNjQxNjkoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBQYXJ0cyAmIENvbXBvbmVudHMiXX0sNTE3MjY0KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUGxhbnQiXX0sMzIyMDgyKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUHJvY2VzcyBGdXJuYWNlICYgT3ZlbnMiXX0sMTA4MzYxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUkVJVHMiXX0sNzM1NzIzKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUnViYmVyIFByb2R1Y3RzIl19LDk5OTU2MChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFNlcnZpY2VzIl19LDIxNDM5NihlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFNwZWNpYWx0aWVzIl19LDI0OTI0OShlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFZhbHZlIE1hbnVmYWN0dXJpbmciXX0sOTc4NTcyKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWxzIl19LDkwNTgzNShlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWVzIl19LDg3NzYxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJ5Il19LDg5OTA4MChlKXtlLmV4cG9ydHM9WyJJbmZvcm1hdGlvbiBUZWNobm9sb2d5IFNlcnZpY2VzIl19LDQyMDg0KGUpe2UuZXhwb3J0cz1bIklubGFuZCBXYXRlciBGcmVpZ2h0Il19LDQwMzQ3NChlKXtlLmV4cG9ydHM9WyJJbnB1dCBEZXZpY2VzIl19LDcwOTQ5NyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGN1cnJlbmN5Il19LDMyODMxMyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGlzIG5vdCBhbGxvd2VkIl19LDQ2NzU1MihlKXtlLmV4cG9ydHM9WyJJbnN1cmFuY2UgLSBBdXRvbW9iaWxlIl19LDg3MTE1NihlKXtlLmV4cG9ydHM9WyJJbnN1cmFuY2UgQnJva2VycyJdfSw2NjQ2NzAoZSl7ZS5leHBvcnRzPVsiSW5zdXJhbmNlIEJyb2tlcnMvU2VydmljZXMiXX0sNDQwMTg4KGUpe2UuZXhwb3J0cz1bIkljZWxhbmQiXX0sNzAyOTQ2KGUpe2UuZXhwb3J0cz1bIkljaGltb2t1IENvbnZlcnNpb24iXX0sOTI2NChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBDb252ZXJzaW9uIExpbmUgKDksIDI2LCA1MiwgMjYpIl19LDc1MjkzNChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBCYXNlIl19LDQ5MDcyOChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBCYXNlIExpbmUgKDksIDI2LCA1MiwgMjYpIl19LDMxMDE3NyhlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBMZWFkaW5nIFNwYW4gQSJdfSwyOTczMTAoZSl7ZS5leHBvcnRzPVsiSWNoaW1va3UgTGVhZGluZyBTcGFuIEEgKDksIDI2LCA1MiwgMjYpIl19LDgzOTU4MShlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBMZWFkaW5nIFNwYW4gQiJdfSw3MDY1NjIoZSl7ZS5leHBvcnRzPVsiSWNoaW1va3UgTGVhZGluZyBTcGFuIEIgKDksIDI2LCA1MiwgMjYpIl19LDM3MTc0NihlKXtlLmV4cG9ydHM9WyJJcmFxIl19LDcxMTUyNyhlKXtlLmV4cG9ydHM9WyJJcmVsYW5kIl19LDcwOTc5NChlKXtlLmV4cG9ydHM9WyJJcm9uIE9yZSBNaW5pbmciXX0sMjYzNDIxKGUpe2UuZXhwb3J0cz1bIklyb24sIFN0ZWVsIE1pbGxzICYgRm91bmRyaWVzIl19LDIwNzgyNShlKXtlLmV4cG9ydHM9WyJJc2xlIG9mIE1hbiJdfSw4MDMzNTQoZSl7ZS5leHBvcnRzPVsiSXNyYWVsIl19LDg5ODE2MyhlKXtlLmV4cG9ydHM9WyJJdGFseSJdfSw3MjQ5MTIoZSl7ZS5leHBvcnRzPVsiSeKAmW0gbm90IHJlYWR5Il19LDU4MzAwOShlKXtlLmV4cG9ydHM9WyJKb3JkYW4iXX0sMTYzNShlKXtlLmV4cG9ydHM9WyJKYW1haWNhIl19LDY1NzM3NChlKXtlLmV4cG9ydHM9WyJKYW4iXX0sMjAwMDY4KGUpe2UuZXhwb3J0cz1bIkphcGFuIl19LDY2MDI5NChlKXtlLmV4cG9ydHM9WyJKZXdlbHJ5Il19LDQ1NDk4MyhlKXtlLmV4cG9ydHM9WyJKZXdlbHJ5ICYgV2F0Y2ggUmV0YWlsZXJzIl19LDE2MTg0MChlKXtlLmV4cG9ydHM9WyJKZWFucyJdfSwKMTE4NTk4KGUpe2UuZXhwb3J0cz1bIkplcnNleSJdfSw2Njk2OTEoZSl7ZS5leHBvcnRzPVsiSnV2ZW5pbGUgRnVybml0dXJlIl19LDE4Mzk1OShlKXtlLmV4cG9ydHM9WyJKdWwiXX0sODc3NDUoZSl7ZS5leHBvcnRzPVsiSnVuIl19LDI4NTI5MyhlKXtlLmV4cG9ydHM9WyJPbWFuIl19LDI0MDIyKGUpe2UuZXhwb3J0cz1bIk9ubGluZSBKb2IgcG9ydGFscyJdfSw3MjgzMzcoZSl7ZS5leHBvcnRzPVsiT2N0Il19LDEyODc0KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQiXX0sODQ5MTE4KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQvU3VwcGxpZXMiXX0sNDI0ODYxKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQgJiBTdXBwbGllcyBSZW50YWwiXX0sMTM3NTI1KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQgV2hvbGVzYWxlIl19LDc5Nzc0OChlKXtlLmV4cG9ydHM9WyJPZmZpY2UgRnVybml0dXJlIl19LDkyNzcxMihlKXtlLmV4cG9ydHM9WyJPZmZpY2UgUkVJVHMiXX0sNDMzOTExKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCJdfSw3MDYzNDkoZSl7ZS5leHBvcnRzPVsiT2ZmaWNlIFJlYWwgRXN0YXRlIFNlcnZpY2VzIl19LDg1NjMyKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBTdXBwbGllcyJdfSw5NDAxMTUoZSl7ZS5leHBvcnRzPVsiT2ZmaWNlIFN1cHBsaWVzICYgU3RhdGlvbmVyeSBTdG9yZXMiXX0sMzc5NTA3KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBTdXBwbGllcyBXaG9sZXNhbGUiXX0sMjkwMzcwKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBUZWNobm9sb2d5IEVxdWlwbWVudCJdfSw2NDc0MzkoZSl7ZS5leHBvcnRzPVsiT2lsICYgR2FzIERyaWxsaW5nIl19LDE5NDQ1MChlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgRXhwbG9yYXRpb24gYW5kIFByb2R1Y3Rpb24iXX0sMjgzODg1KGUpe2UuZXhwb3J0cz1bIk9pbCAmIEdhcyBQaXBlbGluZXMiXX0sMzkxNyhlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgUHJvZHVjdGlvbiJdfSw1MDMzMTcoZSl7ZS5leHBvcnRzPVsiT2lsICYgR2FzIFJlZmluaW5nIGFuZCBNYXJrZXRpbmciXX0sOTIyNDkzKGUpe2UuZXhwb3J0cz1bIk9pbCAmIEdhcyBTdG9yYWdlIl19LDg5NjgxOShlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgVHJhbnNwb3J0YXRpb24gU2VydmljZXMiXX0sMjk4MDUwKGUpe2UuZXhwb3J0cz1bIk9pbCBEcmlsbGluZyAtIE9uc2hvcmUiXX0sMTc5NDk3KGUpe2UuZXhwb3J0cz1bIk9pbCBEcmlsbGluZyAtIE9mZnNob3JlIl19LDg1NzkxOChlKXtlLmV4cG9ydHM9WyJPaWwgRXhwbG9yYXRpb24gJiBQcm9kdWN0aW9uIC0gT2Zmc2hvcmUiXX0sNzM3MjMwKGUpe2UuZXhwb3J0cz1bIk9pbCBFeHBsb3JhdGlvbiAmIFByb2R1Y3Rpb24gLSBPbnNob3JlIl19LDEyODg3OShlKXtlLmV4cG9ydHM9WyJPaWwgUGlwZWxpbmUiXX0sNzkyMDMyKGUpe2UuZXhwb3J0cz1bIk9pbCBSZWZpbmluZy9NYXJrZXRpbmciXX0sNjY5MTU2KGUpe2UuZXhwb3J0cz1bIk9pbCBSZWxhdGVkIC0gU3VydmV5aW5nICYgTWFwcGluZyBTZXJ2aWNlcyJdfSw1NjE2MTUoZSl7ZS5leHBvcnRzPVsiT2lsIFJlbGF0ZWQgRXF1aXBtZW50Il19LDU3MzE2NyhlKXtlLmV4cG9ydHM9WyJPaWwgUmVsYXRlZCBTZXJ2aWNlcyJdfSwyMjA1MyhlKXtlLmV4cG9ydHM9WyJPaWwgUmVsYXRlZCBTZXJ2aWNlcyBhbmQgRXF1aXBtZW50Il19LDg4NTU0NihlKXtlLmV4cG9ydHM9WyJPaWxmaWVsZCBTZXJ2aWNlcy9FcXVpcG1lbnQiXX0sMjA4MDc4KGUpe2UuZXhwb3J0cz1bIk9rIl19LDc2ODQwMShlKXtlLmV4cG9ydHM9WyJPcHRpY2FsIEdvb2RzIFN0b3JlcyJdfSw5Nzc4MShlKXtlLmV4cG9ydHM9WyJPcGVuIl19LDkzNjEzNShlKXtlLmV4cG9ydHM9WyJPcGVuIHtzeW1ib2x9IENoYXJ0Li4uIl19LDcwNjQwMChlKXtlLmV4cG9ydHM9WyJPcGVuIHtzeW1ib2x9IFBhZ2UuLi4iXX0sMzIxMDI5KGUpe2UuZXhwb3J0cz1bIk9wZW4gUHJpY2UiXX0sMzMyOTkoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIE1hcmdpbiJdfSw0MzUwNzAoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIE1hcmdpbiAoRlkpIl19LDgwMDQzMyhlKXtlLmV4cG9ydHM9WyJPcGVyYXRpbmcgTWFyZ2luIChUVE0pIl19LDQ3MjY2OShlKXtlLmV4cG9ydHM9WyJPcGVyYXRpbmcgbWFyZ2luICh7cGVyaW9kfSkiXX0sMzU3Nzc0KGUpe2UuZXhwb3J0cz1bIk9wZXJhdGluZyBjYXNoIGZsb3cgKHtwZXJpb2R9KSJdfSw4NTAyMTEoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIGluY29tZSAoe3BlcmlvZH0pIl19LDgxMzIxOChlKXtlLmV4cG9ydHM9WyJPcmdhbmljICYgRWNvbG9naWNhbGx5IFByb2R1Y2VkIEZhYnJpYyJdfSwzMDE3MzEoZSl7ZS5leHBvcnRzPVsiT3JnYW5pYyBGZXJ0aWxpemVyIl19LDM1OTE1MChlKXtlLmV4cG9ydHM9WyJPc2NpbGxhdG9ycyJdfSw1NDA0NDAoZSl7ZS5leHBvcnRzPVsiT3NjaWxsYXRvcnMgUmF0aW5nIl19LDQ2MzgwKGUpe2UuZXhwb3J0cz1bIk90aGVyIENvbnN1bWVyIFNlcnZpY2VzIl19LDkwNzc1MChlKXtlLmV4cG9ydHM9WyJPdGhlciBDb25zdW1lciBTcGVjaWFsdGllcyJdfSwxMDU4NzEoZSl7ZS5leHBvcnRzPVsiT3RoZXIgTWV0YWxzL01pbmVyYWxzIl19LDM2Njc4OShlKXtlLmV4cG9ydHM9WyJPdGhlciBTcGVjaWFsdHkgUmV0YWlsZXJzIl19LDUxMTU4NihlKXtlLmV4cG9ydHM9WyJPdGhlciBUcmFuc3BvcnRhdGlvbiJdfSw0MzA3OTgoZSl7ZS5leHBvcnRzPVsiT3V0ZG9vciBBZHZlcnRpc2luZyJdfSwyNzc5NDIoZSl7ZS5leHBvcnRzPVsiT3V0c291cmNpbmcgJiBTdGFmZmluZyBTZXJ2aWNlcyJdfSwxNzI1NDMoZSl7ZS5leHBvcnRzPVsiT3V0c2lkZSJdfSwzNzY1MzIoZSl7ZS5leHBvcnRzPVsiT3V0cGVyZm9ybWluZyBTTUE1MCJdfSwyMjI1OTcoZSl7ZS5leHBvcnRzPVsiT3ZlcmJvdWdodCJdfSw4MTEyMDMoZSl7ZS5leHBvcnRzPVsiT3ZlcnNvbGQiXX0sNTY4MzQ2KGUpe2UuZXhwb3J0cz1bIk92ZXJ2aWV3Il19LDg2MzkxNihlKXsKZS5leHBvcnRzPVsiTE5HIFRyYW5zcG9ydGF0aW9uICYgU3RvcmFnZSJdfSw3Mzg0MDcoZSl7ZS5leHBvcnRzPVsiTG90dGVyeSBPcGVyYXRvcnMiXX0sODg4Njc4KGUpe2UuZXhwb3J0cz1bIkxvdyJdfSw5NjI2NTQoZSl7ZS5leHBvcnRzPVsiTG93IDUyVyJdfSw0NDM0MyhlKXtlLmV4cG9ydHM9WyJMb2NhbCBBZ2VuY2llcyJdfSwyOTkxNzUoZSl7ZS5leHBvcnRzPVsiTG9jb21vdGl2ZSBFbmdpbmVzICYgUm9sbGluZyBTdG9jayJdfSw5ODAyNDYoZSl7ZS5leHBvcnRzPVsiTG9nZ2luZyAmIFNhd21pbGxzIl19LDc0ODAxNChlKXtlLmV4cG9ydHM9WyJMb25nIExvd2VyIFNoYWRvdyJdfSw4MTA4MTcoZSl7ZS5leHBvcnRzPVsiTG9uZyBVcHBlciBTaGFkb3ciXX0sMTYwODIoZSl7ZS5leHBvcnRzPVsiTG9va3MgbGlrZSB5b3UgYXJlIHRyeWluZyB0byBzZXQgdXAgYSBzY3JlZW5lciBhbGVydCB3aXRoIG5vIHNhdmVkIGZpbHRlcnMuIFBsZWFzZSBzZWxlY3QgeW91ciBwcmVmZXJyZWQgZmlsdGVyICYgc2F2ZSB5b3VyIHNjcmVlbiB0byBjcmVhdGUgYW4gYWxlcnQuIl19LDI4Mjc3MyhlKXtlLmV4cG9ydHM9WyJMYXR2aWEiXX0sNDcxOTgxKGUpe2UuZXhwb3J0cz1bIkxhdW5kcnkgU3VwcGxpZXMiXX0sNDU2NTM3KGUpe2UuZXhwb3J0cz1bIkxhbmQgRGl2aXNpb24gJiBTdWJkaXZpc2lvbiJdfSw1OTExODAoZSl7ZS5leHBvcnRzPVsiTGFvcyJdfSw1NTIyNzMoZSl7ZS5leHBvcnRzPVsiTGFwdG9wICYgRGVza3RvcCBDb21wdXRlcnMiXX0sNjA5NjY2KGUpe2UuZXhwb3J0cz1bIkxhc2VyIEVxdWlwbWVudCJdfSwyODUzMzMoZSl7ZS5leHBvcnRzPVsiTGFzdCBZZWFyIFJldmVudWUgKEZZKSJdfSw5NTA4MDIoZSl7ZS5leHBvcnRzPVsiTGFzdCBmaXNjYWwgcGVyaW9kIl19LDUzMDQ0NChlKXtlLmV4cG9ydHM9WyJMYXN0IGZpc2NhbCBwZXJpb2QgZW5kIGRhdGUiXX0sNzkyMjYwKGUpe2UuZXhwb3J0cz1bIkxhc3QgcGF5bWVudCBhbW91bnQiXX0sNTY0MDg5KGUpe2UuZXhwb3J0cz1bIkxhc3QgcGF5bWVudCBkYXRlIl19LDI5MjAzOChlKXtlLmV4cG9ydHM9WyJMZXTigJlzIGRvIHRoaXMiXX0sNDU4ODg4KGUpe2UuZXhwb3J0cz1bIkxlYWQgT3JlIE1pbmluZyJdfSw5MDgwNDMoZSl7ZS5leHBvcnRzPVsiTGVhdGhlciBHb29kcyJdfSw5NDU2MTMoZSl7ZS5leHBvcnRzPVsiTGViYW5vbiJdfSw4NjYxNzYoZSl7ZS5leHBvcnRzPVsiTGVnYWwgU2VydmljZXMiXX0sNzUyMjYoZSl7ZS5leHBvcnRzPVsiTGVpc3VyZSAmIFJlY3JlYXRpb24iXX0sNjE0MzMwKGUpe2UuZXhwb3J0cz1bIkxlaXN1cmUgUHJvZHVjdHMgV2hvbGVzYWxlIl19LDY1MzM5NShlKXtlLmV4cG9ydHM9WyJMZXNvdGhvIl19LDg5MjEwMChlKXtlLmV4cG9ydHM9WyJMaXRodWFuaWEiXX0sMTk0MDkxKGUpe2UuZXhwb3J0cz1bIkxpYWJpbGl0aWVzIChNUlEpIl19LDgyOTY1NihlKXtlLmV4cG9ydHM9WyJMaWFiaWxpdGllcyAoRlkpIl19LDY2MjEoZSl7ZS5leHBvcnRzPVsiTGliZXJpYSJdfSw1NTUzNTIoZSl7ZS5leHBvcnRzPVsiTGlieWEiXX0sMzg2NjY3KGUpe2UuZXhwb3J0cz1bIkxpZWNodGVuc3RlaW4iXX0sNjQzMzY1KGUpe2UuZXhwb3J0cz1bIkxpZmUvSGVhbHRoIEluc3VyYW5jZSJdfSw0ODc2NjAoZSl7ZS5leHBvcnRzPVsiTGlmZSAmIEhlYWx0aCBJbnN1cmFuY2UiXX0sNDkzMjY4KGUpe2UuZXhwb3J0cz1bIkxpZmUgJiBIZWFsdGggUmVpbnN1cmFuY2UiXX0sOTk0MTkyKGUpe2UuZXhwb3J0cz1bIkxpZmUgSW5zdXJhbmNlIl19LDcyODY0OShlKXtlLmV4cG9ydHM9WyJMaWdodCBUcnVja3MiXX0sMTkxNjMwKGUpe2UuZXhwb3J0cz1bIkxpZ2h0aW5nIEVxdWlwbWVudCJdfSw0NzkwOTEoZSl7ZS5leHBvcnRzPVsiTGlnaHRpbmcgRml4dHVyZXMiXX0sNjg0OTAxKGUpe2UuZXhwb3J0cz1bIkxpbmdlcmllIl19LDk3NTQ0NyhlKXtlLmV4cG9ydHM9WyJMdXhlbWJvdXJnIl19LDY3NTEwKGUpe2UuZXhwb3J0cz1bIkx1eHVyeSBBY2Nlc3NvcmllcyJdfSw0MDkzNTcoZSl7ZS5leHBvcnRzPVsiTHV4dXJ5IENhciBEZWFsZXJzIl19LDQyNTMwMShlKXtlLmV4cG9ydHM9WyJNT00iXX0sOTQwOTQzKGUpe2UuZXhwb3J0cz1bIk1BQ0QgTGV2ZWwiXX0sMjQ3NTYwKGUpe2UuZXhwb3J0cz1bIk1BQ0QgTGV2ZWwgKDEyLCAyNikiXX0sMzI3OTExKGUpe2UuZXhwb3J0cz1bIk1BQ0QgU2lnbmFsIl19LDk1MDY2MihlKXtlLmV4cG9ydHM9WyJNQUNEIFNpZ25hbCAoMTIsIDI2KSJdfSw1MTgwNDEoZSl7ZS5leHBvcnRzPVsiTUYiXX0sMzIwMDU4KGUpe2UuZXhwb3J0cz1bIk1vdG9yIFZlaGljbGVzIl19LDQ4MDA0NShlKXtlLmV4cG9ydHM9WyJNb3RvcmN5Y2xlIERlYWxlcnMiXX0sOTIyNjIoZSl7ZS5leHBvcnRzPVsiTW90b3JjeWNsZSBQYXJ0cyAmIEFjY2Vzc29yaWVzIl19LDU0MjY4KGUpe2UuZXhwb3J0cz1bIk1vdG9yY3ljbGVzICYgU2Nvb3RlcnMiXX0sMjAwNDUyKGUpe2UuZXhwb3J0cz1bIk1vdmluZyBBdmVyYWdlcyBSYXRpbmciXX0sNTg1ODQ1KGUpe2UuZXhwb3J0cz1bIk1vdmllIFRoZWF0ZXJzICYgTW92aWUgUHJvZHVjdHMiXX0sMTkyOTMxKGUpe2UuZXhwb3J0cz1bIk1vdmllLCBUViBQcm9kdWN0aW9uICYgRGlzdHJpYnV0aW9uIl19LDM3MDEwKGUpe2UuZXhwb3J0cz1bIk1vdmllcy9FbnRlcnRhaW5tZW50Il19LDEwMDAyNihlKXtlLmV4cG9ydHM9WyJNb3phbWJpcXVlIl19LDY4MjU1NyhlKXtlLmV4cG9ydHM9WyJNb2JpbGUgQXBwbGljYXRpb24gU29mdHdhcmUiXX0sNjI1NDUzKGUpe2UuZXhwb3J0cz1bIk1vYmlsZSBQaG9uZSBSZXRhaWxlcnMiXX0sNzUwMDMzKGUpe2UuZXhwb3J0cz1bIk1vYmlsZSBTeXN0ZW0gU29mdHdhcmUiXX0sMzIxMzM2KGUpe2UuZXhwb3J0cz1bIk1vbGRvdmEiXX0sNTMxNTAyKGUpe2UuZXhwb3J0cz1bIk1vbWVudHVtICgxMCkiXX0sMjA4OTA0KGUpe2UuZXhwb3J0cz1bIk1vbmFjbyJdfSw5MTM3MDkoZSl7ZS5leHBvcnRzPVsiTW9uZ29saWEiXX0sMTc4MDk2KGUpe2UuZXhwb3J0cz1bIk1vbmV5IEZsb3cgKDE0KSJdfSw3MzkzNjUoZSl7ZS5leHBvcnRzPVsiTW9udGVuZWdybyJdfSwKNDY3OTgyKGUpe2UuZXhwb3J0cz1bIk1vbnRobHkgUGVyZiJdfSw4MjI4NzUoZSl7ZS5leHBvcnRzPVsiTW9udGhseSBQZXJmb3JtYW5jZSJdfSwzMzMyNjIoZSl7ZS5leHBvcnRzPVsiTW9udHNlcnJhdCJdfSw3MjE0MzMoZSl7ZS5leHBvcnRzPVsiTW9yb2NjbyJdfSw3MTQ0NjMoZSl7ZS5leHBvcnRzPVsiTW9ybmluZyBTdGFyIl19LDQ5ODE1NChlKXtlLmV4cG9ydHM9WyJNb3J0Z2FnZSBSRUlUcyJdfSw2NTY2MDMoZSl7ZS5leHBvcnRzPVsiTW9zdCB2b2xhdGlsZSJdfSw1NTQxNTEoZSl7ZS5leHBvcnRzPVsiTW9zdCBjYXBpdGFsaXplZCJdfSwyNzc5ODQoZSl7ZS5leHBvcnRzPVsiTWF0dXJpdHkgRGF0ZSJdfSw2Njc5OTYoZSl7ZS5leHBvcnRzPVsiTWF1cml0YW5pYSJdfSwxNTAwNTQoZSl7ZS5leHBvcnRzPVsiTWF1cml0aXVzIl19LDQ4MzE0OShlKXtlLmV4cG9ydHM9WyJNYXlvdHRlIl19LDMwNzA2MihlKXtlLmV4cG9ydHM9WyJNYWNhbyJdfSw1MzIyNjkoZSl7ZS5leHBvcnRzPVsiTWFjYXUsIENoaW5hIl19LDQ1OTEwOChlKXtlLmV4cG9ydHM9WyJNYWNlZG9uaWEiXX0sNzQ1MDAzKGUpe2UuZXhwb3J0cz1bIk1hY2hpbmUgVG9vbHMiXX0sNjYwMTg4KGUpe2UuZXhwb3J0cz1bIk1hZGFnYXNjYXIiXX0sMTI3NjMzKGUpe2UuZXhwb3J0cz1bIk1hZ2F6aW5lIFB1Ymxpc2hpbmciXX0sNjAyNTE5KGUpe2UuZXhwb3J0cz1bIk1haW5sYW5kIENoaW5hIl19LDk4MDc4NihlKXtlLmV4cG9ydHM9WyJNYWludGVuYW5jZSAmIFJlcGFpciBTZXJ2aWNlcyJdfSw0NDc3NTMoZSl7ZS5leHBvcnRzPVsiTWFqb3IiXX0sMTQzNzc0KGUpe2UuZXhwb3J0cz1bIk1ham9yIEJhbmtzIl19LDkxNzU3OChlKXtlLmV4cG9ydHM9WyJNYWpvciBQaGFybWFjZXV0aWNhbHMiXX0sMjczMTAzKGUpe2UuZXhwb3J0cz1bIk1ham9yIFRlbGVjb21tdW5pY2F0aW9ucyJdfSwyNDU5NDgoZSl7ZS5leHBvcnRzPVsiTWFsYXdpIl19LDYyNzk2NyhlKXtlLmV4cG9ydHM9WyJNYWxheXNpYSJdfSwzMzE2MTUoZSl7ZS5leHBvcnRzPVsiTWFsZGl2ZXMiXX0sNjIzNDY1KGUpe2UuZXhwb3J0cz1bIk1hbGkiXX0sODQyMzEyKGUpe2UuZXhwb3J0cz1bIk1hbHQgcHJvZHVjZXJzIl19LDU2MzIzNyhlKXtlLmV4cG9ydHM9WyJNYWx0YSJdfSw4MTE0ODMoZSl7ZS5leHBvcnRzPVsiTWFuYWdlZCBIZWFsdGggQ2FyZSJdfSw1MjkzNDcoZSl7ZS5leHBvcnRzPVsiTWFuYWdlZCBIZWFsdGggY2FyZSJdfSwxMjIxMDIoZSl7ZS5leHBvcnRzPVsiTWFuYWdlbWVudCBDb25zdWx0aW5nIFNlcnZpY2VzIl19LDk5ODYxNihlKXtlLmV4cG9ydHM9WyJNYW51YWwgUmVmcmVzaCJdfSwxMDMzMDUoZSl7ZS5leHBvcnRzPVsiTWFyIl19LDI3ODYxNChlKXtlLmV4cG9ydHM9WyJNYXJrZXQgQ2FwaXRhbGl6YXRpb24iXX0sODQxNzYxKGUpe2UuZXhwb3J0cz1bIk1hcmtldCBSZXNlYXJjaCJdfSw5MzkxMzYoZSl7ZS5leHBvcnRzPVsiTWFya2V0IGN1cnJlbmN5Il19LDg5NzM5MyhlKXtlLmV4cG9ydHM9WyJNYXJrZXRpbmcgQ29uc3VsdGluZyBTZXJ2aWNlcyJdfSw1NTMxNjQoZSl7ZS5leHBvcnRzPVsiTWFya2V0cyJdfSwyMzcxNTIoZSl7ZS5leHBvcnRzPVsiTWFyaW5hcyJdfSwyMzU5OTQoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIENhcmdvIEhhbmRsaW5nIFNlcnZpY2VzIl19LDY5MDM4OChlKXtlLmV4cG9ydHM9WyJNYXJpbmUgRnJlaWdodCAmIExvZ2lzdGljcyJdfSw3NjQwOTkoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIExvZ2lzdGljcyJdfSw2OTQ4NDkoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIFBhc3NlbmdlciBUcmFuc3BvcnRhdGlvbiJdfSw1MTE0NTIoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIFBvcnQgU2VydmljZXMiXX0sODA3NTYxKGUpe2UuZXhwb3J0cz1bIk1hcmluZSBTaGlwcGluZyJdfSw0Nzc4NDMoZSl7ZS5leHBvcnRzPVsiTWFyc2hhbGwgSXNsYW5kcyJdfSwxMzUxNTIoZSl7ZS5leHBvcnRzPVsiTWFydGluaXF1ZSJdfSw1MzU3ODMoZSl7ZS5leHBvcnRzPVsiTWFydWJvenUgQmxhY2siXX0sOTUyNTY1KGUpe2UuZXhwb3J0cz1bIk1hcnVib3p1IFdoaXRlIl19LDEwOTM3MihlKXtlLmV4cG9ydHM9WyJNZXRhbCBDb250YWluZXJzICYgUGFja2FnaW5nIl19LDUzNjc5NShlKXtlLmV4cG9ydHM9WyJNZXRhbCBGYWJyaWNhdGlvbiJdfSw1NTk3NjAoZSl7ZS5leHBvcnRzPVsiTWV0YWwgTWVyY2hhbnQgV2hvbGVzYWxlcnMiXX0sMjI5NTQwKGUpe2UuZXhwb3J0cz1bIk1ldGFsIFNlcnZpY2UgQ2VudGVycyJdfSw5NjI0MjcoZSl7ZS5leHBvcnRzPVsiTWV0YWxsaWMgUm9sbGluZyAmIERyYXdpbmcgUHJvZHVjdHMiXX0sODY1NzAwKGUpe2UuZXhwb3J0cz1bIk1leGljbyJdfSw1OTgyNDcoZSl7ZS5leHBvcnRzPVsiTWV4aWNvIGFuZCBTb3V0aCBBbWVyaWNhIl19LDI1MjIwMyhlKXtlLmV4cG9ydHM9WyJNZWRpYSBDb25nbG9tZXJhdGVzIl19LDI2NjAyMChlKXtlLmV4cG9ydHM9WyJNZWRpYSBCdXlpbmcgQWdlbmN5Il19LDU5OTE1MChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsL051cnNpbmcgU2VydmljZXMiXX0sNDMyNjYyKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgJiBEaWFnbm9zdGljIExhYm9yYXRvcmllcyJdfSw4NzA1NTkoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBEZXZpY2VzICYgSW1wbGFudHMiXX0sNjU5OTcxKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgRGlhZ25vc3RpYyAmIFRlc3RpbmcgRXF1aXBtZW50Il19LDUwNzg1KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgRGlzdHJpYnV0b3JzIl19LDc5MjIwMChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIEVxdWlwbWVudCJdfSw1MzI4NTcoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBFcXVpcG1lbnQgV2hvbGVzYWxlIl19LDcyMjU1NihlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIEVxdWlwbWVudCwgU3VwcGxpZXMgJiBEaXN0cmlidXRpb24iXX0sNzcxNDU3KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgSW1hZ2luZyBTeXN0ZW1zIl19LDQ2Njc0OChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIE1vbml0b3JpbmcgU3lzdGVtcyJdfSw3Nzc3OChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIFByb3N0aGV0aWNzIl19LAo0MzMyNjQoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBTb2Z0d2FyZSAmIFRlY2hub2xvZ3kgU2VydmljZXMiXX0sMzc2MzE2KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgU3BlY2lhbHRpZXMiXX0sMjYwNDMyKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgU3VwcGxpZXMiXX0sNjAzODMoZSl7ZS5leHBvcnRzPVsiTWVtb3J5IENoaXBzIChSQU0pIl19LDc5NjEwKGUpe2UuZXhwb3J0cz1bIk1lbidzIENsb3RoaW5nIl19LDk5NjY0OShlKXtlLmV4cG9ydHM9WyJNZW4ncyBBcHBhcmVsIFJldGFpbGVycyJdfSw3OTYwODIoZSl7ZS5leHBvcnRzPVsiTWVuJ3MgRm9vdHdlYXIiXX0sNzA2NjYoZSl7ZS5leHBvcnRzPVsiTWVyY2hhbnQgQmFua3MiXX0sNjA2MjY2KGUpe2UuZXhwb3J0cz1bIk1pY3JvZmluYW5jaW5nIl19LDI5MTA5OChlKXtlLmV4cG9ydHM9WyJNaWNyb25lc2lhIChGZWRlcmF0ZWQgU3RhdGVzIG9mKSJdfSw2ODU3NTEoZSl7ZS5leHBvcnRzPVsiTWlkZGxlIEVhc3QiXX0sNjAzMDY1KGUpe2UuZXhwb3J0cz1bIk1pZGRsZSBFYXN0IC8gQWZyaWNhIl19LDgzODMzMChlKXtlLmV4cG9ydHM9WyJNaW5pbmcgTWFjaGluZXJ5ICYgRXF1aXBtZW50IE1hbnVmYWN0dXJpbmciXX0sNDA0ODU2KGUpe2UuZXhwb3J0cz1bIk1pbmluZyBTdXBwb3J0IEFjdGl2aXRpZXMiXX0sODE2ODQ1KGUpe2UuZXhwb3J0cz1bIk1pbmluZyBTdXBwb3J0IFNlcnZpY2VzICYgRXF1aXBtZW50Il19LDIwNjk4MyhlKXtlLmV4cG9ydHM9WyJNaW5vciJdfSwxNTcwMjMoZSl7ZS5leHBvcnRzPVsiTWlzY2VsbGFuZW91cyJdfSwxMzI5ODQoZSl7ZS5leHBvcnRzPVsiTWlzY2VsbGFuZW91cyBDb21tZXJjaWFsIFNlcnZpY2VzIl19LDk0NzcxNChlKXtlLmV4cG9ydHM9WyJNaXNjZWxsYW5lb3VzIE1hbnVmYWN0dXJpbmciXX0sMjY1NjIoZSl7ZS5leHBvcnRzPVsiTWt0IENhcCJdfSwxMDAwMyhlKXtlLmV4cG9ydHM9WyJNdXR1YWwgRnVuZHMiXX0sOTQwOTg2KGUpe2UuZXhwb3J0cz1bIk11dHVhbCBmdW5kIl19LDkxMzU2MShlKXtlLmV4cG9ydHM9WyJNdWx0aS1MaW5lIEluc3VyYW5jZSJdfSw2NzY1MTgoZSl7ZS5leHBvcnRzPVsiTXVsdGlsaW5lIEluc3VyYW5jZSAmIEJyb2tlcnMiXX0sMTczMDczKGUpe2UuZXhwb3J0cz1bIk11bHRpbGluZSBVdGlsaXRpZXMiXX0sNDQ3NjUxKGUpe2UuZXhwb3J0cz1bIk11bmljaXBhbGl0eSJdfSwyNDQ1NDUoZSl7ZS5leHBvcnRzPVsiTXVzZXVtcyAmIEhpc3RvcmljIFBsYWNlcyJdfSw2MjczNDAoZSl7ZS5leHBvcnRzPVsiTXVzaWMsIE11c2ljIFZpZGVvIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iXX0sOTA4NzY5KGUpe2UuZXhwb3J0cz1bIk11c2ljYWwgSW5zdHJ1bWVudCBSZXRhaWxlcnMiXX0sNzE2NjY5KGUpe2UuZXhwb3J0cz1bIk11c2ljYWwgSW5zdHJ1bWVudHMiXX0sMjM5NDMoZSl7ZS5leHBvcnRzPVsiTXlhbm1hciJdfSwyMjgyOTEoZSl7ZS5leHBvcnRzPVsiTm8gbWF0Y2hlcyJdfSw0MTc3NyhlKXtlLmV4cG9ydHM9WyJObyBzeW1ib2xzIG1hdGNoIHlvdXIgY3JpdGVyaWEiXX0sMzQ5ODg5KGUpe2UuZXhwb3J0cz1bIk5vdCBFcXVhbCJdfSw1NjE2MDAoZSl7ZS5leHBvcnRzPVsiTm90aWZpY2F0aW9uIl19LDY0NjU0NShlKXtlLmV4cG9ydHM9WyJOb3YiXX0sOTg3NzE1KGUpe2UuZXhwb3J0cz1bIk5vbi1BbGNvaG9saWMgQmV2ZXJhZ2VzIl19LDU5MjUzOChlKXtlLmV4cG9ydHM9WyJOb24tRW5lcmd5IE1pbmVyYWxzIl19LDU0MjIzNShlKXtlLmV4cG9ydHM9WyJOb24tUGFwZXIgQ29udGFpbmVycyAmIFBhY2thZ2luZyJdfSw5ODk5NDAoZSl7ZS5leHBvcnRzPVsiTm9uLWZlcnJvdXMgTWV0YWwgTWluaW5nIl19LDgxOTU2NihlKXtlLmV4cG9ydHM9WyJOb24tZmVycm91cyBNZXRhbCBQcm9jZXNzaW5nIl19LDk2NzQxMihlKXtlLmV4cG9ydHM9WyJOb3Jmb2xrIElzbGFuZCJdfSw4NDU1MjMoZSl7ZS5leHBvcnRzPVsiTm9yd2F5Il19LDY4OTcxNihlKXtlLmV4cG9ydHM9WyJOb3J0aCBBbWVyaWNhIl19LDcyOTc4MihlKXtlLmV4cG9ydHM9WyJOb3J0aCBNYWNlZG9uaWEiXX0sNjEyNTU3KGUpe2UuZXhwb3J0cz1bIk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcyJdfSw5NTY0NjIoZSl7ZS5leHBvcnRzPVsiTmF0aW9uYWwgQWdlbmN5Il19LDIzMTMzNChlKXtlLmV4cG9ydHM9WyJOYXRpb25hbCBBZ2VuY2llcyJdfSwyMjgyMTEoZSl7ZS5leHBvcnRzPVsiTmF0dXJhbCBGYWJyaWNzIl19LDEwNTUzMihlKXtlLmV4cG9ydHM9WyJOYXR1cmFsIEdhcyBEaXN0cmlidXRpb24iXX0sNjUzMDMwKGUpe2UuZXhwb3J0cz1bIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiXX0sMjM3MzQ5KGUpe2UuZXhwb3J0cz1bIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9mZnNob3JlIl19LDEyNDk5OChlKXtlLmV4cG9ydHM9WyJOYXR1cmFsIEdhcyBQaXBlbGluZSJdfSwyNTg3ODUoZSl7ZS5leHBvcnRzPVsiTmF0dXJhbCBHYXMgVXRpbGl0aWVzIl19LDQ3MzQzNyhlKXtlLmV4cG9ydHM9WyJOYXVydSJdfSw3MzQ5OTMoZSl7ZS5leHBvcnRzPVsiTmFtZSJdfSw1NzA2MTgoZSl7ZS5leHBvcnRzPVsiTmFtaWJpYSJdfSwxNzgxMTQoZSl7ZS5leHBvcnRzPVsiTmV0IE1hcmdpbiJdfSw5NDA3MTEoZSl7ZS5leHBvcnRzPVsiTmV0IE1hcmdpbiAoRlkpIl19LDE3NTE0MChlKXtlLmV4cG9ydHM9WyJOZXQgTWFyZ2luIChUVE0pIl19LDg0NTQ5NihlKXtlLmV4cG9ydHM9WyJOZXQgRGVidCJdfSw1MjY2OTgoZSl7ZS5leHBvcnRzPVsiTmV0IERlYnQgKE1SUSkiXX0sOTgzNjcxKGUpe2UuZXhwb3J0cz1bIk5ldCBJbmNvbWUgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSwxMzE2MzMoZSl7ZS5leHBvcnRzPVsiTmV0IEluY29tZSAoRlkpIl19LDE0ODU3MChlKXtlLmV4cG9ydHM9WyJOZXQgSW5jb21lIChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sODUzMzQ2KGUpe2UuZXhwb3J0cz1bIk5ldCBJbmNvbWUgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3ODkwNyhlKXtlLmV4cG9ydHM9WyJOZXQgSW5jb21lIChUVE0gWW9ZIEdyb3d0aCkiXX0sCjg5MDU0OChlKXtlLmV4cG9ydHM9WyJOZXQgbWFyZ2luICh7cGVyaW9kfSkiXX0sNTEwNzI2KGUpe2UuZXhwb3J0cz1bIk5ldCBpbmNvbWUgKHtwZXJpb2R9KSJdfSwyMzc1ODUoZSl7ZS5leHBvcnRzPVsiTmV0IGluY29tZSBwZXIgZW1wbG95ZWUgKHtwZXJpb2R9KSJdfSw2MTY4NjIoZSl7ZS5leHBvcnRzPVsiTmV0aGVybGFuZHMiXX0sMzYzMDgzKGUpe2UuZXhwb3J0cz1bIk5ldHdvcmsgRXF1aXBtZW50Il19LDQ1NzE5NShlKXtlLmV4cG9ydHM9WyJOZXcgNTItd2VlayBoaWdoIl19LDgzODY5MChlKXtlLmV4cG9ydHM9WyJOZXcgNTItd2VlayBsb3ciXX0sMjQ5NTg4KGUpe2UuZXhwb3J0cz1bIk5ldyBDYWxlZG9uaWEiXX0sMjI5NTU2KGUpe2UuZXhwb3J0cz1bIk5ldyBDYXIgRGVhbGVycyJdfSwzMDU0MDYoZSl7ZS5leHBvcnRzPVsiTmV3IEhpZ2giXX0sNTM4MjU0KGUpe2UuZXhwb3J0cz1bIk5ldyBMb3ciXX0sNDIxNihlKXtlLmV4cG9ydHM9WyJOZXcgWmVhbGFuZCJdfSw3NTk4NDEoZSl7ZS5leHBvcnRzPVsiTmV3IG1vbnRobHkgaGlnaCJdfSw5OTY1NzIoZSl7ZS5leHBvcnRzPVsiTmV3IG1vbnRobHkgbG93Il19LDE1OTkxMChlKXtlLmV4cG9ydHM9WyJOZXcge3RpdGxlfSJdfSwyMjEzNzEoZSl7ZS5leHBvcnRzPVsiTmV3c3BhcGVyICYgTWFnYXppbmUgUHJpbnRpbmcgU2VydmljZXMiXX0sMTg2NyhlKXtlLmV4cG9ydHM9WyJOZXdzcGFwZXIgUHVibGlzaGluZyJdfSw4MTk0NzMoZSl7ZS5leHBvcnRzPVsiTmV3c3ByaW50IE1pbGxzIl19LDM1MjI4NShlKXtlLmV4cG9ydHM9WyJOZXdzIEFnZW5jaWVzIl19LDU2MTE2MShlKXtlLmV4cG9ydHM9WyJOZXh0IDUgRGF5cyJdfSw0ODU0NTQoZSl7ZS5leHBvcnRzPVsiTmV4dCBXZWVrIl19LDk0MjUwNChlKXtlLmV4cG9ydHM9WyJOZXh0IHBheW1lbnQgYW1vdW50Il19LDc1MDA1MyhlKXtlLmV4cG9ydHM9WyJOZXh0IHBheW1lbnQgZGF0ZSJdfSwxNzQzMDkoZSl7ZS5leHBvcnRzPVsiTmVnYXRpdmUgRGlyZWN0aW9uYWwgSW5kaWNhdG9yICgxNCkiXX0sNDcxMjg4KGUpe2UuZXhwb3J0cz1bIk5lcGFsIl19LDkwNzQ3MChlKXtlLmV4cG9ydHM9WyJOaXVlIl19LDYyMzQ0MChlKXtlLmV4cG9ydHM9WyJOaWNhcmFndWEiXX0sNjA2ODU0KGUpe2UuZXhwb3J0cz1bIk5pY2tlbCBPcmUgTWluaW5nIl19LDU5MjE4OShlKXtlLmV4cG9ydHM9WyJOaWdlciJdfSw4NDk4NjgoZSl7ZS5leHBvcnRzPVsiTmlnZXJpYSJdfSw0NDI0MTMoZSl7ZS5leHBvcnRzPVsiTnVjbGVhciBJUFBzIl19LDY0NDg1NihlKXtlLmV4cG9ydHM9WyJOdWNsZWFyIFV0aWxpdGllcyJdfSwxNjQwNDIoZSl7ZS5leHBvcnRzPVsiTnVtYmVyIG9mIEVtcGxveWVlcyJdfSw1Nzk0MDMoZSl7ZS5leHBvcnRzPVsiTnVtYmVyIG9mIFNoYXJlaG9sZGVycyJdfSw3MDY2NzEoZSl7ZS5leHBvcnRzPVsiTnVyc2VyeSAmIEdhcmRlbiBDZW50ZXJzIl19LDEzNDA4NShlKXtlLmV4cG9ydHM9WyJTTUExMCJdfSwzMjg3ODQoZSl7ZS5leHBvcnRzPVsiU01BMTAwIl19LDM5ODAzOShlKXtlLmV4cG9ydHM9WyJTTUEyMCJdfSw2ODA3NChlKXtlLmV4cG9ydHM9WyJTTUEyMDAiXX0sNDU3NTQzKGUpe2UuZXhwb3J0cz1bIlNNQTMwIl19LDY1OTU2MChlKXtlLmV4cG9ydHM9WyJTTUE1Il19LDU1NjQ4NihlKXtlLmV4cG9ydHM9WyJTTUE1MCJdfSwxMTQwOTkoZSl7ZS5leHBvcnRzPVsiU0FSIl19LDkzMDc1NChlKXtlLmV4cG9ydHM9WyJTRyZBIFJhdGlvIChGWSkiXX0sMjQyNTMzKGUpe2UuZXhwb3J0cz1bIlNHJkEgUmF0aW8gKFRUTSkiXX0sNzk1MDIxKGUpe2UuZXhwb3J0cz1bIlNJTlQgTUFBUlRFTiAoRFVUQ0ggUEFSVCkiXX0sNTczMzExKGUpe2UuZXhwb3J0cz1bIlNtYXJ0IEdyaWQgJiBFbGVjdHJpY2FsIFRyYW5zbWlzc2lvbiJdfSwxODQyNzAoZSl7ZS5leHBvcnRzPVsiU21hcnQgR3JpZCAmIFBvd2VyIERpc3RyaWJ1dGlvbiBDb25zdHJ1Y3Rpb24iXX0sOTA4NDUoZSl7ZS5leHBvcnRzPVsiU25hY2sgRm9vZCAmIE5vbi1jaG9jb2xhdGUgQ29uZmVjdGlvbmFyeSJdfSw1NjIzOTUoZSl7ZS5leHBvcnRzPVsiU25hcHNob3QiXX0sMzEwMDgyKGUpe2UuZXhwb3J0cz1bIlNvdXRoIEFmcmljYSJdfSw0NDc4NTQoZSl7ZS5leHBvcnRzPVsiU291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHMiXX0sNTg3NzUyKGUpe2UuZXhwb3J0cz1bIlNvdXRoIEtvcmVhIl19LDQ1NzE4NihlKXtlLmV4cG9ydHM9WyJTb3V0aCBTdWRhbiJdfSw3ODE5MzIoZSl7ZS5leHBvcnRzPVsiU292ZXJlaWduIl19LDgxODIyMihlKXtlLmV4cG9ydHM9WyJTb2NpYWwgTWVkaWEgJiBOZXR3b3JraW5nIl19LDgyNDU3OChlKXtlLmV4cG9ydHM9WyJTb2Z0IEZ1cm5pc2hpbmcgUmV0YWlsZXJzIl19LDU5NzEwMyhlKXtlLmV4cG9ydHM9WyJTb2Z0d2FyZSJdfSwxODE3OChlKXtlLmV4cG9ydHM9WyJTb2xvbW9uIElzbGFuZHMiXX0sNjAwNTcoZSl7ZS5leHBvcnRzPVsiU29tYWxpYSJdfSw3MzQwNzQoZSl7ZS5leHBvcnRzPVsiU2F0ZWxsaXRlICBTeXN0ZW1zICYgQWNjZXNzb3JpZXMiXX0sODU5MTE2KGUpe2UuZXhwb3J0cz1bIlNhdGVsbGl0ZSBTZXJ2aWNlIE9wZXJhdG9ycyJdfSw3NjE1MjMoZSl7ZS5leHBvcnRzPVsiU2F1ZGkgQXJhYmlhIl19LDYxMjY1NShlKXtlLmV4cG9ydHM9WyJTYXZlIl19LDMwMzY4NChlKXtlLmV4cG9ydHM9WyJTYXZlIENvbHVtbnMgQXMiXX0sMzk0MTMxKGUpe2UuZXhwb3J0cz1bIlNhdmUgU2NyZWVucyBBcyJdfSwzMzQ1MDcoZSl7ZS5leHBvcnRzPVsiU2F2aW5ncyBCYW5rcyJdfSwyMjc4NjEoZSl7ZS5leHBvcnRzPVsiU2FpbGluZyBZYWNodHMgJiBNb3RvcmJvYXRzIl19LDE5OTQ4MyhlKXtlLmV4cG9ydHM9WyJTYWludCBCYXJ0aMOpbGVteSJdfSw1NzY5NzUoZSl7ZS5leHBvcnRzPVsiU2FpbnQgS2l0dHMgYW5kIE5ldmlzIl19LDk1NTgzNShlKXtlLmV4cG9ydHM9WyJTYWludCBIZWxlbmEsIEFzY2Vuc2lvbiBhbmQgVHJpc3RhbiBkYSBDdW5oYSJdfSwyNTgzMTEoZSl7ZS5leHBvcnRzPVsiU2FpbnQgTHVjaWEiXX0sNDI1MDY0KGUpewplLmV4cG9ydHM9WyJTYWludCBNYXJ0aW4gKEZyZW5jaCBwYXJ0KSJdfSw3OTcwMzUoZSl7ZS5leHBvcnRzPVsiU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbiJdfSw2MjI2MTMoZSl7ZS5leHBvcnRzPVsiU2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXMiXX0sMjE5NzE3KGUpe2UuZXhwb3J0cz1bIlNhbGVzIFByb21vdGlvbnMgJiBFdmVudHMgTWFuYWdlbWVudCJdfSw1OTg5NjMoZSl7ZS5leHBvcnRzPVsiU2Ftb2EiXX0sOTk5NzYyKGUpe2UuZXhwb3J0cz1bIlNhbiBNYXJpbm8iXX0sNjI3MzU1KGUpe2UuZXhwb3J0cz1bIlNhbml0YXJ5IFByb2R1Y3RzIl19LDI3OTM4MihlKXtlLmV4cG9ydHM9WyJTYW8gVG9tZSBhbmQgUHJpbmNpcGUiXX0sMTk4NjI4KGUpe2UuZXhwb3J0cz1bIlNjaWVudGlmaWMgJiBQcmVjaXNpb24gRXF1aXBtZW50Il19LDc2NjcwNChlKXtlLmV4cG9ydHM9WyJTY2llbnRpZmljICYgU3VwZXIgQ29tcHV0ZXJzIl19LDE1NDY0KGUpe2UuZXhwb3J0cz1bIlNjcmVlbmVyIG1haW50ZW5hbmNlIl19LDU3MDM0MyhlKXtlLmV4cG9ydHM9WyJTY3JlZW5zIl19LDUwNjkxNShlKXtlLmV4cG9ydHM9WyJTZXQge2NvbG9yfSBmbGFnIl19LDkwNDEzOShlKXtlLmV4cG9ydHM9WyJTZXdhZ2UgVHJlYXRtZW50IEZhY2lsaXRpZXMiXX0sNDIwODIxKGUpe2UuZXhwb3J0cz1bIlNleWNoZWxsZXMiXX0sNDA0NDEyKGUpe2UuZXhwb3J0cz1bIlNlYS1Cb3JuZSBUYW5rZXJzIl19LDIzMjY2OShlKXtlLmV4cG9ydHM9WyJTZWFmb29kIFByb2R1Y3QgUHJlcGFyYXRpb24gJiBQYWNrYWdpbmciXX0sMzUyMTI3KGUpe2UuZXhwb3J0cz1bIlNlYXJjaCJdfSw4OTIxNjIoZSl7ZS5leHBvcnRzPVsiU2VhcmNoIEVuZ2luZXMiXX0sODcxMTEwKGUpe2UuZXhwb3J0cz1bIlNlYXJjaCBjb2x1bW4iXX0sNTk4NyhlKXtlLmV4cG9ydHM9WyJTZWFyY2ggZmlsdGVyIl19LDg1MDI5OChlKXtlLmV4cG9ydHM9WyJTZWNvbmQgZnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSw5Nzg3MzgoZSl7ZS5leHBvcnRzPVsiU2Vjb25kYXJ5IFNtZWx0aW5nICYgQWxsb3lpbmcgb2YgQWx1bWludW0iXX0sMjc4NzI5KGUpe2UuZXhwb3J0cz1bIlNlY3RvciJdfSw3ODYwMTUoZSl7ZS5leHBvcnRzPVsiU2VjdXJpdGllcyAmIENvbW1vZGl0eSBFeGNoYW5nZXMiXX0sOTQ5MjY1KGUpe2UuZXhwb3J0cz1bIlNlY3VyaXR5ICYgU3VydmVpbGxhbmNlIl19LDEyNzI1MihlKXtlLmV4cG9ydHM9WyJTZWN1cml0eSBTZXJ2aWNlcyJdfSw5ODQ3OTAoZSl7ZS5leHBvcnRzPVsiU2VsZWN0IG1hcmtldHMiXX0sMTkyMjYoZSl7ZS5leHBvcnRzPVsiU2VsZi1TdG9yYWdlIFJFSVRzIl19LDk5MjQ3MChlKXtlLmV4cG9ydHM9WyJTZWxsaW5nIEdlbmVyYWwgJiBBZG1pbiBleHBlbnNlcyBSYXRpbyAoRlkpIl19LDU5MzgxMihlKXtlLmV4cG9ydHM9WyJTZWxsaW5nIEdlbmVyYWwgJiBBZG1pbiBleHBlbnNlcyBSYXRpbyAoVFRNKSJdfSwzOTIzODEoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBFcXVpcG1lbnQgJiBUZXN0aW5nIl19LDE4MzIwOShlKXtlLmV4cG9ydHM9WyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCBXaG9sZXNhbGVycyJdfSw1NDk0NTkoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBNYWNoaW5lcnkgTWFudWZhY3R1cmluZyJdfSwzMTY4NDUoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBUZXN0aW5nIEVxdWlwbWVudCAmIFNlcnZpY2UiXX0sOTUxMzQ2KGUpe2UuZXhwb3J0cz1bIlNlbWljb25kdWN0b3IgV2hvbGVzYWxlIl19LDg1NTI4MihlKXtlLmV4cG9ydHM9WyJTZW1pY29uZHVjdG9ycyJdfSw3NzA3NzUoZSl7ZS5leHBvcnRzPVsiU2VtaXByZWNpb3VzIEdlbSBTdG9uZXMiXX0sMjI0Mjg5KGUpe2UuZXhwb3J0cz1bIlNlbmVnYWwiXX0sMTc4NDY5KGUpe2UuZXhwb3J0cz1bIlNlcCJdfSw3MTg1MjkoZSl7ZS5leHBvcnRzPVsiU2VyYmlhIl19LDI4NjM4NShlKXtlLmV4cG9ydHM9WyJTZXJ2ZXIgJiBEYXRhYmFzZSBTb2Z0d2FyZSJdfSwxNTUwOTYoZSl7ZS5leHBvcnRzPVsiU2VydmVycyAmIFN5c3RlbXMiXX0sNTM3MDU5KGUpe2UuZXhwb3J0cz1bIlNlcnZpY2VzIl19LDY1NDQwOChlKXtlLmV4cG9ydHM9WyJTZXJ2aWNlcyB0byB0aGUgSGVhbHRoIEluZHVzdHJ5Il19LDE2MTE1MihlKXtlLmV4cG9ydHM9WyJTaGFyZWhvbGRlcnMiXX0sMzc5OTMyKGUpe2UuZXhwb3J0cz1bIlNoYXJlcyJdfSw2MDUxNTkoZSl7ZS5leHBvcnRzPVsiU2hhcmVzIE91dHN0YW5kaW5nIl19LDE4ODU3NyhlKXtlLmV4cG9ydHM9WyJTaGFyZXMgRmxvYXQiXX0sOTgxNjQzKGUpe2UuZXhwb3J0cz1bIlNoYXJlcyBmbG9hdCJdfSw0MTg2OChlKXtlLmV4cG9ydHM9WyJTaGVsbCBDb21wYW5pZXMiXX0sNTExODM2KGUpe2UuZXhwb3J0cz1bIlNoaXAgUGFydCBNYW51ZmFjdHVyZXIiXX0sODk0ODkxKGUpe2UuZXhwb3J0cz1bIlNoaXAgUmVwYWlyaW5nICYgTWFpbnRhbmFuY2UiXX0sMzk5ODMxKGUpe2UuZXhwb3J0cz1bIlNoaXBidWlsZGluZyJdfSw3NzgwNChlKXtlLmV4cG9ydHM9WyJTaG9vdGluZyBTdGFyIl19LDY3NzQyNihlKXtlLmV4cG9ydHM9WyJTaG93IGN1cnJlbmN5Il19LDgyNTkyKGUpe2UuZXhwb3J0cz1bIlNob3cgZGVzY3JpcHRpb24iXX0sMjczNjgxKGUpe2UuZXhwb3J0cz1bIlNob3cgcmF0aW5nIl19LDYwMzUwNyhlKXtlLmV4cG9ydHM9WyJTaG93IHN5bWJvbCB0eXBlIl19LDE2NDk5MihlKXtlLmV4cG9ydHM9WyJTaWVycmEgTGVvbmUiXX0sMzI1MDc3KGUpe2UuZXhwb3J0cz1bIlNpZ25zICYgQWR2ZXJ0aXNpbmcgU3BlY2lhbHR5IFByb2R1Y2VycyJdfSwyNTYxMDMoZSl7ZS5leHBvcnRzPVsiU2lsdmVyIE1pbmluZyJdfSw0ODY1NzIoZSl7ZS5leHBvcnRzPVsiU2ltcGxlIE1vdmluZyBBdmVyYWdlICh7bnVtYmVyfSkiXX0sNjQzNzk1KGUpe2UuZXhwb3J0cz1bIlNpbmdhcG9yZSJdfSw3MzY0MChlKXtlLmV4cG9ydHM9WyJTaW50IE1hYXJ0ZW4gKER1dGNoIHBhcnQpIl19LDI2MzQzMihlKXtlLmV4cG9ydHM9WyJTbG92YWtpYSJdfSw3MjE4MjEoZSl7ZS5leHBvcnRzPVsiU2xvdmVuaWEiXX0sCjM1OTc2MShlKXtlLmV4cG9ydHM9WyJTcGFjZWNyYWZ0IE1hbnVmYWN0dXJpbmciXX0sNzg4MzIxKGUpe2UuZXhwb3J0cz1bIlNwYWluIl19LDgyNjU3MChlKXtlLmV4cG9ydHM9WyJTcGVjaWFsIEZvb2RzICYgV2VsYmVpbmcgUHJvZHVjdHMiXX0sNzA5NjEwKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWwgRm9vZHMgJiBXZWxsYmVpbmcgUHJvZHVjdHMiXX0sMjE3NjI5KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWxpemVkIEF2aWF0aW9uIFNlcnZpY2VzIl19LDY3ODEyNihlKXtlLmV4cG9ydHM9WyJTcGVjaWFsaXplZCBQcmludGluZyBTZXJ2aWNlcyJdfSw3MjQ1MTEoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbGl6ZWQgUkVJVHMiXX0sNDM2NTQ5KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSAmIEFkdmFuY2VkIFBoYXJtYWNldXRpY2FscyJdfSw4MTg3MDgoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyJdfSwzMDU1NDYoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyBXaG9sZXNhbGUiXX0sMzkwOTY0KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBDaGVtaWNhbHMiXX0sNjcxNzg2KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBDaGVtaWNhbHMgV2hvbGVzYWxlIl19LDIxMTI4NyhlKXtlLmV4cG9ydHM9WyJTcGVjaWFsdHkgSW5zdXJhbmNlIl19LDU1NTk3OShlKXtlLmV4cG9ydHM9WyJTcGVjaWFsdHkgSW5zdXJlcnMiXX0sMzU1MjgxKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBTdG9yZXMiXX0sMzQ1NjUzKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBUZWxlY29tbXVuaWNhdGlvbnMiXX0sOTg1ODk5KGUpe2UuZXhwb3J0cz1bIlNwb3J0aW5nICYgT3V0ZG9vciBHb29kcyJdfSw1NDQ0OTQoZSl7ZS5leHBvcnRzPVsiU3BvcnRpbmcgR29vZHMgU3RvcmVzIl19LDIxMzk4NyhlKXtlLmV4cG9ydHM9WyJTcG9ydHMgJiBPdXRkb29yIEZvb3R3ZWFyIl19LDM3MjE3MyhlKXtlLmV4cG9ydHM9WyJTcG9ydHMgJiBPdXRkb29ycyBSZXRhaWxlcnMiXX0sNjQ2MTQ0KGUpe2UuZXhwb3J0cz1bIlNwb3J0c3dlYXIgJiBPdXRkb29ycyBDbG90aGluZyJdfSwyODM0MTYoZSl7ZS5leHBvcnRzPVsiU3BvdCJdfSw4MDQ3NjYoZSl7ZS5leHBvcnRzPVsiU3JpIExhbmthIl19LDI5MTQ1NihlKXtlLmV4cG9ydHM9WyJTdGFyY2gsIFZlZ2V0YWJsZSBGYXQgJiBPaWwgTWFudWZhY3R1cmluZyJdfSwxNDIxODgoZSl7ZS5leHBvcnRzPVsiU3RhdGUgQWdlbmN5Il19LDc1MTA3NChlKXtlLmV4cG9ydHM9WyJTdGF0aW9uYXJ5IEZ1ZWwgQ2VsbHMiXX0sNDk4NjM4KGUpe2UuZXhwb3J0cz1bIlN0ZWFtICYgQWlyLUNvbmRpdGlvbmluZyBTdXBwbHkiXX0sNTcyNzUzKGUpe2UuZXhwb3J0cz1bIlN0ZWVsIl19LDQwNjI5OChlKXtlLmV4cG9ydHM9WyJTdG9jaCAlRCJdfSw1NTc4MDAoZSl7ZS5leHBvcnRzPVsiU3RvY2ggJUsiXX0sNzAwNjA4KGUpe2UuZXhwb3J0cz1bIlN0b2NoIFJTSSBGYXN0Il19LDYzOTU5NShlKXtlLmV4cG9ydHM9WyJTdG9jaCBSU0kgU2xvdyJdfSwzMTc4MzIoZSl7ZS5leHBvcnRzPVsiU3RvY2hhc3RpYyAlRCAoMTQsIDMsIDMpIl19LDIyMDcyNShlKXtlLmV4cG9ydHM9WyJTdG9jaGFzdGljICVLICgxNCwgMywgMykiXX0sNTg1Njg5KGUpe2UuZXhwb3J0cz1bIlN0b2NoYXN0aWMgUlNJIEZhc3QgKDMsIDMsIDE0LCAxNCkiXX0sMTEzNzMxKGUpe2UuZXhwb3J0cz1bIlN0b2NoYXN0aWMgUlNJIFNsb3cgKDMsIDMsIDE0LCAxNCkiXX0sNTIyMDE0KGUpe2UuZXhwb3J0cz1bIlN0b2NrcyJdfSw3NDYzMzAoZSl7ZS5leHBvcnRzPVsiU3RvcmFnZSBEZXZpY2VzIl19LDI1NTYyMihlKXtlLmV4cG9ydHM9WyJTdHJ1Y3R1cmVkIl19LDM3MDY4NyhlKXtlLmV4cG9ydHM9WyJTdWJtYXJrZXQiXX0sOTc0NDA0KGUpe2UuZXhwb3J0cz1bIlN1ZGFuIl19LDgyNjEwNyhlKXtlLmV4cG9ydHM9WyJTdWdhciAmIEFydGlmaWNpYWwgU3dlZXRlbmVycyJdfSwzMzY5ODgoZSl7ZS5leHBvcnRzPVsiU3VnYXJjYW5lIEZhcm1pbmciXX0sNzgwMjIoZSl7ZS5leHBvcnRzPVsiU3VwZXJtYXJrZXRzICYgQ29udmVuaWVuY2UgU3RvcmVzIl19LDc3NDM4NihlKXtlLmV4cG9ydHM9WyJTdXByYW5hdGlvbmFsIl19LDgxODgzNyhlKXtlLmV4cG9ydHM9WyJTdXJpbmFtZSJdfSwyNjk5NTUoZSl7ZS5leHBvcnRzPVsiU3VycHJpc2UiXX0sNTI0ODE3KGUpe2UuZXhwb3J0cz1bIlN1cnByaXNlICUiXX0sOTczOTE1KGUpe2UuZXhwb3J0cz1bIlN2YWxiYXJkIGFuZCBKYW4gTWF5ZW4iXX0sMzY5OTYzKGUpe2UuZXhwb3J0cz1bIlN3ZWRlbiJdfSw1MzIxMDkoZSl7ZS5leHBvcnRzPVsiU3dpdGNoIG5vdyJdfSw3OTYzMDcoZSl7ZS5leHBvcnRzPVsiU3dpdGNoZ2VhciJdfSw3MzM5NzEoZSl7ZS5leHBvcnRzPVsiU3dpdHplcmxhbmQiXX0sMjg3MjQ0KGUpe2UuZXhwb3J0cz1bIlN5bWJvbCBUeXBlIl19LDQ1NTU1MChlKXtlLmV4cG9ydHM9WyJTeW50aGV0aWMgRmFicmljcyJdfSwyNzQ0ODUoZSl7ZS5leHBvcnRzPVsiU3lyaWEiXX0sNTcxNzI3KGUpe2UuZXhwb3J0cz1bIlN5c3RlbSBTb2Z0d2FyZSJdfSw3MzY2MjcoZSl7ZS5leHBvcnRzPVsiUCJdfSw2MjIxNShlKXtlLmV4cG9ydHM9WyJQL0IgKEZZKSJdfSw2MTE0NTkoZSl7ZS5leHBvcnRzPVsiUC9CIChNUlEpIl19LDU5MDIwNShlKXtlLmV4cG9ydHM9WyJQL0IgcmF0aW8iXX0sMzMyMjE0KGUpe2UuZXhwb3J0cz1bIlAvQ0YgcmF0aW8iXX0sMjEzMjQ4KGUpe2UuZXhwb3J0cz1bIlAvRSJdfSw1NTczMzYoZSl7ZS5leHBvcnRzPVsiUC9FIHJhdGlvIl19LDg2NDY0OChlKXtlLmV4cG9ydHM9WyJQL0ZDRiByYXRpbyJdfSwyNzkwMTAoZSl7ZS5leHBvcnRzPVsiUC9TIl19LDc4MjYxNChlKXtlLmV4cG9ydHM9WyJQL1MgcmF0aW8iXX0sMTIxOTY5KGUpe2UuZXhwb3J0cz1bIlBFRyJdfSw2MzU0MTUoZSl7ZS5leHBvcnRzPVsiUG91bHRyeSBGYXJtaW5nIl19LDgwOTIoZSl7ZS5leHBvcnRzPVsiUG9pbnQgb2YgU2FsZSBTeXN0ZW1zIl19LDk2ODYwOShlKXtlLmV4cG9ydHM9WyJQb2xhbmQiXX0sMjk1MTYwKGUpewplLmV4cG9ydHM9WyJQb3J0IE9wZXJhdG9ycyJdfSw3NTcwNjAoZSl7ZS5leHBvcnRzPVsiUG9ydCBXYXJlaG91c2luZyBTZXJ2aWNlcyJdfSwyNzc0NDMoZSl7ZS5leHBvcnRzPVsiUG9ydGFibGUgTW90b3JzICYgR2VuZXJhdG9ycyJdfSwyNjIyNDMoZSl7ZS5leHBvcnRzPVsiUG9ydGFibGUgU2F0ZWxsaXRlIE5hdmlnYXRpb24iXX0sMzk4OTQoZSl7ZS5leHBvcnRzPVsiUG9ydHVnYWwiXX0sNzY3ODI1KGUpe2UuZXhwb3J0cz1bIlBvc2l0aXZlIERpcmVjdGlvbmFsIEluZGljYXRvciAoMTQpIl19LDMwMDY1NShlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBDaGFuZ2UiXX0sMzk5OTY4KGUpe2UuZXhwb3J0cz1bIlBvc3QtbWFya2V0IENoYW5nZSAlIl19LDc4ODAwMihlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBDbG9zZSJdfSw3NDIyOTkoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgSGlnaCJdfSwzOTczMzMoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgT3BlbiJdfSwxMzY5MDIoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgTG93Il19LDc5OTI2KGUpe2UuZXhwb3J0cz1bIlBvc3QtbWFya2V0IFZvbHVtZSJdfSw0NTI3MjIoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgY2hnIl19LDY3MzcwMyhlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBjaGcgJSJdfSw3OTEyNzEoZSl7ZS5leHBvcnRzPVsiUGFja2FnZWQgU29mdHdhcmUiXX0sOTkwNTc1KGUpe2UuZXhwb3J0cz1bIlBhY2lmaWMiXX0sMTYzODE3KGUpe2UuZXhwb3J0cz1bIlBhaW50ICYgQ29hdGluZyJdfSw0MDY2NzcoZSl7ZS5leHBvcnRzPVsiUGFpcnMiXX0sODQ0NDM2KGUpe2UuZXhwb3J0cz1bIlBha2lzdGFuIl19LDc5ODQ3NihlKXtlLmV4cG9ydHM9WyJQYWxhdSJdfSw2OTgwODMoZSl7ZS5leHBvcnRzPVsiUGFsZXN0aW5lLCBTdGF0ZSBvZiJdfSwxMDA3MjkoZSl7ZS5leHBvcnRzPVsiUGFuYW1hIl19LDM4OTIzNShlKXtlLmV4cG9ydHM9WyJQYXBlciBNaWxscyAmIFByb2R1Y3RzIl19LDgwMzQ0NihlKXtlLmV4cG9ydHM9WyJQYXBlciBQYWNrYWdpbmciXX0sMzI2NDc3KGUpe2UuZXhwb3J0cz1bIlBhcGVyIFBhY2thZ2luZyBXaG9sZXNhbGUiXX0sNTkyODQoZSl7ZS5leHBvcnRzPVsiUGFwZXIgUHJvZHVjdCBXaG9sZXNhbGUiXX0sOTQ5OTYwKGUpe2UuZXhwb3J0cz1bIlBhcGVyIFByb2R1Y3RzIl19LDcyNTY5NyhlKXtlLmV4cG9ydHM9WyJQYXB1YSBOZXcgR3VpbmVhIl19LDk0MTAyOChlKXtlLmV4cG9ydHM9WyJQYXJhYm9saWMgU0FSIl19LDQyMDEzNShlKXtlLmV4cG9ydHM9WyJQYXJhZ3VheSJdfSwyMTgzNTcoZSl7ZS5leHBvcnRzPVsiUGFya2luZyBMb3QgT3BlcmF0b3JzIl19LDg4NDMzOChlKXtlLmV4cG9ydHM9WyJQYXNzZW5nZXIgQ2FyIHJlbnRhbCJdfSw2MDc0MjcoZSl7ZS5leHBvcnRzPVsiUGFzc2VuZ2VyIFRyYW5zcG9ydGF0aW9uLCBHcm91bmQgJiBTZWEiXX0sMTQyMDEzKGUpe2UuZXhwb3J0cz1bIlBldCAmIFBldCBTdXBwbGllcyBSZXRhaWxlcnMiXX0sNTU5MDMxKGUpe2UuZXhwb3J0cz1bIlBldCBGb29kIE1hbnVmYWN0dXJpbmciXX0sNjcxOTIxKGUpe2UuZXhwb3J0cz1bIlBldHJvbGV1bSBQcm9kdWN0IFdob2xlc2FsZSJdfSwyODY3ODcoZSl7ZS5leHBvcnRzPVsiUGV0cm9sZXVtIFJlZmluaW5nIl19LDg4ODU2OChlKXtlLmV4cG9ydHM9WyJQZW5zaW9uIEZ1bmRzIl19LDExMTM0MShlKXtlLmV4cG9ydHM9WyJQZXJmb3JtYW5jZSJdfSwxNTY4NzQoZSl7ZS5leHBvcnRzPVsiUGVyaW9kIEVuZGluZyJdfSwxODczNTIoZSl7ZS5leHBvcnRzPVsiUGVyc29uYWwgJiBDYXIgTG9hbnMiXX0sOTU5MzM4KGUpe2UuZXhwb3J0cz1bIlBlcnNvbmFsIENhcmUgU2VydmljZXMiXX0sMzA1NjA0KGUpe2UuZXhwb3J0cz1bIlBlcnNvbmFsIExlZ2FsIFNlcnZpY2VzIl19LDk1NjA2MChlKXtlLmV4cG9ydHM9WyJQZXJzb25hbCBNdXNpYyBQbGF5ZXJzIl19LDY3MjM5OShlKXtlLmV4cG9ydHM9WyJQZXJzb25hbCBTZXJ2aWNlcyJdfSw2NTI2NzMoZSl7ZS5leHBvcnRzPVsiUGVyc29uYWwgUHJvZHVjdHMiXX0sOTI3MjYoZSl7ZS5leHBvcnRzPVsiUGVyc29ubmVsIFNlcnZpY2VzIl19LDU1Njg3NihlKXtlLmV4cG9ydHM9WyJQZXJwZXR1YWwiXX0sODUxMTExKGUpe2UuZXhwb3J0cz1bIlBlcnUiXX0sMjc2OTAwKGUpe2UuZXhwb3J0cz1bIlBlc3QgQ29udHJvbCBTZXJ2aWNlcyJdfSw1ODc2MDIoZSl7ZS5leHBvcnRzPVsiUGVzdGljaWRlIl19LDY5OTcyMyhlKXtlLmV4cG9ydHM9WyJQaGFybWFjZXV0aWNhbHMiXX0sMzYxODQ5KGUpe2UuZXhwb3J0cz1bIlBoYXJtYWNldXRpY2FsczogR2VuZXJpYyJdfSwxODI2NDMoZSl7ZS5leHBvcnRzPVsiUGhhcm1hY2V1dGljYWxzOiBNYWpvciJdfSw3NDUxODAoZSl7ZS5leHBvcnRzPVsiUGhhcm1hY2V1dGljYWxzOiBPdGhlciJdfSw2MTM2NDcoZSl7ZS5leHBvcnRzPVsiUGhpbGlwcGluZXMiXX0sMTMzMzMyKGUpe2UuZXhwb3J0cz1bIlBob25lcyAmIEhhbmRoZWxkIERldmljZXMiXX0sNTIzNzY0KGUpe2UuZXhwb3J0cz1bIlBob25lcyAmIFNtYXJ0IFBob25lcyJdfSwxNDU3NjIoZSl7ZS5leHBvcnRzPVsiUGhvdG92b2x0YWljIFNvbGFyIFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sODMwNzk3KGUpe2UuZXhwb3J0cz1bIlBob3RvZ3JhcGhpYyBFcXVpcG1lbnQiXX0sMzg0MzgyKGUpe2UuZXhwb3J0cz1bIlBpdGNhaXJuIl19LDg3NDQ2OShlKXtlLmV4cG9ydHM9WyJQaXZvdCBDYW1hcmlsbGEgUCJdfSw5Mzk4ODcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFIxIl19LDc1NDk0KGUpe2UuZXhwb3J0cz1bIlBpdm90IENhbWFyaWxsYSBSMiJdfSwxNDY0OTMoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFIzIl19LDczNjM3MShlKXtlLmV4cG9ydHM9WyJQaXZvdCBDYW1hcmlsbGEgUzEiXX0sNzU1Nzg2KGUpe2UuZXhwb3J0cz1bIlBpdm90IENhbWFyaWxsYSBTMiJdfSw5NDI5NzcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFMzIl19LDU2NTUyNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFAiXX0sNjIyODM0KGUpewplLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFIxIl19LDUxNzMwMChlKXtlLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFIyIl19LDc3MTU2KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUjMiXX0sNDk1MzE3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzEiXX0sNTE5MDI3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzIiXX0sMTMwNDY3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzMiXX0sNDkxNTQwKGUpe2UuZXhwb3J0cz1bIlBpdm90IERNIFAiXX0sOTQxMjI0KGUpe2UuZXhwb3J0cz1bIlBpdm90IERNIFIxIl19LDg4MTcyMChlKXtlLmV4cG9ydHM9WyJQaXZvdCBETSBTMSJdfSw4ODU2MzQoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFAiXX0sMzc0NDA2KGUpe2UuZXhwb3J0cz1bIlBpdm90IEZpYm9uYWNjaSBSMSJdfSwxODcyMTUoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFIyIl19LDU4MTAxMihlKXtlLmV4cG9ydHM9WyJQaXZvdCBGaWJvbmFjY2kgUjMiXX0sMzg5Nzc4KGUpe2UuZXhwb3J0cz1bIlBpdm90IEZpYm9uYWNjaSBTMSJdfSwyMDI1ODcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFMyIl19LDcxMjU3NihlKXtlLmV4cG9ydHM9WyJQaXZvdCBGaWJvbmFjY2kgUzMiXX0sMTU5MDkyKGUpe2UuZXhwb3J0cz1bIlBpdm90IFdvb2RpZSBQIl19LDI2ODcxNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUjEiXX0sODE1MjUoZSl7ZS5leHBvcnRzPVsiUGl2b3QgV29vZGllIFIyIl19LDg5NDMzNChlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUjMiXX0sMTI1NTUyKGUpe2UuZXhwb3J0cz1bIlBpdm90IFdvb2RpZSBTMSJdfSw5MzgzNjEoZSl7ZS5leHBvcnRzPVsiUGl2b3QgV29vZGllIFMyIl19LDMxOTEwNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUzMiXX0sMzg2NTYoZSl7ZS5leHBvcnRzPVsiUGx1bWJpbmcgRml4dHVyZXMgJiBGaXR0aW5ncyJdfSw5MDU5MzQoZSl7ZS5leHBvcnRzPVsiUGxhc3RpY3MiXX0sNjg5MzkzKGUpe2UuZXhwb3J0cz1bIlBsYXN0aWMgQ29udGFpbmVyICYgUGFja2FnaW5nIl19LDkzNjI2MChlKXtlLmV4cG9ydHM9WyJQbGF0aW51bSBNaW5pbmciXX0sNzQwMDMoZSl7ZS5leHBvcnRzPVsiUGxheXMgJiBDb25jZXJ0IFByb2R1Y3Rpb24iXX0sNTk3NzYzKGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgQ2hhbmdlIl19LDMyNTcxMyhlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENoYW5nZSAlIl19LDUwODI3NihlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENoYW5nZSBmcm9tIE9wZW4iXX0sMzg2OTY5KGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgQ2hhbmdlIGZyb20gT3BlbiAlIl19LDM4NjQ3NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENsb3NlIl19LDUxMTMxMyhlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IEdhcCAlIl19LDI0NTgxMihlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IEhpZ2giXX0sNDI1MjAwKGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgTG93Il19LDIxNjc2NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IE9wZW4iXX0sMTcxNDE1KGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgVm9sdW1lIl19LDQ2NTU3NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IGNoZyJdfSwyMDg4NDYoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBjaGcgJSJdfSw0OTk0OTUoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBjaGcgZnJvbSBPcGVuIl19LDY0MjMyOChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IGNoZyBmcm9tIE9wZW4gJSJdfSwzMjk2NDgoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBnYWluZXJzIl19LDg2NDIxMihlKXtlLmV4cG9ydHM9WyJQcmVjaW91cyBNZXRhbHMiXX0sMTc2MDg5KGUpe2UuZXhwb3J0cz1bIlByZWNpb3VzIE1ldGFscyAmIE1pbmVyYWxzIl19LDg3MTA4OChlKXtlLmV4cG9ydHM9WyJQcmVmYWJyaWNhdGVkIEhvbWVzIl19LDI3NTY2MihlKXtlLmV4cG9ydHM9WyJQcmVmZXJyZWQgU3RvY2siXX0sNDIzMDUoZSl7ZS5leHBvcnRzPVsiUHJldGF4IE1hcmdpbiJdfSw4MjYxMTUoZSl7ZS5leHBvcnRzPVsiUHJldGF4IE1hcmdpbiAoVFRNKSJdfSw2NTY5NzEoZSl7ZS5leHBvcnRzPVsiUHJldGF4IG1hcmdpbiAoe3BlcmlvZH0pIl19LDgzMjEyMyhlKXtlLmV4cG9ydHM9WyJQcmV2Il19LDEzNzIwKGUpe2UuZXhwb3J0cz1bIlByZXZpb3VzIDUgRGF5cyJdfSwzNjYyNDgoZSl7ZS5leHBvcnRzPVsiUHJldmlvdXMgQ2xvc2UgUHJpY2UiXX0sNTY0NTYxKGUpe2UuZXhwb3J0cz1bIlByZXZpb3VzIFdlZWsiXX0sODM0OTAoZSl7ZS5leHBvcnRzPVsiUHJpY2UiXX0sOTg0MTQoZSl7ZS5leHBvcnRzPVsiUHJpY2UgJSBDaGFuZ2UgMSBXZWVrIl19LDYzNjM1MShlKXtlLmV4cG9ydHM9WyJQcmljZSAlIENoYW5nZSA0IFdlZWsiXX0sODM0MTIxKGUpe2UuZXhwb3J0cz1bIlByaWNlICUgQ2hhbmdlIDUyIFdlZWsiXX0sNjE2MTgoZSl7ZS5leHBvcnRzPVsiUHJpY2UgZm9ybWF0IGlzIGludmFsaWQuIl19LDE3MTM5MShlKXtlLmV4cG9ydHM9WyJQcmljZSB0byBCb29rIChGWSkiXX0sNzk3NDUwKGUpe2UuZXhwb3J0cz1bIlByaWNlIHRvIEJvb2sgKE1SUSkiXX0sOTE3NzE1KGUpe2UuZXhwb3J0cz1bIlByaWNlIHRvIEVhcm5pbmdzIFJhdGlvIChUVE0pIl19LDMwNjM1NihlKXtlLmV4cG9ydHM9WyJQcmljZSB0byBGcmVlIENhc2ggRmxvdyAoVFRNKSJdfSw4MTkzNzEoZSl7ZS5leHBvcnRzPVsiUHJpY2UgdG8gU2FsZXMgKEZZKSJdfSwzMTMyNDYoZSl7ZS5leHBvcnRzPVsiUHJpY2UgdG8gUmV2ZW51ZSBSYXRpbyAoVFRNKSJdfSw0MjQ1NDUoZSl7ZS5leHBvcnRzPVsiUHJpY2UvRWFybmluZ3MvR3Jvd3RoIChUVE0pIl19LDgxNjk0NChlKXtlLmV4cG9ydHM9WyJQcmljZS9GcmVlIENhc2ggRmxvdyJdfSwyNjMzMzUoZSl7ZS5leHBvcnRzPVsiUHJpY2UvU2FsZXMiXX0sNjMxNDEwKGUpe2UuZXhwb3J0cz1bIlByaWNlL1JldiJdfSwyNTUzNyhlKXtlLmV4cG9ydHM9WyJQcmltYXJ5IEFsdW1pbnVtIFByb2R1Y3Rpb24iXX0sODE4MjczKGUpewplLmV4cG9ydHM9WyJQcmltYXJ5IExpc3RpbmciXX0sMjQzNzU2KGUpe2UuZXhwb3J0cz1bIlByaXZhdGUgQmFua3MiXX0sOTc5NTMyKGUpe2UuZXhwb3J0cz1bIlByaXZhdGUgRXF1aXR5Il19LDU0ODM2KGUpe2UuZXhwb3J0cz1bIlByb2Nlc3NvcnMiXX0sODIwNjk4KGUpe2UuZXhwb3J0cz1bIlByb2Nlc3MgSW5kdXN0cmllcyJdfSw1MzQzOShlKXtlLmV4cG9ydHM9WyJQcm9ncmFtbWluZyBTb2Z0d2FyZSAmIFRlc3RpbmcgVG9vbHMiXX0sNTI3NjQwKGUpe2UuZXhwb3J0cz1bIlByb2R1Y2VyIE1hbnVmYWN0dXJpbmciXX0sNTUzMzMwKGUpe2UuZXhwb3J0cz1bIlByb2Zlc3Npb25hbCBJbmZvcm1hdGlvbiBTZXJ2aWNlcyJdfSwxMDQwMTQoZSl7ZS5leHBvcnRzPVsiUHJvZmVzc2lvbmFsIFNwb3J0cyBWZW51ZXMiXX0sNzM2MDY2KGUpe2UuZXhwb3J0cz1bIlByb3BlcnR5ICYgQ2FzdWFsdHkgSW5zdXJhbmNlIl19LDg5NjIzMChlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eSAmIENhc3VhbHR5IFJlaW5zdXJhbmNlIl19LDM2NDg3NyhlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eSBJbnN1cmFuY2UiXX0sMzUxNjE0KGUpe2UuZXhwb3J0cz1bIlByb3BlcnR5LUNhc3VhbHR5IEluc3VyZXJzIl19LDY5NjQ3NyhlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eS9DYXN1YWx0eSBJbnN1cmFuY2UiXX0sNzY2OTIoZSl7ZS5leHBvcnRzPVsiUHJvdmluY2UvU3RhdGUiXX0sNTY4MzAoZSl7ZS5leHBvcnRzPVsiUHVibGljIFJlbGF0aW9ucyJdfSwxODIwOTcoZSl7ZS5leHBvcnRzPVsiUHVibGljIFNwb3J0IEZhY2lsaXRpZXMiXX0sMzEzMDU2KGUpe2UuZXhwb3J0cz1bIlB1Ymxpc2hpbmc6IEJvb2tzL01hZ2F6aW5lcyJdfSw3MDA0NDIoZSl7ZS5leHBvcnRzPVsiUHVibGlzaGluZzogTmV3c3BhcGVycyJdfSw5MzM0NjEoZSl7ZS5leHBvcnRzPVsiUHVicywgQmFycyAmIE5pZ2h0IENsdWJzIl19LDg0MzMyNyhlKXtlLmV4cG9ydHM9WyJQdWVydG8gUmljbyJdfSwzNjczNjEoZSl7ZS5leHBvcnRzPVsiUHVscCAmIFBhcGVyIl19LDM1Mjg1NihlKXtlLmV4cG9ydHM9WyJQdWxwIE1pbGxzIl19LDMyMTE3KGUpe2UuZXhwb3J0cz1bIlB1bXAgJiBQdW1waW5nIEVxdWlwbWVudCJdfSw4NDAzODYoZSl7ZS5leHBvcnRzPVsiUHVyaWZpY2F0aW9uICYgVHJlYXRtZW50IEVxdWlwbWVudCJdfSw4OTc2NyhlKXtlLmV4cG9ydHM9WyJRMSJdfSw5NDg5MjMoZSl7ZS5leHBvcnRzPVsiUTIiXX0sMzY3OTM1KGUpe2UuZXhwb3J0cz1bIlEzIl19LDE3NTUwNyhlKXtlLmV4cG9ydHM9WyJRNCJdfSw5MzM3NTMoZSl7ZS5leHBvcnRzPVsiUWF0YXIiXX0sOTQ3Mjk5KGUpe2UuZXhwb3J0cz1bIlF1aWNrIFNlcnZpY2UgUmVzdGF1cmFudHMiXX0sNTkyOTgxKGUpe2UuZXhwb3J0cz1bIlF1aWNrIFJhdGlvIl19LDQwMzEzMShlKXtlLmV4cG9ydHM9WyJRdWljayBSYXRpbyAoTVJRKSJdfSwxOTA2OTYoZSl7ZS5leHBvcnRzPVsiUXVvdGUgY3VycmVuY3kiXX0sODE0NjEoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiJdfSw3OTA1MjQoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiBhbmQgdXBkYXRlZCBldmVyeSAzMCBzZWNvbmRzIl19LDMzNDEwMihlKXtlLmV4cG9ydHM9WyJSJkQgUmF0aW8gKEZZKSJdfSw1MDIwODgoZSl7ZS5leHBvcnRzPVsiUiZEIFJhdGlvIChUVE0pIl19LDEyMzgwNShlKXtlLmV4cG9ydHM9WyJSMSJdfSw1OTQ0MDEoZSl7ZS5leHBvcnRzPVsiUjIiXX0sMTM0MTMoZSl7ZS5leHBvcnRzPVsiUjMiXX0sNTg5OTY0KGUpe2UuZXhwb3J0cz1bIlJPQSJdfSw4NDgxNTQoZSl7ZS5leHBvcnRzPVsiUk9DIl19LDE3MDk1MihlKXtlLmV4cG9ydHM9WyJST0UiXX0sMzg5NTI1KGUpe2UuZXhwb3J0cz1bIlJPSUMgJSJdfSw4MTAyMDIoZSl7ZS5leHBvcnRzPVsiUkVJVCJdfSw5NjcwMjMoZSl7ZS5leHBvcnRzPVsiUkZJRCBTeXN0ZW1zIl19LDQ5NjY3NChlKXtlLmV4cG9ydHM9WyJSU0kxNCJdfSw1Mjg2NTkoZSl7ZS5leHBvcnRzPVsiUlNJNyJdfSw4OTEzOTkoZSl7ZS5leHBvcnRzPVsiUm9jayBNaW5pbmciXX0sOTA1OTQ1KGUpe2UuZXhwb3J0cz1bIlJvbWFuaWEiXX0sMjkyMTM1KGUpe2UuZXhwb3J0cz1bIlJvb2ZpbmcgU3VwcGxpZXMiXX0sODAyMDg4KGUpe2UuZXhwb3J0cz1bIlJhdGUgT2YgQ2hhbmdlICg5KSJdfSwyMjc3NTQoZSl7ZS5leHBvcnRzPVsiUmF0aW5nIEFnZW5jaWVzIl19LDExOTg5MihlKXtlLmV4cG9ydHM9WyJSYWRpbyBCcm9hZGNhc3RpbmciXX0sNjAwNTc2KGUpe2UuZXhwb3J0cz1bIlJhaWwgU2VydmljZXMiXX0sNzY3MTQ3KGUpe2UuZXhwb3J0cz1bIlJhaWxyb2FkcyJdfSw2NjY1NDcoZSl7ZS5leHBvcnRzPVsiUmFpbHdheSBDb25zdHJ1Y3Rpb24iXX0sMzE5NzEzKGUpe2UuZXhwb3J0cz1bIlJhaWx3YXkgRnJlaWdodCBPcGVyYXRvcnMiXX0sOTE4NChlKXtlLmV4cG9ydHM9WyJSYXJlIEVhcnRoIE1pbmVyYWxzIl19LDk2MTIwNShlKXtlLmV4cG9ydHM9WyJSZXRhaWwgLSBEZXBhcnRtZW50IFN0b3JlcyJdfSw2NTk3NjEoZSl7ZS5leHBvcnRzPVsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aCBHcm9jZXJ5Il19LDYwOTcyOChlKXtlLmV4cG9ydHM9WyJSZXRhaWwgLSBEcnVncyB3aXRob3V0IEdyb2NlcnkiXX0sNDEyNjIwKGUpe2UuZXhwb3J0cz1bIlJldGFpbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiXX0sNzkyOTI2KGUpe2UuZXhwb3J0cz1bIlJldGFpbCAmIE1vcnRnYWdlIEJhbmtzIl19LDEwMTE0MChlKXtlLmV4cG9ydHM9WyJSZXRhaWwgUkVJVHMiXX0sNzA5NjI1KGUpe2UuZXhwb3J0cz1bIlJldGFpbCBSZWFsIEVzdGF0ZSBTZXJ2aWNlcyJdfSw1OTAwNjYoZSl7ZS5leHBvcnRzPVsiUmV0YWlsIFRyYWRlIl19LDkxODg5KGUpe2UuZXhwb3J0cz1bIlJldGlyZW1lbnQgSG9tZSBCdWlsZGVycyJdfSwxODUxMDMoZSl7ZS5leHBvcnRzPVsiUmV0dXJuIG9uIEFzc2V0cyAoVFRNKSJdfSwxMTk1MjMoZSl7ZS5leHBvcnRzPVsiUmV0dXJuIG9uIEVxdWl0eSAoVFRNKSJdfSwxNzg1MTMoZSl7CmUuZXhwb3J0cz1bIlJldHVybiBvbiBJbnZlc3RlZCBDYXBpdGFsICUgKFRUTSkiXX0sODA5NzI2KGUpe2UuZXhwb3J0cz1bIlJldHVybiBvbiBJbnZlc3RlZCBDYXBpdGFsIChUVE0pIl19LDgxODExMShlKXtlLmV4cG9ydHM9WyJSZXR1cm4gb24gYXNzZXRzICh7cGVyaW9kfSkiXX0sNDgxMDg3KGUpe2UuZXhwb3J0cz1bIlJldHVybiBvbiBlcXVpdHkgKHtwZXJpb2R9KSJdfSwyMzE3MyhlKXtlLmV4cG9ydHM9WyJSZXR1cm4gb24gaW52ZXN0ZWQgY2FwaXRhbCAoe3BlcmlvZH0pIl19LDU2ODA5MShlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIl19LDEyODM3NihlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sNDgyNTUzKGUpe2UuZXhwb3J0cz1bIlJldmVudWUgKFF1YXJ0ZXJseSBRb1EgR3Jvd3RoKSJdfSw4MDMyODEoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSAoUXVhcnRlcmx5IFlvWSBHcm93dGgpIl19LDc0MDkyOChlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIChUVE0gWW9ZIEdyb3d0aCkiXX0sNTg4MzczKGUpe2UuZXhwb3J0cz1bIlJldmVudWUgQWN0dWFsIl19LDQ1OTU4NyhlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIEZvcmVjYXN0Il19LDc5Mzc1MChlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIHBlciBFbXBsb3llZSJdfSw5NDIwMjUoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgRW1wbG95ZWUgKEZZKSJdfSw2MzA2NzYoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgZW1wbG95ZWUgKHtwZXJpb2R9KSJdfSwxMzI1NDgoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgc2hhcmUgKHtwZXJpb2R9KSJdfSw2MTM5NTEoZSl7ZS5leHBvcnRzPVsiUmVhZHktTWFkZSBNZWFscyJdfSw4ODM5MjgoZSl7ZS5leHBvcnRzPVsiUmVhbC10aW1lIl19LDQ0MTA0NShlKXtlLmV4cG9ydHM9WyJSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCJdfSw3MTIwMDQoZSl7ZS5leHBvcnRzPVsiUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQgJiBPcGVyYXRpb25zIl19LDE0MjA4NihlKXtlLmV4cG9ydHM9WyJSZWFsIEVzdGF0ZSBJbnZlc3RtZW50IFRydXN0cyJdfSwzNzYzNjUoZSl7ZS5leHBvcnRzPVsiUmVhbCBFc3RhdGUgU2VydmljZXMiXX0sNTAyMTI5KGUpe2UuZXhwb3J0cz1bIlJlY2VudCBFYXJuaW5ncyBEYXRlIl19LDEwNTcxKGUpe2UuZXhwb3J0cz1bIlJlY3JlYXRpb25hbCBQcm9kdWN0cyJdfSwzNzM3MjIoZSl7ZS5leHBvcnRzPVsiUmVmcmVzaCJdfSw4Njk3NTYoZSl7ZS5leHBvcnRzPVsiUmVmcmVzaCBldmVyeSBtaW51dGUiXX0sNzgyNjM0KGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggaW50ZXJ2YWwiXX0sMjI0ODIxKGUpe2UuZXhwb3J0cz1bIlJlZ2lvbiJdfSw3NjYxNjUoZSl7ZS5leHBvcnRzPVsiUmVnaW9uYWwgQWlybGluZXMiXX0sMzU4NjIzKGUpe2UuZXhwb3J0cz1bIlJlZ2lvbmFsIEJhbmtzIl19LDczNDQ3NyhlKXtlLmV4cG9ydHM9WyJSZWluc3VyYW5jZSJdfSw4MTM0MzIoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgU3RyZW5ndGggSW5kZXggKDE0KSJdfSw0MjM0NihlKXtlLmV4cG9ydHM9WyJSZWxhdGl2ZSBTdHJlbmd0aCBJbmRleCAoNykiXX0sMjUwNjU0KGUpe2UuZXhwb3J0cz1bIlJlbGF0aXZlIFZvbCJdfSw2OTkwOTAoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgVm9sIGF0IFRpbWUiXX0sNzgzMTkzKGUpe2UuZXhwb3J0cz1bIlJlbGF0aXZlIFZvbHVtZSJdfSwxOTMwNjYoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgVm9sdW1lIGF0IFRpbWUiXX0sNTkxMjI3KGUpe2UuZXhwb3J0cz1bIlJlbW92ZSBjb2x1bW4iXX0sNjk0MjA5KGUpe2UuZXhwb3J0cz1bIlJlbW92ZSBmcm9tIGZhdm9yaXRlcyJdfSw5MjQ4MjMoZSl7ZS5leHBvcnRzPVsiUmVuYW1lIl19LDY3MTIzKGUpe2UuZXhwb3J0cz1bIlJlbmFtZSBDb2x1bW4gU2V0Il19LDk0MTI1NyhlKXtlLmV4cG9ydHM9WyJSZW5hbWUgU2NyZWVucyJdfSw1Nzg5MzAoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEVuZXJneSBFcXVpcG1lbnQgJiBTZXJ2aWNlcyJdfSw5MTk2MzkoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEVuZXJneSBTZXJ2aWNlcyJdfSwzOTQxNzQoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEZ1ZWxzIl19LDk4NDk5MyhlKXtlLmV4cG9ydHM9WyJSZW5ld2FibGUgSVBQcyJdfSwxODAwOTAoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIFV0aWxpdGllcyJdfSw4NTc4OTgoZSl7ZS5leHBvcnRzPVsiUmVwb3J0ZWQgRVBTIl19LDk3NzI3KGUpe2UuZXhwb3J0cz1bIlJlcGxheSBNb2RlIl19LDg3MDMxNihlKXtlLmV4cG9ydHM9WyJSZXNlYXJjaCAmIGRldmVsb3BtZW50IFJhdGlvIChGWSkiXX0sNzAxMDM1KGUpe2UuZXhwb3J0cz1bIlJlc2VhcmNoICYgZGV2ZWxvcG1lbnQgUmF0aW8gKFRUTSkiXX0sNDI1NjUwKGUpe2UuZXhwb3J0cz1bIlJlc2V0Il19LDgyNjMxNChlKXtlLmV4cG9ydHM9WyJSZXNldCBhbGwiXX0sMzExNzM3KGUpe2UuZXhwb3J0cz1bIlJlc2V0IGZpbHRlciJdfSwyMDYxNDQoZSl7ZS5leHBvcnRzPVsiUmVzaWRlbnRpYWwgIFJlYWwgRXN0YXRlIERldmVsb3BtZW50Il19LDEyMjE4OShlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCAmIExvbmcgVGVybSBDYXJlIl19LDEwOTAwNyhlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBBcmNoaXRlY3R1cmFsICYgSW50ZXJpb3IgRGVzaWduIFNlcnZpY2VzIl19LDU3ODgxMihlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBCdWlsZGVycyAtIE11bHRpZmFtaWx5IEhvbWVzIl19LDE4Mjc5NyhlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBCdWlsZGVycyAtIFNpbmdsZSBIb21lcyJdfSwyMjAyNjQoZSl7ZS5leHBvcnRzPVsiUmVzaWRlbnRpYWwgUkVJVHMiXX0sMTQ1MjgxKGUpe2UuZXhwb3J0cz1bIlJlc2lkZW50aWFsIFJlYWwgRXN0YXRlIFNlcnZpY2VzIl19LDg0MzE4MShlKXtlLmV4cG9ydHM9WyJSZXNvcnQgT3BlcmF0b3JzIl19LDMyMzg4OShlKXtlLmV4cG9ydHM9WyJSZXN0YXVyYW50cyJdfSwzMTUyMTMoZSl7ZS5leHBvcnRzPVsiUmVzdGF1cmFudHMgJiBCYXJzIl19LDQwNzQzOChlKXtlLmV4cG9ydHM9WyJSaXNpbmcgcGFpcnMiXX0sCjQ2MTk3MihlKXtlLmV4cG9ydHM9WyJSdWJiZXIgUGxhbnRhdGlvbiJdfSw5MzQ4ODMoZSl7ZS5leHBvcnRzPVsiUnVzc2lhIl19LDM5MDU5OChlKXtlLmV4cG9ydHM9WyJSdXNzaWFuIEZlZGVyYXRpb24iXX0sNzU4Mjk3KGUpe2UuZXhwb3J0cz1bIlJ3YW5kYSJdfSw4NzI2ODAoZSl7ZS5leHBvcnRzPVsiUsOpdW5pb24iXX0sMjI4MjkoZSl7ZS5leHBvcnRzPVsiUzEiXX0sNDQxODQxKGUpe2UuZXhwb3J0cz1bIlMyIl19LDg2MDg1MyhlKXtlLmV4cG9ydHM9WyJTMyJdfSw1NDE0MDUoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBBcHBhcmVsIFJldGFpbGVycyJdfSw1MDM3MTMoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBDbG90aGluZyJdfSw0MzQwNzcoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBGb290d2VhciJdfSw1MjQ1MzkoZSl7ZS5leHBvcnRzPVsiV29vZCBDb250YWluZXIgJiBQYWNrYWdpbmciXX0sMTAzNjQwKGUpe2UuZXhwb3J0cz1bIldvb2QgUHJvZHVjdCBXaG9sZXNhbGUiXX0sNzA2MDY1KGUpe2UuZXhwb3J0cz1bIldvb2QgUHJvZHVjdHMiXX0sNjQzMDc1KGUpe2UuZXhwb3J0cz1bIldvcmxkIl19LDYzMTA1MihlKXtlLmV4cG9ydHM9WyJXYXRjaGVzIl19LDg2MTY1NShlKXtlLmV4cG9ydHM9WyJXYXRlciAmIFNld2FnZSBDb25zdHJ1Y3Rpb24iXX0sNDM1OTgwKGUpe2UuZXhwb3J0cz1bIldhdGVyIFN1cHBseSAmIElycmlnYXRpb24gU3lzdGVtcyJdfSwzNjk5NDQoZSl7ZS5leHBvcnRzPVsiV2F0ZXIgVXRpbGl0aWVzIl19LDQwNTc3OShlKXtlLmV4cG9ydHM9WyJXYXZlIFBvd2VyIEVuZXJneSBFcXVpcG1lbnQiXX0sNTkwNTA1KGUpe2UuZXhwb3J0cz1bIldhbGxpcyBhbmQgRnV0dW5hIl19LDU1NDE3MyhlKXtlLmV4cG9ydHM9WyJXYWxscGFwZXIiXX0sOTA2Mzc5KGUpe2UuZXhwb3J0cz1bIldhcmVob3VzaW5nIl19LDQ5MzMzMyhlKXtlLmV4cG9ydHM9WyJXYXN0ZSBNYW5hZ2VtZW50LCBEaXNwb3NhbCAmIFJlY3ljbGluZyBTZXJ2aWNlcyJdfSwxMjEzMDEoZSl7ZS5leHBvcnRzPVsiV2FzdGUgdG8gRW5lcmd5IFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sMzMyODU1KGUpe2UuZXhwb3J0cz1bIldlIGFyZSBkb2luZyBzb21lIGJyaWVmIGRhaWx5IG1haW50ZW5hbmNlLiBTY3JlZW5lciB3aWxsIGJlIGJhY2sgcmVhbGx5IHNvb24sIHRoYW5rcyBmb3IgeW91ciBwYXRpZW5jZSEiXX0sNTI5MTYwKGUpe2UuZXhwb3J0cz1bIldlJ3ZlIGxhdW5jaGVkIG5ldyBhbmQgbW9yZSBwb3dlcmZ1bCBzY3JlZW5lcnMgZm9yIHtjcnlwdG9Db2luc1NjcmVlbmVyTGlua1N0YXJ0fWNyeXB0byBjb2luc3tsaW5rRW5kfSwge2NleFNjcmVlbmVyTGlua1N0YXJ0fUNFWCBwYWlyc3tsaW5rRW5kfSwgYW5kIHtkZXhTY3JlZW5lckxpbmtTdGFydH1ERVggcGFpcnN7bGlua0VuZH0uIFRoZXkncmUgcGFja2VkIHdpdGggZXZlcnl0aGluZyB5b3UgbG92ZWQgZnJvbSB0aGUgb2xkIHZlcnNpb24sIHBsdXMgbW9yZSBkYXRhLCBzbWFydGVyIGZpbHRlcnMsIGFuZCBleGNpdGluZyBmZWF0dXJlcyBhbmQgbWV0cmljcy5cblRvIHN0cmVhbWxpbmUgeW91ciBleHBlcmllbmNlLCB3ZSdsbCBiZSByZW1vdmluZyB0aGlzIG9sZCB2ZXJzaW9uIHNvb24uIEV4cGxvcmUgdGhlIG5ldyBzY3JlZW5lcnMgbm93LiJdfSw3OTU3NyhlKXtlLmV4cG9ydHM9WyJXZWFsdGggTWFuYWdlbWVudCJdfSw3ODE5OTMoZSl7ZS5leHBvcnRzPVsiV2Vla2x5IFBlcmYiXX0sODQ2NjE0KGUpe2UuZXhwb3J0cz1bIldlZWtseSBQZXJmb3JtYW5jZSJdfSw5MTQ4MTYoZSl7ZS5leHBvcnRzPVsiV2VsZGluZyAmIFNvbGRlcmluZyBFcXVpcG1lbnQiXX0sODgxMjc3KGUpe2UuZXhwb3J0cz1bIldlc3Rlcm4gU2FoYXJhIl19LDYwOTQ1NShlKXtlLmV4cG9ydHM9WyJXaG9sZXNhbGUgRGlzdHJpYnV0b3JzIl19LDYyODk1KGUpe2UuZXhwb3J0cz1bIldpLUZpICYgV2ktTWF4IFByb3ZpZGVycyJdfSwyNjA5MTAoZSl7ZS5leHBvcnRzPVsiV2lsbGlhbXMgUGVyY2VudCBSYW5nZSAoMTQpIl19LDE5OTc4OChlKXtlLmV4cG9ydHM9WyJXaW5kIFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sNjEzNjc1KGUpe2UuZXhwb3J0cz1bIldpbmVyaWVzIl19LDI0NzE2NShlKXtlLmV4cG9ydHM9WyJXaXJlZCBUZWxlY29tbXVuaWNhdGlvbnMgQ2FycmllcnMiXX0sMTc4MzA1KGUpe2UuZXhwb3J0cz1bIldpcmVsZXNzIFRlbGVjb20iXX0sODUzMTY0KGUpe2UuZXhwb3J0cz1bIldpcmVsZXNzIFRlbGVjb21tdW5pY2F0aW9ucyJdfSwxMjU3NDMoZSl7ZS5leHBvcnRzPVsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDgwMDg0NShlKXtlLmV4cG9ydHM9WyJXaXJlcyAmIENhYmxlcyJdfSwzNDQzNzUoZSl7ZS5leHBvcnRzPVsiVEYiXX0sODQ3MTQxKGUpe2UuZXhwb3J0cz1bIlRUTSJdfSwyMzc3NDgoZSl7ZS5leHBvcnRzPVsiVFYgJiBWaWRlbyJdfSw1NDM1MzIoZSl7ZS5leHBvcnRzPVsiVG90YWwgQ29pbnMiXX0sODEyMzM1KGUpe2UuZXhwb3J0cz1bIlRvdGFsIENhcGl0YWwiXX0sNTc5MTA5KGUpe2UuZXhwb3J0cz1bIlRvdGFsIEN1cnJlbnQgQXNzZXRzIChNUlEpIl19LDQwMzY0NyhlKXtlLmV4cG9ydHM9WyJUb3RhbCBBc3NldHMgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSw0MDIyKGUpe2UuZXhwb3J0cz1bIlRvdGFsIEFzc2V0cyAoTVJRKSJdfSw5NzM2MChlKXtlLmV4cG9ydHM9WyJUb3RhbCBBc3NldHMgKFF1YXJ0ZXJseSBRb1EgR3Jvd3RoKSJdfSw1NDgzNDIoZSl7ZS5leHBvcnRzPVsiVG90YWwgQXNzZXRzIChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sNjIzODM3KGUpe2UuZXhwb3J0cz1bIlRvdGFsIERlYnQgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSw1Njg5MzQoZSl7ZS5leHBvcnRzPVsiVG90YWwgRGVidCAoTVJRKSJdfSw3OTMwMzYoZSl7ZS5leHBvcnRzPVsiVG90YWwgRGVidCAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDY3NTEwOChlKXtlLmV4cG9ydHM9WyJUb3RhbCBEZWJ0IChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sMzM0MTcxKGUpe2UuZXhwb3J0cz1bIlRvdGFsIExpYWJpbGl0aWVzIChNUlEpIl19LDYwNjkyMChlKXsKZS5leHBvcnRzPVsiVG90YWwgTGlhYmlsaXRpZXMgKEZZKSJdfSw1NDMwOTUoZSl7ZS5leHBvcnRzPVsiVG90YWwgU2hhcmVzIE91dHN0YW5kaW5nIl19LDQzNjQ3NChlKXtlLmV4cG9ydHM9WyJUb3RhbCBSZXZlbnVlIChGWSkiXX0sNDE0MjU4KGUpe2UuZXhwb3J0cz1bIlRvdGFsIGFzc2V0cyAoe3BlcmlvZH0pIl19LDQ2OTU1OChlKXtlLmV4cG9ydHM9WyJUb3RhbCBkZWJ0ICh7cGVyaW9kfSkiXX0sNzMzMjYoZSl7ZS5leHBvcnRzPVsiVG90YWwgZXF1aXR5ICh7cGVyaW9kfSkiXX0sMzM2MzAzKGUpe2UuZXhwb3J0cz1bIlRvdGFsIHNoYXJlcyBvdXRzdGFuZGluZyJdfSwzMDIxNjUoZSl7ZS5leHBvcnRzPVsiVG90YWwgcmV2ZW51ZSAoe3BlcmlvZH0pIl19LDE1MjgzMyhlKXtlLmV4cG9ydHM9WyJUb3lzICYgR2FtZXMgUmV0YWlsZXJzIl19LDM1NzgwNChlKXtlLmV4cG9ydHM9WyJUb3lzICYgSnV2ZW5pbGUgUHJvZHVjdHMiXX0sNjIyMzI3KGUpe2UuZXhwb3J0cz1bIlRveXMgJiBKdXZlbmlsZSBQcm9kdWN0cyBXaG9sZXNhbGUiXX0sNDcyOTcxKGUpe2UuZXhwb3J0cz1bIlRvYmFjY28iXX0sNjE0NDUwKGUpe2UuZXhwb3J0cz1bIlRvZGF5Il19LDgzMjQ0OChlKXtlLmV4cG9ydHM9WyJUb2dvIl19LDEwNDE3NyhlKXtlLmV4cG9ydHM9WyJUb2tlbGF1Il19LDk0MDQ4MyhlKXtlLmV4cG9ydHM9WyJUb21vcnJvdyJdfSwyNTA1NTUoZSl7ZS5leHBvcnRzPVsiVG9uZ2EiXX0sNjQ3MDgzKGUpe2UuZXhwb3J0cz1bIlRvb2xzICYgSGFyZHdhcmUiXX0sMTE4MDkyKGUpe2UuZXhwb3J0cz1bIlRvb2xzICYgSG91c2V3YXJlcyJdfSw1NDk0MzcoZSl7ZS5leHBvcnRzPVsiVG9wIDIwIGVjb25vbWllcyJdfSw4MTQwMjEoZSl7ZS5leHBvcnRzPVsiVG9wIGdhaW5lcnMiXX0sMzg0NTQwKGUpe2UuZXhwb3J0cz1bIlRvcCBsb3NlcnMiXX0sMTg5NDgoZSl7ZS5leHBvcnRzPVsiVGF4aSAmIExpbW91c2luZSJdfSw2OTkxMjIoZSl7ZS5leHBvcnRzPVsiVGFibGV0ICYgTmV0Ym9vayBDb21wdXRlcnMiXX0sMjczMTU3KGUpe2UuZXhwb3J0cz1bIlRhaXdhbiwgQ2hpbmEiXX0sOTY4NDU4KGUpe2UuZXhwb3J0cz1bIlRhamlraXN0YW4iXX0sNTk3MzQ4KGUpe2UuZXhwb3J0cz1bIlRhbm5pbmcgJiBTb2Z0ZW5pbmcgYWdlbnRzIl19LDQ5ODE4MyhlKXtlLmV4cG9ydHM9WyJUYW56YW5pYSJdfSw4NTE5OTMoZSl7ZS5leHBvcnRzPVsiVGV4dGlsZXMiXX0sMjIzNjQ0KGUpe2UuZXhwb3J0cz1bIlRleHRpbGVzICYgTGVhdGhlciBHb29kcyJdfSw4MjA2NDcoZSl7ZS5leHBvcnRzPVsiVGV4dGlsZXMgJiBMZWF0aGVyIEdvb2RzIFdob2xlc2FsZSJdfSw1Njk1OTUoZSl7ZS5leHBvcnRzPVsiVGVjaG5pY2FsIFJhdGluZyJdfSwyNzEwNzkoZSl7ZS5leHBvcnRzPVsiVGVjaG5vbG9neSJdfSw3NjA1MTMoZSl7ZS5leHBvcnRzPVsiVGVjaG5vbG9neSBDb25zdWx0aW5nICYgT3V0c291cmNpbmcgU2VydmljZXMiXX0sNjQwOTUzKGUpe2UuZXhwb3J0cz1bIlRlY2hub2xvZ3kgU2VydmljZXMiXX0sMjU1ODIwKGUpe2UuZXhwb3J0cz1bIlRlbGVtZWRpY2luZSBTZXJ2aWNlcyJdfSw5MTYxODUoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb24gQ29uc3RydWN0aW9uIl19LDE4NTE2NChlKXtlLmV4cG9ydHM9WyJUZWxlY29tbXVuaWNhdGlvbnMgTmV0d29yayBJbmZyYXN0cnVjdHVyZSJdfSwzODk2ODkoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIEVxdWlwbWVudCJdfSw1NzMyNjcoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIFJlc2VsbGVycyJdfSw4NTI1ODUoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDgyNzk4MChlKXtlLmV4cG9ydHM9WyJUZWxldmlzaW9uIEJyb2FkY2FzdGluZyJdfSwyMjEzNTUoZSl7ZS5leHBvcnRzPVsiVGVzdGluZyAmIE1lYXN1cmluZyBFcXVpcG1lbnQiXX0sOTIxNzg2KGUpe2UuZXhwb3J0cz1bIlRlc3RpbmcgTGFib3JhdG9yaWVzIl19LDQ5MjU3NyhlKXtlLmV4cG9ydHM9WyJUZXN0aW5nIFNlcnZpY2VzIl19LDU1MzA0NChlKXtlLmV4cG9ydHM9WyJUaGFpbGFuZCJdfSw1MTk0NzQoZSl7ZS5leHBvcnRzPVsiVGhlIGFsZXJ0IGNhbid0IGJlIGVuYWJsZWQiXX0sMTk0NjAwKGUpe2UuZXhwb3J0cz1bIlRoZSBjdXJyZW5jeSBzZXQgZm9yIHRoZSB0cmFkZWQgaW5zdHJ1bWVudCBieSB0aGUgcmVsZXZhbnQgY29tcGFueSJdfSw0MTU0MShlKXtlLmV4cG9ydHM9WyJUaGVhdHJlcyAmIFBlcmZvcm1pbmcgQXJ0cyJdfSwzNTg0MjEoZSl7ZS5leHBvcnRzPVsiVGhlcm1hbCBTb2xhciBTeXN0ZW1zICYgRXF1aXBtZW50Il19LDE3MDgwOShlKXtlLmV4cG9ydHM9WyJUaGlzIE1vbnRoIl19LDEyNzQ4MyhlKXtlLmV4cG9ydHM9WyJUaGlzIFdlZWsiXX0sNjc2NDQyKGUpe2UuZXhwb3J0cz1bIlRoaXMgZGF0YSBpcyBvbmx5IGF2YWlsYWJsZSBkaXJlY3RseSBvbiB7b3Blbkxpbmt9VHJhZGluZ1ZpZXd7Y2xvc2VMaW5rfSJdfSw3NDg1NDQoZSl7ZS5leHBvcnRzPVsiVGhpcyBsZWdhY3kgdmVyc2lvbiBvZiBDcnlwdG8gUGFpcnMgU2NyZWVuZXIgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCJdfSw4OTAzODcoZSl7ZS5leHBvcnRzPVsiVGhyZWUgQmxhY2sgQ3Jvd3MiXX0sMjc3MDk3KGUpe2UuZXhwb3J0cz1bIlRocmVlIFdoaXRlIFNvbGRpZXJzIl19LDgyODQyMChlKXtlLmV4cG9ydHM9WyJUaWNrZXIiXX0sNTgxNTEoZSl7ZS5leHBvcnRzPVsiVGlsZSAmIFBhdmluZyBNYXRlcmlhbCBNYW51ZmFjdHVyaW5nIl19LDc3NTc1NShlKXtlLmV4cG9ydHM9WyJUaW1iZXIgUkVJVHMiXX0sMzIwNyhlKXtlLmV4cG9ydHM9WyJUaW1iZXIgVHJhY3QgT3BlcmF0aW9ucyJdfSw4NjIxMTkoZSl7ZS5leHBvcnRzPVsiVGltZSJdfSw3NjUzKGUpe2UuZXhwb3J0cz1bIlRpbWUgSW50ZXJ2YWwiXX0sODAzMDUxKGUpe2UuZXhwb3J0cz1bIlRpbW9yLUxlc3RlIl19LDk2MDA1MyhlKXtlLmV4cG9ydHM9WyJUaXJlICYgVHViZSBNYW51ZmFjdHVyZXJzIl19LDEzNTAzMyhlKXtlLmV4cG9ydHM9WyJUaXJlIERlYWxlcnMiXX0sNTI2MDAxKGUpewplLmV4cG9ydHM9WyJUaXJlIFJldHJlYWRpbmciXX0sMjQyNzc1KGUpe2UuZXhwb3J0cz1bIlRpcmVzICYgUnViYmVyIFByb2R1Y3RzIl19LDE2MjEzMyhlKXtlLmV4cG9ydHM9WyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyBXaG9sZXNhbGUiXX0sNzIxMjI1KGUpe2UuZXhwb3J0cz1bIlRydWNraW5nIl19LDQyMTY0NyhlKXtlLmV4cG9ydHM9WyJUcnVja3MvQ29uc3RydWN0aW9uL0Zhcm0gTWFjaGluZXJ5Il19LDcyMTUyMihlKXtlLmV4cG9ydHM9WyJUcnVzdCBmdW5kIl19LDMzODg2NShlKXtlLmV4cG9ydHM9WyJUcmFkZSAmIEJ1c2luZXNzIFB1Ymxpc2hpbmciXX0sMjM0MDcxKGUpe2UuZXhwb3J0cz1bIlRyYWRlZCBWb2wiXX0sNTA5Njc5KGUpe2UuZXhwb3J0cz1bIlRyYWRlZCBWb2x1bWUiXX0sODE4NjAoZSl7ZS5leHBvcnRzPVsiVHJhbnNhY3Rpb24gJiBQYXltZW50IFNlcnZpY2VzIl19LDUzMzI2OShlKXtlLmV4cG9ydHM9WyJUcmFuc2xhdGlvbiAmIEludGVycHJldGF0aW9uIFNlcnZpY2VzIl19LDc2ODM5MChlKXtlLmV4cG9ydHM9WyJUcmFuc3BvcnRhdGlvbiJdfSw1MzM1OTEoZSl7ZS5leHBvcnRzPVsiVHJhdmVsIEFnZW50cyJdfSwxMTUyNzQoZSl7ZS5leHBvcnRzPVsiVHJlbmQtRm9sbG93aW5nIl19LDI5MTE3MyhlKXtlLmV4cG9ydHM9WyJUcmkgU3RhciBCZWFyaXNoIl19LDg2NzI2OChlKXtlLmV4cG9ydHM9WyJUcmkgU3RhciBCdWxsaXNoIl19LDMxNDg3KGUpe2UuZXhwb3J0cz1bIlRyaW5pZGFkIGFuZCBUb2JhZ28iXX0sNDMwMTM0KGUpe2UuZXhwb3J0cz1bIlR1dmFsdSJdfSw2Nzc1OShlKXtlLmV4cG9ydHM9WyJUdW5pc2lhIl19LDY4NzcyNShlKXtlLmV4cG9ydHM9WyJUdXJiaW5lIE1hbnVmYWN0dXJpbmciXX0sNzM1NjgzKGUpe2UuZXhwb3J0cz1bIlR1cmttZW5pc3RhbiJdfSw2MzE4MTAoZSl7ZS5leHBvcnRzPVsiVHVya2V5Il19LDk3MDYyNChlKXtlLmV4cG9ydHM9WyJUdXJrcyBhbmQgQ2FpY29zIElzbGFuZHMiXX0sNDMxMzc3KGUpe2UuZXhwb3J0cz1bIlUuUy4gVmlyZ2luIElzbGFuZHMiXX0sODk1Nzc0KGUpe2UuZXhwb3J0cz1bIlVPIl19LDE2MzExMChlKXtlLmV4cG9ydHM9WyJVQUUiXX0sNjIwMjExKGUpe2UuZXhwb3J0cz1bIlVJVCJdfSwzMDExMTcoZSl7ZS5leHBvcnRzPVsiVVNBIl19LDI1MDA3MihlKXtlLmV4cG9ydHM9WyJVbnVzdWFsIHZvbHVtZSJdfSwxMzc4ODgoZSl7ZS5leHBvcnRzPVsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIERyaWxsaW5nIl19LDY2MTk3NihlKXtlLmV4cG9ydHM9WyJVbmNvbnZlbnRpb25hbCBPaWwgJiBHYXMgUHJvZHVjdGlvbiJdfSw3NDIzMzgoZSl7ZS5leHBvcnRzPVsiVW5kZXJwZXJmb3JtaW5nIFNNQTUwIl19LDI0OTA5MShlKXtlLmV4cG9ydHM9WyJVbml0ZWQgQXJhYiBFbWlyYXRlcyJdfSwyODI3MyhlKXtlLmV4cG9ydHM9WyJVbml0ZWQgS2luZ2RvbSJdfSw5Njc5NDEoZSl7ZS5leHBvcnRzPVsiVW5pdGVkIFN0YXRlcyJdfSw3MzY3OTkoZSl7ZS5leHBvcnRzPVsiVW5pdGVkIFN0YXRlcyBNaW5vciBPdXRseWluZyBJc2xhbmRzIl19LDU4ODY5MyhlKXtlLmV4cG9ydHM9WyJVZ2FuZGEiXX0sMzE3NDc1KGUpe2UuZXhwb3J0cz1bIlVrcmFpbmUiXX0sOTk5OTYxKGUpe2UuZXhwb3J0cz1bIlVsdGltYXRlIE9zY2lsbGF0b3IgKDcsIDE0LCAyOCkiXX0sNzcwNDI0KGUpe2UuZXhwb3J0cz1bIlVwY29taW5nIEVhcm5pbmdzIERhdGUiXX0sOTI4NTUzKGUpe2UuZXhwb3J0cz1bIlVydWd1YXkiXX0sMzIzMTMyKGUpe2UuZXhwb3J0cz1bIlVyYW5pdW0iXX0sMTA3NDA1KGUpe2UuZXhwb3J0cz1bIlVyYW5pdW0gTWluaW5nIl19LDQ4NzAwNihlKXtlLmV4cG9ydHM9WyJVc2VkIENhciBEZWFsZXJzIl19LDU5MjYyNyhlKXtlLmV4cG9ydHM9WyJVc2VkIE1lcmNoYW5kaXNlIFN0b3JlcyJdfSw4OTExMzYoZSl7ZS5leHBvcnRzPVsiVXRpbGl0aWVzIl19LDc4Mzk3MChlKXtlLmV4cG9ydHM9WyJVemJla2lzdGFuIl19LDM3MjUyMyhlKXtlLmV4cG9ydHM9WyJWT0lQIEVxdWlwbWVudCAmIFN5c3RlbXMiXX0sMjk4MTEzKGUpe2UuZXhwb3J0cz1bIlZPSVAgU2VydmljZXMiXX0sMjUxMTY3KGUpe2UuZXhwb3J0cz1bIlZXQVAiXX0sMzM5NDA3KGUpe2UuZXhwb3J0cz1bIlZXTUEiXX0sMzUyNDU3KGUpe2UuZXhwb3J0cz1bIlZvbCAyNGggQ2hnICUiXX0sMjM0MDc3KGUpe2UuZXhwb3J0cz1bIlZvbCAyNGggaW4gVVNEIl19LDMzODM5MihlKXtlLmV4cG9ydHM9WyJWb2xhdGlsaXR5Il19LDkyOTU5NChlKXtlLmV4cG9ydHM9WyJWb2xhdGlsaXR5IE0iXX0sNTYzMzYzKGUpe2UuZXhwb3J0cz1bIlZvbGF0aWxpdHkgTW9udGgiXX0sMTExNTQ4KGUpe2UuZXhwb3J0cz1bIlZvbGF0aWxpdHkgVyJdfSwxNjIyNjUoZSl7ZS5leHBvcnRzPVsiVm9sYXRpbGl0eSBXZWVrIl19LDI0NzA2MihlKXtlLmV4cG9ydHM9WyJWb2x1bWUiXX0sNzExMTg4KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSAyNGggQ2hhbmdlICUiXX0sNTU3OTMzKGUpe2UuZXhwb3J0cz1bIlZvbHVtZSAyNGggaW4gVVNEIl19LDU0MzM5MShlKXtlLmV4cG9ydHM9WyJWb2x1bWUgV2VpZ2h0ZWQgTW92aW5nIEF2ZXJhZ2UgKDIwKSJdfSwxNTUyODAoZSl7ZS5leHBvcnRzPVsiVm9sdW1lIGxlYWRlcnMiXX0sNjkwMjA2KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSpQcmljZSJdfSw3OTYyNTYoZSl7ZS5leHBvcnRzPVsiVmFsdWF0aW9uIl19LDMxMDg2OShlKXtlLmV4cG9ydHM9WyJWYWx1ZSJdfSw0MTYyNTcoZSl7ZS5leHBvcnRzPVsiVmFudWF0dSJdfSwxMjY3NChlKXtlLmV4cG9ydHM9WyJWZXRlcmluYXJ5IERydWdzIl19LDYxOTQ5MChlKXtlLmV4cG9ydHM9WyJWZXRlcmluYXJ5IE1lZGljYWwgRXF1aXBtZW50ICYgU3VwcGxpZXMiXX0sNzkxMzg0KGUpe2UuZXhwb3J0cz1bIlZldGVyaW5hcnkgU2VydmljZXMiXX0sNjEwNjgwKGUpe2UuZXhwb3J0cz1bIlZlZ2V0YWJsZSwgRnJ1aXQgJiBOdXQgRmFybWluZyJdfSwyNDk2ODUoZSl7ZS5leHBvcnRzPVsiVmVuZGluZyBNYWNoaW5lIFByb3ZpZGVycyJdfSw2NDM1MDMoZSl7ZS5leHBvcnRzPVsiVmVuZXp1ZWxhIl19LDM4NjU4NihlKXsKZS5leHBvcnRzPVsiVmVudHVyZSBDYXBpdGFsIl19LDg1MjIxKGUpe2UuZXhwb3J0cz1bIlZpZXRuYW0iXX0sNDIzMjA2KGUpe2UuZXhwb3J0cz1bIlZpcmdpbiBJc2xhbmRzIChCcml0aXNoKSJdfSwzMDEyMjkoZSl7ZS5leHBvcnRzPVsiVmlyZ2luIElzbGFuZHMgKFUuUy4pIl19LDUxNzg1OShlKXtlLmV4cG9ydHM9WyJWaXNpdCBUcmFkaW5nVmlldyDigJQgZmluYW5jaWFsIGNoYXJ0aW5nIHBsYXRmb3JtIGFuZCB0cmFkaW5nIGNvbW11bml0eSJdfSw2NDc0NzEoZSl7ZS5leHBvcnRzPVsiWVREIFBlcmYiXX0sODUzMTAwKGUpe2UuZXhwb3J0cz1bIllURCBQZXJmb3JtYW5jZSJdfSw3MjM2MyhlKXtlLmV4cG9ydHM9WyJZb3UgYXJlIG5vdGlmaWVkIl19LDcxNzM1MChlKXtlLmV4cG9ydHM9WyJZb3UgaGF2ZSB1bnNhdmVkIGNoYW5nZXMgaW4geW91ciBjdXJyZW50IGNvbHVtbiBzZXQuIFdvdWxkIHlvdSBsaWtlIHRvIHNhdmUgdGhlbT8iXX0sMjcwNjQ0KGUpe2UuZXhwb3J0cz1bIllvdSBoYXZlIHVuc2F2ZWQgY2hhbmdlcyBpbiB5b3VyIGN1cnJlbnQgZmlsdGVyIHNldC4gV291bGQgeW91IGxpa2UgdG8gc2F2ZSB0aGVtPyJdfSw5NjMzMTgoZSl7ZS5leHBvcnRzPVsiWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzIGluIHlvdXIgY3VycmVudCBzY3JlZW4uIFdvdWxkIHlvdSBsaWtlIHRvIHNhdmUgdGhlbT8iXX0sMzI3MzA1KGUpe2UuZXhwb3J0cz1bIllvdSdyZSBjdXJyZW50bHkgdXNpbmcgb3VyIGxlZ2FjeSBTdG9jayBTY3JlZW5lci4gVGhpcyB2ZXJzaW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQgYW5kIHdvbid0IHJlY2VpdmUgYW55IHVwZGF0ZXMgb3IgZml4ZXMgbW92aW5nIGZvcndhcmQuIFRvIGNvbnRpbnVlIHNjcmVlbmluZyB3aXRoIGZ1bGwgc3BlZWQsIHJlbGlhYmlsaXR5LCBhbmQgbmV3IGZlYXR1cmVzLCBwbGVhc2Ugc3dpdGNoIHRvIG91ciBuZXcgU3RvY2sgU2NyZWVuZXIg4oCUIGJ1aWx0IGJhc2VkIG9uIHlvdXIgZmVlZGJhY2sgYW5kIHJlYWR5IHRvIHN1cHBvcnQgeW91ciB0cmFkaW5nIG5lZWRzLiBUcnVzdCB1cywgdGhlIG5ldyBzY3JlZW5lciBpcyB3b3J0aCBpdC4iXX0sMzA5NTIzKGUpe2UuZXhwb3J0cz1bIllhcm4gR29vZHMiXX0sMTgzNTY0KGUpe2UuZXhwb3J0cz1bIlllYXJseSBQZXJmIl19LDEyOTgwOShlKXtlLmV4cG9ydHM9WyJZZWFybHkgUGVyZm9ybWFuY2UiXX0sNDA5Mzg0KGUpe2UuZXhwb3J0cz1bIlllbWVuIl19LDk2NTU3MyhlKXtlLmV4cG9ydHM9WyJZZXN0ZXJkYXkiXX0sODY3MzkzKGUpe2UuZXhwb3J0cz1bIlphbWJpYSJdfSw5NTkxNTUoZSl7ZS5leHBvcnRzPVsiWmltYmFid2UiXX0sOTUwMjA3KGUpe2UuZXhwb3J0cz1bIlppbmMgT3JlIE1pbmluZyJdfSw3MjExMTgoZSl7ZS5leHBvcnRzPVsiYW5udWFsbHkiXX0sNjUzNjkoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIG1vbnRobHkiXX0sMjYwMTkzKGUpe2UuZXhwb3J0cz1bImJpbGxlZCBhbm51YWxseSJdfSw1NTY1NjgoZSl7ZS5leHBvcnRzPVsibW9udGhseSJdfSw4NjM4NTIoZSl7ZS5leHBvcnRzPVsidGhyZWUgbW9udGhzIl19LDgzNTgoZSl7ZS5leHBvcnRzPVsidHJpYWwiXX0sMTUzNzY2KGUpe2UuZXhwb3J0cz1bIntwcm9QbGFuTmFtZX0gVHJpYWwiXX0sMjk1NjIwKGUpe2UuZXhwb3J0cz1bIntyZXNvbHV0aW9ufSBDSEciXX0sNjAyNjAxKGUpe2UuZXhwb3J0cz1bIntyZXNvbHV0aW9ufSBDSEcgJSJdfSw5MDY1NTQoZSl7ZS5leHBvcnRzPVsiw4VsYW5kIElzbGFuZHMiXX0sNTU0NzIyKGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggZXZlcnkgbWludXRlcyIsIlJlZnJlc2ggZXZlcnkgezB9IG1pbnV0ZXMiXX0sNjMxNDQ3KGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggZXZlcnkgc2Vjb25kIiwiUmVmcmVzaCBldmVyeSB7MH0gc2Vjb25kcyJdfSwzMjM0ODUoZSl7ZS5leHBvcnRzPVsibW9udGgiLCJtb250aHMiXX0sMjQ1MjYyKGUpe2UuZXhwb3J0cz1bIntudW1iZXJ9IGRheSIsIntudW1iZXJ9IGRheXMiXX0sODI0MjE4KGUpe2UuZXhwb3J0cz1bIntudW1iZXJ9IGhvdXIiLCJ7bnVtYmVyfSBob3VycyJdfSw5ODM3NjQoZSl7ZS5leHBvcnRzPVsie251bWJlcn0gaXRlbSIsIntudW1iZXJ9IGl0ZW1zIl19LDcyMDg5MyhlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSBtb250aCIsIntudW1iZXJ9IG1vbnRocyJdfSw1NDA1NjUoZSl7ZS5leHBvcnRzPVsie251bWJlcn0gbWF0Y2giLCJ7bnVtYmVyfSBtYXRjaGVzIl19LDcwNDk1OChlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSBtaW51dGUiLCJ7bnVtYmVyfSBtaW51dGVzIl19LDgzMjcxNyhlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSB3ZWVrIiwie251bWJlcn0gd2Vla3MiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfSwyNTg2NjcoZSl7ZS5leHBvcnRzPU9iamVjdC5jcmVhdGUobnVsbCksZS5leHBvcnRzWyIjQUFQTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFwcGxlIEluYyJdLGUuZXhwb3J0c1siI0FNRVg6U0NITy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNjaHdhYiBTaG9ydC1UZXJtIFUuUy4gVHJlYXN1cnkgRVRGIl0sZS5leHBvcnRzWyIjQU1FWDpTSFlHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2hhcmVzIDAtNSBZRUFSIEhpZ2ggWWllbGQgQ29ycG9yYXRlIEJvbmQgRVRGIl0sZS5leHBvcnRzWyIjQVNYOlhBRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9BU1ggQWxsIEF1c3RyYWxpYW4gNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBU1g6WEFULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBBbGwgQXVzdHJhbGlhbiAyMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBU1g6WEpPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCAyMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBVURDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhci9DYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNBVURDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFN3aXNzIEZyYW5jIl0sCmUuZXhwb3J0c1siI0FVREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQVVETlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNBVURSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFJ1c3NpYW4gUnVibGUiXSxlLmV4cG9ydHNbIiNBVURVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQkNCQTpJTVYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgTUVSVkFMIEluZGV4Il0sZS5leHBvcnRzWyIjQkNIRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBDYXNoIC8gRXVybyJdLGUuZXhwb3J0c1siI0JDSFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gQ2FzaCAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQkVMRVg6QkVMRVgxNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJFTEVYIDE1IEluZGV4Il0sZS5leHBvcnRzWyIjQklTVDpYVTEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJJU1QgMTAwIEluZGV4Il0sZS5leHBvcnRzWyIjQklUTUVYOlhCVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBVLlMuIERvbGxhciBJbmRleCJdLGUuZXhwb3J0c1siI0JNRTpJQkMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJQkVYIDM1IEluZGV4Il0sZS5leHBvcnRzWyIjQk1GQk9WRVNQQTpJQk9WLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQm92ZXNwYSBJbmRleCJdLGUuZXhwb3J0c1siI0JNRkJPVkVTUEE6SUJSQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklCcmFzaWwgSW5kZXgiXSxlLmV4cG9ydHNbIiNCTUZCT1ZFU1BBOklCWEwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWwgNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNCTVY6Q1Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaGluYSBTWDIwIFJUIl0sZS5leHBvcnRzWyIjQk1WOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGb3JkIE1vdG9yIENvbXBhbnkiXSxlLmV4cG9ydHNbIiNCTVY6TUUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQk1WIElQQyBJbmRleCJdLGUuZXhwb3J0c1siI0JSTEpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyYXppbGlhbiBSZWFsIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQlNFOklUSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklUSSBMdGQiXSxlLmV4cG9ydHNbIiNCU0U6U0VOU0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIEJTRSBTZW5zZXggSW5kZXgiXSxlLmV4cG9ydHNbIiNCVENCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQnJhemlsaWFuIFJlYWwiXSxlLmV4cG9ydHNbIiNCVENDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQ2FuYWRpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQlRDQ05ZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIENoaW5lc2UgWXVhbiJdLGUuZXhwb3J0c1siI0JUQ0VVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBFdXJvIl0sZS5leHBvcnRzWyIjQlRDR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEJyaXRpc2ggUG91bmQiXSxlLmV4cG9ydHNbIiNCVENKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQlRDS1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNCVENQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gUG9saXNoIFpsb3R5Il0sZS5leHBvcnRzWyIjQlRDUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFJ1c3NpYW4gUnVibGUiXSxlLmV4cG9ydHNbIiNCVENUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gVGhhaSBCYWh0Il0sZS5leHBvcnRzWyIjQlRDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQlRHVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBHb2xkIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNCVkw6U1BCTFBHUFQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgLyBCVkwgUGVydSBHZW5lcmFsIEluZGV4IChQRU4pIl0sZS5leHBvcnRzWyIjQlZTUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyYXppbCBCb3Zlc3BhIEluZGV4Il0sZS5leHBvcnRzWyIjQ0FESlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQ0FEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNDQk9FOk9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNDQk9FOlZJWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZvbGF0aWxpdHkgUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI0NCT1Q6WkIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlQtQm9uZCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29ybiBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBNZWFsIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpOMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyIxMCBZZWFyIFQtTm90ZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaTzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT2F0IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpRMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyIzMCBEYXkgRmVkZXJhbCBGdW5kcyBJbnRlcmVzdCBSYXRlIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpSMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSaWNlIEZ1dHVyZXMiXSwKZS5leHBvcnRzWyIjQ0JPVDpaUzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaVzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiV2hlYXQgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NCT1RfTUlOSTpYSzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBNaW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UX01JTkk6WFcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIldoZWF0IE1pbmkgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NCT1RfTUlOSTpZTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIERvdyBKb25lcyAoJDUpIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDSEZKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBGcmFuYyAvIEphcGFuZXNlIFllbiJdLGUuZXhwb3J0c1siI0NIRlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIEZyYW5jIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNDTUU6QlRDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIENNRSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FOkNCMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCdXR0ZXIgRnV0dXJlcy1DYXNoIChDb250aW51b3VzOiBDdXJyZW50IGNvbnRyYWN0IGluIGZyb250KSJdLGUuZXhwb3J0c1siI0NNRTpHRjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRmVlZGVyIENhdHRsZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FOkhFMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMZWFuIEhvZ3MgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NNRTpMRTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGl2ZSBDYXR0bGUgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NNRV9NSU5JOkU3MSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEUtbWluaSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FX01JTkk6RVMxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgRS1taW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDTUVfTUlOSTpKNzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIEUtbWluaSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FX01JTkk6TlExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5BU0RBUSAxMDAgRS1taW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDTUVfTUlOSTpSVFkxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtTWluaSBSdXNzZWxsIDIwMDAgSW5kZXggRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkFFUDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWx1bWluaXVtIEV1cm9wZWFuIFByZW1pdW0gRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkFVUDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWx1bWludW0gTVcgVS5TLiBUcmFuc2FjdGlvbiBQcmVtaXVtIFBsYXR0cyAoMjVNVCkgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkdDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWDpIRzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29wcGVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWDpTSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLW1pbmkgQ29wcGVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFJMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaWx2ZXIgKE1pbmkpIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIChNaW5pKSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ09QUEVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3BwZXIiXSxlLmV4cG9ydHNbIiNDT1JOVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3JuIl0sZS5leHBvcnRzWyIjQ09UVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3R0b24iXSxlLmV4cG9ydHNbIiNDUllQVE9DQVA6VE9UQUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDcnlwdG8gVG90YWwgTWFya2V0IENhcCwgJCJdLGUuZXhwb3J0c1siI0RGTTpERk1HSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRGTSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21wb3NpdGUgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKQ0lBR0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEFncmljdWx0dXJlIENhcHBlZCBDb21wb25lbnQiXSxlLmV4cG9ydHNbIiNESjpESkNJQ0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IENvY29hIl0sZS5leHBvcnRzWyIjREo6REpDSUVOLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBFbmVyZ3kiXSxlLmV4cG9ydHNbIiNESjpESkNJR0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEdvbGQiXSxlLmV4cG9ydHNbIiNESjpESkNJR1Itc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEdyYWlucyJdLGUuZXhwb3J0c1siI0RKOkRKQ0lJSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggTmlja2VsIl0sZS5leHBvcnRzWyIjREo6REpDSUtDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBDb2ZmZWUiXSxlLmV4cG9ydHNbIiNESjpESkNJU0Itc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IFN1Z2FyIl0sZS5leHBvcnRzWyIjREo6REpDSVNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBTaWx2ZXIiXSxlLmV4cG9ydHNbIiNESjpESkktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIEluZGV4Il0sCmUuZXhwb3J0c1siI0RKOkRKVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBUcmFuc3BvcnRhdGlvbiBBdmVyYWdlIEluZGV4Il0sZS5leHBvcnRzWyIjREo6REpVLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIFV0aWxpdHkgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKVVNDTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBVLlMuIENvYWwgSW5kZXgiXSxlLmV4cG9ydHNbIiNFR1g6RUdYMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFR1ggMzAgSW5kZXgiXSxlLmV4cG9ydHNbIiNFVENCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSBDbGFzc2ljIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI0VUQ0VVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIENsYXNzaWMgLyBFdXJvIl0sZS5leHBvcnRzWyIjRVRDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gQ2xhc3NpYyAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjRVRIQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBCaXRjb2luIl0sZS5leHBvcnRzWyIjRVRIRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBFdXJvIl0sZS5leHBvcnRzWyIjRVRIR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBCcml0aXNoIFBvdW5kIl0sZS5leHBvcnRzWyIjRVRISlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBKYXBhbmVzZSBZZW4iXSxlLmV4cG9ydHNbIiNFVEhLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNFVEhUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFRoYWkgQmFodCJdLGUuZXhwb3J0c1siI0VUSFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVUJVTkQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEJ1bmQiXSxlLmV4cG9ydHNbIiNFVVJBVUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQXVzdHJhbGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVVJCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQnJhemlsaWFuIFJlYWwiXSxlLmV4cG9ydHNbIiNFVVJDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQ2FuYWRpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjRVVSQ0hGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIFN3aXNzIEZyYW5jIl0sZS5leHBvcnRzWyIjRVVSR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEJyaXRpc2ggUG91bmQiXSxlLmV4cG9ydHNbIiNFVVJKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjRVVSTk9LLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIE5vcndlZ2lhbiBLcm9uZSJdLGUuZXhwb3J0c1siI0VVUk5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVVJPTkVYVDpBRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBRVggSW5kZXgiXSxlLmV4cG9ydHNbIiNFVVJPTkVYVDpCRUwyMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJFTCAyMCBJbmRleCJdLGUuZXhwb3J0c1siI0VVUk9ORVhUOlBYMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLGUuZXhwb3J0c1siI0VVUlJVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjRVVSUlVCX1RPTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBSdXNzaWFuIFJ1YmxlIFRPTSJdLGUuZXhwb3J0c1siI0VVUlNFSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBTd2VkaXNoIEtyb25hIl0sZS5leHBvcnRzWyIjRVVSVFJZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIFR1cmtpc2ggTGlyYSJdLGUuZXhwb3J0c1siI0VVUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0VVU1RYNTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sZS5leHBvcnRzWyIjRk9SRVhDT006VVMyMDAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgU21hbGwgQ2FwIDIwMDAiXSxlLmV4cG9ydHNbIiNGUkE0MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLGUuZXhwb3J0c1siI0ZSRUQ6R0RQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR3Jvc3MgRG9tZXN0aWMgUHJvZHVjdCwgMSBEZWNpbWFsIl0sZS5leHBvcnRzWyIjRlJFRDpQT1Atc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUb3RhbCBQb3B1bGF0aW9uOiBBbGwgQWdlcyBJbmNsdWRpbmcgQXJtZWQgRm9yY2VzIE92ZXJzZWFzIl0sZS5leHBvcnRzWyIjRlJFRDpVTlJBVEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaXZpbGlhbiBVbmVtcGxveW1lbnQgUmF0ZSJdLGUuZXhwb3J0c1siI0ZUU0VNWVg6RkJNS0xDSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZUU0UgQnVyc2EgTWFsYXlzaWEgS0xDSSBJbmRleCJdLGUuZXhwb3J0c1siI0ZXQjpLVDEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJLZXkgVHJvbmljIENvctGALiJdLGUuZXhwb3J0c1siI0ZYOkFVUzIwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9BU1ggSW5kZXgiXSxlLmV4cG9ydHNbIiNGWDpVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0dCUEFVRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBBdXN0cmFsaWFuIERvbGxhciJdLGUuZXhwb3J0c1siI0dCUENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBDYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNHQlBDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gU3dpc3MgRnJhbmMiXSwKZS5leHBvcnRzWyIjR0JQRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEV1cm8iXSxlLmV4cG9ydHNbIiNHQlBKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjR0JQTlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIE5ldyBaZWFsYW5kIERvbGxhciJdLGUuZXhwb3J0c1siI0dCUFBMTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBQb2xpc2ggWmxvdHkiXSxlLmV4cG9ydHNbIiNHQlBSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gUnVzc2lhbiBSdWJsZSJdLGUuZXhwb3J0c1siI0dCUFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0dFUjMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiREFYIEluZGV4Il0sZS5leHBvcnRzWyIjR09PRy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFscGhhYmV0IEluYyAoR29vZ2xlKSBDbGFzcyBDIl0sZS5leHBvcnRzWyIjR09PR0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQSJdLGUuZXhwb3J0c1siI0dQVzpBQ0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBY2F1dG9nYXoiXSxlLmV4cG9ydHNbIiNHUFc6V0lHMjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJXSUcyMCBJbmRleCJdLGUuZXhwb3J0c1siI0hTSTpIU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgSW5kZXgiXSxlLmV4cG9ydHNbIiNJQ0VVUzpEWDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgSW5kZXggRnV0dXJlcyJdLGUuZXhwb3J0c1siI0lEWDpDT01QT1NJVEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJRFggQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6SFNDRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkhhbmcgU2VuZyBDaGluYSBFbnRlcnByaXNlcyBJbmRleCJdLGUuZXhwb3J0c1siI0lOREVYOkpLU0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYWthcnRhIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI0lOREVYOktMU0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCdXJzYSBNYWxheXNpYSBLTENJIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6TUlCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUlCIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6TU9ZMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gU3RveHggNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNJTkRFWDpTVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTVEkgSW5kZXgiXSxlLmV4cG9ydHNbIiNJTkRFWDpUV0lJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVGFpd2FuIFdlaWdodGVkIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6WExZMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNoYW5naGFpIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI0lPVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklPVEEgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0pQTjIyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLGUuZXhwb3J0c1siI0pQWUtSVy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNKUFlSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbmVzZSBZZW4gLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjSlBZVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNMS09ILXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTFVLT0lMIl0sZS5leHBvcnRzWyIjTFNFOlNDSE8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTY2hvbGl1bSBHcm91cCBQbGMgT3JkIDFQIl0sZS5leHBvcnRzWyIjTFRDQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGl0ZWNvaW4gLyBCcmF6aWxpYW4gUmVhbCJdLGUuZXhwb3J0c1siI0xUQ0JUQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI0xUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNMVU5BVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTHVuYSAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjTU9FWDpCUjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJlbnQgT2lsIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOkdBWlAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHQVpQUk9NIl0sZS5leHBvcnRzWyIjTU9FWDpJTU9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1PRVggUnVzc2lhIEluZGV4Il0sZS5leHBvcnRzWyIjTU9FWDpNR05ULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUFHTklUIl0sZS5leHBvcnRzWyIjTU9FWDpNSUNFWElOREVYQ0Ytc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNT0VYIFJ1c3NpYSBJbmRleCJdLGUuZXhwb3J0c1siI01PRVg6TVgxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQ0VYIEluZGV4IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOk1YMiEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNSUNFWCBJbmRleCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTU9FWDpSSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUlRTIEluZGV4IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOlJUU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSVFMgSW5kZXgiXSxlLmV4cG9ydHNbIiNNT0VYOlJVQUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVbml0ZWQgQ29tcGFueSBSVVNBTCBQTEMiXSxlLmV4cG9ydHNbIiNNT0VYOlNCRVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTQkVSQkFOSyJdLGUuZXhwb3J0c1siI01PRVg6VlRCUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZUQiJdLGUuZXhwb3J0c1siI01TRlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNaWNyb3NvZnQgQ29ycC4iXSwKZS5leHBvcnRzWyIjTkFTMTAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgMTAwIENhc2ggQ0ZEIl0sZS5leHBvcnRzWyIjTkFTREFROkFNRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFkdmFuY2VkIE1pY3JvIERldmljZXMgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROkdPT0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQyJdLGUuZXhwb3J0c1siI05BU0RBUTpHT09HTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFscGhhYmV0IEluYyAoR29vZ2xlKSBDbGFzcyBBIl0sZS5leHBvcnRzWyIjTkFTREFROkhHWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggSG91c2luZyBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6SUVGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyA3LTEwIFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxlLmV4cG9ydHNbIiNOQVNEQVE6SUVJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAzLTcgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLGUuZXhwb3J0c1siI05BU0RBUTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGVyaXMgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROklYSUMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXNkYXEgQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjTkFTREFROkxDSUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMdWNpZCBHcm91cCwgSW5jLiJdLGUuZXhwb3J0c1siI05BU0RBUTpMRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxhbmRzJyBFbmQgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROk5EWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5hc2RhcSAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6T1NYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUEhMWCBPaWwgU2VydmljZSBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6U0hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAxLTMgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLGUuZXhwb3J0c1siI05BU0RBUTpTT1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQaGlsYWRlbHBoaWEgU2VtaWNvbmR1Y3RvciBJbmRleCJdLGUuZXhwb3J0c1siI05BU0RBUTpUTFQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJc2hhcmVzIDIwKyBZZWFyIFRyZWFzdXJ5IEJvbmQgRVRGIl0sZS5leHBvcnRzWyIjTkFTREFROlVUWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggVXRpbGl0eSBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6WEFVLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUEhMWCBHb2xkIGFuZCBTaWx2ZXIgU2VjdG9yIEluZGV4Il0sZS5leHBvcnRzWyIjTkFTREFROlpTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWnNjYWxlciBJbmMiXSxlLmV4cG9ydHNbIiNORU9VU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJORU8gLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI05HQVMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXR1cmFsIEdhcyAoSGVucnkgSHViKSJdLGUuZXhwb3J0c1siI05LWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLGUuZXhwb3J0c1siI05TRTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRpYW4gVGVsZXBob25lIEluZHVzdHJpZXMgTGltaXRlZCJdLGUuZXhwb3J0c1siI05TRTpOSUZUWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5pZnR5IDUwIEluZGV4Il0sZS5leHBvcnRzWyIjTllNRVg6QUVaMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWSBFdGhhbm9sIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpDSjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29jb2EgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOkNMMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaWdodCBDcnVkZSBPaWwgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOkhPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWSBIYXJib3IgVUxTRCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllNRVg6S1QxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvZmZlZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllNRVg6TkcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5hdHVyYWwgR2FzIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpQQTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGFsbGFkaXVtIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpQTDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGxhdGludW0gRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOlJCMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSQk9CIEdhc29saW5lIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpUVDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ290dG9uIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWF9NSU5JOlFHMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLW1pbmkgTmF0dXJhbCBHYXMgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYX01JTkk6UU0xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBMaWdodCBDcnVkZSBPaWwgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYX01JTkk6UVUxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBHYXNvbGluZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllTRTpCQUJBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxpYmFiYSBHcm91cCBIb2xkaW5ncyBMdGQuIl0sZS5leHBvcnRzWyIjTllTRTpGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRk9SRCBNVFIgQ08gREVMIl0sZS5leHBvcnRzWyIjTllTRTpIRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkhhd2FpaWFuIEVsZWN0cmljIEluZHVzdHJpZXMiXSxlLmV4cG9ydHNbIiNOWVNFOk5ZQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ZU0UgQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjTllTRTpQQlItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQRVRST0xFTyBCUkFTSUxFSVJPIFNBIFBFVFJPQlIiXSxlLmV4cG9ydHNbIiNOWVNFOlhBWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFNRVggQ29tcG9zaXRlIEluZGV4Il0sCmUuZXhwb3J0c1siI05ZU0U6WE1JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBBUkNBIE1ham9yIE1hcmtldCBJbmRleCJdLGUuZXhwb3J0c1siI05aREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIERvbGxhciAvIEphcGFuZXNlIFllbiJdLGUuZXhwb3J0c1siI05aRFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIERvbGxhciAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjTlpYOkFMTEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvTlpYIEFsbCBJbmRleCAoQ2FwaXRhbCBJbmRleCkiXSxlLmV4cG9ydHNbIiNOWlg6Tlo1MEctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgLyBOWlggNTAgSW5kZXggR3Jvc3MiXSxlLmV4cG9ydHNbIiNPQU5EQTpOQVRHQVNVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIE5hdHVyYWwgR2FzIl0sZS5leHBvcnRzWyIjT0FOREE6U1BYNTAwVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI09BTkRBOlhDVVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29wcGVyIChVUyQgLyBsYikiXSxlLmV4cG9ydHNbIiNPTVhDT1A6T01YQzI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIENvcGVuaGFnZW4gMjUgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhDT1A6U0NITy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNjaG91dyAmIENvIEEvUyJdLGUuZXhwb3J0c1siI09NWEhFWDpPTVhIMjUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggSGVsc2lua2kgMjUgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhSU0U6T01YUkdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFJpZ2EgR3Jvc3MgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhTVE86T01YUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFN0b2NraG9sbSAzMCBJbmRleCJdLGUuZXhwb3J0c1siI09NWFRTRTpPTVhUR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggVGFsbGlubiBHcm9zcyBJbmRleCJdLGUuZXhwb3J0c1siI09NWFZTRTpPTVhWR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggVmlsbml1cyBHcm9zcyBJbmRleCJdLGUuZXhwb3J0c1siI09UQzpJSFJNRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgTVNDSSBKYXBhbiBTSFMiXSxlLmV4cG9ydHNbIiNRU0U6R05SSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlFFIEluZGV4Il0sZS5leHBvcnRzWyIjUlRTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2lhbiBSVFMgSW5kZXgiXSxlLmV4cG9ydHNbIiNSVVNTRUxMOlJVQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NlbGwgMzAwMCBJbmRleCJdLGUuZXhwb3J0c1siI1JVU1NFTEw6UlVJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2VsbCAxMDAwIEluZGV4Il0sZS5leHBvcnRzWyIjUlVTU0VMTDpSVVQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSdXNzZWxsIDIwMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTRVQ6R0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHbG9iYWwgQ29ubmVjdGlvbnMgUHVibGljIENvbXBhbnkiXSxlLmV4cG9ydHNbIiNTSVg6Ri1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZvcmQgTW90b3IgQ29tcGFueSJdLGUuZXhwb3J0c1siI1NJWDpTTUktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBNYXJrZXQgSW5kZXgiXSxlLmV4cG9ydHNbIiNTT0xVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb2xhbmEgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1NPWUJOVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBTb3liZWFucyJdLGUuZXhwb3J0c1siI1NQOk9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTUDpTUEdTQ0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgR29sZG1hbiBTYWNocyBDb21tb2RpdHkgSW5kZXgiXSxlLmV4cG9ydHNbIiNTUDpTUFgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEluZGV4Il0sZS5leHBvcnRzWyIjU1A6U1ZYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBWYWx1ZSBJbmRleCJdLGUuZXhwb3J0c1siI1NQWDUwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTVUdBUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU3VnYXIiXSxlLmV4cG9ydHNbIiNTWlNFOjM5OTAwMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNoZW56aGVuIENvbXBvbmVudCBJbmRleCJdLGUuZXhwb3J0c1siI1RBREFXVUw6MjM3MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1pZGRsZSBFYXN0IFNwZWNpYWxpemVkIENhYmxlcyBDby4iXSxlLmV4cG9ydHNbIiNUQURBV1VMOlRBU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUYWRhd3VsIEFsbCBTaGFyZXMgSW5kZXgiXSxlLmV4cG9ydHNbIiNUQVNFOlRBMzUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUQS0zNSBJbmRleCJdLGUuZXhwb3J0c1siI1RTWDpUU1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvVFNYIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI1RTWDpUWDYwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL1RTWCA2MCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpBVTEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6QVUxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpBWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciBDdXJyZW5jeSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpCWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIEN1cnJlbmN5IEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkNBMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBHb3Zlcm5tZW50IEJvbmRzLCAxMCBZUiJdLAplLmV4cG9ydHNbIiNUVkM6Q0ExMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkNBQzQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0FDIDQwIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkNOMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaGluYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkNOMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpDWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6REUxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdlcm1hbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkRFMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR2VybWFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6REVVMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEQVggSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6REpJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpEWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpFUzEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3BhaW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpFUzEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNwYWluIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6RVVCVU5ELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBCdW5kIl0sZS5leHBvcnRzWyIjVFZDOkVYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6RlIxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZyYW5jZSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkZSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRnJhbmNlIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6RlRNSUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNaWxhbm8gSXRhbGlhIEJvcnNhIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkdCMDItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIiXSxlLmV4cG9ydHNbIiNUVkM6R0IxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVLIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6R0IxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkdPTEQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIEdvbGQgKFVTJCAvIE9aKSJdLGUuZXhwb3J0c1siI1RWQzpIU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6SUJFWDM1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSUJFWCAzNSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpJRDAzLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMyBZUiJdLGUuZXhwb3J0c1siI1RWQzpJRDEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SUQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRvbmVzaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpJTjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpJTjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6SVQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkl0YWx5IEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SVQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGFseSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOklYSUMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBDb21wb3NpdGUgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6SlAxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SlAxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkpYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiBDdXJyZW5jeSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpLT1NQSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktvcmVhIENvbXBvc2l0ZSBTdG9jayBQcmljZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpLUjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpLUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktvcmVhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6TVkxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1hbGF5c2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6TVkxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNYWxheXNpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOk5EWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIDEwMCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpOSTIyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLAplLmV4cG9ydHNbIiNUVkM6TkwxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldGhlcmxhbmRzIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOk5MMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV0aGVybGFuZHMgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpOWUEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWVNFIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpOWjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgR292ZXJubWVudCBCb25kcywgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6TloxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlBBTExBRElVTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gUGFsbGFkaXVtIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6UEwwNVktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb2xhbmQgR292ZXJubWVudCBCb25kcyA1IFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlBMMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9sYW5kIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6UExBVElOVU0tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFBsYXRpbnVtIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6UFQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBvcnR1Z2FsIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6UFQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb3J0dWdhbCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlNBNDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb3V0aCBBZnJpY2EgVG9wIDQwIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOlNJTFZFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU2lsdmVyIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6U1BYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpTU01JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgTWFya2V0IEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOlNUSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN0cmFpdHMgVGltZXMgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6U1g1RS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gU3RveHggNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6U1hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgRnJhbmMgQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6VFIxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlR1cmtleSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOlRSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVHVya2V5IEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6VUtPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIEJyZW50IENydWRlIE9pbCJdLGUuZXhwb3J0c1siI1RWQzpVS1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6VVMwMi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMiBZUiJdLGUuZXhwb3J0c1siI1RWQzpVUzAyWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMiBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpVUzA1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyA1IFlSIl0sZS5leHBvcnRzWyIjVFZDOlVTMDVZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyA1IFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlVTMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOlVTMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAzMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpVU09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gV1RJIENydWRlIE9pbCJdLGUuZXhwb3J0c1siI1RWQzpWSVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJWb2xhdGlsaXR5IFMmUCA1MDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6WlhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sZS5leHBvcnRzWyIjVFdJSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBXZWlnaHRlZCBJbmRleCJdLGUuZXhwb3J0c1siI1RXU0U6VEFJRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUYWl3YW4gQ2FwaXRhbGl6YXRpb24gV2VpZ2h0ZWQgU3RvY2sgSW5kZXgiXSxlLmV4cG9ydHNbIiNUV1RSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVHdpdHRlciBJbmMiXSxlLmV4cG9ydHNbIiNVSzEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZUU0UgMTAwIEluZGV4Il0sZS5leHBvcnRzWyIjVUtPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENydWRlIE9pbCAoQnJlbnQpIl0sZS5leHBvcnRzWyIjVU5JVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVW5pc3dhcCAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjVVMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxlLmV4cG9ydHNbIiNVU0RBVUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjVVNEQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBCcmF6aWxpYW4gUmVhbCJdLAplLmV4cG9ydHNbIiNVU0RDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIENhbmFkaWFuIERvbGxhciJdLGUuZXhwb3J0c1siI1VTRENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gU3dpc3MgRnJhbmMiXSxlLmV4cG9ydHNbIiNVU0RDTlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIENoaW5lc2UgWXVhbiJdLGUuZXhwb3J0c1siI1VTRERLSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gRGFuaXNoIEtyb25lIl0sZS5leHBvcnRzWyIjVVNERVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBFdXJvIl0sZS5leHBvcnRzWyIjVVNER0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBQb3VuZCBTdGVybGluZyJdLGUuZXhwb3J0c1siI1VTREhLRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSG9uZyBLb25nIERvbGxhciJdLGUuZXhwb3J0c1siI1VTREhVRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSHVuZ2FyaWFuIEZvcmludCJdLGUuZXhwb3J0c1siI1VTRElEUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVwaWFoIl0sZS5leHBvcnRzWyIjVVNESUxTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBJc3JhZWxpIFNoZWtlbCJdLGUuZXhwb3J0c1siI1VTRElOUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSW5kaWFuIFJ1cGVlIl0sZS5leHBvcnRzWyIjVVNESlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxlLmV4cG9ydHNbIiNVU0RLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFNvdXRoIEtvcmVhbiJdLGUuZXhwb3J0c1siI1VTRE1YTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gTWV4aWNhbiBQZXNvIl0sZS5leHBvcnRzWyIjVVNETlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNVU0RQSFAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFBoaWxpcHBpbmUgcGVzbyJdLGUuZXhwb3J0c1siI1VTRFBMTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUG9saXNoIFpsb3R5Il0sZS5leHBvcnRzWyIjVVNEUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjVVNEUlVCX1RPTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVzc2lhbiBSdWJsZSBUT00iXSxlLmV4cG9ydHNbIiNVU0RTRUstc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFN3ZWRpc2ggS3JvbmEiXSxlLmV4cG9ydHNbIiNVU0RTR0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFNpbmdhcG9yZSBEb2xsYXIiXSxlLmV4cG9ydHNbIiNVU0RUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFRoYWkgQmFodCJdLGUuZXhwb3J0c1siI1VTRFRSWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gVHVya2lzaCBMaXJhIl0sZS5leHBvcnRzWyIjVVNEWkFSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTb3V0aCBBZnJpY2FuIFJhbmQiXSxlLmV4cG9ydHNbIiNVU09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ3J1ZGUgT2lsIChXVEkpIl0sZS5leHBvcnRzWyIjV0hFQVRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFdoZWF0Il0sZS5leHBvcnRzWyIjWEFHVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNYQVVVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIFNwb3QgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1hCVENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBDYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNYRVRSOkRBWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRBWCBJbmRleCJdLGUuZXhwb3J0c1siI1hNUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1vbmVybyAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjWFBEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBQYWxsYWRpdW0iXSxlLmV4cG9ydHNbIiNYUFRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQbGF0aW51bSAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjWFJQQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWFJQIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI1hSUEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlhSUCAvIEV1cm8iXSxlLmV4cG9ydHNbIiNYUlBVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJYUlAgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1pFQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlpjYXNoIC8gVS5TLiBEb2xsYXIiXX19XSk7"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/30288.59207aa2607ea1597287.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.560Z","timestamp":1785154590560,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/30288.59207aa2607ea1597287.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a9-c680\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2d57a6ac615056e8be8a1886e872b15b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":50816,"size_decoded":20318,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"ea1d9d8d3342c88f33ec3b530e0573ef","sha1":"d655950fc76c40243ee9494c5fcc45e069dbaad3","sha256":"5c4b42f42930e52d140aec5e82b967b86ea0bc4581cfea3ecd33ca21c156520f","sha512":"4a85bff8bc70939b4386535712fa0ce2eae8d2f970a7e4c0f966b40eef502520b53f0bcc55b8062e0d4154ec40c589d4be511f57f11176afdb68166e3b090436","ssdeep":"1536:M/5WmDah7ltfnbgA/bllhJ9AwCh85Q9BO9X/tH78kJM:MZilpvbAR9By/5M","tlshash":"6e330ac572d6f0ab03d605e584bb5042f33d49a9b80d84a1f658e9d13c66c9e63b3fac","first_seen":"2026-07-23T22:46:45.786098Z","last_seen":"2026-07-27T14:23:37.825633Z","times_seen":350,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szMDI4OF0sezg2MDAyNShlKXtlLmV4cG9ydHM9e3BhaXI6InBhaXIteHdHc1NYUjAiLHh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMzoieHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwIix4eHh4c21hbGw6Inh4eHhzbWFsbC14d0dzU1hSMCIseHh4c21hbGw6Inh4eHNtYWxsLXh3R3NTWFIwIix4eHNtYWxsOiJ4eHNtYWxsLXh3R3NTWFIwIix4c21hbGw6InhzbWFsbC14d0dzU1hSMCIsc21hbGw6InNtYWxsLXh3R3NTWFIwIixtZWRpdW06Im1lZGl1bS14d0dzU1hSMCIsbGFyZ2U6ImxhcmdlLXh3R3NTWFIwIix4bGFyZ2U6InhsYXJnZS14d0dzU1hSMCIseHhsYXJnZToieHhsYXJnZS14d0dzU1hSMCIseHh4bGFyZ2U6Inh4eGxhcmdlLXh3R3NTWFIwIixsb2dvOiJsb2dvLXh3R3NTWFIwIixza2VsZXRvbjoic2tlbGV0b24teHdHc1NYUjAiLGVtcHR5OiJlbXB0eS14d0dzU1hSMCJ9fSwxNDAwMTcoZSl7ZS5leHBvcnRzPXtsb2dvOiJsb2dvLVZDTkt1YldxIixoaWRkZW46ImhpZGRlbi1WQ05LdWJXcSIseHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzOiJ4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3EiLHh4eHNtYWxsOiJ4eHhzbWFsbC1WQ05LdWJXcSIseHhzbWFsbDoieHhzbWFsbC1WQ05LdWJXcSIseHNtYWxsOiJ4c21hbGwtVkNOS3ViV3EiLHNtYWxsOiJzbWFsbC1WQ05LdWJXcSIsbWVkaXVtOiJtZWRpdW0tVkNOS3ViV3EiLGxhcmdlOiJsYXJnZS1WQ05LdWJXcSIseGxhcmdlOiJ4bGFyZ2UtVkNOS3ViV3EiLHh4bGFyZ2U6Inh4bGFyZ2UtVkNOS3ViV3EiLHh4eGxhcmdlOiJ4eHhsYXJnZS1WQ05LdWJXcSIsc2tlbGV0b246InNrZWxldG9uLVZDTkt1YldxIixsZXR0ZXI6ImxldHRlci1WQ05LdWJXcSJ9fSw5NzUyODUoZSl7ZS5leHBvcnRzPXt3cmFwcGVyOiJ3cmFwcGVyLWhjdDJ5SnZLIixhbmltYXRlZDoiYW5pbWF0ZWQtaGN0MnlKdksiLHB1bHNhdGlvbjoicHVsc2F0aW9uLWhjdDJ5SnZLIn19LDM5OTA5MihlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zIjoiLjZzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIiwiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcy1oYWxmLXRpbWUiOiIuM3MgMHMgY3ViaWMtYmV6aWVyKC40LCAuMDEsIC4yMiwgMSkiLGxhYmVsOiJsYWJlbC1kemJkN2x5ViIsbG9nb1dyYXA6ImxvZ29XcmFwLWR6YmQ3bHlWIixleHBhbmRlZFdpdGhUcmFuc2l0aW9uOiJleHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWIixleHBhbmRlZEJ5Q2xpY2s6ImV4cGFuZGVkQnlDbGljay1kemJkN2x5ViIsc3RhcnQ6InN0YXJ0LWR6YmQ3bHlWIixlbmQ6ImVuZC1kemJkN2x5ViIsc25hcDoic25hcC1kemJkN2x5ViIsdG9wOiJ0b3AtZHpiZDdseVYiLGJvdHRvbToiYm90dG9tLWR6YmQ3bHlWIixsYXJnZToibGFyZ2UtZHpiZDdseVYiLGV4cGFuZGVkOiJleHBhbmRlZC1kemJkN2x5ViIsbGFiZWxfX2xpbms6ImxhYmVsX19saW5rLWR6YmQ3bHlWIn19LDU2OTM5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ZlYXR1cmVFbmFibGVkOigpPT5wLG9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQ6KCk9PmN9KTt2YXIgcj1uKDk0ODM4MCksaT1uKDM3NzIyNiksbz1uKDg1NjE5Nikscz1uKDkzMjM2NSk7Y29uc3QgYT1uZXcgci5EZWxlZ2F0ZSxjPSgpPT5hLGw9ImZvcmNlZmVhdHVyZXRvZ2dsZS4iO2NvbnN0IHU9bmV3IGNsYXNze2VuYWJsZUZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGwrZSwidHJ1ZSIpLGEuZmlyZShlKX1kaXNhYmxlRmVhdHVyZShlKXtzLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0obCtlLCJmYWxzZSIpLGEuZmlyZShlKX1yZXNldEZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGwrZSksYS5maXJlKGUpfW9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQoKXtyZXR1cm4gYX19O2Z1bmN0aW9uIGQoZSx0KXtyZXR1cm4oIWVbdF18fC0xIT09ZVt0XSkmJighISgidHJ1ZSI9PT1zLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0obCt0KXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJ0cnVlIj09PXdpbmRvdy51c2VyPy5zZXR0aW5ncz8uW2wrdF0pfHwhKCJmYWxzZSI9PT1zLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0obCt0KXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJmYWxzZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltsK3RdKSYmKCEhZVt0XSYmKDE9PT1lW3RdfHwoMCxvLnNob3VsZEFmZmVjdFVzZXIpKHQsZVt0XSkpKSl9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e30sd2luZG93LlRyYWRpbmdWaWV3LkZlYXR1cmVUb2dnbGU9dTtjb25zdCBwPShnPXdpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGV8fHt9LCgwLGkub25XaWRnZXQpKCl8fFByb21pc2UuYWxsKFtuLmUoODU0MzQpLG4uZSg3Mjg1KSxuLmUoMTM5OTMpXSkudGhlbihuLmJpbmQobiw1MDcyODUpKS50aGVuKChlPT57ZS5wdXNoU3RyZWFtTXVsdGlwbGV4ZXIub24oImZlYXR1cmV0b2dnbGUiLChlPT57Y29uc3QgdD1kKGcsZS5uYW1lKTtnW2UubmFtZV09ZS5zdGF0ZSx0IT09ZChnLGUubmFtZSkmJmEuZmlyZShlLm5hbWUpfSkpfSkpLGQuYmluZChudWxsLGcpKTt2YXIgZzt3aW5kb3cuVHJhZGluZ1ZpZXcuaXNGZWF0dXJlRW5hYmxlZD1wfSw3OTI2MTIoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0RnJlc2hJbml0RGF0YTooKT0+bCxnZXRJbml0RGF0YTooKT0+Yyx1cGRhdGVJbml0RGF0YTooKT0+YX0pO3ZhciByPW4oMTM4NjM4KTtjb25zdCBpPSgwLG4oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uSW5pdERhdGEiKSxvPXdpbmRvdy5pbml0RGF0YXx8e307ZnVuY3Rpb24gcygpeyFmdW5jdGlvbigpe2NvbnN0IGU9d2luZG93O2UuaW5pdERhdGEmJmUuaW5pdERhdGEhPT1vJiYoT2JqZWN0LmFzc2lnbihvLGUuaW5pdERhdGEpLGUuaW5pdERhdGE9bykKfSgpO2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnc2NyaXB0W3R5cGU9ImFwcGxpY2F0aW9uL3Bycy5pbml0LWRhdGEranNvbiJdJyk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG49ZVt0XTt0cnl7Y29uc3QgZT1KU09OLnBhcnNlKCgwLHIuZW5zdXJlTm90TnVsbCkobi50ZXh0Q29udGVudCkpO09iamVjdC5hc3NpZ24obyxlKX1jYXRjaChlKXtpLmxvZ1dhcm4oYEZhaWxlZCB0byBwYXJzZSBpbml0RGF0YSBlbGVtZW50LiAke2V9YCl9ZmluYWxseXsoMCxyLmVuc3VyZU5vdE51bGwpKG4ucGFyZW50Tm9kZSkucmVtb3ZlQ2hpbGQobil9fWNvbnN0IHQ9by5jb250ZW50O3QmJm8uc3R1ZHlfbWV0YV9pbmZvX21hcCYmKHQuc3R1ZHlNZXRhSW5mb01hcD17Li4udC5zdHVkeU1ldGFJbmZvTWFwLC4uLm8uc3R1ZHlfbWV0YV9pbmZvX21hcH0pfWZ1bmN0aW9uIGEoKXtzKCl9ZnVuY3Rpb24gYygpe3JldHVybiBvfWZ1bmN0aW9uIGwoKXtyZXR1cm4gcygpLG99fSwxMTczMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9PmksdXJsV2l0aE1vYmlsZUFwcFBhcmFtczooKT0+b30pO3ZhciByPW4oNTg3NDM2KTtmdW5jdGlvbiBpKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGk9InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxvPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1yLmdldCgidHZfYXBwIil8fCIiO2l8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLG98fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IWkpfHwhKCJuZXciPT09ZXx8IW8pfWZ1bmN0aW9uIG8oZSx0PSExKXtpZihpKCJuZXciLHQpKXtjb25zdCB0PW5ldyBVUkwoZSxsb2NhdGlvbi5ocmVmKTt0LnNlYXJjaFBhcmFtcy5zZXQoIm1vYmlsZWFwcF9uZXciLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9aWYoaSgib2xkIix0KSl7Y29uc3QgdD1uZXcgVVJMKGUsbG9jYXRpb24uaHJlZik7dC5zZWFyY2hQYXJhbXMuc2V0KCJtb2JpbGVhcHAiLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9cmV0dXJuIGV9fSw5MzA1NjYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCksbi5kKHQse2RlZmF1bHQ6KCk9PkosZ2V0Qm9vbDooKT0+SSxnZXRGbG9hdDooKT0+TyxnZXRJbnQ6KCk9PkQsZ2V0SlNPTjooKT0+TSxnZXRWYWx1ZTooKT0+TixrZXlzOigpPT5CLGtleXNNYXNrOigpPT5XLGxvYWRlZDooKT0+Ryxsb2FkZWRNb2RlbDooKT0+cSxvblN5bmM6KCk9PmoscmVtb3ZlOigpPT5WLHNldEpTT046KCk9PkEsc2V0U2V0dGluZ3NBZGFwdGVyOigpPT5LLHNldFZhbHVlOigpPT5SLHN5bmM6KCk9Pkh9KTt2YXIgcj1uKDk0ODM4MCksaT1uKDIyMTA2MSksbz1uKDU0MDU3OCkscz1uKDkzMDIzMSksYT1uKDU2OTM5OCksYz1uKDkwOTc5OCksbD1uKDM3NzIyNiksdT1uKDM4NDAxNyksZD1uKDE1MjY5OSkscD1uKDkzMjM2NSk7d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307Y29uc3QgZz1bInMudHJhZGluZ3ZpZXcuY29tIiwiYmV0YWNkbi50cmFkaW5ndmlldy5jb20iXSxmPSgoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1c2VfbG9jYWxzdG9yYWdlX2Zvcl9zZXR0aW5ncyIpLCJsb2NhbCI9PT13aW5kb3cuZW52aXJvbm1lbnQ/NWUzOjEyZTQpLG09KDAsbC5vbldpZGdldCkoKT8idHJhZGluZ3ZpZXctd2lkZ2V0IjoidHJhZGluZ3ZpZXciLGg9bSsiLiI7bGV0IHksdix3LGI9ITEsXz1udWxsLHg9e30sUz1bXTtjb25zdCBrPVsvXndpZGdldGJhclwud2lkZ2V0XC53YXRjaGxpc3QuKy8sLy4rcXVpY2tzJC8sL153aWRnZXRiYXJcLmxheW91dC1zZXR0aW5ncyQvLC9eQ2hhcnRTaWRlVG9vbGJhcldpZGdldFwudmlzaWJsZSQvLC9eb253aWRnZXRcLndhdGNobGlzdCQvLC9eY2hhcnRcLmZhdm9yaXRlRHJhd2luZ3MkLywvXmNoYXJ0XC5mYXZvcml0ZURyYXdpbmdzUG9zaXRpb24kLywvXmNoYXJ0XC5mYXZvcml0ZUxpYnJhcnlJbmRpY2F0b3JzJC8sL15sb2FkQ2hhcnREaWFsb2cuZmF2b3JpdGVzJC8sL15DaGFydEZhdm9yaXRlRHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvLC9edHJhZGluZ1wuY2hhcnRcLnByb3RlcnR5JC8sL150cmFkaW5nX2Zsb2F0aW5nX3Rvb2xiYXJcLnBvc2l0aW9uJC8sL150cmFkaW5nXC5vcmRlcldpZGdldE1vZGVcLi8sL15zeW1ib2xXYXRlcm1hcmskLywvXnBpbmVyZWZlcmVuY2VcLnNpemUkLywvXnBpbmVyZWZlcmVuY2VcLnBvc2l0aW9uJC8sL15oaW50XC4rLywvXkNoYXJ0RHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvXTtjb25zdCBUPSgpPT4hKF98fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkKSxQPWU9PmgrZSxDPSgwLGkuZ2V0TG9nZ2VyKSgiTGliLlRWU2V0dGluZ3MiKSxFPWU9PntpZihifHx3KXJldHVybjtpZigoMCxhLmlzRmVhdHVyZUVuYWJsZWQpKCJkaXNhYmxlX3NhdmVfc2V0dGluZ3MiKSlyZXR1cm4gdm9pZCBDPy5sb2dXYXJuKCJTZXR0aW5ncyBmbGFzaGluZyBoYXMgYmVlbiBza2lwcGVkIGJlY2F1c2Ugb2YgZGlzYWJsZV9zYXZlX3NldHRpbmdzIGZlYXR1cmV0b2dnbGUiKTtpZigoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSlyZXR1cm47aWYoVCgpKXJldHVybjtpZigwPT09Uy5sZW5ndGgpcmV0dXJuO2NvbnN0IHQ9UztTPVtdO2NvbnN0IG49e307Zm9yKGxldCBlPXQubGVuZ3RoO2UtLTspe2NvbnN0IHI9dFtlXTtuW3JdPXhbcl0/P251bGx9Y29uc3Qgcj1uZXcgRm9ybURhdGE7ci5hcHBlbmQoImRlbHRhIixKU09OLnN0cmluZ2lmeShuKSksZSYmbmF2aWdhdG9yLnNlbmRCZWFjb24/bmF2aWdhdG9yLnNlbmRCZWFjb24oIi9zYXZlc2V0dGluZ3MvIixyKTooMCx1LmZldGNoKSgiL3NhdmVzZXR0aW5ncy8iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixib2R5OnJ9KS50aGVuKChuPT57aWYobi5va3x8KFM9Uy5jb25jYXQodCkpLFs0MjksNTAzXS5pbmNsdWRlcyhuLnN0YXR1cykpewpjb25zdCB0PTFlMyorKG4uaGVhZGVycy5nZXQoInJldHJ5LWFmdGVyIil8fDApfHwzZTU7dz1zZXRUaW1lb3V0KCgoKT0+e3c9dm9pZCAwLEUoZSl9KSx0KX19KSkuY2F0Y2goKCgpPT57Uz1TLmNvbmNhdCh0KX0pKX0sRj0oKT0+e3k9dm9pZCAwLFMubGVuZ3RoJiZFKCl9LEw9KGUsdD17fSk9PntpZihfKW51bGw9PXhbZV0/Xy5yZW1vdmVWYWx1ZShlKTpfLnNldFZhbHVlKGUseFtlXSk7ZWxzZSBpZihUKCkpdHJ5e251bGw9PXhbZV0/cC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFAoZSkpOnAuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShQKGUpLHhbZV0pfWNhdGNoKGUpe31lbHNlIFMucHVzaChlKSx5fHwoeT1zZXRUaW1lb3V0KEYsZikpO3Quc2tpcENyb3NzV2luZG93RXZlbnR8fGQuVFZYV2luZG93RXZlbnRzLmVtaXQoInNldHRpbmdzIixKU09OLnN0cmluZ2lmeSh7a2V5OmUsdmFsdWU6eFtlXX0pKX07ZnVuY3Rpb24gTihlLHQpe2NvbnN0IG49eFtlXTtyZXR1cm4gbj8/dH1mdW5jdGlvbiBNKGUsdCl7Y29uc3Qgbj1OKGUpO2lmKG51bGw9PW4pcmV0dXJuIHQ7dHJ5e3JldHVybiBKU09OLnBhcnNlKG4pfWNhdGNoKG4pe3JldHVybiBWKGUpLHR9fWZ1bmN0aW9uIFYoZSx0PXt9KXtyZXR1cm4gbnVsbCE9eFtlXSYmKGRlbGV0ZSB4W2VdLEwoZSkpLHQuZm9yY2VGbHVzaCYmRSgpLFh9ZnVuY3Rpb24gSShlLHQpe2NvbnN0IG49TihlKTtyZXR1cm4gbnVsbD09bj90OiEoIW58fCJmYWxzZSI9PT1ufHwwPT0rbil9ZnVuY3Rpb24gTyhlLHQpe2NvbnN0IG49TihlKTtpZihudWxsPT1uKXJldHVybiB0O2NvbnN0IHI9cGFyc2VGbG9hdChuKTtpZighaXNGaW5pdGUocikpdGhyb3cgbmV3IFR5cGVFcnJvcignIicrbisnIiBpcyBub3QgZmxvYXQgKGtleTogIicrZSsnIiknKTtyZXR1cm4gcn1mdW5jdGlvbiBEKGUsdCl7Y29uc3Qgbj1OKGUpO2lmKG51bGw9PW4pcmV0dXJuIHQ7Y29uc3Qgcj1wYXJzZUludChuLDEwKTtpZighaXNGaW5pdGUocikpdGhyb3cgbmV3IFR5cGVFcnJvcignIicrbisnIiBpcyBub3QgaW50IChrZXk6ICInK2UrJyIpJyk7cmV0dXJuIHJ9ZnVuY3Rpb24gUihlLHQsbj17fSl7Y29uc3Qgcj0iIit0O3JldHVybiB4W2VdIT09ciYmKHhbZV09cixMKGUsbikpLG4uZm9yY2VGbHVzaCYmIXYmJih2PXNldFRpbWVvdXQoKCgpPT57dj12b2lkIDAsRSgpfSksMTApKSxYfWZ1bmN0aW9uIEEoZSx0LG4pe3JldHVybiBSKGUsSlNPTi5zdHJpbmdpZnkodCksbiksWH1mdW5jdGlvbiBCKCl7cmV0dXJuIE9iamVjdC5rZXlzKHgpfWZ1bmN0aW9uIFcoZSl7Y29uc3QgdD1CKCksbj1bXSxyPW5ldyBSZWdFeHAoIl4iKygwLG8ucmVnRXhwRXNjYXBlKShlKS5yZXBsYWNlKC9cXFwqXFxcKi9naSwiLisiKS5yZXBsYWNlKC9cXFwqL2dpLCJbXi5dKyIpKyIkIiwiZ2kiKTtmb3IobGV0IGU9dC5sZW5ndGgtMTtlPj0wO2UtLSlyLnRlc3QodFtlXSkmJm4ucHVzaCh0W2VdKSxyLmxhc3RJbmRleD0wO3JldHVybiBufWQuVFZYV2luZG93RXZlbnRzLm9uKCJzZXR0aW5ncyIsKGU9Pntjb25zdCB0PUpTT04ucGFyc2UoZSk7bnVsbD09dC52YWx1ZT9kZWxldGUgeFt0LmtleV06eFt0LmtleV09dC52YWx1ZX0pKTtjb25zdCBVPWU9Pntmb3IobGV0IHQ9MDt0PGsubGVuZ3RoOysrdClpZihrW3RdLmV4ZWMoZSkpcmV0dXJuITA7cmV0dXJuITF9LCQ9ZT0+ZS5zdWJzdHJpbmcoMCxoLmxlbmd0aCk9PT1oLHo9ZT0+e3g9e307Y29uc3QgdD0wPT09T2JqZWN0LmtleXMoZSkubGVuZ3RoO3R8fChlPT57T2JqZWN0LmtleXMoZSkuZm9yRWFjaCgodD0+e3hbdF09ZVt0XSsiIn0pKX0pKGUpLChlPT57Zm9yKGxldCB0PXAuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3QtLTspe2NvbnN0IG49cC5UVkxvY2FsU3RvcmFnZS5rZXkodCk7biYmJChuKSYmKGUmJlIobi5zdWJzdHJpbmcoaC5sZW5ndGgpLHAuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShuKSkscC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG4pKX19KSh0KX0saj1uZXcgci5EZWxlZ2F0ZTtmdW5jdGlvbiBIKGUpe251bGwhPT1lPyhfP3ooXy5pbml0aWFsU2V0dGluZ3N8fHt9KTpUKCk/KCgoKT0+e2lmKCEoMCxsLm9uV2lkZ2V0KSgpfHwhZy5pbmNsdWRlcyh3aW5kb3cubG9jYXRpb24uaG9zdCkpcmV0dXJuO2NvbnN0IGU9InRyYWRpbmd2aWV3LiI7Zm9yKGxldCB0PXAuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3QtLTspe2NvbnN0IG49cC5UVkxvY2FsU3RvcmFnZS5rZXkodCk7aWYoMD09PW4uaW5kZXhPZihlKSl7Y29uc3QgdD1uLnJlcGxhY2UoZSxtKyIuIik7cC5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHQscC5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pKSxwLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obil9fX0pKCksKCgpPT57eD17fTtjb25zdCBlPSEoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSIpO2ZvcihsZXQgdD1wLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDt0LS07KXtjb25zdCBuPXAuVFZMb2NhbFN0b3JhZ2Uua2V5KHQpO2lmKCFufHwhJChuKSljb250aW51ZTtjb25zdCByPW4uc3Vic3RyaW5nKGgubGVuZ3RoKTtlJiYhVShyKXx8KHhbcl09cC5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pKX19KSgpKTp6KGV8fHt9KSxqLmZpcmUoKSk6Yj0hMH1mdW5jdGlvbiBLKGUpe189ZX1jb25zdCBHPSExLHE9ITEsWD17bG9hZGVkOkcsbG9hZGVkTW9kZWw6cSxnZXRWYWx1ZTpOLGdldEpTT046TSxnZXRCb29sOkksZ2V0RmxvYXQ6TyxnZXRJbnQ6RCxzZXRWYWx1ZTpSLHNldEpTT046QSxyZW1vdmU6VixrZXlzOkIsa2V5c01hc2s6VyxzeW5jOkgsb25TeW5jOmosc2V0U2V0dGluZ3NBZGFwdGVyOkt9LEo9WDt3aW5kb3cuVFZTZXR0aW5ncz1YLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLCgoKT0+eyJoaWRkZW4iIT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiYhMCE9PWRvY3VtZW50LmhpZGRlbnx8RSgpfSkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlaGlkZSIsKCgpPT57RSghMCl9KSksCndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLCgoKT0+e0UoITApfSkpLGMuZmx1c2hEZWxlZ2F0ZS5zdWJzY3JpYmUobnVsbCwoKCk9PntFKCl9KSksc2V0VGltZW91dCgoYXN5bmMoKT0+e2NvbnN0e2NsZWFyT2xkU2V0dGluZ3M6ZX09YXdhaXQgbi5lKDM1OTgwKS50aGVuKG4uYmluZChuLDc1NDE4NSkpO2UoKX0pLDNlNCl9LDE1MjE4MihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRDaXJjbGVMb2dvUGFpckh0bWw6KCk9Pml9KTt2YXIgcj1uKDYyNzg0OCk7ZnVuY3Rpb24gaShlKXtjb25zdHtwcmltYXJ5TG9nb1VybDp0LHNlY29uZGFyeUxvZ29Vcmw6bixzaXplOmksY2xhc3NOYW1lOnN9PWU7cmV0dXJuYDxzcGFuIGNsYXNzPSIkeygwLHIuZ2V0QmxvY2tTdHlsZUNsYXNzZXMpKGkscyl9Ij5cblx0XHRcdCR7byh7bG9nb1VybDpuLHNpemU6aX0pfVxuXHRcdFx0JHtvKHtsb2dvVXJsOnQsc2l6ZTppfSl9XG5cdFx0PC9zcGFuPmB9ZnVuY3Rpb24gbyhlKXtjb25zdHtsb2dvVXJsOnQsc2l6ZTpufT1lLGk9KDAsci5nZXRMb2dvU3R5bGVDbGFzc2VzKShuLDIsQm9vbGVhbih0KSk7cmV0dXJuIHZvaWQgMD09PXQ/YDxzcGFuIGNsYXNzPSIke2l9Ij48L3NwYW4+YDpgPGltZyBjbGFzcz0iJHtpfSIgY3Jvc3NvcmlnaW4gc3JjPSIke3R9IiBhbHQ9IiIgLz5gfX0sNjI3ODQ4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldEJsb2NrU3R5bGVDbGFzc2VzOigpPT5jLGdldExvZ29TdHlsZUNsYXNzZXM6KCk9Pmx9KTt2YXIgcj1uKDkxNDQ4NyksaT1uLm4ociksbz1uKDEzNjQpLHM9big4NjAwMjUpLGE9bi5uKHMpO2Z1bmN0aW9uIGMoZSx0KXtyZXR1cm4gaSgpKGEoKS5wYWlyLGEoKVtlXSx0KX1mdW5jdGlvbiBsKGUsdD0yLG49ITApe3JldHVybiBpKCkoYSgpLmxvZ28sYSgpW2VdLGEoKS5za2VsZXRvbixvLnNrZWxldG9uVGhlbWUud3JhcHBlciwhbiYmYSgpLmVtcHR5LDE9PT10JiZpKCkoby5za2VsZXRvblRoZW1lLmFuaW1hdGVkKSl9fSw4ODQ3OTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0Q2lyY2xlTG9nb0h0bWw6KCk9Pml9KTt2YXIgcj1uKDc5NDE4Nyk7bigxNDAwMTcpO2Z1bmN0aW9uIGkoZSl7Y29uc3QgdD0oMCxyLmdldFN0eWxlQ2xhc3NlcykoZS5zaXplLDIsZS5jbGFzc05hbWUpO3JldHVybigwLHIuaXNDaXJjbGVMb2dvV2l0aFVybFByb3BzKShlKT9gPGltZyBjbGFzcz0iJHt0fSIgY3Jvc3NvcmlnaW4gc3JjPSIke2UubG9nb1VybH0iIGFsdD0iIj5gOmA8c3BhbiBjbGFzcz0iJHt0fSI+JHtlLnBsYWNlaG9sZGVyTGV0dGVyfHwiIn08L3NwYW4+YH19LDc5NDE4NyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRTdHlsZUNsYXNzZXM6KCk9PmMsaXNDaXJjbGVMb2dvV2l0aFVybFByb3BzOigpPT5sfSk7dmFyIHI9big5MTQ0ODcpLGk9bi5uKHIpLG89bigxMzY0KSxzPW4oMTQwMDE3KSxhPW4ubihzKTtmdW5jdGlvbiBjKGUsdD0yLG4pe3JldHVybiBpKCkoYSgpLmxvZ28sYSgpW2VdLG4sMD09PXR8fDE9PT10P2koKShvLnNrZWxldG9uVGhlbWUud3JhcHBlcixhKCkuc2tlbGV0b24pOmEoKS5sZXR0ZXIsMT09PXQmJm8uc2tlbGV0b25UaGVtZS5hbmltYXRlZCl9ZnVuY3Rpb24gbChlKXtyZXR1cm4ibG9nb1VybCJpbiBlJiZudWxsIT09ZS5sb2dvVXJsJiZ2b2lkIDAhPT1lLmxvZ29VcmwmJjAhPT1lLmxvZ29VcmwubGVuZ3RofX0sMzA5OTIwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0N1c3RvbUJlaGF2aW91ckNvbnRleHQ6KCk9PnJ9KTtjb25zdCByPSgwLG4oNzc5NDc0KS5jcmVhdGVDb250ZXh0KSh7ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9KTtyLmRpc3BsYXlOYW1lPSJDdXN0b21CZWhhdmlvdXJDb250ZXh0In0sMjczMzEwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0ljb246KCk9Pml9KTt2YXIgcj1uKDc3OTQ3NCk7Y29uc3QgaT1yLmZvcndhcmRSZWYoKChlLHQpPT57Y29uc3R7aWNvbjpuPSIiLHRpdGxlOmksYXJpYUxhYmVsOm8sYXJpYUxhYmVsbGVkYnk6cyxhcmlhSGlkZGVuOmEsLi4uY309ZSxsPSEhKGl8fG98fHMpO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyb2xlOiJpbWciLC4uLmMscmVmOnQsImFyaWEtbGFiZWwiOm8sImFyaWEtbGFiZWxsZWRieSI6cywiYXJpYS1oaWRkZW4iOmF8fCFsLHRpdGxlOmksZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6e19faHRtbDpufX0pfSkpfSwxMzY0KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3NrZWxldG9uVGhlbWU6KCk9Pml9KTt2YXIgcj1uKDk3NTI4NSk7Y29uc3QgaT1uLm4ocikoKX0sMzQ0MTAzKGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1be2Q6IkUtTWluaSBTJlAgNTAwIix0OiJFUyJ9LHtkOiJFLU1pbmkgTmFzZGFxIDEwMCIsdDoiTlEifSx7ZDoiR29sZCIsdDoiR0MifSx7ZDoiU2lsdmVyIix0OiJTSSJ9LHtkOiJDcnVkZSBPaWwgV1RJIix0OiJDTCJ9LHtkOiJOYXR1cmFsIEdhcyIsdDoiTkcifSx7ZDoiQXVzdHJhbGlhbiBEb2xsYXIiLHQ6IjZBIn0se2Q6IkF1c3RyYWxpYW4gRG9sbGFyIChGbG9vcikiLHQ6IkFEIn0se2Q6IkV1cm8gRlgiLHQ6IjZFIn0se2Q6IkV1cm8gRlggKEZsb29yKSIsdDoiRUMifSx7ZDoiQ29ybiIsdDoiWkMifSx7ZDoiQ29ybiAoRmxvb3IpIix0OiJDIn0se2Q6IkV1cm9kb2xsYXIiLHQ6IkdFIn0se2Q6IkV1cm9kb2xsYXIgKEZsb29yKSIsdDoiRUQifV0sbj1mdW5jdGlvbigpe3ZhciBlPVt7cGF0dGVybjoiKCIsY3RvcjpvfSx7cGF0dGVybjoiKSIsY3RvcjpzfSx7cGF0dGVybjoiKyIsY3RvcjpjfSx7cGF0dGVybjoiLSIsY3RvcjpsfSx7cGF0dGVybjoiKiIsY3Rvcjp1fSx7cGF0dGVybjoiLyIsY3RvcjpkfSx7cGF0dGVybjoiXiIsY3RvcjpwfSx7cGF0dGVybjovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxjdG9yOmh9LHtwYXR0ZXJuOi9cLi8sY3Rvcjp3fSx7cGF0dGVybjovW2EtekEtWjAtOV9cdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZdW2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKnwnLis/Jy8sY3RvcjptfSx7CnBhdHRlcm46LydbXiddKi8sY3Rvcjp2fSx7cGF0dGVybjovW1wwLVx4MjBcc10rLyxjdG9yOml9XTtmdW5jdGlvbiBuKGUsdCl7dmFyIG49ZnVuY3Rpb24oKXt9O3JldHVybiBuLnByb3RvdHlwZT10LnByb3RvdHlwZSxlLnByb3RvdHlwZT1uZXcgbixlfWZ1bmN0aW9uIHIoKXt9ZnVuY3Rpb24gaShlKXt0aGlzLnZhbHVlPWV9ZnVuY3Rpb24gbygpe31mdW5jdGlvbiBzKCl7fWZ1bmN0aW9uIGEoKXt9ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKCl7fWZ1bmN0aW9uIHUoKXt9ZnVuY3Rpb24gZCgpe31mdW5jdGlvbiBwKCl7fXIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9LG4oaSxyKSxuKG8sciksby5wcm90b3R5cGUudmFsdWU9IigiLG4ocyxyKSxzLnByb3RvdHlwZS52YWx1ZT0iKSIsbihhLHIpLG4oYyxhKSxjLnByb3RvdHlwZS52YWx1ZT0iKyIsYy5wcm90b3R5cGUucHJlY2VkZW5jZT0wLGMucHJvdG90eXBlLmNvbW11dGF0aXZlPSEwLG4obCxhKSxsLnByb3RvdHlwZS52YWx1ZT0iLSIsbC5wcm90b3R5cGUucHJlY2VkZW5jZT0wLGwucHJvdG90eXBlLmNvbW11dGF0aXZlPSExLG4odSxhKSx1LnByb3RvdHlwZS52YWx1ZT0iKiIsdS5wcm90b3R5cGUucHJlY2VkZW5jZT0xLHUucHJvdG90eXBlLmNvbW11dGF0aXZlPSEwLG4oZCxhKSxkLnByb3RvdHlwZS52YWx1ZT0iLyIsZC5wcm90b3R5cGUucHJlY2VkZW5jZT0xLGQucHJvdG90eXBlLmNvbW11dGF0aXZlPSExLG4ocCxhKSxwLnByb3RvdHlwZS52YWx1ZT0iXiIscC5wcm90b3R5cGUucHJlY2VkZW5jZT0yLHAucHJvdG90eXBlLmNvbW11dGF0aXZlPSExO3ZhciBnPS9eJz8oPzooW0EtWjAtOV9dKyk6KT8oLio/KSc/JC9pLGY9L1srXC0vKl0vO2Z1bmN0aW9uIG0oZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIGgoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHkoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHYoKXttLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiB3KCl7aC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9bihtLHIpLG0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5oYXNPd25Qcm9wZXJ0eSgiX3RpY2tlciIpKXt2YXIgZT1mLnRlc3QodGhpcy5fdGlja2VyKT8iJyI6IiI7cmV0dXJuIGUrKHRoaXMuX2V4Y2hhbmdlP3RoaXMuX2V4Y2hhbmdlKyI6IjoiIikrdGhpcy5fdGlja2VyK2V9cmV0dXJuIHRoaXMudmFsdWV9LG0ucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKCl7dmFyIGU9Zy5leGVjKHRoaXMudmFsdWUpO2VbMV0mJih0aGlzLl9leGNoYW5nZT1lWzFdKSx0aGlzLl90aWNrZXI9ZVsyXX0sbS5wcm90b3R5cGUucGFyc2VBc0Z1dHVyZXM9ZnVuY3Rpb24oKXt0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKTtmb3IodmFyIGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHQuc29tZSgoZnVuY3Rpb24odCl7cmV0dXJuIHQudD09PWV9KSl9LG49MjtuPj0xOy0tbil7dmFyIHI9dGhpcy5fdGlja2VyLnNsaWNlKDAsbik7aWYoZShyKSl7dGhpcy5fcm9vdD1yLHRoaXMuX2NvbnRyYWN0PXRoaXMuX3RpY2tlci5zbGljZShuKTticmVha319fSxtLnByb3RvdHlwZS5leGNoYW5nZT1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX2V4Y2hhbmdlO251bGw9PWU/ZGVsZXRlIHRoaXMuX2V4Y2hhbmdlOnRoaXMuX2V4Y2hhbmdlPWUrIiJ9LG0ucHJvdG90eXBlLnRpY2tlcj1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3RpY2tlcjtudWxsPT1lP2RlbGV0ZSB0aGlzLl90aWNrZXI6dGhpcy5fdGlja2VyPWUrIiIsZGVsZXRlIHRoaXMuX3Jvb3QsZGVsZXRlIHRoaXMuX2NvbnRyYWN0fSxtLnByb3RvdHlwZS5yb290PWZ1bmN0aW9uKGUpe2lmKHRoaXMuaGFzT3duUHJvcGVydHkoIl9yb290Iil8fHRoaXMucGFyc2VBc0Z1dHVyZXMoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3Jvb3Q7bnVsbD09ZT9kZWxldGUgdGhpcy5fcm9vdDoodGhpcy5fcm9vdD1lKyIiLHRoaXMuX3Jvb3QmJih0aGlzLl90aWNrZXI9dGhpcy5fcm9vdCsodGhpcy5fY29udHJhY3R8fCIiKSkpfSxtLnByb3RvdHlwZS5jb250cmFjdD1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfY29udHJhY3QiKXx8dGhpcy5wYXJzZUFzRnV0dXJlcygpLCEoYXJndW1lbnRzLmxlbmd0aD4wKSlyZXR1cm4gdGhpcy5fcm9vdDtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jb250cmFjdDoodGhpcy5fY29udHJhY3Q9ZSsiIix0aGlzLl9yb290JiYodGhpcy5fdGlja2VyPXRoaXMuX3Jvb3QrdGhpcy5fY29udHJhY3QpKX0sbihoLHIpLGgucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaGFzT3duUHJvcGVydHkoIl9ub3JtYWxpemVkVmFsdWUiKT90aGlzLl9ub3JtYWxpemVkVmFsdWU6dGhpcy52YWx1ZX0saC5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oKXt0aGlzLl9ub3JtYWxpemVkVmFsdWU9dGhpcy52YWx1ZS5yZXBsYWNlKC9eMCt8XC4wKiQvZywiIikucmVwbGFjZSgvKFwuXGQqPykwKyQvLCIkMSIpLnJlcGxhY2UoL14oXC58JCkvLCIwJDEiKX0seS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX0sbih2LG0pLHYucHJvdG90eXBlLmlzSW5jb21wbGV0ZT0hMCx2LnByb3RvdHlwZS5pbmNvbXBsZXRlU3VnZ2VzdD1mdW5jdGlvbigpe2lmKCInIiE9PXRoaXMudmFsdWUpcmV0dXJuIFN0cmluZygiJyIpfSxuKHcsaCksdy5wcm90b3R5cGUuaXNJbmNvbXBsZXRlPSEwO3ZhciBiPW5ldyBSZWdFeHAoZS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiIoIisoInN0cmluZyI9PXR5cGVvZiBlLnBhdHRlcm4/ZS5wYXR0ZXJuLnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIik6ZS5wYXR0ZXJuLnNvdXJjZSkrIikifSkpLmNvbmNhdCgiLiIpLmpvaW4oInwiKSwiZyIpCjtmdW5jdGlvbiBfKHQsbil7dmFyIHIsbz1bXTtlOmZvcig7cj1iLmV4ZWModCk7KXtmb3IodmFyIHM9ZS5sZW5ndGg7cy0tOylpZihyW3MrMV0pe2lmKGVbc10uY3Rvcil7dmFyIGE9bmV3IGVbc10uY3RvcihyW3MrMV0pO2EuX29mZnNldD1yLmluZGV4LG8ucHVzaChhKX1jb250aW51ZSBlfXZhciBjPW5ldyB5KHJbMF0pO2MuX29mZnNldD1yLmluZGV4LG8ucHVzaChjKX1pZihuJiZuLnJlY292ZXIpe3ZhciBsO2ZvcihzPW8ubGVuZ3RoO3MtLTspe3ZhciB1PW9bc107aWYodSBpbnN0YW5jZW9mIGh8fHUgaW5zdGFuY2VvZiBtKXtpZih2b2lkIDAhPT1sKXt2YXIgZD1uZXcgbSgiIikscD1vLnNwbGljZShzLGwtcysxLGQpO2QudmFsdWU9cC5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnZhbHVlfSkpLmpvaW4oIiIpfWw9c31lbHNlIHUgaW5zdGFuY2VvZiBpfHwobD12b2lkIDApfX1yZXR1cm4gb31mdW5jdGlvbiB4KGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDtuKyspZVtuXWluc3RhbmNlb2YgaXx8dC5wdXNoKGVbbl0pO3JldHVybiB0fWZ1bmN0aW9uIFMoZSl7ZT14KGUpO2Zvcih2YXIgdCxuPVtdLHI9W10saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgYz1lW2ldO2lmKGMgaW5zdGFuY2VvZiBhKXIubGVuZ3RoJiZyW3IubGVuZ3RoLTFdLm1pblByZWNlZGVuY2U+Yy5wcmVjZWRlbmNlJiYocltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPWMucHJlY2VkZW5jZSk7ZWxzZSBpZihjIGluc3RhbmNlb2YgbylyLnB1c2godD17bWluUHJlY2VkZW5jZToxLzAsb3BlbkJyYWNlSW5kZXg6aX0pO2Vsc2UgaWYoYyBpbnN0YW5jZW9mIHMpe3ZhciBsPWVbKHQ9ci5wb3AoKSkub3BlbkJyYWNlSW5kZXgtMV0sdT1lW2krMV07dSBpbnN0YW5jZW9mIGEmJiEodS5wcmVjZWRlbmNlPD10Lm1pblByZWNlZGVuY2UpfHwhKCEobCBpbnN0YW5jZW9mIGEpfHxsLnByZWNlZGVuY2U8dC5taW5QcmVjZWRlbmNlfHxsLnByZWNlZGVuY2U9PT10Lm1pblByZWNlZGVuY2UmJmwuY29tbXV0YXRpdmUpfHwobi51bnNoaWZ0KHQub3BlbkJyYWNlSW5kZXgpLG4ucHVzaChpKSxyLmxlbmd0aCYmcltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPnQubWluUHJlY2VkZW5jZSYmKHJbci5sZW5ndGgtMV0ubWluUHJlY2VkZW5jZT10Lm1pblByZWNlZGVuY2UpKX19Zm9yKGk9bi5sZW5ndGg7aS0tOyllLnNwbGljZShuW2ldLDEpO3JldHVybiBlfWZ1bmN0aW9uIGsoZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoImV4cHJlc3Npb24gbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybihlPV8oZSkpLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBtfSkpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZXhjaGFuZ2UoKX0pKS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkpfWZ1bmN0aW9uIFQoZSl7cmV0dXJuIDEhPT0oZT1rKGUpKS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIFAoZSx0KXtyZXR1cm4oZT1rKGUpKS5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gdC5pbmNsdWRlcygoZXx8IiIpLnRvVXBwZXJDYXNlKCkpfSkpfWZ1bmN0aW9uIEMoZSl7cmV0dXJuIGUuam9pbigiIil9cmV0dXJue3Rva2VuaXplOl8sdmFsaWRhdGU6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PSJpbml0IixuPSJ2YXIiLHI9dCxjPXt3YXJuaW5nczpbXSxlcnJvcnM6W10saXNFbXB0eTohMH0sbD1bXSx1PTA7dTxlLmxlbmd0aDt1Kyspe2lmKCEoKHA9ZVt1XSlpbnN0YW5jZW9mIGkpKXtpZihkZWxldGUgYy5pc0VtcHR5LHAuaXNJbmNvbXBsZXRlKXt2YXIgZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246ImluY29tcGxldGVfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH07aWYocC5pbmNvbXBsZXRlU3VnZ2VzdCYmKGQucmVjb3Zlcj17YXBwZW5kOnAuaW5jb21wbGV0ZVN1Z2dlc3QoKX0pLGMud2FybmluZ3MucHVzaChkKSx1IT09ZS5sZW5ndGgtMSl7ZC5zdGF0dXM9ImVycm9yIjtjb250aW51ZX19aWYocCBpbnN0YW5jZW9mIG18fHAgaW5zdGFuY2VvZiBoKXtpZihyPT09bil7Yy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmV4cGVjdGVkX3Rva2VuIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnB9KTtjb250aW51ZX1yPW59ZWxzZSBpZihwIGluc3RhbmNlb2YgYSl7aWYociE9PW4pe2MuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9cj0ib3BlcmF0b3IifWVsc2UgaWYocCBpbnN0YW5jZW9mIG8pe2lmKHI9PT1uKXtjLmVycm9ycy5wdXNoKHtzdGF0dXM6ImVycm9yIixyZWFzb246InVuZXhwZWN0ZWRfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pO2NvbnRpbnVlfWwucHVzaChwKSxyPXR9ZWxzZSBpZihwIGluc3RhbmNlb2Ygcyl7aWYociE9PW4pe2MuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9bC5wb3AoKXx8Yy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmJhbGFuY2VkX2JyYWNlIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnAscmVjb3Zlcjp7cHJlcGVuZDpuZXcgb319KSxyPW59ZWxzZSBwIGluc3RhbmNlb2YgeSYmYy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bnBhcnNlZF9lbnRpdHkiLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pfX1mb3IoYy5icmFjZUJhbGFuY2U9bC5sZW5ndGgsciE9PW4mJmMud2FybmluZ3MucHVzaCh7c3RhdHVzOiJpbmNvbXBsZXRlIn0pO2wubGVuZ3RoOyl7dmFyIHA7ZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246InVuYmFsYW5jZWRfYnJhY2UiLG9mZnNldDoocD1sLnBvcCgpKS5fb2Zmc2V0LHRva2VuOnB9O3I9PT1uJiYoZC5yZWNvdmVyPXthcHBlbmQ6bmV3IHN9KSxjLndhcm5pbmdzLnB1c2goZCl9cmV0dXJuIGMuY3VycmVudFN0YXRlPXIsMD09PWMud2FybmluZ3MubGVuZ3RoJiZkZWxldGUgYy53YXJuaW5ncywKMD09PWMuZXJyb3JzLmxlbmd0aCYmZGVsZXRlIGMuZXJyb3JzLGN9LGZhY3Rvck91dEJyYWNlczpTLG5vcm1hbGl6ZVRva2VuczpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdLnBhcnNlJiZlW3RdLnBhcnNlKCk7cmV0dXJuIGV9LGZsaXA6ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49MCxyPTEsYz0yLGw9Myx1PW4scD0wLGc9MDtnPGUubGVuZ3RoO2crKyl7dmFyIGY9ZVtnXTtpZighKGYgaW5zdGFuY2VvZiBpKSlzd2l0Y2godSl7Y2FzZSBuOmlmKCEoZiBpbnN0YW5jZW9mIGgmJjE9PStmLnZhbHVlKSlyZXR1cm4hMTt1PXI7YnJlYWs7Y2FzZSByOmlmKCEodT09PXImJmYgaW5zdGFuY2VvZiBkKSlyZXR1cm4hMTt1PWMsdD1nKzE7YnJlYWs7Y2FzZSBjOmlmKGYgaW5zdGFuY2VvZiBvKXU9bCxwPTE7ZWxzZSBpZihmIGluc3RhbmNlb2YgYSlyZXR1cm4hMTticmVhaztjYXNlIGw6ZiBpbnN0YW5jZW9mIG8/cCsrOmYgaW5zdGFuY2VvZiBzJiYtLXA8PTAmJih1PWMpfX1yZXR1cm4gZS5zbGljZSh0KX0oZSk7cmV0dXJuIFModHx8W25ldyBoKCIxIiksbmV3IGQsbmV3IG9dLmNvbmNhdChlKS5jb25jYXQobmV3IHMpKX0saGFzQmF0c1N5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuIFAoZSxbIkJBVFMiXSl9LGhhc0VvZFN5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuKGU9VChlKSkmJi0xIT09ZS50b1VwcGVyQ2FzZSgpLmluZGV4T2YoIl9FT0QiKX0saGFzQ2h4anB5U3ltYm9sczpmdW5jdGlvbihlKXtyZXR1cm4gUChlLFsiQ0hYSlBZIl0pfSxoYXNGcmVlRGVsYXlTeW1ib2xzOmZ1bmN0aW9uKGUpe3JldHVybiBQKGUscHJvLmdldFByb2R1Y3RzQnlUeXBlKHByby5QUk9EVUNUX1RZUEVTLmV4Y2hhbmdlKS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLmV4Y2hhbmdlLnRvVXBwZXJDYXNlKCkrIl9ETFkifSkpKX0sZ2V0RXhjaGFuZ2U6VCxnZXRFeGNoYW5nZXM6ayxpc0V4Y2hhbmdlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuISEoZT1UKGUpKSYmZS5zdWJzdHJpbmcoMCx0Lmxlbmd0aCk9PT10fSxTeW1ib2xUb2tlbjptLEluY29tcGxldGVTeW1ib2xUb2tlbjp2LE51bWJlclRva2VuOmgsQmluYXJ5T3BlcmF0b3JUb2tlbjphLE9wZW5CcmFjZVRva2VuOm8sQ2xvc2VCcmFjZVRva2VuOnMsdGlja2VyOmZ1bmN0aW9uKGUpe3JldHVybiBuZXcgbShlKS50aWNrZXIoKX0sc2hvcnROYW1lOmZ1bmN0aW9uKGUpe2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJleHByZXNzaW9uIG11c3QgYmUgYSBzdHJpbmciKTt2YXIgdD1TKHgoXyhlKSkpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKGUpe2UgaW5zdGFuY2VvZiBtJiZlLmV4Y2hhbmdlKG51bGwpfSkpLEModCl9LG5vcm1hbGl6ZTpmdW5jdGlvbihlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcigiZXhwcmVzc2lvbiBtdXN0IGJlIGEgc3RyaW5nIik7cmV0dXJuIEMoUyh4KF8oZSkpKSl9fX0oKTtlLmV4cG9ydHM9bn0sMjMyOTQ4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldFByb2R1Y3RJZDooKT0+dSxpc0V4Y2hhbmdlOigpPT5sLGlzUGFpZFBybzooKT0+YSxpc1BsYW46KCk9PmMsaXNQcm86KCk9PnMsaXNQcm9kdWN0RGVmaW5lZDooKT0+aSxpc1RyaWFsOigpPT5vfSk7dmFyIHI9big1ODE4OTMpO2Z1bmN0aW9uIGkoZSl7cmV0dXJuISghZXx8IU9iamVjdC5rZXlzKGUpLmxlbmd0aCl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4hIWUuaXNfdHJpYWx9ZnVuY3Rpb24gcyhlKXtyZXR1cm4hIWU/LnByb19wbGFufWZ1bmN0aW9uIGEoZSl7cmV0dXJuIHMoZSkmJiFvKGUpfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUudHlwZT09PXIuUHJvZHVjdFR5cGUuUHJvUGxhbn1mdW5jdGlvbiBsKGUpe3JldHVybiBlLnR5cGU9PT1yLlByb2R1Y3RUeXBlLkV4Y2hhbmdlfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIGU/bChlKXx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUudHlwZT09PXIuUHJvZHVjdFR5cGUuQ29pbnN9KGUpP2UudGV4dF9pZD8/IiI6ZS5kaXNjb3VudF90ZXh0X2lkPz9lLnRleHRfaWQ/PyIiOiIifX0sODY0MDM0KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse0JpbGxpbmdDeWNsZTooKT0+cixNT05USExZX1NVQlNDUklQVElPTl9EQVlTX0xFTjooKT0+byxXRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOOigpPT5pfSksZnVuY3Rpb24oZSl7ZS5Nb250aGx5PSJtIixlLlRocmVlTW9udGhzPSIzbSIsZS5PbmVZZWFyPSJ5In0ocnx8KHI9e30pKTtjb25zdCBpPTcsbz0zMH0sNTgxODkzKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse1Byb2R1Y3RUeXBlOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLlByb1BsYW49MV09IlByb1BsYW4iLGVbZS5OZXdzRmVlZD0zXT0iTmV3c0ZlZWQiLGVbZS5FeGNoYW5nZT00XT0iRXhjaGFuZ2UiLGVbZS5Db25uZWN0aW9uPTZdPSJDb25uZWN0aW9uIixlW2UuQ29pbnM9OF09IkNvaW5zIixlW2UuU2NyaXB0UGFja2FnZT05XT0iU2NyaXB0UGFja2FnZSJ9KHJ8fChyPXt9KSl9LDQ5ODY1MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0lEQ0V4Y2hhbmdlOigpPT5pfSk7dmFyIHI9bigyMzI5NDgpO2Z1bmN0aW9uIGkoZSx0PSExKXtpZihlJiZlLnN0YXJ0c1dpdGgoImV4Y2hhbmdlLSIpKXJldHVybiBmdW5jdGlvbihlLHQ9ITEpe2NvbnN0IG49d2luZG93LnBybz8uZ2V0UHJvZHVjdChlKTtyZXR1cm4hKHZvaWQgMD09PW58fCEoMCxyLmlzUHJvZHVjdERlZmluZWQpKG4pfHwodD8hbi5pZGNfc2VydmljZV9jb2Rlc19kZWxheTohbi5pZGNfc2VydmljZV9jb2RlcykpfShlLHQpO2NvbnN0IG49KGV8fCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiB3aW5kb3cucHJvPy5nZXRJRENFeGNoYW5nZXModCk/LmluY2x1ZGVzKG4pPz8hMX19LDk1MjkwMChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHthY2N1bXVsYXRlOigpPT5zLGNvbWJpbmU6KCk9Pm99KTt2YXIgcj1uKDIzMjM2NCk7ZnVuY3Rpb24gaShlLHQsLi4ubil7bGV0IGk9bnVsbAo7Y29uc3Qgbz0oLi4udCk9PmUoLi4udC5tYXAoKGU9PmUudmFsdWUoKSkpLGk/LnZhbHVlKCkpLHM9aT1uZXcgci5XYXRjaGVkVmFsdWUobyguLi5uKSksYT0oKT0+e2NvbnN0IGU9bi5tYXAoKChlLHQpPT5lLnZhbHVlKCkpKTt0KC4uLmUpJiZzLnNldFZhbHVlKG8oLi4ubikpfSxjPW4ubWFwKChlPT5lLnNwYXduKCkpKTtmb3IoY29uc3QgZSBvZiBjKWUuc3Vic2NyaWJlKGEpO3JldHVybiBzLnJlYWRvbmx5KCkuc3Bhd24oKCgpPT57Yy5mb3JFYWNoKChlPT5lLmRlc3Ryb3koKSkpLG4uZm9yRWFjaCgoZT0+ZS5yZWxlYXNlKCkpKX0pKX1mdW5jdGlvbiBvKGUsLi4udCl7cmV0dXJuIGkoZSwoKCk9PiEwKSwuLi50KX1mdW5jdGlvbiBzKGUsdCwuLi5uKXtsZXQgaT1udWxsO2NvbnN0IHM9bygoKC4uLmUpPT4oZS5zcGxpY2UoLTEpLGUpKSwuLi5uKSxhPXQuc3Bhd24oKSxjPSh0LC4uLm4pPT57Y29uc3Qgcj10Lm1hcCgoZT0+ZS52YWx1ZSgpKSk7cmV0dXJuIGUociwuLi5uLGk/LnZhbHVlKCkpfSxsPWk9bmV3IHIuV2F0Y2hlZFZhbHVlKGMoYS52YWx1ZSgpLC4uLnMudmFsdWUoKSkpO2xldCB1PVtdO2NvbnN0IGQ9KCk9PntsLnNldFZhbHVlKGModSwuLi5zLnZhbHVlKCkpKX0scD1lPT57dS5mb3JFYWNoKChlPT5lLmRlc3Ryb3koKSkpLHU9ZS5tYXAoKGU9PmUuc3Bhd24oKSkpLHUuZm9yRWFjaCgoZT0+ZS5zdWJzY3JpYmUoZCkpKSxkKCl9O3AoYS52YWx1ZSgpKSxhLnN1YnNjcmliZShwKSxzLnN1YnNjcmliZShkKTtyZXR1cm4gbC5yZWFkb25seSgpLnNwYXduKCgoKT0+e3UuZm9yRWFjaCgoZT0+ZS5kZXN0cm95KCkpKSxhLmRlc3Ryb3koKSxzLmRlc3Ryb3koKSx0LnJlbGVhc2UoKX0pKX19LDE1MDE1MChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtndWlkOigpPT5pLHJhbmRvbUhhc2g6KCk9Pm8scmFuZG9tSGFzaE46KCk9PnN9KTtjb25zdCByPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiI7ZnVuY3Rpb24gaSgpe3JldHVybiJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZywoZT0+e2NvbnN0IHQ9MTYqTWF0aC5yYW5kb20oKXwwO3JldHVybigieCI9PT1lP3Q6MyZ0fDgpLnRvU3RyaW5nKDE2KX0pKX1mdW5jdGlvbiBvKCl7cmV0dXJuIHMoMTIpfWZ1bmN0aW9uIHMoZSl7bGV0IHQ9IiI7Zm9yKGxldCBuPTA7bjxlOysrbil7Y29uc3QgZT1NYXRoLmZsb29yKDYyKk1hdGgucmFuZG9tKCkpO3QrPXJbZV19cmV0dXJuIHR9fSw2NDA3NDQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCxuKXtyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgoZSx0KSxuKX1mdW5jdGlvbiBpKGUpe2NvbnN0IHQ9TWF0aC5jZWlsKGUpO3JldHVybiB0JTIhPTA/dC0xOnR9ZnVuY3Rpb24gbyhlKXtjb25zdCB0PU1hdGguY2VpbChlKTtyZXR1cm4gdCUyPT0wP3QtMTp0fWZ1bmN0aW9uIHMoZSl7cmV0dXJuIGU+MD9NYXRoLmZsb29yKGUpOk1hdGguY2VpbChlKX1mdW5jdGlvbiBhKGUpe3JldHVybiBlJTI9PTB9bi5kKHQse2NlaWxlZEV2ZW46KCk9PmksY2VpbGVkT2RkOigpPT5vLGNsYW1wOigpPT5yLGlzRXZlbjooKT0+YSx0b0ludDooKT0+c30pfSwyNDE5NTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y3JlYXRlV1ZGcm9tR2V0dGVyQW5kU3Vic2NyaXB0aW9uOigpPT5pfSk7dmFyIHI9bigyMzIzNjQpO2Z1bmN0aW9uIGkoZSx0KXtjb25zdCBuPW5ldyByLldhdGNoZWRWYWx1ZShlKCkpLGk9e307dC5zdWJzY3JpYmUoaSwoKCk9PntuLnNldFZhbHVlKGUobi52YWx1ZSgpKSl9KSk7cmV0dXJuIG4ucmVhZG9ubHkoKS5zcGF3bigoKCk9PnQudW5zdWJzY3JpYmVBbGwoaSkpKX19LDYwMTg0MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjbG9uZTooKT0+cyxkZWVwRXF1YWxzOigpPT5kLGhhc1Byb3BlcnR5OigpPT5sLGlzQXJyYXk6KCk9PnAsaXNFeGlzdGVudDooKT0+Zixpc0ludGVnZXI6KCk9Pm0saXNOYU46KCk9PmcsaXNOdW1iZXI6KCk9Pm8saXNPYmplY3Q6KCk9PmMsaXNTdHJpbmc6KCk9PmgsbWVyZ2U6KCk9PmEsbm90TnVsbDooKT0+eX0pO2NvbnN0IHI9bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIGkoZSl7cmV0dXJuIHIuaGFzKGUpfWZ1bmN0aW9uIG8oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBzKGUpe2lmKCFlfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIGU7bGV0IHQ7dD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcihjb25zdCBuIGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShuKSl7Y29uc3Qgcj1lW25dO3Rbbl09ciYmIm9iamVjdCI9PXR5cGVvZiByP3Mocik6cn1yZXR1cm4gdH1mdW5jdGlvbiBhKGUsdCl7aWYoIWMoZSl8fCFjKHQpKXJldHVybiBlO2Zvcihjb25zdFtuLHJdb2YgT2JqZWN0LmVudHJpZXModCkpaShuKXx8KHImJih1KHIpfHwhcChyKSYmT2JqZWN0LmdldFByb3RvdHlwZU9mKHIpIT09T2JqZWN0LnByb3RvdHlwZSk/ZVtuXT1yOihlLmhhc093blByb3BlcnR5KG4pJiZjKGVbbl0pfHwhYyhyKXx8KGVbbl09QXJyYXkuaXNBcnJheShyKT9bXTp7fSksYyhyKSYmYyhlW25dKT9hKGVbbl0scik6ZVtuXT1yKSk7cmV0dXJuIGV9ZnVuY3Rpb24gYyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lfWZ1bmN0aW9uIGwoZSx0KXtyZXR1cm4gdCBpbiBlfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIG51bGwhPWUmJihlLmNvbnN0cnVjdG9yPT09RnVuY3Rpb258fCJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkpfWZ1bmN0aW9uIGQoZSx0LG49IiIpe2lmKGU9PT10KXJldHVyblshMCxuXTtpZih1KGUpJiYoZT12b2lkIDApLHUodCkmJih0PXZvaWQgMCksbnVsbD09ZXx8bnVsbD09dClyZXR1cm5bZT09PXQsbl07aWYoIm9iamVjdCIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuW2U9PT10LG5dO2lmKEFycmF5LmlzQXJyYXkoZSkmJkFycmF5LmlzQXJyYXkodCkpewpjb25zdCByPWUubGVuZ3RoO2lmKHIhPT10Lmxlbmd0aClyZXR1cm5bITEsbl07Zm9yKGxldCBpPTA7aTxyO2krKyl7Y29uc3Qgcj1kKGVbaV0sdFtpXSxuKyJbIitpKyJdIik7aWYoIXJbMF0pcmV0dXJuIHJ9cmV0dXJuWyEwLG5dfWlmKEFycmF5LmlzQXJyYXkoZSl8fEFycmF5LmlzQXJyYXkodCkpcmV0dXJuWyExLG5dO2lmKE9iamVjdC5rZXlzKGUpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHQpLmxlbmd0aClyZXR1cm5bITEsbl07Zm9yKGNvbnN0IHIgaW4gZSl7Y29uc3QgaT1kKGVbcl0sdFtyXSxuKyJbIityKyJdIik7aWYoIWlbMF0pcmV0dXJuIGl9cmV0dXJuWyEwLG5dfWNvbnN0IHA9QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24oZSl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX07ZnVuY3Rpb24gZyhlKXtyZXR1cm4hKGU8PTB8fGU+MCl9ZnVuY3Rpb24gZihlKXtyZXR1cm4gbnVsbCE9ZX1mdW5jdGlvbiBtKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmZSUxPT0wfWZ1bmN0aW9uIGgoZSl7cmV0dXJuIG51bGwhPWUmJmUuY29uc3RydWN0b3I9PT1TdHJpbmd9ZnVuY3Rpb24geShlKXtyZXR1cm4gbnVsbCE9PWV9TnVtYmVyLmlzTmFOPU51bWJlci5pc05hTnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUhPWV9fSw0OTI2NzcoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUpe3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoZS5yZXBsYWNlKC9cKy9nLCIgIikpLnJlcGxhY2UoLzxcLz9bXj5dKyg+fCQpL2csIiIpfWZ1bmN0aW9uIGkoZSl7Y29uc3QgdD0vKFteJj1dKyk9PyhbXiZdKikvZyxuPXt9O2lmKCFlKXJldHVybiBuO2xldCBpPXQuZXhlYyhlKTtmb3IoO2k7KW5bcihpWzFdKV09cihpWzJdKSxpPXQuZXhlYyhlKTtyZXR1cm4gbn1mdW5jdGlvbiBvKCl7cmV0dXJuIGkod2luZG93LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoMSkpfWZ1bmN0aW9uIHMoKXtjb25zdCBlPXdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCIjIilbMF07d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKCIiLGRvY3VtZW50LnRpdGxlLGUpfWZ1bmN0aW9uIGEoZSl7Y29uc3QgdD1bXTtmb3IoY29uc3QgbiBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkobikmJm51bGwhPWVbbl0pe2NvbnN0IHI9ZVtuXSxpPSJvYmplY3QiPT10eXBlb2Ygcj9KU09OLnN0cmluZ2lmeShyKTpTdHJpbmcocik7dC5wdXNoKHtrZXk6bixwYWlyOmVuY29kZVVSSUNvbXBvbmVudChuKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGkpfSl9cmV0dXJuIHQuc29ydCgoKGUsdCk9PmUua2V5PnQua2V5PzE6ZS5rZXk8dC5rZXk/LTE6MCkpLm1hcCgoZT0+ZS5wYWlyKSkuam9pbigiJiIpfW4uZCh0LHtjcmVhdGVVcmxQYXJhbXM6KCk9PmEsZ2V0VXJsUGFyYW1zOigpPT5vLHJlbW92ZUhhc2hGcm9tVXJsOigpPT5zfSl9LDEwNzA0NShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtOdW1lcmljRm9ybWF0dGVyOigpPT5vfSk7dmFyIHI9big1OTg5MjIpLGk9big1NDY0ODUpO2NsYXNzIG97Y29uc3RydWN0b3IoZT17fSl7dGhpcy5fb3B0aW9ucz1lfWZvcm1hdChlLHQ9e30pe2lmKCFOdW1iZXIuaXNGaW5pdGUoZSkpcmV0dXJuIFN0cmluZyhlKTtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bj10aGlzLl9vcHRpb25zLmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTpzPXRoaXMuX29wdGlvbnMubm9FeHBvbmVudGlhbEZvcm19PXQse21pblByZWNpc2lvbjphLHByZWNpc2lvbjpjfT10aGlzLl9vcHRpb25zLGw9KDAsaS5nZXROdW1iZXJGb3JtYXQpKG4pO3JldHVybiB2b2lkIDA9PT1jP28uX2Zvcm1hdE5vRUltcGwoZSxsLGMsYSk6KDAsci5mb3JtYXROdW1iZXIpKGUsbCxjLHMsYSl9cGFyc2UoZSx0KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixwcmVjaXNpb246b309dGhpcy5fb3B0aW9ucyxzPSgwLGkuZ2V0TnVtYmVyRm9ybWF0KShufHx0Py5pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQpO2xldCBhPSgwLHIucGFyc2VOdW1iZXIpKGUscyk7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT8obyYmKGE9K2EudG9GaXhlZChvKSkse3JlczohMCx2YWx1ZTphfSk6e3JlczohMX19c3RhdGljIGZvcm1hdE5vRShlLHQpe3JldHVybiB0aGlzLl9mb3JtYXROb0VJbXBsKGUsdCl9c3RhdGljIF9mb3JtYXROb0VJbXBsKGUsdCxuLGkpe3JldHVybiBOdW1iZXIuaXNGaW5pdGUoZSk/KHQ9dD8/e2dyb3VwaW5nU2VwYXJhdG9yOiIiLGRlY2ltYWxTaWduOiIuIn0sKDAsci5mb3JtYXROdW1iZXIpKGUsdCxuLCEwLGkpKTpTdHJpbmcoZSl9fX0sMTI1MjE4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1BlcmNlbnRhZ2VGb3JtYXR0ZXI6KCk9Pm99KTt2YXIgcj1uKDExNTI5MyksaT1uKDc1NTYyNyk7Y2xhc3MgbyBleHRlbmRzIGkuUHJpY2VGb3JtYXR0ZXJ7Y29uc3RydWN0b3IoZT17fSl7dm9pZCAwIT09ZS5kZWNpbWFsUGxhY2VzJiYoZS5wcmljZVNjYWxlPU1hdGgucG93KDEwLGUuZGVjaW1hbFBsYWNlcykpLHN1cGVyKGUpLHRoaXMudHlwZT0icGVyY2VudGFnZSJ9c3RhdGUoKXtyZXR1cm57Li4uc3VwZXIuc3RhdGUoKSxwZXJjZW50OiEwfX1wYXJzZShlLHQpe3JldHVybiBlPWUucmVwbGFjZSgiJSIsIiIpLHN1cGVyLnBhcnNlKGUsdCl9Zm9ybWF0KGUsdD17fSl7Y29uc3R7dXNlUnRsRm9ybWF0Om49ITB9PXQsaT1zdXBlci5mb3JtYXQoZSx7Li4udCx1c2VSdGxGb3JtYXQ6ITF9KSsiJSI7cmV0dXJuIG4/KDAsci5mb3JjZUxUUlN0cikoaSk6aX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgbyhlKX19fSw5ODQzNzYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7UExBQ0VfSE9MREVSOigpPT5zLFZvbHVtZUZvcm1hdHRlcjooKT0+bH0pO3ZhciByPW4oNzgzMjU0KSxpPW4oNjAxODQxKSxvPW4oMTA3MDQ1KTtjb25zdCBzPSItLS0iLGE9W3t2YWx1ZTozLGxldHRlcjoiSyJ9LHt2YWx1ZTo2LGxldHRlcjoiTSJ9LHt2YWx1ZTo5LGxldHRlcjoiQiJ9LHsKdmFsdWU6MTIsbGV0dGVyOiJUIn1dO2Z1bmN0aW9uIGMoZSx0KXtjb25zdCBuPWUtdDtyZXR1cm4gYS5maW5kKChlPT5lLnZhbHVlPj1uKSk/P2FbYS5sZW5ndGgtMV19Y2xhc3MgbHtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InZvbHVtZSI7Y29uc3R7cHJlY2lzaW9uOnQ9MCxtaW5QcmVjaXNpb246bj0wLGRpbWVuc2lvblByZWNpc2lvbjpyPTIsZGltZW5zaW9uTWluUHJlY2lzaW9uOmk9MCxzaWduaWZpY2FudERpZ2l0czpzPTMsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEsbm9FeHBvbmVudGlhbEZvcm06YyxyZW1vdmVTcGFjZUJlZm9yZURpbWVuc2lvbjpsfT1lO3RoaXMuX3ByZWNpc2lvbj10LHRoaXMuX2Zvcm1hdHRlcj1uZXcgby5OdW1lcmljRm9ybWF0dGVyKHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6YSxwcmVjaXNpb246dGhpcy5fcHJlY2lzaW9uLG1pblByZWNpc2lvbjpuLG5vRXhwb25lbnRpYWxGb3JtOmN9KSx0aGlzLl9kaW1lbnNpb25QcmVjaXNpb249cix0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXI9bmV3IG8uTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX2RpbWVuc2lvblByZWNpc2lvbixtaW5QcmVjaXNpb246aSxub0V4cG9uZW50aWFsRm9ybTpjfSksdGhpcy5fc2lnbmlmaWNhbnREaWdpdHM9cyx0aGlzLl9mcmFjdGlvbmFsVmFsdWVzPXZvaWQgMCE9PXQmJnQ+MCx0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbj1sPyIiOiLigK8iLHRoaXMuX29wdGlvbnM9ZX1zdGF0ZSgpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDplLC4uLnR9PXRoaXMuX29wdGlvbnM7cmV0dXJuIHR9Zm9ybWF0KGUsdCl7aWYoISgwLGkuaXNOdW1iZXIpKGUpKXJldHVybiBzO2lmKE1hdGguYWJzKGUpPj0xZTEwMClyZXR1cm4gci50KG51bGwse2NvbnRleHQ6InZvbHVtZS1mb3JtYXR0ZXIifSxuKDU3MDYyKSk7bGV0IG89IiI7TWF0aC5hYnMoZSk8MSYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pKSxlPDA/bz0i4oiSIjplPjAmJnQ/LnNpZ25Qb3NpdGl2ZSYmKG89IisiKSxlPU1hdGguYWJzKGUpO2NvbnN0IGE9ISEodD8uaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Pz90aGlzLl9vcHRpb25zLmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGwsdSxkPU1hdGguZmxvb3IoTWF0aC5sb2cxMChlKSkrMTtpZihkPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cyYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pLGQ9TWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxKSxkPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cylsPXRoaXMuX2Zvcm1hdE51bWJlcihlLGEsdGhpcy5fZm9ybWF0dGVyKTtlbHNle2xldCB0PWMoZCx0aGlzLl9zaWduaWZpY2FudERpZ2l0cyk7Y29uc3Qgbj1NYXRoLnBvdygxMCx0LnZhbHVlKTtlPSsoZS9uKS50b0ZpeGVkKHRoaXMuX2RpbWVuc2lvblByZWNpc2lvbikqbix0PWMoTWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKSxsPXRoaXMuX2Zvcm1hdE51bWJlcihlL01hdGgucG93KDEwLHQudmFsdWUpLGEsdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyKSx1PXQubGV0dGVyfXJldHVybiB1P2Ake299JHtsfSR7dGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb259JHt1fWA6YCR7b30ke2x9YH1wYXJzZShlLHQpe2lmKGU9PT1zKXJldHVybntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfTtjb25zdCBuPXtLOjFlMyxNOjFlNixCOjFlOSxUOjFlMTJ9LHI9KGU9ZS5yZXBsYWNlKCLiiJIiLCItIikpLnNsaWNlKC0xKTtpZihuLmhhc093blByb3BlcnR5KHIpKXtjb25zdCBvPXRoaXMuX2Zvcm1hdHRlci5wYXJzZShlLnNsaWNlKDAsLTEpLnRyaW0oKSx0KSxzPW8ucmVzP28udmFsdWU6TmFOO3JldHVybigwLGkuaXNOdW1iZXIpKHMpP3tyZXM6ITAsdmFsdWU6cypuW3JdfTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19e2NvbnN0IG49dGhpcy5fZm9ybWF0dGVyLnBhcnNlKGUudHJpbSgpLHQpO2xldCByPW4ucmVzP24udmFsdWU6TmFOO3JldHVybi0wPT09ciYmKHI9MCksKDAsaS5pc051bWJlcikocik/e3JlczohMCx2YWx1ZTpyfTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19fXN0YXRpYyBzZXJpYWxpemUoZSl7cmV0dXJuIGUuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUoZSl7cmV0dXJuIG5ldyBsKGUpfV9mb3JtYXROdW1iZXIoZSx0LG4pe2lmKHRoaXMuX2ZyYWN0aW9uYWxWYWx1ZXMmJjAhPT1lKXtjb25zdCB0PTE0LU1hdGguY2VpbChNYXRoLmxvZzEwKGUpKSxuPU1hdGgucG93KDEwLHQpO2U9TWF0aC5yb3VuZChlKm4pL259cmV0dXJuIG4uZm9ybWF0KGUse2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0fSl9fX0sOTAxMDIyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1NFUEFSQVRPUl9QUkVGSVg6KCk9PnIsaXNTZXBhcmF0b3JJdGVtOigpPT5pfSk7Y29uc3Qgcj0iIyMjIjtmdW5jdGlvbiBpKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgocil9fSw2NDE1OTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVySW5Xb3JkOigpPT5kLGRlY29kZUhUTUxFbnRpdGllczooKT0+YyxnZXRGaXJzdFNlZ21lbnRPckNvZGVQb2ludFN0cmluZzooKT0+cCxodG1sRXNjYXBlOigpPT5sLHJlbW92ZVRhZ3M6KCk9PnV9KTtjb25zdCByPS9bPCInJj5dL2csaT1lPT5gJiMke2UuY2hhckNvZGVBdCgwKX07YCxvPXsiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInLCImYXBvczsiOiInIiwiJmFtcDsiOiImIiwiJiM2MDsiOiI8IiwiJiM2MjsiOiI+IiwiJiMzNDsiOiciJywiJiMzOTsiOiInIiwiJiMwMzk7IjoiJyIsIiYjMzg7IjoiJiJ9LHM9T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhvKS5tYXAoKChbZSx0XSk9Pih7W3RdOmV9KSkpKSxhPW5ldyBSZWdFeHAoT2JqZWN0LmtleXMobykuam9pbigifCIpLCJnIik7bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhzKS5qb2luKCJ8IiksImciKTtmdW5jdGlvbiBjKGUpewpyZXR1cm4gZS5yZXBsYWNlKGEsKGU9Pm9bZV18fGUpKX1mdW5jdGlvbiBsKGUpe3JldHVybiBlLnJlcGxhY2UocixpKX1mdW5jdGlvbiB1KGU9IiIpe3JldHVybiBlLnJlcGxhY2UoLyg8KFtePl0rKT4pL2dpLCIiKX1mdW5jdGlvbiBkKGU9IiIpe3JldHVybiBlLnJlcGxhY2UoL1xiXHcvZywoZT0+ZS50b1VwcGVyQ2FzZSgpKSl9ZnVuY3Rpb24gcChlKXtjb25zdCB0PUludGwuU2VnbWVudGVyO2lmKHQpe2NvbnN0IG49bmV3IHQodm9pZCAwLHtncmFudWxhcml0eToiZ3JhcGhlbWUifSksW3tzZWdtZW50OnJ9PXtzZWdtZW50Om51bGx9XT1uLnNlZ21lbnQoZSk7cmV0dXJuIHI/LnRvVXBwZXJDYXNlKCk/P251bGx9e2NvbnN0IHQ9ZS5jb2RlUG9pbnRBdCgwKTtyZXR1cm4gdD9TdHJpbmcuZnJvbUNvZGVQb2ludCh0KS50b1VwcGVyQ2FzZSgpOm51bGx9fX0sMTM2OTkxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5yLGNvcHlyaWdodExhYmVsOigpPT51fSk7dmFyIHIsaT1uKDE4NTI3MSksbz1uKDkxNDQ4Nykscz1uLm4obyksYT1uKDYwMTg0MSksYz1uKDM4NzIzMSksbD1uKDM5OTA5Mik7ZnVuY3Rpb24gdSh7c3ZnVGV4dDplLGljb246dCx0aGVtZTpvLHVybDp1LG1vZGU6ZCx2ZXJ0aWNhbFBvc2l0aW9uOnA9ci5WZXJ0aWNhbC5Cb3R0b20saG9yaXpvbnRhbFBvc2l0aW9uOmc9ci5Ib3Jpem9udGFsLkVuZCxzbmFwVG9FZGdlOmY9ITAsaXNFeHBhbmRlZDptPSExLGNsYXNzTmFtZTpofSl7bGV0IHk7c3dpdGNoKGQpe2Nhc2UibmV3IjpjYXNlIndpdGhfYm9yZGVyIjpjYXNlImxhcmdlX3RyYWRlIjp5PSgwLGEuY2xvbmUpKG8pO2JyZWFrO2RlZmF1bHQ6eT0oMCxjLm1lcmdlVGhlbWVzKSgoMCxhLmNsb25lKShsKSxvKX1jb25zdCB2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtsZXQgdzt1JiYodz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksdy5jbGFzc0xpc3QuYWRkKC4uLnkubGFiZWxfX2xpbmsuc3BsaXQoL1xzLykpLHcuaHJlZj11LHcudGFyZ2V0PSJfYmxhbmsiLHcucmVsPSJub29wZW5lciBub3JlZmVycmVyIix3LnNldEF0dHJpYnV0ZSgiZGF0YS10YXJnZXQtdHlwZSIsImNvcHlyaWdodCIpLHcuYXJpYUxhYmVsPWkudChudWxsLHZvaWQgMCxuKDUxNzg1OSkpLHYuYXBwZW5kKHcpKSx2LmNsYXNzTmFtZT1zKCkoeS5sYWJlbCxnPT09ci5Ib3Jpem9udGFsLlN0YXJ0JiZ5LnN0YXJ0LGc9PT1yLkhvcml6b250YWwuRW5kJiZ5LmVuZCxwPT09ci5WZXJ0aWNhbC5Ub3AmJnkudG9wLHA9PT1yLlZlcnRpY2FsLkJvdHRvbSYmeS5ib3R0b20sZiYmImxhcmdlX3RyYWRlIiE9PWQmJnkuc25hcCwibGFyZ2Vfb2xkIj09PWQmJnkubGFyZ2UsKG18fCJsYXJnZV90cmFkZSI9PT1kKSYmeS5leHBhbmRlZCxoLCJqcy1jb3B5cmlnaHQtbGFiZWwiKSx2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKCk9PntmdW5jdGlvbiBlKCl7di5jbGFzc0xpc3QucmVtb3ZlKHkuZXhwYW5kZWRCeUNsaWNrKSx2LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpfXYuY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbil8fHYuY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWQpfHwodi5jbGFzc0xpc3QuY29udGFpbnMoeS5leHBhbmRlZEJ5Q2xpY2spP3V8fGUoKToodi5jbGFzc0xpc3QuYWRkKHkuZXhwYW5kZWRCeUNsaWNrKSx2LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpKSl9KSk7Y29uc3QgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7Yi5jbGFzc05hbWU9eS5sb2dvV3JhcCxiLmlubmVySFRNTD10O2NvbnN0IF89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBfLmNsYXNzTmFtZT15LnN2Z1RleHRXcmFwLF8uaW5uZXJIVE1MPWUsdi5hcHBlbmQoYixfKSxbdix5XX0hZnVuY3Rpb24oZSl7bGV0IHQsbjshZnVuY3Rpb24oZSl7ZVtlLkJvdHRvbT0wXT0iQm90dG9tIixlW2UuVG9wPTFdPSJUb3AifSh0PWUuVmVydGljYWx8fChlLlZlcnRpY2FsPXt9KSksZnVuY3Rpb24oZSl7ZVtlLlN0YXJ0PTBdPSJTdGFydCIsZVtlLkVuZD0xXT0iRW5kIn0obj1lLkhvcml6b250YWx8fChlLkhvcml6b250YWw9e30pKX0ocnx8KHI9e30pKX0sNjUzODE3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5vLkNvcHlyaWdodFBvc2l0aW9uLGNyZWF0ZUNvcHlyaWdodExhYmVsOigpPT5hfSk7dmFyIHI9big5MTQ0ODcpLGk9bi5uKHIpLG89bigxMzY5OTEpLHM9big1Mjg4NjQpO2Z1bmN0aW9uIGEoe3NoZXJpZmZPcHRpb25zOmUsLi4udH0pe2NvbnN0W24scl09KDAsby5jb3B5cmlnaHRMYWJlbCkodCksYT1lJiZlLmluY2x1ZGVzKHMuS25vd25BY3Rpb24uRXhwYW5kKSxjPWUmJmUuaW5jbHVkZXMocy5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyk7cmV0dXJuIG4uY2xhc3NOYW1lPWkoKShuLmNsYXNzTmFtZSwoYXx8YykmJnIuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbiksbn19LDc0MjU3NyhlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXtyZXR1cm4gZSYmZS51dG1fY2FtcGFpZ24mJihlLnV0bV9jYW1wYWlnbis9YC0ke3R9YCksZX1hc3luYyBmdW5jdGlvbiBpKGUsdCxyLGkpe2lmKCJsZW50YXJ1Ij09PWUpe2NvbnN0e2dldExlbnRhQ29weXJpZ2h0RGF0YTplfT1hd2FpdCBQcm9taXNlLmFsbChbbi5lKDQ0MjUzKSxuLmUoODUwMzgpXSkudGhlbihuLmJpbmQobiwyODQwNDEpKTtyZXR1cm4gZSgpfWlmKCJjbW9uZXljb210dyI9PT1lKXtjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg1OTk0MSksbi5lKDY0NDUpLG4uZSg3MTM5NCldKS50aGVuKG4uYmluZChuLDc3Nzc2OSkpO3JldHVybiBlKHQscil9aWYoIm5ldyI9PT1pKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg5Nzc5Nyksbi5lKDc2MDQwKV0pLnRoZW4obi5iaW5kKG4sOTgxMTU3KSk7cmV0dXJuIGUodCxyKX1pZigid2l0aF9ib3JkZXIiPT09aSl7CmNvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTplfT1hd2FpdCBQcm9taXNlLmFsbChbbi5lKDUzNTIxKSxuLmUoMTY4MTMpXSkudGhlbihuLmJpbmQobiw4NTI2NjkpKTtyZXR1cm4gZSh0LHIpfWlmKCJsYXJnZV90cmFkZSI9PT1pKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg3NDAxMSksbi5lKDc5MDQxKV0pLnRoZW4obi5iaW5kKG4sNDkzNTU5KSk7cmV0dXJuIGUodCxyKX17Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOmV9PWF3YWl0IFByb21pc2UuYWxsKFtuLmUoNTk5NDEpLG4uZSg5NzUwOSldKS50aGVuKG4uYmluZChuLDcwNTc5MCkpO3JldHVybiBlKHQscil9fW4uZCh0LHthZGRVdG1DYW1wYWlnblNvdXJjZTooKT0+cixnZXRDdXN0b21lckNvcHlyaWdodERhdGE6KCk9Pml9KX0sNzQ4MDAyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldFdpZGdldFNoZXJpZmZBY3Rpb25zOigpPT5sfSk7dmFyIHI9bigyMjEwNjEpLGk9bigzODQwMTcpLG89big1Mjg4NjQpO2NvbnN0IHM9d2luZG93LldJREdFVF9TSEVSSUZGX0hPU1R8fCJodHRwczovL3dpZGdldC1zaGVyaWZmLnhzdGFnaW5nLXdpZGdldC50diIsYT0oMCxyLmdldExvZ2dlcikoIldpZGdldFNoZXJpZmYuV2lkZ2V0Iik7bGV0IGM9bnVsbDthc3luYyBmdW5jdGlvbiBsKCl7cmV0dXJuIG51bGw9PT1jJiYoYz1hd2FpdCBhc3luYyBmdW5jdGlvbigpe2NvbnN0IGU9ZnVuY3Rpb24oKXtpZihkb2N1bWVudC5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMmJmRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgpcmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1tkb2N1bWVudC5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoLTFdO3RyeXtyZXR1cm4gbmV3IFVSTChkb2N1bWVudC5yZWZlcnJlcikub3JpZ2lufWNhdGNoKGUpe3JldHVybiBkb2N1bWVudC5sb2NhdGlvbi5vcmlnaW58fG51bGx9fSgpO2lmKG51bGw9PT1lKXJldHVybiBhLmxvZ1dhcm4oImFuY2VzdG9yT3JpZ2luIGlzIHVuZGVmaW5lZCIpLFByb21pc2UucmVzb2x2ZShbXSk7Y29uc3QgdD1uZXcgVVJMKCIvc2hlcmlmZi9hcGkvdjEvcnVsZXMvc2VhcmNoIixzKTt0LnNlYXJjaFBhcmFtcy5hcHBlbmQoIm9yaWdpbiIsZSk7cmV0dXJuKGF3YWl0KDAsaS5mZXRjaCkodC50b0pTT04oKSkudGhlbigoZT0+e2lmKCFlLm9rKXRocm93IG5ldyBFcnJvcigiR3VhcmQgcmVxdWVzdCBlcnJvciBvY2N1cmVkIik7cmV0dXJuIDIwND09PWUuc3RhdHVzP1Byb21pc2UucmVzb2x2ZSh7YWN0aW9uczpbXX0pOmUuanNvbigpfSkpLmNhdGNoKChlPT4oYS5sb2dXYXJuKGUubWVzc2FnZSksUHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSkpKSkpLmFjdGlvbnMuZmlsdGVyKChlPT5vLndpZGdldFNoZXJpZmZBY3Rpb25zLmhhcyhlKSkpfSgpKSxQcm9taXNlLnJlc29sdmUoYyl9fSw1Mjg4NjQoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcjtuLmQodCx7S25vd25BY3Rpb246KCk9PnIsd2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9Pml9KSxmdW5jdGlvbihlKXtlLkV4cGFuZD0iZXhwYW5kLWxvZ28iLGUuTGFyZ2VUcmFkZUxvZ289ImxhcmdlLXRyYWRlLWxvZ28ifShyfHwocj17fSkpO2NvbnN0IGk9bmV3IFNldChbci5FeHBhbmQsci5MYXJnZVRyYWRlTG9nb10pfSw0NzkzNChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtlbmFibGVkOigpPT5jLGdldENvbmZpZzooKT0+dSxnZXRQcm9kdWN0SWQ6KCk9PmF9KTt2YXIgcj1uKDUwMjU4NyksaT1uKDEyNzcxMSksbz1uKDMxODk3NCkscz1uKDIxMjIyOSk7ZnVuY3Rpb24gYShlKXtsZXQgdD13aW5kb3cudXNlcjsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93LnVzZXImJih0PXdpbmRvdy51c2VyKSxlJiYodD1lKTtsZXQgbj10Py5wcm9fcGxhbnx8ImZyZWUiO3JldHVybiJmcmVlIiE9PW4mJiEoMCxzLmlzVHJpYWxQcm9kdWN0KShuKXx8KG49KDAscy5nZXRQcm9kdWN0Rm9yVHJpYWwpKG4pKSxufWZ1bmN0aW9uIGMoZSx0LG4pe2xldCByPXdpbmRvdy51c2VyO24mJihyPW4pO2NvbnN0IGk9dShlLHQscik7aWYoIWkpcmV0dXJuITE7aWYoaS5kaXNhYmxlX29uX3RyaWFsJiYoIXJ8fHIuaXNfdHJpYWwpKXJldHVybiExO2NvbnN0IHM9aS5kaXNhYmxlX29uX2xpdGVfcGxhbjtpZihzJiZyLmlzX2xpdGVfcGxhbil7aWYoImFsbCI9PT1zKXJldHVybiExO2lmKCJleGNsdWRlX21vYmlsZSI9PT1zJiYhby5DaGVja01vYmlsZS5hbnkoKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBsKGUpe2NvbnN0IHQ9cltlXTtyZXR1cm4gdD90LmV4dGVuZHM/T2JqZWN0LmFzc2lnbih7fSxsKHQuZXh0ZW5kcyksdCk6dDpudWxsfWZ1bmN0aW9uIHUoZSx0LG4pe2xldCByPWwodHx8KGEobik/PyIiKSk7aWYoIXIpcmV0dXJuIG51bGw7Y29uc3Qgbz13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyO3JldHVybiBvJiZpW29dJiYocj1PYmplY3QuYXNzaWduKHt9LHIsaVtvXSkpLHImJnJbZV18fG51bGx9fSw0Mjk2NihlLHQsbil7InVzZSBzdHJpY3QiO24ucih0KTt2YXIgcj1uKDg1NjMyNCksaT1uKDk2MzA5OCk7KDAsci5yZWdpc3Rlckxhbmd1YWdlR2V0dGVyKSgoKCk9PndpbmRvdy5sYW5ndWFnZXx8IiIpKSwoMCxyLnJlZ2lzdGVyTGFuZ3VhZ2VDb2RlTWFwcGVyKShpLmdldElzb0xhbmd1YWdlQ29kZUZyb21MYW5ndWFnZSl9LDYzMTYzNChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRGcmVzaEluaXREYXRhOigpPT5zLGdldEluaXREYXRhOigpPT5vLHVwZGF0ZUluaXREYXRhOigpPT5pfSk7dmFyIHI9big3OTI2MTIpO2Z1bmN0aW9uIGkoKXsoMCxyLnVwZGF0ZUluaXREYXRhKSgpfWZ1bmN0aW9uIG8oKXtyZXR1cm4oMCxyLmdldEluaXREYXRhKSgpfWZ1bmN0aW9uIHMoKXtyZXR1cm4oMCxyLmdldEZyZXNoSW5pdERhdGEpKCl9fSw4NjIyMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7TG9nb1NpemU6KCk9PnIuTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT51fSkKO3ZhciByPW4oNjIwMzU0KSxpPW4oMTM4NjM4KSxvPW4oNjMxNjM0KSxzPW4oODEwNDEpO2NvbnN0IGE9KDAsbigyMjEwNjEpLmdldExvZ2dlcikoIkxvZ29VcmxSZXNvbHZlciIpO2NsYXNzIGN7Y29uc3RydWN0b3IoZSl7KDAsaS5hc3NlcnQpKCIiIT09ZSwiUzMgYmFzZSB1cmwgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSx0aGlzLl9iYXNlVXJsPWV9Z2V0U3ltYm9sTG9nb1VybChlLHQpe2lmKCIiPT09ZSlyZXR1cm4gYS5sb2dXYXJuKCJsb2dvIGlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nIiksIiI7c3dpdGNoKHQpe2Nhc2Ugci5Mb2dvU2l6ZS5NZWRpdW06cmV0dXJuIHRoaXMuX2Jhc2VVcmwrYCR7ZX0uc3ZnYDtjYXNlIHIuTG9nb1NpemUuTGFyZ2U6cmV0dXJuIHRoaXMuX2Jhc2VVcmwrYCR7ZX0tLWJpZy5zdmdgfX1nZXRDb3VudHJ5RmxhZ1VybChlLHQpe3JldHVybiB0aGlzLmdldFN5bWJvbExvZ29VcmwoImNvdW50cnkvIitlLHQpfWdldFByb3ZpZGVyTG9nb1VybChlLHQpe3JldHVybiB0aGlzLmdldFN5bWJvbExvZ29VcmwoInByb3ZpZGVyLyIrZSx0KX1nZXRTb3VyY2VMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgic291cmNlLyIrZSx0KX1nZXRCbG9ja2NoYWluQ29udHJhY3RMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiYmxvY2tjaGFpbi8iK2UsdCl9Z2V0Q2FuZGxlc3RpY2tQYXR0ZXJuTG9nb1VybChlLHQ9cy5TdGRUaGVtZS5MaWdodCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybChgY2FuZGxlcGF0dGVybi8ke2V9LSR7dH1gLHIuTG9nb1NpemUuTWVkaXVtKX19bGV0IGw7ZnVuY3Rpb24gdSgpe3JldHVybiBmdW5jdGlvbigpe2lmKCFsKXtjb25zdCBlPSgwLG8uZ2V0SW5pdERhdGEpKCksdD1lLnNldHRpbmdzP2Uuc2V0dGluZ3MuUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMOiIiO2w9bmV3IGModCl9cmV0dXJuIGx9KCl9fSw0MDAxODEoZSx0LG4peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOmV9PWF3YWl0IFByb21pc2UuYWxsKFtuLmUoNzA2NDQpLG4uZSg5NTIwNyldKS50aGVuKG4uYmluZChuLDQ3NzE1MCkpO3JldHVybiBlKCl9bi5kKHQse2dldFRyYWNrZXI6KCk9PnJ9KX0sMTU2ODI5KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gdm9pZCAwIT09ZSYmZS5pbmNsdWRlcygiY3J5cHRvIil9ZnVuY3Rpb24gaShlKXtyZXR1cm4iYm9uZCI9PT1lfWZ1bmN0aW9uIG8oZSl7cmV0dXJuImVjb25vbWljIj09PWV9ZnVuY3Rpb24gcyhlKXtyZXR1cm4iZnV0dXJlcyI9PT1lfW4uZCh0LHtoYXNDcnlwdG9UeXBlc3BlYzooKT0+cixpc0JvbmQ6KCk9PmksaXNFY29ub21pY1N5bWJvbDooKT0+byxpc0Z1dHVyZXM6KCk9PnN9KX0sODUxNDU4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3Rva2VuaXplOigpPT5jfSk7dmFyIHIsaT1uKDkwMTAyMiksbz1uKDU2OTM5OCk7IWZ1bmN0aW9uKGUpe2UuU3ltYm9sPSJzeW1ib2wiLGUuSW5jb21wbGV0ZVN5bWJvbD0iaW5jb21wbGV0ZVN5bWJvbCIsZS5OdW1iZXI9Im51bWJlciIsZS5JbmNvbXBsZXRlTnVtYmVyPSJpbmNvbXBsZXRlTnVtYmVyIixlLlNlcGFyYXRvclByZWZpeD0ic2VwYXJhdG9yUHJlZml4IixlLk9wZW5CcmFjZT0ib3BlbkJyYWNlIixlLkNsb3NlQnJhY2U9ImNsb3NlQnJhY2UiLGUuUGx1cz0icGx1cyIsZS5NaW51cz0ibWludXMiLGUuTXVsdGlwbHk9Im11bHRpcGx5IixlLkRpdmlkZT0iZGl2aWRlIixlLlBvd2VyPSJwb3dlciIsZS5XaGl0ZXNwYWNlPSJ3aGl0ZXNwYWNlIixlLlVucGFyc2VkPSJ1bnBhcnNlZCJ9KHJ8fChyPXt9KSk7Y29uc3Qgcz0vKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXSkoPzpbXi0rXC8qXlxzXSd8W2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKSp8Jy4rPycvLGE9KGU9KDAsby5pc0ZlYXR1cmVFbmFibGVkKSgiYWxsb3dfdHJhaWxpbmdfd2hpdGVzcGFjZV9pbl9udW1iZXJfdG9rZW4iKSk9Pih7bnVtYmVyOmU/L1xkKyg/OlwuXGQqfCg/IVthLXpBLVowLTlfITouJl0pKSg/OlxzKig/PVxzKiQpKT98XC5cZCsoPzpccyooPz1ccyokKSk/LzovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxpbmNvbXBsZXRlTnVtYmVyOi9cLi8sc3ltYm9sOnMsaW5jb21wbGV0ZVN5bWJvbDovJ1teJ10qLyxzZXBhcmF0b3JQcmVmaXg6aS5TRVBBUkFUT1JfUFJFRklYLG9wZW5CcmFjZToiKCIsY2xvc2VCcmFjZToiKSIscGx1czoiKyIsbWludXM6Ii0iLG11bHRpcGx5OiIqIixkaXZpZGU6Ii8iLHBvd2VyOiJeIix3aGl0ZXNwYWNlOi9bXDAtXHgyMFxzXSsvLHVucGFyc2VkOm51bGx9KTtmdW5jdGlvbiBjKGUsdD1hKCkpe2lmKCFlKXJldHVybltdO2NvbnN0IG49W10scj1PYmplY3Qua2V5cyh0KTtsZXQgaTtjb25zdCBvPSgoZT1hKCkpPT5uZXcgUmVnRXhwKE9iamVjdC52YWx1ZXMoZSkubWFwKChlPT57cmV0dXJuIG51bGw9PT1lPyIiOmAoJHsic3RyaW5nIj09dHlwZW9mIGU/KHQ9ZSx0LnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIikpOmUuc291cmNlfSlgO3ZhciB0fSkpLmZpbHRlcigoZT0+IiIhPT1lKSkuY29uY2F0KCIuIikuam9pbigifCIpLCJnIikpKHQpO2Zvcig7aT1vLmV4ZWMoZSk7KXtsZXQgZT0hMTtmb3IobGV0IHQ9ci5sZW5ndGg7dC0tOylpZihpW3QrMV0pe3JbdF0mJm4ucHVzaCh7dmFsdWU6aVt0KzFdLHR5cGU6clt0XSxwcmVjZWRlbmNlOjAsb2Zmc2V0OmkuaW5kZXh9KSxlPSEwO2JyZWFrfWV8fG4ucHVzaCh7dmFsdWU6aVswXSx0eXBlOiJ1bnBhcnNlZCIscHJlY2VkZW5jZTowLG9mZnNldDppLmluZGV4fSl9cmV0dXJuIG59fSw3OTUzODMoZSx0LG4pe24oMzYzMjY5KS5zZXRDbGFzc2VzKCksbig0Mjk2Niksbig2MTAyNjgpO3ZhciByPW4oNzQ5NjQ4KS53aGVuRG9jdW1lbnRSZWFkeSxpPW4oOTMxMTk4KS5oYW5kbGVUVkxpbmtzQ2xpY2s7cigoKCk9PntpKCl9KSl9LAo3OTgzOChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtTVFlMRV9TSE9SVF9OQU1FUzooKT0+cyxTWU1CT0xfU1RSSU5HX0RBVEE6KCk9PmwsaXNDaGFydFN0eWxlU3R1ZHlJbmZvQ29tcGxleDooKT0+YX0pO24oNTgwMzcpO3ZhciByPW4oNzI4NDM2KSxpPW4oNzc3NjYxKSxvPW4oNTUwMzkzKTtuZXcgU2V0KFszLDYsNyw4LDksMTFdKSxuZXcgU2V0KFsxLDJdKTtjb25zdCBzPXswOiJiYXIiLDE6ImNhbmRsZSIsOToiaG9sbG93Q2FuZGxlIiwyOiJsaW5lIiwxNDoibGluZVdpdGhNYXJrZXJzIiwxNToic3RlcGxpbmUiLDM6ImFyZWEiLDE2OiJobGNBcmVhIiw0OiJyZW5rbyIsNzoicGIiLDU6ImthZ2kiLDY6InBuZiIsODoiaGEiLDEwOiJiYXNlbGluZSIsMTE6InJhbmdlIiwxMjoiaGlsbyIsMTM6ImNvbHVtbiIsMTc6InZvbEZvb3RwcmludCIsMTg6InRwbyIsMTk6InZvbENhbmRsZXMiLDIwOiJzdnAiLDIxOiJobGNCYXJzIn07ZnVuY3Rpb24gYShlKXtyZXR1cm4idmFyaWFudHMiaW4gZX1jb25zdCBjPVt7dHlwZTppLnN0dWR5VHBvUHJlcmlvZGljSWQsYmFzaWNTdHVkeVZlcnNpb246MTA0fSx7dHlwZTppLnN0dWR5VHBvU2Vzc2lvbnNJZCxiYXNpY1N0dWR5VmVyc2lvbjoxMDR9XSxsPXs0Ont0eXBlOiJCYXJTZXRSZW5rb0B0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjo3M30sNzp7dHlwZToiQmFyU2V0UHJpY2VCcmVha0B0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjozNH0sNTp7dHlwZToiQmFyU2V0S2FnaUB0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjo3M30sNjp7dHlwZToiQmFyU2V0UG5GQHR2LXByb3N0dWRpZXMiLGJhc2ljU3R1ZHlWZXJzaW9uOjczfSw4Ont0eXBlOiJCYXJTZXRIZWlrZW5Bc2hpQHR2LWJhc2ljc3R1ZGllcyIsYmFzaWNTdHVkeVZlcnNpb246NjB9LDExOnt0eXBlOiJCYXJTZXRSYW5nZUB0di1iYXNpY3N0dWRpZXMiLGJhc2ljU3R1ZHlWZXJzaW9uOjcyfSwxNzp7dHlwZTpyLnN0dWR5Vm9sRm9vdHByaW50SWQsYmFzaWNTdHVkeVZlcnNpb246MTA0fSwxODp7dmFyaWFudHM6YyxzZWxlY3RvcjplPT57Y29uc3QgdD1lO3JldHVybiJEYXkiPT09dC5wZXJpb2QmJjE9PT10LnBlcmlvZHNOdW0/Y1sxXTpjWzBdfX0sMjA6e3R5cGU6by5zdHVkeVZiUFNlc3Npb25zSWQsYmFzaWNTdHVkeVZlcnNpb246MTI2fX19LDYxMDI2OChlLHQsbil7InVzZSBzdHJpY3QiO24ucih0KSwoMCxuKDExNTI5Mykuc2V0RG9jdW1lbnREaXJHZXR0ZXIpKCgoKT0+d2luZG93LmRvY3VtZW50LmRpcikpfSw5NjM5MDAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcjshZnVuY3Rpb24oZSl7ZS5FbXB0eT0iIixlLlRlY2huaWNhbHNQYXRoPSJ0ZWNobmljYWxzLyIsZS5GaW5hbmNpYWxzT3ZlcnZpZXdQYXRoPSJmaW5hbmNpYWxzLW92ZXJ2aWV3LyIsZS5UaW1lbGluZVBhdGg9Imhpc3RvcnktdGltZWxpbmUvIixlLk5ld3NQYXRoPSJuZXdzLyIsZS5PcHRpb25zUGF0aD0ib3B0aW9ucy8iLGUuUHJvZmlsZVBhdGg9InByb2ZpbGUvIixlLkhvbGRpbmdzUGF0aD0iaG9sZGluZ3MvIn0ocnx8KHI9e30pKX0sMjEyMjI5KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NVU1RPTV9TVUZGSVg6KCk9PmEsRUFfU1VGRklYOigpPT5zLFRSSUFMX1NVRkZJWDooKT0+byxiaWxsaW5nQ3ljbGVUb01vbnRoOigpPT52LGJpbGxpbmdDeWNsZVRvVGltZVVuaXQ6KCk9PmMsY291bnREaXNjb3VudEJ5QmlsbGluZ0N5Y2xlOigpPT55LGdldERpc2NvdW50UHJvZHVjdElkOigpPT5nLGdldFBsYW5OYW1lOigpPT54LGdldFByb2R1Y3RGb3JUcmlhbDooKT0+cCxnZXRSZWFkYWJsZUN5Y2xlOigpPT5sLGdldFJlYWRhYmxlTnVtZXJpY0N5Y2xlOigpPT51LGdldFJlbGF0aXZlQW1vdW50T2ZEYXlzRnJvbUJpbGxpbmdDeWNsZTooKT0+aCxodW1hbml6ZUNhcmRQbGFuOigpPT5tLGh1bWFuaXplUHJvUGxhbjooKT0+Zixpc1RyaWFsUHJvZHVjdDooKT0+ZCxyb3VuZDA6KCk9PmIscm91bmQyOigpPT53LHJvdW5kMm9yMDooKT0+X30pO24oODI5MTgwKTt2YXIgcj1uKDE4NTI3MSksaT1uKDg2NDAzNCk7Y29uc3Qgbz0iX3RyaWFsIixzPSJfZGlzY291bnQiLGE9Il9jdXN0b20iO2Z1bmN0aW9uIGMoZSl7cmV0dXJue3k6ci50KG51bGwse3BsdXJhbDoieWVhcnMiLGNvdW50OjF9LG4oNDQyNjY2KSksbTpyLnQobnVsbCx7cGx1cmFsOiJtb250aHMiLGNvdW50OjF9LG4oMzIzNDg1KSksIjNtIjpyLnQobnVsbCx2b2lkIDAsbig4NjM4NTIpKX1bZV18fCIifWZ1bmN0aW9uIGwoZSl7cmV0dXJue206ci50KG51bGwsdm9pZCAwLG4oNTU2NTY4KSkseTpyLnQobnVsbCx2b2lkIDAsbig3MjExMTgpKSwiM20iOnIudChudWxsLHZvaWQgMCxuKDMyODAzMCkpfVtlXXx8IiJ9ZnVuY3Rpb24gdShlKXtyZXR1cm57W2kuQmlsbGluZ0N5Y2xlLk1vbnRobHldOnIudChudWxsLHZvaWQgMCxuKDU1NjU2OCkpLFtpLkJpbGxpbmdDeWNsZS5PbmVZZWFyXTpyLnQobnVsbCx2b2lkIDAsbigxMTE5NzYpKSxbaS5CaWxsaW5nQ3ljbGUuVGhyZWVNb250aHNdOnIudChudWxsLHZvaWQgMCxuKDMyODAzMCkpfVtlXXx8IiJ9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbmV3IFJlZ0V4cChvKyIkIikudGVzdChlKX1mdW5jdGlvbiBwKGUpe3JldHVybiBlLnNwbGl0KG8pWzBdfWZ1bmN0aW9uIGcoZSx0LG4pe3JldHVybmAke2V9XyR7dH0ke259YH1mdW5jdGlvbiBmKGUsdCl7bGV0IGk9ZTtzd2l0Y2goZSl7Y2FzZSJmcmVlIjppPSJCYXNpYyI7YnJlYWs7Y2FzZSJwcm8iOmk9IkVzc2VudGlhbCI7YnJlYWs7Y2FzZSJwcm9fcmVhbHRpbWUiOmk9IlBsdXMiO2JyZWFrO2Nhc2UicHJvX3ByZW1pdW0iOmk9IlByZW1pdW0iO2JyZWFrO2Nhc2UicHJvX2V4cGVydCI6aT0iRXhwZXJ0IjticmVhaztjYXNlInByb19wcmVtaXVtX2V4cGVydCI6aT0iVWx0aW1hdGUifXJldHVybiB0JiYoaSs9IiAiK3IudChudWxsLHZvaWQgMCxuKDgzNTgpKSksaX1mdW5jdGlvbiBtKGUpe2xldCB0PWU7c3dpdGNoKGUpe2Nhc2UicHJvIjp0PSJFc3NlbnRpYWwiO2JyZWFrO2Nhc2UicHJvX3JlYWx0aW1lIjp0PSJQbHVzIjticmVhawo7Y2FzZSJwcm9fcHJlbWl1bSI6dD0iUHJlbWl1bSI7YnJlYWs7Y2FzZSJwcm9fZXhwZXJ0Ijp0PSJFeHBlcnQiO2JyZWFrO2Nhc2UicHJvX3ByZW1pdW1fZXhwZXJ0Ijp0PSJVbHRpbWF0ZSI7YnJlYWs7Y2FzZSJmcmVlIjp0PSJCYXNpYyJ9cmV0dXJuIHR9ZnVuY3Rpb24gaChlLHQpe2NvbnN0IG49dHx8bmV3IERhdGUscj12KGUpLGk9bi5nZXRNb250aCgpK3Isbz1uZXcgRGF0ZShuZXcgRGF0ZShuKS5zZXRNb250aChpKSk7cmV0dXJuIG8uZ2V0TW9udGgoKT5pJTEyJiZvLnNldERhdGUoMCksZnVuY3Rpb24oZSx0KXtjb25zdCBuPXQuZ2V0VGltZSgpLWUuZ2V0VGltZSgpO3JldHVybiBNYXRoLnJvdW5kKG4vMWUzLzYwLzYwLzI0KX0obixvKX1mdW5jdGlvbiB5KGUsdCxuKXtyZXR1cm4gTWF0aC5yb3VuZCgodC1lKSp2KG4pKX1mdW5jdGlvbiB2KGUpe3N3aXRjaChlKXtjYXNlIGkuQmlsbGluZ0N5Y2xlLk9uZVllYXI6cmV0dXJuIDEyO2Nhc2UgaS5CaWxsaW5nQ3ljbGUuVGhyZWVNb250aHM6cmV0dXJuIDM7ZGVmYXVsdDpyZXR1cm4gMX19ZnVuY3Rpb24gdyhlKXtyZXR1cm4oTWF0aC5yb3VuZCgxMDAqZSkvMTAwKS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGIoZSl7Y29uc3QgdD1NYXRoLnJvdW5kKDEwMCplKS8xMDA7cmV0dXJuIE1hdGgucm91bmQodCkudG9GaXhlZCgwKX1mdW5jdGlvbiBfKGUpe2NvbnN0IHQ9TWF0aC5yb3VuZCgxMDAqZSkvMTAwLG49TWF0aC5yb3VuZCh0KTtyZXR1cm4gTWF0aC5hYnModC1uKT4wP3QudG9GaXhlZCgyKTpuLnRvRml4ZWQoMCl9ZnVuY3Rpb24geChlKXtjb25zdCB0PXIudChudWxsLHZvaWQgMCxuKDE1Mzc2NikpO2lmKGQoZSkpe2NvbnN0IG49ZihwKGUpKTtyZXR1cm4gdC5mb3JtYXQoe3Byb1BsYW5OYW1lOm59KX1yZXR1cm4gZihlKX19LDQ0MzU1NyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtwYXJzZUh0bWw6KCk9Pm8scGFyc2VIdG1sRWxlbWVudDooKT0+c30pO2NvbnN0IHI9bmV3IFdlYWtNYXA7dmFyIGk7ZnVuY3Rpb24gbyhlLHQpe2xldCBuLGk7cmV0dXJuIG49bnVsbD09dD9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6OT09PXQubm9kZVR5cGU/dC5kb2N1bWVudEVsZW1lbnQ6dCxyJiYoaT1yLmdldChuKSksaXx8KGk9bi5vd25lckRvY3VtZW50LmNyZWF0ZVJhbmdlKCksaS5zZWxlY3ROb2RlQ29udGVudHMobiksciYmci5zZXQobixpKSksaS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQoZSl9ZnVuY3Rpb24gcyhlLHQpe2NvbnN0IG49byhlLHQpLHI9bi5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gbnVsbCE9PXImJm4ucmVtb3ZlQ2hpbGQocikscn0hZnVuY3Rpb24oZSl7ZVtlLkVsZW1lbnQ9MV09IkVsZW1lbnQiLGVbZS5Eb2N1bWVudD05XT0iRG9jdW1lbnQifShpfHwoaT17fSkpfSw5MzExOTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aGFuZGxlVFZMaW5rc0NsaWNrOigpPT5hfSk7dmFyIHI9big0MDAxODEpLGk9big2MDE1ODcpLG89big3MzA2NDUpO2NvbnN0IHM9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKGU9Pntjb25zdCB0PWUudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7dD8uaG9zdG5hbWUmJigwLG8uaXNJbnRlcm5hbEhvc3QpKHQuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbihlLHQpe2NvbnN0IG49ZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXMoZSkubGVuZ3RoPjApcmV0dXJuKDAsaS5maWx0ZXJVdG1JbmZvKShlKTtjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjp0LmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOnQuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsci5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhzLHt3aWRnZXRfdHlwZTpsKG4pLGRvbWFpbjpjKG4pLGxpbms6ZSx0YXJnZXRfdHlwZTp0fSl9KHQuaHJlZix0LmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gYyhlKXtjb25zdCB0PWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gZS51dG1fc291cmNlfHxmdW5jdGlvbihlKXt0cnl7cmV0dXJuIG5ldyBVUkwoZSkuaG9zdH1jYXRjaChlKXtyZXR1cm4iIn19KHQpfWZ1bmN0aW9uIGwoZSl7aWYoZS51dG1fY2FtcGFpZ24pcmV0dXJuIGUudXRtX2NhbXBhaWduO2NvbnN0IHQ9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIHQuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP3Quc3BsaXQoIi8iKVsyXTp0fX0sMzg5Mjk4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3RyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvOigpPT5pfSk7dmFyIHI9big0MDAxODEpO2FzeW5jIGZ1bmN0aW9uIGkoZSl7TWF0aC5yYW5kb20oKT4uMDA1fHwoYXdhaXQoMCxyLmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRfbG9hZF9tZXRhX2luZm8vanNvbnNjaGVtYS8xLTAtMCIsZSl9fSw5MDIxMDAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZXh0cmFjdFdpZGdldFNldHRpbmdzOigpPT5pfSk7Y29uc3Qgcj17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtmdW5jdGlvbiBpKGUsdD1bXSxuKXtyZXR1cm4gZnVuY3Rpb24oZSx0LG4saT1bXSxvKXtjb25zdCBzPW4uc2xpY2UoMSksYT1kZWNvZGVVUklDb21wb25lbnQocyk7bGV0IGM9e307dHJ5eyIiIT09YSYmKGM9SlNPTi5wYXJzZShhKSx2b2lkIDAhPT1vJiZvKGUsYyksT2JqZWN0LmtleXMoYykuZm9yRWFjaCgoZT0+eyhyW2VdfHxpLmluY2x1ZGVzKGUpKSYmZGVsZXRlIGNbZV19KSkpfWNhdGNoKGUpe2M9e30sCmNvbnNvbGUud2FybigiSGFzaCBwYXJhbXMgcGFyc2luZyBlcnJvciEgSGFzaCBwYXJhbXMgaWdub3JlZC4iKX1jb25zdCBsPXQuc2xpY2UoMSksdT10LmluY2x1ZGVzKCIlIik/ZGVjb2RlVVJJQ29tcG9uZW50KGwpOnQsZD1uZXcgVVJMU2VhcmNoUGFyYW1zKHUpO2xldCBwPXt9O3RyeXtkLmZvckVhY2goKChlLHQpPT57aS5pbmNsdWRlcyh0KXx8KHBbdF09ZSl9KSksdm9pZCAwIT09byYmbyhlLHApfWNhdGNoKGUpe3A9e30sY29uc29sZS53YXJuKCJTZWFyY2ggcXVlcnkgcGFyYW1zIHBhcnNpbmcgZXJyb3IhIFNlYXJjaCBxdWVyeSBwYXJhbXMgaWdub3JlZC4iKX1yZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxlLGMscCl9KGUsbG9jYXRpb24uc2VhcmNoLGxvY2F0aW9uLmhhc2gsdCxuKX19LDI1NDY3MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtJbnRlcnZhbDooKT0+dSxSZXNvbHV0aW9uS2luZDooKT0+byxTcGVjaWFsUmVzb2x1dGlvbktpbmQ6KCk9PnN9KTtjb25zdCByPS9eKFxkKikoW1RTSERXTVJdKSQvLGk9L14oXGQrKSQvO3ZhciBvLHM7IWZ1bmN0aW9uKGUpe2UuVGlja3M9InRpY2tzIixlLlNlY29uZHM9InNlY29uZHMiLGUuTWludXRlcz0ibWludXRlcyIsZS5EYXlzPSJkYXlzIixlLldlZWtzPSJ3ZWVrcyIsZS5Nb250aHM9Im1vbnRocyIsZS5SYW5nZT0icmFuZ2UiLGUuSW52YWxpZD0iaW52YWxpZCJ9KG98fChvPXt9KSksZnVuY3Rpb24oZSl7ZS5Ib3Vycz0iaG91cnMifShzfHwocz17fSkpO2NvbnN0IGE9e307YVtvLlRpY2tzXT0xZTMsYVtvLlNlY29uZHNdPTFlMyxhW28uTWludXRlc109NjAqYVtvLlNlY29uZHNdLGFbby5EYXlzXT0xNDQwKmFbby5NaW51dGVzXSxhW28uV2Vla3NdPTcqYVtvLkRheXNdO2NvbnN0IGM9e1Q6by5UaWNrcyxTOm8uU2Vjb25kcyxEOm8uRGF5cyxXOm8uV2Vla3MsTTpvLk1vbnRocyxSOm8uUmFuZ2V9LGw9bmV3IFNldChbby5UaWNrcyxvLlNlY29uZHMsby5NaW51dGVzXSk7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2tpbmQ9by5JbnZhbGlkLHRoaXMuX211bHRpcGxpZXI9MCxlIT09by5JbnZhbGlkJiZ0PjAmJih0aGlzLl9raW5kPWUsdGhpcy5fbXVsdGlwbGllcj10KX1raW5kKCl7cmV0dXJuIHRoaXMuX2tpbmR9Z3VpS2luZCgpe3JldHVybiB0aGlzLmlzTWludXRlSG91cnMoKT9zLkhvdXJzOnRoaXMuX2tpbmR9bXVsdGlwbGllcigpe3JldHVybiB0aGlzLl9tdWx0aXBsaWVyfWlzVmFsaWQoKXtyZXR1cm4gdGhpcy5raW5kKCkhPT1vLkludmFsaWQmJnRoaXMubXVsdGlwbGllcigpPjB9aXNEV00oKXtyZXR1cm4gdGhpcy5pc1ZhbGlkKCkmJiF0aGlzLmlzUmFuZ2UoKSYmIXRoaXMuaXNJbnRyYWRheSgpJiYhdGhpcy5pc1RpY2tzKCl9aXNJbnRyYWRheSgpe2NvbnN0IGU9bC5oYXModGhpcy5raW5kKCkpO3JldHVybiB0aGlzLmlzVmFsaWQoKSYmZX1pc1NlY29uZHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLlNlY29uZHN9aXNNaW51dGVzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5NaW51dGVzfWlzTWludXRlSG91cnMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLk1pbnV0ZXMmJigoZT10aGlzLm11bHRpcGxpZXIoKSk+PTYwJiYhKGUlNjApKTt2YXIgZX1pc0RheXMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLkRheXN9aXNXZWVrcygpe3JldHVybiB0aGlzLmtpbmQoKT09PW8uV2Vla3N9aXNNb250aHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLk1vbnRoc31pc1JhbmdlKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5SYW5nZX1pc1RpY2tzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5UaWNrc31pczFUaWNrKCl7cmV0dXJuIHRoaXMuaXNUaWNrcygpJiYxPT09dGhpcy5tdWx0aXBsaWVyKCl9aXNUaW1lQmFzZWQoKXtyZXR1cm4hdGhpcy5pc1JhbmdlKCl9bGV0dGVyKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpJiZ0aGlzLmtpbmQoKSE9PW8uTWludXRlcz90aGlzLmtpbmQoKVswXS50b1VwcGVyQ2FzZSgpOiIifXZhbHVlKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpP3RoaXMua2luZCgpPT09by5NaW51dGVzP3RoaXMubXVsdGlwbGllcigpKyIiOnRoaXMubXVsdGlwbGllcigpK3RoaXMubGV0dGVyKCk6IiJ9aXNFcXVhbFRvKGUpe2lmKCEoZSBpbnN0YW5jZW9mIHUpKXRocm93IG5ldyBFcnJvcigiQXJndW1lbnQgaXMgbm90IGFuIEludGVydmFsIik7cmV0dXJuISghdGhpcy5pc1ZhbGlkKCl8fCFlLmlzVmFsaWQoKSkmJih0aGlzLmtpbmQoKT09PWUua2luZCgpJiZ0aGlzLm11bHRpcGxpZXIoKT09PWUubXVsdGlwbGllcigpKX1pbk1pbGxpc2Vjb25kcyhlPURhdGUubm93KCkpe2lmKCF0aGlzLmlzVmFsaWQoKXx8dGhpcy5pc1JhbmdlKCkpcmV0dXJuIE5hTjtpZih0aGlzLmlzTW9udGhzKCkpe2NvbnN0IHQ9bmV3IERhdGUoZSk7dC5zZXRVVENNb250aCh0LmdldFVUQ01vbnRoKCkrKHRoaXMubXVsdGlwbGllcigpfHwxKSk7cmV0dXJuK3QtZX1jb25zdCB0PXRoaXMubXVsdGlwbGllcigpO3JldHVybiBhW3RoaXMua2luZCgpXSp0fXN0YXRpYyBpc0VxdWFsKGUsdCl7cmV0dXJuIGU9PT10fHx1LnBhcnNlKGUpLmlzRXF1YWxUbyh1LnBhcnNlKHQpKX1zdGF0aWMgcGFyc2VFeHQoZSl7ZT0oZSsiIikudG9VcHBlckNhc2UoKS5zcGxpdCgiLCIpWzBdO2xldCB0PXIuZXhlYyhlKTtyZXR1cm4gbnVsbCE9PXQ/IkgiPT09dFsyXT97aW50ZXJ2YWw6bmV3IHUoby5NaW51dGVzLDYwKmQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOnMuSG91cnN9OntpbnRlcnZhbDpuZXcgdShjW3RbMl1dLGQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOmNbdFsyXV19Oih0PWkuZXhlYyhlKSxudWxsIT09dD97aW50ZXJ2YWw6bmV3IHUoby5NaW51dGVzLGQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOm8uTWludXRlc306e2ludGVydmFsOm5ldyB1KG8uSW52YWxpZCwwKSxndWlSZXNvbHV0aW9uS2luZDpvLkludmFsaWR9KX1zdGF0aWMgcGFyc2UoZSl7cmV0dXJuIHUucGFyc2VFeHQoZSkuaW50ZXJ2YWx9c3RhdGljIGtpbmQoZSl7cmV0dXJuIHUucGFyc2UoZSkua2luZCgpfXN0YXRpYyBpc1ZhbGlkKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzVmFsaWQoKQp9c3RhdGljIGlzRFdNKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzRFdNKCl9c3RhdGljIGlzSW50cmFkYXkoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNJbnRyYWRheSgpfXN0YXRpYyBpc1NlY29uZHMoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNTZWNvbmRzKCl9c3RhdGljIGlzTWludXRlcyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc01pbnV0ZXMoKX1zdGF0aWMgaXNNaW51dGVIb3VycyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc01pbnV0ZUhvdXJzKCl9c3RhdGljIGlzRGF5cyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc0RheXMoKX1zdGF0aWMgaXNXZWVrcyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc1dlZWtzKCl9c3RhdGljIGlzTW9udGhzKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzTW9udGhzKCl9c3RhdGljIGlzUmFuZ2UoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNSYW5nZSgpfXN0YXRpYyBpc1RpY2tzKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzVGlja3MoKX1zdGF0aWMgaXNUaW1lQmFzZWQoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNUaW1lQmFzZWQoKX1zdGF0aWMgbm9ybWFsaXplKGUpe2NvbnN0IHQ9dS5wYXJzZShlKTtyZXR1cm4gdC5pc1ZhbGlkKCk/dC52YWx1ZSgpOm51bGx9fWZ1bmN0aW9uIGQoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD8xOnBhcnNlSW50KGUsMTApfX0sNzM4NDU4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2lzQW5kcm9pZDooKT0+Zyxpc0FueU1vYmlsZTooKT0+dixpc0JsYWNrQmVycnk6KCk9PmYsaXNDaHJvbWU6KCk9PmEsaXNFZGdlOigpPT5sLGlzRkY6KCk9PmMsaXNJT1M6KCk9Pm0saXNJUGFkOigpPT55LGlzTGludXg6KCk9PnAsaXNNYWM6KCk9PmQsaXNPcGVyYU1pbmk6KCk9PmgsaXNTYWZhcmk6KCk9PnUsbW9iaWxldG91Y2g6KCk9Pm8sdG91Y2g6KCk9PnN9KTtjb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixpPXImJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LG89ciYmaSYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LHM9ciYmKGl8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxhPXImJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxjPXImJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLGw9ciYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHU9ciYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZD1yJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHA9KHImJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLGc9ciYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGY9ciYmL0JsYWNrQmVycnkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLG09ciYmL2lQaG9uZXxpUGFkfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxoPXImJi9PcGVyYSBNaW5pL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSx5PXImJigiTWFjSW50ZWwiPT09bmF2aWdhdG9yLnBsYXRmb3JtJiZuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MXx8L2lQYWQvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSksdj1nfHxmfHxtfHxofX1dKTs="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15049.08e0888e7d45f371417a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.298Z","timestamp":1785154590298,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/15049.08e0888e7d45f371417a.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-7e05\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:38\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 35c618104649665df51c6c8e787608b1\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":32261,"size_decoded":11983,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3440)","md5":"db48995ff5f730ecb170f36e4e2cc18a","sha1":"044ce4f192cecbee308979fbae086c96bfb8db14","sha256":"c81b7b8904e0431a7b79c10f58c825619389b9b17ab64e096121d6f89e2dbe44","sha512":"b421809d047c58d7c47154fd7dd0c211a8727f97c41abc92cb643758b44cc1861e7dc1a4ebc141ba015e211d59dee2becc24789ebb814d22544421123442befa","ssdeep":"768:ffIIzV3q50QTARuL5BAPuQ8GYzHdnj2WyvbVLKdrPQg4xGCSHyezAYMfKngc/oze:nw7H1awIgJdAag7nwvsBKJ/n","tlshash":"a8e2f8c23285b8773bf350e618791542962e35627c0a48bcfa6d29cf3c1cd8a617fa75","first_seen":"2026-07-24T18:44:55.936981Z","last_seen":"2026-07-27T14:22:59.637616Z","times_seen":311,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNTA0OV0sezg0NTU3NyhlKXtlLmV4cG9ydHM9eyJ0di1zcGlubmVyX19jb250YWluZXItcm90YXRlIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSCIsInR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtcnRsIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1ydGwtajRKbHJZVkgifX0sMzg0MDE3KGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse2ZldGNoOigpPT5zfSk7dmFyIG49cigyMjEwNjEpO3IoMzAwMjg2KTtjb25zdCBpPSgwLG4uZ2V0TG9nZ2VyKSgiRmV0Y2giKTtmdW5jdGlvbiBzKGUsdCxyPXt9KXt7Y29uc3R7bG9nT25FcnJvclN0YXR1czpuPSEwLGxvZ0JvZHlPbkVycm9yOnM9ITF9PXI7dD10fHx7fSxmdW5jdGlvbihlKXtyZXR1cm4gbmV3IFVSTChlLGRvY3VtZW50LmJhc2VVUkkpLm9yaWdpbj09PWxvY2F0aW9uLm9yaWdpbn0oZSkmJih0LmhlYWRlcnM/dC5oZWFkZXJzIGluc3RhbmNlb2YgSGVhZGVyc3x8KHQuaGVhZGVycz1uZXcgSGVhZGVycyh0LmhlYWRlcnMpKTp0LmhlYWRlcnM9bmV3IEhlYWRlcnMsd2luZG93LmxvY2FsZSYmdC5oZWFkZXJzLnNldCgiWC1MYW5ndWFnZSIsd2luZG93LmxvY2FsZSksdC5oZWFkZXJzLnNldCgiWC1SZXF1ZXN0ZWQtV2l0aCIsIlhNTEh0dHBSZXF1ZXN0IikpLHZvaWQgMD09PXQuY3JlZGVudGlhbHMmJih0LmNyZWRlbnRpYWxzPSJzYW1lLW9yaWdpbiIpO2NvbnN0IGE9d2luZG93LmZldGNoKGUsdCk7cmV0dXJuIGEudGhlbigocj0+e2lmKCFyLm9rJiZuKXtsZXQgbj0iIjt0Lm1ldGhvZCYmKG4rPWAke3QubWV0aG9kLnRvVXBwZXJDYXNlKCl9IGApLG4rPWUsbis9YC4gU3RhdHVzICR7ci5zdGF0dXN9YCxyLnN0YXR1c1RleHQmJihuKz1gLiAke3Iuc3RhdHVzVGV4dH1gKSxyLmhlYWRlcnMudmlhJiYobis9YC4gVmlhOiAke3IuaGVhZGVycy52aWF9YCkscyYmInN0cmluZyI9PXR5cGVvZiB0LmJvZHkmJihuKz1gLiBCb2R5OiAke3QuYm9keS5zbGljZSgwLDEwMjQpfWApLGkubG9nRXJyb3Iobil9cmV0dXJuIHJ9KSwocj0+e2lmKHImJiJBYm9ydEVycm9yIj09PXIubmFtZSlyZXR1cm47bGV0IG49IiI7dC5tZXRob2QmJihuKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxuKz1lLG5hdmlnYXRvci5vbkxpbmU/bis9YC4gJHtTdHJpbmcocil9YDpuKz0iLiBVc2VyIGlzIG9mZmxpbmUuIixpLmxvZ0Vycm9yKG4pfSkpLGF9fX0sOTA5Nzk4KGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse2ZsdXNoRGVsZWdhdGU6KCk9Pm59KTtjb25zdCBuPW5ldyhyKDk0ODM4MCkuRGVsZWdhdGUpfSwyNDc5MDEoZSx0LHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbjtyLmQodCx7U3RkVGhlbWU6KCk9Pm59KSxmdW5jdGlvbihlKXtlLkxpZ2h0PSJsaWdodCIsZS5EYXJrPSJkYXJrIn0obnx8KG49e30pKX0sMTUyNjk5KGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse1RWWFdpbmRvd0V2ZW50czooKT0+YX0pO3ZhciBuPXIoMjIxMDYxKSxpPXIoOTMyMzY1KTtjb25zdCBzPSgwLG4uZ2V0TG9nZ2VyKSgiWFdpbmRvd0V2ZW50cyIpO3ZhciBhOyFmdW5jdGlvbihlKXtjb25zdCB0PSJ0dnh3ZXZlbnRzLiIscj17fTtsZXQgbjt3aW5kb3cuQnJvYWRjYXN0Q2hhbm5lbD8obj1uZXcgQnJvYWRjYXN0Q2hhbm5lbCgidHZ4d2V2ZW50cyIpLG4uYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGZ1bmN0aW9uKGUpe2NvbnN0e2RhdGE6e2V2ZW50OnQsdmFsdWU6bn19PWU7clt0XSYmclt0XS5mb3JFYWNoKChlPT57ZShuKX0pKX0pKSxmdW5jdGlvbigpe2NvbnN0IGU9W10scj1wZXJmb3JtYW5jZS5ub3coKTtmb3IobGV0IHI9MDtyPGkuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3IrKyl7Y29uc3Qgbj1pLlRWTG9jYWxTdG9yYWdlLmtleShyKTtuLnN0YXJ0c1dpdGgodCkmJmUucHVzaChuKX1jb25zdCBuPWkuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO2Zvcihjb25zdCB0IG9mIGUpaS5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHQpO2NvbnN0IGE9cGVyZm9ybWFuY2Uubm93KCktcjtzLmxvZ05vcm1hbChgVG90YWwga2V5cyBhbW91bnQgaW4gbG9jYWwgc3RvcmFnZSBvbiBvcGVyYXRpb24gc3RhcnQ6ICR7bn1gKSxzLmxvZ05vcm1hbChgS2V5cyBhbW91bnQgaW4gbG9jYWwgc3RvcmFnZSB0byBiZSBkZWxldGVkOiAke2UubGVuZ3RofWApLHMubG9nTm9ybWFsKGBLZXlzIHRvIGJlIGRlbGV0ZWQgZnJvbSBsb2NhbCBzdG9yYWdlOiAke0pTT04uc3RyaW5naWZ5KGUpfWApLHMubG9nTm9ybWFsKGBSZW1vdmluZyBrZXlzIGZyb20gbG9jYWwgc3RvcmFnZSB0b29rICR7YX0gbXNgKX0oKSk6d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0b3JhZ2UiLChmdW5jdGlvbihlKXtjb25zdHtuZXdWYWx1ZTpuLGtleTpzfT1lO2lmKG51bGw9PT1ufHwhc3x8IXMuc3RhcnRzV2l0aCh0KSlyZXR1cm47Y29uc3QgYT1zLnN1YnN0cmluZygxMSk7clthXSYmclthXS5mb3JFYWNoKCh0PT57dChlLm5ld1ZhbHVlKX0pKTtpLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0ocyl9KSksZS5vbj1mdW5jdGlvbihlLHQpe3JbZV18fChyW2VdPVtdKSxyW2VdLnB1c2godCl9LGUub2ZmPWZ1bmN0aW9uKGUsdCl7aWYoIXJbZV0pcmV0dXJuO2NvbnN0IG49cltlXS5pbmRleE9mKHQpOy0xIT09biYmKDE9PT1yW2VdLmxlbmd0aD9kZWxldGUgcltlXTpyW2VdLnNwbGljZShuLDEpKX0sZS5lbWl0PWZ1bmN0aW9uKGUscj1EYXRlLm5vdygpKXt0cnl7bj9uLnBvc3RNZXNzYWdlKHtldmVudDplLHZhbHVlOnJ9KTppLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0odCtlLHIudG9TdHJpbmcoKSl9Y2F0Y2goZSl7cy5sb2dFcnJvcihlLm1lc3NhZ2UpfX19KGF8fChhPXt9KSl9LDgzMDc4MyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHt0cnlQYXJzZU5hbWVkUmdiYTooKT0+aX0pCjtjb25zdCBuPW5ldyBNYXAoW1siYWxpY2VibHVlIiwiI2YwZjhmZiJdLFsiYW50aXF1ZXdoaXRlIiwiI2ZhZWJkNyJdLFsiYXF1YSIsIiMwMGZmZmYiXSxbImFxdWFtYXJpbmUiLCIjN2ZmZmQ0Il0sWyJhenVyZSIsIiNmMGZmZmYiXSxbImJlaWdlIiwiI2Y1ZjVkYyJdLFsiYmlzcXVlIiwiI2ZmZTRjNCJdLFsiYmxhY2siLCIjMDAwMDAwIl0sWyJibGFuY2hlZGFsbW9uZCIsIiNmZmViY2QiXSxbImJsdWUiLCIjMDAwMGZmIl0sWyJibHVldmlvbGV0IiwiIzhhMmJlMiJdLFsiYnJvd24iLCIjYTUyYTJhIl0sWyJidXJseXdvb2QiLCIjZGViODg3Il0sWyJjYWRldGJsdWUiLCIjNWY5ZWEwIl0sWyJjaGFydHJldXNlIiwiIzdmZmYwMCJdLFsiY2hvY29sYXRlIiwiI2QyNjkxZSJdLFsiY29yYWwiLCIjZmY3ZjUwIl0sWyJjb3JuZmxvd2VyYmx1ZSIsIiM2NDk1ZWQiXSxbImNvcm5zaWxrIiwiI2ZmZjhkYyJdLFsiY3JpbXNvbiIsIiNkYzE0M2MiXSxbImN5YW4iLCIjMDBmZmZmIl0sWyJkYXJrYmx1ZSIsIiMwMDAwOGIiXSxbImRhcmtjeWFuIiwiIzAwOGI4YiJdLFsiZGFya2dvbGRlbnJvZCIsIiNiODg2MGIiXSxbImRhcmtncmF5IiwiI2E5YTlhOSJdLFsiZGFya2dyZWVuIiwiIzAwNjQwMCJdLFsiZGFya2toYWtpIiwiI2JkYjc2YiJdLFsiZGFya21hZ2VudGEiLCIjOGIwMDhiIl0sWyJkYXJrb2xpdmVncmVlbiIsIiM1NTZiMmYiXSxbImRhcmtvcmFuZ2UiLCIjZmY4YzAwIl0sWyJkYXJrb3JjaGlkIiwiIzk5MzJjYyJdLFsiZGFya3JlZCIsIiM4YjAwMDAiXSxbImRhcmtzYWxtb24iLCIjZTk5NjdhIl0sWyJkYXJrc2VhZ3JlZW4iLCIjOGZiYzhmIl0sWyJkYXJrc2xhdGVibHVlIiwiIzQ4M2Q4YiJdLFsiZGFya3NsYXRlZ3JheSIsIiMyZjRmNGYiXSxbImRhcmt0dXJxdW9pc2UiLCIjMDBjZWQxIl0sWyJkYXJrdmlvbGV0IiwiIzk0MDBkMyJdLFsiZGVlcHBpbmsiLCIjZmYxNDkzIl0sWyJkZWVwc2t5Ymx1ZSIsIiMwMGJmZmYiXSxbImRpbWdyYXkiLCIjNjk2OTY5Il0sWyJkb2RnZXJibHVlIiwiIzFlOTBmZiJdLFsiZmVsZHNwYXIiLCIjZDE5Mjc1Il0sWyJmaXJlYnJpY2siLCIjYjIyMjIyIl0sWyJmbG9yYWx3aGl0ZSIsIiNmZmZhZjAiXSxbImZvcmVzdGdyZWVuIiwiIzIyOGIyMiJdLFsiZnVjaHNpYSIsIiNmZjAwZmYiXSxbImdhaW5zYm9ybyIsIiNkY2RjZGMiXSxbImdob3N0d2hpdGUiLCIjZjhmOGZmIl0sWyJnb2xkIiwiI2ZmZDcwMCJdLFsiZ29sZGVucm9kIiwiI2RhYTUyMCJdLFsiZ3JheSIsIiM4MDgwODAiXSxbImdyZWVuIiwiIzAwODAwMCJdLFsiZ3JlZW55ZWxsb3ciLCIjYWRmZjJmIl0sWyJob25leWRldyIsIiNmMGZmZjAiXSxbImhvdHBpbmsiLCIjZmY2OWI0Il0sWyJpbmRpYW5yZWQiLCIjY2Q1YzVjIl0sWyJpbmRpZ28iLCIjNGIwMDgyIl0sWyJpdm9yeSIsIiNmZmZmZjAiXSxbImtoYWtpIiwiI2YwZTY4YyJdLFsibGF2ZW5kZXIiLCIjZTZlNmZhIl0sWyJsYXZlbmRlcmJsdXNoIiwiI2ZmZjBmNSJdLFsibGF3bmdyZWVuIiwiIzdjZmMwMCJdLFsibGVtb25jaGlmZm9uIiwiI2ZmZmFjZCJdLFsibGlnaHRibHVlIiwiI2FkZDhlNiJdLFsibGlnaHRjb3JhbCIsIiNmMDgwODAiXSxbImxpZ2h0Y3lhbiIsIiNlMGZmZmYiXSxbImxpZ2h0Z29sZGVucm9keWVsbG93IiwiI2ZhZmFkMiJdLFsibGlnaHRncmVlbiIsIiM5MGVlOTAiXSxbImxpZ2h0Z3JleSIsIiNkM2QzZDMiXSxbImxpZ2h0cGluayIsIiNmZmI2YzEiXSxbImxpZ2h0c2FsbW9uIiwiI2ZmYTA3YSJdLFsibGlnaHRzZWFncmVlbiIsIiMyMGIyYWEiXSxbImxpZ2h0c2t5Ymx1ZSIsIiM4N2NlZmEiXSxbImxpZ2h0c2xhdGVibHVlIiwiIzg0NzBmZiJdLFsibGlnaHRzbGF0ZWdyYXkiLCIjNzc4ODk5Il0sWyJsaWdodHN0ZWVsYmx1ZSIsIiNiMGM0ZGUiXSxbImxpZ2h0eWVsbG93IiwiI2ZmZmZlMCJdLFsibGltZSIsIiMwMGZmMDAiXSxbImxpbWVncmVlbiIsIiMzMmNkMzIiXSxbImxpbmVuIiwiI2ZhZjBlNiJdLFsibWFnZW50YSIsIiNmZjAwZmYiXSxbIm1hcm9vbiIsIiM4MDAwMDAiXSxbIm1lZGl1bWFxdWFtYXJpbmUiLCIjNjZjZGFhIl0sWyJtZWRpdW1ibHVlIiwiIzAwMDBjZCJdLFsibWVkaXVtb3JjaGlkIiwiI2JhNTVkMyJdLFsibWVkaXVtcHVycGxlIiwiIzkzNzBkOCJdLFsibWVkaXVtc2VhZ3JlZW4iLCIjM2NiMzcxIl0sWyJtZWRpdW1zbGF0ZWJsdWUiLCIjN2I2OGVlIl0sWyJtZWRpdW1zcHJpbmdncmVlbiIsIiMwMGZhOWEiXSxbIm1lZGl1bXR1cnF1b2lzZSIsIiM0OGQxY2MiXSxbIm1lZGl1bXZpb2xldHJlZCIsIiNjNzE1ODUiXSxbIm1pZG5pZ2h0Ymx1ZSIsIiMxOTE5NzAiXSxbIm1pbnRjcmVhbSIsIiNmNWZmZmEiXSxbIm1pc3R5cm9zZSIsIiNmZmU0ZTEiXSxbIm1vY2Nhc2luIiwiI2ZmZTRiNSJdLFsibmF2YWpvd2hpdGUiLCIjZmZkZWFkIl0sWyJuYXZ5IiwiIzAwMDA4MCJdLFsib2xkbGFjZSIsIiNmZGY1ZTYiXSxbIm9saXZlIiwiIzgwODAwMCJdLFsib2xpdmVkcmFiIiwiIzZiOGUyMyJdLFsib3JhbmdlIiwiI2ZmYTUwMCJdLFsib3JhbmdlcmVkIiwiI2ZmNDUwMCJdLFsib3JjaGlkIiwiI2RhNzBkNiJdLFsicGFsZWdvbGRlbnJvZCIsIiNlZWU4YWEiXSxbInBhbGVncmVlbiIsIiM5OGZiOTgiXSxbInBhbGV0dXJxdW9pc2UiLCIjYWZlZWVlIl0sWyJwYWxldmlvbGV0cmVkIiwiI2Q4NzA5MyJdLFsicGFwYXlhd2hpcCIsIiNmZmVmZDUiXSxbInBlYWNocHVmZiIsIiNmZmRhYjkiXSxbInBlcnUiLCIjY2Q4NTNmIl0sWyJwaW5rIiwiI2ZmYzBjYiJdLFsicGx1bSIsIiNkZGEwZGQiXSxbInBvd2RlcmJsdWUiLCIjYjBlMGU2Il0sWyJwdXJwbGUiLCIjODAwMDgwIl0sWyJyZWQiLCIjZmYwMDAwIl0sWyJyb3N5YnJvd24iLCIjYmM4ZjhmIl0sWyJyb3lhbGJsdWUiLCIjNDE2OWUxIl0sWyJzYWRkbGVicm93biIsIiM4YjQ1MTMiXSxbInNhbG1vbiIsIiNmYTgwNzIiXSxbInNhbmR5YnJvd24iLCIjZjRhNDYwIl0sWyJzZWFncmVlbiIsIiMyZThiNTciXSxbInNlYXNoZWxsIiwiI2ZmZjVlZSJdLFsic2llbm5hIiwiI2EwNTIyZCJdLFsic2lsdmVyIiwiI2MwYzBjMCJdLFsic2t5Ymx1ZSIsIiM4N2NlZWIiXSxbInNsYXRlYmx1ZSIsIiM2YTVhY2QiXSxbInNsYXRlZ3JheSIsIiM3MDgwOTAiXSxbInNub3ciLCIjZmZmYWZhIl0sWyJzcHJpbmdncmVlbiIsIiMwMGZmN2YiXSxbInN0ZWVsYmx1ZSIsIiM0NjgyYjQiXSxbInRhbiIsIiNkMmI0OGMiXSxbInRlYWwiLCIjMDA4MDgwIl0sWyJ0aGlzdGxlIiwiI2Q4YmZkOCJdLFsidG9tYXRvIiwiI2ZmNjM0NyJdLFsidHVycXVvaXNlIiwiIzQwZTBkMCJdLFsidmlvbGV0IiwiI2VlODJlZSJdLFsidmlvbGV0cmVkIiwiI2QwMjA5MCJdLFsid2hlYXQiLCIjZjVkZWIzIl0sWyJ3aGl0ZSIsIiNmZmZmZmYiXSxbIndoaXRlc21va2UiLCIjZjVmNWY1Il0sWyJ5ZWxsb3ciLCIjZmZmZjAwIl0sWyJ5ZWxsb3dncmVlbiIsIiM5YWNkMzIiXV0pCjtmdW5jdGlvbiBpKGUpe2NvbnN0IHQ9bi5nZXQoZSk7aWYodm9pZCAwPT09dClyZXR1cm4gbnVsbDtyZXR1cm5bcGFyc2VJbnQodC5zbGljZSgxLDMpLDE2KSxwYXJzZUludCh0LnNsaWNlKDMsNSksMTYpLHBhcnNlSW50KHQuc2xpY2UoNSw3KSwxNiksMV19fSw2OTM1MDAoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7Z2V0VGltZUZyYW1lczooKT0+c30pO3ZhciBuPXIoNzgzMjU0KSxpPXIoMjE1NzMwKTtmdW5jdGlvbiBzKGUpe3JldHVybnsiMWQiOnt0ZXh0Om4udChudWxsLHZvaWQgMCxyKDkzODEwMCkpLHZhbHVlOnt2YWx1ZToiMUQiLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5bIjFEIl0/PygwLGkuc3RyaW5nQXNSZXNvbHV0aW9uKSgiMSIpLGRlc2NyaXB0aW9uOigwLGkuZGF5c1N0cmluZ0xpdGVyYWwpKDEpfSwiNWQiOnt0ZXh0Om4udChudWxsLHZvaWQgMCxyKDgyODU1KSksdmFsdWU6e3ZhbHVlOiI1RCIsdHlwZToicGVyaW9kLWJhY2sifSx0YXJnZXRSZXNvbHV0aW9uOmU/LlsiNUQiXT8/KDAsaS5zdHJpbmdBc1Jlc29sdXRpb24pKCI1IiksZGVzY3JpcHRpb246KDAsaS5kYXlzU3RyaW5nTGl0ZXJhbCkoNSl9LCIxdyI6e3RleHQ6bi50KG51bGwsdm9pZCAwLHIoNDkyMTM1KSksdmFsdWU6e3ZhbHVlOiI3RCIsdHlwZToicGVyaW9kLWJhY2sifSx0YXJnZXRSZXNvbHV0aW9uOmU/LlsiNVciXT8/KDAsaS5zdHJpbmdBc1Jlc29sdXRpb24pKCIxNSIpLGRlc2NyaXB0aW9uOigwLGkud2Vla3NTdHJpbmdMaXRlcmFsKSgxKX0sIjFtIjp7dGV4dDpuLnQobnVsbCx2b2lkIDAscig4MzI3MzMpKSx2YWx1ZTp7dmFsdWU6IjFNIix0eXBlOiJwZXJpb2QtYmFjayJ9LHRhcmdldFJlc29sdXRpb246ZT8uWyIxTSJdPz8oMCxpLnN0cmluZ0FzUmVzb2x1dGlvbikoIjMwIiksZGVzY3JpcHRpb246KDAsaS5tb250aHNTdHJpbmdMaXRlcmFsKSgxKX0sIjNtIjp7dGV4dDpuLnQobnVsbCx2b2lkIDAscig4MTkwNzgpKSx2YWx1ZTp7dmFsdWU6IjNNIix0eXBlOiJwZXJpb2QtYmFjayJ9LHRhcmdldFJlc29sdXRpb246ZT8uWyIzTSJdPz8oMCxpLnN0cmluZ0FzUmVzb2x1dGlvbikoIjYwIiksZGVzY3JpcHRpb246KDAsaS5tb250aHNTdHJpbmdMaXRlcmFsKSgzKX0sIjZtIjp7dGV4dDpuLnQobnVsbCx2b2lkIDAscig2ODA3NikpLHZhbHVlOnt2YWx1ZToiNk0iLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5bIjZNIl0/PygwLGkuc3RyaW5nQXNSZXNvbHV0aW9uKSgiMTIwIiksZGVzY3JpcHRpb246KDAsaS5tb250aHNTdHJpbmdMaXRlcmFsKSg2KX0sIjEybSI6e3RleHQ6bi50KG51bGwsdm9pZCAwLHIoNzcwMzAzKSksdmFsdWU6e3ZhbHVlOiIxMk0iLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5bIjEyTSJdPz8oMCxpLnN0cmluZ0FzUmVzb2x1dGlvbikoIjFEIiksZGVzY3JpcHRpb246KDAsaS55ZWFyc1N0cmluZ0xpdGVyYWwpKDEpfSwiMjRtIjp7dGV4dDpuLnQobnVsbCx2b2lkIDAscig5MzQ3NzcpKSx2YWx1ZTp7dmFsdWU6IjI0TSIsdHlwZToicGVyaW9kLWJhY2sifSx0YXJnZXRSZXNvbHV0aW9uOmU/LlsiMjRNIl0/PygwLGkuc3RyaW5nQXNSZXNvbHV0aW9uKSgiMVciKSxkZXNjcmlwdGlvbjooMCxpLnllYXJzU3RyaW5nTGl0ZXJhbCkoMil9LCIzNm0iOnt0ZXh0Om4udChudWxsLHZvaWQgMCxyKDI3MjA5OCkpLHZhbHVlOnt2YWx1ZToiMzZNIix0eXBlOiJwZXJpb2QtYmFjayJ9LHRhcmdldFJlc29sdXRpb246ZT8uWyIzNk0iXT8/KDAsaS5zdHJpbmdBc1Jlc29sdXRpb24pKCIxVyIpLGRlc2NyaXB0aW9uOigwLGkueWVhcnNTdHJpbmdMaXRlcmFsKSgzKX0sIjYwbSI6e3RleHQ6bi50KG51bGwsdm9pZCAwLHIoNDQ2NTYwKSksdmFsdWU6e3ZhbHVlOiI2ME0iLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5bIjYwTSJdPz8oMCxpLnN0cmluZ0FzUmVzb2x1dGlvbikoIjFXIiksZGVzY3JpcHRpb246KDAsaS55ZWFyc1N0cmluZ0xpdGVyYWwpKDUpfSwiMTIwbSI6e3RleHQ6bi50KG51bGwsdm9pZCAwLHIoOTk1MDY2KSksdmFsdWU6e3ZhbHVlOiIxMjBNIix0eXBlOiJwZXJpb2QtYmFjayJ9LHRhcmdldFJlc29sdXRpb246ZT8uWyIxMjBNIl0/PygwLGkuc3RyaW5nQXNSZXNvbHV0aW9uKSgiMU0iKSxkZXNjcmlwdGlvbjooMCxpLnllYXJzU3RyaW5nTGl0ZXJhbCkoMTApfSx5dGQ6e3RleHQ6bi50KG51bGwsdm9pZCAwLHIoNDIyMzY5KSksdmFsdWU6e3ZhbHVlOiJZVEQiLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5ZVEQ/PygwLGkuc3RyaW5nQXNSZXNvbHV0aW9uKSgiMUQiKSxkZXNjcmlwdGlvbjpuLnQobnVsbCx2b2lkIDAscig0ODU0MjApKX0sYWxsOnt0ZXh0Om4udChudWxsLHZvaWQgMCxyKDIzMzY5MCkpLHZhbHVlOnt2YWx1ZToiQUxMIix0eXBlOiJwZXJpb2QtYmFjayJ9LHRhcmdldFJlc29sdXRpb246ZT8uQUxMPz8oMCxpLnN0cmluZ0FzUmVzb2x1dGlvbikoIjFNIil9LGxhc3RzZXNzaW9uOnt0ZXh0Om4udChudWxsLHZvaWQgMCxyKDkzODEwMCkpLHZhbHVlOnt2YWx1ZToiTEFTVFNFU1NJT04iLHR5cGU6InBlcmlvZC1iYWNrIn0sdGFyZ2V0UmVzb2x1dGlvbjplPy5MQVNUU0VTU0lPTj8/KDAsaS5zdHJpbmdBc1Jlc29sdXRpb24pKCIxIiksZGVzY3JpcHRpb246KDAsaS5kYXlzU3RyaW5nTGl0ZXJhbCkoMSl9fX19LDIxNTczMChlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtkYXlzU3RyaW5nTGl0ZXJhbDooKT0+aSxtb250aHNTdHJpbmdMaXRlcmFsOigpPT5hLHN0cmluZ0FzUmVzb2x1dGlvbjooKT0+bCx3ZWVrc1N0cmluZ0xpdGVyYWw6KCk9PnMseWVhcnNTdHJpbmdMaXRlcmFsOigpPT5vfSk7dmFyIG49cig3ODMyNTQpO2NvbnN0IGk9ZT0+bi50KG51bGwse3BsdXJhbDoie3N0cn0gZGF5cyIsY291bnQ6ZSxyZXBsYWNlOntzdHI6YCR7ZX1gfX0scigxMDMwMzApKSxzPWU9Pm4udChudWxsLHtwbHVyYWw6IntzdHJ9IHdlZWtzIixjb3VudDplLHJlcGxhY2U6e3N0cjpgJHtlfWB9fSxyKDY0NDYyNSkpLGE9ZT0+bi50KG51bGwsewpwbHVyYWw6IntzdHJ9IG1vbnRocyIsY291bnQ6ZSxyZXBsYWNlOntzdHI6YCR7ZX1gfX0scig2OTQ2MTcpKSxvPWU9Pm4udChudWxsLHtwbHVyYWw6IntzdHJ9IHllYXJzIixjb3VudDplLHJlcGxhY2U6e3N0cjpgJHtlfWB9fSxyKDIxNjQwMikpLGw9ZT0+ZX0sNDI5NTQ5KGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse2dldEFjdHVhbFRpbWVGcmFtZTooKT0+aX0pO3ZhciBuPXIoNjkzNTAwKTtmdW5jdGlvbiBpKGUpe2NvbnN0IHQ9bmV3IFNldChPYmplY3QudmFsdWVzKCgwLG4uZ2V0VGltZUZyYW1lcykoKSkubWFwKChlPT5lLnZhbHVlLnZhbHVlKSkpO2lmKHQuaGFzKGUpKXJldHVybiBlO2NvbnN0IHI9ZS50b1VwcGVyQ2FzZSgpO3JldHVybiB0LmhhcyhyKT9yOiIxMk0ifX0sNTA1NTYoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7Y29sb3JzUGFsZXR0ZTooKT0+YyxnZXRIZXhDb2xvckJ5TmFtZTooKT0+aH0pO3ZhciBuPXIoMzE3NjYzKSxpPXIoODY3NTIyKSxzPXIoMTM4NjM4KTtjb25zdCBhPXsuLi5uLC4uLml9LG89e30sbD1PYmplY3Qua2V5cyhhKS5sZW5ndGgsdT0vXiMoKFthLWYwLTldezJ9KXsyLDR9fFthLWYwLTldezN9KSQvaTtmdW5jdGlvbiBkKGUsdD1bXSxyPWEpe2NvbnN0IG49cltlXTtpZighbilyZXR1cm4gbnVsbDtpZih1LnRlc3QobikpcmV0dXJuIG47Y29uc3QgaT1uO3JldHVybiB0LnB1c2goZSksLTEhPT10LmluZGV4T2YoaSk/KGNvbnNvbGUud2FybigiQ29sb3JzIGRlZmluaXRpb25zIGN5Y2xlZCIpLG4pOnQubGVuZ3RoPmw/KGNvbnNvbGUud2FybigiVG9vIG1hbnkgdmFyaWFibGVzLWxpbmsgaW4gSEVYLWNvbG9yIHNlYXJjaDogIit0WzBdKSxudWxsKTpkKGksdCxyKX1PYmplY3Qua2V5cyhhKS5mb3JFYWNoKChlPT57Y29uc3QgdD1kKGUpO29bZV09KDAscy5lbnN1cmVOb3ROdWxsKSh0KX0pKTtjb25zdCBjPW87ZnVuY3Rpb24gaChlLHQ9Yyl7Y29uc3Qgcj10W2VdO2lmKCFyKXtpZih1LnRlc3QoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IEVycm9yKCJObyBzdWNoIGNvbG9yICIrZSl9cmV0dXJuIHJ9fSw1Njc0NzkoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7REVGQVVMVF9TSVpFOigpPT5uLHNwaW5uZXJTaXplTWFwOigpPT5pfSk7Y29uc3Qgbj0ibGFyZ2UiLGk9e21pbmk6InhzbWFsbCIseHhzbWFsbDoieHhzbWFsbCIseHNtYWxsOiJ4c21hbGwiLHNtYWxsOiJzbWFsbCIsbWVkaXVtOiJtZWRpdW0iLGxhcmdlOiJsYXJnZSJ9fSwxOTg5MDEoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKGUsdCxyLG49MCxpPWUubGVuZ3RoKXtyZXR1cm4gZnVuY3Rpb24oZSx0LHIsbixpKXtsZXQgcz1pLW47Zm9yKDswPHM7KXtjb25zdCBpPXM+PjEsYT1uK2k7cihlKGEpLHQpPyhuPWErMSxzLT1pKzEpOnM9aX1yZXR1cm4gbn0oKHQ9PmVbdF0pLHQscixuLGkpfWZ1bmN0aW9uIGkoZSx0LHIsbj0wLGk9ZS5sZW5ndGgpe2xldCBzPWktbjtmb3IoOzA8czspe2NvbnN0IGk9cz4+MSxhPW4raTtyKHQsZVthXSk/cz1pOihuPWErMSxzLT1pKzEpfXJldHVybiBufXIuZCh0LHtsb3dlcmJvdW5kOigpPT5uLHVwcGVyYm91bmQ6KCk9Pml9KX0sNTQwNTc4KGUsdCxyKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlKXtyZXR1cm4gZS5yZXBsYWNlKC9bLS9cXF4kKis/LigpfFtcXXt9XS9nLCJcXCQmIil9ci5kKHQse3JlZ0V4cEVzY2FwZTooKT0+bn0pfSw0OTExNjUoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7ZGF0ZUZvcm1hdEZ1bmN0aW9uczooKT0+eSxnZXREYXRlRm9ybWF0V2l0aFdlZWtkYXk6KCk9PmJ9KTt2YXIgbj1yKDc4MzI1NCksaT1yKDgyMjQzMSkscz1yKDg1NjMyNCk7Y29uc3QgYT17MTooKT0+bi50KG51bGwsdm9pZCAwLHIoNjU3Mzc0KSksMjooKT0+bi50KG51bGwsdm9pZCAwLHIoNjE3MzQxKSksMzooKT0+bi50KG51bGwsdm9pZCAwLHIoMTAzMzA1KSksNDooKT0+bi50KG51bGwsdm9pZCAwLHIoNTI2Nzg1KSksNTooKT0+bi50KG51bGwse2NvbnRleHQ6InNob3J0In0scig3MzQ3NTApKSw2OigpPT5uLnQobnVsbCx2b2lkIDAscig4Nzc0NSkpLDc6KCk9Pm4udChudWxsLHZvaWQgMCxyKDE4Mzk1OSkpLDg6KCk9Pm4udChudWxsLHZvaWQgMCxyKDkzNzYyKSksOTooKT0+bi50KG51bGwsdm9pZCAwLHIoMTc4NDY5KSksMTA6KCk9Pm4udChudWxsLHZvaWQgMCxyKDcyODMzNykpLDExOigpPT5uLnQobnVsbCx2b2lkIDAscig2NDY1NDUpKSwxMjooKT0+bi50KG51bGwsdm9pZCAwLHIoNzY5MDM2KSl9LG89ezE6KCk9Pm4udChudWxsLHZvaWQgMCxyKDg5NzY3KSksMjooKT0+bi50KG51bGwsdm9pZCAwLHIoOTQ4OTIzKSksMzooKT0+bi50KG51bGwsdm9pZCAwLHIoMzY3OTM1KSksNDooKT0+bi50KG51bGwsdm9pZCAwLHIoMTc1NTA3KSl9LGw9KGUsdCk9Pih0P2UuZ2V0TW9udGgoKTplLmdldFVUQ01vbnRoKCkpKzEsdT0oZSx0KT0+dD9lLmdldERhdGUoKTplLmdldFVUQ0RhdGUoKSxkPShlLHQpPT50P2UuZ2V0RnVsbFllYXIoKTplLmdldFVUQ0Z1bGxZZWFyKCksYz0oZSx0KT0+ZS50b0xvY2FsZURhdGVTdHJpbmcoKDAscy5nZXRMYW5ndWFnZSkoKT8oMCxzLm1hcExhbmd1YWdlQ29kZSkoKDAscy5nZXRMYW5ndWFnZSkoKSk6dm9pZCAwLHt3ZWVrZGF5OiJzaG9ydCIsdGltZVpvbmU6ImxvY2FsIj09PXQ/dm9pZCAwOnR9KSxoPShlLHQpPT5vWygoZSx0KT0+TWF0aC5mbG9vcigobChlLHQpLTEpLzMpKzEpKGUsdCldKCksZj0oZSx0KT0+KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykodShlLHQpLDIpLG09KGUsdCk9PmFbbChlLHQpXSgpLGc9KGUsdCk9PigwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGwoZSx0KSwyKSxfPShlLHQpPT4oMCxpLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShkKGUsdCklMTAwLDIpLHA9KGUsdCk9PigwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGQoZSx0KSw0KSx5PXsicXEgJ3l5IjooZSx0KT0+YCR7aChlLHQpfSAnJHtfKGUsdCl9YCwicXEgeXl5eSI6KGUsdCk9PmAke2goZSx0KX0gJHtwKGUsdCl9YCwKImRkIE1NTSAneXkiOihlLHQpPT5gJHtmKGUsdCl9ICR7bShlLHQpfSAnJHtfKGUsdCl9YCwiTU1NICd5eSI6KGUsdCk9PmAke20oZSx0KX0gJyR7XyhlLHQpfWAsIk1NTSBkZCwgeXl5eSI6KGUsdCk9PmAke20oZSx0KX0gJHtmKGUsdCl9LCAke3AoZSx0KX1gLCJNTU0gZCwgeXl5eSI6KGUsdCk9PmAke20oZSx0KX0gJHsoKGUsdCk9PigwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKHUoZSx0KSwwKSkoZSx0KX0sICR7cChlLHQpfWAsIk1NTSB5eXl5IjooZSx0KT0+YCR7bShlLHQpfSAke3AoZSx0KX1gLCJNTU0gZGQiOihlLHQpPT5gJHttKGUsdCl9ICR7ZihlLHQpfWAsImRkIE1NTSI6KGUsdCk9PmAke2YoZSx0KX0gJHttKGUsdCl9YCwieXl5eS1NTS1kZCI6KGUsdCk9PmAke3AoZSx0KX0tJHtnKGUsdCl9LSR7ZihlLHQpfWAsInl5LU1NLWRkIjooZSx0KT0+YCR7XyhlLHQpfS0ke2coZSx0KX0tJHtmKGUsdCl9YCwieXkvTU0vZGQiOihlLHQpPT5gJHtfKGUsdCl9LyR7ZyhlLHQpfS8ke2YoZSx0KX1gLCJ5eXl5L01NL2RkIjooZSx0KT0+YCR7cChlLHQpfS8ke2coZSx0KX0vJHtmKGUsdCl9YCwiZGQtTU0teXl5eSI6KGUsdCk9PmAke2YoZSx0KX0tJHtnKGUsdCl9LSR7cChlLHQpfWAsImRkLU1NLXl5IjooZSx0KT0+YCR7ZihlLHQpfS0ke2coZSx0KX0tJHtfKGUsdCl9YCwiZGQvTU0veXkiOihlLHQpPT5gJHtmKGUsdCl9LyR7ZyhlLHQpfS8ke18oZSx0KX1gLCJkZC9NTS95eXl5IjooZSx0KT0+YCR7ZihlLHQpfS8ke2coZSx0KX0vJHtwKGUsdCl9YCwiTU0vZGQveXkiOihlLHQpPT5gJHtnKGUsdCl9LyR7ZihlLHQpfS8ke18oZSx0KX1gLCJNTS9kZC95eXl5IjooZSx0KT0+YCR7ZyhlLHQpfS8ke2YoZSx0KX0vJHtwKGUsdCl9YH07ZnVuY3Rpb24gYihlLHQpe3JldHVybiJqYSI9PT0oMCxzLmdldExhbmd1YWdlKSgpPyhyLG4pPT5gJHt5W2VdKHIsbil9ICgke2Mocix0KX0pYDoocixuKT0+YCR7YyhyLHQpfSAke3lbZV0ocixuKX1gfU9iamVjdC5rZXlzKHkpfSw4NTYzMjQoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7Z2V0TGFuZ3VhZ2U6KCk9PnMsbWFwTGFuZ3VhZ2VDb2RlOigpPT5sLHJlZ2lzdGVyTGFuZ3VhZ2VDb2RlTWFwcGVyOigpPT5vLHJlZ2lzdGVyTGFuZ3VhZ2VHZXR0ZXI6KCk9Pml9KTtsZXQgbj1udWxsO2Z1bmN0aW9uIGkoZSl7bj1lfWZ1bmN0aW9uIHMoKXtpZighbil0aHJvdyBuZXcgRXJyb3IoIkxhbmd1YWdlIGdldHRlciBub3QgcmVnaXN0ZXJlZC4gQ2FsbCByZWdpc3Rlckxhbmd1YWdlR2V0dGVyKCkgZmlyc3QuIik7cmV0dXJuIG4oKX1sZXQgYT1lPT5lO2Z1bmN0aW9uIG8oZSl7YT1lfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIGEoZSl9fSw4NTI5ODAoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKGUsdCxyLG4saSl7Y29uc3R7cGF5QXR0ZW50aW9uVG9UaWNrZXJOb3RTeW1ib2w6cyx1c2VUaWNrZXJPblN5bWJvbEluZm9VcGRhdGU6YSxjaGFydGluZ0xpYnJhcnlTaW5nbGVTeW1ib2xSZXF1ZXN0Om8sdXBwZXJjYXNlSW5zdHJ1bWVudE5hbWVzOmx9PWU7bGV0IHU9dCYmKG4mJnQucHJvX25hbWV8fHQuZnVsbF9uYW1lfHx0Lm5hbWUpO3JldHVybiBvJiZyP3U9cjooYXx8IWkmJnMpJiZ0JiZ0LnRpY2tlciYmKHU9dC50aWNrZXIpLGwmJnUmJih1PXUudG9VcHBlckNhc2UoKSksdX1yLmQodCx7ZXh0cmFjdFN5bWJvbE5hbWVGcm9tU3ltYm9sSW5mbzooKT0+bn0pfSw4NTcxNTEoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7UGxvdExpc3Q6KCk9Pmh9KTt2YXIgbj1yKDEzODYzOCksaT1yKDIyMTA2MSkscz1yKDE5ODkwMSksYT1yKDgxNDU4OSksbz1yKDkzNjMyNik7Y29uc3QgbD0oMCxpLmdldExvZ2dlcikoIkNoYXJ0LlBsb3RMaXN0IiksdT0zMDtmdW5jdGlvbiBkKGUpe3JldHVybiBlLmluZGV4fWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUudmFsdWVbMF19Y2xhc3MgaHtjb25zdHJ1Y3RvcihlPW51bGwsdD1udWxsKXt0aGlzLl9pdGVtcz1bXSx0aGlzLl9zdGFydD0wLHRoaXMuX2VuZD0wLHRoaXMuX3NoYXJlUmVhZD0hMSx0aGlzLl9taW5NYXhDYWNoZT1uZXcgTWFwLHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlJbmRleD1uZXcgTWFwLHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlJbmRleFdpdGhvdXRFbXB0eVZhbHVlcz1uZXcgTWFwLHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlUaW1lPW5ldyBNYXAsdGhpcy5fcm93U2VhcmNoQ2FjaGVCeVRpbWVXaXRob3V0RW1wdHlWYWx1ZXM9bmV3IE1hcCx0aGlzLl9wbG90RnVuY3Rpb25zPWV8fG5ldyBNYXAsdGhpcy5fZW1wdHlWYWx1ZVByZWRpY2F0ZT10fWNsZWFyKCl7dGhpcy5faXRlbXM9W10sdGhpcy5fc3RhcnQ9MCx0aGlzLl9lbmQ9MCx0aGlzLl9zaGFyZVJlYWQ9ITEsdGhpcy5fbWluTWF4Q2FjaGUuY2xlYXIoKSx0aGlzLl9pbnZhbGlkYXRlU2VhcmNoQ2FjaGVzKCl9Zmlyc3QoKXtyZXR1cm4gdGhpcy5zaXplKCk+MD90aGlzLl9pdGVtc1t0aGlzLl9zdGFydF06bnVsbH1sYXN0KCl7cmV0dXJuIHRoaXMuc2l6ZSgpPjA/dGhpcy5faXRlbXNbdGhpcy5fZW5kLTFdOm51bGx9Zmlyc3RJbmRleCgpe3JldHVybiB0aGlzLnNpemUoKT4wP3RoaXMuX2luZGV4QXQodGhpcy5fc3RhcnQpOm51bGx9Zmlyc3RQbG90dGFibGVJbmRleCgpe2lmKHRoaXMuaXNFbXB0eSgpKXJldHVybiBudWxsO2ZvcihsZXQgZT10aGlzLl9zdGFydDtlPHRoaXMuX2VuZDsrK2Upe2NvbnN0IHQ9dGhpcy5faW5kZXhBdChlKTtpZih0PmEuVU5QTE9UVEFCTEVfVElNRV9QT0lOVF9JTkRFWClyZXR1cm4gdH1yZXR1cm4gbnVsbH1sYXN0SW5kZXgoKXtyZXR1cm4gdGhpcy5zaXplKCk+MD90aGlzLl9pbmRleEF0KHRoaXMuX2VuZC0xKTpudWxsfWNsb25lKCl7Y29uc3QgZT10aGlzLmZpcnN0SW5kZXgoKSx0PXRoaXMubGFzdEluZGV4KCk7cmV0dXJuIG51bGw9PT1lfHxudWxsPT09dD9uZXcgaDp0aGlzLnJhbmdlKGUsdCl9c2l6ZSgpe3JldHVybiB0aGlzLl9lbmQtdGhpcy5fc3RhcnR9aXNFbXB0eSgpe3JldHVybiAwPT09dGhpcy5zaXplKCl9Y29udGFpbnMoZSl7CnJldHVybiBudWxsIT09dGhpcy5zZWFyY2goZSxvLlBsb3RSb3dTZWFyY2hNb2RlLkV4YWN0KX12YWx1ZUF0KGUpe2NvbnN0IHQ9dGhpcy5zZWFyY2goZSk7cmV0dXJuIG51bGwhPT10P3QudmFsdWU6bnVsbH1hZGQoZSx0KXtpZih0aGlzLl9zaGFyZVJlYWQpcmV0dXJuIGwubG9nRGVidWcoImFkZDogcmVhZG9ubHkgY29sbGVjdGlvbiBtb2RpZmljYXRpb24gYXR0ZW1wdCIpLCExO2NvbnN0IHI9e2luZGV4OmUsdmFsdWU6dH0sbj10aGlzLl9ub25DYWNoZWRTZWFyY2goZSxvLlBsb3RSb3dTZWFyY2hNb2RlLkV4YWN0LGQpO3JldHVybiB0aGlzLl9pbnZhbGlkYXRlU2VhcmNoQ2FjaGVzKCksbnVsbD09PW4/KHRoaXMuX2l0ZW1zLnNwbGljZSh0aGlzLl9sb3dlcmJvdW5kKGUsZCksMCxyKSx0aGlzLl9zdGFydD0wLHRoaXMuX2VuZD10aGlzLl9pdGVtcy5sZW5ndGgsITApOih0aGlzLl9pdGVtc1tuXT1yLCExKX1zZWFyY2goZSx0PW8uUGxvdFJvd1NlYXJjaE1vZGUuRXhhY3Qscil7cmV0dXJuIHRoaXMuX3NlYXJjaEltcGwoZSx0LHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlJbmRleCx0aGlzLl9yb3dTZWFyY2hDYWNoZUJ5SW5kZXhXaXRob3V0RW1wdHlWYWx1ZXMsZCxyKX1zZWFyY2hCeVRpbWUoZSx0PW8uUGxvdFJvd1NlYXJjaE1vZGUuRXhhY3Qscil7cmV0dXJuIHRoaXMuX3NlYXJjaEltcGwoZSx0LHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlUaW1lLHRoaXMuX3Jvd1NlYXJjaENhY2hlQnlUaW1lV2l0aG91dEVtcHR5VmFsdWVzLGMscil9Zm9sZChlLHQpe2xldCByPXQ7Zm9yKGxldCB0PXRoaXMuX3N0YXJ0O3Q8dGhpcy5fZW5kOysrdCl7cj1lKHRoaXMuX2luZGV4QXQodCksdGhpcy5fdmFsdWVBdCh0KSxyKX1yZXR1cm4gcn1maW5kRmlyc3QoZSx0KXtjb25zdCByPXZvaWQgMCE9PXQmJk1hdGgubWluKHRoaXMuX3N0YXJ0K3QsdGhpcy5fZW5kKXx8dGhpcy5fZW5kO2ZvcihsZXQgdD10aGlzLl9zdGFydDt0PHI7Kyt0KXtjb25zdCByPXRoaXMuX2luZGV4QXQodCksbj10aGlzLl92YWx1ZUF0KHQpO2lmKGUocixuKSlyZXR1cm57aW5kZXg6cix2YWx1ZTpufX1yZXR1cm4gbnVsbH1maW5kTGFzdChlLHQpe2NvbnN0IHI9dm9pZCAwIT09dCYmTWF0aC5tYXgodGhpcy5fZW5kLXQsdGhpcy5fc3RhcnQpfHx0aGlzLl9zdGFydDtmb3IobGV0IHQ9dGhpcy5fZW5kLTE7dD49cjstLXQpe2NvbnN0IHI9dGhpcy5faW5kZXhBdCh0KSxuPXRoaXMuX3ZhbHVlQXQodCk7aWYoZShyLG4pKXJldHVybntpbmRleDpyLHZhbHVlOm59fXJldHVybiBudWxsfWVhY2goZSl7Zm9yKGxldCB0PXRoaXMuX3N0YXJ0O3Q8dGhpcy5fZW5kOysrdCl7aWYoZSh0aGlzLl9pbmRleEF0KHQpLHRoaXMuX3ZhbHVlQXQodCkpKWJyZWFrfX1yZWR1Y2UoZSx0KXtsZXQgcj10O2ZvcihsZXQgdD10aGlzLl9zdGFydDt0PHRoaXMuX2VuZDsrK3Qpe3I9ZShyLHRoaXMuX2luZGV4QXQodCksdGhpcy5fdmFsdWVBdCh0KSl9cmV0dXJuIHJ9cmFuZ2UoZSx0KXtjb25zdCByPW5ldyBoKHRoaXMuX3Bsb3RGdW5jdGlvbnMsdGhpcy5fZW1wdHlWYWx1ZVByZWRpY2F0ZSk7cmV0dXJuIHIuX2l0ZW1zPXRoaXMuX2l0ZW1zLHIuX3N0YXJ0PXRoaXMuX2xvd2VyYm91bmQoZSxkKSxyLl9lbmQ9dGhpcy5fdXBwZXJib3VuZCh0KSxyLl9zaGFyZVJlYWQ9ITAscn1wbG90dGFibGVSYW5nZShlKXtjb25zdCB0PW5ldyBoKHRoaXMuX3Bsb3RGdW5jdGlvbnMsdGhpcy5fZW1wdHlWYWx1ZVByZWRpY2F0ZSk7cmV0dXJuIHQuX2l0ZW1zPXRoaXMuX2l0ZW1zLHQuX3N0YXJ0PXRoaXMuX3VwcGVyYm91bmQoYS5VTlBMT1RUQUJMRV9USU1FX1BPSU5UX0lOREVYKSx0Ll9lbmQ9dGhpcy5fZW5kLHQuX3NoYXJlUmVhZD0hMCwhMD09PWUmJnQuX3N0YXJ0PnRoaXMuX3N0YXJ0JiYodC5fc3RhcnQtPTEpLHR9cmFuZ2VDb3VudGJhY2soZSx0KXtpZihudWxsPT09dGhpcy5maXJzdEluZGV4KCkpcmV0dXJuIG5ldyBoO2NvbnN0IHI9bmV3IGgodGhpcy5fcGxvdEZ1bmN0aW9ucyx0aGlzLl9lbXB0eVZhbHVlUHJlZGljYXRlKTtyZXR1cm4gci5faXRlbXM9dGhpcy5faXRlbXMsci5fZW5kPXRoaXMuX3VwcGVyYm91bmQoZSksci5fc3RhcnQ9TWF0aC5tYXgodGhpcy5fc3RhcnQsci5fZW5kLXQpLHIuX3NoYXJlUmVhZD0hMCxyfXJhbmdlSXRlcmF0b3IoZSx0KXtjb25zdCByPXRoaXMuX2xvd2VyYm91bmQoZSxkKSxuPXRoaXMuX3VwcGVyYm91bmQodCk7cmV0dXJuIHRoaXMuX3JhbmdlSXRlcmF0b3JJbXBsKHIsbil9ZnVsbFJhbmdlSXRlcmF0b3IoKXtyZXR1cm4gdGhpcy5fcmFuZ2VJdGVyYXRvckltcGwodGhpcy5fc3RhcnQsdGhpcy5fZW5kKX1taW5NYXhPblJhbmdlQ2FjaGVkKGUsdCxyKXtpZih0aGlzLmlzRW1wdHkoKSlyZXR1cm4gbnVsbDtsZXQgbj1udWxsO2Zvcihjb25zdCBpIG9mIHIpe249ZihuLHRoaXMuX21pbk1heE9uUmFuZ2VDYWNoZWRJbXBsKGUtaS5vZmZzZXQsdC1pLm9mZnNldCxpLm5hbWUpKX1yZXR1cm4gbn1taW5NYXhPblJhbmdlKGUsdCxyKXtpZih0aGlzLmlzRW1wdHkoKSlyZXR1cm4gbnVsbDtsZXQgbj1udWxsO2Zvcihjb25zdCBpIG9mIHIpe249ZihuLHRoaXMuX21pbk1heE9uUmFuZ2UoZS1pLm9mZnNldCx0LWkub2Zmc2V0LGkubmFtZSkpfXJldHVybiBufW1lcmdlKGUpe3JldHVybiB0aGlzLl9zaGFyZVJlYWQ/KGwubG9nRGVidWcoIm1lcmdlOiByZWFkb25seSBjb2xsZWN0aW9uIG1vZGlmaWNhdGlvbiBhdHRlbXB0IiksbnVsbCk6MD09PWUubGVuZ3RoP251bGw6dGhpcy5pc0VtcHR5KCl8fGVbZS5sZW5ndGgtMV0uaW5kZXg8dGhpcy5faXRlbXNbMF0uaW5kZXg/dGhpcy5fcHJlcGVuZChlKTplWzBdLmluZGV4PnRoaXMuX2l0ZW1zW3RoaXMuX2l0ZW1zLmxlbmd0aC0xXS5pbmRleD90aGlzLl9hcHBlbmQoZSk6MT09PWUubGVuZ3RoJiZlWzBdLmluZGV4PT09dGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoLTFdLmluZGV4Pyh0aGlzLl91cGRhdGVMYXN0KGVbMF0pLGVbMF0pOnRoaXMuX21lcmdlKGUpfWFkZFRhaWwoZSx0PSExKXtpZigwPT09ZS5sZW5ndGgpcmV0dXJuO2xldCByPTA7dCYmdGhpcy5fZW5kLXRoaXMuX3N0YXJ0PjAmJihyPTEsCnRoaXMuX2l0ZW1zW3RoaXMuX2VuZC10aGlzLl9zdGFydC0xXS52YWx1ZT1lWzBdLnZhbHVlKTtmb3IobGV0IHQ9cjt0PGUubGVuZ3RoOysrdCl7Y29uc3Qgcj1lW3RdLG49dGhpcy5sYXN0SW5kZXgoKTtpZihudWxsPT09bil7bC5sb2dFcnJvcigiQ2FuJ3QgYWRkIHRhaWwgdG8gdGhlIGVtcHR5IHBsb3RsaXN0Iik7YnJlYWt9dGhpcy5hZGQobisxLHIudmFsdWUpfXRoaXMuX2ludmFsaWRhdGVTZWFyY2hDYWNoZXMoKX1tb3ZlKGUpe2lmKHRoaXMuX3NoYXJlUmVhZClyZXR1cm4gdm9pZCBsLmxvZ0RlYnVnKCJtb3ZlOiByZWFkb25seSBjb2xsZWN0aW9uIG1vZGlmaWNhdGlvbiBhdHRlbXB0Iik7aWYoMD09PWUubGVuZ3RoKXJldHVybjtjb25zdCB0PXRoaXMuX2l0ZW1zLnNsaWNlKCk7Zm9yKGNvbnN0IHIgb2YgZSl7Y29uc3QgZT10aGlzLl9ic2VhcmNoKHIub2xkLGQpO2lmKG51bGwhPT1lJiZ2b2lkIDAhPT10W2VdKWlmKHIubmV3PT09YS5JTlZBTElEX1RJTUVfUE9JTlRfSU5ERVgpdFtlXT12b2lkIDA7ZWxzZXt0W2VdPXtpbmRleDpyLm5ldyx2YWx1ZTp0W2VdLnZhbHVlfTtjb25zdCBuPXRoaXMuX2JzZWFyY2goci5uZXcsZCk7aWYobnVsbCE9PW4pe2NvbnN0IGU9dFtuXTt2b2lkIDAhPT1lJiZlLmluZGV4PT09ci5uZXcmJih0W25dPXZvaWQgMCl9fX10aGlzLl9pdGVtcz10LmZpbHRlcigoZT0+dm9pZCAwIT09ZSkpLnNvcnQoKChlLHQpPT5lLmluZGV4LXQuaW5kZXgpKSx0aGlzLl9pbnZhbGlkYXRlU2VhcmNoQ2FjaGVzKCksdGhpcy5fbWluTWF4Q2FjaGUuY2xlYXIoKSx0aGlzLl9zdGFydD0wLHRoaXMuX2VuZD10aGlzLl9pdGVtcy5sZW5ndGh9cmVtb3ZlKGUpe2lmKHRoaXMuX3NoYXJlUmVhZClyZXR1cm4gbC5sb2dEZWJ1ZygicmVtb3ZlOiByZWFkb25seSBjb2xsZWN0aW9uIG1vZGlmaWNhdGlvbiBhdHRlbXB0IiksbnVsbDtjb25zdCB0PXRoaXMuX25vbkNhY2hlZFNlYXJjaChlLG8uUGxvdFJvd1NlYXJjaE1vZGUuTmVhcmVzdFJpZ2h0LGQpO2lmKG51bGw9PT10KXJldHVybiBudWxsO2NvbnN0IHI9dGhpcy5faXRlbXMuc3BsaWNlKHQpO3JldHVybiB0aGlzLl9lbmQ9dGhpcy5faXRlbXMubGVuZ3RoLHRoaXMuX21pbk1heENhY2hlLmNsZWFyKCksdGhpcy5faW52YWxpZGF0ZVNlYXJjaENhY2hlcygpLHIubGVuZ3RoPjA/clswXTpudWxsfXN0YXRlKCl7Y29uc3QgZT10aGlzLl9pdGVtcy5zbGljZSh0aGlzLl9zdGFydCx0aGlzLl9lbmQpO3JldHVybntzdGFydDowLGVuZDplLmxlbmd0aCxkYXRhOmV9fXJlc3RvcmVTdGF0ZShlKXtlPyh0aGlzLl9zdGFydD1lLnN0YXJ0LHRoaXMuX2VuZD1lLmVuZCx0aGlzLl9zaGFyZVJlYWQ9ITEsdGhpcy5faXRlbXM9ZS5kYXRhLHRoaXMuX21pbk1heENhY2hlLmNsZWFyKCksdGhpcy5faW52YWxpZGF0ZVNlYXJjaENhY2hlcygpKTp0aGlzLmNsZWFyKCl9X2luZGV4QXQoZSl7cmV0dXJuIHRoaXMuX2l0ZW1zW2VdLmluZGV4fV92YWx1ZUF0KGUpe3JldHVybiB0aGlzLl9pdGVtc1tlXS52YWx1ZX1fbGVuZ3RoKCl7cmV0dXJuIHRoaXMuX2l0ZW1zLmxlbmd0aH1fc2VhcmNoSW1wbChlLHQscixuLGkscyl7Y29uc3QgYT12b2lkIDAhPT1zP3I6bixvPXZvaWQgMCE9PXM/MWU0Kih0KzEpK3M6dDtsZXQgbD1hLmdldChlKTtpZih2b2lkIDAhPT1sKXtjb25zdCBlPWwuZ2V0KG8pO2lmKHZvaWQgMCE9PWUpcmV0dXJuIGV9Y29uc3QgdT10aGlzLl9ub25DYWNoZWRTZWFyY2goZSx0LGkscyk7aWYobnVsbD09PXUpcmV0dXJuIG51bGw7Y29uc3QgZD17aW5kZXg6dGhpcy5faW5kZXhBdCh1KSx2YWx1ZTp0aGlzLl92YWx1ZUF0KHUpfTtyZXR1cm4gdm9pZCAwPT09bCYmKGw9bmV3IE1hcCxhLnNldChlLGwpKSxsLnNldChvLGQpLGR9X25vbkNhY2hlZFNlYXJjaChlLHQscixuKXtjb25zdCBpPXRoaXMuX2xvd2VyYm91bmQoZSxyKSxzPWk9PT10aGlzLl9lbmR8fGUhPT1yKHRoaXMuX2l0ZW1zW2ldKTtpZihzJiZ0IT09by5QbG90Um93U2VhcmNoTW9kZS5FeGFjdClzd2l0Y2godCl7Y2FzZSBvLlBsb3RSb3dTZWFyY2hNb2RlLk5lYXJlc3RMZWZ0OnJldHVybiB0aGlzLl9zZWFyY2hOZWFyZXN0TGVmdChpLG4pO2Nhc2Ugby5QbG90Um93U2VhcmNoTW9kZS5OZWFyZXN0UmlnaHQ6cmV0dXJuIHRoaXMuX3NlYXJjaE5lYXJlc3RSaWdodChpLG4pO2RlZmF1bHQ6dGhyb3cgbmV3IFR5cGVFcnJvcigiVW5rbm93biBzZWFyY2ggbW9kZSIpfWlmKHZvaWQgMD09PW58fHN8fHQ9PT1vLlBsb3RSb3dTZWFyY2hNb2RlLkV4YWN0KXJldHVybiBzP251bGw6aTtzd2l0Y2godCl7Y2FzZSBvLlBsb3RSb3dTZWFyY2hNb2RlLk5lYXJlc3RMZWZ0OnJldHVybiB0aGlzLl9ub25FbXB0eU5lYXJlc3RMZWZ0KGksbik7Y2FzZSBvLlBsb3RSb3dTZWFyY2hNb2RlLk5lYXJlc3RSaWdodDpyZXR1cm4gdGhpcy5fbm9uRW1wdHlOZWFyZXN0UmlnaHQoaSxuKTtkZWZhdWx0OnRocm93IG5ldyBUeXBlRXJyb3IoIlVua25vd24gc2VhcmNoIG1vZGUiKX19X25vbkVtcHR5TmVhcmVzdFJpZ2h0KGUsdCl7Y29uc3Qgcj0oMCxuLmVuc3VyZSkodGhpcy5fZW1wdHlWYWx1ZVByZWRpY2F0ZSksaT0oMCxuLmVuc3VyZSkodCk7Zm9yKDtlPHRoaXMuX2VuZCYmcih0aGlzLl92YWx1ZUF0KGUpLGkpOyllKz0xO3JldHVybiBlPT09dGhpcy5fZW5kP251bGw6ZX1fbm9uRW1wdHlOZWFyZXN0TGVmdChlLHQpe2NvbnN0IHI9KDAsbi5lbnN1cmVOb3ROdWxsKSh0aGlzLl9lbXB0eVZhbHVlUHJlZGljYXRlKSxpPSgwLG4uZW5zdXJlKSh0KTtmb3IoO2U+PXRoaXMuX3N0YXJ0JiZyKHRoaXMuX3ZhbHVlQXQoZSksaSk7KWUtPTE7cmV0dXJuIGU8dGhpcy5fc3RhcnQ/bnVsbDplfV9zZWFyY2hOZWFyZXN0TGVmdChlLHQpe2lmKGU9PT10aGlzLl9zdGFydClyZXR1cm4gbnVsbDtjb25zdCByPWUtMSxuPXIhPT10aGlzLl9lbmQ/cjpudWxsO3JldHVybiB2b2lkIDAhPT10JiZudWxsIT09bj90aGlzLl9ub25FbXB0eU5lYXJlc3RMZWZ0KG4sdCk6bn1fc2VhcmNoTmVhcmVzdFJpZ2h0KGUsdCl7Y29uc3Qgcj1lLG49ciE9PXRoaXMuX2VuZD9yOm51bGwKO3JldHVybiB2b2lkIDAhPT10JiZudWxsIT09bj90aGlzLl9ub25FbXB0eU5lYXJlc3RSaWdodChuLHQpOm59X2JzZWFyY2goZSx0KXtjb25zdCByPXRoaXMuX2xvd2VyYm91bmQoZSx0KTtyZXR1cm4gciE9PXRoaXMuX2VuZCYmZT09PXQodGhpcy5faXRlbXNbcl0pP3I6bnVsbH1fbG93ZXJib3VuZChlLHQpe3JldHVybigwLHMubG93ZXJib3VuZCkodGhpcy5faXRlbXMsZSwoKGUscik9PnQoZSk8ciksdGhpcy5fc3RhcnQsdGhpcy5fZW5kKX1fdXBwZXJib3VuZChlKXtyZXR1cm4oMCxzLnVwcGVyYm91bmQpKHRoaXMuX2l0ZW1zLGUsKChlLHQpPT50LmluZGV4PmUpLHRoaXMuX3N0YXJ0LHRoaXMuX2VuZCl9X3Bsb3RNaW5NYXgoZSx0LHIpe2xldCBuPW51bGw7Y29uc3QgaT10aGlzLl9wbG90RnVuY3Rpb25zLmdldChyKTtpZih2b2lkIDA9PT1pKXRocm93IG5ldyBFcnJvcihgUGxvdCAiJHtyfSIgaXMgbm90IHJlZ2lzdGVyZWRgKTtmb3IobGV0IHI9ZTtyPHQ7cisrKXtjb25zdCBlPWkodGhpcy5faXRlbXNbcl0udmFsdWUpO251bGw9PWV8fE51bWJlci5pc05hTihlKXx8KG51bGw9PT1uP249e21pbjplLG1heDplfTooZTxuLm1pbiYmKG4ubWluPWUpLGU+bi5tYXgmJihuLm1heD1lKSkpfXJldHVybiBufV9pbnZhbGlkYXRlQ2FjaGVGb3JSb3coZSl7Y29uc3QgdD1NYXRoLmZsb29yKGUuaW5kZXgvdSk7dGhpcy5fbWluTWF4Q2FjaGUuZm9yRWFjaCgoZT0+ZS5kZWxldGUodCkpKX1fcHJlcGVuZChlKXtyZXR1cm4oMCxuLmFzc2VydCkoIXRoaXMuX3NoYXJlUmVhZCwiY29sbGVjdGlvbiBzaG91bGQgbm90IGJlIHJlYWRvbmx5IiksKDAsbi5hc3NlcnQpKDAhPT1lLmxlbmd0aCwicGxvdFJvd3Mgc2hvdWxkIG5vdCBiZSBlbXB0eSIpLHRoaXMuX2ludmFsaWRhdGVTZWFyY2hDYWNoZXMoKSx0aGlzLl9taW5NYXhDYWNoZS5jbGVhcigpLHRoaXMuX2l0ZW1zPWUuY29uY2F0KHRoaXMuX2l0ZW1zKSx0aGlzLl9zdGFydD0wLHRoaXMuX2VuZD10aGlzLl9pdGVtcy5sZW5ndGgsZVswXX1fYXBwZW5kKGUpe3JldHVybigwLG4uYXNzZXJ0KSghdGhpcy5fc2hhcmVSZWFkLCJjb2xsZWN0aW9uIHNob3VsZCBub3QgYmUgcmVhZG9ubHkiKSwoMCxuLmFzc2VydCkoMCE9PWUubGVuZ3RoLCJwbG90Um93cyBzaG91bGQgbm90IGJlIGVtcHR5IiksdGhpcy5faW52YWxpZGF0ZVNlYXJjaENhY2hlcygpLHRoaXMuX21pbk1heENhY2hlLmNsZWFyKCksdGhpcy5faXRlbXM9dGhpcy5faXRlbXMuY29uY2F0KGUpLHRoaXMuX3N0YXJ0PTAsdGhpcy5fZW5kPXRoaXMuX2l0ZW1zLmxlbmd0aCxlWzBdfV91cGRhdGVMYXN0KGUpeygwLG4uYXNzZXJ0KSghdGhpcy5pc0VtcHR5KCksInBsb3QgbGlzdCBzaG91bGQgbm90IGJlIGVtcHR5Iik7Y29uc3QgdD10aGlzLl9pdGVtc1t0aGlzLl9lbmQtMV07KDAsbi5hc3NlcnQpKHQuaW5kZXg9PT1lLmluZGV4LCJsYXN0IHJvdyBpbmRleCBzaG91bGQgbWF0Y2ggbmV3IHJvdyBpbmRleCIpLHRoaXMuX2ludmFsaWRhdGVDYWNoZUZvclJvdyhlKSx0aGlzLl9pbnZhbGlkYXRlU2VhcmNoQ2FjaGVzKCksdGhpcy5faXRlbXNbdGhpcy5fZW5kLTFdPWV9X21lcmdlKGUpe3JldHVybigwLG4uYXNzZXJ0KSgwIT09ZS5sZW5ndGgsInBsb3Qgcm93cyBzaG91bGQgbm90IGJlIGVtcHR5IiksdGhpcy5faW52YWxpZGF0ZVNlYXJjaENhY2hlcygpLHRoaXMuX21pbk1heENhY2hlLmNsZWFyKCksdGhpcy5faXRlbXM9ZnVuY3Rpb24oZSx0KXtjb25zdCByPWZ1bmN0aW9uKGUsdCl7Y29uc3Qgcj1lLmxlbmd0aCxuPXQubGVuZ3RoO2xldCBpPXIrbixzPTAsYT0wO2Zvcig7czxyJiZhPG47KWVbc10uaW5kZXg8dFthXS5pbmRleD9zKys6ZVtzXS5pbmRleD50W2FdLmluZGV4P2ErKzoocysrLGErKyxpLS0pO3JldHVybiBpfShlLHQpLG49bmV3IEFycmF5KHIpO2xldCBpPTAscz0wO2NvbnN0IGE9ZS5sZW5ndGgsbz10Lmxlbmd0aDtsZXQgbD0wO2Zvcig7aTxhJiZzPG87KWVbaV0uaW5kZXg8dFtzXS5pbmRleD8obltsXT1lW2ldLGkrKyk6ZVtpXS5pbmRleD50W3NdLmluZGV4PyhuW2xdPXRbc10scysrKToobltsXT10W3NdLGkrKyxzKyspLGwrKztmb3IoO2k8YTspbltsXT1lW2ldLGkrKyxsKys7Zm9yKDtzPG87KW5bbF09dFtzXSxzKyssbCsrO3JldHVybiBufSh0aGlzLl9pdGVtcyxlKSx0aGlzLl9zdGFydD0wLHRoaXMuX2VuZD10aGlzLl9pdGVtcy5sZW5ndGgsZVswXX1fbWluTWF4T25SYW5nZUNhY2hlZEltcGwoZSx0LHIpe2lmKHRoaXMuaXNFbXB0eSgpKXJldHVybiBudWxsO2xldCBpPW51bGw7Y29uc3Qgcz0oMCxuLmVuc3VyZU5vdE51bGwpKHRoaXMuZmlyc3RJbmRleCgpKSxhPSgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5sYXN0SW5kZXgoKSksbz1NYXRoLm1heChlLHMpLGw9TWF0aC5taW4odCxhKSxkPU1hdGguY2VpbChvL3UpKnUsYz1NYXRoLm1heChkLE1hdGguZmxvb3IobC91KSp1KTtpPWYoaSx0aGlzLl9taW5NYXhPblJhbmdlKG8sTWF0aC5taW4oZCx0LGwpLHIpKTtsZXQgaD10aGlzLl9taW5NYXhDYWNoZS5nZXQocik7dm9pZCAwPT09aCYmKGg9bmV3IE1hcCx0aGlzLl9taW5NYXhDYWNoZS5zZXQocixoKSk7Zm9yKGxldCBlPU1hdGgubWF4KGQrMSxvKTtlPGM7ZSs9dSl7Y29uc3QgdD1NYXRoLmZsb29yKGUvdSk7bGV0IG49aC5nZXQodCk7aWYodm9pZCAwPT09bil7Y29uc3QgZT10KnUsaT0odCsxKSp1LTE7bj10aGlzLl9taW5NYXhPblJhbmdlKGUsaSxyKSxoLnNldCh0LG4pfWk9ZihpLG4pfWk9ZihpLHRoaXMuX21pbk1heE9uUmFuZ2UoYyxsLHIpKTtyZXR1cm4gaX1fbWluTWF4T25SYW5nZShlLHQscil7cmV0dXJuIHRoaXMuX3Bsb3RNaW5NYXgodGhpcy5fbG93ZXJib3VuZChlLGQpLHRoaXMuX3VwcGVyYm91bmQodCkscil9X3JhbmdlSXRlcmF0b3JJbXBsKGUsdCl7bGV0IHI9ZS0xO3JldHVybntbU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiB0aGlzfSxuZXh0OigpPT4ocis9MSxyPj10P3tkb25lOiEwLHZhbHVlOnZvaWQgMH06e2RvbmU6ITEsdmFsdWU6dGhpcy5faXRlbXNbcl19KX19X2ludmFsaWRhdGVTZWFyY2hDYWNoZXMoKXsKdGhpcy5fcm93U2VhcmNoQ2FjaGVCeUluZGV4LmNsZWFyKCksdGhpcy5fcm93U2VhcmNoQ2FjaGVCeUluZGV4V2l0aG91dEVtcHR5VmFsdWVzLmNsZWFyKCksdGhpcy5fcm93U2VhcmNoQ2FjaGVCeVRpbWUuY2xlYXIoKSx0aGlzLl9yb3dTZWFyY2hDYWNoZUJ5VGltZVdpdGhvdXRFbXB0eVZhbHVlcy5jbGVhcigpfX1mdW5jdGlvbiBmKGUsdCl7aWYobnVsbD09PWUpcmV0dXJuIHQ7aWYobnVsbD09PXQpcmV0dXJuIGU7cmV0dXJue21pbjpNYXRoLm1pbihlLm1pbix0Lm1pbiksbWF4Ok1hdGgubWF4KGUubWF4LHQubWF4KX19fSw2MTkxNjUoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7U2VyaWVzRGF0YTooKT0+Zn0pO3ZhciBuLGkscz1yKDEzODYzOCksYT1yKDg1NzE1MSksbz1yKDQ3NTQ3OCk7IWZ1bmN0aW9uKGUpe2VbZS5Gcm9tTGVmdD0tMV09IkZyb21MZWZ0IixlW2UuRnJvbVJpZ2h0PTFdPSJGcm9tUmlnaHQifShufHwobj17fSkpLGZ1bmN0aW9uKGUpe2VbZS5UaW1lPTBdPSJUaW1lIixlW2UuT3Blbj0xXT0iT3BlbiIsZVtlLkhpZ2g9Ml09IkhpZ2giLGVbZS5Mb3c9M109IkxvdyIsZVtlLkNsb3NlPTRdPSJDbG9zZSIsZVtlLlZvbHVtZT01XT0iVm9sdW1lIixlW2UuQWR0PTZdPSJBZHQifShpfHwoaT17fSkpO2NvbnN0IGw9WyJvcGVuIiwiaGlnaCIsImxvdyIsImNsb3NlIiwiaGwyIiwiaGxjMyIsIm9obGM0Il07dmFyIHU7IWZ1bmN0aW9uKGUpe2VbZS5GaXJzdFByaWNlPTBdPSJGaXJzdFByaWNlIixlW2UuTGFzdFByaWNlPTFdPSJMYXN0UHJpY2UiLGVbZS5MYXN0VmFsdWVQcmljZT0yXT0iTGFzdFZhbHVlUHJpY2UifSh1fHwodT17fSkpO2NvbnN0IGQ9e29wZW46ZT0+ZVsxXSxoaWdoOmU9PmVbMl0sbG93OmU9PmVbM10sY2xvc2U6ZT0+ZVs0XSxobDI6ZT0+KGVbMl0rZVszXSkvMixobGMzOmU9PihlWzJdK2VbM10rZVs0XSkvMyxvaGxjNDplPT4oZVsxXStlWzJdK2VbM10rZVs0XSkvNH07ZnVuY3Rpb24gYygpe2NvbnN0IGU9bmV3IE1hcDtyZXR1cm4gbC5mb3JFYWNoKCgodCxyKT0+e2Uuc2V0KHQsZnVuY3Rpb24oZSx0LHIpe2NvbnN0IG49ZFt0Pz9lXSxpPWRbZV0scz1kW3I/P2VdO3JldHVybihlLHQpPT57c3dpdGNoKHQpe2Nhc2UgMDpyZXR1cm4gbihlKTtjYXNlIDI6cmV0dXJuIHMoZSk7ZGVmYXVsdDpyZXR1cm4gaShlKX19fSh0KSl9KSksZX1mdW5jdGlvbiBoKGUsdCl7cmV0dXJuIG51bGw9PWVbdF19Y2xhc3MgZntjb25zdHJ1Y3Rvcigpe3RoaXMubV9iYXJzPW5ldyBhLlBsb3RMaXN0KGMoKSxoKSx0aGlzLm1fbnNCYXJzPW5ldyBhLlBsb3RMaXN0KGMoKSxoKSx0aGlzLl9jb25mbGF0ZWRDaHVua3NCdWlsZGVyPW5ldyBvLkNvbmZsYXRlZENodW5rc0J1aWxkZXIodGhpcy5tX2JhcnMsKGU9PmRbZV0pKX1iYXJzKCl7cmV0dXJuIHRoaXMubV9iYXJzfW5zQmFycygpe3JldHVybiB0aGlzLm1fbnNCYXJzfWNvbmZsYXRlZENodW5rcyhlLHQpe3JldHVybiB0aGlzLl9jb25mbGF0ZWRDaHVua3NCdWlsZGVyLmNvbmZsYXRlZENodW5rcyhlLHQpfW1lcmdlUmVndWxhckJhcnMoZSl7cmV0dXJuIHRoaXMuX2NvbmZsYXRlZENodW5rc0J1aWxkZXIubWVyZ2VEYXRhKGUpfXNpemUoKXtyZXR1cm4gdGhpcy5tX2JhcnMuc2l6ZSgpK3RoaXMubV9uc0JhcnMuc2l6ZSgpfWVhY2goZSl7dGhpcy5tX2JhcnMuZWFjaChlKSx0aGlzLm1fbnNCYXJzLmVhY2goZSl9Y2xlYXIoKXt0aGlzLm1fbnNCYXJzLmNsZWFyKCksdGhpcy5sYXN0UHJvamVjdGlvblByaWNlPXZvaWQgMCx0aGlzLl9jb25mbGF0ZWRDaHVua3NCdWlsZGVyLmNsZWFyRGF0YSgpfWNsb25lKCl7Y29uc3QgZT1uZXcgZjtyZXR1cm4gZS5sYXN0UHJvamVjdGlvblByaWNlPXRoaXMubGFzdFByb2plY3Rpb25QcmljZSxlLmJveFNpemU9dGhpcy5ib3hTaXplLGUucmV2ZXJzYWxBbW91bnQ9dGhpcy5yZXZlcnNhbEFtb3VudCxlLm1fYmFycz10aGlzLm1fYmFycy5jbG9uZSgpLGUubV9uc0JhcnM9dGhpcy5tX2JhcnMuY2xvbmUoKSxlfWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5tX2JhcnMuaXNFbXB0eSgpJiZ0aGlzLm1fbnNCYXJzLmlzRW1wdHkoKX1maXJzdCgpe3JldHVybiB0aGlzLm1fYmFycy5pc0VtcHR5KCk/dGhpcy5tX25zQmFycy5maXJzdCgpOnRoaXMubV9iYXJzLmZpcnN0KCl9bGFzdCgpe3JldHVybiB0aGlzLm1fbnNCYXJzLmlzRW1wdHkoKT90aGlzLm1fYmFycy5sYXN0KCk6dGhpcy5tX25zQmFycy5sYXN0KCl9c2VhcmNoKGUsdCxyKXtyZXR1cm4gdGhpcy5uc0JhcnMoKS5pc0VtcHR5KCk/dGhpcy5iYXJzKCkuc2VhcmNoKGUsdCxyKTp0aGlzLmJhcnMoKS5pc0VtcHR5KCl8fCgwLHMuZW5zdXJlTm90TnVsbCkodGhpcy5uc0JhcnMoKS5maXJzdEluZGV4KCkpPD1lP3RoaXMubnNCYXJzKCkuc2VhcmNoKGUsdCxyKTp0aGlzLmJhcnMoKS5zZWFyY2goZSx0LHIpfXZhbHVlQXQoZSl7Y29uc3QgdD10aGlzLnNlYXJjaChlKTtyZXR1cm4gbnVsbCE9PXQ/dC52YWx1ZTpudWxsfXBsb3RWYWx1ZVRvVGltZVBvaW50SW5kZXgoZSx0LHIpe2lmKHI9PT1uLkZyb21SaWdodCl7Y29uc3Qgcj0ocixuKT0+e2NvbnN0IGk9blt0XTtyZXR1cm4gbnVsbCE9aSYmZT49aX0sbj10aGlzLm1fYmFycy5maW5kTGFzdChyKTtpZihudWxsIT09bilyZXR1cm4gbi5pbmRleDtjb25zdCBpPXRoaXMubV9uc0JhcnMuZmluZExhc3Qocik7cmV0dXJuIG51bGwhPT1pP2kuaW5kZXg6dGhpcy5tX2JhcnMuZmlyc3RJbmRleCgpfWlmKHI9PT1uLkZyb21MZWZ0KXtjb25zdCByPShyLG4pPT57Y29uc3QgaT1uW3RdO3JldHVybiBudWxsIT1pJiZlPD1pfSxuPXRoaXMubV9iYXJzLmZpbmRGaXJzdChyKTtpZihudWxsIT09bilyZXR1cm4gbi5pbmRleDtjb25zdCBpPXRoaXMubV9uc0JhcnMuZmluZEZpcnN0KHIpO3JldHVybiBudWxsIT09aT9pLmluZGV4OnRoaXMubV9iYXJzLmxhc3RJbmRleCgpfXRocm93IG5ldyBFcnJvcigicGxvdFZhbHVlVG9UaW1lUG9pbnRJbmRleDogdW5zdXBwb3J0ZWQgc2VhcmNoIG1vZGUiKX1tb3ZlRGF0YShlKXt0aGlzLl9jb25mbGF0ZWRDaHVua3NCdWlsZGVyLm1vdmVEYXRhKGUpLHRoaXMubV9uc0JhcnMubW92ZShlKX19fSwKNzczMDg4KGUsdCxyKXsidXNlIHN0cmljdCI7dmFyIG47ZnVuY3Rpb24gaShlLHQpe3JldHVybiJwZXJpb2QtYmFjayI9PT1lLnR5cGUmJiJwZXJpb2QtYmFjayI9PT10LnR5cGU/ZS52YWx1ZT09PXQudmFsdWU6InRpbWUtcmFuZ2UiPT09ZS50eXBlJiYidGltZS1yYW5nZSI9PT10LnR5cGUmJihlLmZyb209PT10LmZyb20mJmUudG89PT10LnRvKX1mdW5jdGlvbiBzKGUsdD0hMSl7aWYoInBlcmlvZC1iYWNrIj09PWUudHlwZSl7bGV0IHI9ZS52YWx1ZTtyZXR1cm4gdCYmIllURCIhPT1yJiYiRCI9PT1yLnNsaWNlKC0xKSYmKHI9ci5zbGljZSgwLC0xKSkscn1yZXR1cm4iciwiK2UuZnJvbSsiOiIrZS50b31mdW5jdGlvbiBhKGUpe2NvbnN0IHQ9L3IsKFxkKyk6KFxkKykvLmV4ZWMoZSk7cmV0dXJuIG51bGwhPT10P3tmcm9tOk51bWJlcih0WzFdKSx0bzpOdW1iZXIodFsyXSksdHlwZToidGltZS1yYW5nZSJ9Ont2YWx1ZTplLHR5cGU6InBlcmlvZC1iYWNrIn19ci5kKHQse2FyZUVxdWFsVGltZUZyYW1lczooKT0+aSxjb252ZXJ0U3RyVG9UaW1lRnJhbWU6KCk9PmEsY29udmVydFRpbWVGcmFtZVRvU3RyOigpPT5zfSksZnVuY3Rpb24oZSl7ZS5QZXJpb2RCYWNrPSJwZXJpb2QtYmFjayIsZS5UaW1lUmFuZ2U9InRpbWUtcmFuZ2UifShufHwobj17fSkpfSw4MTA0MShlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtTdGRUaGVtZTooKT0+bi5TdGRUaGVtZX0pO3ZhciBuPXIoMjQ3OTAxKX0sNDA3Nzk5KGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse2VuY29kZUV4dGVuZGVkU3ltYm9sT3JHZXRTaW1wbGVTeW1ib2xTdHJpbmc6KCk9Pml9KTt2YXIgbj1yKDExMTk1Myk7ZnVuY3Rpb24gaShlKXtyZXR1cm4oMCxuLmVuY29kZUV4dGVuZGVkU3ltYm9sU3RydWN0dXJhbCkoZSl9fSwzMTQ5MTQoZSx0LHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1yKDg1Mjk4MCksaT1yKDkzMDIzMSk7Y29uc3Qgcz0oMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJwYXlfYXR0ZW50aW9uX3RvX3RpY2tlcl9ub3Rfc3ltYm9sIiksYT0oMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJjaGFydGluZ19saWJyYXJ5X3NpbmdsZV9zeW1ib2xfcmVxdWVzdCIpLG89KDAsaS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgidXNlX3RpY2tlcl9vbl9zeW1ib2xfaW5mb191cGRhdGUiKSxsPSgwLGkuaXNGZWF0dXJlc2V0RW5hYmxlZCkoInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIik7bi5leHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvLmJpbmQobnVsbCx7cGF5QXR0ZW50aW9uVG9UaWNrZXJOb3RTeW1ib2w6cyxjaGFydGluZ0xpYnJhcnlTaW5nbGVTeW1ib2xSZXF1ZXN0OmEsdXNlVGlja2VyT25TeW1ib2xJbmZvVXBkYXRlOm8sdXBwZXJjYXNlSW5zdHJ1bWVudE5hbWVzOmx9KX0sNTgwMzcoZSx0LHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbixpOyFmdW5jdGlvbihlKXtlW2UuT2ZmbGluZT0wXT0iT2ZmbGluZSIsZVtlLlJlc29sdmluZz0xXT0iUmVzb2x2aW5nIixlW2UuTG9hZGluZz0yXT0iTG9hZGluZyIsZVtlLlJlYWR5PTNdPSJSZWFkeSIsZVtlLkludmFsaWRTeW1ib2w9NF09IkludmFsaWRTeW1ib2wiLGVbZS5TbmFwc2hvdD01XT0iU25hcHNob3QiLGVbZS5FT0Q9Nl09IkVPRCIsZVtlLlB1bHNlPTddPSJQdWxzZSIsZVtlLkRlbGF5ZWQ9OF09IkRlbGF5ZWQiLGVbZS5EZWxheWVkU3RlYW1pbmc9OV09IkRlbGF5ZWRTdGVhbWluZyIsZVtlLk5vQmFycz0xMF09Ik5vQmFycyIsZVtlLlJlcGxheT0xMV09IlJlcGxheSIsZVtlLkVycm9yPTEyXT0iRXJyb3IiLGVbZS5DYWxjdWxhdGlvbkVycm9yPTEzXT0iQ2FsY3VsYXRpb25FcnJvciIsZVtlLlVuc3VwcG9ydGVkUmVzb2x1dGlvbj0xNF09IlVuc3VwcG9ydGVkUmVzb2x1dGlvbiJ9KG58fChuPXt9KSksZnVuY3Rpb24oZSl7ZVtlLk1hcmtlcnM9MF09Ik1hcmtlcnMiLGVbZS5TdGVwbGluZT0xXT0iU3RlcGxpbmUiLGVbZS5TaW1wbGU9Ml09IlNpbXBsZSJ9KGl8fChpPXt9KSl9LDgzNzIwMyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtTZXJpZXNEYXRhU291cmNlOigpPT5uLlNlcmllc0RhdGFTb3VyY2V9KTt2YXIgbj1yKDkzNTI0MCksaT1yKDExMTk1Mykscz1yKDg1NjU2KSxhPXIoOTMwMjMxKTtuLlNlcmllc0RhdGFTb3VyY2Uuc2V0Tm9uU2VyaWVzRGF0YVVucGFja2VyKHMudW5wYWNrTm9uU2VyaWVzRGF0YUNvbXByZXNzZWQpLG4uU2VyaWVzRGF0YVNvdXJjZS5zZXRTeW1ib2xFbmNvZGVyKGkuZW5jb2RlRXh0ZW5kZWRTeW1ib2xTdHJ1Y3R1cmFsKSxuLlNlcmllc0RhdGFTb3VyY2Uuc2V0RXh0cmFjdFN5bWJvbEZlYXR1cmVzZXRzKHtwYXlBdHRlbnRpb25Ub1RpY2tlck5vdFN5bWJvbDooMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJwYXlfYXR0ZW50aW9uX3RvX3RpY2tlcl9ub3Rfc3ltYm9sIiksY2hhcnRpbmdMaWJyYXJ5U2luZ2xlU3ltYm9sUmVxdWVzdDooMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJjaGFydGluZ19saWJyYXJ5X3NpbmdsZV9zeW1ib2xfcmVxdWVzdCIpLHVzZVRpY2tlck9uU3ltYm9sSW5mb1VwZGF0ZTooMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1c2VfdGlja2VyX29uX3N5bWJvbF9pbmZvX3VwZGF0ZSIpLHVwcGVyY2FzZUluc3RydW1lbnROYW1lczooMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyIpfSl9LDc3NzY2MShlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtzdHVkeVRwb1ByZXJpb2RpY0lkOigpPT5uLHN0dWR5VHBvU2Vzc2lvbnNJZDooKT0+aX0pO2NvbnN0IG49IlRQT1BlcmlvZGljQHR2LXZvbHVtZWJ5cHJpY2UiLGk9IlRQT1Nlc3Npb25zQHR2LXZvbHVtZWJ5cHJpY2UifSw3Mjg0MzYoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7c3R1ZHlWb2xGb290cHJpbnRJZDooKT0+bn0pO2NvbnN0IG49IkZvb3RwcmludEB0di12b2x1bWVieXByaWNlIn0sNTUwMzkzKGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse3N0dWR5VmJQU2Vzc2lvbnNJZDooKT0+bn0pO2NvbnN0IG49IlZiUFNlc3Npb25zQHR2LXZvbHVtZWJ5cHJpY2UifSw1OTE3NDEoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7CmdldFRpbWVGb3JtYXRGb3JJbnRlcnZhbDooKT0+aX0pO3ZhciBuPXIoMjM4MTAzKTtmdW5jdGlvbiBpKGUsdCl7aWYoZS5pc1JhbmdlKCkpcmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiIxMi1ob3VycyI9PT1lP24udHdlbHZlSG91ck1pbnV0ZU5vblplcm9TZWNvbmRGb3JtYXQ6bi5ob3VyTWludXRlTm9uWmVyb1NlY29uZEZvcm1hdH0odCk7aWYoZS5pc1RpY2tzKCkpcmV0dXJuIG4uaG91ck1pbnV0ZVNlY29uZE1pbGxpc2VjRm9ybWF0O3JldHVybiBlLmlzU2Vjb25kcygpfHxlLmlzVGlja3MoKT9mdW5jdGlvbihlKXtyZXR1cm4iMTItaG91cnMiPT09ZT9uLnR3ZWx2ZUhvdXJNaW51dGVTZWNvbmRGb3JtYXQ6bi5ob3VyTWludXRlU2Vjb25kRm9ybWF0fSh0KTpmdW5jdGlvbihlKXtyZXR1cm4iMTItaG91cnMiPT09ZT9uLnR3ZWx2ZUhvdXJNaW51dGVGb3JtYXQ6bi5ob3VyTWludXRlRm9ybWF0fSh0KX19LDg3MzU3MyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHthcHBseUFscGhhOigpPT5zLGFwcGx5VHJhbnNwYXJlbmN5OigpPT5vLGdlbmVyYXRlQ29sb3I6KCk9PmkscmVzZXRUcmFuc3BhcmVuY3k6KCk9Pmx9KTt2YXIgbj1yKDEzNDY3KTtmdW5jdGlvbiBpKGUsdCxyKXtpZih0PXR8fDAsIXUoZSkpcmV0dXJuIHI/KDAsbi5yZ2JhVG9TdHJpbmcpKCgwLG4ucmdiYSkoKDAsbi5wYXJzZVJnYikoZSksKDAsbi5ub3JtYWxpemVBbHBoYUNvbXBvbmVudCkoYSh0KSkpKTplO2NvbnN0W2kscyxvXT0oMCxuLnBhcnNlUmdiKShlKSxsPSgwLG4ubm9ybWFsaXplQWxwaGFDb21wb25lbnQpKGEodCkpO3JldHVybigwLG4ucmdiYVRvU3RyaW5nKShbaSxzLG8sbF0pfWZ1bmN0aW9uIHMoZSx0LHIpe2NvbnN0IGk9KDAsbi50cnlQYXJzZVJnYmEpKGUpO2lmKG51bGw9PT1pKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb2xvcjogJHtlfWApO2NvbnN0W3MsYSxvLGxdPWksdT0oMCxuLm5vcm1hbGl6ZUFscGhhQ29tcG9uZW50KSh0KihyP2w6MSkpO3JldHVybigwLG4ucmdiYVRvU3RyaW5nKSgoMCxuLnJnYmEpKFtzLGEsb10sdSkpfWZ1bmN0aW9uIGEoZSl7aWYoZTwwfHxlPjEwMCl0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgdHJhbnNwYXJlbmN5Iik7cmV0dXJuIDEtZS8xMDB9ZnVuY3Rpb24gbyhlLHQpe2lmKCJ0cmFuc3BhcmVudCI9PT1lKXJldHVybiBlO2NvbnN0IHI9KDAsbi5wYXJzZVJnYmEpKGUpLGk9clszXTtyZXR1cm4oMCxuLnJnYmFUb1N0cmluZykoKDAsbi5yZ2JhKShyWzBdLHJbMV0sclsyXSxhKHQpKmkpKX1mdW5jdGlvbiBsKGUpe3JldHVybiJ0cmFuc3BhcmVudCI9PT1lP2U6dShlKT9lLnNsaWNlKDAsNyk6KDAsbi5yZ2JhVG9TdHJpbmcpKCgwLG4ucmdiYSkoKDAsbi5wYXJzZVJnYikoZSksKDAsbi5ub3JtYWxpemVBbHBoYUNvbXBvbmVudCkoMSkpKX1mdW5jdGlvbiB1KGUpe3JldHVybiAwPT09ZS5pbmRleE9mKCIjIil9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/cl14.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.352Z","timestamp":1785154589352,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/cl14.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 1257\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1257,"size_decoded":1522,"mime_type":"image/png","magic":"PNG image data, 145 x 43, 8-bit colormap, non-interlaced","md5":"daf7957831b26158a23dbe7eff0dc114","sha1":"40d41ebb7b178c565bc8413374cb1e112eebda38","sha256":"36f87bd9baf42028ba3559c87f210bc39a3d9091285d8495df23868913019f05","sha512":"9d058a24e8b400b8ca3e1976b70b3818369ca2379e26a611b16242864cf457e98f68e6f8b58dfc34f694a0113970987a11be17967e856302ce63a7c8f773fcb8","ssdeep":"","tlshash":"9621d75bd01918b8def34536df3a812d1731a0ac3d6551441abc016793b38678744106","first_seen":"2025-07-30T23:06:04.118783Z","last_seen":"2026-07-27T12:17:29.138483Z","times_seen":6,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAJEAAAArCAMAAABPV5oCAAAAe1BMVEUAAAB0hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp5fpm47AAAAKHRSTlMA8BDpnNwfsGEEcaAZJfeRDM+8LamDyFA1CFbl0zzCakXgjHzXXE21s7Y/0gAAA/VJREFUWMPNmIuSojAQRTsEeQlBXiqgqIyP+/9fuBA1CeCutW4V662amp4yg8d037QdeqEoiUv6Jh14kJ8z+ldZU332OcNbEhF5PPhHoA2byqYPdOWFLzO3TkP6Aq3s0/4R+gXf0H/XdrFckdL+ZMu/5pZHpHelGu7YcrHVtBXNJMh6GVaO5T+Civ88Qk9wmkn4kTszcFeRPM3vNI3TI+Y7d0EzCbJ6QldC6CPp8ExlD3ys49Kej6h3WM3bkkxF61uoyn1dH4nmJOoUsOJeL2aZX+9RtkstmhCFRSIgdvaxZ3ZNeUS5q03quVdpkl52G+x99QQ3V662zwKsKRxNRGG6jmQwMX/APaIJ0ZGBrdMEQEq0gamYiMFSK2MEfSHiKV48aB2wZ5cAxDo9AyJQROqdx+aXpFMih4lD2S+5JEsi3+p1QC5/l6+JmNNp6+XAIhoQhQvUXtkHMRArIpmdnTViqpjM5pSoRfHMrqXSg+Ujek2k3Is6NIlS7MLnzgtUBhGFoj6OegpviF4RNdir+C+JaLVGbhBtIBy1OAAvDSKL9S4f9JTKfU20xvFjIsqASBM1aA0/1bgMiPqTMDMPos1viGK4nxORi0ARWYBDWgXyIZE8unVP+S1RJJBbHxMdkCuiI3YDD+M8INIoEmxCpHUVEPH2Q6I9EkXkDXfbgRgTyXR5Mnl/IqIsBbAonE+IIpwUUYDlwEzAiEjqIKQfp0RDJpsBIi7/lch+S1S29cZe7N8QyZVVAqT+B1nbKaIL8ndZy3au1aHwwp8QTeUHQPBBZd+Myl4PWte0sgPuqUb3lkjaNZkS1YajbRzGRDf8GO4XK9L6GbtfchiN7j1RBD4lSowjPcVmRBQBW/OEDIw9P49OSJkrpS5/l7dEDk5TohiteqiAMyTyG6xJE1Wo9SZVwy4SClnPWmXL1i+JHD3LBcinRBlEpOBuNCBauRCZ2WkbuP5z9xg8Iug2xhuHhrqwuHxBdIBoJZPvCZGZRIrjPvetYsmmiPztD4e4kknk1Giy+8OYfAR0G+t+LiMk3ehMIr8QwC5fuhyiohdE/hJI7DhnYEe6E+F0OjF0SrPRNzYnAXbdYg60viQyRqPtedquePCijpwiQSdmR7qxJIXZZlIBoI7DR64SqTQP1D+ESfPk9+Rivry3JQnqsWAyZush4By9quxVlIX0B5X69ffyjcWsT825VgP1lbf+kChZ8GrOWYTJaUwO1Pq6Zji6yYluRqK2PpoDtYSIaIjX8cw407oWPfqGMn/om7dJUpv55v6NikzzT8t8K1+bW9vz0hrdJs2p93dsFX2DNl92D3n/YvRdd7WdAn5wky+6z+6UJW1J/02/AHDYYGX0kRn6AAAAAElFTkSuQmCC"}},"time_used":93,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":33,"receive":60,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.261Z","timestamp":1785154590261,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/13148.32cc01dc01751b91682c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a06d56c-12cc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 15 May 2026 08:12:28 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/15/2026 10:19:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c418a3546782aea8e331fb3d6dc267c6\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4812,"size_decoded":2619,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3061)","md5":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-27T14:18:36.426457Z","times_seen":4545,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3905.682e89ef2dc4c70423c6.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.509Z","timestamp":1785154590509,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3905.682e89ef2dc4c70423c6.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-23c4\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 82df8b27f86e9df91baf716d6661824b\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9156,"size_decoded":2695,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9156), with no line terminators","md5":"585b0debea11681772c2af93fac32f6f","sha1":"239ef62778933c4ffbb2003ad1da3ab7f1c412e6","sha256":"7a6f9ce2286878bf4b28af0ff0922e443fe7fd6f6289968222d35cacb1fd8f85","sha512":"f37cf7f51a2fb42cf0f1822ddea62c13673cc6ac0dd4e9ec40de3f0387a5fc680d4eeec0d9d2b81cbc71136e743b6e8692b20d29e16cd72a6c83c741eea6239e","ssdeep":"192:aB56ZYifpWjOHpRSvoAyGGoCARk3NPmHHZ+DG4x8:ayXsh","tlshash":"6612cf5bf5e30baa2f63e1255a2d7b48516773062887a5f5ee42f3e045caec216036cc","first_seen":"2026-03-24T10:38:42.78469Z","last_seen":"2026-07-27T14:18:36.423283Z","times_seen":6617,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtd01EZjojMDAwMDstLV8xLXdNRGY6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tXzItd01EZjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8zLXdNRGY6IzAwMDB9W2RhdGEtdGhlbWU9ZGFya117LS1fMC13TURmOiMwMDAwOy0tXzEtd01EZjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1fMi13TURmOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzMtd01EZjojMDAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxM3B4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6dmFyKC0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dCk7ZGlzcGxheTppbmxpbmUtZmxleDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtLWhpZGRlbi1FSkJEOTZ6WHtvcGFjaXR5OjB9LmNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYe21hcmdpbjo0cHggMH0uY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elh7bWFyZ2luOjhweCAwfS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elh7bWFyZ2luOjAgNHB4fS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WHttYXJnaW46MCA4cHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvd30uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zLUVKQkQ5NnpYLC5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXItRUpCRDk2elh7Ym9yZGVyLWVuZC1lbmQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoycHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1lbmQ6MXB4fS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MnB4O2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgsLmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjFweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elh7cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXIsLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItbGVmdDo2cHggc29saWQ7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tXzMtd01EZik7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tXzMtd01EZik7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTZweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6NHB4O2JvdHRvbToxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXRvcC13aWR0aDo0cHg7dG9wOjEwMCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDphZnRlcntib3JkZXItYm90dG9tOjZweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8zLXdNRGYpO2JvcmRlci10b3A6NnB4IHNvbGlkO2JvcmRlci10b3AtY29sb3I6dmFyKC0tXzMtd01EZik7bWFyZ2luLXRvcDotNnB4O3RvcDo1MCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LXdpZHRoOjRweDtyaWdodDoxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWxlZnQtd2lkdGg6NHB4O2xlZnQ6MTAwJX0uY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjMxMHB4O3BhZGRpbmc6M3B4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpzdGFydH0uY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5LUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzowfS5jb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZS1FSkJEOTZ6WHttYXgtd2lkdGg6NjQwcHh9LmNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elh7bWF4LXdpZHRoOjIwMHB4fS5jb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZy1FSkJEOTZ6WHtwYWRkaW5nOjB9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDoxIDAgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjEycHg7bWFyZ2luOjNweCAwO3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXItRUpCRDk2elg6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTttYXJnaW4taW5saW5lLWVuZDo4cHg7d2lkdGg6MXB4fS5jb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQtRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjNweCA4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uLUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtoZWlnaHQ6MThweDtwYWRkaW5nOjFweCA2cHg7d2lkdGg6YXV0bzstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WHtoZWlnaHQ6MTVweDtsaW5lLWhlaWdodDoxNHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEzcHh9LmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19idXR0b24tRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX19LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6MH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItaW5saW5lLWVuZDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tXzAtd01EZik7Ym9yZGVyLWlubGluZS1zdGFydDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1fMC13TURmKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YmVmb3Jle2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmUsLmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YmVmb3Jle2JvcmRlci1pbmxpbmUtZW5kOjdweCBzb2xpZDtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItaW5saW5lLXN0YXJ0OjdweCBzb2xpZDtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLV8wLXdNRGYpO2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWlubGluZS1zdGFydDotN3B4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItYm90dG9tLXdpZHRoOjZweDt0b3A6LTZweH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLXRvcC13aWR0aDo2cHg7Ym90dG9tOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YmVmb3JlLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWJvdHRvbTo3cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjdweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpO21hcmdpbi10b3A6LTdweDt0b3A6NTAlfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWlubGluZS1lbmQtd2lkdGg6NnB4O2luc2V0LWlubGluZS1zdGFydDotNnB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjZweDtpbnNldC1pbmxpbmUtZW5kOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvd3tib3gtc2hhZG93OjAgMXB4IDNweCAwICMyYTJjMzk0YTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtcm91bmQtc2hhZG93IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWlubGluZS1lbmQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtZW5kLWNvbG9yOnZhcigtLV8wLXdNRGYpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAtd01EZil9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmFmdGVyLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1jaGFydCAuY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTttYXgtd2lkdGg6MzQycHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLWNoYXJ0IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLW5ld3MgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czo4cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7bWF4LXdpZHRoOjMyMHB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1uZXdzIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"wss","addr":"wss://widgetdata.tradingview.com/socket.io/websocket?from=embed-widget%2Fmarket-overview%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=persimmontrades.com%2F\u0026ancestor-origin=persimmontrades.com\u0026api_key=tradingview","fqdn":"widgetdata.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"93.123.102.177","port":443,"asn":199524,"as":"G-Core Labs S.A.","country":"United Kingdom","country_code":"GB"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.817Z","timestamp":1785154590817,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Wed, 18 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"96:06:76:35:9F:2C:2D:1C:89:55:E8:92:7C:4F:4B:FD:E9:F6:FF:1A","sha256":"BC:FA:33:CE:19:85:7A:43:44:BA:17:CE:87:15:42:E2:02:0C:7A:4E:83:42:1F:58:8F:59:B4:20:BF:4B:35:00"}}},"request":{"raw":"GET /socket.io/websocket?from=embed-widget%2Fmarket-overview%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=persimmontrades.com%2F\u0026ancestor-origin=persimmontrades.com\u0026api_key=tradingview HTTP/1.1\r\nHost: widgetdata.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-WebSocket-Version: 13\r\nOrigin: https://www.tradingview-widget.com\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: 3/2O32fVPPsP9VFWljR9tA==\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 12:16:31 GMT\r\nConnection: upgrade\r\nsec-websocket-accept: OGgMhjZidTmPX+na5PHD+7rrP0E=\r\nsec-websocket-extensions: permessage-deflate\r\nupgrade: websocket\r\nServer: tv\r\n\r\n","headers":null,"cookies":null,"status_code":"101","status_text":"Switching Protocols","fingerprints":null,"data":{"size":0,"size_decoded":224,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":250,"timings":{"blocked":-1,"dns":0,"connect":24,"send":0,"wait":195,"receive":0,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/#","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.066Z","timestamp":1785154591066,"http_version":"","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-screener.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.321Z","timestamp":1785154589321,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-screener.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.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 12:16:29 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"1d1f8c8f959c6dfe16b5df875e3e6a20\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:26 GMT\r\nx-amz-id-2: z1oVUttC/UDTwi3gP9YBvln7R7QFgsd4g7jFu86Gf4xU8/4TWLGvQfDPmoH3DpF5VQ86I3Q3ZAwZs5xruP5dGQd/8iesC53t\r\nx-amz-request-id: 9YC20ASXZHS8PJ27\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: Dm0spBzLYd1nkuHWUau.UrjMnrL5T__C\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 11:04:04\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7075825e6fa37d7996fa1210e1d83b63\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":13242,"size_decoded":6018,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"1d1f8c8f959c6dfe16b5df875e3e6a20","sha1":"05c8ccc14d187d3f57e68109996ffb71835de5a8","sha256":"362c5302b447aa33060156e760f193574c506b4bcbcce3d720c0422a830da740","sha512":"66818bdae0d6b15dd9e97bd4ab64b6396595b2f685c5643165618cfce9f13699a12db224ea81c51e78e303be467795c01dd25084441a89c487fab2fcfb37882c","ssdeep":"384:gfLuCWoofYkFdjEUjrb2oNf0qIOj26eoVH7MXt:u4MUnb2oJDIOj26eQYXt","tlshash":"f452c6aab660ecbd41d945cbe07a2720b61d3a44b207eca4b5acd4c550edccca531f7e","first_seen":"2026-07-16T20:48:56.348973Z","last_seen":"2026-07-27T14:22:59.711075Z","times_seen":273,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3Qgcj1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIGksczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KGl8fChpPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gclt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30scj17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0saT1PYmplY3Qua2V5cyhyKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIGkuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1yW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KHIpe2NvbnN0e3NjcmlwdFVSTDppLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PXIsaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsocj10Lmhvc3QsaT0zLHIuc3BsaXQoIi4iKS5zbGljZSgtaSkuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIHIsaTtyZXR1cm4gZS53aWRnZXRIb3N0fShpKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxyPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLGk9ZXx8cjtyZXR1cm4gaSYmdC5yZW1vdmVDaGlsZChpKSxpfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxTPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxiPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1iJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Yiksdm9pZCAwIT09UyYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1TKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixfPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsQz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Xyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1DLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoXyxULEMpO2NvbnN0IGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxrLEEpLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgRT10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoRT8odChFLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxFKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUscil7Y29uc3QgaT1lLmNvbnRlbnRXaW5kb3c7aWYoIWkpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09aSYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZyKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1iJiYodC5zdHlsZS53aWR0aD1iKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IHI9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChyKT9wYXJzZUludChyKTovXihcZCslfGF1dG8pJC8udGVzdChyKT9yOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxyPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1yJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PXIsITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSkscj1mdW5jdGlvbih0LGUpe2NvbnN0IHI9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCBpIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihyW2ldPXRbaV0pO3JldHVybiByfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLGldb2YgT2JqZWN0LmVudHJpZXMocikpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUsaSl9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCByPXt9O2UmJihyLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoclt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoclsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKHIpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShyKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUscixpLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7ciYmKG4uaWQ9ciksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLHIpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1pLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IHI9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsci5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLHIpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3QgaT10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO2kmJmkuZm9yRWFjaCgoaT0+e2NvbnN0IHM9aS5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixyKSxpLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19bmV3IGNsYXNzIGV4dGVuZHMgZHtnZXQgd2lkZ2V0SWQoKXtjb25zdCB0PXRoaXMuc2V0dGluZ3M7cmV0dXJuIHQmJiJjcnlwdG9fbWt0Ij09PXQuc2NyZWVuZXJfdHlwZT8iY3J5cHRvLW1rdC1zY3JlZW5lciI6InNjcmVlbmVyIn1nZXQgdXNlU25vd3Bsb3dQYWdlVmlldygpe3JldHVybiEwfXdpZGdldFV0bU5hbWUoKXtjb25zdCB0PXRoaXMuc2V0dGluZ3M7aWYodCl7aWYoImZvcmV4Ij09PXQubWFya2V0KXJldHVybiJmb3JleHNjcmVlbmVyIjtpZigiY3J5cHRvX21rdCI9PT10LnNjcmVlbmVyX3R5cGUpcmV0dXJuImNyeXB0b21rdHNjcmVlbmVyIjtpZigiY3J5cHRvIj09PXQubWFya2V0KXJldHVybiJjcnlwdG9zY3JlZW5lciJ9cmV0dXJuInNjcmVlbmVyIn1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXsKcmV0dXJuWyJjb2xvclRoZW1lIiwiY3VzdG9tZXIiLCJkZWZhdWx0Q29sdW1uIiwiZGVmYXVsdFNjcmVlbiIsImRpc3BsYXlDdXJyZW5jeSIsImhlaWdodCIsImxhcmdlQ2hhcnRVcmwiLCJsb2NhbGUiLCJtYXJrZXQiLCJzY3JlZW5lcl90eXBlIiwic2hvd1Rvb2xiYXIiLCJpc1RyYW5zcGFyZW50Iiwid2lkdGgiXX1maWx0ZXJSYXdTZXR0aW5ncyh0KXtjb25zdCBlPXN1cGVyLmZpbHRlclJhd1NldHRpbmdzKHQpO3JldHVybiB2b2lkIDAhPT10LnRyYW5zcGFyZW5jeSYmKGUuaXNUcmFuc3BhcmVudD10LnRyYW5zcGFyZW5jeSksImNyeXB0b19ta3QiPT09ZS5zY3JlZW5lcl90eXBlJiYoZS5tYXJrZXQ9ImNyeXB0byIpLGUuZW5hYmxlU2Nyb2xsaW5nPSEwLGV9fX0pKCk7"}},"time_used":51,"timings":{"blocked":-1,"dns":0,"connect":4,"send":0,"wait":3,"receive":0,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87926.8ab9cfede16295107017.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.237Z","timestamp":1785154590237,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/87926.8ab9cfede16295107017.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a9-3547\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9d40fd8b2f0217af00d4d0ce1b080a1a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":13639,"size_decoded":6439,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"5f5b2f579bfcf6854f67787677d11c94","sha1":"6de49cc606825ccf66acbceb2ba4d23d91f0ec4c","sha256":"38c41c9069ed7604e737e462760f16363aad09961b1091c66dfab594df263108","sha512":"3a309c43d694230393cf3d65bb8e48af52ff337f61f287f020e266764e5df3ad2531cd999bc8dbf42e74c27546fd871a68515a183ef1c35d24e0c0cb77549a6c","ssdeep":"384:KossZPZ8HYrU0jAWia49Aa4/WHA1E9y3ywtUPIsxmvxqlOwSCoBPy7:KossZPZEYrU0AWPXa4/WHH9WywtUgsSi","tlshash":"9752c9ea72c1357251da45a7613e7202a3394588f4898178b52cecdf172edcd73b2abc","first_seen":"2026-07-23T13:38:20.421953Z","last_seen":"2026-07-27T14:18:36.398168Z","times_seen":1172,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbODc5MjZdLHs3MzIwNDAoZSx0LG8pe3ZhciBuO2Z1bmN0aW9uIHIoZSx0PXdpbmRvdyl7Y29uc3Qgbz0idGhlbWUtIitlLG49dC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCBlIG9mIEFycmF5LmZyb20obikpZS5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmZSE9PW8mJm4ucmVtb3ZlKGUpO24uYWRkKG8pLHQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9ZX1vLmQodCx7YXBwbHlUaGVtZTooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0obnx8KG49e30pKX0sMjAwNjY2KGUsdCxvKXtvLmQodCx7c2V0VGhlbWU6KCk9PnN9KTt2YXIgbj1vKDIzMjM2NCkscj1vKDczMjA0MCk7Y29uc3QgaT1uZXcgbi5XYXRjaGVkVmFsdWU7ZnVuY3Rpb24gcyhlKXtpLnNldFZhbHVlKGUpfWkuc3Vic2NyaWJlKChlPT57KDAsci5hcHBseVRoZW1lKShlLHdpbmRvdyl9KSl9LDg0NTUxMChlLHQsbyl7by5kKHQse1RpY2tlckl0ZW1BYnN0cmFjdDooKT0+YX0pO28oMjI2MzMxKTt2YXIgbj1vKDIyMTA2MSkscj1vKDI4NDQ4NCksaT1vKDY3MzgyOSkscz1vKDk0ODM4MCksbD1vKDk2OTE2OCksYz1vKDgzNzgyMik7Y29uc3QgdT0oMCxuLmdldExvZ2dlcikoIldpZGdldFRpY2tlciIpO2NsYXNzIGF7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMub25Jbml0PW5ldyBzLkRlbGVnYXRlLHRoaXMub25Db21wbGV0ZT1uZXcgcy5EZWxlZ2F0ZSx0aGlzLm9uRXJyb3I9bmV3IHMuRGVsZWdhdGUsdGhpcy5fcXVvdGVUaWNrZXJDb21wbGV0ZT1udWxsLHRoaXMuX2lzUnVubmluZz0hMSx0aGlzLl9wcmV2UXVvdGVTeW1ib2w9bnVsbCx0aGlzLl9lbD10fHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksdGhpcy5fc3ltYm9sRGF0YT1lLHRoaXMuX29wdGlvbnM9b3x8e30sKDAsaS52YWxpZGF0ZVN5bWJvbERhdGEpKGUpPyh0aGlzLnJlbmRlcigpLHRoaXMuc3RhcnQoKSk6dS5sb2dFcnJvcigic3ltYm9sRGF0YSBpcyBub3QgdmFsaWQiKX1yZW5kZXIoKXt0aGlzLl9lbC5jbGFzc0xpc3QuYWRkKHRoaXMuX2dldENsYXNzKCkpLHRoaXMuX2VsLmlubmVySFRNTD10aGlzLl9nZXRWaWV3KCksdGhpcy5fc2V0VGl0bGUoKSx0aGlzLl9zZXRMaW5rKCl9c3RhcnQoKXt0aGlzLl9pc1J1bm5pbmd8fCh0aGlzLl9zdGFydFF1b3RlVGlja2VyKCksdGhpcy5faXNSdW5uaW5nPSEwKX1zdG9wKCl7dGhpcy5faXNSdW5uaW5nJiYodGhpcy5fc3RvcFF1b3RlVGlja2VyKCksdGhpcy5faXNSdW5uaW5nPSExKX1nZXRFbGVtZW50KCl7cmV0dXJuIHRoaXMuX2VsfWNoYW5nZVN5bWJvbChlKXtjb25zdCB0PWUuaW5jbHVkZXMoIjoiKT97cHJvTmFtZTplfTp7c2hvcnROYW1lOmV9O3RoaXMuX3ByZXZRdW90ZVN5bWJvbD10aGlzLl9nZXRTeW1ib2xOYW1lKCksdGhpcy5fc3ltYm9sRGF0YT10LHRoaXMuX3NldFRpdGxlKCksdGhpcy5fc2V0TGluaygpLHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKX1xdW90ZVRpY2tlcigpe3JldHVybiB0aGlzLl9xdW90ZVRpY2tlcn1kaXNwbGF5UGxhY2Vob2xkZXJMZXR0ZXIoKXt0aGlzLl9yZW5kZXJTeW1ib2xMb2dvKFtdLCJ4eHhzbWFsbCIpfV9nZXRFbGVtZW50Q2xhc3MoZSl7cmV0dXJuIHRoaXMuX2dldENsYXNzKCkrIl9fIitlfV9nZXRTeW1ib2xOYW1lKCl7cmV0dXJuIHRoaXMuX3N5bWJvbERhdGEucHJvTmFtZXx8dGhpcy5fc3ltYm9sRGF0YS5zaG9ydE5hbWV9X3JlbmRlclN5bWJvbExvZ28oZSx0KXtjb25zdCBvPXRoaXMuX2VsLnF1ZXJ5U2VsZWN0b3IoIi5qcy1oZWFkZXItaWNvbiIpLG49MD09PWUubGVuZ3RoP3RoaXMuX2dldFBsYWNlaG9sZGVyTGV0dGVyKCk6dm9pZCAwO28mJnRoaXMuX3NldFN5bWJvbExvZ29IdG1sKG8sZSx0LG4pfV9nZXRQbGFjZWhvbGRlckxldHRlcigpe2NvbnN0IGU9dGhpcy5fc3ltYm9sRGF0YS5wcm9OYW1lLHQ9ZSYmZS5zcGxpdCgiOiIpWzFdO3JldHVybih0aGlzLl9zeW1ib2xEYXRhLnRpdGxlfHx0aGlzLl9zeW1ib2xEYXRhLmRlc2NyaXB0aW9ufHx0fHwiInx8IiAiKVswXX1fc2V0U3ltYm9sTG9nb0h0bWwoZSx0LG8sbil7aWYodC5sZW5ndGg+MHx8dm9pZCAwIT09bil7Y29uc3Qgcj0oMCxjLmdldENpcmNsZUxvZ29BbnlIdG1sKSh7bG9nb1VybHM6dCxzaXplOm8sY2xhc3NOYW1lOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaWNvbiIpLHBsYWNlaG9sZGVyTGV0dGVyOm59KTtlLmlubmVySFRNTD1yfWVsc2UgZS5pbm5lckhUTUw9IiJ9X3NldFRpdGxlKCl7Y29uc3QgZT10aGlzLl9nZXRFbFRpdGxlKCk7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fc3ltYm9sRGF0YS50aXRsZXx8dGhpcy5fc3ltYm9sRGF0YS5kZXNjcmlwdGlvbnx8IiJ8fHRoaXMuX3N5bWJvbERhdGEuc2hvcnROYW1lfHx0aGlzLl9zeW1ib2xEYXRhLnByb05hbWV8fCIiLG89KDAsbC5kZXRlY3RBdXRvRGlyZWN0aW9uKSh0KTtvJiYoZS5kaXI9byksZS50ZXh0Q29udGVudD10fV9zZXRMaW5rKCl7aWYoISh0aGlzLl9lbCBpbnN0YW5jZW9mIEhUTUxBbmNob3JFbGVtZW50KSlyZXR1cm47Y29uc3QgZT10aGlzLl9zeW1ib2xEYXRhLmxpbmtQYWdlO2UmJih0aGlzLl9lbC5ocmVmPWUpLHRoaXMuX29wdGlvbnMuaXNFbWJlZFdpZGdldCYmKHRoaXMuX2VsLnRhcmdldD0iX2JsYW5rIix0aGlzLl9lbC5yZWw9ImV4dGVybmFsIG5vb3BlbmVyIil9X3N0YXJ0UXVvdGVUaWNrZXIoKXtpZighdGhpcy5fcXVvdGVUaWNrZXIpcmV0dXJuIHZvaWQgdGhpcy5fY3JlYXRlUXVvdGVUaWNrZXIoKTtjb25zdCBlPXRoaXMuX2dldFN5bWJvbE5hbWUoKTt0aGlzLl9wcmV2UXVvdGVTeW1ib2whPT1lPyh0aGlzLl9kZXN0cm95UXVvdGVUaWNrZXIoKSx0aGlzLl9jcmVhdGVRdW90ZVRpY2tlcigpKTp0aGlzLl9xdW90ZVRpY2tlci5lbmFibGUoKX1fc3RvcFF1b3RlVGlja2VyKCl7dGhpcy5fcXVvdGVUaWNrZXImJih0aGlzLl9xdW90ZVRpY2tlci5kaXNhYmxlKCksCnRoaXMuX3F1b3RlVGlja2VyQ29tcGxldGU9bnVsbCl9X2NyZWF0ZVF1b3RlVGlja2VyKCl7Y29uc3QgZT10aGlzLl9nZXRTeW1ib2xOYW1lKCksdD10aGlzLl9nZXRUaWNrZXJPcHRpb25zKCksbz10LmluaXRlZEhvb2ssbj10LnNldFN0YXRlSG9vazt0aGlzLl9xdW90ZVRpY2tlckNvbXBsZXRlPW51bGwsdGhpcy5fcXVvdGVUaWNrZXI9bmV3IHIuUXVvdGVUaWNrZXIoZSx0aGlzLl9lbCx7bm9TdWNoU3ltYm9sSG9vazooKT0+dGhpcy5vbkVycm9yLmZpcmUoIm5vX3N5bWJvbCIpLHBlcm1pc3Npb25EZW5pZWRIb29rOigpPT50aGlzLm9uRXJyb3IuZmlyZSgicGVybWlzc2lvbl9kZW5pZWQiKSwuLi50LGluaXRlZEhvb2s6KC4uLmUpPT57bz8uKC4uLmUpLHRoaXMub25Jbml0LmZpcmUoLi4uZSl9LHNldFN0YXRlSG9vazooZSx0LG8pPT57bj8uKGUsdCxvKSxvJiZudWxsPT09dGhpcy5fcXVvdGVUaWNrZXJDb21wbGV0ZSYmKHRoaXMuX3F1b3RlVGlja2VyQ29tcGxldGU9byx0aGlzLm9uQ29tcGxldGUuZmlyZSgpKX19KX1fZGVzdHJveVF1b3RlVGlja2VyKCl7dGhpcy5fc3RvcFF1b3RlVGlja2VyKCksZGVsZXRlIHRoaXMuX3F1b3RlVGlja2VyfV9nZXRFbFRpdGxlKCl7cmV0dXJuIHRoaXMuX2VsLnF1ZXJ5U2VsZWN0b3IoYC4ke3RoaXMuX2dldEVsZW1lbnRDbGFzcygidGl0bGUiKX1gKX19fSwxMTUyOTMoZSx0LG8pe28uZCh0LHtkZXRlY3RBdXRvRGlyZWN0aW9uOigpPT5oLGZvcmNlTFRSU3RyOigpPT5hLGlzUnRsOigpPT5pLHNldERvY3VtZW50RGlyR2V0dGVyOigpPT5yLHN0cmlwTFRSTWFya3M6KCk9PnV9KTtvKDMyMDQwMyk7bGV0IG49KCk9Pm51bGw7ZnVuY3Rpb24gcihlKXtuPWV9Y29uc3QgaT0oKT0+InJ0bCI9PT1mdW5jdGlvbigpe2NvbnN0IGU9bigpO2lmKG51bGw9PT1lKXRocm93IG5ldyBFcnJvcigiRG9jdW1lbnQgZGlyZWN0aW9uIGdldHRlciBpcyBub3Qgc2V0LCBjYWxsIHNldERvY3VtZW50RGlyR2V0dGVyIHRvIHNldCBpdCIpO3JldHVybiBlfSgpLHM9IuKAqiIsbD0i4oCsIixjPW5ldyBSZWdFeHAoIuKAjnzigI984oCqfOKAq3zigKwiLCJnIik7ZnVuY3Rpb24gdShlKXtyZXR1cm4iIiE9PWUmJmkoKSYmbnVsbCE9ZT9lLnJlcGxhY2UoYywiIik6ZX1mdW5jdGlvbiBhKGUpe3JldHVybiIiIT09ZSYmaSgpJiZudWxsIT1lP3MrZStsOmV9dmFyIG07IWZ1bmN0aW9uKGUpe2UuTFRSPSJsdHIiLGUuUlRMPSJydGwiLGUuVU5LTk9XTj0iIn0obXx8KG09e30pKTtjb25zdCBkPS9bXlx1MDAwMC1cdTAwNDBcdTAwNUItXHUwMDYwXHUwMDdCLVx1MDBCRlx1MDBEN1x1MDBGN1x1MDJCOS1cdTAyRkZcdTIwMDAtXHUyMDBFXHUyMDEwLVx1MjAyOVx1MjAyQ1x1MjAyRi1cdTJCRkZdLyxwPS9bXHUwNTkwLVx1MDdGRlx1MjAwRlx1MjAyQlx1MjAyRVx1RkIxRC1cdUZERkRcdUZFNzAtXHVGRUZDXS87ZnVuY3Rpb24gaChlKXtjb25zdCB0PWQuZXhlYyhlKTtyZXR1cm4gdD9wLnRlc3QodFswXSk/InJ0bCI6Imx0ciI6IiJ9fSw2MDE4NDEoZSx0LG8pe28uZCh0LHtjbG9uZTooKT0+cixpc0FycmF5OigpPT5zLGlzSW50ZWdlcjooKT0+bCxpc051bWJlcjooKT0+bixpc09iamVjdDooKT0+aSxub3ROdWxsOigpPT5jfSk7bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiByKGUpe2lmKCFlfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIGU7bGV0IHQ7dD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcihjb25zdCBvIGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShvKSl7Y29uc3Qgbj1lW29dO3Rbb109biYmIm9iamVjdCI9PXR5cGVvZiBuP3Iobik6bn1yZXR1cm4gdH1mdW5jdGlvbiBpKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWV9Y29uc3Qgcz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfTtmdW5jdGlvbiBsKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmZSUxPT0wfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIG51bGwhPT1lfU51bWJlci5pc05hTj1OdW1iZXIuaXNOYU58fGZ1bmN0aW9uKGUpe3JldHVybiBlIT1lfX0sMzQ0Nzg1KGUsdCxvKXtvLmQodCx7aGlkZTooKT0+dixzaG93T25FbGVtZW50OigpPT5wfSk7dmFyIG49bygzNjMyNjkpLHI9bygxMzg2MzgpLGk9byg3MjcwOSkscz1vKDY1ODk5NSksbD1vKDE2Nzg5NiksYz1vKDQ5MDM3OCk7bGV0IHU9ITEsYT1udWxsLG09bnVsbDtuLm1vYmlsZXRvdWNofHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixmLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYoISh0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2xvc2VzdCgnW2RhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzPSJ0cnVlIl0nKSYmdC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpKSlyZXR1cm47ZihlLCEwKX0pLHtjYXB0dXJlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLChmdW5jdGlvbihlKXtlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZmKGUsITApfSkse2NhcHR1cmU6ITB9KSk7Y29uc3QgZD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKCk9PntpZihhJiZhLm9wdGlvbnMudGFyZ2V0KXtsZXQgZTtlPSJpc0Nvbm5lY3RlZCJpbiBhLm9wdGlvbnMudGFyZ2V0P2Eub3B0aW9ucy50YXJnZXQuaXNDb25uZWN0ZWQ6ZG9jdW1lbnQuYm9keS5jb250YWlucyhhLm9wdGlvbnMudGFyZ2V0KSxlfHx2KCl9fSkpLHA9KGUsdD17fSk9Pntjb25zdHtjb250ZW50Om8sLi4ubn09Zyh0KSxyPWMuZ2V0RGF0YUZyb21UYXJnZXQoZSksaT1PYmplY3QuYXNzaWduKHIsbik7cmV0dXJuIm5vbmUiIT09by50eXBlJiYoaS5jb250ZW50PW8pLCEoIm5vbmUiPT09aS5jb250ZW50LnR5cGUmJiFpLmhvdGtleSkmJihpLnRhcmdldD1lLGgoaSksITApfSxoPWU9PnsKY29uc3QgdD1nKGUpLG89Yy5nZXRUb29sdGlwKHQpO2lmKGE9e29wdGlvbnM6dCxlbGVtZW50Om99LCgwLGwuc2V0VG9vbHRpcCkobyksKDAscy5jbGVhclNjaGVkdWxlKSgpLCF1KXJldHVybiBjLmhpZGVUb29sdGlwKG8pLHZvaWQoMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9Pl8obykpLGZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgZS50b29sdGlwRGVsYXl8fGlzTmFOKGUudG9vbHRpcERlbGF5KT81MDA6ZS50b29sdGlwRGVsYXl9KHQpKTtjb25zdHt0b29sdGlwRGVib3VuY2U6bn09ZTsibnVtYmVyIiE9dHlwZW9mIG58fGlzTmFOKG4pP18obyk6KDAscy5zY2hlZHVsZVJlbmRlcikoKCgpPT5fKG8pKSxuKX07ZnVuY3Rpb24gZihlLHQpe2lmKCJzb3VyY2VDYXBhYmlsaXRpZXMiaW4gZSYmZS5zb3VyY2VDYXBhYmlsaXRpZXM/LmZpcmVzVG91Y2hFdmVudHMpcmV0dXJuO2NvbnN0IG89ZnVuY3Rpb24oZSx0LG8pe2NvbnN0IG49W107Zm9yKDtlJiZlIT09dDspZS5jbGFzc0xpc3QmJmUuY2xhc3NMaXN0LmNvbnRhaW5zKG8pJiZuLnB1c2goZSksZT1lLnBhcmVudEVsZW1lbnR8fGIoZS5wYXJlbnROb2RlKTtyZXR1cm4gbn0oZS50YXJnZXQsZS5jdXJyZW50VGFyZ2V0LCJhcHBseS1jb21tb24tdG9vbHRpcCIpO2Zvcihjb25zdCBuIG9mIG8pe2lmKGUgaW5zdGFuY2VvZiBNb3VzZUV2ZW50KWlmKCJidXR0b25zImluIGUpe2lmKDEmZS5idXR0b25zKWNvbnRpbnVlfWVsc2UgaWYoMT09PWUud2hpY2gpY29udGludWU7Y29uc3Qgbz0oKT0+cChuKTtpZihvKCkpe2NvbnN0IGU9ZT0+cihudWxsLCEwKSxyPShpLHM9ITEpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLG8pLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsciksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZSx7Y2FwdHVyZTohMH0pLHQmJihuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHIpLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIscikpLG0mJihtLmRlc3Ryb3koKSxtPW51bGwpLHYocyl9O24uYWRkRXZlbnRMaXN0ZW5lcigiY29tbW9uLXRvb2x0aXAtdXBkYXRlIixvKSxuLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpLG4uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUse2NhcHR1cmU6ITB9KSx0JiYobi5hZGRFdmVudExpc3RlbmVyKCJibHVyIixyKSxuLmFkZEV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLHIpKSxudWxsPT09bSYmKG09KDAsaS5jcmVhdGVHcm91cCkoe2Rlc2M6IlRvb2x0aXAifSksbS5hZGQoe2Rlc2M6IkhpZGUiLGhvdGtleToyNyxoYW5kbGVyOnJ9KSk7YnJlYWt9fX1mdW5jdGlvbiB5KCl7KDAsbC5lbXB0eSkoKSx1PSExLGE9bnVsbH1jb25zdCB2PShlLHQpPT57aWYoKDAscy5jbGVhclNjaGVkdWxlKSgpLCgwLHIuZW5zdXJlTm90TnVsbCkoZCkuZGlzY29ubmVjdCgpLCFhKXJldHVybjtpZighZSYmIXUpcmV0dXJuO2NvbnN0e2VsZW1lbnQ6byxvcHRpb25zOm59PWEsaT0oKT0+e28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsaSksYy5oaWRlVG9vbHRpcChvKSxlP3koKTooMCxzLnNjaGVkdWxlUmVtb3ZlKSgoKCk9Pnt5KCl9KSwyNTApLHQ/LigpfTtuLnRvb2x0aXBIaWRlRGVsYXk/KDAscy5zY2hlZHVsZUhpZGUpKCgoKT0+e28ucXVlcnlTZWxlY3RvcigiOmhvdmVyIik/by5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixpKTppKCl9KSxuLnRvb2x0aXBIaWRlRGVsYXkpOmkoKX07ZnVuY3Rpb24gXyhlKXtjb25zdHtvcHRpb25zOnR9PSgwLHIuZW5zdXJlTm90TnVsbCkoYSk7aWYoYy5zZXRTdHlsZShlLHQpLGMuc2hvd1Rvb2x0aXAoZSksKDAsci5lbnN1cmVOb3ROdWxsKShkKS5vYnNlcnZlKGRvY3VtZW50LHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pLHU9ITAsdC5mb3JjZUhpZGVPbk1vdmUpe2NvbnN0IGU9KCk9Pntkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSksdigpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSl9fWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGUmJihlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREU/ZTpudWxsKX1mdW5jdGlvbiBnKGUpe2lmKGZ1bmN0aW9uKGUpe3JldHVybiJjb250ZW50ImluIGV9KGUpKXJldHVybiBlO2NvbnN0e2lubmVyOnQsaHRtbDpvLHRleHQ6biwuLi5yfT1lO2xldCBpPXt0eXBlOiJub25lIn07cmV0dXJuIHQmJihpPXt0eXBlOiJlbGVtZW50IixkYXRhOnR9KSxuJiYoaT17dHlwZTpvPyJodG1sIjoidGV4dCIsZGF0YTpufSkse2NvbnRlbnQ6aSwuLi5yfX19LDIyNjMzMShlLHQsbyl7dmFyIG49bygzNDQ3ODUpO2Z1bmN0aW9uIHIoZSx0PSJ4Iil7bGV0IG89ITE7cmV0dXJuIngiIT09dCYmImJvdGgiIT09dHx8KG89b3x8ZS5vZmZzZXRXaWR0aDxlLnNjcm9sbFdpZHRoKSwieSIhPT10JiYiYm90aCIhPT10fHwobz1vfHxlLm9mZnNldEhlaWdodDxlLnNjcm9sbEhlaWdodCksb31mdW5jdGlvbiBpKGUsdD0ieCIpe2Zvcihjb25zdCBvIG9mIEFycmF5LmZyb20oZS5jaGlsZHJlbikpaWYobyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYocihvLHQpfHxpKG8sdCkpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIHMoZSl7bGV0IHQ9IngiO3JldHVybiBlLm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCIpP3Q9ImJvdGgiOmUubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl95IikmJih0PSJ5IiksdH1mdW5jdGlvbiBsKGUpe2NvbnN0IHQ9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtb3ZlcmZsb3ctdG9vbHRpcC1odG1sIik7aWYodClyZXR1cm57dHlwZToiaHRtbCIsCmRhdGE6dH07Y29uc3Qgbz1lLmdldEF0dHJpYnV0ZSgiZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQiKTtpZihvKXJldHVybnt0eXBlOiJ0ZXh0IixkYXRhOm99O2lmKGUubWF0Y2hlcz8uKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tYWxsb3ctdGV4dCIpKXtyZXR1cm57dHlwZToidGV4dCIsZGF0YTplLnRleHRDb250ZW50fHwiIn19Y29uc3Qgbj1BcnJheS5mcm9tKGUuY2hpbGROb2RlcykucmVkdWNlKCgoZSx0KT0+KHQubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSYmZS5wdXNoKHQudGV4dENvbnRlbnR8fCIiKSxlKSksW10pLmpvaW4oIiIpLnRyaW0oKTtyZXR1cm4gbj97dHlwZToidGV4dCIsZGF0YTpufTp7dHlwZToibm9uZSJ9fWZ1bmN0aW9uIGMoZSx0KXtsZXQgbz0hMTtjb25zdCBuPWUuY2hpbGRyZW47Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2NvbnN0IGk9bltlXTtpZihpIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnIoaSx0KSl7bz0hMDticmVha319cmV0dXJuIG99ZnVuY3Rpb24gdShlKXtjb25zdCB0PWUudGFyZ2V0O2lmKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmKHQubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtZm9jdXMiKXx8dC5xdWVyeVNlbGVjdG9yKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC1mb2N1cyIpKSl7Y29uc3QgZT10Lm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwIik/dDp0LnF1ZXJ5U2VsZWN0b3IoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwIiksbz1zKGUpO2lmKGUubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWNoZWNrLWNoaWxkcmVuLXJlY3Vyc2l2ZWx5Iikpe2lmKCFpKGUsbykpcmV0dXJufWVsc2UgaWYoZS5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4iKSl7aWYoIWMoZSxvKSlyZXR1cm59ZWxzZSBpZighcihlLG8pKXJldHVybjsoMCxuLnNob3dPbkVsZW1lbnQpKHQse2NvbnRlbnQ6bChlKX0pO2NvbnN0IHU9KCk9PnsoMCxuLmhpZGUpKCksdC5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIix1KSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLHUpfTt0LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHUpLHQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsdSl9fSgwLG8oNzQ5NjQ4KS53aGVuRG9jdW1lbnRSZWFkeSkoKCgpPT57ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsKGU9Pntjb25zdCB0PWUudGFyZ2V0O2lmKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmdC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCIpKXtjb25zdCBlPXModCk7aWYodC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4tcmVjdXJzaXZlbHkiKSl7aWYoIWkodCxlKSlyZXR1cm59ZWxzZSBpZih0Lm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1jaGVjay1jaGlsZHJlbiIpKXtpZighYyh0LGUpKXJldHVybn1lbHNlIGlmKCFyKHQsZSkpcmV0dXJuOygwLG4uc2hvd09uRWxlbWVudCkodCx7Y29udGVudDpsKHQpfSk7Y29uc3Qgbz0oKT0+eygwLG4uaGlkZSkoKSxbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxvKSkpfTtbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LmFkZEV2ZW50TGlzdGVuZXIoZSxvKSkpfX0pLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdSwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLHUsITApfSkpfSw2NzM4MjkoZSx0LG8pe2Z1bmN0aW9uIG4oZSl7cmV0dXJuIEJvb2xlYW4oZSkmJigic3RyaW5nIj09dHlwZW9mIGUucHJvTmFtZXx8InN0cmluZyI9PXR5cGVvZiBlLnNob3J0TmFtZSl9by5kKHQse3ZhbGlkYXRlU3ltYm9sRGF0YTooKT0+bn0pfSw4NTE0NTgoZSx0LG8pe28uZCh0LHtpc1NwcmVhZDooKT0+YSx0b2tlbml6ZTooKT0+Y30pO3ZhciBuLHI9byg5MDEwMjIpLGk9byg1NjkzOTgpOyFmdW5jdGlvbihlKXtlLlN5bWJvbD0ic3ltYm9sIixlLkluY29tcGxldGVTeW1ib2w9ImluY29tcGxldGVTeW1ib2wiLGUuTnVtYmVyPSJudW1iZXIiLGUuSW5jb21wbGV0ZU51bWJlcj0iaW5jb21wbGV0ZU51bWJlciIsZS5TZXBhcmF0b3JQcmVmaXg9InNlcGFyYXRvclByZWZpeCIsZS5PcGVuQnJhY2U9Im9wZW5CcmFjZSIsZS5DbG9zZUJyYWNlPSJjbG9zZUJyYWNlIixlLlBsdXM9InBsdXMiLGUuTWludXM9Im1pbnVzIixlLk11bHRpcGx5PSJtdWx0aXBseSIsZS5EaXZpZGU9ImRpdmlkZSIsZS5Qb3dlcj0icG93ZXIiLGUuV2hpdGVzcGFjZT0id2hpdGVzcGFjZSIsZS5VbnBhcnNlZD0idW5wYXJzZWQifShufHwobj17fSkpO2NvbnN0IHM9Lyg/OlteLStcLypeXHNdJ3xbYS16QS1aMC05X1x1MDM3MC1cdTFGRkZfXHUyRTgwLVx1RkZGRl0pKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMDIwXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXyF8Oi4mXSkqfCcuKz8nLyxsPShlPSgwLGkuaXNGZWF0dXJlRW5hYmxlZCkoImFsbG93X3RyYWlsaW5nX3doaXRlc3BhY2VfaW5fbnVtYmVyX3Rva2VuIikpPT4oe251bWJlcjplPy9cZCsoPzpcLlxkKnwoPyFbYS16QS1aMC05XyE6LiZdKSkoPzpccyooPz1ccyokKSk/fFwuXGQrKD86XHMqKD89XHMqJCkpPy86L1xkKyg/OlwuXGQqfCg/IVthLXpBLVowLTlfITouJl0pKXxcLlxkKy8saW5jb21wbGV0ZU51bWJlcjovXC4vLHN5bWJvbDpzLGluY29tcGxldGVTeW1ib2w6LydbXiddKi8sc2VwYXJhdG9yUHJlZml4OnIuU0VQQVJBVE9SX1BSRUZJWCxvcGVuQnJhY2U6IigiLGNsb3NlQnJhY2U6IikiLHBsdXM6IisiLG1pbnVzOiItIixtdWx0aXBseToiKiIsZGl2aWRlOiIvIixwb3dlcjoiXiIsd2hpdGVzcGFjZTovW1wwLVx4MjBcc10rLyx1bnBhcnNlZDpudWxsfSk7ZnVuY3Rpb24gYyhlLHQ9bCgpKXtpZighZSlyZXR1cm5bXTtjb25zdCBvPVtdLG49T2JqZWN0LmtleXModCk7bGV0IHIKO2NvbnN0IGk9KChlPWwoKSk9Pm5ldyBSZWdFeHAoT2JqZWN0LnZhbHVlcyhlKS5tYXAoKGU9PntyZXR1cm4gbnVsbD09PWU/IiI6YCgkeyJzdHJpbmciPT10eXBlb2YgZT8odD1lLHQucmVwbGFjZSgvW1xeJCgpW1xde30qKz98XFxdL2csIlxcJCYiKSk6ZS5zb3VyY2V9KWA7dmFyIHR9KSkuZmlsdGVyKChlPT4iIiE9PWUpKS5jb25jYXQoIi4iKS5qb2luKCJ8IiksImciKSkodCk7Zm9yKDtyPWkuZXhlYyhlKTspe2xldCBlPSExO2ZvcihsZXQgdD1uLmxlbmd0aDt0LS07KWlmKHJbdCsxXSl7blt0XSYmby5wdXNoKHt2YWx1ZTpyW3QrMV0sdHlwZTpuW3RdLHByZWNlZGVuY2U6MCxvZmZzZXQ6ci5pbmRleH0pLGU9ITA7YnJlYWt9ZXx8by5wdXNoKHt2YWx1ZTpyWzBdLHR5cGU6InVucGFyc2VkIixwcmVjZWRlbmNlOjAsb2Zmc2V0OnIuaW5kZXh9KX1yZXR1cm4gb31mdW5jdGlvbiB1KGUpe3JldHVybiJwbHVzIj09PWV8fCJtaW51cyI9PT1lfHwibXVsdGlwbHkiPT09ZXx8ImRpdmlkZSI9PT1lfHwicG93ZXIiPT09ZX1mdW5jdGlvbiBhKGUpe3JldHVybiBlLmxlbmd0aD4xJiZlLnNvbWUoKGU9PnUoZS50eXBlKSkpfX0sOTY5MTY4KGUsdCxvKXtvLmQodCx7ZGV0ZWN0QXV0b0RpcmVjdGlvbjooKT0+bi5kZXRlY3RBdXRvRGlyZWN0aW9uLGlzUnRsOigpPT5uLmlzUnRsfSk7byg2MTAyNjgpO3ZhciBuPW8oMTE1MjkzKX0sODExNDk5KGUsdCxvKXtmdW5jdGlvbiBuKGUpe3JldHVybiBlLnJlcGxhY2UoInt7c2hvcnROYW1lfX0iLCJ7dHZzeW1ib2x9IikucmVwbGFjZSgie3twcm9OYW1lfX0iLCJ7dHZwcm9zeW1ib2x9IikucmVwbGFjZSgie3tzeW1ib2x9fSIsInt0dnN5bWJvbH0iKS5yZXBsYWNlKCJ7e2V4Y2hhbmdlfX0iLCJ7dHZleGNoYW5nZX0iKX1vLmQodCx7cmVwbGFjZU9sZFBsYWNlaG9sZGVyczooKT0+bn0pfSw0MDMzNzAoZSx0LG8pe28uZCh0LHttYWtlV2lkZ2V0U3ltYm9sTGluazooKT0+c30pO3ZhciBuPW8oODExNDk5KSxyPW8oOTExMzI3KSxpPW8oODUxNDU4KTtmdW5jdGlvbiBzKGUpe2NvbnN0e2N1c3RvbVVybDp0LHV0bUluZm86byxwYXRoOnMsdHlwZXNwZWNzOmx9PWU7bGV0IGMsdSxhPWUuc3ltYm9sO2NvbnN0IG09KDAsaS50b2tlbml6ZSkoYSk7cmV0dXJuKDAsaS5pc1NwcmVhZCkobSkmJihhPW0uZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV8fGEpLGEuaW5jbHVkZXMoIjoiKT9bdSxjXT1hLnNwbGl0KCI6Iik6Yz1hLHQ/KDAsci5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKCgwLG4ucmVwbGFjZU9sZFBsYWNlaG9sZGVycykodCkse3Byb05hbWU6YX0pOigwLHIubWFrZVN5bWJvbFBhZ2VVcmwpKHtzaG9ydE5hbWU6YyxleGNoYW5nZTp1LHR5cGVzcGVjczpsfSxvLHZvaWQgMCxzKX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.136Z","timestamp":1785154591136,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785154591.1.1785154591..b177bc9a-34b2-4836-9972-6f558777cbde..f8ff18cc-c06f-46ed-8329-31a0a2ab1153.1785154591101.1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-dc9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bc4b2b46c2487a68dd665486508b886f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":3529,"size_decoded":2690,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1999)","md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-27T14:18:36.428394Z","times_seen":1506,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3860.5f16537eaf7e20020b4e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.278Z","timestamp":1785154590278,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3860.5f16537eaf7e20020b4e.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-2b4e0\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:52\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 41014ba8555c8081ed335ed4da6c1be5\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":177376,"size_decoded":63831,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"34d9a9e23b80a74cac96a1fdc8b17713","sha1":"b393728b7ea8e6ac005f6c86b488e02071f63301","sha256":"2c657551334765e1a746645655755ad8c33a53aaff89573d035b0970a0cd7be9","sha512":"a41a131efa17f1f6100df8503263cbc5d532cfa555a21bb62d75081258dcdd7facb5c88388e83d049df3d20dc1f3928e4dacc11d15c31dc03abf1ece32185708","ssdeep":"3072:pp9tDEUX4jYZc8poacue363JC53xnW9QGg7WXzQ0dwyw:prtD5ojOHpiue363JC53xnW9QGg7WXxg","tlshash":"5b04d6963296e06213f185f908710442f31ab989394b85acf5bc9dd73c9ac4e72bdf78","first_seen":"2026-07-23T13:38:20.551065Z","last_seen":"2026-07-27T14:22:59.541559Z","times_seen":248,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szODYwLDc4MzEyXSx7NDkxODYodCxpKXt2YXIgcyxlLGgsbjtuPWZ1bmN0aW9uKHQpe3ZhciBpPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcscz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbih0KXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09aS5jYWxsKHQpfTtmdW5jdGlvbiBlKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0fWZ1bmN0aW9uIGgodCl7cmV0dXJuIHQucmVwbGFjZSgvW1wtXFtcXXt9KCkqKz8uLFxcXF4kfCNcc10vZywiXFwkJiIpfWZ1bmN0aW9uIG4odCxpKXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0JiZpIGluIHR9dmFyIHI9UmVnRXhwLnByb3RvdHlwZS50ZXN0LG89L1xTLztmdW5jdGlvbiBsKHQpe3JldHVybiFmdW5jdGlvbih0LGkpe3JldHVybiByLmNhbGwodCxpKX0obyx0KX12YXIgYT17IiYiOiImYW1wOyIsIjwiOiImbHQ7IiwiPiI6IiZndDsiLCciJzoiJnF1b3Q7IiwiJyI6IiYjMzk7IiwiLyI6IiYjeDJGOyIsImAiOiImI3g2MDsiLCI9IjoiJiN4M0Q7In0sdT0vXHMqLyxjPS9ccysvLGY9L1xzKj0vLGQ9L1xzKlx9LyxtPS8jfFxefFwvfD58XHt8Jnw9fCEvO2Z1bmN0aW9uIHAodCl7dGhpcy5zdHJpbmc9dCx0aGlzLnRhaWw9dCx0aGlzLnBvcz0wfWZ1bmN0aW9uIGcodCxpKXt0aGlzLnZpZXc9dCx0aGlzLmNhY2hlPXsiLiI6dGhpcy52aWV3fSx0aGlzLnBhcmVudD1pfWZ1bmN0aW9uIHYoKXt0aGlzLmNhY2hlPXt9fXAucHJvdG90eXBlLmVvcz1mdW5jdGlvbigpe3JldHVybiIiPT09dGhpcy50YWlsfSxwLnByb3RvdHlwZS5zY2FuPWZ1bmN0aW9uKHQpe3ZhciBpPXRoaXMudGFpbC5tYXRjaCh0KTtpZighaXx8MCE9PWkuaW5kZXgpcmV0dXJuIiI7dmFyIHM9aVswXTtyZXR1cm4gdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcocy5sZW5ndGgpLHRoaXMucG9zKz1zLmxlbmd0aCxzfSxwLnByb3RvdHlwZS5zY2FuVW50aWw9ZnVuY3Rpb24odCl7dmFyIGkscz10aGlzLnRhaWwuc2VhcmNoKHQpO3N3aXRjaChzKXtjYXNlLTE6aT10aGlzLnRhaWwsdGhpcy50YWlsPSIiO2JyZWFrO2Nhc2UgMDppPSIiO2JyZWFrO2RlZmF1bHQ6aT10aGlzLnRhaWwuc3Vic3RyaW5nKDAscyksdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcocyl9cmV0dXJuIHRoaXMucG9zKz1pLmxlbmd0aCxpfSxnLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgZyh0LHRoaXMpfSxnLnByb3RvdHlwZS5sb29rdXA9ZnVuY3Rpb24odCl7dmFyIGkscz10aGlzLmNhY2hlO2lmKHMuaGFzT3duUHJvcGVydHkodCkpaT1zW3RdO2Vsc2V7Zm9yKHZhciBoLHIsbz10aGlzLGw9ITE7bzspe2lmKHQuaW5kZXhPZigiLiIpPjApZm9yKGk9by52aWV3LGg9dC5zcGxpdCgiLiIpLHI9MDtudWxsIT1pJiZyPGgubGVuZ3RoOylyPT09aC5sZW5ndGgtMSYmKGw9bihpLGhbcl0pKSxpPWlbaFtyKytdXTtlbHNlIGk9by52aWV3W3RdLGw9bihvLnZpZXcsdCk7aWYobClicmVhaztvPW8ucGFyZW50fXNbdF09aX1yZXR1cm4gZShpKSYmKGk9aS5jYWxsKHRoaXMudmlldykpLGl9LHYucHJvdG90eXBlLmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXt0aGlzLmNhY2hlPXt9fSx2LnByb3RvdHlwZS5wYXJzZT1mdW5jdGlvbihpLGUpe3ZhciBuPXRoaXMuY2FjaGUscj1uW2ldO3JldHVybiBudWxsPT1yJiYocj1uW2ldPWZ1bmN0aW9uKGksZSl7aWYoIWkpcmV0dXJuW107dmFyIG4scixvLGE9W10sZz1bXSx2PVtdLGI9ITEsdz0hMTtmdW5jdGlvbiBNKCl7aWYoYiYmIXcpZm9yKDt2Lmxlbmd0aDspZGVsZXRlIGdbdi5wb3AoKV07ZWxzZSB2PVtdO2I9ITEsdz0hMX1mdW5jdGlvbiB5KHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKHQ9dC5zcGxpdChjLDIpKSwhcyh0KXx8MiE9PXQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB0YWdzOiAiK3QpO249bmV3IFJlZ0V4cChoKHRbMF0pKyJcXHMqIikscj1uZXcgUmVnRXhwKCJcXHMqIitoKHRbMV0pKSxvPW5ldyBSZWdFeHAoIlxccyoiK2goIn0iK3RbMV0pKX15KGV8fHQudGFncyk7Zm9yKHZhciB4LFMsQyxfLGssRSxOPW5ldyBwKGkpOyFOLmVvcygpOyl7aWYoeD1OLnBvcyxDPU4uc2NhblVudGlsKG4pKWZvcih2YXIgVD0wLHo9Qy5sZW5ndGg7VDx6OysrVClsKF89Qy5jaGFyQXQoVCkpP3YucHVzaChnLmxlbmd0aCk6dz0hMCxnLnB1c2goWyJ0ZXh0IixfLHgseCsxXSkseCs9MSwiXG4iPT09XyYmTSgpO2lmKCFOLnNjYW4obikpYnJlYWs7aWYoYj0hMCxTPU4uc2NhbihtKXx8Im5hbWUiLE4uc2Nhbih1KSwiPSI9PT1TPyhDPU4uc2NhblVudGlsKGYpLE4uc2NhbihmKSxOLnNjYW5VbnRpbChyKSk6InsiPT09Uz8oQz1OLnNjYW5VbnRpbChvKSxOLnNjYW4oZCksTi5zY2FuVW50aWwociksUz0iJiIpOkM9Ti5zY2FuVW50aWwociksIU4uc2NhbihyKSl0aHJvdyBuZXcgRXJyb3IoIlVuY2xvc2VkIHRhZyBhdCAiK04ucG9zKTtpZihrPVtTLEMseCxOLnBvc10sZy5wdXNoKGspLCIjIj09PVN8fCJeIj09PVMpYS5wdXNoKGspO2Vsc2UgaWYoIi8iPT09Uyl7aWYoIShFPWEucG9wKCkpKXRocm93IG5ldyBFcnJvcignVW5vcGVuZWQgc2VjdGlvbiAiJytDKyciIGF0ICcreCk7aWYoRVsxXSE9PUMpdGhyb3cgbmV3IEVycm9yKCdVbmNsb3NlZCBzZWN0aW9uICInK0VbMV0rJyIgYXQgJyt4KX1lbHNlIm5hbWUiPT09U3x8InsiPT09U3x8IiYiPT09Uz93PSEwOiI9Ij09PVMmJnkoQyl9aWYoRT1hLnBvcCgpKXRocm93IG5ldyBFcnJvcignVW5jbG9zZWQgc2VjdGlvbiAiJytFWzFdKyciIGF0ICcrTi5wb3MpO3JldHVybiBmdW5jdGlvbih0KXtmb3IodmFyIGkscz1bXSxlPXMsaD1bXSxuPTAscj10Lmxlbmd0aDtuPHI7KytuKXN3aXRjaCgoaT10W25dKVswXSl7Y2FzZSIjIjpjYXNlIl4iOmUucHVzaChpKSxoLnB1c2goaSksZT1pWzRdPVtdO2JyZWFrO2Nhc2UiLyI6aC5wb3AoKVs1XT1pWzJdLGU9aC5sZW5ndGg+MD9oW2gubGVuZ3RoLTFdWzRdOnM7YnJlYWs7ZGVmYXVsdDplLnB1c2goaSl9cmV0dXJuIHMKfShmdW5jdGlvbih0KXtmb3IodmFyIGkscyxlPVtdLGg9MCxuPXQubGVuZ3RoO2g8bjsrK2gpKGk9dFtoXSkmJigidGV4dCI9PT1pWzBdJiZzJiYidGV4dCI9PT1zWzBdPyhzWzFdKz1pWzFdLHNbM109aVszXSk6KGUucHVzaChpKSxzPWkpKTtyZXR1cm4gZX0oZykpfShpLGUpKSxyfSx2LnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24odCxpLHMpe3ZhciBlPXRoaXMucGFyc2UodCksaD1pIGluc3RhbmNlb2YgZz9pOm5ldyBnKGkpO3JldHVybiB0aGlzLnJlbmRlclRva2VucyhlLGgscyx0KX0sdi5wcm90b3R5cGUucmVuZGVyVG9rZW5zPWZ1bmN0aW9uKHQsaSxzLGUpe2Zvcih2YXIgaCxuLHIsbz0iIixsPTAsYT10Lmxlbmd0aDtsPGE7KytsKXI9dm9pZCAwLCIjIj09PShuPShoPXRbbF0pWzBdKT9yPXRoaXMucmVuZGVyU2VjdGlvbihoLGkscyxlKToiXiI9PT1uP3I9dGhpcy5yZW5kZXJJbnZlcnRlZChoLGkscyxlKToiPiI9PT1uP3I9dGhpcy5yZW5kZXJQYXJ0aWFsKGgsaSxzLGUpOiImIj09PW4/cj10aGlzLnVuZXNjYXBlZFZhbHVlKGgsaSk6Im5hbWUiPT09bj9yPXRoaXMuZXNjYXBlZFZhbHVlKGgsaSk6InRleHQiPT09biYmKHI9dGhpcy5yYXdWYWx1ZShoKSksdm9pZCAwIT09ciYmKG8rPXIpO3JldHVybiBvfSx2LnByb3RvdHlwZS5yZW5kZXJTZWN0aW9uPWZ1bmN0aW9uKHQsaSxoLG4pe3ZhciByPXRoaXMsbz0iIixsPWkubG9va3VwKHRbMV0pO2lmKGwpe2lmKHMobCkpZm9yKHZhciBhPTAsdT1sLmxlbmd0aDthPHU7KythKW8rPXRoaXMucmVuZGVyVG9rZW5zKHRbNF0saS5wdXNoKGxbYV0pLGgsbik7ZWxzZSBpZigib2JqZWN0Ij09dHlwZW9mIGx8fCJzdHJpbmciPT10eXBlb2YgbHx8Im51bWJlciI9PXR5cGVvZiBsKW8rPXRoaXMucmVuZGVyVG9rZW5zKHRbNF0saS5wdXNoKGwpLGgsbik7ZWxzZSBpZihlKGwpKXtpZigic3RyaW5nIiE9dHlwZW9mIG4pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgdXNlIGhpZ2hlci1vcmRlciBzZWN0aW9ucyB3aXRob3V0IHRoZSBvcmlnaW5hbCB0ZW1wbGF0ZSIpO251bGwhPShsPWwuY2FsbChpLnZpZXcsbi5zbGljZSh0WzNdLHRbNV0pLChmdW5jdGlvbih0KXtyZXR1cm4gci5yZW5kZXIodCxpLGgpfSkpKSYmKG8rPWwpfWVsc2Ugbys9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxpLGgsbik7cmV0dXJuIG99fSx2LnByb3RvdHlwZS5yZW5kZXJJbnZlcnRlZD1mdW5jdGlvbih0LGksZSxoKXt2YXIgbj1pLmxvb2t1cCh0WzFdKTtpZighbnx8cyhuKSYmMD09PW4ubGVuZ3RoKXJldHVybiB0aGlzLnJlbmRlclRva2Vucyh0WzRdLGksZSxoKX0sdi5wcm90b3R5cGUucmVuZGVyUGFydGlhbD1mdW5jdGlvbih0LGkscyl7aWYocyl7dmFyIGg9ZShzKT9zKHRbMV0pOnNbdFsxXV07cmV0dXJuIG51bGwhPWg/dGhpcy5yZW5kZXJUb2tlbnModGhpcy5wYXJzZShoKSxpLHMsaCk6dm9pZCAwfX0sdi5wcm90b3R5cGUudW5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24odCxpKXt2YXIgcz1pLmxvb2t1cCh0WzFdKTtpZihudWxsIT1zKXJldHVybiBzfSx2LnByb3RvdHlwZS5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24oaSxzKXt2YXIgZT1zLmxvb2t1cChpWzFdKTtpZihudWxsIT1lKXJldHVybiB0LmVzY2FwZShlKX0sdi5wcm90b3R5cGUucmF3VmFsdWU9ZnVuY3Rpb24odCl7cmV0dXJuIHRbMV19LHQubmFtZT0ibXVzdGFjaGUuanMiLHQudmVyc2lvbj0iMi4yLjEiLHQudGFncz1bInt7IiwifX0iXTt2YXIgYj1uZXcgdjt0LmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXtyZXR1cm4gYi5jbGVhckNhY2hlKCl9LHQucGFyc2U9ZnVuY3Rpb24odCxpKXtyZXR1cm4gYi5wYXJzZSh0LGkpfSx0LnJlbmRlcj1mdW5jdGlvbih0LGksZSl7aWYoInN0cmluZyIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgdGVtcGxhdGUhIFRlbXBsYXRlIHNob3VsZCBiZSBhICJzdHJpbmciIGJ1dCAiJysocyhoPXQpPyJhcnJheSI6dHlwZW9mIGgpKyciIHdhcyBnaXZlbiBhcyB0aGUgZmlyc3QgYXJndW1lbnQgZm9yIG11c3RhY2hlI3JlbmRlcih0ZW1wbGF0ZSwgdmlldywgcGFydGlhbHMpJyk7dmFyIGg7cmV0dXJuIGIucmVuZGVyKHQsaSxlKX0sdC50b19odG1sPWZ1bmN0aW9uKGkscyxoLG4pe3ZhciByPXQucmVuZGVyKGkscyxoKTtpZighZShuKSlyZXR1cm4gcjtuKHIpfSx0LmVzY2FwZT1mdW5jdGlvbih0KXtyZXR1cm4gU3RyaW5nKHQpLnJlcGxhY2UoL1smPD4iJ2A9XC9dL2csKGZ1bmN0aW9uKHQpe3JldHVybiBhW3RdfSkpfSx0LlNjYW5uZXI9cCx0LkNvbnRleHQ9Zyx0LldyaXRlcj12fSxpJiYic3RyaW5nIiE9dHlwZW9mIGkubm9kZU5hbWU/bihpKTooZT1baV0sdm9pZCAwPT09KGg9ImZ1bmN0aW9uIj09dHlwZW9mKHM9bik/cy5hcHBseShpLGUpOnMpfHwodC5leHBvcnRzPWgpKX0sODI5MTgwKHQsaSxzKXsidXNlIHN0cmljdCI7dmFyIGU9cyg2MDE4NDEpO2NvbnN0IGg9L3soXHcrKX0vZyxuPS97KFxkKyl9L2c7U3RyaW5nLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oLi4udCl7Y29uc3QgaT0oMCxlLmlzT2JqZWN0KSh0WzBdKSxzPWk/aDpuLHI9aT8oaSxzKT0+e2NvbnN0IGU9dFswXTtyZXR1cm4gdm9pZCAwIT09ZVtzXT9lW3NdOml9OihpLHMpPT57Y29uc3QgZT1wYXJzZUludChzLDEwKSxoPXRbZV07cmV0dXJuIHZvaWQgMCE9PWg/aDppfTtyZXR1cm4gdGhpcy5yZXBsYWNlKHMscil9fSwzNjMyNjkodCxpLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoaSx7bW9iaWxldG91Y2g6KCk9Pmgsc2V0Q2xhc3NlczooKT0+bn0pO3ZhciBlPXMoNzM4NDU4KTtjb25zdCBoPWUubW9iaWxldG91Y2g7ZS50b3VjaDtmdW5jdGlvbiBuKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoZS50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLGUubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwzMTg5NzQodCxpLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoaSx7Q2hlY2tNb2JpbGU6KCk9PmEsaXNEZXNrdG9wQXBwOigpPT5vLGlzTWFjOigpPT5yLGlzU3ltcGhvbnlFbWJlZDooKT0+bCwKb25XaWRnZXQ6KCk9Pmgub25XaWRnZXQsc3VwcG9ydFRvdWNoOigpPT51fSk7dmFyIGU9cyg3Mzg0NTgpLGg9cygzNzcyMjYpO2NvbnN0IG49d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307ZnVuY3Rpb24gcigpe3JldHVybiBlLmlzTWFjfWZ1bmN0aW9uIG8oKXtyZXR1cm4vVFZEZXNrdG9wL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KX1mdW5jdGlvbiBsKCl7cmV0dXJuIG4uaXNTeW1waG9ueXx8ITF9Y29uc3QgYT17QW5kcm9pZDooKT0+ZS5pc0FuZHJvaWQsQmxhY2tCZXJyeTooKT0+ZS5pc0JsYWNrQmVycnksaU9TOigpPT5lLmlzSU9TLE9wZXJhOigpPT5lLmlzT3BlcmFNaW5pLGlzSVBhZDooKT0+ZS5pc0lQYWQsYW55OigpPT5lLmlzQW55TW9iaWxlfTtmdW5jdGlvbiB1KCl7cmV0dXJuIGUubW9iaWxldG91Y2h8fGUudG91Y2h8fGUuaXNBbnlNb2JpbGV9bi5pc01vYmlsZT1hLG4ub25XaWRnZXQ9aC5vbldpZGdldDtlLmlzQ2hyb21lLGUuaXNGRixlLmlzRWRnZSxlLmlzU2FmYXJpfSwxODUyNzEodCxpLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoaSx7dDooKT0+ZS50fSk7cyg4MjkxODApO3ZhciBlPXMoNzgzMjU0KX0sNjc4MzEyKHQsaSxzKXsidXNlIHN0cmljdCI7cy5kKGkse0FyZWFTZXJpZXM6KCk9PmtoLEJhclNlcmllczooKT0+emgsQmFzZWxpbmVTZXJpZXM6KCk9PlNoLENhbmRsZXN0aWNrU2VyaWVzOigpPT5SaCxDb2xvclR5cGU6KCk9PlZpLENyb3NzaGFpck1vZGU6KCk9PlUsSGlzdG9ncmFtU2VyaWVzOigpPT5xaCxMaW5lU2VyaWVzOigpPT5naCxMaW5lU3R5bGU6KCk9PnIsTWlzbWF0Y2hEaXJlY3Rpb246KCk9Pnp0LFByaWNlU2NhbGVNb2RlOigpPT53aSxUaWNrTWFya1R5cGU6KCk9PkJpLGNyZWF0ZUNoYXJ0RXg6KCk9PnRoLGNyZWF0ZVRleHRXYXRlcm1hcms6KCk9PkhoLGN1c3RvbVNlcmllc0RlZmF1bHRPcHRpb25zOigpPT5HaCxkZWZhdWx0SG9yelNjYWxlQmVoYXZpb3I6KCk9PmlofSk7dmFyIGU9cyg5MTg3NzkpO2NvbnN0IGg9e3RpdGxlOiIiLHZpc2libGU6ITAsaGl0VGVzdFRvbGVyYW5jZTozLGxhc3RWYWx1ZVZpc2libGU6ITAscHJpY2VMaW5lVmlzaWJsZTohMCxwcmljZUxpbmVTb3VyY2U6MCxwcmljZUxpbmVXaWR0aDoxLHByaWNlTGluZUNvbG9yOiIiLHByaWNlTGluZVN0eWxlOjIsYmFzZUxpbmVWaXNpYmxlOiEwLGJhc2VMaW5lV2lkdGg6MSxiYXNlTGluZUNvbG9yOiIjQjJCNUJFIixiYXNlTGluZVN0eWxlOjAscHJpY2VGb3JtYXQ6e3R5cGU6InByaWNlIixwcmVjaXNpb246MixtaW5Nb3ZlOi4wMX19O3ZhciBuLHIsbztmdW5jdGlvbiBsKHQsaSl7Y29uc3Qgcz1mdW5jdGlvbih0LGkpe3N3aXRjaCh0KXtjYXNlIDA6ZGVmYXVsdDpyZXR1cm5bXTtjYXNlIDE6cmV0dXJuW2ksaV07Y2FzZSAyOnJldHVyblsyKmksMippXTtjYXNlIDM6cmV0dXJuWzYqaSw2KmldO2Nhc2UgNDpyZXR1cm5baSw0KmldfX0oaSx0LmxpbmVXaWR0aCk7cmV0dXJuIHQuc2V0TGluZURhc2gocyksc31mdW5jdGlvbiBhKHQsaSxzLGUpe3QuYmVnaW5QYXRoKCk7Y29uc3QgaD10LmxpbmVXaWR0aCUyPy41OjA7dC5tb3ZlVG8ocyxpK2gpLHQubGluZVRvKGUsaStoKSx0LnN0cm9rZSgpfWZ1bmN0aW9uIHUodCxpKXtpZighdCl0aHJvdyBuZXcgRXJyb3IoIkFzc2VydGlvbiBmYWlsZWQiKyhpPyI6ICIraToiIikpfWZ1bmN0aW9uIGModCl7aWYodm9pZCAwPT09dCl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIGlzIHVuZGVmaW5lZCIpO3JldHVybiB0fWZ1bmN0aW9uIGYodCl7aWYobnVsbD09PXQpdGhyb3cgbmV3IEVycm9yKCJWYWx1ZSBpcyBudWxsIik7cmV0dXJuIHR9ZnVuY3Rpb24gZCh0KXtyZXR1cm4gZihjKHQpKX0obz1ufHwobj17fSkpW28uU2ltcGxlPTBdPSJTaW1wbGUiLG9bby5XaXRoU3RlcHM9MV09IldpdGhTdGVwcyIsb1tvLkN1cnZlZD0yXT0iQ3VydmVkIixmdW5jdGlvbih0KXt0W3QuU29saWQ9MF09IlNvbGlkIix0W3QuRG90dGVkPTFdPSJEb3R0ZWQiLHRbdC5EYXNoZWQ9Ml09IkRhc2hlZCIsdFt0LkxhcmdlRGFzaGVkPTNdPSJMYXJnZURhc2hlZCIsdFt0LlNwYXJzZURvdHRlZD00XT0iU3BhcnNlRG90dGVkIn0ocnx8KHI9e30pKTtjbGFzcyBte2NvbnN0cnVjdG9yKCl7dGhpcy50PVtdfWkodCxpLHMpe2NvbnN0IGU9e2g6dCxsOmksbzohMD09PXN9O3RoaXMudC5wdXNoKGUpfV8odCl7Y29uc3QgaT10aGlzLnQuZmluZEluZGV4KChpPT50PT09aS5oKSk7aT4tMSYmdGhpcy50LnNwbGljZShpLDEpfXUodCl7dGhpcy50PXRoaXMudC5maWx0ZXIoKGk9PmkubCE9PXQpKX1wKHQsaSxzKXtjb25zdCBlPVsuLi50aGlzLnRdO3RoaXMudD10aGlzLnQuZmlsdGVyKCh0PT4hdC5vKSksZS5mb3JFYWNoKChlPT5lLmgodCxpLHMpKSl9digpe3JldHVybiB0aGlzLnQubGVuZ3RoPjB9bSgpe3RoaXMudD1bXX19ZnVuY3Rpb24gcCh0LC4uLmkpe2Zvcihjb25zdCBzIG9mIGkpZm9yKGNvbnN0IGkgaW4gcyl2b2lkIDAhPT1zW2ldJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocyxpKSYmIVsiX19wcm90b19fIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiXS5pbmNsdWRlcyhpKSYmKCJvYmplY3QiIT10eXBlb2Ygc1tpXXx8dm9pZCAwPT09dFtpXXx8QXJyYXkuaXNBcnJheShzW2ldKT90W2ldPXNbaV06cCh0W2ldLHNbaV0pKTtyZXR1cm4gdH1mdW5jdGlvbiBnKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdCYmaXNGaW5pdGUodCl9ZnVuY3Rpb24gdih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQlMT09MH1mdW5jdGlvbiBiKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdH1mdW5jdGlvbiB3KHQpe3JldHVybiJib29sZWFuIj09dHlwZW9mIHR9ZnVuY3Rpb24gTSh0KXtjb25zdCBpPXQ7aWYoIWl8fCJvYmplY3QiIT10eXBlb2YgaSlyZXR1cm4gaTtsZXQgcyxlLGg7Zm9yKGUgaW4gcz1BcnJheS5pc0FycmF5KGkpP1tdOnt9LGkpaS5oYXNPd25Qcm9wZXJ0eShlKSYmKGg9aVtlXSxzW2VdPWgmJiJvYmplY3QiPT10eXBlb2YgaD9NKGgpOmgpO3JldHVybiBzfWZ1bmN0aW9uIHkodCl7cmV0dXJuIG51bGwhPT10fQpmdW5jdGlvbiB4KHQpe3JldHVybiBudWxsPT09dD92b2lkIDA6dH1jb25zdCBTPSItYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdUcmVidWNoZXQgTVMnLCBSb2JvdG8sIFVidW50dSwgc2Fucy1zZXJpZiI7ZnVuY3Rpb24gQyh0LGkscyl7cmV0dXJuIHZvaWQgMD09PWkmJihpPVMpLGAke3M9dm9pZCAwIT09cz9gJHtzfSBgOiIifSR7dH1weCAke2l9YH1jbGFzcyBfe2NvbnN0cnVjdG9yKHQpe3RoaXMuTT17UzoxLEM6NSxrOk5hTixQOiIiLFQ6IiIsUjoiIixEOiIiLEk6MCxWOjAsQjowLEE6MCxMOjB9LHRoaXMuTz10fU4oKXtjb25zdCB0PXRoaXMuTSxpPXRoaXMuRigpLHM9dGhpcy5XKCk7cmV0dXJuIHQuaz09PWkmJnQuVD09PXN8fCh0Lms9aSx0LlQ9cyx0LlA9QyhpLHMpLHQuQT0yLjUvMTIqaSx0Lkk9dC5BLHQuVj1pLzEyKnQuQyx0LkI9aS8xMip0LkMsdC5MPTApLHQuUj10aGlzLkgoKSx0LkQ9dGhpcy5VKCksdGhpcy5NfUgoKXtyZXR1cm4gdGhpcy5PLk4oKS5sYXlvdXQudGV4dENvbG9yfVUoKXtyZXR1cm4gdGhpcy5PLiQoKX1GKCl7cmV0dXJuIHRoaXMuTy5OKCkubGF5b3V0LmZvbnRTaXplfVcoKXtyZXR1cm4gdGhpcy5PLk4oKS5sYXlvdXQuZm9udEZhbWlseX19ZnVuY3Rpb24gayh0KXtyZXR1cm4gdDwwPzA6dD4yNTU/MjU1Ok1hdGgucm91bmQodCl8fDB9ZnVuY3Rpb24gRSh0KXtyZXR1cm4uMTk5KnRbMF0rLjY4Nyp0WzFdKy4xMTQqdFsyXX1jbGFzcyBOe2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5qPW5ldyBNYXAsdGhpcy5xPXQsaSYmKHRoaXMuaj1pKX1ZKHQsaSl7aWYoInRyYW5zcGFyZW50Ij09PXQpcmV0dXJuIHQ7Y29uc3Qgcz10aGlzLksodCksZT1zWzNdO3JldHVybmByZ2JhKCR7c1swXX0sICR7c1sxXX0sICR7c1syXX0sICR7aSplfSlgfVoodCl7Y29uc3QgaT10aGlzLksodCk7cmV0dXJue0c6YHJnYigke2lbMF19LCAke2lbMV19LCAke2lbMl19KWAsWDpFKGkpPjE2MD8iYmxhY2siOiJ3aGl0ZSJ9fUoodCl7cmV0dXJuIEUodGhpcy5LKHQpKX10dCh0LGkscyl7Y29uc3RbZSxoLG4scl09dGhpcy5LKHQpLFtvLGwsYSx1XT10aGlzLksoaSksYz1bayhlK3MqKG8tZSkpLGsoaCtzKihsLWgpKSxrKG4rcyooYS1uKSksKGY9citzKih1LXIpLGY8PTB8fGY+MT9NYXRoLm1pbihNYXRoLm1heChmLDApLDEpOk1hdGgucm91bmQoMWU0KmYpLzFlNCldO3ZhciBmO3JldHVybmByZ2JhKCR7Y1swXX0sICR7Y1sxXX0sICR7Y1syXX0sICR7Y1szXX0pYH1LKHQpe2NvbnN0IGk9dGhpcy5qLmdldCh0KTtpZihpKXJldHVybiBpO2NvbnN0IHM9ZnVuY3Rpb24odCl7Y29uc3QgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaSksaS5zdHlsZS5jb2xvcj10O2NvbnN0IHM9d2luZG93LmdldENvbXB1dGVkU3R5bGUoaSkuY29sb3I7cmV0dXJuIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaSksc30odCksZT1zLm1hdGNoKC9ecmdiYT9ccypcKChcZCspLFxzKihcZCspLFxzKihcZCspKD86LFxzKihcZCpcLj9cZCspKT9cKSQvKTtpZighZSl7aWYodGhpcy5xLmxlbmd0aClmb3IoY29uc3QgaSBvZiB0aGlzLnEpe2NvbnN0IHM9aSh0KTtpZihzKXJldHVybiB0aGlzLmouc2V0KHQscyksc310aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBwYXJzZSBjb2xvcjogJHt0fWApfWNvbnN0IGg9W3BhcnNlSW50KGVbMV0sMTApLHBhcnNlSW50KGVbMl0sMTApLHBhcnNlSW50KGVbM10sMTApLGVbNF0/cGFyc2VGbG9hdChlWzRdKToxXTtyZXR1cm4gdGhpcy5qLnNldCh0LGgpLGh9fWNsYXNzIFR7Y29uc3RydWN0b3IoKXt0aGlzLml0PVtdfW50KHQpe3RoaXMuaXQ9dH1zdCh0LGkscyl7dGhpcy5pdC5mb3JFYWNoKChlPT57ZS5zdCh0LGkscyl9KSl9fWNsYXNzIHp7c3QodCxpLHMpe3QudXNlQml0bWFwQ29vcmRpbmF0ZVNwYWNlKCh0PT50aGlzLmV0KHQsaSxzKSkpfX1jbGFzcyBJIGV4dGVuZHMgentjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5ydD1udWxsfWh0KHQpe3RoaXMucnQ9dH1ldCh7Y29udGV4dDp0LGhvcml6b250YWxQaXhlbFJhdGlvOmksdmVydGljYWxQaXhlbFJhdGlvOnN9KXtpZihudWxsPT09dGhpcy5ydHx8bnVsbD09PXRoaXMucnQubHQpcmV0dXJuO2NvbnN0IGU9dGhpcy5ydC5sdCxoPXRoaXMucnQsbj1NYXRoLm1heCgxLE1hdGguZmxvb3IoaSkpJTIvMixyPXI9Pnt0LmJlZ2luUGF0aCgpO2ZvcihsZXQgbz1lLnRvLTE7bz49ZS5mcm9tOy0tbyl7Y29uc3QgZT1oLm90W29dLGw9TWF0aC5yb3VuZChlLl90KmkpK24sYT1lLnV0KnMsdT1yKnMrbjt0Lm1vdmVUbyhsLGEpLHQuYXJjKGwsYSx1LDAsMipNYXRoLlBJKX10LmZpbGwoKX07aC5jdD4wJiYodC5maWxsU3R5bGU9aC5kdCxyKGguZnQraC5jdCkpLHQuZmlsbFN0eWxlPWgudnQscihoLmZ0KX19ZnVuY3Rpb24gUCgpe3JldHVybntvdDpbe190OjAsdXQ6MCx3dDowLE10OjB9XSx2dDoiIixkdDoiIixmdDowLGN0OjAsbHQ6bnVsbH19Y29uc3QgUj17ZnJvbTowLHRvOjF9O2NsYXNzIEx7Y29uc3RydWN0b3IodCxpLHMpe3RoaXMuZ3Q9bmV3IFQsdGhpcy5idD1bXSx0aGlzLlN0PVtdLHRoaXMueHQ9ITAsdGhpcy5PPXQsdGhpcy5DdD1pLHRoaXMueXQ9cyx0aGlzLmd0Lm50KHRoaXMuYnQpfWt0KHQpe3RoaXMuUHQoKSx0aGlzLnh0PSEwfVR0KCl7cmV0dXJuIHRoaXMueHQmJih0aGlzLlJ0KCksdGhpcy54dD0hMSksdGhpcy5ndH1QdCgpe2NvbnN0IHQ9dGhpcy55dC5EdCgpO3QubGVuZ3RoIT09dGhpcy5idC5sZW5ndGgmJih0aGlzLlN0PXQubWFwKFApLHRoaXMuYnQ9dGhpcy5TdC5tYXAoKHQ9Pntjb25zdCBpPW5ldyBJO3JldHVybiBpLmh0KHQpLGl9KSksdGhpcy5ndC5udCh0aGlzLmJ0KSl9UnQoKXtjb25zdCB0PTI9PT10aGlzLkN0Lk4oKS5tb2RlfHwhdGhpcy5DdC5JdCgpLGk9dGhpcy55dC5WdCgpLHM9dGhpcy5DdC5CdCgpLGU9dGhpcy5PLkV0KCk7dGhpcy5QdCgpLGkuZm9yRWFjaCgoKGksaCk9Pntjb25zdCBuPXRoaXMuU3RbaF0scj1pLkF0KHMpLG89aS5MdCgpCjshdCYmbnVsbCE9PXImJmkuSXQoKSYmbnVsbCE9PW8/KG4udnQ9ci56dCxuLmZ0PXIuZnQsbi5jdD1yLk90LG4ub3RbMF0uTXQ9ci5NdCxuLm90WzBdLnV0PWkuRnQoKS5OdChyLk10LG8uV3QpLG4uZHQ9ci5IdD8/dGhpcy5PLlV0KG4ub3RbMF0udXQvaS5GdCgpLiR0KCkpLG4ub3RbMF0ud3Q9cyxuLm90WzBdLl90PWUuanQocyksbi5sdD1SKTpuLmx0PW51bGx9KSl9fWNsYXNzIEYgZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKHQpe3N1cGVyKCksdGhpcy5xdD10fWV0KHtjb250ZXh0OnQsYml0bWFwU2l6ZTppLGhvcml6b250YWxQaXhlbFJhdGlvOnMsdmVydGljYWxQaXhlbFJhdGlvOmV9KXtpZihudWxsPT09dGhpcy5xdClyZXR1cm47Y29uc3QgaD10aGlzLnF0Lll0Lkl0LG49dGhpcy5xdC5LdC5JdDtpZighaCYmIW4pcmV0dXJuO2NvbnN0IHI9TWF0aC5yb3VuZCh0aGlzLnF0Ll90KnMpLG89TWF0aC5yb3VuZCh0aGlzLnF0LnV0KmUpO3QubGluZUNhcD0iYnV0dCIsaCYmcj49MCYmKHQubGluZVdpZHRoPU1hdGguZmxvb3IodGhpcy5xdC5ZdC5jdCpzKSx0LnN0cm9rZVN0eWxlPXRoaXMucXQuWXQuUix0LmZpbGxTdHlsZT10aGlzLnF0Lll0LlIsbCh0LHRoaXMucXQuWXQuWnQpLGZ1bmN0aW9uKHQsaSxzLGUpe3QuYmVnaW5QYXRoKCk7Y29uc3QgaD10LmxpbmVXaWR0aCUyPy41OjA7dC5tb3ZlVG8oaStoLDApLHQubGluZVRvKGkraCxlKSx0LnN0cm9rZSgpfSh0LHIsMCxpLmhlaWdodCkpLG4mJm8+PTAmJih0LmxpbmVXaWR0aD1NYXRoLmZsb29yKHRoaXMucXQuS3QuY3QqZSksdC5zdHJva2VTdHlsZT10aGlzLnF0Lkt0LlIsdC5maWxsU3R5bGU9dGhpcy5xdC5LdC5SLGwodCx0aGlzLnF0Lkt0Llp0KSxhKHQsbywwLGkud2lkdGgpKX19Y2xhc3MgcXtjb25zdHJ1Y3Rvcih0LGkpe3RoaXMueHQ9ITAsdGhpcy5HdD17WXQ6e2N0OjEsWnQ6MCxSOiIiLEl0OiExfSxLdDp7Y3Q6MSxadDowLFI6IiIsSXQ6ITF9LF90OjAsdXQ6MH0sdGhpcy5YdD1uZXcgRih0aGlzLkd0KSx0aGlzLkp0PXQsdGhpcy55dD1pfWt0KCl7dGhpcy54dD0hMH1UdCh0KXtyZXR1cm4gdGhpcy54dCYmKHRoaXMuUnQoKSx0aGlzLnh0PSExKSx0aGlzLlh0fVJ0KCl7Y29uc3QgdD10aGlzLkp0Lkl0KCksaT10aGlzLnl0LlF0KCkuTigpLmNyb3NzaGFpcixzPXRoaXMuR3Q7aWYoMj09PWkubW9kZSlyZXR1cm4gcy5LdC5JdD0hMSx2b2lkKHMuWXQuSXQ9ITEpO3MuS3QuSXQ9dCYmdGhpcy5KdC50aSh0aGlzLnl0KSxzLll0Lkl0PXQmJnRoaXMuSnQuaWkoKSxzLkt0LmN0PWkuaG9yekxpbmUud2lkdGgscy5LdC5adD1pLmhvcnpMaW5lLnN0eWxlLHMuS3QuUj1pLmhvcnpMaW5lLmNvbG9yLHMuWXQuY3Q9aS52ZXJ0TGluZS53aWR0aCxzLll0Llp0PWkudmVydExpbmUuc3R5bGUscy5ZdC5SPWkudmVydExpbmUuY29sb3Iscy5fdD10aGlzLkp0Lm5pKCkscy51dD10aGlzLkp0LnNpKCl9fWZ1bmN0aW9uIFcodCxpLHMsZSxoLG4pe3QuZmlsbFJlY3QoaStuLHMsZS0yKm4sbiksdC5maWxsUmVjdChpK24scytoLW4sZS0yKm4sbiksdC5maWxsUmVjdChpLHMsbixoKSx0LmZpbGxSZWN0KGkrZS1uLHMsbixoKX1mdW5jdGlvbiBRKHQsaSxzLGUsaCxuKXt0LnNhdmUoKSx0Lmdsb2JhbENvbXBvc2l0ZU9wZXJhdGlvbj0iY29weSIsdC5maWxsU3R5bGU9bix0LmZpbGxSZWN0KGkscyxlLGgpLHQucmVzdG9yZSgpfWZ1bmN0aW9uIEQodCxpLHMsZSxoLG4pe3QuYmVnaW5QYXRoKCksdC5yb3VuZFJlY3Q/dC5yb3VuZFJlY3QoaSxzLGUsaCxuKToodC5saW5lVG8oaStlLW5bMV0scyksMCE9PW5bMV0mJnQuYXJjVG8oaStlLHMsaStlLHMrblsxXSxuWzFdKSx0LmxpbmVUbyhpK2UscytoLW5bMl0pLDAhPT1uWzJdJiZ0LmFyY1RvKGkrZSxzK2gsaStlLW5bMl0scytoLG5bMl0pLHQubGluZVRvKGkrblszXSxzK2gpLDAhPT1uWzNdJiZ0LmFyY1RvKGkscytoLGkscytoLW5bM10sblszXSksdC5saW5lVG8oaSxzK25bMF0pLDAhPT1uWzBdJiZ0LmFyY1RvKGkscyxpK25bMF0scyxuWzBdKSl9ZnVuY3Rpb24gSyh0LGkscyxlLGgsbixyPTAsbz1bMCwwLDAsMF0sbD0iIil7aWYodC5zYXZlKCksIXJ8fCFsfHxsPT09bilyZXR1cm4gRCh0LGkscyxlLGgsbyksdC5maWxsU3R5bGU9bix0LmZpbGwoKSx2b2lkIHQucmVzdG9yZSgpO2NvbnN0IGE9ci8yO3ZhciB1O0QodCxpK2EscythLGUtcixoLXIsKHU9LWEsby5tYXAoKHQ9PjA9PT10P3Q6dCt1KSkpKSwidHJhbnNwYXJlbnQiIT09biYmKHQuZmlsbFN0eWxlPW4sdC5maWxsKCkpLCJ0cmFuc3BhcmVudCIhPT1sJiYodC5saW5lV2lkdGg9cix0LnN0cm9rZVN0eWxlPWwsdC5jbG9zZVBhdGgoKSx0LnN0cm9rZSgpKSx0LnJlc3RvcmUoKX1mdW5jdGlvbiBPKHQsaSxzLGUsaCxuLHIpe3Quc2F2ZSgpLHQuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPSJjb3B5Ijtjb25zdCBvPXQuY3JlYXRlTGluZWFyR3JhZGllbnQoMCwwLDAsaCk7by5hZGRDb2xvclN0b3AoMCxuKSxvLmFkZENvbG9yU3RvcCgxLHIpLHQuZmlsbFN0eWxlPW8sdC5maWxsUmVjdChpLHMsZSxoKSx0LnJlc3RvcmUoKX1jbGFzcyBWe2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5odCh0LGkpfWh0KHQsaSl7dGhpcy5xdD10LHRoaXMuZWk9aX0kdCh0LGkpe3JldHVybiB0aGlzLnF0Lkl0P3Quayt0LkErdC5JOjB9c3QodCxpLHMsZSl7aWYoIXRoaXMucXQuSXR8fDA9PT10aGlzLnF0LnJpLmxlbmd0aClyZXR1cm47Y29uc3QgaD10aGlzLnF0LlIsbj10aGlzLmVpLkcscj10LnVzZUJpdG1hcENvb3JkaW5hdGVTcGFjZSgodD0+e2NvbnN0IHI9dC5jb250ZXh0O3IuZm9udD1pLlA7Y29uc3Qgbz10aGlzLmhpKHQsaSxzLGUpLGw9by5haTtyZXR1cm4gby5saT9LKHIsbC5vaSxsLl9pLGwudWksbC5jaSxuLGwuZGksW2wuZnQsMCwwLGwuZnRdLG4pOksocixsLmZpLGwuX2ksbC51aSxsLmNpLG4sbC5kaSxbMCxsLmZ0LGwuZnQsMF0sbiksdGhpcy5xdC5waSYmKHIuZmlsbFN0eWxlPWgsci5maWxsUmVjdChsLmZpLGwubWksbC53aS1sLmZpLGwuTWkpKSx0aGlzLnF0LmdpJiYoci5maWxsU3R5bGU9aS5ELApyLmZpbGxSZWN0KG8ubGk/bC5iaS1sLmRpOjAsbC5faSxsLmRpLGwuU2ktbC5faSkpLG99KSk7dC51c2VNZWRpYUNvb3JkaW5hdGVTcGFjZSgoKHtjb250ZXh0OnR9KT0+e2NvbnN0IHM9ci54aTt0LmZvbnQ9aS5QLHQudGV4dEFsaWduPXIubGk/InJpZ2h0IjoibGVmdCIsdC50ZXh0QmFzZWxpbmU9Im1pZGRsZSIsdC5maWxsU3R5bGU9aCx0LmZpbGxUZXh0KHRoaXMucXQucmkscy5DaSwocy5faStzLlNpKS8yK3MueWkpfSkpfWhpKHQsaSxzLGUpe2NvbnN0e2NvbnRleHQ6aCxiaXRtYXBTaXplOm4sbWVkaWFTaXplOnIsaG9yaXpvbnRhbFBpeGVsUmF0aW86byx2ZXJ0aWNhbFBpeGVsUmF0aW86bH09dCxhPXRoaXMucXQucGl8fCF0aGlzLnF0LmtpP2kuQzowLHU9dGhpcy5xdC5QaT9pLlM6MCxjPWkuQSt0aGlzLmVpLlRpLGY9aS5JK3RoaXMuZWkuUmksZD1pLlYsbT1pLkIscD10aGlzLnF0LnJpLGc9aS5rLHY9cy5EaShoLHApLGI9TWF0aC5jZWlsKHMuSWkoaCxwKSksdz1nK2MrZixNPWkuUytkK20rYithLHk9TWF0aC5tYXgoMSxNYXRoLmZsb29yKGwpKTtsZXQgeD1NYXRoLnJvdW5kKHcqbCk7eCUyIT15JTImJih4Kz0xKTtjb25zdCBTPXU+MD9NYXRoLm1heCgxLE1hdGguZmxvb3IodSpvKSk6MCxDPU1hdGgucm91bmQoTSpvKSxfPU1hdGgucm91bmQoYSpvKSxrPXRoaXMuZWkuVmk/P3RoaXMuZWkuQmk/P3RoaXMuZWkuRWksRT1NYXRoLnJvdW5kKGsqbCktTWF0aC5mbG9vciguNSpsKSxOPU1hdGguZmxvb3IoRSt5LzIteC8yKSxUPU4reCx6PSJyaWdodCI9PT1lLEk9ej9yLndpZHRoLXU6dSxQPXo/bi53aWR0aC1TOlM7bGV0IFIsTCxGO3JldHVybiB6PyhSPVAtQyxMPVAtXyxGPUktYS1kLXUpOihSPVArQyxMPVArXyxGPUkrYStkKSx7bGk6eixhaTp7X2k6TixtaTpFLFNpOlQsdWk6QyxjaTp4LGZ0OjIqbyxkaTpTLG9pOlIsZmk6UCx3aTpMLE1pOnksYmk6bi53aWR0aH0seGk6e19pOk4vbCxTaTpUL2wsQ2k6Rix5aTp2fX19fWNsYXNzIEJ7Y29uc3RydWN0b3IodCl7dGhpcy5BaT17RWk6MCxHOiIjMDAwIixSaTowLFRpOjB9LHRoaXMuTGk9e3JpOiIiLEl0OiExLHBpOiEwLGtpOiExLEh0OiIiLFI6IiNGRkYiLGdpOiExLFBpOiExfSx0aGlzLnppPXtyaToiIixJdDohMSxwaTohMSxraTohMCxIdDoiIixSOiIjRkZGIixnaTohMCxQaTohMH0sdGhpcy54dD0hMCx0aGlzLk9pPW5ldyh0fHxWKSh0aGlzLkxpLHRoaXMuQWkpLHRoaXMuTmk9bmV3KHR8fFYpKHRoaXMuemksdGhpcy5BaSl9cmkoKXtyZXR1cm4gdGhpcy5GaSgpLHRoaXMuTGkucml9RWkoKXtyZXR1cm4gdGhpcy5GaSgpLHRoaXMuQWkuRWl9a3QoKXt0aGlzLnh0PSEwfSR0KHQsaT0hMSl7cmV0dXJuIE1hdGgubWF4KHRoaXMuT2kuJHQodCxpKSx0aGlzLk5pLiR0KHQsaSkpfVdpKCl7cmV0dXJuIHRoaXMuQWkuVmk/P251bGx9SGkoKXtyZXR1cm4gdGhpcy5BaS5WaT8/dGhpcy5BaS5CaT8/dGhpcy5FaSgpfVVpKHQpe3RoaXMuQWkuQmk9dD8/dm9pZCAwfSRpKCl7cmV0dXJuIHRoaXMuRmkoKSx0aGlzLkxpLkl0fHx0aGlzLnppLkl0fWppKCl7cmV0dXJuIHRoaXMuRmkoKSx0aGlzLkxpLkl0fVR0KHQpe3JldHVybiB0aGlzLkZpKCksdGhpcy5MaS5waT10aGlzLkxpLnBpJiZ0Lk4oKS50aWNrc1Zpc2libGUsdGhpcy56aS5waT10aGlzLnppLnBpJiZ0Lk4oKS50aWNrc1Zpc2libGUsdGhpcy5PaS5odCh0aGlzLkxpLHRoaXMuQWkpLHRoaXMuTmkuaHQodGhpcy56aSx0aGlzLkFpKSx0aGlzLk9pfXFpKCl7cmV0dXJuIHRoaXMuRmkoKSx0aGlzLk9pLmh0KHRoaXMuTGksdGhpcy5BaSksdGhpcy5OaS5odCh0aGlzLnppLHRoaXMuQWkpLHRoaXMuTml9RmkoKXt0aGlzLnh0JiYodGhpcy5MaS5waT0hMCx0aGlzLnppLnBpPSExLHRoaXMuWWkodGhpcy5MaSx0aGlzLnppLHRoaXMuQWkpKX19Y2xhc3MgJCBleHRlbmRzIEJ7Y29uc3RydWN0b3IodCxpLHMpe3N1cGVyKCksdGhpcy5KdD10LHRoaXMuS2k9aSx0aGlzLlppPXN9WWkodCxpLHMpe2lmKHQuSXQ9ITEsMj09PXRoaXMuSnQuTigpLm1vZGUpcmV0dXJuO2NvbnN0IGU9dGhpcy5KdC5OKCkuaG9yekxpbmU7aWYoIWUubGFiZWxWaXNpYmxlKXJldHVybjtjb25zdCBoPXRoaXMuS2kuTHQoKTtpZighdGhpcy5KdC5JdCgpfHx0aGlzLktpLkdpKCl8fG51bGw9PT1oKXJldHVybjtjb25zdCBuPXRoaXMuS2kuWGkoKS5aKGUubGFiZWxCYWNrZ3JvdW5kQ29sb3IpO3MuRz1uLkcsdC5SPW4uWDtjb25zdCByPTIvMTIqdGhpcy5LaS5rKCk7cy5UaT1yLHMuUmk9cjtjb25zdCBvPXRoaXMuWmkodGhpcy5LaSk7cy5FaT1vLkVpLHQucmk9dGhpcy5LaS5KaShvLk10LGgpLHQuSXQ9ITB9fWNvbnN0IEE9L1sxLTldL2c7Y2xhc3MgWntjb25zdHJ1Y3Rvcigpe3RoaXMucXQ9bnVsbH1odCh0KXt0aGlzLnF0PXR9c3QodCxpKXtpZihudWxsPT09dGhpcy5xdHx8ITE9PT10aGlzLnF0Lkl0fHwwPT09dGhpcy5xdC5yaS5sZW5ndGgpcmV0dXJuO2NvbnN0IHM9dC51c2VNZWRpYUNvb3JkaW5hdGVTcGFjZSgoKHtjb250ZXh0OnR9KT0+KHQuZm9udD1pLlAsTWF0aC5yb3VuZChpLlFpLklpKHQsZih0aGlzLnF0KS5yaSxBKSkpKSk7aWYoczw9MClyZXR1cm47Y29uc3QgZT1pLnRuLGg9cysyKmUsbj1oLzIscj10aGlzLnF0Lm5uO2xldCBvPXRoaXMucXQuRWksbD1NYXRoLmZsb29yKG8tbikrLjU7bDwwPyhvKz1NYXRoLmFicygwLWwpLGw9TWF0aC5mbG9vcihvLW4pKy41KTpsK2g+ciYmKG8tPU1hdGguYWJzKHItKGwraCkpLGw9TWF0aC5mbG9vcihvLW4pKy41KTtjb25zdCBhPWwraCx1PU1hdGguY2VpbCgwK2kuUytpLkMraS5BK2kuaytpLkkpO3QudXNlQml0bWFwQ29vcmRpbmF0ZVNwYWNlKCgoe2NvbnRleHQ6dCxob3Jpem9udGFsUGl4ZWxSYXRpbzpzLHZlcnRpY2FsUGl4ZWxSYXRpbzplfSk9Pntjb25zdCBoPWYodGhpcy5xdCk7dC5maWxsU3R5bGU9aC5HO2NvbnN0IG49TWF0aC5yb3VuZChsKnMpLHI9TWF0aC5yb3VuZCgwKmUpLG89TWF0aC5yb3VuZChhKnMpLGM9TWF0aC5yb3VuZCh1KmUpLGQ9TWF0aC5yb3VuZCgyKnMpO2lmKHQuYmVnaW5QYXRoKCksdC5tb3ZlVG8obixyKSx0LmxpbmVUbyhuLGMtZCksCnQuYXJjVG8obixjLG4rZCxjLGQpLHQubGluZVRvKG8tZCxjKSx0LmFyY1RvKG8sYyxvLGMtZCxkKSx0LmxpbmVUbyhvLHIpLHQuZmlsbCgpLGgucGkpe2NvbnN0IG49TWF0aC5yb3VuZChoLkVpKnMpLG89cixsPU1hdGgucm91bmQoKG8raS5DKSplKTt0LmZpbGxTdHlsZT1oLlI7Y29uc3QgYT1NYXRoLm1heCgxLE1hdGguZmxvb3IocykpLHU9TWF0aC5mbG9vciguNSpzKTt0LmZpbGxSZWN0KG4tdSxvLGEsbC1vKX19KSksdC51c2VNZWRpYUNvb3JkaW5hdGVTcGFjZSgoKHtjb250ZXh0OnR9KT0+e2NvbnN0IHM9Zih0aGlzLnF0KSxoPTAraS5TK2kuQytpLkEraS5rLzI7dC5mb250PWkuUCx0LnRleHRBbGlnbj0ibGVmdCIsdC50ZXh0QmFzZWxpbmU9Im1pZGRsZSIsdC5maWxsU3R5bGU9cy5SO2NvbnN0IG49aS5RaS5EaSh0LCJBcHIwIik7dC50cmFuc2xhdGUobCtlLGgrbiksdC5maWxsVGV4dChzLnJpLDAsMCl9KSl9fWNsYXNzIEh7Y29uc3RydWN0b3IodCxpLHMpe3RoaXMueHQ9ITAsdGhpcy5YdD1uZXcgWix0aGlzLkd0PXtJdDohMSxHOiIjNGM1MjVlIixSOiJ3aGl0ZSIscmk6IiIsbm46MCxFaTpOYU4scGk6ITB9LHRoaXMuQ3Q9dCx0aGlzLnNuPWksdGhpcy5aaT1zfWt0KCl7dGhpcy54dD0hMH1UdCgpe3JldHVybiB0aGlzLnh0JiYodGhpcy5SdCgpLHRoaXMueHQ9ITEpLHRoaXMuWHQuaHQodGhpcy5HdCksdGhpcy5YdH1SdCgpe2NvbnN0IHQ9dGhpcy5HdDtpZih0Lkl0PSExLDI9PT10aGlzLkN0Lk4oKS5tb2RlKXJldHVybjtjb25zdCBpPXRoaXMuQ3QuTigpLnZlcnRMaW5lO2lmKCFpLmxhYmVsVmlzaWJsZSlyZXR1cm47Y29uc3Qgcz10aGlzLnNuLkV0KCk7aWYocy5HaSgpKXJldHVybjt0Lm5uPXMubm4oKTtjb25zdCBlPXRoaXMuWmkoKTtpZihudWxsPT09ZSlyZXR1cm47dC5FaT1lLkVpO2NvbnN0IGg9cy5lbih0aGlzLkN0LkJ0KCkpO3Qucmk9cy5ybihmKGgpKSx0Lkl0PSEwO2NvbnN0IG49dGhpcy5zbi5YaSgpLlooaS5sYWJlbEJhY2tncm91bmRDb2xvcik7dC5HPW4uRyx0LlI9bi5YLHQucGk9cy5OKCkudGlja3NWaXNpYmxlfX1jbGFzcyBHe2NvbnN0cnVjdG9yKCl7dGhpcy5obj1udWxsLHRoaXMuYW49MH1sbigpe3JldHVybiB0aGlzLmFufV9uKHQpe3RoaXMuYW49dH1GdCgpe3JldHVybiB0aGlzLmhufXVuKHQpe3RoaXMuaG49dH1jbih0KXtyZXR1cm5bXX1kbigpe3JldHVybltdfUl0KCl7cmV0dXJuITB9fXZhciBVOyFmdW5jdGlvbih0KXt0W3QuTm9ybWFsPTBdPSJOb3JtYWwiLHRbdC5NYWduZXQ9MV09Ik1hZ25ldCIsdFt0LkhpZGRlbj0yXT0iSGlkZGVuIix0W3QuTWFnbmV0T0hMQz0zXT0iTWFnbmV0T0hMQyJ9KFV8fChVPXt9KSk7Y2xhc3MgWSBleHRlbmRzIEd7Y29uc3RydWN0b3IodCxpKXtzdXBlcigpLHRoaXMueXQ9bnVsbCx0aGlzLmZuPU5hTix0aGlzLnBuPTAsdGhpcy52bj0hMSx0aGlzLm1uPW5ldyBNYXAsdGhpcy53bj0hMSx0aGlzLk1uPW5ldyBXZWFrTWFwLHRoaXMuZ249bmV3IFdlYWtNYXAsdGhpcy5ibj1OYU4sdGhpcy5Tbj1OYU4sdGhpcy54bj1OYU4sdGhpcy5Dbj1OYU4sdGhpcy5zbj10LHRoaXMueW49aSx0aGlzLmtuPSgodCxpKT0+cz0+e2NvbnN0IGU9aSgpLGg9dCgpO2lmKHM9PT1mKHRoaXMueXQpLlBuKCkpcmV0dXJue010OmgsRWk6ZX07e2NvbnN0IHQ9ZihzLkx0KCkpO3JldHVybntNdDpzLlRuKGUsdCksRWk6ZX19fSkoKCgpPT50aGlzLmZuKSwoKCk9PnRoaXMuU24pKTtjb25zdCBzPSgodCxpKT0+KCk9Pntjb25zdCBzPXRoaXMuc24uRXQoKS5Sbih0KCkpLGU9aSgpO3JldHVybiBzJiZOdW1iZXIuaXNGaW5pdGUoZSk/e3d0OnMsRWk6ZX06bnVsbH0pKCgoKT0+dGhpcy5wbiksKCgpPT50aGlzLm5pKCkpKTt0aGlzLkRuPW5ldyBIKHRoaXMsdCxzKX1OKCl7cmV0dXJuIHRoaXMueW59SW4odCxpKXt0aGlzLnhuPXQsdGhpcy5Dbj1pfVZuKCl7dGhpcy54bj1OYU4sdGhpcy5Dbj1OYU59Qm4oKXtyZXR1cm4gdGhpcy54bn1Fbigpe3JldHVybiB0aGlzLkNufUFuKHQsaSxzKXt0aGlzLndufHwodGhpcy53bj0hMCksdGhpcy52bj0hMCx0aGlzLkxuKHQsaSxzKX1CdCgpe3JldHVybiB0aGlzLnBufW5pKCl7cmV0dXJuIHRoaXMuYm59c2koKXtyZXR1cm4gdGhpcy5Tbn1JdCgpe3JldHVybiB0aGlzLnZufXpuKCl7dGhpcy52bj0hMSx0aGlzLk9uKCksdGhpcy5mbj1OYU4sdGhpcy5ibj1OYU4sdGhpcy5Tbj1OYU4sdGhpcy55dD1udWxsLHRoaXMuVm4oKSx0aGlzLk5uKCl9Rm4odCl7aWYoIXRoaXMueW4uZG9Ob3RTbmFwVG9IaWRkZW5TZXJpZXNJbmRpY2VzKXJldHVybiB0O2NvbnN0IGk9dGhpcy5zbixzPWkuRXQoKTtsZXQgZT1udWxsLGg9bnVsbDtmb3IoY29uc3QgcyBvZiBpLlduKCkpe2NvbnN0IGk9cy5VbigpLkhuKHQsLTEpO2lmKGkpe2lmKGkuJG49PT10KXJldHVybiB0OyhudWxsPT09ZXx8aS4kbj5lKSYmKGU9aS4kbil9Y29uc3Qgbj1zLlVuKCkuSG4odCwxKTtpZihuKXtpZihuLiRuPT09dClyZXR1cm4gdDsobnVsbD09PWh8fG4uJG48aCkmJihoPW4uJG4pfX1jb25zdCBuPVtlLGhdLmZpbHRlcih5KTtpZigwPT09bi5sZW5ndGgpcmV0dXJuIHQ7Y29uc3Qgcj1zLmp0KHQpLG89bi5tYXAoKHQ9Pk1hdGguYWJzKHItcy5qdCh0KSkpKTtyZXR1cm4gbltvLmluZGV4T2YoTWF0aC5taW4oLi4ubykpXX1qbih0KXtsZXQgaT10aGlzLk1uLmdldCh0KTtpfHwoaT1uZXcgcSh0aGlzLHQpLHRoaXMuTW4uc2V0KHQsaSkpO2xldCBzPXRoaXMuZ24uZ2V0KHQpO3JldHVybiBzfHwocz1uZXcgTCh0aGlzLnNuLHRoaXMsdCksdGhpcy5nbi5zZXQodCxzKSksW2ksc119dGkodCl7cmV0dXJuIHQ9PT10aGlzLnl0JiZ0aGlzLnluLmhvcnpMaW5lLnZpc2libGV9aWkoKXtyZXR1cm4gdGhpcy55bi52ZXJ0TGluZS52aXNpYmxlfXFuKHQsaSl7dGhpcy52biYmdGhpcy55dD09PXR8fHRoaXMubW4uY2xlYXIoKTtjb25zdCBzPVtdO3JldHVybiB0aGlzLnl0PT09dCYmcy5wdXNoKHRoaXMuWW4odGhpcy5tbixpLHRoaXMua24pKSxzfWRuKCl7cmV0dXJuIHRoaXMudm4/W3RoaXMuRG5dOltdfUtuKCl7cmV0dXJuIHRoaXMueXR9Tm4oKXsKdGhpcy5zbi5abigpLmZvckVhY2goKHQ9Pnt0aGlzLk1uLmdldCh0KT8ua3QoKSx0aGlzLmduLmdldCh0KT8ua3QoKX0pKSx0aGlzLm1uLmZvckVhY2goKHQ9PnQua3QoKSkpLHRoaXMuRG4ua3QoKX1Hbih0KXtyZXR1cm4gdCYmIXQuUG4oKS5HaSgpP3QuUG4oKTpudWxsfUxuKHQsaSxzKXt0aGlzLlhuKHQsaSxzKSYmdGhpcy5ObigpfVhuKHQsaSxzKXtjb25zdCBlPXRoaXMuYm4saD10aGlzLlNuLG49dGhpcy5mbixyPXRoaXMucG4sbz10aGlzLnl0LGw9dGhpcy5HbihzKTt0aGlzLnBuPXQsdGhpcy5ibj1pc05hTih0KT9OYU46dGhpcy5zbi5FdCgpLmp0KHQpLHRoaXMueXQ9cztjb25zdCBhPW51bGwhPT1sP2wuTHQoKTpudWxsO3JldHVybiBudWxsIT09bCYmbnVsbCE9PWE/KHRoaXMuZm49aSx0aGlzLlNuPWwuTnQoaSxhKSk6KHRoaXMuZm49TmFOLHRoaXMuU249TmFOKSxlIT09dGhpcy5ibnx8aCE9PXRoaXMuU258fHIhPT10aGlzLnBufHxuIT09dGhpcy5mbnx8byE9PXRoaXMueXR9T24oKXtjb25zdCB0PXRoaXMuc24uSm4oKS5tYXAoKHQ9PnQuVW4oKS5RbigpKSkuZmlsdGVyKHkpLGk9MD09PXQubGVuZ3RoP251bGw6TWF0aC5tYXgoLi4udCk7dGhpcy5wbj1udWxsIT09aT9pOk5hTn1Zbih0LGkscyl7bGV0IGU9dC5nZXQoaSk7cmV0dXJuIHZvaWQgMD09PWUmJihlPW5ldyAkKHRoaXMsaSxzKSx0LnNldChpLGUpKSxlfX1mdW5jdGlvbiBqKHQpe3JldHVybiJsZWZ0Ij09PXR8fCJyaWdodCI9PT10fWNsYXNzIFh7Y29uc3RydWN0b3IodCl7dGhpcy50cz1uZXcgTWFwLHRoaXMubnM9W10sdGhpcy5zcz10fWVzKHQsaSl7Y29uc3Qgcz1mdW5jdGlvbih0LGkpe3JldHVybiB2b2lkIDA9PT10P2k6e3JzOk1hdGgubWF4KHQucnMsaS5ycyksaHM6dC5oc3x8aS5oc319KHRoaXMudHMuZ2V0KHQpLGkpO3RoaXMudHMuc2V0KHQscyl9bHMoKXtyZXR1cm4gdGhpcy5zc31fcyh0KXtjb25zdCBpPXRoaXMudHMuZ2V0KHQpO3JldHVybiB2b2lkIDA9PT1pP3tyczp0aGlzLnNzfTp7cnM6TWF0aC5tYXgodGhpcy5zcyxpLnJzKSxoczppLmhzfX11cygpe3RoaXMuY3MoKSx0aGlzLm5zPVt7ZHM6MH1dfWZzKHQpe3RoaXMuY3MoKSx0aGlzLm5zPVt7ZHM6MSxXdDp0fV19cHModCl7dGhpcy52cygpLHRoaXMubnMucHVzaCh7ZHM6NSxXdDp0fSl9Y3MoKXt0aGlzLnZzKCksdGhpcy5ucy5wdXNoKHtkczo2fSl9d3MoKXt0aGlzLmNzKCksdGhpcy5ucz1be2RzOjR9XX1Ncyh0KXt0aGlzLmNzKCksdGhpcy5ucy5wdXNoKHtkczoyLFd0OnR9KX1ncyh0KXt0aGlzLmNzKCksdGhpcy5ucy5wdXNoKHtkczozLFd0OnR9KX1icygpe3JldHVybiB0aGlzLm5zfVNzKHQpe2Zvcihjb25zdCBpIG9mIHQubnMpdGhpcy54cyhpKTt0aGlzLnNzPU1hdGgubWF4KHRoaXMuc3MsdC5zcyksdC50cy5mb3JFYWNoKCgodCxpKT0+e3RoaXMuZXMoaSx0KX0pKX1zdGF0aWMgQ3MoKXtyZXR1cm4gbmV3IFgoMil9c3RhdGljIHlzKCl7cmV0dXJuIG5ldyBYKDMpfXhzKHQpe3N3aXRjaCh0LmRzKXtjYXNlIDA6dGhpcy51cygpO2JyZWFrO2Nhc2UgMTp0aGlzLmZzKHQuV3QpO2JyZWFrO2Nhc2UgMjp0aGlzLk1zKHQuV3QpO2JyZWFrO2Nhc2UgMzp0aGlzLmdzKHQuV3QpO2JyZWFrO2Nhc2UgNDp0aGlzLndzKCk7YnJlYWs7Y2FzZSA1OnRoaXMucHModC5XdCk7YnJlYWs7Y2FzZSA2OnRoaXMudnMoKX19dnMoKXtjb25zdCB0PXRoaXMubnMuZmluZEluZGV4KCh0PT41PT09dC5kcykpOy0xIT09dCYmdGhpcy5ucy5zcGxpY2UodCwxKX19Y2xhc3MgSntmb3JtYXRUaWNrbWFya3ModCl7cmV0dXJuIHQubWFwKCh0PT50aGlzLmZvcm1hdCh0KSkpfX1mdW5jdGlvbiB0dCh0LGkpe2lmKCFnKHQpKXJldHVybiJuL2EiO2lmKCF2KGkpKXRocm93IG5ldyBUeXBlRXJyb3IoImludmFsaWQgbGVuZ3RoIik7aWYoaTwwfHxpPjE2KXRocm93IG5ldyBUeXBlRXJyb3IoImludmFsaWQgbGVuZ3RoIik7cmV0dXJuIDA9PT1pP3QudG9TdHJpbmcoKTooIjAwMDAwMDAwMDAwMDAwMDAiK3QudG9TdHJpbmcoKSkuc2xpY2UoLWkpfWNsYXNzIGl0IGV4dGVuZHMgSntjb25zdHJ1Y3Rvcih0LGkpe2lmKHN1cGVyKCksaXx8KGk9MSksZyh0KSYmdih0KXx8KHQ9MTAwKSx0PDApdGhyb3cgbmV3IFR5cGVFcnJvcigiaW52YWxpZCBiYXNlIik7dGhpcy5LaT10LHRoaXMua3M9aSx0aGlzLlBzKCl9Zm9ybWF0KHQpe2NvbnN0IGk9dDwwPyLiiJIiOiIiO3JldHVybiB0PU1hdGguYWJzKHQpLGkrdGhpcy5Ucyh0KX1Qcygpe2lmKHRoaXMuUnM9MCx0aGlzLktpPjAmJnRoaXMua3M+MCl7bGV0IHQ9dGhpcy5LaTtmb3IoO3Q+MTspdC89MTAsdGhpcy5ScysrfX1Ucyh0KXtjb25zdCBpPXRoaXMuS2kvdGhpcy5rcztsZXQgcz1NYXRoLmZsb29yKHQpLGU9IiI7Y29uc3QgaD12b2lkIDAhPT10aGlzLlJzP3RoaXMuUnM6TmFOO2lmKGk+MSl7bGV0IG49KyhNYXRoLnJvdW5kKHQqaSktcyppKS50b0ZpeGVkKHRoaXMuUnMpO24+PWkmJihuLT1pLHMrPTEpLGU9Ii4iK3R0KCtuLnRvRml4ZWQodGhpcy5ScykqdGhpcy5rcyxoKX1lbHNlIHM9TWF0aC5yb3VuZChzKmkpL2ksaD4wJiYoZT0iLiIrdHQoMCxoKSk7cmV0dXJuIHMudG9GaXhlZCgwKStlfX1jbGFzcyBzdCBleHRlbmRzIGl0e2NvbnN0cnVjdG9yKHQ9MTAwKXtzdXBlcih0KX1mb3JtYXQodCl7cmV0dXJuYCR7c3VwZXIuZm9ybWF0KHQpfSVgfX1jbGFzcyBldCBleHRlbmRzIEp7Y29uc3RydWN0b3IodCl7c3VwZXIoKSx0aGlzLkRzPXR9Zm9ybWF0KHQpe2xldCBpPSIiO3JldHVybiB0PDAmJihpPSItIix0PS10KSx0PDk5NT9pK3RoaXMuSXModCk6dDw5OTk5OTU/aSt0aGlzLklzKHQvMWUzKSsiSyI6dDw5OTk5OTk5OTU/KHQ9MWUzKk1hdGgucm91bmQodC8xZTMpLGkrdGhpcy5Jcyh0LzFlNikrIk0iKToodD0xZTYqTWF0aC5yb3VuZCh0LzFlNiksaSt0aGlzLklzKHQvMWU5KSsiQiIpfUlzKHQpe2xldCBpO2NvbnN0IHM9TWF0aC5wb3coMTAsdGhpcy5Ecyk7cmV0dXJuIGk9KHQ9TWF0aC5yb3VuZCh0KnMpL3MpPj0xZS0xNSYmdDwxP3QudG9GaXhlZCh0aGlzLkRzKS5yZXBsYWNlKC9cLj8wKyQvLCIiKTpTdHJpbmcodCksCmkucmVwbGFjZSgvKFwuWzEtOV0qKTArJC8sKCh0LGkpPT5pKSl9fWNvbnN0IGh0PS9bMi05XS9nO2NsYXNzIG50e2NvbnN0cnVjdG9yKHQ9NTApe3RoaXMuVnM9MCx0aGlzLkJzPTEsdGhpcy5Fcz0xLHRoaXMuQXM9e30sdGhpcy5Mcz1uZXcgTWFwLHRoaXMuenM9dH1Pcygpe3RoaXMuVnM9MCx0aGlzLkxzLmNsZWFyKCksdGhpcy5Ccz0xLHRoaXMuRXM9MSx0aGlzLkFzPXt9fUlpKHQsaSxzKXtyZXR1cm4gdGhpcy5Ocyh0LGkscykud2lkdGh9RGkodCxpLHMpe2NvbnN0IGU9dGhpcy5Ocyh0LGkscyk7cmV0dXJuKChlLmFjdHVhbEJvdW5kaW5nQm94QXNjZW50fHwwKS0oZS5hY3R1YWxCb3VuZGluZ0JveERlc2NlbnR8fDApKS8yfU5zKHQsaSxzKXtjb25zdCBlPXN8fGh0LGg9U3RyaW5nKGkpLnJlcGxhY2UoZSwiMCIpO2lmKHRoaXMuTHMuaGFzKGgpKXJldHVybiBjKHRoaXMuTHMuZ2V0KGgpKS5GcztpZih0aGlzLlZzPT09dGhpcy56cyl7Y29uc3QgdD10aGlzLkFzW3RoaXMuRXNdO2RlbGV0ZSB0aGlzLkFzW3RoaXMuRXNdLHRoaXMuTHMuZGVsZXRlKHQpLHRoaXMuRXMrKyx0aGlzLlZzLS19dC5zYXZlKCksdC50ZXh0QmFzZWxpbmU9Im1pZGRsZSI7Y29uc3Qgbj10Lm1lYXN1cmVUZXh0KGgpO3JldHVybiB0LnJlc3RvcmUoKSwwPT09bi53aWR0aCYmaS5sZW5ndGh8fCh0aGlzLkxzLnNldChoLHtGczpuLFdzOnRoaXMuQnN9KSx0aGlzLkFzW3RoaXMuQnNdPWgsdGhpcy5WcysrLHRoaXMuQnMrKyksbn19Y2xhc3MgcnR7Y29uc3RydWN0b3IodCl7dGhpcy5Icz1udWxsLHRoaXMuTT1udWxsLHRoaXMuVXM9InJpZ2h0Iix0aGlzLiRzPXR9anModCxpLHMpe3RoaXMuSHM9dCx0aGlzLk09aSx0aGlzLlVzPXN9c3QodCl7bnVsbCE9PXRoaXMuTSYmbnVsbCE9PXRoaXMuSHMmJnRoaXMuSHMuc3QodCx0aGlzLk0sdGhpcy4kcyx0aGlzLlVzKX19Y2xhc3Mgb3R7Y29uc3RydWN0b3IodCxpLHMpe3RoaXMucXM9dCx0aGlzLiRzPW5ldyBudCg1MCksdGhpcy5Zcz1pLHRoaXMuTz1zLHRoaXMuRj0tMSx0aGlzLlh0PW5ldyBydCh0aGlzLiRzKX1UdCgpe2NvbnN0IHQ9dGhpcy5PLktzKHRoaXMuWXMpO2lmKG51bGw9PT10KXJldHVybiBudWxsO2NvbnN0IGk9dC5acyh0aGlzLllzKT90LkdzKCk6dGhpcy5Zcy5GdCgpO2lmKG51bGw9PT1pKXJldHVybiBudWxsO2NvbnN0IHM9dC5YcyhpKTtpZigib3ZlcmxheSI9PT1zKXJldHVybiBudWxsO2NvbnN0IGU9dGhpcy5PLkpzKCk7cmV0dXJuIGUuayE9PXRoaXMuRiYmKHRoaXMuRj1lLmssdGhpcy4kcy5PcygpKSx0aGlzLlh0LmpzKHRoaXMucXMucWkoKSxlLHMpLHRoaXMuWHR9fWNsYXNzIGx0IGV4dGVuZHMgentjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5xdD1udWxsfWh0KHQpe3RoaXMucXQ9dH1Rcyh0LGkpe2lmKCF0aGlzLnF0Py5JdClyZXR1cm4gbnVsbDtjb25zdHt1dDpzLGN0OmUsdGU6aH09dGhpcy5xdDtyZXR1cm4gaT49cy1lLTcmJmk8PXMrZSs3P3tpZTp0aGlzLnF0LG5lOk1hdGguYWJzKGktcyksc2U6MixlZToicHJpY2UtbGluZSIsdGU6aH06bnVsbH1ldCh7Y29udGV4dDp0LGJpdG1hcFNpemU6aSxob3Jpem9udGFsUGl4ZWxSYXRpbzpzLHZlcnRpY2FsUGl4ZWxSYXRpbzplfSl7aWYobnVsbD09PXRoaXMucXQpcmV0dXJuO2lmKCExPT09dGhpcy5xdC5JdClyZXR1cm47Y29uc3QgaD1NYXRoLnJvdW5kKHRoaXMucXQudXQqZSk7aDwwfHxoPmkuaGVpZ2h0fHwodC5saW5lQ2FwPSJidXR0Iix0LnN0cm9rZVN0eWxlPXRoaXMucXQuUix0LmxpbmVXaWR0aD1NYXRoLmZsb29yKHRoaXMucXQuY3QqcyksbCh0LHRoaXMucXQuWnQpLGEodCxoLDAsaS53aWR0aCkpfX1jbGFzcyBhdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLnJlPXt1dDowLFI6InJnYmEoMCwgMCwgMCwgMCkiLGN0OjEsWnQ6MCxJdDohMX0sdGhpcy5oZT1uZXcgbHQsdGhpcy54dD0hMCx0aGlzLmFlPXQsdGhpcy5sZT10LlF0KCksdGhpcy5oZS5odCh0aGlzLnJlKX1rdCgpe3RoaXMueHQ9ITB9VHQoKXtyZXR1cm4gdGhpcy5hZS5JdCgpPyh0aGlzLnh0JiYodGhpcy5vZSgpLHRoaXMueHQ9ITEpLHRoaXMuaGUpOm51bGx9fWNsYXNzIHV0IGV4dGVuZHMgYXR7Y29uc3RydWN0b3IodCl7c3VwZXIodCl9b2UoKXt0aGlzLnJlLkl0PSExO2NvbnN0IHQ9dGhpcy5hZS5GdCgpLGk9dC5fZSgpLl9lO2lmKDIhPT1pJiYzIT09aSlyZXR1cm47Y29uc3Qgcz10aGlzLmFlLk4oKTtpZighcy5iYXNlTGluZVZpc2libGV8fCF0aGlzLmFlLkl0KCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5hZS5MdCgpO251bGwhPT1lJiYodGhpcy5yZS5JdD0hMCx0aGlzLnJlLnV0PXQuTnQoZS5XdCxlLld0KSx0aGlzLnJlLlI9cy5iYXNlTGluZUNvbG9yLHRoaXMucmUuY3Q9cy5iYXNlTGluZVdpZHRoLHRoaXMucmUuWnQ9cy5iYXNlTGluZVN0eWxlKX19Y2xhc3MgY3QgZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnF0PW51bGx9aHQodCl7dGhpcy5xdD10fXVlKCl7cmV0dXJuIHRoaXMucXR9ZXQoe2NvbnRleHQ6dCxob3Jpem9udGFsUGl4ZWxSYXRpbzppLHZlcnRpY2FsUGl4ZWxSYXRpbzpzfSl7Y29uc3QgZT10aGlzLnF0O2lmKG51bGw9PT1lKXJldHVybjtjb25zdCBoPU1hdGgubWF4KDEsTWF0aC5mbG9vcihpKSksbj1oJTIvMixyPU1hdGgucm91bmQoZS5jZS54KmkpK24sbz1lLmNlLnkqczt0LmZpbGxTdHlsZT1lLmRlLHQuYmVnaW5QYXRoKCk7Y29uc3QgbD1NYXRoLm1heCgyLDEuNSplLmZlKSppO3QuYXJjKHIsbyxsLDAsMipNYXRoLlBJLCExKSx0LmZpbGwoKSx0LmZpbGxTdHlsZT1lLnBlLHQuYmVnaW5QYXRoKCksdC5hcmMocixvLGUuZnQqaSwwLDIqTWF0aC5QSSwhMSksdC5maWxsKCksdC5saW5lV2lkdGg9aCx0LnN0cm9rZVN0eWxlPWUudmUsdC5iZWdpblBhdGgoKSx0LmFyYyhyLG8sZS5mdCppK2gvMiwwLDIqTWF0aC5QSSwhMSksdC5zdHJva2UoKX19Y29uc3QgZnQ9W3ttZTowLHdlOi4yNSxNZTo0LGdlOjEwLGJlOi4yNSxTZTowLHhlOi40LENlOi44fSx7bWU6LjI1LHdlOi41MjUsTWU6MTAsZ2U6MTQsYmU6MCxTZTowLHhlOi44LENlOjB9LHttZTouNTI1LAp3ZToxLE1lOjE0LGdlOjE0LGJlOjAsU2U6MCx4ZTowLENlOjB9XTtjbGFzcyBkdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLlh0PW5ldyBjdCx0aGlzLnh0PSEwLHRoaXMueWU9ITAsdGhpcy5rZT1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLlBlPXRoaXMua2UtMSx0aGlzLlRlPXR9UmUoKXt0aGlzLlBlPXRoaXMua2UtMSx0aGlzLmt0KCl9RGUoKXtpZih0aGlzLmt0KCksMj09PXRoaXMuVGUuTigpLmxhc3RQcmljZUFuaW1hdGlvbil7Y29uc3QgdD1wZXJmb3JtYW5jZS5ub3coKSxpPXRoaXMuUGUtdDtpZihpPjApcmV0dXJuIHZvaWQoaTw2NTAmJih0aGlzLlBlKz0yNjAwKSk7dGhpcy5rZT10LHRoaXMuUGU9dCsyNjAwfX1rdCgpe3RoaXMueHQ9ITB9SWUoKXt0aGlzLnllPSEwfUl0KCl7cmV0dXJuIDAhPT10aGlzLlRlLk4oKS5sYXN0UHJpY2VBbmltYXRpb259VmUoKXtzd2l0Y2godGhpcy5UZS5OKCkubGFzdFByaWNlQW5pbWF0aW9uKXtjYXNlIDA6cmV0dXJuITE7Y2FzZSAxOnJldHVybiEwO2Nhc2UgMjpyZXR1cm4gcGVyZm9ybWFuY2Uubm93KCk8PXRoaXMuUGV9fVR0KCl7cmV0dXJuIHRoaXMueHQ/KHRoaXMuUnQoKSx0aGlzLnh0PSExLHRoaXMueWU9ITEpOnRoaXMueWUmJih0aGlzLkJlKCksdGhpcy55ZT0hMSksdGhpcy5YdH1SdCgpe3RoaXMuWHQuaHQobnVsbCk7Y29uc3QgdD10aGlzLlRlLlF0KCkuRXQoKSxpPXQuRWUoKSxzPXRoaXMuVGUuTHQoKTtpZihudWxsPT09aXx8bnVsbD09PXMpcmV0dXJuO2NvbnN0IGU9dGhpcy5UZS5BZSghMCk7aWYoZS5MZXx8IWkuemUoZS4kbikpcmV0dXJuO2NvbnN0IGg9e3g6dC5qdChlLiRuKSx5OnRoaXMuVGUuRnQoKS5OdChlLk10LHMuV3QpfSxuPWUuUixyPXRoaXMuVGUuTigpLmxpbmVXaWR0aCxvPXRoaXMuT2UodGhpcy5OZSgpLG4pO3RoaXMuWHQuaHQoe2RlOm4sZmU6cixwZTpvLnBlLHZlOm8udmUsZnQ6by5mdCxjZTpofSl9QmUoKXtjb25zdCB0PXRoaXMuWHQudWUoKTtpZihudWxsIT09dCl7Y29uc3QgaT10aGlzLk9lKHRoaXMuTmUoKSx0LmRlKTt0LnBlPWkucGUsdC52ZT1pLnZlLHQuZnQ9aS5mdH19TmUoKXtyZXR1cm4gdGhpcy5WZSgpP3BlcmZvcm1hbmNlLm5vdygpLXRoaXMua2U6MjU5OX1GZSh0LGkscyxlKXtjb25zdCBoPXMrKGUtcykqaTtyZXR1cm4gdGhpcy5UZS5RdCgpLlhpKCkuWSh0LGgpfU9lKHQsaSl7Y29uc3Qgcz10JTI2MDAvMjYwMDtsZXQgZTtmb3IoY29uc3QgdCBvZiBmdClpZihzPj10Lm1lJiZzPD10LndlKXtlPXQ7YnJlYWt9dSh2b2lkIDAhPT1lLCJMYXN0IHByaWNlIGFuaW1hdGlvbiBpbnRlcm5hbCBsb2dpYyBlcnJvciIpO2NvbnN0IGg9KHMtZS5tZSkvKGUud2UtZS5tZSk7cmV0dXJue3BlOnRoaXMuRmUoaSxoLGUuYmUsZS5TZSksdmU6dGhpcy5GZShpLGgsZS54ZSxlLkNlKSxmdDoobj1oLHI9ZS5NZSxvPWUuZ2Uscisoby1yKSpuKX07dmFyIG4scixvfX1jbGFzcyBtdCBleHRlbmRzIGF0e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpfW9lKCl7Y29uc3QgdD10aGlzLnJlO3QuSXQ9ITE7Y29uc3QgaT10aGlzLmFlLk4oKTtpZighaS5wcmljZUxpbmVWaXNpYmxlfHwhdGhpcy5hZS5JdCgpKXJldHVybjtjb25zdCBzPXRoaXMuYWUuQWUoMD09PWkucHJpY2VMaW5lU291cmNlKTtzLkxlfHwodC5JdD0hMCx0LnV0PXMuRWksdC5SPXRoaXMuYWUuV2Uocy5SKSx0LmN0PWkucHJpY2VMaW5lV2lkdGgsdC5adD1pLnByaWNlTGluZVN0eWxlKX19Y2xhc3MgcHQgZXh0ZW5kcyBCe2NvbnN0cnVjdG9yKHQpe3N1cGVyKCksdGhpcy5KdD10fVlpKHQsaSxzKXt0Lkl0PSExLGkuSXQ9ITE7Y29uc3QgZT10aGlzLkp0O2lmKCFlLkl0KCkpcmV0dXJuO2NvbnN0IGg9ZS5OKCksbj1oLmxhc3RWYWx1ZVZpc2libGUscj0iIiE9PWUuSGUoKSxvPTA9PT1oLnNlcmllc0xhc3RWYWx1ZU1vZGUsbD1lLkFlKCExKTtpZihsLkxlKXJldHVybjtuJiYodC5yaT10aGlzLlVlKGwsbixvKSx0Lkl0PTAhPT10LnJpLmxlbmd0aCksKHJ8fG8pJiYoaS5yaT10aGlzLiRlKGwsbixyLG8pLGkuSXQ9aS5yaS5sZW5ndGg+MCk7Y29uc3QgYT1lLldlKGwuUiksdT10aGlzLkp0LlF0KCkuWGkoKS5aKGEpO3MuRz11Lkcscy5FaT1sLkVpLGkuSHQ9ZS5RdCgpLlV0KGwuRWkvZS5GdCgpLiR0KCkpLHQuSHQ9YSx0LlI9dS5YLGkuUj11Llh9JGUodCxpLHMsZSl7bGV0IGg9IiI7Y29uc3Qgbj10aGlzLkp0LkhlKCk7cmV0dXJuIHMmJjAhPT1uLmxlbmd0aCYmKGgrPWAke259IGApLGkmJmUmJihoKz10aGlzLkp0LkZ0KCkuamUoKT90LnFlOnQuWWUpLGgudHJpbSgpfVVlKHQsaSxzKXtyZXR1cm4gaT9zP3RoaXMuSnQuRnQoKS5qZSgpP3QuWWU6dC5xZTp0LnJpOiIifX1mdW5jdGlvbiBndCh0LGkscyxlKXtjb25zdCBoPU51bWJlci5pc0Zpbml0ZShpKSxuPU51bWJlci5pc0Zpbml0ZShzKTtyZXR1cm4gaCYmbj90KGkscyk6aHx8bj9oP2k6czplfWNsYXNzIHZ0e2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5LZT10LHRoaXMuWmU9aX1HZSh0KXtyZXR1cm4gbnVsbCE9PXQmJnRoaXMuS2U9PT10LktlJiZ0aGlzLlplPT09dC5aZX1YZSgpe3JldHVybiBuZXcgdnQodGhpcy5LZSx0aGlzLlplKX1KZSgpe3JldHVybiB0aGlzLktlfVFlKCl7cmV0dXJuIHRoaXMuWmV9dHIoKXtyZXR1cm4gdGhpcy5aZS10aGlzLktlfUdpKCl7cmV0dXJuIHRoaXMuWmU9PT10aGlzLktlfHxOdW1iZXIuaXNOYU4odGhpcy5aZSl8fE51bWJlci5pc05hTih0aGlzLktlKX1Tcyh0KXtyZXR1cm4gbnVsbD09PXQ/dGhpczpuZXcgdnQoZ3QoTWF0aC5taW4sdGhpcy5KZSgpLHQuSmUoKSwtMS8wKSxndChNYXRoLm1heCx0aGlzLlFlKCksdC5RZSgpLDEvMCkpfWlyKHQpe2lmKCFnKHQpKXJldHVybjtpZigwPT10aGlzLlplLXRoaXMuS2UpcmV0dXJuO2NvbnN0IGk9LjUqKHRoaXMuWmUrdGhpcy5LZSk7bGV0IHM9dGhpcy5aZS1pLGU9dGhpcy5LZS1pO3MqPXQsZSo9dCx0aGlzLlplPWkrcyx0aGlzLktlPWkrZX1ucih0KXtnKHQpJiYodGhpcy5aZSs9dCx0aGlzLktlKz10KX1zcigpe3JldHVybnttaW5WYWx1ZTp0aGlzLktlLG1heFZhbHVlOnRoaXMuWmV9fXN0YXRpYyBlcih0KXsKcmV0dXJuIG51bGw9PT10P251bGw6bmV3IHZ0KHQubWluVmFsdWUsdC5tYXhWYWx1ZSl9fWNsYXNzIGJ0e2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5ycj10LHRoaXMuaHI9aXx8bnVsbH1hcigpe3JldHVybiB0aGlzLnJyfWxyKCl7cmV0dXJuIHRoaXMuaHJ9c3IoKXtyZXR1cm57cHJpY2VSYW5nZTpudWxsPT09dGhpcy5ycj9udWxsOnRoaXMucnIuc3IoKSxtYXJnaW5zOnRoaXMuaHJ8fHZvaWQgMH19c3RhdGljIGVyKHQpe3JldHVybiBudWxsPT09dD9udWxsOm5ldyBidCh2dC5lcih0LnByaWNlUmFuZ2UpLHQubWFyZ2lucyl9fWNvbnN0IHd0PVsyLDQsOCwxNiwzMiw2NCwxMjgsMjU2LDUxMl07Y2xhc3MgTXQgZXh0ZW5kcyBhdHtjb25zdHJ1Y3Rvcih0LGkpe3N1cGVyKHQpLHRoaXMuX3I9aX1vZSgpe2NvbnN0IHQ9dGhpcy5yZTt0Lkl0PSExO2NvbnN0IGk9dGhpcy5fci5OKCk7aWYoIXRoaXMuYWUuSXQoKXx8IWkubGluZVZpc2libGUpcmV0dXJuO2NvbnN0IHM9dGhpcy5fci51cigpO251bGwhPT1zJiYodC5JdD0hMCx0LnV0PXMsdC5SPWkuY29sb3IsdC5jdD1pLmxpbmVXaWR0aCx0Llp0PWkubGluZVN0eWxlLHQudGU9dGhpcy5fci5OKCkuaWQpfX1jbGFzcyB5dCBleHRlbmRzIEJ7Y29uc3RydWN0b3IodCxpKXtzdXBlcigpLHRoaXMuVGU9dCx0aGlzLl9yPWl9WWkodCxpLHMpe3QuSXQ9ITEsaS5JdD0hMTtjb25zdCBlPXRoaXMuX3IuTigpLGg9ZS5heGlzTGFiZWxWaXNpYmxlLG49IiIhPT1lLnRpdGxlLHI9dGhpcy5UZTtpZighaHx8IXIuSXQoKSlyZXR1cm47Y29uc3Qgbz10aGlzLl9yLnVyKCk7aWYobnVsbD09PW8pcmV0dXJuO24mJihpLnJpPWUudGl0bGUsaS5JdD0hMCksaS5IdD1yLlF0KCkuVXQoby9yLkZ0KCkuJHQoKSksdC5yaT10aGlzLmNyKGUucHJpY2UpLHQuSXQ9ITA7Y29uc3QgbD10aGlzLlRlLlF0KCkuWGkoKS5aKGUuYXhpc0xhYmVsQ29sb3J8fGUuY29sb3IpO3MuRz1sLkc7Y29uc3QgYT1lLmF4aXNMYWJlbFRleHRDb2xvcnx8bC5YO3QuUj1hLGkuUj1hLHMuRWk9b31jcih0KXtjb25zdCBpPXRoaXMuVGUuTHQoKTtyZXR1cm4gbnVsbD09PWk/IiI6dGhpcy5UZS5GdCgpLkppKHQsaS5XdCl9fWNsYXNzIHh0e2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5UZT10LHRoaXMueW49aSx0aGlzLmRyPW5ldyBNdCh0LHRoaXMpLHRoaXMucXM9bmV3IHl0KHQsdGhpcyksdGhpcy5wcj1uZXcgb3QodGhpcy5xcyx0LHQuUXQoKSl9dnIodCl7cCh0aGlzLnluLHQpLHRoaXMua3QoKSx0aGlzLlRlLlF0KCkubXIoKX1OKCl7cmV0dXJuIHRoaXMueW59d3IoKXtyZXR1cm4gdGhpcy5kcn1Ncigpe3JldHVybiB0aGlzLnByfWdyKCl7cmV0dXJuIHRoaXMucXN9a3QoKXt0aGlzLmRyLmt0KCksdGhpcy5xcy5rdCgpfXVyKCl7Y29uc3QgdD10aGlzLlRlLGk9dC5GdCgpO2lmKHQuUXQoKS5FdCgpLkdpKCl8fGkuR2koKSlyZXR1cm4gbnVsbDtjb25zdCBzPXQuTHQoKTtyZXR1cm4gbnVsbD09PXM/bnVsbDppLk50KHRoaXMueW4ucHJpY2Uscy5XdCl9fWNsYXNzIFN0e2NvbnN0cnVjdG9yKCl7dGhpcy5icj1uZXcgV2Vha01hcH1Tcih0LGkscyl7Y29uc3QgZT0xL2kqcztpZih0Pj1lKXJldHVybiAxO2NvbnN0IGg9ZS90LG49TWF0aC5wb3coMixNYXRoLmZsb29yKE1hdGgubG9nMihoKSkpO3JldHVybiBNYXRoLm1pbihuLDUxMil9Q3IodCxpLHMsZT0hMSxoKXtpZigwPT09dC5sZW5ndGh8fGk8PTEpcmV0dXJuIHQ7Y29uc3Qgbj10aGlzLnlyKGkpO2lmKG48PTEpcmV0dXJuIHQ7Y29uc3Qgcj10aGlzLmtyKHQpO2xldCBvPXIuUHIuZ2V0KG4pO3JldHVybiB2b2lkIDAhPT1vfHwobz10aGlzLlRyKHQsbixzLGUsaCxyLlByKSxyLlByLnNldChuLG8pKSxvfVJyKHQsaSxzLGUsaD0hMSxuKXtpZihzPDF8fDA9PT10Lmxlbmd0aClyZXR1cm4gdDtjb25zdCByPXRoaXMua3IodCksbz1yLlByLmdldChzKTtpZighbylyZXR1cm4gdGhpcy5Dcih0LHMsZSxoLG4pO2NvbnN0IGw9dGhpcy5Ecih0LGkscyxvLGgsZSxuKTtyZXR1cm4gci5Qci5zZXQocyxsKSxsfXlyKHQpe2lmKHQ8PTIpcmV0dXJuIDI7Zm9yKGNvbnN0IGkgb2Ygd3QpaWYodDw9aSlyZXR1cm4gaTtyZXR1cm4gNTEyfUlyKHQpe2lmKDA9PT10Lmxlbmd0aClyZXR1cm4gMDtjb25zdCBpPXRbMF0scz10W3QubGVuZ3RoLTFdO3JldHVybiAzMSp0Lmxlbmd0aCsxNyppLiRuKzEzKnMuJG59VHIodCxpLHMsZT0hMSxoLG49bmV3IE1hcCl7aWYoMj09PWkpcmV0dXJuIHRoaXMuVnIodCwyLHMsZSxoKTtjb25zdCByPWkvMjtsZXQgbz1uLmdldChyKTtyZXR1cm4gb3x8KG89dGhpcy5Ucih0LHIscyxlLGgsbiksbi5zZXQocixvKSksdGhpcy5CcihvLHMsZSxoKX1Wcih0LGkscyxlPSExLGgpe2NvbnN0IG49dGhpcy5Fcih0LGkscyxlLGgpO3JldHVybiB0aGlzLkFyKG4sZSl9QnIodCxpLHM9ITEsZSl7Y29uc3QgaD10aGlzLkVyKHQsMixpLHMsZSk7cmV0dXJuIHRoaXMuQXIoaCxzKX1Fcih0LGkscyxlPSExLGgpe2NvbnN0IG49W107Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKz1pKWlmKHQubGVuZ3RoLXI+PWkpe2NvbnN0IGk9dGhpcy5Mcih0W3JdLHRbcisxXSxzLGUsaCk7aS56cj0hMSxuLnB1c2goaSl9ZWxzZSBpZigwPT09bi5sZW5ndGgpbi5wdXNoKHRoaXMuT3IodFtyXSwhMCkpO2Vsc2V7Y29uc3QgaT1uW24ubGVuZ3RoLTFdO25bbi5sZW5ndGgtMV09dGhpcy5OcihpLHRbcl0scyxlLGgpfXJldHVybiBufUZyKHQsaSl7cmV0dXJuKHQ/PzEpKyhpPz8xKX1Mcih0LGkscyxlPSExLGgpe2lmKCFlfHwhc3x8IWgpe2NvbnN0IHM9dC5XdFsxXT5pLld0WzFdP3QuV3RbMV06aS5XdFsxXSxlPXQuV3RbMl08aS5XdFsyXT90Lld0WzJdOmkuV3RbMl07cmV0dXJue1dyOnQuJG4sSHI6aS4kbixVcjp0Lnd0LCRyOmkud3QsanI6dC5XdFswXSxxcjpzLFlyOmUsS3I6aS5XdFszXSxacjp0aGlzLkZyKHQuWnIsaS5aciksR3I6dm9pZCAwLHpyOiExfX1jb25zdCBuPXModGhpcy5Ycih0LGgpLHRoaXMuWHIoaSxoKSkscj1oKG4pLG89ci5sZW5ndGg/cltyLmxlbmd0aC0xXTowO3JldHVybntXcjp0LiRuLEhyOmkuJG4sVXI6dC53dCwkcjppLnd0LGpyOnQuV3RbMF0sCnFyOk1hdGgubWF4KHQuV3RbMV0sbyksWXI6TWF0aC5taW4odC5XdFsyXSxvKSxLcjpvLFpyOnRoaXMuRnIodC5acixpLlpyKSxHcjpuLHpyOiExfX1Ocih0LGkscyxlPSExLGgpe2lmKCFlfHwhc3x8IWgpcmV0dXJue1dyOnQuV3IsSHI6aS4kbixVcjp0LlVyLCRyOmkud3QsanI6dC5qcixxcjp0LnFyPmkuV3RbMV0/dC5xcjppLld0WzFdLFlyOnQuWXI8aS5XdFsyXT90LllyOmkuV3RbMl0sS3I6aS5XdFszXSxacjp0LlpyKyhpLlpyPz8xKSxHcjp0LkdyLHpyOiExfTtjb25zdCBuPXQuR3Iscj10aGlzLlhyKGksaCksbz1uP3tkYXRhOm4saW5kZXg6dC5XcixvcmlnaW5hbFRpbWU6dC5Vcix0aW1lOnQuVXIscHJpY2VWYWx1ZXM6aChuKX06bnVsbCxsPW8/cyhvLHIpOnIuZGF0YSxhPW8/aChsKTpyLnByaWNlVmFsdWVzLHU9YS5sZW5ndGg/YVthLmxlbmd0aC0xXTowO3JldHVybntXcjp0LldyLEhyOmkuJG4sVXI6dC5VciwkcjppLnd0LGpyOnQuanIscXI6TWF0aC5tYXgodC5xcix1KSxZcjpNYXRoLm1pbih0LllyLHUpLEtyOnUsWnI6dC5acisoaS5acj8/MSksR3I6bCx6cjohMX19SnIodCxpLHMsZSxoLG4scj0hMSxvKXtjb25zdCBsPWk9PT1lP2g6dFtpXTtpZihzLWk9PTEpcmV0dXJuIHRoaXMuT3IobCwhMCk7Y29uc3QgYT1pKzE9PT1lP2g6dFtpKzFdO2xldCB1PXRoaXMuTHIobCxhLG4scixvKTtmb3IobGV0IGw9aSsyO2w8cztsKyspe2NvbnN0IGk9bD09PWU/aDp0W2xdO3U9dGhpcy5Ocih1LGksbixyLG8pfXJldHVybiB1fVhyKHQsaSl7Y29uc3Qgcz10LnVlPz97fTtyZXR1cm57ZGF0YTp0LnVlLGluZGV4OnQuJG4sb3JpZ2luYWxUaW1lOnQuUXIsdGltZTp0Lnd0LHByaWNlVmFsdWVzOmkocyl9fXRoKHQsaT0hMSl7Y29uc3Qgcz0hMD09PWksZT0hIXQuR3I7cmV0dXJueyRuOnQuV3Isd3Q6dC5VcixRcjp0LlVyLFd0OltzP3QuS3I6dC5qcix0LnFyLHQuWXIsdC5Lcl0sWnI6dC5acix1ZTpzP2U/dC5Hcjp7d3Q6dC5Vcn06dm9pZCAwfX1Bcih0LGk9ITEpe3JldHVybiB0Lm1hcCgodD0+dGhpcy50aCh0LGkpKSl9RHIodCxpLHMsZSxoPSExLG4scil7aWYoMD09PWUubGVuZ3RoKXJldHVybiBlO2NvbnN0IG89dC5sZW5ndGgtMSxsPU1hdGguZmxvb3Ioby9zKSpzO2lmKE1hdGgubWluKGwrcyx0Lmxlbmd0aCktbDxzJiZ0Lmxlbmd0aD5zKXtjb25zdCBlPXQuc2xpY2UoKTtyZXR1cm4gZVtlLmxlbmd0aC0xXT1pLHRoaXMuQ3IoZSxzLG4saCxyKX1pZihNYXRoLmZsb29yKChvLTEpL3MpPT09TWF0aC5mbG9vcihvL3MpfHwxPT09ZS5sZW5ndGgpe2NvbnN0IGE9TWF0aC5taW4obCtzLHQubGVuZ3RoKSx1PWEtbDtpZih1PD0wKXJldHVybiBlO2NvbnN0IGM9MT09PXU/dGhpcy5PcihsPT09bz9pOnRbbF0sITApOnRoaXMuSnIodCxsLGEsbyxpLG4saCxyKTtyZXR1cm4gZVtlLmxlbmd0aC0xXT10aGlzLnRoKGMsaCksZX17Y29uc3QgZT10LnNsaWNlKCk7cmV0dXJuIGVbZS5sZW5ndGgtMV09aSx0aGlzLkNyKGUscyxuLGgscil9fU9yKHQsaT0hMSl7cmV0dXJue1dyOnQuJG4sSHI6dC4kbixVcjp0Lnd0LCRyOnQud3QsanI6dC5XdFswXSxxcjp0Lld0WzFdLFlyOnQuV3RbMl0sS3I6dC5XdFszXSxacjp0LlpyPz8xLEdyOnQudWUsenI6aX19a3IodCl7Y29uc3QgaT10aGlzLmloKHQpLHM9dGhpcy5Jcih0KTtyZXR1cm4gaS5uaCE9PXMmJihpLlByLmNsZWFyKCksaS5uaD1zKSxpfWloKHQpe2xldCBpPXRoaXMuYnIuZ2V0KHQpO3JldHVybiB2b2lkIDA9PT1pJiYoaT17bmg6dGhpcy5Jcih0KSxQcjpuZXcgTWFwfSx0aGlzLmJyLnNldCh0LGkpKSxpfX1jbGFzcyBDdCBleHRlbmRzIEd7Y29uc3RydWN0b3IodCl7c3VwZXIoKSx0aGlzLnNuPXR9UXQoKXtyZXR1cm4gdGhpcy5zbn19Y29uc3QgX3Q9e0JhcjoodCxpLHMsZSk9Pntjb25zdCBoPWkudXBDb2xvcixuPWkuZG93bkNvbG9yLHI9Zih0KHMsZSkpLG89ZChyLld0WzBdKTw9ZChyLld0WzNdKTtyZXR1cm57c2g6ci5SPz8obz9oOm4pfX0sQ2FuZGxlc3RpY2s6KHQsaSxzLGUpPT57Y29uc3QgaD1pLnVwQ29sb3Isbj1pLmRvd25Db2xvcixyPWkuYm9yZGVyVXBDb2xvcixvPWkuYm9yZGVyRG93bkNvbG9yLGw9aS53aWNrVXBDb2xvcixhPWkud2lja0Rvd25Db2xvcix1PWYodChzLGUpKSxjPWQodS5XdFswXSk8PWQodS5XdFszXSk7cmV0dXJue3NoOnUuUj8/KGM/aDpuKSxlaDp1Lkh0Pz8oYz9yOm8pLHJoOnUuaGg/PyhjP2w6YSl9fSxDdXN0b206KHQsaSxzLGUpPT4oe3NoOmYodChzLGUpKS5SPz9pLmNvbG9yfSksQXJlYToodCxpLHMsZSk9Pntjb25zdCBoPWYodChzLGUpKTtyZXR1cm57c2g6aC52dD8/aS5saW5lQ29sb3IsdnQ6aC52dD8/aS5saW5lQ29sb3IsYWg6aC5haD8/aS50b3BDb2xvcixvaDpoLm9oPz9pLmJvdHRvbUNvbG9yfX0sQmFzZWxpbmU6KHQsaSxzLGUpPT57Y29uc3QgaD1mKHQocyxlKSk7cmV0dXJue3NoOmguV3RbM10+PWkuYmFzZVZhbHVlLnByaWNlP2kudG9wTGluZUNvbG9yOmkuYm90dG9tTGluZUNvbG9yLF9oOmguX2g/P2kudG9wTGluZUNvbG9yLHVoOmgudWg/P2kuYm90dG9tTGluZUNvbG9yLGRoOmguZGg/P2kudG9wRmlsbENvbG9yMSxmaDpoLmZoPz9pLnRvcEZpbGxDb2xvcjIscGg6aC5waD8/aS5ib3R0b21GaWxsQ29sb3IxLG1oOmgubWg/P2kuYm90dG9tRmlsbENvbG9yMn19LExpbmU6KHQsaSxzLGUpPT57Y29uc3QgaD1mKHQocyxlKSk7cmV0dXJue3NoOmguUj8/aS5jb2xvcix2dDpoLlI/P2kuY29sb3J9fSxIaXN0b2dyYW06KHQsaSxzLGUpPT4oe3NoOmYodChzLGUpKS5SPz9pLmNvbG9yfSl9O2NsYXNzIGt0e2NvbnN0cnVjdG9yKHQpe3RoaXMud2g9KHQsaSk9PnZvaWQgMCE9PWk/aS5XdDp0aGlzLlRlLlVuKCkuTWgodCksdGhpcy5UZT10LHRoaXMuZ2g9X3RbdC5iaCgpXX1TaCh0LGkpe3JldHVybiB0aGlzLmdoKHRoaXMud2gsdGhpcy5UZS5OKCksdCxpKX19ZnVuY3Rpb24gRXQodCxpLHMsZSxoPTAsbj1pLmxlbmd0aCl7bGV0IHI9bi1oO2Zvcig7MDxyOyl7Y29uc3Qgbj1yPj4xLG89aCtuO2UoaVtvXSxzKT09PXQ/KGg9bysxLHItPW4rMSk6cj1ufXJldHVybiBofQpjb25zdCBOdD1FdC5iaW5kKG51bGwsITApLFR0PUV0LmJpbmQobnVsbCwhMSk7dmFyIHp0OyFmdW5jdGlvbih0KXt0W3QuTmVhcmVzdExlZnQ9LTFdPSJOZWFyZXN0TGVmdCIsdFt0Lk5vbmU9MF09Ik5vbmUiLHRbdC5OZWFyZXN0UmlnaHQ9MV09Ik5lYXJlc3RSaWdodCJ9KHp0fHwoenQ9e30pKTtjb25zdCBJdD0zMDtjbGFzcyBQdHtjb25zdHJ1Y3Rvcigpe3RoaXMueGg9W10sdGhpcy5DaD1uZXcgTWFwLHRoaXMueWg9bmV3IE1hcCx0aGlzLmtoPVtdfVBoKCl7cmV0dXJuIHRoaXMuVGgoKT4wP3RoaXMueGhbdGhpcy54aC5sZW5ndGgtMV06bnVsbH1SaCgpe3JldHVybiB0aGlzLlRoKCk+MD90aGlzLkRoKDApOm51bGx9UW4oKXtyZXR1cm4gdGhpcy5UaCgpPjA/dGhpcy5EaCh0aGlzLnhoLmxlbmd0aC0xKTpudWxsfVRoKCl7cmV0dXJuIHRoaXMueGgubGVuZ3RofUdpKCl7cmV0dXJuIDA9PT10aGlzLlRoKCl9emUodCl7cmV0dXJuIG51bGwhPT10aGlzLkloKHQsMCl9TWgodCl7cmV0dXJuIHRoaXMuSG4odCl9SG4odCxpPTApe2NvbnN0IHM9dGhpcy5JaCh0LGkpO3JldHVybiBudWxsPT09cz9udWxsOnsuLi50aGlzLlZoKHMpLCRuOnRoaXMuRGgocyl9fUJoKCl7cmV0dXJuIHRoaXMueGh9RWgodCxpLHMpe2lmKHRoaXMuR2koKSlyZXR1cm4gbnVsbDtsZXQgZT1udWxsO2Zvcihjb25zdCBoIG9mIHMpZT1SdChlLHRoaXMuQWgodCxpLGgpKTtyZXR1cm4gZX1odCh0KXt0aGlzLnloLmNsZWFyKCksdGhpcy5DaC5jbGVhcigpLHRoaXMueGg9dCx0aGlzLmtoPXQubWFwKCh0PT50LiRuKSl9TGgoKXtyZXR1cm4gdGhpcy5raH1EaCh0KXtyZXR1cm4gdGhpcy54aFt0XS4kbn1WaCh0KXtyZXR1cm4gdGhpcy54aFt0XX1JaCh0LGkpe2NvbnN0IHM9dGhpcy56aCh0KTtpZihudWxsPT09cyYmMCE9PWkpc3dpdGNoKGkpe2Nhc2UtMTpyZXR1cm4gdGhpcy5PaCh0KTtjYXNlIDE6cmV0dXJuIHRoaXMuTmgodCk7ZGVmYXVsdDp0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmtub3duIHNlYXJjaCBtb2RlIil9cmV0dXJuIHN9T2godCl7bGV0IGk9dGhpcy5GaCh0KTtyZXR1cm4gaT4wJiYoaS09MSksaSE9PXRoaXMueGgubGVuZ3RoJiZ0aGlzLkRoKGkpPHQ/aTpudWxsfU5oKHQpe2NvbnN0IGk9dGhpcy5XaCh0KTtyZXR1cm4gaSE9PXRoaXMueGgubGVuZ3RoJiZ0PHRoaXMuRGgoaSk/aTpudWxsfXpoKHQpe2NvbnN0IGk9dGhpcy5GaCh0KTtyZXR1cm4gaT09PXRoaXMueGgubGVuZ3RofHx0PHRoaXMueGhbaV0uJG4/bnVsbDppfUZoKHQpe3JldHVybiBOdCh0aGlzLnhoLHQsKCh0LGkpPT50LiRuPGkpKX1XaCh0KXtyZXR1cm4gVHQodGhpcy54aCx0LCgodCxpKT0+dC4kbj5pKSl9SGgodCxpLHMpe2xldCBlPW51bGw7Zm9yKGxldCBoPXQ7aDxpO2grKyl7Y29uc3QgdD10aGlzLnhoW2hdLld0W3NdO051bWJlci5pc05hTih0KXx8KG51bGw9PT1lP2U9e1VoOnQsJGg6dH06KHQ8ZS5VaCYmKGUuVWg9dCksdD5lLiRoJiYoZS4kaD10KSkpfXJldHVybiBlfUFoKHQsaSxzKXtpZih0aGlzLkdpKCkpcmV0dXJuIG51bGw7bGV0IGU9bnVsbDtjb25zdCBoPWYodGhpcy5SaCgpKSxuPWYodGhpcy5RbigpKSxyPU1hdGgubWF4KHQsaCksbz1NYXRoLm1pbihpLG4pLGw9TWF0aC5jZWlsKHIvSXQpKkl0LGE9TWF0aC5tYXgobCxNYXRoLmZsb29yKG8vSXQpKkl0KTt7Y29uc3QgdD10aGlzLkZoKHIpLGg9dGhpcy5XaChNYXRoLm1pbihvLGwsaSkpO2U9UnQoZSx0aGlzLkhoKHQsaCxzKSl9bGV0IHU9dGhpcy5DaC5nZXQocyk7dm9pZCAwPT09dSYmKHU9bmV3IE1hcCx0aGlzLkNoLnNldChzLHUpKTtmb3IobGV0IHQ9TWF0aC5tYXgobCsxLHIpO3Q8YTt0Kz1JdCl7Y29uc3QgaT1NYXRoLmZsb29yKHQvSXQpO2xldCBoPXUuZ2V0KGkpO2lmKHZvaWQgMD09PWgpe2NvbnN0IHQ9dGhpcy5GaChpKkl0KSxlPXRoaXMuV2goKGkrMSkqSXQtMSk7aD10aGlzLkhoKHQsZSxzKSx1LnNldChpLGgpfWU9UnQoZSxoKX17Y29uc3QgdD10aGlzLkZoKGEpLGk9dGhpcy5XaChvKTtlPVJ0KGUsdGhpcy5IaCh0LGkscykpfXJldHVybiBlfX1mdW5jdGlvbiBSdCh0LGkpe3JldHVybiBudWxsPT09dD9pOm51bGw9PT1pP3Q6e1VoOk1hdGgubWluKHQuVWgsaS5VaCksJGg6TWF0aC5tYXgodC4kaCxpLiRoKX19ZnVuY3Rpb24gTHQoKXtyZXR1cm4gbmV3IFB0fWNvbnN0IEZ0PXtzZXRMaW5lU3R5bGU6bH07Y2xhc3MgcXR7Y29uc3RydWN0b3IodCl7dGhpcy5qaD10fXN0KHQsaSxzKXt0aGlzLmpoLmRyYXcodCxGdCl9cWgodCxpLHMpe3RoaXMuamguZHJhd0JhY2tncm91bmQ/Lih0LEZ0KX19Y2xhc3MgV3R7Y29uc3RydWN0b3IodCl7dGhpcy5Mcz1udWxsLHRoaXMuWWg9dH1UdCgpe2NvbnN0IHQ9dGhpcy5ZaC5yZW5kZXJlcigpO2lmKG51bGw9PT10KXJldHVybiBudWxsO2lmKHRoaXMuTHM/LktoPT09dClyZXR1cm4gdGhpcy5Mcy5aaDtjb25zdCBpPW5ldyBxdCh0KTtyZXR1cm4gdGhpcy5Mcz17S2g6dCxaaDppfSxpfUdoKCl7cmV0dXJuIHRoaXMuWWguek9yZGVyPy4oKT8/Im5vcm1hbCJ9fWNsYXNzIFF0e2NvbnN0cnVjdG9yKHQpe3RoaXMuWGg9bnVsbCx0aGlzLkpoPXR9UWgoKXtyZXR1cm4gdGhpcy5KaH1Obigpe3RoaXMuSmgudXBkYXRlQWxsVmlld3M/LigpfWpuKCl7Y29uc3QgdD10aGlzLkpoLnBhbmVWaWV3cz8uKCk/P1tdO2lmKHRoaXMuWGg/LktoPT09dClyZXR1cm4gdGhpcy5YaC5aaDtjb25zdCBpPXQubWFwKCh0PT5uZXcgV3QodCkpKTtyZXR1cm4gdGhpcy5YaD17S2g6dCxaaDppfSxpfVFzKHQsaSl7cmV0dXJuIHRoaXMuSmguaGl0VGVzdD8uKHQsaSk/P251bGx9fWxldCBEdD1jbGFzcyBleHRlbmRzIFF0e2NuKCl7cmV0dXJuW119fTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLmpoPXR9c3QodCxpLHMpe3RoaXMuamguZHJhdyh0LEZ0KX1xaCh0LGkscyl7dGhpcy5qaC5kcmF3QmFja2dyb3VuZD8uKHQsRnQpfX1jbGFzcyBPdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkxzPW51bGwsdGhpcy5ZaD10fVR0KCl7Y29uc3QgdD10aGlzLlloLnJlbmRlcmVyKCk7aWYobnVsbD09PXQpcmV0dXJuIG51bGwKO2lmKHRoaXMuTHM/LktoPT09dClyZXR1cm4gdGhpcy5Mcy5aaDtjb25zdCBpPW5ldyBLdCh0KTtyZXR1cm4gdGhpcy5Mcz17S2g6dCxaaDppfSxpfUdoKCl7cmV0dXJuIHRoaXMuWWguek9yZGVyPy4oKT8/Im5vcm1hbCJ9fWZ1bmN0aW9uIFZ0KHQpe3JldHVybntyaTp0LnRleHQoKSxFaTp0LmNvb3JkaW5hdGUoKSxWaTp0LmZpeGVkQ29vcmRpbmF0ZT8uKCksUjp0LnRleHRDb2xvcigpLEc6dC5iYWNrQ29sb3IoKSxJdDp0LnZpc2libGU/LigpPz8hMCxwaTp0LnRpY2tWaXNpYmxlPy4oKT8/ITB9fWNsYXNzIEJ0e2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5YdD1uZXcgWix0aGlzLnRhPXQsdGhpcy5pYT1pfVR0KCl7cmV0dXJuIHRoaXMuWHQuaHQoe25uOnRoaXMuaWEubm4oKSwuLi5WdCh0aGlzLnRhKX0pLHRoaXMuWHR9fWNsYXNzICR0IGV4dGVuZHMgQntjb25zdHJ1Y3Rvcih0LGkpe3N1cGVyKCksdGhpcy50YT10LHRoaXMuS2k9aX1ZaSh0LGkscyl7Y29uc3QgZT1WdCh0aGlzLnRhKTtzLkc9ZS5HLHQuUj1lLlI7Y29uc3QgaD0yLzEyKnRoaXMuS2kuaygpO3MuVGk9aCxzLlJpPWgscy5FaT1lLkVpLHMuVmk9ZS5WaSx0LnJpPWUucmksdC5JdD1lLkl0LHQucGk9ZS5waX19Y2xhc3MgQXQgZXh0ZW5kcyBRdHtjb25zdHJ1Y3Rvcih0LGkpe3N1cGVyKHQpLHRoaXMubmE9bnVsbCx0aGlzLnNhPW51bGwsdGhpcy5lYT1udWxsLHRoaXMucmE9bnVsbCx0aGlzLlRlPWl9ZG4oKXtjb25zdCB0PXRoaXMuSmgudGltZUF4aXNWaWV3cz8uKCk/P1tdO2lmKHRoaXMubmE/LktoPT09dClyZXR1cm4gdGhpcy5uYS5aaDtjb25zdCBpPXRoaXMuVGUuUXQoKS5FdCgpLHM9dC5tYXAoKHQ9Pm5ldyBCdCh0LGkpKSk7cmV0dXJuIHRoaXMubmE9e0toOnQsWmg6c30sc31xbigpe2NvbnN0IHQ9dGhpcy5KaC5wcmljZUF4aXNWaWV3cz8uKCk/P1tdO2lmKHRoaXMuc2E/LktoPT09dClyZXR1cm4gdGhpcy5zYS5aaDtjb25zdCBpPXRoaXMuVGUuRnQoKSxzPXQubWFwKCh0PT5uZXcgJHQodCxpKSkpO3JldHVybiB0aGlzLnNhPXtLaDp0LFpoOnN9LHN9aGEoKXtjb25zdCB0PXRoaXMuSmgucHJpY2VBeGlzUGFuZVZpZXdzPy4oKT8/W107aWYodGhpcy5lYT8uS2g9PT10KXJldHVybiB0aGlzLmVhLlpoO2NvbnN0IGk9dC5tYXAoKHQ9Pm5ldyBPdCh0KSkpO3JldHVybiB0aGlzLmVhPXtLaDp0LFpoOml9LGl9YWEoKXtjb25zdCB0PXRoaXMuSmgudGltZUF4aXNQYW5lVmlld3M/LigpPz9bXTtpZih0aGlzLnJhPy5LaD09PXQpcmV0dXJuIHRoaXMucmEuWmg7Y29uc3QgaT10Lm1hcCgodD0+bmV3IE90KHQpKSk7cmV0dXJuIHRoaXMucmE9e0toOnQsWmg6aX0saX1sYSh0LGkpe3JldHVybiB0aGlzLkpoLmF1dG9zY2FsZUluZm8/Lih0LGkpPz9udWxsfX1mdW5jdGlvbiBadCh0LGkscyxlKXt0LmZvckVhY2goKHQ9PntpKHQpLmZvckVhY2goKHQ9Pnt0LkdoKCk9PT1zJiZlLnB1c2godCl9KSl9KSl9ZnVuY3Rpb24gSHQodCl7cmV0dXJuIHQuam4oKX1mdW5jdGlvbiBHdCh0KXtyZXR1cm4gdC5oYSgpfWZ1bmN0aW9uIFV0KHQpe3JldHVybiB0LmFhKCl9Y29uc3QgWXQ9WyJBcmVhIiwiTGluZSIsIkJhc2VsaW5lIl07Y2xhc3MganQgZXh0ZW5kcyBDdHtjb25zdHJ1Y3Rvcih0LGkscyxlLGgpe3N1cGVyKHQpLHRoaXMucXQ9THQoKSx0aGlzLmRyPW5ldyBtdCh0aGlzKSx0aGlzLm9hPVtdLHRoaXMuX2E9bmV3IHV0KHRoaXMpLHRoaXMudWE9bnVsbCx0aGlzLmNhPW51bGwsdGhpcy5kYT1udWxsLHRoaXMuZmE9W10sdGhpcy5wYT1uZXcgU3QsdGhpcy52YT1uZXcgTWFwLHRoaXMubWE9bnVsbCx0aGlzLnluPXMsdGhpcy53YT1pO2NvbnN0IG49bmV3IHB0KHRoaXMpO2lmKHRoaXMubW49W25dLHRoaXMucHI9bmV3IG90KG4sdGhpcyx0KSxZdC5pbmNsdWRlcyh0aGlzLndhKSYmKHRoaXMudWE9bmV3IGR0KHRoaXMpKSx0aGlzLk1hKCksdGhpcy5ZaD1lKHRoaXMsdGhpcy5RdCgpLGgpLCJDdXN0b20iPT09dGhpcy53YSl7Y29uc3QgdD10aGlzLlloO3QuZ2EmJnRoaXMuYmEodC5nYSl9fW0oKXtudWxsIT09dGhpcy5kYSYmY2xlYXJUaW1lb3V0KHRoaXMuZGEpfVdlKHQpe3JldHVybiB0aGlzLnluLnByaWNlTGluZUNvbG9yfHx0fUFlKHQpe2NvbnN0IGk9e0xlOiEwfSxzPXRoaXMuRnQoKTtpZih0aGlzLlF0KCkuRXQoKS5HaSgpfHxzLkdpKCl8fHRoaXMucXQuR2koKSlyZXR1cm4gaTtjb25zdCBlPXRoaXMuUXQoKS5FdCgpLkVlKCksaD10aGlzLkx0KCk7aWYobnVsbD09PWV8fG51bGw9PT1oKXJldHVybiBpO2xldCBuLHI7aWYodCl7Y29uc3QgdD10aGlzLnF0LlBoKCk7aWYobnVsbD09PXQpcmV0dXJuIGk7bj10LHI9dC4kbn1lbHNle2NvbnN0IHQ9dGhpcy5xdC5IbihlLmJpKCksLTEpO2lmKG51bGw9PT10KXJldHVybiBpO2lmKG49dGhpcy5xdC5NaCh0LiRuKSxudWxsPT09bilyZXR1cm4gaTtyPXQuJG59Y29uc3Qgbz1uLld0WzNdLGw9dGhpcy5TYSgpLlNoKHIse1d0Om59KSxhPXMuTnQobyxoLld0KTtyZXR1cm57TGU6ITEsTXQ6byxyaTpzLkppKG8saC5XdCkscWU6cy54YShvKSxZZTpzLkNhKG8saC5XdCksUjpsLnNoLEVpOmEsJG46cn19U2EoKXtyZXR1cm4gbnVsbCE9PXRoaXMuY2F8fCh0aGlzLmNhPW5ldyBrdCh0aGlzKSksdGhpcy5jYX1OKCl7cmV0dXJuIHRoaXMueW59dnIodCl7Y29uc3QgaT10aGlzLlF0KCkse3ByaWNlU2NhbGVJZDpzLHZpc2libGU6ZSxwcmljZUZvcm1hdDpofT10O3ZvaWQgMCE9PXMmJnMhPT10aGlzLnluLnByaWNlU2NhbGVJZCYmaS55YSh0aGlzLHMpLHZvaWQgMCE9PWUmJmUhPT10aGlzLnluLnZpc2libGUmJmkua2EoKTtjb25zdCBuPXZvaWQgMCE9PXQuY29uZmxhdGlvblRocmVzaG9sZEZhY3RvcjtwKHRoaXMueW4sdCksbiYmKHRoaXMudmEuY2xlYXIoKSx0aGlzLlF0KCkubXIoKSksdm9pZCAwIT09aCYmKHRoaXMuTWEoKSxpLlBhKCkpLGkuVGEodGhpcyksaS5SYSgpLHRoaXMuWWgua3QoIm9wdGlvbnMiKX1odCh0LGkpe3RoaXMucXQuaHQodCksdGhpcy52YS5jbGVhcigpO2NvbnN0IHM9dGhpcy5RdCgpLkV0KCkuTigpCjtzLmVuYWJsZUNvbmZsYXRpb24mJnMucHJlY29tcHV0ZUNvbmZsYXRpb25PbkluaXQmJnRoaXMuRGEocy5wcmVjb21wdXRlQ29uZmxhdGlvblByaW9yaXR5KSx0aGlzLlloLmt0KCJkYXRhIiksbnVsbCE9PXRoaXMudWEmJihpJiZpLklhP3RoaXMudWEuRGUoKTowPT09dC5sZW5ndGgmJnRoaXMudWEuUmUoKSk7Y29uc3QgZT10aGlzLlF0KCkuS3ModGhpcyk7dGhpcy5RdCgpLlZhKGUpLHRoaXMuUXQoKS5UYSh0aGlzKSx0aGlzLlF0KCkuUmEoKSx0aGlzLlF0KCkubXIoKX1CYSh0KXtjb25zdCBpPW5ldyB4dCh0aGlzLHQpO3JldHVybiB0aGlzLm9hLnB1c2goaSksdGhpcy5RdCgpLlRhKHRoaXMpLGl9RWEodCl7Y29uc3QgaT10aGlzLm9hLmluZGV4T2YodCk7LTEhPT1pJiZ0aGlzLm9hLnNwbGljZShpLDEpLHRoaXMuUXQoKS5UYSh0aGlzKX1BYSgpe3JldHVybiB0aGlzLm9hfWJoKCl7cmV0dXJuIHRoaXMud2F9THQoKXtjb25zdCB0PXRoaXMuTGEoKTtyZXR1cm4gbnVsbD09PXQ/bnVsbDp7V3Q6dC5XdFszXSx6YTp0Lnd0fX1MYSgpe2NvbnN0IHQ9dGhpcy5RdCgpLkV0KCkuRWUoKTtpZihudWxsPT09dClyZXR1cm4gbnVsbDtjb25zdCBpPXQuT2EoKTtyZXR1cm4gdGhpcy5xdC5IbihpLDEpfVVuKCl7cmV0dXJuIHRoaXMucXR9YmEodCl7dGhpcy5tYT10LHRoaXMudmEuY2xlYXIoKX1OYSgpe3JldHVybiEhdGhpcy5RdCgpLkV0KCkuTigpLmVuYWJsZUNvbmZsYXRpb24mJnRoaXMuRmEoKT4xfVJyKHQpe2lmKCF0aGlzLk5hKCkpcmV0dXJuO2NvbnN0IGk9dGhpcy5GYSgpO2lmKCF0aGlzLnZhLmhhcyhpKSlyZXR1cm47Y29uc3Qgcz0iQ3VzdG9tIj09PXRoaXMud2EsZT1zJiZ0aGlzLm1hfHx2b2lkIDAsaD1zJiZ0aGlzLlloLldhP3Q9Pntjb25zdCBpPXQscz10aGlzLlloLldhKGkpO3JldHVybiBBcnJheS5pc0FycmF5KHMpP3M6WyJudW1iZXIiPT10eXBlb2Ygcz9zOjBdfTp2b2lkIDAsbj10aGlzLnBhLlJyKHRoaXMucXQuQmgoKSx0LGksZSxzLGgpLHI9THQoKTtyLmh0KG4pLHRoaXMudmEuc2V0KGkscil9SGEoKXtjb25zdCB0PXRoaXMuUXQoKS5FdCgpLk4oKS5lbmFibGVDb25mbGF0aW9uO2lmKCJDdXN0b20iPT09dGhpcy53YSYmbnVsbD09PXRoaXMubWEpcmV0dXJuIHRoaXMucXQ7aWYoIXQpcmV0dXJuIHRoaXMucXQ7Y29uc3QgaT10aGlzLkZhKCkscz10aGlzLnZhLmdldChpKTtyZXR1cm4gc3x8KHRoaXMuVWEoaSksdGhpcy52YS5nZXQoaSk/P3RoaXMucXQpfSRhKHQpe2NvbnN0IGk9dGhpcy5xdC5NaCh0KTtyZXR1cm4gbnVsbD09PWk/bnVsbDoiQmFyIj09PXRoaXMud2F8fCJDYW5kbGVzdGljayI9PT10aGlzLndhfHwiQ3VzdG9tIj09PXRoaXMud2E/e2pyOmkuV3RbMF0scXI6aS5XdFsxXSxZcjppLld0WzJdLEtyOmkuV3RbM119OmkuV3RbM119amEodCl7Y29uc3QgaT1bXTtadCh0aGlzLmZhLEh0LCJ0b3AiLGkpO2NvbnN0IHM9dGhpcy51YTtyZXR1cm4gbnVsbCE9PXMmJnMuSXQoKT8obnVsbD09PXRoaXMuZGEmJnMuVmUoKSYmKHRoaXMuZGE9c2V0VGltZW91dCgoKCk9Pnt0aGlzLmRhPW51bGwsdGhpcy5RdCgpLnFhKCl9KSwwKSkscy5JZSgpLGkudW5zaGlmdChzKSxpKTppfWpuKCl7Y29uc3QgdD1bXTt0aGlzLllhKCl8fHQucHVzaCh0aGlzLl9hKSx0LnB1c2godGhpcy5ZaCx0aGlzLmRyKTtjb25zdCBpPXRoaXMub2EubWFwKCh0PT50LndyKCkpKTtyZXR1cm4gdC5wdXNoKC4uLmkpLFp0KHRoaXMuZmEsSHQsIm5vcm1hbCIsdCksdH1LYSgpe3JldHVybiB0aGlzLlphKEh0LCJib3R0b20iKX1HYSh0KXtyZXR1cm4gdGhpcy5aYShHdCx0KX1YYSh0KXtyZXR1cm4gdGhpcy5aYShVdCx0KX1KYSh0LGkpe3JldHVybiB0aGlzLmZhLm1hcCgocz0+cy5Rcyh0LGkpKSkuZmlsdGVyKCh0PT5udWxsIT09dCkpfWNuKCl7cmV0dXJuW3RoaXMucHIsLi4udGhpcy5vYS5tYXAoKHQ9PnQuTXIoKSkpXX1xbih0LGkpe2lmKGkhPT10aGlzLmhuJiYhdGhpcy5ZYSgpKXJldHVybltdO2NvbnN0IHM9Wy4uLnRoaXMubW5dO2Zvcihjb25zdCB0IG9mIHRoaXMub2Epcy5wdXNoKHQuZ3IoKSk7cmV0dXJuIHRoaXMuZmEuZm9yRWFjaCgodD0+e3MucHVzaCguLi50LnFuKCkpfSkpLHN9ZG4oKXtjb25zdCB0PVtdO3JldHVybiB0aGlzLmZhLmZvckVhY2goKGk9Pnt0LnB1c2goLi4uaS5kbigpKX0pKSx0fWxhKHQsaSl7aWYodm9pZCAwIT09dGhpcy55bi5hdXRvc2NhbGVJbmZvUHJvdmlkZXIpe2NvbnN0IHM9dGhpcy55bi5hdXRvc2NhbGVJbmZvUHJvdmlkZXIoKCgpPT57Y29uc3Qgcz10aGlzLlFhKHQsaSk7cmV0dXJuIG51bGw9PT1zP251bGw6cy5zcigpfSkpO3JldHVybiBidC5lcihzKX1yZXR1cm4gdGhpcy5RYSh0LGkpfUtoKCl7Y29uc3QgdD10aGlzLnluLnByaWNlRm9ybWF0O3JldHVybiB0LmJhc2U/PzEvdC5taW5Nb3ZlfXRsKCl7cmV0dXJuIHRoaXMuaWx9Tm4oKXt0aGlzLlloLmt0KCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5tbil0Lmt0KCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5vYSl0Lmt0KCk7dGhpcy5kci5rdCgpLHRoaXMuX2Eua3QoKSx0aGlzLnVhPy5rdCgpLHRoaXMuZmEuZm9yRWFjaCgodD0+dC5ObigpKSl9RnQoKXtyZXR1cm4gZihzdXBlci5GdCgpKX1BdCh0KXtpZigiTGluZSIhPT10aGlzLndhJiYiQXJlYSIhPT10aGlzLndhJiYiQmFzZWxpbmUiIT09dGhpcy53YXx8IXRoaXMueW4uY3Jvc3NoYWlyTWFya2VyVmlzaWJsZSlyZXR1cm4gbnVsbDtjb25zdCBpPXRoaXMucXQuTWgodCk7cmV0dXJuIG51bGw9PT1pP251bGw6e010OmkuV3RbM10sZnQ6dGhpcy5ubCgpLEh0OnRoaXMuc2woKSxPdDp0aGlzLmVsKCksenQ6dGhpcy5ybCh0KX19SGUoKXtyZXR1cm4gdGhpcy55bi50aXRsZX1JdCgpe3JldHVybiB0aGlzLnluLnZpc2libGV9aGwodCl7dGhpcy5mYS5wdXNoKG5ldyBBdCh0LHRoaXMpKX1hbCh0KXt0aGlzLmZhPXRoaXMuZmEuZmlsdGVyKChpPT5pLlFoKCkhPT10KSl9bGwoKXtpZigiQ3VzdG9tIj09PXRoaXMud2EpcmV0dXJuIHQ9PnRoaXMuWWguV2EodCl9b2woKXtpZigiQ3VzdG9tIj09PXRoaXMud2EpcmV0dXJuIHQ9PnRoaXMuWWguX2wodCl9dWwoKXsKcmV0dXJuIHRoaXMucXQuTGgoKX1ZYSgpe3JldHVybiFqKHRoaXMuRnQoKS5jbCgpKX1RYSh0LGkpe2lmKCF2KHQpfHwhdihpKXx8dGhpcy5xdC5HaSgpKXJldHVybiBudWxsO2NvbnN0IHM9IkxpbmUiPT09dGhpcy53YXx8IkFyZWEiPT09dGhpcy53YXx8IkJhc2VsaW5lIj09PXRoaXMud2F8fCJIaXN0b2dyYW0iPT09dGhpcy53YT9bM106WzIsMV0sZT10aGlzLnF0LkVoKHQsaSxzKTtsZXQgaD1udWxsIT09ZT9uZXcgdnQoZS5VaCxlLiRoKTpudWxsLG49bnVsbDtpZigiSGlzdG9ncmFtIj09PXRoaXMuYmgoKSl7Y29uc3QgdD10aGlzLnluLmJhc2UsaT1uZXcgdnQodCx0KTtoPW51bGwhPT1oP2guU3MoaSk6aX1yZXR1cm4gdGhpcy5mYS5mb3JFYWNoKChzPT57Y29uc3QgZT1zLmxhKHQsaSk7aWYoZT8ucHJpY2VSYW5nZSl7Y29uc3QgdD1uZXcgdnQoZS5wcmljZVJhbmdlLm1pblZhbHVlLGUucHJpY2VSYW5nZS5tYXhWYWx1ZSk7aD1udWxsIT09aD9oLlNzKHQpOnR9ZT8ubWFyZ2lucyYmKG49ZS5tYXJnaW5zKX0pKSxuZXcgYnQoaCxuKX1ubCgpe3N3aXRjaCh0aGlzLndhKXtjYXNlIkxpbmUiOmNhc2UiQXJlYSI6Y2FzZSJCYXNlbGluZSI6cmV0dXJuIHRoaXMueW4uY3Jvc3NoYWlyTWFya2VyUmFkaXVzfXJldHVybiAwfXNsKCl7c3dpdGNoKHRoaXMud2Epe2Nhc2UiTGluZSI6Y2FzZSJBcmVhIjpjYXNlIkJhc2VsaW5lIjp7Y29uc3QgdD10aGlzLnluLmNyb3NzaGFpck1hcmtlckJvcmRlckNvbG9yO2lmKDAhPT10Lmxlbmd0aClyZXR1cm4gdH19cmV0dXJuIG51bGx9ZWwoKXtzd2l0Y2godGhpcy53YSl7Y2FzZSJMaW5lIjpjYXNlIkFyZWEiOmNhc2UiQmFzZWxpbmUiOnJldHVybiB0aGlzLnluLmNyb3NzaGFpck1hcmtlckJvcmRlcldpZHRofXJldHVybiAwfXJsKHQpe3N3aXRjaCh0aGlzLndhKXtjYXNlIkxpbmUiOmNhc2UiQXJlYSI6Y2FzZSJCYXNlbGluZSI6e2NvbnN0IHQ9dGhpcy55bi5jcm9zc2hhaXJNYXJrZXJCYWNrZ3JvdW5kQ29sb3I7aWYoMCE9PXQubGVuZ3RoKXJldHVybiB0fX1yZXR1cm4gdGhpcy5TYSgpLlNoKHQpLnNofU1hKCl7c3dpdGNoKHRoaXMueW4ucHJpY2VGb3JtYXQudHlwZSl7Y2FzZSJjdXN0b20iOntjb25zdCB0PXRoaXMueW4ucHJpY2VGb3JtYXQuZm9ybWF0dGVyO3RoaXMuaWw9e2Zvcm1hdDp0LGZvcm1hdFRpY2ttYXJrczp0aGlzLnluLnByaWNlRm9ybWF0LnRpY2ttYXJrc0Zvcm1hdHRlcj8/KGk9PmkubWFwKHQpKX07YnJlYWt9Y2FzZSJ2b2x1bWUiOnRoaXMuaWw9bmV3IGV0KHRoaXMueW4ucHJpY2VGb3JtYXQucHJlY2lzaW9uKTticmVhaztjYXNlInBlcmNlbnQiOnRoaXMuaWw9bmV3IHN0KHRoaXMueW4ucHJpY2VGb3JtYXQucHJlY2lzaW9uKTticmVhaztkZWZhdWx0Ontjb25zdCB0PU1hdGgucG93KDEwLHRoaXMueW4ucHJpY2VGb3JtYXQucHJlY2lzaW9uKTt0aGlzLmlsPW5ldyBpdCh0LHRoaXMueW4ucHJpY2VGb3JtYXQubWluTW92ZSp0KX19bnVsbCE9PXRoaXMuaG4mJnRoaXMuaG4uZGwoKX1aYSh0LGkpe2NvbnN0IHM9W107cmV0dXJuIFp0KHRoaXMuZmEsdCxpLHMpLHN9RmEoKXtjb25zdHtmbDp0LHBsOmksdmw6c309dGhpcy5tbCgpO3JldHVybiB0aGlzLnBhLlNyKHQsaSxzKX1tbCgpe2NvbnN0IHQ9dGhpcy5RdCgpLkV0KCksaT10LmZsKCkscz13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSxlPXQuTigpLmNvbmZsYXRpb25UaHJlc2hvbGRGYWN0b3I7cmV0dXJue2ZsOmkscGw6cyx2bDp0aGlzLnluLmNvbmZsYXRpb25UaHJlc2hvbGRGYWN0b3I/P2U/PzF9fXdsKHQpe2NvbnN0IGk9dGhpcy5xdC5CaCgpO2xldCBzO2lmKCJDdXN0b20iPT09dGhpcy53YSYmbnVsbCE9PXRoaXMubWEpe2NvbnN0IGU9dGhpcy5sbCgpO2lmKCFlKXRocm93IG5ldyBFcnJvcigiQ3VzdG9tIHNlcmllcyB3aXRoIGNvbmZsYXRpb24gcmVkdWNlciBtdXN0IGhhdmUgYSBwcmljZVZhbHVlQnVpbGRlciBtZXRob2QiKTtzPXRoaXMucGEuQ3IoaSx0LHRoaXMubWEsITAsKHQ9PmUodCkpKX1lbHNlIHM9dGhpcy5wYS5DcihpLHQpO2NvbnN0IGU9THQoKTtyZXR1cm4gZS5odChzKSxlfVVhKHQpe2NvbnN0IGk9dGhpcy53bCh0KTt0aGlzLnZhLnNldCh0LGkpfURhKHQpe2lmKCJDdXN0b20iPT09dGhpcy53YSYmKG51bGw9PT10aGlzLm1hfHwhdGhpcy5sbCgpKSlyZXR1cm47dGhpcy52YS5jbGVhcigpO2NvbnN0IGk9dGhpcy5RdCgpLkV0KCkuTWwoKTtmb3IoY29uc3QgcyBvZiBpKXtjb25zdCBpPSgpPT57dGhpcy5nbChzKX0sZT0ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93fHwib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGY7ZT8uU2w/LmJsP2UuU2wuYmwoKCgpPT57aSgpfSkse3NlOnR9KTpQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+aSgpKSl9fWdsKHQpe2lmKHRoaXMudmEuaGFzKHQpKXJldHVybjtpZigwPT09dGhpcy5xdC5CaCgpLmxlbmd0aClyZXR1cm47Y29uc3QgaT10aGlzLndsKHQpO3RoaXMudmEuc2V0KHQsaSl9fWNvbnN0IFh0PVszXSxKdD1bMCwxLDIsM107Y2xhc3MgdGl7Y29uc3RydWN0b3IodCl7dGhpcy55bj10fXhsKHQsaSxzKXtsZXQgZT10O2lmKDA9PT10aGlzLnluLm1vZGUpcmV0dXJuIGU7Y29uc3QgaD1zLlBuKCksbj1oLkx0KCk7aWYobnVsbD09PW4pcmV0dXJuIGU7Y29uc3Qgcj1oLk50KHQsbiksbz1zLkNsKCkuZmlsdGVyKCh0PT50IGluc3RhbmNlb2YganQpKS5yZWR1Y2UoKCh0LGUpPT57aWYocy5acyhlKXx8IWUuSXQoKSlyZXR1cm4gdDtjb25zdCBoPWUuRnQoKSxuPWUuVW4oKTtpZihoLkdpKCl8fCFuLnplKGkpKXJldHVybiB0O2NvbnN0IHI9bi5NaChpKTtpZihudWxsPT09cilyZXR1cm4gdDtjb25zdCBvPWQoZS5MdCgpKSxsPTM9PT10aGlzLnluLm1vZGU/SnQ6WHQ7cmV0dXJuIHQuY29uY2F0KGwubWFwKCh0PT5oLk50KHIuV3RbdF0sby5XdCkpKSl9KSxbXSk7aWYoMD09PW8ubGVuZ3RoKXJldHVybiBlO28uc29ydCgoKHQsaSk9Pk1hdGguYWJzKHQtciktTWF0aC5hYnMoaS1yKSkpO2NvbnN0IGw9b1swXTtyZXR1cm4gZT1oLlRuKGwsbiksZX19ZnVuY3Rpb24gaWkodCxpLHMpewpyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgodCxpKSxzKX1mdW5jdGlvbiBzaSh0LGkscyl7cmV0dXJuIGktdDw9c31jbGFzcyBlaSBleHRlbmRzIHp7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMucXQ9bnVsbH1odCh0KXt0aGlzLnF0PXR9ZXQoe2NvbnRleHQ6dCxiaXRtYXBTaXplOmksaG9yaXpvbnRhbFBpeGVsUmF0aW86cyx2ZXJ0aWNhbFBpeGVsUmF0aW86ZX0pe2lmKG51bGw9PT10aGlzLnF0KXJldHVybjtjb25zdCBoPU1hdGgubWF4KDEsTWF0aC5mbG9vcihzKSk7dC5saW5lV2lkdGg9aCxmdW5jdGlvbih0LGkpe3Quc2F2ZSgpLHQubGluZVdpZHRoJTImJnQudHJhbnNsYXRlKC41LC41KSxpKCksdC5yZXN0b3JlKCl9KHQsKCgpPT57Y29uc3Qgbj1mKHRoaXMucXQpO2lmKG4ueWwpe3Quc3Ryb2tlU3R5bGU9bi5rbCxsKHQsbi5QbCksdC5iZWdpblBhdGgoKTtmb3IoY29uc3QgZSBvZiBuLlRsKXtjb25zdCBuPU1hdGgucm91bmQoZS5SbCpzKTt0Lm1vdmVUbyhuLC1oKSx0LmxpbmVUbyhuLGkuaGVpZ2h0K2gpfXQuc3Ryb2tlKCl9aWYobi5EbCl7dC5zdHJva2VTdHlsZT1uLklsLGwodCxuLlZsKSx0LmJlZ2luUGF0aCgpO2Zvcihjb25zdCBzIG9mIG4uQmwpe2NvbnN0IG49TWF0aC5yb3VuZChzLlJsKmUpO3QubW92ZVRvKC1oLG4pLHQubGluZVRvKGkud2lkdGgraCxuKX10LnN0cm9rZSgpfX0pKX19Y2xhc3MgaGl7Y29uc3RydWN0b3IodCl7dGhpcy5YdD1uZXcgZWksdGhpcy54dD0hMCx0aGlzLnl0PXR9a3QoKXt0aGlzLnh0PSEwfVR0KCl7aWYodGhpcy54dCl7Y29uc3QgdD10aGlzLnl0LlF0KCkuTigpLmdyaWQsaT17RGw6dC5ob3J6TGluZXMudmlzaWJsZSx5bDp0LnZlcnRMaW5lcy52aXNpYmxlLElsOnQuaG9yekxpbmVzLmNvbG9yLGtsOnQudmVydExpbmVzLmNvbG9yLFZsOnQuaG9yekxpbmVzLnN0eWxlLFBsOnQudmVydExpbmVzLnN0eWxlLEJsOnRoaXMueXQuUG4oKS5FbCgpLFRsOih0aGlzLnl0LlF0KCkuRXQoKS5FbCgpfHxbXSkubWFwKCh0PT4oe1JsOnQuY29vcmR9KSkpfTt0aGlzLlh0Lmh0KGkpLHRoaXMueHQ9ITF9cmV0dXJuIHRoaXMuWHR9fWNsYXNzIG5pe2NvbnN0cnVjdG9yKHQpe3RoaXMuWWg9bmV3IGhpKHQpfXdyKCl7cmV0dXJuIHRoaXMuWWh9fWNvbnN0IHJpPXtBbDo0LExsOjFlLTR9O2Z1bmN0aW9uIG9pKHQsaSl7Y29uc3Qgcz0xMDAqKHQtaSkvaTtyZXR1cm4gaTwwPy1zOnN9ZnVuY3Rpb24gbGkodCxpKXtjb25zdCBzPW9pKHQuSmUoKSxpKSxlPW9pKHQuUWUoKSxpKTtyZXR1cm4gbmV3IHZ0KHMsZSl9ZnVuY3Rpb24gYWkodCxpKXtjb25zdCBzPTEwMCoodC1pKS9pKzEwMDtyZXR1cm4gaTwwPy1zOnN9ZnVuY3Rpb24gdWkodCxpKXtjb25zdCBzPWFpKHQuSmUoKSxpKSxlPWFpKHQuUWUoKSxpKTtyZXR1cm4gbmV3IHZ0KHMsZSl9ZnVuY3Rpb24gY2kodCxpKXtjb25zdCBzPU1hdGguYWJzKHQpO2lmKHM8MWUtMTUpcmV0dXJuIDA7Y29uc3QgZT1NYXRoLmxvZzEwKHMraS5MbCkraS5BbDtyZXR1cm4gdDwwPy1lOmV9ZnVuY3Rpb24gZmkodCxpKXtjb25zdCBzPU1hdGguYWJzKHQpO2lmKHM8MWUtMTUpcmV0dXJuIDA7Y29uc3QgZT1NYXRoLnBvdygxMCxzLWkuQWwpLWkuTGw7cmV0dXJuIHQ8MD8tZTplfWZ1bmN0aW9uIGRpKHQsaSl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3Qgcz1jaSh0LkplKCksaSksZT1jaSh0LlFlKCksaSk7cmV0dXJuIG5ldyB2dChzLGUpfWZ1bmN0aW9uIG1pKHQsaSl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3Qgcz1maSh0LkplKCksaSksZT1maSh0LlFlKCksaSk7cmV0dXJuIG5ldyB2dChzLGUpfWZ1bmN0aW9uIHBpKHQpe2lmKG51bGw9PT10KXJldHVybiByaTtjb25zdCBpPU1hdGguYWJzKHQuUWUoKS10LkplKCkpO2lmKGk+PTF8fGk8MWUtMTUpcmV0dXJuIHJpO2NvbnN0IHM9TWF0aC5jZWlsKE1hdGguYWJzKE1hdGgubG9nMTAoaSkpKSxlPXJpLkFsK3M7cmV0dXJue0FsOmUsTGw6MS9NYXRoLnBvdygxMCxlKX19Y2xhc3MgZ2l7Y29uc3RydWN0b3IodCxpKXtpZih0aGlzLnpsPXQsdGhpcy5PbD1pLGZ1bmN0aW9uKHQpe2lmKHQ8MClyZXR1cm4hMTtpZih0PjFlMTgpcmV0dXJuITA7Zm9yKGxldCBpPXQ7aT4xO2kvPTEwKWlmKGklMTAhPTApcmV0dXJuITE7cmV0dXJuITB9KHRoaXMuemwpKXRoaXMuTmw9WzIsMi41LDJdO2Vsc2V7dGhpcy5ObD1bXTtmb3IobGV0IHQ9dGhpcy56bDsxIT09dDspe2lmKHQlMj09MCl0aGlzLk5sLnB1c2goMiksdC89MjtlbHNle2lmKHQlNSE9MCl0aHJvdyBuZXcgRXJyb3IoInVuZXhwZWN0ZWQgYmFzZSIpO3RoaXMuTmwucHVzaCgyLDIuNSksdC89NX1pZih0aGlzLk5sLmxlbmd0aD4xMDApdGhyb3cgbmV3IEVycm9yKCJzb21ldGhpbmcgd3Jvbmcgd2l0aCBiYXNlIil9fX1GbCh0LGkscyl7Y29uc3QgZT0wPT09dGhpcy56bD8wOjEvdGhpcy56bDtsZXQgaD1NYXRoLnBvdygxMCxNYXRoLm1heCgwLE1hdGguY2VpbChNYXRoLmxvZzEwKHQtaSkpKSksbj0wLHI9dGhpcy5PbFswXTtmb3IoOzspe2NvbnN0IHQ9c2koaCxlLDFlLTE0KSYmaD5lKzFlLTE0LGk9c2koaCxzKnIsMWUtMTQpLG89c2koaCwxLDFlLTE0KTtpZighKHQmJmkmJm8pKWJyZWFrO2gvPXIscj10aGlzLk9sWysrbiV0aGlzLk9sLmxlbmd0aF19aWYoaDw9ZSsxZS0xNCYmKGg9ZSksaD1NYXRoLm1heCgxLGgpLHRoaXMuTmwubGVuZ3RoPjAmJihvPWgsTWF0aC5hYnMoby0xKTwxZS0xNCkpZm9yKG49MCxyPXRoaXMuTmxbMF07c2koaCxzKnIsMWUtMTQpJiZoPmUrMWUtMTQ7KWgvPXIscj10aGlzLk5sWysrbiV0aGlzLk5sLmxlbmd0aF07dmFyIG87cmV0dXJuIGh9fWNsYXNzIHZpe2NvbnN0cnVjdG9yKHQsaSxzLGUpe3RoaXMuV2w9W10sdGhpcy5LaT10LHRoaXMuemw9aSx0aGlzLkhsPXMsdGhpcy5VbD1lfUZsKHQsaSl7aWYodDxpKXRocm93IG5ldyBFcnJvcigiaGlnaCA8IGxvdyIpCjtjb25zdCBzPXRoaXMuS2kuJHQoKSxlPSh0LWkpKnRoaXMuJGwoKS9zLGg9bmV3IGdpKHRoaXMuemwsWzIsMi41LDJdKSxuPW5ldyBnaSh0aGlzLnpsLFsyLDIsMi41XSkscj1uZXcgZ2kodGhpcy56bCxbMi41LDIsMl0pLG89W107cmV0dXJuIG8ucHVzaChoLkZsKHQsaSxlKSxuLkZsKHQsaSxlKSxyLkZsKHQsaSxlKSksZnVuY3Rpb24odCl7aWYodC5sZW5ndGg8MSl0aHJvdyBFcnJvcigiYXJyYXkgaXMgZW1wdHkiKTtsZXQgaT10WzBdO2ZvcihsZXQgcz0xO3M8dC5sZW5ndGg7KytzKXRbc108aSYmKGk9dFtzXSk7cmV0dXJuIGl9KG8pfWpsKCl7Y29uc3QgdD10aGlzLktpLGk9dC5MdCgpO2lmKG51bGw9PT1pKXJldHVybiB2b2lkKHRoaXMuV2w9W10pO2NvbnN0IHM9dC4kdCgpLGU9dGhpcy5IbChzLTEsaSksaD10aGlzLkhsKDAsaSksbj10aGlzLktpLk4oKS5lbnRpcmVUZXh0T25seT90aGlzLnFsKCkvMjowLHI9bixvPXMtMS1uLGw9TWF0aC5tYXgoZSxoKSxhPU1hdGgubWluKGUsaCk7aWYobD09PWEpcmV0dXJuIHZvaWQodGhpcy5XbD1bXSk7Y29uc3QgdT10aGlzLkZsKGwsYSk7aWYodGhpcy5ZbChpLHUsbCxhLHIsbyksdC5LbCgpJiZ0aGlzLlpsKHUsYSxsKSl7Y29uc3QgdD10aGlzLktpLkdsKCk7dGhpcy5YbChpLHUscixvLHQsMip0KX1jb25zdCBjPXRoaXMuV2wubWFwKCh0PT50LkpsKSksZj10aGlzLktpLlFsKGMpO2ZvcihsZXQgdD0wO3Q8dGhpcy5XbC5sZW5ndGg7dCsrKXRoaXMuV2xbdF0uaW89Zlt0XX1FbCgpe3JldHVybiB0aGlzLldsfXFsKCl7cmV0dXJuIHRoaXMuS2kuaygpfSRsKCl7cmV0dXJuIE1hdGguY2VpbCh0aGlzLnFsKCkqdGhpcy5LaS5OKCkudGlja01hcmtEZW5zaXR5KX1ZbCh0LGkscyxlLGgsbil7Y29uc3Qgcj10aGlzLldsLG89dGhpcy5LaTtsZXQgbD1zJWk7bCs9bDwwP2k6MDtjb25zdCBhPXM+PWU/MTotMTtsZXQgdT1udWxsLGM9MDtmb3IobGV0IGY9cy1sO2Y+ZTtmLT1pKXtjb25zdCBzPXRoaXMuVWwoZix0LCEwKTtudWxsIT09dSYmTWF0aC5hYnMocy11KTx0aGlzLiRsKCl8fHM8aHx8cz5ufHwoYzxyLmxlbmd0aD8ocltjXS5SbD1zLHJbY10uaW89by5ubyhmKSxyW2NdLkpsPWYpOnIucHVzaCh7Umw6cyxpbzpvLm5vKGYpLEpsOmZ9KSxjKyssdT1zLG8uc28oKSYmKGk9dGhpcy5GbChmKmEsZSkpKX1yLmxlbmd0aD1jfVhsKHQsaSxzLGUsaCxuKXtjb25zdCByPXRoaXMuV2wsbz10aGlzLmVvKHQscyxoLG4pLGw9dGhpcy5lbyh0LGUsLW4sLWgpLGE9dGhpcy5VbCgwLHQsITApLXRoaXMuVWwoaSx0LCEwKTtyLmxlbmd0aD4wJiZyWzBdLlJsLW8uUmw8YS8yJiZyLnNoaWZ0KCksci5sZW5ndGg+MCYmbC5SbC1yW3IubGVuZ3RoLTFdLlJsPGEvMiYmci5wb3AoKSxyLnVuc2hpZnQobyksci5wdXNoKGwpfWVvKHQsaSxzLGUpe2NvbnN0IGg9KHMrZSkvMixuPXRoaXMuSGwoaStzLHQpLHI9dGhpcy5IbChpK2UsdCksbz1NYXRoLm1pbihuLHIpLGw9TWF0aC5tYXgobixyKSxhPU1hdGgubWF4KC4xLHRoaXMuRmwobCxvKSksdT10aGlzLkhsKGkraCx0KSxjPXUtdSVhLGY9dGhpcy5VbChjLHQsITApO3JldHVybntpbzp0aGlzLktpLm5vKGMpLFJsOmYsSmw6Y319WmwodCxpLHMpe2xldCBlPWQodGhpcy5LaS5hcigpKTtyZXR1cm4gdGhpcy5LaS5zbygpJiYoZT1taShlLHRoaXMuS2kucm8oKSkpLGUuSmUoKS1pPHQmJnMtZS5RZSgpPHR9fWZ1bmN0aW9uIGJpKHQpe3JldHVybiB0LnNsaWNlKCkuc29ydCgoKHQsaSk9PmYodC5sbigpKS1mKGkubG4oKSkpKX12YXIgd2k7IWZ1bmN0aW9uKHQpe3RbdC5Ob3JtYWw9MF09Ik5vcm1hbCIsdFt0LkxvZ2FyaXRobWljPTFdPSJMb2dhcml0aG1pYyIsdFt0LlBlcmNlbnRhZ2U9Ml09IlBlcmNlbnRhZ2UiLHRbdC5JbmRleGVkVG8xMDA9M109IkluZGV4ZWRUbzEwMCJ9KHdpfHwod2k9e30pKTtjb25zdCBNaT1uZXcgc3QseWk9bmV3IGl0KDEwMCwxKTtjbGFzcyB4aXtjb25zdHJ1Y3Rvcih0LGkscyxlLGgpe3RoaXMuaG89MCx0aGlzLmFvPW51bGwsdGhpcy5ycj1udWxsLHRoaXMubG89bnVsbCx0aGlzLm9vPXtfbzohMSx1bzpudWxsfSx0aGlzLmNvPSExLHRoaXMuZG89MCx0aGlzLmZvPTAsdGhpcy5wbz1uZXcgbSx0aGlzLnZvPW5ldyBtLHRoaXMubW89W10sdGhpcy53bz1udWxsLHRoaXMuTW89bnVsbCx0aGlzLmJvPW51bGwsdGhpcy5Tbz1udWxsLHRoaXMueG89bnVsbCx0aGlzLmlsPXlpLHRoaXMuQ289cGkobnVsbCksdGhpcy55bz10LHRoaXMueW49aSx0aGlzLmtvPXMsdGhpcy5Qbz1lLHRoaXMuVG89aCx0aGlzLlJvPW5ldyB2aSh0aGlzLDEwMCx0aGlzLkRvLmJpbmQodGhpcyksdGhpcy5Jby5iaW5kKHRoaXMpKX1jbCgpe3JldHVybiB0aGlzLnlvfU4oKXtyZXR1cm4gdGhpcy55bn12cih0KXtpZihwKHRoaXMueW4sdCksdGhpcy5kbCgpLHZvaWQgMCE9PXQubW9kZSYmdGhpcy5Wbyh7X2U6dC5tb2RlfSksdm9pZCAwIT09dC5zY2FsZU1hcmdpbnMpe2NvbnN0IGk9Yyh0LnNjYWxlTWFyZ2lucy50b3ApLHM9Yyh0LnNjYWxlTWFyZ2lucy5ib3R0b20pO2lmKGk8MHx8aT4xKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0b3AgbWFyZ2luIC0gZXhwZWN0IHZhbHVlIGJldHdlZW4gMCBhbmQgMSwgZ2l2ZW49JHtpfWApO2lmKHM8MHx8cz4xKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBib3R0b20gbWFyZ2luIC0gZXhwZWN0IHZhbHVlIGJldHdlZW4gMCBhbmQgMSwgZ2l2ZW49JHtzfWApO2lmKGkrcz4xKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtYXJnaW5zIC0gc3VtIG9mIG1hcmdpbnMgbXVzdCBiZSBsZXNzIHRoYW4gMSwgZ2l2ZW49JHtpK3N9YCk7dGhpcy5CbygpLHRoaXMuYm89bnVsbH19RW8oKXtyZXR1cm4gdGhpcy55bi5hdXRvU2NhbGV9QW8oKXtyZXR1cm4gdGhpcy5jb31zbygpe3JldHVybiAxPT09dGhpcy55bi5tb2RlfWplKCl7cmV0dXJuIDI9PT10aGlzLnluLm1vZGV9TG8oKXtyZXR1cm4gMz09PXRoaXMueW4ubW9kZX1ybygpe3JldHVybiB0aGlzLkNvfV9lKCl7cmV0dXJue2hzOnRoaXMueW4uYXV0b1NjYWxlLHpvOnRoaXMueW4uaW52ZXJ0U2NhbGUsX2U6dGhpcy55bi5tb2RlfX1Wbyh0KXsKY29uc3QgaT10aGlzLl9lKCk7bGV0IHM9bnVsbDt2b2lkIDAhPT10LmhzJiYodGhpcy55bi5hdXRvU2NhbGU9dC5ocyksdm9pZCAwIT09dC5fZSYmKHRoaXMueW4ubW9kZT10Ll9lLDIhPT10Ll9lJiYzIT09dC5fZXx8KHRoaXMueW4uYXV0b1NjYWxlPSEwKSx0aGlzLm9vLl9vPSExKSwxPT09aS5fZSYmdC5fZSE9PWkuX2UmJihmdW5jdGlvbih0LGkpe2lmKG51bGw9PT10KXJldHVybiExO2NvbnN0IHM9ZmkodC5KZSgpLGkpLGU9ZmkodC5RZSgpLGkpO3JldHVybiBpc0Zpbml0ZShzKSYmaXNGaW5pdGUoZSl9KHRoaXMucnIsdGhpcy5Dbyk/KHM9bWkodGhpcy5ycix0aGlzLkNvKSxudWxsIT09cyYmdGhpcy5PbyhzKSk6dGhpcy55bi5hdXRvU2NhbGU9ITApLDE9PT10Ll9lJiZ0Ll9lIT09aS5fZSYmKHM9ZGkodGhpcy5ycix0aGlzLkNvKSxudWxsIT09cyYmdGhpcy5PbyhzKSk7Y29uc3QgZT1pLl9lIT09dGhpcy55bi5tb2RlO2UmJigyPT09aS5fZXx8dGhpcy5qZSgpKSYmdGhpcy5kbCgpLGUmJigzPT09aS5fZXx8dGhpcy5MbygpKSYmdGhpcy5kbCgpLHZvaWQgMCE9PXQuem8mJmkuem8hPT10LnpvJiYodGhpcy55bi5pbnZlcnRTY2FsZT10LnpvLHRoaXMuTm8oKSksdGhpcy52by5wKGksdGhpcy5fZSgpKX1Gbygpe3JldHVybiB0aGlzLnZvfWsoKXtyZXR1cm4gdGhpcy5rby5mb250U2l6ZX0kdCgpe3JldHVybiB0aGlzLmhvfVdvKHQpe3RoaXMuaG8hPT10JiYodGhpcy5obz10LHRoaXMuQm8oKSx0aGlzLmJvPW51bGwpfUhvKCl7aWYodGhpcy5hbylyZXR1cm4gdGhpcy5hbztjb25zdCB0PXRoaXMuJHQoKS10aGlzLlVvKCktdGhpcy4kbygpO3JldHVybiB0aGlzLmFvPXQsdH1hcigpe3JldHVybiB0aGlzLmpvKCksdGhpcy5ycn1Pbyh0LGkpe2NvbnN0IHM9dGhpcy5ycjsoaXx8bnVsbD09PXMmJm51bGwhPT10fHxudWxsIT09cyYmIXMuR2UodCkpJiYodGhpcy5ibz1udWxsLHRoaXMucnI9dCl9cW8odCl7dGhpcy5Pbyh0KSx0aGlzLllvKG51bGwhPT10KX1HaSgpe3JldHVybiB0aGlzLmpvKCksMD09PXRoaXMuaG98fCF0aGlzLnJyfHx0aGlzLnJyLkdpKCl9S28odCl7cmV0dXJuIHRoaXMuem8oKT90OnRoaXMuJHQoKS0xLXR9TnQodCxpKXtyZXR1cm4gdGhpcy5qZSgpP3Q9b2kodCxpKTp0aGlzLkxvKCkmJih0PWFpKHQsaSkpLHRoaXMuSW8odCxpKX1abyh0LGkscyl7dGhpcy5qbygpO2NvbnN0IGU9dGhpcy4kbygpLGg9Zih0aGlzLmFyKCkpLG49aC5KZSgpLHI9aC5RZSgpLG89dGhpcy5IbygpLTEsbD10aGlzLnpvKCksYT1vLyhyLW4pLHU9dm9pZCAwPT09cz8wOnMuZnJvbSxjPXZvaWQgMD09PXM/dC5sZW5ndGg6cy50byxkPXRoaXMuR28oKTtmb3IobGV0IHM9dTtzPGM7cysrKXtjb25zdCBoPXRbc10scj1oLk10O2lmKGlzTmFOKHIpKWNvbnRpbnVlO2xldCBvPXI7bnVsbCE9PWQmJihvPWQoaC5NdCxpKSk7Y29uc3QgdT1lK2EqKG8tbiksYz1sP3U6dGhpcy5oby0xLXU7aC51dD1jfX1Ybyh0LGkscyl7dGhpcy5qbygpO2NvbnN0IGU9dGhpcy4kbygpLGg9Zih0aGlzLmFyKCkpLG49aC5KZSgpLHI9aC5RZSgpLG89dGhpcy5IbygpLTEsbD10aGlzLnpvKCksYT1vLyhyLW4pLHU9dm9pZCAwPT09cz8wOnMuZnJvbSxjPXZvaWQgMD09PXM/dC5sZW5ndGg6cy50byxkPXRoaXMuR28oKTtmb3IobGV0IHM9dTtzPGM7cysrKXtjb25zdCBoPXRbc107bGV0IHI9aC5qcixvPWgucXIsdT1oLllyLGM9aC5LcjtudWxsIT09ZCYmKHI9ZChoLmpyLGkpLG89ZChoLnFyLGkpLHU9ZChoLllyLGkpLGM9ZChoLktyLGkpKTtsZXQgZj1lK2EqKHItbiksbT1sP2Y6dGhpcy5oby0xLWY7aC5Kbz1tLGY9ZSthKihvLW4pLG09bD9mOnRoaXMuaG8tMS1mLGguUW89bSxmPWUrYSoodS1uKSxtPWw/Zjp0aGlzLmhvLTEtZixoLnRfPW0sZj1lK2EqKGMtbiksbT1sP2Y6dGhpcy5oby0xLWYsaC5pXz1tfX1Ubih0LGkpe2NvbnN0IHM9dGhpcy5Ebyh0LGkpO3JldHVybiB0aGlzLm5fKHMsaSl9bl8odCxpKXtsZXQgcz10O3JldHVybiB0aGlzLmplKCk/cz1mdW5jdGlvbih0LGkpe3JldHVybiBpPDAmJih0PS10KSx0LzEwMCppK2l9KHMsaSk6dGhpcy5MbygpJiYocz1mdW5jdGlvbih0LGkpe3JldHVybiB0LT0xMDAsaTwwJiYodD0tdCksdC8xMDAqaStpfShzLGkpKSxzfUNsKCl7cmV0dXJuIHRoaXMubW99RHQoKXtyZXR1cm4gdGhpcy5Nb3x8KHRoaXMuTW89YmkodGhpcy5tbykpLHRoaXMuTW99c18odCl7LTE9PT10aGlzLm1vLmluZGV4T2YodCkmJih0aGlzLm1vLnB1c2godCksdGhpcy5kbCgpLHRoaXMuZV8oKSl9cl8odCl7Y29uc3QgaT10aGlzLm1vLmluZGV4T2YodCk7aWYoLTE9PT1pKXRocm93IG5ldyBFcnJvcigic291cmNlIGlzIG5vdCBhdHRhY2hlZCB0byBzY2FsZSIpO3RoaXMubW8uc3BsaWNlKGksMSksMD09PXRoaXMubW8ubGVuZ3RoJiYodGhpcy5Wbyh7aHM6ITB9KSx0aGlzLk9vKG51bGwpKSx0aGlzLmRsKCksdGhpcy5lXygpfUx0KCl7bGV0IHQ9bnVsbDtmb3IoY29uc3QgaSBvZiB0aGlzLm1vKXtjb25zdCBzPWkuTHQoKTtudWxsIT09cyYmKG51bGw9PT10fHxzLnphPHQuemEpJiYodD1zKX1yZXR1cm4gbnVsbD09PXQ/bnVsbDp0Lld0fXpvKCl7cmV0dXJuIHRoaXMueW4uaW52ZXJ0U2NhbGV9RWwoKXtjb25zdCB0PW51bGw9PT10aGlzLkx0KCk7aWYobnVsbCE9PXRoaXMuYm8mJih0fHx0aGlzLmJvLmhfPT09dCkpcmV0dXJuIHRoaXMuYm8uRWw7dGhpcy5Sby5qbCgpO2NvbnN0IGk9dGhpcy5Sby5FbCgpO3JldHVybiB0aGlzLmJvPXtFbDppLGhfOnR9LHRoaXMucG8ucCgpLGl9YV8oKXtyZXR1cm4gdGhpcy5wb31sXyh0KXt0aGlzLmplKCl8fHRoaXMuTG8oKXx8bnVsbD09PXRoaXMuU28mJm51bGw9PT10aGlzLmxvJiYodGhpcy5HaSgpfHwodGhpcy5Tbz10aGlzLmhvLXQsdGhpcy5sbz1mKHRoaXMuYXIoKSkuWGUoKSkpfW9fKHQpe2lmKHRoaXMuamUoKXx8dGhpcy5MbygpKXJldHVybjtpZihudWxsPT09dGhpcy5TbylyZXR1cm47dGhpcy5Wbyh7aHM6ITF9KSwodD10aGlzLmhvLXQpPDAmJih0PTApO2xldCBpPSh0aGlzLlNvKy4yKih0aGlzLmhvLTEpKS8odCsuMioodGhpcy5oby0xKSkKO2NvbnN0IHM9Zih0aGlzLmxvKS5YZSgpO2k9TWF0aC5tYXgoaSwuMSkscy5pcihpKSx0aGlzLk9vKHMpfV9fKCl7dGhpcy5qZSgpfHx0aGlzLkxvKCl8fCh0aGlzLlNvPW51bGwsdGhpcy5sbz1udWxsKX11Xyh0KXt0aGlzLkVvKCl8fG51bGw9PT10aGlzLnhvJiZudWxsPT09dGhpcy5sbyYmKHRoaXMuR2koKXx8KHRoaXMueG89dCx0aGlzLmxvPWYodGhpcy5hcigpKS5YZSgpKSl9Y18odCl7aWYodGhpcy5FbygpKXJldHVybjtpZihudWxsPT09dGhpcy54bylyZXR1cm47Y29uc3QgaT1mKHRoaXMuYXIoKSkudHIoKS8odGhpcy5IbygpLTEpO2xldCBzPXQtdGhpcy54bzt0aGlzLnpvKCkmJihzKj0tMSk7Y29uc3QgZT1zKmksaD1mKHRoaXMubG8pLlhlKCk7aC5ucihlKSx0aGlzLk9vKGgsITApLHRoaXMuYm89bnVsbH1kXygpe3RoaXMuRW8oKXx8bnVsbCE9PXRoaXMueG8mJih0aGlzLnhvPW51bGwsdGhpcy5sbz1udWxsKX10bCgpe3JldHVybiB0aGlzLmlsfHx0aGlzLmRsKCksdGhpcy5pbH1KaSh0LGkpe3N3aXRjaCh0aGlzLnluLm1vZGUpe2Nhc2UgMjpyZXR1cm4gdGhpcy5mXyhvaSh0LGkpKTtjYXNlIDM6cmV0dXJuIHRoaXMudGwoKS5mb3JtYXQoYWkodCxpKSk7ZGVmYXVsdDpyZXR1cm4gdGhpcy5jcih0KX19bm8odCl7c3dpdGNoKHRoaXMueW4ubW9kZSl7Y2FzZSAyOnJldHVybiB0aGlzLmZfKHQpO2Nhc2UgMzpyZXR1cm4gdGhpcy50bCgpLmZvcm1hdCh0KTtkZWZhdWx0OnJldHVybiB0aGlzLmNyKHQpfX1RbCh0KXtzd2l0Y2godGhpcy55bi5tb2RlKXtjYXNlIDI6cmV0dXJuIHRoaXMucF8odCk7Y2FzZSAzOnJldHVybiB0aGlzLnRsKCkuZm9ybWF0VGlja21hcmtzKHQpO2RlZmF1bHQ6cmV0dXJuIHRoaXMudl8odCl9fXhhKHQpe3JldHVybiB0aGlzLmNyKHQsZih0aGlzLndvKS50bCgpKX1DYSh0LGkpe3JldHVybiB0PW9pKHQsaSksdGhpcy5mXyh0LE1pKX1tXygpe3JldHVybiB0aGlzLm1vfXdfKHQpe3RoaXMub289e3VvOnQsX286ITF9fU5uKCl7dGhpcy5tby5mb3JFYWNoKCh0PT50Lk5uKCkpKX1LbCgpe3JldHVybiB0aGlzLnluLmVuc3VyZUVkZ2VUaWNrTWFya3NWaXNpYmxlJiZ0aGlzLkVvKCl9R2woKXtyZXR1cm4gdGhpcy5rKCkvMn1kbCgpe3RoaXMuYm89bnVsbDtsZXQgdD0xLzA7dGhpcy53bz1udWxsO2Zvcihjb25zdCBpIG9mIHRoaXMubW8paS5sbigpPHQmJih0PWkubG4oKSx0aGlzLndvPWkpO2xldCBpPTEwMDtudWxsIT09dGhpcy53byYmKGk9TWF0aC5yb3VuZCh0aGlzLndvLktoKCkpKSx0aGlzLmlsPXlpLHRoaXMuamUoKT8odGhpcy5pbD1NaSxpPTEwMCk6dGhpcy5MbygpPyh0aGlzLmlsPW5ldyBpdCgxMDAsMSksaT0xMDApOm51bGwhPT10aGlzLndvJiYodGhpcy5pbD10aGlzLndvLnRsKCkpLHRoaXMuUm89bmV3IHZpKHRoaXMsaSx0aGlzLkRvLmJpbmQodGhpcyksdGhpcy5Jby5iaW5kKHRoaXMpKSx0aGlzLlJvLmpsKCl9ZV8oKXt0aGlzLk1vPW51bGx9TV8oKXtyZXR1cm4gbnVsbD09PXRoaXMud298fHRoaXMuamUoKXx8dGhpcy5MbygpPzE6MS90aGlzLndvLktoKCl9WGkoKXtyZXR1cm4gdGhpcy5Ub31Zbyh0KXt0aGlzLmNvPXR9VW8oKXtyZXR1cm4gdGhpcy56bygpP3RoaXMueW4uc2NhbGVNYXJnaW5zLmJvdHRvbSp0aGlzLiR0KCkrdGhpcy5mbzp0aGlzLnluLnNjYWxlTWFyZ2lucy50b3AqdGhpcy4kdCgpK3RoaXMuZG99JG8oKXtyZXR1cm4gdGhpcy56bygpP3RoaXMueW4uc2NhbGVNYXJnaW5zLnRvcCp0aGlzLiR0KCkrdGhpcy5kbzp0aGlzLnluLnNjYWxlTWFyZ2lucy5ib3R0b20qdGhpcy4kdCgpK3RoaXMuZm99am8oKXt0aGlzLm9vLl9vfHwodGhpcy5vby5fbz0hMCx0aGlzLmdfKCkpfUJvKCl7dGhpcy5hbz1udWxsfUlvKHQsaSl7aWYodGhpcy5qbygpLHRoaXMuR2koKSlyZXR1cm4gMDt0PXRoaXMuc28oKSYmdD9jaSh0LHRoaXMuQ28pOnQ7Y29uc3Qgcz1mKHRoaXMuYXIoKSksZT10aGlzLiRvKCkrKHRoaXMuSG8oKS0xKSoodC1zLkplKCkpL3MudHIoKTtyZXR1cm4gdGhpcy5LbyhlKX1Ebyh0LGkpe2lmKHRoaXMuam8oKSx0aGlzLkdpKCkpcmV0dXJuIDA7Y29uc3Qgcz10aGlzLktvKHQpLGU9Zih0aGlzLmFyKCkpLGg9ZS5KZSgpK2UudHIoKSooKHMtdGhpcy4kbygpKS8odGhpcy5IbygpLTEpKTtyZXR1cm4gdGhpcy5zbygpP2ZpKGgsdGhpcy5Dbyk6aH1Obygpe3RoaXMuYm89bnVsbCx0aGlzLlJvLmpsKCl9Z18oKXtpZih0aGlzLkFvKCkmJiF0aGlzLkVvKCkpcmV0dXJuO2NvbnN0IHQ9dGhpcy5vby51bztpZihudWxsPT09dClyZXR1cm47bGV0IGk9bnVsbDtjb25zdCBzPXRoaXMubV8oKTtsZXQgZT0wLGg9MDtmb3IoY29uc3QgbiBvZiBzKXtpZighbi5JdCgpKWNvbnRpbnVlO2NvbnN0IHM9bi5MdCgpO2lmKG51bGw9PT1zKWNvbnRpbnVlO2NvbnN0IHI9bi5sYSh0Lk9hKCksdC5iaSgpKTtsZXQgbz1yJiZyLmFyKCk7aWYobnVsbCE9PW8pe3N3aXRjaCh0aGlzLnluLm1vZGUpe2Nhc2UgMTpvPWRpKG8sdGhpcy5Dbyk7YnJlYWs7Y2FzZSAyOm89bGkobyxzLld0KTticmVhaztjYXNlIDM6bz11aShvLHMuV3QpfWlmKGk9bnVsbD09PWk/bzppLlNzKGYobykpLG51bGwhPT1yKXtjb25zdCB0PXIubHIoKTtudWxsIT09dCYmKGU9TWF0aC5tYXgoZSx0LmFib3ZlKSxoPU1hdGgubWF4KGgsdC5iZWxvdykpfX19aWYodGhpcy5LbCgpJiYoZT1NYXRoLm1heChlLHRoaXMuR2woKSksaD1NYXRoLm1heChoLHRoaXMuR2woKSkpLGU9PT10aGlzLmRvJiZoPT09dGhpcy5mb3x8KHRoaXMuZG89ZSx0aGlzLmZvPWgsdGhpcy5ibz1udWxsLHRoaXMuQm8oKSksbnVsbCE9PWkpe2lmKGkuSmUoKT09PWkuUWUoKSl7Y29uc3QgdD01KnRoaXMuTV8oKTt0aGlzLnNvKCkmJihpPW1pKGksdGhpcy5DbykpLGk9bmV3IHZ0KGkuSmUoKS10LGkuUWUoKSt0KSx0aGlzLnNvKCkmJihpPWRpKGksdGhpcy5DbykpfWlmKHRoaXMuc28oKSl7Y29uc3QgdD1taShpLHRoaXMuQ28pLHM9cGkodCk7aWYobj1zLHI9dGhpcy5DbyxuLkFsIT09ci5BbHx8bi5MbCE9PXIuTGwpe2NvbnN0IGU9bnVsbCE9PXRoaXMubG8/bWkodGhpcy5sbyx0aGlzLkNvKTpudWxsO3RoaXMuQ289cyxpPWRpKHQscyksCm51bGwhPT1lJiYodGhpcy5sbz1kaShlLHMpKX19dGhpcy5PbyhpKX1lbHNlIG51bGw9PT10aGlzLnJyJiYodGhpcy5PbyhuZXcgdnQoLS41LC41KSksdGhpcy5Dbz1waShudWxsKSk7dmFyIG4scn1Hbygpe3JldHVybiB0aGlzLmplKCk/b2k6dGhpcy5MbygpP2FpOnRoaXMuc28oKT90PT5jaSh0LHRoaXMuQ28pOm51bGx9Yl8odCxpLHMpe3JldHVybiB2b2lkIDA9PT1pPyh2b2lkIDA9PT1zJiYocz10aGlzLnRsKCkpLHMuZm9ybWF0KHQpKTppKHQpfVNfKHQsaSxzKXtyZXR1cm4gdm9pZCAwPT09aT8odm9pZCAwPT09cyYmKHM9dGhpcy50bCgpKSxzLmZvcm1hdFRpY2ttYXJrcyh0KSk6aSh0KX1jcih0LGkpe3JldHVybiB0aGlzLmJfKHQsdGhpcy5Qby5wcmljZUZvcm1hdHRlcixpKX12Xyh0LGkpe2NvbnN0IHM9dGhpcy5Qby5wcmljZUZvcm1hdHRlcjtyZXR1cm4gdGhpcy5TXyh0LHRoaXMuUG8udGlja21hcmtzUHJpY2VGb3JtYXR0ZXI/PyhzP3Q9PnQubWFwKHMpOnZvaWQgMCksaSl9Zl8odCxpKXtyZXR1cm4gdGhpcy5iXyh0LHRoaXMuUG8ucGVyY2VudGFnZUZvcm1hdHRlcixpKX1wXyh0LGkpe2NvbnN0IHM9dGhpcy5Qby5wZXJjZW50YWdlRm9ybWF0dGVyO3JldHVybiB0aGlzLlNfKHQsdGhpcy5Qby50aWNrbWFya3NQZXJjZW50YWdlRm9ybWF0dGVyPz8ocz90PT50Lm1hcChzKTp2b2lkIDApLGkpfX1mdW5jdGlvbiBTaSh0KXtyZXR1cm4gdCBpbnN0YW5jZW9mIGp0fWNsYXNzIENpe2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5tbz1bXSx0aGlzLnhfPW5ldyBNYXAsdGhpcy5obz0wLHRoaXMuQ189MCx0aGlzLnlfPTEsdGhpcy5Nbz1udWxsLHRoaXMua189bnVsbCx0aGlzLlBfPSExLHRoaXMuVF89bmV3IG0sdGhpcy5mYT1bXSx0aGlzLmlhPXQsdGhpcy5zbj1pLHRoaXMuUl89bmV3IG5pKHRoaXMpO2NvbnN0IHM9aS5OKCk7dGhpcy5EXz10aGlzLklfKCJsZWZ0IixzLmxlZnRQcmljZVNjYWxlKSx0aGlzLlZfPXRoaXMuSV8oInJpZ2h0IixzLnJpZ2h0UHJpY2VTY2FsZSksdGhpcy5EXy5GbygpLmkodGhpcy5CXy5iaW5kKHRoaXMsdGhpcy5EXyksdGhpcyksdGhpcy5WXy5GbygpLmkodGhpcy5CXy5iaW5kKHRoaXMsdGhpcy5WXyksdGhpcyksdGhpcy5FXyhzKX1FXyh0KXtpZih0LmxlZnRQcmljZVNjYWxlJiZ0aGlzLkRfLnZyKHQubGVmdFByaWNlU2NhbGUpLHQucmlnaHRQcmljZVNjYWxlJiZ0aGlzLlZfLnZyKHQucmlnaHRQcmljZVNjYWxlKSx0LmxvY2FsaXphdGlvbiYmKHRoaXMuRF8uZGwoKSx0aGlzLlZfLmRsKCkpLHQub3ZlcmxheVByaWNlU2NhbGVzKXtjb25zdCBpPUFycmF5LmZyb20odGhpcy54Xy52YWx1ZXMoKSk7Zm9yKGNvbnN0IHMgb2YgaSl7Y29uc3QgaT1mKHNbMF0uRnQoKSk7aS52cih0Lm92ZXJsYXlQcmljZVNjYWxlcyksdC5sb2NhbGl6YXRpb24mJmkuZGwoKX19fUFfKHQpe3N3aXRjaCh0KXtjYXNlImxlZnQiOnJldHVybiB0aGlzLkRfO2Nhc2UicmlnaHQiOnJldHVybiB0aGlzLlZffXJldHVybiB0aGlzLnhfLmhhcyh0KT9jKHRoaXMueF8uZ2V0KHQpKVswXS5GdCgpOm51bGx9bSgpe3RoaXMuUXQoKS5MXygpLnUodGhpcyksdGhpcy5EXy5GbygpLnUodGhpcyksdGhpcy5WXy5GbygpLnUodGhpcyksdGhpcy5tby5mb3JFYWNoKCh0PT57dC5tJiZ0Lm0oKX0pKSx0aGlzLmZhPXRoaXMuZmEuZmlsdGVyKCh0PT57Y29uc3QgaT10LlFoKCk7cmV0dXJuIGkuZGV0YWNoZWQmJmkuZGV0YWNoZWQoKSwhMX0pKSx0aGlzLlRfLnAoKX16Xygpe3JldHVybiB0aGlzLnlffU9fKHQpe3RoaXMueV89dH1RdCgpe3JldHVybiB0aGlzLnNufW5uKCl7cmV0dXJuIHRoaXMuQ199JHQoKXtyZXR1cm4gdGhpcy5ob31OXyh0KXt0aGlzLkNfPXQsdGhpcy5GXygpfVdvKHQpe3RoaXMuaG89dCx0aGlzLkRfLldvKHQpLHRoaXMuVl8uV28odCksdGhpcy5tby5mb3JFYWNoKChpPT57aWYodGhpcy5acyhpKSl7Y29uc3Qgcz1pLkZ0KCk7bnVsbCE9PXMmJnMuV28odCl9fSkpLHRoaXMuRl8oKX1XXyh0KXt0aGlzLlBfPXR9SF8oKXtyZXR1cm4gdGhpcy5QX31VXygpe3JldHVybiB0aGlzLm1vLmZpbHRlcihTaSl9Q2woKXtyZXR1cm4gdGhpcy5tb31acyh0KXtjb25zdCBpPXQuRnQoKTtyZXR1cm4gbnVsbD09PWl8fHRoaXMuRF8hPT1pJiZ0aGlzLlZfIT09aX1zXyh0LGkscyl7dGhpcy5qXyh0LGkscz90LmxuKCk6dGhpcy5tby5sZW5ndGgpfXJfKHQsaSl7Y29uc3Qgcz10aGlzLm1vLmluZGV4T2YodCk7dSgtMSE9PXMsInJlbW92ZURhdGFTb3VyY2U6IGludmFsaWQgZGF0YSBzb3VyY2UiKSx0aGlzLm1vLnNwbGljZShzLDEpLGl8fHRoaXMubW8uZm9yRWFjaCgoKHQsaSk9PnQuX24oaSkpKTtjb25zdCBlPWYodC5GdCgpKS5jbCgpO2lmKHRoaXMueF8uaGFzKGUpKXtjb25zdCBpPWModGhpcy54Xy5nZXQoZSkpLHM9aS5pbmRleE9mKHQpOy0xIT09cyYmKGkuc3BsaWNlKHMsMSksMD09PWkubGVuZ3RoJiZ0aGlzLnhfLmRlbGV0ZShlKSl9Y29uc3QgaD10LkZ0KCk7aCYmaC5DbCgpLmluZGV4T2YodCk+PTAmJihoLnJfKHQpLHRoaXMucV8oaCkpLHRoaXMuWV8oKX1Ycyh0KXtyZXR1cm4gdD09PXRoaXMuRF8/ImxlZnQiOnQ9PT10aGlzLlZfPyJyaWdodCI6Im92ZXJsYXkifUtfKCl7cmV0dXJuIHRoaXMuRF99Wl8oKXtyZXR1cm4gdGhpcy5WX31HXyh0LGkpe3QubF8oaSl9WF8odCxpKXt0Lm9fKGkpLHRoaXMuRl8oKX1KXyh0KXt0Ll9fKCl9UV8odCxpKXt0LnVfKGkpfXR1KHQsaSl7dC5jXyhpKSx0aGlzLkZfKCl9aXUodCl7dC5kXygpfUZfKCl7dGhpcy5tby5mb3JFYWNoKCh0PT57dC5ObigpfSkpfVBuKCl7Y29uc3RbdCxpXT10aGlzLm51KCk7bGV0IHM9bnVsbDtyZXR1cm4gdC5OKCkudmlzaWJsZSYmMCE9PXQuQ2woKS5sZW5ndGg/cz10OmkuTigpLnZpc2libGUmJjAhPT1pLkNsKCkubGVuZ3RoP3M9aTowIT09dGhpcy5tby5sZW5ndGgmJihzPXRoaXMubW9bMF0uRnQoKSksbnVsbD09PXMmJihzPXRoaXMuR3MoKT8/dCksc31Hcygpe2NvbnN0W3QsaV09dGhpcy5udSgpO3JldHVybiB0Lk4oKS52aXNpYmxlP3Q6aS5OKCkudmlzaWJsZT9pOm51bGx9cV8odCl7bnVsbCE9PXQmJnQuRW8oKSYmdGhpcy5zdSh0KX0KZXUodCl7Y29uc3QgaT10aGlzLmlhLkVlKCk7dC5Wbyh7aHM6ITB9KSxudWxsIT09aSYmdC53XyhpKSx0aGlzLkZfKCl9cnUoKXt0aGlzLnN1KHRoaXMuRF8pLHRoaXMuc3UodGhpcy5WXyl9aHUoKXt0aGlzLnFfKHRoaXMuRF8pLHRoaXMucV8odGhpcy5WXyksdGhpcy5tby5mb3JFYWNoKCh0PT57dGhpcy5acyh0KSYmdGhpcy5xXyh0LkZ0KCkpfSkpLHRoaXMuRl8oKSx0aGlzLnNuLm1yKCl9RHQoKXtyZXR1cm4gbnVsbD09PXRoaXMuTW8mJih0aGlzLk1vPWJpKHRoaXMubW8pKSx0aGlzLk1vfWF1KCl7Y29uc3QgdD10aGlzLkR0KCksaT10aGlzLnNuLm91KCk/Lmx1LHM9dGhpcy5zbi5OKCkuaG92ZXJlZFNlcmllc09uVG9wLGU9dGhpcy5rXztpZihudWxsIT09ZSYmZS5LaD09PXQmJmUuX3U9PT1pJiZlLnV1PT09cylyZXR1cm4gZS5jdTtjb25zdCBoPWZ1bmN0aW9uKHQsaSxzKXtpZighcylyZXR1cm4gdDtjb25zdCBlPXQuaW5kZXhPZihpKTtpZigtMT09PWV8fGU9PT10Lmxlbmd0aC0xKXJldHVybiB0O2NvbnN0IGg9W107Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspaSE9PWUmJmgucHVzaCh0W2ldKTtyZXR1cm4gaC5wdXNoKHRbZV0pLGh9KHQsaSxzKTtyZXR1cm4gdGhpcy5rXz17S2g6dCxfdTppLHV1OnMsY3U6aH0saH1kdSh0LGkpe2k9aWkoaSwwLHRoaXMubW8ubGVuZ3RoLTEpO2NvbnN0IHM9dGhpcy5tby5pbmRleE9mKHQpO3UoLTEhPT1zLCJzZXRTZXJpZXNPcmRlcjogaW52YWxpZCBkYXRhIHNvdXJjZSIpLHRoaXMubW8uc3BsaWNlKHMsMSksdGhpcy5tby5zcGxpY2UoaSwwLHQpLHRoaXMubW8uZm9yRWFjaCgoKHQsaSk9PnQuX24oaSkpKSx0aGlzLllfKCk7Zm9yKGNvbnN0IHQgb2ZbdGhpcy5EXyx0aGlzLlZfXSl0LmVfKCksdC5kbCgpO3RoaXMuc24ubXIoKX1WdCgpe3JldHVybiB0aGlzLkR0KCkuZmlsdGVyKFNpKX1mdSgpe3JldHVybiB0aGlzLlRffXB1KCl7cmV0dXJuIHRoaXMuUl99aGwodCl7dGhpcy5mYS5wdXNoKG5ldyBEdCh0KSl9YWwodCl7dGhpcy5mYT10aGlzLmZhLmZpbHRlcigoaT0+aS5RaCgpIT09dCkpLHQuZGV0YWNoZWQmJnQuZGV0YWNoZWQoKSx0aGlzLnNuLm1yKCl9dnUoKXtyZXR1cm4gdGhpcy5mYX1KYSh0LGkpe3JldHVybiB0aGlzLmZhLm1hcCgocz0+cy5Rcyh0LGkpKSkuZmlsdGVyKCh0PT5udWxsIT09dCkpfXN1KHQpe2NvbnN0IGk9dC5tXygpO2lmKGkmJmkubGVuZ3RoPjAmJiF0aGlzLmlhLkdpKCkpe2NvbnN0IGk9dGhpcy5pYS5FZSgpO251bGwhPT1pJiZ0LndfKGkpfXQuTm4oKX1qXyh0LGkscyl7bGV0IGU9dGhpcy5BXyhpKTtpZihudWxsPT09ZSYmKGU9dGhpcy5JXyhpLHRoaXMuc24uTigpLm92ZXJsYXlQcmljZVNjYWxlcykpLHRoaXMubW8uc3BsaWNlKHMsMCx0KSwhaihpKSl7Y29uc3Qgcz10aGlzLnhfLmdldChpKXx8W107cy5wdXNoKHQpLHRoaXMueF8uc2V0KGkscyl9dC5fbihzKSxlLnNfKHQpLHQudW4oZSksdGhpcy5xXyhlKSx0aGlzLllfKCl9WV8oKXt0aGlzLk1vPW51bGwsdGhpcy5rXz1udWxsfW51KCl7cmV0dXJuImxlZnQiPT09dGhpcy5zbi5OKCkuZGVmYXVsdFZpc2libGVQcmljZVNjYWxlSWQ/W3RoaXMuRF8sdGhpcy5WX106W3RoaXMuVl8sdGhpcy5EX119Ql8odCxpLHMpe2kuX2UhPT1zLl9lJiZ0aGlzLnN1KHQpfUlfKHQsaSl7Y29uc3Qgcz17dmlzaWJsZTohMCxhdXRvU2NhbGU6ITAsLi4uTShpKX0sZT1uZXcgeGkodCxzLHRoaXMuc24uTigpLmxheW91dCx0aGlzLnNuLk4oKS5sb2NhbGl6YXRpb24sdGhpcy5zbi5YaSgpKTtyZXR1cm4gZS5Xbyh0aGlzLiR0KCkpLGV9fWZ1bmN0aW9uIF9pKHQsaSl7cmV0dXJuIG51bGw9PT1pfHwyPT09dC5zZSYmMiE9PWkuc2V8fCgyIT09aS5zZXx8Mj09PXQuc2UpJiZ0Lm5lIT09aS5uZSYmdC5uZTxpLm5lfWZ1bmN0aW9uIGtpKHQpe3JldHVybnt0ZTp0LnRlLGllOnQuaWV9fWZ1bmN0aW9uIEVpKHQpe3JldHVybntuZTp0LmRpc3RhbmNlPz8wLHNlOnQuaGl0VGVzdFByaW9yaXR5Pz8oIm1hcmtlciI9PT10Lml0ZW1UeXBlPzI6MCksZWU6dC5pdGVtVHlwZT8/InByaW1pdGl2ZSIsbXU6dC5jdXJzb3JTdHlsZSx0ZTp0LmV4dGVybmFsSWR9fWZ1bmN0aW9uIE5pKHQpe3JldHVybntsdTp0Lmx1LHd1OmtpKHQuTXUpLG11OnQuTXUubXUsZWU6dC5NdS5lZT8/InByaW1pdGl2ZSJ9fWZ1bmN0aW9uIFRpKHQsaSxzLGUpe2xldCBoPW51bGw7Zm9yKGNvbnN0IG4gb2YgdCl7bGV0IHQ9bi5Rcz8uKGkscyxlKT8/bnVsbDtpZihudWxsPT09dCl7Y29uc3QgaD1uLlR0KGUpO3Q9bnVsbCE9PWgmJmguUXM/aC5RcyhpLHMpOm51bGx9aWYobnVsbCE9PXQpe2NvbnN0IGk9e2d1Om4sTXU6dH07KG51bGw9PT1ofHxfaShpLk11LGguTXUpKSYmKGg9aSl9fXJldHVybiBofWZ1bmN0aW9uIHppKHQpe3JldHVybiB2b2lkIDAhPT10LmpufWZ1bmN0aW9uIElpKHQsaSxzKXtjb25zdCBlPVt0LC4uLnQuRHQoKV0ucmV2ZXJzZSgpLGg9ZnVuY3Rpb24odCxpLHMpe2xldCBlLGgsbjtmb3IoY29uc3QgbCBvZiB0KXtjb25zdCB0PWwuSmE/LihpLHMpPz9bXTtmb3IoY29uc3QgaSBvZiB0KXtjb25zdCB0PUVpKGkpO3I9aS56T3JkZXIsbz1lPy56T3JkZXIsKCFvfHwidG9wIj09PXImJiJ0b3AiIT09b3x8Im5vcm1hbCI9PT1yJiYiYm90dG9tIj09PW98fGkuek9yZGVyPT09ZT8uek9yZGVyJiZ2b2lkIDAhPT1oJiZfaSh0LGgpfHxpLnpPcmRlcj09PWU/LnpPcmRlciYmdm9pZCAwPT09aCkmJihlPWksaD10LG49bCl9fXZhciByLG87cmV0dXJuIGUmJm4mJmg/e011OmgsYnU6ZSxsdTpufTpudWxsfShlLGkscyk7aWYoInRvcCI9PT1oPy5idS56T3JkZXIpcmV0dXJuIE5pKGgpO2xldCBuPW51bGwscj1udWxsO2Zvcihjb25zdCBvIG9mIGUpe2lmKGgmJmgubHU9PT1vJiYiYm90dG9tIiE9PWguYnUuek9yZGVyJiYhaC5idS5pc0JhY2tncm91bmQpcmV0dXJuIG4/P05pKGgpO2lmKHppKG8pKXtjb25zdCBlPVRpKG8uam4odCksaSxzLHQpO2lmKG51bGwhPT1lKXtjb25zdCB0PXtsdTpvLGd1OmUuZ3Usd3U6a2koZS5NdSksbXU6ZS5NdS5tdSxlZTplLk11LmVlPz8icHJpbWl0aXZlIn0KOyhudWxsPT09bnx8X2koZS5NdSxyKSkmJihuPXQscj1lLk11KX19aWYoaCYmaC5sdT09PW8mJiJib3R0b20iIT09aC5idS56T3JkZXImJmguYnUuaXNCYWNrZ3JvdW5kKXJldHVybiBuPz9OaShoKX1yZXR1cm4gbnVsbCE9PW4/bjpoPy5idT9OaShoKTpudWxsfWNsYXNzIFBpe2NvbnN0cnVjdG9yKHQsaSxzPTUwKXt0aGlzLlZzPTAsdGhpcy5Ccz0xLHRoaXMuRXM9MSx0aGlzLkxzPW5ldyBNYXAsdGhpcy5Bcz1uZXcgTWFwLHRoaXMuU3U9dCx0aGlzLnh1PWksdGhpcy56cz1zfUN1KHQpe2NvbnN0IGk9dC50aW1lLHM9dGhpcy54dS5jYWNoZUtleShpKSxlPXRoaXMuTHMuZ2V0KHMpO2lmKHZvaWQgMCE9PWUpcmV0dXJuIGUueXU7aWYodGhpcy5Wcz09PXRoaXMuenMpe2NvbnN0IHQ9dGhpcy5Bcy5nZXQodGhpcy5Fcyk7dGhpcy5Bcy5kZWxldGUodGhpcy5FcyksdGhpcy5Mcy5kZWxldGUoYyh0KSksdGhpcy5FcysrLHRoaXMuVnMtLX1jb25zdCBoPXRoaXMuU3UodCk7cmV0dXJuIHRoaXMuTHMuc2V0KHMse3l1OmgsV3M6dGhpcy5Cc30pLHRoaXMuQXMuc2V0KHRoaXMuQnMscyksdGhpcy5WcysrLHRoaXMuQnMrKyxofX1jbGFzcyBSaXtjb25zdHJ1Y3Rvcih0LGkpe3UodDw9aSwicmlnaHQgc2hvdWxkIGJlID49IGxlZnQiKSx0aGlzLmt1PXQsdGhpcy5QdT1pfU9hKCl7cmV0dXJuIHRoaXMua3V9YmkoKXtyZXR1cm4gdGhpcy5QdX1UdSgpe3JldHVybiB0aGlzLlB1LXRoaXMua3UrMX16ZSh0KXtyZXR1cm4gdGhpcy5rdTw9dCYmdDw9dGhpcy5QdX1HZSh0KXtyZXR1cm4gdGhpcy5rdT09PXQuT2EoKSYmdGhpcy5QdT09PXQuYmkoKX19ZnVuY3Rpb24gTGkodCxpKXtyZXR1cm4gbnVsbD09PXR8fG51bGw9PT1pP3Q9PT1pOnQuR2UoaSl9Y2xhc3MgRml7Y29uc3RydWN0b3IoKXt0aGlzLlJ1PW5ldyBNYXAsdGhpcy5Mcz1udWxsLHRoaXMuRHU9ITF9SXUodCl7dGhpcy5EdT10LHRoaXMuTHM9bnVsbH1WdSh0LGkpe3RoaXMuQnUoaSksdGhpcy5Mcz1udWxsO2ZvcihsZXQgcz1pO3M8dC5sZW5ndGg7KytzKXtjb25zdCBpPXRbc107bGV0IGU9dGhpcy5SdS5nZXQoaS50aW1lV2VpZ2h0KTt2b2lkIDA9PT1lJiYoZT1bXSx0aGlzLlJ1LnNldChpLnRpbWVXZWlnaHQsZSkpLGUucHVzaCh7aW5kZXg6cyx0aW1lOmkudGltZSx3ZWlnaHQ6aS50aW1lV2VpZ2h0LG9yaWdpbmFsVGltZTppLm9yaWdpbmFsVGltZX0pfX1FdSh0LGkscyxlLGgpe2NvbnN0IG49TWF0aC5jZWlsKGkvdCk7cmV0dXJuIG51bGwhPT10aGlzLkxzJiZ0aGlzLkxzLkF1PT09biYmaD09PXRoaXMuTHMuTHUmJnM9PT10aGlzLkxzLnp1fHwodGhpcy5Mcz17THU6aCx6dTpzLEVsOnRoaXMuT3UobixzLGUpLEF1Om59KSx0aGlzLkxzLkVsfUJ1KHQpe2lmKDA9PT10KXJldHVybiB2b2lkIHRoaXMuUnUuY2xlYXIoKTtjb25zdCBpPVtdO3RoaXMuUnUuZm9yRWFjaCgoKHMsZSk9Pnt0PD1zWzBdLmluZGV4P2kucHVzaChlKTpzLnNwbGljZShOdChzLHQsKGk9PmkuaW5kZXg8dCkpLDEvMCl9KSk7Zm9yKGNvbnN0IHQgb2YgaSl0aGlzLlJ1LmRlbGV0ZSh0KX1PdSh0LGkscyl7bGV0IGU9W107Y29uc3QgaD10PT4haXx8cy5oYXModC5pbmRleCk7Zm9yKGNvbnN0IGkgb2YgQXJyYXkuZnJvbSh0aGlzLlJ1LmtleXMoKSkuc29ydCgoKHQsaSk9PmktdCkpKXtpZighdGhpcy5SdS5nZXQoaSkpY29udGludWU7Y29uc3Qgcz1lO2U9W107Y29uc3Qgbj1zLmxlbmd0aDtsZXQgcj0wO2NvbnN0IG89Yyh0aGlzLlJ1LmdldChpKSksbD1vLmxlbmd0aDtsZXQgYT0xLzAsdT0tMS8wO2ZvcihsZXQgaT0wO2k8bDtpKyspe2NvbnN0IGw9b1tpXSxjPWwuaW5kZXg7Zm9yKDtyPG47KXtjb25zdCB0PXNbcl0saT10LmluZGV4O2lmKCEoaTxjJiZoKHQpKSl7YT1pO2JyZWFrfXIrKyxlLnB1c2godCksdT1pLGE9MS8wfWlmKGEtYz49dCYmYy11Pj10JiZoKGwpKWUucHVzaChsKSx1PWM7ZWxzZSBpZih0aGlzLkR1KXJldHVybiBzfWZvcig7cjxuO3IrKyloKHNbcl0pJiZlLnB1c2goc1tyXSl9cmV0dXJuIGV9fWNsYXNzIHFpe2NvbnN0cnVjdG9yKHQpe3RoaXMuTnU9dH1GdSgpe3JldHVybiBudWxsPT09dGhpcy5OdT9udWxsOm5ldyBSaShNYXRoLmZsb29yKHRoaXMuTnUuT2EoKSksTWF0aC5jZWlsKHRoaXMuTnUuYmkoKSkpfVd1KCl7cmV0dXJuIHRoaXMuTnV9c3RhdGljIEh1KCl7cmV0dXJuIG5ldyBxaShudWxsKX19ZnVuY3Rpb24gV2kodCxpKXtyZXR1cm4gdC53ZWlnaHQ+aS53ZWlnaHQ/dDppfWNsYXNzIFFpe2NvbnN0cnVjdG9yKHQsaSxzLGUpe3RoaXMuQ189MCx0aGlzLlV1PW51bGwsdGhpcy4kdT1bXSx0aGlzLnhvPW51bGwsdGhpcy5Tbz1udWxsLHRoaXMuanU9bmV3IEZpLHRoaXMucXU9bmV3IE1hcCx0aGlzLll1PXFpLkh1KCksdGhpcy5LdT0hMCx0aGlzLlp1PW5ldyBtLHRoaXMuR3U9bmV3IG0sdGhpcy5YdT1uZXcgbSx0aGlzLkp1PW51bGwsdGhpcy5RdT1udWxsLHRoaXMudGM9bmV3IE1hcCx0aGlzLm5jPS0xLHRoaXMuc2M9W10sdGhpcy5lYz0xLHRoaXMueW49aSx0aGlzLlBvPXMsdGhpcy5yYz1pLnJpZ2h0T2Zmc2V0LHRoaXMuaGM9aS5iYXJTcGFjaW5nLHRoaXMuc249dCx0aGlzLmFjKGkpLHRoaXMueHU9ZSx0aGlzLmxjKCksdGhpcy5qdS5JdShpLnVuaWZvcm1EaXN0cmlidXRpb24pLHRoaXMub2MoKSx0aGlzLl9jKCl9Tigpe3JldHVybiB0aGlzLnlufXVjKHQpe3AodGhpcy5Qbyx0KSx0aGlzLmNjKCksdGhpcy5sYygpfXZyKHQsaSl7cCh0aGlzLnluLHQpLHRoaXMueW4uZml4TGVmdEVkZ2UmJnRoaXMuZGMoKSx0aGlzLnluLmZpeFJpZ2h0RWRnZSYmdGhpcy5mYygpLHZvaWQgMCE9PXQuYmFyU3BhY2luZyYmdGhpcy5zbi5Ncyh0LmJhclNwYWNpbmcpLHZvaWQgMCE9PXQucmlnaHRPZmZzZXQmJnRoaXMuc24uZ3ModC5yaWdodE9mZnNldCksdGhpcy5hYyh0KSx2b2lkIDA9PT10Lm1pbkJhclNwYWNpbmcmJnZvaWQgMD09PXQubWF4QmFyU3BhY2luZ3x8dGhpcy5zbi5Ncyh0LmJhclNwYWNpbmc/P3RoaXMuaGMpLAp2b2lkIDAhPT10Lmlnbm9yZVdoaXRlc3BhY2VJbmRpY2VzJiZ0Lmlnbm9yZVdoaXRlc3BhY2VJbmRpY2VzIT09dGhpcy55bi5pZ25vcmVXaGl0ZXNwYWNlSW5kaWNlcyYmdGhpcy5fYygpLHRoaXMuY2MoKSx0aGlzLmxjKCksdm9pZCAwPT09dC5lbmFibGVDb25mbGF0aW9uJiZ2b2lkIDA9PT10LmNvbmZsYXRpb25UaHJlc2hvbGRGYWN0b3J8fHRoaXMub2MoKSx0aGlzLlh1LnAoKX1Sbih0KXtyZXR1cm4gdGhpcy4kdVt0XT8udGltZT8/bnVsbH1lbih0KXtyZXR1cm4gdGhpcy4kdVt0XT8/bnVsbH12Yyh0LGkpe2lmKHRoaXMuJHUubGVuZ3RoPDEpcmV0dXJuIG51bGw7aWYodGhpcy54dS5rZXkodCk+dGhpcy54dS5rZXkodGhpcy4kdVt0aGlzLiR1Lmxlbmd0aC0xXS50aW1lKSlyZXR1cm4gaT90aGlzLiR1Lmxlbmd0aC0xOm51bGw7Y29uc3Qgcz1OdCh0aGlzLiR1LHRoaXMueHUua2V5KHQpLCgodCxpKT0+dGhpcy54dS5rZXkodC50aW1lKTxpKSk7cmV0dXJuIHRoaXMueHUua2V5KHQpPHRoaXMueHUua2V5KHRoaXMuJHVbc10udGltZSk/aT9zOm51bGw6c31HaSgpe3JldHVybiAwPT09dGhpcy5DX3x8MD09PXRoaXMuJHUubGVuZ3RofHxudWxsPT09dGhpcy5VdX1tYygpe3JldHVybiB0aGlzLiR1Lmxlbmd0aD4wfUVlKCl7cmV0dXJuIHRoaXMud2MoKSx0aGlzLll1LkZ1KCl9TWMoKXtyZXR1cm4gdGhpcy53YygpLHRoaXMuWXUuV3UoKX1nYygpe2NvbnN0IHQ9dGhpcy5FZSgpO2lmKG51bGw9PT10KXJldHVybiBudWxsO2NvbnN0IGk9e2Zyb206dC5PYSgpLHRvOnQuYmkoKX07cmV0dXJuIHRoaXMuYmMoaSl9YmModCl7Y29uc3QgaT1NYXRoLnJvdW5kKHQuZnJvbSkscz1NYXRoLnJvdW5kKHQudG8pLGU9Zih0aGlzLlNjKCkpLGg9Zih0aGlzLnhjKCkpO3JldHVybntmcm9tOmYodGhpcy5lbihNYXRoLm1heChlLGkpKSksdG86Zih0aGlzLmVuKE1hdGgubWluKGgscykpKX19Q2ModCl7cmV0dXJue2Zyb206Zih0aGlzLnZjKHQuZnJvbSwhMCkpLHRvOmYodGhpcy52Yyh0LnRvLCEwKSl9fW5uKCl7cmV0dXJuIHRoaXMuQ199Tl8odCl7aWYoIWlzRmluaXRlKHQpfHx0PD0wKXJldHVybjtpZih0aGlzLkNfPT09dClyZXR1cm47Y29uc3QgaT10aGlzLk1jKCkscz10aGlzLkNfO2lmKHRoaXMuQ189dCx0aGlzLkt1PSEwLHRoaXMueW4ubG9ja1Zpc2libGVUaW1lUmFuZ2VPblJlc2l6ZSYmMCE9PXMpe2NvbnN0IGk9dGhpcy5oYyp0L3M7dGhpcy5oYz1pfWlmKHRoaXMueW4uZml4TGVmdEVkZ2UmJm51bGwhPT1pJiZpLk9hKCk8PTApe2NvbnN0IGk9cy10O3RoaXMucmMtPU1hdGgucm91bmQoaS90aGlzLmhjKSsxLHRoaXMuS3U9ITB9dGhpcy55YygpLHRoaXMua2MoKX1qdCh0KXtpZih0aGlzLkdpKCl8fCF2KHQpKXJldHVybiAwO2NvbnN0IGk9dGhpcy5QYygpK3RoaXMucmMtdDtyZXR1cm4gdGhpcy5DXy0oaSsuNSkqdGhpcy5oYy0xfVRjKHQsaSl7Y29uc3Qgcz10aGlzLlBjKCksZT12b2lkIDA9PT1pPzA6aS5mcm9tLGg9dm9pZCAwPT09aT90Lmxlbmd0aDppLnRvO2ZvcihsZXQgaT1lO2k8aDtpKyspe2NvbnN0IGU9dFtpXS53dCxoPXMrdGhpcy5yYy1lLG49dGhpcy5DXy0oaCsuNSkqdGhpcy5oYy0xO3RbaV0uX3Q9bn19UmModCxpKXtjb25zdCBzPU1hdGguY2VpbCh0aGlzLkRjKHQpKTtyZXR1cm4gaSYmdGhpcy55bi5pZ25vcmVXaGl0ZXNwYWNlSW5kaWNlcyYmIXRoaXMuSWMocyk/dGhpcy5WYyhzKTpzfWdzKHQpe3RoaXMuS3U9ITAsdGhpcy5yYz10LHRoaXMua2MoKSx0aGlzLnNuLkJjKCksdGhpcy5zbi5tcigpfWZsKCl7cmV0dXJuIHRoaXMuaGN9TXModCl7Y29uc3QgaT10aGlzLmhjO2lmKHRoaXMuRWModCksdm9pZCAwIT09dGhpcy55bi5yaWdodE9mZnNldFBpeGVscyYmMCE9PWkpe2NvbnN0IHQ9dGhpcy5yYyppL3RoaXMuaGM7dGhpcy5yYz10fXRoaXMua2MoKSx0aGlzLnNuLkJjKCksdGhpcy5zbi5tcigpfUFjKCl7cmV0dXJuIHRoaXMucmN9RWwoKXtpZih0aGlzLkdpKCkpcmV0dXJuIG51bGw7aWYobnVsbCE9PXRoaXMuUXUpcmV0dXJuIHRoaXMuUXU7Y29uc3QgdD10aGlzLmhjLGk9NSoodGhpcy5zbi5OKCkubGF5b3V0LmZvbnRTaXplKzQpLzgqKHRoaXMueW4udGlja01hcmtNYXhDaGFyYWN0ZXJMZW5ndGh8fDgpLHM9TWF0aC5yb3VuZChpL3QpLGU9Zih0aGlzLkVlKCkpLGg9TWF0aC5tYXgoZS5PYSgpLGUuT2EoKS1zKSxuPU1hdGgubWF4KGUuYmkoKSxlLmJpKCktcykscj10aGlzLmp1LkV1KHQsaSx0aGlzLnluLmlnbm9yZVdoaXRlc3BhY2VJbmRpY2VzLHRoaXMudGMsdGhpcy5uYyksbz10aGlzLlNjKCkrcyxsPXRoaXMueGMoKS1zLGE9dGhpcy5MYygpLHU9dGhpcy55bi5maXhMZWZ0RWRnZXx8YSxjPXRoaXMueW4uZml4UmlnaHRFZGdlfHxhO2xldCBkPTA7Zm9yKGNvbnN0IHQgb2Ygcil7aWYoIShoPD10LmluZGV4JiZ0LmluZGV4PD1uKSljb250aW51ZTtsZXQgcztkPHRoaXMuc2MubGVuZ3RoPyhzPXRoaXMuc2NbZF0scy5jb29yZD10aGlzLmp0KHQuaW5kZXgpLHMubGFiZWw9dGhpcy56Yyh0KSxzLndlaWdodD10LndlaWdodCk6KHM9e25lZWRBbGlnbkNvb3JkaW5hdGU6ITEsY29vcmQ6dGhpcy5qdCh0LmluZGV4KSxsYWJlbDp0aGlzLnpjKHQpLHdlaWdodDp0LndlaWdodH0sdGhpcy5zYy5wdXNoKHMpKSx0aGlzLmhjPmkvMiYmIWE/cy5uZWVkQWxpZ25Db29yZGluYXRlPSExOnMubmVlZEFsaWduQ29vcmRpbmF0ZT11JiZ0LmluZGV4PD1vfHxjJiZ0LmluZGV4Pj1sLGQrK31yZXR1cm4gdGhpcy5zYy5sZW5ndGg9ZCx0aGlzLlF1PXRoaXMuc2MsdGhpcy5zY31PYygpe2xldCB0O3RoaXMuS3U9ITAsdGhpcy5Ncyh0aGlzLnluLmJhclNwYWNpbmcpLHQ9dm9pZCAwIT09dGhpcy55bi5yaWdodE9mZnNldFBpeGVscz90aGlzLnluLnJpZ2h0T2Zmc2V0UGl4ZWxzL3RoaXMuZmwoKTp0aGlzLnluLnJpZ2h0T2Zmc2V0LHRoaXMuZ3ModCl9TmModCl7dGhpcy5LdT0hMCx0aGlzLlV1PXQsdGhpcy5rYygpLHRoaXMuZGMoKX1GYyh0LGkpe2NvbnN0IHM9dGhpcy5EYyh0KSxlPXRoaXMuZmwoKSxoPWUraSooZS8xMCk7dGhpcy5NcyhoKSwKdGhpcy55bi5yaWdodEJhclN0YXlzT25TY3JvbGx8fHRoaXMuZ3ModGhpcy5BYygpKyhzLXRoaXMuRGModCkpKX1sXyh0KXt0aGlzLnhvJiZ0aGlzLmRfKCksbnVsbD09PXRoaXMuU28mJm51bGw9PT10aGlzLkp1JiYodGhpcy5HaSgpfHwodGhpcy5Tbz10LHRoaXMuV2MoKSkpfW9fKHQpe2lmKG51bGw9PT10aGlzLkp1KXJldHVybjtjb25zdCBpPWlpKHRoaXMuQ18tdCwwLHRoaXMuQ18pLHM9aWkodGhpcy5DXy1mKHRoaXMuU28pLDAsdGhpcy5DXyk7MCE9PWkmJjAhPT1zJiZ0aGlzLk1zKHRoaXMuSnUuZmwqaS9zKX1fXygpe251bGwhPT10aGlzLlNvJiYodGhpcy5Tbz1udWxsLHRoaXMuSGMoKSl9dV8odCl7bnVsbD09PXRoaXMueG8mJm51bGw9PT10aGlzLkp1JiYodGhpcy5HaSgpfHwodGhpcy54bz10LHRoaXMuV2MoKSkpfWNfKHQpe2lmKG51bGw9PT10aGlzLnhvKXJldHVybjtjb25zdCBpPSh0aGlzLnhvLXQpL3RoaXMuZmwoKTt0aGlzLnJjPWYodGhpcy5KdSkuQWMraSx0aGlzLkt1PSEwLHRoaXMua2MoKX1kXygpe251bGwhPT10aGlzLnhvJiYodGhpcy54bz1udWxsLHRoaXMuSGMoKSl9VWMoKXt0aGlzLiRjKHRoaXMueW4ucmlnaHRPZmZzZXQpfSRjKHQsaT00MDApe2lmKCFpc0Zpbml0ZSh0KSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigib2Zmc2V0IGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGZpbml0ZSBudW1iZXIiKTtpZighaXNGaW5pdGUoaSl8fGk8PTApdGhyb3cgbmV3IFJhbmdlRXJyb3IoImFuaW1hdGlvbkR1cmF0aW9uIChvcHRpb25hbCkgbXVzdCBiZSBmaW5pdGUgcG9zaXRpdmUgbnVtYmVyIik7Y29uc3Qgcz10aGlzLnJjLGU9cGVyZm9ybWFuY2Uubm93KCk7dGhpcy5zbi5wcyh7amM6dD0+KHQtZSkvaT49MSxxYzpoPT57Y29uc3Qgbj0oaC1lKS9pO3JldHVybiBuPj0xP3Q6cysodC1zKSpufX0pfWt0KHQsaSl7dGhpcy5LdT0hMCx0aGlzLiR1PXQsdGhpcy5qdS5WdSh0LGkpLHRoaXMua2MoKX1ZYygpe3JldHVybiB0aGlzLlp1fUtjKCl7cmV0dXJuIHRoaXMuR3V9WmMoKXtyZXR1cm4gdGhpcy5YdX1QYygpe3JldHVybiB0aGlzLlV1fHwwfUdjKHQsaSl7Y29uc3Qgcz10LlR1KCksZT1pJiZ0aGlzLnluLnJpZ2h0T2Zmc2V0UGl4ZWxzfHwwO3RoaXMuRWMoKHRoaXMuQ18tZSkvcyksdGhpcy5yYz10LmJpKCktdGhpcy5QYygpLGkmJih0aGlzLnJjPWU/ZS90aGlzLmZsKCk6dGhpcy55bi5yaWdodE9mZnNldCksdGhpcy5rYygpLHRoaXMuS3U9ITAsdGhpcy5zbi5CYygpLHRoaXMuc24ubXIoKX1YYygpe2NvbnN0IHQ9dGhpcy5TYygpLGk9dGhpcy54YygpO2lmKG51bGw9PT10fHxudWxsPT09aSlyZXR1cm47Y29uc3Qgcz0hdGhpcy55bi5yaWdodE9mZnNldFBpeGVscyYmdGhpcy55bi5yaWdodE9mZnNldHx8MDt0aGlzLkdjKG5ldyBSaSh0LGkrcyksITApfUpjKHQpe2NvbnN0IGk9bmV3IFJpKHQuZnJvbSx0LnRvKTt0aGlzLkdjKGkpfXJuKHQpe3JldHVybiB2b2lkIDAhPT10aGlzLlBvLnRpbWVGb3JtYXR0ZXI/dGhpcy5Qby50aW1lRm9ybWF0dGVyKHQub3JpZ2luYWxUaW1lKTp0aGlzLnh1LmZvcm1hdEhvcnpJdGVtKHQudGltZSl9X2MoKXtpZighdGhpcy55bi5pZ25vcmVXaGl0ZXNwYWNlSW5kaWNlcylyZXR1cm47dGhpcy50Yy5jbGVhcigpO2NvbnN0IHQ9dGhpcy5zbi5KbigpO2Zvcihjb25zdCBpIG9mIHQpZm9yKGNvbnN0IHQgb2YgaS51bCgpKXRoaXMudGMuc2V0KHQsITApO3RoaXMubmMrK31RYygpe3JldHVybiB0aGlzLmVjfU1sKCl7Y29uc3QgdD0xLyh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSksaT10aGlzLnluLm1pbkJhclNwYWNpbmc7aWYoaT49dClyZXR1cm5bMV07Y29uc3Qgcz1bMV07bGV0IGU9Mjtmb3IoO2U8PTUxMjspaTx0L2UmJnMucHVzaChlKSxlKj0yO3JldHVybiBzfUxjKCl7Y29uc3QgdD10aGlzLnNuLk4oKS5oYW5kbGVTY3JvbGwsaT10aGlzLnNuLk4oKS5oYW5kbGVTY2FsZTtyZXR1cm4hKHQuaG9yelRvdWNoRHJhZ3x8dC5tb3VzZVdoZWVsfHx0LnByZXNzZWRNb3VzZU1vdmV8fHQudmVydFRvdWNoRHJhZ3x8aS5heGlzRG91YmxlQ2xpY2tSZXNldC50aW1lfHxpLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnRpbWV8fGkubW91c2VXaGVlbHx8aS5waW5jaCl9U2MoKXtyZXR1cm4gMD09PXRoaXMuJHUubGVuZ3RoP251bGw6MH14Yygpe3JldHVybiAwPT09dGhpcy4kdS5sZW5ndGg/bnVsbDp0aGlzLiR1Lmxlbmd0aC0xfXRkKHQpe3JldHVybih0aGlzLkNfLTEtdCkvdGhpcy5oY31EYyh0KXtjb25zdCBpPXRoaXMudGQodCkscz10aGlzLlBjKCkrdGhpcy5yYy1pO3JldHVybiBNYXRoLnJvdW5kKDFlNipzKS8xZTZ9RWModCl7Y29uc3QgaT10aGlzLmhjO3RoaXMuaGM9dCx0aGlzLnljKCksaSE9PXRoaXMuaGMmJih0aGlzLkt1PSEwLHRoaXMubmQoKSx0aGlzLm9jKCkpfXdjKCl7aWYoIXRoaXMuS3UpcmV0dXJuO2lmKHRoaXMuS3U9ITEsdGhpcy5HaSgpKXJldHVybiB2b2lkIHRoaXMuc2QocWkuSHUoKSk7Y29uc3QgdD10aGlzLlBjKCksaT10aGlzLkNfL3RoaXMuaGMscz10aGlzLnJjK3QsZT1uZXcgUmkocy1pKzEscyk7dGhpcy5zZChuZXcgcWkoZSkpfXljKCl7Y29uc3QgdD1paSh0aGlzLmhjLHRoaXMuZWQoKSx0aGlzLnJkKCkpO3RoaXMuaGMhPT10JiYodGhpcy5oYz10LHRoaXMuS3U9ITApfXJkKCl7cmV0dXJuIHRoaXMueW4ubWF4QmFyU3BhY2luZz4wP3RoaXMueW4ubWF4QmFyU3BhY2luZzouNSp0aGlzLkNffWVkKCl7cmV0dXJuIHRoaXMueW4uZml4TGVmdEVkZ2UmJnRoaXMueW4uZml4UmlnaHRFZGdlJiYwIT09dGhpcy4kdS5sZW5ndGg/dGhpcy5DXy90aGlzLiR1Lmxlbmd0aDp0aGlzLnluLm1pbkJhclNwYWNpbmd9b2MoKXtpZighdGhpcy55bi5lbmFibGVDb25mbGF0aW9uKXJldHVybiB2b2lkKHRoaXMuZWM9MSk7Y29uc3QgdD0xLyh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSkqKHRoaXMueW4uY29uZmxhdGlvblRocmVzaG9sZEZhY3Rvcj8/MSk7aWYodGhpcy5oYz49dClyZXR1cm4gdm9pZCh0aGlzLmVjPTEpO2NvbnN0IGk9dC90aGlzLmhjLHM9TWF0aC5wb3coMixNYXRoLmZsb29yKE1hdGgubG9nMihpKSkpCjt0aGlzLmVjPU1hdGgubWluKHMsNTEyKX1rYygpe2NvbnN0IHQ9dGhpcy5oZCgpO251bGwhPT10JiZ0aGlzLnJjPHQmJih0aGlzLnJjPXQsdGhpcy5LdT0hMCk7Y29uc3QgaT10aGlzLmFkKCk7dGhpcy5yYz5pJiYodGhpcy5yYz1pLHRoaXMuS3U9ITApfWhkKCl7Y29uc3QgdD10aGlzLlNjKCksaT10aGlzLlV1O3JldHVybiBudWxsPT09dHx8bnVsbD09PWk/bnVsbDp0LWktMSsodGhpcy55bi5maXhMZWZ0RWRnZT90aGlzLkNfL3RoaXMuaGM6TWF0aC5taW4oMix0aGlzLiR1Lmxlbmd0aCkpfWFkKCl7cmV0dXJuIHRoaXMueW4uZml4UmlnaHRFZGdlPzA6dGhpcy5DXy90aGlzLmhjLU1hdGgubWluKDIsdGhpcy4kdS5sZW5ndGgpfVdjKCl7dGhpcy5KdT17Zmw6dGhpcy5mbCgpLEFjOnRoaXMuQWMoKX19SGMoKXt0aGlzLkp1PW51bGx9emModCl7bGV0IGk9dGhpcy5xdS5nZXQodC53ZWlnaHQpO3JldHVybiB2b2lkIDA9PT1pJiYoaT1uZXcgUGkoKHQ9PnRoaXMubGQodCkpLHRoaXMueHUpLHRoaXMucXUuc2V0KHQud2VpZ2h0LGkpKSxpLkN1KHQpfWxkKHQpe3JldHVybiB0aGlzLnh1LmZvcm1hdFRpY2ttYXJrKHQsdGhpcy5Qbyl9c2QodCl7Y29uc3QgaT10aGlzLll1O3RoaXMuWXU9dCxMaShpLkZ1KCksdGhpcy5ZdS5GdSgpKXx8dGhpcy5adS5wKCksTGkoaS5XdSgpLHRoaXMuWXUuV3UoKSl8fHRoaXMuR3UucCgpLHRoaXMubmQoKX1uZCgpe3RoaXMuUXU9bnVsbH1jYygpe3RoaXMubmQoKSx0aGlzLnF1LmNsZWFyKCl9bGMoKXt0aGlzLnh1LnVwZGF0ZUZvcm1hdHRlcih0aGlzLlBvKX1kYygpe2lmKCF0aGlzLnluLmZpeExlZnRFZGdlKXJldHVybjtjb25zdCB0PXRoaXMuU2MoKTtpZihudWxsPT09dClyZXR1cm47Y29uc3QgaT10aGlzLkVlKCk7aWYobnVsbD09PWkpcmV0dXJuO2NvbnN0IHM9aS5PYSgpLXQ7aWYoczwwKXtjb25zdCB0PXRoaXMucmMtcy0xO3RoaXMuZ3ModCl9dGhpcy55YygpfWZjKCl7dGhpcy5rYygpLHRoaXMueWMoKX1JYyh0KXtyZXR1cm4hdGhpcy55bi5pZ25vcmVXaGl0ZXNwYWNlSW5kaWNlc3x8dGhpcy50Yy5nZXQodCl8fCExfVZjKHQpe2NvbnN0IGk9ZnVuY3Rpb24qKHQpe2NvbnN0IGk9TWF0aC5yb3VuZCh0KSxzPWk8dDtsZXQgZT0xO2Zvcig7OylzPyh5aWVsZCBpK2UseWllbGQgaS1lKTooeWllbGQgaS1lLHlpZWxkIGkrZSksZSsrfSh0KSxzPXRoaXMueGMoKTtmb3IoO3M7KXtjb25zdCB0PWkubmV4dCgpLnZhbHVlO2lmKHRoaXMudGMuZ2V0KHQpKXJldHVybiB0O2lmKHQ8MHx8dD5zKWJyZWFrfXJldHVybiB0fWFjKHQpe2lmKHZvaWQgMCE9PXQucmlnaHRPZmZzZXRQaXhlbHMpe2NvbnN0IGk9dC5yaWdodE9mZnNldFBpeGVscy8odC5iYXJTcGFjaW5nfHx0aGlzLmhjKTt0aGlzLnNuLmdzKGkpfX19dmFyIERpLEtpLE9pLFZpLEJpOyFmdW5jdGlvbih0KXt0W3QuT25Ub3VjaEVuZD0wXT0iT25Ub3VjaEVuZCIsdFt0Lk9uTmV4dFRhcD0xXT0iT25OZXh0VGFwIn0oRGl8fChEaT17fSkpO2NsYXNzICRpe2NvbnN0cnVjdG9yKHQsaSxzKXt0aGlzLm9kPVtdLHRoaXMuX2Q9W10sdGhpcy51ZD1udWxsLHRoaXMuQ189MCx0aGlzLmRkPW51bGwsdGhpcy5mZD1uZXcgbSx0aGlzLnBkPW5ldyBtLHRoaXMudmQ9bnVsbCx0aGlzLm1kPXQsdGhpcy55bj1pLHRoaXMueHU9cyx0aGlzLlRvPW5ldyBOKHRoaXMueW4ubGF5b3V0LmNvbG9yUGFyc2VycyksdGhpcy53ZD1uZXcgXyh0aGlzKSx0aGlzLmlhPW5ldyBRaSh0aGlzLGkudGltZVNjYWxlLHRoaXMueW4ubG9jYWxpemF0aW9uLHMpLHRoaXMuQ3Q9bmV3IFkodGhpcyxpLmNyb3NzaGFpciksdGhpcy5NZD1uZXcgdGkoaS5jcm9zc2hhaXIpLGkuYWRkRGVmYXVsdFBhbmUmJih0aGlzLmdkKDApLHRoaXMub2RbMF0uT18oMikpLHRoaXMuYmQ9dGhpcy5TZCgwKSx0aGlzLnhkPXRoaXMuU2QoMSl9UGEoKXt0aGlzLkNkKFgueXMoKSl9bXIoKXt0aGlzLkNkKFguQ3MoKSl9cWEoKXt0aGlzLkNkKG5ldyBYKDEpKX1UYSh0KXtjb25zdCBpPXRoaXMueWQodCk7dGhpcy5DZChpKX1vdSgpe3JldHVybiB0aGlzLmRkfWtkKHQpe2lmKHRoaXMuZGQ/Lmx1PT09dD8ubHUmJnRoaXMuZGQ/Lnd1Py50ZT09PXQ/Lnd1Py50ZSYmdGhpcy5kZD8ud3U/LmllPT09dD8ud3U/LmllJiZ0aGlzLmRkPy5tdT09PXQ/Lm11JiZ0aGlzLmRkPy5lZT09PXQ/LmVlKXJldHVybjtjb25zdCBpPXRoaXMuZGQ7dGhpcy5kZD10LG51bGwhPT1pJiZ0aGlzLlRhKGkubHUpLG51bGwhPT10JiZ0Lmx1IT09aT8ubHUmJnRoaXMuVGEodC5sdSl9Tigpe3JldHVybiB0aGlzLnlufXZyKHQpe3AodGhpcy55bix0KSx0aGlzLm9kLmZvckVhY2goKGk9PmkuRV8odCkpKSx2b2lkIDAhPT10LnRpbWVTY2FsZSYmdGhpcy5pYS52cih0LnRpbWVTY2FsZSksdm9pZCAwIT09dC5sb2NhbGl6YXRpb24mJnRoaXMuaWEudWModC5sb2NhbGl6YXRpb24pLCh0LmxlZnRQcmljZVNjYWxlfHx0LnJpZ2h0UHJpY2VTY2FsZSkmJnRoaXMuZmQucCgpLHRoaXMuYmQ9dGhpcy5TZCgwKSx0aGlzLnhkPXRoaXMuU2QoMSksdGhpcy5QYSgpfVBkKHQsaSxzPTApe2NvbnN0IGU9dGhpcy5vZFtzXTtpZih2b2lkIDA9PT1lKXJldHVybjtpZigibGVmdCI9PT10KXJldHVybiBwKHRoaXMueW4se2xlZnRQcmljZVNjYWxlOml9KSxlLkVfKHtsZWZ0UHJpY2VTY2FsZTppfSksdGhpcy5mZC5wKCksdm9pZCB0aGlzLlBhKCk7aWYoInJpZ2h0Ij09PXQpcmV0dXJuIHAodGhpcy55bix7cmlnaHRQcmljZVNjYWxlOml9KSxlLkVfKHtyaWdodFByaWNlU2NhbGU6aX0pLHRoaXMuZmQucCgpLHZvaWQgdGhpcy5QYSgpO2NvbnN0IGg9dGhpcy5UZCh0LHMpO251bGwhPT1oJiYoaC5GdC52cihpKSx0aGlzLmZkLnAoKSl9VGQodCxpKXtjb25zdCBzPXRoaXMub2RbaV07aWYodm9pZCAwPT09cylyZXR1cm4gbnVsbDtjb25zdCBlPXMuQV8odCk7cmV0dXJuIG51bGwhPT1lP3tLbjpzLEZ0OmV9Om51bGx9RXQoKXtyZXR1cm4gdGhpcy5pYX1abigpe3JldHVybiB0aGlzLm9kfVJkKCl7cmV0dXJuIHRoaXMuQ3R9RGQoKXtyZXR1cm4gdGhpcy5wZH1JZCh0LGkpe3QuV28oaSksdGhpcy5CYygpfU5fKHQpe3RoaXMuQ189dCwKdGhpcy5pYS5OXyh0aGlzLkNfKSx0aGlzLm9kLmZvckVhY2goKGk9PmkuTl8odCkpKSx0aGlzLkJjKCl9VmQodCl7MSE9PXRoaXMub2QubGVuZ3RoJiYodSh0Pj0wJiZ0PHRoaXMub2QubGVuZ3RoLCJJbnZhbGlkIHBhbmUgaW5kZXgiKSx0aGlzLm9kLnNwbGljZSh0LDEpLHRoaXMuUGEoKSl9QmQodCxpKXtpZih0aGlzLm9kLmxlbmd0aDwyKXJldHVybjt1KHQ+PTAmJnQ8dGhpcy5vZC5sZW5ndGgsIkludmFsaWQgcGFuZSBpbmRleCIpO2NvbnN0IHM9dGhpcy5vZFt0XSxlPXRoaXMub2QucmVkdWNlKCgodCxpKT0+dCtpLnpfKCkpLDApLGg9dGhpcy5vZC5yZWR1Y2UoKCh0LGkpPT50K2kuJHQoKSksMCksbj1oLTMwKih0aGlzLm9kLmxlbmd0aC0xKTtpPU1hdGgubWluKG4sTWF0aC5tYXgoMzAsaSkpO2NvbnN0IHI9ZS9oLG89cy4kdCgpO3MuT18oaSpyKTtsZXQgbD1pLW8sYT10aGlzLm9kLmxlbmd0aC0xO2Zvcihjb25zdCB0IG9mIHRoaXMub2QpaWYodCE9PXMpe2NvbnN0IGk9TWF0aC5taW4obixNYXRoLm1heCgzMCx0LiR0KCktbC9hKSk7bC09dC4kdCgpLWksYS09MTtjb25zdCBzPWkqcjt0Lk9fKHMpfXRoaXMuUGEoKX1FZCh0LGkpe3UodD49MCYmdDx0aGlzLm9kLmxlbmd0aCYmaT49MCYmaTx0aGlzLm9kLmxlbmd0aCwiSW52YWxpZCBwYW5lIGluZGV4Iik7Y29uc3Qgcz10aGlzLm9kW3RdLGU9dGhpcy5vZFtpXTt0aGlzLm9kW3RdPWUsdGhpcy5vZFtpXT1zLHRoaXMuUGEoKX1BZCh0LGkpe2lmKHUodD49MCYmdDx0aGlzLm9kLmxlbmd0aCYmaT49MCYmaTx0aGlzLm9kLmxlbmd0aCwiSW52YWxpZCBwYW5lIGluZGV4IiksdD09PWkpcmV0dXJuO2NvbnN0W3NdPXRoaXMub2Quc3BsaWNlKHQsMSk7dGhpcy5vZC5zcGxpY2UoaSwwLHMpLHRoaXMuUGEoKX1HXyh0LGkscyl7dC5HXyhpLHMpfVhfKHQsaSxzKXt0LlhfKGkscyksdGhpcy5SYSgpLHRoaXMuQ2QodGhpcy5MZCh0LDIpKX1KXyh0LGkpe3QuSl8oaSksdGhpcy5DZCh0aGlzLkxkKHQsMikpfVFfKHQsaSxzKXtpLkVvKCl8fHQuUV8oaSxzKX10dSh0LGkscyl7aS5FbygpfHwodC50dShpLHMpLHRoaXMuUmEoKSx0aGlzLkNkKHRoaXMuTGQodCwyKSkpfWl1KHQsaSl7aS5FbygpfHwodC5pdShpKSx0aGlzLkNkKHRoaXMuTGQodCwyKSkpfWV1KHQsaSl7dC5ldShpKSx0aGlzLkNkKHRoaXMuTGQodCwyKSl9emQodCl7dGhpcy5pYS5sXyh0KX1PZCh0LGkpe2NvbnN0IHM9dGhpcy5FdCgpO2lmKHMuR2koKXx8MD09PWkpcmV0dXJuO2NvbnN0IGU9cy5ubigpO3Q9TWF0aC5tYXgoMSxNYXRoLm1pbih0LGUpKSxzLkZjKHQsaSksdGhpcy5CYygpfU5kKHQpe3RoaXMuRmQoMCksdGhpcy5XZCh0KSx0aGlzLkhkKCl9VWQodCl7dGhpcy5pYS5vXyh0KSx0aGlzLkJjKCl9JGQoKXt0aGlzLmlhLl9fKCksdGhpcy5tcigpfUZkKHQpe3RoaXMuaWEudV8odCl9V2QodCl7dGhpcy5pYS5jXyh0KSx0aGlzLkJjKCl9SGQoKXt0aGlzLmlhLmRfKCksdGhpcy5tcigpfUpuKCl7cmV0dXJuIHRoaXMuX2R9V24oKXtyZXR1cm4gbnVsbD09PXRoaXMudWQmJih0aGlzLnVkPXRoaXMuX2QuZmlsdGVyKCh0PT50Lkl0KCkpKSksdGhpcy51ZH1rYSgpe3RoaXMudWQ9bnVsbH1qZCh0LGkscyxlLGgpe3RoaXMuQ3QuSW4odCxpKTtsZXQgbj1OYU4scj10aGlzLmlhLlJjKHQsITApO2NvbnN0IG89dGhpcy5pYS5FZSgpO251bGwhPT1vJiYocj1NYXRoLm1pbihNYXRoLm1heChvLk9hKCksciksby5iaSgpKSkscj10aGlzLkN0LkZuKHIpO2NvbnN0IGw9ZS5QbigpLGE9bC5MdCgpO2lmKG51bGwhPT1hJiYobj1sLlRuKGksYSkpLG49dGhpcy5NZC54bChuLHIsZSksdGhpcy5DdC5BbihyLG4sZSksdGhpcy5xYSgpLCFoKXtjb25zdCBoPUlpKGUsdCxpKTt0aGlzLmtkKGgmJntsdTpoLmx1LHd1Omgud3UsbXU6aC5tdXx8bnVsbCxlZTpoLmVlfSksdGhpcy5wZC5wKHRoaXMuQ3QuQnQoKSx7eDp0LHk6aX0scyl9fXFkKHQsaSxzKXtjb25zdCBlPXMuUG4oKSxoPWUuTHQoKSxuPWUuTnQodCxmKGgpKSxyPXRoaXMuaWEudmMoaSwhMCksbz10aGlzLmlhLmp0KGYocikpO3RoaXMuamQobyxuLG51bGwscywhMCl9WWQodCl7dGhpcy5SZCgpLnpuKCksdGhpcy5xYSgpLHR8fHRoaXMucGQucChudWxsLG51bGwsbnVsbCl9UmEoKXtjb25zdCB0PXRoaXMuQ3QuS24oKTtpZihudWxsIT09dCl7Y29uc3QgaT10aGlzLkN0LkJuKCkscz10aGlzLkN0LkVuKCk7dGhpcy5qZChpLHMsbnVsbCx0KX10aGlzLkN0Lk5uKCl9S2QodCxpLHMpe2NvbnN0IGU9dGhpcy5pYS5SbigwKTt2b2lkIDAhPT1pJiZ2b2lkIDAhPT1zJiZ0aGlzLmlhLmt0KGkscyk7Y29uc3QgaD10aGlzLmlhLlJuKDApLG49dGhpcy5pYS5QYygpLHI9dGhpcy5pYS5FZSgpO2lmKG51bGwhPT1yJiZudWxsIT09ZSYmbnVsbCE9PWgpe2NvbnN0IGk9ci56ZShuKSxvPXRoaXMueHUua2V5KGUpPnRoaXMueHUua2V5KGgpLGw9bnVsbCE9PXQmJnQ+biYmIW8sYT10aGlzLmlhLk4oKS5hbGxvd1NoaWZ0VmlzaWJsZVJhbmdlT25XaGl0ZXNwYWNlUmVwbGFjZW1lbnQsdT1pJiYoISh2b2lkIDA9PT1zKXx8YSkmJnRoaXMuaWEuTigpLnNoaWZ0VmlzaWJsZVJhbmdlT25OZXdCYXI7aWYobCYmIXUpe2NvbnN0IGk9dC1uO3RoaXMuaWEuZ3ModGhpcy5pYS5BYygpLWkpfX10aGlzLmlhLk5jKHQpfVZhKHQpe251bGwhPT10JiZ0Lmh1KCl9S3ModCl7aWYoZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBDaX0odCkpcmV0dXJuIHQ7Y29uc3QgaT10aGlzLm9kLmZpbmQoKGk9PmkuRHQoKS5pbmNsdWRlcyh0KSkpO3JldHVybiB2b2lkIDA9PT1pP251bGw6aX1CYygpe3RoaXMub2QuZm9yRWFjaCgodD0+dC5odSgpKSksdGhpcy5SYSgpfW0oKXt0aGlzLm9kLmZvckVhY2goKHQ9PnQubSgpKSksdGhpcy5vZC5sZW5ndGg9MCx0aGlzLnluLmxvY2FsaXphdGlvbi5wcmljZUZvcm1hdHRlcj12b2lkIDAsdGhpcy55bi5sb2NhbGl6YXRpb24ucGVyY2VudGFnZUZvcm1hdHRlcj12b2lkIDAsdGhpcy55bi5sb2NhbGl6YXRpb24udGltZUZvcm1hdHRlcj12b2lkIDB9WmQoKXtyZXR1cm4gdGhpcy53ZH1Kcygpe3JldHVybiB0aGlzLndkLk4oKX1MXygpewpyZXR1cm4gdGhpcy5mZH1HZCh0LGkpe2NvbnN0IHM9dGhpcy5nZChpKTt0aGlzLlhkKHQscyksdGhpcy5fZC5wdXNoKHQpLHRoaXMua2EoKSwxPT09dGhpcy5fZC5sZW5ndGg/dGhpcy5QYSgpOnRoaXMubXIoKX1KZCh0KXtjb25zdCBpPXRoaXMuS3ModCkscz10aGlzLl9kLmluZGV4T2YodCk7dSgtMSE9PXMsIlNlcmllcyBub3QgZm91bmQiKTtjb25zdCBlPWYoaSk7dGhpcy5fZC5zcGxpY2UocywxKSxlLnJfKHQpLHQubSYmdC5tKCksdGhpcy5rYSgpLHRoaXMuaWEuX2MoKSx0aGlzLlFkKGUpfXlhKHQsaSl7Y29uc3Qgcz1mKHRoaXMuS3ModCkpO3Mucl8odCwhMCkscy5zXyh0LGksITApfVhjKCl7Y29uc3QgdD1YLkNzKCk7dC51cygpLHRoaXMuQ2QodCl9dGYodCl7Y29uc3QgaT1YLkNzKCk7aS5mcyh0KSx0aGlzLkNkKGkpfXdzKCl7Y29uc3QgdD1YLkNzKCk7dC53cygpLHRoaXMuQ2QodCl9TXModCl7Y29uc3QgaT1YLkNzKCk7aS5Ncyh0KSx0aGlzLkNkKGkpfWdzKHQpe2NvbnN0IGk9WC5DcygpO2kuZ3ModCksdGhpcy5DZChpKX1wcyh0KXtjb25zdCBpPVguQ3MoKTtpLnBzKHQpLHRoaXMuQ2QoaSl9Y3MoKXtjb25zdCB0PVguQ3MoKTt0LmNzKCksdGhpcy5DZCh0KX1pZigpe2NvbnN0IHQ9dGhpcy55bi5kZWZhdWx0VmlzaWJsZVByaWNlU2NhbGVJZCxpPXRoaXMueW4ubGVmdFByaWNlU2NhbGUudmlzaWJsZTtyZXR1cm4gaSE9PXRoaXMueW4ucmlnaHRQcmljZVNjYWxlLnZpc2libGU/aT8ibGVmdCI6InJpZ2h0Ijp0fW5mKHQsaSl7aWYodShpPj0wLCJJbmRleCBzaG91bGQgYmUgZ3JlYXRlciBvciBlcXVhbCB0byAwIiksaT09PXRoaXMuc2YodCkpcmV0dXJuO2NvbnN0IHM9Zih0aGlzLktzKHQpKTtzLnJfKHQpO2NvbnN0IGU9dGhpcy5nZChpKTt0aGlzLlhkKHQsZSk7bGV0IGg9ITE7MD09PXMuQ2woKS5sZW5ndGgmJihoPXRoaXMuUWQocykpLGh8fHRoaXMuUGEoKX1lZigpe3JldHVybiB0aGlzLnhkfSQoKXtyZXR1cm4gdGhpcy5iZH1VdCh0KXtjb25zdCBpPXRoaXMueGQscz10aGlzLmJkO2lmKGk9PT1zKXJldHVybiBpO2lmKHQ9TWF0aC5tYXgoMCxNYXRoLm1pbigxMDAsTWF0aC5yb3VuZCgxMDAqdCkpKSxudWxsPT09dGhpcy52ZHx8dGhpcy52ZC5haCE9PXN8fHRoaXMudmQub2ghPT1pKXRoaXMudmQ9e2FoOnMsb2g6aSxyZjpuZXcgTWFwfTtlbHNle2NvbnN0IGk9dGhpcy52ZC5yZi5nZXQodCk7aWYodm9pZCAwIT09aSlyZXR1cm4gaX1jb25zdCBlPXRoaXMuVG8udHQocyxpLHQvMTAwKTtyZXR1cm4gdGhpcy52ZC5yZi5zZXQodCxlKSxlfWhmKHQpe3JldHVybiB0aGlzLm9kLmluZGV4T2YodCl9WGkoKXtyZXR1cm4gdGhpcy5Ub31hZigpe3JldHVybiB0aGlzLmxmKCl9bGYodCl7Y29uc3QgaT1uZXcgQ2kodGhpcy5pYSx0aGlzKTt0aGlzLm9kLnB1c2goaSk7Y29uc3Qgcz10Pz90aGlzLm9kLmxlbmd0aC0xLGU9WC55cygpO3JldHVybiBlLmVzKHMse3JzOjAsaHM6ITB9KSx0aGlzLkNkKGUpLGl9Z2QodCl7cmV0dXJuIHUodD49MCwiSW5kZXggc2hvdWxkIGJlIGdyZWF0ZXIgb3IgZXF1YWwgdG8gMCIpLCh0PU1hdGgubWluKHRoaXMub2QubGVuZ3RoLHQpKTx0aGlzLm9kLmxlbmd0aD90aGlzLm9kW3RdOnRoaXMubGYodCl9c2YodCl7cmV0dXJuIHRoaXMub2QuZmluZEluZGV4KChpPT5pLlVfKCkuaW5jbHVkZXModCkpKX1MZCh0LGkpe2NvbnN0IHM9bmV3IFgoaSk7aWYobnVsbCE9PXQpe2NvbnN0IGU9dGhpcy5vZC5pbmRleE9mKHQpO3MuZXMoZSx7cnM6aX0pfXJldHVybiBzfXlkKHQsaSl7cmV0dXJuIHZvaWQgMD09PWkmJihpPTIpLHRoaXMuTGQodGhpcy5Lcyh0KSxpKX1DZCh0KXt0aGlzLm1kJiZ0aGlzLm1kKHQpLHRoaXMub2QuZm9yRWFjaCgodD0+dC5wdSgpLndyKCkua3QoKSkpfVhkKHQsaSl7Y29uc3Qgcz10Lk4oKS5wcmljZVNjYWxlSWQsZT12b2lkIDAhPT1zP3M6dGhpcy5pZigpO2kuc18odCxlKSxqKGUpfHx0LnZyKHQuTigpKX1TZCh0KXtjb25zdCBpPXRoaXMueW4ubGF5b3V0O3JldHVybiJncmFkaWVudCI9PT1pLmJhY2tncm91bmQudHlwZT8wPT09dD9pLmJhY2tncm91bmQudG9wQ29sb3I6aS5iYWNrZ3JvdW5kLmJvdHRvbUNvbG9yOmkuYmFja2dyb3VuZC5jb2xvcn1RZCh0KXtyZXR1cm4hdC5IXygpJiYwPT09dC5DbCgpLmxlbmd0aCYmdGhpcy5vZC5sZW5ndGg+MSYmKHRoaXMub2Quc3BsaWNlKHRoaXMuaGYodCksMSksdGhpcy5QYSgpLCEwKX19ZnVuY3Rpb24gQWkodCl7aWYodD49MSlyZXR1cm4gMDtsZXQgaT0wO2Zvcig7aTw4O2krKyl7Y29uc3Qgcz1NYXRoLnJvdW5kKHQpO2lmKE1hdGguYWJzKHMtdCk8MWUtOClyZXR1cm4gaTt0Kj0xMH1yZXR1cm4gaX1mdW5jdGlvbiBaaSh0KXtyZXR1cm4hZyh0KSYmIWIodCl9ZnVuY3Rpb24gSGkodCl7cmV0dXJuIGcodCl9IWZ1bmN0aW9uKHQpe3RbdC5EaXNhYmxlZD0wXT0iRGlzYWJsZWQiLHRbdC5Db250aW51b3VzPTFdPSJDb250aW51b3VzIix0W3QuT25EYXRhVXBkYXRlPTJdPSJPbkRhdGFVcGRhdGUifShLaXx8KEtpPXt9KSksZnVuY3Rpb24odCl7dFt0Lkxhc3RCYXI9MF09Ikxhc3RCYXIiLHRbdC5MYXN0VmlzaWJsZT0xXT0iTGFzdFZpc2libGUifShPaXx8KE9pPXt9KSksZnVuY3Rpb24odCl7dC5Tb2xpZD0ic29saWQiLHQuVmVydGljYWxHcmFkaWVudD0iZ3JhZGllbnQifShWaXx8KFZpPXt9KSksZnVuY3Rpb24odCl7dFt0LlllYXI9MF09IlllYXIiLHRbdC5Nb250aD0xXT0iTW9udGgiLHRbdC5EYXlPZk1vbnRoPTJdPSJEYXlPZk1vbnRoIix0W3QuVGltZT0zXT0iVGltZSIsdFt0LlRpbWVXaXRoU2Vjb25kcz00XT0iVGltZVdpdGhTZWNvbmRzIn0oQml8fChCaT17fSkpO2NvbnN0IEdpPXQ9PnQuZ2V0VVRDRnVsbFllYXIoKTtjbGFzcyBVaXtjb25zdHJ1Y3Rvcih0PSJ5eXl5LU1NLWRkIixpPSJkZWZhdWx0Iil7dGhpcy5fZj10LHRoaXMudWY9aX1DdSh0KXtyZXR1cm4gZnVuY3Rpb24odCxpLHMpewpyZXR1cm4gaS5yZXBsYWNlKC95eXl5L2csKHQ9PnR0KEdpKHQpLDQpKSh0KSkucmVwbGFjZSgveXkvZywodD0+dHQoR2kodCklMTAwLDIpKSh0KSkucmVwbGFjZSgvTU1NTS9nLCgodCxpKT0+bmV3IERhdGUodC5nZXRVVENGdWxsWWVhcigpLHQuZ2V0VVRDTW9udGgoKSwxKS50b0xvY2FsZVN0cmluZyhpLHttb250aDoibG9uZyJ9KSkodCxzKSkucmVwbGFjZSgvTU1NL2csKCh0LGkpPT5uZXcgRGF0ZSh0LmdldFVUQ0Z1bGxZZWFyKCksdC5nZXRVVENNb250aCgpLDEpLnRvTG9jYWxlU3RyaW5nKGkse21vbnRoOiJzaG9ydCJ9KSkodCxzKSkucmVwbGFjZSgvTU0vZywodD0+dHQoKHQ9PnQuZ2V0VVRDTW9udGgoKSsxKSh0KSwyKSkodCkpLnJlcGxhY2UoL2RkL2csKHQ9PnR0KCh0PT50LmdldFVUQ0RhdGUoKSkodCksMikpKHQpKX0odCx0aGlzLl9mLHRoaXMudWYpfX1jbGFzcyBZaXtjb25zdHJ1Y3Rvcih0KXt0aGlzLmNmPXR8fCIlaDolbTolcyJ9Q3UodCl7cmV0dXJuIHRoaXMuY2YucmVwbGFjZSgiJWgiLHR0KHQuZ2V0VVRDSG91cnMoKSwyKSkucmVwbGFjZSgiJW0iLHR0KHQuZ2V0VVRDTWludXRlcygpLDIpKS5yZXBsYWNlKCIlcyIsdHQodC5nZXRVVENTZWNvbmRzKCksMikpfX1jb25zdCBqaT17ZGY6Inl5eXktTU0tZGQiLGZmOiIlaDolbTolcyIscGY6IiAiLHZmOiJkZWZhdWx0In07Y2xhc3MgWGl7Y29uc3RydWN0b3IodD17fSl7Y29uc3QgaT17Li4uamksLi4udH07dGhpcy5tZj1uZXcgVWkoaS5kZixpLnZmKSx0aGlzLndmPW5ldyBZaShpLmZmKSx0aGlzLk1mPWkucGZ9Q3UodCl7cmV0dXJuYCR7dGhpcy5tZi5DdSh0KX0ke3RoaXMuTWZ9JHt0aGlzLndmLkN1KHQpfWB9fWZ1bmN0aW9uIEppKHQpe3JldHVybiA2MCp0KjYwKjFlM31mdW5jdGlvbiB0cyh0KXtyZXR1cm4gNjAqdCoxZTN9Y29uc3QgaXM9W3tnZjoxZTMsYmY6MTB9LHtnZjp0cygxKSxiZjoyMH0se2dmOnRzKDUpLGJmOjIxfSx7Z2Y6dHMoMzApLGJmOjIyfSx7Z2Y6SmkoMSksYmY6MzB9LHtnZjpKaSgzKSxiZjozMX0se2dmOkppKDYpLGJmOjMyfSx7Z2Y6SmkoMTIpLGJmOjMzfV07ZnVuY3Rpb24gc3ModCxpKXtpZih0LmdldFVUQ0Z1bGxZZWFyKCkhPT1pLmdldFVUQ0Z1bGxZZWFyKCkpcmV0dXJuIDcwO2lmKHQuZ2V0VVRDTW9udGgoKSE9PWkuZ2V0VVRDTW9udGgoKSlyZXR1cm4gNjA7aWYodC5nZXRVVENEYXRlKCkhPT1pLmdldFVUQ0RhdGUoKSlyZXR1cm4gNTA7Zm9yKGxldCBzPWlzLmxlbmd0aC0xO3M+PTA7LS1zKWlmKE1hdGguZmxvb3IoaS5nZXRUaW1lKCkvaXNbc10uZ2YpIT09TWF0aC5mbG9vcih0LmdldFRpbWUoKS9pc1tzXS5nZikpcmV0dXJuIGlzW3NdLmJmO3JldHVybiAwfWZ1bmN0aW9uIGVzKHQpe2xldCBpPXQ7aWYoYih0KSYmKGk9bnModCkpLCFaaShpKSl0aHJvdyBuZXcgRXJyb3IoInRpbWUgbXVzdCBiZSBvZiB0eXBlIEJ1c2luZXNzRGF5Iik7Y29uc3Qgcz1uZXcgRGF0ZShEYXRlLlVUQyhpLnllYXIsaS5tb250aC0xLGkuZGF5LDAsMCwwLDApKTtyZXR1cm57U2Y6TWF0aC5yb3VuZChzLmdldFRpbWUoKS8xZTMpLHhmOml9fWZ1bmN0aW9uIGhzKHQpe2lmKCFIaSh0KSl0aHJvdyBuZXcgRXJyb3IoInRpbWUgbXVzdCBiZSBvZiB0eXBlIGlzVVRDVGltZXN0YW1wIik7cmV0dXJue1NmOnR9fWZ1bmN0aW9uIG5zKHQpe2NvbnN0IGk9bmV3IERhdGUodCk7aWYoaXNOYU4oaS5nZXRUaW1lKCkpKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkYXRlIHN0cmluZz0ke3R9LCBleHBlY3RlZCBmb3JtYXQ9eXl5eS1tbS1kZGApO3JldHVybntkYXk6aS5nZXRVVENEYXRlKCksbW9udGg6aS5nZXRVVENNb250aCgpKzEseWVhcjppLmdldFVUQ0Z1bGxZZWFyKCl9fWZ1bmN0aW9uIHJzKHQpe2IodC50aW1lKSYmKHQudGltZT1ucyh0LnRpbWUpKX1jbGFzcyBvc3tvcHRpb25zKCl7cmV0dXJuIHRoaXMueW59c2V0T3B0aW9ucyh0KXt0aGlzLnluPXQsdGhpcy51cGRhdGVGb3JtYXR0ZXIodC5sb2NhbGl6YXRpb24pfXByZXByb2Nlc3NEYXRhKHQpe0FycmF5LmlzQXJyYXkodCk/ZnVuY3Rpb24odCl7dC5mb3JFYWNoKHJzKX0odCk6cnModCl9Y3JlYXRlQ29udmVydGVyVG9JbnRlcm5hbE9iaih0KXtyZXR1cm4gZihmdW5jdGlvbih0KXtyZXR1cm4gMD09PXQubGVuZ3RoP251bGw6WmkodFswXS50aW1lKXx8Yih0WzBdLnRpbWUpP2VzOmhzfSh0KSl9a2V5KHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgdCYmIlNmImluIHQ/dC5TZjp0aGlzLmtleSh0aGlzLmNvbnZlcnRIb3J6SXRlbVRvSW50ZXJuYWwodCkpfWNhY2hlS2V5KHQpe2NvbnN0IGk9dDtyZXR1cm4gdm9pZCAwPT09aS54Zj9uZXcgRGF0ZSgxZTMqaS5TZikuZ2V0VGltZSgpOm5ldyBEYXRlKERhdGUuVVRDKGkueGYueWVhcixpLnhmLm1vbnRoLTEsaS54Zi5kYXkpKS5nZXRUaW1lKCl9Y29udmVydEhvcnpJdGVtVG9JbnRlcm5hbCh0KXtyZXR1cm4gSGkoaT10KT9ocyhpKTpaaShpKT9lcyhpKTplcyhucyhpKSk7dmFyIGl9dXBkYXRlRm9ybWF0dGVyKHQpe2lmKCF0aGlzLnluKXJldHVybjtjb25zdCBpPXQuZGF0ZUZvcm1hdDt0aGlzLnluLnRpbWVTY2FsZS50aW1lVmlzaWJsZT90aGlzLkNmPW5ldyBYaSh7ZGY6aSxmZjp0aGlzLnluLnRpbWVTY2FsZS5zZWNvbmRzVmlzaWJsZT8iJWg6JW06JXMiOiIlaDolbSIscGY6IiAgICIsdmY6dC5sb2NhbGV9KTp0aGlzLkNmPW5ldyBVaShpLHQubG9jYWxlKX1mb3JtYXRIb3J6SXRlbSh0KXtjb25zdCBpPXQ7cmV0dXJuIHRoaXMuQ2YuQ3UobmV3IERhdGUoMWUzKmkuU2YpKX1mb3JtYXRUaWNrbWFyayh0LGkpe2NvbnN0IHM9ZnVuY3Rpb24odCxpLHMpe3N3aXRjaCh0KXtjYXNlIDA6Y2FzZSAxMDpyZXR1cm4gaT9zPzQ6MzoyO2Nhc2UgMjA6Y2FzZSAyMTpjYXNlIDIyOmNhc2UgMzA6Y2FzZSAzMTpjYXNlIDMyOmNhc2UgMzM6cmV0dXJuIGk/MzoyO2Nhc2UgNTA6cmV0dXJuIDI7Y2FzZSA2MDpyZXR1cm4gMTtjYXNlIDcwOnJldHVybiAwfX0odC53ZWlnaHQsdGhpcy55bi50aW1lU2NhbGUudGltZVZpc2libGUsdGhpcy55bi50aW1lU2NhbGUuc2Vjb25kc1Zpc2libGUpLGU9dGhpcy55bi50aW1lU2NhbGUKO2lmKHZvaWQgMCE9PWUudGlja01hcmtGb3JtYXR0ZXIpe2NvbnN0IGg9ZS50aWNrTWFya0Zvcm1hdHRlcih0Lm9yaWdpbmFsVGltZSxzLGkubG9jYWxlKTtpZihudWxsIT09aClyZXR1cm4gaH1yZXR1cm4gZnVuY3Rpb24odCxpLHMpe2NvbnN0IGU9e307c3dpdGNoKGkpe2Nhc2UgMDplLnllYXI9Im51bWVyaWMiO2JyZWFrO2Nhc2UgMTplLm1vbnRoPSJzaG9ydCI7YnJlYWs7Y2FzZSAyOmUuZGF5PSJudW1lcmljIjticmVhaztjYXNlIDM6ZS5ob3VyMTI9ITEsZS5ob3VyPSIyLWRpZ2l0IixlLm1pbnV0ZT0iMi1kaWdpdCI7YnJlYWs7Y2FzZSA0OmUuaG91cjEyPSExLGUuaG91cj0iMi1kaWdpdCIsZS5taW51dGU9IjItZGlnaXQiLGUuc2Vjb25kPSIyLWRpZ2l0In1jb25zdCBoPXZvaWQgMD09PXQueGY/bmV3IERhdGUoMWUzKnQuU2YpOm5ldyBEYXRlKERhdGUuVVRDKHQueGYueWVhcix0LnhmLm1vbnRoLTEsdC54Zi5kYXkpKTtyZXR1cm4gbmV3IERhdGUoaC5nZXRVVENGdWxsWWVhcigpLGguZ2V0VVRDTW9udGgoKSxoLmdldFVUQ0RhdGUoKSxoLmdldFVUQ0hvdXJzKCksaC5nZXRVVENNaW51dGVzKCksaC5nZXRVVENTZWNvbmRzKCksaC5nZXRVVENNaWxsaXNlY29uZHMoKSkudG9Mb2NhbGVTdHJpbmcocyxlKX0odC50aW1lLHMsaS5sb2NhbGUpfW1heFRpY2tNYXJrV2VpZ2h0KHQpe2xldCBpPXQucmVkdWNlKFdpLHRbMF0pLndlaWdodDtyZXR1cm4gaT4zMCYmaTw1MCYmKGk9MzApLGl9ZmlsbFdlaWdodHNGb3JQb2ludHModCxpKXshZnVuY3Rpb24odCxpPTApe2lmKDA9PT10Lmxlbmd0aClyZXR1cm47bGV0IHM9MD09PWk/bnVsbDp0W2ktMV0udGltZS5TZixlPW51bGwhPT1zP25ldyBEYXRlKDFlMypzKTpudWxsLGg9MDtmb3IobGV0IG49aTtuPHQubGVuZ3RoOysrbil7Y29uc3QgaT10W25dLHI9bmV3IERhdGUoMWUzKmkudGltZS5TZik7bnVsbCE9PWUmJihpLnRpbWVXZWlnaHQ9c3MocixlKSksaCs9aS50aW1lLlNmLShzfHxpLnRpbWUuU2YpLHM9aS50aW1lLlNmLGU9cn1pZigwPT09aSYmdC5sZW5ndGg+MSl7Y29uc3QgaT1NYXRoLmNlaWwoaC8odC5sZW5ndGgtMSkpLHM9bmV3IERhdGUoMWUzKih0WzBdLnRpbWUuU2YtaSkpO3RbMF0udGltZVdlaWdodD1zcyhuZXcgRGF0ZSgxZTMqdFswXS50aW1lLlNmKSxzKX19KHQsaSl9c3RhdGljIHlmKHQpe3JldHVybiBwKHtsb2NhbGl6YXRpb246e2RhdGVGb3JtYXQ6ImRkIE1NTSAneXkifX0sdD8/e30pfX1jb25zdCBscz0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdztmdW5jdGlvbiBhcygpe3JldHVybiEhbHMmJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xfWZ1bmN0aW9uIHVzKCl7cmV0dXJuISFscyYmL2lQaG9uZXxpUGFkfGlQb2QvLnRlc3Qod2luZG93Lm5hdmlnYXRvci5wbGF0Zm9ybSl9ZnVuY3Rpb24gY3ModCxpKXtzd2l0Y2godCl7Y2FzZSJjdXN0b20iOnJldHVybiB2b2lkIDAhPT1pPyJjdXN0b20tb2JqZWN0Ijoic2VyaWVzIjtjYXNlInByaWNlLWxpbmUiOnJldHVybiJjdXN0b20tcHJpY2UtbGluZSI7Y2FzZSJtYXJrZXIiOnJldHVybiJzZXJpZXMtbWFya2VyIjtjYXNlInByaW1pdGl2ZSI6cmV0dXJuInByaW1pdGl2ZSI7ZGVmYXVsdDpyZXR1cm4ic2VyaWVzIn19ZnVuY3Rpb24gZnModCl7cmV0dXJuIHQrdCUyfWNsYXNzIGRze2NvbnN0cnVjdG9yKHQsaSxzKXt0aGlzLmtmPTAsdGhpcy5QZj1udWxsLHRoaXMuVGY9e190Ok51bWJlci5ORUdBVElWRV9JTkZJTklUWSx1dDpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFl9LHRoaXMuUmY9MCx0aGlzLkRmPW51bGwsdGhpcy5JZj17X3Q6TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLHV0Ok51bWJlci5QT1NJVElWRV9JTkZJTklUWX0sdGhpcy5WZj1udWxsLHRoaXMuQmY9ITEsdGhpcy5FZj1udWxsLHRoaXMuQWY9bnVsbCx0aGlzLkxmPSExLHRoaXMuemY9ITEsdGhpcy5PZj0hMSx0aGlzLk5mPW51bGwsdGhpcy5GZj1udWxsLHRoaXMuV2Y9bnVsbCx0aGlzLkhmPW51bGwsdGhpcy5VZj1udWxsLHRoaXMuJGY9bnVsbCx0aGlzLmpmPW51bGwsdGhpcy5xZj0wLHRoaXMuWWY9ITEsdGhpcy5LZj0hMSx0aGlzLlpmPSExLHRoaXMuR2Y9MCx0aGlzLlhmPW51bGwsdGhpcy5KZj0hdXMoKSx0aGlzLlFmPXQ9Pnt0aGlzLnRwKHQpfSx0aGlzLmlwPXQ9PntpZih0aGlzLm5wKHQpKXtjb25zdCBpPXRoaXMuc3AodCk7aWYoKyt0aGlzLlJmLHRoaXMuRGYmJnRoaXMuUmY+MSl7Y29uc3R7ZXA6c309dGhpcy5ycChncyh0KSx0aGlzLklmKTtzPDMwJiYhdGhpcy5PZiYmdGhpcy5ocChpLHRoaXMubHAuYXApLHRoaXMub3AoKX19ZWxzZXtjb25zdCBpPXRoaXMuc3AodCk7aWYoKyt0aGlzLmtmLHRoaXMuUGYmJnRoaXMua2Y+MSl7Y29uc3R7ZXA6c309dGhpcy5ycChncyh0KSx0aGlzLlRmKTtzPDUmJiF0aGlzLnpmJiZ0aGlzLl9wKGksdGhpcy5scC51cCksdGhpcy5jcCgpfX19LHRoaXMuZHA9dCx0aGlzLmxwPWksdGhpcy55bj1zLHRoaXMuZnAoKX1tKCl7bnVsbCE9PXRoaXMuTmYmJih0aGlzLk5mKCksdGhpcy5OZj1udWxsKSxudWxsIT09dGhpcy5GZiYmKHRoaXMuRmYoKSx0aGlzLkZmPW51bGwpLG51bGwhPT10aGlzLkhmJiYodGhpcy5IZigpLHRoaXMuSGY9bnVsbCksbnVsbCE9PXRoaXMuVWYmJih0aGlzLlVmKCksdGhpcy5VZj1udWxsKSxudWxsIT09dGhpcy4kZiYmKHRoaXMuJGYoKSx0aGlzLiRmPW51bGwpLG51bGwhPT10aGlzLldmJiYodGhpcy5XZigpLHRoaXMuV2Y9bnVsbCksdGhpcy5wcCgpLHRoaXMuY3AoKX12cCh0KXt0aGlzLkhmJiZ0aGlzLkhmKCk7Y29uc3QgaT10aGlzLm1wLmJpbmQodGhpcyk7aWYodGhpcy5IZj0oKT0+e3RoaXMuZHAucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixpKX0sdGhpcy5kcC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGkpLHRoaXMubnAodCkpcmV0dXJuO2NvbnN0IHM9dGhpcy5zcCh0KTt0aGlzLl9wKHMsdGhpcy5scC53cCksdGhpcy5KZj0hMH1jcCgpe251bGwhPT10aGlzLlBmJiZjbGVhclRpbWVvdXQodGhpcy5QZiksdGhpcy5rZj0wLHRoaXMuUGY9bnVsbCx0aGlzLlRmPXsKX3Q6TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLHV0Ok51bWJlci5QT1NJVElWRV9JTkZJTklUWX19b3AoKXtudWxsIT09dGhpcy5EZiYmY2xlYXJUaW1lb3V0KHRoaXMuRGYpLHRoaXMuUmY9MCx0aGlzLkRmPW51bGwsdGhpcy5JZj17X3Q6TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLHV0Ok51bWJlci5QT1NJVElWRV9JTkZJTklUWX19bXAodCl7aWYodGhpcy5aZnx8bnVsbCE9PXRoaXMuQWYpcmV0dXJuO2lmKHRoaXMubnAodCkpcmV0dXJuO2NvbnN0IGk9dGhpcy5zcCh0KTt0aGlzLl9wKGksdGhpcy5scC5NcCksdGhpcy5KZj0hMH1ncCh0KXtjb25zdCBpPWJzKHQuY2hhbmdlZFRvdWNoZXMsZih0aGlzLlhmKSk7aWYobnVsbD09PWkpcmV0dXJuO2lmKHRoaXMuR2Y9dnModCksbnVsbCE9PXRoaXMuamYpcmV0dXJuO2lmKHRoaXMuS2YpcmV0dXJuO3RoaXMuWWY9ITA7Y29uc3Qgcz10aGlzLnJwKGdzKGkpLGYodGhpcy5BZikpLHticDplLFNwOmgsZXA6bn09cztpZih0aGlzLkxmfHwhKG48NSkpe2lmKCF0aGlzLkxmKXtjb25zdCB0PS41KmUsaT1oPj10JiYhdGhpcy55bi54cCgpLHM9dD5oJiYhdGhpcy55bi5DcCgpO2l8fHN8fCh0aGlzLktmPSEwKSx0aGlzLkxmPSEwLHRoaXMuT2Y9ITAsdGhpcy5wcCgpLHRoaXMub3AoKX1pZighdGhpcy5LZil7Y29uc3Qgcz10aGlzLnNwKHQsaSk7dGhpcy5ocChzLHRoaXMubHAueXApLHBzKHQpfX19a3AodCl7aWYoMCE9PXQuYnV0dG9uKXJldHVybjtjb25zdCBpPXRoaXMucnAoZ3ModCksZih0aGlzLkVmKSkse2VwOnN9PWk7aWYocz49NSYmKHRoaXMuemY9ITAsdGhpcy5jcCgpKSx0aGlzLnpmKXtjb25zdCBpPXRoaXMuc3AodCk7dGhpcy5fcChpLHRoaXMubHAuUHApfX1ycCh0LGkpe2NvbnN0IHM9TWF0aC5hYnMoaS5fdC10Ll90KSxlPU1hdGguYWJzKGkudXQtdC51dCk7cmV0dXJue2JwOnMsU3A6ZSxlcDpzK2V9fVRwKHQpe2xldCBpPWJzKHQuY2hhbmdlZFRvdWNoZXMsZih0aGlzLlhmKSk7aWYobnVsbD09PWkmJjA9PT10LnRvdWNoZXMubGVuZ3RoJiYoaT10LmNoYW5nZWRUb3VjaGVzWzBdKSxudWxsPT09aSlyZXR1cm47dGhpcy5YZj1udWxsLHRoaXMuR2Y9dnModCksdGhpcy5wcCgpLHRoaXMuQWY9bnVsbCx0aGlzLiRmJiYodGhpcy4kZigpLHRoaXMuJGY9bnVsbCk7Y29uc3Qgcz10aGlzLnNwKHQsaSk7aWYodGhpcy5ocChzLHRoaXMubHAuUnApLCsrdGhpcy5SZix0aGlzLkRmJiZ0aGlzLlJmPjEpe2NvbnN0e2VwOnR9PXRoaXMucnAoZ3MoaSksdGhpcy5JZik7dDwzMCYmIXRoaXMuT2YmJnRoaXMuaHAocyx0aGlzLmxwLmFwKSx0aGlzLm9wKCl9ZWxzZSB0aGlzLk9mfHwodGhpcy5ocChzLHRoaXMubHAuRHApLHRoaXMubHAuRHAmJnBzKHQpKTswPT09dGhpcy5SZiYmcHModCksMD09PXQudG91Y2hlcy5sZW5ndGgmJnRoaXMuQmYmJih0aGlzLkJmPSExLHBzKHQpKX10cCh0KXtpZigwIT09dC5idXR0b24pcmV0dXJuO2NvbnN0IGk9dGhpcy5zcCh0KTtpZih0aGlzLkVmPW51bGwsdGhpcy5aZj0hMSx0aGlzLlVmJiYodGhpcy5VZigpLHRoaXMuVWY9bnVsbCksYXMoKSYmdGhpcy5kcC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIix0aGlzLlFmKSwhdGhpcy5ucCh0KSlpZih0aGlzLl9wKGksdGhpcy5scC5JcCksKyt0aGlzLmtmLHRoaXMuUGYmJnRoaXMua2Y+MSl7Y29uc3R7ZXA6c309dGhpcy5ycChncyh0KSx0aGlzLlRmKTtzPDUmJiF0aGlzLnpmJiZ0aGlzLl9wKGksdGhpcy5scC51cCksdGhpcy5jcCgpfWVsc2UgdGhpcy56Znx8dGhpcy5fcChpLHRoaXMubHAuVnApfXBwKCl7bnVsbCE9PXRoaXMuVmYmJihjbGVhclRpbWVvdXQodGhpcy5WZiksdGhpcy5WZj1udWxsKX1CcCh0KXtpZihudWxsIT09dGhpcy5YZilyZXR1cm47Y29uc3QgaT10LmNoYW5nZWRUb3VjaGVzWzBdO3RoaXMuWGY9aS5pZGVudGlmaWVyLHRoaXMuR2Y9dnModCk7Y29uc3Qgcz10aGlzLmRwLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3RoaXMuT2Y9ITEsdGhpcy5MZj0hMSx0aGlzLktmPSExLHRoaXMuQWY9Z3MoaSksdGhpcy4kZiYmKHRoaXMuJGYoKSx0aGlzLiRmPW51bGwpO3tjb25zdCBpPXRoaXMuZ3AuYmluZCh0aGlzKSxlPXRoaXMuVHAuYmluZCh0aGlzKTt0aGlzLiRmPSgpPT57cy5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGkpLHMucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGUpfSxzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsaSx7cGFzc2l2ZTohMX0pLHMuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGUse3Bhc3NpdmU6ITF9KSx0aGlzLnBwKCksdGhpcy5WZj1zZXRUaW1lb3V0KHRoaXMuRXAuYmluZCh0aGlzLHQpLDI0MCl9Y29uc3QgZT10aGlzLnNwKHQsaSk7dGhpcy5ocChlLHRoaXMubHAuQXApLHRoaXMuRGZ8fCh0aGlzLlJmPTAsdGhpcy5EZj1zZXRUaW1lb3V0KHRoaXMub3AuYmluZCh0aGlzKSw1MDApLHRoaXMuSWY9Z3MoaSkpfUxwKHQpe2lmKDAhPT10LmJ1dHRvbilyZXR1cm47Y29uc3QgaT10aGlzLmRwLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2FzKCkmJmkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdGhpcy5RZiksdGhpcy56Zj0hMSx0aGlzLkVmPWdzKHQpLHRoaXMuVWYmJih0aGlzLlVmKCksdGhpcy5VZj1udWxsKTt7Y29uc3QgdD10aGlzLmtwLmJpbmQodGhpcykscz10aGlzLnRwLmJpbmQodGhpcyk7dGhpcy5VZj0oKT0+e2kucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0KSxpLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHMpfSxpLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdCksaS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixzKX1pZih0aGlzLlpmPSEwLHRoaXMubnAodCkpcmV0dXJuO2NvbnN0IHM9dGhpcy5zcCh0KTt0aGlzLl9wKHMsdGhpcy5scC56cCksdGhpcy5QZnx8KHRoaXMua2Y9MCx0aGlzLlBmPXNldFRpbWVvdXQodGhpcy5jcC5iaW5kKHRoaXMpLDUwMCksdGhpcy5UZj1ncyh0KSl9ZnAoKXsKdGhpcy5kcC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIix0aGlzLnZwLmJpbmQodGhpcykpLHRoaXMuZHAuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hjYW5jZWwiLHRoaXMucHAuYmluZCh0aGlzKSk7e2NvbnN0IHQ9dGhpcy5kcC5vd25lckRvY3VtZW50LGk9dD0+e3RoaXMubHAuT3AmJih0LmNvbXBvc2VkJiZ0aGlzLmRwLmNvbnRhaW5zKHQuY29tcG9zZWRQYXRoKClbMF0pfHx0LnRhcmdldCYmdGhpcy5kcC5jb250YWlucyh0LnRhcmdldCl8fHRoaXMubHAuT3AoKSl9O3RoaXMuRmY9KCk9Pnt0LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGkpfSx0aGlzLk5mPSgpPT57dC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGkpfSx0LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsaSksdC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixpLHtwYXNzaXZlOiEwfSl9dXMoKSYmKHRoaXMuV2Y9KCk9Pnt0aGlzLmRwLnJlbW92ZUV2ZW50TGlzdGVuZXIoImRibGNsaWNrIix0aGlzLmlwKX0sdGhpcy5kcC5hZGRFdmVudExpc3RlbmVyKCJkYmxjbGljayIsdGhpcy5pcCkpLHRoaXMuZHAuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdGhpcy5OcC5iaW5kKHRoaXMpKSx0aGlzLmRwLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMuQnAuYmluZCh0aGlzKSx7cGFzc2l2ZTohMH0pLGZ1bmN0aW9uKHQpe2xzJiZ2b2lkIDAhPT13aW5kb3cuY2hyb21lJiZ0LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsKHQ9PntpZigxPT09dC5idXR0b24pcmV0dXJuIHQucHJldmVudERlZmF1bHQoKSwhMX0pKX0odGhpcy5kcCksdGhpcy5kcC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHRoaXMuTHAuYmluZCh0aGlzKSksdGhpcy5GcCgpLHRoaXMuZHAuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIiwoKCk9Pnt9KSx7cGFzc2l2ZTohMX0pfUZwKCl7dm9pZCAwPT09dGhpcy5scC5XcCYmdm9pZCAwPT09dGhpcy5scC5IcCYmdm9pZCAwPT09dGhpcy5scC5VcHx8KHRoaXMuZHAuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsKHQ9PnRoaXMuJHAodC50b3VjaGVzKSkse3Bhc3NpdmU6ITB9KSx0aGlzLmRwLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsKHQ9PntpZigyPT09dC50b3VjaGVzLmxlbmd0aCYmbnVsbCE9PXRoaXMuamYmJnZvaWQgMCE9PXRoaXMubHAuSHApe2NvbnN0IGk9bXModC50b3VjaGVzWzBdLHQudG91Y2hlc1sxXSkvdGhpcy5xZjt0aGlzLmxwLkhwKHRoaXMuamYsaSkscHModCl9fSkse3Bhc3NpdmU6ITF9KSx0aGlzLmRwLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIiwodD0+e3RoaXMuJHAodC50b3VjaGVzKX0pKSl9JHAodCl7MT09PXQubGVuZ3RoJiYodGhpcy5ZZj0hMSksMiE9PXQubGVuZ3RofHx0aGlzLllmfHx0aGlzLkJmP3RoaXMuanAoKTp0aGlzLnFwKHQpfXFwKHQpe2NvbnN0IGk9dGhpcy5kcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKXx8e2xlZnQ6MCx0b3A6MH07dGhpcy5qZj17X3Q6KHRbMF0uY2xpZW50WC1pLmxlZnQrKHRbMV0uY2xpZW50WC1pLmxlZnQpKS8yLHV0Oih0WzBdLmNsaWVudFktaS50b3ArKHRbMV0uY2xpZW50WS1pLnRvcCkpLzJ9LHRoaXMucWY9bXModFswXSx0WzFdKSx2b2lkIDAhPT10aGlzLmxwLldwJiZ0aGlzLmxwLldwKCksdGhpcy5wcCgpfWpwKCl7bnVsbCE9PXRoaXMuamYmJih0aGlzLmpmPW51bGwsdm9pZCAwIT09dGhpcy5scC5VcCYmdGhpcy5scC5VcCgpKX1OcCh0KXtpZih0aGlzLkhmJiZ0aGlzLkhmKCksdGhpcy5ucCh0KSlyZXR1cm47aWYoIXRoaXMuSmYpcmV0dXJuO2NvbnN0IGk9dGhpcy5zcCh0KTt0aGlzLl9wKGksdGhpcy5scC5ZcCksdGhpcy5KZj0hdXMoKX1FcCh0KXtjb25zdCBpPWJzKHQudG91Y2hlcyxmKHRoaXMuWGYpKTtpZihudWxsPT09aSlyZXR1cm47Y29uc3Qgcz10aGlzLnNwKHQsaSk7dGhpcy5ocChzLHRoaXMubHAuS3ApLHRoaXMuT2Y9ITAsdGhpcy5CZj0hMH1ucCh0KXtyZXR1cm4gdC5zb3VyY2VDYXBhYmlsaXRpZXMmJnZvaWQgMCE9PXQuc291cmNlQ2FwYWJpbGl0aWVzLmZpcmVzVG91Y2hFdmVudHM/dC5zb3VyY2VDYXBhYmlsaXRpZXMuZmlyZXNUb3VjaEV2ZW50czp2cyh0KTx0aGlzLkdmKzUwMH1ocCh0LGkpe2kmJmkuY2FsbCh0aGlzLmxwLHQpfV9wKHQsaSl7aSYmaS5jYWxsKHRoaXMubHAsdCl9c3AodCxpKXtjb25zdCBzPWl8fHQsZT10aGlzLmRwLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfHx7bGVmdDowLHRvcDowfTtyZXR1cm57Y2xpZW50WDpzLmNsaWVudFgsY2xpZW50WTpzLmNsaWVudFkscGFnZVg6cy5wYWdlWCxwYWdlWTpzLnBhZ2VZLHNjcmVlblg6cy5zY3JlZW5YLHNjcmVlblk6cy5zY3JlZW5ZLGxvY2FsWDpzLmNsaWVudFgtZS5sZWZ0LGxvY2FsWTpzLmNsaWVudFktZS50b3AsY3RybEtleTp0LmN0cmxLZXksYWx0S2V5OnQuYWx0S2V5LHNoaWZ0S2V5OnQuc2hpZnRLZXksbWV0YUtleTp0Lm1ldGFLZXksWnA6IXQudHlwZS5zdGFydHNXaXRoKCJtb3VzZSIpJiYiY29udGV4dG1lbnUiIT09dC50eXBlJiYiY2xpY2siIT09dC50eXBlLEdwOnQudHlwZSxYcDpzLnRhcmdldCxndTp0LnZpZXcsSnA6KCk9PnsidG91Y2hzdGFydCIhPT10LnR5cGUmJnBzKHQpfX19fWZ1bmN0aW9uIG1zKHQsaSl7Y29uc3Qgcz10LmNsaWVudFgtaS5jbGllbnRYLGU9dC5jbGllbnRZLWkuY2xpZW50WTtyZXR1cm4gTWF0aC5zcXJ0KHMqcytlKmUpfWZ1bmN0aW9uIHBzKHQpe3QuY2FuY2VsYWJsZSYmdC5wcmV2ZW50RGVmYXVsdCgpfWZ1bmN0aW9uIGdzKHQpe3JldHVybntfdDp0LnBhZ2VYLHV0OnQucGFnZVl9fWZ1bmN0aW9uIHZzKHQpe3JldHVybiB0LnRpbWVTdGFtcHx8cGVyZm9ybWFuY2Uubm93KCl9ZnVuY3Rpb24gYnModCxpKXtmb3IobGV0IHM9MDtzPHQubGVuZ3RoOysrcylpZih0W3NdLmlkZW50aWZpZXI9PT1pKXJldHVybiB0W3NdO3JldHVybiBudWxsfWNsYXNzIHdze2NvbnN0cnVjdG9yKHQsaSxzKXt0aGlzLlFwPW51bGwsdGhpcy50dj1udWxsLHRoaXMuaXY9ITAsdGhpcy5udj1udWxsLHRoaXMuc3Y9dCx0aGlzLmV2PXQucnYoKVtpXSwKdGhpcy5odj10LnJ2KClbc10sdGhpcy5hdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ciIpLHRoaXMuYXYuc3R5bGUuaGVpZ2h0PSIxcHgiLHRoaXMubHY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKSx0aGlzLmx2LnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsdGhpcy5sdi5zdHlsZS5wYWRkaW5nPSIwIix0aGlzLmx2LnN0eWxlLm1hcmdpbj0iMCIsdGhpcy5sdi5zZXRBdHRyaWJ1dGUoImNvbHNwYW4iLCIzIiksdGhpcy5vdigpLHRoaXMuYXYuYXBwZW5kQ2hpbGQodGhpcy5sdiksdGhpcy5pdj10aGlzLnN2Lk4oKS5sYXlvdXQucGFuZXMuZW5hYmxlUmVzaXplLHRoaXMuaXY/dGhpcy5fdigpOih0aGlzLlFwPW51bGwsdGhpcy50dj1udWxsKX1tKCl7bnVsbCE9PXRoaXMudHYmJnRoaXMudHYubSgpfXV2KCl7cmV0dXJuIHRoaXMuYXZ9Y3YoKXtyZXR1cm4gZS5zaXplKHt3aWR0aDp0aGlzLmV2LmN2KCkud2lkdGgsaGVpZ2h0OjF9KX1kdigpe3JldHVybiBlLnNpemUoe3dpZHRoOnRoaXMuZXYuZHYoKS53aWR0aCxoZWlnaHQ6MSp3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb30pfWZ2KHQsaSxzKXtjb25zdCBlPXRoaXMuZHYoKTt0LmZpbGxTdHlsZT10aGlzLnN2Lk4oKS5sYXlvdXQucGFuZXMuc2VwYXJhdG9yQ29sb3IsdC5maWxsUmVjdChpLHMsZS53aWR0aCxlLmhlaWdodCl9a3QoKXt0aGlzLm92KCksdGhpcy5zdi5OKCkubGF5b3V0LnBhbmVzLmVuYWJsZVJlc2l6ZSE9PXRoaXMuaXYmJih0aGlzLml2PXRoaXMuc3YuTigpLmxheW91dC5wYW5lcy5lbmFibGVSZXNpemUsdGhpcy5pdj90aGlzLl92KCk6KG51bGwhPT10aGlzLlFwJiYodGhpcy5sdi5yZW1vdmVDaGlsZCh0aGlzLlFwLnB2KSx0aGlzLmx2LnJlbW92ZUNoaWxkKHRoaXMuUXAudnYpLHRoaXMuUXA9bnVsbCksbnVsbCE9PXRoaXMudHYmJih0aGlzLnR2Lm0oKSx0aGlzLnR2PW51bGwpKSl9X3YoKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGk9dC5zdHlsZTtpLnBvc2l0aW9uPSJmaXhlZCIsaS5kaXNwbGF5PSJub25lIixpLnpJbmRleD0iNDkiLGkudG9wPSIwIixpLmxlZnQ9IjAiLGkud2lkdGg9IjEwMCUiLGkuaGVpZ2h0PSIxMDAlIixpLmN1cnNvcj0icm93LXJlc2l6ZSIsdGhpcy5sdi5hcHBlbmRDaGlsZCh0KTtjb25zdCBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGU9cy5zdHlsZTtlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsZS56SW5kZXg9IjUwIixlLnRvcD0iLTRweCIsZS5oZWlnaHQ9IjlweCIsZS53aWR0aD0iMTAwJSIsZS5iYWNrZ3JvdW5kQ29sb3I9IiIsZS5jdXJzb3I9InJvdy1yZXNpemUiLHRoaXMubHYuYXBwZW5kQ2hpbGQocyk7Y29uc3QgaD17d3A6dGhpcy5tdi5iaW5kKHRoaXMpLFlwOnRoaXMud3YuYmluZCh0aGlzKSx6cDp0aGlzLk12LmJpbmQodGhpcyksQXA6dGhpcy5Ndi5iaW5kKHRoaXMpLFBwOnRoaXMuZ3YuYmluZCh0aGlzKSx5cDp0aGlzLmd2LmJpbmQodGhpcyksSXA6dGhpcy5idi5iaW5kKHRoaXMpLFJwOnRoaXMuYnYuYmluZCh0aGlzKX07dGhpcy50dj1uZXcgZHMocyxoLHt4cDooKT0+ITEsQ3A6KCk9PiEwfSksdGhpcy5RcD17dnY6cyxwdjp0fX1vdigpe3RoaXMubHYuc3R5bGUuYmFja2dyb3VuZD10aGlzLnN2Lk4oKS5sYXlvdXQucGFuZXMuc2VwYXJhdG9yQ29sb3J9bXYodCl7bnVsbCE9PXRoaXMuUXAmJih0aGlzLlFwLnZ2LnN0eWxlLmJhY2tncm91bmRDb2xvcj10aGlzLnN2Lk4oKS5sYXlvdXQucGFuZXMuc2VwYXJhdG9ySG92ZXJDb2xvcil9d3YodCl7bnVsbCE9PXRoaXMuUXAmJm51bGw9PT10aGlzLm52JiYodGhpcy5RcC52di5zdHlsZS5iYWNrZ3JvdW5kQ29sb3I9IiIpfU12KHQpe2lmKG51bGw9PT10aGlzLlFwKXJldHVybjtjb25zdCBpPXRoaXMuZXYuU3YoKS56XygpK3RoaXMuaHYuU3YoKS56XygpLHM9aS8odGhpcy5ldi5jdigpLmhlaWdodCt0aGlzLmh2LmN2KCkuaGVpZ2h0KSxlPTMwKnM7aTw9MiplfHwodGhpcy5udj17eHY6dC5wYWdlWSxDdjp0aGlzLmV2LlN2KCkuel8oKSx5djppLWUsa3Y6aSxQdjpzLFR2OmV9LHRoaXMuUXAucHYuc3R5bGUuZGlzcGxheT0iYmxvY2siKX1ndih0KXtjb25zdCBpPXRoaXMubnY7aWYobnVsbD09PWkpcmV0dXJuO2NvbnN0IHM9KHQucGFnZVktaS54dikqaS5QdixlPWlpKGkuQ3YrcyxpLlR2LGkueXYpO3RoaXMuZXYuU3YoKS5PXyhlKSx0aGlzLmh2LlN2KCkuT18oaS5rdi1lKSx0aGlzLnN2LlF0KCkuUGEoKX1idih0KXtudWxsIT09dGhpcy5udiYmbnVsbCE9PXRoaXMuUXAmJih0aGlzLm52PW51bGwsdGhpcy5RcC5wdi5zdHlsZS5kaXNwbGF5PSJub25lIil9fWZ1bmN0aW9uIE1zKHQsaSl7cmV0dXJuIHQuUnYtaS5Sdn1mdW5jdGlvbiB5cyh0LGkscyl7Y29uc3QgZT0odC5Sdi1pLlJ2KS8odC53dC1pLnd0KTtyZXR1cm4gTWF0aC5zaWduKGUpKk1hdGgubWluKE1hdGguYWJzKGUpLHMpfWNsYXNzIHhze2NvbnN0cnVjdG9yKHQsaSxzLGUpe3RoaXMuRHY9bnVsbCx0aGlzLkl2PW51bGwsdGhpcy5Wdj1udWxsLHRoaXMuQnY9bnVsbCx0aGlzLkV2PW51bGwsdGhpcy5Bdj0wLHRoaXMuTHY9MCx0aGlzLnp2PXQsdGhpcy5Pdj1pLHRoaXMuTnY9cyx0aGlzLmtzPWV9RnYodCxpKXtpZihudWxsIT09dGhpcy5Edil7aWYodGhpcy5Edi53dD09PWkpcmV0dXJuIHZvaWQodGhpcy5Edi5Sdj10KTtpZihNYXRoLmFicyh0aGlzLkR2LlJ2LXQpPHRoaXMua3MpcmV0dXJufXRoaXMuQnY9dGhpcy5Wdix0aGlzLlZ2PXRoaXMuSXYsdGhpcy5Jdj10aGlzLkR2LHRoaXMuRHY9e3d0OmksUnY6dH19bWUodCxpKXtpZihudWxsPT09dGhpcy5Ednx8bnVsbD09PXRoaXMuSXYpcmV0dXJuO2lmKGktdGhpcy5Edi53dD41MClyZXR1cm47bGV0IHM9MDtjb25zdCBlPXlzKHRoaXMuRHYsdGhpcy5Jdix0aGlzLk92KSxoPU1zKHRoaXMuRHYsdGhpcy5Jdiksbj1bZV0scj1baF07aWYocys9aCxudWxsIT09dGhpcy5Wdil7Y29uc3QgdD15cyh0aGlzLkl2LHRoaXMuVnYsdGhpcy5Pdik7aWYoTWF0aC5zaWduKHQpPT09TWF0aC5zaWduKGUpKXtjb25zdCBpPU1zKHRoaXMuSXYsdGhpcy5Wdik7aWYobi5wdXNoKHQpLHIucHVzaChpKSxzKz1pLApudWxsIT09dGhpcy5Cdil7Y29uc3QgdD15cyh0aGlzLlZ2LHRoaXMuQnYsdGhpcy5Pdik7aWYoTWF0aC5zaWduKHQpPT09TWF0aC5zaWduKGUpKXtjb25zdCBpPU1zKHRoaXMuVnYsdGhpcy5Cdik7bi5wdXNoKHQpLHIucHVzaChpKSxzKz1pfX19fWxldCBvPTA7Zm9yKGxldCB0PTA7dDxuLmxlbmd0aDsrK3Qpbys9clt0XS9zKm5bdF07TWF0aC5hYnMobyk8dGhpcy56dnx8KHRoaXMuRXY9e1J2OnQsd3Q6aX0sdGhpcy5Mdj1vLHRoaXMuQXY9ZnVuY3Rpb24odCxpKXtjb25zdCBzPU1hdGgubG9nKGkpO3JldHVybiBNYXRoLmxvZygxKnMvLXQpL3N9KE1hdGguYWJzKG8pLHRoaXMuTnYpKX1xYyh0KXtjb25zdCBpPWYodGhpcy5Fdikscz10LWkud3Q7cmV0dXJuIGkuUnYrdGhpcy5MdiooTWF0aC5wb3codGhpcy5OdixzKS0xKS9NYXRoLmxvZyh0aGlzLk52KX1qYyh0KXtyZXR1cm4gbnVsbD09PXRoaXMuRXZ8fHRoaXMuV3YodCk9PT10aGlzLkF2fVd2KHQpe2NvbnN0IGk9dC1mKHRoaXMuRXYpLnd0O3JldHVybiBNYXRoLm1pbihpLHRoaXMuQXYpfX1jbGFzcyBTc3tjb25zdHJ1Y3Rvcih0LGkpe3RoaXMuSHY9dm9pZCAwLHRoaXMuVXY9dm9pZCAwLHRoaXMuJHY9dm9pZCAwLHRoaXMudm49ITEsdGhpcy5qdj10LHRoaXMucXY9aSx0aGlzLll2KCl9a3QoKXt0aGlzLll2KCl9S3YoKXt0aGlzLkh2JiZ0aGlzLmp2LnJlbW92ZUNoaWxkKHRoaXMuSHYpLHRoaXMuVXYmJnRoaXMuanYucmVtb3ZlQ2hpbGQodGhpcy5VdiksdGhpcy5Idj12b2lkIDAsdGhpcy5Vdj12b2lkIDB9WnYoKXtyZXR1cm4gdGhpcy52biE9PXRoaXMuR3YoKXx8dGhpcy4kdiE9PXRoaXMuWHYoKX1Ydigpe3JldHVybiB0aGlzLnF2LlF0KCkuWGkoKS5KKHRoaXMucXYuTigpLmxheW91dC50ZXh0Q29sb3IpPjE2MD8iZGFyayI6ImxpZ2h0In1Hdigpe3JldHVybiB0aGlzLnF2Lk4oKS5sYXlvdXQuYXR0cmlidXRpb25Mb2dvfUp2KCl7Y29uc3QgdD1uZXcgVVJMKGxvY2F0aW9uLmhyZWYpO3JldHVybiB0Lmhvc3RuYW1lPyImdXRtX3NvdXJjZT0iK3QuaG9zdG5hbWUrdC5wYXRobmFtZToiIn1Zdigpe3RoaXMuWnYoKSYmKHRoaXMuS3YoKSx0aGlzLnZuPXRoaXMuR3YoKSx0aGlzLnZuJiYodGhpcy4kdj10aGlzLlh2KCksdGhpcy5Vdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpLHRoaXMuVXYuaW5uZXJUZXh0PSJhI3R2LWF0dHItbG9nb3stLWZpbGw6IzEzMTcyMjstLXN0cm9rZTojZmZmO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTBweDtib3R0b206MTBweDtoZWlnaHQ6MTlweDt3aWR0aDozNXB4O21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MDt6LWluZGV4OjM7fWEjdHYtYXR0ci1sb2dvW2RhdGEtZGFya117LS1maWxsOiNEMUQ0REM7LS1zdHJva2U6IzEzMTcyMjt9Iix0aGlzLkh2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSx0aGlzLkh2LmhyZWY9YGh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS8/dXRtX21lZGl1bT1sd2MtbGluayZ1dG1fY2FtcGFpZ249bHdjLWNoYXJ0JHt0aGlzLkp2KCl9YCx0aGlzLkh2LnRpdGxlPSJDaGFydGluZyBieSBUcmFkaW5nVmlldyIsdGhpcy5Idi5pZD0idHYtYXR0ci1sb2dvIix0aGlzLkh2LnRhcmdldD0iX2JsYW5rIix0aGlzLkh2LmlubmVySFRNTD0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNSIgaGVpZ2h0PSIxOSIgZmlsbD0ibm9uZSI+PGcgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXBhdGg9InVybCgjYSkiIGNsaXAtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0idmFyKC0tc3Ryb2tlKSIgZD0iTTIgMEgwdjEwaDZ2OWgyMS40bC41LTEuMyA2LTE1IDEtMi43SDIzLjdsLS41IDEuMy0uMi42YTUgNSAwIDAgMC03LS45VjBIMlptMjAgMTdoNGw1LjItMTMgLjgtMmgtN2wtMSAyLjUtLjIuNS0xLjUgMy44LS4zLjdWMTdabS0uOC0xMGEzIDMgMCAwIDAgLjctMi43QTMgMyAwIDEgMCAxNi44IDdoNC40Wk0xNCA3VjJIMnY2aDZ2OWg0VjdoMloiLz48cGF0aCBmaWxsPSJ2YXIoLS1maWxsKSIgZD0iTTE0IDJIMnY2aDZ2OWg2VjJabTEyIDE1aC03bDYtMTVoN2wtNiAxNVptLTctOWEzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZaIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iYSI+PHBhdGggZmlsbD0idmFyKC0tc3Ryb2tlKSIgZD0iTTAgMGgzNXYxOUgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPicsdGhpcy5Idi50b2dnbGVBdHRyaWJ1dGUoImRhdGEtZGFyayIsImRhcmsiPT09dGhpcy4kdiksdGhpcy5qdi5hcHBlbmRDaGlsZCh0aGlzLlV2KSx0aGlzLmp2LmFwcGVuZENoaWxkKHRoaXMuSHYpKSl9fWZ1bmN0aW9uIENzKHQsaSl7Y29uc3Qgcz1mKHQub3duZXJEb2N1bWVudCkuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7dC5hcHBlbmRDaGlsZChzKTtjb25zdCBoPSgwLGUuYmluZENhbnZhc0VsZW1lbnRCaXRtYXBTaXplVG8pKHMse3R5cGU6ImRldmljZS1waXhlbC1jb250ZW50LWJveCIsb3B0aW9uczp7YWxsb3dSZXNpemVPYnNlcnZlcjohMH0sdHJhbnNmb3JtOih0LGkpPT4oe3dpZHRoOk1hdGgubWF4KHQud2lkdGgsaS53aWR0aCksaGVpZ2h0Ok1hdGgubWF4KHQuaGVpZ2h0LGkuaGVpZ2h0KX0pfSk7cmV0dXJuIGgucmVzaXplQ2FudmFzRWxlbWVudChpKSxofWZ1bmN0aW9uIF9zKHQpe3Qud2lkdGg9MSx0LmhlaWdodD0xLHQuZ2V0Q29udGV4dCgiMmQiKT8uY2xlYXJSZWN0KDAsMCwxLDEpfWZ1bmN0aW9uIGtzKHQsaSxzLGUpe3QucWgmJnQucWgoaSxzLGUpfWZ1bmN0aW9uIEVzKHQsaSxzLGUpe3Quc3QoaSxzLGUpfWZ1bmN0aW9uIE5zKHQsaSxzLGUpe2NvbnN0IGg9dChzLGUpO2Zvcihjb25zdCB0IG9mIGgpe2NvbnN0IHM9dC5UdChlKTtudWxsIT09cyYmaShzKX19ZnVuY3Rpb24gVHModCxpKXtyZXR1cm4gcz0+ZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMCE9PXQuRnR9KHMpPyhzLkZ0KCk/LmNsKCk/PyIiKSE9PWk/W106cy5HYT8uKHQpPz9bXTpbXX1mdW5jdGlvbiB6cyh0LGkscyxlKXtpZighdC5sZW5ndGgpcmV0dXJuO2xldCBoPTA7Y29uc3Qgbj10WzBdLiR0KGUsITApCjtsZXQgcj0xPT09aT9zLzItKHRbMF0uSGkoKS1uLzIpOnRbMF0uSGkoKS1uLzItcy8yO3I9TWF0aC5tYXgoMCxyKTtmb3IobGV0IG49MTtuPHQubGVuZ3RoO24rKyl7Y29uc3Qgbz10W25dLGw9dFtuLTFdLGE9bC4kdChlLCExKSx1PW8uSGkoKSxjPWwuSGkoKTtpZigxPT09aT91PmMtYTp1PGMrYSl7Y29uc3QgZT1jLWEqaTtvLlVpKGUpO2NvbnN0IG49ZS1pKmEvMjtpZigoMT09PWk/bjwwOm4+cykmJnI+MCl7Y29uc3QgZT0xPT09aT8tMS1uOm4tcyxvPU1hdGgubWluKGUscik7Zm9yKGxldCBzPWg7czx0Lmxlbmd0aDtzKyspdFtzXS5VaSh0W3NdLkhpKCkraSpvKTtyLT1vfX1lbHNlIGg9bixyPTE9PT1pP2MtYS11OnUtKGMrYSl9fWNsYXNzIElze2NvbnN0cnVjdG9yKHQsaSxzLGgpe3RoaXMuS2k9bnVsbCx0aGlzLlF2PW51bGwsdGhpcy50bT0hMSx0aGlzLmltPW5ldyBudCgyMDApLHRoaXMubm09bnVsbCx0aGlzLnNtPTAsdGhpcy5ybT0hMSx0aGlzLmhtPSgpPT57dGhpcy5ybXx8dGhpcy55dC5hbSgpLlF0KCkubXIoKX0sdGhpcy5sbT0oKT0+e3RoaXMucm18fHRoaXMueXQuYW0oKS5RdCgpLm1yKCl9LHRoaXMueXQ9dCx0aGlzLnluPWksdGhpcy5rbz1pLmxheW91dCx0aGlzLndkPXMsdGhpcy5vbT0ibGVmdCI9PT1oLHRoaXMuX209VHMoIm5vcm1hbCIsaCksdGhpcy51bT1UcygidG9wIixoKSx0aGlzLmRtPVRzKCJib3R0b20iLGgpLHRoaXMubHY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5sdi5zdHlsZS5oZWlnaHQ9IjEwMCUiLHRoaXMubHYuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIsdGhpcy5sdi5zdHlsZS53aWR0aD0iMjVweCIsdGhpcy5sdi5zdHlsZS5sZWZ0PSIwIix0aGlzLmx2LnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsdGhpcy5mbT1Dcyh0aGlzLmx2LGUuc2l6ZSh7d2lkdGg6MTYsaGVpZ2h0OjE2fSkpLHRoaXMuZm0uc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQodGhpcy5obSk7Y29uc3Qgbj10aGlzLmZtLmNhbnZhc0VsZW1lbnQ7bi5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLG4uc3R5bGUuekluZGV4PSIxIixuLnN0eWxlLmxlZnQ9IjAiLG4uc3R5bGUudG9wPSIwIix0aGlzLnBtPUNzKHRoaXMubHYsZS5zaXplKHt3aWR0aDoxNixoZWlnaHQ6MTZ9KSksdGhpcy5wbS5zdWJzY3JpYmVTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0aGlzLmxtKTtjb25zdCByPXRoaXMucG0uY2FudmFzRWxlbWVudDtyLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsci5zdHlsZS56SW5kZXg9IjIiLHIuc3R5bGUubGVmdD0iMCIsci5zdHlsZS50b3A9IjAiO2NvbnN0IG89e3pwOnRoaXMuTXYuYmluZCh0aGlzKSxBcDp0aGlzLk12LmJpbmQodGhpcyksUHA6dGhpcy5ndi5iaW5kKHRoaXMpLHlwOnRoaXMuZ3YuYmluZCh0aGlzKSxPcDp0aGlzLnZtLmJpbmQodGhpcyksSXA6dGhpcy5idi5iaW5kKHRoaXMpLFJwOnRoaXMuYnYuYmluZCh0aGlzKSx1cDp0aGlzLndtLmJpbmQodGhpcyksYXA6dGhpcy53bS5iaW5kKHRoaXMpLHdwOnRoaXMuTW0uYmluZCh0aGlzKSxZcDp0aGlzLnd2LmJpbmQodGhpcyl9O3RoaXMudHY9bmV3IGRzKHRoaXMucG0uY2FudmFzRWxlbWVudCxvLHt4cDooKT0+IXRoaXMueW4uaGFuZGxlU2Nyb2xsLnZlcnRUb3VjaERyYWcsQ3A6KCk9PiEwfSl9bSgpe3RoaXMudHYubSgpLHRoaXMucG0udW5zdWJzY3JpYmVTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0aGlzLmxtKSxfcyh0aGlzLnBtLmNhbnZhc0VsZW1lbnQpLHRoaXMucG0uZGlzcG9zZSgpLHRoaXMuZm0udW5zdWJzY3JpYmVTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0aGlzLmhtKSxfcyh0aGlzLmZtLmNhbnZhc0VsZW1lbnQpLHRoaXMuZm0uZGlzcG9zZSgpLG51bGwhPT10aGlzLktpJiZ0aGlzLktpLmFfKCkudSh0aGlzKSx0aGlzLktpPW51bGx9dXYoKXtyZXR1cm4gdGhpcy5sdn1rKCl7cmV0dXJuIHRoaXMua28uZm9udFNpemV9Z20oKXtjb25zdCB0PXRoaXMud2QuTigpO3JldHVybiB0aGlzLm5tIT09dC5QJiYodGhpcy5pbS5PcygpLHRoaXMubm09dC5QKSx0fWJtKCl7aWYobnVsbD09PXRoaXMuS2kpcmV0dXJuIDA7bGV0IHQ9MDtjb25zdCBpPXRoaXMuZ20oKSxzPWYodGhpcy5mbS5jYW52YXNFbGVtZW50LmdldENvbnRleHQoIjJkIix7Y29sb3JTcGFjZTp0aGlzLnl0LmFtKCkuTigpLmxheW91dC5jb2xvclNwYWNlfSkpO3Muc2F2ZSgpO2NvbnN0IGU9dGhpcy5LaS5FbCgpO3MuZm9udD10aGlzLlNtKCksZS5sZW5ndGg+MCYmKHQ9TWF0aC5tYXgodGhpcy5pbS5JaShzLGVbMF0uaW8pLHRoaXMuaW0uSWkocyxlW2UubGVuZ3RoLTFdLmlvKSkpO2NvbnN0IGg9dGhpcy54bSgpO2ZvcihsZXQgaT1oLmxlbmd0aDtpLS07KXtjb25zdCBlPXRoaXMuaW0uSWkocyxoW2ldLnJpKCkpO2U+dCYmKHQ9ZSl9Y29uc3Qgbj10aGlzLktpLkx0KCk7aWYobnVsbCE9PW4mJm51bGwhPT10aGlzLlF2JiYyIT09KHI9dGhpcy55bi5jcm9zc2hhaXIpLm1vZGUmJnIuaG9yekxpbmUudmlzaWJsZSYmci5ob3J6TGluZS5sYWJlbFZpc2libGUpe2NvbnN0IGk9dGhpcy5LaS5UbigxLG4pLGU9dGhpcy5LaS5Ubih0aGlzLlF2LmhlaWdodC0yLG4pO3Q9TWF0aC5tYXgodCx0aGlzLmltLklpKHMsdGhpcy5LaS5KaShNYXRoLmZsb29yKE1hdGgubWluKGksZSkpKy4xMTExMTExMTExMTExMSxuKSksdGhpcy5pbS5JaShzLHRoaXMuS2kuSmkoTWF0aC5jZWlsKE1hdGgubWF4KGksZSkpLS4xMTExMTExMTExMTExMSxuKSkpfXZhciByO3MucmVzdG9yZSgpO2NvbnN0IG89dHx8MzQ7cmV0dXJuIGZzKE1hdGguY2VpbChpLlMraS5DK2kuVitpLkIrNStvKSl9Q20odCl7bnVsbCE9PXRoaXMuUXYmJigwLGUuZXF1YWxTaXplcykodGhpcy5Rdix0KXx8KHRoaXMuUXY9dCx0aGlzLnJtPSEwLHRoaXMuZm0ucmVzaXplQ2FudmFzRWxlbWVudCh0KSx0aGlzLnBtLnJlc2l6ZUNhbnZhc0VsZW1lbnQodCksdGhpcy5ybT0hMSx0aGlzLmx2LnN0eWxlLndpZHRoPWAke3Qud2lkdGh9cHhgLHRoaXMubHYuc3R5bGUuaGVpZ2h0PWAke3QuaGVpZ2h0fXB4YCl9eW0oKXtyZXR1cm4gZih0aGlzLlF2KS53aWR0aH0KdW4odCl7dGhpcy5LaSE9PXQmJihudWxsIT09dGhpcy5LaSYmdGhpcy5LaS5hXygpLnUodGhpcyksdGhpcy5LaT10LHQuYV8oKS5pKHRoaXMucG8uYmluZCh0aGlzKSx0aGlzKSl9RnQoKXtyZXR1cm4gdGhpcy5LaX1Pcygpe2NvbnN0IHQ9dGhpcy55dC5TdigpO3RoaXMueXQuYW0oKS5RdCgpLmV1KHQsZih0aGlzLkZ0KCkpKX1rbSh0KXtpZihudWxsPT09dGhpcy5RdilyZXR1cm47Y29uc3QgaT17Y29sb3JTcGFjZTp0aGlzLnl0LmFtKCkuTigpLmxheW91dC5jb2xvclNwYWNlfTtpZigxIT09dCl7dGhpcy5QbSgpLHRoaXMuZm0uYXBwbHlTdWdnZXN0ZWRCaXRtYXBTaXplKCk7Y29uc3QgdD0oMCxlLnRyeUNyZWF0ZUNhbnZhc1JlbmRlcmluZ1RhcmdldDJEKSh0aGlzLmZtLGkpO251bGwhPT10JiYodC51c2VCaXRtYXBDb29yZGluYXRlU3BhY2UoKHQ9Pnt0aGlzLlRtKHQpLHRoaXMuUm0odCl9KSksdGhpcy55dC5EbSh0LHRoaXMuZG0pLHRoaXMuSW0odCksdGhpcy55dC5EbSh0LHRoaXMuX20pLHRoaXMuVm0odCkpfXRoaXMucG0uYXBwbHlTdWdnZXN0ZWRCaXRtYXBTaXplKCk7Y29uc3Qgcz0oMCxlLnRyeUNyZWF0ZUNhbnZhc1JlbmRlcmluZ1RhcmdldDJEKSh0aGlzLnBtLGkpO251bGwhPT1zJiYocy51c2VCaXRtYXBDb29yZGluYXRlU3BhY2UoKCh7Y29udGV4dDp0LGJpdG1hcFNpemU6aX0pPT57dC5jbGVhclJlY3QoMCwwLGkud2lkdGgsaS5oZWlnaHQpfSkpLHRoaXMuQm0ocyksdGhpcy55dC5EbShzLHRoaXMudW0pKX1kdigpe3JldHVybiB0aGlzLmZtLmJpdG1hcFNpemV9ZnYodCxpLHMsZSl7Y29uc3QgaD10aGlzLmR2KCk7aWYoaC53aWR0aD4wJiZoLmhlaWdodD4wJiYodC5kcmF3SW1hZ2UodGhpcy5mbS5jYW52YXNFbGVtZW50LGkscyksZSkpe2NvbnN0IGU9dGhpcy5wbS5jYW52YXNFbGVtZW50O3QuZHJhd0ltYWdlKGUsaSxzKX19a3QoKXt0aGlzLktpPy5FbCgpfU12KHQpe2lmKG51bGw9PT10aGlzLktpfHx0aGlzLktpLkdpKCl8fCF0aGlzLnluLmhhbmRsZVNjYWxlLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnByaWNlKXJldHVybjtjb25zdCBpPXRoaXMueXQuYW0oKS5RdCgpLHM9dGhpcy55dC5TdigpO3RoaXMudG09ITAsaS5HXyhzLHRoaXMuS2ksdC5sb2NhbFkpfWd2KHQpe2lmKG51bGw9PT10aGlzLktpfHwhdGhpcy55bi5oYW5kbGVTY2FsZS5heGlzUHJlc3NlZE1vdXNlTW92ZS5wcmljZSlyZXR1cm47Y29uc3QgaT10aGlzLnl0LmFtKCkuUXQoKSxzPXRoaXMueXQuU3YoKSxlPXRoaXMuS2k7aS5YXyhzLGUsdC5sb2NhbFkpfXZtKCl7aWYobnVsbD09PXRoaXMuS2l8fCF0aGlzLnluLmhhbmRsZVNjYWxlLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnByaWNlKXJldHVybjtjb25zdCB0PXRoaXMueXQuYW0oKS5RdCgpLGk9dGhpcy55dC5TdigpLHM9dGhpcy5LaTt0aGlzLnRtJiYodGhpcy50bT0hMSx0LkpfKGkscykpfWJ2KHQpe2lmKG51bGw9PT10aGlzLktpfHwhdGhpcy55bi5oYW5kbGVTY2FsZS5heGlzUHJlc3NlZE1vdXNlTW92ZS5wcmljZSlyZXR1cm47Y29uc3QgaT10aGlzLnl0LmFtKCkuUXQoKSxzPXRoaXMueXQuU3YoKTt0aGlzLnRtPSExLGkuSl8ocyx0aGlzLktpKX13bSh0KXt0aGlzLnluLmhhbmRsZVNjYWxlLmF4aXNEb3VibGVDbGlja1Jlc2V0LnByaWNlJiZ0aGlzLk9zKCl9TW0odCl7bnVsbCE9PXRoaXMuS2kmJighdGhpcy55dC5hbSgpLlF0KCkuTigpLmhhbmRsZVNjYWxlLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnByaWNlfHx0aGlzLktpLmplKCl8fHRoaXMuS2kuTG8oKXx8dGhpcy5FbSgxKSl9d3YodCl7dGhpcy5FbSgwKX14bSgpe2NvbnN0IHQ9W10saT1udWxsPT09dGhpcy5LaT92b2lkIDA6dGhpcy5LaTtyZXR1cm4ocz0+e2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7KytlKXtjb25zdCBoPXNbZV0ucW4odGhpcy55dC5TdigpLGkpO2ZvcihsZXQgaT0wO2k8aC5sZW5ndGg7aSsrKXQucHVzaChoW2ldKX19KSh0aGlzLnl0LlN2KCkuRHQoKSksdH1UbSh7Y29udGV4dDp0LGJpdG1hcFNpemU6aX0pe2NvbnN0e3dpZHRoOnMsaGVpZ2h0OmV9PWksaD10aGlzLnl0LlN2KCkuUXQoKSxuPWguJCgpLHI9aC5lZigpO249PT1yP1EodCwwLDAscyxlLG4pOk8odCwwLDAscyxlLG4scil9Um0oe2NvbnRleHQ6dCxiaXRtYXBTaXplOmksaG9yaXpvbnRhbFBpeGVsUmF0aW86c30pe2lmKG51bGw9PT10aGlzLlF2fHxudWxsPT09dGhpcy5LaXx8IXRoaXMuS2kuTigpLmJvcmRlclZpc2libGUpcmV0dXJuO3QuZmlsbFN0eWxlPXRoaXMuS2kuTigpLmJvcmRlckNvbG9yO2NvbnN0IGU9TWF0aC5tYXgoMSxNYXRoLmZsb29yKHRoaXMuZ20oKS5TKnMpKTtsZXQgaDtoPXRoaXMub20/aS53aWR0aC1lOjAsdC5maWxsUmVjdChoLDAsZSxpLmhlaWdodCl9SW0odCl7aWYobnVsbD09PXRoaXMuUXZ8fG51bGw9PT10aGlzLktpKXJldHVybjtjb25zdCBpPXRoaXMuS2kuRWwoKSxzPXRoaXMuS2kuTigpLGU9dGhpcy5nbSgpLGg9dGhpcy5vbT90aGlzLlF2LndpZHRoLWUuQzowO3MuYm9yZGVyVmlzaWJsZSYmcy50aWNrc1Zpc2libGUmJnQudXNlQml0bWFwQ29vcmRpbmF0ZVNwYWNlKCgoe2NvbnRleHQ6dCxob3Jpem9udGFsUGl4ZWxSYXRpbzpuLHZlcnRpY2FsUGl4ZWxSYXRpbzpyfSk9Pnt0LmZpbGxTdHlsZT1zLmJvcmRlckNvbG9yO2NvbnN0IG89TWF0aC5tYXgoMSxNYXRoLmZsb29yKHIpKSxsPU1hdGguZmxvb3IoLjUqciksYT1NYXRoLnJvdW5kKGUuQypuKTt0LmJlZ2luUGF0aCgpO2Zvcihjb25zdCBzIG9mIGkpdC5yZWN0KE1hdGguZmxvb3IoaCpuKSxNYXRoLnJvdW5kKHMuUmwqciktbCxhLG8pO3QuZmlsbCgpfSkpLHQudXNlTWVkaWFDb29yZGluYXRlU3BhY2UoKCh7Y29udGV4dDp0fSk9Pnt0LmZvbnQ9dGhpcy5TbSgpLHQuZmlsbFN0eWxlPXMudGV4dENvbG9yPz90aGlzLmtvLnRleHRDb2xvcix0LnRleHRBbGlnbj10aGlzLm9tPyJyaWdodCI6ImxlZnQiLHQudGV4dEJhc2VsaW5lPSJtaWRkbGUiO2NvbnN0IG49dGhpcy5vbT9NYXRoLnJvdW5kKGgtZS5WKTpNYXRoLnJvdW5kKGgrZS5DK2UuVikscj1pLm1hcCgoaT0+dGhpcy5pbS5EaSh0LGkuaW8pKSkKO2ZvcihsZXQgcz1pLmxlbmd0aDtzLS07KXtjb25zdCBlPWlbc107dC5maWxsVGV4dChlLmlvLG4sZS5SbCtyW3NdKX19KSl9UG0oKXtpZihudWxsPT09dGhpcy5Rdnx8bnVsbD09PXRoaXMuS2kpcmV0dXJuO2xldCB0PXRoaXMuUXYuaGVpZ2h0LzI7Y29uc3QgaT1bXSxzPXRoaXMuS2kuRHQoKS5zbGljZSgpLGU9dGhpcy55dC5TdigpLGg9dGhpcy5nbSgpO3RoaXMuS2k9PT1lLkdzKCkmJnRoaXMueXQuU3YoKS5EdCgpLmZvckVhY2goKHQ9PntlLlpzKHQpJiZzLnB1c2godCl9KSk7Y29uc3Qgbj10aGlzLktpLkNsKClbMF0scj10aGlzLktpO3MuZm9yRWFjaCgocz0+e2NvbnN0IGg9cy5xbihlLHIpO2guZm9yRWFjaCgodD0+e3QuJGkoKSYmbnVsbD09PXQuV2koKSYmKHQuVWkobnVsbCksaS5wdXNoKHQpKX0pKSxuPT09cyYmaC5sZW5ndGg+MCYmKHQ9aFswXS5FaSgpKX0pKSx0aGlzLktpLk4oKS5hbGlnbkxhYmVscyYmdGhpcy5BbShpLGgsdCl9QW0odCxpLHMpe2lmKG51bGw9PT10aGlzLlF2KXJldHVybjtjb25zdCBlPXQuZmlsdGVyKCh0PT50LkVpKCk8PXMpKSxoPXQuZmlsdGVyKCh0PT50LkVpKCk+cykpO2Uuc29ydCgoKHQsaSk9PmkuRWkoKS10LkVpKCkpKSxlLmxlbmd0aCYmaC5sZW5ndGgmJmgucHVzaChlWzBdKSxoLnNvcnQoKCh0LGkpPT50LkVpKCktaS5FaSgpKSk7Zm9yKGNvbnN0IHMgb2YgdCl7Y29uc3QgdD1NYXRoLmZsb29yKHMuJHQoaSkvMiksZT1zLkVpKCk7ZT4tdCYmZTx0JiZzLlVpKHQpLGU+dGhpcy5Rdi5oZWlnaHQtdCYmZTx0aGlzLlF2LmhlaWdodCt0JiZzLlVpKHRoaXMuUXYuaGVpZ2h0LXQpfXpzKGUsMSx0aGlzLlF2LmhlaWdodCxpKSx6cyhoLC0xLHRoaXMuUXYuaGVpZ2h0LGkpfVZtKHQpe2lmKG51bGw9PT10aGlzLlF2KXJldHVybjtjb25zdCBpPXRoaXMueG0oKSxzPXRoaXMuZ20oKSxlPXRoaXMub20/InJpZ2h0IjoibGVmdCI7aS5mb3JFYWNoKChpPT57aS5qaSgpJiZpLlR0KGYodGhpcy5LaSkpLnN0KHQscyx0aGlzLmltLGUpfSkpfUJtKHQpe2lmKG51bGw9PT10aGlzLlF2fHxudWxsPT09dGhpcy5LaSlyZXR1cm47Y29uc3QgaT10aGlzLnl0LmFtKCkuUXQoKSxzPVtdLGU9dGhpcy55dC5TdigpLGg9aS5SZCgpLnFuKGUsdGhpcy5LaSk7aC5sZW5ndGgmJnMucHVzaChoKTtjb25zdCBuPXRoaXMuZ20oKSxyPXRoaXMub20/InJpZ2h0IjoibGVmdCI7cy5mb3JFYWNoKChpPT57aS5mb3JFYWNoKChpPT57aS5UdChmKHRoaXMuS2kpKS5zdCh0LG4sdGhpcy5pbSxyKX0pKX0pKX1FbSh0KXt0aGlzLmx2LnN0eWxlLmN1cnNvcj0xPT09dD8ibnMtcmVzaXplIjoiZGVmYXVsdCJ9cG8oKXtjb25zdCB0PXRoaXMuYm0oKTt0aGlzLnNtPHQmJnRoaXMueXQuYW0oKS5RdCgpLlBhKCksdGhpcy5zbT10fVNtKCl7cmV0dXJuIEModGhpcy5rby5mb250U2l6ZSx0aGlzLmtvLmZvbnRGYW1pbHkpfX1mdW5jdGlvbiBQcyh0LGkpe3JldHVybiB0LkthPy4oaSk/P1tdfWZ1bmN0aW9uIFJzKHQsaSl7cmV0dXJuIHQuam4/LihpKT8/W119ZnVuY3Rpb24gTHModCxpKXtyZXR1cm4gdC5jbj8uKGkpPz9bXX1mdW5jdGlvbiBGcyh0LGkpe3JldHVybiB0LmphPy4oaSk/P1tdfWNsYXNzIHFze2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5Rdj1lLnNpemUoe3dpZHRoOjAsaGVpZ2h0OjB9KSx0aGlzLkxtPW51bGwsdGhpcy56bT1udWxsLHRoaXMuT209bnVsbCx0aGlzLk5tPW51bGwsdGhpcy5GbT0hMSx0aGlzLldtPW5ldyBtLHRoaXMuSG09bmV3IG0sdGhpcy5VbT0wLHRoaXMuJG09ITEsdGhpcy5qbT1udWxsLHRoaXMucW09ITEsdGhpcy5ZbT1udWxsLHRoaXMuS209bnVsbCx0aGlzLnJtPSExLHRoaXMuaG09KCk9Pnt0aGlzLnJtfHxudWxsPT09dGhpcy5abXx8dGhpcy5zbigpLm1yKCl9LHRoaXMubG09KCk9Pnt0aGlzLnJtfHxudWxsPT09dGhpcy5abXx8dGhpcy5zbigpLm1yKCl9LHRoaXMucXY9dCx0aGlzLlptPWksdGhpcy5abS5mdSgpLmkodGhpcy5HbS5iaW5kKHRoaXMpLHRoaXMsITApLHRoaXMuWG09ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKSx0aGlzLlhtLnN0eWxlLnBhZGRpbmc9IjAiLHRoaXMuWG0uc3R5bGUucG9zaXRpb249InJlbGF0aXZlIjtjb25zdCBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3Muc3R5bGUud2lkdGg9IjEwMCUiLHMuc3R5bGUuaGVpZ2h0PSIxMDAlIixzLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIscy5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIix0aGlzLkptPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIiksdGhpcy5KbS5zdHlsZS5wYWRkaW5nPSIwIix0aGlzLlFtPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIiksdGhpcy5RbS5zdHlsZS5wYWRkaW5nPSIwIix0aGlzLlhtLmFwcGVuZENoaWxkKHMpLHRoaXMuZm09Q3MocyxlLnNpemUoe3dpZHRoOjE2LGhlaWdodDoxNn0pKSx0aGlzLmZtLnN1YnNjcmliZVN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkKHRoaXMuaG0pO2NvbnN0IGg9dGhpcy5mbS5jYW52YXNFbGVtZW50O2guc3R5bGUucG9zaXRpb249ImFic29sdXRlIixoLnN0eWxlLnpJbmRleD0iMSIsaC5zdHlsZS5sZWZ0PSIwIixoLnN0eWxlLnRvcD0iMCIsdGhpcy5wbT1DcyhzLGUuc2l6ZSh7d2lkdGg6MTYsaGVpZ2h0OjE2fSkpLHRoaXMucG0uc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQodGhpcy5sbSk7Y29uc3Qgbj10aGlzLnBtLmNhbnZhc0VsZW1lbnQ7bi5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLG4uc3R5bGUuekluZGV4PSIyIixuLnN0eWxlLmxlZnQ9IjAiLG4uc3R5bGUudG9wPSIwIix0aGlzLmF2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRyIiksdGhpcy5hdi5hcHBlbmRDaGlsZCh0aGlzLkptKSx0aGlzLmF2LmFwcGVuZENoaWxkKHRoaXMuWG0pLHRoaXMuYXYuYXBwZW5kQ2hpbGQodGhpcy5RbSksdGhpcy50dygpLHRoaXMudHY9bmV3IGRzKHRoaXMucG0uY2FudmFzRWxlbWVudCx0aGlzLHt4cDooKT0+bnVsbD09PXRoaXMuam0mJiF0aGlzLnF2Lk4oKS5oYW5kbGVTY3JvbGwudmVydFRvdWNoRHJhZywKQ3A6KCk9Pm51bGw9PT10aGlzLmptJiYhdGhpcy5xdi5OKCkuaGFuZGxlU2Nyb2xsLmhvcnpUb3VjaERyYWd9KX1tKCl7bnVsbCE9PXRoaXMuTG0mJnRoaXMuTG0ubSgpLG51bGwhPT10aGlzLnptJiZ0aGlzLnptLm0oKSx0aGlzLk9tPW51bGwsdGhpcy5wbS51bnN1YnNjcmliZVN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkKHRoaXMubG0pLF9zKHRoaXMucG0uY2FudmFzRWxlbWVudCksdGhpcy5wbS5kaXNwb3NlKCksdGhpcy5mbS51bnN1YnNjcmliZVN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkKHRoaXMuaG0pLF9zKHRoaXMuZm0uY2FudmFzRWxlbWVudCksdGhpcy5mbS5kaXNwb3NlKCksbnVsbCE9PXRoaXMuWm0mJih0aGlzLlptLmZ1KCkudSh0aGlzKSx0aGlzLlptLm0oKSksdGhpcy50di5tKCl9U3YoKXtyZXR1cm4gZih0aGlzLlptKX1pdyh0KXtudWxsIT09dGhpcy5abSYmdGhpcy5abS5mdSgpLnUodGhpcyksdGhpcy5abT10LG51bGwhPT10aGlzLlptJiZ0aGlzLlptLmZ1KCkuaShxcy5wcm90b3R5cGUuR20uYmluZCh0aGlzKSx0aGlzLCEwKSx0aGlzLnR3KCksdGhpcy5xdi5ydigpLmluZGV4T2YodGhpcyk9PT10aGlzLnF2LnJ2KCkubGVuZ3RoLTE/KHRoaXMuT209dGhpcy5PbT8/bmV3IFNzKHRoaXMuWG0sdGhpcy5xdiksdGhpcy5PbS5rdCgpKToodGhpcy5PbT8uS3YoKSx0aGlzLk9tPW51bGwpfWFtKCl7cmV0dXJuIHRoaXMucXZ9dXYoKXtyZXR1cm4gdGhpcy5hdn10dygpe2lmKG51bGwhPT10aGlzLlptJiYodGhpcy5udygpLDAhPT10aGlzLnNuKCkuSm4oKS5sZW5ndGgpKXtpZihudWxsIT09dGhpcy5MbSl7Y29uc3QgdD10aGlzLlptLktfKCk7dGhpcy5MbS51bihmKHQpKX1pZihudWxsIT09dGhpcy56bSl7Y29uc3QgdD10aGlzLlptLlpfKCk7dGhpcy56bS51bihmKHQpKX19fXN3KCl7bnVsbCE9PXRoaXMuTG0mJnRoaXMuTG0ua3QoKSxudWxsIT09dGhpcy56bSYmdGhpcy56bS5rdCgpfXpfKCl7cmV0dXJuIG51bGwhPT10aGlzLlptP3RoaXMuWm0uel8oKTowfU9fKHQpe3RoaXMuWm0mJnRoaXMuWm0uT18odCl9d3AodCl7aWYoIXRoaXMuWm0pcmV0dXJuO3RoaXMuZXcoKTtjb25zdCBpPXQubG9jYWxYLHM9dC5sb2NhbFk7dGhpcy5ydyhpLHMsdCl9enAodCl7dGhpcy5ldygpLHRoaXMuaHcoKSx0aGlzLnJ3KHQubG9jYWxYLHQubG9jYWxZLHQpfU1wKHQpe2lmKCF0aGlzLlptKXJldHVybjt0aGlzLmV3KCk7Y29uc3QgaT10LmxvY2FsWCxzPXQubG9jYWxZO3RoaXMucncoaSxzLHQpfVZwKHQpe251bGwhPT10aGlzLlptJiYodGhpcy5ldygpLHRoaXMucncodC5sb2NhbFgsdC5sb2NhbFksdCksdGhpcy5hdyh0KSl9dXAodCl7bnVsbCE9PXRoaXMuWm0mJnRoaXMubHcodGhpcy5IbSx0KX1hcCh0KXt0aGlzLnVwKHQpfVBwKHQpe3RoaXMuZXcoKSx0aGlzLm93KHQpLHRoaXMucncodC5sb2NhbFgsdC5sb2NhbFksdCl9SXAodCl7bnVsbCE9PXRoaXMuWm0mJih0aGlzLmV3KCksdGhpcy4kbT0hMSx0aGlzLl93KHQpKX1EcCh0KXtudWxsIT09dGhpcy5abSYmdGhpcy5hdyh0KX1LcCh0KXtpZih0aGlzLiRtPSEwLG51bGw9PT10aGlzLmptKXtjb25zdCBpPXt4OnQubG9jYWxYLHk6dC5sb2NhbFl9O3RoaXMudXcoaSxpLHQpfX1ZcCh0KXtudWxsIT09dGhpcy5abSYmKHRoaXMuZXcoKSx0aGlzLlptLlF0KCkua2QobnVsbCksdGhpcy5jdygpKX1kdygpe3JldHVybiB0aGlzLldtfWZ3KCl7cmV0dXJuIHRoaXMuSG19V3AoKXt0aGlzLlVtPTEsdGhpcy5zbigpLmNzKCl9SHAodCxpKXtpZighdGhpcy5xdi5OKCkuaGFuZGxlU2NhbGUucGluY2gpcmV0dXJuO2NvbnN0IHM9NSooaS10aGlzLlVtKTt0aGlzLlVtPWksdGhpcy5zbigpLk9kKHQuX3Qscyl9QXAodCl7dGhpcy4kbT0hMSx0aGlzLnFtPW51bGwhPT10aGlzLmptLHRoaXMuaHcoKTtjb25zdCBpPXRoaXMuc24oKS5SZCgpO251bGwhPT10aGlzLmptJiZpLkl0KCkmJih0aGlzLlltPXt4OmkubmkoKSx5Omkuc2koKX0sdGhpcy5qbT17eDp0LmxvY2FsWCx5OnQubG9jYWxZfSl9eXAodCl7aWYobnVsbD09PXRoaXMuWm0pcmV0dXJuO2NvbnN0IGk9dC5sb2NhbFgscz10LmxvY2FsWTtpZihudWxsPT09dGhpcy5qbSl0aGlzLm93KHQpO2Vsc2V7dGhpcy5xbT0hMTtjb25zdCBlPWYodGhpcy5ZbSksaD1lLngrKGktdGhpcy5qbS54KSxuPWUueSsocy10aGlzLmptLnkpO3RoaXMucncoaCxuLHQpfX1ScCh0KXswPT09dGhpcy5hbSgpLk4oKS50cmFja2luZ01vZGUuZXhpdE1vZGUmJih0aGlzLnFtPSEwKSx0aGlzLnB3KCksdGhpcy5fdyh0KX1Rcyh0LGkpe2NvbnN0IHM9dGhpcy5abTtyZXR1cm4gbnVsbD09PXM/bnVsbDpJaShzLHQsaSl9bXcodCxpKXtmKCJsZWZ0Ij09PWk/dGhpcy5MbTp0aGlzLnptKS5DbShlLnNpemUoe3dpZHRoOnQsaGVpZ2h0OnRoaXMuUXYuaGVpZ2h0fSkpfWN2KCl7cmV0dXJuIHRoaXMuUXZ9Q20odCl7KDAsZS5lcXVhbFNpemVzKSh0aGlzLlF2LHQpfHwodGhpcy5Rdj10LHRoaXMucm09ITAsdGhpcy5mbS5yZXNpemVDYW52YXNFbGVtZW50KHQpLHRoaXMucG0ucmVzaXplQ2FudmFzRWxlbWVudCh0KSx0aGlzLnJtPSExLHRoaXMuWG0uc3R5bGUud2lkdGg9dC53aWR0aCsicHgiLHRoaXMuWG0uc3R5bGUuaGVpZ2h0PXQuaGVpZ2h0KyJweCIpfXd3KCl7Y29uc3QgdD1mKHRoaXMuWm0pO3QucV8odC5LXygpKSx0LnFfKHQuWl8oKSk7Zm9yKGNvbnN0IGkgb2YgdC5DbCgpKWlmKHQuWnMoaSkpe2NvbnN0IHM9aS5GdCgpO251bGwhPT1zJiZ0LnFfKHMpLGkuTm4oKX1mb3IoY29uc3QgaSBvZiB0LnZ1KCkpaS5ObigpfWR2KCl7cmV0dXJuIHRoaXMuZm0uYml0bWFwU2l6ZX1mdih0LGkscyxlKXtjb25zdCBoPXRoaXMuZHYoKTtpZihoLndpZHRoPjAmJmguaGVpZ2h0PjAmJih0LmRyYXdJbWFnZSh0aGlzLmZtLmNhbnZhc0VsZW1lbnQsaSxzKSxlKSl7Y29uc3QgZT10aGlzLnBtLmNhbnZhc0VsZW1lbnQ7bnVsbCE9PXQmJnQuZHJhd0ltYWdlKGUsaSxzKX19a20odCl7aWYoMD09PXQpcmV0dXJuO2lmKG51bGw9PT10aGlzLlptKXJldHVybjt0PjEmJnRoaXMud3coKSxudWxsIT09dGhpcy5MbSYmdGhpcy5MbS5rbSh0KSwKbnVsbCE9PXRoaXMuem0mJnRoaXMuem0ua20odCk7Y29uc3QgaT17Y29sb3JTcGFjZTp0aGlzLnF2Lk4oKS5sYXlvdXQuY29sb3JTcGFjZX07aWYoMSE9PXQpe3RoaXMuZm0uYXBwbHlTdWdnZXN0ZWRCaXRtYXBTaXplKCk7Y29uc3QgdD0oMCxlLnRyeUNyZWF0ZUNhbnZhc1JlbmRlcmluZ1RhcmdldDJEKSh0aGlzLmZtLGkpO251bGwhPT10JiYodC51c2VCaXRtYXBDb29yZGluYXRlU3BhY2UoKHQ9Pnt0aGlzLlRtKHQpfSkpLHRoaXMuWm0mJih0aGlzLk13KHQsUHMpLHRoaXMuZ3codCksdGhpcy5Ndyh0LFJzKSx0aGlzLk13KHQsTHMpKSl9dGhpcy5wbS5hcHBseVN1Z2dlc3RlZEJpdG1hcFNpemUoKTtjb25zdCBzPSgwLGUudHJ5Q3JlYXRlQ2FudmFzUmVuZGVyaW5nVGFyZ2V0MkQpKHRoaXMucG0saSk7bnVsbCE9PXMmJihzLnVzZUJpdG1hcENvb3JkaW5hdGVTcGFjZSgoKHtjb250ZXh0OnQsYml0bWFwU2l6ZTppfSk9Pnt0LmNsZWFyUmVjdCgwLDAsaS53aWR0aCxpLmhlaWdodCl9KSksdGhpcy5idyhzKSx0aGlzLk13KHMsRnMpLHRoaXMuTXcocyxMcykpfVN3KCl7cmV0dXJuIHRoaXMuTG19eHcoKXtyZXR1cm4gdGhpcy56bX1EbSh0LGkpe3RoaXMuTXcodCxpKX1HbSgpe251bGwhPT10aGlzLlptJiZ0aGlzLlptLmZ1KCkudSh0aGlzKSx0aGlzLlptPW51bGx9YXcodCl7dGhpcy5sdyh0aGlzLldtLHQpfWx3KHQsaSl7Y29uc3Qgcz1pLmxvY2FsWCxlPWkubG9jYWxZO3QudigpJiZ0LnAodGhpcy5zbigpLkV0KCkuUmMocykse3g6cyx5OmV9LGkpfVRtKHtjb250ZXh0OnQsYml0bWFwU2l6ZTppfSl7Y29uc3R7d2lkdGg6cyxoZWlnaHQ6ZX09aSxoPXRoaXMuc24oKSxuPWguJCgpLHI9aC5lZigpO249PT1yP1EodCwwLDAscyxlLHIpOk8odCwwLDAscyxlLG4scil9Z3codCl7Y29uc3QgaT1mKHRoaXMuWm0pLHM9aS5wdSgpLndyKCkuVHQoaSk7bnVsbCE9PXMmJnMuc3QodCwhMSl9YncodCl7dGhpcy5Ddyh0LFJzLEVzLHRoaXMuc24oKS5SZCgpKX1Ndyh0LGkpe2NvbnN0IHM9Zih0aGlzLlptKSxlPXMuYXUoKSxoPXMudnUoKTtmb3IoY29uc3QgcyBvZiBoKXRoaXMuQ3codCxpLGtzLHMpO2Zvcihjb25zdCBzIG9mIGUpdGhpcy5Ddyh0LGksa3Mscyk7Zm9yKGNvbnN0IHMgb2YgaCl0aGlzLkN3KHQsaSxFcyxzKTtmb3IoY29uc3QgcyBvZiBlKXRoaXMuQ3codCxpLEVzLHMpfUN3KHQsaSxzLGUpe2NvbnN0IGg9Zih0aGlzLlptKSxuPWguUXQoKS5vdSgpLHI9bnVsbCE9PW4mJm4ubHU9PT1lLG89bnVsbCE9PW4mJnImJnZvaWQgMCE9PW4ud3U/bi53dS5pZTp2b2lkIDA7TnMoaSwoaT0+cyhpLHQscixvKSksZSxoKX1udygpe2lmKG51bGw9PT10aGlzLlptKXJldHVybjtjb25zdCB0PXRoaXMucXYsaT10aGlzLlptLktfKCkuTigpLnZpc2libGUscz10aGlzLlptLlpfKCkuTigpLnZpc2libGU7aXx8bnVsbD09PXRoaXMuTG18fCh0aGlzLkptLnJlbW92ZUNoaWxkKHRoaXMuTG0udXYoKSksdGhpcy5MbS5tKCksdGhpcy5MbT1udWxsKSxzfHxudWxsPT09dGhpcy56bXx8KHRoaXMuUW0ucmVtb3ZlQ2hpbGQodGhpcy56bS51digpKSx0aGlzLnptLm0oKSx0aGlzLnptPW51bGwpO2NvbnN0IGU9dC5RdCgpLlpkKCk7aSYmbnVsbD09PXRoaXMuTG0mJih0aGlzLkxtPW5ldyBJcyh0aGlzLHQuTigpLGUsImxlZnQiKSx0aGlzLkptLmFwcGVuZENoaWxkKHRoaXMuTG0udXYoKSkpLHMmJm51bGw9PT10aGlzLnptJiYodGhpcy56bT1uZXcgSXModGhpcyx0Lk4oKSxlLCJyaWdodCIpLHRoaXMuUW0uYXBwZW5kQ2hpbGQodGhpcy56bS51digpKSl9eXcodCl7cmV0dXJuIHQuWnAmJnRoaXMuJG18fG51bGwhPT10aGlzLmptfXJ3KHQsaSxzKXt0PU1hdGgubWF4KDAsTWF0aC5taW4odCx0aGlzLlF2LndpZHRoLTEpKSxpPU1hdGgubWF4KDAsTWF0aC5taW4oaSx0aGlzLlF2LmhlaWdodC0xKSksdGhpcy5zbigpLmpkKHQsaSxzLGYodGhpcy5abSkpfWN3KCl7dGhpcy5zbigpLllkKCl9cHcoKXt0aGlzLnFtJiYodGhpcy5qbT1udWxsLHRoaXMuY3coKSl9dXcodCxpLHMpe3RoaXMuam09dCx0aGlzLnFtPSExLHRoaXMucncoaS54LGkueSxzKTtjb25zdCBlPXRoaXMuc24oKS5SZCgpO3RoaXMuWW09e3g6ZS5uaSgpLHk6ZS5zaSgpfX1zbigpe3JldHVybiB0aGlzLnF2LlF0KCl9X3codCl7aWYoIXRoaXMuRm0pcmV0dXJuO2NvbnN0IGk9dGhpcy5zbigpLHM9dGhpcy5TdigpO2lmKGkuaXUocyxzLlBuKCkpLHRoaXMuTm09bnVsbCx0aGlzLkZtPSExLGkuSGQoKSxudWxsIT09dGhpcy5LbSl7Y29uc3QgdD1wZXJmb3JtYW5jZS5ub3coKSxzPWkuRXQoKTt0aGlzLkttLm1lKHMuQWMoKSx0KSx0aGlzLkttLmpjKHQpfHxpLnBzKHRoaXMuS20pfX1ldygpe3RoaXMuam09bnVsbH1odygpe2lmKHRoaXMuWm0pe2lmKHRoaXMuc24oKS5jcygpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1kb2N1bWVudC5ib2R5JiZkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KWYoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkuYmx1cigpO2Vsc2V7Y29uc3QgdD1kb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtudWxsIT09dCYmdC5yZW1vdmVBbGxSYW5nZXMoKX0hdGhpcy5abS5QbigpLkdpKCkmJnRoaXMuc24oKS5FdCgpLkdpKCl9fW93KHQpe2lmKG51bGw9PT10aGlzLlptKXJldHVybjtjb25zdCBpPXRoaXMuc24oKSxzPWkuRXQoKTtpZihzLkdpKCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5xdi5OKCksaD1lLmhhbmRsZVNjcm9sbCxuPWUua2luZXRpY1Njcm9sbDtpZigoIWgucHJlc3NlZE1vdXNlTW92ZXx8dC5acCkmJighaC5ob3J6VG91Y2hEcmFnJiYhaC52ZXJ0VG91Y2hEcmFnfHwhdC5acCkpcmV0dXJuO2NvbnN0IHI9dGhpcy5abS5QbigpLG89cGVyZm9ybWFuY2Uubm93KCk7aWYobnVsbCE9PXRoaXMuTm18fHRoaXMueXcodCl8fCh0aGlzLk5tPXt4OnQuY2xpZW50WCx5OnQuY2xpZW50WSxTZjpvLGt3OnQubG9jYWxYLFB3OnQubG9jYWxZfSksbnVsbCE9PXRoaXMuTm0mJiF0aGlzLkZtJiYodGhpcy5ObS54IT09dC5jbGllbnRYfHx0aGlzLk5tLnkhPT10LmNsaWVudFkpKXsKaWYodC5acCYmbi50b3VjaHx8IXQuWnAmJm4ubW91c2Upe2NvbnN0IHQ9cy5mbCgpO3RoaXMuS209bmV3IHhzKC4yL3QsNy90LC45OTcsMTUvdCksdGhpcy5LbS5GdihzLkFjKCksdGhpcy5ObS5TZil9ZWxzZSB0aGlzLkttPW51bGw7ci5HaSgpfHxpLlFfKHRoaXMuWm0scix0LmxvY2FsWSksaS5GZCh0LmxvY2FsWCksdGhpcy5GbT0hMH10aGlzLkZtJiYoci5HaSgpfHxpLnR1KHRoaXMuWm0scix0LmxvY2FsWSksaS5XZCh0LmxvY2FsWCksbnVsbCE9PXRoaXMuS20mJnRoaXMuS20uRnYocy5BYygpLG8pKX19Y2xhc3MgV3N7Y29uc3RydWN0b3IodCxpLHMsaCxuKXt0aGlzLnh0PSEwLHRoaXMuUXY9ZS5zaXplKHt3aWR0aDowLGhlaWdodDowfSksdGhpcy5obT0oKT0+dGhpcy5rbSgzKSx0aGlzLm9tPSJsZWZ0Ij09PXQsdGhpcy53ZD1zLlpkLHRoaXMueW49aSx0aGlzLlR3PWgsdGhpcy5Sdz1uLHRoaXMubHY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5sdi5zdHlsZS53aWR0aD0iMjVweCIsdGhpcy5sdi5zdHlsZS5oZWlnaHQ9IjEwMCUiLHRoaXMubHYuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIsdGhpcy5mbT1Dcyh0aGlzLmx2LGUuc2l6ZSh7d2lkdGg6MTYsaGVpZ2h0OjE2fSkpLHRoaXMuZm0uc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQodGhpcy5obSl9bSgpe3RoaXMuZm0udW5zdWJzY3JpYmVTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0aGlzLmhtKSxfcyh0aGlzLmZtLmNhbnZhc0VsZW1lbnQpLHRoaXMuZm0uZGlzcG9zZSgpfXV2KCl7cmV0dXJuIHRoaXMubHZ9Y3YoKXtyZXR1cm4gdGhpcy5Rdn1DbSh0KXsoMCxlLmVxdWFsU2l6ZXMpKHRoaXMuUXYsdCl8fCh0aGlzLlF2PXQsdGhpcy5mbS5yZXNpemVDYW52YXNFbGVtZW50KHQpLHRoaXMubHYuc3R5bGUud2lkdGg9YCR7dC53aWR0aH1weGAsdGhpcy5sdi5zdHlsZS5oZWlnaHQ9YCR7dC5oZWlnaHR9cHhgLHRoaXMueHQ9ITApfWttKHQpe2lmKHQ8MyYmIXRoaXMueHQpcmV0dXJuO2lmKDA9PT10aGlzLlF2LndpZHRofHwwPT09dGhpcy5Rdi5oZWlnaHQpcmV0dXJuO3RoaXMueHQ9ITEsdGhpcy5mbS5hcHBseVN1Z2dlc3RlZEJpdG1hcFNpemUoKTtjb25zdCBpPSgwLGUudHJ5Q3JlYXRlQ2FudmFzUmVuZGVyaW5nVGFyZ2V0MkQpKHRoaXMuZm0se2NvbG9yU3BhY2U6dGhpcy55bi5sYXlvdXQuY29sb3JTcGFjZX0pO251bGwhPT1pJiZpLnVzZUJpdG1hcENvb3JkaW5hdGVTcGFjZSgodD0+e3RoaXMuVG0odCksdGhpcy5SbSh0KX0pKX1kdigpe3JldHVybiB0aGlzLmZtLmJpdG1hcFNpemV9ZnYodCxpLHMpe2NvbnN0IGU9dGhpcy5kdigpO2Uud2lkdGg+MCYmZS5oZWlnaHQ+MCYmdC5kcmF3SW1hZ2UodGhpcy5mbS5jYW52YXNFbGVtZW50LGkscyl9Um0oe2NvbnRleHQ6dCxiaXRtYXBTaXplOmksaG9yaXpvbnRhbFBpeGVsUmF0aW86cyx2ZXJ0aWNhbFBpeGVsUmF0aW86ZX0pe2lmKCF0aGlzLlR3KCkpcmV0dXJuO3QuZmlsbFN0eWxlPXRoaXMueW4udGltZVNjYWxlLmJvcmRlckNvbG9yO2NvbnN0IGg9TWF0aC5mbG9vcih0aGlzLndkLk4oKS5TKnMpLG49TWF0aC5mbG9vcih0aGlzLndkLk4oKS5TKmUpLHI9dGhpcy5vbT9pLndpZHRoLWg6MDt0LmZpbGxSZWN0KHIsMCxoLG4pfVRtKHtjb250ZXh0OnQsYml0bWFwU2l6ZTppfSl7USh0LDAsMCxpLndpZHRoLGkuaGVpZ2h0LHRoaXMuUncoKSl9fWZ1bmN0aW9uIFFzKHQpe3JldHVybiBpPT5pLlhhPy4odCk/P1tdfWNvbnN0IERzPVFzKCJub3JtYWwiKSxLcz1RcygidG9wIiksT3M9UXMoImJvdHRvbSIpO2NsYXNzIFZze2NvbnN0cnVjdG9yKHQsaSl7dGhpcy5Edz1udWxsLHRoaXMuSXc9bnVsbCx0aGlzLk09bnVsbCx0aGlzLlZ3PSExLHRoaXMuUXY9ZS5zaXplKHt3aWR0aDowLGhlaWdodDowfSksdGhpcy5Cdz1uZXcgbSx0aGlzLmltPW5ldyBudCg1KSx0aGlzLnJtPSExLHRoaXMuaG09KCk9Pnt0aGlzLnJtfHx0aGlzLnF2LlF0KCkubXIoKX0sdGhpcy5sbT0oKT0+e3RoaXMucm18fHRoaXMucXYuUXQoKS5tcigpfSx0aGlzLnF2PXQsdGhpcy54dT1pLHRoaXMueW49dC5OKCkubGF5b3V0LHRoaXMuSHY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidHIiKSx0aGlzLkV3PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIiksdGhpcy5Fdy5zdHlsZS5wYWRkaW5nPSIwIix0aGlzLkF3PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIiksdGhpcy5Bdy5zdHlsZS5wYWRkaW5nPSIwIix0aGlzLmx2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIiksdGhpcy5sdi5zdHlsZS5oZWlnaHQ9IjI1cHgiLHRoaXMubHYuc3R5bGUucGFkZGluZz0iMCIsdGhpcy5Mdz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLkx3LnN0eWxlLndpZHRoPSIxMDAlIix0aGlzLkx3LnN0eWxlLmhlaWdodD0iMTAwJSIsdGhpcy5Mdy5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiLHRoaXMuTHcuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIsdGhpcy5sdi5hcHBlbmRDaGlsZCh0aGlzLkx3KSx0aGlzLmZtPUNzKHRoaXMuTHcsZS5zaXplKHt3aWR0aDoxNixoZWlnaHQ6MTZ9KSksdGhpcy5mbS5zdWJzY3JpYmVTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0aGlzLmhtKTtjb25zdCBzPXRoaXMuZm0uY2FudmFzRWxlbWVudDtzLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIscy5zdHlsZS56SW5kZXg9IjEiLHMuc3R5bGUubGVmdD0iMCIscy5zdHlsZS50b3A9IjAiLHRoaXMucG09Q3ModGhpcy5MdyxlLnNpemUoe3dpZHRoOjE2LGhlaWdodDoxNn0pKSx0aGlzLnBtLnN1YnNjcmliZVN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkKHRoaXMubG0pO2NvbnN0IGg9dGhpcy5wbS5jYW52YXNFbGVtZW50O2guc3R5bGUucG9zaXRpb249ImFic29sdXRlIixoLnN0eWxlLnpJbmRleD0iMiIsaC5zdHlsZS5sZWZ0PSIwIixoLnN0eWxlLnRvcD0iMCIsdGhpcy5Idi5hcHBlbmRDaGlsZCh0aGlzLkV3KSx0aGlzLkh2LmFwcGVuZENoaWxkKHRoaXMubHYpLHRoaXMuSHYuYXBwZW5kQ2hpbGQodGhpcy5BdyksdGhpcy56dygpLAp0aGlzLnF2LlF0KCkuTF8oKS5pKHRoaXMuencuYmluZCh0aGlzKSx0aGlzKSx0aGlzLnR2PW5ldyBkcyh0aGlzLnBtLmNhbnZhc0VsZW1lbnQsdGhpcyx7eHA6KCk9PiEwLENwOigpPT4hdGhpcy5xdi5OKCkuaGFuZGxlU2Nyb2xsLmhvcnpUb3VjaERyYWd9KX1tKCl7dGhpcy50di5tKCksbnVsbCE9PXRoaXMuRHcmJnRoaXMuRHcubSgpLG51bGwhPT10aGlzLkl3JiZ0aGlzLkl3Lm0oKSx0aGlzLnBtLnVuc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQodGhpcy5sbSksX3ModGhpcy5wbS5jYW52YXNFbGVtZW50KSx0aGlzLnBtLmRpc3Bvc2UoKSx0aGlzLmZtLnVuc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQodGhpcy5obSksX3ModGhpcy5mbS5jYW52YXNFbGVtZW50KSx0aGlzLmZtLmRpc3Bvc2UoKX11digpe3JldHVybiB0aGlzLkh2fU93KCl7cmV0dXJuIHRoaXMuRHd9TncoKXtyZXR1cm4gdGhpcy5Jd316cCh0KXtpZih0aGlzLlZ3KXJldHVybjt0aGlzLlZ3PSEwO2NvbnN0IGk9dGhpcy5xdi5RdCgpOyFpLkV0KCkuR2koKSYmdGhpcy5xdi5OKCkuaGFuZGxlU2NhbGUuYXhpc1ByZXNzZWRNb3VzZU1vdmUudGltZSYmaS56ZCh0LmxvY2FsWCl9QXAodCl7dGhpcy56cCh0KX1PcCgpe2NvbnN0IHQ9dGhpcy5xdi5RdCgpOyF0LkV0KCkuR2koKSYmdGhpcy5WdyYmKHRoaXMuVnc9ITEsdGhpcy5xdi5OKCkuaGFuZGxlU2NhbGUuYXhpc1ByZXNzZWRNb3VzZU1vdmUudGltZSYmdC4kZCgpKX1QcCh0KXtjb25zdCBpPXRoaXMucXYuUXQoKTshaS5FdCgpLkdpKCkmJnRoaXMucXYuTigpLmhhbmRsZVNjYWxlLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnRpbWUmJmkuVWQodC5sb2NhbFgpfXlwKHQpe3RoaXMuUHAodCl9SXAoKXt0aGlzLlZ3PSExO2NvbnN0IHQ9dGhpcy5xdi5RdCgpO3QuRXQoKS5HaSgpJiYhdGhpcy5xdi5OKCkuaGFuZGxlU2NhbGUuYXhpc1ByZXNzZWRNb3VzZU1vdmUudGltZXx8dC4kZCgpfVJwKCl7dGhpcy5JcCgpfXVwKCl7dGhpcy5xdi5OKCkuaGFuZGxlU2NhbGUuYXhpc0RvdWJsZUNsaWNrUmVzZXQudGltZSYmdGhpcy5xdi5RdCgpLndzKCl9YXAoKXt0aGlzLnVwKCl9d3AoKXt0aGlzLnF2LlF0KCkuTigpLmhhbmRsZVNjYWxlLmF4aXNQcmVzc2VkTW91c2VNb3ZlLnRpbWUmJnRoaXMuRW0oMSl9WXAoKXt0aGlzLkVtKDApfWN2KCl7cmV0dXJuIHRoaXMuUXZ9RncoKXtyZXR1cm4gdGhpcy5Cd31Xdyh0LGkscyl7KDAsZS5lcXVhbFNpemVzKSh0aGlzLlF2LHQpfHwodGhpcy5Rdj10LHRoaXMucm09ITAsdGhpcy5mbS5yZXNpemVDYW52YXNFbGVtZW50KHQpLHRoaXMucG0ucmVzaXplQ2FudmFzRWxlbWVudCh0KSx0aGlzLnJtPSExLHRoaXMubHYuc3R5bGUud2lkdGg9YCR7dC53aWR0aH1weGAsdGhpcy5sdi5zdHlsZS5oZWlnaHQ9YCR7dC5oZWlnaHR9cHhgLHRoaXMuQncucCh0KSksbnVsbCE9PXRoaXMuRHcmJnRoaXMuRHcuQ20oZS5zaXplKHt3aWR0aDppLGhlaWdodDp0LmhlaWdodH0pKSxudWxsIT09dGhpcy5JdyYmdGhpcy5Jdy5DbShlLnNpemUoe3dpZHRoOnMsaGVpZ2h0OnQuaGVpZ2h0fSkpfUh3KCl7Y29uc3QgdD10aGlzLlV3KCk7cmV0dXJuIE1hdGguY2VpbCh0LlMrdC5DK3Quayt0LkErdC5JK3QuJHcpfWt0KCl7dGhpcy5xdi5RdCgpLkV0KCkuRWwoKX1kdigpe3JldHVybiB0aGlzLmZtLmJpdG1hcFNpemV9ZnYodCxpLHMsZSl7Y29uc3QgaD10aGlzLmR2KCk7aWYoaC53aWR0aD4wJiZoLmhlaWdodD4wJiYodC5kcmF3SW1hZ2UodGhpcy5mbS5jYW52YXNFbGVtZW50LGkscyksZSkpe2NvbnN0IGU9dGhpcy5wbS5jYW52YXNFbGVtZW50O3QuZHJhd0ltYWdlKGUsaSxzKX19a20odCl7aWYoMD09PXQpcmV0dXJuO2NvbnN0IGk9e2NvbG9yU3BhY2U6dGhpcy55bi5jb2xvclNwYWNlfTtpZigxIT09dCl7dGhpcy5mbS5hcHBseVN1Z2dlc3RlZEJpdG1hcFNpemUoKTtjb25zdCBzPSgwLGUudHJ5Q3JlYXRlQ2FudmFzUmVuZGVyaW5nVGFyZ2V0MkQpKHRoaXMuZm0saSk7bnVsbCE9PXMmJihzLnVzZUJpdG1hcENvb3JkaW5hdGVTcGFjZSgodD0+e3RoaXMuVG0odCksdGhpcy5SbSh0KSx0aGlzLmp3KHMsT3MpfSkpLHRoaXMuSW0ocyksdGhpcy5qdyhzLERzKSksbnVsbCE9PXRoaXMuRHcmJnRoaXMuRHcua20odCksbnVsbCE9PXRoaXMuSXcmJnRoaXMuSXcua20odCl9dGhpcy5wbS5hcHBseVN1Z2dlc3RlZEJpdG1hcFNpemUoKTtjb25zdCBzPSgwLGUudHJ5Q3JlYXRlQ2FudmFzUmVuZGVyaW5nVGFyZ2V0MkQpKHRoaXMucG0saSk7bnVsbCE9PXMmJihzLnVzZUJpdG1hcENvb3JkaW5hdGVTcGFjZSgoKHtjb250ZXh0OnQsYml0bWFwU2l6ZTppfSk9Pnt0LmNsZWFyUmVjdCgwLDAsaS53aWR0aCxpLmhlaWdodCl9KSksdGhpcy5xdyhbLi4udGhpcy5xdi5RdCgpLkpuKCksdGhpcy5xdi5RdCgpLlJkKCldLHMpLHRoaXMuancocyxLcykpfWp3KHQsaSl7Y29uc3Qgcz10aGlzLnF2LlF0KCkuSm4oKTtmb3IoY29uc3QgZSBvZiBzKU5zKGksKGk9PmtzKGksdCwhMSx2b2lkIDApKSxlLHZvaWQgMCk7Zm9yKGNvbnN0IGUgb2YgcylOcyhpLChpPT5FcyhpLHQsITEsdm9pZCAwKSksZSx2b2lkIDApfVRtKHtjb250ZXh0OnQsYml0bWFwU2l6ZTppfSl7USh0LDAsMCxpLndpZHRoLGkuaGVpZ2h0LHRoaXMucXYuUXQoKS5lZigpKX1SbSh7Y29udGV4dDp0LGJpdG1hcFNpemU6aSx2ZXJ0aWNhbFBpeGVsUmF0aW86c30pe2lmKHRoaXMucXYuTigpLnRpbWVTY2FsZS5ib3JkZXJWaXNpYmxlKXt0LmZpbGxTdHlsZT10aGlzLll3KCk7Y29uc3QgZT1NYXRoLm1heCgxLE1hdGguZmxvb3IodGhpcy5VdygpLlMqcykpO3QuZmlsbFJlY3QoMCwwLGkud2lkdGgsZSl9fUltKHQpe2NvbnN0IGk9dGhpcy5xdi5RdCgpLkV0KCkscz1pLkVsKCk7aWYoIXN8fDA9PT1zLmxlbmd0aClyZXR1cm47Y29uc3QgZT10aGlzLnh1Lm1heFRpY2tNYXJrV2VpZ2h0KHMpLGg9dGhpcy5VdygpLG49aS5OKCkKO24uYm9yZGVyVmlzaWJsZSYmbi50aWNrc1Zpc2libGUmJnQudXNlQml0bWFwQ29vcmRpbmF0ZVNwYWNlKCgoe2NvbnRleHQ6dCxob3Jpem9udGFsUGl4ZWxSYXRpbzppLHZlcnRpY2FsUGl4ZWxSYXRpbzplfSk9Pnt0LnN0cm9rZVN0eWxlPXRoaXMuWXcoKSx0LmZpbGxTdHlsZT10aGlzLll3KCk7Y29uc3Qgbj1NYXRoLm1heCgxLE1hdGguZmxvb3IoaSkpLHI9TWF0aC5mbG9vciguNSppKTt0LmJlZ2luUGF0aCgpO2NvbnN0IG89TWF0aC5yb3VuZChoLkMqZSk7Zm9yKGxldCBlPXMubGVuZ3RoO2UtLTspe2NvbnN0IGg9TWF0aC5yb3VuZChzW2VdLmNvb3JkKmkpO3QucmVjdChoLXIsMCxuLG8pfXQuZmlsbCgpfSkpLHQudXNlTWVkaWFDb29yZGluYXRlU3BhY2UoKCh7Y29udGV4dDp0fSk9Pntjb25zdCBpPWguUytoLkMraC5BK2guay8yO3QudGV4dEFsaWduPSJjZW50ZXIiLHQudGV4dEJhc2VsaW5lPSJtaWRkbGUiLHQuZmlsbFN0eWxlPXRoaXMuSCgpLHQuZm9udD10aGlzLlNtKCk7Zm9yKGNvbnN0IGggb2YgcylpZihoLndlaWdodDxlKXtjb25zdCBzPWgubmVlZEFsaWduQ29vcmRpbmF0ZT90aGlzLkt3KHQsaC5jb29yZCxoLmxhYmVsKTpoLmNvb3JkO3QuZmlsbFRleHQoaC5sYWJlbCxzLGkpfXRoaXMucXYuTigpLnRpbWVTY2FsZS5hbGxvd0JvbGRMYWJlbHMmJih0LmZvbnQ9dGhpcy5adygpKTtmb3IoY29uc3QgaCBvZiBzKWlmKGgud2VpZ2h0Pj1lKXtjb25zdCBzPWgubmVlZEFsaWduQ29vcmRpbmF0ZT90aGlzLkt3KHQsaC5jb29yZCxoLmxhYmVsKTpoLmNvb3JkO3QuZmlsbFRleHQoaC5sYWJlbCxzLGkpfX0pKX1Ldyh0LGkscyl7Y29uc3QgZT10aGlzLmltLklpKHQscyksaD1lLzIsbj1NYXRoLmZsb29yKGktaCkrLjU7cmV0dXJuIG48MD9pKz1NYXRoLmFicygwLW4pOm4rZT50aGlzLlF2LndpZHRoJiYoaS09TWF0aC5hYnModGhpcy5Rdi53aWR0aC0obitlKSkpLGl9cXcodCxpKXtjb25zdCBzPXRoaXMuVXcoKTtmb3IoY29uc3QgZSBvZiB0KWZvcihjb25zdCB0IG9mIGUuZG4oKSl0LlR0KCkuc3QoaSxzKX1Zdygpe3JldHVybiB0aGlzLnF2Lk4oKS50aW1lU2NhbGUuYm9yZGVyQ29sb3J9SCgpe3JldHVybiB0aGlzLnluLnRleHRDb2xvcn1GKCl7cmV0dXJuIHRoaXMueW4uZm9udFNpemV9U20oKXtyZXR1cm4gQyh0aGlzLkYoKSx0aGlzLnluLmZvbnRGYW1pbHkpfVp3KCl7cmV0dXJuIEModGhpcy5GKCksdGhpcy55bi5mb250RmFtaWx5LCJib2xkIil9VXcoKXtudWxsPT09dGhpcy5NJiYodGhpcy5NPXtTOjEsTDpOYU4sQTpOYU4sSTpOYU4sdG46TmFOLEM6NSxrOk5hTixQOiIiLFFpOm5ldyBudCwkdzowfSk7Y29uc3QgdD10aGlzLk0saT10aGlzLlNtKCk7aWYodC5QIT09aSl7Y29uc3Qgcz10aGlzLkYoKTt0Lms9cyx0LlA9aSx0LkE9MypzLzEyLHQuST0zKnMvMTIsdC50bj05KnMvMTIsdC5MPTAsdC4kdz00KnMvMTIsdC5RaS5PcygpfXJldHVybiB0aGlzLk19RW0odCl7dGhpcy5sdi5zdHlsZS5jdXJzb3I9MT09PXQ/ImV3LXJlc2l6ZSI6ImRlZmF1bHQifXp3KCl7Y29uc3QgdD10aGlzLnF2LlF0KCksaT10Lk4oKTtpLmxlZnRQcmljZVNjYWxlLnZpc2libGV8fG51bGw9PT10aGlzLkR3fHwodGhpcy5Fdy5yZW1vdmVDaGlsZCh0aGlzLkR3LnV2KCkpLHRoaXMuRHcubSgpLHRoaXMuRHc9bnVsbCksaS5yaWdodFByaWNlU2NhbGUudmlzaWJsZXx8bnVsbD09PXRoaXMuSXd8fCh0aGlzLkF3LnJlbW92ZUNoaWxkKHRoaXMuSXcudXYoKSksdGhpcy5Jdy5tKCksdGhpcy5Jdz1udWxsKTtjb25zdCBzPXtaZDp0aGlzLnF2LlF0KCkuWmQoKX0sZT0oKT0+aS5sZWZ0UHJpY2VTY2FsZS5ib3JkZXJWaXNpYmxlJiZ0LkV0KCkuTigpLmJvcmRlclZpc2libGUsaD0oKT0+dC5lZigpO2kubGVmdFByaWNlU2NhbGUudmlzaWJsZSYmbnVsbD09PXRoaXMuRHcmJih0aGlzLkR3PW5ldyBXcygibGVmdCIsaSxzLGUsaCksdGhpcy5Fdy5hcHBlbmRDaGlsZCh0aGlzLkR3LnV2KCkpKSxpLnJpZ2h0UHJpY2VTY2FsZS52aXNpYmxlJiZudWxsPT09dGhpcy5JdyYmKHRoaXMuSXc9bmV3IFdzKCJyaWdodCIsaSxzLGUsaCksdGhpcy5Bdy5hcHBlbmRDaGlsZCh0aGlzLkl3LnV2KCkpKX19Y29uc3QgQnM9ISFscyYmISFuYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLnNvbWUoKHQ9PnQuYnJhbmQuaW5jbHVkZXMoIkNocm9taXVtIikpKSYmISFscyYmKG5hdmlnYXRvcj8udXNlckFnZW50RGF0YT8ucGxhdGZvcm0/IldpbmRvd3MiPT09bmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm06bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndpbiIpPj0wKTtjbGFzcyAkc3tjb25zdHJ1Y3Rvcih0LGkscyl7dmFyIGU7dGhpcy5Hdz1bXSx0aGlzLlh3PVtdLHRoaXMuSnc9MCx0aGlzLmhvPTAsdGhpcy5DXz0wLHRoaXMuUXc9MCx0aGlzLnRNPTAsdGhpcy5pTT1udWxsLHRoaXMubk09ITEsdGhpcy5XbT1uZXcgbSx0aGlzLkhtPW5ldyBtLHRoaXMucGQ9bmV3IG0sdGhpcy5zTT1udWxsLHRoaXMuZU09bnVsbCx0aGlzLmp2PXQsdGhpcy55bj1pLHRoaXMueHU9cyx0aGlzLkh2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuSHYuY2xhc3NMaXN0LmFkZCgidHYtbGlnaHR3ZWlnaHQtY2hhcnRzIiksdGhpcy5Idi5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIix0aGlzLkh2LnN0eWxlLmRpcmVjdGlvbj0ibHRyIix0aGlzLkh2LnN0eWxlLndpZHRoPSIxMDAlIix0aGlzLkh2LnN0eWxlLmhlaWdodD0iMTAwJSIsKGU9dGhpcy5Idikuc3R5bGUudXNlclNlbGVjdD0ibm9uZSIsZS5zdHlsZS53ZWJraXRVc2VyU2VsZWN0PSJub25lIixlLnN0eWxlLm1zVXNlclNlbGVjdD0ibm9uZSIsZS5zdHlsZS5Nb3pVc2VyU2VsZWN0PSJub25lIixlLnN0eWxlLndlYmtpdFRhcEhpZ2hsaWdodENvbG9yPSJ0cmFuc3BhcmVudCIsdGhpcy5yTT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpLHRoaXMuck0uc2V0QXR0cmlidXRlKCJjZWxsc3BhY2luZyIsIjAiKSx0aGlzLkh2LmFwcGVuZENoaWxkKHRoaXMuck0pLAp0aGlzLmhNPXRoaXMuYU0uYmluZCh0aGlzKSxBcyh0aGlzLnluKSYmdGhpcy5sTSghMCksdGhpcy5zbj1uZXcgJGkodGhpcy5tZC5iaW5kKHRoaXMpLHRoaXMueW4scyksdGhpcy5RdCgpLkRkKCkuaSh0aGlzLm9NLmJpbmQodGhpcyksdGhpcyksdGhpcy5fTT1uZXcgVnModGhpcyx0aGlzLnh1KSx0aGlzLnJNLmFwcGVuZENoaWxkKHRoaXMuX00udXYoKSk7Y29uc3QgaD1pLmF1dG9TaXplJiZ0aGlzLnVNKCk7bGV0IG49dGhpcy55bi53aWR0aCxyPXRoaXMueW4uaGVpZ2h0O2lmKGh8fDA9PT1ufHwwPT09cil7Y29uc3QgaT10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO249bnx8aS53aWR0aCxyPXJ8fGkuaGVpZ2h0fXRoaXMuY00obixyKSx0aGlzLmRNKCksdC5hcHBlbmRDaGlsZCh0aGlzLkh2KSx0aGlzLmZNKCksdGhpcy5zbi5FdCgpLlpjKCkuaSh0aGlzLnNuLlBhLmJpbmQodGhpcy5zbiksdGhpcyksdGhpcy5zbi5MXygpLmkodGhpcy5zbi5QYS5iaW5kKHRoaXMuc24pLHRoaXMpfVF0KCl7cmV0dXJuIHRoaXMuc259Tigpe3JldHVybiB0aGlzLnlufXJ2KCl7cmV0dXJuIHRoaXMuR3d9cE0oKXtyZXR1cm4gdGhpcy5fTX1tKCl7dGhpcy5sTSghMSksMCE9PXRoaXMuSncmJndpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLkp3KSx0aGlzLnNuLkRkKCkudSh0aGlzKSx0aGlzLnNuLkV0KCkuWmMoKS51KHRoaXMpLHRoaXMuc24uTF8oKS51KHRoaXMpLHRoaXMuc24ubSgpO2Zvcihjb25zdCB0IG9mIHRoaXMuR3cpdGhpcy5yTS5yZW1vdmVDaGlsZCh0LnV2KCkpLHQuZHcoKS51KHRoaXMpLHQuZncoKS51KHRoaXMpLHQubSgpO3RoaXMuR3c9W107Zm9yKGNvbnN0IHQgb2YgdGhpcy5Ydyl0aGlzLnZNKHQpO3RoaXMuWHc9W10sZih0aGlzLl9NKS5tKCksbnVsbCE9PXRoaXMuSHYucGFyZW50RWxlbWVudCYmdGhpcy5Idi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuSHYpLHRoaXMucGQubSgpLHRoaXMuV20ubSgpLHRoaXMuSG0ubSgpLHRoaXMubU0oKX1jTSh0LGkscz0hMSl7aWYodGhpcy5obz09PWkmJnRoaXMuQ189PT10KXJldHVybjtjb25zdCBoPWZ1bmN0aW9uKHQpe2NvbnN0IGk9TWF0aC5mbG9vcih0LndpZHRoKSxzPU1hdGguZmxvb3IodC5oZWlnaHQpO3JldHVybiBlLnNpemUoe3dpZHRoOmktaSUyLGhlaWdodDpzLXMlMn0pfShlLnNpemUoe3dpZHRoOnQsaGVpZ2h0Oml9KSk7dGhpcy5obz1oLmhlaWdodCx0aGlzLkNfPWgud2lkdGg7Y29uc3Qgbj10aGlzLmhvKyJweCIscj10aGlzLkNfKyJweCI7aWYodGhpcy53TSgpfHwoZih0aGlzLkh2KS5zdHlsZS5oZWlnaHQ9bixmKHRoaXMuSHYpLnN0eWxlLndpZHRoPXIpLHRoaXMuck0uc3R5bGUuaGVpZ2h0PW4sdGhpcy5yTS5zdHlsZS53aWR0aD1yLHMpezAhPT10aGlzLkp3JiYod2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuSncpLHRoaXMuSnc9MCksdGhpcy5uTT0hMTtjb25zdCB0PVgueXMoKTtudWxsIT09dGhpcy5pTSYmKHQuU3ModGhpcy5pTSksdGhpcy5pTT1udWxsKSx0aGlzLk1NKHQscGVyZm9ybWFuY2Uubm93KCkpfWVsc2UgdGhpcy5zbi5QYSgpfWttKHQpe3ZvaWQgMD09PXQmJih0PVgueXMoKSk7Zm9yKGxldCBpPTA7aTx0aGlzLkd3Lmxlbmd0aDtpKyspdGhpcy5Hd1tpXS5rbSh0Ll9zKGkpLnJzKTt0aGlzLnluLnRpbWVTY2FsZS52aXNpYmxlJiZ0aGlzLl9NLmttKHQubHMoKSl9dnIodCl7Y29uc3QgaT1Bcyh0aGlzLnluKTt0aGlzLnNuLnZyKHQpO2NvbnN0IHM9QXModGhpcy55bik7cyE9PWkmJnRoaXMubE0ocyksdC5sYXlvdXQ/LnBhbmVzJiZ0aGlzLmdNKCksdGhpcy5mTSgpLHRoaXMuYk0odCl9ZHcoKXtyZXR1cm4gdGhpcy5XbX1mdygpe3JldHVybiB0aGlzLkhtfURkKCl7cmV0dXJuIHRoaXMucGR9U00odD0hMSl7bnVsbCE9PXRoaXMuaU0mJih0aGlzLk1NKHRoaXMuaU0scGVyZm9ybWFuY2Uubm93KCkpLHRoaXMuaU09bnVsbCk7Y29uc3QgaT10aGlzLnhNKG51bGwpLHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7cy53aWR0aD1pLndpZHRoLHMuaGVpZ2h0PWkuaGVpZ2h0O2NvbnN0IGU9ZihzLmdldENvbnRleHQoIjJkIikpO3JldHVybiB0aGlzLnhNKGUsdCksc31DTSh0KXtyZXR1cm4oImxlZnQiIT09dHx8dGhpcy55TSgpKSYmKCJyaWdodCIhPT10fHx0aGlzLmtNKCkpPzA9PT10aGlzLkd3Lmxlbmd0aD8wOmYoImxlZnQiPT09dD90aGlzLkd3WzBdLlN3KCk6dGhpcy5Hd1swXS54dygpKS55bSgpOjB9d00oKXtyZXR1cm4gdGhpcy55bi5hdXRvU2l6ZSYmbnVsbCE9PXRoaXMuc019dnYoKXtyZXR1cm4gdGhpcy5Idn1QTSh0KXt0aGlzLmVNPXQsdGhpcy5lTT90aGlzLnZ2KCkuc3R5bGUuc2V0UHJvcGVydHkoImN1cnNvciIsdCk6dGhpcy52digpLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJjdXJzb3IiKX1UTSgpe3JldHVybiB0aGlzLmVNfVJNKHQpe3JldHVybiBjKHRoaXMuR3dbdF0pLmN2KCl9Z00oKXt0aGlzLlh3LmZvckVhY2goKHQ9Pnt0Lmt0KCl9KSl9Yk0odCl7KHZvaWQgMCE9PXQuYXV0b1NpemV8fCF0aGlzLnNNfHx2b2lkIDA9PT10LndpZHRoJiZ2b2lkIDA9PT10LmhlaWdodCkmJih0LmF1dG9TaXplJiYhdGhpcy5zTSYmdGhpcy51TSgpLCExPT09dC5hdXRvU2l6ZSYmbnVsbCE9PXRoaXMuc00mJnRoaXMubU0oKSx0LmF1dG9TaXplfHx2b2lkIDA9PT10LndpZHRoJiZ2b2lkIDA9PT10LmhlaWdodHx8dGhpcy5jTSh0LndpZHRofHx0aGlzLkNfLHQuaGVpZ2h0fHx0aGlzLmhvKSl9eE0odCxpKXtsZXQgcz0wLGg9MDtjb25zdCBuPXRoaXMuR3dbMF0scj0ocyxlKT0+e2xldCBoPTA7Zm9yKGxldCBuPTA7bjx0aGlzLkd3Lmxlbmd0aDtuKyspe2NvbnN0IHI9dGhpcy5Hd1tuXSxvPWYoImxlZnQiPT09cz9yLlN3KCk6ci54dygpKSxsPW8uZHYoKTtpZihudWxsIT09dCYmby5mdih0LGUsaCxpKSxoKz1sLmhlaWdodCxuPHRoaXMuR3cubGVuZ3RoLTEpe2NvbnN0IGk9dGhpcy5Yd1tuXSxzPWkuZHYoKTtudWxsIT09dCYmaS5mdih0LGUsaCksaCs9cy5oZWlnaHR9fX07dGhpcy55TSgpJiYocigibGVmdCIsMCkscys9ZihuLlN3KCkpLmR2KCkud2lkdGgpCjtmb3IobGV0IGU9MDtlPHRoaXMuR3cubGVuZ3RoO2UrKyl7Y29uc3Qgbj10aGlzLkd3W2VdLHI9bi5kdigpO2lmKG51bGwhPT10JiZuLmZ2KHQscyxoLGkpLGgrPXIuaGVpZ2h0LGU8dGhpcy5Hdy5sZW5ndGgtMSl7Y29uc3QgaT10aGlzLlh3W2VdLG49aS5kdigpO251bGwhPT10JiZpLmZ2KHQscyxoKSxoKz1uLmhlaWdodH19cys9bi5kdigpLndpZHRoLHRoaXMua00oKSYmKHIoInJpZ2h0IixzKSxzKz1mKG4ueHcoKSkuZHYoKS53aWR0aCk7Y29uc3Qgbz0oaSxzLGUpPT57ZigibGVmdCI9PT1pP3RoaXMuX00uT3coKTp0aGlzLl9NLk53KCkpLmZ2KGYodCkscyxlKX07aWYodGhpcy55bi50aW1lU2NhbGUudmlzaWJsZSl7Y29uc3Qgcz10aGlzLl9NLmR2KCk7aWYobnVsbCE9PXQpe2xldCBlPTA7dGhpcy55TSgpJiYobygibGVmdCIsZSxoKSxlPWYobi5TdygpKS5kdigpLndpZHRoKSx0aGlzLl9NLmZ2KHQsZSxoLGkpLGUrPXMud2lkdGgsdGhpcy5rTSgpJiZvKCJyaWdodCIsZSxoKX1oKz1zLmhlaWdodH1yZXR1cm4gZS5zaXplKHt3aWR0aDpzLGhlaWdodDpofSl9RE0oKXtsZXQgdD0wLGk9MCxzPTA7Zm9yKGNvbnN0IGUgb2YgdGhpcy5Hdyl0aGlzLnlNKCkmJihpPU1hdGgubWF4KGksZihlLlN3KCkpLmJtKCksdGhpcy55bi5sZWZ0UHJpY2VTY2FsZS5taW5pbXVtV2lkdGgpKSx0aGlzLmtNKCkmJihzPU1hdGgubWF4KHMsZihlLnh3KCkpLmJtKCksdGhpcy55bi5yaWdodFByaWNlU2NhbGUubWluaW11bVdpZHRoKSksdCs9ZS56XygpO2k9ZnMoaSkscz1mcyhzKTtjb25zdCBoPXRoaXMuQ18sbj10aGlzLmhvLHI9TWF0aC5tYXgoaC1pLXMsMCksbz0xKnRoaXMuWHcubGVuZ3RoLGw9dGhpcy55bi50aW1lU2NhbGUudmlzaWJsZTtsZXQgYT1sP01hdGgubWF4KHRoaXMuX00uSHcoKSx0aGlzLnluLnRpbWVTY2FsZS5taW5pbXVtSGVpZ2h0KTowO3ZhciB1O2E9KHU9YSkrdSUyO2NvbnN0IGM9bythLGQ9bjxjPzA6bi1jLG09ZC90O2xldCBwPTA7Y29uc3QgZz13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MTtmb3IobGV0IHQ9MDt0PHRoaXMuR3cubGVuZ3RoOysrdCl7Y29uc3QgaD10aGlzLkd3W3RdO2guaXcodGhpcy5zbi5abigpW3RdKTtsZXQgbj0wLG89MDtvPXQ9PT10aGlzLkd3Lmxlbmd0aC0xP01hdGguY2VpbCgoZC1wKSpnKS9nOk1hdGgucm91bmQoaC56XygpKm0qZykvZyxuPU1hdGgubWF4KG8sMikscCs9bixoLkNtKGUuc2l6ZSh7d2lkdGg6cixoZWlnaHQ6bn0pKSx0aGlzLnlNKCkmJmgubXcoaSwibGVmdCIpLHRoaXMua00oKSYmaC5tdyhzLCJyaWdodCIpLGguU3YoKSYmdGhpcy5zbi5JZChoLlN2KCksbil9dGhpcy5fTS5XdyhlLnNpemUoe3dpZHRoOmw/cjowLGhlaWdodDphfSksbD9pOjAsbD9zOjApLHRoaXMuc24uTl8ociksdGhpcy5RdyE9PWkmJih0aGlzLlF3PWkpLHRoaXMudE0hPT1zJiYodGhpcy50TT1zKX1sTSh0KXt0P3RoaXMuSHYuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLHRoaXMuaE0se3Bhc3NpdmU6ITF9KTp0aGlzLkh2LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIix0aGlzLmhNKX1JTSh0KXtzd2l0Y2godC5kZWx0YU1vZGUpe2Nhc2UgdC5ET01fREVMVEFfUEFHRTpyZXR1cm4gMTIwO2Nhc2UgdC5ET01fREVMVEFfTElORTpyZXR1cm4gMzJ9cmV0dXJuIEJzPzEvd2luZG93LmRldmljZVBpeGVsUmF0aW86MX1hTSh0KXtpZighKDAhPT10LmRlbHRhWCYmdGhpcy55bi5oYW5kbGVTY3JvbGwubW91c2VXaGVlbHx8MCE9PXQuZGVsdGFZJiZ0aGlzLnluLmhhbmRsZVNjYWxlLm1vdXNlV2hlZWwpKXJldHVybjtjb25zdCBpPXRoaXMuSU0odCkscz1pKnQuZGVsdGFYLzEwMCxlPS1pKnQuZGVsdGFZLzEwMDtpZih0LmNhbmNlbGFibGUmJnQucHJldmVudERlZmF1bHQoKSwwIT09ZSYmdGhpcy55bi5oYW5kbGVTY2FsZS5tb3VzZVdoZWVsKXtjb25zdCBpPU1hdGguc2lnbihlKSpNYXRoLm1pbigxLE1hdGguYWJzKGUpKSxzPXQuY2xpZW50WC10aGlzLkh2LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7dGhpcy5RdCgpLk9kKHMsaSl9MCE9PXMmJnRoaXMueW4uaGFuZGxlU2Nyb2xsLm1vdXNlV2hlZWwmJnRoaXMuUXQoKS5OZCgtODAqcyl9TU0odCxpKXtjb25zdCBzPXQubHMoKTszPT09cyYmdGhpcy5WTSgpLDMhPT1zJiYyIT09c3x8KHRoaXMuQk0odCksdGhpcy5FTSh0LGkpLHRoaXMuX00ua3QoKSx0aGlzLkd3LmZvckVhY2goKHQ9Pnt0LnN3KCl9KSksMz09PXRoaXMuaU0/LmxzKCkmJih0aGlzLmlNLlNzKHQpLHRoaXMuVk0oKSx0aGlzLkJNKHRoaXMuaU0pLHRoaXMuRU0odGhpcy5pTSxpKSx0PXRoaXMuaU0sdGhpcy5pTT1udWxsKSksdGhpcy5rbSh0KX1FTSh0LGkpe2Zvcihjb25zdCBzIG9mIHQuYnMoKSl0aGlzLnhzKHMsaSl9Qk0odCl7Y29uc3QgaT10aGlzLnNuLlpuKCk7Zm9yKGxldCBzPTA7czxpLmxlbmd0aDtzKyspdC5fcyhzKS5ocyYmaVtzXS5ydSgpfXhzKHQsaSl7Y29uc3Qgcz10aGlzLnNuLkV0KCk7c3dpdGNoKHQuZHMpe2Nhc2UgMDpzLlhjKCk7YnJlYWs7Y2FzZSAxOnMuSmModC5XdCk7YnJlYWs7Y2FzZSAyOnMuTXModC5XdCk7YnJlYWs7Y2FzZSAzOnMuZ3ModC5XdCk7YnJlYWs7Y2FzZSA0OnMuT2MoKTticmVhaztjYXNlIDU6dC5XdC5qYyhpKXx8cy5ncyh0Lld0LnFjKGkpKX19bWQodCl7bnVsbCE9PXRoaXMuaU0/dGhpcy5pTS5Tcyh0KTp0aGlzLmlNPXQsdGhpcy5uTXx8KHRoaXMubk09ITAsdGhpcy5Kdz13aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCh0PT57aWYodGhpcy5uTT0hMSx0aGlzLkp3PTAsbnVsbCE9PXRoaXMuaU0pe2NvbnN0IGk9dGhpcy5pTTt0aGlzLmlNPW51bGwsdGhpcy5NTShpLHQpO2Zvcihjb25zdCBzIG9mIGkuYnMoKSlpZig1PT09cy5kcyYmIXMuV3QuamModCkpe3RoaXMuUXQoKS5wcyhzLld0KTticmVha319fSkpKX1WTSgpe3RoaXMuZE0oKX12TSh0KXt0aGlzLnJNLnJlbW92ZUNoaWxkKHQudXYoKSksdC5tKCl9ZE0oKXtjb25zdCB0PXRoaXMuc24uWm4oKSxpPXQubGVuZ3RoLHM9dGhpcy5Hdy5sZW5ndGg7Zm9yKGxldCB0PWk7dDxzO3QrKyl7Y29uc3QgdD1jKHRoaXMuR3cucG9wKCkpCjt0aGlzLnJNLnJlbW92ZUNoaWxkKHQudXYoKSksdC5kdygpLnUodGhpcyksdC5mdygpLnUodGhpcyksdC5tKCk7Y29uc3QgaT10aGlzLlh3LnBvcCgpO3ZvaWQgMCE9PWkmJnRoaXMudk0oaSl9Zm9yKGxldCBlPXM7ZTxpO2UrKyl7Y29uc3QgaT1uZXcgcXModGhpcyx0W2VdKTtpZihpLmR3KCkuaSh0aGlzLkFNLmJpbmQodGhpcyxpKSx0aGlzKSxpLmZ3KCkuaSh0aGlzLkxNLmJpbmQodGhpcyxpKSx0aGlzKSx0aGlzLkd3LnB1c2goaSksZT4wKXtjb25zdCB0PW5ldyB3cyh0aGlzLGUtMSxlKTt0aGlzLlh3LnB1c2godCksdGhpcy5yTS5pbnNlcnRCZWZvcmUodC51digpLHRoaXMuX00udXYoKSl9dGhpcy5yTS5pbnNlcnRCZWZvcmUoaS51digpLHRoaXMuX00udXYoKSl9Zm9yKGxldCBzPTA7czxpO3MrKyl7Y29uc3QgaT10W3NdLGU9dGhpcy5Hd1tzXTtlLlN2KCkhPT1pP2UuaXcoaSk6ZS50dygpfXRoaXMuZk0oKSx0aGlzLkRNKCl9ek0odCxpLHMsZSl7Y29uc3QgaD1uZXcgTWFwO2xldCBuO2lmKG51bGwhPT10JiZ0aGlzLnNuLkpuKCkuZm9yRWFjaCgoaT0+e2NvbnN0IHM9aS5VbigpLkhuKHQpO251bGwhPT1zJiZoLnNldChpLHMpfSkpLG51bGwhPT10KXtjb25zdCBpPXRoaXMuc24uRXQoKS5lbih0KT8ub3JpZ2luYWxUaW1lO3ZvaWQgMCE9PWkmJihuPWkpfWNvbnN0IHI9dGhpcy5RdCgpLm91KCksbz10aGlzLk9NKGUpLGw9ZnVuY3Rpb24odCxpKXtjb25zdCBzPW51bGwhPT10JiZ0Lmx1IGluc3RhbmNlb2YganQ/dC5sdTp2b2lkIDAsZT10Py53dT8udGUsaD12b2lkIDAhPT1pJiYtMSE9PWk/aTp2b2lkIDA7cmV0dXJuIG51bGw9PT10fHx2b2lkIDA9PT10LmVlP3tOTTpzLEZNOmV9OntOTTpzLEZNOmUsV006e2RzOnQuZWUsSE06KG49dC5sdSxyPXQuZWUsbiBpbnN0YW5jZW9mIENpPyJwYW5lLXByaW1pdGl2ZSI6Im1hcmtlciI9PT1yfHwicHJpbWl0aXZlIj09PXI/InNlcmllcy1wcmltaXRpdmUiOiJzZXJpZXMiKSxVTTpjcyh0LmVlLGUpLFVfOnMsJE06ZSxqTTpofX07dmFyIG4scn0ocixvKTtyZXR1cm57UXI6biwkbjp0Pz92b2lkIDAscU06aT8/dm9pZCAwLGpNOi0xIT09bz9vOnZvaWQgMCxOTTpsLk5NLFlNOmgsRk06bC5GTSxXTTpsLldNLEtNOnM/P3ZvaWQgMH19T00odCl7bGV0IGk9LTE7aWYodClpPXRoaXMuR3cuaW5kZXhPZih0KTtlbHNle2NvbnN0IHQ9dGhpcy5RdCgpLlJkKCkuS24oKTtudWxsIT09dCYmKGk9dGhpcy5RdCgpLlpuKCkuaW5kZXhPZih0KSl9cmV0dXJuIGl9QU0odCxpLHMsZSl7dGhpcy5XbS5wKCgoKT0+dGhpcy56TShpLHMsZSx0KSkpfUxNKHQsaSxzLGUpe3RoaXMuSG0ucCgoKCk9PnRoaXMuek0oaSxzLGUsdCkpKX1vTSh0LGkscyl7dGhpcy5QTSh0aGlzLlF0KCkub3UoKT8ubXU/P251bGwpLHRoaXMucGQucCgoKCk9PnRoaXMuek0odCxpLHMpKSl9Zk0oKXtjb25zdCB0PXRoaXMueW4udGltZVNjYWxlLnZpc2libGU/IiI6Im5vbmUiO3RoaXMuX00udXYoKS5zdHlsZS5kaXNwbGF5PXR9eU0oKXtyZXR1cm4gdGhpcy5Hd1swXS5TdigpLktfKCkuTigpLnZpc2libGV9a00oKXtyZXR1cm4gdGhpcy5Hd1swXS5TdigpLlpfKCkuTigpLnZpc2libGV9dU0oKXtyZXR1cm4iUmVzaXplT2JzZXJ2ZXIiaW4gd2luZG93JiYodGhpcy5zTT1uZXcgUmVzaXplT2JzZXJ2ZXIoKHQ9Pntjb25zdCBpPXRbdC5sZW5ndGgtMV07aWYoIWkpcmV0dXJuO2NvbnN0IHM9aS5jb250ZW50UmVjdC53aWR0aCxlPWkuY29udGVudFJlY3QuaGVpZ2h0O3RoaXMuY00ocyxlLCEwKX0pKSx0aGlzLnNNLm9ic2VydmUodGhpcy5qdix7Ym94OiJib3JkZXItYm94In0pLCEwKX1tTSgpe251bGwhPT10aGlzLnNNJiZ0aGlzLnNNLmRpc2Nvbm5lY3QoKSx0aGlzLnNNPW51bGx9fWZ1bmN0aW9uIEFzKHQpe3JldHVybiBCb29sZWFuKHQuaGFuZGxlU2Nyb2xsLm1vdXNlV2hlZWx8fHQuaGFuZGxlU2NhbGUubW91c2VXaGVlbCl9ZnVuY3Rpb24gWnModCl7cmV0dXJuIHZvaWQgMD09PXQub3BlbiYmdm9pZCAwPT09dC52YWx1ZX1mdW5jdGlvbiBIcyh0KXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMCE9PXQub3Blbn0odCl8fGZ1bmN0aW9uKHQpe3JldHVybiB2b2lkIDAhPT10LnZhbHVlfSh0KX1mdW5jdGlvbiBHcyh0LGkscyxlKXtjb25zdCBoPXMudmFsdWUsbj17JG46aSx3dDp0LFd0OltoLGgsaCxoXSxRcjplfTtyZXR1cm4gdm9pZCAwIT09cy5jb2xvciYmKG4uUj1zLmNvbG9yKSxufWZ1bmN0aW9uIFVzKHQsaSxzLGUpe2NvbnN0IGg9cy52YWx1ZSxuPXskbjppLHd0OnQsV3Q6W2gsaCxoLGhdLFFyOmV9O3JldHVybiB2b2lkIDAhPT1zLmxpbmVDb2xvciYmKG4udnQ9cy5saW5lQ29sb3IpLHZvaWQgMCE9PXMudG9wQ29sb3ImJihuLmFoPXMudG9wQ29sb3IpLHZvaWQgMCE9PXMuYm90dG9tQ29sb3ImJihuLm9oPXMuYm90dG9tQ29sb3IpLG59ZnVuY3Rpb24gWXModCxpLHMsZSl7Y29uc3QgaD1zLnZhbHVlLG49eyRuOmksd3Q6dCxXdDpbaCxoLGgsaF0sUXI6ZX07cmV0dXJuIHZvaWQgMCE9PXMudG9wTGluZUNvbG9yJiYobi5faD1zLnRvcExpbmVDb2xvciksdm9pZCAwIT09cy5ib3R0b21MaW5lQ29sb3ImJihuLnVoPXMuYm90dG9tTGluZUNvbG9yKSx2b2lkIDAhPT1zLnRvcEZpbGxDb2xvcjEmJihuLmRoPXMudG9wRmlsbENvbG9yMSksdm9pZCAwIT09cy50b3BGaWxsQ29sb3IyJiYobi5maD1zLnRvcEZpbGxDb2xvcjIpLHZvaWQgMCE9PXMuYm90dG9tRmlsbENvbG9yMSYmKG4ucGg9cy5ib3R0b21GaWxsQ29sb3IxKSx2b2lkIDAhPT1zLmJvdHRvbUZpbGxDb2xvcjImJihuLm1oPXMuYm90dG9tRmlsbENvbG9yMiksbn1mdW5jdGlvbiBqcyh0LGkscyxlKXtjb25zdCBoPXskbjppLHd0OnQsV3Q6W3Mub3BlbixzLmhpZ2gscy5sb3cscy5jbG9zZV0sUXI6ZX07cmV0dXJuIHZvaWQgMCE9PXMuY29sb3ImJihoLlI9cy5jb2xvciksaH1mdW5jdGlvbiBYcyh0LGkscyxlKXtjb25zdCBoPXskbjppLHd0OnQsV3Q6W3Mub3BlbixzLmhpZ2gscy5sb3cscy5jbG9zZV0sUXI6ZX07cmV0dXJuIHZvaWQgMCE9PXMuY29sb3ImJihoLlI9cy5jb2xvciksCnZvaWQgMCE9PXMuYm9yZGVyQ29sb3ImJihoLkh0PXMuYm9yZGVyQ29sb3IpLHZvaWQgMCE9PXMud2lja0NvbG9yJiYoaC5oaD1zLndpY2tDb2xvciksaH1mdW5jdGlvbiBKcyh0LGkscyxlLGgpe2NvbnN0IG49YyhoKShzKSxyPU1hdGgubWF4KC4uLm4pLG89TWF0aC5taW4oLi4ubiksbD1uW24ubGVuZ3RoLTFdLGE9W2wscixvLGxdLHt0aW1lOnUsY29sb3I6ZiwuLi5kfT1zO3JldHVybnskbjppLHd0OnQsV3Q6YSxRcjplLHVlOmQsUjpmfX1mdW5jdGlvbiB0ZSh0KXtyZXR1cm4gdm9pZCAwIT09dC5XdH1mdW5jdGlvbiBpZSh0LGkpe3JldHVybiB2b2lkIDAhPT1pLmN1c3RvbVZhbHVlcyYmKHQuWk09aS5jdXN0b21WYWx1ZXMpLHR9ZnVuY3Rpb24gc2UodCl7cmV0dXJuKGkscyxlLGgsbixyKT0+ZnVuY3Rpb24odCxpKXtyZXR1cm4gaT9pKHQpOlpzKHQpfShlLHIpP2llKHt3dDppLCRuOnMsUXI6aH0sZSk6aWUodChpLHMsZSxoLG4pLGUpfWZ1bmN0aW9uIGVlKHQpe3JldHVybntDYW5kbGVzdGljazpzZShYcyksQmFyOnNlKGpzKSxBcmVhOnNlKFVzKSxCYXNlbGluZTpzZShZcyksSGlzdG9ncmFtOnNlKEdzKSxMaW5lOnNlKEdzKSxDdXN0b206c2UoSnMpfVt0XX1mdW5jdGlvbiBoZSh0KXtyZXR1cm57JG46MCxHTTpuZXcgTWFwLHphOnR9fWZ1bmN0aW9uIG5lKHQsaSl7aWYodm9pZCAwIT09dCYmMCE9PXQubGVuZ3RoKXJldHVybntYTTppLmtleSh0WzBdLnd0KSxKTTppLmtleSh0W3QubGVuZ3RoLTFdLnd0KX19ZnVuY3Rpb24gcmUodCl7bGV0IGk7cmV0dXJuIHQuZm9yRWFjaCgodD0+e3ZvaWQgMD09PWkmJihpPXQuUXIpfSkpLGMoaSl9Y2xhc3Mgb2V7Y29uc3RydWN0b3IodCl7dGhpcy5RTT1uZXcgTWFwLHRoaXMudGc9bmV3IE1hcCx0aGlzLmlnPW5ldyBNYXAsdGhpcy5uZz1bXSx0aGlzLnh1PXR9bSgpe3RoaXMuUU0uY2xlYXIoKSx0aGlzLnRnLmNsZWFyKCksdGhpcy5pZy5jbGVhcigpLHRoaXMubmc9W119c2codCxpKXtsZXQgcz0wIT09dGhpcy5RTS5zaXplLGU9ITE7Y29uc3QgaD10aGlzLnRnLmdldCh0KTtpZih2b2lkIDAhPT1oKWlmKDE9PT10aGlzLnRnLnNpemUpcz0hMSxlPSEwLHRoaXMuUU0uY2xlYXIoKTtlbHNlIGZvcihjb25zdCBpIG9mIHRoaXMubmcpaS5wb2ludERhdGEuR00uZGVsZXRlKHQpJiYoZT0hMCk7bGV0IG49W107aWYoMCE9PWkubGVuZ3RoKXtjb25zdCBzPWkubWFwKCh0PT50LnRpbWUpKSxoPXRoaXMueHUuY3JlYXRlQ29udmVydGVyVG9JbnRlcm5hbE9iaihpKSxyPWVlKHQuYmgoKSksbz10LmxsKCksbD10Lm9sKCk7bj1pLm1hcCgoKGksbik9Pntjb25zdCBhPWgoaS50aW1lKSx1PXRoaXMueHUua2V5KGEpO2xldCBjPXRoaXMuUU0uZ2V0KHUpO3ZvaWQgMD09PWMmJihjPWhlKGEpLHRoaXMuUU0uc2V0KHUsYyksZT0hMCk7Y29uc3QgZj1yKGEsYy4kbixpLHNbbl0sbyxsKTtyZXR1cm4gYy5HTS5zZXQodCxmKSxmfSkpfXMmJnRoaXMuZWcoKSx0aGlzLnJnKHQsbik7bGV0IHI9LTE7aWYoZSl7Y29uc3QgdD1bXTt0aGlzLlFNLmZvckVhY2goKGk9Pnt0LnB1c2goe3RpbWVXZWlnaHQ6MCx0aW1lOmkuemEscG9pbnREYXRhOmksb3JpZ2luYWxUaW1lOnJlKGkuR00pfSl9KSksdC5zb3J0KCgodCxpKT0+dGhpcy54dS5rZXkodC50aW1lKS10aGlzLnh1LmtleShpLnRpbWUpKSkscj10aGlzLmhnKHQpfXJldHVybiB0aGlzLmFnKHQscixmdW5jdGlvbih0LGkscyl7Y29uc3QgZT1uZSh0LHMpLGg9bmUoaSxzKTtpZih2b2lkIDAhPT1lJiZ2b2lkIDAhPT1oKXJldHVybntsZzohMSxJYTplLkpNPj1oLkpNJiZlLlhNPj1oLlhNfX0odGhpcy50Zy5nZXQodCksaCx0aGlzLnh1KSl9SmQodCl7cmV0dXJuIHRoaXMuc2codCxbXSl9b2codCxpLHMpe2lmKHMmJnQuTmEoKSl0aHJvdyBuZXcgRXJyb3IoIkhpc3RvcmljYWwgdXBkYXRlcyBhcmUgbm90IHN1cHBvcnRlZCB3aGVuIGNvbmZsYXRpb24gaXMgZW5hYmxlZC4gQ29uZmxhdGlvbiByZXF1aXJlcyBkYXRhIHRvIGJlIHByb2Nlc3NlZCBpbiBvcmRlci4iKTtjb25zdCBlPWk7IWZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQuUXImJih0LlFyPXQudGltZSl9KGUpLHRoaXMueHUucHJlcHJvY2Vzc0RhdGEoaSk7Y29uc3QgaD10aGlzLnh1LmNyZWF0ZUNvbnZlcnRlclRvSW50ZXJuYWxPYmooW2ldKShpLnRpbWUpLG49dGhpcy5pZy5nZXQodCk7aWYoIXMmJnZvaWQgMCE9PW4mJnRoaXMueHUua2V5KGgpPHRoaXMueHUua2V5KG4pKXRocm93IG5ldyBFcnJvcihgQ2Fubm90IHVwZGF0ZSBvbGRlc3QgZGF0YSwgbGFzdCB0aW1lPSR7bn0sIG5ldyB0aW1lPSR7aH1gKTtsZXQgcj10aGlzLlFNLmdldCh0aGlzLnh1LmtleShoKSk7aWYocyYmdm9pZCAwPT09cil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCB1cGRhdGUgbm9uLWV4aXN0aW5nIGRhdGEgcG9pbnQgd2hlbiBoaXN0b3JpY2FsVXBkYXRlIGlzIHRydWUiKTtjb25zdCBvPXZvaWQgMD09PXI7dm9pZCAwPT09ciYmKHI9aGUoaCksdGhpcy5RTS5zZXQodGhpcy54dS5rZXkoaCkscikpO2NvbnN0IGw9ZWUodC5iaCgpKSxhPXQubGwoKSx1PXQub2woKSxjPWwoaCxyLiRuLGksZS5RcixhLHUpLGY9IXMmJiFvJiZ2b2lkIDAhPT1uJiZ0aGlzLnh1LmtleShoKT09PXRoaXMueHUua2V5KG4pO3IuR00uc2V0KHQsYykscz90aGlzLl9nKHQsYyxyLiRuKTpmJiZ0Lk5hKCkmJnRlKGMpPyh0LlJyKGMpLHRoaXMudWcodCxjKSk6dGhpcy51Zyh0LGMpO2NvbnN0IGQ9e0lhOnRlKGMpLGxnOnN9O2lmKCFvKXJldHVybiB0aGlzLmFnKHQsLTEsZCk7Y29uc3QgbT17dGltZVdlaWdodDowLHRpbWU6ci56YSxwb2ludERhdGE6cixvcmlnaW5hbFRpbWU6cmUoci5HTSl9LHA9TnQodGhpcy5uZyx0aGlzLnh1LmtleShtLnRpbWUpLCgodCxpKT0+dGhpcy54dS5rZXkodC50aW1lKTxpKSk7dGhpcy5uZy5zcGxpY2UocCwwLG0pO2ZvcihsZXQgdD1wO3Q8dGhpcy5uZy5sZW5ndGg7Kyt0KWxlKHRoaXMubmdbdF0ucG9pbnREYXRhLHQpO3JldHVybiB0aGlzLnh1LmZpbGxXZWlnaHRzRm9yUG9pbnRzKHRoaXMubmcscCksdGhpcy5hZyh0LHAsZCl9Y2codCxpKXtjb25zdCBzPXRoaXMudGcuZ2V0KHQpCjtpZih2b2lkIDA9PT1zfHxpPD0wKXJldHVybltbXSx0aGlzLmRnKCldO2k9TWF0aC5taW4oaSxzLmxlbmd0aCk7Y29uc3QgZT1zLnNwbGljZSgtaSkucmV2ZXJzZSgpOzA9PT1zLmxlbmd0aD90aGlzLmlnLmRlbGV0ZSh0KTp0aGlzLmlnLnNldCh0LHNbcy5sZW5ndGgtMV0ud3QpO2Zvcihjb25zdCBpIG9mIGUpe2NvbnN0IHM9dGhpcy5RTS5nZXQodGhpcy54dS5rZXkoaS53dCkpO2lmKHMmJihzLkdNLmRlbGV0ZSh0KSwwPT09cy5HTS5zaXplKSl7dGhpcy5RTS5kZWxldGUodGhpcy54dS5rZXkocy56YSkpLHRoaXMubmcuc3BsaWNlKHMuJG4sMSk7Zm9yKGxldCB0PXMuJG47dDx0aGlzLm5nLmxlbmd0aDsrK3QpbGUodGhpcy5uZ1t0XS5wb2ludERhdGEsdCl9fXJldHVybltlLHRoaXMuYWcodCx0aGlzLm5nLmxlbmd0aC0xLHtsZzohMSxJYTohMX0pXX11Zyh0LGkpe2xldCBzPXRoaXMudGcuZ2V0KHQpO3ZvaWQgMD09PXMmJihzPVtdLHRoaXMudGcuc2V0KHQscykpO2NvbnN0IGU9MCE9PXMubGVuZ3RoP3Nbcy5sZW5ndGgtMV06bnVsbDtudWxsPT09ZXx8dGhpcy54dS5rZXkoaS53dCk+dGhpcy54dS5rZXkoZS53dCk/dGUoaSkmJnMucHVzaChpKTp0ZShpKT9zW3MubGVuZ3RoLTFdPWk6cy5zcGxpY2UoLTEsMSksdGhpcy5pZy5zZXQodCxpLnd0KX1fZyh0LGkscyl7Y29uc3QgZT10aGlzLnRnLmdldCh0KTtpZih2b2lkIDA9PT1lKXJldHVybjtjb25zdCBoPU50KGUscywoKHQsaSk9PnQuJG48aSkpO3RlKGkpP2VbaF09aTplLnNwbGljZShoLDEpfXJnKHQsaSl7MCE9PWkubGVuZ3RoPyh0aGlzLnRnLnNldCh0LGkuZmlsdGVyKHRlKSksdGhpcy5pZy5zZXQodCxpW2kubGVuZ3RoLTFdLnd0KSk6KHRoaXMudGcuZGVsZXRlKHQpLHRoaXMuaWcuZGVsZXRlKHQpKX1lZygpe2Zvcihjb25zdCB0IG9mIHRoaXMubmcpMD09PXQucG9pbnREYXRhLkdNLnNpemUmJnRoaXMuUU0uZGVsZXRlKHRoaXMueHUua2V5KHQudGltZSkpfWhnKHQpe2xldCBpPS0xO2ZvcihsZXQgcz0wO3M8dGhpcy5uZy5sZW5ndGgmJnM8dC5sZW5ndGg7KytzKXtjb25zdCBlPXRoaXMubmdbc10saD10W3NdO2lmKHRoaXMueHUua2V5KGUudGltZSkhPT10aGlzLnh1LmtleShoLnRpbWUpKXtpPXM7YnJlYWt9aC50aW1lV2VpZ2h0PWUudGltZVdlaWdodCxsZShoLnBvaW50RGF0YSxzKX1pZigtMT09PWkmJnRoaXMubmcubGVuZ3RoIT09dC5sZW5ndGgmJihpPU1hdGgubWluKHRoaXMubmcubGVuZ3RoLHQubGVuZ3RoKSksLTE9PT1pKXJldHVybi0xO2ZvcihsZXQgcz1pO3M8dC5sZW5ndGg7KytzKWxlKHRbc10ucG9pbnREYXRhLHMpO3JldHVybiB0aGlzLnh1LmZpbGxXZWlnaHRzRm9yUG9pbnRzKHQsaSksdGhpcy5uZz10LGl9ZmcoKXtpZigwPT09dGhpcy50Zy5zaXplKXJldHVybiBudWxsO2xldCB0PTA7cmV0dXJuIHRoaXMudGcuZm9yRWFjaCgoaT0+ezAhPT1pLmxlbmd0aCYmKHQ9TWF0aC5tYXgodCxpW2kubGVuZ3RoLTFdLiRuKSl9KSksdH1hZyh0LGkscyl7Y29uc3QgZT10aGlzLmRnKCk7aWYoLTEhPT1pKXRoaXMudGcuZm9yRWFjaCgoKGksaCk9PntlLlVfLnNldChoLHt1ZTppLHBnOmg9PT10P3M6dm9pZCAwfSl9KSksdGhpcy50Zy5oYXModCl8fGUuVV8uc2V0KHQse3VlOltdLHBnOnN9KSxlLkV0LnZnPXRoaXMubmcsZS5FdC5tZz1pO2Vsc2V7Y29uc3QgaT10aGlzLnRnLmdldCh0KTtlLlVfLnNldCh0LHt1ZTppfHxbXSxwZzpzfSl9cmV0dXJuIGV9ZGcoKXtyZXR1cm57VV86bmV3IE1hcCxFdDp7UGM6dGhpcy5mZygpfX19fWZ1bmN0aW9uIGxlKHQsaSl7dC4kbj1pLHQuR00uZm9yRWFjaCgodD0+e3QuJG49aX0pKX1mdW5jdGlvbiBhZSh0LGkpe3JldHVybiB0Ll90PGl9ZnVuY3Rpb24gdWUodCxpKXtyZXR1cm4gaTx0Ll90fWZ1bmN0aW9uIGNlKHQsaSxzLGUpe3JldHVybiBOdCh0LGksYWUscyxlKX1mdW5jdGlvbiBmZSh0LGkscyxlKXtyZXR1cm4gVHQodCxpLHVlLHMsZSl9ZnVuY3Rpb24gZGUodCxpLHMpe3JldHVybntuZTp0LHNlOmksZWU6c319ZnVuY3Rpb24gbWUodCxpLHMsZSl7cmV0dXJuIHQ+PWktZSYmdDw9cytlfWZ1bmN0aW9uIHBlKHQsaSxzLGUsaCxuKXtjb25zdCByPWgtcyxvPW4tZTtpZigwPT09ciYmMD09PW8pcmV0dXJuIE1hdGguaHlwb3QodC1zLGktZSk7Y29uc3QgbD0oKHQtcykqcisoaS1lKSpvKS8ocipyK28qbyksYT1NYXRoLm1heCgwLE1hdGgubWluKDEsbCkpLHU9cytyKmEsYz1lK28qYTtyZXR1cm4gTWF0aC5oeXBvdCh0LXUsaS1jKX1jb25zdCBnZT1bMCwwXTtmdW5jdGlvbiB2ZSh0LGkscyl7cmV0dXJuIHZvaWQgMD09PWl8fGkud3QhPT10Lnd0LTE/dC5fdC1zLzI6KGkuX3QrdC5fdCkvMn1mdW5jdGlvbiBiZSh0LGkscyl7cmV0dXJuIHZvaWQgMD09PWl8fGkud3QhPT10Lnd0KzE/dC5fdCtzLzI6KHQuX3QraS5fdCkvMn1mdW5jdGlvbiB3ZSh0LGkscyxlLGgsbixyKXtpZihudWxsPT09aXx8aS5mcm9tPj1pLnRvfHwwPT09dC5sZW5ndGgpcmV0dXJuIG51bGw7Y29uc3Qgbz1oLzIrbixsPWNlKHQscy1vLGkuZnJvbSxpLnRvKSxhPWZlKHQscytvLGwsaS50byk7aWYobD49YSlyZXR1cm4gbnVsbDtsZXQgdT1OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7Zm9yKGxldCBvPWw7bzxhO28rKyl7Y29uc3QgbD10W29dLGE9bz5pLmZyb20/dFtvLTFdOnZvaWQgMCxjPW88aS50by0xP3RbbysxXTp2b2lkIDAsZj12ZShsLGEsaCktbixkPWJlKGwsYyxoKStuO2lmKHM8Znx8cz5kKWNvbnRpbnVlO3IobCxnZSk7Y29uc3QgbT1nZVswXSxwPWdlWzFdLGc9TWF0aC5taW4obSxwKSx2PU1hdGgubWF4KG0scCksYj1nLW4sdz12K247aWYoZT49ZyYmZTw9dil1PU1hdGgubWluKHUsMCk7ZWxzZSBpZihlPj1iJiZlPD13KXtjb25zdCB0PU1hdGgubWluKE1hdGguYWJzKGUtZyksTWF0aC5hYnModi1lKSk7dT1NYXRoLm1pbih1LHQpfX1yZXR1cm4gTnVtYmVyLmlzRmluaXRlKHUpP2RlKHUsMCwic2VyaWVzLXJhbmdlIik6bnVsbH1mdW5jdGlvbiBNZSh0LGkpe3JldHVybiB0Lnd0PGl9ZnVuY3Rpb24geWUodCxpKXtyZXR1cm4gaTx0Lnd0fWZ1bmN0aW9uIHhlKHQsaSxzKXsKY29uc3QgZT1pLk9hKCksaD1pLmJpKCksbj1OdCh0LGUsTWUpLHI9VHQodCxoLHllKTtpZighcylyZXR1cm57ZnJvbTpuLHRvOnJ9O2xldCBvPW4sbD1yO3JldHVybiBuPjAmJm48dC5sZW5ndGgmJnRbbl0ud3Q+PWUmJihvPW4tMSkscj4wJiZyPHQubGVuZ3RoJiZ0W3ItMV0ud3Q8PWgmJihsPXIrMSkse2Zyb206byx0bzpsfX1jbGFzcyBTZXtjb25zdHJ1Y3Rvcih0LGkscyl7dGhpcy53Zz0hMCx0aGlzLk1nPSEwLHRoaXMuZ2c9ITAsdGhpcy5iZz1bXSx0aGlzLlNnPW51bGwsdGhpcy54Zz0tMSx0aGlzLmFlPXQsdGhpcy5sZT1pLHRoaXMuQ2c9c31rdCh0KXt0aGlzLndnPSEwLCJkYXRhIj09PXQmJih0aGlzLk1nPSEwKSwib3B0aW9ucyI9PT10JiYodGhpcy5nZz0hMCl9VHQoKXtyZXR1cm4gdGhpcy5hZS5JdCgpPyh0aGlzLnlnKCksbnVsbD09PXRoaXMuU2c/bnVsbDp0aGlzLmtnKTpudWxsfVFzKHQsaSl7cmV0dXJuIHRoaXMuYWUuSXQoKT8odGhpcy55ZygpLG51bGw9PT10aGlzLlNnP251bGw6dGhpcy5QZyh0LGkpKTpudWxsfVBnKHQsaSl7cmV0dXJuIG51bGx9VGcoKXt0aGlzLmJnPXRoaXMuYmcubWFwKCh0PT4oey4uLnQsLi4udGhpcy5hZS5TYSgpLlNoKHQud3QpfSkpKX1SZygpe3RoaXMuU2c9bnVsbH15Zygpe2NvbnN0IHQ9dGhpcy5sZS5FdCgpLGk9dC5OKCkuZW5hYmxlQ29uZmxhdGlvbj90LlFjKCk6MDtpIT09dGhpcy54ZyYmKHRoaXMuTWc9ITAsdGhpcy54Zz1pKSx0aGlzLk1nJiYodGhpcy5EZygpLHRoaXMuTWc9ITEpLHRoaXMuZ2cmJih0aGlzLlRnKCksdGhpcy5nZz0hMSksdGhpcy53ZyYmKHRoaXMuSWcoKSx0aGlzLndnPSExKX1JZygpe2NvbnN0IHQ9dGhpcy5hZS5GdCgpLGk9dGhpcy5sZS5FdCgpO2lmKHRoaXMuUmcoKSxpLkdpKCl8fHQuR2koKSlyZXR1cm47Y29uc3Qgcz1pLkVlKCk7aWYobnVsbD09PXMpcmV0dXJuO2lmKDA9PT10aGlzLmFlLlVuKCkuVGgoKSlyZXR1cm47Y29uc3QgZT10aGlzLmFlLkx0KCk7bnVsbCE9PWUmJih0aGlzLlNnPXhlKHRoaXMuYmcscyx0aGlzLkNnKSx0aGlzLlZnKHQsaSxlLld0KSx0aGlzLkJnKCkpfX1jbGFzcyBDZXtjb25zdHJ1Y3Rvcih0LGkpe3RoaXMuRWc9dCx0aGlzLktpPWl9c3QodCxpLHMpe3RoaXMuRWcuZHJhdyh0LHRoaXMuS2ksaSxzKX19ZnVuY3Rpb24gX2UodCl7c3dpdGNoKHQpe2Nhc2UicG9pbnQiOnJldHVybiAyO2Nhc2UicmFuZ2UiOnJldHVybiAwO2RlZmF1bHQ6cmV0dXJuIDF9fWNsYXNzIGtlIGV4dGVuZHMgU2V7Y29uc3RydWN0b3IodCxpLHMpe3N1cGVyKHQsaSwhMSksdGhpcy5ZaD1zLHRoaXMuRWc9dGhpcy5ZaC5yZW5kZXJlcigpLHRoaXMua2c9bmV3IENlKHRoaXMuRWcsKHQ9PnRoaXMuQWcodCkpKX1nZXQgZ2EoKXtyZXR1cm4gdGhpcy5ZaC5jb25mbGF0aW9uUmVkdWNlcn1XYSh0KXtyZXR1cm4gdGhpcy5ZaC5wcmljZVZhbHVlQnVpbGRlcih0KX1fbCh0KXtyZXR1cm4gdGhpcy5ZaC5pc1doaXRlc3BhY2UodCl9UGcodCxpKXtjb25zdCBzPXRoaXMuRWcuaGl0VGVzdD8uKHQsaSwodD0+dGhpcy5BZyh0KSkpO2lmKG51bGwhPXMpcmV0dXJue25lOihlPXMpLmRpc3RhbmNlLHNlOl9lKGUudHlwZSksZWU6ImN1c3RvbSIsbXU6ZS5jdXJzb3JTdHlsZSx0ZTplLm9iamVjdElkLGllOmUuaGl0VGVzdERhdGF9O3ZhciBlO2NvbnN0IGg9d2UodGhpcy5iZyx0aGlzLlNnLHQsaSx0aGlzLmxlLkV0KCkuZmwoKSx0aGlzLmFlLk4oKS5oaXRUZXN0VG9sZXJhbmNlLCgodCxpKT0+e2NvbnN0IHM9dC5MZztsZXQgZT1OYU4saD1OYU47aWYodm9pZCAwIT09cyYmIXRoaXMuWWguaXNXaGl0ZXNwYWNlKHMpKWZvcihjb25zdCB0IG9mIHRoaXMuWWgucHJpY2VWYWx1ZUJ1aWxkZXIocykpe2NvbnN0IGk9dGhpcy5BZyh0KTtudWxsIT09aSYmKGU9TnVtYmVyLmlzTmFOKGUpP2k6TWF0aC5taW4oZSxpKSxoPU51bWJlci5pc05hTihoKT9pOk1hdGgubWF4KGgsaSkpfWlbMF09ZSxpWzFdPWh9KSk7cmV0dXJuIG51bGw9PT1oP251bGw6ey4uLmgsZWU6ImN1c3RvbSJ9fURnKCl7Y29uc3QgdD10aGlzLmFlLlNhKCk7dGhpcy5iZz10aGlzLmFlLkhhKCkuQmgoKS5tYXAoKGk9Pih7d3Q6aS4kbixfdDpOYU4sLi4udC5TaChpLiRuKSxMZzppLnVlfSkpKX1WZyh0LGkpe2kuVGModGhpcy5iZyx4KHRoaXMuU2cpKX1CZygpe3RoaXMuWWgudXBkYXRlKHtiYXJzOnRoaXMuYmcubWFwKEVlKSxiYXJTcGFjaW5nOnRoaXMubGUuRXQoKS5mbCgpLHZpc2libGVSYW5nZTp0aGlzLlNnLGNvbmZsYXRpb25GYWN0b3I6dGhpcy5sZS5FdCgpLlFjKCl9LHRoaXMuYWUuTigpKX1BZyh0KXtjb25zdCBpPXRoaXMuYWUuTHQoKTtyZXR1cm4gbnVsbD09PWk/bnVsbDp0aGlzLmFlLkZ0KCkuTnQodCxpLld0KX19ZnVuY3Rpb24gRWUodCl7cmV0dXJue3g6dC5fdCx0aW1lOnQud3Qsb3JpZ2luYWxEYXRhOnQuTGcsYmFyQ29sb3I6dC5zaH19Y29uc3QgTmU9e2NvbG9yOiIjMjE5NmYzIn0sVGU9KHQsaSxzKT0+e2NvbnN0IGU9ZChzKTtyZXR1cm4gbmV3IGtlKHQsaSxlKX07ZnVuY3Rpb24gemUodCl7Y29uc3QgaT17dmFsdWU6dC5XdFszXSx0aW1lOnQuUXJ9O3JldHVybiB2b2lkIDAhPT10LlpNJiYoaS5jdXN0b21WYWx1ZXM9dC5aTSksaX1mdW5jdGlvbiBJZSh0KXtjb25zdCBpPXplKHQpO3JldHVybiB2b2lkIDAhPT10LlImJihpLmNvbG9yPXQuUiksaX1mdW5jdGlvbiBQZSh0KXtjb25zdCBpPXplKHQpO3JldHVybiB2b2lkIDAhPT10LnZ0JiYoaS5saW5lQ29sb3I9dC52dCksdm9pZCAwIT09dC5haCYmKGkudG9wQ29sb3I9dC5haCksdm9pZCAwIT09dC5vaCYmKGkuYm90dG9tQ29sb3I9dC5vaCksaX1mdW5jdGlvbiBSZSh0KXtjb25zdCBpPXplKHQpO3JldHVybiB2b2lkIDAhPT10Ll9oJiYoaS50b3BMaW5lQ29sb3I9dC5faCksdm9pZCAwIT09dC51aCYmKGkuYm90dG9tTGluZUNvbG9yPXQudWgpLHZvaWQgMCE9PXQuZGgmJihpLnRvcEZpbGxDb2xvcjE9dC5kaCksdm9pZCAwIT09dC5maCYmKGkudG9wRmlsbENvbG9yMj10LmZoKSx2b2lkIDAhPT10LnBoJiYoaS5ib3R0b21GaWxsQ29sb3IxPXQucGgpLAp2b2lkIDAhPT10Lm1oJiYoaS5ib3R0b21GaWxsQ29sb3IyPXQubWgpLGl9ZnVuY3Rpb24gTGUodCl7Y29uc3QgaT17b3Blbjp0Lld0WzBdLGhpZ2g6dC5XdFsxXSxsb3c6dC5XdFsyXSxjbG9zZTp0Lld0WzNdLHRpbWU6dC5Rcn07cmV0dXJuIHZvaWQgMCE9PXQuWk0mJihpLmN1c3RvbVZhbHVlcz10LlpNKSxpfWZ1bmN0aW9uIEZlKHQpe2NvbnN0IGk9TGUodCk7cmV0dXJuIHZvaWQgMCE9PXQuUiYmKGkuY29sb3I9dC5SKSxpfWZ1bmN0aW9uIHFlKHQpe2NvbnN0IGk9TGUodCkse1I6cyxIdDplLGhoOmh9PXQ7cmV0dXJuIHZvaWQgMCE9PXMmJihpLmNvbG9yPXMpLHZvaWQgMCE9PWUmJihpLmJvcmRlckNvbG9yPWUpLHZvaWQgMCE9PWgmJihpLndpY2tDb2xvcj1oKSxpfWZ1bmN0aW9uIFdlKHQpe3JldHVybntBcmVhOlBlLExpbmU6SWUsQmFzZWxpbmU6UmUsSGlzdG9ncmFtOkllLEJhcjpGZSxDYW5kbGVzdGljazpxZSxDdXN0b206UWV9W3RdfWZ1bmN0aW9uIFFlKHQpe2NvbnN0IGk9dC5RcjtyZXR1cm57Li4udC51ZSx0aW1lOml9fWNvbnN0IERlPXt2ZXJ0TGluZTp7Y29sb3I6IiM5NTk4QTEiLHdpZHRoOjEsc3R5bGU6Myx2aXNpYmxlOiEwLGxhYmVsVmlzaWJsZTohMCxsYWJlbEJhY2tncm91bmRDb2xvcjoiIzEzMTcyMiJ9LGhvcnpMaW5lOntjb2xvcjoiIzk1OThBMSIsd2lkdGg6MSxzdHlsZTozLHZpc2libGU6ITAsbGFiZWxWaXNpYmxlOiEwLGxhYmVsQmFja2dyb3VuZENvbG9yOiIjMTMxNzIyIn0sbW9kZToxLGRvTm90U25hcFRvSGlkZGVuU2VyaWVzSW5kaWNlczohMX0sS2U9e3ZlcnRMaW5lczp7Y29sb3I6IiNENkRDREUiLHN0eWxlOjAsdmlzaWJsZTohMH0saG9yekxpbmVzOntjb2xvcjoiI0Q2RENERSIsc3R5bGU6MCx2aXNpYmxlOiEwfX0sT2U9e2JhY2tncm91bmQ6e3R5cGU6InNvbGlkIixjb2xvcjoiI0ZGRkZGRiJ9LHRleHRDb2xvcjoiIzE5MTkxOSIsZm9udFNpemU6MTIsZm9udEZhbWlseTpTLHBhbmVzOntlbmFibGVSZXNpemU6ITAsc2VwYXJhdG9yQ29sb3I6IiNFMEUzRUIiLHNlcGFyYXRvckhvdmVyQ29sb3I6InJnYmEoMTc4LCAxODEsIDE4OSwgMC4yKSJ9LGF0dHJpYnV0aW9uTG9nbzohMCxjb2xvclNwYWNlOiJzcmdiIixjb2xvclBhcnNlcnM6W119LFZlPXthdXRvU2NhbGU6ITAsbW9kZTowLGludmVydFNjYWxlOiExLGFsaWduTGFiZWxzOiEwLGJvcmRlclZpc2libGU6ITAsYm9yZGVyQ29sb3I6IiMyQjJCNDMiLGVudGlyZVRleHRPbmx5OiExLHZpc2libGU6ITEsdGlja3NWaXNpYmxlOiExLHNjYWxlTWFyZ2luczp7Ym90dG9tOi4xLHRvcDouMn0sbWluaW11bVdpZHRoOjAsZW5zdXJlRWRnZVRpY2tNYXJrc1Zpc2libGU6ITEsdGlja01hcmtEZW5zaXR5OjIuNX0sQmU9e3JpZ2h0T2Zmc2V0OjAsYmFyU3BhY2luZzo2LG1pbkJhclNwYWNpbmc6LjUsbWF4QmFyU3BhY2luZzowLGZpeExlZnRFZGdlOiExLGZpeFJpZ2h0RWRnZTohMSxsb2NrVmlzaWJsZVRpbWVSYW5nZU9uUmVzaXplOiExLHJpZ2h0QmFyU3RheXNPblNjcm9sbDohMSxib3JkZXJWaXNpYmxlOiEwLGJvcmRlckNvbG9yOiIjMkIyQjQzIix2aXNpYmxlOiEwLHRpbWVWaXNpYmxlOiExLHNlY29uZHNWaXNpYmxlOiEwLHNoaWZ0VmlzaWJsZVJhbmdlT25OZXdCYXI6ITAsYWxsb3dTaGlmdFZpc2libGVSYW5nZU9uV2hpdGVzcGFjZVJlcGxhY2VtZW50OiExLHRpY2tzVmlzaWJsZTohMSx1bmlmb3JtRGlzdHJpYnV0aW9uOiExLG1pbmltdW1IZWlnaHQ6MCxhbGxvd0JvbGRMYWJlbHM6ITAsaWdub3JlV2hpdGVzcGFjZUluZGljZXM6ITEsZW5hYmxlQ29uZmxhdGlvbjohMSxjb25mbGF0aW9uVGhyZXNob2xkRmFjdG9yOjEscHJlY29tcHV0ZUNvbmZsYXRpb25PbkluaXQ6ITEscHJlY29tcHV0ZUNvbmZsYXRpb25Qcmlvcml0eToiYmFja2dyb3VuZCJ9O2Z1bmN0aW9uICRlKCl7cmV0dXJue2FkZERlZmF1bHRQYW5lOiEwLGhvdmVyZWRTZXJpZXNPblRvcDohMCx3aWR0aDowLGhlaWdodDowLGF1dG9TaXplOiExLGxheW91dDpPZSxjcm9zc2hhaXI6RGUsZ3JpZDpLZSxvdmVybGF5UHJpY2VTY2FsZXM6ey4uLlZlfSxsZWZ0UHJpY2VTY2FsZTp7Li4uVmUsdmlzaWJsZTohMX0scmlnaHRQcmljZVNjYWxlOnsuLi5WZSx2aXNpYmxlOiEwfSxkZWZhdWx0VmlzaWJsZVByaWNlU2NhbGVJZDoicmlnaHQiLHRpbWVTY2FsZTpCZSxsb2NhbGl6YXRpb246e2xvY2FsZTpscz9uYXZpZ2F0b3IubGFuZ3VhZ2U6IiIsZGF0ZUZvcm1hdDoiZGQgTU1NICd5eSJ9LGhhbmRsZVNjcm9sbDp7bW91c2VXaGVlbDohMCxwcmVzc2VkTW91c2VNb3ZlOiEwLGhvcnpUb3VjaERyYWc6ITAsdmVydFRvdWNoRHJhZzohMH0saGFuZGxlU2NhbGU6e2F4aXNQcmVzc2VkTW91c2VNb3ZlOnt0aW1lOiEwLHByaWNlOiEwfSxheGlzRG91YmxlQ2xpY2tSZXNldDp7dGltZTohMCxwcmljZTohMH0sbW91c2VXaGVlbDohMCxwaW5jaDohMH0sa2luZXRpY1Njcm9sbDp7bW91c2U6ITEsdG91Y2g6ITB9LHRyYWNraW5nTW9kZTp7ZXhpdE1vZGU6MX19fWNsYXNzIEFle2NvbnN0cnVjdG9yKHQsaSxzKXt0aGlzLnN2PXQsdGhpcy56Zz1pLHRoaXMuT2c9cz8/MH1hcHBseU9wdGlvbnModCl7dGhpcy5zdi5RdCgpLlBkKHRoaXMuemcsdCx0aGlzLk9nKX1vcHRpb25zKCl7cmV0dXJuIHRoaXMuS2koKS5OKCl9d2lkdGgoKXtyZXR1cm4gaih0aGlzLnpnKT90aGlzLnN2LkNNKHRoaXMuemcpOjB9c2V0VmlzaWJsZVJhbmdlKHQpe3RoaXMuc2V0QXV0b1NjYWxlKCExKSx0aGlzLktpKCkucW8obmV3IHZ0KHQuZnJvbSx0LnRvKSl9Z2V0VmlzaWJsZVJhbmdlKCl7bGV0IHQsaSxzPXRoaXMuS2koKS5hcigpO2lmKG51bGw9PT1zKXJldHVybiBudWxsO2lmKHRoaXMuS2koKS5zbygpKXtjb25zdCBlPXRoaXMuS2koKS5NXygpLGg9QWkoZSk7cz1taShzLHRoaXMuS2koKS5ybygpKSx0PU51bWJlcigoTWF0aC5yb3VuZChzLkplKCkvZSkqZSkudG9GaXhlZChoKSksaT1OdW1iZXIoKE1hdGgucm91bmQocy5RZSgpL2UpKmUpLnRvRml4ZWQoaCkpfWVsc2UgdD1zLkplKCksaT1zLlFlKCk7cmV0dXJue2Zyb206dCx0bzppfX1zZXRBdXRvU2NhbGUodCl7dGhpcy5hcHBseU9wdGlvbnMoewphdXRvU2NhbGU6dH0pfUtpKCl7cmV0dXJuIGYodGhpcy5zdi5RdCgpLlRkKHRoaXMuemcsdGhpcy5PZykpLkZ0fX1jbGFzcyBaZXtjb25zdHJ1Y3Rvcih0LGkscyxlKXt0aGlzLnN2PXQsdGhpcy55dD1zLHRoaXMuTmc9aSx0aGlzLkZnPWV9Z2V0SGVpZ2h0KCl7cmV0dXJuIHRoaXMueXQuJHQoKX1zZXRIZWlnaHQodCl7Y29uc3QgaT10aGlzLnN2LlF0KCkscz1pLmhmKHRoaXMueXQpO2kuQmQocyx0KX1nZXRTdHJldGNoRmFjdG9yKCl7cmV0dXJuIHRoaXMueXQuel8oKX1zZXRTdHJldGNoRmFjdG9yKHQpe3RoaXMueXQuT18odCksdGhpcy5zdi5RdCgpLlBhKCl9cGFuZUluZGV4KCl7cmV0dXJuIHRoaXMuc3YuUXQoKS5oZih0aGlzLnl0KX1tb3ZlVG8odCl7Y29uc3QgaT10aGlzLnBhbmVJbmRleCgpO2khPT10JiYodSh0Pj0wJiZ0PHRoaXMuc3YucnYoKS5sZW5ndGgsIkludmFsaWQgcGFuZSBpbmRleCIpLHRoaXMuc3YuUXQoKS5BZChpLHQpKX1nZXRTZXJpZXMoKXtyZXR1cm4gdGhpcy55dC5VXygpLm1hcCgodD0+dGhpcy5OZyh0KSkpPz9bXX1nZXRIVE1MRWxlbWVudCgpe2NvbnN0IHQ9dGhpcy5zdi5ydigpO3JldHVybiB0JiYwIT09dC5sZW5ndGgmJnRbdGhpcy5wYW5lSW5kZXgoKV0/dFt0aGlzLnBhbmVJbmRleCgpXS51digpOm51bGx9YXR0YWNoUHJpbWl0aXZlKHQpe3RoaXMueXQuaGwodCksdC5hdHRhY2hlZCYmdC5hdHRhY2hlZCh7Y2hhcnQ6dGhpcy5GZyxyZXF1ZXN0VXBkYXRlOigpPT50aGlzLnl0LlF0KCkuUGEoKX0pfWRldGFjaFByaW1pdGl2ZSh0KXt0aGlzLnl0LmFsKHQpfXByaWNlU2NhbGUodCl7aWYobnVsbD09PXRoaXMueXQuQV8odCkpdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBwcmljZSBzY2FsZSB3aXRoIGlkOiAke3R9YCk7cmV0dXJuIG5ldyBBZSh0aGlzLnN2LHQsdGhpcy5wYW5lSW5kZXgoKSl9c2V0UHJlc2VydmVFbXB0eVBhbmUodCl7dGhpcy55dC5XXyh0KX1wcmVzZXJ2ZUVtcHR5UGFuZSgpe3JldHVybiB0aGlzLnl0LkhfKCl9YWRkQ3VzdG9tU2VyaWVzKHQsaT17fSxzPTApe3JldHVybiB0aGlzLkZnLmFkZEN1c3RvbVNlcmllcyh0LGkscyl9YWRkU2VyaWVzKHQsaT17fSl7cmV0dXJuIHRoaXMuRmcuYWRkU2VyaWVzKHQsaSx0aGlzLnBhbmVJbmRleCgpKX19Y29uc3QgSGU9e2NvbG9yOiIjRkYwMDAwIixwcmljZTowLGxpbmVTdHlsZToyLGxpbmVXaWR0aDoxLGxpbmVWaXNpYmxlOiEwLGF4aXNMYWJlbFZpc2libGU6ITAsdGl0bGU6IiIsYXhpc0xhYmVsQ29sb3I6IiIsYXhpc0xhYmVsVGV4dENvbG9yOiIifTtjbGFzcyBHZXtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9yPXR9YXBwbHlPcHRpb25zKHQpe3RoaXMuX3IudnIodCl9b3B0aW9ucygpe3JldHVybiB0aGlzLl9yLk4oKX1XZygpe3JldHVybiB0aGlzLl9yfX1jbGFzcyBVZXtjb25zdHJ1Y3Rvcih0LGkscyxlLGgsbil7dGhpcy5IZz1uZXcgbSx0aGlzLmFlPXQsdGhpcy5VZz1pLHRoaXMuJGc9cyx0aGlzLnh1PWgsdGhpcy5GZz1lLHRoaXMuamc9bn1tKCl7dGhpcy5IZy5tKCl9cHJpY2VGb3JtYXR0ZXIoKXtyZXR1cm4gdGhpcy5hZS50bCgpfXByaWNlVG9Db29yZGluYXRlKHQpe2NvbnN0IGk9dGhpcy5hZS5MdCgpO3JldHVybiBudWxsPT09aT9udWxsOnRoaXMuYWUuRnQoKS5OdCh0LGkuV3QpfWNvb3JkaW5hdGVUb1ByaWNlKHQpe2NvbnN0IGk9dGhpcy5hZS5MdCgpO3JldHVybiBudWxsPT09aT9udWxsOnRoaXMuYWUuRnQoKS5Ubih0LGkuV3QpfWJhcnNJbkxvZ2ljYWxSYW5nZSh0KXtpZihudWxsPT09dClyZXR1cm4gbnVsbDtjb25zdCBpPW5ldyBxaShuZXcgUmkodC5mcm9tLHQudG8pKS5GdSgpLHM9dGhpcy5hZS5VbigpO2lmKHMuR2koKSlyZXR1cm4gbnVsbDtjb25zdCBlPXMuSG4oaS5PYSgpLDEpLGg9cy5IbihpLmJpKCksLTEpLG49ZihzLlJoKCkpLHI9ZihzLlFuKCkpO2lmKG51bGwhPT1lJiZudWxsIT09aCYmZS4kbj5oLiRuKXJldHVybntiYXJzQmVmb3JlOnQuZnJvbS1uLGJhcnNBZnRlcjpyLXQudG99O2NvbnN0IG89e2JhcnNCZWZvcmU6bnVsbD09PWV8fGUuJG49PT1uP3QuZnJvbS1uOmUuJG4tbixiYXJzQWZ0ZXI6bnVsbD09PWh8fGguJG49PT1yP3ItdC50bzpyLWguJG59O3JldHVybiBudWxsIT09ZSYmbnVsbCE9PWgmJihvLmZyb209ZS5RcixvLnRvPWguUXIpLG99c2V0RGF0YSh0KXt0aGlzLnh1LHRoaXMuYWUuYmgoKSx0aGlzLlVnLnFnKHRoaXMuYWUsdCksdGhpcy5ZZygiZnVsbCIpfXVwZGF0ZSh0LGk9ITEpe3RoaXMuYWUuYmgoKSx0aGlzLlVnLktnKHRoaXMuYWUsdCxpKSx0aGlzLllnKCJ1cGRhdGUiKX1wb3AodD0xKXtjb25zdCBpPXRoaXMuVWcuWmcodGhpcy5hZSx0KTswIT09aS5sZW5ndGgmJnRoaXMuWWcoInVwZGF0ZSIpO2NvbnN0IHM9V2UodGhpcy5zZXJpZXNUeXBlKCkpO3JldHVybiBpLm1hcCgodD0+cyh0KSkpfWRhdGFCeUluZGV4KHQsaSl7Y29uc3Qgcz10aGlzLmFlLlVuKCkuSG4odCxpKTtyZXR1cm4gbnVsbD09PXM/bnVsbDpXZSh0aGlzLnNlcmllc1R5cGUoKSkocyl9ZGF0YSgpe2NvbnN0IHQ9V2UodGhpcy5zZXJpZXNUeXBlKCkpO3JldHVybiB0aGlzLmFlLlVuKCkuQmgoKS5tYXAoKGk9PnQoaSkpKX1zdWJzY3JpYmVEYXRhQ2hhbmdlZCh0KXt0aGlzLkhnLmkodCl9dW5zdWJzY3JpYmVEYXRhQ2hhbmdlZCh0KXt0aGlzLkhnLl8odCl9YXBwbHlPcHRpb25zKHQpe3RoaXMuYWUudnIodCl9b3B0aW9ucygpe3JldHVybiBNKHRoaXMuYWUuTigpKX1wcmljZVNjYWxlKCl7cmV0dXJuIHRoaXMuJGcucHJpY2VTY2FsZSh0aGlzLmFlLkZ0KCkuY2woKSx0aGlzLmdldFBhbmUoKS5wYW5lSW5kZXgoKSl9Y3JlYXRlUHJpY2VMaW5lKHQpe2NvbnN0IGk9cChNKEhlKSx0KSxzPXRoaXMuYWUuQmEoaSk7cmV0dXJuIG5ldyBHZShzKX1yZW1vdmVQcmljZUxpbmUodCl7dGhpcy5hZS5FYSh0LldnKCkpfXByaWNlTGluZXMoKXtyZXR1cm4gdGhpcy5hZS5BYSgpLm1hcCgodD0+bmV3IEdlKHQpKSl9c2VyaWVzVHlwZSgpe3JldHVybiB0aGlzLmFlLmJoKCl9bGFzdFZhbHVlRGF0YSh0KXtjb25zdCBpPXRoaXMuYWUuQWUodCk7cmV0dXJuIGkuTGU/e25vRGF0YTohMH06ewpub0RhdGE6ITEscHJpY2U6aS5NdCxjb2xvcjppLlJ9fWF0dGFjaFByaW1pdGl2ZSh0KXt0aGlzLmFlLmhsKHQpLHQuYXR0YWNoZWQmJnQuYXR0YWNoZWQoe2NoYXJ0OnRoaXMuRmcsc2VyaWVzOnRoaXMscmVxdWVzdFVwZGF0ZTooKT0+dGhpcy5hZS5RdCgpLlBhKCksaG9yelNjYWxlQmVoYXZpb3I6dGhpcy54dX0pfWRldGFjaFByaW1pdGl2ZSh0KXt0aGlzLmFlLmFsKHQpLHQuZGV0YWNoZWQmJnQuZGV0YWNoZWQoKSx0aGlzLmFlLlF0KCkuUGEoKX1nZXRQYW5lKCl7Y29uc3QgdD10aGlzLmFlLGk9Zih0aGlzLmFlLlF0KCkuS3ModCkpO3JldHVybiB0aGlzLmpnKGkpfW1vdmVUb1BhbmUodCl7dGhpcy5hZS5RdCgpLm5mKHRoaXMuYWUsdCl9c2VyaWVzT3JkZXIoKXtjb25zdCB0PXRoaXMuYWUuUXQoKS5Lcyh0aGlzLmFlKTtyZXR1cm4gbnVsbD09PXQ/LTE6dC5VXygpLmluZGV4T2YodGhpcy5hZSl9c2V0U2VyaWVzT3JkZXIodCl7Y29uc3QgaT10aGlzLmFlLlF0KCkuS3ModGhpcy5hZSk7bnVsbCE9PWkmJmkuZHUodGhpcy5hZSx0KX1ZZyh0KXt0aGlzLkhnLnYoKSYmdGhpcy5IZy5wKHQpfX1jbGFzcyBZZXtjb25zdHJ1Y3Rvcih0LGkscyl7dGhpcy5HZz1uZXcgbSx0aGlzLkd1PW5ldyBtLHRoaXMuQnc9bmV3IG0sdGhpcy5zbj10LHRoaXMuaWE9dC5FdCgpLHRoaXMuX009aSx0aGlzLmlhLlljKCkuaSh0aGlzLlhnLmJpbmQodGhpcykpLHRoaXMuaWEuS2MoKS5pKHRoaXMuSmcuYmluZCh0aGlzKSksdGhpcy5fTS5GdygpLmkodGhpcy5RZy5iaW5kKHRoaXMpKSx0aGlzLnh1PXN9bSgpe3RoaXMuaWEuWWMoKS51KHRoaXMpLHRoaXMuaWEuS2MoKS51KHRoaXMpLHRoaXMuX00uRncoKS51KHRoaXMpLHRoaXMuR2cubSgpLHRoaXMuR3UubSgpLHRoaXMuQncubSgpfXNjcm9sbFBvc2l0aW9uKCl7cmV0dXJuIHRoaXMuaWEuQWMoKX1zY3JvbGxUb1Bvc2l0aW9uKHQsaSl7aT90aGlzLmlhLiRjKHQsMWUzKTp0aGlzLnNuLmdzKHQpfXNjcm9sbFRvUmVhbFRpbWUoKXt0aGlzLmlhLlVjKCl9Z2V0VmlzaWJsZVJhbmdlKCl7Y29uc3QgdD10aGlzLmlhLmdjKCk7cmV0dXJuIG51bGw9PT10P251bGw6e2Zyb206dC5mcm9tLm9yaWdpbmFsVGltZSx0bzp0LnRvLm9yaWdpbmFsVGltZX19c2V0VmlzaWJsZVJhbmdlKHQpe2NvbnN0IGk9e2Zyb206dGhpcy54dS5jb252ZXJ0SG9yekl0ZW1Ub0ludGVybmFsKHQuZnJvbSksdG86dGhpcy54dS5jb252ZXJ0SG9yekl0ZW1Ub0ludGVybmFsKHQudG8pfSxzPXRoaXMuaWEuQ2MoaSk7dGhpcy5zbi50ZihzKX1nZXRWaXNpYmxlTG9naWNhbFJhbmdlKCl7Y29uc3QgdD10aGlzLmlhLk1jKCk7cmV0dXJuIG51bGw9PT10P251bGw6e2Zyb206dC5PYSgpLHRvOnQuYmkoKX19c2V0VmlzaWJsZUxvZ2ljYWxSYW5nZSh0KXt1KHQuZnJvbTw9dC50bywiVGhlIGZyb20gaW5kZXggY2Fubm90IGJlIGFmdGVyIHRoZSB0byBpbmRleC4iKSx0aGlzLnNuLnRmKHQpfXJlc2V0VGltZVNjYWxlKCl7dGhpcy5zbi53cygpfWZpdENvbnRlbnQoKXt0aGlzLnNuLlhjKCl9bG9naWNhbFRvQ29vcmRpbmF0ZSh0KXtjb25zdCBpPXRoaXMuc24uRXQoKTtyZXR1cm4gaS5HaSgpP251bGw6aS5qdCh0KX1jb29yZGluYXRlVG9Mb2dpY2FsKHQpe3JldHVybiB0aGlzLmlhLkdpKCk/bnVsbDp0aGlzLmlhLlJjKHQpfXRpbWVUb0luZGV4KHQsaSl7Y29uc3Qgcz10aGlzLnh1LmNvbnZlcnRIb3J6SXRlbVRvSW50ZXJuYWwodCk7cmV0dXJuIHRoaXMuaWEudmMocyxpKX10aW1lVG9Db29yZGluYXRlKHQpe2NvbnN0IGk9dGhpcy50aW1lVG9JbmRleCh0LCExKTtyZXR1cm4gbnVsbD09PWk/bnVsbDp0aGlzLmlhLmp0KGkpfWNvb3JkaW5hdGVUb1RpbWUodCl7Y29uc3QgaT10aGlzLnNuLkV0KCkscz1pLlJjKHQpLGU9aS5lbihzKTtyZXR1cm4gbnVsbD09PWU/bnVsbDplLm9yaWdpbmFsVGltZX13aWR0aCgpe3JldHVybiB0aGlzLl9NLmN2KCkud2lkdGh9aGVpZ2h0KCl7cmV0dXJuIHRoaXMuX00uY3YoKS5oZWlnaHR9c3Vic2NyaWJlVmlzaWJsZVRpbWVSYW5nZUNoYW5nZSh0KXt0aGlzLkdnLmkodCl9dW5zdWJzY3JpYmVWaXNpYmxlVGltZVJhbmdlQ2hhbmdlKHQpe3RoaXMuR2cuXyh0KX1zdWJzY3JpYmVWaXNpYmxlTG9naWNhbFJhbmdlQ2hhbmdlKHQpe3RoaXMuR3UuaSh0KX11bnN1YnNjcmliZVZpc2libGVMb2dpY2FsUmFuZ2VDaGFuZ2UodCl7dGhpcy5HdS5fKHQpfXN1YnNjcmliZVNpemVDaGFuZ2UodCl7dGhpcy5Cdy5pKHQpfXVuc3Vic2NyaWJlU2l6ZUNoYW5nZSh0KXt0aGlzLkJ3Ll8odCl9YXBwbHlPcHRpb25zKHQpe3RoaXMuaWEudnIodCl9b3B0aW9ucygpe3JldHVybnsuLi5NKHRoaXMuaWEuTigpKSxiYXJTcGFjaW5nOnRoaXMuaWEuZmwoKX19WGcoKXt0aGlzLkdnLnYoKSYmdGhpcy5HZy5wKHRoaXMuZ2V0VmlzaWJsZVJhbmdlKCkpfUpnKCl7dGhpcy5HdS52KCkmJnRoaXMuR3UucCh0aGlzLmdldFZpc2libGVMb2dpY2FsUmFuZ2UoKSl9UWcodCl7dGhpcy5Cdy5wKHQud2lkdGgsdC5oZWlnaHQpfX1mdW5jdGlvbiBqZSh0KXtyZXR1cm4gZnVuY3Rpb24odCl7aWYodyh0LmhhbmRsZVNjYWxlKSl7Y29uc3QgaT10LmhhbmRsZVNjYWxlO3QuaGFuZGxlU2NhbGU9e2F4aXNEb3VibGVDbGlja1Jlc2V0Ont0aW1lOmkscHJpY2U6aX0sYXhpc1ByZXNzZWRNb3VzZU1vdmU6e3RpbWU6aSxwcmljZTppfSxtb3VzZVdoZWVsOmkscGluY2g6aX19ZWxzZSBpZih2b2lkIDAhPT10LmhhbmRsZVNjYWxlKXtjb25zdHtheGlzUHJlc3NlZE1vdXNlTW92ZTppLGF4aXNEb3VibGVDbGlja1Jlc2V0OnN9PXQuaGFuZGxlU2NhbGU7dyhpKSYmKHQuaGFuZGxlU2NhbGUuYXhpc1ByZXNzZWRNb3VzZU1vdmU9e3RpbWU6aSxwcmljZTppfSksdyhzKSYmKHQuaGFuZGxlU2NhbGUuYXhpc0RvdWJsZUNsaWNrUmVzZXQ9e3RpbWU6cyxwcmljZTpzfSl9Y29uc3QgaT10LmhhbmRsZVNjcm9sbDt3KGkpJiYodC5oYW5kbGVTY3JvbGw9e2hvcnpUb3VjaERyYWc6aSx2ZXJ0VG91Y2hEcmFnOmksbW91c2VXaGVlbDppLHByZXNzZWRNb3VzZU1vdmU6aX0pfSh0KSx0fWNsYXNzIFhle2NvbnN0cnVjdG9yKHQsaSxzKXsKdGhpcy50Yj1uZXcgTWFwLHRoaXMuaWI9bmV3IE1hcCx0aGlzLm5iPW5ldyBtLHRoaXMuc2I9bmV3IG0sdGhpcy5lYj1uZXcgbSx0aGlzLm9kPW5ldyBXZWFrTWFwLHRoaXMucmI9bmV3IG9lKGkpO2NvbnN0IGU9dm9pZCAwPT09cz9NKCRlKCkpOnAoTSgkZSgpKSxqZShzKSk7dGhpcy5oYj1pLHRoaXMuc3Y9bmV3ICRzKHQsZSxpKSx0aGlzLnN2LmR3KCkuaSgodD0+e3RoaXMubmIudigpJiZ0aGlzLm5iLnAodGhpcy5hYih0KCkpKX0pLHRoaXMpLHRoaXMuc3YuZncoKS5pKCh0PT57dGhpcy5zYi52KCkmJnRoaXMuc2IucCh0aGlzLmFiKHQoKSkpfSksdGhpcyksdGhpcy5zdi5EZCgpLmkoKHQ9Pnt0aGlzLmViLnYoKSYmdGhpcy5lYi5wKHRoaXMuYWIodCgpKSl9KSx0aGlzKTtjb25zdCBoPXRoaXMuc3YuUXQoKTt0aGlzLmxiPW5ldyBZZShoLHRoaXMuc3YucE0oKSx0aGlzLmhiKX1yZW1vdmUoKXt0aGlzLnN2LmR3KCkudSh0aGlzKSx0aGlzLnN2LmZ3KCkudSh0aGlzKSx0aGlzLnN2LkRkKCkudSh0aGlzKSx0aGlzLmxiLm0oKSx0aGlzLnN2Lm0oKSx0aGlzLnRiLmNsZWFyKCksdGhpcy5pYi5jbGVhcigpLHRoaXMubmIubSgpLHRoaXMuc2IubSgpLHRoaXMuZWIubSgpLHRoaXMucmIubSgpfXJlc2l6ZSh0LGkscyl7dGhpcy5hdXRvU2l6ZUFjdGl2ZSgpfHx0aGlzLnN2LmNNKHQsaSxzKX1hZGRDdXN0b21TZXJpZXModCxpPXt9LHM9MCl7Y29uc3QgZT0odD0+KHt0eXBlOiJDdXN0b20iLGlzQnVpbHRJbjohMSxkZWZhdWx0T3B0aW9uczp7Li4uTmUsLi4udC5kZWZhdWx0T3B0aW9ucygpfSxvYjpUZSxfYjp0fSkpKGQodCkpO3JldHVybiB0aGlzLnViKGUsaSxzKX1hZGRTZXJpZXModCxpPXt9LHM9MCl7cmV0dXJuIHRoaXMudWIodCxpLHMpfXJlbW92ZVNlcmllcyh0KXtjb25zdCBpPWModGhpcy50Yi5nZXQodCkpLHM9dGhpcy5yYi5KZChpKTt0aGlzLnN2LlF0KCkuSmQoaSksdGhpcy5jYihzKSx0aGlzLnRiLmRlbGV0ZSh0KSx0aGlzLmliLmRlbGV0ZShpKX1xZyh0LGkpe3RoaXMuY2IodGhpcy5yYi5zZyh0LGkpKX1LZyh0LGkscyl7dGhpcy5jYih0aGlzLnJiLm9nKHQsaSxzKSl9WmcodCxpKXtjb25zdFtzLGVdPXRoaXMucmIuY2codCxpKTtyZXR1cm4gMCE9PXMubGVuZ3RoJiZ0aGlzLmNiKGUpLHN9c3Vic2NyaWJlQ2xpY2sodCl7dGhpcy5uYi5pKHQpfXVuc3Vic2NyaWJlQ2xpY2sodCl7dGhpcy5uYi5fKHQpfXN1YnNjcmliZUNyb3NzaGFpck1vdmUodCl7dGhpcy5lYi5pKHQpfXVuc3Vic2NyaWJlQ3Jvc3NoYWlyTW92ZSh0KXt0aGlzLmViLl8odCl9c3Vic2NyaWJlRGJsQ2xpY2sodCl7dGhpcy5zYi5pKHQpfXVuc3Vic2NyaWJlRGJsQ2xpY2sodCl7dGhpcy5zYi5fKHQpfXByaWNlU2NhbGUodCxpPTApe3JldHVybiBuZXcgQWUodGhpcy5zdix0LGkpfXRpbWVTY2FsZSgpe3JldHVybiB0aGlzLmxifWFwcGx5T3B0aW9ucyh0KXt0aGlzLnN2LnZyKGplKHQpKX1vcHRpb25zKCl7cmV0dXJuIHRoaXMuc3YuTigpfXRha2VTY3JlZW5zaG90KHQ9ITEsaT0hMSl7bGV0IHMsZTt0cnl7aXx8KHM9dGhpcy5zdi5RdCgpLk4oKS5jcm9zc2hhaXIubW9kZSx0aGlzLnN2LnZyKHtjcm9zc2hhaXI6e21vZGU6Mn19KSksZT10aGlzLnN2LlNNKHQpfWZpbmFsbHl7aXx8dm9pZCAwPT09c3x8dGhpcy5zdi5RdCgpLnZyKHtjcm9zc2hhaXI6e21vZGU6c319KX1yZXR1cm4gZX1hZGRQYW5lKHQ9ITEpe2NvbnN0IGk9dGhpcy5zdi5RdCgpLmFmKCk7cmV0dXJuIGkuV18odCksdGhpcy5mYihpKX1yZW1vdmVQYW5lKHQpe3RoaXMuc3YuUXQoKS5WZCh0KX1zd2FwUGFuZXModCxpKXt0aGlzLnN2LlF0KCkuRWQodCxpKX1hdXRvU2l6ZUFjdGl2ZSgpe3JldHVybiB0aGlzLnN2LndNKCl9Y2hhcnRFbGVtZW50KCl7cmV0dXJuIHRoaXMuc3YudnYoKX1wYW5lcygpe3JldHVybiB0aGlzLnN2LlF0KCkuWm4oKS5tYXAoKHQ9PnRoaXMuZmIodCkpKX1wYW5lU2l6ZSh0PTApe2NvbnN0IGk9dGhpcy5zdi5STSh0KTtyZXR1cm57aGVpZ2h0OmkuaGVpZ2h0LHdpZHRoOmkud2lkdGh9fXNldENyb3NzaGFpclBvc2l0aW9uKHQsaSxzKXtjb25zdCBlPXRoaXMudGIuZ2V0KHMpO2lmKHZvaWQgMD09PWUpcmV0dXJuO2NvbnN0IGg9dGhpcy5zdi5RdCgpLktzKGUpO251bGwhPT1oJiZ0aGlzLnN2LlF0KCkucWQodCxpLGgpfWNsZWFyQ3Jvc3NoYWlyUG9zaXRpb24oKXt0aGlzLnN2LlF0KCkuWWQoITApfWhvcnpCZWhhdmlvdXIoKXtyZXR1cm4gdGhpcy5oYn11Yih0LGk9e30scz0wKXt1KHZvaWQgMCE9PXQub2IpLGZ1bmN0aW9uKHQpe2lmKHZvaWQgMD09PXR8fCJjdXN0b20iPT09dC50eXBlKXJldHVybjtjb25zdCBpPXQ7dm9pZCAwIT09aS5taW5Nb3ZlJiZ2b2lkIDA9PT1pLnByZWNpc2lvbiYmKGkucHJlY2lzaW9uPUFpKGkubWluTW92ZSkpfShpLnByaWNlRm9ybWF0KSwiQ2FuZGxlc3RpY2siPT09dC50eXBlJiZmdW5jdGlvbih0KXt2b2lkIDAhPT10LmJvcmRlckNvbG9yJiYodC5ib3JkZXJVcENvbG9yPXQuYm9yZGVyQ29sb3IsdC5ib3JkZXJEb3duQ29sb3I9dC5ib3JkZXJDb2xvciksdm9pZCAwIT09dC53aWNrQ29sb3ImJih0LndpY2tVcENvbG9yPXQud2lja0NvbG9yLHQud2lja0Rvd25Db2xvcj10LndpY2tDb2xvcil9KGkpO2NvbnN0IGU9cChNKGgpLE0odC5kZWZhdWx0T3B0aW9ucyksaSksbj10Lm9iLHI9bmV3IGp0KHRoaXMuc3YuUXQoKSx0LnR5cGUsZSxuLHQuX2IpO3RoaXMuc3YuUXQoKS5HZChyLHMpO2NvbnN0IG89bmV3IFVlKHIsdGhpcyx0aGlzLHRoaXMsdGhpcy5oYiwodD0+dGhpcy5mYih0KSkpO3JldHVybiB0aGlzLnRiLnNldChvLHIpLHRoaXMuaWIuc2V0KHIsbyksb31jYih0KXtjb25zdCBpPXRoaXMuc3YuUXQoKTtpLktkKHQuRXQuUGMsdC5FdC52Zyx0LkV0Lm1nKSx0LlVfLmZvckVhY2goKCh0LGkpPT5pLmh0KHQudWUsdC5wZykpKSxpLkV0KCkuX2MoKSxpLkJjKCl9cGIodCl7cmV0dXJuIGModGhpcy5pYi5nZXQodCkpfW1iKHQpe3JldHVybiB2b2lkIDAhPT10JiZ0aGlzLmliLmhhcyh0KT90aGlzLnBiKHQpOnZvaWQgMH1hYih0KXtjb25zdCBpPW5ldyBNYXA7dC5ZTS5mb3JFYWNoKCgodCxzKT0+ewpjb25zdCBlPXMuYmgoKSxoPVdlKGUpKHQpO2lmKCJDdXN0b20iIT09ZSl1KEhzKGgpKTtlbHNle2NvbnN0IHQ9cy5vbCgpO3UoIXR8fCExPT09dChoKSl9aS5zZXQodGhpcy5wYihzKSxoKX0pKTtjb25zdCBzPXRoaXMubWIodC5OTSksZT12b2lkIDA9PT10LldNP3ZvaWQgMDp7dHlwZTp0LldNLmRzLHNvdXJjZUtpbmQ6dC5XTS5ITSxvYmplY3RLaW5kOnQuV00uVU0sc2VyaWVzOnRoaXMubWIodC5XTS5VXyksb2JqZWN0SWQ6dC5XTS4kTSxwYW5lSW5kZXg6dC5XTS5qTX07cmV0dXJue3RpbWU6dC5Rcixsb2dpY2FsOnQuJG4scG9pbnQ6dC5xTSxwYW5lSW5kZXg6dC5qTSxob3ZlcmVkSW5mbzplLGhvdmVyZWRTZXJpZXM6cyxob3ZlcmVkT2JqZWN0SWQ6dC5GTSxzZXJpZXNEYXRhOmksc291cmNlRXZlbnQ6dC5LTX19ZmIodCl7bGV0IGk9dGhpcy5vZC5nZXQodCk7cmV0dXJuIGl8fChpPW5ldyBaZSh0aGlzLnN2LCh0PT50aGlzLnBiKHQpKSx0LHRoaXMpLHRoaXMub2Quc2V0KHQsaSkpLGl9fWZ1bmN0aW9uIEplKHQpe2lmKGIodCkpe2NvbnN0IGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodCk7cmV0dXJuIHUobnVsbCE9PWksYENhbm5vdCBmaW5kIGVsZW1lbnQgaW4gRE9NIHdpdGggaWQ9JHt0fWApLGl9cmV0dXJuIHR9ZnVuY3Rpb24gdGgodCxpLHMpe2NvbnN0IGU9SmUodCksaD1uZXcgWGUoZSxpLHMpO3JldHVybiBpLnNldE9wdGlvbnMoaC5vcHRpb25zKCkpLGh9ZnVuY3Rpb24gaWgoKXtyZXR1cm4gb3N9ZnVuY3Rpb24gc2godCxpLHMsZSl7cmV0dXJuIE1hdGguaHlwb3Qocy10LGUtaSl9ZnVuY3Rpb24gZWgodCxpLHMsZSxoLG4scixvPTApe2lmKDA9PT1pLmxlbmd0aHx8ZS5mcm9tPj1pLmxlbmd0aHx8ZS50bzw9MClyZXR1cm47Y29uc3R7Y29udGV4dDpsLGhvcml6b250YWxQaXhlbFJhdGlvOmEsdmVydGljYWxQaXhlbFJhdGlvOnV9PXQsYz1pW2UuZnJvbV07bGV0IGY9bih0LGMpLGQ9YztpZihlLnRvLWUuZnJvbTwyKXtjb25zdCBpPWgvMjtsLmJlZ2luUGF0aCgpO2NvbnN0IHM9e190OmMuX3QtaSx1dDpjLnV0fSxlPXtfdDpjLl90K2ksdXQ6Yy51dH07bC5tb3ZlVG8ocy5fdCphLHMudXQqdSksbC5saW5lVG8oZS5fdCphLGUudXQqdSkscih0LGYscyxlKX1lbHNle2NvbnN0IGg9bz4wO2xldCBtPTA7Y29uc3QgcD0oaSxzKT0+e2lmKHIodCxmLGQscyksbC5iZWdpblBhdGgoKSxmPWksZD1zLGgpe2NvbnN0IHQ9bSVvO2wubGluZURhc2hPZmZzZXQ9dCxtPXR9fTtsZXQgZz1kO2wuYmVnaW5QYXRoKCksbC5tb3ZlVG8oYy5fdCphLGMudXQqdSk7Zm9yKGxldCByPWUuZnJvbSsxO3I8ZS50bzsrK3Ipe2c9aVtyXTtjb25zdCBlPWcuX3QqYSxvPWcudXQqdSxjPW4odCxnKTtzd2l0Y2gocyl7Y2FzZSAwOmlmKGwubGluZVRvKGUsbyksaCl7Y29uc3QgdD1pW3ItMV0scz10Ll90KmEsaD10LnV0KnU7bSs9c2gocyxoLGUsbyl9YnJlYWs7Y2FzZSAxOntjb25zdCB0PWlbci0xXSxzPXQudXQqdTtsLmxpbmVUbyhlLHMpLGgmJihtKz1NYXRoLmFicyhnLl90LXQuX3QpKmEpLGMhPT1mJiYocChjLGcpLGwubGluZVRvKGUscykpLGwubGluZVRvKGUsbyksaCYmKG0rPU1hdGguYWJzKGcudXQtdC51dCkqdSk7YnJlYWt9Y2FzZSAyOntjb25zdFt0LHNdPXJoKGksci0xLHIpLG49dC5fdCphLGM9dC51dCp1LGY9cy5fdCphLGQ9cy51dCp1O2lmKGwuYmV6aWVyQ3VydmVUbyhuLGMsZixkLGUsbyksaCl7Y29uc3QgdD1pW3ItMV0scz10Ll90KmEsaD10LnV0KnUsbD1zaChzLGgsZSxvKSxwPXNoKHMsaCxuLGMpK3NoKG4sYyxmLGQpK3NoKGYsZCxlLG8pO20rPShsK3ApLzJ9YnJlYWt9fTEhPT1zJiZjIT09ZiYmKHAoYyxnKSxsLm1vdmVUbyhlLG8pKX0oZCE9PWd8fGQ9PT1nJiYxPT09cykmJnIodCxmLGQsZyksaCYmKGwubGluZURhc2hPZmZzZXQ9MCl9fWZ1bmN0aW9uIGhoKHQsaSl7cmV0dXJue190OnQuX3QtaS5fdCx1dDp0LnV0LWkudXR9fWZ1bmN0aW9uIG5oKHQsaSl7cmV0dXJue190OnQuX3QvaSx1dDp0LnV0L2l9fWZ1bmN0aW9uIHJoKHQsaSxzKXtjb25zdCBlPU1hdGgubWF4KDAsaS0xKSxoPU1hdGgubWluKHQubGVuZ3RoLTEscysxKTt2YXIgbixyO3JldHVyblsobj10W2ldLHI9bmgoaGgodFtzXSx0W2VdKSw2KSx7X3Q6bi5fdCtyLl90LHV0Om4udXQrci51dH0pLGhoKHRbc10sbmgoaGgodFtoXSx0W2ldKSw2KSldfWZ1bmN0aW9uIG9oKHQsaSl7Y29uc3Qgcz10LmNvbnRleHQ7cy5zdHJva2VTdHlsZT1pLHMuc3Ryb2tlKCl9Y2xhc3MgbGggZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnJ0PW51bGx9aHQodCl7dGhpcy5ydD10fWV0KHQpe2lmKG51bGw9PT10aGlzLnJ0KXJldHVybjtjb25zdHtvdDppLGx0OnMsd2I6ZSxNYjpoLGN0Om4sWnQ6cixnYjpvfT10aGlzLnJ0O2lmKG51bGw9PT1zKXJldHVybjtjb25zdCBhPXQuY29udGV4dDthLmxpbmVDYXA9ImJ1dHQiLGEubGluZVdpZHRoPW4qdC52ZXJ0aWNhbFBpeGVsUmF0aW87Y29uc3QgdT1sKGEscik7YS5saW5lSm9pbj0icm91bmQiO2NvbnN0IGM9dGhpcy5iYi5iaW5kKHRoaXMpLGY9ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVkdWNlKCgodCxpKT0+dCtpKSwwKX0odSk7dm9pZCAwIT09aCYmZWgodCxpLGgscyxlLGMsb2gsZiksbyYmZnVuY3Rpb24odCxpLHMsZSxoKXtpZihlLnRvLWUuZnJvbTw9MClyZXR1cm47Y29uc3R7aG9yaXpvbnRhbFBpeGVsUmF0aW86bix2ZXJ0aWNhbFBpeGVsUmF0aW86cixjb250ZXh0Om99PXQ7bGV0IGw9bnVsbDtjb25zdCBhPU1hdGgubWF4KDEsTWF0aC5mbG9vcihuKSklMi8yLHU9cypyK2E7Zm9yKGxldCBzPWUudG8tMTtzPj1lLmZyb207LS1zKXtjb25zdCBlPWlbc107aWYoZSl7Y29uc3QgaT1oKHQsZSk7aSE9PWwmJihudWxsIT09bCYmby5maWxsKCksby5iZWdpblBhdGgoKSxvLmZpbGxTdHlsZT1pLGw9aSk7Y29uc3Qgcz1NYXRoLnJvdW5kKGUuX3QqbikrYSxjPWUudXQqcjtvLm1vdmVUbyhzLGMpLG8uYXJjKHMsYyx1LDAsMipNYXRoLlBJKX19by5maWxsKCl9KHQsaSxvLHMsYyl9fWNsYXNzIGFoIGV4dGVuZHMgbGh7YmIodCxpKXtyZXR1cm4gaS52dH19CmZ1bmN0aW9uIHVoKHQsaSxzLGUsaCl7Y29uc3Qgbj0xLWg7cmV0dXJuIG4qbipuKnQrMypuKm4qaCppKzMqbipoKmgqcytoKmgqaCplfWZ1bmN0aW9uIGNoKHQsaSxzLGUsaCl7aWYoMj09PXMpe2NvbnN0W3Msbl09cmgoZSxoLTEsaCk7cmV0dXJuW01hdGgubWluKHQuX3QsaS5fdCxzLl90LG4uX3QpLE1hdGgubWF4KHQuX3QsaS5fdCxzLl90LG4uX3QpXX1yZXR1cm5bTWF0aC5taW4odC5fdCxpLl90KSxNYXRoLm1heCh0Ll90LGkuX3QpXX1mdW5jdGlvbiBmaCh0LGkscyxlLGgsbixyLG8pe3N3aXRjaChoKXtjYXNlIDE6e2NvbnN0IGg9cGUodCxpLHMuX3Qscy51dCxlLl90LHMudXQpLG49cGUodCxpLGUuX3Qscy51dCxlLl90LGUudXQpLHI9TWF0aC5taW4oaCxuKTtyZXR1cm4gcjw9bz9yOm51bGx9Y2FzZSAyOntjb25zdFtoLGxdPXJoKG4sci0xLHIpLGE9ZnVuY3Rpb24odCxpLHMpe2xldCBlPU51bWJlci5QT1NJVElWRV9JTkZJTklUWSxoPXNbMF07Zm9yKGxldCBuPTE7bjw9MTI7bisrKXtjb25zdCByPW4vMTIsbz17X3Q6dWgoc1swXS5fdCxzWzFdLl90LHNbMl0uX3Qsc1szXS5fdCxyKSx1dDp1aChzWzBdLnV0LHNbMV0udXQsc1syXS51dCxzWzNdLnV0LHIpfTtlPU1hdGgubWluKGUscGUodCxpLGguX3QsaC51dCxvLl90LG8udXQpKSxoPW99cmV0dXJuIGV9KHQsaSxbcyxoLGwsZV0pO3JldHVybiBhPD1vP2E6bnVsbH1kZWZhdWx0Ontjb25zdCBoPXBlKHQsaSxzLl90LHMudXQsZS5fdCxlLnV0KTtyZXR1cm4gaDw9bz9oOm51bGx9fX1jbGFzcyBkaCBleHRlbmRzIFNle2NvbnN0cnVjdG9yKHQsaSl7c3VwZXIodCxpLCEwKX1WZyh0LGkscyl7aS5UYyh0aGlzLmJnLHgodGhpcy5TZykpLHQuWm8odGhpcy5iZyxzLHgodGhpcy5TZykpfVNiKHQsaSl7cmV0dXJue3d0OnQsTXQ6aSxfdDpOYU4sdXQ6TmFOfX1EZygpe2NvbnN0IHQ9dGhpcy5hZS5TYSgpO3RoaXMuYmc9dGhpcy5hZS5IYSgpLkJoKCkubWFwKChpPT57bGV0IHM7aWYoKGkuWnI/PzEpPjEpe2NvbnN0IHQ9aS5XdFsxXSxlPWkuV3RbMl0saD1pLld0WzNdO3M9TWF0aC5hYnModC1oKT5NYXRoLmFicyhlLWgpP3Q6ZX1lbHNlIHM9aS5XdFszXTtyZXR1cm4gdGhpcy54YihpLiRuLHMsdCl9KSl9fWNsYXNzIG1oIGV4dGVuZHMgZGh7UGcodCxpKXtjb25zdCBzPXRoaXMuYWUuTigpO3JldHVybiBmdW5jdGlvbih0LGkscyxlLGgsbixyLG89MCxsPTApe2lmKG51bGw9PT1pfHxpLmZyb20+PWkudG98fDA9PT10Lmxlbmd0aClyZXR1cm4gbnVsbDtjb25zdCBhPU1hdGgubWF4KG4vMixyPz8wKStsO2xldCB1PU51bWJlci5QT1NJVElWRV9JTkZJTklUWTtpZih2b2lkIDAhPT1yKXtjb25zdCBoPXIrbCxuPWNlKHQscy1oLGkuZnJvbSxpLnRvKSxvPWZlKHQscytoLG4saS50byk7Zm9yKGxldCBpPW47aTxvO2krKyl7Y29uc3QgaD10W2ldO2lmKCFtZShzLGguX3QsaC5fdCxyK2wpKWNvbnRpbnVlO2NvbnN0IG49TWF0aC5oeXBvdChzLWguX3QsZS1oLnV0KTtuPD1yK2wmJih1PU1hdGgubWluKHUsbikpfX1pZihpLnRvLWkuZnJvbTwyKXtjb25zdCBoPXRbaS5mcm9tXSxuPU1hdGgubWF4KG8vMixhKSxyPXBlKHMsZSxoLl90LW4saC51dCxoLl90K24saC51dCk7cmV0dXJuIHI8PWEmJih1PU1hdGgubWluKHUscikpLE51bWJlci5pc0Zpbml0ZSh1KT9kZSh1LDIsInNlcmllcy1wb2ludCIpOm51bGx9bGV0IGM9TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZO2NvbnN0IGY9Y2UodCxzLWEsaS5mcm9tLGkudG8pLGQ9ZmUodCxzK2EsZixpLnRvKSxtPU1hdGgubWF4KGkuZnJvbSsxLGYpLHA9TWF0aC5taW4oaS50byxkKzEpO2ZvcihsZXQgaT1tO2k8cDtpKyspe2NvbnN0IG49dFtpLTFdLHI9dFtpXSxbbyxsXT1jaChuLHIsaCx0LGkpO2lmKCFtZShzLG8sbCxhKSljb250aW51ZTtjb25zdCB1PWZoKHMsZSxuLHIsaCx0LGksYSk7bnVsbCE9PXUmJihjPU1hdGgubWluKGMsdSkpfXJldHVybiBOdW1iZXIuaXNGaW5pdGUodSk/ZGUodSwyLCJzZXJpZXMtcG9pbnQiKTpOdW1iZXIuaXNGaW5pdGUoYyk/ZGUoYywxLCJzZXJpZXMtbGluZSIpOm51bGx9KHRoaXMuYmcsdGhpcy5TZyx0LGkscy5saW5lVHlwZSxzLmxpbmVWaXNpYmxlP3MubGluZVdpZHRoOjEscy5wb2ludE1hcmtlcnNWaXNpYmxlP3MucG9pbnRNYXJrZXJzUmFkaXVzfHxzLmxpbmVXaWR0aC8yKzI6dm9pZCAwLHRoaXMubGUuRXQoKS5mbCgpLHMuaGl0VGVzdFRvbGVyYW5jZSl9fWNsYXNzIHBoIGV4dGVuZHMgbWh7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMua2c9bmV3IGFofXhiKHQsaSxzKXtyZXR1cm57Li4udGhpcy5TYih0LGkpLC4uLnMuU2godCl9fUJnKCl7Y29uc3QgdD10aGlzLmFlLk4oKSxpPXtvdDp0aGlzLmJnLFp0OnQubGluZVN0eWxlLE1iOnQubGluZVZpc2libGU/dC5saW5lVHlwZTp2b2lkIDAsY3Q6dC5saW5lV2lkdGgsZ2I6dC5wb2ludE1hcmtlcnNWaXNpYmxlP3QucG9pbnRNYXJrZXJzUmFkaXVzfHx0LmxpbmVXaWR0aC8yKzI6dm9pZCAwLGx0OnRoaXMuU2csd2I6dGhpcy5sZS5FdCgpLmZsKCl9O3RoaXMua2cuaHQoaSl9fWNvbnN0IGdoPXt0eXBlOiJMaW5lIixpc0J1aWx0SW46ITAsZGVmYXVsdE9wdGlvbnM6e2NvbG9yOiIjMjE5NmYzIixsaW5lU3R5bGU6MCxsaW5lV2lkdGg6MyxsaW5lVHlwZTowLGxpbmVWaXNpYmxlOiEwLGNyb3NzaGFpck1hcmtlclZpc2libGU6ITAsY3Jvc3NoYWlyTWFya2VyUmFkaXVzOjQsY3Jvc3NoYWlyTWFya2VyQm9yZGVyQ29sb3I6IiIsY3Jvc3NoYWlyTWFya2VyQm9yZGVyV2lkdGg6Mixjcm9zc2hhaXJNYXJrZXJCYWNrZ3JvdW5kQ29sb3I6IiIsbGFzdFByaWNlQW5pbWF0aW9uOjAscG9pbnRNYXJrZXJzVmlzaWJsZTohMX0sb2I6KHQsaSk9Pm5ldyBwaCh0LGkpfTtmdW5jdGlvbiB2aCh0LGkscyxlLGgpe2NvbnN0e2NvbnRleHQ6bixob3Jpem9udGFsUGl4ZWxSYXRpbzpyLHZlcnRpY2FsUGl4ZWxSYXRpbzpvfT1pO24ubGluZVRvKGguX3Qqcix0Km8pLG4ubGluZVRvKGUuX3Qqcix0Km8pLG4uY2xvc2VQYXRoKCksbi5maWxsU3R5bGU9cyxuLmZpbGwoKX1jbGFzcyBiaCBleHRlbmRzIHp7Y29uc3RydWN0b3IoKXsKc3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnJ0PW51bGx9aHQodCl7dGhpcy5ydD10fWV0KHQpe2lmKG51bGw9PT10aGlzLnJ0KXJldHVybjtjb25zdHtvdDppLGx0OnMsd2I6ZSxjdDpoLFp0Om4sTWI6cn09dGhpcy5ydCxvPXRoaXMucnQuRGI/Pyh0aGlzLnJ0LkliPzA6dC5tZWRpYVNpemUuaGVpZ2h0KTtpZihudWxsPT09cylyZXR1cm47Y29uc3QgYT10LmNvbnRleHQ7YS5saW5lQ2FwPSJidXR0IixhLmxpbmVKb2luPSJyb3VuZCIsYS5saW5lV2lkdGg9aCxsKGEsbiksYS5saW5lV2lkdGg9MSxlaCh0LGkscixzLGUsdGhpcy5WYi5iaW5kKHRoaXMpLHZoLmJpbmQobnVsbCxvKSl9fWNsYXNzIHdoe0JiKHQsaSl7Y29uc3Qgcz10aGlzLkViLHtBYjplLExiOmgsemI6bixPYjpyLERiOm8sTmI6bCxGYjphfT1pO2lmKHZvaWQgMD09PXRoaXMuV2J8fHZvaWQgMD09PXN8fHMuQWIhPT1lfHxzLkxiIT09aHx8cy56YiE9PW58fHMuT2IhPT1yfHxzLkRiIT09b3x8cy5OYiE9PWx8fHMuRmIhPT1hKXtjb25zdHt2ZXJ0aWNhbFBpeGVsUmF0aW86c309dCx1PW98fGw+MD9zOjEsYz1sKnUsZj1hPT09dC5iaXRtYXBTaXplLmhlaWdodD9hOmEqdSxkPShvPz8wKSp1LG09dC5jb250ZXh0LmNyZWF0ZUxpbmVhckdyYWRpZW50KDAsYywwLGYpO2lmKG0uYWRkQ29sb3JTdG9wKDAsZSksbnVsbCE9byl7Y29uc3QgdD1paSgoZC1jKS8oZi1jKSwwLDEpO20uYWRkQ29sb3JTdG9wKHQsaCksbS5hZGRDb2xvclN0b3AodCxuKX1tLmFkZENvbG9yU3RvcCgxLHIpLHRoaXMuV2I9bSx0aGlzLkViPWl9cmV0dXJuIHRoaXMuV2J9fWNsYXNzIE1oIGV4dGVuZHMgYmh7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuSGI9bmV3IHdofVZiKHQsaSl7Y29uc3Qgcz10aGlzLnJ0O3JldHVybiB0aGlzLkhiLkJiKHQse0FiOmkuZGgsTGI6aS5maCx6YjppLnBoLE9iOmkubWgsRGI6cy5EYixOYjpzLk5iPz8wLEZiOnMuRmI/P3QuYml0bWFwU2l6ZS5oZWlnaHR9KX19Y2xhc3MgeWggZXh0ZW5kcyBsaHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5VYj1uZXcgd2h9YmIodCxpKXtjb25zdCBzPXRoaXMucnQ7cmV0dXJuIHRoaXMuVWIuQmIodCx7QWI6aS5faCxMYjppLl9oLHpiOmkudWgsT2I6aS51aCxEYjpzLkRiLE5iOnMuTmI/PzAsRmI6cy5GYj8/dC5iaXRtYXBTaXplLmhlaWdodH0pfX1jbGFzcyB4aCBleHRlbmRzIG1oe2NvbnN0cnVjdG9yKHQsaSl7c3VwZXIodCxpKSx0aGlzLmtnPW5ldyBULHRoaXMuJGI9bmV3IE1oLHRoaXMuamI9bmV3IHloLHRoaXMua2cubnQoW3RoaXMuJGIsdGhpcy5qYl0pfXhiKHQsaSxzKXtyZXR1cm57Li4udGhpcy5TYih0LGkpLC4uLnMuU2godCl9fUJnKCl7Y29uc3QgdD10aGlzLmFlLkx0KCk7aWYobnVsbD09PXQpcmV0dXJuO2NvbnN0IGk9dGhpcy5hZS5OKCkscz10aGlzLmFlLkZ0KCkuTnQoaS5iYXNlVmFsdWUucHJpY2UsdC5XdCksZT10aGlzLmxlLkV0KCkuZmwoKTtpZihudWxsPT09dGhpcy5TZ3x8MD09PXRoaXMuYmcubGVuZ3RoKXJldHVybjtsZXQgaCxuO2lmKGkucmVsYXRpdmVHcmFkaWVudCl7aD10aGlzLmJnW3RoaXMuU2cuZnJvbV0udXQsbj10aGlzLmJnW3RoaXMuU2cuZnJvbV0udXQ7Zm9yKGxldCB0PXRoaXMuU2cuZnJvbTt0PHRoaXMuU2cudG87dCsrKXtjb25zdCBpPXRoaXMuYmdbdF07aS51dDxoJiYoaD1pLnV0KSxpLnV0Pm4mJihuPWkudXQpfX10aGlzLiRiLmh0KHtvdDp0aGlzLmJnLGN0OmkubGluZVdpZHRoLFp0OmkubGluZVN0eWxlLE1iOmkubGluZVR5cGUsRGI6cyxOYjpoLEZiOm4sSWI6ITEsbHQ6dGhpcy5TZyx3YjplfSksdGhpcy5qYi5odCh7b3Q6dGhpcy5iZyxjdDppLmxpbmVXaWR0aCxadDppLmxpbmVTdHlsZSxNYjppLmxpbmVWaXNpYmxlP2kubGluZVR5cGU6dm9pZCAwLGdiOmkucG9pbnRNYXJrZXJzVmlzaWJsZT9pLnBvaW50TWFya2Vyc1JhZGl1c3x8aS5saW5lV2lkdGgvMisyOnZvaWQgMCxEYjpzLE5iOmgsRmI6bixsdDp0aGlzLlNnLHdiOmV9KX19Y29uc3QgU2g9e3R5cGU6IkJhc2VsaW5lIixpc0J1aWx0SW46ITAsZGVmYXVsdE9wdGlvbnM6e2Jhc2VWYWx1ZTp7dHlwZToicHJpY2UiLHByaWNlOjB9LHJlbGF0aXZlR3JhZGllbnQ6ITEsdG9wRmlsbENvbG9yMToicmdiYSgzOCwgMTY2LCAxNTQsIDAuMjgpIix0b3BGaWxsQ29sb3IyOiJyZ2JhKDM4LCAxNjYsIDE1NCwgMC4wNSkiLHRvcExpbmVDb2xvcjoicmdiYSgzOCwgMTY2LCAxNTQsIDEpIixib3R0b21GaWxsQ29sb3IxOiJyZ2JhKDIzOSwgODMsIDgwLCAwLjA1KSIsYm90dG9tRmlsbENvbG9yMjoicmdiYSgyMzksIDgzLCA4MCwgMC4yOCkiLGJvdHRvbUxpbmVDb2xvcjoicmdiYSgyMzksIDgzLCA4MCwgMSkiLGxpbmVXaWR0aDozLGxpbmVTdHlsZTowLGxpbmVUeXBlOjAsbGluZVZpc2libGU6ITAsY3Jvc3NoYWlyTWFya2VyVmlzaWJsZTohMCxjcm9zc2hhaXJNYXJrZXJSYWRpdXM6NCxjcm9zc2hhaXJNYXJrZXJCb3JkZXJDb2xvcjoiIixjcm9zc2hhaXJNYXJrZXJCb3JkZXJXaWR0aDoyLGNyb3NzaGFpck1hcmtlckJhY2tncm91bmRDb2xvcjoiIixsYXN0UHJpY2VBbmltYXRpb246MCxwb2ludE1hcmtlcnNWaXNpYmxlOiExfSxvYjoodCxpKT0+bmV3IHhoKHQsaSl9O2NsYXNzIENoIGV4dGVuZHMgYmh7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuSGI9bmV3IHdofVZiKHQsaSl7cmV0dXJuIHRoaXMuSGIuQmIodCx7QWI6aS5haCxMYjoiIix6YjoiIixPYjppLm9oLE5iOnRoaXMucnQ/Lk5iPz8wLEZiOnQuYml0bWFwU2l6ZS5oZWlnaHR9KX19Y2xhc3MgX2ggZXh0ZW5kcyBtaHtjb25zdHJ1Y3Rvcih0LGkpe3N1cGVyKHQsaSksdGhpcy5rZz1uZXcgVCx0aGlzLnFiPW5ldyBDaCx0aGlzLlliPW5ldyBhaCx0aGlzLmtnLm50KFt0aGlzLnFiLHRoaXMuWWJdKX14Yih0LGkscyl7cmV0dXJuey4uLnRoaXMuU2IodCxpKSwuLi5zLlNoKHQpfX1CZygpe2NvbnN0IHQ9dGhpcy5hZS5OKCk7aWYobnVsbD09PXRoaXMuU2d8fDA9PT10aGlzLmJnLmxlbmd0aClyZXR1cm47bGV0IGk7aWYodC5yZWxhdGl2ZUdyYWRpZW50KXsKaT10aGlzLmJnW3RoaXMuU2cuZnJvbV0udXQ7Zm9yKGxldCB0PXRoaXMuU2cuZnJvbTt0PHRoaXMuU2cudG87dCsrKXtjb25zdCBzPXRoaXMuYmdbdF07cy51dDxpJiYoaT1zLnV0KX19dGhpcy5xYi5odCh7TWI6dC5saW5lVHlwZSxvdDp0aGlzLmJnLFp0OnQubGluZVN0eWxlLGN0OnQubGluZVdpZHRoLERiOm51bGwsTmI6aSxJYjp0LmludmVydEZpbGxlZEFyZWEsbHQ6dGhpcy5TZyx3Yjp0aGlzLmxlLkV0KCkuZmwoKX0pLHRoaXMuWWIuaHQoe01iOnQubGluZVZpc2libGU/dC5saW5lVHlwZTp2b2lkIDAsb3Q6dGhpcy5iZyxadDp0LmxpbmVTdHlsZSxjdDp0LmxpbmVXaWR0aCxsdDp0aGlzLlNnLHdiOnRoaXMubGUuRXQoKS5mbCgpLGdiOnQucG9pbnRNYXJrZXJzVmlzaWJsZT90LnBvaW50TWFya2Vyc1JhZGl1c3x8dC5saW5lV2lkdGgvMisyOnZvaWQgMH0pfX1jb25zdCBraD17dHlwZToiQXJlYSIsaXNCdWlsdEluOiEwLGRlZmF1bHRPcHRpb25zOnt0b3BDb2xvcjoicmdiYSggNDYsIDIyMCwgMTM1LCAwLjQpIixib3R0b21Db2xvcjoicmdiYSggNDAsIDIyMSwgMTAwLCAwKSIsaW52ZXJ0RmlsbGVkQXJlYTohMSxyZWxhdGl2ZUdyYWRpZW50OiExLGxpbmVDb2xvcjoiIzMzRDc3OCIsbGluZVN0eWxlOjAsbGluZVdpZHRoOjMsbGluZVR5cGU6MCxsaW5lVmlzaWJsZTohMCxjcm9zc2hhaXJNYXJrZXJWaXNpYmxlOiEwLGNyb3NzaGFpck1hcmtlclJhZGl1czo0LGNyb3NzaGFpck1hcmtlckJvcmRlckNvbG9yOiIiLGNyb3NzaGFpck1hcmtlckJvcmRlcldpZHRoOjIsY3Jvc3NoYWlyTWFya2VyQmFja2dyb3VuZENvbG9yOiIiLGxhc3RQcmljZUFuaW1hdGlvbjowLHBvaW50TWFya2Vyc1Zpc2libGU6ITF9LG9iOih0LGkpPT5uZXcgX2godCxpKX07Y2xhc3MgRWggZXh0ZW5kcyB6e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnF0PW51bGwsdGhpcy5LYj0wLHRoaXMuWmI9MH1odCh0KXt0aGlzLnF0PXR9ZXQoe2NvbnRleHQ6dCxob3Jpem9udGFsUGl4ZWxSYXRpbzppLHZlcnRpY2FsUGl4ZWxSYXRpbzpzfSl7aWYobnVsbD09PXRoaXMucXR8fDA9PT10aGlzLnF0LlVuLmxlbmd0aHx8bnVsbD09PXRoaXMucXQubHQpcmV0dXJuO3RoaXMuS2I9dGhpcy5HYihpKSx0aGlzLktiPj0yJiZNYXRoLm1heCgxLE1hdGguZmxvb3IoaSkpJTIhPXRoaXMuS2IlMiYmdGhpcy5LYi0tLHRoaXMuWmI9dGhpcy5xdC5YYj9NYXRoLm1pbih0aGlzLktiLE1hdGguZmxvb3IoaSkpOnRoaXMuS2I7bGV0IGU9bnVsbDtjb25zdCBoPXRoaXMuWmI8PXRoaXMuS2ImJnRoaXMucXQuZmw+PU1hdGguZmxvb3IoMS41KmkpO2ZvcihsZXQgbj10aGlzLnF0Lmx0LmZyb207bjx0aGlzLnF0Lmx0LnRvOysrbil7Y29uc3Qgcj10aGlzLnF0LlVuW25dO2UhPT1yLnNoJiYodC5maWxsU3R5bGU9ci5zaCxlPXIuc2gpO2NvbnN0IG89TWF0aC5mbG9vciguNSp0aGlzLlpiKSxsPU1hdGgucm91bmQoci5fdCppKSxhPWwtbyx1PXRoaXMuWmIsYz1hK3UtMSxmPU1hdGgubWluKHIuUW8sci50XyksZD1NYXRoLm1heChyLlFvLHIudF8pLG09TWF0aC5yb3VuZChmKnMpLW8scD1NYXRoLnJvdW5kKGQqcykrbyxnPU1hdGgubWF4KHAtbSx0aGlzLlpiKTt0LmZpbGxSZWN0KGEsbSx1LGcpO2NvbnN0IHY9TWF0aC5jZWlsKDEuNSp0aGlzLktiKTtpZihoKXtpZih0aGlzLnF0LkpiKXtjb25zdCBpPWwtdjtsZXQgZT1NYXRoLm1heChtLE1hdGgucm91bmQoci5KbypzKS1vKSxoPWUrdS0xO2g+bStnLTEmJihoPW0rZy0xLGU9aC11KzEpLHQuZmlsbFJlY3QoaSxlLGEtaSxoLWUrMSl9Y29uc3QgaT1sK3Y7bGV0IGU9TWF0aC5tYXgobSxNYXRoLnJvdW5kKHIuaV8qcyktbyksaD1lK3UtMTtoPm0rZy0xJiYoaD1tK2ctMSxlPWgtdSsxKSx0LmZpbGxSZWN0KGMrMSxlLGktYyxoLWUrMSl9fX1HYih0KXtjb25zdCBpPU1hdGguZmxvb3IodCk7cmV0dXJuIE1hdGgubWF4KGksTWF0aC5mbG9vcihmdW5jdGlvbih0LGkpe3JldHVybiBNYXRoLmZsb29yKC4zKnQqaSl9KGYodGhpcy5xdCkuZmwsdCkpKX19Y2xhc3MgTmggZXh0ZW5kcyBTZXtjb25zdHJ1Y3Rvcih0LGkpe3N1cGVyKHQsaSwhMSl9UGcodCxpKXtyZXR1cm4gd2UodGhpcy5iZyx0aGlzLlNnLHQsaSx0aGlzLmxlLkV0KCkuZmwoKSx0aGlzLmFlLk4oKS5oaXRUZXN0VG9sZXJhbmNlLCgodCxpKT0+e2lbMF09dC5RbyxpWzFdPXQudF99KSl9VmcodCxpLHMpe2kuVGModGhpcy5iZyx4KHRoaXMuU2cpKSx0LlhvKHRoaXMuYmcscyx4KHRoaXMuU2cpKX1RYih0LGkscyl7cmV0dXJue3d0OnQsanI6aS5XdFswXSxxcjppLld0WzFdLFlyOmkuV3RbMl0sS3I6aS5XdFszXSxfdDpOYU4sSm86TmFOLFFvOk5hTix0XzpOYU4saV86TmFOfX1EZygpe2NvbnN0IHQ9dGhpcy5hZS5TYSgpO3RoaXMuYmc9dGhpcy5hZS5IYSgpLkJoKCkubWFwKChpPT50aGlzLnhiKGkuJG4saSx0KSkpfX1jbGFzcyBUaCBleHRlbmRzIE5oe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLmtnPW5ldyBFaH14Yih0LGkscyl7cmV0dXJuey4uLnRoaXMuUWIodCxpLHMpLC4uLnMuU2godCl9fUJnKCl7Y29uc3QgdD10aGlzLmFlLk4oKTt0aGlzLmtnLmh0KHtVbjp0aGlzLmJnLGZsOnRoaXMubGUuRXQoKS5mbCgpLEpiOnQub3BlblZpc2libGUsWGI6dC50aGluQmFycyxsdDp0aGlzLlNnfSl9fWNvbnN0IHpoPXt0eXBlOiJCYXIiLGlzQnVpbHRJbjohMCxkZWZhdWx0T3B0aW9uczp7dXBDb2xvcjoiIzI2YTY5YSIsZG93bkNvbG9yOiIjZWY1MzUwIixvcGVuVmlzaWJsZTohMCx0aGluQmFyczohMH0sb2I6KHQsaSk9Pm5ldyBUaCh0LGkpfTtjbGFzcyBJaCBleHRlbmRzIHp7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMucXQ9bnVsbCx0aGlzLktiPTB9aHQodCl7dGhpcy5xdD10fWV0KHQpe2lmKG51bGw9PT10aGlzLnF0fHwwPT09dGhpcy5xdC5Vbi5sZW5ndGh8fG51bGw9PT10aGlzLnF0Lmx0KXJldHVybjtjb25zdHtob3Jpem9udGFsUGl4ZWxSYXRpbzppfT10O3RoaXMuS2I9ZnVuY3Rpb24odCxpKXtpZih0Pj0yLjUmJnQ8PTQpcmV0dXJuIE1hdGguZmxvb3IoMyppKQo7Y29uc3Qgcz0xLS4yKk1hdGguYXRhbihNYXRoLm1heCg0LHQpLTQpLyguNSpNYXRoLlBJKSxlPU1hdGguZmxvb3IodCpzKmkpLGg9TWF0aC5mbG9vcih0KmkpLG49TWF0aC5taW4oZSxoKTtyZXR1cm4gTWF0aC5tYXgoTWF0aC5mbG9vcihpKSxuKX0odGhpcy5xdC5mbCxpKSx0aGlzLktiPj0yJiZNYXRoLmZsb29yKGkpJTIhPXRoaXMuS2IlMiYmdGhpcy5LYi0tO2NvbnN0IHM9dGhpcy5xdC5Vbjt0aGlzLnF0LnRTJiZ0aGlzLmlTKHQscyx0aGlzLnF0Lmx0KSx0aGlzLnF0LmdpJiZ0aGlzLlJtKHQscyx0aGlzLnF0Lmx0KTtjb25zdCBlPXRoaXMublMoaSk7KCF0aGlzLnF0LmdpfHx0aGlzLktiPjIqZSkmJnRoaXMuc1ModCxzLHRoaXMucXQubHQpfWlTKHQsaSxzKXtpZihudWxsPT09dGhpcy5xdClyZXR1cm47Y29uc3R7Y29udGV4dDplLGhvcml6b250YWxQaXhlbFJhdGlvOmgsdmVydGljYWxQaXhlbFJhdGlvOm59PXQ7bGV0IHI9IiIsbz1NYXRoLm1pbihNYXRoLmZsb29yKGgpLE1hdGguZmxvb3IodGhpcy5xdC5mbCpoKSk7bz1NYXRoLm1heChNYXRoLmZsb29yKGgpLE1hdGgubWluKG8sdGhpcy5LYikpO2NvbnN0IGw9TWF0aC5mbG9vciguNSpvKTtsZXQgYT1udWxsO2ZvcihsZXQgdD1zLmZyb207dDxzLnRvO3QrKyl7Y29uc3Qgcz1pW3RdO3MucmghPT1yJiYoZS5maWxsU3R5bGU9cy5yaCxyPXMucmgpO2NvbnN0IHU9TWF0aC5yb3VuZChNYXRoLm1pbihzLkpvLHMuaV8pKm4pLGM9TWF0aC5yb3VuZChNYXRoLm1heChzLkpvLHMuaV8pKm4pLGY9TWF0aC5yb3VuZChzLlFvKm4pLGQ9TWF0aC5yb3VuZChzLnRfKm4pO2xldCBtPU1hdGgucm91bmQoaCpzLl90KS1sO2NvbnN0IHA9bStvLTE7bnVsbCE9PWEmJihtPU1hdGgubWF4KGErMSxtKSxtPU1hdGgubWluKG0scCkpO2NvbnN0IGc9cC1tKzE7ZS5maWxsUmVjdChtLGYsZyx1LWYpLGUuZmlsbFJlY3QobSxjKzEsZyxkLWMpLGE9cH19blModCl7bGV0IGk9TWF0aC5mbG9vcigxKnQpO3RoaXMuS2I8PTIqaSYmKGk9TWF0aC5mbG9vciguNSoodGhpcy5LYi0xKSkpO2NvbnN0IHM9TWF0aC5tYXgoTWF0aC5mbG9vcih0KSxpKTtyZXR1cm4gdGhpcy5LYjw9MipzP01hdGgubWF4KE1hdGguZmxvb3IodCksTWF0aC5mbG9vcigxKnQpKTpzfVJtKHQsaSxzKXtpZihudWxsPT09dGhpcy5xdClyZXR1cm47Y29uc3R7Y29udGV4dDplLGhvcml6b250YWxQaXhlbFJhdGlvOmgsdmVydGljYWxQaXhlbFJhdGlvOm59PXQ7bGV0IHI9IiI7Y29uc3Qgbz10aGlzLm5TKGgpO2xldCBsPW51bGw7Zm9yKGxldCB0PXMuZnJvbTt0PHMudG87dCsrKXtjb25zdCBzPWlbdF07cy5laCE9PXImJihlLmZpbGxTdHlsZT1zLmVoLHI9cy5laCk7bGV0IGE9TWF0aC5yb3VuZChzLl90KmgpLU1hdGguZmxvb3IoLjUqdGhpcy5LYik7Y29uc3QgdT1hK3RoaXMuS2ItMSxjPU1hdGgucm91bmQoTWF0aC5taW4ocy5KbyxzLmlfKSpuKSxmPU1hdGgucm91bmQoTWF0aC5tYXgocy5KbyxzLmlfKSpuKTtpZihudWxsIT09bCYmKGE9TWF0aC5tYXgobCsxLGEpLGE9TWF0aC5taW4oYSx1KSksdGhpcy5xdC5mbCpoPjIqbylXKGUsYSxjLHUtYSsxLGYtYysxLG8pO2Vsc2V7Y29uc3QgdD11LWErMTtlLmZpbGxSZWN0KGEsYyx0LGYtYysxKX1sPXV9fXNTKHQsaSxzKXtpZihudWxsPT09dGhpcy5xdClyZXR1cm47Y29uc3R7Y29udGV4dDplLGhvcml6b250YWxQaXhlbFJhdGlvOmgsdmVydGljYWxQaXhlbFJhdGlvOm59PXQ7bGV0IHI9IiI7Y29uc3Qgbz10aGlzLm5TKGgpO2ZvcihsZXQgdD1zLmZyb207dDxzLnRvO3QrKyl7Y29uc3Qgcz1pW3RdO2xldCBsPU1hdGgucm91bmQoTWF0aC5taW4ocy5KbyxzLmlfKSpuKSxhPU1hdGgucm91bmQoTWF0aC5tYXgocy5KbyxzLmlfKSpuKSx1PU1hdGgucm91bmQocy5fdCpoKS1NYXRoLmZsb29yKC41KnRoaXMuS2IpLGM9dSt0aGlzLktiLTE7aWYocy5zaCE9PXIpe2NvbnN0IHQ9cy5zaDtlLmZpbGxTdHlsZT10LHI9dH10aGlzLnF0LmdpJiYodSs9byxsKz1vLGMtPW8sYS09byksbD5hfHxlLmZpbGxSZWN0KHUsbCxjLXUrMSxhLWwrMSl9fX1jbGFzcyBQaCBleHRlbmRzIE5oe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLmtnPW5ldyBJaH14Yih0LGkscyl7cmV0dXJuey4uLnRoaXMuUWIodCxpLHMpLC4uLnMuU2godCl9fUJnKCl7Y29uc3QgdD10aGlzLmFlLk4oKTt0aGlzLmtnLmh0KHtVbjp0aGlzLmJnLGZsOnRoaXMubGUuRXQoKS5mbCgpLHRTOnQud2lja1Zpc2libGUsZ2k6dC5ib3JkZXJWaXNpYmxlLGx0OnRoaXMuU2d9KX19Y29uc3QgUmg9e3R5cGU6IkNhbmRsZXN0aWNrIixpc0J1aWx0SW46ITAsZGVmYXVsdE9wdGlvbnM6e3VwQ29sb3I6IiMyNmE2OWEiLGRvd25Db2xvcjoiI2VmNTM1MCIsd2lja1Zpc2libGU6ITAsYm9yZGVyVmlzaWJsZTohMCxib3JkZXJDb2xvcjoiIzM3ODY1OCIsYm9yZGVyVXBDb2xvcjoiIzI2YTY5YSIsYm9yZGVyRG93bkNvbG9yOiIjZWY1MzUwIix3aWNrQ29sb3I6IiM3MzczNzUiLHdpY2tVcENvbG9yOiIjMjZhNjlhIix3aWNrRG93bkNvbG9yOiIjZWY1MzUwIn0sb2I6KHQsaSk9Pm5ldyBQaCh0LGkpfTtjbGFzcyBMaCBleHRlbmRzIHp7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMucXQ9bnVsbCx0aGlzLmVTPVtdfWh0KHQpe3RoaXMucXQ9dCx0aGlzLmVTPVtdfWV0KHtjb250ZXh0OnQsaG9yaXpvbnRhbFBpeGVsUmF0aW86aSx2ZXJ0aWNhbFBpeGVsUmF0aW86c30pe2lmKG51bGw9PT10aGlzLnF0fHwwPT09dGhpcy5xdC5vdC5sZW5ndGh8fG51bGw9PT10aGlzLnF0Lmx0KXJldHVybjt0aGlzLmVTLmxlbmd0aHx8dGhpcy5yUyhpKTtjb25zdCBlPU1hdGgubWF4KDEsTWF0aC5mbG9vcihzKSksaD1NYXRoLnJvdW5kKHRoaXMucXQuaFMqcyktTWF0aC5mbG9vcihlLzIpLG49aCtlO2ZvcihsZXQgaT10aGlzLnF0Lmx0LmZyb207aTx0aGlzLnF0Lmx0LnRvO2krKyl7Y29uc3Qgcj10aGlzLnF0Lm90W2ldLG89dGhpcy5lU1tpLXRoaXMucXQubHQuZnJvbV0sbD1NYXRoLnJvdW5kKHIudXQqcyk7bGV0IGEsdTt0LmZpbGxTdHlsZT1yLnNoLGw8PWg/KGE9bCx1PW4pOihhPWgsCnU9bC1NYXRoLmZsb29yKGUvMikrZSksdC5maWxsUmVjdChvLk9hLGEsby5iaS1vLk9hKzEsdS1hKX19clModCl7aWYobnVsbD09PXRoaXMucXR8fDA9PT10aGlzLnF0Lm90Lmxlbmd0aHx8bnVsbD09PXRoaXMucXQubHQpcmV0dXJuIHZvaWQodGhpcy5lUz1bXSk7Y29uc3QgaT1NYXRoLmNlaWwodGhpcy5xdC5mbCp0KTw9MT8wOk1hdGgubWF4KDEsTWF0aC5mbG9vcih0KSkscz1NYXRoLnJvdW5kKHRoaXMucXQuZmwqdCktaTt0aGlzLmVTPW5ldyBBcnJheSh0aGlzLnF0Lmx0LnRvLXRoaXMucXQubHQuZnJvbSk7Zm9yKGxldCBpPXRoaXMucXQubHQuZnJvbTtpPHRoaXMucXQubHQudG87aSsrKXtjb25zdCBlPXRoaXMucXQub3RbaV0saD1NYXRoLnJvdW5kKGUuX3QqdCk7bGV0IG4scjtpZihzJTIpe2NvbnN0IHQ9KHMtMSkvMjtuPWgtdCxyPWgrdH1lbHNle2NvbnN0IHQ9cy8yO249aC10LHI9aCt0LTF9dGhpcy5lU1tpLXRoaXMucXQubHQuZnJvbV09e09hOm4sYmk6cixhUzpoLGNlOmUuX3QqdCx3dDplLnd0fX1mb3IobGV0IHQ9dGhpcy5xdC5sdC5mcm9tKzE7dDx0aGlzLnF0Lmx0LnRvO3QrKyl7Y29uc3Qgcz10aGlzLmVTW3QtdGhpcy5xdC5sdC5mcm9tXSxlPXRoaXMuZVNbdC10aGlzLnF0Lmx0LmZyb20tMV07cy53dD09PWUud3QrMSYmcy5PYS1lLmJpIT09aSsxJiYoZS5hUz5lLmNlP2UuYmk9cy5PYS1pLTE6cy5PYT1lLmJpK2krMSl9bGV0IGU9TWF0aC5jZWlsKHRoaXMucXQuZmwqdCk7Zm9yKGxldCB0PXRoaXMucXQubHQuZnJvbTt0PHRoaXMucXQubHQudG87dCsrKXtjb25zdCBpPXRoaXMuZVNbdC10aGlzLnF0Lmx0LmZyb21dO2kuYmk8aS5PYSYmKGkuYmk9aS5PYSk7Y29uc3Qgcz1pLmJpLWkuT2ErMTtlPU1hdGgubWluKHMsZSl9aWYoaT4wJiZlPDQpZm9yKGxldCB0PXRoaXMucXQubHQuZnJvbTt0PHRoaXMucXQubHQudG87dCsrKXtjb25zdCBpPXRoaXMuZVNbdC10aGlzLnF0Lmx0LmZyb21dO2kuYmktaS5PYSsxPmUmJihpLmFTPmkuY2U/aS5iaS09MTppLk9hKz0xKX19fWNsYXNzIEZoIGV4dGVuZHMgZGh7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMua2c9bmV3IExofVBnKHQsaSl7Y29uc3Qgcz10aGlzLmFlLkZ0KCkuTnQodGhpcy5hZS5OKCkuYmFzZSxmKHRoaXMuYWUuTHQoKSkuV3QpO3JldHVybiBudWxsPT09cz9udWxsOndlKHRoaXMuYmcsdGhpcy5TZyx0LGksdGhpcy5sZS5FdCgpLmZsKCksdGhpcy5hZS5OKCkuaGl0VGVzdFRvbGVyYW5jZSwoKHQsaSk9PntpWzBdPXQudXQsaVsxXT1zfSkpfXhiKHQsaSxzKXtyZXR1cm57Li4udGhpcy5TYih0LGkpLC4uLnMuU2godCl9fUJnKCl7Y29uc3QgdD17b3Q6dGhpcy5iZyxmbDp0aGlzLmxlLkV0KCkuZmwoKSxsdDp0aGlzLlNnLGhTOnRoaXMuYWUuRnQoKS5OdCh0aGlzLmFlLk4oKS5iYXNlLGYodGhpcy5hZS5MdCgpKS5XdCl9O3RoaXMua2cuaHQodCl9fWNvbnN0IHFoPXt0eXBlOiJIaXN0b2dyYW0iLGlzQnVpbHRJbjohMCxkZWZhdWx0T3B0aW9uczp7Y29sb3I6IiMyNmE2OWEiLGJhc2U6MH0sb2I6KHQsaSk9Pm5ldyBGaCh0LGkpfTtjbGFzcyBXaHtjb25zdHJ1Y3Rvcih0LGkpe3RoaXMueXQ9dCx0aGlzLmxTPWksdGhpcy5vUygpfWRldGFjaCgpe3RoaXMueXQuZGV0YWNoUHJpbWl0aXZlKHRoaXMubFMpfWdldFBhbmUoKXtyZXR1cm4gdGhpcy55dH1hcHBseU9wdGlvbnModCl7dGhpcy5sUy52cj8uKHQpfW9TKCl7dGhpcy55dC5hdHRhY2hQcmltaXRpdmUodGhpcy5sUyl9fWNvbnN0IFFoPXt2aXNpYmxlOiEwLGhvcnpBbGlnbjoiY2VudGVyIix2ZXJ0QWxpZ246ImNlbnRlciIsbGluZXM6W119LERoPXtjb2xvcjoicmdiYSgwLCAwLCAwLCAwLjUpIixmb250U2l6ZTo0OCxmb250RmFtaWx5OlMsZm9udFN0eWxlOiIiLHRleHQ6IiJ9O2NsYXNzIEtoe2NvbnN0cnVjdG9yKHQpe3RoaXMuX1M9bmV3IE1hcCx0aGlzLnF0PXR9ZHJhdyh0KXt0LnVzZU1lZGlhQ29vcmRpbmF0ZVNwYWNlKCh0PT57aWYoIXRoaXMucXQudmlzaWJsZSlyZXR1cm47Y29uc3R7Y29udGV4dDppLG1lZGlhU2l6ZTpzfT10O2xldCBlPTA7Zm9yKGNvbnN0IHQgb2YgdGhpcy5xdC5saW5lcyl7aWYoMD09PXQudGV4dC5sZW5ndGgpY29udGludWU7aS5mb250PXQuUDtjb25zdCBoPXRoaXMudVMoaSx0LnRleHQpO2g+cy53aWR0aD90LkZjPXMud2lkdGgvaDp0LkZjPTEsZSs9dC5saW5lSGVpZ2h0KnQuRmN9bGV0IGg9MDtzd2l0Y2godGhpcy5xdC52ZXJ0QWxpZ24pe2Nhc2UidG9wIjpoPTA7YnJlYWs7Y2FzZSJjZW50ZXIiOmg9TWF0aC5tYXgoKHMuaGVpZ2h0LWUpLzIsMCk7YnJlYWs7Y2FzZSJib3R0b20iOmg9TWF0aC5tYXgocy5oZWlnaHQtZSwwKX1mb3IoY29uc3QgdCBvZiB0aGlzLnF0LmxpbmVzKXtpLnNhdmUoKSxpLmZpbGxTdHlsZT10LmNvbG9yO2xldCBlPTA7c3dpdGNoKHRoaXMucXQuaG9yekFsaWduKXtjYXNlImxlZnQiOmkudGV4dEFsaWduPSJsZWZ0IixlPXQubGluZUhlaWdodC8yO2JyZWFrO2Nhc2UiY2VudGVyIjppLnRleHRBbGlnbj0iY2VudGVyIixlPXMud2lkdGgvMjticmVhaztjYXNlInJpZ2h0IjppLnRleHRBbGlnbj0icmlnaHQiLGU9cy53aWR0aC0xLXQubGluZUhlaWdodC8yfWkudHJhbnNsYXRlKGUsaCksaS50ZXh0QmFzZWxpbmU9InRvcCIsaS5mb250PXQuUCxpLnNjYWxlKHQuRmMsdC5GYyksaS5maWxsVGV4dCh0LnRleHQsMCx0LmNTKSxpLnJlc3RvcmUoKSxoKz10LmxpbmVIZWlnaHQqdC5GY319KSl9dVModCxpKXtjb25zdCBzPXRoaXMuZFModC5mb250KTtsZXQgZT1zLmdldChpKTtyZXR1cm4gdm9pZCAwPT09ZSYmKGU9dC5tZWFzdXJlVGV4dChpKS53aWR0aCxzLnNldChpLGUpKSxlfWRTKHQpe2xldCBpPXRoaXMuX1MuZ2V0KHQpO3JldHVybiB2b2lkIDA9PT1pJiYoaT1uZXcgTWFwLHRoaXMuX1Muc2V0KHQsaSkpLGl9fWNsYXNzIE9oe2NvbnN0cnVjdG9yKHQpe3RoaXMueW49QmgodCl9a3QodCl7dGhpcy55bj1CaCh0KX1yZW5kZXJlcigpe3JldHVybiBuZXcgS2godGhpcy55bil9fWZ1bmN0aW9uIFZoKHQpe3JldHVybnsuLi50LFA6Qyh0LmZvbnRTaXplLHQuZm9udEZhbWlseSx0LmZvbnRTdHlsZSksCmxpbmVIZWlnaHQ6dC5saW5lSGVpZ2h0fHwxLjIqdC5mb250U2l6ZSxjUzowLEZjOjB9fWZ1bmN0aW9uIEJoKHQpe3JldHVybnsuLi50LGxpbmVzOnQubGluZXMubWFwKFZoKX19ZnVuY3Rpb24gJGgodCl7cmV0dXJuey4uLkRoLC4uLnR9fWZ1bmN0aW9uIEFoKHQpe3JldHVybnsuLi5RaCwuLi50LGxpbmVzOnQubGluZXM/Lm1hcCgkaCk/P1tdfX1jbGFzcyBaaHtjb25zdHJ1Y3Rvcih0KXt0aGlzLnluPUFoKHQpLHRoaXMuZlM9W25ldyBPaCh0aGlzLnluKV19dXBkYXRlQWxsVmlld3MoKXt0aGlzLmZTLmZvckVhY2goKHQ9PnQua3QodGhpcy55bikpKX1wYW5lVmlld3MoKXtyZXR1cm4gdGhpcy5mU31hdHRhY2hlZCh7cmVxdWVzdFVwZGF0ZTp0fSl7dGhpcy5wUz10fWRldGFjaGVkKCl7dGhpcy5wUz12b2lkIDB9dnIodCl7dGhpcy55bj1BaCh7Li4udGhpcy55biwuLi50fSksdGhpcy5wUyYmdGhpcy5wUygpfX1mdW5jdGlvbiBIaCh0LGkpe3JldHVybiBuZXcgV2godCxuZXcgWmgoaSkpfWNvbnN0IEdoPXsuLi5oLGNvbG9yOiIjMjE5NmYzIn19fV0pOw=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.281Z","timestamp":1785154590281,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/65862.95764752c09f3f18f890.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-8593\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e62fac6e0df97ae4da262a0f281d15bb\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":34195,"size_decoded":11853,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (13834)","md5":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-27T14:18:36.427118Z","times_seen":1638,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNjU4NjJdLHszNzcyMjYoZSx0LG8pe28uZCh0LHtvbldpZGdldDooKT0+c30pO2NvbnN0IHI9bmV3IE1hcDtmdW5jdGlvbiBzKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxvPWAke3R9JHtlfWA7cmV0dXJuIHIuaGFzKG8pfHxyLnNldChvLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG8paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IHI9WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxzPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IF87Zm9yKGxldCBlPXIubGVuZ3RoLTE7ZT49MDtlLS0paWYoXz1uZXcgUmVnRXhwKHJbZV0pLF8udGVzdChzKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksci5nZXQobyk/PyExfX0sMzAwMjg2KGUsdCxvKXsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbmV3IGNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fdGVzdD1lW3RdPXt9fXByb3ZpZGUoZSx0KXt0aGlzLl90ZXN0W2VdPXR9fSh3aW5kb3csInFhR2xvYmFscyIpfSw1ODc0MzYoZSx0LG8pe2Z1bmN0aW9uIHIoZSx0LG8scixzKXtsZXQgXz0iIjtpZihyPXI/IjsgcGF0aD0iK3I6IiIscz1zPyI7IGRvbWFpbj0iK3M6IiIsbyl7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbyo2MCo2MCoxZTMpLF89IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIF89IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrXytzK3J9ZnVuY3Rpb24gcyhlKXtjb25zdCB0PWUrIj0iLG89ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxvLmxlbmd0aDtlKyspe2xldCByPW9bZV07Zm9yKDsiICI9PT1yLmNoYXJBdCgwKTspcj1yLnN1YnN0cmluZygxLHIubGVuZ3RoKTtpZigwPT09ci5pbmRleE9mKHQpKXJldHVybiByLnN1YnN0cmluZyh0Lmxlbmd0aCxyLmxlbmd0aCl9cmV0dXJuIG51bGx9by5kKHQse2dldDooKT0+cyxzZXQ6KCk9PnJ9KX0sOTQ4MzgwKGUsdCxvKXtvLmQodCx7RGVsZWdhdGU6KCk9Pl99KTtjb25zdCByPSgwLG8oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uRGVsZWdhdGUiKTtmdW5jdGlvbiBzKGUpe3JldHVybiFlLnNpbmdsZVNob3R9Y2xhc3MgX3tjb25zdHJ1Y3Rvcigpe3RoaXMuZmlyZT10aGlzLl9maXJlSW1wbC5iaW5kKHRoaXMpLHRoaXMuX2xpc3RlbmVycz1bXX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX2xpc3RlbmVycy5wdXNoKHtvYmplY3Q6ZSxtZW1iZXI6dCxzaW5nbGVTaG90OiEhbyxza2lwOiExfSl9dW5zdWJzY3JpYmUoZSx0KXtmb3IobGV0IG89MDtvPHRoaXMuX2xpc3RlbmVycy5sZW5ndGg7KytvKXtjb25zdCByPXRoaXMuX2xpc3RlbmVyc1tvXTtpZihyLm9iamVjdD09PWUmJnIubWVtYmVyPT09dCl7ci5za2lwPSEwLHRoaXMuX2xpc3RlbmVycy5zcGxpY2UobywxKTticmVha319fXVuc3Vic2NyaWJlQWxsKGUpe2ZvcihsZXQgdD10aGlzLl9saXN0ZW5lcnMubGVuZ3RoLTE7dD49MDstLXQpe2NvbnN0IG89dGhpcy5fbGlzdGVuZXJzW3RdO28ub2JqZWN0PT09ZSYmKG8uc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKHQsMSkpfX1kZXN0cm95KCl7dGhpcy5fbGlzdGVuZXJzPVtdfV9maXJlSW1wbCguLi5lKXtjb25zdCB0PXRoaXMuX2xpc3RlbmVyczt0aGlzLl9saXN0ZW5lcnM9dGhpcy5fbGlzdGVuZXJzLmZpbHRlcihzKTtjb25zdCBvPXQubGVuZ3RoO2ZvcihsZXQgcz0wO3M8bzsrK3Mpe2NvbnN0IG89dFtzXTtpZighby5za2lwKXRyeXtvLm1lbWJlci5hcHBseShvLm9iamVjdHx8bnVsbCxlKX1jYXRjaChlKXtyLmxvZ0Vycm9yKGAke2UmJihlLnN0YWNrfHxlLm1lc3NhZ2UpfWApfX19fX0sNTM0NDQwKGUsdCxvKXtvLmQodCx7bnVtT2ZEZWNpbWFsUGxhY2VzOigpPT5ffSk7dmFyIHI9byg3MTI3NDUpLHM9by5uKHIpO2Z1bmN0aW9uIF8oZSl7cmV0dXJuKG5ldyhzKCkpKGUpLnRvRml4ZWQoKS5zcGxpdCgiLiIpWzFdfHwiIikubGVuZ3RofX0sMjMyMzY0KGUsdCxvKXtvLmQodCx7V2F0Y2hlZFZhbHVlOigpPT5ffSk7Y29uc3Qgcj0oMCwKbygyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiBzKGUpe3IubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3MgX3tjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihvLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgcj1vLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihvLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmciYmby5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO28uX3ZhbHVlPWU7Y29uc3QgXz1vLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgaT0wO2ZvcihsZXQgdD0wO3Q8Xy5sZW5ndGg7dCsrKXtfW3RdLm9uY2UmJihvLl9saXN0ZW5lcnMuc3BsaWNlKHQtaSwxKSxpKyspO3RyeXtfW3RdLmNiKGUpfWNhdGNoKGUpe3MoZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBvPSEhdCYmISF0Lm9uY2Uscj0hIXQmJiEhdC5jYWxsV2l0aExhc3QsXz10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKHImJl8uaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShfLl92YWx1ZSl9Y2F0Y2goZSl7cyhlKX1pZihvKXJldHVybn1fLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBvPXQuX2xpc3RlbmVycztmb3IobGV0IHI9by5sZW5ndGg7ci0tOylvW3JdLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG9bcl0uY2IhPT1lJiZudWxsIT09ZXx8by5zcGxpY2UociwxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxvKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbygpO2NvbnN0IHI9cz0+e3QocykmJihlLnVuc3Vic2NyaWJlKHIpLG8oKSl9O2Uuc3Vic2NyaWJlKHIse2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe3MoZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgaSh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBpIGV4dGVuZHMgX3tjb25zdHJ1Y3RvcihlLHQsbyl7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW99ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe3MoZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7cmV0dXJuIHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZXx8KHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZT17Li4uc3VwZXIucmVhZG9ubHkoKSxkZXN0cm95OigpPT50aGlzLmRlc3Ryb3koKSxyZWFkb25seSgpe3JldHVybiB0aGlzfX0pLHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZX1yZWxlYXNlKCl7dGhpcy5fd2Vha1JlZmVyZW5jZXx8c3VwZXIucmVsZWFzZSgpfX19LDU5ODkyMihlLHQsbyl7by5kKHQse2Zvcm1hdE51bWJlcjooKT0+aSxwYXJzZU51bWJlcjooKT0+bn0pO3ZhciByPW8oNzEyNzQ1KSxzPW8oNjYzMDQ2KSxfPW8oMTE1MjkzKTtmdW5jdGlvbiBpKGUsdCxvLHMsXyl7aWYoIU51bWJlci5pc0Zpbml0ZShlKSlyZXR1cm5gJHtlfWA7Y29uc3QgaT0tMT09PU1hdGguc2lnbihlKT8iLSI6IiI7ZT1NYXRoLmFicyhlKTtsZXQgYT12b2lkIDA9PT1vP2UudG9TdHJpbmcoKTplLnRvRml4ZWQobyk7aWYoYS5pbmNsdWRlcygiZSIpKXtpZighcylyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gO3tjb25zdCBvPW5ldyByLkJpZyhlKTtpZihhPW8ubHQoMSk/by50b0ZpeGVkKCk6by50b1N0cmluZygpLGEuaW5jbHVkZXMoImUiKSlyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gfX1jb25zdCBuPWEuc3BsaXQoIi4iKSxsPW5bMF07bGV0IGM9blsxXTtjb25zdCBkPWZ1bmN0aW9uKGUsdCl7bGV0IG89ZS5sZW5ndGg7Y29uc3Qgcj1bXTtmb3IoO28+MDspci51bnNoaWZ0KGUuc2xpY2UoTWF0aC5tYXgoby0zLDApLG8pKSxvLT0zO3JldHVybiByLmpvaW4odCl9KGwsdC5ncm91cGluZ1NlcGFyYXRvcikKO3JldHVybiB2b2lkIDAhPT1vJiYoYz0wPT09bz92b2lkIDA6ZS50b0ZpeGVkKG8pLnNsaWNlKC1vKSksdm9pZCAwIT09XyYmdm9pZCAwIT09YyYmKGM9ZnVuY3Rpb24oZSx0KXtsZXQgbz1lLmxlbmd0aC0xO2ZvcihsZXQgcj1vO3I+PXQmJiIwIj09PWVbcl07ci09MSlvLT0xO3JldHVybiBlLnNsaWNlKDAsbysxKX0oYyxfKSksYz9gJHtpfSR7ZH0ke3QuZGVjaW1hbFNpZ259JHtjfWA6YCR7aX0ke2R9YH1jb25zdCBhPSgwLHMuZGVmYXVsdCkoKGU9Pntjb25zdCB0PWUucmVwbGFjZSgvWy1bXF17fSgpKis/LixcXF4kfCNcc10vZywiXFwkJiIpO3JldHVybiBuZXcgUmVnRXhwKHQsImdtIil9KSk7ZnVuY3Rpb24gbihlLHQpe2lmKC9eKE5hTnxbK3wtXT9JbmZpbml0eSkkLy50ZXN0KGUpKXJldHVybiBwYXJzZUZsb2F0KGUpO2U9KDAsXy5zdHJpcExUUk1hcmtzKShlKTtjb25zdCBvPWEodC5ncm91cGluZ1NlcGFyYXRvcik7cmV0dXJuIG8mJihlPWUucmVwbGFjZShvLCIiKSksZT1lLnJlcGxhY2UodC5kZWNpbWFsU2lnbiwiLiIpLC9eKFwrfC0pP1xkKyhcLlxkK3xcLik/KGUoXCt8LSk/XGQrKT8kLy50ZXN0KGUpP3BhcnNlRmxvYXQoZSk6TmFOfX0sNTQ2NDg1KGUsdCxvKXtvLmQodCx7Z2V0TnVtYmVyRm9ybWF0OigpPT5kfSk7bGV0IHI9bnVsbDt2YXIgcz1vKDg1NjMyNCk7ZnVuY3Rpb24gXyhlLHQpe3JldHVybntncm91cGluZ1NlcGFyYXRvcjplLGRlY2ltYWxTaWduOnR9fWNvbnN0IGk9XygiLCIsIi4iKSxhPV8oIi4iLCIsIiksbj1fKCLigK8iLCIsIiksbD1fKCIiLCIuIiksYz1uZXcgTWFwKFtbImVuIixpXSxbInRoIixpXSxbImphIixpXSxbImtvIixpXSxbInpoIixpXSxbInpoX1RXIixpXSxbImFyIixpXSxbImhlX0lMIixpXSxbIm1zX01ZIixpXSxbInZpIixpXSxbImRlIixhXSxbImVzIixhXSxbIml0IixhXSxbInRyIixhXSxbInB0IixhXSxbImlkX0lEIixhXSxbImZyIixuXSxbInBsIixuXSxbInJ1IixuXV0pO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIGU/bDoodD1jLmdldCgoMCxzLmdldExhbmd1YWdlKSgpKXx8bCxyP3IodCk6dCk7dmFyIHR9fSw3NTU2MjcoZSx0LG8pe28uZCh0LHtQcmljZUZvcm1hdHRlcjooKT0+eX0pO3ZhciByPW8oNjAxODQxKTtmdW5jdGlvbiBzKGUsdCxvLHIpe2xldCBzPTA7aWYoZT4wJiZ0PjApe2xldCB0PWU7Zm9yKG8mJnImJih0Lz1yKTt0PjE7KXQvPTEwLHMrK31yZXR1cm4gc312YXIgXz1vKDcxMjc0NSksaT1vKDgyMjQzMSksYT1vKDU5ODkyMiksbj1vKDU0NjQ4NSksbD1vKDc4MzI1NCksYz1vKDEzODYzOCksZD1vKDExNTI5MyksdT1vKDUzNTMwKTtmdW5jdGlvbiBtKGUsdCxvKXtjb25zdCByPSgwLGMuZW5zdXJlTm90TnVsbCkoKDAsdS5nZXRNaW5UaWNrRGF0YSkoe3ByaWNlOm8sbWluVGljazpudWxsLHZhcmlhYmxlTWluVGlja0RhdGE6dCxzaG91bGRDaGVja0ZvckVxdWFsaXR5OiEwfSkpLHtwcmljZVNjYWxlOl8sbWluTW92ZTppLG1pbk1vdmUyOmF9PXI7cmV0dXJue3ByaWNlU2NhbGU6XyxtaW5Nb3ZlOmksZnJhY3Rpb25hbExlbmd0aDpzKF8saSxlLGEpfX1jbGFzcyBoe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlckVycm9ycz17Y3VzdG9tOmwudChudWxsLHZvaWQgMCxvKDYxNjE4KSksZnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oOTY4ODE1KSksc2Vjb25kRnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oODUwMjk4KSl9O2NvbnN0e3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6cyxpZ25vcmVNaW5Nb3ZlOl8sdmFyaWFibGVNaW5UaWNrOmksZnJhY3Rpb25hbExlbmd0aDphfT1lO3RoaXMuX3ByaWNlU2NhbGU9dCx0aGlzLl9taW5Nb3ZlPXIsdGhpcy5fbWluTW92ZTI9cyx0aGlzLl9pZ25vcmVNaW5Nb3ZlPV8sdGhpcy5fZnJhY3Rpb25hbExlbmd0aD1hLHRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGE9dm9pZCAwPT09aT92b2lkIDA6KDAsdS5tYWtlVmFyaWFibGVNaW5UaWNrRGF0YSkoe3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6c30saSl9Zm9ybWF0SW1wbChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHNpZ25OZWdhdGl2ZTpyPSEwLHRhaWxTaXplOnMsY3V0RnJhY3Rpb25hbEJ5UHJlY2lzaW9uOl89ITEsdXNlUnRsRm9ybWF0Omk9ITAsdmFyaWFibGVNaW5UaWNrRGF0YVByaWNlOmEsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om4sbm9FeHBvbmVudGlhbEZvcm06bCxyZW1vdmVBbGxFbmRpbmdaZXJvczpjfT10O2xldCB1PSIiO2U8MD91PSExPT09cj8iIjoi4oiSIjplJiYhMD09PW8mJih1PSIrIik7Y29uc3QgbT10aGlzLl9mb3JtYXRVbnNpZ25lZChNYXRoLmFicyhlKSx7dGFpbFNpemU6cyxjdXRGcmFjdGlvbmFsQnlQcmVjaXNpb246Xyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6YSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixub0V4cG9uZW50aWFsRm9ybTpsLHJlbW92ZUFsbEVuZGluZ1plcm9zOmN9KSxoPSIwIj09PW0/bTp1K207cmV0dXJuIGk/KDAsZC5mb3JjZUxUUlN0cikoaCk6aH1wYXJzZShlLHQpe3JldHVybiIrIj09PShlPShlPSgwLGQuc3RyaXBMVFJNYXJrcykoZSkpLnJlcGxhY2UoIuKIkiIsIi0iKSlbMF0mJihlPWUuc3Vic3RyaW5nKDEpKSx0aGlzLl9wYXJzZVVuc2lnbmVkKGUsdCl9X3JlbW92ZUVuZGluZ1plcm9zKGUsdCl7Zm9yKGxldCBvPTA7bzx0JiYiMCI9PT1lW2UubGVuZ3RoLTFdO28rKyllPWUuc3Vic3RyaW5nKDAsZS5sZW5ndGgtMSk7cmV0dXJuIGV9fWNsYXNzIGcgZXh0ZW5kcyBoe2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LG5vRXhwb25lbnRpYWxGb3JtOm99PWU7dGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0PXQsdGhpcy5fbm9FeHBvbmVudGlhbEZvcm09b31oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4gMTA9PT10aGlzLl9taW5Nb3ZlMn1fcGFyc2VVbnNpZ25lZChlLHQpe3JldHVybiB0aGlzLl9wYXJzZUFzRGVjaW1hbChlLHQpfV9mb3JtYXRVbnNpZ25lZChlLHQpewpjb25zdHt0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyPSExLHZhcmlhYmxlTWluVGlja0RhdGFQcmljZTpzLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YT0hMX09dCxuPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLGZyYWN0aW9uYWxMZW5ndGg6dGhpcy5fZnJhY3Rpb25hbExlbmd0aCx0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YX07cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGEmJihPYmplY3QuYXNzaWduKG4sbSghMSx0aGlzLl92YXJpYWJsZU1pblRpY2tEYXRhLHM/P24ucHJpY2UpKSx0aGlzLl9pZ25vcmVNaW5Nb3ZlJiYobi5taW5Nb3ZlPTEpKSx0aGlzLl9mb3JtYXRBc0RlY2ltYWwobil9X2Zvcm1hdEFzRGVjaW1hbChlKXtjb25zdHtwcmljZTp0LHByaWNlU2NhbGU6byxtaW5Nb3ZlOnIsZnJhY3Rpb25hbExlbmd0aDpzPTAsdGFpbFNpemU6bD0wLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpjLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpkPXRoaXMuX2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTp1PXRoaXMuX25vRXhwb25lbnRpYWxGb3JtLHJlbW92ZUFsbEVuZGluZ1plcm9zOm19PWUsaD0oMCxuLmdldE51bWJlckZvcm1hdCkoZCk7aWYodD49MWUyMSYmIXUpcmV0dXJuIHQudG9TdHJpbmcoKS5yZXBsYWNlKCIuIixoLmRlY2ltYWxTaWduKTtjb25zdCBnPU1hdGgucG93KDEwLGwpKm8vKGM/MTpyKSxwPTEvZztsZXQgYjtpZihnPjEpYj1NYXRoLmZsb29yKHQpO2Vsc2V7Y29uc3QgZT1NYXRoLnJvdW5kKHQvcCkqcDtiPTA9PT1NYXRoLnJvdW5kKCh0LWUpL3ApP2U6ZStwfWxldCB3PSIiO2lmKGc+MSl7bGV0IGU9Yz9uZXcgXy5CaWcodCkubXVsKGcpLnJvdW5kKHZvaWQgMCwwKS5taW51cyhuZXcgXy5CaWcoYikubXVsKGcpKS50b051bWJlcigpOnBhcnNlRmxvYXQoKE1hdGgucm91bmQodCpnKS1iKmcpLnRvRml4ZWQocykpO2U+PWcmJihlLT1nLGIrPTEpLGU9Yz9uZXcgXy5CaWcoZSkucm91bmQocywwKS50b051bWJlcigpOnBhcnNlRmxvYXQoZS50b0ZpeGVkKHMpKSpyO2NvbnN0IG89KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZSxzK2wpO2lmKCF1JiZ0PDEmJnM+PTEwJiZvLnN0YXJ0c1dpdGgoIjAwMDAiKSl7bGV0IGU9NDtmb3IobGV0IHQ9ZTt0PG8ubGVuZ3RoJiYiMCI9PT1vW3RdO3QrKyllKys7Y29uc3QgdD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLnNsaWNlKGUpLHMpO3JldHVybiIiPT09dD8iMCI6YDAke2guZGVjaW1hbFNpZ259JHt0fWUtJHtlfWB9Y29uc3QgYT10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLG0/by5sZW5ndGg6bCk7dz1hP2guZGVjaW1hbFNpZ24rYTphfWNvbnN0IHk9KDAsYS5mb3JtYXROdW1iZXIpKGIsaCx2b2lkIDAsdSk7cmV0dXJuIHkuaW5jbHVkZXMoImUiKT95Onkrd31fcGFyc2VBc0RlY2ltYWwoZSx0PXt9KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6b309dCxyPSgwLG4uZ2V0TnVtYmVyRm9ybWF0KSh0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXR8fG8pLHM9KDAsYS5wYXJzZU51bWJlcikoZSxyKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKHMpP3t2YWx1ZTpzLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChzKX06e2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX19Y29uc3QgcD0iJyIsYj1uZXcgUmVnRXhwKC9eKC0/KVswLTldKyQvKTtjbGFzcyB3IGV4dGVuZHMgaHtoYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4hMX1fcGFyc2VVbnNpZ25lZChlKXtyZXR1cm4gdGhpcy5fbWluTW92ZTI/dGhpcy5fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSk6dGhpcy5fcGFyc2VBc1NpbmdsZUZyYWN0aW9uYWwoZSl9X2Zvcm1hdFVuc2lnbmVkKGUsdCl7Y29uc3R7dGFpbFNpemU6byx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6cn09dCxzPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLG1pbk1vdmUyOnRoaXMuX21pbk1vdmUyLGZyYWN0aW9uYWxMZW5ndGg6KDAsYy5lbnN1cmVEZWZpbmVkKSh0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoKSx0YWlsU2l6ZTpvfTtyZXR1cm4gdm9pZCAwIT09dGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSYmT2JqZWN0LmFzc2lnbihzLG0oITAsdGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSxyPz9zLnByaWNlKSksdGhpcy5fZm9ybWF0QXNGcmFjdGlvbmFsKHMpfV9wYXJzZUFzU2luZ2xlRnJhY3Rpb25hbChlKXtsZXQgdD1iLmV4ZWMoZSk7aWYodCl7Y29uc3QgdD1wYXJzZUZsb2F0KGUpO3JldHVybnt2YWx1ZTp0LHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbCh0KX19aWYodD1uZXcgUmVnRXhwKCJeKC0/KShbMC05XSspXFwnKFswLTldKykkIikuZXhlYyhlKSx0KXtjb25zdCBlPSEhdFsxXSxvPXBhcnNlSW50KHRbMl0pLHI9dGhpcy5fcHJpY2VTY2FsZSxzPXRoaXMuX3BhdGNoRnJhY3RQYXJ0KHBhcnNlSW50KHRbM10pLDEscik7aWYocz49cnx8czwwKXJldHVybntlcnJvcjp0aGlzLl9mb3JtYXR0ZXJFcnJvcnMuZnJhY3Rpb24scmVzOiExfTtsZXQgXz1vK3MvcjtyZXR1cm4gZSYmKF89LV8pLHt2YWx1ZTpfLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChfKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSl7bGV0IHQ9Yi5leGVjKGUpO2lmKHQpe2NvbnN0IHQ9cGFyc2VGbG9hdChlKTtyZXR1cm57dmFsdWU6dCxyZXM6ITAsc3VnZ2VzdDp0aGlzLmZvcm1hdEltcGwodCl9fQppZih0PW5ldyBSZWdFeHAoIl4oLT8pKFswLTldKylcXCcoWzAtOV0rKVxcJyhbMC05XSspJCIpLmV4ZWMoZSksdCl7Y29uc3QgZT0hIXRbMV0sbz1wYXJzZUludCh0WzJdKSxyPXZvaWQgMCE9PXRoaXMuX21pbk1vdmUyJiZudWxsIT09dGhpcy5fbWluTW92ZTI/dGhpcy5fbWluTW92ZTI6TmFOLHM9dGhpcy5fcHJpY2VTY2FsZS9yLF89dGhpcy5fbWluTW92ZTIsaT10aGlzLl9wYXRjaEZyYWN0UGFydChwYXJzZUludCh0WzNdKSwxLHMpLGE9dGhpcy5fcGF0Y2hGcmFjdFBhcnQocGFyc2VJbnQodFs0XSksMixfKTtpZihpPj1zfHxpPDApcmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5mcmFjdGlvbixyZXM6ITF9O2lmKG51bGwhPV8mJmE+PV98fGE8MClyZXR1cm57ZXJyb3I6dGhpcy5fZm9ybWF0dGVyRXJyb3JzLnNlY29uZEZyYWN0aW9uLHJlczohMX07bGV0IG49bnVsbCE9Xz9vK2kvcythLyhzKl8pOk5hTjtyZXR1cm4gZSYmKG49LW4pLHt2YWx1ZTpuLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChuKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGF0Y2hGcmFjdFBhcnQoZSx0LG8pe2NvbnN0IHI9ezA6MCw1OjF9LHM9ezA6MCwyOjEsNToyLDc6M30sXz17MDowLDE6MSwyOjIsMzozLDU6NCw2OjUsNzo2LDg6N307cmV0dXJuIDI9PT1vP3ZvaWQgMD09PXJbZV0/LTE6cltlXTo0PT09bz92b2lkIDA9PT1zW2VdPy0xOnNbZV06OD09PW8mJjI9PT10P3ZvaWQgMD09PV9bZV0/LTE6X1tlXTplfV9mb3JtYXRBc0ZyYWN0aW9uYWwoZSl7Y29uc3R7cHJpY2U6dCx0YWlsU2l6ZTpvLHByaWNlU2NhbGU6cixtaW5Nb3ZlOnMsbWluTW92ZTI6XyxmcmFjdGlvbmFsTGVuZ3RoOmF9PWUsbj1yL3M7bGV0IGw9TWF0aC5mbG9vcih0KSxjPW8/TWF0aC5mbG9vcih0Km4pLWwqbjpNYXRoLnJvdW5kKHQqbiktbCpuO2M9PT1uJiYoYz0wLGwrPTEpO2xldCBkPSIiO2lmKG8pe2xldCBlPSh0LWwtYy9uKSpuO2U9TWF0aC5yb3VuZChlKk1hdGgucG93KDEwLG8pKSxkPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGUsbyksZD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhkLG8pfWlmKCFhKXRocm93IG5ldyBFcnJvcigiX2ZyYWN0aW9uYWxMZW5ndGggaXMgbm90IGNhbGN1bGF0ZWQiKTtsZXQgdT0iIjtpZihfKXtjb25zdCBlPWMlXztjPShjLWUpL187Y29uc3QgdD0oMCxpLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjLGEpLG89dGhpcy5fZ2V0RnJhY3RQYXJ0KGUsMixfKTt1PXQrcCtvfWVsc2UgYz10aGlzLl9nZXRGcmFjdFBhcnQoYywxLHIpLHU9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoYypzLGEpO3JldHVybiBsLnRvU3RyaW5nKCkrcCt1K2R9X2dldEZyYWN0UGFydChlLHQsbyl7Y29uc3Qgcj1bMCw1XSxzPVswLDIsNSw3XSxfPVswLDEsMiwzLDUsNiw3LDhdO3JldHVybiAyPT09bz92b2lkIDA9PT1yW2VdPy0xOnJbZV06ND09PW8/dm9pZCAwPT09c1tlXT8tMTpzW2VdOjg9PT1vJiYyPT09dD92b2lkIDA9PT1fW2VdPy0xOl9bZV06ZX19Y2xhc3MgeXtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InByaWNlIjtjb25zdHttaW5Nb3ZlMjp0LGZyYWN0aW9uYWw6byx2YXJpYWJsZU1pblRpY2s6XyxpZ25vcmVNaW5Nb3ZlOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmF9PWUsbj0oMCxyLmlzTnVtYmVyKShlLnByaWNlU2NhbGUpJiYoMCxyLmlzSW50ZWdlcikoZS5wcmljZVNjYWxlKT9lLnByaWNlU2NhbGU6MTAwO2lmKG48MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGJhc2UiKTtjb25zdCBsPSFlLm1pbk1vdmV8fGk/MTplLm1pbk1vdmUsYz1zKG4sbCxvLHQpLGQ9ey4uLmUsbWluTW92ZTpsLHByaWNlU2NhbGU6bixmcmFjdGlvbmFsTGVuZ3RoOmN9O3RoaXMuX3ByaWNlU2NhbGU9bix0aGlzLl9taW5Nb3ZlPWwsdGhpcy5fbWluTW92ZTI9dCx0aGlzLl9mcmFjdGlvbmFsPW8sdGhpcy5fdmFyaWFibGVNaW5UaWNrPV8sdGhpcy5faWdub3JlTWluTW92ZT1pLHRoaXMuX2ZyYWN0aW9uYWxMZW5ndGg9Yyx0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ9YSx0aGlzLl9ub0V4cG9uZW50aWFsRm9ybT1lLm5vRXhwb25lbnRpYWxGb3JtLHRoaXMuX2ltcGxlbWVudGF0aW9uPW8/bmV3IHcoZCk6bmV3IGcoZCl9aXNGcmFjdGlvbmFsKCl7cmV0dXJuISF0aGlzLl9mcmFjdGlvbmFsfXN0YXRlKCl7cmV0dXJue21pbk1vdmU6dGhpcy5fbWluTW92ZSxtaW5Nb3ZlMjp0aGlzLl9taW5Nb3ZlMixwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsdmFyaWFibGVNaW5UaWNrOnRoaXMuX3ZhcmlhYmxlTWluVGljayxpZ25vcmVNaW5Nb3ZlOnRoaXMuX2lnbm9yZU1pbk1vdmUsZnJhY3Rpb25hbDp0aGlzLl9mcmFjdGlvbmFsLG5vRXhwb25lbnRpYWxGb3JtOnRoaXMuX25vRXhwb25lbnRpYWxGb3JtfX1mb3JtYXRDaGFuZ2UoZSx0LG8pe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5mb3JtYXRJbXBsKGUtdCx7Li4ubyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6TWF0aC5taW4oTWF0aC5hYnMoZSksTWF0aC5hYnModCkpfSl9Zm9ybWF0KGUsdCl7cmV0dXJuIHRoaXMuX2ltcGxlbWVudGF0aW9uLmZvcm1hdEltcGwoZSx0KX1wYXJzZShlLHQpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5wYXJzZShlLHQpfWhhc0ZvcmV4QWRkaXRpb25hbFByZWNpc2lvbigpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgeShlKX19fSw3ODMyNTQoZSx0LG8pe28uZCh0LHt0OigpPT5yfSk7Y29uc3Qgcj1vLmkxOG5leHR9LDYyMDM1NChlLHQsbyl7dmFyIHI7by5kKHQse0xvZ29TaXplOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLk1lZGl1bT0wXT0iTWVkaXVtIixlW2UuTGFyZ2U9MV09IkxhcmdlIn0ocnx8KHI9e30pKX0sNzQ5NjQ4KGUsdCxvKXtmdW5jdGlvbiByKGUsdD0hMSl7CiJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGU/dD9zZXRUaW1lb3V0KCgoKT0+ZSgpKSwxKTplKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCgpPT5lKCkpKX1vLmQodCx7d2hlbkRvY3VtZW50UmVhZHk6KCk9PnJ9KTtuZXcgUHJvbWlzZSgoZT0+e3IoZSl9KSl9LDYzNTE4KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyIxNDg1MSI6e30sImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiOnt9LCJjb3VudGRvd24iOnt9LCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiI6e30sInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiOnt9LCJncmF5aW5nX2Rpc2FibGVkX3Rvb2xzX2VuYWJsZWQiOnt9LCJ1cGRhdGVfc3R1ZHlfZm9ybWF0dGVyX29uX3N5bWJvbF9yZXNvbHZlIjp7fSwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50Ijp7fSwicGhvbmVfdmVyaWZpY2F0aW9uIjp7fSwic2hvd190cmFkaW5nX25vdGlmaWNhdGlvbnNfaGlzdG9yeSI6e30sInNob3dfaW50ZXJ2YWxfZGlhbG9nX29uX2tleV9wcmVzcyI6e30sImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIjp7InN1YnNldHMiOlsic2hvd19pbnRlcnZhbF9kaWFsb2dfb25fa2V5X3ByZXNzIl19LCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iOnt9LCJoZWFkZXJfc3ltYm9sX3NlYXJjaCI6e30sInN5bWJvbF9zZWFyY2hfaG90X2tleSI6e30sImhlYWRlcl9yZXNvbHV0aW9ucyI6eyJzdWJzZXRzIjpbImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIl19LCJoZWFkZXJfY2hhcnRfdHlwZSI6e30sImhlYWRlcl9zZXR0aW5ncyI6e30sImhlYWRlcl9pbmRpY2F0b3JzIjp7fSwiaGVhZGVyX2NvbXBhcmUiOnt9LCJoZWFkZXJfdW5kb19yZWRvIjp7fSwiaGVhZGVyX3F1aWNrX3NlYXJjaCI6e30sImhlYWRlcl9zY3JlZW5zaG90Ijp7fSwiaGVhZGVyX3NhdmVsb2FkIjp7fSwic3R1ZHlfb25fc3R1ZHkiOnt9LCJzY2FsZXNfZGF0ZV9mb3JtYXQiOnt9LCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiOnt9LCJoZWFkZXJfd2lkZ2V0Ijp7InN1YnNldHMiOlsiaGVhZGVyX3dpZGdldF9kb21fbm9kZSIsImhlYWRlcl9zeW1ib2xfc2VhcmNoIiwiaGVhZGVyX3Jlc29sdXRpb25zIiwiaGVhZGVyX2NoYXJ0X3R5cGUiLCJoZWFkZXJfc2V0dGluZ3MiLCJoZWFkZXJfaW5kaWNhdG9ycyIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX3VuZG9fcmVkbyIsImhlYWRlcl9xdWlja19zZWFyY2giLCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iLCJjb21wYXJlX3N5bWJvbCIsImhlYWRlcl9zY3JlZW5zaG90Il19LCJsZWdlbmRfd2lkZ2V0Ijp7fSwiY29tcGFyZV9zeW1ib2wiOnsic3Vic2V0cyI6WyJoZWFkZXJfY29tcGFyZSJdfSwicHJvcGVydHlfcGFnZXMiOnsic3Vic2V0cyI6WyJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiLCJjaGFydF9wcm9wZXJ0eV9wYWdlIl19LCJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiOnt9LCJjaGFydF9wcm9wZXJ0eV9wYWdlIjp7InN1YnNldHMiOlsiY2hhcnRfcHJvcGVydHlfcGFnZV9zY2FsZXMiLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3RyYWRpbmciLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3JpZ2h0X21hcmdpbl9lZGl0b3IiXX0sImxlZnRfdG9vbGJhciI6e30sInJpZ2h0X3Rvb2xiYXIiOnt9LCJoaWRlX2xlZnRfdG9vbGJhcl9ieV9kZWZhdWx0Ijp7fSwiY29udHJvbF9iYXIiOnt9LCJ3aWRnZXRfbG9nbyI6e30sInRpbWVmcmFtZXNfdG9vbGJhciI6e30sImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiOnsic3Vic2V0cyI6WyJzaG93X2hpZGVfYnV0dG9uX2luX2xlZ2VuZCIsImZvcm1hdF9idXR0b25faW5fbGVnZW5kIiwic3R1ZHlfYnV0dG9uc19pbl9sZWdlbmQiLCJkZWxldGVfYnV0dG9uX2luX2xlZ2VuZCIsImxlZ2VuZF9pbnBsYWNlX2VkaXQiXX0sInNob3dfaGlkZV9idXR0b25faW5fbGVnZW5kIjp7fSwib2JqZWN0X3RyZWVfbGVnZW5kX21vZGUiOnt9LCJmb3JtYXRfYnV0dG9uX2luX2xlZ2VuZCI6e30sInN0dWR5X2J1dHRvbnNfaW5fbGVnZW5kIjp7fSwiZGVsZXRlX2J1dHRvbl9pbl9sZWdlbmQiOnt9LCJsZWdlbmRfaW5wbGFjZV9lZGl0Ijp7fSwiYnJva2VyX2J1dHRvbiI6e30sImJ1eV9zZWxsX2J1dHRvbnMiOnsic3Vic2V0cyI6WyJicm9rZXJfYnV0dG9uIl19LCJzaG93X2J1eV9zZWxsX2J1dHRvbnNfb25fdW5zdXBwb3J0ZWRfcmVzb2x1dGlvbiI6e30sInBhbmVfY29udGV4dF9tZW51Ijp7fSwic2NhbGVzX2NvbnRleHRfbWVudSI6e30sImxlZ2VuZF9jb250ZXh0X21lbnUiOnt9LCJjb250ZXh0X21lbnVzIjp7InN1YnNldHMiOlsicGFuZV9jb250ZXh0X21lbnUiLCJzY2FsZXNfY29udGV4dF9tZW51IiwibGVnZW5kX2NvbnRleHRfbWVudSIsIm9iamVjdHNfdHJlZV9jb250ZXh0X21lbnUiXX0sIml0ZW1zX2Zhdm9yaXRpbmciOnt9LCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSI6e30sInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIjp7InN1YnNldHMiOlsiaXRlbXNfZmF2b3JpdGluZyIsInNhdmVfY2hhcnRfcHJvcGVydGllc190b19sb2NhbF9zdG9yYWdlIl19LCJoYW5kbGVfc2NhbGUiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY2FsZSIsInBpbmNoX3NjYWxlIiwiYXhpc19wcmVzc2VkX21vdXNlX21vdmVfc2NhbGUiXX0sImhhbmRsZV9zY3JvbGwiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY3JvbGwiLCJwcmVzc2VkX21vdXNlX21vdmVfc2Nyb2xsIiwiaG9yel90b3VjaF9kcmFnX3Njcm9sbCIsInZlcnRfdG91Y2hfZHJhZ19zY3JvbGwiXX0sInBsYWluX3N0dWR5bWFya2V0Ijp7fSwiZGlzYWJsZV9yZXNvbHV0aW9uX3JlYnVpbGQiOnt9LCJib3JkZXJfYXJvdW5kX3RoZV9jaGFydCI6e30sImNoYXJ0aW5nX2xpYnJhcnlfZGVidWdfbW9kZSI6e30sInNhdmVsb2FkX3JlcXVpcmVzX2F1dGhlbnRpY2F0aW9uIjp7fSwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIjp7fSwidm9sdW1lX2ZvcmNlX292ZXJsYXkiOnt9LCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0Ijp7fSwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdF9vbmNlIjp7fSwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIjp7fSwibGVhbl9jaGFydF9sb2FkIjp7fSwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0Ijp7fSwic3Rhcl9zb21lX2ludGVydmFsc19ieV9kZWZhdWx0Ijp7fSwibW92ZV9sb2dvX3RvX21haW5fcGFuZSI6e30sInNob3dfYW5pbWF0ZWRfbG9nbyI6e30sImxpbmtfdG9fdHJhZGluZ3ZpZXciOnt9LCJsb2dvX3dpdGhvdXRfbGluayI6e30sImxvZ29fYWx3YXlzX21heGltaXplZCI6e30sInJpZ2h0X2Jhcl9zdGF5c19vbl9zY3JvbGwiOnt9LCJjaGFydF9jb250ZW50X292ZXJyaWRlc19ieV9kZWZhdWx0cyI6e30sInNuYXBzaG90X3RyYWRpbmdfZHJhd2luZ3MiOnt9LCJhbGxvd19zdXBwb3J0ZWRfcmVzb2x1dGlvbnNfc2V0X29ubHkiOnt9LCJ3aWRnZXRiYXJfdGFicyI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sInNob3dfb2JqZWN0X3RyZWUiOnsic3Vic2V0cyI6WyJyaWdodF90b29sYmFyIl19LCJkb21fd2lkZ2V0Ijp7InN1YnNldHMiOlsicmlnaHRfdG9vbGJhciJdfSwiY29sbGFwc2libGVfaGVhZGVyIjp7fSwic3R1ZHlfdGVtcGxhdGVzIjp7fSwia2VlcF9zZWxlY3RlZF9ncm91cF9vbl90b29sX2NyZWF0aW9uIjp7fSwic2lkZV90b29sYmFyX2luX2Z1bGxzY3JlZW5fbW9kZSI6e30sImhlYWRlcl9pbl9mdWxsc2NyZWVuX21vZGUiOnt9LCJyZW1vdmVfbGlicmFyeV9jb250YWluZXJfYm9yZGVyIjp7fSwid2hvdHJhZGVzX2F1dGhfb25seSI6e30sInN1cHBvcnRfbXVsdGljaGFydHMiOnt9LCJkaXNwbGF5X21hcmtldF9zdGF0dXMiOnt9LCJkaXNwbGF5X2RhdGFfbW9kZSI6e30sImRhdGFzb3VyY2VfY29weXBhc3RlIjp7fSwiZHJhd2luZ190ZW1wbGF0ZXMiOnsic3Vic2V0cyI6WyJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIl19LCJleHBhbmRfc3ltYm9sc2VhcmNoX2l0ZW1zIjp7fSwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyI6e30sInN5bWJvbF9zZWFyY2hfZmxhZ3MiOnt9LCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIjp7fSwiYnVncmVwb3J0X2J1dHRvbiI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sImhlYWRlcl90cmFkZV9idXR0b24iOnt9LCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIjp7fSwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iOnt9LCJ0ZXh0X25vdGVzIjp7fSwic2hvd19zb3VyY2VfY29kZSI6e30sInN5bWJvbF9pbmZvIjp7fSwibm9fYmFyc19zdGF0dXMiOnt9LCJjbGVhcl9iYXJzX29uX3Nlcmllc19lcnJvciI6e30sImhpZGVfbG9hZGluZ19zY3JlZW5fb25fc2VyaWVzX2Vycm9yIjp7fSwic2Vjb25kc19yZXNvbHV0aW9uIjp7fSwiZG9udF9zaG93X2Jvb2xlYW5fc3R1ZHlfYXJndW1lbnRzIjp7fSwiaGlkZV9sYXN0X25hX3N0dWR5X291dHB1dCI6e30sInByaWNlX3NjYWxlX2Fsd2F5c19sYXN0X2Jhcl92YWx1ZSI6e30sInN0dWR5X2RpYWxvZ19mdW5kYW1lbnRhbHNfZWNvbm9teV9hZGRvbnMiOnt9LCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyI6e30sInRyYWRpbmdfbm90aWZpY2F0aW9ucyI6e30sImNoYXJ0X2Nyb3NzaGFpcl9tZW51Ijp7fSwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIjp7fSwiaGlkZV9zZXJpZXNfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X292ZXJsYXlfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X2NvbXBhcmVfbGVnZW5kX2l0ZW0iOnt9LCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIjp7fSwidXNlX292ZXJyaWRlc19mb3Jfb3ZlcmxheSI6e30sInRpbWV6b25lX21lbnUiOnt9LCJtYWluX3Nlcmllc19zY2FsZV9tZW51Ijp7fSwic2hvd19sb2dpbl9kaWFsb2ciOnt9LCJyZW1vdmVfaW1nX2Zyb21fcnNzIjp7fSwiYmFyc19tYXJrcyI6e30sImNoYXJ0X3Njcm9sbCI6e30sImNoYXJ0X3pvb20iOnt9LCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiOnt9LCJsb3dfZGVuc2l0eV9iYXJzIjp7fSwiZW5kX29mX3BlcmlvZF90aW1lc2NhbGVfbWFya3MiOnt9LCJvcGVuX2FjY291bnRfbWFuYWdlciI6e30sInNob3dfb3JkZXJfcGFuZWxfb25fc3RhcnQiOnt9LCJvcmRlcl9wYW5lbCI6eyJzdWJzZXRzIjpbIm9yZGVyX3BhbmVsX2Nsb3NlX2J1dHRvbiIsIm9yZGVyX3BhbmVsX3VuZG9jayIsInJpZ2h0X3Rvb2xiYXIiLCJvcmRlcl9pbmZvIl19LCJtdWx0aXBsZV93YXRjaGxpc3RzIjp7fSwid2F0Y2hsaXN0X2ltcG9ydF9leHBvcnQiOnt9LCJzdHVkeV9vdmVybGF5X2NvbXBhcmVfbGVnZW5kX29wdGlvbiI6e30sIm1vYmlsZV9hcHBfYWN0aW9uX29wZW5fZGV0YWlsc193ZWJ2aWV3Ijp7fSwiY3VzdG9tX3Jlc29sdXRpb25zIjp7fSwicmVmZXJyYWxfcHJvZ3JhbV9mb3Jfd2lkZ2V0X293bmVycyI6e30sIm1vYmlsZV90cmFkaW5nIjp7fSwicmVhbF9icm9rZXJzIjp7fSwicXVpY2tfdHJhZGluZ19wYW5lbCI6e30sIm5hdGl2ZV9tb2JpbGVfYnJva2Vyc19saXN0Ijp7fSwibm9fbWluX2NoYXJ0X3dpZHRoIjp7fSwibG9ja192aXNpYmxlX3RpbWVfcmFuZ2Vfb25fcmVzaXplIjp7fSwicHJpY2VzY2FsZV9jdXJyZW5jeSI6e30sImNyb3BwZWRfdGlja19tYXJrcyI6e30sInRyYWRpbmdfYWNjb3VudF9tYW5hZ2VyIjp7fSwiZGlzYWJsZV9zYW1laW50ZXJ2YWxfYWxpZ25pbmciOnt9LCJkaXNwbGF5X2xlZ2VuZF9vbl9hbGxfY2hhcnRzIjp7fSwiY2hhcnRfc3R5bGVfaGlsbyI6e30sImNoYXJ0X3N0eWxlX2hpbG9fbGFzdF9wcmljZSI6e30sInByaWNlc2NhbGVfdW5pdCI6e30sInNob3dfc3ByZWFkX29wZXJhdG9ycyI6e30sImhpZGVfZXhwb25lbnRpYXRpb25fc3ByZWFkX29wZXJhdG9yIjp7fSwiaGlkZV9yZWNpcHJvY2FsX3NwcmVhZF9vcGVyYXRvciI6e30sImNvbXBhcmVfc3ltYm9sX3NlYXJjaF9zcHJlYWRfb3BlcmF0b3JzIjp7fSwic3R1ZGllc19zeW1ib2xfc2VhcmNoX3NwcmVhZF9vcGVyYXRvcnMiOnt9LCJoaWRlX3Jlc29sdXRpb25faW5fbGVnZW5kIjp7fSwiaGlkZV91bnJlc29sdmVkX3N5bWJvbHNfaW5fbGVnZW5kIjp7fSwiZml4X2xlZnRfZWRnZSI6e30sInN0dWR5X3N5bWJvbF90aWNrZXJfZGVzY3JpcHRpb24iOnt9LCJ0d29fY2hhcmFjdGVyX2Jhcl9tYXJrc19sYWJlbHMiOnt9LCJwaW5fYmFyX21hcmtfdG9vbHRpcHNfb25fY2xpY2siOnt9LCJ0aWNrX3Jlc29sdXRpb24iOnt9LCJzZWNvbmRhcnlfc2VyaWVzX2V4dGVuZF90aW1lX3NjYWxlIjp7fSwiaGlkZV92b2x1bWVfbWEiOnt9LCJzbWFsbF9ub19kaXNwbGF5Ijp7fSwiY2hhcnRpbmdfbGlicmFyeV9zaW5nbGVfc3ltYm9sX3JlcXVlc3QiOnt9LCJ1c2VfdGlja2VyX29uX3N5bWJvbF9pbmZvX3VwZGF0ZSI6e30sInNob3dfem9vbV9hbmRfbW92ZV9idXR0b25zX29uX3RvdWNoIjp7fSwiaGlkZV9tYWluX3Nlcmllc19zeW1ib2xfZnJvbV9pbmRpY2F0b3JfbGVnZW5kIjp7fSwiY2hhcnRfaGlkZV9jbG9zZV9wb3NpdGlvbl9idXR0b24iOnt9LCJjaGFydF9oaWRlX2Nsb3NlX29yZGVyX2J1dHRvbiI6e30sImhpZGVfcHJpY2Vfc2NhbGVfZ2xvYmFsX2xhc3RfYmFyX3ZhbHVlIjp7InN1YnNldHMiOlsidXNlX2xhc3RfdmlzaWJsZV9iYXJfdmFsdWVfaW5fbGVnZW5kIl19LCJrZWVwX29iamVjdF90cmVlX3dpZGdldF9pbl9yaWdodF90b29sYmFyIjp7fSwic2hvd19hdmVyYWdlX2Nsb3NlX3ByaWNlX2xpbmVfYW5kX2xhYmVsIjp7fSwiaGlkZV9pbWFnZV9pbnZhbGlkX3N5bWJvbCI6e30sImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIjp7fSwiY29uZmlybV9vdmVyd3JpdGVfaWZfY2hhcnRfbGF5b3V0X3dpdGhfbmFtZV9leGlzdHMiOnt9LCJkZXRlcm1pbmVfZmlyc3RfZGF0YV9yZXF1ZXN0X3NpemVfdXNpbmdfdmlzaWJsZV9yYW5nZSI6e30sInVzZV9uYV9zdHJpbmdfZm9yX25vdF9hdmFpbGFibGVfdmFsdWVzIjp7fSwic2hvd19sYXN0X3ByaWNlX2FuZF9jaGFuZ2Vfb25seV9pbl9zZXJpZXNfbGVnZW5kIjp7fSwibGVnZW5kX2xhc3RfZGF5X2NoYW5nZSI6e30sImlmcmFtZV9sb2FkaW5nX2NvbXBhdGliaWxpdHlfbW9kZSI6e30sInNob3dfcGVyY2VudF9vcHRpb25fZm9yX3JpZ2h0X21hcmdpbiI6e30sIndhdGNobGlzdF9jb250ZXh0X21lbnUiOnt9LCJhY2Nlc3NpYmxlX2tleWJvYXJkX3Nob3J0Y3V0cyI6e30sImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyI6e30sImFwcF9waG9uZSI6e30sImFwcF90YWJsZXQiOnt9LCJtb2JpbGVfYXBwX2hpZGVfcmVwbGF5X3Rvb2xiYXIiOnt9LCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fdGFwX2luX2xlZ2VuZCI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fbm9uX3RyYWRhYmxlIjp7fSwic2hvd19uZXdfbWVudV9pdGVtc19pbl9jaGFydF9tZW51cyI6e30sInByZV9wb3N0X21hcmtldF9wcmljZV9saW5lIjp7fSwicHJlX3Bvc3RfbWFya2V0X3Nlc3Npb25zIjp7fSwic3R1ZGllc19leHRlbmRfdGltZV9zY2FsZSI6e30sImluYWN0aXZpdHlfZ2FwcyI6e30sImFsaWduX2R3bV9iYXJzX3RvX21haW5fc2VyaWVzIjp7fSwicmVxdWVzdF9vbmx5X3Zpc2libGVfcmFuZ2Vfb25fcmVzZXQiOnt9LCJleHRlbmRlZF9leHRyYXBvbGF0aW9uX2xpbWl0Ijp7fSwidHZfcHJvZHVjdGlvbiI6eyJzdWJzZXRzIjpbIndhdGNobGlzdF9zZWN0aW9ucyIsImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyIsImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsImhlYWRlcl9mdWxsc2NyZWVuX2J1dHRvbiIsImhlYWRlcl93aWRnZXQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwiYnV5X3NlbGxfYnV0dG9ucyIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwidXNlX2xvY2Fsc3RvcmFnZV9mb3Jfc2V0dGluZ3MiLCJzYXZlbG9hZF9yZXF1aXJlc19hdXRoZW50aWNhdGlvbiIsInZvbHVtZV9mb3JjZV9vdmVybGF5Iiwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHRfb25jZSIsImNoYXJ0c19hdXRvX3NhdmUiLCJzYXZlX29sZF9jaGFydF9iZWZvcmVfc2F2ZV9hcyIsImNoYXJ0X2NvbnRlbnRfb3ZlcnJpZGVzX2J5X2RlZmF1bHRzIiwiYWxlcnRzIiwiaGVhZGVyX3NhdmVsb2FkIiwiaGVhZGVyX2xheW91dHRvZ2dsZSIsImRhdGFzb3VyY2VfY29weXBhc3RlIiwic2hvd19zYXZlZF93YXRjaGxpc3RzIiwid2F0Y2hsaXN0c19mcm9tX3RvX2ZpbGUiLCJhZGRfdG9fd2F0Y2hsaXN0IiwicHJvcGVydHlfcGFnZXMiLCJzdXBwb3J0X211bHRpY2hhcnRzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZGlzcGxheV9kYXRhX21vZGUiLCJzaG93X2NoYXJ0X3dhcm5fbWVzc2FnZSIsInN1cHBvcnRfbWFuYWdlX2RyYXdpbmdzIiwid2lkZ2V0YmFyX3RhYnMiLCJzdHVkeV90ZW1wbGF0ZXMiLCJjb2xsYXBzaWJsZV9oZWFkZXIiLCJkcmF3aW5nX3RlbXBsYXRlcyIsImhlYWRlcl90cmFkZV9idXR0b24iLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIiwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iLCJ0ZXh0X25vdGVzIiwic2hvd19zb3VyY2VfY29kZSIsInN5bWJvbF9pbmZvIiwibGluZXRvb2xwcm9wZXJ0aWVzd2lkZ2V0X3RlbXBsYXRlX2J1dHRvbiIsInRyYWRpbmdfbm90aWZpY2F0aW9ucyIsInN5bWJvbF9zZWFyY2hfdGhyZWVfY29sdW1uc19leGNoYW5nZXMiLCJzeW1ib2xfc2VhcmNoX2ZsYWdzIiwic3ltYm9sX3NlYXJjaF9saW1pdGVkX2V4Y2hhbmdlcyIsInBob25lX3ZlcmlmaWNhdGlvbiIsImN1c3RvbV9yZXNvbHV0aW9ucyIsImNvbXBhcmVfc3ltYm9sIiwic3R1ZHlfb25fc3R1ZHkiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJzaG93X2xvZ2luX2RpYWxvZyIsImRvbV93aWRnZXQiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNob3dfdHJhZGluZ19ub3RpZmljYXRpb25zX2hpc3RvcnkiLCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiLCJzdHVkeV9kaWFsb2dfZnVuZGFtZW50YWxzX2Vjb25vbXlfYWRkb25zIiwibXVsdGlwbGVfd2F0Y2hsaXN0cyIsIm1hcmtlZF9zeW1ib2xzIiwib3JkZXJfcGFuZWwiLCJwcmljZXNjYWxlX2N1cnJlbmN5Iiwic2hvd19hbmltYXRlZF9sb2dvIiwicHJpY2VzY2FsZV9jdXJyZW5jeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsInNjYWxlc19kYXRlX2Zvcm1hdCIsInNjYWxlc190aW1lX2hvdXJzX2Zvcm1hdCIsInBvcHVwX2hpbnRzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciIsInNob3dfbmV3X21lbnVfaXRlbXNfaW5fY2hhcnRfbWVudXMiLCJrZWVwX3NlbGVjdGVkX2dyb3VwX29uX3Rvb2xfY3JlYXRpb24iXX0sIndpZGdldCI6eyJzdWJzZXRzIjpbImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwibGVmdF90b29sYmFyIiwicmlnaHRfdG9vbGJhciIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwic2F2ZWxvYWRfcmVxdWlyZXNfYXV0aGVudGljYXRpb24iLCJ2b2x1bWVfZm9yY2Vfb3ZlcmxheSIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHQiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJoZWFkZXJfd2lkZ2V0X2RvbV9ub2RlIiwiaGVhZGVyX3N5bWJvbF9zZWFyY2giLCJoZWFkZXJfcmVzb2x1dGlvbnMiLCJoZWFkZXJfY2hhcnRfdHlwZSIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX2luZGljYXRvcnMiLCJzdGFyX3NvbWVfaW50ZXJ2YWxzX2J5X2RlZmF1bHQiLCJkaXNwbGF5X21hcmtldF9zdGF0dXMiLCJkaXNwbGF5X2RhdGFfbW9kZSIsInNob3dfY2hhcnRfd2Fybl9tZXNzYWdlIiwic3ltYm9sX2luZm8iLCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIiwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyIsInN5bWJvbF9zZWFyY2hfZmxhZ3MiLCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIiwid2lkZ2V0YmFyX3RhYnMiLCJjb21wYXJlX3N5bWJvbCIsInNob3dfbG9naW5fZGlhbG9nIiwicGxhaW5fc3R1ZHltYXJrZXQiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIl19LCJib3Zlc3BhX3dpZGdldCI6eyJzdWJzZXRzIjpbIndpZGdldCIsImhlYWRlcl9zZXR0aW5ncyIsImxpbmV0b29scHJvcGVydGllc3dpZGdldF90ZW1wbGF0ZV9idXR0b24iLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiXX0sImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSI6eyJzdWJzZXRzIjpbIjE0ODUxIiwiYWxsb3dfc3VwcG9ydGVkX3Jlc29sdXRpb25zX3NldF9vbmx5IiwiYXV0b19lbmFibGVfc3ltYm9sX2xhYmVscyIsImJvcmRlcl9hcm91bmRfdGhlX2NoYXJ0IiwiY29sbGFwc2libGVfaGVhZGVyIiwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50IiwiY29udGV4dF9tZW51cyIsImNvbnRyb2xfYmFyIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiLCJkYXRhc291cmNlX2NvcHlwYXN0ZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZWRpdF9idXR0b25zX2luX2xlZ2VuZCIsIm9iamVjdF90cmVlX2xlZ2VuZF9tb2RlIiwiZ3JheWluZ19kaXNhYmxlZF90b29sc19lbmFibGVkIiwiaGVhZGVyX3dpZGdldCIsImxlZ2VuZF93aWRnZXQiLCJoZWFkZXJfc2F2ZWxvYWQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWFuX2NoYXJ0X2xvYWQiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwibGlua190b190cmFkaW5ndmlldyIsInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiLCJwbGFpbl9zdHVkeW1hcmtldCIsInJlZnJlc2hfc2F2ZWRfY2hhcnRzX2xpc3Rfb25fZGlhbG9nX3Nob3ciLCJyaWdodF9iYXJfc3RheXNfb25fc2Nyb2xsIiwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIiwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0IiwidGltZWZyYW1lc190b29sYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwidXBkYXRlX3N0dWR5X2Zvcm1hdHRlcl9vbl9zeW1ib2xfcmVzb2x2ZSIsInVwZGF0ZV90aW1lZnJhbWVzX3NldF9vbl9zeW1ib2xfcmVzb2x2ZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwidm9sdW1lX2ZvcmNlX292ZXJsYXkiLCJ3aWRnZXRfbG9nbyIsImNvdW50ZG93biIsInVzZV9vdmVycmlkZXNfZm9yX292ZXJsYXkiLCJ0cmFkaW5nX25vdGlmaWNhdGlvbnMiLCJjb21wYXJlX3N5bWJvbCIsInN5bWJvbF9pbmZvIiwidGltZXpvbmVfbWVudSIsIm1haW5fc2VyaWVzX3NjYWxlX21lbnUiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwiZ29fdG9fZGF0ZSIsImFkYXB0aXZlX2xvZ28iLCJzaG93X2FuaW1hdGVkX2xvZ28iLCJoYW5kbGVfc2NhbGUiLCJoYW5kbGVfc2Nyb2xsIiwic2hpZnRfdmlzaWJsZV9yYW5nZV9vbl9uZXdfYmFyIiwiY2hhcnRfY29udGVudF9vdmVycmlkZXNfYnlfZGVmYXVsdHMiLCJjcm9wcGVkX3RpY2tfbWFya3MiLCJzY2FsZXNfZGF0ZV9mb3JtYXQiLCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiLCJwb3B1cF9oaW50cyIsInNhdmVfc2hvcnRjdXQiLCJzaG93X3JpZ2h0X3dpZGdldHNfcGFuZWxfYnlfZGVmYXVsdCIsInNob3dfb2JqZWN0X3RyZWUiLCJpbnNlcnRfaW5kaWNhdG9yX2RpYWxvZ19zaG9ydGN1dCIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsImhpZGVfbWFpbl9zZXJpZXNfc3ltYm9sX2Zyb21faW5kaWNhdG9yX2xlZ2VuZCIsImNoYXJ0X3N0eWxlX2hpbG8iLCJyZXF1ZXN0X29ubHlfdmlzaWJsZV9yYW5nZV9vbl9yZXNldCIsImNsZWFyX3ByaWNlX3NjYWxlX29uX2Vycm9yX29yX2VtcHR5X2JhcnMiLCJzaG93X3N5bWJvbF9sb2dvX2luX2xlZ2VuZCIsInNob3dfc3ltYm9sX2xvZ29fZm9yX2NvbXBhcmVfc3R1ZGllcyIsImxpYnJhcnlfY3VzdG9tX2NvbG9yX3RoZW1lcyIsImxvbmdfcHJlc3NfZmxvYXRpbmdfdG9vbHRpcCIsInN5bWJvbF9zZWFyY2hfaGlnaGxpZ2h0X2FjdGl2ZV9zeW1ib2wiXX0sImNoYXJ0aW5nX2xpYnJhcnkiOnsic3Vic2V0cyI6WyJjaGFydGluZ19saWJyYXJ5X2Jhc2UiXX0sInN0YXRpY19jaGFydHNfc2VydmljZSI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnkiLCJkaXNhYmxlX3Jlc29sdXRpb25fcmVidWlsZCJdfSwidHJhZGluZ190ZXJtaW5hbCI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSIsInN1cHBvcnRfbXVsdGljaGFydHMiLCJoZWFkZXJfbGF5b3V0dG9nZ2xlIiwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIiwiY2hhcnRfcHJvcGVydHlfcGFnZV90cmFkaW5nIiwiYWRkX3RvX3dhdGNobGlzdCIsIm9wZW5fYWNjb3VudF9tYW5hZ2VyIiwic2hvd19kb21fZmlyc3RfdGltZSIsIm9yZGVyX3BhbmVsIiwiYnV5X3NlbGxfYnV0dG9ucyIsIm11bHRpcGxlX3dhdGNobGlzdHMiLCJzaG93X3RyYWRpbmdfbm90aWZpY2F0aW9uc19oaXN0b3J5IiwiYWx3YXlzX3Bhc3NfY2FsbGVkX29yZGVyX3RvX21vZGlmeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsImRyYXdpbmdfdGVtcGxhdGVzIiwidHJhZGluZ19hY2NvdW50X21hbmFnZXIiLCJjaGFydF9jcm9zc2hhaXJfbWVudSIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsIndhdGNobGlzdF9jb250ZXh0X21lbnUiLCJzaG93X3N5bWJvbF9sb2dvX2luX2FjY291bnRfbWFuYWdlciIsInNob3dfc3ltYm9sX2xvZ29faW5fY2xvc2VfcG9zaXRpb25fZGlhbG9nIiwic2hvd19zeW1ib2xfbG9nb19pbl9jYW5jZWxfb3JkZXJfZGlhbG9nIiwid2F0Y2hsaXN0X3NlY3Rpb25zIiwicHJlZmVyX3F1b3RlX3Nob3J0X25hbWUiLCJlbmFibGVfZG9tX2RhdGFfZm9yX3VudHJhZGFibGVfc3ltYm9scyIsInByZWZlcl9zeW1ib2xfbmFtZV9vdmVyX2Z1bGxuYW1lIiwid2F0Y2hsaXN0X2Nyb3NzX3RhYl9zeW5jIl19fScpCn0sNzQ2OTQ5KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKQp9fV0pOw=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80706.a5913aa6ad62d9dbf031.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.215Z","timestamp":1785154590215,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80706.a5913aa6ad62d9dbf031.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1be6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8fe07cfa58ef914529e5dd9712c8cdb9\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":7142,"size_decoded":4236,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"7d7a3ddeb844a1fdfe8b024f9df9f0b6","sha1":"b3afece36b14fafc7889e9b954f9736c892a2849","sha256":"0752584a0f2ad3bba4f44bbd6a44bf08a76726c524b79367996ab9b20e03bfba","sha512":"c0b04bf9ca52fee536a54ae9fcb3fcac9ee210f95be1205e4fe48f0cbb1f25a4db788a4ae10cd4b5ee13e1dc5159c2a4d48516d50bf1ee07d2da1a00fa95ac38","ssdeep":"96:VI23hKdh7P1lIbeWL9aqfMbFNriK6Vizc/MuomCA9P0LX4BYyCnsI6T:n3wT9lIbeWJaqfvXQcEA0LHxnf6T","tlshash":"c4e1c6c832b1f0eaa3e325e480ab5806e13a6d5a558e60b6e34557d37874fc540ffec5","first_seen":"2026-07-23T13:38:20.481503Z","last_seen":"2026-07-27T14:18:36.416149Z","times_seen":1483,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s4MDcwNl0sezcxMjc0NShyLGUsdCl7dmFyIG47IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBpLG89MWU2LHM9MWU2LGM9IltiaWcuanNdICIsZj1jKyJJbnZhbGlkICIsdT1mKyJkZWNpbWFsIHBsYWNlcyIsaD1mKyJyb3VuZGluZyBtb2RlIixsPWMrIkRpdmlzaW9uIGJ5IHplcm8iLGE9e30sZz12b2lkIDAsdj0vXi0/KFxkKyhcLlxkKik/fFwuXGQrKShlWystXT9cZCspPyQvaTtmdW5jdGlvbiB3KHIsZSx0LG4pe3ZhciBpPXIuYztpZih0PT09ZyYmKHQ9ci5jb25zdHJ1Y3Rvci5STSksMCE9PXQmJjEhPT10JiYyIT09dCYmMyE9PXQpdGhyb3cgRXJyb3IoaCk7aWYoZTwxKW49Mz09PXQmJihufHwhIWlbMF0pfHwwPT09ZSYmKDE9PT10JiZpWzBdPj01fHwyPT09dCYmKGlbMF0+NXx8NT09PWlbMF0mJihufHxpWzFdIT09ZykpKSxpLmxlbmd0aD0xLG4/KHIuZT1yLmUtZSsxLGlbMF09MSk6aVswXT1yLmU9MDtlbHNlIGlmKGU8aS5sZW5ndGgpe2lmKG49MT09PXQmJmlbZV0+PTV8fDI9PT10JiYoaVtlXT41fHw1PT09aVtlXSYmKG58fGlbZSsxXSE9PWd8fDEmaVtlLTFdKSl8fDM9PT10JiYobnx8ISFpWzBdKSxpLmxlbmd0aD1lLS0sbilmb3IoOysraVtlXT45OylpW2VdPTAsZS0tfHwoKytyLmUsaS51bnNoaWZ0KDEpKTtmb3IoZT1pLmxlbmd0aDshaVstLWVdOylpLnBvcCgpfXJldHVybiByfWZ1bmN0aW9uIHAocixlLHQpe3ZhciBuPXIuZSxpPXIuYy5qb2luKCIiKSxvPWkubGVuZ3RoO2lmKGUpaT1pLmNoYXJBdCgwKSsobz4xPyIuIitpLnNsaWNlKDEpOiIiKSsobjwwPyJlIjoiZSsiKStuO2Vsc2UgaWYobjwwKXtmb3IoOysrbjspaT0iMCIraTtpPSIwLiIraX1lbHNlIGlmKG4+MClpZigrK24+bylmb3Iobi09bztuLS07KWkrPSIwIjtlbHNlIG48byYmKGk9aS5zbGljZSgwLG4pKyIuIitpLnNsaWNlKG4pKTtlbHNlIG8+MSYmKGk9aS5jaGFyQXQoMCkrIi4iK2kuc2xpY2UoMSkpO3JldHVybiByLnM8MCYmdD8iLSIraTppfWEuYWJzPWZ1bmN0aW9uKCl7dmFyIHI9bmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyk7cmV0dXJuIHIucz0xLHJ9LGEuY21wPWZ1bmN0aW9uKHIpe3ZhciBlLHQ9dGhpcyxuPXQuYyxpPShyPW5ldyB0LmNvbnN0cnVjdG9yKHIpKS5jLG89dC5zLHM9ci5zLGM9dC5lLGY9ci5lO2lmKCFuWzBdfHwhaVswXSlyZXR1cm4gblswXT9vOmlbMF0/LXM6MDtpZihvIT1zKXJldHVybiBvO2lmKGU9bzwwLGMhPWYpcmV0dXJuIGM+Zl5lPzE6LTE7Zm9yKHM9KGM9bi5sZW5ndGgpPChmPWkubGVuZ3RoKT9jOmYsbz0tMTsrK288czspaWYobltvXSE9aVtvXSlyZXR1cm4gbltvXT5pW29dXmU/MTotMTtyZXR1cm4gYz09Zj8wOmM+Zl5lPzE6LTF9LGEuZGl2PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1lLmNvbnN0cnVjdG9yLG49ZS5jLGk9KHI9bmV3IHQocikpLmMscz1lLnM9PXIucz8xOi0xLGM9dC5EUDtpZihjIT09fn5jfHxjPDB8fGM+byl0aHJvdyBFcnJvcih1KTtpZighaVswXSl0aHJvdyBFcnJvcihsKTtpZighblswXSlyZXR1cm4gci5zPXMsci5jPVtyLmU9MF0scjt2YXIgZixoLGEsdixwLGQ9aS5zbGljZSgpLEU9Zj1pLmxlbmd0aCxtPW4ubGVuZ3RoLGI9bi5zbGljZSgwLGYpLFA9Yi5sZW5ndGgsXz1yLEQ9Xy5jPVtdLGs9MCxNPWMrKF8uZT1lLmUtci5lKSsxO2ZvcihfLnM9cyxzPU08MD8wOk0sZC51bnNoaWZ0KDApO1ArKzxmOyliLnB1c2goMCk7ZG97Zm9yKGE9MDthPDEwO2ErKyl7aWYoZiE9KFA9Yi5sZW5ndGgpKXY9Zj5QPzE6LTE7ZWxzZSBmb3IocD0tMSx2PTA7KytwPGY7KWlmKGlbcF0hPWJbcF0pe3Y9aVtwXT5iW3BdPzE6LTE7YnJlYWt9aWYoISh2PDApKWJyZWFrO2ZvcihoPVA9PWY/aTpkO1A7KXtpZihiWy0tUF08aFtQXSl7Zm9yKHA9UDtwJiYhYlstLXBdOyliW3BdPTk7LS1iW3BdLGJbUF0rPTEwfWJbUF0tPWhbUF19Zm9yKDshYlswXTspYi5zaGlmdCgpfURbaysrXT12P2E6KythLGJbMF0mJnY/YltQXT1uW0VdfHwwOmI9W25bRV1dfXdoaWxlKChFKys8bXx8YlswXSE9PWcpJiZzLS0pO3JldHVybiBEWzBdfHwxPT1rfHwoRC5zaGlmdCgpLF8uZS0tLE0tLSksaz5NJiZ3KF8sTSx0LlJNLGJbMF0hPT1nKSxffSxhLmVxPWZ1bmN0aW9uKHIpe3JldHVybiAwPT09dGhpcy5jbXAocil9LGEuZ3Q9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPjB9LGEuZ3RlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLmNtcChyKT4tMX0sYS5sdD1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy5jbXAocik8MH0sYS5sdGU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPDF9LGEubWludXM9YS5zdWI9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGksbz10aGlzLHM9by5jb25zdHJ1Y3RvcixjPW8ucyxmPShyPW5ldyBzKHIpKS5zO2lmKGMhPWYpcmV0dXJuIHIucz0tZixvLnBsdXMocik7dmFyIHU9by5jLnNsaWNlKCksaD1vLmUsbD1yLmMsYT1yLmU7aWYoIXVbMF18fCFsWzBdKXJldHVybiBsWzBdP3Iucz0tZjp1WzBdP3I9bmV3IHMobyk6ci5zPTEscjtpZihjPWgtYSl7Zm9yKChpPWM8MCk/KGM9LWMsbj11KTooYT1oLG49bCksbi5yZXZlcnNlKCksZj1jO2YtLTspbi5wdXNoKDApO24ucmV2ZXJzZSgpfWVsc2UgZm9yKHQ9KChpPXUubGVuZ3RoPGwubGVuZ3RoKT91OmwpLmxlbmd0aCxjPWY9MDtmPHQ7ZisrKWlmKHVbZl0hPWxbZl0pe2k9dVtmXTxsW2ZdO2JyZWFrfWlmKGkmJihuPXUsdT1sLGw9bixyLnM9LXIucyksKGY9KHQ9bC5sZW5ndGgpLShlPXUubGVuZ3RoKSk+MClmb3IoO2YtLTspdVtlKytdPTA7Zm9yKGY9ZTt0PmM7KXtpZih1Wy0tdF08bFt0XSl7Zm9yKGU9dDtlJiYhdVstLWVdOyl1W2VdPTk7LS11W2VdLHVbdF0rPTEwfXVbdF0tPWxbdF19Zm9yKDswPT09dVstLWZdOyl1LnBvcCgpO2Zvcig7MD09PXVbMF07KXUuc2hpZnQoKSwtLWE7cmV0dXJuIHVbMF18fChyLnM9MSx1PVthPTBdKSxyLmM9dSxyLmU9YSxyfSxhLm1vZD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5zLG89KHI9bmV3IG4ocikpLnMKO2lmKCFyLmNbMF0pdGhyb3cgRXJyb3IobCk7cmV0dXJuIHQucz1yLnM9MSxlPTE9PXIuY21wKHQpLHQucz1pLHIucz1vLGU/bmV3IG4odCk6KGk9bi5EUCxvPW4uUk0sbi5EUD1uLlJNPTAsdD10LmRpdihyKSxuLkRQPWksbi5STT1vLHRoaXMubWludXModC50aW1lcyhyKSkpfSxhLnBsdXM9YS5hZGQ9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGk9dGhpcyxvPWkuY29uc3RydWN0b3I7aWYocj1uZXcgbyhyKSxpLnMhPXIucylyZXR1cm4gci5zPS1yLnMsaS5taW51cyhyKTt2YXIgcz1pLmUsYz1pLmMsZj1yLmUsdT1yLmM7aWYoIWNbMF18fCF1WzBdKXJldHVybiB1WzBdfHwoY1swXT9yPW5ldyBvKGkpOnIucz1pLnMpLHI7aWYoYz1jLnNsaWNlKCksZT1zLWYpe2ZvcihlPjA/KGY9cyxuPXUpOihlPS1lLG49Yyksbi5yZXZlcnNlKCk7ZS0tOyluLnB1c2goMCk7bi5yZXZlcnNlKCl9Zm9yKGMubGVuZ3RoLXUubGVuZ3RoPDAmJihuPXUsdT1jLGM9biksZT11Lmxlbmd0aCx0PTA7ZTtjW2VdJT0xMCl0PShjWy0tZV09Y1tlXSt1W2VdK3QpLzEwfDA7Zm9yKHQmJihjLnVuc2hpZnQodCksKytmKSxlPWMubGVuZ3RoOzA9PT1jWy0tZV07KWMucG9wKCk7cmV0dXJuIHIuYz1jLHIuZT1mLHJ9LGEucG93PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1uZXcgZS5jb25zdHJ1Y3RvcigiMSIpLG49dCxpPXI8MDtpZihyIT09fn5yfHxyPC0xZTZ8fHI+cyl0aHJvdyBFcnJvcihmKyJleHBvbmVudCIpO2ZvcihpJiYocj0tcik7MSZyJiYobj1uLnRpbWVzKGUpKSxyPj49MTspZT1lLnRpbWVzKGUpO3JldHVybiBpP3QuZGl2KG4pOm59LGEucHJlYz1mdW5jdGlvbihyLGUpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO3JldHVybiB3KG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpLHIsZSl9LGEucm91bmQ9ZnVuY3Rpb24ocixlKXtpZihyPT09ZylyPTA7ZWxzZSBpZihyIT09fn5yfHxyPC1vfHxyPm8pdGhyb3cgRXJyb3IodSk7cmV0dXJuIHcobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcykscit0aGlzLmUrMSxlKX0sYS5zcXJ0PWZ1bmN0aW9uKCl7dmFyIHIsZSx0LG49dGhpcyxpPW4uY29uc3RydWN0b3Isbz1uLnMscz1uLmUsZj1uZXcgaSgiMC41Iik7aWYoIW4uY1swXSlyZXR1cm4gbmV3IGkobik7aWYobzwwKXRocm93IEVycm9yKGMrIk5vIHNxdWFyZSByb290Iik7MD09PShvPU1hdGguc3FydChuKyIiKSl8fG89PT0xLzA/KChlPW4uYy5qb2luKCIiKSkubGVuZ3RoK3MmMXx8KGUrPSIwIikscz0oKHMrMSkvMnwwKS0oczwwfHwxJnMpLHI9bmV3IGkoKChvPU1hdGguc3FydChlKSk9PTEvMD8iNWUiOihvPW8udG9FeHBvbmVudGlhbCgpKS5zbGljZSgwLG8uaW5kZXhPZigiZSIpKzEpKStzKSk6cj1uZXcgaShvKyIiKSxzPXIuZSsoaS5EUCs9NCk7ZG97dD1yLHI9Zi50aW1lcyh0LnBsdXMobi5kaXYodCkpKX13aGlsZSh0LmMuc2xpY2UoMCxzKS5qb2luKCIiKSE9PXIuYy5zbGljZSgwLHMpLmpvaW4oIiIpKTtyZXR1cm4gdyhyLChpLkRQLT00KStyLmUrMSxpLlJNKX0sYS50aW1lcz1hLm11bD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5jLG89KHI9bmV3IG4ocikpLmMscz1pLmxlbmd0aCxjPW8ubGVuZ3RoLGY9dC5lLHU9ci5lO2lmKHIucz10LnM9PXIucz8xOi0xLCFpWzBdfHwhb1swXSlyZXR1cm4gci5jPVtyLmU9MF0scjtmb3Ioci5lPWYrdSxzPGMmJihlPWksaT1vLG89ZSx1PXMscz1jLGM9dSksZT1uZXcgQXJyYXkodT1zK2MpO3UtLTspZVt1XT0wO2ZvcihmPWM7Zi0tOyl7Zm9yKGM9MCx1PXMrZjt1PmY7KWM9ZVt1XStvW2ZdKmlbdS1mLTFdK2MsZVt1LS1dPWMlMTAsYz1jLzEwfDA7ZVt1XT1jfWZvcihjPysrci5lOmUuc2hpZnQoKSxmPWUubGVuZ3RoOyFlWy0tZl07KWUucG9wKCk7cmV0dXJuIHIuYz1lLHJ9LGEudG9FeHBvbmVudGlhbD1mdW5jdGlvbihyLGUpe3ZhciB0PXRoaXMsbj10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MHx8cj5vKXRocm93IEVycm9yKHUpO2Zvcih0PXcobmV3IHQuY29uc3RydWN0b3IodCksKytyLGUpO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMCwhIW4pfSxhLnRvRml4ZWQ9ZnVuY3Rpb24ocixlKXt2YXIgdD10aGlzLG49dC5jWzBdO2lmKHIhPT1nKXtpZihyIT09fn5yfHxyPDB8fHI+byl0aHJvdyBFcnJvcih1KTtmb3Iocj1yKyh0PXcobmV3IHQuY29uc3RydWN0b3IodCkscit0LmUrMSxlKSkuZSsxO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMSwhIW4pfSxhLnRvSlNPTj1hLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxlPXIuY29uc3RydWN0b3I7cmV0dXJuIHAocixyLmU8PWUuTkV8fHIuZT49ZS5QRSwhIXIuY1swXSl9LGEudG9OdW1iZXI9ZnVuY3Rpb24oKXt2YXIgcj1OdW1iZXIocCh0aGlzLCEwLCEwKSk7aWYoITA9PT10aGlzLmNvbnN0cnVjdG9yLnN0cmljdCYmIXRoaXMuZXEoci50b1N0cmluZygpKSl0aHJvdyBFcnJvcihjKyJJbXByZWNpc2UgY29udmVyc2lvbiIpO3JldHVybiByfSxhLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKHIsZSl7dmFyIHQ9dGhpcyxuPXQuY29uc3RydWN0b3IsaT10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO2Zvcih0PXcobmV3IG4odCkscixlKTt0LmMubGVuZ3RoPHI7KXQuYy5wdXNoKDApfXJldHVybiBwKHQscjw9dC5lfHx0LmU8PW4uTkV8fHQuZT49bi5QRSwhIWkpfSxhLnZhbHVlT2Y9ZnVuY3Rpb24oKXt2YXIgcj10aGlzLGU9ci5jb25zdHJ1Y3RvcjtpZighMD09PWUuc3RyaWN0KXRocm93IEVycm9yKGMrInZhbHVlT2YgZGlzYWxsb3dlZCIpO3JldHVybiBwKHIsci5lPD1lLk5FfHxyLmU+PWUuUEUsITApfSxpPWZ1bmN0aW9uIHIoKXtmdW5jdGlvbiBlKHQpe3ZhciBuPXRoaXM7aWYoIShuIGluc3RhbmNlb2YgZSkpcmV0dXJuIHQ9PT1nP3IoKTpuZXcgZSh0KTtpZih0IGluc3RhbmNlb2YgZSluLnM9dC5zLG4uZT10LmUsbi5jPXQuYy5zbGljZSgpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiB0KXsKaWYoITA9PT1lLnN0cmljdCl0aHJvdyBUeXBlRXJyb3IoZisibnVtYmVyIik7dD0wPT09dCYmMS90PDA/Ii0wIjpTdHJpbmcodCl9IWZ1bmN0aW9uKHIsZSl7dmFyIHQsbixpO2lmKCF2LnRlc3QoZSkpdGhyb3cgRXJyb3IoZisibnVtYmVyIik7ci5zPSItIj09ZS5jaGFyQXQoMCk/KGU9ZS5zbGljZSgxKSwtMSk6MSwodD1lLmluZGV4T2YoIi4iKSk+LTEmJihlPWUucmVwbGFjZSgiLiIsIiIpKTsobj1lLnNlYXJjaCgvZS9pKSk+MD8odDwwJiYodD1uKSx0Kz0rZS5zbGljZShuKzEpLGU9ZS5zdWJzdHJpbmcoMCxuKSk6dDwwJiYodD1lLmxlbmd0aCk7Zm9yKGk9ZS5sZW5ndGgsbj0wO248aSYmIjAiPT1lLmNoYXJBdChuKTspKytuO2lmKG49PWkpci5jPVtyLmU9MF07ZWxzZXtmb3IoO2k+MCYmIjAiPT1lLmNoYXJBdCgtLWkpOyk7Zm9yKHIuZT10LW4tMSxyLmM9W10sdD0wO248PWk7KXIuY1t0KytdPStlLmNoYXJBdChuKyspfX0obix0KX1uLmNvbnN0cnVjdG9yPWV9cmV0dXJuIGUucHJvdG90eXBlPWEsZS5EUD0yMCxlLlJNPTEsZS5ORT0tNyxlLlBFPTIxLGUuc3RyaWN0PWZhbHNlLGUucm91bmREb3duPTAsZS5yb3VuZEhhbGZVcD0xLGUucm91bmRIYWxmRXZlbj0yLGUucm91bmRVcD0zLGV9KCksaS5kZWZhdWx0PWkuQmlnPWksdm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gaX0uY2FsbChlLHQsZSxyKSl8fChyLmV4cG9ydHM9bil9KCl9LDk2MzA5OChyLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2U6KCk9Pml9KTtjb25zdCBuPXthcl9BRToiYXIiLGJyOiJwdCIsZGVfREU6ImRlIixjYV9FUzoiY2EiLGhlX0lMOiJoZSIsaWRfSUQ6ImlkIixpbjoiZW4iLGtyOiJrbyIsbXNfTVk6Im1zIixzdl9TRToic3YiLHRoX1RIOiJ0aCIsdWs6ImVuIix2aV9WTjoidmkiLHpoX0NOOiJ6aC1IYW5zIix6aF9UVzoiemgtSGFudCIsemg6InpoLUhhbnMiLGh1X0hVOiJodS1IVSJ9O2Z1bmN0aW9uIGkocil7cmV0dXJuIG5bcl18fHJ9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/45368.9ff00a3e38212029ba55.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.485Z","timestamp":1785154590485,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/45368.9ff00a3e38212029ba55.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-ab7\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:04:45\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 49ed612a7f8822fd6695b3ccf25bd57e\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2743,"size_decoded":1688,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2743), with no line terminators","md5":"1b9b6d30d25f832a4ae245dfe44f7213","sha1":"94b221f3b98df900872565f146ae982a58ccc4e5","sha256":"350554344804fd43ba4503e3c1a52bf0bd432a763c3af60e0aa806456b7b9c77","sha512":"719896dc916140562428b6e90458f71fccdd7c6c7eb30b2120bb94b50417cb438b9ebdf7cf6706f92d86e7dba0ec6352ebac2f7cbe666268feaf3b1ee7fec34d","ssdeep":"","tlshash":"965130f6123159fc9627a76acf28f68880e57cd1d21103a3e6e4781fa0e3df819605c8","first_seen":"2026-07-17T06:02:50.776541Z","last_seen":"2026-07-27T14:14:25.315002Z","times_seen":155,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtTlRkYzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLV8xLU5UZGM6IzZhNmQ3ODMzfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtTlRkYzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLV8xLU5UZGM6Izg2ODk5MzMzfS5wcmV2aWV3LWt5OXd1OVlBe2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOnZhcigtLXVpLWxpYi1pbWFnZS1jYXJkLXByZXZpZXctYm9yZGVyLXJhZGl1cyk7ZGlzcGxheTpmbGV4O2lzb2xhdGlvbjppc29sYXRlO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3JkZXI6LTE7cG9zaXRpb246cmVsYXRpdmV9LnByZXZpZXcta3k5d3U5WUE6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYmctc2Nyb2xsLWJ1dHRvbnMpO3RvcDoxcHg7ei1pbmRleDotMX0ucHJldmlldy1reTl3dTlZQTphZnRlciwucHJldmlldy1reTl3dTlZQTpiZWZvcmV7Ym9yZGVyLXJhZGl1czp2YXIoLS11aS1saWItaW1hZ2UtY2FyZC1wcmV2aWV3LWJvcmRlci1yYWRpdXMpO2NvbnRlbnQ6IiI7aGVpZ2h0OmNhbGMoMTAwJSAtIDJweCk7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6Y2FsYygxMDAlIC0gMnB4KX0ucHJldmlldy1reTl3dTlZQTphZnRlcntib3JkZXI6MXB4IHNvbGlkIHJnYihmcm9tIHZhcigtLWNvbG9yLWRlZmF1bHQtZ3JheSkgciBnIGIvLjIpO3BvaW50ZXItZXZlbnRzOm5vbmU7dG9wOjB9QHN1cHBvcnRzIG5vdCAoYmFja2dyb3VuZDpyZ2IoZnJvbSAjMDAwIHIgZyBiKSl7LnByZXZpZXcta3k5d3U5WUE6YWZ0ZXJ7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1fMS1OVGRjKX19LnByZXZpZXcta3k5d3U5WUEuZml4ZWRIZWlnaHQta3k5d3U5WUF7aGVpZ2h0OjE4MHB4fS5wcmV2aWV3LWt5OXd1OVlBLnJhdGlvMTZieTkta3k5d3U5WUF7YXNwZWN0LXJhdGlvOjE2Lzl9QHN1cHBvcnRzIG5vdCAoYXNwZWN0LXJhdGlvOjE2Lzkpey5wcmV2aWV3LWt5OXd1OVlBLnJhdGlvMTZieTkta3k5d3U5WUF7cGFkZGluZy1ib3R0b206NTYuMjUlfX0ucHJldmlldy1reTl3dTlZQS5yYXRpbzJieTEta3k5d3U5WUF7YXNwZWN0LXJhdGlvOjIvMX1Ac3VwcG9ydHMgbm90IChhc3BlY3QtcmF0aW86Mi8xKXsucHJldmlldy1reTl3dTlZQS5yYXRpbzJieTEta3k5d3U5WUF7cGFkZGluZy1ib3R0b206NTAlfX0uYnJva2VuLWltYWdlLWt5OXd1OVlBOmFmdGVye2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItZGVmYXVsdC1ncmF5KTtib3JkZXItcmFkaXVzOnZhcigtLXVpLWxpYi1pbWFnZS1jYXJkLXByZXZpZXctYm9yZGVyLXJhZGl1cyk7Y29udGVudDoiIjtoZWlnaHQ6Y2FsYygxMDAlIC0gMnB4KTtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOmNhbGMoMTAwJSAtIDJweCl9LnByZXZpZXctZ3JpZC1reTl3dTlZQXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1hcmVhczoidG9wLWxlZnQtY29ybmVyIHRvcC1yaWdodC1jb3JuZXIiICIuIC4iICJib3R0b20tbGVmdC1jb3JuZXIgYm90dG9tLXJpZ2h0LWNvcm5lciI7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLGF1dG8pKTtncmlkLXRlbXBsYXRlLXJvd3M6bWluLWNvbnRlbnQgYXV0byBtaW4tY29udGVudDtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aWR0aDoxMDAlfS5waWN0dXJlLWt5OXd1OVlBe2Rpc3BsYXk6Y29udGVudHN9LmltYWdlLWt5OXd1OVlBLC5pbWFnZS1saW5rLWt5OXd1OVlBLC5taWRkbGUta3k5d3U5WUF7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0uaW1hZ2Uta3k5d3U5WUF7YmFja2dyb3VuZDp2YXIoLS11aS1saWItaW1hZ2UtY2FyZC1wcmV2aWV3LWJhY2tncm91bmQpO2JvcmRlci1yYWRpdXM6dmFyKC0tdWktbGliLWltYWdlLWNhcmQtcHJldmlldy1ib3JkZXItcmFkaXVzKTtvYmplY3QtZml0OmNvdmVyfS5taWRkbGUta3k5d3U5WUF7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmNvcm5lci1reTl3dTlZQSwubWlkZGxlLWt5OXd1OVlBe2Rpc3BsYXk6ZmxleDtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MX0uY29ybmVyLWt5OXd1OVlBe2ZsZXgtZmxvdzpyb3cgbm93cmFwfS5jb3JuZXIta3k5d3U5WUE+Kntwb2ludGVyLWV2ZW50czphdXRvfS5jb3JuZXItdG9wLWxlZnQta3k5d3U5WUF7Z3JpZC1hcmVhOnRvcC1sZWZ0LWNvcm5lcjtwYWRkaW5nLWJsb2NrOjhweCAwO3BhZGRpbmctaW5saW5lOjhweCAwfS5jb3JuZXItdG9wLXJpZ2h0LWt5OXd1OVlBe2dyaWQtYXJlYTp0b3AtcmlnaHQtY29ybmVyO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nLWJsb2NrOjhweCAwO3BhZGRpbmctaW5saW5lOjAgOHB4fS5jb3JuZXItYm90dG9tLWxlZnQta3k5d3U5WUF7YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z3JpZC1hcmVhOmJvdHRvbS1sZWZ0LWNvcm5lcjtwYWRkaW5nLWJsb2NrOjAgOHB4O3BhZGRpbmctaW5saW5lOjhweCAwfS5jb3JuZXItYm90dG9tLXJpZ2h0LWt5OXd1OVlBe2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dyaWQtYXJlYTpib3R0b20tcmlnaHQtY29ybmVyO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nLWJsb2NrOjAgOHB4O3BhZGRpbmctaW5saW5lOjAgOHB4fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_screener_v1_widget.9dbe1b28214d7a1471ba.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.538Z","timestamp":1785154590538,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/runtime-embed_screener_v1_widget.9dbe1b28214d7a1471ba.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-7cb6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c972474fcc84eac56c233c2b967ad182\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":31926,"size_decoded":16555,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3765)","md5":"078c641a9165940f92f650670dcfe56c","sha1":"588a588b3de873254a2ca6be4975e9a456d154af","sha256":"bf1232ee83f71f223d4d69f4ec7b7ffc474385b0bf3e2ea817a41a51de2fdffc","sha512":"d70d6ac8dc2d5315cae23b5ad2102e5968136636834d12b08553280efe2990f9bb1ca243bb1cc9bcee0f291f1db4af42d8ef1716326c2ca0de1643e12bdfe1ff","ssdeep":"768:2O2u/W/ww+vFmk6+uoYOgJV3MDbos8ZJh9qWxZjcLY8Z4NqSY:2O2u/WIw49gJV3ebo9h9HrD+7F","tlshash":"35e27ded923cd6b336f12da96d7a9863f33c24237c5980d49393b56409a6ff4a232513","first_seen":"2026-07-25T03:24:57.413219Z","last_seen":"2026-07-27T14:22:59.565195Z","times_seen":284,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLGEsYyxkLGYsYix0PXt9LHI9e307ZnVuY3Rpb24gbihlKXt2YXIgYT1yW2VdO2lmKHZvaWQgMCE9PWEpcmV0dXJuIGEuZXhwb3J0czt2YXIgYz1yW2VdPXtpZDplLGxvYWRlZDohMSxleHBvcnRzOnt9fTtyZXR1cm4gdFtlXS5jYWxsKGMuZXhwb3J0cyxjLGMuZXhwb3J0cyxuKSxjLmxvYWRlZD0hMCxjLmV4cG9ydHN9bi5tPXQsbi5fcGx1cmFsPXthcjooZSxhPTYsYz0oMD09ZT8wOjE9PWU/MToyPT1lPzI6ZSUxMDA+PTMmJmUlMTAwPD0xMD8zOmUlMTAwPj0xMSYmZSUxMDA8PTk5PzQ6NSkpPT5udWxsPT1lPzA6K2MsY3M6KGUsYT0zLGM9KDE9PWU/MDplPj0yJiZlPD00PzE6MikpPT5udWxsPT1lPzA6K2MscnU6KGUsYT0zLGM9KGUlMTA9PTEmJmUlMTAwIT0xMT8wOmUlMTA+PTImJmUlMTA8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjIpKT0+bnVsbD09ZT8wOitjLHJvOihlLGE9MyxjPSgxPT1lPzA6ZSUxMDA+MTl8fGUlMTAwPT0wJiYwIT1lPzI6MSkpPT5udWxsPT1lPzA6K2MscGw6KGUsYT0zLGM9KDE9PWU/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorYyxwdDooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLGRlOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsZW46KGUsYT0yLGM9MSE9ZSk9Pm51bGw9PWU/MDorYyxlczooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLHN2OihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsaXQ6KGUsYT0yLGM9MSE9ZSk9Pm51bGw9PWU/MDorYyx0cjooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLGVsOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsZnI6KGUsYT0yLGM9ZT4xKT0+bnVsbD09ZT8wOitjLGZhOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2MsamE6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyxrbzooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLHRoOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2Msdmk6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyx6aDooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLGhlX0lMOihlLGE9NCxjPSgxPT1lPzA6Mj09ZT8xOmU+MTAmJmUlMTA9PTA/MjozKSk9Pm51bGw9PWU/MDorYyxjYV9FUzooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLG5sX05MOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsaHVfSFU6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyxpZF9JRDooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLG1zX01ZOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2MsemhfVFc6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorY30sbi5hbWREPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJkZWZpbmUgY2Fubm90IGJlIHVzZWQgaW5kaXJlY3QiKX0sZT1bXSxuLk89KGEsYyxkLGYpPT57aWYoIWMpe3ZhciBiPTEvMDtmb3IoaT0wO2k8ZS5sZW5ndGg7aSsrKXtmb3IodmFyW2MsZCxmXT1lW2ldLHQ9ITAscj0wO3I8Yy5sZW5ndGg7cisrKSghMSZmfHxiPj1mKSYmT2JqZWN0LmtleXMobi5PKS5ldmVyeSgoZT0+bi5PW2VdKGNbcl0pKSk/Yy5zcGxpY2Uoci0tLDEpOih0PSExLGY8YiYmKGI9ZikpO2lmKHQpe2Uuc3BsaWNlKGktLSwxKTt2YXIgbz1kKCk7dm9pZCAwIT09byYmKGE9byl9fXJldHVybiBhfWY9Znx8MDtmb3IodmFyIGk9ZS5sZW5ndGg7aT4wJiZlW2ktMV1bMl0+ZjtpLS0pZVtpXT1lW2ktMV07ZVtpXT1bYyxkLGZdfSxuLkY9e30sbi5FPWU9PntPYmplY3Qua2V5cyhuLkYpLm1hcCgoYT0+e24uRlthXShlKX0pKX0sbi5uPWU9Pnt2YXIgYT1lJiZlLl9fZXNNb2R1bGU/KCk9PmUuZGVmYXVsdDooKT0+ZTtyZXR1cm4gbi5kKGEse2F9KSxhfSxjPU9iamVjdC5nZXRQcm90b3R5cGVPZj9lPT5PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk6ZT0+ZS5fX3Byb3RvX18sbi50PWZ1bmN0aW9uKGUsZCl7aWYoMSZkJiYoZT10aGlzKGUpKSw4JmQpcmV0dXJuIGU7aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZlKXtpZig0JmQmJmUuX19lc01vZHVsZSlyZXR1cm4gZTtpZigxNiZkJiYiZnVuY3Rpb24iPT10eXBlb2YgZS50aGVuKXJldHVybiBlfXZhciBmPU9iamVjdC5jcmVhdGUobnVsbCk7bi5yKGYpO3ZhciBiPXt9O2E9YXx8W251bGwsYyh7fSksYyhbXSksYyhjKV07Zm9yKHZhciB0PTImZCYmZTsoIm9iamVjdCI9PXR5cGVvZiB0fHwiZnVuY3Rpb24iPT10eXBlb2YgdCkmJiF+YS5pbmRleE9mKHQpO3Q9Yyh0KSlPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KS5mb3JFYWNoKChhPT5iW2FdPSgpPT5lW2FdKSk7cmV0dXJuIGIuZGVmYXVsdD0oKT0+ZSxuLmQoZixiKSxmfSxuLmQ9KGUsYSk9Pntmb3IodmFyIGMgaW4gYSluLm8oYSxjKSYmIW4ubyhlLGMpJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxjLHtlbnVtZXJhYmxlOiEwLGdldDphW2NdfSl9LG4uZj17fSxuLmU9ZT0+UHJvbWlzZS5hbGwoT2JqZWN0LmtleXMobi5mKS5yZWR1Y2UoKChhLGMpPT4obi5mW2NdKGUsYSksYSkpLFtdKSksCm4udT1lPT4yODgzMT09PWU/Il9fTEFOR19fLiIrZSsiLmY5ZTczNTZmZjkxZjgzN2Y0N2M3LmpzIjo4NDY5Mz09PWU/Il9fTEFOR19fLiIrZSsiLjcxNWNiN2IyNzMyZjIwYzRjOTYxLmpzIjo0OTY4ND09PWU/Il9fTEFOR19fLiIrZSsiLjQ5OWNmYmQ3MzQ3ZTk3NDcyMjI4LmpzIjo1NDk4PT09ZT8iX19MQU5HX18uNTQ5OC44ZTRjY2M3Y2VmOGJmYWYzOTM5OS5qcyI6ODU1Mzc9PT1lPyJfX0xBTkdfXy4iK2UrIi40OWZkYTEzZTE4NzYxMjQ2M2Y4NC5qcyI6MjY5NzM9PT1lPyJfX0xBTkdfXy4iK2UrIi45YWU1NmQ2MjFhNWYyOTgyN2UwMC5qcyI6MTc2NjI9PT1lPyJfX0xBTkdfXy4iK2UrIi40N2Y1YzljYWY2NjBjNGQwZTgwNC5qcyI6ODcyMzg9PT1lPyJfX0xBTkdfXy4iK2UrIi43ZTc3MzA5NzMzN2EzNGJlNjY1Mi5qcyI6MjE4NzA9PT1lPyJfX0xBTkdfXy4iK2UrIi43ZDM3ZmZhNTNkZmJiYzE4NDA4OC5qcyI6ODQyNjk9PT1lPyJfX0xBTkdfXy4iK2UrIi5hZDM1MWEyYjM5ZTQ5MzI0YjQxYy5qcyI6OTIyOTM9PT1lPyJfX0xBTkdfXy4iK2UrIi5hNmFmNjI2ZTg5NGVjOTAwN2Q1OC5qcyI6MTA4NDE9PT1lPyJfX0xBTkdfXy4iK2UrIi43NjZmOTY2ODc4YjdmODcyNmQ3NC5qcyI6ODg0MzI9PT1lPyJfX0xBTkdfXy4iK2UrIi40NDA2MGFkZDIxNjI4MGNmYTBkMy5qcyI6MTI2NTM9PT1lPyJfX0xBTkdfXy4iK2UrIi42MzU3NjY1OTJiNDZkZTc0OGU4ZC5qcyI6MTcxMjM9PT1lPyJfX0xBTkdfXy4iK2UrIi5hZDRkOGU3NjgzZTM0NmYxMmUxMi5qcyI6MjU3NTM9PT1lPyJfX0xBTkdfXy4iK2UrIi43MzdmNjUzYTdiMTNmMDZhOWZjZS5qcyI6MzQ5MDg9PT1lPyJfX0xBTkdfXy4iK2UrIi40ODhjZDE0NzM2MDE5Y2VmMjdiYy5qcyI6NzM3MjU9PT1lPyJfX0xBTkdfXy4iK2UrIi5hYjczZTk1NGQyY2QxYmUzNmRjNC5qcyI6NDA4OTI9PT1lPyJfX0xBTkdfXy4iK2UrIi43NmVlM2M1MjQxN2E2MGZiMDkzMS5qcyI6NDg4Mzc9PT1lPyJfX0xBTkdfXy4iK2UrIi5lZDY1NjczZTU4MzdjZDg2NzM3YS5qcyI6OTY0NDg9PT1lPyJfX0xBTkdfXy4iK2UrIi5hMjMwOTNiMjBjMmU0OGFhYzEyYi5qcyI6NjA5Mzk9PT1lPyJfX0xBTkdfXy4iK2UrIi5lZTZjYmVlZjg2ZGQ4ZmYxMDk2NC5qcyI6NDkyMTU9PT1lPyJfX0xBTkdfXy4iK2UrIi4yYzIxNTZmYTBlODU0NWNiY2FhYi5qcyI6MjA4NjY9PT1lPyJfX0xBTkdfXy4iK2UrIi4zZGI4ZThlZWVlNjg2YTUwOWIyMC5qcyI6NDEyODA9PT1lPyJfX0xBTkdfXy4iK2UrIi4yYWEzY2QwN2Q2MDBlYjk2Y2JiYy5qcyI6ODEzOTU9PT1lPyJfX0xBTkdfXy4iK2UrIi5iNmQ4M2M3NDg4ZGY0OTAzOTRmOC5qcyI6MjY3NzE9PT1lPyJfX0xBTkdfXy4iK2UrIi5lM2IwMzU1Y2ZmZDA3N2JkZTI0Mi5qcyI6MTA2NzQ9PT1lPyJfX0xBTkdfXy4iK2UrIi42NWFjZGNjZmVmMGYzZjQ5ODJlMC5qcyI6NDk3NDc9PT1lPyJfX0xBTkdfXy4iK2UrIi45ZmRkZThkZmJkNDU2NjM4ZjMxMS5qcyI6Mzg1MzU9PT1lPyJfX0xBTkdfXy4iK2UrIi4yNjkxODkyNzVhZGRkMWY3NjdiNS5qcyI6NTkzMT09PWU/Il9fTEFOR19fLjU5MzEuMmQwMGExMDY3OGU3OGNkNjZjOTIuanMiOjg2MzE9PT1lPyJfX0xBTkdfXy44NjMxLjdhY2YyYmE0NDIxNjMzMjNhNmVjLmpzIjo4NDkwMD09PWU/Il9fTEFOR19fLiIrZSsiLjBkMzc2MmZkMGNlNzIzZTU0MWRiLmpzIjo3NTUyPT09ZT8iX19MQU5HX18uNzU1Mi5iYzAwMjAxOTI5Nzc3NzFkNzExOS5qcyI6MTg5MTE9PT1lPyJfX0xBTkdfXy4iK2UrIi42OTgxOTM4YjExNDNhYWE2MTU3Ny5qcyI6MTcwOTI9PT1lPyJfX0xBTkdfXy4iK2UrIi44OWQ4ZTBiZjUxYTc3ZDZjZTczMS5qcyI6NzM3Nz09PWU/Il9fTEFOR19fLjczNzcuZGMxMDMxMjUyYmY5MmNmYjQxZmIuanMiOjE5OTE2PT09ZT8iX19MQU5HX18uIitlKyIuNDJlZTFlOThkNzUzMGFhNTY1NTMuanMiOjgyMDAzPT09ZT8iX19MQU5HX18uIitlKyIuZDc0OGI4Njg4MDM4ZTcyOWVmMDkuanMiOjYzNTUzPT09ZT8iX19MQU5HX18uIitlKyIuZDFlZTYxOThiNzAyODQ3OGRkNjIuanMiOjYxMDY2PT09ZT8iX19MQU5HX18uIitlKyIuM2NiNmM2NDIzYzZiMWZhMDEwZGYuanMiOjc2Mzg1PT09ZT8iX19MQU5HX18uIitlKyIuYTM4YzhlOTIxOTYwY2VhNDQwMTkuanMiOjI2MDU9PT1lPyJfX0xBTkdfXy4yNjA1LmY3MDBhZjZjYjgwYjA2ZTU1NGRkLmpzIjo5OTg2NT09PWU/Il9fTEFOR19fLiIrZSsiLjU1ODhmMmJkZjM0OTEyZWMxNDQ4LmpzIjo5OTc2NT09PWU/Il9fTEFOR19fLiIrZSsiLjZkYTZiZGJiMDhmNmY3YjljMWRkLmpzIjozMDU5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjg0YTRiM2UzY2NiNmQ3YzJmMjJhLmpzIjo0NTUyMj09PWU/Il9fTEFOR19fLiIrZSsiLjNhNjYwYTE0MjEyNGFkZjQ1MDQzLmpzIjoxMDMzPT09ZT8iX19MQU5HX18uMTAzMy43MzRiZDdkYWZlNzc3Y2YyZGY2MS5qcyI6ODg4OTE9PT1lPyJfX0xBTkdfXy4iK2UrIi4yZjY2M2JkMTI1ZGIyOGYxY2JkYS5qcyI6ODg0Mj09PWU/Il9fTEFOR19fLjg4NDIuZjQ4NDRiNDQwNzgxYjE5ZTQ1MDguanMiOjE5MDM0PT09ZT8iX19MQU5HX18uIitlKyIuMzA1MTcyMDQ3ZTdmYWJiNTM0ODEuanMiOjE2NzI9PT1lPyJfX0xBTkdfXy4xNjcyLmZjZjY5OWM0MmNiZjZkYTA1MDNkLmpzIjoyMTM5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjM0MWY2YzdiNzY1N2U1NTU0ZGYwLmpzIjoyOTE2OT09PWU/Il9fTEFOR19fLiIrZSsiLmMzNTczZGQzM2FiZWVlZWJlZjA0LmpzIjoxODg5OD09PWU/Il9fTEFOR19fLiIrZSsiLmRmODY3OGZiMWZlZjc3MWI1M2FhLmpzIjoxODYyOD09PWU/Il9fTEFOR19fLiIrZSsiLjMyYjBiYzIwOGQ1ZTE5MGEzNzMzLmpzIjo3MzYzMz09PWU/Il9fTEFOR19fLiIrZSsiLjA1YjVlZmY0NmQ1OTE1NzE0ZmZjLmpzIjo2Nzk0OT09PWU/Il9fTEFOR19fLiIrZSsiLjk0MDFhZmNiN2JkNDc3ZTMxOWExLmpzIjo2ODg2MD09PWU/Il9fTEFOR19fLiIrZSsiLjM3NjZkMTEwNzg4MTJkN2YxNDU3LmpzIjoxODc4MT09PWU/Il9fTEFOR19fLiIrZSsiLjM4ZjEwM2NlYjM1MWQ2OGMyZjhmLmpzIjo4ODk5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjI1OTkxZGE1OWUyMGE3OTZlZGFhLmpzIjo0ODkxMj09PWU/Il9fTEFOR19fLiIrZSsiLjA3ZjEzZTY5NGRkZjU0YjRkZWViLmpzIjo2NDQ0MT09PWU/Il9fTEFOR19fLiIrZSsiLjZkM2EwN2I5YTgxNDA4NzMxY2M0LmpzIjozMzM5MT09PWU/Il9fTEFOR19fLiIrZSsiLmFlZGQxZDNjZWVmYmU0Y2U2ODAyLmpzIjoxNzg1OT09PWU/Il9fTEFOR19fLiIrZSsiLjRhNTgwYWNlNDkxNGYxMTVjZDA3LmpzIjoyODg3NT09PWU/Il9fTEFOR19fLiIrZSsiLmVkZTFiNzIxODE2OTNkMWFjZjRmLmpzIjo1ODY2Nz09PWU/Il9fTEFOR19fLiIrZSsiLmQxNWZjNGI1YzYzMWJiNWVjZThkLmpzIjo0NzAzMD09PWU/Il9fTEFOR19fLiIrZSsiLjlhYTZlMGZmNGVkZGExNjg3NTM2LmpzIjoyOTYxOD09PWU/Il9fTEFOR19fLiIrZSsiLmRkMjA4ZmE5ZDI2ZTczMjgxMDljLmpzIjozOTUwND09PWU/Il9fTEFOR19fLiIrZSsiLmViN2M4NThhMjMxMDhhY2E3ZmVlLmpzIjozOTk4OD09PWU/Il9fTEFOR19fLiIrZSsiLjNjOWQ0NmQ2OWY1YWQ3MjEwOWEwLmpzIjo1ODgyMD09PWU/Il9fTEFOR19fLiIrZSsiLjA5YjQxZDJlZDg0Yjc5ZjRmZTI0LmpzIjo5Mjk2ND09PWU/Il9fTEFOR19fLiIrZSsiLmFhNjcwZGRmZDE2NTk1OTY0YWViLmpzIjoyMzU2Nz09PWU/Il9fTEFOR19fLiIrZSsiLjVmZGRjMTU5OTgxNDJjYmM2MWVmLmpzIjooewozNDc6Im1hcmtlZC1zeW1ib2xzIiw1Nzc6ImNvbnZlcnNpb24tY29udGV4dCIsMTUyMToienhjdmJuRW5QYWNrYWdlIiwxNjQ2OiJsZWdlbmQtdmlldy1yZW5kZXJlciIsMTc4NzoiYWRkLXRvLXdhdGNobGlzdC1hY3Rpb24iLDIyODQ6InJlZ3dhbGxzLW1hbmFnZXIiLDM5NjE6InByb2ZpbGUtYXBpIiw3Mzk3OiJwZXJpb2QtZm9ybWF0dGVyIiw3NzE4OiJwaW5lLm1vbmFyY2gudjUiLDg2MDg6InN1cHBvcnQtZGlhbG9nLWltcGwiLDk1OTk6ImNvbnRhY3QtYWR2YW5jZWQtY2hhcnRzLWRpYWxvZyIsMTA3MDQ6ImNyZWF0ZS1kaWFsb2ciLDExNDM1OiJub3Rlcy1kaWFsb2ciLDEzMTIzOiJlYXJseS1iaXJkLWJhbm5lciIsMTM3MTk6InBob25lLWNoYW5nZS1mbG93IiwxMzczMjoiZnVsbHNjcmVlbi1pbWFnZS1kaWFsb2ctaW1wbCIsMTM5OTM6InB1c2hzdHJlYW0tbXVsdGlwbGV4ZXIiLDE1NzY3OiJ6eGN2Ym5Db21tb25QYWNrYWdlIiwxNjgxMzoidHJhZGluZ3ZpZXctY29weXJpZ2h0LXdpdGgtYm9yZGVyLWRhdGEtaW1wbCIsMTkwMTI6Im1vbmFyY2guY29sb3JpemVyIiwxOTMxMToidGFrZS1zY3JlZW5zaG90IiwxOTc2OToic3Vic2NyaXB0aW9uLWhhcy1jaGFuZ2VkLWRpYWxvZyIsMTk5Mzg6InN5bWJvbC1saXN0LXNlcnZpY2UiLDIxMjYwOiJuc2QtdW5wYWNrLWltcGwiLDIzNzY5OiJzdXBwb3J0LXdpemFyZC1zaG9ydGN1dC1wYWdlIiwyNjA2NjoiY29udGFjdC1wcml2YWN5LXBvbGljaWVzLWRpYWxvZyIsMjg1MDc6ImdldC1lcnJvci1jYXJkIiwzMDMwNDoiY29udGFjdC1lZHVjYXRpb25hbC1kaWFsb2ciLDMyNjEzOiJjb250YWN0LWVudGVycHJpc2UtcGxhbnMtZGlhbG9nIiwzNDE4OToiYnVnLWRpYWxvZy1jcmVhdGlvbi1oYW5kbGVyIiwzNDg3OToiaW50ZXJydXB0LWNvbmZpcm0tbW9kYWwiLDM1NTkyOiJlcnJvci1sb3R0aWUtYW5pbWF0aW9uIiwzNTk4MDoiY2xlYXItb2xkLXNldHRpbmdzIiwzODc4NzoicGFnZS1zbmFwc2hvdCIsMzk0NDI6ImNvbnZlcnQtbWVkaWF0b3Itc3RvcnkiLDQwMTAxOiJ0di1jb2lucy1kaWFsb2ciLDQyNzA2OiJzaW1wbGUtZGlhbG9nIiw0Mzk4MDoiY29udGV4dC1tZW51Iiw0NDE2MjoidGltZS1mcmFtZS12aWV3LXJlbmRlcmVyIiw0NTMyMjoibGlnaHR3ZWlnaHQtY2hhcnQtcHJpY2UtdGltZS10b29sdGlwIiw0NjE2OToidXBncmFkZURpYWxvZyIsNDYzODM6ImNyZWF0ZS1lcnJvci1kaWFsb2ciLDQ3OTYxOiJkZWNsYXJhdGlvbiIsNDgwMDI6ImNvbnRhY3Qtd2lkZ2V0cy1kaWFsb2ciLDQ4MTc4OiJzdXBwb3J0LXdpemFyZC13YXJuaW5ncyIsNDg0MTM6InN1cHBvcnQtd2l6YXJkLWhpZ2gtdm9sdW1lLWluZm8iLDQ4NTUyOiJ2aWRlby1iYW5uZXItZGlhbG9nIiw0OTgzOToic291cmNlLXRhZy1wb3BvdmVyIiw1MDE4MjoiZ2xvYmFsLW5vdGlmaWNhdGlvbiIsNTI0NTM6InNjcmVlbmVyLW5ldy1zdGFuZGFsb25lLWRpYWxvZy1pbXBsIiw1Mzc3MDoiZ2V0LW1lZGlhdG9yLWFwaSIsNTM4ODE6ImdvLXRvLXRyYWRpbmd2aWV3LXJlZmVycmFsLWRpYWxvZyIsNTQ2MTU6InJlZmVycmFsLXdlbGNvbWUiLDU1MzU2OiJnbG9iYWwtbm90aWZpY2F0aW9uLXRvb2xzIiw1NTk2MDoiY29udGFjdC1zZWN1cml0eS1yZXBvcnQtZGlhbG9nIiw1NjAwODoibmV3cy1kZXNjcmlwdGlvbi1kaWFsb2ciLDU3NjM5OiJtaW5pLWNoYXJ0LXN5bWJvbC1kYXRhIiw1NzcxNDoidXNlci1zdGF0dXMtZGVjbGFyYXRpb24iLDU4NjEzOiJjaGFuZ2UtcGxhbi1kaWFsb2ctaW1wbCIsNTg4MTc6InZhbGlkYXRlLWludGwtYWRkcmVzcy1kaWFsb2ciLDYxNTMzOiJzdG9yeS1pdGVtLXRyYW5zZm9ybSIsNjIyMzQ6Im5zZC1pbmZsYXRlLXBha28iLDYyNTU3OiJzdXBwb3J0LXdpemFyZC13aGF0cy1uZXctcGFnZSIsNjI4MTE6Indhcm5pbmctcG9wdXAtaW1wbCIsNjMwODg6InBpbmUubW9uYXJjaC52MyIsNjQ2NDQ6InJlYWN0Iiw2NDk5NzoidGFiYmVkZGlhbG9nIiw2NTYyMzoicG9wLW92ZXIiLDY1OTQ3OiJ2YWxpZGF0ZS1hZGRyZXNzLWRpYWxvZyIsNjYzOTk6InNub3dwbG93LXRyYWNrZXIiLDY2Njg3OiJyZWNhcHRjaGEtcG9wdXAiLDY3MzAzOiJzY3JlZW5lci1tYXJrZXQtZGlhbG9nLWltcGwiLDY4MTU1OiJpbWFnZS1kaWFsb2ciLDY5NDg2OiJjbGVhci1jb252ZXJzYXRpb24tbW9kYWwiLDY5ODc0OiJsb3R0aWUud29ya2VyIiw2OTg4MToid3JvbmctYWNjb3VudC1kaWFsb2ciLDcxMTg1OiJiYXNpYy1xdW90ZXMtc25hcHNob3RlciIsNzExOTI6InF1b3RlLXRpY2tlciIsNzEzMTk6ImFsZXJ0cy1jb2xsZWN0aW9uIiw3MTM5NDoiY21vbmV5Y29tdHctY29weXJpZ2h0LWRhdGEtaW1wbCIsNzIxMTE6InBpbmUubW9uYXJjaC52NCIsNzMzMDA6ImNvbnRhY3QtYnJva2VyYWdlLWludGVncmF0aW9uLWRpYWxvZyIsNzQzNjQ6ImNvbnRleHQtbWVudS1yZW5kZXJlciIsNzYwNDA6InRyYWRpbmd2aWV3LWNvcHlyaWdodC1uZXctZGF0YS1pbXBsIiw3ODcxNzoicGluZS5tb25hcmNoLnY2Iiw3ODg0MToibWF0Y2hlclB3bmVkRmFjdG9yeSIsNzg4Nzc6InBheW1lbnQtb3JkZXItZGlhbG9nIiw3OTA0MToidHJhZGluZ3ZpZXctY29weXJpZ2h0LXRyYWRlLXdpdGgtZGF0YS1pbXBsIiw4MDkzOToidHJhbnNsYXRlZC1zeW1ib2wtZGVzY3JpcHRpb24iLDg0MDcwOiJzaG93LWVycm9yLWRpYWxvZyIsODUwMzg6ImxlbnRhcnUtY29weXJpZ2h0LWRhdGEtaW1wbCIsODU2NTI6ImhhbW1lcmpzIiw4NTk3NDoic2lnbmluLWRpYWxvZyIsODYwMDE6InBheXdhbGwtbWFuYWdlciIsODY5MTQ6InNwaW5uZXIiLDg3MTk2OiJsaWdodHdlaWdodC1taW5pY2hhcnQtc3R1ZHktZGF0YS1zb3VyY2UiLDg4NTkwOiJvcGVuLXByaWNpbmciLDg4NjQwOiJzdXBwb3J0LXdpemFyZC1tYWluLXByb2JsZW0iLDkwNDE1OiJzeW1waG9ueS1jb21tdW5pY2F0aW9uIiw5MDgxMDoiYWRkLW1pbmktY2hhcnQtY29weXJpZ2h0LWltcGwiLDkwODY0OiJ1c2UtdXNlci10aGVtZSIsOTA4ODA6InJlbmRlci11bnN1YnNjcmliZS1kaWFsb2ciLDkxMjkyOiJwYXl3YWxsLW9wZW4iLDkyOTY4OiJjaGF0Ym90IiwKOTMyNDg6ImFsZXJ0cy1yZXNwb25zZS1tb2NrcyIsOTMyNzk6Im1pbmktY2hhcnQtYmFyLWJ1aWxkZXIiLDk1MjA3OiJzbm93cGxvdy10cmFja2VyLWJhc2UiLDk1NzU2OiJ0di1jb2lucyIsOTYzMzc6ImNvbnRhY3QtdHJhZGluZy1lZGl0aW9uLWRpYWxvZyIsOTcyMDI6ImdvcHJvLW9yZGVyLWRpYWxvZyIsOTc1MDk6InRyYWRpbmd2aWV3LWNvcHlyaWdodC1kYXRhLWltcGwiLDk4ODMwOiJ0d28tZmFjdG9yLWFwaSIsOTk4MDU6ImNvbnRhY3QtYWR2ZXJ0aXNpbmctZGlhbG9nIn1bZV18fGUpKyIuIit7MzQ3OiIxZjdkNjczN2UxOGQ1ZThjMWQzYSIsNTc3OiI5YTM5NjFjMTRmMjI5M2Y5MDllYyIsMTUyMToiNzI0YjUwYjBhMDg2YThiMWVmYzAiLDE1MzQ6Ijc0ZmZlMWU3MjVhNDY1ZDQzNDFlIiwxNjQ2OiI4YzgwMDA1YWYyMTU4YmQwODNkYyIsMTc4NzoiZGVlODBiMWQ1Y2M5MGQwMGQ3OGYiLDIyODQ6ImM0NGFhOTI2N2JlOGRjMWM3MTc5IiwyODUxOiJlNmJmMjAwMGQ0ZmI0YzgxMDAxMiIsMzQ2NzoiODk1NTBjMmI5MWRkYzQ4MDI5MDkiLDM1NTI6IjRjNTUzNTE4M2I3YTAzMzBhODlkIiwzOTYxOiJmM2IwY2VmM2FjOWNkOGQxMTAwZCIsNDg3NjoiMjc0ZDU1YTAyZDMyNDA4NzY4NzYiLDY5MzQ6IjkwZWRmZWY2Y2U5ODM2OWFlMDRhIiw3MjExOiIyZjkzNGIzMGNmMzg2NTE3MTQ0NiIsNzI4NToiOGJjODI5MjY2NTI4ZmE3NGFmNWMiLDczOTc6IjA1OWU2MjI5MjQwMjMyNzAxNmM0Iiw3NjA4OiI5ZGQxNDY0OTIyYzFlNjUxNTZhOCIsNzY3NjoiMGFmMTY3NzMxOWRiNzBhNzFjZGQiLDc3MTg6IjlhMWU0ZDgzOGUyMjJhM2EyNzNlIiw4NDY3OiIwODNkZDdhNTEzZDc3ZGIzZDM0NCIsODYwODoiZGE0YzY5YzJhZjg0ZmI4ZmM2MjYiLDk1OTk6ImU4NjZmYzcxYTRmNjlhZmVhMDliIiwxMDcwNDoiN2ExYThhZDc0NzNkMWVkN2RlODYiLDExNDM1OiIzNTM1OWU3NDU4YjgyMTI0NWY0NiIsMTI5NjU6IjQwNmVlNTlmYTAwOWYwZTljMjZiIiwxMzEyMzoiMzNjMDFmOWQ1MGJhM2NmZTFkYWEiLDEzNzE5OiIzMzIwOGFkMDk1Y2UyODI0MGE2OCIsMTM3MzI6IjVhZjFlZWE1ZTIwNDg4ZTI5MjA0IiwxMzk5MzoiM2IxOTljNmFkOGJmNWMzY2FjNjciLDE0ODg5OiI2MjEwYjFjNTZkYzNiMjBjOGZmYiIsMTUzOTQ6ImZhY2Y3NTNlOGNkZmI5YjkwODMxIiwxNTc2NzoiOThmOGZlOTZiYjc4ZmU1MDhlMDciLDE2MDc2OiI2YTYyYTY0YTVhYmYxNTIyNDNhNCIsMTY4MTM6IjdlNDUyN2JjNTUyMTllYTNhZDc2IiwxNzc5NzoiYjJmMjk0NTAwMGFjYWFmMmQxNjUiLDE3OTkxOiJhMzA3YmZlMDAyMzRkYzQxOWJmZCIsMTg1MTI6ImEzYmNkYzcxYzY4NjAxYjdkYmZjIiwxOTAxMjoiYjc2YzU5ZmRhY2JhYmFiYWYzNDgiLDE5MzExOiI2MjhjNmQzZjc2ZGFjODgyZTgyZCIsMTk0NjM6ImNiOWE4MjU3N2NlODFiNDY5MmQzIiwxOTc2OToiYmVlM2NhZjYyMTY4YTk5YjFkZTYiLDE5OTM4OiI1ZTU0MWY5MGJjZWIxYTdhNzU1YiIsMjAzMzE6Ijc0MDM1ZmU5Mjk3MTgxYTEyN2RiIiwyMTI2MDoiZDA5NTVhYWU3NWY4N2QzYmQ0MjEiLDIzMzY0OiI4MDJjZGFkYTc0ODQ1N2NiZmRkOSIsMjM3NDM6IjQ3MzMxMzdhZjJmMjMyYTZhMzRhIiwyMzc2OToiNjZjZWU2NWEyYTg2MGEzMDZkODgiLDI0Njk4OiJiZDk1NzA3MzA5NWJhYjdkYTU5NiIsMjU4NTQ6ImE2N2M2ZDVjZjMwZWIyYzkxYzk5IiwyNjA2NjoiMGYxZjFjYjE5YWY5ZmYzYWY4Y2MiLDI2MTQ1OiI3MjExZmY1ODA4ZjBhMThhMWU5ZCIsMjY0NzM6ImU2OTJlYzRhNTMyOWNjZTYxYWMzIiwyNjcyMzoiOGE2ODA3MmM3N2VjMDAyNjc5MDUiLDI3OTEzOiIyOTE4NjEyMjcyMmNmMGNjYjlkYyIsMjgxNzY6IjIxMzQyODY1ZTc0ZmZiZWZmZjQ0IiwyODUwNzoiZTllNWVlZDEwOGRjOWIwYmI0YTciLDMwMzA0OiI4OTZiZTI1YWE5MjFhODIxNGUyNCIsMzA0MjE6IjQxMmMzMTlkZGJhZGNjOTk1YzcxIiwzMDY5OToiMTM4NmRmYWE3OGU2ZTVmNmM4N2MiLDMyNjEzOiI3MjMwZDczZWRhNjQ5NWY5YTkwZCIsMzQxODk6IjAxNmJjODQ5ZjQ2MGI2ZGNjZjQzIiwzNDY0NToiODQxZWE2MTY4OGVlYmJiZDY5NmEiLDM0ODc5OiIxZTZjZjFmNWE5MzU4ODgxZGU2NyIsMzU1OTI6ImUyNzExZjY1YjVlNGU0MjZjOTBkIiwzNTk4MDoiYzM0MDQyYTRhMTBjYjVmYjJlM2QiLDM4Mzk4OiIwMjU1MGMxYTQ4YWM5MzYwY2E5YSIsMzg3ODc6ImVlZmFiMWQzYWZiYjMzMjhmZWQ2IiwzOTQ0MjoiMjc0MDk2M2I3OGVlNGE0ZTk2NDAiLDM5NjA5OiI4Y2UwZDc5M2IyYjYwYmU3YTRkNSIsNDAxMDE6IjRjMWJkYTJhYmJmYWI4NDczODJkIiw0MjE3MToiMWMwNWQ4MTQ3YzIzMGQ4NmI0ZmEiLDQyMjEyOiI0NzU0YzI4MDRhYjlhOTc5Nzc2YiIsNDIyODg6IjQ3ZWNhZWNhMTAxMmVlM2UxZDhjIiw0MjQ1NzoiMzI4YTg1MjM3N2Q2NDQ1NzBiMGMiLDQyNzA2OiI2YjExNWU3Mzc3MjU0M2Y0YmMzMCIsNDM5ODA6IjdlMDM3Y2ZjN2IwMTJhOTcwMzM2Iiw0NDE2MjoiMWU2MmJjNzNkZWQ4NTgxMmYzNDMiLDQ0NzgwOiI3OWQyMDUxZDNiODRjYWVhYjRlNiIsNDUzMjI6Ijg4NTFhMmQyZTE1ZGI5MjFkNDhhIiw0NjE2OToiMTkwMzg3OWMyMjIxZmNhZGNiYTgiLDQ2MjE3OiIzZDg2NGJiNGE3MGQ0ZDNkODQwZiIsNDYzODM6IjZkMGJlYTAxNGUyNDZhOWUwZjJkIiw0NjYwMDoiMjQzMmE4NTNlZjg1YjM1ZDRlMmYiLDQ2ODIzOiJhYmE1MWJkMTFkMjNkOWNmNjFlMiIsNDc5NjE6IjdjNjk1YmVmZGQwMDc3MWZjNGVkIiw0ODAwMjoiYmE1MWRkODM2MjFiMGE0MDgzMDciLDQ4MTc4OiI1MzlkNTQ2ZDNkZDQ5NjVjNzJkZCIsNDg0MTM6ImYzZjFjMTcyZTE1NDI5NGQxNzYyIiw0ODU1MjoiOTM0Y2QxNDdiYTMyYTc1ZmM0NzkiLDQ4ODU0OiJiMDczZjRmNTljZTlkZGMwOWRmNCIsNDk4Mzk6IjI2ZmZkZTY5NzUwMjUyYTRkMjJmIiw1MDE4MjoiYTdhOWQ0MTFhZTI3M2YzMDUxMzIiLDUyNDUzOiI2NDczNzExMmU1NzZlZGFjMzQ1ZSIsNTI1MDk6IjQwNjU5NDcwZTUxYjA2NWQ1MTM5Iiw1MjgxMToiMjg3MDBkNDFmNDY4N2JlODE1OTciLDUzNjUzOiIwMzBhZDU0OTk3MDE1MzQzMGY5MCIsCjUzNzcwOiJiY2NkZjI4OGNhMWYyMDU0ZTE0NSIsNTM4ODE6IjNiY2MyZTRmYmEzZGJlZWM2OTEwIiw1NDYxNToiYTQ2ZDM5M2NlY2Q1MGMwMjZmOTkiLDU1MjI5OiIyNTcyMTg4MTlmYWE2NjM5YTM4OSIsNTUzNTY6IjY1ODU5MTlkOGU5ZDllOWM3ODVjIiw1NTk2MDoiMzBlNjRmMzYxNmJlMjI1NjBjYzIiLDU1OTY5OiI0M2MzNzQ4MDE0ZGUyY2QwYmQxYyIsNTYwMDg6IjY1MTljMTQ4NWVjYjlhNmU3OTliIiw1NzA4MjoiNmZjYzZhNTViNWYyODRhOWMyYzEiLDU3NjM5OiIzNDljYmZhNzhkNjEzY2Q0ZmIzNSIsNTc3MTQ6IjMyNTRkOTAwNjkxM2EyNjhmNTY4Iiw1ODYxMzoiMzI3N2RkYTBiMmVhODkyOTY2YmIiLDU4ODE3OiI3ZTY1NDM0MTFiNmMxMzVjN2E4ZiIsNTk2MTk6ImVlNjE3ZTkxZjViZGExNGM2YWQyIiw2MDQ1MzoiMmYzNzY4NGNhNjhkODIzYmQ1N2QiLDYxMTgzOiI3Y2JkMTZmYmM3YzUxOTE1OTM0ZiIsNjE1MzM6ImFlZjE3MGE2NTM0MWM2OWQ2NmM2Iiw2MjIzNDoiMjIwYjAxYTQyMmQxZGRjOWE2ZTIiLDYyNTU3OiJjZDJhYjEzZGI5NGM0YjgzYzY5YiIsNjI4MTE6ImI0NGU3NTQxZmI2OTdjYjhhNzEzIiw2MzA4ODoiMTRlZDZhMWYzZjgwZGZhZGE5MTUiLDYzMTYwOiIyYTNhMjExODVmYmNjNzA3OWRhZSIsNjQ2NDQ6IjkwOTkyYzlkMGQ1ZGM5MmM4OWI3Iiw2NDcxNToiNWY0OTE0OWNjMzJlOWVmYTE5N2IiLDY0OTk3OiJiOWJmNjAyOGFkZmMyZDAzZTY2ZiIsNjUxMDA6ImY0MjJlMWFkMDYwMTZkYjBkNDdhIiw2NTYyMzoiZmY0ZmI3NDg0MjVkMmM1Yjk2ZDkiLDY1OTQ3OiIyZWUwYTcyYzFmMjhiNDkyM2JiMiIsNjYzOTk6IjNmNjg2NTdkNWZmZTI5YjIxZjYyIiw2NjY4NzoiNjYxNzRhNmJhOWFiMjdhNGMxNWYiLDY2OTMzOiJjMWIxZWQ3Zjk3NWFiZGU1NjU5YyIsNjczMDM6IjViYTJiYmQ5YWY4OGVjMzQxNDRiIiw2ODE1NToiY2ZhNDAzZmQwZGVhZWU3ZjZjMjMiLDY4MzA0OiJmNjY1OTY5MjRkZjZlODkxNjNiZSIsNjg3NDE6ImNiOGMyNDRiZmI2MTQwY2MxM2JmIiw2OTEyMDoiMzIyYThhMzEwM2Q2ZmMwYjE5ZGUiLDY5NDg2OiI4ZmMxYzcwODliMmE2ODQ2YmMwOSIsNjk4NzQ6IjBhMjFlODBiNDQxOTY5OWFlODMyIiw2OTg4MToiMDY3N2UxNWMyOGRhZjVkNWVhZmQiLDcwNTkwOiIwMTc4M2JkOWIyNGIxNTVjOGUxZSIsNzA2NDQ6IjQ0ODc0M2RlZjMyNWZlYjYxOTY3Iiw3MDcxMjoiOTI4MDI4YzQzYmE5YjcwN2U4MTEiLDcxMTg1OiJiNGQyMTIyZmJmYzMwN2ExZjc3MiIsNzExOTI6IjNmNWJmYTU2MGYzZDg2NzZhYTBlIiw3MTMwMDoiYjY3MDk0MzM5NDAzMzlkYzFmNjYiLDcxMzE5OiJmZTYzMTFiODIyZTA3OGYzY2MyZCIsNzEzOTQ6ImU2Mzk3NWJhMWQzNjdkZjdhOWQ4Iiw3MjExMToiNDRlNzk2NGFiMzgxYmNiNTRkYTUiLDcyMTQxOiJkODE3ZjRiZTNiMTE4NWQwZWY0ZSIsNzI2NzQ6ImRjYzE3NTI1NGUwYzY2NjJkZDE0Iiw3MzMwMDoiNjM5NTQyNjAxZjdkZjc4M2NjMDciLDczNTczOiJjMjBlYmZkYmQ5Mzc2ODk2ZjM4YSIsNzQzNjQ6ImQ1MWNlYjhkMTA2YTQ5NTFjY2YzIiw3NTQ4OToiZDljMDkxZTFhZWMyNDNjYWIxYTciLDc1OTMwOiIxNDNjM2IyNDE2YTUwOTg5MzdjOSIsNzYwMzM6IjQ1N2ZjNmE5ZGVhOTNhYmM2NGE2Iiw3NjA0MDoiODlhNTFiOTg4ZWM0M2VkMDRlZTciLDc3NTc4OiJmNmRiNDYwZWQxZThjZTMxZWE4NiIsNzgxMDk6IjRhZWJmM2I3YWJhZjNhNDMwZTM2Iiw3ODMxMjoiMDkwZDhhMDAyYjk0M2QyOGE4MjYiLDc4NzE3OiJjM2MwYWE5NTBjYzJhYmQxNGQ3YSIsNzg4NDE6IjJkZjljNjhlMmIyN2U4NTkyMGJiIiw3ODg3NzoiZDIwMDNiYjhiMzEzYzhiZTg1ODkiLDc5MDQxOiJiYjRmN2NiMDY4ZmZiZWU4Y2JiYSIsNzk5OTY6IjFhNzFhYjVkMjYzY2RiYWE5NDhiIiw4MDkxNToiNjk0MDRmZGE4YWFmYzI3NDJjNTUiLDgwOTM5OiJjZWM1ZTMyYjYwZGJjNDM3OWU3NiIsODE4Njg6Ijk2YmUxZDBhNzI4NjNkY2M0N2I5Iiw4MjIzNzoiZGVhODI4NTkxMWQwM2ZiMDZjNWIiLDgzNzgxOiJhNDMyM2IwZjAxODFlOWRkZmE2MCIsODQwNzA6IjNmZmIwMDcwNjhlMGNjN2M1MDdjIiw4NDM3MToiMjU2NTQ1MmNhZWNhYjk5ODI1NWMiLDg1MDM4OiI0YzBkNmRmMzA0NWRlNDE3MzE3OCIsODU0MzQ6ImI4NWI3NWRmOTFiMjJiYWM4ZDM5Iiw4NTY1MjoiOGYyZmY0M2I2OGJmZTZlYTEyZmQiLDg1OTc0OiJhZWU2MjQ0NDA2NTU4Y2MxNTdkMyIsODYwMDE6IjA4MzcwYWRkNWIwNzgxZjk1OTI4Iiw4Njg2MDoiNDc0ODc3YmUwYjIzNWRjOGNiNGMiLDg2OTE0OiJmNjMxNDcxZmFiMDM4MzcxYmFkMCIsODcxOTY6ImIwOGYyYWEyOGJmNDA2OWE4ZjRjIiw4Nzg1ODoiNjkxMzdlNjJiYmQ1ZTBhNjNhZjQiLDg3OTk1OiI5MTFiMjYxODE3NzhmZWNjNGI0ZSIsODgxNzI6IjNhODE5MDRhZTk0MTIxOTAyZmZlIiw4ODU5MDoiMmY1ZTIwNGM3ZTNkZDkwNjg3OGQiLDg4NjQwOiIxYjUzOTkwNDQwYjIzMWI3MGYyZSIsOTA0MTU6IjhlMmFjMWVjMjJhMGEzMzYyNDUyIiw5MDgxMDoiZDVjZGE2NGMzYmU5MmNjNTMwNWEiLDkwODY0OiJlMzE4ZDQxZTY0MTMxYTZkNzgyOSIsOTA4ODA6IjkyNTBjMGY0YzY2OTNmZjFjOTUwIiw5MTI5MjoiNjUxNmJhYmEzYTVkOThlNTBiYTkiLDkyOTY4OiI0YzQ1MzZkMGM3MTYyMmU5N2FhMyIsOTMyNDg6ImFmZGU1NDhkZmUwOTExOWI2OWI5Iiw5MzI3OToiZjMzYjA1ZDNmZmMyNGE2MTUxMjYiLDk0MTgyOiIyMGRjYzc4YzBlODQ4MWQ0MzQ3MCIsOTQ4MjU6IjhhOTBjMGMzZWJkNDEzZWI5YzgxIiw5NTIwNzoiNDY1ZjhhZjFhYTcyYWMzYTFjMzIiLDk1MjQ0OiI5ZGE4ODljMTM2ZDI1MDZhM2Q4MSIsOTU3NTY6ImVhMjMzMTQzNTI4M2QyNTMwNGE1Iiw5NjMzNzoiODZjM2NjNjEyYzk4ZjdlNzc0OGQiLDk3MjAyOiIzMjNjMTFjZGFmZGNhMzJkNGFkNyIsOTc0NzI6ImU4MTk1NDA1Zjk5MDU1YTgzYzZmIiw5NzUwOToiMjdmMzQ5YTFkNTg0ODNmMjdlYWEiLDk4ODMwOiI0OTZiZWRiM2U5MDcwZWRiNTkyYiIsOTk4MDU6Ijk5NTVhNzc0NWY4NDk3NDE3MTgyIn1bZV0rIi5qcyIsCm4ubWluaUNzc0Y9ZT0+OTc3OTc9PT1lP2UrIi5kOTg1ZWViZTY3Mzk3ZjAyZmE2NC5jc3MiOjUyMzk2PT09ZT9lKyIuZWQ3NmNhZjJmZmUwMTQ0NjBiYTYuY3NzIjoyMDM1ND09PWU/ZSsiLjJkZGY5MzRmOGVkYzI4MDJkOTBhLmNzcyI6MTM0OTI9PT1lP2UrIi4yYzc3NzMwZDExMjVhNDk4NWJkYy5jc3MiOjM3NzQ2PT09ZT9lKyIuMzQ1MjI3YmIxNmUwZDhiYzliZDUuY3NzIjoxMjM4NT09PWU/ZSsiLjc4NTYxZWJkZWYwNWNlNjQ4YjVkLmNzcyI6ODEwNzI9PT1lP2UrIi4yOTI3YTE3NzIzMWZkZDBlMjRjMS5jc3MiOjUxODQ9PT1lPyI1MTg0LjBmYjQ1NzRjYWNlYzE2ZjYzNjVkLmNzcyI6MTEyMTg9PT1lP2UrIi4xMWZlN2U4ZmRhMzAxOWFhYzFhZi5jc3MiOjcyNjY2PT09ZT9lKyIuMjIyOTE3M2JmNGQ2NzQ0ODQ2MzcuY3NzIjo5NDk0OD09PWU/ZSsiLjBmYzg4ZmE2M2MwNTRhOGQ3Njg0LmNzcyI6MjQ1ODE9PT1lP2UrIi40NWRmMDIxODFjNDUwOTczMmQyMC5jc3MiOjIzNjI0PT09ZT9lKyIuZDIzOTBkMTdiMTUwOWIwMTg4MjYuY3NzIjozNjIyMj09PWU/ZSsiLmU5YmU5YTczM2UxMTQ3MzBhNGVhLmNzcyI6ODM0ODg9PT1lP2UrIi4yYTM1Mzc3ZmQ1NGYwYWY0MDg3NC5jc3MiOjY3Nzk5PT09ZT9lKyIuZTI0OTU2OTFjZWExN2IzYTgxYzIuY3NzIjoxMTQ2MT09PWU/ZSsiLmUyN2NiNGVjZjMwNDkyYWMxMWY2LmNzcyI6OTY1ODc9PT1lP2UrIi45N2ZkZDY1ZjIwMTIxMDZmZjExZS5jc3MiOjg2NDIzPT09ZT9lKyIuNzk3ODNhYTcyYjZlMjkyNTJkMGMuY3NzIjozNzUxMz09PWU/ZSsiLmRlMTU3NGIzMzg5ODAwYzkzZWJjLmNzcyI6OTUwND09PWU/Ijk1MDQuOTAzNzdmN2Q1OTQ2Y2YzMjU0ZjAuY3NzIjo0MDgzNT09PWU/ZSsiLjc2YTFjNzkyM2EyYzk4NmJlOWFjLmNzcyI6OTM0MjE9PT1lP2UrIi45NTM4MWY4ZTAwNGQwZDJmYThjZi5jc3MiOjQ3NjMyPT09ZT9lKyIuMzNkMmEzNzQ1YWY0OTdlM2RhNWQuY3NzIjozMTgzNz09PWU/ZSsiLmQzNjhjYWE2NGQ0OTRhNDA4N2NjLmNzcyI6NzY2NT09PWU/Ijc2NjUuOWYxZjMyYjE3NzNiMDU0ZmRmMDcuY3NzIjo1NTAxMT09PWU/ZSsiLmY5YzBhM2MwOWY3Yjg3NzlhYTM3LmNzcyI6NTAwMzU9PT1lP2UrIi4wMjI3YzA5ZThkZTNiNDAwODM5NS5jc3MiOjc4NjUyPT09ZT9lKyIuNGI0ZTA5N2EzMDNkMjFiYzk3ODEuY3NzIjo1MDIyMT09PWU/ZSsiLmY0OWRhMmE3Mjc5Nzc0YWE1ZmU4LmNzcyI6NDUzNjg9PT1lP2UrIi45ZmYwMGEzZTM4MjEyMDI5YmE1NS5jc3MiOjI2NTkyPT09ZT9lKyIuMWM2MTIzOTAyYmM4OGViYTlkNTcuY3NzIjo2MjYzMD09PWU/ZSsiLjUzNzMyZGFlYTgxNzg0NDczOTNmLmNzcyI6ODQwOD09PWU/Ijg0MDguZGU1MzQ2NjNlMDUyMDc1YmExMmYuY3NzIjoyNzUxNz09PWU/ZSsiLjczNjEzNzRkZWUyYjUyZmQxZjhlLmNzcyI6NDM2NDQ9PT1lP2UrIi4wZjdjMTQwMDE5YTY3ZmQ1MGJlNi5jc3MiOjE4NDcyPT09ZT9lKyIuZDk0MTliNmRjYjY0Yzg4NTY0YzEuY3NzIjoyNTgwOT09PWU/ZSsiLjhkZjRlYTdiMDk5YWRjMTVkMDY2LmNzcyI6OTgwODQ9PT1lP2UrIi43Njk0ODc2NDAxNGFlMWQ0Y2NmYi5jc3MiOmUrIi4iK3s2NDU6ImZiMzUwZDlhYzljNzgyZTVlNDM5Iiw2NDY6ImVlMjhiMmIxOWNjODgzMjc2NGI1Iiw2NTc6IjI5ZGRkNGYwNGU2ZWM1MGRhNzBiIiwxNTA5OiIyN2M0ZjAxMWMyNTk3YWRkNzI3NiIsMTY3ODoiOWU5OWM2YzdjMTQyNDRmYWU3NGUiLDIzMzE6ImE0MTczYWZhMTVjYTg1YWQyZjY1IiwzMzIzOiIzZGE3OThkYTM1ODA2Zjg2NzlhMCIsNDA0MjoiZmE5NDk2ODBhMmFkZjllMWFiODQiLDQ0Nzc6IjUxMmMwNDcwOWEzMjU5YmQxMTI0Iiw0OTI5OiI2ZGQ2MWQ1YmY5NmFiMjM0M2Q5OCIsNDk2OToiYzNhZGIxYTEwOGJmMmJhZjljYjMiLDU2ODk6IjA3ZDBkODUyNGJhNGI5YWY0YWRiIiw2MDgyOiJlMDJiODhmNTRmNjhjYmE0MjQ3MSIsNjQ0NToiYWM2MzViYTE1MTk0ZGY0ODQ2MTYiLDY1ODM6ImJjYzU3NDNlMjM2ZmZjNWI3Y2NmIiw2NjA1OiIxZTg5NDIzMTliNDg1YWZjMWY3NSIsNzE2MzoiZWM0ZTdiY2MwYzc5ZTJlNjA3NGQiLDczODc6IjNkN2Q4NjQwMjJjODRmOTI4YWRhIiw3NDQ1OiI3ZGE5NjZhNDQwMTZhZTdhMDJmOCIsNzg5OToiNDdhYWQwNWVhYTIwYmYzMDEyZjciLDg1Nzk6IjZmNjUxOGJlNDI5MzgyMjc4NmUwIiw5ZTM6ImY4NmUxZmQxMDVkOGNjN2FlY2Y0Iiw5MTQwOiI1MTI4MzhkN2U2ZTEwN2YwNzM4ZCIsOTc0NDoiNzBiNTEyNjQ5NWY3YWRjY2FmMmYiLDEwMzY2OiIwN2UyMGU3YmJlZTI3YzlkNWZiYyIsMTAzODU6Ijg3NDRkNGY4NjcwZGFjMzEwZDFmIiwxMTAwODoiNTJhZmE1ZWVkNGExY2Y2NmJlZDYiLDExMjU3OiJlNzlmMGY3OTk1ODg0MDQ3M2QzMSIsMTE0ODk6IjU0N2UzMDNlMjkyZjU0ODE0ZGI0IiwxMTcyNToiMzFlODBiMjNkMTUxNjIyMzJjNDgiLDEyMDUxOiJiODRiZTc4MWJiOTBkNDU3ZjFkZiIsMTI1NjU6IjFkNDA1MzY3OTdhMjk0MTljNjZlIiwxNDE5MzoiZmZlNmYxZjczZGNiMThmMjliNTUiLDE0NjI1OiJhZGE2MTJjY2VmZGVmNzc5ZTI5NSIsMTU1MjY6ImM4MjljNTJmZWQyNTk4NTViYjk2IiwxNjQyMToiMzFkNmNmZTBkMTZhZTkzMWI3M2MiLDE3NjkzOiJiNTI5MzM0YzhjNzYwZWUzNTFkYSIsMTgxNjI6ImQwNjE4NGJjOTcxZWNiZGRhM2IzIiwxODQwMDoiNGYzMWU3ZDk4MGIwNDhlOTU3MmMiLDE5NTEzOiI4NzQ5ZWRjZTY0YTdlMmRlMjU4MyIsMTk1OTU6ImQ5NjJhYjc1YmQzZTFiYWE1YWFlIiwxOTU5ODoiNzhlMmRiMjFiNjlmMTQ1M2Q3MGMiLDE5Nzg3OiJiYmI2NmZhMGZkMmJkMDRkMDg3NSIsMTk4MzM6ImE5YjhmZjQ0YThjNjc2MzMwNzlhIiwyMDI3MToiMGMxNGYxMjZlMzhmNmI0NjA3N2UiLDIwOTcxOiJkNDZhMzc4MGI0MDA1ZDk0N2Q3NCIsMjA5ODY6IjQwZTM0ZTIxYjNkODE5ZGY0OWU1IiwyNDQwODoiODZlNDVlY2YwODg0YmU2YTZlZTMiLDI1NjQ3OiIzZDQzMDE5OGM0MjIyMzlhNWY5MSIsMjU2OTg6Ijc2MDVhNTgyM2NhNmQyNWZlZTQ2IiwyNzU0OToiM2VhNjQ3NWM3OWFiOGUxMWU5MDUiLDI3NzM2OiIyOTNkOTQ3N2MxOTU0ZjE5NzdhNyIsCjI4MDE3OiJmZTc5OGY0ZDdjY2YwMjRiYmIxNSIsMjg0MTM6ImQ5MTIxYmU2Y2QxMzcwNzNmZDNhIiwyOTEzMzoiYmRmYTE2NzA5M2YwNWRmYjI0ZDAiLDI5Mjk2OiJiNDA4ZjI4MjJmYTViOTU2OWJhYyIsMjkzMjc6IjVhNjIzZmU0OTg4MmI5Y2Y1MWU3IiwyOTUzNjoiNzM2ZjQ3MWE4ZDY0YTgxMjJmZDgiLDI5OTQzOiIyZjMzNzMzZGQ2NDhiODJjNDZmYiIsMzAzNzM6ImRlMzJhM2NkY2FlMTJiMTVkNmRmIiwzMDc0NToiZTc4ZDgxYmYyNTBjZDZlNDMwNjgiLDMwOTYwOiI1NDcxMDk4YmQyN2Y5MGYzMTE1ZCIsMzEyNjI6IjI2MGI2MTg3OGUwNTlhNDJlNzlhIiwzMTU1NzoiZTZhZWY1MWYxMDkzNDJiNTk5MWMiLDMyMTc2OiI3YzU3Yzk4OTMzYjhjZmQzZjhlNyIsMzI3NDg6IjJkZDE4ZTIwOWE3NzJlYTRmMWQ3IiwzMzEyMDoiM2U2ZDFjMzNkNmM1MjVjMDc3MWYiLDMzMjIxOiJmNDJjYzU1YTkwYzk4ODQxMjFlNSIsMzMzNjg6ImYxNWRmY2JjMGY3MTk2ZDdkNjc2IiwzMzU1MzoiMGRmOWIzNTJjYmM2ZmEwM2NjYTgiLDM0NzU4OiI4ODBkOTczYmY2Y2JiYzQ4MjE3NCIsMzUwNzM6ImI4NTYzMmVhYTIyY2YxOWU3Y2QyIiwzNTE5ODoiMjJhNTY1NWY1M2UwOTFhMmZiNzMiLDM1NjMwOiI4YjllZTI1YzVlMmQyMzRkOTk1MSIsMzYzNTY6IjY4ZTY2YmY3NGZkYjI0M2Q0MzJhIiwzNjU0NToiZmM0ZWIzNzExMmUzNWUwOGQwMmMiLDM3MzkwOiIzMmZlYzg3MDMzZTI4YTVkODY0ZiIsMzc3Njc6IjQ0MDI5NjA2YzczYTY4M2U3YjBjIiwzODI2MjoiYjQwZTdlNzgwNjQxNjNjZGMwZDIiLDM4ODY4OiI1ZWU3NDFmZDYzODY2NmQ0NDVkYyIsMzk3ODY6IjJiMDBkYzIxZWY5NDYwMGUwOTY4Iiw0MDIyMDoiZTBiZTM3OTczNDVjNmUyNGNlY2EiLDQwODY3OiI0OTU2YzYxNWZkZWFkODFkY2QxMSIsNDA5MTQ6ImE4ZGQ2OTZiZTdkZGU2Y2U2ZGRiIiw0MTU4ODoiYTRkMWZiYmZiYzEzYmFlNzYwZDAiLDQzNDQxOiJhYzYwMzUwYzg2YzU3ODExZjIyMyIsNDQyNTM6Ijg0MDViYWYzM2MzZWZkMDE1MjhlIiw0NTk0NToiNWM5ZWNjZDI4MWNhN2YyZDc5ZTAiLDQ2MDM0OiI3ZmU1ZDY1NTVkMzUyMzg4NzIxNCIsNDY1OTE6IjhkMDMzMzk0YjgzYjYxNmJmMDY2Iiw0NzAyMToiZWQxMTM0OTdlZjMyYTY1MjZlNTAiLDQ3NTUxOiI4ZDJjZTUyNGIzOGU0YTkyNTQ3ZiIsNDc1Nzk6ImRjMzg3OTE5MWMwNGI5MzhmZDNmIiw0ODg2NDoiYzdiMmFmOThkOTE0ZWJkODMyN2MiLDQ5NTM2OiJjYmEyMDdhNWJhY2Y3YTE1M2EzZiIsNDk1ODg6IjE1NDI2YjIyMjc5NTYxZDk4ODBiIiw1MDMyNToiNTc3Y2QxMTQ2MTYyYmNmMDVjMmIiLDUwNjIyOiI1ZjA1ZWY1MWFiMDIzOGRhYTM2YSIsNTA4MDA6IjgwZjkwZTA0NDllZjIwZjM4OTg2Iiw1MTAzMDoiYjdmNTNlZDYzNWIwOTJmZDE2OTEiLDUxMjEzOiI2ZGIxOGY1NDVlOGZjYTg1OTFkMyIsNTEzMDk6IjZmMDJlYWMxNGJmMDIyZGMyYTQ3Iiw1MTMxNToiNDUxOGM0MGM1OTRkN2M2YzczNDciLDUxNjgyOiIxNWQwMTM0NzJiODVjZDk4NTE3YSIsNTE4ODA6ImNmODA5NmFkOWNmNjY1ZThmM2JiIiw1MjA2NToiZGU5ZWRkYjMzOWFjNzdkMWRiZjgiLDUyMTc4OiI0ZDU2MmEyNWFkM2MxMzc5MjFlMSIsNTI2ODA6IjhlZmE2YjRkOTk4MTg2ZjM5Y2JhIiw1MzMyOToiMDNhNmQzNDAzNWMxNzY4ZmI3ZDUiLDUzNTIxOiJkYzliYzcwYTZhODBmMmM5NGY1NSIsNTM3MTM6IjQ5ZDg4M2M3N2IzZDc0ZjQ3YzEyIiw1NDA5MzoiZDgwYzBmZmIyMzQ1N2ZmODVlZjQiLDU0MzEwOiJjZGQwMjJmZGFmZTQ0ZmMyYzU4OSIsNTYyMTM6IjAwZDI1ZmU4YWQxNjllMzE4YjJlIiw1NjI1MjoiMmI4MmY1NzViYTFjZWI1NGZhMjkiLDU3MzAwOiJjMWY1ZmM0ZTE1OTkwNjg1ZmI3MyIsNTc1MDQ6ImM3Zjc1ZjYwMzlmN2NhNDc4YjJlIiw1ODM4NDoiNjZhNjBiNWViYjNlMDQ2ZjgyZDEiLDU4OTMzOiJiM2FlNTFiOWIzODNmM2FjOTU2NCIsNTkzNTA6ImI2NjM2M2QxOTk4NDFlYmY4Yjg2Iiw1OTQzNzoiYjcyYzUwYjUwNWYxMmM5OWM3MmUiLDU5OTQxOiJhZjIyZjNhYjgzY2RmY2MzOTM1YSIsNjAwNjI6IjQ5NTQ0NGE3ZmFjMTczZmIyOGNkIiw2MTgyMToiZjY0ZDFlMmM2YjFlMzBkZmQ1NGUiLDYyNzkwOiIwY2QyYjkxN2Y3YTcxNjkwZTc0NSIsNjI4MDY6ImFlN2I5OTJiZDUzMWU3NmY4ZTc2Iiw2NDE5NToiNzIxNTFiYTJlNjczNDczZjcyYTQiLDY0NjQzOiI1ZWYzYmRiYWEwYzZjNDg4OWY0ZSIsNjQ2NzQ6IjY2ZDVhM2NiNWY4NDA2MzM0NDdhIiw2NTUyODoiOWRjYzE5MWE0YWI0ODdkMGIxMGMiLDY1ODU2OiI2Y2YyNzMwNjQ1MTZjZDgxMjljMCIsNjYyNzA6IjAwZjdlMDI3MzBiNDU2YWJmMjZkIiw2NjQ3MzoiMjE4MjJlYjViYTZkOGJkNTBjNmUiLDY3MjEyOiI3Y2ExMmFiN2VjY2YxYzQ4YWVhMSIsNjc1NDM6ImRjZGJhODk5NDljMDBiZjU3NWQ2Iiw2ODk0MjoiNDljZTM1ZTA4ZGZiYjdiOThlNWEiLDY4OTY0OiI5NDI1YjU4NzMwZGYxMzgwNmZmNiIsNjk4MDk6IjQyNDU3YmZiNjUxMjI1NmIyYzA4Iiw3MDY1NjoiY2U0ZmI0ZGZkOTU5ZWVmYzg0YzciLDcwODE1OiIzY2U2ZDZhMjY4NmU4ODkwN2FiMyIsNzE0MTQ6ImUzNDVlZDc1MmQzYTIwZDE5NDY3Iiw3MTQ4MjoiMWYwYWRhOTE2MGYzZjlmY2VjMDMiLDcxOTAxOiI0M2Q1YjQ4ZDk2NDM2NTZiZmQyYyIsNzIyNDk6Ijg0YmM3ODY3ZjVmMTA0YmJhZDI2Iiw3MjUxMjoiNjE5MzEwMmUzMTUyODA2YjhiMGYiLDcyNjgwOiJmNzlhNTcxNjBjZDcyNGFkZmRmYyIsNzI5MDI6Ijc3NmRiYjQ0NjlkMTk1NGY1YzZhIiw3MzQyNToiYWVhYjkxMjllOGRkMzliNWEyNDQiLDczNTUxOiIzMjgyZTA1MjVhOTM1ODIwYjRmNyIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0Iiw3NDIzMzoiMWU3NzYxYTgxYzRlYzVmOTk4NzYiLDc0MzgxOiJmZDZiOTAxNTNjNmMxNmIyYmM5YSIsNzQ0MjI6IjNkNzg4NWI0MTQyY2Y1ZjA4YjA4Iiw3NDYzNjoiYjBkZWExNjVmNDQ1ZjQwOTA5ZmEiLDc0ODMwOiI0ZjUwZDAwZmJmOTVjMWUyOTY5NSIsNzYzMjk6ImM1N2QxNmQzNTBkZDZmNGFhN2FkIiw3NjkxMjoiZjA1NTNjNTI4M2M5ZGExMjViNDkiLAo3ODIzNzoiZTg5NmE4YmVhOTI1ZDY1ZjZlZmYiLDc4NDA0OiJiNWVjZDZkYzY1ZjEzZGVmNWVhYiIsNzg0NzE6IjA1MmY5NjMzMDM0NjE4YjAxNTYxIiw3ODg5OToiYmI1ZjgxZDk0YmU1YjVhN2JiZDEiLDgwNzMxOiJmOTY4Mzg1YmUyZTIwMDYyYmVkYSIsODA3ODI6Ijk3NWZiNDFkNDJhZTJkNTFjMDhiIiw4MTAwMToiYWZmODRiYzA0YTAzYjE3YjU0NmQiLDgxNTI5OiI5NjUyNGIwMzkzY2Y4Njk1ZDljZiIsODE5MDM6IjJjYTY3NmJiZTQ2MzgyZTZjMWZmIiw4MjI3MToiYzAyMWJhZTQ0NDY2NWEzNDg1M2YiLDgyNTg2OiJkZTlhMmVhNTE1Yjk2MGUwNTQ3ZSIsODM1Mjk6ImQ5NmVhNWMxZjljODM3NWZiYzE4Iiw4NDk0ODoiMWYwNWQyZTYzODc3OTMxYTRhMTEiLDg3NDc0OiJiZTI4ZjllMDAzZTBjNDczYjkxZCIsODc3NDA6IjVlMWE3Njc5MGVlNDlhMzc5NWZhIiw4ODM4NToiMDg1NTFmMjAwZmVhMGZkMDNjZDUiLDg4NjQxOiIwNDE0MzhkMTFjNDZmY2U5ZDA4OSIsODkwNDQ6IjEyMjg4NjU5MWRiM2ZhNmZkYzAzIiw4OTE5NToiZjFlYmMyNGEwZGQ2YzllMDQ1NTIiLDg5NTU4OiI5ODFhMzRiMTliNDFmYWQ5MmI4OCIsOTA5NjA6ImVjOTQxYWNjZmFhM2VkMmNkNmUyIiw5MTIwMDoiOWE1MmY5ZjkxOGZjMTk2YmE0NGEiLDkxNjc4OiJlMzBkNGNkY2RjNjg4MzdmZjRkMSIsOTM0MTY6IjkwODE4ZDczZTBlM2E5YTlmZTJhIiw5NDA1NDoiZDUwZTkzZWY0M2MxODRhNTEzZWYiLDk1MTU4OiI1M2JlNmVlNjY0ZTUwNTE4NDVmOCIsOTc2NjA6ImFlOWYzZDRlNTY5NmY1ZDExOWE3Iiw5OTU5MzoiYjRmOGFlMTdjMGZiNjhmMmZiMDAiLDk5OTA4OiJmM2Y3MmYyZTk3M2ZiZDlkYTkxZSJ9W2VdKyIuY3NzIixuLmc9ZnVuY3Rpb24oKXtpZigib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMpcmV0dXJuIGdsb2JhbFRoaXM7dHJ5e3JldHVybiB0aGlzfHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChlKXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdylyZXR1cm4gd2luZG93fX0oKSxuLm89KGUsYSk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGEpLGQ9e30sZj0idHJhZGluZ3ZpZXc6IixuLmw9KGUsYSxjLGIpPT57aWYoZFtlXSlkW2VdLnB1c2goYSk7ZWxzZXt2YXIgdCxyO2lmKHZvaWQgMCE9PWMpZm9yKHZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxpPTA7aTxvLmxlbmd0aDtpKyspe3ZhciBzPW9baV07aWYocy5nZXRBdHRyaWJ1dGUoInNyYyIpPT1lfHxzLmdldEF0dHJpYnV0ZSgiZGF0YS13ZWJwYWNrIik9PWYrYyl7dD1zO2JyZWFrfX10fHwocj0hMCwodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuY2hhcnNldD0idXRmLTgiLG4ubmMmJnQuc2V0QXR0cmlidXRlKCJub25jZSIsbi5uYyksdC5zZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIsZitjKSx0LnNyYz1lLDAhPT10LnNyYy5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKHQuY3Jvc3NPcmlnaW49ImFub255bW91cyIpKSxkW2VdPVthXTt2YXIgXz0oYSxjKT0+e3Qub25lcnJvcj10Lm9ubG9hZD1udWxsLGNsZWFyVGltZW91dChsKTt2YXIgZj1kW2VdO2lmKGRlbGV0ZSBkW2VdLHQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLGYmJmYuZm9yRWFjaCgoZT0+ZShjKSkpLGEpcmV0dXJuIGEoYyl9LGw9c2V0VGltZW91dChfLmJpbmQobnVsbCx2b2lkIDAse3R5cGU6InRpbWVvdXQiLHRhcmdldDp0fSksMTJlNCk7dC5vbmVycm9yPV8uYmluZChudWxsLHQub25lcnJvciksdC5vbmxvYWQ9Xy5iaW5kKG51bGwsdC5vbmxvYWQpLHImJmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9fSxuLnI9ZT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4ubm1kPWU9PihlLnBhdGhzPVtdLGUuY2hpbGRyZW58fChlLmNoaWxkcmVuPVtdKSxlKSxuLmo9MjExOCwoKCk9Pnt2YXIgZTtuLmcuaW1wb3J0U2NyaXB0cyYmKGU9bi5nLmxvY2F0aW9uKyIiKTt2YXIgYT1uLmcuZG9jdW1lbnQ7aWYoIWUmJmEmJihhLmN1cnJlbnRTY3JpcHQmJiJTQ1JJUFQiPT09YS5jdXJyZW50U2NyaXB0LnRhZ05hbWUudG9VcHBlckNhc2UoKSYmKGU9YS5jdXJyZW50U2NyaXB0LnNyYyksIWUpKXt2YXIgYz1hLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKTtpZihjLmxlbmd0aClmb3IodmFyIGQ9Yy5sZW5ndGgtMTtkPi0xJiYoIWV8fCEvXmh0dHAocz8pOi8udGVzdChlKSk7KWU9Y1tkLS1dLnNyY31pZighZSl0aHJvdyBuZXcgRXJyb3IoIkF1dG9tYXRpYyBwdWJsaWNQYXRoIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBicm93c2VyIik7ZT1lLnJlcGxhY2UoL15ibG9iOi8sIiIpLnJlcGxhY2UoLyMuKiQvLCIiKS5yZXBsYWNlKC9cPy4qJC8sIiIpLnJlcGxhY2UoL1wvW15cL10rJC8sIi8iKSxuLnA9ZX0pKCksbi5nLmxvY2F0aW9uJiZuLnAuc3RhcnRzV2l0aChuLmcubG9jYXRpb24ub3JpZ2luKSYmKG4ucD1uLnAuc2xpY2Uobi5nLmxvY2F0aW9uLm9yaWdpbi5sZW5ndGgpKSwoKCk9Pntjb25zdCBlPW4udTtuLnU9YT0+ZShhKS5yZXBsYWNlKCJfX0xBTkdfXyIsbi5nLmxhbmd1YWdlKX0pKCksKCgpPT57dmFyIGU9bi5lLGE9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBjKGEsZCl7cmV0dXJuIGUoYSkuY2F0Y2goKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihmKXt2YXIgYj1mdW5jdGlvbigpe3NlbGYucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25saW5lIixiLCExKSwhMT09PW5hdmlnYXRvci5vbkxpbmU/c2VsZi5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLGIsITEpOmYoZDwyP2MoYSxkKzEpOmUoYSkpfTtzZXRUaW1lb3V0KGIsZCpkKjFlMyl9KSl9KSl9bi5lPWZ1bmN0aW9uKGUpe2lmKCFhW2VdKXthW2VdPWMoZSwwKTt2YXIgZD1mdW5jdGlvbigpewpkZWxldGUgYVtlXX07YVtlXS50aGVuKGQsZCl9cmV0dXJuIGFbZV19fSkoKSwoKCk9PntpZigidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50KXt2YXIgZT1lPT5uZXcgUHJvbWlzZSgoKGEsYyk9Pnt2YXIgZD1uLm1pbmlDc3NGKGUpLGY9bi5wK2Q7aWYoKChlLGEpPT57Zm9yKHZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsaW5rIiksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZj0odD1jW2RdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpfHx0LmdldEF0dHJpYnV0ZSgiaHJlZiIpO2lmKCJzdHlsZXNoZWV0Ij09PXQucmVsJiYoZj09PWV8fGY9PT1hKSlyZXR1cm4gdH12YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3R5bGUiKTtmb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgdDtpZigoZj0odD1iW2RdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpKT09PWV8fGY9PT1hKXJldHVybiB0fX0pKGQsZikpcmV0dXJuIGEoKTsoKGUsYSxjLGQsZik9Pnt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7Yi5yZWw9InN0eWxlc2hlZXQiLGIudHlwZT0idGV4dC9jc3MiLGIub25lcnJvcj1iLm9ubG9hZD1jPT57aWYoYi5vbmVycm9yPWIub25sb2FkPW51bGwsImxvYWQiPT09Yy50eXBlKWQoKTtlbHNle3ZhciB0PWMmJigibG9hZCI9PT1jLnR5cGU/Im1pc3NpbmciOmMudHlwZSkscj1jJiZjLnRhcmdldCYmYy50YXJnZXQuaHJlZnx8YSxuPW5ldyBFcnJvcigiTG9hZGluZyBDU1MgY2h1bmsgIitlKyIgZmFpbGVkLlxuKCIrcisiKSIpO24uY29kZT0iQ1NTX0NIVU5LX0xPQURfRkFJTEVEIixuLnR5cGU9dCxuLnJlcXVlc3Q9cixiLnBhcmVudE5vZGUmJmIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChiKSxmKG4pfX0sYi5ocmVmPWEsMCE9PWIuaHJlZi5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKGIuY3Jvc3NPcmlnaW49ImFub255bW91cyIpLGM/Yy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShiLGMubmV4dFNpYmxpbmcpOmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYil9KShlLGYsbnVsbCxhLGMpfSkpLGE9ezIxMTg6MH07bi5mLm1pbmlDc3M9KGMsZCk9PnthW2NdP2QucHVzaChhW2NdKTowIT09YVtjXSYmezY0NToxLDY0NjoxLDY1NzoxLDE1MDk6MSwxNjc4OjEsMjMzMToxLDMzMjM6MSw0MDQyOjEsNDQ3NzoxLDQ5Mjk6MSw0OTY5OjEsNTE4NDoxLDU2ODk6MSw2MDgyOjEsNjQ0NToxLDY1ODM6MSw2NjA1OjEsNzE2MzoxLDczODc6MSw3NDQ1OjEsNzY2NToxLDc4OTk6MSw4NDA4OjEsODU3OToxLDllMzoxLDkxNDA6MSw5NTA0OjEsOTc0NDoxLDEwMzY2OjEsMTAzODU6MSwxMTAwODoxLDExMjE4OjEsMTEyNTc6MSwxMTQ2MToxLDExNDg5OjEsMTE3MjU6MSwxMjA1MToxLDEyMzg1OjEsMTI1NjU6MSwxMzQ5MjoxLDE0MTkzOjEsMTQ2MjU6MSwxNTUyNjoxLDE2NDIxOjEsMTc2OTM6MSwxODE2MjoxLDE4NDAwOjEsMTg0NzI6MSwxOTUxMzoxLDE5NTk1OjEsMTk1OTg6MSwxOTc4NzoxLDE5ODMzOjEsMjAyNzE6MSwyMDM1NDoxLDIwOTcxOjEsMjA5ODY6MSwyMzYyNDoxLDI0NDA4OjEsMjQ1ODE6MSwyNTY0NzoxLDI1Njk4OjEsMjU4MDk6MSwyNjU5MjoxLDI3NTE3OjEsMjc1NDk6MSwyNzczNjoxLDI4MDE3OjEsMjg0MTM6MSwyOTEzMzoxLDI5Mjk2OjEsMjkzMjc6MSwyOTUzNjoxLDI5OTQzOjEsMzAzNzM6MSwzMDc0NToxLDMwOTYwOjEsMzEyNjI6MSwzMTU1NzoxLDMxODM3OjEsMzIxNzY6MSwzMjc0ODoxLDMzMTIwOjEsMzMyMjE6MSwzMzM2ODoxLDMzNTUzOjEsMzQ3NTg6MSwzNTA3MzoxLDM1MTk4OjEsMzU2MzA6MSwzNjIyMjoxLDM2MzU2OjEsMzY1NDU6MSwzNzM5MDoxLDM3NTEzOjEsMzc3NDY6MSwzNzc2NzoxLDM4MjYyOjEsMzg4Njg6MSwzOTc4NjoxLDQwMjIwOjEsNDA4MzU6MSw0MDg2NzoxLDQwOTE0OjEsNDE1ODg6MSw0MzQ0MToxLDQzNjQ0OjEsNDQyNTM6MSw0NTM2ODoxLDQ1OTQ1OjEsNDYwMzQ6MSw0NjU5MToxLDQ3MDIxOjEsNDc1NTE6MSw0NzU3OToxLDQ3NjMyOjEsNDg4NjQ6MSw0OTUzNjoxLDQ5NTg4OjEsNTAwMzU6MSw1MDIyMToxLDUwMzI1OjEsNTA2MjI6MSw1MDgwMDoxLDUxMDMwOjEsNTEyMTM6MSw1MTMwOToxLDUxMzE1OjEsNTE2ODI6MSw1MTg4MDoxLDUyMDY1OjEsNTIxNzg6MSw1MjM5NjoxLDUyNjgwOjEsNTMzMjk6MSw1MzUyMToxLDUzNzEzOjEsNTQwOTM6MSw1NDMxMDoxLDU1MDExOjEsNTYyMTM6MSw1NjI1MjoxLDU3MzAwOjEsNTc1MDQ6MSw1ODM4NDoxLDU4OTMzOjEsNTkzNTA6MSw1OTQzNzoxLDU5OTQxOjEsNjAwNjI6MSw2MTgyMToxLDYyNjMwOjEsNjI3OTA6MSw2MjgwNjoxLDY0MTk1OjEsNjQ2NDM6MSw2NDY3NDoxLDY1NTI4OjEsNjU4NTY6MSw2NjI3MDoxLDY2NDczOjEsNjcyMTI6MSw2NzU0MzoxLDY3Nzk5OjEsNjg5NDI6MSw2ODk2NDoxLDY5ODA5OjEsNzA2NTY6MSw3MDgxNToxLDcxNDE0OjEsNzE0ODI6MSw3MTkwMToxLDcyMjQ5OjEsNzI1MTI6MSw3MjY2NjoxLDcyNjgwOjEsNzI5MDI6MSw3MzQyNToxLDczNTUxOjEsNzQwMTE6MSw3NDIzMzoxLDc0MzgxOjEsNzQ0MjI6MSw3NDYzNjoxLDc0ODMwOjEsNzYzMjk6MSw3NjkxMjoxLDc4MjM3OjEsNzg0MDQ6MSw3ODQ3MToxLDc4NjUyOjEsNzg4OTk6MSw4MDczMToxLDgwNzgyOjEsODEwMDE6MSw4MTA3MjoxLDgxNTI5OjEsODE5MDM6MSw4MjI3MToxLDgyNTg2OjEsODM0ODg6MSw4MzUyOToxLDg0OTQ4OjEsODY0MjM6MSw4NzQ3NDoxLDg3NzQwOjEsODgzODU6MSw4ODY0MToxLDg5MDQ0OjEsODkxOTU6MSw4OTU1ODoxLDkwOTYwOjEsOTEyMDA6MSw5MTY3ODoxLDkzNDE2OjEsOTM0MjE6MSw5NDA1NDoxLDk0OTQ4OjEsOTUxNTg6MSw5NjU4NzoxLDk3NjYwOjEsOTc3OTc6MSw5ODA4NDoxLDk5NTkzOjEsOTk5MDg6MX1bY10mJmQucHVzaChhW2NdPWUoYykudGhlbigoKCk9PnthW2NdPTB9KSwoZT0+e3Rocm93IGRlbGV0ZSBhW2NdLGV9KSkpfX19KSgpLG4uaTE4bmV4dD0oZSxhPXt9LGMsZD1uLmcubGFuZ3VhZ2UpPT57aWYobnVsbD09PWUpewppZihBcnJheS5pc0FycmF5KGMpKXJldHVybiBjW3ZvaWQgMD09PWEuY291bnQ/MDpuLl9wbHVyYWxbZF0oYS5jb3VudCldLnJlcGxhY2UoL3soXHcrKX0vZywoKGUsYyk9PnZvaWQgMCE9PShhLnJlcGxhY2V8fGEpW2NdPyhhLnJlcGxhY2V8fGEpW2NdOmUpKTtpZigib2JqZWN0Ij09dHlwZW9mIGMpcmV0dXJuIGNbbi5nLmxhbmd1YWdlXT9uLmkxOG5leHQobnVsbCxhLGNbbi5nLmxhbmd1YWdlXSk6bi5pMThuZXh0KG51bGwsYSxjLmVuLCJlbiIpfWVsc2UgaWYoYyYmZSl7Y29uc3QgZD1gJHtlfSR7YS5jb250ZXh0P2BfJHthLmNvbnRleHR9YDoiIn1gO2lmKGNbZF0pcmV0dXJuIG4uaTE4bmV4dChudWxsLGEsY1tkXSl9cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKToic3RyaW5nIiE9dHlwZW9mIGU/IiI6ZX0sKCgpPT57bi5iPSJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJmRvY3VtZW50LmJhc2VVUkl8fHNlbGYubG9jYXRpb24uaHJlZjt2YXIgZT17MjExODowLDg0MzA2OjAsNDY5MDc6MCw5NDIzMjowLDMyODE2OjAsMTcwODc6MCw0MzMyNTowLDM5MDU6MCwzNTc5NDowLDE1OTMyOjAsNTQ2ODE6MCw1MTUwODowLDQ5NTE4OjAsMzI2MzI6MCwxNTYzNDowLDc1MzA0OjAsNTIwOTU6MCwzODAwMjowLDQ0MDMxOjAsNDM3OTI6MCw3MDM2NDowLDk0ODg6MCwzNzg2NzowLDYyNjgxOjAsMzAyMDA6MCwzMTM5NjowfTtuLmYuaj0oYSxjKT0+e3ZhciBkPW4ubyhlLGEpP2VbYV06dm9pZCAwO2lmKDAhPT1kKWlmKGQpYy5wdXNoKGRbMl0pO2Vsc2UgaWYoL14oMSgwMyg2Nnw4NSl8MSgwMDh8MjE4fDI1N3w0NjF8NDg5fDcyNSl8MigwNTF8Mzg1fDU2NSl8NSgwOXw1MjZ8NjM0fDkzMil8OCgxNjJ8NDAwfDQ3Mil8OSg1KDEzfDk1fDk4KXw3ODd8ODMzKXwoNDF8NzYpOTN8MzQ5Mnw0NjI1fDY0MjF8Njc4fDcwODcpfDIoMChbMjldNzF8MzU0fDk4Nil8NSg2NDd8Njk4fDgwOSl8Nyg1MTd8NTQ5fDczNil8OSgxMzN8Mjk2fDMyN3w1MzZ8OTQzKXwxMTh8MzMxfDM2MjR8NDQwOHw0NTgxfDY1OTJ8ODAxN3w4NDEzKXwzKDAoMjAwfDM3M3w3NDV8OTYwKXwxKDI2MnwzOTZ8NTU3fDgzNyl8MigxNzZ8NjMyfDc0OHw4MTYpfDMoMTIwfDIyMXwyM3wzNjh8NTUzKXw1KDA3M3wxOTh8NjMwfDc5NCl8NigyMjJ8MzU2fDU0NSl8NyhbNzhdNjd8MzkwfDUxM3w3NDYpfDgoMDAyfDI2Mnw4NjgpfDQ3NTh8OTA1fDk3ODYpfDQoMCgyMjB8NDJ8ODM1fDg2N3w5MTQpfDMoMzI1fDQ0MXw2NDR8NzkyKXw0KDAzMXwyNTN8NzcpfDYoMDM0fDU5MXw5MDcpfDcoMDIxfDU1MXw1Nzl8NjMyKXw5KDUoMTh8MzZ8ODgpfDI5fDY5KXwxNTg4fDUzNjh8NTk0NXw4ODY0KXw1KDAoMDM1fDIyMXwzMjV8NjIyfDgwMCl8MSgwMzB8MjEzfDMwOXwzMTV8NTA4fDY4Mnw4NHw4ODApfDIoMDY1fDA5NXwxNzh8Mzk2fDY4MCl8MygzMjl8NTIxfDcxMyl8NCgwOTN8MzEwfDY4MSl8NigyMTN8MjUyfDg5KXw5KDM1MHw0Mzd8OTQxKXw1MDExfDczMDB8NzUwNHw4Mzg0fDg5MzMpfDYoMig2MzB8NjgxfDc5MHw4MDYpfDQoNih8NDN8NzQpfCh8MTl8NCk1KXw1KDUyOHw3fDgzfDg1Nil8NigwNXwyNzB8NDczKXw3KDIxMnw1NDN8Nzk5KXw4OSg0Mnw2NCl8MDA2MnwwODJ8MTgyMXw5ODA5KXw3KDAoMzY0fDY1Nnw4MTUpfDEoNDE0fDQ4Mnw2M3w5MDEpfDIoMjQ5fDUxMnw2NjZ8NjgwfDkwMil8Myg0MjV8NTUxfDg3KXw0KDAxMXwyMzN8MzgxfDQyMnw0NXw2MzZ8ODMwKXw2KDMyOXw2NXw5MTIpfDgoKHw4KTk5fDIzN3w0MDR8NDcxfDY1Mil8NTMwNCl8OCgwNygzMXw4Mil8MSgwMDF8MDcyfDUyOXw5MDMpfDQoMDh8MzA2fDk0OCl8OSgwNDR8MTk1fDU1OCl8MjI3MXwyNTg2fDM0ODh8MzUyOXw1Nzl8NjQyM3w3NDc0fDc3NDB8ODM4NXw4NjQxKXw5KDEoMjAwfDQwfDY3OCl8MzQoMTZ8MjEpfDQoMDU0fDIzMnw4OHw5NDgpfDcoNDR8NjYwfDc5Nyl8MDAwfDA5NjB8NTA0fDUxNTh8NjU4N3w4MDg0fDk1OTN8OTkwOCkpJC8udGVzdChhKSllW2FdPTA7ZWxzZXt2YXIgZj1uZXcgUHJvbWlzZSgoKGMsZik9PmQ9ZVthXT1bYyxmXSkpO2MucHVzaChkWzJdPWYpO3ZhciBiPW4ucCtuLnUoYSksdD1uZXcgRXJyb3I7bi5sKGIsKGM9PntpZihuLm8oZSxhKSYmKDAhPT0oZD1lW2FdKSYmKGVbYV09dm9pZCAwKSxkKSl7dmFyIGY9YyYmKCJsb2FkIj09PWMudHlwZT8ibWlzc2luZyI6Yy50eXBlKSxiPWMmJmMudGFyZ2V0JiZjLnRhcmdldC5zcmM7dC5tZXNzYWdlPSJMb2FkaW5nIGNodW5rICIrYSsiIGZhaWxlZC5cbigiK2YrIjogIitiKyIpIix0Lm5hbWU9IkNodW5rTG9hZEVycm9yIix0LnR5cGU9Zix0LnJlcXVlc3Q9YixkWzFdKHQpfX0pLCJjaHVuay0iK2EsYSl9fSxuLkYuaj1hPT57CmlmKCEobi5vKGUsYSkmJnZvaWQgMCE9PWVbYV18fC9eKDEoMDMoNjZ8ODUpfDEoMDA4fDIxOHwyNTd8NDYxfDQ4OXw3MjUpfDIoMDUxfDM4NXw1NjUpfDUoMDl8NTI2fDYzNHw5MzIpfDgoMTYyfDQwMHw0NzIpfDkoNSgxM3w5NXw5OCl8Nzg3fDgzMyl8KDQxfDc2KTkzfDM0OTJ8NDYyNXw2NDIxfDY3OHw3MDg3KXwyKDAoWzI5XTcxfDM1NHw5ODYpfDUoNjQ3fDY5OHw4MDkpfDcoNTE3fDU0OXw3MzYpfDkoMTMzfDI5NnwzMjd8NTM2fDk0Myl8MTE4fDMzMXwzNjI0fDQ0MDh8NDU4MXw2NTkyfDgwMTd8ODQxMyl8MygwKDIwMHwzNzN8NzQ1fDk2MCl8MSgyNjJ8Mzk2fDU1N3w4MzcpfDIoMTc2fDYzMnw3NDh8ODE2KXwzKDEyMHwyMjF8MjN8MzY4fDU1Myl8NSgwNzN8MTk4fDYzMHw3OTQpfDYoMjIyfDM1Nnw1NDUpfDcoWzc4XTY3fDM5MHw1MTN8NzQ2KXw4KDAwMnwyNjJ8ODY4KXw0NzU4fDkwNXw5Nzg2KXw0KDAoMjIwfDQyfDgzNXw4Njd8OTE0KXwzKDMyNXw0NDF8NjQ0fDc5Mil8NCgwMzF8MjUzfDc3KXw2KDAzNHw1OTF8OTA3KXw3KDAyMXw1NTF8NTc5fDYzMil8OSg1KDE4fDM2fDg4KXwyOXw2OSl8MTU4OHw1MzY4fDU5NDV8ODg2NCl8NSgwKDAzNXwyMjF8MzI1fDYyMnw4MDApfDEoMDMwfDIxM3wzMDl8MzE1fDUwOHw2ODJ8ODR8ODgwKXwyKDA2NXwwOTV8MTc4fDM5Nnw2ODApfDMoMzI5fDUyMXw3MTMpfDQoMDkzfDMxMHw2ODEpfDYoMjEzfDI1Mnw4OSl8OSgzNTB8NDM3fDk0MSl8NTAxMXw3MzAwfDc1MDR8ODM4NHw4OTMzKXw2KDIoNjMwfDY4MXw3OTB8ODA2KXw0KDYofDQzfDc0KXwofDE5fDQpNSl8NSg1Mjh8N3w4M3w4NTYpfDYoMDV8MjcwfDQ3Myl8NygyMTJ8NTQzfDc5OSl8ODkoNDJ8NjQpfDAwNjJ8MDgyfDE4MjF8OTgwOSl8NygwKDM2NHw2NTZ8ODE1KXwxKDQxNHw0ODJ8NjN8OTAxKXwyKDI0OXw1MTJ8NjY2fDY4MHw5MDIpfDMoNDI1fDU1MXw4Nyl8NCgwMTF8MjMzfDM4MXw0MjJ8NDV8NjM2fDgzMCl8NigzMjl8NjV8OTEyKXw4KCh8OCk5OXwyMzd8NDA0fDQ3MXw2NTIpfDUzMDQpfDgoMDcoMzF8ODIpfDEoMDAxfDA3Mnw1Mjl8OTAzKXw0KDA4fDMwNnw5NDgpfDkoMDQ0fDE5NXw1NTgpfDIyNzF8MjU4NnwzNDg4fDM1Mjl8NTc5fDY0MjN8NzQ3NHw3NzQwfDgzODV8ODY0MSl8OSgxKDIwMHw0MHw2NzgpfDM0KDE2fDIxKXw0KDA1NHwyMzJ8ODh8OTQ4KXw3KDQ0fDY2MHw3OTcpfDAwMHwwOTYwfDUwNHw1MTU4fDY1ODd8ODA4NHw5NTkzfDk5MDgpKSQvLnRlc3QoYSkpKXtlW2FdPW51bGw7dmFyIGM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2MuY2hhcnNldD0idXRmLTgiLGMuY3Jvc3NPcmlnaW49ImFub255bW91cyIsbi5uYyYmYy5zZXRBdHRyaWJ1dGUoIm5vbmNlIixuLm5jKSxjLnJlbD0icHJlZmV0Y2giLGMuYXM9InNjcmlwdCIsYy5ocmVmPW4ucCtuLnUoYSksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjKX19LG4uTy5qPWE9PjA9PT1lW2FdO3ZhciBhPShhLGMpPT57dmFyIGQsZixbYix0LHJdPWMsbz0wO2lmKGIuc29tZSgoYT0+MCE9PWVbYV0pKSl7Zm9yKGQgaW4gdCluLm8odCxkKSYmKG4ubVtkXT10W2RdKTtpZihyKXZhciBpPXIobil9Zm9yKGEmJmEoYyk7bzxiLmxlbmd0aDtvKyspZj1iW29dLG4ubyhlLGYpJiZlW2ZdJiZlW2ZdWzBdKCksZVtmXT0wO3JldHVybiBuLk8oaSl9LGM9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlldz1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3fHxbXTtjLmZvckVhY2goYS5iaW5kKG51bGwsMCkpLGMucHVzaD1hLmJpbmQobnVsbCxjLnB1c2guYmluZChjKSl9KSgpLG4ucD1uLmcmJm4uZy5XRUJQQUNLX1BVQkxJQ19QQVRIfHxuLnAsYj17OTI5Njg6Wzg0NjkzLDg4OTk3LDMwNjk5LDQ2MjE3LDY2OTMzLDcxMzE5XX0sbi5mLnByZWZldGNoPShlLGEpPT5Qcm9taXNlLmFsbChhKS50aGVuKCgoKT0+e3ZhciBhPWJbZV07QXJyYXkuaXNBcnJheShhKSYmYS5tYXAobi5FKX0pKX0pKCk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.28","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.849Z","timestamp":1785154590849,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sat, 27 Dec 2025 00:00:00 GMT","end":"Sun, 24 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"0A:93:73:BB:95:EC:D1:52:11:5B:CC:2D:92:43:D4:FD:5A:2E:BE:A4","sha256":"70:E8:96:A5:F6:09:13:92:CB:0D:3F:A5:37:C4:A1:0D:4A:F7:52:C0:C1:B6:21:DB:D5:92:33:3F:B5:7D:EE:0F"}}},"request":{"raw":"GET /sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com HTTP/1.1\r\nHost: widget-sheriff.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\nx-amz-cf-pop: ARN53-P4\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 4c304736e6087956cb00821d710060a4.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\ncross-origin-resource-policy: same-site\r\naccess-control-max-age: 86400\r\nvary: Origin\r\nx-cache: Hit from cloudfront\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: G6SvAk-fyTjq1P6rFnKKoI_Mi7VqsXE9P857m-xRc4c2g5pvECpn3Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":0,"size_decoded":554,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70644.448743def325feb61967.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.080Z","timestamp":1785154591080,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/70644.448743def325feb61967.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a10225d-a54f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 22 May 2026 09:31:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/22/2026 10:44:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: cad2c614c500b960bc8837bcef64fb93\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":42319,"size_decoded":16719,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3071)","md5":"8cde28c2b9d157a818e87a14278c7a00","sha1":"1de831d7926ffcdfe3bdd82419e6225185d37e34","sha256":"f5576d28408b822a04da2e824feb2d936edf1e1959b29e0849e709c4ff1beba7","sha512":"dfeb6f084e4ee784b4a74a0525c09ed8d481320b0708417429758d5d393b7f6eec9e153c60a63025903dc145cd998cce1676335c44ba0e9011bf068fb3dd2e24","ssdeep":"384:57bUjPiPk+mozZ2DZNFAw0wg7LEJ8yBzjkjWQIfQ/6URF2a6nUFlUTr1H6ssDLv5:57gjPi8+hiTRXbfQOXXUFwhHnecsfHp","tlshash":"ae13f5c936d6b02452b73475007f710bf23eaea1284e8450d117e8d87cb5a9fa27be6d","first_seen":"2026-05-23T04:38:21.326763Z","last_seen":"2026-07-27T14:17:30.797308Z","times_seen":850,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3MDY0NF0sezg3MDY0NChlLG4sdCl7InVzZSBzdHJpY3QiO3QuZChuLHtkaXNhYmxlQWN0aXZpdHlUcmFja2luZzooKT0+eGUsZGlzYWJsZUFub255bW91c1RyYWNraW5nOigpPT5DZSxkaXNjYXJkQnJhY2U6KCk9PmtlLGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazooKT0+U2UsZW5hYmxlQW5vbnltb3VzVHJhY2tpbmc6KCk9Pk9lLG5ld1RyYWNrZXI6KCk9PkVlLHNldFVzZXJJZDooKT0+VGUsdHJhY2tQYWdlVmlldzooKT0+SWUsdHJhY2tTZWxmRGVzY3JpYmluZ0V2ZW50OigpPT5BZX0pO3ZhciByPWZ1bmN0aW9uKCl7cmV0dXJuIHI9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oZSl7Zm9yKHZhciBuLHQ9MSxyPWFyZ3VtZW50cy5sZW5ndGg7dDxyO3QrKylmb3IodmFyIG8gaW4gbj1hcmd1bWVudHNbdF0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sbykmJihlW29dPW5bb10pO3JldHVybiBlfSxyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07T2JqZWN0LmNyZWF0ZTtmdW5jdGlvbiBvKGUsbix0KXtpZih0fHwyPT09YXJndW1lbnRzLmxlbmd0aClmb3IodmFyIHIsbz0wLGk9bi5sZW5ndGg7bzxpO28rKykhciYmbyBpbiBufHwocnx8KHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobiwwLG8pKSxyW29dPW5bb10pO3JldHVybiBlLmNvbmNhdChyfHxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuKSl9T2JqZWN0LmNyZWF0ZTt2YXIgaT10KDUzNzIwNCk7ZnVuY3Rpb24gYShlKXtpZighZSlyZXR1cm4gZTtzd2l0Y2goNC1lLmxlbmd0aCU0KXtjYXNlIDI6ZSs9Ij09IjticmVhaztjYXNlIDM6ZSs9Ij0ifXJldHVybiBmdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGEsdT1mdW5jdGlvbihlKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGUuc3BsaXQoIiIpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIiUiKygiMDAiK2UuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikpLnNsaWNlKC0yKX0pKS5qb2luKCIiKSl9LHM9MCxsPTAsZj0iIixkPVtdO2lmKCFlKXJldHVybiBlO2UrPSIiO2Rve249KGE9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpPDwxOHxjLmluZGV4T2YoZS5jaGFyQXQocysrKSk8PDEyfChvPWMuaW5kZXhPZihlLmNoYXJBdChzKyspKSk8PDZ8KGk9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpKSk+PjE2JjI1NSx0PWE+PjgmMjU1LHI9MjU1JmEsZFtsKytdPTY0PT09bz9TdHJpbmcuZnJvbUNoYXJDb2RlKG4pOjY0PT09aT9TdHJpbmcuZnJvbUNoYXJDb2RlKG4sdCk6U3RyaW5nLmZyb21DaGFyQ29kZShuLHQscil9d2hpbGUoczxlLmxlbmd0aCk7cmV0dXJuIGY9ZC5qb2luKCIiKSx1KGYucmVwbGFjZSgvXDArJC8sIiIpKX0oZS5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKSl9ZnVuY3Rpb24gdShlKXtpZighZSlyZXR1cm4gZTt2YXIgbj1mdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGE9MCx1PTAscz1bXTtpZighZSlyZXR1cm4gZTtlPXVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChlKSk7ZG97bj0oaT1lLmNoYXJDb2RlQXQoYSsrKTw8MTZ8ZS5jaGFyQ29kZUF0KGErKyk8PDh8ZS5jaGFyQ29kZUF0KGErKykpPj4xOCY2Myx0PWk+PjEyJjYzLHI9aT4+NiY2MyxvPTYzJmksc1t1KytdPWMuY2hhckF0KG4pK2MuY2hhckF0KHQpK2MuY2hhckF0KHIpK2MuY2hhckF0KG8pfXdoaWxlKGE8ZS5sZW5ndGgpO3ZhciBsPXMuam9pbigiIiksZj1lLmxlbmd0aCUzO3JldHVybihmP2wuc2xpY2UoMCxmLTMpOmwpKyI9PT0iLnNsaWNlKGZ8fDMpfShlKTtyZXR1cm4gbi5yZXBsYWNlKC89L2csIiIpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIil9dmFyIGM9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89IjtmdW5jdGlvbiBzKCl7dmFyIGUsbj17fSx0PVtdLHI9W10sbz1bXSxpPWZ1bmN0aW9uKGUsdCl7bnVsbCE9dCYmIiIhPT10JiYobltlXT10KX07cmV0dXJue2FkZDppLGFkZERpY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikmJmkobixlW25dKX0sYWRkSnNvbjpmdW5jdGlvbihlLG4sbyl7aWYobyYmZihvKSl7dmFyIGk9e2tleUlmRW5jb2RlZDplLGtleUlmTm90RW5jb2RlZDpuLGpzb246b307ci5wdXNoKGkpLHQucHVzaChpKX19LGFkZENvbnRleHRFbnRpdHk6ZnVuY3Rpb24oZSl7by5wdXNoKGUpfSxnZXRQYXlsb2FkOmZ1bmN0aW9uKCl7cmV0dXJuIG59LGdldEpzb246ZnVuY3Rpb24oKXtyZXR1cm4gdH0sd2l0aEpzb25Qcm9jZXNzb3I6ZnVuY3Rpb24obil7ZT1ufSxidWlsZDpmdW5jdGlvbigpe3JldHVybiBudWxsPT1lfHxlKHRoaXMscixvKSxufX19ZnVuY3Rpb24gbChlKXtyZXR1cm4gZnVuY3Rpb24obix0LHIpe2Zvcih2YXIgaT1mdW5jdGlvbih0LHIsbyl7dmFyIGk9SlNPTi5zdHJpbmdpZnkodCk7ZT9uLmFkZChyLHUoaSkpOm4uYWRkKG8saSl9LGM9ZnVuY3Rpb24odCxyKXt2YXIgbz10fHxmdW5jdGlvbigpe3ZhciB0PW4uZ2V0UGF5bG9hZCgpO2lmKGU/dC5jeDp0LmNvKXJldHVybiBKU09OLnBhcnNlKGU/YSh0LmN4KTp0LmNvKX0oKTtyZXR1cm4gbz9vLmRhdGE9by5kYXRhLmNvbmNhdChyLmRhdGEpOm89cixvfSxzPXZvaWQgMCxsPTAsZj10O2w8Zi5sZW5ndGg7bCsrKXt2YXIgZD1mW2xdOyJjeCI9PT1kLmtleUlmRW5jb2RlZD9zPWMocyxkLmpzb24pOmkoZC5qc29uLGQua2V5SWZFbmNvZGVkLGQua2V5SWZOb3RFbmNvZGVkKX0odC5sZW5ndGg9MCxyLmxlbmd0aCkmJihzPWMocyx7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIixkYXRhOm8oW10sciwhMCl9KSxyLmxlbmd0aD0wKTtzJiZpKHMsImN4IiwiY28iKX19ZnVuY3Rpb24gZihlKXtpZighZChlKSlyZXR1cm4hMQo7Zm9yKHZhciBuIGluIGUpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbnVsbCE9ZSYmKGUuY29uc3RydWN0b3I9PT17fS5jb25zdHJ1Y3Rvcnx8ZS5jb25zdHJ1Y3Rvcj09PVtdLmNvbnN0cnVjdG9yKX12YXIgdixnPSJTbm93cGxvdzogIjshZnVuY3Rpb24oZSl7ZVtlLm5vbmU9MF09Im5vbmUiLGVbZS5lcnJvcj0xXT0iZXJyb3IiLGVbZS53YXJuPTJdPSJ3YXJuIixlW2UuZGVidWc9M109ImRlYnVnIixlW2UuaW5mbz00XT0iaW5mbyJ9KHZ8fCh2PXt9KSk7dmFyIHA9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9di53YXJuKTtyZXR1cm57c2V0TG9nTGV2ZWw6ZnVuY3Rpb24obil7ZT12W25dP246di53YXJufSx3YXJuOmZ1bmN0aW9uKG4sdCl7Zm9yKHZhciByPVtdLGk9MjtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKXJbaS0yXT1hcmd1bWVudHNbaV07aWYoZT49di53YXJuJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbjt0P2NvbnNvbGUud2Fybi5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS53YXJuLmFwcGx5KGNvbnNvbGUsbyhbYV0sciwhMSkpfX0sZXJyb3I6ZnVuY3Rpb24obix0KXtmb3IodmFyIHI9W10saT0yO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTtpZihlPj12LmVycm9yJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbisiXG4iO3Q/Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2FdLHIsITEpKX19LGRlYnVnOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuZGVidWcmJiJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS5kZWJ1Zy5hcHBseShjb25zb2xlLG8oW2crbl0sdCwhMSkpfSxpbmZvOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuaW5mbyYmInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLmluZm8uYXBwbHkoY29uc29sZSxvKFtnK25dLHQsITEpKX19fSgpO2Z1bmN0aW9uIG0oKXt2YXIgZT1bXSxuPVtdLHQ9ZnVuY3Rpb24odCl7dmFyIHI9ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPWUuZ2V0SnNvbigpLHQ9MCxyPW47dDxyLmxlbmd0aDt0Kyspe3ZhciBvPXJbdF07aWYoInVlX3B4Ij09PW8ua2V5SWZFbmNvZGVkJiYib2JqZWN0Ij09dHlwZW9mIG8uanNvbi5kYXRhKXt2YXIgaT1vLmpzb24uZGF0YS5zY2hlbWE7aWYoInN0cmluZyI9PXR5cGVvZiBpKXJldHVybiBpfX1yZXR1cm4iIn0odCksbz1mdW5jdGlvbihlKXt2YXIgbj1lLmdldFBheWxvYWQoKS5lO3JldHVybiJzdHJpbmciPT10eXBlb2Ygbj9uOiIifSh0KSxpPVtdLGE9RShlLHQsbyxyKTtpLnB1c2guYXBwbHkoaSxhKTt2YXIgdT1mdW5jdGlvbihlLG4sdCxyKXt2YXIgbyxpPVAoZSksYT1mdW5jdGlvbihlKXt2YXIgbz1mdW5jdGlvbihlLG4sdCxyKXtpZihUKGUpKXt2YXIgbz1lWzBdLGk9ITE7dHJ5e2k9byh7ZXZlbnQ6bi5nZXRQYXlsb2FkKCksZXZlbnRUeXBlOnQsZXZlbnRTY2hlbWE6cn0pfWNhdGNoKGUpe2k9ITF9aWYoITA9PT1pKXJldHVybiBFKGVbMV0sbix0LHIpfWVsc2UgaWYoSShlKSYmZnVuY3Rpb24oZSxuKXt2YXIgdD0wLHI9MCxvPWUuYWNjZXB0O0FycmF5LmlzQXJyYXkobyk/ZS5hY2NlcHQuc29tZSgoZnVuY3Rpb24oZSl7cmV0dXJuIEMoZSxuKX0pKSYmcisrOiJzdHJpbmciPT10eXBlb2YgbyYmQyhvLG4pJiZyKys7dmFyIGk9ZS5yZWplY3Q7QXJyYXkuaXNBcnJheShpKT9lLnJlamVjdC5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gQyhlLG4pfSkpJiZ0Kys6InN0cmluZyI9PXR5cGVvZiBpJiZDKGksbikmJnQrKztpZihyPjAmJjA9PT10KXJldHVybiEwO2lmKDA9PT1yJiZ0PjApcmV0dXJuITE7cmV0dXJuITF9KGVbMF0scikpcmV0dXJuIEUoZVsxXSxuLHQscik7cmV0dXJuW119KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30sdT1pLm1hcChhKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8sdS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9KG4sdCxvLHIpO3JldHVybiBpLnB1c2guYXBwbHkoaSx1KSxpfTtyZXR1cm57Z2V0R2xvYmFsUHJpbWl0aXZlczpmdW5jdGlvbigpe3JldHVybiBlfSxnZXRDb25kaXRpb25hbFByb3ZpZGVyczpmdW5jdGlvbigpe3JldHVybiBufSxhZGRHbG9iYWxDb250ZXh0czpmdW5jdGlvbih0KXtmb3IodmFyIHI9W10sbz1bXSxpPTAsYT10O2k8YS5sZW5ndGg7aSsrKXt2YXIgdT1hW2ldO0EodSk/ci5wdXNoKHUpOngodSkmJm8ucHVzaCh1KX1lPWUuY29uY2F0KG8pLG49bi5jb25jYXQocil9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXtuPVtdLGU9W119LHJlbW92ZUdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1mdW5jdGlvbih0KXtBKHQpP249bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeShlKSE9PUpTT04uc3RyaW5naWZ5KHQpfSkpOngodCkmJihlPWUuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSkhPT1KU09OLnN0cmluZ2lmeSh0KX0pKSl9LG89MCxpPXQ7bzxpLmxlbmd0aDtvKyspe3IoaVtvXSl9fSxnZXRBcHBsaWNhYmxlQ29udGV4dHM6ZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX1mdW5jdGlvbiBoKGUpe3ZhciBuPWUuc3BsaXQoIi4iKTtyZXR1cm4hIShuJiZuLmxlbmd0aD4xKSYmZnVuY3Rpb24oZSl7aWYoIioiPT09ZVswXXx8IioiPT09ZVsxXSlyZXR1cm4hMTtpZihlLnNsaWNlKDIpLmxlbmd0aD4wKXtmb3IodmFyIG49ITEsdD0wLHI9ZS5zbGljZSgyKTt0PHIubGVuZ3RoO3QrKylpZigiKiI9PT1yW3RdKW49ITA7ZWxzZSBpZihuKXJldHVybiExO3JldHVybiEwfQpyZXR1cm4gMj09ZS5sZW5ndGh9KG4pfWZ1bmN0aW9uIHkoZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KCg/Oig/OlthLXpBLVowLTktX10rfFxcKikuKSsoPzpbYS16QS1aMC05LV9dK3xcXCopKS8oW2EtekEtWjAtOS1fLl0rfFxcKikvanNvbnNjaGVtYS8oWzEtOV1bMC05XSp8XFwqKS0oMHxbMS05XVswLTldKnxcXCopLSgwfFsxLTldWzAtOV0qfFxcKikkIikuZXhlYyhlKTtpZihudWxsIT09biYmaChuWzFdKSlyZXR1cm4gbi5zbGljZSgxLDYpfWZ1bmN0aW9uIHcoZSl7dmFyIG49eShlKTtpZihuKXt2YXIgdD1uWzBdO3JldHVybiA1PT09bi5sZW5ndGgmJmgodCl9cmV0dXJuITF9ZnVuY3Rpb24gYihlKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSkmJmUuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZX0pKX0oZSk/ZS5ldmVyeSgoZnVuY3Rpb24oZSl7cmV0dXJuIHcoZSl9KSk6InN0cmluZyI9PXR5cGVvZiBlJiZ3KGUpfWZ1bmN0aW9uIGsoZSl7dmFyIG49ZTtyZXR1cm4hIShmKG4pJiYic2NoZW1hImluIG4mJiJkYXRhImluIG4pJiYoInN0cmluZyI9PXR5cGVvZiBuLnNjaGVtYSYmIm9iamVjdCI9PXR5cGVvZiBuLmRhdGEpfWZ1bmN0aW9uIFMoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUubGVuZ3RoPD0xfWZ1bmN0aW9uIHgoZSl7cmV0dXJuIFMoZSl8fGsoZSl9ZnVuY3Rpb24gVChlKXtyZXR1cm4hKCFBcnJheS5pc0FycmF5KGUpfHwyIT09ZS5sZW5ndGgpJiYoQXJyYXkuaXNBcnJheShlWzFdKT9TKGVbMF0pJiZlWzFdLmV2ZXJ5KHgpOlMoZVswXSkmJngoZVsxXSkpfWZ1bmN0aW9uIEkoZSl7cmV0dXJuISghQXJyYXkuaXNBcnJheShlKXx8MiE9PWUubGVuZ3RoKSYmKCEhZnVuY3Rpb24oZSl7dmFyIG49ZSx0PTA7aWYobnVsbCE9ZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYhQXJyYXkuaXNBcnJheShlKSl7aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sImFjY2VwdCIpKXtpZighYihuLmFjY2VwdCkpcmV0dXJuITE7dCs9MX1pZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobiwicmVqZWN0Iikpe2lmKCFiKG4ucmVqZWN0KSlyZXR1cm4hMTt0Kz0xfXJldHVybiB0PjAmJnQ8PTJ9cmV0dXJuITF9KGVbMF0pJiYoQXJyYXkuaXNBcnJheShlWzFdKT9lWzFdLmV2ZXJ5KHgpOngoZVsxXSkpKX1mdW5jdGlvbiBBKGUpe3JldHVybiBUKGUpfHxJKGUpfWZ1bmN0aW9uIEMoZSxuKXtpZighdyhlKSlyZXR1cm4hMTt2YXIgdD15KGUpLHI9ZnVuY3Rpb24oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KFthLXpBLVowLTktXy5dKykvKFthLXpBLVowLTktX10rKS9qc29uc2NoZW1hLyhbMS05XVswLTldKiktKDB8WzEtOV1bMC05XSopLSgwfFsxLTldWzAtOV0qKSQiKS5leGVjKGUpO2lmKG51bGwhPT1uKXJldHVybiBuLnNsaWNlKDEsNil9KG4pO2lmKHQmJnIpe2lmKCFmdW5jdGlvbihlLG4pe3ZhciB0PW4uc3BsaXQoIi4iKSxyPWUuc3BsaXQoIi4iKTtpZih0JiZyKXtpZih0Lmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbz0wO288ci5sZW5ndGg7bysrKWlmKCFPKHRbb10scltvXSkpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHRbMF0sclswXSkpcmV0dXJuITE7Zm9yKHZhciBvPTE7bzw1O28rKylpZighTyh0W29dLHJbb10pKXJldHVybiExO3JldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIE8oZSxuKXtyZXR1cm4gZSYmbiYmIioiPT09ZXx8ZT09PW59ZnVuY3Rpb24gUChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOkFycmF5Lm9mKGUpfWZ1bmN0aW9uIEUoZSxuLHQscil7dmFyIG8saT1QKGUpLm1hcCgoZnVuY3Rpb24oZSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7aWYoayhlKSlyZXR1cm5bZV07aWYoUyhlKSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7dmFyIG89dm9pZCAwO3RyeXtyZXR1cm4gbz1lKHtldmVudDpuLmdldFBheWxvYWQoKSxldmVudFR5cGU6dCxldmVudFNjaGVtYTpyfSksQXJyYXkuaXNBcnJheShvKSYmby5ldmVyeShrKXx8ayhvKT9vOnZvaWQgMH1jYXRjaChlKXtvPXZvaWQgMH1yZXR1cm4gb30oZSxuLHQscik7aWYoayhvKSlyZXR1cm5bb107aWYoQXJyYXkuaXNBcnJheShvKSlyZXR1cm4gb31yZXR1cm59KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30pKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8saS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9ZnVuY3Rpb24gTChlKXt2b2lkIDA9PT1lJiYoZT17fSk7dmFyIG49ZS5iYXNlNjQsdD1lLmNvcmVQbHVnaW5zLGE9ZS5jYWxsYmFjayx1PW51bGwhPXQ/dDpbXSxjPWZ1bmN0aW9uKGUsbix0KXt2YXIgcj1mdW5jdGlvbihlKXtyZXR1cm57YWRkUGx1Z2luQ29udGV4dHM6ZnVuY3Rpb24obil7dmFyIHQ9bj9vKFtdLG4sITApOltdO3JldHVybiBlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmNvbnRleHRzJiZ0LnB1c2guYXBwbHkodCxlLmNvbnRleHRzKCkpfWNhdGNoKGUpe3AuZXJyb3IoIkVycm9yIGFkZGluZyBwbHVnaW4gY29udGV4dHMiLGUpfX0pKSx0fX19KG4pLGE9bSgpLHU9ZSxjPXt9O2Z1bmN0aW9uIHMoZSxuKXtjW2VdPW59dmFyIGY9e3RyYWNrOmZ1bmN0aW9uKGUsbyxzKXtlLndpdGhKc29uUHJvY2Vzc29yKGwodSkpLGUuYWRkKCJlaWQiLCgwLGkudjQpKCkpLGUuYWRkRGljdChjKTt2YXIgZj1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT97dHlwZToiZHRtIix2YWx1ZToobmV3IERhdGUpLmdldFRpbWUoKX06Im51bWJlciI9PXR5cGVvZiBlP3t0eXBlOiJkdG0iLHZhbHVlOmV9OiJ0dG0iPT09ZS50eXBlP3t0eXBlOiJ0dG0iLHZhbHVlOmUudmFsdWV9Ont0eXBlOiJkdG0iLHZhbHVlOmUudmFsdWV8fChuZXcgRGF0ZSkuZ2V0VGltZSgpfX0ocyk7ZS5hZGQoZi50eXBlLGYudmFsdWUudG9TdHJpbmcoKSk7dmFyIGQ9ZnVuY3Rpb24oZSl7aWYoZSYmZS5sZW5ndGgpcmV0dXJuewpzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L2NvbnRleHRzL2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6ZX19KGZ1bmN0aW9uKGUsbil7dmFyIHQ9YS5nZXRBcHBsaWNhYmxlQ29udGV4dHMoZSkscj1bXTtyZXR1cm4gbiYmbi5sZW5ndGgmJnIucHVzaC5hcHBseShyLG4pLHQmJnQubGVuZ3RoJiZyLnB1c2guYXBwbHkocix0KSxyfShlLHIuYWRkUGx1Z2luQ29udGV4dHMobykpKTt2b2lkIDAhPT1kJiZlLmFkZEpzb24oImN4IiwiY28iLGQpLG4uZm9yRWFjaCgoZnVuY3Rpb24obil7dHJ5e24uYmVmb3JlVHJhY2smJm4uYmVmb3JlVHJhY2soZSl9Y2F0Y2goZSl7cC5lcnJvcigiUGx1Z2luIGJlZm9yZVRyYWNrIixlKX19KSksImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQoZSk7dmFyIHY9ZS5idWlsZCgpO3JldHVybiBuLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmFmdGVyVHJhY2smJmUuYWZ0ZXJUcmFjayh2KX1jYXRjaChlKXtwLmVycm9yKCJQbHVnaW4gYWZ0ZXJUcmFjayIsZSl9fSkpLHZ9LGFkZFBheWxvYWRQYWlyOnMsZ2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sc2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oZSl7dT1lfSxhZGRQYXlsb2FkRGljdDpmdW5jdGlvbihlKXtmb3IodmFyIG4gaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxuKSYmKGNbbl09ZVtuXSl9LHJlc2V0UGF5bG9hZFBhaXJzOmZ1bmN0aW9uKGUpe2M9ZChlKT9lOnt9fSxzZXRUcmFja2VyVmVyc2lvbjpmdW5jdGlvbihlKXtzKCJ0diIsZSl9LHNldFRyYWNrZXJOYW1lc3BhY2U6ZnVuY3Rpb24oZSl7cygidG5hIixlKX0sc2V0QXBwSWQ6ZnVuY3Rpb24oZSl7cygiYWlkIixlKX0sc2V0UGxhdGZvcm06ZnVuY3Rpb24oZSl7cygicCIsZSl9LHNldFVzZXJJZDpmdW5jdGlvbihlKXtzKCJ1aWQiLGUpfSxzZXRTY3JlZW5SZXNvbHV0aW9uOmZ1bmN0aW9uKGUsbil7cygicmVzIixlKyJ4IituKX0sc2V0Vmlld3BvcnQ6ZnVuY3Rpb24oZSxuKXtzKCJ2cCIsZSsieCIrbil9LHNldENvbG9yRGVwdGg6ZnVuY3Rpb24oZSl7cygiY2QiLGUpfSxzZXRUaW1lem9uZTpmdW5jdGlvbihlKXtzKCJ0eiIsZSl9LHNldExhbmc6ZnVuY3Rpb24oZSl7cygibGFuZyIsZSl9LHNldElwQWRkcmVzczpmdW5jdGlvbihlKXtzKCJpcCIsZSl9LHNldFVzZXJhZ2VudDpmdW5jdGlvbihlKXtzKCJ1YSIsZSl9LGFkZEdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKGUpe2EuYWRkR2xvYmFsQ29udGV4dHMoZSl9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXthLmNsZWFyR2xvYmFsQ29udGV4dHMoKX0scmVtb3ZlR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oZSl7YS5yZW1vdmVHbG9iYWxDb250ZXh0cyhlKX19O3JldHVybiBmfShudWxsPT1ufHxuLHUsYSkscz1yKHIoe30sYykse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0LHI9ZS5wbHVnaW47dS5wdXNoKHIpLG51bGw9PT0obj1yLmxvZ2dlcil8fHZvaWQgMD09PW58fG4uY2FsbChyLHApLG51bGw9PT0odD1yLmFjdGl2YXRlQ29yZVBsdWdpbil8fHZvaWQgMD09PXR8fHQuY2FsbChyLHMpfX0pO3JldHVybiBudWxsPT11fHx1LmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuLHQ7bnVsbD09PShuPWUubG9nZ2VyKXx8dm9pZCAwPT09bnx8bi5jYWxsKGUscCksbnVsbD09PSh0PWUuYWN0aXZhdGVDb3JlUGx1Z2luKXx8dm9pZCAwPT09dHx8dC5jYWxsKGUscyl9KSksc31mdW5jdGlvbiBEKGUpe3ZhciBuPWUuZXZlbnQsdD1uLnNjaGVtYSxyPW4uZGF0YSxvPXMoKSxpPXtzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3Vuc3RydWN0X2V2ZW50L2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6e3NjaGVtYTp0LGRhdGE6cn19O3JldHVybiBvLmFkZCgiZSIsInVlIiksby5hZGRKc29uKCJ1ZV9weCIsInVlX3ByIixpKSxvfXZhciBqPXQoMTk2MzczKSxVPXQubihqKTtmdW5jdGlvbiBSKGUsbix0KXt2b2lkIDA9PT10JiYodD02MzA3MmUzKTt0cnl7dmFyIHI9d2luZG93LmxvY2FsU3RvcmFnZSxvPURhdGUubm93KCkrMWUzKnQ7cmV0dXJuIHIuc2V0SXRlbSgiIi5jb25jYXQoZSwiLmV4cGlyZXMiKSxvLnRvU3RyaW5nKCkpLHIuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX1mdW5jdGlvbiBOKGUpe3RyeXt2YXIgbj13aW5kb3cubG9jYWxTdG9yYWdlO3JldHVybiBuLnJlbW92ZUl0ZW0oZSksbi5yZW1vdmVJdGVtKGUrIi5leHBpcmVzIiksITB9Y2F0Y2goZSl7cmV0dXJuITF9fWZ1bmN0aW9uIEIoZSl7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShlKX1jYXRjaChlKXtyZXR1cm59fXZhciBfPXtzZXNzaW9uSWQ6ITAsc291cmNlSWQ6ITAsc291cmNlUGxhdGZvcm06ITEsdXNlcklkOiExLHJlYXNvbjohMX07ZnVuY3Rpb24gVihlKXtyZXR1cm4gYnRvYShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoL1w9KyQvLCIiKX1mdW5jdGlvbiBNKGUpe3JldHVybiEoIWV8fCJzdHJpbmciIT10eXBlb2YgZS52YWx1ZU9mKCkpfWZ1bmN0aW9uIHooZSl7cmV0dXJuIE51bWJlci5pc0ludGVnZXImJk51bWJlci5pc0ludGVnZXIoZSl8fCJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSkmJk1hdGguZmxvb3IoZSk9PT1lfWZ1bmN0aW9uIEgoZSl7aWYoIU0oZSkpe2U9ZS50ZXh0fHwiIjt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGl0bGUiKTtuJiZudWxsIT1uWzBdJiYoZT1uWzBdLnRleHQpfXJldHVybiBlfWZ1bmN0aW9uIEooZSl7dmFyIG49bmV3IFJlZ0V4cCgiXig/Oig/Omh0dHBzP3xmdHApOikvKig/OlteQF0rQCk/KFteOi8jXSspIikuZXhlYyhlKTtyZXR1cm4gbj9uWzFdOmV9ZnVuY3Rpb24gcShlKXt2YXIgbj1lLmxlbmd0aDtyZXR1cm4iLiI9PT1lLmNoYXJBdCgtLW4pJiYoZT1lLnNsaWNlKDAsbikpLCIqLiI9PT1lLnNsaWNlKDAsMikmJihlPWUuc2xpY2UoMSkpLGV9ZnVuY3Rpb24gRihlKXsKdmFyIG49d2luZG93LHQ9WCgicmVmZXJyZXIiLG4ubG9jYXRpb24uaHJlZil8fFgoInJlZmVyZXIiLG4ubG9jYXRpb24uaHJlZik7aWYodClyZXR1cm4gdDtpZihlKXJldHVybiBlO3RyeXtpZihuLnRvcClyZXR1cm4gbi50b3AuZG9jdW1lbnQucmVmZXJyZXI7aWYobi5wYXJlbnQpcmV0dXJuIG4ucGFyZW50LmRvY3VtZW50LnJlZmVycmVyfWNhdGNoKGUpe31yZXR1cm4gZG9jdW1lbnQucmVmZXJyZXJ9ZnVuY3Rpb24gRyhlLG4sdCxyKXtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyPyhlLmFkZEV2ZW50TGlzdGVuZXIobix0LHIpLCEwKTplLmF0dGFjaEV2ZW50P2UuYXR0YWNoRXZlbnQoIm9uIituLHQpOnZvaWQoZVsib24iK25dPXQpfWZ1bmN0aW9uIFgoZSxuKXt2YXIgdD1uZXcgUmVnRXhwKCJeW14jXSpbPyZdIitlKyI9KFteJiNdKikiKS5leGVjKG4pO3JldHVybiB0P2RlY29kZVVSSUNvbXBvbmVudCh0WzFdLnJlcGxhY2UoL1wrL2csIiAiKSk6bnVsbH1mdW5jdGlvbiBXKGUsbix0LHIpe1EoZSwiIiwtMSwiLyIsbix0LHIpfWZ1bmN0aW9uIFkoZSl7Zm9yKHZhciBuPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyAiKSx0PVtdLHI9MDtyPG4ubGVuZ3RoO3IrKyluW3JdLnN1YnN0cmluZygwLGUubGVuZ3RoKT09PWUmJnQucHVzaChuW3JdKTtyZXR1cm4gdH1mdW5jdGlvbiBRKGUsbix0LHIsbyxpLGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjE/ZG9jdW1lbnQuY29va2llPWUrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsIT1uP246IiIpKyh0PyI7IEV4cGlyZXM9IituZXcgRGF0ZSgrbmV3IERhdGUrMWUzKnQpLnRvVVRDU3RyaW5nKCk6IiIpKyhyPyI7IFBhdGg9IityOiIiKSsobz8iOyBEb21haW49IitvOiIiKSsoaT8iOyBTYW1lU2l0ZT0iK2k6IiIpKyhhPyI7IFNlY3VyZSI6IiIpOmRlY29kZVVSSUNvbXBvbmVudCgoKCI7ICIrZG9jdW1lbnQuY29va2llKS5zcGxpdCgiOyAiK2UrIj0iKVsxXXx8IiIpLnNwbGl0KCI7IilbMF0pfWZ1bmN0aW9uIFooKXt2YXIgZT0ibW9kZXJuaXpyIjtpZighZnVuY3Rpb24oKXt0cnl7cmV0dXJuISF3aW5kb3cubG9jYWxTdG9yYWdlfWNhdGNoKGUpe3JldHVybiEwfX0oKSlyZXR1cm4hMTt0cnl7dmFyIG49d2luZG93LmxvY2FsU3RvcmFnZTtyZXR1cm4gbi5zZXRJdGVtKGUsZSksbi5yZW1vdmVJdGVtKGUpLCEwfWNhdGNoKGUpe3JldHVybiExfX12YXIgSz0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsJD0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvYnJvd3Nlcl9jb250ZXh0L2pzb25zY2hlbWEvMi0wLTAiLGVlPSJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jbGllbnRfc2Vzc2lvbi9qc29uc2NoZW1hLzEtMC0yIjtmdW5jdGlvbiBuZShlLG4sdCxyLG8saSxhLHUsYyxzLGwsZixkLHYsZyxtLGgseSx3LGIpe3ZvaWQgMD09PXkmJih5PSEwKTt2YXIgayxTLHg9ITEsVD1bXSxJPSExLEE9ITA9PT0ocj0ic3RyaW5nIj09dHlwZW9mIHI/ci50b0xvd2VyQ2FzZSgpOnIpfHwiYmVhY29uIj09PXJ8fCJ0cnVlIj09PXIsQz1Cb29sZWFuKEEmJndpbmRvdy5uYXZpZ2F0b3ImJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJiEoZnVuY3Rpb24oZSxuKXt2YXIgdD1uLm1hdGNoKCIoaVAuKzsgQ1BVIC4qT1MgKGQrKVtfZF0qLiopIEFwcGxlV2ViS2l0LyIpO3JldHVybiEoIXR8fCF0Lmxlbmd0aCkmJnBhcnNlSW50KHRbMF0pPD1lfSgxMyxTPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KXx8ZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQubWF0Y2goIihNYWNpbnRvc2g7LipNYWMgT1MgWCAoZCspXyhkKylbX2RdKi4qKSBBcHBsZVdlYktpdC8iKTtyZXR1cm4hKCFyfHwhci5sZW5ndGgpJiYocGFyc2VJbnQoclswXSk8PWV8fHBhcnNlSW50KHJbMF0pPT09ZSYmcGFyc2VJbnQoclsxXSk8PW4pfSgxMCwxNSxTKSYmZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIlZlcnNpb24vLiogU2FmYXJpLyIpJiYhZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIkNocm9tKGV8aXVtKSIpfShlKX0oUykpKSYmQSxPPSJnZXQiPT09cixQPUJvb2xlYW4od2luZG93LlhNTEh0dHBSZXF1ZXN0JiYid2l0aENyZWRlbnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdCksRT0hTyYmUCYmKCJwb3N0Ij09PXJ8fEEpLEw9RT9vOiIvaSIsRD0ic25vd3Bsb3dPdXRRdWV1ZV8iLmNvbmNhdChlLCJfIikuY29uY2F0KEU/InBvc3QyIjoiZ2V0Iik7aWYoQSYmKGQ9e30pLGk9dCYmWigpJiZFJiZpfHwxLHQpdHJ5e3ZhciBqPXdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShEKTtUPWo/SlNPTi5wYXJzZShqKTpbXX1jYXRjaChlKXt9ZnVuY3Rpb24gVShlKXt2YXIgbj1PYmplY3Qua2V5cyhlKS5tYXAoKGZ1bmN0aW9uKG4pe3JldHVybltuLGVbbl1dfSkpLnJlZHVjZSgoZnVuY3Rpb24oZSxuKXt2YXIgdD1uWzBdLHI9blsxXTtyZXR1cm4gZVt0XT1yLnRvU3RyaW5nKCksZX0pLHt9KTtyZXR1cm57ZXZ0Om4sYnl0ZXM6TihKU09OLnN0cmluZ2lmeShuKSl9fWZ1bmN0aW9uIE4oZSl7Zm9yKHZhciBuPTAsdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj1lLmNoYXJDb2RlQXQodCk7cjw9MTI3P24rPTE6cjw9MjA0Nz9uKz0yOnI+PTU1Mjk2JiZyPD01NzM0Mz8obis9NCx0KyspOm4rPXI8NjU1MzU/Mzo0fXJldHVybiBufUFycmF5LmlzQXJyYXkoVCl8fChUPVtdKSxuLm91dFF1ZXVlcy5wdXNoKFQpLFAmJmk+MSYmbi5idWZmZXJGbHVzaGVycy5wdXNoKChmdW5jdGlvbihlKXt4fHxIKGUpfSkpO3ZhciBCPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZVswXSYmImV2dCJpbiBlWzBdfTtmdW5jdGlvbiBfKGUsbil7dmFyIHQ9cShuLCEwLCExKSxyPUcoW2UuZXZ0XSk7dC5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09dC5yZWFkeVN0YXRlJiYoSih0LnN0YXR1cyk/bnVsbD09d3x8dyhyKTpudWxsPT1ifHxiKHtzdGF0dXM6dC5zdGF0dXMsbWVzc2FnZTp0LnN0YXR1c1RleHQsZXZlbnRzOnIsd2lsbFJldHJ5OiExfSkpfSwKdC5zZW5kKEYocikpfWZ1bmN0aW9uIFYoZSl7Zm9yKHZhciBuPTA7bjxlO24rKylULnNoaWZ0KCk7dCYmUihELEpTT04uc3RyaW5naWZ5KFQuc2xpY2UoMCxzKSkpfWZ1bmN0aW9uIHooZSxuLHQpe2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoND09PWUucmVhZHlTdGF0ZSlpZihjbGVhclRpbWVvdXQociksSihlLnN0YXR1cykpVihuKSxudWxsPT13fHx3KHQpLEgoKTtlbHNle3ZhciBvPWZ1bmN0aW9uKGUpe2lmKEooZSkpcmV0dXJuITE7aWYoIXkpcmV0dXJuITE7aWYoZy5pbmNsdWRlcyhlKSlyZXR1cm4hMDtyZXR1cm4hbS5pbmNsdWRlcyhlKX0oZS5zdGF0dXMpO298fChwLmVycm9yKCJTdGF0dXMgIi5jb25jYXQoZS5zdGF0dXMsIiwgd2lsbCBub3QgcmV0cnkuIikpLFYobikpLG51bGw9PWJ8fGIoe3N0YXR1czplLnN0YXR1cyxtZXNzYWdlOmUuc3RhdHVzVGV4dCxldmVudHM6dCx3aWxsUmV0cnk6b30pLHg9ITF9fTt2YXIgcj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2UuYWJvcnQoKSx5fHxWKG4pLG51bGw9PWJ8fGIoe3N0YXR1czowLG1lc3NhZ2U6InRpbWVvdXQiLGV2ZW50czp0LHdpbGxSZXRyeTp5fSkseD0hMX0pLGwpfWZ1bmN0aW9uIEgoZSl7Zm9yKHZvaWQgMD09PWUmJihlPSExKTtULmxlbmd0aCYmInN0cmluZyIhPXR5cGVvZiBUWzBdJiYib2JqZWN0IiE9dHlwZW9mIFRbMF07KVQuc2hpZnQoKTtpZihULmxlbmd0aCl7aWYoIU0oaykpdGhyb3ciTm8gY29sbGVjdG9yIGNvbmZpZ3VyZWQiO2lmKHg9ITAsaCYmIUkpe3ZhciBuPXEoaCwhMSxlKTtyZXR1cm4gST0hMCxuLnRpbWVvdXQ9bCxuLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1uLnJlYWR5U3RhdGUmJkgoKX0sdm9pZCBuLnNlbmQoKX1pZihQKXt2YXIgcj12b2lkIDAsbz12b2lkIDAsaT12b2lkIDA7aWYoQihUKT8obz1xKHI9aywhMCxlKSxpPWZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0wLHQ9MDtuPGUubGVuZ3RoJiYhKCh0Kz1lW25dLmJ5dGVzKT49YSk7KW4rPTE7cmV0dXJuIG59KFQpKToobz1xKHI9WChUWzBdKSwhMSxlKSxpPTEpLEIoVCkpe3ZhciB1PVQuc2xpY2UoMCxpKTtpZih1Lmxlbmd0aD4wKXt2YXIgYz0hMSxkPXUubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZS5ldnR9KSk7aWYoQyl7dmFyIHY9bmV3IEJsb2IoW0YoRyhkKSldLHt0eXBlOiJhcHBsaWNhdGlvbi9qc29uIn0pO3RyeXtjPXdpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihyLHYpfWNhdGNoKGUpe2M9ITF9fWlmKCEwPT09YylWKGkpLG51bGw9PXd8fHcodSksSCgpO2Vsc2V7dmFyIGc9RyhkKTt6KG8saSxnKSxvLnNlbmQoRihnKSl9fX1lbHNlIHoobyxpLFtyXSksby5zZW5kKCl9ZWxzZSBpZihmfHxCKFQpKXg9ITE7ZWxzZXt2YXIgcD1uZXcgSW1hZ2UoMSwxKSxtPSEwO3Aub25sb2FkPWZ1bmN0aW9uKCl7bSYmKG09ITEsVC5zaGlmdCgpLHQmJlIoRCxKU09OLnN0cmluZ2lmeShULnNsaWNlKDAscykpKSxIKCkpfSxwLm9uZXJyb3I9ZnVuY3Rpb24oKXttJiYobT0hMSx4PSExKX0scC5zcmM9WChUWzBdKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe20mJngmJihtPSExLEgoKSl9KSxsKX19ZWxzZSB4PSExfWZ1bmN0aW9uIEooZSl7cmV0dXJuIGU+PTIwMCYmZTwzMDB9ZnVuY3Rpb24gcShlLG4sdCl7dmFyIHI9bmV3IFhNTEh0dHBSZXF1ZXN0O2Zvcih2YXIgbyBpbiBuPyhyLm9wZW4oIlBPU1QiLGUsIXQpLHIuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpKTpyLm9wZW4oIkdFVCIsZSwhdCksci53aXRoQ3JlZGVudGlhbHM9dixmJiZyLnNldFJlcXVlc3RIZWFkZXIoIlNQLUFub255bW91cyIsIioiKSxkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLG8pJiZyLnNldFJlcXVlc3RIZWFkZXIobyxkW29dKTtyZXR1cm4gcn1mdW5jdGlvbiBGKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9wYXlsb2FkX2RhdGEvanNvbnNjaGVtYS8xLTAtNCIsZGF0YTplfSl9ZnVuY3Rpb24gRyhlKXtmb3IodmFyIG49KG5ldyBEYXRlKS5nZXRUaW1lKCkudG9TdHJpbmcoKSx0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5zdG09bjtyZXR1cm4gZX1mdW5jdGlvbiBYKGUpe3JldHVybiBjP2srZS5yZXBsYWNlKCI/IiwiP3N0bT0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKyImIik6aytlfXJldHVybntlbnF1ZXVlUmVxdWVzdDpmdW5jdGlvbihlLG4pe2s9bitMO3ZhciByPWZ1bmN0aW9uKGUsbil7cmV0dXJuIHAud2FybigiRXZlbnQgKCIrZSsiQikgdG9vIGJpZywgbWF4IGlzICIrbil9O2lmKEUpe2lmKChmPVUoZSkpLmJ5dGVzPj1hKXJldHVybiByKGYuYnl0ZXMsYSksdm9pZCBfKGYsayk7VC5wdXNoKGYpfWVsc2V7dmFyIGM9ZnVuY3Rpb24oZSl7dmFyIG49Ij8iLHQ9e2NvOiEwLGN4OiEwfSxyPSEwO2Zvcih2YXIgbyBpbiBlKWUuaGFzT3duUHJvcGVydHkobykmJiF0Lmhhc093blByb3BlcnR5KG8pJiYocj9yPSExOm4rPSImIixuKz1lbmNvZGVVUklDb21wb25lbnQobykrIj0iK2VuY29kZVVSSUNvbXBvbmVudChlW29dKSk7Zm9yKHZhciBpIGluIHQpZS5oYXNPd25Qcm9wZXJ0eShpKSYmdC5oYXNPd25Qcm9wZXJ0eShpKSYmKG4rPSImIitpKyI9IitlbmNvZGVVUklDb21wb25lbnQoZVtpXSkpO3JldHVybiBufShlKTtpZih1PjApe3ZhciBsPU4oWChjKSk7aWYobD49dSl7dmFyIGY7aWYocihsLHUpLFApXyhmPVUoZSksbitvKTtyZXR1cm59fVQucHVzaChjKX12YXIgZD0hMTt0JiYoZD1SKEQsSlNPTi5zdHJpbmdpZnkoVC5zbGljZSgwLHMpKSkpLHh8fGQmJiEoVC5sZW5ndGg+PWkpfHxIKCl9LGV4ZWN1dGVRdWV1ZTpmdW5jdGlvbigpe3h8fEgoKX0sc2V0VXNlTG9jYWxTdG9yYWdlOmZ1bmN0aW9uKGUpe3Q9ZX0sc2V0QW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Zj1lfSxzZXRDb2xsZWN0b3JVcmw6ZnVuY3Rpb24oZSl7az1lK0x9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7aT1lfX19ZnVuY3Rpb24gdGUoZSxuLHQpe3ZhciByLG8saSxhCjtyZXR1cm4idHJhbnNsYXRlLmdvb2dsZXVzZXJjb250ZW50LmNvbSI9PT1lPygiIj09PXQmJih0PW4pLGU9SihuPW51bGwhPT0obz1uLGk9InUiLHI9KGE9bmV3IFJlZ0V4cCgiXig/Omh0dHBzP3xmdHApKD86Oi8qKD86W14/XSspKShbP11bXiNdKykiKS5leGVjKG8pKSYmKG51bGw9PWE/dm9pZCAwOmEubGVuZ3RoKT4xP1goaSxhWzFdKTpudWxsKSYmdm9pZCAwIT09cj9yOiIiKSk6ImNjLmJpbmdqLmNvbSIhPT1lJiYid2ViY2FjaGUuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiE9PWV8fChlPUoobj1kb2N1bWVudC5saW5rc1swXS5ocmVmKSksW2Usbix0XX1mdW5jdGlvbiByZShlLG4pe3ZvaWQgMD09PW4mJihuPXttZW1vcml6ZWRWaXNpdENvdW50OjF9KTt2YXIgdD1uLm1lbW9yaXplZFZpc2l0Q291bnQ7Y2UoZSk/KGVbN109ZVs2XSxlWzVdPWVbNF0sZVszXSsrKTplWzNdPXQ7dmFyIHI9KDAsaS52NCkoKTtyZXR1cm4gZVs2XT1yLGVbMTBdPTAsZVs4XT0iIixlWzldPXZvaWQgMCxyfWZ1bmN0aW9uIG9lKGUpe2VbNF09TWF0aC5yb3VuZCgobmV3IERhdGUpLmdldFRpbWUoKS8xZTMpfWZ1bmN0aW9uIGllKGUsbix0KXt2YXIgcj1lWzldO3JldHVybnt1c2VySWQ6dD8iMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIjplWzFdLHNlc3Npb25JZDplWzZdLGV2ZW50SW5kZXg6ZVsxMF0sc2Vzc2lvbkluZGV4OmVbM10scHJldmlvdXNTZXNzaW9uSWQ6dD9udWxsOmVbN118fG51bGwsc3RvcmFnZU1lY2hhbmlzbToibG9jYWxTdG9yYWdlIj09bj8iTE9DQUxfU1RPUkFHRSI6IkNPT0tJRV8xIixmaXJzdEV2ZW50SWQ6ZVs4XXx8bnVsbCxmaXJzdEV2ZW50VGltZXN0YW1wOnI/bmV3IERhdGUocikudG9JU09TdHJpbmcoKTpudWxsfX1mdW5jdGlvbiBhZShlKXtyZXR1cm4gZVs2XX1mdW5jdGlvbiB1ZShlKXtyZXR1cm4gZVszXX1mdW5jdGlvbiBjZShlKXtyZXR1cm4iMCI9PT1lWzBdfXZhciBzZSxsZT0hMTt2YXIgZmU9IngiO2Z1bmN0aW9uIGRlKCl7cmV0dXJuIlJlc2l6ZU9ic2VydmVyImluIHdpbmRvdz8oc2V8fChzZT12ZSgpKSxmdW5jdGlvbigpe2lmKCFsZSYmZG9jdW1lbnQmJmRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGU9ITA7dmFyIGU9bmV3IFJlc2l6ZU9ic2VydmVyKChmdW5jdGlvbihlKXtmb3IodmFyIG49MCx0PWU7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci50YXJnZXQhPT1kb2N1bWVudC5ib2R5JiZyLnRhcmdldCE9PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8KHNlPXZlKCkpfX0pKTtlLm9ic2VydmUoZG9jdW1lbnQuYm9keSksZS5vYnNlcnZlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl9fSgpLHNlKTp2ZSgpfWZ1bmN0aW9uIHZlKCl7cmV0dXJue3ZpZXdwb3J0OnBlKGdlKCkpLGRvY3VtZW50U2l6ZTpwZSgoZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1kb2N1bWVudC5ib2R5LHQ9bj9NYXRoLm1heChuLm9mZnNldEhlaWdodCxuLnNjcm9sbEhlaWdodCk6MCxyPU1hdGgubWF4KGUuY2xpZW50V2lkdGgsZS5vZmZzZXRXaWR0aCxlLnNjcm9sbFdpZHRoKSxvPU1hdGgubWF4KGUuY2xpZW50SGVpZ2h0LGUub2Zmc2V0SGVpZ2h0LGUuc2Nyb2xsSGVpZ2h0LHQpLGlzTmFOKHIpfHxpc05hTihvKT8iIjpyK2ZlK28pKSxyZXNvbHV0aW9uOnBlKHNjcmVlbi53aWR0aCtmZStzY3JlZW4uaGVpZ2h0KSxjb2xvckRlcHRoOnNjcmVlbi5jb2xvckRlcHRoLGRldmljZVBpeGVsUmF0aW86d2luZG93LmRldmljZVBpeGVsUmF0aW8sY29va2llc0VuYWJsZWQ6d2luZG93Lm5hdmlnYXRvci5jb29raWVFbmFibGVkLG9ubGluZTp3aW5kb3cubmF2aWdhdG9yLm9uTGluZSxicm93c2VyTGFuZ3VhZ2U6d2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZXx8d2luZG93Lm5hdmlnYXRvci51c2VyTGFuZ3VhZ2UsZG9jdW1lbnRMYW5ndWFnZTpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZyx3ZWJkcml2ZXI6d2luZG93Lm5hdmlnYXRvci53ZWJkcml2ZXIsZGV2aWNlTWVtb3J5OndpbmRvdy5uYXZpZ2F0b3IuZGV2aWNlTWVtb3J5LGhhcmR3YXJlQ29uY3VycmVuY3k6d2luZG93Lm5hdmlnYXRvci5oYXJkd2FyZUNvbmN1cnJlbmN5fTt2YXIgZSxuLHQscixvfWZ1bmN0aW9uIGdlKCl7dmFyIGUsbjtpZigiaW5uZXJXaWR0aCJpbiB3aW5kb3cpZT13aW5kb3cuaW5uZXJXaWR0aCxuPXdpbmRvdy5pbm5lckhlaWdodDtlbHNle3ZhciB0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8ZG9jdW1lbnQuYm9keTtlPXQuY2xpZW50V2lkdGgsbj10LmNsaWVudEhlaWdodH1yZXR1cm4gZT49MCYmbj49MD9lK2ZlK246bnVsbH1mdW5jdGlvbiBwZShlKXtyZXR1cm4gZSYmZS5zcGxpdChmZSkubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gTWF0aC5mbG9vcihOdW1iZXIoZSkpfSkpLmpvaW4oZmUpfWZ1bmN0aW9uIG1lKGUsbix0LGEsdSxjKXt2b2lkIDA9PT1jJiYoYz17fSk7dmFyIGw9W10sZj1mdW5jdGlvbihlLG4sdCxhLHUsYyl7dmFyIGYsZCx2LGcsbSxoLHksdyxiLGssUyx4LFQsSSxBLEMsTyxQLEUsRCxqLE0sWixzZSxsZSxmZSx2ZSxnZSxwZTtjLmV2ZW50TWV0aG9kPW51bGwhPT0oZj1jLmV2ZW50TWV0aG9kKSYmdm9pZCAwIT09Zj9mOiJwb3N0Ijt2YXIgbWUsaGUseWU9ZnVuY3Rpb24oZSl7dmFyIG47cmV0dXJuIG51bGwhPT0obj1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5KSYmdm9pZCAwIT09bj9uOiJjb29raWVBbmRMb2NhbFN0b3JhZ2UifSx3ZT1mdW5jdGlvbihlKXt2YXIgbix0O3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXNzaW9uVHJhY2tpbmcpKSYmdm9pZCAwIT09dCYmdCl9LGJlPWZ1bmN0aW9uKGUpe3ZhciBuLHQKO3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXJ2ZXJBbm9ueW1pc2F0aW9uKSkmJnZvaWQgMCE9PXQmJnQpfSxrZT1mdW5jdGlvbihlKXtyZXR1cm4hIWUuYW5vbnltb3VzVHJhY2tpbmd9LFNlPW51bGwhPT0odj1udWxsPT09KGQ9bnVsbD09Yz92b2lkIDA6Yy5jb250ZXh0cyl8fHZvaWQgMD09PWQ/dm9pZCAwOmQuYnJvd3NlcikmJnZvaWQgMCE9PXYmJnYseGU9bnVsbD09PShtPW51bGw9PT0oZz1udWxsPT1jP3ZvaWQgMDpjLmNvbnRleHRzKXx8dm9pZCAwPT09Zz92b2lkIDA6Zy53ZWJQYWdlKXx8dm9pZCAwPT09bXx8bTtsLnB1c2goKG1lPWZ1bmN0aW9uKGUpe3JldHVybiBmbj9udWxsOmV9LGhlPWZ1bmN0aW9uKGUpe3JldHVybiBzbj9lOm1lKGUpfSx7YmVmb3JlVHJhY2s6ZnVuY3Rpb24oZSl7dmFyIG49Qm4oInNlcyIpLHQ9UW4oKSxyPTA9PT1mdW5jdGlvbihlKXtyZXR1cm4gZVsxMF19KHQpO2lmKFZlPSEhUGUmJiEhUShQZSksYW58fFZlKVhuKCk7ZWxzZXtjZSh0KT8oQmU9bnx8Im5vbmUiPT1kbj9hZSh0KTpyZSh0KSxnbj11ZSh0KSk6KG5ldyBEYXRlKS5nZXRUaW1lKCktdm4+MWUzKmNuJiYoZ24rKyxCZT1yZSh0LHttZW1vcml6ZWRWaXNpdENvdW50OmdufSkpLG9lKHQpLGZ1bmN0aW9uKGUsbil7aWYoMD09PWVbMTBdKXt2YXIgdD1uLmJ1aWxkKCk7ZVs4XT10LmVpZDt2YXIgcj10LmR0bXx8dC50dG07ZVs5XT1yP3BhcnNlSW50KHIpOnZvaWQgMH19KHQsZSksZnVuY3Rpb24oZSl7ZVsxMF0rPTF9KHQpO3ZhciBvPWRlKCksaT1vLnZpZXdwb3J0LGE9by5kb2N1bWVudFNpemU7ZS5hZGQoInZwIixpKSxlLmFkZCgiZHMiLGEpLGUuYWRkKCJ2aWQiLGhlKGduKSksZS5hZGQoInNpZCIsaGUoQmUpKSxlLmFkZCgiZHVpZCIsbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV19KHQpKSksZS5hZGQoInVpZCIsbWUoX2UpKSxMbigpLGUuYWRkKCJyZWZyIixVbihUZXx8R2UpKSxlLmFkZCgidXJsIixVbihJZXx8RmUpKTt2YXIgdT1pZSh0LGRuLGZuKTtpZighYm58fGZuJiYhc258fGZ1bmN0aW9uKGUsbil7dmFyIHQ9e3NjaGVtYTplZSxkYXRhOm59O2UuYWRkQ29udGV4dEVudGl0eSh0KX0oZSx1KSwibm9uZSIhPWRuKXtGbih0KTt2YXIgYz1xbigpO24mJiFyfHwhY3x8IWtufHxTbnx8KGtuKHUpLFNuPSExKX12bj0obmV3IERhdGUpLmdldFRpbWUoKX19fSkpLHhlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6SyxkYXRhOntpZDokbigpfX1dfX0pLFNlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6JCxkYXRhOnIocih7fSxkZSgpKSx7dGFiSWQ6ZXQoKX0pfV19fSksbC5wdXNoLmFwcGx5KGwsbnVsbCE9PShoPWMucGx1Z2lucykmJnZvaWQgMCE9PWg/aDpbXSk7dmFyIFRlLEllLEFlLENlLE9lLFBlLEVlLExlLERlLGplLFVlLFJlLE5lLEJlLF9lLFZlLE1lLHplPUwoe2Jhc2U2NDpjLmVuY29kZUJhc2U2NCxjb3JlUGx1Z2luczpsLGNhbGxiYWNrOmZ1bmN0aW9uKGUpe2FufHxWZXx8cG4uZW5xdWV1ZVJlcXVlc3QoZS5idWlsZCgpLFdlKX0KfSksSGU9ZG9jdW1lbnQuY2hhcmFjdGVyU2V0fHxkb2N1bWVudC5jaGFyc2V0LEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpLHFlPXEoSmVbMF0pLEZlPUplWzFdLEdlPUplWzJdLFhlPW51bGwhPT0oeT1jLnBsYXRmb3JtKSYmdm9pZCAwIT09eT95OiJ3ZWIiLFdlPVpuKGEpLFllPW51bGwhPT0odz1jLnBvc3RQYXRoKSYmdm9pZCAwIT09dz93OiIvY29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3RwMiIsUWU9bnVsbCE9PShiPWMuYXBwSWQpJiZ2b2lkIDAhPT1iP2I6IiIsWmU9ZG9jdW1lbnQudGl0bGUsS2U9bnVsbD09PShrPWMucmVzZXRBY3Rpdml0eVRyYWNraW5nT25QYWdlVmlldyl8fHZvaWQgMD09PWt8fGssJGU9bnVsbCE9PShTPWMuY29va2llTmFtZSkmJnZvaWQgMCE9PVM/UzoiX3NwXyIsZW49bnVsbCE9PSh4PWMuY29va2llRG9tYWluKSYmdm9pZCAwIT09eD94OnZvaWQgMCxubj0iLyIsdG49bnVsbCE9PShUPWMuY29va2llU2FtZVNpdGUpJiZ2b2lkIDAhPT1UP1Q6Ik5vbmUiLHJuPW51bGw9PT0oST1jLmNvb2tpZVNlY3VyZSl8fHZvaWQgMD09PUl8fEksb249d2luZG93Lm5hdmlnYXRvci5kb05vdFRyYWNrfHx3aW5kb3cubmF2aWdhdG9yLm1zRG9Ob3RUcmFja3x8d2luZG93LmRvTm90VHJhY2ssYW49dm9pZCAwIT09Yy5yZXNwZWN0RG9Ob3RUcmFjayYmKGMucmVzcGVjdERvTm90VHJhY2smJigieWVzIj09PW9ufHwiMSI9PT1vbikpLHVuPW51bGwhPT0oQT1jLmNvb2tpZUxpZmV0aW1lKSYmdm9pZCAwIT09QT9BOjYzMDcyZTMsY249bnVsbCE9PShDPWMuc2Vzc2lvbkNvb2tpZVRpbWVvdXQpJiZ2b2lkIDAhPT1DP0M6MTgwMCxzbj13ZShjKSxsbj1iZShjKSxmbj1rZShjKSxkbj15ZShjKSx2bj0obmV3IERhdGUpLmdldFRpbWUoKSxnbj0xLHBuPW5lKGUsdSwibG9jYWxTdG9yYWdlIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbixjLmV2ZW50TWV0aG9kLFllLG51bGwhPT0oTz1jLmJ1ZmZlclNpemUpJiZ2b2lkIDAhPT1PP086MSxudWxsIT09KFA9Yy5tYXhQb3N0Qnl0ZXMpJiZ2b2lkIDAhPT1QP1A6NGU0LG51bGwhPT0oRT1jLm1heEdldEJ5dGVzKSYmdm9pZCAwIT09RT9FOjAsbnVsbD09PShEPWMudXNlU3RtKXx8dm9pZCAwPT09RHx8RCxudWxsIT09KGo9Yy5tYXhMb2NhbFN0b3JhZ2VRdWV1ZVNpemUpJiZ2b2lkIDAhPT1qP2o6MWUzLG51bGwhPT0oTT1jLmNvbm5lY3Rpb25UaW1lb3V0KSYmdm9pZCAwIT09TT9NOjVlMyxsbixudWxsIT09KFo9Yy5jdXN0b21IZWFkZXJzKSYmdm9pZCAwIT09Wj9aOnt9LG51bGw9PT0oc2U9Yy53aXRoQ3JlZGVudGlhbHMpfHx2b2lkIDA9PT1zZXx8c2UsbnVsbCE9PShsZT1jLnJldHJ5U3RhdHVzQ29kZXMpJiZ2b2lkIDAhPT1sZT9sZTpbXSwobnVsbCE9PShmZT1jLmRvbnRSZXRyeVN0YXR1c0NvZGVzKSYmdm9pZCAwIT09ZmU/ZmU6W10pLmNvbmNhdChbNDAwLDQwMSw0MDMsNDEwLDQyMl0pLGMuaWRTZXJ2aWNlLGMucmV0cnlGYWlsZWRSZXF1ZXN0cyxjLm9uUmVxdWVzdFN1Y2Nlc3MsYy5vblJlcXVlc3RGYWlsdXJlKSxtbj0hMSxobj1udWxsIT09KHZlPWMucHJlc2VydmVQYWdlVmlld0lkRm9yVXJsKSYmdm9pZCAwIT09dmUmJnZlLHluPXZvaWQgMCx3bj17ZW5hYmxlZDohMSxpbnN0YWxsZWQ6ITEsY29uZmlndXJhdGlvbnM6e319LGJuPW51bGwhPT0ocGU9bnVsbD09PShnZT1jLmNvbnRleHRzKXx8dm9pZCAwPT09Z2U/dm9pZCAwOmdlLnNlc3Npb24pJiZ2b2lkIDAhPT1wZSYmcGUsa249Yy5vblNlc3Npb25VcGRhdGVDYWxsYmFjayxTbj0hMSx4bj0iYm9vbGVhbiI9PXR5cGVvZihNZT1jLnVzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXJ8fCExKT97dXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcjpNZX06e3VzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXI6ITAsY29sbGVjdENyb3NzRG9tYWluQXR0cmlidXRlczpNZX0sVG49eG4udXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcixJbj14bi5jb2xsZWN0Q3Jvc3NEb21haW5BdHRyaWJ1dGVzO2MuaGFzT3duUHJvcGVydHkoImRpc2NvdmVyUm9vdERvbWFpbiIpJiZjLmRpc2NvdmVyUm9vdERvbWFpbiYmKGVuPWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PXdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSxyPSJfc3Bfcm9vdF9kb21haW5fdGVzdF8iLG89cisobmV3IERhdGUpLmdldFRpbWUoKSxpPSJfdGVzdF92YWx1ZV8iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpLGE9dC5zcGxpdCgiLiIpLHU9YS5sZW5ndGgtMjt1Pj0wO3UtLSl7dmFyIGM9YS5zbGljZSh1KS5qb2luKCIuIik7aWYoUShvLGksMCwiLyIsYyxlLG4pLFEobyk9PT1pKXtXKG8sYyxlLG4pO2Zvcih2YXIgcz1ZKHIpLGw9MDtsPHMubGVuZ3RoO2wrKylXKHNbbF0sYyxlLG4pO3JldHVybiBjfX1yZXR1cm4gdH0odG4scm4pKTt2YXIgQW49ZGUoKSxDbj1Bbi5icm93c2VyTGFuZ3VhZ2UsT249QW4ucmVzb2x1dGlvbixQbj1Bbi5jb2xvckRlcHRoLEVuPUFuLmNvb2tpZXNFbmFibGVkO2Z1bmN0aW9uIExuKCl7KEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpKVsxXSE9PUZlJiYoR2U9RihGZSkpLHFlPXEoSmVbMF0pLEZlPUplWzFdfWZ1bmN0aW9uIERuKGUpe3JldHVybiBmdW5jdGlvbihuKXt2YXIgdD1uLmN1cnJlbnRUYXJnZXQsbz1mdW5jdGlvbihlLG4sdCl7dmFyIG8saT0obmV3IERhdGUpLmdldFRpbWUoKSxhPXIocih7fSxfKSxuKSx1PXQuZG9tYWluVXNlcklkLGM9dC51c2VySWQscz10LnNlc3Npb25JZCxsPXQuc291cmNlSWQsZj10LnNvdXJjZVBsYXRmb3JtLGQ9dC5ldmVudCx2PWQuY3VycmVudFRhcmdldCxnPSJmdW5jdGlvbiI9PXR5cGVvZiBhLnJlYXNvbj9hLnJlYXNvbihkKTpudWxsPT09KG89bnVsbD09dj92b2lkIDA6di50ZXh0Q29udGVudCl8fHZvaWQgMD09PW8/dm9pZCAwOm8udHJpbSgpCjtyZXR1cm4gZT9bdSxpLGEuc2Vzc2lvbklkJiZzLGEudXNlcklkJiZWKGN8fCIiKSxhLnNvdXJjZUlkJiZWKGx8fCIiKSxhLnNvdXJjZVBsYXRmb3JtJiZmLGEucmVhc29uJiZWKGd8fCIiKV0ubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZXx8IiJ9KSkuam9pbigiLiIpLnJlcGxhY2UoLyhbLl0qJCkvLCIiKTp0LmRvbWFpblVzZXJJZCsiLiIraX0oZSxJbix7ZG9tYWluVXNlcklkOk5lLHVzZXJJZDpfZXx8dm9pZCAwLHNlc3Npb25JZDpCZSxzb3VyY2VJZDpRZSxzb3VyY2VQbGF0Zm9ybTpYZSxldmVudDpufSk7KG51bGw9PXQ/dm9pZCAwOnQuaHJlZikmJih0LmhyZWY9ZnVuY3Rpb24oZSxuLHQpe3ZhciByPW4rIj0iK3Qsbz1lLnNwbGl0KCIjIiksaT1vWzBdLnNwbGl0KCI/IiksYT1pLnNoaWZ0KCksdT1pLmpvaW4oIj8iKTtpZih1KXtmb3IodmFyIGM9ITAscz11LnNwbGl0KCImIiksbD0wO2w8cy5sZW5ndGg7bCsrKWlmKHNbbF0uc3Vic3RyKDAsbi5sZW5ndGgrMSk9PT1uKyI9Iil7Yz0hMSxzW2xdPXIsdT1zLmpvaW4oIiYiKTticmVha31jJiYodT1yKyImIit1KX1lbHNlIHU9cjtyZXR1cm4gb1swXT1hKyI/Iit1LG8uam9pbigiIyIpfSh0LmhyZWYsIl9zcCIsbykpfX1mdW5jdGlvbiBqbihlKXtmb3IodmFyIG49RG4oVG4pLHQ9MDt0PGRvY3VtZW50LmxpbmtzLmxlbmd0aDt0Kyspe3ZhciByPWRvY3VtZW50LmxpbmtzW3RdOyFyLnNwRGVjb3JhdGlvbkVuYWJsZWQmJmUocikmJihyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuLCEwKSxyLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiwhMCksci5zcERlY29yYXRpb25FbmFibGVkPSEwKX19ZnVuY3Rpb24gVW4oZSl7dmFyIG47cmV0dXJuIENlJiYobj1uZXcgUmVnRXhwKCIjLioiKSxlPWUucmVwbGFjZShuLCIiKSksT2UmJihuPW5ldyBSZWdFeHAoIlt7fV0iLCJnIiksZT1lLnJlcGxhY2UobiwiIikpLGV9ZnVuY3Rpb24gUm4oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXihbYS16XSspOiIpLmV4ZWMoZSk7cmV0dXJuIG4/blsxXTpudWxsfWZ1bmN0aW9uIE5uKGUpe3JldHVybiAkZStlKyIuIitSZX1mdW5jdGlvbiBCbihlKXt2YXIgbj1ObihlKTtyZXR1cm4ibG9jYWxTdG9yYWdlIj09ZG4/ZnVuY3Rpb24oZSl7dHJ5e3ZhciBuPXdpbmRvdy5sb2NhbFN0b3JhZ2UsdD1uLmdldEl0ZW0oZSsiLmV4cGlyZXMiKTtyZXR1cm4gbnVsbD09PXR8fCt0PkRhdGUubm93KCk/bi5nZXRJdGVtKGUpOihuLnJlbW92ZUl0ZW0oZSksdm9pZCBuLnJlbW92ZUl0ZW0oZSsiLmV4cGlyZXMiKSl9Y2F0Y2goZSl7cmV0dXJufX0obik6ImNvb2tpZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4/UShuKTp2b2lkIDB9ZnVuY3Rpb24gX24oKXtMbigpLFJlPVUoKSgoZW58fHFlKSsobm58fCIvIikpLnNsaWNlKDAsNCl9ZnVuY3Rpb24gVm4oKXt2YXIgZT1uZXcgRGF0ZTtFZT1lLmdldFRpbWUoKX1mdW5jdGlvbiBNbigpeyFmdW5jdGlvbigpe3ZhciBlPXpuKCksbj1lWzBdO248TGU/TGU9bjpuPkRlJiYoRGU9bik7dmFyIHQ9ZVsxXTt0PGplP2plPXQ6dD5VZSYmKFVlPXQpfSgpLFZuKCl9ZnVuY3Rpb24gem4oKXt2YXIgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7cmV0dXJuIGU/W2Uuc2Nyb2xsTGVmdHx8d2luZG93LnBhZ2VYT2Zmc2V0LGUuc2Nyb2xsVG9wfHx3aW5kb3cucGFnZVlPZmZzZXRdOlswLDBdfWZ1bmN0aW9uIEhuKCl7dmFyIGU9em4oKSxuPWVbMF07TGU9bixEZT1uO3ZhciB0PWVbMV07amU9dCxVZT10fWZ1bmN0aW9uIEpuKGUpe3JldHVybiBNYXRoLnJvdW5kKGUpfWZ1bmN0aW9uIHFuKCl7cmV0dXJuIEduKE5uKCJzZXMiKSwiKiIsY24pfWZ1bmN0aW9uIEZuKGUpe3ZhciBuPU5uKCJpZCIpLHQ9ZnVuY3Rpb24oZSxuKXt2YXIgdD1vKFtdLGUsITApO3JldHVybiBuJiYodFsxXT0iIix0WzddPSIiKSx0LnNoaWZ0KCksdC5qb2luKCIuIil9KGUsZm4pO3JldHVybiBHbihuLHQsdW4pfWZ1bmN0aW9uIEduKGUsbix0KXtyZXR1cm4hKGZuJiYhc24pJiYoImxvY2FsU3RvcmFnZSI9PWRuP1IoZSxuLHQpOigiY29va2llIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbikmJihRKGUsbix0LG5uLGVuLHRuLHJuKSwtMSE9PWRvY3VtZW50LmNvb2tpZS5pbmRleE9mKCIiLmNvbmNhdChlLCI9IikpKSl9ZnVuY3Rpb24gWG4oZSl7dmFyIG49Tm4oImlkIiksdD1Obigic2VzIik7TihuKSxOKHQpLFcobixlbix0bixybiksVyh0LGVuLHRuLHJuKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVNlc3Npb24pfHwoQmU9KDAsaS52NCkoKSxnbj0xKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVVzZXIpfHwoTmU9Zm4/IiI6KDAsaS52NCkoKSxfZT1udWxsKX1mdW5jdGlvbiBXbihlKXtlJiZlLnN0YXRlU3RvcmFnZVN0cmF0ZWd5JiYoYy5zdGF0ZVN0b3JhZ2VTdHJhdGVneT1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5LGRuPXllKGMpKSxmbj1rZShjKSxzbj13ZShjKSxsbj1iZShjKSxwbi5zZXRVc2VMb2NhbFN0b3JhZ2UoImxvY2FsU3RvcmFnZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4pLHBuLnNldEFub255bW91c1RyYWNraW5nKGxuKX1mdW5jdGlvbiBZbigpe2lmKCFmbnx8c24pe3ZhciBlPSJub25lIiE9ZG4mJiEhQm4oInNlcyIpLG49UW4oKTtOZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBlWzFdP3Q9ZVsxXTpuPyh0PSIiLGVbMV09dCk6KHQ9KDAsaS52NCkoKSxlWzFdPXQpLHR9KG4sZm4pLEJlPWU/YWUobik6cmUobiksZ249dWUobiksIm5vbmUiIT1kbiYmKHFuKCksb2UobiksRm4obikpfX1mdW5jdGlvbiBRbigpe3JldHVybiJub25lIj09ZG4/WyIxIiwiIiwwLDAsMCx2b2lkIDAsIiIsIiIsIiIsdm9pZCAwLDBdOmZ1bmN0aW9uKGUsbix0LHIpe3ZhciBvLGE9bmV3IERhdGUsdT1NYXRoLnJvdW5kKGEuZ2V0VGltZSgpLzFlMyk7ZT8obz1lLnNwbGl0KCIuIikpLnVuc2hpZnQoIjAiKTpvPVsiMSIsbix1LHIsdSwiIix0XSxvWzZdJiYidW5kZWZpbmVkIiE9PW9bNl18fChvWzZdPSgwLGkudjQpKCkpLG9bN10mJiJ1bmRlZmluZWQiIT09b1s3XXx8KG9bN109IiIpLApvWzhdJiYidW5kZWZpbmVkIiE9PW9bOF18fChvWzhdPSIiKSxvWzldJiYidW5kZWZpbmVkIiE9PW9bOV18fChvWzldPSIiKSxvWzEwXSYmInVuZGVmaW5lZCIhPT1vWzEwXXx8KG9bMTBdPTApO3ZhciBjPWZ1bmN0aW9uKGUsbil7dmFyIHQ9cGFyc2VJbnQoZSk7cmV0dXJuIGlzTmFOKHQpP246dH0scz1mdW5jdGlvbihlKXtyZXR1cm4gZT9jKGUsdm9pZCAwKTp2b2lkIDB9O3JldHVybltvWzBdLG9bMV0sYyhvWzJdLHUpLGMob1szXSxyKSxjKG9bNF0sdSkscyhvWzVdKSxvWzZdLG9bN10sb1s4XSxzKG9bOV0pLGMob1sxMF0sMCldfShCbigiaWQiKXx8dm9pZCAwLE5lLEJlLGduKX1mdW5jdGlvbiBabihlKXtyZXR1cm4gMD09PWUuaW5kZXhPZigiaHR0cCIpP2U6KCJodHRwczoiPT09ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2w/Imh0dHBzIjoiaHR0cCIpKyI6Ly8iK2V9ZnVuY3Rpb24gS24oKXttbiYmbnVsbCE9dS5wYWdlVmlld0lkfHwodS5wYWdlVmlld0lkPSgwLGkudjQpKCksdS5wYWdlVmlld1VybD1JZXx8RmUpfWZ1bmN0aW9uICRuKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYobnVsbD09dS5wYWdlVmlld0lkKXJldHVybiEwO2lmKG1ufHwhaG4pcmV0dXJuITE7aWYodm9pZCAwPT09dS5wYWdlVmlld1VybClyZXR1cm4hMDt2YXIgZT1JZXx8RmU7aWYoITA9PT1obnx8ImZ1bGwiPT1obnx8ISgiVVJMImluIHdpbmRvdykpcmV0dXJuIHUucGFnZVZpZXdVcmwhPWU7dmFyIG49bmV3IFVSTChlKSx0PW5ldyBVUkwodS5wYWdlVmlld1VybCk7aWYoInBhdGhuYW1lIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWU7aWYoInBhdGhuYW1lQW5kU2VhcmNoIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWV8fG4uc2VhcmNoIT10LnNlYXJjaDtyZXR1cm4hMX0oKSYmKHUucGFnZVZpZXdJZD0oMCxpLnY0KSgpLHUucGFnZVZpZXdVcmw9SWV8fEZlKSx1LnBhZ2VWaWV3SWR9ZnVuY3Rpb24gZXQoKXtpZigibm9uZSI9PT1kbnx8Zm58fCF4ZSlyZXR1cm4gbnVsbDt2YXIgZT0iX3NwX3RhYl9pZCIsbj1CKGUpO3JldHVybiBufHwoIWZ1bmN0aW9uKGUsbil7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX0oZSwoMCxpLnY0KSgpKSxuPUIoZSkpLG58fG51bGx9ZnVuY3Rpb24gbnQoZSxuKXtyZXR1cm4oZXx8W10pLmNvbmNhdChuP24oKTpbXSl9ZnVuY3Rpb24gdHQoZSl7dmFyIG49ZS50aXRsZSx0PWUuY29udGV4dCxyPWUudGltZXN0YW1wLG89ZS5jb250ZXh0Q2FsbGJhY2s7TG4oKSx5biYmeW49PSRuKCkmJktuKCkseW49JG4oKSxaZT1kb2N1bWVudC50aXRsZTt2YXIgaT1IKChBZT1udWxsIT1uP246QWUpfHxaZSk7emUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89cygpO3JldHVybiBvLmFkZCgiZSIsInB2Iiksby5hZGQoInVybCIsbiksby5hZGQoInBhZ2UiLHQpLG8uYWRkKCJyZWZyIixyKSxvfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTppLHJlZmVycmVyOlVuKFRlfHxHZSl9KSxudCh0LG8pLHIpO3ZhciBhPW5ldyBEYXRlLHU9ITE7aWYod24uZW5hYmxlZCYmIXduLmluc3RhbGxlZCl7d24uaW5zdGFsbGVkPSEwLHU9ITA7dmFyIGM9e3VwZGF0ZTpmdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LmFkZEV2ZW50TGlzdGVuZXIpe3ZhciBlPSExLG49T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7ZT0hMH0sc2V0OmZ1bmN0aW9uKCl7fX0pLHQ9ZnVuY3Rpb24oKXt9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0UGFzc2l2ZUV2ZW50U3VwcG9ydCIsdCxuKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdFBhc3NpdmVFdmVudFN1cHBvcnQiLHQsbiksYy5oYXNTdXBwb3J0PWV9fX07Yy51cGRhdGUoKTt2YXIgbD0ib253aGVlbCJpbiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKT8id2hlZWwiOnZvaWQgMCE9PWRvY3VtZW50Lm9ubW91c2V3aGVlbD8ibW91c2V3aGVlbCI6IkRPTU1vdXNlU2Nyb2xsIjtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYywiaGFzU3VwcG9ydCIpP0coZG9jdW1lbnQsbCxWbix7cGFzc2l2ZTohMH0pOkcoZG9jdW1lbnQsbCxWbiksSG4oKTt2YXIgZj1mdW5jdGlvbihlLG4pe3JldHVybiB2b2lkIDA9PT1uJiYobj1WbiksZnVuY3Rpb24oZSl7cmV0dXJuIEcoZG9jdW1lbnQsZSxuKX19O1siY2xpY2siLCJtb3VzZXVwIiwibW91c2Vkb3duIiwibW91c2Vtb3ZlIiwia2V5cHJlc3MiLCJrZXlkb3duIiwia2V5dXAiLCJ0b3VjaGVuZCIsInRvdWNoc3RhcnQiXS5mb3JFYWNoKGYoZG9jdW1lbnQpKSxbInJlc2l6ZSIsImZvY3VzIiwiYmx1ciJdLmZvckVhY2goZih3aW5kb3cpKSxmKHdpbmRvdyxNbikoInNjcm9sbCIpfWlmKHduLmVuYWJsZWQmJihLZXx8dSkpe0VlPWEuZ2V0VGltZSgpO3ZhciBkPXZvaWQgMDtmb3IoZCBpbiB3bi5jb25maWd1cmF0aW9ucyl7dmFyIHY9d24uY29uZmlndXJhdGlvbnNbZF07diYmKHdpbmRvdy5jbGVhckludGVydmFsKHYuYWN0aXZpdHlJbnRlcnZhbCkscnQodix0LG8pKX19fWZ1bmN0aW9uIHJ0KGUsbix0KXt2YXIgcj1mdW5jdGlvbihlLG4pe0xuKCksZSh7Y29udGV4dDpuLHBhZ2VWaWV3SWQ6JG4oKSxtaW5YT2Zmc2V0OkxlLG1pbllPZmZzZXQ6amUsbWF4WE9mZnNldDpEZSxtYXhZT2Zmc2V0OlVlfSksSG4oKX0sbz1mdW5jdGlvbigpe3ZhciBvPW5ldyBEYXRlO0VlK2UuY29uZmlnSGVhcnRCZWF0VGltZXI+by5nZXRUaW1lKCkmJnIoZS5jYWxsYmFjayxudChuLHQpKX07MD09PWUuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoP2UuYWN0aXZpdHlJbnRlcnZhbD13aW5kb3cuc2V0SW50ZXJ2YWwobyxlLmNvbmZpZ0hlYXJ0QmVhdFRpbWVyKTplLmFjdGl2aXR5SW50ZXJ2YWw9d2luZG93LnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dmFyIGk9bmV3IERhdGUKO0VlK2UuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoPmkuZ2V0VGltZSgpJiZyKGUuY2FsbGJhY2ssbnQobix0KSksZS5hY3Rpdml0eUludGVydmFsPXdpbmRvdy5zZXRJbnRlcnZhbChvLGUuY29uZmlnSGVhcnRCZWF0VGltZXIpfSksZS5jb25maWdNaW5pbXVtVmlzaXRMZW5ndGgpfWZ1bmN0aW9uIG90KGUpe3ZhciBuPWUubWluaW11bVZpc2l0TGVuZ3RoLHQ9ZS5oZWFydGJlYXREZWxheSxyPWUuY2FsbGJhY2s7aWYoeihuKSYmeih0KSlyZXR1cm57Y29uZmlnTWluaW11bVZpc2l0TGVuZ3RoOjFlMypuLGNvbmZpZ0hlYXJ0QmVhdFRpbWVyOjFlMyp0LGNhbGxiYWNrOnJ9O3AuZXJyb3IoIkFjdGl2aXR5IHRyYWNraW5nIG1pbmltdW1WaXNpdExlbmd0aCAmIGhlYXJ0YmVhdERlbGF5IG11c3QgYmUgaW50ZWdlcnMiKX1mdW5jdGlvbiBpdChlKXt2YXIgbj1lLmNvbnRleHQsdD1lLm1pblhPZmZzZXQscj1lLm1pbllPZmZzZXQsbz1lLm1heFhPZmZzZXQsaT1lLm1heFlPZmZzZXQsYT1kb2N1bWVudC50aXRsZTthIT09WmUmJihaZT1hLEFlPXZvaWQgMCksemUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89ZS5taW5YT2Zmc2V0LGk9ZS5tYXhYT2Zmc2V0LGE9ZS5taW5ZT2Zmc2V0LHU9ZS5tYXhZT2Zmc2V0LGM9cygpO3JldHVybiBjLmFkZCgiZSIsInBwIiksYy5hZGQoInVybCIsbiksYy5hZGQoInBhZ2UiLHQpLGMuYWRkKCJyZWZyIixyKSxvJiYhaXNOYU4oTnVtYmVyKG8pKSYmYy5hZGQoInBwX21peCIsby50b1N0cmluZygpKSxpJiYhaXNOYU4oTnVtYmVyKGkpKSYmYy5hZGQoInBwX21heCIsaS50b1N0cmluZygpKSxhJiYhaXNOYU4oTnVtYmVyKGEpKSYmYy5hZGQoInBwX21peSIsYS50b1N0cmluZygpKSx1JiYhaXNOYU4oTnVtYmVyKHUpKSYmYy5hZGQoInBwX21heSIsdS50b1N0cmluZygpKSxjfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTpIKEFlfHxaZSkscmVmZXJyZXI6VW4oVGV8fEdlKSxtaW5YT2Zmc2V0OkpuKHQpLG1heFhPZmZzZXQ6Sm4obyksbWluWU9mZnNldDpKbihyKSxtYXhZT2Zmc2V0OkpuKGkpfSksbil9ZnVuY3Rpb24gYXQoZSl7dmFyIG49d24uY29uZmlndXJhdGlvbnNbZV07MD09PShudWxsPT1uP3ZvaWQgMDpuLmNvbmZpZ01pbmltdW1WaXNpdExlbmd0aCk/d2luZG93LmNsZWFyVGltZW91dChudWxsPT1uP3ZvaWQgMDpuLmFjdGl2aXR5SW50ZXJ2YWwpOndpbmRvdy5jbGVhckludGVydmFsKG51bGw9PW4/dm9pZCAwOm4uYWN0aXZpdHlJbnRlcnZhbCksd24uY29uZmlndXJhdGlvbnNbZV09dm9pZCAwfXplLnNldFRyYWNrZXJWZXJzaW9uKHQpLHplLnNldFRyYWNrZXJOYW1lc3BhY2UobiksemUuc2V0QXBwSWQoUWUpLHplLnNldFBsYXRmb3JtKFhlKSx6ZS5hZGRQYXlsb2FkUGFpcigiY29va2llIixFbj8iMSI6IjAiKSx6ZS5hZGRQYXlsb2FkUGFpcigiY3MiLEhlKSx6ZS5hZGRQYXlsb2FkUGFpcigibGFuZyIsQ24pLHplLmFkZFBheWxvYWRQYWlyKCJyZXMiLE9uKSx6ZS5hZGRQYXlsb2FkUGFpcigiY2QiLFBuKSxfbigpLFluKCksYy5jcm9zc0RvbWFpbkxpbmtlciYmam4oYy5jcm9zc0RvbWFpbkxpbmtlcik7dmFyIHV0PXtnZXREb21haW5TZXNzaW9uSW5kZXg6ZnVuY3Rpb24oKXtyZXR1cm4gZ259LGdldFBhZ2VWaWV3SWQ6JG4sZ2V0VGFiSWQ6ZXQsbmV3U2Vzc2lvbjpmdW5jdGlvbigpe3ZhciBlPVFuKCk7aWYoY2UoZSk/KEJlPSJub25lIiE9ZG4/cmUoZSk6YWUoZSksZ249dWUoZSkpOihnbisrLEJlPXJlKGUse21lbW9yaXplZFZpc2l0Q291bnQ6Z259KSksb2UoZSksIm5vbmUiIT1kbil7dmFyIG49aWUoZSxkbixmbik7Rm4oZSkscW4oKSYma24mJihTbj0hMCxrbihuKSl9dm49KG5ldyBEYXRlKS5nZXRUaW1lKCl9LGdldENvb2tpZU5hbWU6ZnVuY3Rpb24oZSl7cmV0dXJuIE5uKGUpfSxnZXRVc2VySWQ6ZnVuY3Rpb24oKXtyZXR1cm4gX2V9LGdldERvbWFpblVzZXJJZDpmdW5jdGlvbigpe3JldHVybiBRbigpWzFdfSxnZXREb21haW5Vc2VySW5mbzpmdW5jdGlvbigpe3JldHVybiBRbigpfSxzZXRSZWZlcnJlclVybDpmdW5jdGlvbihlKXtUZT1lfSxzZXRDdXN0b21Vcmw6ZnVuY3Rpb24oZSl7TG4oKSxJZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBSbihuKT9uOiIvIj09PW4uc2xpY2UoMCwxKT9SbihlKSsiOi8vIitKKGUpK246KCh0PShlPVVuKGUpKS5pbmRleE9mKCI/IikpPj0wJiYoZT1lLnNsaWNlKDAsdCkpLCh0PWUubGFzdEluZGV4T2YoIi8iKSkhPT1lLmxlbmd0aC0xJiYoZT1lLnNsaWNlKDAsdCsxKSksZStuKX0oRmUsZSl9LHNldERvY3VtZW50VGl0bGU6ZnVuY3Rpb24oZSl7WmU9ZG9jdW1lbnQudGl0bGUsQWU9ZX0sZGlzY2FyZEhhc2hUYWc6ZnVuY3Rpb24oZSl7Q2U9ZX0sZGlzY2FyZEJyYWNlOmZ1bmN0aW9uKGUpe09lPWV9LHNldENvb2tpZVBhdGg6ZnVuY3Rpb24oZSl7bm49ZSxfbigpfSxzZXRWaXNpdG9yQ29va2llVGltZW91dDpmdW5jdGlvbihlKXt1bj1lfSxjcm9zc0RvbWFpbkxpbmtlcjpmdW5jdGlvbihlKXtqbihlKX0sZW5hYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5wYWdlUGluZ3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMucGFnZVBpbmc9b3QocihyKHt9LGUpLHtjYWxsYmFjazppdH0pKSl9LGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5jYWxsYmFja3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMuY2FsbGJhY2s9b3QoZSkpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbigpe2F0KCJwYWdlUGluZyIpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrOmZ1bmN0aW9uKCl7YXQoImNhbGxiYWNrIil9LHVwZGF0ZVBhZ2VBY3Rpdml0eTpmdW5jdGlvbigpe1ZuKCl9LHNldE9wdE91dENvb2tpZTpmdW5jdGlvbihlKXtQZT1lfSxzZXRVc2VySWQ6ZnVuY3Rpb24oZSl7X2U9ZX0sc2V0VXNlcklkRnJvbUxvY2F0aW9uOmZ1bmN0aW9uKGUpe0xuKCksX2U9WChlLEZlKX0sCnNldFVzZXJJZEZyb21SZWZlcnJlcjpmdW5jdGlvbihlKXtMbigpLF9lPVgoZSxHZSl9LHNldFVzZXJJZEZyb21Db29raWU6ZnVuY3Rpb24oZSl7X2U9UShlKX0sc2V0Q29sbGVjdG9yVXJsOmZ1bmN0aW9uKGUpe1dlPVpuKGUpLHBuLnNldENvbGxlY3RvclVybChXZSl9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7cG4uc2V0QnVmZmVyU2l6ZShlKX0sZmx1c2hCdWZmZXI6ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9e30pLHBuLmV4ZWN1dGVRdWV1ZSgpLGUubmV3QnVmZmVyU2l6ZSYmcG4uc2V0QnVmZmVyU2l6ZShlLm5ld0J1ZmZlclNpemUpfSx0cmFja1BhZ2VWaWV3OmZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPXt9KSx0dChlKX0scHJlc2VydmVQYWdlVmlld0lkOmZ1bmN0aW9uKCl7bW49ITB9LHByZXNlcnZlUGFnZVZpZXdJZEZvclVybDpmdW5jdGlvbihlKXtobj1lfSxkaXNhYmxlQW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Yy5hbm9ueW1vdXNUcmFja2luZz0hMSxXbihlKSxZbigpLHBuLmV4ZWN1dGVRdWV1ZSgpfSxlbmFibGVBbm9ueW1vdXNUcmFja2luZzpmdW5jdGlvbihlKXt2YXIgbjtjLmFub255bW91c1RyYWNraW5nPW51bGw9PT0obj1lJiYobnVsbD09ZT92b2lkIDA6ZS5vcHRpb25zKSl8fHZvaWQgMD09PW58fG4sV24oZSksc258fEtuKCl9LGNsZWFyVXNlckRhdGE6WG59O3JldHVybiByKHIoe30sdXQpLHtpZDplLG5hbWVzcGFjZTpuLGNvcmU6emUsc2hhcmVkU3RhdGU6dX0pfShlLG4sdCxhLHUsYyksZD1yKHIoe30sZikse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0O2QuY29yZS5hZGRQbHVnaW4oZSksbnVsbD09PSh0PShuPWUucGx1Z2luKS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT10fHx0LmNhbGwobixkKX19KTtyZXR1cm4gbC5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbjtudWxsPT09KG49ZS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT1ufHxuLmNhbGwoZSxkKX0pKSxkfXZhciBoZT17fTtmdW5jdGlvbiB5ZShlLG4pe3RyeXsodD1udWxsIT1lP2U6T2JqZWN0LmtleXMoaGUpLHdlKHQsaGUpKS5mb3JFYWNoKG4pfWNhdGNoKGUpe3AuZXJyb3IoIkZ1bmN0aW9uIGZhaWxlZCIsZSl9dmFyIHR9ZnVuY3Rpb24gd2UoZSxuKXtmb3IodmFyIHQ9W10scj0wLG89ZTtyPG8ubGVuZ3RoO3IrKyl7dmFyIGk9b1tyXTtuLmhhc093blByb3BlcnR5KGkpP3QucHVzaChuW2ldKTpwLndhcm4oaSsiIG5vdCBjb25maWd1cmVkIil9cmV0dXJuIHR9dmFyIGJlPWZ1bmN0aW9uKCl7dGhpcy5vdXRRdWV1ZXM9W10sdGhpcy5idWZmZXJGbHVzaGVycz1bXSx0aGlzLmhhc0xvYWRlZD0hMSx0aGlzLnJlZ2lzdGVyZWRPbkxvYWRIYW5kbGVycz1bXX07ZnVuY3Rpb24ga2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmRpc2NhcmRCcmFjZShlKX0pKX1mdW5jdGlvbiBTZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKGUpfSkpfWZ1bmN0aW9uIHhlKGUpe3llKGUsKGZ1bmN0aW9uKGUpe2UuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcoKX0pKX1mdW5jdGlvbiBUZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uc2V0VXNlcklkKGUpfSkpfWZ1bmN0aW9uIEllKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi50cmFja1BhZ2VWaWV3KGUpfSkpfWZ1bmN0aW9uIEFlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5jb3JlLnRyYWNrKEQoe2V2ZW50OmUuZXZlbnR9KSxlLmNvbnRleHQsZS50aW1lc3RhbXApfSkpfWZ1bmN0aW9uIENlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5kaXNhYmxlQW5vbnltb3VzVHJhY2tpbmcoZSl9KSl9ZnVuY3Rpb24gT2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmVuYWJsZUFub255bW91c1RyYWNraW5nKGUpfSkpfXZhciBQZT0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz9mdW5jdGlvbigpe3ZhciBlPW5ldyBiZSxuPWRvY3VtZW50LHQ9d2luZG93O2Z1bmN0aW9uIHIoKXt2YXIgbjtpZighZS5oYXNMb2FkZWQpZm9yKGUuaGFzTG9hZGVkPSEwLG49MDtuPGUucmVnaXN0ZXJlZE9uTG9hZEhhbmRsZXJzLmxlbmd0aDtuKyspZS5yZWdpc3RlcmVkT25Mb2FkSGFuZGxlcnNbbl0oKTtyZXR1cm4hMH1yZXR1cm4gbi52aXNpYmlsaXR5U3RhdGUmJkcobiwidmlzaWJpbGl0eWNoYW5nZSIsKGZ1bmN0aW9uKCl7ImhpZGRlbiI9PW4udmlzaWJpbGl0eVN0YXRlJiZlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLEcodCwiYmVmb3JldW5sb2FkIiwoZnVuY3Rpb24oKXtlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLCJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/KG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChmdW5jdGlvbiBlKCl7bi5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixlLCExKSxyKCl9KSk6bi5hdHRhY2hFdmVudCYmbi5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIiwoZnVuY3Rpb24gZSgpeyJjb21wbGV0ZSI9PT1uLnJlYWR5U3RhdGUmJihuLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLGUpLHIoKSl9KSksRyh0LCJsb2FkIixyLCExKSk6cigpLGV9KCk6dm9pZCAwO2Z1bmN0aW9uIEVlKGUsbix0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9e30pLFBlP2Z1bmN0aW9uKGUsbix0LHIsbyxpKXtyZXR1cm4gaGUuaGFzT3duUHJvcGVydHkoZSk/bnVsbDooaGVbZV09bWUoZSxuLHQscixvLGkpLGhlW2VdKX0oZSxlLCJqcy0iLmNvbmNhdCgiMy4yNC4xIiksbixQZSx0KTp2b2lkIDB9fSwyNDE1MzkoZSl7dmFyIG49e3V0Zjg6e3N0cmluZ1RvQnl0ZXM6ZnVuY3Rpb24oZSl7cmV0dXJuIG4uYmluLnN0cmluZ1RvQnl0ZXModW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KGUpKSl9LGJ5dGVzVG9TdHJpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUobi5iaW4uYnl0ZXNUb1N0cmluZyhlKSkpfX0sYmluOnsKc3RyaW5nVG9CeXRlczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaCgyNTUmZS5jaGFyQ29kZUF0KHQpKTtyZXR1cm4gbn0sYnl0ZXNUb1N0cmluZzpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGVbdF0pKTtyZXR1cm4gbi5qb2luKCIiKX19fTtlLmV4cG9ydHM9bn0sMjk3NjM1KGUpe3ZhciBuLHQ7bj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIsdD17cm90bDpmdW5jdGlvbihlLG4pe3JldHVybiBlPDxufGU+Pj4zMi1ufSxyb3RyOmZ1bmN0aW9uKGUsbil7cmV0dXJuIGU8PDMyLW58ZT4+Pm59LGVuZGlhbjpmdW5jdGlvbihlKXtpZihlLmNvbnN0cnVjdG9yPT1OdW1iZXIpcmV0dXJuIDE2NzExOTM1JnQucm90bChlLDgpfDQyNzgyNTUzNjAmdC5yb3RsKGUsMjQpO2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKWVbbl09dC5lbmRpYW4oZVtuXSk7cmV0dXJuIGV9LHJhbmRvbUJ5dGVzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXTtlPjA7ZS0tKW4ucHVzaChNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSk7cmV0dXJuIG59LGJ5dGVzVG9Xb3JkczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wLHI9MDt0PGUubGVuZ3RoO3QrKyxyKz04KW5bcj4+PjVdfD1lW3RdPDwyNC1yJTMyO3JldHVybiBufSx3b3Jkc1RvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PDMyKmUubGVuZ3RoO3QrPTgpbi5wdXNoKGVbdD4+PjVdPj4+MjQtdCUzMiYyNTUpO3JldHVybiBufSxieXRlc1RvSGV4OmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXSx0PTA7dDxlLmxlbmd0aDt0Kyspbi5wdXNoKChlW3RdPj4+NCkudG9TdHJpbmcoMTYpKSxuLnB1c2goKDE1JmVbdF0pLnRvU3RyaW5nKDE2KSk7cmV0dXJuIG4uam9pbigiIil9LGhleFRvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PGUubGVuZ3RoO3QrPTIpbi5wdXNoKHBhcnNlSW50KGUuc3Vic3RyKHQsMiksMTYpKTtyZXR1cm4gbn0sYnl0ZXNUb0Jhc2U2NDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10scj0wO3I8ZS5sZW5ndGg7cis9Mylmb3IodmFyIG89ZVtyXTw8MTZ8ZVtyKzFdPDw4fGVbcisyXSxpPTA7aTw0O2krKyk4KnIrNippPD04KmUubGVuZ3RoP3QucHVzaChuLmNoYXJBdChvPj4+NiooMy1pKSY2MykpOnQucHVzaCgiPSIpO3JldHVybiB0LmpvaW4oIiIpfSxiYXNlNjRUb0J5dGVzOmZ1bmN0aW9uKGUpe2U9ZS5yZXBsYWNlKC9bXkEtWjAtOStcL10vZ2ksIiIpO2Zvcih2YXIgdD1bXSxyPTAsbz0wO3I8ZS5sZW5ndGg7bz0rK3IlNCkwIT1vJiZ0LnB1c2goKG4uaW5kZXhPZihlLmNoYXJBdChyLTEpKSZNYXRoLnBvdygyLC0yKm8rOCktMSk8PDIqb3xuLmluZGV4T2YoZS5jaGFyQXQocikpPj4+Ni0yKm8pO3JldHVybiB0fX0sZS5leHBvcnRzPXR9LDE5NjM3MyhlLG4sdCl7dmFyIHIsbyxpLGE7cj10KDI5NzYzNSksbz10KDI0MTUzOSkudXRmOCxpPXQoMjQxNTM5KS5iaW4sKGE9ZnVuY3Rpb24oZSxuKXt2YXIgdD1yLndvcmRzVG9CeXRlcyhmdW5jdGlvbihlKXtlLmNvbnN0cnVjdG9yPT1TdHJpbmc/ZT1vLnN0cmluZ1RvQnl0ZXMoZSk6InVuZGVmaW5lZCIhPXR5cGVvZiBCdWZmZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBCdWZmZXIuaXNCdWZmZXImJkJ1ZmZlci5pc0J1ZmZlcihlKT9lPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGUsMCk6QXJyYXkuaXNBcnJheShlKXx8KGU9ZS50b1N0cmluZygpKTt2YXIgbj1yLmJ5dGVzVG9Xb3JkcyhlKSx0PTgqZS5sZW5ndGgsaT1bXSxhPTE3MzI1ODQxOTMsdT0tMjcxNzMzODc5LGM9LTE3MzI1ODQxOTQscz0yNzE3MzM4NzgsbD0tMTAwOTU4OTc3NjtuW3Q+PjVdfD0xMjg8PDI0LXQlMzIsblsxNSsodCs2ND4+Pjk8PDQpXT10O2Zvcih2YXIgZj0wO2Y8bi5sZW5ndGg7Zis9MTYpe2Zvcih2YXIgZD1hLHY9dSxnPWMscD1zLG09bCxoPTA7aDw4MDtoKyspe2lmKGg8MTYpaVtoXT1uW2YraF07ZWxzZXt2YXIgeT1pW2gtM11eaVtoLThdXmlbaC0xNF1eaVtoLTE2XTtpW2hdPXk8PDF8eT4+PjMxfXZhciB3PShhPDw1fGE+Pj4yNykrbCsoaVtoXT4+PjApKyhoPDIwPzE1MTg1MDAyNDkrKHUmY3x+dSZzKTpoPDQwPzE4NTk3NzUzOTMrKHVeY15zKTpoPDYwPyh1JmN8dSZzfGMmcyktMTg5NDAwNzU4ODoodV5jXnMpLTg5OTQ5NzUxNCk7bD1zLHM9YyxjPXU8PDMwfHU+Pj4yLHU9YSxhPXd9YSs9ZCx1Kz12LGMrPWcscys9cCxsKz1tfXJldHVyblthLHUsYyxzLGxdfShlKSk7cmV0dXJuIG4mJm4uYXNCeXRlcz90Om4mJm4uYXNTdHJpbmc/aS5ieXRlc1RvU3RyaW5nKHQpOnIuYnl0ZXNUb0hleCh0KX0pLl9ibG9ja3NpemU9MTYsYS5fZGlnZXN0c2l6ZT0yMCxlLmV4cG9ydHM9YX0sNTM3MjA0KGUsbix0KXt2YXIgcj10KDY5ODU3MSksbz10KDQ2NjY4MCksaT1vO2kudjE9cixpLnY0PW8sZS5leHBvcnRzPWl9LDg2NzE3KGUpe2Zvcih2YXIgbj1bXSx0PTA7dDwyNTY7Kyt0KW5bdF09KHQrMjU2KS50b1N0cmluZygxNikuc3Vic3RyKDEpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciByPXR8fDAsbz1uO3JldHVybltvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dXS5qb2luKCIiKX19LDcyNzY0NChlKXt2YXIgbj0idW5kZWZpbmVkIiE9dHlwZW9mIGNyeXB0byYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcyYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcy5iaW5kKGNyeXB0byl8fCJ1bmRlZmluZWQiIT10eXBlb2YgbXNDcnlwdG8mJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubXNDcnlwdG8uZ2V0UmFuZG9tVmFsdWVzJiZtc0NyeXB0by5nZXRSYW5kb21WYWx1ZXMuYmluZChtc0NyeXB0byk7aWYobil7CnZhciB0PW5ldyBVaW50OEFycmF5KDE2KTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gbih0KSx0fX1lbHNle3ZhciByPW5ldyBBcnJheSgxNik7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7Zm9yKHZhciBlLG49MDtuPDE2O24rKykzJm58fChlPTQyOTQ5NjcyOTYqTWF0aC5yYW5kb20oKSkscltuXT1lPj4+KCgzJm4pPDwzKSYyNTU7cmV0dXJuIHJ9fX0sNjk4NTcxKGUsbix0KXt2YXIgcixvLGk9dCg3Mjc2NDQpLGE9dCg4NjcxNyksdT0wLGM9MDtlLmV4cG9ydHM9ZnVuY3Rpb24oZSxuLHQpe3ZhciBzPW4mJnR8fDAsbD1ufHxbXSxmPShlPWV8fHt9KS5ub2RlfHxyLGQ9dm9pZCAwIT09ZS5jbG9ja3NlcT9lLmNsb2Nrc2VxOm87aWYobnVsbD09Znx8bnVsbD09ZCl7dmFyIHY9aSgpO251bGw9PWYmJihmPXI9WzF8dlswXSx2WzFdLHZbMl0sdlszXSx2WzRdLHZbNV1dKSxudWxsPT1kJiYoZD1vPTE2MzgzJih2WzZdPDw4fHZbN10pKX12YXIgZz12b2lkIDAhPT1lLm1zZWNzP2UubXNlY3M6KG5ldyBEYXRlKS5nZXRUaW1lKCkscD12b2lkIDAhPT1lLm5zZWNzP2UubnNlY3M6YysxLG09Zy11KyhwLWMpLzFlNDtpZihtPDAmJnZvaWQgMD09PWUuY2xvY2tzZXEmJihkPWQrMSYxNjM4MyksKG08MHx8Zz51KSYmdm9pZCAwPT09ZS5uc2VjcyYmKHA9MCkscD49MWU0KXRocm93IG5ldyBFcnJvcigidXVpZC52MSgpOiBDYW4ndCBjcmVhdGUgbW9yZSB0aGFuIDEwTSB1dWlkcy9zZWMiKTt1PWcsYz1wLG89ZDt2YXIgaD0oMWU0KigyNjg0MzU0NTUmKGcrPTEyMjE5MjkyOGU1KSkrcCklNDI5NDk2NzI5NjtsW3MrK109aD4+PjI0JjI1NSxsW3MrK109aD4+PjE2JjI1NSxsW3MrK109aD4+PjgmMjU1LGxbcysrXT0yNTUmaDt2YXIgeT1nLzQyOTQ5NjcyOTYqMWU0JjI2ODQzNTQ1NTtsW3MrK109eT4+PjgmMjU1LGxbcysrXT0yNTUmeSxsW3MrK109eT4+PjI0JjE1fDE2LGxbcysrXT15Pj4+MTYmMjU1LGxbcysrXT1kPj4+OHwxMjgsbFtzKytdPTI1NSZkO2Zvcih2YXIgdz0wO3c8NjsrK3cpbFtzK3ddPWZbd107cmV0dXJuIG58fGEobCl9fSw0NjY2ODAoZSxuLHQpe3ZhciByPXQoNzI3NjQ0KSxvPXQoODY3MTcpO2UuZXhwb3J0cz1mdW5jdGlvbihlLG4sdCl7dmFyIGk9biYmdHx8MDsic3RyaW5nIj09dHlwZW9mIGUmJihuPSJiaW5hcnkiPT09ZT9uZXcgQXJyYXkoMTYpOm51bGwsZT1udWxsKTt2YXIgYT0oZT1lfHx7fSkucmFuZG9tfHwoZS5ybmd8fHIpKCk7aWYoYVs2XT0xNSZhWzZdfDY0LGFbOF09NjMmYVs4XXwxMjgsbilmb3IodmFyIHU9MDt1PDE2OysrdSluW2krdV09YVt1XTtyZXR1cm4gbnx8byhhKX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBTC.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.173Z","timestamp":1785154591173,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /crypto/XTVCBTC.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"107060b925841745f310697bd9f1f83d\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:52 GMT\r\ncdn-cachedat: 08/09/2025 14:29:15\r\nx-amz-id-2: mS6txdd/WwgLrAcd/6no+TxP/dPK7pUj8E19SG87xGMdnJzq7GTFUtT6mRz2dzI97J9VRTiSHig=\r\nx-amz-request-id: 7A2W5B1DC5DG6A3C\r\nx-amz-meta-hash: 107060b925841745f310697bd9f1f83d\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 51ea3aef53b32086537c689efb16f0b3\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":801,"size_decoded":1365,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (801), with no line terminators","md5":"107060b925841745f310697bd9f1f83d","sha1":"40a2e01da20c164a3c3f774a72f3feadf17cafa2","sha256":"4dfca512e957e14f05da07751a96061cf4bfd5df438504f65287fa0a8c3cadb6","sha512":"fb7b987074d4701281c49fee08b1d44f2be2b3aa9ecffd0a88a6cc682aac06a6cd823598c8c8ba5ad43f8f1430a73c814148dea60d5740162cc41af7da324c76","ssdeep":"","tlshash":"24011ec55310f6046ec7c09dbf74a9e4110f60ae14a6c7dcf2c89f0835aae8ba614d48","first_seen":"2023-04-21T01:30:48Z","last_seen":"2026-07-27T14:17:30.859056Z","times_seen":6226,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRjc5MzFBIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjgzNiA3Ljk0Yy4xNjYtMS4xMjMtLjY4NC0xLjcyMS0xLjg1NS0yLjEyOGwuMzgtMS41MTMtLjkyNi0uMjMtLjM2OSAxLjQ3Ni0uNzM4LS4xNzcuMzc1LTEuNDg2LS45MjUtLjIzLS4zOCAxLjUxOC0uNTg4LS4xMzl2LS4wMDVsLTEuMjc4LS4zMi0uMjQ2Ljk4OHMuNjg0LjE2LjY3NC4xNjZjLjM3NC4wOTYuNDM4LjM0Mi40MjcuNTM1TDYuOTYgOC4xMjhsLjA5Ni4wMzItLjEwMi0uMDIyLS42MDQgMi40MjNjLS4wNDMuMTEyLS4xNi4yODMtLjQyMy4yMTQuMDExLjAxNi0uNjY4LS4xNi0uNjY4LS4xNmwtLjQ2IDEuMDUzIDEuMjAzLjMuNjU4LjE3LS4zODUgMS41MzUuOTI1LjIzLjM3NC0xLjUxOS43NDQuMTkzLS4zOCAxLjUxMy45MjUuMjMuMzgtMS41MzVjMS41NzcuMyAyLjc2NS4xODIgMy4yNjItMS4yNDYuNDAxLTEuMTUtLjAyMS0xLjgwNy0uODUtMi4yNDYuNjA0LS4xMzMgMS4wNTktLjUzNCAxLjE3Ni0xLjM1M2guMDA1em0tMi4xMTIgMi45NjNjLS4yODMgMS4xNS0yLjIxOS41MjQtMi44NDUuMzc0bC41MDgtMi4wMzdjLjYyNi4xNiAyLjYzNy40NjUgMi4zMzcgMS42NTh2LjAwNXptLjI4NC0yLjk3OWMtLjI1NyAxLjA0My0xLjg3Mi41MTQtMi4zOS4zODVsLjQ2LTEuODQ0Yy41MjMuMTI4IDIuMjAyLjM3NCAxLjkzIDEuNDZ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":64,"timings":{"blocked":-1,"dns":26,"connect":24,"send":0,"wait":2,"receive":-1,"ssl":10},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99527.15c5c25d27a56a0df772.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.159Z","timestamp":1785154590159,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/99527.15c5c25d27a56a0df772.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-19360\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b96d8c0b4abc5bac5b4459d638f0a0ba\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":103264,"size_decoded":14015,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"3ae28448cb02ee3491028f82c9e212b5","sha1":"840f868063e33818424634685f83f5dc9c54fd85","sha256":"6d8af262e85da3952f96074c40841361fe81de28292a6654a4b6a5c8c0d9a1b6","sha512":"615657ad93d0166da77c83a566e60f1d4002b7a4a1c811227c935f2a4ea91b16e01893aba5c708e2a1b40c39c6e773c08d99e62560bcc1c8df301a3b9f1b3821","ssdeep":"768:ywlwokCcAfM0x/2bcVtmUK6ogvY0FGhgiU4vWQs/WQ2das9:oIVtmUK6ouY0FGhgi1vjs/WQ2day","tlshash":"dea335bcf95192bb5e9b587f4398f6697648f943fd066f86bf00c00020c6ee710e5a5a","first_seen":"2026-04-20T12:30:34.890238Z","last_seen":"2026-07-27T14:18:36.387016Z","times_seen":5614,"resource_available":false,"data":"aHRtbHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjE0cHg7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbn1odG1sW2xhbmc9dmldIGJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsc2Fucy1zZXJpZn1ib2R5LGh0bWx7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDoxMDAlfWJvZHksZGlyLGgxLGgyLGgzLGg0LGg1LGg2LGh0bWwsbGksbWVudSxvbCxwLHVse21hcmdpbjowO3BhZGRpbmc6MH1he3RleHQtZGVjb3JhdGlvbjpub25lfWE6YWN0aXZle291dGxpbmU6MH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7YTpob3ZlcntvdXRsaW5lOjB9fWgxe2ZvbnQtc2l6ZToyZW19c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246aW5pdGlhbH1zdXB7dG9wOi0uMjVlbX1zdWJ7Ym90dG9tOi0uMjVlbX1maWd1cmV7bWFyZ2luOjB9cHJle292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7bWFyZ2luOjB9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixpbnB1dFt0eXBlPWJ1dHRvbl0saW5wdXRbdHlwZT1yZXNldF0saW5wdXRbdHlwZT1zdWJtaXRdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Y3Vyc29yOmRlZmF1bHR9aW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtib3gtc2l6aW5nOmluaXRpYWx9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9dGQsdGh7cGFkZGluZzowfTpyb290ey0tY29sb3Itd2hpdGU6I2ZmZjstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci10cmFuc3BhcmVudDojMDAwMDstLWNvbG9yLWNvbGQtZ3JheS01MDojZjlmOWY5Oy0tY29sb3ItY29sZC1ncmF5LTEwMDojZjJmMmYyOy0tY29sb3ItY29sZC1ncmF5LTE1MDojZWJlYmViOy0tY29sb3ItY29sZC1ncmF5LTIwMDojZGJkYmRiOy0tY29sb3ItY29sZC1ncmF5LTI1MDojYzljOWM5Oy0tY29sb3ItY29sZC1ncmF5LTMwMDojYjhiOGI4Oy0tY29sb3ItY29sZC1ncmF5LTM1MDojYThhOGE4Oy0tY29sb3ItY29sZC1ncmF5LTQwMDojOWM5YzljOy0tY29sb3ItY29sZC1ncmF5LTQ1MDojOGM4YzhjOy0tY29sb3ItY29sZC1ncmF5LTUwMDpncmV5Oy0tY29sb3ItY29sZC1ncmF5LTU1MDojNzA3MDcwOy0tY29sb3ItY29sZC1ncmF5LTYwMDojNjM2MzYzOy0tY29sb3ItY29sZC1ncmF5LTY1MDojNTc1NzU3Oy0tY29sb3ItY29sZC1ncmF5LTcwMDojNGE0YTRhOy0tY29sb3ItY29sZC1ncmF5LTc1MDojM2QzZDNkOy0tY29sb3ItY29sZC1ncmF5LTgwMDojMmUyZTJlOy0tY29sb3ItY29sZC1ncmF5LTg1MDojMWYxZjFmOy0tY29sb3ItY29sZC1ncmF5LTkwMDojMGYwZjBmOy0tY29sb3ItY29sZC1ncmF5LTk1MDojMDAwOy0tY29sb3ItcmlwZS1yZWQtNTA6I2ZmZWJlYzstLWNvbG9yLXJpcGUtcmVkLTEwMDojZmNjYmNkOy0tY29sb3ItcmlwZS1yZWQtMjAwOiNmYWExYTQ7LS1jb2xvci1yaXBlLXJlZC0zMDA6I2Y3N2M4MDstLWNvbG9yLXJpcGUtcmVkLTQwMDojZjc1MjVmOy0tY29sb3ItcmlwZS1yZWQtNTAwOiNmMjM2NDU7LS1jb2xvci1yaXBlLXJlZC02MDA6I2NjMmYzYzstLWNvbG9yLXJpcGUtcmVkLTcwMDojYjIyODMzOy0tY29sb3ItcmlwZS1yZWQtODAwOiM5OTFmMjk7LS1jb2xvci1yaXBlLXJlZC05MDA6IzgwMTkyMjstLWNvbG9yLXJpcGUtcmVkLWExMDA6I2ZmODA4MDstLWNvbG9yLXJpcGUtcmVkLWEyMDA6I2ZmNTI1MjstLWNvbG9yLXJpcGUtcmVkLWE0MDA6I2YzMzstLWNvbG9yLXJpcGUtcmVkLWE2MDA6I2NjMjkyOTstLWNvbG9yLXJpcGUtcmVkLWE3MDA6IzgwMjAyODstLWNvbG9yLXJpcGUtcmVkLWE4MDA6IzRkMTkxZDstLWNvbG9yLXJpcGUtcmVkLWE5MDA6IzMzMWYyMDstLWNvbG9yLXRhbi1vcmFuZ2UtNTA6I2ZmZjNlMDstLWNvbG9yLXRhbi1vcmFuZ2UtMTAwOiNmZmUwYjI7LS1jb2xvci10YW4tb3JhbmdlLTIwMDojZmZjYzgwOy0tY29sb3ItdGFuLW9yYW5nZS0zMDA6I2ZmYjc0ZDstLWNvbG9yLXRhbi1vcmFuZ2UtNDAwOiNmZmE3MjY7LS1jb2xvci10YW4tb3JhbmdlLTUwMDojZmY5ODAwOy0tY29sb3ItdGFuLW9yYW5nZS02MDA6I2ZiOGMwMDstLWNvbG9yLXRhbi1vcmFuZ2UtNzAwOiNmNTdjMDA7LS1jb2xvci10YW4tb3JhbmdlLTgwMDojZWY2YzAwOy0tY29sb3ItdGFuLW9yYW5nZS05MDA6I2U2NTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTEwMDojZmZkMTgwOy0tY29sb3ItdGFuLW9yYW5nZS1hMjAwOiNmZmFiNDA7LS1jb2xvci10YW4tb3JhbmdlLWE0MDA6I2ZmOTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTUwMDojZTU3ZTE3Oy0tY29sb3ItdGFuLW9yYW5nZS1hNjAwOiNjYzcwMTQ7LS1jb2xvci10YW4tb3JhbmdlLWE3MDA6IzhjNTQxYzstLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMDojNTkzYTFiOy0tY29sb3ItdGFuLW9yYW5nZS1hOTAwOiMzMzI2MWE7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tNTA6I2U4ZjVlOTstLWNvbG9yLWlndWFuYS1ncmVlbi0xMDA6I2M4ZTZjOTstLWNvbG9yLWlndWFuYS1ncmVlbi0yMDA6I2E1ZDZhNzstLWNvbG9yLWlndWFuYS1ncmVlbi0zMDA6IzgxYzc4NDstLWNvbG9yLWlndWFuYS1ncmVlbi00MDA6IzY2YmI2YTstLWNvbG9yLWlndWFuYS1ncmVlbi01MDA6IzRjYWY1MDstLWNvbG9yLWlndWFuYS1ncmVlbi02MDA6IzQzYTA0NzstLWNvbG9yLWlndWFuYS1ncmVlbi03MDA6IzM4OGUzYzstLWNvbG9yLWlndWFuYS1ncmVlbi04MDA6IzJlN2QzMjstLWNvbG9yLWlndWFuYS1ncmVlbi05MDA6IzFiNWUyMDstLWNvbG9yLWlndWFuYS1ncmVlbi1hMTAwOiNiOWY2Y2E7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tYTIwMDojNjlmMGFlOy0tY29sb3ItaWd1YW5hLWdyZWVuLWE0MDA6IzAwZTY3NjstLWNvbG9yLWlndWFuYS1ncmVlbi1hNzAwOiMwMGM4NTM7LS1jb2xvci1iYW5hbmEteWVsbG93LTUwOiNmZmZkZTc7LS1jb2xvci1iYW5hbmEteWVsbG93LTEwMDojZmZmOWM0Oy0tY29sb3ItYmFuYW5hLXllbGxvdy0yMDA6I2ZmZjU5ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctMzAwOiNmZmYxNzY7LS1jb2xvci1iYW5hbmEteWVsbG93LTQwMDojZmZlZTU4Oy0tY29sb3ItYmFuYW5hLXllbGxvdy01MDA6I2ZmZWIzYjstLWNvbG9yLWJhbmFuYS15ZWxsb3ctNjAwOiNmZGQ4MzU7LS1jb2xvci1iYW5hbmEteWVsbG93LTcwMDojZmJjMDJkOy0tY29sb3ItYmFuYW5hLXllbGxvdy04MDA6I2Y5YTgyNTstLWNvbG9yLWJhbmFuYS15ZWxsb3ctOTAwOiNmNTdmMTc7LS1jb2xvci1iYW5hbmEteWVsbG93LWExMDA6I2ZmZmY4ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMDojZmYwOy0tY29sb3ItYmFuYW5hLXllbGxvdy1hNDAwOiNmZmVhMDA7LS1jb2xvci1iYW5hbmEteWVsbG93LWE3MDA6I2VlZGEwMTstLWNvbG9yLXR2LWJsdWUtNTA6I2UzZWZmZDstLWNvbG9yLXR2LWJsdWUtMTAwOiNiYmQ5ZmI7LS1jb2xvci10di1ibHVlLTIwMDojOTBiZmY5Oy0tY29sb3ItdHYtYmx1ZS0zMDA6IzViOWNmNjstLWNvbG9yLXR2LWJsdWUtNDAwOiMzMTc5ZjU7LS1jb2xvci10di1ibHVlLTUwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS02MDA6IzFlNTNlNTstLWNvbG9yLXR2LWJsdWUtNzAwOiMxODQ4Y2M7LS1jb2xvci10di1ibHVlLTgwMDojMTQzZWIyOy0tY29sb3ItdHYtYmx1ZS05MDA6IzBjMzI5OTstLWNvbG9yLXR2LWJsdWUtYTEwMDojODJiMWZmOy0tY29sb3ItdHYtYmx1ZS1hMjAwOiM0NDhhZmY7LS1jb2xvci10di1ibHVlLWE0MDA6IzI5NzlmZjstLWNvbG9yLXR2LWJsdWUtYTYwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS1hNzAwOiMxNDNhODc7LS1jb2xvci10di1ibHVlLWE4MDA6IzE0MmU2MTstLWNvbG9yLXR2LWJsdWUtYTkwMDojMTMyMDQyOy0tY29sb3ItZGVlcC1ibHVlLTUwOiNlZGU3ZjY7LS1jb2xvci1kZWVwLWJsdWUtMTAwOiNkMWM0ZTk7LS1jb2xvci1kZWVwLWJsdWUtMjAwOiNiMzlkZGI7LS1jb2xvci1kZWVwLWJsdWUtMzAwOiM5NTc1Y2Q7LS1jb2xvci1kZWVwLWJsdWUtNDAwOiM3ZTU3YzI7LS1jb2xvci1kZWVwLWJsdWUtNTAwOiM2NzNhYjc7LS1jb2xvci1kZWVwLWJsdWUtNjAwOiM1ZTM1YjE7LS1jb2xvci1kZWVwLWJsdWUtNzAwOiM1MTJkYTg7LS1jb2xvci1kZWVwLWJsdWUtODAwOiM0NTI3YTA7LS1jb2xvci1kZWVwLWJsdWUtOTAwOiMzMTFiOTI7LS1jb2xvci1kZWVwLWJsdWUtYTEwMDojYjM4OGZmOy0tY29sb3ItZGVlcC1ibHVlLWEyMDA6IzdjNGRmZjstLWNvbG9yLWRlZXAtYmx1ZS1hNDAwOiM2NTFmZmY7LS1jb2xvci1kZWVwLWJsdWUtYTcwMDojNjIwMGVhOy0tY29sb3ItbWludHktZ3JlZW4tNTA6I2RhZjJlZTstLWNvbG9yLW1pbnR5LWdyZWVuLTEwMDojYWNlNWRjOy0tY29sb3ItbWludHktZ3JlZW4tMjAwOiM3MGNjYmQ7LS1jb2xvci1taW50eS1ncmVlbi0zMDA6IzQyYmRhODstLWNvbG9yLW1pbnR5LWdyZWVuLTQwMDojMjJhYjk0Oy0tY29sb3ItbWludHktZ3JlZW4tNTAwOiMwODk5ODE7LS1jb2xvci1taW50eS1ncmVlbi02MDA6IzA2ODA2YjstLWNvbG9yLW1pbnR5LWdyZWVuLTcwMDojMDU2NjU2Oy0tY29sb3ItbWludHktZ3JlZW4tODAwOiMwMDRkNDA7LS1jb2xvci1taW50eS1ncmVlbi05MDA6IzAwMzMyYTstLWNvbG9yLW1pbnR5LWdyZWVuLWExMDA6I2E3ZmZmMDstLWNvbG9yLW1pbnR5LWdyZWVuLWEyMDA6IzQ1ZTVjYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE0MDA6IzJiZDliYzstLWNvbG9yLW1pbnR5LWdyZWVuLWE2MDA6IzI0YjI5YjstLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDA6IzFiNzY2NzstLWNvbG9yLW1pbnR5LWdyZWVuLWE4MDA6IzEwNDQzYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE5MDA6IzA4MjYyMTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTA6I2YzZTVmNTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtMTAwOiNlMWJlZTc7LS1jb2xvci1ncmFwZXMtcHVycGxlLTIwMDojY2U5M2Q4Oy0tY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDA6I2JhNjhjODstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNDAwOiNhYjQ3YmM7LS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMDojOWMyN2IwOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS02MDA6IzhlMjRhYTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwOiM3YjFmYTI7LS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMDojNmExYjlhOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS05MDA6IzRhMTQ4YzstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTEwMDojZWE4MGZjOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS1hMjAwOiNlMDQwZmI7LS1jb2xvci1ncmFwZXMtcHVycGxlLWE0MDA6I2Q1MDBmOTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTcwMDojYTBmOy0tY29sb3ItYmVycnktcGluay01MDojZmNlNGVjOy0tY29sb3ItYmVycnktcGluay0xMDA6I2Y4YmJkMDstLWNvbG9yLWJlcnJ5LXBpbmstMjAwOiNmNDhmYjE7LS1jb2xvci1iZXJyeS1waW5rLTMwMDojZjA2MjkyOy0tY29sb3ItYmVycnktcGluay00MDA6I2VjNDA3YTstLWNvbG9yLWJlcnJ5LXBpbmstNTAwOiNlOTFlNjM7LS1jb2xvci1iZXJyeS1waW5rLTYwMDojZDgxYjYwOy0tY29sb3ItYmVycnktcGluay03MDA6I2MyMTg1YjstLWNvbG9yLWJlcnJ5LXBpbmstODAwOiNhZDE0NTc7LS1jb2xvci1iZXJyeS1waW5rLTkwMDojODgwZTRmOy0tY29sb3ItYmVycnktcGluay1hMTAwOiNmZjgwYWI7LS1jb2xvci1iZXJyeS1waW5rLWEyMDA6I2ZmNDA4MTstLWNvbG9yLWJlcnJ5LXBpbmstYTQwMDojZjUwMDU3Oy0tY29sb3ItYmVycnktcGluay1hNzAwOiNjNTExNjI7LS1jb2xvci1za3ktYmx1ZS01MDojZTBmN2ZhOy0tY29sb3Itc2t5LWJsdWUtMTAwOiNiMmViZjI7LS1jb2xvci1za3ktYmx1ZS0yMDA6IzgwZGVlYTstLWNvbG9yLXNreS1ibHVlLTMwMDojNGRkMGUxOy0tY29sb3Itc2t5LWJsdWUtNDAwOiMyNmM2ZGE7LS1jb2xvci1za3ktYmx1ZS01MDA6IzAwYmNkNDstLWNvbG9yLXNreS1ibHVlLTYwMDojMDBhY2MxOy0tY29sb3Itc2t5LWJsdWUtNzAwOiMwMDk3YTc7LS1jb2xvci1za3ktYmx1ZS04MDA6IzAwODM4ZjstLWNvbG9yLXNreS1ibHVlLTkwMDojMDA2MDY0Oy0tY29sb3Itc2t5LWJsdWUtYTEwMDojODRmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTIwMDojMThmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTQwMDojMDBlNWZmOy0tY29sb3Itc2t5LWJsdWUtYTcwMDojMDBiOGQ0Oy0tY29sb3ItZm9yZXN0LWdyZWVuLTUwOiNkYWYyZTY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMTAwOiNhY2U1Yzk7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwOiM3MGNjOWU7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwOiM0MmJkN2Y7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwOiMyMmFiNjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwOiMwODk5NTA7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNjAwOiMwNjgwNDM7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwOiMwNTY2MzY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwOiMwMDRkMjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwOiMxYTMzMjY7LS1jb2xvci1mYWNlYm9vazojMTg3N2YyOy0tY29sb3ItZGVlcC1mYWNlYm9vazojMTU2NGNhOy0tY29sb3ItdHdpdHRlcjojMWRhMWYyOy0tY29sb3ItZGVlcC10d2l0dGVyOiMxODhjZDM7LS1jb2xvci15b3V0dWJlOnJlZDstLWNvbG9yLWxpbmtlZGluOiMwMDdiYjU7LS1jb2xvci1zZWVraW5nLWFscGhhLWJyYW5kOiNmZjcyMDB9W2RhdGEtdGhlbWU9bGlnaHRdey0tY29sb3ItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvZHktYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9keS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmctaGlnaGxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItdGV4dC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApOy0tY29sb3ItdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWFjY2VudC1jb250ZW50OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm94LXNoYWRvdzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWRpdmlkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kaXZpZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItZGl2aWRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnJhbmQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGlnaGxpZ2h0LW5ldzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWlucHV0LXB1Ymxpc2gtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBhbmUtc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1zZXBhcmF0b3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wcmltYXJ5LXN5bWJvbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWljb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLW9wZW5lZC1lbGVtZW50LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1kaXZpZGVyLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtc2Vjb25kYXJ5LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWhpbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10di1kaWFsb2ctY2FwdGlvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci11bmRlcmxpbmVkLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci13aWRnZXQtcGFnZXMtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItbGlzdC1pdGVtLWFjdGl2ZS1iZzp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1saXN0LWl0ZW0tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtYmFjazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhci1ob3Zlcjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1idXR0b24taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kZXB0aHJlbmRlcmVyLWZpbGwtc3R5bGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGlzYWJsZWQtaW5wdXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1lbXB0eS1jb250YWluZXItbWVzc2FnZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWljb25zOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaXRlbS1ob3Zlci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItcGxhY2Vob2xkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1yb3ctaG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Itc2Nyb2xsYmFyLWJvZHktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1zZXBhcmF0b3ItdGFibGUtY2hhdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXNjcm9sbC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXNjcm9sbC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci13aWRnZXQtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3c6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByZS1tYXJrZXQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItcG9zdC1tYXJrZXQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3Itbm90YWNjdXJhdGUtbW9kZTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTYwMCk7LS1jb2xvci1kZWxheS1tb2RlOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWRlbGF5LW1vZGUtYmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS00MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItbGlzdC1pdGVtLWJnLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1oaWdobGlnaHRlZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1tYXJrZXItZmxhZ2dlZC1ob3ZlcmVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hc2s6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLXNlbGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWJ1eTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItcHJvOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1wcm8taG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXByby1wbHVzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXByby1wbHVzLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXByby1wcmVtaXVtOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXByby1wcmVtaXVtLWhvdmVyOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLXRyaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdHJpYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1tb2Q6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1vZC1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYnJva2VyLWZlYXR1cmVkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1zdG9wcGVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1zZWFyY2gtYnV0dG9uLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jYXJkLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNhcmQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNlbGVjdGlvbi1iZzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1kZWZhdWx0LWdyYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXBsYXRmb3JtOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtcGFnZS1wcm9tbzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2Utc29jaWFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXNpbXBsZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1wcm9tbzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1mdWxsc2NyZWVuOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1pY29ucy10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1zb2NpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtcHJpbWFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3Itc3RhdGljLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1zdGF0aWMtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWZvY3VzLW5vdC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXJlYWQtb25seTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2l0aC12YWx1ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWVycm9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWxpbms6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1hcnJvd3MtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1kYW5nZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1maWxsLWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1ib3JkZXItdGVydGlhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaXNPcGVuZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1pc09wZW5lZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50OiNmZmYwOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQtNjA6I2ZmZjk7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDAzOy0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLW90aGVyLW1vZGFsLWJhY2tncm91bmQ6I2QxZDFkMTRkOy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTojMDAwMzstLWNvbG9yLW90aGVyLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1zaGFkb3ctc2Vjb25kYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktcHJpbWFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXRlcnRpYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktcHJpbWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1zZWNvbmRhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTIwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktdGVydGlhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTEwMCk7LS1jb2xvci1zZWFyY2gtaGlnaGxpZ2h0LXByaW1hcnktbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsYWNrOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3Itd2hpdGU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDEtbm9ybWFsOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDItYm9sZDp2YXIoLS1jb2xvci1za3ktYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1ub3JtYWw6dmFyKC0tY29sb3ItcmlwZS1yZWQtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC10aGluOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1saWdodDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLW5vcm1hbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcXVhdGVybmFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE2MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1aW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTgwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay04MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYm9yZGVyLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMS1saWdodDojMjk2MmZmMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLW5vcm1hbDojMjk2MmZmNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWJvbGQ6IzI5NjJmZjY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMi1saWdodDojMDBhY2MxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLW5vcm1hbDojMDBhY2MxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWJvbGQ6IzAwYWNjMTY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMy1saWdodDojOWMyN2IwMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLW5vcm1hbDojOWMyN2IwNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWJvbGQ6IzljMjdiMDY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtNC1saWdodDojNWUzNWIxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LW5vcm1hbDojNWUzNWIxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWJvbGQ6IzVlMzViMTY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWxpZ2h0OiNjYzJmM2MyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMS1ub3JtYWw6I2NjMmYzYzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWJvbGQ6I2NjMmYzYzY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWxpZ2h0OiNlOTFlNjMyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMi1ub3JtYWw6I2U5MWU2MzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWJvbGQ6I2U5MWU2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbGlnaHQ6IzYzNjM2MzI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbm9ybWFsOiM2MzYzNjM0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0xLWJvbGQ6IzYzNjM2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbGlnaHQ6IzAwMDAwMDI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbm9ybWFsOiMwMDAwMDA0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLWJvbGQ6IzAwMDY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtbGlnaHQ6IzA4OTk4MTI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLW5vcm1hbDojMDg5OTgxNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtYm9sZDojMDg5OTgxNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItbGlnaHQ6IzA4OTk1MDI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLW5vcm1hbDojMDg5OTUwNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItYm9sZDojMDg5OTUwNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtbGlnaHQ6IzQzYTA0NzI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLW5vcm1hbDojNDNhMDQ3NGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtYm9sZDojNDNhMDQ3NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1saWdodDojZmRkODM1MjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1ub3JtYWw6I2ZkZDgzNTRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItYm9sZDojZmRkODM1NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1saWdodDojNjM2MzYzMjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1ub3JtYWw6IzYzNjM2MzRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtYm9sZDojNjM2MzYzNjY7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtODAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLW06dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmV1dHJhbDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC1taW51czItZGVmYXVsdDojZGU4MTJmOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXY3LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS00MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3Itc2t5LWJsdWUtMTAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0zMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14eGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS05MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWJvcmRlcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLXhzOnZhcigtLWNvbG9yLXNreS1ibHVlLTUwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtczp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteHhsOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3Itc2t5LWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXhzOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhsOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14eGw6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHM6dmFyKC0tY29sb3ItYmVycnktcGluay01MCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstczp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTUwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteGw6dmFyKC0tY29sb3ItYmVycnktcGluay03MDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXh4bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstYm9yZGVyOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXhzOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1sOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXhsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHM6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS01MCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtczp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbTp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteGw6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS03MDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXh4bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtYm9yZGVyOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLWNvbG9yLWhlYWRlci1iZzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib2R5LWJnOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYmctcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10ZXh0LXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYWNjZW50LWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZGl2aWRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWRpdmlkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1kaXZpZGVyLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJveC1zaGFkb3c6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnV0dG9uLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWRpc2FibGVkLWlucHV0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1oaWdobGlnaHQtbmV3OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pY29uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItaW5wdXQtcHVibGlzaC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLWJsdWU6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtaXRlbTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcGFuZS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wbGFjZWhvbGRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXBvcHVwLW1lbnUtaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItcHJpbWFyeS1zeW1ib2w6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLXJvdy1ob3Zlci1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc2VjdGlvbi1zZXBhcmF0b3ItYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2VhcmNoLWJ1dHRvbi1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXNlcGFyYXRvci10YWJsZS1jaGF0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3Itc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3Itc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLXNlY29uZGFyeS1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRvb2xiYXItaW50ZXJhY3RpdmUtZWxlbWVudC10ZXh0LW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItb3BlbmVkLWVsZW1lbnQtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXBvcHVwLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1oaW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10di1kcm9wZG93bi1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdW5kZXJsaW5lZC10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itd2lkZ2V0LXBhZ2VzLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItbGlzdC1pdGVtLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2s6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zY3JvbGwtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1zY3JvbGwtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3Itd2lkZ2V0LWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXNjcm9sbC1idXR0b25zLWFycm93OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250cm9sLWludGVudC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1wcmltYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1nb3RvLWxhYmVsLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1wcmUtbWFya2V0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLXBvc3QtbWFya2V0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5vdGFjY3VyYXRlLW1vZGU6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWRlbGF5LW1vZGU6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItZGVsYXktbW9kZS1iZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY2FyZC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jYXJkLWJvcmRlci1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLXN0cm9rZS1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zZWxlY3Rpb24tYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWRlZmF1bHQtZ3JheTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS1iZzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci10di1ibHVlLWE5MDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcGxhdGZvcm06dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcHJvbW86dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXNvY2lhbDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1zaW1wbGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXByb21vOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItYmFja2dyb3VuZC1kaWFsb2ctZnVsbHNjcmVlbjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb250ZW50LWljb25zLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LWljb25zLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXByb21vLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXByaW1hcnktc3BlY2lhbDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtc2Vjb25kYXJ5LXNwZWNpYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMjAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1zdGF0aWMtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXN0YXRpYy1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtbm90LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci13aXRoLXZhbHVlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWRlc2NyaXB0aW9uLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1maWxsLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1saW5rOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGFiZWwtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb3VudGVyLWZpbGwtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY291bnRlci1jb250ZW50LWFjY2VudDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb3VudGVyLWJvcmRlci10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQ6IzAwMDA7LS1jb2xvci1vdGhlci10cmFuc3BhcmVudC02MDojMDAwOTstLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6IzAwMDY7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3Itb3RoZXItbW9kYWwtYmFja2dyb3VuZDojMDAwMDAwNGQ7LS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDA2Oy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLW90aGVyLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLW90aGVyLWJsYWNrLWZyaWRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktc2Vjb25kYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktdGVydGlhcnk6dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tY29sb3Itb3RoZXItY3liZXItbW9uZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMjAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS10ZXJ0aWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMTAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2VhcmNoLWhpZ2hsaWdodC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmxhY2s6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci13aGl0ZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0MS1ub3JtYWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLWExMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0Mi1ib2xkOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1saWdodDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLW5vcm1hbDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtdGhpbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3Mtbm9ybWFsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE5MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nLWxpZ2h0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1YXRlcm5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtYTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtaGVhdnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWExMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYXR0ZW50aW9uOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXBvc2l0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWEyMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLWExMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLWJvbGQ6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcXVpbmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWxpZ2h0OiM0NDhhZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtbm9ybWFsOiM0NDhhZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtYm9sZDojNDQ4YWZmNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWxpZ2h0OiMwMGJjZDQzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItbm9ybWFsOiMwMGJjZDQ0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItYm9sZDojMDBiY2Q0NjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWxpZ2h0OiNlYTgwZmMzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtbm9ybWFsOiNlYTgwZmM0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtYm9sZDojZWE4MGZjNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWxpZ2h0OiNiMzg4ZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtbm9ybWFsOiNiMzg4ZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtYm9sZDojYjM4OGZmNjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtbGlnaHQ6I2YyMzY0NTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLW5vcm1hbDojZjIzNjQ1NGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtYm9sZDojZjIzNjQ1NjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItbGlnaHQ6I2ZmNDA4MTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLW5vcm1hbDojZmY0MDgxNGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItYm9sZDojZmY0MDgxNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1saWdodDojYjhiOGI4MzM7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1ub3JtYWw6I2I4YjhiODRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtYm9sZDojYjhiOGI4NjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1saWdodDojZmZmMzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLW5vcm1hbDojZmZmZmZmNGQ7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1ib2xkOiNmZmY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWxpZ2h0OiMyMmFiOTQzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMS1ub3JtYWw6IzIyYWI5NDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWJvbGQ6IzIyYWI5NDY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWxpZ2h0OiMyMmFiNjczMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMi1ub3JtYWw6IzIyYWI2NzRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWJvbGQ6IzIyYWI2NzY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWxpZ2h0OiM0Y2FmNTAzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMy1ub3JtYWw6IzRjYWY1MDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWJvbGQ6IzRjYWY1MDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbGlnaHQ6I2ZmOTgwMDMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbm9ybWFsOiNmZjk4MDA0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0xLWJvbGQ6I2ZmOTgwMDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbGlnaHQ6I2ZkZDgzNTMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbm9ybWFsOiNmZGQ4MzU0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0yLWJvbGQ6I2ZkZDgzNTY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbGlnaHQ6I2ZmOTgwMDFhOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbm9ybWFsOiNmZjk4MDAzMzstLWNvbG9yLW92ZXJsYXktd2FybmluZy0zLWJvbGQ6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbGlnaHQ6IzJlMmUyZTY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbm9ybWFsOiMyZTJlMmVjYzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0zLWJvbGQ6IzJlMmUyZTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czMtZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMi1kZWZhdWx0OiNhYTYzMjQ7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXplcm8tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12MS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12My1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjctZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTYwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5ldXRyYWw6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2Utczp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14bDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2UteHhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1ib3JkZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14czp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14eGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUteHM6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS03MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUtczp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1sOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14bDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUteHhsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXhzOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1zOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1tOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNzAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1sOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay14bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHhsOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstMjAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1ib3JkZXI6dmFyKC0tY29sb3ItYmVycnktcGluay0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4teHM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hOTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hODAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNzAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14eGw6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLWJvcmRlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXhzOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1zOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1tOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1sOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS14bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHhsOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1ib3JkZXI6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDApOy0tY29sb3ItbWFya2VyLWZsYWdnZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkLWhvdmVyZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWFzazp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc2VsbDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItYnV5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1wcm86dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLXByby1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItcHJvLXBsdXM6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItcHJvLXBsdXMtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItcHJvLXByZW1pdW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItcHJvLXByZW1pdW0taG92ZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItdHJpYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10cmlhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLW1vZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItbW9kLWhvdmVyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLWJyb2tlci1mZWF0dXJlZC1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy10cmlnZ2VyZWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfQ=="}},"time_used":5,"timings":{"blocked":-1,"dns":3,"connect":1,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/54681.a717110e6749f307ed6d.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.240Z","timestamp":1785154590240,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/54681.a717110e6749f307ed6d.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a041685-15e\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 13 May 2026 06:13:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.52\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/13/2026 09:56:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f2d8e2eeb8b7e6b0a5b731c0d72b79a0\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":350,"size_decoded":954,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (350), with no line terminators","md5":"f2e28dcef513e7329db6a3a69720bb48","sha1":"d2b0bc2f96723e3d74402c72a78a9a449405c692","sha256":"b2adba47f3ef9121bd8fb32842dcca6edcc4b9e36084de7724ef7244f6b03640","sha512":"97e9c6797a664f80308677fd34c5ddaafe0f74b206038c67761074bc9062d4439f8bd8aaae50193cd70d06f3baa8f30eb1fad236115eb4cda845f8dc922c1e2f","ssdeep":"","tlshash":"60e08cc3f0c6000444a341329c00b738fdaf98588b836ea4805e77304b166cf3b30dae","first_seen":"2026-05-13T13:23:52.95015Z","last_seen":"2026-07-27T14:22:59.652429Z","times_seen":2189,"resource_available":false,"data":"LmktaGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmktaW52aXNpYmxle3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudH0uaS1hbGlnbl9sZWZ0e3RleHQtYWxpZ246c3RhcnQhaW1wb3J0YW50fS5pLWFsaWduX3JpZ2h0e3RleHQtYWxpZ246ZW5kIWltcG9ydGFudH0uaS1hbGlnbl9jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS5pLWZsb2F0X2xlZnR7ZmxvYXQ6aW5saW5lLXN0YXJ0IWltcG9ydGFudH0uaS1mbG9hdF9yaWdodHtmbG9hdDppbmxpbmUtZW5kIWltcG9ydGFudH0uaS1mbG9hdF9ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5pLW5vLWJyZWFre3doaXRlLXNwYWNlOm5vd3JhcH0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/44031.2691fc2c3468293bfd16.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.527Z","timestamp":1785154590527,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/44031.2691fc2c3468293bfd16.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1ff-90\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:17:35 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4649e4cae8bb7c7aa0d801943ae2b407\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":144,"size_decoded":886,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"669466b98876123099594e1a8ff0556e","sha1":"f7b7d85273ef4a6de745e7d1977d6eaeb4e25f41","sha256":"634134c6e0cfe9953231051ead0975df8ee84bfbd6df8222218fdea0f1b04497","sha512":"ecd87db6f1f0eb9c5d7b76d4b2a7f4dbff140856b0addb002e166951b7c534f59c42c8acf7638bb7b769ecbb39022454b989196dfe7b376e759e63163119856f","ssdeep":"","tlshash":"48c02b8871c0302aba0f312ac33cc55830301940ec001f6a992de4f288c0fda13e2f39","first_seen":"2026-07-23T14:00:31.42266Z","last_seen":"2026-07-27T14:22:59.638756Z","times_seen":364,"resource_available":false,"data":"LnNlcGFyYXRvci1LSHR5TVRZR3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtZGl2aWRlci1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yKSk7aGVpZ2h0OjFweDttYXJnaW46NnB4IDB9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCUSDT.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.844Z","timestamp":1785154591844,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCUSDT.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"persimmontrades.com/frontmain/img/slider_bg2.jpg","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.343Z","timestamp":1785154589343,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/slider_bg2.jpg HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 140505\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":140505,"size_decoded":140773,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 1920x900, components 3","md5":"9619cfcb08a6e42a20eea3b0a7613b64","sha1":"26f3ba0327634b2ad99d4a94ca76399e2ebf297d","sha256":"712fdd57c3c6276274db8d4cbd78bc2f3837d6c69f53d0c1f410d9ee1f0c4ef7","sha512":"8a8bfa92010b8b55ea3d87a5bc44406b7fb13001e2f5d1c448a3f5cfd9f77663c04dc9a20dfc946b9c51db703b89d6623165bbf5df88871c6556b098f5e4fae2","ssdeep":"3072:d9xZ+p9p876TfHaCL0NuL6+NTporx6Nw3cdkSm+Rt0jv:dTZ+TpnEN66+NTAx3MdkCUjv","tlshash":"bfd312ba2bc7af05ebecc635163378735dfb2d6806118ad64596e825330c3a037352b6","first_seen":"2025-07-30T23:06:04.113391Z","last_seen":"2026-07-27T12:17:29.258953Z","times_seen":6,"resource_available":false,"data":"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lkTSaWs2prr2Hfx+h6871Cqzy3p8nK6cUMaAACyJxeumary43mzh452b31p06963NU56Yc+nJnt098e504arJSlEAxEbKkzudCYs443Dl0d76nbr5v0+nHdZ+3i896fF3fnfo/Ta+P4D1+j6n89879ft9r5/L5vpv1XLykcfo2c/f5/v0995vB8/9fp5nr+ACmvd/L/T8n0fL38fo8m9Ohr4u3nvLZE8V29Pp8eryPv/ADdJnX2vh+505jz/AG9X0Px/OjQWx4b1+713m8nhvT7voHk8HzD3evker84axr5e/wCm/N+nxeur2fR8PNdne/npAMAEAxDEAwAiZ94jZ42eXpXW1uy3n3lwpz5PPXB4dqufZzdeZTOdeeakWpZvO7vO13nV6Ntuq3S1ZShk1kSJElZKLVguXecPbnl6c6N5VKK6ybxk1y046ac26ap04t1wPm/SxeP1SKkqsJb2up6vN6v6HzvQZtklelVlFlOsxS6XXz3fnV2V+Na8a18+l/Pc1coKyBXc1WY2EXLFMTGZntO2udJyyJzSQAz3Pica8vz9WuSywERqBUiLprTnezO75qUMVktZv68+LNeS4+mLUoaCXznpmOw5el6+bs9eV9lOczxdXTfI9PLzno88LGjUBAStbUnGuaJeDwuny/Rt5e+dsJRbLJrENc+508na3ytsBq4AI2UM4HPz3HhwPLz23XrPoejzHq9WmTz/AKfFyNa974foat/P8D6vX9S8PHwXp9/reHn891z63hwS4NZ4O/bg32975/n/ADj1+zm+v86wX33y/wBXzu/xdvH6fNdt3T4nY5boMOp5Tp09Zw+r4P6X5iCZ5fYeP7np+fLyfo9X0Tx+CugvjwHr93tvL4/Der2+48vm+c+3WL0/BdbOP0/onz/V5zv10Tn6Th5rs9d3OgAMAABDEMQxEbM28OPnk8PUvXddOzia5cPGeJw60c+0MdVnVMzmzzjMWmnpNHWat43bm/edurr1rVda7rQtizJyyJElcAqy7xh6883TNGpRrKoK0x9cUMwlrY6Wet81g3OR5/VxfmfRz8elVRLI2dcdz6Pz+36PP0s2ctdzGkiscSlmSyvmtGNacXdz30OHa7O2AERWVWYbyzpobac2cpS9e9tE3IcSUACByGPn/H1VKJWUWZqqssjTLpmtOemzO9GdTJKkLNfXjT1eS5+n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/dqb9ytggghBD/GPW053LOZXJhA2qarMV/yjC6V19+QZkG5P8ltlcTzjHuMiCYgndMI+m97B3ve973vre973vfoHe979evXr0Hb369et/YEEH6DsrQCCCHRRTh48BoH7CndNQQR63tb3ve973v169evW9736Dg7169evXr179evWwQfXr1ve973vaJ9ei5x+7E37uRPsOaQgh+of2HvLcs5JzCad9ltyqGV4KBoTULWImxLsU3EMwwxclWN2Au8QyBFnKhNTU5FNIO9l29+g/wB+/fv2H+vQO97Lvfr16369+vRf79+vXsO9B3rewR9SNDofQdk73vYcHb2ST3tb2Hb369evW9kkhMQQRRPr169evXr16D/fv379+/fv169evYkEnyfJ8nyfL8pk+QPDgQt73vvewd7Jc4u9+v0MTfu9PcZGSRuagh+of2FZfMch5I208r8duSHJv+1/1zkHZIZEZJ2QfkXXnTNsQX6MnHc/m+fUJeGciYgXJyH1PRIO+wh0APo79WgPPnz5A0B2EFve972DsH162DvbnevW/XoP9ei72H+/fr169ew/379+/fv3621MTeinku9+/Yf69ei/2JPl+T5fl+USiQO9enPMny/L8vy/N8xm+b5myMLUEOj9B9B2U5O6H6WJv3epjJJC+FMQQ/xrkvIsu17mvjsXvw48VDUZMbklp87J7UDy9BMiIZFZlBtA5RlviHJGogpoA1rXRAb58+fPkN0B9CNa15158615DfPnz58+da1oLZPr169evXr379+w7Zc94f636L/kEvy/IX/L8wlD/XouLw/5PZeZDKJWyegWpib05SFzvZf7Dg71t53veyfXoOjLe3o96IJ2emCNsTWNAA1rzryBrWgNeS0tLDGGEfdib95FOntgZC1gH6x/ZzJ+UsQYzcoOWlycUcGDr8ej40OMHBWcJEGQ3sRLCyMJ1gKJthzmY2emeI8rDymod61rWta1rWtfbWta1rWta1rWtLS0tBbJc72HhwO9l/v37Y4uc+WRsjXei57vXv37c903zRyRkdO+gBBRQUaCampib05Sp48lvhjAzx4cwRiL4vidEYviETI2s8eHR/EIvi+IxOiERi+KOJkbGAAAa1ojrWkBrRGvPny8fdiH3kUy8wsjDUP1j+z/ANJvVql67ekbTZGyA2YrUVkRw1Ip/nbFZpF0h/Cf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"}},"time_used":112,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":105,"receive":7,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_market_overview_widget.96429594954f17872c5a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.306Z","timestamp":1785154590306,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/embed_market_overview_widget.96429594954f17872c5a.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-8b25\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fc6ef96f4d50fc0f1b42b444c9d0d773\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":35621,"size_decoded":11810,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (4251)","md5":"03bc89731b32b1acbc599b78c5ad4624","sha1":"40392222483220f8536bcd1e283521ad2276d808","sha256":"11c7ad45c015a6203aa5c872605633fa14d2a2a7e0374ae87d02988e959caaea","sha512":"d303fa5207ebaf243084c56a4a0a0928c92b1e96eec9a382612a311e9536765be8a58a894568b60b7f7cb8f9a35c74aac9dff6cfc41e2cf5bc9ce659663d1e05","ssdeep":"768:wrxJjBy63DjsTJbYTbsTieTbvsUWiHNoSB5dg6N6z45YKY8ziB5/UIpi0WxAoFTc:8xJY62ddA3KHlm1J7Th","tlshash":"b3f2b731f12028ae02ea439b54751303d1532e8cf566e9ecbd79acdd570c9c8a2b6e7d","first_seen":"2026-07-24T21:01:56.866569Z","last_seen":"2026-07-27T14:22:59.72105Z","times_seen":215,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNDQzMzZdLHs5Mjc5OTModCxlLHMpe3MoNzk1MzgzKTt2YXIgaT1zKDEzODYzOCksbz1zKDU0Nzg1MSksYT0ocyg3MjI1NzEpLHMoNTU1MTg3KSksbD1zKDc1MTU1Nyksbj1zKDYwMTU4Nykscj1zKDEwMjUzKSxoPXMoNzMyMTE4KSxkPXMoMjM0MzEpLGc9cygxMTgwNTYpLGM9cyg0Mjk1NDkpLG09KHMoODU1NzQyKSxzKDgwMDI3NCkscyg0ODUyMTApLHMoOTE0NDg3KSksdz1zLm4obSksYj0ocyg0ODI1MDQpLHMoNDkxODYpLHMoNTA1NTYpKSxwPXMoMTM0NjcpLHU9cygyMTg4MTQpLEM9cygyMjEwNjEpLF89cyg2NzgzMTIpLHk9cyg4Mzc4MjIpLHY9cyg5ODYyNzUpLGY9cyg2MTM2MjYpLGs9cyg4OTg3MTgpLEw9cyg4NzM1NzMpLFM9cyg5MTEzMjcpLFQ9cyg4MDI1ODYpLEY9cyg4NTE0NTgpLGo9cygxNTAxNTApLE09cyg0NzAwOTApLFA9cygyODQ0ODQpLEQ9cyg1NjM5MTgpLCQ9cygzMDY5MCksTj1zKDE4MDE5OCksVz1zKDQ4ODA1KSxCPXMoMjMyMzY0KSxFPXMoMzA4ODEwKSxxPXMoNzczMDg4KSxVPXMoOTMwNTY2KSx4PXMoNzI4MzEyKSxBPXMoOTYzMDk4KSxIPShzKDI4OTUwOCkscyg1NTUxMzcpLHMoNDgyNTA0KSksTz1zKDQ5MTg2KTtjb25zdCBSPSgwLEMuZ2V0TG9nZ2VyKSgiV2lkZ2V0V2F0Y2hsaXN0IiksST1bInN5bWJvbEFjdGl2ZUNvbG9yIiwic3ltYm9sU2hvcnROYW1lQ29sb3IiLCJzeW1ib2xEZXNjcmlwdGlvbkNvbG9yIiwic3ltYm9sU2VwYXJhdG9yQ29sb3IiLCJ0YWJBY3RpdmVDb2xvciIsInRhYkluYWN0aXZlQ29sb3IiLCJ0YWJTbGlkZXJDb2xvciIsImNoYW5nZVVwQ29sb3IiLCJjaGFuZ2VEb3duQ29sb3IiLCJjaGFuZ2VOZXV0cmFsQ29sb3IiLCJsYXN0Q29sb3IiLCJsYXN0R3Jvd2luZ0ZsYXNoQ29sb3IiLCJsYXN0RmFsbGluZ0ZsYXNoQ29sb3IiXSxHPVsicGxvdExpbmVDb2xvciIsInBsb3RMaW5lQ29sb3JHcm93aW5nIiwicGxvdExpbmVDb2xvckZhbGxpbmciLCJncmlkTGluZUNvbG9yIiwic2NhbGVGb250Q29sb3IiLCJiZWxvd0xpbmVGaWxsQ29sb3JHcm93aW5nIiwiYmVsb3dMaW5lRmlsbENvbG9yRmFsbGluZyIsImJlbG93TGluZUZpbGxDb2xvckdyb3dpbmdCb3R0b20iLCJiZWxvd0xpbmVGaWxsQ29sb3JGYWxsaW5nQm90dG9tIiwibGFzdFByaWNlTGluZUNvbG9yIiwibGFzdFByaWNlTGluZUNvbG9yR3Jvd2luZyIsImxhc3RQcmljZUxpbmVDb2xvckZhbGxpbmciXTt2YXIgejshZnVuY3Rpb24odCl7dC5DaGFydD0iLmpzLWNoYXJ0Iix0LlN5bWJvbD0iLmpzLXF1b3RlLXRpY2tlciIsdC5TeW1ib2xXcmFwcGVyPSIuanMtc3ltYm9scy13cmFwcGVyIix0LkNsYXNzU3ltYm9sQWN0aXZlPSJ0di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIHR2LXdpZGdldC13YXRjaC1saXN0X19yb3ctLWhpZ2hsaWdodGVkIn0oenx8KHo9e30pKTtjbGFzcyBWe2NvbnN0cnVjdG9yKHQsZSl7aWYodGhpcy5fc3ltYm9scz1bXSx0aGlzLl9jaGFydD1udWxsLHRoaXMuX3N5bWJvbD1udWxsLHRoaXMuX3N0YXJ0ZWQ9ITEsdGhpcy5faGFzRGF0YVByb21pc2U9bnVsbCx0aGlzLl9kZXN0cm95RmxvYXRpbmdUb29sdGlwPW51bGwsdCYmdC5sZW5ndGh8fChSLmxvZ0Vycm9yKCJgJGVsYCBpcyByZXF1aXJlZCIpLCgwLGkuYXNzZXJ0KShCb29sZWFuKHQmJnQubGVuZ3RoKSwiYCRlbGAgaXMgcmVxdWlyZWQiKSksdGhpcy4kZWw9dCx0aGlzLiRjaGFydD10LmZpbmQoIi5qcy1jaGFydCIpLmVxKDApLHRoaXMuJHN5bWJvbHNXcmFwcGVyPXQuZmluZCgiLmpzLXN5bWJvbHMtd3JhcHBlciIpLmVxKDApLHRoaXMuaGFzQ2hhcnQ9ISF0aGlzLiRjaGFydC5sZW5ndGgsdGhpcy5zZXR0aW5ncz10aGlzLnRyYW5zZmVyU2V0dGluZ3MoZSksdGhpcy5zaG93RGF0YU1vZGU9ISghMT09PXRoaXMuc2V0dGluZ3Muc2hvd0RhdGFNb2RlKSx0aGlzLnNob3dNYXJrZXRTdGF0dXM9ISghMT09PXRoaXMuc2V0dGluZ3Muc2hvd01hcmtldFN0YXR1cyksdGhpcy5jaGFydENvbG9yTWFwPXRoaXMuc2V0dGluZ3MuY2hhcnRDb2xvck1hcCx0aGlzLndpZGdldENvbG9yQ2xhc3NNYXA9dGhpcy5zZXR0aW5ncy53aWRnZXRDb2xvckNsYXNzTWFwLCJob3RsaXN0cyI9PT10aGlzLnNldHRpbmdzLndpZGdldE5hbWV8fHRoaXMuc2V0dGluZ3MuaXNFbWJlZFdpZGdldCl7dGhpcy5fc3ltYm9scz10aGlzLiRlbC5kYXRhKCJzeW1ib2xzIik7dGhpcy4kZWwuZmluZCgiLmpzLXN5bWJvbHMtd3JhcHBlciIpLmZpbmQoIi5qcy1zeW1ib2xzLWJvZHkiKS5hcHBlbmQodGhpcy5fcmVuZGVyUGFnZSgpKX10aGlzLnNldHRpbmdzLmlzRW1iZWRXaWRnZXQmJnRoaXMuYWRqdXN0VG9BdmFpbGFibGVTaXplcygpLHRoaXMuc3RhcnQoKX1kZXN0cm95KCl7dGhpcy5fZGVzdHJveUZsb2F0aW5nVG9vbHRpcD8uKCl9dHJhbnNmZXJTZXR0aW5ncyh0KXtjb25zdCBlPXQudXRtSW5mbz9ILnBhcmFtKHQudXRtSW5mbyk6dm9pZCAwO2xldCBzO2lmKHQubGFyZ2VDaGFydFVybCl7cz10LmxhcmdlQ2hhcnRVcmw7cy5tYXRjaCgvXmh0dHBzPzpcL1wvLyl8fChzPSJodHRwOi8vIitzKX1yZXR1cm57Y2hhcnRDb2xvck1hcDpPYmplY3QuYXNzaWduKHt9LHRoaXMuZGVmYXVsdENoYXJ0Q29sb3JzLHQuY2hhcnRDb2xvck1hcCksY3VzdG9tZXI6dC5jdXN0b21lcixkYXRlUmFuZ2U6dC5kYXRlUmFuZ2UsZGF0ZVJhbmdlT3B0aW9uczp0LmRhdGVSYW5nZU9wdGlvbnMsZGlzYWJsZUxhc3RGYWxsaW5nRmxhc2g6Qm9vbGVhbih0LmRpc2FibGVMYXN0RmFsbGluZ0ZsYXNoKSxkaXNhYmxlTGFzdEdyb3dpbmdGbGFzaDpCb29sZWFuKHQuZGlzYWJsZUxhc3RHcm93aW5nRmxhc2gpLGhpZGVBYnNvbHV0ZUNoYW5nZTpCb29sZWFuKHQuaGlkZUFic29sdXRlQ2hhbmdlKSxpbmRleE5hbWVCb2xkOnQuaW5kZXhOYW1lQm9sZCxpbmRleE5vbkNsaWNrYWJsZTp0LmluZGV4Tm9uQ2xpY2thYmxlLGlzRW1iZWRXaWRnZXQ6dC5pc0VtYmVkV2lkZ2V0LGxhcmdlQ2hhcnRVcmw6cyxub0xpbmtzOnQubm9MaW5rcywKb25seURlc2NyaXB0aW9uOnQub25seURlc2NyaXB0aW9uLHBhaW50TGFzdFdpdGhDaGFuZ2VDb2xvcnM6Qm9vbGVhbih0LnBhaW50TGFzdFdpdGhDaGFuZ2VDb2xvcnMpLHNob3dEYXRhTW9kZTp0LnNob3dEYXRhTW9kZSxzaG93TWFya2V0U3RhdHVzOnQuc2hvd01hcmtldFN0YXR1cyxzaG93VGl0bGVzOnQuc2hvd1RpdGxlcyx0cmFkaW5ndmlld0Jhc2VVcmw6dC50cmFkaW5ndmlld0Jhc2VVcmwsdXRtU3RyaW5naWZpZWQ6ZSx2YWx1ZUJvbGQ6dC52YWx1ZUJvbGQsdmFsdWVUaXRsZU1hcmtlZDp0LnZhbHVlVGl0bGVNYXJrZWQsd2lkZ2V0Q29sb3JDbGFzc01hcDpPYmplY3QuYXNzaWduKHt9LHQud2lkZ2V0Q29sb3JDbGFzc01hcCksd2lkZ2V0TmFtZTp0LndpZGdldE5hbWUsc2hvd1N5bWJvbExvZ286dC5zaG93U3ltYm9sTG9nbyxsb2NhbGU6dC5sb2NhbGUsc2hvd0Zsb2F0aW5nVG9vbHRpcDp0LnNob3dGbG9hdGluZ1Rvb2x0aXAsY29sb3JUaGVtZTp0LmNvbG9yVGhlbWUsdXRtSW5mbzp7dXRtX2NhbXBhaWduOnQudXRtSW5mbz8udXRtX2NhbXBhaWduLHV0bV9tZWRpdW06dC51dG1JbmZvPy51dG1fbWVkaXVtLHV0bV9zb3VyY2U6dC51dG1JbmZvPy51dG1fc291cmNlfX19Z2V0ICRzeW1ib2xzKCl7cmV0dXJuIHRoaXMuJGVsLmZpbmQoIi5qcy1xdW90ZS10aWNrZXIiKX1zZXQgc3ltYm9scyh0KXtsZXQgZSxzO2NvbnN0IGk9dGhpcy5fc3ltYm9scy5tYXAoKHQ9PnQucykpLG89dC5tYXAoKHQ9PnQucykpLGE9KHQscyk9PkgocykuZGF0YSgic3ltYm9sIik9PT1lO2lmKGkmJmkudG9TdHJpbmcoKSE9PW8udG9TdHJpbmcoKSl7Y29uc3QgbD17fSxuPVtdLHI9W107Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0Kyspe2U9aVt0XTtjb25zdCByPW8uaW5kZXhPZihlKSxoPXQsZD10aGlzLiRzeW1ib2xzLmZpbHRlcihhKTtyIT09aCYmbi5wdXNoKGUpLC0xPT09cj8odGhpcy5fc3RvcFN5bWJvbFJvdyhkKSx0aGlzLl9zeW1ib2w9PT1lJiYocz1vW2hdKSk6bFtlXT1kLmRldGFjaCgpfWNvbnN0IGg9dGhpcy4kZWwuZmluZCgiLmpzLXN5bWJvbHMtd3JhcHBlciIpLmZpbmQoIi5qcy1zeW1ib2xzLWJvZHkiKTtoLmVtcHR5KCksdGhpcy5zZXR0aW5ncy5zaG93VGl0bGVzJiZoLmFwcGVuZCh0aGlzLl9yZW5kZXJUaXRsZSgpKSxvLmZvckVhY2goKHQ9Pnt0IGluIGw/aC5hcHBlbmQobFt0XSk6KG4ucHVzaCh0KSxyLnB1c2godCksdGhpcy5fcmVuZGVyU3ltYm9sKHtzOnR9KSkscyYmcz09PXQmJih0aGlzLnN5bWJvbD1zKX0pKSx0aGlzLl9zeW1ib2xzPXQsdGhpcy4kc3ltYm9scy5lYWNoKCgodCxlKT0+e2NvbnN0IHM9SChlKSxpPXMuZGF0YSgic3ltYm9sIik7LTEhPT1uLmluZGV4T2YoaSkmJihzLmFkZENsYXNzKCJ0di1zaXRlLXRhYmxlX19yb3ctLXVwZGF0ZWQiKSxzZXRUaW1lb3V0KCgoKT0+cy5yZW1vdmVDbGFzcygidHYtc2l0ZS10YWJsZV9fcm93LS11cGRhdGVkIikpLDIqdS5kdXIpKSwtMSE9PXIuaW5kZXhPZihpKSYmdGhpcy5fc3RhcnRTeW1ib2xSb3cocyl9KSl9fWdldCBkZWZhdWx0Q2hhcnRDb2xvcnMoKXtyZXR1cm57Z3JpZExpbmVDb2xvcjooMCxMLmdlbmVyYXRlQ29sb3IpKGIuY29sb3JzUGFsZXR0ZVsiY29sb3Itd2lkZ2V0LWJvcmRlciJdLDEwMCksc2NhbGVGb250Q29sb3I6KDAsTC5nZW5lcmF0ZUNvbG9yKShiLmNvbG9yc1BhbGV0dGVbImNvbG9yLXRleHQtc2Vjb25kYXJ5Il0pLHBsb3RMaW5lQ29sb3I6KDAsTC5nZW5lcmF0ZUNvbG9yKShiLmNvbG9yc1BhbGV0dGVbImNvbG9yLWJyYW5kIl0pLHBsb3RMaW5lQ29sb3JHcm93aW5nOnZvaWQgMCxwbG90TGluZUNvbG9yRmFsbGluZzp2b2lkIDAsYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZzooMCxMLmdlbmVyYXRlQ29sb3IpKGIuY29sb3JzUGFsZXR0ZVsiY29sb3ItdHYtYmx1ZS01MDAiXSw4MiksYmVsb3dMaW5lRmlsbENvbG9yRmFsbGluZzooMCxMLmdlbmVyYXRlQ29sb3IpKGIuY29sb3JzUGFsZXR0ZVsiY29sb3ItdHYtYmx1ZS01MDAiXSw4MiksYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZ0JvdHRvbTooMCxMLmdlbmVyYXRlQ29sb3IpKGIuY29sb3JzUGFsZXR0ZVsiY29sb3ItdHYtYmx1ZS01MDAiXSwxMDApLGJlbG93TGluZUZpbGxDb2xvckZhbGxpbmdCb3R0b206KDAsTC5nZW5lcmF0ZUNvbG9yKShiLmNvbG9yc1BhbGV0dGVbImNvbG9yLXR2LWJsdWUtNTAwIl0sMTAwKSxsYXN0UHJpY2VMaW5lQ29sb3I6KDAsTC5nZW5lcmF0ZUNvbG9yKShiLmNvbG9yc1BhbGV0dGVbImNvbG9yLWJyYW5kIl0sNTApLGxhc3RQcmljZUxpbmVDb2xvckdyb3dpbmc6dm9pZCAwLGxhc3RQcmljZUxpbmVDb2xvckZhbGxpbmc6dm9pZCAwfX1nZXQgcGFnZVRlbXBsYXRlcygpe3JldHVybntwYWdlOiJcblx0XHRcdFx0e3sjc2hvd1RpdGxlc319XG5cdFx0XHRcdFx0e3s+dGl0bGV9fVxuXHRcdFx0XHR7ey9zaG93VGl0bGVzfX1cblx0XHRcdFx0e3sjc3ltYm9sc319XG5cdFx0XHRcdFx0e3s+c3ltYm9sfX1cblx0XHRcdFx0e3svc3ltYm9sc319IiwKc3ltYm9sOmBcblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3JvdyBqcy1xdW90ZS10aWNrZXIgdHYtc2l0ZS10YWJsZV9fcm93IHt7I3Nob3dDaGFydH19IHR2LXNpdGUtdGFibGVfX3Jvdy0taW50ZXJhY3RpdmUgdHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3Jvdy0taW50ZXJhY3RpdmV7ey9zaG93Q2hhcnR9fXt7I3VwZGF0ZWR9fSB0di1zaXRlLXRhYmxlX19yb3ctLXVwZGF0ZWR7ey91cGRhdGVkfX0iIGRhdGEtc3ltYm9sPSJ7eyBzIH19IiBkYXRhLWRlc2NyaXB0aW9uPSJ7eyBkZXNjcmlwdGlvbiB9fSI+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz0idHYtc2l0ZS10YWJsZV9fY29sdW1uIHR2LXdpZGdldC13YXRjaC1saXN0X19tYWluLWNvbHVtbnt7I3N5bWJvbENvbHVtbkNsYXNzfX0ge3tzeW1ib2xDb2x1bW5DbGFzc319e3svc3ltYm9sQ29sdW1uQ2xhc3N9fSI+XG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9faWNvbiBqcy1zeW1ib2wtbG9nbyI+XG5cdFx0XHRcdFx0XHRcdCR7dGhpcy5zZXR0aW5ncy5zaG93U3ltYm9sTG9nbyYmKDAseS5nZXRDaXJjbGVMb2dvQW55SHRtbCkoe2xvZ29VcmxzOltdLHNpemU6Im1lZGl1bSIKfSl9XG5cdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0X19uYW1lIj5cblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpY2tlciI+XG5cdFx0XHRcdFx0XHRcdFx0e3tebm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0XHQ8YVxuXHRcdFx0XHRcdFx0XHRcdFx0XHRocmVmPSJ7e15sYXJnZUNoYXJ0VXJsfX17eyBzeW1ib2xVcmwgfX17ey9sYXJnZUNoYXJ0VXJsfX17eyNsYXJnZUNoYXJ0VXJsfX17eyBsYXJnZUNoYXJ0VXJsIH19e3svbGFyZ2VDaGFydFVybH19IlxuXHRcdFx0XHRcdFx0XHRcdFx0XHR7eyNpc0VtYmVkV2lkZ2V0fX10YXJnZXQ9Il9ibGFuayJ7ey9pc0VtYmVkV2lkZ2V0fX1cblx0XHRcdFx0XHRcdFx0XHR7ey9ub0xpbmtzfX1cblx0XHRcdFx0XHRcdFx0XHR7eyNub0xpbmtzfX1cblx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuXG5cdFx0XHRcdFx0XHRcdFx0e3svbm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGRhdGEtc3ltYm9sPSJ7eyBzIH19IlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz0iXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3Nob3J0LW5hbWVcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRhcHBseS1vdmVyZmxvdy10b29sdGlwXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0anMtc3ltYm9sLWxpbmtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR7eyNpbmRleE5hbWVCb2xkfX10di13aWRnZXQtd2F0Y2gtbGlzdF9fc2hvcnQtbmFtZS0tYm9sZHt7L2luZGV4TmFtZUJvbGR9fVxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHt7I25vTGlua3N9fXR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lLS1ub3QtY2xpY2thYmxle3svbm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sjb25seURlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lLS13aG9sZS1oZWlnaHRcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHt7XmRlc2NyaXB0aW9ufX1qcy1zeW1ib2wtZGVzY3JpcHRpb24tbmFtZXt7L2Rlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHt7I2Rlc2NyaXB0aW9uQ2xhc3N9fXt7ZGVzY3JpcHRpb25DbGFzc319e3svZGVzY3JpcHRpb25DbGFzc319XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3svb25seURlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR7e15vbmx5RGVzY3JpcHRpb259fVxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sjc2hvcnROYW1lQ2xhc3N9fXt7c2hvcnROYW1lQ2xhc3N9fXt7L3Nob3J0TmFtZUNsYXNzfX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR7ey9vbmx5RGVzY3JpcHRpb259fVxuXHRcdFx0XHRcdFx0XHRcdFx0XHQiXG5cdFx0XHRcdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHt7Xm9ubHlEZXNjcmlwdGlvbn19e3sgc2hvcnROYW1lIH19e3svb25seURlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0e3sjb25seURlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR7eyNkZXNjcmlwdGlvbn19e3sgZGVzY3JpcHRpb24gfX17ey9kZXNjcmlwdGlvbn19XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHt7L29ubHlEZXNjcmlwdGlvbn19XG5cdFx0XHRcdFx0XHRcdFx0e3tebm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2E+XG5cdFx0XHRcdFx0XHRcdFx0e3svbm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0e3sjbm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0XHRcdFx0e3svbm9MaW5rc319XG5cdFx0XHRcdFx0XHRcdFx0e3sjc2hvd0RhdGFNb2RlfX1cblx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1kYXRhLW1vZGUtLXdhdGNoLWxpc3QganMtZGF0YS1tb2RlIj48L3NwYW4+XG5cdFx0XHRcdFx0XHRcdFx0e3svc2hvd0RhdGFNb2RlfX1cblx0XHRcdFx0XHRcdFx0XHR7eyNzaG93TWFya2V0U3RhdHVzfX1cblx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1tYXJrZXQtc3RhdHVzLS13YXRjaC1saXN0IGpzLW1hcmtldC1zdGF0dXMiPjwvc3Bhbj5cblx0XHRcdFx0XHRcdFx0XHR7ey9zaG93TWFya2V0U3RhdHVzfX1cblx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdHt7Xm9ubHlEZXNjcmlwdGlvbn19XG5cdFx0XHRcdFx0XHRcdDxkaXY+XG5cdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0X19kZXNjcmlwdGlvbnt7XmlzRW1iZWRXaWRnZXR9fSB0di13aWRnZXQtd2F0Y2gtbGlzdF9fZGVzY3JpcHRpb24tLXVwcGVyY2FzZXt7L2lzRW1iZWRXaWRnZXR9fSBhcHBseS1vdmVyZmxvdy10b29sdGlwe3teZGVzY3JpcHRpb259fSBqcy1zeW1ib2wtZGVzY3JpcHRpb24tbmFtZXt7L2Rlc2NyaXB0aW9ufX17eyNkZXNjcmlwdGlvbkNsYXNzfX0ge3tkZXNjcmlwdGlvbkNsYXNzfX17ey9kZXNjcmlwdGlvbkNsYXNzfX0iPlxuXHRcdFx0XHRcdFx0XHRcdFx0e3sjZGVzY3JpcHRpb259fXt7IGRlc2NyaXB0aW9uIH19e3svZGVzY3JpcHRpb259fXt7XmRlc2NyaXB0aW9ufX0mbmJzcDt7ey9kZXNjcmlwdGlvbn19XG5cdFx0XHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0e3svb25seURlc2NyaXB0aW9ufX1cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW4gdHYtc2l0ZS10YWJsZV9fY29sdW1uIHR2LXNpdGUtdGFibGVfX2NvbHVtbi0tYWxpZ25fcmlnaHQgdHYtc2l0ZS10YWJsZV9fY29sdW1uLS1sYXN0LXBob25lLXZlcnRpY2Fse3sjc3ltYm9sQ29sdW1uQ2xhc3N9fSB7e3N5bWJvbENvbHVtbkNsYXNzfX17ey9zeW1ib2xDb2x1bW5DbGFzc319Ij5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0LXdyYXAiPlxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdHt7I3ZhbHVlQm9sZH19IHR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0LS1ib2xke3svdmFsdWVCb2xkfX17eyNsYXN0Q2xhc3N9fSB7e2xhc3RDbGFzc319e3svbGFzdENsYXNzfX17eyNsYXN0RGlyZWN0aW9ufX0ganMtc3ltYm9sLWNoYW5nZS1kaXJlY3Rpb257ey9sYXN0RGlyZWN0aW9ufX0ganMtc3ltYm9sLWxhc3QgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCI+XG5cdFx0XHRcdFx0XHRcdFx0e3sjbGFzdH19e3sgbGFzdCB9fXt7L2xhc3R9fXt7Xmxhc3R9fSZuYnNwO3t7L2xhc3R9fVxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZXt7I2hpZGVBYnNvbHV0ZUNoYW5nZX19IHR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtLXdob2xlLWhlaWdodHt7L2hpZGVBYnNvbHV0ZUNoYW5nZX19IGFwcGx5LW92ZXJmbG93LXRvb2x0aXAganMtc3ltYm9sLWNoYW5nZS1kaXJlY3Rpb24iPlxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS1pbmxpbmV7eyNoaWRlQWJzb2x1dGVDaGFuZ2V9fSB0di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZS0td2hvbGUtaGVpZ2h0e3svaGlkZUFic29sdXRlQ2hhbmdlfX0ganMtc3ltYm9sLWNoYW5nZS1wdCI+XG5cdFx0XHRcdFx0XHRcdFx0e3sjY2hhbmdlX3B0fX17eyBjaGFuZ2VfcHQgfX17ey9jaGFuZ2VfcHR9fXt7XmNoYW5nZV9wdH19Jm5ic3A7e3svY2hhbmdlX3B0fX1cblx0XHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0XHR7e15oaWRlQWJzb2x1dGVDaGFuZ2V9fVxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS1pbmxpbmUganMtc3ltYm9sLWNoYW5nZSI+XG5cdFx0XHRcdFx0XHRcdFx0e3sjY2hhbmdlfX17eyBjaGFuZ2UgfX17ey9jaGFuZ2V9fXt7XmNoYW5nZX19Jm5ic3A7e3svY2hhbmdlfX1cblx0XHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0XHR7ey9oaWRlQWJzb2x1dGVDaGFuZ2V9fVxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PmAsCnRpdGxlOidcblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtc2l0ZS10YWJsZV9fcm93IGpzLXN5bWJvbHMtdGl0bGVzIj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di1zaXRlLXRhYmxlX19jb2x1bW4gdHYtd2lkZ2V0LXdhdGNoLWxpc3RfX21haW4tY29sdW1uIHR2LXdpZGdldC13YXRjaC1saXN0X19tYWluLWNvbHVtbi0tdGl0bGUiPlxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX25hbWUiPlxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpdGxlIHR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lLS13aG9sZS1oZWlnaHQgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCI+SW5kZXg8L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fcXVvdGUtY29sdW1uIHR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW4tLXRpdGxlIHR2LXNpdGUtdGFibGVfX2NvbHVtbiB0di1zaXRlLXRhYmxlX19jb2x1bW4tLWFsaWduX3JpZ2h0IHR2LXNpdGUtdGFibGVfX2NvbHVtbi0tbGFzdC1waG9uZS12ZXJ0aWNhbCI+XG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdCBhcHBseS1vdmVyZmxvdy10b29sdGlwIHR2LXdpZGdldC13YXRjaC1saXN0X190aXRsZSI+XG5cdFx0XHRcdFx0XHRcdFZhbHVle3sjdmFsdWVUaXRsZU1hcmtlZH19Knt7L3ZhbHVlVGl0bGVNYXJrZWR9fVxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlIHR2LXdpZGdldC13YXRjaC1saXN0X190aXRsZSBhcHBseS1vdmVyZmxvdy10b29sdGlwIj5cblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5lIj5DaGFuZ2U8L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+J319c2V0IHN5bWJvbCh0KXtpZih0aGlzLl9zeW1ib2w9dCx0aGlzLl9jaGFydCYmdGhpcy5fY2hhcnQuY2hhbmdlU3ltYm9sKHQsdGhpcy5fZ2V0U2VyaWVzT3B0aW9ucygpKSx0aGlzLmhhc0NoYXJ0KXtjb25zdCBlPXcoKSgidHYtc2l0ZS10YWJsZV9fcm93LS1oaWdobGlnaHRlZCB0di13aWRnZXQtd2F0Y2gtbGlzdF9fcm93LS1oaWdobGlnaHRlZCIsdGhpcy53aWRnZXRDb2xvckNsYXNzTWFwLnN5bWJvbEFjdGl2ZUNvbG9yKTt0aGlzLiRzeW1ib2xzLnJlbW92ZUNsYXNzKGUpLmZpbHRlcigoKGUscyk9PkgocykuZGF0YSgic3ltYm9sIik9PT10KSkuYWRkQ2xhc3MoZSl9ZWxzZSB0aGlzLiRzeW1ib2xzLmZpbHRlcigoKGUscyk9PkgocykuZGF0YSgic3ltYm9sIik9PT10KSl9Z2V0IHN5bWJvbCgpe3JldHVybiB0aGlzLl9zeW1ib2x8fCIifXN0YXJ0KCl7dGhpcy5fc3RhcnRlZHx8KHRoaXMuc3ltYm9sfHwodGhpcy5zeW1ib2w9dGhpcy4kc3ltYm9scy5lcSgwKS5kYXRhKCJzeW1ib2wiKSksdGhpcy5oYXNDaGFydCYmKHRoaXMuX2JpbmRTeW1ib2xDbGljaygpLHRoaXMuX3N0YXJ0Q2hhcnQoKSksdGhpcy5fc3RhcnRTeW1ib2xSb3dzKCksdGhpcy5fc3RhcnRlZD0hMCl9c3RvcCgpe3RoaXMuX3N0YXJ0ZWQmJih0aGlzLl91bmJpbmRTeW1ib2xDbGljaygpLHRoaXMuX3N0b3BDaGFydCgpLHRoaXMuX3N0b3BTeW1ib2xSb3dzKCksdGhpcy5fc3RhcnRlZD0hMSl9aGFzRGF0YSgpe2lmKG51bGw9PT10aGlzLl9oYXNEYXRhUHJvbWlzZSl7Y29uc3QgdD1bXTt0aGlzLiRzeW1ib2xzLmVhY2goKChlLHMpPT57Y29uc3QgaT1IKHMpLmRhdGEoIndhdGNobGlzdC13aWRnZXRfX3N5bWJvbC1yb3ciKTt0LnB1c2goaS5oYXNEYXRhKCkpfSkpLHRoaXMuX2hhc0RhdGFQcm9taXNlPVByb21pc2UuYWxsKHQpLnRoZW4oKHQ9PnQuc29tZSgodD0+dCkpKSl9cmV0dXJuIHRoaXMuX2hhc0RhdGFQcm9taXNlfWFkanVzdFRvQXZhaWxhYmxlU2l6ZXMoKXtjb25zdCB0PSgwLGkuZW5zdXJlTm90TnVsbCkoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLXdhdGNobGlzdC13aWRnZXQiKSksZT0oMCxpLmVuc3VyZU5vdE51bGwpKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1xdW90ZS10aWNrZXIiKSk7bGV0IHM9KDAsaS5lbnN1cmVOb3ROdWxsKSh0LnBhcmVudEVsZW1lbnQpLm9mZnNldEhlaWdodC10Lm9mZnNldEhlaWdodCxvPXRoaXMuaGFzQ2hhcnQ/dGhpcy4kY2hhcnRbMF0ub2Zmc2V0SGVpZ2h0OjAsYT10aGlzLiRzeW1ib2xzV3JhcHBlclswXS5vZmZzZXRIZWlnaHQsbD10aGlzLiRzeW1ib2xzV3JhcHBlclswXS5zY3JvbGxIZWlnaHQtYTtpZigwPT09cyYmMD09PWwpcmV0dXJuO2NvbnN0IG49ZS5vZmZzZXRIZWlnaHQ7bGV0IHI9MDtzPjAmJmw+MD9yPU1hdGgubWluKGwscy8yKTpzPDAmJihyPXRoaXMuaGFzQ2hhcnQ/TWF0aC5tYXgoTWF0aC5mbG9vcihzLzIpLG4tYSk6cyksYSs9cixsLT1yLHMtPXIsdGhpcy5oYXNDaGFydCYmKG8rPXMscz0wKSx0aGlzLmhhc0NoYXJ0JiZsPjAmJmw8TWF0aC5mbG9vcihvLzQpJiYoby09bCxhKz1sKSx0aGlzLmhhc0NoYXJ0JiZvPDEwMCYmKGEtPTEwMC1vLG89MTAwKSx0aGlzLiRzeW1ib2xzV3JhcHBlclswXS5zdHlsZS5oZWlnaHQ9YSsicHgiLHRoaXMuaGFzQ2hhcnQmJih0aGlzLiRjaGFydFswXS5zdHlsZS5oZWlnaHQ9bysicHgiKX1fYmluZFN5bWJvbENsaWNrKCl7dGhpcy4kZWwub24oImNsaWNrIiwiLmpzLXF1b3RlLXRpY2tlciIsKHQ9Pnt0aGlzLnN5bWJvbD1IKHQuY3VycmVudFRhcmdldCkuZGF0YSgic3ltYm9sIil9KSl9X3VuYmluZFN5bWJvbENsaWNrKCl7dGhpcy4kZWwub2ZmKCJjbGljayIsIi5qcy1xdW90ZS10aWNrZXIiKX1fZ2V0U3ltYm9sRGF0YVRvUmVuZGVyKHQpe2xldCBlLHM7Y29uc3QgaT0oMCxGLnRva2VuaXplKSh0LnMpO2lmKCgwLEYuaXNTcHJlYWQpKGkpKXtlPSgwLEYuc2hvcnROYW1lRnJvbVRva2VucykoaSkKO2NvbnN0IHQ9aS5maW5kKCh0PT4ic3ltYm9sIj09PXQudHlwZSkpPy52YWx1ZTtzPXQ/LnNwbGl0KCI6IilbMF18fCIifWVsc2VbcyxlXT10LnMuc3BsaXQoIjoiKTtjb25zdCBvPXQudHx8ZSxhPXRoaXMuc2V0dGluZ3MubGFyZ2VDaGFydFVybCYmKDAsUy5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKHRoaXMuc2V0dGluZ3MubGFyZ2VDaGFydFVybCx7c2hvcnROYW1lOmUsZXhjaGFuZ2U6c30pfHwiIixsPSgwLFMubWFrZVN5bWJvbFBhZ2VVcmwpKHtzaG9ydE5hbWU6ZSxleGNoYW5nZTpzfSx0aGlzLnNldHRpbmdzLnV0bUluZm8pLG49dC5kO3JldHVybntzOnQucyxkZXNjcmlwdGlvbjpuLGV4Y2hhbmdlOnMsc2hvcnROYW1lOm8sc3ltYm9sVXJsOmwsc2hvd0NoYXJ0OnRoaXMuaGFzQ2hhcnQsb25seURlc2NyaXB0aW9uOnRoaXMuc2V0dGluZ3Mub25seURlc2NyaXB0aW9uLGlzRW1iZWRXaWRnZXQ6dGhpcy5zZXR0aW5ncy5pc0VtYmVkV2lkZ2V0LHV0bVN0cmluZ2lmaWVkOnRoaXMuc2V0dGluZ3MudXRtU3RyaW5naWZpZWQsbGFyZ2VDaGFydFVybDphLHRyYWRpbmd2aWV3QmFzZVVybDp0aGlzLnNldHRpbmdzLnRyYWRpbmd2aWV3QmFzZVVybCxzaG93RGF0YU1vZGU6dGhpcy5zaG93RGF0YU1vZGUsc2hvd01hcmtldFN0YXR1czp0aGlzLnNob3dNYXJrZXRTdGF0dXMsaW5kZXhOYW1lQm9sZDp0aGlzLnNldHRpbmdzLmluZGV4TmFtZUJvbGQsdmFsdWVCb2xkOnRoaXMuc2V0dGluZ3MudmFsdWVCb2xkLHNob3J0TmFtZUNsYXNzOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcC5zeW1ib2xTaG9ydE5hbWVDb2xvcixkZXNjcmlwdGlvbkNsYXNzOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcC5zeW1ib2xEZXNjcmlwdGlvbkNvbG9yLHN5bWJvbENvbHVtbkNsYXNzOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcC5zeW1ib2xTZXBhcmF0b3JDb2xvcixsYXN0Q2xhc3M6dGhpcy53aWRnZXRDb2xvckNsYXNzTWFwLmxhc3RDb2xvcixsYXN0RGlyZWN0aW9uOnRoaXMuc2V0dGluZ3MucGFpbnRMYXN0V2l0aENoYW5nZUNvbG9ycyxoaWRlQWJzb2x1dGVDaGFuZ2U6dGhpcy5zZXR0aW5ncy5oaWRlQWJzb2x1dGVDaGFuZ2Usbm9MaW5rczp0aGlzLnNldHRpbmdzLm5vTGlua3N9fV9yZW5kZXJTeW1ib2wodCl7cmV0dXJuIE8ucmVuZGVyKHRoaXMucGFnZVRlbXBsYXRlcy5zeW1ib2wsdGhpcy5fZ2V0U3ltYm9sRGF0YVRvUmVuZGVyKHQpKX1fcmVuZGVyUGFnZSgpe2NvbnN0IHQ9W107cmV0dXJuIHRoaXMuX3N5bWJvbHMuZm9yRWFjaCgoZT0+dC5wdXNoKHRoaXMuX2dldFN5bWJvbERhdGFUb1JlbmRlcihlKSkpKSxPLnJlbmRlcih0aGlzLnBhZ2VUZW1wbGF0ZXMucGFnZSx7c3ltYm9sczp0LHNob3dUaXRsZXM6dGhpcy5zZXR0aW5ncy5zaG93VGl0bGVzLHNob3dEYXRhTW9kZTp0aGlzLnNob3dEYXRhTW9kZSxzaG93TWFya2V0U3RhdHVzOnRoaXMuc2hvd01hcmtldFN0YXR1cyx2YWx1ZVRpdGxlTWFya2VkOnRoaXMuc2V0dGluZ3MudmFsdWVUaXRsZU1hcmtlZH0sdGhpcy5wYWdlVGVtcGxhdGVzKX1fcmVuZGVyVGl0bGUoKXtyZXR1cm4gTy5yZW5kZXIodGhpcy5wYWdlVGVtcGxhdGVzLnRpdGxlLHt2YWx1ZVRpdGxlTWFya2VkOnRoaXMuc2V0dGluZ3MudmFsdWVUaXRsZU1hcmtlZH0pfV9zdGFydENoYXJ0KCl7aWYodGhpcy5fY2hhcnQpcmV0dXJuIHZvaWQgdGhpcy5fY2hhcnQuZW5hYmxlKCk7aWYoIXRoaXMuc3ltYm9sKXJldHVybjtjb25zdCB0PXRoaXMuc2V0dGluZ3Muc2hvd0Zsb2F0aW5nVG9vbHRpcCxlPXRoaXMuX2dldFNlcmllc09wdGlvbnMoKTtsZXQgcztpZih0KXtjb25zdCB0PSJkYXJrIj09PXRoaXMuc2V0dGluZ3MuY29sb3JUaGVtZT9iLmNvbG9yc1BhbGV0dGVbImNvbG9yLWNvbGQtZ3JheS03MDAiXTpiLmNvbG9yc1BhbGV0dGVbImNvbG9yLWNvbGQtZ3JheS0yMDAiXTtzPXt2ZXJ0TGluZTp7dmlzaWJsZTohMCxzdHlsZTpfLkxpbmVTdHlsZS5Tb2xpZCx3aWR0aDoxLGNvbG9yOnR9LG1vZGU6Xy5Dcm9zc2hhaXJNb2RlLk1hZ25ldH19Y29uc3QgaT0oMCxULmdldE1pbmlUaW1lRnJhbWVPcHRpb25zKSgpLmZpbHRlcigodD0+IXRoaXMuc2V0dGluZ3MuZGF0ZVJhbmdlT3B0aW9uc3x8dGhpcy5zZXR0aW5ncy5kYXRlUmFuZ2VPcHRpb25zLmluY2x1ZGVzKCgwLHEuY29udmVydFRpbWVGcmFtZVRvU3RyKSh0LnZhbHVlKSkpKTtpZih0aGlzLl9jaGFydD1uZXcgTS5NaW5pQ2hhcnQoe3N5bWJvbDp0aGlzLnN5bWJvbH0sdGhpcy4kY2hhcnQuZ2V0KDApLHt0aW1lZnJhbWU6e3Zpc2libGU6ITAsY29udGFpbmVyOnRoaXMuJGVsLmZpbmQoIi5qcy10aW1lZnJhbWVzIikuZ2V0KDApLHZhbHVlOigwLHEuY29udmVydFN0clRvVGltZUZyYW1lKSh0aGlzLnNldHRpbmdzLmRhdGVSYW5nZSksb3B0aW9uczppLHNpemU6InhzbWFsbCJ9LGNoYXJ0T3B0aW9uczp7bWluV2lkdGg6dGhpcy4kY2hhcnQud2lkdGgoKSxtaW5IZWlnaHQ6dGhpcy4kY2hhcnQuaGVpZ2h0KCksY2hhcnQ6e2dyaWQ6e2hvcnpMaW5lczp7dmlzaWJsZTohMCxjb2xvcjp0aGlzLmNoYXJ0Q29sb3JNYXAuZ3JpZExpbmVDb2xvcixzdHlsZTpfLkxpbmVTdHlsZS5Eb3R0ZWR9fSxjcm9zc2hhaXI6cyxsYXlvdXQ6e3RleHRDb2xvcjp0aGlzLmNoYXJ0Q29sb3JNYXAuc2NhbGVGb250Q29sb3IsZm9udFNpemU6MTIsYXR0cmlidXRpb25Mb2dvOiExfSxsb2NhbGl6YXRpb246e2xvY2FsZTooMCxBLmdldElzb0xhbmd1YWdlQ29kZUZyb21MYW5ndWFnZSkodGhpcy5zZXR0aW5ncy5sb2NhbGUpfSxyaWdodFByaWNlU2NhbGU6e3Zpc2libGU6ITF9fSxzZXJpZXM6ZSxsb2FkaW5nOntzcGlubmVyOnt2aXNpYmxlOiEwfX19fSksdCl7Y29uc3QgdD10aGlzLl9jaGFydDt0aGlzLl9kZXN0cm95RmxvYXRpbmdUb29sdGlwPSgwLE4uY3JlYXRlTGlnaHR3ZWlnaHRDaGFydFByaWNlVGltZVRvb2x0aXApKHtjaGFydDp0LndpZGdldCgpLGNvbG9yZWRCb3JkZXJWaXNpYmxlOiExLGNyb3NzaGFpck1vdmVEYXRhR2V0dGVyOmU9PigwLFcuZ2V0Q3Jvc3NoYWlyTW92ZURhdGEpKHQsZSl9KX19X3N0b3BDaGFydCgpe3RoaXMuX2NoYXJ0JiZ0aGlzLl9jaGFydC5kaXNhYmxlKCl9Cl9nZXRTZXJpZXNPcHRpb25zKCl7cmV0dXJue2NoYXJ0VHlwZToiYXJlYSIsbGluZUNvbG9yOnRoaXMuY2hhcnRDb2xvck1hcC5wbG90TGluZUNvbG9yLGdyb3dpbmdMaW5lQ29sb3I6dGhpcy5jaGFydENvbG9yTWFwLnBsb3RMaW5lQ29sb3JHcm93aW5nLGZhbGxpbmdMaW5lQ29sb3I6dGhpcy5jaGFydENvbG9yTWFwLnBsb3RMaW5lQ29sb3JGYWxsaW5nLGxpbmVXaWR0aDoyLGdyb3dpbmdUb3BDb2xvcjp0aGlzLmNoYXJ0Q29sb3JNYXAuYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZyxmYWxsaW5nVG9wQ29sb3I6dGhpcy5jaGFydENvbG9yTWFwLmJlbG93TGluZUZpbGxDb2xvckZhbGxpbmcsZ3Jvd2luZ0JvdHRvbUNvbG9yOnRoaXMuY2hhcnRDb2xvck1hcC5iZWxvd0xpbmVGaWxsQ29sb3JHcm93aW5nQm90dG9tLGZhbGxpbmdCb3R0b21Db2xvcjp0aGlzLmNoYXJ0Q29sb3JNYXAuYmVsb3dMaW5lRmlsbENvbG9yRmFsbGluZ0JvdHRvbSxjcm9zc2hhaXJNYXJrZXJWaXNpYmxlOnRoaXMuc2V0dGluZ3Muc2hvd0Zsb2F0aW5nVG9vbHRpcCxjcm9zc2hhaXJNYXJrZXJSYWRpdXM6My41LGNyb3NzaGFpck1hcmtlckJvcmRlckNvbG9yOiJkYXJrIj09PXRoaXMuc2V0dGluZ3MuY29sb3JUaGVtZT9iLmNvbG9yc1BhbGV0dGVbImNvbG9yLWNvbGQtZ3JheS04NTAiXTpiLmNvbG9yc1BhbGV0dGVbImNvbG9yLXdoaXRlIl0sc2NhbGVNYXJnaW5zOnt0b3A6LjAxLGJvdHRvbTouMDV9fX1fc3RhcnRTeW1ib2xSb3dzKCl7dGhpcy4kc3ltYm9scy5lYWNoKCgodCxlKT0+e3RoaXMuX3N0YXJ0U3ltYm9sUm93KEgoZSkpfSkpfV9zdGFydFN5bWJvbFJvdyh0KXtjb25zdCBlPXQuZGF0YSgid2F0Y2hsaXN0LXdpZGdldF9fc3ltYm9sLXJvdyIpO2U/ZS5zdGFydCgpOnQuZGF0YSgid2F0Y2hsaXN0LXdpZGdldF9fc3ltYm9sLXJvdyIsbmV3IFEodCx7dHJhZGluZ3ZpZXdCYXNlVXJsOnRoaXMuc2V0dGluZ3MudHJhZGluZ3ZpZXdCYXNlVXJsLGxhcmdlQ2hhcnRVcmw6dGhpcy5zZXR0aW5ncy5sYXJnZUNoYXJ0VXJsLGlzRW1iZWRXaWRnZXQ6dGhpcy5zZXR0aW5ncy5pc0VtYmVkV2lkZ2V0LGRpcmVjdGlvblVwQ2xhc3M6dGhpcy53aWRnZXRDb2xvckNsYXNzTWFwLmNoYW5nZVVwQ29sb3IsZGlyZWN0aW9uRG93bkNsYXNzOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcC5jaGFuZ2VEb3duQ29sb3IsZGlyZWN0aW9uTmV1dHJhbENsYXNzOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcC5jaGFuZ2VOZXV0cmFsQ29sb3IsbGFzdEdyb3dpbmdDbGFzczp0aGlzLnNldHRpbmdzLmRpc2FibGVMYXN0R3Jvd2luZ0ZsYXNoP251bGw6dGhpcy53aWRnZXRDb2xvckNsYXNzTWFwLmxhc3RHcm93aW5nRmxhc2hDb2xvcixsYXN0RmFsbGluZ0NsYXNzOnRoaXMuc2V0dGluZ3MuZGlzYWJsZUxhc3RGYWxsaW5nRmxhc2g/bnVsbDp0aGlzLndpZGdldENvbG9yQ2xhc3NNYXAubGFzdEZhbGxpbmdGbGFzaENvbG9yLG5vTGlua3M6dGhpcy5zZXR0aW5ncy5ub0xpbmtzLHNob3dTeW1ib2xMb2dvOnRoaXMuc2V0dGluZ3Muc2hvd1N5bWJvbExvZ28sdXRtSW5mbzp0aGlzLnNldHRpbmdzLnV0bUluZm99KSl9X3N0b3BTeW1ib2xSb3dzKCl7dGhpcy4kc3ltYm9scy5lYWNoKCgodCxlKT0+e3RoaXMuX3N0b3BTeW1ib2xSb3coSChlKSl9KSl9X3N0b3BTeW1ib2xSb3codCl7Y29uc3QgZT10LmRhdGEoIndhdGNobGlzdC13aWRnZXRfX3N5bWJvbC1yb3ciKTtlJiZlLnN0b3AoKX19Y2xhc3MgUXtjb25zdHJ1Y3Rvcih0LGUpe3RoaXMuX2hhc0RhdGE9bmV3IEIuV2F0Y2hlZFZhbHVlLHRoaXMuX3NldFN5bWJvbExpbmtDb21wbGV0ZWQ9ITEsdCYmdC5sZW5ndGh8fChSLmxvZ0Vycm9yKCJgJGVsYCBpcyByZXF1aXJlZCIpLCgwLGkuYXNzZXJ0KShCb29sZWFuKHQmJnQubGVuZ3RoKSwiYCRlbGAgaXMgcmVxdWlyZWQiKSksdGhpcy4kZWw9dCx0aGlzLnN5bWJvbD10LmRhdGEoInN5bWJvbCIpLHRoaXMuZGVzY3JpcHRpb249dC5kYXRhKCJkZXNjcmlwdGlvbiIpLHRoaXMuc3RhcnQoKSx0aGlzLl9sYXJnZUNoYXJ0VXJsPWUubGFyZ2VDaGFydFVybHx8IiIsdGhpcy5fdXRtSW5mbz1lLnV0bUluZm98fHt9LHRoaXMuX2lzRW1iZWRXaWRnZXQ9ISFlLmlzRW1iZWRXaWRnZXQsdGhpcy5fbm9MaW5rcz1lLm5vTGlua3MsdGhpcy5fc2hvd1N5bWJvbExvZ289ZS5zaG93U3ltYm9sTG9nbztjb25zdCBzPSgwLHIucGlja0ZpZWxkcykoZSxbImRpcmVjdGlvblVwQ2xhc3MiLCJkaXJlY3Rpb25Eb3duQ2xhc3MiLCJkaXJlY3Rpb25OZXV0cmFsQ2xhc3MiLCJsYXN0R3Jvd2luZ0NsYXNzIiwibGFzdEZhbGxpbmdDbGFzcyJdKTt0aGlzLl9kaXJlY3Rpb25VcENsYXNzPXMuZGlyZWN0aW9uVXBDbGFzcyx0aGlzLl9kaXJlY3Rpb25Eb3duQ2xhc3M9cy5kaXJlY3Rpb25Eb3duQ2xhc3MsdGhpcy5fZGlyZWN0aW9uTmV1dHJhbENsYXNzPXMuZGlyZWN0aW9uTmV1dHJhbENsYXNzLHRoaXMuX2xhc3RHcm93aW5nQ2xhc3M9cy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX2xhc3RGYWxsaW5nQ2xhc3M9cy5sYXN0RmFsbGluZ0NsYXNzLHRoaXMuX3NldFN5bWJvbExvZ289KDAsdi5nZXRMb2dvVXJsc0hvb2spKCh0PT57Y29uc3QgZT10aGlzLnN5bWJvbC5zcGxpdCgiOiIpWzFdLHM9KHRoaXMuZGVzY3JpcHRpb258fGV8fCIiKVswXTsoMCxpLmVuc3VyZU5vdE51bGwpKHRoaXMuJGVsWzBdLnF1ZXJ5U2VsZWN0b3IoIi5qcy1zeW1ib2wtbG9nbyIpKS5pbm5lckhUTUw9KDAseS5nZXRDaXJjbGVMb2dvQW55SHRtbCkoe2xvZ29VcmxzOnQsc2l6ZToibWVkaXVtIixwbGFjZWhvbGRlckxldHRlcjpzfSl9KSl9c3RhcnQoKXt0aGlzLl9zdGFydFF1b3RlVGlja2VyKCkudGhlbigoKCk9Pnt0aGlzLl9zdGFydE1hcmtldFN0YXR1cygpfSkpLmNhdGNoKCh0PT5SLmxvZ0Vycm9yKGAke3QuZXhjaGFuZ2V9ICR7dC5yZWFzb259YCkpKX1zdG9wKCl7dGhpcy5fc3RvcFF1b3RlVGlja2VyKCksdGhpcy5fc3RvcE1hcmtldFN0YXR1cygpfWhhc0RhdGEoKXtyZXR1cm4gdm9pZCAwPT09dGhpcy5faGFzRGF0YS52YWx1ZSgpP25ldyBQcm9taXNlKCh0PT57dGhpcy5faGFzRGF0YS5zdWJzY3JpYmUodCx7b25jZTohMAp9KX0pKTpQcm9taXNlLnJlc29sdmUodGhpcy5faGFzRGF0YS52YWx1ZSgpKX1fc3RhcnRNYXJrZXRTdGF0dXMoKXtpZih0aGlzLiRlbC5maW5kKCIuanMtbWFya2V0LXN0YXR1cyIpWzBdKXtjb25zdCB0PW5ldyBELk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6Ii0tZm9yLXdhdGNoLWxpc3QiLGVsOnRoaXMuJGVsLmZpbmQoIi5qcy1tYXJrZXQtc3RhdHVzIilbMF0sc2hvcnQ6ITAsc3ltYm9sOnRoaXMuc3ltYm9sLG9uVmFsdWVDaGFuZ2U6ZT0+eyJkZWxpc3RlZCI9PT1lP3Quc2V0U2Vzc2lvblN0YXR1c0ljb24oITApOnQuc2V0U2Vzc2lvblN0YXR1c0ljb24oITEpfX0pO3Quc3RhcnQoKSx0aGlzLiRlbC5kYXRhKCJtYXJrZXQtc3RhdHVzIix0KX1jb25zdCB0PXRoaXMuJGVsLmZpbmQoIi5qcy1kYXRhLW1vZGUiKVswXTtpZih0KXtjb25zdCBlPW5ldyAkLkRhdGFNb2RlSW5kaWNhdG9yKHtjbGFzc1N1ZmZpeDoiLS1mb3Itd2F0Y2gtbGlzdCIsZWw6dCxzaG9ydDohMCxzeW1ib2w6dGhpcy5zeW1ib2x9KTtlLnN0YXJ0KCksdGhpcy4kZWwuZGF0YSgiZGF0YS1tb2RlIixlKX19X3N0b3BNYXJrZXRTdGF0dXMoKXtjb25zdCB0PXRoaXMuJGVsLmRhdGEoIm1hcmtldC1zdGF0dXMiKSxlPXRoaXMuJGVsLmRhdGEoImRhdGEtbW9kZSIpO3QmJnQuc3RvcCgpLGUmJmUuc3RvcCgpfV9zaG93U0ZXYXJuaW5nKCl7Y29uc3QgdD10aGlzLiRlbC5nZXQoMCk7aWYodC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJqcy1leGNsYW1hdGlvbmVkLXN5bWJvbCIpLmxlbmd0aClyZXR1cm47Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7ZS5jbGFzc0xpc3QuYWRkKCJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmsiLCJqcy1leGNsYW1hdGlvbmVkLXN5bWJvbCIsImFwcGx5LWNvbW1vbi10b29sdGlwIiksZS5zZXRBdHRyaWJ1dGUoInRpdGxlIiwoMCxrLmdldFdhcm5pbmdUZXh0Rm9yRnJlZVVzZXJzKSgpKTtjb25zdCBzPXQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgianMtc3ltYm9sLWxpbmsiKS5pdGVtKDApO3MmJihzLmFwcGVuZENoaWxkKGUpLHdpbmRvdy5sb2dpblN0YXRlQ2hhbmdlPy5zdWJzY3JpYmUobnVsbCwoKCk9PntpZih3aW5kb3cuaXNfYXV0aGVudGljYXRlZCl7Y29uc3QgZT10LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImpzLWV4Y2xhbWF0aW9uZWQtc3ltYm9sIik7Zm9yKDtlLmxlbmd0aD4wOykoMCxpLmVuc3VyZU5vdE51bGwpKGVbMF0ucGFyZW50Tm9kZSkucmVtb3ZlQ2hpbGQoZVswXSl9fSkpKX1fc3RhcnRRdW90ZVRpY2tlcigpe2xldCB0PXRoaXMuJGVsLmRhdGEoInF1b3RlLXRpY2tlciIpO2lmKHQpcmV0dXJuIHQuZW5hYmxlKCksUHJvbWlzZS5yZXNvbHZlKHQpO2NvbnN0IGU9dGhpcy5fc2hvd1NGV2FybmluZy5iaW5kKHRoaXMpLHM9KHQsZSxzKT0+e3RoaXMuX3NldFN5bWJvbExpbmtDb21wbGV0ZWR8fHRoaXMuX25vTGlua3N8fHRoaXMuX3NldFN5bWJvbExpbmsodCksdGhpcy5fc2hvd1N5bWJvbExvZ28mJnRoaXMuX3NldFN5bWJvbExvZ28odCxlLHMpfTtyZXR1cm4gbmV3IFByb21pc2UoKChpLG8pPT57KDAsZi5jaGVjaykodGhpcy5zeW1ib2wsITEpLnRoZW4oKG89Pntjb25zdCBhPXtkb250RHllUHJpY2U6ITAsYWRkRGVzY3JpcHRpb25UaXRsZTohMSxzaWduUG9zaXRpdmU6ITAsY2hhbmdlUGVyY2VudEluQnJhY2tldHM6ITEsc2V0U3RhdGVIb29rOnMsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczp0aGlzLl9kaXJlY3Rpb25VcENsYXNzfHx2b2lkIDAsY2hhbmdlRGlyZWN0aW9uRG93bkNsYXNzOnRoaXMuX2RpcmVjdGlvbkRvd25DbGFzc3x8dm9pZCAwLGNoYW5nZURpcmVjdGlvbk5ldXRyYWxDbGFzczp0aGlzLl9kaXJlY3Rpb25OZXV0cmFsQ2xhc3N8fHZvaWQgMCxsYXN0R3Jvd2luZ0NsYXNzOnRoaXMuX2xhc3RHcm93aW5nQ2xhc3N8fHZvaWQgMCxsYXN0RmFsbGluZ0NsYXNzOnRoaXMuX2xhc3RGYWxsaW5nQ2xhc3N8fHZvaWQgMCxpbml0ZWRIb29rOigpPT57dGhpcy5faGFzRGF0YS5zZXRWYWx1ZSghMCl9LG5vU3VjaFN5bWJvbEhvb2s6KCk9Pnt0aGlzLl9oYXNEYXRhLnNldFZhbHVlKCExKX0scGVybWlzc2lvbkRlbmllZEhvb2s6KCk9Pnt0aGlzLl9oYXNEYXRhLnNldFZhbHVlKCExKSxlKCl9fTt0PW5ldyBQLlF1b3RlVGlja2VyKG8sdGhpcy4kZWwuZ2V0KDApLGEpLHRoaXMuJGVsLmRhdGEoInF1b3RlLXRpY2tlciIsdCksaSh0KX0pKS5jYXRjaCgodD0+e3RoaXMuX2hhc0RhdGEuc2V0VmFsdWUoITEpLGUoKSxvKHQpfSkpfSkpfV9zZXRTeW1ib2xMaW5rKHQpe2NvbnN0IGU9dC5zaG9ydF9uYW1lLHM9dC5leGNoYW5nZSxpPXQucHJvX25hbWUsbz10LnR5cGU7aWYoIShlJiZzJiZpJiZvKSlyZXR1cm47Y29uc3QgYT10aGlzLiRlbFswXS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJqcy1zeW1ib2wtbGluayIpWzBdLGw9dGhpcy5fbGFyZ2VDaGFydFVybCYmdGhpcy5faXNFbWJlZFdpZGdldCxuPXtzaG9ydE5hbWU6ZSxleGNoYW5nZTpzLHByb05hbWU6aSx0eXBlOm99O2EuaHJlZj1sPygwLFMubWFrZVRlbXBsYXRlU3ltYm9sVXJsKSh0aGlzLl9sYXJnZUNoYXJ0VXJsLG4pOigwLFMubWFrZVN5bWJvbFBhZ2VVcmwpKG4sdGhpcy5fdXRtSW5mbyksdGhpcy5fc2V0U3ltYm9sTGlua0NvbXBsZXRlZD0hMH1fc3RvcFF1b3RlVGlja2VyKCl7Y29uc3QgdD10aGlzLiRlbC5kYXRhKCJxdW90ZS10aWNrZXIiKTt0JiZ0LmRpc2FibGUoKX19dmFyIEo9cygzODkyOTgpO2NvbnN0IEs9T2JqZWN0LmFzc2lnbih7fSx3aW5kb3cuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMpO0sud2hpdGVsYWJlbD1Cb29sZWFuKHdpbmRvdy5pbml0RGF0YS53aWRnZXREZWZhdWx0cy53aGl0ZWxhYmVsKSxLLm5vTGlua3M9Qm9vbGVhbih3aW5kb3cuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMubm9MaW5rcyk7Y29uc3QgWj0oMCxhLnBhcnNlVXJsSGFzaFBhcmFtcykoKSxYPU9iamVjdC5hc3NpZ24oe30sSyk7InNob3dDaGFydCJpbiBaJiYoWC5zaG93X2NoYXJ0PVouc2hvd0NoYXJ0KSwKWC5jdXN0b21lcj13aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXIsInNob3dTeW1ib2xMb2dvImluIFomJihYLnNob3dTeW1ib2xMb2dvPUJvb2xlYW4oWi5zaG93U3ltYm9sTG9nbykpLCJzaG93RmxvYXRpbmdUb29sdGlwImluIFomJihYLnNob3dGbG9hdGluZ1Rvb2x0aXA9Qm9vbGVhbihaLnNob3dGbG9hdGluZ1Rvb2x0aXApKSxYLmRhdGVSYW5nZT0oMCxjLmdldEFjdHVhbFRpbWVGcmFtZSkoWi5kYXRlUmFuZ2V8fHdpbmRvdy5pbml0RGF0YS53aWRnZXREZWZhdWx0cy5kYXRlUmFuZ2UpLFouZGF0ZVJhbmdlT3B0aW9ucyYmKFguZGF0ZVJhbmdlT3B0aW9ucz1aLmRhdGVSYW5nZU9wdGlvbnMubWFwKGMuZ2V0QWN0dWFsVGltZUZyYW1lKSk7Y29uc3QgWT13aW5kb3cubG9jYWxlfHxLLmxvY2FsZXx8ImVuIjtYLmxvY2FsZT1ZO3RyeXsoMCxKLnRyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvKSh7d2lkZ2V0X2lkOiJtYXJrZXQtb3ZlcnZpZXciLHN5bWJvbHM6SlNPTi5zdHJpbmdpZnkoZnVuY3Rpb24odCl7Y29uc3QgZT1bXTtmb3IoY29uc3QgcyBvZiB0KWZvcihjb25zdCB0IG9mIHMuc3ltYm9scyl0LnMmJmUucHVzaCh0LnMpO3JldHVybiBlfShYLnRhYnMpKSxjdXN0b21lcjpYLmN1c3RvbWVyfSl9Y2F0Y2h7fWNvbnN0IHR0PXdpbmRvdy5sb2NhbGVfZG9tYWluc1tZXT93aW5kb3cubG9jYWxlX2RvbWFpbnNbWV06d2luZG93LmxvY2FsZV9kb21haW5zLmVuO1gudHJhZGluZ3ZpZXdCYXNlVXJsPXR0P2RvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKyIvLyIrdHQ6IiIsWC5sYXJnZUNoYXJ0VXJsPVoubGFyZ2VDaGFydFVybDtjb25zdCBldD1aLmlzVHJhbnNwYXJlbnQ7Wi50YWJzJiYoWC50YWJzPVoudGFicyksWC5zaG93X2NoYXJ0JiYoT2JqZWN0LmFzc2lnbihYLCgwLHIucGlja0ZpZWxkcykoWixHKSksdm9pZCAwPT09WC5iZWxvd0xpbmVGaWxsQ29sb3JGYWxsaW5nQm90dG9tJiZYLmJlbG93TGluZUZpbGxDb2xvckZhbGxpbmcmJihYLmJlbG93TGluZUZpbGxDb2xvckZhbGxpbmdCb3R0b209WC5iZWxvd0xpbmVGaWxsQ29sb3JGYWxsaW5nKSx2b2lkIDA9PT1YLmJlbG93TGluZUZpbGxDb2xvckdyb3dpbmdCb3R0b20mJlguYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZyYmKFguYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZ0JvdHRvbT1YLmJlbG93TGluZUZpbGxDb2xvckdyb3dpbmcpKSxYLmNvbG9yVGhlbWU9Wi5jb2xvclRoZW1lLE9iamVjdC5hc3NpZ24oWCwoMCxyLnBpY2tGaWVsZHMpKFosSSkpLFoudGlja2VyQ29sb3JHcm93aW5nJiZaLnRpY2tlckNvbG9yRmFsbGluZyYmKFgucGFpbnRMYXN0V2l0aENoYW5nZUNvbG9ycz0hMCxYLmRpc2FibGVMYXN0R3Jvd2luZ0ZsYXNoPSEwLFguZGlzYWJsZUxhc3RGYWxsaW5nRmxhc2g9ITAsWC5jaGFuZ2VVcENvbG9yPVoudGlja2VyQ29sb3JHcm93aW5nLFguY2hhbmdlRG93bkNvbG9yPVoudGlja2VyQ29sb3JGYWxsaW5nKSxYLmluZGV4TmFtZUJvbGQ9YXQoImluZGV4TmFtZUJvbGQiLFosWCksWC52YWx1ZUJvbGQ9YXQoInZhbHVlQm9sZCIsWixYKSxYLnZhbHVlVGl0bGVNYXJrZWQ9YXQoInZhbHVlVGl0bGVNYXJrZWQiLFosWCksWC5wYWludExhc3RXaXRoQ2hhbmdlQ29sb3JzPWF0KCJwYWludExhc3RXaXRoQ2hhbmdlQ29sb3JzIixaLFgpLFgub25seURlc2NyaXB0aW9uPWF0KCJvbmx5RGVzY3JpcHRpb24iLFosWCksWC5oaWRlQWJzb2x1dGVDaGFuZ2U9YXQoImhpZGVBYnNvbHV0ZUNoYW5nZSIsWixYKTtjb25zdCBzdD0oMCxuLmZpbHRlclV0bUluZm8pKFopLGl0PSgwLGkuZW5zdXJlTm90TnVsbCkoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3dpZGdldC1tYXJrZXQtb3ZlcnZpZXctY29udGFpbmVyIikpO2V0JiYoaXQuc3R5bGUuYmFja2dyb3VuZENvbG9yPSJ0cmFuc3BhcmVudCIpLCgwLGwuY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyKShpdCwibWFya2V0LW92ZXJ2aWV3IixzdCx7aXNXaGl0ZUxhYmVsOlgud2hpdGVsYWJlbCxsb2NhbGU6WSxjdXN0b21lcjpYLmN1c3RvbWVyfSksaXQuY2xhc3NMaXN0LmFkZCgidHYtc2l0ZS13aWRnZXQiKSxpdC5jbGFzc0xpc3QuYWRkKCJ0di1zaXRlLXdpZGdldC0tYmdfbm9uZSIpLGl0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2hlYWQtZW1iZWQganMtd2lkZ2V0LWhlYWQiPlxuXHRcdDxkaXYgY2xhc3M9InR2LXNpdGUtd2lkZ2V0X190YWJzXG5cdFx0XHR0di13aWRnZXQtd2F0Y2gtbGlzdF9fdGFic1xuXHRcdFx0anMtdGFic1xuXHRcdCI+PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPSJ0di13aWRnZXQtd2F0Y2gtbGlzdF9fYm9keS1lbWJlZCBqcy13aWRnZXQtYm9keSI+XG5cdFx0PGRpdiBjbGFzcz0ianMtcGFnZXMiPjwvZGl2PlxuXHQ8L2Rpdj4nLE9iamVjdC5hc3NpZ24oWCx7dXRtSW5mbzpzdH0pLFgub25BY3RpdmVQYWdlTG9hZGVkPXQ9Pnt0fHwoMCxoLmRpc3BhdGNoRXZlbnRUb1BhcmVudCkoZC5JRnJhbWVFdmVudHMuTmFtZXMuTm9EYXRhLGcuZnJhbWVFbGVtZW50SWQsdm9pZCAwKX07Y29uc3Qgb3Q9bmV3IGNsYXNze2NvbnN0cnVjdG9yKHQsZT17fSl7dGhpcy5fc3RvcFBhZ2VUaW1lb3V0cz17fSx0aGlzLl9hY3RpdmVQYWdlTG9hZGVkUHJvbWlzZT1udWxsLHRoaXMuX2Rlc3Ryb3lUYWJMYWJlbHM9bnVsbCx0fHwoUi5sb2dFcnJvcigiYGVsYCBpcyByZXF1aXJlZCIpLCgwLGkuYXNzZXJ0KShCb29sZWFuKHQpLCJgZWxgIGlzIHJlcXVpcmVkIikpLHRoaXMuJGVsPUgodCksdGhpcy5zZXR0aW5ncz10aGlzLl9wcmVwYXJlU2V0dGluZ3MoZSksdGhpcy5fYWN0aXZlUGFnZUxvYWRlZFByb21pc2U9bnVsbCx0aGlzLnRhYnNMYWJlbHM9dGhpcy5zZXR0aW5ncy50YWJzLm1hcCgodD0+dC50aXRsZXx8dC50aXRsZV9yYXcpKTtjb25zdCBzPSgwLHIucGlja0ZpZWxkcykodGhpcy5zZXR0aW5ncyxJKTt0aGlzLndpZGdldENvbG9yQ2xhc3NNYXA9ZnVuY3Rpb24odCl7Y29uc3QgZT0oMCxqLnJhbmRvbUhhc2hOKSg0KTtyZXR1cm4gdC5yZWR1Y2UoKCh0LHMpPT57CmNvbnN0IGk9cy5yZXBsYWNlKC9bQS1aXS9nLCh0PT5gLSR7dC50b0xvd2VyQ2FzZSgpfWApKTtyZXR1cm4gdFtzXT1gJHtpfS0tJHtlfWAsdH0pLHt9KX0oT2JqZWN0LmtleXMocykpLHQuYXBwZW5kQ2hpbGQoZnVuY3Rpb24odCxlLHMpe2NvbnN0IGk9KHQsZSk9PmAuJHt0fSwgLiR7dH06aG92ZXIsIC4ke3R9OmFjdGl2ZSB7IGNvbG9yOiAke2V9IH1gLG89e3N5bWJvbEFjdGl2ZUNvbG9yOih0LGUpPT5gLiR7dH0geyBiYWNrZ3JvdW5kOiAke2V9IH1gLHN5bWJvbFNlcGFyYXRvckNvbG9yOih0LGUpPT5gLiR7dH06YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAke2V9IH1gLHRhYlNsaWRlckNvbG9yOih0LGUpPT5gLiR7dH0geyBiYWNrZ3JvdW5kOiAke2V9IH1gfSxhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksbD1bXTtmb3IoY29uc3QgYSBvZiB0KXtjb25zdCB0PXNbYV0sbj1lW2FdO2lmKCF0fHwhbnx8bnVsbD09PSgwLHAudHJ5UGFyc2VSZ2IpKG4pKWNvbnRpbnVlO2NvbnN0IHI9b1thXTtsLnB1c2gocj9yKHQsbik6aSh0LG4pKX1yZXR1cm4gYS50ZXh0Q29udGVudD1sLmpvaW4oIiAiKSxhfShJLHMsdGhpcy53aWRnZXRDb2xvckNsYXNzTWFwKSksdGhpcy5zZXR0aW5ncy5pc0VtYmVkV2lkZ2V0fHwiaG90bGlzdHMiPT09dGhpcy53aWRnZXROYW1lPygxPT09dGhpcy5zZXR0aW5ncy50YWJzLmxlbmd0aCYmdGhpcy4kZWwuZmluZCgiLmpzLXdpZGdldC1oZWFkIikuYWRkQ2xhc3MoImktaGlkZGVuIiksdGhpcy5yZW5kZXJDb250ZW50KCkudGhlbigoKCk9Pnt0aGlzLl9pbml0UGFnZXMoKSx0aGlzLnNldEF1dG9VcGRhdGUoKX0pLCh0PT57Y29uc29sZS5sb2coIldpZGdldFdhdGNobGlzdCBjb25zdHJ1Y3RvciBlcnJvciIsdCl9KSkpOnRoaXMuX2luaXRQYWdlcygpfXNldEF1dG9VcGRhdGUoKXt9Z2V0IHdpZGdldE5hbWUoKXtyZXR1cm4ibWFya2V0b3ZlcnZpZXcifWdldCBzZXR0aW5nc0tleSgpe3JldHVybiJ3YXRjaGxpc3RfX3N1bW1hcnkucHJvcGVydGllcyJ9Z2V0IHVzZXJTZXR0aW5ncygpe3JldHVybnt9fWdldCB0ZW1wbGF0ZXMoKXtyZXR1cm57dGFiOidcblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2JsYW5rLXRhYiBqcy13aWRnZXQtdGFiIiBkYXRhLWNvbnRlbnQ9Int7IHRpdGxlX3JhdyB9fSI+e3sgdGl0bGUgfX1cblx0XHRcdFx0PC9kaXY+Jyx0YWJDb250ZW50OmBcblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtd2lkZ2V0LXdhdGNoLWxpc3R7e15maXJzdFRhYn19IGktaGlkZGVue3svZmlyc3RUYWJ9fXt7I2ZpcnN0VGFifX17eyNob3RsaXN0c1NlbGVjdEVuYWJsZWR9fSBpLWxvYWRpbmd7ey9ob3RsaXN0c1NlbGVjdEVuYWJsZWR9fXt7L2ZpcnN0VGFifX0ie3sjZ3JvdXB9fSBkYXRhLXRhYi1ncm91cD0ie3sgZ3JvdXAgfX0ie3svZ3JvdXB9fT5cblx0XHRcdFx0XHR7eyNzaG93Q2hhcnR9fVxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz0ianMtY2hhcnQgdHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYXJ0Ij48L2Rpdj5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9ImpzLXRpbWVmcmFtZXMgdHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpbWVmcmFtZSI+PC9kaXY+XG5cdFx0XHRcdFx0e3svc2hvd0NoYXJ0fX1cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJ7eyNpc0VtYmVkV2lkZ2V0fX10di13aWRnZXQtd2F0Y2gtbGlzdF9fc3ltYm9scy13cmFwcGVyIHt7L2lzRW1iZWRXaWRnZXR9fWpzLXN5bWJvbHMtd3JhcHBlciJcblx0XHRcdFx0XHRcdCB7eyNtaW5UYWJsZUhlaWdodH19IHN0eWxlPSJtaW4taGVpZ2h0OiB7eyBtaW5UYWJsZUhlaWdodCB9fSIge3svbWluVGFibGVIZWlnaHR9fVxuXHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXNpdGUtdGFibGUgdHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYmxlXG5cdFx0XHRcdFx0XHRcdHt7I2lzRW1iZWRXaWRnZXR9fSB0di1zaXRlLXRhYmxlLS1zdGFydC1ib3JkZXIge3svaXNFbWJlZFdpZGdldH19XG5cdFx0XHRcdFx0XHRcdHt7XnNob3dDaGFydH19IHR2LXNpdGUtdGFibGUtLW5vLXN0YXJ0LWJvcmRlciB7ey9zaG93Q2hhcnR9fVxuXHRcdFx0XHRcdFx0XHR7eyNmb3JjZUVuZEJvcmRlcn19IHR2LXNpdGUtdGFibGUtLXdpdGgtZW5kLWJvcmRlciB7ey9mb3JjZUVuZEJvcmRlcn19XG5cdFx0XHRcdFx0XHRcdCBqcy1zeW1ib2xzLWJvZHkiPlxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0e3teaXNFbWJlZFdpZGdldH19XG5cdFx0XHRcdFx0XHR7eyNxdWlja0xpbmt9fVxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPSJqcy1xdWljay1saW5rLXdyYXBwZXIgdHYtZmVlZC13aWRnZXRfX3F1aWNrLWxpbmstd3JhcCB0di1mZWVkLXdpZGdldF9fcGFkZGVkIj5cblx0XHRcdFx0XHRcdFx0XHQ8YSBjbGFzcz0idHYtZmVlZC13aWRnZXRfX3F1aWNrLWxpbmsiIGhyZWY9Int7IHF1aWNrTGluay5ocmVmIH19Ij57eyBxdWlja0xpbmsudGl0bGUgfX0ke3MoNzc5MDkxKX08L2E+XG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0e3svcXVpY2tMaW5rfX1cblx0XHRcdFx0XHR7ey9pc0VtYmVkV2lkZ2V0fX1cblx0XHRcdFx0PC9kaXY+YCx0YWJDb250ZW50U2tpbjonXG5cdFx0XHRcdDxkaXYgY2xhc3M9InR2LXdpZGdldC13YXRjaC1saXN0e3teZmlyc3RUYWJ9fSBpLWhpZGRlbnt7L2ZpcnN0VGFifX17eyNmaXJzdFRhYn19e3sjaG90bGlzdHNTZWxlY3RFbmFibGVkfX0gaS1sb2FkaW5ne3svaG90bGlzdHNTZWxlY3RFbmFibGVkfX17ey9maXJzdFRhYn19Int7I2dyb3VwfX0gZGF0YS10YWItZ3JvdXA9Int7IGdyb3VwIH19Int7L2dyb3VwfX0+XG5cdFx0XHRcdDwvZGl2Pid9fXJlbmRlckNvbnRlbnQoKXtjb25zdCB0PXRoaXMuc2V0dGluZ3MudGFicy5tYXAoKHQ9Pntjb25zdCBlPUgoTy5yZW5kZXIodGhpcy50ZW1wbGF0ZXMudGFiQ29udGVudCx7c2hvd0NoYXJ0OnRoaXMuc2V0dGluZ3Muc2hvd19jaGFydCxpc0VtYmVkV2lkZ2V0OnRoaXMuc2V0dGluZ3MuaXNFbWJlZFdpZGdldCxncm91cDp0Lmdyb3VwLApmaXJzdFRhYjp0PT09dGhpcy5zZXR0aW5ncy50YWJzWzBdLGZvcmNlRW5kQm9yZGVyOnRoaXMuc2V0dGluZ3MuZm9yY2VfZW5kX2JvcmRlcn0sdGhpcy50ZW1wbGF0ZXMpKTtyZXR1cm4gZS5kYXRhKCJzeW1ib2xzIix0LnN5bWJvbHMubWFwKCh0PT5PYmplY3Qoe3M6dC5zLGQ6dC5kLHQ6dC50fSkpKSksdGhpcy4kZWwuZmluZCgiLmpzLXBhZ2VzIikuYXBwZW5kKGUpLCEwfSkpO3JldHVybiBuZXcgUHJvbWlzZSgoZT0+e1Byb21pc2UuYWxsKHQpLnRoZW4oZSl9KSl9c2F2ZVRvVFZTZXR0aW5ncyh0KXtjb25zdCBlPXdpbmRvdy5sb2NhbGU7bGV0IHM9KDAsVS5nZXRKU09OKSh0aGlzLnNldHRpbmdzS2V5KTtzfHwocz17fSksc1tlXT10LCgwLFUuc2V0SlNPTikodGhpcy5zZXR0aW5nc0tleSxzKX1kZXN0cm95KCl7dGhpcy4kcGFnZXNDb250YWluZXImJih0aGlzLiRwYWdlc0NvbnRhaW5lci5jaGlsZHJlbigpLmVhY2goKCh0LGUpPT57dGhpcy5fc3RvcFBhZ2UoSChlKSl9KSksdGhpcy5fZGVzdHJveVRhYkxhYmVscz8uKCksdGhpcy4kcGFnZXNDb250YWluZXIuY2hpbGRyZW4oKS5lYWNoKCgodCxlKT0+e2NvbnN0IHM9SChlKTt0aGlzLl9nZXRDYWNoZWRXaWRnZXRQYWdlKHMpPy5kZXN0cm95KCl9KSkpfXJlc2V0Q2FjaGVzKCl7dGhpcy4kcGFnZXNDb250YWluZXImJnRoaXMuJHBhZ2VzQ29udGFpbmVyLmNoaWxkcmVuKCkuZWFjaCgoKHQsZSk9Pntjb25zdCBzPUgoZSk7dGhpcy5fZ2V0Q2FjaGVkV2lkZ2V0UGFnZShzKSYmdGhpcy5fY2FjaGVXaWRnZXRQYWdlKHMsdGhpcy5fY3JlYXRlV2lkZ2V0V2F0Y2hsaXN0UGFnZShzKSl9KSl9YWRqdXN0VG9BdmFpbGFibGVTaXplcygpe3RoaXMuJHBhZ2VzQ29udGFpbmVyLmNoaWxkcmVuKCkuZWFjaCgoKHQsZSk9PntpZighZS5jbGFzc0xpc3QuY29udGFpbnMoImktaGlkZGVuIikpe2NvbnN0IHQ9dGhpcy5fZ2V0Q2FjaGVkV2lkZ2V0UGFnZShIKGUpKTt0Py5hZGp1c3RUb0F2YWlsYWJsZVNpemVzKCl9fSkpfV9zdGFydFBhZ2UodCl7bGV0IGU9dGhpcy5fZ2V0Q2FjaGVkV2lkZ2V0UGFnZSh0KTtpZihlPyh0aGlzLl9kZWxldGVTdG9wVGltZW91dCh0KSxlLnN0YXJ0KCkpOihlPXRoaXMuX2NyZWF0ZVdpZGdldFdhdGNobGlzdFBhZ2UodCksdGhpcy5fY2FjaGVXaWRnZXRQYWdlKHQsZSkpLCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnNldHRpbmdzLm9uQWN0aXZlUGFnZUxvYWRlZCl7Y29uc3QgdD10aGlzLl9hY3RpdmVQYWdlTG9hZGVkUHJvbWlzZT1lLmhhc0RhdGEoKS50aGVuKChlPT57dD09PXRoaXMuX2FjdGl2ZVBhZ2VMb2FkZWRQcm9taXNlJiZ0aGlzLnNldHRpbmdzLm9uQWN0aXZlUGFnZUxvYWRlZCYmdGhpcy5zZXR0aW5ncy5vbkFjdGl2ZVBhZ2VMb2FkZWQoZSl9KSl9fV9nZXRDYWNoZWRXaWRnZXRQYWdlKHQpe3JldHVybiB0LmRhdGEoIndhdGNobGlzdC13aWRnZXQtcGFnZSIpfV9pbml0UGFnZXMoKXtjb25zdCB0PXRoaXMuJGVsLmZpbmQoIi5qcy10YWJzIikuZXEoMCksZT10aGlzLiRlbC5maW5kKCIuanMtcGFnZXMiKS5lcSgwKSxzPTE9PT1lLmNoaWxkcmVuKCkubGVuZ3RoO3RoaXMuc2V0dGluZ3MuZml4ZWRDaGFydEhlaWdodCYmKHRoaXMuX25vcm1hbGl6ZVN5bWJvbExpc3RIZWlnaHQoKSxzZXRUaW1lb3V0KCgoKT0+dGhpcy5fYWRqdXN0U3ltYm9sc0xpc3RIZWlnaHQoKSksMCkpLHM/dGhpcy5fc3RhcnRQYWdlKGUuY2hpbGRyZW4oKS5lcSgwKSk6KHRoaXMuX2luaXRUYWJzKHQsZSksIXRoaXMuc2V0dGluZ3MuZml4ZWRDaGFydEhlaWdodCYmdGhpcy5zZXR0aW5ncy5hZGp1c3Rfd2lkZ2V0X2hlaWdodCYmZS5maW5kKCIuanMtY2hhcnQiKS5sZW5ndGgmJnRoaXMuX2FkanVzdENoYXJ0SGVpZ2h0KGUsdGhpcy5zZXR0aW5ncy5hZGp1c3Rfd2lkZ2V0X2hlaWdodCkpLHRoaXMuJHBhZ2VzQ29udGFpbmVyPWV9X2dldFBhZ2VzQXJyYXkodCl7cmV0dXJuIHQ/QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5jaGlsZHJlbik6W119X3ByZXBhcmVTZXR0aW5ncyh0KXtsZXQgZTtjb25zdCBzPXRoaXMuJGVsLmRhdGEoIndpZGdldC1kYXRhIik7aWYocylpZihzLmlzX2VtYmVkX3dpZGdldCllPU9iamVjdC5hc3NpZ24oe30scyx0KTtlbHNle2NvbnN0IGk9dGhpcy51c2VyU2V0dGluZ3M7KCExPT09cy5ob3RsaXN0c19zZWxlY3RfZW5hYmxlZHx8cy5vdmVycmlkZV91c2VyX2V4Y2hhbmdlKSYmZGVsZXRlIGkuZXhjaGFuZ2UsZT1PYmplY3QuYXNzaWduKHt9LHMsdCxpKX1lbHNlIHRoaXMuJGVsLmRhdGEoIndpZGdldC1kYXRhIix0KSxlPXQ7cmV0dXJuIHZvaWQgMCE9PWUuaXNfZW1iZWRfd2lkZ2V0JiYoZS5pc0VtYmVkV2lkZ2V0PWUuaXNfZW1iZWRfd2lkZ2V0KSxlLmlzX2VtYmVkX3dpZGdldD12b2lkIDAsZX1faW5pdFRhYnModCxlKXtjb25zdCBzPXRoaXMuX2dldFBhZ2VzQXJyYXkoZS5nZXQoMCkpOygwLHguY3JlYXRlVGFiTGFiZWxzKSgid2F0Y2hsaXN0LXdpZGdldC10YWItbGFiZWxzIix0aGlzLnRhYnNMYWJlbHMsdC5nZXQoMCkscyx0aGlzLl9vbkFjdGl2ZVBhZ2VDaGFuZ2VkLmJpbmQodGhpcykpLnRoZW4oKHQ9PnRoaXMuX2Rlc3Ryb3lUYWJMYWJlbHM9dCkpLHRoaXMuX3N0YXJ0UGFnZShIKCgwLGkuZW5zdXJlTm90TnVsbCkodGhpcy5fZ2V0QWN0aXZlUGFnZShzKSkpKX1fYWRqdXN0Q2hhcnRIZWlnaHQodCxlKXtjb25zdCBzPXQuY2hpbGRyZW4oKSxvPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1xdW90ZS10aWNrZXIiKSxhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1jaGFydCIpO2lmKG8mJmEpe2NvbnN0IHQ9by5vZmZzZXRIZWlnaHQsbD1hLm9mZnNldEhlaWdodDtmb3IobGV0IG89MDtvPHMubGVuZ3RoO28rKyl7bGV0IGE9ZS1zW29dLnF1ZXJ5U2VsZWN0b3JBbGwoIi5qcy1xdW90ZS10aWNrZXIiKS5sZW5ndGg7aWYoYT09PWUmJihhPTEpLGE8ZSl7Y29uc3QgZT1zW29dLnF1ZXJ5U2VsZWN0b3IoIi5qcy1jaGFydCIpOygwLGkuZW5zdXJlTm90TnVsbCkoZSkuc3R5bGUuaGVpZ2h0PWAke2wrdCphfXB4YH19fX1fbm9ybWFsaXplU3ltYm9sTGlzdEhlaWdodCgpe2NvbnN0IHQ9KDAsCmkuZW5zdXJlTm90TnVsbCkodGhpcy4kZWxbMF0uZmlyc3RFbGVtZW50Q2hpbGQpLGU9dC5xdWVyeVNlbGVjdG9yKCIuanMtcGFnZXMiKTtpZighZSlyZXR1cm47bGV0IHM9MDtpZihlKXtsZXQgaT0wO2ZvcihsZXQgdD0wO3Q8ZS5jaGlsZHJlbi5sZW5ndGg7dCsrKXtjb25zdCBvPWUuY2hpbGRyZW5bdF07aWYoaT1NYXRoLm1heChvLnF1ZXJ5U2VsZWN0b3JBbGwoIi5qcy1xdW90ZS10aWNrZXIiKS5sZW5ndGgsaSksIW8uY2xhc3NMaXN0LmNvbnRhaW5zKCJpLWhpZGRlbiIpKXtjb25zdCB0PW8ucXVlcnlTZWxlY3RvcigiLmpzLXF1b3RlLXRpY2tlciIpO3QmJihzPXQub2Zmc2V0SGVpZ2h0KX19Y29uc3Qgbz10LnF1ZXJ5U2VsZWN0b3JBbGwoIi5qcy1zeW1ib2xzLXdyYXBwZXIiKTtmb3IobGV0IHQ9MDt0PG8ubGVuZ3RoO3QrKyl7b1t0XS5zdHlsZS5taW5IZWlnaHQ9cyppKyJweCJ9fX1fYWRqdXN0U3ltYm9sc0xpc3RIZWlnaHQoKXtjb25zdCB0PXRoaXMuJGVsWzBdLmZpcnN0RWxlbWVudENoaWxkLGU9Z2V0Q29tcHV0ZWRTdHlsZSh0KSxzPXQub2Zmc2V0SGVpZ2h0LXBhcnNlSW50KGUucGFkZGluZ1RvcCktcGFyc2VJbnQoZS5wYWRkaW5nQm90dG9tKSxpPXQucXVlcnlTZWxlY3RvcigiLmpzLXdpZGdldC1oZWFkIik7bGV0IG89MDtpZihpKXtjb25zdCB0PWdldENvbXB1dGVkU3R5bGUoaSk7bz1pLm9mZnNldEhlaWdodCtwYXJzZUludCh0Lm1hcmdpblRvcCkrcGFyc2VJbnQodC5tYXJnaW5Cb3R0b20pfWNvbnN0IGE9dC5xdWVyeVNlbGVjdG9yKCIuanMtcGFnZXMiKTtpZighYSlyZXR1cm47bGV0IGw9MCxuPTAscj0wO2ZvcihsZXQgdD0wO3Q8YS5jaGlsZHJlbi5sZW5ndGg7dCsrKXtjb25zdCBlPWEuY2hpbGRyZW5bdF07aWYoIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJpLWhpZGRlbiIpKXtjb25zdCB0PWUucXVlcnlTZWxlY3RvcigiLmpzLWNoYXJ0Iik7dCYmKGw9dC5vZmZzZXRIZWlnaHQpO2NvbnN0IHM9ZS5xdWVyeVNlbGVjdG9yKCIuanMtdGltZWZyYW1lcyIpO2lmKHMpe2NvbnN0IHQ9Z2V0Q29tcHV0ZWRTdHlsZShzKTtuPXMub2Zmc2V0SGVpZ2h0K3BhcnNlSW50KHQubWFyZ2luVG9wKStwYXJzZUludCh0Lm1hcmdpbkJvdHRvbSl9Y29uc3QgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5qcy1xdWljay1saW5rLXdyYXBwZXIiKTtpJiYocj1pLm9mZnNldEhlaWdodCk7YnJlYWt9fWNvbnN0IGg9cy1vLShsK24rciksZD1hLnF1ZXJ5U2VsZWN0b3JBbGwoIi5qcy1zeW1ib2xzLXdyYXBwZXIiKTtmb3IobGV0IHQ9MDt0PGQubGVuZ3RoO3QrKyl7ZFt0XS5zdHlsZS5taW5IZWlnaHQ9YCR7aH1weGB9fV9jcmVhdGVXaWRnZXRXYXRjaGxpc3RQYWdlKHQpe3JldHVybiBuZXcgVih0LHtjaGFydENvbG9yTWFwOigwLHIucGlja0ZpZWxkcykodGhpcy5zZXR0aW5ncyxHKSxkYXRlUmFuZ2U6dGhpcy5zZXR0aW5ncy5kYXRlUmFuZ2V8fEUudGltZUZyYW1lc1siMTJtIl0udmFsdWUudmFsdWUsZGF0ZVJhbmdlT3B0aW9uczp0aGlzLnNldHRpbmdzLmRhdGVSYW5nZU9wdGlvbnMsZGlzYWJsZUxhc3RGYWxsaW5nRmxhc2g6dGhpcy5zZXR0aW5ncy5kaXNhYmxlTGFzdEZhbGxpbmdGbGFzaCxkaXNhYmxlTGFzdEdyb3dpbmdGbGFzaDp0aGlzLnNldHRpbmdzLmRpc2FibGVMYXN0R3Jvd2luZ0ZsYXNoLGhpZGVBYnNvbHV0ZUNoYW5nZTp0aGlzLnNldHRpbmdzLmhpZGVBYnNvbHV0ZUNoYW5nZSxpbmRleE5hbWVCb2xkOnRoaXMuc2V0dGluZ3MuaW5kZXhOYW1lQm9sZCxpbmRleE5vbkNsaWNrYWJsZTp0aGlzLnNldHRpbmdzLmluZGV4Tm9uQ2xpY2thYmxlLGlzRW1iZWRXaWRnZXQ6dGhpcy5zZXR0aW5ncy5pc0VtYmVkV2lkZ2V0LGxhcmdlQ2hhcnRVcmw6dGhpcy5zZXR0aW5ncy5sYXJnZUNoYXJ0VXJsLG5vTGlua3M6dGhpcy5zZXR0aW5ncy5ub0xpbmtzLG9ubHlEZXNjcmlwdGlvbjp0aGlzLnNldHRpbmdzLm9ubHlEZXNjcmlwdGlvbixwYWludExhc3RXaXRoQ2hhbmdlQ29sb3JzOnRoaXMuc2V0dGluZ3MucGFpbnRMYXN0V2l0aENoYW5nZUNvbG9ycyxzaG93RGF0YU1vZGU6dGhpcy5zZXR0aW5ncy5zaG93RGF0YU1vZGUsc2hvd01hcmtldFN0YXR1czp0aGlzLnNldHRpbmdzLnNob3dNYXJrZXRTdGF0dXMsc2hvd1RpdGxlczp0aGlzLnNldHRpbmdzLnNob3dUaXRsZXMsdHJhZGluZ3ZpZXdCYXNlVXJsOnRoaXMuc2V0dGluZ3MudHJhZGluZ3ZpZXdCYXNlVXJsLHV0bUluZm86dGhpcy5zZXR0aW5ncy51dG1JbmZvLHZhbHVlQm9sZDp0aGlzLnNldHRpbmdzLnZhbHVlQm9sZCx2YWx1ZVRpdGxlTWFya2VkOnRoaXMuc2V0dGluZ3MudmFsdWVUaXRsZU1hcmtlZCx3aWRnZXRDb2xvckNsYXNzTWFwOnRoaXMud2lkZ2V0Q29sb3JDbGFzc01hcCx3aWRnZXROYW1lOnRoaXMud2lkZ2V0TmFtZSxzaG93U3ltYm9sTG9nbzp0aGlzLnNldHRpbmdzLnNob3dTeW1ib2xMb2dvLGxvY2FsZTp0aGlzLnNldHRpbmdzLmxvY2FsZSxzaG93RmxvYXRpbmdUb29sdGlwOnRoaXMuc2V0dGluZ3Muc2hvd0Zsb2F0aW5nVG9vbHRpcCxjb2xvclRoZW1lOnRoaXMuc2V0dGluZ3MuY29sb3JUaGVtZX0pfV9zdG9wUGFnZSh0LGUpe2NvbnN0IHM9dGhpcy5fZ2V0Q2FjaGVkV2lkZ2V0UGFnZSh0KTtzJiYoZT90aGlzLl9zZXRTdG9wVGltZW91dCh0KTpzLnN0b3AoKSl9X29uQWN0aXZlUGFnZUNoYW5nZWQodCxlKXtlLmZvckVhY2goKChlLHMpPT57aWYodD09PXMpe2lmKHRoaXMuX3N0YXJ0UGFnZShIKGUpKSx0aGlzLnNldHRpbmdzLmlzRW1iZWRXaWRnZXQpe2NvbnN0IHQ9dGhpcy5fZ2V0Q2FjaGVkV2lkZ2V0UGFnZShIKGUpKTt0Py5hZGp1c3RUb0F2YWlsYWJsZVNpemVzKCl9fWVsc2UgdGhpcy5fc3RvcFBhZ2UoSChlKSl9KSl9X2dldEFjdGl2ZVBhZ2UodCl7Zm9yKGNvbnN0IGUgb2YgdClpZighZS5jbGFzc0xpc3QuY29udGFpbnMoImktaGlkZGVuIikpcmV0dXJuIGU7cmV0dXJuIG51bGx9X2NhY2hlV2lkZ2V0UGFnZSh0LGUpe3QuZGF0YSgid2F0Y2hsaXN0LXdpZGdldC1wYWdlIixlKX1fc2V0U3RvcFRpbWVvdXQodCl7CnRoaXMuX3N0b3BQYWdlVGltZW91dHNbdC5pbmRleCgpXT1zZXRUaW1lb3V0KHRoaXMuX3N0b3BQYWdlLmJpbmQodGhpcyx0KSl9X2RlbGV0ZVN0b3BUaW1lb3V0KHQpe2NvbnN0IGU9dGhpcy5fc3RvcFBhZ2VUaW1lb3V0c1t0LmluZGV4KCldO2UmJihjbGVhclRpbWVvdXQoZSksZGVsZXRlIHRoaXMuX3N0b3BQYWdlVGltZW91dHNbdC5pbmRleCgpXSl9fShpdCxYKTtpZihYLmlzRW1iZWRXaWRnZXQmJiFYLmZpeGVkQ2hhcnRIZWlnaHQmJiFYLmFkanVzdF93aWRnZXRfaGVpZ2h0KXtjb25zdCB0PSgwLGkuZW5zdXJlTm90TnVsbCkoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1ib2R5IikpO25ldyBSZXNpemVPYnNlcnZlcigoMCxvLmRlZmF1bHQpKChmdW5jdGlvbih0KXtjb25zdCBlPXRbMF0uY29udGVudFJlY3Q7ZS53aWR0aD4wJiZlLmhlaWdodD4wJiZvdC5hZGp1c3RUb0F2YWlsYWJsZVNpemVzKCl9KSwyMDApKS5vYnNlcnZlKHQpfWZ1bmN0aW9uIGF0KHQsZSxzKXtyZXR1cm4gdCBpbiBlPyJmYWxzZSIhPT1lW3RdOnNbdF19fX0sdD0+e3QuTygwLFs1ODY2Nyw1NjA5Myw0NjkwNywzMjgxNiw0MzMyNSwzOTA1LDE1OTMyLDU0NjgxLDUxNTA4LDMyNjMyLDg0MDgsMzgwMDIsNjI2MzAsNjI2ODEsNTY5OTksNDQ0NTQsMTMxNDgsNDkyNjUsODA3MDYsOTk4MjcsNTYyNTgsNzE0MjQsMzg2MCw2NTg2Miw1MTAzMSw5NDcwOCwzNTUyLDgwNTk0LDg3OTk1LDk0ODI1LDcyNzgsMTUwNDksNzg2ODgsOTE0NzFdLCgoKT0+e3JldHVybiBlPTkyNzk5Myx0KHQucz1lKTt2YXIgZX0pKTt0Lk8oKX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/91855.009764da61bd8c8c44be.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.731Z","timestamp":1785154590731,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/91855.009764da61bd8c8c44be.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-3ec8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9deff96608641ac060ba9b8c6839ebfb\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":16072,"size_decoded":3208,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (16072), with no line terminators","md5":"5af480f71e4ef9ec77601345a4929f5d","sha1":"ecefed36b921685bdd5209326cb6df8597dde83a","sha256":"3ebda9c5708c386688759cbfcdb87d7945032ec17792e052beb13dc8e324634f","sha512":"70df359a37d0201c61d77f5f9bd228c85b53c7ff114d8440380b0adff4052ffe3a1f7827d0ce1e96b173f732ba5064899dc6736b12d5b6899ed48f2562fb9e5d","ssdeep":"192:+8o3ziODLTrekcQDLBrvQXsDLHrH41UDLZrZwJL4DL84rp4P4wNvHNoIh2EHDc5n:+8o1vHvQ0Q6UlNvHNoIwyDVjEZ9eYJ","tlshash":"917210872355d8647877f6cd66aa63a952008c3ad002cefdc072aebd92c37f911e5f12","first_seen":"2026-07-16T13:40:49.854598Z","last_seen":"2026-07-27T14:23:37.842673Z","times_seen":260,"resource_available":false,"data":"LnNjcm9sbFdyYXAtRmFWMGJLN2V7bWFyZ2luOi00cHg7bWluLWhlaWdodDoxMDAlO3BhZGRpbmc6NHB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3dpZHRoOjEwMCV9LnNjcm9sbFdyYXAtRmFWMGJLN2Uub3ZlcmZsb3dTY3JvbGwtRmFWMGJLN2V7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofUBzdXBwb3J0cyAoLW1vei1hcHBlYXJhbmNlOm5vbmUpey5zY3JvbGxXcmFwLUZhVjBiSzdlLm92ZXJmbG93U2Nyb2xsLUZhVjBiSzdle3Njcm9sbGJhci13aWR0aDpub25lfX0uc2Nyb2xsV3JhcC1GYVYwYks3ZS5vdmVyZmxvd1Njcm9sbC1GYVYwYks3ZS5zYi1zY3JvbGxiYXItd3JhcHtkaXNwbGF5Om5vbmV9LnNjcm9sbFdyYXAtRmFWMGJLN2Uub3ZlcmZsb3dTY3JvbGwtRmFWMGJLN2U6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MDt3aWR0aDowfS5zY3JvbGxXcmFwLUZhVjBiSzdlLm92ZXJmbG93U2Nyb2xsLUZhVjBiSzdlOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiwuc2Nyb2xsV3JhcC1GYVYwYks3ZS5vdmVyZmxvd1Njcm9sbC1GYVYwYks3ZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7ZGlzcGxheTpub25lfS5zY3JvbGxXcmFwLUZhVjBiSzdlLm92ZXJmbG93U2Nyb2xsLUZhVjBiSzdlOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXJ7ZGlzcGxheTpub25lfS5zcXVhcmVUYWJzLUZhVjBiSzdle2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6cm93IG5vd3JhcDstLXVpLWxpYi1wcml2YXRlLXNxdWFyZVRhYnMtbWFyZ2luOnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZVRhYnMtZ2FwKX06bm90KC5vdmVyZmxvd1Njcm9sbC1GYVYwYks3ZSkgLnNxdWFyZVRhYnMtRmFWMGJLN2V7cGFkZGluZzowIHZhcigtLXVpLWxpYi1zcXVhcmVUYWJzLWhvcml6b250YWwtc2Nyb2xsLXBhZGRpbmcsMCl9Lm92ZXJmbG93U2Nyb2xsLUZhVjBiSzdlIC5zcXVhcmVUYWJzLUZhVjBiSzdle3BhZGRpbmctaW5saW5lLXN0YXJ0OnZhcigtLXVpLWxpYi1zcXVhcmVUYWJzLWhvcml6b250YWwtc2Nyb2xsLXBhZGRpbmcsMCl9Lm92ZXJmbG93U2Nyb2xsLUZhVjBiSzdlIC5zcXVhcmVUYWJzLUZhVjBiSzdlOmFmdGVye2NvbnRlbnQ6IiI7ZmxleC1zaHJpbms6MDt3aWR0aDpjYWxjKHZhcigtLXVpLWxpYi1zcXVhcmVUYWJzLWhvcml6b250YWwtc2Nyb2xsLXBhZGRpbmcsIDBweCkgKyA0cHgpfS5vdmVyZmxvd1dyYXAtRmFWMGJLN2UgLnNxdWFyZVRhYnMtRmFWMGJLN2V7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVUYWJzLW1hcmdpbjowO2ZsZXgtd3JhcDp3cmFwO2dhcDp2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVUYWJzLWdhcCl9LnNxdWFyZVRhYnMtRmFWMGJLN2UgLmNvbnRlbnQtRmFWMGJLN2V7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0uc3F1YXJlVGFicy1GYVYwYks3ZSAudmVydGljYWxDb250ZW50LUZhVjBiSzdle2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOmZpdC1jb250ZW50fS52ZXJ0aWNhbC1GYVYwYks3ZXtmbGV4LWZsb3c6Y29sdW1ufS54c21hbGwtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZVRhYnMtbWFyZ2luKX0ueHNtYWxsLUZhVjBiSzdlIC5zcXVhcmVUYWJCdXR0b24tRmFWMGJLN2U6aGFzKC5zdGFydFNsb3RXcmFwLUZhVjBiSzdlKXtwYWRkaW5nLWlubGluZS1zdGFydDo2cHh9LnhzbWFsbC1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguc3RhcnRTbG90V3JhcC1GYVYwYks3ZSk6bm90KDpoYXMoLmNvbnRlbnQtRmFWMGJLN2UpKXthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzowfS54c21hbGwtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLmVuZFNsb3RXcmFwLUZhVjBiSzdlKTpoYXMoLmNvbnRlbnQtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLWVuZDo2cHh9LnhzbWFsbC1GYVYwYks3ZSAuZW5kU2xvdFdyYXAtRmFWMGJLN2UsLnhzbWFsbC1GYVYwYks3ZSAuZW5kVXBwZXJTbG90LUZhVjBiSzdlLC54c21hbGwtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3JtYWx9LnhzbWFsbC1GYVYwYks3ZSAuZW5kU2xvdFdyYXAtRmFWMGJLN2UsLnhzbWFsbC1GYVYwYks3ZSAuc3RhcnRTbG90V3JhcC1GYVYwYks3ZXttYXgtaGVpZ2h0Om1heC1jb250ZW50O21heC13aWR0aDptYXgtY29udGVudH0ueHNtYWxsLUZhVjBiSzdlIC5lbmRVcHBlclNsb3QtRmFWMGJLN2V7aW5zZXQtaW5saW5lLWVuZDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O3otaW5kZXg6MTB9LnhzbWFsbC1GYVYwYks3ZSAuc3RhcnRTbG90V3JhcC1GYVYwYks3ZXttYXJnaW4taW5saW5lLWVuZDo0cHh9LnhzbWFsbC1GYVYwYks3ZSAuZW5kU2xvdFdyYXAtRmFWMGJLN2V7bWFyZ2luLWlubGluZS1zdGFydDo0cHh9LnhzbWFsbC1GYVYwYks3ZSAuc3RhcnRTbG90V3JhcEljb25Pbmx5LUZhVjBiSzdle21hcmdpbi1pbmxpbmUtZW5kOjB9LnNtYWxsLUZhVjBiSzdlIC5zcXVhcmVUYWJCdXR0b24tRmFWMGJLN2U6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1zdGFydDp2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVUYWJzLW1hcmdpbil9LnNtYWxsLUZhVjBiSzdlIC5zcXVhcmVUYWJCdXR0b24tRmFWMGJLN2U6aGFzKC5zdGFydFNsb3RXcmFwLUZhVjBiSzdlKXtwYWRkaW5nLWlubGluZS1zdGFydDoxMHB4fS5zbWFsbC1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguc3RhcnRTbG90V3JhcC1GYVYwYks3ZSk6bm90KDpoYXMoLmNvbnRlbnQtRmFWMGJLN2UpKXthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzowfS5zbWFsbC1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguZW5kU2xvdFdyYXAtRmFWMGJLN2UpOmhhcyguY29udGVudC1GYVYwYks3ZSl7cGFkZGluZy1pbmxpbmUtZW5kOjEwcHh9LnNtYWxsLUZhVjBiSzdlIC5lbmRTbG90V3JhcC1GYVYwYks3ZSwuc21hbGwtRmFWMGJLN2UgLmVuZFVwcGVyU2xvdC1GYVYwYks3ZSwuc21hbGwtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3JtYWx9LnNtYWxsLUZhVjBiSzdlIC5lbmRTbG90V3JhcC1GYVYwYks3ZSwuc21hbGwtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWF4LWhlaWdodDptYXgtY29udGVudDttYXgtd2lkdGg6bWF4LWNvbnRlbnR9LnNtYWxsLUZhVjBiSzdlIC5lbmRVcHBlclNsb3QtRmFWMGJLN2V7aW5zZXQtaW5saW5lLWVuZDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O3otaW5kZXg6MTB9LnNtYWxsLUZhVjBiSzdlIC5zdGFydFNsb3RXcmFwLUZhVjBiSzdle21hcmdpbi1pbmxpbmUtZW5kOjRweH0uc21hbGwtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdle21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4fS5zbWFsbC1GYVYwYks3ZSAuc3RhcnRTbG90V3JhcEljb25Pbmx5LUZhVjBiSzdle21hcmdpbi1pbmxpbmUtZW5kOjB9Lm1lZGl1bS1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1pbmxpbmUtc3RhcnQ6dmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlVGFicy1tYXJnaW4pfS5tZWRpdW0tRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9Lm1lZGl1bS1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguc3RhcnRTbG90V3JhcC1GYVYwYks3ZSk6bm90KDpoYXMoLmNvbnRlbnQtRmFWMGJLN2UpKXthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzowfS5tZWRpdW0tRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLmVuZFNsb3RXcmFwLUZhVjBiSzdlKTpoYXMoLmNvbnRlbnQtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLWVuZDoxMnB4fS5tZWRpdW0tRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC5tZWRpdW0tRmFWMGJLN2UgLmVuZFVwcGVyU2xvdC1GYVYwYks3ZSwubWVkaXVtLUZhVjBiSzdlIC5zdGFydFNsb3RXcmFwLUZhVjBiSzdle2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7d2hpdGUtc3BhY2U6bm9ybWFsfS5tZWRpdW0tRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC5tZWRpdW0tRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWF4LWhlaWdodDptYXgtY29udGVudDttYXgtd2lkdGg6bWF4LWNvbnRlbnR9Lm1lZGl1bS1GYVYwYks3ZSAuZW5kVXBwZXJTbG90LUZhVjBiSzdle2luc2V0LWlubGluZS1lbmQ6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweDt6LWluZGV4OjEwfS5tZWRpdW0tRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWFyZ2luLWlubGluZS1lbmQ6NHB4fS5tZWRpdW0tRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdle21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4fS5tZWRpdW0tRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXBJY29uT25seS1GYVYwYks3ZXttYXJnaW4taW5saW5lLWVuZDowfS5tZWRpdW1XaXRoU21hbGxGb250LUZhVjBiSzdlIC5zcXVhcmVUYWJCdXR0b24tRmFWMGJLN2U6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1zdGFydDp2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVUYWJzLW1hcmdpbil9Lm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9Lm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2UpOm5vdCg6aGFzKC5jb250ZW50LUZhVjBiSzdlKSl7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MH0ubWVkaXVtV2l0aFNtYWxsRm9udC1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguZW5kU2xvdFdyYXAtRmFWMGJLN2UpOmhhcyguY29udGVudC1GYVYwYks3ZSl7cGFkZGluZy1pbmxpbmUtZW5kOjEycHh9Lm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC5tZWRpdW1XaXRoU21hbGxGb250LUZhVjBiSzdlIC5lbmRVcHBlclNsb3QtRmFWMGJLN2UsLm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3JtYWx9Lm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC5tZWRpdW1XaXRoU21hbGxGb250LUZhVjBiSzdlIC5zdGFydFNsb3RXcmFwLUZhVjBiSzdle21heC1oZWlnaHQ6bWF4LWNvbnRlbnQ7bWF4LXdpZHRoOm1heC1jb250ZW50fS5tZWRpdW1XaXRoU21hbGxGb250LUZhVjBiSzdlIC5lbmRVcHBlclNsb3QtRmFWMGJLN2V7aW5zZXQtaW5saW5lLWVuZDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O3otaW5kZXg6MTB9Lm1lZGl1bVdpdGhTbWFsbEZvbnQtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWFyZ2luLWlubGluZS1lbmQ6NHB4fS5tZWRpdW1XaXRoU21hbGxGb250LUZhVjBiSzdlIC5lbmRTbG90V3JhcC1GYVYwYks3ZXttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0ubWVkaXVtV2l0aFNtYWxsRm9udC1GYVYwYks3ZSAuc3RhcnRTbG90V3JhcEljb25Pbmx5LUZhVjBiSzdle21hcmdpbi1pbmxpbmUtZW5kOjB9LnhsYXJnZS1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1pbmxpbmUtc3RhcnQ6dmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlVGFicy1tYXJnaW4pfS54bGFyZ2UtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLXN0YXJ0OjIycHh9LnhsYXJnZS1GYVYwYks3ZSAuc3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlOmhhcyguc3RhcnRTbG90V3JhcC1GYVYwYks3ZSk6bm90KDpoYXMoLmNvbnRlbnQtRmFWMGJLN2UpKXthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzowfS54bGFyZ2UtRmFWMGJLN2UgLnNxdWFyZVRhYkJ1dHRvbi1GYVYwYks3ZTpoYXMoLmVuZFNsb3RXcmFwLUZhVjBiSzdlKTpoYXMoLmNvbnRlbnQtRmFWMGJLN2Upe3BhZGRpbmctaW5saW5lLWVuZDoyMnB4fS54bGFyZ2UtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC54bGFyZ2UtRmFWMGJLN2UgLmVuZFVwcGVyU2xvdC1GYVYwYks3ZSwueGxhcmdlLUZhVjBiSzdlIC5zdGFydFNsb3RXcmFwLUZhVjBiSzdle2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7d2hpdGUtc3BhY2U6bm9ybWFsfS54bGFyZ2UtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdlLC54bGFyZ2UtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWF4LWhlaWdodDptYXgtY29udGVudDttYXgtd2lkdGg6bWF4LWNvbnRlbnR9LnhsYXJnZS1GYVYwYks3ZSAuZW5kVXBwZXJTbG90LUZhVjBiSzdle2luc2V0LWlubGluZS1lbmQ6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweDt6LWluZGV4OjEwfS54bGFyZ2UtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXAtRmFWMGJLN2V7bWFyZ2luLWlubGluZS1lbmQ6OHB4fS54bGFyZ2UtRmFWMGJLN2UgLmVuZFNsb3RXcmFwLUZhVjBiSzdle21hcmdpbi1pbmxpbmUtc3RhcnQ6OHB4fS54bGFyZ2UtRmFWMGJLN2UgLnN0YXJ0U2xvdFdyYXBJY29uT25seS1GYVYwYks3ZXttYXJnaW4taW5saW5lLWVuZDowfS5zcXVhcmVUYWJDb3VudGVyLUZhVjBiSzdle3otaW5kZXg6MTB9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtU0VqaTojMDAwMDstLV8xLVNFamk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1fMi1TRWppOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzMtU0VqaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVNFamk6IzAwMDA7LS1fMS1TRWppOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzItU0VqaTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMy1TRWppOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjZ7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtU0VqaSk7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtkaXNwbGF5OmZsZXg7ZmxleC1mbG93OmNvbHVtbiBub3dyYXA7ZmxleC1zaHJpbms6MDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6ZGVmYXVsdH0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnNlbGVjdGVkLVJLS1RSaFo2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcik7Y29sb3I6dmFyKC0tXzItU0VqaSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjY6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKTtjb2xvcjp2YXIoLS1fMi1TRWppKX19LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNjphY3RpdmU6bm90KC5kaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtUktLVFJoWjYpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzEtU0VqaSk7Y29sb3I6dmFyKC0tXzItU0VqaSl9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5kaXNhYmxlZC1SS0tUUmhaNiwuc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LmRpc2FibGVkLVJLS1RSaFo2Om5vdCguZGlzYWJsZUFjdGl2ZVN0YXRlU3R5bGVzLVJLS1RSaFo2KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVNFamkpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtZGlzYWJsZWQpfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjZ7b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmV9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNjpmb2N1c3tvdXRsaW5lOm5vbmV9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNjpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2OmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6bm9uZTtoZWlnaHQ6Y2FsYygxMDAlICsgOHB4KTtpbnNldC1pbmxpbmUtc3RhcnQ6LTRweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNHB4O3dpZHRoOmNhbGMoMTAwJSArIDhweCk7ei1pbmRleDoxfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjY6Zm9jdXM6YWZ0ZXJ7ZGlzcGxheTpibG9ja30uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2OmZvY3VzLXZpc2libGU6YWZ0ZXJ7ZGlzcGxheTpibG9ja30uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2OmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSk6YWZ0ZXJ7ZGlzcGxheTpub25lfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjY6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZSk7Ym9yZGVyLXJhZGl1czoxMnB4fS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYuZGlzYWJsZUZvY3VzT3V0bGluZS1SS0tUUmhaNjphZnRlcntkaXNwbGF5Om5vbmV9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi54bGFyZ2UtUktLVFJoWjZ7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToyMHB4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjMwcHg7aGVpZ2h0OjU2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpO21pbi13aWR0aDo1NnB4O3BhZGRpbmc6MCAyNnB4fS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueGxhcmdlLVJLS1RSaFo2IC50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2LC5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueGxhcmdlLVJLS1RSaFo2LnNlbGVjdGVkLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zdHlsZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MjBweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo2MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2Lm1lZGl1bS1SS0tUUmhaNntmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjQwcHg7bWluLXdpZHRoOjQwcHg7cGFkZGluZzowIDE2cHh9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5tZWRpdW0tUktLVFJoWjYsLnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5tZWRpdW0tUktLVFJoWjYuc2VsZWN0ZWQtUktLVFJoWjZ7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxNnB4Oy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MjRweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCl9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5tZWRpdW0tUktLVFJoWjYuc2VsZWN0ZWQtUktLVFJoWjZ7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NjAwfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYubWVkaXVtLVJLS1RSaFo2IC50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2e2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uO2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2Lm1lZGl1bS1SS0tUUmhaNiAudGFiSGlkZGVuQ29udGVudC1SS0tUUmhaNiwuc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnNtYWxsLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTZweDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYuc21hbGwtUktLVFJoWjZ7Ym9yZGVyLXJhZGl1czo2cHg7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDozNHB4O21pbi13aWR0aDozNHB4O3BhZGRpbmc6MCB2YXIoLS11aS1saWItc3F1YXJlVGFiLWJ1dHRvbi1zbWFsbC1pbmxpbmUtcGFkZGluZy1vdmVycmlkZSwxMnB4KX0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnNtYWxsLVJLS1RSaFo2OmFmdGVye2JvcmRlci1yYWRpdXM6MTBweH0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnNtYWxsLVJLS1RSaFo2IC50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2LC5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYuc21hbGwtUktLVFJoWjYuc2VsZWN0ZWQtUktLVFJoWjZ7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxNnB4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjYwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueHNtYWxsLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zdHlsZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTRweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo0MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NnB4O2hlaWdodDoyOHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KTttaW4td2lkdGg6MjhweDtwYWRkaW5nOjAgOHB4fS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueHNtYWxsLVJLS1RSaFo2OmFmdGVye2JvcmRlci1yYWRpdXM6MTBweH0uc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnhzbWFsbC1SS0tUUmhaNiAudGFiSGlkZGVuQ29udGVudC1SS0tUUmhaNiwuc3F1YXJlVGFiQnV0dG9uLVJLS1RSaFo2LnhzbWFsbC1SS0tUUmhaNi5zZWxlY3RlZC1SS0tUUmhaNntmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo2MDB9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5tZWRpdW1XaXRoU21hbGxGb250LVJLS1RSaFo2LC5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueHNtYWxsLVJLS1RSaFo2IC50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2LC5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYueHNtYWxsLVJLS1RSaFo2LnNlbGVjdGVkLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTRweDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpfS5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYubWVkaXVtV2l0aFNtYWxsRm9udC1SS0tUUmhaNntmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjQwcHg7bWluLXdpZHRoOjQwcHg7cGFkZGluZzowIDE2cHh9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5tZWRpdW1XaXRoU21hbGxGb250LVJLS1RSaFo2IC50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2LC5zcXVhcmVUYWJCdXR0b24tUktLVFJoWjYubWVkaXVtV2l0aFNtYWxsRm9udC1SS0tUUmhaNi5zZWxlY3RlZC1SS0tUUmhaNntmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxUcmVidWNoZXQgTVMsUm9ib3RvLFVidW50dSxzYW5zLXNlcmlmO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uO2ZvbnQtc3R5bGU6bm9ybWFsOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE0cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC13ZWlnaHQ6NjAwOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MThweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCl9LnNxdWFyZVRhYkJ1dHRvbi1SS0tUUmhaNi5mYWtlLVJLS1RSaFo2e2luc2V0LWlubGluZS1zdGFydDotOTk5OTk5cHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDptYXgtY29udGVudDt6LWluZGV4Oi0xfS52ZXJ0aWNhbFRhYnNXcmFwcGVyLVJLS1RSaFo2ey0tdWktbGliLXNxdWFyZVRhYnMtaG9yaXpvbnRhbC1zY3JvbGwtcGFkZGluZzowcHh9LnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6YXV0b30udmVydGljYWxCdXR0b24tUktLVFJoWjY6Zm9jdXN7b3V0bGluZTpub25lfS52ZXJ0aWNhbEJ1dHRvbi1SS0tUUmhaNjpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udmVydGljYWxCdXR0b24tUktLVFJoWjY6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpub25lO2hlaWdodDpjYWxjKDEwMCUgKyA0cHgpO2luc2V0LWlubGluZS1zdGFydDotMnB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7d2lkdGg6Y2FsYygxMDAlICsgNHB4KTt6LWluZGV4OjF9LnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2OmZvY3VzOmFmdGVye2Rpc3BsYXk6YmxvY2t9LnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2OmZvY3VzLXZpc2libGU6YWZ0ZXJ7ZGlzcGxheTpibG9ja30udmVydGljYWxCdXR0b24tUktLVFJoWjY6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKTphZnRlcntkaXNwbGF5Om5vbmV9LnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2LnNtYWxsLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zdHlsZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTZweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo0MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0udmVydGljYWxCdXR0b24tUktLVFJoWjYuc21hbGwtUktLVFJoWjYgLnRhYkhpZGRlbkNvbnRlbnQtUktLVFJoWjYsLnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2LnNtYWxsLVJLS1RSaFo2LnNlbGVjdGVkLVJLS1RSaFo2e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zdHlsZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTZweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo2MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0udmVydGljYWxCdXR0b24tUktLVFJoWjYuc21hbGwtUktLVFJoWjY6YWZ0ZXIsLnZlcnRpY2FsQnV0dG9uLVJLS1RSaFo2LnhzbWFsbC1SS0tUUmhaNjphZnRlcntib3JkZXItcmFkaXVzOjhweH0udmVydGljYWxCdXR0b24tUktLVFJoWjYubWVkaXVtLVJLS1RSaFo2OmFmdGVyLC52ZXJ0aWNhbEJ1dHRvbi1SS0tUUmhaNi54bGFyZ2UtUktLVFJoWjY6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czoxMHB4fS5jb250ZW50LVJLS1RSaFo2e2ZsZXgtc2hyaW5rOjB9LmNvbnRlbnQtUktLVFJoWjYsLnRhYkNvbnRlbnQtUktLVFJoWjZ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS50YWJDb250ZW50LVJLS1RSaFo2e21heC13aWR0aDoxMDAlfS50YWJIaWRkZW5Db250ZW50LVJLS1RSaFo2e2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MDt2aXNpYmlsaXR5OmhpZGRlbn0uZW5kU2xvdEluRGlzY2xvc3VyZS1SS0tUUmhaNj5zcGFuey0tdWktbGliLWluLWNvdW50ZXItc2l6ZTozOy0tdWktbGliLWNvdW50ZXItYm9yZGVyLW91dGxpbmUtcHJpbWFyeTpub25lfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70644.448743def325feb61967.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.039Z","timestamp":1785154591039,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/70644.448743def325feb61967.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a10225d-a54f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 22 May 2026 09:31:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/22/2026 10:44:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7c782cea87f3512ea4e256a258569a6b\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":42319,"size_decoded":16719,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3071)","md5":"8cde28c2b9d157a818e87a14278c7a00","sha1":"1de831d7926ffcdfe3bdd82419e6225185d37e34","sha256":"f5576d28408b822a04da2e824feb2d936edf1e1959b29e0849e709c4ff1beba7","sha512":"dfeb6f084e4ee784b4a74a0525c09ed8d481320b0708417429758d5d393b7f6eec9e153c60a63025903dc145cd998cce1676335c44ba0e9011bf068fb3dd2e24","ssdeep":"384:57bUjPiPk+mozZ2DZNFAw0wg7LEJ8yBzjkjWQIfQ/6URF2a6nUFlUTr1H6ssDLv5:57gjPi8+hiTRXbfQOXXUFwhHnecsfHp","tlshash":"ae13f5c936d6b02452b73475007f710bf23eaea1284e8450d117e8d87cb5a9fa27be6d","first_seen":"2026-05-23T04:38:21.326763Z","last_seen":"2026-07-27T14:17:30.797308Z","times_seen":850,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3MDY0NF0sezg3MDY0NChlLG4sdCl7InVzZSBzdHJpY3QiO3QuZChuLHtkaXNhYmxlQWN0aXZpdHlUcmFja2luZzooKT0+eGUsZGlzYWJsZUFub255bW91c1RyYWNraW5nOigpPT5DZSxkaXNjYXJkQnJhY2U6KCk9PmtlLGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazooKT0+U2UsZW5hYmxlQW5vbnltb3VzVHJhY2tpbmc6KCk9Pk9lLG5ld1RyYWNrZXI6KCk9PkVlLHNldFVzZXJJZDooKT0+VGUsdHJhY2tQYWdlVmlldzooKT0+SWUsdHJhY2tTZWxmRGVzY3JpYmluZ0V2ZW50OigpPT5BZX0pO3ZhciByPWZ1bmN0aW9uKCl7cmV0dXJuIHI9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oZSl7Zm9yKHZhciBuLHQ9MSxyPWFyZ3VtZW50cy5sZW5ndGg7dDxyO3QrKylmb3IodmFyIG8gaW4gbj1hcmd1bWVudHNbdF0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sbykmJihlW29dPW5bb10pO3JldHVybiBlfSxyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07T2JqZWN0LmNyZWF0ZTtmdW5jdGlvbiBvKGUsbix0KXtpZih0fHwyPT09YXJndW1lbnRzLmxlbmd0aClmb3IodmFyIHIsbz0wLGk9bi5sZW5ndGg7bzxpO28rKykhciYmbyBpbiBufHwocnx8KHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobiwwLG8pKSxyW29dPW5bb10pO3JldHVybiBlLmNvbmNhdChyfHxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuKSl9T2JqZWN0LmNyZWF0ZTt2YXIgaT10KDUzNzIwNCk7ZnVuY3Rpb24gYShlKXtpZighZSlyZXR1cm4gZTtzd2l0Y2goNC1lLmxlbmd0aCU0KXtjYXNlIDI6ZSs9Ij09IjticmVhaztjYXNlIDM6ZSs9Ij0ifXJldHVybiBmdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGEsdT1mdW5jdGlvbihlKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGUuc3BsaXQoIiIpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIiUiKygiMDAiK2UuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikpLnNsaWNlKC0yKX0pKS5qb2luKCIiKSl9LHM9MCxsPTAsZj0iIixkPVtdO2lmKCFlKXJldHVybiBlO2UrPSIiO2Rve249KGE9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpPDwxOHxjLmluZGV4T2YoZS5jaGFyQXQocysrKSk8PDEyfChvPWMuaW5kZXhPZihlLmNoYXJBdChzKyspKSk8PDZ8KGk9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpKSk+PjE2JjI1NSx0PWE+PjgmMjU1LHI9MjU1JmEsZFtsKytdPTY0PT09bz9TdHJpbmcuZnJvbUNoYXJDb2RlKG4pOjY0PT09aT9TdHJpbmcuZnJvbUNoYXJDb2RlKG4sdCk6U3RyaW5nLmZyb21DaGFyQ29kZShuLHQscil9d2hpbGUoczxlLmxlbmd0aCk7cmV0dXJuIGY9ZC5qb2luKCIiKSx1KGYucmVwbGFjZSgvXDArJC8sIiIpKX0oZS5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKSl9ZnVuY3Rpb24gdShlKXtpZighZSlyZXR1cm4gZTt2YXIgbj1mdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGE9MCx1PTAscz1bXTtpZighZSlyZXR1cm4gZTtlPXVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChlKSk7ZG97bj0oaT1lLmNoYXJDb2RlQXQoYSsrKTw8MTZ8ZS5jaGFyQ29kZUF0KGErKyk8PDh8ZS5jaGFyQ29kZUF0KGErKykpPj4xOCY2Myx0PWk+PjEyJjYzLHI9aT4+NiY2MyxvPTYzJmksc1t1KytdPWMuY2hhckF0KG4pK2MuY2hhckF0KHQpK2MuY2hhckF0KHIpK2MuY2hhckF0KG8pfXdoaWxlKGE8ZS5sZW5ndGgpO3ZhciBsPXMuam9pbigiIiksZj1lLmxlbmd0aCUzO3JldHVybihmP2wuc2xpY2UoMCxmLTMpOmwpKyI9PT0iLnNsaWNlKGZ8fDMpfShlKTtyZXR1cm4gbi5yZXBsYWNlKC89L2csIiIpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIil9dmFyIGM9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89IjtmdW5jdGlvbiBzKCl7dmFyIGUsbj17fSx0PVtdLHI9W10sbz1bXSxpPWZ1bmN0aW9uKGUsdCl7bnVsbCE9dCYmIiIhPT10JiYobltlXT10KX07cmV0dXJue2FkZDppLGFkZERpY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikmJmkobixlW25dKX0sYWRkSnNvbjpmdW5jdGlvbihlLG4sbyl7aWYobyYmZihvKSl7dmFyIGk9e2tleUlmRW5jb2RlZDplLGtleUlmTm90RW5jb2RlZDpuLGpzb246b307ci5wdXNoKGkpLHQucHVzaChpKX19LGFkZENvbnRleHRFbnRpdHk6ZnVuY3Rpb24oZSl7by5wdXNoKGUpfSxnZXRQYXlsb2FkOmZ1bmN0aW9uKCl7cmV0dXJuIG59LGdldEpzb246ZnVuY3Rpb24oKXtyZXR1cm4gdH0sd2l0aEpzb25Qcm9jZXNzb3I6ZnVuY3Rpb24obil7ZT1ufSxidWlsZDpmdW5jdGlvbigpe3JldHVybiBudWxsPT1lfHxlKHRoaXMscixvKSxufX19ZnVuY3Rpb24gbChlKXtyZXR1cm4gZnVuY3Rpb24obix0LHIpe2Zvcih2YXIgaT1mdW5jdGlvbih0LHIsbyl7dmFyIGk9SlNPTi5zdHJpbmdpZnkodCk7ZT9uLmFkZChyLHUoaSkpOm4uYWRkKG8saSl9LGM9ZnVuY3Rpb24odCxyKXt2YXIgbz10fHxmdW5jdGlvbigpe3ZhciB0PW4uZ2V0UGF5bG9hZCgpO2lmKGU/dC5jeDp0LmNvKXJldHVybiBKU09OLnBhcnNlKGU/YSh0LmN4KTp0LmNvKX0oKTtyZXR1cm4gbz9vLmRhdGE9by5kYXRhLmNvbmNhdChyLmRhdGEpOm89cixvfSxzPXZvaWQgMCxsPTAsZj10O2w8Zi5sZW5ndGg7bCsrKXt2YXIgZD1mW2xdOyJjeCI9PT1kLmtleUlmRW5jb2RlZD9zPWMocyxkLmpzb24pOmkoZC5qc29uLGQua2V5SWZFbmNvZGVkLGQua2V5SWZOb3RFbmNvZGVkKX0odC5sZW5ndGg9MCxyLmxlbmd0aCkmJihzPWMocyx7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIixkYXRhOm8oW10sciwhMCl9KSxyLmxlbmd0aD0wKTtzJiZpKHMsImN4IiwiY28iKX19ZnVuY3Rpb24gZihlKXtpZighZChlKSlyZXR1cm4hMQo7Zm9yKHZhciBuIGluIGUpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbnVsbCE9ZSYmKGUuY29uc3RydWN0b3I9PT17fS5jb25zdHJ1Y3Rvcnx8ZS5jb25zdHJ1Y3Rvcj09PVtdLmNvbnN0cnVjdG9yKX12YXIgdixnPSJTbm93cGxvdzogIjshZnVuY3Rpb24oZSl7ZVtlLm5vbmU9MF09Im5vbmUiLGVbZS5lcnJvcj0xXT0iZXJyb3IiLGVbZS53YXJuPTJdPSJ3YXJuIixlW2UuZGVidWc9M109ImRlYnVnIixlW2UuaW5mbz00XT0iaW5mbyJ9KHZ8fCh2PXt9KSk7dmFyIHA9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9di53YXJuKTtyZXR1cm57c2V0TG9nTGV2ZWw6ZnVuY3Rpb24obil7ZT12W25dP246di53YXJufSx3YXJuOmZ1bmN0aW9uKG4sdCl7Zm9yKHZhciByPVtdLGk9MjtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKXJbaS0yXT1hcmd1bWVudHNbaV07aWYoZT49di53YXJuJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbjt0P2NvbnNvbGUud2Fybi5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS53YXJuLmFwcGx5KGNvbnNvbGUsbyhbYV0sciwhMSkpfX0sZXJyb3I6ZnVuY3Rpb24obix0KXtmb3IodmFyIHI9W10saT0yO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTtpZihlPj12LmVycm9yJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbisiXG4iO3Q/Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2FdLHIsITEpKX19LGRlYnVnOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuZGVidWcmJiJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS5kZWJ1Zy5hcHBseShjb25zb2xlLG8oW2crbl0sdCwhMSkpfSxpbmZvOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuaW5mbyYmInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLmluZm8uYXBwbHkoY29uc29sZSxvKFtnK25dLHQsITEpKX19fSgpO2Z1bmN0aW9uIG0oKXt2YXIgZT1bXSxuPVtdLHQ9ZnVuY3Rpb24odCl7dmFyIHI9ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPWUuZ2V0SnNvbigpLHQ9MCxyPW47dDxyLmxlbmd0aDt0Kyspe3ZhciBvPXJbdF07aWYoInVlX3B4Ij09PW8ua2V5SWZFbmNvZGVkJiYib2JqZWN0Ij09dHlwZW9mIG8uanNvbi5kYXRhKXt2YXIgaT1vLmpzb24uZGF0YS5zY2hlbWE7aWYoInN0cmluZyI9PXR5cGVvZiBpKXJldHVybiBpfX1yZXR1cm4iIn0odCksbz1mdW5jdGlvbihlKXt2YXIgbj1lLmdldFBheWxvYWQoKS5lO3JldHVybiJzdHJpbmciPT10eXBlb2Ygbj9uOiIifSh0KSxpPVtdLGE9RShlLHQsbyxyKTtpLnB1c2guYXBwbHkoaSxhKTt2YXIgdT1mdW5jdGlvbihlLG4sdCxyKXt2YXIgbyxpPVAoZSksYT1mdW5jdGlvbihlKXt2YXIgbz1mdW5jdGlvbihlLG4sdCxyKXtpZihUKGUpKXt2YXIgbz1lWzBdLGk9ITE7dHJ5e2k9byh7ZXZlbnQ6bi5nZXRQYXlsb2FkKCksZXZlbnRUeXBlOnQsZXZlbnRTY2hlbWE6cn0pfWNhdGNoKGUpe2k9ITF9aWYoITA9PT1pKXJldHVybiBFKGVbMV0sbix0LHIpfWVsc2UgaWYoSShlKSYmZnVuY3Rpb24oZSxuKXt2YXIgdD0wLHI9MCxvPWUuYWNjZXB0O0FycmF5LmlzQXJyYXkobyk/ZS5hY2NlcHQuc29tZSgoZnVuY3Rpb24oZSl7cmV0dXJuIEMoZSxuKX0pKSYmcisrOiJzdHJpbmciPT10eXBlb2YgbyYmQyhvLG4pJiZyKys7dmFyIGk9ZS5yZWplY3Q7QXJyYXkuaXNBcnJheShpKT9lLnJlamVjdC5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gQyhlLG4pfSkpJiZ0Kys6InN0cmluZyI9PXR5cGVvZiBpJiZDKGksbikmJnQrKztpZihyPjAmJjA9PT10KXJldHVybiEwO2lmKDA9PT1yJiZ0PjApcmV0dXJuITE7cmV0dXJuITF9KGVbMF0scikpcmV0dXJuIEUoZVsxXSxuLHQscik7cmV0dXJuW119KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30sdT1pLm1hcChhKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8sdS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9KG4sdCxvLHIpO3JldHVybiBpLnB1c2guYXBwbHkoaSx1KSxpfTtyZXR1cm57Z2V0R2xvYmFsUHJpbWl0aXZlczpmdW5jdGlvbigpe3JldHVybiBlfSxnZXRDb25kaXRpb25hbFByb3ZpZGVyczpmdW5jdGlvbigpe3JldHVybiBufSxhZGRHbG9iYWxDb250ZXh0czpmdW5jdGlvbih0KXtmb3IodmFyIHI9W10sbz1bXSxpPTAsYT10O2k8YS5sZW5ndGg7aSsrKXt2YXIgdT1hW2ldO0EodSk/ci5wdXNoKHUpOngodSkmJm8ucHVzaCh1KX1lPWUuY29uY2F0KG8pLG49bi5jb25jYXQocil9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXtuPVtdLGU9W119LHJlbW92ZUdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1mdW5jdGlvbih0KXtBKHQpP249bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeShlKSE9PUpTT04uc3RyaW5naWZ5KHQpfSkpOngodCkmJihlPWUuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSkhPT1KU09OLnN0cmluZ2lmeSh0KX0pKSl9LG89MCxpPXQ7bzxpLmxlbmd0aDtvKyspe3IoaVtvXSl9fSxnZXRBcHBsaWNhYmxlQ29udGV4dHM6ZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX1mdW5jdGlvbiBoKGUpe3ZhciBuPWUuc3BsaXQoIi4iKTtyZXR1cm4hIShuJiZuLmxlbmd0aD4xKSYmZnVuY3Rpb24oZSl7aWYoIioiPT09ZVswXXx8IioiPT09ZVsxXSlyZXR1cm4hMTtpZihlLnNsaWNlKDIpLmxlbmd0aD4wKXtmb3IodmFyIG49ITEsdD0wLHI9ZS5zbGljZSgyKTt0PHIubGVuZ3RoO3QrKylpZigiKiI9PT1yW3RdKW49ITA7ZWxzZSBpZihuKXJldHVybiExO3JldHVybiEwfQpyZXR1cm4gMj09ZS5sZW5ndGh9KG4pfWZ1bmN0aW9uIHkoZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KCg/Oig/OlthLXpBLVowLTktX10rfFxcKikuKSsoPzpbYS16QS1aMC05LV9dK3xcXCopKS8oW2EtekEtWjAtOS1fLl0rfFxcKikvanNvbnNjaGVtYS8oWzEtOV1bMC05XSp8XFwqKS0oMHxbMS05XVswLTldKnxcXCopLSgwfFsxLTldWzAtOV0qfFxcKikkIikuZXhlYyhlKTtpZihudWxsIT09biYmaChuWzFdKSlyZXR1cm4gbi5zbGljZSgxLDYpfWZ1bmN0aW9uIHcoZSl7dmFyIG49eShlKTtpZihuKXt2YXIgdD1uWzBdO3JldHVybiA1PT09bi5sZW5ndGgmJmgodCl9cmV0dXJuITF9ZnVuY3Rpb24gYihlKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSkmJmUuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZX0pKX0oZSk/ZS5ldmVyeSgoZnVuY3Rpb24oZSl7cmV0dXJuIHcoZSl9KSk6InN0cmluZyI9PXR5cGVvZiBlJiZ3KGUpfWZ1bmN0aW9uIGsoZSl7dmFyIG49ZTtyZXR1cm4hIShmKG4pJiYic2NoZW1hImluIG4mJiJkYXRhImluIG4pJiYoInN0cmluZyI9PXR5cGVvZiBuLnNjaGVtYSYmIm9iamVjdCI9PXR5cGVvZiBuLmRhdGEpfWZ1bmN0aW9uIFMoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUubGVuZ3RoPD0xfWZ1bmN0aW9uIHgoZSl7cmV0dXJuIFMoZSl8fGsoZSl9ZnVuY3Rpb24gVChlKXtyZXR1cm4hKCFBcnJheS5pc0FycmF5KGUpfHwyIT09ZS5sZW5ndGgpJiYoQXJyYXkuaXNBcnJheShlWzFdKT9TKGVbMF0pJiZlWzFdLmV2ZXJ5KHgpOlMoZVswXSkmJngoZVsxXSkpfWZ1bmN0aW9uIEkoZSl7cmV0dXJuISghQXJyYXkuaXNBcnJheShlKXx8MiE9PWUubGVuZ3RoKSYmKCEhZnVuY3Rpb24oZSl7dmFyIG49ZSx0PTA7aWYobnVsbCE9ZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYhQXJyYXkuaXNBcnJheShlKSl7aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sImFjY2VwdCIpKXtpZighYihuLmFjY2VwdCkpcmV0dXJuITE7dCs9MX1pZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobiwicmVqZWN0Iikpe2lmKCFiKG4ucmVqZWN0KSlyZXR1cm4hMTt0Kz0xfXJldHVybiB0PjAmJnQ8PTJ9cmV0dXJuITF9KGVbMF0pJiYoQXJyYXkuaXNBcnJheShlWzFdKT9lWzFdLmV2ZXJ5KHgpOngoZVsxXSkpKX1mdW5jdGlvbiBBKGUpe3JldHVybiBUKGUpfHxJKGUpfWZ1bmN0aW9uIEMoZSxuKXtpZighdyhlKSlyZXR1cm4hMTt2YXIgdD15KGUpLHI9ZnVuY3Rpb24oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KFthLXpBLVowLTktXy5dKykvKFthLXpBLVowLTktX10rKS9qc29uc2NoZW1hLyhbMS05XVswLTldKiktKDB8WzEtOV1bMC05XSopLSgwfFsxLTldWzAtOV0qKSQiKS5leGVjKGUpO2lmKG51bGwhPT1uKXJldHVybiBuLnNsaWNlKDEsNil9KG4pO2lmKHQmJnIpe2lmKCFmdW5jdGlvbihlLG4pe3ZhciB0PW4uc3BsaXQoIi4iKSxyPWUuc3BsaXQoIi4iKTtpZih0JiZyKXtpZih0Lmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbz0wO288ci5sZW5ndGg7bysrKWlmKCFPKHRbb10scltvXSkpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHRbMF0sclswXSkpcmV0dXJuITE7Zm9yKHZhciBvPTE7bzw1O28rKylpZighTyh0W29dLHJbb10pKXJldHVybiExO3JldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIE8oZSxuKXtyZXR1cm4gZSYmbiYmIioiPT09ZXx8ZT09PW59ZnVuY3Rpb24gUChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOkFycmF5Lm9mKGUpfWZ1bmN0aW9uIEUoZSxuLHQscil7dmFyIG8saT1QKGUpLm1hcCgoZnVuY3Rpb24oZSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7aWYoayhlKSlyZXR1cm5bZV07aWYoUyhlKSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7dmFyIG89dm9pZCAwO3RyeXtyZXR1cm4gbz1lKHtldmVudDpuLmdldFBheWxvYWQoKSxldmVudFR5cGU6dCxldmVudFNjaGVtYTpyfSksQXJyYXkuaXNBcnJheShvKSYmby5ldmVyeShrKXx8ayhvKT9vOnZvaWQgMH1jYXRjaChlKXtvPXZvaWQgMH1yZXR1cm4gb30oZSxuLHQscik7aWYoayhvKSlyZXR1cm5bb107aWYoQXJyYXkuaXNBcnJheShvKSlyZXR1cm4gb31yZXR1cm59KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30pKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8saS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9ZnVuY3Rpb24gTChlKXt2b2lkIDA9PT1lJiYoZT17fSk7dmFyIG49ZS5iYXNlNjQsdD1lLmNvcmVQbHVnaW5zLGE9ZS5jYWxsYmFjayx1PW51bGwhPXQ/dDpbXSxjPWZ1bmN0aW9uKGUsbix0KXt2YXIgcj1mdW5jdGlvbihlKXtyZXR1cm57YWRkUGx1Z2luQ29udGV4dHM6ZnVuY3Rpb24obil7dmFyIHQ9bj9vKFtdLG4sITApOltdO3JldHVybiBlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmNvbnRleHRzJiZ0LnB1c2guYXBwbHkodCxlLmNvbnRleHRzKCkpfWNhdGNoKGUpe3AuZXJyb3IoIkVycm9yIGFkZGluZyBwbHVnaW4gY29udGV4dHMiLGUpfX0pKSx0fX19KG4pLGE9bSgpLHU9ZSxjPXt9O2Z1bmN0aW9uIHMoZSxuKXtjW2VdPW59dmFyIGY9e3RyYWNrOmZ1bmN0aW9uKGUsbyxzKXtlLndpdGhKc29uUHJvY2Vzc29yKGwodSkpLGUuYWRkKCJlaWQiLCgwLGkudjQpKCkpLGUuYWRkRGljdChjKTt2YXIgZj1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT97dHlwZToiZHRtIix2YWx1ZToobmV3IERhdGUpLmdldFRpbWUoKX06Im51bWJlciI9PXR5cGVvZiBlP3t0eXBlOiJkdG0iLHZhbHVlOmV9OiJ0dG0iPT09ZS50eXBlP3t0eXBlOiJ0dG0iLHZhbHVlOmUudmFsdWV9Ont0eXBlOiJkdG0iLHZhbHVlOmUudmFsdWV8fChuZXcgRGF0ZSkuZ2V0VGltZSgpfX0ocyk7ZS5hZGQoZi50eXBlLGYudmFsdWUudG9TdHJpbmcoKSk7dmFyIGQ9ZnVuY3Rpb24oZSl7aWYoZSYmZS5sZW5ndGgpcmV0dXJuewpzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L2NvbnRleHRzL2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6ZX19KGZ1bmN0aW9uKGUsbil7dmFyIHQ9YS5nZXRBcHBsaWNhYmxlQ29udGV4dHMoZSkscj1bXTtyZXR1cm4gbiYmbi5sZW5ndGgmJnIucHVzaC5hcHBseShyLG4pLHQmJnQubGVuZ3RoJiZyLnB1c2guYXBwbHkocix0KSxyfShlLHIuYWRkUGx1Z2luQ29udGV4dHMobykpKTt2b2lkIDAhPT1kJiZlLmFkZEpzb24oImN4IiwiY28iLGQpLG4uZm9yRWFjaCgoZnVuY3Rpb24obil7dHJ5e24uYmVmb3JlVHJhY2smJm4uYmVmb3JlVHJhY2soZSl9Y2F0Y2goZSl7cC5lcnJvcigiUGx1Z2luIGJlZm9yZVRyYWNrIixlKX19KSksImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQoZSk7dmFyIHY9ZS5idWlsZCgpO3JldHVybiBuLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmFmdGVyVHJhY2smJmUuYWZ0ZXJUcmFjayh2KX1jYXRjaChlKXtwLmVycm9yKCJQbHVnaW4gYWZ0ZXJUcmFjayIsZSl9fSkpLHZ9LGFkZFBheWxvYWRQYWlyOnMsZ2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sc2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oZSl7dT1lfSxhZGRQYXlsb2FkRGljdDpmdW5jdGlvbihlKXtmb3IodmFyIG4gaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxuKSYmKGNbbl09ZVtuXSl9LHJlc2V0UGF5bG9hZFBhaXJzOmZ1bmN0aW9uKGUpe2M9ZChlKT9lOnt9fSxzZXRUcmFja2VyVmVyc2lvbjpmdW5jdGlvbihlKXtzKCJ0diIsZSl9LHNldFRyYWNrZXJOYW1lc3BhY2U6ZnVuY3Rpb24oZSl7cygidG5hIixlKX0sc2V0QXBwSWQ6ZnVuY3Rpb24oZSl7cygiYWlkIixlKX0sc2V0UGxhdGZvcm06ZnVuY3Rpb24oZSl7cygicCIsZSl9LHNldFVzZXJJZDpmdW5jdGlvbihlKXtzKCJ1aWQiLGUpfSxzZXRTY3JlZW5SZXNvbHV0aW9uOmZ1bmN0aW9uKGUsbil7cygicmVzIixlKyJ4IituKX0sc2V0Vmlld3BvcnQ6ZnVuY3Rpb24oZSxuKXtzKCJ2cCIsZSsieCIrbil9LHNldENvbG9yRGVwdGg6ZnVuY3Rpb24oZSl7cygiY2QiLGUpfSxzZXRUaW1lem9uZTpmdW5jdGlvbihlKXtzKCJ0eiIsZSl9LHNldExhbmc6ZnVuY3Rpb24oZSl7cygibGFuZyIsZSl9LHNldElwQWRkcmVzczpmdW5jdGlvbihlKXtzKCJpcCIsZSl9LHNldFVzZXJhZ2VudDpmdW5jdGlvbihlKXtzKCJ1YSIsZSl9LGFkZEdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKGUpe2EuYWRkR2xvYmFsQ29udGV4dHMoZSl9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXthLmNsZWFyR2xvYmFsQ29udGV4dHMoKX0scmVtb3ZlR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oZSl7YS5yZW1vdmVHbG9iYWxDb250ZXh0cyhlKX19O3JldHVybiBmfShudWxsPT1ufHxuLHUsYSkscz1yKHIoe30sYykse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0LHI9ZS5wbHVnaW47dS5wdXNoKHIpLG51bGw9PT0obj1yLmxvZ2dlcil8fHZvaWQgMD09PW58fG4uY2FsbChyLHApLG51bGw9PT0odD1yLmFjdGl2YXRlQ29yZVBsdWdpbil8fHZvaWQgMD09PXR8fHQuY2FsbChyLHMpfX0pO3JldHVybiBudWxsPT11fHx1LmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuLHQ7bnVsbD09PShuPWUubG9nZ2VyKXx8dm9pZCAwPT09bnx8bi5jYWxsKGUscCksbnVsbD09PSh0PWUuYWN0aXZhdGVDb3JlUGx1Z2luKXx8dm9pZCAwPT09dHx8dC5jYWxsKGUscyl9KSksc31mdW5jdGlvbiBEKGUpe3ZhciBuPWUuZXZlbnQsdD1uLnNjaGVtYSxyPW4uZGF0YSxvPXMoKSxpPXtzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3Vuc3RydWN0X2V2ZW50L2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6e3NjaGVtYTp0LGRhdGE6cn19O3JldHVybiBvLmFkZCgiZSIsInVlIiksby5hZGRKc29uKCJ1ZV9weCIsInVlX3ByIixpKSxvfXZhciBqPXQoMTk2MzczKSxVPXQubihqKTtmdW5jdGlvbiBSKGUsbix0KXt2b2lkIDA9PT10JiYodD02MzA3MmUzKTt0cnl7dmFyIHI9d2luZG93LmxvY2FsU3RvcmFnZSxvPURhdGUubm93KCkrMWUzKnQ7cmV0dXJuIHIuc2V0SXRlbSgiIi5jb25jYXQoZSwiLmV4cGlyZXMiKSxvLnRvU3RyaW5nKCkpLHIuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX1mdW5jdGlvbiBOKGUpe3RyeXt2YXIgbj13aW5kb3cubG9jYWxTdG9yYWdlO3JldHVybiBuLnJlbW92ZUl0ZW0oZSksbi5yZW1vdmVJdGVtKGUrIi5leHBpcmVzIiksITB9Y2F0Y2goZSl7cmV0dXJuITF9fWZ1bmN0aW9uIEIoZSl7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShlKX1jYXRjaChlKXtyZXR1cm59fXZhciBfPXtzZXNzaW9uSWQ6ITAsc291cmNlSWQ6ITAsc291cmNlUGxhdGZvcm06ITEsdXNlcklkOiExLHJlYXNvbjohMX07ZnVuY3Rpb24gVihlKXtyZXR1cm4gYnRvYShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoL1w9KyQvLCIiKX1mdW5jdGlvbiBNKGUpe3JldHVybiEoIWV8fCJzdHJpbmciIT10eXBlb2YgZS52YWx1ZU9mKCkpfWZ1bmN0aW9uIHooZSl7cmV0dXJuIE51bWJlci5pc0ludGVnZXImJk51bWJlci5pc0ludGVnZXIoZSl8fCJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSkmJk1hdGguZmxvb3IoZSk9PT1lfWZ1bmN0aW9uIEgoZSl7aWYoIU0oZSkpe2U9ZS50ZXh0fHwiIjt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGl0bGUiKTtuJiZudWxsIT1uWzBdJiYoZT1uWzBdLnRleHQpfXJldHVybiBlfWZ1bmN0aW9uIEooZSl7dmFyIG49bmV3IFJlZ0V4cCgiXig/Oig/Omh0dHBzP3xmdHApOikvKig/OlteQF0rQCk/KFteOi8jXSspIikuZXhlYyhlKTtyZXR1cm4gbj9uWzFdOmV9ZnVuY3Rpb24gcShlKXt2YXIgbj1lLmxlbmd0aDtyZXR1cm4iLiI9PT1lLmNoYXJBdCgtLW4pJiYoZT1lLnNsaWNlKDAsbikpLCIqLiI9PT1lLnNsaWNlKDAsMikmJihlPWUuc2xpY2UoMSkpLGV9ZnVuY3Rpb24gRihlKXsKdmFyIG49d2luZG93LHQ9WCgicmVmZXJyZXIiLG4ubG9jYXRpb24uaHJlZil8fFgoInJlZmVyZXIiLG4ubG9jYXRpb24uaHJlZik7aWYodClyZXR1cm4gdDtpZihlKXJldHVybiBlO3RyeXtpZihuLnRvcClyZXR1cm4gbi50b3AuZG9jdW1lbnQucmVmZXJyZXI7aWYobi5wYXJlbnQpcmV0dXJuIG4ucGFyZW50LmRvY3VtZW50LnJlZmVycmVyfWNhdGNoKGUpe31yZXR1cm4gZG9jdW1lbnQucmVmZXJyZXJ9ZnVuY3Rpb24gRyhlLG4sdCxyKXtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyPyhlLmFkZEV2ZW50TGlzdGVuZXIobix0LHIpLCEwKTplLmF0dGFjaEV2ZW50P2UuYXR0YWNoRXZlbnQoIm9uIituLHQpOnZvaWQoZVsib24iK25dPXQpfWZ1bmN0aW9uIFgoZSxuKXt2YXIgdD1uZXcgUmVnRXhwKCJeW14jXSpbPyZdIitlKyI9KFteJiNdKikiKS5leGVjKG4pO3JldHVybiB0P2RlY29kZVVSSUNvbXBvbmVudCh0WzFdLnJlcGxhY2UoL1wrL2csIiAiKSk6bnVsbH1mdW5jdGlvbiBXKGUsbix0LHIpe1EoZSwiIiwtMSwiLyIsbix0LHIpfWZ1bmN0aW9uIFkoZSl7Zm9yKHZhciBuPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyAiKSx0PVtdLHI9MDtyPG4ubGVuZ3RoO3IrKyluW3JdLnN1YnN0cmluZygwLGUubGVuZ3RoKT09PWUmJnQucHVzaChuW3JdKTtyZXR1cm4gdH1mdW5jdGlvbiBRKGUsbix0LHIsbyxpLGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjE/ZG9jdW1lbnQuY29va2llPWUrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsIT1uP246IiIpKyh0PyI7IEV4cGlyZXM9IituZXcgRGF0ZSgrbmV3IERhdGUrMWUzKnQpLnRvVVRDU3RyaW5nKCk6IiIpKyhyPyI7IFBhdGg9IityOiIiKSsobz8iOyBEb21haW49IitvOiIiKSsoaT8iOyBTYW1lU2l0ZT0iK2k6IiIpKyhhPyI7IFNlY3VyZSI6IiIpOmRlY29kZVVSSUNvbXBvbmVudCgoKCI7ICIrZG9jdW1lbnQuY29va2llKS5zcGxpdCgiOyAiK2UrIj0iKVsxXXx8IiIpLnNwbGl0KCI7IilbMF0pfWZ1bmN0aW9uIFooKXt2YXIgZT0ibW9kZXJuaXpyIjtpZighZnVuY3Rpb24oKXt0cnl7cmV0dXJuISF3aW5kb3cubG9jYWxTdG9yYWdlfWNhdGNoKGUpe3JldHVybiEwfX0oKSlyZXR1cm4hMTt0cnl7dmFyIG49d2luZG93LmxvY2FsU3RvcmFnZTtyZXR1cm4gbi5zZXRJdGVtKGUsZSksbi5yZW1vdmVJdGVtKGUpLCEwfWNhdGNoKGUpe3JldHVybiExfX12YXIgSz0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsJD0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvYnJvd3Nlcl9jb250ZXh0L2pzb25zY2hlbWEvMi0wLTAiLGVlPSJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jbGllbnRfc2Vzc2lvbi9qc29uc2NoZW1hLzEtMC0yIjtmdW5jdGlvbiBuZShlLG4sdCxyLG8saSxhLHUsYyxzLGwsZixkLHYsZyxtLGgseSx3LGIpe3ZvaWQgMD09PXkmJih5PSEwKTt2YXIgayxTLHg9ITEsVD1bXSxJPSExLEE9ITA9PT0ocj0ic3RyaW5nIj09dHlwZW9mIHI/ci50b0xvd2VyQ2FzZSgpOnIpfHwiYmVhY29uIj09PXJ8fCJ0cnVlIj09PXIsQz1Cb29sZWFuKEEmJndpbmRvdy5uYXZpZ2F0b3ImJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJiEoZnVuY3Rpb24oZSxuKXt2YXIgdD1uLm1hdGNoKCIoaVAuKzsgQ1BVIC4qT1MgKGQrKVtfZF0qLiopIEFwcGxlV2ViS2l0LyIpO3JldHVybiEoIXR8fCF0Lmxlbmd0aCkmJnBhcnNlSW50KHRbMF0pPD1lfSgxMyxTPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KXx8ZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQubWF0Y2goIihNYWNpbnRvc2g7LipNYWMgT1MgWCAoZCspXyhkKylbX2RdKi4qKSBBcHBsZVdlYktpdC8iKTtyZXR1cm4hKCFyfHwhci5sZW5ndGgpJiYocGFyc2VJbnQoclswXSk8PWV8fHBhcnNlSW50KHJbMF0pPT09ZSYmcGFyc2VJbnQoclsxXSk8PW4pfSgxMCwxNSxTKSYmZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIlZlcnNpb24vLiogU2FmYXJpLyIpJiYhZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIkNocm9tKGV8aXVtKSIpfShlKX0oUykpKSYmQSxPPSJnZXQiPT09cixQPUJvb2xlYW4od2luZG93LlhNTEh0dHBSZXF1ZXN0JiYid2l0aENyZWRlbnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdCksRT0hTyYmUCYmKCJwb3N0Ij09PXJ8fEEpLEw9RT9vOiIvaSIsRD0ic25vd3Bsb3dPdXRRdWV1ZV8iLmNvbmNhdChlLCJfIikuY29uY2F0KEU/InBvc3QyIjoiZ2V0Iik7aWYoQSYmKGQ9e30pLGk9dCYmWigpJiZFJiZpfHwxLHQpdHJ5e3ZhciBqPXdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShEKTtUPWo/SlNPTi5wYXJzZShqKTpbXX1jYXRjaChlKXt9ZnVuY3Rpb24gVShlKXt2YXIgbj1PYmplY3Qua2V5cyhlKS5tYXAoKGZ1bmN0aW9uKG4pe3JldHVybltuLGVbbl1dfSkpLnJlZHVjZSgoZnVuY3Rpb24oZSxuKXt2YXIgdD1uWzBdLHI9blsxXTtyZXR1cm4gZVt0XT1yLnRvU3RyaW5nKCksZX0pLHt9KTtyZXR1cm57ZXZ0Om4sYnl0ZXM6TihKU09OLnN0cmluZ2lmeShuKSl9fWZ1bmN0aW9uIE4oZSl7Zm9yKHZhciBuPTAsdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj1lLmNoYXJDb2RlQXQodCk7cjw9MTI3P24rPTE6cjw9MjA0Nz9uKz0yOnI+PTU1Mjk2JiZyPD01NzM0Mz8obis9NCx0KyspOm4rPXI8NjU1MzU/Mzo0fXJldHVybiBufUFycmF5LmlzQXJyYXkoVCl8fChUPVtdKSxuLm91dFF1ZXVlcy5wdXNoKFQpLFAmJmk+MSYmbi5idWZmZXJGbHVzaGVycy5wdXNoKChmdW5jdGlvbihlKXt4fHxIKGUpfSkpO3ZhciBCPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZVswXSYmImV2dCJpbiBlWzBdfTtmdW5jdGlvbiBfKGUsbil7dmFyIHQ9cShuLCEwLCExKSxyPUcoW2UuZXZ0XSk7dC5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09dC5yZWFkeVN0YXRlJiYoSih0LnN0YXR1cyk/bnVsbD09d3x8dyhyKTpudWxsPT1ifHxiKHtzdGF0dXM6dC5zdGF0dXMsbWVzc2FnZTp0LnN0YXR1c1RleHQsZXZlbnRzOnIsd2lsbFJldHJ5OiExfSkpfSwKdC5zZW5kKEYocikpfWZ1bmN0aW9uIFYoZSl7Zm9yKHZhciBuPTA7bjxlO24rKylULnNoaWZ0KCk7dCYmUihELEpTT04uc3RyaW5naWZ5KFQuc2xpY2UoMCxzKSkpfWZ1bmN0aW9uIHooZSxuLHQpe2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoND09PWUucmVhZHlTdGF0ZSlpZihjbGVhclRpbWVvdXQociksSihlLnN0YXR1cykpVihuKSxudWxsPT13fHx3KHQpLEgoKTtlbHNle3ZhciBvPWZ1bmN0aW9uKGUpe2lmKEooZSkpcmV0dXJuITE7aWYoIXkpcmV0dXJuITE7aWYoZy5pbmNsdWRlcyhlKSlyZXR1cm4hMDtyZXR1cm4hbS5pbmNsdWRlcyhlKX0oZS5zdGF0dXMpO298fChwLmVycm9yKCJTdGF0dXMgIi5jb25jYXQoZS5zdGF0dXMsIiwgd2lsbCBub3QgcmV0cnkuIikpLFYobikpLG51bGw9PWJ8fGIoe3N0YXR1czplLnN0YXR1cyxtZXNzYWdlOmUuc3RhdHVzVGV4dCxldmVudHM6dCx3aWxsUmV0cnk6b30pLHg9ITF9fTt2YXIgcj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2UuYWJvcnQoKSx5fHxWKG4pLG51bGw9PWJ8fGIoe3N0YXR1czowLG1lc3NhZ2U6InRpbWVvdXQiLGV2ZW50czp0LHdpbGxSZXRyeTp5fSkseD0hMX0pLGwpfWZ1bmN0aW9uIEgoZSl7Zm9yKHZvaWQgMD09PWUmJihlPSExKTtULmxlbmd0aCYmInN0cmluZyIhPXR5cGVvZiBUWzBdJiYib2JqZWN0IiE9dHlwZW9mIFRbMF07KVQuc2hpZnQoKTtpZihULmxlbmd0aCl7aWYoIU0oaykpdGhyb3ciTm8gY29sbGVjdG9yIGNvbmZpZ3VyZWQiO2lmKHg9ITAsaCYmIUkpe3ZhciBuPXEoaCwhMSxlKTtyZXR1cm4gST0hMCxuLnRpbWVvdXQ9bCxuLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1uLnJlYWR5U3RhdGUmJkgoKX0sdm9pZCBuLnNlbmQoKX1pZihQKXt2YXIgcj12b2lkIDAsbz12b2lkIDAsaT12b2lkIDA7aWYoQihUKT8obz1xKHI9aywhMCxlKSxpPWZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0wLHQ9MDtuPGUubGVuZ3RoJiYhKCh0Kz1lW25dLmJ5dGVzKT49YSk7KW4rPTE7cmV0dXJuIG59KFQpKToobz1xKHI9WChUWzBdKSwhMSxlKSxpPTEpLEIoVCkpe3ZhciB1PVQuc2xpY2UoMCxpKTtpZih1Lmxlbmd0aD4wKXt2YXIgYz0hMSxkPXUubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZS5ldnR9KSk7aWYoQyl7dmFyIHY9bmV3IEJsb2IoW0YoRyhkKSldLHt0eXBlOiJhcHBsaWNhdGlvbi9qc29uIn0pO3RyeXtjPXdpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihyLHYpfWNhdGNoKGUpe2M9ITF9fWlmKCEwPT09YylWKGkpLG51bGw9PXd8fHcodSksSCgpO2Vsc2V7dmFyIGc9RyhkKTt6KG8saSxnKSxvLnNlbmQoRihnKSl9fX1lbHNlIHoobyxpLFtyXSksby5zZW5kKCl9ZWxzZSBpZihmfHxCKFQpKXg9ITE7ZWxzZXt2YXIgcD1uZXcgSW1hZ2UoMSwxKSxtPSEwO3Aub25sb2FkPWZ1bmN0aW9uKCl7bSYmKG09ITEsVC5zaGlmdCgpLHQmJlIoRCxKU09OLnN0cmluZ2lmeShULnNsaWNlKDAscykpKSxIKCkpfSxwLm9uZXJyb3I9ZnVuY3Rpb24oKXttJiYobT0hMSx4PSExKX0scC5zcmM9WChUWzBdKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe20mJngmJihtPSExLEgoKSl9KSxsKX19ZWxzZSB4PSExfWZ1bmN0aW9uIEooZSl7cmV0dXJuIGU+PTIwMCYmZTwzMDB9ZnVuY3Rpb24gcShlLG4sdCl7dmFyIHI9bmV3IFhNTEh0dHBSZXF1ZXN0O2Zvcih2YXIgbyBpbiBuPyhyLm9wZW4oIlBPU1QiLGUsIXQpLHIuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpKTpyLm9wZW4oIkdFVCIsZSwhdCksci53aXRoQ3JlZGVudGlhbHM9dixmJiZyLnNldFJlcXVlc3RIZWFkZXIoIlNQLUFub255bW91cyIsIioiKSxkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLG8pJiZyLnNldFJlcXVlc3RIZWFkZXIobyxkW29dKTtyZXR1cm4gcn1mdW5jdGlvbiBGKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9wYXlsb2FkX2RhdGEvanNvbnNjaGVtYS8xLTAtNCIsZGF0YTplfSl9ZnVuY3Rpb24gRyhlKXtmb3IodmFyIG49KG5ldyBEYXRlKS5nZXRUaW1lKCkudG9TdHJpbmcoKSx0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5zdG09bjtyZXR1cm4gZX1mdW5jdGlvbiBYKGUpe3JldHVybiBjP2srZS5yZXBsYWNlKCI/IiwiP3N0bT0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKyImIik6aytlfXJldHVybntlbnF1ZXVlUmVxdWVzdDpmdW5jdGlvbihlLG4pe2s9bitMO3ZhciByPWZ1bmN0aW9uKGUsbil7cmV0dXJuIHAud2FybigiRXZlbnQgKCIrZSsiQikgdG9vIGJpZywgbWF4IGlzICIrbil9O2lmKEUpe2lmKChmPVUoZSkpLmJ5dGVzPj1hKXJldHVybiByKGYuYnl0ZXMsYSksdm9pZCBfKGYsayk7VC5wdXNoKGYpfWVsc2V7dmFyIGM9ZnVuY3Rpb24oZSl7dmFyIG49Ij8iLHQ9e2NvOiEwLGN4OiEwfSxyPSEwO2Zvcih2YXIgbyBpbiBlKWUuaGFzT3duUHJvcGVydHkobykmJiF0Lmhhc093blByb3BlcnR5KG8pJiYocj9yPSExOm4rPSImIixuKz1lbmNvZGVVUklDb21wb25lbnQobykrIj0iK2VuY29kZVVSSUNvbXBvbmVudChlW29dKSk7Zm9yKHZhciBpIGluIHQpZS5oYXNPd25Qcm9wZXJ0eShpKSYmdC5oYXNPd25Qcm9wZXJ0eShpKSYmKG4rPSImIitpKyI9IitlbmNvZGVVUklDb21wb25lbnQoZVtpXSkpO3JldHVybiBufShlKTtpZih1PjApe3ZhciBsPU4oWChjKSk7aWYobD49dSl7dmFyIGY7aWYocihsLHUpLFApXyhmPVUoZSksbitvKTtyZXR1cm59fVQucHVzaChjKX12YXIgZD0hMTt0JiYoZD1SKEQsSlNPTi5zdHJpbmdpZnkoVC5zbGljZSgwLHMpKSkpLHh8fGQmJiEoVC5sZW5ndGg+PWkpfHxIKCl9LGV4ZWN1dGVRdWV1ZTpmdW5jdGlvbigpe3h8fEgoKX0sc2V0VXNlTG9jYWxTdG9yYWdlOmZ1bmN0aW9uKGUpe3Q9ZX0sc2V0QW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Zj1lfSxzZXRDb2xsZWN0b3JVcmw6ZnVuY3Rpb24oZSl7az1lK0x9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7aT1lfX19ZnVuY3Rpb24gdGUoZSxuLHQpe3ZhciByLG8saSxhCjtyZXR1cm4idHJhbnNsYXRlLmdvb2dsZXVzZXJjb250ZW50LmNvbSI9PT1lPygiIj09PXQmJih0PW4pLGU9SihuPW51bGwhPT0obz1uLGk9InUiLHI9KGE9bmV3IFJlZ0V4cCgiXig/Omh0dHBzP3xmdHApKD86Oi8qKD86W14/XSspKShbP11bXiNdKykiKS5leGVjKG8pKSYmKG51bGw9PWE/dm9pZCAwOmEubGVuZ3RoKT4xP1goaSxhWzFdKTpudWxsKSYmdm9pZCAwIT09cj9yOiIiKSk6ImNjLmJpbmdqLmNvbSIhPT1lJiYid2ViY2FjaGUuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiE9PWV8fChlPUoobj1kb2N1bWVudC5saW5rc1swXS5ocmVmKSksW2Usbix0XX1mdW5jdGlvbiByZShlLG4pe3ZvaWQgMD09PW4mJihuPXttZW1vcml6ZWRWaXNpdENvdW50OjF9KTt2YXIgdD1uLm1lbW9yaXplZFZpc2l0Q291bnQ7Y2UoZSk/KGVbN109ZVs2XSxlWzVdPWVbNF0sZVszXSsrKTplWzNdPXQ7dmFyIHI9KDAsaS52NCkoKTtyZXR1cm4gZVs2XT1yLGVbMTBdPTAsZVs4XT0iIixlWzldPXZvaWQgMCxyfWZ1bmN0aW9uIG9lKGUpe2VbNF09TWF0aC5yb3VuZCgobmV3IERhdGUpLmdldFRpbWUoKS8xZTMpfWZ1bmN0aW9uIGllKGUsbix0KXt2YXIgcj1lWzldO3JldHVybnt1c2VySWQ6dD8iMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIjplWzFdLHNlc3Npb25JZDplWzZdLGV2ZW50SW5kZXg6ZVsxMF0sc2Vzc2lvbkluZGV4OmVbM10scHJldmlvdXNTZXNzaW9uSWQ6dD9udWxsOmVbN118fG51bGwsc3RvcmFnZU1lY2hhbmlzbToibG9jYWxTdG9yYWdlIj09bj8iTE9DQUxfU1RPUkFHRSI6IkNPT0tJRV8xIixmaXJzdEV2ZW50SWQ6ZVs4XXx8bnVsbCxmaXJzdEV2ZW50VGltZXN0YW1wOnI/bmV3IERhdGUocikudG9JU09TdHJpbmcoKTpudWxsfX1mdW5jdGlvbiBhZShlKXtyZXR1cm4gZVs2XX1mdW5jdGlvbiB1ZShlKXtyZXR1cm4gZVszXX1mdW5jdGlvbiBjZShlKXtyZXR1cm4iMCI9PT1lWzBdfXZhciBzZSxsZT0hMTt2YXIgZmU9IngiO2Z1bmN0aW9uIGRlKCl7cmV0dXJuIlJlc2l6ZU9ic2VydmVyImluIHdpbmRvdz8oc2V8fChzZT12ZSgpKSxmdW5jdGlvbigpe2lmKCFsZSYmZG9jdW1lbnQmJmRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGU9ITA7dmFyIGU9bmV3IFJlc2l6ZU9ic2VydmVyKChmdW5jdGlvbihlKXtmb3IodmFyIG49MCx0PWU7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci50YXJnZXQhPT1kb2N1bWVudC5ib2R5JiZyLnRhcmdldCE9PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8KHNlPXZlKCkpfX0pKTtlLm9ic2VydmUoZG9jdW1lbnQuYm9keSksZS5vYnNlcnZlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl9fSgpLHNlKTp2ZSgpfWZ1bmN0aW9uIHZlKCl7cmV0dXJue3ZpZXdwb3J0OnBlKGdlKCkpLGRvY3VtZW50U2l6ZTpwZSgoZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1kb2N1bWVudC5ib2R5LHQ9bj9NYXRoLm1heChuLm9mZnNldEhlaWdodCxuLnNjcm9sbEhlaWdodCk6MCxyPU1hdGgubWF4KGUuY2xpZW50V2lkdGgsZS5vZmZzZXRXaWR0aCxlLnNjcm9sbFdpZHRoKSxvPU1hdGgubWF4KGUuY2xpZW50SGVpZ2h0LGUub2Zmc2V0SGVpZ2h0LGUuc2Nyb2xsSGVpZ2h0LHQpLGlzTmFOKHIpfHxpc05hTihvKT8iIjpyK2ZlK28pKSxyZXNvbHV0aW9uOnBlKHNjcmVlbi53aWR0aCtmZStzY3JlZW4uaGVpZ2h0KSxjb2xvckRlcHRoOnNjcmVlbi5jb2xvckRlcHRoLGRldmljZVBpeGVsUmF0aW86d2luZG93LmRldmljZVBpeGVsUmF0aW8sY29va2llc0VuYWJsZWQ6d2luZG93Lm5hdmlnYXRvci5jb29raWVFbmFibGVkLG9ubGluZTp3aW5kb3cubmF2aWdhdG9yLm9uTGluZSxicm93c2VyTGFuZ3VhZ2U6d2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZXx8d2luZG93Lm5hdmlnYXRvci51c2VyTGFuZ3VhZ2UsZG9jdW1lbnRMYW5ndWFnZTpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZyx3ZWJkcml2ZXI6d2luZG93Lm5hdmlnYXRvci53ZWJkcml2ZXIsZGV2aWNlTWVtb3J5OndpbmRvdy5uYXZpZ2F0b3IuZGV2aWNlTWVtb3J5LGhhcmR3YXJlQ29uY3VycmVuY3k6d2luZG93Lm5hdmlnYXRvci5oYXJkd2FyZUNvbmN1cnJlbmN5fTt2YXIgZSxuLHQscixvfWZ1bmN0aW9uIGdlKCl7dmFyIGUsbjtpZigiaW5uZXJXaWR0aCJpbiB3aW5kb3cpZT13aW5kb3cuaW5uZXJXaWR0aCxuPXdpbmRvdy5pbm5lckhlaWdodDtlbHNle3ZhciB0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8ZG9jdW1lbnQuYm9keTtlPXQuY2xpZW50V2lkdGgsbj10LmNsaWVudEhlaWdodH1yZXR1cm4gZT49MCYmbj49MD9lK2ZlK246bnVsbH1mdW5jdGlvbiBwZShlKXtyZXR1cm4gZSYmZS5zcGxpdChmZSkubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gTWF0aC5mbG9vcihOdW1iZXIoZSkpfSkpLmpvaW4oZmUpfWZ1bmN0aW9uIG1lKGUsbix0LGEsdSxjKXt2b2lkIDA9PT1jJiYoYz17fSk7dmFyIGw9W10sZj1mdW5jdGlvbihlLG4sdCxhLHUsYyl7dmFyIGYsZCx2LGcsbSxoLHksdyxiLGssUyx4LFQsSSxBLEMsTyxQLEUsRCxqLE0sWixzZSxsZSxmZSx2ZSxnZSxwZTtjLmV2ZW50TWV0aG9kPW51bGwhPT0oZj1jLmV2ZW50TWV0aG9kKSYmdm9pZCAwIT09Zj9mOiJwb3N0Ijt2YXIgbWUsaGUseWU9ZnVuY3Rpb24oZSl7dmFyIG47cmV0dXJuIG51bGwhPT0obj1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5KSYmdm9pZCAwIT09bj9uOiJjb29raWVBbmRMb2NhbFN0b3JhZ2UifSx3ZT1mdW5jdGlvbihlKXt2YXIgbix0O3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXNzaW9uVHJhY2tpbmcpKSYmdm9pZCAwIT09dCYmdCl9LGJlPWZ1bmN0aW9uKGUpe3ZhciBuLHQKO3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXJ2ZXJBbm9ueW1pc2F0aW9uKSkmJnZvaWQgMCE9PXQmJnQpfSxrZT1mdW5jdGlvbihlKXtyZXR1cm4hIWUuYW5vbnltb3VzVHJhY2tpbmd9LFNlPW51bGwhPT0odj1udWxsPT09KGQ9bnVsbD09Yz92b2lkIDA6Yy5jb250ZXh0cyl8fHZvaWQgMD09PWQ/dm9pZCAwOmQuYnJvd3NlcikmJnZvaWQgMCE9PXYmJnYseGU9bnVsbD09PShtPW51bGw9PT0oZz1udWxsPT1jP3ZvaWQgMDpjLmNvbnRleHRzKXx8dm9pZCAwPT09Zz92b2lkIDA6Zy53ZWJQYWdlKXx8dm9pZCAwPT09bXx8bTtsLnB1c2goKG1lPWZ1bmN0aW9uKGUpe3JldHVybiBmbj9udWxsOmV9LGhlPWZ1bmN0aW9uKGUpe3JldHVybiBzbj9lOm1lKGUpfSx7YmVmb3JlVHJhY2s6ZnVuY3Rpb24oZSl7dmFyIG49Qm4oInNlcyIpLHQ9UW4oKSxyPTA9PT1mdW5jdGlvbihlKXtyZXR1cm4gZVsxMF19KHQpO2lmKFZlPSEhUGUmJiEhUShQZSksYW58fFZlKVhuKCk7ZWxzZXtjZSh0KT8oQmU9bnx8Im5vbmUiPT1kbj9hZSh0KTpyZSh0KSxnbj11ZSh0KSk6KG5ldyBEYXRlKS5nZXRUaW1lKCktdm4+MWUzKmNuJiYoZ24rKyxCZT1yZSh0LHttZW1vcml6ZWRWaXNpdENvdW50OmdufSkpLG9lKHQpLGZ1bmN0aW9uKGUsbil7aWYoMD09PWVbMTBdKXt2YXIgdD1uLmJ1aWxkKCk7ZVs4XT10LmVpZDt2YXIgcj10LmR0bXx8dC50dG07ZVs5XT1yP3BhcnNlSW50KHIpOnZvaWQgMH19KHQsZSksZnVuY3Rpb24oZSl7ZVsxMF0rPTF9KHQpO3ZhciBvPWRlKCksaT1vLnZpZXdwb3J0LGE9by5kb2N1bWVudFNpemU7ZS5hZGQoInZwIixpKSxlLmFkZCgiZHMiLGEpLGUuYWRkKCJ2aWQiLGhlKGduKSksZS5hZGQoInNpZCIsaGUoQmUpKSxlLmFkZCgiZHVpZCIsbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV19KHQpKSksZS5hZGQoInVpZCIsbWUoX2UpKSxMbigpLGUuYWRkKCJyZWZyIixVbihUZXx8R2UpKSxlLmFkZCgidXJsIixVbihJZXx8RmUpKTt2YXIgdT1pZSh0LGRuLGZuKTtpZighYm58fGZuJiYhc258fGZ1bmN0aW9uKGUsbil7dmFyIHQ9e3NjaGVtYTplZSxkYXRhOm59O2UuYWRkQ29udGV4dEVudGl0eSh0KX0oZSx1KSwibm9uZSIhPWRuKXtGbih0KTt2YXIgYz1xbigpO24mJiFyfHwhY3x8IWtufHxTbnx8KGtuKHUpLFNuPSExKX12bj0obmV3IERhdGUpLmdldFRpbWUoKX19fSkpLHhlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6SyxkYXRhOntpZDokbigpfX1dfX0pLFNlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6JCxkYXRhOnIocih7fSxkZSgpKSx7dGFiSWQ6ZXQoKX0pfV19fSksbC5wdXNoLmFwcGx5KGwsbnVsbCE9PShoPWMucGx1Z2lucykmJnZvaWQgMCE9PWg/aDpbXSk7dmFyIFRlLEllLEFlLENlLE9lLFBlLEVlLExlLERlLGplLFVlLFJlLE5lLEJlLF9lLFZlLE1lLHplPUwoe2Jhc2U2NDpjLmVuY29kZUJhc2U2NCxjb3JlUGx1Z2luczpsLGNhbGxiYWNrOmZ1bmN0aW9uKGUpe2FufHxWZXx8cG4uZW5xdWV1ZVJlcXVlc3QoZS5idWlsZCgpLFdlKX0KfSksSGU9ZG9jdW1lbnQuY2hhcmFjdGVyU2V0fHxkb2N1bWVudC5jaGFyc2V0LEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpLHFlPXEoSmVbMF0pLEZlPUplWzFdLEdlPUplWzJdLFhlPW51bGwhPT0oeT1jLnBsYXRmb3JtKSYmdm9pZCAwIT09eT95OiJ3ZWIiLFdlPVpuKGEpLFllPW51bGwhPT0odz1jLnBvc3RQYXRoKSYmdm9pZCAwIT09dz93OiIvY29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3RwMiIsUWU9bnVsbCE9PShiPWMuYXBwSWQpJiZ2b2lkIDAhPT1iP2I6IiIsWmU9ZG9jdW1lbnQudGl0bGUsS2U9bnVsbD09PShrPWMucmVzZXRBY3Rpdml0eVRyYWNraW5nT25QYWdlVmlldyl8fHZvaWQgMD09PWt8fGssJGU9bnVsbCE9PShTPWMuY29va2llTmFtZSkmJnZvaWQgMCE9PVM/UzoiX3NwXyIsZW49bnVsbCE9PSh4PWMuY29va2llRG9tYWluKSYmdm9pZCAwIT09eD94OnZvaWQgMCxubj0iLyIsdG49bnVsbCE9PShUPWMuY29va2llU2FtZVNpdGUpJiZ2b2lkIDAhPT1UP1Q6Ik5vbmUiLHJuPW51bGw9PT0oST1jLmNvb2tpZVNlY3VyZSl8fHZvaWQgMD09PUl8fEksb249d2luZG93Lm5hdmlnYXRvci5kb05vdFRyYWNrfHx3aW5kb3cubmF2aWdhdG9yLm1zRG9Ob3RUcmFja3x8d2luZG93LmRvTm90VHJhY2ssYW49dm9pZCAwIT09Yy5yZXNwZWN0RG9Ob3RUcmFjayYmKGMucmVzcGVjdERvTm90VHJhY2smJigieWVzIj09PW9ufHwiMSI9PT1vbikpLHVuPW51bGwhPT0oQT1jLmNvb2tpZUxpZmV0aW1lKSYmdm9pZCAwIT09QT9BOjYzMDcyZTMsY249bnVsbCE9PShDPWMuc2Vzc2lvbkNvb2tpZVRpbWVvdXQpJiZ2b2lkIDAhPT1DP0M6MTgwMCxzbj13ZShjKSxsbj1iZShjKSxmbj1rZShjKSxkbj15ZShjKSx2bj0obmV3IERhdGUpLmdldFRpbWUoKSxnbj0xLHBuPW5lKGUsdSwibG9jYWxTdG9yYWdlIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbixjLmV2ZW50TWV0aG9kLFllLG51bGwhPT0oTz1jLmJ1ZmZlclNpemUpJiZ2b2lkIDAhPT1PP086MSxudWxsIT09KFA9Yy5tYXhQb3N0Qnl0ZXMpJiZ2b2lkIDAhPT1QP1A6NGU0LG51bGwhPT0oRT1jLm1heEdldEJ5dGVzKSYmdm9pZCAwIT09RT9FOjAsbnVsbD09PShEPWMudXNlU3RtKXx8dm9pZCAwPT09RHx8RCxudWxsIT09KGo9Yy5tYXhMb2NhbFN0b3JhZ2VRdWV1ZVNpemUpJiZ2b2lkIDAhPT1qP2o6MWUzLG51bGwhPT0oTT1jLmNvbm5lY3Rpb25UaW1lb3V0KSYmdm9pZCAwIT09TT9NOjVlMyxsbixudWxsIT09KFo9Yy5jdXN0b21IZWFkZXJzKSYmdm9pZCAwIT09Wj9aOnt9LG51bGw9PT0oc2U9Yy53aXRoQ3JlZGVudGlhbHMpfHx2b2lkIDA9PT1zZXx8c2UsbnVsbCE9PShsZT1jLnJldHJ5U3RhdHVzQ29kZXMpJiZ2b2lkIDAhPT1sZT9sZTpbXSwobnVsbCE9PShmZT1jLmRvbnRSZXRyeVN0YXR1c0NvZGVzKSYmdm9pZCAwIT09ZmU/ZmU6W10pLmNvbmNhdChbNDAwLDQwMSw0MDMsNDEwLDQyMl0pLGMuaWRTZXJ2aWNlLGMucmV0cnlGYWlsZWRSZXF1ZXN0cyxjLm9uUmVxdWVzdFN1Y2Nlc3MsYy5vblJlcXVlc3RGYWlsdXJlKSxtbj0hMSxobj1udWxsIT09KHZlPWMucHJlc2VydmVQYWdlVmlld0lkRm9yVXJsKSYmdm9pZCAwIT09dmUmJnZlLHluPXZvaWQgMCx3bj17ZW5hYmxlZDohMSxpbnN0YWxsZWQ6ITEsY29uZmlndXJhdGlvbnM6e319LGJuPW51bGwhPT0ocGU9bnVsbD09PShnZT1jLmNvbnRleHRzKXx8dm9pZCAwPT09Z2U/dm9pZCAwOmdlLnNlc3Npb24pJiZ2b2lkIDAhPT1wZSYmcGUsa249Yy5vblNlc3Npb25VcGRhdGVDYWxsYmFjayxTbj0hMSx4bj0iYm9vbGVhbiI9PXR5cGVvZihNZT1jLnVzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXJ8fCExKT97dXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcjpNZX06e3VzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXI6ITAsY29sbGVjdENyb3NzRG9tYWluQXR0cmlidXRlczpNZX0sVG49eG4udXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcixJbj14bi5jb2xsZWN0Q3Jvc3NEb21haW5BdHRyaWJ1dGVzO2MuaGFzT3duUHJvcGVydHkoImRpc2NvdmVyUm9vdERvbWFpbiIpJiZjLmRpc2NvdmVyUm9vdERvbWFpbiYmKGVuPWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PXdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSxyPSJfc3Bfcm9vdF9kb21haW5fdGVzdF8iLG89cisobmV3IERhdGUpLmdldFRpbWUoKSxpPSJfdGVzdF92YWx1ZV8iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpLGE9dC5zcGxpdCgiLiIpLHU9YS5sZW5ndGgtMjt1Pj0wO3UtLSl7dmFyIGM9YS5zbGljZSh1KS5qb2luKCIuIik7aWYoUShvLGksMCwiLyIsYyxlLG4pLFEobyk9PT1pKXtXKG8sYyxlLG4pO2Zvcih2YXIgcz1ZKHIpLGw9MDtsPHMubGVuZ3RoO2wrKylXKHNbbF0sYyxlLG4pO3JldHVybiBjfX1yZXR1cm4gdH0odG4scm4pKTt2YXIgQW49ZGUoKSxDbj1Bbi5icm93c2VyTGFuZ3VhZ2UsT249QW4ucmVzb2x1dGlvbixQbj1Bbi5jb2xvckRlcHRoLEVuPUFuLmNvb2tpZXNFbmFibGVkO2Z1bmN0aW9uIExuKCl7KEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpKVsxXSE9PUZlJiYoR2U9RihGZSkpLHFlPXEoSmVbMF0pLEZlPUplWzFdfWZ1bmN0aW9uIERuKGUpe3JldHVybiBmdW5jdGlvbihuKXt2YXIgdD1uLmN1cnJlbnRUYXJnZXQsbz1mdW5jdGlvbihlLG4sdCl7dmFyIG8saT0obmV3IERhdGUpLmdldFRpbWUoKSxhPXIocih7fSxfKSxuKSx1PXQuZG9tYWluVXNlcklkLGM9dC51c2VySWQscz10LnNlc3Npb25JZCxsPXQuc291cmNlSWQsZj10LnNvdXJjZVBsYXRmb3JtLGQ9dC5ldmVudCx2PWQuY3VycmVudFRhcmdldCxnPSJmdW5jdGlvbiI9PXR5cGVvZiBhLnJlYXNvbj9hLnJlYXNvbihkKTpudWxsPT09KG89bnVsbD09dj92b2lkIDA6di50ZXh0Q29udGVudCl8fHZvaWQgMD09PW8/dm9pZCAwOm8udHJpbSgpCjtyZXR1cm4gZT9bdSxpLGEuc2Vzc2lvbklkJiZzLGEudXNlcklkJiZWKGN8fCIiKSxhLnNvdXJjZUlkJiZWKGx8fCIiKSxhLnNvdXJjZVBsYXRmb3JtJiZmLGEucmVhc29uJiZWKGd8fCIiKV0ubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZXx8IiJ9KSkuam9pbigiLiIpLnJlcGxhY2UoLyhbLl0qJCkvLCIiKTp0LmRvbWFpblVzZXJJZCsiLiIraX0oZSxJbix7ZG9tYWluVXNlcklkOk5lLHVzZXJJZDpfZXx8dm9pZCAwLHNlc3Npb25JZDpCZSxzb3VyY2VJZDpRZSxzb3VyY2VQbGF0Zm9ybTpYZSxldmVudDpufSk7KG51bGw9PXQ/dm9pZCAwOnQuaHJlZikmJih0LmhyZWY9ZnVuY3Rpb24oZSxuLHQpe3ZhciByPW4rIj0iK3Qsbz1lLnNwbGl0KCIjIiksaT1vWzBdLnNwbGl0KCI/IiksYT1pLnNoaWZ0KCksdT1pLmpvaW4oIj8iKTtpZih1KXtmb3IodmFyIGM9ITAscz11LnNwbGl0KCImIiksbD0wO2w8cy5sZW5ndGg7bCsrKWlmKHNbbF0uc3Vic3RyKDAsbi5sZW5ndGgrMSk9PT1uKyI9Iil7Yz0hMSxzW2xdPXIsdT1zLmpvaW4oIiYiKTticmVha31jJiYodT1yKyImIit1KX1lbHNlIHU9cjtyZXR1cm4gb1swXT1hKyI/Iit1LG8uam9pbigiIyIpfSh0LmhyZWYsIl9zcCIsbykpfX1mdW5jdGlvbiBqbihlKXtmb3IodmFyIG49RG4oVG4pLHQ9MDt0PGRvY3VtZW50LmxpbmtzLmxlbmd0aDt0Kyspe3ZhciByPWRvY3VtZW50LmxpbmtzW3RdOyFyLnNwRGVjb3JhdGlvbkVuYWJsZWQmJmUocikmJihyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuLCEwKSxyLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiwhMCksci5zcERlY29yYXRpb25FbmFibGVkPSEwKX19ZnVuY3Rpb24gVW4oZSl7dmFyIG47cmV0dXJuIENlJiYobj1uZXcgUmVnRXhwKCIjLioiKSxlPWUucmVwbGFjZShuLCIiKSksT2UmJihuPW5ldyBSZWdFeHAoIlt7fV0iLCJnIiksZT1lLnJlcGxhY2UobiwiIikpLGV9ZnVuY3Rpb24gUm4oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXihbYS16XSspOiIpLmV4ZWMoZSk7cmV0dXJuIG4/blsxXTpudWxsfWZ1bmN0aW9uIE5uKGUpe3JldHVybiAkZStlKyIuIitSZX1mdW5jdGlvbiBCbihlKXt2YXIgbj1ObihlKTtyZXR1cm4ibG9jYWxTdG9yYWdlIj09ZG4/ZnVuY3Rpb24oZSl7dHJ5e3ZhciBuPXdpbmRvdy5sb2NhbFN0b3JhZ2UsdD1uLmdldEl0ZW0oZSsiLmV4cGlyZXMiKTtyZXR1cm4gbnVsbD09PXR8fCt0PkRhdGUubm93KCk/bi5nZXRJdGVtKGUpOihuLnJlbW92ZUl0ZW0oZSksdm9pZCBuLnJlbW92ZUl0ZW0oZSsiLmV4cGlyZXMiKSl9Y2F0Y2goZSl7cmV0dXJufX0obik6ImNvb2tpZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4/UShuKTp2b2lkIDB9ZnVuY3Rpb24gX24oKXtMbigpLFJlPVUoKSgoZW58fHFlKSsobm58fCIvIikpLnNsaWNlKDAsNCl9ZnVuY3Rpb24gVm4oKXt2YXIgZT1uZXcgRGF0ZTtFZT1lLmdldFRpbWUoKX1mdW5jdGlvbiBNbigpeyFmdW5jdGlvbigpe3ZhciBlPXpuKCksbj1lWzBdO248TGU/TGU9bjpuPkRlJiYoRGU9bik7dmFyIHQ9ZVsxXTt0PGplP2plPXQ6dD5VZSYmKFVlPXQpfSgpLFZuKCl9ZnVuY3Rpb24gem4oKXt2YXIgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7cmV0dXJuIGU/W2Uuc2Nyb2xsTGVmdHx8d2luZG93LnBhZ2VYT2Zmc2V0LGUuc2Nyb2xsVG9wfHx3aW5kb3cucGFnZVlPZmZzZXRdOlswLDBdfWZ1bmN0aW9uIEhuKCl7dmFyIGU9em4oKSxuPWVbMF07TGU9bixEZT1uO3ZhciB0PWVbMV07amU9dCxVZT10fWZ1bmN0aW9uIEpuKGUpe3JldHVybiBNYXRoLnJvdW5kKGUpfWZ1bmN0aW9uIHFuKCl7cmV0dXJuIEduKE5uKCJzZXMiKSwiKiIsY24pfWZ1bmN0aW9uIEZuKGUpe3ZhciBuPU5uKCJpZCIpLHQ9ZnVuY3Rpb24oZSxuKXt2YXIgdD1vKFtdLGUsITApO3JldHVybiBuJiYodFsxXT0iIix0WzddPSIiKSx0LnNoaWZ0KCksdC5qb2luKCIuIil9KGUsZm4pO3JldHVybiBHbihuLHQsdW4pfWZ1bmN0aW9uIEduKGUsbix0KXtyZXR1cm4hKGZuJiYhc24pJiYoImxvY2FsU3RvcmFnZSI9PWRuP1IoZSxuLHQpOigiY29va2llIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbikmJihRKGUsbix0LG5uLGVuLHRuLHJuKSwtMSE9PWRvY3VtZW50LmNvb2tpZS5pbmRleE9mKCIiLmNvbmNhdChlLCI9IikpKSl9ZnVuY3Rpb24gWG4oZSl7dmFyIG49Tm4oImlkIiksdD1Obigic2VzIik7TihuKSxOKHQpLFcobixlbix0bixybiksVyh0LGVuLHRuLHJuKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVNlc3Npb24pfHwoQmU9KDAsaS52NCkoKSxnbj0xKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVVzZXIpfHwoTmU9Zm4/IiI6KDAsaS52NCkoKSxfZT1udWxsKX1mdW5jdGlvbiBXbihlKXtlJiZlLnN0YXRlU3RvcmFnZVN0cmF0ZWd5JiYoYy5zdGF0ZVN0b3JhZ2VTdHJhdGVneT1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5LGRuPXllKGMpKSxmbj1rZShjKSxzbj13ZShjKSxsbj1iZShjKSxwbi5zZXRVc2VMb2NhbFN0b3JhZ2UoImxvY2FsU3RvcmFnZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4pLHBuLnNldEFub255bW91c1RyYWNraW5nKGxuKX1mdW5jdGlvbiBZbigpe2lmKCFmbnx8c24pe3ZhciBlPSJub25lIiE9ZG4mJiEhQm4oInNlcyIpLG49UW4oKTtOZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBlWzFdP3Q9ZVsxXTpuPyh0PSIiLGVbMV09dCk6KHQ9KDAsaS52NCkoKSxlWzFdPXQpLHR9KG4sZm4pLEJlPWU/YWUobik6cmUobiksZ249dWUobiksIm5vbmUiIT1kbiYmKHFuKCksb2UobiksRm4obikpfX1mdW5jdGlvbiBRbigpe3JldHVybiJub25lIj09ZG4/WyIxIiwiIiwwLDAsMCx2b2lkIDAsIiIsIiIsIiIsdm9pZCAwLDBdOmZ1bmN0aW9uKGUsbix0LHIpe3ZhciBvLGE9bmV3IERhdGUsdT1NYXRoLnJvdW5kKGEuZ2V0VGltZSgpLzFlMyk7ZT8obz1lLnNwbGl0KCIuIikpLnVuc2hpZnQoIjAiKTpvPVsiMSIsbix1LHIsdSwiIix0XSxvWzZdJiYidW5kZWZpbmVkIiE9PW9bNl18fChvWzZdPSgwLGkudjQpKCkpLG9bN10mJiJ1bmRlZmluZWQiIT09b1s3XXx8KG9bN109IiIpLApvWzhdJiYidW5kZWZpbmVkIiE9PW9bOF18fChvWzhdPSIiKSxvWzldJiYidW5kZWZpbmVkIiE9PW9bOV18fChvWzldPSIiKSxvWzEwXSYmInVuZGVmaW5lZCIhPT1vWzEwXXx8KG9bMTBdPTApO3ZhciBjPWZ1bmN0aW9uKGUsbil7dmFyIHQ9cGFyc2VJbnQoZSk7cmV0dXJuIGlzTmFOKHQpP246dH0scz1mdW5jdGlvbihlKXtyZXR1cm4gZT9jKGUsdm9pZCAwKTp2b2lkIDB9O3JldHVybltvWzBdLG9bMV0sYyhvWzJdLHUpLGMob1szXSxyKSxjKG9bNF0sdSkscyhvWzVdKSxvWzZdLG9bN10sb1s4XSxzKG9bOV0pLGMob1sxMF0sMCldfShCbigiaWQiKXx8dm9pZCAwLE5lLEJlLGduKX1mdW5jdGlvbiBabihlKXtyZXR1cm4gMD09PWUuaW5kZXhPZigiaHR0cCIpP2U6KCJodHRwczoiPT09ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2w/Imh0dHBzIjoiaHR0cCIpKyI6Ly8iK2V9ZnVuY3Rpb24gS24oKXttbiYmbnVsbCE9dS5wYWdlVmlld0lkfHwodS5wYWdlVmlld0lkPSgwLGkudjQpKCksdS5wYWdlVmlld1VybD1JZXx8RmUpfWZ1bmN0aW9uICRuKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYobnVsbD09dS5wYWdlVmlld0lkKXJldHVybiEwO2lmKG1ufHwhaG4pcmV0dXJuITE7aWYodm9pZCAwPT09dS5wYWdlVmlld1VybClyZXR1cm4hMDt2YXIgZT1JZXx8RmU7aWYoITA9PT1obnx8ImZ1bGwiPT1obnx8ISgiVVJMImluIHdpbmRvdykpcmV0dXJuIHUucGFnZVZpZXdVcmwhPWU7dmFyIG49bmV3IFVSTChlKSx0PW5ldyBVUkwodS5wYWdlVmlld1VybCk7aWYoInBhdGhuYW1lIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWU7aWYoInBhdGhuYW1lQW5kU2VhcmNoIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWV8fG4uc2VhcmNoIT10LnNlYXJjaDtyZXR1cm4hMX0oKSYmKHUucGFnZVZpZXdJZD0oMCxpLnY0KSgpLHUucGFnZVZpZXdVcmw9SWV8fEZlKSx1LnBhZ2VWaWV3SWR9ZnVuY3Rpb24gZXQoKXtpZigibm9uZSI9PT1kbnx8Zm58fCF4ZSlyZXR1cm4gbnVsbDt2YXIgZT0iX3NwX3RhYl9pZCIsbj1CKGUpO3JldHVybiBufHwoIWZ1bmN0aW9uKGUsbil7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX0oZSwoMCxpLnY0KSgpKSxuPUIoZSkpLG58fG51bGx9ZnVuY3Rpb24gbnQoZSxuKXtyZXR1cm4oZXx8W10pLmNvbmNhdChuP24oKTpbXSl9ZnVuY3Rpb24gdHQoZSl7dmFyIG49ZS50aXRsZSx0PWUuY29udGV4dCxyPWUudGltZXN0YW1wLG89ZS5jb250ZXh0Q2FsbGJhY2s7TG4oKSx5biYmeW49PSRuKCkmJktuKCkseW49JG4oKSxaZT1kb2N1bWVudC50aXRsZTt2YXIgaT1IKChBZT1udWxsIT1uP246QWUpfHxaZSk7emUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89cygpO3JldHVybiBvLmFkZCgiZSIsInB2Iiksby5hZGQoInVybCIsbiksby5hZGQoInBhZ2UiLHQpLG8uYWRkKCJyZWZyIixyKSxvfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTppLHJlZmVycmVyOlVuKFRlfHxHZSl9KSxudCh0LG8pLHIpO3ZhciBhPW5ldyBEYXRlLHU9ITE7aWYod24uZW5hYmxlZCYmIXduLmluc3RhbGxlZCl7d24uaW5zdGFsbGVkPSEwLHU9ITA7dmFyIGM9e3VwZGF0ZTpmdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LmFkZEV2ZW50TGlzdGVuZXIpe3ZhciBlPSExLG49T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7ZT0hMH0sc2V0OmZ1bmN0aW9uKCl7fX0pLHQ9ZnVuY3Rpb24oKXt9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0UGFzc2l2ZUV2ZW50U3VwcG9ydCIsdCxuKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdFBhc3NpdmVFdmVudFN1cHBvcnQiLHQsbiksYy5oYXNTdXBwb3J0PWV9fX07Yy51cGRhdGUoKTt2YXIgbD0ib253aGVlbCJpbiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKT8id2hlZWwiOnZvaWQgMCE9PWRvY3VtZW50Lm9ubW91c2V3aGVlbD8ibW91c2V3aGVlbCI6IkRPTU1vdXNlU2Nyb2xsIjtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYywiaGFzU3VwcG9ydCIpP0coZG9jdW1lbnQsbCxWbix7cGFzc2l2ZTohMH0pOkcoZG9jdW1lbnQsbCxWbiksSG4oKTt2YXIgZj1mdW5jdGlvbihlLG4pe3JldHVybiB2b2lkIDA9PT1uJiYobj1WbiksZnVuY3Rpb24oZSl7cmV0dXJuIEcoZG9jdW1lbnQsZSxuKX19O1siY2xpY2siLCJtb3VzZXVwIiwibW91c2Vkb3duIiwibW91c2Vtb3ZlIiwia2V5cHJlc3MiLCJrZXlkb3duIiwia2V5dXAiLCJ0b3VjaGVuZCIsInRvdWNoc3RhcnQiXS5mb3JFYWNoKGYoZG9jdW1lbnQpKSxbInJlc2l6ZSIsImZvY3VzIiwiYmx1ciJdLmZvckVhY2goZih3aW5kb3cpKSxmKHdpbmRvdyxNbikoInNjcm9sbCIpfWlmKHduLmVuYWJsZWQmJihLZXx8dSkpe0VlPWEuZ2V0VGltZSgpO3ZhciBkPXZvaWQgMDtmb3IoZCBpbiB3bi5jb25maWd1cmF0aW9ucyl7dmFyIHY9d24uY29uZmlndXJhdGlvbnNbZF07diYmKHdpbmRvdy5jbGVhckludGVydmFsKHYuYWN0aXZpdHlJbnRlcnZhbCkscnQodix0LG8pKX19fWZ1bmN0aW9uIHJ0KGUsbix0KXt2YXIgcj1mdW5jdGlvbihlLG4pe0xuKCksZSh7Y29udGV4dDpuLHBhZ2VWaWV3SWQ6JG4oKSxtaW5YT2Zmc2V0OkxlLG1pbllPZmZzZXQ6amUsbWF4WE9mZnNldDpEZSxtYXhZT2Zmc2V0OlVlfSksSG4oKX0sbz1mdW5jdGlvbigpe3ZhciBvPW5ldyBEYXRlO0VlK2UuY29uZmlnSGVhcnRCZWF0VGltZXI+by5nZXRUaW1lKCkmJnIoZS5jYWxsYmFjayxudChuLHQpKX07MD09PWUuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoP2UuYWN0aXZpdHlJbnRlcnZhbD13aW5kb3cuc2V0SW50ZXJ2YWwobyxlLmNvbmZpZ0hlYXJ0QmVhdFRpbWVyKTplLmFjdGl2aXR5SW50ZXJ2YWw9d2luZG93LnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dmFyIGk9bmV3IERhdGUKO0VlK2UuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoPmkuZ2V0VGltZSgpJiZyKGUuY2FsbGJhY2ssbnQobix0KSksZS5hY3Rpdml0eUludGVydmFsPXdpbmRvdy5zZXRJbnRlcnZhbChvLGUuY29uZmlnSGVhcnRCZWF0VGltZXIpfSksZS5jb25maWdNaW5pbXVtVmlzaXRMZW5ndGgpfWZ1bmN0aW9uIG90KGUpe3ZhciBuPWUubWluaW11bVZpc2l0TGVuZ3RoLHQ9ZS5oZWFydGJlYXREZWxheSxyPWUuY2FsbGJhY2s7aWYoeihuKSYmeih0KSlyZXR1cm57Y29uZmlnTWluaW11bVZpc2l0TGVuZ3RoOjFlMypuLGNvbmZpZ0hlYXJ0QmVhdFRpbWVyOjFlMyp0LGNhbGxiYWNrOnJ9O3AuZXJyb3IoIkFjdGl2aXR5IHRyYWNraW5nIG1pbmltdW1WaXNpdExlbmd0aCAmIGhlYXJ0YmVhdERlbGF5IG11c3QgYmUgaW50ZWdlcnMiKX1mdW5jdGlvbiBpdChlKXt2YXIgbj1lLmNvbnRleHQsdD1lLm1pblhPZmZzZXQscj1lLm1pbllPZmZzZXQsbz1lLm1heFhPZmZzZXQsaT1lLm1heFlPZmZzZXQsYT1kb2N1bWVudC50aXRsZTthIT09WmUmJihaZT1hLEFlPXZvaWQgMCksemUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89ZS5taW5YT2Zmc2V0LGk9ZS5tYXhYT2Zmc2V0LGE9ZS5taW5ZT2Zmc2V0LHU9ZS5tYXhZT2Zmc2V0LGM9cygpO3JldHVybiBjLmFkZCgiZSIsInBwIiksYy5hZGQoInVybCIsbiksYy5hZGQoInBhZ2UiLHQpLGMuYWRkKCJyZWZyIixyKSxvJiYhaXNOYU4oTnVtYmVyKG8pKSYmYy5hZGQoInBwX21peCIsby50b1N0cmluZygpKSxpJiYhaXNOYU4oTnVtYmVyKGkpKSYmYy5hZGQoInBwX21heCIsaS50b1N0cmluZygpKSxhJiYhaXNOYU4oTnVtYmVyKGEpKSYmYy5hZGQoInBwX21peSIsYS50b1N0cmluZygpKSx1JiYhaXNOYU4oTnVtYmVyKHUpKSYmYy5hZGQoInBwX21heSIsdS50b1N0cmluZygpKSxjfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTpIKEFlfHxaZSkscmVmZXJyZXI6VW4oVGV8fEdlKSxtaW5YT2Zmc2V0OkpuKHQpLG1heFhPZmZzZXQ6Sm4obyksbWluWU9mZnNldDpKbihyKSxtYXhZT2Zmc2V0OkpuKGkpfSksbil9ZnVuY3Rpb24gYXQoZSl7dmFyIG49d24uY29uZmlndXJhdGlvbnNbZV07MD09PShudWxsPT1uP3ZvaWQgMDpuLmNvbmZpZ01pbmltdW1WaXNpdExlbmd0aCk/d2luZG93LmNsZWFyVGltZW91dChudWxsPT1uP3ZvaWQgMDpuLmFjdGl2aXR5SW50ZXJ2YWwpOndpbmRvdy5jbGVhckludGVydmFsKG51bGw9PW4/dm9pZCAwOm4uYWN0aXZpdHlJbnRlcnZhbCksd24uY29uZmlndXJhdGlvbnNbZV09dm9pZCAwfXplLnNldFRyYWNrZXJWZXJzaW9uKHQpLHplLnNldFRyYWNrZXJOYW1lc3BhY2UobiksemUuc2V0QXBwSWQoUWUpLHplLnNldFBsYXRmb3JtKFhlKSx6ZS5hZGRQYXlsb2FkUGFpcigiY29va2llIixFbj8iMSI6IjAiKSx6ZS5hZGRQYXlsb2FkUGFpcigiY3MiLEhlKSx6ZS5hZGRQYXlsb2FkUGFpcigibGFuZyIsQ24pLHplLmFkZFBheWxvYWRQYWlyKCJyZXMiLE9uKSx6ZS5hZGRQYXlsb2FkUGFpcigiY2QiLFBuKSxfbigpLFluKCksYy5jcm9zc0RvbWFpbkxpbmtlciYmam4oYy5jcm9zc0RvbWFpbkxpbmtlcik7dmFyIHV0PXtnZXREb21haW5TZXNzaW9uSW5kZXg6ZnVuY3Rpb24oKXtyZXR1cm4gZ259LGdldFBhZ2VWaWV3SWQ6JG4sZ2V0VGFiSWQ6ZXQsbmV3U2Vzc2lvbjpmdW5jdGlvbigpe3ZhciBlPVFuKCk7aWYoY2UoZSk/KEJlPSJub25lIiE9ZG4/cmUoZSk6YWUoZSksZ249dWUoZSkpOihnbisrLEJlPXJlKGUse21lbW9yaXplZFZpc2l0Q291bnQ6Z259KSksb2UoZSksIm5vbmUiIT1kbil7dmFyIG49aWUoZSxkbixmbik7Rm4oZSkscW4oKSYma24mJihTbj0hMCxrbihuKSl9dm49KG5ldyBEYXRlKS5nZXRUaW1lKCl9LGdldENvb2tpZU5hbWU6ZnVuY3Rpb24oZSl7cmV0dXJuIE5uKGUpfSxnZXRVc2VySWQ6ZnVuY3Rpb24oKXtyZXR1cm4gX2V9LGdldERvbWFpblVzZXJJZDpmdW5jdGlvbigpe3JldHVybiBRbigpWzFdfSxnZXREb21haW5Vc2VySW5mbzpmdW5jdGlvbigpe3JldHVybiBRbigpfSxzZXRSZWZlcnJlclVybDpmdW5jdGlvbihlKXtUZT1lfSxzZXRDdXN0b21Vcmw6ZnVuY3Rpb24oZSl7TG4oKSxJZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBSbihuKT9uOiIvIj09PW4uc2xpY2UoMCwxKT9SbihlKSsiOi8vIitKKGUpK246KCh0PShlPVVuKGUpKS5pbmRleE9mKCI/IikpPj0wJiYoZT1lLnNsaWNlKDAsdCkpLCh0PWUubGFzdEluZGV4T2YoIi8iKSkhPT1lLmxlbmd0aC0xJiYoZT1lLnNsaWNlKDAsdCsxKSksZStuKX0oRmUsZSl9LHNldERvY3VtZW50VGl0bGU6ZnVuY3Rpb24oZSl7WmU9ZG9jdW1lbnQudGl0bGUsQWU9ZX0sZGlzY2FyZEhhc2hUYWc6ZnVuY3Rpb24oZSl7Q2U9ZX0sZGlzY2FyZEJyYWNlOmZ1bmN0aW9uKGUpe09lPWV9LHNldENvb2tpZVBhdGg6ZnVuY3Rpb24oZSl7bm49ZSxfbigpfSxzZXRWaXNpdG9yQ29va2llVGltZW91dDpmdW5jdGlvbihlKXt1bj1lfSxjcm9zc0RvbWFpbkxpbmtlcjpmdW5jdGlvbihlKXtqbihlKX0sZW5hYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5wYWdlUGluZ3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMucGFnZVBpbmc9b3QocihyKHt9LGUpLHtjYWxsYmFjazppdH0pKSl9LGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5jYWxsYmFja3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMuY2FsbGJhY2s9b3QoZSkpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbigpe2F0KCJwYWdlUGluZyIpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrOmZ1bmN0aW9uKCl7YXQoImNhbGxiYWNrIil9LHVwZGF0ZVBhZ2VBY3Rpdml0eTpmdW5jdGlvbigpe1ZuKCl9LHNldE9wdE91dENvb2tpZTpmdW5jdGlvbihlKXtQZT1lfSxzZXRVc2VySWQ6ZnVuY3Rpb24oZSl7X2U9ZX0sc2V0VXNlcklkRnJvbUxvY2F0aW9uOmZ1bmN0aW9uKGUpe0xuKCksX2U9WChlLEZlKX0sCnNldFVzZXJJZEZyb21SZWZlcnJlcjpmdW5jdGlvbihlKXtMbigpLF9lPVgoZSxHZSl9LHNldFVzZXJJZEZyb21Db29raWU6ZnVuY3Rpb24oZSl7X2U9UShlKX0sc2V0Q29sbGVjdG9yVXJsOmZ1bmN0aW9uKGUpe1dlPVpuKGUpLHBuLnNldENvbGxlY3RvclVybChXZSl9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7cG4uc2V0QnVmZmVyU2l6ZShlKX0sZmx1c2hCdWZmZXI6ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9e30pLHBuLmV4ZWN1dGVRdWV1ZSgpLGUubmV3QnVmZmVyU2l6ZSYmcG4uc2V0QnVmZmVyU2l6ZShlLm5ld0J1ZmZlclNpemUpfSx0cmFja1BhZ2VWaWV3OmZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPXt9KSx0dChlKX0scHJlc2VydmVQYWdlVmlld0lkOmZ1bmN0aW9uKCl7bW49ITB9LHByZXNlcnZlUGFnZVZpZXdJZEZvclVybDpmdW5jdGlvbihlKXtobj1lfSxkaXNhYmxlQW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Yy5hbm9ueW1vdXNUcmFja2luZz0hMSxXbihlKSxZbigpLHBuLmV4ZWN1dGVRdWV1ZSgpfSxlbmFibGVBbm9ueW1vdXNUcmFja2luZzpmdW5jdGlvbihlKXt2YXIgbjtjLmFub255bW91c1RyYWNraW5nPW51bGw9PT0obj1lJiYobnVsbD09ZT92b2lkIDA6ZS5vcHRpb25zKSl8fHZvaWQgMD09PW58fG4sV24oZSksc258fEtuKCl9LGNsZWFyVXNlckRhdGE6WG59O3JldHVybiByKHIoe30sdXQpLHtpZDplLG5hbWVzcGFjZTpuLGNvcmU6emUsc2hhcmVkU3RhdGU6dX0pfShlLG4sdCxhLHUsYyksZD1yKHIoe30sZikse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0O2QuY29yZS5hZGRQbHVnaW4oZSksbnVsbD09PSh0PShuPWUucGx1Z2luKS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT10fHx0LmNhbGwobixkKX19KTtyZXR1cm4gbC5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbjtudWxsPT09KG49ZS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT1ufHxuLmNhbGwoZSxkKX0pKSxkfXZhciBoZT17fTtmdW5jdGlvbiB5ZShlLG4pe3RyeXsodD1udWxsIT1lP2U6T2JqZWN0LmtleXMoaGUpLHdlKHQsaGUpKS5mb3JFYWNoKG4pfWNhdGNoKGUpe3AuZXJyb3IoIkZ1bmN0aW9uIGZhaWxlZCIsZSl9dmFyIHR9ZnVuY3Rpb24gd2UoZSxuKXtmb3IodmFyIHQ9W10scj0wLG89ZTtyPG8ubGVuZ3RoO3IrKyl7dmFyIGk9b1tyXTtuLmhhc093blByb3BlcnR5KGkpP3QucHVzaChuW2ldKTpwLndhcm4oaSsiIG5vdCBjb25maWd1cmVkIil9cmV0dXJuIHR9dmFyIGJlPWZ1bmN0aW9uKCl7dGhpcy5vdXRRdWV1ZXM9W10sdGhpcy5idWZmZXJGbHVzaGVycz1bXSx0aGlzLmhhc0xvYWRlZD0hMSx0aGlzLnJlZ2lzdGVyZWRPbkxvYWRIYW5kbGVycz1bXX07ZnVuY3Rpb24ga2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmRpc2NhcmRCcmFjZShlKX0pKX1mdW5jdGlvbiBTZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKGUpfSkpfWZ1bmN0aW9uIHhlKGUpe3llKGUsKGZ1bmN0aW9uKGUpe2UuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcoKX0pKX1mdW5jdGlvbiBUZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uc2V0VXNlcklkKGUpfSkpfWZ1bmN0aW9uIEllKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi50cmFja1BhZ2VWaWV3KGUpfSkpfWZ1bmN0aW9uIEFlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5jb3JlLnRyYWNrKEQoe2V2ZW50OmUuZXZlbnR9KSxlLmNvbnRleHQsZS50aW1lc3RhbXApfSkpfWZ1bmN0aW9uIENlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5kaXNhYmxlQW5vbnltb3VzVHJhY2tpbmcoZSl9KSl9ZnVuY3Rpb24gT2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmVuYWJsZUFub255bW91c1RyYWNraW5nKGUpfSkpfXZhciBQZT0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz9mdW5jdGlvbigpe3ZhciBlPW5ldyBiZSxuPWRvY3VtZW50LHQ9d2luZG93O2Z1bmN0aW9uIHIoKXt2YXIgbjtpZighZS5oYXNMb2FkZWQpZm9yKGUuaGFzTG9hZGVkPSEwLG49MDtuPGUucmVnaXN0ZXJlZE9uTG9hZEhhbmRsZXJzLmxlbmd0aDtuKyspZS5yZWdpc3RlcmVkT25Mb2FkSGFuZGxlcnNbbl0oKTtyZXR1cm4hMH1yZXR1cm4gbi52aXNpYmlsaXR5U3RhdGUmJkcobiwidmlzaWJpbGl0eWNoYW5nZSIsKGZ1bmN0aW9uKCl7ImhpZGRlbiI9PW4udmlzaWJpbGl0eVN0YXRlJiZlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLEcodCwiYmVmb3JldW5sb2FkIiwoZnVuY3Rpb24oKXtlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLCJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/KG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChmdW5jdGlvbiBlKCl7bi5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixlLCExKSxyKCl9KSk6bi5hdHRhY2hFdmVudCYmbi5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIiwoZnVuY3Rpb24gZSgpeyJjb21wbGV0ZSI9PT1uLnJlYWR5U3RhdGUmJihuLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLGUpLHIoKSl9KSksRyh0LCJsb2FkIixyLCExKSk6cigpLGV9KCk6dm9pZCAwO2Z1bmN0aW9uIEVlKGUsbix0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9e30pLFBlP2Z1bmN0aW9uKGUsbix0LHIsbyxpKXtyZXR1cm4gaGUuaGFzT3duUHJvcGVydHkoZSk/bnVsbDooaGVbZV09bWUoZSxuLHQscixvLGkpLGhlW2VdKX0oZSxlLCJqcy0iLmNvbmNhdCgiMy4yNC4xIiksbixQZSx0KTp2b2lkIDB9fSwyNDE1MzkoZSl7dmFyIG49e3V0Zjg6e3N0cmluZ1RvQnl0ZXM6ZnVuY3Rpb24oZSl7cmV0dXJuIG4uYmluLnN0cmluZ1RvQnl0ZXModW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KGUpKSl9LGJ5dGVzVG9TdHJpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUobi5iaW4uYnl0ZXNUb1N0cmluZyhlKSkpfX0sYmluOnsKc3RyaW5nVG9CeXRlczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaCgyNTUmZS5jaGFyQ29kZUF0KHQpKTtyZXR1cm4gbn0sYnl0ZXNUb1N0cmluZzpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGVbdF0pKTtyZXR1cm4gbi5qb2luKCIiKX19fTtlLmV4cG9ydHM9bn0sMjk3NjM1KGUpe3ZhciBuLHQ7bj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIsdD17cm90bDpmdW5jdGlvbihlLG4pe3JldHVybiBlPDxufGU+Pj4zMi1ufSxyb3RyOmZ1bmN0aW9uKGUsbil7cmV0dXJuIGU8PDMyLW58ZT4+Pm59LGVuZGlhbjpmdW5jdGlvbihlKXtpZihlLmNvbnN0cnVjdG9yPT1OdW1iZXIpcmV0dXJuIDE2NzExOTM1JnQucm90bChlLDgpfDQyNzgyNTUzNjAmdC5yb3RsKGUsMjQpO2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKWVbbl09dC5lbmRpYW4oZVtuXSk7cmV0dXJuIGV9LHJhbmRvbUJ5dGVzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXTtlPjA7ZS0tKW4ucHVzaChNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSk7cmV0dXJuIG59LGJ5dGVzVG9Xb3JkczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wLHI9MDt0PGUubGVuZ3RoO3QrKyxyKz04KW5bcj4+PjVdfD1lW3RdPDwyNC1yJTMyO3JldHVybiBufSx3b3Jkc1RvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PDMyKmUubGVuZ3RoO3QrPTgpbi5wdXNoKGVbdD4+PjVdPj4+MjQtdCUzMiYyNTUpO3JldHVybiBufSxieXRlc1RvSGV4OmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXSx0PTA7dDxlLmxlbmd0aDt0Kyspbi5wdXNoKChlW3RdPj4+NCkudG9TdHJpbmcoMTYpKSxuLnB1c2goKDE1JmVbdF0pLnRvU3RyaW5nKDE2KSk7cmV0dXJuIG4uam9pbigiIil9LGhleFRvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PGUubGVuZ3RoO3QrPTIpbi5wdXNoKHBhcnNlSW50KGUuc3Vic3RyKHQsMiksMTYpKTtyZXR1cm4gbn0sYnl0ZXNUb0Jhc2U2NDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10scj0wO3I8ZS5sZW5ndGg7cis9Mylmb3IodmFyIG89ZVtyXTw8MTZ8ZVtyKzFdPDw4fGVbcisyXSxpPTA7aTw0O2krKyk4KnIrNippPD04KmUubGVuZ3RoP3QucHVzaChuLmNoYXJBdChvPj4+NiooMy1pKSY2MykpOnQucHVzaCgiPSIpO3JldHVybiB0LmpvaW4oIiIpfSxiYXNlNjRUb0J5dGVzOmZ1bmN0aW9uKGUpe2U9ZS5yZXBsYWNlKC9bXkEtWjAtOStcL10vZ2ksIiIpO2Zvcih2YXIgdD1bXSxyPTAsbz0wO3I8ZS5sZW5ndGg7bz0rK3IlNCkwIT1vJiZ0LnB1c2goKG4uaW5kZXhPZihlLmNoYXJBdChyLTEpKSZNYXRoLnBvdygyLC0yKm8rOCktMSk8PDIqb3xuLmluZGV4T2YoZS5jaGFyQXQocikpPj4+Ni0yKm8pO3JldHVybiB0fX0sZS5leHBvcnRzPXR9LDE5NjM3MyhlLG4sdCl7dmFyIHIsbyxpLGE7cj10KDI5NzYzNSksbz10KDI0MTUzOSkudXRmOCxpPXQoMjQxNTM5KS5iaW4sKGE9ZnVuY3Rpb24oZSxuKXt2YXIgdD1yLndvcmRzVG9CeXRlcyhmdW5jdGlvbihlKXtlLmNvbnN0cnVjdG9yPT1TdHJpbmc/ZT1vLnN0cmluZ1RvQnl0ZXMoZSk6InVuZGVmaW5lZCIhPXR5cGVvZiBCdWZmZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBCdWZmZXIuaXNCdWZmZXImJkJ1ZmZlci5pc0J1ZmZlcihlKT9lPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGUsMCk6QXJyYXkuaXNBcnJheShlKXx8KGU9ZS50b1N0cmluZygpKTt2YXIgbj1yLmJ5dGVzVG9Xb3JkcyhlKSx0PTgqZS5sZW5ndGgsaT1bXSxhPTE3MzI1ODQxOTMsdT0tMjcxNzMzODc5LGM9LTE3MzI1ODQxOTQscz0yNzE3MzM4NzgsbD0tMTAwOTU4OTc3NjtuW3Q+PjVdfD0xMjg8PDI0LXQlMzIsblsxNSsodCs2ND4+Pjk8PDQpXT10O2Zvcih2YXIgZj0wO2Y8bi5sZW5ndGg7Zis9MTYpe2Zvcih2YXIgZD1hLHY9dSxnPWMscD1zLG09bCxoPTA7aDw4MDtoKyspe2lmKGg8MTYpaVtoXT1uW2YraF07ZWxzZXt2YXIgeT1pW2gtM11eaVtoLThdXmlbaC0xNF1eaVtoLTE2XTtpW2hdPXk8PDF8eT4+PjMxfXZhciB3PShhPDw1fGE+Pj4yNykrbCsoaVtoXT4+PjApKyhoPDIwPzE1MTg1MDAyNDkrKHUmY3x+dSZzKTpoPDQwPzE4NTk3NzUzOTMrKHVeY15zKTpoPDYwPyh1JmN8dSZzfGMmcyktMTg5NDAwNzU4ODoodV5jXnMpLTg5OTQ5NzUxNCk7bD1zLHM9YyxjPXU8PDMwfHU+Pj4yLHU9YSxhPXd9YSs9ZCx1Kz12LGMrPWcscys9cCxsKz1tfXJldHVyblthLHUsYyxzLGxdfShlKSk7cmV0dXJuIG4mJm4uYXNCeXRlcz90Om4mJm4uYXNTdHJpbmc/aS5ieXRlc1RvU3RyaW5nKHQpOnIuYnl0ZXNUb0hleCh0KX0pLl9ibG9ja3NpemU9MTYsYS5fZGlnZXN0c2l6ZT0yMCxlLmV4cG9ydHM9YX0sNTM3MjA0KGUsbix0KXt2YXIgcj10KDY5ODU3MSksbz10KDQ2NjY4MCksaT1vO2kudjE9cixpLnY0PW8sZS5leHBvcnRzPWl9LDg2NzE3KGUpe2Zvcih2YXIgbj1bXSx0PTA7dDwyNTY7Kyt0KW5bdF09KHQrMjU2KS50b1N0cmluZygxNikuc3Vic3RyKDEpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciByPXR8fDAsbz1uO3JldHVybltvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dXS5qb2luKCIiKX19LDcyNzY0NChlKXt2YXIgbj0idW5kZWZpbmVkIiE9dHlwZW9mIGNyeXB0byYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcyYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcy5iaW5kKGNyeXB0byl8fCJ1bmRlZmluZWQiIT10eXBlb2YgbXNDcnlwdG8mJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubXNDcnlwdG8uZ2V0UmFuZG9tVmFsdWVzJiZtc0NyeXB0by5nZXRSYW5kb21WYWx1ZXMuYmluZChtc0NyeXB0byk7aWYobil7CnZhciB0PW5ldyBVaW50OEFycmF5KDE2KTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gbih0KSx0fX1lbHNle3ZhciByPW5ldyBBcnJheSgxNik7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7Zm9yKHZhciBlLG49MDtuPDE2O24rKykzJm58fChlPTQyOTQ5NjcyOTYqTWF0aC5yYW5kb20oKSkscltuXT1lPj4+KCgzJm4pPDwzKSYyNTU7cmV0dXJuIHJ9fX0sNjk4NTcxKGUsbix0KXt2YXIgcixvLGk9dCg3Mjc2NDQpLGE9dCg4NjcxNyksdT0wLGM9MDtlLmV4cG9ydHM9ZnVuY3Rpb24oZSxuLHQpe3ZhciBzPW4mJnR8fDAsbD1ufHxbXSxmPShlPWV8fHt9KS5ub2RlfHxyLGQ9dm9pZCAwIT09ZS5jbG9ja3NlcT9lLmNsb2Nrc2VxOm87aWYobnVsbD09Znx8bnVsbD09ZCl7dmFyIHY9aSgpO251bGw9PWYmJihmPXI9WzF8dlswXSx2WzFdLHZbMl0sdlszXSx2WzRdLHZbNV1dKSxudWxsPT1kJiYoZD1vPTE2MzgzJih2WzZdPDw4fHZbN10pKX12YXIgZz12b2lkIDAhPT1lLm1zZWNzP2UubXNlY3M6KG5ldyBEYXRlKS5nZXRUaW1lKCkscD12b2lkIDAhPT1lLm5zZWNzP2UubnNlY3M6YysxLG09Zy11KyhwLWMpLzFlNDtpZihtPDAmJnZvaWQgMD09PWUuY2xvY2tzZXEmJihkPWQrMSYxNjM4MyksKG08MHx8Zz51KSYmdm9pZCAwPT09ZS5uc2VjcyYmKHA9MCkscD49MWU0KXRocm93IG5ldyBFcnJvcigidXVpZC52MSgpOiBDYW4ndCBjcmVhdGUgbW9yZSB0aGFuIDEwTSB1dWlkcy9zZWMiKTt1PWcsYz1wLG89ZDt2YXIgaD0oMWU0KigyNjg0MzU0NTUmKGcrPTEyMjE5MjkyOGU1KSkrcCklNDI5NDk2NzI5NjtsW3MrK109aD4+PjI0JjI1NSxsW3MrK109aD4+PjE2JjI1NSxsW3MrK109aD4+PjgmMjU1LGxbcysrXT0yNTUmaDt2YXIgeT1nLzQyOTQ5NjcyOTYqMWU0JjI2ODQzNTQ1NTtsW3MrK109eT4+PjgmMjU1LGxbcysrXT0yNTUmeSxsW3MrK109eT4+PjI0JjE1fDE2LGxbcysrXT15Pj4+MTYmMjU1LGxbcysrXT1kPj4+OHwxMjgsbFtzKytdPTI1NSZkO2Zvcih2YXIgdz0wO3c8NjsrK3cpbFtzK3ddPWZbd107cmV0dXJuIG58fGEobCl9fSw0NjY2ODAoZSxuLHQpe3ZhciByPXQoNzI3NjQ0KSxvPXQoODY3MTcpO2UuZXhwb3J0cz1mdW5jdGlvbihlLG4sdCl7dmFyIGk9biYmdHx8MDsic3RyaW5nIj09dHlwZW9mIGUmJihuPSJiaW5hcnkiPT09ZT9uZXcgQXJyYXkoMTYpOm51bGwsZT1udWxsKTt2YXIgYT0oZT1lfHx7fSkucmFuZG9tfHwoZS5ybmd8fHIpKCk7aWYoYVs2XT0xNSZhWzZdfDY0LGFbOF09NjMmYVs4XXwxMjgsbilmb3IodmFyIHU9MDt1PDE2OysrdSluW2krdV09YVt1XTtyZXR1cm4gbnx8byhhKX19fV0pOw=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/loading.gif","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.147Z","timestamp":1785154591147,"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://persimmontrades.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: 225575\r\nlast-modified: Thu, 03 Oct 2019 10:15:00 GMT\r\ncontent-type: image/gif\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":702,"size_decoded":1361,"mime_type":"image/gif","magic":"GIF image data, version 89a, 16 x 16","md5":"eefaa072b284a305c12c06608333abc2","sha1":"58272721ccc1efda26eaa22354022c7c793edbb6","sha256":"fb6b7bcc1ab09f27db17bcbdf5239ce1d52af34f1fc5125b3fc8528a07848d21","sha512":"c5ccfdcd9ce76de85f043a1733c9f0b620e15babbaf2a5639684c7b2bb8e5a66473c9a83f14cb48d9cb6c6a1c6b36f2c5a28e25abaf131fb85ec5eedecbae4ac","ssdeep":"","tlshash":"5d01dd13f3d50473f66d0075a20cc57f010635daaadad7089a48117cfe1983c5239b82","first_seen":"2023-04-05T11:18:23Z","last_seen":"2026-07-27T14:17:34.182563Z","times_seen":17771,"resource_available":false,"data":"R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/h1CdWlsdCB3aXRoIEdJRiBNb3ZpZSBHZWFyIDQuMAAh/hVNYWRlIGJ5IEFqYXhMb2FkLmluZm8AIfkECQoAAAAsAAAAABAAEAAAAzMIutz+MMpJaxNjCDoIGZwHTphmCUWxMcK6FJnBti5gxMJx0C1bGDndpgc5GAwHSmvnSAAAIfkECQoAAAAsAAAAABAAEAAAAzQIutz+TowhIBuEDLuw5opEcUJRVGAxGSBgTEVbGqh8HLV13+1hGAeAINcY4oZDGbIlJCoSACH5BAkKAAAALAAAAAAQABAAAAM2CLoyIyvKQciQzJRWLwaFYxwO9BlO8UlCYZircBzwCsyzvRzGqCsCWe0X/AGDww8yqWQan78EACH5BAkKAAAALAAAAAAQABAAAAMzCLpiJSvKMoaR7JxWX4WLpgmFIQwEMUSHYRwRqkaCsNEfA2JSXfM9HzA4LBqPyKRyOUwAACH5BAkKAAAALAAAAAAQABAAAAMyCLpyJytK52QU8BjzTIEMJnbDYFxiVJSFhLkeaFlCKc/KQBADHuk8H8MmLBqPyKRSkgAAIfkECQoAAAAsAAAAABAAEAAAAzMIuiDCkDkX43TnvNqeMBnHHOAhLkK2ncpXrKIxDAYLFHNhu7A195UBgTCwCYm7n20pSgAAIfkECQoAAAAsAAAAABAAEAAAAzIIutz+8AkR2ZxVXZoB7tpxcJVgiN1hnN00loVBRsUwFJBgm7YBDQTCQBCbMYDC1s6RAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P4wykmrZULUnCnXHggIwyCOx3EOBDEwqcqwrlAYwmEYB1bapQIgdWIYgp5bEZAAADsAAAAAAAAAAAAK"}},"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":"s3-symbol-logo.tradingview.com/country/US.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.174Z","timestamp":1785154591174,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /country/US.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"2b343664b411ee3b87b4a37c15f4dfb9\"\r\nlast-modified: Fri, 25 Apr 2025 20:10:41 GMT\r\ncdn-cachedat: 08/14/2025 09:10:06\r\nx-amz-id-2: nFuFH78hWf/RuyE6sOEP+F9L63kS25o7rnmt39r9N6/xkz0Scv+C4OtWSoMFsuyMhB00in1nZsX8Sh51IXRPU3FuDp9hOipkZvRpvtL7hQk=\r\nx-amz-request-id: GMKTFDY2GEW3BMHT\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2b343664b411ee3b87b4a37c15f4dfb9\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 131e2dd16ff5569b834517757489b5c6\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2910,"size_decoded":1337,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2910), with no line terminators","md5":"2b343664b411ee3b87b4a37c15f4dfb9","sha1":"0bbfacaf518424005de9debac0618b2d385f73eb","sha256":"71bfd6b1db0f03e8ad00d7951a2ec80d684450490bae344b9a0e33141e9264b0","sha512":"9f919e0006556b02b85110cffca18cf69613d63530fd055b4e2a2c27166c8e27401d7aca3482e568802eab205eefc5f98b6ae545c1dc476fb41a9b614ab0825c","ssdeep":"","tlshash":"97518f2a941d951c2846e60dc77f8882738e2d0771a5a2d81dfcf3a4e20f7e5fb47880","first_seen":"2025-04-26T10:53:44.17511Z","last_seen":"2026-07-27T14:17:30.797923Z","times_seen":5860,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxRTg4RTkiIGQ9Ik0wIDBIMTFWMTFIMHoiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGZpbGw9IiNFRjUzNTAiIGQ9Ik0xMSAwdjRIMTh2LTR6TTExIDd2NEgxOHYtNHpNMCAxNHY0SDE4di00eiIgc2hhcGUtcmVuZGVyaW5nPSJjcmlzcEVkZ2VzIi8+PHBhdGggZmlsbD0iI0Y4RjlGRCIgZD0iTTExIDR2M0gxOHYtM3pNMCAxMXYzSDE4di0zeiIgc2hhcGUtcmVuZGVyaW5nPSJjcmlzcEVkZ2VzIi8+PHBhdGggZmlsbD0iI0Y4RjlGRCIgZD0iTTIuNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek0yLjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNMi40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6TTUuNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek01LjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNNS40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6TTguNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek04LjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNOC40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6Ii8+PC9zdmc+"}},"time_used":56,"timings":{"blocked":-1,"dns":25,"connect":23,"send":0,"wait":2,"receive":-1,"ssl":5},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/9488.09f269f8b26b2b00a8b7.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.532Z","timestamp":1785154590532,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/9488.09f269f8b26b2b00a8b7.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a6328d1-a1b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:56:49 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:33:39\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 362078442035a8148c61f13ff0431738\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2587,"size_decoded":1535,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2587), with no line terminators","md5":"275a3aff3912902e8be1e478039dcc68","sha1":"56cb8c5a6ac35dac135d312b22a8f19eccf84dfa","sha256":"cd8a39ef3cdfe7b217c84d018998f33c3ba27287b520ddc95b4bbe03fb4be654","sha512":"d16c152cd43b3b93c510d62f53460b1f78e47297b85227ab9f589b9d906cbf6ca86c7afa2bbc8e96298a5d1ce56229f488e750625a71241ab512eefff23b6ae7","ssdeep":"","tlshash":"92510298e5d0263a344b963e1359d5bd4274e493db42cfecf721652045c3bfb01b3628","first_seen":"2026-07-24T21:10:00.174224Z","last_seen":"2026-07-27T14:22:59.581759Z","times_seen":290,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAteDB2czp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLV8xLXgwdnM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tXzIteDB2czp2YXIoLS1jb2xvci10di1ibHVlLTEwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC14MHZzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEteDB2czp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tXzIteDB2czp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApfS53cmFwLXl6ajdsdktue3Bvc2l0aW9uOnJlbGF0aXZlfS5saXN0LXl6ajdsdktue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7cGFkZGluZzoxNXB4IDB9Lmxpc3QteXpqN2x2S24gLml0ZW0teXpqN2x2S257Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYmxvY2s6MTBweCAxMHB4O3BhZGRpbmctaW5saW5lOjE1cHggMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2UsYmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2U7d2hpdGUtc3BhY2U6bm93cmFwfS5saXN0LXl6ajdsdktuIC5pdGVtLXl6ajdsdktuLnNlbGVjdGVkLXl6ajdsdktue2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzIteDB2cyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saXN0LXl6ajdsdktuIC5pdGVtLXl6ajdsdktuOmhvdmVyOm5vdCguc2VsZWN0ZWQteXpqN2x2S24pe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtZHJvcGRvd24taXRlbS1ob3Zlci1iZyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktue2N1cnNvcjpwb2ludGVyO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZToxNXB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0ubGlzdC15emo3bHZLbiAuYmx1aXNoSXRlbS15emo3bHZLbi5zZWxlY3RlZC15emo3bHZLbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8yLXgwdnMpO2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktuOmhvdmVyOm5vdCguc2VsZWN0ZWQteXpqN2x2S24pe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAteDB2cyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktuLm5vUGFkZGluZy15emo3bHZLbntwYWRkaW5nOjB9Lmxpc3QtR05XNkJ2R297ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzphdXRvfS5saXN0LUdOVzZCdkdvIC5pdGVtLUdOVzZCdkdve2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1zaHJpbms6MH0uY29udGFpbmVyLUhUQkpvOWJhe292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JvcmRlci1yYWRpdXM6NnB4O2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDpub3JtYWx9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHh9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSk7Ym9yZGVyOjFweCBzb2xpZCAjMDAwMDtib3JkZXItcmFkaXVzOjNweH0uY29udGFpbmVyLUhUQkpvOWJhOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0uY29udGFpbmVyLUhUQkpvOWJhLnRvcC1IVEJKbzliYXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JvcmRlci1yYWRpdXM6NnB4O2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpfQ=="}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/favicon.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.016Z","timestamp":1785154590016,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/favicon.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:30 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 2770\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2770,"size_decoded":3035,"mime_type":"image/png","magic":"PNG image data, 32 x 32, 8-bit/color RGBA, non-interlaced","md5":"1417cef95be9f457ae8875703e22be9f","sha1":"851d4868ccf236de0b0b126fdaa52d6a4185c47d","sha256":"1edf6597c84596bf5c3ca64e8e69e48415d115c99f6823114738ebd14e33f136","sha512":"e5f820c764762c712d9a1acea14e466fd02fd31e569e268f853177b1c2226b90d086872f1b119ad9a01e70f8a3996c9778094f3a24373ad8b03abade4be0f454","ssdeep":"","tlshash":"6d514cc9a440ace01a76d8d152f4309b18d589c2cf19f5b1ddce98c79911af9197c8cb","first_seen":"2025-07-30T23:06:04.023271Z","last_seen":"2026-07-27T12:17:29.209614Z","times_seen":6,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA25pVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyMjVjMzhhNy1kNjZhLTcxNGQtOGJiMS04MDIyOGQ2YzVjNTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NkRDOTJDMEMyMTM1MTFFOUFFOTNGRDQ4QTUwMEIyNDQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NkRDOTJDMEIyMTM1MTFFOUFFOTNGRDQ4QTUwMEIyNDQiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NUEwQzUzMzExRDM3MTFFOTk0RjdBRUNDMkZBODQzQzkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NUEwQzUzMzIxRDM3MTFFOTk0RjdBRUNDMkZBODQzQzkiLz4gPC9yZGY6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"}},"time_used":30,"timings":{"blocked":5,"dns":0,"connect":0,"send":0,"wait":25,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"salesiq.zohopublic.eu/visitor/v2/channels/website?widgetcode=siqe64b21f821497a735abab8e07a2e315f1e89d5d86551681d580f230d5686bfd83e13d8d84c1f3d060c1ee86dedca12de\u0026internal_channel_req=true\u0026embed_version=v2\u0026language_api=true\u0026browser_language=en\u0026current_domain=https%3A%2F%2Fpersimmontrades.com\u0026pagetitle=PERSIMMON%20TRADE%20-%20Best%20choice%20for%20cryptocurrency%20trading.\u0026include_fields=avuid","fqdn":"salesiq.zohopublic.eu","domain":"zohopublic.eu","tld":"eu"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.091Z","timestamp":1785154590091,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /visitor/v2/channels/website?widgetcode=siqe64b21f821497a735abab8e07a2e315f1e89d5d86551681d580f230d5686bfd83e13d8d84c1f3d060c1ee86dedca12de\u0026internal_channel_req=true\u0026embed_version=v2\u0026language_api=true\u0026browser_language=en\u0026current_domain=https%3A%2F%2Fpersimmontrades.com\u0026pagetitle=PERSIMMON%20TRADE%20-%20Best%20choice%20for%20cryptocurrency%20trading.\u0026include_fields=avuid HTTP/1.1\r\nHost: salesiq.zohopublic.eu\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-siq-embed-version: 2\r\nOrigin: https://persimmontrades.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nCookie: zalb_34e30bb8af=dd16d331856928f5539d49ba6d988ab6; LS_CSRF_TOKEN=654b7b33-e085-4760-b03f-c7e02395c050\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"ultradns","sensor_type":"DNS","title":"DigiCert UltraDNS","description":"DigiCert UltraDNS","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"salesiq.zohopublic.eu","verdict":"malicious","severity":"medium","comment":"","link":"https://vercara.digicert.com/ultra-dns-public","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.269Z","timestamp":1785154590269,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-15b86\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7184bd2ec6478387b5a67806087c2a81\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":88966,"size_decoded":33771,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0af33a0629a4a15d05b8d21be003c0eb","sha1":"d61ed97048a72976c85785513a62b5e8590fb75a","sha256":"4dbdbd0c38d1d6468cbd0ec6b02411faaeffeddfc87c7b638be2e1263931cd14","sha512":"4350a5eab085a85477d149b1a91edb41a808bb070818e9d43e5e1147e4c71a0a5c3438616ab61efb6497365cb84e1f518343afd20431bb8612ba9f7a2165f814","ssdeep":"1536:wjugPsJO3KbxBvr1tBzoxvAgVIvrKfu2DNzmR5axsx5Eng/vc2JZu4+ej3aNOtHm:k0yKlvh/Z+839HMY74qBs","tlshash":"149309ddb2c5b06257e731b910af650ab237249d680d8440f139e8f6bc74b4aa13be7d","first_seen":"2026-05-05T10:36:04.846561Z","last_seen":"2026-07-27T14:22:59.587085Z","times_seen":2310,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5OTgyN10sezE5OTgyNyhlKXt2YXIgdD13aW5kb3cuZG9jdW1lbnQsbj13aW5kb3cubmF2aWdhdG9yLHI9d2luZG93LmxvY2F0aW9uLGk9ZnVuY3Rpb24oKXt2YXIgZSxyLGksbyxhPWZ1bmN0aW9uKHQsbil7cmV0dXJuIG5ldyBhLmZuLmluaXQodCxuLGUpfSxzPXdpbmRvdy5qUXVlcnksbD13aW5kb3cuJCx1PS9eKD86W14jPF0qKDxbXHdcV10rPilbXj5dKiR8IyhbXHdcLV0qKSQpLyxjPS9eXHMrLyxmPS9ccyskLyxkPS9ePChcdyspXHMqXC8/Pig/OjxcL1wxPik/JC8scD0vXltcXSw6e31cc10qJC8saD0vXFwoPzpbIlxcXC9iZm5ydF18dVswLTlhLWZBLUZdezR9KS9nLG09LyJbXiJcXFxuXHJdKiJ8dHJ1ZXxmYWxzZXxudWxsfC0/XGQrKD86XC5cZCopPyg/OltlRV1bK1wtXT9cZCspPy9nLGc9Lyg/Ol58OnwsKSg/OlxzKlxbKSsvZyx2PS8od2Via2l0KVsgXC9dKFtcdy5dKykvLHk9LyhvcGVyYSkoPzouKnZlcnNpb24pP1sgXC9dKFtcdy5dKykvLGI9Lyhtc2llKSAoW1x3Ll0rKS8seD0vKG1vemlsbGEpKD86Lio/IHJ2OihbXHcuXSspKT8vLHc9Ly0oW2Etel18WzAtOV0pL2dpLFQ9L14tbXMtLyxOPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQrIiIpLnRvVXBwZXJDYXNlKCl9LEM9bi51c2VyQWdlbnQsUz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGs9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxFPUFycmF5LnByb3RvdHlwZS5wdXNoLEE9QXJyYXkucHJvdG90eXBlLnNsaWNlLEQ9U3RyaW5nLnByb3RvdHlwZS50cmltLEw9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsRj17fTtmdW5jdGlvbiBqKCl7aWYoIWEuaXNSZWFkeSl7dHJ5e3QuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKCJsZWZ0Iil9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChqLDEpfWEucmVhZHkoKX19cmV0dXJuIGEuZm49YS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmEsaW5pdDpmdW5jdGlvbihlLG4scil7dmFyIGksbyxzLGw7aWYoIWUpcmV0dXJuIHRoaXM7aWYoZS5ub2RlVHlwZSlyZXR1cm4gdGhpcy5jb250ZXh0PXRoaXNbMF09ZSx0aGlzLmxlbmd0aD0xLHRoaXM7aWYoImJvZHkiPT09ZSYmIW4mJnQuYm9keSlyZXR1cm4gdGhpcy5jb250ZXh0PXQsdGhpc1swXT10LmJvZHksdGhpcy5zZWxlY3Rvcj1lLHRoaXMubGVuZ3RoPTEsdGhpcztpZigic3RyaW5nIj09dHlwZW9mIGUpe2lmKCEoaT0iPCI9PT1lLmNoYXJBdCgwKSYmIj4iPT09ZS5jaGFyQXQoZS5sZW5ndGgtMSkmJmUubGVuZ3RoPj0zP1tudWxsLGUsbnVsbF06dS5leGVjKGUpKXx8IWlbMV0mJm4pcmV0dXJuIW58fG4uanF1ZXJ5PyhufHxyKS5maW5kKGUpOnRoaXMuY29uc3RydWN0b3IobikuZmluZChlKTtpZihpWzFdKXJldHVybiBsPShuPW4gaW5zdGFuY2VvZiBhP25bMF06bik/bi5vd25lckRvY3VtZW50fHxuOnQsKHM9ZC5leGVjKGUpKT9hLmlzUGxhaW5PYmplY3Qobik/KGU9W3QuY3JlYXRlRWxlbWVudChzWzFdKV0sYS5mbi5hdHRyLmNhbGwoZSxuLCEwKSk6ZT1bbC5jcmVhdGVFbGVtZW50KHNbMV0pXTplPSgocz1hLmJ1aWxkRnJhZ21lbnQoW2lbMV1dLFtsXSkpLmNhY2hlYWJsZT9hLmNsb25lKHMuZnJhZ21lbnQpOnMuZnJhZ21lbnQpLmNoaWxkTm9kZXMsYS5tZXJnZSh0aGlzLGUpO2lmKChvPXQuZ2V0RWxlbWVudEJ5SWQoaVsyXSkpJiZvLnBhcmVudE5vZGUpe2lmKG8uaWQhPT1pWzJdKXJldHVybiByLmZpbmQoZSk7dGhpcy5sZW5ndGg9MSx0aGlzWzBdPW99cmV0dXJuIHRoaXMuY29udGV4dD10LHRoaXMuc2VsZWN0b3I9ZSx0aGlzfXJldHVybiBhLmlzRnVuY3Rpb24oZSk/ci5yZWFkeShlKToodm9pZCAwIT09ZS5zZWxlY3RvciYmKHRoaXMuc2VsZWN0b3I9ZS5zZWxlY3Rvcix0aGlzLmNvbnRleHQ9ZS5jb250ZXh0KSxhLm1ha2VBcnJheShlLHRoaXMpKX0sc2VsZWN0b3I6IiIsanF1ZXJ5OiIxLjcuMiIsbGVuZ3RoOjAsc2l6ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmxlbmd0aH0sdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcywwKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3RoaXMudG9BcnJheSgpOmU8MD90aGlzW3RoaXMubGVuZ3RoK2VdOnRoaXNbZV19LHB1c2hTdGFjazpmdW5jdGlvbihlLHQsbil7dmFyIHI9dGhpcy5jb25zdHJ1Y3RvcigpO3JldHVybiBhLmlzQXJyYXkoZSk/RS5hcHBseShyLGUpOmEubWVyZ2UocixlKSxyLnByZXZPYmplY3Q9dGhpcyxyLmNvbnRleHQ9dGhpcy5jb250ZXh0LCJmaW5kIj09PXQ/ci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyh0aGlzLnNlbGVjdG9yPyIgIjoiIikrbjp0JiYoci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyIuIit0KyIoIituKyIpIikscn0sZWFjaDpmdW5jdGlvbihlLHQpe3JldHVybiBhLmVhY2godGhpcyxlLHQpfSxyZWFkeTpmdW5jdGlvbihlKXtyZXR1cm4gYS5iaW5kUmVhZHkoKSxpLmFkZChlKSx0aGlzfSxlcTpmdW5jdGlvbihlKXtyZXR1cm4tMT09PShlPStlKT90aGlzLnNsaWNlKGUpOnRoaXMuc2xpY2UoZSxlKzEpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoLTEpfSxzbGljZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhBLmFwcGx5KHRoaXMsYXJndW1lbnRzKSwic2xpY2UiLEEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9LG1hcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soYS5tYXAodGhpcywoZnVuY3Rpb24odCxuKXtyZXR1cm4gZS5jYWxsKHQsbix0KX0pKSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IobnVsbCl9LHB1c2g6RSxzb3J0OltdLnNvcnQsc3BsaWNlOltdLnNwbGljZX0sYS5mbi5pbml0LnByb3RvdHlwZT1hLmZuLGEuZXh0ZW5kPWEuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLHM9YXJndW1lbnRzWzBdfHx7fSxsPTEsdT1hcmd1bWVudHMubGVuZ3RoLGM9ITEKO2ZvcigiYm9vbGVhbiI9PXR5cGVvZiBzJiYoYz1zLHM9YXJndW1lbnRzWzFdfHx7fSxsPTIpLCJvYmplY3QiPT10eXBlb2Ygc3x8YS5pc0Z1bmN0aW9uKHMpfHwocz17fSksdT09PWwmJihzPXRoaXMsLS1sKTtsPHU7bCsrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tsXSkpZm9yKHQgaW4gZSluPXNbdF0scyE9PShyPWVbdF0pJiYoYyYmciYmKGEuaXNQbGFpbk9iamVjdChyKXx8KGk9YS5pc0FycmF5KHIpKSk/KGk/KGk9ITEsbz1uJiZhLmlzQXJyYXkobik/bjpbXSk6bz1uJiZhLmlzUGxhaW5PYmplY3Qobik/bjp7fSxzW3RdPWEuZXh0ZW5kKGMsbyxyKSk6dm9pZCAwIT09ciYmKHNbdF09cikpO3JldHVybiBzfSxhLmV4dGVuZCh7bm9Db25mbGljdDpmdW5jdGlvbihlKXtyZXR1cm4gd2luZG93LiQ9PT1hJiYod2luZG93LiQ9bCksZSYmd2luZG93LmpRdWVyeT09PWEmJih3aW5kb3cualF1ZXJ5PXMpLGF9LGlzUmVhZHk6ITEscmVhZHlXYWl0OjEsaG9sZFJlYWR5OmZ1bmN0aW9uKGUpe2U/YS5yZWFkeVdhaXQrKzphLnJlYWR5KCEwKX0scmVhZHk6ZnVuY3Rpb24oZSl7aWYoITA9PT1lJiYhIC0tYS5yZWFkeVdhaXR8fCEwIT09ZSYmIWEuaXNSZWFkeSl7aWYoIXQuYm9keSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKGEuaXNSZWFkeT0hMCwhMCE9PWUmJi0tYS5yZWFkeVdhaXQ+MClyZXR1cm47aS5maXJlV2l0aCh0LFthXSksYS5mbi50cmlnZ2VyJiZhKHQpLnRyaWdnZXIoInJlYWR5Iikub2ZmKCJyZWFkeSIpfX0sYmluZFJlYWR5OmZ1bmN0aW9uKCl7aWYoIWkpe2lmKGk9YS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksImNvbXBsZXRlIj09PXQucmVhZHlTdGF0ZSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKHQuYWRkRXZlbnRMaXN0ZW5lcil0LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixhLnJlYWR5LCExKTtlbHNlIGlmKHQuYXR0YWNoRXZlbnQpe3QuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksd2luZG93LmF0dGFjaEV2ZW50KCJvbmxvYWQiLGEucmVhZHkpO3ZhciBlPSExO3RyeXtlPW51bGw9PXdpbmRvdy5mcmFtZUVsZW1lbnR9Y2F0Y2goZSl7fXQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsJiZlJiZqKCl9fX0saXNGdW5jdGlvbjpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT09YS50eXBlKGUpfSxpc0FycmF5OkFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiJhcnJheSI9PT1hLnR5cGUoZSl9LGlzV2luZG93OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT1lLndpbmRvd30saXNOdW1lcmljOmZ1bmN0aW9uKGUpe3JldHVybiFpc05hTihwYXJzZUZsb2F0KGUpKSYmaXNGaW5pdGUoZSl9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/U3RyaW5nKGUpOkZbUy5jYWxsKGUpXXx8Im9iamVjdCJ9LGlzUGxhaW5PYmplY3Q6ZnVuY3Rpb24oZSl7aWYoIWV8fCJvYmplY3QiIT09YS50eXBlKGUpfHxlLm5vZGVUeXBlfHxhLmlzV2luZG93KGUpKXJldHVybiExO3RyeXtpZihlLmNvbnN0cnVjdG9yJiYhay5jYWxsKGUsImNvbnN0cnVjdG9yIikmJiFrLmNhbGwoZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsImlzUHJvdG90eXBlT2YiKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX12YXIgdDtmb3IodCBpbiBlKTtyZXR1cm4gdm9pZCAwPT09dHx8ay5jYWxsKGUsdCl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0scGFyc2VKU09OOmZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmZT8oZT1hLnRyaW0oZSksd2luZG93LkpTT04mJndpbmRvdy5KU09OLnBhcnNlP3dpbmRvdy5KU09OLnBhcnNlKGUpOnAudGVzdChlLnJlcGxhY2UoaCwiQCIpLnJlcGxhY2UobSwiXSIpLnJlcGxhY2UoZywiIikpP25ldyBGdW5jdGlvbigicmV0dXJuICIrZSkoKTp2b2lkIGEuZXJyb3IoIkludmFsaWQgSlNPTjogIitlKSk6bnVsbH0scGFyc2VYTUw6ZnVuY3Rpb24oZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhZSlyZXR1cm4gbnVsbDt2YXIgdDt0cnl7d2luZG93LkRPTVBhcnNlcj90PShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwidGV4dC94bWwiKTooKHQ9bmV3IEFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxET00iKSkuYXN5bmM9ImZhbHNlIix0LmxvYWRYTUwoZSkpfWNhdGNoKGUpe3Q9dm9pZCAwfXJldHVybiB0JiZ0LmRvY3VtZW50RWxlbWVudCYmIXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxhLmVycm9yKCJJbnZhbGlkIFhNTDogIitlKSx0fSxub29wOmZ1bmN0aW9uKCl7fSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGUpe30sY2FtZWxDYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoVCwibXMtIikucmVwbGFjZSh3LE4pfSxub2RlTmFtZTpmdW5jdGlvbihlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvVXBwZXJDYXNlKCk9PT10LnRvVXBwZXJDYXNlKCl9LGVhY2g6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk9MCxvPWUubGVuZ3RoLHM9dm9pZCAwPT09b3x8YS5pc0Z1bmN0aW9uKGUpO2lmKG4paWYocyl7Zm9yKHIgaW4gZSlpZighMT09PXQuYXBwbHkoZVtyXSxuKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuYXBwbHkoZVtpKytdLG4pOyk7ZWxzZSBpZihzKXtmb3IociBpbiBlKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuY2FsbChlW2ldLGksZVtpKytdKTspO3JldHVybiBlfSx0cmltOkQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/IiI6RC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjplLnRvU3RyaW5nKCkucmVwbGFjZShjLCIiKS5yZXBsYWNlKGYsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtpZihudWxsIT1lKXt2YXIgcj1hLnR5cGUoZSkKO251bGw9PWUubGVuZ3RofHwic3RyaW5nIj09PXJ8fCJmdW5jdGlvbiI9PT1yfHwicmVnZXhwIj09PXJ8fGEuaXNXaW5kb3coZSk/RS5jYWxsKG4sZSk6YS5tZXJnZShuLGUpfXJldHVybiBufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZih0KXtpZihMKXJldHVybiBMLmNhbGwodCxlLG4pO2ZvcihyPXQubGVuZ3RoLG49bj9uPDA/TWF0aC5tYXgoMCxyK24pOm46MDtuPHI7bisrKWlmKG4gaW4gdCYmdFtuXT09PWUpcmV0dXJuIG59cmV0dXJuLTF9LG1lcmdlOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sZW5ndGgscj0wO2lmKCJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGgpZm9yKHZhciBpPXQubGVuZ3RoO3I8aTtyKyspZVtuKytdPXRbcl07ZWxzZSBmb3IoO3ZvaWQgMCE9PXRbcl07KWVbbisrXT10W3IrK107cmV0dXJuIGUubGVuZ3RoPW4sZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7dmFyIHI9W107bj0hIW47Zm9yKHZhciBpPTAsbz1lLmxlbmd0aDtpPG87aSsrKW4hPT0hIXQoZVtpXSxpKSYmci5wdXNoKGVbaV0pO3JldHVybiByfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz1bXSxzPTAsbD1lLmxlbmd0aDtpZihlIGluc3RhbmNlb2YgYXx8dm9pZCAwIT09bCYmIm51bWJlciI9PXR5cGVvZiBsJiYobD4wJiZlWzBdJiZlW2wtMV18fDA9PT1sfHxhLmlzQXJyYXkoZSkpKWZvcig7czxsO3MrKyludWxsIT0ocj10KGVbc10scyxuKSkmJihvW28ubGVuZ3RoXT1yKTtlbHNlIGZvcihpIGluIGUpbnVsbCE9KHI9dChlW2ldLGksbikpJiYob1tvLmxlbmd0aF09cik7cmV0dXJuIG8uY29uY2F0LmFwcGx5KFtdLG8pfSxndWlkOjEscHJveHk6ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIj09dHlwZW9mIHQpe3ZhciBuPWVbdF07dD1lLGU9bn1pZihhLmlzRnVuY3Rpb24oZSkpe3ZhciByPUEuY2FsbChhcmd1bWVudHMsMiksaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHQsci5jb25jYXQoQS5jYWxsKGFyZ3VtZW50cykpKX07cmV0dXJuIGkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxpLmd1aWR8fGEuZ3VpZCsrLGl9fSxhY2Nlc3M6ZnVuY3Rpb24oZSx0LG4scixpLG8scyl7dmFyIGwsdT1udWxsPT1uLGM9MCxmPWUubGVuZ3RoO2lmKG4mJiJvYmplY3QiPT10eXBlb2Ygbil7Zm9yKGMgaW4gbilhLmFjY2VzcyhlLHQsYyxuW2NdLDEsbyxyKTtpPTF9ZWxzZSBpZih2b2lkIDAhPT1yKXtpZihsPXZvaWQgMD09PXMmJmEuaXNGdW5jdGlvbihyKSx1JiYobD8obD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwoYShlKSxuKX0pOih0LmNhbGwoZSxyKSx0PW51bGwpKSx0KWZvcig7YzxmO2MrKyl0KGVbY10sbixsP3IuY2FsbChlW2NdLGMsdChlW2NdLG4pKTpyLHMpO2k9MX1yZXR1cm4gaT9lOnU/dC5jYWxsKGUpOmY/dChlWzBdLG4pOm99LG5vdzpmdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfSx1YU1hdGNoOmZ1bmN0aW9uKGUpe2U9ZS50b0xvd2VyQ2FzZSgpO3ZhciB0PXYuZXhlYyhlKXx8eS5leGVjKGUpfHxiLmV4ZWMoZSl8fGUuaW5kZXhPZigiY29tcGF0aWJsZSIpPDAmJnguZXhlYyhlKXx8W107cmV0dXJue2Jyb3dzZXI6dFsxXXx8IiIsdmVyc2lvbjp0WzJdfHwiMCJ9fSxzdWI6ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQsbil7cmV0dXJuIG5ldyBlLmZuLmluaXQodCxuKX1hLmV4dGVuZCghMCxlLHRoaXMpLGUuc3VwZXJjbGFzcz10aGlzLGUuZm49ZS5wcm90b3R5cGU9dGhpcygpLGUuZm4uY29uc3RydWN0b3I9ZSxlLnN1Yj10aGlzLnN1YixlLmZuLmluaXQ9ZnVuY3Rpb24odCxyKXtyZXR1cm4gciYmciBpbnN0YW5jZW9mIGEmJiEociBpbnN0YW5jZW9mIGUpJiYocj1lKHIpKSxhLmZuLmluaXQuY2FsbCh0aGlzLHQscixuKX0sZS5mbi5pbml0LnByb3RvdHlwZT1lLmZuO3ZhciBuPWUodCk7cmV0dXJuIGV9LGJyb3dzZXI6e319KSxhLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7RlsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KSksKHI9YS51YU1hdGNoKEMpKS5icm93c2VyJiYoYS5icm93c2VyW3IuYnJvd3Nlcl09ITAsYS5icm93c2VyLnZlcnNpb249ci52ZXJzaW9uKSxhLmJyb3dzZXIud2Via2l0JiYoYS5icm93c2VyLnNhZmFyaT0hMCksL1xTLy50ZXN0KCLCoCIpJiYoYz0vXltcc1x4QTBdKy8sZj0vW1xzXHhBMF0rJC8pLGU9YSh0KSx0LmFkZEV2ZW50TGlzdGVuZXI/bz1mdW5jdGlvbigpe3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksYS5yZWFkeSgpfTp0LmF0dGFjaEV2ZW50JiYobz1mdW5jdGlvbigpeyJjb21wbGV0ZSI9PT10LnJlYWR5U3RhdGUmJih0LmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGEucmVhZHkoKSl9KSxhfSgpLG89e307aS5DYWxsYmFja3M9ZnVuY3Rpb24oZSl7ZT1lP29bZV18fGZ1bmN0aW9uKGUpe3ZhciB0LG4scj1vW2VdPXt9O2Zvcih0PTAsbj0oZT1lLnNwbGl0KC9ccysvKSkubGVuZ3RoO3Q8bjt0KyspcltlW3RdXT0hMDtyZXR1cm4gcn0oZSk6e307dmFyIHQsbixyLGEscyxsLHU9W10sYz1bXSxmPWZ1bmN0aW9uKHQpe3ZhciBuLHIsbyxhO2ZvcihuPTAscj10Lmxlbmd0aDtuPHI7bisrKW89dFtuXSwiYXJyYXkiPT09KGE9aS50eXBlKG8pKT9mKG8pOiJmdW5jdGlvbiI9PT1hJiYoZS51bmlxdWUmJnAuaGFzKG8pfHx1LnB1c2gobykpfSxkPWZ1bmN0aW9uKGksbyl7Zm9yKG89b3x8W10sdD0hZS5tZW1vcnl8fFtpLG9dLG49ITAscj0hMCxsPWF8fDAsYT0wLHM9dS5sZW5ndGg7dSYmbDxzO2wrKylpZighMT09PXVbbF0uYXBwbHkoaSxvKSYmZS5zdG9wT25GYWxzZSl7dD0hMDticmVha31yPSExLHUmJihlLm9uY2U/ITA9PT10P3AuZGlzYWJsZSgpOnU9W106YyYmYy5sZW5ndGgmJih0PWMuc2hpZnQoKSxwLmZpcmVXaXRoKHRbMF0sdFsxXSkpKX0scD17YWRkOmZ1bmN0aW9uKCl7aWYodSl7dmFyIGU9dS5sZW5ndGg7Zihhcmd1bWVudHMpLHI/cz11Lmxlbmd0aDp0JiYhMCE9PXQmJihhPWUsZCh0WzBdLHRbMV0pKX1yZXR1cm4gdGhpc30sCnJlbW92ZTpmdW5jdGlvbigpe2lmKHUpZm9yKHZhciB0PWFyZ3VtZW50cyxuPTAsaT10Lmxlbmd0aDtuPGk7bisrKWZvcih2YXIgbz0wO288dS5sZW5ndGgmJih0W25dIT09dVtvXXx8KHImJm88PXMmJihzLS0sbzw9bCYmbC0tKSx1LnNwbGljZShvLS0sMSksIWUudW5pcXVlKSk7bysrKTtyZXR1cm4gdGhpc30saGFzOmZ1bmN0aW9uKGUpe2lmKHUpZm9yKHZhciB0PTAsbj11Lmxlbmd0aDt0PG47dCsrKWlmKGU9PT11W3RdKXJldHVybiEwO3JldHVybiExfSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiB1PVtdLHRoaXN9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdT1jPXQ9dm9pZCAwLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXV9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYz12b2lkIDAsdCYmITAhPT10fHxwLmRpc2FibGUoKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hY30sZmlyZVdpdGg6ZnVuY3Rpb24obixpKXtyZXR1cm4gYyYmKHI/ZS5vbmNlfHxjLnB1c2goW24saV0pOmUub25jZSYmdHx8ZChuLGkpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIHAuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFufX07cmV0dXJuIHB9O3ZhciBhPVtdLnNsaWNlO2kuZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgdCxuPWkuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHI9aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5Iiksbz1pLkNhbGxiYWNrcygibWVtb3J5IiksYT0icGVuZGluZyIscz17cmVzb2x2ZTpuLHJlamVjdDpyLG5vdGlmeTpvfSxsPXtkb25lOm4uYWRkLGZhaWw6ci5hZGQscHJvZ3Jlc3M6by5hZGQsc3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gYX0saXNSZXNvbHZlZDpuLmZpcmVkLGlzUmVqZWN0ZWQ6ci5maXJlZCx0aGVuOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdS5kb25lKGUpLmZhaWwodCkucHJvZ3Jlc3MobiksdGhpc30sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIHUuZG9uZS5hcHBseSh1LGFyZ3VtZW50cykuZmFpbC5hcHBseSh1LGFyZ3VtZW50cyksdGhpc30scGlwZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuRGVmZXJyZWQoKGZ1bmN0aW9uKHIpe2kuZWFjaCh7ZG9uZTpbZSwicmVzb2x2ZSJdLGZhaWw6W3QsInJlamVjdCJdLHByb2dyZXNzOltuLCJub3RpZnkiXX0sKGZ1bmN0aW9uKGUsdCl7dmFyIG4sbz10WzBdLGE9dFsxXTtpLmlzRnVuY3Rpb24obyk/dVtlXSgoZnVuY3Rpb24oKXsobj1vLmFwcGx5KHRoaXMsYXJndW1lbnRzKSkmJmkuaXNGdW5jdGlvbihuLnByb21pc2UpP24ucHJvbWlzZSgpLnRoZW4oci5yZXNvbHZlLHIucmVqZWN0LHIubm90aWZ5KTpyW2ErIldpdGgiXSh0aGlzPT09dT9yOnRoaXMsW25dKX0pKTp1W2VdKHJbYV0pfSkpfSkpLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtpZihudWxsPT1lKWU9bDtlbHNlIGZvcih2YXIgdCBpbiBsKWVbdF09bFt0XTtyZXR1cm4gZX19LHU9bC5wcm9taXNlKHt9KTtmb3IodCBpbiBzKXVbdF09c1t0XS5maXJlLHVbdCsiV2l0aCJdPXNbdF0uZmlyZVdpdGg7cmV0dXJuIHUuZG9uZSgoZnVuY3Rpb24oKXthPSJyZXNvbHZlZCJ9KSxyLmRpc2FibGUsby5sb2NrKS5mYWlsKChmdW5jdGlvbigpe2E9InJlamVjdGVkIn0pLG4uZGlzYWJsZSxvLmxvY2spLGUmJmUuY2FsbCh1LHUpLHV9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIHQ9YS5jYWxsKGFyZ3VtZW50cywwKSxuPTAscj10Lmxlbmd0aCxvPW5ldyBBcnJheShyKSxzPXIsbD1yPD0xJiZlJiZpLmlzRnVuY3Rpb24oZS5wcm9taXNlKT9lOmkuRGVmZXJyZWQoKSx1PWwucHJvbWlzZSgpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RbZV09YXJndW1lbnRzLmxlbmd0aD4xP2EuY2FsbChhcmd1bWVudHMsMCk6biwtLXN8fGwucmVzb2x2ZVdpdGgobCx0KX19ZnVuY3Rpb24gZihlKXtyZXR1cm4gZnVuY3Rpb24odCl7b1tlXT1hcmd1bWVudHMubGVuZ3RoPjE/YS5jYWxsKGFyZ3VtZW50cywwKTp0LGwubm90aWZ5V2l0aCh1LG8pfX1pZihyPjEpe2Zvcig7bjxyO24rKyl0W25dJiZ0W25dLnByb21pc2UmJmkuaXNGdW5jdGlvbih0W25dLnByb21pc2UpP3Rbbl0ucHJvbWlzZSgpLnRoZW4oYyhuKSxsLnJlamVjdCxmKG4pKTotLXM7c3x8bC5yZXNvbHZlV2l0aChsLHQpfWVsc2UgbCE9PWUmJmwucmVzb2x2ZVdpdGgobCxyP1tlXTpbXSk7cmV0dXJuIHV9fSksaS5zdXBwb3J0PXtsZWFkaW5nV2hpdGVzcGFjZTohMCx0Ym9keTohMCxodG1sU2VyaWFsaXplOiEwLHN0eWxlOiEwLGhyZWZOb3JtYWxpemVkOiEwLG9wYWNpdHk6ITAsY3NzRmxvYXQ6ITAsY2hlY2tPbjohMCxvcHRTZWxlY3RlZDohMCxnZXRTZXRBdHRyaWJ1dGU6ITAsZW5jdHlwZTohMCxodG1sNUNsb25lOiEwLHN1Ym1pdEJ1YmJsZXM6ITAsY2hhbmdlQnViYmxlczohMCxmb2N1c2luQnViYmxlczohMSxkZWxldGVFeHBhbmRvOiEwLG5vQ2xvbmVFdmVudDohMCxpbmxpbmVCbG9ja05lZWRzTGF5b3V0OiExLHNocmlua1dyYXBCbG9ja3M6ITEscmVsaWFibGVNYXJnaW5SaWdodDohMCxwaXhlbE1hcmdpbjohMCxib3hNb2RlbDohMCxub0Nsb25lQ2hlY2tlZDohMCxvcHREaXNhYmxlZDohMCxyYWRpb1ZhbHVlOiEwLGNoZWNrQ2xvbmU6ITAsYXBwZW5kQ2hlY2tlZDohMCxhamF4OiEwLGNvcnM6ITAscmVsaWFibGVIaWRkZW5PZmZzZXRzOiEwLGRvZXNOb3RBZGRCb3JkZXI6ITAsZG9lc0FkZEJvcmRlckZvclRhYmxlQW5kQ2VsbHM6ITEsZml4ZWRQb3NpdGlvbjohMCxzdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGU6ITEsZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQ6ITB9O3ZhciBzPS9eKD86XHsuKlx9fFxbLipcXSkkLyxsPS8oW0EtWl0pL2c7ZnVuY3Rpb24gdShlLHQsbil7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpe3ZhciByPSJkYXRhLSIrdC5yZXBsYWNlKGwsIi0kMSIpLnRvTG93ZXJDYXNlKCk7aWYoInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5ewpuPSJ0cnVlIj09PW58fCJmYWxzZSIhPT1uJiYoIm51bGwiPT09bj9udWxsOmkuaXNOdW1lcmljKG4pPytuOnMudGVzdChuKT9pLnBhcnNlSlNPTihuKTpuKX1jYXRjaChlKXt9aS5kYXRhKGUsdCxuKX1lbHNlIG49dm9pZCAwfXJldHVybiBufWZ1bmN0aW9uIGMoZSl7Zm9yKHZhciB0IGluIGUpaWYoKCJkYXRhIiE9PXR8fCFpLmlzRW1wdHlPYmplY3QoZVt0XSkpJiYidG9KU09OIiE9PXQpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gZihlLHQsbil7dmFyIHI9dCsiZGVmZXIiLG89dCsicXVldWUiLGE9dCsibWFyayIscz1pLl9kYXRhKGUscik7IXN8fCJxdWV1ZSIhPT1uJiZpLl9kYXRhKGUsbyl8fCJtYXJrIiE9PW4mJmkuX2RhdGEoZSxhKXx8c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLl9kYXRhKGUsbyl8fGkuX2RhdGEoZSxhKXx8KGkucmVtb3ZlRGF0YShlLHIsITApLHMuZmlyZSgpKX0pLDApfWkuZXh0ZW5kKHtjYWNoZTp7fSx1dWlkOjAsZXhwYW5kbzoialF1ZXJ5IisoaS5mbi5qcXVlcnkrTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksbm9EYXRhOntlbWJlZDohMCxvYmplY3Q6ImNsc2lkOkQyN0NEQjZFLUFFNkQtMTFjZi05NkI4LTQ0NDU1MzU0MDAwMCIsYXBwbGV0OiEwfSxoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5ub2RlVHlwZT9pLmNhY2hlW2VbaS5leHBhbmRvXV06ZVtpLmV4cGFuZG9dKSYmIWMoZSl9LGRhdGE6ZnVuY3Rpb24oZSx0LG4scil7aWYoaS5hY2NlcHREYXRhKGUpKXt2YXIgbyxhLHMsbD1pLmV4cGFuZG8sdT0ic3RyaW5nIj09dHlwZW9mIHQsYz1lLm5vZGVUeXBlLGY9Yz9pLmNhY2hlOmUsZD1jP2VbbF06ZVtsXSYmbCxwPSJldmVudHMiPT09dDtpZihkJiZmW2RdJiYocHx8cnx8ZltkXS5kYXRhKXx8IXV8fHZvaWQgMCE9PW4pcmV0dXJuIGR8fChjP2VbbF09ZD0rK2kudXVpZDpkPWwpLGZbZF18fChmW2RdPXt9LGN8fChmW2RdLnRvSlNPTj1pLm5vb3ApKSwib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwocj9mW2RdPWkuZXh0ZW5kKGZbZF0sdCk6ZltkXS5kYXRhPWkuZXh0ZW5kKGZbZF0uZGF0YSx0KSksbz1hPWZbZF0scnx8KGEuZGF0YXx8KGEuZGF0YT17fSksYT1hLmRhdGEpLHZvaWQgMCE9PW4mJihhW2kuY2FtZWxDYXNlKHQpXT1uKSxwJiYhYVt0XT9vLmV2ZW50czoodT9udWxsPT0ocz1hW3RdKSYmKHM9YVtpLmNhbWVsQ2FzZSh0KV0pOnM9YSxzKX19LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSx0LG4pe2lmKGkuYWNjZXB0RGF0YShlKSl7dmFyIHIsbyxhLHM9aS5leHBhbmRvLGw9ZS5ub2RlVHlwZSx1PWw/aS5jYWNoZTplLGY9bD9lW3NdOnM7aWYodVtmXSl7aWYodCYmKHI9bj91W2ZdOnVbZl0uZGF0YSkpe2kuaXNBcnJheSh0KXx8KHQ9dCBpbiByfHwodD1pLmNhbWVsQ2FzZSh0KSlpbiByP1t0XTp0LnNwbGl0KCIgIikpO2ZvcihvPTAsYT10Lmxlbmd0aDtvPGE7bysrKWRlbGV0ZSByW3Rbb11dO2lmKCEobj9jOmkuaXNFbXB0eU9iamVjdCkocikpcmV0dXJufShufHwoZGVsZXRlIHVbZl0uZGF0YSxjKHVbZl0pKSkmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kb3x8IXUuc2V0SW50ZXJ2YWw/ZGVsZXRlIHVbZl06dVtmXT1udWxsLGwmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kbz9kZWxldGUgZVtzXTplLnJlbW92ZUF0dHJpYnV0ZT9lLnJlbW92ZUF0dHJpYnV0ZShzKTplW3NdPW51bGwpKX19fSxfZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGF0YShlLHQsbiwhMCl9LGFjY2VwdERhdGE6ZnVuY3Rpb24oZSl7aWYoZS5ub2RlTmFtZSl7dmFyIHQ9aS5ub0RhdGFbZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXTtpZih0KXJldHVybiEoITA9PT10fHxlLmdldEF0dHJpYnV0ZSgiY2xhc3NpZCIpIT09dCl9cmV0dXJuITB9fSksaS5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG8sYSxzLGw9dGhpc1swXSxjPTAsZj1udWxsO2lmKHZvaWQgMD09PWUpe2lmKHRoaXMubGVuZ3RoJiYoZj1pLmRhdGEobCksMT09PWwubm9kZVR5cGUmJiFpLl9kYXRhKGwsInBhcnNlZEF0dHJzIikpKXtmb3Iocz0obz1sLmF0dHJpYnV0ZXMpLmxlbmd0aDtjPHM7YysrKTA9PT0oYT1vW2NdLm5hbWUpLmluZGV4T2YoImRhdGEtIikmJihhPWkuY2FtZWxDYXNlKGEuc3Vic3RyaW5nKDUpKSx1KGwsYSxmW2FdKSk7aS5fZGF0YShsLCJwYXJzZWRBdHRycyIsITApfXJldHVybiBmfXJldHVybiJvYmplY3QiPT10eXBlb2YgZT90aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kYXRhKHRoaXMsZSl9KSk6KChuPWUuc3BsaXQoIi4iLDIpKVsxXT1uWzFdPyIuIituWzFdOiIiLHI9blsxXSsiISIsaS5hY2Nlc3ModGhpcywoZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dClyZXR1cm4gdm9pZCAwPT09KGY9dGhpcy50cmlnZ2VySGFuZGxlcigiZ2V0RGF0YSIrcixbblswXV0pKSYmbCYmKGY9aS5kYXRhKGwsZSksZj11KGwsZSxmKSksdm9pZCAwPT09ZiYmblsxXT90aGlzLmRhdGEoblswXSk6ZjtuWzFdPXQsdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBvPWkodGhpcyk7by50cmlnZ2VySGFuZGxlcigic2V0RGF0YSIrcixuKSxpLmRhdGEodGhpcyxlLHQpLG8udHJpZ2dlckhhbmRsZXIoImNoYW5nZURhdGEiK3Isbil9KSl9KSxudWxsLHQsYXJndW1lbnRzLmxlbmd0aD4xLG51bGwsITEpKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlRGF0YSh0aGlzLGUpfSkpfX0pLGkuZXh0ZW5kKHtfbWFyazpmdW5jdGlvbihlLHQpe2UmJih0PSh0fHwiZngiKSsibWFyayIsaS5fZGF0YShlLHQsKGkuX2RhdGEoZSx0KXx8MCkrMSkpfSxfdW5tYXJrOmZ1bmN0aW9uKGUsdCxuKXtpZighMCE9PWUmJihuPXQsdD1lLGU9ITEpLHQpe3ZhciByPShuPW58fCJmeCIpKyJtYXJrIixvPWU/MDooaS5fZGF0YSh0LHIpfHwxKS0xO28/aS5fZGF0YSh0LHIsbyk6KGkucmVtb3ZlRGF0YSh0LHIsITApLGYodCxuLCJtYXJrIikpfX0scXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1pLl9kYXRhKGUsdCksCm4mJighcnx8aS5pc0FycmF5KG4pP3I9aS5fZGF0YShlLHQsaS5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49aS5xdWV1ZShlLHQpLHI9bi5zaGlmdCgpLG89e307ImlucHJvZ3Jlc3MiPT09ciYmKHI9bi5zaGlmdCgpKSxyJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGkuX2RhdGEoZSx0KyIucnVuIixvKSxyLmNhbGwoZSwoZnVuY3Rpb24oKXtpLmRlcXVldWUoZSx0KX0pLG8pKSxuLmxlbmd0aHx8KGkucmVtb3ZlRGF0YShlLHQrInF1ZXVlICIrdCsiLnJ1biIsITApLGYoZSx0LCJxdWV1ZSIpKX19KSxpLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0KXt2YXIgbj0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPSJmeCIsbi0tKSxhcmd1bWVudHMubGVuZ3RoPG4/aS5xdWV1ZSh0aGlzWzBdLGUpOnZvaWQgMD09PXQ/dGhpczp0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIG49aS5xdWV1ZSh0aGlzLGUsdCk7ImZ4Ij09PWUmJiJpbnByb2dyZXNzIiE9PW5bMF0mJmkuZGVxdWV1ZSh0aGlzLGUpfSkpfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kZXF1ZXVlKHRoaXMsZSl9KSl9LGRlbGF5OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9aS5meCYmaS5meC5zcGVlZHNbZV18fGUsdD10fHwiZngiLHRoaXMucXVldWUodCwoZnVuY3Rpb24odCxuKXt2YXIgcj1zZXRUaW1lb3V0KHQsZSk7bi5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIpfX0pKX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5xdWV1ZShlfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihlLHQpeyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO3ZhciBuLHI9aS5EZWZlcnJlZCgpLG89dGhpcyxhPW8ubGVuZ3RoLHM9MSxsPWUrImRlZmVyIix1PWUrInF1ZXVlIixjPWUrIm1hcmsiO2Z1bmN0aW9uIGYoKXstLXN8fHIucmVzb2x2ZVdpdGgobyxbb10pfWZvcig7YS0tOykobj1pLmRhdGEob1thXSxsLHZvaWQgMCwhMCl8fChpLmRhdGEob1thXSx1LHZvaWQgMCwhMCl8fGkuZGF0YShvW2FdLGMsdm9pZCAwLCEwKSkmJmkuZGF0YShvW2FdLGwsaS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksITApKSYmKHMrKyxuLmFkZChmKSk7cmV0dXJuIGYoKSxyLnByb21pc2UodCl9fSk7dmFyIGQscCxoLG09L1tcblx0XHJdL2csZz0vXHMrLyx2PS9cci9nLHk9L14oPzpidXR0b258aW5wdXQpJC9pLGI9L14oPzpidXR0b258aW5wdXR8b2JqZWN0fHNlbGVjdHx0ZXh0YXJlYSkkL2kseD0vXmEoPzpyZWEpPyQvaSx3PS9eKD86YXV0b2ZvY3VzfGF1dG9wbGF5fGFzeW5jfGNoZWNrZWR8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWR8c2VsZWN0ZWQpJC9pLFQ9aS5zdXBwb3J0LmdldFNldEF0dHJpYnV0ZTtpLmZuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLGkuYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlQXR0cih0aGlzLGUpfSkpfSxwcm9wOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsaS5wcm9wLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxyZW1vdmVQcm9wOmZ1bmN0aW9uKGUpe3JldHVybiBlPWkucHJvcEZpeFtlXXx8ZSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dHJ5e3RoaXNbZV09dm9pZCAwLGRlbGV0ZSB0aGlzW2VdfWNhdGNoKGUpe319KSl9LGFkZENsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLmFkZENsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGUpZm9yKHQ9ZS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSlpZihvLmNsYXNzTmFtZXx8MSE9PXQubGVuZ3RoKXtmb3IoYT0iICIrby5jbGFzc05hbWUrIiAiLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspfmEuaW5kZXhPZigiICIrdFtzXSsiICIpfHwoYSs9dFtzXSsiICIpO28uY2xhc3NOYW1lPWkudHJpbShhKX1lbHNlIG8uY2xhc3NOYW1lPWU7cmV0dXJuIHRoaXN9LHJlbW92ZUNsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLnJlbW92ZUNsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGV8fHZvaWQgMD09PWUpZm9yKHQ9KGV8fCIiKS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSYmby5jbGFzc05hbWUpaWYoZSl7Zm9yKGE9KCIgIitvLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspYT1hLnJlcGxhY2UoIiAiK3Rbc10rIiAiLCIgIik7by5jbGFzc05hbWU9aS50cmltKGEpfWVsc2Ugby5jbGFzc05hbWU9IiI7cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIGUscj0iYm9vbGVhbiI9PXR5cGVvZiB0O3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sdGhpcy5jbGFzc05hbWUsdCksdCl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe2lmKCJzdHJpbmciPT09bilmb3IodmFyIG8sYT0wLHM9aSh0aGlzKSxsPXQsdT1lLnNwbGl0KGcpO289dVthKytdOylsPXI/bDohcy5oYXNDbGFzcyhvKSwKc1tsPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0obyk7ZWxzZSJ1bmRlZmluZWQiIT09biYmImJvb2xlYW4iIT09bnx8KHRoaXMuY2xhc3NOYW1lJiZpLl9kYXRhKHRoaXMsIl9fY2xhc3NOYW1lX18iLHRoaXMuY2xhc3NOYW1lKSx0aGlzLmNsYXNzTmFtZT10aGlzLmNsYXNzTmFtZXx8ITE9PT1lPyIiOmkuX2RhdGEodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIil9KSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0iICIrZSsiICIsbj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylpZigxPT09dGhpc1tuXS5ub2RlVHlwZSYmKCIgIit0aGlzW25dLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLmluZGV4T2YodCk+LTEpcmV0dXJuITA7cmV0dXJuITF9LHZhbDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz10aGlzWzBdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhyPWkuaXNGdW5jdGlvbihlKSx0aGlzLmVhY2goKGZ1bmN0aW9uKG4pe3ZhciBvLGE9aSh0aGlzKTsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PShvPXI/ZS5jYWxsKHRoaXMsbixhLnZhbCgpKTplKT9vPSIiOiJudW1iZXIiPT10eXBlb2Ygbz9vKz0iIjppLmlzQXJyYXkobykmJihvPWkubWFwKG8sKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSkpLCh0PWkudmFsSG9va3NbdGhpcy50eXBlXXx8aS52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSYmInNldCJpbiB0JiZ2b2lkIDAhPT10LnNldCh0aGlzLG8sInZhbHVlIil8fCh0aGlzLnZhbHVlPW8pKX0pKSk6bz8odD1pLnZhbEhvb2tzW28udHlwZV18fGkudmFsSG9va3Nbby5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gdCYmdm9pZCAwIT09KG49dC5nZXQobywidmFsdWUiKSk/bjoic3RyaW5nIj09dHlwZW9mKG49by52YWx1ZSk/bi5yZXBsYWNlKHYsIiIpOm4/PyIiOnZvaWQgMH19KSxpLmV4dGVuZCh7dmFsSG9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUuYXR0cmlidXRlcy52YWx1ZTtyZXR1cm4hdHx8dC5zcGVjaWZpZWQ/ZS52YWx1ZTplLnRleHR9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbyxhPWUuc2VsZWN0ZWRJbmRleCxzPVtdLGw9ZS5vcHRpb25zLHU9InNlbGVjdC1vbmUiPT09ZS50eXBlO2lmKGE8MClyZXR1cm4gbnVsbDtmb3Iobj11P2E6MCxyPXU/YSsxOmwubGVuZ3RoO248cjtuKyspaWYoKG89bFtuXSkuc2VsZWN0ZWQmJihpLnN1cHBvcnQub3B0RGlzYWJsZWQ/IW8uZGlzYWJsZWQ6bnVsbD09PW8uZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKSYmKCFvLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFpLm5vZGVOYW1lKG8ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9aShvKS52YWwoKSx1KXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gdSYmIXMubGVuZ3RoJiZsLmxlbmd0aD9pKGxbYV0pLnZhbCgpOnN9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWkubWFrZUFycmF5KHQpO3JldHVybiBpKGUpLmZpbmQoIm9wdGlvbiIpLmVhY2goKGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZD1pLmluQXJyYXkoaSh0aGlzKS52YWwoKSxuKT49MH0pKSxuLmxlbmd0aHx8KGUuc2VsZWN0ZWRJbmRleD0tMSksbn19fSxhdHRyRm46e3ZhbDohMCxjc3M6ITAsaHRtbDohMCx0ZXh0OiEwLGRhdGE6ITAsd2lkdGg6ITAsaGVpZ2h0OiEwLG9mZnNldDohMH0sYXR0cjpmdW5jdGlvbihlLHQsbixyKXt2YXIgbyxhLHMsbD1lLm5vZGVUeXBlO2lmKGUmJjMhPT1sJiY4IT09bCYmMiE9PWwpcmV0dXJuIHImJnQgaW4gaS5hdHRyRm4/aShlKVt0XShuKTp2b2lkIDA9PT1lLmdldEF0dHJpYnV0ZT9pLnByb3AoZSx0LG4pOigocz0xIT09bHx8IWkuaXNYTUxEb2MoZSkpJiYodD10LnRvTG93ZXJDYXNlKCksYT1pLmF0dHJIb29rc1t0XXx8KHcudGVzdCh0KT9wOmQpKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgaS5yZW1vdmVBdHRyKGUsdCk6YSYmInNldCJpbiBhJiZzJiZ2b2lkIDAhPT0obz1hLnNldChlLG4sdCkpP286KGUuc2V0QXR0cmlidXRlKHQsIiIrbiksbik6YSYmImdldCJpbiBhJiZzJiZudWxsIT09KG89YS5nZXQoZSx0KSk/bzpudWxsPT09KG89ZS5nZXRBdHRyaWJ1dGUodCkpP3ZvaWQgMDpvKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHMsbD0wO2lmKHQmJjE9PT1lLm5vZGVUeXBlKWZvcihhPShyPXQudG9Mb3dlckNhc2UoKS5zcGxpdChnKSkubGVuZ3RoO2w8YTtsKyspKG89cltsXSkmJihuPWkucHJvcEZpeFtvXXx8bywocz13LnRlc3QobykpfHxpLmF0dHIoZSxvLCIiKSxlLnJlbW92ZUF0dHJpYnV0ZShUP286bikscyYmbiBpbiBlJiYoZVtuXT0hMSkpfSxhdHRySG9va3M6e3R5cGU6e3NldDpmdW5jdGlvbihlLHQpe2lmKHkudGVzdChlLm5vZGVOYW1lKSYmZS5wYXJlbnROb2RlKWkuZXJyb3IoInR5cGUgcHJvcGVydHkgY2FuJ3QgYmUgY2hhbmdlZCIpO2Vsc2UgaWYoIWkuc3VwcG9ydC5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmaS5ub2RlTmFtZShlLCJpbnB1dCIpKXt2YXIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fSx2YWx1ZTp7Z2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIik/ZC5nZXQoZSx0KTp0IGluIGU/ZS52YWx1ZTpudWxsfSxzZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIikpcmV0dXJuIGQuc2V0KGUsdCxuKTtlLnZhbHVlPXR9fX0scHJvcEZpeDp7dGFiaW5kZXg6InRhYkluZGV4IixyZWFkb25seToicmVhZE9ubHkiLGZvcjoiaHRtbEZvciIsY2xhc3M6ImNsYXNzTmFtZSIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY2VsbHBhZGRpbmc6ImNlbGxQYWRkaW5nIixyb3dzcGFuOiJyb3dTcGFuIixjb2xzcGFuOiJjb2xTcGFuIix1c2VtYXA6InVzZU1hcCIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixjb250ZW50ZWRpdGFibGU6ImNvbnRlbnRFZGl0YWJsZSJ9LHByb3A6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYT1lLm5vZGVUeXBlCjtpZihlJiYzIT09YSYmOCE9PWEmJjIhPT1hKXJldHVybigxIT09YXx8IWkuaXNYTUxEb2MoZSkpJiYodD1pLnByb3BGaXhbdF18fHQsbz1pLnByb3BIb29rc1t0XSksdm9pZCAwIT09bj9vJiYic2V0ImluIG8mJnZvaWQgMCE9PShyPW8uc2V0KGUsbix0KSk/cjplW3RdPW46byYmImdldCJpbiBvJiZudWxsIT09KHI9by5nZXQoZSx0KSk/cjplW3RdfSxwcm9wSG9va3M6e3RhYkluZGV4OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGVOb2RlKCJ0YWJpbmRleCIpO3JldHVybiB0JiZ0LnNwZWNpZmllZD9wYXJzZUludCh0LnZhbHVlLDEwKTpiLnRlc3QoZS5ub2RlTmFtZSl8fHgudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6dm9pZCAwfX19fSksaS5hdHRySG9va3MudGFiaW5kZXg9aS5wcm9wSG9va3MudGFiSW5kZXgscD17Z2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1pLnByb3AoZSx0KTtyZXR1cm4hMD09PXJ8fCJib29sZWFuIiE9dHlwZW9mIHImJihuPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJiExIT09bi5ub2RlVmFsdWU/dC50b0xvd2VyQ2FzZSgpOnZvaWQgMH0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtyZXR1cm4hMT09PXQ/aS5yZW1vdmVBdHRyKGUsbik6KChyPWkucHJvcEZpeFtuXXx8bilpbiBlJiYoZVtyXT0hMCksZS5zZXRBdHRyaWJ1dGUobixuLnRvTG93ZXJDYXNlKCkpKSxufX0sVHx8KGg9e25hbWU6ITAsaWQ6ITAsY29vcmRzOiEwfSxkPWkudmFsSG9va3MuYnV0dG9uPXtnZXQ6ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4obj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiYoaFt0XT8iIiE9PW4ubm9kZVZhbHVlOm4uc3BlY2lmaWVkKT9uLm5vZGVWYWx1ZTp2b2lkIDB9LHNldDpmdW5jdGlvbihlLG4scil7dmFyIGk9ZS5nZXRBdHRyaWJ1dGVOb2RlKHIpO3JldHVybiBpfHwoaT10LmNyZWF0ZUF0dHJpYnV0ZShyKSxlLnNldEF0dHJpYnV0ZU5vZGUoaSkpLGkubm9kZVZhbHVlPW4rIiJ9fSxpLmF0dHJIb29rcy50YWJpbmRleC5zZXQ9ZC5zZXQsaS5lYWNoKFsid2lkdGgiLCJoZWlnaHQiXSwoZnVuY3Rpb24oZSx0KXtpLmF0dHJIb29rc1t0XT1pLmV4dGVuZChpLmF0dHJIb29rc1t0XSx7c2V0OmZ1bmN0aW9uKGUsbil7aWYoIiI9PT1uKXJldHVybiBlLnNldEF0dHJpYnV0ZSh0LCJhdXRvIiksbn19KX0pKSxpLmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGU9e2dldDpkLmdldCxzZXQ6ZnVuY3Rpb24oZSx0LG4peyIiPT09dCYmKHQ9ImZhbHNlIiksZC5zZXQoZSx0LG4pfX0pLGkuc3VwcG9ydC5ocmVmTm9ybWFsaXplZHx8aS5lYWNoKFsiaHJlZiIsInNyYyIsIndpZHRoIiwiaGVpZ2h0Il0sKGZ1bmN0aW9uKGUsdCl7aS5hdHRySG9va3NbdF09aS5leHRlbmQoaS5hdHRySG9va3NbdF0se2dldDpmdW5jdGlvbihlKXt2YXIgbj1lLmdldEF0dHJpYnV0ZSh0LDIpO3JldHVybiBudWxsPT09bj92b2lkIDA6bn19KX0pKSxpLnN1cHBvcnQuc3R5bGV8fChpLmF0dHJIb29rcy5zdHlsZT17Z2V0OmZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlLmNzc1RleHQudG9Mb3dlckNhc2UoKXx8dm9pZCAwfSxzZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5zdHlsZS5jc3NUZXh0PSIiK3R9fSksaS5zdXBwb3J0Lm9wdFNlbGVjdGVkfHwoaS5wcm9wSG9va3Muc2VsZWN0ZWQ9aS5leHRlbmQoaS5wcm9wSG9va3Muc2VsZWN0ZWQse2dldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7cmV0dXJuIHQmJih0LnNlbGVjdGVkSW5kZXgsdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCksbnVsbH19KSksaS5zdXBwb3J0LmVuY3R5cGV8fChpLnByb3BGaXguZW5jdHlwZT0iZW5jb2RpbmciKSxpLnN1cHBvcnQuY2hlY2tPbnx8aS5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLChmdW5jdGlvbigpe2kudmFsSG9va3NbdGhpc109e2dldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpPyJvbiI6ZS52YWx1ZX19fSkpLGkuZWFjaChbInJhZGlvIiwiY2hlY2tib3giXSwoZnVuY3Rpb24oKXtpLnZhbEhvb2tzW3RoaXNdPWkuZXh0ZW5kKGkudmFsSG9va3NbdGhpc10se3NldDpmdW5jdGlvbihlLHQpe2lmKGkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPWkuaW5BcnJheShpKGUpLnZhbCgpLHQpPj0wfX0pfSkpO3ZhciBOPS9eKD86dGV4dGFyZWF8aW5wdXR8c2VsZWN0KSQvaSxDPS9eKFteXC5dKik/KD86XC4oLispKT8kLyxTPS8oPzpefFxzKWhvdmVyKFwuXFMrKT9cYi8saz0vXmtleS8sRT0vXig/Om1vdXNlfGNvbnRleHRtZW51KXxjbGljay8sQT0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8sRD0vXihcdyopKD86IyhbXHdcLV0rKSk/KD86XC4oW1x3XC1dKykpPyQvLEw9ZnVuY3Rpb24oZSl7dmFyIHQ9RC5leGVjKGUpO3JldHVybiB0JiYodFsxXT0odFsxXXx8IiIpLnRvTG93ZXJDYXNlKCksdFszXT10WzNdJiZuZXcgUmVnRXhwKCIoPzpefFxccykiK3RbM10rIig/Olxcc3wkKSIpKSx0fSxGPWZ1bmN0aW9uKGUpe3JldHVybiBpLmV2ZW50LnNwZWNpYWwuaG92ZXI/ZTplLnJlcGxhY2UoUywibW91c2VlbnRlciQxIG1vdXNlbGVhdmUkMSIpfTtmdW5jdGlvbiBqKCl7cmV0dXJuITF9ZnVuY3Rpb24gXygpe3JldHVybiEwfWkuZXZlbnQ9e2FkZDpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGc7aWYoMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZ0JiZuJiYoYT1pLl9kYXRhKGUpKSl7Zm9yKG4uaGFuZGxlciYmKG49KGg9bikuaGFuZGxlcixvPWguc2VsZWN0b3IpLG4uZ3VpZHx8KG4uZ3VpZD1pLmd1aWQrKyksKGw9YS5ldmVudHMpfHwoYS5ldmVudHM9bD17fSksKHM9YS5oYW5kbGUpfHwoYS5oYW5kbGU9cz1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09aXx8ZSYmaS5ldmVudC50cmlnZ2VyZWQ9PT1lLnR5cGU/dm9pZCAwOmkuZXZlbnQuZGlzcGF0Y2guYXBwbHkocy5lbGVtLGFyZ3VtZW50cyl9LHMuZWxlbT1lKSx0PWkudHJpbShGKHQpKS5zcGxpdCgiICIpLHU9MDt1PHQubGVuZ3RoO3UrKylmPShjPUMuZXhlYyh0W3VdKXx8W10pWzFdLApkPShjWzJdfHwiIikuc3BsaXQoIi4iKS5zb3J0KCksZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LGY9KG8/Zy5kZWxlZ2F0ZVR5cGU6Zy5iaW5kVHlwZSl8fGYsZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LHA9aS5leHRlbmQoe3R5cGU6ZixvcmlnVHlwZTpjWzFdLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6byxxdWljazpvJiZMKG8pLG5hbWVzcGFjZTpkLmpvaW4oIi4iKX0saCksKG09bFtmXSl8fCgobT1sW2ZdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZy5zZXR1cCYmITEhPT1nLnNldHVwLmNhbGwoZSxyLGQscyl8fChlLmFkZEV2ZW50TGlzdGVuZXI/ZS5hZGRFdmVudExpc3RlbmVyKGYscywhMSk6ZS5hdHRhY2hFdmVudCYmZS5hdHRhY2hFdmVudCgib24iK2YscykpKSxnLmFkZCYmKGcuYWRkLmNhbGwoZSxwKSxwLmhhbmRsZXIuZ3VpZHx8KHAuaGFuZGxlci5ndWlkPW4uZ3VpZCkpLG8/bS5zcGxpY2UobS5kZWxlZ2F0ZUNvdW50KyssMCxwKTptLnB1c2gocCksaS5ldmVudC5nbG9iYWxbZl09ITA7ZT1udWxsfX0sZ2xvYmFsOnt9LHJlbW92ZTpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGcsdix5PWkuaGFzRGF0YShlKSYmaS5fZGF0YShlKTtpZih5JiYocD15LmV2ZW50cykpe2Zvcih0PWkudHJpbShGKHR8fCIiKSkuc3BsaXQoIiAiKSxhPTA7YTx0Lmxlbmd0aDthKyspaWYobD11PShzPUMuZXhlYyh0W2FdKXx8W10pWzFdLGM9c1syXSxsKXtmb3IoaD1pLmV2ZW50LnNwZWNpYWxbbF18fHt9LGY9KGc9cFtsPShyP2guZGVsZWdhdGVUeXBlOmguYmluZFR5cGUpfHxsXXx8W10pLmxlbmd0aCxjPWM/bmV3IFJlZ0V4cCgiKF58XFwuKSIrYy5zcGxpdCgiLiIpLnNvcnQoKS5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGQ9MDtkPGcubGVuZ3RoO2QrKyl2PWdbZF0sIW8mJnUhPT12Lm9yaWdUeXBlfHxuJiZuLmd1aWQhPT12Lmd1aWR8fGMmJiFjLnRlc3Qodi5uYW1lc3BhY2UpfHxyJiZyIT09di5zZWxlY3RvciYmKCIqKiIhPT1yfHwhdi5zZWxlY3Rvcil8fChnLnNwbGljZShkLS0sMSksdi5zZWxlY3RvciYmZy5kZWxlZ2F0ZUNvdW50LS0saC5yZW1vdmUmJmgucmVtb3ZlLmNhbGwoZSx2KSk7MD09PWcubGVuZ3RoJiZmIT09Zy5sZW5ndGgmJihoLnRlYXJkb3duJiYhMSE9PWgudGVhcmRvd24uY2FsbChlLGMpfHxpLnJlbW92ZUV2ZW50KGUsbCx5LmhhbmRsZSksZGVsZXRlIHBbbF0pfWVsc2UgZm9yKGwgaW4gcClpLmV2ZW50LnJlbW92ZShlLGwrdFthXSxuLHIsITApO2kuaXNFbXB0eU9iamVjdChwKSYmKChtPXkuaGFuZGxlKSYmKG0uZWxlbT1udWxsKSxpLnJlbW92ZURhdGEoZSxbImV2ZW50cyIsImhhbmRsZSJdLCEwKSl9fSxjdXN0b21FdmVudDp7Z2V0RGF0YTohMCxzZXREYXRhOiEwLGNoYW5nZURhdGE6ITB9LHRyaWdnZXI6ZnVuY3Rpb24oZSx0LG4scil7aWYoIW58fDMhPT1uLm5vZGVUeXBlJiY4IT09bi5ub2RlVHlwZSl7dmFyIG8sYSxzLGwsdSxjLGYsZCxwLGgsbT1lLnR5cGV8fGUsZz1bXTtpZighQS50ZXN0KG0raS5ldmVudC50cmlnZ2VyZWQpJiYobS5pbmRleE9mKCIhIik+PTAmJihtPW0uc2xpY2UoMCwtMSksYT0hMCksbS5pbmRleE9mKCIuIik+PTAmJihnPW0uc3BsaXQoIi4iKSxtPWcuc2hpZnQoKSxnLnNvcnQoKSksbiYmIWkuZXZlbnQuY3VzdG9tRXZlbnRbbV18fGkuZXZlbnQuZ2xvYmFsW21dKSlpZigoZT0ib2JqZWN0Ij09dHlwZW9mIGU/ZVtpLmV4cGFuZG9dP2U6bmV3IGkuRXZlbnQobSxlKTpuZXcgaS5FdmVudChtKSkudHlwZT1tLGUuaXNUcmlnZ2VyPSEwLGUuZXhjbHVzaXZlPWEsZS5uYW1lc3BhY2U9Zy5qb2luKCIuIiksZS5uYW1lc3BhY2VfcmU9ZS5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrZy5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGM9bS5pbmRleE9mKCI6Iik8MD8ib24iK206IiIsbil7aWYoZS5yZXN1bHQ9dm9pZCAwLGUudGFyZ2V0fHwoZS50YXJnZXQ9biksKHQ9bnVsbCE9dD9pLm1ha2VBcnJheSh0KTpbXSkudW5zaGlmdChlKSwhKGY9aS5ldmVudC5zcGVjaWFsW21dfHx7fSkudHJpZ2dlcnx8ITEhPT1mLnRyaWdnZXIuYXBwbHkobix0KSl7aWYocD1bW24sZi5iaW5kVHlwZXx8bV1dLCFyJiYhZi5ub0J1YmJsZSYmIWkuaXNXaW5kb3cobikpe2ZvcihoPWYuZGVsZWdhdGVUeXBlfHxtLGw9QS50ZXN0KGgrbSk/bjpuLnBhcmVudE5vZGUsdT1udWxsO2w7bD1sLnBhcmVudE5vZGUpcC5wdXNoKFtsLGhdKSx1PWw7dSYmdT09PW4ub3duZXJEb2N1bWVudCYmcC5wdXNoKFt1LmRlZmF1bHRWaWV3fHx1LnBhcmVudFdpbmRvd3x8d2luZG93LGhdKX1mb3Iocz0wO3M8cC5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7cysrKWw9cFtzXVswXSxlLnR5cGU9cFtzXVsxXSwoZD0oaS5fZGF0YShsLCJldmVudHMiKXx8e30pW2UudHlwZV0mJmkuX2RhdGEobCwiaGFuZGxlIikpJiZkLmFwcGx5KGwsdCksKGQ9YyYmbFtjXSkmJmkuYWNjZXB0RGF0YShsKSYmITE9PT1kLmFwcGx5KGwsdCkmJmUucHJldmVudERlZmF1bHQoKTtyZXR1cm4gZS50eXBlPW0scnx8ZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8Zi5fZGVmYXVsdCYmITEhPT1mLl9kZWZhdWx0LmFwcGx5KG4ub3duZXJEb2N1bWVudCx0KXx8ImNsaWNrIj09PW0mJmkubm9kZU5hbWUobiwiYSIpfHwhaS5hY2NlcHREYXRhKG4pfHxjJiZuW21dJiYoImZvY3VzIiE9PW0mJiJibHVyIiE9PW18fDAhPT1lLnRhcmdldC5vZmZzZXRXaWR0aCkmJiFpLmlzV2luZG93KG4pJiYoKHU9bltjXSkmJihuW2NdPW51bGwpLGkuZXZlbnQudHJpZ2dlcmVkPW0sblttXSgpLGkuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCx1JiYobltjXT11KSksZS5yZXN1bHR9fWVsc2UgZm9yKHMgaW4gbz1pLmNhY2hlKW9bc10uZXZlbnRzJiZvW3NdLmV2ZW50c1ttXSYmaS5ldmVudC50cmlnZ2VyKGUsdCxvW3NdLmhhbmRsZS5lbGVtLCEwKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGUpe2U9aS5ldmVudC5maXgoZXx8d2luZG93LmV2ZW50KQo7dmFyIHQsbixyLG8sYSxzLGwsdSxjLGYsZD0oaS5fZGF0YSh0aGlzLCJldmVudHMiKXx8e30pW2UudHlwZV18fFtdLHA9ZC5kZWxlZ2F0ZUNvdW50LGg9W10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCksbT0hZS5leGNsdXNpdmUmJiFlLm5hbWVzcGFjZSxnPWkuZXZlbnQuc3BlY2lhbFtlLnR5cGVdfHx7fSx2PVtdO2lmKGhbMF09ZSxlLmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWcucHJlRGlzcGF0Y2h8fCExIT09Zy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsZSkpe2lmKHAmJighZS5idXR0b258fCJjbGljayIhPT1lLnR5cGUpKWZvcigobz1pKHRoaXMpKS5jb250ZXh0PXRoaXMub3duZXJEb2N1bWVudHx8dGhpcyxyPWUudGFyZ2V0O3IhPXRoaXM7cj1yLnBhcmVudE5vZGV8fHRoaXMpaWYoITAhPT1yLmRpc2FibGVkKXtmb3Iocz17fSx1PVtdLG9bMF09cix0PTA7dDxwO3QrKyl2b2lkIDA9PT1zW2Y9KGM9ZFt0XSkuc2VsZWN0b3JdJiYoc1tmXT1jLnF1aWNrPyh5PXIsYj1jLnF1aWNrLHg9dm9pZCAwLHg9eS5hdHRyaWJ1dGVzfHx7fSwoIWJbMV18fHkubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWJbMV0pJiYoIWJbMl18fCh4LmlkfHx7fSkudmFsdWU9PT1iWzJdKSYmKCFiWzNdfHxiWzNdLnRlc3QoKHguY2xhc3N8fHt9KS52YWx1ZSkpKTpvLmlzKGYpKSxzW2ZdJiZ1LnB1c2goYyk7dS5sZW5ndGgmJnYucHVzaCh7ZWxlbTpyLG1hdGNoZXM6dX0pfXZhciB5LGIseDtmb3IoZC5sZW5ndGg+cCYmdi5wdXNoKHtlbGVtOnRoaXMsbWF0Y2hlczpkLnNsaWNlKHApfSksdD0wO3Q8di5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7dCsrKWZvcihsPXZbdF0sZS5jdXJyZW50VGFyZ2V0PWwuZWxlbSxuPTA7bjxsLm1hdGNoZXMubGVuZ3RoJiYhZS5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpO24rKyljPWwubWF0Y2hlc1tuXSwobXx8IWUubmFtZXNwYWNlJiYhYy5uYW1lc3BhY2V8fGUubmFtZXNwYWNlX3JlJiZlLm5hbWVzcGFjZV9yZS50ZXN0KGMubmFtZXNwYWNlKSkmJihlLmRhdGE9Yy5kYXRhLGUuaGFuZGxlT2JqPWMsdm9pZCAwIT09KGE9KChpLmV2ZW50LnNwZWNpYWxbYy5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGMuaGFuZGxlcikuYXBwbHkobC5lbGVtLGgpKSYmKGUucmVzdWx0PWEsITE9PT1hJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpKSk7cmV0dXJuIGcucG9zdERpc3BhdGNoJiZnLnBvc3REaXNwYXRjaC5jYWxsKHRoaXMsZSksZS5yZXN1bHR9fSxwcm9wczoiYXR0ckNoYW5nZSBhdHRyTmFtZSByZWxhdGVkTm9kZSBzcmNFbGVtZW50IGFsdEtleSBidWJibGVzIGNhbmNlbGFibGUgY3RybEtleSBjdXJyZW50VGFyZ2V0IGV2ZW50UGhhc2UgbWV0YUtleSByZWxhdGVkVGFyZ2V0IHNoaWZ0S2V5IHRhcmdldCB0aW1lU3RhbXAgdmlldyB3aGljaCIuc3BsaXQoIiAiKSxmaXhIb29rczp7fSxrZXlIb29rczp7cHJvcHM6ImNoYXIgY2hhckNvZGUga2V5IGtleUNvZGUiLnNwbGl0KCIgIiksZmlsdGVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PWUud2hpY2gmJihlLndoaWNoPW51bGwhPXQuY2hhckNvZGU/dC5jaGFyQ29kZTp0LmtleUNvZGUpLGV9fSxtb3VzZUhvb2tzOntwcm9wczoiYnV0dG9uIGJ1dHRvbnMgY2xpZW50WCBjbGllbnRZIGZyb21FbGVtZW50IG9mZnNldFggb2Zmc2V0WSBwYWdlWCBwYWdlWSBzY3JlZW5YIHNjcmVlblkgdG9FbGVtZW50Ii5zcGxpdCgiICIpLGZpbHRlcjpmdW5jdGlvbihlLG4pe3ZhciByLGksbyxhPW4uYnV0dG9uLHM9bi5mcm9tRWxlbWVudDtyZXR1cm4gbnVsbD09ZS5wYWdlWCYmbnVsbCE9bi5jbGllbnRYJiYoaT0ocj1lLnRhcmdldC5vd25lckRvY3VtZW50fHx0KS5kb2N1bWVudEVsZW1lbnQsbz1yLmJvZHksZS5wYWdlWD1uLmNsaWVudFgrKGkmJmkuc2Nyb2xsTGVmdHx8byYmby5zY3JvbGxMZWZ0fHwwKS0oaSYmaS5jbGllbnRMZWZ0fHxvJiZvLmNsaWVudExlZnR8fDApLGUucGFnZVk9bi5jbGllbnRZKyhpJiZpLnNjcm9sbFRvcHx8byYmby5zY3JvbGxUb3B8fDApLShpJiZpLmNsaWVudFRvcHx8byYmby5jbGllbnRUb3B8fDApKSwhZS5yZWxhdGVkVGFyZ2V0JiZzJiYoZS5yZWxhdGVkVGFyZ2V0PXM9PT1lLnRhcmdldD9uLnRvRWxlbWVudDpzKSxlLndoaWNofHx2b2lkIDA9PT1hfHwoZS53aGljaD0xJmE/MToyJmE/Mzo0JmE/MjowKSxlfX0sZml4OmZ1bmN0aW9uKGUpe2lmKGVbaS5leHBhbmRvXSlyZXR1cm4gZTt2YXIgbixyLG89ZSxhPWkuZXZlbnQuZml4SG9va3NbZS50eXBlXXx8e30scz1hLnByb3BzP3RoaXMucHJvcHMuY29uY2F0KGEucHJvcHMpOnRoaXMucHJvcHM7Zm9yKGU9aS5FdmVudChvKSxuPXMubGVuZ3RoO247KWVbcj1zWy0tbl1dPW9bcl07cmV0dXJuIGUudGFyZ2V0fHwoZS50YXJnZXQ9by5zcmNFbGVtZW50fHx0KSwzPT09ZS50YXJnZXQubm9kZVR5cGUmJihlLnRhcmdldD1lLnRhcmdldC5wYXJlbnROb2RlKSx2b2lkIDA9PT1lLm1ldGFLZXkmJihlLm1ldGFLZXk9ZS5jdHJsS2V5KSxhLmZpbHRlcj9hLmZpbHRlcihlLG8pOmV9LHNwZWNpYWw6e3JlYWR5OntzZXR1cDppLmJpbmRSZWFkeX0sbG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOntkZWxlZ2F0ZVR5cGU6ImZvY3VzaW4ifSxibHVyOntkZWxlZ2F0ZVR5cGU6ImZvY3Vzb3V0In0sYmVmb3JldW5sb2FkOntzZXR1cDpmdW5jdGlvbihlLHQsbil7aS5pc1dpbmRvdyh0aGlzKSYmKHRoaXMub25iZWZvcmV1bmxvYWQ9bil9LHRlYXJkb3duOmZ1bmN0aW9uKGUsdCl7dGhpcy5vbmJlZm9yZXVubG9hZD09PXQmJih0aGlzLm9uYmVmb3JldW5sb2FkPW51bGwpfX19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBvPWkuZXh0ZW5kKG5ldyBpLkV2ZW50LG4se3R5cGU6ZSxpc1NpbXVsYXRlZDohMCxvcmlnaW5hbEV2ZW50Ont9fSk7cj9pLmV2ZW50LnRyaWdnZXIobyxudWxsLHQpOmkuZXZlbnQuZGlzcGF0Y2guY2FsbCh0LG8pLG8uaXNEZWZhdWx0UHJldmVudGVkKCkmJm4ucHJldmVudERlZmF1bHQoKX19LGkuZXZlbnQuaGFuZGxlPWkuZXZlbnQuZGlzcGF0Y2gsCmkucmVtb3ZlRXZlbnQ9dC5yZW1vdmVFdmVudExpc3RlbmVyP2Z1bmN0aW9uKGUsdCxuKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4sITEpfTpmdW5jdGlvbihlLHQsbil7ZS5kZXRhY2hFdmVudCYmZS5kZXRhY2hFdmVudCgib24iK3Qsbil9LGkuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBpLkV2ZW50KSlyZXR1cm4gbmV3IGkuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHwhMT09PWUucmV0dXJuVmFsdWV8fGUuZ2V0UHJldmVudERlZmF1bHQmJmUuZ2V0UHJldmVudERlZmF1bHQoKT9fOmopOnRoaXMudHlwZT1lLHQmJmkuZXh0ZW5kKHRoaXMsdCksdGhpcy50aW1lU3RhbXA9ZSYmZS50aW1lU3RhbXB8fGkubm93KCksdGhpc1tpLmV4cGFuZG9dPSEwfSxpLkV2ZW50LnByb3RvdHlwZT17cHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1fO3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDtlJiYoZS5wcmV2ZW50RGVmYXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMSl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNQcm9wYWdhdGlvblN0b3BwZWQ9Xzt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uJiZlLnN0b3BQcm9wYWdhdGlvbigpLGUuY2FuY2VsQnViYmxlPSEwKX0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD1fLHRoaXMuc3RvcFByb3BhZ2F0aW9uKCl9LGlzRGVmYXVsdFByZXZlbnRlZDpqLGlzUHJvcGFnYXRpb25TdG9wcGVkOmosaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ6an0saS5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V0In0sKGZ1bmN0aW9uKGUsdCl7aS5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6dCxiaW5kVHlwZTp0LGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgbixyPWUucmVsYXRlZFRhcmdldCxvPWUuaGFuZGxlT2JqO28uc2VsZWN0b3I7cmV0dXJuIHImJihyPT09dGhpc3x8aS5jb250YWlucyh0aGlzLHIpKXx8KGUudHlwZT1vLm9yaWdUeXBlLG49by5oYW5kbGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxlLnR5cGU9dCksbn19fSkpLGkuc3VwcG9ydC5zdWJtaXRCdWJibGVzfHwoaS5ldmVudC5zcGVjaWFsLnN1Ym1pdD17c2V0dXA6ZnVuY3Rpb24oKXtpZihpLm5vZGVOYW1lKHRoaXMsImZvcm0iKSlyZXR1cm4hMTtpLmV2ZW50LmFkZCh0aGlzLCJjbGljay5fc3VibWl0IGtleXByZXNzLl9zdWJtaXQiLChmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldCxuPWkubm9kZU5hbWUodCwiaW5wdXQiKXx8aS5ub2RlTmFtZSh0LCJidXR0b24iKT90LmZvcm06dm9pZCAwO24mJiFuLl9zdWJtaXRfYXR0YWNoZWQmJihpLmV2ZW50LmFkZChuLCJzdWJtaXQuX3N1Ym1pdCIsKGZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGU9ITB9KSksbi5fc3VibWl0X2F0dGFjaGVkPSEwKX0pKX0scG9zdERpc3BhdGNoOmZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGUmJihkZWxldGUgZS5fc3VibWl0X2J1YmJsZSx0aGlzLnBhcmVudE5vZGUmJiFlLmlzVHJpZ2dlciYmaS5ldmVudC5zaW11bGF0ZSgic3VibWl0Iix0aGlzLnBhcmVudE5vZGUsZSwhMCkpfSx0ZWFyZG93bjpmdW5jdGlvbigpe2lmKGkubm9kZU5hbWUodGhpcywiZm9ybSIpKXJldHVybiExO2kuZXZlbnQucmVtb3ZlKHRoaXMsIi5fc3VibWl0Iil9fSksaS5zdXBwb3J0LmNoYW5nZUJ1YmJsZXN8fChpLmV2ZW50LnNwZWNpYWwuY2hhbmdlPXtzZXR1cDpmdW5jdGlvbigpe2lmKE4udGVzdCh0aGlzLm5vZGVOYW1lKSlyZXR1cm4iY2hlY2tib3giIT09dGhpcy50eXBlJiYicmFkaW8iIT09dGhpcy50eXBlfHwoaS5ldmVudC5hZGQodGhpcywicHJvcGVydHljaGFuZ2UuX2NoYW5nZSIsKGZ1bmN0aW9uKGUpeyJjaGVja2VkIj09PWUub3JpZ2luYWxFdmVudC5wcm9wZXJ0eU5hbWUmJih0aGlzLl9qdXN0X2NoYW5nZWQ9ITApfSkpLGkuZXZlbnQuYWRkKHRoaXMsImNsaWNrLl9jaGFuZ2UiLChmdW5jdGlvbihlKXt0aGlzLl9qdXN0X2NoYW5nZWQmJiFlLmlzVHJpZ2dlciYmKHRoaXMuX2p1c3RfY2hhbmdlZD0hMSxpLmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLHRoaXMsZSwhMCkpfSkpKSwhMTtpLmV2ZW50LmFkZCh0aGlzLCJiZWZvcmVhY3RpdmF0ZS5fY2hhbmdlIiwoZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7Ti50ZXN0KHQubm9kZU5hbWUpJiYhdC5fY2hhbmdlX2F0dGFjaGVkJiYoaS5ldmVudC5hZGQodCwiY2hhbmdlLl9jaGFuZ2UiLChmdW5jdGlvbihlKXshdGhpcy5wYXJlbnROb2RlfHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8aS5ldmVudC5zaW11bGF0ZSgiY2hhbmdlIix0aGlzLnBhcmVudE5vZGUsZSwhMCl9KSksdC5fY2hhbmdlX2F0dGFjaGVkPSEwKX0pKX0saGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O2lmKHRoaXMhPT10fHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8InJhZGlvIiE9PXQudHlwZSYmImNoZWNrYm94IiE9PXQudHlwZSlyZXR1cm4gZS5oYW5kbGVPYmouaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7cmV0dXJuIGkuZXZlbnQucmVtb3ZlKHRoaXMsIi5fY2hhbmdlIiksTi50ZXN0KHRoaXMubm9kZU5hbWUpfX0pLGkuc3VwcG9ydC5mb2N1c2luQnViYmxlc3x8aS5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSwoZnVuY3Rpb24oZSxuKXt2YXIgcj0wLG89ZnVuY3Rpb24oZSl7aS5ldmVudC5zaW11bGF0ZShuLGUudGFyZ2V0LGkuZXZlbnQuZml4KGUpLCEwKX07aS5ldmVudC5zcGVjaWFsW25dPXtzZXR1cDpmdW5jdGlvbigpezA9PXIrKyYmdC5hZGRFdmVudExpc3RlbmVyKGUsbywhMCl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7CjA9PS0tciYmdC5yZW1vdmVFdmVudExpc3RlbmVyKGUsbywhMCl9fX0pKSxpLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oZSx0LG4scixvKXt2YXIgYSxzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPW58fHQsdD12b2lkIDApLGUpdGhpcy5vbihzLHQsbixlW3NdLG8pO3JldHVybiB0aGlzfWlmKG51bGw9PW4mJm51bGw9PXI/KHI9dCxuPXQ9dm9pZCAwKTpudWxsPT1yJiYoInN0cmluZyI9PXR5cGVvZiB0PyhyPW4sbj12b2lkIDApOihyPW4sbj10LHQ9dm9pZCAwKSksITE9PT1yKXI9ajtlbHNlIGlmKCFyKXJldHVybiB0aGlzO3JldHVybiAxPT09byYmKGE9cixyPWZ1bmN0aW9uKGUpe3JldHVybiBpKCkub2ZmKGUpLGEuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxyLmd1aWQ9YS5ndWlkfHwoYS5ndWlkPWkuZ3VpZCsrKSksdGhpcy5lYWNoKChmdW5jdGlvbigpe2kuZXZlbnQuYWRkKHRoaXMsZSxyLG4sdCl9KSl9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gdGhpcy5vbihlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe2lmKGUmJmUucHJldmVudERlZmF1bHQmJmUuaGFuZGxlT2JqKXt2YXIgcj1lLmhhbmRsZU9iajtyZXR1cm4gaShlLmRlbGVnYXRlVGFyZ2V0KS5vZmYoci5uYW1lc3BhY2U/ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGhpc31pZigib2JqZWN0Ij09dHlwZW9mIGUpe2Zvcih2YXIgbyBpbiBlKXRoaXMub2ZmKG8sdCxlW29dKTtyZXR1cm4gdGhpc31yZXR1cm4hMSE9PXQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwobj10LHQ9dm9pZCAwKSwhMT09PW4mJihuPWopLHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtpLmV2ZW50LnJlbW92ZSh0aGlzLGUsbix0KX0pKX0sYmluZDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9mZihlLG51bGwsdCl9LGxpdmU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpKHRoaXMuY29udGV4dCkub24oZSx0aGlzLnNlbGVjdG9yLHQsbiksdGhpc30sZGllOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkodGhpcy5jb250ZXh0KS5vZmYoZSx0aGlzLnNlbGVjdG9yfHwiKioiLHQpLHRoaXN9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQsZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZSxuKX0sdHJpZ2dlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5ldmVudC50cmlnZ2VyKGUsdCx0aGlzKX0pKX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXtpZih0aGlzWzBdKXJldHVybiBpLmV2ZW50LnRyaWdnZXIoZSx0LHRoaXNbMF0sITApfSx0b2dnbGU6ZnVuY3Rpb24oZSl7dmFyIHQ9YXJndW1lbnRzLG49ZS5ndWlkfHxpLmd1aWQrKyxyPTAsbz1mdW5jdGlvbihuKXt2YXIgbz0oaS5fZGF0YSh0aGlzLCJsYXN0VG9nZ2xlIitlLmd1aWQpfHwwKSVyO3JldHVybiBpLl9kYXRhKHRoaXMsImxhc3RUb2dnbGUiK2UuZ3VpZCxvKzEpLG4ucHJldmVudERlZmF1bHQoKSx0W29dLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8ITF9O2ZvcihvLmd1aWQ9bjtyPHQubGVuZ3RoOyl0W3IrK10uZ3VpZD1uO3JldHVybiB0aGlzLmNsaWNrKG8pfSxob3ZlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoZSkubW91c2VsZWF2ZSh0fHxlKX19KSxpLmVhY2goImJsdXIgZm9jdXMgZm9jdXNpbiBmb2N1c291dCBsb2FkIHJlc2l6ZSBzY3JvbGwgdW5sb2FkIGNsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlIGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgZXJyb3IgY29udGV4dG1lbnUiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7aS5mblt0XT1mdW5jdGlvbihlLG4pe3JldHVybiBudWxsPT1uJiYobj1lLGU9bnVsbCksYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24odCxudWxsLGUsbik6dGhpcy50cmlnZ2VyKHQpfSxpLmF0dHJGbiYmKGkuYXR0ckZuW3RdPSEwKSxrLnRlc3QodCkmJihpLmV2ZW50LmZpeEhvb2tzW3RdPWkuZXZlbnQua2V5SG9va3MpLEUudGVzdCh0KSYmKGkuZXZlbnQuZml4SG9va3NbdF09aS5ldmVudC5tb3VzZUhvb2tzKX0pKSxmdW5jdGlvbigpe3ZhciBlPS8oKD86XCgoPzpcKFteKCldK1wpfFteKCldKykrXCl8XFsoPzpcW1teXFtcXV0qXF18WyciXVteJyJdKlsnIl18W15cW1xdJyJdKykrXF18XFwufFteID4rfiwoXFtcXF0rKSt8Wz4rfl0pKFxzKixccyopPygoPzoufFxyfFxuKSopL2csbj0ic2l6Y2FjaGUiKyhNYXRoLnJhbmRvbSgpKyIiKS5yZXBsYWNlKCIuIiwiIikscj0wLG89T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxhPSExLHM9ITAsbD0vXFwvZyx1PS9cclxuL2csYz0vXFcvO1swLDBdLnNvcnQoKGZ1bmN0aW9uKCl7cmV0dXJuIHM9ITEsMH0pKTt2YXIgZj1mdW5jdGlvbihuLHIsaSxhKXtpPWl8fFtdO3ZhciBzPXI9cnx8dDtpZigxIT09ci5ub2RlVHlwZSYmOSE9PXIubm9kZVR5cGUpcmV0dXJuW107aWYoIW58fCJzdHJpbmciIT10eXBlb2YgbilyZXR1cm4gaTt2YXIgbCx1LGMsZCxtLGcsdix5LGI9ITAsdz1mLmlzWE1MKHIpLFQ9W10sQz1uO2Rve2lmKGUuZXhlYygiIiksKGw9ZS5leGVjKEMpKSYmKEM9bFszXSxULnB1c2gobFsxXSksbFsyXSkpe2Q9bFszXTticmVha319d2hpbGUobCk7aWYoVC5sZW5ndGg+MSYmaC5leGVjKG4pKWlmKDI9PT1ULmxlbmd0aCYmcC5yZWxhdGl2ZVtUWzBdXSl1PU4oVFswXStUWzFdLHIsYSk7ZWxzZSBmb3IodT1wLnJlbGF0aXZlW1RbMF1dP1tyXTpmKFQuc2hpZnQoKSxyKTtULmxlbmd0aDspbj1ULnNoaWZ0KCkscC5yZWxhdGl2ZVtuXSYmKG4rPVQuc2hpZnQoKSksCnU9TihuLHUsYSk7ZWxzZSBpZighYSYmVC5sZW5ndGg+MSYmOT09PXIubm9kZVR5cGUmJiF3JiZwLm1hdGNoLklELnRlc3QoVFswXSkmJiFwLm1hdGNoLklELnRlc3QoVFtULmxlbmd0aC0xXSkmJihyPShtPWYuZmluZChULnNoaWZ0KCkscix3KSkuZXhwcj9mLmZpbHRlcihtLmV4cHIsbS5zZXQpWzBdOm0uc2V0WzBdKSxyKWZvcih1PShtPWE/e2V4cHI6VC5wb3AoKSxzZXQ6eChhKX06Zi5maW5kKFQucG9wKCksMSE9PVQubGVuZ3RofHwifiIhPT1UWzBdJiYiKyIhPT1UWzBdfHwhci5wYXJlbnROb2RlP3I6ci5wYXJlbnROb2RlLHcpKS5leHByP2YuZmlsdGVyKG0uZXhwcixtLnNldCk6bS5zZXQsVC5sZW5ndGg+MD9jPXgodSk6Yj0hMTtULmxlbmd0aDspdj1nPVQucG9wKCkscC5yZWxhdGl2ZVtnXT92PVQucG9wKCk6Zz0iIixudWxsPT12JiYodj1yKSxwLnJlbGF0aXZlW2ddKGMsdix3KTtlbHNlIGM9VD1bXTtpZihjfHwoYz11KSxjfHxmLmVycm9yKGd8fG4pLCJbb2JqZWN0IEFycmF5XSI9PT1vLmNhbGwoYykpaWYoYilpZihyJiYxPT09ci5ub2RlVHlwZSlmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJighMD09PWNbeV18fDE9PT1jW3ldLm5vZGVUeXBlJiZmLmNvbnRhaW5zKHIsY1t5XSkpJiZpLnB1c2godVt5XSk7ZWxzZSBmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJjE9PT1jW3ldLm5vZGVUeXBlJiZpLnB1c2godVt5XSk7ZWxzZSBpLnB1c2guYXBwbHkoaSxjKTtlbHNlIHgoYyxpKTtyZXR1cm4gZCYmKGYoZCxzLGksYSksZi51bmlxdWVTb3J0KGkpKSxpfTtmLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7aWYodiYmKGE9cyxlLnNvcnQodiksYSkpZm9yKHZhciB0PTE7dDxlLmxlbmd0aDt0KyspZVt0XT09PWVbdC0xXSYmZS5zcGxpY2UodC0tLDEpO3JldHVybiBlfSxmLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZihlLG51bGwsbnVsbCx0KX0sZi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZih0LG51bGwsbnVsbCxbZV0pLmxlbmd0aD4wfSxmLmZpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdTtpZighZSlyZXR1cm5bXTtmb3IoaT0wLG89cC5vcmRlci5sZW5ndGg7aTxvO2krKylpZihzPXAub3JkZXJbaV0sKGE9cC5sZWZ0TWF0Y2hbc10uZXhlYyhlKSkmJih1PWFbMV0sYS5zcGxpY2UoMSwxKSwiXFwiIT09dS5zdWJzdHIodS5sZW5ndGgtMSkmJihhWzFdPShhWzFdfHwiIikucmVwbGFjZShsLCIiKSxudWxsIT0ocj1wLmZpbmRbc10oYSx0LG4pKSkpKXtlPWUucmVwbGFjZShwLm1hdGNoW3NdLCIiKTticmVha31yZXR1cm4gcnx8KHI9dm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIik6W10pLHtzZXQ6cixleHByOmV9fSxmLmZpbHRlcj1mdW5jdGlvbihlLHQsbixyKXtmb3IodmFyIGksbyxhLHMsbCx1LGMsZCxoLG09ZSxnPVtdLHY9dCx5PXQmJnRbMF0mJmYuaXNYTUwodFswXSk7ZSYmdC5sZW5ndGg7KXtmb3IoYSBpbiBwLmZpbHRlcilpZihudWxsIT0oaT1wLmxlZnRNYXRjaFthXS5leGVjKGUpKSYmaVsyXSl7aWYodT1wLmZpbHRlclthXSxjPWlbMV0sbz0hMSxpLnNwbGljZSgxLDEpLCJcXCI9PT1jLnN1YnN0cihjLmxlbmd0aC0xKSljb250aW51ZTtpZih2PT09ZyYmKGc9W10pLHAucHJlRmlsdGVyW2FdKWlmKGk9cC5wcmVGaWx0ZXJbYV0oaSx2LG4sZyxyLHkpKXtpZighMD09PWkpY29udGludWV9ZWxzZSBvPXM9ITA7aWYoaSlmb3IoZD0wO251bGwhPShsPXZbZF0pO2QrKylsJiYoaD1yXihzPXUobCxpLGQsdikpLG4mJm51bGwhPXM/aD9vPSEwOnZbZF09ITE6aCYmKGcucHVzaChsKSxvPSEwKSk7aWYodm9pZCAwIT09cyl7aWYobnx8KHY9ZyksZT1lLnJlcGxhY2UocC5tYXRjaFthXSwiIiksIW8pcmV0dXJuW107YnJlYWt9fWlmKGU9PT1tKXtpZihudWxsIT1vKWJyZWFrO2YuZXJyb3IoZSl9bT1lfXJldHVybiB2fSxmLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX07dmFyIGQ9Zi5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG4scj1lLm5vZGVUeXBlLGk9IiI7aWYocil7aWYoMT09PXJ8fDk9PT1yfHwxMT09PXIpe2lmKCJzdHJpbmciPT10eXBlb2YgZS50ZXh0Q29udGVudClyZXR1cm4gZS50ZXh0Q29udGVudDtpZigic3RyaW5nIj09dHlwZW9mIGUuaW5uZXJUZXh0KXJldHVybiBlLmlubmVyVGV4dC5yZXBsYWNlKHUsIiIpO2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZylpKz1kKGUpfWVsc2UgaWYoMz09PXJ8fDQ9PT1yKXJldHVybiBlLm5vZGVWYWx1ZX1lbHNlIGZvcih0PTA7bj1lW3RdO3QrKyk4IT09bi5ub2RlVHlwZSYmKGkrPWQobikpO3JldHVybiBpfSxwPWYuc2VsZWN0b3JzPXtvcmRlcjpbIklEIiwiTkFNRSIsIlRBRyJdLG1hdGNoOntJRDovIygoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKS8sQ0xBU1M6L1wuKCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspLyxOQU1FOi9cW25hbWU9WyciXSooKD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKylbJyJdKlxdLyxBVFRSOi9cW1xzKigoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKVxzKig/OihcUz89KVxzKig/OihbJyJdKSguKj8pXDN8KCM/KD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKil8KXwpXHMqXF0vLFRBRzovXigoPzpbXHdcdTAwYzAtXHVGRkZGXCpcLV18XFwuKSspLyxDSElMRDovOihvbmx5fG50aHxsYXN0fGZpcnN0KS1jaGlsZCg/OlwoXHMqKGV2ZW58b2RkfCg/OlsrXC1dP1xkK3woPzpbK1wtXT9cZCopP25ccyooPzpbK1wtXVxzKlxkKyk/KSlccypcKSk/LyxQT1M6LzoobnRofGVxfGd0fGx0fGZpcnN0fGxhc3R8ZXZlbnxvZGQpKD86XCgoXGQqKVwpKT8oPz1bXlwtXXwkKS8sUFNFVURPOi86KCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspKD86XCgoWyciXT8pKCg/OlwoW15cKV0rXCl8W15cKFwpXSopKylcMlwpKT8vfSxsZWZ0TWF0Y2g6e30sYXR0ck1hcDp7Y2xhc3M6ImNsYXNzTmFtZSIsZm9yOiJodG1sRm9yIn0sYXR0ckhhbmRsZTp7CmhyZWY6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJocmVmIil9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil9fSxyZWxhdGl2ZTp7IisiOmZ1bmN0aW9uKGUsdCl7dmFyIG49InN0cmluZyI9PXR5cGVvZiB0LHI9biYmIWMudGVzdCh0KSxpPW4mJiFyO3ImJih0PXQudG9Mb3dlckNhc2UoKSk7Zm9yKHZhciBvLGE9MCxzPWUubGVuZ3RoO2E8czthKyspaWYobz1lW2FdKXtmb3IoOyhvPW8ucHJldmlvdXNTaWJsaW5nKSYmMSE9PW8ubm9kZVR5cGU7KTtlW2FdPWl8fG8mJm8ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQ/b3x8ITE6bz09PXR9aSYmZi5maWx0ZXIodCxlLCEwKX0sIj4iOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0ic3RyaW5nIj09dHlwZW9mIHQsaT0wLG89ZS5sZW5ndGg7aWYociYmIWMudGVzdCh0KSl7Zm9yKHQ9dC50b0xvd2VyQ2FzZSgpO2k8bztpKyspaWYobj1lW2ldKXt2YXIgYT1uLnBhcmVudE5vZGU7ZVtpXT1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10JiZhfX1lbHNle2Zvcig7aTxvO2krKykobj1lW2ldKSYmKGVbaV09cj9uLnBhcmVudE5vZGU6bi5wYXJlbnROb2RlPT09dCk7ciYmZi5maWx0ZXIodCxlLCEwKX19LCIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicGFyZW50Tm9kZSIsdCxvLGUsaSxuKX0sIn4iOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicHJldmlvdXNTaWJsaW5nIix0LG8sZSxpLG4pfX0sZmluZDp7SUQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudEJ5SWQmJiFuKXt2YXIgcj10LmdldEVsZW1lbnRCeUlkKGVbMV0pO3JldHVybiByJiZyLnBhcmVudE5vZGU/W3JdOltdfX0sTkFNRTpmdW5jdGlvbihlLHQpe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeU5hbWUpe2Zvcih2YXIgbj1bXSxyPXQuZ2V0RWxlbWVudHNCeU5hbWUoZVsxXSksaT0wLG89ci5sZW5ndGg7aTxvO2krKylyW2ldLmdldEF0dHJpYnV0ZSgibmFtZSIpPT09ZVsxXSYmbi5wdXNoKHJbaV0pO3JldHVybiAwPT09bi5sZW5ndGg/bnVsbDpufX0sVEFHOmZ1bmN0aW9uKGUsdCl7aWYodm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZSlyZXR1cm4gdC5nZXRFbGVtZW50c0J5VGFnTmFtZShlWzFdKX19LHByZUZpbHRlcjp7Q0xBU1M6ZnVuY3Rpb24oZSx0LG4scixpLG8pe2lmKGU9IiAiK2VbMV0ucmVwbGFjZShsLCIiKSsiICIsbylyZXR1cm4gZTtmb3IodmFyIGEscz0wO251bGwhPShhPXRbc10pO3MrKylhJiYoaV4oYS5jbGFzc05hbWUmJigiICIrYS5jbGFzc05hbWUrIiAiKS5yZXBsYWNlKC9bXHRcblxyXS9nLCIgIikuaW5kZXhPZihlKT49MCk/bnx8ci5wdXNoKGEpOm4mJih0W3NdPSExKSk7cmV0dXJuITF9LElEOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIil9LFRBRzpmdW5jdGlvbihlLHQpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIikudG9Mb3dlckNhc2UoKX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7aWYoIm50aCI9PT1lWzFdKXtlWzJdfHxmLmVycm9yKGVbMF0pLGVbMl09ZVsyXS5yZXBsYWNlKC9eXCt8XHMqL2csIiIpO3ZhciB0PS8oLT8pKFxkKikoPzpuKFsrXC1dP1xkKikpPy8uZXhlYygoImV2ZW4iPT09ZVsyXT8iMm4iOiJvZGQiPT09ZVsyXSYmIjJuKzEiKXx8IS9cRC8udGVzdChlWzJdKSYmIjBuKyIrZVsyXXx8ZVsyXSk7ZVsyXT10WzFdKyh0WzJdfHwxKS0wLGVbM109dFszXS0wfWVsc2UgZVsyXSYmZi5lcnJvcihlWzBdKTtyZXR1cm4gZVswXT1yKyssZX0sQVRUUjpmdW5jdGlvbihlLHQsbixyLGksbyl7dmFyIGE9ZVsxXT1lWzFdLnJlcGxhY2UobCwiIik7cmV0dXJuIW8mJnAuYXR0ck1hcFthXSYmKGVbMV09cC5hdHRyTWFwW2FdKSxlWzRdPShlWzRdfHxlWzVdfHwiIikucmVwbGFjZShsLCIiKSwifj0iPT09ZVsyXSYmKGVbNF09IiAiK2VbNF0rIiAiKSxlfSxQU0VVRE86ZnVuY3Rpb24odCxuLHIsaSxvKXtpZigibm90Ij09PXRbMV0pe2lmKCEoKGUuZXhlYyh0WzNdKXx8IiIpLmxlbmd0aD4xfHwvXlx3Ly50ZXN0KHRbM10pKSl7dmFyIGE9Zi5maWx0ZXIodFszXSxuLHIsITBebyk7cmV0dXJuIHJ8fGkucHVzaC5hcHBseShpLGEpLCExfXRbM109Zih0WzNdLG51bGwsbnVsbCxuKX1lbHNlIGlmKHAubWF0Y2guUE9TLnRlc3QodFswXSl8fHAubWF0Y2guQ0hJTEQudGVzdCh0WzBdKSlyZXR1cm4hMDtyZXR1cm4gdH0sUE9TOmZ1bmN0aW9uKGUpe3JldHVybiBlLnVuc2hpZnQoITApLGV9fSxmaWx0ZXJzOntlbmFibGVkOmZ1bmN0aW9uKGUpe3JldHVybiExPT09ZS5kaXNhYmxlZCYmImhpZGRlbiIhPT1lLnR5cGV9LGRpc2FibGVkOmZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZS5kaXNhYmxlZH0sY2hlY2tlZDpmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuY2hlY2tlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuISFlLmZpcnN0Q2hpbGR9LGVtcHR5OmZ1bmN0aW9uKGUpe3JldHVybiFlLmZpcnN0Q2hpbGR9LGhhczpmdW5jdGlvbihlLHQsbil7cmV0dXJuISFmKG5bM10sZSkubGVuZ3RofSxoZWFkZXI6ZnVuY3Rpb24oZSl7cmV0dXJuL2hcZC9pLnRlc3QoZS5ub2RlTmFtZSl9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSxuPWUudHlwZTtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1uJiYodD09PW58fG51bGw9PT10KX0scmFkaW86ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInJhZGlvIj09PWUudHlwZX0sY2hlY2tib3g6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImNoZWNrYm94Ij09PWUudHlwZQp9LGZpbGU6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImZpbGUiPT09ZS50eXBlfSxwYXNzd29yZDpmdW5jdGlvbihlKXtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYicGFzc3dvcmQiPT09ZS50eXBlfSxzdWJtaXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybigiaW5wdXQiPT09dHx8ImJ1dHRvbiI9PT10KSYmInN1Ym1pdCI9PT1lLnR5cGV9LGltYWdlOmZ1bmN0aW9uKGUpe3JldHVybiJpbnB1dCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJiJpbWFnZSI9PT1lLnR5cGV9LHJlc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iPT09dCkmJiJyZXNldCI9PT1lLnR5cGV9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybi9pbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uL2kudGVzdChlLm5vZGVOYW1lKX0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1lLm93bmVyRG9jdW1lbnQuYWN0aXZlRWxlbWVudH19LHNldEZpbHRlcnM6e2ZpcnN0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIDA9PT10fSxsYXN0OmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0PT09ci5sZW5ndGgtMX0sZXZlbjpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTB9LG9kZDpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTF9LGx0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdDxuWzNdLTB9LGd0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdD5uWzNdLTB9LG50aDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG5bM10tMD09PXR9LGVxOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gblszXS0wPT09dH19LGZpbHRlcjp7UFNFVURPOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpPXRbMV0sbz1wLmZpbHRlcnNbaV07aWYobylyZXR1cm4gbyhlLG4sdCxyKTtpZigiY29udGFpbnMiPT09aSlyZXR1cm4oZS50ZXh0Q29udGVudHx8ZS5pbm5lclRleHR8fGQoW2VdKXx8IiIpLmluZGV4T2YodFszXSk+PTA7aWYoIm5vdCI9PT1pKXtmb3IodmFyIGE9dFszXSxzPTAsbD1hLmxlbmd0aDtzPGw7cysrKWlmKGFbc109PT1lKXJldHVybiExO3JldHVybiEwfWYuZXJyb3IoaSl9LENISUxEOmZ1bmN0aW9uKGUsdCl7dmFyIHIsaSxvLGEscyxsLHU9dFsxXSxjPWU7c3dpdGNoKHUpe2Nhc2Uib25seSI6Y2FzZSJmaXJzdCI6Zm9yKDtjPWMucHJldmlvdXNTaWJsaW5nOylpZigxPT09Yy5ub2RlVHlwZSlyZXR1cm4hMTtpZigiZmlyc3QiPT09dSlyZXR1cm4hMDtjPWU7Y2FzZSJsYXN0Ijpmb3IoO2M9Yy5uZXh0U2libGluZzspaWYoMT09PWMubm9kZVR5cGUpcmV0dXJuITE7cmV0dXJuITA7Y2FzZSJudGgiOmlmKHI9dFsyXSxpPXRbM10sMT09PXImJjA9PT1pKXJldHVybiEwO2lmKG89dFswXSwoYT1lLnBhcmVudE5vZGUpJiYoYVtuXSE9PW98fCFlLm5vZGVJbmRleCkpe2ZvcihzPTAsYz1hLmZpcnN0Q2hpbGQ7YztjPWMubmV4dFNpYmxpbmcpMT09PWMubm9kZVR5cGUmJihjLm5vZGVJbmRleD0rK3MpO2Fbbl09b31yZXR1cm4gbD1lLm5vZGVJbmRleC1pLDA9PT1yPzA9PT1sOmwlcj09MCYmbC9yPj0wfX0sSUQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMT09PWUubm9kZVR5cGUmJmUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH0sVEFHOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIioiPT09dCYmMT09PWUubm9kZVR5cGV8fCEhZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH0sQ0xBU1M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4oIiAiKyhlLmNsYXNzTmFtZXx8ZS5nZXRBdHRyaWJ1dGUoImNsYXNzIikpKyIgIikuaW5kZXhPZih0KT4tMX0sQVRUUjpmdW5jdGlvbihlLHQpe3ZhciBuPXRbMV0scj1mLmF0dHI/Zi5hdHRyKGUsbik6cC5hdHRySGFuZGxlW25dP3AuYXR0ckhhbmRsZVtuXShlKTpudWxsIT1lW25dP2Vbbl06ZS5nZXRBdHRyaWJ1dGUobiksaT1yKyIiLG89dFsyXSxhPXRbNF07cmV0dXJuIG51bGw9PXI/IiE9Ij09PW86IW8mJmYuYXR0cj9udWxsIT1yOiI9Ij09PW8/aT09PWE6Iio9Ij09PW8/aS5pbmRleE9mKGEpPj0wOiJ+PSI9PT1vPygiICIraSsiICIpLmluZGV4T2YoYSk+PTA6YT8iIT0iPT09bz9pIT09YToiXj0iPT09bz8wPT09aS5pbmRleE9mKGEpOiIkPSI9PT1vP2kuc3Vic3RyKGkubGVuZ3RoLWEubGVuZ3RoKT09PWE6Inw9Ij09PW8mJihpPT09YXx8aS5zdWJzdHIoMCxhLmxlbmd0aCsxKT09PWErIi0iKTppJiYhMSE9PXJ9LFBPUzpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT10WzJdLG89cC5zZXRGaWx0ZXJzW2ldO2lmKG8pcmV0dXJuIG8oZSxuLHQscil9fX0saD1wLm1hdGNoLlBPUyxtPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIlxcIisodC0wKzEpfTtmb3IodmFyIGcgaW4gcC5tYXRjaClwLm1hdGNoW2ddPW5ldyBSZWdFeHAocC5tYXRjaFtnXS5zb3VyY2UrLyg/IVteXFtdKlxdKSg/IVteXChdKlwpKS8uc291cmNlKSxwLmxlZnRNYXRjaFtnXT1uZXcgUmVnRXhwKC8oXig/Oi58XHJ8XG4pKj8pLy5zb3VyY2UrcC5tYXRjaFtnXS5zb3VyY2UucmVwbGFjZSgvXFwoXGQrKS9nLG0pKTtwLm1hdGNoLmdsb2JhbFBPUz1oO3ZhciB2LHksYix4PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSwwKSx0Pyh0LnB1c2guYXBwbHkodCxlKSx0KTplfTt0cnl7QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5kb2N1bWVudEVsZW1lbnQuY2hpbGROb2RlcywwKVswXS5ub2RlVHlwZX1jYXRjaChlKXt4PWZ1bmN0aW9uKGUsdCl7dmFyIG49MCxyPXR8fFtdCjtpZigiW29iamVjdCBBcnJheV0iPT09by5jYWxsKGUpKUFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KHIsZSk7ZWxzZSBpZigibnVtYmVyIj09dHlwZW9mIGUubGVuZ3RoKWZvcih2YXIgaT1lLmxlbmd0aDtuPGk7bisrKXIucHVzaChlW25dKTtlbHNlIGZvcig7ZVtuXTtuKyspci5wdXNoKGVbbl0pO3JldHVybiByfX1mdW5jdGlvbiB3KGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMSE9PXUubm9kZVR5cGV8fGF8fCh1W25dPXIsdS5zaXpzZXQ9cyksdS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX1mdW5jdGlvbiBUKGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMT09PXUubm9kZVR5cGUpaWYoYXx8KHVbbl09cix1LnNpenNldD1zKSwic3RyaW5nIiE9dHlwZW9mIHQpe2lmKHU9PT10KXtjPSEwO2JyZWFrfX1lbHNlIGlmKGYuZmlsdGVyKHQsW3VdKS5sZW5ndGg+MCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX10LmRvY3VtZW50RWxlbWVudC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj92PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10PyhhPSEwLDApOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/NCZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpPy0xOjE6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj8tMToxfToodj1mdW5jdGlvbihlLHQpe2lmKGU9PT10KXJldHVybiBhPSEwLDA7aWYoZS5zb3VyY2VJbmRleCYmdC5zb3VyY2VJbmRleClyZXR1cm4gZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O3ZhciBuLHIsaT1bXSxvPVtdLHM9ZS5wYXJlbnROb2RlLGw9dC5wYXJlbnROb2RlLHU9cztpZihzPT09bClyZXR1cm4geShlLHQpO2lmKCFzKXJldHVybi0xO2lmKCFsKXJldHVybiAxO2Zvcig7dTspaS51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO2Zvcih1PWw7dTspby51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO249aS5sZW5ndGgscj1vLmxlbmd0aDtmb3IodmFyIGM9MDtjPG4mJmM8cjtjKyspaWYoaVtjXSE9PW9bY10pcmV0dXJuIHkoaVtjXSxvW2NdKTtyZXR1cm4gYz09PW4/eShlLG9bY10sLTEpOnkoaVtjXSx0LDEpfSx5PWZ1bmN0aW9uKGUsdCxuKXtpZihlPT09dClyZXR1cm4gbjtmb3IodmFyIHI9ZS5uZXh0U2libGluZztyOyl7aWYocj09PXQpcmV0dXJuLTE7cj1yLm5leHRTaWJsaW5nfXJldHVybiAxfSksZnVuY3Rpb24oKXt2YXIgZT10LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG49InNjcmlwdCIrKG5ldyBEYXRlKS5nZXRUaW1lKCkscj10LmRvY3VtZW50RWxlbWVudDtlLmlubmVySFRNTD0iPGEgbmFtZT0nIituKyInLz4iLHIuaW5zZXJ0QmVmb3JlKGUsci5maXJzdENoaWxkKSx0LmdldEVsZW1lbnRCeUlkKG4pJiYocC5maW5kLklEPWZ1bmN0aW9uKGUsdCxuKXtpZih2b2lkIDAhPT10LmdldEVsZW1lbnRCeUlkJiYhbil7dmFyIHI9dC5nZXRFbGVtZW50QnlJZChlWzFdKTtyZXR1cm4gcj9yLmlkPT09ZVsxXXx8dm9pZCAwIT09ci5nZXRBdHRyaWJ1dGVOb2RlJiZyLmdldEF0dHJpYnV0ZU5vZGUoImlkIikubm9kZVZhbHVlPT09ZVsxXT9bcl06dm9pZCAwOltdfX0scC5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj12b2lkIDAhPT1lLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gMT09PWUubm9kZVR5cGUmJm4mJm4ubm9kZVZhbHVlPT09dH0pLHIucmVtb3ZlQ2hpbGQoZSkscj1lPW51bGx9KCksKGI9dC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuYXBwZW5kQ2hpbGQodC5jcmVhdGVDb21tZW50KCIiKSksYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aD4wJiYocC5maW5kLlRBRz1mdW5jdGlvbihlLHQpe3ZhciBuPXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZVsxXSk7aWYoIioiPT09ZVsxXSl7Zm9yKHZhciByPVtdLGk9MDtuW2ldO2krKykxPT09bltpXS5ub2RlVHlwZSYmci5wdXNoKG5baV0pO249cn1yZXR1cm4gbn0pLGIuaW5uZXJIVE1MPSI8YSBocmVmPScjJz48L2E+IixiLmZpcnN0Q2hpbGQmJnZvaWQgMCE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUmJiIjIiE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKSYmKHAuYXR0ckhhbmRsZS5ocmVmPWZ1bmN0aW9uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaHJlZiIsMil9KSxiPW51bGwsdC5xdWVyeVNlbGVjdG9yQWxsJiZmdW5jdGlvbigpe3ZhciBlPWYsbj10LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG4uaW5uZXJIVE1MPSI8cCBjbGFzcz0nVEVTVCc+PC9wPiIsIW4ucXVlcnlTZWxlY3RvckFsbHx8MCE9PW4ucXVlcnlTZWxlY3RvckFsbCgiLlRFU1QiKS5sZW5ndGgpe2Zvcih2YXIgciBpbiBmPWZ1bmN0aW9uKG4scixpLG8pe2lmKHI9cnx8dCwhbyYmIWYuaXNYTUwocikpe3ZhciBhPS9eKFx3KyQpfF5cLihbXHdcLV0rJCl8XiMoW1x3XC1dKyQpLy5leGVjKG4pO2lmKGEmJigxPT09ci5ub2RlVHlwZXx8OT09PXIubm9kZVR5cGUpKXtpZihhWzFdKXJldHVybiB4KHIuZ2V0RWxlbWVudHNCeVRhZ05hbWUobiksaSk7aWYoYVsyXSYmcC5maW5kLkNMQVNTJiZyLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpcmV0dXJuIHgoci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGFbMl0pLGkpfWlmKDk9PT1yLm5vZGVUeXBlKXtpZigiYm9keSI9PT1uJiZyLmJvZHkpcmV0dXJuIHgoW3IuYm9keV0saSk7aWYoYSYmYVszXSl7dmFyIHM9ci5nZXRFbGVtZW50QnlJZChhWzNdKTtpZighc3x8IXMucGFyZW50Tm9kZSlyZXR1cm4geChbXSxpKTtpZihzLmlkPT09YVszXSlyZXR1cm4geChbc10saSl9dHJ5e3JldHVybiB4KHIucXVlcnlTZWxlY3RvckFsbChuKSxpKX1jYXRjaChlKXt9Cn1lbHNlIGlmKDE9PT1yLm5vZGVUeXBlJiYib2JqZWN0IiE9PXIubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7dmFyIGw9cix1PXIuZ2V0QXR0cmlidXRlKCJpZCIpLGM9dXx8Il9fc2l6emxlX18iLGQ9ci5wYXJlbnROb2RlLGg9L15ccypbK35dLy50ZXN0KG4pO3U/Yz1jLnJlcGxhY2UoLycvZywiXFwkJiIpOnIuc2V0QXR0cmlidXRlKCJpZCIsYyksaCYmZCYmKHI9ci5wYXJlbnROb2RlKTt0cnl7aWYoIWh8fGQpcmV0dXJuIHgoci5xdWVyeVNlbGVjdG9yQWxsKCJbaWQ9JyIrYysiJ10gIituKSxpKX1jYXRjaChlKXt9ZmluYWxseXt1fHxsLnJlbW92ZUF0dHJpYnV0ZSgiaWQiKX19fXJldHVybiBlKG4scixpLG8pfSxlKWZbcl09ZVtyXTtuPW51bGx9fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5kb2N1bWVudEVsZW1lbnQsbj1lLm1hdGNoZXNTZWxlY3Rvcnx8ZS5tb3pNYXRjaGVzU2VsZWN0b3J8fGUud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxlLm1zTWF0Y2hlc1NlbGVjdG9yO2lmKG4pe3ZhciByPSFuLmNhbGwodC5jcmVhdGVFbGVtZW50KCJkaXYiKSwiZGl2IiksaT0hMTt0cnl7bi5jYWxsKHQuZG9jdW1lbnRFbGVtZW50LCJbdGVzdCE9JyddOnNpenpsZSIpfWNhdGNoKGUpe2k9ITB9Zi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtpZih0PXQucmVwbGFjZSgvXD1ccyooW14nIlxdXSopXHMqXF0vZywiPSckMSddIiksIWYuaXNYTUwoZSkpdHJ5e2lmKGl8fCFwLm1hdGNoLlBTRVVETy50ZXN0KHQpJiYhLyE9Ly50ZXN0KHQpKXt2YXIgbz1uLmNhbGwoZSx0KTtpZihvfHwhcnx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBvfX1jYXRjaChlKXt9cmV0dXJuIGYodCxudWxsLG51bGwsW2VdKS5sZW5ndGg+MH19fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmlubmVySFRNTD0iPGRpdiBjbGFzcz0ndGVzdCBlJz48L2Rpdj48ZGl2IGNsYXNzPSd0ZXN0Jz48L2Rpdj4iLGUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmMCE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKGUubGFzdENoaWxkLmNsYXNzTmFtZT0iZSIsMSE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKHAub3JkZXIuc3BsaWNlKDEsMCwiQ0xBU1MiKSxwLmZpbmQuQ0xBU1M9ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmIW4pcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlWzFdKX0sZT1udWxsKSl9KCksdC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnM/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiBlIT09dCYmKCFlLmNvbnRhaW5zfHxlLmNvbnRhaW5zKHQpKX06dC5kb2N1bWVudEVsZW1lbnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkpfTpmLmNvbnRhaW5zPWZ1bmN0aW9uKCl7cmV0dXJuITF9LGYuaXNYTUw9ZnVuY3Rpb24oZSl7dmFyIHQ9KGU/ZS5vd25lckRvY3VtZW50fHxlOjApLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hIXQmJiJIVE1MIiE9PXQubm9kZU5hbWV9O3ZhciBOPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIsaT1bXSxvPSIiLGE9dC5ub2RlVHlwZT9bdF06dDtyPXAubWF0Y2guUFNFVURPLmV4ZWMoZSk7KW8rPXJbMF0sZT1lLnJlcGxhY2UocC5tYXRjaC5QU0VVRE8sIiIpO2U9cC5yZWxhdGl2ZVtlXT9lKyIqIjplO2Zvcih2YXIgcz0wLGw9YS5sZW5ndGg7czxsO3MrKylmKGUsYVtzXSxpLG4pO3JldHVybiBmLmZpbHRlcihvLGkpfTtmLmF0dHI9aS5hdHRyLGYuc2VsZWN0b3JzLmF0dHJNYXA9e30saS5maW5kPWYsaS5leHByPWYuc2VsZWN0b3JzLGkuZXhwclsiOiJdPWkuZXhwci5maWx0ZXJzLGkudW5pcXVlPWYudW5pcXVlU29ydCxpLnRleHQ9Zi5nZXRUZXh0LGkuaXNYTUxEb2M9Zi5pc1hNTCxpLmNvbnRhaW5zPWYuY29udGFpbnN9KCk7dmFyIE09L1VudGlsJC8sTz0vXig/OnBhcmVudHN8cHJldlVudGlsfHByZXZBbGwpLyxIPS8sLyxQPS9eLlteOiNcW1wuLF0qJC8scT1BcnJheS5wcm90b3R5cGUuc2xpY2UsQj1pLmV4cHIubWF0Y2guZ2xvYmFsUE9TLFc9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ZnVuY3Rpb24gSShlKXtyZXR1cm4hZXx8IWUucGFyZW50Tm9kZXx8MTE9PT1lLnBhcmVudE5vZGUubm9kZVR5cGV9ZnVuY3Rpb24gJChlLHQsbil7aWYodD10fHwwLGkuaXNGdW5jdGlvbih0KSlyZXR1cm4gaS5ncmVwKGUsKGZ1bmN0aW9uKGUscil7cmV0dXJuISF0LmNhbGwoZSxyLGUpPT09bn0pKTtpZih0Lm5vZGVUeXBlKXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gZT09PXQ9PT1ufSkpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIHI9aS5ncmVwKGUsKGZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZX0pKTtpZihQLnRlc3QodCkpcmV0dXJuIGkuZmlsdGVyKHQsciwhbik7dD1pLmZpbHRlcih0LHIpfXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gaS5pbkFycmF5KGUsdCk+PTA9PT1ufSkpfWZ1bmN0aW9uIFIoZSl7dmFyIHQ9WC5zcGxpdCgifCIpLG49ZS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7aWYobi5jcmVhdGVFbGVtZW50KWZvcig7dC5sZW5ndGg7KW4uY3JlYXRlRWxlbWVudCh0LnBvcCgpKTtyZXR1cm4gbn1pLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcztpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIGkoZSkuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih0PTAsbj1yLmxlbmd0aDt0PG47dCsrKWlmKGkuY29udGFpbnMoclt0XSx0aGlzKSlyZXR1cm4hMH0pKTt2YXIgbyxhLHMsbD10aGlzLnB1c2hTdGFjaygiIiwiZmluZCIsZSk7Zm9yKHQ9MCxuPXRoaXMubGVuZ3RoO3Q8bjt0KyspaWYobz1sLmxlbmd0aCxpLmZpbmQoZSx0aGlzW3RdLGwpLHQ+MClmb3IoYT1vO2E8bC5sZW5ndGg7YSsrKWZvcihzPTA7czxvO3MrKylpZihsW3NdPT09bFthXSl7bC5zcGxpY2UoYS0tLDEpCjticmVha31yZXR1cm4gbH0saGFzOmZ1bmN0aW9uKGUpe3ZhciB0PWkoZSk7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih2YXIgZT0wLG49dC5sZW5ndGg7ZTxuO2UrKylpZihpLmNvbnRhaW5zKHRoaXMsdFtlXSkpcmV0dXJuITB9KSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soJCh0aGlzLGUsITEpLCJub3QiLGUpfSxmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKCQodGhpcyxlLCEwKSwiZmlsdGVyIixlKX0saXM6ZnVuY3Rpb24oZSl7cmV0dXJuISFlJiYoInN0cmluZyI9PXR5cGVvZiBlP0IudGVzdChlKT9pKGUsdGhpcy5jb250ZXh0KS5pbmRleCh0aGlzWzBdKT49MDppLmZpbHRlcihlLHRoaXMpLmxlbmd0aD4wOnRoaXMuZmlsdGVyKGUpLmxlbmd0aD4wKX0sY2xvc2VzdDpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbz1bXSxhPXRoaXNbMF07aWYoaS5pc0FycmF5KGUpKXtmb3IodmFyIHM9MTthJiZhLm93bmVyRG9jdW1lbnQmJmEhPT10Oyl7Zm9yKG49MDtuPGUubGVuZ3RoO24rKylpKGEpLmlzKGVbbl0pJiZvLnB1c2goe3NlbGVjdG9yOmVbbl0sZWxlbTphLGxldmVsOnN9KTthPWEucGFyZW50Tm9kZSxzKyt9cmV0dXJuIG99dmFyIGw9Qi50ZXN0KGUpfHwic3RyaW5nIiE9dHlwZW9mIGU/aShlLHR8fHRoaXMuY29udGV4dCk6MDtmb3Iobj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylmb3IoYT10aGlzW25dO2E7KXtpZihsP2wuaW5kZXgoYSk+LTE6aS5maW5kLm1hdGNoZXNTZWxlY3RvcihhLGUpKXtvLnB1c2goYSk7YnJlYWt9aWYoIShhPWEucGFyZW50Tm9kZSl8fCFhLm93bmVyRG9jdW1lbnR8fGE9PT10fHwxMT09PWEubm9kZVR5cGUpYnJlYWt9cmV0dXJuIG89by5sZW5ndGg+MT9pLnVuaXF1ZShvKTpvLHRoaXMucHVzaFN0YWNrKG8sImNsb3Nlc3QiLGUpfSxpbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gZT8ic3RyaW5nIj09dHlwZW9mIGU/aS5pbkFycmF5KHRoaXNbMF0saShlKSk6aS5pbkFycmF5KGUuanF1ZXJ5P2VbMF06ZSx0aGlzKTp0aGlzWzBdJiZ0aGlzWzBdLnBhcmVudE5vZGU/dGhpcy5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIGU/aShlLHQpOmkubWFrZUFycmF5KGUmJmUubm9kZVR5cGU/W2VdOmUpLHI9aS5tZXJnZSh0aGlzLmdldCgpLG4pO3JldHVybiB0aGlzLnB1c2hTdGFjayhJKG5bMF0pfHxJKHJbMF0pP3I6aS51bmlxdWUocikpfSxhbmRTZWxmOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWRkKHRoaXMucHJldk9iamVjdCl9fSksaS5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/dDpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiBpLmRpcihlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInBhcmVudE5vZGUiLG4pfSxuZXh0OmZ1bmN0aW9uKGUpe3JldHVybiBpLm50aChlLDIsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubnRoKGUsMiwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsIm5leHRTaWJsaW5nIil9LHByZXZBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpLmRpcihlLCJuZXh0U2libGluZyIsbil9LHByZXZVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIsbil9LHNpYmxpbmdzOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoKGUucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsZSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubm9kZU5hbWUoZSwiaWZyYW1lIik/ZS5jb250ZW50RG9jdW1lbnR8fGUuY29udGVudFdpbmRvdy5kb2N1bWVudDppLm1ha2VBcnJheShlLmNoaWxkTm9kZXMpfX0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuLHIpe3ZhciBvPWkubWFwKHRoaXMsdCxuKTtyZXR1cm4gTS50ZXN0KGUpfHwocj1uKSxyJiYic3RyaW5nIj09dHlwZW9mIHImJihvPWkuZmlsdGVyKHIsbykpLG89dGhpcy5sZW5ndGg+MSYmIVdbZV0/aS51bmlxdWUobyk6bywodGhpcy5sZW5ndGg+MXx8SC50ZXN0KHIpKSYmTy50ZXN0KGUpJiYobz1vLnJldmVyc2UoKSksdGhpcy5wdXNoU3RhY2sobyxlLHEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9fSkpLGkuZXh0ZW5kKHtmaWx0ZXI6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBuJiYoZT0iOm5vdCgiK2UrIikiKSwxPT09dC5sZW5ndGg/aS5maW5kLm1hdGNoZXNTZWxlY3Rvcih0WzBdLGUpP1t0WzBdXTpbXTppLmZpbmQubWF0Y2hlcyhlLHQpfSxkaXI6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1bXSxvPWVbdF07byYmOSE9PW8ubm9kZVR5cGUmJih2b2lkIDA9PT1ufHwxIT09by5ub2RlVHlwZXx8IWkobykuaXMobikpOykxPT09by5ub2RlVHlwZSYmci5wdXNoKG8pLG89b1t0XTtyZXR1cm4gcn0sbnRoOmZ1bmN0aW9uKGUsdCxuLHIpe3Q9dHx8MTtmb3IodmFyIGk9MDtlJiYoMSE9PWUubm9kZVR5cGV8fCsraSE9PXQpO2U9ZVtuXSk7cmV0dXJuIGV9LHNpYmxpbmc6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59fSkKO3ZhciBYPSJhYmJyfGFydGljbGV8YXNpZGV8YXVkaW98YmRpfGNhbnZhc3xkYXRhfGRhdGFsaXN0fGRldGFpbHN8ZmlnY2FwdGlvbnxmaWd1cmV8Zm9vdGVyfGhlYWRlcnxoZ3JvdXB8bWFya3xtZXRlcnxuYXZ8b3V0cHV0fHByb2dyZXNzfHNlY3Rpb258c3VtbWFyeXx0aW1lfHZpZGVvIix6PS8galF1ZXJ5XGQrPSIoPzpcZCt8bnVsbCkiL2csVj0vXlxzKy8sVT0vPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSopXC8+L2dpLFk9LzwoW1x3Ol0rKS8sSj0vPHRib2R5L2ksRz0vPHwmIz9cdys7LyxLPS88KD86c2NyaXB0fHN0eWxlKS9pLFE9LzwoPzpzY3JpcHR8b2JqZWN0fGVtYmVkfG9wdGlvbnxzdHlsZSkvaSxaPW5ldyBSZWdFeHAoIjwoPzoiK1grIilbXFxzLz5dIiwiaSIpLGVlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHRlPS9cLyhqYXZhfGVjbWEpc2NyaXB0L2ksbmU9e29wdGlvbjpbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdLGxlZ2VuZDpbMSwiPGZpZWxkc2V0PiIsIjwvZmllbGRzZXQ+Il0sdGhlYWQ6WzEsIjx0YWJsZT4iLCI8L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PHRib2R5PjwvdGJvZHk+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSxhcmVhOlsxLCI8bWFwPiIsIjwvbWFwPiJdLF9kZWZhdWx0OlswLCIiLCIiXX0scmU9Uih0KTtmdW5jdGlvbiBpZShlLHQpe2lmKDE9PT10Lm5vZGVUeXBlJiZpLmhhc0RhdGEoZSkpe3ZhciBuLHIsbyxhPWkuX2RhdGEoZSkscz1pLl9kYXRhKHQsYSksbD1hLmV2ZW50cztpZihsKWZvcihuIGluIGRlbGV0ZSBzLmhhbmRsZSxzLmV2ZW50cz17fSxsKWZvcihyPTAsbz1sW25dLmxlbmd0aDtyPG87cisrKWkuZXZlbnQuYWRkKHQsbixsW25dW3JdKTtzLmRhdGEmJihzLmRhdGE9aS5leHRlbmQoe30scy5kYXRhKSl9fWZ1bmN0aW9uIG9lKGUsdCl7dmFyIG47MT09PXQubm9kZVR5cGUmJih0LmNsZWFyQXR0cmlidXRlcyYmdC5jbGVhckF0dHJpYnV0ZXMoKSx0Lm1lcmdlQXR0cmlidXRlcyYmdC5tZXJnZUF0dHJpYnV0ZXMoZSksIm9iamVjdCI9PT0obj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpP3Qub3V0ZXJIVE1MPWUub3V0ZXJIVE1MOiJpbnB1dCIhPT1ufHwiY2hlY2tib3giIT09ZS50eXBlJiYicmFkaW8iIT09ZS50eXBlPyJvcHRpb24iPT09bj90LnNlbGVjdGVkPWUuZGVmYXVsdFNlbGVjdGVkOiJpbnB1dCI9PT1ufHwidGV4dGFyZWEiPT09bj90LmRlZmF1bHRWYWx1ZT1lLmRlZmF1bHRWYWx1ZToic2NyaXB0Ij09PW4mJnQudGV4dCE9PWUudGV4dCYmKHQudGV4dD1lLnRleHQpOihlLmNoZWNrZWQmJih0LmRlZmF1bHRDaGVja2VkPXQuY2hlY2tlZD1lLmNoZWNrZWQpLHQudmFsdWUhPT1lLnZhbHVlJiYodC52YWx1ZT1lLnZhbHVlKSksdC5yZW1vdmVBdHRyaWJ1dGUoaS5leHBhbmRvKSx0LnJlbW92ZUF0dHJpYnV0ZSgiX3N1Ym1pdF9hdHRhY2hlZCIpLHQucmVtb3ZlQXR0cmlidXRlKCJfY2hhbmdlX2F0dGFjaGVkIikpfWZ1bmN0aW9uIGFlKGUpe3JldHVybiB2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lP2UuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKTp2b2lkIDAhPT1lLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKCIqIik6W119ZnVuY3Rpb24gc2UoZSl7ImNoZWNrYm94IiE9PWUudHlwZSYmInJhZGlvIiE9PWUudHlwZXx8KGUuZGVmYXVsdENoZWNrZWQ9ZS5jaGVja2VkKX1mdW5jdGlvbiBsZShlKXt2YXIgdD0oZS5ub2RlTmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk7ImlucHV0Ij09PXQ/c2UoZSk6InNjcmlwdCIhPT10JiZ2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lJiZpLmdyZXAoZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW5wdXQiKSxzZSl9bmUub3B0Z3JvdXA9bmUub3B0aW9uLG5lLnRib2R5PW5lLnRmb290PW5lLmNvbGdyb3VwPW5lLmNhcHRpb249bmUudGhlYWQsbmUudGg9bmUudGQsaS5zdXBwb3J0Lmh0bWxTZXJpYWxpemV8fChuZS5fZGVmYXVsdD1bMSwiZGl2PGRpdj4iLCI8L2Rpdj4iXSksaS5mbi5leHRlbmQoe3RleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lP2kudGV4dCh0aGlzKTp0aGlzLmVtcHR5KCkuYXBwZW5kKCh0aGlzWzBdJiZ0aGlzWzBdLm93bmVyRG9jdW1lbnR8fHQpLmNyZWF0ZVRleHROb2RlKGUpKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sd3JhcEFsbDpmdW5jdGlvbihlKXtpZihpLmlzRnVuY3Rpb24oZSkpcmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aSh0aGlzKS53cmFwQWxsKGUuY2FsbCh0aGlzLHQpKX0pKTtpZih0aGlzWzBdKXt2YXIgdD1pKGUsdGhpc1swXS5vd25lckRvY3VtZW50KS5lcSgwKS5jbG9uZSghMCk7dGhpc1swXS5wYXJlbnROb2RlJiZ0Lmluc2VydEJlZm9yZSh0aGlzWzBdKSx0Lm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcztlLmZpcnN0Q2hpbGQmJjE9PT1lLmZpcnN0Q2hpbGQubm9kZVR5cGU7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfSkpLmFwcGVuZCh0aGlzKX1yZXR1cm4gdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGUpe3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLndyYXBJbm5lcihlLmNhbGwodGhpcyx0KSl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PWkodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQuYXBwZW5kKGUpfSkpfSx3cmFwOmZ1bmN0aW9uKGUpe3ZhciB0PWkuaXNGdW5jdGlvbihlKTtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLndyYXBBbGwodD9lLmNhbGwodGhpcyxuKTplKX0pKX0sdW53cmFwOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGFyZW50KCkuZWFjaCgoZnVuY3Rpb24oKXsKaS5ub2RlTmFtZSh0aGlzLCJib2R5Iil8fGkodGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pKS5lbmQoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLCEwLChmdW5jdGlvbihlKXsxPT09dGhpcy5ub2RlVHlwZSYmdGhpcy5hcHBlbmRDaGlsZChlKX0pKX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMCwoZnVuY3Rpb24oZSl7MT09PXRoaXMubm9kZVR5cGUmJnRoaXMuaW5zZXJ0QmVmb3JlKGUsdGhpcy5maXJzdENoaWxkKX0pKX0sYmVmb3JlOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPWkuY2xlYW4oYXJndW1lbnRzKTtyZXR1cm4gZS5wdXNoLmFwcGx5KGUsdGhpcy50b0FycmF5KCkpLHRoaXMucHVzaFN0YWNrKGUsImJlZm9yZSIsYXJndW1lbnRzKX19LGFmdGVyOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMubmV4dFNpYmxpbmcpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPXRoaXMucHVzaFN0YWNrKHRoaXMsImFmdGVyIixhcmd1bWVudHMpO3JldHVybiBlLnB1c2guYXBwbHkoZSxpLmNsZWFuKGFyZ3VtZW50cykpLGV9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG4scj0wO251bGwhPShuPXRoaXNbcl0pO3IrKyllJiYhaS5maWx0ZXIoZSxbbl0pLmxlbmd0aHx8KHR8fDEhPT1uLm5vZGVUeXBlfHwoaS5jbGVhbkRhdGEobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpKSxpLmNsZWFuRGF0YShbbl0pKSxuLnBhcmVudE5vZGUmJm4ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKSk7cmV0dXJuIHRoaXN9LGVtcHR5OmZ1bmN0aW9uKCl7Zm9yKHZhciBlLHQ9MDtudWxsIT0oZT10aGlzW3RdKTt0KyspZm9yKDE9PT1lLm5vZGVUeXBlJiZpLmNsZWFuRGF0YShlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikpO2UuZmlyc3RDaGlsZDspZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPWU/PyExLHQ9dD8/ZSx0aGlzLm1hcCgoZnVuY3Rpb24oKXtyZXR1cm4gaS5jbG9uZSh0aGlzLGUsdCl9KSl9LGh0bWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXNbMF18fHt9LG49MCxyPXRoaXMubGVuZ3RoO2lmKHZvaWQgMD09PWUpcmV0dXJuIDE9PT10Lm5vZGVUeXBlP3QuaW5uZXJIVE1MLnJlcGxhY2UoeiwiIik6bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIGUmJiFLLnRlc3QoZSkmJihpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2V8fCFWLnRlc3QoZSkpJiYhbmVbKFkuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9ZS5yZXBsYWNlKFUsIjwkMT48LyQyPiIpO3RyeXtmb3IoO248cjtuKyspMT09PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKGkuY2xlYW5EYXRhKHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSksdC5pbm5lckhUTUw9ZSk7dD0wfWNhdGNoKGUpe319dCYmdGhpcy5lbXB0eSgpLmFwcGVuZChlKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT9pLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXt2YXIgbj1pKHRoaXMpLHI9bi5odG1sKCk7bi5yZXBsYWNlV2l0aChlLmNhbGwodGhpcyx0LHIpKX0pKTooInN0cmluZyIhPXR5cGVvZiBlJiYoZT1pKGUpLmRldGFjaCgpKSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5uZXh0U2libGluZyxuPXRoaXMucGFyZW50Tm9kZTtpKHRoaXMpLnJlbW92ZSgpLHQ/aSh0KS5iZWZvcmUoZSk6aShuKS5hcHBlbmQoZSl9KSkpOnRoaXMubGVuZ3RoP3RoaXMucHVzaFN0YWNrKGkoaS5pc0Z1bmN0aW9uKGUpP2UoKTplKSwicmVwbGFjZVdpdGgiLGUpOnRoaXN9LGRldGFjaDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yZW1vdmUoZSwhMCl9LGRvbU1hbmlwOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGEscyxsLHU9ZVswXSxjPVtdO2lmKCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmMz09PWFyZ3VtZW50cy5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmZWUudGVzdCh1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kodGhpcykuZG9tTWFuaXAoZSx0LG4sITApfSkpO2lmKGkuaXNGdW5jdGlvbih1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihyKXt2YXIgbz1pKHRoaXMpO2VbMF09dS5jYWxsKHRoaXMscix0P28uaHRtbCgpOnZvaWQgMCksby5kb21NYW5pcChlLHQsbil9KSk7aWYodGhpc1swXSl7aWYocz11JiZ1LnBhcmVudE5vZGUsbz0xPT09KGE9KHI9aS5zdXBwb3J0LnBhcmVudE5vZGUmJnMmJjExPT09cy5ub2RlVHlwZSYmcy5jaGlsZE5vZGVzLmxlbmd0aD09PXRoaXMubGVuZ3RoP3tmcmFnbWVudDpzfTppLmJ1aWxkRnJhZ21lbnQoZSx0aGlzLGMpKS5mcmFnbWVudCkuY2hpbGROb2Rlcy5sZW5ndGg/YT1hLmZpcnN0Q2hpbGQ6YS5maXJzdENoaWxkKXt0PXQmJmkubm9kZU5hbWUobywidHIiKTtmb3IodmFyIGY9MCxkPXRoaXMubGVuZ3RoLHA9ZC0xO2Y8ZDtmKyspbi5jYWxsKHQ/KGw9dGhpc1tmXSxpLm5vZGVOYW1lKGwsInRhYmxlIik/bC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKVswXXx8bC5hcHBlbmRDaGlsZChsLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGJvZHkiKSk6bCk6dGhpc1tmXSxyLmNhY2hlYWJsZXx8ZD4xJiZmPHA/aS5jbG9uZShhLCEwLCEwKTphKX1jLmxlbmd0aCYmaS5lYWNoKGMsKGZ1bmN0aW9uKGUsdCl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCl9KSl9CnJldHVybiB0aGlzfX0pLGkuYnVpbGRGcmFnbWVudD1mdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGwsdT1lWzBdO3JldHVybiBuJiZuWzBdJiYobD1uWzBdLm93bmVyRG9jdW1lbnR8fG5bMF0pLGwuY3JlYXRlRG9jdW1lbnRGcmFnbWVudHx8KGw9dCksISgxPT09ZS5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmdS5sZW5ndGg8NTEyJiZsPT09dCYmIjwiPT09dS5jaGFyQXQoMCkpfHxRLnRlc3QodSl8fCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmZWUudGVzdCh1KXx8IWkuc3VwcG9ydC5odG1sNUNsb25lJiZaLnRlc3QodSl8fChhPSEwLChzPWkuZnJhZ21lbnRzW3VdKSYmMSE9PXMmJihvPXMpKSxvfHwobz1sLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxpLmNsZWFuKGUsbCxvLHIpKSxhJiYoaS5mcmFnbWVudHNbdV09cz9vOjEpLHtmcmFnbWVudDpvLGNhY2hlYWJsZTphfX0saS5mcmFnbWVudHM9e30saS5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixwcmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRBZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuKXt2YXIgcj1bXSxvPWkobiksYT0xPT09dGhpcy5sZW5ndGgmJnRoaXNbMF0ucGFyZW50Tm9kZTtpZihhJiYxMT09PWEubm9kZVR5cGUmJjE9PT1hLmNoaWxkTm9kZXMubGVuZ3RoJiYxPT09by5sZW5ndGgpcmV0dXJuIG9bdF0odGhpc1swXSksdGhpcztmb3IodmFyIHM9MCxsPW8ubGVuZ3RoO3M8bDtzKyspe3ZhciB1PShzPjA/dGhpcy5jbG9uZSghMCk6dGhpcykuZ2V0KCk7aShvW3NdKVt0XSh1KSxyPXIuY29uY2F0KHUpfXJldHVybiB0aGlzLnB1c2hTdGFjayhyLGUsby5zZWxlY3Rvcil9fSkpLGkuZXh0ZW5kKHtjbG9uZTpmdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGw9aS5zdXBwb3J0Lmh0bWw1Q2xvbmV8fGkuaXNYTUxEb2MoZSl8fCFaLnRlc3QoIjwiK2Uubm9kZU5hbWUrIj4iKT9lLmNsb25lTm9kZSghMCk6ZnVuY3Rpb24oZSl7dmFyIG49dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gcmUuYXBwZW5kQ2hpbGQobiksbi5pbm5lckhUTUw9ZS5vdXRlckhUTUwsbi5maXJzdENoaWxkfShlKTtpZighKGkuc3VwcG9ydC5ub0Nsb25lRXZlbnQmJmkuc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZXx8aS5pc1hNTERvYyhlKSkpZm9yKG9lKGUsbCksbz1hZShlKSxhPWFlKGwpLHM9MDtvW3NdOysrcylhW3NdJiZvZShvW3NdLGFbc10pO2lmKG4mJihpZShlLGwpLHIpKWZvcihvPWFlKGUpLGE9YWUobCkscz0wO29bc107KytzKWllKG9bc10sYVtzXSk7cmV0dXJuIG89YT1udWxsLGx9LGNsZWFuOmZ1bmN0aW9uKGUsbixyLG8pe3ZhciBhLHMsbCx1PVtdO3ZvaWQgMD09PShuPW58fHQpLmNyZWF0ZUVsZW1lbnQmJihuPW4ub3duZXJEb2N1bWVudHx8blswXSYmblswXS5vd25lckRvY3VtZW50fHx0KTtmb3IodmFyIGMsZj0wO251bGwhPShjPWVbZl0pO2YrKylpZigibnVtYmVyIj09dHlwZW9mIGMmJihjKz0iIiksYyl7aWYoInN0cmluZyI9PXR5cGVvZiBjKWlmKEcudGVzdChjKSl7Yz1jLnJlcGxhY2UoVSwiPCQxPjwvJDI+Iik7dmFyIGQscD0oWS5leGVjKGMpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLGg9bmVbcF18fG5lLl9kZWZhdWx0LG09aFswXSxnPW4uY3JlYXRlRWxlbWVudCgiZGl2Iiksdj1yZS5jaGlsZE5vZGVzO2ZvcihuPT09dD9yZS5hcHBlbmRDaGlsZChnKTpSKG4pLmFwcGVuZENoaWxkKGcpLGcuaW5uZXJIVE1MPWhbMV0rYytoWzJdO20tLTspZz1nLmxhc3RDaGlsZDtpZighaS5zdXBwb3J0LnRib2R5KXt2YXIgeT1KLnRlc3QoYyksYj0idGFibGUiIT09cHx8eT8iPHRhYmxlPiIhPT1oWzFdfHx5P1tdOmcuY2hpbGROb2RlczpnLmZpcnN0Q2hpbGQmJmcuZmlyc3RDaGlsZC5jaGlsZE5vZGVzO2ZvcihsPWIubGVuZ3RoLTE7bD49MDstLWwpaS5ub2RlTmFtZShiW2xdLCJ0Ym9keSIpJiYhYltsXS5jaGlsZE5vZGVzLmxlbmd0aCYmYltsXS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGJbbF0pfSFpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2UmJlYudGVzdChjKSYmZy5pbnNlcnRCZWZvcmUobi5jcmVhdGVUZXh0Tm9kZShWLmV4ZWMoYylbMF0pLGcuZmlyc3RDaGlsZCksYz1nLmNoaWxkTm9kZXMsZyYmKGcucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChnKSx2Lmxlbmd0aD4wJiYoZD12W3YubGVuZ3RoLTFdKSYmZC5wYXJlbnROb2RlJiZkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZCkpfWVsc2UgYz1uLmNyZWF0ZVRleHROb2RlKGMpO3ZhciB4O2lmKCFpLnN1cHBvcnQuYXBwZW5kQ2hlY2tlZClpZihjWzBdJiYibnVtYmVyIj09dHlwZW9mKHg9Yy5sZW5ndGgpKWZvcihsPTA7bDx4O2wrKylsZShjW2xdKTtlbHNlIGxlKGMpO2Mubm9kZVR5cGU/dS5wdXNoKGMpOnU9aS5tZXJnZSh1LGMpfWlmKHIpZm9yKGE9ZnVuY3Rpb24oZSl7cmV0dXJuIWUudHlwZXx8dGUudGVzdChlLnR5cGUpfSxmPTA7dVtmXTtmKyspaWYocz11W2ZdLG8mJmkubm9kZU5hbWUocywic2NyaXB0IikmJighcy50eXBlfHx0ZS50ZXN0KHMudHlwZSkpKW8ucHVzaChzLnBhcmVudE5vZGU/cy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHMpOnMpO2Vsc2V7aWYoMT09PXMubm9kZVR5cGUpe3ZhciB3PWkuZ3JlcChzLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxhKTt1LnNwbGljZS5hcHBseSh1LFtmKzEsMF0uY29uY2F0KHcpKX1yLmFwcGVuZENoaWxkKHMpfXJldHVybiB1fSxjbGVhbkRhdGE6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG4scixvPWkuY2FjaGUsYT1pLmV2ZW50LnNwZWNpYWwscz1pLnN1cHBvcnQuZGVsZXRlRXhwYW5kbyxsPTA7bnVsbCE9KHI9ZVtsXSk7bCsrKWlmKCghci5ub2RlTmFtZXx8IWkubm9EYXRhW3Iubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYobj1yW2kuZXhwYW5kb10pKXtpZigodD1vW25dKSYmdC5ldmVudHMpe2Zvcih2YXIgdSBpbiB0LmV2ZW50cylhW3VdP2kuZXZlbnQucmVtb3ZlKHIsdSk6aS5yZW1vdmVFdmVudChyLHUsdC5oYW5kbGUpCjt0LmhhbmRsZSYmKHQuaGFuZGxlLmVsZW09bnVsbCl9cz9kZWxldGUgcltpLmV4cGFuZG9dOnIucmVtb3ZlQXR0cmlidXRlJiZyLnJlbW92ZUF0dHJpYnV0ZShpLmV4cGFuZG8pLGRlbGV0ZSBvW25dfX19KTt2YXIgdWUsY2UsZmUsZGU9L2FscGhhXChbXildKlwpL2kscGU9L29wYWNpdHk9KFteKV0qKS8saGU9LyhbQS1aXXxebXMpL2csbWU9L15bXC0rXT8oPzpcZCpcLik/XGQrJC9pLGdlPS9eLT8oPzpcZCpcLik/XGQrKD8hcHgpW15cZFxzXSskL2ksdmU9L14oW1wtK10pPShbXC0rLlxkZV0rKS8seWU9L15tYXJnaW4vLGJlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSx4ZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdO2Z1bmN0aW9uIHdlKGUsdCxuKXt2YXIgcj0id2lkdGgiPT09dD9lLm9mZnNldFdpZHRoOmUub2Zmc2V0SGVpZ2h0LG89IndpZHRoIj09PXQ/MTowO2lmKHI+MCl7aWYoImJvcmRlciIhPT1uKWZvcig7bzw0O28rPTIpbnx8KHItPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCksIm1hcmdpbiI9PT1uP3IrPXBhcnNlRmxvYXQoaS5jc3MoZSxuK3hlW29dKSl8fDA6ci09cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MDtyZXR1cm4gcisicHgifWlmKCgocj11ZShlLHQpKTwwfHxudWxsPT1yKSYmKHI9ZS5zdHlsZVt0XSksZ2UudGVzdChyKSlyZXR1cm4gcjtpZihyPXBhcnNlRmxvYXQocil8fDAsbilmb3IoO288NDtvKz0yKXIrPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCwicGFkZGluZyIhPT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MCksIm1hcmdpbiI9PT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLG4reGVbb10pKXx8MCk7cmV0dXJuIHIrInB4In1pLmZuLmNzcz1mdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsbil7cmV0dXJuIHZvaWQgMCE9PW4/aS5zdHlsZShlLHQsbik6aS5jc3MoZSx0KX0pLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxpLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPXVlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59cmV0dXJuIGUuc3R5bGUub3BhY2l0eX19fSxjc3NOdW1iZXI6e2ZpbGxPcGFjaXR5OiEwLGZvbnRXZWlnaHQ6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9ycGhhbnM6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6b29tOiEwfSxjc3NQcm9wczp7ZmxvYXQ6aS5zdXBwb3J0LmNzc0Zsb2F0PyJjc3NGbG9hdCI6InN0eWxlRmxvYXQifSxzdHlsZTpmdW5jdGlvbihlLHQsbixyKXtpZihlJiYzIT09ZS5ub2RlVHlwZSYmOCE9PWUubm9kZVR5cGUmJmUuc3R5bGUpe3ZhciBvLGEscz1pLmNhbWVsQ2FzZSh0KSxsPWUuc3R5bGUsdT1pLmNzc0hvb2tzW3NdO2lmKHQ9aS5jc3NQcm9wc1tzXXx8cyx2b2lkIDA9PT1uKXJldHVybiB1JiYiZ2V0ImluIHUmJnZvaWQgMCE9PShvPXUuZ2V0KGUsITEscikpP286bFt0XTtpZighKCJzdHJpbmciPT09KGE9dHlwZW9mIG4pJiYobz12ZS5leGVjKG4pKSYmKG49KyhvWzFdKzEpKitvWzJdK3BhcnNlRmxvYXQoaS5jc3MoZSx0KSksYT0ibnVtYmVyIiksbnVsbD09bnx8Im51bWJlciI9PT1hJiZpc05hTihuKXx8KCJudW1iZXIiIT09YXx8aS5jc3NOdW1iZXJbc118fChuKz0icHgiKSx1JiYic2V0ImluIHUmJnZvaWQgMD09PShuPXUuc2V0KGUsbikpKSkpdHJ5e2xbdF09bn1jYXRjaChlKXt9fX0sY3NzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvO3JldHVybiB0PWkuY2FtZWxDYXNlKHQpLG89aS5jc3NIb29rc1t0XSwiY3NzRmxvYXQiPT09KHQ9aS5jc3NQcm9wc1t0XXx8dCkmJih0PSJmbG9hdCIpLG8mJiJnZXQiaW4gbyYmdm9pZCAwIT09KHI9by5nZXQoZSwhMCxuKSk/cjp1ZT91ZShlLHQpOnZvaWQgMH0sc3dhcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXTtmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn19KSxpLmN1ckNTUz1pLmNzcyx0LmRlZmF1bHRWaWV3JiZ0LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHM9ZS5zdHlsZTtyZXR1cm4gdD10LnJlcGxhY2UoaGUsIi0kMSIpLnRvTG93ZXJDYXNlKCksKHI9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3KSYmKG89ci5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCkpJiYoIiIhPT0obj1vLmdldFByb3BlcnR5VmFsdWUodCkpfHxpLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZSl8fChuPWkuc3R5bGUoZSx0KSkpLCFpLnN1cHBvcnQucGl4ZWxNYXJnaW4mJm8mJnllLnRlc3QodCkmJmdlLnRlc3QobikmJihhPXMud2lkdGgscy53aWR0aD1uLG49by53aWR0aCxzLndpZHRoPWEpLG59KSx0LmRvY3VtZW50RWxlbWVudC5jdXJyZW50U3R5bGUmJihmZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaSxvPWUuY3VycmVudFN0eWxlJiZlLmN1cnJlbnRTdHlsZVt0XSxhPWUuc3R5bGU7cmV0dXJuIG51bGw9PW8mJmEmJihpPWFbdF0pJiYobz1pKSxnZS50ZXN0KG8pJiYobj1hLmxlZnQsKHI9ZS5ydW50aW1lU3R5bGUmJmUucnVudGltZVN0eWxlLmxlZnQpJiYoZS5ydW50aW1lU3R5bGUubGVmdD1lLmN1cnJlbnRTdHlsZS5sZWZ0KSxhLmxlZnQ9ImZvbnRTaXplIj09PXQ/IjFlbSI6byxvPWEucGl4ZWxMZWZ0KyJweCIsYS5sZWZ0PW4sciYmKGUucnVudGltZVN0eWxlLmxlZnQ9cikpLCIiPT09bz8iYXV0byI6b30pLHVlPWNlfHxmZSxpLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLChmdW5jdGlvbihlLHQpe2kuY3NzSG9va3NbdF09e2dldDpmdW5jdGlvbihlLG4scil7aWYobilyZXR1cm4gMCE9PWUub2Zmc2V0V2lkdGg/d2UoZSx0LHIpOmkuc3dhcChlLGJlLChmdW5jdGlvbigpe3JldHVybiB3ZShlLHQscil9KSl9LHNldDpmdW5jdGlvbihlLHQpewpyZXR1cm4gbWUudGVzdCh0KT90KyJweCI6dH19fSkpLGkuc3VwcG9ydC5vcGFjaXR5fHwoaS5jc3NIb29rcy5vcGFjaXR5PXtnZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gcGUudGVzdCgodCYmZS5jdXJyZW50U3R5bGU/ZS5jdXJyZW50U3R5bGUuZmlsdGVyOmUuc3R5bGUuZmlsdGVyKXx8IiIpP3BhcnNlRmxvYXQoUmVnRXhwLiQxKS8xMDArIiI6dD8iMSI6IiJ9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWUuc3R5bGUscj1lLmN1cnJlbnRTdHlsZSxvPWkuaXNOdW1lcmljKHQpPyJhbHBoYShvcGFjaXR5PSIrMTAwKnQrIikiOiIiLGE9ciYmci5maWx0ZXJ8fG4uZmlsdGVyfHwiIjtuLnpvb209MSx0Pj0xJiYiIj09PWkudHJpbShhLnJlcGxhY2UoZGUsIiIpKSYmKG4ucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKSxyJiYhci5maWx0ZXIpfHwobi5maWx0ZXI9ZGUudGVzdChhKT9hLnJlcGxhY2UoZGUsbyk6YSsiICIrbyl9fSksaSgoZnVuY3Rpb24oKXtpLnN1cHBvcnQucmVsaWFibGVNYXJnaW5SaWdodHx8KGkuY3NzSG9va3MubWFyZ2luUmlnaHQ9e2dldDpmdW5jdGlvbihlLHQpe3JldHVybiBpLnN3YXAoZSx7ZGlzcGxheToiaW5saW5lLWJsb2NrIn0sKGZ1bmN0aW9uKCl7cmV0dXJuIHQ/dWUoZSwibWFyZ2luLXJpZ2h0Iik6ZS5zdHlsZS5tYXJnaW5SaWdodH0pKX19KX0pKSxpLmV4cHImJmkuZXhwci5maWx0ZXJzJiYoaS5leHByLmZpbHRlcnMuaGlkZGVuPWZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0V2lkdGgsbj1lLm9mZnNldEhlaWdodDtyZXR1cm4gMD09PXQmJjA9PT1ufHwhaS5zdXBwb3J0LnJlbGlhYmxlSGlkZGVuT2Zmc2V0cyYmIm5vbmUiPT09KGUuc3R5bGUmJmUuc3R5bGUuZGlzcGxheXx8aS5jc3MoZSwiZGlzcGxheSIpKX0saS5leHByLmZpbHRlcnMudmlzaWJsZT1mdW5jdGlvbihlKXtyZXR1cm4haS5leHByLmZpbHRlcnMuaGlkZGVuKGUpfSksaS5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5jc3NIb29rc1tlK3RdPXtleHBhbmQ6ZnVuY3Rpb24obil7dmFyIHIsaT0ic3RyaW5nIj09dHlwZW9mIG4/bi5zcGxpdCgiICIpOltuXSxvPXt9O2ZvcihyPTA7cjw0O3IrKylvW2UreGVbcl0rdF09aVtyXXx8aVtyLTJdfHxpWzBdO3JldHVybiBvfX19KSk7dmFyIFRlLE5lLENlPS8lMjAvZyxTZT0vXFtcXSQvLGtlPS9ccj9cbi9nLEVlPS8jLiokLyxBZT0vXiguKj8pOlsgXHRdKihbXlxyXG5dKilccj8kL2dtLERlPS9eKD86Y29sb3J8ZGF0ZXxkYXRldGltZXxkYXRldGltZS1sb2NhbHxlbWFpbHxoaWRkZW58bW9udGh8bnVtYmVyfHBhc3N3b3JkfHJhbmdlfHNlYXJjaHx0ZWx8dGV4dHx0aW1lfHVybHx3ZWVrKSQvaSxMZT0vXig/OkdFVHxIRUFEKSQvLEZlPS9eXC9cLy8samU9L1w/LyxfZT0vPHNjcmlwdFxiW148XSooPzooPyE8XC9zY3JpcHQ+KTxbXjxdKikqPFwvc2NyaXB0Pi9naSxNZT0vXig/OnNlbGVjdHx0ZXh0YXJlYSkvaSxPZT0vXHMrLyxIZT0vKFs/Jl0pXz1bXiZdKi8sUGU9L14oW1x3XCtcLlwtXSs6KSg/OlwvXC8oW15cLz8jOl0qKSg/OjooXGQrKSk/KT8vLHFlPWkuZm4ubG9hZCxCZT17fSxXZT17fSxJZT1bIiovIl0rWyIqIl07dHJ5e1RlPXIuaHJlZn1jYXRjaChlKXsoVGU9dC5jcmVhdGVFbGVtZW50KCJhIikpLmhyZWY9IiIsVGU9VGUuaHJlZn1mdW5jdGlvbiAkZShlKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZigic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iKiIpLGkuaXNGdW5jdGlvbihuKSlmb3IodmFyIHIsbyxhPXQudG9Mb3dlckNhc2UoKS5zcGxpdChPZSkscz0wLGw9YS5sZW5ndGg7czxsO3MrKylyPWFbc10sKG89L15cKy8udGVzdChyKSkmJihyPXIuc3Vic3RyKDEpfHwiKiIpLChlW3JdPWVbcl18fFtdKVtvPyJ1bnNoaWZ0IjoicHVzaCJdKG4pfX1mdW5jdGlvbiBSZShlLHQsbixyLGksbyl7KG89b3x8e30pW2k9aXx8dC5kYXRhVHlwZXNbMF1dPSEwO2Zvcih2YXIgYSxzPWVbaV0sbD0wLHU9cz9zLmxlbmd0aDowLGM9ZT09PUJlO2w8dSYmKGN8fCFhKTtsKyspInN0cmluZyI9PXR5cGVvZihhPXNbbF0odCxuLHIpKSYmKCFjfHxvW2FdP2E9dm9pZCAwOih0LmRhdGFUeXBlcy51bnNoaWZ0KGEpLGE9UmUoZSx0LG4scixhLG8pKSk7cmV0dXJuIWMmJmF8fG9bIioiXXx8KGE9UmUoZSx0LG4sciwiKiIsbykpLGF9ZnVuY3Rpb24gWGUoZSx0KXt2YXIgbixyLG89aS5hamF4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChvW25dP2U6cnx8KHI9e30pKVtuXT10W25dKTtyJiZpLmV4dGVuZCghMCxlLHIpfWZ1bmN0aW9uIHplKGUsdCxuLHIpe2lmKGkuaXNBcnJheSh0KSlpLmVhY2godCwoZnVuY3Rpb24odCxpKXtufHxTZS50ZXN0KGUpP3IoZSxpKTp6ZShlKyJbIisoIm9iamVjdCI9PXR5cGVvZiBpP3Q6IiIpKyJdIixpLG4scil9KSk7ZWxzZSBpZihufHwib2JqZWN0IiE9PWkudHlwZSh0KSlyKGUsdCk7ZWxzZSBmb3IodmFyIG8gaW4gdCl6ZShlKyJbIitvKyJdIix0W29dLG4scil9TmU9UGUuZXhlYyhUZS50b0xvd2VyQ2FzZSgpKXx8W10saS5mbi5leHRlbmQoe2xvYWQ6ZnVuY3Rpb24oZSx0LG4pe2lmKCJzdHJpbmciIT10eXBlb2YgZSYmcWUpcmV0dXJuIHFlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtpZighdGhpcy5sZW5ndGgpcmV0dXJuIHRoaXM7dmFyIHI9ZS5pbmRleE9mKCIgIik7aWYocj49MCl7dmFyIG89ZS5zbGljZShyLGUubGVuZ3RoKTtlPWUuc2xpY2UoMCxyKX12YXIgYT0iR0VUIjt0JiYoaS5pc0Z1bmN0aW9uKHQpPyhuPXQsdD12b2lkIDApOiJvYmplY3QiPT10eXBlb2YgdCYmKHQ9aS5wYXJhbSh0LGkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxhPSJQT1NUIikpO3ZhciBzPXRoaXM7cmV0dXJuIGkuYWpheCh7dXJsOmUsdHlwZTphLGRhdGFUeXBlOiJodG1sIixkYXRhOnQsY29tcGxldGU6ZnVuY3Rpb24oZSx0LHIpe3I9ZS5yZXNwb25zZVRleHQsZS5pc1Jlc29sdmVkKCkmJihlLmRvbmUoKGZ1bmN0aW9uKGUpe3I9ZX0pKSxzLmh0bWwobz9pKCI8ZGl2PiIpLmFwcGVuZChyLnJlcGxhY2UoX2UsIiIpKS5maW5kKG8pOnIpKSwKbiYmcy5lYWNoKG4sW3IsdCxlXSl9fSksdGhpc30sc2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIGkucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudHM/aS5tYWtlQXJyYXkodGhpcy5lbGVtZW50cyk6dGhpc30pKS5maWx0ZXIoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZSYmIXRoaXMuZGlzYWJsZWQmJih0aGlzLmNoZWNrZWR8fE1lLnRlc3QodGhpcy5ub2RlTmFtZSl8fERlLnRlc3QodGhpcy50eXBlKSl9KSkubWFwKChmdW5jdGlvbihlLHQpe3ZhciBuPWkodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDppLmlzQXJyYXkobik/aS5tYXAobiwoZnVuY3Rpb24oZSxuKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFsdWU6ZS5yZXBsYWNlKGtlLCJcclxuIil9fSkpOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2Uoa2UsIlxyXG4iKX19KSkuZ2V0KCl9fSksaS5lYWNoKCJhamF4U3RhcnQgYWpheFN0b3AgYWpheENvbXBsZXRlIGFqYXhFcnJvciBhamF4U3VjY2VzcyBhamF4U2VuZCIuc3BsaXQoIiAiKSwoZnVuY3Rpb24oZSx0KXtpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9uKHQsZSl9fSkpLGkuZWFjaChbImdldCIsInBvc3QiXSwoZnVuY3Rpb24oZSx0KXtpW3RdPWZ1bmN0aW9uKGUsbixyLG8pe3JldHVybiBpLmlzRnVuY3Rpb24obikmJihvPW98fHIscj1uLG49dm9pZCAwKSxpLmFqYXgoe3R5cGU6dCx1cmw6ZSxkYXRhOm4sc3VjY2VzczpyLGRhdGFUeXBlOm99KX19KSksaS5leHRlbmQoe2dldFNjcmlwdDpmdW5jdGlvbihlLHQpe3JldHVybiBpLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX0sZ2V0SlNPTjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZ2V0KGUsdCxuLCJqc29uIil9LGFqYXhTZXR1cDpmdW5jdGlvbihlLHQpe3JldHVybiB0P1hlKGUsaS5hamF4U2V0dGluZ3MpOih0PWUsZT1pLmFqYXhTZXR0aW5ncyksWGUoZSx0KSxlfSxhamF4U2V0dGluZ3M6e3VybDpUZSxpc0xvY2FsOi9eKD86YWJvdXR8YXBwfGFwcFwtc3RvcmFnZXwuK1wtZXh0ZW5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChOZVsxXSksZ2xvYmFsOiEwLHR5cGU6IkdFVCIsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsYWNjZXB0czp7eG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixodG1sOiJ0ZXh0L2h0bWwiLHRleHQ6InRleHQvcGxhaW4iLGpzb246ImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCIsIioiOkllfSxjb250ZW50czp7eG1sOi94bWwvLGh0bWw6L2h0bWwvLGpzb246L2pzb24vfSxyZXNwb25zZUZpZWxkczp7eG1sOiJyZXNwb25zZVhNTCIsdGV4dDoicmVzcG9uc2VUZXh0In0sY29udmVydGVyczp7IiogdGV4dCI6d2luZG93LlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjppLnBhcnNlSlNPTiwidGV4dCB4bWwiOmkucGFyc2VYTUx9LGZsYXRPcHRpb25zOntjb250ZXh0OiEwLHVybDohMH19LGFqYXhQcmVmaWx0ZXI6JGUoQmUpLGFqYXhUcmFuc3BvcnQ6JGUoV2UpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIG4scixvLGEscyxsLHUsYyxmPWkuYWpheFNldHVwKHt9LHQpLGQ9Zi5jb250ZXh0fHxmLHA9ZCE9PWYmJihkLm5vZGVUeXBlfHxkIGluc3RhbmNlb2YgaSk/aShkKTppLmV2ZW50LGg9aS5EZWZlcnJlZCgpLG09aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksZz1mLnN0YXR1c0NvZGV8fHt9LHY9e30seT17fSxiPTAseD17cmVhZHlTdGF0ZTowLHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtpZighYil7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO2U9eVtuXT15W25dfHxlLHZbZV09dH1yZXR1cm4gdGhpc30sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIDI9PT1iP3I6bnVsbH0sZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoMj09PWIpe2lmKCFvKWZvcihvPXt9O3Q9QWUuZXhlYyhyKTspb1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl07dD1vW2UudG9Mb3dlckNhc2UoKV19cmV0dXJuIHZvaWQgMD09PXQ/bnVsbDp0fSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGUpe3JldHVybiBifHwoZi5taW1lVHlwZT1lKSx0aGlzfSxhYm9ydDpmdW5jdGlvbihlKXtyZXR1cm4gZT1lfHwiYWJvcnQiLGEmJmEuYWJvcnQoZSksdygwLGUpLHRoaXN9fTtmdW5jdGlvbiB3KGUsdCxvLGwpe2lmKDIhPT1iKXtiPTIscyYmY2xlYXJUaW1lb3V0KHMpLGE9dm9pZCAwLHI9bHx8IiIseC5yZWFkeVN0YXRlPWU+MD80OjA7dmFyIGMsdix5LHcsVCxOPXQsQz1vP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsbD1lLmRhdGFUeXBlcyx1PWUucmVzcG9uc2VGaWVsZHM7Zm9yKGkgaW4gdSlpIGluIG4mJih0W3VbaV1dPW5baV0pO2Zvcig7IioiPT09bFswXTspbC5zaGlmdCgpLHZvaWQgMD09PXImJihyPWUubWltZVR5cGV8fHQuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtdHlwZSIpKTtpZihyKWZvcihpIGluIHMpaWYoc1tpXSYmc1tpXS50ZXN0KHIpKXtsLnVuc2hpZnQoaSk7YnJlYWt9aWYobFswXWluIG4pbz1sWzBdO2Vsc2V7Zm9yKGkgaW4gbil7aWYoIWxbMF18fGUuY29udmVydGVyc1tpKyIgIitsWzBdXSl7bz1pO2JyZWFrfWF8fChhPWkpfW89b3x8YX1pZihvKXJldHVybiBvIT09bFswXSYmbC51bnNoaWZ0KG8pLG5bb119KGYseCxvKTp2b2lkIDA7aWYoZT49MjAwJiZlPDMwMHx8MzA0PT09ZSlpZihmLmlmTW9kaWZpZWQmJigodz14LmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoaS5sYXN0TW9kaWZpZWRbbl09dyksKFQ9eC5nZXRSZXNwb25zZUhlYWRlcigiRXRhZyIpKSYmKGkuZXRhZ1tuXT1UKSksMzA0PT09ZSlOPSJub3Rtb2RpZmllZCIsYz0hMDtlbHNlIHRyeXt2PWZ1bmN0aW9uKGUsdCl7CmUuZGF0YUZpbHRlciYmKHQ9ZS5kYXRhRmlsdGVyKHQsZS5kYXRhVHlwZSkpO3ZhciBuLHIsbyxhLHMsbCx1LGMsZj1lLmRhdGFUeXBlcyxkPXt9LHA9Zi5sZW5ndGgsaD1mWzBdO2ZvcihuPTE7bjxwO24rKyl7aWYoMT09PW4pZm9yKHIgaW4gZS5jb252ZXJ0ZXJzKSJzdHJpbmciPT10eXBlb2YgciYmKGRbci50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbcl0pO2lmKGE9aCwiKiI9PT0oaD1mW25dKSloPWE7ZWxzZSBpZigiKiIhPT1hJiZhIT09aCl7aWYoIShsPWRbcz1hKyIgIitoXXx8ZFsiKiAiK2hdKSlmb3IodSBpbiBjPXZvaWQgMCxkKWlmKCgobz11LnNwbGl0KCIgIikpWzBdPT09YXx8IioiPT09b1swXSkmJihjPWRbb1sxXSsiICIraF0pKXshMD09PSh1PWRbdV0pP2w9YzohMD09PWMmJihsPXUpO2JyZWFrfWx8fGN8fGkuZXJyb3IoIk5vIGNvbnZlcnNpb24gZnJvbSAiK3MucmVwbGFjZSgiICIsIiB0byAiKSksITAhPT1sJiYodD1sP2wodCk6Yyh1KHQpKSl9fXJldHVybiB0fShmLEMpLE49InN1Y2Nlc3MiLGM9ITB9Y2F0Y2goZSl7Tj0icGFyc2VyZXJyb3IiLHk9ZX1lbHNlIHk9TixOJiYhZXx8KE49ImVycm9yIixlPDAmJihlPTApKTt4LnN0YXR1cz1lLHguc3RhdHVzVGV4dD0iIisodHx8TiksYz9oLnJlc29sdmVXaXRoKGQsW3YsTix4XSk6aC5yZWplY3RXaXRoKGQsW3gsTix5XSkseC5zdGF0dXNDb2RlKGcpLGc9dm9pZCAwLHUmJnAudHJpZ2dlcigiYWpheCIrKGM/IlN1Y2Nlc3MiOiJFcnJvciIpLFt4LGYsYz92OnldKSxtLmZpcmVXaXRoKGQsW3gsTl0pLHUmJihwLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3gsZl0pLC0taS5hY3RpdmV8fGkuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSl9fWlmKGgucHJvbWlzZSh4KSx4LnN1Y2Nlc3M9eC5kb25lLHguZXJyb3I9eC5mYWlsLHguY29tcGxldGU9bS5hZGQseC5zdGF0dXNDb2RlPWZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUpaWYoYjwyKWZvcih0IGluIGUpZ1t0XT1bZ1t0XSxlW3RdXTtlbHNlIHQ9ZVt4LnN0YXR1c10seC50aGVuKHQsdCk7cmV0dXJuIHRoaXN9LGYudXJsPSgoZXx8Zi51cmwpKyIiKS5yZXBsYWNlKEVlLCIiKS5yZXBsYWNlKEZlLE5lWzFdKyIvLyIpLGYuZGF0YVR5cGVzPWkudHJpbShmLmRhdGFUeXBlfHwiKiIpLnRvTG93ZXJDYXNlKCkuc3BsaXQoT2UpLG51bGw9PWYuY3Jvc3NEb21haW4mJihsPVBlLmV4ZWMoZi51cmwudG9Mb3dlckNhc2UoKSksZi5jcm9zc0RvbWFpbj0hKCFsfHxsWzFdPT1OZVsxXSYmbFsyXT09TmVbMl0mJihsWzNdfHwoImh0dHA6Ij09PWxbMV0/ODA6NDQzKSk9PShOZVszXXx8KCJodHRwOiI9PT1OZVsxXT84MDo0NDMpKSkpLGYuZGF0YSYmZi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBmLmRhdGEmJihmLmRhdGE9aS5wYXJhbShmLmRhdGEsZi50cmFkaXRpb25hbCkpLFJlKEJlLGYsdCx4KSwyPT09YilyZXR1cm4hMTtpZih1PWYuZ2xvYmFsLGYudHlwZT1mLnR5cGUudG9VcHBlckNhc2UoKSxmLmhhc0NvbnRlbnQ9IUxlLnRlc3QoZi50eXBlKSx1JiYwPT1pLmFjdGl2ZSsrJiZpLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLCFmLmhhc0NvbnRlbnQmJihmLmRhdGEmJihmLnVybCs9KGplLnRlc3QoZi51cmwpPyImIjoiPyIpK2YuZGF0YSxkZWxldGUgZi5kYXRhKSxuPWYudXJsLCExPT09Zi5jYWNoZSkpe3ZhciBUPWkubm93KCksTj1mLnVybC5yZXBsYWNlKEhlLCIkMV89IitUKTtmLnVybD1OKyhOPT09Zi51cmw/KGplLnRlc3QoZi51cmwpPyImIjoiPyIpKyJfPSIrVDoiIil9Zm9yKGMgaW4oZi5kYXRhJiZmLmhhc0NvbnRlbnQmJiExIT09Zi5jb250ZW50VHlwZXx8dC5jb250ZW50VHlwZSkmJnguc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIixmLmNvbnRlbnRUeXBlKSxmLmlmTW9kaWZpZWQmJihuPW58fGYudXJsLGkubGFzdE1vZGlmaWVkW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixpLmxhc3RNb2RpZmllZFtuXSksaS5ldGFnW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLGkuZXRhZ1tuXSkpLHguc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixmLmRhdGFUeXBlc1swXSYmZi5hY2NlcHRzW2YuZGF0YVR5cGVzWzBdXT9mLmFjY2VwdHNbZi5kYXRhVHlwZXNbMF1dKygiKiIhPT1mLmRhdGFUeXBlc1swXT8iLCAiK0llKyI7IHE9MC4wMSI6IiIpOmYuYWNjZXB0c1siKiJdKSxmLmhlYWRlcnMpeC5zZXRSZXF1ZXN0SGVhZGVyKGMsZi5oZWFkZXJzW2NdKTtpZihmLmJlZm9yZVNlbmQmJighMT09PWYuYmVmb3JlU2VuZC5jYWxsKGQseCxmKXx8Mj09PWIpKXJldHVybiB4LmFib3J0KCksITE7Zm9yKGMgaW57c3VjY2VzczoxLGVycm9yOjEsY29tcGxldGU6MX0peFtjXShmW2NdKTtpZihhPVJlKFdlLGYsdCx4KSl7eC5yZWFkeVN0YXRlPTEsdSYmcC50cmlnZ2VyKCJhamF4U2VuZCIsW3gsZl0pLGYuYXN5bmMmJmYudGltZW91dD4wJiYocz1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3guYWJvcnQoInRpbWVvdXQiKX0pLGYudGltZW91dCkpO3RyeXtiPTEsYS5zZW5kKHYsdyl9Y2F0Y2goZSl7aWYoIShiPDIpKXRocm93IGU7dygtMSxlKX19ZWxzZSB3KC0xLCJObyBUcmFuc3BvcnQiKTtyZXR1cm4geH0scGFyYW06ZnVuY3Rpb24oZSx0KXt2YXIgbj1bXSxyPWZ1bmN0aW9uKGUsdCl7dD1pLmlzRnVuY3Rpb24odCk/dCgpOnQsbltuLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQodCl9O2lmKHZvaWQgMD09PXQmJih0PWkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxpLmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhaS5pc1BsYWluT2JqZWN0KGUpKWkuZWFjaChlLChmdW5jdGlvbigpe3IodGhpcy5uYW1lLHRoaXMudmFsdWUpfSkpO2Vsc2UgZm9yKHZhciBvIGluIGUpemUobyxlW29dLHQscik7cmV0dXJuIG4uam9pbigiJiIpLnJlcGxhY2UoQ2UsIisiKX19KSxpLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e319KTt2YXIgVmUsVWUsWWU9ISF3aW5kb3cuQWN0aXZlWE9iamVjdCYmZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gVmUpVmVbZV0oMCwxKX0sSmU9MAo7ZnVuY3Rpb24gR2UoKXt0cnl7cmV0dXJuIG5ldyB3aW5kb3cuWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fX1pLmFqYXhTZXR0aW5ncy54aHI9d2luZG93LkFjdGl2ZVhPYmplY3Q/ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc0xvY2FsJiZHZSgpfHxmdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IHdpbmRvdy5BY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQuWE1MSFRUUCIpfWNhdGNoKGUpe319KCl9OkdlLFVlPWkuYWpheFNldHRpbmdzLnhocigpLGkuZXh0ZW5kKGkuc3VwcG9ydCx7YWpheDohIVVlLGNvcnM6ISFVZSYmIndpdGhDcmVkZW50aWFscyJpbiBVZX0pLGkuc3VwcG9ydC5hamF4JiZpLmFqYXhUcmFuc3BvcnQoKGZ1bmN0aW9uKGUpe3ZhciB0O2lmKCFlLmNyb3NzRG9tYWlufHxpLnN1cHBvcnQuY29ycylyZXR1cm57c2VuZDpmdW5jdGlvbihuLHIpe3ZhciBvLGEscz1lLnhocigpO2lmKGUudXNlcm5hbWU/cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jLGUudXNlcm5hbWUsZS5wYXNzd29yZCk6cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jKSxlLnhockZpZWxkcylmb3IoYSBpbiBlLnhockZpZWxkcylzW2FdPWUueGhyRmllbGRzW2FdO2UubWltZVR5cGUmJnMub3ZlcnJpZGVNaW1lVHlwZSYmcy5vdmVycmlkZU1pbWVUeXBlKGUubWltZVR5cGUpLGUuY3Jvc3NEb21haW58fG5bIlgtUmVxdWVzdGVkLVdpdGgiXXx8KG5bIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTt0cnl7Zm9yKGEgaW4gbilzLnNldFJlcXVlc3RIZWFkZXIoYSxuW2FdKX1jYXRjaChlKXt9cy5zZW5kKGUuaGFzQ29udGVudCYmZS5kYXRhfHxudWxsKSx0PWZ1bmN0aW9uKG4sYSl7dmFyIGwsdSxjLGYsZDt0cnl7aWYodCYmKGF8fDQ9PT1zLnJlYWR5U3RhdGUpKWlmKHQ9dm9pZCAwLG8mJihzLm9ucmVhZHlzdGF0ZWNoYW5nZT1pLm5vb3AsWWUmJmRlbGV0ZSBWZVtvXSksYSk0IT09cy5yZWFkeVN0YXRlJiZzLmFib3J0KCk7ZWxzZXtsPXMuc3RhdHVzLGM9cy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSxmPXt9LChkPXMucmVzcG9uc2VYTUwpJiZkLmRvY3VtZW50RWxlbWVudCYmKGYueG1sPWQpO3RyeXtmLnRleHQ9cy5yZXNwb25zZVRleHR9Y2F0Y2gobil7fXRyeXt1PXMuc3RhdHVzVGV4dH1jYXRjaChlKXt1PSIifWx8fCFlLmlzTG9jYWx8fGUuY3Jvc3NEb21haW4/MTIyMz09PWwmJihsPTIwNCk6bD1mLnRleHQ/MjAwOjQwNH19Y2F0Y2goZSl7YXx8cigtMSxlKX1mJiZyKGwsdSxmLGMpfSxlLmFzeW5jJiY0IT09cy5yZWFkeVN0YXRlPyhvPSsrSmUsWWUmJihWZXx8KFZlPXt9LGkod2luZG93KS51bmxvYWQoWWUpKSxWZVtvXT10KSxzLm9ucmVhZHlzdGF0ZWNoYW5nZT10KTp0KCl9LGFib3J0OmZ1bmN0aW9uKCl7dCYmdCgwLDEpfX19KSk7dmFyIEtlLFFlLFplLGV0LHR0PXt9LG50PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxydD0vXihbK1wtXT0pPyhbXGQrLlwtXSspKFthLXolXSopJC9pLGl0PVtbImhlaWdodCIsIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSIsInBhZGRpbmdUb3AiLCJwYWRkaW5nQm90dG9tIl0sWyJ3aWR0aCIsIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCIsInBhZGRpbmdMZWZ0IiwicGFkZGluZ1JpZ2h0Il0sWyJvcGFjaXR5Il1dO2Z1bmN0aW9uIG90KCl7cmV0dXJuIHNldFRpbWVvdXQoYXQsMCksZXQ9aS5ub3coKX1mdW5jdGlvbiBhdCgpe2V0PXZvaWQgMH1mdW5jdGlvbiBzdChlLHQpe3ZhciBuPXt9O3JldHVybiBpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0LnNsaWNlKDAsdCkpLChmdW5jdGlvbigpe25bdGhpc109ZX0pKSxufWZ1bmN0aW9uIGx0KGUpe2lmKCF0dFtlXSl7dmFyIG49dC5ib2R5LHI9aSgiPCIrZSsiPiIpLmFwcGVuZFRvKG4pLG89ci5jc3MoImRpc3BsYXkiKTtyLnJlbW92ZSgpLCJub25lIiE9PW8mJiIiIT09b3x8KEtlfHwoKEtlPXQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIikpLmZyYW1lQm9yZGVyPUtlLndpZHRoPUtlLmhlaWdodD0wKSxuLmFwcGVuZENoaWxkKEtlKSxRZSYmS2UuY3JlYXRlRWxlbWVudHx8KChRZT0oS2UuY29udGVudFdpbmRvd3x8S2UuY29udGVudERvY3VtZW50KS5kb2N1bWVudCkud3JpdGUoKGkuc3VwcG9ydC5ib3hNb2RlbD8iPCFkb2N0eXBlIGh0bWw+IjoiIikrIjxodG1sPjxib2R5PiIpLFFlLmNsb3NlKCkpLHI9UWUuY3JlYXRlRWxlbWVudChlKSxRZS5ib2R5LmFwcGVuZENoaWxkKHIpLG89aS5jc3MociwiZGlzcGxheSIpLG4ucmVtb3ZlQ2hpbGQoS2UpKSx0dFtlXT1vfXJldHVybiB0dFtlXX1pLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbihlLHQsbil7dmFyIHIsbztpZihlfHwwPT09ZSlyZXR1cm4gdGhpcy5hbmltYXRlKHN0KCJzaG93IiwzKSxlLHQsbik7Zm9yKHZhciBhPTAscz10aGlzLmxlbmd0aDthPHM7YSsrKShyPXRoaXNbYV0pLnN0eWxlJiYobz1yLnN0eWxlLmRpc3BsYXksaS5fZGF0YShyLCJvbGRkaXNwbGF5Iil8fCJub25lIiE9PW98fChvPXIuc3R5bGUuZGlzcGxheT0iIiksKCIiPT09byYmIm5vbmUiPT09aS5jc3MociwiZGlzcGxheSIpfHwhaS5jb250YWlucyhyLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHIpKSYmaS5fZGF0YShyLCJvbGRkaXNwbGF5IixsdChyLm5vZGVOYW1lKSkpO2ZvcihhPTA7YTxzO2ErKykocj10aGlzW2FdKS5zdHlsZSYmKCIiIT09KG89ci5zdHlsZS5kaXNwbGF5KSYmIm5vbmUiIT09b3x8KHIuc3R5bGUuZGlzcGxheT1pLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8IiIpKTtyZXR1cm4gdGhpc30saGlkZTpmdW5jdGlvbihlLHQsbil7aWYoZXx8MD09PWUpcmV0dXJuIHRoaXMuYW5pbWF0ZShzdCgiaGlkZSIsMyksZSx0LG4pO2Zvcih2YXIgcixvLGE9MCxzPXRoaXMubGVuZ3RoO2E8czthKyspKHI9dGhpc1thXSkuc3R5bGUmJigibm9uZSI9PT0obz1pLmNzcyhyLCJkaXNwbGF5IikpfHxpLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8aS5fZGF0YShyLCJvbGRkaXNwbGF5IixvKSk7Zm9yKGE9MDthPHM7YSsrKXRoaXNbYV0uc3R5bGUmJih0aGlzW2FdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKTtyZXR1cm4gdGhpc30sX3RvZ2dsZTppLmZuLnRvZ2dsZSwKdG9nZ2xlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj0iYm9vbGVhbiI9PXR5cGVvZiBlO3JldHVybiBpLmlzRnVuY3Rpb24oZSkmJmkuaXNGdW5jdGlvbih0KT90aGlzLl90b2dnbGUuYXBwbHkodGhpcyxhcmd1bWVudHMpOm51bGw9PWV8fHI/dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PXI/ZTppKHRoaXMpLmlzKCI6aGlkZGVuIik7aSh0aGlzKVt0PyJzaG93IjoiaGlkZSJdKCl9KSk6dGhpcy5hbmltYXRlKHN0KCJ0b2dnbGUiLDMpLGUsdCxuKSx0aGlzfSxmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKCI6aGlkZGVuIikuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1hdGU6ZnVuY3Rpb24oZSx0LG4scil7dmFyIG89aS5zcGVlZCh0LG4scik7aWYoaS5pc0VtcHR5T2JqZWN0KGUpKXJldHVybiB0aGlzLmVhY2goby5jb21wbGV0ZSxbITFdKTtmdW5jdGlvbiBhKCl7ITE9PT1vLnF1ZXVlJiZpLl9tYXJrKHRoaXMpO3ZhciB0LG4scixhLHMsbCx1LGMsZixkLHAsaD1pLmV4dGVuZCh7fSxvKSxtPTE9PT10aGlzLm5vZGVUeXBlLGc9bSYmaSh0aGlzKS5pcygiOmhpZGRlbiIpO2ZvcihyIGluIGguYW5pbWF0ZWRQcm9wZXJ0aWVzPXt9LGUpaWYociE9PSh0PWkuY2FtZWxDYXNlKHIpKSYmKGVbdF09ZVtyXSxkZWxldGUgZVtyXSksKHM9aS5jc3NIb29rc1t0XSkmJiJleHBhbmQiaW4gcylmb3IociBpbiBsPXMuZXhwYW5kKGVbdF0pLGRlbGV0ZSBlW3RdLGwpciBpbiBlfHwoZVtyXT1sW3JdKTtmb3IodCBpbiBlKXtpZihuPWVbdF0saS5pc0FycmF5KG4pPyhoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1uWzFdLG49ZVt0XT1uWzBdKTpoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1oLnNwZWNpYWxFYXNpbmcmJmguc3BlY2lhbEVhc2luZ1t0XXx8aC5lYXNpbmd8fCJzd2luZyIsImhpZGUiPT09biYmZ3x8InNob3ciPT09biYmIWcpcmV0dXJuIGguY29tcGxldGUuY2FsbCh0aGlzKTshbXx8ImhlaWdodCIhPT10JiYid2lkdGgiIT09dHx8KGgub3ZlcmZsb3c9W3RoaXMuc3R5bGUub3ZlcmZsb3csdGhpcy5zdHlsZS5vdmVyZmxvd1gsdGhpcy5zdHlsZS5vdmVyZmxvd1ldLCJpbmxpbmUiPT09aS5jc3ModGhpcywiZGlzcGxheSIpJiYibm9uZSI9PT1pLmNzcyh0aGlzLCJmbG9hdCIpJiYoaS5zdXBwb3J0LmlubGluZUJsb2NrTmVlZHNMYXlvdXQmJiJpbmxpbmUiIT09bHQodGhpcy5ub2RlTmFtZSk/dGhpcy5zdHlsZS56b29tPTE6dGhpcy5zdHlsZS5kaXNwbGF5PSJpbmxpbmUtYmxvY2siKSl9Zm9yKHIgaW4gbnVsbCE9aC5vdmVyZmxvdyYmKHRoaXMuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIpLGUpYT1uZXcgaS5meCh0aGlzLGgsciksbj1lW3JdLG50LnRlc3Qobik/KHA9aS5fZGF0YSh0aGlzLCJ0b2dnbGUiK3IpfHwoInRvZ2dsZSI9PT1uP2c/InNob3ciOiJoaWRlIjowKSk/KGkuX2RhdGEodGhpcywidG9nZ2xlIityLCJzaG93Ij09PXA/ImhpZGUiOiJzaG93IiksYVtwXSgpKTphW25dKCk6KHU9cnQuZXhlYyhuKSxjPWEuY3VyKCksdT8oZj1wYXJzZUZsb2F0KHVbMl0pLCJweCIhPT0oZD11WzNdfHwoaS5jc3NOdW1iZXJbcl0/IiI6InB4IikpJiYoaS5zdHlsZSh0aGlzLHIsKGZ8fDEpK2QpLGM9KGZ8fDEpL2EuY3VyKCkqYyxpLnN0eWxlKHRoaXMscixjK2QpKSx1WzFdJiYoZj0oIi09Ij09PXVbMV0/LTE6MSkqZitjKSxhLmN1c3RvbShjLGYsZCkpOmEuY3VzdG9tKGMsbiwiIikpO3JldHVybiEwfXJldHVybiBlPWkuZXh0ZW5kKHt9LGUpLCExPT09by5xdWV1ZT90aGlzLmVhY2goYSk6dGhpcy5xdWV1ZShvLnF1ZXVlLGEpfSxzdG9wOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGUmJihuPXQsdD1lLGU9dm9pZCAwKSx0JiYhMSE9PWUmJnRoaXMucXVldWUoZXx8ImZ4IixbXSksdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0LHI9ITEsbz1pLnRpbWVycyxhPWkuX2RhdGEodGhpcyk7ZnVuY3Rpb24gcyhlLHQscil7dmFyIG89dFtyXTtpLnJlbW92ZURhdGEoZSxyLCEwKSxvLnN0b3Aobil9aWYobnx8aS5fdW5tYXJrKCEwLHRoaXMpLG51bGw9PWUpZm9yKHQgaW4gYSlhW3RdJiZhW3RdLnN0b3AmJnQuaW5kZXhPZigiLnJ1biIpPT09dC5sZW5ndGgtNCYmcyh0aGlzLGEsdCk7ZWxzZSBhW3Q9ZSsiLnJ1biJdJiZhW3RdLnN0b3AmJnModGhpcyxhLHQpO2Zvcih0PW8ubGVuZ3RoO3QtLTspb1t0XS5lbGVtIT09dGhpc3x8bnVsbCE9ZSYmb1t0XS5xdWV1ZSE9PWV8fChuP29bdF0oITApOm9bdF0uc2F2ZVN0YXRlKCkscj0hMCxvLnNwbGljZSh0LDEpKTtuJiZyfHxpLmRlcXVldWUodGhpcyxlKX0pKX19KSxpLmVhY2goe3NsaWRlRG93bjpzdCgic2hvdyIsMSksc2xpZGVVcDpzdCgiaGlkZSIsMSksc2xpZGVUb2dnbGU6c3QoInRvZ2dsZSIsMSksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSwoZnVuY3Rpb24oZSx0KXtpLmZuW2VdPWZ1bmN0aW9uKGUsbixyKXtyZXR1cm4gdGhpcy5hbmltYXRlKHQsZSxuLHIpfX0pKSxpLmV4dGVuZCh7c3BlZWQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT9pLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fGkuaXNGdW5jdGlvbihlKSYmZSxkdXJhdGlvbjplLGVhc2luZzpuJiZ0fHx0JiYhaS5pc0Z1bmN0aW9uKHQpJiZ0fTtyZXR1cm4gci5kdXJhdGlvbj1pLmZ4Lm9mZj8wOiJudW1iZXIiPT10eXBlb2Ygci5kdXJhdGlvbj9yLmR1cmF0aW9uOnIuZHVyYXRpb24gaW4gaS5meC5zcGVlZHM/aS5meC5zcGVlZHNbci5kdXJhdGlvbl06aS5meC5zcGVlZHMuX2RlZmF1bHQsbnVsbCE9ci5xdWV1ZSYmITAhPT1yLnF1ZXVlfHwoci5xdWV1ZT0iZngiKSxyLm9sZD1yLmNvbXBsZXRlLHIuY29tcGxldGU9ZnVuY3Rpb24oZSl7aS5pc0Z1bmN0aW9uKHIub2xkKSYmci5vbGQuY2FsbCh0aGlzKSxyLnF1ZXVlP2kuZGVxdWV1ZSh0aGlzLHIucXVldWUpOiExIT09ZSYmaS5fdW5tYXJrKHRoaXMpfSxyfSxlYXNpbmc6ewpsaW5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi1NYXRoLmNvcyhlKk1hdGguUEkpLzIrLjV9fSx0aW1lcnM6W10sZng6ZnVuY3Rpb24oZSx0LG4pe3RoaXMub3B0aW9ucz10LHRoaXMuZWxlbT1lLHRoaXMucHJvcD1uLHQub3JpZz10Lm9yaWd8fHt9fX0pLGkuZngucHJvdG90eXBlPXt1cGRhdGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksKGkuZnguc3RlcFt0aGlzLnByb3BdfHxpLmZ4LnN0ZXAuX2RlZmF1bHQpKHRoaXMpfSxjdXI6ZnVuY3Rpb24oKXtpZihudWxsIT10aGlzLmVsZW1bdGhpcy5wcm9wXSYmKCF0aGlzLmVsZW0uc3R5bGV8fG51bGw9PXRoaXMuZWxlbS5zdHlsZVt0aGlzLnByb3BdKSlyZXR1cm4gdGhpcy5lbGVtW3RoaXMucHJvcF07dmFyIGUsdD1pLmNzcyh0aGlzLmVsZW0sdGhpcy5wcm9wKTtyZXR1cm4gaXNOYU4oZT1wYXJzZUZsb2F0KHQpKT90JiYiYXV0byIhPT10P3Q6MDplfSxjdXN0b206ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXMsbz1pLmZ4O2Z1bmN0aW9uIGEoZSl7cmV0dXJuIHIuc3RlcChlKX10aGlzLnN0YXJ0VGltZT1ldHx8b3QoKSx0aGlzLmVuZD10LHRoaXMubm93PXRoaXMuc3RhcnQ9ZSx0aGlzLnBvcz10aGlzLnN0YXRlPTAsdGhpcy51bml0PW58fHRoaXMudW5pdHx8KGkuY3NzTnVtYmVyW3RoaXMucHJvcF0/IiI6InB4IiksYS5xdWV1ZT10aGlzLm9wdGlvbnMucXVldWUsYS5lbGVtPXRoaXMuZWxlbSxhLnNhdmVTdGF0ZT1mdW5jdGlvbigpe3ZvaWQgMD09PWkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCkmJihyLm9wdGlvbnMuaGlkZT9pLl9kYXRhKHIuZWxlbSwiZnhzaG93IityLnByb3Asci5zdGFydCk6ci5vcHRpb25zLnNob3cmJmkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCxyLmVuZCkpfSxhKCkmJmkudGltZXJzLnB1c2goYSkmJiFaZSYmKFplPXNldEludGVydmFsKG8udGljayxvLmludGVydmFsKSl9LHNob3c6ZnVuY3Rpb24oKXt2YXIgZT1pLl9kYXRhKHRoaXMuZWxlbSwiZnhzaG93Iit0aGlzLnByb3ApO3RoaXMub3B0aW9ucy5vcmlnW3RoaXMucHJvcF09ZXx8aS5zdHlsZSh0aGlzLmVsZW0sdGhpcy5wcm9wKSx0aGlzLm9wdGlvbnMuc2hvdz0hMCx2b2lkIDAhPT1lP3RoaXMuY3VzdG9tKHRoaXMuY3VyKCksZSk6dGhpcy5jdXN0b20oIndpZHRoIj09PXRoaXMucHJvcHx8ImhlaWdodCI9PT10aGlzLnByb3A/MTowLHRoaXMuY3VyKCkpLGkodGhpcy5lbGVtKS5zaG93KCl9LGhpZGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMub3JpZ1t0aGlzLnByb3BdPWkuX2RhdGEodGhpcy5lbGVtLCJmeHNob3ciK3RoaXMucHJvcCl8fGkuc3R5bGUodGhpcy5lbGVtLHRoaXMucHJvcCksdGhpcy5vcHRpb25zLmhpZGU9ITAsdGhpcy5jdXN0b20odGhpcy5jdXIoKSwwKX0sc3RlcDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz1ldHx8b3QoKSxhPSEwLHM9dGhpcy5lbGVtLGw9dGhpcy5vcHRpb25zO2lmKGV8fG8+PWwuZHVyYXRpb24rdGhpcy5zdGFydFRpbWUpe2Zvcih0IGluIHRoaXMubm93PXRoaXMuZW5kLHRoaXMucG9zPXRoaXMuc3RhdGU9MSx0aGlzLnVwZGF0ZSgpLGwuYW5pbWF0ZWRQcm9wZXJ0aWVzW3RoaXMucHJvcF09ITAsbC5hbmltYXRlZFByb3BlcnRpZXMpITAhPT1sLmFuaW1hdGVkUHJvcGVydGllc1t0XSYmKGE9ITEpO2lmKGEpe2lmKG51bGw9PWwub3ZlcmZsb3d8fGkuc3VwcG9ydC5zaHJpbmtXcmFwQmxvY2tzfHxpLmVhY2goWyIiLCJYIiwiWSJdLChmdW5jdGlvbihlLHQpe3Muc3R5bGVbIm92ZXJmbG93Iit0XT1sLm92ZXJmbG93W2VdfSkpLGwuaGlkZSYmaShzKS5oaWRlKCksbC5oaWRlfHxsLnNob3cpZm9yKHQgaW4gbC5hbmltYXRlZFByb3BlcnRpZXMpaS5zdHlsZShzLHQsbC5vcmlnW3RdKSxpLnJlbW92ZURhdGEocywiZnhzaG93Iit0LCEwKSxpLnJlbW92ZURhdGEocywidG9nZ2xlIit0LCEwKTsocj1sLmNvbXBsZXRlKSYmKGwuY29tcGxldGU9ITEsci5jYWxsKHMpKX1yZXR1cm4hMX1yZXR1cm4gbC5kdXJhdGlvbj09MS8wP3RoaXMubm93PW86KG49by10aGlzLnN0YXJ0VGltZSx0aGlzLnN0YXRlPW4vbC5kdXJhdGlvbix0aGlzLnBvcz1pLmVhc2luZ1tsLmFuaW1hdGVkUHJvcGVydGllc1t0aGlzLnByb3BdXSh0aGlzLnN0YXRlLG4sMCwxLGwuZHVyYXRpb24pLHRoaXMubm93PXRoaXMuc3RhcnQrKHRoaXMuZW5kLXRoaXMuc3RhcnQpKnRoaXMucG9zKSx0aGlzLnVwZGF0ZSgpLCEwfX0saS5leHRlbmQoaS5meCx7dGljazpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PWkudGltZXJzLG49MDtuPHQubGVuZ3RoO24rKykoZT10W25dKSgpfHx0W25dIT09ZXx8dC5zcGxpY2Uobi0tLDEpO3QubGVuZ3RofHxpLmZ4LnN0b3AoKX0saW50ZXJ2YWw6MTMsc3RvcDpmdW5jdGlvbigpe2NsZWFySW50ZXJ2YWwoWmUpLFplPW51bGx9LHNwZWVkczp7c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxzdGVwOntvcGFjaXR5OmZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLCJvcGFjaXR5IixlLm5vdyl9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe2UuZWxlbS5zdHlsZSYmbnVsbCE9ZS5lbGVtLnN0eWxlW2UucHJvcF0/ZS5lbGVtLnN0eWxlW2UucHJvcF09ZS5ub3crZS51bml0OmUuZWxlbVtlLnByb3BdPWUubm93fX19KSxpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0KSwoZnVuY3Rpb24oZSx0KXt0LmluZGV4T2YoIm1hcmdpbiIpJiYoaS5meC5zdGVwW3RdPWZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLHQsTWF0aC5tYXgoMCxlLm5vdykrZS51bml0KX0pfSkpLGkuZXhwciYmaS5leHByLmZpbHRlcnMmJihpLmV4cHIuZmlsdGVycy5hbmltYXRlZD1mdW5jdGlvbihlKXtyZXR1cm4gaS5ncmVwKGkudGltZXJzLChmdW5jdGlvbih0KXtyZXR1cm4gZT09PXQuZWxlbX0pKS5sZW5ndGh9KTt2YXIgdXQsY3Q9L150KD86YWJsZXxkfGgpJC9pLGZ0PS9eKD86Ym9keXxodG1sKSQvaTtmdW5jdGlvbiBkdChlKXsKcmV0dXJuIGkuaXNXaW5kb3coZSk/ZTo5PT09ZS5ub2RlVHlwZSYmKGUuZGVmYXVsdFZpZXd8fGUucGFyZW50V2luZG93KX11dD0iZ2V0Qm91bmRpbmdDbGllbnRSZWN0ImluIHQuZG9jdW1lbnRFbGVtZW50P2Z1bmN0aW9uKGUsdCxuLHIpe3RyeXtyPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goZSl7fWlmKCFyfHwhaS5jb250YWlucyhuLGUpKXJldHVybiByP3t0b3A6ci50b3AsbGVmdDpyLmxlZnR9Ont0b3A6MCxsZWZ0OjB9O3ZhciBvPXQuYm9keSxhPWR0KHQpLHM9bi5jbGllbnRUb3B8fG8uY2xpZW50VG9wfHwwLGw9bi5jbGllbnRMZWZ0fHxvLmNsaWVudExlZnR8fDAsdT1hLnBhZ2VZT2Zmc2V0fHxpLnN1cHBvcnQuYm94TW9kZWwmJm4uc2Nyb2xsVG9wfHxvLnNjcm9sbFRvcCxjPWEucGFnZVhPZmZzZXR8fGkuc3VwcG9ydC5ib3hNb2RlbCYmbi5zY3JvbGxMZWZ0fHxvLnNjcm9sbExlZnQ7cmV0dXJue3RvcDpyLnRvcCt1LXMsbGVmdDpyLmxlZnQrYy1sfX06ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcixvPWUub2Zmc2V0UGFyZW50LGE9dC5ib2R5LHM9dC5kZWZhdWx0VmlldyxsPXM/cy5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCk6ZS5jdXJyZW50U3R5bGUsdT1lLm9mZnNldFRvcCxjPWUub2Zmc2V0TGVmdDsoZT1lLnBhcmVudE5vZGUpJiZlIT09YSYmZSE9PW4mJighaS5zdXBwb3J0LmZpeGVkUG9zaXRpb258fCJmaXhlZCIhPT1sLnBvc2l0aW9uKTspcj1zP3MuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpOmUuY3VycmVudFN0eWxlLHUtPWUuc2Nyb2xsVG9wLGMtPWUuc2Nyb2xsTGVmdCxlPT09byYmKHUrPWUub2Zmc2V0VG9wLGMrPWUub2Zmc2V0TGVmdCwhaS5zdXBwb3J0LmRvZXNOb3RBZGRCb3JkZXJ8fGkuc3VwcG9ydC5kb2VzQWRkQm9yZGVyRm9yVGFibGVBbmRDZWxscyYmY3QudGVzdChlLm5vZGVOYW1lKXx8KHUrPXBhcnNlRmxvYXQoci5ib3JkZXJUb3BXaWR0aCl8fDAsYys9cGFyc2VGbG9hdChyLmJvcmRlckxlZnRXaWR0aCl8fDApLG89ZS5vZmZzZXRQYXJlbnQpLGkuc3VwcG9ydC5zdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGUmJiJ2aXNpYmxlIiE9PXIub3ZlcmZsb3cmJih1Kz1wYXJzZUZsb2F0KHIuYm9yZGVyVG9wV2lkdGgpfHwwLGMrPXBhcnNlRmxvYXQoci5ib3JkZXJMZWZ0V2lkdGgpfHwwKSxsPXI7cmV0dXJuInJlbGF0aXZlIiE9PWwucG9zaXRpb24mJiJzdGF0aWMiIT09bC5wb3NpdGlvbnx8KHUrPWEub2Zmc2V0VG9wLGMrPWEub2Zmc2V0TGVmdCksaS5zdXBwb3J0LmZpeGVkUG9zaXRpb24mJiJmaXhlZCI9PT1sLnBvc2l0aW9uJiYodSs9TWF0aC5tYXgobi5zY3JvbGxUb3AsYS5zY3JvbGxUb3ApLGMrPU1hdGgubWF4KG4uc2Nyb2xsTGVmdCxhLnNjcm9sbExlZnQpKSx7dG9wOnUsbGVmdDpjfX0saS5mbi5vZmZzZXQ9ZnVuY3Rpb24oZSl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09ZT90aGlzOnRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aS5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsZSx0KX0pKTt2YXIgdD10aGlzWzBdLG49dCYmdC5vd25lckRvY3VtZW50O3JldHVybiBuP3Q9PT1uLmJvZHk/aS5vZmZzZXQuYm9keU9mZnNldCh0KTp1dCh0LG4sbi5kb2N1bWVudEVsZW1lbnQpOm51bGx9LGkub2Zmc2V0PXtib2R5T2Zmc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0VG9wLG49ZS5vZmZzZXRMZWZ0O3JldHVybiBpLnN1cHBvcnQuZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQmJih0Kz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpblRvcCIpKXx8MCxuKz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDApLHt0b3A6dCxsZWZ0Om59fSxzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWkuY3NzKGUsInBvc2l0aW9uIik7InN0YXRpYyI9PT1yJiYoZS5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiKTt2YXIgbyxhLHM9aShlKSxsPXMub2Zmc2V0KCksdT1pLmNzcyhlLCJ0b3AiKSxjPWkuY3NzKGUsImxlZnQiKSxmPXt9LGQ9e307KCJhYnNvbHV0ZSI9PT1yfHwiZml4ZWQiPT09cikmJmkuaW5BcnJheSgiYXV0byIsW3UsY10pPi0xPyhvPShkPXMucG9zaXRpb24oKSkudG9wLGE9ZC5sZWZ0KToobz1wYXJzZUZsb2F0KHUpfHwwLGE9cGFyc2VGbG9hdChjKXx8MCksaS5pc0Z1bmN0aW9uKHQpJiYodD10LmNhbGwoZSxuLGwpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLWwudG9wK28pLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtbC5sZWZ0K2EpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOnMuY3NzKGYpfX0saS5mbi5leHRlbmQoe3Bvc2l0aW9uOmZ1bmN0aW9uKCl7aWYoIXRoaXNbMF0pcmV0dXJuIG51bGw7dmFyIGU9dGhpc1swXSx0PXRoaXMub2Zmc2V0UGFyZW50KCksbj10aGlzLm9mZnNldCgpLHI9ZnQudGVzdCh0WzBdLm5vZGVOYW1lKT97dG9wOjAsbGVmdDowfTp0Lm9mZnNldCgpO3JldHVybiBuLnRvcC09cGFyc2VGbG9hdChpLmNzcyhlLCJtYXJnaW5Ub3AiKSl8fDAsbi5sZWZ0LT1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDAsci50b3ArPXBhcnNlRmxvYXQoaS5jc3ModFswXSwiYm9yZGVyVG9wV2lkdGgiKSl8fDAsci5sZWZ0Kz1wYXJzZUZsb2F0KGkuY3NzKHRbMF0sImJvcmRlckxlZnRXaWR0aCIpKXx8MCx7dG9wOm4udG9wLXIudG9wLGxlZnQ6bi5sZWZ0LXIubGVmdH19LG9mZnNldFBhcmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5vZmZzZXRQYXJlbnR8fHQuYm9keTtlJiYhZnQudGVzdChlLm5vZGVOYW1lKSYmInN0YXRpYyI9PT1pLmNzcyhlLCJwb3NpdGlvbiIpOyllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfSkpfX0pLGkuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSwoZnVuY3Rpb24oZSx0KXt2YXIgbj0vWS8udGVzdCh0KTtpLmZuW2VdPWZ1bmN0aW9uKHIpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHIsbyl7dmFyIGE9ZHQoZSkKO2lmKHZvaWQgMD09PW8pcmV0dXJuIGE/dCBpbiBhP2FbdF06aS5zdXBwb3J0LmJveE1vZGVsJiZhLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFtyXXx8YS5kb2N1bWVudC5ib2R5W3JdOmVbcl07YT9hLnNjcm9sbFRvKG4/aShhKS5zY3JvbGxMZWZ0KCk6byxuP286aShhKS5zY3JvbGxUb3AoKSk6ZVtyXT1vfSksZSxyLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGkuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LChmdW5jdGlvbihlLHQpe3ZhciBuPSJjbGllbnQiK2Uscj0ic2Nyb2xsIitlLG89Im9mZnNldCIrZTtpLmZuWyJpbm5lciIrZV09ZnVuY3Rpb24oKXt2YXIgZT10aGlzWzBdO3JldHVybiBlP2Uuc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhlLHQsInBhZGRpbmciKSk6dGhpc1t0XSgpOm51bGx9LGkuZm5bIm91dGVyIitlXT1mdW5jdGlvbihlKXt2YXIgbj10aGlzWzBdO3JldHVybiBuP24uc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhuLHQsZT8ibWFyZ2luIjoiYm9yZGVyIikpOnRoaXNbdF0oKTpudWxsfSxpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsYSl7dmFyIHMsbCx1LGM7cmV0dXJuIGkuaXNXaW5kb3coZSk/KGw9KHM9ZS5kb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50W25dLGkuc3VwcG9ydC5ib3hNb2RlbCYmbHx8cy5ib2R5JiZzLmJvZHlbbl18fGwpOjk9PT1lLm5vZGVUeXBlPyhzPWUuZG9jdW1lbnRFbGVtZW50KVtuXT49c1tyXT9zW25dOk1hdGgubWF4KGUuYm9keVtyXSxzW3JdLGUuYm9keVtvXSxzW29dKTp2b2lkIDA9PT1hPyh1PWkuY3NzKGUsdCksYz1wYXJzZUZsb2F0KHUpLGkuaXNOdW1lcmljKGMpP2M6dSk6dm9pZCBpKGUpLmNzcyh0LGEpfSksdCxlLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGUuZXhwb3J0cz13aW5kb3cualF1ZXJ5PXdpbmRvdy4kPWl9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/69113.5f4406ac8b4436afdc23.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.738Z","timestamp":1785154590738,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/69113.5f4406ac8b4436afdc23.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a9-757e\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:54\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 121fa4962d542e64e62e34ac9fbefa2c\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":30078,"size_decoded":11743,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"8c88ce407a538a14bff85954f6fb23f2","sha1":"20cc9856f0669e2b47804f5898e16e5049528f64","sha256":"2c1f8c23670876104ee7d980e9114d9cb2c088968d87b10cbd878f00397dcb46","sha512":"3c195cec522d44f6c2dce76aa4afbb00d51848a0663a1ce0b5adf73bcc1e9e1a733fd2a8885aa1ef621f486bd2a97b16e178ed33670f73bde3c4cc86bd8c0fc9","ssdeep":"768:Gtv5X/myZwOFu9JgkOrK7fkWXRqQqmAdNqeoNbs8Cj5D2gjK8YIRcOrSu9:GdB/IgkOFTlpQVA8kC3ISuH9","tlshash":"4bd219503021a0aad2f792efd03b464eb333325d78064e69f0689ced55cde993174bba","first_seen":"2026-07-23T13:38:20.459952Z","last_seen":"2026-07-27T14:23:37.834748Z","times_seen":196,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNTk2NCw2MzU5NSw2OTExM10sezk1ODYzOShlKXtlLmV4cG9ydHM9e21lbnVXcmFwOiJtZW51V3JhcC1sQkl4SXd0eiIsaXNNZWFzdXJpbmc6ImlzTWVhc3VyaW5nLWxCSXhJd3R6IixzY3JvbGxXcmFwOiJzY3JvbGxXcmFwLWxCSXhJd3R6Iixtb21lbnR1bUJhc2VkOiJtb21lbnR1bUJhc2VkLWxCSXhJd3R6IixtZW51Qm94OiJtZW51Qm94LWxCSXhJd3R6Iixpc0hpZGRlbjoiaXNIaWRkZW4tbEJJeEl3dHoifX0sNDcwMjk1KGUpe2UuZXhwb3J0cz17InRhYmxldC1zbWFsbC1icmVha3BvaW50IjoiKG1heC13aWR0aDogNDQwcHgpIixpdGVtOiJpdGVtLU1pMF90NXVOIixob3ZlcmVkOiJob3ZlcmVkLU1pMF90NXVOIixpc0Rpc2FibGVkOiJpc0Rpc2FibGVkLU1pMF90NXVOIixpc0FjdGl2ZToiaXNBY3RpdmUtTWkwX3Q1dU4iLHNob3J0Y3V0OiJzaG9ydGN1dC1NaTBfdDV1TiIsdG9vbGJveDoidG9vbGJveC1NaTBfdDV1TiIsd2l0aEljb246IndpdGhJY29uLU1pMF90NXVOIiwicm91bmQtaWNvbiI6InJvdW5kLWljb24tTWkwX3Q1dU4iLGljb246Imljb24tTWkwX3Q1dU4iLHN0YXJ0U2xvdDoic3RhcnRTbG90LU1pMF90NXVOIixsYWJlbFJvdzoibGFiZWxSb3ctTWkwX3Q1dU4iLGxhYmVsOiJsYWJlbC1NaTBfdDV1TiIsc2hvd09uSG92ZXI6InNob3dPbkhvdmVyLU1pMF90NXVOIiwiZGlzY2xvc3VyZS1pdGVtLWNpcmNsZS1sb2dvIjoiZGlzY2xvc3VyZS1pdGVtLWNpcmNsZS1sb2dvLU1pMF90NXVOIixzaG93T25Gb2N1czoic2hvd09uRm9jdXMtTWkwX3Q1dU4ifX0sMTI5NjYxKGUpe2UuZXhwb3J0cz17c3F1YXJlVGFiQnV0dG9uOiJzcXVhcmVUYWJCdXR0b24tVTdHWXU4QW0iLHhsYXJnZToieGxhcmdlLVU3R1l1OEFtIixzZWxlY3RlZDoic2VsZWN0ZWQtVTdHWXU4QW0iLG1lZGl1bToibWVkaXVtLVU3R1l1OEFtIixzbWFsbDoic21hbGwtVTdHWXU4QW0iLHhzbWFsbDoieHNtYWxsLVU3R1l1OEFtIixtZWRpdW1XaXRoU21hbGxGb250OiJtZWRpdW1XaXRoU21hbGxGb250LVU3R1l1OEFtIn19LDczODgyNihlKXtlLmV4cG9ydHM9e2Fycm93SWNvbjoiYXJyb3dJY29uLVlUanp1eTh5Iixkcm9wcGVkOiJkcm9wcGVkLVlUanp1eTh5In19LDMzNjg1MShlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtc3F1YXJlLXRhYnMteHNtYWxsLWdhcCI6IjRweCIsImNzcy12YWx1ZS1zcXVhcmUtdGFicy1zbWFsbC1nYXAiOiI4cHgiLCJjc3MtdmFsdWUtc3F1YXJlLXRhYnMtbWVkaXVtLWdhcCI6IjEycHgiLCJjc3MtdmFsdWUtc3F1YXJlLXRhYnMteGxhcmdlLWdhcCI6IjEycHgifX0sMzYyNzkzKGUpe2UuZXhwb3J0cz17eHh4c21hbGw6Inh4eHNtYWxsLUFmZDZ0NFpqIix4eHNtYWxsOiJ4eHNtYWxsLUFmZDZ0NFpqIix4c21hbGw6InhzbWFsbC1BZmQ2dDRaaiIsc21hbGw6InNtYWxsLUFmZDZ0NFpqIixtZWRpdW06Im1lZGl1bS1BZmQ2dDRaaiIsbGFyZ2U6ImxhcmdlLUFmZDZ0NFpqIix4bGFyZ2U6InhsYXJnZS1BZmQ2dDRaaiIsY291bnRlcjoiY291bnRlci1BZmQ2dDRaaiIsImNvbG9yLWRhbmdlciI6ImNvbG9yLWRhbmdlci1BZmQ2dDRaaiIsImNvbG9yLWFjY2VudCI6ImNvbG9yLWFjY2VudC1BZmQ2dDRaaiIsImNvbG9yLWFjY2VudC1saWdodCI6ImNvbG9yLWFjY2VudC1saWdodC1BZmQ2dDRaaiIsImNvbG9yLW5ldXRyYWwtYm9sZCI6ImNvbG9yLW5ldXRyYWwtYm9sZC1BZmQ2dDRaaiIsImNvbG9yLW5ldXRyYWwiOiJjb2xvci1uZXV0cmFsLUFmZDZ0NFpqIiwiYm9yZGVyQ29sb3ItcHJpbWFyeSI6ImJvcmRlckNvbG9yLXByaW1hcnktQWZkNnQ0WmoiLCJib3JkZXJDb2xvci1zZWNvbmRhcnkiOiJib3JkZXJDb2xvci1zZWNvbmRhcnktQWZkNnQ0WmoiLCJib3JkZXJDb2xvci10ZXJ0aWFyeSI6ImJvcmRlckNvbG9yLXRlcnRpYXJ5LUFmZDZ0NFpqIixkaXNhYmxlZDoiZGlzYWJsZWQtQWZkNnQ0WmoifX0sMTkzODQ3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1BvcHVwTWVudURpc2Nsb3N1cmVWaWV3OigpPT51fSk7dmFyIG89big3Nzk0NzQpLHI9big4MDk0MzYpLHM9big4MzU5NjQpLGk9bigxMzg2MzgpO2NvbnN0IGE9e3g6MCx5OjB9O2Z1bmN0aW9uIGwoZSx0LG4pe3JldHVybigwLG8udXNlQ2FsbGJhY2spKCgoKT0+ZnVuY3Rpb24oZSx0LHt4Om49YS54LHk6bz1hLnl9PWEpe2NvbnN0IHI9KDAsaS5lbnN1cmVOb3ROdWxsKShlKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxzPXt4OnIubGVmdCtuLHk6ci50b3Arci5oZWlnaHQrbyxpbmRlbnRGcm9tV2luZG93Ont0b3A6NCxib3R0b206NCxsZWZ0OjQscmlnaHQ6NH19O3JldHVybiB0JiYocy5vdmVycmlkZVdpZHRoPXIud2lkdGgpLHN9KGUuY3VycmVudCx0LG4pKSxbZSx0XSl9Y29uc3QgYz1wYXJzZUludChyWyJzaXplLWhlYWRlci1oZWlnaHQiXSk7ZnVuY3Rpb24gdShlKXtjb25zdHtidXR0b246dCxwb3B1cENoaWxkcmVuOm4sYnV0dG9uUmVmOnIsbGlzdGJveElkOmksbGlzdGJveENsYXNzTmFtZTphLGxpc3Rib3hUYWJJbmRleDp1LG1hdGNoQnV0dG9uQW5kTGlzdGJveFdpZHRoczpkLGlzT3BlbmVkOmgsc2Nyb2xsV3JhcFJlZmVyZW5jZTpwLGxpc3Rib3hSZWZlcmVuY2U6bSxvbkNsb3NlOmYsb25PcGVuOmIsb25MaXN0Ym94Rm9jdXM6Zyxvbkxpc3Rib3hCbHVyOnYsb25MaXN0Ym94S2V5RG93bjp4LGxpc3Rib3hBcmlhOkMscmVwb3NpdGlvbk9uU2Nyb2xsOl89ITAsY2xvc2VPbkhlYWRlck92ZXJsYXA6Uz0hMSxwb3B1cFBvc2l0aW9uQ29ycmVjdGlvbjp3PXt4OjAseTowfSxwb3B1cFBvc2l0aW9uOnksZGF0YVFhSWQ6RX09ZSxNPWwocixkLHcpLFQ9Uz9jOjA7cmV0dXJuIG8uY3JlYXRlRWxlbWVudChvLkZyYWdtZW50LG51bGwsdCxvLmNyZWF0ZUVsZW1lbnQocy5Qb3B1cE1lbnUsey4uLkMsZGF0YVFhSWQ6RSxpZDppLGNsYXNzTmFtZTphLHRhYkluZGV4OnUsaXNPcGVuZWQ6aCxwb3NpdGlvbjp5fHxNLHJlcG9zaXRpb25PblNjcm9sbDpfLG9uQ2xvc2U6Zixvbk9wZW46YiwKZG9Ob3RDbG9zZU9uOnIuY3VycmVudCxyZWZlcmVuY2U6bSxzY3JvbGxXcmFwUmVmZXJlbmNlOnAsb25Gb2N1czpnLG9uQmx1cjp2LG9uS2V5RG93bjp4LGNsb3NlT25TY3JvbGxPdXRzaWRlT2Zmc2V0OlR9LG4pKX19LDI3NjAxOShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnbG9iYWxDbG9zZURlbGVnYXRlOigpPT5vLGdsb2JhbENsb3NlTWVudTooKT0+cn0pO2NvbnN0IG89bmV3KG4oOTQ4MzgwKS5EZWxlZ2F0ZSk7ZnVuY3Rpb24gcigpe28uZmlyZSgpfX0sNjgxMjI0KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse01lbnVDb250ZXh0OigpPT5vfSk7Y29uc3Qgbz1uKDc3OTQ3NCkuY3JlYXRlQ29udGV4dChudWxsKX0sMTQ1MTUwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0RFRkFVTFRfTUVOVV9USEVNRTooKT0+YixNZW51OigpPT52fSk7dmFyIG89big3Nzk0NzQpLHI9big5MTQ0ODcpLHM9bi5uKHIpLGk9bigxMzg2MzgpLGE9big2MDc4MzIpLGw9big5MDM0MiksYz1uKDg5MTIwOSksdT1uKDY0MDc0NCksZD1uKDUxODc1KSxoPW4oNzI3MDkpLHA9bigyNzYwMTkpLG09big2ODEyMjQpLGY9big5NTg2MzkpO2NvbnN0IGI9Zjt2YXIgZzshZnVuY3Rpb24oZSl7ZVtlLkluZGVudEZyb21XaW5kb3c9MF09IkluZGVudEZyb21XaW5kb3cifShnfHwoZz17fSkpO2NsYXNzIHYgZXh0ZW5kcyBvLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5fY29udGFpbmVyUmVmPW51bGwsdGhpcy5fc2Nyb2xsV3JhcFJlZj1udWxsLHRoaXMuX3JhZj1udWxsLHRoaXMuX3Njcm9sbFJhZj1udWxsLHRoaXMuX3Njcm9sbFRpbWVvdXQ9dm9pZCAwLHRoaXMuX21hbmFnZXI9bmV3IGwuT3ZlcmxhcE1hbmFnZXIsdGhpcy5faG90a2V5cz1udWxsLHRoaXMuX3Njcm9sbD0wLHRoaXMuX2hhbmRsZUNvbnRhaW5lclJlZj1lPT57dGhpcy5fY29udGFpbmVyUmVmPWUsdGhpcy5wcm9wcy5yZWZlcmVuY2UmJigiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5wcm9wcy5yZWZlcmVuY2UmJnRoaXMucHJvcHMucmVmZXJlbmNlKGUpLCJvYmplY3QiPT10eXBlb2YgdGhpcy5wcm9wcy5yZWZlcmVuY2UmJih0aGlzLnByb3BzLnJlZmVyZW5jZS5jdXJyZW50PWUpKX0sdGhpcy5faGFuZGxlU2Nyb2xsV3JhcFJlZj1lPT57dGhpcy5fc2Nyb2xsV3JhcFJlZj1lLCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnByb3BzLnNjcm9sbFdyYXBSZWZlcmVuY2UmJnRoaXMucHJvcHMuc2Nyb2xsV3JhcFJlZmVyZW5jZShlKSwib2JqZWN0Ij09dHlwZW9mIHRoaXMucHJvcHMuc2Nyb2xsV3JhcFJlZmVyZW5jZSYmKHRoaXMucHJvcHMuc2Nyb2xsV3JhcFJlZmVyZW5jZS5jdXJyZW50PWUpfSx0aGlzLl9oYW5kbGVDdXN0b21SZW1lYXN1cmVEZWxlZ2F0ZT0oKT0+e3RoaXMuX3Jlc2l6ZUZvcmNlZCgpLHRoaXMuX2hhbmRsZU1lYXN1cmUoKX0sdGhpcy5faGFuZGxlTWVhc3VyZT0oe2NhbGxiYWNrOmUsZm9yY2VSZWNhbGNQb3NpdGlvbjp0fT17fSk9PntpZih0aGlzLnN0YXRlLmlzTWVhc3VyZVZhbGlkJiYhdClyZXR1cm47Y29uc3R7cG9zaXRpb246bn09dGhpcy5wcm9wcyxvPSgwLGkuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyUmVmKTtsZXQgcj1vLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2NvbnN0IHM9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCxhPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCxsPXRoaXMucHJvcHMuY2xvc2VPblNjcm9sbE91dHNpZGVPZmZzZXQ/PzA7bGV0IGM9cy0wLWw7Y29uc3QgZD1yLmhlaWdodD5jO2lmKGQpeygwLGkuZW5zdXJlTm90TnVsbCkodGhpcy5fc2Nyb2xsV3JhcFJlZikuc3R5bGUub3ZlcmZsb3dZPSJzY3JvbGwiLHI9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1jb25zdHt3aWR0aDpoLGhlaWdodDpwfT1yLG09ImZ1bmN0aW9uIj09dHlwZW9mIG4/bih7Y29udGVudFdpZHRoOmgsY29udGVudEhlaWdodDpwLGF2YWlsYWJsZVdpZHRoOmEsYXZhaWxhYmxlSGVpZ2h0OnN9KTpuLGY9bT8uaW5kZW50RnJvbVdpbmRvdz8ubGVmdD8/MCxiPWEtKG0ub3ZlcnJpZGVXaWR0aD8/aCktKG0/LmluZGVudEZyb21XaW5kb3c/LnJpZ2h0Pz8wKSxnPSgwLHUuY2xhbXApKG0ueCxmLE1hdGgubWF4KGYsYikpLHY9KG0/LmluZGVudEZyb21XaW5kb3c/LnRvcD8/MCkrbCx4PXMtKG0ub3ZlcnJpZGVIZWlnaHQ/P3ApLShtPy5pbmRlbnRGcm9tV2luZG93Py5ib3R0b20/PzApO2xldCBDPSgwLHUuY2xhbXApKG0ueSx2LE1hdGgubWF4KHYseCkpO2lmKG0uZm9yYmlkQ29ycmVjdFlDb29yZCYmQzxtLnkmJihjLT1tLnktQyxDPW0ueSksdCYmdm9pZCAwIT09dGhpcy5wcm9wcy5jbG9zZU9uU2Nyb2xsT3V0c2lkZU9mZnNldCYmbS55PD10aGlzLnByb3BzLmNsb3NlT25TY3JvbGxPdXRzaWRlT2Zmc2V0KXJldHVybiB2b2lkIHRoaXMuX2hhbmRsZUdsb2JhbENsb3NlKCEwKTtjb25zdCBfPW0ub3ZlcnJpZGVIZWlnaHQ/PyhkP2M6dm9pZCAwKTt0aGlzLnNldFN0YXRlKHthcHBlYXJpbmdNZW51SGVpZ2h0OnQ/dGhpcy5zdGF0ZS5hcHBlYXJpbmdNZW51SGVpZ2h0Ol8sYXBwZWFyaW5nTWVudVdpZHRoOnQ/dGhpcy5zdGF0ZS5hcHBlYXJpbmdNZW51V2lkdGg6bS5vdmVycmlkZVdpZHRoLGFwcGVhcmluZ1Bvc2l0aW9uOnt4OmcseTpDfSxpc01lYXN1cmVWYWxpZDohMH0sKCgpPT57dGhpcy5wcm9wcy5kb05vdFJlc3RvcmVQb3NpdGlvbnx8dGhpcy5fcmVzdG9yZVNjcm9sbFBvc2l0aW9uKCksZSYmZSgpfSkpfSx0aGlzLl9yZXN0b3JlU2Nyb2xsUG9zaXRpb249KCk9Pntjb25zdCBlPSgwLGkuZW5zdXJlTm90TnVsbCkodGhpcy5fc2Nyb2xsV3JhcFJlZik7ZS5zY3JvbGxUb3A9dGhpcy5fc2Nyb2xsO2NvbnN0IHQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCxuPSgwLGkuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyUmVmKTtpZih0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJm4uY29udGFpbnModCkmJiF0aGlzLl9pc0VsZW1lbnRGdWxseVZpc2libGUodCxlKSl0cnl7dC5zY3JvbGxJbnRvVmlldygpfWNhdGNoKGUpe319LAp0aGlzLl9pc0VsZW1lbnRGdWxseVZpc2libGU9KGUsdCk9Pntjb25zdCBuPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbz10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBuLnRvcD49by50b3AmJm4uYm90dG9tPD1vLmJvdHRvbX0sdGhpcy5fcmVzaXplRm9yY2VkPSgpPT57dGhpcy5zZXRTdGF0ZSh7YXBwZWFyaW5nTWVudUhlaWdodDp2b2lkIDAsYXBwZWFyaW5nTWVudVdpZHRoOnZvaWQgMCxhcHBlYXJpbmdQb3NpdGlvbjp2b2lkIDAsaXNNZWFzdXJlVmFsaWQ6dm9pZCAwfSl9LHRoaXMuX3Jlc2l6ZT0oKT0+e251bGw9PT10aGlzLl9yYWYmJih0aGlzLl9yYWY9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgoKT0+e3RoaXMuc2V0U3RhdGUoe2FwcGVhcmluZ01lbnVIZWlnaHQ6dm9pZCAwLGFwcGVhcmluZ01lbnVXaWR0aDp2b2lkIDAsYXBwZWFyaW5nUG9zaXRpb246dm9pZCAwLGlzTWVhc3VyZVZhbGlkOnZvaWQgMH0pLHRoaXMuX3JhZj1udWxsfSkpKX0sdGhpcy5faGFuZGxlR2xvYmFsQ2xvc2U9ZT0+e3RoaXMucHJvcHMub25DbG9zZShlKX0sdGhpcy5faGFuZGxlU2xvdD1lPT57dGhpcy5fbWFuYWdlci5zZXRDb250YWluZXIoZSl9LHRoaXMuX2hhbmRsZVNjcm9sbD0oKT0+e3RoaXMuX3Njcm9sbD0oMCxpLmVuc3VyZU5vdE51bGwpKHRoaXMuX3Njcm9sbFdyYXBSZWYpLnNjcm9sbFRvcH0sdGhpcy5faGFuZGxlU2Nyb2xsT3V0c2lkZUVuZD0oKT0+e2NsZWFyVGltZW91dCh0aGlzLl9zY3JvbGxUaW1lb3V0KSx0aGlzLl9zY3JvbGxUaW1lb3V0PXNldFRpbWVvdXQoKCgpPT57dGhpcy5faGFuZGxlTWVhc3VyZSh7Zm9yY2VSZWNhbGNQb3NpdGlvbjohMH0pfSksODApfSx0aGlzLl9oYW5kbGVTY3JvbGxPdXRzaWRlPWU9PntlLnRhcmdldCE9PXRoaXMuX3Njcm9sbFdyYXBSZWYmJih0aGlzLl9oYW5kbGVTY3JvbGxPdXRzaWRlRW5kKCksbnVsbD09PXRoaXMuX3Njcm9sbFJhZiYmKHRoaXMuX3Njcm9sbFJhZj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57dGhpcy5faGFuZGxlTWVhc3VyZSh7Zm9yY2VSZWNhbGNQb3NpdGlvbjohMH0pLHRoaXMuX3Njcm9sbFJhZj1udWxsfSkpKSl9LHRoaXMuc3RhdGU9e319Y29tcG9uZW50RGlkTW91bnQoKXt0aGlzLl9oYW5kbGVNZWFzdXJlKHtjYWxsYmFjazp0aGlzLnByb3BzLm9uT3Blbn0pO2NvbnN0e2N1c3RvbUNsb3NlRGVsZWdhdGU6ZT1wLmdsb2JhbENsb3NlRGVsZWdhdGUsY3VzdG9tUmVtZWFzdXJlRGVsZWdhdGU6dH09dGhpcy5wcm9wcztlLnN1YnNjcmliZSh0aGlzLHRoaXMuX2hhbmRsZUdsb2JhbENsb3NlKSx0Py5zdWJzY3JpYmUobnVsbCx0aGlzLl9oYW5kbGVDdXN0b21SZW1lYXN1cmVEZWxlZ2F0ZSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdGhpcy5fcmVzaXplKTtjb25zdCBuPW51bGwhPT10aGlzLmNvbnRleHQ7dGhpcy5faG90a2V5c3x8bnx8KHRoaXMuX2hvdGtleXM9aC5jcmVhdGVHcm91cCh7ZGVzYzoiUG9wdXAgbWVudSJ9KSx0aGlzLl9ob3RrZXlzLmFkZCh7ZGVzYzoiQ2xvc2UiLGhvdGtleToyNyxoYW5kbGVyOigpPT57dGhpcy5wcm9wcy5vbktleWJvYXJkQ2xvc2UmJnRoaXMucHJvcHMub25LZXlib2FyZENsb3NlKCksdGhpcy5faGFuZGxlR2xvYmFsQ2xvc2UoKX19KSksdGhpcy5wcm9wcy5yZXBvc2l0aW9uT25TY3JvbGwmJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMuX2hhbmRsZVNjcm9sbE91dHNpZGUse2NhcHR1cmU6ITB9KX1jb21wb25lbnREaWRVcGRhdGUoKXt0aGlzLl9oYW5kbGVNZWFzdXJlKCl9Y29tcG9uZW50V2lsbFVubW91bnQoKXtjb25zdHtjdXN0b21DbG9zZURlbGVnYXRlOmU9cC5nbG9iYWxDbG9zZURlbGVnYXRlLGN1c3RvbVJlbWVhc3VyZURlbGVnYXRlOnR9PXRoaXMucHJvcHM7ZS51bnN1YnNjcmliZSh0aGlzLHRoaXMuX2hhbmRsZUdsb2JhbENsb3NlKSx0Py51bnN1YnNjcmliZShudWxsLHRoaXMuX2hhbmRsZUN1c3RvbVJlbWVhc3VyZURlbGVnYXRlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLl9yZXNpemUpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMuX2hhbmRsZVNjcm9sbE91dHNpZGUse2NhcHR1cmU6ITB9KSx0aGlzLl9ob3RrZXlzJiYodGhpcy5faG90a2V5cy5kZXN0cm95KCksdGhpcy5faG90a2V5cz1udWxsKSxudWxsIT09dGhpcy5fcmFmJiYoY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5fcmFmKSx0aGlzLl9yYWY9bnVsbCksbnVsbCE9PXRoaXMuX3Njcm9sbFJhZiYmKGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3Njcm9sbFJhZiksdGhpcy5fc2Nyb2xsUmFmPW51bGwpLHRoaXMuX3Njcm9sbFRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLl9zY3JvbGxUaW1lb3V0KX1yZW5kZXIoKXtjb25zdHtpZDplLHJvbGU6dCwiYXJpYS1sYWJlbCI6biwiYXJpYS1sYWJlbGxlZGJ5IjpyLCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiOmksImFyaWEtaGlkZGVuIjpsLCJhcmlhLWRlc2NyaWJlZGJ5Ijp1LCJhcmlhLWludmFsaWQiOmgsY2hpbGRyZW46cCxtaW5XaWR0aDpiLHRoZW1lOmc9ZixjbGFzc05hbWU6dixtYXhIZWlnaHQ6Qyxvbk1vdXNlT3ZlcjpfLG9uTW91c2VPdXQ6UyxvbktleURvd246dyxvbkZvY3VzOnksb25CbHVyOkV9PXRoaXMucHJvcHMse2FwcGVhcmluZ01lbnVIZWlnaHQ6TSxhcHBlYXJpbmdNZW51V2lkdGg6VCxhcHBlYXJpbmdQb3NpdGlvbjpSLGlzTWVhc3VyZVZhbGlkOk59PXRoaXMuc3RhdGUsTz17Ii0tdWkta2l0LW1lbnUtbWF4LXdpZHRoIjpgJHtSJiZSLnh9cHhgLG1heFdpZHRoOiJjYWxjKDEwMHZ3IC0gdmFyKC0tdWkta2l0LW1lbnUtbWF4LXdpZHRoKSAtIDZweCkifTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KG0uTWVudUNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnRoaXN9LG8uY3JlYXRlRWxlbWVudChjLlN1Ym1lbnVIYW5kbGVyLG51bGwsby5jcmVhdGVFbGVtZW50KGEuU2xvdENvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnRoaXMuX21hbmFnZXJ9LG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7aWQ6ZSxyb2xlOnQsImFyaWEtbGFiZWwiOm4sCiJhcmlhLWxhYmVsbGVkYnkiOnIsImFyaWEtYWN0aXZlZGVzY2VuZGFudCI6aSwiYXJpYS1oaWRkZW4iOmwsImFyaWEtZGVzY3JpYmVkYnkiOnUsImFyaWEtaW52YWxpZCI6aCxjbGFzc05hbWU6cygpKHYsZy5tZW51V3JhcCwhTiYmZy5pc01lYXN1cmluZyksc3R5bGU6e2hlaWdodDpNLGxlZnQ6UiYmUi54LG1pbldpZHRoOmIscG9zaXRpb246ImZpeGVkIix0b3A6UiYmUi55LHdpZHRoOlQsLi4udGhpcy5wcm9wcy5saW1pdE1heFdpZHRoJiZPfSwiZGF0YS1uYW1lIjp0aGlzLnByb3BzWyJkYXRhLW5hbWUiXSwiZGF0YS1xYS1pZCI6dGhpcy5wcm9wcy5kYXRhUWFJZCwiZGF0YS10b29sdGlwLXNob3ctb24tZm9jdXMiOnRoaXMucHJvcHNbImRhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzIl0scmVmOnRoaXMuX2hhbmRsZUNvbnRhaW5lclJlZixvblNjcm9sbENhcHR1cmU6dGhpcy5wcm9wcy5vblNjcm9sbCxvbkNvbnRleHRNZW51OmQucHJldmVudERlZmF1bHRGb3JDb250ZXh0TWVudSx0YWJJbmRleDp0aGlzLnByb3BzLnRhYkluZGV4LG9uTW91c2VPdmVyOl8sb25Nb3VzZU91dDpTLG9uS2V5RG93bjp3LG9uRm9jdXM6eSxvbkJsdXI6RX0sby5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6cygpKGcuc2Nyb2xsV3JhcCwhdGhpcy5wcm9wcy5ub01vbWVudHVtQmFzZWRTY3JvbGwmJmcubW9tZW50dW1CYXNlZCksc3R5bGU6e292ZXJmbG93WTp2b2lkIDAhPT1NPyJzY3JvbGwiOiJhdXRvIixtYXhIZWlnaHQ6Q30sb25TY3JvbGxDYXB0dXJlOnRoaXMuX2hhbmRsZVNjcm9sbCxyZWY6dGhpcy5faGFuZGxlU2Nyb2xsV3JhcFJlZn0sby5jcmVhdGVFbGVtZW50KHgse2NsYXNzTmFtZTpnLm1lbnVCb3h9LHApKSkpLG8uY3JlYXRlRWxlbWVudChhLlNsb3Qse3JlZmVyZW5jZTp0aGlzLl9oYW5kbGVTbG90fSkpKX11cGRhdGUoZSl7ZT90aGlzLl9yZXNpemVGb3JjZWQoKTp0aGlzLl9yZXNpemUoKX1mb2N1cyhlKXt0aGlzLl9jb250YWluZXJSZWY/LmZvY3VzKGUpfWJsdXIoKXt0aGlzLl9jb250YWluZXJSZWY/LmJsdXIoKX19ZnVuY3Rpb24geChlKXtjb25zdCB0PSgwLGkuZW5zdXJlTm90TnVsbCkoKDAsby51c2VDb250ZXh0KShjLlN1Ym1lbnVDb250ZXh0KSksbj1vLnVzZVJlZihudWxsKTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJkaXYiLHtyZWY6bixjbGFzc05hbWU6ZS5jbGFzc05hbWUsb25Nb3VzZU92ZXI6ZnVuY3Rpb24oZSl7aWYoIShudWxsIT09dC5jdXJyZW50JiZlLnRhcmdldCBpbnN0YW5jZW9mIE5vZGUmJihvPWUudGFyZ2V0LG4uY3VycmVudD8uY29udGFpbnMobykpKSlyZXR1cm47dmFyIG87dC5pc1N1Ym1lbnVOb2RlKGUudGFyZ2V0KXx8dC5zZXRDdXJyZW50KG51bGwpfSwiZGF0YS1xYS1pZCI6Im1lbnUtaW5uZXIifSxlLmNoaWxkcmVuKX12LmNvbnRleHRUeXBlPWMuU3VibWVudUNvbnRleHR9LDE1MzczNChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtQb3B1cE1lbnVJdGVtOigpPT5kfSk7dmFyIG89big3Nzk0NzQpLHI9big5MTQ0ODcpLHM9bi5uKHIpLGk9bigzODc3NzQpLGE9big4NDg5ODgpLGw9bigyNzYwMTkpLGM9big0NzAyOTUpO2Z1bmN0aW9uIHUoZSl7ZS5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBkKGUpe2NvbnN0e2lkOnQscm9sZTpuLGNsYXNzTmFtZTpyLHRpdGxlOmQsbGFiZWxSb3dDbGFzc05hbWU6aCxsYWJlbENsYXNzTmFtZTpwLHRvb2xib3hDbGFzc05hbWU6bSxzaG9ydGN1dDpmLGZvcmNlU2hvd1Nob3J0Y3V0czpiLGljb246ZyxpY29uQ2xhc3NuYW1lOnYsaXNBY3RpdmU6eCxpc0Rpc2FibGVkOkMsaXNIb3ZlcmVkOl8sYXBwZWFyQXNEaXNhYmxlZDpTLGxhYmVsOncsbGluazp5LHNob3dUb29sYm94T25Ib3ZlcjpFLHNob3dUb29sYm94T25Gb2N1czpNLHRhcmdldDpULHJlbDpSLHRvb2xib3g6Tix0b29sYm94Um9sZTpPLHJlZmVyZW5jZTpBLG9uTW91c2VPdXQ6SSxvbk1vdXNlT3ZlcjpXLG9uS2V5RG93bjprLHN1cHByZXNzVG9vbGJveENsaWNrOkI9ITAsdGhlbWU6RD1jLHRhYkluZGV4OkYsdGFnTmFtZTpMLHJlbmRlckNvbXBvbmVudDpQLHJvdW5kZWRJY29uOnosaWNvbkFyaWFQcm9wczpxLGNpcmNsZUxvZ286VSxkb250Q2xvc2VQb3B1cDpILG9uQ2xpY2s6aixvbkNsaWNrQXJnOlosb25Db250ZXh0TWVudTpHLG9uTW91c2VVcDpWLHN0YXJ0U2xvdDpLLGRhdGFRYUlkOlksLi4uWH09ZSwkPSgwLG8udXNlUmVmKShudWxsKSxRPSgwLG8udXNlTWVtbykoKCgpPT5mdW5jdGlvbihlKXtmdW5jdGlvbiB0KHQpe2NvbnN0e3JlZmVyZW5jZTpuLC4uLnJ9PXQscz1lPz8oci5ocmVmPyJhIjoiZGl2IiksaT0iYSI9PT1zP3I6ZnVuY3Rpb24oZSl7Y29uc3R7ZG93bmxvYWQ6dCxocmVmOm4saHJlZkxhbmc6byxtZWRpYTpyLHBpbmc6cyxyZWw6aSx0YXJnZXQ6YSx0eXBlOmwscmVmZXJyZXJQb2xpY3k6YywuLi51fT1lO3JldHVybiB1fShyKTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KHMsey4uLmkscmVmOm59KX1yZXR1cm4gdC5kaXNwbGF5TmFtZT1gRGVmYXVsdENvbXBvbmVudCgke2V9KWAsdH0oTCkpLFtMXSksSj1QPz9RO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoSix7Li4uWCxpZDp0LHJvbGU6bixjbGFzc05hbWU6cygpKHIsRC5pdGVtLGcmJkQud2l0aEljb24se1tELmlzQWN0aXZlXTp4LFtELmlzRGlzYWJsZWRdOkN8fFMsW0QuaG92ZXJlZF06X30pLHRpdGxlOmQsaHJlZjp5LHRhcmdldDpULHJlbDpSLHJlZmVyZW5jZTpmdW5jdGlvbihlKXskLmN1cnJlbnQ9ZSwiZnVuY3Rpb24iPT10eXBlb2YgQSYmQShlKTsib2JqZWN0Ij09dHlwZW9mIEEmJihBLmN1cnJlbnQ9ZSl9LG9uQ2xpY2s6ZnVuY3Rpb24oZSl7aWYoQylyZXR1cm47aiYmaihaLGUpO0h8fChlLmN1cnJlbnRUYXJnZXQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInBvcHVwLW1lbnUtY2xvc2UtZXZlbnQiLHtidWJibGVzOiEwLGRldGFpbDp7Y2xpY2tUeXBlOigwLGEuaXNLZXlib2FyZENsaWNrKShlKT8ia2V5Ym9hcmQiOiJtb3VzZSJ9fSkpLCgwLGwuZ2xvYmFsQ2xvc2VNZW51KSgpKX0sb25Db250ZXh0TWVudTpHLG9uTW91c2VVcDpWLG9uTW91c2VPdmVyOlcsCm9uTW91c2VPdXQ6SSxvbktleURvd246ayx0YWJJbmRleDpGLCJkYXRhLXFhLWlkIjpZfSxVJiZvLmNyZWF0ZUVsZW1lbnQoaS5DaXJjbGVMb2dvLHsuLi5xLGNsYXNzTmFtZTpjWyJkaXNjbG9zdXJlLWl0ZW0tY2lyY2xlLWxvZ28iXSxzaXplOiJ4eHhzbWFsbCIsbG9nb1VybDpVLmxvZ29VcmwscGxhY2Vob2xkZXJMZXR0ZXI6InBsYWNlaG9sZGVyTGV0dGVyImluIFU/VS5wbGFjZWhvbGRlckxldHRlcjp2b2lkIDB9KSxLJiZvLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6RC5zdGFydFNsb3R9LEspLGcmJm8uY3JlYXRlRWxlbWVudCgic3BhbiIseyJhcmlhLWxhYmVsIjpxJiZxWyJhcmlhLWxhYmVsIl0sImFyaWEtaGlkZGVuIjpxJiZCb29sZWFuKHFbImFyaWEtaGlkZGVuIl0pLGNsYXNzTmFtZTpzKCkoRC5pY29uLHomJmNbInJvdW5kLWljb24iXSx2KSxkYW5nZXJvdXNseVNldElubmVySFRNTDp7X19odG1sOmd9fSksby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShELmxhYmVsUm93LGgpfSxvLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKEQubGFiZWwscCl9LHcpKSwodm9pZCAwIT09Znx8YikmJm8uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpELnNob3J0Y3V0fSwoZWU9ZikmJmVlLnNwbGl0KCIrIikuam9pbigiICsgIikpLHZvaWQgMCE9PU4mJm8uY3JlYXRlRWxlbWVudCgic3BhbiIse3JvbGU6TyxvbkNsaWNrOkI/dTp2b2lkIDAsY2xhc3NOYW1lOnMoKShtLEQudG9vbGJveCx7W0Quc2hvd09uSG92ZXJdOkUsW0Quc2hvd09uRm9jdXNdOk19KX0sTikpO3ZhciBlZX19LDYzMjk5MihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtDbG9zZURlbGVnYXRlQ29udGV4dDooKT0+c30pO3ZhciBvPW4oNzc5NDc0KSxyPW4oMjc2MDE5KTtjb25zdCBzPW8uY3JlYXRlQ29udGV4dChyLmdsb2JhbENsb3NlRGVsZWdhdGUpfSw4MzU5NjQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7UG9wdXBNZW51OigpPT5ofSk7dmFyIG89big3Nzk0NzQpLHI9bigxMjkzNjUpLHM9big5MjgxMzIpLGk9big1ODU0OCksYT1uKDIzNjc2NSksbD1uKDIyNzk0OSksYz1uKDE0NTE1MCksdT1uKDYzMjk5MiksZD1uKDMwMTkzNyk7ZnVuY3Rpb24gaChlKXtjb25zdHtjb250cm9sbGVyOnQsY2hpbGRyZW46bixpc09wZW5lZDpoLGNsb3NlT25DbGlja091dHNpZGU6cD0hMCxkb05vdENsb3NlT246bSxvbkNsaWNrT3V0c2lkZTpmLG9uQ2xvc2U6YixvbktleWJvYXJkQ2xvc2U6ZyxkYXRhUWFJZDp2PSJwb3B1cC1tZW51LWNvbnRhaW5lciIsY2xvc2VPblNjcm9sbE91dHNpZGVPZmZzZXQ6eCwuLi5DfT1lLF89KDAsby51c2VDb250ZXh0KSh1LkNsb3NlRGVsZWdhdGVDb250ZXh0KSxTPW8udXNlQ29udGV4dChsLk1lbnVXaWR0aENvbnRleHQpLHc9KDAsby51c2VDb250ZXh0KShkLlJlbWVhc3VyZURlbGVnYXRlQ29udGV4dCkseT0oMCxhLnVzZU91dHNpZGVFdmVudCkoe2hhbmRsZXI6ZnVuY3Rpb24oZSl7ZiYmZihlKTtpZighcClyZXR1cm47Y29uc3QgdD0oMCxzLmRlZmF1bHQpKG0pP20oKTpudWxsPT1tP1tdOlttXTtpZih0Lmxlbmd0aD4wJiZlLnRhcmdldCBpbnN0YW5jZW9mIE5vZGUpZm9yKGNvbnN0IG4gb2YgdCl7Y29uc3QgdD1yLmZpbmRET01Ob2RlKG4pO2lmKHQgaW5zdGFuY2VvZiBOb2RlJiZ0LmNvbnRhaW5zKGUudGFyZ2V0KSlyZXR1cm59YigpfSxtb3VzZURvd246ITAsdG91Y2hTdGFydDohMH0pO3JldHVybiBoP28uY3JlYXRlRWxlbWVudChpLlBvcnRhbCx7dG9wOiIwIixsZWZ0OiIwIixyaWdodDoiMCIsYm90dG9tOiIwIixwb2ludGVyRXZlbnRzOiJub25lIn0sby5jcmVhdGVFbGVtZW50KCJzcGFuIix7cmVmOnksc3R5bGU6e3BvaW50ZXJFdmVudHM6ImF1dG8ifX0sby5jcmVhdGVFbGVtZW50KGMuTWVudSx7Li4uQyxvbkNsb3NlOmIsb25LZXlib2FyZENsb3NlOmcsb25TY3JvbGw6ZnVuY3Rpb24odCl7Y29uc3R7b25TY3JvbGw6bn09ZTtuJiZuKHQpfSxjdXN0b21DbG9zZURlbGVnYXRlOl8sY3VzdG9tUmVtZWFzdXJlRGVsZWdhdGU6dyxyZWY6dCxkYXRhUWFJZDp2LGxpbWl0TWF4V2lkdGg6Uy5zZXRNZW51TWF4V2lkdGgsImRhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzIjoidHJ1ZSIsY2xvc2VPblNjcm9sbE91dHNpZGVPZmZzZXQ6eH0sbikpKTpudWxsfX0sMzAxOTM3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1JlbWVhc3VyZURlbGVnYXRlQ29udGV4dDooKT0+b30pO2NvbnN0IG89big3Nzk0NzQpLmNyZWF0ZUNvbnRleHQodm9pZCAwKX0sODU1MzkxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1NxdWFyZVRhYnNTaXplQ29udGV4dDooKT0+b30pO2NvbnN0IG89KDAsbig3Nzk0NzQpLmNyZWF0ZUNvbnRleHQpKCJzbWFsbCIpfSw5ODY4ODgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7U3F1YXJlVGFiQnV0dG9uOigpPT5wfSk7dmFyIG89big3Nzk0NzQpLHI9big5MTQ0ODcpLHM9bi5uKHIpLGk9bigzMDk5MjApLGE9big4MDk0MzYpLGw9big3NzAxNDMpLGM9big3MTc5MzIpLHU9big4NTUzOTEpLGQ9big2NjkyNjUpLGg9bigzNDg4NDkpO2NvbnN0IHA9KDAsby5mb3J3YXJkUmVmKSgoKGUsdCk9Pntjb25zdCBuPW8udXNlQ29udGV4dCh1LlNxdWFyZVRhYnNTaXplQ29udGV4dCkscj0oMCxvLnVzZUNvbnRleHQpKGkuQ3VzdG9tQmVoYXZpb3VyQ29udGV4dCkse2lkOnAsYWN0aXZlOm0sZmFrZTpmLHRoZW1lOmI9aCxlbmFibGVBY3RpdmVTdGF0ZVN0eWxlczpnPXIuZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXMsaGlkZUZvY3VzT3V0bGluZTp2PSExLGVuZFNsb3Q6eCxzdGFydFNsb3Q6QyxjaGlsZHJlbjpfLGlzVmVydGljYWw6UyxkaXNhYmxlZDp3LGhpZ2hsaWdodGVkOnksZW5kVXBwZXJTbG90OkUsaWNvbk9ubHlPbkFkYXB0aXZlOk0sb3ZlcmZsb3dBZGFwdGl2ZTpUPSJtZWRpYS1tZi1waG9uZS1sYW5kc2NhcGUiLC4uLlJ9PWUsTj0oMCxsLmdldFRleHRGb3JUb29sdGlwKShfKSxPPSEoMCxjLnVzZVNhZmVNYXRjaE1lZGlhKShhW1RdKSYmTSxBPWU9Pm8uY3JlYXRlRWxlbWVudChkLlNxdWFyZVRhYkNvbnRlbnQsewoiYXJpYS1oaWRkZW4iOmUsZW5kU2xvdDp4LHN0YXJ0U2xvdDpDLGVuZFVwcGVyU2xvdDpFLGNsYXNzTmFtZTplP2gudGFiSGlkZGVuQ29udGVudDpoLnRhYkNvbnRlbnQsaXNWZXJ0aWNhbDpTLGRpc2FibGVkOncsc2l6ZTpuLGljb25Pbmx5Ok99LF8pO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIsey4uLlIsaWQ6cCxyZWY6dCxjbGFzc05hbWU6cygpKCJhcHBseS1jb21tb24tdG9vbHRpcCIsImFwcGx5LW92ZXJmbG93LXRvb2x0aXAiLCJhcHBseS1vdmVyZmxvdy10b29sdGlwLS1jaGVjay1jaGlsZHJlbi1yZWN1cnNpdmVseSIsImFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWFsbG93LXRleHQiLGIuc3F1YXJlVGFiQnV0dG9uLG0mJmIuc2VsZWN0ZWQsYltuXSxmJiZiLmZha2UsIWcmJmIuZGlzYWJsZUFjdGl2ZVN0YXRlU3R5bGVzLHYmJmIuZGlzYWJsZUZvY3VzT3V0bGluZSxTJiZiLnZlcnRpY2FsQnV0dG9uLHcmJmIuZGlzYWJsZWQpLCJkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dCI6TiwiZGF0YS10b29sdGlwLXNob3ctb24tZm9jdXMiOiJ0cnVlIix0aXRsZTpPP046dm9pZCAwfSxBKCExKSxBKCEwKSl9KSk7cC5kaXNwbGF5TmFtZT0iU3F1YXJlVGFiQnV0dG9uIn0sMzUzOTcxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1NxdWFyZVRhYjooKT0+aX0pO3ZhciBvPW4oNzc5NDc0KSxyPW4oOTY0NTk0KSxzPW4oOTg2ODg4KTtjb25zdCBpPSgwLG8uZm9yd2FyZFJlZikoKChlLHQpPT57Y29uc3R7aXRlbTpuLGhhbmRsZUl0ZW1SZWY6aSxvbkNsaWNrOmEsLi4ubH09ZSxjPSgwLG8udXNlQ2FsbGJhY2spKCgoKT0+e2EmJmEobil9KSxbYSxuXSksdT0oMCxvLnVzZUNhbGxiYWNrKSgoZT0+e2kmJmkobixlKSwoMCxyLmlzb21vcnBoaWNSZWYpKHQpKGUpfSksW24saSx0XSk7cmV0dXJuIG8uY3JlYXRlRWxlbWVudChzLlNxdWFyZVRhYkJ1dHRvbix7Li4ubCxpZDpuLmlkLCJkYXRhLXFhLWlkIjpuLmlkLG9uQ2xpY2s6YyxyZWY6dSxlbmRTbG90Om4uZW5kU2xvdCxzdGFydFNsb3Q6bi5zdGFydFNsb3QsZW5kVXBwZXJTbG90Om4uZW5kVXBwZXJTbG90LCJhcmlhLWxhYmVsIjoicmFkaW8iPT09bC5yb2xlP24ubGFiZWw6dm9pZCAwfSxuLmxhYmVsKX0pKTtpLmRpc3BsYXlOYW1lPSJTcXVhcmVUYWIifSw2NjkyNjUoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7U3F1YXJlVGFiQ29udGVudDooKT0+bCxnZXRTcXVhcmVUYWJzU2Nyb2xsV3JhcENsYXNzTmFtZXM6KCk9PmN9KTt2YXIgbz1uKDc3OTQ3NCkscj1uKDkxNDQ4Nykscz1uLm4ociksaT1uKDM5NjQzMSksYT1uKDEzNTI4Nyk7ZnVuY3Rpb24gbCh7c3RhcnRTbG90OmUsZW5kU2xvdDp0LGNoaWxkcmVuOm4sY2xhc3NOYW1lOnIsImFyaWEtaGlkZGVuIjpsLGlzVmVydGljYWw6YyxlbmRVcHBlclNsb3Q6dSxpY29uT25seTpkLHNpemU6aH0pe2NvbnN0IHA9ZSYmby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShhLnN0YXJ0U2xvdFdyYXAsZCYmYS5zdGFydFNsb3RXcmFwSWNvbk9ubHkpfSxlKSxtPW4mJiEoYyYmZCkmJm8uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpzKCkoYS5jb250ZW50LGMmJmEudmVydGljYWxDb250ZW50KX0sbiksZj0oMCxvLnVzZU1lbW8pKCgoKT0+e2lmKGMmJmQmJm8uaXNWYWxpZEVsZW1lbnQodCkpe2NvbnN0IGU9dC5wcm9wcz8uY291bnQ7cmV0dXJuIGU/by5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOmEuZW5kVXBwZXJTbG90fSwoMCxpLmdldFRhYkNvdW50ZXIpKHtjb3VudDplLHNpemU6KDAsaS5jb3VudGVyU2l6ZUZyb21TcXVhcmVUYWJzU2l6ZSkoaCl9KSk6bnVsbH1yZXR1cm4gby5jcmVhdGVFbGVtZW50KG8uRnJhZ21lbnQsbnVsbCx0JiZvLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6YS5lbmRTbG90V3JhcH0sdCksdSYmby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOmEuZW5kVXBwZXJTbG90fSx1KSl9KSxbYyxkLHQsdSxoXSk7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCgic3BhbiIseyJhcmlhLWhpZGRlbiI6bCxjbGFzc05hbWU6cn0scCxtLGYpfWZ1bmN0aW9uIGMoZSl7Y29uc3R7b3ZlcmZsb3dCZWhhdmlvdXI6dH09ZTtyZXR1cm4gcygpKGEuc2Nyb2xsV3JhcCwic2Nyb2xsIj09PXQmJmEub3ZlcmZsb3dTY3JvbGwsIndyYXAiPT09dCYmYS5vdmVyZmxvd1dyYXApfX0sMzczNTc0KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1NxdWFyZVRhYnM6KCk9PlR9KTt2YXIgbz1uKDc3OTQ3NCkscj1uKDkxNDQ4Nykscz1uLm4ociksaT1uKDc4MzI1NCksYT1uKDIxMjEyNSksbD1uKDg0Njg1OCksYz1uKDM1Mzk3MSksdT1uKDMxOTY5KSxkPW4oMzg3MjMxKSxoPW4oMTkzODQ3KSxwPW4oMTUzNzM0KSxtPW4oOTg2ODg4KSxmPW4oMjczMzEwKSxiPW4oOTM1MSksZz1uKDczODgyNik7ZnVuY3Rpb24gdihlKXtjb25zdHtpc0Ryb3BwZWQ6dD0hMX09ZTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KGYuSWNvbix7aWNvbjpiLGNsYXNzTmFtZTpzKCkoZy5hcnJvd0ljb24sdCYmZy5kcm9wcGVkKX0pfXZhciB4PW4oMTI5NjYxKTtmdW5jdGlvbiBDKGUpe2NvbnN0e2Rpc2FibGVkOnQsaXNPcGVuZWQ6bixoaWRlRm9jdXNPdXRsaW5lOnIsZmFrZTpzLGl0ZW1zOmksYnV0dG9uQ29udGVudDphLGJ1dHRvblJlZjpsLGJ1dHRvblRoZW1lOmMsaXNIaWdobGlnaHRlZDpmLG9uQnV0dG9uQ2xpY2s6Yixvbkl0ZW1DbGljazpnLG9uQ2xvc2U6Q309ZSxfPSgwLG8udXNlUmVmKShudWxsKSxTPSgwLHUudXNlTWVyZ2VkUmVmcykoW2wsX10pO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoaC5Qb3B1cE1lbnVEaXNjbG9zdXJlVmlldyx7YnV0dG9uUmVmOl8sbGlzdGJveFRhYkluZGV4Oi0xLGlzT3BlbmVkOm4sb25DbG9zZTpDLGxpc3Rib3hBcmlhOnsiYXJpYS1oaWRkZW4iOiEwfSxidXR0b246by5jcmVhdGVFbGVtZW50KG0uU3F1YXJlVGFiQnV0dG9uLHsiYXJpYS1oaWRkZW4iOiEwLGRpc2FibGVkOnQsYWN0aXZlOm4sb25DbGljazpiLHJlZjpTLHRhYkluZGV4Oi0xLHRoZW1lOigwLGQubWVyZ2VUaGVtZXMpKGMseCksaGlkZUZvY3VzT3V0bGluZTpyLApmYWtlOnN9LGEsby5jcmVhdGVFbGVtZW50KHYse2lzRHJvcHBlZDpufSkpLHBvcHVwQ2hpbGRyZW46aS5tYXAoKGU9Pm8uY3JlYXRlRWxlbWVudChwLlBvcHVwTWVudUl0ZW0se2tleTplLmlkLG9uQ2xpY2s6ZyxvbkNsaWNrQXJnOmUsaXNBY3RpdmU6ZihlKSxsYWJlbDplLmxhYmVsLGlzRGlzYWJsZWQ6ZS5kaXNhYmxlZHx8dCxzdGFydFNsb3Q6ZS5zdGFydFNsb3QsdG9vbGJveDplLmVuZFVwcGVyU2xvdD9vLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6Yy5lbmRTbG90SW5EaXNjbG9zdXJlfSxlLmVuZFVwcGVyU2xvdCk6ZS5lbmRTbG90LGRvbnRDbG9zZVBvcHVwOiEwfSkpKX0pfXZhciBfPW4oODU1MzkxKSxTPW4oNjkwMDk3KSx3PW4oMTE1MjkzKSx5PW4oNjY5MjY1KSxFPW4oMzM2ODUxKTtmdW5jdGlvbiBNKGUpe2NvbnN0e2Rpc2FibGVkOnQsbW9yZUJ1dHRvbkNvbnRlbnQ6cj0oKT0+aS50KG51bGwsdm9pZCAwLG4oMzk0OTQ3KSksc2l6ZTp1PSJzbWFsbCIsdGhlbWU6ZD1TLmRlZmF1bHRUaGVtZSxjbGFzc05hbWU6aCxzdHlsZTpwLCJkYXRhLW5hbWUiOm0sImFyaWEtY29udHJvbHMiOmYsaXNSYWRpb0dyb3VwOmJ9PWUsZz1wYXJzZUludChFW2Bjc3MtdmFsdWUtc3F1YXJlLXRhYnMtJHt1fS1nYXBgXSkse2VuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOnYsbW9yZUJ1dHRvblJlZjp4LHNldEl0ZW1SZWY6TSxnZXRCaW5kaW5nczpULGhhbmRsZU1vcmVCdXR0b25DbGljazpSLGhhbmRsZUNvbGxhcHNlZEl0ZW1DbGljazpOLHNjcm9sbFdyYXBCaW5kaW5nOk8sb3ZlcmZsb3dCZWhhdmlvdXI6QSx0YWJsaXN0QmluZGluZzpJLHZpc2libGVUYWJzOlcsaGlkZGVuVGFiczprLGhhbmRsZUFjdGl2YXRlOkIsaXNNb2JpbGVUb3VjaDpELGdldEl0ZW1JZDpGLGlzRGlzY2xvc3VyZU9wZW5lZDpMLGlzSGlnaGxpZ2h0ZWQ6UCxjbG9zZURpc2Nsb3N1cmU6en09KDAsbC51c2VUYWJzTWFpbkhhbmRsZXJzKShhLlRhYk5hbWVzLlNxdWFyZUJ1dHRvblRhYnMsZSx7aXNSdGw6dy5pc1J0bCxzY3JvbGxJbnRvVmlld09wdGlvbnM6e2FkZGl0aW9uYWxTY3JvbGw6Z30saXNSYWRpb0dyb3VwOmIsZ2FwOmd9KTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KF8uU3F1YXJlVGFic1NpemVDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTp1fSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIsey4uLk8sY2xhc3NOYW1lOnMoKSgoMCx5LmdldFNxdWFyZVRhYnNTY3JvbGxXcmFwQ2xhc3NOYW1lcykoe292ZXJmbG93QmVoYXZpb3VyOkF9KSxoKSxzdHlsZTp7Li4ucCwiLS11aS1saWItcHJpdmF0ZS1zcXVhcmVUYWJzLWdhcCI6YCR7Z31weGB9LCJkYXRhLW5hbWUiOm19LG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7Li4uSSxjbGFzc05hbWU6cygpKGQuc3F1YXJlVGFicyxkW3VdKX0sVy5tYXAoKGU9Pm8uY3JlYXRlRWxlbWVudChjLlNxdWFyZVRhYix7Li4uVChlKT8/e30sa2V5OmUuaWQsaXRlbTplLG9uQ2xpY2s6KCk9PkIoZSksdGhlbWU6ZCxlbmFibGVBY3RpdmVTdGF0ZVN0eWxlczp2LGhpZGVGb2N1c091dGxpbmU6RCxyZWY6TShGKGUpKSwuLi5lLmRhdGFJZCYmeyJkYXRhLWlkIjplLmRhdGFJZH0sImFyaWEtY29udHJvbHMiOmZ9KSkpLGsubWFwKChlPT5vLmNyZWF0ZUVsZW1lbnQoYy5TcXVhcmVUYWIsey4uLlQoZSk/P3t9LGtleTplLmlkLGl0ZW06ZSx0aGVtZTpkLGVuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOnYsZmFrZTohMCwiYXJpYS1jb250cm9scyI6Zn0pKSksby5jcmVhdGVFbGVtZW50KEMse2Rpc2FibGVkOnQsaXNPcGVuZWQ6TCxpdGVtczprLGJ1dHRvbkNvbnRlbnQ6cih7aGlkZGVuVGFiczprfSksYnV0dG9uUmVmOngsYnV0dG9uVGhlbWU6ZCxpc0hpZ2hsaWdodGVkOlAsb25CdXR0b25DbGljazpSLG9uSXRlbUNsaWNrOk4sb25DbG9zZTp6LGhpZGVGb2N1c091dGxpbmU6RCxmYWtlOjA9PT1rLmxlbmd0aH0pKSkpfWZ1bmN0aW9uIFQoZSl7Y29uc3R7ImRhdGEtbmFtZSI6dD0ic3F1YXJlLXRhYnMtYnV0dG9ucyIsLi4ubn09ZTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KE0sey4uLm4sImRhdGEtbmFtZSI6dH0pfX0sNzIxOTEwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvdW50ZXI6KCk9PmR9KTt2YXIgbyxyLHMsaT1uKDkxNDQ4NyksYT1uLm4oaSksbD1uKDc3OTQ3NCksYz1uKDM2Mjc5MyksdT1uLm4oYyk7ZnVuY3Rpb24gZChlKXtjb25zdHtjbGFzc05hbWU6dCxjb3VudDpuLGNvbXBhY3Q6bz0hMCxzaXplOnI9InhsYXJnZSIsY29sb3I6cz0iZGFuZ2VyIixzaWduOmksYm9yZGVyQ29sb3I6Yz0ibm9uZSIsImFyaWEtbGFiZWwiOmQsImFyaWEtaGlkZGVuIjpoLGRpc2FibGVkOnAsLi4ubX09ZSxmPW07bGV0IGI7Yj0hKCJ4eHNtYWxsIj09PXJ8fCJ4eHhzbWFsbCI9PT1yKSYmbj9vJiZuPj0xMDA/Ijk5KyI6aSYmbj4wP2ArJHtufWA6bjoiIjtjb25zdCBnPWEoKSh0LHUoKS5jb3VudGVyLHUoKVtyXSx1KClbYGNvbG9yLSR7c31gXSwibm9uZSIhPT1jJiZ1KClbYGJvcmRlckNvbG9yLSR7Y31gXSxwJiZ1KCkuZGlzYWJsZWQpO3JldHVybiBsLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHsuLi5mLGNsYXNzTmFtZTpnLHJvbGU6dm9pZCAwIT09ZD8iaW1nIjp2b2lkIDAsImFyaWEtbGFiZWwiOmQsImFyaWEtaGlkZGVuIjpofSxiKX0hZnVuY3Rpb24oZSl7ZS5YWFhTbWFsbD0ieHh4c21hbGwiLGUuWFhTbWFsbD0ieHhzbWFsbCIsZS5YU21hbGw9InhzbWFsbCIsZS5TbWFsbD0ic21hbGwiLGUuTWVkaXVtPSJtZWRpdW0iLGUuTGFyZ2U9ImxhcmdlIixlLlhMYXJnZT0ieGxhcmdlIn0ob3x8KG89e30pKSxmdW5jdGlvbihlKXtlLkRhbmdlcj0iZGFuZ2VyIixlLkFjY2VudD0iYWNjZW50IixlLkFjY2VudExpZ2h0PSJhY2NlbnQtbGlnaHQiLGUuTmV1dHJhbEJvbGQ9Im5ldXRyYWwtYm9sZCIsZS5OZXV0cmFsPSJuZXV0cmFsIn0ocnx8KHI9e30pKSxmdW5jdGlvbihlKXtlLlByaW1hcnk9InByaW1hcnkiLGUuU2Vjb25kYXJ5PSJzZWNvbmRhcnkiLGUuVGVydGlhcnk9InRlcnRpYXJ5IixlLk5vbmU9Im5vbmUifShzfHwocz17fSkpfSw1Mjk0MTEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7CnVzZUlzTm9uRmlyc3RSZW5kZXI6KCk9PnJ9KTt2YXIgbz1uKDc3OTQ3NCk7ZnVuY3Rpb24gcigpe3JldHVybiFmdW5jdGlvbigpe2NvbnN0W2UsdF09KDAsby51c2VTdGF0ZSkoITApO3JldHVybigwLG8udXNlRWZmZWN0KSgoKCk9Pnt0KCExKX0pLFtdKSxlfSgpfX0sMTQ1OTg0KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZUZvY3VzOigpPT5yfSk7dmFyIG89big3Nzk0NzQpO2Z1bmN0aW9uIHIoZSx0KXtjb25zdFtuLHJdPSgwLG8udXNlU3RhdGUpKCExKTsoMCxvLnVzZUVmZmVjdCkoKCgpPT57dCYmbiYmcighMSl9KSxbdCxuXSk7Y29uc3Qgcz17b25Gb2N1czooMCxvLnVzZUNhbGxiYWNrKSgoZnVuY3Rpb24odCl7dm9pZCAwIT09ZSYmZS5jdXJyZW50IT09dC50YXJnZXR8fHIoITApfSksW2VdKSxvbkJsdXI6KDAsby51c2VDYWxsYmFjaykoKGZ1bmN0aW9uKHQpe3ZvaWQgMCE9PWUmJmUuY3VycmVudCE9PXQudGFyZ2V0fHxyKCExKX0pLFtlXSl9O3JldHVybltuLHNdfX0sNzg3ODk1KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZUZ1bmN0aW9uYWxSZWZPYmplY3Q6KCk9PnN9KTt2YXIgbz1uKDc3OTQ3NCkscj1uKDYxNjMxMSk7ZnVuY3Rpb24gcyhlKXtjb25zdCB0PSgwLG8udXNlTWVtbykoKCgpPT5mdW5jdGlvbihlKXtjb25zdCB0PW49PntlKG4pLHQuY3VycmVudD1ufTtyZXR1cm4gdC5jdXJyZW50PW51bGwsdH0oKGU9PnthLmN1cnJlbnQoZSl9KSkpLFtdKSxuPSgwLG8udXNlUmVmKShudWxsKSxzPXQ9PntpZihudWxsPT09dClyZXR1cm4gaShuLmN1cnJlbnQsdCksdm9pZChuLmN1cnJlbnQ9bnVsbCk7bi5jdXJyZW50IT09ZSYmKG4uY3VycmVudD1lLGkobi5jdXJyZW50LHQpKX0sYT0oMCxvLnVzZVJlZikocyk7cmV0dXJuIGEuY3VycmVudD1zLCgwLHIudXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCkoKCgpPT57aWYobnVsbCE9PXQuY3VycmVudClyZXR1cm4gYS5jdXJyZW50KHQuY3VycmVudCksKCk9PmEuY3VycmVudChudWxsKX0pLFtlXSksdH1mdW5jdGlvbiBpKGUsdCl7bnVsbCE9PWUmJigiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQpOmUuY3VycmVudD10KX19LDMxOTY5KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZU1lcmdlZFJlZnM6KCk9PnN9KTt2YXIgbz1uKDc3OTQ3NCkscj1uKDk2NDU5NCk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4oMCxvLnVzZUNhbGxiYWNrKSgoMCxyLm1lcmdlUmVmcykoZSksZSl9fSw5MDA4NDEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUsdCxuLG8scil7ZnVuY3Rpb24gcyhyKXtpZihlPnIudGltZVN0YW1wKXJldHVybjtjb25zdCBzPXIudGFyZ2V0O3ZvaWQgMCE9PW4mJm51bGwhPT10JiZudWxsIT09cyYmcy5vd25lckRvY3VtZW50PT09byYmKHQuY29udGFpbnMocyl8fG4ocikpfXJldHVybiByLmNsaWNrJiZvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixzLCExKSxyLm1vdXNlRG93biYmby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHMsITEpLHIudG91Y2hFbmQmJm8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLHMsITEpLHIudG91Y2hTdGFydCYmby5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixzLCExKSwoKT0+e28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHMsITEpLG8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixzLCExKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixzLCExKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHMsITEpfX1uLmQodCx7YWRkT3V0c2lkZUV2ZW50TGlzdGVuZXI6KCk9Pm99KX0sMjM2NzY1KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZU91dHNpZGVFdmVudDooKT0+aX0pO3ZhciBvPW4oNzc5NDc0KSxyPW4oNjE2MzExKSxzPW4oOTAwODQxKTtmdW5jdGlvbiBpKGUpe2NvbnN0e2NsaWNrOnQsbW91c2VEb3duOm4sdG91Y2hFbmQ6aSx0b3VjaFN0YXJ0OmEsaGFuZGxlcjpsLHJlZmVyZW5jZTpjfT1lLHU9KDAsby51c2VSZWYpKG51bGwpLGQ9KDAsby51c2VSZWYpKCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93PzA6bmV3IHdpbmRvdy5DdXN0b21FdmVudCgidGltZXN0YW1wIikudGltZVN0YW1wKTtyZXR1cm4oMCxyLnVzZUlzb21vcnBoaWNMYXlvdXRFZmZlY3QpKCgoKT0+e2NvbnN0IGU9e2NsaWNrOnQsbW91c2VEb3duOm4sdG91Y2hFbmQ6aSx0b3VjaFN0YXJ0OmF9LG89Yz9jLmN1cnJlbnQ6dS5jdXJyZW50O3JldHVybigwLHMuYWRkT3V0c2lkZUV2ZW50TGlzdGVuZXIpKGQuY3VycmVudCxvLGwsZG9jdW1lbnQsZSl9KSxbdCxuLGksYSxsXSksY3x8dX19LDcxOTQyNShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt1c2VSZXNpemVPYnNlcnZlcjooKT0+aX0pO3ZhciBvPW4oNzc5NDc0KSxyPW4oNjE2MzExKSxzPW4oNzg3ODk1KTtmdW5jdGlvbiBpKGUsdD1bXSl7Y29uc3R7Y2FsbGJhY2s6bixyZWY6aT1udWxsfT1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZT97Y2FsbGJhY2s6ZX06ZX0oZSksYT0oMCxvLnVzZVJlZikobnVsbCksbD0oMCxvLnVzZVJlZikobik7bC5jdXJyZW50PW47Y29uc3QgYz0oMCxzLnVzZUZ1bmN0aW9uYWxSZWZPYmplY3QpKGkpLHU9KDAsby51c2VDYWxsYmFjaykoKGU9PntjKGUpLG51bGwhPT1hLmN1cnJlbnQmJihhLmN1cnJlbnQuZGlzY29ubmVjdCgpLG51bGwhPT1lJiZhLmN1cnJlbnQub2JzZXJ2ZShlKSl9KSxbYyxhXSk7cmV0dXJuKDAsci51c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0KSgoKCk9PihhLmN1cnJlbnQ9bmV3IFJlc2l6ZU9ic2VydmVyKCgoZSx0KT0+e2wuY3VycmVudChlLHQpfSkpLGMuY3VycmVudCYmdShjLmN1cnJlbnQpLCgpPT57YS5jdXJyZW50Py5kaXNjb25uZWN0KCl9KSksW2MsLi4udF0pLHV9fSwyMjc5NDkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7TWVudVdpZHRoQ29udGV4dDooKT0+b30pO2NvbnN0IG89big3Nzk0NzQpLmNyZWF0ZUNvbnRleHQoe3NldE1lbnVNYXhXaWR0aDohMX0pfSw4OTEyMDkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7U3VibWVudUNvbnRleHQ6KCk9PnIsClN1Ym1lbnVIYW5kbGVyOigpPT5zfSk7dmFyIG89big3Nzk0NzQpO2NvbnN0IHI9by5jcmVhdGVDb250ZXh0KG51bGwpO2Z1bmN0aW9uIHMoZSl7Y29uc3RbdCxuXT0oMCxvLnVzZVN0YXRlKShudWxsKSxzPSgwLG8udXNlUmVmKShudWxsKSxpPSgwLG8udXNlUmVmKShuZXcgTWFwKTtyZXR1cm4oMCxvLnVzZUVmZmVjdCkoKCgpPT4oKT0+e251bGwhPT1zLmN1cnJlbnQmJmNsZWFyVGltZW91dChzLmN1cnJlbnQpfSksW10pLG8uY3JlYXRlRWxlbWVudChyLlByb3ZpZGVyLHt2YWx1ZTp7Y3VycmVudDp0LHNldEN1cnJlbnQ6ZnVuY3Rpb24oZSl7bnVsbCE9PXMuY3VycmVudCYmKGNsZWFyVGltZW91dChzLmN1cnJlbnQpLHMuY3VycmVudD1udWxsKTtudWxsPT09dD9uKGUpOnMuY3VycmVudD1zZXRUaW1lb3V0KCgoKT0+e3MuY3VycmVudD1udWxsLG4oZSl9KSwxMDApfSxyZWdpc3RlclN1Ym1lbnU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gaS5jdXJyZW50LnNldChlLHQpLCgpPT57aS5jdXJyZW50LmRlbGV0ZShlKX19LGlzU3VibWVudU5vZGU6ZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmZyb20oaS5jdXJyZW50LnZhbHVlcygpKS5zb21lKCh0PT50KGUpKSl9fX0sZS5jaGlsZHJlbil9fSw1ODU0OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtQb3J0YWw6KCk9PmMsUG9ydGFsQ29udGV4dDooKT0+dX0pO3ZhciBvPW4oNzc5NDc0KSxyPW4oMTI5MzY1KSxzPW4oODU2NzcwKSxpPW4oOTAzNDIpLGE9big1NzAxOTMpLGw9big2MDc4MzIpO2NsYXNzIGMgZXh0ZW5kcyBvLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuX3V1aWQ9KDAscy5uYW5vaWQpKCl9Y29tcG9uZW50V2lsbFVubW91bnQoKXt0aGlzLl9tYW5hZ2VyKCkucmVtb3ZlV2luZG93KHRoaXMuX3V1aWQpfXJlbmRlcigpe2NvbnN0IGU9dGhpcy5fbWFuYWdlcigpLmVuc3VyZVdpbmRvdyh0aGlzLl91dWlkLHRoaXMucHJvcHMubGF5ZXJPcHRpb25zKTtlLnN0eWxlLnRvcD10aGlzLnByb3BzLnRvcHx8IiIsZS5zdHlsZS5ib3R0b209dGhpcy5wcm9wcy5ib3R0b218fCIiLGUuc3R5bGUubGVmdD10aGlzLnByb3BzLmxlZnR8fCIiLGUuc3R5bGUucmlnaHQ9dGhpcy5wcm9wcy5yaWdodHx8IiIsZS5zdHlsZS5wb2ludGVyRXZlbnRzPXRoaXMucHJvcHMucG9pbnRlckV2ZW50c3x8IiI7Y29uc3QgdD10aGlzLnByb3BzLmNsYXNzTmFtZTtyZXR1cm4gdCYmKCJzdHJpbmciPT10eXBlb2YgdD9lLmNsYXNzTGlzdC5hZGQodCk6ZS5jbGFzc0xpc3QuYWRkKC4uLnQpKSx0aGlzLnByb3BzLnNob3VsZFRyYXBGb2N1cyYmIWUuaGFzQXR0cmlidXRlKGEuRk9DVVNfVFJBUF9EQVRBX0FUVFJJQlVURSkmJmUuc2V0QXR0cmlidXRlKGEuRk9DVVNfVFJBUF9EQVRBX0FUVFJJQlVURSwidHJ1ZSIpLHRoaXMucHJvcHNbImFyaWEtaGlkZGVuIl0mJmUuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKSxyLmNyZWF0ZVBvcnRhbChvLmNyZWF0ZUVsZW1lbnQodS5Qcm92aWRlcix7dmFsdWU6dGhpc30sdGhpcy5wcm9wcy5jaGlsZHJlbiksZSl9bW92ZVRvVG9wKCl7dGhpcy5fbWFuYWdlcigpLm1vdmVUb1RvcCh0aGlzLl91dWlkKX1fbWFuYWdlcigpe3JldHVybiBudWxsPT09dGhpcy5jb250ZXh0PygwLGkuZ2V0Um9vdE92ZXJsYXBNYW5hZ2VyKSgpOnRoaXMuY29udGV4dH19Yy5jb250ZXh0VHlwZT1sLlNsb3RDb250ZXh0O2NvbnN0IHU9by5jcmVhdGVDb250ZXh0KG51bGwpfSw2MDc4MzIoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7U2xvdDooKT0+cixTbG90Q29udGV4dDooKT0+c30pO3ZhciBvPW4oNzc5NDc0KTtjbGFzcyByIGV4dGVuZHMgby5Db21wb25lbnR7c2hvdWxkQ29tcG9uZW50VXBkYXRlKCl7cmV0dXJuITF9cmVuZGVyKCl7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7c3R5bGU6e3Bvc2l0aW9uOiJmaXhlZCIsekluZGV4OjE1MCxsZWZ0OjAsdG9wOjB9LHJlZjp0aGlzLnByb3BzLnJlZmVyZW5jZX0pfX1jb25zdCBzPW8uY3JlYXRlQ29udGV4dChudWxsKX0sMzE0NzIwKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlLHQ9ITEpe2NvbnN0IG49Z2V0Q29tcHV0ZWRTdHlsZShlKSxvPVtuLndpZHRoXTtyZXR1cm4iYm9yZGVyLWJveCIhPT1uLmJveFNpemluZyYmby5wdXNoKG4ucGFkZGluZ0xlZnQsbi5wYWRkaW5nUmlnaHQsbi5ib3JkZXJMZWZ0V2lkdGgsbi5ib3JkZXJSaWdodFdpZHRoKSx0JiZvLnB1c2gobi5tYXJnaW5MZWZ0LG4ubWFyZ2luUmlnaHQpLG8ucmVkdWNlKCgoZSx0KT0+ZSsocGFyc2VGbG9hdCh0KXx8MCkpLDApfW4uZCh0LHtvdXRlcldpZHRoOigpPT5vfSl9LDU3MDE5MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtGT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFOigpPT5vfSk7Y29uc3Qgbz0iZGF0YS1mb2N1cy10cmFwIn0sODQ4OTg4KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gMD09PWUuZGV0YWlsfW4uZCh0LHtpc0tleWJvYXJkQ2xpY2s6KCk9Pm99KX0sOTY0NTk0KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gdD0+e2UuZm9yRWFjaCgoZT0+eyJmdW5jdGlvbiI9PXR5cGVvZiBlP2UodCk6bnVsbCE9ZSYmKGUuY3VycmVudD10KX0pKX19ZnVuY3Rpb24gcihlKXtyZXR1cm4gbyhbZV0pfW4uZCh0LHtpc29tb3JwaGljUmVmOigpPT5yLG1lcmdlUmVmczooKT0+b30pfSw5MDM0MihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtPdmVybGFwTWFuYWdlcjooKT0+aSxnZXRSb290T3ZlcmxhcE1hbmFnZXI6KCk9Pmx9KTt2YXIgbz1uKDEzODYzOCkscj1uKDU3MDE5Myk7Y2xhc3Mgc3tjb25zdHJ1Y3Rvcigpe3RoaXMuX3N0b3JhZ2U9W119YWRkKGUpe3RoaXMuX3N0b3JhZ2UucHVzaChlKX1yZW1vdmUoZSl7dGhpcy5fc3RvcmFnZT10aGlzLl9zdG9yYWdlLmZpbHRlcigodD0+ZSE9PXQpKX1oYXMoZSl7cmV0dXJuIHRoaXMuX3N0b3JhZ2UuaW5jbHVkZXMoZSl9Z2V0SXRlbXMoKXtyZXR1cm4gdGhpcy5fc3RvcmFnZX19Y2xhc3MgaXtjb25zdHJ1Y3RvcihlPWRvY3VtZW50KXsKdGhpcy5fc3RvcmFnZT1uZXcgcyx0aGlzLl93aW5kb3dzPW5ldyBNYXAsdGhpcy5faW5kZXg9MCx0aGlzLl9kb2N1bWVudD1lLHRoaXMuX2NvbnRhaW5lcj1lLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKX1zZXRDb250YWluZXIoZSl7Y29uc3QgdD10aGlzLl9jb250YWluZXIsbj1udWxsPT09ZT90aGlzLl9kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk6ZTshZnVuY3Rpb24oZSx0KXtBcnJheS5mcm9tKGUuY2hpbGROb2RlcykuZm9yRWFjaCgoZT0+e2Uubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmdC5hcHBlbmRDaGlsZChlKX0pKX0odCxuKSx0aGlzLl9jb250YWluZXI9bn1yZWdpc3RlcldpbmRvdyhlKXt0aGlzLl9zdG9yYWdlLmhhcyhlKXx8dGhpcy5fc3RvcmFnZS5hZGQoZSl9ZW5zdXJlV2luZG93KGUsdD17cG9zaXRpb246ImZpeGVkIixkaXJlY3Rpb246Im5vcm1hbCJ9KXtjb25zdCBuPXRoaXMuX3dpbmRvd3MuZ2V0KGUpO2lmKHZvaWQgMCE9PW4pcmV0dXJuIG47dGhpcy5yZWdpc3RlcldpbmRvdyhlKTtjb25zdCBvPXRoaXMuX2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG8uc3R5bGUucG9zaXRpb249dC5wb3NpdGlvbixvLnN0eWxlLnpJbmRleD10aGlzLl9pbmRleC50b1N0cmluZygpLG8uZGF0YXNldC5pZD1lLHZvaWQgMCE9PXQuaW5kZXgpe2NvbnN0IGU9dGhpcy5fY29udGFpbmVyLmNoaWxkTm9kZXMubGVuZ3RoO2lmKHQuaW5kZXg+PWUpdGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKG8pO2Vsc2UgaWYodC5pbmRleDw9MCl0aGlzLl9jb250YWluZXIuaW5zZXJ0QmVmb3JlKG8sdGhpcy5fY29udGFpbmVyLmZpcnN0Q2hpbGQpO2Vsc2V7Y29uc3QgZT10aGlzLl9jb250YWluZXIuY2hpbGROb2Rlc1t0LmluZGV4XTt0aGlzLl9jb250YWluZXIuaW5zZXJ0QmVmb3JlKG8sZSl9fWVsc2UicmV2ZXJzZSI9PT10LmRpcmVjdGlvbj90aGlzLl9jb250YWluZXIuaW5zZXJ0QmVmb3JlKG8sdGhpcy5fY29udGFpbmVyLmZpcnN0Q2hpbGQpOnRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChvKTtyZXR1cm4gdGhpcy5fd2luZG93cy5zZXQoZSxvKSwrK3RoaXMuX2luZGV4LG99dW5yZWdpc3RlcldpbmRvdyhlKXt0aGlzLl9zdG9yYWdlLnJlbW92ZShlKTtjb25zdCB0PXRoaXMuX3dpbmRvd3MuZ2V0KGUpO3ZvaWQgMCE9PXQmJihudWxsIT09dC5wYXJlbnRFbGVtZW50JiZ0LnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQodCksdGhpcy5fd2luZG93cy5kZWxldGUoZSkpfWdldFppbmRleChlKXtjb25zdCB0PXRoaXMuZW5zdXJlV2luZG93KGUpO3JldHVybiBwYXJzZUludCh0LnN0eWxlLnpJbmRleHx8IjAiKX1tb3ZlTGFzdFdpbmRvd1RvVG9wKCl7Y29uc3QgZT10aGlzLl9zdG9yYWdlLmdldEl0ZW1zKCksdD1lW2UubGVuZ3RoLTFdO3QmJnRoaXMubW92ZVRvVG9wKHQpfW1vdmVUb1RvcChlKXtpZih0aGlzLmdldFppbmRleChlKSE9PXRoaXMuX2luZGV4KXtjb25zdCB0PXRoaXMuZW5zdXJlV2luZG93KGUpO3RoaXMuX3dpbmRvd3MuZm9yRWFjaCgoKGUsbik9PntlLmhhc0F0dHJpYnV0ZShyLkZPQ1VTX1RSQVBfREFUQV9BVFRSSUJVVEUpJiZlLnNldEF0dHJpYnV0ZShyLkZPQ1VTX1RSQVBfREFUQV9BVFRSSUJVVEUsZT09PXQ/InRydWUiOiJmYWxzZSIpfSkpLHQuc3R5bGUuekluZGV4PSgrK3RoaXMuX2luZGV4KS50b1N0cmluZygpfX1yZW1vdmVXaW5kb3coZSl7dGhpcy51bnJlZ2lzdGVyV2luZG93KGUpfX1jb25zdCBhPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIGwoZT1kb2N1bWVudCl7Y29uc3QgdD1lLmdldEVsZW1lbnRCeUlkKCJvdmVybGFwLW1hbmFnZXItcm9vdCIpO2lmKG51bGwhPT10KXJldHVybigwLG8uZW5zdXJlRGVmaW5lZCkoYS5nZXQodCkpO3tjb25zdCB0PW5ldyBpKGUpLG49ZnVuY3Rpb24oZSl7Y29uc3QgdD1lLmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiB0LnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsdC5zdHlsZS56SW5kZXg9MTUwLi50b1N0cmluZygpLHQuc3R5bGUudG9wPSIwcHgiLHQuc3R5bGUubGVmdD0iMHB4Iix0LmlkPSJvdmVybGFwLW1hbmFnZXItcm9vdCIsdC5kYXRhc2V0LnFhSWQ9Im92ZXJsYXAtbWFuYWdlci1yb290Iix0fShlKTtyZXR1cm4gYS5zZXQobix0KSx0LnNldENvbnRhaW5lcihuKSxlLmJvZHkuYXBwZW5kQ2hpbGQobiksdH19dmFyIGM7IWZ1bmN0aW9uKGUpe2VbZS5CYXNlWmluZGV4PTE1MF09IkJhc2VaaW5kZXgifShjfHwoYz17fSkpfSw4MzM5MDMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKC4uLmUpe3JldHVybiB0PT57Zm9yKGNvbnN0IG4gb2YgZSl2b2lkIDAhPT1uJiZuKHQpfX1uLmQodCx7Y3JlYXRlU2FmZU11bHRpY2FzdEV2ZW50SGFuZGxlcjooKT0+b30pfSw2MTYzMTEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdDooKT0+cn0pO3ZhciBvPW4oNzc5NDc0KTtmdW5jdGlvbiByKGUsdCl7KCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93P28udXNlRWZmZWN0Om8udXNlTGF5b3V0RWZmZWN0KShlLHQpfX19XSk7"}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.169Z","timestamp":1785154591169,"http_version":"","security_state":"","security_info":null,"request":{"raw":"OPTIONS /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-type\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/79207.6a62fc803d3d07898936.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.227Z","timestamp":1785154590227,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/79207.6a62fc803d3d07898936.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1271\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 983971d958ac564ec2ef7726a1b76cb0\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4721,"size_decoded":3183,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3065)","md5":"9f9984517a8cd65036faf42932513a8f","sha1":"05cac6f7fbc24daccaaefb92b34f6eecdc91d8d1","sha256":"597ae9e64dd837a96e9166ffeb016e0757a49f06719163620ea9c616bae3ea2a","sha512":"f122449c6f6d72c179c4a59ec669368d3caaf2e5fc59ab4dbe5a3b10c172380e9033fe19842cb0c81ba7ef956058ff787693678223786ed92f6f5188ca177f44","ssdeep":"96:S0yn+dFlV8m0eKoPnRuKfeYX1X45tTZkcdrEAUbNfBn3Codbrbth1o3I9dxKsbRN:S0yn+dFlV81YRuKWYXWhdrIBn3Pjh1Ag","tlshash":"faa1b6c630f770d673aa19e5813b0447f2be09d13a0b96e5b4989cc938750167a63fac","first_seen":"2026-07-23T13:38:20.419582Z","last_seen":"2026-07-27T14:18:36.346184Z","times_seen":1368,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNzkyMDddLHs2NDA3NDQoZSx0LG4pe2Z1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChlLHQpLG4pfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIGU+MD9NYXRoLmZsb29yKGUpOk1hdGguY2VpbChlKX1mdW5jdGlvbiBpKGUpe3JldHVybiBlJTI9PTB9bi5kKHQse2NsYW1wOigpPT5vLGlzRXZlbjooKT0+aSx0b0ludDooKT0+cn0pfSw0NzkzNChlLHQsbil7bi5kKHQse2VuYWJsZWQ6KCk9PnMsZ2V0Q29uZmlnOigpPT5jfSk7dmFyIG89big1MDI1ODcpLHI9bigxMjc3MTEpLGk9bigzMTg5NzQpLGw9bigyMTIyMjkpO2Z1bmN0aW9uIHMoZSx0LG4pe2xldCBvPXdpbmRvdy51c2VyO24mJihvPW4pO2NvbnN0IHI9YyhlLHQsbyk7aWYoIXIpcmV0dXJuITE7aWYoci5kaXNhYmxlX29uX3RyaWFsJiYoIW98fG8uaXNfdHJpYWwpKXJldHVybiExO2NvbnN0IGw9ci5kaXNhYmxlX29uX2xpdGVfcGxhbjtpZihsJiZvLmlzX2xpdGVfcGxhbil7aWYoImFsbCI9PT1sKXJldHVybiExO2lmKCJleGNsdWRlX21vYmlsZSI9PT1sJiYhaS5DaGVja01vYmlsZS5hbnkoKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9b1tlXTtyZXR1cm4gdD90LmV4dGVuZHM/T2JqZWN0LmFzc2lnbih7fSx1KHQuZXh0ZW5kcyksdCk6dDpudWxsfWZ1bmN0aW9uIGMoZSx0LG4pe2xldCBvPXUodHx8KGZ1bmN0aW9uKGUpe2xldCB0PXdpbmRvdy51c2VyOyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cudXNlciYmKHQ9d2luZG93LnVzZXIpLGUmJih0PWUpO2xldCBuPXQ/LnByb19wbGFufHwiZnJlZSI7cmV0dXJuImZyZWUiIT09biYmISgwLGwuaXNUcmlhbFByb2R1Y3QpKG4pfHwobj0oMCxsLmdldFByb2R1Y3RGb3JUcmlhbCkobikpLG59KG4pPz8iIikpO2lmKCFvKXJldHVybiBudWxsO2NvbnN0IGk9d2luZG93LlRyYWRpbmdWaWV3Py53aWRnZXRDdXN0b21lcjtyZXR1cm4gaSYmcltpXSYmKG89T2JqZWN0LmFzc2lnbih7fSxvLHJbaV0pKSxvJiZvW2VdfHxudWxsfX0sODYyMjEzKGUsdCxuKXtuLmQodCx7TG9nb1NpemU6KCk9Pm8uTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT5hfSk7dmFyIG89big2MjAzNTQpLHI9bigxMzg2MzgpLGk9big2MzE2MzQpLGw9big4MTA0MSk7Y29uc3Qgcz0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiTG9nb1VybFJlc29sdmVyIik7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxyLmFzc2VydCkoIiIhPT1lLCJTMyBiYXNlIHVybCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpLHRoaXMuX2Jhc2VVcmw9ZX1nZXRTeW1ib2xMb2dvVXJsKGUsdCl7aWYoIiI9PT1lKXJldHVybiBzLmxvZ1dhcm4oImxvZ28gaWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSwiIjtzd2l0Y2godCl7Y2FzZSBvLkxvZ29TaXplLk1lZGl1bTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS5zdmdgO2Nhc2Ugby5Mb2dvU2l6ZS5MYXJnZTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS0tYmlnLnN2Z2B9fWdldENvdW50cnlGbGFnVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiY291bnRyeS8iK2UsdCl9Z2V0UHJvdmlkZXJMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgicHJvdmlkZXIvIitlLHQpfWdldFNvdXJjZUxvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJzb3VyY2UvIitlLHQpfWdldEJsb2NrY2hhaW5Db250cmFjdExvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJibG9ja2NoYWluLyIrZSx0KX1nZXRDYW5kbGVzdGlja1BhdHRlcm5Mb2dvVXJsKGUsdD1sLlN0ZFRoZW1lLkxpZ2h0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKGBjYW5kbGVwYXR0ZXJuLyR7ZX0tJHt0fWAsby5Mb2dvU2l6ZS5NZWRpdW0pfX1sZXQgYztmdW5jdGlvbiBhKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIWMpe2NvbnN0IGU9KDAsaS5nZXRJbml0RGF0YSkoKSx0PWUuc2V0dGluZ3M/ZS5zZXR0aW5ncy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkw6IiI7Yz1uZXcgdSh0KX1yZXR1cm4gY30oKX19LDIzNDk2NChlLHQsbil7YXN5bmMgZnVuY3Rpb24gbyhlLHQpe2NvbnN0IG89YXdhaXQgUHJvbWlzZS5hbGwoW24uZSgyODgzMSksbi5lKDg0MzA2KSxuLmUoMjkyOTYpLG4uZSg1MjM5Niksbi5lKDYwMDYyKSxuLmUoMjAzNTQpLG4uZSgxMzQ5Miksbi5lKDM3NzQ2KSxuLmUoMTIzODUpLG4uZSg4MTA3Miksbi5lKDk0MjMyKSxuLmUoMTk1OTUpLG4uZSgxOTc4Nyksbi5lKDg1NzkpLG4uZSgxNzA4Nyksbi5lKDU3MzAwKSxuLmUoMTIwNTEpLG4uZSg4OTU1OCksbi5lKDEwMzY2KSxuLmUoNDA5MTQpLG4uZSg5MDk2MCksbi5lKDg3NzQwKSxuLmUoNzg4OTkpLG4uZSg2NzIxMiksbi5lKDgwOTE1KSxuLmUoMTUzNCksbi5lKDI4MTc2KSxuLmUoMzk2MDkpLG4uZSg1NTIyOSksbi5lKDY1MTAwKSxuLmUoNDI3MDYpXSkudGhlbihuLmJpbmQobiw1MDYyNzUpKTtyZXR1cm4gby5zaG93U2ltcGxlRGlhbG9nKGUsby53YXJuaW5nTW9kdWxlLHQpfW4uZCh0LHtzaG93V2FybmluZzooKT0+b30pfSw2MTk5OTIoZSx0LG4pe24uZCh0LHtpc1RpY2tzRW5hYmxlZDooKT0+cn0pO3ZhciBvPW4oMzE4OTc0KTtuKDkzMDIzMSk7ZnVuY3Rpb24gcigpe3JldHVybiEoMCxvLm9uV2lkZ2V0KSgpfX0sMjEyMjI5KGUsdCxuKXtuLmQodCx7Z2V0UHJvZHVjdEZvclRyaWFsOigpPT5pLGlzVHJpYWxQcm9kdWN0OigpPT5yfSk7big4MjkxODApLG4oMTg1MjcxKTtjb25zdCBvPSJfdHJpYWwiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIG5ldyBSZWdFeHAobysiJCIpLnRlc3QoZSl9ZnVuY3Rpb24gaShlKXtyZXR1cm4gZS5zcGxpdChvKVswXX19LDIyMTA2MShlLHQsbil7dmFyIG87bi5kKHQse2dldExvZ0hpc3Rvcnk6KCk9PmIsZ2V0TG9nZ2VyOigpPT5SLGdldFJhd0xvZ0hpc3Rvcnk6KCk9PmYsaXNIaWdoUmF0ZUVuYWJsZWQ6KCk9PmR9KSwKZnVuY3Rpb24oZSl7ZVtlLkVSUk9SPTFdPSJFUlJPUiIsZVtlLldBUk5JTkc9Ml09IldBUk5JTkciLGVbZS5JTkZPPTNdPSJJTkZPIixlW2UuTk9STUFMPTRdPSJOT1JNQUwiLGVbZS5ERUJVRz01XT0iREVCVUcifShvfHwobz17fSkpO2xldCByPTA7Y29uc3QgaT1bXTtsZXQgbD1udWxsLHM9bnVsbCx1PW51bGwsYz1udWxsLGE9by5XQVJOSU5HLGc9ITE7ZnVuY3Rpb24gZCgpe3JldHVybiBnfWZ1bmN0aW9uIGYoZSx0KXtsZXQgbj1pLnJlZHVjZSgoKGUsdCk9PmUuY29uY2F0KHQpKSxbXSk7cmV0dXJuIG4uc29ydCgoKGUsdCk9PmUuaWQtdC5pZCkpLHZvaWQgMCE9PXQmJihuPW4uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihuPW4uc2xpY2UoLWUpKSxufWZ1bmN0aW9uIG0oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9Y29uc3QgYj0oZSx0KT0+ZnVuY3Rpb24oZSx0KXtsZXQgbixvPTAscj0wO2ZvcihuPWUubGVuZ3RoLTE7bj49MSYmKG8rPTgqKDErZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pLmxlbmd0aCksIShuLTE+MCYmKHI9OCooMStlbmNvZGVVUklDb21wb25lbnQoZVtuLTFdKS5sZW5ndGgpLG8rcj50KSkpO24tLSk7cmV0dXJuIGUuc2xpY2Uobil9KGYoZSx0KS5tYXAobSksNzU0OTc0NzIpO2Z1bmN0aW9uIGgoZSx0LG4saSxnKXtpZih0PT09cyYmaS5pZD09PXUpcmV0dXJuO2NvbnN0IGY9bmV3IERhdGU7aWYoZTw9by5OT1JNQUwmJmZ1bmN0aW9uKGUsdCxuLG8saSxsKXsiZnVuY3Rpb24iPT10eXBlb2Ygc3RydWN0dXJlZENsb25lJiYodD1zdHJ1Y3R1cmVkQ2xvbmUodCkpLHQ9dC5zbGljZSgwLGw/PzFlMyk7Y29uc3Qgcz17aWQ6cixtZXNzYWdlOnQsc3ViU3lzdGVtSWQ6byx0aW1lc3RhbXA6TnVtYmVyKGUpfTtyKz0xLG4ucHVzaChzKSx2b2lkIDAhPT1pJiZuLmxlbmd0aD5pJiZuLnNwbGljZSgwLDEpfShmLHQsbixpLmlkLGkubWF4Q291bnQsZyksZTw9YSYmKCFpLmhpZ2hSYXRlfHxkKCkpJiYoIWx8fGkuaWQubWF0Y2gobCkpKXtjb25zdCBuPWYudG9JU09TdHJpbmcoKSsiOiIraS5pZCsiOiIrdDtzd2l0Y2goZSl7Y2FzZSBvLkRFQlVHOmNvbnNvbGUuZGVidWcobik7YnJlYWs7Y2FzZSBvLklORk86Y2FzZSBvLk5PUk1BTDppLmNvbG9yP2NvbnNvbGUubG9nKCIlYyIrbiwiY29sb3I6ICIraS5jb2xvcik6Y29uc29sZS5sb2cobik7YnJlYWs7Y2FzZSBvLldBUk5JTkc6Y29uc29sZS53YXJuKG4pO2JyZWFrO2Nhc2Ugby5FUlJPUjpjb25zb2xlLmVycm9yKG4pfXM9dCx1PWkuaWQsbnVsbCE9PWMmJmNsZWFyVGltZW91dChjKSxjPXNldFRpbWVvdXQoKCgpPT57cz1udWxsLHU9bnVsbCxjPW51bGx9KSwxZTMpfX1mdW5jdGlvbiBSKGUsdD17fSl7Y29uc3Qgbj1bXTtpLnB1c2gobik7Y29uc3Qgcj1PYmplY3QuYXNzaWduKHQse2lkOmV9KTtmdW5jdGlvbiBsKGUpe3JldHVybih0LG8pPT5oKGUsU3RyaW5nKHQpLG4scixvKX1yZXR1cm57bG9nRGVidWc6bChvLkRFQlVHKSxsb2dFcnJvcjpsKG8uRVJST1IpLGxvZ0luZm86bChvLklORk8pLGxvZ05vcm1hbDpsKG8uTk9STUFMKSxsb2dXYXJuOmwoby5XQVJOSU5HKX19fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.18","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.512Z","timestamp":1785154590512,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sat, 27 Dec 2025 00:00:00 GMT","end":"Sun, 24 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"0A:93:73:BB:95:EC:D1:52:11:5B:CC:2D:92:43:D4:FD:5A:2E:BE:A4","sha256":"70:E8:96:A5:F6:09:13:92:CB:0D:3F:A5:37:C4:A1:0D:4A:F7:52:C0:C1:B6:21:DB:D5:92:33:3F:B5:7D:EE:0F"}}},"request":{"raw":"GET /sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com HTTP/1.1\r\nHost: widget-sheriff.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 204 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 4888a1b692b693505c9036bc998623cc.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\ncross-origin-resource-policy: same-site\r\naccess-control-max-age: 86400\r\nvary: Origin\r\nx-cache: Miss from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: CA7w7JKmKvNyKNqdr12ay7ETPNjmlkFPnGSenukX2lmJW7rS8yf3Kw==\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":0,"size_decoded":575,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":212,"timings":{"blocked":-1,"dns":3,"connect":8,"send":0,"wait":178,"receive":0,"ssl":23},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/38002.86d280feeabab698360b.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.526Z","timestamp":1785154590526,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/38002.86d280feeabab698360b.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a323c19-493\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/17/2026 11:16:00\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f70d518a7336b3e296ebc55a5abdd1b8\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1171,"size_decoded":1246,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1171), with no line terminators","md5":"c5625ab18e2e939c0e7a1aaf8335d885","sha1":"476f700790695056f483a7540cca9876b7ec9b44","sha256":"109dfa81449a46405b7bbad3bb1fe38d13168125084d9486a17269580fa11d1e","sha512":"b0d0814df65da6664845b9aa6212db20c3810f795432ea14ecfb6d89b44ed9dea6826d34c2c7d74e8042a33898c9eb1e143d41e0f9534c42b5a733a1bf91139d","ssdeep":"","tlshash":"ff21df02d15010d8a0ffb368edd1976e8329e0c7e52f09dda1692f75d2817782b6df41","first_seen":"2026-03-24T19:47:05.239918Z","last_seen":"2026-07-27T14:22:59.622222Z","times_seen":1746,"resource_available":false,"data":"LnNiLWlubmVyLXNoYWRvd3tiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvdHRvbTotMTBweDtib3gtc2hhZG93OjAgMCA1cHggIzAwMDAwMDI2O2hlaWdodDoxMHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xMTY2NjY2N3MgZWFzZSx0cmFuc2Zvcm0gLjExNjY2NjY3cyBlYXNlO3dpZHRoOjEwMCU7ei1pbmRleDo1fS5zYi1pbm5lci1zaGFkb3cudG9we2JveC1zaGFkb3c6MCAwIDVweCAjMDAwMDAwMjY7dG9wOi0xMHB4fS5zYi1pbm5lci1zaGFkb3cuaS1pbnZpc2libGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxlLnRvcHt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxle29wYWNpdHk6MH0uc2Itc2Nyb2xsYmFye2luc2V0LWlubGluZS1lbmQ6MXB4O29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7dG9wOjczcHg7dHJhbnNpdGlvbjpvcGFjaXR5IC4zczt3aWR0aDo3cHg7ei1pbmRleDoxfS5zYi1zY3JvbGxiYXIuYWN0aXZlLC5zYi1zY3JvbGxiYXIuYWN0aXZlLWFsd2F5c3tvcGFjaXR5OjF9LnNiLXNjcm9sbGJhcl9fY29udGVudC13cmFwcGVyLS1zY3JvbGwtaW5pdGVke3Bvc2l0aW9uOnJlbGF0aXZlfS5zYi1zY3JvbGxiYXJfX2NvbnRlbnQtLXNjcm9sbC1pbml0ZWR7cG9zaXRpb246YWJzb2x1dGV9LnNiLXNjcm9sbGJhci13cmFwe2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1lbmQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjZweDt6LWluZGV4OjF9LnNiLXNjcm9sbGJhci13cmFwIC5zYi1zY3JvbGxiYXJ7aW5zZXQtaW5saW5lLWVuZDowfS5zYi1zY3JvbGxiYXItYm9keXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXNiLXNjcm9sbGJhci1ib2R5LWJnKTtib3JkZXI6MDt3aWR0aDo2cHh9LmdyYXkgLnNiLXNjcm9sbGJhci1ib2R5e2JhY2tncm91bmQ6Izc1NzU3YTtib3JkZXItY29sb3I6Izc1NzU3YTtib3JkZXItcmFkaXVzOjNweH0uc2Itc2Nyb2xsYmFyLWJvdHRvbSwuc2Itc2Nyb2xsYmFyLXRvcHtkaXNwbGF5Om5vbmV9LmFjdGl2ZS1hbHdheXMuZ3JheSwuZ3JheXtvcGFjaXR5Oi41fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/81072.2927a177231fdd0e24c1.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.726Z","timestamp":1785154590726,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/81072.2927a177231fdd0e24c1.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-40c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9f65513506150cc46de4e2e1b407cbde\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1036,"size_decoded":1218,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1036), with no line terminators","md5":"e625e6a9b3d1d0e7872454941e3a0f3c","sha1":"c4b93e2d6c31cccd6e1572e5faff07bd3456556c","sha256":"ff2fab41e51936266791aedf3104809dd2780906b7303dfdf954afe900eecaa2","sha512":"b6c94e5b14cef72a123c0b05f0efd06b022618632b6adfd3bda53ab30eb0b05b5bafc56a4dee63cec63f5606c2d69be7bbd4d52c7cfcba473b133495be1ac97a","ssdeep":"","tlshash":"0511872af08015a0b4bfcb384b14d3a9003190a29ea223ed77a0bcb18bc17b945d1008","first_seen":"2026-07-16T13:40:49.881902Z","last_seen":"2026-07-27T14:23:37.917055Z","times_seen":366,"resource_available":false,"data":"Lm1lbnVXcmFwLWxCSXhJd3R6e2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtYmFja2dyb3VuZCx2YXIoLS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kKSk7Ym9yZGVyLXJhZGl1czo2cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7Ym94LXNpemluZzpib3JkZXItYm94O3RleHQtYWxpZ246c3RhcnQ7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7ei1pbmRleDoxMDB9Lm1lbnVXcmFwLWxCSXhJd3R6LmlzTWVhc3VyaW5nLWxCSXhJd3R6e29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmZpeGVkO3Zpc2liaWxpdHk6aGlkZGVufS5tZW51V3JhcC1sQkl4SXd0ejpmb2N1c3tvdXRsaW5lOm5vbmV9LnNjcm9sbFdyYXAtbEJJeEl3dHp7aGVpZ2h0OjEwMCU7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5zY3JvbGxXcmFwLWxCSXhJd3R6Lm1vbWVudHVtQmFzZWQtbEJJeEl3dHp7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LnNjcm9sbFdyYXAtbEJJeEl3dHo6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo1cHg7d2lkdGg6NXB4fS5zY3JvbGxXcmFwLWxCSXhJd3R6Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1zY3JvbGxiYXItdGh1bWItYmFja2dyb3VuZCx2YXIoLS1jb2xvci1zY3JvbGwtYmcpKTtib3JkZXI6MXB4IHNvbGlkICMwMDAwO2JvcmRlci1yYWRpdXM6M3B4fS5zY3JvbGxXcmFwLWxCSXhJd3R6Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LnNjcm9sbFdyYXAtbEJJeEl3dHo6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9Lm1lbnVCb3gtbEJJeEl3dHp7cGFkZGluZzo2cHggMH0uaXNIaWRkZW4tbEJJeEl3dHp7ZGlzcGxheTpub25lfQ=="}},"time_used":7,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.047Z","timestamp":1785154591047,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-396d\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:18:28\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4bf8efd18622aa8d8b2db23e44acd9a1\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":14701,"size_decoded":6832,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"1edb2832b292eaf1f490fd35fadf61ec","sha1":"40184dc94dd19e2bb7b906af7cc99c694efae8d5","sha256":"68c5b31fb26ad1af6d37dc872285b1e5c9837fed11bba1414d053e93e3728567","sha512":"a575cef153e42834c4fe933e7ec67a2a5442aec23dcf472bb585c8da5b858bfac30b279e03691938a35400b286055406e5a9f34bd3d5e5c8b51f1dbccd902df0","ssdeep":"384:rNtq6SWGLOzCHMJY+Uhb7773Y6cR39CF0msq2k70wcWKd:PjSWGLOuHM4hb7773X3F0msq2k7jcWI","tlshash":"ea62d7887043b09a42d925ef986b5149f7380898740d84b5b651f8d23caed9f63f3ebc","first_seen":"2026-07-24T05:39:08.468159Z","last_seen":"2026-07-27T14:22:59.694422Z","times_seen":432,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NTIwN10sezc1Njg1MShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPWUubGVuZ3RoLGk9MDtpPG47aSsrKXt2YXIgbz1lLmNoYXJDb2RlQXQoaSk7aWYobz49NTUyOTYmJm88PTU2MzE5JiZuPmkrMSl7dmFyIHI9ZS5jaGFyQ29kZUF0KGkrMSk7cj49NTYzMjAmJnI8PTU3MzQzJiYobz0xMDI0KihvLTU1Mjk2KStyLTU2MzIwKzY1NTM2LGkrPTEpfW88MTI4P3QucHVzaChvKTpvPDIwNDg/KHQucHVzaChvPj42fDE5MiksdC5wdXNoKDYzJm98MTI4KSk6bzw1NTI5Nnx8bz49NTczNDQmJm88NjU1MzY/KHQucHVzaChvPj4xMnwyMjQpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6bz49NjU1MzYmJm88PTExMTQxMTE/KHQucHVzaChvPj4xOHwyNDApLHQucHVzaChvPj4xMiY2M3wxMjgpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6dC5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkodCkuYnVmZmVyfX0sNTA0NDAyKGUsdCxuKXt2YXIgaT1uKDYzODIyMSk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBlPWkoZV49ZT4+PjE2LDIyNDY4MjI1MDcpLGU9aShlXj1lPj4+MTMsMzI2NjQ4OTkwOSksKGVePWU+Pj4xNik+Pj4wfX0sNjM4MjIxKGUpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbihlLHQpe3ZhciBuPTY1NTM1JmUsaT02NTUzNSZ0O3JldHVybiBuKmkrKChlPj4+MTYmNjU1MzUpKmkrbioodD4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KGUsdCxuKXt2YXIgaT1uKDYzODIyMSksbz1uKDUwNDQwMikscj1uKDc1Njg1MSkscz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybiBlPDx0fGU+Pj4zMi10fWUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHQ9dD8wfHQ6MCwic3RyaW5nIj09dHlwZW9mIGUmJihlPXIoZSkpLCEoZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIG49bmV3IFVpbnQzMkFycmF5KFt0XSk7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1uZXcgVWludDMyQXJyYXkoZSwwLG4pLHI9MDtyPG47cisrKW9bcl09aShvW3JdLHNbMF0pLG9bcl09YShvW3JdLDE1KSxvW3JdPWkob1tyXSxzWzFdKSx0WzBdPXRbMF1eb1tyXSx0WzBdPWEodFswXSwxMyksdFswXT1pKHRbMF0sNSkrMzg2NDI5MjE5Nn0oZSxuKSxmdW5jdGlvbihlLHQpe3ZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1lLmJ5dGVMZW5ndGglNCxyPTAsYz1uZXcgVWludDhBcnJheShlLDQqbixvKTtzd2l0Y2gobyl7Y2FzZSAzOnJePWNbMl08PDE2O2Nhc2UgMjpyXj1jWzFdPDw4O2Nhc2UgMTpyXj1jWzBdLHI9YShyPWkocixzWzBdKSwxNSkscj1pKHIsc1sxXSksdFswXT10WzBdXnJ9fShlLG4pLGZ1bmN0aW9uKGUsdCl7dFswXT10WzBdXmUuYnl0ZUxlbmd0aCx0WzBdPW8odFswXSl9KGUsbiksbi5idWZmZXJ9fSwzNzcyMjYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7b25XaWRnZXQ6KCk9Pm99KTtjb25zdCBpPW5ldyBNYXA7ZnVuY3Rpb24gbygpe2NvbnN0IGU9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLHQ9d2luZG93LmxvY2F0aW9uLmhvc3Qsbj1gJHt0fSR7ZX1gO3JldHVybiBpLmhhcyhuKXx8aS5zZXQobixmdW5jdGlvbihlLHQpe2NvbnN0IG49WyJed2lkZ2V0LWRvY3MiXTtmb3IoY29uc3QgZSBvZiBuKWlmKG5ldyBSZWdFeHAoZSkudGVzdCh0KSlyZXR1cm4hMDtjb25zdCBpPVsiXndpZGdldGVtYmVkLz8kIiwiXmNtZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0c3RhdGljLz8kIiwiXihbMC05YS16QS1aLV0rKT8vP21lZGl1bXdpZGdldGVtYmVkLz8kIiwiXnR3aXR0ZXItY2hhcnQvPyQiLCJedGVsZWdyYW0vY2hhcnQvPyQiLCJeZW1iZWQvKFswLTlhLXpBLVpdezh9KS8/JCIsIl53aWRnZXRwb3B1cC8/JCIsIl5leHRlbnNpb24vPyQiLCJeaWRlYS1wb3B1cC8/JCIsIl5ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXm1hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeZXZlbnRzd2lkZ2V0ZW1iZWQvPyQiLCJedGlja2Vyc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4Y3Jvc3NyYXRlc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4aGVhdG1hcHdpZGdldGVtYmVkLz8kIiwiXm1hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnNjcmVlbmVyd2lkZ2V0Lz8kIiwiXmNyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJedGVjaG5pY2FsLWFuYWx5c2lzLXdpZGdldC1lbWJlZC8kIiwiXnNpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3NpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeZW1iZWQtd2lkZ2V0LyhbMC05YS16QS1aLV0rKS8oKFswLTlhLXpBLVotXSspLyk/JCIsIl53aWRnZXQtZG9jcy8oWzAtOWEtekEtWi1dKykvKFswLTlhLXpBLVotL10rKT8kIl0sbz1lLnJlcGxhY2UoL15cLy8sIiIpO2xldCByO2ZvcihsZXQgZT1pLmxlbmd0aC0xO2U+PTA7ZS0tKWlmKHI9bmV3IFJlZ0V4cChpW2VdKSxyLnRlc3QobykpcmV0dXJuITA7cmV0dXJuITF9KGUsdCkpLGkuZ2V0KG4pPz8hMX19LDU2OTM5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ZlYXR1cmVFbmFibGVkOigpPT5kLG9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQ6KCk9PmN9KQo7dmFyIGk9big5NDgzODApLG89bigzNzcyMjYpLHI9big4NTYxOTYpLHM9big5MzIzNjUpO2NvbnN0IGE9bmV3IGkuRGVsZWdhdGUsYz0oKT0+YSxsPSJmb3JjZWZlYXR1cmV0b2dnbGUuIjtjb25zdCBnPW5ldyBjbGFzc3tlbmFibGVGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShsK2UsInRydWUiKSxhLmZpcmUoZSl9ZGlzYWJsZUZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGwrZSwiZmFsc2UiKSxhLmZpcmUoZSl9cmVzZXRGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShsK2UpLGEuZmlyZShlKX1vbkZlYXR1cmVzU3RhdGVDaGFuZ2VkKCl7cmV0dXJuIGF9fTtmdW5jdGlvbiB1KGUsdCl7cmV0dXJuKCFlW3RdfHwtMSE9PWVbdF0pJiYoISEoInRydWUiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYidHJ1ZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltsK3RdKXx8ISgiZmFsc2UiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYiZmFsc2UiPT09d2luZG93LnVzZXI/LnNldHRpbmdzPy5bbCt0XSkmJighIWVbdF0mJigxPT09ZVt0XXx8KDAsci5zaG91bGRBZmZlY3RVc2VyKSh0LGVbdF0pKSkpfXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9LHdpbmRvdy5UcmFkaW5nVmlldy5GZWF0dXJlVG9nZ2xlPWc7Y29uc3QgZD0oaD13aW5kb3cuZmVhdHVyZVRvZ2dsZVN0YXRlfHx7fSwoMCxvLm9uV2lkZ2V0KSgpfHxQcm9taXNlLmFsbChbbi5lKDg1NDM0KSxuLmUoNzI4NSksbi5lKDEzOTkzKV0pLnRoZW4obi5iaW5kKG4sNTA3Mjg1KSkudGhlbigoZT0+e2UucHVzaFN0cmVhbU11bHRpcGxleGVyLm9uKCJmZWF0dXJldG9nZ2xlIiwoZT0+e2NvbnN0IHQ9dShoLGUubmFtZSk7aFtlLm5hbWVdPWUuc3RhdGUsdCE9PXUoaCxlLm5hbWUpJiZhLmZpcmUoZS5uYW1lKX0pKX0pKSx1LmJpbmQobnVsbCxoKSk7dmFyIGg7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9ZH0sMTc5NzcxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2VtaXQ6KCk9PmcsZW1pdE9uY2U6KCk9PnUsb246KCk9PmMsc3Vic2NyaWJlOigpPT5sLHVuc3Vic2NyaWJlOigpPT5hfSk7dmFyIGk9big5NDgzODApO2NvbnN0IG89e30scj1bXSxzPXt9O2Z1bmN0aW9uIGEoZSx0LG4pe29bZV0udW5zdWJzY3JpYmUobix0KX1mdW5jdGlvbiBjKGUsdCxuKXtsKGUsdCxuKX1mdW5jdGlvbiBsKGUsdCxuLHIpe28uaGFzT3duUHJvcGVydHkoZSl8fChvW2VdPW5ldyBpLkRlbGVnYXRlKSxzW2VdP3QuY2FsbChuKTpvW2VdLnN1YnNjcmliZShuLHQscil9ZnVuY3Rpb24gZyhlLC4uLnQpe2NvbnN0IG49W2VdLmNvbmNhdCh0KTtyLmZvckVhY2goKGU9PntlLmFwcGx5KG51bGwsbil9KSksby5oYXNPd25Qcm9wZXJ0eShlKSYmb1tlXS5maXJlLmFwcGx5KG9bZV0sdCl9ZnVuY3Rpb24gdShlKXtzW2VdJiZjb25zb2xlLndhcm4oYFNvbWV0aGluZyB3ZW50IHdyb25nOiBlbWl0T25jZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBzYW1lIGV2ZW50ICgke2V9KWApLHNbZV09ITAsZy5hcHBseShudWxsLGFyZ3VtZW50cyl9fSw5MzIzNjUoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7VFZMb2NhbFN0b3JhZ2U6KCk9PnJ9KTtjb25zdCBpPSgwLG4oMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBvPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2goZSl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChlKXt9fTtvLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3QgZT0xMCx0PVtdO2ZvcihsZXQgZT0wO2U8dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2UrKyl7Y29uc3Qgbj10aGlzLmtleShlKTt0LnB1c2goe2tleTpuLGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKG4pKS5sZW5ndGh9KX10LnNvcnQoKChlLHQpPT50Lmxlbmd0aC1lLmxlbmd0aCkpO2NvbnN0IG49dC5zbGljZSgwLGUpO3Quc29ydCgoKGUsdCk9PnQua2V5Lmxlbmd0aC1lLmtleS5sZW5ndGgpKTtjb25zdCBvPXQuc2xpY2UoMCxlKTtpLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxpLmxvZ05vcm1hbChgVG9wICR7ZX0ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KG4pfWApLGkubG9nTm9ybWFsKGBUb3AgJHtlfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShvKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChlPT57aS5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkoZSl9YCl9KSl9Y2F0Y2goZSl7fX19LG8ucHJvdG90eXBlLmxlbmd0aD0wLG8ucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLG8ucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sby5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIGUsdD0wO2ZvcihlIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KGUpJiZ0Kys7dGhpcy5sZW5ndGg9dH19LG8ucHJvdG90eXBlLmtleT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkoZSk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW2VdfSxvLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKGUpewpyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpOnZvaWQgMD09PXRoaXMubG9jYWxTdG9yYWdlW2VdP251bGw6dGhpcy5sb2NhbFN0b3JhZ2VbZV19LG8ucHJvdG90eXBlLnNldEl0ZW09ZnVuY3Rpb24oZSx0KXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KTp0aGlzLmxvY2FsU3RvcmFnZVtlXT10LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfSxvLnByb3RvdHlwZS5yZW1vdmVJdGVtPWZ1bmN0aW9uKGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShlKTpkZWxldGUgdGhpcy5sb2NhbFN0b3JhZ2VbZV0sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LG8ucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5jbGVhcigpOnRoaXMubG9jYWxTdG9yYWdlPXt9LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfTtjb25zdCByPW5ldyBvO3dpbmRvdy5UVkxvY2FsU3RvcmFnZT1yfSwxMTczMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9Pm8sdXJsV2l0aE1vYmlsZUFwcFBhcmFtczooKT0+cn0pO3ZhciBpPW4oNTg3NDM2KTtmdW5jdGlvbiBvKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IG89InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxyPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1pLmdldCgidHZfYXBwIil8fCIiO298fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLHJ8fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IW8pfHwhKCJuZXciPT09ZXx8IXIpfWZ1bmN0aW9uIHIoZSx0PSExKXtpZihvKCJuZXciLHQpKXtjb25zdCB0PW5ldyBVUkwoZSxsb2NhdGlvbi5ocmVmKTt0LnNlYXJjaFBhcmFtcy5zZXQoIm1vYmlsZWFwcF9uZXciLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9aWYobygib2xkIix0KSl7Y29uc3QgdD1uZXcgVVJMKGUsbG9jYXRpb24uaHJlZik7dC5zZWFyY2hQYXJhbXMuc2V0KCJtb2JpbGVhcHAiLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9cmV0dXJuIGV9fSw4NTYxOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7c2hvdWxkQWZmZWN0VXNlcjooKT0+Y30pO3ZhciBpPW4oMTAwNTk1KSxvPW4ubihpKSxyPW4oOTMyMzY1KTtjb25zdCBzPSJmZWF0dXJldG9nZ2xlX3NlZWQiO2Z1bmN0aW9uIGEoZSl7dHJ5e2NvbnN0IHQ9bygpKGUrZnVuY3Rpb24oKXtpZih3aW5kb3cudXNlciYmd2luZG93LnVzZXIuaWQpcmV0dXJuIHdpbmRvdy51c2VyLmlkO2NvbnN0IGU9ci5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKHMpO2lmKG51bGwhPT1lKXJldHVybiBlO2NvbnN0IHQ9TWF0aC5mbG9vcigxZTYqTWF0aC5yYW5kb20oKSk7cmV0dXJuIHIuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShzLGAke3R9YCksdH0oKSksbj1uZXcgRGF0YVZpZXcodCk7cmV0dXJuIG4uZ2V0VWludDMyKDAsITApLzQyOTQ5NjcyOTZ9Y2F0Y2goZSl7cmV0dXJuLjV9fWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gYShlKTw9dH19LDU4NzQzNihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0LG4saSxvKXtsZXQgcj0iIjtpZihpPWk/IjsgcGF0aD0iK2k6IiIsbz1vPyI7IGRvbWFpbj0iK286IiIsbil7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbio2MCo2MCoxZTMpLHI9IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIHI9IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrcitvK2l9ZnVuY3Rpb24gbyhlKXtjb25zdCB0PWUrIj0iLG49ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2xldCBpPW5bZV07Zm9yKDsiICI9PT1pLmNoYXJBdCgwKTspaT1pLnN1YnN0cmluZygxLGkubGVuZ3RoKTtpZigwPT09aS5pbmRleE9mKHQpKXJldHVybiBpLnN1YnN0cmluZyh0Lmxlbmd0aCxpLmxlbmd0aCl9cmV0dXJuIG51bGx9bi5kKHQse2dldDooKT0+byxzZXQ6KCk9Pml9KX0sNzY4NzYwKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSgpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChuLGkpPT57ZT1uLHQ9aX0pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fW4uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9Pml9KX0sOTQ4MzgwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0RlbGVnYXRlOigpPT5yfSk7Y29uc3QgaT0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiQ29tbW9uLkRlbGVnYXRlIik7ZnVuY3Rpb24gbyhlKXtyZXR1cm4hZS5zaW5nbGVTaG90fWNsYXNzIHJ7Y29uc3RydWN0b3IoKXt0aGlzLmZpcmU9dGhpcy5fZmlyZUltcGwuYmluZCh0aGlzKSx0aGlzLl9saXN0ZW5lcnM9W119c3Vic2NyaWJlKGUsdCxuKXt0aGlzLl9saXN0ZW5lcnMucHVzaCh7b2JqZWN0OmUsbWVtYmVyOnQsc2luZ2xlU2hvdDohIW4sc2tpcDohMX0pfXVuc3Vic2NyaWJlKGUsdCl7Zm9yKGxldCBuPTA7bjx0aGlzLl9saXN0ZW5lcnMubGVuZ3RoOysrbil7Y29uc3QgaT10aGlzLl9saXN0ZW5lcnNbbl07aWYoaS5vYmplY3Q9PT1lJiZpLm1lbWJlcj09PXQpe2kuc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKG4sMSk7YnJlYWt9fX11bnN1YnNjcmliZUFsbChlKXtmb3IobGV0IHQ9dGhpcy5fbGlzdGVuZXJzLmxlbmd0aC0xO3Q+PTA7LS10KXtjb25zdCBuPXRoaXMuX2xpc3RlbmVyc1t0XTtuLm9iamVjdD09PWUmJihuLnNraXA9ITAsdGhpcy5fbGlzdGVuZXJzLnNwbGljZSh0LDEpKX19ZGVzdHJveSgpe3RoaXMuX2xpc3RlbmVycz1bXX1fZmlyZUltcGwoLi4uZSl7Y29uc3QgdD10aGlzLl9saXN0ZW5lcnM7dGhpcy5fbGlzdGVuZXJzPXRoaXMuX2xpc3RlbmVycy5maWx0ZXIobyk7Y29uc3Qgbj10Lmxlbmd0aDtmb3IobGV0IG89MDtvPG47KytvKXtjb25zdCBuPXRbb107aWYoIW4uc2tpcCl0cnl7bi5tZW1iZXIuYXBwbHkobi5vYmplY3R8fG51bGwsZSl9Y2F0Y2goZSl7CmkubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9fX19fSw2ODA4NDIoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtuLmQodCx7Q29va2llU2V0dGluZ3M6KCk9PmksYmFubmVyUHJpdmFjeVByZWZlcmVuY2VLZXk6KCk9PmgsY2hlY2tCYW5uZXJQcml2YWN5UHJlZmVyZW5jZUtleTooKT0+QSxjb29raWVTZXR0aW5nc0NoYW5nZUV2ZW50OigpPT5sLGdldENvb2tpZVNldHRpbmc6KCk9PiQsaGlkZUJhbm5lcjooKT0+VCxyZWplY3RCYW5uZXI6KCk9Pl8sc2V0Q29va2llU2V0dGluZzooKT0+TH0pLGZ1bmN0aW9uKGUpe2UuQW5hbHl0aWNzPSJhbmFseXRpY3MiLGUuQWR2ZXJ0aXNpbmc9ImFkdmVydGlzaW5nIn0oaXx8KGk9e30pKTt2YXIgbz1uKDE3OTc3MSkscj1uKDc2ODc2MCkscz1uKDkzMjM2NSksYT1uKDE2MDI5NiksYz1uKDU4NzQzNik7Y29uc3QgbD0iY29va2llX3NldHRpbmdzX2NoYW5nZWQiLGc9KCgwLHIuY3JlYXRlRGVmZXJyZWRQcm9taXNlKSgpLHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZS5zcGxpdCgiLiIpKSx1PSgwLGEuaXNMb2NhbCkoKT8iIjoiLiIrZy5zbGljZSgxLGcubGVuZ3RoKS5qb2luKCIuIiksZD0iY29va2llQmFubmVyIixoPSgwLGEuaXNQcm9kKSgpPyJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lclByb2R1Y3Rpb24iOiJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lckxvY2FsIixwPSJhY2NlcHRlZCIsZj0ibm90QXBwbGljYWJsZSIsbT0icmVqZWN0Iix3PSJjb29raWVzU2V0dGluZ3MiLGI9ImxvY2FsQ29va2llc1NldHRpbmdzIix5PSJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lciIsdj17W2kuQW5hbHl0aWNzXTohMSxbaS5BZHZlcnRpc2luZ106ITF9O2Z1bmN0aW9uIFMoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGQpfWZ1bmN0aW9uIGsoZSl7cmV0dXJuW3AsZixtXS5pbmNsdWRlcyhzLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oZSk/PyIiKX1mdW5jdGlvbiBBKCl7cmV0dXJuIGU9aCxbcCxmLG1dLmluY2x1ZGVzKGMuZ2V0KGUpPz8iIik7dmFyIGV9ZnVuY3Rpb24gVCgpe0kocCl9ZnVuY3Rpb24gXygpe0kobSl9ZnVuY3Rpb24gSShlKXtjLnNldChoLGUsMzY1MywiLyIsdSl9ZnVuY3Rpb24gTChlLHQpe3ZbZV09dCxjLnNldCgoMCxhLmlzUHJvZCkoKT93OmIsSlNPTi5zdHJpbmdpZnkodiksMzY1MywiLyIsdSksby5lbWl0KGwsZSx0KX1mdW5jdGlvbiAkKGUpe3JldHVybiB2W2VdfWZ1bmN0aW9uIFAoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHkpfSFmdW5jdGlvbigpe2NvbnN0IGU9Yy5nZXQoKDAsYS5pc1Byb2QpKCk/dzpiKSx0PXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh5KSxuPXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh3KTtpZihlKXt0JiZuJiYoUCgpLHMuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh3KSksayhkKSYmUygpO3RyeXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dltpLkFuYWx5dGljc109dD8uW2kuQW5hbHl0aWNzXXx8ITEsdltpLkFkdmVydGlzaW5nXT10Py5baS5BZHZlcnRpc2luZ118fCExfWNhdGNoe319ZWxzZSBpZihrKGQpJiYoTChpLkFuYWx5dGljcywhMCksTChpLkFkdmVydGlzaW5nLCEwKSxUKCksUygpKSx0JiZuKXtjb25zdCBlPUpTT04ucGFyc2Uobik7SSh0KSxMKGkuQW5hbHl0aWNzLGU/LltpLkFuYWx5dGljc10pLEwoaS5BZHZlcnRpc2luZyxlPy5baS5BZHZlcnRpc2luZ10pLFAoKSxzLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odyl9fSgpfSwxNjAyOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCksbi5kKHQse2Vudmlyb25tZW50OigpPT5vLGlzRGVidWc6KCk9PmEsaXNMb2NhbDooKT0+cixpc1Byb2Q6KCk9PnN9KTtjb25zdCBpPW5ldyBTZXQoWyJiYXR0bGUiLCJzdGFnaW5nIiwidGVzdCIsImxvY2FsIl0pO2Z1bmN0aW9uIG8oKXtjb25zdCBlPXNlbGYuZW52aXJvbm1lbnQ7cmV0dXJuIGZ1bmN0aW9uKGUpe2kuaGFzKGUpfHxjb25zb2xlLndhcm4oIkludmFsaWQgZW52aXJvbm1lbnQgIitlKX0oZSksZX1mdW5jdGlvbiByKCl7cmV0dXJuImxvY2FsIj09PW8oKX1mdW5jdGlvbiBzKCl7cmV0dXJuImJhdHRsZSI9PT1vKCl9ZnVuY3Rpb24gYSgpe3JldHVybiFzKCl9fSwzMTg5NzQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Q2hlY2tNb2JpbGU6KCk9PmQsYXBwVmVyc2lvbjooKT0+dSxjaGVja1BhZ2VUeXBlOigpPT5wLGRlc2t0b3BBcHBWZXJzaW9uOigpPT5nLGlzQ2hyb21lOigpPT5mLGlzRGVza3RvcEFwcDooKT0+Yyxpc0VkZ2U6KCk9PncsaXNGRjooKT0+bSxpc0xpbnV4OigpPT5hLGlzTWFjOigpPT5zLGlzU2FmYXJpOigpPT5iLGlzU3ltcGhvbnlFbWJlZDooKT0+bCxvbkdvUHJvOigpPT55LG9uV2lkZ2V0OigpPT5vLm9uV2lkZ2V0LHN1cHBvcnRUb3VjaDooKT0+aH0pO3ZhciBpPW4oNzM4NDU4KSxvPW4oMzc3MjI2KTtjb25zdCByPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gaS5pc01hY31mdW5jdGlvbiBhKCl7cmV0dXJuIGkuaXNMaW51eH1mdW5jdGlvbiBjKCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gbCgpe3JldHVybiByLmlzU3ltcGhvbnl8fCExfWZ1bmN0aW9uIGcoKXtjb25zdCBlPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1RWRGVza3RvcFwvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1mdW5jdGlvbiB1KCl7Y29uc3QgZT1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9UcmFkaW5nVmlld1wvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1jb25zdCBkPXtBbmRyb2lkOigpPT5pLmlzQW5kcm9pZCxCbGFja0JlcnJ5OigpPT5pLmlzQmxhY2tCZXJyeSxpT1M6KCk9PmkuaXNJT1MsT3BlcmE6KCk9PmkuaXNPcGVyYU1pbmksaXNJUGFkOigpPT5pLmlzSVBhZCxhbnk6KCk9PmkuaXNBbnlNb2JpbGV9O2Z1bmN0aW9uIGgoKXtyZXR1cm4gaS5tb2JpbGV0b3VjaHx8aS50b3VjaHx8aS5pc0FueU1vYmlsZX1mdW5jdGlvbiBwKGUpewpyZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKS5nZXQoInBhZ2VfdHlwZSIpPT09ZX1yLmlzTW9iaWxlPWQsci5vbldpZGdldD1vLm9uV2lkZ2V0O2NvbnN0IGY9aS5pc0Nocm9tZSxtPWkuaXNGRix3PWkuaXNFZGdlLGI9aS5pc1NhZmFyaTtmdW5jdGlvbiB5KCl7cmV0dXJuIi9wcmljaW5nLyI9PT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9fSw5MjA3MDYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0U2V0dGluZ3M6KCk9Pmh9KTt2YXIgaT1uKDU2OTM5OCksbz1uKDE3OTc3MSkscj1uKDg3MDY0NCkscz1uKDMxODk3NCksYT1uKDExNzMxMyksYz1uKDY4MDg0Mik7Y29uc3QgbD13aW5kb3cuaW5pdERhdGEuc25vd3Bsb3dTZXR0aW5ncztsZXQgZyx1PSJ3ZWIiLGQ9IiI7aWYoKDAscy5pc0Rlc2t0b3BBcHApKCkmJih1PSJwYyIsZD0iX2Rlc2t0b3AiKSwoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/KHU9Im1vYiIsZD0iX2lvcyIpOigwLGEuaXNPbk1vYmlsZUFwcFBhZ2UpKCJuZXciKSYmKHU9Im1vYiIsZD0iX2FuZHJvaWQiKSxsJiZsLnBhcmFtcyYmbC5lbmFibGVkKXtjb25zdCBlPSEoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgiYW55IikmJiEoMCxjLmdldENvb2tpZVNldHRpbmcpKGMuQ29va2llU2V0dGluZ3MuQW5hbHl0aWNzKSYme3dpdGhTZXNzaW9uVHJhY2tpbmc6ITB9O2c9e2NvbGxlY3RvcklkOmwuY29sbGVjdG9ySWQsdXJsOmwudXJsLHBhcmFtczp7YXBwSWQ6bC5wYXJhbXMuYXBwSWQrZCxwbGF0Zm9ybTp1LGRpc2NvdmVyUm9vdERvbWFpbjohMCxjb250ZXh0czp7d2ViUGFnZTohMH0sZXZlbnRNZXRob2Q6ImdldCIsbWF4TG9jYWxTdG9yYWdlUXVldWVTaXplOjMwLGFub255bW91c1RyYWNraW5nOmUsc2Vzc2lvbkNvb2tpZVRpbWVvdXQ6KDAsYy5nZXRDb29raWVTZXR0aW5nKShjLkNvb2tpZVNldHRpbmdzLkFuYWx5dGljcyk/MTgwMDo3Nzc2ZTN9fSwoMCxpLmlzRmVhdHVyZUVuYWJsZWQpKCJzbm93cGxvd19iZWFjb25fZmVhdHVyZSIpJiYoZy5wYXJhbXMuZXZlbnRNZXRob2Q9ImJlYWNvbiIsZy5wYXJhbXMucG9zdFBhdGg9bC5wYXJhbXMucG9zdFBhdGgpfWZ1bmN0aW9uIGgoKXtpZihnKXJldHVybiBnfW8uc3Vic2NyaWJlKGMuY29va2llU2V0dGluZ3NDaGFuZ2VFdmVudCwoKGUsdCk9PntlPT09Yy5Db29raWVTZXR0aW5ncy5BbmFseXRpY3MmJih0PygwLHIuZGlzYWJsZUFub255bW91c1RyYWNraW5nKSgpOigwLHIuZW5hYmxlQW5vbnltb3VzVHJhY2tpbmcpKHtvcHRpb25zOnt3aXRoU2Vzc2lvblRyYWNraW5nOiEwfX0pKX0pLG51bGwpfSw0NzcxNTAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxvO24uZCh0LHtTbm93cGxvd1RyYWNrZXJCYXNlOigpPT51LGdldFRyYWNrZXJJbnN0YW5jZTooKT0+Z30pLGZ1bmN0aW9uKGUpe2UuV2ViPSJ3ZWIiLGUuTW9iaWxlPSJtb2IiLGUuRGVza3RvcD0icGMifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuQW5kcm9pZD0iX2FuZHJvaWQiLGUuSU9TPSJfaW9zIixlLkRlc2t0b3A9Il9kZXNrdG9wIn0ob3x8KG89e30pKTt2YXIgcj1uKDMxODk3NCkscz1uKDg3MDY0NCksYT1uKDkyMDcwNik7bGV0IGM9ITE7bGV0IGw9bnVsbDtmdW5jdGlvbiBnKCl7aWYobnVsbD09PWwpe2NvbnN0IGU9KDAsYS5nZXRTZXR0aW5ncykoKTt2b2lkIDAhPT1lJiYobD1uZXcgdShlKSl9cmV0dXJuIGx9Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxzLm5ld1RyYWNrZXIpKGUuY29sbGVjdG9ySWQsZS51cmwsZS5wYXJhbXMpLHRoaXMuX2NvbGxlY3RvcklkPWUuY29sbGVjdG9ySWQsdGhpcy5fc2V0RGlzY2FyZEJyYWNlKCEwKX10cmFja1BhZ2VWaWV3KCl7KDAscy50cmFja1BhZ2VWaWV3KSh2b2lkIDAsW3RoaXMuX2NvbGxlY3RvcklkXSl9c2V0VXNlcklkKGUpe2NvbnN0IHQ9IWV8fCgwLHIuaXNTeW1waG9ueUVtYmVkKSgpP251bGw6YCR7ZX1gOygwLHMuc2V0VXNlcklkKSh0LFt0aGlzLl9jb2xsZWN0b3JJZF0pfXRyYWNrU2VsZkRlc2MoZSx0KXtjfHwoMCxzLnRyYWNrU2VsZkRlc2NyaWJpbmdFdmVudCkoe2V2ZW50OntzY2hlbWE6ZSxkYXRhOnR9fSxbdGhpcy5fY29sbGVjdG9ySWRdKX1fc2V0RGlzY2FyZEJyYWNlKGUpeygwLHMuZGlzY2FyZEJyYWNlKShlLFt0aGlzLl9jb2xsZWN0b3JJZF0pfV9zdGFydEFjdGl2aXR5V2F0Y2hlcihlKXtsZXQgdD0wO3JldHVybigwLHMuZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKSh7bWluaW11bVZpc2l0TGVuZ3RoOmUubWluaW11bVZpc2l0TGVuZ3RoLGhlYXJ0YmVhdERlbGF5OmUuaGVhcnRiZWF0RGVsYXksY2FsbGJhY2s6KCk9Pnt0Kyt9fSxbdGhpcy5fY29sbGVjdG9ySWRdKSx7ZGlzYWJsZVRyYWNraW5nOnMuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcsZmx1c2hUcmFja2luZ1Jlc3VsdDooKT0+e2NvbnN0IG49dCplLmhlYXJ0YmVhdERlbGF5O3JldHVybiB0PTAsbn19fX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51031.535f27b776f394c7e43a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.283Z","timestamp":1785154590283,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51031.535f27b776f394c7e43a.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-ab54\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 55767c127ab5210519d1ffbfc0e3f114\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":43860,"size_decoded":14999,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (12910)","md5":"cd701b7197ef255d09501c8c91343508","sha1":"d84cab0e7c13c5801a0a2c6df4aba3f32e6b316d","sha256":"714cb61cc6924e6d1e8241ff191fc5aeb03baebbbaa81c15949838a09fb406f6","sha512":"ae8f1406dc1e5c9e8082d922e8a0d6257582733129c26617fefb99243013fa5f0bc9eb178dd69665786b8fb7fd0b7ccdd7ed719fe60676564b82598253efca75","ssdeep":"768:CcDTi4tT8YE9xSrNtzDcsIj/XWm9hIz4dp9VUZ+n5Vz2mpehIeVeLh9zoJZemINE:hryj/XWgGET5Vz2mp9emzoJZemINyKfS","tlshash":"7e131a35652af5f79ee941ea543754829bbc00523444042876bccdec278caf9f23aef9","first_seen":"2026-07-24T11:36:48.046407Z","last_seen":"2026-07-27T14:18:36.397568Z","times_seen":1546,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1MTAzMV0sezE1Njg1MChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHt0ZWxlbWV0cnk6KCk9Pmh9KTt2YXIgcz1fKDk0ODM4MCksaT1fKDIyMTA2MSksbj1fKDM4NDAxNyksYT1fKDM3NzIyNikscj1fKDExNzMxMyk7XygzMDAyODYpO2NvbnN0IG89KDAsaS5nZXRMb2dnZXIpKCJDb21tb24uVGVsZW1ldHJ5IiksbD17ZGVmYXVsdDoxNWUzLHNpdGU6M2U1fSxjPVsiYmVmb3JlX3dlYnNvY2tldF9jb25uZWN0aW9uX3RpbWVfZnJhbWUiLCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIiwiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIsInBhZ2VfZnVsbF9sb2FkX3RpbWVfZnJhbWUiLCJwYWdlX2xvYWRfdGltZV9mcmFtZSJdO2NvbnN0IGg9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXBvcnRTZW50PW5ldyBzLkRlbGVnYXRlLHRoaXMudGltZUNvdW50ZXJzPXtzZXJpZXM6e21hcmtzOltdfSxzdHVkeTp7fSxwaW5lOnt9fSx0aGlzLl90aW1lb3V0SWRzPXt9LHRoaXMuX2NvbW1vbkFkZGl0aW9uYWxEYXRhPXtjbHVzdGVyOm51bGwsdXNlcklkOiIwIn0sdGhpcy5fcmVwb3J0U3Rhc2g9e319c2V0U2Vzc2lvbkluZm8oZSl7Y29uc3QgdD10aGlzLl9wYXJzZUNsdXN0ZXIoZSk7bnVsbCE9PXQmJih0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YS5jbHVzdGVyPXQpfXNlbmRSZXBvcnQoZSx0LF8pe2lmKCF0aGlzLl9pc0FibGVUb1NlbmRSZXBvcnQodCkpcmV0dXJuO2NvbnN0IHM9dGhpcy5fZ2V0U3Vic2VydmljZVR5cGUoZSksaT10aGlzLl9nZXRIb3N0KGUscyk7aWYobnVsbCE9PWkpe2lmKF89dm9pZCAwPT09Xz97Y291bnQ6MX06Xyx0aGlzLl9hZGRSZXBvcnRUb1N0YXNoKF8sdCxpKSwhdGhpcy5fdGltZW91dElkc1tlXSl7Y29uc3QgdD1sW2VdPz9sLmRlZmF1bHQ7dGhpcy5fdGltZW91dElkc1tlXT1zZXRUaW1lb3V0KHRoaXMuX3NlbmRUZWxlbWV0cnlUb1NlcnZpY2UuYmluZCh0aGlzLGUsaSksdCl9fWVsc2Ugby5sb2dFcnJvcihgVW5hYmxlIHRvIGdldCBob3N0IGZvciBjb3VudGVyOiAke3R9LCBtZXRyaWMgdHlwZTogJHtlfSwgc2VyaXZjZSB0eXBlOiAke3N9YCl9c2VuZENoYXJ0UmVwb3J0KGUsdCxfPSEwKXt0aGlzLl9zZW5kU2VydmljZVNwZWNpZmllZFJlcG9ydCgiY2hhcnRzIixlLHQsXyl9c2VuZExpbmVUb29sc1N0b3JhZ2VSZXBvcnQoZSx0LF89ITApe3RoaXMuX3NlbmRTZXJ2aWNlU3BlY2lmaWVkUmVwb3J0KCJsaW5lX3Rvb2xzX3N0b3JhZ2UiLGUsdCxfKX1fc2VuZFNlcnZpY2VTcGVjaWZpZWRSZXBvcnQoZSx0LF8scz0hMCl7dGhpcy5fdXBkYXRlVXNlckluZm8oKSxfPXZvaWQgMD09PV8/e2NvdW50OjF9Ol8scyYmKF89dGhpcy5fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oXyxbImNsdXN0ZXIiLCJ1c2VySWQiXSkpLHRoaXMuc2VuZFJlcG9ydChlLHQsXyl9X3VwZGF0ZVVzZXJJbmZvKCl7Y29uc3QgZT0idXNlciJpbiB3aW5kb3cmJiJpZCJpbiB3aW5kb3cudXNlcj93aW5kb3cudXNlci5pZDoiMCI7dGhpcy5fY29tbW9uQWRkaXRpb25hbERhdGEudXNlcklkPVN0cmluZyhlKX1faXNBYmxlVG9TZW5kUmVwb3J0KGUpe2NvbnN0IHQ9d2luZG93LlRFTEVNRVRSWV9IT1NUUyxfPWMuaW5jbHVkZXMoZSkscz1Cb29sZWFuKHdpbmRvdy5UcmFkaW5nVmlldz8ub25DaGFydFBhZ2V8fCgwLGEub25XaWRnZXQpKCkpO3JldHVybiB0JiYoIV98fHMpfV9zZW5kVGVsZW1ldHJ5VG9TZXJ2aWNlKGUsdCl7aWYodGhpcy5fcmVwb3J0U3Rhc2guaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IGU9dGhpcy5fY3JvcFBhcmFtcyh0aGlzLl9yZXBvcnRTdGFzaFt0XSksXz10aGlzLl9yZW5hbWVBbGxQYXJhbXMoZSkscz17ZXZlbnQ6InJlcG9ydF9zdGFzaCIscGFyYW1zOnRoaXMuX2NsZWFuQWxsUGFyYW1zKF8pfTtvLmxvZ0RlYnVnKGBSZXBvcnQgdG8gaG9zdDogJHt0fTsgc3Rhc2g6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5fcmVwb3J0U3Rhc2hbdF0pfWApLHRoaXMucmVwb3J0U2VudC5maXJlKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxkZWxldGUgdGhpcy5fcmVwb3J0U3Rhc2hbdF0sKDAsbi5mZXRjaCkoYCR7dH0vcmVwb3J0YCx7bWV0aG9kOiJQT1NUIixib2R5OkpTT04uc3RyaW5naWZ5KHMpfSl9dGhpcy5fdGltZW91dElkc1tlXT1udWxsfV9nZXRIb3N0KGUsdCl7Y29uc3QgXz13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLHM9X1tlXSYmX1tlXVt0XTtyZXR1cm4gQm9vbGVhbihzKT9zOm51bGx9X2dldFN1YnNlcnZpY2VUeXBlKGUpe2lmKCFbImNoYXJ0cyIsInNpdGUiXS5pbmNsdWRlcyhlKSlyZXR1cm4iYWxsIjtsZXQgdD0iZnJlZSI7Y29uc3QgXz13aW5kb3cudXNlci5pc19wcm87cmV0dXJuImNoYXJ0cyI9PT1lJiYoMCxyLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/dD1fPyJpb3NfcHJvIjoiaW9zX2ZyZWUiOiJjaGFydHMiPT09ZSYmKDAsci5pc09uTW9iaWxlQXBwUGFnZSkoIm5ldyIpP3Q9Xz8iYW5kcm9pZF9wcm8iOiJhbmRyb2lkX2ZyZWUiOigwLGEub25XaWRnZXQpKCk/dD0id2lkZ2V0IjpfJiYodD0icHJvIiksdH1fcGFyc2VDbHVzdGVyKGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UoZSkuc2Vzc2lvbl9pZH1jYXRjaChlKXtyZXR1cm4gby5sb2dFcnJvcigiQ291bGQgbm90IHBhcnNlIGNsdXN0ZXIgaWQgKHNlc3Npb24gaWQpIiksbnVsbH1jb25zdCBfPS8oLipAKSguKikvZ2kuZXhlYyh0KTtyZXR1cm4gbnVsbCE9PV8mJl8ubGVuZ3RoPj0zP19bMl06bnVsbH1fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oZSx0KXtyZXR1cm4gdC5mb3JFYWNoKCh0PT57dCBpbiB0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YSYmKGUuYWRkaXRpb25hbD1lLmFkZGl0aW9uYWx8fHt9LGUuYWRkaXRpb25hbFt0XT10aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YVt0XSl9KSksZX1fY3JvcFBhcmFtcyhlKXsKZm9yKGNvbnN0IHQgaW4gZSllLmhhc093blByb3BlcnR5KHQpJiZlW3RdLmxlbmd0aD4xZTMmJihlLnRvb19tdWNoX21ldHJpY3NfZnJhbWU9ZS50b29fbXVjaF9tZXRyaWNzX2ZyYW1lPz9bXSxlLnRvb19tdWNoX21ldHJpY3NfZnJhbWUucHVzaCh7dmFsdWU6ZVt0XS5sZW5ndGgsYWRkaXRpb25hbDp7ZXZlbnQ6dH19KSxkZWxldGUgZVt0XSk7cmV0dXJuIGV9X3JlbmFtZUFsbFBhcmFtcyhlKXtjb25zdCB0PXt9O2Zvcihjb25zdCBfIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShfKSYmKHRbX109W10sZVtfXS5mb3JFYWNoKChlPT57dFtfXS5wdXNoKHRoaXMuX3JlbmFtZUVudHJ5UGFyYW1zKGUpKX0pKSk7cmV0dXJuIHR9X3JlbmFtZUVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9e2NvdW50OiJjIix2YWx1ZToidiIsdGV4dDoidCIsYWRkaXRpb25hbDoiYSJ9O3JldHVybiBPYmplY3Qua2V5cyhlKS5yZWR1Y2UoKChfLHMpPT4oX1t0W3NdXT1lW3NdLF8pKSx7fSl9X2NsZWFuQWxsUGFyYW1zKGUpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IF8gaW4gZSlpZihlLmhhc093blByb3BlcnR5KF8pKXt0W19dPVtdO2NvbnN0IHM9e2M6MH07ZVtfXS5mb3JFYWNoKChlPT57Y29uc3QgaT10aGlzLl9jbGVhbkVudHJ5UGFyYW1zKGUpLG49T2JqZWN0LmtleXMoaSkubGVuZ3RoOzE9PT1uJiZ2b2lkIDAhPT1pLmM/cy5jKz1pLmM6bj4wJiZ0W19dLnB1c2goaSl9KSkscy5jPjAmJnRbX10ucHVzaChzKSwwPT09dFtfXS5sZW5ndGgmJmRlbGV0ZSB0W19dfXJldHVybiB0fV9jbGVhbkVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9T2JqZWN0LmtleXMoZSkucmVkdWNlKCgodCxfKT0+ImMiIT09XyYmInQiIT09X3x8ZVtfXT8odFtfXT1lW19dLHQpOnQpLHt9KTtyZXR1cm4iYyJpbiB0fHwidiJpbiB0fHwidCJpbiB0P3Q6e319X2FkZFJlcG9ydFRvU3Rhc2goZSx0LF8pe18gaW4gdGhpcy5fcmVwb3J0U3Rhc2h8fCh0aGlzLl9yZXBvcnRTdGFzaFtfXT17fSksdCBpbiB0aGlzLl9yZXBvcnRTdGFzaFtfXXx8KHRoaXMuX3JlcG9ydFN0YXNoW19dW3RdPVtdKSxPYmplY3Qua2V5cyhlKS5sZW5ndGg+MCYmdGhpcy5fcmVwb3J0U3Rhc2hbX11bdF0ucHVzaChlKX19fSw5NjQ0ODYoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7ZGVlcEV4dGVuZDooKT0+aX0pO2NvbnN0IHM9bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIGkoZSwuLi50KXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlPygwPT09dC5sZW5ndGh8fHQuZm9yRWFjaCgodD0+e251bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdCYmT2JqZWN0LmtleXModCkuZm9yRWFjaCgoXz0+e2lmKGZ1bmN0aW9uKGUpe3JldHVybiBzLmhhcyhlKX0oXykpcmV0dXJuO2NvbnN0IGE9ZVtfXSxyPXRbX107aWYocj09PWUpcmV0dXJuO2NvbnN0IG89QXJyYXkuaXNBcnJheShyKTtpZihyJiYobihyKXx8bykpe2xldCB0O3Q9bz9hJiZBcnJheS5pc0FycmF5KGEpP2E6W106YSYmbihhKT9hOnt9LGVbX109aSh0LHIpfWVsc2Ugdm9pZCAwIT09ciYmKGVbX109cil9KSl9KSksZSk6ZX1mdW5jdGlvbiBuKGUpe2lmKCFlfHwiW29iamVjdCBPYmplY3RdIiE9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSlyZXR1cm4hMTtjb25zdCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtpZighdClyZXR1cm4hMDtjb25zdCBfPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS50b1N0cmluZyxzPXQuaGFzT3duUHJvcGVydHkoImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3I7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHMmJl8uY2FsbChzKT09PV8uY2FsbChPYmplY3QpfX0sNzY4NzYwKGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcygpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChfLHMpPT57ZT1fLHQ9c30pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fV8uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9PnN9KX0sNTg5NzQ5KGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcyhlKXtpZih2b2lkIDA9PT1lKXJldHVybiIiO2lmKGUgaW5zdGFuY2VvZiBFcnJvcil7bGV0IHQ9ZS5tZXNzYWdlO3JldHVybiBlLnN0YWNrJiYodCs9IiAiK2Uuc3RhY2spLHR9cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKTpKU09OLnN0cmluZ2lmeShlKX1fLmQodCx7ZXJyb3JUb1N0cmluZzooKT0+c30pfSwxMTYzMTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7Y3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlOigpPT5hfSk7dmFyIHM9XygxMzg2MzgpO2NsYXNzIGl7Y29uc3RydWN0b3IoZSl7dGhpcy5fY2FjaGU9ZX1hc3luYyBnZXRWYWx1ZShlKXtjb25zdCB0PWF3YWl0IHRoaXMuX2NhY2hlLm1hdGNoKGUpO2lmKCF0KXJldHVybiBudWxsO3JldHVybiJhcHBsaWNhdGlvbi9qc29uIj09PSgwLHMuZW5zdXJlTm90TnVsbCkodC5oZWFkZXJzLmdldCgiQ29udGVudC1UeXBlIikpP3QuanNvbigpOnQudGV4dCgpfWFzeW5jIHNldFZhbHVlKGUsdCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P3RoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZSh0LHtoZWFkZXJzOnsiY29udGVudC10eXBlIjoidGV4dC9wbGFpbiJ9fSkpOnRoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZShKU09OLnN0cmluZ2lmeSh0KSx7aGVhZGVyczp7ImNvbnRlbnQtdHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifX0pKX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXtjb25zdCBfPWF3YWl0IHRoaXMuZ2V0VmFsdWUoZSk7XyYmKGF3YWl0IHRoaXMuc2V0VmFsdWUodCxfKSxhd2FpdCB0aGlzLl9jYWNoZS5kZWxldGUoZSkpfWFzeW5jIGRlbGV0ZVZhbHVlKGUpe3JldHVybiB0aGlzLl9jYWNoZS5kZWxldGUoZSl9fWNsYXNzIG57Y29uc3RydWN0b3IoKXt0aGlzLl9kYXRhPW5ldyBNYXB9YXN5bmMgZ2V0VmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZ2V0KGUpPz9udWxsfWFzeW5jIHNldFZhbHVlKGUsdCl7dGhpcy5fZGF0YS5zZXQoZSx0KX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXsKdGhpcy5fZGF0YS5oYXMoZSkmJih0aGlzLl9kYXRhLnNldCh0LHRoaXMuX2RhdGEuZ2V0KGUpKSx0aGlzLl9kYXRhLmRlbGV0ZShlKSl9YXN5bmMgZGVsZXRlVmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZGVsZXRlKGUpfX1hc3luYyBmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWF3YWl0IGNhY2hlcy5vcGVuKGUpO3JldHVybiBuZXcgaSh0KX1jYXRjaHtyZXR1cm4gbmV3IG59fX0sNDAzNihlLHQsXyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHMoZSl7Y29uc3QgdD17fTtpZigtMT09PWUuaW5kZXhPZigiQCIpKXQuc2hvcnRJZD1lLHQucGFja2FnZUlkPSJ0di1iYXNpY3N0dWRpZXMiLHQuaWQ9ZSsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtjb25zdCBfPWUuc3BsaXQoIkAiKTt0LnNob3J0SWQ9X1swXTtjb25zdCBzPV9bMV0uc3BsaXQoIi0iKTtpZigzPT09cy5sZW5ndGgpdC5wYWNrYWdlSWQ9cy5zbGljZSgwLDIpLmpvaW4oIi0iKSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPXBhcnNlSW50KHNbMl0pO2Vsc2UgaWYoMT09PXMubGVuZ3RoJiYiZGVjaXNpb25iYXIiPT09c1swXSl0LnBhY2thZ2VJZD0ibGVzLSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtpZigxIT09cy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJ1bmV4cGVjdGVkIHN0dWR5IGlkOiIrZSk7dC5wYWNrYWdlSWQ9InR2LSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTF9fWlmKHQuZnVsbElkPXQuaWQrIi0iK3QudmVyc2lvbiwidHYtc2NyaXB0aW5nIj09PXQucGFja2FnZUlkKXtjb25zdCBlPXQuc2hvcnRJZDtpZigwPT09ZS5pbmRleE9mKCJTY3JpcHQkIil8fDA9PT1lLmluZGV4T2YoIlN0cmF0ZWd5U2NyaXB0JCIpKXtjb25zdCBfPWUuaW5kZXhPZigiXyIpO3QucHJvZHVjdElkPV8+PTA/ZS5zdWJzdHJpbmcoMCxfKTp0LnBhY2thZ2VJZH1lbHNlIHQucHJvZHVjdElkPXQucGFja2FnZUlkfWVsc2UgdC5wcm9kdWN0SWQ9dC5wYWNrYWdlSWQ7cmV0dXJuIHR9Xy5kKHQse3BhcnNlSWRTdHJpbmc6KCk9PnN9KX0sNzgwOTc1KGUsdCxfKXsidXNlIHN0cmljdCI7dmFyIHM7Xy5kKHQse0NoYXJ0QXBpTWVzc2FnZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuQ29ubmVjdGVkPSJjb25uZWN0ZWQiLGUuRGlzY29ubmVjdGVkPSJkaXNjb25uZWN0ZWQiLGUuUmVjb25uZWN0QmFpbG91dD0icmVjb25uZWN0X2JhaWxvdXQifShzfHwocz17fSkpfSwzMDkwNTIoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7UVVPVEVfRklFTERTOigpPT5pLFFVT1RFX0ZJRUxEU19DQUNIRTooKT0+bn0pO3ZhciBzPV8oMTM4NjM4KQo7Y29uc3QgaT1uZXcgU2V0KFsicHJvX25hbWUiLCJiYXNlX25hbWUiLCJsb2dvIiwibG9nb2lkIiwiY3VycmVuY3ktbG9nb2lkIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiLCJzb3VyY2UtbG9nb2lkIiwic2hvcnRfbmFtZSIsIndlYl9zaXRlX3VybCIsInByb19wZXJtIiwidGltZXpvbmUiLCJjdXJyZW50X3Nlc3Npb24iLCJzZXNzaW9uX2hvbGlkYXlzIiwibGFzdF9wcmljZSIsImxwX3RpbWUiLCJzdWJzZXNzaW9ucyIsInByZXZfY2xvc2VfcHJpY2UiLCJvcGVuX3ByaWNlIiwiaGlnaF9wcmljZSIsImxvd19wcmljZSIsInByaWNlXzUyX3dlZWtfaGlnaCIsInByaWNlXzUyX3dlZWtfbG93IiwiYXNrIiwiYXNrX3NpemUiLCJiaWQiLCJiaWRfc2l6ZSIsInJjaCIsInJjaHAiLCJydGMiLCJydGNfdGltZSIsIm5jaCIsIm5jaHAiLCJudGMiLCJudGNfdGltZSIsImRhdGFfZnJlcXVlbmN5IiwicmVmZXJlbmNlLWxhc3QtcGVyaW9kLXN0YXJ0IiwiYnVzaW5lc3NfZGVzY3JpcHRpb24iLCJ3ZWJfc2l0ZV91cmwiLCJmaWdpIiwibnVtYmVyX29mX2VtcGxveWVlcyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9jYWxlbmRhcl9kYXRlIiwicm9vdCIsImRlc2NyaXB0aW9uIiwiZXhjaGFuZ2UiLCJsaXN0ZWRfZXhjaGFuZ2UiLCJ0eXBlIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJpc190cmFkYWJsZSIsInNlY3RvciIsInR5cGVzcGVjcyIsInZpc2libGUtcGxvdHMtc2V0IiwiaW5kdXN0cnkiLCJjdXJyZW5jeV9pZCIsImxhc3RfcHJpY2UiLCJmcmFjdGlvbmFsIiwibWlubW92IiwibWlubW92ZTIiLCJwcmljZXNjYWxlIiwidmFyaWFibGVfdGlja19zaXplIiwiY2hhbmdlIiwiY2hhbmdlX3BlcmNlbnQiLCJ2b2x1bWUiLCJhdmVyYWdlX3ZvbHVtZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJtYXJrZXRfY2FwX2NhbGMiLCJ0b3RhbF9yZXZlbnVlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSIsInByaWNlX2Vhcm5pbmdzX3R0bSIsImJldGFfMV95ZWFyIiwiZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX2Z5IiwiZGl2aWRlbmRzX3lpZWxkIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3B1YmxpY2F0aW9uX3R5cGVfbmV4dF9mcSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcSIsImZvcmVjYXN0X3JhdyIsImxhc3RfcmVsZWFzZV9kYXRlIiwibmV4dF9yZWxlYXNlX2RhdGUiLCJyZWZlcmVuY2VfbGFzdF9wZXJpb2QiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwibnVtYmVyX29mX2VtcGxveWVlcyIsIndlYl9zaXRlX3VybCIsImJ1c2luZXNzX2Rlc2NyaXB0aW9uIiwiZm91bmRlZCIsImNlbyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsInRvdGFsX3NoYXJlc19vdXRzdGFuZGluZyIsImRpdmlkZW5kX3BheW91dF9yYXRpb190dG0iLCJkaXZpZGVuZHNfeWllbGRfY3VycmVudCIsImRpdmlkZW5kX2V4X2RhdGVfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfcmVjZW50IiwiZGl2aWRlbmRfZXhfZGF0ZV9yZWNlbnQiLCJkaXZpZGVuZF9hbW91bnRfaCIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV91cGNvbWluZyIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV9yZWNlbnQiLCJ0b3RhbF9yZXZlbnVlX2ZxX2giLCJ0b3RhbF9yZXZlbnVlX2Z5X2giLCJuZXRfaW5jb21lX2Z5X2giLCJuZXRfaW5jb21lX2ZxX2giLCJ0b3RhbF9hc3NldHNfZnlfaCIsInRvdGFsX2Fzc2V0c19mcV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19meV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2Z5X2giLCJmaXNjYWxfcGVyaW9kX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2ZoX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnFfaCIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcV9oIiwiZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9mcV9oIiwibmV4dF9lYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxIiwiaXNfbmV4dF9lYXJuaW5nc19yZWxlYXNlX2RhdGVfZXN0aW1hdGVkIiwic3ltYm9sLXByaW1hcnluYW1lIiwiY3VycmVuY3lfY29kZSIsInJhdGVzX21jIiwicmF0ZXNfZnkiLCJyYXRlc190dG0iLCJtZWFzdXJlIiwidmFsdWVfdW5pdF9pZCIsInZhbHVlLXVuaXQtaWQiLCJ1cGRhdGVfbW9kZSIsImxhbmd1YWdlIiwibG9jYWxfZGVzY3JpcHRpb24iLCJzaG9ydF9kZXNjcmlwdGlvbiIsInNvdXJjZSIsInNvdXJjZTIiLCJmb3JtYXQiLCJyZWNvbW1lbmRhdGlvbl9tYXJrIiwibGFzdF9yZXBvcnRfZnJlcXVlbmN5IiwicHJpY2VfdGFyZ2V0X2VzdGltYXRlc19udW0iLCJwcmljZV90YXJnZXRfYXZlcmFnZSIsInVwZGF0ZV9tb2RlX3NlY29uZHMiLCJyZWNvbW1lbmRhdGlvbl90b3RhbCIsInJlY29tbWVuZGF0aW9uX2J1eSIsInJlY29tbWVuZGF0aW9uX292ZXIiLCJyZWNvbW1lbmRhdGlvbl9ob2xkIiwicmVjb21tZW5kYXRpb25fdW5kZXIiLCJyZWNvbW1lbmRhdGlvbl9zZWxsIiwicmVjb21tZW5kYXRpb25fdG90YWwiLCJwcmljZV90YXJnZXRfaGlnaCIsInByaWNlX3RhcmdldF9sb3ciLCJyYXRlc19wdCIsInJhdGVzX3B0IiwidG90YWxfcmV2ZW51ZV9meV9oIiwidG90YWxfcmV2ZW51ZV9mcV9oIiwidG90YWxfcmV2ZW51ZV9maF9oIiwibmV0X3JldmVudWVfZnlfaCIsIm5ldF9yZXZlbnVlX2ZxX2giLCJuZXRfcmV2ZW51ZV9maF9oIiwibmV0X2luY29tZV9meV9oIiwibmV0X2luY29tZV9mcV9oIiwibmV0X2luY29tZV9maF9oIiwidG90YWxfYXNzZXRzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZnFfaCIsInRvdGFsX2Fzc2V0c19maF9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJ0b3RhbF9saWFiaWxpdGllc19maF9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19maF9oIiwiZmlzY2FsX3BlcmlvZF9meSIsImZpc2NhbF9wZXJpb2RfZnEiLCJmaXNjYWxfcGVyaW9kX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlX2ZxX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnlfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9maF9oIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZV9meSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X3RpbWUiLCJlYXJuaW5nc19yZWxlYXNlX3RpbWUiLCJpc19uZXh0X2Vhcm5pbmdzX3JlbGVhc2VfZGF0ZV9lc3RpbWF0ZWQiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZmgiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2ZoX2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZoX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2Z5X2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZoX2giLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnEiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnkiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZmgiLCJyZXZlbnVlX2ZxX2giLCJyZXZlbnVlX2Z5X2giLCJyZXZlbnVlX2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZxX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2Z5X2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnEiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnkiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZmgiLCJyZXZlbnVlX3NlZ19ieV9idXNpbmVzc19oIiwicmV2ZW51ZV9zZWdfYnlfcmVnaW9uX2giLCJ0b3RhbF9yZXZlbnVlX2Z5IiwidG90YWxfcmV2ZW51ZV9mcSIsInRvdGFsX3JldmVudWVfZmgiLCJncm9zc19wcm9maXRfZnkiLCJncm9zc19wcm9maXRfZnEiLCJncm9zc19wcm9maXRfZmgiLCJlYml0ZGFfZnkiLCJlYml0X2Z5IiwibmV0X2luY29tZV9meSIsIm5ldF9pbmNvbWVfZnEiLCJuZXRfaW5jb21lX2ZoIiwidG90YWxfZGVidF9meV9oIiwidG90YWxfZGVidF9mcV9oIiwidG90YWxfZGVidF9maF9oIiwiZnJlZV9jYXNoX2Zsb3dfZnlfaCIsImZyZWVfY2FzaF9mbG93X2ZxX2giLCJmcmVlX2Nhc2hfZmxvd19maF9oIiwiY2FzaF9uX2VxdWl2YWxlbnRzX2Z5X2giLCJjYXNoX25fZXF1aXZhbGVudHNfZnFfaCIsImNhc2hfbl9lcXVpdmFsZW50c19maF9oIiwidG90YWxfY3VycmVudF9hc3NldHNfZnkiLCJ0b3RhbF9jdXJyZW50X2Fzc2V0c19mcSIsInRvdGFsX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfY3VycmVudF9saWFiaWxpdGllc19meSIsInRvdGFsX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnEiLCJ0b3RhbF9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2Z5IiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZxIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnkiLCJ0b3RhbF9ub25fY3VycmVudF9saWFiaWxpdGllc19mcSIsInRvdGFsX25vbl9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwibG9hbnNfbmV0X2Z5IiwibG9hbnNfbmV0X2Z5X2giLCJsb2Fuc19uZXRfZnFfaCIsImxvYW5zX25ldF9maF9oIiwidG90YWxfZGVwb3NpdHNfZnkiLCJ0b3RhbF9kZXBvc2l0c19meV9oIiwidG90YWxfZGVwb3NpdHNfZnFfaCIsInRvdGFsX2RlcG9zaXRzX2ZoX2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19meSIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2Z5X2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19mcV9oIiwibG9hbl9sb3NzX2FsbG93YW5jZXNfZmhfaCIsInJlc2VydmVfdG9fdG90YWxfY2FwaXRhbF9meV9oIiwicmVzZXJ2ZV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJyZXNlcnZlX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsInVuZWFybmVkX3ByZW1pdW1fdG9fdG90YWxfY2FwaXRhbF9meV9oIiwidW5lYXJuZWRfcHJlbWl1bV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJ1bmVhcm5lZF9wcmVtaXVtX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsImluc3VyYW5jZV9yZXNlcnZlc19meV9oIiwiaW5zdXJhbmNlX3Jlc2VydmVzX2ZxX2giLCJpbnN1cmFuY2VfcmVzZXJ2ZXNfZmhfaCIsInBvbGljeV9jbGFpbXNfZnlfaCIsInBvbGljeV9jbGFpbXNfZnFfaCIsInBvbGljeV9jbGFpbXNfZmhfaCIsInByZW1pdW1zX2Vhcm5lZF9meV9oIiwicHJlbWl1bXNfZWFybmVkX2ZxX2giLCJwcmVtaXVtc19lYXJuZWRfZmhfaCIsInByaWNlX2Vhcm5pbmdzX2ZxX2giLCJwcmljZV9lYXJuaW5nc19meV9oIiwicHJpY2VfZWFybmluZ3NfZmhfaCIsInByaWNlX3NhbGVzX2ZxX2giLCJwcmljZV9zYWxlc19meV9oIiwicHJpY2Vfc2FsZXNfZmhfaCIsImRpbHV0ZWRfbmV0X2luY29tZV90dG0iLCJ0b3RhbF9yZXZlbnVlX3R0bSIsIm5ldF9yZXZlbnVlX3R0bSIsInByaWNlX2Vhcm5pbmdzX2N1cnJlbnQiLCJwcmljZV9zYWxlc19jdXJyZW50IiwiaXNpbi1kaXNwbGF5ZWQiLCJjdXNpcCIsImNmaV9jb2RlIiwiaW50ZXJlc3RfaW5jb21lX2Z5X2giLCJpbnRlcmVzdF9pbmNvbWVfZnFfaCIsImludGVyZXN0X2luY29tZV9maF9oIiwibm9uX2ludGVyZXN0X2luY29tZV9meV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9mcV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9maF9oIiwid2Vic2l0ZSIsImRvYyIsImV4cGxvcmVyIiwic291cmNlcyIsImNvbnRyYWN0cyIsImNyeXB0b19jb21tb25fY2F0ZWdvcmllcyIsImNyeXB0b19hc3NldCIsImNvbW11bml0eSIsImRpdmlkZW5kc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiLCJmaW5hbmNpYWxzX2F2YWlsYWJpbGl0eSIsImRvY3VtZW50cyIsImV0Zl9hc3NldF90eXBlX2V4cG9zdXJlIiwiZXRmX3JlZ2lvbl9leHBvc3VyZSIsInRvcF9ob2xkaW5ncyIsInVuaXQtaWQiLCJvcHRpb25zLWluZm8iLCJvcHRpb24tdHlwZSIsImludGVyZXN0X2luY29tZV9meSIsImludGVyZXN0X2luY29tZV9mcSIsImludGVyZXN0X2luY29tZV9maCIsIm5vbl9pbnRlcmVzdF9pbmNvbWVfZnkiLCJub25faW50ZXJlc3RfaW5jb21lX2ZxIiwibm9uX2ludGVyZXN0X2luY29tZV9maCIsImludGVyZXN0X2V4cGVuc2VfZnkiLCJpbnRlcmVzdF9leHBlbnNlX2ZxIiwiaW50ZXJlc3RfZXhwZW5zZV9maCIsImxvYW5fbG9zc19wcm92aXNpb25fZnkiLCJsb2FuX2xvc3NfcHJvdmlzaW9uX2ZxIiwibG9hbl9sb3NzX3Byb3Zpc2lvbl9maCIsIm5vbl9pbnRlcmVzdF9leHBlbnNlX2Z5Iiwibm9uX2ludGVyZXN0X2V4cGVuc2VfZnEiLCJub25faW50ZXJlc3RfZXhwZW5zZV9maCIsIm5vbl9vcGVyX2luY29tZV9meSIsIm5vbl9vcGVyX2luY29tZV9mcSIsIm5vbl9vcGVyX2luY29tZV9maCIsInVudXN1YWxfZXhwZW5zZV9pbmNfZnkiLCJ1bnVzdWFsX2V4cGVuc2VfaW5jX2ZxIiwidW51c3VhbF9leHBlbnNlX2luY19maCIsInByZXRheF9pbmNvbWVfZnkiLCJwcmV0YXhfaW5jb21lX2ZxIiwicHJldGF4X2luY29tZV9maCIsImluY29tZV90YXhfZnkiLCJpbmNvbWVfdGF4X2ZxIiwiaW5jb21lX3RheF9maCIsImFmdGVyX3RheF9vdGhlcl9pbmNvbWVfZnkiLCJhZnRlcl90YXhfb3RoZXJfaW5jb21lX2ZxIiwiYWZ0ZXJfdGF4X290aGVyX2luY29tZV9maCIsInRvdGFsX25vbl9vcGVyX2luY29tZV9meSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9mcSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9maCIsIm9wZXJfaW5jb21lX2Z5Iiwib3Blcl9pbmNvbWVfZnEiLCJvcGVyX2luY29tZV9maCIsIm9wZXJhdGluZ19leHBlbnNlc19meSIsIm9wZXJhdGluZ19leHBlbnNlc19mcSIsIm9wZXJhdGluZ19leHBlbnNlc19maCIsImNvc3Rfb2ZfZ29vZHNfZnkiLCJjb3N0X29mX2dvb2RzX2ZxIiwiY29zdF9vZl9nb29kc19maCIsImVxdWl0eV9pbl9lYXJuaW5nc19meSIsImVxdWl0eV9pbl9lYXJuaW5nc19mcSIsImVxdWl0eV9pbl9lYXJuaW5nc19maCIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9meSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9mcSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9maCIsImRpc2NvbnRpbnVlZF9vcGVyYXRpb25zX2Z5IiwiZGlzY29udGludWVkX29wZXJhdGlvbnNfZnEiLCJkaXNjb250aW51ZWRfb3BlcmF0aW9uc19maCIsImZyb250X2NvbnRyYWN0IiwibWluX2NvbnRyYWN0IiwicG9pbnR2YWx1ZSIsInVuaXRfaWQiLCJleHBpcmF0aW9uIiwiYXVtIiwiYXNzZXRfY2xhc3MiLCJmb2N1cyIsImV4cGVuc2VfcmF0aW8iLCJsYXVuY2hfZGF0ZSIsImlzc3VlciIsImJyYW5kIiwiaG9tZXBhZ2UiLCJpbmRleF90cmFja2VkIiwiYWN0aXZlbHlfbWFuYWdlZCIsImZ1bmRfdmlld19tb2RlcyIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnlfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnFfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZmhfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZmhfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZmhfaCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9maCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9mcSIsInRvdGFsX2RlYnRfZnEiLCJtaW5vcml0eV9pbnRlcmVzdF9maCIsIm1pbm9yaXR5X2ludGVyZXN0X2ZxIiwiY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2ZxIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZoIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZxIiwiZW50ZXJwcmlzZV92YWx1ZV9jdXJyZW50IiwiZXRmX2hvbGRpbmdzX2NvdW50IiwiY29udHJhY3QtZGVzY3JpcHRpb24iLCJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiLCJhbGxfdGltZV9oaWdoIiwiYWxsX3RpbWVfaGlnaF9kYXkiLCJhbGxfdGltZV9sb3ciLCJhbGxfdGltZV9sb3dfZGF5Iiwib3V0c3RhbmRpbmdfYW1vdW50Iiwibm9taW5hbF92YWx1ZSIsImRlbm9tX21pbiIsImN1cnJlbnRfY291cG9uIiwiY291cG9uX3R5cGVfZ2VuZXJhbCIsImNvdXBvbl9mcmVxdWVuY3kiLCJ5aWVsZF90b19tYXR1cml0eSIsIm1hdHVyaXR5LWRhdGUiLCJkYXlzX3RvX21hdHVyaXR5IiwiYm9uZF9pc3N1ZXIiLCJpc3N1ZV9kYXRlIiwiYm9uZF9pc3N1ZXJfc3RvY2tfc3ltYm9sIiwidG90YWxfaXNzdWVkX2Ftb3VudCIsInBhaWRfYW1vdW50IiwiYm9uZF9zbnBfcmF0aW5nX2x0X2giLCJwbGFjZW1lbnRfdHlwZSIsImR1cmF0aW9uX3R5cGUiLCJtYXR1cml0eV90eXBlIiwib2ZmZXJfdHlwZSIsInJlZGVtcHRpb25fdHlwZSIsImNvbnZlcnNpb25fb3B0aW9uIiwic2lua2luZ19mdW5kIiwib3duZXJzaGlwX2Zvcm0iLCJkYWlseS1zdW1tYXJ5LWFzdCIsImlzc3VlX3N0YXR1cyIsImNvdXBvbl9oIiwic2lua2luZ19mdW5kX25leHRfZGF0ZSIsInNpbmtpbmdfZnVuZF9taW5fYW1vdW50X25leHQiLCJjYWxsX25leHRfZGF0ZSIsInJlZGVtcHRpb25zX2giLCJjYWxsX25vdGljZV9kYXlzIiwicHV0X25leHRfZGF0ZSIsInB1dF9ub3RpY2VfZGF5c19taW4iLCJzZW5pb3JpdHlfbGV2ZWwiLCJpbmZsYXRpb25fcHJvdGVjdGlvbiIsInBsZWRnZV9zdGF0dXMiLCJib25kX2lzc3Vlcl9jb3VudHJ5X29mX3Jpc2siLCJib25kX2lzc3Vlcl9jcl9wYXJlbnQiLCJjcmVkaXRfZW5oYW5jZW1lbnRfdHlwZSIsImNyZWRpdF9lbmhhbmNlbWVudF9zdGF0dXMiLCJ1c2Vfb2ZfcHJvY2VlZHMiLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX2x0X2giLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX3N0X2giLCJib25kX2FnZW50c190ciIsImZpcnN0X2Jhcl90aW1lXzFkIiwiZmluYW5jaWFsLWluZGljYXRvci1pZCIsImV4Y2hhbmdlLWluZm8iLCJ1bmRlcmx5aW5nLXN5bWJvbCIsInN0cmlrZSIsImxvdHNpemUiLCJvcHRpb24tc3R5bGUiLCJoYXNfYm9uZHMiLCJvcGVuX3RpbWUiLCJoYXNfYm9uZHMiLCJkZXhfYnV5c18xNW0iLCJkZXhfc2VsbHNfMTVtIiwiZGV4X2J1eV92b2x1bWVfMTVtIiwiZGV4X3NlbGxfdm9sdW1lXzE1bSIsImRleF9idXllcnNfMTVtIiwiZGV4X3NlbGxlcnNfMTVtIiwiZGV4X2J1eXNfMWgiLCJkZXhfc2VsbHNfMWgiLCJkZXhfYnV5X3ZvbHVtZV8xaCIsImRleF9zZWxsX3ZvbHVtZV8xaCIsImRleF9idXllcnNfMWgiLCJkZXhfc2VsbGVyc18xaCIsImRleF9idXlzXzRoIiwiZGV4X3NlbGxzXzRoIiwiZGV4X2J1eV92b2x1bWVfNGgiLCJkZXhfc2VsbF92b2x1bWVfNGgiLCJkZXhfYnV5ZXJzXzRoIiwiZGV4X3NlbGxlcnNfNGgiLCJkZXhfYnV5c18xMmgiLCJkZXhfc2VsbHNfMTJoIiwiZGV4X2J1eV92b2x1bWVfMTJoIiwiZGV4X3NlbGxfdm9sdW1lXzEyaCIsImRleF9idXllcnNfMTJoIiwiZGV4X3NlbGxlcnNfMTJoIiwiZGV4X2J1eXNfMjRoIiwiZGV4X3NlbGxzXzI0aCIsImRleF9idXlfdm9sdW1lXzI0aCIsImRleF9zZWxsX3ZvbHVtZV8yNGgiLCJkZXhfYnV5ZXJzXzI0aCIsImRleF9zZWxsZXJzXzI0aCIsImRleF9jb252ZXJ0ZWRfc3ltYm9sIiwiZGV4X3RyYWRpbmdfdm9sdW1lXzI0aCIsImRleF9jcmVhdGVkX3RpbWUiLCJkZXhfY3VycmVuY3kiLCJkZXhfY3VycmVuY3lfbG9nb2lkIiwiYmxvY2tjaGFpbl9hZGRyZXNzZXNfdXJscyIsImJsb2NrY2hhaW5fYWRkcmVzc2VzIiwiYmFzZV9jdXJyZW5jeSIsImlwb19vZmZlcl9zdGF0dXMiLCJoYXNfaXBvX2RldGFpbHNfdmlzaWJsZSIsImlwb19wcmljZV9yYW5nZV91c2RfbWF4IiwiaXBvX3ByaWNlX3JhbmdlX3VzZF9taW4iLCJpcG9fb2ZmZXJfcHJpY2VfdXNkIiwiaXBvX29mZmVyZWRfc2hhcmVzIiwiaXBvX2RlYWxfYW1vdW50X3VzZCIsImlwb19hbm5vdW5jZW1lbnRfZGF0ZSIsImlwb19vZmZlcl9kYXRlIiwiYXZhaWxhYmxlX2RhdGFfcmFuZ2VfYmVnaW5fZGF0ZSIsImF2YWlsYWJsZV9kYXRhX3JhbmdlX2VuZF9kYXRlIiwiaGFzX2V0Zl9vd25lcnNoaXAiLCJzeW1ib2xfcHJpbWFyeV9saXN0aW5nIiwibWV0cmljX3l0bSIsIm1ldHJpY3MiLCJlcHNfZXN0aW1hdGVzX2Z5X2giLCJlcHNfZXN0aW1hdGVzX2ZxX2giLCJlcHNfZXN0aW1hdGVzX2ZoX2giLCJyZXZlbnVlX2VzdGltYXRlc19meV9oIiwicmV2ZW51ZV9lc3RpbWF0ZXNfZnFfaCIsInJldmVudWVfZXN0aW1hdGVzX2ZoX2giLCJkcHNfZXN0aW1hdGVzX2Z5X2giLCJkcHNfZXN0aW1hdGVzX2ZxX2giLCJkcHNfZXN0aW1hdGVzX2ZoX2giLCJjb3N0X29mX2dvb2RzX2VzdGltYXRlc19meV9oIiwiY29zdF9vZl9nb29kc19lc3RpbWF0ZXNfZnFfaCIsImNvc3Rfb2ZfZ29vZHNfZXN0aW1hdGVzX2ZoX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2Z5X2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZxX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZoX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2Z5X2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZxX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZoX2giLCJyZXNlYXJjaF9hbmRfZGV2X2VzdGltYXRlc19meV9oIiwicmVzZWFyY2hfYW5kX2Rldl9lc3RpbWF0ZXNfZnFfaCIsInJlc2VhcmNoX2FuZF9kZXZfZXN0aW1hdGVzX2ZoX2giLCJlYml0ZGFfZXN0aW1hdGVzX2Z5X2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZxX2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZoX2giLCJlYml0X2VzdGltYXRlc19meV9oIiwiZWJpdF9lc3RpbWF0ZXNfZnFfaCIsImViaXRfZXN0aW1hdGVzX2ZoX2giLCJuZXRfaW5jb21lX2VzdGltYXRlc19meV9oIiwibmV0X2luY29tZV9lc3RpbWF0ZXNfZnFfaCIsIm5ldF9pbmNvbWVfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZxX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9kZWJ0X2VzdGltYXRlc19meV9oIiwidG90YWxfZGVidF9lc3RpbWF0ZXNfZnFfaCIsInRvdGFsX2RlYnRfZXN0aW1hdGVzX2ZoX2giLCJib29rX3ZhbHVlX3Blcl9zaGFyZV9lc3RpbWF0ZXNfZnlfaCIsImJvb2tfdmFsdWVfcGVyX3NoYXJlX2VzdGltYXRlc19mcV9oIiwiYm9va192YWx1ZV9wZXJfc2hhcmVfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXBpdGFsX2V4cGVuZGl0dXJlc19lc3RpbWF0ZXNfZnlfaCIsImNhcGl0YWxfZXhwZW5kaXR1cmVzX2VzdGltYXRlc19mcV9oIiwiY2FwaXRhbF9leHBlbmRpdHVyZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJmcmVlX2Nhc2hfZmxvd19lc3RpbWF0ZXNfZnlfaCIsImZyZWVfY2FzaF9mbG93X2VzdGltYXRlc19mcV9oIiwiZnJlZV9jYXNoX2Zsb3dfZXN0aW1hdGVzX2ZoX2giLCJlc3RpbWF0ZXNfZmlzY2FsX3BlcmlvZF9meV9oIiwiZXN0aW1hdGVzX2Zpc2NhbF9wZXJpb2RfZnFfaCIsImVzdGltYXRlc19maXNjYWxfcGVyaW9kX2ZoX2giLCJmb3JlY2FzdF9hdmFpbGFiaWxpdHkiXSksbj1uZXcgY2xhc3N7CmNvbnN0cnVjdG9yKGUpe3RoaXMuX2NhY2hlPW5ldyBNYXAsdGhpcy5fdGltZXM9bmV3IE1hcCx0aGlzLl9maWVsZHM9Wy4uLmUuZmllbGRzXX11cGRhdGUoZSx0LF8pe2NvbnN0IGk9KDAscy5lbnN1cmVEZWZpbmVkKShlLnN5bWJvbG5hbWUpLG49RGF0ZS5ub3coKTtpZih0aGlzLl9jYWNoZS5oYXMoaSl8fHRoaXMuX2NhY2hlLnNldChpLHtzeW1ib2xuYW1lOmksc3RhdHVzOmUuc3RhdHVzLHZhbHVlczp7fX0pLHRoaXMuX3RpbWVzLmhhcyhpKXx8dGhpcy5fdGltZXMuc2V0KGksbmV3IE1hcCksImVycm9yIj09PWUuc3RhdHVzKXJldHVybjtjb25zdCBhPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fY2FjaGUuZ2V0KGkpKSxyPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fdGltZXMuZ2V0KGkpKTthLnN0YXR1cz1lLnN0YXR1cztmb3IoY29uc3QgcyBvZiB0aGlzLl9maWVsZHMpdC5oYXMocykmJihffHx2b2lkIDAhPT1lLnZhbHVlc1tzXSkmJihhLnZhbHVlc1tzXT1lLnZhbHVlc1tzXSxyLnNldChzLG4pKX1nZXQoZSl7cmV0dXJuIHRoaXMuX2NhY2hlLmdldChlKT8/bnVsbH1nZXRUaW1lcyhlKXtyZXR1cm4gdGhpcy5fdGltZXMuZ2V0KGUpPz9udWxsfWZpZWxkcygpe3JldHVybiB0aGlzLl9maWVsZHN9fSh7ZmllbGRzOml9KX0sOTI3NTkzKGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse1F1b3RlU2Vzc2lvbk11bHRpcGxleGVyOigpPT5mfSk7dmFyIHM9Xyg1ODcxNjgpLGk9Xyg1NDc4NTEpLG49XygzNTI4MzcpLGE9XygxMzg2MzgpLHI9XygyMjEwNjEpLG89Xyg5NDgzODApLGw9Xyg5NjQ0ODYpLGM9XygxNTAxNTApLGg9XygzMDkwNTIpLGQ9XygzNjc5NDYpO2xldCB1PSExO3ZhciBtPV8oOTcwNzc0KTtjb25zdCBwPSgwLHIuZ2V0TG9nZ2VyKSgiV2ViY2hhcnRDbGllbnQuUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIiKTtjbGFzcyBme2NvbnN0cnVjdG9yKGUpe3RoaXMub25Db25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMub25EaXNjb25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLl9zdWJzY3JpcHRpb25zPXt9LHRoaXMuX3N5bWJvbF9kYXRhPXt9LHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHM9KDAsaS5kZWZhdWx0KSh0aGlzLl91cGRhdGVGYXN0U3ltYm9scywyNTApLHRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGE9e30sdGhpcy5fZXh0ZW5zaW9ucz17fSx0aGlzLm9wdGlvbnM9e3Rocm90dGxlVGltZW91dDoxMjUsLi4uZX0sdGhpcy5fc2Vzc2lvbj1uZXcgbS5RdW90ZVNlc3Npb24oZS5hcGksWyJtdWx0aXBsZXhlciIsZS5uYW1lLCgwLGMucmFuZG9tSGFzaCkoKV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIl8iKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LmZvcm1hdHRlciYmKHRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyPXRoaXMub3B0aW9ucy5leHRlbnNpb25zLmZvcm1hdHRlcih0aGlzKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LnNuYXBzaG90JiYodGhpcy5fZXh0ZW5zaW9ucy5zbmFwc2hvdD10aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucy5zbmFwc2hvdCh0aGlzKSksdGhpcy5jb25uZWN0KCl9ZGVzdHJveSgpe3RoaXMuX3Nlc3Npb24uZGVzdHJveSgpLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCl9aW50ZXJuYWxzKCl7cmV0dXJue3Nlc3Npb246KCk9PnRoaXMuX3Nlc3Npb24sc3Vic2NyaXB0aW9uczooKT0+dGhpcy5fc3Vic2NyaXB0aW9ucyxkYXRhOigpPT50aGlzLl9zeW1ib2xfZGF0YX19Y29ubmVjdCgpe3RoaXMuX3Nlc3Npb24uY29ubmVjdCh0aGlzLnF1b3RlSGFuZGxlci5iaW5kKHRoaXMpKX1xdW90ZUhhbmRsZXIoZSl7Y29uc3R7bWV0aG9kOnQscGFyYW1zOl99PWU7c3dpdGNoKHQpe2Nhc2UiY29ubmVjdGVkIjp0aGlzLl9jb25uZWN0ZWR8fCh0aGlzLl9jb25uZWN0ZWQ9ITAsdGhpcy5vbkNvbm5lY3RlZCgpKTticmVhaztjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpicmVhaztjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKF9bMF0pO2JyZWFrO2Nhc2UicXVvdGVfY29tcGxldGVkIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKHtzeW1ib2xuYW1lOl9bMF0sY29tcGxldGU6cGVyZm9ybWFuY2Uubm93KCksdmFsdWVzOnt9fSk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCkpfX1vbkNvbm5lY3RlZCgpe3RoaXMuc2V0RmllbGRzKCk7Y29uc3QgZT1PYmplY3Qua2V5cyh0aGlzLl9zeW1ib2xfZGF0YSk7ZS5sZW5ndGgmJih0aGlzLl9zZXNzaW9uLnF1b3RlQWRkU3ltYm9scyhlKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpLHRoaXMub25Db25uZWN0LmZpcmUoKX1zZXRGaWVsZHMoKXtjb25zdHtmaWVsZHM6ZX09dGhpcy5vcHRpb25zO2UmJmUubGVuZ3RoJiZ0aGlzLl9zZXNzaW9uLnF1b3RlU2V0RmllbGRzKGUpfW9uU3ltYm9sRGF0YShlKXt0cnl7ZS5zdGF0dXMmJmguUVVPVEVfRklFTERTX0NBQ0hFLnVwZGF0ZShlLGguUVVPVEVfRklFTERTLCExKX1jYXRjaChlKXt9Y29uc3QgdD1lLnN5bWJvbG5hbWU7bGV0IF89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVt0XTt1JiYoZGVsZXRlIGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2Usdm9pZCAwIT09ZS52YWx1ZXMucmVndWxhcl9jbG9zZSYmKGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2U9ZS52YWx1ZXMucmVndWxhcl9jbG9zZSkpLF98fChfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbdF09e2ZuRGlzcGF0Y2g6KDAscy5kZWZhdWx0KSh0aGlzLmRpc3BhdGNoU3ltYm9sRGF0YS5iaW5kKHRoaXMpLHRoaXMub3B0aW9ucy50aHJvdHRsZVRpbWVvdXQpfSksXy5jYWNoZT8oMCxsLmRlZXBFeHRlbmQpKF8uY2FjaGUsZSk6Xy5jYWNoZT1lLF8uZm5EaXNwYXRjaCh0KX1kaXNwYXRjaFN5bWJvbERhdGEoZSl7Y29uc3QgdD10aGlzLl9zeW1ib2xfZGF0YVtlXSxfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbZV0uY2FjaGUKO2lmKGRlbGV0ZSB0aGlzLl90aHJvdHRsZWRTeW1ib2xEYXRhW2VdLmNhY2hlLHRoaXMuX3N5bWJvbF9kYXRhW2VdKXsoMCxsLmRlZXBFeHRlbmQpKHQsXyksdC52YWx1ZXMmJnRoaXMuX3BhcnNlVXBkYXRlTW9kZSh0LnZhbHVlcyk7Zm9yKGNvbnN0IHMgaW4gdGhpcy5fc3Vic2NyaXB0aW9ucyl7Y29uc3QgaT10aGlzLl9zdWJzY3JpcHRpb25zW3NdO2lmKGkuaGFzKGUpKXtbLi4uKDAsYS5lbnN1cmVEZWZpbmVkKShpLmdldChlKSldLmZvckVhY2goKGU9PntlKHQsXyl9KSl9fX19c3Vic2NyaWJlKGUsdCxfKXt0aGlzLl9zdWJzY3JpcHRpb25zW2VdPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV18fG5ldyBNYXA7Y29uc3Qgcz10aGlzLl9zdWJzY3JpcHRpb25zW2VdO3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IGk9W107dC5mb3JFYWNoKChlPT57dGhpcy5fc3ltYm9sX2RhdGFbZV0/cyYmcy5oYXMoZSl8fHRoaXMuX3N5bWJvbF9kYXRhW2VdLnN1YnNjcmliZXJzX2NvdW50Kys6KHRoaXMuX3N5bWJvbF9kYXRhW2VdPXtzdWJzY3JpYmVyc19jb3VudDoxfSxpLnB1c2goZSkpLHMuaGFzKGUpfHxzLnNldChlLFtdKTtjb25zdCB0PSgwLGEuZW5zdXJlRGVmaW5lZCkocy5nZXQoZSkpO3QucHVzaChfKSx0LmZhc3Q9ITAsdGhpcy5fc3ltYm9sX2RhdGFbZV0mJnRoaXMuX3N5bWJvbF9kYXRhW2VdLnZhbHVlcyYmXyh0aGlzLl9zeW1ib2xfZGF0YVtlXSx0aGlzLl9zeW1ib2xfZGF0YVtlXSl9KSksaS5sZW5ndGgmJnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVBZGRTeW1ib2xzKGkpLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSl9dW5zdWJzY3JpYmUoZSx0LF8pe3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IHM9dGhpcy5fc3Vic2NyaXB0aW9uc1tlXSxpPVtdO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtjb25zdCByPXRbbl07aWYocyYmcy5oYXMocikpe2lmKF8pe2NvbnN0IGU9KDAsYS5lbnN1cmVEZWZpbmVkKShzLmdldChyKSksdD1lLmluZGV4T2YoXyk7fnQmJmUuc3BsaWNlKHQsMSksZS5sZW5ndGh8fHMuZGVsZXRlKHIpfWVsc2Ugcy5kZWxldGUocik7MD09PXMuc2l6ZSYmZGVsZXRlIHRoaXMuX3N1YnNjcmlwdGlvbnNbZV0sdGhpcy5fc3ltYm9sX2RhdGEuaGFzT3duUHJvcGVydHkocikmJihzLmhhcyhyKXx8dGhpcy5fc3ltYm9sX2RhdGFbcl0uc3Vic2NyaWJlcnNfY291bnQtLSx0aGlzLl9zeW1ib2xfZGF0YVtyXS5zdWJzY3JpYmVyc19jb3VudHx8KGRlbGV0ZSB0aGlzLl9zeW1ib2xfZGF0YVtyXSxpLnB1c2gocikpKX1lbHNlIHAubG9nV2FybihgQ2hlY2sgeW91ciBzdWIvdW5zdWIgbG9va3MgaXQgaXMgbGVha2luZyAoY2xpZW50X2lkPSR7ZX0sIHN5bWJvbD0ke3J9KWApfWkubGVuZ3RoJiZ0aGlzLl9jb25uZWN0ZWQmJih0aGlzLl9zZXNzaW9uLnF1b3RlUmVtb3ZlU3ltYm9scyhpKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpfXNldEZhc3RTeW1ib2xzKGUsdCl7aWYodGhpcy5fc3Vic2NyaXB0aW9uc1tlXSl7Y29uc3QgXz10aGlzLl9zdWJzY3JpcHRpb25zW2VdLHM9QXJyYXkuZnJvbShfLmtleXMoKSk7Zm9yKGxldCBlPTA7ZTxzLmxlbmd0aDsrK2Upe2NvbnN0IGk9c1tlXTsoMCxhLmVuc3VyZURlZmluZWQpKF8uZ2V0KGkpKS5mYXN0PS0xIT09dC5pbmRleE9mKGkpfX10aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCl9c25hcHNob3QoZSl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2V4dGVuc2lvbnMuc25hcHNob3Q/UHJvbWlzZS5yZWplY3QoIk5vIGZvcm1hdHRlciBleHRlbnNpb24gcHJvdmlkZWQiKTp0aGlzLl9leHRlbnNpb25zLnNuYXBzaG90KGUpfWZvcm1hdHRlcihlLHQpe3JldHVybiB2b2lkIDA9PT10aGlzLl9leHRlbnNpb25zLmZvcm1hdHRlcj9Qcm9taXNlLnJlamVjdCgiTm8gZm9ybWF0dGVyIGV4dGVuc2lvbiBwcm92aWRlZCIpOnRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyKGUsdCl9X3VwZGF0ZUZhc3RTeW1ib2xzKCl7aWYoIXRoaXMuX2Nvbm5lY3RlZClyZXR1cm47Y29uc3QgZT10aGlzLl9mYXN0U3ltYm9scygpOzA9PT1lLmxlbmd0aD90aGlzLl9zZXNzaW9uLnF1b3RlSGliZXJuYXRlQWxsKCk6dGhpcy5fc2Vzc2lvbi5xdW90ZUZhc3RTeW1ib2xzKGUpfV9mYXN0U3ltYm9scygpe2xldCBlPVtdO2Zvcihjb25zdCB0IGluIHRoaXMuX3N1YnNjcmlwdGlvbnMpe2NvbnN0IF89dGhpcy5fc3Vic2NyaXB0aW9uc1t0XSxzPUFycmF5LmZyb20oXy5rZXlzKCkpO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7Kyt0KXtjb25zdCBpPXNbdF07KDAsYS5lbnN1cmVEZWZpbmVkKShfLmdldChpKSkuZmFzdCYmZS5wdXNoKGkpfX1yZXR1cm4gZT0oMCxuLmRlZmF1bHQpKGUpLGV9X3BhcnNlVXBkYXRlTW9kZShlKXsoMCxkLm5vcm1hbGl6ZVVwZGF0ZU1vZGUpKGUpfX19LDk3MDc3NChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtRdW90ZVNlc3Npb246KCk9Pml9KTt2YXIgcz1fKDE1MDE1MCk7Y2xhc3MgaXtjb25zdHJ1Y3RvcihlLHQ9KDAscy5yYW5kb21IYXNoKSgpKXt0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSx0aGlzLl9nbG9iYWxIYW5kbGVyPW51bGwsdGhpcy5fY2hhcnRBcGk9ZSx0aGlzLl9zZXNzaW9uaWQ9InFzXyIrdH1kZXN0cm95KCl7dGhpcy5fc2Vzc2lvbnN0YXJ0ZWQmJih0aGlzLl9jaGFydEFwaS5xdW90ZURlbGV0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSl9Y29ubmVjdGVkKCl7cmV0dXJuIHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3RlZCgpfWNvbm5lY3QoZSl7dGhpcy5fZ2xvYmFsSGFuZGxlcj1lLHRoaXMuX2NoYXJ0QXBpLmNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkLHRoaXMpLHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fY2hhcnRBcGkuZGlzY29ubmVjdCgpfXF1b3RlQWRkU3ltYm9scyhlKXt0aGlzLl9jaGFydEFwaS5xdW90ZUFkZFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlUmVtb3ZlU3ltYm9scyhlKXsKdGhpcy5fY2hhcnRBcGkucXVvdGVSZW1vdmVTeW1ib2xzKHRoaXMuX3Nlc3Npb25pZCxlKX1xdW90ZUZhc3RTeW1ib2xzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlRmFzdFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlU2V0RmllbGRzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlU2V0RmllbGRzKHRoaXMuX3Nlc3Npb25pZCxlKX1vbk1lc3NhZ2UoZSl7c3dpdGNoKGUubWV0aG9kKXtjYXNlImNvbm5lY3RlZCI6dGhpcy5fc2Vzc2lvbnN0YXJ0ZWR8fCh0aGlzLl9jaGFydEFwaS5xdW90ZUNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMCk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX3Nlc3Npb25zdGFydGVkPSExfXRoaXMuX2dsb2JhbEhhbmRsZXI/LihlKX1xdW90ZUhpYmVybmF0ZUFsbCgpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlSGliZXJuYXRlQWxsKHRoaXMuX3Nlc3Npb25pZCl9fX0sNjYxODU4KGUsdCxfKXtlLmV4cG9ydHM9W3tuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDM1MDE0NikpLHZhbHVlOiIiLHNlYXJjaF90eXBlOiJ1bmRlZmluZWQifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1NTU1MTApKSx2YWx1ZToic3RvY2tzIixzZWFyY2hfdHlwZToic3RvY2tzIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTY0OTE3KSksdmFsdWU6ImZ1bmRzIixzZWFyY2hfdHlwZToiZnVuZHMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1MDUwNzkpKSx2YWx1ZToiZnV0dXJlcyIsc2VhcmNoX3R5cGU6ImZ1dHVyZXMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg5Nzk5NykpLHZhbHVlOiJmb3JleCIsc2VhcmNoX3R5cGU6ImZvcmV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oMzg0NTk3KSksdmFsdWU6ImNmZCIsc2VhcmNoX3R5cGU6ImNmZCJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDY1NTIzNSkpLHZhbHVlOiJiaXRjb2luLGNyeXB0byIsc2VhcmNoX3R5cGU6ImNyeXB0byJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDkyNzQxMSkpLHZhbHVlOiJpbmRleCIsc2VhcmNoX3R5cGU6ImluZGV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNzY1NDQwKSksdmFsdWU6ImJvbmQiLHNlYXJjaF90eXBlOiJib25kIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTQ4MzIyKSksdmFsdWU6ImVjb25vbWljIixzZWFyY2hfdHlwZToiZWNvbm9taWMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg3OTYwMCkpLHZhbHVlOiJvcHRpb25zIixzZWFyY2hfdHlwZToib3B0aW9ucyJ9XX0sNjA2MTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7QXV0aFRva2VuOigpPT5vfSk7dmFyIHM9XygyMjEwNjEpLGk9Xyg5NDgzODApLG49XygzODQwMTcpO2NvbnN0IGE9KDAscy5nZXRMb2dnZXIpKCJDaGFydEFwaS5BdXRoVG9rZW4iLHtjb2xvcjoiIzE3MyJ9KTt2YXIgcjshZnVuY3Rpb24oZSl7ZVtlLkV4cGlyYXRpb25SZXNlcnZlPTNlNV09IkV4cGlyYXRpb25SZXNlcnZlIixlW2UuTWF4UmV0cmllcz0zXT0iTWF4UmV0cmllcyIsZVtlLlJldHJ5RGVsYXlNdWx0aXBsaWVyPTFlM109IlJldHJ5RGVsYXlNdWx0aXBsaWVyIixlW2UuRmFsbGJhY2tFeHBpcmF0aW9uPTE0NGU1XT0iRmFsbGJhY2tFeHBpcmF0aW9uIixlW2UuTWluRXhwaXJhdGlvbj0zZTVdPSJNaW5FeHBpcmF0aW9uIn0ocnx8KHI9e30pKTtjbGFzcyBve2NvbnN0cnVjdG9yKCl7dGhpcy5pbnZhbGlkYXRlZD1uZXcgaS5EZWxlZ2F0ZSx0aGlzLl90aWQ9MCx0aGlzLl9vbkdvaW5nQXV0aFRva2VuUmVxdWVzdD1udWxsLHRoaXMuX29uT25saW5lPSgpPT57YS5sb2dJbmZvKCJPbmxpbmUsIG5ldyB0b2tlbiB3aWxsIGJlIGZldGNoZWQgaWYgbmVlZGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpfSx0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2U9KCk9PnsidmlzaWJsZSI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJihhLmxvZ0luZm8oIlBhZ2UgdmlzaWJsZSwgbmV3IHRva2VuIHNob3VsZCBiZSBmZXRjaGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpKX0sd2luZG93LmxvZ2luU3RhdGVDaGFuZ2V8fCh3aW5kb3cubG9naW5TdGF0ZUNoYW5nZT1uZXcgaS5EZWxlZ2F0ZSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMsKGU9PntlfHwodGhpcy5fc2V0KHdpbmRvdy51c2VyLmF1dGhfdG9rZW4pLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpKX0pKSx0aGlzLl9zZXQod2luZG93LnVzZXIuYXV0aF90b2tlbiksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5fb25PbmxpbmUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMuX29uVmlzaWJpbGl0eUNoYW5nZSl9ZGVzdHJveSgpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLHRoaXMuX29uT25saW5lKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2UpfWdldChlKXtyZXR1cm4gd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ/IWUmJnRoaXMuY3VycmVudFRva2VuSXNWYWxpZCgpPyhhLmxvZ0luZm8oYFVzaW5nIGNhY2hlZCB0b2tlbiAke3RoaXMuX2NhY2hlLnRva2VufWApLFByb21pc2UucmVzb2x2ZSh0aGlzLl9jYWNoZS50b2tlbikpOndpbmRvdy5uYXZpZ2F0b3Iub25MaW5lP3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0fHw9dGhpcy5fZmV0Y2goQm9vbGVhbihlKSwwKS50aGVuKChlPT57CmlmKCF3aW5kb3cuaXNfYXV0aGVudGljYXRlZCl0aHJvdyBuZXcgRXJyb3IoIlVzZXIgbG9nZ2VkIG91dCB3aGlsZSB0aGUgcmVxdWVzdCB3YXMgaW4gZmxpZ2h0Iik7cmV0dXJuIHRoaXMuX3NldChlKSxlfSkpLmNhdGNoKChlPT4oYS5sb2dFcnJvcihgRXJyb3IgZmV0Y2hpbmcgbmV3IHRva2VuOiAke2UmJmUubWVzc2FnZX1gKSwiIikpKS5maW5hbGx5KCgoKT0+e3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0PW51bGx9KSk6KGEubG9nV2FybigiT2ZmbGluZSwgY2Fubm90IGZldGNoIG5ldyB0b2tlbiwgdXNpbmcgY2FjaGVkIHRva2VuIiksUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2NhY2hlLnRva2VuKSk6UHJvbWlzZS5yZXNvbHZlKCIiKX1yZXNldCgpe3RoaXMuX3NldCh2b2lkIDApLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpfWN1cnJlbnRUb2tlbklzVmFsaWQoKXtyZXR1cm4hd2luZG93LmlzX2F1dGhlbnRpY2F0ZWR8fCEhdGhpcy5fY2FjaGUmJihwZXJmb3JtYW5jZS5ub3coKTx0aGlzLl9jYWNoZS5tb25vVmFsaWRUaHJ1JiZEYXRlLm5vdygpPHRoaXMuX2NhY2hlLndhbGxWYWxpZFRocnUpfV9zZXQoZSl7aWYod2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJnZvaWQgMCE9PWUpe2NvbnN0IHQ9ZnVuY3Rpb24oZSl7aWYoIiI9PT1lKXJldHVybiAxNDRlNTt0cnl7Y29uc3QgdD1KU09OLnBhcnNlKGF0b2IoZS5zcGxpdCgiLiIpWzFdLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKSksXz0xZTMqKHQuZXhwLXQuaWF0KTtpZighaXNGaW5pdGUoXykpdGhyb3cgbmV3IEVycm9yKCJpbnZhbGlkIGV4cGlyYXRpb24iKTtyZXR1cm4gTWF0aC5tYXgoXy0zZTUsM2U1KX1jYXRjaCh0KXtyZXR1cm4gYS5sb2dFcnJvcihgJHtlfSBpcyBpbnZhbGlkOiAke3QubWVzc2FnZX1gKSwxNDRlNX19KGUpO3RoaXMuX2NhY2hlPXt0b2tlbjplLG1vbm9WYWxpZFRocnU6cGVyZm9ybWFuY2Uubm93KCkrdCx3YWxsVmFsaWRUaHJ1OkRhdGUubm93KCkrdH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksdGhpcy5fdGlkPXNldFRpbWVvdXQoKCgpPT57d2luZG93Lm5hdmlnYXRvci5vbkxpbmU/dGhpcy5yZXNldCgpOmEubG9nSW5mbygiT2ZmbGluZSwgY2FjaGUgd2lsbCBub3QgYmUgaW52YWxpZGF0ZWQiKX0pLHQpLGEubG9nSW5mbyhgQ2FjaGVkIGZvciAke3R9IG1zOiAke2V9YCl9ZWxzZSB0aGlzLl9jYWNoZT17dG9rZW46IiIsbW9ub1ZhbGlkVGhydTotMS8wLHdhbGxWYWxpZFRocnU6LTEvMH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksYS5sb2dJbmZvKCJDYWNoZSBkcm9wcGVkIil9X2ZldGNoKGUsdCl7cmV0dXJuIGEubG9nTm9ybWFsKGBGZXRjaGluZyBhIG5ldyB0b2tlbiwgZ3JhYlNlc3Npb249JHtlfWApLCgwLG4uZmV0Y2gpKCIvcXVvdGVfdG9rZW4vIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0sYm9keTplPyJncmFiU2Vzc2lvbj10cnVlIjoiIn0pLnRoZW4oKGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYFJlc3BvbnNlIHN0YXR1cyBpcyBub3Qgb2s6ICR7ZS5zdGF0dXN9YCk7cmV0dXJuIGUuanNvbigpLnRoZW4oU3RyaW5nKX0pLChfPT57aWYodD49Myl0aHJvdyBfO3JldHVybiBhLmxvZ1dhcm4oIlJlcXVlc3QgZmFpbGVkLCB3aWxsIHJldHJ5IiksZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0PT5zZXRUaW1lb3V0KHQsMWUzKmUpKSl9KHQpLnRoZW4oKCgpPT50aGlzLl9mZXRjaChlLHQrMSkpKX0pKX1hc3luYyBfdHJ5VG9VcGRhdGVUb2tlbigpe3RoaXMuX2NhY2hlLnRva2VuIT09YXdhaXQgdGhpcy5nZXQoKSYmdGhpcy5pbnZhbGlkYXRlZC5maXJlKCl9fX0sOTMwMDQ1KGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse0pTT05EYXRhSGFuZGxlcjooKT0+YX0pO3ZhciBzPV8oNzgzMzQwKTtmdW5jdGlvbiBpKGUpe3JldHVybntpbmRleDplLmksdmFsdWU6ZS52fX1mdW5jdGlvbiBuKGUpe2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKGUpKXtjb25zdCBfPWVbdF07Xy50JiYoXy50dXJuYXJvdW5kPWVbdF0udCksInMiaW4gZVt0XSYmZVt0XS5zJiYhXy5zZXJpZXMmJihfLnNlcmllcz1lW3RdLnMubWFwKGkpKSwic3QiaW4gZVt0XSYmZVt0XS5zdCYmIV8uc2VyaWVzJiYoXy5zZXJpZXM9ZVt0XS5zdC5tYXAoaSkpfX1jbGFzcyBhe3NldF9icm9rZXIoZSl7cmV0dXJuW2VdfXNldF9kYXRhX3F1YWxpdHkoKXtyZXR1cm5bImxvdyJdfXF1b3RlX2NyZWF0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1xdW90ZV9kZWxldGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cXVvdGVfc2V0X2ZpZWxkcyhlLHQpe3JldHVybltlXS5jb25jYXQodCl9cXVvdGVfYWRkX3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX3JlbW92ZV9zeW1ib2xzKGUsdCl7cmV0dXJuW2VdLmNvbmNhdCh0KX1xdW90ZV9mYXN0X3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX2hpYmVybmF0ZV9hbGwoZSl7cmV0dXJuW2VdfWRlcHRoX2NyZWF0ZV9zZXNzaW9uKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWRlcHRoX2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc3ltYm9sKGUsdCl7cmV0dXJuW2UsdF19ZGVwdGhfY2xlYXJfc3ltYm9sKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc2NhbGUoZSx0KXtyZXR1cm5bZSx0XX1jaGFydF9jcmVhdGVfc2Vzc2lvbihlLHQpe3JldHVybltlLHQ/ImRpc2FibGVfc3RhdGlzdGljcyI6IiJdfWNoYXJ0X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1zZXRfYXV0aF90b2tlbihlKXtyZXR1cm5bZV19c2V0X2xvY2FsZShlLHQpe3JldHVybltlLHRdfXN3aXRjaF90aW1lem9uZShlLHQpe3JldHVybltlLHRdfXJlc29sdmVfc3ltYm9sKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWNyZWF0ZV9zZXJpZXMoZSx0LF8scyxpLG4sYSl7cmV0dXJuW2UsdCxfPV98fCIiLHMsaSxuLGFdfXJlbW92ZV9zZXJpZXMoZSx0KXtyZXR1cm5bZSx0XX1tb2RpZnlfc2VyaWVzKGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpLG5dfQpyZXF1ZXN0X21vcmVfZGF0YShlLHQsXyl7cmV0dXJuW2UsdCxfXX1zZXRfZnV0dXJlX3RpY2ttYXJrc19tb2RlKGUsdCl7cmV0dXJuW2UsdF19cmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhKGUpe3JldHVybltlXX1jcmVhdGVfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybltlLHQsXz1ffHwiIixzLGldLmNvbmNhdChuKX1jcmVhdGVfY2hpbGRfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybiB0aGlzLmNyZWF0ZV9zdHVkeShlLHQsXyxzLGksbil9cmVtb3ZlX3N0dWR5KGUsdCl7cmV0dXJuW2UsdF19bW9kaWZ5X3N0dWR5KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfW5vdGlmeV9zdHVkeShlLHQsXyxzKXtyZXR1cm5bZSx0LF89X3x8IiIsc119Y3JlYXRlX3BvaW50c2V0KGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpXS5jb25jYXQobil9bW9kaWZ5X3BvaW50c2V0KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfXJlbW92ZV9wb2ludHNldChlLHQpe3JldHVybltlLHRdfXJlcXVlc3RfbW9yZV90aWNrbWFya3MoZSx0LF8pe3JldHVybltlLHQsX119Z2V0X2ZpcnN0X2Jhcl90aW1lKGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9jcmVhdGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cmVwbGF5X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1yZXBsYXlfcmVzZXQoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X3N0YXJ0KGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9zdG9wKGUsdCl7cmV0dXJuW2UsdF19cmVwbGF5X3N0ZXAoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2FkZF9zZXJpZXMoZSx0LF8scyl7cmV0dXJuW2UsdCxfLHNdfXJlcGxheV9yZW1vdmVfc2VyaWVzKGUsdCxfLHMpe3JldHVybltlLHQsXyxzXX1yZXBsYXlfc2V0X3Jlc29sdXRpb24oZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2dldF9kZXB0aChlLHQsXyxzKXtyZXR1cm5bZSx0LF8sc119Y29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpe2NvbnN0IHQ9ZS5tYXJrcy5tYXAoKGU9Pih7c3BhbjplWzBdLHRpbWU6ZVsxXSxpbmRleDplWzJdfSkpKSxfPXZvaWQgMD09PWUuaW5kZXhfZGlmZj9bXTplLmluZGV4X2RpZmYubWFwKChlPT4oe29sZDplWzBdLG5ldzplWzFdfSkpKTtyZXR1cm57Li4uZSxtYXJrczp0LGluZGV4X2RpZmY6XyxjbGVhcjowPT09ZS5jaGFuZ2VzLmxlbmd0aCYmMD09PV8ubGVuZ3RoJiYwPT09dC5sZW5ndGh9fWdldERhdGFVcGRhdGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVDaGFuZ2VzZXQoZSl7cmV0dXJuIGUucGFyYW1zWzFdfXByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhlLHQsXyl7Zm9yKGNvbnN0W2ksbl1vZiBPYmplY3QuZW50cmllcyh0KSl7Y29uc3QgdD0icGxvdHMiaW4gbj9uLnBsb3RzOm4uc2VyaWVzLGE9e2N1c3RvbUlkOmksdHVybmFyb3VuZDpuLnR1cm5hcm91bmQscGxvdHM6dH07Im5zImluIG4mJm4ubnMmJihhLm5vbnNlcmllcz1uLm5zKSwibGJzImluIG4mJm4ubGJzJiYoYS5sYXN0QmFyPXtjbG9zZVRpbWU6bi5sYnMuYmFyX2Nsb3NlX3RpbWV9KTtmb3IoY29uc3QgZSBvZiBhLnBsb3RzKWZvcihjb25zdFt0LF9db2YgT2JqZWN0LmVudHJpZXMoZS52YWx1ZSkpXyYmTWF0aC5hYnMoXyk+PTFlMTAwJiYoZS52YWx1ZVsrdF09dm9pZCAwKTtfKGUsaSx7bWV0aG9kOnMuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5EYXRhVXBkYXRlLHBhcmFtczphfSl9fXVucGFjayhlKXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dC5tJiZ0LnAmJih0Lm1ldGhvZD10Lm0sdC5wYXJhbXM9dC5wLHQudGltZT10LnQpO2NvbnN0IF89dC5wYXJhbXNbMV07c3dpdGNoKHQubWV0aG9kKXtjYXNlInFzZCI6dC5tZXRob2Q9InF1b3RlX3N5bWJvbF9kYXRhIixfLnN5bWJvbG5hbWU9Xy5uLF8uc3RhdHVzPV8ucyxfLnZhbHVlcz1fLnYsXy52YWx1ZXMuY2hhbmdlPV8udi5jaCxfLnZhbHVlcy5sYXN0X3ByaWNlPV8udi5scCxfLnZhbHVlcy5jaGFuZ2VfcGVyY2VudD1fLnYuY2hwLGRlbGV0ZSBfLm4sZGVsZXRlIF8ucyxkZWxldGUgXy52LGRlbGV0ZSBfLnZhbHVlcy5jaCxkZWxldGUgXy52YWx1ZXMubHAsZGVsZXRlIF8udmFsdWVzLmNocDticmVhaztjYXNlImR1Ijp0Lm1ldGhvZD0iZGF0YV91cGRhdGUiLG4oXyk7YnJlYWs7Y2FzZSJjbGVhcl9kYXRhIjpmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhfKSlfW2VdLnR1cm5hcm91bmQ9X1tlXS50O2JyZWFrO2Nhc2UidGltZXNjYWxlX3VwZGF0ZSI6bihfKX1yZXR1cm4gdH1wcmVwYXJlRW5jb2RlTWVzc2FnZShlLHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7bTplLHA6dH0pfXJlcXVlc3RfZGF0YV9wcm9ibGVtcygpe3JldHVybltdfX19LDQ2MzQ0NyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtIYW5kbGVySW5mbzooKT0+c30pO2NsYXNzIHN7Y29uc3RydWN0b3IoZSx0LF8pe3RoaXMuaGFuZGxlcj1lLHRoaXMuY3VzdG9tSWQ9dCx0aGlzLnNpbmdsZVNob3Q9X319fSw3ODMzNDAoZSx0LF8peyJ1c2Ugc3RyaWN0Ijt2YXIgcyxpLG47Xy5kKHQse1dlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9PmksV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9Pm4sV2ViY2hhcnRSZXNwb25zZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuUmVxdWVzdERhdGFQcm9ibGVtcz0icmVxdWVzdF9kYXRhX3Byb2JsZW1zIixlLlByb3RvY29sRXJyb3I9InByb3RvY29sX2Vycm9yIixlLlByb3RvY29sU3dpdGNoZWQ9InByb3RvY29sX3N3aXRjaGVkIixlLkNyaXRpY2FsRXJyb3I9ImNyaXRpY2FsX2Vycm9yIn0oc3x8KHM9e30pKSxmdW5jdGlvbihlKXtlLlN0dWRpZXNNZXRhZGF0YT0ic3R1ZGllc19tZXRhZGF0YSIsZS5UaW1lU2NhbGVVcGRhdGU9InRpbWVzY2FsZV91cGRhdGUiLGUuVGlja01hcmtVcGRhdGU9InRpY2ttYXJrX3VwZGF0ZSIsZS5EVT0iZHUiLGUuRGF0YVVwZGF0ZT0iZGF0YV91cGRhdGUiLAplLkluZGV4VXBkYXRlPSJpbmRleF91cGRhdGUiLGUuVGltZVNjYWxlQ29tcGxldGVkPSJ0aW1lc2NhbGVfY29tcGxldGVkIixlLlFTRD0icXNkIixlLlF1b3RlTGlzdEZpZWxkPSJxdW90ZV9saXN0X2ZpZWxkcyIsZS5RdW90ZVN5bWJvbERhdGE9InF1b3RlX3N5bWJvbF9kYXRhIixlLlF1b3RlQ29tcGxldGVkPSJxdW90ZV9jb21wbGV0ZWQiLGUuRGVwdGhTeW1ib2xFcnJvcj0iZGVwdGhfc3ltYm9sX2Vycm9yIixlLkRlcHRoU3ltYm9sU3VjY2Vzcz0iZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiLGUuRGVwdGhEYXRhPSJkZCIsZS5EZXB0aERhdGFVcGRhdGU9ImRwdSIsZS5EZXB0aEJhckxhc3RWYWx1ZT0iZGVwdGhfYmFyX2xhc3RfdmFsdWUiLGUuQ2xlYXJEYXRhPSJjbGVhcl9kYXRhIixlLlNlcmllc1RpbWVGcmFtZT0ic2VyaWVzX3RpbWVmcmFtZSIsZS5TeW1ib2xSZXNvbHZlZD0ic3ltYm9sX3Jlc29sdmVkIixlLlNlcmllc0Vycm9yPSJzZXJpZXNfZXJyb3IiLGUuU2VyaWVzQ29tcGxldGVkPSJzZXJpZXNfY29tcGxldGVkIixlLlN0dWR5TG9hZGluZz0ic3R1ZHlfbG9hZGluZyJ9KGl8fChpPXt9KSksZnVuY3Rpb24oZSl7ZS5SZXBsYXlFcnJvcj0icmVwbGF5X2Vycm9yIixlLlJlcGxheVBvaW50PSJyZXBsYXlfcG9pbnQiLGUuUmVwbGF5T2s9InJlcGxheV9vayIsZS5SZXBsYXlSZXNvbHV0aW9ucz0icmVwbGF5X3Jlc29sdXRpb25zIixlLlJlcGxheURhdGFFbmQ9InJlcGxheV9kYXRhX2VuZCIsZS5SZXBsYXlJbnN0YW5jZUlkPSJyZXBsYXlfaW5zdGFuY2VfaWQiLGUuUmVwbGF5RGVwdGg9InJlcGxheV9kZXB0aCJ9KG58fChuPXt9KSl9LDUyMTMzMyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtnZXREZWZhdWx0UmVzb2x1dGlvbnM6KCk9Pm59KTt2YXIgcz1fKDkzMDIzMSksaT1fKDYxOTk5Mik7ZnVuY3Rpb24gbigpe2NvbnN0IGU9WyIxIiwiMyIsIjUiLCIxNSIsIjMwIiwiNDUiLCI2MCIsIjEyMCIsIjE4MCIsIjI0MCIsIjFEIiwiMVciLCIxTSIsIjNNIiwiNk0iLCIxMk0iLCIxUiIsIjEwUiIsIjEwMFIiLCIxMDAwUiJdO2lmKCEoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSl7bGV0IHQ9WyIxUyIsIjVTIiwiMTBTIiwiMTVTIiwiMzBTIiwiNDVzIl07cmV0dXJuKDAsaS5pc1RpY2tzRW5hYmxlZCkoKSYmKHQ9WyIxVCIsIjEwVCIsIjEwMFQiLCIxMDAwVCJdLmNvbmNhdCh0KSksdC5jb25jYXQoZSl9cmV0dXJuIGV9fSwyMTc1MjcoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7dHlwZXM6KCk9PnN9KTtjb25zdCBzPXtFQ09OT01JQzoiZWNvbm9taWMiLFFVQU5ETDoicXVhbmRsIn19LDEyNzcxMShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY21lIjp7IklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjk5OTk5fX0sImJvdmVzcGEiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fSwicWVjb21xYSI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19LCJzYW50YW5kZXJjb21hciI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19fScpfSw1MDI1ODcoZSl7InVzZSBzdHJpY3QiCjtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJmcmVlIjp7IkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6MX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MX0sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjJ9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjF9LCJISVNUT1JJQ0FMX0JBUlMiOnsibGltaXQiOjV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6MX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo1MCwibGltaXQiOjMsImNvbXBsZXhfbGltaXQiOjAsInByaW1pdGl2ZV9saW1pdCI6M30sIlNDUkVFTkVSX0lOVEVSVkFMUyI6eyJpbnRlcnZhbCI6WyIxRCIsIjFXIiwiMU0iXX0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6MX0sIlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyI6eyJsaW1pdCI6MX0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjJ9LCJJREVBX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIlR3aXR0ZXIiLCJZb3V0dWJlIl19LCJNVUxUSUNPTE9SX0ZMQUdHRURfU1lNQk9MUyI6eyJsaW1pdCI6MX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjozMH0sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6MjB9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjoxfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6MjAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MjB9fSwicHJvIjp7IkRSQVdJTkdTIjp7fSwiQkFDS1RFU1RJTkdfQ0hBUlRfRVhQQU5EIjp7fSwiQkFDS1RFU1RJTkdfRVhURU5ERURfTUVUUklDUyI6e30sIkJBQ0tURVNUSU5HX0VYUE9SVF9YTFNYIjp7fSwiQkFDS1RFU1RJTkdfRVhQT1JUX0NTViI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUEVSU09OQUxfU1VQUE9SVCI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6NX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6Mn0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6MiwicHJpbWl0aXZlX2xpbWl0IjoyfSwiQ1VTVE9NX0lOVEVSVkFMUyI6e30sIk1VTFRJUExFX1dBVENITElTVFMiOnt9LCJJTVBPUlRfV0FUQ0hMSVNUUyI6e30sIkVYUE9SVF9XQVRDSExJU1RTIjp7fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6NX0sIkZVTkRBTUVOVEFMU19GT1JFQ0FTVCI6e30sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6NH0sIlRWX1BST1NUVURJRVMiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtY2hhcnRwYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoxMH0sIlRWX1ZPTFVNRUJZUFJJQ0UiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtdm9sdW1lYnlwcmljZSJdfSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjF9LCJUSUNLX0JZX1RJQ0tfUFVTSF9EQVRBIjp7fSwiU0VSVkVSX1NJREVfQUxFUlRTIjp7Im92ZXJhbGxfbGltaXQiOjIwMDAsImxpbWl0IjoyMCwiY29tcGxleF9saW1pdCI6MjAsInByaW1pdGl2ZV9saW1pdCI6MjB9LCJTQ1JFRU5FUl9BVVRPX1JFRlJFU0giOnt9LCJTQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIIjp7fSwiU0NSRUVORVJfTkVXX0VYUE9SVF9DU1ZfREFUQSI6e30sIlNDUkVFTkVSX05FV19TSE9XX1JFU1RSSUNURURfREFUQSI6e30sIlNIT1dfQk9ORFNfUkVTVFJJQ1RFRF9EQVRBIjp7fSwiUE9SVEZPTElPX0RBVEFfTElNSVQiOnt9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjozfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6NTAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NTB9LCJTQ1JFRU5FUl9JTlRFUlZBTFMiOnsiaW50ZXJ2YWwiOlsiMW0iLCI1bSIsIjE1bSIsIjMwbSIsIjFoIiwiMmgiLCI0aCIsIjFEIiwiMVciLCIxTSJdfSwiTk9fU1BPTlNPUkVEX0FEUyI6eyJkaXNhYmxlX29uX2xpdGVfcGxhbiI6ImV4Y2x1ZGVfbW9iaWxlIn0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6OTk5OTl9LCJTSU1VTFRBTkVPVVNfQ09OTkVDVElPTlMiOnsibGltaXQiOjF9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoxMH0sIklEQ19BVkFJTEFCTEVfREVMQVkiOnt9LCJTVEFUVVMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkJBUl9SRVBMQVlfSU5UUkFEQVkiOnsibGltaXQiOjF9LCJNVUxUSUZMQUdHRURfU1lNQk9MU19MSVNUUyI6e30sIlNIT1dTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJBTEVSVFNfV0VCSE9PSyI6e30sIkFMRVJUU19PTl9FQVJOSU5HUyI6e30sIkFMRVJUU19PTl9GVU5EQU1FTlRBTF9NRVRSSUNTIjp7fSwiREVFUF9GVU5EQU1FTlRBTFNfSElTVE9SWSI6e30sIlBVQkxJU0hfUFJPVEVDVEVEX1NDUklQVFMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIklERUFfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiVHdpdHRlciIsIllvdXR1YmUiXX0sIkVYVEVOREVEX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIkZhY2Vib29rIiwiSW5zdGFncmFtIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJNVUxUSV9NT05JVE9SIjp7fSwiTVVMVElDT0xPUl9GTEFHR0VEX1NZTUJPTFMiOnsibGltaXQiOjd9LCJJTlRSQURBWV9FWENIQU5HRSI6e30sIlZPTFVNRV9QUk9GSUxFIjp7fSwiU1RSRUFNU19BQ0NFU1MiOnsiZm9sbG93ZXJzIjoxMH0sIlNNU18yRkFfVkVSSUZJQ0FUSU9OIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTT0NJQUxfQUNUSVZJVFkiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjoxMDAwfSwiRklFTERTX1BFUk1JU1NJT05TIjp7Iml0ZW1zIjpbInJlZmJvbmRzIl19LCJDVVNUT01fUkFOR0VfQkFSUyI6e30sIkZBU1RFU1RfREFUQV9GTE9XIjp7fSwiU0VTU0lPTl9WT0xVTUVfUFJPRklMRSI6e30sIlNIT1dfRVRGX0hPTERJTkdTX0RBVEEiOnt9fSwicHJvX3JlYWx0aW1lIjp7ImV4dGVuZHMiOiJwcm8iLCJDSEFSVF9TVE9SQUdFIjp7ImxpbWl0IjoxMH0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6NH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6NCwicHJpbWl0aXZlX2xpbWl0Ijo0fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjd9LCJUVl9QUk9TVFVESUVTIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LXByb3N0dWRpZXMiLCJ0di1jaGFydHBhdHRlcm5zIl19LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6OX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6MTAwLCJjb21wbGV4X2xpbWl0IjoxMDAsInByaW1pdGl2ZV9saW1pdCI6MTAwfSwiQUxFUlRTX01VTFRJQ09ORElUSU9OUyI6eyJjb25kaXRpb25fbGltaXQiOjV9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNBTl9FRElUX1BVQkxJQ19DSEFUUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MjB9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkNVU1RPTV9GT1JNVUxBUyI6e30sIklOVFJBREFZX0VYT1RJQ19DSEFSVFMiOnt9LCJLQUdJX1JFTktPIjp7fSwiSU5UUkFEQVlfU1BSRUFEIjp7fSwiQ1VTVE9NX0NIQVRTIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6NH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NzV9fSwicHJvX3ByZW1pdW0iOnsiZXh0ZW5kcyI6InByb19yZWFsdGltZSIsIkJBUl9ERVRBTElaQVRJT04iOnt9LCJTQ1JJUFRfRVhFQ1VUSU9OX09OX0hJU1RPUllfQkFSUyI6e30sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjk5OTk5fSwiTVVMVElQTEVfQ0hBUlRTIjp7ImxpbWl0Ijo4fSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0Ijo2LCJwcmltaXRpdmVfbGltaXQiOjZ9LCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTF9HUkFQSFNfTEFSR0VfVElNRV9SQU5HRSI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo5OTk5OSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1BBVFRFUk5TIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LWNoYXJ0cGF0dGVybnMiLCJ0di1jaGFydF9wYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoyMH0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0IjoyNH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6NDAwLCJjb21wbGV4X2xpbWl0Ijo0MDAsInByaW1pdGl2ZV9saW1pdCI6NDAwLCJ3YXRjaGxpc3RfbGltaXQiOjIsIm92ZXJhbGxfd2F0Y2hsaXN0X2xpbWl0Ijo1fSwiU0lNVUxUQU5FT1VTX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6NTB9LCJJREVBX1NJR05BVFVSRSI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUFJPRklMRV9XRUJTSVRFX0ZJRUxEIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo0fSwiQkFSX1JFUExBWV8xUyI6e30sIkFMRVJUU19OT19FWFBJUkFUSU9OIjp7fSwiUFVCTElTSF9JTlZJVEVfT05MWV9TQ1JJUFRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkRFRVBfSElTVE9SWV9CQUNLVEVTVCI6e30sIkFMRVJUU19PTl9TRUNPTkRTIjp7fSwiUEVSTUFORU5UX1NUUkVBTV9SRUNPUkRTIjp7fSwiRVhURU5ERURfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiRmFjZWJvb2siLCJJbnN0YWdyYW0iLCJXZWJzaXRlIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTRUNPTkRTX0lOVEVSVkFMUyI6e30sIlRQT19QRVJJT0RJQyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di12b2x1bWVieXByaWNlIl19LCJUUE9fQ0hBUlRfU1RZTEUiOnt9LCJWT0xVTUVfQ0FORExFUyI6e30sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6NjB9LCJWT0xVTUVfRk9PVFBSSU5UIjp7fSwiUElORV9TQ1JFRU5FUiI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjV9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjEwMH0sIlNPQ0lBTF9UUlVTVEVEX1VTRVIiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkZPTExPV0VSU19PTkxZX01JTkRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9fSwicHJvX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX3ByZW1pdW0iLCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjozMH0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6Mjl9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjEwfSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0IjoxMiwicHJpbWl0aXZlX2xpbWl0IjoxMn0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MjV9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjYwMCwiY29tcGxleF9saW1pdCI6NjAwLCJwcmltaXRpdmVfbGltaXQiOjYwMCwid2F0Y2hsaXN0X2xpbWl0IjoxMCwib3ZlcmFsbF93YXRjaGxpc3RfbGltaXQiOjIwfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6ODB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo2fSwiQkFSX1JFUExBWV8xUyI6e30sIkJBUl9SRVBMQVlfMVQiOnt9LCJFWFBPUlRfRklOQU5DSUFMU19EQVRBIjp7fSwiVElDS19JTlRFUlZBTFMiOnt9LCJGSVJTVF9QUklPUklUWV9TVVBQT1JUIjp7fSwiQlVZX1BST19EQVRBIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6Nn0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MTI1fX0sInByb19wcmVtaXVtX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX2V4cGVydCIsIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjUwfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0Ijo0OX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MTZ9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjk5OTk5LCJwcmltaXRpdmVfbGltaXQiOjI1fSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0Ijo0MH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo0MDAwLCJsaW1pdCI6MTAwMCwiY29tcGxleF9saW1pdCI6MTAwMCwicHJpbWl0aXZlX2xpbWl0IjoxMDAwLCJ3YXRjaGxpc3RfbGltaXQiOjE1LCJvdmVyYWxsX3dhdGNobGlzdF9saW1pdCI6MzB9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyMDB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0IjoxMH0sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjd9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjE1MH19fScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94232.ab6731b698a8c2854a90.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.503Z","timestamp":1785154590503,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/94232.ab6731b698a8c2854a90.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-740\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f9bdb6709596f441ee2be8156070a662\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1856,"size_decoded":1343,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1856), with no line terminators","md5":"99c169cccd9c810bfd0d3e50e053d9dd","sha1":"f7c962c5226ce8518e23fcd82bbd02e44b3cd8ba","sha256":"ba11ca3b195a5ed5130a9fdfe05087f5b075dbec6ddff0fbc0ee82ef8a378a37","sha512":"02bba56d2baac91f2618fc15e25d5eb7e986a57c956cd280f3ff695e4d215d29c10a2730d07a71b393c7da7e62a644bc9d417c3aef3b60af475b9f6330a25d50","ssdeep":"","tlshash":"0331f104a050d9f5e212d7788e5dbb7820d13b22ca613da7fe53de0ed086be5e122f24","first_seen":"2026-07-16T20:48:56.389736Z","last_seen":"2026-07-27T14:26:47.183218Z","times_seen":445,"resource_available":false,"data":"LmxvYWRlci1NZ2Y4RUZ3S3tib3R0b206MDtmb250LXNpemU6MDtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtZW5kOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7bWFyZ2luOjAgYXV0bztvcGFjaXR5OjE7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXB9LmxvYWRlci1NZ2Y4RUZ3Sy5zdGF0aWMtTWdmOEVGd0t7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpzdGF0aWN9LmxvYWRlci1NZ2Y4RUZ3SzphZnRlcntjb250ZW50OiIgIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3S3tib3JkZXItcmFkaXVzOjEwMCU7ZGlzcGxheTppbmxpbmUtYmxvY2s7b3BhY2l0eToxO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTstLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDpjdXJyZW50Q29sb3I7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS11aS1saWItbG9hZGVyLWNvbG9yLHZhcigtLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdCkpfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLOmZpcnN0LWNoaWxke2FuaW1hdGlvbjp0di1idXR0b24tbG9hZGVyLU1nZjhFRndLIDFzIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouMXN9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3SzpudGgtY2hpbGQoMil7YW5pbWF0aW9uOnR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0sgMXMgaW5maW5pdGU7YW5pbWF0aW9uLWRlbGF5Oi4zc30ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLOm50aC1jaGlsZCgzKXthbmltYXRpb246dHYtYnV0dG9uLWxvYWRlci1NZ2Y4RUZ3SyAxcyBlYXNlIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouNDVzfX0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLC5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0subWVkaXVtLU1nZjhFRndLe2hlaWdodDo2cHg7d2lkdGg6NnB4fS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0subWVkaXVtLU1nZjhFRndLOm5vdCg6bGFzdC1jaGlsZCksLmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3Szpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1pbmxpbmUtZW5kOjRweH0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLnNtYWxsLU1nZjhFRndLe2hlaWdodDo0cHg7d2lkdGg6NHB4fS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0suc21hbGwtTWdmOEVGd0s6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4taW5saW5lLWVuZDozcHh9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3Sy5ibGFjay1NZ2Y4RUZ3S3stLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDp2YXIoLS1jb2xvci1kZWZhdWx0LWdyYXkpfS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0sud2hpdGUtTWdmOEVGd0t7LS11aS1saWItbG9hZGVyLWNvbG9yLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpfS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0suZ3JheS1NZ2Y4RUZ3S3stLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKX0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLnByaW1hcnktTWdmOEVGd0t7LS11aS1saWItbG9hZGVyLWNvbG9yLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX1Aa2V5ZnJhbWVzIHR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0t7MCUsdG97b3BhY2l0eToxfTYwJXtvcGFjaXR5Oi40fTMwJXtvcGFjaXR5Oi4yfX0="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/17087.a5eaeb30f7d269f97b41.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.506Z","timestamp":1785154590506,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/17087.a5eaeb30f7d269f97b41.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-42b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 866837f519933e74242445b1031cf978\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1067,"size_decoded":1275,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1067), with no line terminators","md5":"aea2379787588b2971ae93e1d08d1a76","sha1":"53a871c666693bc64ceee27711d27c2da35b8e8c","sha256":"3f0a48597dbd15d013833ffec5807ed9172b4072ca308dd16df1be793bcb6f34","sha512":"596f5b4924bfab46ac651687876c9a32ee13e028d0057c8165ce38a28d0049e29f55a5ea96f247401e43f0a6f2a6c054ea0b6e8eadca7d7ba33b29c3145d0cf1","ssdeep":"","tlshash":"6a111f148180f63dbd23f22087a0578a3279745199976e9eed0de17141cfbf52ba5cdc","first_seen":"2026-07-16T20:48:56.383088Z","last_seen":"2026-07-27T14:22:59.692142Z","times_seen":417,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtbEhsRzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLWxIbEc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCl9LndyYXAtaWlpMTE4b057Ym90dG9tOjA7ZGlzcGxheTpmbGV4O2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt6LWluZGV4OjB9LndyYXAtaWlpMTE4b04ucG9zaXRpb25Cb3R0b20taWlpMTE4b057YWxpZ24taXRlbXM6ZmxleC1lbmR9LmJhY2tkcm9wLWlpaTExOG9Oe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtbEhsRyk7Ym90dG9tOjA7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6Ljc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LmRyYXdlci1paWkxMThvTntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjZweCAwOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpO3otaW5kZXg6MX0uZHJhd2VyLWlpaTExOG9OLnBvc2l0aW9uTGVmdC1paWkxMThvTnttYXJnaW4taW5saW5lLWVuZDo0MHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTttaW4td2lkdGg6MjYwcHh9LmRyYXdlci1paWkxMThvTi5wb3NpdGlvbkJvdHRvbS1paWkxMThvTntib3JkZXItc3RhcnQtZW5kLXJhZGl1czo2cHg7Ym9yZGVyLXN0YXJ0LXN0YXJ0LXJhZGl1czo2cHg7ZmxleC1iYXNpczoxMDAlO21hcmdpbi10b3A6dmFyKC0tZHJhd2VyLW1hcmdpbi10b3AtZGlzdGFuY2UsMTAwcHgpO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gdmFyKC0tZHJhd2VyLW1pbi10b3AtZGlzdGFuY2UsIDEwMHB4KSk7b3ZlcmZsb3c6YXV0b30uZHJhd2VyLWlpaTExOG9OOmZvY3Vze291dGxpbmU6bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/client1.jpg","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.357Z","timestamp":1785154589357,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/client1.jpg HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 4069\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":4069,"size_decoded":4335,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 80x80, components 3","md5":"fdf1bbf1ff9a6e7fa57ac8aa06f5c32a","sha1":"3a0e5425450fcb37a0f7b04de0bc04b311efac0e","sha256":"0b2d6630bd5a3b297e7ab76e3a5d1a3fc10b56cdb3875e4df8a12029f078e6fb","sha512":"4f754e7c84f710abda81ecd77b19149a9f618b8f8bd836418840eeac0960a0cdb7b62260ce3257172bce0d964e57e24245cc1d00fb21c3560e9a99229674b6c1","ssdeep":"","tlshash":"25816ca1ab76cc83ccfc21b0d659c27b1e1b68d51c631b9bc5d34e8039ec546acf10a0","first_seen":"2025-07-30T23:06:04.167808Z","last_seen":"2026-07-27T12:17:29.16399Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":93,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":35,"receive":58,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94708.73d2bca37207c67a41f4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.286Z","timestamp":1785154590286,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/94708.73d2bca37207c67a41f4.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-8b98\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 41e9be1ab8bbb6a3aaaffb2bb21037e4\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":35736,"size_decoded":12654,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3065)","md5":"eb8c592becd98b3361efe0b94719d5c6","sha1":"a0d1ee8521cfba7aa407ac50937aedd5f39bf878","sha256":"647fb8708ead9f5ba58a75d3b5e6d45f3df1f26a67f068d19a46752de40e327d","sha512":"27e850e1b55df1bfb523a33007db88c5bf3fca11c34b9f448fad508275031d48062410c7e49cd891d38f4058b2dad657828a8ce9f5a047b24a8804c477a90feb","ssdeep":"768:Qy2uEBDBP0oAifg+OMQjn3FMjhYVwPn9/meP+Tjwqcq8xGQKpb5dg+xU7wbwpEvK:k950TT3WOOP9AsqcK555x/dMDjcXRdH6","tlshash":"f4f2f917f1a7b46693db809ae4724213a33c18013d05486dbabc9ddd2a3f942b663f7d","first_seen":"2026-07-23T13:38:20.417189Z","last_seen":"2026-07-27T14:18:36.345123Z","times_seen":1474,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbOTQ3MDhdLHs5MzAyMzEoZSx0LHMpe3MuZCh0LHtpc0ZlYXR1cmVzZXRFbmFibGVkOigpPT5hfSk7dmFyIG49cyg2MzUxOCk7Y29uc3QgaT1uZXcgTWFwLG89bmV3IE1hcCxyPW5ldyBTZXQ7ZnVuY3Rpb24gYShlKXtjb25zdCB0PWkuZ2V0KGUpO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQ7Y29uc3Qgcz1vLmdldChlKTtyZXR1cm4hIXMmJnMuc29tZShhKX1mdW5jdGlvbiBkKGUsdCl7aS5zZXQoU3RyaW5nKGUpLEJvb2xlYW4odCkpfSFmdW5jdGlvbigpe2Zvcihjb25zdFtlLHRdb2YgT2JqZWN0LmVudHJpZXMobikpaWYoci5hZGQoZSksInN1YnNldHMiaW4gdClmb3IoY29uc3QgcyBvZiB0LnN1YnNldHMpe3IuYWRkKHMpO2xldCB0PW8uZ2V0KHMpO3ZvaWQgMD09PXQmJih0PVtdLG8uc2V0KHMsdCkpLHQucHVzaChlKX19KCksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzJiZBcnJheS5pc0FycmF5KF9faW5pdGlhbERpc2FibGVkRmVhdHVyZXNldHMpJiZfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMSl9KSksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMmJkFycmF5LmlzQXJyYXkoX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzKSYmX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMCl9KSl9LDg1NjE5NihlLHQscyl7cy5kKHQse3Nob3VsZEFmZmVjdFVzZXI6KCk9PmR9KTt2YXIgbj1zKDEwMDU5NSksaT1zLm4obiksbz1zKDkzMjM2NSk7Y29uc3Qgcj0iZmVhdHVyZXRvZ2dsZV9zZWVkIjtmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWkoKShlK2Z1bmN0aW9uKCl7aWYod2luZG93LnVzZXImJndpbmRvdy51c2VyLmlkKXJldHVybiB3aW5kb3cudXNlci5pZDtjb25zdCBlPW8uVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShyKTtpZihudWxsIT09ZSlyZXR1cm4gZTtjb25zdCB0PU1hdGguZmxvb3IoMWU2Kk1hdGgucmFuZG9tKCkpO3JldHVybiBvLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0ocixgJHt0fWApLHR9KCkpLHM9bmV3IERhdGFWaWV3KHQpO3JldHVybiBzLmdldFVpbnQzMigwLCEwKS80Mjk0OTY3Mjk2fWNhdGNoKGUpe3JldHVybi41fX1mdW5jdGlvbiBkKGUsdCl7cmV0dXJuIGEoZSk8PXR9fSwxNTk1MTMoZSx0LHMpe3MuZCh0LHtnZXRRdW90ZVNlc3Npb25JbnN0YW5jZTooKT0+YX0pO3ZhciBuPXMoOTI3NTkzKSxpPXMoNzU1NjI3KSxvPXMoMTUwMTUwKTtjb25zdCByPXt9O2Z1bmN0aW9uIGEoZT0iZnVsbCIpe3JldHVybiByW2VdfHxmdW5jdGlvbihlPSJmdWxsIix0KXtyW2VdPXR9KGUsbmV3IG4uUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIoe25hbWU6ZSxhcGk6d2luZG93LkNoYXJ0QXBpSW5zdGFuY2UsZmllbGRzOmRbZV0sZXh0ZW5zaW9uczp7Zm9ybWF0dGVyOmU9Pm5ldyB1KGUpLmZvcm1hdHRlcixzbmFwc2hvdDplPT5uZXcgYyhlKS5zbmFwc2hvdH19KSkscltlXX1jb25zdCBkPXtzaW1wbGU6WyJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJjaCIsImNocCIsImN1cnJlbmN5LWxvZ29pZCIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImJhc2VfY3VycmVuY3lfaWQiLCJjdXJyZW50X3Nlc3Npb24iLCJkZXNjcmlwdGlvbiIsImV4Y2hhbmdlIiwiZm9ybWF0IiwiZnJhY3Rpb25hbCIsImlzX3RyYWRhYmxlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxpc3RlZF9leGNoYW5nZSIsImxvZ29pZCIsImxwIiwibHBfdGltZSIsIm1pbm1vdiIsIm1pbm1vdmUyIiwib3JpZ2luYWxfbmFtZSIsInByaWNlc2NhbGUiLCJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIiwidXBkYXRlX21vZGUiLCJ2b2x1bWUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJ2YWx1ZV91bml0X2lkIiwidW5pdF9pZCIsIm1lYXN1cmUiXX07ZC5zaW1wbGVEZXRhaWxlZD1bLi4uZC5zaW1wbGUsImFzayIsImJpZCIsImZ1bmRhbWVudGFscyIsImhpZ2hfcHJpY2UiLCJpc190cmFkYWJsZSIsImxvd19wcmljZSIsIm9wZW5fcHJpY2UiLCJwcmV2X2Nsb3NlX3ByaWNlIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwic3RhdHVzIiwiYmFzaWNfZXBzX25ldF9pbmNvbWUiLCJiZXRhXzFfeWVhciIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJpbmR1c3RyeSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJzZWN0b3IiLCJ2b2x1bWUiLCJkaXZpZGVuZHNfeWllbGQiLCJ0aW1lem9uZSJdLGQuZnVsbD1bXSxkLndhdGNobGlzdD1bLi4uZC5zaW1wbGUsInJjaHAiLCJuY2hwIiwicnRjIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJkaXZpZGVuZHNfYXZhaWxhYmlsaXR5IiwiZmluYW5jaWFsc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiXSwKZC5wb3J0Zm9saW89WyJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJleGNoYW5nZSIsImxpc3RlZF9leGNoYW5nZSIsImRlc2NyaXB0aW9uIiwibG9jYWxfZGVzY3JpcHRpb24iLCJsYW5ndWFnZSIsInNlY3RvciIsInR5cGUiLCJ0eXBlc3BlY3MiLCJpbmR1c3RyeSIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImNoIiwiY2hwIiwibG9nbyIsImxvZ29pZCIsImN1cnJlbmN5LWxvZ29pZCIsImJhc2UtY3VycmVuY3ktbG9nb2lkIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImxwIiwiZnJhY3Rpb25hbCIsIm1pbm1vdiIsIm1pbm1vdmUyIiwicHJpY2VzY2FsZSIsInZvbHVtZSIsImF2ZXJhZ2Vfdm9sdW1lIiwibWFya2V0X2NhcF9jYWxjIiwibWFya2V0X2NhcF9iYXNpYyIsInRvdGFsX3JldmVudWUiLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwicHJpY2VfZWFybmluZ3NfdHRtIiwiYmV0YV8xX3llYXIiLCJkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnkiLCJkaXZpZGVuZHNfeWllbGQiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwicmF0ZXNfbWMiLCJyYXRlc19meSIsInJhdGVzX3R0bSIsImZvcm1hdCIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQubm90ZXM9WyJzaG9ydF9uYW1lIiwicHJvX25hbWUiLCJsb2dvaWQiLCJjdXJyZW5jeS1sb2dvaWQiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJzeW1ib2wtcHJpbWFyeW5hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIl0sZC5lc3RpbWF0ZXM9WyJmdW5kYW1lbnRhbF9kYXRhIiwidHlwZSIsInR5cGVzcGVjcyIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X3N5bWJvbF9jdXJyZW5jeV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9hbGlnbmVkX2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfY2FsZW5kYXJfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIl0sZC5lY29ub21pYz1bInJlZmVyZW5jZS1sYXN0LXBlcmlvZCIsImxwIiwiY3VycmVuY3lfY29kZSIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQub3B0aW9ucz1bImFzayIsImJpZCIsImxwIiwidm9sdW1lIiwiY2giLCJjaHAiXTtjbGFzcyB1e2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlPXt9LHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzPXt9LHRoaXMuZm9ybWF0dGVyPShlLHQpPT57aWYodGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnNbZV0pcmV0dXJuIHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdO2Z1bmN0aW9uIHMoZSl7Y29uc3Qgcz10JiYhZS5mcmFjdGlvbmFsPzE6ZS5taW5tb3Y7cmV0dXJuIG5ldyBpLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOmUucHJpY2VzY2FsZSxtaW5Nb3ZlOnMsZnJhY3Rpb25hbDplLmZyYWN0aW9uYWwsbWluTW92ZTI6ZS5taW5tb3ZlMn0pfWNvbnN0IG49bmV3IFByb21pc2UoKCh0LG4pPT57aWYodGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV0pdChzKHRoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlW2VdKSk7ZWxzZXtjb25zdCBpPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUoaSxbZV0sKG89PnsiZXJyb3IiPT09by5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1udWxsLG4oIlF1b3RlcyBzbmFwc2hvdCBpcyBub3QgcmVjZWl2ZWQiKSksZnVuY3Rpb24oZSl7cmV0dXJuIGUmJm51bGwhPWUucHJpY2VzY2FsZSYmbnVsbCE9ZS5taW5tb3Z9KG8udmFsdWVzKSYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsdGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV09by52YWx1ZXMsdChzKG8udmFsdWVzKSksdGhpcy5fbXVsdGlwbGV4ZXIudW5zdWJzY3JpYmUoaSxlKSl9KSl9fSkpO3JldHVybiB0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1uLG59LHRoaXMuX211bHRpcGxleGVyPWV9fWNsYXNzIGN7Y29uc3RydWN0b3IoZSl7dGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZT17fSx0aGlzLl93YWl0aW5nRm9yU25hcHNob3Q9e30sdGhpcy5zbmFwc2hvdD1lPT57aWYodGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdKXJldHVybiB0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV07Y29uc3QgdD1uZXcgUHJvbWlzZSgoKHQscyk9PntpZih0aGlzLl9zbmFwc2hvdFZhbHVlc0NhY2hlW2VdKXQodGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZVtlXSk7ZWxzZXtjb25zdCBuPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUobixbZV0sKGk9PnsiZXJyb3IiPT09aS5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV09bnVsbCxzKCJRdW90ZXMgc25hcHNob3QgaXMgbm90IHJlY2VpdmVkIikpO2NvbnN0IG89aS52YWx1ZXM7byYmby5taW5tb3YmJm8ucHJpY2VzY2FsZSYmby5kZXNjcmlwdGlvbiYmKHRoaXMuX3dhaXRpbmdGb3JTbmFwc2hvdFtlXT1udWxsLHRoaXMuX3NuYXBzaG90VmFsdWVzQ2FjaGVbZV09byx0KG8pLHRoaXMuX211bHRpcGxleGVyLnVuc3Vic2NyaWJlKG4sZSkpfSkpfX0pKTtyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdPXQsdH0sdGhpcy5fbXVsdGlwbGV4ZXI9ZX19InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2U9YSl9LDUzNTMwKGUsdCxzKXtzLmQodCx7Z2V0TWluVGlja0RhdGE6KCk9PmQsbWFrZVZhcmlhYmxlTWluVGlja0RhdGE6KCk9PmN9KTt2YXIgbj1zKDcxMjc0NSksaT1zKDYwMTg0MSksbz1zKDUzNDQ0MCkscj1zKDY0MDc0NCk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZT8oMCxuLkJpZykoZS5taW5Nb3ZlKS5kaXYoZS5wcmljZVNjYWxlKS50b051bWJlcigpOk5hTn1mdW5jdGlvbiBkKGUpe2NvbnN0e21pblRpY2s6dCxwcmljZTpzLHZhcmlhYmxlTWluVGlja0RhdGE6bixzaG91bGRDaGVja0ZvckVxdWFsaXR5Om99PWUscj0oMCwKaS5pc051bWJlcikodCk/dSh0KTp0O3JldHVybiB2b2lkIDA9PT1uP3I6ZnVuY3Rpb24oZSx0LHM9ITEpe2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtpZihlPHRbbl0ucHJpY2UpcmV0dXJuIHRbbl0ubWluVGljaztpZihzJiZlPT09dFtuXS5wcmljZSlyZXR1cm4gdFtuXS5taW5UaWNrfXJldHVybiB0W3QubGVuZ3RoLTFdLm1pblRpY2t9KHMsbixvKX1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9KDAsby5udW1PZkRlY2ltYWxQbGFjZXMpKGUpLHM9TWF0aC5wb3coMTAsdCk7cmV0dXJue3ByaWNlU2NhbGU6cyxtaW5Nb3ZlOigwLG4uQmlnKShlKS5tdWwocykudG9OdW1iZXIoKX19ZnVuY3Rpb24gYyhlLHQpe2NvbnN0IHM9W3ttaW5UaWNrOigwLGkuaXNOdW1iZXIpKGUpP3UoZSk6ZSxwcmljZToxLzAsbWF4SW5kZXg6MS8wfV07dHJ5e2NvbnN0IGU9dC5zcGxpdCgiICIpLm1hcCgoKGUsdCk9PigwLHIuaXNFdmVuKSh0KT9mdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNGaW5pdGUodCkpcmV0dXJuIHUodCk7e2NvbnN0IHQ9ZS5zcGxpdCgiLyIpO2lmKHQubGVuZ3RoPDJ8fHQubGVuZ3RoPjMpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCBzPU51bWJlcih0WzFdKSxuPU51bWJlcih0WzBdKTtpZighTnVtYmVyLmlzRmluaXRlKHMpfHwhTnVtYmVyLmlzRmluaXRlKG4pKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3QgaT0zPT09dC5sZW5ndGg/TnVtYmVyKHRbMl0pOnZvaWQgMDtpZih2b2lkIDAhPT1pJiYhTnVtYmVyLmlzRmluaXRlKGkpKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3Qgbz17cHJpY2VTY2FsZTpzLG1pbk1vdmU6bn07cmV0dXJuIHZvaWQgMCE9PWkmJihvLm1pbk1vdmUyPWkpLG99fShlKTpmdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNOYU4odCkpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIHByaWNlIGxpbWl0OiAke2V9YCk7cmV0dXJuIHR9KGUpKSk7aWYoKDAsci5pc0V2ZW4pKGUubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIlRoZW1lIG11c3Qgbm90IGJlIGV2ZW50IG51bWJlciBvZiBlbGVtZW50cyIpO2NvbnN0IHM9W107Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kz0yKXtjb25zdCBpPWVbdCsxXT8/MS8wLG89c1tzLmxlbmd0aC0xXT8ucHJpY2U/PzAscj1zW3MubGVuZ3RoLTFdPy5tYXhJbmRleD8/MCxkPWk9PT0xLzA/MS8wOm5ldyBuLkJpZyhpKS5taW51cyhvKS5kaXYoYShlW3RdKSkucGx1cyhyKS50b051bWJlcigpO3MucHVzaCh7bWluVGljazplW3RdLHByaWNlOmksbWF4SW5kZXg6ZH0pfXJldHVybiBzfWNhdGNoe3JldHVybiBzfX19LDgyMjQzMShlLHQscyl7cy5kKHQse251bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvOigpPT5pfSk7dmFyIG49cyg2MDE4NDEpO2Z1bmN0aW9uIGkoZSx0KXtpZighKDAsbi5pc051bWJlcikoZSkpcmV0dXJuIm4vYSI7aWYoISgwLG4uaXNJbnRlZ2VyKSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKHQ8MHx8dD4yNCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKDA9PT10KXJldHVybiBlLnRvU3RyaW5nKCk7cmV0dXJuKCIwMDAwMDAwMDAwMDAwMDAwMDAwMCIrZS50b1N0cmluZygpKS5zbGljZSgtdCl9fSwzNjc5NDYoZSx0LHMpe2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtpZih2b2lkIDA9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5tYXRjaCgvKGRlbGF5ZWRfc3RyZWFtaW5nKV8oXGQrKS8pO3JldHVybiBudWxsPT09dD9udWxsOnttb2RlOnRbMV0saW50ZXJ2YWw6cGFyc2VJbnQodFsyXSl9fShlLnVwZGF0ZV9tb2RlKTtyZXR1cm4gbnVsbD09PXR8fChlLnVwZGF0ZV9tb2RlPXQubW9kZSxlLnVwZGF0ZV9tb2RlX3NlY29uZHM9dC5pbnRlcnZhbCksZX1zLmQodCx7bm9ybWFsaXplVXBkYXRlTW9kZTooKT0+bn0pfSw3MjI1NzEoZSx0LHMpe3ZhciBuPXMoMjAzNjgxKSxpPXMoNTQ3ODUxKSxvPXMoMjA2NjczKSxyPXMoMzA0MjIxKSxhPXMoODE3MzUwKSxkPXMoMTM4NjM4KSx1PXMoNjAxODQxKSxjPXMoMjMyMzY0KSxsPXMoMjIxMDYxKSxoPXMoNzgwOTc1KSxfPXMoNzczMDg4KSxtPXMoOTMwMjMxKSxmPXMoNjA2MTApLHA9cyg0MDM2KSxnPXMoNTIxMzMzKSx5PXMoMjE3NTI3KSxiPXMoNzQ2OTQ5KSx3PXMoNjYxODU4KSxDPXMoMzg0MDE3KSxrPXMoODg5NTE1KSx2PXMoNzY4NzYwKSxTPXMoNTg5NzQ5KSxNPXMoMTE2MzEwKSxSPXMoNDc5MzQpLFQ9cyg1NjkzOTgpLHE9cyg4NjIyMTMpLE49cygxMTczMTMpLEQ9cygxNTY4NTApLEk9cyg2NDA3NDQpLFA9cyg3ODMzNDApLEU9cyg5MzAwNDUpLEY9cyg0NjM0NDcpO2NvbnN0IHg9KDAsbC5nZXRMb2dnZXIpKCJDaGFydC5TdHVkaWVzLlN0dWR5TWV0YUluZm9SZXBvc2l0b3J5Iix7Y29sb3I6IiM2MDYifSksSD0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLlRyYWZmaWNNZXRlciIse21heENvdW50OjIwLGNvbG9yOiIjMjY4In0pLEE9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5Db3JlIix7Y29sb3I6IiM3MDYifSksQj0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse2NvbG9yOiIjNzA2In0pLEw9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5DaGFydFNlc3Npb24iLHtoaWdoUmF0ZTohMCxtYXhDb3VudDoxMDAsY29sb3I6IiM3MDYifSksTz0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjAsY29sb3I6IiM3MDYifSksUT0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjUwLGNvbG9yOiIjNzA2In0pLFY9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5RdW90ZVNlc3Npb24iLHttYXhDb3VudDo1MCxjb2xvcjoiIzY2MCJ9KSwkPSgwLGwuZ2V0TG9nZ2VyKSgiQ2hhcnRBcGkuUXVvdGVTZXNzaW9uIix7aGlnaFJhdGU6ITAsbWF4Q291bnQ6MTAsY29sb3I6IiM2NjAifSksVT0hKDAsCk4uaXNPbk1vYmlsZUFwcFBhZ2UpKCJhbnkiKSxXPSgwLFQuaXNGZWF0dXJlRW5hYmxlZCkoImJyb2tlcl9pZF9zZXNzaW9uIiksaj0oMCxULmlzRmVhdHVyZUVuYWJsZWQpKCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCIpO2xldCB6PSExLEo9ITEsRz0hMTtjb25zdCBZPVsiIiwiS0IiLCJNQiIsIkdCIiwiVEIiXTtmdW5jdGlvbiBLKGUpe2lmKDA9PT1lKXJldHVybiIwIjtjb25zdCB0PSgwLEkudG9JbnQpKE1hdGguZmxvb3IoTWF0aC5sb2coZSkvTWF0aC5sb2coMTAyNCkpKTtyZXR1cm4oZS9NYXRoLnBvdygxMDI0LHQpKS50b0ZpeGVkKDIpK1lbdF19ZnVuY3Rpb24gWihlLHQpe3JldHVybmAke2V9X18ke3R9YH1mdW5jdGlvbiBYKGUsdCxzKXtjb25zdCBuPXRbc10/PzA7dFtzXT1uK2V9Y29uc3QgZWU9WC5iaW5kKG51bGwsMSksdGU9WC5iaW5kKG51bGwsLTEpLHNlPSgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpPyJzdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6InN0dWRpZXNfbWV0YWRhdGEiLG5lPSIvY2hhcnQtYXBpL3Byb19oYXNoIixpZT0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKT8iL2NoYXJ0LWFwaS9zdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6Ii9jaGFydC1hcGkvc3R1ZGllc19tZXRhZGF0YSI7bGV0IG9lPW51bGw7ZnVuY3Rpb24gcmUoKXtpZihudWxsPT09b2Upe2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbGlua1tyZWx+PSJjb252ZXJzaW9ucy1jb25maWciXScpLHQ9bmV3IFVSTCgoMCxkLmVuc3VyZU5vdE51bGwpKGUpLmhyZWYpO29lPSgwLEMuZmV0Y2gpKHQudG9TdHJpbmcoKSx7bWV0aG9kOiJHRVQifSkudGhlbigoZT0+e2lmKCFlLm9rKXRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgY29udmVyc2lvbnMgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO3JldHVybiBlLmpzb24oKX0pKS50aGVuKChlPT57Y29uc3QgdD0oMCxxLmdldExvZ29VcmxSZXNvbHZlcikoKTtyZXR1cm4gZS5jdXJyZW5jaWVzLmZvckVhY2goKGU9Pnt2b2lkIDAhPT1lLmxvZ29pZCYmKGUubG9nb1VybD10LmdldFN5bWJvbExvZ29VcmwoZS5sb2dvaWQscS5Mb2dvU2l6ZS5NZWRpdW0pKX0pKSxlfSkpfXJldHVybiBvZX1sZXQgYWU9bnVsbDtjbGFzcyBkZXtjb25zdHJ1Y3RvcihlKXt0aGlzLnNlc3Npb25pZD1udWxsLHRoaXMuX2JhbkluZm89bmV3IGMuV2F0Y2hlZFZhbHVlKG51bGwpLHRoaXMuX2lzQXV0aFRva2VuTG9hZGVkPSExLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQ9RGF0ZS5ub3coKS1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9pbml0Q2FjaGVQcm9taXNlPSgwLE0uY3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlKSgiVFZDaGFydEFwaSIpLHRoaXMuX3RyYWZmaWNTdGF0cz17dG90YWw6MCxzaW5jZUNvbm5lY3Q6MCxsYXN0Q2h1bms6MH0sdGhpcy5fbG93UXVhbGl0eUVuYWJsZWQ9ITEsdGhpcy5fYnJva2VySWQ9IiIsdGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQ9MCx0aGlzLl9tb2RpZnlTdHVkeU1hcD1uZXcgTWFwLHRoaXMuX2Rpc2Nvbm5lY3RDb3VudD0wLHRoaXMuX2lzQ29ubmVjdGVkPSExLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGwsdGhpcy5fZGF0YUhhbmRsZU1vZHVsZT1uZXcgRS5KU09ORGF0YUhhbmRsZXIsdGhpcy5fc2Vzc2lvbnM9e30sdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnM9e30sdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W10sdGhpcy5fbG9hZE5ld0JhcnM9ITEsdGhpcy5fbWV0YWRhdGFSZXF1ZXN0TmV4dE51bWJlcj0xLHRoaXMuX2Z1bmRhbWVudGFsQ291bnRlcj17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcz1uZXcgTWFwLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkPW5ldyBjLldhdGNoZWRWYWx1ZSghMSksdGhpcy5fc2VudE1ldGhvZHNDb3VudGVycz1uZXcgTWFwLHRoaXMuX3JlY2VpdmVkTWV0aG9kc0NvdW50ZXJzPW5ldyBNYXAsdGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9bnVsbCx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vblJlY29ubmVjdCh0aGlzLl9iaW5kU29ja2V0RXZlbnRzLmJpbmQodGhpcykpLHRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uc2V0TG9nZ2VyKEEsbC5nZXRMb2dIaXN0b3J5KSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNldFRlbGVtZXRyeShELnRlbGVtZXRyeSksdGhpcy5fYmluZFNvY2tldEV2ZW50cygpLHRoaXMuX2lzTm9uQ291bnRlZFN0dWR5PSgpPT4hMCx3aW5kb3c/LlRyYWRpbmdWaWV3Py5vbkNoYXJ0UGFnZXx8dGhpcy5fZW5hYmxlTG93UXVhbGl0eU1vZGUoKSxzZXRJbnRlcnZhbCgoKCk9PntILmxvZ05vcm1hbCgiTGFzdCAzMCBzZWNvbmRzOiIrSyh0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKSsiIFNpbmNlIGxhc3QgY29ubmVjdDoiK0sodGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCkrIiBUb3RhbCB0cmFmZmljOiIrSyh0aGlzLl90cmFmZmljU3RhdHMudG90YWwpKSx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rPTB9KSwzZTQpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnN1YnNjcmliZSgoZT0+e2UmJnRoaXMuZGlzY29ubmVjdCgpfSkpfWNvbm5lY3QoZSl7dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc0Nvbm5lY3RlZCgpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGluZygpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5kaXNjb25uZWN0KCl9c2VudE1ldGhvZHNDb3VudGVycygpe3JldHVybiB0aGlzLl9zZW50TWV0aG9kc0NvdW50ZXJzfXJlY2VpdmVkTWV0aG9kc0NvdW50ZXJzKCl7CnJldHVybiB0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVyc31kZWZhdWx0UmVzb2x1dGlvbnMoKXtyZXR1cm4oMCxnLmdldERlZmF1bHRSZXNvbHV0aW9ucykoKX1hdmFpbGFibGVDdXJyZW5jaWVzKCl7cmV0dXJuIHJlKCkudGhlbigoZT0+ZS5jdXJyZW5jaWVzKSl9YXZhaWxhYmxlVW5pdHMoKXtyZXR1cm4gcmUoKS50aGVuKChlPT57Y29uc3QgdD17fTtmb3IoY29uc3QgcyBvZiBlLnVuaXRzKXRbcy50eXBlXXx8KHRbcy50eXBlXT1bXSksdFtzLnR5cGVdLnB1c2gocyk7cmV0dXJuIHR9KSl9YXN5bmMgYXZhaWxhYmxlTWV0cmljcygpe3JldHVybiBmdW5jdGlvbigpe2lmKG51bGw9PT1hZSl7Y29uc3QgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW3JlbH49Im1ldHJpY3MtY29uZmlnIl0nKSx0PW5ldyBVUkwoKDAsZC5lbnN1cmVOb3ROdWxsKShlKS5ocmVmKTthZT0oMCxDLmZldGNoKSh0LnRvU3RyaW5nKCkse21ldGhvZDoiR0VUIn0pLnRoZW4oKGFzeW5jIGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIG1ldHJpY3MgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO2NvbnN0IHQ9YXdhaXQgZS5qc29uKCk7cmV0dXJuIHQubWV0cmljc19mdWxsX25hbWU/LmZvckVhY2goKGU9Pntjb25zdCBzPXQubWV0cmljcy5maW5kKCh0PT50LmlkPT09ZS5pZCkpO3MmJihzLmRlc2NyaXB0aW9uPWUubmFtZSl9KSksdH0pKX1yZXR1cm4gYWV9KCkudGhlbigoZT0+ZS5tZXRyaWNzKSl9YXZhaWxhYmxlUHJpY2VTb3VyY2VzKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSl9c3VwcG9ydGVkU3ltYm9sc1R5cGVzKCl7Y29uc3QgZT13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyPz8iIjtyZXR1cm4iYm92ZXNwYSI9PT1lP3cuZmlsdGVyKChlPT5bIiIsInN0b2NrIiwiZnV0dXJlcyIsImluZGV4Il0uaW5jbHVkZXMoZS52YWx1ZSkpKToiY21lIj09PWU/dy5maWx0ZXIoKGU9PmUudmFsdWUhPT15LnR5cGVzLlFVQU5ETCkpOnd9c3ltYm9sc0dyb3VwaW5nKCl7cmV0dXJue2Z1dHVyZXM6L14oLis/KShbMTJdIXxcd1xkezR9KT8kL319Y29ubmVjdGVkKCl7cmV0dXJuISF0aGlzLl9pc0Nvbm5lY3RlZH1hdXRoVG9rZW5NYW5hZ2VyKCl7cmV0dXJuKDAsZC5lbnN1cmVEZWZpbmVkKSh0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyKX1jcmVhdGVTZXNzaW9uKGUsdCl7dGhpcy5fc2Vzc2lvbnNbZV09dCx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXT17fSx0aGlzLmNvbm5lY3RlZCgpJiZ0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZCYmdC5vbk1lc3NhZ2Uoe21ldGhvZDpoLkNoYXJ0QXBpTWVzc2FnZU1ldGhvZC5Db25uZWN0ZWQscGFyYW1zOltdfSl9cmVtb3ZlU2Vzc2lvbihlKXtkZWxldGUgdGhpcy5fc2Vzc2lvbnNbZV0sZGVsZXRlIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdfWRpc2Nvbm5lY3RDb3VudCgpe3JldHVybiB0aGlzLl9kaXNjb25uZWN0Q291bnR8fDB9Z2V0UGluZ0luZm8oKXtyZXR1cm4gdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRQaW5nSW5mbygpfWNvbm5lY3Rpb25CYW5JbmZvKCl7cmV0dXJuIHRoaXMuX2JhbkluZm8ucmVhZG9ubHkoKX1jb25uZWN0aW9uc0xpbWl0UmVhY2hlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uc0xpbWl0UmVhY2hlZC5yZWFkb25seSgpfXNlcnZlclRpbWUoKXtyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9zZXJ2ZXJUaW1lQmFzZVBvaW50K3BlcmZvcm1hbmNlLm5vdygpKX1jb21wZW5zYXRlQ29ubmVjdGlvbkxhZyhlKXtjb25zdCB0PXRoaXMuc2VydmVyVGltZSgpLHM9TWF0aC5mbG9vcihlLXQpO3M+MCYmKHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQrPXMpfXNldEJyb2tlcihlKXtyZXR1cm4gZT09PXRoaXMuX2Jyb2tlcklkfHwodGhpcy5fYnJva2VySWQ9ZSx0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpKX1jaGFydENyZWF0ZVNlc3Npb24oZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImNoYXJ0X2NyZWF0ZV9zZXNzaW9uIixbZSx0XSl9Y2hhcnREZWxldGVTZXNzaW9uKGUpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiY2hhcnRfZGVsZXRlX3Nlc3Npb24iLFtlXSl9c3dpdGNoVGltZXpvbmUoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInN3aXRjaF90aW1lem9uZSIsW2UsdF0pfXJlc29sdmVTeW1ib2woZSx0LHMsbil7cmV0dXJuIEQudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXNbInJlc29sdmVfc3ltYm9sXyIrZV09d2luZG93LnBlcmZvcm1hbmNlLm5vdygpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCwhMCksdGhpcy5fc2VuZFJlcXVlc3QoInJlc29sdmVfc3ltYm9sIixbZSx0LHNdKX1yZXF1ZXN0Rmlyc3RCYXJUaW1lKGUsdCxzLG4pe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhuLHQsITApLHRoaXMuX3NlbmRSZXF1ZXN0KCJnZXRfZmlyc3RfYmFyX3RpbWUiLFtlLHQsc10pfWNyZWF0ZVNlcmllcyhlLHQscyxuLGksbyxyLGEpe0QudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXMubWFya3MucHVzaCgiY3JlYXRlX3Nlcmllc18iK2UpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGEsdCk7Y29uc3QgZD1udWxsPT09cj8iIjooMCxfLmNvbnZlcnRUaW1lRnJhbWVUb1N0cikociwhMCk7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc2VyaWVzIixbZSx0LHMsbixpLG8sZF0pfXJlbW92ZVNlcmllcyhlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zZXJpZXMiLFtlLHRdKX1tb2RpZnlTZXJpZXMoZSx0LHMsbixpLG8scixhKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhhLHQpO2NvbnN0IGQ9bnVsbD09PXI/IiI6KDAsCl8uY29udmVydFRpbWVGcmFtZVRvU3RyKShyLCEwKTtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9zZXJpZXMiLFtlLHQscyxuLGksZF0pfWdldFN0dWR5Q291bnRlcihlKXtyZXR1cm4gdGhpcy5fc3R1ZHlDb3VudGVyW2VdPz8wfWdldEZ1bmRhbWVudGFsQ291bnRlcihlKXtyZXR1cm4gdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyW2VdPz8wfWdldENoaWxkU3R1ZHlDb3VudGVyKGUpe3JldHVybiB0aGlzLl9jaGlsZFN0dWR5Q291bnRlcltlXT8/MH1yZXF1ZXN0TW9yZURhdGEoZSx0LHMsbil7aWYodm9pZCAwPT09c3x8dm9pZCAwPT09bil0aHJvdyBuZXcgRXJyb3IoInVuc3VwcG9ydGVkIHJlcXVlc3QgdG8gbG9hZCBtb3JlIGRhdGEsIGJhcnM9IitzKTtjb25zdCBpPXQ7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW2ldPW5ldyBGLkhhbmRsZXJJbmZvKG4saSksdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfbW9yZV9kYXRhIixbZSxpLHNdKX1yZXF1ZXN0TW9yZVRpY2ttYXJrcyhlLHQscyxuKXtyZXR1cm4gbiYmKHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCkpLHRoaXMuX3NlbmRSZXF1ZXN0KCJyZXF1ZXN0X21vcmVfdGlja21hcmtzIixbZSx0LHNdKX1zZXRGdXR1cmVUaWNrbWFya3NNb2RlKGUsdCl7dGhpcy5fc2VuZFJlcXVlc3QoInNldF9mdXR1cmVfdGlja21hcmtzX21vZGUiLFtlLHRdKX1yZXF1ZXN0RGF0YVByb2JsZW1zKCl7cmV0dXJuIHRoaXMuX3JlcXVlc3REYXRhUHJvYmxlbXNQcm9taXNlfHwodGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9dGhpcy5jb25uZWN0RGZkLnRoZW4oKCgpPT5uZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VFcnJiYWNrPXQsdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfZGF0YV9wcm9ibGVtcyIsW10pP3RoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUNiPWU6dCgpfSkpKSkuZmluYWxseSgoKCk9Pnt0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZT1udWxsfSkpKSx0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZX1hc3luYyByZXF1ZXN0TWV0YWRhdGEoKXtyZXR1cm4gbnVsbD09PXRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlJiYodGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2U9KDAsdi5jcmVhdGVEZWZlcnJlZFByb21pc2UpKCksdGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UucHJvbWlzZS5maW5hbGx5KCgoKT0+e3RoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGx9KSksdGhpcy5fcmVxdWVzdE1ldGFkYXRhKCkpLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlLnByb21pc2V9YWxsU3R1ZGllc01ldGFkYXRhKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBpcyBub3QgaW1wbGVtZW50ZWQiKX1zZXRMb2FkTmV3KGUpe3RoaXMuX2xvYWROZXdCYXJzPSEhZX1zZXRJc05vbkNvdW50ZWRTdHVkeUZuKGUpe3RoaXMuX2lzTm9uQ291bnRlZFN0dWR5PWV9Y2FuQ3JlYXRlU3R1ZHkoZSx0LHMpe2NvbnN0e2lkOm4sY2hpbGQ6aSxmdW5kYW1lbnRhbDpvLGZvcmVjYXN0OnIsc3R1YlRpdGxlOmF9PXQsdT0oMCxkLmVuc3VyZU5vdE51bGwpKCgwLFIuZ2V0Q29uZmlnKSgiU1RVRFlfT05fU1RVRFkiKSkuY2hpbGRfbGltaXQ7aWYoaSYmKCEoMCxSLmVuYWJsZWQpKCJTVFVEWV9PTl9TVFVEWSIpfHwodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXJbZV0/PzApPj11KSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImNoaWxkIixsaW1pdFZhbHVlOnV9O2lmKHMpcmV0dXJue3N1Y2Nlc3M6ITB9O2lmKHImJiEoMCxSLmVuYWJsZWQpKCJGVU5EQU1FTlRBTFNfRk9SRUNBU1QiKSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImZvcmVjYXN0IixzY3JpcHROYW1lOmF9O2NvbnN0IGM9KDAsZC5lbnN1cmVOb3ROdWxsKSgoMCxSLmdldENvbmZpZykoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpKS5saW1pdDtpZihvJiYoISgwLFIuZW5hYmxlZCkoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpfHx0aGlzLmdldEZ1bmRhbWVudGFsQ291bnRlcihlKT49YykpcmV0dXJue3N1Y2Nlc3M6ITEscmVhc29uOiJmdW5kYW1lbnRhbCIsbGltaXRWYWx1ZTpjfTtjb25zdCBsPSgwLGQuZW5zdXJlTm90TnVsbCkoKDAsUi5nZXRDb25maWcpKCJJTkRJQ0FUT1JTX09OX0NIQVJUIikpLmxpbWl0O3JldHVybiBvfHx0aGlzLl9pc05vbkNvdW50ZWRTdHVkeShuKXx8KDAsUi5lbmFibGVkKSgiSU5ESUNBVE9SU19PTl9DSEFSVCIpJiYhKHRoaXMuZ2V0U3R1ZHlDb3VudGVyKGUpPj1sKT97c3VjY2VzczohMH06e3N1Y2Nlc3M6ITEscmVhc29uOiJnZW5lcmFsIixsaW1pdFZhbHVlOmx9fWNyZWF0ZVN0dWR5KGUsdCxzLG4saSxvLHIsYSl7Y29uc3QgZD10aGlzLmNhbkNyZWF0ZVN0dWR5KGUsYSk7cmV0dXJuIGQuc3VjY2Vzc3x8ImNoaWxkIiE9PWQucmVhc29uPyh0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc3R1ZHkiLFtlLHQscyxuLGksb10pLGEuZnVuZGFtZW50YWw/ZWUodGhpcy5fZnVuZGFtZW50YWxDb3VudGVyLGUpOnRoaXMuX2lzTm9uQ291bnRlZFN0dWR5KGEuaWQpfHxlZSh0aGlzLl9zdHVkeUNvdW50ZXIsZSksYS5jaGlsZCYmZWUodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXIsZSksdGhpcy5fc3R1ZHlTcGVjcy5zZXQoWihlLHQpLGEpLCEwKTooKDAsay5zaG93VG9vTWFueVN0dWRpZXNOb3RpY2UpKGQubGltaXRWYWx1ZSksITEpfW1vZGlmeVN0dWR5KGUsdCxzLG4sbyxyKXtYKHI9cj8/MCx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSwwIT09ciYmKCgwLGQuZW5zdXJlRGVmaW5lZCkodGhpcy5fc3R1ZHlTcGVjcy5nZXQoWihlLHQpKSkuY2hpbGQ9cj4wKSx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhvLHQpO2NvbnN0IGE9ZSt0O2lmKHRoaXMuX21vZGlmeVN0dWR5TWFwLmhhcyhhKSl7cmV0dXJuKDAsCmQuZW5zdXJlRGVmaW5lZCkodGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KGEpKShlLHQscyxuKT8/ITB9e2NvbnN0IG89KDAsaS5kZWZhdWx0KSgoKGUsdCxzLG4pPT50aGlzLl9zZW5kUmVxdWVzdCgibW9kaWZ5X3N0dWR5IixbZSx0LHMsbl0pKSw1MDAse21heFdhaXQ6NTUwfSk7cmV0dXJuIHRoaXMuX21vZGlmeVN0dWR5TWFwLnNldChhLG8pLG8oZSx0LHMsbik/PyEwfX1ub3RpZnlTdHVkeShlLHQscyxuKXtyZXR1cm4gQS5sb2dOb3JtYWwoYFNlbmQgbm90aWZ5X3N0dWR5LCBbJHtlfSwgJHt0fSwgJHtzfSwgJHtKU09OLnN0cmluZ2lmeShuKX1dYCksdGhpcy5fc2VuZFJlcXVlc3QoIm5vdGlmeV9zdHVkeSIsW2UsdCxzLEpTT04uc3RyaW5naWZ5KG4pXSl9cmVtb3ZlU3R1ZHkoZSx0KXtjb25zdCBzPWUrdDtkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KHMpPy5mbHVzaCgpO2NvbnN0IG49dGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zdHVkeSIsW2UsdF0pO2lmKCExPT09bilyZXR1cm4hMTt0aGlzLl9tb2RpZnlTdHVkeU1hcC5kZWxldGUocyk7Y29uc3QgaT1aKGUsdCksbz0oMCxkLmVuc3VyZURlZmluZWQpKHRoaXMuX3N0dWR5U3BlY3MuZ2V0KGkpKTtyZXR1cm4gdGhpcy5fc3R1ZHlTcGVjcy5kZWxldGUoaSksby5mdW5kYW1lbnRhbD90ZSh0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXIsZSk6dGhpcy5faXNOb25Db3VudGVkU3R1ZHkoby5pZCl8fHRlKHRoaXMuX3N0dWR5Q291bnRlcixlKSxvLmNoaWxkJiZ0ZSh0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSxufWNyZWF0ZVBvaW50c2V0KGUsdCxzLG4saSxvLHIpe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfcG9pbnRzZXQiLFtlLHQscyxuLGksb10pfW1vZGlmeVBvaW50c2V0KGUsdCxzLG4saSl7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGksdCksdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9wb2ludHNldCIsW2UsdCxzLG5dKX1yZW1vdmVQb2ludHNldChlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9wb2ludHNldCIsW2UsdF0pfWdldE1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfWdldFRpbWVzY2FsZU1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfXF1b3RlQ3JlYXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2NyZWF0ZV9zZXNzaW9uIixbZV0pfXF1b3RlRGVsZXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2RlbGV0ZV9zZXNzaW9uIixbZV0pfXF1b3RlQWRkU3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfYWRkX3N5bWJvbHMiLFtlLHRdKX1xdW90ZVJlbW92ZVN5bWJvbHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3JlbW92ZV9zeW1ib2xzIixbZSx0XSl9cXVvdGVGYXN0U3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfZmFzdF9zeW1ib2xzIixbZSx0XSl9cXVvdGVTZXRGaWVsZHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3NldF9maWVsZHMiLFtlLHRdKX1xdW90ZUhpYmVybmF0ZUFsbChlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2hpYmVybmF0ZV9hbGwiLFtlXSl9ZGVwdGhDcmVhdGVTZXNzaW9uKGUsdCxzKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImRlcHRoX2NyZWF0ZV9zZXNzaW9uIixbZSx0LHNdKX1kZXB0aERlbGV0ZVNlc3Npb24oZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9kZWxldGVfc2Vzc2lvbiIsW2VdKX1kZXB0aFNldFN5bWJvbChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3N5bWJvbCIsW2UsdF0pfWRlcHRoQ2xlYXJTeW1ib2woZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9jbGVhcl9zeW1ib2wiLFtlXSl9ZGVwdGhTZXRTY2FsZShlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3NjYWxlIixbZSx0XSl9dW5wYWNrKGUpe3JldHVybiB0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnVucGFjayhlKX1zZW5kUmVxdWVzdChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdChlLHQpfXNldFZpc2libGVUaW1lUmFuZ2UoKXt0aHJvdyBuZXcgRXJyb3IoInNldFZpc2libGVUaW1lUmFuZ2UgaXMgZGVwcmVjYXRlZCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIil9X2luaXQoKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVycz17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyPXt9LHRoaXMuX21vZGlmeVN0dWR5TWFwPW5ldyBNYXB9X2NoZWNrQXV0aFRva2VuRXhwaXJhdGlvbihlKXswPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2F1dGhUb2tlbk1hbmFnZXImJiF0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmKEEubG9nSW5mbyhlKSx0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLnJlc2V0KCkpfV9zZW5kUmVxdWVzdChlLHQpe3JldHVybiBqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gc2VuZGluZyBhIG1lc3NhZ2UsIHJlcXVlc3RpbmcgbmV3IHRva2VuIiksMCE9PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Pyh0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5wdXNoKHttZXRob2Q6ZSxhcmdzOnR9KSwhMCk6dGhpcy5fc2VuZFJlcXVlc3RJbXBsKGUsdCl9X3NlbmRSZXF1ZXN0SW1wbChlLHQpewpjb25zdCBzPXRoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuZ2V0KGUpPz8wO3RoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuc2V0KGUscysxKTtjb25zdCBpPXRoaXMuX2RhdGFIYW5kbGVNb2R1bGVbZV0uYXBwbHkodGhpcy5fZGF0YUhhbmRsZU1vZHVsZSx0KSxkPXttOmUscDooMCxuLmRlZmF1bHQpKGkpfSxjPWQubS5pbmNsdWRlcygic3R1ZHkiKSYmZC5wWzVdO2MmJmZ1bmN0aW9uKGUpe2lmKCEoMCx1LmlzT2JqZWN0KShlKSlyZXR1cm4hMTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhlKSl7Y29uc3Qgcz1lW3RdO2lmKCEoKDAsdS5pc09iamVjdCkocyl8fCgwLHIuZGVmYXVsdCkocyl8fCgwLG8uZGVmYXVsdCkocyl8fCgwLGEuZGVmYXVsdCkocykpKXJldHVybiExfXJldHVybiEwfShjKSYmInRleHQiaW4gYyYmKGMudGV4dD1jLnRleHQuc2xpY2UoMCwxMCkpO2NvbnN0IGw9SlNPTi5zdHJpbmdpZnkoZCk7aWYoaS5sZW5ndGg+MCl7Y29uc3QgZT1pWzBdO2Uuc3RhcnRzV2l0aCgicXNfIik/Vi5sb2dOb3JtYWwoInNlbmQ6ICIrbCk6ZS5zdGFydHNXaXRoKCJjc18iKSYmQi5sb2dOb3JtYWwoInNlbmQ6ICIrbCw0MDk2KX1lbHNlIEEubG9nTm9ybWFsKCJzZW5kOiAiK2wpO2NvbnN0IGg9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRW5jb2RlTWVzc2FnZShlLGkpO3JldHVybiB0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNlbmQoaCl9X29uQ29ubmVjdCgpe2lmKHRoaXMuY29ubmVjdGVkKCkpcmV0dXJuO2lmKHRoaXMuX3RyYWZmaWNTdGF0cy5zaW5jZUNvbm5lY3Q9MCx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zfHx7fSx0aGlzLl9hdXRoVG9rZW5EZmQ9dGhpcy5fZ2V0QXV0aFRva2VuRGZkKHRoaXMuX2Nvbm5lY3RPbmx5T3B0aW9ucy50b2tlbkdyYWJTZXNzaW9uKSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9e30sdGhpcy5zZXNzaW9uaWQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRTZXNzaW9uSWQoKSwhdGhpcy5zZXNzaW9uaWR8fHRoaXMuX2lzQ29ubmVjdGVkKXJldHVybjt0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZT1bXSx0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudD0wLHRoaXMuX3N0dWR5Q291bnRlcj17fSx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcj17fSx0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcy5jbGVhcigpLHRoaXMuX2lzQ29ubmVjdGVkPSEwLHRoaXMuX2JhbkluZm8uc2V0VmFsdWUobnVsbCksdGhpcy5fY29ubmVjdGlvbnNMaW1pdFJlYWNoZWQuc2V0VmFsdWUoITEpO2NvbnN0IGU9SlNPTi5wYXJzZSh0aGlzLnNlc3Npb25pZCk7dGhpcy5fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCksdGhpcy5fbWV0YWRhdGFTZXJ2ZXJIYXNoPWUuc3R1ZGllc19tZXRhZGF0YV9oYXNofHxudWxsO2NvbnN0IHQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uRXN0YWJsaXNoZWQoKTt0cnl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1NYXRoLnJvdW5kKGUudGltZXN0YW1wTXMtdCl9Y2F0Y2goZSl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1EYXRlLm5vdygpLXBlcmZvcm1hbmNlLm5vdygpfWlmKEEubG9nSW5mbygiVGltZSBzaGlmdCB3aXRoIHNlcnZlcjogIit0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLURhdGUubm93KCkpKSx0aGlzLl9hdXRoVG9rZW5EZmQpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Kz0xLEEubG9nSW5mbygiV2FpdCBmb3IgYXV0aCB0b2tlbiBiZWZvcmUgc2VuZCBtZXNzYWdlcyIpO2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuRGZkO2UudGhlbigodD0+e2lmKG51bGwhPT10aGlzLl9hdXRoVG9rZW5EZmQmJnRoaXMuX2F1dGhUb2tlbkRmZD09PWUpe2lmKEEubG9nTm9ybWFsKCJBdXRoIHRva2VuIHJlcXVlc3QgaXMgZmluaXNoZWQsIHRva2VuOiAiK0Jvb2xlYW4odCkpLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHQpe2NvbnN0IGU9W3ttZXRob2Q6InNldF9hdXRoX3Rva2VuIixhcmdzOlt0XX1dO2lmKFUpe2NvbnN0IHQ9d2luZG93LmluaXREYXRhJiZ3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm87dCYmZS5wdXNoKHttZXRob2Q6InNldF9sb2NhbGUiLGFyZ3M6W3QuaXNvLHQuZmxhZy50b1VwcGVyQ2FzZSgpXX0pfXRoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLnVuc2hpZnQoLi4uZSl9dGhpcy5fb25TZW5kaW5nUXVldWVSZXF1ZXN0RmluaXNoZWQoKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMCx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkNvbm5lY3RlZCxwYXJhbXM6W119KX1lbHNlIEEubG9nTm9ybWFsKCJDb21lcyBhdXRoIHRva2VuIGFmdGVyIHJlcXVlc3RpbmcgbmV3IHRva2VuIG9yIGFmdGVyIHNvY2tldCBkaXNjb25uZWN0ZWQiKX0pKS5jYXRjaCgoZT0+e0EubG9nTm9ybWFsKCgwLFMuZXJyb3JUb1N0cmluZykoZSkpfSkpfWVsc2UgQS5sb2dXYXJuKCJEZWZlcnJlZCBhdXRoIHRva2VuIG9iamVjdCBpcyBub3QgdmFsaWQiKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMDsiIiE9PXRoaXMuX2Jyb2tlcklkJiZ0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpO2NvbnN0IHM9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uU3RhcnQoKTtELnRlbGVtZXRyeS5zZXRTZXNzaW9uSW5mbyh0aGlzLnNlc3Npb25pZCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGVkIiksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIix7dmFsdWU6dC1zfSksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfY291bnRfZnJhbWUiLHt2YWx1ZTp0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldFJlY29ubmVjdENvdW50KCl9KSwKRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWRpcmVjdF9jb3VudF9mcmFtZSIse3ZhbHVlOnRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uZ2V0UmVkaXJlY3RDb3VudCgpfSksenx8KHo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJiZWZvcmVfd2Vic29ja2V0X2Nvbm5lY3Rpb25fdGltZV9mcmFtZSIse3ZhbHVlOnN9KSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5yZXNldENvdW50ZXJzKCksY2xlYXJUaW1lb3V0KHRoaXMuX3RlbGVtZXRyeURpc2Nvbm5lY3RUaW1lb3V0KX1fZm9ybWF0VGltZShlKXtyZXR1cm5gJHsoZS8xZTMpLnRvRml4ZWQoMil9IHNlY29uZHMuYH1fZGlzcGF0Y2hOb3RpZmljYXRpb24oZSx0KXtpZigicmVxdWVzdF9kYXRhX3Byb2JsZW1zIj09PWUubWV0aG9kJiZ0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYilyZXR1cm4gdm9pZCB0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYihlLnBhcmFtcyk7aWYoZS5tZXRob2Q9PT1QLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuU3R1ZGllc01ldGFkYXRhJiZudWxsIT09dGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UpcmV0dXJuIHZvaWQgdGhpcy5fcHJvY2Vzc2VkTWV0YWRhdGEoZSk7Y29uc3Qgcz1lLnBhcmFtcy5zaGlmdCgpO2lmKCF0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tzXSlyZXR1cm47aWYoInN5bWJvbF9yZXNvbHZlZCI9PT1lLm1ldGhvZCl7Y29uc3QgdD1lLnBhcmFtc1sxXS5mdWxsX25hbWU7RC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJzeW1ib2xfcmVzb2x2ZWQiLHtjb3VudDoxLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pO2NvbnN0IG49RC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllc1sicmVzb2x2ZV9zeW1ib2xfIitzXTsibnVtYmVyIj09dHlwZW9mIG4mJkQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgic3ltYm9sX3Jlc29sdmVfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1uLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pfWlmKFsic2VyaWVzX2Vycm9yIiwic2VyaWVzX2NvbXBsZXRlZCJdLmluY2x1ZGVzKGUubWV0aG9kKSYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5sZW5ndGg+MCl7Y29uc3QgZT0iY3JlYXRlX3Nlcmllc18iK3MsdD1ELnRlbGVtZXRyeS50aW1lQ291bnRlcnMuc2VyaWVzLm1hcmtzLmluZGV4T2YoZSk7dD49MCYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5zcGxpY2UodCwxKX1HfHwic2VyaWVzX2Vycm9yIiE9PWUubWV0aG9kfHwoRz0hMCk7Y29uc3Qgbj10aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldENvbm5lY3Rpb25Fc3RhYmxpc2hlZCgpO2lmKG51bGwhPT1uJiYic2VyaWVzX2NvbXBsZXRlZCI9PT1lLm1ldGhvZCYmKEd8fChHPSEwLEQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1ufSksRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcz1bXSksSnx8KEo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJwYWdlX2Z1bGxfbG9hZF90aW1lX2ZyYW1lIix7dmFsdWU6d2luZG93LnBlcmZvcm1hbmNlLm5vdygpfSkpKSxzLnN0YXJ0c1dpdGgoImNzXyIpKXtsZXQgcz0icmVjdjogIit0OyJkYXRhX3VwZGF0ZSI9PT1lLm1ldGhvZD8ocz0oMCxsLmlzSGlnaFJhdGVFbmFibGVkKSgpP3M6cy5zbGljZSgwLDUwMCksTC5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKSk6InN0dWR5X2xvYWRpbmciPT09ZS5tZXRob2Q/Ty5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKToidGlja21hcmtfdXBkYXRlIj09PWUubWV0aG9kP1EubG9nTm9ybWFsKHRoaXMuX2FwcGVuZER1cmF0aW9uKHMsZS50aW1lKSk6Qi5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKX1pZihzLnN0YXJ0c1dpdGgoInFzXyIpKXsoInF1b3RlX3N5bWJvbF9kYXRhIj09PWUubWV0aG9kPyQubG9nTm9ybWFsOlYubG9nTm9ybWFsKSgicmVjdjogIit0KX1zd2l0Y2goZS5tZXRob2Qpe2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZTp7Y29uc3QgdD10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZU9iamVjdHMoZSksbj10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZUNoYW5nZXNldChlKSxpPXRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShuKTt0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDpQLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuVGltZVNjYWxlVXBkYXRlLHBhcmFtczppfSksdGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRGF0YVVwZGF0ZU9iamVjdHMocyx0LCgoZSx0LHMpPT57dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl9KSk7YnJlYWt9Y2FzZSJ0aWNrbWFya191cGRhdGUiOmNvbnN0IHQ9ey4uLnRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShlLnBhcmFtc1swXSksY2hhbmdlczpbXX07dGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZSxwYXJhbXM6dH0pO2JyZWFrO2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLkRhdGFVcGRhdGU6e2NvbnN0IHQ9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5nZXREYXRhVXBkYXRlT2JqZWN0cyhlKTt0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhzLHQsKChlLHQscyk9Pnt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKGUsdCxzKX0pKTticmVha31jYXNlImluZGV4X3VwZGF0ZSI6Zm9yKGNvbnN0IHQgaW4gZS5wYXJhbXNbMF0paWYoZS5wYXJhbXNbMF0uaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IG49e21ldGhvZDoiaW5kZXhfdXBkYXRlIiwKcGFyYW1zOmUucGFyYW1zWzBdW3RdfTt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCxuKX1icmVhaztjYXNlIFAuV2ViY2hhcnRSZXNwb25zZU1ldGhvZC5Dcml0aWNhbEVycm9yOkEubG9nSW5mbyhuZXcgRGF0ZSsiIGNyaXRpY2FsX2Vycm9yIHNlc3Npb246Iit0aGlzLnNlc3Npb25pZCsiIHJlYXNvbjoiK2UucGFyYW1zWzBdKSxELnRlbGVtZXRyeS5zZW5kQ2hhcnRSZXBvcnQoImNyaXRpY2FsX2Vycm9yIiksdGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydFJlc3BvbnNlTWV0aG9kLkNyaXRpY2FsRXJyb3IscGFyYW1zOmUucGFyYW1zfSk7YnJlYWs7Y2FzZSJ0aW1lc2NhbGVfY29tcGxldGVkIjpjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjpjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpjYXNlInF1b3RlX2NvbXBsZXRlZCI6Y2FzZSJkZXB0aF9zeW1ib2xfZXJyb3IiOmNhc2UiZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiOmNhc2UiZGQiOmNhc2UiZHB1IjpjYXNlImRlcHRoX2Jhcl9sYXN0X3ZhbHVlIjp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDplLm1ldGhvZCxwYXJhbXM6ZS5wYXJhbXN9KTticmVhaztjYXNlImNsZWFyX2RhdGEiOmZvcihjb25zdCB0IGluIGUucGFyYW1zWzBdKWUucGFyYW1zWzBdLmhhc093blByb3BlcnR5KHQpJiZ0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCx7bWV0aG9kOlAuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5DbGVhckRhdGEscGFyYW1zOmUucGFyYW1zWzBdW3RdfSk7YnJlYWs7Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheVBvaW50OmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlSZXNvbHV0aW9uczpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGF0YUVuZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5SW5zdGFuY2VJZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGVwdGg6Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheUVycm9yOmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlPazp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2UoZSk7YnJlYWs7Y2FzZSJzZXJpZXNfdGltZWZyYW1lIjpjb25zdCBuPWUucGFyYW1zWzRdO2UucGFyYW1zWzRdPW51bGw9PW4/bnVsbDooMCxfLmNvbnZlcnRTdHJUb1RpbWVGcmFtZSkobiksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2Nhc2Uic3ltYm9sX3Jlc29sdmVkIjohZnVuY3Rpb24oZSl7aWYodm9pZCAwPT09ZS5jb3JyZWN0aW9ucyl7Y29uc3QgdD0oZS5zdWJzZXNzaW9ucz8/W10pLmZpbmQoKHQ9PnQuaWQ9PT1lLnN1YnNlc3Npb25faWQpKTt2b2lkIDAhPT10JiYoZS5jb3JyZWN0aW9ucz10WyJzZXNzaW9uLWNvcnJlY3Rpb24iXSl9fShlLnBhcmFtc1sxXSksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2RlZmF1bHQ6dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpfX1fbm90aWZ5U2Vzc2lvbnMoZSl7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fc2Vzc2lvbnMpaWYodGhpcy5fc2Vzc2lvbnMuaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IHM9dGhpcy5fc2Vzc2lvbnNbdF07ImZ1bmN0aW9uIj09dHlwZW9mIHMub25NZXNzYWdlJiZzLm9uTWVzc2FnZShlKX19X29uTWVzc2FnZShlKXtqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gcmVjZWl2aW5nIGEgbWVzc2FnZSwgcmVxdWVzdGluZyBuZXcgdG9rZW4iKSx0aGlzLl9jYWxjVHJhZmZpY1N0YXRzKGUpO2NvbnN0IHQ9dGhpcy51bnBhY2soZSk7dGhpcy5fcmVjZWl2ZWRNZXRob2RzQ291bnRlcnMuc2V0KHQubWV0aG9kLCh0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVycy5nZXQodC5tZXRob2QpPz8wKSsxKSwidF9tcyJpbiB0JiYoMCxvLmRlZmF1bHQpKHQudF9tcykmJndpbmRvdy5DaGFydEFwaUluc3RhbmNlLmNvbXBlbnNhdGVDb25uZWN0aW9uTGFnKHQudF9tcyksInByb3RvY29sX3N3aXRjaGVkIiE9PXQubWV0aG9kPyJwcm90b2NvbF9lcnJvciIhPT10Lm1ldGhvZD90aGlzLl9kaXNwYXRjaE5vdGlmaWNhdGlvbih0LGUpOnRoaXMuX3Byb2Nlc3NQcm90b2NvbEVycm9yKHQpOkEubG9nRXJyb3IoIlVuZXhwZWN0ZWQgcHJvdG9jb2wgY2hhbmdpbmcgcmVxdWVzdCwgdHJ5IHNraXBwaW5nLiBSZXF1ZXN0ZWQgcHJvdG9jb2w6Iit0LnBhcmFtc1swXSl9YXN5bmMgX3Byb2Nlc3NlZE1ldGFkYXRhKGUpe2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz1hd2FpdCB0aGlzLl9pbml0Q2FjaGVQcm9taXNlLGk9d2luZG93LnByby5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTt0cnl7YXdhaXQgcy5zZXRWYWx1ZShpZSwoMCxuLmRlZmF1bHQpKGUpKTtjb25zdCByPUFycmF5LmZyb20obmV3IFNldChlLnBhcmFtc1sxXS5tZXRhaW5mby5tYXAoKGU9PntyZXR1cm5gJHsodD0oMCxwLnBhcnNlSWRTdHJpbmcpKGUuaWQpKS5wYWNrYWdlSWR9LSR7dC52ZXJzaW9ufWA7dmFyIHR9KSkpKTtpZihBLmxvZ05vcm1hbChgVXBkYXRlZCBzdHVkaWVzX21ldGFkYXRhIGNhY2hlLCB1bmlxdWUgcGFja2FnZSBpZHM6ICR7ci5qb2luKCIsICIpfWApLCFvKXRyeXthd2FpdCBzLnNldFZhbHVlKG5lLCgwLG4uZGVmYXVsdCkoaSkpLEEubG9nTm9ybWFsKCJVcGRhdGVkIHByb19oYXNoIGNhY2hlIil9Y2F0Y2goZSl7dC5yZWplY3QoKSxBLmxvZ0Vycm9yKCJDYW5ub3QgdXBkYXRlIHByb19oYXNoIGNhY2hlLCByZWFzb246ICIrZSl9fWNhdGNoKGUpe3QucmVqZWN0KCksCkEubG9nRXJyb3IoIkNhbm5vdCB1cGRhdGUgc3R1ZGllc19tZXRhZGF0YSBjYWNoZSwgcmVhc29uOiAiK2UpfXQucmVzb2x2ZSgoMCxuLmRlZmF1bHQpKGUpKX1faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl7aWYodm9pZCAwPT09dClyZXR1cm47Y29uc3Qgbj10aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XTt2b2lkIDAhPT1uJiYobi5zaW5nbGVTaG90JiZkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sbi5oYW5kbGVyPy4ocykpfV9jb252ZXJ0VGltZXNjYWxlUmVzcG9uc2UoZSl7cmV0dXJuIHRoaXMuX2RhdGFIYW5kbGVNb2R1bGUuY29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpfV9hcHBlbmREdXJhdGlvbihlLHQpe3JldHVybiB0P2Ake2V9LCBkdXJhdGlvbjogJHt0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLTFlMyp0KX1gOmV9YXN5bmMgX3JlcXVlc3RNZXRhZGF0YSgpe2NvbnN0IGU9dGhpcy5fbWFrZU5leHRSZXF1ZXN0SWQoKTt4LmxvZ05vcm1hbChgUmVxdWVzdGluZyBtZXRhaW5mbyAjJHtlfWApO2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz13aW5kb3cucHJvLGk9cy5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTtBLmxvZ05vcm1hbCgiUmVxdWVzdGluZyBwcm8gaGFzaCIpO3RyeXtjb25zdCByPWF3YWl0IHRoaXMuX2luaXRDYWNoZVByb21pc2U7YXdhaXQgci5taWdyYXRlVmFsdWUoInByb19oYXNoIixuZSksYXdhaXQgci5taWdyYXRlVmFsdWUoc2UsaWUpO2NvbnN0IGE9YXdhaXQgci5nZXRWYWx1ZShuZSk7aWYobnVsbCE9PWEmJmE9PT1pfHxvKXtBLmxvZ05vcm1hbCgiUHJvIGhhc2ggaGFzIG5vdCBjaGFuZ2VkLCByZXF1ZXN0aW5nIGZyb20gbG9jYWwiKTtjb25zdCBvPWF3YWl0IHIuZ2V0VmFsdWUoaWUpLGE9bnVsbCE9PW8mJm8ucGFyYW1zWzFdLmhhc2h8fG51bGw7aWYobnVsbD09PWF8fG51bGw9PT10aGlzLl9tZXRhZGF0YVNlcnZlckhhc2h8fHRoaXMuX21ldGFkYXRhU2VydmVySGFzaCE9PWEpQS5sb2dOb3JtYWwoYE1ldGFkYXRhIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBzZXJ2ZXI6ICcke3RoaXMuX21ldGFkYXRhU2VydmVySGFzaH0nKWApLHRoaXMuX3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSk7ZWxzZXtpZighcy5oYXNQYWNrYWdlKCJ0di12b2x1bWVieXByaWNlIil8fHZvaWQgMCE9PW8ucGFyYW1zWzFdLm1ldGFpbmZvLmZpbmQoKGU9PmUuaWQuaW5jbHVkZXMoIkB0di12b2x1bWVieXByaWNlIikpKSlyZXR1cm4gQS5sb2dOb3JtYWwoIlVzaW5nIHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBicm93c2VyIGNhY2hlIiksdm9pZCB0LnJlc29sdmUoKDAsbi5kZWZhdWx0KShvKSk7QS5sb2dOb3JtYWwoYERlLXN5bmMgZGV0ZWN0ZWQhIHByby5oYXNoIGNvbnRhaW5zIFZiUFIgc3R1ZGllcywgYnV0IGRhdGEgZnJvbSBjYWNoZSBkb2Vzbid0IGFuZCBwcm8uaGFzaCBpc24ndCBjaGFuZ2VkLCBwcm8uaGFzaD0ke2l9YCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX19ZWxzZSBBLmxvZ05vcm1hbChgUHJvIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBjdXJyZW50OiAnJHtpfScpYCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX1jYXRjaCh0KXtBLmxvZ0Vycm9yKCJDYW5ub3QgZ2V0IHN0dWRpZXNfbWV0YWRhdGEsIHJlYXNvbjogIit0KSx0aGlzLl9yZXF1ZXN0TWV0YWRhdGFGcm9tU2VydmVyKGUpfWZpbmFsbHl7eC5sb2dOb3JtYWwoYFJlcXVlc3Rpbmcgc3R1ZGllcyBtZXRhZGF0YSAjJHtlfSBmaW5pc2hlZGApfX1fbWFrZU5leHRSZXF1ZXN0SWQoKXtyZXR1cm4ibWV0YWRhdGFfIit0aGlzLl9tZXRhZGF0YVJlcXVlc3ROZXh0TnVtYmVyKyt9X3Byb2Nlc3NQcm90b2NvbEVycm9yKGUpe2NvbnN0IHQ9ZS5wYXJhbXNbMF07QS5sb2dFcnJvcihgUHJvdG9jb2wgZXJyb3IuIFJlYXNvbj0ke3R9LmApLCJiYW5uZWQiIT09dCYmImJhbm5lZCBieSB1c2VyX2lkIiE9PXQmJiJiYW5uZWQgYnkgaXAiIT09dHx8KHRoaXMuX2JhbkluZm8uc2V0VmFsdWUoe3JlYXNvbjp0fSksdGhpcy5kaXNjb25uZWN0KCkpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnNldFZhbHVlKCJ1c2VyIGNvbm5lY3Rpb25zIGxpbWl0IHJlYWNoZWQiPT09dCl9X3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSl7cmV0dXJuIEEubG9nTm9ybWFsKCJSZXF1ZXN0IHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBzZXJ2ZXIiKSx0aGlzLl9zZW5kUmVxdWVzdCgicmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhIixbZV0pfV9iaW5kU29ja2V0RXZlbnRzKCl7dGhpcy5jb25uZWN0RGZkPW5ldyBQcm9taXNlKCgoZSx0KT0+e3RoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24ub24oImNvbm5lY3QiLCgoKT0+e3RoaXMuX29uQ29ubmVjdCgpLGUoKX0pKSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLm9uKCJtZXNzYWdlIix0aGlzLl9vbk1lc3NhZ2UuYmluZCh0aGlzKSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vbigiZGlzY29ubmVjdCIsKCgpPT57dGhpcy5fYXV0aFRva2VuRGZkJiYodGhpcy5fYXV0aFRva2VuRGZkPW51bGwpLHRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2smJnRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2soKSx0aGlzLl9pc0Nvbm5lY3RlZD0hMSx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkRpc2Nvbm5lY3RlZCxwYXJhbXM6W119KSx0aGlzLl9iYW5JbmZvLnZhbHVlKCl8fCh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZT1udWxsKSx0aGlzLl9kaXNjb25uZWN0Q291bnQ9KHRoaXMuX2Rpc2Nvbm5lY3RDb3VudHx8MCkrMSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGVkKCkmJih0aGlzLl90ZWxlbWV0cnlEaXNjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KCgoKT0+e0QudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZGlzY29ubmVjdCIpfSksNWUzKSwKdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc01heFJlY29ubmVjdHMoKSYmKHRoaXMuX25vdGlmeVNlc3Npb25zKHttZXRob2Q6aC5DaGFydEFwaU1lc3NhZ2VNZXRob2QuUmVjb25uZWN0QmFpbG91dCxwYXJhbXM6W119KSx0KCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfYmFpbG91dCIpKSl9KSl9KSl9X2NhbGNUcmFmZmljU3RhdHMoZSl7Y29uc3QgdD1lLmxlbmd0aDt0aGlzLl90cmFmZmljU3RhdHMudG90YWwrPXQsdGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCs9dCx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKz10fV9zZW5kQnJva2VySWRUb1Nlc3Npb24oZSl7cmV0dXJuIVd8fHRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfYnJva2VyIixbZV0pfV9lbmFibGVMb3dRdWFsaXR5TW9kZSgpe0EubG9nTm9ybWFsKCJsb3cgcXVhbGl0eSBtb2RlIGlzIGVuYWJsZWQiKSx0aGlzLl9sb3dRdWFsaXR5RW5hYmxlZD0hMCx0aGlzLl9zZW5kTG93UXVhbGl0eU1vZGVJZkVuYWJsZWQoKX1fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCl7dGhpcy5fbG93UXVhbGl0eUVuYWJsZWQmJnRoaXMuY29ubmVjdGVkKCkmJnRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfZGF0YV9xdWFsaXR5IixbXSl9X2dldEF1dGhUb2tlbkRmZChlKXtpZih0aGlzLl9sb2FkTmV3QmFycylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJsb2FkX25ld190b2tlbiIpO2lmKCgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpfHwtMSE9PXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIil8fC0xIT09d2luZG93LmxvY2F0aW9uLmhhc2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIikpe2NvbnN0IGU9d2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiO3JldHVybiBQcm9taXNlLnJlc29sdmUoYltlXXx8IndpZGdldF91c2VyX3Rva2VuIil9aWYoIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKXJldHVybiBQcm9taXNlLnJlc29sdmUoInVuYXV0aG9yaXplZF91c2VyX3Rva2VuIik7aWYoIXRoaXMuX2F1dGhUb2tlbk1hbmFnZXIpe2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuTWFuYWdlcj1uZXcgZi5BdXRoVG9rZW47ZS5pbnZhbGlkYXRlZC5zdWJzY3JpYmUobnVsbCwoYXN5bmMoKT0+e3RyeXt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudCs9MTtjb25zdCB0PWF3YWl0IGUuZ2V0KCk7aWYoIXQpcmV0dXJuIHZvaWQgQS5sb2dJbmZvKCJBdXRoVG9rZW4gaW52YWxpZGF0ZWQsIGJ1dCBuZXcgdG9rZW4gaXMgZW1wdHkiKTtpZighdGhpcy5jb25uZWN0ZWQoKSlyZXR1cm4gdm9pZCBBLmxvZ0luZm8oYEF1dGhUb2tlbiBpbnZhbGlkYXRlZCwgYnV0IHNvY2tldCBpcyBub3QgY29ubmVjdGVkLiBUb2tlbjogJHt0fWApO0EubG9nSW5mbygiQXV0aFRva2VuIGludmFsaWRhdGVkLCByZWZyZXNoaW5nIHRva2VuIGFuZCByZXNlbmRpbmcgdG8gc2Vzc2lvbiIpLHRoaXMuX3NlbmRSZXF1ZXN0SW1wbCgic2V0X2F1dGhfdG9rZW4iLFt0XSl9Y2F0Y2goZSl7dGhyb3cgQS5sb2dFcnJvcihgRmFpbGVkIHRvIHJlZnJlc2ggYXV0aCB0b2tlbiBhZnRlciBpbnZhbGlkYXRpb246ICR7KDAsUy5lcnJvclRvU3RyaW5nKShlKX1gKSxlfWZpbmFsbHl7dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQtPTEsMD09PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50JiZlLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmdGhpcy5fZmx1c2hQZW5kaW5nTWVzc2FnZXMoKX19KSl9cmV0dXJuIHRoaXMuX2F1dGhUb2tlbk1hbmFnZXIuZ2V0KGUpfV9vblNlbmRpbmdRdWV1ZVJlcXVlc3RGaW5pc2hlZCgpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50LT0xLEEubG9nSW5mbyhgU2VuZGluZyBxdWV1ZSByZXF1ZXN0IGZpbmlzaGVkLiBSZW1haW5pbmcgcGVuZGluZyByZXF1ZXN0cz0ke3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50fWApLHRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50PDAmJkEubG9nRXJyb3IoYEludmFsaWQgcXVldWUgc3RhdGU9JHt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudH1gKSwwPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl9X2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl7QS5sb2dJbmZvKGBGbHVzaCBwZW5kaW5nIG1lc3NhZ2VzLiBDb3VudD0ke3RoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLmxlbmd0aH1gKSx0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5mb3JFYWNoKChlPT50aGlzLl9zZW5kUmVxdWVzdChlLm1ldGhvZCxlLmFyZ3MpKSksdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W119fSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYod2luZG93LkNoYXJ0QXBpSW5zdGFuY2U9bmV3IGRlKHdpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uKSl9LDg4OTUxNShlLHQscyl7cy5kKHQse3Nob3dUb29NYW55U3R1ZGllc05vdGljZTooKT0+b30pO3ZhciBuPXMoMTg1MjcxKSxpPXMoMjM0OTY0KTtmdW5jdGlvbiBvKGUpeygwLGkuc2hvd1dhcm5pbmcpKHt0aXRsZTpuLnQobnVsbCx2b2lkIDAscyg5MzcwMTcpKSx0ZXh0Om4udChudWxsLHtyZXBsYWNlOntudW1iZXI6YCR7ZX1gfX0scyg5OTIzNjIpKX0pfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/i/productlogos/translate/v14/24px.svg","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.427Z","timestamp":1785154590427,"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://persimmontrades.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: 353180\r\nlast-modified: Wed, 20 Apr 2022 14:24:23 GMT\r\ncontent-type: image/svg+xml\r\nvary: Accept-Encoding\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":6225,"size_decoded":4178,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"2bd5c073a88b83ed74db88282a56ddfb","sha1":"d0ebfc376f8c6a44a8d4cd216817dcd7d0c33650","sha256":"ab5c23a05e39deed14d9d8262b0dce9f024f86105a27196cad37d14a3f516e09","sha512":"5c6c4a92e93fc0f6a675658cc84f6187fdebd3eee94efd07e24658736cba598f3bc7156b19834b13fb44c1d43fcb7df9fcca7f0a453037e30da76ba8f4b23b89","ssdeep":"96:+R2K3Z4n7tyVwip82hezk6227gLFoXhu1XuE20ot+pVY3YptWDzOzgXK3Zx:ql3KnxyGGMzb7noR20NTww33","tlshash":"c1d1e6f19309d815cd6a83d8cd9b8002aa1f25ddd50ac6cc7639fb3bd1a50eb1d2d7a4","first_seen":"2023-04-06T21:34:37Z","last_seen":"2026-07-27T14:18:32.477132Z","times_seen":77151,"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.tradingview-widget.com/static/bundles/embed/49518.081f9637b94ee62a6e6f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.517Z","timestamp":1785154590517,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/49518.081f9637b94ee62a6e6f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b70-14e9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:20 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 86a4f94a69d02d205ec6181602ec9d8c\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":5353,"size_decoded":1929,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (5353), with no line terminators","md5":"d7a9f60b8ae2b7f3ca613c9e5b32c1be","sha1":"96edacc2eaf0e2cf90be1c863bcdf71fce951db7","sha256":"62105e79933d1412be7816bc118e665a99e90c3d846b5e3282d35372ec43018a","sha512":"be8a4d2d71a8547c7dd2aa502370f205f86911c5def4816629a2da7cd82f3786e92dd78ecc49e89a9af136891ed67fb875ef4fcddcc07ccc31b5f51d430f4da3","ssdeep":"48:DVGIKVGI0GIKZGIpGIoVGIRGIqGIuGIjVGI0QVGIZGITZGI0LGI06GIHGI8GI/G7:D81CWQbawWxrGn5W+orw57Ur6Mpk98","tlshash":"12b1f676e8201aa675ba5a192380fad45034d022bf219ffff3c568168dcf1c6789381d","first_seen":"2026-03-24T10:46:27.490841Z","last_seen":"2026-07-27T14:22:59.703671Z","times_seen":1647,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8xLTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fMi02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzMtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV80LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1fNS02YW5NOnZhcigtLWNvbG9yLXdoaXRlKTstLV82LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fNy02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tXzgtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLV85LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzEtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV8yLTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1fMy02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzQtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLV81LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1fNi02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzctNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV84LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1fOS02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1jb250cm9sLWNoZWNrYm94ey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0udHYtY29udHJvbC1jaGVja2JveC0taW4tYWN0aW9uc3ttYXgtd2lkdGg6NTAlfUBtZWRpYSAobWF4LXdpZHRoOjQ3OXB4KXsudHYtY29udHJvbC1jaGVja2JveC0taW4tYWN0aW9uc3ttYXgtd2lkdGg6bm9uZX19LnR2LWNvbnRyb2wtY2hlY2tib3gsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtY29udHJvbC1jaGVja2JveC0tbm93cmFwLC50di1jb250cm9sLWNoZWNrYm94X19sYWJlbC0tbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1jaGVja2JveF9faW5wdXR7aGVpZ2h0OjE4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtib3JkZXItcmFkaXVzOjNweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZTt3aWR0aDoxOHB4fS50di1jb250cm9sLWNoZWNrYm94X19ib3g6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOjNweDtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTlweDttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7dG9wOjUwJTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlLGJvcmRlci1yYWRpdXMgLjM1cyBlYXNlfS50di1jb250cm9sLWNoZWNrYm94X19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzAtNmFuTSk7Ym9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHg7Ym94LXNpemluZzpib3JkZXItYm94O2luc2V0LWlubGluZS1zdGFydDowO3RvcDowO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4zNXMgZWFzZX0udHYtY29udHJvbC1jaGVja2JveF9fYm94IHN2Z3tkaXNwbGF5OmJsb2NrO2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLXRvcDotNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEycHg7c3Ryb2tlOiMwMDAwO3RyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2l0aW9uOnN0cm9rZSAuMzVzIGVhc2UgMW1zLHRyYW5zZm9ybSAuMzVzIGVhc2UgMW1zfS50di1jb250cm9sLWNoZWNrYm94X19sYWJlbHttYXJnaW4taW5saW5lLWVuZDoxMHB4O3doaXRlLXNwYWNlOm5vcm1hbH0udHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwtLXR3by1saW5lc3t3aWR0aDoxNTVweH0udHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwtLW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsLS1saWwtbGluZS1oZWlnaHR7bGluZS1oZWlnaHQ6MTZweDttYXgtd2lkdGg6ODAlO21pbi13aWR0aDo0NSV9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsKy50di1jb250cm9sLWNoZWNrYm94e21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtY29udHJvbC1jaGVja2JveCsudHYtY29udHJvbC1jaGVja2JveF9fbGFiZWx7bWFyZ2luLWlubGluZS1lbmQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHg7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDFleCAtIDI4cHgpfS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9fYm94LC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94e3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3J9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLWNoZWNrYm94OmhvdmVyIC50di1jb250cm9sLWNoZWNrYm94X19ib3h7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcn19LnR2LWNvbnRyb2wtY2hlY2tib3g6YWN0aXZlIC50di1jb250cm9sLWNoZWNrYm94X19ib3g6YmVmb3JlLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm9yZGVyLXJhZGl1c31AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDpiZWZvcmV7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLGJvcmRlci1yYWRpdXN9fS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVyLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVye3dpbGwtY2hhbmdlOmJvcmRlci1jb2xvcn1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzEtNmFuTSk7d2lsbC1jaGFuZ2U6Ym9yZGVyLWNvbG9yfX0udHYtY29udHJvbC1jaGVja2JveDphY3RpdmUgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlciwudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzItNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8zLTZhbk0pfS50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLWNoZWNrYm94X19ib3gsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlciwudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0udHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJTt0cmFuc2Zvcm06c2NhbGUoMCl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzQtNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveCBzdmd7c3Ryb2tlOnZhcigtLV81LTZhbk0pO3RyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2l0aW9uLWRlbGF5Ojg3LjVtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTt3aWxsLWNoYW5nZTpzdHJva2UsdHJhbnNmb3JtfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1jaGVja2JveDpob3ZlciAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94e2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzYtNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzctNmFuTSl9fS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94LC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cy12aXNpYmxlOmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV84LTZhbk0pfS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVyLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cy12aXNpYmxlOmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzktNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0W2Rpc2FibGVkXSsudHYtY29udHJvbC1jaGVja2JveF9fYm94e29wYWNpdHk6LjV9LnR2LWNvbnRyb2wtY2hlY2tib3guaS1lcnJvciAudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCHYPEH.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.871Z","timestamp":1785154591871,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCHYPEH.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"persimmontrades.com/frontmain/img/cta3.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.358Z","timestamp":1785154589358,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/cta3.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 170026\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":170026,"size_decoded":170293,"mime_type":"image/png","magic":"PNG image data, 1920 x 200, 8-bit colormap, non-interlaced","md5":"c693928f0e8004920ff9f9979cfcedb3","sha1":"da988c5e309914acf52ef15aef4889103c729e87","sha256":"d26256e665a436594d8eb33c58ca6e61ceeab38490a32831a73f049ebfa55f11","sha512":"f70ba433ad910f3c29e8fd33ca42fdb3cf40b683713f3f2f89ae7fdb625aa32a0db3660ffdfafe79fa550b728ffcf8859e53e4ae4abbee9f158d975b43a2be7f","ssdeep":"3072:taVRH1L4jbjqt5n4CW3hTnBzuZM24QKRNuv+w6Uce/xHPjR:cVb4jib4CW3hTRuZM2NKRNuv+nUH/xH1","tlshash":"6ef32342d244722ae87c1739460b8a1ae65cd5fce22f0ecfd865ca16f171dfe22762d1","first_seen":"2025-07-30T23:06:04.122415Z","last_seen":"2026-07-27T12:17:29.169787Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":93,"receive":8,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/translate.google.com/translate_a/elementa0d8.html?cb=googleTranslateElementInit","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.925Z","timestamp":1785154589925,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /translate.google.com/translate_a/elementa0d8.html?cb=googleTranslateElementInit HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1459,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-27T14:18:32.432843Z","times_seen":144288,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":29,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":29,"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/62681.6883c4b17e6a89e4b87f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.534Z","timestamp":1785154590534,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/62681.6883c4b17e6a89e4b87f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b74-26d5\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:24 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b0fb174625413fe860722a594829d96b\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9941,"size_decoded":2934,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9941), with no line terminators","md5":"96701d95e8d00efdc09eb9279b871453","sha1":"f12c6f203f7a76e20a0c25bccfbc5f43206b0eda","sha256":"88302743f0b5328d7e90f7e88b47561bc485ab5932193d4dc7755f1bf64cce3d","sha512":"046a3817646c8aca396aad13fdab96075c8699a9d511bc761475ed9e6337ee12877ed966bdd5a60f6361578d948dec9b2e08e3aed8fd78bda1cf8782568c89fa","ssdeep":"192:wCNtGzkUD/UlZ9wmjuMhT27zNJbg9spNHXRWgCWCoTwtsyYIOi7wYdg6YN:Ep89spNHXRWVWnTwtsyYVkwYdg6YN","tlshash":"5b22fab2d16265a76213f62de3e1fe09e337e3939a131fdee223845dc4c6ad94138049","first_seen":"2026-03-24T19:47:05.242316Z","last_seen":"2026-07-27T14:22:59.623491Z","times_seen":1725,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojZmZmZmZmZDk7LS1fMTIteVR5eTojZmZmMDstLV8xMy15VHl5OiNmZmYwOy0tXzE0LXlUeXk6I2YwZjNmYTAwfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojMDAwMDAwZDk7LS1fMTIteVR5eTojMDAwMDstLV8xMy15VHl5OiMwMDAwOy0tXzE0LXlUeXk6IzEzMTcyMjAwfS50di10YWJze2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NTNweDtsaW5lLWhlaWdodDo1M3B4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50di10YWJzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcHg7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlfS50di10YWJzOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9LnR2LXRhYnMuaS1sb2FkZWR7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1jb250ZW50e3BhZGRpbmc6MCA2cHh9LnR2LXRhYnNfX3Njcm9sbC13cmFwe2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7b3ZlcmZsb3cteDpzY3JvbGw7b3ZlcmZsb3cteTpoaWRkZW47cGFkZGluZy1ib3R0b206MTAwcHg7cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCU7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LnR2LXRhYnNfX3Njcm9sbC1ib3h7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di10YWJzLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MCAxNnB4fS50di10YWJzX19hZGRpdGlvbmFsLWluZm97Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7dHJhbnNpdGlvbjppbmhlcml0fS50di10YWJzX190YWJ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDo1M3B4O2xpbmUtaGVpZ2h0OjUzcHg7bWFyZ2luOjA7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaXppbmc6Ym9yZGVyLWJveDt0cmFuc2l0aW9uOmNvbG9yIC4zNXMgZWFzZX0udHYtdGFic19fdGFiOmFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX190YWI6aG92ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fdGFiLmktYWN0aXZlLC50di10YWJzX190YWI6YWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnNfX3RhYjpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9fS50di10YWJzX190YWIuaS1kaXNhYmxlZCwudHYtdGFic19fdGFiOmRpc2FibGVkLC50di10YWJzX190YWJbZGlzYWJsZWRde2NvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Y3Vyc29yOmRlZmF1bHR9LnR2LXRhYnNfX3RhYi0tbm8tcGFkZGluZ3twYWRkaW5nOjB9LnR2LXRhYnNfX3RhYi0tcmlnaHQtc2hpZnRlcnttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99LnR2LXRhYnNfX3RhYi0taWNvbi10YWJ7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXJ7aGVpZ2h0OjQ2cHh9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie2ZvbnQtc2l6ZToxNnB4O2hlaWdodDo0NnB4O2xpbmUtaGVpZ2h0OjQ2cHg7cGFkZGluZy1pbmxpbmUtZW5kOjE2cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTZweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiOmhvdmVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpob3ZlciAudHYtdGFic19fYWRkaXRpb25hbC1pbmZve2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsKX19LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiLmktYWN0aXZle2N1cnNvcjpkZWZhdWx0fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZSwudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWIuaS1hY3RpdmUgLnR2LXRhYnNfX2FkZGl0aW9uYWwtaW5mb3tjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKX0udHYtdGFic19fc2xpZGVyLC50di10YWJzX190YWIuaS1hY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKTtib3R0b206MDtkaXNwbGF5OmJsb2NrO2hlaWdodDozcHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZX0udHYtdGFicy0tY29tcGFjdCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fc2Nyb2xsLWJveCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFie2hlaWdodDoyM3B4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWJ7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLmktbG9hZGVkLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNvbXBhY3QsLnR2LXRhYnMtLWNvbXBhY3QuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3h7cGFkZGluZy1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlci5pLWxvYWRlZCAudHYtdGFic19fc2Nyb2xsLWJveHtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwYWRkaW5nLWlubGluZS1zdGFydDoyMHB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXI6YmVmb3JlLC50di10YWJzLS1jb21wYWN0OmJlZm9yZXtib3R0b206MH0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFiOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE2cHh9LnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS5wYWdlLXdpZGUgLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie3BhZGRpbmctaW5saW5lLWVuZDoxNnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjE2cHh9LnBhZ2Utd2lkZSAudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDotMTZweH0ucGFnZS13aWRlIC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWIuaS1oaWRkZW46Zmlyc3QtY2hpbGQrLnR2LXRhYnNfX3RhYnttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX19zbGlkZXIsLnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntib3R0b206MDtoZWlnaHQ6MXB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtdGFicy0td2l0aC13cmFwLXBhZGRpbmctbW9iaWxlIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDowO3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLXdpdGgtd3JhcC1wYWRkaW5nLW1vYmlsZSAudHYtdGFic19fdGFiOm50aC1sYXN0LWNoaWxkKDIpe21hcmdpbi1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtZW5kOjB9fS50di10YWJzLS1uby1tYXJnaW4gLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLW5vLW1hcmdpbiAudHYtdGFic19fdGFiOmxhc3QtY2hpbGR7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcHthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC15VHl5KTtib3JkZXItcmFkaXVzOjI1cHg7ZGlzcGxheTpmbGV4O2hlaWdodDoyM3B4O3BhZGRpbmc6MCAxNHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLXlUeXkpfX0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFie2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEzcHg7cGFkZGluZzowIDZweH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFiLmktYWN0aXZlIC50di10YWJzX193cmFwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzIteVR5eSk7Y29sb3I6dmFyKC0tXzQteVR5eSl9LnR2LXRhYnMtLW5vLWJvcmRlcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1uby1wYWRkaW5nLC50di10YWJzLS1uby1wYWRkaW5nLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MH0udHYtdGFicy0tbm8tcGFkZGluZyAudHYtdGFic19fdGFie3BhZGRpbmc6MCAxNnB4fS50di10YWJzLS1uby1wYWRkaW5nIC50di10YWJzX190YWIudHYtdGFic19fdGFiLS1uby1wYWRkaW5ne3BhZGRpbmc6MH0udHYtdGFicy5pLWxvYWRlZCAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2NvbnRlbnQ6bm9uZTtkaXNwbGF5Om5vbmV9LnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnNfX3JpZ2h0LWFycm93e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym90dG9tOjA7Ym94LXNpemluZzppbml0aWFsO2N1cnNvcjpwb2ludGVyO2RpcmVjdGlvbjpsdHI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCA1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7d2lkdGg6MzZweH0udHYtdGFic19fbGVmdC1hcnJvdzphZnRlciwudHYtdGFic19fcmlnaHQtYXJyb3c6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXRhYnNfX2xlZnQtYXJyb3cgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEycHg7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb246ZmlsbCAuMzVzIGVhc2U7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjEycHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX19sZWZ0LWFycm93OmhvdmVyIHN2ZywudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tXzUteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fbGVmdC1hcnJvdzphY3RpdmUgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tXzYteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvd3tqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvd3tib3R0b206M3B4O21hcmdpbi10b3A6LTFweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93IHN2ZywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7dmVydGljYWwtYWxpZ246dG9wfS50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktYmcpLHZhcigtLV8xMS15VHl5KSx2YXIoLS1fMTIteVR5eSkpO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19sZWZ0LWFycm93Lmktc2xpZGVke3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0udHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gbGVmdCx2YXIoLS1jb2xvci1ib2R5LWJnKSx2YXIoLS1fMTEteVR5eSksdmFyKC0tXzEyLXlUeXkpKTtyaWdodDowO3RleHQtYWxpZ246cmlnaHQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvdy5pLXNsaWRlZHt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fcmlnaHQtYXJyb3d7d2lkdGg6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93LC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e3dpZHRoOjQ1cHh9LnR2LXRhYnMtLXNlYXJjaGJhcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6ODBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6NTRweH19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV83LXlUeXkpO2JvdHRvbTowfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZCk7Ym90dG9tOjB9LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdyBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3cgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6LjY1fS50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX2xlZnQtYXJyb3c6YWN0aXZlIHN2ZywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdzpob3ZlciBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fOC15VHl5KSx2YXIoLS1fOS15VHl5KSx2YXIoLS1fMTAteVR5eSkpfS50di10YWJzLS1zZWFyY2hiYXJfc3ViLC50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19zY3JvbGwtYm94e2hlaWdodDo0MHB4O2xpbmUtaGVpZ2h0OjQwcHh9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX2xlZnQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzI2NWFlYiAwLCMyNjVhZWIgMTUlLCMyNjVhZWIwMCl9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMyNjVhZWIwMCAwLCMyNjVhZWIgODUlLCMyNjVhZWIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fbGVmdC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1jb2xvci1oZWFkZXItYmcpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA0NSUsdmFyKC0tXzEzLXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdmFyKC0tXzEzLXlUeXkpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA1NSUsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSAxMDAlKX0udHYtdGFicy0tc2VhcmNoYmFyLXByb2ZpbGUgLnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnMtLXNlYXJjaGJhci1wcm9maWxlIC50di10YWJzX19yaWdodC1hcnJvd3tjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAwLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSA0NSUsdmFyKC0tXzE0LXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fMTQteVR5eSkgMCx2YXIoLS1jb2xvci1ib2R5LXNlY29uZGFyeS1iZykgNTUlLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAxMDAlKX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.139Z","timestamp":1785154591139,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785154591.1.1785154591..b177bc9a-34b2-4836-9972-6f558777cbde..f8ff18cc-c06f-46ed-8329-31a0a2ab1153.1785154591101.1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-dc9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 90e9a8ae0a68a148909a6ae49258e609\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":3529,"size_decoded":2690,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1999)","md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-27T14:18:36.428394Z","times_seen":1506,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/25809.8df4ea7b099adc15d066.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.488Z","timestamp":1785154590488,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/25809.8df4ea7b099adc15d066.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 79\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b77-4f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:27 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:18:38\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e9664b62b41326983a4d6b9e5e186a01\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":79,"size_decoded":863,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"7c7d94ea3629744afc48b5d44b546a28","sha1":"f014604b1a12e092b9cb7395e56fdf7929a7cd5a","sha256":"a5a1f3871d96fa0cc01ddac6e16c91edeadcf090b690c328b8340fb83b60c906","sha512":"7a998a6a1bdb38b0eaa4f4f0499d7685c0d5fb2affcff597aef1845818e97ff07300b41a11826f8318037faf31b66795166b2da091779c327d84dc34ed48b5bf","ssdeep":"","tlshash":"bda01215342909b234118a18a885478241d429209658160ce0d0101e80230a0001000c","first_seen":"2026-03-24T10:46:27.312551Z","last_seen":"2026-07-27T14:14:25.431055Z","times_seen":357,"resource_available":false,"data":"LnByZXZpZXdXcmFwcGVyLXZpUE9HMmM2ey0tdWktbGliLWltYWdlLWNhcmQtcHJldmlldy1ib3JkZXItcmFkaXVzOjhweDtvcmRlcjowfQ=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70364.644cb93441690c829ab9.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.530Z","timestamp":1785154590530,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/70364.644cb93441690c829ab9.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-2ba\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:11:29\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 18d63e4deb342b8b37cc2851deacedb8\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":698,"size_decoded":997,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (698), with no line terminators","md5":"bd271563b2387cb959a02a85476d20fc","sha1":"0e477a102b7f0c4aaac868f1244ee975d076a676","sha256":"a83a53bf9ef309ae736122159bb8a92c91735729ea3ec8a987d276eb936f787c","sha512":"c3dca5bcc3a0566d7726e04a16dfa6943da394b3d4663ee7721db0397913c34ec2aecbd0e061d4c03ccc091d390facff787c481c5ac209516320eb33350e9bdb","ssdeep":"","tlshash":"1d01ec6b92e8b15320ff7e3ca96cc2d92570da624f84a6ec719c3aa487456754610934","first_seen":"2026-03-31T19:29:24.868047Z","last_seen":"2026-07-27T14:22:59.705636Z","times_seen":584,"resource_available":false,"data":"LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNN3tvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHh9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSk7Ym9yZGVyOjFweCBzb2xpZCAjMDAwMDtib3JkZXItcmFkaXVzOjNweH0ud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNy53cmFwcGVyLVBRNU9fMU03LnRvdWNoLVBRNU9fMU03Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.554Z","timestamp":1785154590554,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/65862.95764752c09f3f18f890.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-8593\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 57ba4c68d5483672622ac9e595bb36e2\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":34195,"size_decoded":11853,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (13834)","md5":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-27T14:18:36.427118Z","times_seen":1638,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNjU4NjJdLHszNzcyMjYoZSx0LG8pe28uZCh0LHtvbldpZGdldDooKT0+c30pO2NvbnN0IHI9bmV3IE1hcDtmdW5jdGlvbiBzKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxvPWAke3R9JHtlfWA7cmV0dXJuIHIuaGFzKG8pfHxyLnNldChvLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG8paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IHI9WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxzPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IF87Zm9yKGxldCBlPXIubGVuZ3RoLTE7ZT49MDtlLS0paWYoXz1uZXcgUmVnRXhwKHJbZV0pLF8udGVzdChzKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksci5nZXQobyk/PyExfX0sMzAwMjg2KGUsdCxvKXsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbmV3IGNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fdGVzdD1lW3RdPXt9fXByb3ZpZGUoZSx0KXt0aGlzLl90ZXN0W2VdPXR9fSh3aW5kb3csInFhR2xvYmFscyIpfSw1ODc0MzYoZSx0LG8pe2Z1bmN0aW9uIHIoZSx0LG8scixzKXtsZXQgXz0iIjtpZihyPXI/IjsgcGF0aD0iK3I6IiIscz1zPyI7IGRvbWFpbj0iK3M6IiIsbyl7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbyo2MCo2MCoxZTMpLF89IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIF89IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrXytzK3J9ZnVuY3Rpb24gcyhlKXtjb25zdCB0PWUrIj0iLG89ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxvLmxlbmd0aDtlKyspe2xldCByPW9bZV07Zm9yKDsiICI9PT1yLmNoYXJBdCgwKTspcj1yLnN1YnN0cmluZygxLHIubGVuZ3RoKTtpZigwPT09ci5pbmRleE9mKHQpKXJldHVybiByLnN1YnN0cmluZyh0Lmxlbmd0aCxyLmxlbmd0aCl9cmV0dXJuIG51bGx9by5kKHQse2dldDooKT0+cyxzZXQ6KCk9PnJ9KX0sOTQ4MzgwKGUsdCxvKXtvLmQodCx7RGVsZWdhdGU6KCk9Pl99KTtjb25zdCByPSgwLG8oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uRGVsZWdhdGUiKTtmdW5jdGlvbiBzKGUpe3JldHVybiFlLnNpbmdsZVNob3R9Y2xhc3MgX3tjb25zdHJ1Y3Rvcigpe3RoaXMuZmlyZT10aGlzLl9maXJlSW1wbC5iaW5kKHRoaXMpLHRoaXMuX2xpc3RlbmVycz1bXX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX2xpc3RlbmVycy5wdXNoKHtvYmplY3Q6ZSxtZW1iZXI6dCxzaW5nbGVTaG90OiEhbyxza2lwOiExfSl9dW5zdWJzY3JpYmUoZSx0KXtmb3IobGV0IG89MDtvPHRoaXMuX2xpc3RlbmVycy5sZW5ndGg7KytvKXtjb25zdCByPXRoaXMuX2xpc3RlbmVyc1tvXTtpZihyLm9iamVjdD09PWUmJnIubWVtYmVyPT09dCl7ci5za2lwPSEwLHRoaXMuX2xpc3RlbmVycy5zcGxpY2UobywxKTticmVha319fXVuc3Vic2NyaWJlQWxsKGUpe2ZvcihsZXQgdD10aGlzLl9saXN0ZW5lcnMubGVuZ3RoLTE7dD49MDstLXQpe2NvbnN0IG89dGhpcy5fbGlzdGVuZXJzW3RdO28ub2JqZWN0PT09ZSYmKG8uc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKHQsMSkpfX1kZXN0cm95KCl7dGhpcy5fbGlzdGVuZXJzPVtdfV9maXJlSW1wbCguLi5lKXtjb25zdCB0PXRoaXMuX2xpc3RlbmVyczt0aGlzLl9saXN0ZW5lcnM9dGhpcy5fbGlzdGVuZXJzLmZpbHRlcihzKTtjb25zdCBvPXQubGVuZ3RoO2ZvcihsZXQgcz0wO3M8bzsrK3Mpe2NvbnN0IG89dFtzXTtpZighby5za2lwKXRyeXtvLm1lbWJlci5hcHBseShvLm9iamVjdHx8bnVsbCxlKX1jYXRjaChlKXtyLmxvZ0Vycm9yKGAke2UmJihlLnN0YWNrfHxlLm1lc3NhZ2UpfWApfX19fX0sNTM0NDQwKGUsdCxvKXtvLmQodCx7bnVtT2ZEZWNpbWFsUGxhY2VzOigpPT5ffSk7dmFyIHI9byg3MTI3NDUpLHM9by5uKHIpO2Z1bmN0aW9uIF8oZSl7cmV0dXJuKG5ldyhzKCkpKGUpLnRvRml4ZWQoKS5zcGxpdCgiLiIpWzFdfHwiIikubGVuZ3RofX0sMjMyMzY0KGUsdCxvKXtvLmQodCx7V2F0Y2hlZFZhbHVlOigpPT5ffSk7Y29uc3Qgcj0oMCwKbygyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiBzKGUpe3IubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3MgX3tjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihvLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgcj1vLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihvLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmciYmby5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO28uX3ZhbHVlPWU7Y29uc3QgXz1vLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgaT0wO2ZvcihsZXQgdD0wO3Q8Xy5sZW5ndGg7dCsrKXtfW3RdLm9uY2UmJihvLl9saXN0ZW5lcnMuc3BsaWNlKHQtaSwxKSxpKyspO3RyeXtfW3RdLmNiKGUpfWNhdGNoKGUpe3MoZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBvPSEhdCYmISF0Lm9uY2Uscj0hIXQmJiEhdC5jYWxsV2l0aExhc3QsXz10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKHImJl8uaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShfLl92YWx1ZSl9Y2F0Y2goZSl7cyhlKX1pZihvKXJldHVybn1fLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBvPXQuX2xpc3RlbmVycztmb3IobGV0IHI9by5sZW5ndGg7ci0tOylvW3JdLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG9bcl0uY2IhPT1lJiZudWxsIT09ZXx8by5zcGxpY2UociwxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxvKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbygpO2NvbnN0IHI9cz0+e3QocykmJihlLnVuc3Vic2NyaWJlKHIpLG8oKSl9O2Uuc3Vic2NyaWJlKHIse2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe3MoZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgaSh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBpIGV4dGVuZHMgX3tjb25zdHJ1Y3RvcihlLHQsbyl7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW99ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe3MoZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7cmV0dXJuIHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZXx8KHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZT17Li4uc3VwZXIucmVhZG9ubHkoKSxkZXN0cm95OigpPT50aGlzLmRlc3Ryb3koKSxyZWFkb25seSgpe3JldHVybiB0aGlzfX0pLHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZX1yZWxlYXNlKCl7dGhpcy5fd2Vha1JlZmVyZW5jZXx8c3VwZXIucmVsZWFzZSgpfX19LDU5ODkyMihlLHQsbyl7by5kKHQse2Zvcm1hdE51bWJlcjooKT0+aSxwYXJzZU51bWJlcjooKT0+bn0pO3ZhciByPW8oNzEyNzQ1KSxzPW8oNjYzMDQ2KSxfPW8oMTE1MjkzKTtmdW5jdGlvbiBpKGUsdCxvLHMsXyl7aWYoIU51bWJlci5pc0Zpbml0ZShlKSlyZXR1cm5gJHtlfWA7Y29uc3QgaT0tMT09PU1hdGguc2lnbihlKT8iLSI6IiI7ZT1NYXRoLmFicyhlKTtsZXQgYT12b2lkIDA9PT1vP2UudG9TdHJpbmcoKTplLnRvRml4ZWQobyk7aWYoYS5pbmNsdWRlcygiZSIpKXtpZighcylyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gO3tjb25zdCBvPW5ldyByLkJpZyhlKTtpZihhPW8ubHQoMSk/by50b0ZpeGVkKCk6by50b1N0cmluZygpLGEuaW5jbHVkZXMoImUiKSlyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gfX1jb25zdCBuPWEuc3BsaXQoIi4iKSxsPW5bMF07bGV0IGM9blsxXTtjb25zdCBkPWZ1bmN0aW9uKGUsdCl7bGV0IG89ZS5sZW5ndGg7Y29uc3Qgcj1bXTtmb3IoO28+MDspci51bnNoaWZ0KGUuc2xpY2UoTWF0aC5tYXgoby0zLDApLG8pKSxvLT0zO3JldHVybiByLmpvaW4odCl9KGwsdC5ncm91cGluZ1NlcGFyYXRvcikKO3JldHVybiB2b2lkIDAhPT1vJiYoYz0wPT09bz92b2lkIDA6ZS50b0ZpeGVkKG8pLnNsaWNlKC1vKSksdm9pZCAwIT09XyYmdm9pZCAwIT09YyYmKGM9ZnVuY3Rpb24oZSx0KXtsZXQgbz1lLmxlbmd0aC0xO2ZvcihsZXQgcj1vO3I+PXQmJiIwIj09PWVbcl07ci09MSlvLT0xO3JldHVybiBlLnNsaWNlKDAsbysxKX0oYyxfKSksYz9gJHtpfSR7ZH0ke3QuZGVjaW1hbFNpZ259JHtjfWA6YCR7aX0ke2R9YH1jb25zdCBhPSgwLHMuZGVmYXVsdCkoKGU9Pntjb25zdCB0PWUucmVwbGFjZSgvWy1bXF17fSgpKis/LixcXF4kfCNcc10vZywiXFwkJiIpO3JldHVybiBuZXcgUmVnRXhwKHQsImdtIil9KSk7ZnVuY3Rpb24gbihlLHQpe2lmKC9eKE5hTnxbK3wtXT9JbmZpbml0eSkkLy50ZXN0KGUpKXJldHVybiBwYXJzZUZsb2F0KGUpO2U9KDAsXy5zdHJpcExUUk1hcmtzKShlKTtjb25zdCBvPWEodC5ncm91cGluZ1NlcGFyYXRvcik7cmV0dXJuIG8mJihlPWUucmVwbGFjZShvLCIiKSksZT1lLnJlcGxhY2UodC5kZWNpbWFsU2lnbiwiLiIpLC9eKFwrfC0pP1xkKyhcLlxkK3xcLik/KGUoXCt8LSk/XGQrKT8kLy50ZXN0KGUpP3BhcnNlRmxvYXQoZSk6TmFOfX0sNTQ2NDg1KGUsdCxvKXtvLmQodCx7Z2V0TnVtYmVyRm9ybWF0OigpPT5kfSk7bGV0IHI9bnVsbDt2YXIgcz1vKDg1NjMyNCk7ZnVuY3Rpb24gXyhlLHQpe3JldHVybntncm91cGluZ1NlcGFyYXRvcjplLGRlY2ltYWxTaWduOnR9fWNvbnN0IGk9XygiLCIsIi4iKSxhPV8oIi4iLCIsIiksbj1fKCLigK8iLCIsIiksbD1fKCIiLCIuIiksYz1uZXcgTWFwKFtbImVuIixpXSxbInRoIixpXSxbImphIixpXSxbImtvIixpXSxbInpoIixpXSxbInpoX1RXIixpXSxbImFyIixpXSxbImhlX0lMIixpXSxbIm1zX01ZIixpXSxbInZpIixpXSxbImRlIixhXSxbImVzIixhXSxbIml0IixhXSxbInRyIixhXSxbInB0IixhXSxbImlkX0lEIixhXSxbImZyIixuXSxbInBsIixuXSxbInJ1IixuXV0pO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIGU/bDoodD1jLmdldCgoMCxzLmdldExhbmd1YWdlKSgpKXx8bCxyP3IodCk6dCk7dmFyIHR9fSw3NTU2MjcoZSx0LG8pe28uZCh0LHtQcmljZUZvcm1hdHRlcjooKT0+eX0pO3ZhciByPW8oNjAxODQxKTtmdW5jdGlvbiBzKGUsdCxvLHIpe2xldCBzPTA7aWYoZT4wJiZ0PjApe2xldCB0PWU7Zm9yKG8mJnImJih0Lz1yKTt0PjE7KXQvPTEwLHMrK31yZXR1cm4gc312YXIgXz1vKDcxMjc0NSksaT1vKDgyMjQzMSksYT1vKDU5ODkyMiksbj1vKDU0NjQ4NSksbD1vKDc4MzI1NCksYz1vKDEzODYzOCksZD1vKDExNTI5MyksdT1vKDUzNTMwKTtmdW5jdGlvbiBtKGUsdCxvKXtjb25zdCByPSgwLGMuZW5zdXJlTm90TnVsbCkoKDAsdS5nZXRNaW5UaWNrRGF0YSkoe3ByaWNlOm8sbWluVGljazpudWxsLHZhcmlhYmxlTWluVGlja0RhdGE6dCxzaG91bGRDaGVja0ZvckVxdWFsaXR5OiEwfSkpLHtwcmljZVNjYWxlOl8sbWluTW92ZTppLG1pbk1vdmUyOmF9PXI7cmV0dXJue3ByaWNlU2NhbGU6XyxtaW5Nb3ZlOmksZnJhY3Rpb25hbExlbmd0aDpzKF8saSxlLGEpfX1jbGFzcyBoe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlckVycm9ycz17Y3VzdG9tOmwudChudWxsLHZvaWQgMCxvKDYxNjE4KSksZnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oOTY4ODE1KSksc2Vjb25kRnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oODUwMjk4KSl9O2NvbnN0e3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6cyxpZ25vcmVNaW5Nb3ZlOl8sdmFyaWFibGVNaW5UaWNrOmksZnJhY3Rpb25hbExlbmd0aDphfT1lO3RoaXMuX3ByaWNlU2NhbGU9dCx0aGlzLl9taW5Nb3ZlPXIsdGhpcy5fbWluTW92ZTI9cyx0aGlzLl9pZ25vcmVNaW5Nb3ZlPV8sdGhpcy5fZnJhY3Rpb25hbExlbmd0aD1hLHRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGE9dm9pZCAwPT09aT92b2lkIDA6KDAsdS5tYWtlVmFyaWFibGVNaW5UaWNrRGF0YSkoe3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6c30saSl9Zm9ybWF0SW1wbChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHNpZ25OZWdhdGl2ZTpyPSEwLHRhaWxTaXplOnMsY3V0RnJhY3Rpb25hbEJ5UHJlY2lzaW9uOl89ITEsdXNlUnRsRm9ybWF0Omk9ITAsdmFyaWFibGVNaW5UaWNrRGF0YVByaWNlOmEsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om4sbm9FeHBvbmVudGlhbEZvcm06bCxyZW1vdmVBbGxFbmRpbmdaZXJvczpjfT10O2xldCB1PSIiO2U8MD91PSExPT09cj8iIjoi4oiSIjplJiYhMD09PW8mJih1PSIrIik7Y29uc3QgbT10aGlzLl9mb3JtYXRVbnNpZ25lZChNYXRoLmFicyhlKSx7dGFpbFNpemU6cyxjdXRGcmFjdGlvbmFsQnlQcmVjaXNpb246Xyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6YSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixub0V4cG9uZW50aWFsRm9ybTpsLHJlbW92ZUFsbEVuZGluZ1plcm9zOmN9KSxoPSIwIj09PW0/bTp1K207cmV0dXJuIGk/KDAsZC5mb3JjZUxUUlN0cikoaCk6aH1wYXJzZShlLHQpe3JldHVybiIrIj09PShlPShlPSgwLGQuc3RyaXBMVFJNYXJrcykoZSkpLnJlcGxhY2UoIuKIkiIsIi0iKSlbMF0mJihlPWUuc3Vic3RyaW5nKDEpKSx0aGlzLl9wYXJzZVVuc2lnbmVkKGUsdCl9X3JlbW92ZUVuZGluZ1plcm9zKGUsdCl7Zm9yKGxldCBvPTA7bzx0JiYiMCI9PT1lW2UubGVuZ3RoLTFdO28rKyllPWUuc3Vic3RyaW5nKDAsZS5sZW5ndGgtMSk7cmV0dXJuIGV9fWNsYXNzIGcgZXh0ZW5kcyBoe2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LG5vRXhwb25lbnRpYWxGb3JtOm99PWU7dGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0PXQsdGhpcy5fbm9FeHBvbmVudGlhbEZvcm09b31oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4gMTA9PT10aGlzLl9taW5Nb3ZlMn1fcGFyc2VVbnNpZ25lZChlLHQpe3JldHVybiB0aGlzLl9wYXJzZUFzRGVjaW1hbChlLHQpfV9mb3JtYXRVbnNpZ25lZChlLHQpewpjb25zdHt0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyPSExLHZhcmlhYmxlTWluVGlja0RhdGFQcmljZTpzLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YT0hMX09dCxuPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLGZyYWN0aW9uYWxMZW5ndGg6dGhpcy5fZnJhY3Rpb25hbExlbmd0aCx0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YX07cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGEmJihPYmplY3QuYXNzaWduKG4sbSghMSx0aGlzLl92YXJpYWJsZU1pblRpY2tEYXRhLHM/P24ucHJpY2UpKSx0aGlzLl9pZ25vcmVNaW5Nb3ZlJiYobi5taW5Nb3ZlPTEpKSx0aGlzLl9mb3JtYXRBc0RlY2ltYWwobil9X2Zvcm1hdEFzRGVjaW1hbChlKXtjb25zdHtwcmljZTp0LHByaWNlU2NhbGU6byxtaW5Nb3ZlOnIsZnJhY3Rpb25hbExlbmd0aDpzPTAsdGFpbFNpemU6bD0wLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpjLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpkPXRoaXMuX2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTp1PXRoaXMuX25vRXhwb25lbnRpYWxGb3JtLHJlbW92ZUFsbEVuZGluZ1plcm9zOm19PWUsaD0oMCxuLmdldE51bWJlckZvcm1hdCkoZCk7aWYodD49MWUyMSYmIXUpcmV0dXJuIHQudG9TdHJpbmcoKS5yZXBsYWNlKCIuIixoLmRlY2ltYWxTaWduKTtjb25zdCBnPU1hdGgucG93KDEwLGwpKm8vKGM/MTpyKSxwPTEvZztsZXQgYjtpZihnPjEpYj1NYXRoLmZsb29yKHQpO2Vsc2V7Y29uc3QgZT1NYXRoLnJvdW5kKHQvcCkqcDtiPTA9PT1NYXRoLnJvdW5kKCh0LWUpL3ApP2U6ZStwfWxldCB3PSIiO2lmKGc+MSl7bGV0IGU9Yz9uZXcgXy5CaWcodCkubXVsKGcpLnJvdW5kKHZvaWQgMCwwKS5taW51cyhuZXcgXy5CaWcoYikubXVsKGcpKS50b051bWJlcigpOnBhcnNlRmxvYXQoKE1hdGgucm91bmQodCpnKS1iKmcpLnRvRml4ZWQocykpO2U+PWcmJihlLT1nLGIrPTEpLGU9Yz9uZXcgXy5CaWcoZSkucm91bmQocywwKS50b051bWJlcigpOnBhcnNlRmxvYXQoZS50b0ZpeGVkKHMpKSpyO2NvbnN0IG89KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZSxzK2wpO2lmKCF1JiZ0PDEmJnM+PTEwJiZvLnN0YXJ0c1dpdGgoIjAwMDAiKSl7bGV0IGU9NDtmb3IobGV0IHQ9ZTt0PG8ubGVuZ3RoJiYiMCI9PT1vW3RdO3QrKyllKys7Y29uc3QgdD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLnNsaWNlKGUpLHMpO3JldHVybiIiPT09dD8iMCI6YDAke2guZGVjaW1hbFNpZ259JHt0fWUtJHtlfWB9Y29uc3QgYT10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLG0/by5sZW5ndGg6bCk7dz1hP2guZGVjaW1hbFNpZ24rYTphfWNvbnN0IHk9KDAsYS5mb3JtYXROdW1iZXIpKGIsaCx2b2lkIDAsdSk7cmV0dXJuIHkuaW5jbHVkZXMoImUiKT95Onkrd31fcGFyc2VBc0RlY2ltYWwoZSx0PXt9KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6b309dCxyPSgwLG4uZ2V0TnVtYmVyRm9ybWF0KSh0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXR8fG8pLHM9KDAsYS5wYXJzZU51bWJlcikoZSxyKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKHMpP3t2YWx1ZTpzLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChzKX06e2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX19Y29uc3QgcD0iJyIsYj1uZXcgUmVnRXhwKC9eKC0/KVswLTldKyQvKTtjbGFzcyB3IGV4dGVuZHMgaHtoYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4hMX1fcGFyc2VVbnNpZ25lZChlKXtyZXR1cm4gdGhpcy5fbWluTW92ZTI/dGhpcy5fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSk6dGhpcy5fcGFyc2VBc1NpbmdsZUZyYWN0aW9uYWwoZSl9X2Zvcm1hdFVuc2lnbmVkKGUsdCl7Y29uc3R7dGFpbFNpemU6byx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6cn09dCxzPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLG1pbk1vdmUyOnRoaXMuX21pbk1vdmUyLGZyYWN0aW9uYWxMZW5ndGg6KDAsYy5lbnN1cmVEZWZpbmVkKSh0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoKSx0YWlsU2l6ZTpvfTtyZXR1cm4gdm9pZCAwIT09dGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSYmT2JqZWN0LmFzc2lnbihzLG0oITAsdGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSxyPz9zLnByaWNlKSksdGhpcy5fZm9ybWF0QXNGcmFjdGlvbmFsKHMpfV9wYXJzZUFzU2luZ2xlRnJhY3Rpb25hbChlKXtsZXQgdD1iLmV4ZWMoZSk7aWYodCl7Y29uc3QgdD1wYXJzZUZsb2F0KGUpO3JldHVybnt2YWx1ZTp0LHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbCh0KX19aWYodD1uZXcgUmVnRXhwKCJeKC0/KShbMC05XSspXFwnKFswLTldKykkIikuZXhlYyhlKSx0KXtjb25zdCBlPSEhdFsxXSxvPXBhcnNlSW50KHRbMl0pLHI9dGhpcy5fcHJpY2VTY2FsZSxzPXRoaXMuX3BhdGNoRnJhY3RQYXJ0KHBhcnNlSW50KHRbM10pLDEscik7aWYocz49cnx8czwwKXJldHVybntlcnJvcjp0aGlzLl9mb3JtYXR0ZXJFcnJvcnMuZnJhY3Rpb24scmVzOiExfTtsZXQgXz1vK3MvcjtyZXR1cm4gZSYmKF89LV8pLHt2YWx1ZTpfLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChfKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSl7bGV0IHQ9Yi5leGVjKGUpO2lmKHQpe2NvbnN0IHQ9cGFyc2VGbG9hdChlKTtyZXR1cm57dmFsdWU6dCxyZXM6ITAsc3VnZ2VzdDp0aGlzLmZvcm1hdEltcGwodCl9fQppZih0PW5ldyBSZWdFeHAoIl4oLT8pKFswLTldKylcXCcoWzAtOV0rKVxcJyhbMC05XSspJCIpLmV4ZWMoZSksdCl7Y29uc3QgZT0hIXRbMV0sbz1wYXJzZUludCh0WzJdKSxyPXZvaWQgMCE9PXRoaXMuX21pbk1vdmUyJiZudWxsIT09dGhpcy5fbWluTW92ZTI/dGhpcy5fbWluTW92ZTI6TmFOLHM9dGhpcy5fcHJpY2VTY2FsZS9yLF89dGhpcy5fbWluTW92ZTIsaT10aGlzLl9wYXRjaEZyYWN0UGFydChwYXJzZUludCh0WzNdKSwxLHMpLGE9dGhpcy5fcGF0Y2hGcmFjdFBhcnQocGFyc2VJbnQodFs0XSksMixfKTtpZihpPj1zfHxpPDApcmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5mcmFjdGlvbixyZXM6ITF9O2lmKG51bGwhPV8mJmE+PV98fGE8MClyZXR1cm57ZXJyb3I6dGhpcy5fZm9ybWF0dGVyRXJyb3JzLnNlY29uZEZyYWN0aW9uLHJlczohMX07bGV0IG49bnVsbCE9Xz9vK2kvcythLyhzKl8pOk5hTjtyZXR1cm4gZSYmKG49LW4pLHt2YWx1ZTpuLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChuKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGF0Y2hGcmFjdFBhcnQoZSx0LG8pe2NvbnN0IHI9ezA6MCw1OjF9LHM9ezA6MCwyOjEsNToyLDc6M30sXz17MDowLDE6MSwyOjIsMzozLDU6NCw2OjUsNzo2LDg6N307cmV0dXJuIDI9PT1vP3ZvaWQgMD09PXJbZV0/LTE6cltlXTo0PT09bz92b2lkIDA9PT1zW2VdPy0xOnNbZV06OD09PW8mJjI9PT10P3ZvaWQgMD09PV9bZV0/LTE6X1tlXTplfV9mb3JtYXRBc0ZyYWN0aW9uYWwoZSl7Y29uc3R7cHJpY2U6dCx0YWlsU2l6ZTpvLHByaWNlU2NhbGU6cixtaW5Nb3ZlOnMsbWluTW92ZTI6XyxmcmFjdGlvbmFsTGVuZ3RoOmF9PWUsbj1yL3M7bGV0IGw9TWF0aC5mbG9vcih0KSxjPW8/TWF0aC5mbG9vcih0Km4pLWwqbjpNYXRoLnJvdW5kKHQqbiktbCpuO2M9PT1uJiYoYz0wLGwrPTEpO2xldCBkPSIiO2lmKG8pe2xldCBlPSh0LWwtYy9uKSpuO2U9TWF0aC5yb3VuZChlKk1hdGgucG93KDEwLG8pKSxkPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGUsbyksZD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhkLG8pfWlmKCFhKXRocm93IG5ldyBFcnJvcigiX2ZyYWN0aW9uYWxMZW5ndGggaXMgbm90IGNhbGN1bGF0ZWQiKTtsZXQgdT0iIjtpZihfKXtjb25zdCBlPWMlXztjPShjLWUpL187Y29uc3QgdD0oMCxpLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjLGEpLG89dGhpcy5fZ2V0RnJhY3RQYXJ0KGUsMixfKTt1PXQrcCtvfWVsc2UgYz10aGlzLl9nZXRGcmFjdFBhcnQoYywxLHIpLHU9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoYypzLGEpO3JldHVybiBsLnRvU3RyaW5nKCkrcCt1K2R9X2dldEZyYWN0UGFydChlLHQsbyl7Y29uc3Qgcj1bMCw1XSxzPVswLDIsNSw3XSxfPVswLDEsMiwzLDUsNiw3LDhdO3JldHVybiAyPT09bz92b2lkIDA9PT1yW2VdPy0xOnJbZV06ND09PW8/dm9pZCAwPT09c1tlXT8tMTpzW2VdOjg9PT1vJiYyPT09dD92b2lkIDA9PT1fW2VdPy0xOl9bZV06ZX19Y2xhc3MgeXtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InByaWNlIjtjb25zdHttaW5Nb3ZlMjp0LGZyYWN0aW9uYWw6byx2YXJpYWJsZU1pblRpY2s6XyxpZ25vcmVNaW5Nb3ZlOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmF9PWUsbj0oMCxyLmlzTnVtYmVyKShlLnByaWNlU2NhbGUpJiYoMCxyLmlzSW50ZWdlcikoZS5wcmljZVNjYWxlKT9lLnByaWNlU2NhbGU6MTAwO2lmKG48MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGJhc2UiKTtjb25zdCBsPSFlLm1pbk1vdmV8fGk/MTplLm1pbk1vdmUsYz1zKG4sbCxvLHQpLGQ9ey4uLmUsbWluTW92ZTpsLHByaWNlU2NhbGU6bixmcmFjdGlvbmFsTGVuZ3RoOmN9O3RoaXMuX3ByaWNlU2NhbGU9bix0aGlzLl9taW5Nb3ZlPWwsdGhpcy5fbWluTW92ZTI9dCx0aGlzLl9mcmFjdGlvbmFsPW8sdGhpcy5fdmFyaWFibGVNaW5UaWNrPV8sdGhpcy5faWdub3JlTWluTW92ZT1pLHRoaXMuX2ZyYWN0aW9uYWxMZW5ndGg9Yyx0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ9YSx0aGlzLl9ub0V4cG9uZW50aWFsRm9ybT1lLm5vRXhwb25lbnRpYWxGb3JtLHRoaXMuX2ltcGxlbWVudGF0aW9uPW8/bmV3IHcoZCk6bmV3IGcoZCl9aXNGcmFjdGlvbmFsKCl7cmV0dXJuISF0aGlzLl9mcmFjdGlvbmFsfXN0YXRlKCl7cmV0dXJue21pbk1vdmU6dGhpcy5fbWluTW92ZSxtaW5Nb3ZlMjp0aGlzLl9taW5Nb3ZlMixwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsdmFyaWFibGVNaW5UaWNrOnRoaXMuX3ZhcmlhYmxlTWluVGljayxpZ25vcmVNaW5Nb3ZlOnRoaXMuX2lnbm9yZU1pbk1vdmUsZnJhY3Rpb25hbDp0aGlzLl9mcmFjdGlvbmFsLG5vRXhwb25lbnRpYWxGb3JtOnRoaXMuX25vRXhwb25lbnRpYWxGb3JtfX1mb3JtYXRDaGFuZ2UoZSx0LG8pe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5mb3JtYXRJbXBsKGUtdCx7Li4ubyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6TWF0aC5taW4oTWF0aC5hYnMoZSksTWF0aC5hYnModCkpfSl9Zm9ybWF0KGUsdCl7cmV0dXJuIHRoaXMuX2ltcGxlbWVudGF0aW9uLmZvcm1hdEltcGwoZSx0KX1wYXJzZShlLHQpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5wYXJzZShlLHQpfWhhc0ZvcmV4QWRkaXRpb25hbFByZWNpc2lvbigpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgeShlKX19fSw3ODMyNTQoZSx0LG8pe28uZCh0LHt0OigpPT5yfSk7Y29uc3Qgcj1vLmkxOG5leHR9LDYyMDM1NChlLHQsbyl7dmFyIHI7by5kKHQse0xvZ29TaXplOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLk1lZGl1bT0wXT0iTWVkaXVtIixlW2UuTGFyZ2U9MV09IkxhcmdlIn0ocnx8KHI9e30pKX0sNzQ5NjQ4KGUsdCxvKXtmdW5jdGlvbiByKGUsdD0hMSl7CiJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGU/dD9zZXRUaW1lb3V0KCgoKT0+ZSgpKSwxKTplKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCgpPT5lKCkpKX1vLmQodCx7d2hlbkRvY3VtZW50UmVhZHk6KCk9PnJ9KTtuZXcgUHJvbWlzZSgoZT0+e3IoZSl9KSl9LDYzNTE4KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyIxNDg1MSI6e30sImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiOnt9LCJjb3VudGRvd24iOnt9LCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiI6e30sInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiOnt9LCJncmF5aW5nX2Rpc2FibGVkX3Rvb2xzX2VuYWJsZWQiOnt9LCJ1cGRhdGVfc3R1ZHlfZm9ybWF0dGVyX29uX3N5bWJvbF9yZXNvbHZlIjp7fSwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50Ijp7fSwicGhvbmVfdmVyaWZpY2F0aW9uIjp7fSwic2hvd190cmFkaW5nX25vdGlmaWNhdGlvbnNfaGlzdG9yeSI6e30sInNob3dfaW50ZXJ2YWxfZGlhbG9nX29uX2tleV9wcmVzcyI6e30sImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIjp7InN1YnNldHMiOlsic2hvd19pbnRlcnZhbF9kaWFsb2dfb25fa2V5X3ByZXNzIl19LCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iOnt9LCJoZWFkZXJfc3ltYm9sX3NlYXJjaCI6e30sInN5bWJvbF9zZWFyY2hfaG90X2tleSI6e30sImhlYWRlcl9yZXNvbHV0aW9ucyI6eyJzdWJzZXRzIjpbImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIl19LCJoZWFkZXJfY2hhcnRfdHlwZSI6e30sImhlYWRlcl9zZXR0aW5ncyI6e30sImhlYWRlcl9pbmRpY2F0b3JzIjp7fSwiaGVhZGVyX2NvbXBhcmUiOnt9LCJoZWFkZXJfdW5kb19yZWRvIjp7fSwiaGVhZGVyX3F1aWNrX3NlYXJjaCI6e30sImhlYWRlcl9zY3JlZW5zaG90Ijp7fSwiaGVhZGVyX3NhdmVsb2FkIjp7fSwic3R1ZHlfb25fc3R1ZHkiOnt9LCJzY2FsZXNfZGF0ZV9mb3JtYXQiOnt9LCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiOnt9LCJoZWFkZXJfd2lkZ2V0Ijp7InN1YnNldHMiOlsiaGVhZGVyX3dpZGdldF9kb21fbm9kZSIsImhlYWRlcl9zeW1ib2xfc2VhcmNoIiwiaGVhZGVyX3Jlc29sdXRpb25zIiwiaGVhZGVyX2NoYXJ0X3R5cGUiLCJoZWFkZXJfc2V0dGluZ3MiLCJoZWFkZXJfaW5kaWNhdG9ycyIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX3VuZG9fcmVkbyIsImhlYWRlcl9xdWlja19zZWFyY2giLCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iLCJjb21wYXJlX3N5bWJvbCIsImhlYWRlcl9zY3JlZW5zaG90Il19LCJsZWdlbmRfd2lkZ2V0Ijp7fSwiY29tcGFyZV9zeW1ib2wiOnsic3Vic2V0cyI6WyJoZWFkZXJfY29tcGFyZSJdfSwicHJvcGVydHlfcGFnZXMiOnsic3Vic2V0cyI6WyJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiLCJjaGFydF9wcm9wZXJ0eV9wYWdlIl19LCJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiOnt9LCJjaGFydF9wcm9wZXJ0eV9wYWdlIjp7InN1YnNldHMiOlsiY2hhcnRfcHJvcGVydHlfcGFnZV9zY2FsZXMiLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3RyYWRpbmciLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3JpZ2h0X21hcmdpbl9lZGl0b3IiXX0sImxlZnRfdG9vbGJhciI6e30sInJpZ2h0X3Rvb2xiYXIiOnt9LCJoaWRlX2xlZnRfdG9vbGJhcl9ieV9kZWZhdWx0Ijp7fSwiY29udHJvbF9iYXIiOnt9LCJ3aWRnZXRfbG9nbyI6e30sInRpbWVmcmFtZXNfdG9vbGJhciI6e30sImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiOnsic3Vic2V0cyI6WyJzaG93X2hpZGVfYnV0dG9uX2luX2xlZ2VuZCIsImZvcm1hdF9idXR0b25faW5fbGVnZW5kIiwic3R1ZHlfYnV0dG9uc19pbl9sZWdlbmQiLCJkZWxldGVfYnV0dG9uX2luX2xlZ2VuZCIsImxlZ2VuZF9pbnBsYWNlX2VkaXQiXX0sInNob3dfaGlkZV9idXR0b25faW5fbGVnZW5kIjp7fSwib2JqZWN0X3RyZWVfbGVnZW5kX21vZGUiOnt9LCJmb3JtYXRfYnV0dG9uX2luX2xlZ2VuZCI6e30sInN0dWR5X2J1dHRvbnNfaW5fbGVnZW5kIjp7fSwiZGVsZXRlX2J1dHRvbl9pbl9sZWdlbmQiOnt9LCJsZWdlbmRfaW5wbGFjZV9lZGl0Ijp7fSwiYnJva2VyX2J1dHRvbiI6e30sImJ1eV9zZWxsX2J1dHRvbnMiOnsic3Vic2V0cyI6WyJicm9rZXJfYnV0dG9uIl19LCJzaG93X2J1eV9zZWxsX2J1dHRvbnNfb25fdW5zdXBwb3J0ZWRfcmVzb2x1dGlvbiI6e30sInBhbmVfY29udGV4dF9tZW51Ijp7fSwic2NhbGVzX2NvbnRleHRfbWVudSI6e30sImxlZ2VuZF9jb250ZXh0X21lbnUiOnt9LCJjb250ZXh0X21lbnVzIjp7InN1YnNldHMiOlsicGFuZV9jb250ZXh0X21lbnUiLCJzY2FsZXNfY29udGV4dF9tZW51IiwibGVnZW5kX2NvbnRleHRfbWVudSIsIm9iamVjdHNfdHJlZV9jb250ZXh0X21lbnUiXX0sIml0ZW1zX2Zhdm9yaXRpbmciOnt9LCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSI6e30sInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIjp7InN1YnNldHMiOlsiaXRlbXNfZmF2b3JpdGluZyIsInNhdmVfY2hhcnRfcHJvcGVydGllc190b19sb2NhbF9zdG9yYWdlIl19LCJoYW5kbGVfc2NhbGUiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY2FsZSIsInBpbmNoX3NjYWxlIiwiYXhpc19wcmVzc2VkX21vdXNlX21vdmVfc2NhbGUiXX0sImhhbmRsZV9zY3JvbGwiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY3JvbGwiLCJwcmVzc2VkX21vdXNlX21vdmVfc2Nyb2xsIiwiaG9yel90b3VjaF9kcmFnX3Njcm9sbCIsInZlcnRfdG91Y2hfZHJhZ19zY3JvbGwiXX0sInBsYWluX3N0dWR5bWFya2V0Ijp7fSwiZGlzYWJsZV9yZXNvbHV0aW9uX3JlYnVpbGQiOnt9LCJib3JkZXJfYXJvdW5kX3RoZV9jaGFydCI6e30sImNoYXJ0aW5nX2xpYnJhcnlfZGVidWdfbW9kZSI6e30sInNhdmVsb2FkX3JlcXVpcmVzX2F1dGhlbnRpY2F0aW9uIjp7fSwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIjp7fSwidm9sdW1lX2ZvcmNlX292ZXJsYXkiOnt9LCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0Ijp7fSwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdF9vbmNlIjp7fSwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIjp7fSwibGVhbl9jaGFydF9sb2FkIjp7fSwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0Ijp7fSwic3Rhcl9zb21lX2ludGVydmFsc19ieV9kZWZhdWx0Ijp7fSwibW92ZV9sb2dvX3RvX21haW5fcGFuZSI6e30sInNob3dfYW5pbWF0ZWRfbG9nbyI6e30sImxpbmtfdG9fdHJhZGluZ3ZpZXciOnt9LCJsb2dvX3dpdGhvdXRfbGluayI6e30sImxvZ29fYWx3YXlzX21heGltaXplZCI6e30sInJpZ2h0X2Jhcl9zdGF5c19vbl9zY3JvbGwiOnt9LCJjaGFydF9jb250ZW50X292ZXJyaWRlc19ieV9kZWZhdWx0cyI6e30sInNuYXBzaG90X3RyYWRpbmdfZHJhd2luZ3MiOnt9LCJhbGxvd19zdXBwb3J0ZWRfcmVzb2x1dGlvbnNfc2V0X29ubHkiOnt9LCJ3aWRnZXRiYXJfdGFicyI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sInNob3dfb2JqZWN0X3RyZWUiOnsic3Vic2V0cyI6WyJyaWdodF90b29sYmFyIl19LCJkb21fd2lkZ2V0Ijp7InN1YnNldHMiOlsicmlnaHRfdG9vbGJhciJdfSwiY29sbGFwc2libGVfaGVhZGVyIjp7fSwic3R1ZHlfdGVtcGxhdGVzIjp7fSwia2VlcF9zZWxlY3RlZF9ncm91cF9vbl90b29sX2NyZWF0aW9uIjp7fSwic2lkZV90b29sYmFyX2luX2Z1bGxzY3JlZW5fbW9kZSI6e30sImhlYWRlcl9pbl9mdWxsc2NyZWVuX21vZGUiOnt9LCJyZW1vdmVfbGlicmFyeV9jb250YWluZXJfYm9yZGVyIjp7fSwid2hvdHJhZGVzX2F1dGhfb25seSI6e30sInN1cHBvcnRfbXVsdGljaGFydHMiOnt9LCJkaXNwbGF5X21hcmtldF9zdGF0dXMiOnt9LCJkaXNwbGF5X2RhdGFfbW9kZSI6e30sImRhdGFzb3VyY2VfY29weXBhc3RlIjp7fSwiZHJhd2luZ190ZW1wbGF0ZXMiOnsic3Vic2V0cyI6WyJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIl19LCJleHBhbmRfc3ltYm9sc2VhcmNoX2l0ZW1zIjp7fSwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyI6e30sInN5bWJvbF9zZWFyY2hfZmxhZ3MiOnt9LCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIjp7fSwiYnVncmVwb3J0X2J1dHRvbiI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sImhlYWRlcl90cmFkZV9idXR0b24iOnt9LCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIjp7fSwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iOnt9LCJ0ZXh0X25vdGVzIjp7fSwic2hvd19zb3VyY2VfY29kZSI6e30sInN5bWJvbF9pbmZvIjp7fSwibm9fYmFyc19zdGF0dXMiOnt9LCJjbGVhcl9iYXJzX29uX3Nlcmllc19lcnJvciI6e30sImhpZGVfbG9hZGluZ19zY3JlZW5fb25fc2VyaWVzX2Vycm9yIjp7fSwic2Vjb25kc19yZXNvbHV0aW9uIjp7fSwiZG9udF9zaG93X2Jvb2xlYW5fc3R1ZHlfYXJndW1lbnRzIjp7fSwiaGlkZV9sYXN0X25hX3N0dWR5X291dHB1dCI6e30sInByaWNlX3NjYWxlX2Fsd2F5c19sYXN0X2Jhcl92YWx1ZSI6e30sInN0dWR5X2RpYWxvZ19mdW5kYW1lbnRhbHNfZWNvbm9teV9hZGRvbnMiOnt9LCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyI6e30sInRyYWRpbmdfbm90aWZpY2F0aW9ucyI6e30sImNoYXJ0X2Nyb3NzaGFpcl9tZW51Ijp7fSwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIjp7fSwiaGlkZV9zZXJpZXNfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X292ZXJsYXlfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X2NvbXBhcmVfbGVnZW5kX2l0ZW0iOnt9LCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIjp7fSwidXNlX292ZXJyaWRlc19mb3Jfb3ZlcmxheSI6e30sInRpbWV6b25lX21lbnUiOnt9LCJtYWluX3Nlcmllc19zY2FsZV9tZW51Ijp7fSwic2hvd19sb2dpbl9kaWFsb2ciOnt9LCJyZW1vdmVfaW1nX2Zyb21fcnNzIjp7fSwiYmFyc19tYXJrcyI6e30sImNoYXJ0X3Njcm9sbCI6e30sImNoYXJ0X3pvb20iOnt9LCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiOnt9LCJsb3dfZGVuc2l0eV9iYXJzIjp7fSwiZW5kX29mX3BlcmlvZF90aW1lc2NhbGVfbWFya3MiOnt9LCJvcGVuX2FjY291bnRfbWFuYWdlciI6e30sInNob3dfb3JkZXJfcGFuZWxfb25fc3RhcnQiOnt9LCJvcmRlcl9wYW5lbCI6eyJzdWJzZXRzIjpbIm9yZGVyX3BhbmVsX2Nsb3NlX2J1dHRvbiIsIm9yZGVyX3BhbmVsX3VuZG9jayIsInJpZ2h0X3Rvb2xiYXIiLCJvcmRlcl9pbmZvIl19LCJtdWx0aXBsZV93YXRjaGxpc3RzIjp7fSwid2F0Y2hsaXN0X2ltcG9ydF9leHBvcnQiOnt9LCJzdHVkeV9vdmVybGF5X2NvbXBhcmVfbGVnZW5kX29wdGlvbiI6e30sIm1vYmlsZV9hcHBfYWN0aW9uX29wZW5fZGV0YWlsc193ZWJ2aWV3Ijp7fSwiY3VzdG9tX3Jlc29sdXRpb25zIjp7fSwicmVmZXJyYWxfcHJvZ3JhbV9mb3Jfd2lkZ2V0X293bmVycyI6e30sIm1vYmlsZV90cmFkaW5nIjp7fSwicmVhbF9icm9rZXJzIjp7fSwicXVpY2tfdHJhZGluZ19wYW5lbCI6e30sIm5hdGl2ZV9tb2JpbGVfYnJva2Vyc19saXN0Ijp7fSwibm9fbWluX2NoYXJ0X3dpZHRoIjp7fSwibG9ja192aXNpYmxlX3RpbWVfcmFuZ2Vfb25fcmVzaXplIjp7fSwicHJpY2VzY2FsZV9jdXJyZW5jeSI6e30sImNyb3BwZWRfdGlja19tYXJrcyI6e30sInRyYWRpbmdfYWNjb3VudF9tYW5hZ2VyIjp7fSwiZGlzYWJsZV9zYW1laW50ZXJ2YWxfYWxpZ25pbmciOnt9LCJkaXNwbGF5X2xlZ2VuZF9vbl9hbGxfY2hhcnRzIjp7fSwiY2hhcnRfc3R5bGVfaGlsbyI6e30sImNoYXJ0X3N0eWxlX2hpbG9fbGFzdF9wcmljZSI6e30sInByaWNlc2NhbGVfdW5pdCI6e30sInNob3dfc3ByZWFkX29wZXJhdG9ycyI6e30sImhpZGVfZXhwb25lbnRpYXRpb25fc3ByZWFkX29wZXJhdG9yIjp7fSwiaGlkZV9yZWNpcHJvY2FsX3NwcmVhZF9vcGVyYXRvciI6e30sImNvbXBhcmVfc3ltYm9sX3NlYXJjaF9zcHJlYWRfb3BlcmF0b3JzIjp7fSwic3R1ZGllc19zeW1ib2xfc2VhcmNoX3NwcmVhZF9vcGVyYXRvcnMiOnt9LCJoaWRlX3Jlc29sdXRpb25faW5fbGVnZW5kIjp7fSwiaGlkZV91bnJlc29sdmVkX3N5bWJvbHNfaW5fbGVnZW5kIjp7fSwiZml4X2xlZnRfZWRnZSI6e30sInN0dWR5X3N5bWJvbF90aWNrZXJfZGVzY3JpcHRpb24iOnt9LCJ0d29fY2hhcmFjdGVyX2Jhcl9tYXJrc19sYWJlbHMiOnt9LCJwaW5fYmFyX21hcmtfdG9vbHRpcHNfb25fY2xpY2siOnt9LCJ0aWNrX3Jlc29sdXRpb24iOnt9LCJzZWNvbmRhcnlfc2VyaWVzX2V4dGVuZF90aW1lX3NjYWxlIjp7fSwiaGlkZV92b2x1bWVfbWEiOnt9LCJzbWFsbF9ub19kaXNwbGF5Ijp7fSwiY2hhcnRpbmdfbGlicmFyeV9zaW5nbGVfc3ltYm9sX3JlcXVlc3QiOnt9LCJ1c2VfdGlja2VyX29uX3N5bWJvbF9pbmZvX3VwZGF0ZSI6e30sInNob3dfem9vbV9hbmRfbW92ZV9idXR0b25zX29uX3RvdWNoIjp7fSwiaGlkZV9tYWluX3Nlcmllc19zeW1ib2xfZnJvbV9pbmRpY2F0b3JfbGVnZW5kIjp7fSwiY2hhcnRfaGlkZV9jbG9zZV9wb3NpdGlvbl9idXR0b24iOnt9LCJjaGFydF9oaWRlX2Nsb3NlX29yZGVyX2J1dHRvbiI6e30sImhpZGVfcHJpY2Vfc2NhbGVfZ2xvYmFsX2xhc3RfYmFyX3ZhbHVlIjp7InN1YnNldHMiOlsidXNlX2xhc3RfdmlzaWJsZV9iYXJfdmFsdWVfaW5fbGVnZW5kIl19LCJrZWVwX29iamVjdF90cmVlX3dpZGdldF9pbl9yaWdodF90b29sYmFyIjp7fSwic2hvd19hdmVyYWdlX2Nsb3NlX3ByaWNlX2xpbmVfYW5kX2xhYmVsIjp7fSwiaGlkZV9pbWFnZV9pbnZhbGlkX3N5bWJvbCI6e30sImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIjp7fSwiY29uZmlybV9vdmVyd3JpdGVfaWZfY2hhcnRfbGF5b3V0X3dpdGhfbmFtZV9leGlzdHMiOnt9LCJkZXRlcm1pbmVfZmlyc3RfZGF0YV9yZXF1ZXN0X3NpemVfdXNpbmdfdmlzaWJsZV9yYW5nZSI6e30sInVzZV9uYV9zdHJpbmdfZm9yX25vdF9hdmFpbGFibGVfdmFsdWVzIjp7fSwic2hvd19sYXN0X3ByaWNlX2FuZF9jaGFuZ2Vfb25seV9pbl9zZXJpZXNfbGVnZW5kIjp7fSwibGVnZW5kX2xhc3RfZGF5X2NoYW5nZSI6e30sImlmcmFtZV9sb2FkaW5nX2NvbXBhdGliaWxpdHlfbW9kZSI6e30sInNob3dfcGVyY2VudF9vcHRpb25fZm9yX3JpZ2h0X21hcmdpbiI6e30sIndhdGNobGlzdF9jb250ZXh0X21lbnUiOnt9LCJhY2Nlc3NpYmxlX2tleWJvYXJkX3Nob3J0Y3V0cyI6e30sImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyI6e30sImFwcF9waG9uZSI6e30sImFwcF90YWJsZXQiOnt9LCJtb2JpbGVfYXBwX2hpZGVfcmVwbGF5X3Rvb2xiYXIiOnt9LCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fdGFwX2luX2xlZ2VuZCI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fbm9uX3RyYWRhYmxlIjp7fSwic2hvd19uZXdfbWVudV9pdGVtc19pbl9jaGFydF9tZW51cyI6e30sInByZV9wb3N0X21hcmtldF9wcmljZV9saW5lIjp7fSwicHJlX3Bvc3RfbWFya2V0X3Nlc3Npb25zIjp7fSwic3R1ZGllc19leHRlbmRfdGltZV9zY2FsZSI6e30sImluYWN0aXZpdHlfZ2FwcyI6e30sImFsaWduX2R3bV9iYXJzX3RvX21haW5fc2VyaWVzIjp7fSwicmVxdWVzdF9vbmx5X3Zpc2libGVfcmFuZ2Vfb25fcmVzZXQiOnt9LCJleHRlbmRlZF9leHRyYXBvbGF0aW9uX2xpbWl0Ijp7fSwidHZfcHJvZHVjdGlvbiI6eyJzdWJzZXRzIjpbIndhdGNobGlzdF9zZWN0aW9ucyIsImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyIsImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsImhlYWRlcl9mdWxsc2NyZWVuX2J1dHRvbiIsImhlYWRlcl93aWRnZXQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwiYnV5X3NlbGxfYnV0dG9ucyIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwidXNlX2xvY2Fsc3RvcmFnZV9mb3Jfc2V0dGluZ3MiLCJzYXZlbG9hZF9yZXF1aXJlc19hdXRoZW50aWNhdGlvbiIsInZvbHVtZV9mb3JjZV9vdmVybGF5Iiwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHRfb25jZSIsImNoYXJ0c19hdXRvX3NhdmUiLCJzYXZlX29sZF9jaGFydF9iZWZvcmVfc2F2ZV9hcyIsImNoYXJ0X2NvbnRlbnRfb3ZlcnJpZGVzX2J5X2RlZmF1bHRzIiwiYWxlcnRzIiwiaGVhZGVyX3NhdmVsb2FkIiwiaGVhZGVyX2xheW91dHRvZ2dsZSIsImRhdGFzb3VyY2VfY29weXBhc3RlIiwic2hvd19zYXZlZF93YXRjaGxpc3RzIiwid2F0Y2hsaXN0c19mcm9tX3RvX2ZpbGUiLCJhZGRfdG9fd2F0Y2hsaXN0IiwicHJvcGVydHlfcGFnZXMiLCJzdXBwb3J0X211bHRpY2hhcnRzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZGlzcGxheV9kYXRhX21vZGUiLCJzaG93X2NoYXJ0X3dhcm5fbWVzc2FnZSIsInN1cHBvcnRfbWFuYWdlX2RyYXdpbmdzIiwid2lkZ2V0YmFyX3RhYnMiLCJzdHVkeV90ZW1wbGF0ZXMiLCJjb2xsYXBzaWJsZV9oZWFkZXIiLCJkcmF3aW5nX3RlbXBsYXRlcyIsImhlYWRlcl90cmFkZV9idXR0b24iLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIiwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iLCJ0ZXh0X25vdGVzIiwic2hvd19zb3VyY2VfY29kZSIsInN5bWJvbF9pbmZvIiwibGluZXRvb2xwcm9wZXJ0aWVzd2lkZ2V0X3RlbXBsYXRlX2J1dHRvbiIsInRyYWRpbmdfbm90aWZpY2F0aW9ucyIsInN5bWJvbF9zZWFyY2hfdGhyZWVfY29sdW1uc19leGNoYW5nZXMiLCJzeW1ib2xfc2VhcmNoX2ZsYWdzIiwic3ltYm9sX3NlYXJjaF9saW1pdGVkX2V4Y2hhbmdlcyIsInBob25lX3ZlcmlmaWNhdGlvbiIsImN1c3RvbV9yZXNvbHV0aW9ucyIsImNvbXBhcmVfc3ltYm9sIiwic3R1ZHlfb25fc3R1ZHkiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJzaG93X2xvZ2luX2RpYWxvZyIsImRvbV93aWRnZXQiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNob3dfdHJhZGluZ19ub3RpZmljYXRpb25zX2hpc3RvcnkiLCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiLCJzdHVkeV9kaWFsb2dfZnVuZGFtZW50YWxzX2Vjb25vbXlfYWRkb25zIiwibXVsdGlwbGVfd2F0Y2hsaXN0cyIsIm1hcmtlZF9zeW1ib2xzIiwib3JkZXJfcGFuZWwiLCJwcmljZXNjYWxlX2N1cnJlbmN5Iiwic2hvd19hbmltYXRlZF9sb2dvIiwicHJpY2VzY2FsZV9jdXJyZW5jeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsInNjYWxlc19kYXRlX2Zvcm1hdCIsInNjYWxlc190aW1lX2hvdXJzX2Zvcm1hdCIsInBvcHVwX2hpbnRzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciIsInNob3dfbmV3X21lbnVfaXRlbXNfaW5fY2hhcnRfbWVudXMiLCJrZWVwX3NlbGVjdGVkX2dyb3VwX29uX3Rvb2xfY3JlYXRpb24iXX0sIndpZGdldCI6eyJzdWJzZXRzIjpbImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwibGVmdF90b29sYmFyIiwicmlnaHRfdG9vbGJhciIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwic2F2ZWxvYWRfcmVxdWlyZXNfYXV0aGVudGljYXRpb24iLCJ2b2x1bWVfZm9yY2Vfb3ZlcmxheSIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHQiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJoZWFkZXJfd2lkZ2V0X2RvbV9ub2RlIiwiaGVhZGVyX3N5bWJvbF9zZWFyY2giLCJoZWFkZXJfcmVzb2x1dGlvbnMiLCJoZWFkZXJfY2hhcnRfdHlwZSIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX2luZGljYXRvcnMiLCJzdGFyX3NvbWVfaW50ZXJ2YWxzX2J5X2RlZmF1bHQiLCJkaXNwbGF5X21hcmtldF9zdGF0dXMiLCJkaXNwbGF5X2RhdGFfbW9kZSIsInNob3dfY2hhcnRfd2Fybl9tZXNzYWdlIiwic3ltYm9sX2luZm8iLCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIiwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyIsInN5bWJvbF9zZWFyY2hfZmxhZ3MiLCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIiwid2lkZ2V0YmFyX3RhYnMiLCJjb21wYXJlX3N5bWJvbCIsInNob3dfbG9naW5fZGlhbG9nIiwicGxhaW5fc3R1ZHltYXJrZXQiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIl19LCJib3Zlc3BhX3dpZGdldCI6eyJzdWJzZXRzIjpbIndpZGdldCIsImhlYWRlcl9zZXR0aW5ncyIsImxpbmV0b29scHJvcGVydGllc3dpZGdldF90ZW1wbGF0ZV9idXR0b24iLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiXX0sImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSI6eyJzdWJzZXRzIjpbIjE0ODUxIiwiYWxsb3dfc3VwcG9ydGVkX3Jlc29sdXRpb25zX3NldF9vbmx5IiwiYXV0b19lbmFibGVfc3ltYm9sX2xhYmVscyIsImJvcmRlcl9hcm91bmRfdGhlX2NoYXJ0IiwiY29sbGFwc2libGVfaGVhZGVyIiwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50IiwiY29udGV4dF9tZW51cyIsImNvbnRyb2xfYmFyIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiLCJkYXRhc291cmNlX2NvcHlwYXN0ZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZWRpdF9idXR0b25zX2luX2xlZ2VuZCIsIm9iamVjdF90cmVlX2xlZ2VuZF9tb2RlIiwiZ3JheWluZ19kaXNhYmxlZF90b29sc19lbmFibGVkIiwiaGVhZGVyX3dpZGdldCIsImxlZ2VuZF93aWRnZXQiLCJoZWFkZXJfc2F2ZWxvYWQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWFuX2NoYXJ0X2xvYWQiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwibGlua190b190cmFkaW5ndmlldyIsInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiLCJwbGFpbl9zdHVkeW1hcmtldCIsInJlZnJlc2hfc2F2ZWRfY2hhcnRzX2xpc3Rfb25fZGlhbG9nX3Nob3ciLCJyaWdodF9iYXJfc3RheXNfb25fc2Nyb2xsIiwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIiwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0IiwidGltZWZyYW1lc190b29sYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwidXBkYXRlX3N0dWR5X2Zvcm1hdHRlcl9vbl9zeW1ib2xfcmVzb2x2ZSIsInVwZGF0ZV90aW1lZnJhbWVzX3NldF9vbl9zeW1ib2xfcmVzb2x2ZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwidm9sdW1lX2ZvcmNlX292ZXJsYXkiLCJ3aWRnZXRfbG9nbyIsImNvdW50ZG93biIsInVzZV9vdmVycmlkZXNfZm9yX292ZXJsYXkiLCJ0cmFkaW5nX25vdGlmaWNhdGlvbnMiLCJjb21wYXJlX3N5bWJvbCIsInN5bWJvbF9pbmZvIiwidGltZXpvbmVfbWVudSIsIm1haW5fc2VyaWVzX3NjYWxlX21lbnUiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwiZ29fdG9fZGF0ZSIsImFkYXB0aXZlX2xvZ28iLCJzaG93X2FuaW1hdGVkX2xvZ28iLCJoYW5kbGVfc2NhbGUiLCJoYW5kbGVfc2Nyb2xsIiwic2hpZnRfdmlzaWJsZV9yYW5nZV9vbl9uZXdfYmFyIiwiY2hhcnRfY29udGVudF9vdmVycmlkZXNfYnlfZGVmYXVsdHMiLCJjcm9wcGVkX3RpY2tfbWFya3MiLCJzY2FsZXNfZGF0ZV9mb3JtYXQiLCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiLCJwb3B1cF9oaW50cyIsInNhdmVfc2hvcnRjdXQiLCJzaG93X3JpZ2h0X3dpZGdldHNfcGFuZWxfYnlfZGVmYXVsdCIsInNob3dfb2JqZWN0X3RyZWUiLCJpbnNlcnRfaW5kaWNhdG9yX2RpYWxvZ19zaG9ydGN1dCIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsImhpZGVfbWFpbl9zZXJpZXNfc3ltYm9sX2Zyb21faW5kaWNhdG9yX2xlZ2VuZCIsImNoYXJ0X3N0eWxlX2hpbG8iLCJyZXF1ZXN0X29ubHlfdmlzaWJsZV9yYW5nZV9vbl9yZXNldCIsImNsZWFyX3ByaWNlX3NjYWxlX29uX2Vycm9yX29yX2VtcHR5X2JhcnMiLCJzaG93X3N5bWJvbF9sb2dvX2luX2xlZ2VuZCIsInNob3dfc3ltYm9sX2xvZ29fZm9yX2NvbXBhcmVfc3R1ZGllcyIsImxpYnJhcnlfY3VzdG9tX2NvbG9yX3RoZW1lcyIsImxvbmdfcHJlc3NfZmxvYXRpbmdfdG9vbHRpcCIsInN5bWJvbF9zZWFyY2hfaGlnaGxpZ2h0X2FjdGl2ZV9zeW1ib2wiXX0sImNoYXJ0aW5nX2xpYnJhcnkiOnsic3Vic2V0cyI6WyJjaGFydGluZ19saWJyYXJ5X2Jhc2UiXX0sInN0YXRpY19jaGFydHNfc2VydmljZSI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnkiLCJkaXNhYmxlX3Jlc29sdXRpb25fcmVidWlsZCJdfSwidHJhZGluZ190ZXJtaW5hbCI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSIsInN1cHBvcnRfbXVsdGljaGFydHMiLCJoZWFkZXJfbGF5b3V0dG9nZ2xlIiwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIiwiY2hhcnRfcHJvcGVydHlfcGFnZV90cmFkaW5nIiwiYWRkX3RvX3dhdGNobGlzdCIsIm9wZW5fYWNjb3VudF9tYW5hZ2VyIiwic2hvd19kb21fZmlyc3RfdGltZSIsIm9yZGVyX3BhbmVsIiwiYnV5X3NlbGxfYnV0dG9ucyIsIm11bHRpcGxlX3dhdGNobGlzdHMiLCJzaG93X3RyYWRpbmdfbm90aWZpY2F0aW9uc19oaXN0b3J5IiwiYWx3YXlzX3Bhc3NfY2FsbGVkX29yZGVyX3RvX21vZGlmeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsImRyYXdpbmdfdGVtcGxhdGVzIiwidHJhZGluZ19hY2NvdW50X21hbmFnZXIiLCJjaGFydF9jcm9zc2hhaXJfbWVudSIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsIndhdGNobGlzdF9jb250ZXh0X21lbnUiLCJzaG93X3N5bWJvbF9sb2dvX2luX2FjY291bnRfbWFuYWdlciIsInNob3dfc3ltYm9sX2xvZ29faW5fY2xvc2VfcG9zaXRpb25fZGlhbG9nIiwic2hvd19zeW1ib2xfbG9nb19pbl9jYW5jZWxfb3JkZXJfZGlhbG9nIiwid2F0Y2hsaXN0X3NlY3Rpb25zIiwicHJlZmVyX3F1b3RlX3Nob3J0X25hbWUiLCJlbmFibGVfZG9tX2RhdGFfZm9yX3VudHJhZGFibGVfc3ltYm9scyIsInByZWZlcl9zeW1ib2xfbmFtZV9vdmVyX2Z1bGxuYW1lIiwid2F0Y2hsaXN0X2Nyb3NzX3RhYl9zeW5jIl19fScpCn0sNzQ2OTQ5KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKQp9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/fonts/line-awesomeeb4feb4f.woff?v=1.1.","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.668Z","timestamp":1785154589668,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/fonts/line-awesomeeb4feb4f.woff?v=1.1. HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/frontmain/css/plugin.min.css\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: font/woff\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 57436\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":57436,"size_decoded":57702,"mime_type":"font/woff","magic":"Web Open Font Format, TrueType, length 57436, version 0.0","md5":"8b1290595e57e1d49d95ff3fa1129ecc","sha1":"73bcfdd23e73617a7eaaeb66bdcd98ad6b901562","sha256":"20fe49b8a923c1a329ca44142e98f1cc162b7bf1d98983389b01a44630dfa85b","sha512":"5eacd2a3987a65efc4fd7dc13be105e374a35db406d52f9186415a99adf5679ce521a53fbfca7b45e8fdab3cf2fc5dad676988d7cdad6b15387af85452933a21","ssdeep":"1536:zfd6/ZNlNZH0czwxEBAW+yyKRdaUoMBhRV:zdyzlNBn175ToShH","tlshash":"124302f5f7ed3cfae9fe24aaba114cf423e8c5459da79867303310f5449b54aa122c42","first_seen":"2023-10-13T23:11:53Z","last_seen":"2026-07-27T12:17:29.155598Z","times_seen":55,"resource_available":false,"data":"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"}},"time_used":29,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":26,"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/product/2x/translate_24dp.png","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.429Z","timestamp":1785154590429,"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: 277157\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1842,"size_decoded":2516,"mime_type":"image/png","magic":"PNG image data, 48 x 48, 8-bit/color RGBA, non-interlaced","md5":"c69c796362406f9e11c7f4bf5bb628da","sha1":"e489ce95ab56208090868882113d7416abf46775","sha256":"4dac0026fbfa2615dce30c0af12830863fe885f84387a0147b9e338f548d5d82","sha512":"d3ad560ed0fd29be7d2cc434694f09e5a6fbea8b29c0611aecb54a1b73b4d722c53f42a19dae9e3d5d358444e50fb8fffbc39d67ce751bdbc8c861f6f95d3162","ssdeep":"","tlshash":"4e31f9fd129220437101ade72165eef798347c15f412da60ce65ba389c9fe20ed9a619","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-07-27T14:18:32.452162Z","times_seen":72238,"resource_available":false,"data":"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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.549Z","timestamp":1785154590549,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-15b86\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 274782d4be86f2666a7f2907da42fe6f\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":88966,"size_decoded":33771,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0af33a0629a4a15d05b8d21be003c0eb","sha1":"d61ed97048a72976c85785513a62b5e8590fb75a","sha256":"4dbdbd0c38d1d6468cbd0ec6b02411faaeffeddfc87c7b638be2e1263931cd14","sha512":"4350a5eab085a85477d149b1a91edb41a808bb070818e9d43e5e1147e4c71a0a5c3438616ab61efb6497365cb84e1f518343afd20431bb8612ba9f7a2165f814","ssdeep":"1536:wjugPsJO3KbxBvr1tBzoxvAgVIvrKfu2DNzmR5axsx5Eng/vc2JZu4+ej3aNOtHm:k0yKlvh/Z+839HMY74qBs","tlshash":"149309ddb2c5b06257e731b910af650ab237249d680d8440f139e8f6bc74b4aa13be7d","first_seen":"2026-05-05T10:36:04.846561Z","last_seen":"2026-07-27T14:22:59.587085Z","times_seen":2310,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5OTgyN10sezE5OTgyNyhlKXt2YXIgdD13aW5kb3cuZG9jdW1lbnQsbj13aW5kb3cubmF2aWdhdG9yLHI9d2luZG93LmxvY2F0aW9uLGk9ZnVuY3Rpb24oKXt2YXIgZSxyLGksbyxhPWZ1bmN0aW9uKHQsbil7cmV0dXJuIG5ldyBhLmZuLmluaXQodCxuLGUpfSxzPXdpbmRvdy5qUXVlcnksbD13aW5kb3cuJCx1PS9eKD86W14jPF0qKDxbXHdcV10rPilbXj5dKiR8IyhbXHdcLV0qKSQpLyxjPS9eXHMrLyxmPS9ccyskLyxkPS9ePChcdyspXHMqXC8/Pig/OjxcL1wxPik/JC8scD0vXltcXSw6e31cc10qJC8saD0vXFwoPzpbIlxcXC9iZm5ydF18dVswLTlhLWZBLUZdezR9KS9nLG09LyJbXiJcXFxuXHJdKiJ8dHJ1ZXxmYWxzZXxudWxsfC0/XGQrKD86XC5cZCopPyg/OltlRV1bK1wtXT9cZCspPy9nLGc9Lyg/Ol58OnwsKSg/OlxzKlxbKSsvZyx2PS8od2Via2l0KVsgXC9dKFtcdy5dKykvLHk9LyhvcGVyYSkoPzouKnZlcnNpb24pP1sgXC9dKFtcdy5dKykvLGI9Lyhtc2llKSAoW1x3Ll0rKS8seD0vKG1vemlsbGEpKD86Lio/IHJ2OihbXHcuXSspKT8vLHc9Ly0oW2Etel18WzAtOV0pL2dpLFQ9L14tbXMtLyxOPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQrIiIpLnRvVXBwZXJDYXNlKCl9LEM9bi51c2VyQWdlbnQsUz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGs9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxFPUFycmF5LnByb3RvdHlwZS5wdXNoLEE9QXJyYXkucHJvdG90eXBlLnNsaWNlLEQ9U3RyaW5nLnByb3RvdHlwZS50cmltLEw9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsRj17fTtmdW5jdGlvbiBqKCl7aWYoIWEuaXNSZWFkeSl7dHJ5e3QuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKCJsZWZ0Iil9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChqLDEpfWEucmVhZHkoKX19cmV0dXJuIGEuZm49YS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmEsaW5pdDpmdW5jdGlvbihlLG4scil7dmFyIGksbyxzLGw7aWYoIWUpcmV0dXJuIHRoaXM7aWYoZS5ub2RlVHlwZSlyZXR1cm4gdGhpcy5jb250ZXh0PXRoaXNbMF09ZSx0aGlzLmxlbmd0aD0xLHRoaXM7aWYoImJvZHkiPT09ZSYmIW4mJnQuYm9keSlyZXR1cm4gdGhpcy5jb250ZXh0PXQsdGhpc1swXT10LmJvZHksdGhpcy5zZWxlY3Rvcj1lLHRoaXMubGVuZ3RoPTEsdGhpcztpZigic3RyaW5nIj09dHlwZW9mIGUpe2lmKCEoaT0iPCI9PT1lLmNoYXJBdCgwKSYmIj4iPT09ZS5jaGFyQXQoZS5sZW5ndGgtMSkmJmUubGVuZ3RoPj0zP1tudWxsLGUsbnVsbF06dS5leGVjKGUpKXx8IWlbMV0mJm4pcmV0dXJuIW58fG4uanF1ZXJ5PyhufHxyKS5maW5kKGUpOnRoaXMuY29uc3RydWN0b3IobikuZmluZChlKTtpZihpWzFdKXJldHVybiBsPShuPW4gaW5zdGFuY2VvZiBhP25bMF06bik/bi5vd25lckRvY3VtZW50fHxuOnQsKHM9ZC5leGVjKGUpKT9hLmlzUGxhaW5PYmplY3Qobik/KGU9W3QuY3JlYXRlRWxlbWVudChzWzFdKV0sYS5mbi5hdHRyLmNhbGwoZSxuLCEwKSk6ZT1bbC5jcmVhdGVFbGVtZW50KHNbMV0pXTplPSgocz1hLmJ1aWxkRnJhZ21lbnQoW2lbMV1dLFtsXSkpLmNhY2hlYWJsZT9hLmNsb25lKHMuZnJhZ21lbnQpOnMuZnJhZ21lbnQpLmNoaWxkTm9kZXMsYS5tZXJnZSh0aGlzLGUpO2lmKChvPXQuZ2V0RWxlbWVudEJ5SWQoaVsyXSkpJiZvLnBhcmVudE5vZGUpe2lmKG8uaWQhPT1pWzJdKXJldHVybiByLmZpbmQoZSk7dGhpcy5sZW5ndGg9MSx0aGlzWzBdPW99cmV0dXJuIHRoaXMuY29udGV4dD10LHRoaXMuc2VsZWN0b3I9ZSx0aGlzfXJldHVybiBhLmlzRnVuY3Rpb24oZSk/ci5yZWFkeShlKToodm9pZCAwIT09ZS5zZWxlY3RvciYmKHRoaXMuc2VsZWN0b3I9ZS5zZWxlY3Rvcix0aGlzLmNvbnRleHQ9ZS5jb250ZXh0KSxhLm1ha2VBcnJheShlLHRoaXMpKX0sc2VsZWN0b3I6IiIsanF1ZXJ5OiIxLjcuMiIsbGVuZ3RoOjAsc2l6ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmxlbmd0aH0sdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcywwKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3RoaXMudG9BcnJheSgpOmU8MD90aGlzW3RoaXMubGVuZ3RoK2VdOnRoaXNbZV19LHB1c2hTdGFjazpmdW5jdGlvbihlLHQsbil7dmFyIHI9dGhpcy5jb25zdHJ1Y3RvcigpO3JldHVybiBhLmlzQXJyYXkoZSk/RS5hcHBseShyLGUpOmEubWVyZ2UocixlKSxyLnByZXZPYmplY3Q9dGhpcyxyLmNvbnRleHQ9dGhpcy5jb250ZXh0LCJmaW5kIj09PXQ/ci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyh0aGlzLnNlbGVjdG9yPyIgIjoiIikrbjp0JiYoci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyIuIit0KyIoIituKyIpIikscn0sZWFjaDpmdW5jdGlvbihlLHQpe3JldHVybiBhLmVhY2godGhpcyxlLHQpfSxyZWFkeTpmdW5jdGlvbihlKXtyZXR1cm4gYS5iaW5kUmVhZHkoKSxpLmFkZChlKSx0aGlzfSxlcTpmdW5jdGlvbihlKXtyZXR1cm4tMT09PShlPStlKT90aGlzLnNsaWNlKGUpOnRoaXMuc2xpY2UoZSxlKzEpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoLTEpfSxzbGljZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhBLmFwcGx5KHRoaXMsYXJndW1lbnRzKSwic2xpY2UiLEEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9LG1hcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soYS5tYXAodGhpcywoZnVuY3Rpb24odCxuKXtyZXR1cm4gZS5jYWxsKHQsbix0KX0pKSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IobnVsbCl9LHB1c2g6RSxzb3J0OltdLnNvcnQsc3BsaWNlOltdLnNwbGljZX0sYS5mbi5pbml0LnByb3RvdHlwZT1hLmZuLGEuZXh0ZW5kPWEuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLHM9YXJndW1lbnRzWzBdfHx7fSxsPTEsdT1hcmd1bWVudHMubGVuZ3RoLGM9ITEKO2ZvcigiYm9vbGVhbiI9PXR5cGVvZiBzJiYoYz1zLHM9YXJndW1lbnRzWzFdfHx7fSxsPTIpLCJvYmplY3QiPT10eXBlb2Ygc3x8YS5pc0Z1bmN0aW9uKHMpfHwocz17fSksdT09PWwmJihzPXRoaXMsLS1sKTtsPHU7bCsrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tsXSkpZm9yKHQgaW4gZSluPXNbdF0scyE9PShyPWVbdF0pJiYoYyYmciYmKGEuaXNQbGFpbk9iamVjdChyKXx8KGk9YS5pc0FycmF5KHIpKSk/KGk/KGk9ITEsbz1uJiZhLmlzQXJyYXkobik/bjpbXSk6bz1uJiZhLmlzUGxhaW5PYmplY3Qobik/bjp7fSxzW3RdPWEuZXh0ZW5kKGMsbyxyKSk6dm9pZCAwIT09ciYmKHNbdF09cikpO3JldHVybiBzfSxhLmV4dGVuZCh7bm9Db25mbGljdDpmdW5jdGlvbihlKXtyZXR1cm4gd2luZG93LiQ9PT1hJiYod2luZG93LiQ9bCksZSYmd2luZG93LmpRdWVyeT09PWEmJih3aW5kb3cualF1ZXJ5PXMpLGF9LGlzUmVhZHk6ITEscmVhZHlXYWl0OjEsaG9sZFJlYWR5OmZ1bmN0aW9uKGUpe2U/YS5yZWFkeVdhaXQrKzphLnJlYWR5KCEwKX0scmVhZHk6ZnVuY3Rpb24oZSl7aWYoITA9PT1lJiYhIC0tYS5yZWFkeVdhaXR8fCEwIT09ZSYmIWEuaXNSZWFkeSl7aWYoIXQuYm9keSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKGEuaXNSZWFkeT0hMCwhMCE9PWUmJi0tYS5yZWFkeVdhaXQ+MClyZXR1cm47aS5maXJlV2l0aCh0LFthXSksYS5mbi50cmlnZ2VyJiZhKHQpLnRyaWdnZXIoInJlYWR5Iikub2ZmKCJyZWFkeSIpfX0sYmluZFJlYWR5OmZ1bmN0aW9uKCl7aWYoIWkpe2lmKGk9YS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksImNvbXBsZXRlIj09PXQucmVhZHlTdGF0ZSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKHQuYWRkRXZlbnRMaXN0ZW5lcil0LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixhLnJlYWR5LCExKTtlbHNlIGlmKHQuYXR0YWNoRXZlbnQpe3QuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksd2luZG93LmF0dGFjaEV2ZW50KCJvbmxvYWQiLGEucmVhZHkpO3ZhciBlPSExO3RyeXtlPW51bGw9PXdpbmRvdy5mcmFtZUVsZW1lbnR9Y2F0Y2goZSl7fXQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsJiZlJiZqKCl9fX0saXNGdW5jdGlvbjpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT09YS50eXBlKGUpfSxpc0FycmF5OkFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiJhcnJheSI9PT1hLnR5cGUoZSl9LGlzV2luZG93OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT1lLndpbmRvd30saXNOdW1lcmljOmZ1bmN0aW9uKGUpe3JldHVybiFpc05hTihwYXJzZUZsb2F0KGUpKSYmaXNGaW5pdGUoZSl9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/U3RyaW5nKGUpOkZbUy5jYWxsKGUpXXx8Im9iamVjdCJ9LGlzUGxhaW5PYmplY3Q6ZnVuY3Rpb24oZSl7aWYoIWV8fCJvYmplY3QiIT09YS50eXBlKGUpfHxlLm5vZGVUeXBlfHxhLmlzV2luZG93KGUpKXJldHVybiExO3RyeXtpZihlLmNvbnN0cnVjdG9yJiYhay5jYWxsKGUsImNvbnN0cnVjdG9yIikmJiFrLmNhbGwoZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsImlzUHJvdG90eXBlT2YiKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX12YXIgdDtmb3IodCBpbiBlKTtyZXR1cm4gdm9pZCAwPT09dHx8ay5jYWxsKGUsdCl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0scGFyc2VKU09OOmZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmZT8oZT1hLnRyaW0oZSksd2luZG93LkpTT04mJndpbmRvdy5KU09OLnBhcnNlP3dpbmRvdy5KU09OLnBhcnNlKGUpOnAudGVzdChlLnJlcGxhY2UoaCwiQCIpLnJlcGxhY2UobSwiXSIpLnJlcGxhY2UoZywiIikpP25ldyBGdW5jdGlvbigicmV0dXJuICIrZSkoKTp2b2lkIGEuZXJyb3IoIkludmFsaWQgSlNPTjogIitlKSk6bnVsbH0scGFyc2VYTUw6ZnVuY3Rpb24oZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhZSlyZXR1cm4gbnVsbDt2YXIgdDt0cnl7d2luZG93LkRPTVBhcnNlcj90PShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwidGV4dC94bWwiKTooKHQ9bmV3IEFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxET00iKSkuYXN5bmM9ImZhbHNlIix0LmxvYWRYTUwoZSkpfWNhdGNoKGUpe3Q9dm9pZCAwfXJldHVybiB0JiZ0LmRvY3VtZW50RWxlbWVudCYmIXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxhLmVycm9yKCJJbnZhbGlkIFhNTDogIitlKSx0fSxub29wOmZ1bmN0aW9uKCl7fSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGUpe30sY2FtZWxDYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoVCwibXMtIikucmVwbGFjZSh3LE4pfSxub2RlTmFtZTpmdW5jdGlvbihlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvVXBwZXJDYXNlKCk9PT10LnRvVXBwZXJDYXNlKCl9LGVhY2g6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk9MCxvPWUubGVuZ3RoLHM9dm9pZCAwPT09b3x8YS5pc0Z1bmN0aW9uKGUpO2lmKG4paWYocyl7Zm9yKHIgaW4gZSlpZighMT09PXQuYXBwbHkoZVtyXSxuKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuYXBwbHkoZVtpKytdLG4pOyk7ZWxzZSBpZihzKXtmb3IociBpbiBlKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuY2FsbChlW2ldLGksZVtpKytdKTspO3JldHVybiBlfSx0cmltOkQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/IiI6RC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjplLnRvU3RyaW5nKCkucmVwbGFjZShjLCIiKS5yZXBsYWNlKGYsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtpZihudWxsIT1lKXt2YXIgcj1hLnR5cGUoZSkKO251bGw9PWUubGVuZ3RofHwic3RyaW5nIj09PXJ8fCJmdW5jdGlvbiI9PT1yfHwicmVnZXhwIj09PXJ8fGEuaXNXaW5kb3coZSk/RS5jYWxsKG4sZSk6YS5tZXJnZShuLGUpfXJldHVybiBufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZih0KXtpZihMKXJldHVybiBMLmNhbGwodCxlLG4pO2ZvcihyPXQubGVuZ3RoLG49bj9uPDA/TWF0aC5tYXgoMCxyK24pOm46MDtuPHI7bisrKWlmKG4gaW4gdCYmdFtuXT09PWUpcmV0dXJuIG59cmV0dXJuLTF9LG1lcmdlOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sZW5ndGgscj0wO2lmKCJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGgpZm9yKHZhciBpPXQubGVuZ3RoO3I8aTtyKyspZVtuKytdPXRbcl07ZWxzZSBmb3IoO3ZvaWQgMCE9PXRbcl07KWVbbisrXT10W3IrK107cmV0dXJuIGUubGVuZ3RoPW4sZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7dmFyIHI9W107bj0hIW47Zm9yKHZhciBpPTAsbz1lLmxlbmd0aDtpPG87aSsrKW4hPT0hIXQoZVtpXSxpKSYmci5wdXNoKGVbaV0pO3JldHVybiByfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz1bXSxzPTAsbD1lLmxlbmd0aDtpZihlIGluc3RhbmNlb2YgYXx8dm9pZCAwIT09bCYmIm51bWJlciI9PXR5cGVvZiBsJiYobD4wJiZlWzBdJiZlW2wtMV18fDA9PT1sfHxhLmlzQXJyYXkoZSkpKWZvcig7czxsO3MrKyludWxsIT0ocj10KGVbc10scyxuKSkmJihvW28ubGVuZ3RoXT1yKTtlbHNlIGZvcihpIGluIGUpbnVsbCE9KHI9dChlW2ldLGksbikpJiYob1tvLmxlbmd0aF09cik7cmV0dXJuIG8uY29uY2F0LmFwcGx5KFtdLG8pfSxndWlkOjEscHJveHk6ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIj09dHlwZW9mIHQpe3ZhciBuPWVbdF07dD1lLGU9bn1pZihhLmlzRnVuY3Rpb24oZSkpe3ZhciByPUEuY2FsbChhcmd1bWVudHMsMiksaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHQsci5jb25jYXQoQS5jYWxsKGFyZ3VtZW50cykpKX07cmV0dXJuIGkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxpLmd1aWR8fGEuZ3VpZCsrLGl9fSxhY2Nlc3M6ZnVuY3Rpb24oZSx0LG4scixpLG8scyl7dmFyIGwsdT1udWxsPT1uLGM9MCxmPWUubGVuZ3RoO2lmKG4mJiJvYmplY3QiPT10eXBlb2Ygbil7Zm9yKGMgaW4gbilhLmFjY2VzcyhlLHQsYyxuW2NdLDEsbyxyKTtpPTF9ZWxzZSBpZih2b2lkIDAhPT1yKXtpZihsPXZvaWQgMD09PXMmJmEuaXNGdW5jdGlvbihyKSx1JiYobD8obD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwoYShlKSxuKX0pOih0LmNhbGwoZSxyKSx0PW51bGwpKSx0KWZvcig7YzxmO2MrKyl0KGVbY10sbixsP3IuY2FsbChlW2NdLGMsdChlW2NdLG4pKTpyLHMpO2k9MX1yZXR1cm4gaT9lOnU/dC5jYWxsKGUpOmY/dChlWzBdLG4pOm99LG5vdzpmdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfSx1YU1hdGNoOmZ1bmN0aW9uKGUpe2U9ZS50b0xvd2VyQ2FzZSgpO3ZhciB0PXYuZXhlYyhlKXx8eS5leGVjKGUpfHxiLmV4ZWMoZSl8fGUuaW5kZXhPZigiY29tcGF0aWJsZSIpPDAmJnguZXhlYyhlKXx8W107cmV0dXJue2Jyb3dzZXI6dFsxXXx8IiIsdmVyc2lvbjp0WzJdfHwiMCJ9fSxzdWI6ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQsbil7cmV0dXJuIG5ldyBlLmZuLmluaXQodCxuKX1hLmV4dGVuZCghMCxlLHRoaXMpLGUuc3VwZXJjbGFzcz10aGlzLGUuZm49ZS5wcm90b3R5cGU9dGhpcygpLGUuZm4uY29uc3RydWN0b3I9ZSxlLnN1Yj10aGlzLnN1YixlLmZuLmluaXQ9ZnVuY3Rpb24odCxyKXtyZXR1cm4gciYmciBpbnN0YW5jZW9mIGEmJiEociBpbnN0YW5jZW9mIGUpJiYocj1lKHIpKSxhLmZuLmluaXQuY2FsbCh0aGlzLHQscixuKX0sZS5mbi5pbml0LnByb3RvdHlwZT1lLmZuO3ZhciBuPWUodCk7cmV0dXJuIGV9LGJyb3dzZXI6e319KSxhLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7RlsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KSksKHI9YS51YU1hdGNoKEMpKS5icm93c2VyJiYoYS5icm93c2VyW3IuYnJvd3Nlcl09ITAsYS5icm93c2VyLnZlcnNpb249ci52ZXJzaW9uKSxhLmJyb3dzZXIud2Via2l0JiYoYS5icm93c2VyLnNhZmFyaT0hMCksL1xTLy50ZXN0KCLCoCIpJiYoYz0vXltcc1x4QTBdKy8sZj0vW1xzXHhBMF0rJC8pLGU9YSh0KSx0LmFkZEV2ZW50TGlzdGVuZXI/bz1mdW5jdGlvbigpe3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksYS5yZWFkeSgpfTp0LmF0dGFjaEV2ZW50JiYobz1mdW5jdGlvbigpeyJjb21wbGV0ZSI9PT10LnJlYWR5U3RhdGUmJih0LmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGEucmVhZHkoKSl9KSxhfSgpLG89e307aS5DYWxsYmFja3M9ZnVuY3Rpb24oZSl7ZT1lP29bZV18fGZ1bmN0aW9uKGUpe3ZhciB0LG4scj1vW2VdPXt9O2Zvcih0PTAsbj0oZT1lLnNwbGl0KC9ccysvKSkubGVuZ3RoO3Q8bjt0KyspcltlW3RdXT0hMDtyZXR1cm4gcn0oZSk6e307dmFyIHQsbixyLGEscyxsLHU9W10sYz1bXSxmPWZ1bmN0aW9uKHQpe3ZhciBuLHIsbyxhO2ZvcihuPTAscj10Lmxlbmd0aDtuPHI7bisrKW89dFtuXSwiYXJyYXkiPT09KGE9aS50eXBlKG8pKT9mKG8pOiJmdW5jdGlvbiI9PT1hJiYoZS51bmlxdWUmJnAuaGFzKG8pfHx1LnB1c2gobykpfSxkPWZ1bmN0aW9uKGksbyl7Zm9yKG89b3x8W10sdD0hZS5tZW1vcnl8fFtpLG9dLG49ITAscj0hMCxsPWF8fDAsYT0wLHM9dS5sZW5ndGg7dSYmbDxzO2wrKylpZighMT09PXVbbF0uYXBwbHkoaSxvKSYmZS5zdG9wT25GYWxzZSl7dD0hMDticmVha31yPSExLHUmJihlLm9uY2U/ITA9PT10P3AuZGlzYWJsZSgpOnU9W106YyYmYy5sZW5ndGgmJih0PWMuc2hpZnQoKSxwLmZpcmVXaXRoKHRbMF0sdFsxXSkpKX0scD17YWRkOmZ1bmN0aW9uKCl7aWYodSl7dmFyIGU9dS5sZW5ndGg7Zihhcmd1bWVudHMpLHI/cz11Lmxlbmd0aDp0JiYhMCE9PXQmJihhPWUsZCh0WzBdLHRbMV0pKX1yZXR1cm4gdGhpc30sCnJlbW92ZTpmdW5jdGlvbigpe2lmKHUpZm9yKHZhciB0PWFyZ3VtZW50cyxuPTAsaT10Lmxlbmd0aDtuPGk7bisrKWZvcih2YXIgbz0wO288dS5sZW5ndGgmJih0W25dIT09dVtvXXx8KHImJm88PXMmJihzLS0sbzw9bCYmbC0tKSx1LnNwbGljZShvLS0sMSksIWUudW5pcXVlKSk7bysrKTtyZXR1cm4gdGhpc30saGFzOmZ1bmN0aW9uKGUpe2lmKHUpZm9yKHZhciB0PTAsbj11Lmxlbmd0aDt0PG47dCsrKWlmKGU9PT11W3RdKXJldHVybiEwO3JldHVybiExfSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiB1PVtdLHRoaXN9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdT1jPXQ9dm9pZCAwLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXV9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYz12b2lkIDAsdCYmITAhPT10fHxwLmRpc2FibGUoKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hY30sZmlyZVdpdGg6ZnVuY3Rpb24obixpKXtyZXR1cm4gYyYmKHI/ZS5vbmNlfHxjLnB1c2goW24saV0pOmUub25jZSYmdHx8ZChuLGkpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIHAuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFufX07cmV0dXJuIHB9O3ZhciBhPVtdLnNsaWNlO2kuZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgdCxuPWkuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHI9aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5Iiksbz1pLkNhbGxiYWNrcygibWVtb3J5IiksYT0icGVuZGluZyIscz17cmVzb2x2ZTpuLHJlamVjdDpyLG5vdGlmeTpvfSxsPXtkb25lOm4uYWRkLGZhaWw6ci5hZGQscHJvZ3Jlc3M6by5hZGQsc3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gYX0saXNSZXNvbHZlZDpuLmZpcmVkLGlzUmVqZWN0ZWQ6ci5maXJlZCx0aGVuOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdS5kb25lKGUpLmZhaWwodCkucHJvZ3Jlc3MobiksdGhpc30sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIHUuZG9uZS5hcHBseSh1LGFyZ3VtZW50cykuZmFpbC5hcHBseSh1LGFyZ3VtZW50cyksdGhpc30scGlwZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuRGVmZXJyZWQoKGZ1bmN0aW9uKHIpe2kuZWFjaCh7ZG9uZTpbZSwicmVzb2x2ZSJdLGZhaWw6W3QsInJlamVjdCJdLHByb2dyZXNzOltuLCJub3RpZnkiXX0sKGZ1bmN0aW9uKGUsdCl7dmFyIG4sbz10WzBdLGE9dFsxXTtpLmlzRnVuY3Rpb24obyk/dVtlXSgoZnVuY3Rpb24oKXsobj1vLmFwcGx5KHRoaXMsYXJndW1lbnRzKSkmJmkuaXNGdW5jdGlvbihuLnByb21pc2UpP24ucHJvbWlzZSgpLnRoZW4oci5yZXNvbHZlLHIucmVqZWN0LHIubm90aWZ5KTpyW2ErIldpdGgiXSh0aGlzPT09dT9yOnRoaXMsW25dKX0pKTp1W2VdKHJbYV0pfSkpfSkpLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtpZihudWxsPT1lKWU9bDtlbHNlIGZvcih2YXIgdCBpbiBsKWVbdF09bFt0XTtyZXR1cm4gZX19LHU9bC5wcm9taXNlKHt9KTtmb3IodCBpbiBzKXVbdF09c1t0XS5maXJlLHVbdCsiV2l0aCJdPXNbdF0uZmlyZVdpdGg7cmV0dXJuIHUuZG9uZSgoZnVuY3Rpb24oKXthPSJyZXNvbHZlZCJ9KSxyLmRpc2FibGUsby5sb2NrKS5mYWlsKChmdW5jdGlvbigpe2E9InJlamVjdGVkIn0pLG4uZGlzYWJsZSxvLmxvY2spLGUmJmUuY2FsbCh1LHUpLHV9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIHQ9YS5jYWxsKGFyZ3VtZW50cywwKSxuPTAscj10Lmxlbmd0aCxvPW5ldyBBcnJheShyKSxzPXIsbD1yPD0xJiZlJiZpLmlzRnVuY3Rpb24oZS5wcm9taXNlKT9lOmkuRGVmZXJyZWQoKSx1PWwucHJvbWlzZSgpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RbZV09YXJndW1lbnRzLmxlbmd0aD4xP2EuY2FsbChhcmd1bWVudHMsMCk6biwtLXN8fGwucmVzb2x2ZVdpdGgobCx0KX19ZnVuY3Rpb24gZihlKXtyZXR1cm4gZnVuY3Rpb24odCl7b1tlXT1hcmd1bWVudHMubGVuZ3RoPjE/YS5jYWxsKGFyZ3VtZW50cywwKTp0LGwubm90aWZ5V2l0aCh1LG8pfX1pZihyPjEpe2Zvcig7bjxyO24rKyl0W25dJiZ0W25dLnByb21pc2UmJmkuaXNGdW5jdGlvbih0W25dLnByb21pc2UpP3Rbbl0ucHJvbWlzZSgpLnRoZW4oYyhuKSxsLnJlamVjdCxmKG4pKTotLXM7c3x8bC5yZXNvbHZlV2l0aChsLHQpfWVsc2UgbCE9PWUmJmwucmVzb2x2ZVdpdGgobCxyP1tlXTpbXSk7cmV0dXJuIHV9fSksaS5zdXBwb3J0PXtsZWFkaW5nV2hpdGVzcGFjZTohMCx0Ym9keTohMCxodG1sU2VyaWFsaXplOiEwLHN0eWxlOiEwLGhyZWZOb3JtYWxpemVkOiEwLG9wYWNpdHk6ITAsY3NzRmxvYXQ6ITAsY2hlY2tPbjohMCxvcHRTZWxlY3RlZDohMCxnZXRTZXRBdHRyaWJ1dGU6ITAsZW5jdHlwZTohMCxodG1sNUNsb25lOiEwLHN1Ym1pdEJ1YmJsZXM6ITAsY2hhbmdlQnViYmxlczohMCxmb2N1c2luQnViYmxlczohMSxkZWxldGVFeHBhbmRvOiEwLG5vQ2xvbmVFdmVudDohMCxpbmxpbmVCbG9ja05lZWRzTGF5b3V0OiExLHNocmlua1dyYXBCbG9ja3M6ITEscmVsaWFibGVNYXJnaW5SaWdodDohMCxwaXhlbE1hcmdpbjohMCxib3hNb2RlbDohMCxub0Nsb25lQ2hlY2tlZDohMCxvcHREaXNhYmxlZDohMCxyYWRpb1ZhbHVlOiEwLGNoZWNrQ2xvbmU6ITAsYXBwZW5kQ2hlY2tlZDohMCxhamF4OiEwLGNvcnM6ITAscmVsaWFibGVIaWRkZW5PZmZzZXRzOiEwLGRvZXNOb3RBZGRCb3JkZXI6ITAsZG9lc0FkZEJvcmRlckZvclRhYmxlQW5kQ2VsbHM6ITEsZml4ZWRQb3NpdGlvbjohMCxzdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGU6ITEsZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQ6ITB9O3ZhciBzPS9eKD86XHsuKlx9fFxbLipcXSkkLyxsPS8oW0EtWl0pL2c7ZnVuY3Rpb24gdShlLHQsbil7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpe3ZhciByPSJkYXRhLSIrdC5yZXBsYWNlKGwsIi0kMSIpLnRvTG93ZXJDYXNlKCk7aWYoInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5ewpuPSJ0cnVlIj09PW58fCJmYWxzZSIhPT1uJiYoIm51bGwiPT09bj9udWxsOmkuaXNOdW1lcmljKG4pPytuOnMudGVzdChuKT9pLnBhcnNlSlNPTihuKTpuKX1jYXRjaChlKXt9aS5kYXRhKGUsdCxuKX1lbHNlIG49dm9pZCAwfXJldHVybiBufWZ1bmN0aW9uIGMoZSl7Zm9yKHZhciB0IGluIGUpaWYoKCJkYXRhIiE9PXR8fCFpLmlzRW1wdHlPYmplY3QoZVt0XSkpJiYidG9KU09OIiE9PXQpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gZihlLHQsbil7dmFyIHI9dCsiZGVmZXIiLG89dCsicXVldWUiLGE9dCsibWFyayIscz1pLl9kYXRhKGUscik7IXN8fCJxdWV1ZSIhPT1uJiZpLl9kYXRhKGUsbyl8fCJtYXJrIiE9PW4mJmkuX2RhdGEoZSxhKXx8c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLl9kYXRhKGUsbyl8fGkuX2RhdGEoZSxhKXx8KGkucmVtb3ZlRGF0YShlLHIsITApLHMuZmlyZSgpKX0pLDApfWkuZXh0ZW5kKHtjYWNoZTp7fSx1dWlkOjAsZXhwYW5kbzoialF1ZXJ5IisoaS5mbi5qcXVlcnkrTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksbm9EYXRhOntlbWJlZDohMCxvYmplY3Q6ImNsc2lkOkQyN0NEQjZFLUFFNkQtMTFjZi05NkI4LTQ0NDU1MzU0MDAwMCIsYXBwbGV0OiEwfSxoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5ub2RlVHlwZT9pLmNhY2hlW2VbaS5leHBhbmRvXV06ZVtpLmV4cGFuZG9dKSYmIWMoZSl9LGRhdGE6ZnVuY3Rpb24oZSx0LG4scil7aWYoaS5hY2NlcHREYXRhKGUpKXt2YXIgbyxhLHMsbD1pLmV4cGFuZG8sdT0ic3RyaW5nIj09dHlwZW9mIHQsYz1lLm5vZGVUeXBlLGY9Yz9pLmNhY2hlOmUsZD1jP2VbbF06ZVtsXSYmbCxwPSJldmVudHMiPT09dDtpZihkJiZmW2RdJiYocHx8cnx8ZltkXS5kYXRhKXx8IXV8fHZvaWQgMCE9PW4pcmV0dXJuIGR8fChjP2VbbF09ZD0rK2kudXVpZDpkPWwpLGZbZF18fChmW2RdPXt9LGN8fChmW2RdLnRvSlNPTj1pLm5vb3ApKSwib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwocj9mW2RdPWkuZXh0ZW5kKGZbZF0sdCk6ZltkXS5kYXRhPWkuZXh0ZW5kKGZbZF0uZGF0YSx0KSksbz1hPWZbZF0scnx8KGEuZGF0YXx8KGEuZGF0YT17fSksYT1hLmRhdGEpLHZvaWQgMCE9PW4mJihhW2kuY2FtZWxDYXNlKHQpXT1uKSxwJiYhYVt0XT9vLmV2ZW50czoodT9udWxsPT0ocz1hW3RdKSYmKHM9YVtpLmNhbWVsQ2FzZSh0KV0pOnM9YSxzKX19LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSx0LG4pe2lmKGkuYWNjZXB0RGF0YShlKSl7dmFyIHIsbyxhLHM9aS5leHBhbmRvLGw9ZS5ub2RlVHlwZSx1PWw/aS5jYWNoZTplLGY9bD9lW3NdOnM7aWYodVtmXSl7aWYodCYmKHI9bj91W2ZdOnVbZl0uZGF0YSkpe2kuaXNBcnJheSh0KXx8KHQ9dCBpbiByfHwodD1pLmNhbWVsQ2FzZSh0KSlpbiByP1t0XTp0LnNwbGl0KCIgIikpO2ZvcihvPTAsYT10Lmxlbmd0aDtvPGE7bysrKWRlbGV0ZSByW3Rbb11dO2lmKCEobj9jOmkuaXNFbXB0eU9iamVjdCkocikpcmV0dXJufShufHwoZGVsZXRlIHVbZl0uZGF0YSxjKHVbZl0pKSkmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kb3x8IXUuc2V0SW50ZXJ2YWw/ZGVsZXRlIHVbZl06dVtmXT1udWxsLGwmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kbz9kZWxldGUgZVtzXTplLnJlbW92ZUF0dHJpYnV0ZT9lLnJlbW92ZUF0dHJpYnV0ZShzKTplW3NdPW51bGwpKX19fSxfZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGF0YShlLHQsbiwhMCl9LGFjY2VwdERhdGE6ZnVuY3Rpb24oZSl7aWYoZS5ub2RlTmFtZSl7dmFyIHQ9aS5ub0RhdGFbZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXTtpZih0KXJldHVybiEoITA9PT10fHxlLmdldEF0dHJpYnV0ZSgiY2xhc3NpZCIpIT09dCl9cmV0dXJuITB9fSksaS5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG8sYSxzLGw9dGhpc1swXSxjPTAsZj1udWxsO2lmKHZvaWQgMD09PWUpe2lmKHRoaXMubGVuZ3RoJiYoZj1pLmRhdGEobCksMT09PWwubm9kZVR5cGUmJiFpLl9kYXRhKGwsInBhcnNlZEF0dHJzIikpKXtmb3Iocz0obz1sLmF0dHJpYnV0ZXMpLmxlbmd0aDtjPHM7YysrKTA9PT0oYT1vW2NdLm5hbWUpLmluZGV4T2YoImRhdGEtIikmJihhPWkuY2FtZWxDYXNlKGEuc3Vic3RyaW5nKDUpKSx1KGwsYSxmW2FdKSk7aS5fZGF0YShsLCJwYXJzZWRBdHRycyIsITApfXJldHVybiBmfXJldHVybiJvYmplY3QiPT10eXBlb2YgZT90aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kYXRhKHRoaXMsZSl9KSk6KChuPWUuc3BsaXQoIi4iLDIpKVsxXT1uWzFdPyIuIituWzFdOiIiLHI9blsxXSsiISIsaS5hY2Nlc3ModGhpcywoZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dClyZXR1cm4gdm9pZCAwPT09KGY9dGhpcy50cmlnZ2VySGFuZGxlcigiZ2V0RGF0YSIrcixbblswXV0pKSYmbCYmKGY9aS5kYXRhKGwsZSksZj11KGwsZSxmKSksdm9pZCAwPT09ZiYmblsxXT90aGlzLmRhdGEoblswXSk6ZjtuWzFdPXQsdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBvPWkodGhpcyk7by50cmlnZ2VySGFuZGxlcigic2V0RGF0YSIrcixuKSxpLmRhdGEodGhpcyxlLHQpLG8udHJpZ2dlckhhbmRsZXIoImNoYW5nZURhdGEiK3Isbil9KSl9KSxudWxsLHQsYXJndW1lbnRzLmxlbmd0aD4xLG51bGwsITEpKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlRGF0YSh0aGlzLGUpfSkpfX0pLGkuZXh0ZW5kKHtfbWFyazpmdW5jdGlvbihlLHQpe2UmJih0PSh0fHwiZngiKSsibWFyayIsaS5fZGF0YShlLHQsKGkuX2RhdGEoZSx0KXx8MCkrMSkpfSxfdW5tYXJrOmZ1bmN0aW9uKGUsdCxuKXtpZighMCE9PWUmJihuPXQsdD1lLGU9ITEpLHQpe3ZhciByPShuPW58fCJmeCIpKyJtYXJrIixvPWU/MDooaS5fZGF0YSh0LHIpfHwxKS0xO28/aS5fZGF0YSh0LHIsbyk6KGkucmVtb3ZlRGF0YSh0LHIsITApLGYodCxuLCJtYXJrIikpfX0scXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1pLl9kYXRhKGUsdCksCm4mJighcnx8aS5pc0FycmF5KG4pP3I9aS5fZGF0YShlLHQsaS5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49aS5xdWV1ZShlLHQpLHI9bi5zaGlmdCgpLG89e307ImlucHJvZ3Jlc3MiPT09ciYmKHI9bi5zaGlmdCgpKSxyJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGkuX2RhdGEoZSx0KyIucnVuIixvKSxyLmNhbGwoZSwoZnVuY3Rpb24oKXtpLmRlcXVldWUoZSx0KX0pLG8pKSxuLmxlbmd0aHx8KGkucmVtb3ZlRGF0YShlLHQrInF1ZXVlICIrdCsiLnJ1biIsITApLGYoZSx0LCJxdWV1ZSIpKX19KSxpLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0KXt2YXIgbj0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPSJmeCIsbi0tKSxhcmd1bWVudHMubGVuZ3RoPG4/aS5xdWV1ZSh0aGlzWzBdLGUpOnZvaWQgMD09PXQ/dGhpczp0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIG49aS5xdWV1ZSh0aGlzLGUsdCk7ImZ4Ij09PWUmJiJpbnByb2dyZXNzIiE9PW5bMF0mJmkuZGVxdWV1ZSh0aGlzLGUpfSkpfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kZXF1ZXVlKHRoaXMsZSl9KSl9LGRlbGF5OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9aS5meCYmaS5meC5zcGVlZHNbZV18fGUsdD10fHwiZngiLHRoaXMucXVldWUodCwoZnVuY3Rpb24odCxuKXt2YXIgcj1zZXRUaW1lb3V0KHQsZSk7bi5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIpfX0pKX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5xdWV1ZShlfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihlLHQpeyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO3ZhciBuLHI9aS5EZWZlcnJlZCgpLG89dGhpcyxhPW8ubGVuZ3RoLHM9MSxsPWUrImRlZmVyIix1PWUrInF1ZXVlIixjPWUrIm1hcmsiO2Z1bmN0aW9uIGYoKXstLXN8fHIucmVzb2x2ZVdpdGgobyxbb10pfWZvcig7YS0tOykobj1pLmRhdGEob1thXSxsLHZvaWQgMCwhMCl8fChpLmRhdGEob1thXSx1LHZvaWQgMCwhMCl8fGkuZGF0YShvW2FdLGMsdm9pZCAwLCEwKSkmJmkuZGF0YShvW2FdLGwsaS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksITApKSYmKHMrKyxuLmFkZChmKSk7cmV0dXJuIGYoKSxyLnByb21pc2UodCl9fSk7dmFyIGQscCxoLG09L1tcblx0XHJdL2csZz0vXHMrLyx2PS9cci9nLHk9L14oPzpidXR0b258aW5wdXQpJC9pLGI9L14oPzpidXR0b258aW5wdXR8b2JqZWN0fHNlbGVjdHx0ZXh0YXJlYSkkL2kseD0vXmEoPzpyZWEpPyQvaSx3PS9eKD86YXV0b2ZvY3VzfGF1dG9wbGF5fGFzeW5jfGNoZWNrZWR8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWR8c2VsZWN0ZWQpJC9pLFQ9aS5zdXBwb3J0LmdldFNldEF0dHJpYnV0ZTtpLmZuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLGkuYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlQXR0cih0aGlzLGUpfSkpfSxwcm9wOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsaS5wcm9wLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxyZW1vdmVQcm9wOmZ1bmN0aW9uKGUpe3JldHVybiBlPWkucHJvcEZpeFtlXXx8ZSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dHJ5e3RoaXNbZV09dm9pZCAwLGRlbGV0ZSB0aGlzW2VdfWNhdGNoKGUpe319KSl9LGFkZENsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLmFkZENsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGUpZm9yKHQ9ZS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSlpZihvLmNsYXNzTmFtZXx8MSE9PXQubGVuZ3RoKXtmb3IoYT0iICIrby5jbGFzc05hbWUrIiAiLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspfmEuaW5kZXhPZigiICIrdFtzXSsiICIpfHwoYSs9dFtzXSsiICIpO28uY2xhc3NOYW1lPWkudHJpbShhKX1lbHNlIG8uY2xhc3NOYW1lPWU7cmV0dXJuIHRoaXN9LHJlbW92ZUNsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLnJlbW92ZUNsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGV8fHZvaWQgMD09PWUpZm9yKHQ9KGV8fCIiKS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSYmby5jbGFzc05hbWUpaWYoZSl7Zm9yKGE9KCIgIitvLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspYT1hLnJlcGxhY2UoIiAiK3Rbc10rIiAiLCIgIik7by5jbGFzc05hbWU9aS50cmltKGEpfWVsc2Ugby5jbGFzc05hbWU9IiI7cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIGUscj0iYm9vbGVhbiI9PXR5cGVvZiB0O3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sdGhpcy5jbGFzc05hbWUsdCksdCl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe2lmKCJzdHJpbmciPT09bilmb3IodmFyIG8sYT0wLHM9aSh0aGlzKSxsPXQsdT1lLnNwbGl0KGcpO289dVthKytdOylsPXI/bDohcy5oYXNDbGFzcyhvKSwKc1tsPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0obyk7ZWxzZSJ1bmRlZmluZWQiIT09biYmImJvb2xlYW4iIT09bnx8KHRoaXMuY2xhc3NOYW1lJiZpLl9kYXRhKHRoaXMsIl9fY2xhc3NOYW1lX18iLHRoaXMuY2xhc3NOYW1lKSx0aGlzLmNsYXNzTmFtZT10aGlzLmNsYXNzTmFtZXx8ITE9PT1lPyIiOmkuX2RhdGEodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIil9KSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0iICIrZSsiICIsbj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylpZigxPT09dGhpc1tuXS5ub2RlVHlwZSYmKCIgIit0aGlzW25dLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLmluZGV4T2YodCk+LTEpcmV0dXJuITA7cmV0dXJuITF9LHZhbDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz10aGlzWzBdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhyPWkuaXNGdW5jdGlvbihlKSx0aGlzLmVhY2goKGZ1bmN0aW9uKG4pe3ZhciBvLGE9aSh0aGlzKTsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PShvPXI/ZS5jYWxsKHRoaXMsbixhLnZhbCgpKTplKT9vPSIiOiJudW1iZXIiPT10eXBlb2Ygbz9vKz0iIjppLmlzQXJyYXkobykmJihvPWkubWFwKG8sKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSkpLCh0PWkudmFsSG9va3NbdGhpcy50eXBlXXx8aS52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSYmInNldCJpbiB0JiZ2b2lkIDAhPT10LnNldCh0aGlzLG8sInZhbHVlIil8fCh0aGlzLnZhbHVlPW8pKX0pKSk6bz8odD1pLnZhbEhvb2tzW28udHlwZV18fGkudmFsSG9va3Nbby5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gdCYmdm9pZCAwIT09KG49dC5nZXQobywidmFsdWUiKSk/bjoic3RyaW5nIj09dHlwZW9mKG49by52YWx1ZSk/bi5yZXBsYWNlKHYsIiIpOm4/PyIiOnZvaWQgMH19KSxpLmV4dGVuZCh7dmFsSG9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUuYXR0cmlidXRlcy52YWx1ZTtyZXR1cm4hdHx8dC5zcGVjaWZpZWQ/ZS52YWx1ZTplLnRleHR9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbyxhPWUuc2VsZWN0ZWRJbmRleCxzPVtdLGw9ZS5vcHRpb25zLHU9InNlbGVjdC1vbmUiPT09ZS50eXBlO2lmKGE8MClyZXR1cm4gbnVsbDtmb3Iobj11P2E6MCxyPXU/YSsxOmwubGVuZ3RoO248cjtuKyspaWYoKG89bFtuXSkuc2VsZWN0ZWQmJihpLnN1cHBvcnQub3B0RGlzYWJsZWQ/IW8uZGlzYWJsZWQ6bnVsbD09PW8uZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKSYmKCFvLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFpLm5vZGVOYW1lKG8ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9aShvKS52YWwoKSx1KXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gdSYmIXMubGVuZ3RoJiZsLmxlbmd0aD9pKGxbYV0pLnZhbCgpOnN9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWkubWFrZUFycmF5KHQpO3JldHVybiBpKGUpLmZpbmQoIm9wdGlvbiIpLmVhY2goKGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZD1pLmluQXJyYXkoaSh0aGlzKS52YWwoKSxuKT49MH0pKSxuLmxlbmd0aHx8KGUuc2VsZWN0ZWRJbmRleD0tMSksbn19fSxhdHRyRm46e3ZhbDohMCxjc3M6ITAsaHRtbDohMCx0ZXh0OiEwLGRhdGE6ITAsd2lkdGg6ITAsaGVpZ2h0OiEwLG9mZnNldDohMH0sYXR0cjpmdW5jdGlvbihlLHQsbixyKXt2YXIgbyxhLHMsbD1lLm5vZGVUeXBlO2lmKGUmJjMhPT1sJiY4IT09bCYmMiE9PWwpcmV0dXJuIHImJnQgaW4gaS5hdHRyRm4/aShlKVt0XShuKTp2b2lkIDA9PT1lLmdldEF0dHJpYnV0ZT9pLnByb3AoZSx0LG4pOigocz0xIT09bHx8IWkuaXNYTUxEb2MoZSkpJiYodD10LnRvTG93ZXJDYXNlKCksYT1pLmF0dHJIb29rc1t0XXx8KHcudGVzdCh0KT9wOmQpKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgaS5yZW1vdmVBdHRyKGUsdCk6YSYmInNldCJpbiBhJiZzJiZ2b2lkIDAhPT0obz1hLnNldChlLG4sdCkpP286KGUuc2V0QXR0cmlidXRlKHQsIiIrbiksbik6YSYmImdldCJpbiBhJiZzJiZudWxsIT09KG89YS5nZXQoZSx0KSk/bzpudWxsPT09KG89ZS5nZXRBdHRyaWJ1dGUodCkpP3ZvaWQgMDpvKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHMsbD0wO2lmKHQmJjE9PT1lLm5vZGVUeXBlKWZvcihhPShyPXQudG9Mb3dlckNhc2UoKS5zcGxpdChnKSkubGVuZ3RoO2w8YTtsKyspKG89cltsXSkmJihuPWkucHJvcEZpeFtvXXx8bywocz13LnRlc3QobykpfHxpLmF0dHIoZSxvLCIiKSxlLnJlbW92ZUF0dHJpYnV0ZShUP286bikscyYmbiBpbiBlJiYoZVtuXT0hMSkpfSxhdHRySG9va3M6e3R5cGU6e3NldDpmdW5jdGlvbihlLHQpe2lmKHkudGVzdChlLm5vZGVOYW1lKSYmZS5wYXJlbnROb2RlKWkuZXJyb3IoInR5cGUgcHJvcGVydHkgY2FuJ3QgYmUgY2hhbmdlZCIpO2Vsc2UgaWYoIWkuc3VwcG9ydC5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmaS5ub2RlTmFtZShlLCJpbnB1dCIpKXt2YXIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fSx2YWx1ZTp7Z2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIik/ZC5nZXQoZSx0KTp0IGluIGU/ZS52YWx1ZTpudWxsfSxzZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIikpcmV0dXJuIGQuc2V0KGUsdCxuKTtlLnZhbHVlPXR9fX0scHJvcEZpeDp7dGFiaW5kZXg6InRhYkluZGV4IixyZWFkb25seToicmVhZE9ubHkiLGZvcjoiaHRtbEZvciIsY2xhc3M6ImNsYXNzTmFtZSIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY2VsbHBhZGRpbmc6ImNlbGxQYWRkaW5nIixyb3dzcGFuOiJyb3dTcGFuIixjb2xzcGFuOiJjb2xTcGFuIix1c2VtYXA6InVzZU1hcCIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixjb250ZW50ZWRpdGFibGU6ImNvbnRlbnRFZGl0YWJsZSJ9LHByb3A6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYT1lLm5vZGVUeXBlCjtpZihlJiYzIT09YSYmOCE9PWEmJjIhPT1hKXJldHVybigxIT09YXx8IWkuaXNYTUxEb2MoZSkpJiYodD1pLnByb3BGaXhbdF18fHQsbz1pLnByb3BIb29rc1t0XSksdm9pZCAwIT09bj9vJiYic2V0ImluIG8mJnZvaWQgMCE9PShyPW8uc2V0KGUsbix0KSk/cjplW3RdPW46byYmImdldCJpbiBvJiZudWxsIT09KHI9by5nZXQoZSx0KSk/cjplW3RdfSxwcm9wSG9va3M6e3RhYkluZGV4OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGVOb2RlKCJ0YWJpbmRleCIpO3JldHVybiB0JiZ0LnNwZWNpZmllZD9wYXJzZUludCh0LnZhbHVlLDEwKTpiLnRlc3QoZS5ub2RlTmFtZSl8fHgudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6dm9pZCAwfX19fSksaS5hdHRySG9va3MudGFiaW5kZXg9aS5wcm9wSG9va3MudGFiSW5kZXgscD17Z2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1pLnByb3AoZSx0KTtyZXR1cm4hMD09PXJ8fCJib29sZWFuIiE9dHlwZW9mIHImJihuPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJiExIT09bi5ub2RlVmFsdWU/dC50b0xvd2VyQ2FzZSgpOnZvaWQgMH0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtyZXR1cm4hMT09PXQ/aS5yZW1vdmVBdHRyKGUsbik6KChyPWkucHJvcEZpeFtuXXx8bilpbiBlJiYoZVtyXT0hMCksZS5zZXRBdHRyaWJ1dGUobixuLnRvTG93ZXJDYXNlKCkpKSxufX0sVHx8KGg9e25hbWU6ITAsaWQ6ITAsY29vcmRzOiEwfSxkPWkudmFsSG9va3MuYnV0dG9uPXtnZXQ6ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4obj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiYoaFt0XT8iIiE9PW4ubm9kZVZhbHVlOm4uc3BlY2lmaWVkKT9uLm5vZGVWYWx1ZTp2b2lkIDB9LHNldDpmdW5jdGlvbihlLG4scil7dmFyIGk9ZS5nZXRBdHRyaWJ1dGVOb2RlKHIpO3JldHVybiBpfHwoaT10LmNyZWF0ZUF0dHJpYnV0ZShyKSxlLnNldEF0dHJpYnV0ZU5vZGUoaSkpLGkubm9kZVZhbHVlPW4rIiJ9fSxpLmF0dHJIb29rcy50YWJpbmRleC5zZXQ9ZC5zZXQsaS5lYWNoKFsid2lkdGgiLCJoZWlnaHQiXSwoZnVuY3Rpb24oZSx0KXtpLmF0dHJIb29rc1t0XT1pLmV4dGVuZChpLmF0dHJIb29rc1t0XSx7c2V0OmZ1bmN0aW9uKGUsbil7aWYoIiI9PT1uKXJldHVybiBlLnNldEF0dHJpYnV0ZSh0LCJhdXRvIiksbn19KX0pKSxpLmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGU9e2dldDpkLmdldCxzZXQ6ZnVuY3Rpb24oZSx0LG4peyIiPT09dCYmKHQ9ImZhbHNlIiksZC5zZXQoZSx0LG4pfX0pLGkuc3VwcG9ydC5ocmVmTm9ybWFsaXplZHx8aS5lYWNoKFsiaHJlZiIsInNyYyIsIndpZHRoIiwiaGVpZ2h0Il0sKGZ1bmN0aW9uKGUsdCl7aS5hdHRySG9va3NbdF09aS5leHRlbmQoaS5hdHRySG9va3NbdF0se2dldDpmdW5jdGlvbihlKXt2YXIgbj1lLmdldEF0dHJpYnV0ZSh0LDIpO3JldHVybiBudWxsPT09bj92b2lkIDA6bn19KX0pKSxpLnN1cHBvcnQuc3R5bGV8fChpLmF0dHJIb29rcy5zdHlsZT17Z2V0OmZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlLmNzc1RleHQudG9Mb3dlckNhc2UoKXx8dm9pZCAwfSxzZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5zdHlsZS5jc3NUZXh0PSIiK3R9fSksaS5zdXBwb3J0Lm9wdFNlbGVjdGVkfHwoaS5wcm9wSG9va3Muc2VsZWN0ZWQ9aS5leHRlbmQoaS5wcm9wSG9va3Muc2VsZWN0ZWQse2dldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7cmV0dXJuIHQmJih0LnNlbGVjdGVkSW5kZXgsdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCksbnVsbH19KSksaS5zdXBwb3J0LmVuY3R5cGV8fChpLnByb3BGaXguZW5jdHlwZT0iZW5jb2RpbmciKSxpLnN1cHBvcnQuY2hlY2tPbnx8aS5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLChmdW5jdGlvbigpe2kudmFsSG9va3NbdGhpc109e2dldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpPyJvbiI6ZS52YWx1ZX19fSkpLGkuZWFjaChbInJhZGlvIiwiY2hlY2tib3giXSwoZnVuY3Rpb24oKXtpLnZhbEhvb2tzW3RoaXNdPWkuZXh0ZW5kKGkudmFsSG9va3NbdGhpc10se3NldDpmdW5jdGlvbihlLHQpe2lmKGkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPWkuaW5BcnJheShpKGUpLnZhbCgpLHQpPj0wfX0pfSkpO3ZhciBOPS9eKD86dGV4dGFyZWF8aW5wdXR8c2VsZWN0KSQvaSxDPS9eKFteXC5dKik/KD86XC4oLispKT8kLyxTPS8oPzpefFxzKWhvdmVyKFwuXFMrKT9cYi8saz0vXmtleS8sRT0vXig/Om1vdXNlfGNvbnRleHRtZW51KXxjbGljay8sQT0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8sRD0vXihcdyopKD86IyhbXHdcLV0rKSk/KD86XC4oW1x3XC1dKykpPyQvLEw9ZnVuY3Rpb24oZSl7dmFyIHQ9RC5leGVjKGUpO3JldHVybiB0JiYodFsxXT0odFsxXXx8IiIpLnRvTG93ZXJDYXNlKCksdFszXT10WzNdJiZuZXcgUmVnRXhwKCIoPzpefFxccykiK3RbM10rIig/Olxcc3wkKSIpKSx0fSxGPWZ1bmN0aW9uKGUpe3JldHVybiBpLmV2ZW50LnNwZWNpYWwuaG92ZXI/ZTplLnJlcGxhY2UoUywibW91c2VlbnRlciQxIG1vdXNlbGVhdmUkMSIpfTtmdW5jdGlvbiBqKCl7cmV0dXJuITF9ZnVuY3Rpb24gXygpe3JldHVybiEwfWkuZXZlbnQ9e2FkZDpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGc7aWYoMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZ0JiZuJiYoYT1pLl9kYXRhKGUpKSl7Zm9yKG4uaGFuZGxlciYmKG49KGg9bikuaGFuZGxlcixvPWguc2VsZWN0b3IpLG4uZ3VpZHx8KG4uZ3VpZD1pLmd1aWQrKyksKGw9YS5ldmVudHMpfHwoYS5ldmVudHM9bD17fSksKHM9YS5oYW5kbGUpfHwoYS5oYW5kbGU9cz1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09aXx8ZSYmaS5ldmVudC50cmlnZ2VyZWQ9PT1lLnR5cGU/dm9pZCAwOmkuZXZlbnQuZGlzcGF0Y2guYXBwbHkocy5lbGVtLGFyZ3VtZW50cyl9LHMuZWxlbT1lKSx0PWkudHJpbShGKHQpKS5zcGxpdCgiICIpLHU9MDt1PHQubGVuZ3RoO3UrKylmPShjPUMuZXhlYyh0W3VdKXx8W10pWzFdLApkPShjWzJdfHwiIikuc3BsaXQoIi4iKS5zb3J0KCksZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LGY9KG8/Zy5kZWxlZ2F0ZVR5cGU6Zy5iaW5kVHlwZSl8fGYsZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LHA9aS5leHRlbmQoe3R5cGU6ZixvcmlnVHlwZTpjWzFdLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6byxxdWljazpvJiZMKG8pLG5hbWVzcGFjZTpkLmpvaW4oIi4iKX0saCksKG09bFtmXSl8fCgobT1sW2ZdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZy5zZXR1cCYmITEhPT1nLnNldHVwLmNhbGwoZSxyLGQscyl8fChlLmFkZEV2ZW50TGlzdGVuZXI/ZS5hZGRFdmVudExpc3RlbmVyKGYscywhMSk6ZS5hdHRhY2hFdmVudCYmZS5hdHRhY2hFdmVudCgib24iK2YscykpKSxnLmFkZCYmKGcuYWRkLmNhbGwoZSxwKSxwLmhhbmRsZXIuZ3VpZHx8KHAuaGFuZGxlci5ndWlkPW4uZ3VpZCkpLG8/bS5zcGxpY2UobS5kZWxlZ2F0ZUNvdW50KyssMCxwKTptLnB1c2gocCksaS5ldmVudC5nbG9iYWxbZl09ITA7ZT1udWxsfX0sZ2xvYmFsOnt9LHJlbW92ZTpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGcsdix5PWkuaGFzRGF0YShlKSYmaS5fZGF0YShlKTtpZih5JiYocD15LmV2ZW50cykpe2Zvcih0PWkudHJpbShGKHR8fCIiKSkuc3BsaXQoIiAiKSxhPTA7YTx0Lmxlbmd0aDthKyspaWYobD11PShzPUMuZXhlYyh0W2FdKXx8W10pWzFdLGM9c1syXSxsKXtmb3IoaD1pLmV2ZW50LnNwZWNpYWxbbF18fHt9LGY9KGc9cFtsPShyP2guZGVsZWdhdGVUeXBlOmguYmluZFR5cGUpfHxsXXx8W10pLmxlbmd0aCxjPWM/bmV3IFJlZ0V4cCgiKF58XFwuKSIrYy5zcGxpdCgiLiIpLnNvcnQoKS5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGQ9MDtkPGcubGVuZ3RoO2QrKyl2PWdbZF0sIW8mJnUhPT12Lm9yaWdUeXBlfHxuJiZuLmd1aWQhPT12Lmd1aWR8fGMmJiFjLnRlc3Qodi5uYW1lc3BhY2UpfHxyJiZyIT09di5zZWxlY3RvciYmKCIqKiIhPT1yfHwhdi5zZWxlY3Rvcil8fChnLnNwbGljZShkLS0sMSksdi5zZWxlY3RvciYmZy5kZWxlZ2F0ZUNvdW50LS0saC5yZW1vdmUmJmgucmVtb3ZlLmNhbGwoZSx2KSk7MD09PWcubGVuZ3RoJiZmIT09Zy5sZW5ndGgmJihoLnRlYXJkb3duJiYhMSE9PWgudGVhcmRvd24uY2FsbChlLGMpfHxpLnJlbW92ZUV2ZW50KGUsbCx5LmhhbmRsZSksZGVsZXRlIHBbbF0pfWVsc2UgZm9yKGwgaW4gcClpLmV2ZW50LnJlbW92ZShlLGwrdFthXSxuLHIsITApO2kuaXNFbXB0eU9iamVjdChwKSYmKChtPXkuaGFuZGxlKSYmKG0uZWxlbT1udWxsKSxpLnJlbW92ZURhdGEoZSxbImV2ZW50cyIsImhhbmRsZSJdLCEwKSl9fSxjdXN0b21FdmVudDp7Z2V0RGF0YTohMCxzZXREYXRhOiEwLGNoYW5nZURhdGE6ITB9LHRyaWdnZXI6ZnVuY3Rpb24oZSx0LG4scil7aWYoIW58fDMhPT1uLm5vZGVUeXBlJiY4IT09bi5ub2RlVHlwZSl7dmFyIG8sYSxzLGwsdSxjLGYsZCxwLGgsbT1lLnR5cGV8fGUsZz1bXTtpZighQS50ZXN0KG0raS5ldmVudC50cmlnZ2VyZWQpJiYobS5pbmRleE9mKCIhIik+PTAmJihtPW0uc2xpY2UoMCwtMSksYT0hMCksbS5pbmRleE9mKCIuIik+PTAmJihnPW0uc3BsaXQoIi4iKSxtPWcuc2hpZnQoKSxnLnNvcnQoKSksbiYmIWkuZXZlbnQuY3VzdG9tRXZlbnRbbV18fGkuZXZlbnQuZ2xvYmFsW21dKSlpZigoZT0ib2JqZWN0Ij09dHlwZW9mIGU/ZVtpLmV4cGFuZG9dP2U6bmV3IGkuRXZlbnQobSxlKTpuZXcgaS5FdmVudChtKSkudHlwZT1tLGUuaXNUcmlnZ2VyPSEwLGUuZXhjbHVzaXZlPWEsZS5uYW1lc3BhY2U9Zy5qb2luKCIuIiksZS5uYW1lc3BhY2VfcmU9ZS5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrZy5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGM9bS5pbmRleE9mKCI6Iik8MD8ib24iK206IiIsbil7aWYoZS5yZXN1bHQ9dm9pZCAwLGUudGFyZ2V0fHwoZS50YXJnZXQ9biksKHQ9bnVsbCE9dD9pLm1ha2VBcnJheSh0KTpbXSkudW5zaGlmdChlKSwhKGY9aS5ldmVudC5zcGVjaWFsW21dfHx7fSkudHJpZ2dlcnx8ITEhPT1mLnRyaWdnZXIuYXBwbHkobix0KSl7aWYocD1bW24sZi5iaW5kVHlwZXx8bV1dLCFyJiYhZi5ub0J1YmJsZSYmIWkuaXNXaW5kb3cobikpe2ZvcihoPWYuZGVsZWdhdGVUeXBlfHxtLGw9QS50ZXN0KGgrbSk/bjpuLnBhcmVudE5vZGUsdT1udWxsO2w7bD1sLnBhcmVudE5vZGUpcC5wdXNoKFtsLGhdKSx1PWw7dSYmdT09PW4ub3duZXJEb2N1bWVudCYmcC5wdXNoKFt1LmRlZmF1bHRWaWV3fHx1LnBhcmVudFdpbmRvd3x8d2luZG93LGhdKX1mb3Iocz0wO3M8cC5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7cysrKWw9cFtzXVswXSxlLnR5cGU9cFtzXVsxXSwoZD0oaS5fZGF0YShsLCJldmVudHMiKXx8e30pW2UudHlwZV0mJmkuX2RhdGEobCwiaGFuZGxlIikpJiZkLmFwcGx5KGwsdCksKGQ9YyYmbFtjXSkmJmkuYWNjZXB0RGF0YShsKSYmITE9PT1kLmFwcGx5KGwsdCkmJmUucHJldmVudERlZmF1bHQoKTtyZXR1cm4gZS50eXBlPW0scnx8ZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8Zi5fZGVmYXVsdCYmITEhPT1mLl9kZWZhdWx0LmFwcGx5KG4ub3duZXJEb2N1bWVudCx0KXx8ImNsaWNrIj09PW0mJmkubm9kZU5hbWUobiwiYSIpfHwhaS5hY2NlcHREYXRhKG4pfHxjJiZuW21dJiYoImZvY3VzIiE9PW0mJiJibHVyIiE9PW18fDAhPT1lLnRhcmdldC5vZmZzZXRXaWR0aCkmJiFpLmlzV2luZG93KG4pJiYoKHU9bltjXSkmJihuW2NdPW51bGwpLGkuZXZlbnQudHJpZ2dlcmVkPW0sblttXSgpLGkuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCx1JiYobltjXT11KSksZS5yZXN1bHR9fWVsc2UgZm9yKHMgaW4gbz1pLmNhY2hlKW9bc10uZXZlbnRzJiZvW3NdLmV2ZW50c1ttXSYmaS5ldmVudC50cmlnZ2VyKGUsdCxvW3NdLmhhbmRsZS5lbGVtLCEwKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGUpe2U9aS5ldmVudC5maXgoZXx8d2luZG93LmV2ZW50KQo7dmFyIHQsbixyLG8sYSxzLGwsdSxjLGYsZD0oaS5fZGF0YSh0aGlzLCJldmVudHMiKXx8e30pW2UudHlwZV18fFtdLHA9ZC5kZWxlZ2F0ZUNvdW50LGg9W10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCksbT0hZS5leGNsdXNpdmUmJiFlLm5hbWVzcGFjZSxnPWkuZXZlbnQuc3BlY2lhbFtlLnR5cGVdfHx7fSx2PVtdO2lmKGhbMF09ZSxlLmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWcucHJlRGlzcGF0Y2h8fCExIT09Zy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsZSkpe2lmKHAmJighZS5idXR0b258fCJjbGljayIhPT1lLnR5cGUpKWZvcigobz1pKHRoaXMpKS5jb250ZXh0PXRoaXMub3duZXJEb2N1bWVudHx8dGhpcyxyPWUudGFyZ2V0O3IhPXRoaXM7cj1yLnBhcmVudE5vZGV8fHRoaXMpaWYoITAhPT1yLmRpc2FibGVkKXtmb3Iocz17fSx1PVtdLG9bMF09cix0PTA7dDxwO3QrKyl2b2lkIDA9PT1zW2Y9KGM9ZFt0XSkuc2VsZWN0b3JdJiYoc1tmXT1jLnF1aWNrPyh5PXIsYj1jLnF1aWNrLHg9dm9pZCAwLHg9eS5hdHRyaWJ1dGVzfHx7fSwoIWJbMV18fHkubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWJbMV0pJiYoIWJbMl18fCh4LmlkfHx7fSkudmFsdWU9PT1iWzJdKSYmKCFiWzNdfHxiWzNdLnRlc3QoKHguY2xhc3N8fHt9KS52YWx1ZSkpKTpvLmlzKGYpKSxzW2ZdJiZ1LnB1c2goYyk7dS5sZW5ndGgmJnYucHVzaCh7ZWxlbTpyLG1hdGNoZXM6dX0pfXZhciB5LGIseDtmb3IoZC5sZW5ndGg+cCYmdi5wdXNoKHtlbGVtOnRoaXMsbWF0Y2hlczpkLnNsaWNlKHApfSksdD0wO3Q8di5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7dCsrKWZvcihsPXZbdF0sZS5jdXJyZW50VGFyZ2V0PWwuZWxlbSxuPTA7bjxsLm1hdGNoZXMubGVuZ3RoJiYhZS5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpO24rKyljPWwubWF0Y2hlc1tuXSwobXx8IWUubmFtZXNwYWNlJiYhYy5uYW1lc3BhY2V8fGUubmFtZXNwYWNlX3JlJiZlLm5hbWVzcGFjZV9yZS50ZXN0KGMubmFtZXNwYWNlKSkmJihlLmRhdGE9Yy5kYXRhLGUuaGFuZGxlT2JqPWMsdm9pZCAwIT09KGE9KChpLmV2ZW50LnNwZWNpYWxbYy5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGMuaGFuZGxlcikuYXBwbHkobC5lbGVtLGgpKSYmKGUucmVzdWx0PWEsITE9PT1hJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpKSk7cmV0dXJuIGcucG9zdERpc3BhdGNoJiZnLnBvc3REaXNwYXRjaC5jYWxsKHRoaXMsZSksZS5yZXN1bHR9fSxwcm9wczoiYXR0ckNoYW5nZSBhdHRyTmFtZSByZWxhdGVkTm9kZSBzcmNFbGVtZW50IGFsdEtleSBidWJibGVzIGNhbmNlbGFibGUgY3RybEtleSBjdXJyZW50VGFyZ2V0IGV2ZW50UGhhc2UgbWV0YUtleSByZWxhdGVkVGFyZ2V0IHNoaWZ0S2V5IHRhcmdldCB0aW1lU3RhbXAgdmlldyB3aGljaCIuc3BsaXQoIiAiKSxmaXhIb29rczp7fSxrZXlIb29rczp7cHJvcHM6ImNoYXIgY2hhckNvZGUga2V5IGtleUNvZGUiLnNwbGl0KCIgIiksZmlsdGVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PWUud2hpY2gmJihlLndoaWNoPW51bGwhPXQuY2hhckNvZGU/dC5jaGFyQ29kZTp0LmtleUNvZGUpLGV9fSxtb3VzZUhvb2tzOntwcm9wczoiYnV0dG9uIGJ1dHRvbnMgY2xpZW50WCBjbGllbnRZIGZyb21FbGVtZW50IG9mZnNldFggb2Zmc2V0WSBwYWdlWCBwYWdlWSBzY3JlZW5YIHNjcmVlblkgdG9FbGVtZW50Ii5zcGxpdCgiICIpLGZpbHRlcjpmdW5jdGlvbihlLG4pe3ZhciByLGksbyxhPW4uYnV0dG9uLHM9bi5mcm9tRWxlbWVudDtyZXR1cm4gbnVsbD09ZS5wYWdlWCYmbnVsbCE9bi5jbGllbnRYJiYoaT0ocj1lLnRhcmdldC5vd25lckRvY3VtZW50fHx0KS5kb2N1bWVudEVsZW1lbnQsbz1yLmJvZHksZS5wYWdlWD1uLmNsaWVudFgrKGkmJmkuc2Nyb2xsTGVmdHx8byYmby5zY3JvbGxMZWZ0fHwwKS0oaSYmaS5jbGllbnRMZWZ0fHxvJiZvLmNsaWVudExlZnR8fDApLGUucGFnZVk9bi5jbGllbnRZKyhpJiZpLnNjcm9sbFRvcHx8byYmby5zY3JvbGxUb3B8fDApLShpJiZpLmNsaWVudFRvcHx8byYmby5jbGllbnRUb3B8fDApKSwhZS5yZWxhdGVkVGFyZ2V0JiZzJiYoZS5yZWxhdGVkVGFyZ2V0PXM9PT1lLnRhcmdldD9uLnRvRWxlbWVudDpzKSxlLndoaWNofHx2b2lkIDA9PT1hfHwoZS53aGljaD0xJmE/MToyJmE/Mzo0JmE/MjowKSxlfX0sZml4OmZ1bmN0aW9uKGUpe2lmKGVbaS5leHBhbmRvXSlyZXR1cm4gZTt2YXIgbixyLG89ZSxhPWkuZXZlbnQuZml4SG9va3NbZS50eXBlXXx8e30scz1hLnByb3BzP3RoaXMucHJvcHMuY29uY2F0KGEucHJvcHMpOnRoaXMucHJvcHM7Zm9yKGU9aS5FdmVudChvKSxuPXMubGVuZ3RoO247KWVbcj1zWy0tbl1dPW9bcl07cmV0dXJuIGUudGFyZ2V0fHwoZS50YXJnZXQ9by5zcmNFbGVtZW50fHx0KSwzPT09ZS50YXJnZXQubm9kZVR5cGUmJihlLnRhcmdldD1lLnRhcmdldC5wYXJlbnROb2RlKSx2b2lkIDA9PT1lLm1ldGFLZXkmJihlLm1ldGFLZXk9ZS5jdHJsS2V5KSxhLmZpbHRlcj9hLmZpbHRlcihlLG8pOmV9LHNwZWNpYWw6e3JlYWR5OntzZXR1cDppLmJpbmRSZWFkeX0sbG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOntkZWxlZ2F0ZVR5cGU6ImZvY3VzaW4ifSxibHVyOntkZWxlZ2F0ZVR5cGU6ImZvY3Vzb3V0In0sYmVmb3JldW5sb2FkOntzZXR1cDpmdW5jdGlvbihlLHQsbil7aS5pc1dpbmRvdyh0aGlzKSYmKHRoaXMub25iZWZvcmV1bmxvYWQ9bil9LHRlYXJkb3duOmZ1bmN0aW9uKGUsdCl7dGhpcy5vbmJlZm9yZXVubG9hZD09PXQmJih0aGlzLm9uYmVmb3JldW5sb2FkPW51bGwpfX19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBvPWkuZXh0ZW5kKG5ldyBpLkV2ZW50LG4se3R5cGU6ZSxpc1NpbXVsYXRlZDohMCxvcmlnaW5hbEV2ZW50Ont9fSk7cj9pLmV2ZW50LnRyaWdnZXIobyxudWxsLHQpOmkuZXZlbnQuZGlzcGF0Y2guY2FsbCh0LG8pLG8uaXNEZWZhdWx0UHJldmVudGVkKCkmJm4ucHJldmVudERlZmF1bHQoKX19LGkuZXZlbnQuaGFuZGxlPWkuZXZlbnQuZGlzcGF0Y2gsCmkucmVtb3ZlRXZlbnQ9dC5yZW1vdmVFdmVudExpc3RlbmVyP2Z1bmN0aW9uKGUsdCxuKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4sITEpfTpmdW5jdGlvbihlLHQsbil7ZS5kZXRhY2hFdmVudCYmZS5kZXRhY2hFdmVudCgib24iK3Qsbil9LGkuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBpLkV2ZW50KSlyZXR1cm4gbmV3IGkuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHwhMT09PWUucmV0dXJuVmFsdWV8fGUuZ2V0UHJldmVudERlZmF1bHQmJmUuZ2V0UHJldmVudERlZmF1bHQoKT9fOmopOnRoaXMudHlwZT1lLHQmJmkuZXh0ZW5kKHRoaXMsdCksdGhpcy50aW1lU3RhbXA9ZSYmZS50aW1lU3RhbXB8fGkubm93KCksdGhpc1tpLmV4cGFuZG9dPSEwfSxpLkV2ZW50LnByb3RvdHlwZT17cHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1fO3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDtlJiYoZS5wcmV2ZW50RGVmYXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMSl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNQcm9wYWdhdGlvblN0b3BwZWQ9Xzt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uJiZlLnN0b3BQcm9wYWdhdGlvbigpLGUuY2FuY2VsQnViYmxlPSEwKX0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD1fLHRoaXMuc3RvcFByb3BhZ2F0aW9uKCl9LGlzRGVmYXVsdFByZXZlbnRlZDpqLGlzUHJvcGFnYXRpb25TdG9wcGVkOmosaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ6an0saS5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V0In0sKGZ1bmN0aW9uKGUsdCl7aS5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6dCxiaW5kVHlwZTp0LGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgbixyPWUucmVsYXRlZFRhcmdldCxvPWUuaGFuZGxlT2JqO28uc2VsZWN0b3I7cmV0dXJuIHImJihyPT09dGhpc3x8aS5jb250YWlucyh0aGlzLHIpKXx8KGUudHlwZT1vLm9yaWdUeXBlLG49by5oYW5kbGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxlLnR5cGU9dCksbn19fSkpLGkuc3VwcG9ydC5zdWJtaXRCdWJibGVzfHwoaS5ldmVudC5zcGVjaWFsLnN1Ym1pdD17c2V0dXA6ZnVuY3Rpb24oKXtpZihpLm5vZGVOYW1lKHRoaXMsImZvcm0iKSlyZXR1cm4hMTtpLmV2ZW50LmFkZCh0aGlzLCJjbGljay5fc3VibWl0IGtleXByZXNzLl9zdWJtaXQiLChmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldCxuPWkubm9kZU5hbWUodCwiaW5wdXQiKXx8aS5ub2RlTmFtZSh0LCJidXR0b24iKT90LmZvcm06dm9pZCAwO24mJiFuLl9zdWJtaXRfYXR0YWNoZWQmJihpLmV2ZW50LmFkZChuLCJzdWJtaXQuX3N1Ym1pdCIsKGZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGU9ITB9KSksbi5fc3VibWl0X2F0dGFjaGVkPSEwKX0pKX0scG9zdERpc3BhdGNoOmZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGUmJihkZWxldGUgZS5fc3VibWl0X2J1YmJsZSx0aGlzLnBhcmVudE5vZGUmJiFlLmlzVHJpZ2dlciYmaS5ldmVudC5zaW11bGF0ZSgic3VibWl0Iix0aGlzLnBhcmVudE5vZGUsZSwhMCkpfSx0ZWFyZG93bjpmdW5jdGlvbigpe2lmKGkubm9kZU5hbWUodGhpcywiZm9ybSIpKXJldHVybiExO2kuZXZlbnQucmVtb3ZlKHRoaXMsIi5fc3VibWl0Iil9fSksaS5zdXBwb3J0LmNoYW5nZUJ1YmJsZXN8fChpLmV2ZW50LnNwZWNpYWwuY2hhbmdlPXtzZXR1cDpmdW5jdGlvbigpe2lmKE4udGVzdCh0aGlzLm5vZGVOYW1lKSlyZXR1cm4iY2hlY2tib3giIT09dGhpcy50eXBlJiYicmFkaW8iIT09dGhpcy50eXBlfHwoaS5ldmVudC5hZGQodGhpcywicHJvcGVydHljaGFuZ2UuX2NoYW5nZSIsKGZ1bmN0aW9uKGUpeyJjaGVja2VkIj09PWUub3JpZ2luYWxFdmVudC5wcm9wZXJ0eU5hbWUmJih0aGlzLl9qdXN0X2NoYW5nZWQ9ITApfSkpLGkuZXZlbnQuYWRkKHRoaXMsImNsaWNrLl9jaGFuZ2UiLChmdW5jdGlvbihlKXt0aGlzLl9qdXN0X2NoYW5nZWQmJiFlLmlzVHJpZ2dlciYmKHRoaXMuX2p1c3RfY2hhbmdlZD0hMSxpLmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLHRoaXMsZSwhMCkpfSkpKSwhMTtpLmV2ZW50LmFkZCh0aGlzLCJiZWZvcmVhY3RpdmF0ZS5fY2hhbmdlIiwoZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7Ti50ZXN0KHQubm9kZU5hbWUpJiYhdC5fY2hhbmdlX2F0dGFjaGVkJiYoaS5ldmVudC5hZGQodCwiY2hhbmdlLl9jaGFuZ2UiLChmdW5jdGlvbihlKXshdGhpcy5wYXJlbnROb2RlfHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8aS5ldmVudC5zaW11bGF0ZSgiY2hhbmdlIix0aGlzLnBhcmVudE5vZGUsZSwhMCl9KSksdC5fY2hhbmdlX2F0dGFjaGVkPSEwKX0pKX0saGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O2lmKHRoaXMhPT10fHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8InJhZGlvIiE9PXQudHlwZSYmImNoZWNrYm94IiE9PXQudHlwZSlyZXR1cm4gZS5oYW5kbGVPYmouaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7cmV0dXJuIGkuZXZlbnQucmVtb3ZlKHRoaXMsIi5fY2hhbmdlIiksTi50ZXN0KHRoaXMubm9kZU5hbWUpfX0pLGkuc3VwcG9ydC5mb2N1c2luQnViYmxlc3x8aS5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSwoZnVuY3Rpb24oZSxuKXt2YXIgcj0wLG89ZnVuY3Rpb24oZSl7aS5ldmVudC5zaW11bGF0ZShuLGUudGFyZ2V0LGkuZXZlbnQuZml4KGUpLCEwKX07aS5ldmVudC5zcGVjaWFsW25dPXtzZXR1cDpmdW5jdGlvbigpezA9PXIrKyYmdC5hZGRFdmVudExpc3RlbmVyKGUsbywhMCl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7CjA9PS0tciYmdC5yZW1vdmVFdmVudExpc3RlbmVyKGUsbywhMCl9fX0pKSxpLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oZSx0LG4scixvKXt2YXIgYSxzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPW58fHQsdD12b2lkIDApLGUpdGhpcy5vbihzLHQsbixlW3NdLG8pO3JldHVybiB0aGlzfWlmKG51bGw9PW4mJm51bGw9PXI/KHI9dCxuPXQ9dm9pZCAwKTpudWxsPT1yJiYoInN0cmluZyI9PXR5cGVvZiB0PyhyPW4sbj12b2lkIDApOihyPW4sbj10LHQ9dm9pZCAwKSksITE9PT1yKXI9ajtlbHNlIGlmKCFyKXJldHVybiB0aGlzO3JldHVybiAxPT09byYmKGE9cixyPWZ1bmN0aW9uKGUpe3JldHVybiBpKCkub2ZmKGUpLGEuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxyLmd1aWQ9YS5ndWlkfHwoYS5ndWlkPWkuZ3VpZCsrKSksdGhpcy5lYWNoKChmdW5jdGlvbigpe2kuZXZlbnQuYWRkKHRoaXMsZSxyLG4sdCl9KSl9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gdGhpcy5vbihlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe2lmKGUmJmUucHJldmVudERlZmF1bHQmJmUuaGFuZGxlT2JqKXt2YXIgcj1lLmhhbmRsZU9iajtyZXR1cm4gaShlLmRlbGVnYXRlVGFyZ2V0KS5vZmYoci5uYW1lc3BhY2U/ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGhpc31pZigib2JqZWN0Ij09dHlwZW9mIGUpe2Zvcih2YXIgbyBpbiBlKXRoaXMub2ZmKG8sdCxlW29dKTtyZXR1cm4gdGhpc31yZXR1cm4hMSE9PXQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwobj10LHQ9dm9pZCAwKSwhMT09PW4mJihuPWopLHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtpLmV2ZW50LnJlbW92ZSh0aGlzLGUsbix0KX0pKX0sYmluZDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9mZihlLG51bGwsdCl9LGxpdmU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpKHRoaXMuY29udGV4dCkub24oZSx0aGlzLnNlbGVjdG9yLHQsbiksdGhpc30sZGllOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkodGhpcy5jb250ZXh0KS5vZmYoZSx0aGlzLnNlbGVjdG9yfHwiKioiLHQpLHRoaXN9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQsZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZSxuKX0sdHJpZ2dlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5ldmVudC50cmlnZ2VyKGUsdCx0aGlzKX0pKX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXtpZih0aGlzWzBdKXJldHVybiBpLmV2ZW50LnRyaWdnZXIoZSx0LHRoaXNbMF0sITApfSx0b2dnbGU6ZnVuY3Rpb24oZSl7dmFyIHQ9YXJndW1lbnRzLG49ZS5ndWlkfHxpLmd1aWQrKyxyPTAsbz1mdW5jdGlvbihuKXt2YXIgbz0oaS5fZGF0YSh0aGlzLCJsYXN0VG9nZ2xlIitlLmd1aWQpfHwwKSVyO3JldHVybiBpLl9kYXRhKHRoaXMsImxhc3RUb2dnbGUiK2UuZ3VpZCxvKzEpLG4ucHJldmVudERlZmF1bHQoKSx0W29dLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8ITF9O2ZvcihvLmd1aWQ9bjtyPHQubGVuZ3RoOyl0W3IrK10uZ3VpZD1uO3JldHVybiB0aGlzLmNsaWNrKG8pfSxob3ZlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoZSkubW91c2VsZWF2ZSh0fHxlKX19KSxpLmVhY2goImJsdXIgZm9jdXMgZm9jdXNpbiBmb2N1c291dCBsb2FkIHJlc2l6ZSBzY3JvbGwgdW5sb2FkIGNsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlIGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgZXJyb3IgY29udGV4dG1lbnUiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7aS5mblt0XT1mdW5jdGlvbihlLG4pe3JldHVybiBudWxsPT1uJiYobj1lLGU9bnVsbCksYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24odCxudWxsLGUsbik6dGhpcy50cmlnZ2VyKHQpfSxpLmF0dHJGbiYmKGkuYXR0ckZuW3RdPSEwKSxrLnRlc3QodCkmJihpLmV2ZW50LmZpeEhvb2tzW3RdPWkuZXZlbnQua2V5SG9va3MpLEUudGVzdCh0KSYmKGkuZXZlbnQuZml4SG9va3NbdF09aS5ldmVudC5tb3VzZUhvb2tzKX0pKSxmdW5jdGlvbigpe3ZhciBlPS8oKD86XCgoPzpcKFteKCldK1wpfFteKCldKykrXCl8XFsoPzpcW1teXFtcXV0qXF18WyciXVteJyJdKlsnIl18W15cW1xdJyJdKykrXF18XFwufFteID4rfiwoXFtcXF0rKSt8Wz4rfl0pKFxzKixccyopPygoPzoufFxyfFxuKSopL2csbj0ic2l6Y2FjaGUiKyhNYXRoLnJhbmRvbSgpKyIiKS5yZXBsYWNlKCIuIiwiIikscj0wLG89T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxhPSExLHM9ITAsbD0vXFwvZyx1PS9cclxuL2csYz0vXFcvO1swLDBdLnNvcnQoKGZ1bmN0aW9uKCl7cmV0dXJuIHM9ITEsMH0pKTt2YXIgZj1mdW5jdGlvbihuLHIsaSxhKXtpPWl8fFtdO3ZhciBzPXI9cnx8dDtpZigxIT09ci5ub2RlVHlwZSYmOSE9PXIubm9kZVR5cGUpcmV0dXJuW107aWYoIW58fCJzdHJpbmciIT10eXBlb2YgbilyZXR1cm4gaTt2YXIgbCx1LGMsZCxtLGcsdix5LGI9ITAsdz1mLmlzWE1MKHIpLFQ9W10sQz1uO2Rve2lmKGUuZXhlYygiIiksKGw9ZS5leGVjKEMpKSYmKEM9bFszXSxULnB1c2gobFsxXSksbFsyXSkpe2Q9bFszXTticmVha319d2hpbGUobCk7aWYoVC5sZW5ndGg+MSYmaC5leGVjKG4pKWlmKDI9PT1ULmxlbmd0aCYmcC5yZWxhdGl2ZVtUWzBdXSl1PU4oVFswXStUWzFdLHIsYSk7ZWxzZSBmb3IodT1wLnJlbGF0aXZlW1RbMF1dP1tyXTpmKFQuc2hpZnQoKSxyKTtULmxlbmd0aDspbj1ULnNoaWZ0KCkscC5yZWxhdGl2ZVtuXSYmKG4rPVQuc2hpZnQoKSksCnU9TihuLHUsYSk7ZWxzZSBpZighYSYmVC5sZW5ndGg+MSYmOT09PXIubm9kZVR5cGUmJiF3JiZwLm1hdGNoLklELnRlc3QoVFswXSkmJiFwLm1hdGNoLklELnRlc3QoVFtULmxlbmd0aC0xXSkmJihyPShtPWYuZmluZChULnNoaWZ0KCkscix3KSkuZXhwcj9mLmZpbHRlcihtLmV4cHIsbS5zZXQpWzBdOm0uc2V0WzBdKSxyKWZvcih1PShtPWE/e2V4cHI6VC5wb3AoKSxzZXQ6eChhKX06Zi5maW5kKFQucG9wKCksMSE9PVQubGVuZ3RofHwifiIhPT1UWzBdJiYiKyIhPT1UWzBdfHwhci5wYXJlbnROb2RlP3I6ci5wYXJlbnROb2RlLHcpKS5leHByP2YuZmlsdGVyKG0uZXhwcixtLnNldCk6bS5zZXQsVC5sZW5ndGg+MD9jPXgodSk6Yj0hMTtULmxlbmd0aDspdj1nPVQucG9wKCkscC5yZWxhdGl2ZVtnXT92PVQucG9wKCk6Zz0iIixudWxsPT12JiYodj1yKSxwLnJlbGF0aXZlW2ddKGMsdix3KTtlbHNlIGM9VD1bXTtpZihjfHwoYz11KSxjfHxmLmVycm9yKGd8fG4pLCJbb2JqZWN0IEFycmF5XSI9PT1vLmNhbGwoYykpaWYoYilpZihyJiYxPT09ci5ub2RlVHlwZSlmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJighMD09PWNbeV18fDE9PT1jW3ldLm5vZGVUeXBlJiZmLmNvbnRhaW5zKHIsY1t5XSkpJiZpLnB1c2godVt5XSk7ZWxzZSBmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJjE9PT1jW3ldLm5vZGVUeXBlJiZpLnB1c2godVt5XSk7ZWxzZSBpLnB1c2guYXBwbHkoaSxjKTtlbHNlIHgoYyxpKTtyZXR1cm4gZCYmKGYoZCxzLGksYSksZi51bmlxdWVTb3J0KGkpKSxpfTtmLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7aWYodiYmKGE9cyxlLnNvcnQodiksYSkpZm9yKHZhciB0PTE7dDxlLmxlbmd0aDt0KyspZVt0XT09PWVbdC0xXSYmZS5zcGxpY2UodC0tLDEpO3JldHVybiBlfSxmLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZihlLG51bGwsbnVsbCx0KX0sZi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZih0LG51bGwsbnVsbCxbZV0pLmxlbmd0aD4wfSxmLmZpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdTtpZighZSlyZXR1cm5bXTtmb3IoaT0wLG89cC5vcmRlci5sZW5ndGg7aTxvO2krKylpZihzPXAub3JkZXJbaV0sKGE9cC5sZWZ0TWF0Y2hbc10uZXhlYyhlKSkmJih1PWFbMV0sYS5zcGxpY2UoMSwxKSwiXFwiIT09dS5zdWJzdHIodS5sZW5ndGgtMSkmJihhWzFdPShhWzFdfHwiIikucmVwbGFjZShsLCIiKSxudWxsIT0ocj1wLmZpbmRbc10oYSx0LG4pKSkpKXtlPWUucmVwbGFjZShwLm1hdGNoW3NdLCIiKTticmVha31yZXR1cm4gcnx8KHI9dm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIik6W10pLHtzZXQ6cixleHByOmV9fSxmLmZpbHRlcj1mdW5jdGlvbihlLHQsbixyKXtmb3IodmFyIGksbyxhLHMsbCx1LGMsZCxoLG09ZSxnPVtdLHY9dCx5PXQmJnRbMF0mJmYuaXNYTUwodFswXSk7ZSYmdC5sZW5ndGg7KXtmb3IoYSBpbiBwLmZpbHRlcilpZihudWxsIT0oaT1wLmxlZnRNYXRjaFthXS5leGVjKGUpKSYmaVsyXSl7aWYodT1wLmZpbHRlclthXSxjPWlbMV0sbz0hMSxpLnNwbGljZSgxLDEpLCJcXCI9PT1jLnN1YnN0cihjLmxlbmd0aC0xKSljb250aW51ZTtpZih2PT09ZyYmKGc9W10pLHAucHJlRmlsdGVyW2FdKWlmKGk9cC5wcmVGaWx0ZXJbYV0oaSx2LG4sZyxyLHkpKXtpZighMD09PWkpY29udGludWV9ZWxzZSBvPXM9ITA7aWYoaSlmb3IoZD0wO251bGwhPShsPXZbZF0pO2QrKylsJiYoaD1yXihzPXUobCxpLGQsdikpLG4mJm51bGwhPXM/aD9vPSEwOnZbZF09ITE6aCYmKGcucHVzaChsKSxvPSEwKSk7aWYodm9pZCAwIT09cyl7aWYobnx8KHY9ZyksZT1lLnJlcGxhY2UocC5tYXRjaFthXSwiIiksIW8pcmV0dXJuW107YnJlYWt9fWlmKGU9PT1tKXtpZihudWxsIT1vKWJyZWFrO2YuZXJyb3IoZSl9bT1lfXJldHVybiB2fSxmLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX07dmFyIGQ9Zi5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG4scj1lLm5vZGVUeXBlLGk9IiI7aWYocil7aWYoMT09PXJ8fDk9PT1yfHwxMT09PXIpe2lmKCJzdHJpbmciPT10eXBlb2YgZS50ZXh0Q29udGVudClyZXR1cm4gZS50ZXh0Q29udGVudDtpZigic3RyaW5nIj09dHlwZW9mIGUuaW5uZXJUZXh0KXJldHVybiBlLmlubmVyVGV4dC5yZXBsYWNlKHUsIiIpO2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZylpKz1kKGUpfWVsc2UgaWYoMz09PXJ8fDQ9PT1yKXJldHVybiBlLm5vZGVWYWx1ZX1lbHNlIGZvcih0PTA7bj1lW3RdO3QrKyk4IT09bi5ub2RlVHlwZSYmKGkrPWQobikpO3JldHVybiBpfSxwPWYuc2VsZWN0b3JzPXtvcmRlcjpbIklEIiwiTkFNRSIsIlRBRyJdLG1hdGNoOntJRDovIygoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKS8sQ0xBU1M6L1wuKCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspLyxOQU1FOi9cW25hbWU9WyciXSooKD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKylbJyJdKlxdLyxBVFRSOi9cW1xzKigoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKVxzKig/OihcUz89KVxzKig/OihbJyJdKSguKj8pXDN8KCM/KD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKil8KXwpXHMqXF0vLFRBRzovXigoPzpbXHdcdTAwYzAtXHVGRkZGXCpcLV18XFwuKSspLyxDSElMRDovOihvbmx5fG50aHxsYXN0fGZpcnN0KS1jaGlsZCg/OlwoXHMqKGV2ZW58b2RkfCg/OlsrXC1dP1xkK3woPzpbK1wtXT9cZCopP25ccyooPzpbK1wtXVxzKlxkKyk/KSlccypcKSk/LyxQT1M6LzoobnRofGVxfGd0fGx0fGZpcnN0fGxhc3R8ZXZlbnxvZGQpKD86XCgoXGQqKVwpKT8oPz1bXlwtXXwkKS8sUFNFVURPOi86KCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspKD86XCgoWyciXT8pKCg/OlwoW15cKV0rXCl8W15cKFwpXSopKylcMlwpKT8vfSxsZWZ0TWF0Y2g6e30sYXR0ck1hcDp7Y2xhc3M6ImNsYXNzTmFtZSIsZm9yOiJodG1sRm9yIn0sYXR0ckhhbmRsZTp7CmhyZWY6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJocmVmIil9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil9fSxyZWxhdGl2ZTp7IisiOmZ1bmN0aW9uKGUsdCl7dmFyIG49InN0cmluZyI9PXR5cGVvZiB0LHI9biYmIWMudGVzdCh0KSxpPW4mJiFyO3ImJih0PXQudG9Mb3dlckNhc2UoKSk7Zm9yKHZhciBvLGE9MCxzPWUubGVuZ3RoO2E8czthKyspaWYobz1lW2FdKXtmb3IoOyhvPW8ucHJldmlvdXNTaWJsaW5nKSYmMSE9PW8ubm9kZVR5cGU7KTtlW2FdPWl8fG8mJm8ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQ/b3x8ITE6bz09PXR9aSYmZi5maWx0ZXIodCxlLCEwKX0sIj4iOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0ic3RyaW5nIj09dHlwZW9mIHQsaT0wLG89ZS5sZW5ndGg7aWYociYmIWMudGVzdCh0KSl7Zm9yKHQ9dC50b0xvd2VyQ2FzZSgpO2k8bztpKyspaWYobj1lW2ldKXt2YXIgYT1uLnBhcmVudE5vZGU7ZVtpXT1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10JiZhfX1lbHNle2Zvcig7aTxvO2krKykobj1lW2ldKSYmKGVbaV09cj9uLnBhcmVudE5vZGU6bi5wYXJlbnROb2RlPT09dCk7ciYmZi5maWx0ZXIodCxlLCEwKX19LCIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicGFyZW50Tm9kZSIsdCxvLGUsaSxuKX0sIn4iOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicHJldmlvdXNTaWJsaW5nIix0LG8sZSxpLG4pfX0sZmluZDp7SUQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudEJ5SWQmJiFuKXt2YXIgcj10LmdldEVsZW1lbnRCeUlkKGVbMV0pO3JldHVybiByJiZyLnBhcmVudE5vZGU/W3JdOltdfX0sTkFNRTpmdW5jdGlvbihlLHQpe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeU5hbWUpe2Zvcih2YXIgbj1bXSxyPXQuZ2V0RWxlbWVudHNCeU5hbWUoZVsxXSksaT0wLG89ci5sZW5ndGg7aTxvO2krKylyW2ldLmdldEF0dHJpYnV0ZSgibmFtZSIpPT09ZVsxXSYmbi5wdXNoKHJbaV0pO3JldHVybiAwPT09bi5sZW5ndGg/bnVsbDpufX0sVEFHOmZ1bmN0aW9uKGUsdCl7aWYodm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZSlyZXR1cm4gdC5nZXRFbGVtZW50c0J5VGFnTmFtZShlWzFdKX19LHByZUZpbHRlcjp7Q0xBU1M6ZnVuY3Rpb24oZSx0LG4scixpLG8pe2lmKGU9IiAiK2VbMV0ucmVwbGFjZShsLCIiKSsiICIsbylyZXR1cm4gZTtmb3IodmFyIGEscz0wO251bGwhPShhPXRbc10pO3MrKylhJiYoaV4oYS5jbGFzc05hbWUmJigiICIrYS5jbGFzc05hbWUrIiAiKS5yZXBsYWNlKC9bXHRcblxyXS9nLCIgIikuaW5kZXhPZihlKT49MCk/bnx8ci5wdXNoKGEpOm4mJih0W3NdPSExKSk7cmV0dXJuITF9LElEOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIil9LFRBRzpmdW5jdGlvbihlLHQpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIikudG9Mb3dlckNhc2UoKX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7aWYoIm50aCI9PT1lWzFdKXtlWzJdfHxmLmVycm9yKGVbMF0pLGVbMl09ZVsyXS5yZXBsYWNlKC9eXCt8XHMqL2csIiIpO3ZhciB0PS8oLT8pKFxkKikoPzpuKFsrXC1dP1xkKikpPy8uZXhlYygoImV2ZW4iPT09ZVsyXT8iMm4iOiJvZGQiPT09ZVsyXSYmIjJuKzEiKXx8IS9cRC8udGVzdChlWzJdKSYmIjBuKyIrZVsyXXx8ZVsyXSk7ZVsyXT10WzFdKyh0WzJdfHwxKS0wLGVbM109dFszXS0wfWVsc2UgZVsyXSYmZi5lcnJvcihlWzBdKTtyZXR1cm4gZVswXT1yKyssZX0sQVRUUjpmdW5jdGlvbihlLHQsbixyLGksbyl7dmFyIGE9ZVsxXT1lWzFdLnJlcGxhY2UobCwiIik7cmV0dXJuIW8mJnAuYXR0ck1hcFthXSYmKGVbMV09cC5hdHRyTWFwW2FdKSxlWzRdPShlWzRdfHxlWzVdfHwiIikucmVwbGFjZShsLCIiKSwifj0iPT09ZVsyXSYmKGVbNF09IiAiK2VbNF0rIiAiKSxlfSxQU0VVRE86ZnVuY3Rpb24odCxuLHIsaSxvKXtpZigibm90Ij09PXRbMV0pe2lmKCEoKGUuZXhlYyh0WzNdKXx8IiIpLmxlbmd0aD4xfHwvXlx3Ly50ZXN0KHRbM10pKSl7dmFyIGE9Zi5maWx0ZXIodFszXSxuLHIsITBebyk7cmV0dXJuIHJ8fGkucHVzaC5hcHBseShpLGEpLCExfXRbM109Zih0WzNdLG51bGwsbnVsbCxuKX1lbHNlIGlmKHAubWF0Y2guUE9TLnRlc3QodFswXSl8fHAubWF0Y2guQ0hJTEQudGVzdCh0WzBdKSlyZXR1cm4hMDtyZXR1cm4gdH0sUE9TOmZ1bmN0aW9uKGUpe3JldHVybiBlLnVuc2hpZnQoITApLGV9fSxmaWx0ZXJzOntlbmFibGVkOmZ1bmN0aW9uKGUpe3JldHVybiExPT09ZS5kaXNhYmxlZCYmImhpZGRlbiIhPT1lLnR5cGV9LGRpc2FibGVkOmZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZS5kaXNhYmxlZH0sY2hlY2tlZDpmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuY2hlY2tlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuISFlLmZpcnN0Q2hpbGR9LGVtcHR5OmZ1bmN0aW9uKGUpe3JldHVybiFlLmZpcnN0Q2hpbGR9LGhhczpmdW5jdGlvbihlLHQsbil7cmV0dXJuISFmKG5bM10sZSkubGVuZ3RofSxoZWFkZXI6ZnVuY3Rpb24oZSl7cmV0dXJuL2hcZC9pLnRlc3QoZS5ub2RlTmFtZSl9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSxuPWUudHlwZTtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1uJiYodD09PW58fG51bGw9PT10KX0scmFkaW86ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInJhZGlvIj09PWUudHlwZX0sY2hlY2tib3g6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImNoZWNrYm94Ij09PWUudHlwZQp9LGZpbGU6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImZpbGUiPT09ZS50eXBlfSxwYXNzd29yZDpmdW5jdGlvbihlKXtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYicGFzc3dvcmQiPT09ZS50eXBlfSxzdWJtaXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybigiaW5wdXQiPT09dHx8ImJ1dHRvbiI9PT10KSYmInN1Ym1pdCI9PT1lLnR5cGV9LGltYWdlOmZ1bmN0aW9uKGUpe3JldHVybiJpbnB1dCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJiJpbWFnZSI9PT1lLnR5cGV9LHJlc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iPT09dCkmJiJyZXNldCI9PT1lLnR5cGV9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybi9pbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uL2kudGVzdChlLm5vZGVOYW1lKX0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1lLm93bmVyRG9jdW1lbnQuYWN0aXZlRWxlbWVudH19LHNldEZpbHRlcnM6e2ZpcnN0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIDA9PT10fSxsYXN0OmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0PT09ci5sZW5ndGgtMX0sZXZlbjpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTB9LG9kZDpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTF9LGx0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdDxuWzNdLTB9LGd0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdD5uWzNdLTB9LG50aDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG5bM10tMD09PXR9LGVxOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gblszXS0wPT09dH19LGZpbHRlcjp7UFNFVURPOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpPXRbMV0sbz1wLmZpbHRlcnNbaV07aWYobylyZXR1cm4gbyhlLG4sdCxyKTtpZigiY29udGFpbnMiPT09aSlyZXR1cm4oZS50ZXh0Q29udGVudHx8ZS5pbm5lclRleHR8fGQoW2VdKXx8IiIpLmluZGV4T2YodFszXSk+PTA7aWYoIm5vdCI9PT1pKXtmb3IodmFyIGE9dFszXSxzPTAsbD1hLmxlbmd0aDtzPGw7cysrKWlmKGFbc109PT1lKXJldHVybiExO3JldHVybiEwfWYuZXJyb3IoaSl9LENISUxEOmZ1bmN0aW9uKGUsdCl7dmFyIHIsaSxvLGEscyxsLHU9dFsxXSxjPWU7c3dpdGNoKHUpe2Nhc2Uib25seSI6Y2FzZSJmaXJzdCI6Zm9yKDtjPWMucHJldmlvdXNTaWJsaW5nOylpZigxPT09Yy5ub2RlVHlwZSlyZXR1cm4hMTtpZigiZmlyc3QiPT09dSlyZXR1cm4hMDtjPWU7Y2FzZSJsYXN0Ijpmb3IoO2M9Yy5uZXh0U2libGluZzspaWYoMT09PWMubm9kZVR5cGUpcmV0dXJuITE7cmV0dXJuITA7Y2FzZSJudGgiOmlmKHI9dFsyXSxpPXRbM10sMT09PXImJjA9PT1pKXJldHVybiEwO2lmKG89dFswXSwoYT1lLnBhcmVudE5vZGUpJiYoYVtuXSE9PW98fCFlLm5vZGVJbmRleCkpe2ZvcihzPTAsYz1hLmZpcnN0Q2hpbGQ7YztjPWMubmV4dFNpYmxpbmcpMT09PWMubm9kZVR5cGUmJihjLm5vZGVJbmRleD0rK3MpO2Fbbl09b31yZXR1cm4gbD1lLm5vZGVJbmRleC1pLDA9PT1yPzA9PT1sOmwlcj09MCYmbC9yPj0wfX0sSUQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMT09PWUubm9kZVR5cGUmJmUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH0sVEFHOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIioiPT09dCYmMT09PWUubm9kZVR5cGV8fCEhZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH0sQ0xBU1M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4oIiAiKyhlLmNsYXNzTmFtZXx8ZS5nZXRBdHRyaWJ1dGUoImNsYXNzIikpKyIgIikuaW5kZXhPZih0KT4tMX0sQVRUUjpmdW5jdGlvbihlLHQpe3ZhciBuPXRbMV0scj1mLmF0dHI/Zi5hdHRyKGUsbik6cC5hdHRySGFuZGxlW25dP3AuYXR0ckhhbmRsZVtuXShlKTpudWxsIT1lW25dP2Vbbl06ZS5nZXRBdHRyaWJ1dGUobiksaT1yKyIiLG89dFsyXSxhPXRbNF07cmV0dXJuIG51bGw9PXI/IiE9Ij09PW86IW8mJmYuYXR0cj9udWxsIT1yOiI9Ij09PW8/aT09PWE6Iio9Ij09PW8/aS5pbmRleE9mKGEpPj0wOiJ+PSI9PT1vPygiICIraSsiICIpLmluZGV4T2YoYSk+PTA6YT8iIT0iPT09bz9pIT09YToiXj0iPT09bz8wPT09aS5pbmRleE9mKGEpOiIkPSI9PT1vP2kuc3Vic3RyKGkubGVuZ3RoLWEubGVuZ3RoKT09PWE6Inw9Ij09PW8mJihpPT09YXx8aS5zdWJzdHIoMCxhLmxlbmd0aCsxKT09PWErIi0iKTppJiYhMSE9PXJ9LFBPUzpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT10WzJdLG89cC5zZXRGaWx0ZXJzW2ldO2lmKG8pcmV0dXJuIG8oZSxuLHQscil9fX0saD1wLm1hdGNoLlBPUyxtPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIlxcIisodC0wKzEpfTtmb3IodmFyIGcgaW4gcC5tYXRjaClwLm1hdGNoW2ddPW5ldyBSZWdFeHAocC5tYXRjaFtnXS5zb3VyY2UrLyg/IVteXFtdKlxdKSg/IVteXChdKlwpKS8uc291cmNlKSxwLmxlZnRNYXRjaFtnXT1uZXcgUmVnRXhwKC8oXig/Oi58XHJ8XG4pKj8pLy5zb3VyY2UrcC5tYXRjaFtnXS5zb3VyY2UucmVwbGFjZSgvXFwoXGQrKS9nLG0pKTtwLm1hdGNoLmdsb2JhbFBPUz1oO3ZhciB2LHksYix4PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSwwKSx0Pyh0LnB1c2guYXBwbHkodCxlKSx0KTplfTt0cnl7QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5kb2N1bWVudEVsZW1lbnQuY2hpbGROb2RlcywwKVswXS5ub2RlVHlwZX1jYXRjaChlKXt4PWZ1bmN0aW9uKGUsdCl7dmFyIG49MCxyPXR8fFtdCjtpZigiW29iamVjdCBBcnJheV0iPT09by5jYWxsKGUpKUFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KHIsZSk7ZWxzZSBpZigibnVtYmVyIj09dHlwZW9mIGUubGVuZ3RoKWZvcih2YXIgaT1lLmxlbmd0aDtuPGk7bisrKXIucHVzaChlW25dKTtlbHNlIGZvcig7ZVtuXTtuKyspci5wdXNoKGVbbl0pO3JldHVybiByfX1mdW5jdGlvbiB3KGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMSE9PXUubm9kZVR5cGV8fGF8fCh1W25dPXIsdS5zaXpzZXQ9cyksdS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX1mdW5jdGlvbiBUKGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMT09PXUubm9kZVR5cGUpaWYoYXx8KHVbbl09cix1LnNpenNldD1zKSwic3RyaW5nIiE9dHlwZW9mIHQpe2lmKHU9PT10KXtjPSEwO2JyZWFrfX1lbHNlIGlmKGYuZmlsdGVyKHQsW3VdKS5sZW5ndGg+MCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX10LmRvY3VtZW50RWxlbWVudC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj92PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10PyhhPSEwLDApOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/NCZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpPy0xOjE6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj8tMToxfToodj1mdW5jdGlvbihlLHQpe2lmKGU9PT10KXJldHVybiBhPSEwLDA7aWYoZS5zb3VyY2VJbmRleCYmdC5zb3VyY2VJbmRleClyZXR1cm4gZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O3ZhciBuLHIsaT1bXSxvPVtdLHM9ZS5wYXJlbnROb2RlLGw9dC5wYXJlbnROb2RlLHU9cztpZihzPT09bClyZXR1cm4geShlLHQpO2lmKCFzKXJldHVybi0xO2lmKCFsKXJldHVybiAxO2Zvcig7dTspaS51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO2Zvcih1PWw7dTspby51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO249aS5sZW5ndGgscj1vLmxlbmd0aDtmb3IodmFyIGM9MDtjPG4mJmM8cjtjKyspaWYoaVtjXSE9PW9bY10pcmV0dXJuIHkoaVtjXSxvW2NdKTtyZXR1cm4gYz09PW4/eShlLG9bY10sLTEpOnkoaVtjXSx0LDEpfSx5PWZ1bmN0aW9uKGUsdCxuKXtpZihlPT09dClyZXR1cm4gbjtmb3IodmFyIHI9ZS5uZXh0U2libGluZztyOyl7aWYocj09PXQpcmV0dXJuLTE7cj1yLm5leHRTaWJsaW5nfXJldHVybiAxfSksZnVuY3Rpb24oKXt2YXIgZT10LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG49InNjcmlwdCIrKG5ldyBEYXRlKS5nZXRUaW1lKCkscj10LmRvY3VtZW50RWxlbWVudDtlLmlubmVySFRNTD0iPGEgbmFtZT0nIituKyInLz4iLHIuaW5zZXJ0QmVmb3JlKGUsci5maXJzdENoaWxkKSx0LmdldEVsZW1lbnRCeUlkKG4pJiYocC5maW5kLklEPWZ1bmN0aW9uKGUsdCxuKXtpZih2b2lkIDAhPT10LmdldEVsZW1lbnRCeUlkJiYhbil7dmFyIHI9dC5nZXRFbGVtZW50QnlJZChlWzFdKTtyZXR1cm4gcj9yLmlkPT09ZVsxXXx8dm9pZCAwIT09ci5nZXRBdHRyaWJ1dGVOb2RlJiZyLmdldEF0dHJpYnV0ZU5vZGUoImlkIikubm9kZVZhbHVlPT09ZVsxXT9bcl06dm9pZCAwOltdfX0scC5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj12b2lkIDAhPT1lLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gMT09PWUubm9kZVR5cGUmJm4mJm4ubm9kZVZhbHVlPT09dH0pLHIucmVtb3ZlQ2hpbGQoZSkscj1lPW51bGx9KCksKGI9dC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuYXBwZW5kQ2hpbGQodC5jcmVhdGVDb21tZW50KCIiKSksYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aD4wJiYocC5maW5kLlRBRz1mdW5jdGlvbihlLHQpe3ZhciBuPXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZVsxXSk7aWYoIioiPT09ZVsxXSl7Zm9yKHZhciByPVtdLGk9MDtuW2ldO2krKykxPT09bltpXS5ub2RlVHlwZSYmci5wdXNoKG5baV0pO249cn1yZXR1cm4gbn0pLGIuaW5uZXJIVE1MPSI8YSBocmVmPScjJz48L2E+IixiLmZpcnN0Q2hpbGQmJnZvaWQgMCE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUmJiIjIiE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKSYmKHAuYXR0ckhhbmRsZS5ocmVmPWZ1bmN0aW9uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaHJlZiIsMil9KSxiPW51bGwsdC5xdWVyeVNlbGVjdG9yQWxsJiZmdW5jdGlvbigpe3ZhciBlPWYsbj10LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG4uaW5uZXJIVE1MPSI8cCBjbGFzcz0nVEVTVCc+PC9wPiIsIW4ucXVlcnlTZWxlY3RvckFsbHx8MCE9PW4ucXVlcnlTZWxlY3RvckFsbCgiLlRFU1QiKS5sZW5ndGgpe2Zvcih2YXIgciBpbiBmPWZ1bmN0aW9uKG4scixpLG8pe2lmKHI9cnx8dCwhbyYmIWYuaXNYTUwocikpe3ZhciBhPS9eKFx3KyQpfF5cLihbXHdcLV0rJCl8XiMoW1x3XC1dKyQpLy5leGVjKG4pO2lmKGEmJigxPT09ci5ub2RlVHlwZXx8OT09PXIubm9kZVR5cGUpKXtpZihhWzFdKXJldHVybiB4KHIuZ2V0RWxlbWVudHNCeVRhZ05hbWUobiksaSk7aWYoYVsyXSYmcC5maW5kLkNMQVNTJiZyLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpcmV0dXJuIHgoci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGFbMl0pLGkpfWlmKDk9PT1yLm5vZGVUeXBlKXtpZigiYm9keSI9PT1uJiZyLmJvZHkpcmV0dXJuIHgoW3IuYm9keV0saSk7aWYoYSYmYVszXSl7dmFyIHM9ci5nZXRFbGVtZW50QnlJZChhWzNdKTtpZighc3x8IXMucGFyZW50Tm9kZSlyZXR1cm4geChbXSxpKTtpZihzLmlkPT09YVszXSlyZXR1cm4geChbc10saSl9dHJ5e3JldHVybiB4KHIucXVlcnlTZWxlY3RvckFsbChuKSxpKX1jYXRjaChlKXt9Cn1lbHNlIGlmKDE9PT1yLm5vZGVUeXBlJiYib2JqZWN0IiE9PXIubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7dmFyIGw9cix1PXIuZ2V0QXR0cmlidXRlKCJpZCIpLGM9dXx8Il9fc2l6emxlX18iLGQ9ci5wYXJlbnROb2RlLGg9L15ccypbK35dLy50ZXN0KG4pO3U/Yz1jLnJlcGxhY2UoLycvZywiXFwkJiIpOnIuc2V0QXR0cmlidXRlKCJpZCIsYyksaCYmZCYmKHI9ci5wYXJlbnROb2RlKTt0cnl7aWYoIWh8fGQpcmV0dXJuIHgoci5xdWVyeVNlbGVjdG9yQWxsKCJbaWQ9JyIrYysiJ10gIituKSxpKX1jYXRjaChlKXt9ZmluYWxseXt1fHxsLnJlbW92ZUF0dHJpYnV0ZSgiaWQiKX19fXJldHVybiBlKG4scixpLG8pfSxlKWZbcl09ZVtyXTtuPW51bGx9fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5kb2N1bWVudEVsZW1lbnQsbj1lLm1hdGNoZXNTZWxlY3Rvcnx8ZS5tb3pNYXRjaGVzU2VsZWN0b3J8fGUud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxlLm1zTWF0Y2hlc1NlbGVjdG9yO2lmKG4pe3ZhciByPSFuLmNhbGwodC5jcmVhdGVFbGVtZW50KCJkaXYiKSwiZGl2IiksaT0hMTt0cnl7bi5jYWxsKHQuZG9jdW1lbnRFbGVtZW50LCJbdGVzdCE9JyddOnNpenpsZSIpfWNhdGNoKGUpe2k9ITB9Zi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtpZih0PXQucmVwbGFjZSgvXD1ccyooW14nIlxdXSopXHMqXF0vZywiPSckMSddIiksIWYuaXNYTUwoZSkpdHJ5e2lmKGl8fCFwLm1hdGNoLlBTRVVETy50ZXN0KHQpJiYhLyE9Ly50ZXN0KHQpKXt2YXIgbz1uLmNhbGwoZSx0KTtpZihvfHwhcnx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBvfX1jYXRjaChlKXt9cmV0dXJuIGYodCxudWxsLG51bGwsW2VdKS5sZW5ndGg+MH19fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmlubmVySFRNTD0iPGRpdiBjbGFzcz0ndGVzdCBlJz48L2Rpdj48ZGl2IGNsYXNzPSd0ZXN0Jz48L2Rpdj4iLGUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmMCE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKGUubGFzdENoaWxkLmNsYXNzTmFtZT0iZSIsMSE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKHAub3JkZXIuc3BsaWNlKDEsMCwiQ0xBU1MiKSxwLmZpbmQuQ0xBU1M9ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmIW4pcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlWzFdKX0sZT1udWxsKSl9KCksdC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnM/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiBlIT09dCYmKCFlLmNvbnRhaW5zfHxlLmNvbnRhaW5zKHQpKX06dC5kb2N1bWVudEVsZW1lbnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkpfTpmLmNvbnRhaW5zPWZ1bmN0aW9uKCl7cmV0dXJuITF9LGYuaXNYTUw9ZnVuY3Rpb24oZSl7dmFyIHQ9KGU/ZS5vd25lckRvY3VtZW50fHxlOjApLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hIXQmJiJIVE1MIiE9PXQubm9kZU5hbWV9O3ZhciBOPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIsaT1bXSxvPSIiLGE9dC5ub2RlVHlwZT9bdF06dDtyPXAubWF0Y2guUFNFVURPLmV4ZWMoZSk7KW8rPXJbMF0sZT1lLnJlcGxhY2UocC5tYXRjaC5QU0VVRE8sIiIpO2U9cC5yZWxhdGl2ZVtlXT9lKyIqIjplO2Zvcih2YXIgcz0wLGw9YS5sZW5ndGg7czxsO3MrKylmKGUsYVtzXSxpLG4pO3JldHVybiBmLmZpbHRlcihvLGkpfTtmLmF0dHI9aS5hdHRyLGYuc2VsZWN0b3JzLmF0dHJNYXA9e30saS5maW5kPWYsaS5leHByPWYuc2VsZWN0b3JzLGkuZXhwclsiOiJdPWkuZXhwci5maWx0ZXJzLGkudW5pcXVlPWYudW5pcXVlU29ydCxpLnRleHQ9Zi5nZXRUZXh0LGkuaXNYTUxEb2M9Zi5pc1hNTCxpLmNvbnRhaW5zPWYuY29udGFpbnN9KCk7dmFyIE09L1VudGlsJC8sTz0vXig/OnBhcmVudHN8cHJldlVudGlsfHByZXZBbGwpLyxIPS8sLyxQPS9eLlteOiNcW1wuLF0qJC8scT1BcnJheS5wcm90b3R5cGUuc2xpY2UsQj1pLmV4cHIubWF0Y2guZ2xvYmFsUE9TLFc9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ZnVuY3Rpb24gSShlKXtyZXR1cm4hZXx8IWUucGFyZW50Tm9kZXx8MTE9PT1lLnBhcmVudE5vZGUubm9kZVR5cGV9ZnVuY3Rpb24gJChlLHQsbil7aWYodD10fHwwLGkuaXNGdW5jdGlvbih0KSlyZXR1cm4gaS5ncmVwKGUsKGZ1bmN0aW9uKGUscil7cmV0dXJuISF0LmNhbGwoZSxyLGUpPT09bn0pKTtpZih0Lm5vZGVUeXBlKXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gZT09PXQ9PT1ufSkpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIHI9aS5ncmVwKGUsKGZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZX0pKTtpZihQLnRlc3QodCkpcmV0dXJuIGkuZmlsdGVyKHQsciwhbik7dD1pLmZpbHRlcih0LHIpfXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gaS5pbkFycmF5KGUsdCk+PTA9PT1ufSkpfWZ1bmN0aW9uIFIoZSl7dmFyIHQ9WC5zcGxpdCgifCIpLG49ZS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7aWYobi5jcmVhdGVFbGVtZW50KWZvcig7dC5sZW5ndGg7KW4uY3JlYXRlRWxlbWVudCh0LnBvcCgpKTtyZXR1cm4gbn1pLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcztpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIGkoZSkuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih0PTAsbj1yLmxlbmd0aDt0PG47dCsrKWlmKGkuY29udGFpbnMoclt0XSx0aGlzKSlyZXR1cm4hMH0pKTt2YXIgbyxhLHMsbD10aGlzLnB1c2hTdGFjaygiIiwiZmluZCIsZSk7Zm9yKHQ9MCxuPXRoaXMubGVuZ3RoO3Q8bjt0KyspaWYobz1sLmxlbmd0aCxpLmZpbmQoZSx0aGlzW3RdLGwpLHQ+MClmb3IoYT1vO2E8bC5sZW5ndGg7YSsrKWZvcihzPTA7czxvO3MrKylpZihsW3NdPT09bFthXSl7bC5zcGxpY2UoYS0tLDEpCjticmVha31yZXR1cm4gbH0saGFzOmZ1bmN0aW9uKGUpe3ZhciB0PWkoZSk7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih2YXIgZT0wLG49dC5sZW5ndGg7ZTxuO2UrKylpZihpLmNvbnRhaW5zKHRoaXMsdFtlXSkpcmV0dXJuITB9KSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soJCh0aGlzLGUsITEpLCJub3QiLGUpfSxmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKCQodGhpcyxlLCEwKSwiZmlsdGVyIixlKX0saXM6ZnVuY3Rpb24oZSl7cmV0dXJuISFlJiYoInN0cmluZyI9PXR5cGVvZiBlP0IudGVzdChlKT9pKGUsdGhpcy5jb250ZXh0KS5pbmRleCh0aGlzWzBdKT49MDppLmZpbHRlcihlLHRoaXMpLmxlbmd0aD4wOnRoaXMuZmlsdGVyKGUpLmxlbmd0aD4wKX0sY2xvc2VzdDpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbz1bXSxhPXRoaXNbMF07aWYoaS5pc0FycmF5KGUpKXtmb3IodmFyIHM9MTthJiZhLm93bmVyRG9jdW1lbnQmJmEhPT10Oyl7Zm9yKG49MDtuPGUubGVuZ3RoO24rKylpKGEpLmlzKGVbbl0pJiZvLnB1c2goe3NlbGVjdG9yOmVbbl0sZWxlbTphLGxldmVsOnN9KTthPWEucGFyZW50Tm9kZSxzKyt9cmV0dXJuIG99dmFyIGw9Qi50ZXN0KGUpfHwic3RyaW5nIiE9dHlwZW9mIGU/aShlLHR8fHRoaXMuY29udGV4dCk6MDtmb3Iobj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylmb3IoYT10aGlzW25dO2E7KXtpZihsP2wuaW5kZXgoYSk+LTE6aS5maW5kLm1hdGNoZXNTZWxlY3RvcihhLGUpKXtvLnB1c2goYSk7YnJlYWt9aWYoIShhPWEucGFyZW50Tm9kZSl8fCFhLm93bmVyRG9jdW1lbnR8fGE9PT10fHwxMT09PWEubm9kZVR5cGUpYnJlYWt9cmV0dXJuIG89by5sZW5ndGg+MT9pLnVuaXF1ZShvKTpvLHRoaXMucHVzaFN0YWNrKG8sImNsb3Nlc3QiLGUpfSxpbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gZT8ic3RyaW5nIj09dHlwZW9mIGU/aS5pbkFycmF5KHRoaXNbMF0saShlKSk6aS5pbkFycmF5KGUuanF1ZXJ5P2VbMF06ZSx0aGlzKTp0aGlzWzBdJiZ0aGlzWzBdLnBhcmVudE5vZGU/dGhpcy5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIGU/aShlLHQpOmkubWFrZUFycmF5KGUmJmUubm9kZVR5cGU/W2VdOmUpLHI9aS5tZXJnZSh0aGlzLmdldCgpLG4pO3JldHVybiB0aGlzLnB1c2hTdGFjayhJKG5bMF0pfHxJKHJbMF0pP3I6aS51bmlxdWUocikpfSxhbmRTZWxmOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWRkKHRoaXMucHJldk9iamVjdCl9fSksaS5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/dDpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiBpLmRpcihlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInBhcmVudE5vZGUiLG4pfSxuZXh0OmZ1bmN0aW9uKGUpe3JldHVybiBpLm50aChlLDIsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubnRoKGUsMiwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsIm5leHRTaWJsaW5nIil9LHByZXZBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpLmRpcihlLCJuZXh0U2libGluZyIsbil9LHByZXZVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIsbil9LHNpYmxpbmdzOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoKGUucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsZSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubm9kZU5hbWUoZSwiaWZyYW1lIik/ZS5jb250ZW50RG9jdW1lbnR8fGUuY29udGVudFdpbmRvdy5kb2N1bWVudDppLm1ha2VBcnJheShlLmNoaWxkTm9kZXMpfX0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuLHIpe3ZhciBvPWkubWFwKHRoaXMsdCxuKTtyZXR1cm4gTS50ZXN0KGUpfHwocj1uKSxyJiYic3RyaW5nIj09dHlwZW9mIHImJihvPWkuZmlsdGVyKHIsbykpLG89dGhpcy5sZW5ndGg+MSYmIVdbZV0/aS51bmlxdWUobyk6bywodGhpcy5sZW5ndGg+MXx8SC50ZXN0KHIpKSYmTy50ZXN0KGUpJiYobz1vLnJldmVyc2UoKSksdGhpcy5wdXNoU3RhY2sobyxlLHEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9fSkpLGkuZXh0ZW5kKHtmaWx0ZXI6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBuJiYoZT0iOm5vdCgiK2UrIikiKSwxPT09dC5sZW5ndGg/aS5maW5kLm1hdGNoZXNTZWxlY3Rvcih0WzBdLGUpP1t0WzBdXTpbXTppLmZpbmQubWF0Y2hlcyhlLHQpfSxkaXI6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1bXSxvPWVbdF07byYmOSE9PW8ubm9kZVR5cGUmJih2b2lkIDA9PT1ufHwxIT09by5ub2RlVHlwZXx8IWkobykuaXMobikpOykxPT09by5ub2RlVHlwZSYmci5wdXNoKG8pLG89b1t0XTtyZXR1cm4gcn0sbnRoOmZ1bmN0aW9uKGUsdCxuLHIpe3Q9dHx8MTtmb3IodmFyIGk9MDtlJiYoMSE9PWUubm9kZVR5cGV8fCsraSE9PXQpO2U9ZVtuXSk7cmV0dXJuIGV9LHNpYmxpbmc6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59fSkKO3ZhciBYPSJhYmJyfGFydGljbGV8YXNpZGV8YXVkaW98YmRpfGNhbnZhc3xkYXRhfGRhdGFsaXN0fGRldGFpbHN8ZmlnY2FwdGlvbnxmaWd1cmV8Zm9vdGVyfGhlYWRlcnxoZ3JvdXB8bWFya3xtZXRlcnxuYXZ8b3V0cHV0fHByb2dyZXNzfHNlY3Rpb258c3VtbWFyeXx0aW1lfHZpZGVvIix6PS8galF1ZXJ5XGQrPSIoPzpcZCt8bnVsbCkiL2csVj0vXlxzKy8sVT0vPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSopXC8+L2dpLFk9LzwoW1x3Ol0rKS8sSj0vPHRib2R5L2ksRz0vPHwmIz9cdys7LyxLPS88KD86c2NyaXB0fHN0eWxlKS9pLFE9LzwoPzpzY3JpcHR8b2JqZWN0fGVtYmVkfG9wdGlvbnxzdHlsZSkvaSxaPW5ldyBSZWdFeHAoIjwoPzoiK1grIilbXFxzLz5dIiwiaSIpLGVlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHRlPS9cLyhqYXZhfGVjbWEpc2NyaXB0L2ksbmU9e29wdGlvbjpbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdLGxlZ2VuZDpbMSwiPGZpZWxkc2V0PiIsIjwvZmllbGRzZXQ+Il0sdGhlYWQ6WzEsIjx0YWJsZT4iLCI8L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PHRib2R5PjwvdGJvZHk+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSxhcmVhOlsxLCI8bWFwPiIsIjwvbWFwPiJdLF9kZWZhdWx0OlswLCIiLCIiXX0scmU9Uih0KTtmdW5jdGlvbiBpZShlLHQpe2lmKDE9PT10Lm5vZGVUeXBlJiZpLmhhc0RhdGEoZSkpe3ZhciBuLHIsbyxhPWkuX2RhdGEoZSkscz1pLl9kYXRhKHQsYSksbD1hLmV2ZW50cztpZihsKWZvcihuIGluIGRlbGV0ZSBzLmhhbmRsZSxzLmV2ZW50cz17fSxsKWZvcihyPTAsbz1sW25dLmxlbmd0aDtyPG87cisrKWkuZXZlbnQuYWRkKHQsbixsW25dW3JdKTtzLmRhdGEmJihzLmRhdGE9aS5leHRlbmQoe30scy5kYXRhKSl9fWZ1bmN0aW9uIG9lKGUsdCl7dmFyIG47MT09PXQubm9kZVR5cGUmJih0LmNsZWFyQXR0cmlidXRlcyYmdC5jbGVhckF0dHJpYnV0ZXMoKSx0Lm1lcmdlQXR0cmlidXRlcyYmdC5tZXJnZUF0dHJpYnV0ZXMoZSksIm9iamVjdCI9PT0obj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpP3Qub3V0ZXJIVE1MPWUub3V0ZXJIVE1MOiJpbnB1dCIhPT1ufHwiY2hlY2tib3giIT09ZS50eXBlJiYicmFkaW8iIT09ZS50eXBlPyJvcHRpb24iPT09bj90LnNlbGVjdGVkPWUuZGVmYXVsdFNlbGVjdGVkOiJpbnB1dCI9PT1ufHwidGV4dGFyZWEiPT09bj90LmRlZmF1bHRWYWx1ZT1lLmRlZmF1bHRWYWx1ZToic2NyaXB0Ij09PW4mJnQudGV4dCE9PWUudGV4dCYmKHQudGV4dD1lLnRleHQpOihlLmNoZWNrZWQmJih0LmRlZmF1bHRDaGVja2VkPXQuY2hlY2tlZD1lLmNoZWNrZWQpLHQudmFsdWUhPT1lLnZhbHVlJiYodC52YWx1ZT1lLnZhbHVlKSksdC5yZW1vdmVBdHRyaWJ1dGUoaS5leHBhbmRvKSx0LnJlbW92ZUF0dHJpYnV0ZSgiX3N1Ym1pdF9hdHRhY2hlZCIpLHQucmVtb3ZlQXR0cmlidXRlKCJfY2hhbmdlX2F0dGFjaGVkIikpfWZ1bmN0aW9uIGFlKGUpe3JldHVybiB2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lP2UuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKTp2b2lkIDAhPT1lLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKCIqIik6W119ZnVuY3Rpb24gc2UoZSl7ImNoZWNrYm94IiE9PWUudHlwZSYmInJhZGlvIiE9PWUudHlwZXx8KGUuZGVmYXVsdENoZWNrZWQ9ZS5jaGVja2VkKX1mdW5jdGlvbiBsZShlKXt2YXIgdD0oZS5ub2RlTmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk7ImlucHV0Ij09PXQ/c2UoZSk6InNjcmlwdCIhPT10JiZ2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lJiZpLmdyZXAoZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW5wdXQiKSxzZSl9bmUub3B0Z3JvdXA9bmUub3B0aW9uLG5lLnRib2R5PW5lLnRmb290PW5lLmNvbGdyb3VwPW5lLmNhcHRpb249bmUudGhlYWQsbmUudGg9bmUudGQsaS5zdXBwb3J0Lmh0bWxTZXJpYWxpemV8fChuZS5fZGVmYXVsdD1bMSwiZGl2PGRpdj4iLCI8L2Rpdj4iXSksaS5mbi5leHRlbmQoe3RleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lP2kudGV4dCh0aGlzKTp0aGlzLmVtcHR5KCkuYXBwZW5kKCh0aGlzWzBdJiZ0aGlzWzBdLm93bmVyRG9jdW1lbnR8fHQpLmNyZWF0ZVRleHROb2RlKGUpKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sd3JhcEFsbDpmdW5jdGlvbihlKXtpZihpLmlzRnVuY3Rpb24oZSkpcmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aSh0aGlzKS53cmFwQWxsKGUuY2FsbCh0aGlzLHQpKX0pKTtpZih0aGlzWzBdKXt2YXIgdD1pKGUsdGhpc1swXS5vd25lckRvY3VtZW50KS5lcSgwKS5jbG9uZSghMCk7dGhpc1swXS5wYXJlbnROb2RlJiZ0Lmluc2VydEJlZm9yZSh0aGlzWzBdKSx0Lm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcztlLmZpcnN0Q2hpbGQmJjE9PT1lLmZpcnN0Q2hpbGQubm9kZVR5cGU7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfSkpLmFwcGVuZCh0aGlzKX1yZXR1cm4gdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGUpe3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLndyYXBJbm5lcihlLmNhbGwodGhpcyx0KSl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PWkodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQuYXBwZW5kKGUpfSkpfSx3cmFwOmZ1bmN0aW9uKGUpe3ZhciB0PWkuaXNGdW5jdGlvbihlKTtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLndyYXBBbGwodD9lLmNhbGwodGhpcyxuKTplKX0pKX0sdW53cmFwOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGFyZW50KCkuZWFjaCgoZnVuY3Rpb24oKXsKaS5ub2RlTmFtZSh0aGlzLCJib2R5Iil8fGkodGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pKS5lbmQoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLCEwLChmdW5jdGlvbihlKXsxPT09dGhpcy5ub2RlVHlwZSYmdGhpcy5hcHBlbmRDaGlsZChlKX0pKX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMCwoZnVuY3Rpb24oZSl7MT09PXRoaXMubm9kZVR5cGUmJnRoaXMuaW5zZXJ0QmVmb3JlKGUsdGhpcy5maXJzdENoaWxkKX0pKX0sYmVmb3JlOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPWkuY2xlYW4oYXJndW1lbnRzKTtyZXR1cm4gZS5wdXNoLmFwcGx5KGUsdGhpcy50b0FycmF5KCkpLHRoaXMucHVzaFN0YWNrKGUsImJlZm9yZSIsYXJndW1lbnRzKX19LGFmdGVyOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMubmV4dFNpYmxpbmcpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPXRoaXMucHVzaFN0YWNrKHRoaXMsImFmdGVyIixhcmd1bWVudHMpO3JldHVybiBlLnB1c2guYXBwbHkoZSxpLmNsZWFuKGFyZ3VtZW50cykpLGV9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG4scj0wO251bGwhPShuPXRoaXNbcl0pO3IrKyllJiYhaS5maWx0ZXIoZSxbbl0pLmxlbmd0aHx8KHR8fDEhPT1uLm5vZGVUeXBlfHwoaS5jbGVhbkRhdGEobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpKSxpLmNsZWFuRGF0YShbbl0pKSxuLnBhcmVudE5vZGUmJm4ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKSk7cmV0dXJuIHRoaXN9LGVtcHR5OmZ1bmN0aW9uKCl7Zm9yKHZhciBlLHQ9MDtudWxsIT0oZT10aGlzW3RdKTt0KyspZm9yKDE9PT1lLm5vZGVUeXBlJiZpLmNsZWFuRGF0YShlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikpO2UuZmlyc3RDaGlsZDspZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPWU/PyExLHQ9dD8/ZSx0aGlzLm1hcCgoZnVuY3Rpb24oKXtyZXR1cm4gaS5jbG9uZSh0aGlzLGUsdCl9KSl9LGh0bWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXNbMF18fHt9LG49MCxyPXRoaXMubGVuZ3RoO2lmKHZvaWQgMD09PWUpcmV0dXJuIDE9PT10Lm5vZGVUeXBlP3QuaW5uZXJIVE1MLnJlcGxhY2UoeiwiIik6bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIGUmJiFLLnRlc3QoZSkmJihpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2V8fCFWLnRlc3QoZSkpJiYhbmVbKFkuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9ZS5yZXBsYWNlKFUsIjwkMT48LyQyPiIpO3RyeXtmb3IoO248cjtuKyspMT09PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKGkuY2xlYW5EYXRhKHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSksdC5pbm5lckhUTUw9ZSk7dD0wfWNhdGNoKGUpe319dCYmdGhpcy5lbXB0eSgpLmFwcGVuZChlKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT9pLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXt2YXIgbj1pKHRoaXMpLHI9bi5odG1sKCk7bi5yZXBsYWNlV2l0aChlLmNhbGwodGhpcyx0LHIpKX0pKTooInN0cmluZyIhPXR5cGVvZiBlJiYoZT1pKGUpLmRldGFjaCgpKSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5uZXh0U2libGluZyxuPXRoaXMucGFyZW50Tm9kZTtpKHRoaXMpLnJlbW92ZSgpLHQ/aSh0KS5iZWZvcmUoZSk6aShuKS5hcHBlbmQoZSl9KSkpOnRoaXMubGVuZ3RoP3RoaXMucHVzaFN0YWNrKGkoaS5pc0Z1bmN0aW9uKGUpP2UoKTplKSwicmVwbGFjZVdpdGgiLGUpOnRoaXN9LGRldGFjaDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yZW1vdmUoZSwhMCl9LGRvbU1hbmlwOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGEscyxsLHU9ZVswXSxjPVtdO2lmKCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmMz09PWFyZ3VtZW50cy5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmZWUudGVzdCh1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kodGhpcykuZG9tTWFuaXAoZSx0LG4sITApfSkpO2lmKGkuaXNGdW5jdGlvbih1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihyKXt2YXIgbz1pKHRoaXMpO2VbMF09dS5jYWxsKHRoaXMscix0P28uaHRtbCgpOnZvaWQgMCksby5kb21NYW5pcChlLHQsbil9KSk7aWYodGhpc1swXSl7aWYocz11JiZ1LnBhcmVudE5vZGUsbz0xPT09KGE9KHI9aS5zdXBwb3J0LnBhcmVudE5vZGUmJnMmJjExPT09cy5ub2RlVHlwZSYmcy5jaGlsZE5vZGVzLmxlbmd0aD09PXRoaXMubGVuZ3RoP3tmcmFnbWVudDpzfTppLmJ1aWxkRnJhZ21lbnQoZSx0aGlzLGMpKS5mcmFnbWVudCkuY2hpbGROb2Rlcy5sZW5ndGg/YT1hLmZpcnN0Q2hpbGQ6YS5maXJzdENoaWxkKXt0PXQmJmkubm9kZU5hbWUobywidHIiKTtmb3IodmFyIGY9MCxkPXRoaXMubGVuZ3RoLHA9ZC0xO2Y8ZDtmKyspbi5jYWxsKHQ/KGw9dGhpc1tmXSxpLm5vZGVOYW1lKGwsInRhYmxlIik/bC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKVswXXx8bC5hcHBlbmRDaGlsZChsLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGJvZHkiKSk6bCk6dGhpc1tmXSxyLmNhY2hlYWJsZXx8ZD4xJiZmPHA/aS5jbG9uZShhLCEwLCEwKTphKX1jLmxlbmd0aCYmaS5lYWNoKGMsKGZ1bmN0aW9uKGUsdCl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCl9KSl9CnJldHVybiB0aGlzfX0pLGkuYnVpbGRGcmFnbWVudD1mdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGwsdT1lWzBdO3JldHVybiBuJiZuWzBdJiYobD1uWzBdLm93bmVyRG9jdW1lbnR8fG5bMF0pLGwuY3JlYXRlRG9jdW1lbnRGcmFnbWVudHx8KGw9dCksISgxPT09ZS5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmdS5sZW5ndGg8NTEyJiZsPT09dCYmIjwiPT09dS5jaGFyQXQoMCkpfHxRLnRlc3QodSl8fCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmZWUudGVzdCh1KXx8IWkuc3VwcG9ydC5odG1sNUNsb25lJiZaLnRlc3QodSl8fChhPSEwLChzPWkuZnJhZ21lbnRzW3VdKSYmMSE9PXMmJihvPXMpKSxvfHwobz1sLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxpLmNsZWFuKGUsbCxvLHIpKSxhJiYoaS5mcmFnbWVudHNbdV09cz9vOjEpLHtmcmFnbWVudDpvLGNhY2hlYWJsZTphfX0saS5mcmFnbWVudHM9e30saS5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixwcmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRBZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuKXt2YXIgcj1bXSxvPWkobiksYT0xPT09dGhpcy5sZW5ndGgmJnRoaXNbMF0ucGFyZW50Tm9kZTtpZihhJiYxMT09PWEubm9kZVR5cGUmJjE9PT1hLmNoaWxkTm9kZXMubGVuZ3RoJiYxPT09by5sZW5ndGgpcmV0dXJuIG9bdF0odGhpc1swXSksdGhpcztmb3IodmFyIHM9MCxsPW8ubGVuZ3RoO3M8bDtzKyspe3ZhciB1PShzPjA/dGhpcy5jbG9uZSghMCk6dGhpcykuZ2V0KCk7aShvW3NdKVt0XSh1KSxyPXIuY29uY2F0KHUpfXJldHVybiB0aGlzLnB1c2hTdGFjayhyLGUsby5zZWxlY3Rvcil9fSkpLGkuZXh0ZW5kKHtjbG9uZTpmdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGw9aS5zdXBwb3J0Lmh0bWw1Q2xvbmV8fGkuaXNYTUxEb2MoZSl8fCFaLnRlc3QoIjwiK2Uubm9kZU5hbWUrIj4iKT9lLmNsb25lTm9kZSghMCk6ZnVuY3Rpb24oZSl7dmFyIG49dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gcmUuYXBwZW5kQ2hpbGQobiksbi5pbm5lckhUTUw9ZS5vdXRlckhUTUwsbi5maXJzdENoaWxkfShlKTtpZighKGkuc3VwcG9ydC5ub0Nsb25lRXZlbnQmJmkuc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZXx8aS5pc1hNTERvYyhlKSkpZm9yKG9lKGUsbCksbz1hZShlKSxhPWFlKGwpLHM9MDtvW3NdOysrcylhW3NdJiZvZShvW3NdLGFbc10pO2lmKG4mJihpZShlLGwpLHIpKWZvcihvPWFlKGUpLGE9YWUobCkscz0wO29bc107KytzKWllKG9bc10sYVtzXSk7cmV0dXJuIG89YT1udWxsLGx9LGNsZWFuOmZ1bmN0aW9uKGUsbixyLG8pe3ZhciBhLHMsbCx1PVtdO3ZvaWQgMD09PShuPW58fHQpLmNyZWF0ZUVsZW1lbnQmJihuPW4ub3duZXJEb2N1bWVudHx8blswXSYmblswXS5vd25lckRvY3VtZW50fHx0KTtmb3IodmFyIGMsZj0wO251bGwhPShjPWVbZl0pO2YrKylpZigibnVtYmVyIj09dHlwZW9mIGMmJihjKz0iIiksYyl7aWYoInN0cmluZyI9PXR5cGVvZiBjKWlmKEcudGVzdChjKSl7Yz1jLnJlcGxhY2UoVSwiPCQxPjwvJDI+Iik7dmFyIGQscD0oWS5leGVjKGMpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLGg9bmVbcF18fG5lLl9kZWZhdWx0LG09aFswXSxnPW4uY3JlYXRlRWxlbWVudCgiZGl2Iiksdj1yZS5jaGlsZE5vZGVzO2ZvcihuPT09dD9yZS5hcHBlbmRDaGlsZChnKTpSKG4pLmFwcGVuZENoaWxkKGcpLGcuaW5uZXJIVE1MPWhbMV0rYytoWzJdO20tLTspZz1nLmxhc3RDaGlsZDtpZighaS5zdXBwb3J0LnRib2R5KXt2YXIgeT1KLnRlc3QoYyksYj0idGFibGUiIT09cHx8eT8iPHRhYmxlPiIhPT1oWzFdfHx5P1tdOmcuY2hpbGROb2RlczpnLmZpcnN0Q2hpbGQmJmcuZmlyc3RDaGlsZC5jaGlsZE5vZGVzO2ZvcihsPWIubGVuZ3RoLTE7bD49MDstLWwpaS5ub2RlTmFtZShiW2xdLCJ0Ym9keSIpJiYhYltsXS5jaGlsZE5vZGVzLmxlbmd0aCYmYltsXS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGJbbF0pfSFpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2UmJlYudGVzdChjKSYmZy5pbnNlcnRCZWZvcmUobi5jcmVhdGVUZXh0Tm9kZShWLmV4ZWMoYylbMF0pLGcuZmlyc3RDaGlsZCksYz1nLmNoaWxkTm9kZXMsZyYmKGcucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChnKSx2Lmxlbmd0aD4wJiYoZD12W3YubGVuZ3RoLTFdKSYmZC5wYXJlbnROb2RlJiZkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZCkpfWVsc2UgYz1uLmNyZWF0ZVRleHROb2RlKGMpO3ZhciB4O2lmKCFpLnN1cHBvcnQuYXBwZW5kQ2hlY2tlZClpZihjWzBdJiYibnVtYmVyIj09dHlwZW9mKHg9Yy5sZW5ndGgpKWZvcihsPTA7bDx4O2wrKylsZShjW2xdKTtlbHNlIGxlKGMpO2Mubm9kZVR5cGU/dS5wdXNoKGMpOnU9aS5tZXJnZSh1LGMpfWlmKHIpZm9yKGE9ZnVuY3Rpb24oZSl7cmV0dXJuIWUudHlwZXx8dGUudGVzdChlLnR5cGUpfSxmPTA7dVtmXTtmKyspaWYocz11W2ZdLG8mJmkubm9kZU5hbWUocywic2NyaXB0IikmJighcy50eXBlfHx0ZS50ZXN0KHMudHlwZSkpKW8ucHVzaChzLnBhcmVudE5vZGU/cy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHMpOnMpO2Vsc2V7aWYoMT09PXMubm9kZVR5cGUpe3ZhciB3PWkuZ3JlcChzLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxhKTt1LnNwbGljZS5hcHBseSh1LFtmKzEsMF0uY29uY2F0KHcpKX1yLmFwcGVuZENoaWxkKHMpfXJldHVybiB1fSxjbGVhbkRhdGE6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG4scixvPWkuY2FjaGUsYT1pLmV2ZW50LnNwZWNpYWwscz1pLnN1cHBvcnQuZGVsZXRlRXhwYW5kbyxsPTA7bnVsbCE9KHI9ZVtsXSk7bCsrKWlmKCghci5ub2RlTmFtZXx8IWkubm9EYXRhW3Iubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYobj1yW2kuZXhwYW5kb10pKXtpZigodD1vW25dKSYmdC5ldmVudHMpe2Zvcih2YXIgdSBpbiB0LmV2ZW50cylhW3VdP2kuZXZlbnQucmVtb3ZlKHIsdSk6aS5yZW1vdmVFdmVudChyLHUsdC5oYW5kbGUpCjt0LmhhbmRsZSYmKHQuaGFuZGxlLmVsZW09bnVsbCl9cz9kZWxldGUgcltpLmV4cGFuZG9dOnIucmVtb3ZlQXR0cmlidXRlJiZyLnJlbW92ZUF0dHJpYnV0ZShpLmV4cGFuZG8pLGRlbGV0ZSBvW25dfX19KTt2YXIgdWUsY2UsZmUsZGU9L2FscGhhXChbXildKlwpL2kscGU9L29wYWNpdHk9KFteKV0qKS8saGU9LyhbQS1aXXxebXMpL2csbWU9L15bXC0rXT8oPzpcZCpcLik/XGQrJC9pLGdlPS9eLT8oPzpcZCpcLik/XGQrKD8hcHgpW15cZFxzXSskL2ksdmU9L14oW1wtK10pPShbXC0rLlxkZV0rKS8seWU9L15tYXJnaW4vLGJlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSx4ZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdO2Z1bmN0aW9uIHdlKGUsdCxuKXt2YXIgcj0id2lkdGgiPT09dD9lLm9mZnNldFdpZHRoOmUub2Zmc2V0SGVpZ2h0LG89IndpZHRoIj09PXQ/MTowO2lmKHI+MCl7aWYoImJvcmRlciIhPT1uKWZvcig7bzw0O28rPTIpbnx8KHItPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCksIm1hcmdpbiI9PT1uP3IrPXBhcnNlRmxvYXQoaS5jc3MoZSxuK3hlW29dKSl8fDA6ci09cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MDtyZXR1cm4gcisicHgifWlmKCgocj11ZShlLHQpKTwwfHxudWxsPT1yKSYmKHI9ZS5zdHlsZVt0XSksZ2UudGVzdChyKSlyZXR1cm4gcjtpZihyPXBhcnNlRmxvYXQocil8fDAsbilmb3IoO288NDtvKz0yKXIrPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCwicGFkZGluZyIhPT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MCksIm1hcmdpbiI9PT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLG4reGVbb10pKXx8MCk7cmV0dXJuIHIrInB4In1pLmZuLmNzcz1mdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsbil7cmV0dXJuIHZvaWQgMCE9PW4/aS5zdHlsZShlLHQsbik6aS5jc3MoZSx0KX0pLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxpLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPXVlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59cmV0dXJuIGUuc3R5bGUub3BhY2l0eX19fSxjc3NOdW1iZXI6e2ZpbGxPcGFjaXR5OiEwLGZvbnRXZWlnaHQ6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9ycGhhbnM6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6b29tOiEwfSxjc3NQcm9wczp7ZmxvYXQ6aS5zdXBwb3J0LmNzc0Zsb2F0PyJjc3NGbG9hdCI6InN0eWxlRmxvYXQifSxzdHlsZTpmdW5jdGlvbihlLHQsbixyKXtpZihlJiYzIT09ZS5ub2RlVHlwZSYmOCE9PWUubm9kZVR5cGUmJmUuc3R5bGUpe3ZhciBvLGEscz1pLmNhbWVsQ2FzZSh0KSxsPWUuc3R5bGUsdT1pLmNzc0hvb2tzW3NdO2lmKHQ9aS5jc3NQcm9wc1tzXXx8cyx2b2lkIDA9PT1uKXJldHVybiB1JiYiZ2V0ImluIHUmJnZvaWQgMCE9PShvPXUuZ2V0KGUsITEscikpP286bFt0XTtpZighKCJzdHJpbmciPT09KGE9dHlwZW9mIG4pJiYobz12ZS5leGVjKG4pKSYmKG49KyhvWzFdKzEpKitvWzJdK3BhcnNlRmxvYXQoaS5jc3MoZSx0KSksYT0ibnVtYmVyIiksbnVsbD09bnx8Im51bWJlciI9PT1hJiZpc05hTihuKXx8KCJudW1iZXIiIT09YXx8aS5jc3NOdW1iZXJbc118fChuKz0icHgiKSx1JiYic2V0ImluIHUmJnZvaWQgMD09PShuPXUuc2V0KGUsbikpKSkpdHJ5e2xbdF09bn1jYXRjaChlKXt9fX0sY3NzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvO3JldHVybiB0PWkuY2FtZWxDYXNlKHQpLG89aS5jc3NIb29rc1t0XSwiY3NzRmxvYXQiPT09KHQ9aS5jc3NQcm9wc1t0XXx8dCkmJih0PSJmbG9hdCIpLG8mJiJnZXQiaW4gbyYmdm9pZCAwIT09KHI9by5nZXQoZSwhMCxuKSk/cjp1ZT91ZShlLHQpOnZvaWQgMH0sc3dhcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXTtmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn19KSxpLmN1ckNTUz1pLmNzcyx0LmRlZmF1bHRWaWV3JiZ0LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHM9ZS5zdHlsZTtyZXR1cm4gdD10LnJlcGxhY2UoaGUsIi0kMSIpLnRvTG93ZXJDYXNlKCksKHI9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3KSYmKG89ci5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCkpJiYoIiIhPT0obj1vLmdldFByb3BlcnR5VmFsdWUodCkpfHxpLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZSl8fChuPWkuc3R5bGUoZSx0KSkpLCFpLnN1cHBvcnQucGl4ZWxNYXJnaW4mJm8mJnllLnRlc3QodCkmJmdlLnRlc3QobikmJihhPXMud2lkdGgscy53aWR0aD1uLG49by53aWR0aCxzLndpZHRoPWEpLG59KSx0LmRvY3VtZW50RWxlbWVudC5jdXJyZW50U3R5bGUmJihmZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaSxvPWUuY3VycmVudFN0eWxlJiZlLmN1cnJlbnRTdHlsZVt0XSxhPWUuc3R5bGU7cmV0dXJuIG51bGw9PW8mJmEmJihpPWFbdF0pJiYobz1pKSxnZS50ZXN0KG8pJiYobj1hLmxlZnQsKHI9ZS5ydW50aW1lU3R5bGUmJmUucnVudGltZVN0eWxlLmxlZnQpJiYoZS5ydW50aW1lU3R5bGUubGVmdD1lLmN1cnJlbnRTdHlsZS5sZWZ0KSxhLmxlZnQ9ImZvbnRTaXplIj09PXQ/IjFlbSI6byxvPWEucGl4ZWxMZWZ0KyJweCIsYS5sZWZ0PW4sciYmKGUucnVudGltZVN0eWxlLmxlZnQ9cikpLCIiPT09bz8iYXV0byI6b30pLHVlPWNlfHxmZSxpLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLChmdW5jdGlvbihlLHQpe2kuY3NzSG9va3NbdF09e2dldDpmdW5jdGlvbihlLG4scil7aWYobilyZXR1cm4gMCE9PWUub2Zmc2V0V2lkdGg/d2UoZSx0LHIpOmkuc3dhcChlLGJlLChmdW5jdGlvbigpe3JldHVybiB3ZShlLHQscil9KSl9LHNldDpmdW5jdGlvbihlLHQpewpyZXR1cm4gbWUudGVzdCh0KT90KyJweCI6dH19fSkpLGkuc3VwcG9ydC5vcGFjaXR5fHwoaS5jc3NIb29rcy5vcGFjaXR5PXtnZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gcGUudGVzdCgodCYmZS5jdXJyZW50U3R5bGU/ZS5jdXJyZW50U3R5bGUuZmlsdGVyOmUuc3R5bGUuZmlsdGVyKXx8IiIpP3BhcnNlRmxvYXQoUmVnRXhwLiQxKS8xMDArIiI6dD8iMSI6IiJ9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWUuc3R5bGUscj1lLmN1cnJlbnRTdHlsZSxvPWkuaXNOdW1lcmljKHQpPyJhbHBoYShvcGFjaXR5PSIrMTAwKnQrIikiOiIiLGE9ciYmci5maWx0ZXJ8fG4uZmlsdGVyfHwiIjtuLnpvb209MSx0Pj0xJiYiIj09PWkudHJpbShhLnJlcGxhY2UoZGUsIiIpKSYmKG4ucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKSxyJiYhci5maWx0ZXIpfHwobi5maWx0ZXI9ZGUudGVzdChhKT9hLnJlcGxhY2UoZGUsbyk6YSsiICIrbyl9fSksaSgoZnVuY3Rpb24oKXtpLnN1cHBvcnQucmVsaWFibGVNYXJnaW5SaWdodHx8KGkuY3NzSG9va3MubWFyZ2luUmlnaHQ9e2dldDpmdW5jdGlvbihlLHQpe3JldHVybiBpLnN3YXAoZSx7ZGlzcGxheToiaW5saW5lLWJsb2NrIn0sKGZ1bmN0aW9uKCl7cmV0dXJuIHQ/dWUoZSwibWFyZ2luLXJpZ2h0Iik6ZS5zdHlsZS5tYXJnaW5SaWdodH0pKX19KX0pKSxpLmV4cHImJmkuZXhwci5maWx0ZXJzJiYoaS5leHByLmZpbHRlcnMuaGlkZGVuPWZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0V2lkdGgsbj1lLm9mZnNldEhlaWdodDtyZXR1cm4gMD09PXQmJjA9PT1ufHwhaS5zdXBwb3J0LnJlbGlhYmxlSGlkZGVuT2Zmc2V0cyYmIm5vbmUiPT09KGUuc3R5bGUmJmUuc3R5bGUuZGlzcGxheXx8aS5jc3MoZSwiZGlzcGxheSIpKX0saS5leHByLmZpbHRlcnMudmlzaWJsZT1mdW5jdGlvbihlKXtyZXR1cm4haS5leHByLmZpbHRlcnMuaGlkZGVuKGUpfSksaS5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5jc3NIb29rc1tlK3RdPXtleHBhbmQ6ZnVuY3Rpb24obil7dmFyIHIsaT0ic3RyaW5nIj09dHlwZW9mIG4/bi5zcGxpdCgiICIpOltuXSxvPXt9O2ZvcihyPTA7cjw0O3IrKylvW2UreGVbcl0rdF09aVtyXXx8aVtyLTJdfHxpWzBdO3JldHVybiBvfX19KSk7dmFyIFRlLE5lLENlPS8lMjAvZyxTZT0vXFtcXSQvLGtlPS9ccj9cbi9nLEVlPS8jLiokLyxBZT0vXiguKj8pOlsgXHRdKihbXlxyXG5dKilccj8kL2dtLERlPS9eKD86Y29sb3J8ZGF0ZXxkYXRldGltZXxkYXRldGltZS1sb2NhbHxlbWFpbHxoaWRkZW58bW9udGh8bnVtYmVyfHBhc3N3b3JkfHJhbmdlfHNlYXJjaHx0ZWx8dGV4dHx0aW1lfHVybHx3ZWVrKSQvaSxMZT0vXig/OkdFVHxIRUFEKSQvLEZlPS9eXC9cLy8samU9L1w/LyxfZT0vPHNjcmlwdFxiW148XSooPzooPyE8XC9zY3JpcHQ+KTxbXjxdKikqPFwvc2NyaXB0Pi9naSxNZT0vXig/OnNlbGVjdHx0ZXh0YXJlYSkvaSxPZT0vXHMrLyxIZT0vKFs/Jl0pXz1bXiZdKi8sUGU9L14oW1x3XCtcLlwtXSs6KSg/OlwvXC8oW15cLz8jOl0qKSg/OjooXGQrKSk/KT8vLHFlPWkuZm4ubG9hZCxCZT17fSxXZT17fSxJZT1bIiovIl0rWyIqIl07dHJ5e1RlPXIuaHJlZn1jYXRjaChlKXsoVGU9dC5jcmVhdGVFbGVtZW50KCJhIikpLmhyZWY9IiIsVGU9VGUuaHJlZn1mdW5jdGlvbiAkZShlKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZigic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iKiIpLGkuaXNGdW5jdGlvbihuKSlmb3IodmFyIHIsbyxhPXQudG9Mb3dlckNhc2UoKS5zcGxpdChPZSkscz0wLGw9YS5sZW5ndGg7czxsO3MrKylyPWFbc10sKG89L15cKy8udGVzdChyKSkmJihyPXIuc3Vic3RyKDEpfHwiKiIpLChlW3JdPWVbcl18fFtdKVtvPyJ1bnNoaWZ0IjoicHVzaCJdKG4pfX1mdW5jdGlvbiBSZShlLHQsbixyLGksbyl7KG89b3x8e30pW2k9aXx8dC5kYXRhVHlwZXNbMF1dPSEwO2Zvcih2YXIgYSxzPWVbaV0sbD0wLHU9cz9zLmxlbmd0aDowLGM9ZT09PUJlO2w8dSYmKGN8fCFhKTtsKyspInN0cmluZyI9PXR5cGVvZihhPXNbbF0odCxuLHIpKSYmKCFjfHxvW2FdP2E9dm9pZCAwOih0LmRhdGFUeXBlcy51bnNoaWZ0KGEpLGE9UmUoZSx0LG4scixhLG8pKSk7cmV0dXJuIWMmJmF8fG9bIioiXXx8KGE9UmUoZSx0LG4sciwiKiIsbykpLGF9ZnVuY3Rpb24gWGUoZSx0KXt2YXIgbixyLG89aS5hamF4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChvW25dP2U6cnx8KHI9e30pKVtuXT10W25dKTtyJiZpLmV4dGVuZCghMCxlLHIpfWZ1bmN0aW9uIHplKGUsdCxuLHIpe2lmKGkuaXNBcnJheSh0KSlpLmVhY2godCwoZnVuY3Rpb24odCxpKXtufHxTZS50ZXN0KGUpP3IoZSxpKTp6ZShlKyJbIisoIm9iamVjdCI9PXR5cGVvZiBpP3Q6IiIpKyJdIixpLG4scil9KSk7ZWxzZSBpZihufHwib2JqZWN0IiE9PWkudHlwZSh0KSlyKGUsdCk7ZWxzZSBmb3IodmFyIG8gaW4gdCl6ZShlKyJbIitvKyJdIix0W29dLG4scil9TmU9UGUuZXhlYyhUZS50b0xvd2VyQ2FzZSgpKXx8W10saS5mbi5leHRlbmQoe2xvYWQ6ZnVuY3Rpb24oZSx0LG4pe2lmKCJzdHJpbmciIT10eXBlb2YgZSYmcWUpcmV0dXJuIHFlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtpZighdGhpcy5sZW5ndGgpcmV0dXJuIHRoaXM7dmFyIHI9ZS5pbmRleE9mKCIgIik7aWYocj49MCl7dmFyIG89ZS5zbGljZShyLGUubGVuZ3RoKTtlPWUuc2xpY2UoMCxyKX12YXIgYT0iR0VUIjt0JiYoaS5pc0Z1bmN0aW9uKHQpPyhuPXQsdD12b2lkIDApOiJvYmplY3QiPT10eXBlb2YgdCYmKHQ9aS5wYXJhbSh0LGkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxhPSJQT1NUIikpO3ZhciBzPXRoaXM7cmV0dXJuIGkuYWpheCh7dXJsOmUsdHlwZTphLGRhdGFUeXBlOiJodG1sIixkYXRhOnQsY29tcGxldGU6ZnVuY3Rpb24oZSx0LHIpe3I9ZS5yZXNwb25zZVRleHQsZS5pc1Jlc29sdmVkKCkmJihlLmRvbmUoKGZ1bmN0aW9uKGUpe3I9ZX0pKSxzLmh0bWwobz9pKCI8ZGl2PiIpLmFwcGVuZChyLnJlcGxhY2UoX2UsIiIpKS5maW5kKG8pOnIpKSwKbiYmcy5lYWNoKG4sW3IsdCxlXSl9fSksdGhpc30sc2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIGkucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudHM/aS5tYWtlQXJyYXkodGhpcy5lbGVtZW50cyk6dGhpc30pKS5maWx0ZXIoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZSYmIXRoaXMuZGlzYWJsZWQmJih0aGlzLmNoZWNrZWR8fE1lLnRlc3QodGhpcy5ub2RlTmFtZSl8fERlLnRlc3QodGhpcy50eXBlKSl9KSkubWFwKChmdW5jdGlvbihlLHQpe3ZhciBuPWkodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDppLmlzQXJyYXkobik/aS5tYXAobiwoZnVuY3Rpb24oZSxuKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFsdWU6ZS5yZXBsYWNlKGtlLCJcclxuIil9fSkpOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2Uoa2UsIlxyXG4iKX19KSkuZ2V0KCl9fSksaS5lYWNoKCJhamF4U3RhcnQgYWpheFN0b3AgYWpheENvbXBsZXRlIGFqYXhFcnJvciBhamF4U3VjY2VzcyBhamF4U2VuZCIuc3BsaXQoIiAiKSwoZnVuY3Rpb24oZSx0KXtpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9uKHQsZSl9fSkpLGkuZWFjaChbImdldCIsInBvc3QiXSwoZnVuY3Rpb24oZSx0KXtpW3RdPWZ1bmN0aW9uKGUsbixyLG8pe3JldHVybiBpLmlzRnVuY3Rpb24obikmJihvPW98fHIscj1uLG49dm9pZCAwKSxpLmFqYXgoe3R5cGU6dCx1cmw6ZSxkYXRhOm4sc3VjY2VzczpyLGRhdGFUeXBlOm99KX19KSksaS5leHRlbmQoe2dldFNjcmlwdDpmdW5jdGlvbihlLHQpe3JldHVybiBpLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX0sZ2V0SlNPTjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZ2V0KGUsdCxuLCJqc29uIil9LGFqYXhTZXR1cDpmdW5jdGlvbihlLHQpe3JldHVybiB0P1hlKGUsaS5hamF4U2V0dGluZ3MpOih0PWUsZT1pLmFqYXhTZXR0aW5ncyksWGUoZSx0KSxlfSxhamF4U2V0dGluZ3M6e3VybDpUZSxpc0xvY2FsOi9eKD86YWJvdXR8YXBwfGFwcFwtc3RvcmFnZXwuK1wtZXh0ZW5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChOZVsxXSksZ2xvYmFsOiEwLHR5cGU6IkdFVCIsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsYWNjZXB0czp7eG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixodG1sOiJ0ZXh0L2h0bWwiLHRleHQ6InRleHQvcGxhaW4iLGpzb246ImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCIsIioiOkllfSxjb250ZW50czp7eG1sOi94bWwvLGh0bWw6L2h0bWwvLGpzb246L2pzb24vfSxyZXNwb25zZUZpZWxkczp7eG1sOiJyZXNwb25zZVhNTCIsdGV4dDoicmVzcG9uc2VUZXh0In0sY29udmVydGVyczp7IiogdGV4dCI6d2luZG93LlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjppLnBhcnNlSlNPTiwidGV4dCB4bWwiOmkucGFyc2VYTUx9LGZsYXRPcHRpb25zOntjb250ZXh0OiEwLHVybDohMH19LGFqYXhQcmVmaWx0ZXI6JGUoQmUpLGFqYXhUcmFuc3BvcnQ6JGUoV2UpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIG4scixvLGEscyxsLHUsYyxmPWkuYWpheFNldHVwKHt9LHQpLGQ9Zi5jb250ZXh0fHxmLHA9ZCE9PWYmJihkLm5vZGVUeXBlfHxkIGluc3RhbmNlb2YgaSk/aShkKTppLmV2ZW50LGg9aS5EZWZlcnJlZCgpLG09aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksZz1mLnN0YXR1c0NvZGV8fHt9LHY9e30seT17fSxiPTAseD17cmVhZHlTdGF0ZTowLHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtpZighYil7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO2U9eVtuXT15W25dfHxlLHZbZV09dH1yZXR1cm4gdGhpc30sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIDI9PT1iP3I6bnVsbH0sZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoMj09PWIpe2lmKCFvKWZvcihvPXt9O3Q9QWUuZXhlYyhyKTspb1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl07dD1vW2UudG9Mb3dlckNhc2UoKV19cmV0dXJuIHZvaWQgMD09PXQ/bnVsbDp0fSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGUpe3JldHVybiBifHwoZi5taW1lVHlwZT1lKSx0aGlzfSxhYm9ydDpmdW5jdGlvbihlKXtyZXR1cm4gZT1lfHwiYWJvcnQiLGEmJmEuYWJvcnQoZSksdygwLGUpLHRoaXN9fTtmdW5jdGlvbiB3KGUsdCxvLGwpe2lmKDIhPT1iKXtiPTIscyYmY2xlYXJUaW1lb3V0KHMpLGE9dm9pZCAwLHI9bHx8IiIseC5yZWFkeVN0YXRlPWU+MD80OjA7dmFyIGMsdix5LHcsVCxOPXQsQz1vP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsbD1lLmRhdGFUeXBlcyx1PWUucmVzcG9uc2VGaWVsZHM7Zm9yKGkgaW4gdSlpIGluIG4mJih0W3VbaV1dPW5baV0pO2Zvcig7IioiPT09bFswXTspbC5zaGlmdCgpLHZvaWQgMD09PXImJihyPWUubWltZVR5cGV8fHQuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtdHlwZSIpKTtpZihyKWZvcihpIGluIHMpaWYoc1tpXSYmc1tpXS50ZXN0KHIpKXtsLnVuc2hpZnQoaSk7YnJlYWt9aWYobFswXWluIG4pbz1sWzBdO2Vsc2V7Zm9yKGkgaW4gbil7aWYoIWxbMF18fGUuY29udmVydGVyc1tpKyIgIitsWzBdXSl7bz1pO2JyZWFrfWF8fChhPWkpfW89b3x8YX1pZihvKXJldHVybiBvIT09bFswXSYmbC51bnNoaWZ0KG8pLG5bb119KGYseCxvKTp2b2lkIDA7aWYoZT49MjAwJiZlPDMwMHx8MzA0PT09ZSlpZihmLmlmTW9kaWZpZWQmJigodz14LmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoaS5sYXN0TW9kaWZpZWRbbl09dyksKFQ9eC5nZXRSZXNwb25zZUhlYWRlcigiRXRhZyIpKSYmKGkuZXRhZ1tuXT1UKSksMzA0PT09ZSlOPSJub3Rtb2RpZmllZCIsYz0hMDtlbHNlIHRyeXt2PWZ1bmN0aW9uKGUsdCl7CmUuZGF0YUZpbHRlciYmKHQ9ZS5kYXRhRmlsdGVyKHQsZS5kYXRhVHlwZSkpO3ZhciBuLHIsbyxhLHMsbCx1LGMsZj1lLmRhdGFUeXBlcyxkPXt9LHA9Zi5sZW5ndGgsaD1mWzBdO2ZvcihuPTE7bjxwO24rKyl7aWYoMT09PW4pZm9yKHIgaW4gZS5jb252ZXJ0ZXJzKSJzdHJpbmciPT10eXBlb2YgciYmKGRbci50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbcl0pO2lmKGE9aCwiKiI9PT0oaD1mW25dKSloPWE7ZWxzZSBpZigiKiIhPT1hJiZhIT09aCl7aWYoIShsPWRbcz1hKyIgIitoXXx8ZFsiKiAiK2hdKSlmb3IodSBpbiBjPXZvaWQgMCxkKWlmKCgobz11LnNwbGl0KCIgIikpWzBdPT09YXx8IioiPT09b1swXSkmJihjPWRbb1sxXSsiICIraF0pKXshMD09PSh1PWRbdV0pP2w9YzohMD09PWMmJihsPXUpO2JyZWFrfWx8fGN8fGkuZXJyb3IoIk5vIGNvbnZlcnNpb24gZnJvbSAiK3MucmVwbGFjZSgiICIsIiB0byAiKSksITAhPT1sJiYodD1sP2wodCk6Yyh1KHQpKSl9fXJldHVybiB0fShmLEMpLE49InN1Y2Nlc3MiLGM9ITB9Y2F0Y2goZSl7Tj0icGFyc2VyZXJyb3IiLHk9ZX1lbHNlIHk9TixOJiYhZXx8KE49ImVycm9yIixlPDAmJihlPTApKTt4LnN0YXR1cz1lLHguc3RhdHVzVGV4dD0iIisodHx8TiksYz9oLnJlc29sdmVXaXRoKGQsW3YsTix4XSk6aC5yZWplY3RXaXRoKGQsW3gsTix5XSkseC5zdGF0dXNDb2RlKGcpLGc9dm9pZCAwLHUmJnAudHJpZ2dlcigiYWpheCIrKGM/IlN1Y2Nlc3MiOiJFcnJvciIpLFt4LGYsYz92OnldKSxtLmZpcmVXaXRoKGQsW3gsTl0pLHUmJihwLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3gsZl0pLC0taS5hY3RpdmV8fGkuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSl9fWlmKGgucHJvbWlzZSh4KSx4LnN1Y2Nlc3M9eC5kb25lLHguZXJyb3I9eC5mYWlsLHguY29tcGxldGU9bS5hZGQseC5zdGF0dXNDb2RlPWZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUpaWYoYjwyKWZvcih0IGluIGUpZ1t0XT1bZ1t0XSxlW3RdXTtlbHNlIHQ9ZVt4LnN0YXR1c10seC50aGVuKHQsdCk7cmV0dXJuIHRoaXN9LGYudXJsPSgoZXx8Zi51cmwpKyIiKS5yZXBsYWNlKEVlLCIiKS5yZXBsYWNlKEZlLE5lWzFdKyIvLyIpLGYuZGF0YVR5cGVzPWkudHJpbShmLmRhdGFUeXBlfHwiKiIpLnRvTG93ZXJDYXNlKCkuc3BsaXQoT2UpLG51bGw9PWYuY3Jvc3NEb21haW4mJihsPVBlLmV4ZWMoZi51cmwudG9Mb3dlckNhc2UoKSksZi5jcm9zc0RvbWFpbj0hKCFsfHxsWzFdPT1OZVsxXSYmbFsyXT09TmVbMl0mJihsWzNdfHwoImh0dHA6Ij09PWxbMV0/ODA6NDQzKSk9PShOZVszXXx8KCJodHRwOiI9PT1OZVsxXT84MDo0NDMpKSkpLGYuZGF0YSYmZi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBmLmRhdGEmJihmLmRhdGE9aS5wYXJhbShmLmRhdGEsZi50cmFkaXRpb25hbCkpLFJlKEJlLGYsdCx4KSwyPT09YilyZXR1cm4hMTtpZih1PWYuZ2xvYmFsLGYudHlwZT1mLnR5cGUudG9VcHBlckNhc2UoKSxmLmhhc0NvbnRlbnQ9IUxlLnRlc3QoZi50eXBlKSx1JiYwPT1pLmFjdGl2ZSsrJiZpLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLCFmLmhhc0NvbnRlbnQmJihmLmRhdGEmJihmLnVybCs9KGplLnRlc3QoZi51cmwpPyImIjoiPyIpK2YuZGF0YSxkZWxldGUgZi5kYXRhKSxuPWYudXJsLCExPT09Zi5jYWNoZSkpe3ZhciBUPWkubm93KCksTj1mLnVybC5yZXBsYWNlKEhlLCIkMV89IitUKTtmLnVybD1OKyhOPT09Zi51cmw/KGplLnRlc3QoZi51cmwpPyImIjoiPyIpKyJfPSIrVDoiIil9Zm9yKGMgaW4oZi5kYXRhJiZmLmhhc0NvbnRlbnQmJiExIT09Zi5jb250ZW50VHlwZXx8dC5jb250ZW50VHlwZSkmJnguc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIixmLmNvbnRlbnRUeXBlKSxmLmlmTW9kaWZpZWQmJihuPW58fGYudXJsLGkubGFzdE1vZGlmaWVkW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixpLmxhc3RNb2RpZmllZFtuXSksaS5ldGFnW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLGkuZXRhZ1tuXSkpLHguc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixmLmRhdGFUeXBlc1swXSYmZi5hY2NlcHRzW2YuZGF0YVR5cGVzWzBdXT9mLmFjY2VwdHNbZi5kYXRhVHlwZXNbMF1dKygiKiIhPT1mLmRhdGFUeXBlc1swXT8iLCAiK0llKyI7IHE9MC4wMSI6IiIpOmYuYWNjZXB0c1siKiJdKSxmLmhlYWRlcnMpeC5zZXRSZXF1ZXN0SGVhZGVyKGMsZi5oZWFkZXJzW2NdKTtpZihmLmJlZm9yZVNlbmQmJighMT09PWYuYmVmb3JlU2VuZC5jYWxsKGQseCxmKXx8Mj09PWIpKXJldHVybiB4LmFib3J0KCksITE7Zm9yKGMgaW57c3VjY2VzczoxLGVycm9yOjEsY29tcGxldGU6MX0peFtjXShmW2NdKTtpZihhPVJlKFdlLGYsdCx4KSl7eC5yZWFkeVN0YXRlPTEsdSYmcC50cmlnZ2VyKCJhamF4U2VuZCIsW3gsZl0pLGYuYXN5bmMmJmYudGltZW91dD4wJiYocz1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3guYWJvcnQoInRpbWVvdXQiKX0pLGYudGltZW91dCkpO3RyeXtiPTEsYS5zZW5kKHYsdyl9Y2F0Y2goZSl7aWYoIShiPDIpKXRocm93IGU7dygtMSxlKX19ZWxzZSB3KC0xLCJObyBUcmFuc3BvcnQiKTtyZXR1cm4geH0scGFyYW06ZnVuY3Rpb24oZSx0KXt2YXIgbj1bXSxyPWZ1bmN0aW9uKGUsdCl7dD1pLmlzRnVuY3Rpb24odCk/dCgpOnQsbltuLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQodCl9O2lmKHZvaWQgMD09PXQmJih0PWkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxpLmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhaS5pc1BsYWluT2JqZWN0KGUpKWkuZWFjaChlLChmdW5jdGlvbigpe3IodGhpcy5uYW1lLHRoaXMudmFsdWUpfSkpO2Vsc2UgZm9yKHZhciBvIGluIGUpemUobyxlW29dLHQscik7cmV0dXJuIG4uam9pbigiJiIpLnJlcGxhY2UoQ2UsIisiKX19KSxpLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e319KTt2YXIgVmUsVWUsWWU9ISF3aW5kb3cuQWN0aXZlWE9iamVjdCYmZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gVmUpVmVbZV0oMCwxKX0sSmU9MAo7ZnVuY3Rpb24gR2UoKXt0cnl7cmV0dXJuIG5ldyB3aW5kb3cuWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fX1pLmFqYXhTZXR0aW5ncy54aHI9d2luZG93LkFjdGl2ZVhPYmplY3Q/ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc0xvY2FsJiZHZSgpfHxmdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IHdpbmRvdy5BY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQuWE1MSFRUUCIpfWNhdGNoKGUpe319KCl9OkdlLFVlPWkuYWpheFNldHRpbmdzLnhocigpLGkuZXh0ZW5kKGkuc3VwcG9ydCx7YWpheDohIVVlLGNvcnM6ISFVZSYmIndpdGhDcmVkZW50aWFscyJpbiBVZX0pLGkuc3VwcG9ydC5hamF4JiZpLmFqYXhUcmFuc3BvcnQoKGZ1bmN0aW9uKGUpe3ZhciB0O2lmKCFlLmNyb3NzRG9tYWlufHxpLnN1cHBvcnQuY29ycylyZXR1cm57c2VuZDpmdW5jdGlvbihuLHIpe3ZhciBvLGEscz1lLnhocigpO2lmKGUudXNlcm5hbWU/cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jLGUudXNlcm5hbWUsZS5wYXNzd29yZCk6cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jKSxlLnhockZpZWxkcylmb3IoYSBpbiBlLnhockZpZWxkcylzW2FdPWUueGhyRmllbGRzW2FdO2UubWltZVR5cGUmJnMub3ZlcnJpZGVNaW1lVHlwZSYmcy5vdmVycmlkZU1pbWVUeXBlKGUubWltZVR5cGUpLGUuY3Jvc3NEb21haW58fG5bIlgtUmVxdWVzdGVkLVdpdGgiXXx8KG5bIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTt0cnl7Zm9yKGEgaW4gbilzLnNldFJlcXVlc3RIZWFkZXIoYSxuW2FdKX1jYXRjaChlKXt9cy5zZW5kKGUuaGFzQ29udGVudCYmZS5kYXRhfHxudWxsKSx0PWZ1bmN0aW9uKG4sYSl7dmFyIGwsdSxjLGYsZDt0cnl7aWYodCYmKGF8fDQ9PT1zLnJlYWR5U3RhdGUpKWlmKHQ9dm9pZCAwLG8mJihzLm9ucmVhZHlzdGF0ZWNoYW5nZT1pLm5vb3AsWWUmJmRlbGV0ZSBWZVtvXSksYSk0IT09cy5yZWFkeVN0YXRlJiZzLmFib3J0KCk7ZWxzZXtsPXMuc3RhdHVzLGM9cy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSxmPXt9LChkPXMucmVzcG9uc2VYTUwpJiZkLmRvY3VtZW50RWxlbWVudCYmKGYueG1sPWQpO3RyeXtmLnRleHQ9cy5yZXNwb25zZVRleHR9Y2F0Y2gobil7fXRyeXt1PXMuc3RhdHVzVGV4dH1jYXRjaChlKXt1PSIifWx8fCFlLmlzTG9jYWx8fGUuY3Jvc3NEb21haW4/MTIyMz09PWwmJihsPTIwNCk6bD1mLnRleHQ/MjAwOjQwNH19Y2F0Y2goZSl7YXx8cigtMSxlKX1mJiZyKGwsdSxmLGMpfSxlLmFzeW5jJiY0IT09cy5yZWFkeVN0YXRlPyhvPSsrSmUsWWUmJihWZXx8KFZlPXt9LGkod2luZG93KS51bmxvYWQoWWUpKSxWZVtvXT10KSxzLm9ucmVhZHlzdGF0ZWNoYW5nZT10KTp0KCl9LGFib3J0OmZ1bmN0aW9uKCl7dCYmdCgwLDEpfX19KSk7dmFyIEtlLFFlLFplLGV0LHR0PXt9LG50PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxydD0vXihbK1wtXT0pPyhbXGQrLlwtXSspKFthLXolXSopJC9pLGl0PVtbImhlaWdodCIsIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSIsInBhZGRpbmdUb3AiLCJwYWRkaW5nQm90dG9tIl0sWyJ3aWR0aCIsIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCIsInBhZGRpbmdMZWZ0IiwicGFkZGluZ1JpZ2h0Il0sWyJvcGFjaXR5Il1dO2Z1bmN0aW9uIG90KCl7cmV0dXJuIHNldFRpbWVvdXQoYXQsMCksZXQ9aS5ub3coKX1mdW5jdGlvbiBhdCgpe2V0PXZvaWQgMH1mdW5jdGlvbiBzdChlLHQpe3ZhciBuPXt9O3JldHVybiBpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0LnNsaWNlKDAsdCkpLChmdW5jdGlvbigpe25bdGhpc109ZX0pKSxufWZ1bmN0aW9uIGx0KGUpe2lmKCF0dFtlXSl7dmFyIG49dC5ib2R5LHI9aSgiPCIrZSsiPiIpLmFwcGVuZFRvKG4pLG89ci5jc3MoImRpc3BsYXkiKTtyLnJlbW92ZSgpLCJub25lIiE9PW8mJiIiIT09b3x8KEtlfHwoKEtlPXQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIikpLmZyYW1lQm9yZGVyPUtlLndpZHRoPUtlLmhlaWdodD0wKSxuLmFwcGVuZENoaWxkKEtlKSxRZSYmS2UuY3JlYXRlRWxlbWVudHx8KChRZT0oS2UuY29udGVudFdpbmRvd3x8S2UuY29udGVudERvY3VtZW50KS5kb2N1bWVudCkud3JpdGUoKGkuc3VwcG9ydC5ib3hNb2RlbD8iPCFkb2N0eXBlIGh0bWw+IjoiIikrIjxodG1sPjxib2R5PiIpLFFlLmNsb3NlKCkpLHI9UWUuY3JlYXRlRWxlbWVudChlKSxRZS5ib2R5LmFwcGVuZENoaWxkKHIpLG89aS5jc3MociwiZGlzcGxheSIpLG4ucmVtb3ZlQ2hpbGQoS2UpKSx0dFtlXT1vfXJldHVybiB0dFtlXX1pLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbihlLHQsbil7dmFyIHIsbztpZihlfHwwPT09ZSlyZXR1cm4gdGhpcy5hbmltYXRlKHN0KCJzaG93IiwzKSxlLHQsbik7Zm9yKHZhciBhPTAscz10aGlzLmxlbmd0aDthPHM7YSsrKShyPXRoaXNbYV0pLnN0eWxlJiYobz1yLnN0eWxlLmRpc3BsYXksaS5fZGF0YShyLCJvbGRkaXNwbGF5Iil8fCJub25lIiE9PW98fChvPXIuc3R5bGUuZGlzcGxheT0iIiksKCIiPT09byYmIm5vbmUiPT09aS5jc3MociwiZGlzcGxheSIpfHwhaS5jb250YWlucyhyLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHIpKSYmaS5fZGF0YShyLCJvbGRkaXNwbGF5IixsdChyLm5vZGVOYW1lKSkpO2ZvcihhPTA7YTxzO2ErKykocj10aGlzW2FdKS5zdHlsZSYmKCIiIT09KG89ci5zdHlsZS5kaXNwbGF5KSYmIm5vbmUiIT09b3x8KHIuc3R5bGUuZGlzcGxheT1pLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8IiIpKTtyZXR1cm4gdGhpc30saGlkZTpmdW5jdGlvbihlLHQsbil7aWYoZXx8MD09PWUpcmV0dXJuIHRoaXMuYW5pbWF0ZShzdCgiaGlkZSIsMyksZSx0LG4pO2Zvcih2YXIgcixvLGE9MCxzPXRoaXMubGVuZ3RoO2E8czthKyspKHI9dGhpc1thXSkuc3R5bGUmJigibm9uZSI9PT0obz1pLmNzcyhyLCJkaXNwbGF5IikpfHxpLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8aS5fZGF0YShyLCJvbGRkaXNwbGF5IixvKSk7Zm9yKGE9MDthPHM7YSsrKXRoaXNbYV0uc3R5bGUmJih0aGlzW2FdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKTtyZXR1cm4gdGhpc30sX3RvZ2dsZTppLmZuLnRvZ2dsZSwKdG9nZ2xlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj0iYm9vbGVhbiI9PXR5cGVvZiBlO3JldHVybiBpLmlzRnVuY3Rpb24oZSkmJmkuaXNGdW5jdGlvbih0KT90aGlzLl90b2dnbGUuYXBwbHkodGhpcyxhcmd1bWVudHMpOm51bGw9PWV8fHI/dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PXI/ZTppKHRoaXMpLmlzKCI6aGlkZGVuIik7aSh0aGlzKVt0PyJzaG93IjoiaGlkZSJdKCl9KSk6dGhpcy5hbmltYXRlKHN0KCJ0b2dnbGUiLDMpLGUsdCxuKSx0aGlzfSxmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKCI6aGlkZGVuIikuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1hdGU6ZnVuY3Rpb24oZSx0LG4scil7dmFyIG89aS5zcGVlZCh0LG4scik7aWYoaS5pc0VtcHR5T2JqZWN0KGUpKXJldHVybiB0aGlzLmVhY2goby5jb21wbGV0ZSxbITFdKTtmdW5jdGlvbiBhKCl7ITE9PT1vLnF1ZXVlJiZpLl9tYXJrKHRoaXMpO3ZhciB0LG4scixhLHMsbCx1LGMsZixkLHAsaD1pLmV4dGVuZCh7fSxvKSxtPTE9PT10aGlzLm5vZGVUeXBlLGc9bSYmaSh0aGlzKS5pcygiOmhpZGRlbiIpO2ZvcihyIGluIGguYW5pbWF0ZWRQcm9wZXJ0aWVzPXt9LGUpaWYociE9PSh0PWkuY2FtZWxDYXNlKHIpKSYmKGVbdF09ZVtyXSxkZWxldGUgZVtyXSksKHM9aS5jc3NIb29rc1t0XSkmJiJleHBhbmQiaW4gcylmb3IociBpbiBsPXMuZXhwYW5kKGVbdF0pLGRlbGV0ZSBlW3RdLGwpciBpbiBlfHwoZVtyXT1sW3JdKTtmb3IodCBpbiBlKXtpZihuPWVbdF0saS5pc0FycmF5KG4pPyhoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1uWzFdLG49ZVt0XT1uWzBdKTpoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1oLnNwZWNpYWxFYXNpbmcmJmguc3BlY2lhbEVhc2luZ1t0XXx8aC5lYXNpbmd8fCJzd2luZyIsImhpZGUiPT09biYmZ3x8InNob3ciPT09biYmIWcpcmV0dXJuIGguY29tcGxldGUuY2FsbCh0aGlzKTshbXx8ImhlaWdodCIhPT10JiYid2lkdGgiIT09dHx8KGgub3ZlcmZsb3c9W3RoaXMuc3R5bGUub3ZlcmZsb3csdGhpcy5zdHlsZS5vdmVyZmxvd1gsdGhpcy5zdHlsZS5vdmVyZmxvd1ldLCJpbmxpbmUiPT09aS5jc3ModGhpcywiZGlzcGxheSIpJiYibm9uZSI9PT1pLmNzcyh0aGlzLCJmbG9hdCIpJiYoaS5zdXBwb3J0LmlubGluZUJsb2NrTmVlZHNMYXlvdXQmJiJpbmxpbmUiIT09bHQodGhpcy5ub2RlTmFtZSk/dGhpcy5zdHlsZS56b29tPTE6dGhpcy5zdHlsZS5kaXNwbGF5PSJpbmxpbmUtYmxvY2siKSl9Zm9yKHIgaW4gbnVsbCE9aC5vdmVyZmxvdyYmKHRoaXMuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIpLGUpYT1uZXcgaS5meCh0aGlzLGgsciksbj1lW3JdLG50LnRlc3Qobik/KHA9aS5fZGF0YSh0aGlzLCJ0b2dnbGUiK3IpfHwoInRvZ2dsZSI9PT1uP2c/InNob3ciOiJoaWRlIjowKSk/KGkuX2RhdGEodGhpcywidG9nZ2xlIityLCJzaG93Ij09PXA/ImhpZGUiOiJzaG93IiksYVtwXSgpKTphW25dKCk6KHU9cnQuZXhlYyhuKSxjPWEuY3VyKCksdT8oZj1wYXJzZUZsb2F0KHVbMl0pLCJweCIhPT0oZD11WzNdfHwoaS5jc3NOdW1iZXJbcl0/IiI6InB4IikpJiYoaS5zdHlsZSh0aGlzLHIsKGZ8fDEpK2QpLGM9KGZ8fDEpL2EuY3VyKCkqYyxpLnN0eWxlKHRoaXMscixjK2QpKSx1WzFdJiYoZj0oIi09Ij09PXVbMV0/LTE6MSkqZitjKSxhLmN1c3RvbShjLGYsZCkpOmEuY3VzdG9tKGMsbiwiIikpO3JldHVybiEwfXJldHVybiBlPWkuZXh0ZW5kKHt9LGUpLCExPT09by5xdWV1ZT90aGlzLmVhY2goYSk6dGhpcy5xdWV1ZShvLnF1ZXVlLGEpfSxzdG9wOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGUmJihuPXQsdD1lLGU9dm9pZCAwKSx0JiYhMSE9PWUmJnRoaXMucXVldWUoZXx8ImZ4IixbXSksdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0LHI9ITEsbz1pLnRpbWVycyxhPWkuX2RhdGEodGhpcyk7ZnVuY3Rpb24gcyhlLHQscil7dmFyIG89dFtyXTtpLnJlbW92ZURhdGEoZSxyLCEwKSxvLnN0b3Aobil9aWYobnx8aS5fdW5tYXJrKCEwLHRoaXMpLG51bGw9PWUpZm9yKHQgaW4gYSlhW3RdJiZhW3RdLnN0b3AmJnQuaW5kZXhPZigiLnJ1biIpPT09dC5sZW5ndGgtNCYmcyh0aGlzLGEsdCk7ZWxzZSBhW3Q9ZSsiLnJ1biJdJiZhW3RdLnN0b3AmJnModGhpcyxhLHQpO2Zvcih0PW8ubGVuZ3RoO3QtLTspb1t0XS5lbGVtIT09dGhpc3x8bnVsbCE9ZSYmb1t0XS5xdWV1ZSE9PWV8fChuP29bdF0oITApOm9bdF0uc2F2ZVN0YXRlKCkscj0hMCxvLnNwbGljZSh0LDEpKTtuJiZyfHxpLmRlcXVldWUodGhpcyxlKX0pKX19KSxpLmVhY2goe3NsaWRlRG93bjpzdCgic2hvdyIsMSksc2xpZGVVcDpzdCgiaGlkZSIsMSksc2xpZGVUb2dnbGU6c3QoInRvZ2dsZSIsMSksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSwoZnVuY3Rpb24oZSx0KXtpLmZuW2VdPWZ1bmN0aW9uKGUsbixyKXtyZXR1cm4gdGhpcy5hbmltYXRlKHQsZSxuLHIpfX0pKSxpLmV4dGVuZCh7c3BlZWQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT9pLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fGkuaXNGdW5jdGlvbihlKSYmZSxkdXJhdGlvbjplLGVhc2luZzpuJiZ0fHx0JiYhaS5pc0Z1bmN0aW9uKHQpJiZ0fTtyZXR1cm4gci5kdXJhdGlvbj1pLmZ4Lm9mZj8wOiJudW1iZXIiPT10eXBlb2Ygci5kdXJhdGlvbj9yLmR1cmF0aW9uOnIuZHVyYXRpb24gaW4gaS5meC5zcGVlZHM/aS5meC5zcGVlZHNbci5kdXJhdGlvbl06aS5meC5zcGVlZHMuX2RlZmF1bHQsbnVsbCE9ci5xdWV1ZSYmITAhPT1yLnF1ZXVlfHwoci5xdWV1ZT0iZngiKSxyLm9sZD1yLmNvbXBsZXRlLHIuY29tcGxldGU9ZnVuY3Rpb24oZSl7aS5pc0Z1bmN0aW9uKHIub2xkKSYmci5vbGQuY2FsbCh0aGlzKSxyLnF1ZXVlP2kuZGVxdWV1ZSh0aGlzLHIucXVldWUpOiExIT09ZSYmaS5fdW5tYXJrKHRoaXMpfSxyfSxlYXNpbmc6ewpsaW5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi1NYXRoLmNvcyhlKk1hdGguUEkpLzIrLjV9fSx0aW1lcnM6W10sZng6ZnVuY3Rpb24oZSx0LG4pe3RoaXMub3B0aW9ucz10LHRoaXMuZWxlbT1lLHRoaXMucHJvcD1uLHQub3JpZz10Lm9yaWd8fHt9fX0pLGkuZngucHJvdG90eXBlPXt1cGRhdGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksKGkuZnguc3RlcFt0aGlzLnByb3BdfHxpLmZ4LnN0ZXAuX2RlZmF1bHQpKHRoaXMpfSxjdXI6ZnVuY3Rpb24oKXtpZihudWxsIT10aGlzLmVsZW1bdGhpcy5wcm9wXSYmKCF0aGlzLmVsZW0uc3R5bGV8fG51bGw9PXRoaXMuZWxlbS5zdHlsZVt0aGlzLnByb3BdKSlyZXR1cm4gdGhpcy5lbGVtW3RoaXMucHJvcF07dmFyIGUsdD1pLmNzcyh0aGlzLmVsZW0sdGhpcy5wcm9wKTtyZXR1cm4gaXNOYU4oZT1wYXJzZUZsb2F0KHQpKT90JiYiYXV0byIhPT10P3Q6MDplfSxjdXN0b206ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXMsbz1pLmZ4O2Z1bmN0aW9uIGEoZSl7cmV0dXJuIHIuc3RlcChlKX10aGlzLnN0YXJ0VGltZT1ldHx8b3QoKSx0aGlzLmVuZD10LHRoaXMubm93PXRoaXMuc3RhcnQ9ZSx0aGlzLnBvcz10aGlzLnN0YXRlPTAsdGhpcy51bml0PW58fHRoaXMudW5pdHx8KGkuY3NzTnVtYmVyW3RoaXMucHJvcF0/IiI6InB4IiksYS5xdWV1ZT10aGlzLm9wdGlvbnMucXVldWUsYS5lbGVtPXRoaXMuZWxlbSxhLnNhdmVTdGF0ZT1mdW5jdGlvbigpe3ZvaWQgMD09PWkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCkmJihyLm9wdGlvbnMuaGlkZT9pLl9kYXRhKHIuZWxlbSwiZnhzaG93IityLnByb3Asci5zdGFydCk6ci5vcHRpb25zLnNob3cmJmkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCxyLmVuZCkpfSxhKCkmJmkudGltZXJzLnB1c2goYSkmJiFaZSYmKFplPXNldEludGVydmFsKG8udGljayxvLmludGVydmFsKSl9LHNob3c6ZnVuY3Rpb24oKXt2YXIgZT1pLl9kYXRhKHRoaXMuZWxlbSwiZnhzaG93Iit0aGlzLnByb3ApO3RoaXMub3B0aW9ucy5vcmlnW3RoaXMucHJvcF09ZXx8aS5zdHlsZSh0aGlzLmVsZW0sdGhpcy5wcm9wKSx0aGlzLm9wdGlvbnMuc2hvdz0hMCx2b2lkIDAhPT1lP3RoaXMuY3VzdG9tKHRoaXMuY3VyKCksZSk6dGhpcy5jdXN0b20oIndpZHRoIj09PXRoaXMucHJvcHx8ImhlaWdodCI9PT10aGlzLnByb3A/MTowLHRoaXMuY3VyKCkpLGkodGhpcy5lbGVtKS5zaG93KCl9LGhpZGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMub3JpZ1t0aGlzLnByb3BdPWkuX2RhdGEodGhpcy5lbGVtLCJmeHNob3ciK3RoaXMucHJvcCl8fGkuc3R5bGUodGhpcy5lbGVtLHRoaXMucHJvcCksdGhpcy5vcHRpb25zLmhpZGU9ITAsdGhpcy5jdXN0b20odGhpcy5jdXIoKSwwKX0sc3RlcDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz1ldHx8b3QoKSxhPSEwLHM9dGhpcy5lbGVtLGw9dGhpcy5vcHRpb25zO2lmKGV8fG8+PWwuZHVyYXRpb24rdGhpcy5zdGFydFRpbWUpe2Zvcih0IGluIHRoaXMubm93PXRoaXMuZW5kLHRoaXMucG9zPXRoaXMuc3RhdGU9MSx0aGlzLnVwZGF0ZSgpLGwuYW5pbWF0ZWRQcm9wZXJ0aWVzW3RoaXMucHJvcF09ITAsbC5hbmltYXRlZFByb3BlcnRpZXMpITAhPT1sLmFuaW1hdGVkUHJvcGVydGllc1t0XSYmKGE9ITEpO2lmKGEpe2lmKG51bGw9PWwub3ZlcmZsb3d8fGkuc3VwcG9ydC5zaHJpbmtXcmFwQmxvY2tzfHxpLmVhY2goWyIiLCJYIiwiWSJdLChmdW5jdGlvbihlLHQpe3Muc3R5bGVbIm92ZXJmbG93Iit0XT1sLm92ZXJmbG93W2VdfSkpLGwuaGlkZSYmaShzKS5oaWRlKCksbC5oaWRlfHxsLnNob3cpZm9yKHQgaW4gbC5hbmltYXRlZFByb3BlcnRpZXMpaS5zdHlsZShzLHQsbC5vcmlnW3RdKSxpLnJlbW92ZURhdGEocywiZnhzaG93Iit0LCEwKSxpLnJlbW92ZURhdGEocywidG9nZ2xlIit0LCEwKTsocj1sLmNvbXBsZXRlKSYmKGwuY29tcGxldGU9ITEsci5jYWxsKHMpKX1yZXR1cm4hMX1yZXR1cm4gbC5kdXJhdGlvbj09MS8wP3RoaXMubm93PW86KG49by10aGlzLnN0YXJ0VGltZSx0aGlzLnN0YXRlPW4vbC5kdXJhdGlvbix0aGlzLnBvcz1pLmVhc2luZ1tsLmFuaW1hdGVkUHJvcGVydGllc1t0aGlzLnByb3BdXSh0aGlzLnN0YXRlLG4sMCwxLGwuZHVyYXRpb24pLHRoaXMubm93PXRoaXMuc3RhcnQrKHRoaXMuZW5kLXRoaXMuc3RhcnQpKnRoaXMucG9zKSx0aGlzLnVwZGF0ZSgpLCEwfX0saS5leHRlbmQoaS5meCx7dGljazpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PWkudGltZXJzLG49MDtuPHQubGVuZ3RoO24rKykoZT10W25dKSgpfHx0W25dIT09ZXx8dC5zcGxpY2Uobi0tLDEpO3QubGVuZ3RofHxpLmZ4LnN0b3AoKX0saW50ZXJ2YWw6MTMsc3RvcDpmdW5jdGlvbigpe2NsZWFySW50ZXJ2YWwoWmUpLFplPW51bGx9LHNwZWVkczp7c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxzdGVwOntvcGFjaXR5OmZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLCJvcGFjaXR5IixlLm5vdyl9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe2UuZWxlbS5zdHlsZSYmbnVsbCE9ZS5lbGVtLnN0eWxlW2UucHJvcF0/ZS5lbGVtLnN0eWxlW2UucHJvcF09ZS5ub3crZS51bml0OmUuZWxlbVtlLnByb3BdPWUubm93fX19KSxpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0KSwoZnVuY3Rpb24oZSx0KXt0LmluZGV4T2YoIm1hcmdpbiIpJiYoaS5meC5zdGVwW3RdPWZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLHQsTWF0aC5tYXgoMCxlLm5vdykrZS51bml0KX0pfSkpLGkuZXhwciYmaS5leHByLmZpbHRlcnMmJihpLmV4cHIuZmlsdGVycy5hbmltYXRlZD1mdW5jdGlvbihlKXtyZXR1cm4gaS5ncmVwKGkudGltZXJzLChmdW5jdGlvbih0KXtyZXR1cm4gZT09PXQuZWxlbX0pKS5sZW5ndGh9KTt2YXIgdXQsY3Q9L150KD86YWJsZXxkfGgpJC9pLGZ0PS9eKD86Ym9keXxodG1sKSQvaTtmdW5jdGlvbiBkdChlKXsKcmV0dXJuIGkuaXNXaW5kb3coZSk/ZTo5PT09ZS5ub2RlVHlwZSYmKGUuZGVmYXVsdFZpZXd8fGUucGFyZW50V2luZG93KX11dD0iZ2V0Qm91bmRpbmdDbGllbnRSZWN0ImluIHQuZG9jdW1lbnRFbGVtZW50P2Z1bmN0aW9uKGUsdCxuLHIpe3RyeXtyPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goZSl7fWlmKCFyfHwhaS5jb250YWlucyhuLGUpKXJldHVybiByP3t0b3A6ci50b3AsbGVmdDpyLmxlZnR9Ont0b3A6MCxsZWZ0OjB9O3ZhciBvPXQuYm9keSxhPWR0KHQpLHM9bi5jbGllbnRUb3B8fG8uY2xpZW50VG9wfHwwLGw9bi5jbGllbnRMZWZ0fHxvLmNsaWVudExlZnR8fDAsdT1hLnBhZ2VZT2Zmc2V0fHxpLnN1cHBvcnQuYm94TW9kZWwmJm4uc2Nyb2xsVG9wfHxvLnNjcm9sbFRvcCxjPWEucGFnZVhPZmZzZXR8fGkuc3VwcG9ydC5ib3hNb2RlbCYmbi5zY3JvbGxMZWZ0fHxvLnNjcm9sbExlZnQ7cmV0dXJue3RvcDpyLnRvcCt1LXMsbGVmdDpyLmxlZnQrYy1sfX06ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcixvPWUub2Zmc2V0UGFyZW50LGE9dC5ib2R5LHM9dC5kZWZhdWx0VmlldyxsPXM/cy5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCk6ZS5jdXJyZW50U3R5bGUsdT1lLm9mZnNldFRvcCxjPWUub2Zmc2V0TGVmdDsoZT1lLnBhcmVudE5vZGUpJiZlIT09YSYmZSE9PW4mJighaS5zdXBwb3J0LmZpeGVkUG9zaXRpb258fCJmaXhlZCIhPT1sLnBvc2l0aW9uKTspcj1zP3MuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpOmUuY3VycmVudFN0eWxlLHUtPWUuc2Nyb2xsVG9wLGMtPWUuc2Nyb2xsTGVmdCxlPT09byYmKHUrPWUub2Zmc2V0VG9wLGMrPWUub2Zmc2V0TGVmdCwhaS5zdXBwb3J0LmRvZXNOb3RBZGRCb3JkZXJ8fGkuc3VwcG9ydC5kb2VzQWRkQm9yZGVyRm9yVGFibGVBbmRDZWxscyYmY3QudGVzdChlLm5vZGVOYW1lKXx8KHUrPXBhcnNlRmxvYXQoci5ib3JkZXJUb3BXaWR0aCl8fDAsYys9cGFyc2VGbG9hdChyLmJvcmRlckxlZnRXaWR0aCl8fDApLG89ZS5vZmZzZXRQYXJlbnQpLGkuc3VwcG9ydC5zdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGUmJiJ2aXNpYmxlIiE9PXIub3ZlcmZsb3cmJih1Kz1wYXJzZUZsb2F0KHIuYm9yZGVyVG9wV2lkdGgpfHwwLGMrPXBhcnNlRmxvYXQoci5ib3JkZXJMZWZ0V2lkdGgpfHwwKSxsPXI7cmV0dXJuInJlbGF0aXZlIiE9PWwucG9zaXRpb24mJiJzdGF0aWMiIT09bC5wb3NpdGlvbnx8KHUrPWEub2Zmc2V0VG9wLGMrPWEub2Zmc2V0TGVmdCksaS5zdXBwb3J0LmZpeGVkUG9zaXRpb24mJiJmaXhlZCI9PT1sLnBvc2l0aW9uJiYodSs9TWF0aC5tYXgobi5zY3JvbGxUb3AsYS5zY3JvbGxUb3ApLGMrPU1hdGgubWF4KG4uc2Nyb2xsTGVmdCxhLnNjcm9sbExlZnQpKSx7dG9wOnUsbGVmdDpjfX0saS5mbi5vZmZzZXQ9ZnVuY3Rpb24oZSl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09ZT90aGlzOnRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aS5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsZSx0KX0pKTt2YXIgdD10aGlzWzBdLG49dCYmdC5vd25lckRvY3VtZW50O3JldHVybiBuP3Q9PT1uLmJvZHk/aS5vZmZzZXQuYm9keU9mZnNldCh0KTp1dCh0LG4sbi5kb2N1bWVudEVsZW1lbnQpOm51bGx9LGkub2Zmc2V0PXtib2R5T2Zmc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0VG9wLG49ZS5vZmZzZXRMZWZ0O3JldHVybiBpLnN1cHBvcnQuZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQmJih0Kz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpblRvcCIpKXx8MCxuKz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDApLHt0b3A6dCxsZWZ0Om59fSxzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWkuY3NzKGUsInBvc2l0aW9uIik7InN0YXRpYyI9PT1yJiYoZS5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiKTt2YXIgbyxhLHM9aShlKSxsPXMub2Zmc2V0KCksdT1pLmNzcyhlLCJ0b3AiKSxjPWkuY3NzKGUsImxlZnQiKSxmPXt9LGQ9e307KCJhYnNvbHV0ZSI9PT1yfHwiZml4ZWQiPT09cikmJmkuaW5BcnJheSgiYXV0byIsW3UsY10pPi0xPyhvPShkPXMucG9zaXRpb24oKSkudG9wLGE9ZC5sZWZ0KToobz1wYXJzZUZsb2F0KHUpfHwwLGE9cGFyc2VGbG9hdChjKXx8MCksaS5pc0Z1bmN0aW9uKHQpJiYodD10LmNhbGwoZSxuLGwpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLWwudG9wK28pLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtbC5sZWZ0K2EpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOnMuY3NzKGYpfX0saS5mbi5leHRlbmQoe3Bvc2l0aW9uOmZ1bmN0aW9uKCl7aWYoIXRoaXNbMF0pcmV0dXJuIG51bGw7dmFyIGU9dGhpc1swXSx0PXRoaXMub2Zmc2V0UGFyZW50KCksbj10aGlzLm9mZnNldCgpLHI9ZnQudGVzdCh0WzBdLm5vZGVOYW1lKT97dG9wOjAsbGVmdDowfTp0Lm9mZnNldCgpO3JldHVybiBuLnRvcC09cGFyc2VGbG9hdChpLmNzcyhlLCJtYXJnaW5Ub3AiKSl8fDAsbi5sZWZ0LT1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDAsci50b3ArPXBhcnNlRmxvYXQoaS5jc3ModFswXSwiYm9yZGVyVG9wV2lkdGgiKSl8fDAsci5sZWZ0Kz1wYXJzZUZsb2F0KGkuY3NzKHRbMF0sImJvcmRlckxlZnRXaWR0aCIpKXx8MCx7dG9wOm4udG9wLXIudG9wLGxlZnQ6bi5sZWZ0LXIubGVmdH19LG9mZnNldFBhcmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5vZmZzZXRQYXJlbnR8fHQuYm9keTtlJiYhZnQudGVzdChlLm5vZGVOYW1lKSYmInN0YXRpYyI9PT1pLmNzcyhlLCJwb3NpdGlvbiIpOyllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfSkpfX0pLGkuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSwoZnVuY3Rpb24oZSx0KXt2YXIgbj0vWS8udGVzdCh0KTtpLmZuW2VdPWZ1bmN0aW9uKHIpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHIsbyl7dmFyIGE9ZHQoZSkKO2lmKHZvaWQgMD09PW8pcmV0dXJuIGE/dCBpbiBhP2FbdF06aS5zdXBwb3J0LmJveE1vZGVsJiZhLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFtyXXx8YS5kb2N1bWVudC5ib2R5W3JdOmVbcl07YT9hLnNjcm9sbFRvKG4/aShhKS5zY3JvbGxMZWZ0KCk6byxuP286aShhKS5zY3JvbGxUb3AoKSk6ZVtyXT1vfSksZSxyLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGkuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LChmdW5jdGlvbihlLHQpe3ZhciBuPSJjbGllbnQiK2Uscj0ic2Nyb2xsIitlLG89Im9mZnNldCIrZTtpLmZuWyJpbm5lciIrZV09ZnVuY3Rpb24oKXt2YXIgZT10aGlzWzBdO3JldHVybiBlP2Uuc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhlLHQsInBhZGRpbmciKSk6dGhpc1t0XSgpOm51bGx9LGkuZm5bIm91dGVyIitlXT1mdW5jdGlvbihlKXt2YXIgbj10aGlzWzBdO3JldHVybiBuP24uc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhuLHQsZT8ibWFyZ2luIjoiYm9yZGVyIikpOnRoaXNbdF0oKTpudWxsfSxpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsYSl7dmFyIHMsbCx1LGM7cmV0dXJuIGkuaXNXaW5kb3coZSk/KGw9KHM9ZS5kb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50W25dLGkuc3VwcG9ydC5ib3hNb2RlbCYmbHx8cy5ib2R5JiZzLmJvZHlbbl18fGwpOjk9PT1lLm5vZGVUeXBlPyhzPWUuZG9jdW1lbnRFbGVtZW50KVtuXT49c1tyXT9zW25dOk1hdGgubWF4KGUuYm9keVtyXSxzW3JdLGUuYm9keVtvXSxzW29dKTp2b2lkIDA9PT1hPyh1PWkuY3NzKGUsdCksYz1wYXJzZUZsb2F0KHUpLGkuaXNOdW1lcmljKGMpP2M6dSk6dm9pZCBpKGUpLmNzcyh0LGEpfSksdCxlLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGUuZXhwb3J0cz13aW5kb3cualF1ZXJ5PXdpbmRvdy4kPWl9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.28","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.964Z","timestamp":1785154590964,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sat, 27 Dec 2025 00:00:00 GMT","end":"Sun, 24 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"0A:93:73:BB:95:EC:D1:52:11:5B:CC:2D:92:43:D4:FD:5A:2E:BE:A4","sha256":"70:E8:96:A5:F6:09:13:92:CB:0D:3F:A5:37:C4:A1:0D:4A:F7:52:C0:C1:B6:21:DB:D5:92:33:3F:B5:7D:EE:0F"}}},"request":{"raw":"GET /sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com HTTP/1.1\r\nHost: widget-sheriff.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\nx-amz-cf-pop: ARN53-P4\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 4c304736e6087956cb00821d710060a4.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\ncross-origin-resource-policy: same-site\r\naccess-control-max-age: 86400\r\nvary: Origin\r\nx-cache: Hit from cloudfront\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: A7k66p1op7j0g-quzqfrAQCwIG1-c3CyzJiSNnqC3Ec3rxV8QhJUtQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":0,"size_decoded":554,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":13,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":13,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-ticker-tape.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.317Z","timestamp":1785154589317,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-ticker-tape.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.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 12:16:29 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"2671d4a92091986b7abd2e1e685669ca\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:29 GMT\r\nx-amz-id-2: MmO7S7qvpk7e7uAwyKi1zjeKKbKi5IBRI9Fnw08J6tdMbbVvXvrURHIxu7TxhDm94C2BFQDD1p8=\r\nx-amz-request-id: 6FDA3NKBBMZWPGT3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: wQVqs5hr7RnUyN2oXxLylh_AKdOK0U2U\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:30:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1cb8b46d8bdf3ebabfa90d4755a7d15f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":13608,"size_decoded":6236,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"2671d4a92091986b7abd2e1e685669ca","sha1":"b59db96af3dd1593356058703fc7af3cd7269919","sha256":"986cfef49d6a6ccd5cb1f1cbf562e8341ed581936885830831a2f4c3dc2b5901","sha512":"c07159fc500c72469ba6dfb7ccf5afdbaf476906fb039e5bfc7ab2c95e79b0067a47e6e02ad44915b9ba426273dc39996ffb1899c029253b56e4b02f7d419883","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6Or26ZMViZMEmkfknYH:uD5Unb26nD6Or26ZkFE9fknE","tlshash":"8e52d8a9b660ecbd51d945dbe07a2321b6193944b203aca4b9ecd4c510fdccca131f7e","first_seen":"2026-07-20T13:42:57.5385Z","last_seen":"2026-07-27T14:17:31.047073Z","times_seen":1435,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxrLEEpLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgST10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoST8odChJLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxJKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19Y29uc3QgZz03Njc7dmFyIHUsbSxwLGYsdzshZnVuY3Rpb24odCl7dC5BZGFwdGl2ZT0iYWRhcHRpdmUiLHQuUmVndWxhcj0icmVndWxhciIsdC5Db21wYWN0PSJjb21wYWN0In0odXx8KHU9e30pKSxmdW5jdGlvbih0KXt0LkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIix0Lk1hcmtldD0ibWFya2V0Iix0LlN5bWJvbD0ic3ltYm9sIn0obXx8KG09e30pKSxmdW5jdGlvbih0KXt0LkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsdC5DdXJyZW5jaWVzPSJmb3JleCIsdC5TdG9ja3M9InN0b2NrIix0LkluZGljZXM9ImluZGV4Iix0LkZ1dHVyZXM9ImZ1dHVyZXMiLHQuQm9uZHM9ImNmZCJ9KHB8fChwPXt9KSksZnVuY3Rpb24odCl7dC5IVE1MPSJodG1sIix0LlJlYWN0PSJyZWFjdCJ9KGZ8fChmPXt9KSksZnVuY3Rpb24odCl7CnRbdC5UaWNrZXJJdGVtSGVpZ2h0Tm9ybWFsPTQ0XT0iVGlja2VySXRlbUhlaWdodE5vcm1hbCIsdFt0LlRpY2tlckl0ZW1IZWlnaHRDb21wYWN0PTcyXT0iVGlja2VySXRlbUhlaWdodENvbXBhY3QifSh3fHwodz17fSkpO2NvbnN0IHk9ZztuZXcgY2xhc3MgZXh0ZW5kcyBke2dldCB3aWRnZXRJZCgpe3JldHVybiJ0aWNrZXItdGFwZSJ9Z2V0IHVzZVBhcmFtc0ZvckNvbm5lY3RTb2NrZXQoKXtyZXR1cm4hMH1maWx0ZXJSYXdTZXR0aW5ncyh0KXt2b2lkIDAhPT10LnRoZW1lJiYodC5jb2xvclRoZW1lPXQudGhlbWUpO2NvbnN0IGU9c3VwZXIuZmlsdGVyUmF3U2V0dGluZ3ModCk7bGV0IGk7ZS53aWR0aD0iMTAwJSI7dHJ5e2k9dGhpcy5pZnJhbWVDb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9ZmluYWxseXtlLmhlaWdodD1mdW5jdGlvbih0LGUsaSxyKXtsZXQgcz0obj10PT09dS5BZGFwdGl2ZSYmcj9yPD15OnQ9PT11LkNvbXBhY3Qsbj83Mjo0NCk7dmFyIG47cmV0dXJuIGV8fChzKz0yKSxpJiYocys9MzIpLHN9KHQuZGlzcGxheU1vZGUsdC5pc1RyYW5zcGFyZW50LHRoaXMuaGFzQ29weXJpZ2h0KCksaSl9cmV0dXJuIGV9Z2V0IHByb3BlcnRpZXNUb1dvcmtXaXRoKCl7cmV0dXJuWyJzeW1ib2xzIiwibG9jYWxlIiwic2hvd1N5bWJvbExvZ28iLCJjb2xvclRoZW1lIiwiaXNUcmFuc3BhcmVudCIsImxhcmdlQ2hhcnRVcmwiLCJkaXNwbGF5TW9kZSIsImN1c3RvbWVyIl19fX0pKCk7"}},"time_used":53,"timings":{"blocked":-1,"dns":2,"connect":1,"send":0,"wait":3,"receive":0,"ssl":44},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7504.1288d1d28b2f47f7ac43.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.548Z","timestamp":1785154590548,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/7504.1288d1d28b2f47f7ac43.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a476ed7-56c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 03 Jul 2026 08:12:07 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/03/2026 10:56:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ccc3a8723a25eca9a6c822df726e32ef\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":22216,"size_decoded":9150,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"185306b73eb6156ba89819ac42f09043","sha1":"0e91a337a58188b9760881d3eeb271cc4c8ac2d0","sha256":"4433e6c002fc34e6971b340b447cb59f9704a935f8ff79457535ae6c04f2a91e","sha512":"62e46a9de161a635772e81ac6f569c8a85bcde20c9143b5dbf3fff3d0acc7a668643a351bbfe42e981d28861648256d6fb72849990fbdf3089e0d8da3a378c9b","ssdeep":"384:t0ohD1L+Hfz4m0ehDLL+HfzLNVEGdmMDPHt+eiWxyATTSXUaaexXzIDyg5nAWhJw:t0ohJL+Hfcm0eh3L+HfdaGdmMDvwWxn4","tlshash":"3aa294c83ad3f0ea926721f514af14c7f2392e666c9d9660c15de0d87c3602df12bd6a","first_seen":"2026-07-04T00:11:22.529436Z","last_seen":"2026-07-27T14:22:59.608024Z","times_seen":381,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNzUwNF0sezMwNzUwNChuLHQscil7ci5yKHQpLHIuZCh0LHtWRVJTSU9OOigpPT51LGFmdGVyOigpPT5EdCxhbGw6KCk9Plp0LGFsbEtleXM6KCk9PmRuLGFueTooKT0+bnIsYXNzaWduOigpPT5EbixiZWZvcmU6KCk9PlJ0LGJpbmQ6KCk9Pmp0LGJpbmRBbGw6KCk9Pl90LGNoYWluOigpPT5ndCxjaHVuazooKT0+VnIsY2xvbmU6KCk9PkZuLGNvbGxlY3Q6KCk9Pkp0LGNvbXBhY3Q6KCk9PlNyLGNvbXBvc2U6KCk9Pk50LGNvbnN0YW50OigpPT5ZLGNvbnRhaW5zOigpPT50cixjb3VudEJ5OigpPT5kcixjcmVhdGU6KCk9PlZuLGRlYm91bmNlOigpPT5NdCxkZWZhdWx0OigpPT5QcixkZWZhdWx0czooKT0+Um4sZGVmZXI6KCk9PkV0LGRlbGF5OigpPT5PdCxkZXRlY3Q6KCk9Pkx0LGRpZmZlcmVuY2U6KCk9PkVyLGRyb3A6KCk9PkFyLGVhY2g6KCk9PiR0LGVzY2FwZTooKT0+aXQsZXZlcnk6KCk9Plp0LGV4dGVuZDooKT0+Tm4sZXh0ZW5kT3duOigpPT5EbixmaWx0ZXI6KCk9Plh0LGZpbmQ6KCk9Pkx0LGZpbmRJbmRleDooKT0+cXQsZmluZEtleTooKT0+VnQsZmluZExhc3RJbmRleDooKT0+enQsZmluZFdoZXJlOigpPT5DdCxmaXJzdDooKT0+eHIsZmxhdHRlbjooKT0+T3IsZm9sZGw6KCk9Pkh0LGZvbGRyOigpPT5RdCxmb3JFYWNoOigpPT4kdCxmdW5jdGlvbnM6KCk9PkJuLGdldDooKT0+VW4sZ3JvdXBCeTooKT0+aHIsaGFzOigpPT5LbixoZWFkOigpPT54cixpZGVudGl0eTooKT0+TG4saW5jbHVkZTooKT0+dHIsaW5jbHVkZXM6KCk9PnRyLGluZGV4Qnk6KCk9PnZyLGluZGV4T2Y6KCk9PlV0LGluaXRpYWw6KCk9PmpyLGluamVjdDooKT0+SHQsaW50ZXJzZWN0aW9uOigpPT5JcixpbnZlcnQ6KCk9Pk1uLGludm9rZTooKT0+cnIsaXNBcmd1bWVudHM6KCk9PkgsaXNBcnJheTooKT0+JCxpc0FycmF5QnVmZmVyOigpPT5GLGlzQm9vbGVhbjooKT0+ayxpc0RhdGFWaWV3OigpPT5DLGlzRGF0ZTooKT0+RCxpc0VsZW1lbnQ6KCk9Pk0saXNFbXB0eTooKT0+Zm4saXNFcXVhbDooKT0+dm4saXNFcnJvcjooKT0+VCxpc0Zpbml0ZTooKT0+USxpc0Z1bmN0aW9uOigpPT5XLGlzTWFwOigpPT5Bbixpc01hdGNoOigpPT5sbixpc05hTjooKT0+WCxpc051bGw6KCk9Pk8saXNOdW1iZXI6KCk9Pk4saXNPYmplY3Q6KCk9PlMsaXNSZWdFeHA6KCk9PlIsaXNTZXQ6KCk9PlNuLGlzU3RyaW5nOigpPT5JLGlzU3ltYm9sOigpPT5WLGlzVHlwZWRBcnJheTooKT0+dW4saXNVbmRlZmluZWQ6KCk9PkUsaXNXZWFrTWFwOigpPT5fbixpc1dlYWtTZXQ6KCk9Pk9uLGl0ZXJhdGVlOigpPT5IbixrZXlzOigpPT5jbixsYXN0OigpPT5fcixsYXN0SW5kZXhPZjooKT0+S3QsbWFwOigpPT5KdCxtYXBPYmplY3Q6KCk9PlhuLG1hdGNoZXI6KCk9PkNuLG1hdGNoZXM6KCk9PkNuLG1heDooKT0+aXIsbWVtb2l6ZTooKT0+U3QsbWV0aG9kczooKT0+Qm4sbWluOigpPT5vcixtaXhpbjooKT0+cXIsbmVnYXRlOigpPT5JdCxub29wOigpPT5Zbixub3c6KCk9PnJ0LG9iamVjdDooKT0+UnIsb21pdDooKT0+d3Isb25jZTooKT0+VHQscGFpcnM6KCk9PmtuLHBhcnRpYWw6KCk9Pnd0LHBhcnRpdGlvbjooKT0+eXIscGljazooKT0+YnIscGx1Y2s6KCk9PmVyLHByb3BlcnR5OigpPT4kbixwcm9wZXJ0eU9mOigpPT5abixyYW5kb206KCk9PnR0LHJhbmdlOigpPT5UcixyZWR1Y2U6KCk9Pkh0LHJlZHVjZVJpZ2h0OigpPT5RdCxyZWplY3Q6KCk9Pll0LHJlc3Q6KCk9PkFyLHJlc3RBcmd1bWVudHM6KCk9Pl8scmVzdWx0OigpPT52dCxzYW1wbGU6KCk9PmZyLHNlbGVjdDooKT0+WHQsc2h1ZmZsZTooKT0+bHIsc2l6ZTooKT0+Z3Isc29tZTooKT0+bnIsc29ydEJ5OigpPT5zcixzb3J0ZWRJbmRleDooKT0+V3QsdGFpbDooKT0+QXIsdGFrZTooKT0+eHIsdGFwOigpPT5xbix0ZW1wbGF0ZTooKT0+aHQsdGVtcGxhdGVTZXR0aW5nczooKT0+YXQsdGhyb3R0bGU6KCk9Pmt0LHRpbWVzOigpPT5udCx0b0FycmF5OigpPT5jcix0b1BhdGg6KCk9PnpuLHRyYW5zcG9zZTooKT0+TnIsdW5lc2NhcGU6KCk9Pm90LHVuaW9uOigpPT5Ccix1bmlxOigpPT5Ncix1bmlxdWU6KCk9Pk1yLHVuaXF1ZUlkOigpPT55dCx1bnppcDooKT0+TnIsdmFsdWVzOigpPT5Fbix3aGVyZTooKT0+dXIsd2l0aG91dDooKT0+a3Isd3JhcDooKT0+QnQsemlwOigpPT5Ecn0pO3ZhciBlPXt9O3IucihlKSxyLmQoZSx7VkVSU0lPTjooKT0+dSxhZnRlcjooKT0+RHQsYWxsOigpPT5adCxhbGxLZXlzOigpPT5kbixhbnk6KCk9Pm5yLGFzc2lnbjooKT0+RG4sYmVmb3JlOigpPT5SdCxiaW5kOigpPT5qdCxiaW5kQWxsOigpPT5fdCxjaGFpbjooKT0+Z3QsY2h1bms6KCk9PlZyLGNsb25lOigpPT5Gbixjb2xsZWN0OigpPT5KdCxjb21wYWN0OigpPT5Tcixjb21wb3NlOigpPT5OdCxjb25zdGFudDooKT0+WSxjb250YWluczooKT0+dHIsY291bnRCeTooKT0+ZHIsY3JlYXRlOigpPT5WbixkZWJvdW5jZTooKT0+TXQsZGVmYXVsdDooKT0+enIsZGVmYXVsdHM6KCk9PlJuLGRlZmVyOigpPT5FdCxkZWxheTooKT0+T3QsZGV0ZWN0OigpPT5MdCxkaWZmZXJlbmNlOigpPT5Fcixkcm9wOigpPT5BcixlYWNoOigpPT4kdCxlc2NhcGU6KCk9Pml0LGV2ZXJ5OigpPT5adCxleHRlbmQ6KCk9Pk5uLGV4dGVuZE93bjooKT0+RG4sZmlsdGVyOigpPT5YdCxmaW5kOigpPT5MdCxmaW5kSW5kZXg6KCk9PnF0LGZpbmRLZXk6KCk9PlZ0LGZpbmRMYXN0SW5kZXg6KCk9Pnp0LGZpbmRXaGVyZTooKT0+Q3QsZmlyc3Q6KCk9PnhyLGZsYXR0ZW46KCk9Pk9yLGZvbGRsOigpPT5IdCxmb2xkcjooKT0+UXQsZm9yRWFjaDooKT0+JHQsZnVuY3Rpb25zOigpPT5CbixnZXQ6KCk9PlVuLGdyb3VwQnk6KCk9PmhyLGhhczooKT0+S24saGVhZDooKT0+eHIsaWRlbnRpdHk6KCk9PkxuLGluY2x1ZGU6KCk9PnRyLGluY2x1ZGVzOigpPT50cixpbmRleEJ5OigpPT52cixpbmRleE9mOigpPT5VdCxpbml0aWFsOigpPT5qcixpbmplY3Q6KCk9Pkh0LGludGVyc2VjdGlvbjooKT0+SXIsCmludmVydDooKT0+TW4saW52b2tlOigpPT5ycixpc0FyZ3VtZW50czooKT0+SCxpc0FycmF5OigpPT4kLGlzQXJyYXlCdWZmZXI6KCk9PkYsaXNCb29sZWFuOigpPT5rLGlzRGF0YVZpZXc6KCk9PkMsaXNEYXRlOigpPT5ELGlzRWxlbWVudDooKT0+TSxpc0VtcHR5OigpPT5mbixpc0VxdWFsOigpPT52bixpc0Vycm9yOigpPT5ULGlzRmluaXRlOigpPT5RLGlzRnVuY3Rpb246KCk9PlcsaXNNYXA6KCk9PkFuLGlzTWF0Y2g6KCk9PmxuLGlzTmFOOigpPT5YLGlzTnVsbDooKT0+Tyxpc051bWJlcjooKT0+Tixpc09iamVjdDooKT0+Uyxpc1JlZ0V4cDooKT0+Uixpc1NldDooKT0+U24saXNTdHJpbmc6KCk9PkksaXNTeW1ib2w6KCk9PlYsaXNUeXBlZEFycmF5OigpPT51bixpc1VuZGVmaW5lZDooKT0+RSxpc1dlYWtNYXA6KCk9Pl9uLGlzV2Vha1NldDooKT0+T24saXRlcmF0ZWU6KCk9PkhuLGtleXM6KCk9PmNuLGxhc3Q6KCk9Pl9yLGxhc3RJbmRleE9mOigpPT5LdCxtYXA6KCk9Pkp0LG1hcE9iamVjdDooKT0+WG4sbWF0Y2hlcjooKT0+Q24sbWF0Y2hlczooKT0+Q24sbWF4OigpPT5pcixtZW1vaXplOigpPT5TdCxtZXRob2RzOigpPT5CbixtaW46KCk9Pm9yLG1peGluOigpPT5xcixuZWdhdGU6KCk9Pkl0LG5vb3A6KCk9PlluLG5vdzooKT0+cnQsb2JqZWN0OigpPT5ScixvbWl0OigpPT53cixvbmNlOigpPT5UdCxwYWlyczooKT0+a24scGFydGlhbDooKT0+d3QscGFydGl0aW9uOigpPT55cixwaWNrOigpPT5icixwbHVjazooKT0+ZXIscHJvcGVydHk6KCk9PiRuLHByb3BlcnR5T2Y6KCk9PlpuLHJhbmRvbTooKT0+dHQscmFuZ2U6KCk9PlRyLHJlZHVjZTooKT0+SHQscmVkdWNlUmlnaHQ6KCk9PlF0LHJlamVjdDooKT0+WXQscmVzdDooKT0+QXIscmVzdEFyZ3VtZW50czooKT0+XyxyZXN1bHQ6KCk9PnZ0LHNhbXBsZTooKT0+ZnIsc2VsZWN0OigpPT5YdCxzaHVmZmxlOigpPT5scixzaXplOigpPT5ncixzb21lOigpPT5ucixzb3J0Qnk6KCk9PnNyLHNvcnRlZEluZGV4OigpPT5XdCx0YWlsOigpPT5Bcix0YWtlOigpPT54cix0YXA6KCk9PnFuLHRlbXBsYXRlOigpPT5odCx0ZW1wbGF0ZVNldHRpbmdzOigpPT5hdCx0aHJvdHRsZTooKT0+a3QsdGltZXM6KCk9Pm50LHRvQXJyYXk6KCk9PmNyLHRvUGF0aDooKT0+em4sdHJhbnNwb3NlOigpPT5Ocix1bmVzY2FwZTooKT0+b3QsdW5pb246KCk9PkJyLHVuaXE6KCk9Pk1yLHVuaXF1ZTooKT0+TXIsdW5pcXVlSWQ6KCk9Pnl0LHVuemlwOigpPT5Ocix2YWx1ZXM6KCk9PkVuLHdoZXJlOigpPT51cix3aXRob3V0OigpPT5rcix3cmFwOigpPT5CdCx6aXA6KCk9PkRyfSk7dmFyIHU9IjEuMTMuOCIsaT0ib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYuc2VsZj09PXNlbGYmJnNlbGZ8fCJvYmplY3QiPT10eXBlb2Ygci5nJiZyLmcuZ2xvYmFsPT09ci5nJiZyLmd8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl8fHt9LG89QXJyYXkucHJvdG90eXBlLGE9T2JqZWN0LnByb3RvdHlwZSxjPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sP1N5bWJvbC5wcm90b3R5cGU6bnVsbCxmPW8ucHVzaCxsPW8uc2xpY2Uscz1hLnRvU3RyaW5nLHA9YS5oYXNPd25Qcm9wZXJ0eSxoPSJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXIsdj0idW5kZWZpbmVkIiE9dHlwZW9mIERhdGFWaWV3LGQ9QXJyYXkuaXNBcnJheSx5PU9iamVjdC5rZXlzLGc9T2JqZWN0LmNyZWF0ZSxtPWgmJkFycmF5QnVmZmVyLmlzVmlldyxiPWlzTmFOLHc9aXNGaW5pdGUsaj0he3RvU3RyaW5nOm51bGx9LnByb3BlcnR5SXNFbnVtZXJhYmxlKCJ0b1N0cmluZyIpLHg9WyJ2YWx1ZU9mIiwiaXNQcm90b3R5cGVPZiIsInRvU3RyaW5nIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJoYXNPd25Qcm9wZXJ0eSIsInRvTG9jYWxlU3RyaW5nIl0sQT1NYXRoLnBvdygyLDUzKS0xO2Z1bmN0aW9uIF8obix0KXtyZXR1cm4gdD1udWxsPT10P24ubGVuZ3RoLTE6K3QsZnVuY3Rpb24oKXtmb3IodmFyIHI9TWF0aC5tYXgoYXJndW1lbnRzLmxlbmd0aC10LDApLGU9QXJyYXkociksdT0wO3U8cjt1KyspZVt1XT1hcmd1bWVudHNbdSt0XTtzd2l0Y2godCl7Y2FzZSAwOnJldHVybiBuLmNhbGwodGhpcyxlKTtjYXNlIDE6cmV0dXJuIG4uY2FsbCh0aGlzLGFyZ3VtZW50c1swXSxlKTtjYXNlIDI6cmV0dXJuIG4uY2FsbCh0aGlzLGFyZ3VtZW50c1swXSxhcmd1bWVudHNbMV0sZSl9dmFyIGk9QXJyYXkodCsxKTtmb3IodT0wO3U8dDt1KyspaVt1XT1hcmd1bWVudHNbdV07cmV0dXJuIGlbdF09ZSxuLmFwcGx5KHRoaXMsaSl9fWZ1bmN0aW9uIFMobil7dmFyIHQ9dHlwZW9mIG47cmV0dXJuImZ1bmN0aW9uIj09PXR8fCJvYmplY3QiPT09dCYmISFufWZ1bmN0aW9uIE8obil7cmV0dXJuIG51bGw9PT1ufWZ1bmN0aW9uIEUobil7cmV0dXJuIHZvaWQgMD09PW59ZnVuY3Rpb24gayhuKXtyZXR1cm4hMD09PW58fCExPT09bnx8IltvYmplY3QgQm9vbGVhbl0iPT09cy5jYWxsKG4pfWZ1bmN0aW9uIE0obil7cmV0dXJuISghbnx8MSE9PW4ubm9kZVR5cGUpfWZ1bmN0aW9uIEIobil7dmFyIHQ9IltvYmplY3QgIituKyJdIjtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIHMuY2FsbChuKT09PXR9fWNvbnN0IEk9QigiU3RyaW5nIiksTj1CKCJOdW1iZXIiKSxEPUIoIkRhdGUiKSxSPUIoIlJlZ0V4cCIpLFQ9QigiRXJyb3IiKSxWPUIoIlN5bWJvbCIpLEY9QigiQXJyYXlCdWZmZXIiKTt2YXIgcT1CKCJGdW5jdGlvbiIpLHo9aS5kb2N1bWVudCYmaS5kb2N1bWVudC5jaGlsZE5vZGVzOyJvYmplY3QiIT10eXBlb2YgSW50OEFycmF5JiYiZnVuY3Rpb24iIT10eXBlb2YgeiYmKHE9ZnVuY3Rpb24obil7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIG58fCExfSk7Y29uc3QgVz1xLFA9QigiT2JqZWN0Iik7dmFyIFU9diYmKCEvXFtuYXRpdmUgY29kZVxdLy50ZXN0KFN0cmluZyhEYXRhVmlldykpfHxQKG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSksSz0idW5kZWZpbmVkIiE9dHlwZW9mIE1hcCYmUChuZXcgTWFwKSxMPUIoIkRhdGFWaWV3Iik7Y29uc3QgQz1VP2Z1bmN0aW9uKG4pewpyZXR1cm4gbnVsbCE9biYmVyhuLmdldEludDgpJiZGKG4uYnVmZmVyKX06TCwkPWR8fEIoIkFycmF5Iik7ZnVuY3Rpb24gSihuLHQpe3JldHVybiBudWxsIT1uJiZwLmNhbGwobix0KX12YXIgRz1CKCJBcmd1bWVudHMiKTshZnVuY3Rpb24oKXtHKGFyZ3VtZW50cyl8fChHPWZ1bmN0aW9uKG4pe3JldHVybiBKKG4sImNhbGxlZSIpfSl9KCk7Y29uc3QgSD1HO2Z1bmN0aW9uIFEobil7cmV0dXJuIVYobikmJncobikmJiFpc05hTihwYXJzZUZsb2F0KG4pKX1mdW5jdGlvbiBYKG4pe3JldHVybiBOKG4pJiZiKG4pfWZ1bmN0aW9uIFkobil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG59fWZ1bmN0aW9uIFoobil7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciByPW4odCk7cmV0dXJuIm51bWJlciI9PXR5cGVvZiByJiZyPj0wJiZyPD1BfX1mdW5jdGlvbiBubihuKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbbl19fWNvbnN0IHRuPW5uKCJieXRlTGVuZ3RoIikscm49Wih0bik7dmFyIGVuPS9cW29iamVjdCAoKEl8VWkpbnQoOHwxNnwzMil8RmxvYXQoMzJ8NjQpfFVpbnQ4Q2xhbXBlZHxCaWcoSXxVaSludDY0KUFycmF5XF0vO2NvbnN0IHVuPWg/ZnVuY3Rpb24obil7cmV0dXJuIG0/bShuKSYmIUMobik6cm4obikmJmVuLnRlc3Qocy5jYWxsKG4pKX06WSghMSksb249bm4oImxlbmd0aCIpO2Z1bmN0aW9uIGFuKG4sdCl7dD1mdW5jdGlvbihuKXtmb3IodmFyIHQ9e30scj1uLmxlbmd0aCxlPTA7ZTxyOysrZSl0W25bZV1dPSEwO3JldHVybntjb250YWluczpmdW5jdGlvbihuKXtyZXR1cm4hMD09PXRbbl19LHB1c2g6ZnVuY3Rpb24ocil7cmV0dXJuIHRbcl09ITAsbi5wdXNoKHIpfX19KHQpO3ZhciByPXgubGVuZ3RoLGU9bi5jb25zdHJ1Y3Rvcix1PVcoZSkmJmUucHJvdG90eXBlfHxhLGk9ImNvbnN0cnVjdG9yIjtmb3IoSihuLGkpJiYhdC5jb250YWlucyhpKSYmdC5wdXNoKGkpO3ItLTspKGk9eFtyXSlpbiBuJiZuW2ldIT09dVtpXSYmIXQuY29udGFpbnMoaSkmJnQucHVzaChpKX1mdW5jdGlvbiBjbihuKXtpZighUyhuKSlyZXR1cm5bXTtpZih5KXJldHVybiB5KG4pO3ZhciB0PVtdO2Zvcih2YXIgciBpbiBuKUoobixyKSYmdC5wdXNoKHIpO3JldHVybiBqJiZhbihuLHQpLHR9ZnVuY3Rpb24gZm4obil7aWYobnVsbD09bilyZXR1cm4hMDt2YXIgdD1vbihuKTtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJigkKG4pfHxJKG4pfHxIKG4pKT8wPT09dDowPT09b24oY24obikpfWZ1bmN0aW9uIGxuKG4sdCl7dmFyIHI9Y24odCksZT1yLmxlbmd0aDtpZihudWxsPT1uKXJldHVybiFlO2Zvcih2YXIgdT1PYmplY3QobiksaT0wO2k8ZTtpKyspe3ZhciBvPXJbaV07aWYodFtvXSE9PXVbb118fCEobyBpbiB1KSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBzbihuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIHNuP246dGhpcyBpbnN0YW5jZW9mIHNuP3ZvaWQodGhpcy5fd3JhcHBlZD1uKTpuZXcgc24obil9ZnVuY3Rpb24gcG4obil7cmV0dXJuIG5ldyBVaW50OEFycmF5KG4uYnVmZmVyfHxuLG4uYnl0ZU9mZnNldHx8MCx0bihuKSl9c24uVkVSU0lPTj11LHNuLnByb3RvdHlwZS52YWx1ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl93cmFwcGVkfSxzbi5wcm90b3R5cGUudmFsdWVPZj1zbi5wcm90b3R5cGUudG9KU09OPXNuLnByb3RvdHlwZS52YWx1ZSxzbi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKHRoaXMuX3dyYXBwZWQpfTt2YXIgaG49IltvYmplY3QgRGF0YVZpZXddIjtmdW5jdGlvbiB2bihuLHQpe2Zvcih2YXIgcj1be2E6bixiOnR9XSxlPVtdLHU9W107ci5sZW5ndGg7KXt2YXIgaT1yLnBvcCgpO2lmKCEwIT09aSl7aWYoKG49aS5hKT09PSh0PWkuYikpe2lmKDAhPT1ufHwxL249PTEvdCljb250aW51ZTtyZXR1cm4hMX1pZihudWxsPT1ufHxudWxsPT10KXJldHVybiExO2lmKG4hPW4pe2lmKHQhPXQpY29udGludWU7cmV0dXJuITF9dmFyIG89dHlwZW9mIG47aWYoImZ1bmN0aW9uIiE9PW8mJiJvYmplY3QiIT09byYmIm9iamVjdCIhPXR5cGVvZiB0KXJldHVybiExO24gaW5zdGFuY2VvZiBzbiYmKG49bi5fd3JhcHBlZCksdCBpbnN0YW5jZW9mIHNuJiYodD10Ll93cmFwcGVkKTt2YXIgYT1zLmNhbGwobik7aWYoYSE9PXMuY2FsbCh0KSlyZXR1cm4hMTtpZihVJiYiW29iamVjdCBPYmplY3RdIj09YSYmQyhuKSl7aWYoIUModCkpcmV0dXJuITE7YT1obn1zd2l0Y2goYSl7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjppZigiIituPT0iIit0KWNvbnRpbnVlO3JldHVybiExO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpyLnB1c2goe2E6K24sYjordH0pO2NvbnRpbnVlO2Nhc2UiW29iamVjdCBEYXRlXSI6Y2FzZSJbb2JqZWN0IEJvb2xlYW5dIjppZigrbj09K3QpY29udGludWU7cmV0dXJuITE7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOmlmKGMudmFsdWVPZi5jYWxsKG4pPT09Yy52YWx1ZU9mLmNhbGwodCkpY29udGludWU7cmV0dXJuITE7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6Y2FzZSBobjpyLnB1c2goe2E6cG4obiksYjpwbih0KX0pO2NvbnRpbnVlfXZhciBmPSJbb2JqZWN0IEFycmF5XSI9PT1hO2lmKCFmJiZ1bihuKSl7aWYodG4obikhPT10bih0KSlyZXR1cm4hMTtpZihuLmJ1ZmZlcj09PXQuYnVmZmVyJiZuLmJ5dGVPZmZzZXQ9PT10LmJ5dGVPZmZzZXQpY29udGludWU7Zj0hMH1pZighZil7aWYoIm9iamVjdCIhPXR5cGVvZiBufHwib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuITE7dmFyIGw9bi5jb25zdHJ1Y3RvcixwPXQuY29uc3RydWN0b3I7aWYobCE9PXAmJiEoVyhsKSYmbCBpbnN0YW5jZW9mIGwmJlcocCkmJnAgaW5zdGFuY2VvZiBwKSYmImNvbnN0cnVjdG9yImluIG4mJiJjb25zdHJ1Y3RvciJpbiB0KXJldHVybiExfWZvcih2YXIgaD1lLmxlbmd0aDtoLS07KWlmKGVbaF09PT1uKXtpZih1W2hdPT09dClicmVhaztyZXR1cm4hMX1pZighKGg+PTApKWlmKGUucHVzaChuKSx1LnB1c2godCksci5wdXNoKCEwKSxmKXtpZigoaD1uLmxlbmd0aCkhPT10Lmxlbmd0aClyZXR1cm4hMQo7Zm9yKDtoLS07KXIucHVzaCh7YTpuW2hdLGI6dFtoXX0pfWVsc2V7dmFyIHYsZD1jbihuKTtpZihoPWQubGVuZ3RoLGNuKHQpLmxlbmd0aCE9PWgpcmV0dXJuITE7Zm9yKDtoLS07KXtpZighSih0LHY9ZFtoXSkpcmV0dXJuITE7ci5wdXNoKHthOm5bdl0sYjp0W3ZdfSl9fX1lbHNlIGUucG9wKCksdS5wb3AoKX1yZXR1cm4hMH1mdW5jdGlvbiBkbihuKXtpZighUyhuKSlyZXR1cm5bXTt2YXIgdD1bXTtmb3IodmFyIHIgaW4gbil0LnB1c2gocik7cmV0dXJuIGomJmFuKG4sdCksdH1mdW5jdGlvbiB5bihuKXt2YXIgdD1vbihuKTtyZXR1cm4gZnVuY3Rpb24ocil7aWYobnVsbD09cilyZXR1cm4hMTt2YXIgZT1kbihyKTtpZihvbihlKSlyZXR1cm4hMTtmb3IodmFyIHU9MDt1PHQ7dSsrKWlmKCFXKHJbblt1XV0pKXJldHVybiExO3JldHVybiBuIT09am58fCFXKHJbZ25dKX19dmFyIGduPSJmb3JFYWNoIixtbj1bImNsZWFyIiwiZGVsZXRlIl0sYm49WyJnZXQiLCJoYXMiLCJzZXQiXSx3bj1tbi5jb25jYXQoZ24sYm4pLGpuPW1uLmNvbmNhdChibikseG49WyJhZGQiXS5jb25jYXQobW4sZ24sImhhcyIpO2NvbnN0IEFuPUs/eW4od24pOkIoIk1hcCIpLF9uPUs/eW4oam4pOkIoIldlYWtNYXAiKSxTbj1LP3luKHhuKTpCKCJTZXQiKSxPbj1CKCJXZWFrU2V0Iik7ZnVuY3Rpb24gRW4obil7Zm9yKHZhciB0PWNuKG4pLHI9dC5sZW5ndGgsZT1BcnJheShyKSx1PTA7dTxyO3UrKyllW3VdPW5bdFt1XV07cmV0dXJuIGV9ZnVuY3Rpb24ga24obil7Zm9yKHZhciB0PWNuKG4pLHI9dC5sZW5ndGgsZT1BcnJheShyKSx1PTA7dTxyO3UrKyllW3VdPVt0W3VdLG5bdFt1XV1dO3JldHVybiBlfWZ1bmN0aW9uIE1uKG4pe2Zvcih2YXIgdD17fSxyPWNuKG4pLGU9MCx1PXIubGVuZ3RoO2U8dTtlKyspdFtuW3JbZV1dXT1yW2VdO3JldHVybiB0fWZ1bmN0aW9uIEJuKG4pe3ZhciB0PVtdO2Zvcih2YXIgciBpbiBuKVcobltyXSkmJnQucHVzaChyKTtyZXR1cm4gdC5zb3J0KCl9ZnVuY3Rpb24gSW4obix0KXtyZXR1cm4gZnVuY3Rpb24ocil7dmFyIGU9YXJndW1lbnRzLmxlbmd0aDtpZih0JiYocj1PYmplY3QocikpLGU8Mnx8bnVsbD09cilyZXR1cm4gcjtmb3IodmFyIHU9MTt1PGU7dSsrKWZvcih2YXIgaT1hcmd1bWVudHNbdV0sbz1uKGkpLGE9by5sZW5ndGgsYz0wO2M8YTtjKyspe3ZhciBmPW9bY107dCYmdm9pZCAwIT09cltmXXx8KHJbZl09aVtmXSl9cmV0dXJuIHJ9fWNvbnN0IE5uPUluKGRuKSxEbj1JbihjbiksUm49SW4oZG4sITApO2Z1bmN0aW9uIFRuKG4pe2lmKCFTKG4pKXJldHVybnt9O2lmKGcpcmV0dXJuIGcobik7dmFyIHQ9ZnVuY3Rpb24oKXt9O3QucHJvdG90eXBlPW47dmFyIHI9bmV3IHQ7cmV0dXJuIHQucHJvdG90eXBlPW51bGwscn1mdW5jdGlvbiBWbihuLHQpe3ZhciByPVRuKG4pO3JldHVybiB0JiZEbihyLHQpLHJ9ZnVuY3Rpb24gRm4obil7cmV0dXJuIFMobik/JChuKT9uLnNsaWNlKCk6Tm4oe30sbik6bn1mdW5jdGlvbiBxbihuLHQpe3JldHVybiB0KG4pLG59ZnVuY3Rpb24gem4obil7cmV0dXJuICQobik/bjpbbl19ZnVuY3Rpb24gV24obil7cmV0dXJuIHNuLnRvUGF0aChuKX1mdW5jdGlvbiBQbihuLHQpe2Zvcih2YXIgcj10Lmxlbmd0aCxlPTA7ZTxyO2UrKyl7aWYobnVsbD09bilyZXR1cm47bj1uW3RbZV1dfXJldHVybiByP246dm9pZCAwfWZ1bmN0aW9uIFVuKG4sdCxyKXt2YXIgZT1QbihuLFduKHQpKTtyZXR1cm4gRShlKT9yOmV9ZnVuY3Rpb24gS24obix0KXtmb3IodmFyIHI9KHQ9V24odCkpLmxlbmd0aCxlPTA7ZTxyO2UrKyl7dmFyIHU9dFtlXTtpZighSihuLHUpKXJldHVybiExO249blt1XX1yZXR1cm4hIXJ9ZnVuY3Rpb24gTG4obil7cmV0dXJuIG59ZnVuY3Rpb24gQ24obil7cmV0dXJuIG49RG4oe30sbiksZnVuY3Rpb24odCl7cmV0dXJuIGxuKHQsbil9fWZ1bmN0aW9uICRuKG4pe3JldHVybiBuPVduKG4pLGZ1bmN0aW9uKHQpe3JldHVybiBQbih0LG4pfX1mdW5jdGlvbiBKbihuLHQscil7aWYodm9pZCAwPT09dClyZXR1cm4gbjtzd2l0Y2gocj8/Myl7Y2FzZSAxOnJldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gbi5jYWxsKHQscil9O2Nhc2UgMzpyZXR1cm4gZnVuY3Rpb24ocixlLHUpe3JldHVybiBuLmNhbGwodCxyLGUsdSl9O2Nhc2UgNDpyZXR1cm4gZnVuY3Rpb24ocixlLHUsaSl7cmV0dXJuIG4uY2FsbCh0LHIsZSx1LGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbi5hcHBseSh0LGFyZ3VtZW50cyl9fWZ1bmN0aW9uIEduKG4sdCxyKXtyZXR1cm4gbnVsbD09bj9MbjpXKG4pP0puKG4sdCxyKTpTKG4pJiYhJChuKT9DbihuKTokbihuKX1mdW5jdGlvbiBIbihuLHQpe3JldHVybiBHbihuLHQsMS8wKX1mdW5jdGlvbiBRbihuLHQscil7cmV0dXJuIHNuLml0ZXJhdGVlIT09SG4/c24uaXRlcmF0ZWUobix0KTpHbihuLHQscil9ZnVuY3Rpb24gWG4obix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9Y24obiksdT1lLmxlbmd0aCxpPXt9LG89MDtvPHU7bysrKXt2YXIgYT1lW29dO2lbYV09dChuW2FdLGEsbil9cmV0dXJuIGl9ZnVuY3Rpb24gWW4oKXt9ZnVuY3Rpb24gWm4obil7cmV0dXJuIG51bGw9PW4/WW46ZnVuY3Rpb24odCl7cmV0dXJuIFVuKG4sdCl9fWZ1bmN0aW9uIG50KG4sdCxyKXt2YXIgZT1BcnJheShNYXRoLm1heCgwLG4pKTt0PUpuKHQsciwxKTtmb3IodmFyIHU9MDt1PG47dSsrKWVbdV09dCh1KTtyZXR1cm4gZX1mdW5jdGlvbiB0dChuLHQpe3JldHVybiBudWxsPT10JiYodD1uLG49MCksbitNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqKHQtbisxKSl9c24udG9QYXRoPXpuLHNuLml0ZXJhdGVlPUhuO2NvbnN0IHJ0PURhdGUubm93fHxmdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfTtmdW5jdGlvbiBldChuKXt2YXIgdD1mdW5jdGlvbih0KXtyZXR1cm4gblt0XX0scj0iKD86IitjbihuKS5qb2luKCJ8IikrIikiLGU9UmVnRXhwKHIpLHU9UmVnRXhwKHIsImciKTtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIG49bnVsbD09bj8iIjoiIituLGUudGVzdChuKT9uLnJlcGxhY2UodSx0KTpufX1jb25zdCB1dD17IiYiOiImYW1wOyIsCiI8IjoiJmx0OyIsIj4iOiImZ3Q7IiwnIic6IiZxdW90OyIsIiciOiImI3gyNzsiLCJgIjoiJiN4NjA7In0saXQ9ZXQodXQpLG90PWV0KE1uKHV0KSksYXQ9c24udGVtcGxhdGVTZXR0aW5ncz17ZXZhbHVhdGU6LzwlKFtcc1xTXSs/KSU+L2csaW50ZXJwb2xhdGU6LzwlPShbXHNcU10rPyklPi9nLGVzY2FwZTovPCUtKFtcc1xTXSs/KSU+L2d9O3ZhciBjdD0vKC4pXi8sZnQ9eyInIjoiJyIsIlxcIjoiXFwiLCJcciI6InIiLCJcbiI6Im4iLCJcdTIwMjgiOiJ1MjAyOCIsIlx1MjAyOSI6InUyMDI5In0sbHQ9L1xcfCd8XHJ8XG58XHUyMDI4fFx1MjAyOS9nO2Z1bmN0aW9uIHN0KG4pe3JldHVybiJcXCIrZnRbbl19dmFyIHB0PS9eXHMqKFx3fFwkKStccyokLztmdW5jdGlvbiBodChuLHQscil7IXQmJnImJih0PXIpLHQ9Um4oe30sdCxzbi50ZW1wbGF0ZVNldHRpbmdzKTt2YXIgZT1SZWdFeHAoWyh0LmVzY2FwZXx8Y3QpLnNvdXJjZSwodC5pbnRlcnBvbGF0ZXx8Y3QpLnNvdXJjZSwodC5ldmFsdWF0ZXx8Y3QpLnNvdXJjZV0uam9pbigifCIpKyJ8JCIsImciKSx1PTAsaT0iX19wKz0nIjtuLnJlcGxhY2UoZSwoZnVuY3Rpb24odCxyLGUsbyxhKXtyZXR1cm4gaSs9bi5zbGljZSh1LGEpLnJlcGxhY2UobHQsc3QpLHU9YSt0Lmxlbmd0aCxyP2krPSInK1xuKChfX3Q9KCIrcisiKSk9PW51bGw/Jyc6Xy5lc2NhcGUoX190KSkrXG4nIjplP2krPSInK1xuKChfX3Q9KCIrZSsiKSk9PW51bGw/Jyc6X190KStcbiciOm8mJihpKz0iJztcbiIrbysiXG5fX3ArPSciKSx0fSkpLGkrPSInO1xuIjt2YXIgbyxhPXQudmFyaWFibGU7aWYoYSl7aWYoIXB0LnRlc3QoYSkpdGhyb3cgbmV3IEVycm9yKCJ2YXJpYWJsZSBpcyBub3QgYSBiYXJlIGlkZW50aWZpZXI6ICIrYSl9ZWxzZSBpPSJ3aXRoKG9ianx8e30pe1xuIitpKyJ9XG4iLGE9Im9iaiI7aT0idmFyIF9fdCxfX3A9JycsX19qPUFycmF5LnByb3RvdHlwZS5qb2luLHByaW50PWZ1bmN0aW9uKCl7X19wKz1fX2ouY2FsbChhcmd1bWVudHMsJycpO307XG4iK2krInJldHVybiBfX3A7XG4iO3RyeXtvPW5ldyBGdW5jdGlvbihhLCJfIixpKX1jYXRjaChuKXt0aHJvdyBuLnNvdXJjZT1pLG59dmFyIGM9ZnVuY3Rpb24obil7cmV0dXJuIG8uY2FsbCh0aGlzLG4sc24pfTtyZXR1cm4gYy5zb3VyY2U9ImZ1bmN0aW9uKCIrYSsiKXtcbiIraSsifSIsY31mdW5jdGlvbiB2dChuLHQscil7dmFyIGU9KHQ9V24odCkpLmxlbmd0aDtpZighZSlyZXR1cm4gVyhyKT9yLmNhbGwobik6cjtmb3IodmFyIHU9MDt1PGU7dSsrKXt2YXIgaT1udWxsPT1uP3ZvaWQgMDpuW3RbdV1dO3ZvaWQgMD09PWkmJihpPXIsdT1lKSxuPVcoaSk/aS5jYWxsKG4pOml9cmV0dXJuIG59dmFyIGR0PTA7ZnVuY3Rpb24geXQobil7dmFyIHQ9KytkdCsiIjtyZXR1cm4gbj9uK3Q6dH1mdW5jdGlvbiBndChuKXt2YXIgdD1zbihuKTtyZXR1cm4gdC5fY2hhaW49ITAsdH1mdW5jdGlvbiBtdChuLHQscixlLHUpe2lmKCEoZSBpbnN0YW5jZW9mIHQpKXJldHVybiBuLmFwcGx5KHIsdSk7dmFyIGk9VG4obi5wcm90b3R5cGUpLG89bi5hcHBseShpLHUpO3JldHVybiBTKG8pP286aX12YXIgYnQ9XygoZnVuY3Rpb24obix0KXt2YXIgcj1idC5wbGFjZWhvbGRlcixlPWZ1bmN0aW9uKCl7Zm9yKHZhciB1PTAsaT10Lmxlbmd0aCxvPUFycmF5KGkpLGE9MDthPGk7YSsrKW9bYV09dFthXT09PXI/YXJndW1lbnRzW3UrK106dFthXTtmb3IoO3U8YXJndW1lbnRzLmxlbmd0aDspby5wdXNoKGFyZ3VtZW50c1t1KytdKTtyZXR1cm4gbXQobixlLHRoaXMsdGhpcyxvKX07cmV0dXJuIGV9KSk7YnQucGxhY2Vob2xkZXI9c247Y29uc3Qgd3Q9YnQsanQ9XygoZnVuY3Rpb24obix0LHIpe2lmKCFXKG4pKXRocm93IG5ldyBUeXBlRXJyb3IoIkJpbmQgbXVzdCBiZSBjYWxsZWQgb24gYSBmdW5jdGlvbiIpO3ZhciBlPV8oKGZ1bmN0aW9uKHUpe3JldHVybiBtdChuLGUsdCx0aGlzLHIuY29uY2F0KHUpKX0pKTtyZXR1cm4gZX0pKSx4dD1aKG9uKTtmdW5jdGlvbiBBdChuLHQscil7dHx8MD09PXR8fCh0PTEvMCk7Zm9yKHZhciBlPVtdLHU9MCxpPTAsbz1vbihuKXx8MCxhPVtdOzspaWYoaT49byl7aWYoIWEubGVuZ3RoKWJyZWFrO3ZhciBjPWEucG9wKCk7aT1jLmksbj1jLnYsbz1vbihuKX1lbHNle3ZhciBmPW5baSsrXTthLmxlbmd0aD49dD9lW3UrK109Zjp4dChmKSYmKCQoZil8fEgoZikpPyhhLnB1c2goe2ksdjpufSksaT0wLG89b24obj1mKSk6cnx8KGVbdSsrXT1mKX1yZXR1cm4gZX1jb25zdCBfdD1fKChmdW5jdGlvbihuLHQpe3ZhciByPSh0PUF0KHQsITEsITEpKS5sZW5ndGg7aWYocjwxKXRocm93IG5ldyBFcnJvcigiYmluZEFsbCBtdXN0IGJlIHBhc3NlZCBmdW5jdGlvbiBuYW1lcyIpO2Zvcig7ci0tOyl7dmFyIGU9dFtyXTtuW2VdPWp0KG5bZV0sbil9cmV0dXJuIG59KSk7ZnVuY3Rpb24gU3Qobix0KXt2YXIgcj1mdW5jdGlvbihlKXt2YXIgdT1yLmNhY2hlLGk9IiIrKHQ/dC5hcHBseSh0aGlzLGFyZ3VtZW50cyk6ZSk7cmV0dXJuIEoodSxpKXx8KHVbaV09bi5hcHBseSh0aGlzLGFyZ3VtZW50cykpLHVbaV19O3JldHVybiByLmNhY2hlPXt9LHJ9Y29uc3QgT3Q9XygoZnVuY3Rpb24obix0LHIpe3JldHVybiBzZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiBuLmFwcGx5KG51bGwscil9KSx0KX0pKSxFdD13dChPdCxzbiwxKTtmdW5jdGlvbiBrdChuLHQscil7dmFyIGUsdSxpLG8sYT0wO3J8fChyPXt9KTt2YXIgYz1mdW5jdGlvbigpe2E9ITE9PT1yLmxlYWRpbmc/MDpydCgpLGU9bnVsbCxvPW4uYXBwbHkodSxpKSxlfHwodT1pPW51bGwpfSxmPWZ1bmN0aW9uKCl7dmFyIGY9cnQoKTthfHwhMSE9PXIubGVhZGluZ3x8KGE9Zik7dmFyIGw9dC0oZi1hKTtyZXR1cm4gdT10aGlzLGk9YXJndW1lbnRzLGw8PTB8fGw+dD8oZSYmKGNsZWFyVGltZW91dChlKSxlPW51bGwpLGE9ZixvPW4uYXBwbHkodSxpKSxlfHwodT1pPW51bGwpKTplfHwhMT09PXIudHJhaWxpbmd8fChlPXNldFRpbWVvdXQoYyxsKSksb307cmV0dXJuIGYuY2FuY2VsPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGUpLGE9MCxlPXU9aT1udWxsfSxmfQpmdW5jdGlvbiBNdChuLHQscil7dmFyIGUsdSxpLG8sYSxjPWZ1bmN0aW9uKCl7dmFyIGY9cnQoKS11O3Q+Zj9lPXNldFRpbWVvdXQoYyx0LWYpOihlPW51bGwscnx8KG89bi5hcHBseShhLGkpKSxlfHwoaT1hPW51bGwpKX0sZj1fKChmdW5jdGlvbihmKXtyZXR1cm4gYT10aGlzLGk9Zix1PXJ0KCksZXx8KGU9c2V0VGltZW91dChjLHQpLHImJihvPW4uYXBwbHkoYSxpKSkpLG99KSk7cmV0dXJuIGYuY2FuY2VsPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGUpLGU9aT1hPW51bGx9LGZ9ZnVuY3Rpb24gQnQobix0KXtyZXR1cm4gd3QodCxuKX1mdW5jdGlvbiBJdChuKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4hbi5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIE50KCl7dmFyIG49YXJndW1lbnRzLHQ9bi5sZW5ndGgtMTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHI9dCxlPW5bdF0uYXBwbHkodGhpcyxhcmd1bWVudHMpO3ItLTspZT1uW3JdLmNhbGwodGhpcyxlKTtyZXR1cm4gZX19ZnVuY3Rpb24gRHQobix0KXtyZXR1cm4gZnVuY3Rpb24oKXtpZigtLW48MSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIFJ0KG4sdCl7dmFyIHI7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuLS1uPjAmJihyPXQuYXBwbHkodGhpcyxhcmd1bWVudHMpKSxuPD0xJiYodD1udWxsKSxyfX1jb25zdCBUdD13dChSdCwyKTtmdW5jdGlvbiBWdChuLHQscil7dD1Rbih0LHIpO2Zvcih2YXIgZSx1PWNuKG4pLGk9MCxvPXUubGVuZ3RoO2k8bztpKyspaWYodChuW2U9dVtpXV0sZSxuKSlyZXR1cm4gZX1mdW5jdGlvbiBGdChuKXtyZXR1cm4gZnVuY3Rpb24odCxyLGUpe3I9UW4ocixlKTtmb3IodmFyIHU9b24odCksaT1uPjA/MDp1LTE7aT49MCYmaTx1O2krPW4paWYocih0W2ldLGksdCkpcmV0dXJuIGk7cmV0dXJuLTF9fWNvbnN0IHF0PUZ0KDEpLHp0PUZ0KC0xKTtmdW5jdGlvbiBXdChuLHQscixlKXtmb3IodmFyIHU9KHI9UW4ocixlLDEpKSh0KSxpPTAsbz1vbihuKTtpPG87KXt2YXIgYT1NYXRoLmZsb29yKChpK28pLzIpO3IoblthXSk8dT9pPWErMTpvPWF9cmV0dXJuIGl9ZnVuY3Rpb24gUHQobix0LHIpe3JldHVybiBmdW5jdGlvbihlLHUsaSl7dmFyIG89MCxhPW9uKGUpO2lmKCJudW1iZXIiPT10eXBlb2YgaSluPjA/bz1pPj0wP2k6TWF0aC5tYXgoaSthLG8pOmE9aT49MD9NYXRoLm1pbihpKzEsYSk6aSthKzE7ZWxzZSBpZihyJiZpJiZhKXJldHVybiBlW2k9cihlLHUpXT09PXU/aTotMTtpZih1IT11KXJldHVybihpPXQobC5jYWxsKGUsbyxhKSxYKSk+PTA/aStvOi0xO2ZvcihpPW4+MD9vOmEtMTtpPj0wJiZpPGE7aSs9bilpZihlW2ldPT09dSlyZXR1cm4gaTtyZXR1cm4tMX19Y29uc3QgVXQ9UHQoMSxxdCxXdCksS3Q9UHQoLTEsenQpO2Z1bmN0aW9uIEx0KG4sdCxyKXt2YXIgZT0oeHQobik/cXQ6VnQpKG4sdCxyKTtpZih2b2lkIDAhPT1lJiYtMSE9PWUpcmV0dXJuIG5bZV19ZnVuY3Rpb24gQ3Qobix0KXtyZXR1cm4gTHQobixDbih0KSl9ZnVuY3Rpb24gJHQobix0LHIpe3ZhciBlLHU7aWYodD1Kbih0LHIpLHh0KG4pKWZvcihlPTAsdT1uLmxlbmd0aDtlPHU7ZSsrKXQobltlXSxlLG4pO2Vsc2V7dmFyIGk9Y24obik7Zm9yKGU9MCx1PWkubGVuZ3RoO2U8dTtlKyspdChuW2lbZV1dLGlbZV0sbil9cmV0dXJuIG59ZnVuY3Rpb24gSnQobix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9IXh0KG4pJiZjbihuKSx1PShlfHxuKS5sZW5ndGgsaT1BcnJheSh1KSxvPTA7bzx1O28rKyl7dmFyIGE9ZT9lW29dOm87aVtvXT10KG5bYV0sYSxuKX1yZXR1cm4gaX1mdW5jdGlvbiBHdChuKXtyZXR1cm4gZnVuY3Rpb24odCxyLGUsdSl7dmFyIGk9YXJndW1lbnRzLmxlbmd0aD49MztyZXR1cm4gZnVuY3Rpb24odCxyLGUsdSl7dmFyIGk9IXh0KHQpJiZjbih0KSxvPShpfHx0KS5sZW5ndGgsYT1uPjA/MDpvLTE7Zm9yKHV8fChlPXRbaT9pW2FdOmFdLGErPW4pO2E+PTAmJmE8bzthKz1uKXt2YXIgYz1pP2lbYV06YTtlPXIoZSx0W2NdLGMsdCl9cmV0dXJuIGV9KHQsSm4ocix1LDQpLGUsaSl9fWNvbnN0IEh0PUd0KDEpLFF0PUd0KC0xKTtmdW5jdGlvbiBYdChuLHQscil7dmFyIGU9W107cmV0dXJuIHQ9UW4odCxyKSwkdChuLChmdW5jdGlvbihuLHIsdSl7dChuLHIsdSkmJmUucHVzaChuKX0pKSxlfWZ1bmN0aW9uIFl0KG4sdCxyKXtyZXR1cm4gWHQobixJdChRbih0KSkscil9ZnVuY3Rpb24gWnQobix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9IXh0KG4pJiZjbihuKSx1PShlfHxuKS5sZW5ndGgsaT0wO2k8dTtpKyspe3ZhciBvPWU/ZVtpXTppO2lmKCF0KG5bb10sbyxuKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBucihuLHQscil7dD1Rbih0LHIpO2Zvcih2YXIgZT0heHQobikmJmNuKG4pLHU9KGV8fG4pLmxlbmd0aCxpPTA7aTx1O2krKyl7dmFyIG89ZT9lW2ldOmk7aWYodChuW29dLG8sbikpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gdHIobix0LHIsZSl7cmV0dXJuIHh0KG4pfHwobj1FbihuKSksKCJudW1iZXIiIT10eXBlb2Ygcnx8ZSkmJihyPTApLFV0KG4sdCxyKT49MH1jb25zdCBycj1fKChmdW5jdGlvbihuLHQscil7dmFyIGUsdTtyZXR1cm4gVyh0KT91PXQ6KHQ9V24odCksZT10LnNsaWNlKDAsLTEpLHQ9dFt0Lmxlbmd0aC0xXSksSnQobiwoZnVuY3Rpb24obil7dmFyIGk9dTtpZighaSl7aWYoZSYmZS5sZW5ndGgmJihuPVBuKG4sZSkpLG51bGw9PW4pcmV0dXJuO2k9blt0XX1yZXR1cm4gbnVsbD09aT9pOmkuYXBwbHkobixyKX0pKX0pKTtmdW5jdGlvbiBlcihuLHQpe3JldHVybiBKdChuLCRuKHQpKX1mdW5jdGlvbiB1cihuLHQpe3JldHVybiBYdChuLENuKHQpKX1mdW5jdGlvbiBpcihuLHQscil7dmFyIGUsdSxpPS0xLzAsbz0tMS8wO2lmKG51bGw9PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmIm9iamVjdCIhPXR5cGVvZiBuWzBdJiZudWxsIT1uKWZvcih2YXIgYT0wLGM9KG49eHQobik/bjpFbihuKSkubGVuZ3RoO2E8YzthKyspbnVsbCE9KGU9blthXSkmJmU+aSYmKGk9ZSk7ZWxzZSB0PVFuKHQsciksJHQobiwoZnVuY3Rpb24obixyLGUpewooKHU9dChuLHIsZSkpPm98fHU9PT0tMS8wJiZpPT09LTEvMCkmJihpPW4sbz11KX0pKTtyZXR1cm4gaX1mdW5jdGlvbiBvcihuLHQscil7dmFyIGUsdSxpPTEvMCxvPTEvMDtpZihudWxsPT10fHwibnVtYmVyIj09dHlwZW9mIHQmJiJvYmplY3QiIT10eXBlb2YgblswXSYmbnVsbCE9bilmb3IodmFyIGE9MCxjPShuPXh0KG4pP246RW4obikpLmxlbmd0aDthPGM7YSsrKW51bGwhPShlPW5bYV0pJiZlPGkmJihpPWUpO2Vsc2UgdD1Rbih0LHIpLCR0KG4sKGZ1bmN0aW9uKG4scixlKXsoKHU9dChuLHIsZSkpPG98fHU9PT0xLzAmJmk9PT0xLzApJiYoaT1uLG89dSl9KSk7cmV0dXJuIGl9dmFyIGFyPS9bXlx1ZDgwMC1cdWRmZmZdfFtcdWQ4MDAtXHVkYmZmXVtcdWRjMDAtXHVkZmZmXXxbXHVkODAwLVx1ZGZmZl0vZztmdW5jdGlvbiBjcihuKXtyZXR1cm4gbj8kKG4pP2wuY2FsbChuKTpJKG4pP24ubWF0Y2goYXIpOnh0KG4pP0p0KG4sTG4pOkVuKG4pOltdfWZ1bmN0aW9uIGZyKG4sdCxyKXtpZihudWxsPT10fHxyKXJldHVybiB4dChuKXx8KG49RW4obikpLG5bdHQobi5sZW5ndGgtMSldO3ZhciBlPWNyKG4pLHU9b24oZSk7dD1NYXRoLm1heChNYXRoLm1pbih0LHUpLDApO2Zvcih2YXIgaT11LTEsbz0wO288dDtvKyspe3ZhciBhPXR0KG8saSksYz1lW29dO2Vbb109ZVthXSxlW2FdPWN9cmV0dXJuIGUuc2xpY2UoMCx0KX1mdW5jdGlvbiBscihuKXtyZXR1cm4gZnIobiwxLzApfWZ1bmN0aW9uIHNyKG4sdCxyKXt2YXIgZT0wO3JldHVybiB0PVFuKHQsciksZXIoSnQobiwoZnVuY3Rpb24obixyLHUpe3JldHVybnt2YWx1ZTpuLGluZGV4OmUrKyxjcml0ZXJpYTp0KG4scix1KX19KSkuc29ydCgoZnVuY3Rpb24obix0KXt2YXIgcj1uLmNyaXRlcmlhLGU9dC5jcml0ZXJpYTtpZihyIT09ZSl7aWYocj5lfHx2b2lkIDA9PT1yKXJldHVybiAxO2lmKHI8ZXx8dm9pZCAwPT09ZSlyZXR1cm4tMX1yZXR1cm4gbi5pbmRleC10LmluZGV4fSkpLCJ2YWx1ZSIpfWZ1bmN0aW9uIHByKG4sdCl7cmV0dXJuIGZ1bmN0aW9uKHIsZSx1KXt2YXIgaT10P1tbXSxbXV06e307cmV0dXJuIGU9UW4oZSx1KSwkdChyLChmdW5jdGlvbih0LHUpe3ZhciBvPWUodCx1LHIpO24oaSx0LG8pfSkpLGl9fWNvbnN0IGhyPXByKChmdW5jdGlvbihuLHQscil7SihuLHIpP25bcl0ucHVzaCh0KTpuW3JdPVt0XX0pKSx2cj1wcigoZnVuY3Rpb24obix0LHIpe25bcl09dH0pKSxkcj1wcigoZnVuY3Rpb24obix0LHIpe0oobixyKT9uW3JdKys6bltyXT0xfSkpLHlyPXByKChmdW5jdGlvbihuLHQscil7bltyPzA6MV0ucHVzaCh0KX0pLCEwKTtmdW5jdGlvbiBncihuKXtyZXR1cm4gbnVsbD09bj8wOnh0KG4pP24ubGVuZ3RoOmNuKG4pLmxlbmd0aH1mdW5jdGlvbiBtcihuLHQscil7cmV0dXJuIHQgaW4gcn1jb25zdCBicj1fKChmdW5jdGlvbihuLHQpe3ZhciByPXt9LGU9dFswXTtpZihudWxsPT1uKXJldHVybiByO1coZSk/KHQubGVuZ3RoPjEmJihlPUpuKGUsdFsxXSkpLHQ9ZG4obikpOihlPW1yLHQ9QXQodCwhMSwhMSksbj1PYmplY3QobikpO2Zvcih2YXIgdT0wLGk9dC5sZW5ndGg7dTxpO3UrKyl7dmFyIG89dFt1XSxhPW5bb107ZShhLG8sbikmJihyW29dPWEpfXJldHVybiByfSkpLHdyPV8oKGZ1bmN0aW9uKG4sdCl7dmFyIHIsZT10WzBdO3JldHVybiBXKGUpPyhlPUl0KGUpLHQubGVuZ3RoPjEmJihyPXRbMV0pKToodD1KdChBdCh0LCExLCExKSxTdHJpbmcpLGU9ZnVuY3Rpb24obixyKXtyZXR1cm4hdHIodCxyKX0pLGJyKG4sZSxyKX0pKTtmdW5jdGlvbiBqcihuLHQscil7cmV0dXJuIGwuY2FsbChuLDAsTWF0aC5tYXgoMCxuLmxlbmd0aC0obnVsbD09dHx8cj8xOnQpKSl9ZnVuY3Rpb24geHIobix0LHIpe3JldHVybiBudWxsPT1ufHxuLmxlbmd0aDwxP251bGw9PXR8fHI/dm9pZCAwOltdOm51bGw9PXR8fHI/blswXTpqcihuLG4ubGVuZ3RoLXQpfWZ1bmN0aW9uIEFyKG4sdCxyKXtyZXR1cm4gbC5jYWxsKG4sbnVsbD09dHx8cj8xOnQpfWZ1bmN0aW9uIF9yKG4sdCxyKXtyZXR1cm4gbnVsbD09bnx8bi5sZW5ndGg8MT9udWxsPT10fHxyP3ZvaWQgMDpbXTpudWxsPT10fHxyP25bbi5sZW5ndGgtMV06QXIobixNYXRoLm1heCgwLG4ubGVuZ3RoLXQpKX1mdW5jdGlvbiBTcihuKXtyZXR1cm4gWHQobixCb29sZWFuKX1mdW5jdGlvbiBPcihuLHQpe3JldHVybiBBdChuLHQsITEpfWNvbnN0IEVyPV8oKGZ1bmN0aW9uKG4sdCl7cmV0dXJuIHQ9QXQodCwhMCwhMCksWHQobiwoZnVuY3Rpb24obil7cmV0dXJuIXRyKHQsbil9KSl9KSksa3I9XygoZnVuY3Rpb24obix0KXtyZXR1cm4gRXIobix0KX0pKTtmdW5jdGlvbiBNcihuLHQscixlKXtrKHQpfHwoZT1yLHI9dCx0PSExKSxudWxsIT1yJiYocj1RbihyLGUpKTtmb3IodmFyIHU9W10saT1bXSxvPTAsYT1vbihuKTtvPGE7bysrKXt2YXIgYz1uW29dLGY9cj9yKGMsbyxuKTpjO3QmJiFyPyhvJiZpPT09Znx8dS5wdXNoKGMpLGk9Zik6cj90cihpLGYpfHwoaS5wdXNoKGYpLHUucHVzaChjKSk6dHIodSxjKXx8dS5wdXNoKGMpfXJldHVybiB1fWNvbnN0IEJyPV8oKGZ1bmN0aW9uKG4pe3JldHVybiBNcihBdChuLCEwLCEwKSl9KSk7ZnVuY3Rpb24gSXIobil7Zm9yKHZhciB0PVtdLHI9YXJndW1lbnRzLmxlbmd0aCxlPTAsdT1vbihuKTtlPHU7ZSsrKXt2YXIgaT1uW2VdO2lmKCF0cih0LGkpKXt2YXIgbztmb3Iobz0xO288ciYmdHIoYXJndW1lbnRzW29dLGkpO28rKyk7bz09PXImJnQucHVzaChpKX19cmV0dXJuIHR9ZnVuY3Rpb24gTnIobil7Zm9yKHZhciB0PW4mJmlyKG4sb24pLmxlbmd0aHx8MCxyPUFycmF5KHQpLGU9MDtlPHQ7ZSsrKXJbZV09ZXIobixlKTtyZXR1cm4gcn1jb25zdCBEcj1fKE5yKTtmdW5jdGlvbiBScihuLHQpe2Zvcih2YXIgcj17fSxlPTAsdT1vbihuKTtlPHU7ZSsrKXQ/cltuW2VdXT10W2VdOnJbbltlXVswXV09bltlXVsxXTtyZXR1cm4gcn1mdW5jdGlvbiBUcihuLHQscil7bnVsbD09dCYmKHQ9bnx8MCxuPTApLHJ8fChyPXQ8bj8tMToxKTtmb3IodmFyIGU9TWF0aC5tYXgoTWF0aC5jZWlsKCh0LW4pL3IpLDApLHU9QXJyYXkoZSksaT0wO2k8ZTtpKyssbis9cil1W2ldPW4KO3JldHVybiB1fWZ1bmN0aW9uIFZyKG4sdCl7aWYobnVsbD09dHx8dDwxKXJldHVybltdO2Zvcih2YXIgcj1bXSxlPTAsdT1uLmxlbmd0aDtlPHU7KXIucHVzaChsLmNhbGwobixlLGUrPXQpKTtyZXR1cm4gcn1mdW5jdGlvbiBGcihuLHQpe3JldHVybiBuLl9jaGFpbj9zbih0KS5jaGFpbigpOnR9ZnVuY3Rpb24gcXIobil7cmV0dXJuICR0KEJuKG4pLChmdW5jdGlvbih0KXt2YXIgcj1zblt0XT1uW3RdO3NuLnByb3RvdHlwZVt0XT1mdW5jdGlvbigpe3ZhciBuPVt0aGlzLl93cmFwcGVkXTtyZXR1cm4gZi5hcHBseShuLGFyZ3VtZW50cyksRnIodGhpcyxyLmFwcGx5KHNuLG4pKX19KSksc259JHQoWyJwb3AiLCJwdXNoIiwicmV2ZXJzZSIsInNoaWZ0Iiwic29ydCIsInNwbGljZSIsInVuc2hpZnQiXSwoZnVuY3Rpb24obil7dmFyIHQ9b1tuXTtzbi5wcm90b3R5cGVbbl09ZnVuY3Rpb24oKXt2YXIgcj10aGlzLl93cmFwcGVkO3JldHVybiBudWxsIT1yJiYodC5hcHBseShyLGFyZ3VtZW50cyksInNoaWZ0IiE9PW4mJiJzcGxpY2UiIT09bnx8MCE9PXIubGVuZ3RofHxkZWxldGUgclswXSksRnIodGhpcyxyKX19KSksJHQoWyJjb25jYXQiLCJqb2luIiwic2xpY2UiXSwoZnVuY3Rpb24obil7dmFyIHQ9b1tuXTtzbi5wcm90b3R5cGVbbl09ZnVuY3Rpb24oKXt2YXIgbj10aGlzLl93cmFwcGVkO3JldHVybiBudWxsIT1uJiYobj10LmFwcGx5KG4sYXJndW1lbnRzKSksRnIodGhpcyxuKX19KSk7Y29uc3QgenI9c247dmFyIFdyPXFyKGUpO1dyLl89V3I7Y29uc3QgUHI9V3J9fV0pOw=="}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"salesiq.zohopublic.eu/widget","fqdn":"salesiq.zohopublic.eu","domain":"zohopublic.eu","tld":"eu"},"ip":{"addr":"185.230.212.19","port":443,"asn":205111,"as":"ZOHO Corporation B.V","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.774Z","timestamp":1785154589774,"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":"zohopublic.eu","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Wed, 22 Jul 2026 15:39:57 GMT","end":"Tue, 20 Oct 2026 15:39:56 GMT"},"fingerprint":{"sha1":"EC:87:81:59:41:B7:C6:78:6B:35:B6:6A:10:96:81:9D:4B:0A:B8:97","sha256":"BC:72:33:84:A6:B4:ED:D6:2F:41:B3:66:B9:29:81:56:15:31:33:A3:17:8D:61:AC:88:BA:16:52:BC:3B:2A:A9"}}},"request":{"raw":"GET /widget HTTP/1.1\r\nHost: salesiq.zohopublic.eu\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://persimmontrades.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: ZGS\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\ncontent-type: text/javascript;charset=UTF-8\r\nx-content-type-options: nosniff\r\nencoding: UTF-8\r\nset-cookie: zalb_34e30bb8af=dd16d331856928f5539d49ba6d988ab6; Path=/; Secure; HttpOnly\nLS_CSRF_TOKEN=;Max-Age=0;path=/;SameSite=None;Secure;Partitioned;HttpOnly;priority=high\nLS_CSRF_TOKEN=654b7b33-e085-4760-b03f-c7e02395c050;path=/;SameSite=None;Secure;HttpOnly;priority=high\r\nx-frame-options: SAMEORIGIN\r\naccess-control-allow-origin: *\r\ncross-origin-resource-policy: cross-origin\r\ncache-control: must-revalidate\r\npragma: \r\nexpires: Mon, 27 Jul 2026 12:21:29 GMT\r\netag: W/08532662df3c609e7e7d6937f5e9f282a0747d64bd3fc23b39bde70ad852ac8e\r\nvary: accept-encoding\r\ncontent-encoding: gzip\r\nstrict-transport-security: max-age=64072000; includeSubDomains; preload\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":162740,"size_decoded":49619,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"f20f7aaf8840b5c93a2b01879f604328","sha1":"c9b959ed617e79e20135bf2861268ec7daef459f","sha256":"a8f37f8c1837676e8a1d8eb590f9d0cc339342ad5e97d530d329f586b0ecfdcc","sha512":"ef721e6ddf7213976cbac384f25dcd0095c93df84807ea1e8c35c874c21ac2249ed2604205ea2e4bac476695ec7d1072766eb6eaf21633de8e780baf9c18253c","ssdeep":"3072:Qb/b2xaJ1LPrNJ5UaGk33LCQYYpal6dxbpESQBNu:Ub7J1brnLCQYYpal4wSt","tlshash":"48f34c6970d5707a02a31178243f7b0a613b5a456a59cdf0ea71ca901cb4b8772f3feb","first_seen":"2026-07-25T08:40:34.285484Z","last_seen":"2026-07-27T12:17:29.256057Z","times_seen":15,"resource_available":true,"data":"d2luZG93Ll9TVEFUSUNVUkxTPVsianMuem9ob2Nkbi5jb20iLCJjc3Muem9ob2Nkbi5jb20iLCJodHRwczovL2V1MS1maWxlcy56b2hvcHVibGljLmV1Iiwic2FsZXNpcS56b2hvcHVibGljLmV1Iiwic2FsZXNpcS56b2hvLmV1Iiwic2FsZXNpcS56b2hvcHVibGljLmV1Il07TkVXX1NUQVRJQ19VUkxTPVtbImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2pzL2VtYmVkLkFUUUNhdEd3STdkS0hickZiR3pDSnEzRUN4c3VVU202cnkzQ2dZMVpQb1N4MTR4cmdvM2dKbXItUU4wU20teVEuanMiLCJodHRwczovL3N0YXRpYy56b2hvY2RuLmNvbS96b2hvLXNhbGVzaXEtd2lkZ2V0cy9lbWJlZC9jdy9qcy9lbWJlZH5jb21tb24ueVhFYk1COUpRVUxRTEQteUowaG5ZNDAzV09pYUlBOEJxcG9FbUYxRmZVZXVTdnkxSGZIZV9xMGxUazRsX1NkQS5qcyIsImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2pzL2NodW5rLXZlbmRvcnMuX3lqMkc4ZE1nZmhzOThPUWVaWU90WlF3cWxfS1RoVWktYlh4TzlYWUZYVTNKUWx0Y1pjNk5PQm9OZkxBMjZ0eC5qcyIsImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2pzL2VtYmVkfnJ0bC45MXRLSkh0Skk1YVU5SzU3dzZEWTNFNFJ4dUxqZ0ZjQmpjZW00Z1gtU3ZFQTU0b1EwQm5yR2lrRDBJSGZZcC1MLmpzIl0sWyJodHRwczovL3N0YXRpYy56b2hvY2RuLmNvbS96b2hvLXNhbGVzaXEtd2lkZ2V0cy9lbWJlZC9jdy9qcy9lbWJlZH5tb2Rlcm4uTDd1dDVTanhjNFdfVy1adjFuT2tic1VGWHJacUNsclZ2bGFSRjRPRVJTV0dvd1dGU2UyVUVOcHQxMEJpQ01KVC5qcyIsImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2pzL2VtYmVkfmNvbW1vbn5tb2Rlcm4uRnZZTUJVcTU4dHZkb1hNTFZNWnJUZ3MxQjZMeDZWV25va3dEZVJmdGtYcURJRGxEZ2gwak9qZ1ZqY1dUU0JqMy5qcyIsImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2pzL2NodW5rLXZlbmRvcnN+bW9kZXJuLmRmT2dfY044ZXhWV1lFS3NlOVIzWDJ1b3J1UElXTFl0VWRSSkFqalNfQy14anlVNUVFMEVxSERoSUJRcEV4UTguanMiLCJodHRwczovL3N0YXRpYy56b2hvY2RuLmNvbS96b2hvLXNhbGVzaXEtd2lkZ2V0cy9lbWJlZC9jdy9qcy9lbWJlZH5tb2Rlcm5+cnRsLlRiMl9HWEQ0THNrcjZjaHVpWlJJcml4bzdCa2drQ2c0NGp4c0VZUGxDa2Z2XzRuV2NpaGl6dkR4amdtM2ZvZzMuanMiXSxbImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2Nzcy9lbWJlZC5ULVRxUmxmRDI2azVrQWdMY0JFV0JvZ1BYYlVYb3RqVUJ3NloyOFlNUEExZ3BQQVRRWmZGODB3R21PY2wwZUFULmNzcyIsImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2Nzcy9lbWJlZH5ydGwuQU1pV0QzSVRzcHoyM0Q2aVlObnlWdDNKYnhqZkxNWGZNQkVMOS1kTVJ4U3FLNDJDZnU3TkZnV3FyNXhLb1pxdS5jc3MiXSxbImh0dHBzOi8vc3RhdGljLnpvaG9jZG4uY29tL3pvaG8tc2FsZXNpcS13aWRnZXRzL2VtYmVkL2N3L2Nzcy9lbWJlZH5jb21tb24uRTV0RHRZLXdsbDh4Mm9QcFpUOVVxcFVoWFVaWG9fenA2ZXV3YlIxelhBSUlYWG1NSXUxZmZfc3RDb0J1a2FwOC5jc3MiLCJodHRwczovL3N0YXRpYy56b2hvY2RuLmNvbS96b2hvLXNhbGVzaXEtd2lkZ2V0cy9lbWJlZC9jdy9jc3MvZW1iZWR+Y29tbW9ufnJ0bC5jYlZhTW11U28tSFpOT1FRUkxIdWQyUmMwdmY5SzJhaFBiRGpwTW1kNUZ1T3ZQelpwMGpVWlBZVkM5dTdYVkVNLmNzcyJdXTtfU1RBVElDX1VSTD0naHR0cHM6Ly9zdGF0aWMuem9ob2Nkbi5jb20nO19ORVdfTUVESUFSVENfVVJMUz1bImh0dHBzOi8vanMuem9ob2Nkbi5jb20vc2FsZXNpcS9qcy9lbWJlZG1lZGlhLXJ0Yy1uZXdfN1ZfU0lhUkg3M0hFaUdkcDR0M2tVWHVaVktUU24tWVFoR1dsRWI1VzVJMVZJZkNPY00tSURQTmh2NEhxY2dxVF8uanMiLCJodHRwczovL2pzLnpvaG9jZG4uY29tL3NhbGVzaXEvdGhpcmRwYXJ0eS9qcy9qcXVlcnkubWluLmpzIl07dmFyICRaU0lRTFNEQj0kWlNJUUxTREJ8fGZ1bmN0aW9uKCl7dmFyIHQ9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiB3aW5kb3dbdF0uc2V0SXRlbSgidGVzdCIsIjEiKSx3aW5kb3dbdF0ucmVtb3ZlSXRlbSgidGVzdCIpLCEhd2luZG93W3RdfWNhdGNoKHQpe3JldHVybiExfX0sZT10KCJzZXNzaW9uU3RvcmFnZSIpLG89dCgibG9jYWxTdG9yYWdlIik7cmV0dXJue3NldDpmdW5jdGlvbihlLG8saSl7aWYoJFpTSVFMU0RCLmlzTG9jYWxTdG9yYWdlQXZhaWwoKSl0cnl7dGhpcy5zdG9yZUluTG9jYWxTdG9yYWdlKGUsbyxpKX1jYXRjaCh0KXskWlNJUUNvb2tpZS5zZXQoZSwkWlNJUUxTREIudG9TdHJpbmcobyksaSl9ZWxzZSAkWlNJUUNvb2tpZS5zZXQoZSwkWlNJUUxTREIudG9TdHJpbmcobyksaSl9LHN0b3JlSW5Mb2NhbFN0b3JhZ2U6ZnVuY3Rpb24odCxlLG8pe3ZhciBpPUpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oInNpcWxzZGIiKXx8Int9Iik7byYmKGUudHRsPW8sZS50aW1lPShuZXcgRGF0ZSkuZ2V0VGltZSgpKSxlPSRaU0lRTFNEQi50b1N0cmluZyhlKSxpW3RdPWUsbG9jYWxTdG9yYWdlLnNldEl0ZW0oInNpcWxzZGIiLEpTT04uc3RyaW5naWZ5KGkpKX0saXNMb2NhbFN0b3JhZ2VBdmFpbDpmdW5jdGlvbigpe3JldHVybiBvfSxnZXQ6ZnVuY3Rpb24odCl7cmV0dXJuICRaU0lRTFNEQi5pc0xvY2FsU3RvcmFnZUF2YWlsKCkmJiRaU0lRTFNEQi5nZXRGcm9tTG9jYWxTdG9yYWdlKHQpfHwkWlNJUVV0aWwucGFyc2VUb0pTT04oJFpTSVFDb29raWUuZ2V0KHQpKX0saXNTZXNzaW9uU3RvcmFnZUF2YWlsOmZ1bmN0aW9uKCl7cmV0dXJuIGV9LHN0b3JlSW5TZXNzaW9uOmZ1bmN0aW9uKHQsZSl7aWYoIXRoaXMuaXNTZXNzaW9uU3RvcmFnZUF2YWlsKCkpcmV0dXJuITE7dmFyIG89JFpTSVFVdGlsLnBhcnNlVG9KU09OKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInV0c2RiIil8fCJ7fSIpO3JldHVybiB3aW5kb3cuX1pTSVFfUkVTRVRfRVNTRU5USUFMJiYobz0kWlNJUVV0aWwucGFyc2VUb0pTT04obykpLG9bdF09ZSxzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ1dHNkYiIsSlNPTi5zdHJpbmdpZnkobykpLCEwfSxnZXRGcm9tU2Vzc2lvbjpmdW5jdGlvbih0KXtpZih0aGlzLmlzU2Vzc2lvblN0b3JhZ2VBdmFpbCgpKXJldHVybiAkWlNJUVV0aWwucGFyc2VUb0pTT04oc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgidXRzZGIiKXx8Int9IilbdF19LGdldEZyb21Mb2NhbFN0b3JhZ2U6ZnVuY3Rpb24oZSl7dmFyIG89JFpTSVFVdGlsLnBhcnNlVG9KU09OKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJzaXFsc2RiIil8fCJ7fSIpW2VdO2lmKCFvKXJldHVybiBudWxsO2lmKCJaTERQRVJTT05BTElaRSI9PT1lKXJldHVybiBvO3RyeXtpZigobz0kWlNJUVV0aWwucGFyc2VUb0pTT04obykpLnR0bCYmby50dGwrby50aW1lPChuZXcgRGF0ZSkuZ2V0VGltZSgpKXJldHVybiAkWlNJUUxTREIucmVtb3ZlKGUpLG51bGx9Y2F0Y2godCl7TFNEZWJ1Z2dlci5wb3N0RGVidWdJbmZvKCJWYWx1ZTogIitvKyJLZXkiK2UsbnVsbCxudWxsLCEwKX1yZXR1cm4gb30scmVtb3ZlOmZ1bmN0aW9uKGUsdCl7dmFyIG89dCYmJHpvaG9zcS5fZG9tYWluO2lmKCRaU0lRTFNEQi5pc0xvY2FsU3RvcmFnZUF2YWlsKCkmJiFvKXRyeXt2YXIgaT0kWlNJUVV0aWwucGFyc2VUb0pTT04obG9jYWxTdG9yYWdlLmdldEl0ZW0oInNpcWxzZGIiKXx8Int9Iik7aVtlXSYmZGVsZXRlIGlbZV0sbG9jYWxTdG9yYWdlLnNldEl0ZW0oInNpcWxzZGIiLEpTT04uc3RyaW5naWZ5KGkpKX1jYXRjaCh0KXskWlNJUUNvb2tpZS5yZW1vdmUoZSl9ZWxzZSAkWlNJUUNvb2tpZS5yZW1vdmUoZSwkem9ob3NxLl9kb21haW4pfSxyZW1vdmVBbGxGQVFWYWx1ZXNGcm9tU2Vzc2lvbjpmdW5jdGlvbih0KXtpZih0aGlzLmlzU2Vzc2lvblN0b3JhZ2VBdmFpbCgpKXRyeXt2YXIgZT1KU09OLnBhcnNlKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInV0c2RiIil8fCJ7fSIpO2Zvcih2YXIgdCBpbiBlKWUuaGFzT3duUHJvcGVydHkodCkmJih0LnN0YXJ0c1dpdGgoImFydGljbGVfIil8fHQuc3RhcnRzV2l0aCgiZmFxXyIpKSYmZGVsZXRlIGVbdF07c2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLEpTT04uc3RyaW5naWZ5KGUpKX1jYXRjaCh0KXt9fSxyZW1vdmVTZXNzaW9uU3RvcmU6ZnVuY3Rpb24odCl7aWYodGhpcy5pc1Nlc3Npb25TdG9yYWdlQXZhaWwoKSl0cnl7dmFyIGU9SlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJ1dHNkYiIpfHwie30iKTtlW3RdJiYoZGVsZXRlIGVbdF0sc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLEpTT04uc3RyaW5naWZ5KGUpKSl9Y2F0Y2godCl7fX0sdG9TdHJpbmc6ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuIGU7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO3RyeXtyZXR1cm4gdD1lLE9iamVjdC50b0pTT04/T2JqZWN0LnRvSlNPTih0KTpKU09OLnN0cmluZ2lmeSh0KX1jYXRjaCh0KXt2YXIgbyxpPVtdO2Zvcih2YXIgciBpbiBlKW89ZVtyXS5yZXBsYWNlKCciJywnXFwiJyksaS5wdXNoKCciJytyKyciOiInK28rJyInKTtyZXR1cm4ieyIraSsifSJ9dmFyIHR9LHJlbW92ZUFsbFN0b3JhZ2U6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7ICIpLGU9JFpTSVFVdGlsLmdldGtleWxpc3QoKSxvPTA7bzx0Lmxlbmd0aDtvKyspZm9yKHZhciBpPTA7aTxlLmxlbmd0aDtpKyspaWYoLTEhPXRbb10uc2VhcmNoKG5ldyBSZWdFeHAoZVtpXSwiaSIpKSl7JFpTSVFDb29raWUucmVtb3ZlKHRbb10pO2JyZWFrfWlmKHRoaXMuaXNTZXNzaW9uU3RvcmFnZUF2YWlsKCkmJnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oInV0c2RiIiwie30iKSx0aGlzLmlzTG9jYWxTdG9yYWdlQXZhaWwoKSl7dmFyIHI9Int9Ijtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgic2lxbHNkYiIsciksbG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIixyKSxsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgic2lxX2VtYmVkIixyKX0kWlNJUVdpZGdldCYmZGVsZXRlICRaU0lRV2lkZ2V0LmF2dWlkfSxzZXRDb29raWU6ZnVuY3Rpb24odCxlLG8peyR6b2hvc3EuX2RvbWFpbj8kWlNJUUNvb2tpZS5zZXQodCwkWlNJUUxTREIudG9TdHJpbmcoZSksbywhMCwkem9ob3NxLl9kb21haW4pOnRoaXMuc2V0KHQsZSxvKX19fSgpO3ZhciAkWlNJUUNvb2tpZT0kWlNJUUNvb2tpZXx8e2dldDpmdW5jdGlvbihlKXt2YXIgbz1lO2UrPSI9Ijt2YXIgaT1kb2N1bWVudC5jb29raWUuaW5kZXhPZihlKSx0PSIiOy0xIT1pJiYtMSE9KHQ9ZG9jdW1lbnQuY29va2llLnN1YnN0cihpK2UubGVuZ3RoKSkuaW5kZXhPZigiOyIpJiYodD10LnN1YnN0cmluZygwLHQuaW5kZXhPZigiOyIpKSk7dmFyIG49ZGVjb2RlVVJJQ29tcG9uZW50KHQpO3JldHVybiBufHwkWlNJUUxTREIuZ2V0RnJvbVNlc3Npb24obyl8fG59LHNldDpmdW5jdGlvbihlLG8saSx0LG4pe2lmKCRaU0lRTm90aWZ5Q29va2llLmlzQ29va2llQWxsb3dlZChlKSl7dmFyIHI9bmV3IERhdGU7cmV0dXJuIG51bGwhPWkmJiIiIT1pfHwoaT0xOGU0KSxyLnNldFRpbWUoci5nZXRUaW1lKCkraSksZSs9Ij0gIitlbmNvZGVVUklDb21wb25lbnQobykrIjtleHBpcmVzPSAiK3IudG9HTVRTdHJpbmcoKSsiOyIsdCYmKGUrPSJwYXRoPS87IiksZT1uP2UrImRvbWFpbj0iK24rIjsiOmUsZSs9JFpTSVFVdGlsLmdldFNlY3VyZUNvb2tpZUtleShlKSxlPSRaU0lRVXRpbC5zZXRTYW1lU2l0ZUNvb2tpZShlKSxkb2N1bWVudC5jb29raWU9ZSwhMH0kWlNJUUxTREIuc3RvcmVJblNlc3Npb24oZSxvKX0scmVtb3ZlOmZ1bmN0aW9uKGUsbyl7aWYoJFpTSVFOb3RpZnlDb29raWUuaXNDb29raWVBbGxvd2VkKGUpKXt2YXIgaT1uZXcgRGF0ZTtpZihpLnNldFRpbWUoaS5nZXRUaW1lKCktMSksbyl7dmFyIHQ9ZSsiPTtleHBpcmVzPSIraS50b0dNVFN0cmluZygpKyI7Ijt0Kz0icGF0aD0vOyIsZG9jdW1lbnQuY29va2llPXQrImRvbWFpbj0iK28rIjtTZWN1cmU7U2FtZVNpdGU9Tm9uZSJ9ZWxzZSBkb2N1bWVudC5jb29raWU9ZSsiPTtleHBpcmVzPSIraS50b0dNVFN0cmluZygpKyI7In1lbHNlICRaU0lRTFNEQi5yZW1vdmVTZXNzaW9uU3RvcmUoZSl9fTt2YXIgSWZyYW1lSGFuZGxlcj1mdW5jdGlvbigpe3ZhciBhPWZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5fSVNfUkVWQU1QfTtmdW5jdGlvbiByKCl7cmV0dXJuICRaU0lRVXRpbC5nZXRJZnJhbWUoKX1mdW5jdGlvbiBvKCl7cmV0dXJuIHIoKS4kU3VwcG9ydHx8e319ZnVuY3Rpb24gYyhlKXt2YXIgdD0kem9oby5zYWxlc2lxLmNsaWVudGFjdGlvbnNbZS5jbGllbnRhY3Rpb25fbmFtZV07dCYmdChlKX1mdW5jdGlvbiBkKGUpeyRaU0lRVVRTQWN0aW9uLnJlY2hhdHRyaWdnZXI9ITAsJFpTSVFVVFNBY3Rpb24uaGFuZGxlKGUpfWZ1bmN0aW9uIHMoZSl7ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtaWQ9InpzaXFlbWJlZCJdJykuY2xhc3NMaXN0W2U/ImFkZCI6InJlbW92ZSJdKCJhdHRhY2gtcHJldmlldyIpfWZ1bmN0aW9uIHUoZSl7dmFyIHQ9JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKTt0LmVtYmVkb2JqLmFubm9uaWQ9ZSwkWlNJUVV0aWwuc3RvcmVEZXRhaWxzKHQpfWZ1bmN0aW9uIGUoZSl7dmFyIHQsbixpLGEsbz1lLmRhdGE7dHJ5e3Q9InN0cmluZyI9PXR5cGVvZiBvP0pTT04ucGFyc2Uobyk6b31jYXRjaChlKXt9dCYmInpzaXFjd2ZyYW1lIj09PXQuc3JjJiYoZS5zb3VyY2U9PT1yKCkmJihuPXQsaT0kWlNJUUNoYXRXaW5kb3csKGE9e2N3ZHJhZzppLmhhbmRsZURyYWcsdXBjd2RyYWdwb3M6aS5jYWNoZUNoYXREaXZQb3NpdGlvbixtaW5pbWl6ZWN3OmkubWluaW1pemVDaGF0V2luZG93LHVwZGF0ZWFubm9uaWQ6dSxqc2FwaWNiOiRaU0lRV2lkZ2V0LmhhbmRsZUNhbGxCYWNrcyxvcGVuY3c6aS5vcGVuQ2hhdFdpbmRvdyxjbG9zZXRyaWdnZXJsb2FkaW5nOmkuUmVtb3ZlTG9hZGluZ0ZvclRyaWdnZXIsdG9nZ2xlY3dkaW1lbnNpb246ZnVuY3Rpb24oZSl7aS5leHBhbmRDaGF0V2luZG93RGltZW5zaW9uKGUuZXhwYW5kKX0sZ2V0enZ2YWx1ZTpmdW5jdGlvbigpe2coJHp2KX0sYmxvY2s6ZnVuY3Rpb24oKXt2YXIgZT1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpO3QmJnQucmVtb3ZlKCl9O2UoIi5zaXFfbWVkaWEiKSxlKCIuc2lxZW1iZWQiKSxlKCdbZGF0YS1pZD0ienNhbGVzaXEiXScpfSx1bXNnY291bnQ6JFpTSVFXaWRnZXRVSS51cGRhdGVDb3VudCxjbGllbnRhY3Rpb246Yyx0cmlnZ2VycmVvcGVuOmQsb3BlbmZpbGVwcmV2aWV3OnMsYmxpbmtUaXRsZTokWlNJUVV0aWwuYmxpbmtUaXRsZSxzdG9wVGl0bGVCbGluazokWlNJUVV0aWwuc3RvcEJsaW5raW5nLG9ubG9hZDpmdW5jdGlvbigpeyRaU0lRQ2hhdFdpbmRvdy5oYW5kbGVSZXZhbXBMb2FkKCl9LHNldExTREI6ZnVuY3Rpb24oZSl7dmFyIHQ9JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS5lbWJlZG9iai5laW5mby5lbWJlZGlkOyRaU0lRTFNEQi5zZXQoIlpMRCIrdCtlLmtleSxlLnZhbHVlKX0sdXBkYXRlQ3VzdG9tRXZlbnQ6ZnVuY3Rpb24oZSl7JFpTSVFVVFMubm90aWZ5Q3VzdG9tRXZlbnQoZSl9LGhhbmRsZVRyaWdnZXJSZW9wZW46ZnVuY3Rpb24oKXtsKCJ0cmlnZ2VyYXBpIiwhMCl9fSlbbi5hY3Rpb25dJiZhW24uYWN0aW9uXShuLmRhdGEpKSl9ZnVuY3Rpb24gbChlLHQpe3ZhciBuPXIoKTtuJiZuLnBvc3RNZXNzYWdlJiZuLnBvc3RNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHtzcmM6InpzaXFmbG9hdCIsYWN0aW9uOmUsZGF0YTp0fSkpfWZ1bmN0aW9uIGcoZSx0KXtpZihhKCkpcmV0dXJuIGwoImpzYXBpIixlKTtvKCkuaGFuZGxlQXBpRGF0YShlLHQpfXJldHVybnt1cGRhdGVKc0FwaVZhbHVlOmcsdXBkYXRlUHJldmlldzpmdW5jdGlvbihlLHQpe2woInByZXZpZXciLHtkYXRhOmUsdHlwZTp0fSl9LHNlbmRQb3N0TWVzc2FnZTpsLGhhbmRsZVJldmFtcExvYWQ6ZnVuY3Rpb24oKXtsKCJqc2FwaSIsJHp2KX0sZ2V0VHJpZ2dlckNvb2tpZTpmdW5jdGlvbigpe3JldHVybiBhKCk/IiI6bygpLmdldFRyaWdnZXJDb29raWUoKX0saW5jcmVtZW50VW5yZWFkQ291bnQ6ZnVuY3Rpb24oKXshYSgpJiZvKCkuaW5jcmVtZW50VW5yZWFkQ291bnQoKX0saGFuZGxlVHJpZ2dlcjpmdW5jdGlvbihlLHQpe2EoKT9sKCJ0cmlnZ2VyIix0KTpvKCkuVXRpbC5oYW5kbGVUcmlnZ2VycyhlLHQpfSxhZGRNZXNzYWdlTGlzdGVuZXI6ZnVuY3Rpb24oKXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZSl9LHVwZGF0ZVVWSUQ6ZnVuY3Rpb24oZSl7aWYoYSgpKXJldHVybiBsKCJ1dmlkIixlKTtvKCkuc2V0VVZJRChlKX0saGFuZGxlQm90VHJpZ2dlcjpmdW5jdGlvbihlKXtpZihhKCkpcmV0dXJuIGwoImJvdHRyaWdnZXIiLGUpO28oKS5VdGlsLmhhbmRsZUJvdFRyaWdnZXJzKGUpfSxoYW5kbGVCb3RNZXNzYWdlOmZ1bmN0aW9uKGUpe2lmKGEoKSlyZXR1cm4gbCgiYm90bWVzc2FnZSIsZSl9LGdldExzSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gYSgpP28oKS5nZXRMc0lkKCk6bygpLkVtYmVkT2JqLmxpdmVsc2lkfSxoYW5kbGVQcm9BY3RpdmVDaGF0OmZ1bmN0aW9uKGUpe3ZhciB0PW8oKTtpZihhKCkpe2lmKHQuaXNDaGF0RXhpc3QmJnQuaXNDaGF0RXhpc3QoKXx8IWUubXNnKXJldHVybjt2YXIgbj0kWlNJUUNoYXRXaW5kb3c7ZnVuY3Rpb24gaSgpe2woInByb2FjdGl2ZWNoYXQiLGUpfXJldHVybiByKCk/aSgpOm4uY29uc3RydWN0SWZyYW1lKCExLGZ1bmN0aW9uKCl7bi5vcGVuQ2hhdFdpbmRvdygpLGkoKX0pfXJldHVybiB0LlV0aWwuaGFuZGxlVHJhY2tDaGF0KGUpfSxsb2FkRXh0ZXJuYWxGaWxlczpmdW5jdGlvbigpe2lmKCFhKCkpe3ZhciBlPW8oKTtlLlV0aWwmJmUuVXRpbC5sb2FkRXh0ZXJuYWxGaWxlcygpfX0sY2xlYXJBUElWYWx1ZXM6ZnVuY3Rpb24oKXthKCkmJmwoInJlc2V0VmlzaXRvckluZm8iKSwkWlNJUVV0aWwuY2xlYXJBcGlWYWx1ZXMoKX0sY2hhdHdpbmRvd1JlbG9hZDpmdW5jdGlvbigpe2lmKGEoKSlyZXR1cm4gbCgiY2hhdHdpbmRvd1JlbG9hZCIpO28oKS5yZWxvYWQoKX0saXNDYWxsT25saW5lOmZ1bmN0aW9uKCl7cmV0dXJuIG8oKS5FbWJlZE9iai5jYWxsX3N0YXR1c319fSgpO3RyeXtpZighd2luZG93LiR6b2hvKXt2YXIgJHpvaG89d2luZG93LiR6b2hvfHx7fTskem9oby5zYWxlc2lxPSR6b2hvLnNhbGVzaXF8fHt2YWx1ZXM6e30sd2lkZ2V0Y29kZTpkb2N1bWVudC5jdXJyZW50U2NyaXB0LnNyYy5zcGxpdCgid2lkZ2V0Y29kZT0iKVsxXX19X1pTSVE9d2luZG93Ll9aU0lRfHx7SlNBUEk6e319LCRaU0lRQW5hbHl0aWNzPXt9LCRaU0lRQXV0b3BpY2s9e30sX1pTSVEuaXNhZ2VudHNjaGF0fHwoJHpvaG9zcT0kem9oby5saXZlZGVza3x8JHpvaG8uc2FsZXNpcSwkem9ob3NxLl9jYWxsYmFja3M9e30sJHpjYj0kem9ob3NxLl9jYWxsYmFja3MsJHp2PSR6b2hvc3EudmFsdWVzLCR6bG09e30sJHpsY2g9e30sJHpsYT0iaGFuZGxlQW5hbHl0aWNFdmVudHMiLCR6b2hvc3EudXRzdmFsdWVzPSR6b2hvc3EudXRzdmFsdWVzfHx7fSwkWlNJUV9VVFNpbml0aWFsaXplZD1udWxsKTt2YXIgZ2V0U2FsdXRhdGlvbldpdGhvdXREb3Q9ZnVuY3Rpb24odCl7cmV0dXJuIi4iPT09dC5jaGFyQXQodC5sZW5ndGgtMSk/dC5zbGljZSgwLC0xKTp0fSxfZ2V0VmlzaXRvclZhbHVlPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0LnRyaW0oKX07JHpvaG9zcS5faW52b2tlPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBvIGluIGUmJmUuYXR0ZW5kZXJlbWFpbCYmZGVsZXRlIGUuYXR0ZW5kZXJlbWFpbCwkWlNJUUFuYWx5dGljcylpZigkWlNJUUFuYWx5dGljcy5oYXNPd25Qcm9wZXJ0eShvKSl7dmFyIGk9JFpTSVFBbmFseXRpY3Nbb107JFpTaGFuZGxlRXZlbnQodCxlLGkpfWlmKCR6Y2JbdF0mJiJmdW5jdGlvbiI9PXR5cGVvZiAkemNiW3RdKXtpZigib2JqZWN0IiE9dHlwZW9mIGUpe2lmKCR6bG1bdF09PT1lKXJldHVybiExOyR6bG1bdF09ZX12YXIgbjtpZihlLnZpc2l0aWQpbj0kemNiW3RdKGUudmlzaXRpZCxlKTtlbHNle2lmKCJ2aXNpdG9yLnRyaWdnZXIiPT09dClyZXR1cm4gJHpjYlt0XShlLnRyaWdnZXJuYW1lLGUudmlzaXRvcmluZm8pO249JHpjYlt0XShlKX1uPW51bGwhPW4/bjotMTt2YXIgYT17fTthW3RdPW4sJHpsY2hbdF0mJiR6b2hvc3Euc2V0VmFsdWUoImNhbGxiYWNrIixhKSwkemxtW3RdPXt9fWVsc2UiY3VzdG9tLmZpZWxkIj09dCYmJHpvaG9zcS5jdXN0b21maWVsZC5oYW5kbGVDYWxsYmFja3MoZSk7cmV0dXJuITF9LCR6b2hvc3EuY2xpZW50YWN0aW9ucz17fSwkem9ob3NxLmp3dHRva2VuPXtsb2dpbnRva2VuOmZ1bmN0aW9uKHQpe3RyeXtpZighWlNJUUpXVFZlcmlmeS5pc0pXVEVuYWJsZWQoKSlyZXR1cm47JHp2Lmp3dHRva2VudmFsPXQsWlNJUUpXVFZlcmlmeS52ZXJpZnlKV1R0b2tlbih0KX1jYXRjaCh0KXt9fSxsb2dvdXQ6ZnVuY3Rpb24odCl7dHJ5e2lmKCFaU0lRSldUVmVyaWZ5LmlzSldURW5hYmxlZCgpKXJldHVybjtaU0lRSldUVmVyaWZ5LmxvZ291dEpXVCh0KX1jYXRjaCh0KXt9fSxqd3R0b2tlbmdldHRlcjpmdW5jdGlvbih0KXt0cnl7aWYoIVpTSVFKV1RWZXJpZnkuaXNKV1RFbmFibGVkKCkpcmV0dXJuOyR6Y2Iuand0dG9rZW5nZXR0ZXI9dH1jYXRjaCh0KXt9fSxsb2dvdXRjb21wbGV0ZTpmdW5jdGlvbih0KXt0cnl7aWYoIVpTSVFKV1RWZXJpZnkuaXNKV1RFbmFibGVkKCkpcmV0dXJuOyR6Y2Iuand0bG9nb3V0Y2FsbGJhY2s9dH1jYXRjaCh0KXt9fX0sJHpvaG9zcS5zZXRWaXNpdG9yVmFsdWU9ZnVuY3Rpb24odCxlKXskenYuand0dG9rZW52YWx8fChlPWUmJmUudHJpbSgpKSYmJHpvaG9zcS5zZXRWYWx1ZSh0LGUsMyl9LCR6b2hvc3EudmlzaXRvcj17ZGVzdHJveTpmdW5jdGlvbih0KXt0cnl7dD10fHxGbG9hdC5sc29iamVjdC5sc2lkfWNhdGNoKHQpe30kWkRlc3Ryb3lGbG9hdERhdGEodCksJFpOb3RpZnlUcmFja2luZyg2KX0sYXV0b3BpY2s6ZnVuY3Rpb24odCl7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmJHpvaG9zcS5zZXRWYWx1ZSgiYXV0b3BpY2siLHtpc2VuYWJsZWQ6dH0sMyksJHp2LmF1dG9waWNrfSxyZWZlcmVyOmZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0LnRyaW0oKSYmJHpvaG9zcS5zZXRWYWx1ZSgicmVmZXJlciIsdCwzKSwkenYucmVmZXJlcn0sY3BhZ2U6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJnQudHJpbSgpJiYkem9ob3NxLnNldFZhbHVlKCJjcGFnZSIsdCwzKSwkenYuY3BhZ2V9LHBhZ2V0aXRsZTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmdC50cmltKCkmJiR6b2hvc3Euc2V0VmFsdWUoInBhZ2V0aXRsZSIsdCwzKSwkenYucGFnZXRpdGxlfSxjdXN0b21hY3Rpb246ZnVuY3Rpb24odCxlKXtpZih0JiYwIT10LnRyaW0oKS5sZW5ndGgmJiEkWlNpc1RocmVzaG9sZEV4Y2VlZGVkKCJjYSIsNTApKXt2YXIgbz17fTtvLmZpZWxkPXQsby52YWx1ZT1lfHx7fSwkenYuY3VzdG9tYWN0aW9uPW8sJFpOb3RpZnlUcmFja2luZyg0LG8pfX0sdW5pcXVlaWQ6ZnVuY3Rpb24oKXtyZXR1cm4gJHp2LnV2aWR9LHVuaXF1ZXVzZXJpZDpmdW5jdGlvbigpe3JldHVybiAkenYudXVpZH0saGFuZGxlaW5mbzpmdW5jdGlvbih0KXskem9ob3NxLnNldFZhbHVlKCJoYW5kbGVpbmZvIix0LDMpO3ZhciBlPXQubmFtZTtlJiZlLnRyaW0oKSYmJHpvaG9zcS5zZXRWYWx1ZSgibmFtZSIsZSk7dmFyIG89dC5lbWFpbDtudWxsIT1vJiYvXihbXHddKFtcd1wtXC5cK1wnXC9dKilAKFtcd1wtXC5dKikoXC5bYS16QS1aXXsyLDIyfShcLlthLXpBLVpdezJ9KXswLDJ9KSkkLy50ZXN0KG8pJiYkem9ob3NxLnNldFZhbHVlKCJlbWFpbCIsbyk7dmFyIGk9dC5waG9uZTtudWxsIT1pJiYkWlNJUVV0aWwuaXNWYWxpZFBob25lTm8oaSkmJiR6b2hvc3Euc2V0VmFsdWUoInBob25lIixpKTt2YXIgbj10LmZpcnN0bmFtZSxhPXQubGFzdG5hbWUscz10LnNhbHV0YXRpb247biYmJHpvaG9zcS5zZXRWaXNpdG9yVmFsdWUoImZpcnN0bmFtZSIsbiksYSYmJHpvaG9zcS5zZXRWaXNpdG9yVmFsdWUoImxhc3RuYW1lIixhKSxzJiYocz1nZXRTYWx1dGF0aW9uV2l0aG91dERvdChzKSwkem9ob3NxLnNldFZpc2l0b3JWYWx1ZSgic2FsdXRhdGlvbiIscykpfSxuYW1lOmZ1bmN0aW9uKHQpe2lmKCEkenYuand0dG9rZW52YWwpe2lmKCJvYmplY3QiIT10eXBlb2YgdCl7dCYmdC50cmltKCkmJiR6b2hvc3Euc2V0VmFsdWUoIm5hbWUiLHQsMyk7dmFyIGU9JFpTSVFVdGlsLmdldElmcmFtZVN1cHBvcnRPYmooKTtyZXR1cm4oZS5nZXRWaXNpdG9yTmFtZT9lLmdldFZpc2l0b3JOYW1lKCk6IiIpfHwkenYubmFtZX12YXIgbz1fZ2V0VmlzaXRvclZhbHVlKHQuZmlyc3RuYW1lKSxpPV9nZXRWaXNpdG9yVmFsdWUodC5sYXN0bmFtZSksbj1fZ2V0VmlzaXRvclZhbHVlKHQuc2FsdXRhdGlvbik7aWYobyYmJHpvaG9zcS5zZXRWaXNpdG9yVmFsdWUoImZpcnN0bmFtZSIsbyksaSYmKCR6b2hvc3EudmFsdWVzLm5hbWU9aSwkem9ob3NxLnNldFZpc2l0b3JWYWx1ZSgibGFzdG5hbWUiLGkpKSxuKXt2YXIgYT1nZXRTYWx1dGF0aW9uV2l0aG91dERvdChuKTskem9ob3NxLnNldFZpc2l0b3JWYWx1ZSgic2FsdXRhdGlvbiIsYSl9fX0sZmlyc3RuYW1lOmZ1bmN0aW9uKHQpeyR6b2hvc3Euc2V0VmlzaXRvclZhbHVlKCJmaXJzdG5hbWUiLHQpfSxsYXN0bmFtZTpmdW5jdGlvbih0KXt0JiYoJHpvaG9zcS52YWx1ZXMubmFtZT10LCR6b2hvc3Euc2V0VmlzaXRvclZhbHVlKCJsYXN0bmFtZSIsdCkpfSxzYWx1dGF0aW9uOmZ1bmN0aW9uKHQpe3QmJih0PWdldFNhbHV0YXRpb25XaXRob3V0RG90KHQpLCR6b2hvc3Euc2V0VmlzaXRvclZhbHVlKCJzYWx1dGF0aW9uIix0KSl9LGVtYWlsOmZ1bmN0aW9uKHQpe2lmKCEkenYuand0dG9rZW52YWwpe3JldHVybiBudWxsIT10JiYvXihbXHddKFtcd1wtXC5cK1wnXC9dKilAKFtcd1wtXC5dKikoXC5bYS16QS1aXXsyLDIyfShcLlthLXpBLVpdezJ9KXswLDJ9KSkkLy50ZXN0KHQpJiYkem9ob3NxLnNldFZhbHVlKCJlbWFpbCIsdCwzKSwkWlNJUVV0aWwuZ2V0SWZyYW1lU3VwcG9ydE9iaigpLnZpc2l0b3JlbWFpbHx8JHp2LmVtYWlsfX0saWQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJnQudHJpbSgpJiYkem9ob3NxLnNldFZhbHVlKCJpZCIsdCksJFpTSVFVdGlsLmdldEFQSVZhbHVlcygpLmlkPXQsJFpTSVFVdGlsLmNoZWNrU3RvcmVkSWRBbmRSZW1vdmVTdG9yYWdlKHQpLCR6di5pZH0scXVlc3Rpb246ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiR6b2hvc3Euc2V0VmFsdWUoInF1ZXN0aW9uIix0KSwkenYucXVlc3Rpb259LGNvbnRhY3RudW1iZXI6ZnVuY3Rpb24odCl7aWYoISR6di5qd3R0b2tlbnZhbClyZXR1cm4gbnVsbCE9dCYmJFpTSVFVdGlsLmlzVmFsaWRQaG9uZU5vKHQpJiYkem9ob3NxLnNldFZhbHVlKCJwaG9uZSIsdCwzKSwkWlNJUVV0aWwuZ2V0SWZyYW1lU3VwcG9ydE9iaigpLnZpc2l0b3JwaG9uZXx8JHp2LnBob25lfSxpbmZvOmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmluZm89dCksJHpvaG9zcS5zZXRWYWx1ZSgiaW5mbyIsJHp2LmluZm8sMyksJHp2LmluZm99LHNldGxvY2F0aW9uOmZ1bmN0aW9uKHQpe3JldHVybiB0JiYkem9ob3NxLnNldFZhbHVlKCJzZWNsb2NhdGlvbiIsdCksJHp2LnNlY2xvY2F0aW9ufSxhdXRoa2V5OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmF1dGhrZXk9dCksJHp2LmF1dGhrZXl9LGNoYXQ6ZnVuY3Rpb24odCl7JHpjYlsidmlzaXRvci5jaGF0Il09dH0sYXR0ZW5kOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IuYXR0ZW5kIl09dH0sbWlzc2VkOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IubWlzc2VkIl09dH0sYWdlbnRzb2ZmbGluZTpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLm9mZmxpbmUiXT10fSxvZmZsaW5lTWVzc2FnZTpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLm9mZmxpbmUiXT10fSxjaGF0bWVzc2FnZTpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLmNoYXRtZXNzYWdlIl09dH0sY2hhdGNvbXBsZXRlOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IuY2hhdGNvbXBsZXRlIl09dH0scmF0aW5nOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IucmF0aW5nIl09dH0sZmVlZGJhY2s6ZnVuY3Rpb24odCl7JHpjYlsidmlzaXRvci5mZWVkYmFjayJdPXR9LGlkbGVUaW1lOmZ1bmN0aW9uKHQpe2lzTmFOKHQpfHwoJHp2LmlkbGV0aW1lPXQsJFpOb3RpZnlUcmFja2luZygyLHQpKX0saWRsZTpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLmlkbGUiXT10fSxhY3RpdmU6ZnVuY3Rpb24odCl7JHpjYlsidmlzaXRvci5hY3RpdmUiXT10fSxvbk5hdmlnYXRlOmZ1bmN0aW9uKHQpe3JldHVybiB0fSx0cmlnZ2VyOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IudHJpZ2dlciJdPXR9LHRyaWdnZXJlZGNoYXQ6ZnVuY3Rpb24odCl7JHpjYlsidmlzaXRvci50cmlnZ2VyZWRjaGF0Il09dH0sb25nb2luZ2NoYXQ6ZnVuY3Rpb24oKXt2YXIgdD0kWlNJUVV0aWwuZ2V0SWZyYW1lKCk7cmV0dXJuISghdHx8IXQuJFN1cHBvcnQpJiYhIXQuJFN1cHBvcnQuaXNDaGF0RXhpc3QoKX0sZ2V0R2VvRGV0YWlsczpmdW5jdGlvbigpeyR6di5mZXRjaGdlb2xvY2F0aW9uPSEwfX0sJHpvaG9zcS5hcnRpY2xlPXtjb250ZW50OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmFydGljbGVjb250ZW50PXQpLCR6di5hcnRpY2xlY29udGVudH19LCR6b2hvc3EuY2hhdD17ZW5hYmxlQ3Jvc3NEb21haW46ZnVuY3Rpb24odCl7cmV0dXJuIHQmJnQudHJpbSgpJiYkem9ob3NxLnNldFZhbHVlKCJlbmFibGVjcm9zc2RvbWFpbiIsdCksJHp2LmVuYWJsZWNyb3NzZG9tYWlufSxyZXN0cmljdEFuYWx5dGljc1ZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0LnRyaW0oKSYmJHpvaG9zcS5zZXRWYWx1ZSgicmVzdHJpY3RhbmFseXRpY3N2YWx1ZSIsdCksJHp2LnJlc3RyaWN0YW5hbHl0aWNzdmFsdWV9LG1vZGU6ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiR6b2hvc3Euc2V0VmFsdWUoImNoYXRtb2RlIix0KSwkenYuY2hhdG1vZGV9LHNlbmRtZXNzYWdlOmZ1bmN0aW9uKHQpe0Zsb2F0JiZ0JiZGbG9hdC5zZW5kTWVzc2FnZSh0KX0sZGVwYXJ0bWVudDpmdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmJHpvaG9zcS5zZXRWYWx1ZSgiZGVwYXJ0bWVudCIsdCksJHp2LmRlcGFydG1lbnR9LGRlZmF1bHRkZXBhcnRtZW50OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmRlZmF1bHRkZXBhcnRtZW50PXQpLCR6di5kZWZhdWx0ZGVwYXJ0bWVudH0sYWdlbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiR6b2hvc3Euc2V0VmFsdWUoImFnZW50Iix0KSwkenYuYWdlbnR9LG1lc3NhZ2VzOmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmNoYXRtZXNzYWdlcz10KSwkenYuY2hhdG1lc3NhZ2VzfSxzeXN0ZW1tZXNzYWdlczpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5jaGF0bWVzc2FnZXM9dCksJHp2LmNoYXRtZXNzYWdlc30sdGl0bGU6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdCYmKCR6di50aXRsZT10KSwiW29iamVjdCBPYmplY3RdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSYmKCR6di50aXRsZXN0eWxlPWUpLCR6di50aXRsZX0sbWVzc2FnZWhpbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYubWVzc2FnZWhpbnQ9dCksJHp2Lm1lc3NhZ2VoaW50fSxvbmxpbmU6ZnVuY3Rpb24odCl7JHpjYlsiY2hhdC5vbmxpbmUiXT10fSxvZmZsaW5lOmZ1bmN0aW9uKHQpeyR6Y2JbImNoYXQub2ZmbGluZSJdPXR9LGxvZ286ZnVuY3Rpb24odCxlKXtyZXR1cm4gdCYmKCR6di5jbG9nbz10KSxlJiYoJHp2LmN3ZWJzaXRlPWUpLCR6di5jbG9nb30sd2FpdGluZ2hhbmRsZXI6ZnVuY3Rpb24odCl7dmFyIGU9ImNoYXQud2FpdGluZ2hhbmRsZXIiOyR6Y2JbZV09JHpsY2hbZV09dCwkenZbZV09bnVsbCE9dH0sc3RhcnQ6ZnVuY3Rpb24odCl7JHpvaG9zcS5zZXRWYWx1ZSgiY2hhdFN0YXJ0IiwhMCksdCYmJHpvaG9zcS5zZXRWYWx1ZSgiY2hhdFN0YXJ0IiwhMSk7dmFyIGU9ZnVuY3Rpb24oKXtfWlNJUS5KU0FQSS5icm9hZGNhc3RNZXNzYWdlKCJjaGF0c3RhcnQiLHt9KSxJZnJhbWVIYW5kbGVyLnNlbmRQb3N0TWVzc2FnZSgiY2hhdHN0YXJ0Iil9O2lmKCEkWlNJUVV0aWwuZ2V0SWZyYW1lKCkpcmV0dXJuICRaU0lRQ2hhdFdpbmRvdy5jbGVhcklmcmFtZUxvYWRlcigpLHZvaWQgJFpTSVFDaGF0V2luZG93LnBvcHVsYXRlSWZyYW1lKGUpO2UoKX0sZm9yd2FyZDpmdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmJHpvaG9zcS5zZXRWYWx1ZSgiZm9yd2FyZCIsdCksJHp2LmZvcndhcmR9LGF0dGVuZDpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLmF0dGVuZCJdPXR9LGFnZW50TWVzc2FnZTpmdW5jdGlvbih0KXskemNiWyJ2aXNpdG9yLmNoYXRtZXNzYWdlIl09dH0sdHJpZ2dlck1lc3NhZ2U6ZnVuY3Rpb24odCl7JHp2LnRyaWdnZXJtc2c9ITAsJHpjYlsidmlzaXRvci5jaGF0dHJpZ2dlciJdPXR9LGNvbXBsZXRlOmZ1bmN0aW9uKHQpe2lmKCF0KXt2YXIgZT0hMSxvPSRaU0lRVXRpbC5nZXRJZnJhbWUoKTtyZXR1cm4gX1pTSVEuSlNBUEkuYnJvYWRjYXN0TWVzc2FnZSgiY2hhdGVuZCIse30pLElmcmFtZUhhbmRsZXIuc2VuZFBvc3RNZXNzYWdlKCJjaGF0ZW5kIiksbyYmby4kU3VwcG9ydCYmby4kU3VwcG9ydC5pc0NoYXRFeGlzdCYmKGU9by4kU3VwcG9ydC5pc0NoYXRFeGlzdCgpKSxlfSR6Y2JbInZpc2l0b3IuY2hhdGNvbXBsZXRlIl09dH0sbWlzc2VkOmZ1bmN0aW9uKHQpeyR6Y2JbInZpc2l0b3IubWlzc2VkIl09dH0sdGhlbWU6ZnVuY3Rpb24odCl7IWZ1bmN0aW9uKHQpe2lmKCF0KXJldHVybjskenYuYnV0dG9udGhlbWU9dCsiLWJ0biIsJHp2LnNib25saW5lYmc9IiIsJHp2LnNib25saW5lYmRyPSIiLCR6di5zYmljb2JnPSIifSh0KSxmdW5jdGlvbih0KXtpZighdClyZXR1cm47dmFyIGU9e2JsYWNrOlsiYmxhY2siLCJibGFjayJdLGdyYXk6WyJncmF5IiwiZ3JheSJdLGJsdWU6WyJibHVlIiwiYmx1ZSJdLGdyZWVuOlsiZ3JlZW4iLCJncmVlbiJdLHJlZDpbInJlZCIsInJlZCJdLHB1cnBsZTpbInB1cnBsZSIsInB1cnBsZSJdfTtlLmhhc093blByb3BlcnR5KHQpPygkenYuZW1iZWR0aGVtZT1lW3RdWzBdLCR6di5lbWJlZGhlYWRlcnRoZW1lPWVbdF1bMV0pOiR6di5lbWJlZHRoZW1lPXR9KHQpfSxmbG9hdGluZ3dpbmRvdzpmdW5jdGlvbih0KXskenYuZm9yY2VmbG9hdGluZ3dpbmRvdz0iYWxsIj09PXR8fCEoImlwYWQiPT09dCYmL2lwYWQvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpKSl9LHRyYW5zZmVyY2hhdDpmdW5jdGlvbih0KXskemNiWyJhZ2VudC50cmFuc2ZlcmNoYXQiXT10fSxhY2NlcHR0cmFuc2ZlcjpmdW5jdGlvbih0KXskemNiWyJhZ2VudC5hY2NlcHR0cmFuc2ZlciJdPXR9LHdhaXRpbWU6ZnVuY3Rpb24odCl7dCYmKCR6di53YWl0aW1lPXQpfSx3YWl0dGltZTpmdW5jdGlvbih0KXt0JiYoJHp2LndhaXRpbWU9dCl9LGNvbnRpbnVlOmZ1bmN0aW9uKHQpe3Q/JHpjYlsiY2hhdC5jb250aW51ZSJdPXQ6X1pTSVEuSlNBUEkuYnJvYWRjYXN0TWVzc2FnZSgic2hvd2NoYXR1aSIse30pfX0sJHpvaG9zcS5jYWxsPXtpbml0aWF0ZWNhbGw6ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiR6b2hvc3Euc2V0VmFsdWUoImluaXRpYXRlY2FsbCIsdCksJHp2LmFnZW50fSxkZXBhcnRtZW50OmZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT10JiYkem9ob3NxLnNldFZhbHVlKCJjYWxsX2RlcGFydG1lbnQiLHQpLCR6di5jYWxsX2RlcGFydG1lbnR9LHN0YXJ0OmZ1bmN0aW9uKCl7dmFyIGU9JFpTSVFVdGlsLmdldElmcmFtZSgpO2lmKCFlLlNpcUFWUm91dGVyKXJldHVybiAkem9ob3NxLnNldFZhbHVlKCJpc0RpcmVjdENhbGwiLCEwKSx2b2lkIGUuJFN1cHBvcnQuZ2V0TWVkaWFMaWJyYXJ5SlMoKTt2YXIgdD17Y29udmVyc2F0aW9udHlwZTowLHN1Y2Nlc3NDYms6ZnVuY3Rpb24odCl7JHpvaG9zcS5fZGlyZWN0Y2FsbD0hMCxfWlNJUS5KU0FQSS5icm9hZGNhc3RNZXNzYWdlKCJjYWxsc3RhcnQiLHt9KSxlLlNpcUFWUm91dGVyLmNvbnRhaW5lci51aUhhbmRsZXIuaW5pdGlhdGVEaXJlY3RDYWxsVUkodCl9LmJpbmQodGhpcyl9O2lmKCFJZnJhbWVIYW5kbGVyLmlzQ2FsbE9ubGluZSgpKXJldHVybiAkem9oby5zYWxlc2lxLmZsb2F0d2luZG93LnZpc2libGUoInNob3ciKSxlLiRTdXBwb3J0LlV0aWwuc2hvd01lc3NhZ2VBcmVhVUkoKSx2b2lkIGUuJFN1cHBvcnQuVXRpbC5jaGVja0FuZEZvY3VzQ29tcG9zZXIoKTtlLlNpcUFWUm91dGVyLmNvbnRhaW5lci5hdWRpb0ltcGwuc3RhcnRBcGlEaXJlY3RDYWxsKHQpLGUuU2lxQVZSb3V0ZXIuY29udGFpbmVyLnVpSGFuZGxlci5pbml0aWF0ZURpcmVjdENhbGxVSSgpfSxpc2F2c3VwcG9ydGVkOmZ1bmN0aW9uKHQpeyR6Y2JbImNhbGwuaXNhdnN1cHBvcnRlZCJdPXR9LGF0dGVuZGVkOmZ1bmN0aW9uKHQpeyR6Y2JbImNhbGwuYXR0ZW5kZWQiXT10fSxjb21wbGV0ZWQ6ZnVuY3Rpb24odCl7JHpjYlsiY2FsbC5jb21wbGV0ZWQiXT10fSxtaXNzZWQ6ZnVuY3Rpb24odCl7JHpjYlsiY2FsbC5taXNzZWQiXT10fSxjYW5jZWxsZWQ6ZnVuY3Rpb24odCl7JHpjYlsiY2FsbC5jYW5jZWxsZWQiXT10fX0sJHpvaG9zcS5yYXRpbmc9e3Zpc2libGU6ZnVuY3Rpb24odCl7dCYmJHpvaG9zcS5zZXRWYWx1ZSgicmF0aW5nLnZpc2libGUiLHQpfX0sJHpvaG9zcS5mZWVkYmFjaz17dmlzaWJsZTpmdW5jdGlvbih0KXt0JiYkem9ob3NxLnNldFZhbHVlKCJmZWVkYmFjay52aXNpYmxlIix0KX19LCR6b2hvc3EuaW50ZWc9e3JlcXVlc3RpZDpmdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmJHpvaG9zcS5zZXRWYWx1ZSgicmVxdWVzdGlkIix0KSwkenYucmVxdWVzdGlkfX0sJHpvaG9zcS5jaGF0YnViYmxlPXt2aXNpYmxlOmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmJ1YmJsZXZpc2libGU9dCksJHp2LmJ1YmJsZXZpc2libGV9LGFuaW1hdGU6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYuYnViYmxlYW5pbWF0ZXRpbWVyPXQpLCR6di5idWJibGVhbmltYXRldGltZXJ9LHNyYzpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5idWJibGVzcmM9dCksJHp2LmJ1YmJsZXNyY30sY2xvc2U6ZnVuY3Rpb24odCl7JHpjYlsiY2hhdGJ1YmJsZS5jbG9zZSJdPXR9fSwkem9ob3NxLmNoYXRidXR0b249e3RleHRzOmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LmJ1dHRvbnRleHRzPXQpLCR6di5idXR0b250ZXh0c30saWNvbjpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5idXR0b25pY29uPXQpLCR6di5idXR0b25pY29ufSx2aXNpYmxlOmZ1bmN0aW9uKHQpe3QmJiR6b2hvc3Euc2V0VmFsdWUoImJ1dHRvbnZpc2libGUiLHQpLCRaU0lRQ29va2llLnNldCgiaXNpZnJhbWVlbmFibGVkIiwhMCw4NjRlNSwhMCk7dHJ5e3poYW5kbGVMaXZlRXZlbnQoImJ1dHRvbnZpc2libGUiLHQpfWNhdGNoKHQpe31yZXR1cm4gJHp2LmJ1dHRvbnZpc2libGV9LG9ubGluZWljb246e3NyYzpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5idXR0b25vbmxpbmVpY29uPXQpLCR6di5idXR0b25vbmxpbmVpY29ufX0sb2ZmbGluZWljb246e3NyYzpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5idXR0b25vZmZsaW5laWNvbj10KSwkenYuYnV0dG9ub2ZmbGluZWljb259fSxjbGljazpmdW5jdGlvbih0KXskemNiWyJjaGF0YnV0dG9uLmNsaWNrIl09dH0sd2lkdGg6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYuYndpZHRoPXQpLCR6di5id2lkdGh9fSwkem9ob3NxLmZsb2F0YnV0dG9uPXtjbG9zZWJ1dHRvbjpmdW5jdGlvbih0KXskem9ob3NxLnNldFZhbHVlKCJjbG9zZWljb24iLHQpfSxwb3NpdGlvbjpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5mbG9hdHBvc2l0aW9uPXQpLCR6di5mbG9hdHBvc2l0aW9ufSx2aXNpYmxlOmZ1bmN0aW9uKHQpe3QmJiR6b2hvc3Euc2V0VmFsdWUoImZsb2F0dmlzaWJsZSIsdCksJFpTSVFDb29raWUuc2V0KCJpc2lmcmFtZWVuYWJsZWQiLCEwLDg2NGU1LCEwKTt0cnl7JFpTSVFXaWRnZXQmJiRaU0lRQ2hhdFdpbmRvdy5oYW5kbGVJZnJhbWVMb2FkaW5nKGZ1bmN0aW9uKCl7JFpTSVFXaWRnZXRVSS5oYW5kbGVXaWRnZXRWaXNpYmxlKHQpfSl9Y2F0Y2godCl7fXJldHVybiAkenYuZmxvYXR2aXNpYmxlfSxvbmxpbmVpY29uOntzcmM6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYuZmxvYXRidXR0b25vbmxpbmVzcmM9dCksJHp2LmZsb2F0YnV0dG9ub25saW5lc3JjfX0sb2ZmbGluZWljb246e3NyYzpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5mbG9hdGJ1dHRvbm9mZmxpbmVzcmM9dCksJHp2LmZsb2F0YnV0dG9ub2ZmbGluZXNyY319LGNsaWNrOmZ1bmN0aW9uKHQpeyR6Y2JbImZsb2F0YnV0dG9uLmNsaWNrIl09dH0sY29pbjp7aGlkZXRvb2x0aXA6ZnVuY3Rpb24oKXt0cnl7JHp2LmlzaGlkZXRvb2x0aXA9ITAsJFpTSVFXaWRnZXQmJiRaU0lRQ2hhdFdpbmRvdy5oYW5kbGVJZnJhbWVMb2FkaW5nKGZ1bmN0aW9uKCl7JFpTSVFXaWRnZXRVSS5jaGVja0FuZEhpZGVDb2luVG9vbFRpcCgpfSl9Y2F0Y2godCl7fX19fSwkem9ob3NxLmNoYXR3aW5kb3c9e3Zpc2libGU6ZnVuY3Rpb24odCl7dCYmKCR6di5jaGF0d2luZG93dmlzaWJsZT10KSwkWlNJUUNvb2tpZS5zZXQoImlzaWZyYW1lZW5hYmxlZCIsITAsODY0ZTUsITApLCJoaWRlIiE9dCYmKCR6b2hvc3EuZmlsZWxvYWR0aW1lPTApO3RyeXt6aGFuZGxlTGl2ZUV2ZW50KCJjaGF0d2luZG93dmlzaWJsZSIsdCl9Y2F0Y2godCl7fXJldHVybiAkenYuY2hhdHdpbmRvd3Zpc2libGV9LHJlbG9hZDpmdW5jdGlvbigpe0lmcmFtZUhhbmRsZXIuY2hhdHdpbmRvd1JlbG9hZCgpfSxjbG9zZWJ1dHRvbjpmdW5jdGlvbih0KXsiaGlkZSI9PT10JiYoJHp2LmNsb3NlYnV0dG9uPXQpfSxvcGVuOmZ1bmN0aW9uKCl7JHp2LmlzQ2hhdHdpbmRvd09wZW49ITB9fSwkem9ob3NxLmZsb2F0d2luZG93PXt2aXNpYmxlOmZ1bmN0aW9uKHQsZSxvKXt0JiYoJHp2LmZsb2F0d2luZG93dmlzaWJsZT10KSwkWlNJUUNvb2tpZS5zZXQoImlzaWZyYW1lZW5hYmxlZCIsITAsODY0ZTUsITApLCJoaWRlIiE9dCYmKCR6b2hvc3EuZmlsZWxvYWR0aW1lPTApO3RyeXtpZighJFpTSVFVdGlsLmdldElmcmFtZSgpJiYod2luZG93Ll9JU19SRVZBTVB8fCRaU0lRQ2hhdFdpbmRvdy5nZXRJZnJhbWVMb2FkZXIoKSkmJiJoaWRlIiE9dClyZXR1cm4gJFpTSVFDaGF0V2luZG93LmNsZWFySWZyYW1lTG9hZGVyKCksdm9pZCAkWlNJUUNoYXRXaW5kb3cucG9wdWxhdGVJZnJhbWUoZnVuY3Rpb24oKXskWlNJUUNoYXRXaW5kb3cuaGFuZGxlQ2hhdFdpbmRvd1Zpc2libGUodCwhMSxlLG8sIXdpbmRvdy5JU19CT1RfVFJJR0dFUl9PTl9KU0FQSSl9KTskWlNJUVdpZGdldCYmJFpTSVFDaGF0V2luZG93LmhhbmRsZUlmcmFtZUxvYWRpbmcoZnVuY3Rpb24oKXskWlNJUUNoYXRXaW5kb3cuaGFuZGxlQ2hhdFdpbmRvd1Zpc2libGUodCwhMSxlLG8sIXdpbmRvdy5JU19CT1RfVFJJR0dFUl9PTl9KU0FQSSl9KX1jYXRjaCh0KXt9cmV0dXJuICR6di5mbG9hdHdpbmRvd3Zpc2libGV9LG9wZW46ZnVuY3Rpb24odCl7dD8kemNiWyJjaGF0Lm9wZW4iXT10OnRoaXMudmlzaWJsZSgic2hvdyIpfSxjbG9zZTpmdW5jdGlvbih0KXt0PyR6Y2JbImNoYXQuY2xvc2UiXT10OnRoaXMudmlzaWJsZSgiaGlkZSIpfSxtaW5pbWl6ZTpmdW5jdGlvbih0KXtpZih0KSR6Y2JbImZsb2F0d2luZG93Lm1pbmltaXplIl09dDtlbHNlIHRyeXskWlNJUUNoYXRXaW5kb3cubWluaW1pemVDaGF0V2luZG93KCEwKX1jYXRjaCh0KXt9fSxvbmxpbmV0aXRsZTpmdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmJHpvaG9zcS5zZXRWYWx1ZSgiZmxvYXR3aW5kb3dvbmxpbmV0aXRsZSIsdCksJHp2LmZsb2F0d2luZG93b25saW5ldGl0bGV9LG9mZmxpbmV0aXRsZTpmdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmJHpvaG9zcS5zZXRWYWx1ZSgiZmxvYXR3aW5kb3dvZmZsaW5ldGl0bGUiLHQpLCR6di5mbG9hdHdpbmRvd29mZmxpbmV0aXRsZX0sZmllbGRzOmZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT10JiYoJHp2LmZsb2F0d2luZG93ZmllbGRzPXQpLCR6di5mbG9hdHdpbmRvd2ZpZWxkc30sZGVmYXVsdHZpZXc6ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJigkenYuZGVmYXVsdHZpZXc9dCksJHp2LmRlZmF1bHR2aWV3fX0sJHpvaG9zcS5jdXN0b209e2h0bWw6ZnVuY3Rpb24odCxlKXtpZih0JiZlKXskenYuY3VzdG9taHRtbD1bdCxlXTt0cnl7JFpTSVFDaGF0V2luZG93LmRyYXdDdXN0b21IVE1MKCl9Y2F0Y2godCl7fX1yZXR1cm4gJHp2LmZsb2F0YnV0dG9uZHJhd319LCR6b2hvc3EuY3VzdG9tZmllbGQ9e2FkZDpmdW5jdGlvbih0KXt2YXIgZT0iY3VzdG9tZmllbGQiO2lmKHQpe3ZhciBvPSR6dltlXT0kenZbZV18fFtdO3RoaXMuX3NwbGljZShbdC5uYW1lXSxvKSwkenZbZV0ucHVzaCh0KSxfWlNJUS5KU0FQSS5icm9hZGNhc3RNZXNzYWdlKGUsJHp2W2VdKX19LGNsZWFyOmZ1bmN0aW9uKHQpe3ZhciBlPSJjdXN0b21maWVsZCI7dHx8KCR6dltlXT1bXSx0PVtdKSwiW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpJiZ0aGlzLl9zcGxpY2UodCwkenZbZV18fFtdKX0saGFuZGxlQ2FsbGJhY2tzOmZ1bmN0aW9uKHQpe2lmKHQpe3ZhciBlPXRoaXMuX2dldE9iamVjdCh0Lm5hbWUpO2UmJmUuY2FsbGJhY2smJmUuY2FsbGJhY2sodC52YWwpfX0sX2dldE9iamVjdDpmdW5jdGlvbih0KXt2YXIgZT0kenYuY3VzdG9tZmllbGQ7aWYoZSYmIShlLmxlbmd0aDwxKSlmb3IodmFyIG89MDtvPGUubGVuZ3RoO28rKylpZihlW29dLm5hbWU9PXQpcmV0dXJuIGVbb119LF9zcGxpY2U6ZnVuY3Rpb24odCxlKXtmb3IodmFyIG89ImNsZWFyZmllbGQiLGk9MDtpPHQubGVuZ3RoO2krKyl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspaWYoZVtuXS5uYW1lPT10W2ldKXtlLnNwbGljZShuLDEpLF9aU0lRLkpTQVBJLmJyb2FkY2FzdE1lc3NhZ2UoImNsZWFyY3VzdG9tZmllbGQiLFt0W2ldXSk7YnJlYWt9L14oc2lxX25hbWV8c2lxX2VtYWlsfHNpcV9waG9uZXwpJC8uZXhlYyh0W2ldKSYmKCR6dltvXSYmJHp2W29dLnB1c2godFtpXSksX1pTSVEuSlNBUEkuYnJvYWRjYXN0TWVzc2FnZShvLFt0W2ldXSkpfX19LCR6b2hvc3EuZ2V0V2lkZ2V0RGV0YWlscz1mdW5jdGlvbigpe3ZhciB0PSgoJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKXx8e30pLmVtYmVkb2JqfHx7fSkucGluZm98fHt9O3JldHVybntzb2lkOnQuc29pZCxzY3JlZW5OYW1lOnQuc2NyZWVubmFtZX19LCR6b2hvc3EucmVzZXQ9ZnVuY3Rpb24odCl7dmFyIGU9KHR8fHt9KS5lc3NlbnRpYWw7JHpvaG9zcS5yZXNldEVzc2VudGlhbD1lLCR6di5yZXNldD0ib24iO3ZhciBvPSRaU0lRVXRpbC5nZXRJZnJhbWUoKSxpPSRaU0lRV2lkZ2V0LmdldFdpZGdldE9iamVjdCgpLG49aS5sc2lkO2lmKCFlJiZvJiZvLiRTdXBwb3J0JiZvLiRTdXBwb3J0LmlzQ2hhdEV4aXN0KCkmJm8uJFN1cHBvcnQucXVpdENvbm5lY3RlZENoYXRzKCksJFpTSVFVVFMuY2xlYXJVdHNBcGl2YWx1ZXMoKSwkWlNJUVVUUy5jbGVhckxvY2FsVmFsdWVzKCksJFpTSVFVVFNBY3Rpb24uY2xlYXJMb2NhbFZhbHVlcygpLCRaU0lRVXRpbC5jaGVja1RyYWNraW5nRW5hYmxlZCgpKXtlPyRaTm90aWZ5VHJhY2tpbmcoNik6JHpvaG9zcS52aXNpdG9yLmRlc3Ryb3kobiksJFpOb3RpZnlUcmFja2luZygxLCJvZmYiKTt2YXIgYT0kWlNJUVdpZGdldC5nZXRFbWJlZE9iamVjdCgpLnBpbmZvLnBpbmZvO2V8fDE9PUpTT04ucGFyc2UoYS5pc2dkcHJlbmFibGVkKSYmMCE9SlNPTi5wYXJzZShhLnRyYWNraW5ncHJpdmFjeWNvbmZpZykmJjE9PWkuaXNnZHByZW5hYmxlZHx8JFpOb3RpZnlUcmFja2luZygxLCJvbiIpfSFlJiYkWlNJUUxTREIucmVtb3ZlQWxsU3RvcmFnZSgpLElmcmFtZUhhbmRsZXIuY2xlYXJBUElWYWx1ZXMoKSwkenY9JHpvaG9zcS52YWx1ZXM9e30sJFpTSVFDaGF0LmluaXQoKX0sJHpvaG9zcS5wYXN0Y2hhdD17dmlzaWJsZTpmdW5jdGlvbih0KXt0JiYkem9ob3NxLnNldFZhbHVlKCJwYXN0Y2hhdHZpc2libGUiLHQpfX0sJHpvaG9zcS5maWVsZD17Y2xlYXI6ZnVuY3Rpb24odCl7JHp2LmNsZWFyZmllbGQ9W10sJHpvaG9zcS5jdXN0b21maWVsZC5jbGVhcih0KX19LCR6b2hvc3EudHJhY2tpbmc9e29uOmZ1bmN0aW9uKCl7JHp2LnRyYWNraW5nPSJvbiIsJFpTSVFVdGlsLmdldEFQSVZhbHVlcygpLnRyYWNraW5nPSJvbiIsJFpOb3RpZnlUcmFja2luZygxLCJvbiIpfSxvZmY6ZnVuY3Rpb24oKXskenYudHJhY2tpbmc9Im9mZiIsJFpTSVFVdGlsLmdldEFQSVZhbHVlcygpLnRyYWNraW5nPSJvZmYiLCRaTm90aWZ5VHJhY2tpbmcoMSwib2ZmIil9LGRvbWFpbjpmdW5jdGlvbih0KXt2YXIgZT13aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7dCYmLTEhPT1lLmluZGV4T2YodCxlLmxlbmd0aC10Lmxlbmd0aCkmJigkem9ob3NxLnV0c3ZhbHVlcy50cmFja2luZ2RvbWFpbj10KX0sYWxsb3dNdWx0aVRyaWdnZXI6ZnVuY3Rpb24odCl7JHp2Lm10cmlnZ2VyPSRaU0lRVXRpbC5nZXRBUElWYWx1ZXMoKS5tdHJpZ2dlcj0hIXR9LGVxYXVsSG9zdHM6ZnVuY3Rpb24odCl7aWYoIXQpcmV0dXJuICR6b2hvc3EudXRzdmFsdWVzLmVxdWFsaG9zdHM7dmFyIGU9dC5zcGxpdCgiLCIpOyR6b2hvc3EudXRzdmFsdWVzLmVxdWFsaG9zdHN8fCgkem9ob3NxLnV0c3ZhbHVlcy5lcXVhbGhvc3RzPVtdKTtmb3IodmFyIG89MDtvPGUubGVuZ3RoO28rKyl7dmFyIGk9ZVtvXS50cmltKCksbj0hMTtpZigkem9ob3NxLnV0c3ZhbHVlcy5lcXVhbGhvc3RzKWZvcih2YXIgYT0wO2E8JHpvaG9zcS51dHN2YWx1ZXMuZXF1YWxob3N0cy5sZW5ndGg7YSsrKXtpZigkem9ob3NxLnV0c3ZhbHVlcy5lcXVhbGhvc3RzW2FdPT1pKXtuPSEwO2JyZWFrfX1ufHwkem9ob3NxLnV0c3ZhbHVlcy5lcXVhbGhvc3RzLnB1c2goaSl9cmV0dXJuICR6b2hvc3EudXRzdmFsdWVzLmVxdWFsaG9zdHN9LGdldHNpcWlkOmZ1bmN0aW9uKCl7cmV0dXJuICRVVFNIYW5kbGVyLmdldFNJUUlEKCl9LGZvcmNlc2VjdXJlOmZ1bmN0aW9uKHQpe3QmJigkem9ob3NxLnV0c3ZhbHVlcy5mb3JjZXNlY3VyZT0hMCl9LGlzTGl2ZTpmdW5jdGlvbigpe3JldHVybiEhJFpTSVFVVFMuaXNUcmFja2luZ0xpdmUoKX19LCR6b2hvc3EubGFuZ3VhZ2U9ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYubGFuZ3VhZ2U9dCksJHp2Lmxhbmd1YWdlfSwkem9ob3NxLnBlcnNvbmFsaXplPXthZ2VudG9yZGVyOmZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT10JiYkem9ob3NxLnNldFZhbHVlKCJhZ2VudG9yZGVyIix0KSwkenYuYWdlbnRvcmRlcn19LCR6b2hvc3Euc2V0PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZSBpbiB0KXRyeXtmb3IodmFyIG89ZS5zcGxpdCgiLiIpLGk9dGhpc1tvWzBdXSxuPTE7bjxvLmxlbmd0aDtuKyspb1tuXSYmKGk9aVtvW25dXSk7ImZ1bmN0aW9uIj09dHlwZW9mIGkmJmkodFtlXSl9Y2F0Y2godCl7fX0sJHpvaG9zcS5zZXRWYWx1ZT1mdW5jdGlvbih0LGUsbyl7aWYobnVsbCE9ZSYmdCYmKCR6dlt0XT1lLF9aU0lRLkpTQVBJLmJyb2FkY2FzdE1lc3NhZ2UodCxlKSxvKSl7dmFyIGk9e307aVt0XT1lLCRaTm90aWZ5VHJhY2tpbmcobyxpKX19LCR6b2hvLmxkPXt9LCR6b2hvLmxkLmhhbmRsZT17Y3VzdG9tQ2xpY2s6ZnVuY3Rpb24odCl7dmFyIGU9JHpvaG9zcS52YWx1ZXMuY3VzdG9taHRtbDtpZighZSlyZXR1cm4hMTt2YXIgbz1lWzFdW3QrIi5jbGljayJdO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBvKW8oKTtlbHNlIHRyeXskWlNJUUNoYXRXaW5kb3cub3BlbkNoYXRXaW5kb3coKX1jYXRjaCh0KXt0cnl7emxzSGFuZGxlQ3VzdG9tQ2xpY2soKX1jYXRjaCh0KXt9fX19LCR6b2hvc3EucHJpdmFjeT17dHJhY2tpbmdiYW5uZXJjb250ZW50OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYoJHp2LnRyYWNrYmFubmVyb2JqPXQpLCR6di50cmFja2Jhbm5lcm9ian0sY2hhdGJhbm5lcmNvbnRlbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHQmJigkenYudGV4dGJhbm5lcm9iaj10KSwkenYudGV4dGJhbm5lcm9ian0sY29udGVudDpmdW5jdGlvbih0KXtyZXR1cm4gdCYmKCR6di5jaGF0cHJpdmFjeWNvbnRlbnQ9dCksJHp2LmNoYXRwcml2YWN5Y29udGVudH0sZ2V0Q29va2llTGlzdDpmdW5jdGlvbigpe2Zvcih2YXIgdD0kWlNJUVV0aWwuZGVlcENsb25lKCRaU0lRTm90aWZ5Q29va2llLmdldENvb2tpZUxpc3QoKSksZT17cGVyZm9ybWFuY2U6W10sYW5hbHl0aWNzOltdLGVzc2VudGlhbDpbXX0sbz10Lmxlbmd0aCxpPTA7aTxvO2krKyl7dmFyIG49dFtpXSxhPW4udHlwZTsiZnVuY3Rpb25hbGl0eSI9PT1hPyhuLnR5cGU9InBlcmZvcm1hbmNlIixlLnBlcmZvcm1hbmNlLnB1c2gobikpOiJhbmFseXRpY3MiPT09YT9lLmFuYWx5dGljcy5wdXNoKG4pOihuLnR5cGU9ImVzc2VudGlhbCIsZS5lc3NlbnRpYWwucHVzaChuKSl9cmV0dXJuIGV9LHVwZGF0ZUNvb2tpZUNvbnNlbnQ6ZnVuY3Rpb24odCl7JFpTSVFVVFMuaXNUcmFja2luZ0xpdmUoKXx8KCR6b2hvc3Euc2V0VmFsdWUoImNvb2tpZWNvbnNlbnQiLHQpLHdpbmRvdy4kWlNJUVdpZGdldD8kWlNJUVV0aWwuc2V0VHJhY2tpbmdTdGF0dXMoKTokWlNJUVV0aWwubWFuYWdlQ29va2llPSEwKX19LCR6b2hvc3EuZGVwYXJ0bWVudD17YmFubmVyVGV4dDpmdW5jdGlvbih0KXt2YXIgZT10Lm9mZmxpbmUsbz10LmVuZ2FnZWQ7ZSYmJHpvaG9zcS5zZXRWYWx1ZSgib2ZmbGluZUJhbm5lclRleHQiLGUpLG8mJiR6b2hvc3Euc2V0VmFsdWUoImVuZ2FnZWRCYW5uZXJUZXh0IixvKX19LCR6b2hvc3EuZG9tYWluPWZ1bmN0aW9uKHQpeyR6b2hvc3EudHJhY2tpbmcuZG9tYWluKHQpLCR6b2hvc3EuX2RvbWFpbj10fSwkem9ob3NxLnZhbmlzaD1mdW5jdGlvbigpe3ZhciB0PUpTT04uc3RyaW5naWZ5KHt9KTtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgic2lxbHNkYiIsdCksbG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIix0KSxzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ1dHNkYiIsdCk7Zm9yKHZhciBlPSRaU0lRTm90aWZ5Q29va2llLmNvb2tpZUxpc3QoKSxvPTA7bzxlLmxlbmd0aDtvKyspe3ZhciBpPWtleXNbb10sbj0kVVRTSGFuZGxlci5nZXREb21haW4oKSxhPW5ldyBEYXRlO2lmKGEuc2V0VGltZShhLmdldFRpbWUoKS0xKSwhbilyZXR1cm4gdm9pZChkb2N1bWVudC5jb29raWU9JFpTSVFVdGlsLmdldFNlY3VyZUNvb2tpZUtleShpKyI9O2V4cGlyZXM9IithLnRvR01UU3RyaW5nKCkrIjsiKSk7dmFyIHM9aSsiPTtleHBpcmVzPSIrYS50b0dNVFN0cmluZygpKyI7IjtzKz0icGF0aD0vOyIsZG9jdW1lbnQuY29va2llPSRaU0lRVXRpbC5nZXRTZWN1cmVDb29raWVLZXkocysiZG9tYWluPSIrbisiOyIpfWZvcih2YXIgcj1bIiRaU0lRTFNEQiIsIiRaU0lRQ29va2llIiwiSWZyYW1lSGFuZGxlciIsIiR6c2Fsb2JqIiwiJHpzYWxvYmpyZXN0cmljdGVkIiwiVURIYW5kbGVyIiwiWlNJUUpXVFZlcmlmeSIsIiRaU0lRVXRpbCIsIiRaU0lRTGljZW5jZSIsImhhbmRsZUlmcmFtZUZ1bmN0aW9uIiwiJFVUU0hhbmRsZXIiLCIkWlNJUVVUUyIsIiRaU0lRVVRTQWN0aW9uIiwiUmVzcG9uc2VGb3JtYXR0ZXIiLCIkWlNJUU5vdGlmeUNvb2tpZSIsIiRaU0lRQ2hhdCIsImlzZG9tbG9hZGhhbmRsZWQiLCJXRUJTSVRFX1ZJU0lUT1JfQVBJX0ZMT1dfRU5BQkxFRCIsIk5FV19TVEFUSUNfVVJMUyIsIl9TVEFUSUNfVVJMIiwiX1pTSVEiLCIkWlNJUUFuYWx5dGljcyIsIiRaU0lRQXV0b3BpY2siLCIkem9ob3NxIiwiJHpjYiIsIiR6diIsIiR6bG0iLCIkemxjaCIsIiR6bGEiLCIkWlNJUV9VVFNpbml0aWFsaXplZCIsIiRaU2lzVGhyZXNob2xkRXhjZWVkZWQiLCIkWkRlc3Ryb3lGbG9hdERhdGEiLCIkWk5vdGlmeVRyYWNraW5nIiwiJFpTaGFuZGxlRXZlbnQiLCJTSVFfRkxPQVQiLCJTSVFfQlVUVE9OIiwiU0lRX1BFUlNPTkFMSVpFIiwiX1dJTkRPV19SRVBPUFVMQVRFIiwiYXBpX2xhbmciLCJfV0VCU0lURUFQSVJFU1BPTlNFIiwiX0lTX1JFVkFNUCIsImlzY2RuZW5hYmxlZCIsImNzc2pzbGlzdCIsImFjdHVhbGNzc2ZpbGUiLCJhY3R1YWxqc2ZpbGUiLCIkWlNJUUNoYXRXaW5kb3ciLCJ6c2lxZHJhZyIsIiRaU0lRVGVtcGxhdGUiLCIkWlNJUVdpZGdldFVJIiwiJFpTSVFXaWRnZXQiXSxsPTA7bDxyLmxlbmd0aDtsKyspd2luZG93W3JbbF1dPXZvaWQgMCxkZWxldGUgd2luZG93W3JbbF1dO2RlbGV0ZSB3aW5kb3cuJHpvaG8uc2FsZXNpcSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1pZD0ienNpcWVtYmVkIl0nKS5yZW1vdmUoKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgienNpcWNoYXQiKS5yZW1vdmUoKTt2YXIgYz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1pZD0ienNhbGVzaXEiJyk7Zm9yKGw9MDtsPGMubGVuZ3RoO2wrKyljW2xdLnJlbW92ZSgpfSwkem9ob3NxLnNldD1mdW5jdGlvbih0LGUpeyJob21lLndpZGdldHMiPT09dCYmJHpvaG9zcS5zZXRWYWx1ZSgiaG9tZVdpZGdldHMiLGUpfX1jYXRjaCh0KXt9JFpTaXNUaHJlc2hvbGRFeGNlZWRlZD1mdW5jdGlvbih0LGUpe3ZhciBvPU1hdGguZmxvb3IoKG5ldyBEYXRlKS5nZXRUaW1lKCkvNmU0KTtpZihvPXQrIl8iK28sInVuZGVmaW5lZCI9PXR5cGVvZiAkWlNJUVVUUylyZXR1cm4hMTt2YXIgaT0kVVRTSGFuZGxlci5nZXRGcm9tU2Vzc2lvbihvKTtyZXR1cm4gaXx8KGk9MCksJFVUU0hhbmRsZXIuc3RvcmVJblNlc3Npb24obywrK2kpLGU8aX0sJFpEZXN0cm95RmxvYXREYXRhPXdpbmRvdy4kWkRlc3Ryb3lGbG9hdERhdGF8fGZ1bmN0aW9uKHQpe3ZhciBlPUpTT04uc3RyaW5naWZ5KCJ7fSIpO3RyeXtzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJsc2RiIixlKX1jYXRjaCh0KXt9dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJsc2RiIixlKX1jYXRjaCh0KXt9dHJ5e2Zvcih2YXIgbz1bInpsZCIrdCsiZmxvYXQiLCJ6bGQiK3QrImRyYWdwb3MiLCJaTEQiK3QrIldUSU1FIiwiWkxEIit0LCJaTEQiK3QrIldBSVRJTkciLCJaTERUUklHR0VSIit0LCJaTEQiK3QrIlZJU0lUT1JJTkZPIl0saT0wO2k8by5sZW5ndGg7aSsrKXt2YXIgbj1vW2ldKyI9IDtleHBpcmVzPSAiK25ldyBEYXRlKC0xKS50b0dNVFN0cmluZygpO3RyeXt2YXIgYT1GbG9hdC5nZXREb21haW4oKTtuKz1hPyI7ZG9tYWluPSIrYToiIn1jYXRjaCh0KXt9ZG9jdW1lbnQuY29va2llPW4sbis9InBhdGg9LzsiLGRvY3VtZW50LmNvb2tpZT1ufX1jYXRjaCh0KXt9fSwkWk5vdGlmeVRyYWNraW5nPXdpbmRvdy4kWk5vdGlmeVRyYWNraW5nfHxmdW5jdGlvbih0LGUpe2lmKCRaU0lRX1VUU2luaXRpYWxpemVkfHx3aW5kb3cuJFVUU0Nvbm5lY3Rvcil0cnl7JFVUU0hhbmRsZXIuaGFuZGxlQXBpQ2hhbmdlKHQsZSl9Y2F0Y2godCl7fX0sJFpTaGFuZGxlRXZlbnQ9d2luZG93LiRaU2hhbmRsZUV2ZW50fHxmdW5jdGlvbih0LGUsbyl7dHJ5eyR6b2hvc3EuaGFuZGxlQW5hbHl0aWNFdmVudHModCxlLG8pfWNhdGNoKHQpe319LF9aU0lRLkpTQVBJLmJyb2FkY2FzdE1lc3NhZ2U9d2luZG93Ll9aU0lRLkpTQVBJLmJyb2FkY2FzdE1lc3NhZ2V8fGZ1bmN0aW9uKHQsZSl7aWYoJFpTSVFfVVRTaW5pdGlhbGl6ZWQpdHJ5e3ZhciBvPXt9O29bdF09ZSwkWlNJUVV0aWwudXBkYXRlQXBpVmFsdWVzKCksSWZyYW1lSGFuZGxlci51cGRhdGVKc0FwaVZhbHVlKG8sITApfWNhdGNoKHQpe310cnl7QWdlbnRzQ2hhdC5icm9hZGNhc3RNZXNzYWdlKHQsZSl9Y2F0Y2godCl7fXRyeXt6bHNXaW5Ccm9hZGNhc3RNZXNzYWdlKHQsZSl9Y2F0Y2godCl7fXRyeXt6bHNCdG5Ccm9hZGNhc3RNZXNzYWdlKHQsZSl9Y2F0Y2godCl7fX0sX1pTSVEuSlNBUEkuaWRlbnRpZnlTSVFQYXJhbT13aW5kb3cuX1pTSVEuSlNBUEkuaWRlbnRpZnlTSVFQYXJhbXx8ZnVuY3Rpb24oKXt2YXIgdCxlLG8saT1mdW5jdGlvbih0KXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KCh0KyIiKS5yZXBsYWNlKC9cKy9nLCIlMjAiKSl9O3RyeXt2YXIgbj17fSxhPXdpbmRvdy5sb2NhdGlvbi5zZWFyY2gscz13aW5kb3cubG9jYXRpb24uaGFzaDtpZighYSYmcyl7dmFyIHI9cy5zcGxpdCgiPyIpO3JbMV0mJihhPXJbMV0pfWlmKCFhKXJldHVybjtmb3IodmFyIGw9KGE9YS5yZXBsYWNlKC9eXD8vZywiIikpLnNwbGl0KCImIiksYz1bXSx1PTA7dTxsLmxlbmd0aDt1KyspbltpKChjPWxbdV0uc3BsaXQoIj0iKSlbMF0pXT1pKGNbMV0pO251bGwhPW4uc2lxX2VlbWFpbD8kem9ob3NxLnNldFZhbHVlKCJlX2VtYWlsIixuLnNpcV9lZW1haWwpOm51bGwhPW4uc2lxX2VtYWlsPyR6b2hvc3EudmlzaXRvci5lbWFpbChuLnNpcV9lbWFpbCk6bnVsbCE9bi5vbV9lbWFpbCYmJHpvaG9zcS52aXNpdG9yLmVtYWlsKG4ub21fZW1haWwpLG51bGwhPW4uc2lxX2VuYW1lPyR6b2hvc3Euc2V0VmFsdWUoImVfbmFtZSIsbi5zaXFfZW5hbWUpOm51bGwhPW4uc2lxX25hbWU/JHpvaG9zcS52aXNpdG9yLm5hbWUobi5zaXFfbmFtZSk6bnVsbCE9bi5vbV9uYW1lJiYkem9ob3NxLnZpc2l0b3IubmFtZShuLm9tX25hbWUpLHQ9bG9jYXRpb24uaHJlZi5zcGxpdCgiPyIpWzBdLGU9bG9jYXRpb24uc2VhcmNoLG89bG9jYXRpb24uaGFzaCxlJiYodCs9KGU9KGU9KGU9ZS5yZXBsYWNlKC9eXD8vZywiIikpLnJlcGxhY2UoLyhefCYpc2lxXyhuYW1lfGVtYWlsfGVuYW1lfGVlbWFpbCk9W14mXSovZywiIikpLnJlcGxhY2UoL14mL2csIiIpKT8iPyIrZStvOm8sd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKHdpbmRvdy5oaXN0b3J5LnN0YXRlLCIiLHQpKX1jYXRjaCh0KXt9fTt0cnl7dmFyICR6c2Fsb2JqPXdpbmRvdy4kenNhbG9ianx8e30sJHpzYWxvYmpyZXN0cmljdGVkPXdpbmRvdy4kenNhbG9ianJlc3RyaWN0ZWR8fHt9OyR6b2hvc3EuaW5pdD1mdW5jdGlvbigpeyR6c2Fsb2JqJiYwPT1PYmplY3Qua2V5cygkenNhbG9iaikubGVuZ3RoJiYoJHpzYWxvYmo9eyJjaGF0YnV0dG9uLmNsaWNrIjpbIkJ1dHRvbiBDbGlja2VkIiwiQ2xpY2sgb24gdGhlICIrX1pTSVEuYnJhbmRuYW1lKyIgU2FsZXNJUSBjaGF0IGJ1dHRvbi4iXSwiZmxvYXRidXR0b24uY2xpY2siOlsiQnV0dG9uIENsaWNrZWQiLCJDbGljayBvbiB0aGUgIitfWlNJUS5icmFuZG5hbWUrIiBTYWxlc0lRIGNoYXQgYnV0dG9uLiJdLCJjaGF0LmNsb3NlIjpbIkNoYXQgQ2xvc2VkIiwiQ2xpY2sgb24gdGhlIENsb3NlIChYKSBpY29uIGluIHRoZSBjaGF0IHdpbmRvdy4iXSwiZmxvYXR3aW5kb3cubWluaW1pemUiOlsiQ2hhdCBNaW5pbWl6ZWQiLCJDbGljayB0byBtaW5pbWl6ZSB0aGUgIitfWlNJUS5icmFuZG5hbWUrIiBTYWxlc0lRIGNoYXQgd2luZG93LiJdLCJjaGF0YnViYmxlLmNsb3NlIjpbIkJ1YmJsZSBDbG9zZWQiLCJDbGljayBvbiB0aGUgQ2xvc2UoWCkgaWNvbiBvbiB0aGUgY2hhdCBidWJibGUuIl0sInZpc2l0b3IuYXR0ZW5kIjpbIkNoYXQgQ29ubmVjdGVkIiwiQ2hhdCBzZXNzaW9ucyB3aXRoIHRoZSB2aXNpdG9ycy4iLCJ3YWl0aW5nZHVyYXRpb24iXSwidmlzaXRvci5jaGF0Y29tcGxldGUiOlsiQ2hhdCBFbmRlZCIsIkNoYXQgZW5kZWQgYnkgdGhlIHZpc2l0b3JzLiIsImNoYXRkdXJhdGlvbiJdLCJjaGF0LmZpbGUiOlsiRmlsZSBUcmFuc2ZlcnJlZCIsIkZpbGUgdHJhbnNmZXJzIG1hZGUgYnkgdGhlIHZpc2l0b3JzLiJdLCJjaGF0LnByaW50IjpbIkNoYXQgUHJpbnRlZCIsIkNoYXQgdHJhbnNjcmlwdHMgcHJpbnRlZCBieSB0aGUgdmlzaXRvcnMuIl0sImNoYXQubWFpbCI6WyJDaGF0IE1haWwgc2VudCIsIkNoYXQgdHJhbnNjcmlwdHMgZW1haWxlZCBieSB0aGUgdmlzaXRvci4iXSwidmlzaXRvci5yYXRpbmciOlsiUmF0aW5nIFN1Ym1pdHRlZCIsIlJhdGluZyBzdWJtaXR0ZWQgYnkgdmlzaXRvcnMuIiwicmF0aW5nIl0sInZpc2l0b3IuZmVlZGJhY2siOlsiRmVlZGJhY2sgU3VibWl0dGVkIiwiRmVlZGJhY2sgbWVzc2FnZXMgc3VibWl0dGVkIGJ5IHZpc2l0b3JzLiJdLCJ2aXNpdG9yLmNoYXR0cmlnZ2VyIjpbIkNoYXQgVHJpZ2dlcnJlZCIsIkF1dG8gYW5kIHByb2FjdGl2ZSBjaGF0IGluaXRpYXRlZCB0byB0aGUgdmlzaXRvcnMuIl0sInZpc2l0b3IudHJpZ2dlcnJlc3BvbmRlZCI6WyJUcmlnZ2VyIFJlc3BvbmRlZCIsIlZpc2l0b3IgcmVzcG9uZGVkIHRvIHRyaWdnZXIgb3IgcHJvYWN0aXZlIGNoYXQuIl0sInZpc2l0b3IuY2hhdCI6WyJDaGF0IEluaXRpYXRlZCIsIlZpc2l0b3IgaW5pdGlhdGVkIGNoYXRzLiJdLCJ2aXNpdG9yLm9mZmxpbmUiOlsiT2ZmbGluZSBNZXNzYWdlIFN1Ym1pdHRlZCIsIk9mZmxpbmUgbWVzc2FnZXMgc3VibWl0dGVkIGJ5IHRoZSB2aXNpdG9ycy4iXSwidmlzaXRvci5taXNzZWQiOlsiQ2hhdCBNaXNzZWQiLCJDaGF0IG1pc3NlZCBieSB0aGUgU2FsZXNJUSB1c2Vycy4iXSwiY2hhdC52aXNpdG9yZW5kIjpbIkNoYXQgRW5kZWQgYnkgdmlzaXRvciIsIkNoYXRzIGVuZGVkIGJ5IHRoZSB2aXNpdG9ycy4iXX0sJHpzYWxvYmpyZXN0cmljdGVkPXsiY2hhdGJ1dHRvbi5jbGljayI6WyJCdXR0b24gQ2xpY2tlZCIsIkNsaWNrIG9uIHRoZSAiK19aU0lRLmJyYW5kbmFtZSsiIFNhbGVzSVEgY2hhdCBidXR0b24uIl0sImZsb2F0YnV0dG9uLmNsaWNrIjpbIkJ1dHRvbiBDbGlja2VkIiwiQ2xpY2sgb24gdGhlICIrX1pTSVEuYnJhbmRuYW1lKyIgU2FsZXNJUSBjaGF0IGJ1dHRvbi4iXSwiY2hhdC5jbG9zZSI6WyJDaGF0IENsb3NlZCIsIkNsaWNrIG9uIHRoZSBDbG9zZSAoWCkgaWNvbiBpbiB0aGUgY2hhdCB3aW5kb3cuIl0sImZsb2F0d2luZG93Lm1pbmltaXplIjpbIkNoYXQgTWluaW1pemVkIiwiQ2xpY2sgdG8gbWluaW1pemUgdGhlICIrX1pTSVEuYnJhbmRuYW1lKyIgU2FsZXNJUSBjaGF0IHdpbmRvdy4iXSwiY2hhdGJ1YmJsZS5jbG9zZSI6WyJCdWJibGUgQ2xvc2VkIiwiQ2xpY2sgb24gdGhlIENsb3NlKFgpIGljb24gb24gdGhlIGNoYXQgYnViYmxlLiJdLCJ2aXNpdG9yLmF0dGVuZCI6WyJDaGF0IENvbm5lY3RlZCIsIkNoYXQgc2Vzc2lvbnMgd2l0aCB0aGUgdmlzaXRvcnMuIl0sInZpc2l0b3IuY2hhdGNvbXBsZXRlIjpbIkNoYXQgRW5kZWQiLCJDaGF0IGVuZGVkIGJ5IHRoZSB2aXNpdG9ycy4iXSwiY2hhdC5maWxlIjpbIkZpbGUgVHJhbnNmZXJyZWQiLCJGaWxlIHRyYW5zZmVycyBtYWRlIGJ5IHRoZSB2aXNpdG9ycy4iXSwiY2hhdC5wcmludCI6WyJDaGF0IFByaW50ZWQiLCJDaGF0IHRyYW5zY3JpcHRzIHByaW50ZWQgYnkgdGhlIHZpc2l0b3JzLiJdLCJjaGF0Lm1haWwiOlsiQ2hhdCBNYWlsIHNlbnQiLCJDaGF0IHRyYW5zY3JpcHRzIGVtYWlsZWQgYnkgdGhlIHZpc2l0b3IuIl0sInZpc2l0b3IucmF0aW5nIjpbIlJhdGluZyBTdWJtaXR0ZWQiLCJSYXRpbmcgc3VibWl0dGVkIGJ5IHZpc2l0b3JzLiJdLCJ2aXNpdG9yLmZlZWRiYWNrIjpbIkZlZWRiYWNrIFN1Ym1pdHRlZCIsIkZlZWRiYWNrIG1lc3NhZ2VzIHN1Ym1pdHRlZCBieSB2aXNpdG9ycy4iXSwidmlzaXRvci5jaGF0dHJpZ2dlciI6WyJDaGF0IFRyaWdnZXJyZWQiLCJBdXRvIGFuZCBwcm9hY3RpdmUgY2hhdCBpbml0aWF0ZWQgdG8gdGhlIHZpc2l0b3JzLiJdLCJ2aXNpdG9yLnRyaWdnZXJyZXNwb25kZWQiOlsiVHJpZ2dlciBSZXNwb25kZWQiLCJWaXNpdG9yIHJlc3BvbmRlZCB0byB0cmlnZ2VyIG9yIHByb2FjdGl2ZSBjaGF0LiJdLCJ2aXNpdG9yLmNoYXQiOlsiQ2hhdCBJbml0aWF0ZWQiLCJWaXNpdG9yIGluaXRpYXRlZCBjaGF0cy4iXSwidmlzaXRvci5vZmZsaW5lIjpbIk9mZmxpbmUgTWVzc2FnZSBTdWJtaXR0ZWQiLCJPZmZsaW5lIG1lc3NhZ2VzIHN1Ym1pdHRlZCBieSB0aGUgdmlzaXRvcnMuIl0sInZpc2l0b3IubWlzc2VkIjpbIkNoYXQgTWlzc2VkIiwiQ2hhdCBtaXNzZWQgYnkgdGhlIFNhbGVzSVEgdXNlcnMuIl0sImNoYXQudmlzaXRvcmVuZCI6WyJDaGF0IEVuZGVkIGJ5IHZpc2l0b3IiLCJDaGF0cyBlbmRlZCBieSB0aGUgdmlzaXRvcnMuIl19KX0sJHpvaG9zcS5oYW5kbGVBbmFseXRpY0V2ZW50cz13aW5kb3cuJHpvaG9zcS5oYW5kbGVBbmFseXRpY0V2ZW50c3x8ZnVuY3Rpb24odCxlLGkpe3ZhciBhPSR6c2Fsb2JqW3RdO2lmKCJ0cnVlIj09JHp2LnJlc3RyaWN0YW5hbHl0aWNzdmFsdWUmJihhPSR6c2Fsb2JqcmVzdHJpY3RlZFt0XSksYSl7dmFyIHM9ZVthWzJdXTtpZihzJiYocz1wYXJzZUludChzKSksMT09aSl0cnl7ImZ1bmN0aW9uIj09dHlwZW9mIGd0YWc/Mz09PWEubGVuZ3RoP2d0YWcoImV2ZW50IixhWzBdLHtldmVudF9jYXRlZ29yeToiU2FsZXNJUSIsZXZlbnRfbGFiZWw6YVsxXSx2YWx1ZTpzfSk6Z3RhZygiZXZlbnQiLGFbMF0se2V2ZW50X2NhdGVnb3J5OiJTYWxlc0lRIixldmVudF9sYWJlbDphWzFdfSk6ImZ1bmN0aW9uIj09dHlwZW9mIGdhPzM9PT1hLmxlbmd0aD9nYSgic2VuZCIsImV2ZW50IiwiU2FsZXMgSVEiLGFbMF0sYVsxXSxzKTpnYSgic2VuZCIsImV2ZW50IiwiU2FsZXMgSVEiLGFbMF0sYVsxXSk6InVuZGVmaW5lZCIhPXR5cGVvZiBfZ2FxJiYoMz09PWEubGVuZ3RoP19nYXEucHVzaChbIl90cmFja0V2ZW50IiwiU2FsZXMgSVEiLGFbMF0sYVsxXSxzXSk6X2dhcS5wdXNoKFsiX3RyYWNrRXZlbnQiLCJTYWxlcyBJUSIsYVswXSxhWzFdXSkpfWNhdGNoKHQpe31lbHNlIGlmKDI9PWkpMz09PWEubGVuZ3RoP2NsaWNreS5sb2coIlNhbGVzIElRLSIrYVswXSsiLSIrcyk6Y2xpY2t5LmxvZygiU2FsZXMgSVEtIithWzBdKTtlbHNlIGlmKDM9PWkpe2lmKDM9PT1hLmxlbmd0aCkobj17fSlbYVsxXV09cyxfa21xLnB1c2goWyJyZWNvcmQiLCJTYWxlcyBJUSAiK2FbMF0sbl0pO2Vsc2UgX2ttcS5wdXNoKFsicmVjb3JkIiwiU2FsZXMgSVEgIithWzBdXSl9ZWxzZSBpZig0PT1pKXtpZigzPT09YS5sZW5ndGgpKG49e30pW2FbMV1dPXMsd2luZG93Lm9wdGltaXplbHkucHVzaChbInRyYWNrRXZlbnQiLCJTYWxlcyBJUSAiK2FbMF0sbl0pO2Vsc2Ugd2luZG93Lm9wdGltaXplbHkucHVzaChbInRyYWNrRXZlbnQiLCJTYWxlcyBJUSAiK2FbMF1dKX1lbHNlIGlmKDU9PWkpe2lmKDM9PT1hLmxlbmd0aCkobj17fSlbYVsxXV09cyx3b29wcmEudHJhY2soIlNhbGVzIElRICIrYVswXSxuKTtlbHNlIHdvb3ByYS50cmFjaygiU2FsZXMgSVEgIithWzBdKX1lbHNlIGlmKDY9PWkpMz09PWEubGVuZ3RoP19wYXEucHVzaChbInRyYWNrRXZlbnQiLCJTYWxlcyBJUSIsYVswXSwiIixzXSk6X3BhcS5wdXNoKFsidHJhY2tFdmVudCIsIlNhbGVzIElRIixhWzBdXSk7ZWxzZSBpZig3PT1pKXtpZigzPT09YS5sZW5ndGgpKG49e30pW2FbMV1dPXMsbWl4cGFuZWwudHJhY2soIlNhbGVzIElRICIrYVswXSxuKTtlbHNlIG1peHBhbmVsLnRyYWNrKCJTYWxlcyBJUSAiK2FbMF0pfWVsc2UgaWYoOD09aSl7dmFyIG47aWYoMz09PWEubGVuZ3RoKShuPXt9KVthWzFdXT1zLF9oc3EucHVzaChbInRyYWNrRXZlbnQiLCJTYWxlcyBJUSAiK2FbMF0sbl0pO2Vsc2UgX2hzcS5wdXNoKFsidHJhY2tFdmVudCIsIlNhbGVzIElRICIrYVswXV0pfWVsc2UgaWYoOT09aSl7dmFyIG89e2V2ZW50OiJTYWxlcyBJUSBFdmVudHMiLGNhdGVnb3J5OiJTYWxlcyBJUSIsYWN0aW9uOmFbMF0sbGFiZWw6YVsxXSx2YWx1ZTowfTszPT09YS5sZW5ndGgmJihvLnZhbHVlPXMpLGRhdGFMYXllci5wdXNoKG8pfX19fWNhdGNoKHQpe312YXIgVURIYW5kbGVyPXtnZXREb3duTG9hZExpbms6ZnVuY3Rpb24oZSxuLG8peyhvPW98fHt9KVsieC1zaXEtZG93bmxvYWR0eXBlIl09bnx8ImRlZmF1bHQiO3ZhciBhPXdpbmRvdy5VRFNFUlZFUl9FVkVOVF9CQVNFRFVSTD93aW5kb3cuU0lRX1VEX1NFUlZJQ0VfTkFNRXx8JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS5jb21tb25kYXRhLnNpcVVEU2VydmljZU5hbWU6d2luZG93Ll9TSVFTRVJWSUNFTkFNRXx8JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS5jb21tb25kYXRhLnNpcXNlcnZpY2VuYW1lLGQ9d2luZG93LlVEU0VSVkVSX0VWRU5UX0JBU0VEVVJMfCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuY29tbW9uZGF0YS51ZEV2ZW50QmFzZWRVUkw/KG51bGw9PXdpbmRvdy5fWlNJUURPV05MT0FEU0VSVkVSVVJMfHx3aW5kb3cuX1pTSVFET1dOTE9BRFNFUlZFUlVSTC5pbmNsdWRlcygicHVibGljIik/Ii9wdWJsaWMvIjoiL3YxLyIpK2ErIi9kb3dubG9hZC8iK2UrIj8iOndpbmRvdy5fWlNJUURPV05MT0FEU0VSVkVSVVJMP19aU0lRRE9XTkxPQURTRVJWRVJVUkwrIi93ZWJkb3dubG9hZD94LXNlcnZpY2U9IithKyImZXZlbnQtaWQ9IitlKyImIjoiL3B1YmxpYz94LXNlcnZpY2U9IithKyImZXZlbnQtaWQ9IitlKyImIjtyZXR1cm4od2luZG93Ll9aU0lRRE9XTkxPQURTRVJWRVJVUkw/X1pTSVFET1dOTE9BRFNFUlZFUlVSTCtkOiRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuY29tbW9uZGF0YS5kb3dubG9hZHNlcnZlcitkKSsieC1jbGktbXNnPSIrZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KG8pKX0sZ2V0VUREb3duTG9hZExpbms6ZnVuY3Rpb24obil7dmFyIG89WyJkIl0sYT1mdW5jdGlvbihlKXtyZXR1cm4gblsieC1zaXEtIitlXX07WyJzb2lkIiwibW9kdWxlIiwicGFyZW50aWQiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpeyJwYXJlbnRpZCI9PWU/by5wdXNoKGEoZSl8fGEoImNvbnZlcnNhdGlvbiI9PWEoIm1vZHVsZSIpPyJ0eXBlIjoicmVzb3VyY2VpZCIpfHxhKCJ0eXBlIikpOm8ucHVzaChhKGUpKX0pLG89by5qb2luKCJfIik7dmFyIGU9d2luZG93LlNJUV9VRF9TRVJWSUNFX05BTUV8fCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuY29tbW9uZGF0YS5zaXFVRFNlcnZpY2VOYW1lLGQ9KG51bGw9PXdpbmRvdy5fWlNJUURPV05MT0FEU0VSVkVSVVJMfHx3aW5kb3cuX1pTSVFET1dOTE9BRFNFUlZFUlVSTC5pbmNsdWRlcygicHVibGljIik/Ii9wdWJsaWMvIjoiL3YxLyIpK2UrIi9kb3dubG9hZC8iK28rIj8iO3JldHVybih3aW5kb3cuX1pTSVFET1dOTE9BRFNFUlZFUlVSTHx8JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS5jb21tb25kYXRhLmRvd25sb2Fkc2VydmVyKStkKyJ4LWNsaS1tc2c9IitlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkobikpfSxnZXRVcGxvYWRFbmRwb2ludDpmdW5jdGlvbigpe3JldHVybiB3aW5kb3cuX1pTSVFVUExPQURTRVJWRVJVUkw/d2luZG93Ll9aU0lRVVBMT0FEU0VSVkVSVVJMKyIvd2VidXBsb2FkIjokWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmNvbW1vbmRhdGEudXBsb2Fkc2VydmVyKyIvcHVibGljdXBsb2FkIn0scGFyc2VBbmRVcGRhdGVVRFBhcmFtOmZ1bmN0aW9uKGUsbil7aWYoZSYmLTEhPWUuaW5kZXhPZigieC1jbGktbXNnPSIpKXtlPWRlY29kZVVSSUNvbXBvbmVudChlKTt2YXIgbz1uZXcgUmVnRXhwKCJbPyZdeC1jbGktbXNnPShbXiYjXSopIiwiaSIpLmV4ZWMoZSk7Zm9yKHZhciBhIGluIG89SlNPTi5wYXJzZShvWzFdKSxuKW4uaGFzT3duUHJvcGVydHkoYSkmJihvW2FdPW5bYV0pO3JldHVybiBVREhhbmRsZXIuZ2V0VUREb3duTG9hZExpbmsobyl9cmV0dXJuIGV9fTt2YXIgWlNJUUpXVFZlcmlmeT1mdW5jdGlvbigpe3ZhciBsLHUsZyxiLGQ9ZnVuY3Rpb24oZSl7Yj0hMTt2YXIgdD1KU09OLnBhcnNlKGUpLmRhdGEsYT0kWlNJUVV0aWwuZ2V0QXZ1aWQoKTskWlNJUUxTREIuc2V0KGErIl9qd3R0b2tlbiIsSlNPTi5zdHJpbmdpZnkodCkpO3ZhciBpPSR6djtpLmp3dEV4cGlyeT1wYXJzZUludCh0LmV4cGlyeSk7dmFyIG49dC52aXNpdG9yO2lmKG4pdmFyIHI9bi5uYW1lLG89bi5waG9uZSxzPW4uZW1haWwsYz1uLnNhbHV0YXRpb24sZD1uLmZpcnN0X25hbWUsbD1uLmxhc3RfbmFtZTtpZih3aW5kb3cuaXNTaXFGaXJzdE5hbWVDb25mRW5hYmxlZCl7dmFyIHU9e307YyYmKGkuc2FsdXRhdGlvbj1jLHUuc2FsdXRhdGlvbj1jKSxkJiYoaS5maXJzdG5hbWU9ZCx1LmZpcnN0bmFtZT1kKSxsJiYoaS5sYXN0bmFtZT1sLHUubGFzdG5hbWU9bCksJHpvaG9zcS5qd3RWYWx1ZXM9dX1yJiYoaS5uYW1lPXIpLG8mJihpLnBob25lPW8pLHMmJihpLmVtYWlsPXMpO3ZhciBnPSRaU0lRVXRpbC5nZXRJZnJhbWUoKTtpZihnKXt2YXIgUz1nLiRFbWJlZE1hbmdlcjtTJiYod2luZG93LmlzU2lxRmlyc3ROYW1lQ29uZkVuYWJsZWQmJihjJiZTLnNldFNhbHV0YXRpb24oYyksZCYmUy5zZXRGaXJzdE5hbWUoZCksbCYmUy5zZXRMYXN0TmFtZShsKSksciYmUy5zZXRWaXNpdG9yTmFtZShyKSxvJiZTLnNldFZpc2l0b3JQaG9uZShvKSxzJiZTLnNldFZpc2l0b3JFbWFpbChzKSk7dmFyIGY9Zy4kU3VwcG9ydCxtPWYucmVzZW5kUHJvcHM7aWYoZi5ub09mVGltZUZhaWxlZD0wLG0ubGVuZ3RoKWZvcih2YXIgdj0wO3Y8bS5sZW5ndGg7disrKXAobVt2XSk7Zy4kU3VwcG9ydC5yZXNlbmRQcm9wcz1bXX19LHA9ZnVuY3Rpb24oZSl7dmFyIHQ9JFpTSVFVdGlsLmdldElmcmFtZSgpLGE9ZS51cmwsaT1lLnBheWxvYWQsbj1lLnN1Y2Nlc3NjYixyPWUuZmFpbGl1cmVjYixvPXQuJFN1cHBvcnQscz10LkxTTWVzc2FuZ2VyO3N3aXRjaChkZWxldGUgby5yZXRyeUNvdW50LGUuY2FsbGJhY2tNZXRob2Qpe2Nhc2UiY29tbW9udXRpbCI6dC5Db21tb25VdGlsLmhhbmRsZUFqYXhSZXEoYSxpLG4scixlLm1ldGhvZCwhMCk7YnJlYWs7Y2FzZSJzdXBwb3J0IjpvLmhhbmRsZUFqYXgoYSxpLCEwLG4scixlLmxvYWRpbmdtc2csZS5jaGFubmVsaGVhZGVyLGUucXVlcnlwYXJhbSk7YnJlYWs7Y2FzZSJjb252ZXJzYXRpb24iOm8uUG9wdWxhdGVDb252ZXJzYXRpb25MaXN0KG4sZS5zdGFydGluZGV4KTticmVhaztjYXNlInNldHJhdGluZyI6by5zZXRSYXRpbmcoZS5zdGFyZGl2LGUuY3Vycndpbm9iaik7YnJlYWs7Y2FzZSJnZXRtZXNzYWdlcyI6cy5nZXRNZXNzYWdlcyhhLGUuY2hpZCxlLmlzYWxsb3djcmVkZW50aWFsLGUuZ2V0dHJhbnNjcmlwdGNiKTticmVhaztjYXNlImdldHRyYW5zY3JpcHQiOm8uZ2V0VHJhbnNjcmlwdHMoYSxlLmNoaWQsZS5nZXR0cmFuc2NyaXB0Y2IpO2JyZWFrO2Nhc2Uic2VuZGZvcm1tZXNzYWdlIjp0LlpTSVFDb252ZXJzYXRpb25Gb3JtLnNlbmRGb3JtTWVzc2FnZShlLm1zZyxlLm1ldGEsZS5pc2lnbm9yZSk7YnJlYWs7Y2FzZSJyZWpvaW5jaGF0IjpvLnJlam9pbmNoYXRzKGUuY2hhdGxpc3QpO2JyZWFrO2Nhc2Uic2VuZGZlZWRiYWNrIjpvLnNlbmRGZWVkYmFjayhlLmN1cnIsZS5pc3JhdGluZ2VkaXQsZS5pc2NhbGxvbmx5KTticmVhaztjYXNlInJlYWQiOm8uc2VuZFJlYWRDYWxsKGUubXNnaWQsITApO2JyZWFrO2Nhc2Uiam9pbmNoYXQiOnMuam9pbmNoYXQoZS5jaGF0aWQsZS53bXNpZCxlLmlzbnR3cmtyZWNvbm5lY3QsZS5pc3NlcnZlcnVwd2l0aG91dHNlcnZlcmRvd24pO2JyZWFrO2Nhc2UiZmlsZXVwbG9hZCI6dC5Db21tb25VdGlsLnYyaGFuZGxlRmlsZVVwbG9hZChlLmRhdGEsZS5hY3Rpb25vYmopfX0sUz1mdW5jdGlvbihlKXt2YXIgdD0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpfHx7fTtpZigkWlNJUUxTREIucmVtb3ZlU2Vzc2lvblN0b3JlKCgkenYuY3Z1aWR8fCRaU0lRTFNEQi5nZXQoIlpMRCIrdC53aWRnZXRvYmoubHNpZCsiYXZ1aWQiKSkrIl9jb252ZXJzYXRpb24iKSwhZSl7dmFyIGE9dC5lbWJlZG9iai5laW5mby5lbWJlZGlkOyRaU0lRTFNEQi5yZW1vdmUoIlpMRCIrYSsiV0FJVElORyIsITApLCRaU0lRTFNEQi5yZW1vdmUoIlpMRCIrYSwhMCl9fSxmPWZ1bmN0aW9uKCl7dmFyIGU9JFpTSVFVdGlsLmdldEF2dWlkKCk7JFpTSVFDb29raWUucmVtb3ZlKGUrIl9qd3R0b2tlbiIpO3RyeXsiZnVuY3Rpb24iPT10eXBlb2YgJHpjYi5qd3Rsb2dvdXRjYWxsYmFjayYmJHpjYi5qd3Rsb2dvdXRjYWxsYmFjaygpLCJ1bmRlZmluZWQiIT10eXBlb2YgU2lxQVZSb3V0ZXImJlNpcUFWUm91dGVyLmNvbnRhaW5lci5kZXRhaWxzSGFuZGxlci5oYW5kbGVKV1RMb2dvdXQoKX1jYXRjaChlKXt9fTtyZXR1cm57dmVyaWZ5SldUdG9rZW46ZnVuY3Rpb24oZSx0KXtpZighYil7dmFyIGE9KCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCl8fHt9KS5lbWJlZG9iaixpPWEuc2NoZW1hLG49JFpTSVFVdGlsLnN0YXRpY1VSTFs0XSxyPWEuc2NyZWVubmFtZTtsPWkrIjovLyIrbisiL3Zpc2l0b3IvdjIvIityKyIvand0YXV0aGVudGljYXRpb24iLHU9YS5laW5mby5lbWJlZGlkLGc9ZSYmZS50b2tlbixTKCEwKTt2YXIgbz1aU0lRSldUVmVyaWZ5LmdldE9uZ29pbmdDaGF0SWQoKSxzPXthcHBfaWQ6dSx0b2tlbjpnfTtvJiYtMSE9byYmKHMuY29udmVyc2F0aW9uX2lkPW8pO3ZhciBjPXsieC1zaXEtY2hhbm5lbCI6IndlYnNpdGUifTt0JiYoY1siWC1TSVEtQUNDRVNTVE9LRU4iXT0kWlNJUVV0aWwuZ2V0SldUVG9rZW4oKSxjWyJYLVNJUS1BUFBJRCJdPWEuZWluZm8uZW1iZWRpZCksYj0hMCwkWlNJUVV0aWwucG9zdEFqYXgobCxKU09OLnN0cmluZ2lmeShzKSxkLGZ1bmN0aW9uKGUpe3ZhciB0PWUucmVzcG9uc2VUZXh0JiZKU09OLnBhcnNlKGUucmVzcG9uc2VUZXh0KXx8e30sYT10LmVycm9yJiZ0LmVycm9yLmNvZGU7YSYmKGI9ITEpLDQwMT09PWUuc3RhdHVzJiY2MjA1PT09YSYmWlNJUUpXVFZlcmlmeS5mYWlsaXVyZUNhbGxiYWNrKCk7dmFyIGk9JFpTSVFVdGlsLmdldElmcmFtZSgpO2lmKGkmJmEpe3ZhciBuPWkuJFN1cHBvcnQucmVzZW5kUHJvcHM7aWYobi5sZW5ndGgpZm9yKHZhciByPTA7cjxuO3IrKylwKG5bcl0pO2kuJFN1cHBvcnQucmVzZW5kUHJvcHM9W119fSwiIixjKX19LGxvZ291dEpXVDpmdW5jdGlvbihlKXt2YXIgdD0oJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKXx8e30pLmVtYmVkb2JqO1MoKTt2YXIgYT0kWlNJUVV0aWwuZ2V0QXZ1aWQoKSxpPSRaU0lRVXRpbC5nZXRKV1RUb2tlbigpOyRaU0lRTFNEQi5yZW1vdmUoYSsiX2p3dHRva2VuIik7dmFyIG49dC5zY2hlbWEscj10LnNlcnZlcm5hbWUsbz10LnNjcmVlbm5hbWUscz0obD1uKyI6Ly8iK3IrIi92aXNpdG9yL3YyLyIrbysiL2p3dGF1dGhlbnRpY2F0aW9uIikrIi9sb2dvdXQiLGM9e2FwcF9pZDp0LmVpbmZvLmVtYmVkaWQsdG9rZW46KGV8fHt9KS50b2tlbnx8Z30sZD17Ingtc2lxLWNoYW5uZWwiOiJ3ZWJzaXRlIiwiWC1TSVEtQUNDRVNTVE9LRU4iOmksIlgtU0lRLUFQUElEIjp1fTtaU0lRSldUVmVyaWZ5LmhhbmRsZUFqYXhSZXF1ZXN0KHMsYywiUFVUIixmLCIiLGQpfSxnZXRPbmdvaW5nQ2hhdElkOmZ1bmN0aW9uKCl7dmFyIGU9KCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCl8fHt9KS5lbWJlZG9iaix0PSRaU0lRTFNEQi5nZXQoIlpMRCIrZS5laW5mby5lbWJlZGlkKXx8e307cmV0dXJuIHQub25nb2luZ2NoYXRzPyhPYmplY3QudmFsdWVzKHQub25nb2luZ2NoYXRzKVswXXx8e30pLnZpZDoiIn0saGFuZGxlQWpheFJlcXVlc3Q6ZnVuY3Rpb24oZSx0LGEsaSxuLHIpe3ZhciBvPW5ldyBYTUxIdHRwUmVxdWVzdDtpZihvLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezIwMD09PW8uc3RhdHVzfHwyMDQ9PT1vLnN0YXR1cz9pJiZpKG8ucmVzcG9uc2VUZXh0JiZKU09OLnBhcnNlKG8ucmVzcG9uc2VUZXh0KSk6biYmbihvLnJlc3BvbnNlVGV4dCl9LG8ub3BlbihhLGUpLCFyJiZvLnNldFJlcXVlc3RIZWFkZXIoIngtc2lxLWNoYW5uZWwiLCJ3ZWJzaXRlIikscilmb3IodmFyIHMgaW4gcilyLmhhc093blByb3BlcnR5KHMpJiZvLnNldFJlcXVlc3RIZWFkZXIocyxyW3NdKTtvLnNlbmQoSlNPTi5zdHJpbmdpZnkodCkpfSxmYWlsaXVyZUNhbGxiYWNrOmZ1bmN0aW9uKCl7Ynx8ImZ1bmN0aW9uIj09dHlwZW9mICR6Y2Iuand0dG9rZW5nZXR0ZXImJiR6Y2Iuand0dG9rZW5nZXR0ZXIoKX0saXNKV1RFbmFibGVkOmZ1bmN0aW9uKCl7cmV0dXJuKCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuZW1iZWRvYmouand0X2F1dGhlbnRpY2F0aW9ufHx7fSkuZW5hYmxlZH19fSgpO3ZhciAkWlNJUVV0aWw9JFpTSVFVdGlsfHxmdW5jdGlvbigpe3ZhciBuLG89WyJlbiIsImFyIiwiZGEiLCJkZSIsImVsIiwiZXMiLCJmciIsImdhIiwiaGUiLCJodSIsIml0IiwiaXciLCJqYSIsImtvIiwibmIiLCJubCIsInBsIiwicHQiLCJwdF9QVCIsInJvIiwicnUiLCJzdiIsInRoIiwidHIiLCJ6aCIsImhyIiwiY3MiLCJzayIsInNsIiwidmkiLCJoeSIsImthIiwicHRfUFQiLCJ6aF9UVyIsImJnIiwiZmFfSVIiLCJmaSIsInBhIiwiaGkiLCJvciIsImd1Iiwia24iLCJtbCIsIm1yIiwidGEiLCJ0ZSIsImJuIiwidWsiLCJrayIsInV6IiwiaWQiLCJjYSIsInNpIiwibXMiXSxyPXt6aF9oYW50OiJ6aF9UVyIsemhfdHc6InpoX1RXIn0sYT17MDoiaW5oZXJpdCIsMToic2FsZXNpcS1mb250IiwyOiJaU0lRIE9wZW4gU2FucyIsMzoiWlNJUSBPeHlnZW4iLDQ6IlpTSVEgUm9ib3RvIiw1OiJaU0lRIFB1dmkifSx0PXt9LHM9ITEsYz0iIixkPW51bGw7cmV0dXJue2lzdGl0bGVibGlua2luZzpzLGRvY3VtZW50dGl0bGU6YyxzZXRJbnRlZ3JpdHlBdHRyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuc2V0QXR0cmlidXRlKCJpbnRlZ3JpdHkiLHQpLGUuc2V0QXR0cmlidXRlKCJjcm9zc29yaWdpbiIsImFub255bW91cyIpLGV9LGNvb2tpZUNvbmZpZzp7aXNGdW5jdGlvbmFsaXR5OiExLGlzQW5hbHl0aWNzOiExfSxTVEFUVVNfRU5BQkxFOjEsU1RBVFVTX0RJU0FCTEU6MCxpbml0aWFsaXplQVBJVmFsdWVzOmZ1bmN0aW9uKCl7X1pTSVEuSlNBUEkuaWRlbnRpZnlTSVFQYXJhbSgpO3RyeXskem9ob3NxLmludGVybmFscmVhZHkoKSx0PSR6b2hvc3EudmFsdWVzfWNhdGNoKGUpe310cnl7JHpvaG9zcS5yZWFkeSgpLHRoaXMudXBkYXRlQXBpVmFsdWVzKCl9Y2F0Y2goZSl7fX0sZ2V0VVJMUHJvdG9jb2w6ZnVuY3Rpb24oZSl7dmFyIHQ9Imh0dHAiO3JldHVybiAwPT09ZS5pbmRleE9mKHQpP2U6dCsiOi8vIitlfSxnZXRKV1RUb2tlbjpmdW5jdGlvbigpe3ZhciBlPSRaU0lRTFNEQi5nZXQoJFpTSVFVdGlsLmdldEF2dWlkKCkrIl9qd3R0b2tlbiIpO3JldHVybiBlJiYoKGU9InN0cmluZyI9PXR5cGVvZiBlP0pTT04ucGFyc2UoZSk6ZSl8fHt9KS5hY2Nlc3NfdG9rZW58fCIifSxkZWVwQ2xvbmU6ZnVuY3Rpb24oZSl7aWYobnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZSlyZXR1cm4gZTt2YXIgdD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcih2YXIgaSBpbiBlKWUuaGFzT3duUHJvcGVydHkoaSkmJih0W2ldPSRaU0lRVXRpbC5kZWVwQ2xvbmUoZVtpXSkpO3JldHVybiB0fSxzZXRTYW1lU2l0ZUNvb2tpZTpmdW5jdGlvbihlKXt2YXIgdD0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpO3JldHVybiB0JiZ0LmVtYmVkb2JqLmlzX2Nvb2tpZV9zYW1lc2l0ZV9zdHJpY3QmJihlKz0iO1NhbWVTaXRlPVN0cmljdCIpLGV9LGdldFNlY3VyZUNvb2tpZUtleTpmdW5jdGlvbihlKXtyZXR1cm4gZS5lbmRzV2l0aCgiOyIpfHwoZSs9IjsiKSxlKyJTZWN1cmU7U2FtZVNpdGU9Tm9uZTsifSx1cGRhdGVUcmFja2luZ1N0YXR1czpmdW5jdGlvbihlKXt2YXIgdD1KU09OLnBhcnNlKCRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkucGluZm8ucGluZm8udHJhY2tpbmdwcml2YWN5Y29uZmlnKSxpPWUuaW5jbHVkZXMoImFuYWx5dGljcyIpLG49ZS5pbmNsdWRlcygicGVyZm9ybWFuY2UiKTskWlNJUVV0aWwuY29va2llQ29uZmlnPXtpc0Z1bmN0aW9uYWxpdHk6bixpc0FuYWx5dGljczppfTt2YXIgbz0kVVRTSGFuZGxlci5nZXRBUElWYWx1ZXNGb3JVVFMoKSxyPSRaU0lRV2lkZ2V0LmdldFdpZGdldE9iamVjdCgpLGE9by50cmFja2luZyYmIm9mZiI9PW8udHJhY2tpbmd8fCFyLmlzdHJhY2tpbmcscz1pfHxhfHwyIT09dD8wOjE7JFpTSVFVdGlsLnVwZGF0ZUNvb2tpZUZvclRyYWNraW5nKHMsIjIiKX0saGFuZGxlU2VsZk1hbmFnZWRDb29raWU6ZnVuY3Rpb24oKXt2YXIgZT1ab2hvQ29va2llKCksdD0kem9ob3NxLnZhbHVlcy5jb29raWVjb25zZW50fHxbXTtpZihlLmlzQ29va2llU2V0KCkpdD1lLmdldFNlbGVjdGVkQ29va2llcygpO2Vsc2V7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNlbnRfY29udGFpbmVyIikpcmV0dXJuIHZvaWQgZS5zaG93Q29uc2VudCh7aGFuZGxlcjpmdW5jdGlvbihlLHQpeyRaU0lRVXRpbC51cGRhdGVUcmFja2luZ1N0YXR1cyh0LnNlbGVjdGVkX2Nvb2tpZXMpfX0pO3QucHVzaCgiZXNzZW50aWFsIiksZS5zZXRWYWx1ZSgiYWxsb3dlZF9jb29raWVzIix0KX12YXIgaT0kWlNJUVdpZGdldC5nZXRFbWJlZE9iamVjdCgpLnBpbmZvLG49JFpTSVFVdGlsLmNvb2tpZUNvbmZpZztuLmlzQW5hbHl0aWNzPXQuaW5jbHVkZXMoImFuYWx5dGljcyIpLG4uaXNGdW5jdGlvbmFsaXR5PXQuaW5jbHVkZXMoInBlcmZvcm1hbmNlIik7dmFyIG89JFVUU0hhbmRsZXIuZ2V0QVBJVmFsdWVzRm9yVVRTKCkscj0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKTtyLmlzZ2RwcmVuYWJsZWR8fCgkWlNJUVV0aWwuY29va2llQ29uZmlnPXtpc0FuYWx5dGljczohMCxpc0Z1bmN0aW9uYWxpdHk6ITB9KTt2YXIgYT1vLnRyYWNraW5nJiYib2ZmIj09by50cmFja2luZ3x8IXIuaXN0cmFja2luZyxzPUpTT04ucGFyc2UoaS5waW5mby50cmFja2luZ3ByaXZhY3ljb25maWcpOyRaU0lRVXRpbC5jb29raWVDb25maWcuaXNBbmFseXRpY3N8fGF8fDIhPXM/JFpTSVFVdGlsLnVwZGF0ZUNvb2tpZUZvclRyYWNraW5nKDAsIjIiKTokWlNJUVV0aWwudXBkYXRlQ29va2llRm9yVHJhY2tpbmcoMSwiMiIpfSxhcHBlbmRDb29raWVCYW5uZXJKUzpmdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTt0LnNyYz0iaHR0cHM6Ly9zdGF0aWMuem9ob2Nkbi5jb20vem9oby1jb29raWVoYW5kbGVyL3YxL0Nvb2tpZUNvbnNlbnQubWluLmpzIix0Lm9ubG9hZD1mdW5jdGlvbigpe2UoKX0sZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KX0sc2V0VHJhY2tpbmdTdGF0dXM6ZnVuY3Rpb24oKXsiY3VzdG9tIj09JFpTSVFXaWRnZXQuZ2V0RW1iZWRPYmplY3QoKS5waW5mby5jb29raWVQcmVmZXJlbmNlJiYkWlNJUVV0aWwuYXBwZW5kQ29va2llQmFubmVySlMoJFpTSVFVdGlsLmhhbmRsZVNlbGZNYW5hZ2VkQ29va2llKX0sdXBkYXRlQXBpVmFsdWVzOmZ1bmN0aW9uKCl7aWYodCYmJHpvaG9zcS52YWx1ZXMpZm9yKHZhciBlIGluICR6b2hvc3EudmFsdWVzKXRbZV09JHpvaG9zcS52YWx1ZXNbZV07ZWxzZSB0PSR6b2hvc3EudmFsdWVzO3QudXZpZD0kVVRTSGFuZGxlci5nZXQoIl96bGR0Iil9LGlzWm9ob0NhbXBhaWduRW5hYmxlZDpmdW5jdGlvbigpe3ZhciBlPSRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkucGluZm8uaW50ZWdpZDtyZXR1cm4hIWUmJi0xIT1KU09OLnBhcnNlKGUpLmluZGV4T2YoNil9LGlzRG93bmdyYWRlZFRvRnJlZVBsYW46ZnVuY3Rpb24oKXt0cnl7dmFyIGU9InRydWUiPT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmVtYmVkb2JqLnBpbmZvLnBpbmZvLmlzZG93bmdyYWRlZHRvZnJlZXBsYW4sdD0kWlNJUUxpY2VuY2UuaXNGcmVlUGxhbigpO3JldHVybiBlJiZ0JiYhJFpTSVFDaGF0LmlzUHJldmlldygpfWNhdGNoKGUpe31yZXR1cm4hMX0sZ2V0Q29tcGFueUxvZ286ZnVuY3Rpb24oZSl7cmV0dXJuICRaU0lRVXRpbC5pc0Rvd25ncmFkZWRUb0ZyZWVQbGFuKCk/JFpTSVFVdGlsLmdldFN0YXRpY1VSTCgiL3NhbGVzaXEvaW1hZ2VzL2xvZ29fWmc4STBxU2tiQXFSMldGSHQzcDZDVHVxcHlYTUZQdWJQY0QyT1QwMnpGTjQzQ3k5RlVOTkczTkVQaE1fUTFxZV8ucG5nIik6ZX0sZ2V0U3RhdGljVVJMOmZ1bmN0aW9uKGUpe3JldHVybiBlPyRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuY29tbW9uZGF0YS5jb21tb25zdGF0aWN1cmwrZTplfSxnZXRBUElWYWx1ZXM6ZnVuY3Rpb24oKXtyZXR1cm4gJFpTSVFVdGlsLmlzRG93bmdyYWRlZFRvRnJlZVBsYW4oKSYmZGVsZXRlIHQuY2xvZ28sdH0sY2xlYXJBcGlWYWx1ZXM6ZnVuY3Rpb24oKXt0PXt9fSxpc0NTU1RyYW5zZm9ybVN1cHBvcnQ6ZnVuY3Rpb24oKXt0cnl7Zm9yKHZhciBlPSJ0cmFuc2Zvcm0gV2Via2l0VHJhbnNmb3JtIE1velRyYW5zZm9ybSBPVHJhbnNmb3JtIG1zVHJhbnNmb3JtIi5zcGxpdCgiICIpLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksaT0wO2k8ZS5sZW5ndGg7aSsrKWlmKHQmJnZvaWQgMCE9PXQuc3R5bGVbZVtpXV0pcmV0dXJuIGVbaV19Y2F0Y2goZSl7cmV0dXJuITF9cmV0dXJuITF9LG9uQ0RORmFpbHVyZTpmdW5jdGlvbihlKXt2YXIgdD0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKS5jc3NzdGF0aWNzZXJ2ZXIsaT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmpzc3RhdGljc2VydmVyLG49IiIsbz0oZS5ocmVmP2UuaHJlZjplLnNyYykubWF0Y2goL1wuKFteLl0rKSQvKSxyPSR6b2hvc3Eubm9uY2U7byYmKG49b1sxXSksImpzIj09bj8obGluaz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxsaW5rLnNyYz1pKToiY3NzIj09biYmKGxpbms9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpLGxpbmsucmVsPSJzdHlsZXNoZWV0IixsaW5rLmhyZWY9dCxsaW5rLnR5cGU9InRleHQvY3NzIiksciYmbGluay5zZXRBdHRyaWJ1dGUoIm5vbmNlIixyKSxkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGxpbmspfSxnZXRTb3VyY2VJRDpmdW5jdGlvbigpe30sZmFkZUluQW5pbWF0ZTpmdW5jdGlvbihlLHQpe3ZhciBpPTAsbj1zZXRJbnRlcnZhbChmdW5jdGlvbigpezE8PWkmJihjbGVhckludGVydmFsKG4pLGUuc3R5bGUuZGlzcGxheT0iIiksaSs9LjEsZS5zdHlsZS5vcGFjaXR5PWl9LHQpfSxmYWRlT3V0QW5pbWF0ZTpmdW5jdGlvbihlLHQsaSl7dmFyIG49MSxvPXNldEludGVydmFsKGZ1bmN0aW9uKCl7bjw9MCYmKGNsZWFySW50ZXJ2YWwobyksZS5zdHlsZS5kaXNwbGF5PSJub25lIixpJiZpKCkpLG4tPS4xLGUuc3R5bGUub3BhY2l0eT1ufSx0KX0sc3RvcmVDb29raWVWYWw6ZnVuY3Rpb24oZSx0LGkpe2lmKCRaU0lRTm90aWZ5Q29va2llLmlzQ29va2llQWxsb3dlZChlKSl7dmFyIG49bmV3IERhdGUsbz01OzA9PWkmJihvPTE0NDApLG4uc2V0VGltZSgobmV3IERhdGUpLmdldFRpbWUoKSs2MCpvKjFlMyk7dmFyIHIsYT0iemxkIiskWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKS5sc2lkK2UrIj0iK2VzY2FwZSh0KSsiO2V4cGlyZXM9ICIrbi50b0dNVFN0cmluZygpKyI7cGF0aD0vIjt0cnl7dmFyIHM9KChyPSR6b2hvc3EudXRzdmFsdWVzLnRyYWNraW5nZG9tYWluKXx8KHI9bG9jYXRpb24uaG9zdG5hbWUudG9TdHJpbmcoKS5yZXBsYWNlKC9ed3szfVwuLywiIiksL15bYS16QS1aMC05LVwuXSskLy50ZXN0KHIpfHwocj0iIikpLHJ8fCIiKTthKz1zPyI7ZG9tYWluPSIrczoiIiwkWlNJUUNoYXQuaXNFbWJlZEZlYXR1cmVDb25mRW5hYmxlZCgpJiYoYSs9IjtzZWN1cmUiKX1jYXRjaChlKXt9YT0kWlNJUVV0aWwuc2V0U2FtZVNpdGVDb29raWUoYSksYSs9JFpTSVFVdGlsLmdldFNlY3VyZUNvb2tpZUtleShhKSxkb2N1bWVudC5jb29raWU9YX1lbHNlICRaU0lRTFNEQi5zdG9yZUluU2Vzc2lvbihlLHQpfSxnZXRDb29raWVWYWx1ZTpmdW5jdGlvbihlKXt2YXIgdD1lLGk9KGU9InpsZCIrJFpTSVFXaWRnZXQuZ2V0V2lkZ2V0T2JqZWN0KCkubHNpZCtlLGRvY3VtZW50LmNvb2tpZS5pbmRleE9mKGUpKSxuPWRvY3VtZW50LmNvb2tpZS5sZW5ndGg7aWYoLTE9PWkpcmV0dXJuICRaU0lRTFNEQi5nZXRGcm9tU2Vzc2lvbih0KXx8IiI7dmFyIG89aStlLmxlbmd0aDtyZXR1cm4gdW5lc2NhcGUoZG9jdW1lbnQuY29va2llLnN1YnN0cihvKzEsbikuc3BsaXQoIjsiKVswXSl9LGNvbnRhaW5zQ2xhc3M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4hIWUmJihlLmNsYXNzTGlzdD9lLmNsYXNzTGlzdC5jb250YWlucyh0KTpuZXcgUmVnRXhwKCIoXnwgKSIrdCsiKCB8JCkiLCJnaSIpLnRlc3QoZS5jbGFzc25hbWUpKX0sYmluZENsaWNrRXZlbnQ6ZnVuY3Rpb24oZSx0KXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcj9lLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0KTplLmF0dGFjaEV2ZW50KCJvbmNsaWNrIix0KX0sYmluZFJlc2l6ZUV2ZW50OmZ1bmN0aW9uKGUpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyP3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGUpOndpbmRvdy5hdHRhY2hFdmVudCgicmVzaXplIixlKX0sYmluZEZvY3VzRXZlbnQ6ZnVuY3Rpb24oZSx0KXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcj9lLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIix0KTplLmF0dGFjaEV2ZW50KCJvbmZvY3VzIix0KX0sZ2V0QnJvd3Nlckxhbmd1YWdlOmZ1bmN0aW9uKCl7Zm9yKHZhciBlPSIiLHQ9Wyhkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZ3x8IiIpLnJlcGxhY2UoLy0vZywiXyIpLChuYXZpZ2F0b3IubGFuZ3VhZ2V8fG5hdmlnYXRvci51c2VyTGFuZ3VhZ2V8fCIiKS5yZXBsYWNlKC8tL2csIl8iKV0saT0wO2k8dC5sZW5ndGg7aSsrKXt2YXIgbj10W2ldO2lmKG4pe2lmKCJ6eHgiPT09biljb250aW51ZTtyZXR1cm4gZT0obj1uLnJlcGxhY2UoLy0vZywiXyIpKS5zcGxpdCgiXyIpWzBdLnRvTG93ZXJDYXNlKCksLTE8by5pbmRleE9mKG4pP246cltuXT9yW25dOi0xPG8uaW5kZXhPZihlKT9lOiIifX19LGdldEFQSUxhbmd1YWdlOmZ1bmN0aW9uKCl7cmV0dXJuIGFwaV9sYW5nPSgoJFpTSVFVdGlsLmdldEFQSVZhbHVlcygpfHx7fSkubGFuZ3VhZ2V8fCIiKS5yZXBsYWNlKC8tL2csIl8iKX0sZ2V0TGl2ZUxTSUQ6ZnVuY3Rpb24oKXtyZXR1cm4gJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS5lbWJlZG9iai5laW5mby5lbWJlZGlkfSxpc0NoYXRFeGlzdDpmdW5jdGlvbigpe3RyeXtyZXR1cm4gJFpTSVFVdGlsLmdldElmcmFtZSgpLiRTdXBwb3J0LmlzQ2hhdEV4aXN0KCl9Y2F0Y2goZSl7cmV0dXJuIiJ9fSxnZXRrZXlsaXN0OmZ1bmN0aW9uKCl7dmFyIGU9JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKSx0PWUud2lkZ2V0b2JqLmxzaWQsaT0kWlNJUVV0aWwuZ2V0TGl2ZUxTSUQoKSxuPSRaU0lRVXRpbC5nZXRBdnVpZCgpO3JldHVyblsiaXNpZnJhbWVlbmFibGVkIiwiRE5iYW5uZXIiLCRaU0lRVXRpbC5nZXRHRFBSQmFubmVyQ29va2llS2V5KCksIlpMRCIraSwiYXZfY2FsbCIsIlpMRF9BcGlBVkNhbGwiLCJaTERUUklHR0VSIitpLG4rIl9hY2Nlc3N0aW1lIiwiWlNJUSIsIlpMRFBFUlNPTkFMSVpFIiwiWkxEIit0LGUud2lkZ2V0b2JqLnNjcmVlbm5hbWUrIi0iXX0sY2hlY2tUcmFja2luZ0VuYWJsZWQ6ZnVuY3Rpb24oKXt2YXIgZT0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKS5pc3RyYWNraW5nLHQ9JFpTSVFVdGlsLmdldEFQSVZhbHVlcygpfHx7fTtyZXR1cm4gZXx8Im9uIj09dC50cmFja2luZ30saXNGZXRjaEdlb0RldGFpbHM6ZnVuY3Rpb24oKXtyZXR1cm4gMT09JFpTSVFVdGlsLmdldEFQSVZhbHVlcygpLmZldGNoZ2VvbG9jYXRpb259LHN0YXJ0QWZ0ZXJSZWFkeTpmdW5jdGlvbihlKXt0cnl7dmFyIHQsaT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpO2lmKGkpe3ZhciBuPWkud2lkZ2V0b2JqO2lmKHQ9bi5zdGF0dXMsJHp2LmVtYmVkSGlkZURldGFpbHMub3BlcmF0b3JzQnVzeSl7dmFyIG89bi5jYWxsX3N0YXR1czskenYuZW1iZWRIaWRlRGV0YWlscy5vcGVyYXRvcnNCdXN5PSEoaS5pc29ubHljYWxsP286dHx8byl9fSR6b2hvc3EuYWZ0ZXJSZWFkeShlLHt3aWRnZXRIaWRlSW5mbzokenYuZW1iZWRIaWRlRGV0YWlscyxzdGF0dXM6dH0pLCRaU0lRVXRpbC51cGRhdGVBcGlWYWx1ZXMoKX1jYXRjaChlKXt9fSxzdGFydE9uTG9hZDpmdW5jdGlvbigpe3RyeXskem9ob3NxLm9ubG9hZCgpLCRaU0lRVXRpbC51cGRhdGVBcGlWYWx1ZXMoKX1jYXRjaChlKXt9fSxzdGFydENoYXR3aW5kb3dPbmxvYWQ6ZnVuY3Rpb24oKXskem9ob3NxLnZhbHVlcy5jaGF0U3RhcnQmJiF3aW5kb3cuX0lTX1JFVkFNUCYmJHpvaG9zcS5jaGF0LnN0YXJ0KCEwKX0saWRldGlmeVZpc2l0b3JEYXRhOmZ1bmN0aW9uKCl7dmFyIGU9JFpTSVFXaWRnZXQuZ2V0V2lkZ2V0T2JqZWN0KCk7aWYoZS52aXNpdG9ybmFtZXx8ZS52aXNpdG9yZW1haWwpe3ZhciB0PSRaU0lRVXRpbC5nZXRBUElWYWx1ZXMoKSxpPSR6b2hvc3EudmlzaXRvcjtlLnZpc2l0b3JuYW1lJiYhdC5uYW1lJiZpLm5hbWUoZS52aXNpdG9ybmFtZSksZS52aXNpdG9yZW1haWwmJiF0LmVtYWlsJiZpLmVtYWlsKGUudmlzaXRvcmVtYWlsKX19LGdldEFQSVZpc2l0b3JJRDpmdW5jdGlvbigpe3JldHVybiAkWlNJUVV0aWwuZ2V0QVBJVmFsdWVzKCkuaWR9LGdldElmcmFtZTpmdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaXFpZnJhbWUiKTtyZXR1cm4hIWUmJihlLmNvbnRlbnRXaW5kb3d8fGUuY29udGVudERvY3VtZW50LmRvY3VtZW50fHxlLmNvbnRlbnREb2N1bWVudCl9LGdldENvbmZpZ0Zyb21TdG9yYWdlOmZ1bmN0aW9uKCl7dmFyIGU9IlpTSVEiKyR6b2hvc3Eud2lkZ2V0Y29kZSsiZGF0YSI7aWYoZSlyZXR1cm4gJFpTSVFMU0RCLmdldChlKX0sc2V0QVZVSURDb29raWU6ZnVuY3Rpb24oZSx0KXtpZihlJiYkem9ob3NxLl9kb21haW4pe3ZhciBpPSJaTEQiK2UrImF2dWlkIixuPSRaU0lRTFNEQi5nZXQoaSk7aWYobil7dmFyIG89JHpvaG9zcS5fZG9tYWluPzYzMDcyZTY6MzFlNDskWlNJUUxTREIuc2V0Q29va2llKGksbixvKSwhdCYmJFpTSVFMU0RCLnNldENvb2tpZSgiWkxEIiskem9ob3NxLndpZGdldGNvZGUrImF2dWlkIixuLDMxZTQpfX19LGNoZWNrQW5kU2V0WmxkcDpmdW5jdGlvbihlLHQpeyRaU0lRVXRpbC5nZXRabGRwKHQpfHwkWlNJUVV0aWwuc2V0WmxkcChlLHQpfSxnZXRSZWZlcnJlcjpmdW5jdGlvbigpe3JldHVybiBkb2N1bWVudC5yZWZlcnJlcn0sc2V0WmxkcDpmdW5jdGlvbihlLHQpeyRaU0lRTFNEQi5zZXRDb29raWUodCsiLV96bGRwIixlLDMxZTQpfSxnZXRabGRwOmZ1bmN0aW9uKGUpe3JldHVybiAkVVRTSGFuZGxlci5nZXRabGRwKCl8fCRaU0lRTFNEQi5nZXQoZSsiLV96bGRwIil9LHN0b3JlRGV0YWlsczpmdW5jdGlvbihlKXt2YXIgdD0iWlNJUSIrJHpvaG9zcS53aWRnZXRjb2RlKyJkYXRhIjskWlNJUUxTREIuc2V0KHQsZSw4NjRlNSl9LGFqYXg6ZnVuY3Rpb24oZSx0LGksbixvLHIpe3ZhciBhPXR8fGZ1bmN0aW9uKCl7fSxzPWl8fGZ1bmN0aW9uKCl7fSxjPW5ldyBYTUxIdHRwUmVxdWVzdDtpZigid2l0aENyZWRlbnRpYWxzImluIGMpYy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT10aGlzLnJlYWR5U3RhdGUmJigyMDA9PXRoaXMuc3RhdHVzP2EodGhpcy5yZXNwb25zZSk6cyh0aGlzLnJlc3BvbnNlKSl9LGMub3BlbigiR0VUIixlLCEwKSxuJiYoYy53aXRoQ3JlZGVudGlhbHM9ITApLHImJmMuc2V0UmVxdWVzdEhlYWRlcigieC1zaXEtZW1iZWQtdmVyc2lvbiIsMik7ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIFhEb21haW5SZXF1ZXN0KXtjPW5ldyBYRG9tYWluUmVxdWVzdDt0cnl7Yy5vbmxvYWQ9ZnVuY3Rpb24oKXthKHRoaXMucmVzcG9uc2UpfSxjLm9uZXJyb3I9ZnVuY3Rpb24oKXtzKHRoaXMucmVzcG9uc2UpfX1jYXRjaChlKXt9Yy5vcGVuKCJHRVQiLGUpLG4mJihjLndpdGhDcmVkZW50aWFscz0hMCl9Yy5zZW5kKCl9LHBvc3RBamF4OmZ1bmN0aW9uKGUsdCxpLG4sbyxyKXt2YXIgYT1pfHxmdW5jdGlvbigpe30scz1ufHxmdW5jdGlvbigpe30sYz1uZXcgWE1MSHR0cFJlcXVlc3Q7aWYoIndpdGhDcmVkZW50aWFscyJpbiBjKWMub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09dGhpcy5yZWFkeVN0YXRlJiYyMDA9PXRoaXMuc3RhdHVzP2EodGhpcy5yZXNwb25zZSk6cyh0aGlzLnJlc3BvbnNlKX0sYy5vcGVuKCJQT1NUIixlKSxvJiYoYy53aXRoQ3JlZGVudGlhbHM9ITApO2Vsc2UgaWYoInVuZGVmaW5lZCIhPXR5cGVvZiBYRG9tYWluUmVxdWVzdCl7Yz1uZXcgWERvbWFpblJlcXVlc3Q7dHJ5e2Mub25sb2FkPWZ1bmN0aW9uKCl7YSh0aGlzLnJlc3BvbnNlKX0sYy5vbmVycm9yPWZ1bmN0aW9uKCl7cyh0aGlzLnJlc3BvbnNlKX19Y2F0Y2goZSl7fWMub3BlbigiUE9TVCIsZSksbyYmKGMud2l0aENyZWRlbnRpYWxzPSEwKX1pZihyKWZvcih2YXIgZCBpbiByKXIuaGFzT3duUHJvcGVydHkoZCkmJmMuc2V0UmVxdWVzdEhlYWRlcihkLHJbZF0pO2Muc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbiIpLGMuc2VuZCh0KX0scGFyc2VUb0pTT046ZnVuY3Rpb24oZSl7dHJ5e2lmKCFlfHwib2JqZWN0Ij09dHlwZW9mIGUpcmV0dXJuIGU7ZT1KU09OLnBhcnNlKGUpfWNhdGNoKGUpe31yZXR1cm4gZX0sc2V0VGV4dDpmdW5jdGlvbihlLHQpe2RvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF07dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZSk7InRleHRDb250ZW50ImluIGRvY3VtZW50LmJvZHk/aS50ZXh0Q29udGVudD10OmkuaW5uZXJUZXh0PXR9LGdldFdlYkZvbnRGYW1pbHk6ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5ib2R5LHQ9IiIsaT0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKTtyZXR1cm4gaS5mb250WzBdPT0kWlNJUVV0aWwuU1RBVFVTX0VOQUJMRSYmaS5mb250WzFdLmRlZmF1bHQmJiIwIiE9aS5mb250WzFdLmRlZmF1bHQ/dD1hWyIiK2kuZm9udFsxXS5kZWZhdWx0XTplLmN1cnJlbnRTdHlsZT90PWUuY3VycmVudFN0eWxlLmZvbnRGYW1pbHk6ZG9jdW1lbnQuZGVmYXVsdFZpZXcmJih0PWRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZSxudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCJmb250LWZhbWlseSIpKSx0fHwic2FsZXNpcS1mb250In0sZ2V0SW1hZ2VVUkw6ZnVuY3Rpb24oZSx0KXt2YXIgaT10LmZwYXRoLG49IiIsbz0idW5kZWZpbmVkIiE9dHlwZW9mICRaU0lRQ2hhdCYmJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS51c2Vkb3dubG9hZHNlcnZlcixyPXQuaXNwcmV2aWV3fHwhMTtpZihvJiZpKXt2YXIgYT1pLnNwbGl0KCIvIilbMF07aWYoImZlbWJlZGNzcyI9PWF8fCJmbG9hdGltYWdlcHJldmlldyI9PWF8fCJmbG9hdGltYWdlIj09YXx8ImVtYmVkY3NzIj09YXx8ImZncmF2YXRhciI9PWF8fCJmc3RpY2tlcl9vbmxpbmUiPT1hfHwiZnN0aWNrZXJfb2ZmbGluZSI9PWF8fCJic3RpY2tlcl9vbmxpbmUiPT1hfHwiYnN0aWNrZXJfb2ZmbGluZSI9PWF8fCJzc3RpY2tlcl9vbmxpbmUiPT1hfHwic3N0aWNrZXJfb2ZmbGluZSI9PWF8fCJzZ2FsbGVyeSI9PWF8fCJwc3RpY2tlcl9vbmxpbmUiPT1hfHwicHN0aWNrZXJfb2ZmbGluZSI9PWF8fCJhcHBzX2N1c3RvbV9zdGlja2VyIj09YXx8IjBfZW1iZWRjc3MiPT1hfHwiOF9lbWJlZGNzcyI9PWEpe3ZhciBzPSRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkucGluZm8uc29pZCxjPWkuc3BsaXQoIi8iKVsxXSxkPXQuZm5hbWU/dC5mbmFtZTp0LnBmbmFtZTtpZigkWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmNvbW1vbmRhdGEuVURTZXJ2ZXJSZXZhbXApe3ZhciBsPXsieC1zaXEtc29pZCI6cywieC1zaXEtbW9kdWxlIjoiYnJhbmRzIiwieC1zaXEtdHlwZSI6YSwieC1zaXEtcGFyZW50aWQiOiRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuZW1iZWRvYmouZWluZm8uZW1iZWRpZCwieC1zaXEtcmVzb3VyY2VpZCI6YywieC1zaXEtZmlsZW5hbWUiOmQsIngtc2lxLW1vZGUiOnI/InByZXZpZXciOiJ2aWV3In07bj1VREhhbmRsZXIuZ2V0VUREb3duTG9hZExpbmsobCl9ZWxzZXt2YXIgdT17Ingtc2lxLWZpbGV0eXBlIjphLCJ4LXNpcS1sc2lkIjpjLnNwbGl0KCJfIilbMV0sIngtc2lxLXNvaWQiOnMsIngtc2lxLWlzcHJldmlldyI6ciwieC1zaXEtcGZuYW1lIjpkfTtuPVVESGFuZGxlci5nZXREb3duTG9hZExpbmsoYywiZGVmYXVsdCIsdSl9cmV0dXJuIG59fXJldHVybiBuPSRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuZW1iZWRvYmouc2NoZW1hKyI6Ly8iKyRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkuZW1iZWRzZXJ2ZXJ1cmwrIi8iK2Uuc2NyZWVubmFtZSsiLyIraSsiL3Bob3RvLmxzIiwxPT10LmlzcHJldmlldyYmKG4rPSI/aXNwcmV2aWV3PXRydWUiKSxufSxibGlua1RpdGxlOmZ1bmN0aW9uKGUpe2lmKCFlKXJldHVybiExO3N8fChjPWRvY3VtZW50LnRpdGxlLHM9ITApLGNsZWFyVGltZW91dChuKTt2YXIgdCxpPSIiO249c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt0PSJ0aXRsZSI9PXQ/KGk9ZSwiY2hhdG1zZyIpOihpPWMsInRpdGxlIiksZG9jdW1lbnQudGl0bGU9aX0sNTAwKX0sc3RvcEJsaW5raW5nOmZ1bmN0aW9uKCl7cyYmKGNsZWFyVGltZW91dChuKSxzPSExLGRvY3VtZW50LnRpdGxlPWMpfSxzZXRTaHJpbmtJbWFnZUNTUzpmdW5jdGlvbihlLHQsaSl7dmFyIG4sbyxyLGEscz0obj1lLm5hdHVyYWxIZWlnaHQsbz1lLm5hdHVyYWxXaWR0aCxyPXtXSURUSDpvLEhFSUdIVDpufSxhPVtpL28sdC9uXSwxPChhPU1hdGgubWluKGFbMF0sYVsxXSkpP3I6cj17V0lEVEg6byphLEhFSUdIVDpuKmF9KTtlLnN0eWxlLmhlaWdodD1zLkhFSUdIVCsicHgiLGUuc3R5bGUud2lkdGg9cy5XSURUSCsicHgifSxpc1ZhbGlkUGhvbmVObzpmdW5jdGlvbihlKXtyZXR1cm4hIWUmJm5ldyBSZWdFeHAoIl5bKzAtOSgpOi5cXC1cXFtcXF0gXSskIikudGVzdChlKX0sZ2V0UHJvZHVjdFVSTEZvckltYWdlOmZ1bmN0aW9uKCl7aWYoISRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuY29tbW9uZGF0YS5pc2RldilyZXR1cm4iIjt2YXIgZT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmVtYmVkb2JqO3JldHVybiBlLnNjaGVtYSsiOi8vIitlLnByb2R1Y3R1cmx9LGdldFVSTFBhcmFtZXRlckJ5TmFtZTpmdW5jdGlvbihlKXtpZihkKXJldHVybiBkW2VdO2Q9e307Zm9yKHZhciB0PXdpbmRvdy5sb2NhdGlvbi5zZWFyY2gucmVwbGFjZSgvXlw/L2csIiIpLnNwbGl0KCImIiksaT1bXSxuPTA7bjx0Lmxlbmd0aDtuKyspaT10W25dLnNwbGl0KCI9IiksZFtpWzBdXT1pWzFdO3JldHVybiBkW2VdfSxsaW5raWZ5U3ViU3RyaW5nOmZ1bmN0aW9uKGUpe3RyeXtlPWUucmVwbGFjZSgvKCg/OmhyZWZ8c3JjKT1bIiddPyk/KChodHRwcz86XC9cLyg/Ond3d1wuKT98d3d3XC4pW2EtejAtOV1bXkBdKj8pKD89JnF1b3Q7fCYjeDI3O3wmbHQ7fFtccyInPF18JCkvZ2ksZnVuY3Rpb24oZSx0LGksbil7dmFyIG89Ind3dy4iPT09bj8iaHR0cDovLyIraTppO3dpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCwkWlNJUVdpZGdldC5nZXRFbWJlZE9iamVjdCgpLmVtYmVkc2VydmVydXJsO3JldHVybiB0P2U6IjxhIHJlbD0nbm9vcGVuZXIgbm9yZWZlcnJlcicgaHJlZj0nIitvKyInIHRhcmdldD0nX2JsYW5rJyBjbGFzcz0nenNpcV9oeXBlcmxpbmsnID4iK2krIjwvYT4ifSl9Y2F0Y2goZSl7fXJldHVybiBlfSxpc0VtcHR5OmZ1bmN0aW9uKGUpe2Zvcih2YXIgdCBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkodCkpcmV0dXJuITE7cmV0dXJuITB9LGNoZWNrQW5kR2V0UGFyc2VkVmFsOmZ1bmN0aW9uKGUpe3ZhciB0PSRaU0lRVXRpbC5wYXJzZVRvSlNPTihlKTtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHR8fCJib29sZWFuIj09dHlwZW9mIHQ/dDplfSxmb3JtV2lkZ2V0T2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Zvcih2YXIgaSBpbiBlKXRbaV09JFpTSVFVdGlsLmNoZWNrQW5kR2V0UGFyc2VkVmFsKGVbaV0pO3JldHVybiAkWlNJUUFuYWx5dGljcz10LmFuYWx5dGljcywkWlNJUUF1dG9waWNrPSR6di5hdXRvcGlja3x8dC5hdXRvcGljayxfWlNJUS5icmFuZG5hbWU9dC5icmFuZG5hbWUsdH0sZm9ybUVtYmVkT2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Zvcih2YXIgaSBpbiBlKXRbaV09JFpTSVFVdGlsLmNoZWNrQW5kR2V0UGFyc2VkVmFsKGVbaV0pO3JldHVybiB0fSxnZXRPYmplY3RLZXlzOmZ1bmN0aW9uKGUpe2lmKE9iamVjdC5rZXlzKXJldHVybiBPYmplY3Qua2V5cyhlKTt2YXIgdD1bXTtmb3IodmFyIGkgaW4gZSllLmhhc093blByb3BlcnR5KGkpJiZ0LnB1c2goaSk7cmV0dXJuIHR9LGdldEdEUFJCYW5uZXI6ZnVuY3Rpb24oZSx0KXt2YXIgaSxuPXQudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50P3QudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50OmUuaTE4bmtleXNbImdkcHIuYmFubmVyLm5vdGlmeSJdLG89ZS5pMThua2V5c1siZ2Rwci5iYW5uZXIuYnV0dG9uLm9rIl0scj1lLmkxOG5rZXlzWyJnZHByLmJhbm5lci5idXR0b24uZG9ub3R0cmFjayJdLGE9KHQudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50P3QudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50OmUuaTE4bmtleXNbImdkcHIuYmFubmVyLmRvbm90dHJhY2siXSxlLmkxOG5rZXlzWyJnZHByLmJhbm5lci5sZWFybm1vcmUiXSkscz0hKCghKGk9JFVUU0hhbmRsZXIuZ2V0QVBJVmFsdWVzRm9yVVRTKCkpLnRyYWNraW5nfHwib2ZmIiE9aS50cmFja2luZykmJmUuaXN0cmFja2luZyksYz0iIjtlLmkxOG5rZXlzWyJnZHByLmJhbm5lci5wcmVmZXJlbmNlcyJdLGUuaTE4bmtleXNbImdkcHIuYmFubmVyLmNvb2tpZS5hY2NlcHRhbGwiXTtpZigoaT0kWlNJUVV0aWwuZ2V0QVBJVmFsdWVzKCkpLnRyYWNrYmFubmVyb2JqKXt2YXIgZD1pLnRyYWNrYmFubmVyb2JqO2lmKG49ZC5kZXNjcmlwdGlvbiYmMCE9ZC5kZXNjcmlwdGlvbi50cmltKCkubGVuZ3RoP2QuZGVzY3JpcHRpb246bixvPWQuYWNjZXB0YnV0dG9uJiYwIT1kLmFjY2VwdGJ1dHRvbi50cmltKCkubGVuZ3RoP2QuYWNjZXB0YnV0dG9uOm8scj1kLmRlY2xpbmVidXR0b24mJjAhPWQuZGVjbGluZWJ1dHRvbi50cmltKCkubGVuZ3RoP2QuZGVjbGluZWJ1dHRvbjpyLGQucG9saWN5dGV4dGFuZGxpbmspe3ZhciBsPWQucG9saWN5dGV4dGFuZGxpbms7YT1sLnRleHQmJjAhPWwudGV4dC50cmltKCkubGVuZ3RoP2wudGV4dDphLHQuY29va2llcG9saWN5dXJsPWwubGluayYmMCE9bC5saW5rLnRyaW0oKS5sZW5ndGgmJiRaU0lRVXRpbC5pc1ZhbGlkVVJMKGwubGluayk/bC5saW5rOnQuY29va2llcG9saWN5dXJsfX10LmNvb2tpZXBvbGljeXVybCYmKGM9IjxhIGNsYXNzPSdzaXEtbG5tb3InIGlkPSdnZHByYmFubmVydXJsJyB0YXJnZXQ9J19ibGFuaycgcmVsPSdub29wZW5lciBub3JlZmVycmVyJz4iKyRaU0lRVXRpbC5nZXRFbmNvZGVkVGV4dChhKSsiPC9hPiIpLG49JFpTSVFVdGlsLmdldEVuY29kZWRUZXh0KG4pO3ZhciB1PSRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkucGluZm8sZz11LmNvb2tpZVByZWZlcmVuY2U7aWYodS5jb29raWVTZWdyZWdhdGlvbilyZXR1cm4iY3VzdG9tIj09Z3x8JFpTSVFVdGlsLmFwcGVuZENvb2tpZUJhbm5lckpTKGZ1bmN0aW9uKCl7JFpTSVFVdGlsLmhhbmRsZU9uZUNvb2tpZShlLHQpfSksIiI7c3dpdGNoKEpTT04ucGFyc2UodC50cmFja2luZ3ByaXZhY3ljb25maWcpKXtjYXNlIDE6cmV0dXJuIjxkaXYgaWQ9J2dkcHJiYW5uZXInIGNsYXNzPSdzaXEtbXNnYmFucic+PHNwYW4gY2xhc3M9J2RpYi1taWQnPiIrbitjKyI8L3NwYW4+PGRpdiBjbGFzcz0nc2lxLWNsa29wdG4nPjxkaXYgY2xhc3M9J3NpcS1va2J0biBkaWItbWlkJyB0eXBlPTAgY29uZmlnPSIrdC50cmFja2luZ3ByaXZhY3ljb25maWcrIiBkb2NjbGljaz0ndXBkYXRlQ29va2llRm9yVHJhY2tpbmcnPiIrbysiPC9kaXY+PC9kaXY+PC9kaXY+IjtjYXNlIDI6cmV0dXJuIjxkaXYgaWQ9J2dkcHJiYW5uZXInIGNsYXNzPSdzaXEtbXNnYmFucic+PHNwYW4gY2xhc3M9J2RpYi1taWQnPiIrbitjKyI8L3NwYW4+PGRpdiBjbGFzcz0nc2lxLWNsa29wdG4nPjxkaXYgY2xhc3M9J3NpcS1va2J0biBkaWItbWlkJyB0eXBlPTAgY29uZmlnPSIrdC50cmFja2luZ3ByaXZhY3ljb25maWcrIiAgZG9jY2xpY2s9J3VwZGF0ZUNvb2tpZUZvclRyYWNraW5nJyA+IitvKyI8L2Rpdj4iKyhzPyIiOiI8ZGl2IGNsYXNzPSdzaXEtdHJrYnRuIGRpYi1taWQnIHR5cGU9MSBjb25maWc9Iit0LnRyYWNraW5ncHJpdmFjeWNvbmZpZysiIGRvY2NsaWNrPSd1cGRhdGVDb29raWVGb3JUcmFja2luZyc+IityKyI8L2Rpdj4iKSsiPC9kaXY+PC9kaXY+In19LGhhbmRsZU9uZUNvb2tpZTpmdW5jdGlvbihlLHQpe3ZhciBpPVpvaG9Db29raWUoKTtpZihpLmlzQ29va2llU2V0KCkpJFpTSVFVdGlsLnVwZGF0ZVRyYWNraW5nU3RhdHVzKGkuZ2V0U2VsZWN0ZWRDb29raWVzKCkpO2Vsc2V7dmFyIG49ZS5pMThua2V5cyxvPSRaU0lRV2lkZ2V0LmdldFdpZGdldE9iamVjdCgpLmkxOG5DaGF0d2luZG93S2V5cyxyPUpTT04ucGFyc2UodC50cmFja2luZ3ByaXZhY3ljb25maWcpLGE9W10scz1vWyJjb29raWUubGVhcm5tb3JlIl0sYz0iaHR0cF9jb29raWUiLGQ9dC5jb29raWVwb2xpY3l1cmwsbD0kWlNJUVV0aWwuZ2V0RW5jb2RlZFRleHQodC50cmFja2luZ3ByaXZhY3lzdGF0ZW1lbnQpfHxuWyJnZHByLmJhbm5lci5ub3RpZnkiXSx1PW5bImdkcHIuYmFubmVyLmxlYXJubW9yZSJdLGc9blsiZ2Rwci5iYW5uZXIuY29va2llLmFjY2VwdGFsbCJdLHA9blsiZ2Rwci5iYW5uZXIucHJlZmVyZW5jZXMiXSxmPW5bImdkcHIuYmFubmVyLmJ1dHRvbi5vayJdLFM9JHp2LnRyYWNrYmFubmVyb2JqO2lmKFMpe3ZhciBoPVMucG9saWN5dGV4dGFuZGxpbmt8fHt9O2w9JFpTSVFVdGlsLmdldEVuY29kZWRUZXh0KFMuZGVzY3JpcHRpb24pfHxsLHU9JFpTSVFVdGlsLmdldEVuY29kZWRUZXh0KGgudGV4dCl8fHUsZD1oLmxpbmt8fGQ7dmFyIG09JFpTSVFVdGlsLmdldEVuY29kZWRUZXh0KFMuYWNjZXB0YnV0dG9uKTtnPW18fGcsZj1tfHxmLHA9JFpTSVFVdGlsLmdldEVuY29kZWRUZXh0KFMucHJlZmVyZW5jZWJ1dHRvbil8fHB9ZCYmKGQ9JFpTSVFVdGlsLmdldFVSTFByb3RvY29sKGQpKSwxPT09cj9hLnB1c2goe3RpdGxlOmZ9KToyPT09ciYmYS5wdXNoKHt0aXRsZTpnLHN0eWxlOnsiYmFja2dyb3VuZC1jb2xvciI6IiNmZmYiLGNvbG9yOiIjMzMzIn19LHt0aXRsZTpwfSksaS5zaG93Q29uc2VudCh7dGl0bGU6bCxsaW5rVGl0bGU6dSxsaW5rVXJsOmQsYnV0dG9uczphLHRhYmxlQnV0dG9uczpbe3RpdGxlOm5bImdkcHIuYmFubmVyLmRlY2xpbmUiXX0se3RpdGxlOm5bImdkcHIuYmFubmVyLmFjY2VwdCJdfV0saGVhZGVyOnt0aXRsZTpvWyJjb29raWUueW91ci5wcmVmZXJlbmNlIl0sZGVzY3JpcHRpb246b1siY29va2llLnlvdXIucHJlZmVyZW5jZS5kZXNjIl0sbGlua1RpdGxlOm9bImNvb2tpZS5wb2xpY3kiXSxvcGVuSW5OZXdUYWI6ITAsbGlua1VybDpkfHwiaHR0cHM6Ly93d3cuem9oby5jb20vc2FsZXNpcS9jb29raWVzLXBvbGljeS5odG1sIn0sY29va2llX3R5cGVzOntlc3NlbnRpYWw6e3RpdGxlOm9bImNvb2tpZS5lc3NlbnRpYWwiXSxkZXNjcmlwdGlvbjpvWyJjb29raWUuZXNzZW50aWFsLmRlc2MiXSxsaW5rVGl0bGU6cyxtZXRhOlt7bmFtZToiJ0pTRVNTSU9OSUQnIixleHBpcnk6IldoZW4gdGhlIGJyb3dzaW5nIHNlc3Npb24gZW5kcyIscHVycG9zZToiVGhpcyBjb29raWUgaXMgZ2VuZXJhdGVkIGJ5IHNlcnZsZXQgY29udGFpbmVycyBsaWtlIFRvbWNhdCBhbmQgdXNlZCBmb3Igc2Vzc2lvbiBtYW5hZ2VtZW50IGZvciB0aGUgSFRUUCBwcm90b2NvbCIsdXJsOmN9LHtuYW1lOiInTFNfQ1NSRl9UT0tFTiciLGV4cGlyeToiV2hlbiB0aGUgYnJvd3Npbmcgc2Vzc2lvbiBlbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBpcyB1c2VkIGZvciBzZWN1cml0eSBwdXJwb3NlcyBpbiBvcmRlciB0byBhdm9pZCBDcm9zcy1TaXRlIFJlcXVlc3QgRm9yZ2VyeSwgKENTUkYpIGZvciB0aGUgQUpBWCBjYWxscyBtYWRlIGJ5IHRoZSB2aXNpdG9yIix1cmw6Y30se25hbWU6IidnZHByXycrPEBzY3JlZW5uYW1lQD4rJ19fZG9ub3R0cmFjayciLGV4cGlyeToiMSBtb250aCIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHRoZSBHRFBSIGNvbnNlbnQgZnJvbSB0aGUgdmlzaXRvciAtIGVuYWJsZS9kaXNhYmxlIHRyYWNraW5nIix1cmw6Y30se25hbWU6ImUzZGUxZjdkNDIocmFuZG9tIGNoZWNrc3VtKSIsZXhwaXJ5OiJXaGVuIHRoZSBicm93c2luZyBzZXNzaW9uIGVuZHMiLHB1cnBvc2U6IlRoaXMgY29va2llIGlzIHVzZWQgZm9yIGludGVybmFsIGxvYWQgYmFsYW5jaW5nIG9mIFNhbGVzSVEgc2VydmVycyIsdXJsOmN9LHtuYW1lOiInZmJwZ3NyXycrPEBsc2lkQD4iLGV4cGlyeToiVW50aWwgY2xlYXJlZCIscHVycG9zZToiVXNlZCBpbiB0aGUgRmFjZWJvb2sgYXBwIHRvIGF1dGhlbnRpY2F0ZSB0aGUgU2FsZXNJUSBBUEkgcmVxdWVzdCIsdXJsOmN9LHtuYW1lOiJ1ZXNpZ24iLGV4cGlyeToiMSBNb250aCIscHVycG9zZToiVGhpcyBjb29raWUgaXMgdXNlZCB0byBtYW5hZ2UgdGhlIHNlY3VyaXR5IG9mIHRoZSBhcHBsaWNhdGlvbnMuIix1cmw6Y31dfSxwZXJmb3JtYW5jZTp7dGl0bGU6b1siY29va2llLnBlcmZvcm1hbmNlIl0sZGVzY3JpcHRpb246b1siY29va2llLnBlcmZvcm1hbmNlLmRlc2MiXSxsaW5rVGl0bGU6cyxtZXRhOlt7bmFtZToiaXNpZnJhbWVlbmFibGVkIixleHBpcnk6IjEgZGF5IixwdXJwb3NlOiJUaGlzIGNvb2tpZSBpcyBzZXQgd2hlbiB0aGUgTGl2ZSBDaGF0IGZlYXR1cmUgaXMgZGlzYWJsZWQgYnkgcHJvYWN0aXZlIGNoYXRzL3RyaWdnZXIvSlNBUEkiLHVybDpjfSx7bmFtZToiJ3psZCcrPEBsc2lkQD4rJ0FydGljbGVfJys8QGFydGljbGVfaWRAPiIsZXhwaXJ5OiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIGlmIGFuIGFydGljbGUvRkFRIGlzIGxpa2VkIG9yIG5vdCBieSB0aGUgdmlzaXRvciIsdXJsOmN9LHtuYW1lOiInWkxEJys8QGFwcGlkQD4rJ1dBSVRJTkcnIixleHBpcnk6IkVtYmVkIHdhaXRpbmcgdGltZSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHRoZSB3YWl0aW5nIHRpbWUgb2YgdGhlIGNoYXQgdGltZSBkZXRhaWxzIGZvciBhIGNoYXQiLHVybDpjfSx7bmFtZToiJ1pMRCcrPEBhcHBpZEA+KydXVElNRSciLGV4cGlyeToiRW1iZWQgd2FpdGluZyB0aW1lIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgdGhlIHJlbWFpbmluZyB3YWl0aW5nIHRpbWUgZGV0YWlscyBmb3IgYSBjaGF0Iix1cmw6Y30se25hbWU6ImNkbl9zdGF0dXMiLGV4cGlyeToiMiBkYXlzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgdGhlIGNkbiBzdGF0dXMgZm9yIGdldHRpbmcgdGhlIHN0YXRpYyBmaWxlcyIsdXJsOmN9LHtuYW1lOiI8QGNoYXRpZEA+KydfdHJhbnNsYXRlJyIsZXhwaXJ5OiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHdoZXRoZXIgdHJhbnNsYXRpb24gaXMgZW5hYmxlZCBvciBub3QiLHVybDpjfSx7bmFtZToiJ2dkcHJfJys8QHNjcmVlbm5hbWVAPisnX3RyYWNraW5nY29uZmlnJyIsZXhwaXJ5OiIxIE1vbnRoIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgR0RQUiBjb25zZW50IGNvbmZpZ3VyZWQgaW4gcG9ydGFsIHNpZGUgdG8gaGFuZGxlIHRoZSB2aXNpdG9yIGVuZCB3aWRnZXQgYWNjb3JkaW5nbHkgd2l0aCBjb25zZW50IGJhbm5lcnMiLHVybDpjfV19LGFuYWx5dGljczp7dGl0bGU6b1siY29va2llLmFuYWx5dGljcyJdLGRlc2NyaXB0aW9uOm9bImNvb2tpZS5hbmFseXRpY3MuZGVzYyJdLGxpbmtUaXRsZTpzLG1ldGE6W3tuYW1lOiI8QHNjcmVlbm5hbWVAPisnLSdfemxkcCciLGV4cGlyeToiMiB5ZWFycyIscHVycG9zZToiVGhpcyBjb29raWUgaWRlbnRpZmllcyB0aGUgdW5pcXVlIHZpc2l0b3JzIGZvciB0aGUgd2Vic2l0ZSIsdXJsOmN9LHtuYW1lOiI8QHNjcmVlbm5hbWVAPisnLSdfemxkdCciLGV4cGlyeToiMSBkYXkiLHB1cnBvc2U6IlRoaXMgY29va2llIGlkZW50aWZpZXMgdW5pcXVlIHZpc2l0cyBmb3IgYSB2aXNpdG9yIGluIHRoZSB3ZWJzaXRlIix1cmw6Y30se25hbWU6IjxAc2NyZWVubmFtZUA+KyctJ19zaXFpZCciLGV4cGlyeToiMiB5ZWFycyIscHVycG9zZToiVGhpcyBjb29raWUgaGVscHMgeW91IHRyYWNrIHVzZXJzIGFjcm9zcyBhbGwgZG9tYWlucyIsdXJsOmN9LHtuYW1lOiI8QHNjcmVlbm5hbWVAPisnLSdfdXVpZCciLGV4cGlyeToiMiB5ZWFycyIscHVycG9zZToiVGhpcyBjb29raWUgcHJvdmlkZXMgdXNlciBpZCBuZWVkZWQgaW4gUkVTVCBBUEkgdG8gZ2V0IHRoZSBkYXRhIG9mIHRoZSBjdXJyZW50IHVzZXIuIix1cmw6Y30se25hbWU6IjxAc2NyZWVubmFtZUA+KyctJ21jX2NpZCciLGV4cGlyeToiMSBkYXkiLHB1cnBvc2U6IlRoaXMgY29va2llIHRyYWNrcyBNYWlsY2hpbXAgZGV0YWlscyBhYm91dCB0aGUgdmlzaXRvciB2aWEgY2FtcGFpZ24gaWQgJiBtZW1iZXIgZW1haWwncyB1bmlxdWUgaWQiLHVybDpjfSx7bmFtZToiPEBzY3JlZW5uYW1lQD4rJy0nbWNfZWlkJyIsZXhwaXJ5OiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgdHJhY2tzIE1haWxjaGltcCBkZXRhaWxzIGFib3V0IHRoZSB2aXNpdG9yIHZpYSB1bmlxdWUgaWQgJiBtZW1iZXIgZW1haWwncyB1bmlxdWUgaWQiLHVybDpjfSx7bmFtZToiX3psZHZmcCIsZXhwaXJ5OiI2IG1vbnRocyIscHVycG9zZToiVXNlZCB0byBpZGVudGlmeSB2aXNpdG9ycyByZWZlcnJlZCBmcm9tIGVtYWlsIGNhbXBhaWducyIsdXJsOmN9LHtuYW1lOiInWkxEJys8QGFwcGlkQD4iLGV4cGlyeToiMSB3ZWVrIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgdGhlIExpdmUgQ2hhdCBhdHRlbmRlciBkZXRhaWxzIGFuZCB2aXNpdG9yIGRldGFpbHMiLHVybDpjfSx7bmFtZToiJ1pMRCcrPEBsc2lkQD4rJ2F2dWlkJyIsZXhwaXJ5OiIxIHdlZWsiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgYXZ1aWQgdW5pcXVlIGlkIHRvIGRlbm90ZSBhIHZpc2l0b3IiLHVybDpjfSx7bmFtZToiJ1pMRFRSSUdHRVInKzxAYXBwaWRAPiIsZXhwaXJ5OiIxIHdlZWsiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgdHJpZ2dlciBkZXRhaWxzIHdoZW4gdGhlIHZpc2l0b3IgaXMgY29udGFjdGVkIix1cmw6Y30se25hbWU6IlpMRFBFUlNPTkFMSVpFIixleHBpcnk6IjE4MCBzZWNvbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgYXR0ZW5kZXIgSUQgaW4gY29va2llIGZvciBwZXJzb25hbGl6ZWQgY2hhdCIsdXJsOmN9LHtuYW1lOiInWkxEJys8QGxzaWRAPisndGFib3duZXInIixleHBpcnk6IjE4MCBzZWNvbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgV01TIHNlc3Npb24gSUQiLHVybDpjfSx7bmFtZToiPEBhdnVpZEA+KydfYWNjZXNzdGltZSciLGV4cGlyeToiMSBkYXkiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgbGFzdCBmZXRjaGVkIGNvbnZlcnNhdGlvbidzIGVuZCB0aW1lIix1cmw6Y31dfX0scHJlZmVyZW5jZUJ1dHRvbnM6W3t0aXRsZTpvWyJjb29raWUudXNlLmVzc2VudGlhbCJdfSx7dGl0bGU6blsiZ2Rwci5iYW5uZXIuYWNjZXB0Il19XSxoYW5kbGVyOmZ1bmN0aW9uKGUsdCl7JFpTSVFVdGlsLnVwZGF0ZVRyYWNraW5nU3RhdHVzKHQuc2VsZWN0ZWRfY29va2llcyl9fSl9fSxnZXRHRFBSQmFubmVyQ29va2llS2V5OmZ1bmN0aW9uKGUpe3JldHVybiJnZHByXyIrKGU9ZXx8JFpTSVFXaWRnZXQuZ2V0V2lkZ2V0T2JqZWN0KCkuc2NyZWVubmFtZSl9LHVwZGF0ZUNvb2tpZUZvclRyYWNraW5nOmZ1bmN0aW9uKGUsdCl7dmFyIGk9JFpTSVFVdGlsLmdldEdEUFJCYW5uZXJDb29raWVLZXkoKSxuPSgkWlNJUVV0aWwuZ2V0R0RQUkJhbm5lckNvb2tpZUtleSgpLCRaU0lRVXRpbC5nZXRBUElWYWx1ZXMoKXx8e30pO2krPSJfX2Rvbm90dHJhY2siOyRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkuY29va2llX29wdGltaXphdGlvbjt2YXIgbz1mdW5jdGlvbigpe2hhbmRsZUlmcmFtZUZ1bmN0aW9uKGZ1bmN0aW9uKGUpe2UuJFN1cHBvcnQuaGFuZGxlRG9tYWluU3RvcmFnZSgidXBkYXRlY29yc2RhdGEiLCJjb29raWUiKX0pfSxyPSRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuZW1iZWRvYmouZWluZm8uZW1iZWRpZDtzd2l0Y2goJFpTSVFMU0RCLnN0b3JlSW5Mb2NhbFN0b3JhZ2UoIlpTSVEiK3IrIi1jb29raWVfY29uZmlnIiwkWlNJUVV0aWwuY29va2llQ29uZmlnKSxlKXtjYXNlIDA6JFpTSVFOb3RpZnlDb29raWUuaGFuZGxlR290aXQoKSwkWlNJUUNvb2tpZS5zZXQoaSwwLDI1OTJlNiwhMCksJFpTSVFVdGlsLmhpZGVHRFBSQmFubmVyKCksIm9uIj09bi5yZXNldCYmJFpTSVFVdGlsLmNoZWNrVHJhY2tpbmdFbmFibGVkKCkmJiRaTm90aWZ5VHJhY2tpbmcoMSwib24iKSwkVVRTSGFuZGxlci5pbml0KCEwKSxvKCk7YnJlYWs7Y2FzZSAxOiRaU0lRTm90aWZ5Q29va2llLmhhbmRsZUROVCgpLCRaU0lRQ29va2llLnNldChpLDEsMjU5MmU2LCEwKSwkWk5vdGlmeVRyYWNraW5nKDEsIm9mZiIpLCRaU0lRVXRpbC5oaWRlR0RQUkJhbm5lcigpLG8oKX19LGNoZWNrR0RQUkJhbm5lclN0YXR1czpmdW5jdGlvbihlLHQsaSl7dmFyIG49aS5waW5mby5waW5mby50cmFja2luZ3ByaXZhY3ljb25maWcsbz0kWlNJUVV0aWwuZ2V0R0RQUkJhbm5lckNvb2tpZUtleSh0KTtzd2l0Y2goZSl7Y2FzZSAwOnJldHVybiAwIT0kWlNJUUNvb2tpZS5nZXQobysiX19kb25vdHRyYWNrIikubGVuZ3RoO2Nhc2UgMTpyZXR1cm4gMD09JFpTSVFDb29raWUuZ2V0KG8rIl9fZG9ub3R0cmFjayIpO2Nhc2UgMjpyZXR1cm4gMT09JFpTSVFDb29raWUuZ2V0KG8rIl9fZG9ub3R0cmFjayIpJiYyPT1ufXJldHVybiExfSxoaWRlR0RQUkJhbm5lcjpmdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJnZHByYmFubmVyIik7ZSYmJFpTSVFXaWRnZXRVSS5hZGRDbGFzcyhlLCJnZHByYmFubmVyX3NsaWRlIil9LGdldEdEUFJQZW5kaW5nU3RhdHVzOmZ1bmN0aW9uKGUsdCxpKXt2YXIgbj0hMTt0cnl7aWYodC5waW5mbyYmdC5waW5mby5waW5mbyl7dmFyIG89dC5waW5mby5waW5mbyxyPUpTT04ucGFyc2Uoby5pc2dkcHJlbmFibGVkKSxhPTE9PWUud2lkZ2V0b2JqLmlzZ2RwcmVuYWJsZWQscz1vLnRyYWNraW5ncHJpdmFjeWNvbmZpZztyJiYwIT1zJiYhJFpTSVFVdGlsLmNoZWNrR0RQUkJhbm5lclN0YXR1cygwLGksdCkmJmEmJihuPSEwKX19Y2F0Y2goZSl7fXJldHVybiBufSxpc1ZhbGlkVVJMOmZ1bmN0aW9uKGUpe3ZhciB0PW5ldyBSZWdFeHAoL14oKChodHRwfGh0dHBzKTpcL1wvKHd3dy4pezAsMX0pfHd3dy4pezF9W2EtekEtWjAtOV0rWy1hLXpBLVowLTlAOi8lXysufiM/Ji89XSpbXi5dJC8pO3JldHVybiB2b2lkIDAhPT1lJiZ0LnRlc3QoZSl9LGh5cGVyTGlua3NTdWJTdHJpbmc6ZnVuY3Rpb24oZSx0LGkpe3RyeXtpZigtMSE9PWUuaW5kZXhPZih0KSYmMCE9aS5sZW5ndGgpe3ZhciBuPWUubGVuZ3RoLG89dC5sZW5ndGgscj1lLnN1YnN0cmluZygwLGUuaW5kZXhPZih0KSksYT1lLnN1YnN0cmluZyhlLmluZGV4T2YodCksZS5pbmRleE9mKHQpK28pLHM9ZS5zdWJzdHJpbmcoZS5pbmRleE9mKHQpK28sbik7ZT1yKyhhPSI8YSBjbGFzcz0nc2lxLWxubW9yJyB0YXJnZXQ9J19ibGFuaycgcmVsPSdub29wZW5lciBub3JlZmVycmVyJyBocmVmPSciKyhpPS0xPT1pLmluZGV4T2YoImh0dHAiKT8iaHR0cDovLyIraTppKSsiJz4iK2ErIjwvYT4iKStzfWVsc2UgMCE9aS5sZW5ndGgmJihlKz0iIDxhIGNsYXNzPSdzaXEtbG5tb3InIHJlbD0nbm9vcGVuZXIgbm9yZWZlcnJlcicgdGFyZ2V0PSdfYmxhbmsnIGhyZWY9JyIrKGk9LTE9PWkuaW5kZXhPZigiaHR0cCIpPyJodHRwOi8vIitpOmkpKyInPiIrdCsiPC9hPiIpfWNhdGNoKGUpe31yZXR1cm4gZX0sc3RyaW5naWZ5OmZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gT2JqZWN0LnRvSlNPTj9PYmplY3QudG9KU09OKGUpOkpTT04uc3RyaW5naWZ5KGUpfWNhdGNoKGUpe319LGdldE5hdmlnYXRpb25PYmo6ZnVuY3Rpb24oZSl7dmFyIHQ9ZT9lLmRvY3VtZW50Om51bGwsaT0iIjtpZihzJiZjJiYoaT1jKSx0JiZ0LmxvY2F0aW9uJiZ0LmxvY2F0aW9uLnByb3RvY29sKXtpZigtMT09ZS5sb2NhdGlvbi5wcm90b2NvbC5pbmRleE9mKCJodHRwIikmJmUucGFyZW50JiZlLnBhcmVudCE9ZSlyZXR1cm4gJFpTSVFVdGlsLmdldE5hdmlnYXRpb25PYmooZS5wYXJlbnQpO3ZhciBuOyhuPXt9KS5jdXJyZW50X3BhZ2U9JHpvaG9zcS52aXNpdG9yLmNwYWdlKCl8fHQubG9jYXRpb24uaHJlZi5zdWJzdHJpbmcoMCwzMDcyKSxuLnBhZ2VfdGl0bGU9JHpvaG9zcS52aXNpdG9yLnBhZ2V0aXRsZSgpfHxpfHx0LnRpdGxlLnN1YnN0cmluZygwLDMwNzIpLG4ucmVmZXJlcj0kem9ob3NxLnZpc2l0b3IucmVmZXJlcigpfHx0LnJlZmVycmVyLnN1YnN0cmluZygwLDMwNzIpO3RyeXtuLmxzaWQ9JFpTSVFXaWRnZXQuZ2V0V2lkZ2V0T2JqZWN0KCkubHNpZH1jYXRjaChlKXt9cmV0dXJuIG59KG49e30pLmN1cnJlbnRfcGFnZT0kem9ob3NxLnZpc2l0b3IuY3BhZ2UoKXx8ZG9jdW1lbnQubG9jYXRpb24uaHJlZi5zdWJzdHJpbmcoMCwzMDcyKSxuLnBhZ2VfdGl0bGU9JHpvaG9zcS52aXNpdG9yLnBhZ2V0aXRsZSgpfHxpfHxkb2N1bWVudC50aXRsZS5zdWJzdHJpbmcoMCwzMDcyKSxuLnJlZmVyZXI9JHpvaG9zcS52aXNpdG9yLnJlZmVyZXIoKXx8ZG9jdW1lbnQucmVmZXJyZXIuc3Vic3RyaW5nKDAsMzA3Mik7dHJ5e24ubHNpZD0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKS5sc2lkfWNhdGNoKGUpe31yZXR1cm4gbn0sZ2V0QXZ1aWQ6ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mICRaU0lRV2lkZ2V0fHx3aW5kb3cuX1pTSVFfUkVTRVRfRVNTRU5USUFMPyRaU0lRTFNEQi5nZXQoIlpMRCIrJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS53aWRnZXRvYmoubHNpZCsiYXZ1aWQiKTooJFpTSVFXaWRnZXQuYXZ1aWR8fCgkWlNJUVdpZGdldC5hdnVpZD0kWlNJUUNoYXQuYXZ1aWR2YWx8fCRaU0lRTFNEQi5nZXQoIlpMRCIrJFpTSVFDaGF0LmdldFdpZGdldERhdGEoKS53aWRnZXRvYmoubHNpZCsiYXZ1aWQiKSksJFpTSVFXaWRnZXQuYXZ1aWQpfSxnZXRMaXZlTFNJREZyb21TdG9yYWdlOmZ1bmN0aW9uKGUpe3ZhciB0PSRaU0lRVXRpbC5nZXRDb25maWdGcm9tU3RvcmFnZSgpO3RyeXtyZXR1cm4icmF3aWQiPT1lP3Qud2lkZ2V0b2JqLmxzaWQ6dC5lbWJlZG9iai5laW5mby5lbWJlZGlkfWNhdGNoKGUpe3JldHVybiIifX0sY2hlY2tTdG9yZWRJZEFuZFJlbW92ZVN0b3JhZ2U6ZnVuY3Rpb24oZSl7dmFyIHQ9JFpTSVFVdGlsLmdldExpdmVMU0lERnJvbVN0b3JhZ2UoInJhd2lkIiksaT0kWlNJUUxTREIuZ2V0KCJaTEQiKyR6b2hvc3Eud2lkZ2V0Y29kZSsiY3Z1aWQiKTtpZihpJiZpIT1lKXt2YXIgbj0kWlNJUVV0aWwuZ2V0TGl2ZUxTSURGcm9tU3RvcmFnZSgpO2lmKCFuKXJldHVybjt2YXIgbz1bIlpMRCIrbiwiWkxEIituKyJXQUlUSU5HIiwiWkxEVFJJR0dFUiIrbiwiWkxEIituKyJRVUVVRUlOR0NIQVRTIiwiWkxEIituKyJXVElNRSJdLHI9by5sZW5ndGg7JFpTSVFMU0RCLnJlbW92ZVNlc3Npb25TdG9yZSgkWlNJUUxTREIuZ2V0KCJaTEQiK3QrImF2dWlkIikrIl9mb3JtY29udGV4dGluaXRpYXRlZCIpLCRaU0lRTFNEQi5yZW1vdmVTZXNzaW9uU3RvcmUoIlpMRCIrbisibGFzdHZpZXciKTtmb3IodmFyIGE9MDthPHI7YSsrKSRaU0lRTFNEQi5yZW1vdmUob1thXSl9dmFyIHM9JHpvaG9zcS5fZG9tYWluPzYzMDcyZTY6IiI7JFpTSVFMU0RCLnNldENvb2tpZSgiWkxEIiskem9ob3NxLndpZGdldGNvZGUrImN2dWlkIixlLHMpfSxnZXRFbGVtZW50SGVpZ2h0OmZ1bmN0aW9uKGUpe3ZhciB0PWdldENvbXB1dGVkU3R5bGUoZSkuZGlzcGxheTtlLnN0eWxlLmRpc3BsYXk9ImlubGluZS1ibG9jayI7dmFyIGk9ZS5vZmZzZXRIZWlnaHQ7cmV0dXJuIGUuc3R5bGUuZGlzcGxheT10LGl9LGlzT2JqZWN0ZGVlcEVxdWFsOmZ1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuITA7aWYodm9pZCAwPT09dHx8dm9pZCAwPT09dClyZXR1cm4hMTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhlKSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQpO2lmKGkubGVuZ3RoIT1uLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIG89MDtvPGkubGVuZ3RoO28rKyl7dmFyIHI9aVtvXTtzd2l0Y2godHlwZW9mIGVbcl0pe2Nhc2Uib2JqZWN0IjppZighdGhpcy5pc09iamVjdGRlZXBFcXVhbChlW3JdLHRbcl0pKXJldHVybiExO2JyZWFrO2Nhc2UiZnVuY3Rpb24iOmlmKHZvaWQgMD09PXRbcl18fGVbcl0udG9TdHJpbmcoKSE9dFtyXS50b1N0cmluZygpKXJldHVybiExO2JyZWFrO2Nhc2UibnVtYmVyIjppZihpc05hTihlW3JdKSYmaXNOYU4odFtyXSkpYnJlYWs7ZGVmYXVsdDppZihlW3JdIT10W3JdKXJldHVybiExfX1yZXR1cm4hMH0sYmluZEV2ZW50c0ZvckltZ1ByZXZpZXc6ZnVuY3Rpb24oKXtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgienNpcWltYWdlcHJldmlldyIpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXtzd2l0Y2goZS50YXJnZXQuZ2V0QXR0cmlidXRlKCJkb2NjbGljayIpKXtjYXNlInpzaXFjbG9zZSI6JFpTSVFDaGF0V2luZG93LmNsb3NlSW1hZ2VQcmV2aWV3KGUpO2JyZWFrO2Nhc2UienNpcXN0YXJ0Y2hhdCI6JFpTSVFDaGF0V2luZG93LnN0YXJ0Q2hhdChlKTticmVhaztjYXNlInpzaXFmYXF2b3RlIjokWlNJUUNoYXRXaW5kb3cudXBkYXRlVm90ZShlLGUudGFyZ2V0KTticmVhaztjYXNlInRvZ2dsZXRvY3ZpZXciOiRaU0lRQ2hhdFdpbmRvdy50b2dnbGVUb2NDb250YWluZXIoKTticmVhaztjYXNlInRvZ2dsZXRvY2NoaWxkIjokWlNJUUNoYXRXaW5kb3cudG9nZ2xlVG9jQ2hpbGRWaWV3KGUudGFyZ2V0KTticmVhaztjYXNlImFydGljbGVzY2Nyb2xsdG92aWV3IjokWlNJUUNoYXRXaW5kb3cuYXJ0aWNsZVNjcm9sbFRvVmlldyhlLnRhcmdldCl9fSl9LHByZUNvbm5lY3REb21haW5zOmZ1bmN0aW9uKCl7aWYoQXJyYXkuaXNBcnJheSh3aW5kb3cuX1NUQVRJQ1VSTFMpKXtmb3IodmFyIGU9JFpTSVFDaGF0LmdldFNjcmlwdFNvdXJjZSgpLnNwbGl0KCI6Ly8iKVswXSsiOi8vIix0PV9TVEFUSUNVUkxTLmxlbmd0aCxpPSR6b2hvc3Eubm9uY2Usbj0wO248dDtuKyspe3ZhciBvPV9TVEFUSUNVUkxTW25dOy0xPT1vLmluZGV4T2YoImh0dHBzOi8vIikmJihvPWUrbyk7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO3IucmVsPSJwcmVjb25uZWN0IixyLmhyZWY9byxpJiZyLnNldEF0dHJpYnV0ZSgibm9uY2UiLGkpLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQociksci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHIpLHI9bnVsbH13aW5kb3cuX1NUQVRJQ1VSTFMubGVuZ3RoJiYoJFpTSVFVdGlsLnN0YXRpY1VSTD1fU1RBVElDVVJMUyksZGVsZXRlIHdpbmRvdy5fU1RBVElDVVJMU319LGdldEVuY29kZWRUZXh0OmZ1bmN0aW9uKGUpe3RyeXtlJiYic3RyaW5nIj09dHlwZW9mIGUmJihlPShlPWUucmVwbGFjZSgvJiMzOTt8JiN4Mjc7L2csIiciKS5yZXBsYWNlKC8mcXVvdDsvZywnIicpLnJlcGxhY2UoLyZndDsvZywiPiIpLnJlcGxhY2UoLyZsdDsvZywiPCIpLnJlcGxhY2UoLyZhbXA7L2csIiYiKS5yZXBsYWNlKC8mI3gyRjsvZywiLyIpKS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IikucmVwbGFjZSgvIi9nLCImcXVvdDsiKS5yZXBsYWNlKC8nL2csIiYjeDI3OyIpLnJlcGxhY2UoL1wvL2csIiYjeDJGOyIpKX1jYXRjaChlKXt9cmV0dXJuIGV9LGJpbmRFdmVudHNDb29raWVCYW5uZXI6ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ2RwcmJhbm5lciIpO2UmJmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0LGk9dC5nZXRBdHRyaWJ1dGUoImRvY2NsaWNrIik7aWYoInVwZGF0ZUNvb2tpZUZvclRyYWNraW5nIj09aSlyZXR1cm4gJFpTSVFVdGlsLmNvb2tpZUNvbmZpZz17aXNGdW5jdGlvbmFsaXR5OiEwLGlzQW5hbHl0aWNzOiEwfSx2b2lkICRaU0lRVXRpbC51cGRhdGVDb29raWVGb3JUcmFja2luZyhKU09OLnBhcnNlKHQuZ2V0QXR0cmlidXRlKCJ0eXBlIikpLHQuZ2V0QXR0cmlidXRlKCJjb25maWciKSk7InNob3dDb29raWVQcmVmZXJlbmNlcyIhPWl8fCRaU0lRTm90aWZ5Q29va2llLnBvcHVsYXRlVUkoKX0pfSxnZXRVcmxQYXJhbU9iajpmdW5jdGlvbihlKXt2YXIgdD17fTtpZihlKXtmb3IodmFyIGk9KGUuc3BsaXQoIj8iKVsxXXx8IiIpLnNwbGl0KCImIiksbj0wO248aS5sZW5ndGg7bisrKXt2YXIgbz1pW25dLnNwbGl0KCI9Iik7dFtvWzBdXT1vWzFdfXJldHVybiB0fX0sZ2V0SWZyYW1lU3VwcG9ydE9iajpmdW5jdGlvbigpe3ZhciBlPSRaU0lRVXRpbC5nZXRJZnJhbWUoKTtyZXR1cm4gZSYmZS4kU3VwcG9ydCYmZS4kU3VwcG9ydC5FbWJlZE9iaj9lLiRTdXBwb3J0LkVtYmVkT2JqOnt9fX19KCksJFpTSVFMaWNlbmNlPXt2ZXJpZnk6ZnVuY3Rpb24oZSl7dmFyIHQ9JFpTSVFVdGlsLmdldElmcmFtZSgpLiRTdXBwb3J0LkVtYmVkT2JqLmxpbmZvW2VdO3JldHVybiB0JiZKU09OLnBhcnNlKHQpfHwhMX0saXNGcmVlUGxhbjpmdW5jdGlvbigpe3ZhciBlPXBhcnNlSW50KCRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCkuZW1iZWRvYmoubGluZm8ucGxhbmlkKTtyZXR1cm4tMTxbMSw3LDEyLDI5XS5pbmRleE9mKGUpfX07ZnVuY3Rpb24gaGFuZGxlSWZyYW1lRnVuY3Rpb24oZSl7dmFyIHQ9JFpTSVFVdGlsLmdldElmcmFtZSgpO3QmJnQuJFN1cHBvcnQmJmUodCl9dmFyICRVVFNIYW5kbGVyPSRVVFNIYW5kbGVyfHxmdW5jdGlvbigpe3ZhciBTPWZ1bmN0aW9uKHQsZSl7dmFyIGksbj17fTtuW3RdPWU7dHJ5e2k9JFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oInV0c3N5bmNjYWNoZSIpfHwkWlNJUVV0aWwuc3RyaW5naWZ5KFtdKSwoaT1KU09OLnBhcnNlKGkpKS5wdXNoKG4pfWNhdGNoKHQpe2k9W119JFpTSVFVVFMuc3RvcmVJblNlc3Npb24oInV0c3N5bmNjYWNoZSIsJFpTSVFVdGlsLnN0cmluZ2lmeShpKSl9LGE9ZnVuY3Rpb24odCxlKXt2YXIgaT1lW3RdO3N3aXRjaChwYXJzZUludCh0KSl7Y2FzZSAxOiRVVFNIYW5kbGVyLmhhbmRsZVRyaWdnZXJDdXN0b21BY3Rpb24oZnVuY3Rpb24oKXskVVRTSGFuZGxlci5oYW5kbGVDaGF0VHJpZ2dlcnMoaS50eXBlLGkuZGF0YSl9KTticmVhaztjYXNlIDI6JFpTSVFDaGF0V2luZG93Lm9wZW5DaGF0V2luZG93KCEwKTticmVhaztjYXNlIDM6JHpvaG9zcS5mbG9hdGJ1dHRvbi52aXNpYmxlKCJzaG93Iik7YnJlYWs7Y2FzZSA0OiRaU0lRVVRTQWN0aW9uLmhhbmRsZUJ1dHRvbkdsb3coKTticmVhaztjYXNlIDU6JFpTSVFVVFNBY3Rpb24uaGFuZGxlQW5pbWF0ZSgpO2JyZWFrO2Nhc2UgNjokWlNJUVV0aWwuZ2V0SWZyYW1lKCkuJFN1cHBvcnQuc2V0VVZJRChpLnV2aWQpO2JyZWFrO2Nhc2UgNzokVVRTSGFuZGxlci5oYW5kbGVUcmFja0NoYXQoaS5kYXRhKTticmVhaztjYXNlIDg6JFVUU0hhbmRsZXIuaGFuZGxlVVRTQ29ubmVjdChpLmRhdGEpO2JyZWFrO2Nhc2UgOTokVVRTSGFuZGxlci5oYW5kbGVUcmlnZ2VyQ3VzdG9tQWN0aW9uKGZ1bmN0aW9uKCl7JFVUU0hhbmRsZXIuaGFuZGxlQm90VHJpZ2dlcihpKX0pfX07cmV0dXJue25vdGlmeUN1c3RvbUV2ZW50OmZ1bmN0aW9uKHQpeyRaU0lRVVRTLm5vdGlmeUN1c3RvbUV2ZW50KHQpfSxoYW5kbGVUcmlnZ2VyQ3VzdG9tQWN0aW9uOmZ1bmN0aW9uKHQpe2lmKHdpbmRvdy5fSVNfUkVWQU1QJiYhJFpTSVFVdGlsLmdldElmcmFtZSgpKXJldHVybiB2b2lkICRaU0lRQ2hhdFdpbmRvdy5wb3B1bGF0ZUlmcmFtZSh0KTt0KCl9LGdldFVUU0NhY2hlZGF0YTpmdW5jdGlvbigpe3ZhciB0PSRaU0lRVVRTLmdldEZyb21TZXNzaW9uKCJ1dHNzeW5jY2FjaGUiKTtpZih0KXtmb3IodmFyIGUgaW4gdD1KU09OLnBhcnNlKHQpKWlmKHQuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBpPXRbZV07Zm9yKHZhciBuIGluIGkpaS5oYXNPd25Qcm9wZXJ0eShuKSYmYShuLGkpfSRaU0lRVVRTLnN0b3JlSW5TZXNzaW9uKCJ1dHNzeW5jY2FjaGUiLCRaU0lRVXRpbC5zdHJpbmdpZnkoW10pKX19LHN0b3JlSW5TZXNzaW9uOmZ1bmN0aW9uKHQsZSl7JFpTSVFVVFMuc3RvcmVJblNlc3Npb24odCxlKX0sZ2V0OmZ1bmN0aW9uKHQpe3JldHVybiAkWlNJUVVUUy5nZXQodCl9LGdldEZyb21TZXNzaW9uOmZ1bmN0aW9uKHQpe3JldHVybiAkWlNJUVVUUy5nZXRGcm9tU2Vzc2lvbih0KX0sdXBkYXRlQWN0aW9uOmZ1bmN0aW9uKHQpeyRaU0lRVVRTLnVwZGF0ZUFjdGlvbih0KX0saGFuZGxlQXBpQ2hhbmdlOmZ1bmN0aW9uKHQsZSl7JFpTSVFVVFMuaGFuZGxlQXBpQ2hhbmdlKHQsZSl9LGluaXQ6ZnVuY3Rpb24odCl7JFpTSVFVVFMuaW5pdCh0KX0sZ2V0VVRTQWN0aW9uRGF0YTpmdW5jdGlvbigpe3JldHVybiAkWlNJUVVUU0FjdGlvbi5nZXRVVFNBY3Rpb25EYXRhKCl9LGhhbmRsZUNoYXRUcmlnZ2VyczpmdW5jdGlvbihlLGkpe3ZhciB0PSRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCk7aWYoMSE9JFpTSVFVdGlsLmZvcm1XaWRnZXRPYmplY3QodC53aWRnZXRvYmopLmhpZGVlbWJlZCl0cnl7dmFyIG49JFpTSVFVdGlsLmdldEFQSVZhbHVlcygpLGE9JFpTSVFVdGlsLmdldEF2dWlkKCk7aWYoJFpTSVFMU0RCLmdldEZyb21TZXNzaW9uKGErIl9mb3JtY29udGV4dGluaXRpYXRlZCIpKXJldHVybjtJZnJhbWVIYW5kbGVyLmdldFRyaWdnZXJDb29raWUoKSYmbi50cmlnZ2VybXNnJiYkWlNJUVdpZGdldFVJLmdldFdpZGdldFN0YXRlKCkhPSRaU0lRV2lkZ2V0VUkuRl9XSU5ET1c/SWZyYW1lSGFuZGxlci5pbmNyZW1lbnRVbnJlYWRDb3VudCgpOiRaU0lRV2lkZ2V0VUkuc2V0V2lkZ2V0U3RhdGUoJFpTSVFXaWRnZXRVSS5GX1dJTkRPVyksSWZyYW1lSGFuZGxlci5oYW5kbGVUcmlnZ2VyKGUsaSl9Y2F0Y2godCl7dmFyIHI9e307ci50eXBlPWUsci5kYXRhPWksUygxLHIpfX0sb3BlbkNoYXRXaW5kb3c6ZnVuY3Rpb24oKXt0cnl7JFpTSVFDaGF0V2luZG93Lm9wZW5DaGF0V2luZG93KCEwKX1jYXRjaCh0KXtTKDIse30pfSRVVFNIYW5kbGVyLnVwZGF0ZUFjdGlvbih7dHlwZToiMSJ9KX0sc2hvd0J1dHRvbjpmdW5jdGlvbigpe3RyeXskem9ob3NxLmZsb2F0YnV0dG9uLnZpc2libGUoInNob3ciKX1jYXRjaCh0KXtTKDMse30pfX0sZ2V0RmxvYXRTdGF0dXM6ZnVuY3Rpb24oKXt0cnl7cmV0dXJuICRaU0lRV2lkZ2V0LmdldFdpZGdldFN0YXR1cygpfWNhdGNoKHQpe3ZhciBlPSRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCk7cmV0dXJuICRaU0lRVXRpbC5mb3JtV2lkZ2V0T2JqZWN0KGUud2lkZ2V0b2JqKS5zdGF0dXN9fSxnZXRGbG9hdERpdjpmdW5jdGlvbihlKXt0cnl7cmV0dXJuICRaU0lRV2lkZ2V0VUkuZ2V0V2lkZ2V0RGl2KCl9Y2F0Y2godCl7cmV0dXJuIFMoZSx7fSksbnVsbH19LGdldEZsb2F0U3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gJFpTSVFXaWRnZXRVSS5nZXRXaWRnZXRTdGF0ZSgpfSxzZXRVVklEOmZ1bmN0aW9uKGUpeyRaU0lRVXRpbC5nZXRBUElWYWx1ZXMoKS51dmlkPWU7dHJ5e0lmcmFtZUhhbmRsZXIudXBkYXRlVVZJRChlKX1jYXRjaCh0KXtTKDYse3V2aWQ6ZX0pfSR6di51dmlkPWV9LHNldFVVSUQ6ZnVuY3Rpb24odCl7dCYmKCRaU0lRVXRpbC5nZXRBUElWYWx1ZXMoKS51dWlkPXQsJHp2LnV1aWQ9dCl9LGdldERvbWFpbjpmdW5jdGlvbigpe3ZhciB0PSR6b2hvc3EudXRzdmFsdWVzLnRyYWNraW5nZG9tYWluO3JldHVybiB0fHwodD1sb2NhdGlvbi5ob3N0bmFtZS50b1N0cmluZygpLnJlcGxhY2UoL153ezN9XC4vLCIiKSwvXlthLXpBLVowLTktXC5dKyQvLnRlc3QodCl8fCh0PSIiKSksdHx8IiJ9LGhhbmRsZVRyYWNrQ2hhdDpmdW5jdGlvbihlKXt0cnl7aWYoIm9iamVjdCIhPXR5cGVvZiAkWlNJUUNoYXRXaW5kb3cpcmV0dXJuIHZvaWQgc2V0VGltZW91dChmdW5jdGlvbigpeyRVVFNIYW5kbGVyLmhhbmRsZVRyYWNrQ2hhdChlKX0sMWUzKTskWlNJUUNoYXRXaW5kb3cuaGFuZGxlSWZyYW1lTG9hZGluZygpO3ZhciB0PSRaU0lRVXRpbC5nZXRBdnVpZCgpO2lmKCRaU0lRTFNEQi5nZXRGcm9tU2Vzc2lvbih0KyJfZm9ybWNvbnRleHRpbml0aWF0ZWQiKSlyZXR1cm47dmFyIGk9MT09JFpTSVFXaWRnZXRVSS5nZXRXaWRnZXRTdGF0ZSgpPyRaU0lRV2lkZ2V0VUkuRl9CVVRUT046JFpTSVFXaWRnZXRVSS5GX1dJTkRPVzskWlNJUVdpZGdldFVJLnNldFdpZGdldFN0YXRlKGkpLElmcmFtZUhhbmRsZXIuaGFuZGxlUHJvQWN0aXZlQ2hhdChlKX1jYXRjaCh0KXt2YXIgbj17fTtuLmRhdGE9ZSxTKDcsbil9fSxoYW5kbGVVVFNDb25uZWN0OmZ1bmN0aW9uKGUpe3RyeXskWlNJUVV0aWwuZ2V0SWZyYW1lKCkuJFN1cHBvcnQuVXRpbC5oYW5kbGVVVFNDb25uZWN0KGUpfWNhdGNoKHQpe3ZhciBpPXt9O2kuZGF0YT1lLFMoOCxpKX19LGhhbmRsZUJvdFRyaWdnZXI6ZnVuY3Rpb24oZSl7dHJ5e3ZhciB0PSRaU0lRQ2hhdC5nZXRXaWRnZXREYXRhKCksaT0kWlNJUVV0aWwuZm9ybVdpZGdldE9iamVjdCh0LndpZGdldG9iaiksbj0kWlNJUVV0aWwuZ2V0QXZ1aWQoKTtpZigxPT1pLmhpZGVlbWJlZHx8JFpTSVFMU0RCLmdldEZyb21TZXNzaW9uKG4rIl9mb3JtY29udGV4dGluaXRpYXRlZCIpKXJldHVybjt2YXIgYT0kWlNJUVV0aWwuZ2V0QVBJVmFsdWVzKCkscj0kWlNJUVV0aWwuZ2V0SWZyYW1lKCkuJFN1cHBvcnQ7aWYoci5pc0NoYXRFeGlzdCgpKXJldHVybjt2YXIgbz1JZnJhbWVIYW5kbGVyLmdldFRyaWdnZXJDb29raWUoKTtpZihlLmxzaWQmJmUubHNpZCE9SWZyYW1lSGFuZGxlci5nZXRMc0lkKCkpcmV0dXJuO2lmKG8mJmEudHJpZ2dlcm1zZyYmJFpTSVFXaWRnZXRVSS5nZXRXaWRnZXRTdGF0ZSgpIT0kWlNJUVdpZGdldFVJLkZfV0lORE9XP3IuaW5jcmVtZW50VW5yZWFkQ291bnQoKTokWlNJUVdpZGdldFVJLnNldFdpZGdldFN0YXRlKCRaU0lRV2lkZ2V0VUkuRl9XSU5ET1cpLElmcmFtZUhhbmRsZXIuZ2V0VHJpZ2dlckNvb2tpZSgpKXJldHVybjtJZnJhbWVIYW5kbGVyLmhhbmRsZUJvdFRyaWdnZXIoZSk7dHJ5eyRVVFNIYW5kbGVyLnVwZGF0ZUFjdGlvbih7dHlwZToiNyJ9KX1jYXRjaCh0KXt9fWNhdGNoKHQpe1MoOSxlKX19LGZvcm1hdERhdGFGb3JCb3RUcmlnZ2VyOmZ1bmN0aW9uKHQpe3JldHVybnthYm91dG1lOnQuYWJvdXRtZSxhdHRlbmRlcjp0LmF0dGVuZGVyLGF0dGVuZGVyX2ltYWdlZmtleTp0LmF0dGVuZGVyX2ltYWdlZmtleSxtc2dsaXN0OnQubXNnbGlzdCxpc3RyaWdtc2c6ITAsaXNib3R0cmlnbXNnOiEwLGlzQm90Q2hhdDohMCx3aW5pZDp0LnRpbWV9fSxnZXRBUElWYWx1ZXNGb3JVVFM6ZnVuY3Rpb24oKXt2YXIgdD0kWlNJUVV0aWwuZ2V0QVBJVmFsdWVzKCksZT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLGk9JFpTSVFVdGlsLmZvcm1XaWRnZXRPYmplY3QoZS53aWRnZXRvYmopO3JldHVybiB0Lm5hbWU9dC5uYW1lfHxpLnZpc2l0b3JuYW1lLHQuZW1haWw9dC5lbWFpbHx8aS52aXNpdG9yZW1haWwsdH0sc2V0VHJhY2tlZGZyb21tYWlsY2hpbXA6ZnVuY3Rpb24odCl7JFpTSVFDaGF0LmlzdHJhY2tlZGZyb21tYWlsY2hpbXA9dH0saXNUcmFja2VkZnJvbW1haWxjaGltcDpmdW5jdGlvbigpe3JldHVybiAkWlNJUUNoYXQuaXN0cmFja2VkZnJvbW1haWxjaGltcH0sZ2V0VVRTU0lEOmZ1bmN0aW9uKCl7cmV0dXJuICRaU0lRVVRTLmdldFVUU1NJRCgpfSxnZXRVVFNOYW1lOmZ1bmN0aW9uKCl7cmV0dXJuICRaU0lRVVRTLmdldFVUU05hbWUoKX0sZ2V0RXF1YWxEb21haW5zOmZ1bmN0aW9uKCl7cmV0dXJuICR6b2hvc3EudXRzdmFsdWVzLmVxdWFsaG9zdHN9LHNldFNJUUlEOmZ1bmN0aW9uKHQpe3QmJigkem9ob3NxLnV0c3ZhbHVlcy5zaXFpZD10KX0sZ2V0U0lRSUQ6ZnVuY3Rpb24oKXtyZXR1cm4gJHpvaG9zcS51dHN2YWx1ZXMuc2lxaWR9LGlzRm9yY2VTZWN1cmU6ZnVuY3Rpb24oKXtyZXR1cm4gJHpvaG9zcS51dHN2YWx1ZXMuZm9yY2VzZWN1cmV9LGdldFpsZHA6ZnVuY3Rpb24oKXt0cnl7cmV0dXJuICRaU0lRVVRTLmdldCgiX3psZHAiKX1jYXRjaCh0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mICRVVFNDb25uZWN0b3IpcmV0dXJuICRVVFNDb25uZWN0b3IudXRpbC5kYi5nZXRGcm9tQ29va2llKHtrZXk6Il96bGRwIn0pfHwkVVRTQ29ubmVjdG9yLnV0aWwuZGIuZ2V0RnJvbVN0b3JhZ2Uoe3R5cGU6ImxvY2FsU3RvcmFnZSIsa2V5OiJfemxkcCJ9KX19fX0oKTt2YXIgJFpTSVFVVFM9JFpTSVFVVFN8fGZ1bmN0aW9uKGgpe3ZhciBULGIsZCx5LHUsSSwkLGEscyx0LG0sbz0hMSxyPTAsYz0xLGw9MixuPTAsZT0xLGk9LTEsZj1jLGc9NjMwNzJlNixTPWZ1bmN0aW9uKGUsdCl7dmFyIG49dD8id3MiOiJodHRwIjtyZXR1cm4hZSYmZS5sb2NhdGlvbj9uKyI6Ly8iOmUubG9jYXRpb24ucHJvdG9jb2w/LTE9PWUubG9jYXRpb24ucHJvdG9jb2wuaW5kZXhPZigiaHR0cCIpJiZlLnBhcmVudCYmZS5wYXJlbnQhPWU/UyhlLnBhcmVudCx0KTotMSE9ZS5sb2NhdGlvbi5wcm90b2NvbC5pbmRleE9mKCJodHRwcyIpP24rInM6Ly8iOm4rIjovLyI6UyhlLnBhcmVudCx0KX0scD17bmV0Ont9LHV0aWw6e30sbW9uaW50ZXJ2YWw6MWU0fSx2PShyZT1uYXZpZ2F0b3IudXNlckFnZW50LGFlPXJlLm1hdGNoKC8ob3BlcmF8Y2hyb21lfHNhZmFyaXxmaXJlZm94fG1zaWV8dHJpZGVudCg/PVwvKSlcLz9ccyooXGQrW15cc3xcJF0rKS9pKXx8W10sL3RyaWRlbnQvaS50ZXN0KGFlWzFdKT8iSUUgIisoKG9lPS9cYnJ2WyA6XSsoXGQrKS9nLmV4ZWMocmUpfHxbXSlbMV18fCIiKToiQ2hyb21lIj09PWFlWzFdJiZudWxsIT0ob2U9cmUubWF0Y2goL1xiKE9QUnxFZGdlKVwvKFxkKykvKSk/b2Uuc2xpY2UoMSkuam9pbigiICIpLnJlcGxhY2UoIk9QUiIsIk9wZXJhIik6KGFlPWFlWzJdP1thZVsxXSxhZVsyXV06W25hdmlnYXRvci5hcHBOYW1lLG5hdmlnYXRvci5hcHBWZXJzaW9uLCItPyJdLG51bGwhPShvZT1yZS5tYXRjaCgvW3Z8Vl1lcnNpb25cLyhcZCtbXlxzfFwkXSspL2kpKSYmYWUuc3BsaWNlKDEsMSxvZVsxXSksYWUuam9pbigiICIpKSksVT0hMTsvaW9zIDEwLjEvaS50ZXN0KHYpJiYoVT0hMCksInVuZGVmaW5lZCIhPXR5cGVvZiBXZWJTb2NrZXQmJiExIGluIFdlYlNvY2tldC5wcm90b3R5cGUmJihVPSEwKSxuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9MdW1pYS4qLykmJihVPSEwKTt2YXIgcT1mdW5jdGlvbigpe3JldHVybiBkfSxfPWZ1bmN0aW9uKGUpe3JldHVybiBnPGU/ZzplfSxrPWZ1bmN0aW9uKCl7cmV0dXJuIHR9LEM9ZnVuY3Rpb24oZSl7dD1lfTtwLnNlcW1zZz17c2VydmVyY291bnQ6LTEsY2xpZW50Y291bnQ6LTEsaXNjb25uZWN0aW9ubWFkZTohMSxtYXhleHBpcnl0aW1lOjZlNSxtYXhkZWxheTo2ZTR9LHAuc2VxbXNnLmluaXQ9ZnVuY3Rpb24oZSl7ZXx8MD09ZXx8KGU9LTEpLHAuc2VxbXNnLnNlcnZlcmNvdW50PWUscC5zZXFtc2cuZ2V0U2VxdWVuY2VObygpLC0xPT1wLnNlcW1zZy5jbGllbnRjb3VudCYmKHAuc2VxbXNnLmNsaWVudGNvdW50PWUpfSxwLnNlcW1zZy5nZXRTZXJ2ZXJVcGRhdGVkY291bnQ9ZnVuY3Rpb24oKXtyZXR1cm4gcC5zZXFtc2cuc2VydmVyY291bnR9LHAuc2VxbXNnLnVwZGF0ZVNlcnZlclVwZGF0ZWRjb3VudD1mdW5jdGlvbihlKXtlfHwwPT1lfHwocC5zZXFtc2cuc2VydmVyY291bnQ9LTEpLHAuc2VxbXNnLnNlcnZlcmNvdW50PWV9LHAuc2VxbXNnLmdldFNlcXVlbmNlTm89ZnVuY3Rpb24oKXtyZXR1cm4tMT09cC5zZXFtc2cuY2xpZW50Y291bnQmJihwLnNlcW1zZy5jbGllbnRjb3VudD1wLnNlcW1zZ2RiLmdldFNlcXVlbmNlTnVtYmVyKCEwKSkscC5zZXFtc2cuY2xpZW50Y291bnR9LHAuc2VxbXNnLmluY3JlbWVudFNlcXVlbmNlTm89ZnVuY3Rpb24oKXtwLnNlcW1zZy5jbGllbnRjb3VudCsrfSxwLnNlcW1zZy5lbnJvbGw9ZnVuY3Rpb24oZSx0KXtpZihwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlKXtwLnNlcW1zZy5pbmNyZW1lbnRTZXF1ZW5jZU5vKCk7dmFyIG49cC5zZXFtc2dkYi5nZXRGcm9tREIoKSxpPXt9O2kuZGF0YT1lLGkudGltZT0obmV3IERhdGUpLmdldFRpbWUoKStwLnNlcW1zZy5tYXhleHBpcnl0aW1lLG5bcC5zZXFtc2cuY2xpZW50Y291bnRdPWkscC5zZXFtc2dkYi51cGRhdGVJbkRCKG4scC5zZXFtc2cubWF4ZXhwaXJ5dGltZSl9fSxwLnNlcW1zZy5hc3luY1Jlc2VuZD1mdW5jdGlvbih0KXtpZihwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlJiZ0KXt2YXIgZT0iIjt0cnl7ZT10LnNoaWZ0KCl9Y2F0Y2goZSl7cC5ub3RpZmllci5kb0xvZygiRXhjZXB0aW9uIGFycmF5IHNoaWZ0IC0+ICIrZS5tZXNzYWdlKyIgc3RhY2sgLT4gIitlLnN0YWNrKyIgbmFtZSAtPiAiK2UubmFtZSsiIG1pc3NlZHNlcSAtPiAiK3QpfWlmKGUpe3ZhciBuPXAuc2VxbXNnZGIuZ2V0RnJvbURCKClbZV07aWYobil7dmFyIGk9bi5kYXRhO3Aubm90aWZpZXIuc2VuZERhdGEoaSx2b2lkIDAsITEpLHAuc2VxbXNnLmNsZWFyKGUpfXNldFRpbWVvdXQoZnVuY3Rpb24oKXtwLnNlcW1zZy5hc3luY1Jlc2VuZChhcmd1bWVudHNbMF0pfSwwLHQpfX19LHAuc2VxbXNnLmNsZWFyPWZ1bmN0aW9uKGUpe3ZhciB0PXAuc2VxbXNnZGIuZ2V0RnJvbURCKCk7ZT9kZWxldGUgdFtlXTp0PXt9LHAuc2VxbXNnZGIudXBkYXRlSW5EQih0LHAuc2VxbXNnLm1heGV4cGlyeXRpbWUpfSxwLnNlcW1zZ2RiPXt9LHAuc2VxbXNnZGIuZ2V0RnJvbURCPWZ1bmN0aW9uKGUpe3ZhciB0PSRaU0lRVVRTLmdldEZyb21TZXNzaW9uKCJzZXFfbXNncyIpfHwie30iO3JldHVybiB0PUpTT04ucGFyc2UodCksZT90W2VdfHx7fTp0fSxwLnNlcW1zZ2RiLmdldFNlcXVlbmNlTnVtYmVyPWZ1bmN0aW9uKGUpe3ZhciB0LG49cC5zZXFtc2dkYi5nZXRGcm9tREIoKTtmb3IodmFyIGkgaW4gbilpPXBhcnNlSW50KGkpLHR8fCh0PWkpLGU/dDxpJiYodD1pKTppPHQmJih0PWkpO3JldHVybiB0fHwtMX0scC5zZXFtc2dkYi51cGRhdGVJbkRCPWZ1bmN0aW9uKGUsdCl7JFpTSVFVVFMuc3RvcmVJblNlc3Npb24oInNlcV9tc2dzIixKU09OLnN0cmluZ2lmeShlKSx0KX07dmFyIE89ZnVuY3Rpb24oKXt0cnl7cmV0dXJuISFoLnNlc3Npb25TdG9yYWdlJiYoc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgicXVvdGFfdGVzdCIsIjEiKSxzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJxdW90YV90ZXN0IiksITApfWNhdGNoKGUpe31yZXR1cm4hMX0sdz1mdW5jdGlvbigpe3RyeXtyZXR1cm4hIWgubG9jYWxTdG9yYWdlJiYobG9jYWxTdG9yYWdlLnNldEl0ZW0oInF1b3RhX3Rlc3QiLCIxIiksbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oInF1b3RhX3Rlc3QiKSwhMCl9Y2F0Y2goZSl7fXJldHVybiExfSxRPWZ1bmN0aW9uKGUsdCxuKXtpZihlPXooZSksJFpTSVFOb3RpZnlDb29raWUuaXNDb29raWVBbGxvd2VkKGUpKXt2YXIgaT1uZXcgRGF0ZTtuPW58fDg2NGU1LGkuc2V0VGltZShpLmdldFRpbWUoKStuKTt2YXIgbz1lKyI9ICIrdCsiO2V4cGlyZXM9ICIraS50b0dNVFN0cmluZygpO28rPSI7cGF0aD0vIjt0cnl7dmFyIHI9JFVUU0hhbmRsZXIuZ2V0RG9tYWluKCk7bys9cj8iO2RvbWFpbj0iK3I6IiIsJFpTSVFDaGF0LmlzRW1iZWRGZWF0dXJlQ29uZkVuYWJsZWQoKSYmKG8rPSI7c2VjdXJlIil9Y2F0Y2goZSl7fW89JFpTSVFVdGlsLnNldFNhbWVTaXRlQ29va2llKG8pLG8rPSRaU0lRVXRpbC5nZXRTZWN1cmVDb29raWVLZXkobyksZG9jdW1lbnQuY29va2llPW99ZWxzZSAkWlNJUVVUUy5zdG9yZUluU2Vzc2lvbihlLHQpfSxaPWZ1bmN0aW9uKGUsdCxuKXtpZighdygpKXJldHVybiExO2U9eihlKTt2YXIgaT1KU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ1dHNkYiIpfHwie30iKSxvPXt9O3JldHVybiBvW2VdPXQsbiYmKG8udHRsPW4sby50aW1lPShuZXcgRGF0ZSkuZ2V0VGltZSgpKSxpW2VdPW8sbG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIixKU09OLnN0cmluZ2lmeShpKSksITB9LEU9ZnVuY3Rpb24oZSl7aWYoIXcoKSlyZXR1cm4hMTt2YXIgdD1lLG49SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgidXRzZGIiKXx8Int9IiksaT1uW2U9eih0KV07aWYoaSlkZWxldGUgbltGKHQpXSxsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLEpTT04uc3RyaW5naWZ5KG4pKTtlbHNle2lmKCEoaT1uW2U9Rih0KV0pKXJldHVybiBudWxsO2lbeih0KV09aVtlXSxkZWxldGUgaVtGKHQpXSxuW3oodCldPWksZGVsZXRlIG5bRih0KV0sbG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIixKU09OLnN0cmluZ2lmeShuKSl9cmV0dXJuIGk/aS50dGwmJmkudHRsK2kudGltZTwobmV3IERhdGUpLmdldFRpbWUoKT8oZGVsZXRlIG5beih0KV0sZGVsZXRlIG5bRih0KV0sbG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIixKU09OLnN0cmluZ2lmeShuKSksbnVsbCk6aVtlXTpudWxsfSxOPWZ1bmN0aW9uKGUpe3ZhciB0PWU7ZT16KHQpLGUrPSI9Ijt2YXIgbj1kb2N1bWVudC5jb29raWUuaW5kZXhPZihlKSxpPSIiO3JldHVybi0xIT09bj8tMSE9PShpPWRvY3VtZW50LmNvb2tpZS5zdWJzdHIobitlLmxlbmd0aCkpLmluZGV4T2YoIjsiKSYmKGk9aS5zdWJzdHJpbmcoMCxpLmluZGV4T2YoIjsiKSkpOihlPUYodCksZSs9Ij0iLC0xIT09KG49ZG9jdW1lbnQuY29va2llLmluZGV4T2YoZSkpJiYoLTEhPT0oaT1kb2N1bWVudC5jb29raWUuc3Vic3RyKG4rZS5sZW5ndGgpKS5pbmRleE9mKCI7IikmJihpPWkuc3Vic3RyaW5nKDAsaS5pbmRleE9mKCI7IikpKSxRKHQsaSw4NjRlNSkpKSxpfHwoJFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oZSl8fGkpfSx6PWZ1bmN0aW9uKGUpe3JldHVybiBEKGUpfSxGPWZ1bmN0aW9uKGUpe3JldHVybiBXKGUpfSxEPWZ1bmN0aW9uKGUpe3JldHVybiBiKyItIitlfSxXPWZ1bmN0aW9uKGUpe3JldHVybiBiKyItIitUKyItIitlfSxCPWZ1bmN0aW9uKGUpe3JldHVybiBBcnJheS5pc0FycmF5JiZBcnJheS5pc0FycmF5KGUpfHwiW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfHwiW29iamVjdCBBcnJheSBJdGVyYXRvcl0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfSx4PW51bGwsTD1udWxsLE09MCxBPSExLEo9ITEsUj0hMSxqPVMoaCksSz1pO3AubmV0PXtkaXNhYmxlZGJ5c2VydmVyOiExLGZhbGxiYWNrdGltZXI6LTEsbW9uaXRvcnRpbWVyOi0xLHJlY29ubmVjdHdoZW5hY3RpdmU6ITEsbHB0OjAsd3JpdGVlbmFibGVkOiExLGNvbm5BbGl2ZTpmdW5jdGlvbigpe3AubmV0LmxwdD1uZXcgRGF0ZX0sY29ubk1vbml0b3I6ZnVuY3Rpb24oKXtYLmxvZ0ZpbmUoImluc2lkZSBjb25uTW9uaXRvciIpO3ZhciBlPW5ldyBEYXRlO3RyeXtlLXAubmV0LmxwdD4zKnAubW9uaW50ZXJ2YWwmJigiaGlkZGVuIiE9SC5jdXJfc3Q/QXx8Sj8hMT09PUEmJnAubmV0LnJlY29ubmVjdCgpOnAubmV0LnJlY29ubmVjdCgpOlgubG9nRmluZSgic2tpcHBlZCBieSB0YWIgc3RhdHVzIikpLHAudXRpbC5kYmNvbnNpc3RlbmN5Y2hlY2tlZHx8cC5uZXQuZGlzYWJsZWRieXNlcnZlcnx8cC51dGlsLmNoZWNrQ29uc2lzdGVuY3koKX1maW5hbGx5e3AubmV0LnNjaGVkdWxlTW9uaXRvcigpfX0sc2NoZWR1bGVNb25pdG9yOmZ1bmN0aW9uKCl7WC5sb2dGaW5lKCJpbnNpZGUgc2NoZWR1bGVNb25pdG9yIiksY2xlYXJUaW1lb3V0KHAubmV0Lm1vbml0b3J0aW1lcikscC5uZXQubW9uaXRvcnRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtwLm5ldC5jb25uTW9uaXRvcigpfSxwLm1vbmludGVydmFsKX0scmVjb25uZWN0OmZ1bmN0aW9uKCl7WC5sb2dGaW5lKCJpbnNpZGUgcmVjb25uZWN0IC0gJFpVc2VyU3RhdHVzLmlzYWN0aXZlIDogIitWLmlzYWN0aXZlKyIgLSAiK0guY3VyX3N0KyIgLSAiK3AubmV0LmRpc2FibGVkYnlzZXJ2ZXIpLHAubmV0LmRpc2FibGVkYnlzZXJ2ZXJ8fCFWLmlzYWN0aXZlJiZudWxsIT1WLmlzYWN0aXZlfHwiaGlkZGVuIj09SC5jdXJfc3R8fChWLmluaXQoKSxwLm5ldC5kaXNhYmxlQ29ubmVjdGlvbigpLHAuaW5pdCgpKX0sc2NoZWR1bGVGYWxsYmFjazpmdW5jdGlvbigpe2NsZWFyVGltZW91dChwLm5ldC5mYWxsYmFja3RpbWVyKSxwLm5ldC5mYWxsYmFja3RpbWVyPXNldFRpbWVvdXQocC5uZXQuZmFsbGJhY2tUb0NSLDJlNCl9LHVuc2NoZWR1bGVGYWxsYmFjazpmdW5jdGlvbigpe2NsZWFyVGltZW91dChwLm5ldC5mYWxsYmFja3RpbWVyKX0sZmFsbGJhY2tUb0NSOmZ1bmN0aW9uKCl7WS5fV0VCU09DSy5yZWFkeVN0YXRlPT09WS5yZWFkeXN0YXRlLk9QRU4mJlkuaW5pdGlhbGl6ZWR8fChZLmRpc2FibGVDb25uZWN0aW9uKCksZWUuaW5pdCgpKX0saGFuZGxlVVRTRXZlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5kLG49MDtzd2l0Y2goZS5vKXtjYXNlIDA6TD10Ll96bGRwfHxMLHg9dC5femxkdHx8JFpTSVFVVFMuZ2V0KCJfemxkdCIpLFkuc2V0SW5pdGlhbGl6ZWQoKSxwLm5ldC53cml0ZWVuYWJsZWQ9ITAscC5zZXFtc2cuaXNjb25uZWN0aW9ubWFkZT0hMCxwLm5vdGlmaWVyLm5vdGlmeVF1ZXVlZCgpLCRVVFNIYW5kbGVyLnNldFVWSUQoeCksJFVUU0hhbmRsZXIuc2V0VVVJRCh0LnV1aWQpO3RyeXtuPSRaU0lRVVRTQWN0aW9uLmhhbmRsZSh0LnRyaWdnZXJzKX1jYXRjaChlKXtwLm5vdGlmaWVyLmRvTG9nKCJFeGNlcHRpb24gaW4gdHJpZ2dlcmluZyBtZXNzYWdlIC0gIitlLm1lc3NhZ2UrIiBzdGFjayAtICIrZS5zdGFjaysiIG5hbWU6IitlLm5hbWUpfVI9ITAsdC5pc25ld2Nvbm5lY3Rpb249ITAsUC5oYW5kbGVDb25uZWN0KHQpLCRaU0lRVVRTQWN0aW9uLmluY2x1ZGVCZWZvcmVTdWJtaXQodCkseS5jdXN0b21hY3Rpb24mJnAubm90aWZpZXIudXBkYXRlQ3VzdG9tQWN0aW9uKHkuY3VzdG9tYWN0aW9uKSx0LnNzZXFubyYmcC5zZXFtc2cuaW5pdChwYXJzZUludCh0LnNzZXFubykpLHAubm90aWZpZXIuaWRlbnRpZnlCeUNhbXBhaWduKCkscC5ub3RpZmllci5kb0xvZygiIGlzTG9jYWxzdG9yYWdlOiAiK3coKSsiIGlzU2Vzc2lvblN0b3JhZ2U6ICIrTygpKyIgVGFiIHN0YXR1cyAtICIrSC5sYXRpbWUrIiAtICIrSC5jdXJfc3QpLGE9dC5uYW1lLHM9dC50b2tlbixuLzFlMzw1JiZ0LnRyaWdnZXJzJiYib2JqZWN0Ij09dHlwZW9mICRaU0lRQ2hhdFdpbmRvdyYmJFpTSVFDaGF0V2luZG93LnBvcHVsYXRlSWZyYW1lKCksJFpTSVFVVFNBY3Rpb24uaGFuZGxlSW5mbyh0KTticmVhaztjYXNlIDE6WS5waW5nKCksTD10Ll96bGRwLHg9dC5femxkdCxJPXQuc2lkLGsoKSYmJFpTSVFVVFMuc3RvcmVJblNlc3Npb24oInNpZCIsSSksJFVUU0hhbmRsZXIuc2V0VVVJRCh0LnV1aWQpLCRVVFNIYW5kbGVyLnNldFVWSUQoeCkscC5uZXQud3JpdGVlbmFibGVkPSEwLHAuc2VxbXNnLmlzY29ubmVjdGlvbm1hZGU9ITAscC5ub3RpZmllci5ub3RpZnlRdWV1ZWQoKSxSPSEwLFAuaGFuZGxlQ29ubmVjdCh0KSwkWlNJUVVUU0FjdGlvbi5oYW5kbGUodC50cmlnZ2VycyksJFpTSVFVVFNBY3Rpb24uaW5jbHVkZUJlZm9yZVN1Ym1pdCh0KSx0LnNzZXFubyYmcC5zZXFtc2cuaW5pdChwYXJzZUludCh0LnNzZXFubykpLCRVVFNIYW5kbGVyLmlzVHJhY2tlZGZyb21tYWlsY2hpbXAoKXx8cC5ub3RpZmllci5pZGVudGlmeUJ5Q2FtcGFpZ24oKSxhPXQubmFtZSxzPXQudG9rZW4sJFpTSVFVVFNBY3Rpb24uaGFuZGxlSW5mbyh0KTticmVhaztjYXNlIDI6TD10Ll96bGRwLHg9dC5femxkdCxJPXQuc2lkO3RyeXtMPUw/TC50cmltKCk6TCx4PXg/eC50cmltKCk6eCxJPUk/SS50cmltKCk6SSwkWlNJUVVUUy5zdG9yZSgiX3psZHAiLEwsXyg2MzA3MmU2KSksJFpTSVFVVFMuc3RvcmUoIl96bGR0Iix4LF8oODY0ZTUpKSxrKCkmJiRaU0lRVVRTLnN0b3JlSW5TZXNzaW9uKCJzaWQiLEkpfWNhdGNoKGUpe31SPSEwLHAudXRpbC5jaGVja01vZGUobCl8fHAubm90aWZpZXIuYWNrbm93bGVkZ2UoKTticmVhaztjYXNlIDg6cC5uZXQuZGlzYWJsZUNvbm5lY3Rpb24oKSxMPXQuX3psZHAseD10Ll96bGR0LEk9dC5zaWQ7dHJ5e0w9TD9MLnRyaW0oKTpMLHg9eD94LnRyaW0oKTp4LEk9ST9JLnRyaW0oKTpJLCRaU0lRVVRTLnN0b3JlKCJfemxkcCIsTCxfKDYzMDcyZTYpKSwkWlNJUVVUUy5zdG9yZSgiX3psZHQiLHgsXyg4NjRlNSkpLGsoKSYmJFpTSVFVVFMuc3RvcmVJblNlc3Npb24oInNpZCIsSSl9Y2F0Y2goZSl7fVI9ITAsWS5pbml0KCk7YnJlYWs7Y2FzZSAzOiRaU0lRVVRTQWN0aW9uLmhhbmRsZSh0LnRyaWdnZXJzKTticmVhaztjYXNlIDQ6aWYocC51dGlsLmNoZWNrTW9kZShsKSlyZXR1cm47aWYodCYmdC5zZXFubylyZXR1cm4gdm9pZCBwLnNlcW1zZy5jbGVhcih0LnNlcW5vKTtpZih0JiZ0LnNzZXFubyl7aWYocC5zZXFtc2cudXBkYXRlU2VydmVyVXBkYXRlZGNvdW50KHBhcnNlSW50KHQuc3NlcW5vKSksdC5taXNzZWRzZXEpe3ZhciBpPUpTT04ucGFyc2UodC5taXNzZWRzZXEpO3Auc2VxbXNnLmFzeW5jUmVzZW5kKGkpfXJldHVybn1icmVhaztjYXNlIDEwMDp0LnV2aWQ9JFpTSVFVVFMuZ2V0KCJfemxkdCIpfHx4LCRVVFNIYW5kbGVyLmhhbmRsZVRyYWNrQ2hhdCh0KTticmVhaztjYXNlIDEwMTokWlNJUVVUUy5oYW5kbGVDdXN0b21BY3Rpb24odCk7YnJlYWs7Y2FzZSAxMDI6dmFyIG89dC50cmlnZ2VyczshdC50cmlnZ2VycyYmdC5ib3RUcmlnZ2VycyYmImJvdFRyaWdnZXJzIj09dC5tb2R1bGUmJihvPXQpLChuPSRaU0lRVVRTQWN0aW9uLmhhbmRsZShvKSkvMWUzPDUmJiJvYmplY3QiPT10eXBlb2YgJFpTSVFDaGF0V2luZG93JiYkWlNJUUNoYXRXaW5kb3cucG9wdWxhdGVJZnJhbWUoKTticmVhaztjYXNlLTE6aWYocC51dGlsLmNoZWNrTW9kZShsKSlyZXR1cm47dCYmdC5pc3NpZGNsZWFyJiYoJFpTSVFVVFMucmVtb3ZlRnJvbVNlc3Npb24oInNpZCIpLEk9IiIpO3ZhciByPXQmJnQuZHVyYXRpb258fCIiO3AubmV0LmRpc2FibGVDb25uZWN0aW9uKHIpLHAubmV0LmRpc2FibGVkYnlzZXJ2ZXI9ITA7YnJlYWs7Y2FzZSAxMTokWlNJUVVUU0FjdGlvbi5oYW5kbGVJbmZvKHQpfX0saGFuZGxlUmVzcG9uc2U6ZnVuY3Rpb24oZSx0KXtpZihKPSEwLGUpaWYoKGU9SlNPTi5wYXJzZShlKSkmJmUuc2Vxbm8pcC5zZXFtc2cuY2xlYXIoZS5zZXFubyk7ZWxzZSBpZihlJiZlLnNzZXFubyl7aWYocC5zZXFtc2cudXBkYXRlU2VydmVyVXBkYXRlZGNvdW50KHBhcnNlSW50KGUuc3NlcW5vKSksZS5taXNzZWRzZXEpe3ZhciBuPUpTT04ucGFyc2UoZS5taXNzZWRzZXEpO3Auc2VxbXNnLmFzeW5jUmVzZW5kKG4pfX1lbHNlIGlmKCF0JiZoLlNoYXJlZFdvcmtlciYmWC5zZW5kUmVzcG9uc2VUb090aGVycyhlKSxCKGUpKWZvcih2YXIgaT0wO2k8ZS5sZW5ndGg7aSsrKXRoaXMuaGFuZGxlVVRTRXZlbnQoZVtpXSk7ZWxzZSB0aGlzLmhhbmRsZVVUU0V2ZW50KGUpfSxzY2hlZHVsZVJlY29uOih0ZT1bMzAsNjAsOTAsMTIwLDMwMF0sbmU9MCxpZT0tMSxmdW5jdGlvbihlLHQpe3ZhciBuLGk7ZT90ZVtuZT0wXT0obj01LGk9MzAsTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKihpLW4rMSkrbikpOm5lPHRlLmxlbmd0aC0xJiZuZSsrO3ZhciBvPXRlW25lXTtjbGVhclRpbWVvdXQoaWUpLGllPXNldFRpbWVvdXQodCwxZTMqbyl9KSxnb09mZmxpbmU6ZnVuY3Rpb24oKXtpZigzPD1NfHxLPT09bil7MzxNJiYoSj0hMSk7dmFyIGU9IShBPSEwKTszIT09TSYmSyE9PW58fChlPSEwKSxLPWksdGhpcy5zY2hlZHVsZVJlY29uKGUsdGhpcy5yZWNvbm5lY3QpfX0scmVxdWVzdFN1Y2Nlc3M6ZnVuY3Rpb24oKXsoMzw9TXx8Sz09PWUpJiYoSz1pLEE9ITEpfSxkaXNhYmxlQ29ubmVjdGlvbjpmdW5jdGlvbihlKXtpZihBPSEwLGUpe3ZhciB0PTYwKmUqMWUzLG49KG5ldyBEYXRlKS5nZXRUaW1lKCkrdDskWlNJUVVUUy5zdG9yZSgibmV4dHJlY29uIixuKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7WC5sb2dGaW5lKCJkaXNhYmxlIGNvbm5lY3Qgc2V0dGltZW91dCIpO3RyeXtwLm5ldC5kaXNhYmxlZGJ5c2VydmVyPSExfWNhdGNoKGUpe31wLmluaXQoKX0sdCl9cC51dGlsLmNoZWNrTW9kZShjKT9ZLmRpc2FibGVDb25uZWN0aW9uKCk6cC51dGlsLmNoZWNrTW9kZShyKSYmZWUuZGlzYWJsZUNvbm5lY3Rpb24oKSxwLm5ldC53cml0ZWVuYWJsZWQ9ITEsaC4kVVRTQ29ubmVjdG9yJiYkVVRTQ29ubmVjdG9yLnV0aWwubmV0LnRlcm1pbmF0ZSgpfX0scC51dGlsPXtkYmNvbnNpc3RlbmN5Y2hlY2tlZDohMSxvZmZsaW5ldGltZXI6LTEsYWRkT25PZmZFdmVudDpmdW5jdGlvbihlLHQpe3ZhciBuPWRvY3VtZW50LmJvZHk7biYmbi5hdHRhY2hFdmVudD9kb2N1bWVudC5ib2R5LmF0dGFjaEV2ZW50KCJvbiIrZSx0KTpoLmFkZEV2ZW50TGlzdGVuZXImJmguYWRkRXZlbnRMaXN0ZW5lcihlLHQpfSxjaGVja01vZGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGY9PT1lfSxwYXJzZVF1ZXJ5U3RyaW5nOmZ1bmN0aW9uKGUpe3ZhciB0PXt9O2lmKCFlfHwhZS50cmltKCkpcmV0dXJuIHQ7Zm9yKHZhciBuPShlPWUucmVwbGFjZSgvXlw/L2csIiIpKS5zcGxpdCgiJiIpLGk9W10sbz1mdW5jdGlvbihlKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KChlKyIiKS5yZXBsYWNlKC9cKy9nLCIlMjAiKSl9LHI9MDtyPG4ubGVuZ3RoO3IrKyl0W28oKGk9bltyXS5zcGxpdCgiPSIpKVswXSldPW8oaVsxXSk7cmV0dXJuIHR9LGNvbXBvc2VVcmw6ZnVuY3Rpb24oKXt2YXIgaT1bXTtmdW5jdGlvbiBlKGUsdCl7dmFyIG47dCYmaS5wdXNoKGUrIj0iK2VuY29kZVVSSUNvbXBvbmVudCgobj10KT9uLnJlcGxhY2UoL15ccyt8XHMrJC9nbSwiIik6bikpfXRyeXtGbG9hdC5zdG9wQmxpbmtpbmcoKX1jYXRjaChlKXt9dmFyIHQ9JFpTSVFVdGlsLmdldE5hdmlnYXRpb25PYmooaCksbj10LmN1cnJlbnRfcGFnZSxvPXQucGFnZV90aXRsZTt0cnl7dmFyIHI9JHpvaG9zcS52aXNpdG9yLm9uTmF2aWdhdGUoe3VybDpuLHRpdGxlOm99KTtyJiYobj1yLnVybHx8bixvPXIudGl0bGV8fG8pfWNhdGNoKGUpe312YXIgYT0kWlNJUVV0aWwuZ2V0VVJMUGFyYW1ldGVyQnlOYW1lKCJtY19jaWQiKSxzPSRaU0lRVXRpbC5nZXRVUkxQYXJhbWV0ZXJCeU5hbWUoIm1jX2VpZCIpO2lmKG51bGw9PWEmJm51bGw9PXMpe3ZhciBjPU4oIm1haWxjaGltcCIpO2lmKGN8fChjPU4oInpvaG9jYW1wYWlnbiIpKSxjKXt2YXIgbD1KU09OLnBhcnNlKGMpO3kubmFtZT1sLm5hbWUseS5lbWFpbD1sLmVtYWlsfX12YXIgZD10LnJlZmVyZXIsdT17IngtZSI6IiIrVCwieC1zIjoiIitiLGNwYWdlOm4sIngtc2lkIjpJLHB0aXRsZTpvLF96bGRwOkx8fCRaU0lRVVRTLmdldCgiX3psZHAiKSxfemxkdDp4fHwkWlNJUVVUUy5nZXQoIl96bGR0IiksbmFtZTokenYubmFtZSxmaXJzdG5hbWU6JHp2LmZpcnN0bmFtZSxsYXN0bmFtZTokenYubGFzdG5hbWUsc2FsdXRhdGlvbjokenYuc2FsdXRhdGlvbixlbWFpbDokenYuZW1haWw/JHp2LmVtYWlsLnRvTG93ZXJDYXNlKCk6IiIsZV9uYW1lOiR6di5lX25hbWUsZV9lbWFpbDokenYuZV9lbWFpbCxwaG9uZTokenYucGhvbmUsbG9jYWx0aW1lOmZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4obmV3IERhdGUpLnRvVGltZVN0cmluZygpLnNwbGl0KCIgIikuc2xpY2UoMSkuam9pbigiICIpfWNhdGNoKGUpe31yZXR1cm4iIn0oKSxnbXR0aW1lOmZ1bmN0aW9uKCl7dHJ5e3JldHVybihuZXcgRGF0ZSkudG9UaW1lU3RyaW5nKCkuc3BsaXQoIiAiKS5zbGljZSgxLDIpWzBdfWNhdGNoKGUpe31yZXR1cm4iIn0oKSxkb2NyZWY6ZC5zdWJzdHJpbmcoMCwzMDcyKSxyZXNvbHV0aW9uOiJzY3JlZW4iaW4gaCYmdm9pZCAwIT09c2NyZWVuLndpZHRoJiZ2b2lkIDAhPT1zY3JlZW4uaGVpZ2h0P3NjcmVlbi53aWR0aCsieCIrc2NyZWVuLmhlaWdodDoiIn07aC5pc1NpcUZpcnN0TmFtZUNvbmZFbmFibGVkfHwoZGVsZXRlIHUuZmlyc3RuYW1lLGRlbGV0ZSB1Lmxhc3RuYW1lLGRlbGV0ZSB1LnNhbHV0YXRpb24pO3RyeXtkZWxldGUgJHp2LmVfbmFtZSxkZWxldGUgJHp2LmVfZW1haWx9Y2F0Y2goZSl7fXRyeXt2YXIgbT0kWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLGY9JFpTSVFVdGlsLmZvcm1XaWRnZXRPYmplY3QobS53aWRnZXRvYmopLmxzaWQ7ZiYmKHUubHNpZD0iIitmKX1jYXRjaChlKXt9JFpTSVFVdGlsLmdldEFQSUxhbmd1YWdlKCk/dS5sYW5nX2VtYmVkPSRaU0lRVXRpbC5nZXRBUElMYW5ndWFnZSgpOiQ/dS5sYW5nX2VtYmVkPSQ6JFpTSVFVdGlsLmdldEJyb3dzZXJMYW5ndWFnZSgpJiYodS5sYW5nX2VtYmVkPSRaU0lRVXRpbC5nZXRCcm93c2VyTGFuZ3VhZ2UoKSk7dHJ5e3ZhciBnPShuZXcgRGF0ZSkuZ2V0VGltZSgpLFM9JFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oImNvbl9pZCIpO1M/Zz1TOiRaU0lRVVRTLnN0b3JlSW5TZXNzaW9uKCJjb25faWQiLGcpLHUuY29uX2lkPSIiK2d9Y2F0Y2goZSl7fWZvcih2YXIgcCBpbiB1LnJlZmVyZXI9bnVsbCwkWlNJUVVUUy5nZXRGcm9tU2Vzc2lvbigic2lxX2lzZGlyZWN0Iil8fCgkWlNJUVVUUy5nZXRGcm9tU2Vzc2lvbigic2lxX3JlZiIpP3UucmVmZXJlcj0kWlNJUVVUUy5nZXRGcm9tU2Vzc2lvbigic2lxX3JlZiIpOmQ/KGQ9ZC5zdWJzdHJpbmcoMCwzMDcyKSwkWlNJUVVUUy5zdG9yZUluU2Vzc2lvbigic2lxX3JlZiIsZCksdS5yZWZlcmVyPWQpOiRaU0lRVVRTLnN0b3JlSW5TZXNzaW9uKCJzaXFfaXNkaXJlY3QiLCEwKSksdSl1Lmhhc093blByb3BlcnR5KHApJiZlKHAsdVtwXSk7dHJ5e0Zsb2F0LmJsaW5rVGl0bGUoRmxvYXQuYmxpbmttc2cpfWNhdGNoKGUpe31pZihSKWUoInJlY29uIiwidHJ1ZSIpO2Vsc2UgaWYoeS5pbmZvKXt2YXIgdj15LmluZm87Im9iamVjdCI9PXR5cGVvZiB2JiYodj1KU09OLnN0cmluZ2lmeSh2KSksZSgiY2luZm8iLHYpfXJldHVybiBpLmpvaW4oIiYiKX0sYmluZEV2ZW50czpmdW5jdGlvbigpe3RyeXtmdW5jdGlvbiB0KGUpe2U9ZXx8e307dmFyIHQ9e30sbj0kWlNJUVV0aWwuZ2V0TmF2aWdhdGlvbk9iaihoKSxpPWVbMl07aWYoKGk9aT9pLnRyaW0oKTppKSYmKCIvIj09aS5zdWJzdHJpbmcoMCwxKT9pPWgubG9jYXRpb24ub3JpZ2luK2k6Ij8iPT1pLnN1YnN0cmluZygwLDEpPy0xIT09KGk9aC5sb2NhdGlvbi5vcmlnaW4raC5sb2NhdGlvbi5wYXRobmFtZStpKS5pbmRleE9mKCIjIikmJihpKz1oLmxvY2F0aW9uLmhhc2gpOmk9IiMiPT1pLnN1YnN0cmluZygwLDEpP2gubG9jYXRpb24ub3JpZ2luK2gubG9jYXRpb24ucGF0aG5hbWUraC5sb2NhdGlvbi5zZWFyY2graTpudWxsKSx0LmNwYWdlPWl8fG4uY3VycmVudF9wYWdlLHQucHRpdGxlPWVbMV18fG4ucGFnZV90aXRsZSx0LnJlZmVyZXI9bi5yZWZlcmVyLHQubHNpZD1uLmxzaWQsaC4kVVRTQ29ubmVjdG9yKXt2YXIgbz0kSGlzdG9yeS5nZXRMaXN0KCk7byYmMCE9by5sZW5ndGg/KCRVVFNDb25uZWN0b3IudXRpbC5kYi5zdG9yZUluU3RvcmFnZSh7dHlwZToibG9jYWxTdG9yYWdlIixrZXk6ImhfY3BhZ2UiLHZhbHVlOnQuY3BhZ2V9KSwkSGlzdG9yeS5wdXNoKHtyZWZlcmVyOnQucmVmZXJlcixjcGFnZTp0LmNwYWdlLHRpdGxlOnQucHRpdGxlLGxzaWQ6dC5sc2lkfSksJFVUU0Nvbm5lY3Rvci51dGlsLm5ldC5jaGVja0hpc3RvcnkoKSk6cC5ub3RpZmllci51cGRhdGVOYXZpZ3Rpb24odCl9ZWxzZSBwLm5vdGlmaWVyLnVwZGF0ZU5hdmlndGlvbih0KX1pPWguaGlzdG9yeSxvPWkucHVzaFN0YXRlLGkucHVzaFN0YXRlPWZ1bmN0aW9uKGUpe3ZhciB0PW8uYXBwbHkoaSxhcmd1bWVudHMpO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBpLm9ucHVzaHN0YXRlJiZpLm9ucHVzaHN0YXRlKGFyZ3VtZW50cyksdH0sRyhoLCJoYXNoY2hhbmdlIix0KSxoLmhpc3Rvcnkub25wdXNoc3RhdGU9ZnVuY3Rpb24oZSl7dHJ5e3QoZSl9Y2F0Y2goZSl7fX0sLTEhPT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZpcmVmb3giKSYmKGgub25iZWZvcmV1bmxvYWQ9KG49aC5vbmJlZm9yZXVubG9hZCxmdW5jdGlvbihlKXtyZXR1cm4gcC5uZXQuZGlzYWJsZUNvbm5lY3Rpb24oKSwiZnVuY3Rpb24iPT10eXBlb2Ygbj9uKCk6ZS5yZXR1cm5WYWx1ZT9lLnJldHVyblZhbHVlOnZvaWQgMH0pKX1jYXRjaChlKXt9dmFyIG4saSxvfSxjaGVja0NvbnNpc3RlbmN5OmZ1bmN0aW9uKCl7eD09PSRaU0lRVVRTLmdldCgiX3psZHQiKSYmTD09PSRaU0lRVVRTLmdldCgiX3psZHAiKXx8KEk9bnVsbCxwLm5ldC5yZWNvbm5lY3QoKSkscC51dGlsLmRiY29uc2lzdGVuY3ljaGVja2VkPSEwfX0scC51dGlsLmFkZE9uT2ZmRXZlbnQoIm9ubGluZSIsZnVuY3Rpb24oKXtwLnV0aWwub2ZmbGluZXRpbWVyJiYtMSE9cC51dGlsLm9mZmxpbmV0aW1lcj9jbGVhclRpbWVvdXQocC51dGlsLm9mZmxpbmV0aW1lcik6Vi5pc2FjdGl2ZT9wLm5ldC5yZWNvbm5lY3QoKTpwLm5ldC5yZWNvbm5lY3R3aGVuYWN0aXZlPSEwLEs9ZX0pLHAudXRpbC5hZGRPbk9mZkV2ZW50KCJvZmZsaW5lIixmdW5jdGlvbigpe3AudXRpbC5vZmZsaW5ldGltZXImJi0xIT1wLnV0aWwub2ZmbGluZXRpbWVyJiZjbGVhclRpbWVvdXQocC51dGlsLm9mZmxpbmV0aW1lcikscC51dGlsLm9mZmxpbmV0aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Sz1uLHAubmV0LnJlY29ubmVjdHdoZW5hY3RpdmU9ITEscC5uZXQuZ29PZmZsaW5lKCkscC51dGlsLm9mZmxpbmV0aW1lcj0tMX0sMmUzKX0pLHAubm90aWZpZXI9e3FkYXRhOltdLG1heHNpemU6MTAwLGxhc3R1cGRhdGVkaW5mbzp7fX0scC5ub3RpZmllci5ub3RpZnlTZXJ2ZXI9ZnVuY3Rpb24oZSx0KXt0cnl7ZSYmIWUuZXZlbnRfdGltZSYmKGUuZXZlbnRfdGltZT0iIisobmV3IERhdGUpLmdldFRpbWUoKSl9Y2F0Y2goZSl7fWguJFVUU0Nvbm5lY3Rvcj8kVVRTQ29ubmVjdG9yLnV0aWwubmV0LnRyYWNrRXZlbnQoZSk6cC51dGlsLmNoZWNrTW9kZShsKXx8KHAubmV0LndyaXRlZW5hYmxlZHx8dCkmJihZLl9XRUJTT0NLLnJlYWR5U3RhdGU9PT1ZLnJlYWR5c3RhdGUuT1BFTnx8cC51dGlsLmNoZWNrTW9kZShyKSk/cC5ub3RpZmllci5zZW5kRGF0YShlLHZvaWQgMCwhMCk6cC5ub3RpZmllci5xZGF0YS5sZW5ndGg+cC5ub3RpZmllci5tYXhzaXplfHwocC5ub3RpZmllci5yZW1vdmVJZkV4aXN0cyhlKSxwLm5vdGlmaWVyLnFkYXRhLnB1c2goZSkpfSxwLm5vdGlmaWVyLnJlbW92ZUlmRXhpc3RzPWZ1bmN0aW9uKGUpe3RyeXtmb3IodmFyIHQ9MDt0PHAubm90aWZpZXIucWRhdGEubGVuZ3RoO3QrKylKU09OLnN0cmluZ2lmeShwLm5vdGlmaWVyLnFkYXRhW3RdKT09SlNPTi5zdHJpbmdpZnkoZSkmJnAubm90aWZpZXIucWRhdGEuc3BsaWNlKHQsMSl9Y2F0Y2goZSl7fX0scC5ub3RpZmllci53YWl0Rm9yU29ja2V0Q29ubmVjdGlvbj1mdW5jdGlvbihlLHQpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtlLnJlYWR5U3RhdGUhPT1ZLnJlYWR5c3RhdGUuT1BFTj9wLm5vdGlmaWVyLndhaXRGb3JTb2NrZXRDb25uZWN0aW9uKGUsdCk6dm9pZCAwIT09dCYmdCgpfSw1MDApfSxwLm5vdGlmaWVyLnNlbmREYXRhPWZ1bmN0aW9uKGUsdCxuKXtpZihwLnNlcW1zZy5lbnJvbGwoZSxuKSxwLnV0aWwuY2hlY2tNb2RlKGMpKXt2YXIgaT1lO3Auc2VxbXNnLmlzY29ubmVjdGlvbm1hZGUmJigoaT17fSkuZGF0YT1lLGkuc2Vxbm89cC5zZXFtc2cuZ2V0U2VxdWVuY2VObygpKSxZLl9XRUJTT0NLLnJlYWR5U3RhdGU9PT1ZLnJlYWR5c3RhdGUuT1BFTj9ZLl9XRUJTT0NLLnNlbmQoSlNPTi5zdHJpbmdpZnkoaSkpOnAubm90aWZpZXIud2FpdEZvclNvY2tldENvbm5lY3Rpb24oWS5fV0VCU09DSyxmdW5jdGlvbigpe1kuX1dFQlNPQ0suc2VuZChKU09OLnN0cmluZ2lmeShpKSl9KX1lbHNlIHAudXRpbC5jaGVja01vZGUocik/ZWUuYmluZChKU09OLnN0cmluZ2lmeShlKSx0KTpwLnV0aWwuY2hlY2tNb2RlKGwpJiZYLnNlbmQoZSl9LHAubm90aWZpZXIudXBkYXRlTmF2aWd0aW9uPWZ1bmN0aW9uKGUpe3RoaXMubm90aWZ5U2VydmVyKHtvcHI6Im5hdiIsbmF2ZGF0YTplfSl9LHAubm90aWZpZXIudXBkYXRlQ3VzdG9tQWN0aW9uPWZ1bmN0aW9uKGUpe3ZhciB0PXt9LG49JFpTSVFVdGlsLmdldE5hdmlnYXRpb25PYmooaCk7dC5jcGFnZT1uLmN1cnJlbnRfcGFnZSx0LnB0aXRsZT1uLnBhZ2VfdGl0bGUsdC5sc2lkPW4ubHNpZCx0aGlzLm5vdGlmeVNlcnZlcih7b3ByOiJjdXN0b21hY3Rpb24iLGFjdGlvbjplLG5hdmRhdGE6dH0pO3RyeXtkZWxldGUgJHpvaG9zcS52YWx1ZXMuY3VzdG9tYWN0aW9uLGRlbGV0ZSAkWlNJUVV0aWwuZ2V0QVBJVmFsdWVzKCkuY3VzdG9tYWN0aW9ufWNhdGNoKGUpe319LHAubm90aWZpZXIuZG9Mb2c9ZnVuY3Rpb24oZSl7dGhpcy5ub3RpZnlTZXJ2ZXIoe29wcjoiZG9sb2ciLGxvZ2RhdGE6ZX0pfSxwLm5vdGlmaWVyLmVucm9sbEluZm89ZnVuY3Rpb24oZSx0KXtpZihlJiZ0KXt2YXIgbj17fTtuW2VdPXQsbi51cHRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCkscC5ub3RpZmllci5sYXN0dXBkYXRlZGluZm9bZV09bn19LHAubm90aWZpZXIuaXNVcGRhdGVkPWZ1bmN0aW9uKGUsdCl7dmFyIG49cC5ub3RpZmllci5sYXN0dXBkYXRlZGluZm9bZV07cmV0dXJuISFuJiYobltlXT09dCYmKChuZXcgRGF0ZSkuZ2V0VGltZSgpLW4udXB0aW1lPDZlNHx8KGRlbGV0ZSBwLm5vdGlmaWVyLmxhc3R1cGRhdGVkaW5mb1tlXSwhMSkpKX0scC5ub3RpZmllci51cGRhdGVHdWVzc0luZm89ZnVuY3Rpb24oZSl7dmFyIHQ9e30sbj17fTsoZT1lLmRldGFpbHN8fHt9KS5pc0Vycm9yJiYodC5pc0Vycm9yPWUuaXNFcnJvciksZS5uYW1lJiZlLm5hbWUudHJpbSgpJiYoZS5uYW1lPWUubmFtZS50cmltKCksdC5uYW1lPWUubmFtZSksZS5lbWFpbCYmZS5lbWFpbC50cmltKCkmJihlLmVtYWlsPWUuZW1haWwudHJpbSgpLHQuZW1haWw9ZS5lbWFpbC50b0xvd2VyQ2FzZSgpKSxlLnBob25lJiZlLnBob25lLnRyaW0oKSYmKGUucGhvbmU9ZS5waG9uZS50cmltKCksdC5waG9uZT1lLnBob25lKSxlLmNvbXBhbnkmJihuLmNvbXBhbnk9ZS5jb21wYW55KSx0aGlzLm5vdGlmeVNlcnZlcih7b3ByOiJ1cGRhdGVndWVzc2luZm8iLGRldGFpbDp0LGNpbmZvOkpTT04uc3RyaW5naWZ5KG4pfSl9LHAubm90aWZpZXIudXBkYXRlSW5mbz1mdW5jdGlvbihlKXt2YXIgdCxuLGk9ZS5uYW1lLG89ZS5maXJzdG5hbWUscj1lLmxhc3RuYW1lLGE9ZS5zYWx1dGF0aW9uO2UuZW1haWwmJih0PWUuZW1haWwudG9Mb3dlckNhc2UoKSksZS5waG9uZSYmJFpTSVFVdGlsLmlzVmFsaWRQaG9uZU5vKGUucGhvbmUpJiYobj1lLnBob25lKSxwLm5vdGlmaWVyLmlzVXBkYXRlZCgibmFtZSIsaSkmJihpPXZvaWQgMCkscC5ub3RpZmllci5pc1VwZGF0ZWQoImVtYWlsIix0KSYmKHQ9dm9pZCAwKSxwLm5vdGlmaWVyLmlzVXBkYXRlZCgicGhvbmUiLG4pJiYobj12b2lkIDApLHAubm90aWZpZXIuaXNVcGRhdGVkKCJmaXJzdG5hbWUiLG8pJiYobz12b2lkIDApLHAubm90aWZpZXIuaXNVcGRhdGVkKCJsYXN0bmFtZSIscikmJihyPXZvaWQgMCkscC5ub3RpZmllci5pc1VwZGF0ZWQoInNhbHV0YXRpb24iLGEpJiYoYT12b2lkIDApLChlLmluZm98fGl8fHR8fG58fG98fHJ8fGEpJiYocC5ub3RpZmllci5lbnJvbGxJbmZvKCJuYW1lIixpKSxwLm5vdGlmaWVyLmVucm9sbEluZm8oImVtYWlsIix0KSxwLm5vdGlmaWVyLmVucm9sbEluZm8oInBob25lIixuKSxwLm5vdGlmaWVyLmVucm9sbEluZm8oImZpcnN0bmFtZSIsbykscC5ub3RpZmllci5lbnJvbGxJbmZvKCJsYXN0bmFtZSIscikscC5ub3RpZmllci5lbnJvbGxJbmZvKCJzYWx1dGF0aW9uIixhKSx0aGlzLm5vdGlmeVNlcnZlcih7b3ByOiJ1cGRhdGVpbmZvIixuYW1lOmksZW1haWw6dCxwaG9uZTpuLGNpbmZvOmUuaW5mbyxmaXJzdG5hbWU6byxsYXN0bmFtZTpyLHNhbHV0YXRpb246YX0pKX0scC5ub3RpZmllci5pZGVudGlmeUJ5Q2FtcGFpZ249ZnVuY3Rpb24oKXtpZigkWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpLmVtYmVkb2JqLmlzbWFpbGNoaW1wZW5hYmxlZCl7dmFyIGU9JFpTSVFVdGlsLmdldFVSTFBhcmFtZXRlckJ5TmFtZSgibWNfY2lkIiksdD0kWlNJUVV0aWwuZ2V0VVJMUGFyYW1ldGVyQnlOYW1lKCJtY19laWQiKTtpZihudWxsIT1lJiZudWxsIT10KVEoIm1jX2NpZCIsZSksUSgibWNfZWlkIix0KTtlbHNlIE4oIm1haWxjaGltcCIpfHwoZT1OKCJtY19jaWQiKSx0PU4oIm1jX2VpZCIpKTtlJiZ0JiYodGhpcy5ub3RpZnlTZXJ2ZXIoe29wcjoiaWRlbnRpZnlieWNhbXBhaWduIixjYW1wYWlnbmRhdGE6e21jX2NpZDplLG1jX2VpZDp0fX0pLCRVVFNIYW5kbGVyLnNldFRyYWNrZWRmcm9tbWFpbGNoaW1wKCEwKSl9ZWxzZSBpZigkWlNJUVV0aWwuaXNab2hvQ2FtcGFpZ25FbmFibGVkKCkpe3ZhciBuPSRaU0lRVXRpbC5nZXRVUkxQYXJhbWV0ZXJCeU5hbWUoInpjX2NpZCIpO2lmKG51bGwhPW4pUSgiemNfY2lkIixuKTtlbHNlIE4oInpvaG9jYW1wYWlnbiIpfHwobj1OKCJ6Y19jaWQiKSk7biYmKHRoaXMubm90aWZ5U2VydmVyKHtvcHI6ImlkZW50aWZ5YnljYW1wYWlnbiIsY2FtcGFpZ25kYXRhOnt6Y19jaWQ6bn19KSwkVVRTSGFuZGxlci5zZXRUcmFja2VkZnJvbW1haWxjaGltcCghMCkpfXZhciBpPSR6di5lX25hbWUsbz0kenYuZV9lbWFpbDtvJiZpJiZ0aGlzLm5vdGlmeVNlcnZlcih7b3ByOiJpZGVudGlmeWJ5Y2FtcGFpZ24iLGNhbXBhaWduZGF0YTp7ZV9uYW1lOmksZV9lbWFpbDpvfX0pfSxwLm5vdGlmaWVyLnVwZGF0ZVN0YXR1cz1mdW5jdGlvbihlKXtpZihlKXRyeXt0aGlzLm5vdGlmeVNlcnZlcih7b3ByOiJzdGF0dXMiLHN0YXR1czoiIitlfSl9Y2F0Y2goZSl7fX0scC5ub3RpZmllci5hY2tub3dsZWRnZT1mdW5jdGlvbigpe3ZhciBlPSRaU0lRVVRTLmdldCgiX3psZHQiKTtpZihlKXt2YXIgdD17b3ByOiJhY2siLHV2aWQ6ZX07cC5ub3RpZmllci5ub3RpZnlTZXJ2ZXIodCwhMCl9fSxwLm5vdGlmaWVyLm5vdGlmeVF1ZXVlZD1mdW5jdGlvbigpe3Aubm90aWZpZXIucWRhdGEubGVuZ3RoJiZwLm5ldC53cml0ZWVuYWJsZWQmJihwLm5vdGlmaWVyLnNlbmREYXRhKHAubm90aWZpZXIucWRhdGEsITAsITApLHAubm90aWZpZXIucWRhdGE9W10pfTt2YXIgUD17aGFuZGxlQ29ubmVjdDpmdW5jdGlvbihlKXtlLmNoaWQ/KGUudXZpZD14LGUsJFVUU0hhbmRsZXIuaGFuZGxlVHJhY2tDaGF0KGUpKTokVVRTSGFuZGxlci5oYW5kbGVVVFNDb25uZWN0KGUpfX0sSD17Y3VyX3N0OiJ2aXNpYmxlIixpc19pbml0OiExfTtILmxhdGltZT0obmV3IERhdGUpLmdldFRpbWUoKSxILmluaXQ9ZnVuY3Rpb24oKXtpZighSC5pc19pbml0KXtILmlzX2luaXQ9ITA7dmFyIHQsbj1bIm1veiIsIm1zIiwibyIsIndlYmtpdCJdLGU9ITAsaT1mdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bi5sZW5ndGg7ZSsrKWlmKGEobltlXSlpbiBkb2N1bWVudClyZXR1cm4gbltlXTtyZXR1cm4gbnVsbH0oKSxvPWEoaSkscj0oaXx8IiIpKyJ2aXNpYmlsaXR5Y2hhbmdlIjtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKHIsbCwhMSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGZ1bmN0aW9uKCl7bCghMCl9LCExKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJibHVyIixmdW5jdGlvbigpe2woITEpfSwhMSksaC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXtsKCEwKX0sITEpLGguYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oKXtsKCExKX0sITEpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdSwhMSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIix1LCExKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsdSwhMSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NTW91c2VTY3JvbGwiLHUsITEpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLHUsITEpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsdSwhMSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiTVNQb2ludGVyTW92ZSIsdSwhMSksZCgpfWZ1bmN0aW9uIGEoZSl7cmV0dXJuIGU/ZSsiSGlkZGVuIjoiaGlkZGVuIn1mdW5jdGlvbiBzKCl7ZXx8KGU9ITAsSC5jdXJfc3Q9InZpc2libGUiKX1mdW5jdGlvbiBjKCl7ZSYmKGU9ITEsSC5jdXJfc3Q9ImhpZGRlbiIpfWZ1bmN0aW9uIGwoZSl7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgZT9lP3MoKTpjKCk6ZG9jdW1lbnRbb10/YygpOnMoKX1mdW5jdGlvbiBkKCl7dD1oLnNldFRpbWVvdXQobSwxZTQpfWZ1bmN0aW9uIHUoZSl7aC5jbGVhclRpbWVvdXQodCksSC5sYXRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCkscygpLGQoKX1mdW5jdGlvbiBtKCl7MzZlNTwobmV3IERhdGUpLmdldFRpbWUoKS1ILmxhdGltZSYmYygpLGQoKX19O3ZhciBWPXt1cGRhdGVJZGxlOmZ1bmN0aW9uKCl7dmFyIGU9VjtpZihlLmlzYWN0aXZlKXtwLm5vdGlmaWVyLnVwZGF0ZVN0YXR1cyhlLmlkbGUpLGUuaXNhY3RpdmU9ITE7dHJ5eyR6b2hvc3EuX2ludm9rZSgidmlzaXRvci5pZGxlIiwhMCl9Y2F0Y2goZSl7fX19LGluaXQ6ZnVuY3Rpb24oKXtpZihILmluaXQoKSx2b2lkIDA9PT10aGlzLmlzYWN0aXZlKXt2YXIgZT15LmlkbGV0aW1lO2UmJiFpc05hTihlKSYmKGU9NjAqZSoxZTMpLHRoaXMuaWRsZXRpbWU9ZXx8OWU1LHRoaXMudGltZXI9dGhpcy50aW1lcnx8LTEsdGhpcy5vbmxpbmU9MSx0aGlzLmlkbGU9NCx0aGlzLmlzYWN0aXZlPSEwO2Zvcih2YXIgdD1bImtleWRvd24iLCJrZXlwcmVzcyIsIm1vdXNlb3V0IiwibW91c2VlbnRlciIsImNsaWNrIl0sbj0wO248dC5sZW5ndGg7bisrKUcoZG9jdW1lbnQsdFtuXSxWLmFjdGl2ZSk7dGhpcy5hY3RpdmUoKX19LGFjdGl2ZTpmdW5jdGlvbigpe3ZhciBlPVY7aWYoZS51cGRhdGVUaW1lcigpLCFlLmlzYWN0aXZlKXtlLmlzYWN0aXZlPSEwLHAubmV0LnJlY29ubmVjdHdoZW5hY3RpdmU/KHAubmV0LnJlY29ubmVjdHdoZW5hY3RpdmU9ITEsQT0hMSk6cC5zZXFtc2cuaXNjb25uZWN0aW9ubWFkZXx8cC5uZXQucmVjb25uZWN0KCkscC5ub3RpZmllci51cGRhdGVTdGF0dXMoZS5vbmxpbmUpO3RyeXskem9ob3NxLl9pbnZva2UoInZpc2l0b3IuYWN0aXZlIiwhMCl9Y2F0Y2goZSl7fX19LHVwZGF0ZVRpbWVyOmZ1bmN0aW9uKCl7dmFyIGU9VjtjbGVhclRpbWVvdXQoZS50aW1lciksZS50aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Vi51cGRhdGVJZGxlKCl9LFYuaWRsZXRpbWUpfX0sRz1mdW5jdGlvbihlLHQsbil7ZS5hdHRhY2hFdmVudD9lLmF0dGFjaEV2ZW50KCJvbiIrdCxuKTplLmFkZEV2ZW50TGlzdGVuZXIodCxuLCEwKX0sWD17aW5pdGlhbGl6ZWQ6ITEsd29ya2VyaWQ6MCx1dHN3b3JrZXJ1cmw6bnVsbCxtYXN0ZXJ0YWJ3b3JrZXJpZDowLHV0c3dvcmtlcjpudWxsLGxhdGltZXVwZGF0ZXI6bnVsbCxsYXBvbGx0aW1lcjpudWxsLGNvbm5lY3R0aW1lcjpudWxsLF9lbmFibGVsb2c6ITEsbG9nRmluZTpmdW5jdGlvbihlKXtYLl9lbmFibGVsb2cmJmNvbnNvbGUubG9nKCIlYyAiK2UsImNvbG9yOiBibHVlIil9LGxvZ1RyYWNlOmZ1bmN0aW9uKGUpe1guX2VuYWJsZWxvZyYmY29uc29sZS5sb2coIiVjICIrZSwiY29sb3I6IHJlZCIpfSxsb2dJbmZvOmZ1bmN0aW9uKGUpe1guX2VuYWJsZWxvZyYmY29uc29sZS5sb2coIiVjICIrZSwiY29sb3I6IGdyZWVuIil9LGxvZ09iajpmdW5jdGlvbihlKXtYLl9lbmFibGVsb2cmJmNvbnNvbGUubG9nKGUpfSxzZW5kOmZ1bmN0aW9uKGUpe1guc2VuZE1lc3NhZ2UoInRvbWFzdGVyIix7aWQ6WC53b3JrZXJpZCxkYXRhOmV9KX0sc2VuZFJlc3BvbnNlVG9PdGhlcnM6ZnVuY3Rpb24oZSl7WC5zZW5kTWVzc2FnZSgidG9ub25tYXN0ZXIiLHtpZDpYLndvcmtlcmlkLGRhdGE6SlNPTi5zdHJpbmdpZnkoZSl9KX0sc2VuZE1lc3NhZ2U6ZnVuY3Rpb24oZSx0KXtlJiZ0JiYoWC51dHN3b3JrZXI/KFgubG9nVHJhY2UoInNlbmRNZXNzYWdlICIrSlNPTi5zdHJpbmdpZnkoe29wZXJhdGlvbjplLHBheWxvYWQ6SlNPTi5zdHJpbmdpZnkodCl9KSksWC51dHN3b3JrZXIucG9ydC5wb3N0TWVzc2FnZSh7b3BlcmF0aW9uOmUscGF5bG9hZDpKU09OLnN0cmluZ2lmeSh0KX0pKTpYLmxvZ1RyYWNlKCJ1dHN3b3JrZXIgaXRzZWxmIG5vdCBpbml0aWFsaXNlZCIrWC51dHN3b3JrZXIpKX0sZGlzYWJsZUNvbm5lY3Rpb246ZnVuY3Rpb24oKXtwLm5ldC5kaXNhYmxlQ29ubmVjdGlvbigpfSxjb25zdHJ1Y3RQYXlsb2FkOmZ1bmN0aW9uKGUsdCl7dmFyIG49e307aWYobi5pZD13b3JrZXJpZCxuLmlzTm90aWZ5VGFicz0hMSxpc05vdGlmeU90aGVyVGFiJiYobi5pc05vdGlmeVRhYnM9ITApLCFlfHxPYmplY3Qua2V5cyhlKS5sZW5ndGg8MSlyZXR1cm4gbjtmb3IodmFyIGkgaW4gZSluW2ldPWVbaV07cmV0dXJuIG59fSxZPXtpZDpudWxsLHdzU2NoZW1lOlMoaCwhMCksX1dFQlNPQ0s6e30scGluZ1RpbWVyOnt9LHJlY29udGltZXI6bnVsbCxyZWFkeXN0YXRlOntDT05ORUNUSU5HOjAsT1BFTjoxLENMT1NJTkc6MixDTE9TRUQ6M30saW5pdGlhbGl6ZWQ6ITEsaW5pdDpmdW5jdGlvbigpe2lmKFgubG9nSW5mbygiaW5zaWRlIHdzIGluaXQiKSxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSExLGY9Yywib2ZmIiE9PXkudHJhY2tpbmcpe3AubmV0LnNjaGVkdWxlRmFsbGJhY2soKTt0cnl7dmFyIGU9WS53c1NjaGVtZStxKCkrIi93YXRjaHdzPyI7ZSs9cC51dGlsLmNvbXBvc2VVcmwoKTt2YXIgdD0kWlNJUVVUUy5nZXRGcm9tU2Vzc2lvbigiY29ubmVjdGlvbl9jb3VudCIpfHwwO3Q9cGFyc2VJbnQodCksdCsrO3ZhciBuPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGwhPW0mJm08dH0saT1mdW5jdGlvbihlKXskWlNJUVVUUy5zdG9yZUluU2Vzc2lvbigiY29ubmVjdGlvbl9jb3VudCIsIiIrKGV8fDApKX07aWYoIW8mJm4oKSYmaSgpLG8mJm4oKSlyZXR1cm4gaSgpO289ITAsJFpTSVFVVFMuc3RvcmVJblNlc3Npb24oImNvbm5lY3Rpb25fY291bnQiLEpTT04uc3RyaW5naWZ5KHQpKSxlKz0iJmNvbm5lY3Rpb25fY291bnQ9Iit0O3RyeXsiV2ViU29ja2V0ImluIGgmJnZvaWQgMCE9PWguV2ViU29ja2V0P1kuX1dFQlNPQ0s9bmV3IFdlYlNvY2tldChlKToiTW96V2ViU29ja2V0ImluIGgmJihZLl9XRUJTT0NLPW5ldyBNb3pXZWJTb2NrZXQoZSkpfWNhdGNoKGUpe3JldHVybiBYLmxvZ0ZpbmUoIkV4Y2VwdGlvbiBvbiBuZXcgd2Vic29ja2V0ICIrZSksY2xlYXJUaW1lb3V0KHAubmV0LmZhbGxiYWNrdGltZXIpLHZvaWQocC5uZXQuZmFsbGJhY2t0aW1lcj1zZXRUaW1lb3V0KHAubmV0LmZhbGxiYWNrVG9DUiwwKSl9WC5sb2dGaW5lKCJCRUZPUkUgV1MuaWQgLSAiK1kuaWQpLFkuX1dFQlNPQ0suaWQ9KG5ldyBEYXRlKS5nZXRUaW1lKCksWS5pZD1ZLl9XRUJTT0NLLmlkLFgubG9nRmluZSgiV1MuaWQgLSAiK1kuaWQpLFkuX1dFQlNPQ0sub25vcGVuPWZ1bmN0aW9uKGUpe1kub25PcGVuKGUpfSxZLl9XRUJTT0NLLm9uY2xvc2U9ZnVuY3Rpb24oZSl7WC5sb2dGaW5lKCIgV1MuX1dFQlNPQ0sub25jbG9zZSAtICIrdGhpcy5pZCksWC5sb2dPYmooZSksWS5pZD09PXRoaXMuaWQmJihZLm9uQ2xvc2UoZSkscC5zZXFtc2cuaXNjb25uZWN0aW9ubWFkZT0hMSl9LFkuX1dFQlNPQ0sub25lcnJvcj1mdW5jdGlvbihlKXtZLm9uRXJyb3IoZSl9LFkuX1dFQlNPQ0sub25tZXNzYWdlPWZ1bmN0aW9uKGUpe3RyeXtZLm9uTWVzc2FnZShlKX1jYXRjaChlKXtwLm5vdGlmaWVyLmRvTG9nKCJFeGNlcHRpb24gaW4gV2ViU29ja2V0OiBtZXNzYWdlIC0gIitlLm1lc3NhZ2UrIiBzdGFjayAtICIrZS5zdGFjaysiIG5hbWU6IitlLm5hbWUpfX19Y2F0Y2goZSl7fX19LG9uTWVzc2FnZTpmdW5jdGlvbihlKXtYLmxvZ0ZpbmUoIiBXUy5vbk1lc3NhZ2UgLSAiK0pTT04uc3RyaW5naWZ5KGUpKyIgV1MuaW5pdGlhbGl6ZWQgLT4gIitZLmluaXRpYWxpemVkKyIgV1MuaWQgLT4gIitZLmlkKSxwLm5ldC5jb25uQWxpdmUoKSxNPTAscC5uZXQucmVxdWVzdFN1Y2Nlc3MoKSxZLmluaXRpYWxpemVkfHxwLm5ldC5zY2hlZHVsZUZhbGxiYWNrKCk7dmFyIHQ9ZS5kYXRhO2lmKCIvLzEvLyIhPT10KXtpZigiIiE9PXQpe2lmKCIsIj09PXQpcmV0dXJuIFgubG9nRmluZSgiZGF0YSA9ICwiKSx2b2lkIFkuaW5pdCgpO3AubmV0LmhhbmRsZVJlc3BvbnNlKHQpLGNsZWFyVGltZW91dChZLnBpbmdUaW1lciksWS5waW5nVGltZXI9c2V0VGltZW91dChZLnBpbmdjYiwxZTQpfX1lbHNlIFkuc2V0SW5pdGlhbGl6ZWQoKX0scGluZ2NiOmZ1bmN0aW9uKCl7aWYoMTVlMzxuZXcgRGF0ZS1wLm5ldC5scHQpdHJ5e1kuX1dFQlNPQ0sucmVhZHlTdGF0ZT09PVkucmVhZHlzdGF0ZS5PUEVOJiZZLl9XRUJTT0NLLnNlbmQoSlNPTi5zdHJpbmdpZnkoe2RhdGE6Ii0iLHNlcW5vOnAuc2VxbXNnLmdldFNlcXVlbmNlTm8oKX0pKX1jYXRjaChlKXtwLm5vdGlmaWVyLmRvTG9nKCJFeGNlcHRpb24gaW4gV2ViU29ja2V0OiBwaW5nIC0gIitlLm1lc3NhZ2UrIiBzdGFjayAtICIrZS5zdGFjaysiIG5hbWU6IitlLm5hbWUpfVkucGluZ1RpbWVyPXNldFRpbWVvdXQoWS5waW5nY2IsMWU0KX0sb25PcGVuOmZ1bmN0aW9uKGUpe1gubG9nRmluZSgiaW5zaWRlIHdzLm9ub3BlbiAtIFdTLnJlY29udGltZXIgLSBtdXN0IGJlIGNsZWFyZWQiKSxjbGVhclRpbWVvdXQoWS5yZWNvbnRpbWVyKSxWLmluaXQoKX0sb25FcnJvcjpmdW5jdGlvbihlKXtYLmxvZ0ZpbmUoImluc2lkZSB3cy5vbkVycm9yIC0gZXZ0IC0+ICIrSlNPTi5zdHJpbmdpZnkoZSkpLFgubG9nT2JqKGUpfSxvbkNsb3NlOmZ1bmN0aW9uKGUpe2lmKFgubG9nRmluZSgiaW5zaWRlIHdzLmNsb3NlIC0gZXZ0IC0+ICIrSlNPTi5zdHJpbmdpZnkoZSkpLHAudXRpbC5jaGVja01vZGUoYykpe00rKyxwLm5ldC5nb09mZmxpbmUoKSxjbGVhclRpbWVvdXQoWS5yZWNvbnRpbWVyKTt2YXIgdD0obmV3IERhdGUpLmdldFRpbWUoKSUyMDtZLnJlY29udGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe1kuYmluZCgpfSwxZTMqdCl9fSxiaW5kOmZ1bmN0aW9uKCl7ITAhPT1BJiZwLnV0aWwuY2hlY2tNb2RlKGMpJiYoWS5fV0VCU09DSy5yZWFkeVN0YXRlIT09WS5yZWFkeXN0YXRlLkNPTk5FQ1RJTkcmJlkuX1dFQlNPQ0sucmVhZHlTdGF0ZSE9PVkucmVhZHlzdGF0ZS5PUEVOfHwoWC5sb2dGaW5lKCJ3ZWJzb2NldCBjbG9zZWQgLSBXUy5fV0VCU09DSy5yZWFkeVN0YXRlIC0gIitZLl9XRUJTT0NLLnJlYWR5U3RhdGUpLFkuX1dFQlNPQ0suY2xvc2UoKSxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSExKSxjbGVhclRpbWVvdXQoWS5yZWNvbnRpbWVyKSxYLmxvZ0ZpbmUoImluc2lkZSB3cy5iaW5kIiksWS5pbml0KCkscC5uZXQuY29ubkFsaXZlKCkpfSxkaXNhYmxlQ29ubmVjdGlvbjpmdW5jdGlvbigpe3RyeXtYLmxvZ0ZpbmUoIndlYnNvY2tldCBjbG9zZWQgLSBieSBkaXNhYmxlY29ubmVjdGlvbiIpLFkuX1dFQlNPQ0suY2xvc2UoKSxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSExfWNhdGNoKGUpe319LHBpbmc6ZnVuY3Rpb24oKXtwLnV0aWwuY2hlY2tNb2RlKGMpJiYoWS5pbml0aWFsaXplZD0hMSxZLl9XRUJTT0NLLnJlYWR5U3RhdGU9PT1ZLnJlYWR5c3RhdGUuT1BFTiYmWS5fV0VCU09DSy5zZW5kKCItLTEtLSIpKX0sc2V0SW5pdGlhbGl6ZWQ6ZnVuY3Rpb24oKXtwLnV0aWwuY2hlY2tNb2RlKGMpJiYoWS5pbml0aWFsaXplZD0hMCxwLm5ldC51bnNjaGVkdWxlRmFsbGJhY2soKSl9fSxlZT17bGFzdGV2dHRpbWU6MCxyZXFvYmpzOltdLGZ1bGxUcmlwVGltZXI6bnVsbCxyZXNwVGltZXI6bnVsbCxhamF4OmZ1bmN0aW9uKGUpe3ZhciB0LG49ZS50eXBlfHwiR0VUIixpPWUuYXN5bmN8fCEwLG89ZS5vblN1Y2Nlc3N8fGZ1bmN0aW9uKCl7fSxyPWUub25GYWlsdXJlfHxmdW5jdGlvbigpe30sYT1lLnVybCxzPWUub3B0aW9uc3x8e307aWYoIndpdGhDcmVkZW50aWFscyJpbih0PW5ldyBYTUxIdHRwUmVxdWVzdCkpeyh0PW5ldyBYTUxIdHRwUmVxdWVzdCkub3BlbihuLGEsaSksdC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD1VVEYtOCIpLHMuYWpheHJlcT10O3RyeXt0Lm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT10LnJlYWR5U3RhdGUmJigyMDA9PT10LnN0YXR1cz9vKHMpOnIocykpfX1jYXRjaChlKXt0aHJvdyBjbGVhclRpbWVvdXQoZWUucmVzcFRpbWVyKSxlZS5yZXNwVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe2VlLmJpbmQoKX0sMWU0KSxNKysscC5uZXQuZ29PZmZsaW5lKCksZX19ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIFhEb21haW5SZXF1ZXN0KXsodD1uZXcgWERvbWFpblJlcXVlc3QpLm9wZW4oIkdFVCIsYSkscy5hamF4cmVxPXQ7dHJ5e3Qub25wcm9ncmVzcz1mdW5jdGlvbigpe30sdC5vbnRpbWVvdXQ9ZnVuY3Rpb24oKXt9LHQub25sb2FkPWZ1bmN0aW9uKCl7byhzKX0sdC5vbmVycm9yPWZ1bmN0aW9uKCl7cihzKX19Y2F0Y2goZSl7dGhyb3cgY2xlYXJUaW1lb3V0KGVlLnJlc3BUaW1lciksZWUucmVzcFRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlZS5iaW5kKCl9LDFlNCksTSsrLHAubmV0LmdvT2ZmbGluZSgpLGV9fXJldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5zZW5kKGUucXApfSwwKSx0fSxzZW5kUmVxOmZ1bmN0aW9uKGUsdCl7dmFyIG49KG5ldyBEYXRlKS5nZXRUaW1lKCksaT17dXJsOmUscXA6dCx0eXBlOiJQT1NUIixvblN1Y2Nlc3M6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ldnRzdGFydHRpbWUsbj1lLmFqYXhyZXEucmVzcG9uc2VUZXh0O2lmKCEoNGU0PGVlLmxhc3RldnR0aW1lLXQmJiIiPT09bikmJihwLm5ldC5oYW5kbGVSZXNwb25zZShuKSxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlJiZwLm5ldC5jb25uQWxpdmUoKSxwLm5ldC5yZXF1ZXN0U3VjY2VzcygpLE09MCwiIiE9PW4pKXt0cnl7dmFyIGk9SlNPTi5wYXJzZShuKTtpZihudWxsIT1pLnNzZXFubylyZXR1cm47aWYoQihpKSlmb3IodmFyIG89MDtvPGkubGVuZ3RoO28rKyl7dmFyIHIsYT1pW29dO2lmKCI0Ij09YS5vJiYocj1hLmQpJiZudWxsIT1yLnNzZXFubylyZXR1cm59ZWxzZSBpZigiNCI9PWkubyYmKHI9aS5kKSYmbnVsbCE9ci5zc2Vxbm8pcmV0dXJufWNhdGNoKGUpe3JldHVybn1lZS5iaW5kKCl9fSxvbkZhaWx1cmU6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5hamF4cmVxLnN0YXR1cztlZS5yZXFvYmpzWzBdJiZlZS5yZXFvYmpzWzBdLmFib3J0KCksY2xlYXJUaW1lb3V0KGVlLnJlc3BUaW1lciksZWUucmVzcFRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlZS5iaW5kKCl9LDFlNCksNTAwIT09dCYmMzA0IT09dCYmNDA0IT09dCYmNDAwIT09dCYmKE0rKyxwLm5ldC5nb09mZmxpbmUoKSl9LG9wdGlvbnM6e2V2dHN0YXJ0dGltZTplZS5sYXN0ZXZ0dGltZT1ufX0sbz1lZS5hamF4KGkpO2VlLnJlcW9ianNbMF09ZWUucmVxb2Jqc1sxXSxlZS5yZXFvYmpzWzFdPW99LGluaXQ6ZnVuY3Rpb24oKXtpZihwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSExLGY9ciwib2ZmIiE9PXkudHJhY2tpbmcpe3ZhciBlPWorcSgpKyIvd2F0Y2giLHQ9JFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oImNvbm5lY3Rpb25fY291bnQiKXx8MDt0PXBhcnNlSW50KHQpLHQrKywkWlNJUVVUUy5zdG9yZUluU2Vzc2lvbigiY29ubmVjdGlvbl9jb3VudCIsSlNPTi5zdHJpbmdpZnkodCkpO3RyeXtlZS5zZW5kUmVxKGUscC51dGlsLmNvbXBvc2VVcmwoKSsiJm5vY2FjaGU9IisobmV3IERhdGUpLmdldFRpbWUoKSsiJmNvbm5lY3Rpb25fY291bnQ9Iit0KX1jYXRjaChlKXtyZXR1cm59Vi5pbml0KCl9fSxiaW5kOmZ1bmN0aW9uKGUsdCl7aWYoITAhPT1BJiYobnVsbCE9PWVlLnJlc3BUaW1lciYmY2xlYXJUaW1lb3V0KGVlLnJlc3BUaW1lciksSSkpe3ZhciBuPWorcSgpKyIvYmluZCIsaT0ic2lkPSIrZW5jb2RlVVJJQ29tcG9uZW50KEkpKyImbm9jYWNoZT0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpO2UmJihpKz0iJiIsdCYmKGkrPSJxIiksaSs9ImRhdGE9IitlbmNvZGVVUklDb21wb25lbnQoZSksaSs9IiYiLGkrPSJzZXFubz0iK3Auc2VxbXNnLmdldFNlcXVlbmNlTm8oKSkscC5zZXFtc2cuaXNjb25uZWN0aW9ubWFkZSYmcC5uZXQuY29ubkFsaXZlKCksZWUuc2VuZFJlcShuLGkpLGNsZWFyVGltZW91dChlZS5mdWxsVHJpcFRpbWVyKSxlZS5mdWxsVHJpcFRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlZS5iaW5kKCl9LDJlNCl9fSxkaXNhYmxlQ29ubmVjdGlvbjpmdW5jdGlvbigpe2NsZWFyVGltZW91dChlZS5mdWxsVHJpcFRpbWVyKSxjbGVhclRpbWVvdXQoZWUucmVzcFRpbWVyKSxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSExfX07cC5pbml0PWZ1bmN0aW9uKGUsdCl7WC5sb2dGaW5lKCJ1dHMgLWluaXQiKSxlJiZudWxsLGUmJnAudXRpbC5iaW5kRXZlbnRzKCk7dmFyIG49IShBPSExKTskWlNJUVVUUy5nZXQoIm5leHRyZWNvbiIpJiYobj0kWlNJUVVUUy5nZXQoIm5leHRyZWNvbiIpLShuZXcgRGF0ZSkuZ2V0VGltZSgpPDApLG4mJihoLiRVVFNDb25uZWN0b3I/KHNldFRpbWVvdXQoZnVuY3Rpb24oKXskVVRTQ29ubmVjdG9yLnV0aWwubmV0LmRpc2FibGVkX2J5X3NlcnZlciYmJHpvaG9zcS50cmFja2luZy5vbigpfSwwKSxWLmluaXQoKSk6IVUmJiJXZWJTb2NrZXQiaW4gaCYmdm9pZCAwIT09aC5XZWJTb2NrZXR8fCJNb3pXZWJTb2NrZXQiaW4gaD8oWC5sb2dGaW5lKCJ3ZWJzb2NrZXQgLSBpbml0IiksWS5pbml0KCkpOigid2l0aENyZWRlbnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdHx8aC5YRG9tYWluUmVxdWVzdCkmJihYLmxvZ0ZpbmUoIkNPUlMgLSBpbml0IiksZWUuaW5pdCgpKSl9O3ZhciB0ZSxuZSxpZSxvZSxyZSxhZTtyZXR1cm57JFRhYlN0YXR1czpILFNXOlgsc3RvcmU6ZnVuY3Rpb24oZSx0LG4pe1EoZSx0LG4pLFooZSx0LG4pfSxzdG9yZUluTG9jYWxTdG9yYWdlOlosZ2V0RnJvbUxvY2FsU3RvcmFnZTpFLHJlbW92ZUZyb21TZXNzaW9uOmZ1bmN0aW9uKGUpe2lmKCFPKCkpcmV0dXJuITE7dmFyIHQ9SlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJ1dHNkYiIpfHwie30iKTtyZXR1cm4gZGVsZXRlIHRbeihlKV0sZGVsZXRlIHRbRihlKV0sc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLEpTT04uc3RyaW5naWZ5KHQpKSwhMH0sc3RvcmVJblNlc3Npb246ZnVuY3Rpb24oZSx0KXtpZighTygpKXJldHVybiExO3ZhciBuPWU7ZT16KG4pO3ZhciBpPUpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgidXRzZGIiKXx8Int9Iik7cmV0dXJuIGlbZV09dCxkZWxldGUgaVtGKG4pXSxzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJ1dHNkYiIsSlNPTi5zdHJpbmdpZnkoaSkpLCEwfSxnZXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE4oZSl8fEUoZSl9LGdldEZyb21TZXNzaW9uOmZ1bmN0aW9uKGUpe2lmKE8oKSl7dmFyIHQ9ZTtlPXooZSk7dmFyIG49SlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJ1dHNkYiIpfHwie30iKSxpPW5bZV07cmV0dXJuIGk/KGRlbGV0ZSBuW2U9Rih0KV0sc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLEpTT04uc3RyaW5naWZ5KG4pKSk6aT1uW2U9Rih0KV0saX19LHVwZGF0ZUFjdGlvbjpmdW5jdGlvbihlKXt2YXIgdD17b3ByOiJhY3Rpb24iLHR5cGU6ZS50eXBlfTtlLnRyaWdnZXJlZF9pZCYmKHQudHJpZ2dlcmVkX2lkPWUudHJpZ2dlcmVkX2lkKSxlLmFjdGlvbl90eXBlJiYodC5hY3Rpb25fdHlwZT1lLmFjdGlvbl90eXBlKSxwLm5vdGlmaWVyLm5vdGlmeVNlcnZlcih0KX0sbm90aWZ5Q3VzdG9tRXZlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9e29wcjoiY3VzdG9tZXZlbnQiLGRhdGE6ZX07cC5ub3RpZmllci5ub3RpZnlTZXJ2ZXIodCl9LGhhbmRsZUFwaUNoYW5nZTpmdW5jdGlvbihlLHQpe3N3aXRjaChlKXtjYXNlIDE6aWYoIm9uIj09PXQpe2lmKHAuaW5pdCgpLGguJFVUU0Nvbm5lY3Rvcil7dmFyIG49ZnVuY3Rpb24oZSx0KXskVVRTQ29ubmVjdG9yLnV0aWwubmV0LmRpc2FibGVkX2J5X3NlcnZlcj8oJFVUU0Nvbm5lY3Rvci51dGlsLm5ldC5kaXNhYmxlZF9ieV9zZXJ2ZXI9ITEsJFVUU0Nvbm5lY3Rvci51dGlsLm5ldC5tb25pdG9yQ29ubmVjdGlvbighMCkpOnQ8MjAmJnNldFRpbWVvdXQoZSwyZTMsZSwrK3QpfTskVVRTQ29ubmVjdG9yLnV0aWwubmV0LmRpc2FibGVkX2J5X3NlcnZlcj9uKG4sMSk6c2V0VGltZW91dChuLDFlMyxuLDEpfX1lbHNlIm9mZiI9PT10JiZwLm5ldC5kaXNhYmxlQ29ubmVjdGlvbigpO2JyZWFrO2Nhc2UgMjppc05hTih0KXx8KFYuaWRsZXRpbWU9NjAqdCoxZTMsVi51cGRhdGVUaW1lcigpKTticmVhaztjYXNlIDM6dCYmdC5oYW5kbGVpbmZvJiYodD10LmhhbmRsZWluZm8pLHAubm90aWZpZXIudXBkYXRlSW5mbyh0KTticmVhaztjYXNlIDQ6cC5ub3RpZmllci51cGRhdGVDdXN0b21BY3Rpb24odCk7YnJlYWs7Y2FzZSA1OnAubm90aWZpZXIudXBkYXRlR3Vlc3NJbmZvKHQpO2JyZWFrO2Nhc2UgNjohZnVuY3Rpb24oKXt2YXIgZT1KU09OLnN0cmluZ2lmeSgie30iKTt0cnl7c2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgidXRzZGIiLGUpfWNhdGNoKGUpe310cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oInV0c2RiIixlKX1jYXRjaChlKXt9dHJ5e2Zvcih2YXIgdD1bIl96bGRwIiwiX3psZHQiLCJuZXh0cmVjb24iLCJzaWQiLCJzaXFfcmVmIiwic2lxX2lzZGlyZWN0Iiwic2lxX25hbWUiLCJzaXFfZW1haWwiLCJzaXFfcGhvbmUiXSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl0sbz0oaT16KGkpKSsiPSA7ZXhwaXJlcz0gIituZXcgRGF0ZSgtMSkudG9HTVRTdHJpbmcoKTtvKz0iO3BhdGg9LyI7dHJ5e3ZhciByPSRVVFNIYW5kbGVyLmdldERvbWFpbigpO28rPSRaU0lRVXRpbC5nZXRTZWN1cmVDb29raWVLZXkobyksciYmKGRvY3VtZW50LmNvb2tpZT1vKSxvKz1yPyI7ZG9tYWluPSIrcjoiIn1jYXRjaChlKXt9bz0kWlNJUVV0aWwuc2V0U2FtZVNpdGVDb29raWUobyksZG9jdW1lbnQuY29va2llPW99fWNhdGNoKGUpe31JPSIiLHg9TD1udWxsfSgpO2JyZWFrO2Nhc2UgNzpwLm5vdGlmaWVyLmRvTG9nKHQpfX0saW5pdDpmdW5jdGlvbihlKXtpZighVHx8ZSl7dmFyIHQ9JFpTSVFDaGF0LmdldFdpZGdldERhdGEoKSxuPSRaU0lRVXRpbC5mb3JtV2lkZ2V0T2JqZWN0KHQud2lkZ2V0b2JqKSxpPXQuZW1iZWRvYmo7VD1uLmVtYmVkbmFtZSxiPW4uc2NyZWVubmFtZSxtPWkuc29ja2V0X3JlY29ubmVjdGlvbl9jb3VudDt2YXIgbz0kWlNJUVV0aWwuZm9ybUVtYmVkT2JqZWN0KGkpO28mJm8uZWluZm8mJm8uZWluZm8uZW1iZWRzdGF0dXMmJm8uZWluZm8uZW1iZWRzdGF0dXMubG9uZ2xhc3Rpbmdjb29raWV0dGwmJiIxIj09by5laW5mby5lbWJlZHN0YXR1cy5sb25nbGFzdGluZ2Nvb2tpZXR0bCYmKGc9MzE1MzZlNixoLiRVVFNDb25uZWN0b3ImJigkVVRTQ29ubmVjdG9yLmNvb2tpZV9tYXhfYWdlPTMxNTM2ZTYsJFVUU0Nvbm5lY3Rvci51dGlsLmRiLnJldXBkYXRlQ29va2llVFRMKCkpKSwkPWkubGFuZ3x8aS5sYW5ndWFnZSxkPW4udXRzc2VydmVyLHU9bi56bGR2cDt2YXIgcj0kWlNJUVV0aWwuZ2V0R0RQUlBlbmRpbmdTdGF0dXModCxpLGIpO2lmKChuLmZvcmNlaHR0cHN8fCRVVFNIYW5kbGVyLmlzRm9yY2VTZWN1cmUoKSkmJihoLiRVVFNDb25uZWN0b3I/JFVUU0Nvbm5lY3Rvci5lbmFibGVGb3JjZVNlY3VyZSgpOihqPSJodHRwczovLyIsWS53c1NjaGVtZT0id3NzOi8vIikpLHk9JFVUU0hhbmRsZXIuZ2V0QVBJVmFsdWVzRm9yVVRTKCksJFpTSVFfVVRTaW5pdGlhbGl6ZWQ9ITAsZnVuY3Rpb24oKXtJPSRaU0lRVVRTLmdldEZyb21TZXNzaW9uKCJzaWQiKTt0cnl7aC5vcGVuZXImJmgucGFyZW50LiRaU0lRVVRTLmdldEZyb21TZXNzaW9uKCJzaWQiKT09PUkmJihJPSIiKX1jYXRjaChlKXt9dHJ5e2lmKGgudG9wIT1oLnNlbGYmJmgudG9wLiRaU0lRVVRTJiZoLnRvcC4kWlNJUVVUUy5nZXRVVFNTSUQoKT09JFpTSVFVVFMuZ2V0VVRTU0lEKCkpcmV0dXJuIEk9IiIsQyghMSkscC5ub3RpZmllci5kb0xvZygibG9hZGVkIGluc2lkZSBpZnJhbWUgdGFiLiBTbywgZGlzYWJsaW5nIGRhdGEgc3RvcmluZyIpfWNhdGNoKGUpe31DKCEwKX0oKSwhaC4kVVRTQ29ubmVjdG9yKXRyeXtpZighJFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oInNpcV9pc2RpcmVjdCIpJiYhJFpTSVFVVFMuZ2V0RnJvbVNlc3Npb24oInNpcV9yZWYiKSl7dmFyIGE9JFpTSVFVdGlsLmdldE5hdmlnYXRpb25PYmooaCkucmVmZXJlcjthPyRaU0lRVVRTLnN0b3JlSW5TZXNzaW9uKCJzaXFfcmVmIixhKTokWlNJUVVUUy5zdG9yZUluU2Vzc2lvbigic2lxX2lzZGlyZWN0IiwhMCl9fWNhdGNoKGUpe31pZighKG4uaXN0cmFja2luZ3x8eS50cmFja2luZyYmIm9uIj09eS50cmFja2luZyl8fCJvZmYiPT15LnRyYWNraW5nfHwkWlNJUVV0aWwuY2hlY2tHRFBSQmFubmVyU3RhdHVzKDIsYixpKXx8cil7aWYoaC4kVVRTQ29ubmVjdG9yKXskVVRTQ29ubmVjdG9yLnV0aWwubmV0LnRlcm1pbmF0ZSgpO3ZhciBzPSRVVFNDb25uZWN0b3IudXRpbC5kYi5nZXRGcm9tQ29va2llKHtrZXk6Il96bGR0In0pfHwkVVRTQ29ubmVjdG9yLnV0aWwuZGIuZ2V0RnJvbVN0b3JhZ2Uoe3R5cGU6ImxvY2FsU3RvcmFnZSIsa2V5OiJfemxkdCJ9KTtzJiYkVVRTSGFuZGxlci5zZXRVVklEKHMpO3ZhciBjPSRVVFNDb25uZWN0b3IudXRpbC5kYi5nZXRGcm9tQ29va2llKHtrZXk6Il91dWlkIn0pfHwkVVRTQ29ubmVjdG9yLnV0aWwuZGIuZ2V0RnJvbVN0b3JhZ2Uoe3R5cGU6ImxvY2FsU3RvcmFnZSIsa2V5OiJfdXVpZCJ9KTtjJiYkVVRTSGFuZGxlci5zZXRVVUlEKGMpfX1lbHNleyFlJiZoLiRVVFNDb25uZWN0b3ImJiR6b2hvc3EudHJhY2tpbmcub24oKSx4PXh8fCRaU0lRVVRTLmdldCgiX3psZHQiKSxMPShMPUx8fCRaU0lRVVRTLmdldCgiX3psZHAiKSl8fHUsJHp2LmN1c3RvbWFjdGlvbiYmJFpTSVFVVFMuaGFuZGxlQXBpQ2hhbmdlKDQsJHp2LmN1c3RvbWFjdGlvbiksJHp2LmlkbGV0aW1lJiYkWlNJUVVUUy5oYW5kbGVBcGlDaGFuZ2UoMiwkenYuaWRsZXRpbWUpLCgkenYubmFtZXx8JHp2LmVtYWlsfHwkenYucGhvbmV8fCR6di5pbmZvKSYmJFpTSVFVVFMuaGFuZGxlQXBpQ2hhbmdlKDMsJHp2KSxYLmxvZ0ZpbmUoInZlcnkgZmlyc3QgdGltZSB1dHMgaW5pdCIpO3ZhciBsPSRVVFNIYW5kbGVyLmdldEVxdWFsRG9tYWlucygpO2w/KFgubG9nRmluZSgiZmFsbGluZyB0byBsb2FkIGFmdGVyIHRvICIrbCksc2V0VGltZW91dChwLmluaXQsNWUzLCEwKSk6cC5pbml0KCEwKSxoLiRVVFNDb25uZWN0b3J8fHAubmV0LnNjaGVkdWxlTW9uaXRvcigpfX1lbHNlIFgubG9nRmluZSgidXRzIGluaXQgYWxyZWFkeSBjYWxsZWQgLSBtdXN0IGJlIGNhbGxlZCB0d2ljZSIpfSxnZXRVVFNTSUQ6ZnVuY3Rpb24oKXtyZXR1cm4gaC4kVVRTQ29ubmVjdG9yPyRVVFNDb25uZWN0b3IuZ2V0VVRTU0lEKCk6SX0sY2xlYXJVdHNBcGl2YWx1ZXM6ZnVuY3Rpb24oKXt5PXt9fSxnZXRVVFNOYW1lOmZ1bmN0aW9uKCl7dmFyIGU9e307cmV0dXJuIGUubmFtZT1hLGUudG9rZW49cyxlfSxoYW5kbGVDdXN0b21BY3Rpb246ZnVuY3Rpb24oZSl7bnVsbCE9ZS5hY3Rpb24/KCJtYWlsY2hpbXAiPT1lLmFjdGlvbj9RKCJtYWlsY2hpbXAiLEpTT04uc3RyaW5naWZ5KHtlbWFpbDplLmVtYWlsLG5hbWU6ZS5uYW1lfSkpOiJ6b2hvY2FtcGFpZ24iPT1lLmFjdGlvbj9RKCJ6b2hvY2FtcGFpZ24iLEpTT04uc3RyaW5naWZ5KHtlbWFpbDplLmVtYWlsLG5hbWU6ZS5uYW1lfSkpOiJlZGF0YSI9PWUuYWN0aW9uJiYoZGVsZXRlICR6di5lX25hbWUsZGVsZXRlICR6di5lX2VtYWlsKSxlLm5hbWUmJiR6b2hvc3Euc2V0VmFsdWUoIm5hbWUiLGUubmFtZSksZS5lbWFpbCYmJHpvaG9zcS5zZXRWYWx1ZSgiZW1haWwiLGUuZW1haWwpKTokWlNJUVVUU0FjdGlvbi5oYW5kbGUoZS50cmlnZ2Vycyl9LGlkZW50aWZ5QnlDYW1wYWlnbjpmdW5jdGlvbigpe3Aubm90aWZpZXIuaWRlbnRpZnlCeUNhbXBhaWduKCl9LGNsZWFyTG9jYWxWYWx1ZXM6ZnVuY3Rpb24oKXskPSIifSxpc1RyYWNraW5nTGl2ZTpmdW5jdGlvbigpe3JldHVybiEhaC4kVVRTQ29ubmVjdG9yfHxwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlfSx1cGRhdGVUcmFja2luZ0xpdmU6ZnVuY3Rpb24oKXtwLnNlcW1zZy5pc2Nvbm5lY3Rpb25tYWRlPSEwfX19KHdpbmRvdyk7dmFyICRaU0lRVVRTQWN0aW9uPSRaU0lRVVRTQWN0aW9ufHxmdW5jdGlvbihwKXt2YXIgbyxlPXsxOiJsZWZ0IiwyOiJyaWdodCIsMzoiYm90dG9tIiw0OiJ0b3AifSxzPTAsbD0wLGM9IiIsdT17fSxtPXt9LGY9ZnVuY3Rpb24oKXtpZigwIT0kVVRTSGFuZGxlci5nZXRGbG9hdFN0YXR1cygpfHwtMSE9WzEwLDE2XS5pbmRleE9mKHMpKXt2YXIgZT0hMDtzd2l0Y2goYy50aW1lPShuZXcgRGF0ZSkuZ2V0VGltZSgpLHMpe2Nhc2UgMjokVVRTSGFuZGxlci5oYW5kbGVUcmlnZ2VyQ3VzdG9tQWN0aW9uKGZ1bmN0aW9uKCl7JFVUU0hhbmRsZXIuaGFuZGxlQ2hhdFRyaWdnZXJzKHMsYyl9KTticmVhaztjYXNlIDM6JFVUU0hhbmRsZXIub3BlbkNoYXRXaW5kb3coKTticmVhaztjYXNlIDQ6Y2FzZSA1OmJyZWFrO2Nhc2UgNjphKCk7YnJlYWs7Y2FzZSA3OiRVVFNIYW5kbGVyLnNob3dCdXR0b24oKTticmVhaztjYXNlIDg6cigpO2JyZWFrO2Nhc2UgOTokVVRTSGFuZGxlci5oYW5kbGVDaGF0VHJpZ2dlcnMocyxjKTticmVhaztjYXNlIDE2OiRVVFNIYW5kbGVyLmhhbmRsZVRyaWdnZXJDdXN0b21BY3Rpb24oZnVuY3Rpb24oKXskVVRTSGFuZGxlci5oYW5kbGVCb3RUcmlnZ2VyKGMpfSk7YnJlYWs7Y2FzZSAxMDohMT09PWkoKSYmKGU9ITEpfXRyeXtpZihlJiYhbihzKSl7dmFyIHQ9JFpTSVFVVFNBY3Rpb24ucmVjaGF0dHJpZ2dlcj8iMTQiOiI3IjskWlNJUVVUUy51cGRhdGVBY3Rpb24oe3R5cGU6dCxhY3Rpb25fdHlwZTpzLHRyaWdnZXJlZF9pZDpvfSksZGVsZXRlICRaU0lRVVRTQWN0aW9uLnJlY2hhdHRyaWdnZXJ9fWNhdGNoKGUpe319fSxpPWZ1bmN0aW9uKCl7dHJ5e3ZhciBlPXt0cmlnZ2VybmFtZTpjLnRyaWdnZXJuYW1lLHZpc2l0b3JpbmZvOnV9O3JldHVybiAkem9ob3NxLl9pbnZva2UoInZpc2l0b3IudHJpZ2dlciIsZSl9Y2F0Y2goZSl7cmV0dXJuITF9fSxuPWZ1bmN0aW9uKGUpe3ZhciB0PSRaU0lRVXRpbC5nZXRBdnVpZCgpO3JldHVybiEoLTE9PVsyLDE2XS5pbmRleE9mKGUpfHwhJFpTSVFMU0RCLmdldEZyb21TZXNzaW9uKHQrIl9mb3JtY29udGV4dGluaXRpYXRlZCIpKX0sZD1mdW5jdGlvbihlKXt0cnl7dmFyIHQ9U3RyaW5nKGUpLnRvTG93ZXJDYXNlKCk7aWYoLTEhPXQuc2VhcmNoKC9ob3VyL2kpKXJldHVybiAzNmU1KnBhcnNlSW50KHQpO2lmKC0xIT10LnNlYXJjaCgvbWludXRlL2kpKXJldHVybiA2ZTQqcGFyc2VJbnQodCk7aWYoLTEhPXQuc2VhcmNoKC9zZWNvbmQvaSkpcmV0dXJuIDFlMypwYXJzZUludCh0KX1jYXRjaChlKXt0cnl7JFpTSVFVVFMuaGFuZGxlQXBpQ2hhbmdlKDcsIkV4Y2VwdGlvbiBpbiB0cmlnZ2VyIHBhcnNlVGltZSAtICIrZS5tZXNzYWdlKyIgc3RhY2sgLSAiK2Uuc3RhY2srIiBuYW1lOiIrZS5uYW1lKX1jYXRjaChlKXt9fXJldHVybiAwfSxhPWZ1bmN0aW9uKCl7dmFyIG49JFVUU0hhbmRsZXIuZ2V0RmxvYXREaXYoNSk7aWYobnVsbCE9bil7dmFyIGEscj0wLG89ezE6InJpZ2h0IiwyOiJsZWZ0IiwzOiJ0b3AiLDQ6ImJvdHRvbSJ9LHM9ZVtjLmFuaW1hdGV0eXBlXTsibGVmdCI9PT1zfHwicmlnaHQiPT09cz8oYT1wLmlubmVyV2lkdGh8fGRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgsYS09bi5vZmZzZXRXaWR0aCsxMCk6KGE9cC5pbm5lckhlaWdodHx8ZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQsYS09bi5vZmZzZXRIZWlnaHQrMTApO3ZhciBsPWQoYy5kdXJhdGlvbil8fDUwLHU9bi5jdXJyZW50U3R5bGU/bi5jdXJyZW50U3R5bGVbc106ZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShuLG51bGwpW3NdLG09b1tjLmFuaW1hdGV0eXBlXTttPW4uY3VycmVudFN0eWxlP24uY3VycmVudFN0eWxlW21dOmRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUobixudWxsKVttXSxuLnN0eWxlW29bYy5hbmltYXRldHlwZV1dPSJhdXRvIixuLnN0eWxlW3NdPSIwcHgiLGZ1bmN0aW9uIGUoKXt2YXIgdD1wYXJzZUludChuLnN0eWxlW3NdKSxpPSRVVFNIYW5kbGVyLmdldEZsb2F0U3RhdGUoKTtpZih0PHJ8fGE8dHx8IjIiPT09aSlyZXR1cm4gbi5zdHlsZVtzXT11LHZvaWQobi5zdHlsZVtvW2MuYW5pbWF0ZXR5cGVdXT1tKTtuLnN0eWxlW3NdPXQrMTArInB4IixzZXRUaW1lb3V0KGUsbCl9KCl9fSxyPWZ1bmN0aW9uKCl7dmFyIGU9JFVUU0hhbmRsZXIuZ2V0RmxvYXREaXYoNCk7aWYobnVsbCE9ZSl7dmFyIGc9ZS5xdWVyeVNlbGVjdG9yKCIuenNpcV9mbG9hdCIpLGg9Zy5jdXJyZW50U3R5bGU/Zy5jdXJyZW50U3R5bGUuYmFja2dyb3VuZENvbG9yOmRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZyxudWxsKS5iYWNrZ3JvdW5kQ29sb3I7aWYoLTEhPT1oLmluZGV4T2YoIiMiKSl7dmFyIHQ9aDt0PXQucmVwbGFjZSgiIyIsIiIpO3ZhciBpPXBhcnNlSW50KHQsMTYpO2g9W2k+PjE2JjI1NSxpPj44JjI1NSwyNTUmaV19ZWxzZSBoPWgucmVwbGFjZSgicmdiKCIsIiIpLnJlcGxhY2UoIikiLCIiKS5zcGxpdCgiLCIpO2Zvcih2YXIgbj0wO248aC5sZW5ndGg7bisrKWhbbl09TnVtYmVyKGhbbl0pO3ZhciBiPSExOyFmdW5jdGlvbigpe3ZhciBlPWEoKTshZnVuY3Rpb24gZSh0LGksbil7dmFyIGE9ZyxyPSRVVFNIYW5kbGVyLmdldEZsb2F0U3RhdGUoKTtpZihiJiZ0PT09aHx8IjIiPT09cilhLnN0eWxlLmJhY2tncm91bmRDb2xvcj0icmdiKCIraCsiKSI7ZWxzZXt2YXIgbz1uLzEwMCxzPShpWzBdLXRbMF0pL28sbD0oaVsxXS10WzFdKS9vLHU9KGlbMl0tdFsyXSkvbyxtPXRbMF0sYz10WzFdLGY9dFsyXSxkPXRoaXM7dGhpcy5zdGVwPWZ1bmN0aW9uKCl7MDwtLW8/KG09TWF0aC5mbG9vcihtK3MpLGM9TWF0aC5mbG9vcihjK2wpLGY9TWF0aC5mbG9vcihmK3UpLGEuc3R5bGUuYmFja2dyb3VuZENvbG9yPSJyZ2IoIittKyIsIitjKyIsIitmKyIpIixwLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLnN0ZXAoKX0sMTAwKSk6KGEuc3R5bGUuYmFja2dyb3VuZENvbG9yPSJyZ2IoIitpKyIpIix0aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZShpLHQsbil9LDUwMCkpfSxzdGVwKCl9fShoLGUsMWUzKTt2YXIgdD1kKGMuZHVyYXRpb24pfHw2ZTQ7c2V0VGltZW91dChmdW5jdGlvbigpe2I9ITB9LHQpfSgpfWZ1bmN0aW9uIGEoKXt2YXIgZSx0PWgsaT0oZT0uMjEyNipoWzBdKy43MTUyKmhbMV0rLjA3MjIqaFsyXSxwYXJzZUludChlKTwxMjgpO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIGU9cGFyc2VJbnQoZSksaT9NYXRoLnJvdW5kKC42KigyNTUtZSkrZSk6TWF0aC5yb3VuZCguMiooMC1lKStlKX12YXIgYT1uKHRbMF0pLHI9bih0WzFdKSxvPW4odFsyXSk7cmV0dXJuIDI1NTxhfHwyNTU8cnx8MjU1PG8/dDpbYSxyLG9dfX0sZz17aXNsb2FkZWRmaXJzdDohMCx6c2lxZm9ybW5hbWVzOlsibmFtZSIsInlvdXJuYW1lIiwic3Vic2NyaWJlcm5hbWUiLCJjb250YWN0bmFtZSIsImN1c3RvbWVybmFtZSJdLHpzaXFmb3JtZW1haWxzOlsiZW1haWwiLCJlbWFpbGlkIiwieW91cmVtYWlsIiwiY29udGFjdGVtYWlsIiwic3Vic2NyaWJlcmVtYWlsIiwibWFpbCIsImN1c3RvbWVyZW1haWwiLCJlbWFpbGFkZHJlc3MiXSx6c2lxZm9ybXBub3M6WyJwaG9uZSIsInBubyIsInBob25lIG5vIiwicGhvbmVubyIsInBobm8iLCJ0ZWwiLCJtb2JpbGVudW1iZXIiLCJjb250YWN0cGhvbmUiXSx6c2lxYXR0cmlibGlzdDpbImlkIiwibmFtZSIsInR5cGUiLCJzaXFhdHJpYiJdLHpzaXFmb3JtY29tcGFueTpbImNvbXBhbnkiXSx6c2lxZmlyc3RuYW1lOlsiZmlyc3RfbmFtZSIsImZpcnN0bmFtZSIsImZpcnN0IG5hbWUiXSx6c2lxbGFzdG5hbWU6WyJsYXN0X25hbWUiLCJsYXN0bmFtZSIsImxhc3QgbmFtZSJdfTtyZXR1cm4gZy5zdWJtaXQ9Zy5zdWJtaXR8fHt9LGcuaXNuYW1lc2V0PSExLGcuaXNlbWFpbHNldD0hMSxnLmlzcGhvbmVzZXQ9ITEsZy5pc2NvbXBhbnlzZXQ9ITEsZy5pc0VsZW1lbnRBdmFpbGFibGU9ZnVuY3Rpb24oZSl7cmV0dXJuISghZXx8MD09ZS5sZW5ndGgpfSxnLmlzRXF1YWxzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PXR9LGcucmVwbGFjZVNwZWNpYWxDaGFycz1mdW5jdGlvbihlKXtyZXR1cm4gZT1lLnJlcGxhY2UoL1tfLi1dL2csIiIpfSxnLmZvcm1hdEF0dHJpYlZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBlPWUudG9Mb3dlckNhc2UoKS50cmltKCksZT1nLnJlcGxhY2VTcGVjaWFsQ2hhcnMoZSl9LGcuY2hlY2tJbkRPTUF0dHJpYj1mdW5jdGlvbihlLHQsaSl7Zm9yKHZhciBuLGE9MDthPGUubGVuZ3RoO2ErKyl7dmFyIHI9aS5nZXRBdHRyaWJ1dGUoZVthXSk7aWYocil7cj1nLmZvcm1hdEF0dHJpYlZhbHVlKHIpO2Zvcih2YXIgbz0wO288dC5sZW5ndGg7bysrKWlmKGcuaXNFcXVhbHMocix0W29dKSl7bj1pLnZhbHVlO2JyZWFrfWlmKG4pYnJlYWt9fXJldHVybiBufHwiIn0sZy5nZXROYW1lPWZ1bmN0aW9uKGUpe2lmKCFnLmlzbmFtZXNldClyZXR1cm4gZy5jaGVja0luRE9NQXR0cmliKGcuenNpcWF0dHJpYmxpc3QsZy56c2lxZm9ybW5hbWVzLGUpfSxnLmdldEVtYWlsPWZ1bmN0aW9uKGUsdCl7aWYoIWcuaXNlbWFpbHNldClyZXR1cm4gZy5jaGVja0luRE9NQXR0cmliKGcuenNpcWF0dHJpYmxpc3QsZy56c2lxZm9ybWVtYWlscyxlKX0sZy5nZXRQaG9uZU5vPWZ1bmN0aW9uKGUsdCl7aWYoIWcuaXNwaG9uZXNldClyZXR1cm4gZy5jaGVja0luRE9NQXR0cmliKGcuenNpcWF0dHJpYmxpc3QsZy56c2lxZm9ybXBub3MsZSl9LGcuZ2V0Rmlyc3ROYW1lPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGcuY2hlY2tJbkRPTUF0dHJpYihnLnpzaXFhdHRyaWJsaXN0LGcuenNpcWZpcnN0bmFtZSxlKX0sZy5nZXRMYXN0TmFtZT1mdW5jdGlvbihlLHQpe3JldHVybiBnLmNoZWNrSW5ET01BdHRyaWIoZy56c2lxYXR0cmlibGlzdCxnLnpzaXFsYXN0bmFtZSxlKX0sZy5nZXRDb21wYW55PWZ1bmN0aW9uKGUsdCl7aWYoIWcuaXNjb21wYW55c2V0KXJldHVybiBnLmNoZWNrSW5ET01BdHRyaWIoZy56c2lxYXR0cmlibGlzdCxnLnpzaXFmb3JtY29tcGFueSxlKX0sZy5nZXREZXRhaWxzPWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2lmKCFnLmlzRWxlbWVudEF2YWlsYWJsZShlKSlyZXR1cm4gdDt2YXIgaT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpbnB1dCIpO2lmKCFnLmlzRWxlbWVudEF2YWlsYWJsZShpKSlyZXR1cm4gdDtmb3IodmFyIG49IiIsYT0iIixyPSIiLG89IiIscz0iIixsPSIiLHU9MDt1PGkubGVuZ3RoO3UrKyl7dmFyIG09aVt1XTttLm5hbWU7bS52YWx1ZSYmKCIiPT1uJiYobj1nLmdldE5hbWUobSkpLCIiPT1hJiYoYT1nLmdldEVtYWlsKG0pKSwiIj09ciYmKHI9Zy5nZXRQaG9uZU5vKG0pKSwiIj09byYmKG89Zy5nZXRGaXJzdE5hbWUobSkpLCIiPT1zJiYocz1nLmdldExhc3ROYW1lKG0pKSwiIj09bCYmKGw9Zy5nZXRDb21wYW55KG0pKSl9aWYobil0Lm5hbWU9bixnLmlzbmFtZXNldD0hMDtlbHNlIGlmKG8pe3ZhciBjPW87cyYmKGM9YysiICIrcyksdC5uYW1lPWMsZy5pc25hbWVzZXQ9ITB9cmV0dXJuIGwmJih0LmNvbXBhbnk9bCxnLmlzY29tcGFueXNldD0hMCksYSYmL14oW1x3XShbXHdcLVwuXCtcJ1wvXSopQChbXHdcLVwuXSopKFwuW2EtekEtWl17MiwyMn0oXC5bYS16QS1aXXsyfSl7MCwyfSkpJC8udGVzdChhKSYmKHQuZW1haWw9YSxnLmlzZW1haWxzZXQ9ITApLHImJi9eWyswLTlBLVphLXooKTouXC1cW1xdIF17MSwzMH0kLy50ZXN0KHIpJiYodC5waG9uZT1yLGcuaXNwaG9uZXNldD0hMCksdH0sZy5nZXRPYmpLZXlDb3VudD1mdW5jdGlvbihlKXt2YXIgdD0wO2lmKG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIHQ7Zm9yKHZhciBpIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShpKSYmdCsrO3JldHVybiB0fSxnLmF1dG9QaWNrQW5kTm90aWZ5VVRTPWZ1bmN0aW9uKGUpe3ZhciB0PWcuZ2V0RGV0YWlscyhlKTswIT09Zy5nZXRPYmpLZXlDb3VudCh0KSYmJHpvaG9zcS5zZXRWYWx1ZSgiZGV0YWlscyIsdCw1KX0sZy5vdmVycmlkZWRPbnN1Ym1pdD1mdW5jdGlvbihlKXt0cnl7ZT1lfHxwLmV2ZW50O3ZhciB0PXRoaXM7dHx8KHQ9ZT9lLnRhcmdldHx8ZS5zcmNFbGVtZW50OiIiKTt0cnl7Zy5hdXRvUGlja0FuZE5vdGlmeVVUUyh0KX1jYXRjaChlKXt9dmFyIGk9dC5nZXRBdHRyaWJ1dGUoInNpcV9pZCIpO2lmKGkpe3ZhciBuLGE9dGhpcy5vbnN1Ym1pdDtyZXR1cm4gdGhpcy5vbnN1Ym1pdD1nLnN1Ym1pdFtpXSx0aGlzLm9uc3VibWl0JiYobj10aGlzLm9uc3VibWl0KGUpKSwhMT09PW4mJihlLnByZXZlbnREZWZhdWx0P2UucHJldmVudERlZmF1bHQoKTplLnJldHVyblZhbHVlPSExKSx0aGlzLm9uc3VibWl0PWEsbn19Y2F0Y2goZSl7JFpOb3RpZnlUcmFja2luZyg1LHtkZXRhaWxzOntpc0Vycm9yOiEwfX0pfX0sZy5hdHRhY2hGb3JtU3VibWl0PWZ1bmN0aW9uKGUpe2lmKGcuaXNFbGVtZW50QXZhaWxhYmxlKGUpKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgaT1lW3RdO2lmKGcuaXNFbGVtZW50QXZhaWxhYmxlKGkpKXt2YXIgbixhPTA7ZG97aWYobj0iYXV0b3BpY2tfIitNYXRoLmZsb29yKDFlNCpNYXRoLnJhbmRvbSgpKSwhZy5zdWJtaXRbbl0pYnJlYWs7YSsrfXdoaWxlKGE8MTApO2kuc2V0QXR0cmlidXRlKCJzaXFfaWQiLG4pLGcuc3VibWl0W25dPWkub25zdWJtaXQsaS5vbnN1Ym1pdD1nLm92ZXJyaWRlZE9uc3VibWl0fX19LGcuaW5jbHVkZUluRm9ybXM9ZnVuY3Rpb24oZSl7ZT1lfHxkb2N1bWVudC5mb3JtcyxnLmlzRWxlbWVudEF2YWlsYWJsZShlKSYmZy5hdHRhY2hGb3JtU3VibWl0KGUpfSxnLmluY2x1ZGVJbkZyYW1lcz1mdW5jdGlvbihlKXtlPWV8fGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpZnJhbWUiKTtpZihnLmlzRWxlbWVudEF2YWlsYWJsZShlKSlmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl0cnl7dmFyIGk9KGVbdF0uY29udGVudERvY3VtZW50fHxlW3RdLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQpLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJmb3JtIik7Zy5pbmNsdWRlSW5Gb3JtcyhpKX1jYXRjaChlKXt9fSxnLmlzQXV0b1BpY2tEaXNhYmxlZD1mdW5jdGlvbigpe3JldHVybiEkWlNJUUF1dG9waWNrLmlzZW5hYmxlZHx8IWcuaXNsb2FkZWRmaXJzdHx8JFpTSVFVVFMuZ2V0KCJhdXRvcGlja2Rpc2FibGVkIil8fDAhPWcuZ2V0T2JqS2V5Q291bnQoZy5zdWJtaXQpfSxnLmlzR3Vlc3RUb2tlbj1mdW5jdGlvbihlLHQpe2lmKCFlfHxlPT10KXJldHVybiEwO3ZhciBpPWUuc3BsaXQoIiAiKTtyZXR1cm4haXNOYU4oZSl8fCJHdWVzdCI9PT1lfHwiVmlzaXRvciI9PT1pWzBdJiZpWzFdJiYhaXNOYU4oaVsxXSl9LHtoYW5kbGVCdXR0b25HbG93OnIsaGFuZGxlQW5pbWF0ZTphLGNsZWFyTG9jYWxWYWx1ZXM6ZnVuY3Rpb24oKXttPXt9fSxoYW5kbGVJbmZvOmZ1bmN0aW9uKGUpe3ZhciB0PSR6b2hvc3Eud2lkZ2V0Y29kZSsienNpcV96Zm9ybXNfdmluZm8iLGk9JFpTSVFMU0RCLmdldEZyb21TZXNzaW9uKHQpOyRaU0lRTFNEQi5yZW1vdmVTZXNzaW9uU3RvcmUodCksaT8kem9ob3NxLnZpc2l0b3IuaGFuZGxlaW5mbyhpKTplJiZwLiR6b2hvc3EmJihlLmZpcnN0bmFtZSYmJHpvaG9zcS5zZXRWYWx1ZShfSVNfUkVWQU1QPyJmaXJzdF9uYW1lIjoiZmlyc3RuYW1lIixlLmZpcnN0bmFtZSksZy5pc0d1ZXN0VG9rZW4oZS5sYXN0bmFtZSxlLnRva2VuKXx8JHpvaG9zcS5zZXRWYWx1ZShfSVNfUkVWQU1QPyJsYXN0X25hbWUiOiJsYXN0bmFtZSIsZS5sYXN0bmFtZSksZS5zYWx1dGF0aW9uJiYkem9ob3NxLnNldFZhbHVlKCJzYWx1dGF0aW9uIixlLnNhbHV0YXRpb24pLGUuZW1haWwmJiR6b2hvc3Euc2V0VmFsdWUoImVtYWlsIixlLmVtYWlsKSxlLnBob25lJiYkem9ob3NxLnNldFZhbHVlKCJwaG9uZSIsZS5waG9uZSkpfSxoYW5kbGU6ZnVuY3Rpb24oZSl7aWYoZSlpZih0aGlzLnJlY2hhdHRyaWdnZXImJihtPXt9KSxlLmJvdFRyaWdnZXJzJiYiYm90VHJpZ2dlcnMiPT1lLm1vZHVsZSl7dmFyIHQ9ZS5ib3RUcmlnZ2Vycztmb3IodmFyIGkgaW4gdCl0Lmhhc093blByb3BlcnR5KGkpJiYid2lkZ2V0X2ludGVyYWN0aW9uIj09dFtpXS5ldmVudCYmKCRaU0lRVVRTQWN0aW9uLndpZGdldF9pbnRlcmFjdGlvbj0hMCl9ZWxzZSBpZihzPXBhcnNlSW50KGUudHlwZSksZS52YWx1ZSl7Yz1KU09OLnBhcnNlKGUudmFsdWUpO3ZhciBuPW1bZS50cmlnZ2VyaWRdO2lmKG4/KGMubXNnbGlzdD1uLm1zZ2xpc3QsZGVsZXRlIG1bZS50cmlnZ2VyaWRdKTptW2UudHJpZ2dlcmlkXT1jLGUudmlzaXRvcmluZm8pe2Zvcih2YXIgYSBpbiBlLnZpc2l0b3JpbmZvKWlmKGUudmlzaXRvcmluZm8uaGFzT3duUHJvcGVydHkoYSkpe3ZhciByPWUudmlzaXRvcmluZm9bYV07aXNOYU4ocil8fChlLnZpc2l0b3JpbmZvW2FdPXBhcnNlSW50KHIpKX11PWUudmlzaXRvcmluZm99aWYobD0iQk9UX01FU1NBR0UiPT1jLm1vZGU/Yy50aW1lP3BhcnNlSW50KGMudGltZSktZS50aW1lOjA6ZChjLnRpbWUpLWUudGltZSwib2JqZWN0Ij09dHlwZW9mICRaU0lRQ2hhdFdpbmRvdylyZXR1cm4gJFpTSVFDaGF0V2luZG93LmhhbmRsZUlmcmFtZUxvYWRpbmcoKSwwPGw/c2V0VGltZW91dChmLGwpOmYoKSxvPWUudHJpZ2dlcmlkLGw7c2V0VGltZW91dChmdW5jdGlvbigpeyRaU0lRVVRTQWN0aW9uLmhhbmRsZShlKX0sMWUzKX19LGdldFVUU0FjdGlvbkRhdGE6ZnVuY3Rpb24oKXt9LGluY2x1ZGVCZWZvcmVTdWJtaXQ6ZnVuY3Rpb24oZSl7aWYoZy5pc25hbWVzZXQ9IWcuaXNHdWVzdFRva2VuKGUubmFtZSxlLnRva2VuKSxnLmlzZW1haWxzZXQ9ZS5pc2VtYWlsc2V0fHwhMSxnLmlzcGhvbmVzZXQ9ZS5pc3Bob25lc2V0fHwhMSxnLmlzY29tcGFueXNldD1lLmlzY29tcGFueXNldHx8ITEsIShnLmlzbmFtZXNldCYmZy5pc2VtYWlsc2V0JiZnLmlzcGhvbmVzZXQmJmcuaXNjb21wYW55c2V0fHxnLmlzQXV0b1BpY2tEaXNhYmxlZCgpKSl0cnl7Zy5pbmNsdWRlSW5Gb3JtcygpLGcuaXNsb2FkZWRmaXJzdD0hMX1jYXRjaChlKXt9fX19KHdpbmRvdyk7dmFyIFJlc3BvbnNlRm9ybWF0dGVyPWZ1bmN0aW9uKCl7dmFyIHo9ZnVuY3Rpb24oZSl7cmV0dXJuLTE9PWUuaW5kZXhPZigiY2hhdCIpJiYtMSE9ZS5pbmRleE9mKCJjYWxsIil9LFQ9ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuW107Zm9yKHZhciBpPVtdLGE9MDthPGUubGVuZ3RoO2ErKyl7dmFyIHM9ZVthXTtpLnB1c2goe0ROQU1FOnMuZGlzcGxheV9uYW1lLE5BTUU6cy5kaXNwbGF5X25hbWUsSUQ6cy5pZCxFTkdBR0VEOnMuZW5nYWdlZCxTVEFUVVM6cy5zdGF0dXN9KX1yZXR1cm4gaX0sYT1mdW5jdGlvbihlLGkpe3ZhciBhLHM9ZS5jZG58fHt9LG49ZS5zdGF0aWNfdXJsc3x8e30sdD1lLmR5bmFtaWNfY29uZmlndXJhdGlvbnN8fHt9LHI9ZS5wb3J0YWxfY29uZmlnfHx7fSxvPWUuaTE4bmtleXN8fHt9LF89by5jaGF0X3dpZGdldCxsPW8uY2hhdF93aW5kb3csYz1lLmludGVncmF0aW9ufHx7fSxkPWUudmlzaXRvcl9pbmZvfHx7fSxtPWUud21zX3JlbGF0ZWRfaW5mb3x8e30sZz1lLnptYXB8fHt9LHA9ZS5jb21wYW55X2luZm98fHt9LHU9ZS5kZXBhcnRtZW50c3x8W10sZj1lLmNhbGxfZGVwYXJ0bWVudHN8fFtdLGI9aS5lbWJlZG9iaixoPWkud2lkZ2V0b2JqLHk9aC5wcml2YWN5Y29uZmlnLHY9RChlLmxhbmd1YWdlKTtyZXR1cm4gci50cmFja2luZ3ByaXZhY3ljb25maWc9eS5ub3RpZnlfY29va2llcy5jb2RlLHIudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50PXkubm90aWZ5X2Nvb2tpZXMuYmFubmVyX2NvbnRlbnQsci5jb29raWVwb2xpY3l1cmw9eS5ub3RpZnlfY29va2llcy5saW5rX3VybCxyLmNoYXRwcml2YWN5Y29uZmlnPXkubm90aWZ5X3Rlcm1zLmNvZGUsci5jaGF0Y29va2llcG9saWN5dXJsPXkubm90aWZ5X3Rlcm1zLnVybCxiLmVpbmZvLmVtYmVkaWQ9ZS5hcHBfaWQsaC5jc3NjZG5zdGF0aWNzZXJ2ZXI9cy5jc3Nfc3RhdGljX3NlcnZlcixpLmNvbW1vbmRhdGEuanNjZG5zdGF0aWNzZXJ2ZXI9cy5qc19zdGF0aWNfc2VydmVyLGkuY29tbW9uZGF0YS5tZWRpYWZpbGVzY2RuaGFzaGVzPXMubWVkaWFfZmlsZV9oYXNoZXMsaS5jb21tb25kYXRhLmlzQ0RORW5hYmxlZD1zLmVuYWJsZWQsaC5lbWJlZG5hbWU9Yi5lbWJlZG5hbWU9ZS51bmlxdWVfbmFtZSxoLnZpc2l0b3JuYW1lPWQubmFtZSxoLnZpc2l0b3JlbWFpbD1kLmVtYWlsLGguY2xvZ29fc3JjPXAubG9nb19zb3VyY2UsYi5waW5mby5jbG9nb19ma2V5PXAuY2xvZ29fZmtleSxiLnBpbmZvLnBpbmZvPXIsYi5laW5mby5lbWJlZHN0YXR1cy5jaW5mbz1iLmNpbmZvPXAsYi5waW5mby5jb21wYW55bmFtZT1lLmNvbXBhbnlfbmFtZSxiLmVpbmZvLmVtYmVkc3RhdHVzLkRFUFRMSVNUPXgodSksYi5laW5mby5lbWJlZHN0YXR1cy5DQUxMX0RFUFRMSVNUPVQoZiksYi5laW5mby5lbWJlZHN0YXR1cy5ERVBBUlRNRU5USUQ9MTx4KGE9dSkubGVuZ3RoPyItMSI6eChhKVswXSYmeChhKVswXS5JRCxiLmVpbmZvLmVtYmVkc3RhdHVzLkNBTExfREVQQVJUTUVOVElEPTE8VChmKS5sZW5ndGg/Ii0xIjpUKGYpWzBdJiZUKGYpWzBdLklELGIucGluZm8uaXNiZXRhcG9ydGFsPXQuaXNiZXRhcG9ydGFsLGIud2lkZ2V0X3BlcmZvcm1hbmNlX29wdGltaXNlZD10LndpZGdldF9wZXJmb3JtYW5jZV9vcHRpbWlzZWQsYi5jb29raWVfb3B0aW1pemF0aW9uPXQuY29va2llX29wdGltaXphdGlvbixiLndoaXRlbGlzdGVkX2F0dGFjaGVtZW50cz10LndoaXRlbGlzdGVkX2F0dGFjaGVtZW50cyxiLmNoYXRfd2l0aG91dF9xdWVzdGlvbmVuYWJsZWQ9dC5oaWRlX3ByZWNoYXRmb3JtX3F1ZXN0aW9uLGIuc3VicmVzb3VyY2VpbnRlZ3JpdHlfZW5hYmxlZD10LnN1YnJlc291cmNlaW50ZWdyaXR5X2VuYWJsZWQsYi5pc0ZpeGVkSGVhZGVyRW5hYmxlZD10LmlzX2NoYXRfd2luZG93X2ZpeGVkLGIuaXNfcmVwbHlDYXJkX2RlbGF5VGltZV9lbmFibGVkPWIuaXNfcmVwbHlDYXJkX2RlbGF5VGltZV9lbmFibGVkLGIuYWxsX3NyaV9oYXNoX3ZhbHVlPWUud21zX3JlbGF0ZWRfaW5mby5hbGxfc3JpX2hhc2hfdmFsdWUsYi5pc19jb29raWVfc2FtZXNpdGVfc3RyaWN0PWUuaXNfY29va2llX3NhbWVzaXRlX3N0cmljdCxiLndtc2xpdGVfanNfc3JpX2hhc2hfdmFsdWU9ZS53bXNfcmVsYXRlZF9pbmZvLndtc2xpdGVfanNfc3JpX2hhc2hfdmFsdWUsYi50cmlnZ2VyX2JvdF9jb21iaW5lPXQuc3VicmVzb3VyY2VpbnRlZ3JpdHlfZW5hYmxlZCxiLmNlbnRyYWxpemVkX2Nvb2tpZV9oYW5kbGVyX2VuYWJsZWQ9dC5jZW50cmFsaXplZF9jb29raWVfaGFuZGxlcl9lbmFibGVkLGIubWlncmF0ZV9lbWJlZF9sc19jYWxscz10Lm1pZ3JhdGVfZW1iZWRfbHNfY2FsbHMsYi50cmFuc2Zlcl93YWl0aW5nX2Jhbm5lcj10LndhaXRpbmdfYmFubmVyX2VuYWJsZWQsYi50cmlnZ2VyT25DaGF0bm93PXQuZGlzcGxheV90cmlnZ2VyX21lc3NhZ2UsYi5yYXRpbmdPdmVycmlkZURpc2FibGVkPXQuZGlzYWxsb3dfcmF0aW5nc19vdmVycmlkZW4sYi5pc193aWRnZXRfZHJhZ19zdXBwb3J0ZWQ9dC5pc193aWRnZXRfZHJhZ19zdXBwb3J0ZWQsYi5qd3RfY29uZmlnX2VuYWJsZWQ9dC5qd3RfZW5hYmxlZCxiLmJvdF9yZW5kZXJpbmdfdXhfcmV2YW1wPXQuYm90X3JlbmRlcmluZ191eF9yZXZhbXAsYi5zY3JvbGxfZW5hYmxlZD10LnNjcm9sbF9lbmFibGVkLGIud21zX2Fub25fcmVnaXN0ZXI9dC53bXNfYW5vbl9yZWdpc3RlcixiLnVzZV9sb25ncG9sbGluZz10LnVzZV9sb25ncG9sbGluZyxiLnVzZV9zYW1lc2l0ZT10LnVzZV9zYW1lc2l0ZSxiLndtc192Mj10Lndtc192MixiLmlzX3pvaG9fbWFwc192M19lbmFibGVkPXQuaXNfem9ob19tYXBzX3YzX2VuYWJsZWQsYi52aXNpdG9yX25hbWVfbmV3Zmxvdz10LnZpc2l0b3JfbmFtZV9uZXdmbG93LGIubWFpbF90cmFuc2NyaXB0X25ld2Zsb3c9dC5tYWlsX3RyYW5zY3JpcHRfbmV3ZmxvdyxiLmNvbXBhbnlfaW5wdXRfZW5oYW5jbWVudD10LmNvbXBhbnlfaW5wdXRfZW5oYW5jbWVudCxiLnJhbmdlX3NsaWRlcl90ZXh0X2lucHV0X3N1cHBvcnRlZD10LnJhbmdlX3NsaWRlcl90ZXh0X2lucHV0X3N1cHBvcnRlZCxiLndtc19kZWJ1Z19sb2dzPXQud21zX2RlYnVnX2xvZ3MsYi5ob21lcGFnZV9jb25maWdzPWUuaG9tZXBhZ2VfY29uZmlncyxiLnNvY2tldF9yZWNvbm5lY3Rpb25fY291bnQ9dC5zb2NrZXRfcmVjb25uZWN0aW9uX2NvdW50LGIuaW5pdF9yZXRyYWNraW5nPXQuaW5pdF9yZXRyYWNraW5nLGguZ2FwaW1hcHVybD1lLmdvb2dsZV9tYXAsYi5saW5mbz1lLmxpY2Vuc2VfaW5mbyxoLmxzaWQ9Yi5laW5mby5sc2lkPWUubHNpZCxpLmNvbW1vbmRhdGEuc2lxc2VydmljZW5hbWU9ZS5zaXFfc2VydmljZV9uYW1lLGkuY29tcG9uZW50cz1lLmNvbXBvbmVudHMsaC5zdGF0dXM9Yi5laW5mby5lbWJlZHN0YXR1cy5TVEFUVVM9Im9ubGluZSI9PWUuc3RhdHVzLGguY2FsbF9zdGF0dXM9Yi5laW5mby5lbWJlZHN0YXR1cy5jYWxsX3N0YXR1cz1lLmNhbGxfc3RhdHVzLGIuZWluZm8udW5pcXVlbmFtZT1lLnVuaXF1ZV9uYW1lLGgud21zanNzdGF0aWNzZXJ2ZXI9aS5jb21tb25kYXRhLndtc2pzc3RhdGljc2VydmVyPW0uanNfc3RhdGljX3NlcnZlcixpLmNvbW1vbmRhdGEud21zcHVibGljZG9tYWluPW0ucHVibGljX2RvbWFpbixiLmxzcHJkY29kZT1tLnByb2R1Y3RfY29kZSxiLndtc2pzc3RhdGljZG9tYWluPW0uanNfc3RhdGljX2RvbWFpbixoLnptYXBzdGF0aWN1cmw9Zy5zdGF0aWNfdXJsLGguem1hcGFwaWNzcz1nLmNzc191cmwsaC56bWFwYXBpdXJsPWcuYXBpX3VybCxoLnptYXBhcGlrZXk9Zy5hcGlfa2V5LGguaGlkZWVtYmVkPUpTT04ucGFyc2UoZS5pc19idXNpbmVzc19ob3Vyc19lbmFibGVkKSxlLmF2dWlkJiYoKGkud2lkZ2V0b2JqfHx7fSkuYXZ1aWQ9ZS5hdnVpZCksZS5nZW9fZGV0YWlscyYmKGkuZ2VvZGV0YWlscz1lLmdlb19kZXRhaWxzKSxlLnVzZXJfZGV0YWlscyYmKGgudXNlcmRldGFpbHM9ZS51c2VyX2RldGFpbHMsYi5laW5mby51c2VyZGV0YWlscz1lLnVzZXJfZGV0YWlscyksaS5jb21tb25kYXRhLmltZ3N0YXRpY3NlcnZlcj1uLmltYWdlX3NlcnZlcixpLmNvbW1vbmRhdGEuZHNzY2xpZW50anM9bi5kc3NjbGllbnRqcyxoLmNzc3N0YXRpY3NlcnZlcj1uLmNzc19zZXJ2ZXIsaS5jb21tb25kYXRhLmNzc2pzbWFwcGluZz1uLmNzc19qc19tYXBwaW5nLG4ud2lkZ2V0X2Nzc192ZXJzaW9uJiYoaC53aWRjc3N2ZXJzaW9uPW4ud2lkZ2V0X2Nzc192ZXJzaW9uKSxiLmVpbmZvLmVtYmVkc3RhdHVzLmZvcm1yZW1vdmFsPXQuZm9ybXJlbW92YWwsYi5wYXJhbXM9e2NvdW50cnk6ZC5jb3VudHJ5LHJlbW90ZV9pcDpkLnJlbW90ZV9pcCxjb3VudHJ5X25hbWU6ZC5jb3VudHJ5LHBhZ2V0aXRsZToiIix0eXBlOiJmbG9hdCJ9LGwmJihiLmpzcmVzb3VyY2U9bCksYi5sYW5nPXYsYi5sYW5ndWFnZT12LGIuaXNSdGxMYW5nPUUodiksaC5yZXNvdXJjZWZpbGU9bi5yZXNvdXJjZV9maWxlLF8mJihoLmkxOG5rZXlzPV8pLGwmJihoLmkxOG5DaGF0d2luZG93S2V5cz1sKSxudWxsIT1lLmxhbmd1YWdlX2NoYW5nZWRfaW5fYXBpJiYoaC5sYW5nY2hhbmdldmlhYXBpPWUubGFuZ3VhZ2VfY2hhbmdlZF9pbl9hcGkpLGIuZWluZm8uZW1iZWRzdGF0dXMuaXNtYWlsY2hpbXBlbmFibGVkPWMubWFpbGNoaW1wLmVuYWJsZWQsYi5pc21haWxjaGltcGVuYWJsZWQ9Yy5tYWlsY2hpbXAuZW5hYmxlZCxiLmlzYXVkaW9jYWxsYWxsb3dlZD1yLmF1ZGlvY2FsbCxiLmlzc2lxc2NyZWVuc2hhcmU9ci5zaXFzY3JlZW5zaGFyaW5nLGIucnRjcF9pbmZvPWUucnRjcF9yZWxhdGVkX2luZm8sYi5yZXNvdXJjZV9kZXB0PWUucmVzb3VyY2UsW3tvYmpTdHJpbmc6aX1dfSxEPWZ1bmN0aW9uKGUpe3JldHVybiJkZWZhdWx0Ij09KGU9JHp2Lmxhbmd1YWdlfHxlKT8kWlNJUVV0aWwuZ2V0QnJvd3Nlckxhbmd1YWdlKCk6ZX0sRT1mdW5jdGlvbihlKXtyZXR1cm4tMSE9WyJhciIsIml3IiwiZmFfSVIiLCJ1ciIsImhlIiwicGEiLCJrcyJdLmluZGV4T2YoZSl9LHg9ZnVuY3Rpb24oZSl7Zm9yKHZhciBpPWUubGVuZ3RoLGE9W10scz0wO3M8aTtzKyspe3ZhciBuPWVbc10sdD1uLmJvdF91c2Vyczt0PXQubGVuZ3RoP3Q6IiIsYS5wdXNoKHtTVEFUVVM6bi5zdGF0dXMsT05MWUJPVFNBVkFJTEFCTEU6bi5pc19vbmx5X2JvdF9hdmFpbGFibGUsSUQ6bi5pZCxFTkdBR0VEOm4uaXNfZW5nYWdlZCxVU0VSUzpuLnVzZXJzLEROQU1FOm4uZG5hbWUsTkFNRTpuLm5hbWUsQk9UVVNFUjp0fSl9cmV0dXJuIGF9LEE9ZnVuY3Rpb24oZSl7dmFyIGk9e30sYT1lLmNhbXBhaWdufHx7fSxzPWUubWFpbGNoaW1wfHx7fTtyZXR1cm4gYS5lbmFibGVkJiYoaVs2XT1hKSxzLmVuYWJsZWQmJihpWzEwXT1zKSxpfSxJPWZ1bmN0aW9uKGUpe3ZhciBpPWUuY29tcG9uZW50c3x8W10sYT1lLmNoYXR8fHt9LHM9ZS5jYWxsfHx7fSxuPWEuYWdlbnRzX2VuZ2FnZWR8fHt9LHQ9YS5yYXRpbmd8fHt9LHI9YS5mZWVkYmFja3x8e30sbz1zLmZlZWRiYWNrfHx7fSxfPWEuY3VzdG9tX2Nzc3x8e30sbD1hLmFnZW50c19vZmZsaW5lfHx7fSxjPWEucmVhY3Rpb258fHt9LGQ9cy5yYXRpbmd8fHt9LG09YS5hZ2VudHNfYnVzeXx8e30sZz0oYS5tZXNzYWdlc3x8e30pLmNoYXRfdHJhbnNmZXJ8fFtdLHA9Z1sxXT9nWzFdLnRleHQ6IiIsdT1lLmZhcXx8e30sZj11LmNhdGVnb3JpemV8fHt9LGI9Xy51cmx8fCIiLGg9JFpTSVFVdGlsLmdldFVybFBhcmFtT2JqKGIpLHk9dm9pZCAwPT09dS5zaG93X2NyZWF0b3JfaW1hZ2V8fHUuc2hvd19jcmVhdG9yX2ltYWdlLHY9e2FsbG93X3Zpc2l0b3JfdG9fbGlrZV9hcnRpY2xlOnUuYWxsb3dfdmlzaXRvcl90b19saWtlX2FydGljbGV8fHtlbmFibGVkOiEwfSxzaG93X2NyZWF0b3JfaW1hZ2U6eX07aD1oJiZoLmNzc19pZHx8IiIsYj0oYj1iLnNwbGl0KCIvIilbNV18fCIiKS5zcGxpdCgiPyIpWzBdfHwiIjt2YXIgdyxrPXdpbmRvdy5fSVNfUkVWQU1QO3JldHVybntpY21haWw6SlNPTi5zdHJpbmdpZnkoW2UubWFpbF90cmFuc2NyaXB0PzE6MCx7fV0pLGlzYXVkaW9jYWxsOkpTT04uc3RyaW5naWZ5KFstMT09aS5pbmRleE9mKCJjYWxsIik/MDoxLHtpc21hbmRhdG9yeTowfV0pLGNvbG9yOkpTT04uc3RyaW5naWZ5KFsxLHtjb2RlOmUuY2hhdC5jb2xvcn1dKSxpc3NjcmVlbnNoYXJlOkpTT04uc3RyaW5naWZ5KFtlLnNoYXJlX3NjcmVlbj8xOjAse31dKSxlbmdhZ2VkbXNnOkpTT04uc3RyaW5naWZ5KFswLHttc2c6bi5tZXNzYWdlLHJlc21zZzpuLnJlc3BvbnNlfV0pLHJhdGluZzpKU09OLnN0cmluZ2lmeShbdC5lbmFibGVkPzE6MCx7bXNnMTp0Lm1zZ18xLG1zZzI6dC5tc2dfMixtc2czOnQubXNnXzMsbXNnNDp0Lm1zZ180LG1zZzU6dC5tc2dfNX1dKSxzZWFzb25hbHRoZW1lOmUuc2Vhc29uYWxfdGhlbWUsc2hvd3NtaWxleTpKU09OLnN0cmluZ2lmeShbZS5zaG93X2Vtb2ppcz8xOjAse31dKSxzaXFfY2hhbm5lbHNfc2NyZWVuX3NoYXJlX2VuYWJsZWQ6LTEhPWkuaW5kZXhPZigic2NyZWVuX3NoYXJlIiksZmVlZGJhY2s6SlNPTi5zdHJpbmdpZnkoW3IuZW5hYmxlZD8xOjAse21zZzpyLm1lc3NhZ2V9XSksY2FsbF9mZWVkYmFjazpKU09OLnN0cmluZ2lmeShbby5lbmFibGVkPzE6MCx7bXNnOm8ubWVzc2FnZX1dKSxpc2N1c3RvbWNzczpKU09OLnN0cmluZ2lmeShbXy5lbmFibGVkPzE6MCx7Zm5hbWU6az9fLm5ld19mbG9hdF9maWxlX25hbWU6Xy5maWxlX25hbWUsZnBhdGg6az9fLm5ld19mbG9hdF91cmw6ImVtYmVkY3NzLyIraCsiXyIrYixwZm5hbWU6IiJ9XSksaXNuYW1lOkpTT04uc3RyaW5naWZ5KFsxLHtpc21hbmRhdG9yeToxfV0pLGlzcGhvbmVubzpKU09OLnN0cmluZ2lmeShbMSx7aXNtYW5kYXRvcnk6MX1dKSxpc2VtYWlsOkpTT04uc3RyaW5naWZ5KFsxLHtpc21hbmRhdG9yeToxfV0pLGlzc2lxc2NyZWVuc2hhcmU6SlNPTi5zdHJpbmdpZnkoW2Euc2lxX3NoYXJlX3NjcmVlbj8xOjAse31dKSxpY3NvdW5kOkpTT04uc3RyaW5naWZ5KFthLm11dGVfc291bmQ/MTowLHt9XSksaWNsb2dvOkpTT04uc3RyaW5naWZ5KFthLnNob3dfY29tcGFueV9sb2dvPzE6MCx7fV0pLGljZmlsZTpKU09OLnN0cmluZ2lmeShbZS5zaGFyZV9maWxlPzE6MCx7fV0pLGxhbmc6SlNPTi5zdHJpbmdpZnkoWzEse2NvZGU6ImRlZmF1bHQiPT1lLmxhbmd1YWdlPyItMSI6ZS5sYW5ndWFnZX1dKSxpc2NvbnZlcnNhdGlvbjpKU09OLnN0cmluZ2lmeShbZS52aWV3X2NvbnZlcnNhdGlvbj8xOjAse31dKSx0aGFua3Ntc2c6SlNPTi5zdHJpbmdpZnkoWzAse21zZzphLnRoYW5raW5nX21lc3NhZ2V9XSksb2ZmbGluZW1zZzpKU09OLnN0cmluZ2lmeShbMCx7bXNnOmwubWVzc2FnZSxyZXNtc2c6bC5yZXNwb25zZX1dKSxpY3Bob3RvOkpTT04uc3RyaW5naWZ5KFthLnNob3dfb3BlcmF0b3JfaW1hZ2U/MTowLHt9XSkscmVhY3Rpb246SlNPTi5zdHJpbmdpZnkoW2MuZW5hYmxlZD8xOjAse2hhcHB5OmMuaGFwcHksbmV1dHJhbDpjLm5ldXRyYWwsc2FkOmMuc2FkfV0pLGNhbGxfcmVhY3Rpb246SlNPTi5zdHJpbmdpZnkoW2QuZW5hYmxlZD8xOjAse2hhcHB5OmQuaGFwcHksbmV1dHJhbDpkLm5ldXRyYWwsc2FkOmQuc2FkfV0pLGZhcWFjY2VzczpKU09OLnN0cmluZ2lmeShbLTE9PWkuaW5kZXhPZigiZmFxIik/MDoxLHtvcmRlcmJ5Y2F0ZWdvcnk6Zi5lbmFibGVkPzE6MCxsYWJlbDp1LnRpdGxlfV0pLGljcHJpbnQ6SlNPTi5zdHJpbmdpZnkoW2EucHJpbnQ/MTowLHt9XSksc2l6ZTpKU09OLnN0cmluZ2lmeShbMSx7dmFsOiJtZWRpdW0iPT1hLnNpemU/IjIiOiIzIn1dKSxmb3JtdHlwZTpKU09OLnN0cmluZ2lmeShbMSx7dmFsOih3PWUuZm9ybV90eXBlLHtjbGFzc2ljOiIxIixnZW5lcmFsOiIyIixjb252ZXJzYXRpb246IjMifVt3XSl9XSksYnVzeW1zZzpKU09OLnN0cmluZ2lmeShbMCx7bXNnOm0ubWVzc2FnZSxyZXNtc2c6bS5yZXNwb25zZX1dKSx0cmFuc2Zlcm1zZzpKU09OLnN0cmluZ2lmeShbMCx7bXNnOnAscmVzbXNnOiIifV0pLHdhaXRpbmdtc2c6SlNPTi5zdHJpbmdpZnkoWzAse21zZzphLndhaXRpbmdfbWVzc2FnZX1dKSxjYWxsX21lc3NhZ2VzOnMubWVzc2FnZXMsY2FsbF93YWl0aW5nX3RpbWU6cy53YWl0aW5nX3RpbWUsY2FsbF9yZWNvcmRpbmc6ZS5jYWxsX3JlY29yZGluZyx2b2ljZV9ub3Rlc19lbmFibGVkOmUudm9pY2Vfbm90ZXNfZW5hYmxlZCxjcmVkaXRfY2FyZF9tYXNraW5nOmUuY3JlZGl0X2NhcmRfbWFza2luZyxyZXNvdXJjZWJhc2Vjb25maWdzOnYsYWxsb3dfbXVsdGlwbGVfbGl2ZV9jaGF0OmUuYWxsb3dfbXVsdGlwbGVfbGl2ZV9jaGF0LGFnZW50bmFtZTonWzAseyJtc2ciOiIiLCJuYW1lIjoiIn1dJyxxdWVzdGlvbjonWzAseyJtc2ciOiIiLCJuYW1lIjoiIn1dJyxkZXB0bXNnOidbMCx7Im1zZyI6IiIsInJlc21zZyI6IiJ9XSd9fSxMPWZ1bmN0aW9uKGUpe3ZhciBpPWUub25saW5lX2NvbnRlbnR8fHt9LGE9ZS5vZmZsaW5lX2NvbnRlbnR8fHt9O3JldHVybiBKU09OLnN0cmluZ2lmeShbMSx7b2ZmbGluZTphLmhlYWRlcixvZmZsaW5lX2J5bGluZTphLnN1Yl9oZWFkZXIsb25saW5lOmkuaGVhZGVyLG9ubGluZV9ieWxpbmU6aS5zdWJfaGVhZGVyfV0pfSxDPWZ1bmN0aW9uKGUpe3ZhciBpPVtdLHM9ZS5sc2lkLGE9ZS53aWRnZXR8fHt9LG49ZS53aWRnZXRfdHlwZSx0PWFbbl0scj17ZmxvYXQ6WyJjb2luIiwiIiwidW5pY29ybiIsImRyZWFtIiwidHdpbmtsZSIsImRvbGxlciIsInRvcGF6IiwibGluayIsInNhc3N5Iiwibm9lbCIsImJhZ2VsIl0sYnV0dG9uOlsiY29yZCIsImJsdWVpdnkiLCJ6ZW4iLCJhdG9tIiwiY29mZmVlIiwicGFyYWRpc2UiLCJtZW1lIiwibGVvIiwicnVieSIsImNvb2tpZSIsImZhbmN5IiwiY2VudCIsInBvcHB5IiwiYXBvbGxvIl0scGVyc29uYWxpemVkOlsicGhvZW5peCIsInNub3ciLCJmYW1lIl19W25dfHxbXSxvPXQuY3VzdG9tX3N0aWNrZXJ8fHt9O2kucHVzaChvLmVuYWJsZWQ/MDoxKTt2YXIgXz1vLm9ubGluZXx8e30sbD0kWlNJUVV0aWwuZ2V0VXJsUGFyYW1PYmooXy51cmwpLGM9by5vZmZsaW5lfHx7fSxkPSRaU0lRVXRpbC5nZXRVcmxQYXJhbU9iaihjLnVybCksbT1yLmluZGV4T2YodC5zdGlja2VyKSsxLGc9e2Zsb2F0OiJmc3RpY2tlciIsYnV0dG9uOiJic3RpY2tlciJ9W25dO2lmKCFvLmVuYWJsZWQpcmV0dXJuIEpTT04uc3RyaW5naWZ5KFsxLHtvZmZsaW5lOnt9LGRlZmF1bHQ6bSxvbmxpbmU6e319XSk7dmFyIHA9e29ubGluZToiIixvZmZsaW5lOiIiLGRlZmF1bHQ6bX07ZnVuY3Rpb24gdShlLGksYSl7cmV0dXJue2ZuYW1lOiIiLGZwYXRoOmcrIl8iK2krIi8iK2Uuc3RpY2tlcmlkKyJfIitzLHBmbmFtZTphfX1yZXR1cm4gbCYmKHAub25saW5lPXUobCwib25saW5lIixfLmZpbGVfbmFtZSkpLGQmJihwLm9mZmxpbmU9dShkLCJvZmZsaW5lIixjLmZpbGVfbmFtZSkpLGkucHVzaChwKSxKU09OLnN0cmluZ2lmeShpKX07cmV0dXJue2Zvcm1hdEFuZEdldEVtYmVkRGV0aWxzOmZ1bmN0aW9uKGUsaSl7cmV0dXJuIGUudmVyc2lvbl9jaGFuZ2VkP2Z1bmN0aW9uKGUsaSl7dmFyIGE9ZS5jb21wb25lbnRzfHxbXSxzPWUuc3RhdGljX3VybHN8fHt9LG49ZS5jZG58fHt9LHQ9ZS56bWFwfHx7fSxyPWUud21zX3JlbGF0ZWRfaW5mb3x8e30sbz1lLnVwbG9hZF9kb3dubG9hZF9zZXJ2ZXJ8fHt9LF89ZS5tZWRpYXx8e30sbD1lLnBvcnRhbF9jb25maWd8fHt9O2wudHJhY2tpbmdwcml2YWN5Y29uZmlnPWUubm90aWZ5X2Nvb2tpZXMuY29kZSxsLnRyYWNraW5ncHJpdmFjeXN0YXRlbWVudD1lLm5vdGlmeV9jb29raWVzLmJhbm5lcl9jb250ZW50LGwuY29va2llcG9saWN5dXJsPWUubm90aWZ5X2Nvb2tpZXMubGlua191cmwsbC5jaGF0cHJpdmFjeWNvbmZpZz1lLm5vdGlmeV90ZXJtcy5jb2RlLGwuY2hhdGNvb2tpZXBvbGljeXVybD1lLm5vdGlmeV90ZXJtcy51cmw7dmFyIGM9ZS52aXNpdG9yX2luZm98fHt9LGQ9ZS50aW1lem9uZV9vZmZzZXR8fHt9LG09ZS53aWRnZXR8fHt9LGc9ZS5pbnRlZ3JhdGlvbnx8e30scD1lLmNvbXBhbnlfaW5mb3x8e30sdT1lLmNoYXR8fHt9LGY9bVtlLndpZGdldF90eXBlXXx8e30sYj1mLmdyYXZhdGFyfHx7fSxoPWUuZHluYW1pY19jb25maWd1cmF0aW9uc3x8e30seT1lLmRlcGFydG1lbnRzfHxbXSx2PSRaU0lRQ2hhdC5nZXRTY3JpcHRTb3VyY2UoKS5zcGxpdCgiOi8vIiksdz12WzBdLGs9ZS5pMThua2V5c3x8e30sUz1rLmNoYXRfd2lkZ2V0fHx7fSxPPWsuY2hhdF93aW5kb3d8fHt9LE49dlsxXS5zcGxpdCgiLyIpWzBdfHwiIjtOPU4uc3Vic3RyKE4uaW5kZXhPZigiLiIpKzEpO3ZhciBqPXMuY3NzX3NlcnZlcnx8IiI7aj0oaj1qLnNwbGl0KCI6Ly8iKVsxXXx8IiIpLnNwbGl0KCIvIilbMF07dmFyIEo9RChlLmxhbmd1YWdlKSxxPVQoZS5jYWxsX2RlcGFydG1lbnRzKTtyZXR1cm5be29ialN0cmluZzp7d2lkZ2V0dHlwZTp7ZmxvYXQ6MSxidXR0b246MixwZXJzb25hbGl6ZWQ6M31bZS53aWRnZXRfdHlwZV0sd2lkZ2V0b2JqOntjc3NzdGF0aWNmaWxlOnMuY3NzX2ZpbGUsY29sb3I6SlNPTi5zdHJpbmdpZnkoWzEse2NvZGU6Zi5jb2xvcn1dKSxpc2xpdmVjaGF0Oi0xPT1hLmluZGV4T2YoImNoYXQiKSYmLTE9PWEuaW5kZXhPZigiY2FsbCIpfHwxIT1lLmVuYWJsZWQ/MDoxLHV0c3NlcnZlcjplLnV0c19zZXJ2ZXIsanNzdGF0aWNmaWxlOnMuanNfZmlsZSxicmFuZG5hbWU6IlpvaG8iLHRpdGxlOkwoZSksY3NzY2Ruc3RhdGljc2VydmVyOm4uY3NzX3N0YXRpY19zZXJ2ZXIsbHNpZDplLmxzaWQsYW5hbHl0aWNzOmcuYW5hbHl0aWNzLHJlc291cmNlZmlsZTpzLnJlc291cmNlX2ZpbGUsZ3JhdmF0YXI6SlNPTi5zdHJpbmdpZnkoW2IuZW5hYmxlZD8xOjAse2ZuYW1lOmIuZmlsZV9uYW1lLGZwYXRoOmIuZnBhdGgsbm86Yi5ubyxwZm5hbWU6Yi5wZm5hbWV9XSksem1hcHN0YXRpY3VybDp0LnN0YXRpY191cmwsbWRldmljZV9oaWRlOkpTT04uc3RyaW5naWZ5KFtmLmhpZGVfaW5fbW9iaWxlX2RldmljZT8xOjBdKSxpc0RyYWdnYWJsZTpmLmRyYWdnYWJsZSx6bWFwYXBpY3NzOnQuY3NzX3VybCx3aWRjc3N2ZXJzaW9uOnMud2lkZ2V0X2Nzc192ZXJzaW9uLHNjcmVlbm5hbWU6bC5uYW1lLGlzZ2RwcmVuYWJsZWQ6ZS5wcml2YWN5PzE6MCxhdXRvcGljazp7aXNlbmFibGVkOmUuZm9ybV9maWVsZHNfYXV0b19waWNrX2VuYWJsZWR9LHZpc2l0b3JuYW1lOmMubmFtZSx2aXNpdG9yZW1haWw6Yy5lbWFpbCxnYXBpbWFwdXJsOmUuZ29vZ2xlX21hcCxwcml2YWN5Y29uZmlnOnt0cmFja2RudDplLnRyYWNrX2RudF93ZWJzaXRlcyxub3RpZnlndDplLm5vdGlmeV9nb29nbGV0cmFuc2xhdG9yX3VzYWdlLG5vdGlmeV9jb29raWVzOmUubm90aWZ5X2Nvb2tpZXMsaXNnZHByZW5hYmxlZDoxPT1lLnByaXZhY3ksbm90aWZ5X3Rlcm1zOmUubm90aWZ5X3Rlcm1zLG1hc2tpcDplLm1hc2tfdmlzaXRvcl9pcH0saGlkZWVtYmVkOkpTT04ucGFyc2UoZS5pc19idXNpbmVzc19ob3Vyc19lbmFibGVkKSxjbG9nb19zcmM6cC5sb2dvX3NvdXJjZSx6bWFwYXBpdXJsOnQuYXBpX3VybCxmb3JjZWh0dHBzOmUuZm9yY2VodHRwcyxzdGlja2VyOkMoZSksd21zanNzdGF0aWNzZXJ2ZXI6ci5qc19zdGF0aWNfc2VydmVyLGNsb2dvOkpTT04uc3RyaW5naWZ5KFtmLnNob3dfY29tcGFueV9sb2dvPzE6MCx7fV0pLGxhbmdjaGFuZ2V2aWFhcGk6ZS5sYW5ndWFnZV9jaGFuZ2VkX2luX2FwaSxoaWRlb2ZmbGluZTpKU09OLnN0cmluZ2lmeShbZS5oaWRlX3doZW5fb2ZmbGluZT8xOjBdKSxoaWRlX3Rvb2x0aXA6Zi5oaWRlX3Rvb2x0aXAsaTE4bmtleXM6UyxpMThuQ2hhdHdpbmRvd0tleXM6TyxfemxkcDplLl96bGRwLGFwcGxvZ286IiIsaXNzaG93Y2FsbGJ1YmJsZTowLGVtYmVkbmFtZTplLnVuaXF1ZV9uYW1lLGF2dWlkOmUuYXZ1aWQsY3Nzc3RhdGljc2VydmVyOnMuY3NzX3NlcnZlcixpc3RyYWNraW5nOi0xIT1hLmluZGV4T2YoInByb2FjdGl2ZSIpLHptYXBhcGlrZXk6dC5hcGlfa2V5LHBvc2l0aW9uOkpTT04uc3RyaW5naWZ5KFsxLHtubzp7Ym90dG9tX3JpZ2h0OiIxIixib3R0b21fbWlkZGxlOiIyIixib3R0b21fbGVmdDoiMyIsbGVmdF9ib3R0b206IjQiLGxlZnRfbWlkZGxlOiI1IixsZWZ0X3RvcDoiNiIsdG9wX2xlZnQ6IjciLHRvcF9taWRkbGU6IjgiLHRvcF9yaWdodDoiOSIscmlnaHRfdG9wOiIxMCIscmlnaHRfbWlkZGxlOiIxMSIscmlnaHRfYm90dG9tOiIxMiJ9W2YucG9zaXRpb25dfV0pLHN0YXR1czoib25saW5lIj09ZS5zdGF0dXMsY2FsbF9zdGF0dXM6ZS5jYWxsX3N0YXR1cyxmb250OkpTT04uc3RyaW5naWZ5KFsxLHtkZWZhdWx0OnsiRGVmYXVsdCBTeXN0ZW0gRm9udCI6IjAiLExhdG86IjEiLE9wZW5zYW5zOiIyIixPeHlnZW46IjMiLFJvYm90bzoiNCIsUHV2aToiNSJ9W2UuZm9udF19XSksdXNlcmRldGFpbHM6ZS51c2VyX2RldGFpbHMsdXNlcmNvdW50OkpTT04uc3RyaW5naWZ5KFswLHtjb3VudDpmLnVzZXJfY291bnR9XSl9LHVzZWRvd25sb2Fkc2VydmVyOm8uZW5hYmxlZCxjb21tb25kYXRhOntzY2hlbWE6dyxzaXFzZXJ2aWNlbmFtZTplLnNpcV9zZXJ2aWNlX25hbWUsanNjZG5zdGF0aWNzZXJ2ZXI6bi5qc19zdGF0aWNfc2VydmVyLGpzc3RhdGljc2VydmVyOnMuanNfc2VydmVyLGNzc3N0YXRpYzpqLHdtc2pzc3RhdGljc2VydmVyOnIuanNfc3RhdGljX3NlcnZlcix1cGxvYWRzZXJ2ZXI6by51cGxvYWRfc2VydmVyLHdtc3B1YmxpY2RvbWFpbjpyLnB1YmxpY19kb21haW4sY3NzanNtYXBwaW5nOnMuY3NzX2pzX21hcHBpbmcsaXNkZXY6ITEsaW1nc3RhdGljc2VydmVyOnMuaW1hZ2Vfc2VydmVyLGRzc2NsaWVudGpzOnMuZHNzY2xpZW50anMsaXNDRE5FbmFibGVkOm4uZW5hYmxlZCxkb3dubG9hZHNlcnZlcjpvLmRvd25sb2FkX3NlcnZlcix1ZEV2ZW50QmFzZWRVUkw6by5ldmVudF9iYXNlZF91cmwsVURTZXJ2ZXJSZXZhbXA6by51ZF9yZXZhbXAsc2lxVURTZXJ2aWNlTmFtZTpvLnNpcV91ZF9zZXJ2aWNlbmFtZSxtZWRpYWZpbGVzY2RuaGFzaGVzOm4ubWVkaWFfZmlsZV9oYXNoZXMsY29tbW9uc3RhdGljdXJsOm4uZW5hYmxlZD9uLmNvbW1vbl9zdGF0aWNfdXJsOnMuY29tbW9uX3N0YXRpY191cmx9LGdlb2RldGFpbHM6ZS5nZW9fZGV0YWlscyxlbWJlZG9iajp7c2NoZW1hOncscGluZm86e3NvaWQ6bC5pZCxjbG9nb19ma2V5OnAuY2xvZ29fZmtleSxwaW5mbzpsLGNvbXBhbnluYW1lOmUuY29tcGFueV9uYW1lLGludGVnaWQ6Zy5lbmFibGVkX2ludGVncmF0aW9ucyxzY3JlZW5uYW1lOmwubmFtZSxpc2JldGFwb3J0YWw6aC5pc2JldGFwb3J0YWwsYXBwX25ld2NvbmZpZ19lbmFibGVkOmguYXBwX25ld2NvbmZpZ19lbmFibGVkLG9ubHlfY2FsbF9lbmFibGVkOmgub25seV9jYWxsX2VuYWJsZWQsY2FsbF9tb25pdG9yX2VuYWJsZWQ6aC5jYWxsX21vbml0b3JfZW5hYmxlZCxjYWxsX3RyYW5zZmVyX2VuYWJsZWQ6aC5jYWxsX3RyYW5zZmVyX2VuYWJsZWQscnRjcF9lbmFibGVkOmgucnRjcF9lbmFibGVkLGhpZGVfZmxvYXRfdG9vbHRpcDpoLmVtYmVkX21vYmlsZV92aWV3LGNvb2tpZVByZWZlcmVuY2U6ZS5jb29raWVfcHJlZmVyZW5jZSxjb29raWVTZWdyZWdhdGlvbjpoLmNvb2tpZV9zZWdyZWdhdGlvbn0sanF1ZXJ5X3ZlcnNpb25fdXBkYXRlZDpoLmpxdWVyeV92ZXJzaW9uX3VwZGF0ZWQsY29va2llX29wdGltaXphdGlvbjpoLmNvb2tpZV9vcHRpbWl6YXRpb24sd2lkZ2V0X3BlcmZvcm1hbmNlX29wdGltaXNlZDpoLndpZGdldF9wZXJmb3JtYW5jZV9vcHRpbWlzZWQsd2hpdGVsaXN0ZWRfYXR0YWNoZW1lbnRzOmgud2hpdGVsaXN0ZWRfYXR0YWNoZW1lbnRzLGNoYXRfd2l0aG91dF9xdWVzdGlvbmVuYWJsZWQ6aC5oaWRlX3ByZWNoYXRmb3JtX3F1ZXN0aW9uLHN1YnJlc291cmNlaW50ZWdyaXR5X2VuYWJsZWQ6aC5zdWJyZXNvdXJjZWludGVncml0eV9lbmFibGVkLGNlbnRyYWxpemVkX2Nvb2tpZV9oYW5kbGVyX2VuYWJsZWQ6aC5jZW50cmFsaXplZF9jb29raWVfaGFuZGxlcl9lbmFibGVkLG1pZ3JhdGVfZW1iZWRfbHNfY2FsbHM6aC5taWdyYXRlX2VtYmVkX2xzX2NhbGxzLGlzRml4ZWRIZWFkZXJFbmFibGVkOmguaXNfY2hhdF93aW5kb3dfZml4ZWQsd21zbGl0ZV9qc19zcmlfaGFzaF92YWx1ZTplLndtc19yZWxhdGVkX2luZm8ud21zbGl0ZV9qc19zcmlfaGFzaF92YWx1ZSxhbGxfc3JpX2hhc2hfdmFsdWU6ZS53bXNfcmVsYXRlZF9pbmZvLmFsbF9zcmlfaGFzaF92YWx1ZSxpc19jb29raWVfc2FtZXNpdGVfc3RyaWN0OmUuaXNfY29va2llX3NhbWVzaXRlX3N0cmljdCx0cmlnZ2VyT25DaGF0bm93OmguZGlzcGxheV90cmlnZ2VyX21lc3NhZ2UsdHJpZ2dlcl9ib3RfY29tYmluZTpoLmludGVsbGlnZW50X3RyaWdnZXJfZW5hYmxlZCx0cmFuc2Zlcl93YWl0aW5nX2Jhbm5lcjpoLndhaXRpbmdfYmFubmVyX2VuYWJsZWQscmF0aW5nT3ZlcnJpZGVEaXNhYmxlZDpoLmRpc2FsbG93X3JhdGluZ3Nfb3ZlcnJpZGVuLGFjY2Vzc2liaWxpdHlfZW5hYmxlZDpoLmFjY2Vzc2liaWxpdHlfZW5hYmxlZCxpc193aWRnZXRfZHJhZ19zdXBwb3J0ZWQ6aC5pc193aWRnZXRfZHJhZ19zdXBwb3J0ZWQsc2Nyb2xsX2VuYWJsZWQ6aC5zY3JvbGxfZW5hYmxlZCxqd3RfY29uZmlnX2VuYWJsZWQ6aC5qd3RfZW5hYmxlZCxib3RfcmVuZGVyaW5nX3V4X3JldmFtcDpoLmJvdF9yZW5kZXJpbmdfdXhfcmV2YW1wLHdtc19hbm9uX3JlZ2lzdGVyOmgud21zX2Fub25fcmVnaXN0ZXIsdXNlX2xvbmdwb2xsaW5nOmgudXNlX2xvbmdwb2xsaW5nLHVzZV9zYW1lc2l0ZTpoLnVzZV9zYW1lc2l0ZSx3bXNfdjI6aC53bXNfdjIsaXNfem9ob19tYXBzX3YzX2VuYWJsZWQ6aC5pc196b2hvX21hcHNfdjNfZW5hYmxlZCx2aXNpdG9yX25hbWVfbmV3ZmxvdzpoLnZpc2l0b3JfbmFtZV9uZXdmbG93LG1haWxfdHJhbnNjcmlwdF9uZXdmbG93OmgubWFpbF90cmFuc2NyaXB0X25ld2Zsb3csY29tcGFueV9pbnB1dF9lbmhhbmNtZW50OmguY29tcGFueV9pbnB1dF9lbmhhbmNtZW50LHJhbmdlX3NsaWRlcl90ZXh0X2lucHV0X3N1cHBvcnRlZDpoLnJhbmdlX3NsaWRlcl90ZXh0X2lucHV0X3N1cHBvcnRlZCx3bXNfZGVidWdfbG9nczpoLndtc19kZWJ1Z19sb2dzLG1lZGlhc2VydmVydXJsOl8uc2VydmVyLGp3dF9hdXRoZW50aWNhdGlvbjplLmp3dF9hdXRoZW50aWNhdGlvbixyYXRpbmdmZWVkYmFja3RpdGxlczp1LmxhYmVsc3x8e30sbWVzc2FnZWFjdGlvbnM6ZS5tZXNzYWdlX2FjdGlvbnMsdmlzaXRvcl9xdWVzdGlvbjplLnZpc2l0b3JfcXVlc3Rpb24sY29uc2VudF9iYW5uZXJfY29udGVudDplLmNvbnNlbnRfYmFubmVyX2NvbnRlbnQsbGFuZ3VhZ2U6SixSVExfc3VwcG9ydGVkX2xhbmd1YWdlOmUuUlRMX3N1cHBvcnRlZF9sYW5ndWFnZSxpc1J0bExhbmc6RShKKSxpc19yZXBseUNhcmRfZGVsYXlUaW1lX2VuYWJsZWQ6aC5pc19yZXBseUNhcmRfZGVsYXlUaW1lX2VuYWJsZWQscnRjcF9pbmZvOmUucnRjcF9yZWxhdGVkX2luZm8sZ3RhdHRyaWJ1dGlvbmxpbms6ZS5nb29nbGVfdHJhbnNsYXRlX2F0dHJpYnV0aW9uX3VybCxhbm5vbnJlZ2lzdGVydGltZW91dDplLmFubm9uX3JlZ2lzdGVyX3RpbWVvdXQsbHNwcmRjb2RlOnIucHJvZHVjdF9jb2RlLGpzcmVzb3VyY2U6TyxyZWFkX3JlY2VpcHQ6ZS5yZWFkX3JlY2VpcHQsd2hpdGVfbGFiZWxsZWQ6ZS53aGl0ZV9sYWJlbGxlZCxzb2NrZXRfcmVjb25uZWN0aW9uX2NvdW50Omguc29ja2V0X3JlY29ubmVjdGlvbl9jb3VudCxpbml0X3JldHJhY2tpbmc6aC5pbml0X3JldHJhY2tpbmcsZWluZm86e2xzaWQ6ZS5sc2lkLHNpZ25hdHVyZWNoYXQ6ITAsdW5pcXVlbmFtZTplLnVuaXF1ZV9uYW1lLGJyYW5kbmFtZTplLmFwcG5hbWUsd2FpdGluZ3RpbWU6ZS53YWl0aW5nX3RpbWUscmVvcGVuX2VuYWJsZWQ6ZS5hbGxvd19jaGF0X3Jlb3BlbixlbWJlZGlkOmUuYXBwX2lkLGVtYmVkc3RhdHVzOntTVEFUVVM6Im9ubGluZSI9PWUuc3RhdHVzLGNhbGxfc3RhdHVzOmUuY2FsbF9zdGF0dXMsaXNzaXFzY3JlZW5zaGFyZTpKU09OLnN0cmluZ2lmeSh1LnNpcV9zaGFyZV9zY3JlZW4pLERFUEFSVE1FTlRJRDoxPHgoeSkubGVuZ3RoPyItMSI6eCh5KVswXSYmeCh5KVswXS5JRCxDQUxMX0RFUEFSVE1FTlRJRDoxPHEubGVuZ3RoPyItMSI6cVswXSYmcVswXS5JRCxjaW5mbzpwLGlzYXVkaW9jYWxsYWxsb3dlZDpsLmF1ZGlvY2FsbCxpc3NpcXNjcmVlbnNoYXJlOmwuc2lxc2NyZWVuc2hhcmluZyxERVBUTElTVDp4KHkpLENBTExfREVQVExJU1Q6cSxpc21haWxjaGltcGVuYWJsZWQ6Zy5tYWlsY2hpbXAuZW5hYmxlZCxsb25nbGFzdGluZ2Nvb2tpZXR0bDpsLmxvbmdsYXN0aW5nY29va2lldHRsLGZvcm1yZW1vdmFsOmguZm9ybXJlbW92YWwsY2FsbF9yZWNvcmRpbmc6ZS5yZWNvcmRpbmd9LHByb3BzOkkoZSl9LHJlc291cmNlX2RlcHQ6ZS5yZXNvdXJjZSxyZXNvdXJjZXNfY29uZmlnOmUucmVzb3VyY2VzLHVhcGFjaGU6ZS51c2VfYXBhY2hlLGNmY25hbWU6ZS5jc3JmX2Nvb2tpZSxwcm9kdWN0bmFtZTplLnByb2R1Y3RfbmFtZSx0aGVtZTp7cmliYm9uOiIxIixjcmVzdDoiMiIsY3JheW9uOiIzIixsbG95ZDoiNCIsYWlyeToiNSIsY3Jvd246IjYiLGNvbm5lY3Q6IjciLHBhdHRlcm46IjgiLHBhdHRlcm5fc3RyYWlnaHQ6IjkiLHBhdHRlcm5fY3VydmU6IjEwIn1bdS50aGVtZV0sdWNvbXA6ZS51c2VfY29tcHJlc3Npb24sbGFuZzpEKGUubGFuZ3VhZ2UpLHNjcmVlbm5hbWU6bC5uYW1lLHByb2R1Y3R1cmw6ZS5wcm9kdWN0X3VybCxzaXFoZWxwbGluazplLnNpcV9oZWxwX2xpbmssZW1iZWRzZXJ2ZXJ1cmw6ZS5wdWJsaWNfZG9tYWluLGNmcGFyYW1uYW1lOmUuY3NyZl9wYXJhbSxzdHVuX3R1cm51cmxzOmUuc3R1bl90dXJuX3VybCxpcDpjLmlwLHdtc2pzc3RhdGljZG9tYWluOnIuanNfc3RhdGljX2RvbWFpbixpc21haWxjaGltcGVuYWJsZWQ6Zy5tYWlsY2hpbXAuZW5hYmxlZCxsc3N1YmRvbWFpbjpOLHBhcmFtczp7Y291bnRyeTpjLmNvdW50cnkscmVtb3RlX2lwOmMucmVtb3RlX2lwLGNvdW50cnlfbmFtZTpjLmNvdW50cnkscGFnZXRpdGxlOiIiLHR5cGU6ImZsb2F0In0sZnJlZWxvZ29saW5rOmUuZnJlZV9sb2dvX3VybCxjY29kZTpjLmNvdW50cnlfY29kZSxlbWJlZG5hbWU6ZS51bmlxdWVfbmFtZSx0enNvZmZzZXQ6ZC5zZXJ2ZXIsY2luZm86cCxpc2F1ZGlvY2FsbGFsbG93ZWQ6bC5hdWRpb2NhbGwsaXNzaXFzY3JlZW5zaGFyZTpsLnNpcXNjcmVlbnNoYXJpbmcsY2FtcGFpZ25lbmFibGVkOiEwLHNlcnZlcm5hbWU6ZS5wcm9kdWN0X3VybCxpbnRlZ3Byb3BzOntpbnRlZ2luZm86QShnKX0sbGluZm86ZS5saWNlbnNlX2luZm8sdHpwb2Zmc2V0OmQucG9ydGFsLGhvbWVwYWdlX2NvbmZpZ3M6ZS5ob21lcGFnZV9jb25maWdzfSx2ZXJzaW9uOmUudmVyc2lvbixsYXN0X21vZGlmaWVkOmUubW9kaWZpZWRfdGltZSxpc29ubHljYWxsOnooZS5jb21wb25lbnRzfHxbXSksY29tcG9uZW50czplLmNvbXBvbmVudHN8fFtdfSxtb2R1bGU6ImdldGVtYmVkZGV0YWlscyIsb2JqVHlwZToib2JqZWN0In1dfShlKTphKGUsaSl9LGZvcm1hdGVDYWxsRGVwdDpUfX0oKTt2YXIgJFpTSVFOb3RpZnlDb29raWU9ZnVuY3Rpb24oKXt2YXIgbz1mdW5jdGlvbihpKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaSl9LGE9ZnVuY3Rpb24oaSxlLHQpe28oaSkuc2V0QXR0cmlidXRlKGUsdCl9LGk9ImFuYWx5dGljcyIsZT0iZnVuY3Rpb25hbGl0eSIsYz0ic3RyaWN0bHluZWNlc3NhcnkiLG49e2lzRnVuY3Rpb25hbGl0eTohMSxpc0FuYWx5dGljczohMX0sdD0iIixyPXt9LHM9e3N0cmljdGx5bmVjZXNzYXJ5Ont9LGZ1bmN0aW9uYWxpdHk6e30sYW5hbHl0aWNzOnt9LGxlYXJubW9yZToiIn0sbD1be25hbWU6ImlzaWZyYW1lZW5hYmxlZCIsdHRsOiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgaXMgc2V0IHdoZW4gdGhlIExpdmUgQ2hhdCBmZWF0dXJlIGlzIGRpc2FibGVkIGJ5IHByb2FjdGl2ZSBjaGF0cy90cmlnZ2VyL0pTQVBJIix0eXBlOmV9LHtuYW1lOiInemxkJys8QGxzaWRAPisnQXJ0aWNsZV8nKzxAYXJ0aWNsZV9pZEA+Iix0dGw6IjEgZGF5IixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgaWYgYW4gYXJ0aWNsZS9GQVEgaXMgbGlrZWQgb3Igbm90IGJ5IHRoZSB2aXNpdG9yIix0eXBlOmV9LHtuYW1lOiInWkxEJys8QGFwcGlkQD4rJ1dBSVRJTkcnIix0dGw6IkVtYmVkIHdhaXRpbmcgdGltZSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHRoZSB3YWl0aW5nIHRpbWUgb2YgdGhlIGNoYXQgdGltZSBkZXRhaWxzIGZvciBhIGNoYXQiLHR5cGU6ZX0se25hbWU6IidaTEQnKzxAYXBwaWRAPisnV1RJTUUnIix0dGw6IkVtYmVkIHdhaXRpbmcgdGltZSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHRoZSByZW1haW5pbmcgd2FpdGluZyB0aW1lIGRldGFpbHMgZm9yIGEgY2hhdCIsdHlwZTplfSx7bmFtZToiY2RuX3N0YXR1cyIsdHRsOiIyIGRheXMiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgY2RuIHN0YXR1cyBmb3IgZ2V0dGluZyB0aGUgc3RhdGljIGZpbGVzIix0eXBlOmV9LHtuYW1lOiI8QGNoYXRpZEA+KydfdHJhbnNsYXRlJyIsdHRsOiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIHdoZXRoZXIgdHJhbnNsYXRpb24gaXMgZW5hYmxlZCBvciBub3QiLHR5cGU6ZX0se25hbWU6IidnZHByXycrPEBzY3JlZW5uYW1lQD4rJ190cmFja2luZ2NvbmZpZyciLHR0bDoiMSBNb250aCIscHVycG9zZToiVGhpcyBjb29raWUgc3RvcmVzIEdEUFIgY29uc2VudCBjb25maWd1cmVkIGluIHBvcnRhbCBzaWRlIHRvIGhhbmRsZSB0aGUgdmlzaXRvciBlbmQgd2lkZ2V0IGFjY29yZGluZ2x5IHdpdGggY29uc2VudCBiYW5uZXJzIix0eXBlOmV9LHtuYW1lOiInSlNFU1NJT05JRCciLHR0bDoiV2hlbiB0aGUgYnJvd3Npbmcgc2Vzc2lvbiBlbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBpcyBnZW5lcmF0ZWQgYnkgc2VydmxldCBjb250YWluZXJzIGxpa2UgVG9tY2F0IGFuZCB1c2VkIGZvciBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIHRoZSBIVFRQIHByb3RvY29sIix0eXBlOmN9LHtuYW1lOiInTFNfQ1NSRl9UT0tFTiciLHR0bDoiV2hlbiB0aGUgYnJvd3Npbmcgc2Vzc2lvbiBlbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBpcyB1c2VkIGZvciBzZWN1cml0eSBwdXJwb3NlcyBpbiBvcmRlciB0byBhdm9pZCBDcm9zcy1TaXRlIFJlcXVlc3QgRm9yZ2VyeSwgKENTUkYpIGZvciB0aGUgQUpBWCBjYWxscyBtYWRlIGJ5IHRoZSB2aXNpdG9yIix0eXBlOmN9LHtuYW1lOiInZ2Rwcl8nKzxAc2NyZWVubmFtZUA+KydfX2Rvbm90dHJhY2snIix0dGw6IjEgbW9udGgiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgR0RQUiBjb25zZW50IGZyb20gdGhlIHZpc2l0b3IgLSBlbmFibGUvZGlzYWJsZSB0cmFja2luZyIsdHlwZTpjfSx7bmFtZToiZTNkZTFmN2Q0MihyYW5kb20gY2hlY2tzdW0pIix0dGw6IldoZW4gdGhlIGJyb3dzaW5nIHNlc3Npb24gZW5kcyIscHVycG9zZToiVGhpcyBjb29raWUgaXMgdXNlZCBmb3IgaW50ZXJuYWwgbG9hZCBiYWxhbmNpbmcgb2YgU2FsZXNJUSBzZXJ2ZXJzIix0eXBlOmN9LHtuYW1lOiInZmJwZ3NyXycrPEBsc2lkQD4iLHR0bDoiVW50aWwgY2xlYXJlZCIscHVycG9zZToiVXNlZCBpbiB0aGUgRmFjZWJvb2sgYXBwIHRvIGF1dGhlbnRpY2F0ZSB0aGUgU2FsZXNJUSBBUEkgcmVxdWVzdCIsdHlwZTpjfSx7bmFtZToidWVzaWduIix0dGw6IjEgTW9udGgiLHB1cnBvc2U6IlRoaXMgY29va2llIGlzIHVzZWQgdG8gbWFuYWdlIHRoZSBzZWN1cml0eSBvZiB0aGUgYXBwbGljYXRpb25zLiIsdHlwZTpjfSx7bmFtZToiPEBzY3JlZW5uYW1lQD4rJy0nX3psZHAnIix0dGw6IjIgeWVhcnMiLHB1cnBvc2U6IlRoaXMgY29va2llIGlkZW50aWZpZXMgdGhlIHVuaXF1ZSB2aXNpdG9ycyBmb3IgdGhlIHdlYnNpdGUiLHR5cGU6aX0se25hbWU6IjxAc2NyZWVubmFtZUA+KyctJ196bGR0JyIsdHRsOiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgaWRlbnRpZmllcyB1bmlxdWUgdmlzaXRzIGZvciBhIHZpc2l0b3IgaW4gdGhlIHdlYnNpdGUiLHR5cGU6aX0se25hbWU6IjxAc2NyZWVubmFtZUA+KyctJ19zaXFpZCciLHR0bDoiMiB5ZWFycyIscHVycG9zZToiVGhpcyBjb29raWUgaGVscHMgeW91IHRyYWNrIHVzZXJzIGFjcm9zcyBhbGwgZG9tYWlucyIsdHlwZTppfSx7bmFtZToiPEBzY3JlZW5uYW1lQD4rJy0nX3V1aWQnIix0dGw6IjIgeWVhcnMiLHB1cnBvc2U6IlRoaXMgY29va2llIHByb3ZpZGVzIHVzZXIgaWQgbmVlZGVkIGluIFJFU1QgQVBJIHRvIGdldCB0aGUgZGF0YSBvZiB0aGUgY3VycmVudCB1c2VyLiIsdHlwZTppfSx7bmFtZToiPEBzY3JlZW5uYW1lQD4rJy0nbWNfY2lkJyIsdHRsOiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgdHJhY2tzIE1haWxjaGltcCBkZXRhaWxzIGFib3V0IHRoZSB2aXNpdG9yIHZpYSBjYW1wYWlnbiBpZCAmIG1lbWJlciBlbWFpbCdzIHVuaXF1ZSBpZCIsdHlwZTppfSx7bmFtZToiPEBzY3JlZW5uYW1lQD4rJy0nbWNfZWlkJyIsdHRsOiIxIGRheSIscHVycG9zZToiVGhpcyBjb29raWUgdHJhY2tzIE1haWxjaGltcCBkZXRhaWxzIGFib3V0IHRoZSB2aXNpdG9yIHZpYSB1bmlxdWUgaWQgJiBtZW1iZXIgZW1haWwncyB1bmlxdWUgaWQiLHR5cGU6aX0se25hbWU6Il96bGR2ZnAiLHR0bDoiNiBtb250aHMiLHB1cnBvc2U6IlVzZWQgdG8gaWRlbnRpZnkgdmlzaXRvcnMgcmVmZXJyZWQgZnJvbSBlbWFpbCBjYW1wYWlnbnMiLHR5cGU6aX0se25hbWU6IidaTEQnKzxAYXBwaWRAPiIsdHRsOiIxIHdlZWsiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgTGl2ZSBDaGF0IGF0dGVuZGVyIGRldGFpbHMgYW5kIHZpc2l0b3IgZGV0YWlscyIsdHlwZTppfSx7bmFtZToiJ1pMRCcrPEBsc2lkQD4rJ2F2dWlkJyIsdHRsOiIxIHdlZWsiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyB0aGUgYXZ1aWQgdW5pcXVlIGlkIHRvIGRlbm90ZSBhIHZpc2l0b3IiLHR5cGU6aX0se25hbWU6IidaTERUUklHR0VSJys8QGFwcGlkQD4iLHR0bDoiMSB3ZWVrIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgdGhlIHRyaWdnZXIgZGV0YWlscyB3aGVuIHRoZSB2aXNpdG9yIGlzIGNvbnRhY3RlZCIsdHlwZTppfSx7bmFtZToiWkxEUEVSU09OQUxJWkUiLHR0bDoiMTgwIHNlY29uZHMiLHB1cnBvc2U6IlRoaXMgY29va2llIHN0b3JlcyBhdHRlbmRlciBJRCBpbiBjb29raWUgZm9yIHBlcnNvbmFsaXplZCBjaGF0Iix0eXBlOml9LHtuYW1lOiInWkxEJys8QGxzaWRAPisndGFib3duZXInIix0dGw6IjE4MCBzZWNvbmRzIixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgV01TIHNlc3Npb24gSUQiLHR5cGU6aX0se25hbWU6IjxAYXZ1aWRAPisnX2FjY2Vzc3RpbWUnIix0dGw6IjEgZGF5IixwdXJwb3NlOiJUaGlzIGNvb2tpZSBzdG9yZXMgdGhlIGxhc3QgZmV0Y2hlZCBjb252ZXJzYXRpb24ncyBlbmQgdGltZSIsdHlwZTppfV0sZD17ZnVuY3Rpb25hbGl0eTpbXSxhbmFseXRpY3M6W10sc3RyaWN0bHluZWNlc3Nhcnk6W119LHA9ZnVuY3Rpb24oKXtvKCJ6c2lxZnVuY3Rpb25hbGl0eWNoYm94IikuY2hlY2tlZD1uLmlzRnVuY3Rpb25hbGl0eSxvKCJ6c2lxYW5hbHl0aWNzY2hib3giKS5jaGVja2VkPW4uaXNBbmFseXRpY3N9LHU9ZnVuY3Rpb24oKXt2YXIgaT1zLmxlYXJubW9yZSxlPSRaU0lRV2lkZ2V0LmdldEVtYmVkT2JqZWN0KCkucGluZm8ucGluZm8uY29va2llcG9saWN5dXJsO3JldHVybiBlPWU/JFpTSVFVdGlsLmdldFVSTFByb3RvY29sKGUpOiJodHRwczovL3d3dy56b2hvLmNvbS9zYWxlc2lxL2Nvb2tpZXMtcG9saWN5Lmh0bWwiLCc8ZGl2IGNsYXNzPSJ6c2lxLWNvb2tpZWNvbnQtZGl2IiBpZD0ienNpcWNvb2tpZXVpIj48ZGl2IGNsYXNzPSJ6c2lxX3BMUjMwIHpzaXFfenBzdWJtYWluIj48ZGl2IGNsYXNzPSJ6c2lxX3pwaGRyIj4nK3JbImNvb2tpZS55b3VyLnByZWZlcmVuY2UiXSsnPC9kaXY+PGRpdiBjbGFzcz0ienNpcV9jbHI2Ij4nK3JbImNvb2tpZS55b3VyLnByZWZlcmVuY2UuZGVzYyJdKyc8YSBocmVmPSInK2UrJyIgenNxYT0iY29va2llcG9saWN5X3VybCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciI+JytyWyJjb29raWUucG9saWN5Il0rJzwvYT4uPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ienNpcS1jb29raWUtcHJlZiI+PGRpdiBjbGFzcz0ienNpcV96cHN1Ym1haW4iPjxsYWJlbCBjbGFzcz0ienNpcV96cHN1YmhkciI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0ic3RyaWN0bHluZWNlc3NhcnljaGJveCIgY2hlY2tlZCBkaXNhYmxlZD48c3Bhbj4nK3Muc3RyaWN0bHluZWNlc3NhcnkudGl0bGUrJzwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9InpzaXFfenBzdWJkdGwiPicrcy5zdHJpY3RseW5lY2Vzc2FyeS5zdWJ0aXRsZSsnPHNwYW4gY2xhc3M9ImRldGFpbHMiIGlkPSJzdHJpY3RseW5lY2Vzc2FyeSI+JytpKyc8L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ienNpcV96cHN1Ym1haW4iPjxsYWJlbCBjbGFzcz0ienNpcV96cHN1YmhkciBjdXJwIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJ6c2lxZnVuY3Rpb25hbGl0eWNoYm94Ij48c3Bhbj4nK3MuZnVuY3Rpb25hbGl0eS50aXRsZSsnPC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0ienNpcV96cHN1YmR0bCI+JytzLmZ1bmN0aW9uYWxpdHkuc3VidGl0bGUrJzxzcGFuIGNsYXNzPSJkZXRhaWxzIiBpZD0iZnVuY3Rpb25hbGl0eWRldGFpbHMiPicraSsnPC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InpzaXFfenBzdWJtYWluIj48bGFiZWwgY2xhc3M9InpzaXFfenBzdWJoZHIgY3VycCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0ienNpcWFuYWx5dGljc2NoYm94Ij48c3Bhbj4nK3MuYW5hbHl0aWNzLnRpdGxlKyc8L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSJ6c2lxX3pwc3ViZHRsIj4nK3MuYW5hbHl0aWNzLnN1YnRpdGxlKyc8c3BhbiBjbGFzcz0iZGV0YWlscyIgaWQ9ImFuYWx5dGljc2RldGFpbHMiPicraSsiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PiJ9LHk9ZnVuY3Rpb24oKXt3KCJ6c2lxaW1hZ2VwcmV2aWV3IixmdW5jdGlvbihpKXsienNpcWNsb3NlIj09PWkudGFyZ2V0LmdldEF0dHJpYnV0ZSgiZG9jY2xpY2siKSYmdihpKX0pLHcoImZ1bmN0aW9uYWxpdHlkZXRhaWxzIixmdW5jdGlvbigpe2YoZSl9KSx3KCJhbmFseXRpY3NkZXRhaWxzIixmdW5jdGlvbigpe2YoaSl9KSx3KGMsZnVuY3Rpb24oKXtmKGMpfSksdygiY29uZmlybW15Y2hvaWNlIixUKSx3KCJ6c2lxYWNjZXB0YWxsIixTKSx3KCJ6c2lxY2xvc2UiLHYpLHcoInpzaXFmdW5jdGlvbmFsaXR5Y2hib3giLHopLHcoInpzaXFhbmFseXRpY3NjaGJveCIseil9LHY9ZnVuY3Rpb24oaSl7dD0iIiwkWlNJUVV0aWwuY29va2llQ29uZmlnPXtpc0Z1bmN0aW9uYWxpdHk6ITEsaXNBbmFseXRpY3M6ITF9LCRaU0lRQ2hhdFdpbmRvdy5jbG9zZUltYWdlUHJldmlldyhpLCEwKSwkWlNJUVV0aWwuYmluZEV2ZW50c0Nvb2tpZUJhbm5lcigpfSxmPWZ1bmN0aW9uKGkpe3ZhciBlPWk9PT1jPyJoaWRlLWZvb3RlciI6IiIsdD0nPGRpdiBpZD0ienNpcWZhcXByZXZpZXciIGNsYXNzPSJ6c2lxX3pwbWFpbiI+JytoKGkpKyc8ZGl2IGNsYXNzPSJ6c2lxLWZvb3RlciAnK2UrJyI+JytrKGkpKyc8L2Rpdj48ZW0gY2xhc3M9InNpcWljby1sYXJyb3ciIGRhdGEtdHlwZT0iJytpKyciIGlkPSJ6c2lxLWxhcnJvdyI+PC9lbT48ZW0gY2xhc3M9InNpcWljby1jbG9zZSIgaWQ9ImNsb3NlLWNvb2tpZSIgenNpcWNsb3NlPSJ0cnVlIiBkb2NjbGljaz0ienNpcWNsb3NlIj48L2VtPjwvZGl2Pic7bygienNpcWltYWdlcHJldmlldyIpLmlubmVySFRNTD10LG0oKX0saD1mdW5jdGlvbihpKXtyZXR1cm4nPGRpdiBjbGFzcz0ienNpcV9wTFIzMCB6c2lxLWNvb2tpZWJvZHktZGl2Ij48ZGl2IGNsYXNzPSJ6c2lxX3pwc3VibWFpbiB6c2lxLXpwdGFibCIgc3R5bGU9Im1hcmdpbi10b3A6NDBweDsiPjxkaXYgY2xhc3M9InpzaXFfenBoZHIiPicrc1tpXS50aXRsZSsnPC9kaXY+PGRpdiBjbGFzcz0ienNpcV9jbHI2Ij4nK3NbaV0uc3VidGl0bGUrJzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InpzaXEtY29va2llY29udC1kaXYiPicrXyhsLGkpKyI8L2Rpdj48L2Rpdj4ifSxtPWZ1bmN0aW9uKCl7dygiYWNwdC1jb29raWUiLGcpLHcoImRlY2wtY29va2llIixiKSx3KCJjbG9zZS1jb29raWUiLGZ1bmN0aW9uKGkpe3Q9IiIsJFpTSVFDaGF0V2luZG93LmNsb3NlSW1hZ2VQcmV2aWV3KGksITApLCRaU0lRVXRpbC5iaW5kRXZlbnRzQ29va2llQmFubmVyKCl9KSx3KCJ6c2lxLWxhcnJvdyIscSl9LGs9ZnVuY3Rpb24oaSl7cmV0dXJuIGk9PT1jPyIiOic8ZGl2IGNsYXNzPSJ6c2lxLWNidG4genNpcS13YnRuIiBkYXRhLXR5cGU9IicraSsnIiBpZD0iZGVjbC1jb29raWUiPkRlY2xpbmU8L2Rpdj48ZGl2IGNsYXNzPSJ6c2lxLWNidG4iIGlkPSJhY3B0LWNvb2tpZSIgZGF0YS10eXBlPSInK2krJyI+QWNjZXB0PC9kaXY+J30sej1mdW5jdGlvbigpe0EoKTt2YXIgaT14KCJ6c2lxZnVuY3Rpb25hbGl0eWNoYm94IiksZT14KCJ6c2lxYW5hbHl0aWNzY2hib3giKSx0PXJbImNvb2tpZS5zYXZlLmFjY2VwdCJdLHM9clsiY29va2llLmRpc2NhcmQuY2hhbmdlcyJdLG89InNhdmUiLG49ImRpc2NhcmQiO2kmJmUmJih0PXJbImNvb2tpZS5hY2NlcHQuYWxsIl0scz1yWyJjb29raWUudXNlLmVzc2VudGlhbCJdLG89ImFjY2VwdCIsbj0iZGVjbGluZSIpLGEoInpzaXFhY2NlcHRhbGwiLCJwcm9wdHlwZSIsbyksYSgiY29uZmlybW15Y2hvaWNlIiwicHJvcHR5cGUiLG4pLEkodCxzKX0scT1mdW5jdGlvbigpe28oInpzaXFpbWFnZXByZXZpZXciKS5pbm5lckhUTUw9dCx5KCkscCgpLHooKX0sYj1mdW5jdGlvbihpKXtpLnRhcmdldC5nZXRBdHRyaWJ1dGUoImRhdGEtdHlwZSIpPT09ZT9uLmlzRnVuY3Rpb25hbGl0eT0hMTpuLmlzQW5hbHl0aWNzPSExLHEoKX0sZz1mdW5jdGlvbihpKXtpLnRhcmdldC5nZXRBdHRyaWJ1dGUoImRhdGEtdHlwZSIpPT09ZT9uLmlzRnVuY3Rpb25hbGl0eT0hMDpuLmlzQW5hbHl0aWNzPSEwLHEoKX0sXz1mdW5jdGlvbihpLGUpe3ZhciB0PSIiO2Zvcih2YXIgcyBpbiBpKWlmKGkuaGFzT3duUHJvcGVydHkocykpe3ZhciBvPWlbc107by50eXBlPT09ZSYmKHQrPSc8ZGl2IGNsYXNzPSJ6c2lxX3RyIj48ZGl2IGNsYXNzPSJ6c2lxX3RkIj4nK28ubmFtZSsnPC9kaXY+PGRpdiBjbGFzcz0ienNpcV90ZCB6c2lxX3dwcm8iPicrby5wdXJwb3NlKyc8L2Rpdj48ZGl2IGNsYXNzPSJ6c2lxX3RkIj5odHRwX2Nvb2tpZSAgPC9kaXY+PGRpdiBjbGFzcz0ienNpcV90ZCI+JytvLnR0bCsiPC9kaXY+PC9kaXY+Iil9cmV0dXJuJzxkaXYgY2xhc3M9InpzaXFfdGFibGUiPjxkaXYgY2xhc3M9InpzaXFfdGgiPjxkaXYgY2xhc3M9InpzaXFfdGQiPk5hbWU8L2Rpdj48ZGl2IGNsYXNzPSJ6c2lxX3RkIHpzaXFfd3BybyI+UHVycG9zZTwvZGl2PjxkaXYgY2xhc3M9InpzaXFfdGQiPlVSTDwvZGl2PjxkaXYgY2xhc3M9InpzaXFfdGQiPkV4cGlyeTwvZGl2PjwvZGl2PicrdCsiPC9kaXY+In0sdz1mdW5jdGlvbihpLGUpe28oaSkmJm8oaSkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGUpfSxUPWZ1bmN0aW9uKGkpe3ZhciBlPWkudGFyZ2V0LmdldEF0dHJpYnV0ZSgicHJvcHR5cGUiKTsiZGVjbGluZSI9PT1lPyhuPXtpc0Z1bmN0aW9uYWxpdHk6ITEsaXNBbmFseXRpY3M6ITF9LCRaU0lRVXRpbC5jb29raWVDb25maWc9bixaKCkpOiJkaXNjYXJkIj09PWUmJihuPXtpc0Z1bmN0aW9uYWxpdHk6ITAsaXNBbmFseXRpY3M6ITB9LHAoKSxhKCJ6c2lxYWNjZXB0YWxsIiwicHJvcHR5cGUiLCJhY2NwZXQiKSxhKCJjb25maXJtbXljaG9pY2UiLCJwcm9wdHlwZSIsImRlY2xpbmUiKSxJKHJbImNvb2tpZS5hY2NlcHQuYWxsIl0sclsiY29va2llLnVzZS5lc3NlbnRpYWwiXSkpfSxJPWZ1bmN0aW9uKGksZSl7bygienNpcWFjY2VwdGFsbCIpLmlubmVyVGV4dD1pLG8oImNvbmZpcm1teWNob2ljZSIpLmlubmVyVGV4dD1lfSxTPWZ1bmN0aW9uKGkpe3ZhciBlPXgoInpzaXFmdW5jdGlvbmFsaXR5Y2hib3giKSx0PXgoInpzaXFhbmFseXRpY3NjaGJveCIpO249e2lzRnVuY3Rpb25hbGl0eTplLGlzQW5hbHl0aWNzOnR9LCRaU0lRVXRpbC5jb29raWVDb25maWc9bixaKCl9LEE9ZnVuY3Rpb24oKXtuPXtpc0Z1bmN0aW9uYWxpdHk6eCgienNpcWZ1bmN0aW9uYWxpdHljaGJveCIpLGlzQW5hbHl0aWNzOngoInpzaXFhbmFseXRpY3NjaGJveCIpfX0seD1mdW5jdGlvbihpKXtyZXR1cm4gbyhpKS5jaGVja2VkfSxaPWZ1bmN0aW9uKCl7bygienNpcWltYWdlcHJldmlldyIpLnJlbW92ZSgpO3ZhciBpPSRVVFNIYW5kbGVyLmdldEFQSVZhbHVlc0ZvclVUUygpLGU9JFpTSVFXaWRnZXQuZ2V0V2lkZ2V0T2JqZWN0KCksdD0hKCghaS50cmFja2luZ3x8Im9mZiIhPWkudHJhY2tpbmcpJiZlLmlzdHJhY2tpbmcpLHM9SlNPTi5wYXJzZSgkWlNJUVdpZGdldC5nZXRFbWJlZE9iamVjdCgpLnBpbmZvLnBpbmZvLnRyYWNraW5ncHJpdmFjeWNvbmZpZyk7bi5pc0FuYWx5dGljc3x8dHx8MiE9cz8kWlNJUVV0aWwudXBkYXRlQ29va2llRm9yVHJhY2tpbmcoMCwiMiIpOiRaU0lRVXRpbC51cGRhdGVDb29raWVGb3JUcmFja2luZygxLCIyIil9LEw9ZnVuY3Rpb24oaSxlKXtuPXtpc0Z1bmN0aW9uYWxpdHk6aSxpc0FuYWx5dGljczplfX07cmV0dXJue2luaXQ6ZnVuY3Rpb24oaSxlKXtmb3IodmFyIHQ9MDt0PGwubGVuZ3RoO3QrKyl7dmFyIHM9bFt0XS5uYW1lO3M9cy5zcGxpdCgiJyIpLmpvaW4oIiIpLnJlcGxhY2UoL1wrPzxAbHNpZEA+XCs/L2csaS5sc2lkKS5yZXBsYWNlKC9cKz88QHNjcmVlbm5hbWVAPlwrPy9nLGkuc2NyZWVubmFtZSkucmVwbGFjZSgvXCs/PEBhcHBpZEA+XCs/L2csZSksZFtsW3RdLnR5cGVdLnB1c2gocyl9fSxnZXRDb29raWVMaXN0OmZ1bmN0aW9uKCl7cmV0dXJuIGx9LHVwZGF0ZUNvb2tpZTpmdW5jdGlvbihpKXtPYmplY3QuYXNzaWduKG4saSl9LGlzQ29va2llQWxsb3dlZDpmdW5jdGlvbihpKXt2YXIgZSx0PXtmdW5jdGlvbmFsaXR5OiJpc0Z1bmN0aW9uYWxpdHkiLGFuYWx5dGljczoiaXNBbmFseXRpY3MifSxzPSgkWlNJUUNoYXQuZ2V0V2lkZ2V0RGF0YSgpfHx7fSkuZW1iZWRvYmo7cyYmKGU9JFpTSVFMU0RCLmdldEZyb21Mb2NhbFN0b3JhZ2UoIlpTSVEiK3MuZWluZm8uZW1iZWRpZCsiLWNvb2tpZV9jb25maWciKSk7dmFyIG89ZXx8JFpTSVFVdGlsLmNvb2tpZUNvbmZpZztpZigtMSE9aS5pbmRleE9mKCJzdGF0ZSIpfHwtMSE9aS5pbmRleE9mKCJkcmFncG9zIikpcmV0dXJuITE7Zm9yKHZhciBuIGluIGQpaWYoZC5oYXNPd25Qcm9wZXJ0eShuKSl7aWYoLTEhPWkuaW5kZXhPZigiQXJ0aWNsZV8iKXx8LTEhPWkuaW5kZXhPZigiaXNpZnJhbWVlbmFibGVkIil8fC0xIT1pLmluZGV4T2YoIl90cmFuc2xhdGUiKSlyZXR1cm4gby5pc0Z1bmN0aW9uYWxpdHk7aWYoLTEhPWkuaW5kZXhPZigiYXZ1aWQiKSlyZXR1cm4gby5pc0FuYWx5dGljcztpZigtMSE9ZFtuXS5pbmRleE9mKGkpKXJldHVybiBuPT09Y3x8b1t0W25dXX1yZXR1cm4hMH0scG9wdWxhdGVVSTpmdW5jdGlvbigpe249e2lzRnVuY3Rpb25hbGl0eTohMCxpc0FuYWx5dGljczohMH0scj0kWlNJUVdpZGdldC5nZXRXaWRnZXRPYmplY3QoKS5pMThuQ2hhdHdpbmRvd0tleXMscy5zdHJpY3RseW5lY2Vzc2FyeS50aXRsZT1yWyJjb29raWUuZXNzZW50aWFsIl0scy5zdHJpY3RseW5lY2Vzc2FyeS5zdWJ0aXRsZT1yWyJjb29raWUuZXNzZW50aWFsLmRlc2MiXSxzLmZ1bmN0aW9uYWxpdHkudGl0bGU9clsiY29va2llLnBlcmZvcm1hbmNlIl0scy5mdW5jdGlvbmFsaXR5LnN1YnRpdGxlPXJbImNvb2tpZS5wZXJmb3JtYW5jZS5kZXNjIl0scy5hbmFseXRpY3MudGl0bGU9clsiY29va2llLmFuYWx5dGljcyJdLHMuYW5hbHl0aWNzLnN1YnRpdGxlPXJbImNvb2tpZS5hbmFseXRpY3MuZGVzYyJdLHMubGVhcm5tb3JlPXJbImNvb2tpZS5sZWFybm1vcmUiXTt2YXIgaT0nPGRpdiBjbGFzcz0ienNpcV9wcnZfbWFpbiBub3RpZnktY29va2llIiB6c2lxY2xvc2U9InRydWUiIGlkPSJ6c2lxaW1hZ2VwcmV2aWV3IiBkb2NjbGljaz0ienNpcWNsb3NlIj48ZGl2IGlkPSJ6c2lxZmFxcHJldmlldyIgY2xhc3M9InpzaXFfenBtYWluIj4nK3UoKSsnPGRpdiBjbGFzcz0ienNpcS1mb290ZXIiPjxkaXYgY2xhc3M9InpzaXEtY2J0biB6c2lxLXdidG4iIGlkPSJjb25maXJtbXljaG9pY2UiIHByb3B0eXBlPSJkZWNsaW5lIiBzdHlsZT0iY29sb3I6Izg4ODsiPicrclsiY29va2llLnVzZS5lc3NlbnRpYWwiXSsnPC9kaXY+PGRpdiBjbGFzcz0ienNpcS1jYnRuIiBpZD0ienNpcWFjY2VwdGFsbCIgcHJvcHR5cGU9ImFjY3BldCI+JytyWyJjb29raWUuYWNjZXB0LmFsbCJdKyc8L2Rpdj48L2Rpdj48ZW0gY2xhc3M9InNpcWljby1jbG9zZSIgaWQ9InpzaXFjbG9zZSIgenNpcWNsb3NlPSJ0cnVlIiBkb2NjbGljaz0ienNpcWNsb3NlIj48L2VtPjwvZGl2PjxkaXYgaWQ9InpzaXFjb29raWVsaXN0Ij48L2Rpdj48L2Rpdj4nO3R8fG8oImdkcHJiYW5uZXIiKS5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixpKSx0PWkscCgpLHkoKSx6KCl9LGhhbmRsZUdvdGl0OmZ1bmN0aW9uKCl7TCghMCwhMCl9LGhhbmRsZUROVDpmdW5jdGlvbigpe0woITEsITEpfSxjbG9zZUJhbm5lcjp2LGNvb2tpZUxpc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gZH19fSgpO3ZhciAkWlNJUUNoYXQ9JFpTSVFDaGF0fHxmdW5jdGlvbigpe3ZhciAkO1NJUV9GTE9BVD0xLFNJUV9CVVRUT049MixTSVFfUEVSU09OQUxJWkU9MyxfV0lORE9XX1JFUE9QVUxBVEU9ITE7dmFyIFQ9e30sRD17fTtUW1NJUV9GTE9BVF09WyIvc3R5bGVzL2Zsb2F0YnV0dG9uV0lER1RIRU1FLmNzcyJdLFRbU0lRX0JVVFRPTl09WyIvc3R5bGVzL2J1dHRvbnRoZW1lV0lER1RIRU1FLmNzcyJdLFRbU0lRX1BFUlNPTkFMSVpFXT1bIi9zdHlsZXMvcGVyc29uYWxpemV0aGVtZVdJREdUSEVNRS5jc3MiXSxEW1NJUV9GTE9BVF09WyIvanMvZmxvYXRidXR0b25XSURHVEhFTUUuanMiXSxEW1NJUV9CVVRUT05dPVsiL3NhbGVzaXEvanMvbmV3YnV0dG9uX3N4QkxkaVo3N3laVTdkZVRNMjViTFlxOGYyV3RlR2dwZThxS3I3d1VIRFJpZjRKa0E5YVFDT0tFaTRDUTROZnVfLmpzIl07dmFyIFE9IShEW1NJUV9QRVJTT05BTElaRV09WyIvc2FsZXNpcS9qcy9wZXJzb25hbGl6ZXdpZGdldF9zaTE1eXRaTi1UdElLdzFleEp2VEJQVkpIUGNFZEJtdlh1a1F2QkdsNjdocU8xNXZwdU9sa0JiSE9IbEM4STZmXy5qcyJdKSxlPSExLGw9ITEsbT17fSxkPSEwO3RyeXtRPV9JU19QUkVWSUVXfWNhdGNoKGUpe310cnl7ZT1fSVNfU0lHTkFUVVJFX0NIQVR9Y2F0Y2goZSl7fXZhciBaPWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93Ll9TVEFUSUNVUkxTfHwkWlNJUVV0aWwuc3RhdGljVVJMO2lmKGUpcmV0dXJuImh0dHBzOi8vIitlWzRdKyIvd2lkZ2V0Ijt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgienNpcXNjcmlwdCIpO3JldHVybiB0LnNyY3x8dC5xdWVyeVNlbGVjdG9yKCJzcmMiKX0sYz1mdW5jdGlvbihlLHQpe2lmKG51bGwhPXQuc3RhdHVzKXJldHVybiBlLndpZGdldG9iai5zdGF0dXM9ZS53aWRnZXRvYmouY2FsbF9zdGF0dXM9ZS5lbWJlZG9iai5laW5mby5lbWJlZHN0YXR1cy5TVEFUVVM9dC5zdGF0dXMsZTtpZigoNT09X1dJREdFVFRZUEV8fDY9PV9XSURHRVRUWVBFfHw3PT1fV0lER0VUVFlQRXx8dC5jb2xvciYmd2luZG93Ll9TSVFfTkVXX0ZMT0FUKSYmKGUud2lkZ2V0b2JqPXQudGhlbWV8fHQuaW50ZWdwcm9wcz9lLmVtYmVkb2JqOmUuZW1iZWRvYmouZWluZm8ucHJvcHMsdC5oYXNPd25Qcm9wZXJ0eSgic2hvd19icmFuZF9sb2dvIikmJihlLndpZGdldG9iaj1lLmVtYmVkb2JqLmhvbWVwYWdlX2NvbmZpZ3MpKSx0LmVtYmVkc3RhdHVzKWUuZW1iZWRvYmouZWluZm8uZW1iZWRzdGF0dXM9dC5lbWJlZHN0YXR1cztlbHNlIGZvcih2YXIgaSBpbiB0KWUud2lkZ2V0b2JqW2ldPXRbaV07cmV0dXJuIGUuZW1iZWRvYmouZWluZm8uZW1iZWRzdGF0dXMuU1RBVFVTPSF0LnRvZ2dsZW9mZmxpbmUsZX0sej1mdW5jdGlvbihlLGksYSxvKXtlLm9uZXJyb3I9ZnVuY3Rpb24oKXt2YXIgZT0iIix0PSR6b2hvc3Eubm9uY2U7ImpzIj09bz8oZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuc3JjPWE6ImNzcyI9PW8mJigoZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIikpLnJlbD0ic3R5bGVzaGVldCIsZS5ocmVmPWEpLHQmJmUuc2V0QXR0cmlidXRlKCJub25jZSIsdCksaVswXS5hcHBlbmRDaGlsZChlKX19O3JldHVybntpbml0OmZ1bmN0aW9uKCl7dHJ5eyRaU0lRVXRpbC5wcmVDb25uZWN0RG9tYWlucygpLCRaU0lRQ2hhdC5sb2FkUG9zdE1lc3NhZ2UoKSwkPVdJREdFVF9EQVRBfWNhdGNoKGUpeyRaU0lRVXRpbC5pbml0aWFsaXplQVBJVmFsdWVzKCksJFpTSVFDaGF0LmdldEVtYmVkRGV0YWlscygpfX0sZ2V0V2lkZ2V0RGF0YTpmdW5jdGlvbigpe3JldHVybiAkfSxpc0xpdmVQcmV2aWV3OmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBudWxsIT1wYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByZXZpZXciKX1jYXRjaChlKXtyZXR1cm4hMX19LGlzT25ib2FyZGluZzpmdW5jdGlvbigpe3JldHVybiBRP3dpbmRvdy5wYXJlbnQuX0lTX09OQk9BUkRJTkc6d2luZG93Ll9JU19PTkJPQVJESU5HfSxnZXRFbWJlZERldGFpbHM6ZnVuY3Rpb24oKXskWlNJUUNoYXQuZmV0Y2hFbWJlZERldGFpbHMoKX0sZ2V0RG9tYWluOmZ1bmN0aW9uKCl7dmFyIGU9IiI7cmV0dXJuIGV8fChlPWxvY2F0aW9uLmhvc3RuYW1lLnRvU3RyaW5nKCkucmVwbGFjZSgvXnd7M31cLi8sIiIpLC9eW2EtekEtWjAtOS1cLl0rJC8udGVzdChlKXx8KGU9IiIpKSxlP2xvY2F0aW9uLnByb3RvY29sKyIvLyIrZToiIn0sZmV0Y2hFbWJlZERldGFpbHM6ZnVuY3Rpb24oSSl7dmFyIGU9WigpLHQ9KGU9ZS5zcGxpdCgiPyIpWzBdKS5yZXBsYWNlKCIvd2lkZ2V0IiwiIiksaT0kWlNJUVV0aWwuc3RhdGljVVJMO2kmJmlbNV0mJih0PSJodHRwczovLyIraVs1XSksdCs9Ii92aXNpdG9yL3YyL2NoYW5uZWxzL3dlYnNpdGUiLHQrPSI/d2lkZ2V0Y29kZT0iKyR6b2hvc3Eud2lkZ2V0Y29kZSx0Kz0iJmludGVybmFsX2NoYW5uZWxfcmVxPXRydWUiO3ZhciB3PSRaU0lRVXRpbC5nZXRDb25maWdGcm9tU3RvcmFnZSgpLGE9IiI7IShRfHx0aGlzLmlzTGl2ZVByZXZpZXcoKXx8d2luZG93Ll9JU19TSUdOQVRVUkVfQ0hBVHx8d2luZG93Ll9TSVFfV0lER0VUX0xJVkVfUFJFVklFV3x8JFpTSVFDaGF0LmlzT25ib2FyZGluZygpKSYmKHQrPSImZW1iZWRfdmVyc2lvbj12MiIpLCF3fHwhdy5sYXN0X21vZGlmaWVkfHxRfHx0aGlzLmlzTGl2ZVByZXZpZXcoKXx8SXx8KHQ9dCsiJmxhc3RfbW9kaWZpZWRfdGltZT0iK3cubGFzdF9tb2RpZmllZCk7dmFyIG89JFpTSVFMU0RCLmdldCgiWkxEIiskem9ob3NxLndpZGdldGNvZGUrImF2dWlkIik7dyYmdy53aWRnZXRvYmomJihvPSRaU0lRTFNEQi5nZXQoIlpMRCIrdy53aWRnZXRvYmoubHNpZCsiYXZ1aWQiKSksbz8kWlNJUUNoYXQuYXZ1aWR2YWw9bzphKz0iYXZ1aWQiO3ZhciBzPSR6b2hvc3EudmFsdWVzJiYkem9ob3NxLnZhbHVlcy5hZ2VudDtzJiYodD10KyImYXR0ZW5kZXJfZW1haWw9IitlbmNvZGVVUklDb21wb25lbnQocykpLHcmJncudmVyc2lvbiYmKHQ9dCsiJnZlcnNpb249Iit3LnZlcnNpb24pO3ZhciBuPSRaU0lRVXRpbC5nZXRBUElMYW5ndWFnZSgpO24mJih0PXQrIiZhcGlfbGFuZ3VhZ2U9IituKTt2YXIgcj0kWlNJUVV0aWwuZ2V0QnJvd3Nlckxhbmd1YWdlKCksZD0iWkxTTEFORyIrJHpvaG9zcS53aWRnZXRjb2RlLGM9JFpTSVFMU0RCLmdldChkKTsoMD09bi5sZW5ndGgmJncud2lkZ2V0b2JqJiYxPT13LndpZGdldG9iai5sYW5nY2hhbmdldmlhYXBpfHwwIT1uLmxlbmd0aCYmdy5lbWJlZG9iaiYmdy5lbWJlZG9iai5sYW5nIT1ufHxjIT1yKSYmKHQ9dCsiJmxhbmd1YWdlX2FwaT0iKyEwKSxyJiYodD10KyImYnJvd3Nlcl9sYW5ndWFnZT0iK3IsJFpTSVFMU0RCLnNldChkLHIsODY0ZTUpKTt2YXIgbD13JiZ3Lmdlb2RldGFpbHM7JFpTSVFVdGlsLmlzRmV0Y2hHZW9EZXRhaWxzKCkmJiFsJiYoYSs9IixnZW9fZGV0YWlscyIpO3ZhciBtPXRoaXMuZ2V0RG9tYWluKCksZz13aW5kb3cuZG9jdW1lbnQudGl0bGU7bSYmKHQ9dCsiJmN1cnJlbnRfZG9tYWluPSIrZW5jb2RlVVJJQ29tcG9uZW50KG0pKSx0PXQrIiZwYWdldGl0bGU9IitlbmNvZGVVUklDb21wb25lbnQoZykuc3Vic3RyaW5nKDAsM2UzKTt0cnl7dD10KyImaXNfc2lnbmF0dXJlY2hhdD0iK19JU19TSUdOQVRVUkVfQ0hBVH1jYXRjaChlKXt9USYmMDxfV0lER0VUVFlQRSYmX1dJREdFVFRZUEU8NCYmKHQ9dCsiJndpZGdldF90eXBlPSIrX1dJREdFVFRZUEUpLHdpbmRvdy5fU0lRX1dJREdFVF9MSVZFX1BSRVZJRVcmJih0Kz0iJnNpcV93aWRnZXRfcHJldmlldz10cnVlIiksUSYmKHQ9dCsiJmlzX3ByZXZpZXc9IitRKSxhJiYodD10KyImaW5jbHVkZV9maWVsZHM9IithKTskWlNJUVV0aWwuYWpheCh0LGZ1bmN0aW9uKGUpe3ZhciB0PSRaU0lRVXRpbC5wYXJzZVRvSlNPTihlKSxpPWZ1bmN0aW9uKGUsdCl7d2luZG93LiR6c2lxUmVhZHk9JHpvaG8uc2FsZXNpcS5yZWFkeSx3aW5kb3cuJHpzaXFBZnRlclJlYWR5PSR6b2hvLnNhbGVzaXEuYWZ0ZXJSZWFkeSxkZWxldGUgd2luZG93LiR6b2hvLnNhbGVzaXE7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aS5pbm5lclRleHQ9IndpbmRvdy4kem9obz13aW5kb3cuJHpvaG8gfHwge307JHpvaG8uc2FsZXNpcT0kem9oby5zYWxlc2lxfHx7cmVhZHk6ZnVuY3Rpb24oKXt3aW5kb3cuJHpzaXFSZWFkeSgpOyR6b2hvLnNhbGVzaXEuYWZ0ZXJSZWFkeT13aW5kb3cuJHpzaXFBZnRlclJlYWR5O30sdmFsdWVzOnt9LG5vbmNlOiciKygkem9ob3NxLm5vbmNlfHwiIikrIiciKyhlPyIsd2lkZ2V0Y29kZTonIitlKyInIjoiIikrIn0iLCR6b2hvc3Eubm9uY2UmJihpLm5vbmNlPSR6b2hvc3Eubm9uY2UpLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoaSk7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9dCxhLmlkPSJ6c2lxc2NyaXB0Iiwkem9ob3NxLm5vbmNlJiYoYS5ub25jZT0kem9ob3NxLm5vbmNlKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGEpfTtpZih0LmRhdGEucmVkaXJlY3QpaSh0LmRhdGEud2MsdC5kYXRhLnJlZGlyZWN0KTtlbHNlIGlmKHQuZGF0YS5keW5hbWljX2NvbmZpZ3VyYXRpb25zLnJlZGlyZWN0X3RvX3JldmFtcCl7dmFyIGE9JHpvaG8uc2FsZXNpcS53aWRnZXRjb2RlO2koYSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgienNpcXNjcmlwdCIpLnNyYysiP3djPSIrYSl9ZWxzZXtpZih3aW5kb3cuX1dFQlNJVEVBUElSRVNQT05TRT10LmRhdGEsJFpTSVFDaGF0LmlzT25ib2FyZGluZygpKXtmb3IodmFyIG89dC5kYXRhLHM9by5jb21wb25lbnRzLG49cy5sZW5ndGgscj1bXSxkPTA7ZDxuO2QrKyktMT09WyJjYWxsIiwic2NyZWVuX3NoYXJlIl0uaW5kZXhPZihzW2RdKSYmci5wdXNoKHNbZF0pO28uY29tcG9uZW50cz1yLChvLmR5bmFtaWNfY29uZmlndXJhdGlvbnN8fHt9KS5pc3ZvaWNlbm90ZXNlbmFibGVkPSExLHdpbmRvdy5fV0VCU0lURUFQSVJFU1BPTlNFPW99dmFyIGM9dC5kYXRhLmR5bmFtaWNfY29uZmlndXJhdGlvbnM7d2luZG93Ll9JU19SRVZBTVA9d2luZG93Ll9TSVFfTkVXX0ZMT0FUfHxjLnJldmFtcF9lbmFibGVkfHxjLmVtYmVkX3JldmFtcCx3aW5kb3cuaXNTaXFGaXJzdE5hbWVDb25mRW5hYmxlZD1jLnZpc2l0b3JfbmFtZV9uZXdmbG93LHdpbmRvdy5fSEFTU1JJPWMuc3VicmVzb3VyY2VpbnRlZ3JpdHlfZW5hYmxlZCx3aW5kb3cuX0lTX1JFVkFNUCYmSWZyYW1lSGFuZGxlci5hZGRNZXNzYWdlTGlzdGVuZXIoKTt0cnl7dmFyIGw9dC5kYXRhLG09UmVzcG9uc2VGb3JtYXR0ZXIuZm9ybWF0QW5kR2V0RW1iZWREZXRpbHMobCx3KVswXS5vYmpTdHJpbmcsZz1tLndpZGdldG9iaixiPWwubm90aWZ5X2Nvb2tpZXN8fHt9LHU9bC5keW5hbWljX2NvbmZpZ3VyYXRpb25zLmNvb2tpZV9zZWdyZWdhdGlvbixwPTI9PT1iLmNvZGUmJnU7ImRlZmF1bHQiPT1sLmNvb2tpZV9wcmVmZXJlbmNlJiYoJFpTSVFVdGlsLmNvb2tpZUNvbmZpZz17aXNGdW5jdGlvbmFsaXR5OiFwLGlzQW5hbHl0aWNzOiFwfSksITE9PT1sLnByaXZhY3kmJigkWlNJUVV0aWwuY29va2llQ29uZmlnPXtpc0FuYWx5dGljczohMCxpc0Z1bmN0aW9uYWxpdHk6ITB9KTt2YXIgZj0kWlNJUUxTREIuZ2V0RnJvbUxvY2FsU3RvcmFnZSgiWlNJUSIrbC5hcHBfaWQrIi1jb29raWVfY29uZmlnIik7Zj8kWlNJUVV0aWwuY29va2llQ29uZmlnPWY6JFpTSVFMU0RCLnN0b3JlSW5Mb2NhbFN0b3JhZ2UoIlpTSVEiK2wuYXBwX2lkKyItY29va2llX2NvbmZpZyIsJFpTSVFVdGlsLmNvb2tpZUNvbmZpZyk7dmFyIGg9bC5hcHBfaWQ7aWYoJFpTSVFOb3RpZnlDb29raWUuaW5pdChnLGgpLGcpe3ZhciB2PWcuX3psZHAsUz1nLmVtYmVkbmFtZTt2JiYkWlNJUVV0aWwuY2hlY2tBbmRTZXRabGRwKHYsUyl9JHp2LmVtYmVkSGlkZURldGFpbHM9e2JyYW5kRGlzYWJsZWQ6ITEscmVzdHJpY3RlZFVSSTohMSxhbGxEZXBhcnRtZW50c0Rpc2FibGVkOiExLG91dHNpZGVCdXNpbmVzc0hvdXJzOmcuaGlkZWVtYmVkLGhpZGVXaWRnZXRPbk1vYmlsZTohKDEhPT1KU09OLnBhcnNlKGcubWRldmljZV9oaWRlKVswXXx8KCEkWlNJUUNoYXQuaXNQcmV2aWV3KCl8fCJtb2JpbGUiIT1fV0lER0VUUFJFVl9NT0RFKSYmIS9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxCQjEwfElFTW9iaWxlfE9wZXJhIE1pbmkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxvcGVyYXRvcnNCdXN5OjE9PT1KU09OLnBhcnNlKGcuaGlkZW9mZmxpbmUpWzBdfSwkWlNJUUNoYXQuaGFuZGxlRW1iZWREZXRhaWxzKG0sdyxJLGgpfWNhdGNoKGUpe319fSxmdW5jdGlvbihlKXtpZihlKXt2YXIgdD0oKGU9SlNPTi5wYXJzZShlKSkuZXJyb3J8fHt9KS5jb2RlO3QmJiEkenYuZW1iZWRIaWRlRGV0YWlscyYmKCR6di5lbWJlZEhpZGVEZXRhaWxzPXticmFuZERpc2FibGVkOjE0MDY9PT10LHJlc3RyaWN0ZWRVUkk6MTQzMj09PXQsYWxsRGVwYXJ0bWVudHNEaXNhYmxlZDoxNDMxPT09dCxvdXRzaWRlQnVzaW5lc3NIb3VyczohMSxoaWRlV2lkZ2V0T25Nb2JpbGU6ITEsb3BlcmF0b3JzQnVzeTohMX0sJFpTSVFVdGlsLnN0YXJ0QWZ0ZXJSZWFkeSgpKX19LCEwLCJ4LXNpcS1pbnRlcm5hbC1jaGFubmVsIiwhMCl9LGhhbmRsZUVtYmVkRGV0YWlsczpmdW5jdGlvbihlLHQsaSxhKXtpZihlLm5vdF9tb2RpZmllZCYmIWkpdC53aWRnZXRvYmouc3RhdHVzPWUuU1RBVFVTLHQud2lkZ2V0b2JqLmhpZGVlbWJlZD1lLmhpZGVlbWJlZCx0LmNvbW1vbmRhdGEuanNzdGF0aWNzZXJ2ZXI9ZS5qc3N0YXRpY3NlcnZlcix0LmNvbW1vbmRhdGEuaW1nc3RhdGljc2VydmVyPWUuaW1nc3RhdGljc2VydmVyLHQud2lkZ2V0b2JqLmNzc3N0YXRpY3NlcnZlcj1lLmNzc3N0YXRpY3NlcnZlcix0LmNvbW1vbmRhdGEuanNjZG5zdGF0aWNzZXJ2ZXI9ZS5qc2NkbnN0YXRpY3NlcnZlcix0LndpZGdldG9iai5jc3NjZG5zdGF0aWNzZXJ2ZXI9ZS5jc3NjZG5zdGF0aWNzZXJ2ZXIsdC5jb21tb25kYXRhLmlzQ0RORW5hYmxlZD1lLmlzQ0RORW5hYmxlZCx0LmNvbW1vbmRhdGEuaXNDRE5FbmFibGVkJiYodC5jb21tb25kYXRhLmNzc2pzbWFwcGluZz1lLmNzc2pzbWFwcGluZyksdC5jb21tb25kYXRhLm1lZGlhZmlsZXNjZG5oYXNoZXM9ZS5tZWRpYWZpbGVzY2RuaGFzaGVzLHQuY29tbW9uZGF0YS5jd3JtanNzdGF0aWNzZXJ2ZXI9ZS5jd3JtanNzdGF0aWNzZXJ2ZXIsdC5jb21tb25kYXRhLmN3dW1qc3N0YXRpY3NlcnZlcj1lLmN3dW1qc3N0YXRpY3NlcnZlcix0LmNvbW1vbmRhdGEuem1hcGFwaXVybD1lLnptYXBhcGl1cmwsdC5jb21tb25kYXRhLnptYXBhcGljc3M9ZS56bWFwYXBpY3NzLHQuY29tbW9uZGF0YS56bWFwc3RhdGljdXJsPWUuem1hcHN0YXRpY3VybCx0LmNvbW1vbmRhdGEuem1hcGFwaWtleT1lLnptYXBhcGlrZXksdC53aWRnZXRvYmoud21zanNzdGF0aWNzZXJ2ZXI9ZS53bXNqc3N0YXRpY3NlcnZlcix0LndpZGdldG9iai53aWRjc3N2ZXJzaW9uPWUud2lkY3NzdmVyc2lvbix0LmVtYmVkb2JqLmxpbmZvPWUubGluZm8sdC5lbWJlZG9iai5laW5mby5lbWJlZHN0YXR1cy5TVEFUVVM9ZS5TVEFUVVMsdC5lbWJlZG9iai5laW5mby5lbWJlZHN0YXR1cy5ERVBUTElTVD1lLkRFUFRMSVNULHQuZW1iZWRvYmouZWluZm8uZW1iZWRzdGF0dXMuZm9ybXJlbW92YWw9ZS5mb3JtcmVtb3ZhbCx0LmVtYmVkb2JqLmVpbmZvLmVtYmVkc3RhdHVzLkRFUEFSVE1FTlRJRD1lLkRFUEFSVE1FTlRJRCx0LmVtYmVkb2JqLnBhcmFtcz1lLnBhcmFtcyxlLnBpbmZvJiZ0LmVtYmVkb2JqLnBpbmZvLnBpbmZvJiYodC5lbWJlZG9iai5waW5mby5waW5mby5zY3JlZW5zaGFyaW5nPWUucGluZm8uc2NyZWVuc2hhcmluZyksdC5lbWJlZG9iai5pc3NpcXNjcmVlbnNoYXJlPWUuaXNzaXFzY3JlZW5zaGFyZSxlLnVzZXJkZXRhaWxzJiYodC53aWRnZXRvYmoudXNlcmRldGFpbHM9ZS51c2VyZGV0YWlscyx0LmVtYmVkb2JqLmVpbmZvLnVzZXJkZXRhaWxzPWUudXNlcmRldGFpbHMpLGUuZ2VvZGV0YWlscyYmKHQuZ2VvZGV0YWlscz1lLmdlb2RldGFpbHMpLGUucmVmcmVzaGFwaWxhbmcmJih0LmVtYmVkb2JqLmpzcmVzb3VyY2U9ZS5qc3Jlc291cmNlLHQuZW1iZWRvYmoubGFuZz1lLmxhbmcsdC5lbWJlZG9iai5sYW5ndWFnZT1lLmxhbmd1YWdlLHQud2lkZ2V0b2JqLnJlc291cmNlZmlsZT1lLnJlc291cmNlZmlsZSx0LndpZGdldG9iai5pMThua2V5cz1lLmkxOG5rZXlzKSxlLmhhc093blByb3BlcnR5KCJpc2dkcHJlbmFibGVkIikmJih0LmVtYmVkb2JqLnBpbmZvLnBpbmZvLmlzZ2RwcmVuYWJsZWQ9ZS5pc2dkcHJlbmFibGVkLHQuZW1iZWRvYmoucGluZm8ucGluZm8udHJhY2tpbmdwcml2YWN5Y29uZmlnPWUudHJhY2tpbmdwcml2YWN5Y29uZmlnLHQuZW1iZWRvYmoucGluZm8ucGluZm8uY2hhdHByaXZhY3ljb25maWc9ZS5jaGF0cHJpdmFjeWNvbmZpZyx0LmVtYmVkb2JqLnBpbmZvLnBpbmZvLmNvb2tpZXBvbGljeXVybD1lLmNvb2tpZXBvbGljeXVybCx0LmVtYmVkb2JqLnBpbmZvLnBpbmZvLmNoYXRjb29raWVwb2xpY3l1cmw9ZS5jaGF0Y29va2llcG9saWN5dXJsLHQuZW1iZWRvYmoucGluZm8ucGluZm8udHJhY2tpbmdwcml2YWN5c3RhdGVtZW50PWUudHJhY2tpbmdwcml2YWN5c3RhdGVtZW50LHQuZW1iZWRvYmoucGluZm8ucGluZm8uZ3Rwb2xpY3l1cmw9ZS5ndHBvbGljeXVybCksdC53aWRnZXRvYmoubGFuZ2NoYW5nZXZpYWFwaT1lLmxhbmdjaGFuZ2V2aWFhcGksdC5lbWJlZG9iai5pc21haWxjaGltcGVuYWJsZWQ9ZS5pc21haWxjaGltcGVuYWJsZWQsdC5lbWJlZG9iai5pc2F1ZGlvY2FsbGFsbG93ZWQ9ZS5pc2F1ZGlvY2FsbGFsbG93ZWQsdC5lbWJlZG9iai5jaW5mbz1lLmNpbmZvLHQuZW1iZWRvYmouaG9tZXBhZ2VfY29uZmlncz1lLmhvbWVwYWdlX2NvbmZpZ3MsZGVsZXRlIGUubm90X21vZGlmaWVkO2Vsc2V7dmFyIG89KHQ9ZSkud2lkZ2V0b2JqLmF2dWlkO2lmKG8peyRaU0lRQ2hhdC5hdnVpZHZhbD1vO3ZhciBzPSR6b2hvc3EuX2RvbWFpbj82MzA3MmU2OiIiOyRaU0lRTFNEQi5zZXRDb29raWUoIlpMRCIrdC53aWRnZXRvYmoubHNpZCsiYXZ1aWQiLG8scyksZGVsZXRlIHQud2lkZ2V0b2JqLmF2dWlkfWlmKGkpcmV0dXJufWlmKCF3aW5kb3cuX0lTX1JFVkFNUCl7dmFyIG49KCRaU0lRTFNEQi5nZXQoIlpMRCIrYSl8fHt9KS5vbmdvaW5nY2hhdHM7T2JqZWN0LmtleXMobnx8e30pLmxlbmd0aCYmKHQud2lkZ2V0b2JqLmhpZGVlbWJlZD0hMSl9JD0kWlNJUUNoYXQudXBkYXRlU2Vhc29uYWxUaGVtZSh0KSxRJiYoKCQ9YygkLF9NT0RJRklFRF9XSURHRVRfT0JKKSkuY29tbW9uZGF0YS5pc0NETkVuYWJsZWR8fCgkLmNvbW1vbmRhdGEuanNjZG5zdGF0aWNzZXJ2ZXI9dC5jb21tb25kYXRhLmpzc3RhdGljc2VydmVyLCQud2lkZ2V0b2JqLmNzc2NkbnN0YXRpY3NlcnZlcj10LndpZGdldG9iai5jc3NzdGF0aWNzZXJ2ZXIpKSxmdW5jdGlvbihlKXtlLmVtYmVkb2JqJiZlLmVtYmVkb2JqLnBpbmZvO2Q9ITB9KHQpO3ZhciByPSR6b2hvc3EucmVzZXRFc3NlbnRpYWw7JFVUU0hhbmRsZXIuaW5pdChyKSwkWlNJUVV0aWwuc3RhcnRBZnRlclJlYWR5KHQuZ2VvZGV0YWlsc3x8e30sdCksZnVuY3Rpb24oKXt2YXIgZT0kLndpZGdldHR5cGUsdD1KU09OLnBhcnNlKCQud2lkZ2V0b2JqLnN0aWNrZXIpWzFdLmRlZmF1bHQsaT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpO2kmJjAhPWkubGVuZ3RofHwoKGk9W10pWzBdPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWQiKSxkb2N1bWVudC5pbnNlcnRCZWZvcmUoZG9jdW1lbnQuYm9keSxpWzBdKSk7dmFyIGE9JC5jb21tb25kYXRhLmlzZGV2LG89JC5jb21tb25kYXRhLnNjaGVtYSxzPVooKS5zcGxpdCgiOi8vIilbMV0ucmVwbGFjZSgiL3dpZGdldCIsIiIpLG49KCQud2lkZ2V0b2JqLndpZGNzc3ZlcnNpb24sJC5jb21tb25kYXRhLmNzc3N0YXRpYywkLmNvbW1vbmRhdGEuanNzdGF0aWNzZXJ2ZXIpLHI9JC53aWRnZXRvYmouY3Nzc3RhdGljc2VydmVyLGQ9JC53aWRnZXRvYmouY3NzY2Ruc3RhdGljc2VydmVyLGM9JC5jb21tb25kYXRhLmpzY2Ruc3RhdGljc2VydmVyO3dpbmRvdy5pc2NkbmVuYWJsZWQ9JC5jb21tb25kYXRhLmlzQ0RORW5hYmxlZDt2YXIgbD0kem9ob3NxLm5vbmNlO2lzY2RuZW5hYmxlZCYmKHdpbmRvdy5jc3Nqc2xpc3Q9SlNPTi5wYXJzZSgkLmNvbW1vbmRhdGEuY3NzanNtYXBwaW5nKSksYSYmKGQ9cj1uPWM9bysiOi8vIitzLHdpbmRvdy5pc2NkbmVuYWJsZWQ9ITEsVD1GaWxlZGF0YWdldHRlci5nZXRjc3NsaXN0bWFwcGluZygpLEQ9RmlsZWRhdGFnZXR0ZXIuZ2V0anNsaXN0bWFwcGluZygpKSxRJiYoVFtTSVFfQlVUVE9OXT1bIi9zYWxlc2lxL3N0eWxlcy9idXR0b25wcmV2aWV3dGhlbWVfWkNFZnAwcGRPRDdHQzg2ZGc4SEFvZGY4VzdCVkhVYXNoUWJmR1AtUUFrbzhoajF6SmxhaXVUMTFDeHF1Ui1XRV8uY3NzIl0sVFtTSVFfUEVSU09OQUxJWkVdPVsiL3NhbGVzaXEvc3R5bGVzL3BlcnNvbmFsaXplcHJldmlld3RoZW1lX3hIWDkxR2RRc2l5OFhnMDhpRHphQ0lGa1Bva0hzRG1ielYtRUlJekhWWHk3U0dlUndoSEJEdnV6ZDlYTjgzWXVfLmNzcyJdLFRbU0lRX0ZMT0FUXT1bIi9zYWxlc2lxL3N0eWxlcy9mbG9hdGJ1dHRvbnByZXZpZXdfOFNXbTJvc0ZYbU0wQzFoV3hOV2NpTTRhTGgtT2Q4UVdoMnZCTXluU1Qwc3llU0g4SXZ6TU5zZ1REeHpqbmlFbF8uY3NzIl0sRFtTSVFfRkxPQVRdPVsiL3NhbGVzaXEvanMvZmxvYXRidXR0b25wcmV2aWV3X3ZQQlp5MjExRlMtY1BHVmRodUJHZmkyMl9raXFFS0NZQ1hRNVZ1NjJxRkY3NjU3UWNSOGF2NDdYa1NGQmVtRkZfLmpzIl0pO2Zvcih2YXIgbT1UW2VdLGc9RFtlXSxiPTA7YjxtLmxlbmd0aDtiKyspe3ZhciB1PWlzY2RuZW5hYmxlZD9tW2JdOm1bYl0ucmVwbGFjZSgvV0lER1RIRU1FL2csdCkscD1yK3UsZj0iIjtpZihpc2NkbmVuYWJsZWQpaWYoLTEhPXUuaW5kZXhPZigiV0lER1RIRU1FIikpe3ZhciBoPXUuc3BsaXQoIldJREdUSEVNRSIpO2FjdHVhbGNzc2ZpbGU9aC5qb2luKHQpO3ZhciB2PWNzc2pzbGlzdFthY3R1YWxjc3NmaWxlXTt2b2lkIDAhPT12JiYocD1kKyh1PSIvc2FsZXNpcSIraFswXSt0KyJfIit2KyJfIitoWzFdKSxmPSRaU0lRQ2hhdC5nZXRTdWJSZXNvdXJjZUludGVncml0eUF0dHIodikpfWVsc2UgcD1kK3U7dmFyIFM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO1MucmVsPSJzdHlsZXNoZWV0IixTLmhyZWY9cCx6KFMsaSwocittW2JdKS5yZXBsYWNlKC9XSURHVEhFTUUvZyx0KSwiY3NzIiksbCYmUy5zZXRBdHRyaWJ1dGUoIm5vbmNlIixsKSxmJiYoUz0kWlNJUVV0aWwuc2V0SW50ZWdyaXR5QXR0cihTLGYpKSxpWzBdLmFwcGVuZENoaWxkKFMpfWZvcihiPTA7YjxnLmxlbmd0aDtiKyspe3ZhciBJPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLHc9aXNjZG5lbmFibGVkP2dbYl06Z1tiXS5yZXBsYWNlKC9XSURHVEhFTUUvZyx0KSxfPW4rdyxFPSIiO2lmKGlzY2RuZW5hYmxlZCl7aWYoLTEhPXcuaW5kZXhPZigiV0lER1RIRU1FIikpe3ZhciBqPXcuc3BsaXQoIldJREdUSEVNRSIpO2FjdHVhbGpzZmlsZT1qLmpvaW4odCk7dmFyIHk9Y3NzanNsaXN0W2FjdHVhbGpzZmlsZV07dm9pZCAwIT09eSYmKHc9Ii9zYWxlc2lxIitqWzBdK3QrIl8iK3krIl8iK2pbMV0sRT0kWlNJUUNoYXQuZ2V0U3ViUmVzb3VyY2VJbnRlZ3JpdHlBdHRyKHkpKX1fPWMrd31JLnNyYz1fLEUmJihJLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5IixFKSxJLnNldEF0dHJpYnV0ZSgiY3Jvc3NvcmlnaW4iLCJhbm9ueW1vdXMiKSkseihJLGksKG4rdykucmVwbGFjZSgvV0lER1RIRU1FL2csdCksImpzIiksYSYmKEkuYXN5bmM9ITEpLGwmJkkuc2V0QXR0cmlidXRlKCJub25jZSIsbCksaVswXS5hcHBlbmRDaGlsZChJKX19KCksJFpTSVFVdGlsLnNldEFWVUlEQ29va2llKHQud2lkZ2V0b2JqLmxzaWQsdC5lbWJlZG9iaiYmdC5lbWJlZG9iai5jb29raWVfb3B0aW1pemF0aW9uKX0sdXBkYXRlU2Vhc29uYWxUaGVtZTpmdW5jdGlvbih0KXt0cnl7dmFyIGU9dC5lbWJlZG9iai5laW5mby5wcm9wcy5zZWFzb25hbHRoZW1lfHx7fSxpPXQuZW1iZWRvYmoudGhlbWUsYT1uZXcgRGF0ZTthLnNldEhvdXJzKDAsMCwwLDApO3ZhciBvPWEuZ2V0VGltZSgpO2lmKGUuZW5hYmxlZCYmZS50aGVtZXMpe2Zvcih2YXIgcz17fSxuPWUudGhlbWVzLmxlbmd0aCxyPTA7cjxuO3IrKyl7dmFyIGQ9ZS50aGVtZXNbcl07aWYoZC5lbmFibGVkKXtzPWQ7YnJlYWt9fXMuZXhwaXJ5X3RpbWUmJnBhcnNlSW50KHMuc3RhcnRfdGltZSk8PW8mJnBhcnNlSW50KHMuZXhwaXJ5X3RpbWUpPj1vJiYodFsic2Vhc29uYWwtdHlwZSJdPXMudHlwZSxtPXMsbD0hMCl9ZWxzZSBsPSExO2lmKGwmJiI0Ij09aSYmIXRoaXMuaXNQcmV2aWV3KCkmJih0LmVtYmVkb2JqLmVpbmZvLnByb3BzLmNvbG9yPSdbMSx7ImNvZGUiOiIjMDAwMDAwIn1dJyksbCYmMT09dC53aWRnZXR0eXBlKXt2YXIgYz0kWlNJUVV0aWwucGFyc2VUb0pTT04odC53aWRnZXRvYmouc3RpY2tlcik7Y1sxXS5kZWZhdWx0PTEsdC53aWRnZXRvYmouc3RpY2tlcj1KU09OLnN0cmluZ2lmeShjKX1yZXR1cm4gdH1jYXRjaChlKXtyZXR1cm4gdH19LGdldFNlYXNvbmFsVGhlbWVPYmo6ZnVuY3Rpb24oKXtyZXR1cm4gbX0saXNTZWFzb25hbFRoZW1lOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LGlzUHJldmlldzpmdW5jdGlvbigpe3JldHVybiBRfSxpc1NpZ25hdHVyZUNoYXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZX0saXNBZ2VudFNwY2lmaWNTaWduYXR1cmVDaGF0OmZ1bmN0aW9uKCl7cmV0dXJuIGUmJiR6b2hvc3EudmFsdWVzLmFnZW50fSx1cGRhdGVQcmV2aWV3Q29uZmlnOmZ1bmN0aW9uKCl7JD1jKCQsX01PRElGSUVEX1dJREdFVF9PQkopfSxsb2FkUG9zdE1lc3NhZ2U6ZnVuY3Rpb24oKXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcj93aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsJFpTSVFDaGF0LmhhbmRsZVBvc3RNZXNzYWdlLCExKTp3aW5kb3cuYXR0YWNoRXZlbnQoIm9ubWVzc2FnZSIsJFpTSVFDaGF0LmhhbmRsZVBvc3RNZXNzYWdlKX0sZ2V0U2NyaXB0U291cmNlOlosaXNFbWJlZEZlYXR1cmVDb25mRW5hYmxlZDpmdW5jdGlvbigpe3JldHVybiBkJiYtMSE9bG9jYXRpb24ucHJvdG9jb2wuaW5kZXhPZigiaHR0cHMiKX0sZ2V0U3ViUmVzb3VyY2VJbnRlZ3JpdHlBdHRyOmZ1bmN0aW9uKGUpe3JldHVybigkfHx7fSkuZW1iZWRvYmouc3VicmVzb3VyY2VpbnRlZ3JpdHlfZW5hYmxlZD8ic2hhMzg0LSIrZS5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKToiIn0saGFuZGxlUG9zdE1lc3NhZ2U6ZnVuY3Rpb24oZSl7dHJ5eyFlLmRhdGEubWVzc2FnZXx8IlpPSE9DTElRLUVYVE4tQ0hFQ0siIT09ZS5kYXRhLm1lc3NhZ2UudHlwZSYmIlpPSE9DTElRLVNDRUVOLVNPVVJDRS1JRCIhPT1lLmRhdGEubWVzc2FnZS50eXBlfHwkWlNJUVV0aWwuZ2V0SWZyYW1lKCkuUGVlckNvbm5lY3Rpb24uc2NyZWVuU2hhcmVFeHRuU3VjY3Nlc3MoZSk7dmFyIHQ9SlNPTi5wYXJzZShlLmRhdGEpO2lmKCJ6b2hvLnNhbGVzaXEuYXBpbWVzc2FnZSI9PT10LnR5cGUpe2lmKHQud2Vic2l0ZXJlZGlyZWN0aW9uKXJldHVybiAkWlNJUUxTREIuc3RvcmVJblNlc3Npb24oJHpvaG9zcS53aWRnZXRjb2RlKyJ6c2lxX3pmb3Jtc192aW5mbyIsdCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsZnVuY3Rpb24oKXt2YXIgZT10LnZpc2l0b3I7ZS5waG9uZT1lLmNvbnRhY3RudW1iZXIsJHpvaG9zcS52aXNpdG9yLmhhbmRsZWluZm8oZSl9KSx2b2lkIGUuc291cmNlLnBvc3RNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHt0eXBlOiJ6b2hvLnNhbGVzaXEuYXBpbWVzc2FnZS5yZWNlaXZlZCJ9KSxlLm9yaWdpbik7dmFyIGk9dC52aXNpdG9yO2kucGhvbmU9aS5jb250YWN0bnVtYmVyLCR6b2hvc3EudmlzaXRvci5oYW5kbGVpbmZvKGkpfWVsc2UgaWYoInpvaG8uc2FsZXNpcS5nZXR0cmFja2luZ2RldGFpbHMiPT09dC50eXBlKXt2YXIgYT0kVVRTSGFuZGxlci5nZXQoIl96bGR0Iik7aWYoIWEpcmV0dXJuO3ZhciBvPXt0eXBlOiJ6b2hvLnNhbGVzaXEudHJhY2tpbmdkZXRhaWxzIn07by50cmFja2luZ2RldGFpbHM9e3V2aWQ6YX0sZS5zb3VyY2UucG9zdE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkobyksIioiKX19Y2F0Y2goZSl7fX0sbm90aWZ5T25DRE5GYWlsdXJlOnp9fSgpO2lmKCEkem9oby5zYWxlc2lxLmluaXRfY2FsbGVkKXt2YXIgaXNkb21sb2FkaGFuZGxlZD0hMTt0cnl7ImFzeW5jIiE9JHpvaG8uc2FsZXNpcS5tb2RlJiYoJFpTSVFDaGF0LmluaXQoKSxpc2RvbWxvYWRoYW5kbGVkPSEwLCR6b2hvLnNhbGVzaXEuaW5pdF9jYWxsZWQ9ITApfWNhdGNoKGUpe2lzZG9tbG9hZGhhbmRsZWQ9ITF9aXNkb21sb2FkaGFuZGxlZHx8KCR6b2hvLnNhbGVzaXEuaW5pdF9jYWxsZWQ9ITAsImNvbXBsZXRlIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/JFpTSVFDaGF0LmluaXQoKTp3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcj93aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsJFpTSVFDaGF0LmluaXQpOndpbmRvdy5hdHRhY2hFdmVudCgib25sb2FkIiwkWlNJUUNoYXQuaW5pdCkpfQo="}},"time_used":92,"timings":{"blocked":-1,"dns":5,"connect":21,"send":0,"wait":24,"receive":0,"ssl":42},"alerts":{"ids":null,"analyzer":[{"sensor_name":"ultradns","sensor_type":"DNS","title":"DigiCert UltraDNS","description":"DigiCert UltraDNS","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"salesiq.zohopublic.eu","verdict":"malicious","severity":"medium","comment":"","link":"https://vercara.digicert.com/ultra-dns-public","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51508.767219283c65f4d4ca6e.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.515Z","timestamp":1785154590515,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51508.767219283c65f4d4ca6e.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b75-9e1\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4eae321b414a2d1c78cafdbea414906a\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2529,"size_decoded":1498,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2529), with no line terminators","md5":"76e3b34ef660092cb6ebcda4b1e8a0b0","sha1":"d997b9296e92721e4cfa8c5cd062150dd5a72d76","sha256":"1f4abc998292aaf8b21eb2933273369f5d7611063f098e70b47fbd27258859c0","sha512":"91d3087923640eeca24866262f097a03a730ca9ecbcab63c5851539144aca3fc7b28c2b2a340a3318f5a5f4149e8f995999a8ec0680a94a7780ac64e2ce591a3","ssdeep":"","tlshash":"6651481fb3fb1d212c234b0047d56e432330e5a315e36aece810d1ae9eda9de39b1285","first_seen":"2026-04-15T09:47:56.501715Z","last_seen":"2026-07-27T14:18:36.342904Z","times_seen":5364,"resource_available":false,"data":"LnR2LWRhdGEtbW9kZXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWV7Y29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtZGF0YS1tb2RlLS1zbmFwc2hvdHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCl9LnR2LWRhdGEtbW9kZS0tZW5kb2ZkYXl7Y29sb3I6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS00MDApfS50di1kYXRhLW1vZGUtLWNvbm5lY3RpbmcsLnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLC50di1kYXRhLW1vZGUtLWludmFsaWQsLnR2LWRhdGEtbW9kZS0tbG9hZGluZ3t2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1kZWxheWVke2NvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKX0udHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLXRhcGV7Zm9udC1zaXplOjEwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KX0udHYtZGF0YS1tb2RlLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci10YXBlOmRpcihydGwpe3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0ycHgpfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci10aWNrZXItdGFwZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbi1pbmxpbmUtc3RhcnQ6MXB4O21hcmdpbi10b3A6NHB4O3ZlcnRpY2FsLWFsaWduOnRvcH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bWFyZ2luLWxlZnQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1uby1yZWFsdGltZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1kYXRhLW1vZGUtLWZvci1jaGFydHtmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1zdGFydDo2cHh9LnR2LWRhdGEtbW9kZS0tY29ubmVjdGluZy0tZm9yLWNoYXJ0LC50di1kYXRhLW1vZGUtLWxvYWRpbmctLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLS1mb3ItY2hhcnQsLnR2LWRhdGEtbW9kZS0taW52YWxpZC0tZm9yLWNoYXJ0e2NvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItY2hhcnR7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1jaGFydC50di1kYXRhLW1vZGUtLXJlcGxheXttYXJnaW4tbGVmdDowfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXItY2FyZHtkaXNwbGF5OmlubGluZTttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtZGF0YS1tb2RlLS1mb3Itc3ltYm9sLXdpZGdldHtkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtd2lkZ2V0LC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1jYXJke2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itd2F0Y2gtbGlzdHtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4O292ZXJmbG93OnZpc2libGU7cG9pbnRlci1ldmVudHM6YXV0bzt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtbW9kZS0tZm9yLXdhdGNoLWxpc3Q6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itd2F0Y2gtbGlzdHt2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1zaXplX2xhcmdle2ZvbnQtc2l6ZToxMnB4fS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtaW5mb3tkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXN5bWJvbC1pbmZve2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itc2NyZWVuZXJ7Zm9udC1zaXplOjEwcHh9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci1zY3JlZW5lcntkaXNwbGF5Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/30200.71da076fb0197e4d5953.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.535Z","timestamp":1785154590535,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/30200.71da076fb0197e4d5953.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 86\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b73-56\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 508686b750e3207fdbdea9f5449bb686\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":86,"size_decoded":870,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"b02278d29b4e6fb9286fa4e3d93d2ce5","sha1":"0e3940c360032f59c0eb14248728f6b6d0c99cae","sha256":"6373ee883ff860f1955a9c73438e96ed35056eacf0fadb1c6ae58a57e31a5e34","sha512":"cf3ba4d72f48389a359a141bea634d0369e9ba9b4e796f108b6c71cd23e57123b60f7b390b1edba4debfc2e84ebd9bc8cefa9ab0ef5f5d70274f73ef0be4ac8c","ssdeep":"","tlshash":"ada012d2b4410450000501481120733bcab721c426940d0804c0bf2203464a19c78150","first_seen":"2026-01-13T13:30:16.848169Z","last_seen":"2026-07-27T14:22:59.593605Z","times_seen":2048,"resource_available":false,"data":"LmpzLWhpZGRlbntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5qcy1uby1wb2ludGVyLWV2ZW50c3twb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudH0="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/images/cleardot.gif","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.154.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.146Z","timestamp":1785154591146,"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://persimmontrades.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 12:16:31 GMT\r\npragma: no-cache\r\nexpires: Fri, 01 Jan 1990 00:00:00 GMT\r\ncache-control: no-cache, no-store, must-revalidate\r\nlast-modified: Tue, 22 Oct 2019 18:30:00 GMT\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":43,"size_decoded":717,"mime_type":"image/gif","magic":"GIF image data, version 89a, 1 x 1","md5":"fc94fb0c3ed8a8f909dbc7630a0987ff","sha1":"56d45f8a17f5078a20af9962c992ca4678450765","sha256":"2dfe28cbdb83f01c940de6a88ab86200154fd772d568035ac568664e52068363","sha512":"c87bf81fd70cf6434ca3a6c05ad6e9bd3f1d96f77dddad8d45ee043b126b2cb07a5cf23b4137b9d8462cd8a9adf2b463ab6de2b38c93db72d2d511ca60e3b57e","ssdeep":"","tlshash":"cb900003cac8c022c2a2c0300a0c03002bbaa8300228030ec0bc30fcec2a3a38c02000","first_seen":"2023-04-05T02:54:04Z","last_seen":"2026-07-27T14:18:32.490386Z","times_seen":80731,"resource_available":true,"data":"R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}},"time_used":55,"timings":{"blocked":-1,"dns":3,"connect":32,"send":0,"wait":18,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBNB.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.848Z","timestamp":1785154591848,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCBNB.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css?family=Allura","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.308Z","timestamp":1785154589308,"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=Allura 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://persimmontrades.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 12:16:29 GMT\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\ncache-control: private, max-age=86400\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin-allow-popups\r\ncontent-encoding: gzip\r\nserver: ESF\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":1155,"size_decoded":1126,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"07d4de2e0e43ccc2191d5ecab7c2827b","sha1":"2161807be98219085ac744dc30a6f686391e5c39","sha256":"342bc46245409dcff066a0e7996fe64d53d475b347459d607c7c94293ab6a883","sha512":"a642ef8f79f66efb71c2732eafa31af29c90c1e1256b0762e129672213f746c7641d274f77ba01cccc885ff1996ec893beeacc16d74789a317d513358d6b088c","ssdeep":"","tlshash":"2621bed60526910497431dca22de7d359d4ff1986440e435affe1889ac6ed22632671d","first_seen":"2025-09-05T14:40:44.504918Z","last_seen":"2026-07-27T12:17:29.159351Z","times_seen":280,"resource_available":false,"data":"LyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0FsbHVyYSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2FsbHVyYS92MjMvOW9SUE5Zc1FwUzR6anVBX2hBZ1dEdG8ud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdBbGx1cmEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9hbGx1cmEvdjIzLzlvUlBOWXNRcFM0emp1QV9oUWdXRHRvLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdBbGx1cmEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9hbGx1cmEvdjIzLzlvUlBOWXNRcFM0emp1QV9pd2dXLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0K"}},"time_used":103,"timings":{"blocked":-1,"dns":0,"connect":16,"send":0,"wait":33,"receive":0,"ssl":52},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/loader.html","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.082Z","timestamp":1785154590082,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/loader.html HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/frontmain/css/plugin.min.css\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\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\ncontent-type: text/html\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 556\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1238,"size_decoded":786,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"0bde7d4b3da67537eaf9188e6f8049cf","sha1":"64300fc482d01d38b40ab20e15960b6509665e5a","sha256":"5dc1ae0b875dc0d78dbc5532226f5f31b762b4d1229984f605d27bf895ab6807","sha512":"2d4d27ab5b3dd2a701a944e9b5372b40ee4f8b3267f133be7ad0d4b42528302aaa002b6132722e2ad1fe629fc3e8baf1011c8dad326062e9c0946d6f1b6eafb4","ssdeep":"","tlshash":"8d21423ec1c1150a80271154fb81e2942619825192470fa1379e7167f6cc0f756937c8","first_seen":"2023-03-07T01:03:24Z","last_seen":"2026-07-27T14:13:16.511639Z","times_seen":41410,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48L2hlYWQ+Cjxib2R5IHN0eWxlPSJjb2xvcjogIzQ0NDsgbWFyZ2luOjA7Zm9udDogbm9ybWFsIDE0cHgvMjBweCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsiPgo8ZGl2IHN0eWxlPSJoZWlnaHQ6YXV0bzsgbWluLWhlaWdodDoxMDAlOyAiPiAgICAgPGRpdiBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyB3aWR0aDo4MDBweDsgbWFyZ2luLWxlZnQ6IC00MDBweDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDogMzAlOyBsZWZ0OjUwJTsiPgogICAgICAgIDxoMSBzdHlsZT0ibWFyZ2luOjA7IGZvbnQtc2l6ZToxNTBweDsgbGluZS1oZWlnaHQ6MTUwcHg7IGZvbnQtd2VpZ2h0OmJvbGQ7Ij40MDQ8L2gxPgo8aDIgc3R5bGU9Im1hcmdpbi10b3A6MjBweDtmb250LXNpemU6IDMwcHg7Ij5Ob3QgRm91bmQNCjwvaDI+CjxwPlRoZSByZXNvdXJjZSByZXF1ZXN0ZWQgY291bGQgbm90IGJlIGZvdW5kIG9uIHRoaXMgc2VydmVyITwvcD4KPC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iY29sb3I6I2YwZjBmMDsgZm9udC1zaXplOjEycHg7bWFyZ2luOmF1dG87cGFkZGluZzowcHggMzBweCAwcHggMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTtjbGVhcjpib3RoO2hlaWdodDoxMDBweDttYXJnaW4tdG9wOi0xMDFweDtiYWNrZ3JvdW5kLWNvbG9yOiM0NzQ3NDc7Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xNSk7Ym94LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgaW5zZXQ7Ij4KPGJyPlByb3VkbHkgcG93ZXJlZCBieSAgPGEgc3R5bGU9ImNvbG9yOiNmZmY7IiBocmVmPSJodHRwOi8vd3d3LmxpdGVzcGVlZHRlY2guY29tL2Vycm9yLXBhZ2UiPkxpdGVTcGVlZCBXZWIgU2VydmVyPC9hPjxwPlBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgTGl0ZVNwZWVkIFRlY2hub2xvZ2llcyBJbmMuIGlzIG5vdCBhIHdlYiBob3N0aW5nIGNvbXBhbnkgYW5kLCBhcyBzdWNoLCBoYXMgbm8gY29udHJvbCBvdmVyIGNvbnRlbnQgZm91bmQgb24gdGhpcyBzaXRlLjwvcD48L2Rpdj48L2JvZHk+PC9odG1sPgo="}},"time_used":23,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":22,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/style.css","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.311Z","timestamp":1785154589311,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/style.css HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 15 Oct 2022 18:29:32 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 38179\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":326725,"size_decoded":38489,"mime_type":"text/css","magic":"ASCII text","md5":"f77bbf82bbf6049a6beecd00feafe632","sha1":"3b3e381902fbe79fe925ae290210a342c0c97232","sha256":"d6f5509e05ad1a69c7180859e3164e349a56b677ac314021d2b08b078640cc25","sha512":"ceb87b062e560e2523edfb834913069c6b25269c1914188c8f98f6ef6c4c4d369533716c3293445bb981a49f50e0c661c311ec030a9dd84a1176144953cd51d6","ssdeep":"6144:RXDp/JnVB32NzY7rYtEHQ+kEE3tFVa7/rKcyQzp6Zu9lGrskO0coDM+z6tqdX:V2NzY7rYtEHQ+BE3tFVa7/rKcyQzp6ZD","tlshash":"f1647424a5b70908250b88686bee6b557774c063840edcf97ecb75448f8f68895f3f8e","first_seen":"2026-06-14T14:02:22.172506Z","last_seen":"2026-07-27T12:17:29.150672Z","times_seen":4,"resource_available":false,"data":"I3RlbGVncmFtIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcG9zaXRpb246IGZpeGVkOwogICAgYm90dG9tOiAyNXB4OwogICAgbGVmdDogMjVweDsKICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT00MCk7CiAgICB6LWluZGV4OiAxMDAwOwogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyLjVzOwogICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7Cn0KCi5tLXRvcC0wIHsKICAgIG1hcmdpbi10b3A6IDAKfQoKLm0tdG9wLTUgewogICAgbWFyZ2luLXRvcDogNXB4Cn0KCi5tLXRvcC0xMCB7CiAgICBtYXJnaW4tdG9wOiAxMHB4Cn0KCi5tLXRvcC0xNSB7CiAgICBtYXJnaW4tdG9wOiAxNXB4Cn0KCi5tLXRvcC0yMCB7CiAgICBtYXJnaW4tdG9wOiAyMHB4Cn0KCi5tLXRvcC0yNSB7CiAgICBtYXJnaW4tdG9wOiAyNXB4Cn0KCi5tLXRvcC0zMCB7CiAgICBtYXJnaW4tdG9wOiAzMHB4Cn0KCi5tLXRvcC0zNSB7CiAgICBtYXJnaW4tdG9wOiAzNXB4Cn0KCi5tLXRvcC00MCB7CiAgICBtYXJnaW4tdG9wOiA0MHB4Cn0KCi5tLXRvcC00NSB7CiAgICBtYXJnaW4tdG9wOiA0NXB4Cn0KCi5tLXRvcC01MCB7CiAgICBtYXJnaW4tdG9wOiA1MHB4Cn0KCi5tLXRvcC01NSB7CiAgICBtYXJnaW4tdG9wOiA1NXB4Cn0KCi5tLXRvcC02MCB7CiAgICBtYXJnaW4tdG9wOiA2MHB4Cn0KCi5tLXRvcC02NSB7CiAgICBtYXJnaW4tdG9wOiA2NXB4Cn0KCi5tLXRvcC03MCB7CiAgICBtYXJnaW4tdG9wOiA3MHB4Cn0KCi5tLXRvcC03NSB7CiAgICBtYXJnaW4tdG9wOiA3NXB4Cn0KCi5tLXRvcC04MCB7CiAgICBtYXJnaW4tdG9wOiA4MHB4Cn0KCi5tLXRvcC04NSB7CiAgICBtYXJnaW4tdG9wOiA4NXB4Cn0KCi5tLXRvcC05MCB7CiAgICBtYXJnaW4tdG9wOiA5MHB4Cn0KCi5tLXRvcC05NSB7CiAgICBtYXJnaW4tdG9wOiA5NXB4Cn0KCi5tLXRvcC0xMDAgewogICAgbWFyZ2luLXRvcDogMTAwcHgKfQoKLm0tdG9wLTEwNSB7CiAgICBtYXJnaW4tdG9wOiAxMDVweAp9CgoubS10b3AtMTEwIHsKICAgIG1hcmdpbi10b3A6IDExMHB4Cn0KCi5tLXRvcC0xMTUgewogICAgbWFyZ2luLXRvcDogMTE1cHgKfQoKLm0tdG9wLTEyMCB7CiAgICBtYXJnaW4tdG9wOiAxMjBweAp9CgoubS10b3AtMTI1IHsKICAgIG1hcmdpbi10b3A6IDEyNXB4Cn0KCi5tLXRvcC0xMzAgewogICAgbWFyZ2luLXRvcDogMTMwcHgKfQoKLm0tdG9wLTEzNSB7CiAgICBtYXJnaW4tdG9wOiAxMzVweAp9CgoubS10b3AtMTQwIHsKICAgIG1hcmdpbi10b3A6IDE0MHB4Cn0KCi5tLXRvcC0xNDUgewogICAgbWFyZ2luLXRvcDogMTQ1cHgKfQoKLm0tdG9wLTE1MCB7CiAgICBtYXJnaW4tdG9wOiAxNTBweAp9CgoubS1yaWdodC0wIHsKICAgIG1hcmdpbi1yaWdodDogMAp9CgoubS1yaWdodC01IHsKICAgIG1hcmdpbi1yaWdodDogNXB4Cn0KCi5tLXJpZ2h0LTEwIHsKICAgIG1hcmdpbi1yaWdodDogMTBweAp9CgoubS1yaWdodC0xNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDE1cHgKfQoKLm0tcmlnaHQtMjAgewogICAgbWFyZ2luLXJpZ2h0OiAyMHB4Cn0KCi5tLXJpZ2h0LTI1IHsKICAgIG1hcmdpbi1yaWdodDogMjVweAp9CgoubS1yaWdodC0zMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDMwcHgKfQoKLm0tcmlnaHQtMzUgewogICAgbWFyZ2luLXJpZ2h0OiAzNXB4Cn0KCi5tLXJpZ2h0LTQwIHsKICAgIG1hcmdpbi1yaWdodDogNDBweAp9CgoubS1yaWdodC00NSB7CiAgICBtYXJnaW4tcmlnaHQ6IDQ1cHgKfQoKLm0tcmlnaHQtNTAgewogICAgbWFyZ2luLXJpZ2h0OiA1MHB4Cn0KCi5tLXJpZ2h0LTU1IHsKICAgIG1hcmdpbi1yaWdodDogNTVweAp9CgoubS1yaWdodC02MCB7CiAgICBtYXJnaW4tcmlnaHQ6IDYwcHgKfQoKLm0tcmlnaHQtNjUgewogICAgbWFyZ2luLXJpZ2h0OiA2NXB4Cn0KCi5tLXJpZ2h0LTcwIHsKICAgIG1hcmdpbi1yaWdodDogNzBweAp9CgoubS1yaWdodC03NSB7CiAgICBtYXJnaW4tcmlnaHQ6IDc1cHgKfQoKLm0tcmlnaHQtODAgewogICAgbWFyZ2luLXJpZ2h0OiA4MHB4Cn0KCi5tLXJpZ2h0LTg1IHsKICAgIG1hcmdpbi1yaWdodDogODVweAp9CgoubS1yaWdodC05MCB7CiAgICBtYXJnaW4tcmlnaHQ6IDkwcHgKfQoKLm0tcmlnaHQtOTUgewogICAgbWFyZ2luLXJpZ2h0OiA5NXB4Cn0KCi5tLXJpZ2h0LTEwMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDEwMHB4Cn0KCi5tLXJpZ2h0LTEwNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEwNXB4Cn0KCi5tLXJpZ2h0LTExMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDExMHB4Cn0KCi5tLXJpZ2h0LTExNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDExNXB4Cn0KCi5tLXJpZ2h0LTEyMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDEyMHB4Cn0KCi5tLXJpZ2h0LTEyNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEyNXB4Cn0KCi5tLXJpZ2h0LTEzMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDEzMHB4Cn0KCi5tLXJpZ2h0LTEzNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEzNXB4Cn0KCi5tLXJpZ2h0LTE0MCB7CiAgICBtYXJnaW4tcmlnaHQ6IDE0MHB4Cn0KCi5tLXJpZ2h0LTE0NSB7CiAgICBtYXJnaW4tcmlnaHQ6IDE0NXB4Cn0KCi5tLXJpZ2h0LTE1MCB7CiAgICBtYXJnaW4tcmlnaHQ6IDE1MHB4Cn0KCi5tLWJvdHRvbS0wIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLm0tYm90dG9tLTUgewogICAgbWFyZ2luLWJvdHRvbTogNXB4Cn0KCi5tLWJvdHRvbS0xMCB7CiAgICBtYXJnaW4tYm90dG9tOiAxMHB4Cn0KCi5tLWJvdHRvbS0xNSB7CiAgICBtYXJnaW4tYm90dG9tOiAxNXB4Cn0KCi5tLWJvdHRvbS0yMCB7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Cn0KCi5tLWJvdHRvbS0yNSB7CiAgICBtYXJnaW4tYm90dG9tOiAyNXB4Cn0KCi5tLWJvdHRvbS0zMCB7CiAgICBtYXJnaW4tYm90dG9tOiAzMHB4Cn0KCi5tLWJvdHRvbS0zNSB7CiAgICBtYXJnaW4tYm90dG9tOiAzNXB4Cn0KCi5tLWJvdHRvbS00MCB7CiAgICBtYXJnaW4tYm90dG9tOiA0MHB4Cn0KCi5tLWJvdHRvbS00NSB7CiAgICBtYXJnaW4tYm90dG9tOiA0NXB4Cn0KCi5tLWJvdHRvbS01MCB7CiAgICBtYXJnaW4tYm90dG9tOiA1MHB4Cn0KCi5tLWJvdHRvbS01NSB7CiAgICBtYXJnaW4tYm90dG9tOiA1NXB4Cn0KCi5tLWJvdHRvbS02MCB7CiAgICBtYXJnaW4tYm90dG9tOiA2MHB4Cn0KCi5tLWJvdHRvbS02NSB7CiAgICBtYXJnaW4tYm90dG9tOiA2NXB4Cn0KCi5tLWJvdHRvbS03MCB7CiAgICBtYXJnaW4tYm90dG9tOiA3MHB4Cn0KCi5tLWJvdHRvbS03NSB7CiAgICBtYXJnaW4tYm90dG9tOiA3NXB4Cn0KCi5tLWJvdHRvbS04MCB7CiAgICBtYXJnaW4tYm90dG9tOiA4MHB4Cn0KCi5tLWJvdHRvbS04NSB7CiAgICBtYXJnaW4tYm90dG9tOiA4NXB4Cn0KCi5tLWJvdHRvbS05MCB7CiAgICBtYXJnaW4tYm90dG9tOiA5MHB4Cn0KCi5tLWJvdHRvbS05NSB7CiAgICBtYXJnaW4tYm90dG9tOiA5NXB4Cn0KCi5tLWJvdHRvbS0xMDAgewogICAgbWFyZ2luLWJvdHRvbTogMTAwcHgKfQoKLm0tYm90dG9tLTEwNSB7CiAgICBtYXJnaW4tYm90dG9tOiAxMDVweAp9CgoubS1ib3R0b20tMTEwIHsKICAgIG1hcmdpbi1ib3R0b206IDExMHB4Cn0KCi5tLWJvdHRvbS0xMTUgewogICAgbWFyZ2luLWJvdHRvbTogMTE1cHgKfQoKLm0tYm90dG9tLTEyMCB7CiAgICBtYXJnaW4tYm90dG9tOiAxMjBweAp9CgoubS1ib3R0b20tMTI1IHsKICAgIG1hcmdpbi1ib3R0b206IDEyNXB4Cn0KCi5tLWJvdHRvbS0xMzAgewogICAgbWFyZ2luLWJvdHRvbTogMTMwcHgKfQoKLm0tYm90dG9tLTEzNSB7CiAgICBtYXJnaW4tYm90dG9tOiAxMzVweAp9CgoubS1ib3R0b20tMTQwIHsKICAgIG1hcmdpbi1ib3R0b206IDE0MHB4Cn0KCi5tLWJvdHRvbS0xNDUgewogICAgbWFyZ2luLWJvdHRvbTogMTQ1cHgKfQoKLm0tYm90dG9tLTE1MCB7CiAgICBtYXJnaW4tYm90dG9tOiAxNTBweAp9CgoubS1sZWZ0LTAgewogICAgbWFyZ2luLWxlZnQ6IDAKfQoKLm0tbGVmdC01IHsKICAgIG1hcmdpbi1sZWZ0OiA1cHgKfQoKLm0tbGVmdC0xMCB7CiAgICBtYXJnaW4tbGVmdDogMTBweAp9CgoubS1sZWZ0LTE1IHsKICAgIG1hcmdpbi1sZWZ0OiAxNXB4Cn0KCi5tLWxlZnQtMjAgewogICAgbWFyZ2luLWxlZnQ6IDIwcHgKfQoKLm0tbGVmdC0yNSB7CiAgICBtYXJnaW4tbGVmdDogMjVweAp9CgoubS1sZWZ0LTMwIHsKICAgIG1hcmdpbi1sZWZ0OiAzMHB4Cn0KCi5tLWxlZnQtMzUgewogICAgbWFyZ2luLWxlZnQ6IDM1cHgKfQoKLm0tbGVmdC00MCB7CiAgICBtYXJnaW4tbGVmdDogNDBweAp9CgoubS1sZWZ0LTQ1IHsKICAgIG1hcmdpbi1sZWZ0OiA0NXB4Cn0KCi5tLWxlZnQtNTAgewogICAgbWFyZ2luLWxlZnQ6IDUwcHgKfQoKLm0tbGVmdC01NSB7CiAgICBtYXJnaW4tbGVmdDogNTVweAp9CgoubS1sZWZ0LTYwIHsKICAgIG1hcmdpbi1sZWZ0OiA2MHB4Cn0KCi5tLWxlZnQtNjUgewogICAgbWFyZ2luLWxlZnQ6IDY1cHgKfQoKLm0tbGVmdC03MCB7CiAgICBtYXJnaW4tbGVmdDogNzBweAp9CgoubS1sZWZ0LTc1IHsKICAgIG1hcmdpbi1sZWZ0OiA3NXB4Cn0KCi5tLWxlZnQtODAgewogICAgbWFyZ2luLWxlZnQ6IDgwcHgKfQoKLm0tbGVmdC04NSB7CiAgICBtYXJnaW4tbGVmdDogODVweAp9CgoubS1sZWZ0LTkwIHsKICAgIG1hcmdpbi1sZWZ0OiA5MHB4Cn0KCi5tLWxlZnQtOTUgewogICAgbWFyZ2luLWxlZnQ6IDk1cHgKfQoKLm0tbGVmdC0xMDAgewogICAgbWFyZ2luLWxlZnQ6IDEwMHB4Cn0KCi5tLWxlZnQtMTA1IHsKICAgIG1hcmdpbi1sZWZ0OiAxMDVweAp9CgoubS1sZWZ0LTExMCB7CiAgICBtYXJnaW4tbGVmdDogMTEwcHgKfQoKLm0tbGVmdC0xMTUgewogICAgbWFyZ2luLWxlZnQ6IDExNXB4Cn0KCi5tLWxlZnQtMTIwIHsKICAgIG1hcmdpbi1sZWZ0OiAxMjBweAp9CgoubS1sZWZ0LTEyNSB7CiAgICBtYXJnaW4tbGVmdDogMTI1cHgKfQoKLm0tbGVmdC0xMzAgewogICAgbWFyZ2luLWxlZnQ6IDEzMHB4Cn0KCi5tLWxlZnQtMTM1IHsKICAgIG1hcmdpbi1sZWZ0OiAxMzVweAp9CgoubS1sZWZ0LTE0MCB7CiAgICBtYXJnaW4tbGVmdDogMTQwcHgKfQoKLm0tbGVmdC0xNDUgewogICAgbWFyZ2luLWxlZnQ6IDE0NXB4Cn0KCi5tLWxlZnQtMTUwIHsKICAgIG1hcmdpbi1sZWZ0OiAxNTBweAp9CgoucC1sZWZ0LTAgewogICAgcGFkZGluZy1sZWZ0OiAwCn0KCi5wLWxlZnQtNSB7CiAgICBwYWRkaW5nLWxlZnQ6IDVweAp9CgoucC1sZWZ0LTEwIHsKICAgIHBhZGRpbmctbGVmdDogMTBweAp9CgoucC1sZWZ0LTE1IHsKICAgIHBhZGRpbmctbGVmdDogMTVweAp9CgoucC1sZWZ0LTIwIHsKICAgIHBhZGRpbmctbGVmdDogMjBweAp9CgoucC1sZWZ0LTI1IHsKICAgIHBhZGRpbmctbGVmdDogMjVweAp9CgoucC1sZWZ0LTMwIHsKICAgIHBhZGRpbmctbGVmdDogMzBweAp9CgoucC1sZWZ0LTM1IHsKICAgIHBhZGRpbmctbGVmdDogMzVweAp9CgoucC1sZWZ0LTQwIHsKICAgIHBhZGRpbmctbGVmdDogNDBweAp9CgoucC1sZWZ0LTQ1IHsKICAgIHBhZGRpbmctbGVmdDogNDVweAp9CgoucC1sZWZ0LTUwIHsKICAgIHBhZGRpbmctbGVmdDogNTBweAp9CgoucC1sZWZ0LTU1IHsKICAgIHBhZGRpbmctbGVmdDogNTVweAp9CgoucC1sZWZ0LTYwIHsKICAgIHBhZGRpbmctbGVmdDogNjBweAp9CgoucC1sZWZ0LTY1IHsKICAgIHBhZGRpbmctbGVmdDogNjVweAp9CgoucC1sZWZ0LTcwIHsKICAgIHBhZGRpbmctbGVmdDogNzBweAp9CgoucC1sZWZ0LTc1IHsKICAgIHBhZGRpbmctbGVmdDogNzVweAp9CgoucC1sZWZ0LTgwIHsKICAgIHBhZGRpbmctbGVmdDogODBweAp9CgoucC1sZWZ0LTg1IHsKICAgIHBhZGRpbmctbGVmdDogODVweAp9CgoucC1sZWZ0LTkwIHsKICAgIHBhZGRpbmctbGVmdDogOTBweAp9CgoucC1sZWZ0LTk1IHsKICAgIHBhZGRpbmctbGVmdDogOTVweAp9CgoucC1sZWZ0LTEwMCB7CiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4Cn0KCi5wLWxlZnQtMTA1IHsKICAgIHBhZGRpbmctbGVmdDogMTA1cHgKfQoKLnAtbGVmdC0xMTAgewogICAgcGFkZGluZy1sZWZ0OiAxMTBweAp9CgoucC1sZWZ0LTExNSB7CiAgICBwYWRkaW5nLWxlZnQ6IDExNXB4Cn0KCi5wLWxlZnQtMTIwIHsKICAgIHBhZGRpbmctbGVmdDogMTIwcHgKfQoKLnAtbGVmdC0xMjUgewogICAgcGFkZGluZy1sZWZ0OiAxMjVweAp9CgoucC1sZWZ0LTEzMCB7CiAgICBwYWRkaW5nLWxlZnQ6IDEzMHB4Cn0KCi5wLWxlZnQtMTM1IHsKICAgIHBhZGRpbmctbGVmdDogMTM1cHgKfQoKLnAtbGVmdC0xNDAgewogICAgcGFkZGluZy1sZWZ0OiAxNDBweAp9CgoucC1sZWZ0LTE0NSB7CiAgICBwYWRkaW5nLWxlZnQ6IDE0NXB4Cn0KCi5wLWxlZnQtMTUwIHsKICAgIHBhZGRpbmctbGVmdDogMTUwcHgKfQoKLnAtcmlnaHQtMCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwCn0KCi5wLXJpZ2h0LTUgewogICAgcGFkZGluZy1yaWdodDogNXB4Cn0KCi5wLXJpZ2h0LTEwIHsKICAgIHBhZGRpbmctcmlnaHQ6IDEwcHgKfQoKLnAtcmlnaHQtMTUgewogICAgcGFkZGluZy1yaWdodDogMTVweAp9CgoucC1yaWdodC0yMCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4Cn0KCi5wLXJpZ2h0LTI1IHsKICAgIHBhZGRpbmctcmlnaHQ6IDI1cHgKfQoKLnAtcmlnaHQtMzAgewogICAgcGFkZGluZy1yaWdodDogMzBweAp9CgoucC1yaWdodC0zNSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4Cn0KCi5wLXJpZ2h0LTQwIHsKICAgIHBhZGRpbmctcmlnaHQ6IDQwcHgKfQoKLnAtcmlnaHQtNDUgewogICAgcGFkZGluZy1yaWdodDogNDVweAp9CgoucC1yaWdodC01MCB7CiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4Cn0KCi5wLXJpZ2h0LTU1IHsKICAgIHBhZGRpbmctcmlnaHQ6IDU1cHgKfQoKLnAtcmlnaHQtNjAgewogICAgcGFkZGluZy1yaWdodDogNjBweAp9CgoucC1yaWdodC02NSB7CiAgICBwYWRkaW5nLXJpZ2h0OiA2NXB4Cn0KCi5wLXJpZ2h0LTcwIHsKICAgIHBhZGRpbmctcmlnaHQ6IDcwcHgKfQoKLnAtcmlnaHQtNzUgewogICAgcGFkZGluZy1yaWdodDogNzVweAp9CgoucC1yaWdodC04MCB7CiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4Cn0KCi5wLXJpZ2h0LTg1IHsKICAgIHBhZGRpbmctcmlnaHQ6IDg1cHgKfQoKLnAtcmlnaHQtOTAgewogICAgcGFkZGluZy1yaWdodDogOTBweAp9CgoucC1yaWdodC05NSB7CiAgICBwYWRkaW5nLXJpZ2h0OiA5NXB4Cn0KCi5wLXJpZ2h0LTEwMCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweAp9CgoucC1yaWdodC0xMDUgewogICAgcGFkZGluZy1yaWdodDogMTA1cHgKfQoKLnAtcmlnaHQtMTEwIHsKICAgIHBhZGRpbmctcmlnaHQ6IDExMHB4Cn0KCi5wLXJpZ2h0LTExNSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxMTVweAp9CgoucC1yaWdodC0xMjAgewogICAgcGFkZGluZy1yaWdodDogMTIwcHgKfQoKLnAtcmlnaHQtMTI1IHsKICAgIHBhZGRpbmctcmlnaHQ6IDEyNXB4Cn0KCi5wLXJpZ2h0LTEzMCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxMzBweAp9CgoucC1yaWdodC0xMzUgewogICAgcGFkZGluZy1yaWdodDogMTM1cHgKfQoKLnAtcmlnaHQtMTQwIHsKICAgIHBhZGRpbmctcmlnaHQ6IDE0MHB4Cn0KCi5wLXJpZ2h0LTE0NSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxNDVweAp9CgoucC1yaWdodC0xNTAgewogICAgcGFkZGluZy1yaWdodDogMTUwcHgKfQoKLnAtdG9wLTAgewogICAgcGFkZGluZy10b3A6IDAKfQoKLnAtdG9wLTUgewogICAgcGFkZGluZy10b3A6IDVweAp9CgoucC10b3AtMTAgewogICAgcGFkZGluZy10b3A6IDEwcHgKfQoKLnAtdG9wLTE1IHsKICAgIHBhZGRpbmctdG9wOiAxNXB4Cn0KCi5wLXRvcC0yMCB7CiAgICBwYWRkaW5nLXRvcDogMjBweAp9CgoucC10b3AtMjUgewogICAgcGFkZGluZy10b3A6IDI1cHgKfQoKLnAtdG9wLTMwIHsKICAgIHBhZGRpbmctdG9wOiAzMHB4Cn0KCi5wLXRvcC0zNSB7CiAgICBwYWRkaW5nLXRvcDogMzVweAp9CgoucC10b3AtNDAgewogICAgcGFkZGluZy10b3A6IDQwcHgKfQoKLnAtdG9wLTQ1IHsKICAgIHBhZGRpbmctdG9wOiA0NXB4Cn0KCi5wLXRvcC01MCB7CiAgICBwYWRkaW5nLXRvcDogNTBweAp9CgoucC10b3AtNTUgewogICAgcGFkZGluZy10b3A6IDU1cHgKfQoKLnAtdG9wLTYwIHsKICAgIHBhZGRpbmctdG9wOiA2MHB4Cn0KCi5wLXRvcC02NSB7CiAgICBwYWRkaW5nLXRvcDogNjVweAp9CgoucC10b3AtNzAgewogICAgcGFkZGluZy10b3A6IDcwcHgKfQoKLnAtdG9wLTc1IHsKICAgIHBhZGRpbmctdG9wOiA3NXB4Cn0KCi5wLXRvcC04MCB7CiAgICBwYWRkaW5nLXRvcDogODBweAp9CgoucC10b3AtODUgewogICAgcGFkZGluZy10b3A6IDg1cHgKfQoKLnAtdG9wLTkwIHsKICAgIHBhZGRpbmctdG9wOiA5MHB4Cn0KCi5wLXRvcC05NSB7CiAgICBwYWRkaW5nLXRvcDogOTVweAp9CgoucC10b3AtMTAwIHsKICAgIHBhZGRpbmctdG9wOiAxMDBweAp9CgoucC10b3AtMTA1IHsKICAgIHBhZGRpbmctdG9wOiAxMDVweAp9CgoucC10b3AtMTEwIHsKICAgIHBhZGRpbmctdG9wOiAxMTBweAp9CgoucC10b3AtMTE1IHsKICAgIHBhZGRpbmctdG9wOiAxMTVweAp9CgoucC10b3AtMTIwIHsKICAgIHBhZGRpbmctdG9wOiAxMjBweAp9CgoucC10b3AtMTI1IHsKICAgIHBhZGRpbmctdG9wOiAxMjVweAp9CgoucC10b3AtMTMwIHsKICAgIHBhZGRpbmctdG9wOiAxMzBweAp9CgoucC10b3AtMTM1IHsKICAgIHBhZGRpbmctdG9wOiAxMzVweAp9CgoucC10b3AtMTQwIHsKICAgIHBhZGRpbmctdG9wOiAxNDBweAp9CgoucC10b3AtMTQ1IHsKICAgIHBhZGRpbmctdG9wOiAxNDVweAp9CgoucC10b3AtMTUwIHsKICAgIHBhZGRpbmctdG9wOiAxNTBweAp9CgoucC1ib3R0b20tMCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMAp9CgoucC1ib3R0b20tNSB7CiAgICBwYWRkaW5nLWJvdHRvbTogNXB4Cn0KCi5wLWJvdHRvbS0xMCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMTBweAp9CgoucC1ib3R0b20tMTUgewogICAgcGFkZGluZy1ib3R0b206IDE1cHgKfQoKLnAtYm90dG9tLTIwIHsKICAgIHBhZGRpbmctYm90dG9tOiAyMHB4Cn0KCi5wLWJvdHRvbS0yNSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMjVweAp9CgoucC1ib3R0b20tMzAgewogICAgcGFkZGluZy1ib3R0b206IDMwcHgKfQoKLnAtYm90dG9tLTM1IHsKICAgIHBhZGRpbmctYm90dG9tOiAzNXB4Cn0KCi5wLWJvdHRvbS00MCB7CiAgICBwYWRkaW5nLWJvdHRvbTogNDBweAp9CgoucC1ib3R0b20tNDUgewogICAgcGFkZGluZy1ib3R0b206IDQ1cHgKfQoKLnAtYm90dG9tLTUwIHsKICAgIHBhZGRpbmctYm90dG9tOiA1MHB4Cn0KCi5wLWJvdHRvbS01NSB7CiAgICBwYWRkaW5nLWJvdHRvbTogNTVweAp9CgoucC1ib3R0b20tNjAgewogICAgcGFkZGluZy1ib3R0b206IDYwcHgKfQoKLnAtYm90dG9tLTY1IHsKICAgIHBhZGRpbmctYm90dG9tOiA2NXB4Cn0KCi5wLWJvdHRvbS03MCB7CiAgICBwYWRkaW5nLWJvdHRvbTogNzBweAp9CgoucC1ib3R0b20tNzUgewogICAgcGFkZGluZy1ib3R0b206IDc1cHgKfQoKLnAtYm90dG9tLTgwIHsKICAgIHBhZGRpbmctYm90dG9tOiA4MHB4Cn0KCi5wLWJvdHRvbS04NSB7CiAgICBwYWRkaW5nLWJvdHRvbTogODVweAp9CgoucC1ib3R0b20tOTAgewogICAgcGFkZGluZy1ib3R0b206IDkwcHgKfQoKLnAtYm90dG9tLTk1IHsKICAgIHBhZGRpbmctYm90dG9tOiA5NXB4Cn0KCi5wLWJvdHRvbS0xMDAgewogICAgcGFkZGluZy1ib3R0b206IDEwMHB4Cn0KCi5wLWJvdHRvbS0xMDUgewogICAgcGFkZGluZy1ib3R0b206IDEwNXB4Cn0KCi5wLWJvdHRvbS0xMTAgewogICAgcGFkZGluZy1ib3R0b206IDExMHB4Cn0KCi5wLWJvdHRvbS0xMTUgewogICAgcGFkZGluZy1ib3R0b206IDExNXB4Cn0KCi5wLWJvdHRvbS0xMjAgewogICAgcGFkZGluZy1ib3R0b206IDEyMHB4Cn0KCi5wLWJvdHRvbS0xMjUgewogICAgcGFkZGluZy1ib3R0b206IDEyNXB4Cn0KCi5wLWJvdHRvbS0xMzAgewogICAgcGFkZGluZy1ib3R0b206IDEzMHB4Cn0KCi5wLWJvdHRvbS0xMzUgewogICAgcGFkZGluZy1ib3R0b206IDEzNXB4Cn0KCi5wLWJvdHRvbS0xNDAgewogICAgcGFkZGluZy1ib3R0b206IDE0MHB4Cn0KCi5wLWJvdHRvbS0xNDUgewogICAgcGFkZGluZy1ib3R0b206IDE0NXB4Cn0KCi5wLWJvdHRvbS0xNTAgewogICAgcGFkZGluZy1ib3R0b206IDE1MHB4Cn0KCi5oLTUgewogICAgaGVpZ2h0OiA1cHgKfQoKLmgtMTAgewogICAgaGVpZ2h0OiAxMHB4Cn0KCi5oLTE1IHsKICAgIGhlaWdodDogMTVweAp9CgouaC0yMCB7CiAgICBoZWlnaHQ6IDIwcHgKfQoKLmgtMjUgewogICAgaGVpZ2h0OiAyNXB4Cn0KCi5oLTMwIHsKICAgIGhlaWdodDogMzBweAp9CgouaC0zNSB7CiAgICBoZWlnaHQ6IDM1cHgKfQoKLmgtNDAgewogICAgaGVpZ2h0OiA0MHB4Cn0KCi5oLTQ1IHsKICAgIGhlaWdodDogNDVweAp9CgouaC01MCB7CiAgICBoZWlnaHQ6IDUwcHgKfQoKLmgtNTUgewogICAgaGVpZ2h0OiA1NXB4Cn0KCi5oLTYwIHsKICAgIGhlaWdodDogNjBweAp9CgouaC02NSB7CiAgICBoZWlnaHQ6IDY1cHgKfQoKLmgtNzAgewogICAgaGVpZ2h0OiA3MHB4Cn0KCi5oLTc1IHsKICAgIGhlaWdodDogNzVweAp9CgouaC04MCB7CiAgICBoZWlnaHQ6IDgwcHgKfQoKLmgtODUgewogICAgaGVpZ2h0OiA4NXB4Cn0KCi5oLTkwIHsKICAgIGhlaWdodDogOTBweAp9CgouaC05NSB7CiAgICBoZWlnaHQ6IDk1cHgKfQoKLmgtMTAwIHsKICAgIGhlaWdodDogMTAwcHgKfQoKLmgtMTA1IHsKICAgIGhlaWdodDogMTA1cHgKfQoKLmgtMTEwIHsKICAgIGhlaWdodDogMTEwcHgKfQoKLmgtMTE1IHsKICAgIGhlaWdodDogMTE1cHgKfQoKLmgtMTIwIHsKICAgIGhlaWdodDogMTIwcHgKfQoKLmgtMTI1IHsKICAgIGhlaWdodDogMTI1cHgKfQoKLmgtMTMwIHsKICAgIGhlaWdodDogMTMwcHgKfQoKLmgtMTM1IHsKICAgIGhlaWdodDogMTM1cHgKfQoKLmgtMTQwIHsKICAgIGhlaWdodDogMTQwcHgKfQoKLmgtMTQ1IHsKICAgIGhlaWdodDogMTQ1cHgKfQoKLmgtMTUwIHsKICAgIGhlaWdodDogMTUwcHgKfQoKLmNhcnQtdGFibGUgLmNhcnQtc2luZ2xlIC5yZW1vdmUgYSwKLmNvbG9yLXByaW1hcnksCi5jb3VudGVyLmNvdW50ZXItLTQgLmNvdW50ZXJfc2luZ2xlIC52YWx1ZSwKLmVycm9yLXdyYXBwZXIgLmVycm9yLWNvbnRlbnRzIHAgYTpob3ZlciwKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faXRlbXMgLmNhcnRfaW5mbyBwIHNwYW4sCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9pbmZvPmE6aG92ZXIsCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9yZW1vdmUgc3BhbiwKLnBvc3QtLWNhcmQgLmNhcmQtYm9keSAucG9zdC1tZXRhIGxpIGE6aG92ZXIsCi5wcmljaW5nIC5wcmljaW5nX190aXRsZSBoNCwKLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgLnRhYi1wYW5lIC50YWJfdGV4dF9tb2R1bGUgLnRhYl90ZXh0X21vZHVsZV9fc3VidGl0bGUsCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlLAoudGVhbS1maXZlIC5jb250ZW50IGg2IGE6aG92ZXIsCi50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXIgLnllYXIsCmZvb3Rlci5mb290ZXItLWxpZ2h0IC53aWRnZXQgdWwubGlua3MgbGkgYTpob3ZlciwKZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9fc21hbGwgLmluZm9fbGlua3MgbGkgYTpob3ZlciwKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1saWdodCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rcyBsaSBhOmhvdmVyLApmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfbWVudV9pdGVtcyB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5iZy1wcmltYXJ5LAouZG90LWxpZ2h0IC5vd2wtZG90LmFjdGl2ZSBzcGFuLAouZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1zb3J0IHVsIGxpLmFjdGl2ZSwKLmZpbHRlci13cmFwcGVyIC5maWx0ZXItc29ydCB1bCBsaTpob3ZlciwKLmZsaXAtY2FyZCAuZmxpcC1vdmVybGF5MiwKLmdvX3RvcCwKLmludHJvLXRocmVlOmJlZm9yZSwKLmludHJvLXR3bywKLm5hdi1jaXJjbGUgYnV0dG9uOmhvdmVyLAoubmF2LWNpcmNsZS5uYXYtY2lyY2xlLS1saWdodCBidXR0b246aG92ZXIsCi5uYXYtY2lyY2xlLm5hdi1jaXJjbGUtLWxpZ2h0ZW4gYnV0dG9uOmhvdmVyLAoubmF2LXBpbGxzIC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlLAoubmF2LXBpbGxzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIsCi5uYXYtc3F1YXJlIGJ1dHRvbjpob3ZlciwKLm5hdi1zcXVhcmUubmF2LXNxdWFyZS1kYXJrIGJ1dHRvbjpob3ZlciwKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faXRlbXMgLml0ZW1zIC5pdGVtX3JlbW92ZTpob3ZlciBzcGFuLAoub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sCi5wbGF5LWJ0bjpob3ZlciwKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gLmxpbms6aG92ZXIsCmZvb3Rlci5mb290ZXI0IC5zb2NpYWwuc3F1YXJlIHVsIGxpIGE6aG92ZXIsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tY29sb3JlZCB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0Cn0KCi5ibG9nLWNhcm91c2VsLW9uZSAucG9zdC1zaW5nbGUgLnBvc3QtYm90dG9tIGE6aG92ZXIsCi5jYXJkIC5jYXJkLWJvZHkgaDYgYTpob3ZlciwKLmNhcmQtZm91ciAuY2FyZC1ib2R5IGg1OmhvdmVyIGEsCi5jYXJkLXByb2R1Y3QgLmNhcmQtYm9keSBoNiBhOmhvdmVyLAouY29sb3Itc2Vjb25kYXJ5LAouY29udGVudC0tYmxvY2s0IGgzIHNwYW4sCi5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCAuY29udGVudCBwIHNwYW4sCi5jb3VudGVyLmNvdW50ZXItLTUgLmNvdW50ZXJfc2luZ2xlIC52YWx1ZSwKLmNvdW50ZXIuY291bnRlci0tNyAuY291bnRlcl9zaW5nbGUgLnZhbHVlLAouY3RhLS1maXZlIHAgc3BhbiwKLmVycm9yLXdyYXBwZXIgLmVycm9yLWNvbnRlbnRzIHAgYSwKLmljb24tbGlzdDIgLmljb24sCi5pbnRyby1maXZlIGgxIHNwYW4sCi5pbnRyby1mb3VyIC5pbnRyby1mb3VyLS1jb250ZW50cyBoMSBzcGFuLAouaW50cm8tb25lIGgxIHNwYW4sCi5pbnRyby10aHJlZSAuaW50cm8tdGhyZWUtLWNvbnRlbnRzIGgxIHNwYW4sCi5saXN0LWlubGluZS13cmFwcGVyIC5saXN0LS1pbmxpbmUgbGkgLmljb24gc3BhbiwKLm5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlLAoubnVtYmVyLWxpc3QgbGkubnVtYmVycy1yb21hbjpiZWZvcmUsCi5udW1iZXItbGlzdCBsaTpiZWZvcmUsCi5wb3N0LS1jYXJkIC5jYXJkLWJvZHkgLnBvc3QtbWV0YSBsaSBhLAoucHJvamVjdC1zaW5nbGUgLnByb2plY3QtaW5mbyAuaW5mby1ib3ggaDYsCi5zdWJ0ZXh0LAoudGFiLnRhYi0tMSAudGFiX25hdiAubmF2IC5uYXYtbGluay5hY3RpdmUsCi50YWIudGFiLS0yIC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlLAoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rOmhvdmVyLAoudGFiLnRhYi0tMyAudGFiX25hdjMgLm5hdiBsaSBhLmFjdGl2ZSwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmUsCi50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIsCi50YWIudGFiLS03IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlLAoudGFiLnRhYi0tOCAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZSwKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLmV2ZW50X21ldGEgcCBzcGFuLmxhLAoudGVhbS1maXZlIC5jb250ZW50IGg2IGEsCi50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXIgLmRhdGUsCi50aW1lbGluZTIgLmhhcHBlbmluZzIgLmhhcHBlbmluZzJfX3BlcmlvZCwKLnZpZGVvLS1vbmUgaDMgc3BhbiwKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1sYXRlc3QtbmV3cyB1bCBsaSBhOmhvdmVyLApmb290ZXIuZm9vdGVyLS1kYXJrIC5mb290ZXJfX2JpZyAudGV4dF93aWRnZXQgYSwKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgYSwKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgc3Bhbi5mYWIsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9tZW51X2l0ZW1zIHVsIGxpIGEgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLmJnLXNlY29uZGFyeSwKLmJ1bGxldF9saXN0OmJlZm9yZSwKLmNhcmQtLXRlYW0xIC5jYXJkLWJvZHkgLnRlYW0tc29jaWFsIGxpIGE6aG92ZXIsCi5jdXN0b20tcmFkaW8tdGhyZWUgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciwKLmN1c3RvbS1yYWRpby10d28gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciwKLmRvdC1zZWNvbmRhcnkuZG90LWxpZ2h0IC5vd2wtZG90LmFjdGl2ZSBzcGFuLAouZXZlbnQtc2luZ2xlIC5ldmVudC1kYXRlLAouZ29fdG9wOmhvdmVyLAouaWNvbi1saWdodCAuY29udGVudC1saXN0IC5pY29uLWNpcmNsZSBzcGFuLAoubmF2LWNpcmNsZSBidXR0b24sCi5uYXYtc3F1YXJlLm5hdi1zcXVhcmUtZGFyayBidXR0b24sCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfY291bnQsCi5vd2wtZG90cy5kb3Qtc2Vjb25kYXJ5IC5vd2wtZG90LmFjdGl2ZSBzcGFuLAoucG9ydGZvbGlvLWNhcm91c2VsLXNpbmdsZSBmaWd1cmUgZmlnY2FwdGlvbiAubGluaywKLnByaWNpbmcgLnByaWNpbmdfX3ByaWNlLAoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUsCi50YWIudGFiLS0yIC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXI6YmVmb3JlLAoudGFiLnRhYi0tNiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUsCi50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXI6YmVmb3JlLAoudGFiLnRhYi0tNyAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUsCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSwKLnRvZ2dsZS1zd2l0Y2ggaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyLApmb290ZXIuZm9vdGVyNC5mb290ZXItLWNvbG9yZWQgLmZvb3Rlci0tc21hbGwsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgLnNvY2lhbC5zcXVhcmUgbGkgYTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwCn0KCi5jb2xvci1zdWNjZXNzIHsKICAgIGNvbG9yOiAjMzViNTNlCn0KCi5iZy1zdWNjZXNzIHsKICAgIGJhY2tncm91bmQ6ICMzNWI1M2UKfQoKLmFwcGx5LWZvcm0gLmFwcGx5LWZvcm0tLWhlYWRlciBwIHNwYW4sCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLm5leHQtcG9zdCBwIGEsCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLnByZXYtcG9zdCBwIGEsCi5jb2xvci1pbmZvLAouc2lkZWJhci1wb3N0IC5wb3N0LXNpbmdsZSBQIHNwYW4gYSB7CiAgICBjb2xvcjogIzM3N2RmZgp9CgouYmctaW5mbyB7CiAgICBiYWNrZ3JvdW5kOiAjMzc3ZGZmCn0KCi5jb2xvci13YXJuaW5nLAoudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtY29udGVudCAudGFncyB7CiAgICBjb2xvcjogI2ZmYWYwMAp9CgouYmctd2FybmluZyB7CiAgICBiYWNrZ3JvdW5kOiAjZmZhZjAwCn0KCi5jb2xvci1kYW5nZXIgewogICAgY29sb3I6ICNlMjM2MzYKfQoKLmJnLWRhbmdlciB7CiAgICBiYWNrZ3JvdW5kOiAjZTIzNjM2Cn0KCi5jb2xvci1saWdodCwKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faXRlbXMgLml0ZW1zIC5pdGVtX3JlbW92ZTpob3ZlciBzcGFuLApmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQtLWNvbnRhY3RfaW5mbyB1bCBsaSBzcGFuLmxhLApmb290ZXIuZm9vdGVyLS1kYXJrIC5mb290ZXJfX2JpZyAudGV4dF93aWRnZXQgYTpob3ZlciwKZm9vdGVyLmZvb3RlcjIuZm9vdGVyLS1kYXJrIC53aWRnZXQudHdpdC0td2lkZ2V0IGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmJnLWxpZ2h0LAouZXZlbnQtc2luZ2xlIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmJsb2ctY2Fyb3VzZWwtb25lIC5wb3N0LXNpbmdsZSAucG9zdC1ib3R0b20gYSwKLmNhcmQgLmNhcmQtYm9keSBoNiBhLAouY2FyZC0tZWlnaHQgLmNhcmQtYm9keSBoNSBhLAouY2FyZC0tdGVuIC5jYXJkLWJvZHkgaDYgYSwKLmNvbG9yLWRhcmssCi5jb3VudGVyLmNvdW50ZXItLTUgLmNvdW50ZXJfc2luZ2xlIC50aXRsZSwKLnRhYi50YWItLTEgLnRhYl9uYXYgLm5hdiAubmF2LWxpbmssCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IGE6aG92ZXIgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLmJnLWRhcmssCmZvb3Rlci5mb290ZXIyIC5mb290ZXJfX3NtYWxsIHsKICAgIGJhY2tncm91bmQ6ICMyMDI0MjgKfQoKLmNvbG9yLWZvb3Rlci1kYXJrLXRleHQsCmZvb3Rlci5mb290ZXItLWRhcmssCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwLApmb290ZXIuZm9vdGVyLS1kYXJrIC5mb290ZXJfX2JpZyAud2lkZ2V0IHVsLmxpbmtzIGxpIGEsCmZvb3Rlci5mb290ZXI0IC5mb290ZXI0X3RleHQsCmZvb3Rlci5mb290ZXI0IC5mb290ZXJfX3NtYWxsIC5pbmZvX2xpbmtzIGxpIGEsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tY29sb3JlZCwKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idywKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLndpZGdldCB1bC5saW5rcyBhIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgouYmctZm9vdGVyLWRhcmstdGV4dCwKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLndpZGdldCAud2lkZ2V0X190aXRsZTpiZWZvcmUgewogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSkKfQoKLmNvbG9yLWZvb3Rlci1kYXJrIHsKICAgIGNvbG9yOiAjMTExMDE0Cn0KCi5iZy1mb290ZXItZGFyaywKZm9vdGVyLmZvb3Rlci0tZGFyayB7CiAgICBiYWNrZ3JvdW5kOiAjMTExMDE0Cn0KCi5idG4tcHJpbWFyeSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNjUsIDU4LCAxNjQsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNjUsIDU4LCAxNjQsIC4yKQp9CgouYnRuLXNlY29uZGFyeSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNiwgMTgxLCAxNDQsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNiwgMTgxLCAxNDQsIC4yKQp9CgouYnRuLXN1Y2Nlc3MgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDUzLCAxODEsIDYyLCAuMik7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDUzLCAxODEsIDYyLCAuMikKfQoKLmJ0bi1pbmZvIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg1NSwgMTI1LCAyNTUsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNTUsIDEyNSwgMjU1LCAuMikKfQoKLmJ0bi13YXJuaW5nIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgyNTUsIDE3NSwgMCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgyNTUsIDE3NSwgMCwgLjIpCn0KCi5idG4tZGFuZ2VyIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgyMjYsIDU0LCA1NCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgyMjYsIDU0LCA1NCwgLjIpCn0KCi5idG4tbGlnaHQgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpCn0KCi5idG4tZGFyayB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMzIsIDM2LCA0MCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgzMiwgMzYsIDQwLCAuMikKfQoKLm91dGxpbmUtdGhpY2stcHJpbWFyeSB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDY1LCA1OCwgMTY0LCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogIzQxM2FhNAp9Cgoub3V0bGluZS10aGljay1zZWNvbmRhcnkgewogICAgYm9yZGVyOiAycHggc29saWQgcmdiYSg2LCAxODEsIDE0NCwgLjIpOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgY29sb3I6ICMwNmI1OTAKfQoKLm91dGxpbmUtdGhpY2stc3VjY2VzcyB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDUzLCAxODEsIDYyLCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogIzM1YjUzZQp9Cgoub3V0bGluZS10aGljay1pbmZvIHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoNTUsIDEyNSwgMjU1LCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogIzM3N2RmZgp9Cgoub3V0bGluZS10aGljay13YXJuaW5nIHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAxNzUsIDAsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjZmZhZjAwCn0KCi5vdXRsaW5lLXRoaWNrLWRhbmdlciB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDIyNiwgNTQsIDU0LCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogI2UyMzYzNgp9Cgoub3V0bGluZS10aGljay1saWdodCB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjZmZmCn0KCi5vdXRsaW5lLXRoaWNrLWRhcmsgewogICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgzMiwgMzYsIDQwLCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouY2hlY2tib3gtcHJpbWFyeSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0Cn0KCi5jaGVja2JveC1wcmltYXJ5IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDEzYWE0Cn0KCi5jaGVja2JveC1wcmltYXJ5IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNoZWNrYm94LXNlY29uZGFyeSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwCn0KCi5jaGVja2JveC1zZWNvbmRhcnkgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogIzA2YjU5MDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICMwNmI1OTAKfQoKLmNoZWNrYm94LXNlY29uZGFyeSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5jaGVja2JveC1zdWNjZXNzIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6ICMzNWI1M2UKfQoKLmNoZWNrYm94LXN1Y2Nlc3MgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogIzM1YjUzZTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICMzNWI1M2UKfQoKLmNoZWNrYm94LXN1Y2Nlc3MgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBjb2xvcjogI2ZmZgp9CgouY2hlY2tib3gtaW5mbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjMzc3ZGZmCn0KCi5jaGVja2JveC1pbmZvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6ICMzNzdkZmY7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzc3ZGZmCn0KCi5jaGVja2JveC1pbmZvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNoZWNrYm94LXdhcm5pbmcgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2ZmYWYwMAp9CgouY2hlY2tib3gtd2FybmluZyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZhZjAwOwogICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWYwMAp9CgouY2hlY2tib3gtd2FybmluZyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5jaGVja2JveC1kYW5nZXIgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2UyMzYzNgp9CgouY2hlY2tib3gtZGFuZ2VyIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6ICNlMjM2MzY7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTIzNjM2Cn0KCi5jaGVja2JveC1kYW5nZXIgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBjb2xvcjogI2ZmZgp9CgouY2hlY2tib3gtbGlnaHQgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgouY2hlY2tib3gtbGlnaHQgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmYKfQoKLmNoZWNrYm94LWxpZ2h0IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNoZWNrYm94LWRhcmsgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYmFja2dyb3VuZDogIzIwMjQyOAp9CgouY2hlY2tib3gtZGFyayAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjMjAyNDI4OwogICAgYm9yZGVyOiAxcHggc29saWQgIzIwMjQyOAp9CgouY2hlY2tib3gtZGFyayAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5jaGVja2JveC1vdXRsaW5lLXByaW1hcnkgLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDEzYWE0Cn0KCi5jaGVja2JveC1vdXRsaW5lLXByaW1hcnkgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzQxM2FhNAp9CgouY2hlY2tib3gtb3V0bGluZS1wcmltYXJ5IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLmNoZWNrYm94LW91dGxpbmUtc2Vjb25kYXJ5IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzA2YjU5MAp9CgouY2hlY2tib3gtb3V0bGluZS1zZWNvbmRhcnkgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzA2YjU5MAp9CgouY2hlY2tib3gtb3V0bGluZS1zZWNvbmRhcnkgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY2hlY2tib3gtb3V0bGluZS1zdWNjZXNzIC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzM1YjUzZQp9CgouY2hlY2tib3gtb3V0bGluZS1zdWNjZXNzIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICMzNWI1M2UKfQoKLmNoZWNrYm94LW91dGxpbmUtc3VjY2VzcyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjMzViNTNlCn0KCi5jaGVja2JveC1vdXRsaW5lLWluZm8gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzc3ZGZmCn0KCi5jaGVja2JveC1vdXRsaW5lLWluZm8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgIzM3N2RmZgp9CgouY2hlY2tib3gtb3V0bGluZS1pbmZvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICMzNzdkZmYKfQoKLmNoZWNrYm94LW91dGxpbmUtd2FybmluZyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFmMDAKfQoKLmNoZWNrYm94LW91dGxpbmUtd2FybmluZyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZjAwCn0KCi5jaGVja2JveC1vdXRsaW5lLXdhcm5pbmcgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBjb2xvcjogI2ZmYWYwMAp9CgouY2hlY2tib3gtb3V0bGluZS1kYW5nZXIgLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTIzNjM2Cn0KCi5jaGVja2JveC1vdXRsaW5lLWRhbmdlciAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTIzNjM2Cn0KCi5jaGVja2JveC1vdXRsaW5lLWRhbmdlciAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjZTIzNjM2Cn0KCi5jaGVja2JveC1vdXRsaW5lLWxpZ2h0IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZgp9CgouY2hlY2tib3gtb3V0bGluZS1saWdodCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmCn0KCi5jaGVja2JveC1vdXRsaW5lLWxpZ2h0IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNoZWNrYm94LW91dGxpbmUtZGFyayAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMDI0MjgKfQoKLmNoZWNrYm94LW91dGxpbmUtZGFyayAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMjAyNDI4Cn0KCi5jaGVja2JveC1vdXRsaW5lLWRhcmsgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouYml6X292ZXJsYXkgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCUKfQoKLmJpel9vdmVybGF5OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgd2lkdGg6IDEwMCU7CiAgICBjb250ZW50OiAnJzsKICAgIHotaW5kZXg6IDE7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KQp9CgouYml6X292ZXJsYXkub3ZlcmxheS0tcHJpbWFyeTpiZWZvcmUgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2NSwgNTgsIDE2NCwgLjg1KQp9CgouYml6X292ZXJsYXkub3ZlcmxheS0tc2Vjb25kYXJ5OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDYsIDE4MSwgMTQ0LCAuOCkKfQoKLmJpel9vdmVybGF5Lm92ZXJsYXktLXNlY29uZGFyeTI6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjcsIDI4LCA1NywgLjgpCn0KCi5iaXpfb3ZlcmxheS5vdmVybGF5LS1kYXJrOmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMyLCAzNiwgNDAsIC42KQp9CgouYml6X292ZXJsYXkub3ZlcmxheS0tZGFyazI6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjksIDMwLCA1MSwgLjcpCn0KCi5ncmFkaWVudC1vdmVybGF5IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouZ3JhZGllbnQtb3ZlcmxheTpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgzMTBkZWcsIHJnYmEoNjUsIDU4LCAxNjQsIC45KSAwLCByZ2JhKDY1LCA1OCwgMTY0LCAuOSkgMjUlLCByZ2JhKDYsIDE4MSwgMTQ0LCAuOSkgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoMzEwZGVnLCByZ2JhKDY1LCA1OCwgMTY0LCAuOSkgMCwgcmdiYSg2NSwgNTgsIDE2NCwgLjkpIDI1JSwgcmdiYSg2LCAxODEsIDE0NCwgLjkpIDEwMCUpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0MGRlZywgcmdiYSg2NSwgNTgsIDE2NCwgLjkpIDAsIHJnYmEoNjUsIDU4LCAxNjQsIC45KSAyNSUsIHJnYmEoNiwgMTgxLCAxNDQsIC45KSAxMDAlKTsKICAgIHotaW5kZXg6IDEKfQoKaHRtbCB7CiAgICBmb250LXNpemU6IDE1cHgKfQoKYm9keSB7CiAgICBkaXJlY3Rpb246IGx0cjsKICAgIHRleHQtYWxpZ246IGxlZnQKfQoKLmxhLmxhLXNlYXJjaCB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTsKICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZykKfQoKaW1nIHsKICAgIG1heC13aWR0aDogMTAwJQp9CgphIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCmE6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKc3VwIHsKICAgIHRvcDogLS42NjY2N3JlbQp9Cgouc2hvd2Nhc2UgewogICAgbWFyZ2luOiA0LjY2NjY3cmVtIDAgNHJlbSAwOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBmb250LXNpemU6IDEuNnJlbTsKICAgIGxpbmUtaGVpZ2h0OiA0OHB4OwogICAgcGFkZGluZzogMnJlbSAwOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOwogICAgYm9yZGVyLXJhZGl1czogMAp9Cgouc2hvd2Nhc2UgaDMgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNDAwOwogICAgbWFyZ2luOiAwOwogICAgZm9udC1zaXplOiAxLjQ2NjY3cmVtOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5zaG93Y2FzZS5zaG93Y2FzZS0tdGl0bGUyIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKcCB7CiAgICBsaW5lLWhlaWdodDogMnJlbQp9Cgouc2VjdGlvbmJnIHsKICAgIGJhY2tncm91bmQ6ICNmNWY3ZmMKfQoKLmJnaW1hZ2UgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5iZ19pbWFnZV9ob2xkZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlICFpbXBvcnRhbnQ7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7CiAgICB6LWluZGV4OiAwOwogICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgbGluZWFyOwogICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgbGluZWFyOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBsaW5lYXI7CiAgICBvcGFjaXR5OiAwOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouYmdfaW1hZ2VfaG9sZGVyIGltZyB7CiAgICBkaXNwbGF5OiBub25lCn0KCi5jb250ZW50X2Fib3ZlIHsKICAgIHotaW5kZXg6IDI7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKdWwgewogICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIHBhZGRpbmc6IDAKfQoKLmZsZXgtMSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5jYXJkaWZ5IHsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBwYWRkaW5nOiAycmVtCn0KCi50ZXh0LWJveCB7CiAgICBwYWRkaW5nOiAzcmVtIDMuMzMzMzNyZW0KfQoKLnRleHQtYm94IHAgewogICAgbWFyZ2luOiAwOwogICAgbGluZS1oZWlnaHQ6IDIuNHJlbTsKICAgIGZvbnQtc2l6ZTogMS40NjY2N3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBjb2xvcjogI2ZmZgp9CgouYWNjb3JkaW9uLXN0eWxlczIgewogICAgYmFja2dyb3VuZDogI2Y0ZjRmNDsKICAgIHBhZGRpbmc6IDAgMCA1LjMzMzMzcmVtIDA7CiAgICBtYXJnaW4tdG9wOiA1LjMzMzMzcmVtCn0KCi5hbGVydC10eXBlcyB7CiAgICBtYXJnaW46IDYuNjY2NjdyZW0gMCAzLjMzMzMzcmVtIDAKfQoKLnNoYWRvdy10eXBlcyB7CiAgICBwYWRkaW5nOiA0LjY2NjY3cmVtIDAgMS4zMzMzM3JlbQp9Cgouc2hhZG93LXR5cGVzIC5zaG93Y2FzZS1ib3ggewogICAgYmFja2dyb3VuZDogMCAwCn0KCi5zaGFkb3ctdHlwZXMgLnNob3djYXNlLWJveCAuc2hvd2Nhc2UtaGVhZGVyIHsKICAgIGJhY2tncm91bmQ6IDAgMAp9Cgouc2hhZG93LXR5cGVzIC5zaG93Y2FzZS1ib3ggLnNob3djYXNlLWJvZHkgdWwgewogICAgcGFkZGluZzogMi4zMzMzM3JlbSAycmVtOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1hcmdpbjogMAp9Cgouc2hhZG93LXR5cGVzIC5zaG93Y2FzZS1ib3ggLnNob3djYXNlLWJvZHkgdWwgbGkgewogICAgbWFyZ2luLWJvdHRvbTogLjhyZW07CiAgICB2aXNpYmlsaXR5OiBoaWRkZW4KfQoKLnNoYWRvdy10eXBlcyAuc2hvd2Nhc2UtYm94IC5zaG93Y2FzZS1ib2R5IHVsIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9Cgouc2hhZG93LXR5cGVzIC5zaG93Y2FzZS1ib3ggLnNob3djYXNlLWJvZHkgdWwgbGkgc3BhbiB7CiAgICBtaW4td2lkdGg6IDEwcmVtOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrCn0KCi5zaGFkb3ctdHlwZXMuc2hhZG93LXR5cGVzMiB7CiAgICBtYXJnaW4tdG9wOiAzLjMzMzMzcmVtOwogICAgYmFja2dyb3VuZDogI2Y0ZjRmNAp9Cgouc2hvd2Nhc2UtYm94IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgbWluLXdpZHRoOiAwOwogICAgd29yZC13cmFwOiBicmVhay13b3JkOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94OwogICAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94OwogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI1cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI1cmVtOwogICAgbWFyZ2luLWJvdHRvbTogNTBweAp9Cgouc2hvd2Nhc2UtYm94IC5zaG93Y2FzZS1oZWFkZXIgewogICAgcGFkZGluZzogMnJlbSAzcmVtOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9Cgouc2hvd2Nhc2UtYm94IC5zaG93Y2FzZS1oZWFkZXIgaDQsCi5zaG93Y2FzZS1ib3ggLnNob3djYXNlLWhlYWRlciBoNSB7CiAgICBtYXJnaW46IDA7CiAgICBmb250LXNpemU6IDEuMzMzMzNyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnNob3djYXNlLWJveCAuc2hvd2Nhc2UtaGVhZGVyIHAgewogICAgbWFyZ2luOiAxMHB4IDAgMCAwCn0KCi5zaG93Y2FzZS1ib3ggLnNob3djYXNlLWJvZHkgewogICAgcGFkZGluZzogM3JlbTsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvOwogICAgLW1zLWZsZXg6IDEgMSBhdXRvOwogICAgZmxleDogMSAxIGF1dG8KfQoKLnNob3djYXNlLWJveDpsYXN0LWNoaWxkIC5idXR0b24tZ3JvdXAgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYnV0dG9ucy13cmFwcGVyIHsKICAgIHBhZGRpbmc6IDcwcHggMCAyMHB4Cn0KCi5idXR0b25zLXdyYXBwZXIgLmJ1dHRvbi1ncm91cCB7CiAgICBtYXJnaW4tYm90dG9tOiAtMjFweAp9CgouYnV0dG9ucy13cmFwcGVyIC5idXR0b24tZ3JvdXAgYnV0dG9uIHsKICAgIG1hcmdpbjogMCAxN3B4IDIxcHggMAp9Cgouc2hhZG93LWRlZmF1bHQgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMzIsIDM2LCA0MCwgLjEpICFpbXBvcnRhbnQ7CiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMzIsIDM2LCA0MCwgLjEpICFpbXBvcnRhbnQKfQoKLmJ0bi1zaGFkb3cgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDQxLCA0MSwgNTksIC4xNSkgIWltcG9ydGFudDsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjE1KSAhaW1wb3J0YW50Cn0KCi5jb2xvci1ncm91cCB7CiAgICBtYXJnaW46IDAgMCA0MHB4OwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXgKfQoKLmNvbG9yLWdyb3VwIGxpIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAtbXMtZmxleDogMTsKICAgIGZsZXg6IDEKfQoKLmNvbG9yLWdyb3VwIGxpOmZpcnN0LWNoaWxkIHNwYW4gewogICAgZGlzcGxheTogYmxvY2s7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweDsKICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgIHBhZGRpbmc6IDI1cHggMzBweAp9CgouY29sb3ItZ3JvdXAgbGk6bGFzdC1jaGlsZCB7CiAgICB3aWR0aDogODBweDsKICAgIG1hcmdpbi1sZWZ0OiA1NXB4Cn0KCi5jb2xvci1ncm91cCBsaTpsYXN0LWNoaWxkIHNwYW4gewogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW46IDEwcHggMAp9CgouY29sb3ItZ3JvdXAub3RoZXItY29sb3JzIGxpOmZpcnN0LWNoaWxkIHNwYW4gewogICAgY29sb3I6ICMyMDI0MjgKfQoKLmNvbG9yLWdyb3VwIC5iZy1saWdodC1ncmF5IHsKICAgIGJhY2tncm91bmQ6ICM5MTkyYTMKfQoKLmNvbG9yLWdyb3VwIC5iZy1saWdodC1kZWZhdWx0IHsKICAgIGJhY2tncm91bmQ6ICM1YTY2NzEKfQoKLmNvbG9yLWdyb3VwIC5iZy1saW5lIHsKICAgIGJhY2tncm91bmQ6ICNlNGU4ZWQKfQoKLmNvbG9yLWdyb3VwIC5iZy1kZWZhdWx0IHsKICAgIGJhY2tncm91bmQ6ICNmNWY3ZmMKfQoKLmNvbG9yLWdyb3VwIC5jb2xvci1kZWZhdWx0IHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCi5jb2xvci1ncm91cCAuY29sb3ItbGlnaHQtZ3JheSB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouYmctZ3JhZGllbnQgewogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20oIzQxM2FhNCksIHRvKCMwNmI1OTApKSAhaW1wb3J0YW50OwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzQxM2FhNCwgIzA2YjU5MCkgIWltcG9ydGFudDsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjNDEzYWE0LCAjMDZiNTkwKSAhaW1wb3J0YW50OwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjNDEzYWE0LCAjMDZiNTkwKSAhaW1wb3J0YW50Cn0KCi5iZy1ncmFkaWVudC1jb3JuZXIgewogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNDEzYWE0LCAjMDZiNTkwKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgIzQxM2FhNCwgIzA2YjU5MCkKfQoKLmNvbG9yLWxpZ2h0LWdyYXkgewogICAgY29sb3I6ICM5MTkyYTMKfQoKLmZsaXAtYm94ZXMgewogICAgYmFja2dyb3VuZDogI2Y1ZjRmNwp9Cgouc2VjdGlvbi1iZyB7CiAgICBiYWNrZ3JvdW5kOiAjZjVmN2ZjCn0KCmlmcmFtZSB7CiAgICB3aWR0aDogMTAwJQp9Cgouc2VjdGlvbi1wYWRkaW5nIHsKICAgIHBhZGRpbmc6IDcuMzMzMzNyZW0gMAp9Cgouc2VjdGlvbi1wYWRkaW5nMiB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgNS4zMzMzM3JlbQp9Cgouc2VjdGlvbi1wYWRkaW5nMyB7CiAgICBwYWRkaW5nOiA2LjY2NjY3cmVtIDAgMS4zMzMzM3JlbSAwCn0KCi5zZWN0aW9uLXBhZGRpbmc0IHsKICAgIHBhZGRpbmc6IDcuMzMzMzNyZW0gMCA2LjMzMzMzcmVtIDAKfQoKLnNlY3Rpb24tcGFkZGluZzUgewogICAgcGFkZGluZzogNy4zMzMzM3JlbSAwIDMuMzMzMzNyZW0gMAp9Cgouc2VjdGlvbi1wYWRkaW5nLXRvcCB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgMCAwCn0KCi5zZWN0aW9uLXBhZGRpbmctc20gewogICAgcGFkZGluZzogNnJlbSAwCn0KCi5zZWN0aW9uLXNwbGl0IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgouc2VjdGlvbi1zcGxpdDpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogIiI7CiAgICB3aWR0aDogNTAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6ICNmNWY3ZmMKfQoKLnNlY3Rpb24tc3BsaXQyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgouc2VjdGlvbi1zcGxpdDI6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDFweDsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDUwJTsKICAgIHRvcDogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgIGJhY2tncm91bmQ6ICNlMmUxZWEKfQoKLmJnLWhhbGYtZ3JheSwKLmJnLWhhbGYtc2Vjb25kYXJ5IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouYmctaGFsZi1ncmF5OmJlZm9yZSwKLmJnLWhhbGYtc2Vjb25kYXJ5OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiA1MCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwCn0KCi5iZy1oYWxmLXNlY29uZGFyeTpiZWZvcmUgewogICAgYmFja2dyb3VuZDogIzQxM2FhNAp9CgouYmctaGFsZi1ncmF5OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAjZjVmN2ZjOwogICAgdG9wOiBhdXRvOwogICAgYm90dG9tOiAwOwogICAgaGVpZ2h0OiA0OCUKfQoKLmxpc3QtdHlwZXMgdWwgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouY2FyZC0tdGVhbTEgLmNhcmQtYm9keSAudGVhbS1zb2NpYWwgbGkgYS5saXN0LXR5cGVzOmhvdmVyLAouY3VzdG9tLXJhZGlvLXRocmVlIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5saXN0LXR5cGVzLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciwKLmN1c3RvbS1yYWRpby10d28gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+Lmxpc3QtdHlwZXMuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLAouZG90LXNlY29uZGFyeS5kb3QtbGlnaHQgLm93bC1kb3QuYWN0aXZlIHNwYW4ubGlzdC10eXBlcywKLmV2ZW50LXNpbmdsZSAubGlzdC10eXBlcy5ldmVudC1kYXRlLAouaWNvbi1saWdodCAuY29udGVudC1saXN0IC5pY29uLWNpcmNsZSBzcGFuLmxpc3QtdHlwZXMsCi5saXN0LXR5cGVzLmJnLWRhcmssCi5saXN0LXR5cGVzLmJnLXNlY29uZGFyeSwKLmxpc3QtdHlwZXMuYnVsbGV0X2xpc3Q6YmVmb3JlLAoubGlzdC10eXBlcy5nb190b3A6aG92ZXIsCi5uYXYtY2lyY2xlIGJ1dHRvbi5saXN0LXR5cGVzLAoubmF2LXNxdWFyZS5uYXYtc3F1YXJlLWRhcmsgYnV0dG9uLmxpc3QtdHlwZXMsCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmxpc3QtdHlwZXMuY2FydF9jb3VudCwKLm93bC1kb3RzLmRvdC1zZWNvbmRhcnkgLm93bC1kb3QuYWN0aXZlIHNwYW4ubGlzdC10eXBlcywKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gLmxpc3QtdHlwZXMubGluaywKLnByaWNpbmcgLmxpc3QtdHlwZXMucHJpY2luZ19fcHJpY2UsCi50YWIudGFiLS0yIC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluay5hY3RpdmU6YmVmb3JlLAoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLmxpc3QtdHlwZXMubmF2LWxpbms6aG92ZXI6YmVmb3JlLAoudGFiLnRhYi0tNiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLmxpc3QtdHlwZXMubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rOmhvdmVyOmJlZm9yZSwKLnRhYi50YWItLTcgLnRhYl9uYXY3IC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUsCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluay5hY3RpdmU6YmVmb3JlLAoudG9nZ2xlLXN3aXRjaCBpbnB1dDpjaGVja2VkKy5saXN0LXR5cGVzLnNsaWRlciwKZm9vdGVyLmZvb3RlcjIgLmxpc3QtdHlwZXMuZm9vdGVyX19zbWFsbCwKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1jb2xvcmVkIC5saXN0LXR5cGVzLmZvb3Rlci0tc21hbGwsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgLnNvY2lhbC5zcXVhcmUgbGkgYS5saXN0LXR5cGVzOmhvdmVyIHsKICAgIHBhZGRpbmc6IDQuNjY2NjdyZW0gMCAyLjMzMzMzcmVtCn0KCi5jYXJkLS10ZWFtMSAuY2FyZC1ib2R5IC50ZWFtLXNvY2lhbCBsaSBhLmxpc3QtdHlwZXM6aG92ZXIgb2wsCi5jYXJkLS10ZWFtMSAuY2FyZC1ib2R5IC50ZWFtLXNvY2lhbCBsaSBhLmxpc3QtdHlwZXM6aG92ZXIgdWwsCi5jdXN0b20tcmFkaW8tdGhyZWUgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+Lmxpc3QtdHlwZXMuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIG9sLAouY3VzdG9tLXJhZGlvLXRocmVlIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5saXN0LXR5cGVzLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB1bCwKLmN1c3RvbS1yYWRpby10d28gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+Lmxpc3QtdHlwZXMuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIG9sLAouY3VzdG9tLXJhZGlvLXR3byAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4ubGlzdC10eXBlcy5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgdWwsCi5kb3Qtc2Vjb25kYXJ5LmRvdC1saWdodCAub3dsLWRvdC5hY3RpdmUgc3Bhbi5saXN0LXR5cGVzIG9sLAouZG90LXNlY29uZGFyeS5kb3QtbGlnaHQgLm93bC1kb3QuYWN0aXZlIHNwYW4ubGlzdC10eXBlcyB1bCwKLmV2ZW50LXNpbmdsZSAubGlzdC10eXBlcy5ldmVudC1kYXRlIG9sLAouZXZlbnQtc2luZ2xlIC5saXN0LXR5cGVzLmV2ZW50LWRhdGUgdWwsCi5pY29uLWxpZ2h0IC5jb250ZW50LWxpc3QgLmljb24tY2lyY2xlIHNwYW4ubGlzdC10eXBlcyBvbCwKLmljb24tbGlnaHQgLmNvbnRlbnQtbGlzdCAuaWNvbi1jaXJjbGUgc3Bhbi5saXN0LXR5cGVzIHVsLAoubGlzdC10eXBlcy5iZy1kYXJrIG9sLAoubGlzdC10eXBlcy5iZy1kYXJrIHVsLAoubGlzdC10eXBlcy5iZy1zZWNvbmRhcnkgb2wsCi5saXN0LXR5cGVzLmJnLXNlY29uZGFyeSB1bCwKLmxpc3QtdHlwZXMuYnVsbGV0X2xpc3Q6YmVmb3JlIG9sLAoubGlzdC10eXBlcy5idWxsZXRfbGlzdDpiZWZvcmUgdWwsCi5saXN0LXR5cGVzLmdvX3RvcDpob3ZlciBvbCwKLmxpc3QtdHlwZXMuZ29fdG9wOmhvdmVyIHVsLAoubmF2LWNpcmNsZSBidXR0b24ubGlzdC10eXBlcyBvbCwKLm5hdi1jaXJjbGUgYnV0dG9uLmxpc3QtdHlwZXMgdWwsCi5uYXYtc3F1YXJlLm5hdi1zcXVhcmUtZGFyayBidXR0b24ubGlzdC10eXBlcyBvbCwKLm5hdi1zcXVhcmUubmF2LXNxdWFyZS1kYXJrIGJ1dHRvbi5saXN0LXR5cGVzIHVsLAoubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5saXN0LXR5cGVzLmNhcnRfY291bnQgb2wsCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmxpc3QtdHlwZXMuY2FydF9jb3VudCB1bCwKLm93bC1kb3RzLmRvdC1zZWNvbmRhcnkgLm93bC1kb3QuYWN0aXZlIHNwYW4ubGlzdC10eXBlcyBvbCwKLm93bC1kb3RzLmRvdC1zZWNvbmRhcnkgLm93bC1kb3QuYWN0aXZlIHNwYW4ubGlzdC10eXBlcyB1bCwKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gLmxpc3QtdHlwZXMubGluayBvbCwKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gLmxpc3QtdHlwZXMubGluayB1bCwKLnByaWNpbmcgLmxpc3QtdHlwZXMucHJpY2luZ19fcHJpY2Ugb2wsCi5wcmljaW5nIC5saXN0LXR5cGVzLnByaWNpbmdfX3ByaWNlIHVsLAoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLmxpc3QtdHlwZXMubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSBvbCwKLnRhYi50YWItLTIgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUgdWwsCi50YWIudGFiLS0yIC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluazpob3ZlcjpiZWZvcmUgb2wsCi50YWIudGFiLS0yIC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluazpob3ZlcjpiZWZvcmUgdWwsCi50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluay5hY3RpdmU6YmVmb3JlIG9sLAoudGFiLnRhYi0tNiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLmxpc3QtdHlwZXMubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSB1bCwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rOmhvdmVyOmJlZm9yZSBvbCwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rOmhvdmVyOmJlZm9yZSB1bCwKLnRhYi50YWItLTcgLnRhYl9uYXY3IC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUgb2wsCi50YWIudGFiLS03IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubGlzdC10eXBlcy5uYXYtbGluay5hY3RpdmU6YmVmb3JlIHVsLAoudGFiLnRhYi0tOCAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLmxpc3QtdHlwZXMubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSBvbCwKLnRhYi50YWItLTggLnRhYl9uYXY3IC5uYXYgLm5hdi1pdGVtIC5saXN0LXR5cGVzLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUgdWwsCi50b2dnbGUtc3dpdGNoIGlucHV0OmNoZWNrZWQrLmxpc3QtdHlwZXMuc2xpZGVyIG9sLAoudG9nZ2xlLXN3aXRjaCBpbnB1dDpjaGVja2VkKy5saXN0LXR5cGVzLnNsaWRlciB1bCwKZm9vdGVyLmZvb3RlcjIgLmxpc3QtdHlwZXMuZm9vdGVyX19zbWFsbCBvbCwKZm9vdGVyLmZvb3RlcjIgLmxpc3QtdHlwZXMuZm9vdGVyX19zbWFsbCB1bCwKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1jb2xvcmVkIC5saXN0LXR5cGVzLmZvb3Rlci0tc21hbGwgb2wsCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tY29sb3JlZCAubGlzdC10eXBlcy5mb290ZXItLXNtYWxsIHVsLApmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfX3NtYWxsIC5zb2NpYWwuc3F1YXJlIGxpIGEubGlzdC10eXBlczpob3ZlciBvbCwKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1saWdodCAuZm9vdGVyX19zbWFsbCAuc29jaWFsLnNxdWFyZSBsaSBhLmxpc3QtdHlwZXM6aG92ZXIgdWwgewogICAgbWFyZ2luOiAwCn0KCi5iZy1pbWFnZSB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1nL2xpc3QtYmcuanBnKSBjZW50ZXIvY292ZXIgbm8tcmVwZWF0OwogICAgcGFkZGluZzogNnJlbQp9CgouYmctaW1hZ2Ugb2wsCi5iZy1pbWFnZSB1bCB7CiAgICBtYXJnaW46IDAKfQoKLmJnLWltYWdlLmxpc3QtdHlwZXMgewogICAgcGFkZGluZzogNnJlbSAwIDRyZW0KfQoKLmJnLWdyYXktbGlnaHQgewogICAgYmFja2dyb3VuZDogI2Y1ZjdmYwp9CgouYmctZ3JhZGllbnQtLWxpZ2h0IHsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oI2ZmZiksIHRvKCNmYmZhZmYpKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiwgI2ZiZmFmZik7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZmJmYWZmKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYsICNmYmZhZmYpCn0KCi5oci1kaXZpZGVyIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgaGVpZ2h0OiAxcHg7CiAgICBtYXJnaW4tdG9wOiA0cmVtCn0KCi5oci1kaXZpZGVyMiB7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZThlZDsKICAgIGhlaWdodDogMXB4OwogICAgbWFyZ2luOiAzLjZyZW0gMCAzLjUzMzMzcmVtIDAKfQoKLmhyLWRpdmlkZXIzIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkOWU0OwogICAgaGVpZ2h0OiAxcHg7CiAgICBtYXJnaW46IDIuNjY2NjdyZW0gMCA1LjMzMzMzcmVtIDAKfQoKLmhyLWRpdmlkZXItZ3JheSB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEwMCwgMTAzLCAxNDUsIC41KTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxcHg7CiAgICBtYXJnaW46IDUuMzMzMzNyZW0gMCA0LjMzMzMzcmVtCn0KCi5oci1saW5lIHsKICAgIGJhY2tncm91bmQ6ICNlNGU4ZWQ7CiAgICBoZWlnaHQ6IDFweAp9CgouZm9ybS1lbGVtZW50cyAuZm9ybS10YWJzIGxpIHsKICAgIG1hcmdpbi1sZWZ0OiAtMXB4Cn0KCi5mb3JtLWVsZW1lbnRzIC5mb3JtLXRhYnMgbGk6Zmlyc3QtY2hpbGQgYSB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4OwogICAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHgKfQoKLmZvcm0tZWxlbWVudHMgLmZvcm0tdGFicyBsaTpsYXN0LWNoaWxkIGEgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDsKICAgIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwCn0KCi5mb3JtLWVsZW1lbnRzIC5mb3JtLXRhYnMgbGkgYSB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgcGFkZGluZzogMTNweCAxNXB4OwogICAgY29sb3I6ICM1YTY2NzE7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5mb3JtLWVsZW1lbnRzIC5mb3JtLXRhYnMgbGkgYS5hY3RpdmUgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGNvbG9yOiAjZmZmOwogICAgYm9yZGVyLWNvbG9yOiAjNDEzYWE0Cn0KCi5mb3JtLWVsZW1lbnRzIC5mb3JtLXRhYnMgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBib3JkZXItY29sb3I6ICM0MTNhYTQKfQoKLnRhYi0tMyAudGFiLWNvbnRlbnQ+LnRhYi1wYW5lIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgaGVpZ2h0OiAwOwogICAgdmlzaWJpbGl0eTogaGlkZGVuCn0KCi50YWItLTMgLnRhYi1jb250ZW50Pi5hY3RpdmUgewogICAgaGVpZ2h0OiBhdXRvOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZQp9CgouZ29fdG9wIHsKICAgIGxpbmUtaGVpZ2h0OiAyLjY2NjY3cmVtOwogICAgY3Vyc29yOiBwb2ludGVyOwogICAgd2lkdGg6IDIuNjY2NjdyZW07CiAgICBjb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgcG9zaXRpb246IGZpeGVkOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAuMSk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW0gMCAwIDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtIDAgMCAxLjY2NjY3cmVtOwogICAgcmlnaHQ6IDA7CiAgICB6LWluZGV4OiAxMTE7CiAgICBib3R0b206IDMwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmJ0bi1wcmltYXJ5IHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg2NSwgNTgsIDE2NCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg2NSwgNTgsIDE2NCwgLjIpCn0KCi5idG4tc2Vjb25kYXJ5IHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg2LCAxODEsIDE0NCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg2LCAxODEsIDE0NCwgLjIpCn0KCi5idG4tc3VjY2VzcyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNTMsIDE4MSwgNjIsIC4yKTsKICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoNTMsIDE4MSwgNjIsIC4yKQp9CgouYnRuLWluZm8gewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDU1LCAxMjUsIDI1NSwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSg1NSwgMTI1LCAyNTUsIC4yKQp9CgouYnRuLXdhcm5pbmcgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDI1NSwgMTc1LCAwLCAuMik7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDI1NSwgMTc1LCAwLCAuMikKfQoKLmJ0bi1kYW5nZXIgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDIyNiwgNTQsIDU0LCAuMik7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDIyNiwgNTQsIDU0LCAuMikKfQoKLmJ0bi1saWdodCB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikKfQoKLmJ0bi1kYXJrIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgzMiwgMzYsIDQwLCAuMik7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDMyLCAzNiwgNDAsIC4yKQp9Cgoub3V0bGluZS10aGljay1wcmltYXJ5IHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoNjUsIDU4LCAxNjQsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5vdXRsaW5lLXRoaWNrLXNlY29uZGFyeSB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDYsIDE4MSwgMTQ0LCAuMik7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBjb2xvcjogIzA2YjU5MAp9Cgoub3V0bGluZS10aGljay1zdWNjZXNzIHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoNTMsIDE4MSwgNjIsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjMzViNTNlCn0KCi5vdXRsaW5lLXRoaWNrLWluZm8gewogICAgYm9yZGVyOiAycHggc29saWQgcmdiYSg1NSwgMTI1LCAyNTUsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjMzc3ZGZmCn0KCi5vdXRsaW5lLXRoaWNrLXdhcm5pbmcgewogICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDE3NSwgMCwgLjIpOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgY29sb3I6ICNmZmFmMDAKfQoKLm91dGxpbmUtdGhpY2stZGFuZ2VyIHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjI2LCA1NCwgNTQsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjZTIzNjM2Cn0KCi5vdXRsaW5lLXRoaWNrLWxpZ2h0IHsKICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpOwogICAgYmFja2dyb3VuZDogMCAwOwogICAgY29sb3I6ICNmZmYKfQoKLm91dGxpbmUtdGhpY2stZGFyayB7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDMyLCAzNiwgNDAsIC4yKTsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5idG4gewogICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7CiAgICBmb250LXNpemU6IC45MzMzM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmJ0bi5idG4tLXJvdW5kZWQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMDBweDsKICAgIGJvcmRlci1yYWRpdXM6IDIwMHB4Cn0KCi5idG4uYnRuLXNtIHsKICAgIGZvbnQtc2l6ZTogLjg2cmVtCn0KCi5idG4uYnRuLWxnIHsKICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgIHdoaXRlLXNwYWNlOiBub3JtYWwKfQoKLmJ0bmEgewogICAgY29sb3I6ICNmZmYKfQoKLmJ0bi5idG4tbGlnaHQgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDQxLCA0MSwgNTksIC4xNSk7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDQxLCA0MSwgNTksIC4xNSkKfQoKLmJ0bi5idG4tb3V0bGluZS1saWdodCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgY29sb3I6ICNlNGU4ZWQKfQoKLmJ0bi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7CiAgICBjb2xvcjogIzIxMjUyOTsKICAgIGJhY2tncm91bmQ6ICNlNGU4ZWQKfQoKLmJ0bi5idG4tYXJyb3cgewogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDsKICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi5idG4uYnRuLWFycm93IGkgewogICAgbWFyZ2luLWxlZnQ6IC42NnJlbQp9CgouYnRuLmJ0bi1pY29uIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouYnRuLmJ0bi1pY29uLmljb24tbGVmdCBpLAouYnRuLmJ0bi1pY29uLmljb24tbGVmdCBzcGFuIHsKICAgIG1hcmdpbi1yaWdodDogNnB4Cn0KCi5idG4uYnRuLWljb24uaWNvbi1yaWdodCBpLAouYnRuLmJ0bi1pY29uLmljb24tcmlnaHQgc3BhbiB7CiAgICBtYXJnaW4tbGVmdDogNnB4Cn0KCi5idG4ubGlrZS1idG4gewogICAgd2lkdGg6IDIuNzMzMzNyZW07CiAgICBoZWlnaHQ6IDIuNzMzMzNyZW07CiAgICBmb250LXNpemU6IDEuMnJlbTsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMyk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIHBhZGRpbmc6IDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIGJhY2tncm91bmQ6IHJnYmEoNiwgMTgxLCAxNDQsIC4xKQp9CgouYnRuLmxpa2UtYnRuOmZvY3VzIHsKICAgIG91dGxpbmU6IDAKfQoKLmJ0bi5saWtlLWJ0bjpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTAKfQoKLmJ0bi5maWx0ZXItYnRuIHsKICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgIG1pbi13aWR0aDogYXV0bzsKICAgIHBhZGRpbmc6IDAgMS4zMzMzM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmJ0bi5maWx0ZXItYnRuOmZvY3VzIHsKICAgIG91dGxpbmU6IDA7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgICBib3gtc2hhZG93OiBub25lCn0KCi5idG4uYnRuLWdyYWRpZW50IHsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKCM0MTNhYTQpLCB0bygjMDZiNTkwKSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjNDEzYWE0LCAjMDZiNTkwKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjNDEzYWE0LCAjMDZiNTkwKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzQxM2FhNCwgIzA2YjU5MCk7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJvcmRlcjogbm9uZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSg2LCAxODEsIDE0NCwgLjIpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSg2LCAxODEsIDE0NCwgLjIpCn0KCi5idG4uYnRuLWljb24tb25seSB7CiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07CiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOwogICAgZm9udC1zaXplOiAxLjJyZW0KfQoKLnBsYXktYnRuLXdyYXBwZXIgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBjb2xvcjogIzA2YjU5MDsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBtYXJnaW4tbGVmdDogMXJlbQp9CgoucGxheS1idG4td3JhcHBlciAucGxheS1idG4gewogICAgbWFyZ2luLXJpZ2h0OiAxLjMzMzMzcmVtCn0KCi5wbGF5LWJ0biB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXNpemU6IDJyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoucGxheS1idG4gLnN2ZyB7CiAgICB3aWR0aDogMS4ycmVtOwogICAgZmlsbDogI2ZmZjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5wbGF5LWJ0bjpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoucGxheS1idG4ucGxheS1idG4tLWxnIHsKICAgIHdpZHRoOiA0LjY2NjY3cmVtOwogICAgaGVpZ2h0OiA0LjY2NjY3cmVtCn0KCi5wbGF5LWJ0bi5wbGF5LWJ0bi0tc20gewogICAgd2lkdGg6IDMuMzMzMzNyZW07CiAgICBoZWlnaHQ6IDMuMzMzMzNyZW07CiAgICBmb250LXNpemU6IDEuNTMzMzNyZW0KfQoKLnBsYXktYnRuLnBsYXktYnRuLS1zbSAuc3ZnIHsKICAgIHdpZHRoOiAxcmVtCn0KCi5wbGF5LWJ0bi5wbGF5LWJ0bi1saWdodCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnBsYXktYnRuLnBsYXktYnRuLWxpZ2h0OmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTA7CiAgICBjb2xvcjogI2ZmZgp9CgoucGxheS1idG4ucGxheS1idG4tbGlnaHQ6aG92ZXIgLnN2ZyB7CiAgICBmaWxsOiAjZmZmCn0KCi5wbGF5LWJ0bi5wbGF5LWJ0bi1saWdodCAuc3ZnIHsKICAgIGZpbGw6ICMwNmI1OTAKfQoKLnBsYXktYnRuLnBsYXktYnRuLS1nZXN0dXJlIHsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgZm9udC1zaXplOiAxLjg2NjY3cmVtCn0KCi5wbGF5LWJ0bi5wbGF5LWJ0bi0tZ2VzdHVyZTpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogMTMwJTsKICAgIGhlaWdodDogMTMwJTsKICAgIGxlZnQ6IC0xNSU7CiAgICB0b3A6IC0xNSU7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDYsIDE4MSwgMTQ0LCAuMTUpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IDIwcmVtCn0KCi5wbGF5LWJ0bi5wbGF5LWJ0bi0tZ2VzdHVyZTphZnRlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAxNjAlOwogICAgaGVpZ2h0OiAxNjAlOwogICAgbGVmdDogLTMwJTsKICAgIHRvcDogLTMwJTsKICAgIGJhY2tncm91bmQ6IHJnYmEoNiwgMTgxLCAxNDQsIC4wNSk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwcmVtOwogICAgYm9yZGVyLXJhZGl1czogMjByZW0KfQoKLnBsYXktYnRuLnBsYXktYnRuLS1nZXN0dXJlOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6IGluaGVyaXQKfQoKLnBsYXktYnRuLnBsYXktYnRuLS1wcmltYXJ5IHsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQKfQoKLnBsYXktYnRuLnBsYXktYnRuLS1zZWNvbmRhcnkgewogICAgYmFja2dyb3VuZDogIzA2YjU5MAp9CgouYWN0aW9uLWJ0bnMgdWwgbGkgewogICAgbWFyZ2luLXJpZ2h0OiA1cHgKfQoKLmFjdGlvbi1idG5zIHVsIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5hY3Rpb24tYnRucyB1bCBsaS5zaGFyZS1idG4gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgcGFkZGluZy1ib3R0b206IDFyZW0KfQoKLmFjdGlvbi1idG5zIHVsIGxpLnNoYXJlLWJ0biB1bCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIHRvcDogNHJlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgcGFkZGluZzogMXJlbSAycmVtOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIC4xNSk7CiAgICBib3gtc2hhZG93OiAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIC4xNSkKfQoKLmFjdGlvbi1idG5zIHVsIGxpLnNoYXJlLWJ0biB1bDpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICBib3JkZXItYm90dG9tOiAuNjY2NjdyZW0gc29saWQgI2ZmZjsKICAgIGJvcmRlci1yaWdodDogLjUzMzMzcmVtIHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLWxlZnQ6IC41MzMzM3JlbSBzb2xpZCB0cmFuc3BhcmVudDsKICAgIHJpZ2h0OiAxLjEzMzMzcmVtOwogICAgYm90dG9tOiAxMDAlCn0KCi5hY3Rpb24tYnRucyB1bCBsaS5zaGFyZS1idG4gdWwgbGkgewogICAgbWFyZ2luLXJpZ2h0OiAxcmVtCn0KCi5hY3Rpb24tYnRucyB1bCBsaS5zaGFyZS1idG4gdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmFjdGlvbi1idG5zIHVsIGxpLnNoYXJlLWJ0biB1bCBsaSBhIHsKICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmFjdGlvbi1idG5zIHVsIGxpLnNoYXJlLWJ0biB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5hY3Rpb24tYnRucyB1bCBsaS5zaGFyZS1idG46aG92ZXIgdWwgewogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGUKfQoKLmlucHV0X3dpdGhfZW1iZWQgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5pbnB1dF93aXRoX2VtYmVkIC5lbWJlZF9idXR0b24sCi5pbnB1dF93aXRoX2VtYmVkIC5lbWJlZF9pY29uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZQp9CgouaW5wdXRfd2l0aF9lbWJlZCAuZW1iZWRfaWNvbiB7CiAgICByaWdodDogMS4zM3JlbTsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5pbnB1dF93aXRoX2VtYmVkIC5lbWJlZF9pY29uIGJ1dHRvbiB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDAKfQoKaW5wdXQuaW5wdXQtLXJvdW5kZWQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMy4zMzMzM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IDEzLjMzMzMzcmVtCn0KCi5jdXN0b20tcmFkaW8gewogICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgIHBhZGRpbmctbGVmdDogMTBweAp9CgouY3VzdG9tLXJhZGlvOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY3VzdG9tLXJhZGlvIGlucHV0OmFjdGl2ZSB7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWwgewogICAgcGFkZGluZy1sZWZ0OiAycmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWluLXdpZHRoOiAxMDBweAp9CgouY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgd2lkdGg6IDEuMnJlbTsKICAgIGhlaWdodDogMS4ycmVtOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICBib3JkZXI6IC4zMzMzM3JlbSBzb2xpZCAjY2JkMGUzOwogICAgdG9wOiAxcHg7CiAgICBsZWZ0OiAwCn0KCi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOmFmdGVyIHsKICAgIHdpZHRoOiBhdXRvOwogICAgaGVpZ2h0OiBhdXRvOwogICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZQp9CgouY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbCBzcGFuIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRvcDogMHJlbQp9CgouY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGJvcmRlci1jb2xvcjogIzA2YjU5MDsKICAgIGNvbnRlbnQ6ICIiOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgY29sb3I6ICNmZmY7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGZvbnQtc2l6ZTogLjhyZW0KfQoKLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmN1c3RvbS1yYWRpby10d28gLmN1c3RvbS1jb250cm9sLWxhYmVsOmJlZm9yZSB7CiAgICBib3JkZXI6IC4ycmVtIHNvbGlkICNjYmQwZTM7CiAgICB3aWR0aDogMS4ycmVtOwogICAgaGVpZ2h0OiAxLjJyZW0KfQoKLmN1c3RvbS1yYWRpby10d28gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICB3aWR0aDogLjRyZW07CiAgICBoZWlnaHQ6IC40cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IDIwcmVtOwogICAgbGVmdDogLjRyZW07CiAgICB0b3A6IC40NjY2N3JlbQp9CgouY3VzdG9tLXJhZGlvLXRocmVlIC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgI2NiZDBlMzsKICAgIHdpZHRoOiAxLjJyZW07CiAgICBoZWlnaHQ6IDEuMnJlbQp9CgouY3VzdG9tLXJhZGlvLXRocmVlIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgd2lkdGg6IC40cmVtOwogICAgaGVpZ2h0OiAuNHJlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgbGVmdDogLjRyZW07CiAgICB0b3A6IC40NjY2N3JlbQp9CgouZm9ybS1jb250cm9sIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICByZXNpemU6IG5vbmU7CiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7CiAgICBhcHBlYXJhbmNlOiBub25lCn0KCkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDpub25lKSwKKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSkgewogICAgLmZvcm0tY29udHJvbCB7CiAgICAgICAgcGFkZGluZzogLjVyZW0gMS4ycmVtIDFyZW0KICAgIH0KfQoKLmZvcm0tY29udHJvbDpmb2N1cyB7CiAgICBvdXRsaW5lOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZQp9CgouZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCi5mb3JtLWNvbnRyb2w6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouZm9ybS1jb250cm9sLmZjLS1zcXVhcmVkIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDAKfQoKLmZvcm0tY29udHJvbC5mYy0tcm91bmRlZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgcGFkZGluZy1sZWZ0OiAxLjY2NjY3cmVtCn0KCi5mb3JtLWNvbnRyb2wuZmMtLXNvbGlkLWJnIHsKICAgIGJhY2tncm91bmQ6ICNmNWY0ZjcKfQoKLmZvcm0tY29udHJvbC5mb3JtLW91dGxpbmUgewogICAgYm9yZGVyOiAwIG5vbmU7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICBwYWRkaW5nLWxlZnQ6IDAKfQoKLmZvcm0tY29udHJvbC5mb3JtLW91dGxpbmU6Zm9jdXMgewogICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzA2YjU5MAp9CgouZm9ybS1jb250cm9sLS1jb2xvciB7CiAgICBtaW4taGVpZ2h0OiAzcmVtOwogICAgcGFkZGluZzogLjY2NjY3cmVtOwogICAgYmFja2dyb3VuZDogMCAwCn0KCi5mb3JtLWdyb3VwIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5mb3JtLWdyb3VwIGxhYmVsIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5yYW5nZS1pbnB1dDphZnRlciB7CiAgICBjb250ZW50OiAnJzsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgY2xlYXI6IGJvdGgKfQoKLnJhbmdlLWlucHV0IC5jdXN0b20tcmFuZ2UgewogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgLW1vei1hcHBlYXJhbmNlOiBub25lOwogICAgYXBwZWFyYW5jZTogbm9uZTsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgoucmFuZ2UtaW5wdXQgLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIgewogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgd2lkdGg6IDEuMnJlbTsKICAgIGhlaWdodDogMS4ycmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXI6IC4zMzMzM3JlbSBzb2xpZCAjNDEzYWE0OwogICAgYmFja2dyb3VuZDogI2UzZTZlZjsKICAgIG1hcmdpbi10b3A6IC02cHgKfQoKLnJhbmdlLWlucHV0IC5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHsKICAgIGJhY2tncm91bmQ6ICNlM2U2ZWY7CiAgICBoZWlnaHQ6IC40cmVtOwogICAgd2lkdGg6IDEwMCU7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLmlucHV0LWdyb3VwLWxpZ2h0IC5mb3JtLWNvbnRyb2wgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDsKICAgIGJvcmRlci1yYWRpdXM6IDNweCAhaW1wb3J0YW50Cn0KCi5pbnB1dC1ncm91cC1saWdodCBzcGFuIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgei1pbmRleDogMTA7CiAgICBmb250LXNpemU6IDEuMnJlbQp9CgouaW5wdXQtZ3JvdXAtbGlnaHQgc3Bhbi5pY29uLWxlZnQgewogICAgbGVmdDogMS4zMzMzM3JlbQp9CgouaW5wdXQtZ3JvdXAtbGlnaHQgc3Bhbi5pY29uLWxlZnQrLmZvcm0tY29udHJvbCB7CiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0KfQoKLmlucHV0LWdyb3VwLWxpZ2h0IHNwYW4uaWNvbi1yaWdodCB7CiAgICByaWdodDogMXJlbQp9CgouaW5wdXQtZ3JvdXAtbGlnaHQgc3Bhbi5pY29uLXJpZ2h0Ky5mb3JtLWNvbnRyb2wgewogICAgcGFkZGluZy1yaWdodDogMi42NjY2N3JlbQp9CgouY2hlY2tib3gtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQgewogICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKICAgIHBhZGRpbmc6IDAgLjhyZW0KfQoKLmNoZWNrYm94LWdyb3VwIC5pbnB1dC1ncm91cC10ZXh0IC5jdXN0b20tY29udHJvbCB7CiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0KfQoKLmNoZWNrYm94LWdyb3VwIC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBwYWRkaW5nLWxlZnQ6IDFweDsKICAgIHBhZGRpbmctdG9wOiAycHgKfQoKLnJhZGlvLWdyb3VwIC5pbnB1dC1ncm91cC10ZXh0IHsKICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7CiAgICBwYWRkaW5nOiAwIC44cmVtCn0KCi5yYWRpby1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dCAuY3VzdG9tLWNvbnRyb2wgewogICAgcGFkZGluZy1sZWZ0OiAuNTMzMzNyZW0KfQoKLnJhZGlvLWdyb3VwIC5jdXN0b20tY29udHJvbC1sYWJlbCB7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICB3aWR0aDogMS40NjY2N3JlbTsKICAgIGhlaWdodDogMS41MzMzM3JlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWFyZ2luLWxlZnQ6IC0uNDY2NjdyZW0KfQoKLmN1c3RvbS1jaGVja2JveCB7CiAgICBtYXJnaW4tYm90dG9tOiAyLjMzMzMzcmVtCn0KCi5jdXN0b20tY2hlY2tib3g6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsIHsKICAgIG1pbi13aWR0aDogNi42NjY2N3JlbTsKICAgIHBhZGRpbmctbGVmdDogMi4zMzMzM3JlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICB3aWR0aDogMS40NjY2N3JlbTsKICAgIGhlaWdodDogMS40NjY2N3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OwogICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgdG9wOiAwOwogICAgbGVmdDogMAp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIgewogICAgd2lkdGg6IDEuNHJlbTsKICAgIGhlaWdodDogMS40cmVtOwogICAgdG9wOiAwCn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogICAgY29udGVudDogIlxmMTdiIjsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIGxlZnQ6IDA7CiAgICBmb250LXNpemU6IC44NjY2N3JlbTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRvcDogMnB4OwogICAgZm9udC13ZWlnaHQ6IDYwMAp9CgouY2hlY2tib3gtb3V0bGluZSAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgouY2hlY2tib3gtb3V0bGluZSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLmNoZWNrYm94LW91dGxpbmUgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogICAgY29udGVudDogIlxmMTdiIjsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIGxlZnQ6IDA7CiAgICBmb250LXNpemU6IC44NjY2N3JlbTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRvcDogMnB4OwogICAgZm9udC13ZWlnaHQ6IDYwMAp9CgouY2hlY2tib3gtb3V0bGluZS1ncmF5IC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZAp9CgouY2hlY2tib3gtb3V0bGluZS1ncmF5IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLmNoZWNrYm94LW91dGxpbmUtZ3JheSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCi5jaGVja2JveC1yb3VuZGVkIC5jdXN0b20tY29udHJvbC1sYWJlbDpiZWZvcmUgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKLnRvZ2dsZS1zd2l0Y2ggewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDRyZW07CiAgICBoZWlnaHQ6IDJyZW0KfQoKLnRvZ2dsZS1zd2l0Y2ggaW5wdXQgewogICAgZGlzcGxheTogbm9uZQp9CgoudG9nZ2xlLXN3aXRjaCAuc2xpZGVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMDsKICAgIGJhY2tncm91bmQtY29sb3I6ICNjYmQwZTM7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGN1cnNvcjogcG9pbnRlcgp9CgoudG9nZ2xlLXN3aXRjaCAuc2xpZGVyOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAiIjsKICAgIGhlaWdodDogMS42cmVtOwogICAgd2lkdGg6IDEuNnJlbTsKICAgIGxlZnQ6IC4ycmVtOwogICAgYm90dG9tOiAuMnJlbTsKICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoudG9nZ2xlLXN3aXRjaCBpbnB1dDpjaGVja2VkKy5zbGlkZXI6YmVmb3JlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KQp9CgoudG9nZ2xlLXN3aXRjaCBpbnB1dDpmb2N1cysuc2xpZGVyIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDFweCAjMjE5NmYzOwogICAgYm94LXNoYWRvdzogMCAwIDFweCAjMjE5NmYzCn0KCi50b2dnbGUtc3dpdGNoIC5zbGlkZXIucm91bmQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogMS42NjY2N3JlbQp9CgoudG9nZ2xlLXN3aXRjaCAuc2xpZGVyLnJvdW5kOmJlZm9yZSB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJQp9CgoudG9nZ2xlLXN3aXRjaC10ZXh0IHsKICAgIHdpZHRoOiA0LjY2NjY3cmVtCn0KCi50b2dnbGUtc3dpdGNoLXRleHQgaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyOmJlZm9yZSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyLjY2NjY3cmVtKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMi42NjY2N3JlbSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMi42NjY2N3JlbSkKfQoKLnRvZ2dsZS1zd2l0Y2gtdGV4dCBpbnB1dDpjaGVja2VkKy5zbGlkZXIgLm9uIHsKICAgIHZpc2liaWxpdHk6IHZpc2libGU7CiAgICBvcGFjaXR5OiAxCn0KCi50b2dnbGUtc3dpdGNoLXRleHQgaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyIC5vZmYgewogICAgdmlzaWJpbGl0eTogaGlkZGVuCn0KCi50b2dnbGUtc3dpdGNoLXRleHQgLnNsaWRlci5yb3VuZCAub24gewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi50b2dnbGUtc3dpdGNoLXRleHQgLnNsaWRlci5yb3VuZCAub2ZmLAoudG9nZ2xlLXN3aXRjaC10ZXh0IC5zbGlkZXIucm91bmQgLm9uIHsKICAgIHBhZGRpbmctbGVmdDogLjJyZW07CiAgICBtYXJnaW4tdG9wOiAuNHJlbTsKICAgIGZvbnQtc2l6ZTogLjg2NjY3cmVtOwogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jawp9CgoudG9nZ2xlLXN3aXRjaC10ZXh0IC5zbGlkZXIucm91bmQgLm9uIHsKICAgIHBhZGRpbmctbGVmdDogLjY2NjY3cmVtOwogICAgY29sb3I6ICNmZmYKfQoKLnRvZ2dsZS1zd2l0Y2gtYm9yZGVyZWQgLnNsaWRlciB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2JkMGUzCn0KCi50b2dnbGUtc3dpdGNoLWJvcmRlcmVkIC5zbGlkZXI6YmVmb3JlIHsKICAgIGhlaWdodDogMnJlbTsKICAgIHdpZHRoOiAycmVtOwogICAgbGVmdDogLS4wNjY2N3JlbTsKICAgIGJvdHRvbTogLS4wNjY2N3JlbTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYmQwZTMKfQoKLnRvZ2dsZS1zd2l0Y2gtYm9yZGVyZWQgaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyIHsKICAgIGJvcmRlci1jb2xvcjogIzA2YjU5MDsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgoudG9nZ2xlLXN3aXRjaC1ib3JkZXJlZCBpbnB1dDpjaGVja2VkKy5zbGlkZXI6YmVmb3JlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTsKICAgIGJvcmRlci1jb2xvcjogIzA2YjU5MAp9CgpzZWxlY3QuZm9ybS1jb250cm9sIHsKICAgIG1pbi1oZWlnaHQ6IDNyZW07CiAgICBjb2xvcjogIzkxOTJhMwp9Cgouc2VsZWN0LWJhc2ljIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgouc2VsZWN0LWJhc2ljIHNlbGVjdCB7CiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7CiAgICBhcHBlYXJhbmNlOiBub25lCn0KCi5zZWxlY3QtYmFzaWM6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICJcZjExMCI7CiAgICByaWdodDogMXJlbTsKICAgIGZvbnQtc2l6ZTogLjhyZW07CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZQp9CgouZm9ybS0tcm91bmRlZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgYm9yZGVyOiAwIG5vbmUKfQoKLmlucHV0LWdyb3VwLXN1YnNjcmliZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouaW5wdXQtZ3JvdXAtc3Vic2NyaWJlIGlucHV0IHsKICAgIHdpZHRoOiAxMDAlOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07CiAgICBwYWRkaW5nLXJpZ2h0OiA3LjY2NjY3cmVtOwogICAgaGVpZ2h0OiA0cmVtCn0KCi5pbnB1dC1ncm91cC1zdWJzY3JpYmUgYnV0dG9uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHJpZ2h0OiAwOwogICAgdG9wOiAwOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICBwYWRkaW5nOiAwIDEuNjY2NjdyZW07CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgY29sb3I6ICNmZmY7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLmlucHV0LWdyb3VwLXN1YnNjcmliZSAudGV4dC1maWVsZCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmlucHV0LWdyb3VwLXN1YnNjcmliZSAudGV4dC1maWVsZDpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJ1xmMWM2JzsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIGxlZnQ6IDEuNjY2NjdyZW07CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIGZvbnQtc2l6ZTogMS40NjY2N3JlbQp9CgouaW5wdXQtZ3JvdXAtc3Vic2NyaWJlLnN1YnNjcmliZS0tcm91bmRlZCBpbnB1dCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJyZW07CiAgICBib3JkZXItcmFkaXVzOiAycmVtCn0KCi5pbnB1dC1ncm91cC1zdWJzY3JpYmUuc3Vic2NyaWJlLS1yb3VuZGVkIGJ1dHRvbiB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMnJlbSAycmVtIDA7CiAgICBib3JkZXItcmFkaXVzOiAwIDJyZW0gMnJlbSAwCn0KCnNlbGVjdFttdWx0aXBsZV06Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzIsIDM2LCA0MCwgLjA1KQp9CgpzZWxlY3RbbXVsdGlwbGVdOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICB3aWR0aDogNnB4OwogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQKfQoKc2VsZWN0W211bHRpcGxlXTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZThlZDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OwogICAgYm9yZGVyLXJhZGl1czogNXB4Cn0KCi5mb3JtLXdyYXBwZXIgLmNhcmRpZnkgaDUgewogICAgZm9udC13ZWlnaHQ6IDYwMAp9Cgouc2VsZWN0Mi1jb250YWluZXIgewogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudAp9Cgouc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAiXGYxMTAiOwogICAgcmlnaHQ6IDFyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICBmb250LWZhbWlseTogTGluZUF3ZXNvbWUKfQoKLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQKfQoKLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UgewogICAgbWFyZ2luOiA1cHg7CiAgICBiYWNrZ3JvdW5kOiAjZjFmM2Y4OwogICAgYm9yZGVyOiAwOwogICAgY29sb3I6ICM5MTkyYTM7CiAgICBwYWRkaW5nOiAwIDEwcHgKfQoKLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uczo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sgewogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMzYsIDQwLCAuMDUpCn0KCi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnM6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKICAgIHdpZHRoOiA2cHg7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Cgouc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlOGVkOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7CiAgICBib3JkZXItcmFkaXVzOiA1cHgKfQoKLmN1c3RvbV9zZWxlY3Rfd2l0aF9pY29uIC5zZWxlY3QyLXJlc3VsdHMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIHNwYW4gc3Bhbi5sYSB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY3VzdG9tX3NlbGVjdF93aXRoX2ljb24gLnNlbGVjdDItcmVzdWx0cyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiBzcGFuIHNwYW4ubGEgewogICAgZm9udC1zaXplOiAxOHB4OwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0OwogICAgbWFyZ2luLXJpZ2h0OiA0cHg7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouY3VzdG9tLXBob3RvLXVwbG9hZCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmN1c3RvbS1waG90by11cGxvYWQgaW5wdXQgewogICAgd2lkdGg6IDEzLjMzMzMzcmVtOwogICAgaGVpZ2h0OiAxMy4zMzMzM3JlbTsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBvcGFjaXR5OiAwOwogICAgbWFyZ2luOiAwOwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi5jdXN0b20tcGhvdG8tdXBsb2FkIC5jdXN0b20tdXBsb2FkLWJveCAuaW1hZ2UtYm94IHsKICAgIHdpZHRoOiAxMy4zMzMzM3JlbTsKICAgIGhlaWdodDogMTMuMzMzMzNyZW07CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgp9CgouY3VzdG9tLXBob3RvLXVwbG9hZCAuY3VzdG9tLXVwbG9hZC1ib3ggLmltYWdlLWJveCAuaWNvbiB7CiAgICBmb250LXNpemU6IDYuNjY2NjdyZW07CiAgICBjb2xvcjogI2U0ZThlZAp9CgouY3VzdG9tLXBob3RvLXVwbG9hZCAuY3VzdG9tLXVwbG9hZC1ib3ggLmltYWdlLWJveCBzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCi5jdXN0b20tcGhvdG8tdXBsb2FkIC5jdXN0b20tdXBsb2FkLWJveCAuaW1hZ2UtYm94IHNwYW4uZmlsZS1uYW1lIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgouY3VzdG9tLXBob3RvLXVwbG9hZCAuY3VzdG9tLXVwbG9hZC1ib3ggLmltYWdlLWluZm8gewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBtYXJnaW4tbGVmdDogMnJlbQp9CgouY3VzdG9tLXBob3RvLXVwbG9hZCAuY3VzdG9tLXVwbG9hZC1ib3ggLmltYWdlLWluZm8gc3BhbiB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouY3VzdG9tLXVwbG9hZCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmN1c3RvbS11cGxvYWQgaW5wdXQgewogICAgd2lkdGg6IDEzLjMzMzMzcmVtOwogICAgaGVpZ2h0OiAzLjMzMzMzcmVtOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIG9wYWNpdHk6IDA7CiAgICBtYXJnaW46IDA7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLmN1c3RvbS11cGxvYWQgLmN1c3RvbS11cGxvYWQtYm94IC51cGxvYWQtaW5mbyB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIG1hcmdpbi1sZWZ0OiAycmVtCn0KCi5jdXN0b20tdXBsb2FkIC5jdXN0b20tdXBsb2FkLWJveCAudXBsb2FkLWluZm8gc3BhbiB7CiAgICBjb2xvcjogIzkxOTJhMwp9Cgp0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewogICAgcGFkZGluZy10b3A6IDFyZW0KfQoKLmZvcm0tY29udHJvbC1sZyB7CiAgICBmb250LXNpemU6IDFyZW0KfQoKLmhlYWRpbmctc3R5bGVzIC5jYXJkLWJvZHkgewogICAgcGFkZGluZzogM3JlbSAzcmVtIDEuOHJlbQp9CgouaGVhZGluZy1zdHlsZXMgLmNhcmQtYm9keSBoMSwKLmhlYWRpbmctc3R5bGVzIC5jYXJkLWJvZHkgaDIsCi5oZWFkaW5nLXN0eWxlcyAuY2FyZC1ib2R5IGgzLAouaGVhZGluZy1zdHlsZXMgLmNhcmQtYm9keSBoNCwKLmhlYWRpbmctc3R5bGVzIC5jYXJkLWJvZHkgaDUsCi5oZWFkaW5nLXN0eWxlcyAuY2FyZC1ib2R5IGg2IHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5zdWJfaGVhZGluZy1ncm91cCB7CiAgICBtYXJnaW4tYm90dG9tOiAyLjY2cmVtCn0KCi5zdWJfaGVhZGluZy1ncm91cDpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnN1Yl9oZWFkaW5nLWdyb3VwIGgxLAouc3ViX2hlYWRpbmctZ3JvdXAgaDIsCi5zdWJfaGVhZGluZy1ncm91cCBoMywKLnN1Yl9oZWFkaW5nLWdyb3VwIGg0LAouc3ViX2hlYWRpbmctZ3JvdXAgaDUsCi5zdWJfaGVhZGluZy1ncm91cCBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0KfQoKLnN1Yl9oZWFkaW5nLWdyb3VwIC5zdWJIZWFkaW5nLXRvcCB7CiAgICBmb250LXNpemU6IDEuMzNyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbWFyZ2luLWJvdHRvbTogLjRyZW0KfQoKLnN1Yl9oZWFkaW5nLWdyb3VwIC5zdWJIZWFkaW5nLWJvdHRvbSB7CiAgICBmb250LXNpemU6IDEuMnJlbTsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmxlYWQgewogICAgbGluZS1oZWlnaHQ6IDIuNHJlbQp9CgoubGVhZC0tbWVkaXVtIHsKICAgIGZvbnQtc2l6ZTogMS42cmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGxpbmUtaGVpZ2h0OiAyLjkzcmVtCn0KCnAgewogICAgbGluZS1oZWlnaHQ6IDJyZW0KfQoKaDEsCmgyLApoMywKaDQsCmg1LApoNiB7CiAgICBmb250LXdlaWdodDogNjAwCn0KCi5ibG9ja3F1b3RlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBwYWRkaW5nOiAyLjVyZW0gMy4zMzMzM3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICBib3JkZXItcmFkaXVzOiAuM3JlbTsKICAgIG1hcmdpbjogMAp9CgouYmxvY2txdW90ZSBwIHsKICAgIG1hcmdpbjogMDsKICAgIGZvbnQtc2l6ZTogMS4zM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDIuNHJlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmJsb2NrcXVvdGUgLnF1b3RlLWF1dGhvciB7CiAgICBtYXJnaW4tdG9wOiAxLjY2cmVtCn0KCi5ibG9ja3F1b3RlIC5xdW90ZS1hdXRob3IgcCB7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgbGluZS1oZWlnaHQ6IDJyZW07CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHBhZGRpbmctbGVmdDogMy42NjY2N3JlbQp9CgouYmxvY2txdW90ZSAucXVvdGUtYXV0aG9yIHA6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDIuNjY2NjdyZW07CiAgICBoZWlnaHQ6IDJweDsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTA7CiAgICBsZWZ0OiAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLmJsb2NrcXVvdGUgLnF1b3RlLWF1dGhvciBwIHNwYW4gewogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5ibG9ja3F1b3RlLmJsb2NrcXVvdGUxIC5xdW90ZS1hdXRob3IgewogICAgdGV4dC1hbGlnbjogbGVmdAp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlLXNtIHAgewogICAgZm9udC1zaXplOiAxLjA2NjY3cmVtOwogICAgbGluZS1oZWlnaHQ6IDEuODY2NjdyZW0KfQoKLmJsb2NrcXVvdGUuYmxvY2txdW90ZS1zbSAucXVvdGUtYXV0aG9yIHAgewogICAgcGFkZGluZzogMAp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlLXNtIC5xdW90ZS1hdXRob3IgcDpiZWZvcmUgewogICAgY29udGVudDogbm9uZQp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlLXNtIC5xdW90ZS1hdXRob3IgcCBzcGFuIHsKICAgIGZvbnQtc2l6ZTogMXJlbQp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlMywKLmJsb2NrcXVvdGUuYmxvY2txdW90ZTQgewogICAgYm9yZGVyOiAwIG5vbmU7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXItcmFkaXVzOiAwOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20oIzQxM2FhNCksIHRvKCMwNmI1OTApKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjNDEzYWE0LCAjMDZiNTkwKQp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlMyBwLAouYmxvY2txdW90ZS5ibG9ja3F1b3RlNCBwIHsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBjb2xvcjogI2ZmZgp9CgouYmxvY2txdW90ZS5ibG9ja3F1b3RlMyAucXVvdGUtYXV0aG9yIHAsCi5ibG9ja3F1b3RlLmJsb2NrcXVvdGU0IC5xdW90ZS1hdXRob3IgcCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNykKfQoKLmJsb2NrcXVvdGUuYmxvY2txdW90ZTMgLnF1b3RlLWF1dGhvciBzcGFuLAouYmxvY2txdW90ZS5ibG9ja3F1b3RlNCAucXVvdGUtYXV0aG9yIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKLmJsb2NrcXVvdGUuYmxvY2txdW90ZTMgLnF1b3RlLWF1dGhvciB7CiAgICB0ZXh0LWFsaWduOiBsZWZ0Cn0KCi5ibG9ja3F1b3RlLmJsb2NrcXVvdGUxLAouYmxvY2txdW90ZS5ibG9ja3F1b3RlMyB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmJsb2NrcXVvdGUuYmxvY2txdW90ZTE6YmVmb3JlLAouYmxvY2txdW90ZS5ibG9ja3F1b3RlMzpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogIlxmMmNlIjsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTsKICAgIGZvbnQtc2l6ZTogOHJlbTsKICAgIGxlZnQ6IDIuMzMzMzNyZW07CiAgICBib3R0b206IC42NjY2N3JlbQp9CgoucXVvdGVzLXdpdGgtaW1hZ2UgewogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20oIzQxM2FhNCksIHRvKCMwNmI1OTApKTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjNDEzYWE0LCAjMDZiNTkwKQp9CgouYmxvY2txdW90ZTUgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYmxvY2txdW90ZTUgLnN0cm9uZyB7CiAgICBmb250LXNpemU6IDEuNDY2NjdyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiAyLjMzMzMzcmVtOwogICAgbGluZS1oZWlnaHQ6IDIuNHJlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG1hcmdpbi10b3A6IDIuNjY2NjdyZW0KfQoKLmJsb2NrcXVvdGU1IC5zdHJvbmc6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICJcZjJjZCI7CiAgICBmb250LWZhbWlseTogTGluZUF3ZXNvbWU7CiAgICBmb250LXNpemU6IDEwcmVtOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpOwogICAgbGVmdDogMDsKICAgIHRvcDogLTFyZW0KfQoKLmJsb2NrcXVvdGU1IHAgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpCn0KCi5ibG9ja3F1b3RlNSAuYXV0aG9yLXNpZ24gewogICAgZm9udC1zaXplOiAyLjMzMzMzcmVtOwogICAgZm9udC1mYW1pbHk6IEFsbHVyYSwgY3Vyc2l2ZTsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tdG9wOiAycmVtCn0KCi5ociB7CiAgICBtYXJnaW46IDUuMzMzMzNyZW0gMAp9CgouYWNjb3JkaW9uX29uZSwKLmFjY29yZGlvbl90d28gewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIHBhZGRpbmc6IDIuNjY2NjdyZW07CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5hY2NvcmRpb25fb25lIC5hY2NvcmRpb24tc2luZ2xlLAouYWNjb3JkaW9uX3R3byAuYWNjb3JkaW9uLXNpbmdsZSB7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9CgouYWNjb3JkaW9uX29uZSAuYWNjb3JkaW9uLXNpbmdsZTpmaXJzdC1jaGlsZCwKLmFjY29yZGlvbl90d28gLmFjY29yZGlvbi1zaW5nbGU6Zmlyc3QtY2hpbGQgewogICAgcGFkZGluZy10b3A6IDAKfQoKLmFjY29yZGlvbl9vbmUgLmFjY29yZGlvbi1zaW5nbGU6Zmlyc3QtY2hpbGQgaDYgYSwKLmFjY29yZGlvbl90d28gLmFjY29yZGlvbi1zaW5nbGU6Zmlyc3QtY2hpbGQgaDYgYSB7CiAgICBwYWRkaW5nLXRvcDogMAp9CgouYWNjb3JkaW9uX29uZSAuYWNjb3JkaW9uLXNpbmdsZTpmaXJzdC1jaGlsZCBoNiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06YmVmb3JlLAouYWNjb3JkaW9uX3R3byAuYWNjb3JkaW9uLXNpbmdsZTpmaXJzdC1jaGlsZCBoNiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06YmVmb3JlIHsKICAgIHRvcDogMTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpCn0KCi5hY2NvcmRpb25fb25lIC5hY2NvcmRpb24tc2luZ2xlOmZpcnN0LWNoaWxkIGg2IGFbYXJpYS1leHBhbmRlZD1mYWxzZV06YmVmb3JlLAouYWNjb3JkaW9uX3R3byAuYWNjb3JkaW9uLXNpbmdsZTpmaXJzdC1jaGlsZCBoNiBhW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdOmJlZm9yZSB7CiAgICB0b3A6IDEwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKQp9CgouYWNjb3JkaW9uX29uZSAuYWNjb3JkaW9uLXNpbmdsZSBoNiBhLAouYWNjb3JkaW9uX3R3byAuYWNjb3JkaW9uLXNpbmdsZSBoNiBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZGlzcGxheTogYmxvY2s7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nOiAxLjMzcmVtIDJyZW0gMXJlbSAwOwogICAgZm9udC1zaXplOiAxLjA2NjY3cmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGN1cnNvcjogcG9pbnRlcgp9CgouYWNjb3JkaW9uX29uZSAuYWNjb3JkaW9uLXNpbmdsZSBoNiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06YmVmb3JlLAouYWNjb3JkaW9uX3R3byAuYWNjb3JkaW9uLXNpbmdsZSBoNiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICdcZjExMCc7CiAgICBmb250LWZhbWlseTogTGluZUF3ZXNvbWU7CiAgICByaWdodDogMDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgY29sb3I6ICM5MTkyYTM7CiAgICBmb250LXNpemU6IC45MzMzM3JlbQp9CgouYWNjb3JkaW9uX29uZSAuYWNjb3JkaW9uLXNpbmdsZSBoNiBhW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdOmJlZm9yZSwKLmFjY29yZGlvbl90d28gLmFjY29yZGlvbi1zaW5nbGUgaDYgYVthcmlhLWV4cGFuZGVkPWZhbHNlXTpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJ1xmMTEzJzsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZSwgc2Fucy1zZXJpZjsKICAgIHJpZ2h0OiAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICBmb250LXNpemU6IC45MzMzM3JlbTsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCi5hY2NvcmRpb25fdHdvIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIHBhZGRpbmc6IDNyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4zcmVtOwogICAgYm9yZGVyLXJhZGl1czogLjNyZW0KfQoKLmFjY29yZGlvbl90d28gLmFjY29yZGlvbi1zaW5nbGUgaDYgYVthcmlhLWV4cGFuZGVkPXRydWVdOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGYyOGUnOwogICAgY29sb3I6ICM5MTkyYTMKfQoKLmFjY29yZGlvbl90d28gLmFjY29yZGlvbi1zaW5nbGUgaDYgYVthcmlhLWV4cGFuZGVkPWZhbHNlXTpiZWZvcmUgewogICAgY29udGVudDogJ1xmMmMyJwp9CgouYWNjb3JkaW9uX3RocmVlIC5hY2NvcmRpb24tc2luZ2xlIHsKICAgIG1hcmdpbi1ib3R0b206IDVweAp9CgouYWNjb3JkaW9uX3RocmVlIC5hY2NvcmRpb24taGVhZGluZyBoNiBhIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogMXJlbSAyLjY2NjY3cmVtIDFyZW0gMnJlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgbGluZS1oZWlnaHQ6IDEuNDY2NjdyZW07CiAgICBmb250LXNpemU6IDFyZW07CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5hY2NvcmRpb25fdGhyZWUgLmFjY29yZGlvbi1oZWFkaW5nIGg2IGFbYXJpYS1leHBhbmRlZD10cnVlXSB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgY29sb3I6ICNmZmYKfQoKLmFjY29yZGlvbl90aHJlZSAuYWNjb3JkaW9uLWhlYWRpbmcgaDYgYVthcmlhLWV4cGFuZGVkPXRydWVdOmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGYyOGUnOwogICAgY29sb3I6ICNmZmYKfQoKLmFjY29yZGlvbl90aHJlZSAuYWNjb3JkaW9uLWhlYWRpbmcgaDYgYTpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJ1xmMmMyJzsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIHJpZ2h0OiAycmVtOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouYWNjb3JkaW9uX3RocmVlIC5hY2NvcmRpb24tY29udGVudHMgewogICAgcGFkZGluZzogMS4zM3JlbSAycmVtIC42NnJlbQp9CgouYWNjb3JkaW9uX3RocmVlIC5jb2xsYXBzZWQuYmctZ3JheS1saWdodCB7CiAgICBiYWNrZ3JvdW5kOiAjZjVmNGY3Cn0KCi5hY2NvcmRpb25fZm91ciAuYWNjb3JkaW9uLXNpbmdsZSB7CiAgICBtYXJnaW4tYm90dG9tOiA1cHgKfQoKLmFjY29yZGlvbl9mb3VyIC5hY2NvcmRpb24taGVhZGluZyBoNiBhIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgcGFkZGluZzogMXJlbSAyLjY2NjY3cmVtIDFyZW0gMnJlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgbGluZS1oZWlnaHQ6IDEuNDY2NjdyZW07CiAgICBmb250LXNpemU6IDFyZW07CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5hY2NvcmRpb25fZm91ciAuYWNjb3JkaW9uLWhlYWRpbmcgaDYgYVthcmlhLWV4cGFuZGVkPXRydWVdIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTA7CiAgICBjb2xvcjogI2ZmZgp9CgouYWNjb3JkaW9uX2ZvdXIgLmFjY29yZGlvbi1oZWFkaW5nIGg2IGFbYXJpYS1leHBhbmRlZD10cnVlXTpiZWZvcmUgewogICAgY29udGVudDogJ1xmMjhlJzsKICAgIGNvbG9yOiAjZmZmCn0KCi5hY2NvcmRpb25fZm91ciAuYWNjb3JkaW9uLWhlYWRpbmcgaDYgYVthcmlhLWV4cGFuZGVkPXRydWVdIGkgewogICAgY29sb3I6ICNmZmYKfQoKLmFjY29yZGlvbl9mb3VyIC5hY2NvcmRpb24taGVhZGluZyBoNiBhOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnXGYyYzInOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgcmlnaHQ6IDJyZW07CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCi5hY2NvcmRpb25fZm91ciAuYWNjb3JkaW9uLWhlYWRpbmcgaDYgYSBpIHsKICAgIGZvbnQtc2l6ZTogMS40cmVtOwogICAgY29sb3I6ICMwNmI1OTA7CiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgouYWNjb3JkaW9uX2ZvdXIgLmFjY29yZGlvbi1jb250ZW50cyB7CiAgICBwYWRkaW5nOiAxLjMzcmVtIDJyZW0gLjY2cmVtCn0KCi5hY2NvcmRpb25fZm91ciAuY29sbGFwc2VkLmJnLWdyYXktbGlnaHQgewogICAgYmFja2dyb3VuZDogI2Y1ZjRmNwp9CgouYWxlcnQtZ3JvdXAgLmFsZXJ0Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYWxlcnQgewogICAgYm9yZGVyOiAwIG5vbmUKfQoKLmFsZXJ0IHN0cm9uZyB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgZm9udC1zaXplOiAxLjA2cmVtCn0KCi5hbGVydCBhIHsKICAgIGNvbG9yOiBpbmhlcml0OwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGZvbnQtc2l6ZTogMS4wNnJlbQp9CgouYWxlcnQgcCB7CiAgICBtYXJnaW46IDAKfQoKLmFsZXJ0IGkubGEgewogICAgcGFkZGluZy1yaWdodDogLjY2cmVtOwogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0b3A6IDJweAp9CgouYWxlcnQuYWxlcnQtb3V0bGluZSB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDFweCBzb2xpZAp9CgouYWxlcnQuYWxlcnQtZGlzbWlzc2libGUgLmNsb3NlIHsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgcmlnaHQ6IDJyZW07CiAgICBwYWRkaW5nOiAwCn0KCi5hbGVydC5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2U6Zm9jdXMgewogICAgb3V0bGluZTogMAp9CgouY2FyZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbTsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLmNhcmQgZmlndXJlIHsKICAgIG1hcmdpbjogMAp9CgouY2FyZCAuY2FyZC1ib2R5IC5jYXJkLXRpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDI1cHgKfQoKLmNhcmQgLmNhcmQtYm9keSBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgbGluZS1oZWlnaHQ6IDEuODY2NjdyZW0KfQoKLmNhcmQgLmNhcmQtYm9keSBoNCBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5jYXJkIC5jYXJkLWZvb3RlciB7CiAgICBwYWRkaW5nOiAxLjY2NjY3cmVtIDJyZW0KfQoKLmNhcmQgLmNhcmQtZm9vdGVyIHVsIHsKICAgIG1hcmdpbjogMAp9CgouY2FyZC5jYXJkLXNoYWRvdyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkKfQoKLmNhcmQuY2FyZC0tZGFyayB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5jYXJkLmNhcmQtLWRhcmsgLmNhcmQtaGVhZGVyIHsKICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7CiAgICBwYWRkaW5nOiAxLjUzMzMzcmVtIDJyZW0gMnJlbQp9CgouY2FyZC5jYXJkLS1kYXJrIC5jYXJkLWhlYWRlciBoNSB7CiAgICBtYXJnaW46IDAKfQoKLmNhcmQuY2FyZC0tc2lkZWJhciAuY2FyZC1oZWFkZXIgewogICAgcGFkZGluZzogMnJlbQp9CgouY2FyZC5jYXJkLS1zaWRlYmFyIC5jYXJkLWhlYWRlciBoNCB7CiAgICBtYXJnaW46IDAKfQoKLmNhcmQuY2FyZC0tc2lkZWJhciAuY2FyZC1ib2R5IHsKICAgIHBhZGRpbmc6IDJyZW0gMnJlbSAzLjMzMzMzcmVtCn0KCi5jYXJkLW9uZSB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5jYXJkLW9uZSBmaWd1cmUgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jYXJkLW9uZSBmaWd1cmUgZmlnY2FwdGlvbiB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDYsIDE4MSwgMTQ0LCAuOCk7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgb3BhY2l0eTogMDsKICAgIHZpc2liaWxpdHk6IGhpZGRlbgp9CgouY2FyZC1vbmUgZmlndXJlIGZpZ2NhcHRpb24gYSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4OwogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94OwogICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICB3aWR0aDogMy4zMzMzM3JlbTsKICAgIGhlaWdodDogMy4zMzMzM3JlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsKICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSkKfQoKLmNhcmQtb25lIGZpZ3VyZSBmaWdjYXB0aW9uIGE6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGNvbG9yOiAjZmZmCn0KCi5jYXJkLW9uZSAuY2FyZC1zdWJ0aXRsZSB7CiAgICBtYXJnaW46IDAgMCAuNjY2NjdyZW0gMDsKICAgIGxpbmUtaGVpZ2h0OiAxCn0KCi5jYXJkLW9uZTpob3ZlciBmaWd1cmUgZmlnY2FwdGlvbiB7CiAgICBvcGFjaXR5OiAxOwogICAgdmlzaWJpbGl0eTogdmlzaWJsZQp9CgouY2FyZC1vbmU6aG92ZXIgZmlndXJlIGZpZ2NhcHRpb24gYSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSkKfQoKLmNhcmQtdHdvIC5jYXJkLWZvb3RlciB1bCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouY2FyZC10d28gLmNhcmQtZm9vdGVyIHVsIGxpIHsKICAgIGNvbG9yOiAjOTE5MmEzOwogICAgcGFkZGluZy1yaWdodDogMXJlbTsKICAgIG1hcmdpbi1yaWdodDogMXJlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouY2FyZC10d28gLmNhcmQtZm9vdGVyIHVsIGxpOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnfCc7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGNvbG9yOiAjZTRlOGVkCn0KCi5jYXJkLXR3byAuY2FyZC1mb290ZXIgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmNhcmQtdHdvIC5jYXJkLWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkOmJlZm9yZSB7CiAgICBjb250ZW50OiBub25lCn0KCi5jYXJkLXR3byAuY2FyZC1mb290ZXIgdWwgbGkgYSB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouY2FyZC10ZXh0LAouY2FyZC10aHJlZSwKLmNhcmQtdmlkZW8gewogICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50Cn0KCi5jYXJkLXRleHQgLmNhcmQtc3VidGl0bGUsCi5jYXJkLXRocmVlIC5jYXJkLXN1YnRpdGxlLAouY2FyZC12aWRlbyAuY2FyZC1zdWJ0aXRsZSB7CiAgICBtYXJnaW46IDAgMCAuNjY2NjdyZW0gMAp9CgouY2FyZC10ZXh0IC5jYXJkLXRleHQsCi5jYXJkLXRocmVlIC5jYXJkLXRleHQsCi5jYXJkLXZpZGVvIC5jYXJkLXRleHQgewogICAgbWFyZ2luLXRvcDogMXJlbQp9CgouY2FyZC12aWRlbyBmaWd1cmUgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jYXJkLXZpZGVvIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMzIsIDM2LCA0MCwgLjIpOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmNhcmQtdmlkZW8gZmlndXJlIGZpZ2NhcHRpb24gYSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4OwogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94OwogICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICB3aWR0aDogM3JlbTsKICAgIGhlaWdodDogM3JlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBjb2xvcjogIzA2YjU5MDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmNhcmQtdmlkZW8gZmlndXJlIGZpZ2NhcHRpb24gYSAuc3ZnIHsKICAgIHdpZHRoOiAuODY2NjdyZW07CiAgICBmaWxsOiAjMDZiNTkwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmNhcmQtdmlkZW8gZmlndXJlIGZpZ2NhcHRpb24gYTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwCn0KCi5jYXJkLXZpZGVvIGZpZ3VyZSBmaWdjYXB0aW9uIGE6aG92ZXIgLnN2ZyB7CiAgICBmaWxsOiAjZmZmCn0KCi5jYXJkLXRleHQgLmNhcmQtYm9keSBoNSB7CiAgICBtYXJnaW46IDAgMCAycmVtIDAKfQoKLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudAp9CgouY2FyZC1mb3VyIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmNhcmQtZm91ciAuY2FyZC1ib2R5IC5jYXJkLXN1YnRpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDRweAp9CgouY2FyZC1mb3VyIC5jYXJkLWJvZHkgaDUgewogICAgbWFyZ2luLWJvdHRvbTogMS4zM3JlbQp9CgouY2FyZC1mb3VyIC5jYXJkLWJvZHkgaDUgYSB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouY2FyZC1mb3VyIC5jYXJkLWJvZHkgLmNhcmQtdGV4dCB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW0KfQoKLmNhcmQtcHJvZHVjdCB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jYXJkLXByb2R1Y3QgZmlndXJlIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLmNhcmQtcHJvZHVjdCBmaWd1cmUgZmlnY2FwdGlvbiB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICBib3R0b206IC03NnB4OwogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgb3BhY2l0eTogMAp9CgouY2FyZC1wcm9kdWN0IGZpZ3VyZSBmaWdjYXB0aW9uIHVsIHsKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IC44cmVtIDAKfQoKLmNhcmQtcHJvZHVjdCBmaWd1cmUgZmlnY2FwdGlvbiB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1sZWZ0OiAuNjZyZW0KfQoKLmNhcmQtcHJvZHVjdCBmaWd1cmUgZmlnY2FwdGlvbiB1bCBhLmJ0bi0tcm91bmRlZCB7CiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpOwogICAgY29sb3I6ICNmZmYKfQoKLmNhcmQtcHJvZHVjdCBmaWd1cmUgZmlnY2FwdGlvbiB1bCAubGlrZS1idG4gewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jYXJkLXByb2R1Y3QgZmlndXJlIGZpZ2NhcHRpb24gdWwgLmxpa2UtYnRuIGkgewogICAgei1pbmRleDogMgp9CgouY2FyZC1wcm9kdWN0IGZpZ3VyZSBmaWdjYXB0aW9uIHVsIC5saWtlLWJ0bjpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmNhcmQtcHJvZHVjdCAuY2FyZC1ib2R5IHsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHBhZGRpbmc6IDEuNjY2NjdyZW0gMnJlbQp9CgouY2FyZC1wcm9kdWN0IC5jYXJkLWJvZHkgaDYgewogICAgbWFyZ2luLWJvdHRvbTogNXB4Cn0KCi5jYXJkLXByb2R1Y3QgLmNhcmQtYm9keSBoNiBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmNhcmQtcHJvZHVjdCAuY2FyZC1ib2R5IC5wcmljZXMgewogICAgbWFyZ2luLXRvcDogLjY2NjY3cmVtCn0KCi5jYXJkLXByb2R1Y3QgLmNhcmQtYm9keSAucHJpY2VzIC5wcm9kdWN0LXByaWNlIHsKICAgIGZvbnQtc2l6ZTogMS4zM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBsaW5lLWhlaWdodDogMS4ycmVtOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrCn0KCi5jYXJkLXByb2R1Y3QgLmNhcmQtYm9keSAucHJpY2VzIC5vbGQtcHJpY2UgewogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIG1hcmdpbi1yaWdodDogN3B4OwogICAgY29sb3I6ICM5MTkyYTM7CiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaAp9CgouY2FyZC1wcm9kdWN0OmhvdmVyIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgIG9wYWNpdHk6IDE7CiAgICBib3R0b206IDAKfQoKLmNhcmQtcHJvZHVjdCAuYmFkZ2UgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogLjY2cmVtOwogICAgdG9wOiAuNjZyZW07CiAgICBwYWRkaW5nOiA2cHggMTBweDsKICAgIGZvbnQtc2l6ZTogLjhyZW07CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5jYXJkLXNpeCAuY2FyZC1ib2R5IGg1IHsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLmNhcmQtc2l4IC5jYXJkLWJvZHkgaDUgYSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5jYXJkLXNpeCAuY2FyZC1ib2R5IGg1IGE6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLmNhcmQtLXNldmVuIC5jYXJkLWJvZHkgewogICAgcGFkZGluZy1ib3R0b206IDJyZW0KfQoKLmNhcmQtLXNldmVuIC5jYXJkLWJvZHkgaDYgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouY2FyZC0tc2V2ZW4gLmNhcmQtYm9keSBoNiBhIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5jYXJkLS1zZXZlbiAuY2FyZC1ib2R5IHAgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY2FyZC0tc2V2ZW4gLmNhcmQtYm9keSAuYnRuIHsKICAgIG1hcmdpbi10b3A6IDEuNjY2NjdyZW0KfQoKLmNhcmQtLXNldmVuOmhvdmVyIC5jYXJkLWJvZHkgaDUgYSB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY2FyZC0tZWlnaHQgLmNhcmQtYm9keSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbQp9CgouY2FyZC0tZWlnaHQgLmNhcmQtYm9keSBoNSB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5jYXJkLS1laWdodCAuY2FyZC1ib2R5IGg1IGEgewogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmNhcmQtLWVpZ2h0IC5jYXJkLWJvZHkgaDUgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY2FyZC0tZWlnaHQgLmNhcmQtYm9keSBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmNhcmQtLWVpZ2h0IC5jYXJkLWJvZHkgLmJ0biB7CiAgICBtYXJnaW4tdG9wOiAxLjY2NjY3cmVtCn0KCi5jYXJkLS10ZW4gewogICAgbWFyZ2luLWJvdHRvbTogNC42NjY2N3JlbQp9CgouY2FyZC0tdGVuIGZpZ3VyZSB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jYXJkLS1lbGV2ZW4gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5jYXJkLS1lbGV2ZW4gZmlndXJlIGltZyB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4zMzMzM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4zMzMzM3JlbQp9CgouY2FyZC0tZWxldmVuIC5jYXJkLWJvZHkgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYm90dG9tOiAwOwogICAgbGVmdDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgbWluLWhlaWdodDogMTAwcHg7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCA1OCwgMTY0LCAuNyk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgb3BhY2l0eTogMTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgcGFkZGluZzogMS4zMzMzM3JlbSAycmVtOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5jYXJkLS1lbGV2ZW4gLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyAuY29udGVudC10b3AgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5jYXJkLS1lbGV2ZW4gLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyAuY29udGVudC10b3Agc3BhbiB7CiAgICBmb250LXNpemU6IDIuNHJlbTsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luLXJpZ2h0OiAxcmVtCn0KCi5jYXJkLS1lbGV2ZW4gLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyAuY29udGVudC10b3AgaDYgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY2FyZC0tZWxldmVuIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtYm90dG9tIHsKICAgIG1heC1oZWlnaHQ6IDA7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC41cyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogLjVzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZTsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLmNhcmQtLWVsZXZlbiAuY2FyZC1ib2R5IC5jYXJkLWNvbnRlbnRzIC5jb250ZW50LWJvdHRvbSBwIHsKICAgIG1hcmdpbi10b3A6IDFyZW0KfQoKLmNhcmQtLWVsZXZlbiAuY2FyZC1ib2R5IGg2IHsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY2FyZC0tZWxldmVuIC5jYXJkLWJvZHkgcCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOSk7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5jYXJkLS1lbGV2ZW46aG92ZXIgLmNhcmQtYm9keSB7CiAgICBtaW4taGVpZ2h0OiAxMDAlCn0KCi5jYXJkLS1lbGV2ZW46aG92ZXIgLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHBhZGRpbmc6IDAgMi42NjY2N3JlbQp9CgouY2FyZC0tZWxldmVuOmhvdmVyIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtdG9wIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5jYXJkLS1lbGV2ZW46aG92ZXIgLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyAuY29udGVudC10b3Agc3BhbiB7CiAgICBkaXNwbGF5OiBub25lCn0KCi5jYXJkLS1lbGV2ZW46aG92ZXIgLmNhcmQtYm9keSAuY2FyZC1jb250ZW50cyAuY29udGVudC10b3AgaDUgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouY2FyZC0tZWxldmVuOmhvdmVyIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtYm90dG9tIHsKICAgIG1heC1oZWlnaHQ6IDMwMHB4Cn0KCi5jYXJkLXR3ZWx2ZSB7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKQp9CgouY2FyZC10d2VsdmUgLmNhcmQtYm9keSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbQp9CgouY2FyZC10d2VsdmUgLmNhcmQtYm9keSAuc3RlcCB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGZvbnQtc2l6ZTogMi40cmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgbGluZS1oZWlnaHQ6IDEKfQoKLmNhcmQtdHdlbHZlIC5jYXJkLWJvZHkgaDYgewogICAgbWFyZ2luOiAxcmVtIDA7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouY2FyZC10d2VsdmUgLmNhcmQtYm9keSBwIHsKICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbQp9CgouY2FyZC0tZm91cnRlZW4gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgYm9yZGVyOiAwIG5vbmUKfQoKLmNhcmQtLWZvdXJ0ZWVuOmhvdmVyIC5jYXJkLWJvZHkgewogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICAgIG9wYWNpdHk6IDE7CiAgICBib3R0b206IDAKfQoKLmNhcmQtLWZvdXJ0ZWVuIGZpZ3VyZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLmNhcmQtLWZvdXJ0ZWVuIC5jYXJkLWJvZHkgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYm90dG9tOiAtNTBweDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGJhY2tncm91bmQ6IHJnYmEoNTUsIDEyNSwgMjU1LCAuOSk7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICBwYWRkaW5nOiAxcmVtIDJyZW07CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4OwogICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHgKfQoKLmNhcmQtLWZvdXJ0ZWVuIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtdG9wIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmNhcmQtLWZvdXJ0ZWVuIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtdG9wIGg2IGEgewogICAgY29sb3I6ICNmZmYKfQoKLmNhcmQtLWZvdXJ0ZWVuIC5jYXJkLWJvZHkgLmNhcmQtY29udGVudHMgLmNvbnRlbnQtdG9wIHNwYW4gewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpOwogICAgbWFyZ2luLWJvdHRvbTogLjMzMzMzcmVtOwogICAgZGlzcGxheTogYmxvY2sKfQoKLmNhcmQtLXRlc3RpbW9uaWFsIHsKICAgIHBhZGRpbmc6IDJyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAxCn0KCi5jYXJkLS10ZXN0aW1vbmlhbDpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogIlxmMmNlIjsKICAgIHJpZ2h0OiAycmVtOwogICAgdG9wOiAycmVtOwogICAgY29sb3I6IHJnYmEoNjUsIDU4LCAxNjQsIC4xKTsKICAgIGZvbnQtc2l6ZTogNS4zMzMzM3JlbTsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZTsKICAgIGxpbmUtaGVpZ2h0OiAxOwogICAgei1pbmRleDogLTEKfQoKLmNhcmQtLXRlc3RpbW9uaWFsIC5hdXRob3IgewogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5jYXJkLS10ZXN0aW1vbmlhbCAuYXV0aG9yIC5hdXRob3Itc3BlYyB7CiAgICBtYXJnaW4tbGVmdDogMXJlbQp9CgouY2FyZC0tdGVzdGltb25pYWwgLmF1dGhvciAuYXV0aG9yLXNwZWMgaDYgewogICAgbWFyZ2luLWJvdHRvbTogLjUzMzMzcmVtCn0KCi5jYXJkLS10ZXN0aW1vbmlhbCAuY29udGVudCB7CiAgICBtYXJnaW4tdG9wOiAxLjMzMzMzcmVtCn0KCi5jYXJkLS10ZXN0aW1vbmlhbCAuY29udGVudCBwIHsKICAgIG1hcmdpbjogMAp9CgouY2FyZC0tdGVzdGltb25pYWwyIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjNmM2YzICFpbXBvcnRhbnQKfQoKLmNhcmQtLXRlc3RpbW9uaWFsMiAuY2FyZC1ib2R5IGg2IHsKICAgIHBhZGRpbmctdG9wOiAxOHB4OwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmNhcmQtLXRlc3RpbW9uaWFsMiAucmF0aW5ncyB7CiAgICBtYXJnaW46IC4zMzMzM3JlbSAwIDFyZW0gMDsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi5jYXJkLS10ZXN0aW1vbmlhbDIgLnJhdGluZ3Mgc3BhbiB7CiAgICBtYXJnaW46IDAgMXB4IDAgMAp9CgouY2FyZC0tdGVzdGltb25pYWwyIC5yYXRpbmdzIHNwYW46bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tLXJpZ2h0OiAwCn0KCi5jYXJkLS10ZXN0aW1vbmlhbDIgLmF1dGhvci1zcGVjIHsKICAgIG1hcmdpbi10b3A6IDEuMzMzMzNyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jYXJkLS10ZXN0aW1vbmlhbDIgLmF1dGhvci1zcGVjIHN0cm9uZyB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnRlYW0tY2Fyb3VzZWwtb25lIC5uYXYtc3F1YXJlIHsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIG9wYWNpdHk6IDA7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoudGVhbS1jYXJvdXNlbC1vbmU6aG92ZXIgLm5hdi1zcXVhcmUgewogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICAgIG9wYWNpdHk6IDEKfQoKLmNhcmQtLXRlYW0xIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNmM2YzZjMgIWltcG9ydGFudAp9CgouY2FyZC0tdGVhbTEgLmNhcmQtYm9keSB7CiAgICBwYWRkaW5nOiAycmVtCn0KCi5jYXJkLS10ZWFtMSAuY2FyZC1ib2R5IGg2IHsKICAgIG1hcmdpbjogMS4zMzMzM3JlbSAwIC42NjY2N3JlbSAwCn0KCi5jYXJkLS10ZWFtMSAuY2FyZC1ib2R5IC50ZWFtLWRlc2lnbmF0aW9uIHsKICAgIHBhZGRpbmc6IDAgMXJlbTsKICAgIGxpbmUtaGVpZ2h0OiAycmVtOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgYmFja2dyb3VuZDogcmdiYSg2LCAxODEsIDE0NCwgLjEpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY2FyZC0tdGVhbTEgLmNhcmQtYm9keSAudGVhbS1zb2NpYWwgewogICAgbWFyZ2luOiAxLjY2NjY3cmVtIDAgMCAwCn0KCi5jYXJkLS10ZWFtMSAuY2FyZC1ib2R5IC50ZWFtLXNvY2lhbCBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IC42NjY2N3JlbQp9CgouY2FyZC0tdGVhbTEgLmNhcmQtYm9keSAudGVhbS1zb2NpYWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmNhcmQtLXRlYW0xIC5jYXJkLWJvZHkgLnRlYW0tc29jaWFsIGxpIGEgewogICAgY29sb3I6IHJnYmEoMTQ1LCAxNDYsIDE2MywgLjcpOwogICAgZm9udC1zaXplOiAuOTMzMzNyZW07CiAgICB3aWR0aDogMi4yNjY2N3JlbTsKICAgIGhlaWdodDogMi4yNjY2N3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjByZW07CiAgICBib3JkZXItcmFkaXVzOiAyMHJlbTsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ1LCAyNDcsIDI1MiwgLjUpOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKfQoKLmNhcmQtLXRlYW0xIC5jYXJkLWJvZHkgLnRlYW0tc29jaWFsIGxpIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLmNhcmQtLXRlYW0yIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXI6IDAgbm9uZQp9CgouY2FyZC0tdGVhbTIgZmlndXJlIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKLmNhcmQtLXRlYW0yIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIG9wYWNpdHk6IDA7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjkpOwogICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLjkpOwogICAgdHJhbnNmb3JtOiBzY2FsZSguOSk7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogLjRzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZQp9CgouY2FyZC0tdGVhbTIgZmlndXJlIGZpZ2NhcHRpb24gLnRlYW0tc29jaWFsIHsKICAgIG1hcmdpbjogMCAwIDIuNjY2NjdyZW0gMAp9CgouY2FyZC0tdGVhbTIgZmlndXJlIGZpZ2NhcHRpb24gLnRlYW0tc29jaWFsIGxpIHsKICAgIG1hcmdpbi1yaWdodDogMS4zMzMzM3JlbQp9CgouY2FyZC0tdGVhbTIgZmlndXJlIGZpZ2NhcHRpb24gLnRlYW0tc29jaWFsIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5jYXJkLS10ZWFtMiBmaWd1cmUgZmlnY2FwdGlvbiAudGVhbS1zb2NpYWwgbGkgYSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbQp9CgouY2FyZC0tdGVhbTIgZmlndXJlIGZpZ2NhcHRpb24gLmJ0bi1vdXRsaW5lLWxpZ2h0IHsKICAgIGNvbG9yOiAjZmZmCn0KCi5jYXJkLS10ZWFtMiAuY2FyZC1ib2R5IHsKICAgIHBhZGRpbmc6IDFyZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmNhcmQtLXRlYW0yIC5jYXJkLWJvZHkgaDYgewogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiAuMzMzMzNyZW0KfQoKLmNhcmQtLXRlYW0yIC5jYXJkLWJvZHkgc3BhbiB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNykKfQoKLmNhcmQtLXRlYW0yOmhvdmVyIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgIG9wYWNpdHk6IDE7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpCn0KCi5jYXJkLS10ZWFtMyB7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmNhcmQtLXRlYW0zIC5jYXJkX190aHVtYm5haWwgaW1nIHsKICAgIHdpZHRoOiAxMDAlCn0KCi5jYXJkLS10ZWFtMyAuY2FyZC1ib2R5IHsKICAgIHBhZGRpbmc6IDEuNnJlbSAycmVtCn0KCi5jYXJkLS10ZWFtMyAuY2FyZC1ib2R5PnAgewogICAgbWFyZ2luLWJvdHRvbTogMjVweAp9CgouY2FyZC0tdGVhbTMgLmNhcmQtYm9keSBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAuMzMzMzNyZW07CiAgICBjb2xvcjogIzIwMjQyOAp9CgouY2FyZC0tdGVhbTMgLmNhcmQtYm9keSAuc3VidGl0bGUgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOwogICAgZm9udC1zaXplOiAuOTMzMzNyZW07CiAgICBjb2xvcjogIzkxOTJhMwp9CgouY2FyZC5jYXJkLS10ZWFtNCB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmNhcmQuY2FyZC0tdGVhbTQgLnRlYW0taW1hZ2UgewogICAgLXdlYmtpdC1ib3gtZmxleDogMDsKICAgIC13ZWJraXQtZmxleDogbm9uZTsKICAgIC1tcy1mbGV4OiBub25lOwogICAgZmxleDogbm9uZQp9CgouY2FyZC5jYXJkLS10ZWFtNCAudGVhbS1pbmZvIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDVweAp9CgouY2FyZC5jYXJkLS10ZWFtNCAudGVhbS1pbmZvIGg2IGEgewogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmNhcmQuY2FyZC0tdGVhbTQgcCB7CiAgICBtYXJnaW46IDAKfQoKLmNhcmQuY2FyZC0tdGVhbTQ6aG92ZXIgLnRlYW0taW5mbyBoNSBhIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5wb3N0LS1jYXJkIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpCn0KCi5wb3N0LS1jYXJkIC5jYXJkLWJvZHkgaDYgewogICAgbWFyZ2luOiAwIDAgLjY2NjY3cmVtIDAKfQoKLnBvc3QtLWNhcmQgLmNhcmQtYm9keSBoNiBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnBvc3QtLWNhcmQgLmNhcmQtYm9keSBoNiBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5wb3N0LS1jYXJkIC5jYXJkLWJvZHkgLnBvc3QtbWV0YSB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5wb3N0LS1jYXJkIC5jYXJkLWJvZHkgLnBvc3QtbWV0YSBsaSB7CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIG1hcmdpbi1yaWdodDogMXJlbQp9CgoucG9zdC0tY2FyZCAuY2FyZC1ib2R5IC5wb3N0LW1ldGEgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLnBvc3QtLWNhcmQgLmNhcmQtYm9keSBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnBvc3QtLWNhcmQyIGZpZ3VyZSB7CiAgICBwYWRkaW5nOiAxLjMzMzMzcmVtIDEuMzMzMzNyZW0gMDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoucG9zdC0tY2FyZDIgZmlndXJlIGZpZ2NhcHRpb24gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMi42NjY2N3JlbTsKICAgIGJvdHRvbTogMS4zMzMzM3JlbQp9CgoucG9zdC0tY2FyZDIgZmlndXJlIGZpZ2NhcHRpb24gYSB7CiAgICB3aWR0aDogMi42NjY2N3JlbTsKICAgIGhlaWdodDogMi42NjY2N3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgYmFja2dyb3VuZDogI2UyMzYzNjsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLnBvc3QtLWNhcmQyIC5jYXJkLWJvZHkgaDUgewogICAgbWFyZ2luLWJvdHRvbTogLjY2NjY3cmVtCn0KCi5wb3N0LS1jYXJkMiAuY2FyZC1ib2R5IC5wb3N0LW1ldGEgewogICAgcGFkZGluZy1ib3R0b206IDEuMzMzMzNyZW07CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXAKfQoKLnBvc3QtLWNhcmQyIC5jYXJkLWJvZHkgLnBvc3QtbWV0YSBsaSBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnBvc3QtLWNhcmQyIC5jYXJkLWJvZHkgLnBvc3QtbWV0YSBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5wb3N0LS1jYXJkMi5wb3N0LS1jYXJkMyBmaWd1cmUgewogICAgcGFkZGluZzogMAp9CgoucG9zdC0tY2FyZDIucG9zdC0tY2FyZDMgZmlndXJlIGZpZ2NhcHRpb24gewogICAgbGVmdDogMS4zMzMzM3JlbQp9CgoucG9zdC0tY2FyZDIucG9zdC0tY2FyZDMgLmNhcmQtYm9keSBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW07CiAgICBsaW5lLWhlaWdodDogMS44NjY2N3JlbQp9CgoucG9zdC0tY2FyZDIucG9zdC0tY2FyZDMgLmNhcmQtYm9keSAucG9zdC1tZXRhIHsKICAgIHBhZGRpbmctYm90dG9tOiAxLjJyZW07CiAgICBtYXJnaW4tYm90dG9tOiAuOHJlbQp9CgouY2FyZC0tcm91bmRlZCB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC41MzMzM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC41MzMzM3JlbQp9CgouY2FyZC0tdGVhbTEsCi5jYXJkLS10ZWFtMiwKLmNhcmQtc3R5bGUtZWlnaHQgLmNhcmQtLWVpZ2h0LAouY2FyZC1zdHlsZS1lbGV2ZW4gLmNhcmQtLWVsZXZlbiwKLmNhcmQtc3R5bGUtZm91cnRlZW4gLmNhcmQtLWZvdXJ0ZWVuLAouY2FyZC1zdHlsZS1uaW5lIC5jYXJkLS1uaW5lLAouY2FyZC1zdHlsZS1zZXZlbiAuY2FyZC0tc2V2ZW4sCi5jYXJkLXN0eWxlLXR3ZWx2ZSAuY2FyZC10d2VsdmUsCi5jYXJkLXN0eWxlLXR3byAuY2FyZC10d28sCi5wb3N0LS1jYXJkMSAucG9zdC0tY2FyZCB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5wb3N0LS1jYXJkNCB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5wb3N0LS1jYXJkNDpob3ZlciB7CiAgICBib3JkZXI6IDAgbm9uZQp9CgoucG9zdC0tY2FyZDQgLmNhcmQtYm9keSAucG9zdC1tZXRhIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmRpdmlkZXIgaDEsCi5kaXZpZGVyIGgyIHsKICAgIG1hcmdpbi1ib3R0b206IC4zMzMzM3JlbQp9CgouZGl2aWRlciAuZGl2aWRlci1zcGxpdCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogNS42NnJlbTsKICAgIGhlaWdodDogLjMzMzMzcmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5kaXZpZGVyIC5kaXZpZGVyLXNwbGl0OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiA0cmVtOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMuMzMzMzNyZW07CiAgICBib3JkZXItcmFkaXVzOiAzLjMzMzMzcmVtCn0KCi5kaXZpZGVyIC5kaXZpZGVyLXNwbGl0OmFmdGVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDFyZW07CiAgICBoZWlnaHQ6IDEwMCU7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMuMzMzMzNyZW07CiAgICBib3JkZXItcmFkaXVzOiAzLjMzMzMzcmVtCn0KCi5kaXZpZGVyIC5kaXZpZGVyLXN0cmFpZ2h0IHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHdpZHRoOiA0LjY2cmVtOwogICAgaGVpZ2h0OiAuMzMzMzNyZW07CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MHB4OwogICAgYm9yZGVyLXJhZGl1czogNTBweAp9CgouZGl2aWRlciAuZGl2aWRlci1saW5lIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgaGVpZ2h0OiAxcHg7CiAgICBiYWNrZ3JvdW5kOiAjZTRlOGVkCn0KCi5kaXZpZGVyIHAgewogICAgbWFyZ2luOiAxcmVtIDAgMCAwOwogICAgZm9udC1zaXplOiAxOHB4Cn0KCi5kaXZpZGVyLnRleHQtY2VudGVyIHAgewogICAgbWF4LXdpZHRoOiA0MHJlbQp9CgouZGl2aWRlci5kaXZpZGVyLWxpZ2h0IHsKICAgIG1hcmdpbi1ib3R0b206IDMuMTMzMzNyZW0KfQoKLmRpdmlkZXIuZGl2aWRlci1saWdodCAuZGl2aWRlci1zcGxpdDpiZWZvcmUgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgouZGl2aWRlci5kaXZpZGVyLWxpZ2h0IC5kaXZpZGVyLXNwbGl0OmFmdGVyIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmRpdmlkZXIuZGl2aWRlci1zaW1wbGUgaDMgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouZGl2aWRlci5kaXZpZGVyLXNpbXBsZSBoMiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCn0KCi5zZWN0aW9uLXRpdGxlLXNpbXBsZSB7CiAgICB3aWR0aDogNDByZW07CiAgICBtYXJnaW46IDAgYXV0bzsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9Cgouc2VjdGlvbi10aXRsZS1zaW1wbGUgaDEgewogICAgbWFyZ2luLWJvdHRvbTogMjBweAp9Cgouc3VidGV4dCB7CiAgICBmb250LXNpemU6IDEuMzMzMzNyZW07CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tYm90dG9tOiAuMzMzMzNyZW0KfQoKLnNlY3Rpb24tdGl0bGUtcHJpbWFyeSB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBtYXJnaW4tYm90dG9tOiAzcmVtCn0KCi5zZWN0aW9uLXRpdGxlLXByaW1hcnkgaDMgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW46IDAgMCAxcmVtOwogICAgbGluZS1oZWlnaHQ6IDIuOTMzMzNyZW0KfQoKLnNlY3Rpb24tdGl0bGUtcHJpbWFyeSBwIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luOiAwCn0KCi5mbGlwLWNhcmQgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouZmxpcC1jYXJkIC5mbGlwLXdyYXBwZXIgewogICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4OwogICAgcGVyc3BlY3RpdmU6IDEwMDBweDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpOwogICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOwogICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgbWluLWhlaWdodDogMjJyZW0KfQoKLmZsaXAtY2FyZCAuZmxpcC1iYWNrLAouZmxpcC1jYXJkIC5mbGlwLWZyb250IHsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMzMzMzNyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMzMzMzNyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkKfQoKLmZsaXAtY2FyZCAuZmxpcC1mcm9udCB7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjUsIC4zLCAuMywgMSk7CiAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjUsIC4zLCAuMywgMSk7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguNSwgLjMsIC4zLCAxKTsKICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpLCAtd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgwKTsKICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsKICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICB6LWluZGV4OiAxCn0KCi5mbGlwLWNhcmQgLmZsaXAtYmFjayB7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjUsIC4zLCAuMywgMSk7CiAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjUsIC4zLCAuMywgMSk7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguNSwgLjMsIC4zLCAxKTsKICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpLCAtd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpOwogICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOwogICAgei1pbmRleDogMQp9CgouZmxpcC1jYXJkIC5mbGlwLXdyYXBwZXI6aG92ZXIgLmZsaXAtZnJvbnQgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkCn0KCi5mbGlwLWNhcmQgLmZsaXAtd3JhcHBlcjpob3ZlciAuZmxpcC1iYWNrIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDApOwogICAgdHJhbnNmb3JtOiByb3RhdGVZKDApOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOwogICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZAp9CgouZmxpcC1jYXJkIC5mbGlwLXdyYXBwZXI6aG92ZXIgLmZyb250LWNvbnRlbnRzIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTY1MHB4KSBzY2FsZSgxKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNjUwcHgpIHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTY1MHB4KSBzY2FsZSgxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsKICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QKfQoKLmZsaXAtY2FyZCAuZmxpcC13cmFwcGVyOmhvdmVyIC5iYWNrLWNvbnRlbnRzIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigwKSBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVooMCkgc2NhbGUoMSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkCn0KCi5mbGlwLWNhcmQgLmJhY2stY29udGVudHMsCi5mbGlwLWNhcmQgLmZyb250LWNvbnRlbnRzIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHBhZGRpbmc6IDAgM3JlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguNSwgLjMsIC4zLCAxKTsKICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC41LCAuMywgLjMsIDEpOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjUsIC4zLCAuMywgMSk7CiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguNSwgLjMsIC4zLCAxKSwgLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguNSwgLjMsIC4zLCAxKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsKICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CiAgICB6LWluZGV4OiAyCn0KCi5mbGlwLWNhcmQgLmJhY2stY29udGVudHMgaDYsCi5mbGlwLWNhcmQgLmZyb250LWNvbnRlbnRzIGg2IHsKICAgIGxpbmUtaGVpZ2h0OiAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouZmxpcC1jYXJkIC5mcm9udC1jb250ZW50cyB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDApIHNjYWxlKDEpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDApIHNjYWxlKDEpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoMCkgc2NhbGUoMSkKfQoKLmZsaXAtY2FyZCAuZnJvbnQtY29udGVudHMgc3BhbiB7CiAgICBmb250LXNpemU6IDRyZW0KfQoKLmZsaXAtY2FyZCAuYmFjay1jb250ZW50cyB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDY1MHB4KSB0cmFuc2xhdGVaKDYwcHgpIHNjYWxlKC44OCk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg2NTBweCkgdHJhbnNsYXRlWig2MHB4KSBzY2FsZSguODgpCn0KCi5mbGlwLWNhcmQgLmJhY2stY29udGVudHMgcCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNikKfQoKLmZsaXAtY2FyZCAuYmFjay1jb250ZW50cyAuYnRuIHsKICAgIG1hcmdpbi10b3A6IDEuNjZyZW0KfQoKLmZsaXAtY2FyZCAuZmxpcC1vdmVybGF5LAouZmxpcC1jYXJkIC5mbGlwLW92ZXJsYXkyIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDAKfQoKLmZsaXAtY2FyZCAuZmxpcC1vdmVybGF5IHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmljb24tYm94IHNwYW4gewogICAgZm9udC1zaXplOiAyLjY2NjY3cmVtOwogICAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAxCn0KCi5pY29uLWJveCBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjEzMzMzcmVtCn0KCi5pY29uLWJveCBwIHsKICAgIG1hcmdpbjogMAp9CgouaWNvbi1ib3gtb25lLAouaWNvbi1ib3gtdHdvIHsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW0KfQoKLmljb24tYm94LXR3byBoNSB7CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5pY29uLWJveC10aHJlZSB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICBib3JkZXItcmFkaXVzOiAuM3JlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIHBhZGRpbmc6IDNyZW0gMnJlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouaWNvbi1ib3gtdGhyZWU6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDNweDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBsZWZ0OiAwOwogICAgYm90dG9tOiAwOwogICAgbWFyZ2luOiAwOwogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IC41cyBlYXNlOwogICAgdHJhbnNpdGlvbjogLjVzIGVhc2U7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCA2cHggNnB4OwogICAgYm9yZGVyLXJhZGl1czogMCAwIDZweCA2cHg7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMCkKfQoKLmljb24tYm94LXRocmVlOmhvdmVyOmJlZm9yZSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCn0KCi5pY29uLWJveC10aHJlZSBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjEzMzMzcmVtCn0KCi5pY29uLWJveC10aHJlZSBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmljb24tcm91bmRlZC1sZyB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4OwogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94OwogICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICB3aWR0aDogNS4zMzMzM3JlbTsKICAgIGhlaWdodDogNS4zMzMzM3JlbTsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBmb250LXNpemU6IDIuNHJlbTsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5pY29uLWJveC1mb3VyIHsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW0KfQoKLmljb24tYm94LWZvdXIgLmJveC1pY29uIHsKICAgIG1hcmdpbi1yaWdodDogMnJlbQp9CgouaWNvbi1ib3gtZm91ciAuYm94LWNvbnRlbnQgaDYgewogICAgbWFyZ2luOiAwIDAgMS4xMzMzM3JlbSAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmljb24tYm94LWZvdXIgLmJveC1jb250ZW50IHAgewogICAgbWFyZ2luOiAwCn0KCi5pY29uLWJveC1mb3VyOmhvdmVyIC5pY29uLXJvdW5kZWQtc20gewogICAgYmFja2dyb3VuZDogIzA2YjU5MAp9CgouaWNvbi1yb3VuZGVkLXNtLAouaWNvbi1zcXVhcmUtc20gewogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDsKICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgd2lkdGg6IDRyZW07CiAgICBoZWlnaHQ6IDRyZW07CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0OwogICAgZm9udC1zaXplOiAycmVtOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgY29sb3I6ICNmZmY7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgouaWNvbi1yb3VuZGVkLXNtIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbQp9CgouaWNvbi1zcXVhcmUtc20gewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3JkZXItcmFkaXVzOiA0cHgKfQoKLmljb24tYm94LWZpdmUgewogICAgcGFkZGluZzogMi42NnJlbTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5pY29uLWJveC1maXZlIC5pY29uLXJvdW5kZWQtc20gewogICAgYmFja2dyb3VuZDogIzA2YjU5MAp9CgouaWNvbi1ib3gtZml2ZSBoNiB7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIG1hcmdpbi1ib3R0b206IDEuMTMzMzNyZW07CiAgICBjb2xvcjogIzIwMjQyOAp9CgouaWNvbi1ib3gtZml2ZSBwIHsKICAgIG1hcmdpbi1ib3R0b206IDIuMzNyZW0KfQoKLmljb24tYm94LWZpdmU6aG92ZXIgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSkKfQoKLmljb24tYm94LWZpdmU6aG92ZXIgLmljb24tcm91bmRlZC1zbSB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0Cn0KCi5pY29uLWJveC1maXZlOmhvdmVyIGg1IHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5pY29uLWJveC1maXZlOmhvdmVyIC5idG46aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgouaWNvbi1ib3gtZm91ciBoNiB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouaWNvbi1ib3gtZm91ciAuaWNvbi1zcXVhcmUtc20gewogICAgbWFyZ2luLWJvdHRvbTogMi4zM3JlbQp9CgouaWNvbi1ib3gtZm91cjpob3ZlciAuaWNvbi1zcXVhcmUtc20gewogICAgYmFja2dyb3VuZDogIzA2YjU5MAp9CgouaWNvbi1ib3gtZWlnaHQgewogICAgbWFyZ2luLWJvdHRvbTogMy4zMzMzM3JlbQp9CgouaWNvbi1ib3gtZWlnaHQgaDYgewogICAgbWFyZ2luOiAwIDAgMS4xMzMzM3JlbSAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmljb24tYm94LWVpZ2h0IC5pY29uLXNxdWFyZS1zbSB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDZiNTkwOwogICAgY29sb3I6ICMwNmI1OTA7CiAgICBtYXJnaW4tYm90dG9tOiAyLjMzcmVtCn0KCi5pY29uLWJveC1laWdodCBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmljb24tYm94LWVpZ2h0OmhvdmVyIC5pY29uLXNxdWFyZS1zbSB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwOwogICAgY29sb3I6ICNmZmYKfQoKLmljb24tYm94LW5pbmUgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4zcmVtOwogICAgYm9yZGVyLXJhZGl1czogLjNyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBwYWRkaW5nOiAycmVtIDEuNXJlbQp9CgouaWNvbi1ib3gtbmluZSAuaWNvbi1yb3VuZGVkLXNtIHsKICAgIGJhY2tncm91bmQ6IDAgMDsKICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNiwgMTgxLCAxNDQsIC4yKTsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCi5pY29uLWJveC1uaW5lIGg2IHsKICAgIG1hcmdpbjogMAp9CgouaWNvbi1ib3gtbmluZSBwIHsKICAgIG1hcmdpbjogMXJlbSAwIDAgMAp9CgouaWNvbi1ib3gtbmluZTpob3ZlciAuaWNvbi1yb3VuZGVkLXNtIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTA7CiAgICBib3JkZXItY29sb3I6ICMwNmI1OTA7CiAgICBjb2xvcjogI2ZmZgp9CgouaWNvbi1ib3gtaW1nIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBwYWRkaW5nOiAzcmVtIDJyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmljb24tYm94LWltZyAuc3ZnIHsKICAgIHdpZHRoOiA1LjMzMzMzcmVtOwogICAgbWFyZ2luLWJvdHRvbTogMS4zM3JlbQp9CgouaWNvbi1ib3gtaW1nIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDEuMTMzMzNyZW0KfQoKLmljb24tYm94LWltZyBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmljb24tYm94LWltZyBoNiwKLmljb24tYm94LWltZyBwIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5pY29uLWJveC1pbWc6aG92ZXIgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpCn0KCi5pY29uLWJveC1pbWcyIHsKICAgIG1hcmdpbi1ib3R0b206IDUuMzNyZW0KfQoKLmljb24tYm94LWltZzIgLmJveC1pY29uIHsKICAgIG1hcmdpbi1yaWdodDogMnJlbQp9CgouaWNvbi1ib3gtaW1nMiAuYm94LWljb24gLnN2ZyB7CiAgICB3aWR0aDogNC42NjY2N3JlbQp9CgouaWNvbi1ib3gtaW1nMiAuYm94LWNvbnRlbnQgaDYgewogICAgbWFyZ2luOiAwIDAgMS4xMzMzM3JlbSAwCn0KCi5pY29uLWJveC1pbWcyIC5ib3gtY29udGVudCBwIHsKICAgIG1hcmdpbjogMAp9CgouaWNvbi1ib3gtcnRsIHsKICAgIG1hcmdpbi1ib3R0b206IDRyZW0KfQoKLmljb24tYm94LXJ0bCAuYm94LWljb24gewogICAgbWFyZ2luLWxlZnQ6IDJyZW0KfQoKLmljb24tYm94LXJ0bCBoNSB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjEzMzMzcmVtCn0KCi5pY29uLWJveC1ydGw6aG92ZXIgLmljb24tc3F1YXJlLXNtIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTAKfQoKLmljb24tYm94LTEzIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICBwYWRkaW5nOiAzLjMzMzMzcmVtOwogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZAp9CgouaWNvbi1ib3gtMTM+c3BhbiB7CiAgICBmb250LXNpemU6IDMuMnJlbQp9CgouaWNvbi1ib3gtZm91cnRlZW4gewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouaWNvbi1ib3gtZm91cnRlZW4gLmljb24tcm91bmRlZCB7CiAgICBmb250LXNpemU6IDIuNHJlbTsKICAgIHdpZHRoOiA0LjY2NjY3cmVtOwogICAgaGVpZ2h0OiA0LjY2NjY3cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxLjZyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjZyZW07CiAgICBjb2xvcjogI2ZmZjsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgouaWNvbi1ib3gtZm91cnRlZW46aG92ZXIgLmljb24tcm91bmRlZCB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0ICFpbXBvcnRhbnQKfQoKLmljb24tYm94LTE1IHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBwYWRkaW5nOiAzLjMzMzMzcmVtIDEuODY2NjdyZW07CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5pY29uLWJveC0xNSBpbWcgewogICAgbWFyZ2luLWJvdHRvbTogMi42NjY2N3JlbQp9CgouaWNvbi1ib3gtMTUgaDYgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCn0KCi5pY29uLWJveC0xNTpob3ZlciB7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xNSk7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xNSk7CiAgICBtYXJnaW4tdG9wOiAtNXB4OwogICAgbWFyZ2luLWJvdHRvbTogNXB4Cn0KCnVsIHsKICAgIG1hcmdpbjogMAp9CgoubGlzdC1pdGVtIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0OwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDsKICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0Cn0KCi5hcnJvdy1saXN0MSB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbWFyZ2luLWJvdHRvbTogLjQ1cmVtOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQp9CgouYXJyb3ctbGlzdDE6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5hcnJvdy1saXN0MTpiZWZvcmUgewogICAgY29udGVudDogIlxmMTIxIjsKICAgIGZvbnQtZmFtaWx5OiBMaW5lYXdlc29tZSwgc2Fucy1zZXJpZjsKICAgIG1hcmdpbi1yaWdodDogMTBweAp9CgouYXJyb3ctbGlzdDIsCi5hcnJvdy1saXN0MywKLmFycm93LWxpc3Q1IHsKICAgIG1hcmdpbi1ib3R0b206IC44cmVtCn0KCi5hcnJvdy1saXN0MjpsYXN0LWNoaWxkLAouYXJyb3ctbGlzdDM6bGFzdC1jaGlsZCwKLmFycm93LWxpc3Q1Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYXJyb3ctbGlzdDIgc3BhbiwKLmFycm93LWxpc3QzIHNwYW4sCi5hcnJvdy1saXN0NSBzcGFuIHsKICAgIHdpZHRoOiAxLjRyZW07CiAgICBoZWlnaHQ6IDEuNHJlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDsKICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgZm9udC1zaXplOiAuNjY2NjdyZW07CiAgICBtYXJnaW4tcmlnaHQ6IC44NnJlbTsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5hcnJvdy1saXN0MiBzcGFuLAouYXJyb3ctbGlzdDUgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCA1OCwgMTY0LCAuMSkKfQoKLmFycm93LWxpc3QzIHNwYW4gewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGNvbG9yOiAjZmZmCn0KCi5hcnJvdy1saXN0NCB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjZyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nLWxlZnQ6IDE4cHgKfQoKLmFycm93LWxpc3Q0OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnXGYxODYnOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgbGVmdDogMDsKICAgIHRvcDogMnB4OwogICAgZm9udC1zaXplOiAuOHJlbQp9CgouYXJyb3ctbGlzdDQ6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5hcnJvdy1saXN0NCBzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzOwogICAgcGFkZGluZy1yaWdodDogLjMzMzMzcmVtCn0KCi5hcnJvdy1saXN0NSB7CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5jb250ZW50LWxpc3QgewogICAgbWFyZ2luLWJvdHRvbTogMi42NjY2N3JlbQp9CgouY29udGVudC1saXN0Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY29udGVudC1saXN0IC5pY29uIHsKICAgIG1hcmdpbi1yaWdodDogMXJlbTsKICAgIGZvbnQtc2l6ZTogMnJlbTsKICAgIGxpbmUtaGVpZ2h0OiAxCn0KCi5jb250ZW50LWxpc3QgaDYgewogICAgbWFyZ2luLWJvdHRvbTogLjQ2NjY3cmVtCn0KCi5jb250ZW50LWxpc3QgcCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jb250ZW50LWxpc3QgLmljb24tY2lyY2xlIHsKICAgIG1hcmdpbi1yaWdodDogMnJlbQp9CgouY29udGVudC1saXN0IC5pY29uLWNpcmNsZSBzcGFuIHsKICAgIHdpZHRoOiA0cmVtOwogICAgaGVpZ2h0OiA0cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGJhY2tncm91bmQ6ICNmNWY0Zjc7CiAgICBmb250LXNpemU6IDEuNzNyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgouY29udGVudC1saXN0OmhvdmVyIC5pY29uLWNpcmNsZSBzcGFuIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTA7CiAgICBjb2xvcjogI2ZmZgp9CgouaWNvbi1saWdodCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5pY29uLWxpZ2h0IC5jb250ZW50LWxpc3QgLmljb24tY2lyY2xlIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKLmljb24tbGlnaHQgLmNvbnRlbnQtbGlzdDpob3ZlciAuaWNvbi1jaXJjbGUgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgY29sb3I6ICNmZmYKfQoKLnRleHQtbGlzdCB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi50ZXh0LWxpc3Q6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi50ZXh0LWxpc3QgaDUsCi50ZXh0LWxpc3QgaDYgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW0KfQoKLnRleHQtbGlzdCBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnRleHQtbGlzdCAuc3ViLXRleHQgewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tYm90dG9tOiAuNjZyZW0KfQoKLmltYWdlLWxpc3QgewogICAgbWFyZ2luLWJvdHRvbTogMi4zMzMzM3JlbQp9CgouaW1hZ2UtbGlzdDpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmltYWdlLWxpc3QgLmltZyB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuNjZyZW0KfQoKLmltYWdlLWxpc3QgLmltZyBpbWcgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKLmltYWdlLWxpc3QgaDYgewogICAgbWFyZ2luLWJvdHRvbTogLjY2cmVtOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmltYWdlLWxpc3QgLnN1Yi10ZXh0IHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW07CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCi5pbWFnZS1saXN0IHAgewogICAgbWFyZ2luOiAwCn0KCi5idWxsZXRfbGlzdCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nLWxlZnQ6IDEuNjZyZW07CiAgICBtYXJnaW4tYm90dG9tOiAuNjZyZW0KfQoKLmJ1bGxldF9saXN0Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYnVsbGV0X2xpc3Q6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDdweDsKICAgIGhlaWdodDogN3B4OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiA2cHgKfQoKLmJ1bGxldF9saXN0IHN0cm9uZyB7CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5idWxsZXRfbGlzdCBwIHsKICAgIG1hcmdpbjogMAp9CgouYnVsbGV0X2xpc3QuYnVsbGV0X2xpc3QtLXRocmVlIHsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW0KfQoKLmJ1bGxldF9saXN0LmJ1bGxldF9saXN0LS10aHJlZTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmNoZWNrbGlzdCB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgouY2hlY2tsaXN0Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY2hlY2tsaXN0IHNwYW4gewogICAgZm9udC1zaXplOiAxcmVtOwogICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgIG1hcmdpbi1yaWdodDogLjkzcmVtCn0KCi5jaGVja2xpc3QuY2hlY2tsaXN0LWxpZ2h0IHsKICAgIGNvbG9yOiAjZmZmOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmNoZWNrbGlzdC5jaGVja2xpc3QtbGlnaHQgLnN2ZyB7CiAgICB3aWR0aDogMS4ycmVtOwogICAgZmlsbDogI2ZmZgp9CgouY2hlY2tsaXN0LmNoZWNrbGlzdC1saWdodCBzcGFuIHsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBtYXJnaW4tbGVmdDogLjhyZW0KfQoKLmJsb2ctY2Fyb3VzZWwtb25lIC5wb3N0LXNpbmdsZSAucG9zdC1ib3R0b20gYS5jaGVja2xpc3QuY2hlY2tsaXN0LWxpZ2h0IC5zdmcsCi5jYXJkIC5jYXJkLWJvZHkgaDYgYS5jaGVja2xpc3QuY2hlY2tsaXN0LWxpZ2h0IC5zdmcsCi5jYXJkLS1laWdodCAuY2FyZC1ib2R5IGg1IGEuY2hlY2tsaXN0LmNoZWNrbGlzdC1saWdodCAuc3ZnLAouY2FyZC0tdGVuIC5jYXJkLWJvZHkgaDYgYS5jaGVja2xpc3QuY2hlY2tsaXN0LWxpZ2h0IC5zdmcsCi5jaGVja2xpc3QuY2hlY2tsaXN0LWxpZ2h0LmNvbG9yLWRhcmsgLnN2ZywKLmNvdW50ZXIuY291bnRlci0tNSAuY291bnRlcl9zaW5nbGUgLmNoZWNrbGlzdC5jaGVja2xpc3QtbGlnaHQudGl0bGUgLnN2ZywKLnRhYi50YWItLTEgLnRhYl9uYXYgLm5hdiAuY2hlY2tsaXN0LmNoZWNrbGlzdC1saWdodC5uYXYtbGluayAuc3ZnLApmb290ZXIuZm9vdGVyMiAud2lkZ2V0LnR3aXQtLXdpZGdldCBhLmNoZWNrbGlzdC5jaGVja2xpc3QtbGlnaHQ6aG92ZXIgLnN2ZyB7CiAgICBmaWxsOiAjMjAyNDI4Cn0KCi5jaGVja2xpc3QgLnN2ZyB7CiAgICBtYXJnaW4tcmlnaHQ6IDhweDsKICAgIHdpZHRoOiAuOHJlbQp9CgpAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSksCigtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpIHsKICAgIC5jaGVja2xpc3QgLnN2ZyB7CiAgICAgICAgaGVpZ2h0OiAxMnB4CiAgICB9Cn0KCi5jaGVja2xpc3QuaWNvbi1wcmltYXJ5IC5zdmcgLnN0MCB7CiAgICBmaWxsOiAjNDEzYWE0Cn0KCi5jaGVja2xpc3QuaWNvbi1zZWNvbmRhcnkgLnN2ZyAuc3QwIHsKICAgIGZpbGw6ICMwNmI1OTAKfQoKLmNoZWNrbGlzdC5pY29uLWxpZ2h0IC5zdmcgLnN0MCB7CiAgICBmaWxsOiAjZmZmCn0KCi5jaGVja2xpc3QuaWNvbi1kYXJrIC5zdmcgLnN0MCB7CiAgICBmaWxsOiAjMjAyNDI4Cn0KCi5jaGVja2xpc3QtdGhyZWUgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW07CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5jaGVja2xpc3QtdGhyZWU6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jaGVja2xpc3QtdGhyZWUgLnN2ZyB7CiAgICB3aWR0aDogLjhyZW0KfQoKQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLAooLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSB7CiAgICAuY2hlY2tsaXN0LXRocmVlIC5zdmcgewogICAgICAgIGhlaWdodDogMTJweAogICAgfQp9CgouY2hlY2tsaXN0LXRocmVlIC5zdmcgLnN0MCB7CiAgICBmaWxsOiAjMDZiNTkwCn0KCi5jaGVja2xpc3QtdGhyZWUgc3BhbiB7CiAgICBtYXJnaW4tbGVmdDogLjY2NjY3cmVtCn0KCi5jaGVja2xpc3QtdGhyZWUuY2hlY2tsaXN0LWxpZ2h0IHNwYW4gewogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNDAwCn0KCi5jaGVja2xpc3QtdGhyZWUuY2hlY2tsaXN0LWxpZ2h0IC5zdmcgLnN0MCB7CiAgICBmaWxsOiAjZmZmCn0KCi5pY29uLWxpc3QgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouaWNvbi1saXN0Omxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouaWNvbi1saXN0IHNwYW4gewogICAgZm9udC1zaXplOiAxLjMzcmVtOwogICAgcGFkZGluZy1yaWdodDogLjY2cmVtOwogICAgbGluZS1oZWlnaHQ6IDAKfQoKLmljb24tbGlzdCBzdHJvbmcgewogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLXJpZ2h0OiAxcmVtCn0KCi5pY29uLWxpc3QubGlzdC1saWdodCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSkKfQoKLmljb24tbGlzdC5saXN0LWxpZ2h0IHN0cm9uZyB7CiAgICBjb2xvcjogI2ZmZgp9CgouaWNvbi1saXN0MiB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5pY29uLWxpc3QyOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouaWNvbi1saXN0MiAuaWNvbiB7CiAgICBmb250LXNpemU6IDEuOHJlbTsKICAgIGxpbmUtaGVpZ2h0OiAxOwogICAgbWFyZ2luLXJpZ2h0OiAxcmVtCn0KCi5pY29uLWxpc3QyIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IC42cmVtOwogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgZm9udC1zaXplOiAxLjEzMzMzcmVtCn0KCi5pY29uLWxpc3QyIC5zdWItdGV4dCB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgouaWNvbi1saXN0Mi5saXN0LWxpZ2h0IGg2IHsKICAgIGNvbG9yOiAjZmZmCn0KCi5pY29uLWxpc3QtLXR3byAuaWNvbi1saXN0IHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4Cn0KCi5udW1iZXItbGlzdCB7CiAgICBsaXN0LXN0eWxlOiBub25lOwogICAgY291bnRlci1yZXNldDogbGk7CiAgICBwYWRkaW5nOiAwCn0KCi5udW1iZXItbGlzdCBsaSB7CiAgICBjb3VudGVyLWluY3JlbWVudDogbGk7CiAgICBtYXJnaW4tYm90dG9tOiAuNjZyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nLWxlZnQ6IDJyZW0KfQoKLm51bWJlci1saXN0IGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgoubnVtYmVyLWxpc3QgbGk6YmVmb3JlIHsKICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IDFlbTsKICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgZGlyZWN0aW9uOiBydGw7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgoubnVtYmVyLWxpc3QgbGkubnVtYmVycy1kZWNpbWFsLXplcm86YmVmb3JlIHsKICAgIGNvbnRlbnQ6IGNvdW50ZXIobGksIGRlY2ltYWwtbGVhZGluZy16ZXJvKTsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5udW1iZXItbGlzdCBsaS5udW1iZXJzLWRlY2ltYWwtemVyby5saXN0LWxpZ2h0OmJlZm9yZSB7CiAgICBjb2xvcjogI2ZmZgp9CgoubnVtYmVyLWxpc3QgbGkubnVtYmVycy1yb21hbjpiZWZvcmUgewogICAgY29udGVudDogY291bnRlcihsaSwgbG93ZXItcm9tYW4pCn0KCi5udW1iZXItbGlzdCBsaS5saXN0LWxpZ2h0IHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KQp9CgoucHJvY2Vzcy1saXN0IHsKICAgIG1hcmdpbjogMAp9CgoucHJvY2Vzcy1saXN0IGxpIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLnByb2Nlc3MtbGlzdCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnByb2Nlc3MtbGlzdCBsaTpsYXN0LWNoaWxkIC5udW1iZXIgc3BhbjpiZWZvcmUgewogICAgY29udGVudDogbm9uZQp9CgoucHJvY2Vzcy1saXN0IGxpOmhvdmVyIC5udW1iZXIgc3BhbiB7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgY29sb3I6ICNmZmYKfQoKLnByb2Nlc3MtbGlzdCAubnVtYmVyIHsKICAgIG1hcmdpbi1yaWdodDogMnJlbQp9CgoucHJvY2Vzcy1saXN0IC5udW1iZXIuZ3JheS1iZyBzcGFuIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoNiwgMTgxLCAxNDQsIC4xKQp9CgoucHJvY2Vzcy1saXN0IC5udW1iZXIgc3BhbiB7CiAgICB3aWR0aDogNC41MzMzM3JlbTsKICAgIGhlaWdodDogNC41MzMzM3JlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgZm9udC1zaXplOiAxLjZyZW07CiAgICBmb250LXdlaWdodDogNjAwOwogICAgY29sb3I6ICMwNmI1OTA7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoucHJvY2Vzcy1saXN0IC5jb250ZW50IGg2IHsKICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDYwMAp9CgoucHJvY2Vzcy1saXN0IC5jb250ZW50IHAgewogICAgbWFyZ2luOiAwCn0KCi5saXN0LWlubGluZS13cmFwcGVyIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSkKfQoKLmxpc3QtaW5saW5lLXdyYXBwZXIgLmxpc3QtLWlubGluZSB7CiAgICBtYXJnaW46IDA7CiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5OwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwCn0KCi5saXN0LWlubGluZS13cmFwcGVyIC5saXN0LS1pbmxpbmUgbGkgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbTsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAtbXMtZmxleDogMTsKICAgIGZsZXg6IDEKfQoKLmxpc3QtaW5saW5lLXdyYXBwZXIgLmxpc3QtLWlubGluZSBsaSAuaWNvbiB7CiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0KfQoKLmxpc3QtaW5saW5lLXdyYXBwZXIgLmxpc3QtLWlubGluZSBsaSAuaWNvbiBzcGFuIHsKICAgIGZvbnQtc2l6ZTogMy4zMzMzM3JlbTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDJyZW0KfQoKLmxpc3QtaW5saW5lLXdyYXBwZXIgLmxpc3QtLWlubGluZSBsaSAuY29udGVudHMgaDYgewogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luOiAwIDAgNXB4Cn0KCi5saXN0LWNvdW50IHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKLmxpc3QtY291bnQ6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5saXN0LWNvdW50IHNwYW4gewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoubGlzdC1jb3VudCAuY291bnQgewogICAgbWluLXdpZHRoOiAzcmVtOwogICAgaGVpZ2h0OiAxLjY2NjY3cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogMS42NjY2N3JlbTsKICAgIGJhY2tncm91bmQ6ICNmNWY3ZmM7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5saXN0LWNvdW50IGE6aG92ZXIgc3BhbiB7CiAgICBjb2xvcjogIzQxM2FhNAp9CgoubGlzdC1jb3VudCBhOmhvdmVyIC5jb3VudCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQKfQoKLnByb2dyZXNzLXdyYXBwZXIgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgoucHJvZ3Jlc3Mtd3JhcHBlcjpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnByb2dyZXNzLXdyYXBwZXIgLmxhYmVscyB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjZyZW0KfQoKLnByb2dyZXNzLXdyYXBwZXIgLmxhYmVscyBzcGFuIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5wcm9ncmVzcy13cmFwcGVyIC5sYWJlbHMgc3BhbjpsYXN0LWNoaWxkIHsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLnByb2dyZXNzLXdyYXBwZXIgLnByb2dyZXNzIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLnByb2dyZXNzLXdyYXBwZXIgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjVyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjVyZW0KfQoKLnByb2dyZXNzLWRhcmsgewogICAgcGFkZGluZzogMi4zM3JlbSAyLjY2cmVtOwogICAgYmFja2dyb3VuZDogIzIwMjQyOAp9CgoucHJvZ3Jlc3MtZGFyayAubGFiZWxzIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKLnByb2dyZXNzLWRhcmsgLnByb2dyZXNzIHsKICAgIGJhY2tncm91bmQ6ICM0MTQxNDQKfQoKLnBhZ2luYXRpb24tYXJlYSAucGFnaW5hdGlvbiAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmssCi5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsgewogICAgY29sb3I6ICM1YTY2NzEKfQoKLnBhZ2luYXRpb24tYXJlYSAucGFnaW5hdGlvbiAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IC4ycmVtOwogICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IC4ycmVtCn0KCi5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsgewogICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjJyZW07CiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjJyZW07CiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMnJlbTsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuMnJlbQp9CgoucGFnaW5hdGlvbi1hcmVhIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsgewogICAgY29sb3I6ICNmZmY7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0OwogICAgYm9yZGVyLWNvbG9yOiAjNDEzYWE0Cn0KCi5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluazpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0Cn0KCi5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24gLnBhZ2UtbGluayB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgoucGFnaW5hdGlvbi1hcmVhIC5wYWdpbmF0aW9uIC5wYWdlLWxpbms6aG92ZXIgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgoucGFnaW5hdGlvbi1hcmVhIC5wYWdpbmF0aW9uIC5wYWdlLWxpbms6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZQp9CgoucGFnaW5hdGlvbi1hcmVhIC5wYWdpbmF0aW9uLnBhZ2luYXRpb24tcm91bmRlZCAucGFnZS1pdGVtIHsKICAgIG1hcmdpbi1yaWdodDogLjY2cmVtCn0KCi5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24ucGFnaW5hdGlvbi1yb3VuZGVkIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLnBhZ2luYXRpb24tYXJlYSAucGFnaW5hdGlvbi5wYWdpbmF0aW9uLXJvdW5kZWQgLnBhZ2UtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OwogICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7CiAgICB3aWR0aDogMi42NjY2N3JlbTsKICAgIGhlaWdodDogMi42NjY2N3JlbTsKICAgIHBhZGRpbmc6IDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgoudGFibGUtc3R5bGVzIHsKICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQKfQoKLnRhYmxlLXNlY29uZGFyeS0tZGFya2VuIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTAKfQoKLnRhYmxlLXNlY29uZGFyeS0tZGFya2VuIHRoLAoudGFibGUtc2Vjb25kYXJ5LS1kYXJrZW4gdHIgewogICAgY29sb3I6ICNmZmYKfQoKLnRhYmxlIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnRhYmxlIHRkLAoudGFibGUgdGggewogICAgcGFkZGluZzogMS4zMzMzM3JlbSAycmVtOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZQp9CgoudGFibGUgdGggewogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgoudGFibGUgdGhlYWQgdGggewogICAgYm9yZGVyOiAwIG5vbmUKfQoKLnRhYmxlIHRib2R5IHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLnRhYmxlIHRib2R5IHRoIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi50YWJsZS50YWJsZS1vbmUgewogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZAp9CgoudGFibGUudGFibGUtdHdvIHRoZWFkIHRoIHsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnRhYmxlLnRhYmxlLXR3byB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCwKLnRhYmxlLnRhYmxlLXR3byB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCB7CiAgICBib3JkZXItdG9wOiAwIG5vbmUKfQoKLnRhYmxlLnRhYmxlLXR3byB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkLAoudGFibGUudGFibGUtdHdvIHRib2R5IHRyOmxhc3QtY2hpbGQgdGggewogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLnRhYmxlLnRhYmxlLXR3byB0Ym9keSB0aCB7CiAgICBwYWRkaW5nOiAxLjY2cmVtIDEuNjZyZW0gMS42NnJlbSAwCn0KCi50YWJsZSAudGFibGUtZ3JheSB7CiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY3Cn0KCi5saW5lLWNoYXJ0X3dyYXAgaDYgewogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLWJvdHRvbTogMi42NjY2N3JlbQp9CgoubGVnZW5kIHVsIHsKICAgIG1hcmdpbi10b3A6IDEuMzMzMzNyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5sZWdlbmQgdWwgbGkgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbWFyZ2luLXJpZ2h0OiAxLjMzMzMzcmVtCn0KCi5sZWdlbmQgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmxlZ2VuZCB1bCBsaSBzcGFuIHsKICAgIHdpZHRoOiAuOHJlbTsKICAgIGhlaWdodDogLjhyZW07CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDsKICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgIG1hcmdpbi1yaWdodDogLjQ2NjY3cmVtCn0KCi5sZWdlbmQubGVnZW5kLWxpc3QgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IDA7CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKQp9CgoubGVnZW5kLmxlZ2VuZC1saXN0IHVsIGxpIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5waWUtY2hhcnQgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5ibG9jay1mdWxsLXdpZHRoLAouYmxvY2stZnVsbC13aWR0aDIgewogICAgbWluLWhlaWdodDogMzcuNjY2NjdyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGJhY2tncm91bmQ6ICNmMmYyZjIKfQoKQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLAooLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSB7CiAgICAuYmxvY2stZnVsbC13aWR0aCwKICAgIC5ibG9jay1mdWxsLXdpZHRoMiB7CiAgICAgICAgcGFkZGluZy10b3A6IDMwcHgKICAgIH0KfQoKLmJsb2NrLWZ1bGwtd2lkdGggLmltZywKLmJsb2NrLWZ1bGwtd2lkdGgyIC5pbWcgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIHdpZHRoOiA1MCU7CiAgICBoZWlnaHQ6IDEwMCUKfQoKLmJsb2NrLWZ1bGwtd2lkdGgyIHsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgouYmxvY2stZnVsbC13aWR0aDIgLmltZyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIGxlZnQ6IGF1dG87CiAgICB0b3A6IDA7CiAgICB3aWR0aDogNTAlOwogICAgaGVpZ2h0OiAxMDAlCn0KCi5mZWF0dXJlLWJveGVzIC5pY29uLWJveC1uaW5lIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLnNlY3Rpb24tZmVhdHVyZS1ib3hlcyB7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5zZWN0aW9uLWZlYXR1cmUtYm94ZXMgLmNvbnRhaW5lciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnNlY3Rpb24tZmVhdHVyZS1ib3hlcyAuc2VjdGlvbi1pbWcgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5zZWN0aW9uLWZlYXR1cmUtYm94ZXMgLmZlYXR1cmUtYm94ZXMgewogICAgbWFyZ2luLWJvdHRvbTogLTMwcHgKfQoKLmNvbnRlbnQtLWJsb2NrMyAuY29udGVudF9ibG9jazNfd3JhcHBlciB7CiAgICBwYWRkaW5nLWJvdHRvbTogNC42NjY2N3JlbQp9CgouY29udGVudC0tYmxvY2szIC5jb250ZW50X2Jsb2NrM193cmFwcGVyOmxhc3QtY2hpbGQgewogICAgcGFkZGluZy1ib3R0b206IDAKfQoKLmNvbnRlbnQtLWJsb2NrMyAuY29udGVudF9ibG9jazNfd3JhcHBlcisuY29udGVudF9ibG9jazNfd3JhcHBlciB7CiAgICBwYWRkaW5nLXRvcDogNC42NjY2N3JlbQp9CgouY29udGVudC0tYmxvY2szIC5jb250ZW50X2Jsb2NrM193cmFwcGVyOm50aC1jaGlsZCgybisyKSB7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7CiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UKfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKICAgIC5jb250ZW50LS1ibG9jazMgLmNvbnRlbnRfYmxvY2szX3dyYXBwZXI6bnRoLWNoaWxkKDJuKzIpIC5vZmZzZXQtbGctMSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzJQogICAgfQp9CgouY29udGVudC0tYmxvY2szIC5jb250ZW50X2Jsb2NrM193cmFwcGVyKy5jb250ZW50X2Jsb2NrM193cmFwcGVyIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5jb250ZW50LS1ibG9jazMgaDQgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLmNvbnRlbnQtYmxvY2stLTEyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouY29udGVudC1ibG9jay0tMTIgLmNvdW50ZXItd3JhcHBlciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmNvbnRlbnQtYmxvY2stLTEyIC5jb3VudGVyLXdyYXBwZXIgLmNvdW50ZXItLWFsdCB7CiAgICBwYWRkaW5nOiA2LjA2NjY3cmVtIDAgMTEuMzMzMzNyZW0KfQoKLmNvbnRlbnQtYmxvY2stLTEyIC5jbGllbnRzLWxvZ28gewogICAgcGFkZGluZzogMTMuMzMzMzNyZW0gMCA2LjY2NjY3cmVtCn0KCi5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICBib3R0b206IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7CiAgICB6LWluZGV4OiAxCn0KCi5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCAuY29udGVudCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIG1pbi1oZWlnaHQ6IDE0LjY2NjY3cmVtOwogICAgcGFkZGluZzogMCA2LjY2NjY3cmVtCn0KCkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDpub25lKSwKKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSkgewogICAgLmNvbnRlbnQtYmxvY2stLTEyIC5oaWdobGlnaHRlZC10ZXh0IC5jb250ZW50IHsKICAgICAgICBoZWlnaHQ6IDIyMHB4CiAgICB9Cn0KCi5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCAuY29udGVudCBwIHsKICAgIGZvbnQtc2l6ZTogMS42cmVtOwogICAgbGluZS1oZWlnaHQ6IDIuOTMzMzNyZW07CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jb250ZW50LWJsb2NrLS0xNSB7CiAgICBwYWRkaW5nOiA2LjhyZW0gMCA3LjMzMzMzcmVtOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgjZmZmKSwgdG8oI2Y4ZjdmZCkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZjhmN2ZkKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYsICNmOGY3ZmQpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiwgI2Y4ZjdmZCkKfQoKLmNvbnRlbnQtYmxvY2stLTE1IC5zZWN0aW9uLXRpdGxlIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIG1hcmdpbi1ib3R0b206IDIuMzMzMzNyZW0KfQoKLmNvbnRlbnQtYmxvY2stLTE1IC5zZWN0aW9uLXRpdGxlIGgyIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5jb250ZW50LWJsb2NrLS0xNSAuc2VjdGlvbi10aXRsZSBwIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5jb250ZW50LWJsb2NrLS0xNSAuY29udGVudC1kZXNjIGg0IHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5jb250ZW50LWJsb2NrLS02IHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLmNvbnRlbnQtLWJsb2NrOCBoNCB7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Cn0KCi5zZWN0aW9uX3RpdGxlIGgxIHsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBtYXJnaW4tYm90dG9tOiAzLjQ2NjY3cmVtCn0KCi5zZWN0aW9uX3RpdGxlIC5zZWN0aW9uX3RpdGxlX3VuZGVybGluZSB7CiAgICB3aWR0aDogNzBweDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBoZWlnaHQ6IDVweDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDsKICAgIGJvcmRlci1yYWRpdXM6IDEwcHgKfQoKLmNvbnRhY3Qtc3BsaXQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgaGVpZ2h0OiA3MjBweAp9CgouY29udGFjdC1zcGxpdCAuZy1tYXBzIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICB3aWR0aDogNTAlCn0KCi5jb250YWN0LXNwbGl0IC5nLW1hcHMgI21hcDIgewogICAgaGVpZ2h0OiAxMDAlCn0KCi5jb250YWN0LXNwbGl0IC5nLW1hcHMgLm1hcC10b3AgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IDA7CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBwYWRkaW5nOiA1NXB4IDQwcHg7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDhweCAwIDAgOHB4OwogICAgYm9yZGVyLXJhZGl1czogOHB4IDAgMCA4cHg7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpCn0KCi5jb250YWN0LXNwbGl0IC5nLW1hcHMgLm1hcC10b3AgdWwgewogICAgbWFyZ2luOiAwCn0KCi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLXNvcnQgewogICAgbWFyZ2luLWJvdHRvbTogNTBweDsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLXNvcnQgdWwgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgbWFyZ2luOiAwCn0KCi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLXNvcnQgdWwgbGkgewogICAgZmxvYXQ6IGxlZnQ7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBsaW5lLWhlaWdodDogMy4zMzMzM3JlbTsKICAgIHBhZGRpbmc6IDAgMS42NjY2N3JlbTsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogMS42NjY2N3JlbQp9CgouZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1zb3J0IHVsIGxpLmFjdGl2ZSwKLmZpbHRlci13cmFwcGVyIC5maWx0ZXItc29ydCB1bCBsaTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9CgouZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1zb3J0MiB1bCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMS4zMzMzM3JlbTsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW07CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZDsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLXNvcnQyIHVsIGxpIHsKICAgIG1hcmdpbi1yaWdodDogMi4zMzMzM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5maWx0ZXItd3JhcHBlciAuZmlsdGVyLXNvcnQyIHVsIGxpLmFjdGl2ZSwKLmZpbHRlci13cmFwcGVyIC5maWx0ZXItc29ydDIgdWwgbGk6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLmZpbHRlci13cmFwcGVyIC5maWx0ZXItc29ydDIgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmV2ZW50LXNpbmdsZSB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgaGVpZ2h0OiAxMy4zMzMzM3JlbTsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KQp9CgouZXZlbnQtc2luZ2xlIC5ldmVudC1kYXRlIHsKICAgIHdpZHRoOiAxNS4zMzMzM3JlbTsKICAgIC13ZWJraXQtYWxpZ24tc2VsZjogc3RyZXRjaDsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2g7CiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5ldmVudC1zaW5nbGUgLmV2ZW50LWRhdGUgaDEgewogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5ldmVudC1zaW5nbGUgLmV2ZW50LWRhdGUgLm1vbnRoIHsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgY29sb3I6ICNmZmYKfQoKLmV2ZW50LXNpbmdsZSAuZXZlbnQtZGF0ZSAueWVhciB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGZvbnQtc2l6ZTogMnJlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogI2ZmZgp9CgouZXZlbnQtc2luZ2xlIC5ldmVudC1pbmZvIHsKICAgIHBhZGRpbmc6IDIuMzMzMzNyZW0gMi42NjY2N3JlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtZmxleDogMzsKICAgIC13ZWJraXQtZmxleDogMzsKICAgIC1tcy1mbGV4OiAzOwogICAgZmxleDogMzsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouZXZlbnQtc2luZ2xlIC5ldmVudC1pbmZvIGg1IHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKLmV2ZW50LXNpbmdsZSAuZXZlbnQtaW5mbyBoNSBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmV2ZW50LXNpbmdsZSAuZXZlbnQtaW5mbyBoNSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5ldmVudC1zaW5nbGUgLmV2ZW50LWluZm8gLnZpZXctYnRuIHsKICAgIG1hcmdpbi1sZWZ0OiBhdXRvCn0KCi5zb2NpYWwgdWwgbGkgewogICAgbWFyZ2luLXJpZ2h0OiAuNjY2NjdyZW0KfQoKLnNvY2lhbCB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1yaWdodDogMAp9Cgouc29jaWFsIHVsIGxpIGEgewogICAgbGluZS1oZWlnaHQ6IDIuNTMzMzNyZW07CiAgICB3aWR0aDogMi41MzMzM3JlbTsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMzMuMzMzMzNyZW07CiAgICBib3JkZXItcmFkaXVzOiAzMy4zMzMzM3JlbTsKICAgIGJhY2tncm91bmQ6ICMyOTI5MmQ7CiAgICBjb2xvcjogI2ZmZgp9Cgouc29jaWFsIHVsIGxpIGEgc3BhbiB7CiAgICBmb250LXNpemU6IC44NjY2N3JlbQp9Cgouc29jaWFsIHVsIGxpIGE6aG92ZXIgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzQxM2FhNDsKICAgIGNvbG9yOiAjZmZmCn0KCi5zb2NpYWwuc29jaWFsLS1zbWFsbCB1bCBsaSBhIHsKICAgIGxpbmUtaGVpZ2h0OiAyLjUzMzMzcmVtOwogICAgd2lkdGg6IDIuNTMzMzNyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9Cgouc29jaWFsLnNvY2lhbC0tc21hbGwgdWwgbGkgYSBzcGFuIHsKICAgIGNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnNvY2lhbC5zb2NpYWwtLXNtYWxsIHVsIGxpIGE6aG92ZXIgc3BhbiB7CiAgICBjb2xvcjogI2ZmZgp9Cgouc29jaWFsLnNxdWFyZSB1bCBsaSBhIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsKICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5zb2NpYWwuc29jaWFsLS1ncmF5IHVsIGxpIGEgewogICAgYmFja2dyb3VuZDogI2Y1ZjRmNyAhaW1wb3J0YW50OwogICAgY29sb3I6ICM1YTY2NzEKfQoKLnNvY2lhbC5zb2NpYWwtLWdyYXkgdWwgbGkgYSBzcGFuIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgY29sb3I6ICM5MTkyYTMKfQoKLnNvY2lhbC5zb2NpYWwtLWdyYXkgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQKfQoKLnNvY2lhbC5zb2NpYWwtLWdyYXkgdWwgbGkgYTpob3ZlciBzcGFuIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5zb2NpYWwuc29jaWFsLS1jb2xvcmVkIHVsIGxpIGEuZmFjZWJvb2sgewogICAgYmFja2dyb3VuZDogIzNiNTk5OAp9Cgouc29jaWFsLnNvY2lhbC0tY29sb3JlZCB1bCBsaSBhLnR3aXR0ZXIgewogICAgYmFja2dyb3VuZDogIzQ3YWRmYQp9Cgouc29jaWFsLnNvY2lhbC0tY29sb3JlZCB1bCBsaSBhLmxpbmtlZGluIHsKICAgIGJhY2tncm91bmQ6ICMwNjc3YjQKfQoKLnNvY2lhbC5zb2NpYWwtLWNvbG9yZWQgdWwgbGkgYS5ncGx1cyB7CiAgICBiYWNrZ3JvdW5kOiAjZGQ0YjM5Cn0KCi5zb2NpYWwuc29jaWFsLS1jb2xvcmVkIHVsIGxpIGEucGludGVyZXN0IHsKICAgIGJhY2tncm91bmQ6ICNiYzA5MWIKfQoKLnNvY2lhbC1iYXNpYyB1bCBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuNjY2NjdyZW0KfQoKLnNvY2lhbC1iYXNpYyB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1yaWdodDogMAp9Cgouc29jaWFsLWJhc2ljIHVsIGxpIGEgewogICAgY29sb3I6IHJnYmEoMzIsIDM2LCA0MCwgLjUpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnNvY2lhbC1iYXNpYyB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCi5zb2NpYWwtYmFzaWMgLnJvdW5kZWQtY2lyY2xlIGxpIHsKICAgIG1hcmdpbi1yaWdodDogLjY2NjY3cmVtCn0KCi5zb2NpYWwtYmFzaWMgLnJvdW5kZWQtY2lyY2xlIGxpIGEgewogICAgd2lkdGg6IDIuMTMzMzNyZW07CiAgICBoZWlnaHQ6IDIuMTMzMzNyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIGZvbnQtc2l6ZTogLjhyZW07CiAgICBjb2xvcjogcmdiYSg5MCwgMTAyLCAxMTMsIC42KQp9Cgouc29jaWFsLWJhc2ljLmljb24tbGlnaHQgbGkgYSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgY29sb3I6IHJnYmEoOTAsIDEwMiwgMTEzLCAuNikKfQoKLnNvY2lhbC1iYXNpYy5pY29uLWxpZ2h0IGxpIGE6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGNvbG9yOiAjZmZmCn0KCi5zb2NpYWwtYmFzaWMuaWNvbi1ncmV5IGxpIGEgewogICAgYmFja2dyb3VuZDogcmdiYSg2NSwgNTgsIDE2NCwgLjA2KQp9Cgouc29jaWFsLWJhc2ljLmljb24tZ3JleSBsaSBhOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBjb2xvcjogI2ZmZgp9Cgouc29jaWFsLWJ0bnMgewogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwCn0KCi5zb2NpYWwtYnRucyBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuMzMzMzNyZW0KfQoKLnNvY2lhbC1idG5zIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5zb2NpYWwtYnRucyAuYnRuIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5zb2NpYWwtYnRucyAuYnRuIHNwYW4gewogICAgcGFkZGluZy1yaWdodDogLjUzMzMzcmVtCn0KCi5zb2NpYWwtYnRucyAuYnRuLWZhY2Vib29rIHsKICAgIGJhY2tncm91bmQ6ICMzYjU5OTgKfQoKLnNvY2lhbC1idG5zIC5idG4tdHdpdHRlciB7CiAgICBiYWNrZ3JvdW5kOiAjNDdhZGZhCn0KCi5zb2NpYWwtYnRucyAuYnRuLWxpbmtlZGluIHsKICAgIGJhY2tncm91bmQ6ICMwNjc3YjQKfQoKLnNvY2lhbC1idG5zIC5idG4tZ3BsdXMgewogICAgYmFja2dyb3VuZDogI2RkNGIzOQp9Cgouc2hhZG93LWxnLTIgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpICFpbXBvcnRhbnQ7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpICFpbXBvcnRhbnQKfQoKLnNoYWRvd19sZy0tYmd3aGl0ZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpCn0KCi5zaGFkb3dfbGcyLS1iZ3doaXRlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKQp9CgoudG9wX2JhciB7CiAgICBtaW4taGVpZ2h0OiAzLjMzMzMzcmVtCn0KCi50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSsuaW5mb3MtLXNpbmdsZSB7CiAgICBtYXJnaW4tbGVmdDogMnJlbQp9CgoudG9wX2JhciAuaW5mb3MgLmluZm9zLS1zaW5nbGUgc3BhbiB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGZvbnQtc2l6ZTogMS44cmVtOwogICAgbWFyZ2luLXJpZ2h0OiAxMXB4OwogICAgbWFyZ2luLXRvcDogM3B4Cn0KCi50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSAuaW5mbyB7CiAgICBsaW5lLWhlaWdodDogMS43cmVtCn0KCi50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSAuaW5mbyBwIHsKICAgIG1hcmdpbjogMDsKICAgIGZvbnQtc2l6ZTogMS4xcmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSAuaW5mbyBzbWFsbCB7CiAgICBmb250LXNpemU6IDE1cHg7CiAgICBjb2xvcjogIzkxOTJhMwp9CgoudG9wX2JhciB1bCB7CiAgICBsaXN0LXN0eWxlOiBub25lOwogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMAp9CgoudG9wX2JhciAudG9wX2Jhci0tbGFuZyB7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnRvcF9iYXIgLnRvcF9iYXItLWxhbmcgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHsKICAgIG1pbi13aWR0aDogMTUwcHgKfQoKLnRvcF9iYXIgLnRvcF9iYXItLWxhbmcgLmRyb3Bkb3duIC5sYW5nX2ZsYWcgewogICAgbWFyZ2luOiAwIDEwcHgKfQoKLnRvcF9iYXIgLnRvcF9iYXItLWxhbmcgLmRyb3Bkb3duIC5kcm9wZG93bi1pdGVtIGltZyB7CiAgICBtYXJnaW4tcmlnaHQ6IDEycHgKfQoKLnRvcF9iYXIgLnRvcF9iYXItLWxhbmcgLmRyb3Bkb3duIC5sYW5nIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KTsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UKfQoKLnRvcF9iYXIgLnRvcF9iYXItLWxhbmcgLmRyb3Bkb3duIHNwYW4ubGEgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjYpOwogICAgZm9udC1zaXplOiAuODY2NjdyZW0KfQoKLnRvcF9iYXIgLnRvcF9iYXItLWluZm8gbGkgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpCn0KCi50b3BfYmFyIC50b3BfYmFyLS1pbmZvIGxpIHNwYW4gewogICAgbWFyZ2luLXJpZ2h0OiA4cHg7CiAgICBmb250LXNpemU6IDIwcHg7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjYpCn0KCi50b3BfYmFyIC50b3BfYmFyLS1pbmZvIGxpIHAgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbWFyZ2luOiAwOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KQp9CgoudG9wX2JhciAudG9wX2Jhci0taW5mbyBsaStsaSB7CiAgICBtYXJnaW4tbGVmdDogMnJlbQp9CgoudG9wX2JhciAudG9wX2Jhci0tc29jaWFsIHVsIGxpIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAzLjZyZW07CiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpCn0KCi50b3BfYmFyIC50b3BfYmFyLS1zb2NpYWwgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9CgoudG9wX2JhciAudG9wX2Jhci0tc29jaWFsIHVsIGxpIGEgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjYpOwogICAgZm9udC1zaXplOiAxNXB4OwogICAgcGFkZGluZzogMCAyMHB4Cn0KCi50b3BfYmFyIC50b3BfYmFyLS1zb2NpYWwgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoudG9wX2Jhci50b3AtLWJhcjIgLnRvcF9iYXItLWluZm8gbGkgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpCn0KCi50b3BfYmFyLnRvcC0tYmFyMiAudG9wX2Jhci0tc29jaWFsIHVsIGxpIHsKICAgIGJvcmRlcjogMAp9CgoudG9wX2Jhci50b3AtLWJhcjIgLnRvcF9iYXItLXNvY2lhbCB1bCBsaSBhIHsKICAgIHBhZGRpbmc6IDAgMTFweDsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KQp9CgoudG9wX2Jhci50b3AtLWJhcjIgLnRvcF9iYXItLXNvY2lhbCB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi50b3BfYmFyLnRvcC0tYmFyMywKLnRvcF9iYXIudG9wLS1iYXI0IHsKICAgIHBhZGRpbmc6IDEuMzMzMzNyZW0gMAp9CgoudG9wX2Jhci50b3AtLWJhcjQgLmluZm9zIC5pbmZvcy0tc2luZ2xlIHAgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLm1lbnVfYXJlYSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC4zMzMzM3JlbSAwIDEuMzMzMzNyZW0gcmdiYSg4NywgODcsIDg3LCAuMSk7CiAgICBib3gtc2hhZG93OiAuMzMzMzNyZW0gMCAxLjMzMzMzcmVtIHJnYmEoODcsIDg3LCA4NywgLjEpOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5tZW51X2FyZWEuYmdpbWFnZTpiZWZvcmUgewogICAgY29udGVudDogJyc7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCU7CiAgICB6LWluZGV4OiAxOwogICAgYmFja2dyb3VuZDogcmdiYSgxMiwgMTMsIDMyLCAuOCkKfQoKLm1lbnVfYXJlYSAubmF2X3JpZ2h0X2NvbnRlbnQgLm5hdl9yaWdodF9tb2R1bGUrLm5hdl9yaWdodF9tb2R1bGUgewogICAgcGFkZGluZy1sZWZ0OiAxLjZyZW0KfQoKLm1lbnVfYXJlYSAubmF2X3JpZ2h0X2NvbnRlbnQgLm5hdl9yaWdodF9tb2R1bGU6bGFzdC1jaGlsZCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwCn0KCi5tZW51X2FyZWEgLm5hdmJhciB7CiAgICBwYWRkaW5nOiAxcmVtCn0KCi5tZW51X2FyZWEgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAubmF2YmFyLXRvZ2dsZXIgewogICAgY29sb3I6ICNmZmYKfQoKLm1lbnVfYXJlYSAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlIHsKICAgIGNvbG9yOiAjOTI4ZDhkCn0KCi5tZW51X2FyZWEgLm5hdmJhci5uYXZiYXItYmcgLm5hdmJhci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5uYXYtbGluazpiZWZvcmUgewogICAgY29sb3I6ICNlZGVkZWQKfQoKLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7CiAgICBmb250LXNpemU6IDE1cHgKfQoKLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5oYXNfbWVnYS1sZyB7CiAgICBwb3NpdGlvbjogc3RhdGljCn0KCi5tZW51X2FyZWEgLm5hdmJhciAubmF2YmFyLW5hdiAubmF2LWl0ZW06aG92ZXIgLm1lZ2EtbWVudSB7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgb3BhY2l0eTogMTsKICAgIHRvcDogNC41MzMzM3JlbQp9CgoubWVudV9hcmVhIC5uYXZiYXIgLm5hdmJhci1uYXYgLm5hdi1pdGVtOmhvdmVyIC5tZWdhLW1lbnUtbGcgewogICAgdG9wOiA1LjZyZW0KfQoKLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbSAubmF2LWxpbms6YWZ0ZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBjb250ZW50OiAnJzsKICAgIGhlaWdodDogMXJlbTsKICAgIGJvdHRvbTogLTEuMDY2NjdyZW07CiAgICBsZWZ0OiAwCn0KCkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7CiAgICAubWVudV9hcmVhIC5uYXZiYXIgLm5hdmJhci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB0b3A6IDYuNjY2NjdyZW0gIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMDsKICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgcGFkZGluZzogMnJlbQogICAgfQogICAgLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7CiAgICAgICAgcGFkZGluZzogMCAwIDFyZW0KICAgIH0KICAgIC5tZW51X2FyZWEgLm5hdmJhciAubmF2YmFyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bGFzdC1jaGlsZCB7CiAgICAgICAgcGFkZGluZzogMAogICAgfQogICAgLm1lbnVfYXJlYSAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93bjpob3ZlciAuZHJvcGRvd24tbWVudSB7CiAgICAgICAgdG9wOiA0LjY2NjY3cmVtICFpbXBvcnRhbnQ7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlCiAgICB9Cn0KCi5tZW51X2FyZWEgLm5hdmJhciAubmF2YmFyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLm5hdi1saW5rIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoubWVudV9hcmVhIC5uYXZiYXIgLm5hdmJhci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5uYXYtbGluazpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJ1xmMTEwJzsKICAgIGZvbnQtc2l6ZTogLjY2NjY3cmVtOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpOwogICAgcmlnaHQ6IDA7CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKQp9CgoubWVudV9hcmVhIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgewogICAgcGFkZGluZzogLjY2NjY3cmVtIDEuOHJlbTsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDsKICAgIGJvcmRlci1yYWRpdXM6IDRweAp9CgoubWVudV9hcmVhIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5tZW51X2FyZWEgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAubmF2X3JpZ2h0X2NvbnRlbnQgLm5hdl9yaWdodF9tb2R1bGU+c3Bhbi5sYSB7CiAgICBjb2xvcjogI2ZmZgp9CgoubWVudV9hcmVhIC5uYXZiYXIubmF2YmFyLXByaW1hcnkgLm5hdl9yaWdodF9jb250ZW50IC5zb2NpYWxfbW9kdWxlIHVsIGxpIGEgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5tZW51X2FyZWEgLm5hdmJhci5uYXZiYXItcHJpbWFyeSAubmF2X3JpZ2h0X2NvbnRlbnQgLnNvY2lhbF9tb2R1bGUgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoubWVudV9hcmVhIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7CiAgICBwYWRkaW5nOiAxLjJyZW0gMXJlbQp9CgoubWVudV9hcmVhLm1lbnUxIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLm1lbnVfYXJlYS5tZW51MyB7CiAgICBiYWNrZ3JvdW5kOiAjMjAyNDI4Cn0KCi5tZW51X2FyZWEubWVudTMgLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSB7CiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zKQp9CgoubWVudV9hcmVhLm1lbnUzIC5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfY291bnQgewogICAgbGVmdDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpCn0KCi5tZW51X2FyZWEubWVudTMgLm5hdl9yaWdodF9jb250ZW50IC5uYXZfcmlnaHRfbW9kdWxlIHsKICAgIHBhZGRpbmc6IDAgMS42cmVtCn0KCi5tZW51X2FyZWEubWVudTMgLm5hdl9yaWdodF9jb250ZW50IC5uYXZfcmlnaHRfbW9kdWxlOmxhc3QtY2hpbGQgewogICAgcGFkZGluZy1yaWdodDogMAp9CgoubWVudV9hcmVhLm1lbnUzIC5uYXZfcmlnaHRfY29udGVudCAubmF2X3JpZ2h0X21vZHVsZSAuY2FydF9faWNvbiBzcGFuLmxhLAoubWVudV9hcmVhLm1lbnUzIC5uYXZfcmlnaHRfY29udGVudCAubmF2X3JpZ2h0X21vZHVsZSAubGEuc2VhcmNoX3RyaWdnZXIgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpCn0KCi5tZW51X2FyZWEubWVudTQgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIC4zMzMzM3JlbSAxLjMzMzMzcmVtIHJnYmEoODcsIDg3LCA4NywgLjEpOwogICAgYm94LXNoYWRvdzogMCAuMzMzMzNyZW0gMS4zMzMzM3JlbSByZ2JhKDg3LCA4NywgODcsIC4xKTsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5tZW51X2FyZWEubWVudTQgLm5hdl9yaWdodF9jb250ZW50IC5uYXZfcmlnaHRfbW9kdWxlIHsKICAgIHBhZGRpbmc6IDAgMS42cmVtCn0KCi5tZW51X2FyZWEubWVudTQgLm5hdl9yaWdodF9jb250ZW50IC5uYXZfcmlnaHRfbW9kdWxlKy5uYXZfcmlnaHRfbW9kdWxlIHsKICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U0ZThlZAp9CgoubWVudV9hcmVhLm1lbnU0IC5uYXZfcmlnaHRfY29udGVudCAubmF2X3JpZ2h0X21vZHVsZTpsYXN0LWNoaWxkIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAKfQoKLm1lbnVfYXJlYS5tZW51NSB7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTIpCn0KCi5tZW51X2FyZWEubWVudTUgLm5hdmJhciB7CiAgICBwYWRkaW5nOiAwCn0KCi5tZW51X2FyZWEubWVudTUgLm5hdl9yaWdodF9jb250ZW50IC5zZWFyY2hfbW9kdWxlIHsKICAgIGxpbmUtaGVpZ2h0OiA2cmVtOwogICAgcGFkZGluZzogMCAuNjY2NjdyZW07CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS42NjY2N3JlbQp9CgoubWVudV9hcmVhLm1lbnU1IC5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSBzcGFuIHsKICAgIGZvbnQtc2l6ZTogMS40NjY2N3JlbQp9CgoubWVudV9hcmVhLm1lbnU1IC5uYXZfcmlnaHRfY29udGVudCAubGFuZ3VhZ2VfbW9kdWxlIHsKICAgIHBhZGRpbmc6IDAgMS4zMzMzM3JlbTsKICAgIGN1cnNvcjogcG9pbnRlcgp9CgoubWVudV9hcmVhLm1lbnU1IC5uYXZfcmlnaHRfY29udGVudCAubGFuZ3VhZ2VfbW9kdWxlIC5kcm9wZG93biAubGFuZyB7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5tZW51X2FyZWEubWVudTUgLm5hdl9yaWdodF9jb250ZW50IC5sYW5ndWFnZV9tb2R1bGUgLmRyb3Bkb3duIC5sYW5nX2ZsYWcgewogICAgcGFkZGluZzogMCAuNjY2NjdyZW0KfQoKLm1lbnVfYXJlYS5tZW51NSAubmF2X3JpZ2h0X2NvbnRlbnQgLmxhbmd1YWdlX21vZHVsZSAuZHJvcGRvd24gc3Bhbi5sYSB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7CiAgICBmb250LXNpemU6IC44NjY2N3JlbQp9CgoubWVudV9hcmVhLm1lbnU1IC5uYXZfcmlnaHRfY29udGVudCAubGFuZ3VhZ2VfbW9kdWxlIC5kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSBpbWcgewogICAgbWFyZ2luLXJpZ2h0OiAuNjY2NjdyZW0KfQoKLm1lbnVfYXJlYS5tZW51NyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwOwogICAgYm94LXNoYWRvdzogMCAwIDAKfQoKLm1lbnVfYXJlYS5tZW51NyAubmF2YmFyIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlIHsKICAgIGNvbG9yOiAjZmZmCn0KCkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7CiAgICAubWVudV9hcmVhIC5tZWdhLW1lbnUgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpOwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpOwogICAgICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAgICAgd2lkdGg6IDQ2LjY2NjY3cmVtOwogICAgICAgIGxlZnQ6IC0yLjY2NjY3cmVtOwogICAgICAgIHRvcDogNi42NjY2N3JlbTsKICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuCiAgICB9Cn0KCi5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCB7CiAgICBwYWRkaW5nOiAyLjY2NjY3cmVtOwogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgoubWVudV9hcmVhIC5tZWdhLW1lbnUgdWwgbGkgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgoubWVudV9hcmVhIC5tZWdhLW1lbnUgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCBsaSBoNiB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCn0KCi5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCBsaSBhIHsKICAgIGNvbG9yOiBpbmhlcml0OwogICAgZm9udC1zaXplOiAxNXB4Cn0KCi5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCBsaStsaSBoNiB7CiAgICBtYXJnaW4tdG9wOiAycmVtCn0KCkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7CiAgICAubWVudV9hcmVhIC5tZWdhLW1lbnUubWVnYS1tZW51LWxnIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBsZWZ0OiAwCiAgICB9Cn0KCi5tZW51NiAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbmssCi5tZW51NyAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbmssCi5tZW51OCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbmsgewogICAgY29sb3I6ICNmZmYKfQoKLm1lbnU2IC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5uYXYtbGluazpiZWZvcmUsCi5tZW51NyAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlLAoubWVudTggLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLm5hdi1saW5rOmJlZm9yZSB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSkKfQoKLm1lbnU2IC5uYXZiYXItZGFyayAubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pY29uIHNwYW4ubGEsCi5tZW51NiAubmF2YmFyLWRhcmsgLm5hdl9yaWdodF9jb250ZW50IC5zZWFyY2hfbW9kdWxlPnNwYW4sCi5tZW51NiAubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLAoubWVudTcgLm5hdmJhci1kYXJrIC5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2ljb24gc3Bhbi5sYSwKLm1lbnU3IC5uYXZiYXItZGFyayAubmF2X3JpZ2h0X2NvbnRlbnQgLnNlYXJjaF9tb2R1bGU+c3BhbiwKLm1lbnU3IC5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXIsCi5tZW51OCAubmF2YmFyLWRhcmsgLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faWNvbiBzcGFuLmxhLAoubWVudTggLm5hdmJhci1kYXJrIC5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZT5zcGFuLAoubWVudTggLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoubmF2YmFyLWJnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNykKfQoKLm5hdmJhci1iZyAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKLm5hdmJhci1iZyAubmF2X3JpZ2h0X2NvbnRlbnQgLm5hdl9yaWdodF9tb2R1bGUgLmlucHV0LWdyb3VwLWxpZ2h0IHNwYW4uaWNvbi1sZWZ0IC5sYSB7CiAgICBjb2xvcjogIzVhNjY3MQp9CgoubmF2YmFyLWJnIC5uYXZfcmlnaHRfY29udGVudCAubmF2X3JpZ2h0X21vZHVsZSAuc2VhcmNoX3RyaWdnZXIsCi5uYXZiYXItYmcgLm5hdl9yaWdodF9jb250ZW50IC5uYXZfcmlnaHRfbW9kdWxlIHNwYW4ubGEtbGEtYW5nbGUtZG93biB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNykKfQoKLm5hdmJhci1iZyAubmF2X3JpZ2h0X2NvbnRlbnQgLm5hdl9yaWdodF9tb2R1bGUgLnNlYXJjaF90cmlnZ2VyOmhvdmVyLAoubmF2YmFyLWJnIC5uYXZfcmlnaHRfY29udGVudCAubmF2X3JpZ2h0X21vZHVsZSBzcGFuLmxhLWxhLWFuZ2xlLWRvd246aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKQG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpIHsKICAgIC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBjb2xvcjogI2ZmZgogICAgfQogICAgLm5hdmJhciAubmF2YmFyLXRvZ2dsZXIgewogICAgICAgIHBhZGRpbmc6IC4zMzMzM3JlbSAuNjY2NjdyZW07CiAgICAgICAgZm9udC1zaXplOiAxLjY2NjY3cmVtOwogICAgICAgIGNvbG9yOiAjNDEzYWE0OwogICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDRweCByZ2JhKDAsIDAsIDAsIC4xKTsKICAgICAgICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoMCwgMCwgMCwgLjEpOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjIKICAgIH0KICAgIC5uYXZiYXIgLm5hdmJhci1icmFuZCB7CiAgICAgICAgd2lkdGg6IDI1JTsKICAgICAgICBtYXJnaW46IDAKICAgIH0KICAgIC5uYXZiYXIgLm5hdmJhci1icmFuZCBpbWcgewogICAgICAgIG1heC13aWR0aDogMTAwJQogICAgfQogICAgLm5hdmJhciAubmF2YmFyLWNvbGxhcHNlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICB6LWluZGV4OiAxMDA7CiAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7CiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsKICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIC4xKTsKICAgICAgICBib3gtc2hhZG93OiAwIDFweCA2cHggcmdiYSgwLCAwLCAwLCAuMSkKICAgIH0KfQoKLm5hdl9yaWdodF9jb250ZW50IHVsIHsKICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXgKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faWNvbiB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZTpob3ZlciAuY2FydF9faXRlbXMgewogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGU7CiAgICB0b3A6IDEwMCUKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faXRlbXMgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IC0yMHB4OwogICAgbWluLXdpZHRoOiAzNTBweDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgei1pbmRleDogMjsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgdG9wOiBjYWxjKDEwMCUgKyAyMHB4KQp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuaXRlbXMgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBwYWRkaW5nOiAxNXB4IDI1cHg7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuaXRlbXMgLml0ZW1fdGh1bWIgewogICAgbWFyZ2luLXJpZ2h0OiAxNXB4Cn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9pbmZvIHsKICAgIG1hcmdpbi1yaWdodDogMTBweAp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuaXRlbXMgLml0ZW1faW5mbz5hIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDEuNTMzMzNyZW07CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBtYXJnaW4tYm90dG9tOiAxMHB4Cn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9pbmZvIHNwYW4gewogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuaXRlbXMgLml0ZW1fcmVtb3ZlIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogaW5pdGlhbDsKICAgIC1vLXRyYW5zaXRpb246IGluaXRpYWw7CiAgICB0cmFuc2l0aW9uOiBpbml0aWFsCn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9yZW1vdmUgc3BhbiB7CiAgICBmb250LXNpemU6IDE0cHg7CiAgICBsaW5lLWhlaWdodDogMzBweDsKICAgIHdpZHRoOiAycmVtOwogICAgYmFja2dyb3VuZDogI2Y0ZjRmNDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlCn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5jYXJ0X2luZm8gewogICAgcGFkZGluZzogMjBweCAyNXB4Cn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5jYXJ0X2luZm8gcCB7CiAgICBtYXJnaW4tYm90dG9tOiAxNXB4Cn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5jYXJ0X2luZm8gcCBzcGFuIHsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBmb250LXNpemU6IDE4cHgKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSAuY2FydF9faXRlbXMgLmNhcnRfaW5mbyBhK2EgewogICAgbWFyZ2luLWxlZnQ6IDEwcHgKfQoKLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSBzcGFuLmxhIHsKICAgIGZvbnQtc2l6ZTogMS42NjY2N3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfY291bnQgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAtLjkzMzMzcmVtOwogICAgbGVmdDogM3B4OwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDEuMzMzMzNyZW07CiAgICB3aWR0aDogMS4ycmVtOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgZm9udC1zaXplOiAuOHJlbTsKICAgIGNvbG9yOiAjZmZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMy4zMzMzM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IDEzLjMzMzMzcmVtCn0KCi5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAzCn0KCi5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSAuc2VhcmNoX2FyZWEgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDMwMHB4OwogICAgcmlnaHQ6IC0xMHB4OwogICAgb3BhY2l0eTogMDsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgIHBhZGRpbmc6IDEwcHg7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRvcDogY2FsYygxMDAlICsgNDBweCk7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMik7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjIpCn0KCi5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSAuc2VhcmNoX2FyZWEgLmlucHV0LWdyb3VwLWxpZ2h0IHNwYW4uaWNvbi1sZWZ0IC5sYSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOwogICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApOwogICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7CiAgICBjb2xvcjogIzk2OTY5Ngp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLnNlYXJjaF9tb2R1bGUgLnNlYXJjaF9hcmVhLmFjdGl2ZSB7CiAgICB0b3A6IGNhbGMoMTAwJSArIDE5cHgpOwogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGUKfQoKLm5hdl9yaWdodF9jb250ZW50IC5zZWFyY2hfbW9kdWxlIC5zZWFyY2hfYXJlYSAuc2VhcmNoX2ZpZWxkIHsKICAgIGJvcmRlcjogMAp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLnNlYXJjaF9tb2R1bGU+c3BhbiB7CiAgICBmb250LXNpemU6IDEuMzMzMzNyZW07CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGxpbmUtaGVpZ2h0OiAycmVtCn0KCi5uYXZfcmlnaHRfY29udGVudCAuc29jaWFsX21vZHVsZSB1bCBsaSB7CiAgICBwYWRkaW5nOiAwIC42NjY2N3JlbQp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLnNvY2lhbF9tb2R1bGUgdWwgbGkgYSB7CiAgICBjb2xvcjogIzkxOTJhMwp9CgoubmF2X3JpZ2h0X2NvbnRlbnQgLnNvY2lhbF9tb2R1bGUgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNAp9CgpAbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpIHsKICAgIC5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSB7CiAgICAgICAgcGFkZGluZzogMCAuNnJlbSAwIC4zMzMzM3JlbQogICAgfQp9CgoubW9kYWwuc2VhcmNoX21vZGFsIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjkpCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLnNlYXJjX19maWVsZCBpbnB1dCB7CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zNik7CiAgICBjb2xvcjogI2ZmZjsKICAgIHBhZGRpbmc6IDEuMnJlbSAxLjU1cmVtCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLnNlYXJjX19maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSkKfQoKLm1vZGFsLnNlYXJjaF9tb2RhbCAuc2VhcmNfX2ZpZWxkIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLnNlYXJjX19maWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLmlucHV0X3dpdGhfZW1iZWQgYnV0dG9uIHsKICAgIGZvbnQtc2l6ZTogMS42cmVtOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjU0KTsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjNzOwogICAgLW8tdHJhbnNpdGlvbjogLjNzOwogICAgdHJhbnNpdGlvbjogLjNzCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLmlucHV0X3dpdGhfZW1iZWQgYnV0dG9uOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5tb2RhbC5zZWFyY2hfbW9kYWwgLm1vZGFsLWJvZHkgewogICAgcGFkZGluZzogMi42OHJlbSAzLjM0cmVtCn0KCi5tb2RhbCAubW9kYWwtZGlhbG9nLm1vZGFsLS1mdWxsd2lkdGggewogICAgbWF4LXdpZHRoOiAxMTQwcHgKfQoKLm1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQudHJhbnNwYXJlbnQgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAuNXJlbSAxLjMzcmVtIHJnYmEoNjUsIDU4LCAxNjQsIC41KTsKICAgIGJveC1zaGFkb3c6IDAgLjVyZW0gMS4zM3JlbSByZ2JhKDY1LCA1OCwgMTY0LCAuNSk7CiAgICBib3JkZXI6IDAKfQoKLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSsuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUgewogICAgcGFkZGluZzogMCA4cHg7CiAgICBmb250LXNpemU6IC44cmVtCn0KCi5icmVhZGNydW1iIGxpIHsKICAgIGZvbnQtc2l6ZTogMTRweAp9CgouYnJlYWRjcnVtYiBsaSBhIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouYnJlYWRjcnVtYiBsaSBhIHNwYW4gewogICAgbWFyZ2luLXJpZ2h0OiA1cHgKfQoKLmJyZWFkY3J1bWIgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNAp9CgouYnJlYWRjcnVtYiBsaTo6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZSwgUG9wcGlucywgc2Fucy1zZXJpZgp9CgouYnJlYWRjcnVtYl9hcmVhIC5wYWdlX3RpdGxlIHsKICAgIGxpbmUtaGVpZ2h0OiA0LjhyZW07CiAgICBmb250LXdlaWdodDogNjAwCn0KCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYjEgewogICAgcGFkZGluZzogM3JlbSAwOwogICAgYmFja2dyb3VuZDogI2Y1ZjdmYwp9CgouYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWIxIC5wYWdlX3RpdGxlIHsKICAgIG1hcmdpbjogMDsKICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iMiB7CiAgICBwYWRkaW5nLXRvcDogNy4xcmVtCn0KCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYjIgLnBhZ2VfdGl0bGUgewogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiA1LjZyZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICB3aWR0aDogNTByZW07CiAgICBsaW5lLWhlaWdodDogMy42cmVtCn0KCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYjIgLmJyZWFkY3J1bWIgbGkgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYjIgLmJyZWFkY3J1bWIgbGkgYSB7CiAgICBjb2xvcjogI2ZmZgp9CgouYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWIyIC5icmVhZGNydW1iIGxpIGE6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iLWNvbG9yZWQgLnBhZ2VfdGl0bGUsCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYi1ncmFkaWVudCAucGFnZV90aXRsZSB7CiAgICBjb2xvcjogI2ZmZgp9CgouYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWItY29sb3JlZCAuYnJlYWRjcnVtYiBsaSBhLAouYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWItZ3JhZGllbnQgLmJyZWFkY3J1bWIgbGkgYSB7CiAgICBjb2xvcjogI2ZmZgp9CgouYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWItY29sb3JlZCAuYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSwKLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iLWNvbG9yZWQgLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUsCi5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYi1ncmFkaWVudCAuYnJlYWRjcnVtYi1pdGVtKy5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSwKLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iLWdyYWRpZW50IC5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgouYnJlYWRjcnVtYjMgewogICAgcGFkZGluZzogNi4yNjY2N3JlbSAwIDEwLjQ2NjY3cmVtCn0KCi5icmVhZGNydW1iMyAuYnJlYWRjcnVtYl93cmFwcGVyIC5zdWJ0ZXh0IHsKICAgIGZvbnQtc2l6ZTogMnJlbQp9CgouYnJlYWRjcnVtYjMgLmJyZWFkY3J1bWJfd3JhcHBlciAucGFnZV90aXRsZSB7CiAgICB3aWR0aDogMzMuMzMzMzNyZW07CiAgICBtYXJnaW46IDAgYXV0bzsKICAgIGNvbG9yOiAjZmZmOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgbGluZS1oZWlnaHQ6IDMuNnJlbQp9CgouYnJlYWRjcnVtYjMgLmJyZWFkY3J1bWJfd3JhcHBlciAuYnJlYWRjcnVtYiB7CiAgICBtYXJnaW4tdG9wOiA1LjMzMzMzcmVtCn0KCi5icmVhZGNydW1iMyAuYnJlYWRjcnVtYl93cmFwcGVyIC5icmVhZGNydW1iIGxpIGEgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyIHsKICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgMy4zMzMzM3JlbQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIHsKICAgIGxpbmUtaGVpZ2h0OiAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5hZGRyZXNzLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5tYWlsLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC50ZWwgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5tYWlsOmhvdmVyLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC50ZWw6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAudGV4dF93aWRnZXQgLmZvb3Rlcl9sb2dvIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IHsKICAgIG1hcmdpbi1ib3R0b206IDRyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IC53aWRnZXRfX3RpdGxlIHsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICBsaW5lLWhlaWdodDogbm9ybWFsOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldCAud2lkZ2V0X19zb2NpYWwgewogICAgbWFyZ2luLXRvcDogMzBweAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQuc3ViY3JpYmUtLXdpZGdldCAuc3Vic2NyaWJlX2Zvcm0gLmVtYmVkX2ljb24gewogICAgZm9udC1zaXplOiAxLjMzMzMzcmVtOwogICAgY29sb3I6ICM1YTY2NzEKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LnN1YmNyaWJlLS13aWRnZXQgLnN1YnNjcmliZV9mb3JtIGlucHV0IHsKICAgIHdpZHRoOiAxMDAlOwogICAgZm9udC1zaXplOiAxcmVtOwogICAgY29sb3I6ICM5MTkyYTM7CiAgICBvdXRsaW5lOiAwOwogICAgcGFkZGluZy1sZWZ0OiAxLjRyZW07CiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtCn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldCB1bC5saW5rcyBsaSB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IHVsLmxpbmtzIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYSB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQtLWNvbnRhY3RfaW5mbyB1bCBsaSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIG1hcmdpbi1ib3R0b206IDMxcHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1jb250YWN0X2luZm8gdWwgbGkgc3Bhbi5sYSB7CiAgICBmb250LXNpemU6IDI4cHg7CiAgICBtYXJnaW4tcmlnaHQ6IDEycHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1jb250YWN0X2luZm8gdWwgbGkgLmluZm8gcCB7CiAgICBtYXJnaW46IDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAyNnB4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldC0tY29udGFjdF9pbmZvIHVsIGxpIC5pbmZvIHNtYWxsIHsKICAgIGZvbnQtc2l6ZTogMTRweAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQtLWxhdGVzdC1uZXdzIHVsIGxpIHsKICAgIG1hcmdpbi1ib3R0b206IDIwcHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1sYXRlc3QtbmV3cyB1bCBsaSBzbWFsbCB7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAzMHB4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldC0tbGF0ZXN0LW5ld3MgdWwgbGkgYSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogMjhweAp9Cgpmb290ZXIgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogIzAwMAp9Cgpmb290ZXIgLmZvb3Rlcl9fc21hbGwgcCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAzMHB4IDAKfQoKZm9vdGVyIC5mb290ZXJfX3NtYWxsIGEgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyIC5mb290ZXJfX2JvdHRvbSAuZm9vdGVyX19ib3R0b20tY29udGVudCB7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWFlYTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgLW1zLWZsZXgtcGFjazoganVzdGlmeTsKICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIHBhZGRpbmc6IDIuMzMzMzNyZW0gMAp9Cgpmb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5mb290ZXJfX2JvdHRvbS1jb250ZW50IHAgewogICAgbWFyZ2luOiAwCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgcD5hIHsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgLnNvY2lhbC1iYXNpYyBsaSBhIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgLnNvY2lhbC1iYXNpYyBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIGEsCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIHNwYW4gewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC53aWRnZXQuc3ViY3JpYmUtLXdpZGdldCBwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9Cgpmb290ZXIuZm9vdGVyLS1kYXJrIC5mb290ZXJfX2JpZyAud2lkZ2V0IC53aWRnZXRfX3RpdGxlIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9Cgpmb290ZXIuZm9vdGVyLS1saWdodCAud2lkZ2V0X19zb2NpYWwgLnNvY2lhbCB1bCBsaSBhIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQgLndpZGdldF9fc29jaWFsIC5zb2NpYWwgdWwgbGkgYSBzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3Rlci5mb290ZXItLWxpZ2h0IC53aWRnZXRfX3NvY2lhbCAuc29jaWFsIHVsIGxpIGE6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQxM2FhNAp9Cgpmb290ZXIuZm9vdGVyLS1saWdodCAud2lkZ2V0X19zb2NpYWwgLnNvY2lhbCB1bCBsaSBhOmhvdmVyIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQgLndpZGdldC0tY29udGFjdF9pbmZvIHVsIGxpIC5pbmZvIHAgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNTAwCn0KCmZvb3Rlci5mb290ZXItLWxpZ2h0IC53aWRnZXQtLWxhdGVzdC1uZXdzIHVsIGxpIGEgewogICAgY29sb3I6ICMyMDI0MjgKfQoKZm9vdGVyLmZvb3RlcjIuZm9vdGVyLS1saWdodCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLndpZGdldC50d2l0LS13aWRnZXQgLnVzZXIgLm5hbWUgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyLmZvb3RlcjIuZm9vdGVyLS1saWdodCAud2lkZ2V0LnR3aXQtLXdpZGdldCAudXNlciAubmFtZStzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgcCB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIuZm9vdGVyMiAud2lkZ2V0LnR3aXQtLXdpZGdldCAudXNlciB7CiAgICBtYXJnaW4tdG9wOiAxNHB4Cn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC51c2VyIC5uYW1lIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC51c2VyIC5uYW1lK3NwYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICItIjsKICAgIG1hcmdpbjogMCAzcHgKfQoKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgYSB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgc3Bhbi5mYWIgewogICAgbWFyZ2luLXJpZ2h0OiAxMnB4OwogICAgZm9udC1zaXplOiAxOHB4Cn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC50d2l0X3dyYXBwZXI+c3BhbiB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0b3A6IC40NjY2N3JlbQp9Cgpmb290ZXIuZm9vdGVyMiAuZm9vdGVyX19zbWFsbCBwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KQp9Cgpmb290ZXIuZm9vdGVyMiAuZm9vdGVyX19zbWFsbCBwIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjMgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2U0ZThlZAp9Cgpmb290ZXIuZm9vdGVyMyAuZm9vdGVyX19zbWFsbCBwIHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXJfX2JpZyB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAKfQoKZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9tZW51X2l0ZW1zIHVsIGxpIHsKICAgIHBhZGRpbmc6IC45NHJlbQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX21lbnVfaXRlbXMgdWwgbGkgYSB7CiAgICBsaW5lLWhlaWdodDogMi4xNHJlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX21lbnVfaXRlbXMgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rcyBsaStsaSB7CiAgICBtYXJnaW4tbGVmdDogMTdweAp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rczpiZWZvcmUgewogICAgY29udGVudDogJ3wnOwogICAgbWFyZ2luOiAwIDMwcHg7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikKfQoKZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9tZW51X2l0ZW1zIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpCn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXJfX3NtYWxsIHsKICAgIHBhZGRpbmc6IDEuNjY2NjdyZW0gMDsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCBwLApmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCB1bCB7CiAgICBwYWRkaW5nOiAwOwogICAgbWFyZ2luOiAwCn0KCmZvb3Rlci5mb290ZXI0IC5zb2NpYWwuc3F1YXJlIHVsIGxpIGEgewogICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikKfQoKZm9vdGVyLmZvb3RlcjQgLnNvY2lhbC5zcXVhcmUgdWwgbGkgYTpob3ZlciB7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Cn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3RlcjRfdGV4dCB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfbWVudV9pdGVtcyB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2ZmZgp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfX3NtYWxsIHAgewogICAgY29sb3I6ICM1YTY2NzEKfQoKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1saWdodCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rcyBsaSBhIHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgLnNvY2lhbC5zcXVhcmUgbGkgYSB7CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIGJvcmRlci1jb2xvcjogI2U0ZThlZAp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfX3NtYWxsIC5zb2NpYWwuc3F1YXJlIGxpIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Cn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXI0X3RleHQgewogICAgbWFyZ2luOiAzLjMzcmVtIDAgNC42NnJlbTsKICAgIGxpbmUtaGVpZ2h0OiAycmVtCn0KCmZvb3Rlci5mb290ZXI1LmZvb3Rlci0tYncgLmZvb3Rlcl9fYmlnIHsKICAgIGJhY2tncm91bmQ6ICMxMTExMTUKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLnRleHRfd2lkZ2V0IGEgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLnRleHRfd2lkZ2V0IGE6aG92ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLndpZGdldCB1bC5saW5rcyBhOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI1LmZvb3Rlci0tYncgLmZvb3Rlcl9fYmlnIC53aWRnZXQgLndpZGdldF9fdGl0bGUgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX3NtYWxsIHsKICAgIGJhY2tncm91bmQ6ICMwMDAKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQtZ3JhZGllbnQgewogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgjZmJmYmZkKSwgdG8oI2YyZjFmYSkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmJmYmZkLCAjZjJmMWZhKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmYmZiZmQsICNmMmYxZmEpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZiZmJmZCwgI2YyZjFmYSkKfQoKZm9vdGVyLmZvb3RlcjYgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHBhZGRpbmctdG9wOiA0LjMzMzMzcmVtCn0KCmZvb3Rlci5mb290ZXI2OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAiIjsKICAgIHdpZHRoOiAxODAlOwogICAgaGVpZ2h0OiAxNTAlOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGxlZnQ6IC00MCU7CiAgICB0b3A6IC0xMzclOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKZm9vdGVyLmZvb3RlcjYuZm9vdGVyLS1kYXJrIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI2LmZvb3Rlci0tZGFyayAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgewogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9Cgpmb290ZXIuZm9vdGVyNyB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYmFja2dyb3VuZDogdXJsKGltZy9zaGFwZS13YXZlMy5wbmcpIGNlbnRlci8xMDAlIDEwMCUgbm8tcmVwZWF0OwogICAgcGFkZGluZy10b3A6IDQuNjY2NjdyZW0KfQoKZm9vdGVyLmZvb3RlcjcuZm9vdGVyLS1kYXJrIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI3LmZvb3Rlci0tZGFyayAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgewogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9CgoucHJpY2luZyB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwYWRkaW5nOiAzMHB4OwogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgoucHJpY2luZyAucHJpY2luZ19fdGl0bGUgaDQgewogICAgbGluZS1oZWlnaHQ6IDJyZW07CiAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgZm9udC13ZWlnaHQ6IDYwMAp9CgoucHJpY2luZyAucHJpY2luZ19fdGl0bGUgc3BhbiB7CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLnByaWNpbmcgLnByaWNpbmdfX3ByaWNlIHAgewogICAgZm9udC1zaXplOiAzLjMzcmVtOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIGxpbmUtaGVpZ2h0OiA0LjkzMzMzcmVtOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKfQoKLnByaWNpbmcgLnByaWNpbmdfX3ByaWNlIHAgc3VwIHsKICAgIGZvbnQtc2l6ZTogMS42M3JlbQp9CgoucHJpY2luZyAucHJpY2luZ19fcHJpY2UgcCBzbWFsbCB7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0b3A6IC41MzMzM3JlbQp9CgoucHJpY2luZy5wcmljaW5nLS0xIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4OwogICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgcGFkZGluZzogMzZweCAzMHB4IDQwcHg7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5wcmljaW5nLnByaWNpbmctLTEgLnByaWNpbmdfX3RpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLnByaWNpbmcucHJpY2luZy0tMSAucHJpY2luZ19fdGl0bGUgaDQgewogICAgZm9udC1zaXplOiAxLjZyZW0KfQoKLnByaWNpbmcucHJpY2luZy0tMSAucHJpY2luZ19fcHJpY2UgewogICAgbWF4LXdpZHRoOiAyMzFweDsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi5wcmljaW5nLnByaWNpbmctLTEgLnByaWNpbmdfX3ByaWNlIHAgewogICAgbWFyZ2luOiAwCn0KCi5wcmljaW5nLnByaWNpbmctLTEgLnByaWNpbmdfX2ZlYXR1cmVzIHsKICAgIHBhZGRpbmc6IDJyZW0gMAp9CgoucHJpY2luZy5wcmljaW5nLS0xIC5wcmljaW5nX19mZWF0dXJlcyB1bCB7CiAgICBtYXJnaW46IDAKfQoKLnByaWNpbmcucHJpY2luZy0tMSAucHJpY2luZ19fZmVhdHVyZXMgdWwgbGkgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgoucHJpY2luZy5wcmljaW5nLS0xIC5wcmljaW5nX19mZWF0dXJlcyB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnByaWNpbmcucHJpY2luZy0tMiB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgcGFkZGluZzogMAp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX19mZWF0dXJlc19saXN0IHsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBwYWRkaW5nOiA1Ljg2cmVtIDMuMzNyZW0gMy4zM3JlbQp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX19mZWF0dXJlc19saXN0IFAgewogICAgbWFyZ2luOiAwCn0KCi5wcmljaW5nLnByaWNpbmctLTIgLnByaWNpbmdfX2ZlYXR1cmVzX2xpc3QgdWwubGlzdCB7CiAgICBtYXJnaW4tdG9wOiA2M3B4Cn0KCi5wcmljaW5nLnByaWNpbmctLTIgLnByaWNpbmdfX2ZlYXR1cmVzX2xpc3QgdWwubGlzdCBsaSB7CiAgICBsaW5lLWhlaWdodDogMy4ycmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLnByaWNpbmcucHJpY2luZy0tMiAucHJpY2luZ19fZmVhdHVyZXNfbGlzdCB1bC5saXN0IGxpOmZpcnN0LWNoaWxkIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5wcmljaW5nLnByaWNpbmctLTIgLnByaWNpbmdfX3dyYXBwZXIgewogICAgLXdlYmtpdC1ib3gtZmxleDogMjsKICAgIC13ZWJraXQtZmxleDogMjsKICAgIC1tcy1mbGV4OiAyOwogICAgZmxleDogMjsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX29wdGlvbiB7CiAgICBwYWRkaW5nOiAzLjJyZW0gMnJlbSAzLjMzcmVtOwogICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwOwogICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7CiAgICBmbGV4LWJhc2lzOiAwOwogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleC1ncm93OiAxOwogICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7CiAgICBmbGV4LWdyb3c6IDE7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX29wdGlvbiAucHJpY2luZ19fdGl0bGUgewogICAgbWFyZ2luLWJvdHRvbTogMjJweAp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX29wdGlvbiB1bC5mYXZhaWwgewogICAgbWFyZ2luLWJvdHRvbTogMi42NnJlbQp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX29wdGlvbiB1bC5mYXZhaWwgbGkgewogICAgbGluZS1oZWlnaHQ6IDMuMnJlbTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5wcmljaW5nLnByaWNpbmctLTIgLnByaWNpbmdfX3dyYXBwZXIgLnByaWNpbmdfb3B0aW9uIHVsLmZhdmFpbCBsaTpmaXJzdC1jaGlsZCB7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZThlZAp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX29wdGlvbiB1bC5mYXZhaWwgbGkgaSB7CiAgICBmb250LXNpemU6IDE4cHgKfQoKLnByaWNpbmcucHJpY2luZy0tMiAucHJpY2luZ19fd3JhcHBlciAucHJpY2luZ19vcHRpb24gdWwuZmF2YWlsIGxpIGkubGEtY2xvc2UgewogICAgY29sb3I6ICNlMjM2MzYKfQoKLnByaWNpbmcucHJpY2luZy0tMiAucHJpY2luZ19fd3JhcHBlciAucHJpY2luZ19vcHRpb246aG92ZXIgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKQp9CgoucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX193cmFwcGVyIC5wcmljaW5nX19wcmljZSB7CiAgICBtYXJnaW4tYm90dG9tOiAyLjY2cmVtCn0KCi50aW1lbGluZTEgLmhhcHBlbmluZzpob3ZlciAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXI6YmVmb3JlIHsKICAgIGJvcmRlci1jb2xvcjogIzA2YjU5MAp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmc6aG92ZXIgLmhhcHBlbmluZ19fcGVyaW9kIC53cmFwcGVyOmFmdGVyIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoNiwgMTgxLCAxNDQsIC4xKQp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fcGVyaW9kIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fcGVyaW9kOmJlZm9yZSB7CiAgICBjb250ZW50OiAiIjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGhlaWdodDogMTAwJTsKICAgIHdpZHRoOiAxcHg7CiAgICBiYWNrZ3JvdW5kOiAjZTJlMWVhOwogICAgcmlnaHQ6IC00MXB4OwogICAgdG9wOiAwCn0KCi50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXIgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIHBhZGRpbmc6IDA7CiAgICBtYXJnaW4tdG9wOiAwOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWluLWhlaWdodDogOC4zMzMzM3JlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCn0KCi50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuM3M7CiAgICAtby10cmFuc2l0aW9uOiAuM3M7CiAgICB0cmFuc2l0aW9uOiAuM3M7CiAgICBoZWlnaHQ6IDEwcHg7CiAgICB3aWR0aDogMTBweDsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4OwogICAgYm9yZGVyLXJhZGl1czogMjAwcHg7CiAgICByaWdodDogLTYwLjVweDsKICAgIHotaW5kZXg6IDE7CiAgICBib3JkZXI6IDJweCBzb2xpZCAjYWZiMGMzOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLnRpbWVsaW5lMSAuaGFwcGVuaW5nIC5oYXBwZW5pbmdfX3BlcmlvZCAud3JhcHBlcjphZnRlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAyMHB4OwogICAgaGVpZ2h0OiAyMHB4OwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMDBweDsKICAgIGJvcmRlci1yYWRpdXM6IDIwMHB4OwogICAgcmlnaHQ6IC02NS41cHg7CiAgICB6LWluZGV4OiAxOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zczsKICAgIC1vLXRyYW5zaXRpb246IC4zczsKICAgIHRyYW5zaXRpb246IC4zcwp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fcGVyaW9kIC53cmFwcGVyIC5kYXRlIHsKICAgIG1hcmdpbjogMTBweCAwIDAgMDsKICAgIGxpbmUtaGVpZ2h0OiBub3JtYWwKfQoKLnRpbWVsaW5lMSAuaGFwcGVuaW5nIC5oYXBwZW5pbmdfX3BlcmlvZCAud3JhcHBlciAueWVhciB7CiAgICBmb250LXNpemU6IDIuNDJyZW07CiAgICBmb250LXdlaWdodDogNjAwOwogICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKICAgIG1hcmdpbjogMAp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fZGVzYyB7CiAgICBwYWRkaW5nOiAwIDAgMy4zMzMzM3JlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fZGVzYyAuaGFwcGVuaW5nX3RpdGxlIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDMuMnJlbTsKICAgIG1hcmdpbi1ib3R0b206IC42NnJlbTsKICAgIG1hcmdpbi10b3A6IC0xMHB4Cn0KCi50aW1lbGluZTEgLmhhcHBlbmluZyBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnRpbWVsaW5lMSAuaGFwcGVuaW5nOmxhc3QtY2hpbGQgLmhhcHBlbmluZ19fZGVzYyB7CiAgICBwYWRkaW5nLWJvdHRvbTogMAp9CgoudGltZWxpbmUyIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoudGltZWxpbmUyOmJlZm9yZSB7CiAgICBjb250ZW50OiAnJzsKICAgIGhlaWdodDogMTAwJTsKICAgIHdpZHRoOiAxcHg7CiAgICBiYWNrZ3JvdW5kOiAjZTRlOGVkOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMAp9CgoudGltZWxpbmUyIC5oYXBwZW5pbmcyIHsKICAgIHBhZGRpbmctYm90dG9tOiAyLjY2NjY3cmVtOwogICAgcGFkZGluZy1sZWZ0OiAzLjJyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnRpbWVsaW5lMiAuaGFwcGVuaW5nMjpsYXN0LWNoaWxkIHsKICAgIHBhZGRpbmctYm90dG9tOiAwCn0KCi50aW1lbGluZTIgLmhhcHBlbmluZzI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICcnOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEycHg7CiAgICB0b3A6IDQzcHg7CiAgICBoZWlnaHQ6IDEycHg7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4OwogICAgYm9yZGVyLXJhZGl1czogMjAwcHg7CiAgICBib3JkZXI6IDJweCBzb2xpZCAjYWZiMGMzOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGxlZnQ6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkKfQoKLnRpbWVsaW5lMiAuaGFwcGVuaW5nMjpob3ZlcjpiZWZvcmUgewogICAgYm9yZGVyLWNvbG9yOiAjMDZiNTkwCn0KCi50aW1lbGluZTIgLmhhcHBlbmluZzIgLmhhcHBlbmluZzJfX3BlcmlvZCB7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBtYXJnaW46IDA7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgbGluZS1oZWlnaHQ6IG5vcm1hbAp9CgoudGltZWxpbmUyIC5oYXBwZW5pbmcyIC5oYXBwZW5pbmcyX190aXRsZSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogMy4ycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMAp9CgoudGltZWxpbmUyIC5oYXBwZW5pbmcyIHAgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouYXJhYmljIHsKICAgIGZvbnQtc2l6ZTogMS40NjY2N3JlbQp9CgouY291bnRlci5jb3VudGVyLS0xLAouY291bnRlci5jb3VudGVyLS0yIHsKICAgIHBhZGRpbmc6IDYuMzMzMzNyZW0gMAp9CgouY291bnRlci5jb3VudGVyLS0zIHsKICAgIHBhZGRpbmc6IDcuMzMzMzNyZW0gMAp9CgouY291bnRlci5jb3VudGVyLS0zIC5jb3VudGVyX3NpbmdsZSAudGl0bGUgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpCn0KCi5jb3VudGVyLmNvdW50ZXItLTQgLmNvdW50ZXJfc2luZ2xlIC50aXRsZSB7CiAgICBjb2xvcjogIzVhNjY3MQp9CgouY291bnRlci5jb3VudGVyLS01IHsKICAgIHBhZGRpbmc6IDhyZW0gMCA2cmVtCn0KCi5jb3VudGVyLmNvdW50ZXItLTUgLmNvdW50ZXJfc2luZ2xlIHsKICAgIHBhZGRpbmc6IDNyZW0gMDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmNvdW50ZXIuY291bnRlci0tNSAuY291bnRlcl9zaW5nbGUgLnZhbHVlIHsKICAgIG1hcmdpbi1ib3R0b206IC4zM3JlbQp9CgouY291bnRlci5jb3VudGVyLS01IC5jb3VudGVyX3NpbmdsZSAudGl0bGUgewogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouY291bnRlci5jb3VudGVyLS02IHsKICAgIHBhZGRpbmc6IDcuNjY2NjdyZW0gMAp9CgouY291bnRlci5jb3VudGVyLS02IC5pY29uIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKLmNvdW50ZXIuY291bnRlci0tNiAudGl0bGUgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpCn0KCi5jb3VudGVyLmNvdW50ZXItLTcgewogICAgcGFkZGluZzogNi42NjY2N3JlbSAwIDQuNjY2NjdyZW0KfQoKLmNvdW50ZXIuY291bnRlci0tNyAuY291bnRlcl9sZWZ0X2NvbnRlbnQgaDQgewogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXNpemU6IDIuNHJlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmNvdW50ZXIuY291bnRlci0tNyAuY291bnRlcl9sZWZ0X2NvbnRlbnQgcCB7CiAgICBjb2xvcjogI2ZmZgp9CgouY291bnRlci5jb3VudGVyLS03IC5jb3VudGVyX3NpbmdsZSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgcGFkZGluZzogMS45MzMzM3JlbSAwOwogICAgbWFyZ2luLWJvdHRvbTogMzBweDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4OwogICAgYm9yZGVyLXJhZGl1czogNnB4Cn0KCi5jb3VudGVyLmNvdW50ZXItLTcgLmNvdW50ZXJfc2luZ2xlIC50aXRsZSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmNvdW50ZXJfc2luZ2xlIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgouY291bnRlcl9zaW5nbGUgcCB7CiAgICBtYXJnaW46IDAKfQoKLmNvdW50ZXJfc2luZ2xlIC5pY29uIHsKICAgIHBhZGRpbmctYm90dG9tOiAyLjMzcmVtCn0KCi5jb3VudGVyX3NpbmdsZSAuaWNvbiBzcGFuIHsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAzLjQ3cmVtCn0KCi5jb3VudGVyX3NpbmdsZSAudmFsdWUgewogICAgZm9udC1zaXplOiAzLjJyZW07CiAgICBsaW5lLWhlaWdodDogMy42NnJlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmNvdW50ZXJfc2luZ2xlIC50aXRsZSB7CiAgICBjb2xvcjogI2ZmZgp9Cgouc2hhZG93LWxnLTIgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpICFpbXBvcnRhbnQ7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpICFpbXBvcnRhbnQKfQoKLnNoYWRvd19sZy0tYmd3aGl0ZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpCn0KCi5zaGFkb3dfbGcyLS1iZ3doaXRlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKQp9CgouZG90LWxpZ2h0LAoub3dsLWRvdHMgewogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgbWFyZ2luLXRvcDogMnJlbQp9CgouZG90LWxpZ2h0IC5vd2wtZG90LAoub3dsLWRvdHMgLm93bC1kb3QgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbWFyZ2luLXJpZ2h0OiAuNjY2NjdyZW0KfQoKLmRvdC1saWdodCAub3dsLWRvdDpsYXN0LWNoaWxkLAoub3dsLWRvdHMgLm93bC1kb3Q6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmRvdC1saWdodCAub3dsLWRvdDpmb2N1cywKLm93bC1kb3RzIC5vd2wtZG90OmZvY3VzIHsKICAgIG91dGxpbmU6IDAKfQoKLmRvdC1saWdodCAub3dsLWRvdCBzcGFuLAoub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7CiAgICB3aWR0aDogLjhyZW07CiAgICBoZWlnaHQ6IC44cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IDIwcmVtOwogICAgYmFja2dyb3VuZDogcmdiYSg2NSwgNTgsIDE2NCwgLjMpOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrCn0KCi5kb3Qtc2Vjb25kYXJ5LmRvdC1saWdodCAub3dsLWRvdCBzcGFuLAoub3dsLWRvdHMuZG90LXNlY29uZGFyeSAub3dsLWRvdCBzcGFuIHsKICAgIGJvcmRlcjogMCBub25lOwogICAgYmFja2dyb3VuZDogcmdiYSg2LCAxODEsIDE0NCwgLjIpCn0KCi5kb3QtbGlnaHQgLm93bC1kb3Qgc3BhbiB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmCn0KCi5kb3QtbGlnaHQgLm93bC1kb3QuYWN0aXZlIHNwYW4gewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgoubmF2LWNpcmNsZSBidXR0b24gewogICAgd2lkdGg6IDMuMDY2NjdyZW07CiAgICBoZWlnaHQ6IDMuMDY2NjdyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgY29sb3I6ICNmZmY7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5uYXYtY2lyY2xlIGJ1dHRvbjpmb2N1cyB7CiAgICBvdXRsaW5lOiAwCn0KCi5uYXYtY2lyY2xlIC5vd2wtcHJldiB7CiAgICBtYXJnaW4tbGVmdDogLTRyZW07CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLm5hdi1jaXJjbGUgLm93bC1uZXh0IHsKICAgIG1hcmdpbi1yaWdodDogLTRyZW07CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5uYXYtY2lyY2xlLm5hdi1jaXJjbGUtLWxpZ2h0IGJ1dHRvbiB7CiAgICB3aWR0aDogMi42NjY2N3JlbTsKICAgIGhlaWdodDogMi42NjY2N3JlbTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSkKfQoKLm5hdi1jaXJjbGUubmF2LWNpcmNsZS0tbGlnaHQgYnV0dG9uOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5uYXYtY2lyY2xlLm5hdi1jaXJjbGUtLWxpZ2h0ZW4gYnV0dG9uIHsKICAgIHdpZHRoOiAyLjY2NjY3cmVtOwogICAgaGVpZ2h0OiAyLjY2NjY3cmVtOwogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7CiAgICBjb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBmb250LXNpemU6IC44NjY2N3JlbQp9CgoubmF2LWNpcmNsZS5uYXYtY2lyY2xlLS1saWdodGVuIGJ1dHRvbjpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoubmF2LXNxdWFyZSBidXR0b24gewogICAgd2lkdGg6IDIuNjY2NjdyZW07CiAgICBoZWlnaHQ6IDIuNjY2NjdyZW07CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjQpOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGN1cnNvcjogcG9pbnRlcgp9CgoubmF2LXNxdWFyZSBidXR0b246Zm9jdXMgewogICAgb3V0bGluZTogMAp9CgoubmF2LXNxdWFyZSAub3dsLXByZXYgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5uYXYtc3F1YXJlIC5vd2wtbmV4dCB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi5uYXYtc3F1YXJlLm5hdi1zcXVhcmUtZGFyayBidXR0b24gewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7CiAgICBib3JkZXItcmFkaXVzOiAzcHgKfQoKLm5hdi1zcXVhcmUubmF2LXNxdWFyZS1kYXJrIC5vd2wtcHJldiB7CiAgICBtYXJnaW4tbGVmdDogLTVweAp9CgoubmF2LXNxdWFyZS5uYXYtc3F1YXJlLWRhcmsgLm93bC1uZXh0IHsKICAgIG1hcmdpbi1yaWdodDogLTVweAp9CgouY2Fyb3VzZWwtb25lIC5jYXJvdXNlbC1vbmUtc2luZ2xlIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgouY2Fyb3VzZWwtb25lIC5jYXJvdXNlbC1vbmUtc2luZ2xlIGZpZ3VyZSB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5jYXJvdXNlbC1vbmUgLmNhcm91c2VsLW9uZS1zaW5nbGUgZmlndXJlIGltZyB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDsKICAgIGJvcmRlci1yYWRpdXM6IDVweAp9CgouY2Fyb3VzZWwtb25lIC5jYXJvdXNlbC1vbmUtc2luZ2xlIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKLmNhcm91c2VsLW9uZSAuY2Fyb3VzZWwtb25lLXNpbmdsZSBoNiBhIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5jYXJvdXNlbC1vbmUgLmNhcm91c2VsLW9uZS1zaW5nbGUgaDYgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouY2Fyb3VzZWwtb25lIC5jYXJvdXNlbC1vbmUtc2luZ2xlIHAgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY2Fyb3VzZWwtdGhyZWUgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jYXJvdXNlbC10aHJlZSAuY2Fyb3VzZWwtc2luZ2xlIHsKICAgIHBhZGRpbmc6IDFyZW0KfQoKLmNhcm91c2VsLWZvdXIgLmNhcm91c2VsLXNpbmdsZSB7CiAgICBwYWRkaW5nOiAxcmVtCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwgLmRvdC1jaXJjbGUsCi5wb3J0Zm9saW8tY2Fyb3VzZWwgLmRvdC1saWdodCB7CiAgICBtYXJnaW4tdG9wOiAycmVtCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZSB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBtYXJnaW46IDAKfQoKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgYmFja2dyb3VuZDogcmdiYSgyOCwgMjgsIDM4LCAuODUpOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gaDUgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgIGNvbG9yOiAjZmZmCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZSBmaWdjYXB0aW9uIGg1LAoucG9ydGZvbGlvLWNhcm91c2VsLXNpbmdsZSBmaWd1cmUgZmlnY2FwdGlvbiBzcGFuIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpOwogICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4zKTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZSBmaWdjYXB0aW9uIC5saW5rIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHJpZ2h0OiAtMy4zMzMzM3JlbTsKICAgIHRvcDogLTMuMzMzMzNyZW07CiAgICB3aWR0aDogMy4zMzMzM3JlbTsKICAgIGhlaWdodDogMy4zMzMzM3JlbTsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAxLjZyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDAgM3B4OwogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgM3B4OwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlOmhvdmVyIGZpZ2NhcHRpb24gewogICAgb3BhY2l0eTogMTsKICAgIHZpc2liaWxpdHk6IHZpc2libGUKfQoKLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgZmlndXJlOmhvdmVyIGZpZ2NhcHRpb24gaDUsCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZTpob3ZlciBmaWdjYXB0aW9uIHNwYW4gewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpCn0KCi5wb3J0Zm9saW8tY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZTpob3ZlciBmaWdjYXB0aW9uIC5saW5rIHsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwCn0KCi5pbWFnZS1jYXJvdXNlbC1vbmUgZmlndXJlIHsKICAgIG1hcmdpbjogMAp9CgouaW1hZ2UtY2Fyb3VzZWwtb25lIC5uYXYtY2lyY2xlIC5vd2wtcHJldiB7CiAgICBtYXJnaW4tbGVmdDogMnJlbQp9CgouaW1hZ2UtY2Fyb3VzZWwtb25lIC5uYXYtY2lyY2xlIC5vd2wtbmV4dCB7CiAgICBtYXJnaW4tcmlnaHQ6IDJyZW0KfQoKLmltYWdlLWNhcm91c2VsLXR3byAuY2Fyb3VzZWwtc2luZ2xlIGZpZ3VyZSBpbWcgewogICAgd2lkdGg6IDEwMCUKfQoKLmltYWdlLWNhcm91c2VsLXR3byAuZG90LWxpZ2h0LAouaW1hZ2UtY2Fyb3VzZWwtdHdvIC5vd2wtZG90cyB7CiAgICBtYXJnaW4tdG9wOiAxLjA2NjY3cmVtCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1vbmUgLmNhcm91c2VsLXNpbmdsZSB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLW9uZSAuY2Fyb3VzZWwtc2luZ2xlIGltZyB7CiAgICB3aWR0aDogYXV0bzsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1vbmUgLmNhcm91c2VsLXNpbmdsZSBoNiB7CiAgICBtYXJnaW46IDEuMzMzMzNyZW0gMCAuNjY2NjdyZW0gMDsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1vbmUgLmNhcm91c2VsLXNpbmdsZSAuc3ViLXRleHQgewogICAgY29sb3I6ICMwNmI1OTA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLW9uZSAuY2Fyb3VzZWwtc2luZ2xlIHAgewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBsaW5lLWhlaWdodDogMi4yNjY2N3JlbTsKICAgIG1hcmdpbjogMAp9CgouY2Fyb3VzZWwtYmcgLmJnX2ltYWdlX2hvbGRlcjpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogIiI7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI3LCAyOCwgNTcsIC44KTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtdGhyZWUgLm5hdi1jaXJjbGUgewogICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgb3BhY2l0eTogMDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC10aHJlZTpob3ZlciAubmF2LWNpcmNsZSB7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgb3BhY2l0eTogMQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSB7CiAgICBwYWRkaW5nOiAxcmVtCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC10aHJlZSAuY2Fyb3VzZWwtc2luZ2xlIC5jYXJkIGltZyB7CiAgICB3aWR0aDogYXV0bzsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi50Yy1mb3VyLXdyYXBwZXIuYmctZ3JleSB7CiAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0Cn0KCi50Yy1mb3VyLXdyYXBwZXIuYmctZ3JleSAudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3Itc3BlYyBzdHJvbmcgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLnRjLWZvdXItd3JhcHBlci5iZy1ncmV5IC50ZXN0aW1vbmlhbC1jYXJvdXNlbC1mb3VyIC5jYXJvdXNlbC1zaW5nbGUgLmF1dGhvci10ZXh0OmJlZm9yZSB7CiAgICBjb2xvcjogI2VkZWRlZgp9CgoudGMtZm91ci13cmFwcGVyLmJnLWdyZXkgLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXRleHQgcCB7CiAgICBjb2xvcjogIzVhNjY3MQp9CgoudGMtZm91ci13cmFwcGVyLmJnLWdyZXkgLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLm5hdi1zcXVhcmUgYnV0dG9uIHsKICAgIGJhY2tncm91bmQ6ICNlMWUxZTc7CiAgICBjb2xvcjogIzIwMjQyOAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgNi45MzMzM3JlbQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIGltZyB7CiAgICB3aWR0aDogYXV0bzsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1mb3VyIC5jYXJvdXNlbC1zaW5nbGUgLmF1dGhvci1zcGVjIHsKICAgIG1hcmdpbjogMS4zMzMzM3JlbSAwIDAgMAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3Itc3BlYyBzdHJvbmcgewogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAxLjJyZW0KfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXNwZWMgc3BhbiB7CiAgICBmb250LXNpemU6IDEuMnJlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3Itc3BlYyBwIHsKICAgIG1hcmdpbjogMAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3ItdGV4dCB7CiAgICB3aWR0aDogNTByZW07CiAgICBtYXJnaW46IDAgYXV0bzsKICAgIHBhZGRpbmctdG9wOiAzLjMzMzMzcmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1mb3VyIC5jYXJvdXNlbC1zaW5nbGUgLmF1dGhvci10ZXh0OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAiXGYyY2UiOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgZm9udC1zaXplOiAxMHJlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wNSk7CiAgICBsZWZ0OiA1MCU7CiAgICB0b3A6IDA7CiAgICBsaW5lLWhlaWdodDogLjg7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICB6LWluZGV4OiAtMQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3ItdGV4dCBwIHsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpOwogICAgbGluZS1oZWlnaHQ6IDIuMjY2NjdyZW07CiAgICBtYXJnaW46IDAKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLm5hdi1jaXJjbGUgLm93bC1wcmV2IHsKICAgIG1hcmdpbi1sZWZ0OiAwCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1mb3VyIC5uYXYtY2lyY2xlIC5vd2wtbmV4dCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLm5hdi1jaXJjbGUgLm93bC1uZXh0LAoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAubmF2LWNpcmNsZSAub3dsLXByZXYgewogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMDUpOwogICAgZm9udC1zaXplOiAuODY2NjdyZW07CiAgICBjb2xvcjogI2ZmZgp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciAubmF2LWNpcmNsZSAub3dsLW5leHQ6aG92ZXIsCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1mb3VyIC5uYXYtY2lyY2xlIC5vd2wtcHJldjpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZpdmUgLmNhcm91c2VsLXNpbmdsZSB7CiAgICBwYWRkaW5nOiAxcmVtCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1maXZlIC5jYXJvdXNlbC1zaW5nbGUgLmF1dGhvci10ZXh0IHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSk7CiAgICBwYWRkaW5nOiAyLjY2NjY3cmVtIDIuNjY2NjdyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZpdmUgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXRleHQ6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgYm9yZGVyLXJpZ2h0OiAxLjMzMzMzcmVtIHNvbGlkIHRyYW5zcGFyZW50OwogICAgYm9yZGVyLWxlZnQ6IDEuMzMzMzNyZW0gc29saWQgdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItdG9wOiAxLjMzMzMzcmVtIHNvbGlkICNmZmY7CiAgICBib3R0b206IC0xLjMzMzMzcmVtOwogICAgbGVmdDogNC42NjY2N3JlbQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZml2ZSAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3ItdGV4dCBwIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZpdmUgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXNwZWMgewogICAgbWFyZ2luLXRvcDogMi42NjY2N3JlbTsKICAgIG1hcmdpbi1sZWZ0OiAzLjMzMzMzcmVtOwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1maXZlIC5jYXJvdXNlbC1zaW5nbGUgLmF1dGhvci1zcGVjIC5hdXRob3ItaW1nIHsKICAgIG1hcmdpbi1yaWdodDogMS4zMzMzM3JlbQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZml2ZSAuY2Fyb3VzZWwtc2luZ2xlIC5hdXRob3Itc3BlYyAuYXV0aG9yLWRlc2MgaDYgewogICAgbWFyZ2luOiAwIDAgNXB4IDA7CiAgICBjb2xvcjogIzIwMjQyOAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtZml2ZSAubmF2LXNxdWFyZS1kYXJrIHsKICAgIHRvcDogNDAlCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1maXZlIC5uYXYtc3F1YXJlLWRhcmsgLm93bC1wcmV2IHsKICAgIG1hcmdpbi1sZWZ0OiAxcmVtCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1maXZlIC5uYXYtc3F1YXJlLWRhcmsgLm93bC1uZXh0IHsKICAgIG1hcmdpbi1yaWdodDogMXJlbQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtc2l4LXdyYXBwZXIgewogICAgYmFja2dyb3VuZDogdXJsKGltZy9zaGFwZS13YXZlLnBuZyk7CiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICAgIHBhZGRpbmc6IDMuMnJlbSAwIDYuOTMzMzNyZW0gMAp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtc2l4IHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtc2l4OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnXGYyY2UnOwogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lOwogICAgZm9udC1zaXplOiAxMy4zMzMzM3JlbTsKICAgIGNvbG9yOiByZ2JhKDYsIDE4MSwgMTQ0LCAuMSk7CiAgICBsZWZ0OiAxMDBweDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpCn0KCi50ZXN0aW1vbmlhbC1jYXJvdXNlbC1zaXggLmNhcm91c2VsLXNpbmdsZSB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLXNpeCAuY2Fyb3VzZWwtc2luZ2xlIGltZyB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogYXV0bwp9CgoudGVzdGltb25pYWwtY2Fyb3VzZWwtc2l4IC5jYXJvdXNlbC1zaW5nbGUgaDUgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW46IDEuMzMzMzNyZW0gMCAuNjY2NjdyZW0KfQoKLnRlc3RpbW9uaWFsLWNhcm91c2VsLXNpeCAuY2Fyb3VzZWwtc2luZ2xlIHAgewogICAgbWFyZ2luOiAycmVtIDAgMCAwCn0KCi50ZWFtLWNhcm91c2VsLW9uZSAuY2Fyb3VzZWwtc2luZ2xlIHsKICAgIHBhZGRpbmc6IDFyZW0KfQoKLnRlYW0tY2Fyb3VzZWwtb25lIC5jYXJvdXNlbC1zaW5nbGUgaW1nIHsKICAgIHdpZHRoOiBhdXRvOwogICAgbWFyZ2luOiAwIGF1dG8KfQoKLnRlYW0tY2Fyb3VzZWwtdHdvIC5kb3QtbGlnaHQsCi50ZWFtLWNhcm91c2VsLXR3byAub3dsLWRvdHMgewogICAgbWFyZ2luLXRvcDogMS4zMzMzM3JlbQp9CgoudGVhbS1jYXJvdXNlbC10aHJlZSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjY2NjdyZW0KfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgoudGVhbS1jYXJvdXNlbC10aHJlZSAuY2Fyb3VzZWwtc2luZ2xlIC50ZWFtLWltZyB7CiAgICB3aWR0aDogNDUlCn0KCi50ZWFtLWNhcm91c2VsLXRocmVlIC5jYXJvdXNlbC1zaW5nbGUgLnRlYW0taW1nIGltZyB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbSAwIDAgLjI2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtIDAgMCAuMjY2NjdyZW0KfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSAudGVhbS1kZXNjIHsKICAgIHdpZHRoOiA1NSU7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIHBhZGRpbmc6IDAgMy4zMzMzM3JlbQp9CgoudGVhbS1jYXJvdXNlbC10aHJlZSAuY2Fyb3VzZWwtc2luZ2xlIC50ZWFtLWRlc2MgaDUgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW46IDAgMCAuNTMzMzNyZW0KfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSAudGVhbS1kZXNjIHNwYW4gewogICAgY29sb3I6ICM5MTkyYTMKfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSAudGVhbS1kZXNjIHAgewogICAgbWFyZ2luOiAxcmVtIDAgMnJlbSAwCn0KCi50ZWFtLWNhcm91c2VsLXRocmVlIC5uYXYtY2lyY2xlIC5vd2wtcHJldiB7CiAgICBtYXJnaW4tbGVmdDogLTEuMzMzMzNyZW07CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLm5hdi1jaXJjbGUgLm93bC1uZXh0IHsKICAgIG1hcmdpbi1yaWdodDogLTEuMzMzMzNyZW07CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnRlYW0tY2Fyb3VzZWwtdGhyZWU6aG92ZXIgLm5hdi1jaXJjbGUgLm93bC1uZXh0LAoudGVhbS1jYXJvdXNlbC10aHJlZTpob3ZlciAubmF2LWNpcmNsZSAub3dsLXByZXYgewogICAgdmlzaWJpbGl0eTogdmlzaWJsZTsKICAgIG9wYWNpdHk6IDE7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoubG9nby1jYXJvdXNlbC1vbmUgLmNhcm91c2VsLXNpbmdsZSBpbWcsCi5sb2dvLWNhcm91c2VsLXR3byAuY2Fyb3VzZWwtc2luZ2xlIGltZyB7CiAgICB3aWR0aDogYXV0bzsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi5sb2dvLWNhcm91c2VsLW9uZSAub3dsLXN0YWdlLAoubG9nby1jYXJvdXNlbC10d28gLm93bC1zdGFnZSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgoubG9nby1jYXJvdXNlbCB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgN3JlbQp9CgoubG9nby1jYXJvdXNlbCAuY29udGVudC1sZWZ0IGgxIHsKICAgIGxpbmUtaGVpZ2h0OiAzLjczMzMzcmVtCn0KCi5sb2dvLWNhcm91c2VsLXR3byAubG9nby1ib3ggewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICBtaW4taGVpZ2h0OiA4cmVtOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkKfQoKQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLAooLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSB7CiAgICAubG9nby1jYXJvdXNlbC10d28gLmxvZ28tYm94IHsKICAgICAgICBoZWlnaHQ6IDhyZW0KICAgIH0KfQoKLmxvZ28tY2Fyb3VzZWwtdHdvIC5sb2dvLWJveDpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmxvZ28tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSB7CiAgICBtaW4taGVpZ2h0OiA4cmVtCn0KCi5sb2dvLWNhcm91c2VsLXRocmVlIC5jYXJvdXNlbC1zaW5nbGUgLmxvZ28tYm94IHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBoZWlnaHQ6IDhyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgoubG9nby1jYXJvdXNlbC10aHJlZSAuY2Fyb3VzZWwtc2luZ2xlIC5sb2dvLWJveCBpbWcgewogICAgd2lkdGg6IGF1dG8KfQoKLmxvZ28tY2Fyb3VzZWwtdGhyZWUgLm5hdi1zcXVhcmUtZGFyayB7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmxvZ28tY2Fyb3VzZWwtdGhyZWUgLm5hdi1zcXVhcmUtZGFyayAub3dsLXByZXYgewogICAgbWFyZ2luLWxlZnQ6IC0xLjMzMzMzcmVtCn0KCi5sb2dvLWNhcm91c2VsLXRocmVlIC5uYXYtc3F1YXJlLWRhcmsgLm93bC1uZXh0IHsKICAgIG1hcmdpbi1yaWdodDogLTEuMzMzMzNyZW0KfQoKLmxvZ28tY2Fyb3VzZWwtdGhyZWU6aG92ZXIgLm5hdi1zcXVhcmUtZGFyayB7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgb3BhY2l0eTogMQp9CgouYmxvZy1jYXJvdXNlbC1vbmUgLnBvc3Qtc2luZ2xlIC5wb3N0LW1ldGEgdWwgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmJsb2ctY2Fyb3VzZWwtb25lIC5wb3N0LXNpbmdsZSAucG9zdC1tZXRhIHVsIGxpIHsKICAgIG1hcmdpbi1yaWdodDogMXJlbQp9CgouYmxvZy1jYXJvdXNlbC1vbmUgLnBvc3Qtc2luZ2xlIC5wb3N0LW1ldGEgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmJsb2ctY2Fyb3VzZWwtb25lIC5wb3N0LXNpbmdsZSAucG9zdC1tZXRhIHVsIGxpIHNwYW4gewogICAgcGFkZGluZzogMCAxcmVtOwogICAgbGluZS1oZWlnaHQ6IDJyZW07CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBjb2xvcjogI2ZmZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OwogICAgYm9yZGVyLXJhZGl1czogMnB4Cn0KCi5ibG9nLWNhcm91c2VsLW9uZSAucG9zdC1zaW5nbGUgaDYgewogICAgbWFyZ2luOiAxLjMzMzMzcmVtIDAgMS4wNjY2N3JlbSAwCn0KCi5ibG9nLWNhcm91c2VsLW9uZSAucG9zdC1zaW5nbGUgaDYgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9CgouYmxvZy1jYXJvdXNlbC1vbmUgLnBvc3Qtc2luZ2xlIC5wb3N0LWJvdHRvbSB7CiAgICBtYXJnaW46IDEuNjY2NjdyZW0gMCAwIDA7CiAgICBwYWRkaW5nLXRvcDogMnJlbTsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmJsb2ctY2Fyb3VzZWwtb25lIC5wb3N0LXNpbmdsZSAucG9zdC1ib3R0b20gaW1nIHsKICAgIHdpZHRoOiBhdXRvOwogICAgbWFyZ2luLXJpZ2h0OiAuNjY2NjdyZW0KfQoKLmxvZ28tZ3JpZC1vbmUgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLmxvZ28tZ3JpZC1vbmUgdWwgewogICAgbWFyZ2luLXJpZ2h0OiAtMXB4OwogICAgbWFyZ2luLWJvdHRvbTogLTFweAp9CgoubG9nby1ncmlkLW9uZSBsaSB7CiAgICB3aWR0aDogMjUlOwogICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RlZTJlNjsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2OwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1pbi1oZWlnaHQ6IDEzLjMzMzMzcmVtCn0KCi5sb2dvLWdyaWQtb25lIGxpIGZpZ3VyZSB7CiAgICBtYXJnaW46IDAKfQoKLmxvZ28tY2Fyb3VzZWwtZGFyayAuc2luZ2xlLXNsaWRlIGltZyB7CiAgICB3aWR0aDogYXV0bwp9CgoubG9nby1ncmlkLXR3byAuZ3JpZC1zaW5nbGUgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1hcmdpbi1ib3R0b206IDJyZW07CiAgICBtaW4taGVpZ2h0OiAxMHJlbQp9CgpAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSksCigtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpIHsKICAgIC5sb2dvLWdyaWQtdHdvIC5ncmlkLXNpbmdsZSB7CiAgICAgICAgaGVpZ2h0OiAxMHJlbQogICAgfQp9CgoubG9nby1ncmlkLXRocmVlIHVsIHsKICAgIG1hcmdpbjogMAp9CgoubG9nby1ncmlkLXRocmVlIGxpIHsKICAgIHdpZHRoOiAyNSU7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2OwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1pbi1oZWlnaHQ6IDEzLjMzMzMzcmVtOwogICAgbWFyZ2luLXJpZ2h0OiAtMXB4OwogICAgbWFyZ2luLWJvdHRvbTogLTFweAp9CgoubG9nby1ncmlkLXRocmVlIGxpIGZpZ3VyZSB7CiAgICBtYXJnaW46IDAKfQoKLmxvZ28tZGV0YWlscy13cmFwcGVyIHsKICAgIHBhZGRpbmc6IDZyZW0gMCAwCn0KCi5sb2dvLWRldGFpbHMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIHBhZGRpbmc6IDdyZW0gM3JlbSAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogNy4zMzMzM3JlbTsKICAgIG1hcmdpbi10b3A6IC42NjY2N3JlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtCn0KCi5sb2dvLWRldGFpbHMgLmxvZ28gewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIGhlaWdodDogMTAuNjY2NjdyZW07CiAgICB3aWR0aDogMTguNjY2NjdyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDUwJTsKICAgIHRvcDogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbQp9CgoubG9nby1kZXRhaWxzIGg1IHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLWJvdHRvbTogLjMzMzMzcmVtCn0KCi5sb2dvLWRldGFpbHMgLnN1Yi10aXRsZSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIG1hcmdpbi1ib3R0b206IC44cmVtCn0KCi5sb2dvLWRldGFpbHMgcCB7CiAgICBtYXJnaW46IDAKfQoKLmxvZ28tY2Fyb3VzZWwtZm91ciAub3dsLXN0YWdlIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgLW1zLWZsZXgtcGFjazoganVzdGlmeTsKICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbgp9CgoubG9nby1jYXJvdXNlbC1mb3VyIC5jYXJvdXNlbC1zaW5nbGUgewogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5sb2dvLWNhcm91c2VsLWZvdXIgLmNhcm91c2VsLXNpbmdsZSBpbWcgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6IGF1dG8KfQoKLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7CiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQKfQoKLmRyb3Bkb3duIC5kcm9wZG93bi1jYXJldCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0KfQoKLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHsKICAgIHRvcDogLjY2NjY3cmVtICFpbXBvcnRhbnQ7CiAgICBtaW4td2lkdGg6IDE2LjY2NjY3cmVtOwogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3JkZXI6IDAgbm9uZQp9CgouZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06aG92ZXIgewogICAgYmFja2dyb3VuZDogMCAwOwogICAgY29sb3I6ICM0MTNhYTQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7CiAgICBib3JkZXItcmFkaXVzOiAwCn0KCi5kcm9wZG93biAuZHJvcGRvd24tLWJ0biAuZHJvcGRvd24taXRlbTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0OwogICAgY29sb3I6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLXJhZGl1czogLjJyZW0KfQoKLmRyb3Bkb3duIC5kcm9wZG93bi0tdGV4dCAuZHJvcGRvd24tdGV4dC1pdGVtIHsKICAgIHBhZGRpbmc6IDMwcHg7CiAgICBtYXJnaW46IDAKfQoKLmdhbGxlcnktaW1hZ2UtdmlldyAucG9ydGZvbGlvLWNhcm91c2VsLXNpbmdsZSB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKLmdhbGxlcnktaW1hZ2UtdmlldyAucG9ydGZvbGlvLWNhcm91c2VsLXNpbmdsZSBpbWcgewogICAgd2lkdGg6IGF1dG8KfQoKLmdhbGxlcnktaW1hZ2UtdmlldyAuY2Fyb3VzZWwtdGh1bWJzIHVsIHsKICAgIG1hcmdpbjogMAp9CgouZ2FsbGVyeS1pbWFnZS12aWV3IC5jYXJvdXNlbC10aHVtYnMgdWwgbGkgewogICAgbWFyZ2luOiAwIC4zMzMzM3JlbQp9CgouZ2FsbGVyeS1pbWFnZS12aWV3IC5pbWFnZS12aWV3LWNhcm91c2VsIC5jYXJvdXNlbC1zaW5nbGUgZmlndXJlIGltZyB7CiAgICB3aWR0aDogMTAwJQp9CgouZ2FsbGVyeS1mdWxsd2lkdGggLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgewogICAgd2lkdGg6IDI1JQp9CgoucHJpY2UtZmlsdGVyIHsKICAgIG1hcmdpbi10b3A6IDEwcHgKfQoKLnJhbmdlLXNsaWRlciAuc2xpZGVyLXJhbmdlIHsKICAgIGJhY2tncm91bmQ6ICNlNGU4ZWQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgaGVpZ2h0OiAuNHJlbTsKICAgIG1heC13aWR0aDogMTMuMzMzMzNyZW0KfQoKLnJhbmdlLXNsaWRlciAuc2xpZGVyLXJhbmdlIC51aS1zbGlkZXItcmFuZ2UgewogICAgYmFja2dyb3VuZDogIzQxM2FhNAp9CgoucmFuZ2Utc2xpZGVyIC5zbGlkZXItcmFuZ2UgLnVpLXNsaWRlci1oYW5kbGUgewogICAgd2lkdGg6IDEuMnJlbTsKICAgIGhlaWdodDogMS4ycmVtOwogICAgYm9yZGVyOiAuMjY2NjdyZW0gc29saWQgIzQxM2FhNDsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIHRvcDogLS40cmVtOwogICAgY3Vyc29yOiBwb2ludGVyCn0KCi5yYW5nZS1zbGlkZXIgLnNsaWRlci1yYW5nZSAudWktc2xpZGVyLWhhbmRsZTpmb2N1cyB7CiAgICBvdXRsaW5lOiAwCn0KCi5yYW5nZS1zbGlkZXIgcCB7CiAgICBtYXJnaW46IDEuNjY2NjdyZW0gMCAwIDAKfQoKLnJhbmdlLXNsaWRlciAuYW1vdW50cyB7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIG1hcmdpbi1sZWZ0OiAxLjMzMzMzcmVtOwogICAgY29sb3I6ICM1YTY2NzE7CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW07CiAgICB3aWR0aDogNnJlbTsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgoucmFuZ2Utc2xpZGVyLWRhcmsgLnNsaWRlci1yYW5nZSB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCA1OCwgMTY0LCAuMikKfQoKLnZpZGVvLXNpbmdsZSBmaWd1cmUgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWFyZ2luOiAwCn0KCi52aWRlby1zaW5nbGUgZmlndXJlIC52X2ltZyB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnZpZGVvLXNpbmdsZSBmaWd1cmUgLnZfaW1nOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMTUsIDE1LCAzMCwgLjIpCn0KCi52aWRlby1zaW5nbGUgZmlndXJlIGZpZ2NhcHRpb24gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlCn0KCi52aWRlby1vdmVybGF5IGZpZ2NhcHRpb24gewogICAgYmFja2dyb3VuZDogcmdiYSgzMiwgMzYsIDQwLCAuMykKfQoKLnZpZGVvLWJhbm5lciB7CiAgICBwYWRkaW5nOiA1cmVtIDJyZW07CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi52aWRlby1iYW5uZXIgZGl2IGEgewogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgZm9udC1zaXplOiAxLjMzMzMzcmVtOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLnZpZGVvLWJhbm5lciBkaXYgYSAucGxheS1idG4gewogICAgbWFyZ2luLXJpZ2h0OiAycmVtCn0KCi52aWRlby1iZyB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAKfQoKLnZpZGVvLWJnLm92ZXJsYXk6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjcsIDI4LCA1NywgLjgpCn0KCi52aWRlby1iZyAuY29udGVudF9hYm92ZSBhIHsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGZvbnQtc2l6ZTogMS42cmVtOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmN0YS0tb25lIC5zdWItaGVhZGluZyB7CiAgICBmb250LXNpemU6IDEuNnJlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmN0YS0tb25lIGgyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luOiAxLjMzMzMzcmVtIDAgMy4zMzMzM3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAzLjJyZW07CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5zcGxpdHRlZC1iYW5uZXIgewogICAgcGFkZGluZzogMTByZW0gMDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG92ZXJmbG93OiBoaWRkZW4KfQoKLnNwbGl0dGVkLWJhbm5lciAuc3BsaXQtYmcgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDUzJTsKICAgIGhlaWdodDogNDYuNjY2NjdyZW07CiAgICBsZWZ0OiAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICBiYWNrZ3JvdW5kOiAjMDZiNTkwOwogICAgei1pbmRleDogMTsKICAgIGhlaWdodDogMTAwJQp9Cgouc3BsaXR0ZWQtYmFubmVyIC5zcGxpdC1iZzpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICBoZWlnaHQ6IDE1MCU7CiAgICB3aWR0aDogMjYuNjY2NjdyZW07CiAgICByaWdodDogLTI4LjY2NjY3cmVtOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC02LjY2NjY3cmVtIDAgMCAjMDZiNTkwOwogICAgYm94LXNoYWRvdzogLTYuNjY2NjdyZW0gMCAwICMwNmI1OTA7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJQp9Cgouc3BsaXR0ZWQtYmFubmVyIGgxIHsKICAgIGNvbG9yOiAjZmZmCn0KCi5zcGxpdHRlZC1iYW5uZXIgLmJ0bnMgYSB7CiAgICBtYXJnaW4tcmlnaHQ6IDJyZW0KfQoKLnNwbGl0dGVkLWJhbm5lciAuYnRucyBhOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5zdWJzY3JpYmUtd3JhcHBlciB7CiAgICBwYWRkaW5nOiA2LjMzMzMzcmVtIDAKfQoKLnN1YnNjcmliZS13cmFwcGVyIGgyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luOiAwIDAgMXJlbSAwCn0KCi5zdWJzY3JpYmUtd3JhcHBlciBwIHsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTsKICAgIG1hcmdpbi1ib3R0b206IDIuMzMzMzNyZW0KfQoKLnN1YnNjcmliZS13cmFwcGVyIC5zdWJzY3JpYmUtZm9ybSBidXR0b24gewogICAgbWFyZ2luLWxlZnQ6IDJyZW0KfQoKLnN1YnNjcmliZS0tdHdvIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDMxMGRlZywgIzQxM2FhNCAwLCAjNDEzYWE0IDI1JSwgIzA2YjU5MCAxMDAlKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCgzMTBkZWcsICM0MTNhYTQgMCwgIzQxM2FhNCAyNSUsICMwNmI1OTAgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQwZGVnLCAjNDEzYWE0IDAsICM0MTNhYTQgMjUlLCAjMDZiNTkwIDEwMCUpOwogICAgcGFkZGluZy1ib3R0b206IDEwcmVtOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9Cgouc3Vic2NyaWJlLS10d286YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDUuMDY2NjdyZW07CiAgICBsZWZ0OiAwOwogICAgYm90dG9tOiAwOwogICAgYmFja2dyb3VuZDogdXJsKGltZy9zYjIuaHRtbCk7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcgp9Cgouc3Vic2NyaWJlLXNpeCwKLnN1YnNjcmliZS10aHJlZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBwYWRkaW5nOiA0cmVtIDA7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAxCn0KCi5zdWJzY3JpYmUtc2l4IGg0LAouc3Vic2NyaWJlLXRocmVlIGg0IHsKICAgIG1hcmdpbjogMAp9Cgouc3Vic2NyaWJlLXNpeCAuc3Vic2NyaWJlLWZvcm0tLWlubGluZSBpbnB1dCwKLnN1YnNjcmliZS10aHJlZSAuc3Vic2NyaWJlLWZvcm0tLWlubGluZSBpbnB1dCB7CiAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0Cn0KCi5zdWJzY3JpYmUtc2l4IC5zdWJzY3JpYmUtZm9ybS0taW5saW5lIGJ1dHRvbiwKLnN1YnNjcmliZS10aHJlZSAuc3Vic2NyaWJlLWZvcm0tLWlubGluZSBidXR0b24gewogICAgbWFyZ2luLWxlZnQ6IDJyZW0KfQoKLnN1YnNjcmliZS1mb3VyIHsKICAgIHBhZGRpbmc6IDguNjY2NjdyZW0gMAp9Cgouc3Vic2NyaWJlLWZvdXIgaDMgewogICAgbWFyZ2luOiAwIDAgLjUzMzMzcmVtIDA7CiAgICBjb2xvcjogI2ZmZgp9Cgouc3Vic2NyaWJlLWZvdXIgcCB7CiAgICBtYXJnaW46IDA7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNyk7CiAgICBmb250LXNpemU6IDEuMnJlbQp9Cgouc3Vic2NyaWJlLWZvdXIgZm9ybSAuaW5wdXQtZ3JvdXAtc3Vic2NyaWJlIGJ1dHRvbiB7CiAgICBiYWNrZ3JvdW5kOiAjNDEzYWE0Cn0KCi5zdWJzY3JpYmUtLWZpdmUgaDIgewogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5zdWJzY3JpYmUtLWZpdmUgcCB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbQp9Cgouc3Vic2NyaWJlLS1maXZlIC5zdWJzY3JpYmUtZm9ybS10d28gLmZvcm0tY29udHJvbCB7CiAgICBwYWRkaW5nLXRvcDogLjMzMzMzcmVtOwogICAgcGFkZGluZy1ib3R0b206IC4zMzMzM3JlbTsKICAgIGhlaWdodDogNHJlbQp9Cgouc3Vic2NyaWJlLS1maXZlIC5zdWJzY3JpYmUtZm9ybS10d28gLmJ0biB7CiAgICBsaW5lLWhlaWdodDogMi42NjY2N3JlbTsKICAgIHJpZ2h0OiAuMzMzMzNyZW0KfQoKLnN1YnNjcmliZS1zZXZlbiB7CiAgICBwYWRkaW5nOiA3LjY2NjY3cmVtIDA7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1nL21hcC1iZy5wbmcpOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcgp9Cgouc3Vic2NyaWJlLWZvcm0tdHdvPmRpdiB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnN1YnNjcmliZS1mb3JtLXR3byAuZm9ybS1jb250cm9sIHsKICAgIGhlaWdodDogNC42NjY2N3JlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMTUpOwogICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMTUpOwogICAgYm9yZGVyOiAwIG5vbmU7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBwYWRkaW5nLXJpZ2h0OiAxMi4zMzMzM3JlbTsKICAgIHBhZGRpbmctbGVmdDogMnJlbQp9Cgouc3Vic2NyaWJlLWZvcm0tdHdvIC5idG4gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IDFyZW07CiAgICB0b3A6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLnN1YnNjcmliZS1jb250ZW50cyBoMiB7CiAgICBsaW5lLWhlaWdodDogMy4ycmVtOwogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXNpemU6IDEuNnJlbQp9Cgouc3Vic2NyaWJlLWNvbnRlbnRzIGgyIHNwYW4gewogICAgY29sb3I6ICMwNmI1OTA7CiAgICBmb250LXNpemU6IDIuNHJlbQp9Cgouc3Vic2NyaWJlLWNvbnRlbnRzIGltZyB7CiAgICBtYXJnaW4tdG9wOiA0LjY2NjY3cmVtCn0KCi5zdWJzY3JpYmUtZWlnaHQgewogICAgcGFkZGluZzogNi4zMzMzM3JlbSAwIDcuMzMzMzNyZW0KfQoKLnR3aXR0ZXItZmVlZHMgewogICAgcGFkZGluZzogN3JlbSAwIDcuMnJlbQp9CgoudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtaGVhZGVyIHsKICAgIG1hcmdpbi1ib3R0b206IDIuNjY2NjdyZW0KfQoKLnR3aXR0ZXItZmVlZHMgLmZlZWQtc2luZ2xlIC5mZWVkLWhlYWRlciBzcGFuIGkgewogICAgZm9udC1zaXplOiAycmVtOwogICAgY29sb3I6ICNmZmYKfQoKLnR3aXR0ZXItZmVlZHMgLmZlZWQtc2luZ2xlIC5mZWVkLWhlYWRlciAudXNlciB7CiAgICBjb2xvcjogI2ZmZgp9CgoudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtaGVhZGVyIC50aW1lIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgoudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtaGVhZGVyIHAgewogICAgbWFyZ2luOiAwCn0KCi50d2l0dGVyLWZlZWRzIC5mZWVkLXNpbmdsZSAuZmVlZC1jb250ZW50IHsKICAgIHdpZHRoOiA0OC42NjY2N3JlbTsKICAgIG1hcmdpbjogMCBhdXRvCn0KCi50d2l0dGVyLWZlZWRzIC5mZWVkLXNpbmdsZSAuZmVlZC1jb250ZW50IHAgewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBsaW5lLWhlaWdodDogMi4xMzMzM3JlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLnR3aXR0ZXItZmVlZHMgLmZlZWQtc2luZ2xlIC5mZWVkLWNvbnRlbnQgLnR3aXQtbGluayB7CiAgICBjb2xvcjogI2ZmZgp9CgoudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtY29udGVudCAudHdpdC1saW5rOmhvdmVyIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi50d2l0dGVyLWZlZWRzLS1saWdodCAuZmVlZC1zaW5nbGUgLmZlZWQtaGVhZGVyIC51c2VyIHsKICAgIGNvbG9yOiAjNDEzYWE0Cn0KCi50d2l0dGVyLWZlZWRzLS1saWdodCAuZmVlZC1zaW5nbGUgLmZlZWQtaGVhZGVyIC50aW1lIHsKICAgIGNvbG9yOiByZ2JhKDMyLCAzNiwgNDAsIC41KQp9CgoudHdpdHRlci1mZWVkcy0tbGlnaHQgLmZlZWQtc2luZ2xlIC5mZWVkLWhlYWRlciBzcGFuIGkgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLnR3aXR0ZXItZmVlZHMtLWxpZ2h0IC5mZWVkLXNpbmdsZSAuZmVlZC1jb250ZW50IHAgewogICAgY29sb3I6IGluaGVyaXQKfQoKLnR3aXR0ZXItZmVlZHMtLWxpZ2h0IC5mZWVkLXNpbmdsZSAuZmVlZC1jb250ZW50IC50d2l0LWxpbmsgewogICAgY29sb3I6ICMwNmI1OTAKfQoKLmZvbGxvdy1idG4gLmJ0biB7CiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgouZm9sbG93LWJ0biAuYnRuIGkgewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBtYXJnaW4tcmlnaHQ6IC42NjY2N3JlbQp9CgouY3RhLXdyYXBwZXIgewogICAgcGFkZGluZzogNi44NjY2N3JlbSAwIDcuMzMzMzNyZW0KfQoKLmN0YS13cmFwcGVyLXNtIHsKICAgIHBhZGRpbmc6IDRyZW0gMAp9CgouY3RhLS10d28gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHBhZGRpbmc6IDYuODY2NjdyZW0gMCAxMHJlbQp9CgouY3RhLS10d286YWZ0ZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogNS4wNjY2N3JlbTsKICAgIGxlZnQ6IDA7CiAgICBib3R0b206IDA7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1nL3NiMi5odG1sKTsKICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZykgdHJhbnNsYXRlWSguOCUpOwogICAgdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpIHRyYW5zbGF0ZVkoLjglKTsKICAgIHotaW5kZXg6IDEKfQoKLmN0YS0tdHdvIC5jdGEtY29udGVudCBwIHsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC1zaXplOiAyLjRyZW07CiAgICBsaW5lLWhlaWdodDogMy42cmVtOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIG1hcmdpbjogMAp9CgouY3RhLS10d28gLmFjdGlvbi1idG4gewogICAgdGV4dC1hbGlnbjogcmlnaHQKfQoKLmN0YS0tZWlnaHQgLmFjdGlvbi1idG4sCi5jdGEtLWZpdmUgLmFjdGlvbi1idG4sCi5jdGEtLWZvdXIgLmFjdGlvbi1idG4sCi5jdGEtLXNldmVuIC5hY3Rpb24tYnRuLAouY3RhLS1zaXggLmFjdGlvbi1idG4gewogICAgdGV4dC1hbGlnbjogcmlnaHQKfQoKLmN0YS0tdGhyZWUgLmN0YS1jb250ZW50IHAgewogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXNpemU6IDIuNHJlbTsKICAgIGxpbmUtaGVpZ2h0OiAzLjY2NjY3cmVtOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIG1hcmdpbjogMCAwIDNyZW0KfQoKLmN0YS0tZm91ciAuY3RhLWNvbnRlbnQgaDEgewogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNjAwCn0KCi5jdGEtLWZvdXIgLmN0YS1jb250ZW50IHAgewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpOwogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBsaW5lLWhlaWdodDogMi4yNjY2N3JlbQp9CgouY3RhLS1mb3VyIC5jdGEtY29udGVudCAucGhvbmUgewogICAgZm9udC1zaXplOiAyLjRyZW07CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luLWJvdHRvbTogM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmN0YS0tZml2ZSB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoNDEsIDQxLCA1OSwgLjEpCn0KCi5jdGEtLWZpdmUgcCB7CiAgICBmb250LXNpemU6IDJyZW07CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmN0YS0tc2l4IHAgewogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGZvbnQtc2l6ZTogMnJlbQp9CgouY3RhLS1zZXZlbiB7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZm9udC1zaXplOiAyLjRyZW0KfQoKLmN0YS0tc2V2ZW4gcCB7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgZm9udC1zaXplOiAycmVtCn0KCi5jdGEtLWVpZ2h0IGgxIHsKICAgIGxpbmUtaGVpZ2h0OiAzLjY2NjY3cmVtCn0KCi5jdGEtLW5pbmUgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouY3RhLS1uaW5lIC5jdGEtLW5vbmUtY29udGVudHMgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jdGEtLW5pbmUgLmN0YS0tbm9uZS1jb250ZW50czpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogMjUuMTMzMzNyZW07CiAgICBoZWlnaHQ6IDU1LjUzMzMzcmVtOwogICAgcmlnaHQ6IDA7CiAgICB0b3A6IDA7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wMyk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUuMzMzMzNyZW07CiAgICBib3JkZXItcmFkaXVzOiA1LjMzMzMzcmVtOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVgoODIlKTsKICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVgoODIlKTsKICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWCg4MiUpCn0KCi5jdGEtLW5pbmUgLmN0YS0tbm9uZS1jb250ZW50czphZnRlciB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAzMy4zMzMzM3JlbTsKICAgIGhlaWdodDogNTUuNTMzMzNyZW07CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjAzKTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNS4zMzMzM3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IDUuMzMzMzNyZW07CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlKDU5JSwgMjAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSg1OSUsIDIwJSk7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSg1OSUsIDIwJSkKfQoKLmN0YS0tbmluZS5jdGEtd3JhcHBlciB7CiAgICBwYWRkaW5nLXRvcDogNC42NjY2N3JlbQp9CgouY3RhLS1uaW5lIGgzIHsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC13ZWlnaHQ6IDMwMDsKICAgIGxpbmUtaGVpZ2h0OiAzLjA2NjY3cmVtOwogICAgZm9udC1zaXplOiAyOXB4Cn0KCi5jdGEtLW5pbmUgaDMgc3BhbiB7CiAgICBmb250LXdlaWdodDogNjAwCn0KCi5jdGEtLW5pbmU6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDE4MCU7CiAgICBoZWlnaHQ6IDE1MCU7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgbGVmdDogLTQwJTsKICAgIHRvcDogODclOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKLnByb2Nlc3Mtb25lIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwOwogICAgbWFyZ2luLWxlZnQ6IC0xcmVtOwogICAgbWFyZ2luLXJpZ2h0OiAtMXJlbQp9CgoucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlIHsKICAgIHdpZHRoOiAyNSU7CiAgICBtYXJnaW4tYm90dG9tOiA0LjY2NjY3cmVtOwogICAgcGFkZGluZzogMCAxcmVtCn0KCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGU6bnRoLWNoaWxkKDJuKzEpIC5pY29uOmJlZm9yZSB7CiAgICBjb250ZW50OiB1cmwoaW1nL2Fycm93LXVwLnBuZykKfQoKLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZSAuaWNvbiB7CiAgICB3aWR0aDogOS4zMzMzM3JlbTsKICAgIGhlaWdodDogOS4zMzMzM3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBtYXJnaW46IDAgYXV0byAycmVtCn0KCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGUgLmljb24uZ3JheS1iZyB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDYsIDE4MSwgMTQ0LCAuMSkKfQoKLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZSAuaWNvbi5saWdodC1iZyB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGUgLmljb24gLmljb24tbGEgewogICAgZm9udC1zaXplOiAzLjJyZW07CiAgICBjb2xvcjogIzA2YjU5MAp9CgoucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlIC5pY29uIC5zdGVwIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAyLjMzMzMzcmVtOwogICAgaGVpZ2h0OiAyLjMzMzMzcmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKQp9CgoucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlIC5pY29uOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiB1cmwoaW1nL2Fycm93LWRvd24ucG5nKTsKICAgIHJpZ2h0OiAtOTAlOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZSBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGUgcCB7CiAgICBtYXJnaW46IDAKfQoKLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZTpsYXN0LWNoaWxkLAoucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlOm50aC1jaGlsZCg0bikgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGU6bGFzdC1jaGlsZCAuaWNvbjpiZWZvcmUsCi5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGU6bnRoLWNoaWxkKDRuKSAuaWNvbjpiZWZvcmUgewogICAgY29udGVudDogbm9uZQp9CgoucHJvY2Vzcy10aHJlZSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4xKTsKICAgIHBhZGRpbmc6IDEuNzMzMzNyZW0gMnJlbSAxLjZyZW0KfQoKLnByb2Nlc3MtdGhyZWUgc3BhbiB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGZvbnQtc2l6ZTogMi4zMzMzM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBjb2xvcjogIzA2YjU5MDsKICAgIG1hcmdpbi1ib3R0b206IDEuMnJlbTsKICAgIGxpbmUtaGVpZ2h0OiAxCn0KCi5wcm9jZXNzLXRocmVlIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDEuMnJlbQp9CgoucHJvY2Vzcy10aHJlZSBwIHsKICAgIG1hcmdpbjogMAp9CgoudGVhbS1mb3VyIHsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpCn0KCi50ZWFtLWZvdXIgLnN1YnRpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW07CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBmb250LXNpemU6IC45MzMzM3JlbQp9CgoudGVhbS1mb3VyIGltZyB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbSAuMjY2NjdyZW0gMCAwOwogICAgYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtIC4yNjY2N3JlbSAwIDA7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgoudGVhbS1mb3VyIC5jb250ZW50IHsKICAgIHBhZGRpbmc6IDEuOHJlbSAycmVtIDJyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAuMjY2NjdyZW0gLjI2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogMCAwIC4yNjY2N3JlbSAuMjY2NjdyZW07CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKLnRlYW0tZm91ciAuY29udGVudCBoNiB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW07CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW0KfQoKLnRlYW0tZml2ZSAuY29udGVudCB7CiAgICBtYXJnaW4tdG9wOiAxLjY2NjY3cmVtCn0KCi50ZWFtLWZpdmUgLmNvbnRlbnQgaDYgewogICAgbWFyZ2luLWJvdHRvbTogLjY2NjY3cmVtCn0KCi50ZWFtLWZpdmUgLmNvbnRlbnQgc3BhbiB7CiAgICBkaXNwbGF5OiBibG9jawp9CgouY291bnRlci5jb3VudGVyLS00IC5jb3VudGVyX3NpbmdsZSAudGVhbS1maXZlIC5jb250ZW50IHNwYW4udmFsdWUsCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5jYXJ0X2luZm8gcCAudGVhbS1maXZlIC5jb250ZW50IHNwYW4sCi5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIC5pdGVtcyAuaXRlbV9yZW1vdmUgLnRlYW0tZml2ZSAuY29udGVudCBzcGFuLAoudGFiLWNvbnRlbnQudGFiLS1jb250ZW50MiAudGFiLXBhbmUgLnRhYl90ZXh0X21vZHVsZSAudGVhbS1maXZlIC5jb250ZW50IHNwYW4udGFiX3RleHRfbW9kdWxlX19zdWJ0aXRsZSwKLnRhYi50YWItLTggLnRhYl9uYXY3IC5uYXYgLm5hdi1pdGVtIC50ZWFtLWZpdmUgLmNvbnRlbnQgc3Bhbi5uYXYtbGluay5hY3RpdmUsCi50ZWFtLWZpdmUgLmNvbnRlbnQgLmNvdW50ZXIuY291bnRlci0tNCAuY291bnRlcl9zaW5nbGUgc3Bhbi52YWx1ZSwKLnRlYW0tZml2ZSAuY29udGVudCAubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuY2FydF9pbmZvIHAgc3BhbiwKLnRlYW0tZml2ZSAuY29udGVudCAubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuaXRlbXMgLml0ZW1fcmVtb3ZlIHNwYW4sCi50ZWFtLWZpdmUgLmNvbnRlbnQgLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgLnRhYi1wYW5lIC50YWJfdGV4dF9tb2R1bGUgc3Bhbi50YWJfdGV4dF9tb2R1bGVfX3N1YnRpdGxlLAoudGVhbS1maXZlIC5jb250ZW50IC50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSBzcGFuLm5hdi1saW5rLmFjdGl2ZSwKLnRlYW0tZml2ZSAuY29udGVudCAudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fcGVyaW9kIC53cmFwcGVyIHNwYW4ueWVhciwKLnRlYW0tZml2ZSAuY29udGVudCBzcGFuLmNvbG9yLXByaW1hcnksCi50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXIgLnRlYW0tZml2ZSAuY29udGVudCBzcGFuLnllYXIgewogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouZmFxLXNpbmdsZSB7CiAgICBtYXJnaW4tYm90dG9tOiA0MHB4Cn0KCi5mYXEtc2luZ2xlIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbQp9CgouZmFxLXNpbmdsZSBwIHsKICAgIG1hcmdpbjogMAp9CgouZXZlbnQtc2lkZWJhciB7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi53aWRnZXQtd3JhcHBlciAud2lkZ2V0LWRlZmF1bHQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjY2NjdyZW07CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9Cgoud2lkZ2V0LXdyYXBwZXIgLndpZGdldC1oZWFkZXIgLndpZGdldC10aXRsZSB7CiAgICBtYXJnaW46IDA7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZDsKICAgIHBhZGRpbmc6IDEuMzMzMzNyZW0gMnJlbSAxLjMzMzMzcmVtIDJyZW0KfQoKLndpZGdldC13cmFwcGVyIC53aWRnZXQtY29udGVudCB7CiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMnJlbQp9Cgoud2lkZ2V0LXdyYXBwZXIgLndpZGdldC1zaGFkb3cgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjRyZW07CiAgICBib3JkZXItcmFkaXVzOiAuNHJlbQp9Cgouc2lnbnVwLXdpZGdldCAuZm9ybS1ncm91cCB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCn0KCi5zaWdudXAtd2lkZ2V0IC5mb3JtLWdyb3VwOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9Cgouc2VhcmNoLXdpZGdldCB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5zZWFyY2gtd2lkZ2V0IC5pbnB1dC1ncm91cCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLnNlYXJjaC13aWRnZXQgLmlucHV0LWdyb3VwIGlucHV0IHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogMS42NjY2N3JlbTsKICAgIGJhY2tncm91bmQ6ICNmNWY0Zjc7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIGhlaWdodDogMy4zMzMzM3JlbTsKICAgIHBhZGRpbmc6IDAgNHJlbSAwIDEuNjY2NjdyZW0KfQoKLnNlYXJjaC13aWRnZXQgLmlucHV0LWdyb3VwIGlucHV0OmZvY3VzIHsKICAgIG91dGxpbmU6IDAKfQoKLnNlYXJjaC13aWRnZXQgLmlucHV0LWdyb3VwIGJ1dHRvbiB7CiAgICBwYWRkaW5nOiAwIDEuMzMzMzNyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgcmlnaHQ6IDA7CiAgICB0b3A6IDA7CiAgICBoZWlnaHQ6IDMuMzMzMzNyZW07CiAgICBiYWNrZ3JvdW5kOiAwIDA7CiAgICBib3JkZXI6IDA7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLmNhdGVnb3J5LXdpZGdldCB1bCB7CiAgICBtYXJnaW4tdG9wOiAtNnB4Cn0KCi5jYXRlZ29yeS13aWRnZXQgdWwgbGkgYSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlCn0KCi5jYXRlZ29yeS13aWRnZXQgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNAp9Cgouc2lkZWJhci1wb3N0IC5wb3N0LXNpbmdsZSB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjY2NjY3cmVtCn0KCi5zaWRlYmFyLXBvc3QgLnBvc3Qtc2luZ2xlOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9Cgouc2lkZWJhci1wb3N0IC5wb3N0LXNpbmdsZSBpbWcgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7CiAgICBib3JkZXItcmFkaXVzOiAzcHgKfQoKLnNpZGViYXItcG9zdCAucG9zdC1zaW5nbGUgUCB7CiAgICBtYXJnaW46IDAgMCAwIDFyZW0KfQoKLnNpZGViYXItcG9zdCAucG9zdC1zaW5nbGUgUCBzcGFuIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbGluZS1oZWlnaHQ6IDEuNDY2NjdyZW0KfQoKLnNpZGViYXItcG9zdCAucG9zdC1zaW5nbGUgLnBvc3QtdGl0bGUgewogICAgbWFyZ2luLXRvcDogLjY2NjY3cmVtOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnRhZ3Mtd2lkZ2V0IHVsIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgZmxleC13cmFwOiB3cmFwOwogICAgbWFyZ2luLWJvdHRvbTogLTEwcHgKfQoKLnRhZ3Mtd2lkZ2V0IHVsIGxpIHsKICAgIG1hcmdpbi1yaWdodDogLjY2NjY3cmVtOwogICAgbWFyZ2luLWJvdHRvbTogLjY2NjY3cmVtCn0KCi50YWdzLXdpZGdldCB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1yaWdodDogMAp9CgoudGFncy13aWRnZXQgdWwgbGkgYSB7CiAgICBsaW5lLWhlaWdodDogMS43MzMzM3JlbTsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgcGFkZGluZzogMnB4IC42NjY2N3JlbTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgY29sb3I6ICM1YTY2NzE7CiAgICBmb250LXNpemU6IC44NjY2N3JlbQp9CgoudGFncy13aWRnZXQgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBib3JkZXItY29sb3I6ICM0MTNhYTQKfQoKLmFkZHJlc3Nlc19jYXJvdXNlbCAuYWRyZXNzIGltZyB7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICB3aWR0aDogYXV0bzsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jawp9CgouYWRkcmVzc2VzX2Nhcm91c2VsIC5kb3QtbGlnaHQsCi5hZGRyZXNzZXNfY2Fyb3VzZWwgLm93bC1kb3RzIHsKICAgIG1hcmdpbi10b3A6IDAKfQoKLmFkcmVzcyB7CiAgICBwYWRkaW5nOiAwIDJyZW07CiAgICBtYXJnaW4tYm90dG9tOiAzLjMzMzMzcmVtCn0KCi5hZHJlc3MgLm5hbSB7CiAgICBtYXJnaW4tdG9wOiAxLjY2NjY3cmVtOwogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBjb2xvcjogIzIwMjQyODsKICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmFkcmVzcyBpbWcgewogICAgbWF4LXdpZHRoOiAxMDAlOwogICAgd2lkdGg6IGF1dG87CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKLmFkcmVzcyBwIHsKICAgIG1hcmdpbjogMAp9CgouYWRyZXNzIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgoubWFwI21hcDEsCi5tYXAjbWFwMywKLm1hcCNtYXA0IHsKICAgIGhlaWdodDogNDAwcHgKfQoKLm1hcCNtYXAyIHsKICAgIGhlaWdodDogNTAwcHgKfQoKZm9vdGVyIHsKICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgMy4zMzMzM3JlbQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIHsKICAgIGxpbmUtaGVpZ2h0OiAycmVtOwogICAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5hZGRyZXNzLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5tYWlsLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC50ZWwgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC5tYWlsOmhvdmVyLApmb290ZXIgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIC50ZWw6aG92ZXIgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAudGV4dF93aWRnZXQgLmZvb3Rlcl9sb2dvIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IHsKICAgIG1hcmdpbi1ib3R0b206IDRyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IC53aWRnZXRfX3RpdGxlIHsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICBsaW5lLWhlaWdodDogbm9ybWFsOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldCAud2lkZ2V0X19zb2NpYWwgewogICAgbWFyZ2luLXRvcDogMzBweAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQuc3ViY3JpYmUtLXdpZGdldCAuc3Vic2NyaWJlX2Zvcm0gLmVtYmVkX2ljb24gewogICAgZm9udC1zaXplOiAxLjMzMzMzcmVtOwogICAgY29sb3I6ICM1YTY2NzEKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LnN1YmNyaWJlLS13aWRnZXQgLnN1YnNjcmliZV9mb3JtIGlucHV0IHsKICAgIHdpZHRoOiAxMDAlOwogICAgZm9udC1zaXplOiAxcmVtOwogICAgY29sb3I6ICM5MTkyYTM7CiAgICBvdXRsaW5lOiAwOwogICAgcGFkZGluZy1sZWZ0OiAxLjRyZW07CiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtCn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldCB1bC5saW5rcyBsaSB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0IHVsLmxpbmtzIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLWJvdHRvbTogMAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYSB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQtLWNvbnRhY3RfaW5mbyB1bCBsaSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIG1hcmdpbi1ib3R0b206IDMxcHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1jb250YWN0X2luZm8gdWwgbGkgc3Bhbi5sYSB7CiAgICBmb250LXNpemU6IDI4cHg7CiAgICBtYXJnaW4tcmlnaHQ6IDEycHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1jb250YWN0X2luZm8gdWwgbGkgLmluZm8gcCB7CiAgICBtYXJnaW46IDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAyNnB4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldC0tY29udGFjdF9pbmZvIHVsIGxpIC5pbmZvIHNtYWxsIHsKICAgIGZvbnQtc2l6ZTogMTRweAp9Cgpmb290ZXIgLmZvb3Rlcl9fYmlnIC53aWRnZXQtLWxhdGVzdC1uZXdzIHVsIGxpIHsKICAgIG1hcmdpbi1ib3R0b206IDIwcHgKfQoKZm9vdGVyIC5mb290ZXJfX2JpZyAud2lkZ2V0LS1sYXRlc3QtbmV3cyB1bCBsaSBzbWFsbCB7CiAgICBmb250LXNpemU6IDFyZW07CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGxpbmUtaGVpZ2h0OiAzMHB4Cn0KCmZvb3RlciAuZm9vdGVyX19iaWcgLndpZGdldC0tbGF0ZXN0LW5ld3MgdWwgbGkgYSB7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogMjhweAp9Cgpmb290ZXIgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogIzAwMAp9Cgpmb290ZXIgLmZvb3Rlcl9fc21hbGwgcCB7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAzMHB4IDAKfQoKZm9vdGVyIC5mb290ZXJfX3NtYWxsIGEgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyIC5mb290ZXJfX2JvdHRvbSAuZm9vdGVyX19ib3R0b20tY29udGVudCB7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWFlYTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgLW1zLWZsZXgtcGFjazoganVzdGlmeTsKICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIHBhZGRpbmc6IDIuMzMzMzNyZW0gMAp9Cgpmb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5mb290ZXJfX2JvdHRvbS1jb250ZW50IHAgewogICAgbWFyZ2luOiAwCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgcD5hIHsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgLnNvY2lhbC1iYXNpYyBsaSBhIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgLnNvY2lhbC1iYXNpYyBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjMDZiNTkwCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIGEsCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC50ZXh0X3dpZGdldCBwIHNwYW4gewogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC53aWRnZXQuc3ViY3JpYmUtLXdpZGdldCBwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9Cgpmb290ZXIuZm9vdGVyLS1kYXJrIC5mb290ZXJfX2JpZyAud2lkZ2V0IC53aWRnZXRfX3RpdGxlIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXItLWRhcmsgLmZvb3Rlcl9fYmlnIC53aWRnZXQgdWwubGlua3MgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzA2YjU5MAp9Cgpmb290ZXIuZm9vdGVyLS1saWdodCAud2lkZ2V0X19zb2NpYWwgLnNvY2lhbCB1bCBsaSBhIHsKICAgIGJhY2tncm91bmQ6ICNmZmYKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQgLndpZGdldF9fc29jaWFsIC5zb2NpYWwgdWwgbGkgYSBzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3Rlci5mb290ZXItLWxpZ2h0IC53aWRnZXRfX3NvY2lhbCAuc29jaWFsIHVsIGxpIGE6aG92ZXIgewogICAgYmFja2dyb3VuZDogIzQxM2FhNAp9Cgpmb290ZXIuZm9vdGVyLS1saWdodCAud2lkZ2V0X19zb2NpYWwgLnNvY2lhbCB1bCBsaSBhOmhvdmVyIHNwYW4gewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQgLndpZGdldC0tY29udGFjdF9pbmZvIHVsIGxpIC5pbmZvIHAgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNTAwCn0KCmZvb3Rlci5mb290ZXItLWxpZ2h0IC53aWRnZXQtLWxhdGVzdC1uZXdzIHVsIGxpIGEgewogICAgY29sb3I6ICMyMDI0MjgKfQoKZm9vdGVyLmZvb3RlcjIuZm9vdGVyLS1saWdodCB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLndpZGdldC50d2l0LS13aWRnZXQgLnVzZXIgLm5hbWUgewogICAgY29sb3I6ICMwNmI1OTAKfQoKZm9vdGVyLmZvb3RlcjIuZm9vdGVyLS1saWdodCAud2lkZ2V0LnR3aXQtLXdpZGdldCAudXNlciAubmFtZStzcGFuIHsKICAgIGNvbG9yOiAjOTE5MmEzCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCmZvb3Rlci5mb290ZXIyLmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgcCB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIuZm9vdGVyMiAud2lkZ2V0LnR3aXQtLXdpZGdldCAudXNlciB7CiAgICBtYXJnaW4tdG9wOiAxNHB4Cn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC51c2VyIC5uYW1lIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC51c2VyIC5uYW1lK3NwYW46YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICItIjsKICAgIG1hcmdpbjogMCAzcHgKfQoKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgYSB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQoKZm9vdGVyLmZvb3RlcjIgLndpZGdldC50d2l0LS13aWRnZXQgc3Bhbi5mYWIgewogICAgbWFyZ2luLXJpZ2h0OiAxMnB4OwogICAgZm9udC1zaXplOiAxOHB4Cn0KCmZvb3Rlci5mb290ZXIyIC53aWRnZXQudHdpdC0td2lkZ2V0IC50d2l0X3dyYXBwZXI+c3BhbiB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB0b3A6IC40NjY2N3JlbQp9Cgpmb290ZXIuZm9vdGVyMiAuZm9vdGVyX19zbWFsbCBwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KQp9Cgpmb290ZXIuZm9vdGVyMiAuZm9vdGVyX19zbWFsbCBwIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjMgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2U0ZThlZAp9Cgpmb290ZXIuZm9vdGVyMyAuZm9vdGVyX19zbWFsbCBwIHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXJfX2JpZyB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAKfQoKZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9tZW51X2l0ZW1zIHVsIGxpIHsKICAgIHBhZGRpbmc6IC45NHJlbQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX21lbnVfaXRlbXMgdWwgbGkgYSB7CiAgICBsaW5lLWhlaWdodDogMi4xNHJlbTsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX21lbnVfaXRlbXMgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogI2ZmZgp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rcyBsaStsaSB7CiAgICBtYXJnaW4tbGVmdDogMTdweAp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rczpiZWZvcmUgewogICAgY29udGVudDogJ3wnOwogICAgbWFyZ2luOiAwIDMwcHg7CiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikKfQoKZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9tZW51X2l0ZW1zIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpCn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXJfX3NtYWxsIHsKICAgIHBhZGRpbmc6IDEuNjY2NjdyZW0gMDsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9Cgpmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCBwLApmb290ZXIuZm9vdGVyNCAuZm9vdGVyX19zbWFsbCB1bCB7CiAgICBwYWRkaW5nOiAwOwogICAgbWFyZ2luOiAwCn0KCmZvb3Rlci5mb290ZXI0IC5zb2NpYWwuc3F1YXJlIHVsIGxpIGEgewogICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikKfQoKZm9vdGVyLmZvb3RlcjQgLnNvY2lhbC5zcXVhcmUgdWwgbGkgYTpob3ZlciB7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Cn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3RlcjRfdGV4dCB7CiAgICBjb2xvcjogIzVhNjY3MQp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfbWVudV9pdGVtcyB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgewogICAgYmFja2dyb3VuZDogI2ZmZgp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfX3NtYWxsIHAgewogICAgY29sb3I6ICM1YTY2NzEKfQoKZm9vdGVyLmZvb3RlcjQuZm9vdGVyLS1saWdodCAuZm9vdGVyX19zbWFsbCAuaW5mb19saW5rcyBsaSBhIHsKICAgIGNvbG9yOiAjNWE2NjcxCn0KCmZvb3Rlci5mb290ZXI0LmZvb3Rlci0tbGlnaHQgLmZvb3Rlcl9fc21hbGwgLnNvY2lhbC5zcXVhcmUgbGkgYSB7CiAgICBjb2xvcjogIzkxOTJhMzsKICAgIGJvcmRlci1jb2xvcjogI2U0ZThlZAp9Cgpmb290ZXIuZm9vdGVyNC5mb290ZXItLWxpZ2h0IC5mb290ZXJfX3NtYWxsIC5zb2NpYWwuc3F1YXJlIGxpIGE6aG92ZXIgewogICAgY29sb3I6ICNmZmY7CiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Cn0KCmZvb3Rlci5mb290ZXI0IC5mb290ZXI0X3RleHQgewogICAgbWFyZ2luOiAzLjMzcmVtIDAgNC42NnJlbTsKICAgIGxpbmUtaGVpZ2h0OiAycmVtCn0KCmZvb3Rlci5mb290ZXI1LmZvb3Rlci0tYncgLmZvb3Rlcl9fYmlnIHsKICAgIGJhY2tncm91bmQ6ICMxMTExMTUKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLnRleHRfd2lkZ2V0IGEgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLnRleHRfd2lkZ2V0IGE6aG92ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX19iaWcgLndpZGdldCB1bC5saW5rcyBhOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI1LmZvb3Rlci0tYncgLmZvb3Rlcl9fYmlnIC53aWRnZXQgLndpZGdldF9fdGl0bGUgewogICAgY29sb3I6ICNmZmYKfQoKZm9vdGVyLmZvb3RlcjUuZm9vdGVyLS1idyAuZm9vdGVyX3NtYWxsIHsKICAgIGJhY2tncm91bmQ6ICMwMDAKfQoKZm9vdGVyLmZvb3Rlci0tbGlnaHQtZ3JhZGllbnQgewogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgjZmJmYmZkKSwgdG8oI2YyZjFmYSkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmJmYmZkLCAjZjJmMWZhKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmYmZiZmQsICNmMmYxZmEpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZiZmJmZCwgI2YyZjFmYSkKfQoKZm9vdGVyLmZvb3RlcjYgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIHBhZGRpbmctdG9wOiA0LjMzMzMzcmVtCn0KCmZvb3Rlci5mb290ZXI2OmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAiIjsKICAgIHdpZHRoOiAxODAlOwogICAgaGVpZ2h0OiAxNTAlOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGxlZnQ6IC00MCU7CiAgICB0b3A6IC0xMzclOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7CiAgICBib3JkZXItcmFkaXVzOiA1MCUKfQoKZm9vdGVyLmZvb3RlcjYuZm9vdGVyLS1kYXJrIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI2LmZvb3Rlci0tZGFyayAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgewogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9Cgpmb290ZXIuZm9vdGVyNyB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgYmFja2dyb3VuZDogdXJsKGltZy9zaGFwZS13YXZlMy5wbmcpIGNlbnRlci8xMDAlIDEwMCUgbm8tcmVwZWF0OwogICAgcGFkZGluZy10b3A6IDQuNjY2NjdyZW0KfQoKZm9vdGVyLmZvb3RlcjcuZm9vdGVyLS1kYXJrIC53aWRnZXQgLndpZGdldF9fdGl0bGUyIHsKICAgIGNvbG9yOiAjZmZmCn0KCmZvb3Rlci5mb290ZXI3LmZvb3Rlci0tZGFyayAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgewogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKQp9CgoubmF2LXRhYnMgewogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgYm9yZGVyOiAwIG5vbmUKfQoKLm5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbmsgewogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbGluZS1oZWlnaHQ6IDMuMnJlbTsKICAgIHBhZGRpbmc6IDAgMS44NjY2N3JlbQp9CgoubmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmUgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgoubmF2LXRhYnMgLm5hdi1pdGVtIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRvcDogMXB4OwogICAgei1pbmRleDogMTsKICAgIG1hcmdpbjogMAp9CgoubmF2LXRhYnMgLm5hdi1pdGVtOmZpcnN0LWNoaWxkIC5uYXYtbGluayB7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweCAwIDAgMDsKICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgMAp9CgoubmF2LXRhYnMgLm5hdi1pdGVtOmxhc3QtY2hpbGQgLm5hdi1saW5rIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCA0cHggMCAwOwogICAgYm9yZGVyLXJhZGl1czogMCA0cHggMCAwCn0KCi5uYXYtcGlsbHMgLm5hdi1pdGVtIHsKICAgIG1hcmdpbi1yaWdodDogMTBweAp9CgoubmF2LXBpbGxzIC5uYXYtaXRlbTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1yaWdodDogMAp9CgoubmF2LXBpbGxzIC5uYXYtaXRlbSAubmF2LWxpbmsgewogICAgYmFja2dyb3VuZDogcmdiYSg2NSwgNTgsIDE2NCwgLjEpOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtc2l6ZTogLjkzMzMzcmVtOwogICAgbGluZS1oZWlnaHQ6IDMuMDY2NjdyZW07CiAgICBwYWRkaW5nOiAwIDMwcHgKfQoKLm5hdi1waWxscyAubmF2LWl0ZW0gLm5hdi1saW5rOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmCn0KCi50YWIudGFiLS0xIC50YWJfbmF2IHsKICAgIHBhZGRpbmc6IDEuNjZyZW0gMi42NnJlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtCn0KCi50YWIudGFiLS0xIC50YWJfbmF2IC5uYXYgdWwgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgoudGFiLnRhYi0tMSAudGFiX25hdiAubmF2IHVsIGxpIHsKICAgIGxpbmUtaGVpZ2h0OiAycmVtCn0KCi50YWIudGFiLS0xIC50YWJfbmF2IC5uYXYgLm5hdi1saW5rIHsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKICAgIHBhZGRpbmc6IDE1cHggMDsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi50YWIudGFiLS0xIC50YWJfbmF2IC5uYXYgLm5hdi1saW5rOmxhc3QtY2hpbGQgewogICAgYm9yZGVyLWJvdHRvbTogMAp9CgoudGFiLnRhYi0tMSAudGFiX25hdiAubmF2IC5uYXYtbGluay5hY3RpdmUgewogICAgYmFja2dyb3VuZDogMCAwCn0KCi50YWIudGFiLS0xIC50YWItY29udGVudCB7CiAgICBwYWRkaW5nLWxlZnQ6IDMwcHgKfQoKLnRhYi50YWItLTEgLnRhYi1jb250ZW50IC50YWItcGFuZSB7CiAgICBiYWNrZ3JvdW5kOiAjZmZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMjY2NjdyZW07CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjA1KTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpCn0KCi50YWIudGFiLS0xIC50YWItY29udGVudCAudGFiLXBhbmUgZmlndXJlIHsKICAgIG1hcmdpbjogMAp9CgoudGFiLnRhYi0tMSAudGFiLWNvbnRlbnQgLnRhYi1wYW5lIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgIHBhZGRpbmc6IDIuMTMzMzNyZW0gMi4zMzMzM3JlbSAyLjMzMzMzcmVtCn0KCi50YWIudGFiLS0xIC50YWItY29udGVudCAudGFiLXBhbmUgZmlndXJlIGZpZ2NhcHRpb24gaDUgewogICAgbGluZS1oZWlnaHQ6IDMwcHg7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgoudGFiLnRhYi0tMSAudGFiLWNvbnRlbnQgLnRhYi1wYW5lIGZpZ3VyZSBmaWdjYXB0aW9uIGEuYnRuIHsKICAgIG1hcmdpbi10b3A6IDhweAp9CgoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgewogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLnRhYi50YWItLTIgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluaywKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayB7CiAgICBmb250LXNpemU6IDEuMnJlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogNHJlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGNvbG9yOiByZ2JhKDMyLCAzNiwgNDAsIC41KTsKICAgIHBhZGRpbmctbGVmdDogMnJlbTsKICAgIHBhZGRpbmctcmlnaHQ6IDJyZW0KfQoKLnRhYi50YWItLTIgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluazpiZWZvcmUsCi50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgaGVpZ2h0OiA4cHg7CiAgICB3aWR0aDogOHB4OwogICAgYmFja2dyb3VuZDogIzlkOWViYzsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwcHg7CiAgICBib3JkZXItcmFkaXVzOiAyMDBweDsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKQp9CgoudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTphZnRlciwKLnRhYi50YWItLTYgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmU6YWZ0ZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogMS4zMzMzM3JlbTsKICAgIGhlaWdodDogMS4zMzMzM3JlbTsKICAgIGJhY2tncm91bmQ6IHJnYmEoNiwgMTgxLCAxNDQsIC4xKTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwcHg7CiAgICBib3JkZXItcmFkaXVzOiAyMDBweDsKICAgIGJvdHRvbTogMDsKICAgIGxlZnQ6IDUwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKQp9CgoudGFiLnRhYi0tMyAudGFiX25hdjMgewogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLnRhYi50YWItLTMgLnRhYl9uYXYzIC5uYXYgbGkgewogICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwOwogICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7CiAgICBmbGV4LWJhc2lzOiAwOwogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleC1ncm93OiAxOwogICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7CiAgICBmbGV4LWdyb3c6IDE7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLnRhYi50YWItLTMgLnRhYl9uYXYzIC5uYXYgbGkgYSB7CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW07CiAgICBjb2xvcjogIzVhNjY3MTsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IC4zczsKICAgIC1vLXRyYW5zaXRpb246IC4zczsKICAgIHRyYW5zaXRpb246IC4zczsKICAgIHBhZGRpbmc6IDEuNHJlbSAwCn0KCi50YWIudGFiLS00IC50YWItLWNvbnRlbnQ0IHsKICAgIHBhZGRpbmc6IDUwcHggNTBweCA1MHB4IDA7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBvdmVyZmxvdzogaGlkZGVuCn0KCi50YWIudGFiLS00IC50YWItLWNvbnRlbnQ5IHsKICAgIHBhZGRpbmc6IDIuNjY2NjdyZW0KfQoKLnRhYi50YWItLTQgLnRhYi1jb250ZW50IC50YWItcGFuZSAuZ3JhcGhfYXJlYSB7CiAgICBtYXJnaW4tcmlnaHQ6IDM1cHgKfQoKLnRhYi50YWItLTQgLnRhYi1jb250ZW50IC50YWItcGFuZSAudGV4dF9jb250ZW50IHAgewogICAgbWFyZ2luLWJvdHRvbTogMAp9CgoudGFiLnRhYi0tNiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rIHsKICAgIGZvbnQtc2l6ZTogMS4ycmVtCn0KCi50YWIudGFiLS03IC50YWJfbmF2NywKLnRhYi50YWItLTggLnRhYl9uYXY3IHsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi50YWIudGFiLS03IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmssCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgewogICAgZm9udC1zaXplOiAxcmVtOwogICAgbGluZS1oZWlnaHQ6IDMuMzMzMzNyZW07CiAgICBwYWRkaW5nOiAwcmVtIDJyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBjb2xvcjogIzkxOTJhMwp9CgoudGFiLnRhYi0tNyAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rIHNwYW4sCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgc3BhbiB7CiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7CiAgICBmb250LXNpemU6IDEuMnJlbQp9CgoudGFiLnRhYi0tNyAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUsCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlOmJlZm9yZSB7CiAgICBjb250ZW50OiAiIjsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAycHg7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBib3R0b206IC0xcHg7CiAgICBsZWZ0OiAwCn0KCi50YWIudGFiLS03IC50YWItLWNvbnRlbnQ3LAoudGFiLnRhYi0tOCAudGFiLS1jb250ZW50NyB7CiAgICBtYXJnaW4tdG9wOiAzNXB4Cn0KCi50YWIudGFiLS03IC50YWItLWNvbnRlbnQ3IGg1LAoudGFiLnRhYi0tOCAudGFiLS1jb250ZW50NyBoNSB7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Cn0KCi50YWIudGFiLS04IC50YWJfbmF2NyB7CiAgICBib3JkZXItYm90dG9tOiAwOwogICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi50YWIudGFiLS04IC50YWJfbmF2NyAubmF2IHsKICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgp9CgoudGFiLnRhYi0tOCAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rIHsKICAgIHBhZGRpbmc6IDByZW0gMS42NjY2N3JlbQp9CgoudGFiLnRhYi0tOCAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTpiZWZvcmUgewogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDFweDsKICAgIGxlZnQ6IC0xcHgKfQoKLnRhYi50YWItLTggLnRhYi1jb250ZW50IGg1IHsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgewogICAgbWFyZ2luLXRvcDogMy4zMzMzM3JlbQp9CgoudGFiLWNvbnRlbnQudGFiLS1jb250ZW50MiAudGFiLXBhbmUgLnRhYl90ZXh0X21vZHVsZSAudGFiX3RleHRfbW9kdWxlX19zdWJ0aXRsZSB7CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgbWFyZ2luLWJvdHRvbTogNXB4OwogICAgY29sb3I6ICMwNmI1OTAKfQoKLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgLnRhYi1wYW5lIC50YWJfdGV4dF9tb2R1bGUgaDIgewogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGZvbnQtc2l6ZTogMi40cmVtOwogICAgbGluZS1oZWlnaHQ6IDIuOHJlbTsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgLnRhYi1wYW5lIC50YWJfdGV4dF9tb2R1bGUgLmJ0biB7CiAgICBtYXJnaW4tdG9wOiAxLjI2NjY3cmVtCn0KCi50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX3RleHRfbW9kdWxlIHVsIGxpIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGxpbmUtaGVpZ2h0OiAyLjEzMzMzcmVtOwogICAgbWFyZ2luOiAwCn0KCi50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX2ltYWdlX21vZHVsZS0tbGVmdCwKLnRhYi1jb250ZW50LnRhYi0tY29udGVudDIgLnRhYi1wYW5lIC50YWJfaW1hZ2VfbW9kdWxlLS1yaWdodCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX2ltYWdlX21vZHVsZS0tbGVmdCBpbWcsCi50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX2ltYWdlX21vZHVsZS0tcmlnaHQgaW1nIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OwogICAgYm9yZGVyLXJhZGl1czogNHB4Cn0KCi50YWJfbmF2NCAubmF2LXRhYnMgbGkgYSB7CiAgICBiYWNrZ3JvdW5kOiAjMDAwMDhiCn0KCi50YWJfbmF2NSB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi50YWJfZXZlbnQ+cCB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBsaW5lLWhlaWdodDogMi41MzMzM3JlbTsKICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICBtYXJnaW4tYm90dG9tOiAxNXB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIHsKICAgIHBhZGRpbmc6IDMycHggNDBweCAyLjQ2NjY3cmVtOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuMjY2cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NnJlbQp9CgoudGFiX2V2ZW50IC50YWJfZXZlbnRfX21vZHVsZSAuZXZlbnRfbWV0YSB7CiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXAKfQoKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLmV2ZW50X21ldGEgcCB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuNDY2NjdyZW07CiAgICBmb250LXNpemU6IDFyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLmV2ZW50X21ldGEgcCBzcGFuLmxhIHsKICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIG1hcmdpbi1yaWdodDogOHB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIGg1IHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDIuNTMzMzNyZW07CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLnNwZWFrZXJzIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWFyZ2luLWJvdHRvbTogMDsKICAgIHBhZGRpbmctdG9wOiAxMXB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgoudGFiX2V2ZW50IC50YWJfZXZlbnRfX21vZHVsZSAuc3BlYWtlcnMgbGk+ZGl2IHsKICAgIG1hcmdpbi1sZWZ0OiAyMHB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaStsaSB7CiAgICBtYXJnaW4tbGVmdDogMzBweAp9CgoudGFiX2V2ZW50IC50YWJfZXZlbnRfX21vZHVsZSAuc3BlYWtlcnMgbGkgaW1nIHsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwcHg7CiAgICBib3JkZXItcmFkaXVzOiAyMDBweDsKICAgIGhlaWdodDogNTBweDsKICAgIHdpZHRoOiA1MHB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaSBoNiwKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLnNwZWFrZXJzIGxpIHAgewogICAgbWFyZ2luOiAwOwogICAgbGluZS1oZWlnaHQ6IDEuODY2NjdyZW0KfQoKLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLnNwZWFrZXJzIGxpIHAgewogICAgZm9udC1zaXplOiAxNHB4Cn0KCi50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaSBoNSB7CiAgICBmb250LXNpemU6IDEuMnJlbQp9Cgouc2VydmljZS0tdGFicyAudGFiX25hdjIgLm5hdiB7CiAgICBwYWRkaW5nOiAwCn0KCi5zZXJ2aWNlLS10YWJzIC50YWJfbmF2MiAubmF2IC5uYXYtbGluayB7CiAgICBwYWRkaW5nOiAuODY2NjdyZW0gMS4zMzMzM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgYmFja2dyb3VuZDogcmdiYSg2NSwgNTgsIDE2NCwgLjA1KTsKICAgIG1hcmdpbi1ib3R0b206IDVweDsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgZm9udC1zaXplOiAxLjA2NjY3cmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMAp9Cgouc2VydmljZS0tdGFicyAudGFiX25hdjIgLm5hdiAubmF2LWxpbms6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5zZXJ2aWNlLS10YWJzIC50YWJfbmF2MiAubmF2IC5uYXYtbGluay5hY3RpdmUgewogICAgYmFja2dyb3VuZDogIzA2YjU5MDsKICAgIGNvbG9yOiAjZmZmCn0KCi50ZXN0aW1vbmlhbDIgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXNwZWMgLmF1dGhvci1kZXNjIGg1IHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi50ZXN0aW1vbmlhbDYgewogICAgcGFkZGluZzogNS4zMzMzM3JlbSAwCn0KCi5zaW5nbGVfdGVzdGltb25pYWwgLmJpZy0tcXVvdGUgewogICAgZm9udC1zaXplOiA3LjMzMzMzcmVtOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbGVmdDogLTEzcHgKfQoKLnNpbmdsZV90ZXN0aW1vbmlhbCBwIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTsKICAgIGZvbnQtc2l6ZTogMS4zMzMzM3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07CiAgICBtYXJnaW46IDAKfQoKLnNpbmdsZV90ZXN0aW1vbmlhbCAuc2luZ2xlX3Rlc3RpbW9uaWFsX21ldGEgewogICAgcGFkZGluZy10b3A6IDM1cHg7CiAgICBjb2xvcjogI2ZmZjsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5zaW5nbGVfdGVzdGltb25pYWwgLnNpbmdsZV90ZXN0aW1vbmlhbF9tZXRhIHNwYW4gewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBmb250LXdlaWdodDogNDAwOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpOwogICAgbWFyZ2luLWxlZnQ6IC42NjY2N3JlbQp9CgouaW50cm8tYXJlYS0xMSB7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2ludHJvLWJnLnBuZyk7CiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOwogICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgcGFkZGluZy1ib3R0b206IDMuMzMzMzNyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmludHJvLWFyZWEtMTE6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmLCAjZjNmMmZhKTsKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2ZmZiwgI2YzZjJmYSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbSgjZmZmKSwgdG8oI2YzZjJmYSkpOwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgI2YzZjJmYSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgI2YzZjJmYSk7CiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYsICNmM2YyZmEpOwogICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsIHN0YXJ0Q29sb3JzdHI9I2ZmZmZmZiwgZW5kQ29sb3JzdHI9I2YzZjJmYSk7CiAgICB6LWluZGV4OiAtMQp9CgouaW50cm8tYXJlYS0xMSAubWVudV9hcmVhLm1lbnU4IHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICBiYWNrZ3JvdW5kOiAwIDAKfQoKLmludHJvLWFyZWEtdHdvIHsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKCM0MTNhYTQpLCB0bygjMDZiNTkwKSk7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjNDEzYWE0LCAjMDZiNTkwKTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjNDEzYWE0LCAjMDZiNTkwKTsKICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzQxM2FhNCwgIzA2YjU5MCk7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbQp9CgouaW50cm8tYXJlYS10d286YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9zdmcvc2hhcGUyLnN2ZyksIC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKCM0MTNhYTQpLCB0bygjMDZiNTkwKSk7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL3N2Zy9zaGFwZTIuc3ZnKSwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzQxM2FhNCwgIzA2YjU5MCk7CiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL3N2Zy9zaGFwZTIuc3ZnKSwgLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICM0MTNhYTQsICMwNmI1OTApOwogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltZy9zdmcvc2hhcGUyLnN2ZyksIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzQxM2FhNCwgIzA2YjU5MCk7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7CiAgICBvcGFjaXR5OiAuMTUKfQoKLmludHJvLWFyZWEtdHdvIC5tZW51X2FyZWEubWVudTggewogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZTsKICAgIGJhY2tncm91bmQ6IDAgMAp9CgouaW50cm8tb25lIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIG1pbi1oZWlnaHQ6IDQ3LjQ2NjY3cmVtCn0KCi5pbnRyby1vbmUgLmludHJvLW9uZS0tY29udGVudHMgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmludHJvLW9uZSBoMSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmludHJvLW9uZSBwIHsKICAgIGZvbnQtc2l6ZTogMTdweDsKICAgIG1hcmdpbjogMDsKICAgIGxpbmUtaGVpZ2h0OiAyLjEzMzMzcmVtCn0KCi5pbnRyby1vbmUgLmJ0biB7CiAgICBtYXJnaW4tdG9wOiAyLjY2NjY3cmVtCn0KCi5pbnRyby1vbmUgLmludHJvLW9uZS0taW1nIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiA1MCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA2YjU5MCwgIzQxM2FhNCk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDZiNTkwLCAjNDEzYWE0KTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtNDVkZWcsICMwNmI1OTAsICM0MTNhYTQpOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKfQoKLmludHJvLXR3byB7CiAgICBtaW4taGVpZ2h0OiA1My4zMzMzM3JlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgpAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSksCigtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpIHsKICAgIC5pbnRyby10d28gewogICAgICAgIGhlaWdodDogNTMuMzMzMzNyZW0KICAgIH0KfQoKLmludHJvLXR3bzpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogJyc7CiAgICB3aWR0aDogODklOwogICAgaGVpZ2h0OiAxMDAlOwogICAgYm9yZGVyLXRvcDogODAwcHggc29saWQgIzA2YjU5MDsKICAgIGJvcmRlci1yaWdodDogODM2cHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICBib3JkZXItbGVmdDogMCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDAKfQoKLmludHJvLXR3byBoMSB7CiAgICBsaW5lLWhlaWdodDogNHJlbTsKICAgIGNvbG9yOiAjZmZmOwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW0KfQoKLmludHJvLXR3byBwIHsKICAgIGNvbG9yOiAjZmZmOwogICAgbWFyZ2luOiAwOwogICAgZm9udC1zaXplOiAxLjEzMzMzcmVtOwogICAgbGluZS1oZWlnaHQ6IDIuMTMzMzNyZW0KfQoKLmludHJvLXR3byB1bCB7CiAgICBtYXJnaW46IDIuNjY2NjdyZW0gMCAwIDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouaW50cm8tdHdvIHVsIGxpIHsKICAgIG1hcmdpbi1yaWdodDogMnJlbQp9CgouaW50cm8tdHdvIHVsIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5pbnRyby10aHJlZSB7CiAgICBtaW4taGVpZ2h0OiA1My4zMzMzM3JlbTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y3ZjZmYywgI2ZmZik7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjdmNmZjLCAjZmZmKTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtNDVkZWcsICNmN2Y2ZmMsICNmZmYpOwogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouaW50cm8tdGhyZWU6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDgwcmVtOwogICAgaGVpZ2h0OiA5My4zMzMzM3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlOwogICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgbGVmdDogLTUyMHB4OwogICAgYm90dG9tOiAtOTAwcHgKfQoKLmludHJvLXRocmVlOmFmdGVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICcnOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1nL3NoYXBlMi5wbmcpIHRvcCByaWdodC9hdXRvIG5vLXJlcGVhdAp9CgouaW50cm8tdGhyZWUgLmludHJvLXRocmVlLS1pbWcgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDUwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIHBhZGRpbmctbGVmdDogMTYuNjY2NjdyZW0KfQoKLmludHJvLXRocmVlIC5pbnRyby10aHJlZS0tY29udGVudHMgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgaGVpZ2h0OiAxMDAlOwogICAgdG9wOiAwOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICB6LWluZGV4OiAxCn0KCi5pbnRyby10aHJlZSAuaW50cm8tdGhyZWUtLWNvbnRlbnRzIGgxIHsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmludHJvLXRocmVlIC5pbnRyby10aHJlZS0tY29udGVudHMgcCB7CiAgICBmb250LXNpemU6IDEuMTMzMzNyZW07CiAgICBtYXJnaW46IDA7CiAgICBsaW5lLWhlaWdodDogMi4xMzMzM3JlbQp9CgouaW50cm8tdGhyZWUgLmludHJvLXRocmVlLS1jb250ZW50cyAuYnRuIHsKICAgIG1hcmdpbi10b3A6IDIuMzMzMzNyZW0KfQoKLmludHJvLWZvdXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWluLWhlaWdodDogNTMuMzMzMzNyZW0KfQoKLmludHJvLWZvdXI6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgd2lkdGg6IDgwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCg1MCUsICNmMWYyZjcpLCB0byhyZ2JhKDI0MSwgMjQyLCAyNDcsIDApKSk7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZjFmMmY3IDUwJSwgcmdiYSgyNDEsIDI0MiwgMjQ3LCAwKSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2YxZjJmNyA1MCUsIHJnYmEoMjQxLCAyNDIsIDI0NywgMCkpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZjFmMmY3IDUwJSwgcmdiYSgyNDEsIDI0MiwgMjQ3LCAwKSk7CiAgICB6LWluZGV4OiAxCn0KCi5pbnRyby1mb3VyIC5pbnRyby1mb3VyLS1jb250ZW50cyB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcgp9CgouaW50cm8tZm91ciAuaW50cm8tZm91ci0tY29udGVudHMgaDEgewogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW0KfQoKLmludHJvLWZvdXIgLmludHJvLWZvdXItLWNvbnRlbnRzIHAgewogICAgbWFyZ2luOiAwOwogICAgZm9udC1zaXplOiAxLjEzMzMzcmVtOwogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBsaW5lLWhlaWdodDogMi4xMzMzM3JlbQp9CgouaW50cm8tZm91ciAuaW50cm8tZm91ci0tY29udGVudHMgdWwgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBtYXJnaW4tdG9wOiAyLjY2NjY3cmVtCn0KCi5pbnRyby1mb3VyIC5pbnRyby1mb3VyLS1jb250ZW50cyB1bCBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IDJyZW0KfQoKLmludHJvLWZvdXIgLmludHJvLWZvdXItLWNvbnRlbnRzIHVsIGxpOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwCn0KCi5pbnRyby1maXZlIGgxIHsKICAgIGZvbnQtd2VpZ2h0OiA2MDAKfQoKLmludHJvLWZpdmUgcCB7CiAgICBmb250LXNpemU6IDEuMTMzMzNyZW07CiAgICBtYXJnaW46IDA7CiAgICBsaW5lLWhlaWdodDogMi4xMzMzM3JlbQp9CgouaW50cm8tZml2ZSAuYnRuIHsKICAgIG1hcmdpbi10b3A6IDIuMzMzMzNyZW0KfQoKLnNoYXBlLXdyYXBwZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5zaGFwZS13cmFwcGVyOmJlZm9yZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBjb250ZW50OiAnJzsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMAp9Cgouc2hhcGUtd3JhcHBlciBpbWcgewogICAgd2lkdGg6IDEwMCUKfQoKLnNoYXBlLXdyYXBwZXIuaW1nLXNoYXBlLW9uZTpiZWZvcmUgewogICAgYmFja2dyb3VuZDogdXJsKGltZy9pbWdfc2hhcGUxLnBuZyk7CiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOwogICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Cn0KCi5zaGFwZS13cmFwcGVyLmltZy1zaGFwZS10d286YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHVybChpbWcvaW1nX3NoYXBlMi5wbmcpOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAxJTsKICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDElOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdAp9Cgouc2hhcGUtd3JhcHBlci5pbWctc2hhcGUtdGhyZWU6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHVybChpbWcvaW1nX3NoYXBlMy5wbmcpOwogICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAxJTsKICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDElOwogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcgp9CgouaW50cm9fYXJlYTkgewogICAgbWluLWhlaWdodDogNTYuNjY2NjdyZW07CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmludHJvX2FyZWE5IC5pbnRyb19hcmVhOS0tY29udGVudHMgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIKfQoKLmludHJvX2FyZWE5IC5pbnRyb19hcmVhOS0tY29udGVudHM6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiA1MCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAwOwogICAgY29udGVudDogJyc7CiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgzMTBkZWcsICM0MTNhYTQgMCwgIzQxM2FhNCAyNSUsICMwNmI1OTAgMTAwJSk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoMzEwZGVnLCAjNDEzYWE0IDAsICM0MTNhYTQgMjUlLCAjMDZiNTkwIDEwMCUpOwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0MGRlZywgIzQxM2FhNCAwLCAjNDEzYWE0IDI1JSwgIzA2YjU5MCAxMDAlKQp9CgouaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1jb250ZW50cyBoMSB7CiAgICBmb250LXNpemU6IDMuNnJlbTsKICAgIGxpbmUtaGVpZ2h0OiA0cmVtOwogICAgY29sb3I6ICNmZmY7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgbWFyZ2luOiAwIDAgMi42NjY2N3JlbQp9CgouaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1jb250ZW50cyBwIHsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjEzMzMzcmVtOwogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpOwogICAgbWFyZ2luOiAwIDAgMi42NjY2N3JlbQp9CgouaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1jb250ZW50cyAuYnRuIHsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UKfQoKLmludHJvX2FyZWE5IC5pbnRyb19hcmVhOS0tc2xpZGVzIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiA1MCU7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGhlaWdodDogMTAwJTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyAuaW50cm9fYXJlYTktY2Fyb3VzZWwgewogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyAuaW50cm9fYXJlYTktY2Fyb3VzZWwgaW1nIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHdpZHRoOiBhdXRvCn0KCi5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyAuaW50cm9fYXJlYTktY2Fyb3VzZWwgLmRvdC1saWdodCwKLmludHJvX2FyZWE5IC5pbnRyb19hcmVhOS0tc2xpZGVzIC5pbnRyb19hcmVhOS1jYXJvdXNlbCAub3dsLWRvdHMgewogICAgaGVpZ2h0OiAyLjEzMzMzcmVtOwogICAgYmFja2dyb3VuZDogcmdiYSg2LCAxODEsIDE0NCwgLjEpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IDIwcmVtOwogICAgcGFkZGluZzogMCAxLjMzMzMzcmVtOwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDsKICAgIGRpc3BsYXk6IGlubGluZS1mbGV4Cn0KCi5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyAuaW50cm9fYXJlYTktY2Fyb3VzZWwgLmRvdC1saWdodCAub3dsLWRvdCBzcGFuLAouaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1zbGlkZXMgLmludHJvX2FyZWE5LWNhcm91c2VsIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHsKICAgIGJvcmRlcjogMCBub25lOwogICAgYmFja2dyb3VuZDogI2ZmZgp9CgouaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1zbGlkZXMgLmludHJvX2FyZWE5LWNhcm91c2VsIC5kb3QtbGlnaHQgLm93bC1kb3QuYWN0aXZlIHNwYW4sCi5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyAuaW50cm9fYXJlYTktY2Fyb3VzZWwgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTAKfQoKLmludHJvLWFyZWEtZm91ciB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7CiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZDsKICAgIG1pbi1oZWlnaHQ6IDU2LjY2NjY3cmVtOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5pbnRyby1hcmVhLWZvdXIgLmltZy1sZWZ0LAouaW50cm8tYXJlYS1mb3VyIC5pbWctcmlnaHQgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLmludHJvLWFyZWEtZm91ciAuaW1nLWxlZnQgewogICAgbGVmdDogMAp9CgouaW50cm8tYXJlYS1mb3VyIC5pbWctcmlnaHQgewogICAgcmlnaHQ6IDAKfQoKLmludHJvLWFyZWEtZm91ciAuaW50cm8tYXJlYS1mb3VyLS1jb250ZW50cyB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmludHJvLWFyZWEtZm91ciAuaW50cm8tYXJlYS1mb3VyLS1jb250ZW50cyBoMSB7CiAgICBmb250LXdlaWdodDogMzAwOwogICAgZm9udC1zaXplOiAzLjZyZW07CiAgICBsaW5lLWhlaWdodDogNC4xMzMzM3JlbTsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLmludHJvLWFyZWEtZm91ciAuaW50cm8tYXJlYS1mb3VyLS1jb250ZW50cyBoMSBzcGFuIHsKICAgIGNvbG9yOiAjMDZiNTkwOwogICAgZm9udC13ZWlnaHQ6IDYwMAp9CgouaW50cm8tYXJlYS1mb3VyIC5pbnRyby1hcmVhLWZvdXItLWNvbnRlbnRzIHAgewogICAgZm9udC1zaXplOiAxLjEzMzMzcmVtOwogICAgbGluZS1oZWlnaHQ6IDIuMTMzMzNyZW07CiAgICBtYXJnaW46IDAKfQoKLmludHJvLWZvcm0gewogICAgbWFyZ2luOiAyLjUzMzMzcmVtIDAgMy4zMzMzM3JlbSAwOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXAKfQoKLmludHJvLWZvcm0gLmlucHV0LWdyb3VwIHsKICAgIHdpZHRoOiBhdXRvOwogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgouaW50cm8tZm9ybSAuaW5wdXQtZ3JvdXAgc3Bhbi5pY29uLWxlZnQgewogICAgbGVmdDogMS4zMzMzM3JlbQp9CgouaW50cm8tZm9ybSAuaW5wdXQtZ3JvdXAgaW5wdXQgewogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweCAhaW1wb3J0YW50OwogICAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHggIWltcG9ydGFudDsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAuMzMzMzNyZW0gLjY2NjY3cmVtIHJnYmEoMTQ1LCAxNDIsIDE4NywgLjEpOwogICAgYm94LXNoYWRvdzogMCAuMzMzMzNyZW0gLjY2NjY3cmVtIHJnYmEoMTQ1LCAxNDIsIDE4NywgLjEpOwogICAgcGFkZGluZy1sZWZ0OiAzLjMzMzMzcmVtCn0KCi5pbnRyby1mb3JtIGJ1dHRvbiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiBhdXRvOwogICAgLW1zLWZsZXg6IGF1dG87CiAgICBmbGV4OiBhdXRvOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDsKICAgIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIC4zMzMzM3JlbSAuNjY2NjdyZW0gcmdiYSgxNDUsIDE0MiwgMTg3LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIC4zMzMzM3JlbSAuNjY2NjdyZW0gcmdiYSgxNDUsIDE0MiwgMTg3LCAuMSkKfQoKLnJldl9zbGlkZXIgewogICAgZGlyZWN0aW9uOiBsVHIKfQoKLnJldl9zbGlkZXIgLnNsb3Rob2xkZXI6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCA1OCwgMTY0LCAuNyk7CiAgICB6LWluZGV4OiA5OQp9CgojcmV2X3NsaWRlcl8xNV8xX3dyYXBwZXIgLnNsb3Rob2xkZXI6YmVmb3JlLAojcmV2X3NsaWRlcl8xNV8yX3dyYXBwZXIgLnNsb3Rob2xkZXI6YmVmb3JlLAojcmV2X3NsaWRlcl8xN18xX3dyYXBwZXIgLnNsb3Rob2xkZXI6YmVmb3JlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGNvbnRlbnQ6ICIiOwogICAgaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IDEwMCU7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDMyLCAzNiwgNDAsIC42KTsKICAgIHotaW5kZXg6IDk5OwogICAgbGVmdDogMDsKICAgIHRvcDogMAp9Cgoub3ZlcmxheV9ibHVlLnJldl9zbGlkZXIgLnNsb3Rob2xkZXI6YmVmb3JlIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoNTksIDYyLCAxMjEsIC43KQp9CgoucmV2X3NsaWRlcl8xN18xX3dyYXBwZXIgLmZvcm0td3JhcHBlciAuYnRuIHsKICAgIHRleHQtYWxpZ246IGNlbnRlcgp9CgoucmV2X3NsaWRlci53aXRob3V0X292ZXJsYXkgLnNsb3Rob2xkZXI6YmVmb3JlIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKI3Jldl9zbGlkZXJfN18xX3dyYXBwZXIgLnNsb3Rob2xkZXI6YmVmb3JlLAojcmV2X3NsaWRlcl85XzFfd3JhcHBlciAuc2xvdGhvbGRlcjpiZWZvcmUgewogICAgY29udGVudDogbm9uZQp9CgouY3VzdG9tLnRwYXJyb3dzOmJlZm9yZSwKLmhlcGhhaXN0b3MudHBhcnJvd3M6YmVmb3JlLAouaGVzcGVyaWRlbi50cGFycm93czpiZWZvcmUsCi50cGFycm93czpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lLCBzYW5zLXNlcmlmOwogICAgZm9udC1zaXplOiAyMHB4Cn0KCi5jdXN0b20udHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYxMjAiCn0KCi5jdXN0b20udHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogIlxmMTIxIgp9CgouaGVwaGFpc3Rvcy50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlLAouaGVzcGVyaWRlbi50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMSIKfQoKLmhlcGhhaXN0b3MudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUsCi5oZXNwZXJpZGVuLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJcZjExMiIKfQoKI3Jldl9zbGlkZXJfMjdfMV93cmFwcGVyIC5oZXJvX2J0biB7CiAgICBib3JkZXItY29sb3I6ICNmZmY7CiAgICBjb2xvcjogI2ZmZgp9CgojcmV2X3NsaWRlcl8yN18xX3dyYXBwZXIgLmhlcm9fYnRuOmhvdmVyIHsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgoucmV2X3NsaWRlciAuYnRuLWljb24gaSwKLnJldl9zbGlkZXIgLmJ0bi1pY29uIHNwYW4gewogICAgZm9udC1zaXplOiAyMHB4Cn0KCi50cC1jYXB0aW9uIC5mb3JtLXdyYXBwZXIgewogICAgbWluLXdpZHRoOiAyMS4zMzMzM3JlbQp9CgouZXJpbnllbiAudHAtYnVsbGV0IHsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBib3JkZXI6IDAgbm9uZTsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgLW8tdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOwogICAgd2lkdGg6IDEycHg7CiAgICBoZWlnaHQ6IDEycHgKfQoKLmVyaW55ZW4gLnRwLWJ1bGxldC5zZWxlY3RlZCwKLmVyaW55ZW4gLnRwLWJ1bGxldDpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC40KTsKICAgIGJvcmRlcjogMCBub25lCn0KCi5lcmlueWVuLnRwLWJ1bGxldHM6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICIiOwogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzMDBweDsKICAgIGJvcmRlci1yYWRpdXM6IDMwMHB4OwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZTsKICAgIGxlZnQ6IDAKfQoKLnpldXMudHBhcnJvd3M6YmVmb3JlIHsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZQp9CgouemV1cy50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgICBjb250ZW50OiAnXGYxMTInCn0KCi56ZXVzLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewogICAgY29udGVudDogJ1xmMTExJwp9CgouaGFkZXMgLnRwLXRodW1iLWltZy13cmFwIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogICAgYm94LXNoYWRvdzogbm9uZQp9CgouaGFkZXMgLnRwLXRodW1iLWltYWdlIHsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICAgIGJveC1zaGFkb3c6IG5vbmUKfQoKLmhhZGVzIC50cC10aHVtYi5zZWxlY3RlZCAudHAtdGh1bWItaW1nLXdyYXAsCi5oYWRlcyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLWltZy13cmFwIHsKICAgIGJhY2tncm91bmQ6ICMwNmI1OTAKfQoKLnRydW1ib3d5Zy1ib3ggLnRydW1ib3d5Zy1lZGl0b3IgewogICAgbWluLWhlaWdodDogMTMuMzMzMzNyZW0KfQoKLnNlcGFyYXRvciB7CiAgICBtYXJnaW4tdG9wOiA1LjMzMzMzcmVtOwogICAgaGVpZ2h0OiAxcHg7CiAgICBiYWNrZ3JvdW5kOiAjZTRlOGVkOwogICAgbWFyZ2luLWJvdHRvbTogNS4zMzMzM3JlbQp9CgouY2FzZV9zdHVkaWVzIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgouYnQxIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5zZXJ2aWNlc19hcmVhIC5zZWN0aW9uX3RpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLnNlcnZpY2VzX2FyZWEgLnNlY3Rpb25fdGl0bGUgaDEgewogICAgbWFyZ2luLWJvdHRvbTogMTBweAp9CgouZmVhdHVyZXMtYXJlYSAuc2VjdGlvbi10aXRsZSB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBtYXJnaW4tYm90dG9tOiAyLjY2NjY3cmVtCn0KCi5mZWF0dXJlcy1hcmVhIC5zZWN0aW9uLXRpdGxlIGgzIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLWJvdHRvbTogMS42NjY2N3JlbQp9CgouZmVhdHVyZXMtYXJlYSAuc2VjdGlvbi10aXRsZSBwIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luOiAwCn0KCi5zZXJ2aWNlLXR3byB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAgNS4zMzMzM3JlbTsKICAgIGJhY2tncm91bmQ6IHVybChpbWcvc2hhcGUtd2F2ZTIucG5nKSBjZW50ZXIvMTAwJSAxMDAlIG5vLXJlcGVhdAp9CgoucC1ib3ggewogICAgcGFkZGluZzogMnJlbSAyLjY2NjY3cmVtIDIuMzMzMzNyZW07CiAgICBiYWNrZ3JvdW5kOiAjMzc3ZGZmOwogICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAuNHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IC40cmVtCn0KCi5wLWJveCBwIHsKICAgIG1hcmdpbjogMDsKICAgIGZvbnQtc2l6ZTogMS4xMzMzM3JlbTsKICAgIGxpbmUtaGVpZ2h0OiAyLjI2NjY3cmVtCn0KCi5wLWJveCBoNCB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbGluZS1oZWlnaHQ6IDIuNjY2NjdyZW07CiAgICBtYXJnaW46IDA7CiAgICBjb2xvcjogI2ZmZgp9CgouYWJvdXQtbGlua3MsCi5ldmVudC10eXBlcyB7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgei1pbmRleDogMQp9CgouYWJvdXQtbGlua3MgdWwgbGksCi5ldmVudC10eXBlcyB1bCBsaSB7CiAgICBtYXJnaW46IDAgMTVweAp9CgouYWJvdXQtbGlua3MgdWwgbGkgYSwKLmV2ZW50LXR5cGVzIHVsIGxpIGEgewogICAgZm9udC1zaXplOiAxLjA2NjY3cmVtOwogICAgY29sb3I6ICM1YTY2NzE7CiAgICBwYWRkaW5nOiAycmVtIDA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsKICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZQp9CgouYWJvdXQtbGlua3MgdWwgbGkgYS5hY3RpdmUsCi5ldmVudC10eXBlcyB1bCBsaSBhLmFjdGl2ZSB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNDEzYWE0Cn0KCi5hYm91dC1saW5rcyB1bCBsaSBhOmhvdmVyLAouZXZlbnQtdHlwZXMgdWwgbGkgYTpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNAp9CgouZXZlbnQtdHlwZXMgewogICAgYmFja2dyb3VuZDogI2ZmZgp9CgouZXZlbnQtdHlwZXMgdWwgbGkgYSB7CiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7CiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4Cn0KCi5zZWFyY2gtd3JhcHBlciBmb3JtIHsKICAgIHBhZGRpbmc6IDIuNjY2NjdyZW07CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMSk7CiAgICBib3gtc2hhZG93OiAwIDVweCAzMHB4IHJnYmEoMTA1LCAxMDYsIDExOSwgLjEpOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjRyZW07CiAgICBib3JkZXItcmFkaXVzOiAuNHJlbQp9Cgouc2VhcmNoLXdyYXBwZXIgZm9ybSBoNCB7CiAgICBmb250LXdlaWdodDogNjAwOwogICAgY29sb3I6ICM0MTNhYTQ7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHsKICAgIHdpZHRoOiBhdXRvOwogICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjFmNyAhaW1wb3J0YW50OwogICAgaGVpZ2h0OiAzLjY2NjY3cmVtOwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIG1hcmdpbi1yaWdodDogLTFweAp9Cgouc2VhcmNoLXdyYXBwZXIgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAzOwogICAgLXdlYmtpdC1mbGV4OiAzOwogICAgLW1zLWZsZXg6IDM7CiAgICBmbGV4OiAzCn0KCi5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOm50aC1jaGlsZCgyKSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuc2VsZWN0LWJhc2ljIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDI7CiAgICAtd2Via2l0LWZsZXg6IDI7CiAgICAtbXMtZmxleDogMjsKICAgIGZsZXg6IDIKfQoKLnNlYXJjaC13cmFwcGVyIC5mb3JtLWdyb3VwIC5zZWxlY3QtYmFzaWMgLmZvcm0tY29udHJvbCB7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMy42NjY2N3JlbQp9CgouY2FyZWVyLXNlYXJjaCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmNhcmVlci1zZWFyY2ggLnNlYXJjaC13cmFwcGVyIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIHotaW5kZXg6IDEKfQoKLmpvYi1jYXRlZ29yaWVzIC5jYXJkIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmluZm9ybWF0aW9uLWJveCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmUKfQoKLmluZm9ybWF0aW9uLXdyYXBwZXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiAtODBweDsKICAgIHotaW5kZXg6IDEKfQoKLmluZm9ybWF0aW9uLXdyYXBwZXIgLmNhcmQtaGVhZGVyIHsKICAgIHBhZGRpbmc6IDEuOHJlbSAyLjEzMzMzcmVtIDEuNjY2NjdyZW0KfQoKLmluZm9ybWF0aW9uLXdyYXBwZXIgdWwgbGkgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouaW5mb3JtYXRpb24td3JhcHBlciB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmluZm9ybWF0aW9uLXdyYXBwZXIgdWwgbGkgc3BhbiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5pbmZvcm1hdGlvbi13cmFwcGVyIHVsIGxpIHNwYW4gaSB7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIHBhZGRpbmctcmlnaHQ6IC41MzMzM3JlbTsKICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbQp9CgouaW5mb3JtYXRpb24td3JhcHBlciB1bCBsaSBzcGFuOmZpcnN0LWNoaWxkIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouYXBwbHktZm9ybSAuYXBwbHktZm9ybS0taGVhZGVyIHsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmFwcGx5LWZvcm0gLmFwcGx5LWZvcm0tLWhlYWRlciBoMyB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5hcHBseS1mb3JtIC5hcHBseS1mb3JtLS1oZWFkZXIgcCB7CiAgICBmb250LXNpemU6IDEuMnJlbQp9CgouYXBwbHktZm9ybSAuZm9ybS1ncm91cCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIG1hcmdpbi1ib3R0b206IDEuMzMzMzNyZW0KfQoKLmFwcGx5LWZvcm0gLmZvcm0tZ3JvdXAgbGFiZWwgewogICAgbWluLXdpZHRoOiAxMy4zMzMzM3JlbTsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5hcHBseS1mb3JtIC5mb3JtLWdyb3VwIGxhYmVsIC5zdXAgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLmFwcGx5LWZvcm0gLmZvcm0tZ3JvdXAgbGFiZWwgLm9wdGlvbmFsIHsKICAgIGNvbG9yOiAjOGM5NmEwCn0KCi5hcHBseS1mb3JtIC5mb3JtLWdyb3VwIC5zZWxlY3QtYmFzaWMgewogICAgd2lkdGg6IDEwMCUKfQoKLmFwcGx5LWZvcm0gZm9ybSBoNCAub3B0aW9uYWwgewogICAgY29sb3I6ICM5MTkyYTM7CiAgICBmb250LXdlaWdodDogNDAwCn0KCi50ZWFtLXByb2ZpbGUgLnRlYW0tZGV0YWlscyBoNCB7CiAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KfQoKLnRlYW0tcHJvZmlsZSAudGVhbS1kZXRhaWxzIHNwYW4gewogICAgZGlzcGxheTogYmxvY2s7CiAgICBsaW5lLWhlaWdodDogMS43Cn0KCi50ZWFtLXByb2ZpbGUgLnRlYW0tZGV0YWlscyBzcGFuIHN0cm9uZyB7CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5zZXJ2aWNlLXRhYi13cmFwcGVyIC5kb3dubG9hZC13aWRnZXQgewogICAgb3ZlcmZsb3c6IGhpZGRlbgp9Cgouc2VydmljZS10YWItd3JhcHBlciAuZG93bmxvYWQtd2lkZ2V0IC5oZWFkZXIgewogICAgcGFkZGluZzogMXJlbTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDFweDsKICAgIGJvcmRlci1jb2xvcjogI2U0ZThlZDsKICAgIGJvcmRlci1zdHlsZTogc29saWQKfQoKLnNlcnZpY2UtdGFiLXdyYXBwZXIgLmRvd25sb2FkLXdpZGdldCAuaGVhZGVyIGg2IHsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBtYXJnaW46IDAKfQoKLnNlcnZpY2UtdGFiLXdyYXBwZXIgLmRvd25sb2FkLXdpZGdldCAuY29udGVudCB7CiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMS4xMzMzM3JlbTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAuNHJlbSAuNHJlbTsKICAgIGJvcmRlci1yYWRpdXM6IDAgMCAuNHJlbSAuNHJlbQp9Cgouc2VydmljZS10YWItd3JhcHBlciAuZG93bmxvYWQtd2lkZ2V0IC5jb250ZW50IHAgewogICAgbWFyZ2luOiAxLjY2NjY3cmVtIDAgMCAwOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5zZXJ2aWNlLXRhYi13cmFwcGVyIC5kb3dubG9hZC13aWRnZXQgLmNvbnRlbnQgcCBzcGFuIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbWFyZ2luLXRvcDogNXB4OwogICAgZm9udC1zaXplOiAxM3B4OwogICAgY29sb3I6ICM5MTkyYTMKfQoKLnNlcnZpY2UtdGFiLXdyYXBwZXIgLmN0YS13aWRnZXQgewogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZAp9Cgouc2VydmljZS10YWItd3JhcHBlciAuY3RhLXdpZGdldCBoNiB7CiAgICBwYWRkaW5nOiAxcmVtOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkOwogICAgbWFyZ2luOiAwCn0KCi5zZXJ2aWNlLXRhYi13cmFwcGVyIC5jdGEtd2lkZ2V0IC5jb250ZW50IHsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHBhZGRpbmc6IDEuMzMzMzNyZW0gMnJlbSAycmVtCn0KCi5zZXJ2aWNlLXRhYi13cmFwcGVyIC5jdGEtd2lkZ2V0IC5jb250ZW50IHAgewogICAgbWFyZ2luOiAwCn0KCi5zZXJ2aWNlLXRhYi13cmFwcGVyIC5jdGEtd2lkZ2V0IC5jb250ZW50IHA+c3BhbiB7CiAgICBkaXNwbGF5OiBibG9jawp9Cgouc2VydmljZS10YWItd3JhcHBlciAuY3RhLXdpZGdldCAuY29udGVudCBwLmNhbGwtdXMgc3BhbjpsYXN0LWNoaWxkIHsKICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICBjb2xvcjogIzIwMjQyOAp9Cgouc2VydmljZS10YWItd3JhcHBlciAuY3RhLXdpZGdldCAuY29udGVudCBwLmNhbGwtdXMgc3BhbjpsYXN0LWNoaWxkIGkgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLmV2ZW50LWRldGFpbHMtaW50cm8gLnN1YnRleHQgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouZXZlbnQtZGV0YWlscy1pbnRybyBoMSB7CiAgICBsaW5lLWhlaWdodDogNHJlbQp9CgouZXZlbnQtZGV0YWlscy1pbnRybyAuY291bnRkb3duIHsKICAgIG1hcmdpbi10b3A6IDMuMzMzMzNyZW0KfQoKLmV2ZW50LW92ZXJ2aWV3IGg0IHsKICAgIG1hcmdpbi1ib3R0b206IDEzcHgKfQoKLmNvdW50ZG93biB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouY291bnRkb3duIGxpIHsKICAgIHdpZHRoOiA4cmVtOwogICAgaGVpZ2h0OiA4cmVtOwogICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgbWFyZ2luLXJpZ2h0OiAxLjMzMzMzcmVtOwogICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCn0KCi5jb3VudGRvd24gbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmNvdW50ZG93biBsaSBzcGFuOmZpcnN0LWNoaWxkIHsKICAgIGZvbnQtc2l6ZTogMi42NjY2N3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIGxpbmUtaGVpZ2h0OiAzLjMzMzMzcmVtCn0KCi5jb3VudGRvd24gbGkgc3BhbjpsYXN0LWNoaWxkIHsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC41KQp9CgouZXJyb3Itd3JhcHBlciB7CiAgICBwYWRkaW5nOiA3LjMzMzMzcmVtIDAKfQoKLmVycm9yLXdyYXBwZXIgLmVycm9yLWNvbnRlbnRzIGZpZ3VyZSB7CiAgICBtYXJnaW4tYm90dG9tOiAyLjI2NjY3cmVtCn0KCi5lcnJvci13cmFwcGVyIC5lcnJvci1jb250ZW50cyBmaWd1cmUgaW1nIHsKICAgIHdpZHRoOiAyNi42NjY2N3JlbQp9CgouZXJyb3Itd3JhcHBlciAuZXJyb3ItY29udGVudHMgaDMgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLmVycm9yLXdyYXBwZXIgLmVycm9yLWNvbnRlbnRzIHAgewogICAgbWFyZ2luOiAwIGF1dG87CiAgICB3aWR0aDogMzMuMzMzMzNyZW0KfQoKLmxvZ2luLXJlZ2lzdGVyIHsKICAgIGhlaWdodDogMTAwJTsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZQp9CgoubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciwKLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSAuZm9ybS13cmFwcGVyIHsKICAgIHBhZGRpbmc6IDAgMnJlbQp9CgoubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAuY2FyZCAuY2FyZC1oZWFkZXIgaDQsCi5sb2dpbi1yZWdpc3RlciAuc2lnbnVwLWZvcm0gLmZvcm0td3JhcHBlciAuY2FyZCAuY2FyZC1oZWFkZXIgaDQgewogICAgbWFyZ2luOiAxLjMzMzMzcmVtIDAKfQoKLmxvZ2luLXJlZ2lzdGVyIC5sb2dpbi1mb3JtIC5mb3JtLXdyYXBwZXIgLmNhcmQgLmNhcmQtYm9keSwKLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSAuZm9ybS13cmFwcGVyIC5jYXJkIC5jYXJkLWJvZHkgewogICAgcGFkZGluZy1ib3R0b206IDRyZW0KfQoKLmxvZ2luLXJlZ2lzdGVyIC5sb2dpbi1mb3JtIC5mb3JtLXdyYXBwZXIgLmNhcmQgLmNhcmQtYm9keSAuZm9ybS1ncm91cCwKLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSAuZm9ybS13cmFwcGVyIC5jYXJkIC5jYXJkLWJvZHkgLmZvcm0tZ3JvdXAgewogICAgbWFyZ2luLWJvdHRvbTogMS42NjY2N3JlbQp9CgoubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAuY2FyZCAuY2FyZC1ib2R5IC5jdXN0b20tY29udHJvbCwKLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSAuZm9ybS13cmFwcGVyIC5jYXJkIC5jYXJkLWJvZHkgLmN1c3RvbS1jb250cm9sIHsKICAgIHBhZGRpbmctbGVmdDogMAp9CgoubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGEsCi5sb2dpbi1yZWdpc3RlciAuc2lnbnVwLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGEgewogICAgbGluZS1oZWlnaHQ6IDIuNjY2NjdyZW07CiAgICBwYWRkaW5nOiAwIDEuMzMzMzNyZW07CiAgICBmb250LXNpemU6IC45MzMzM3JlbTsKICAgIG1hcmdpbi1yaWdodDogMS4zMzMzM3JlbTsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBib3JkZXItcmFkaXVzOiAuMnJlbQp9CgoubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGE6Zmlyc3QtY2hpbGQsCi5sb2dpbi1yZWdpc3RlciAuc2lnbnVwLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGE6Zmlyc3QtY2hpbGQgewogICAgY29sb3I6ICMwNmI1OTA7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDZiNTkwCn0KCi5sb2dpbi1yZWdpc3RlciAubG9naW4tZm9ybSAuZm9ybS13cmFwcGVyIC5vdGhlci1sb2dpbnMgYTpsYXN0LWNoaWxkLAoubG9naW4tcmVnaXN0ZXIgLnNpZ251cC1mb3JtIC5mb3JtLXdyYXBwZXIgLm90aGVyLWxvZ2lucyBhOmxhc3QtY2hpbGQgewogICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgY29sb3I6ICM0MTNhYTQ7CiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDEzYWE0Cn0KCi5sb2dpbi1yZWdpc3RlciAubG9naW4tZm9ybSB7CiAgICBwYWRkaW5nLXRvcDogMTEuNjY2NjdyZW07CiAgICBwYWRkaW5nLWJvdHRvbTogMTEuNjY2NjdyZW0KfQoKLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSB7CiAgICBwYWRkaW5nLXRvcDogNS42NjY2N3JlbTsKICAgIHBhZGRpbmctYm90dG9tOiA3LjMzMzMzcmVtCn0KCi5jb21pbmctc29vbiB7CiAgICBtaW4taGVpZ2h0OiA2NS4zMzMzM3JlbQp9CgouY29taW5nLXNvb24gLmNzLWNvbnRlbnRzIHsKICAgIHBhZGRpbmc6IDEwcmVtIDAKfQoKLmNvbWluZy1zb29uIC5jcy1jb250ZW50cyAuY3MtdGV4dCB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGZvbnQtc2l6ZTogMy4zMzMzM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogI2ZmZjsKICAgIG1hcmdpbjogMy4zMzMzM3JlbSAwIDIuMjY2NjdyZW0KfQoKLmNvbWluZy1zb29uIC5jcy1jb250ZW50cyBwIHsKICAgIHdpZHRoOiAzMy4zMzMzM3JlbTsKICAgIG1hcmdpbjogMCBhdXRvIDNyZW0gYXV0bzsKICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KTsKICAgIGZvbnQtc2l6ZTogMS4ycmVtCn0KCi5wcm9qZWN0LWxpc3QgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgoucHJvamVjdC1saXN0IC5jYXJkIHsKICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93OwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7CiAgICBmbGV4LWRpcmVjdGlvbjogcm93Cn0KCi5wcm9qZWN0LWxpc3QgLmNhcmQgZmlndXJlIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDI7CiAgICAtd2Via2l0LWZsZXg6IDI7CiAgICAtbXMtZmxleDogMjsKICAgIGZsZXg6IDIKfQoKLnByb2plY3QtbGlzdCAuY2FyZCAuY2FyZC1ib2R5IHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDI7CiAgICAtd2Via2l0LWZsZXg6IDI7CiAgICAtbXMtZmxleDogMjsKICAgIGZsZXg6IDI7CiAgICBwYWRkaW5nOiAyLjkzMzMzcmVtIDMuMzMzMzNyZW0KfQoKLnByb2plY3QtbGlzdCAuY2FyZCAuY2FyZC1ib2R5IGg1IHsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW0KfQoKLnByb2plY3QtbGlzdCAuY2FyZCAuY2FyZC1ib2R5IGg1IGEgewogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLnByb2plY3QtbGlzdCAuY2FyZCAuY2FyZC1ib2R5IGg1IGE6aG92ZXIgewogICAgY29sb3I6ICM0MTNhYTQKfQoKLnByb2plY3QtbWFzb25yeSAuZmlsdHItY29udGFpbmVyLW1hc29ucnkgLmZpbHRyLWl0ZW0gewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgoucHJvamVjdC1zaW5nbGUgLnByb2plY3QtaW5mbyAuaW5mby1ib3ggewogICAgcGFkZGluZzogMi4zMzMzM3JlbTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDEwNSwgMTA2LCAxMTksIC4wNSkKfQoKLnByb2plY3Qtc2luZ2xlIC5wcm9qZWN0LWluZm8gLmluZm8tYm94IGg2IHsKICAgIG1hcmdpbi1ib3R0b206IDI1cHgKfQoKLnByb2plY3Qtc2luZ2xlIC5wcm9qZWN0LWluZm8gLmluZm8tYm94IHVsIGxpIHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW07CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleAp9CgoucHJvamVjdC1zaW5nbGUgLnByb2plY3QtaW5mbyAuaW5mby1ib3ggdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5wcm9qZWN0LXNpbmdsZSAucHJvamVjdC1pbmZvIC5pbmZvLWJveCB1bCBsaSBzcGFuIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAtbXMtZmxleDogMTsKICAgIGZsZXg6IDEKfQoKLnByb2plY3Qtc2luZ2xlIC5wcm9qZWN0LWluZm8gLmluZm8tYm94IHVsIGxpIHNwYW46bGFzdC1jaGlsZCB7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLnByb2plY3QtZGVzYyBoNCB7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4Cn0KCi5wcm9qZWN0LWdhbGxlcnkgZmlndXJlIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLnByb2plY3QtZ2FsbGVyeSBmaWd1cmUgaW1nIHsKICAgIHdpZHRoOiAxMDAlCn0KCi5wcm9kdWN0cy13cmFwcGVyIC5wcm9kdWN0LXNvcnQgewogICAgbWFyZ2luLWJvdHRvbTogMi4zMzMzM3JlbQp9CgoucHJvZHVjdHMtd3JhcHBlciAucHJvZHVjdC1zb3J0IC5zb3J0LAoucHJvZHVjdHMtd3JhcHBlciAucHJvZHVjdC1zb3J0IC50b3RhbC1wYWdlcyB7CiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7CiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgIGZsZXgtYmFzaXM6IDA7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgIGZsZXgtZ3JvdzogMQp9CgoucHJvZHVjdHMtd3JhcHBlciAucHJvZHVjdC1zb3J0IC5zb3J0IHNwYW4gewogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgoucHJvZHVjdHMtd3JhcHBlciAucHJvZHVjdC1zb3J0IC5zb3J0IC5mb3JtLWdyb3VwIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDQ7CiAgICAtd2Via2l0LWZsZXg6IDQ7CiAgICAtbXMtZmxleDogNDsKICAgIGZsZXg6IDQKfQoKLnByb2R1Y3RzLXdyYXBwZXIgLnByb2R1Y3Qtc29ydCAudG90YWwtcGFnZXMgcCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyBoNCB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1wcmljZSB7CiAgICBmb250LXNpemU6IDEuNnJlbTsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogIzQxM2FhNDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgbWFyZ2luLWJvdHRvbTogLjMzMzMzcmVtCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1yYXRpbmdzIHsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LXJhdGluZ3MgcCB7CiAgICBtYXJnaW46IDAKfQoKLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LXJhdGluZ3MgcCBzcGFuIHsKICAgIGNvbG9yOiAjZmZhZjAwCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1yYXRpbmdzIC50b3RhbC1yZXZpZXdzIHsKICAgIG1hcmdpbi1sZWZ0OiAxcmVtCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1hY3Rpb25zIHsKICAgIG1hcmdpbjogMS4zMzMzM3JlbSAwOwogICAgcGFkZGluZzogMnJlbSAwOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9CgoucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtYWN0aW9ucyBmb3JtIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1hY3Rpb25zIGZvcm0gLnRvdGFsLWl0ZW0gewogICAgbWFyZ2luLXJpZ2h0OiAycmVtCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1hY3Rpb25zIGZvcm0gLnRvdGFsLWl0ZW0gLnBjb3VudCB7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBjdXJzb3I6IHBvaW50ZXIKfQoKLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LWFjdGlvbnMgZm9ybSAudG90YWwtaXRlbSBpbnB1dCB7CiAgICB3aWR0aDogM3JlbTsKICAgIGhlaWdodDogM3JlbTsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIGJvcmRlcjogMXB4IHNvbGlkICM5MTkyYTMKfQoKLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LWFjdGlvbnMgZm9ybSB1bCBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuMzMzMzNyZW0KfQoKLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LWFjdGlvbnMgZm9ybSB1bCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1yaWdodDogMAp9CgoucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtY2F0ZWdvcnkgewogICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICBhbGlnbi1pdGVtczogY2VudGVyCn0KCi5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1jYXRlZ29yeSBzcGFuIHsKICAgIG1hcmdpbi1yaWdodDogMS4zMzMzM3JlbQp9CgoucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtY2F0ZWdvcnkgcCB7CiAgICBtYXJnaW46IDAKfQoKLnByb2R1Y3QtaW5mby10YWIgLnJldmlldy13cmFwcGVyIC5yZXZpZXdzIHsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW07CiAgICBtYXJnaW4tdG9wOiAzLjMzMzMzcmVtOwogICAgcGFkZGluZzogMCAyLjY2NjY3cmVtCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIHBhZGRpbmctYm90dG9tOiAyLjMzMzMzcmVtOwogICAgbWFyZ2luLWJvdHRvbTogMi4zMzMzM3JlbTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LWRldGFpbHMgewogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgoucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlld3MgLnJldmlldy1zaW5nbGUgLnJldmlldy1kZXRhaWxzIHVsIGxpIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWFyZ2luLWJvdHRvbTogLjg2NjY3cmVtCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LWRldGFpbHMgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LWRldGFpbHMgdWwgbGkgc3BhbiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LWRldGFpbHMgdWwgbGkgLnN0cm9uZyB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAzOwogICAgLXdlYmtpdC1mbGV4OiAzOwogICAgLW1zLWZsZXg6IDM7CiAgICBmbGV4OiAzOwogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNTAwCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LWRldGFpbHMgdWwgbGkgLnN0cm9uZyBzcGFuIHsKICAgIGNvbG9yOiAjZmZhZjAwOwogICAgZm9udC1zaXplOiAxMnB4Cn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSAucmV2aWV3LXRleHQgewogICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgIC13ZWJraXQtZmxleDogMTsKICAgIC1tcy1mbGV4OiAxOwogICAgZmxleDogMQp9CgoucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlldy1mb3JtIHsKICAgIHBhZGRpbmc6IDRyZW0KfQoKLnByb2R1Y3QtaW5mby10YWIgLnJldmlldy13cmFwcGVyIC5yZXZpZXctZm9ybSBoNCB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbQp9CgoucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlldy1mb3JtIHAgewogICAgbWFyZ2luOiAwCn0KCi5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3LWZvcm0gcCBhIHsKICAgIGNvbG9yOiAjNWE2NjcxOwogICAgZm9udC1zaXplOiAxLjJyZW0KfQoKLnByb2R1Y3QtaW5mby10YWIgLnJldmlldy13cmFwcGVyIC5yZXZpZXctZm9ybSBmb3JtIHsKICAgIG1hcmdpbi10b3A6IDNyZW0KfQoKLnByb2R1Y3QtaW5mby10YWIgLnJldmlldy13cmFwcGVyIC5yZXZpZXctZm9ybSBmb3JtIGlucHV0LAoucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlldy1mb3JtIGZvcm0gdGV4dGFyZWEgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgoucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlldy1mb3JtIGZvcm0gLnJhdGluZyBzcGFuIHsKICAgIHBhZGRpbmctYm90dG9tOiAuNnJlbTsKICAgIG1hcmdpbi1yaWdodDogMXJlbTsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgZm9udC13ZWlnaHQ6IDUwMAp9CgouYnItdGhlbWUtZm9udGF3ZXNvbWUtc3RhcnMgLmJyLXdpZGdldCB7CiAgICBoZWlnaHQ6IDI4cHg7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwCn0KCi5ici10aGVtZS1mb250YXdlc29tZS1zdGFycyAuYnItd2lkZ2V0IGEgewogICAgZm9udC1mYW1pbHk6IExpbmVBd2Vzb21lLCBzYW5zLXNlcmlmOwogICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87CiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIG1hcmdpbi1yaWdodDogMnB4Cn0KCi5ici10aGVtZS1mb250YXdlc29tZS1zdGFycyAuYnItd2lkZ2V0IGE6YWZ0ZXIgewogICAgY29udGVudDogIlxmMzE4IjsKICAgIGNvbG9yOiAjZDJkMmQyCn0KCi5ici10aGVtZS1mb250YXdlc29tZS1zdGFycyAuYnItd2lkZ2V0IGEuYnItYWN0aXZlOmFmdGVyIHsKICAgIGNvbG9yOiAjZjJiMDFlCn0KCi5ici10aGVtZS1mb250YXdlc29tZS1zdGFycyAuYnItd2lkZ2V0IGEuYnItc2VsZWN0ZWQ6YWZ0ZXIgewogICAgY29sb3I6ICNmMmIwMWUKfQoKLmJyLXRoZW1lLWZvbnRhd2Vzb21lLXN0YXJzIC5ici13aWRnZXQgLmJyLWN1cnJlbnQtcmF0aW5nIHsKICAgIGRpc3BsYXk6IG5vbmUKfQoKLmJyLXRoZW1lLWZvbnRhd2Vzb21lLXN0YXJzIC5ici1yZWFkb25seSBhIHsKICAgIGN1cnNvcjogZGVmYXVsdAp9CgpAbWVkaWEgcHJpbnQgewogICAgLmJyLXRoZW1lLWZvbnRhd2Vzb21lLXN0YXJzIC5ici13aWRnZXQgYTphZnRlciB7CiAgICAgICAgY29udGVudDogJ1xmMzE4JzsKICAgICAgICBjb2xvcjogIzAwMAogICAgfQogICAgLmJyLXRoZW1lLWZvbnRhd2Vzb21lLXN0YXJzIC5ici13aWRnZXQgYS5ici1hY3RpdmU6YWZ0ZXIsCiAgICAuYnItdGhlbWUtZm9udGF3ZXNvbWUtc3RhcnMgLmJyLXdpZGdldCBhLmJyLXNlbGVjdGVkOmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnXGYzMTgnOwogICAgICAgIGNvbG9yOiAjMDAwCiAgICB9Cn0KCi5jYXJ0LXRhYmxlIHRoZWFkIHRoIHsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlOGVkOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIHBhZGRpbmc6IDFyZW0gMAp9CgouY2FydC10YWJsZSB0aGVhZCB0aCt0aCB7CiAgICBwYWRkaW5nLWxlZnQ6IDQuNjY2NjdyZW0KfQoKLmNhcnQtdGFibGUgdGhlYWQgdGggc3BhbiB7CiAgICBmb250LXNpemU6IDEuMDY2NjdyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgY29sb3I6ICMyMDI0MjgKfQoKLmNhcnQtdGFibGUgdGhlYWQgdGggc3BhbjpsYXN0LWNoaWxkIHsKICAgIHRleHQtYWxpZ246IHJpZ2h0Cn0KCi5jYXJ0LXRhYmxlIC5jYXJ0LXNpbmdsZSB0ZCwKLmNhcnQtdGFibGUgLmNhcnQtc2luZ2xlIHRoIHsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgICBwYWRkaW5nOiAxLjMzMzMzcmVtIDAKfQoKLmNhcnQtdGFibGUgLmNhcnQtc2luZ2xlIHRkK3RkIHsKICAgIHBhZGRpbmctbGVmdDogNC42NjY2N3JlbQp9CgouY2FydC10YWJsZSAuY2FydC1zaW5nbGUgLm5hbWUgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICBmbGV4LXdyYXA6IHdyYXAKfQoKLmNhcnQtdGFibGUgLmNhcnQtc2luZ2xlIC5uYW1lIGEgewogICAgZm9udC1zaXplOiAxLjJyZW07CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbGluZS1oZWlnaHQ6IDEuNzMzMzNyZW07CiAgICBjb2xvcjogIzIwMjQyODsKICAgIG1hcmdpbi1sZWZ0OiAycmVtOwogICAgLXdlYmtpdC1ib3gtZmxleDogMjsKICAgIC13ZWJraXQtZmxleDogMjsKICAgIC1tcy1mbGV4OiAyOwogICAgZmxleDogMgp9CgouY2FydC10YWJsZSAuY2FydC1zaW5nbGUgLnRvdGFsLWl0ZW0gaW5wdXQgewogICAgd2lkdGg6IDNyZW07CiAgICBoZWlnaHQ6IDNyZW07CiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTE5MmEzOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5jYXJ0LXRhYmxlIC5jYXJ0LXNpbmdsZSAudG90YWwtaXRlbSBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sCi5jYXJ0LXRhYmxlIC5jYXJ0LXNpbmdsZSAudG90YWwtaXRlbSBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24gewogICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgbWFyZ2luOiAwCn0KCi5jYXJ0LXRhYmxlIC5jYXJ0LXNpbmdsZSAucmVtb3ZlIGEgewogICAgZm9udC1zaXplOiAxLjMzMzMzcmVtCn0KCi5jYXJ0LXRhYmxlIC5jYXJ0LWJvdHRvbSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbQp9CgouY2FydC10YWJsZSAuY2FydC1ib3R0b20gdGQgewogICAgcGFkZGluZzogMnJlbSAwOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KCi5jYXJ0LXRhYmxlIC5jYXJ0LWJvdHRvbSBmb3JtIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWF4LXdpZHRoOiAyNC42NjY2N3JlbQp9CgouY2FydC10YWJsZSAuY2FydC1ib3R0b20gZm9ybSBidXR0b24gewogICAgbWFyZ2luLWxlZnQ6IDJyZW0KfQoKLmNhcnQtdGFibGUgLmNhcnQtYm90dG9tIC50b3RhbC1hbW91bnQgc3BhbiB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLmNhcnQtdGFibGUgLmNhcnQtYWN0aW9ucyB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgIGZsZXgtd3JhcDogd3JhcAp9CgouY2FydC10YWJsZSAuY2FydC1hY3Rpb25zIC5tbC1hdXRvIGE6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tbGVmdDogLjQ2NjY3cmVtCn0KCi5jYXJ0LXRhYmxlLmNhcnQtdGFibGUtLTIgdGhlYWQgdGggewogICAgcGFkZGluZzogMS42NjY2N3JlbSAwCn0KCi5jYXJ0LXRhYmxlLmNhcnQtdGFibGUtLTIgdGhlYWQgdGg6bGFzdC1jaGlsZCB7CiAgICBwYWRkaW5nLWxlZnQ6IDRyZW0KfQoKLmNhcnQtdGFibGUuY2FydC10YWJsZS0tMiAuY2FydC1ib3R0b20gdGQgewogICAgYm9yZGVyLWJvdHRvbTogMAp9CgoudWttIC5maWx0ZXItaXRlbSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMzBweAp9CgouY2hlY2tvdXQtd3JhcHBlciAubmF2LWl0ZW0gewogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi5jaGVja291dC13cmFwcGVyIC5uYXYtaXRlbTpiZWZvcmUgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgY29udGVudDogIlxmMTg2IjsKICAgIGZvbnQtZmFtaWx5OiBMaW5lQXdlc29tZSwgc2Fucy1zZXJpZjsKICAgIGZvbnQtc2l6ZTogMjBweDsKICAgIHJpZ2h0OiAtNzVweDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgY29sb3I6IHJnYmEoNTksIDYyLCAxMjEsIC41KQp9CgouY2hlY2tvdXQtd3JhcHBlciAubmF2LWl0ZW06bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmNoZWNrb3V0LXdyYXBwZXIgLm5hdi1pdGVtOmxhc3QtY2hpbGQ6YmVmb3JlIHsKICAgIGNvbnRlbnQ6IG5vbmUKfQoKLmNoZWNrb3V0LXdyYXBwZXIgLm5hdi1pdGVtIC5uYXYtbGluayB7CiAgICBwYWRkaW5nOiAwCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCBoNCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMS41MzMzM3JlbTsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW07CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZAp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgZm9ybSAuZm9ybS1ncm91cCB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjY2NjY3cmVtCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCBmb3JtIC5zaGlwcGluZy1tZXRob2QgLmN1c3RvbS1jb250cm9sIHsKICAgIHBhZGRpbmctbGVmdDogMAp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm1ldGhvZC0xIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCAubWV0aG9kLTEgLmhlYWRlciB7CiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY3OwogICAgcGFkZGluZzogMS42NjY2N3JlbSAycmVtCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCAubWV0aG9kLTEgLmJvZHkgewogICAgcGFkZGluZzogMi42NjY2N3JlbQp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm1ldGhvZC0xIC5ib2R5IHAgewogICAgbWFyZ2luLWJvdHRvbTogMy4zMzMzM3JlbQp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm1ldGhvZC0xIC5ib2R5IHAgaW1nIHsKICAgIG1hcmdpbi1sZWZ0OiAxLjMzMzMzcmVtCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCAubWV0aG9kLTEgLmJvZHkgaW5wdXQgewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm1ldGhvZC0yIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmNoZWNrb3V0LXdyYXBwZXIgLnRhYi1jb250ZW50IC5tZXRob2QtMiAuaGVhZGVyIHsKICAgIGJhY2tncm91bmQ6ICNmNWY1Zjc7CiAgICBwYWRkaW5nOiAxLjY2NjY3cmVtIDJyZW0KfQoKLmNoZWNrb3V0LXdyYXBwZXIgLnRhYi1jb250ZW50IC5vcmRlci1pbmZvIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLmNoZWNrb3V0LXdyYXBwZXIgLnRhYi1jb250ZW50IC5vcmRlci1pbmZvIGg2IHsKICAgIG1hcmdpbjogMCAwIDJyZW0gMDsKICAgIHBhZGRpbmctYm90dG9tOiAxLjMzMzMzcmVtOwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLmNoZWNrb3V0LXdyYXBwZXIgLnRhYi1jb250ZW50IC5vcmRlci1pbmZvIHVsIGxpIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm9yZGVyLWluZm8gdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5jaGVja291dC13cmFwcGVyIC50YWItY29udGVudCAub3JkZXItaW5mbyB1bCBsaSBzcGFuIHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAtbXMtZmxleDogMTsKICAgIGZsZXg6IDEKfQoKLmNoZWNrb3V0LXdyYXBwZXIgLnRhYi1jb250ZW50IC5vcmRlci1pbmZvIHVsIGxpIHNwYW46bGFzdC1jaGlsZCB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouY2hlY2tvdXQtY29uZmlybSBoMiB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjY2NjY3cmVtCn0KCi5jaGVja291dC1jb25maXJtIHAgewogICAgbWFyZ2luLWJvdHRvbTogMi42NjY2N3JlbQp9CgouY2hlY2tvdXQtY29uZmlybSBmb3JtIHsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW0KfQoKLmJsb2ctZ3JpZC13cmFwcGVyIC5wb3N0LS1jYXJkIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmJsb2ctd3JhcHBlciAuYmxvZy1zaW5nbGUgewogICAgbWFyZ2luLWJvdHRvbTogMy4zMzMzM3JlbQp9CgouYmxvZy1ncmlkLW1hc29ucnkgLmZpbHRyLWl0ZW0gewogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1nYWxsZXJ5IHsKICAgIG1hcmdpbi1ib3R0b206IC0ycmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWdhbGxlcnkgZmlndXJlIHsKICAgIG1hcmdpbi1ib3R0b206IDJyZW0KfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtZGV0YWlscyBpbWcgewogICAgd2lkdGg6IDEwMCUKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtZGV0YWlscyAucG9zdC1oZWFkIHsKICAgIG1hcmdpbi1ib3R0b206IDIuNDY2NjdyZW0KfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtZGV0YWlscyAucG9zdC1jb250ZW50IC5wb3N0LWhlYWRlciB7CiAgICBtYXJnaW4tYm90dG9tOiAycmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWRldGFpbHMgLnBvc3QtY29udGVudCAucG9zdC1oZWFkZXIgaDMgewogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWRldGFpbHMgLnBvc3QtY29udGVudCAucG9zdC1oZWFkZXIgdWwgewogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWRldGFpbHMgLnBvc3QtY29udGVudCAucG9zdC1oZWFkZXIgdWwgbGkgewogICAgbWFyZ2luLXJpZ2h0OiAxLjMzMzMzcmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWRldGFpbHMgLnBvc3QtY29udGVudCAucG9zdC1oZWFkZXIgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtZGV0YWlscyAucG9zdC1jb250ZW50IC5wb3N0LWhlYWRlciB1bCBsaSBhIHsKICAgIGNvbG9yOiAjMjAyNDI4Cn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWJvdHRvbSB7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBwYWRkaW5nOiAycmVtIDA7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZThlZDsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkOwogICAgbWFyZ2luOiAzcmVtIDAgNC42NjY2N3JlbSAwCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWJvdHRvbSAudGFncyB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWJvdHRvbSAudGFncyB1bCBsaSB7CiAgICBtYXJnaW4tcmlnaHQ6IC42NjY2N3JlbQp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1ib3R0b20gLnRhZ3MgdWwgbGk6bGFzdC1jaGlsZCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtYm90dG9tIC50YWdzIHVsIGxpIGEgewogICAgbGluZS1oZWlnaHQ6IDEuODY2NjdyZW07CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQ7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4ycmVtOwogICAgYm9yZGVyLXJhZGl1czogLjJyZW07CiAgICBwYWRkaW5nOiAwIC44cmVtOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICBjb2xvcjogIzVhNjY3MTsKICAgIGZvbnQtc2l6ZTogLjkzMzMzcmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWJvdHRvbSAudGFncyB1bCBsaSBhOmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1ib3R0b20gLnNvY2lhbC1zaGFyZSB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxOwogICAgLXdlYmtpdC1ib3gtcGFjazogZW5kOwogICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOwogICAgLW1zLWZsZXgtcGFjazogZW5kOwogICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1hdXRob3IgewogICAgcGFkZGluZzogMi42NjY2N3JlbTsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgbWFyZ2luLWJvdHRvbTogNHJlbQp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1hdXRob3IgLmF1dGhvci10aHVtYiB7CiAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgLXdlYmtpdC1mbGV4OiAxOwogICAgLW1zLWZsZXg6IDE7CiAgICBmbGV4OiAxCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWF1dGhvciAuYXV0aG9yLWluZm8gewogICAgLXdlYmtpdC1ib3gtZmxleDogNDsKICAgIC13ZWJraXQtZmxleDogNDsKICAgIC1tcy1mbGV4OiA0OwogICAgZmxleDogNAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1hdXRob3IgLmF1dGhvci1pbmZvIGg1IHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLWJvdHRvbTogMXJlbQp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1hdXRob3IgLmF1dGhvci1pbmZvIGg1IHNwYW4gewogICAgY29sb3I6ICM0MTNhYTQKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZThlZDsKICAgIHBhZGRpbmctYm90dG9tOiA0cmVtCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLm5leHQtcG9zdCwKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiAucHJldi1wb3N0IHsKICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAtbXMtZmxleDogMTsKICAgIGZsZXg6IDEKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiAubmV4dC1wb3N0PnNwYW4sCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLnByZXYtcG9zdD5zcGFuIHsKICAgIGRpc3BsYXk6IGJsb2NrCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLm5leHQtcG9zdCAudGl0bGUsCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLnByZXYtcG9zdCAudGl0bGUgewogICAgZm9udC1zaXplOiAxNnB4OwogICAgY29sb3I6ICMyMDI0Mjg7CiAgICBmb250LXdlaWdodDogNTAwOwogICAgbWFyZ2luOiAuNjY2NjdyZW0gMDsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiAubmV4dC1wb3N0IC50aXRsZTpob3ZlciwKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiAucHJldi1wb3N0IC50aXRsZTpob3ZlciB7CiAgICBjb2xvcjogIzQxM2FhNAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1wYWdpbmF0aW9uIC5uZXh0LXBvc3QgcCwKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnBvc3QtcGFnaW5hdGlvbiAucHJldi1wb3N0IHAgewogICAgbWFyZ2luOiAwCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LXBhZ2luYXRpb24gLm5leHQtcG9zdCB7CiAgICB0ZXh0LWFsaWduOiByaWdodAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucmVsYXRlZC1wb3N0IHsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlOGVkCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5yZWxhdGVkLXBvc3QgLnJlbGF0ZWQtcG9zdC0tdGl0bGUgewogICAgbWFyZ2luLWJvdHRvbTogMS44cmVtOwogICAgdGV4dC1hbGlnbjogY2VudGVyCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5yZWxhdGVkLXBvc3QgLnJlbGF0ZWQtcG9zdC0tdGl0bGUgaDQgewogICAgbWFyZ2luOiAwCn0KCi5ibG9nLXNpbmdsZS13cmFwcGVyIC5yZWxhdGVkLXBvc3QgLnNpbmdsZS1wb3N0IHsKICAgIG1hcmdpbi1ib3R0b206IDMuMzMzMzNyZW0KfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnJlbGF0ZWQtcG9zdCAuc2luZ2xlLXBvc3QgaDYgewogICAgbWFyZ2luOiAxLjJyZW0gMCAuMzMzMzNyZW07CiAgICBmb250LXNpemU6IDFyZW0KfQoKLmJsb2ctc2luZ2xlLXdyYXBwZXIgLnJlbGF0ZWQtcG9zdCAuc2luZ2xlLXBvc3QgaDYgYSB7CiAgICBjb2xvcjogIzIwMjQyOAp9CgouYmxvZy1zaW5nbGUtd3JhcHBlciAucmVsYXRlZC1wb3N0IC5zaW5nbGUtcG9zdCBwIHsKICAgIGZvbnQtc2l6ZTogLjkzMzMzcmVtCn0KCi5jb21tZW50cy1hcmVhIC5jb21tZW50LXRpdGxlIHsKICAgIG1hcmdpbi1ib3R0b206IDEuNjY2NjdyZW07CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIKfQoKLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtdGl0bGUgaDMgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWFyZ2luLWJvdHRvbTogMAp9CgouY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0cyB1bCAuZGVwdGgtMSB7CiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMS42cmVtOwogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZDsKICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtOwogICAgYm9yZGVyLXJhZGl1czogLjI2NjY3cmVtOwogICAgbWFyZ2luLWJvdHRvbTogMnJlbQp9CgouY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0cyB1bCAuZGVwdGgtMTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDAKfQoKLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdHMgdWwgLmRlcHRoLTEgLm1lZGlhIHsKICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4Cn0KCi5jb21tZW50cy1hcmVhIC5jb21tZW50LWxpc3RzIHVsIC5kZXB0aC0xIC5tZWRpYSAubWVkaWEtYm9keSB7CiAgICBtYXJnaW4tbGVmdDogMS42NjY2N3JlbQp9CgouY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0cyB1bCAuZGVwdGgtMSAubWVkaWEgLm1lZGlhLWJvZHkgLm1lZGlhX3RvcCB7CiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7CiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtCn0KCi5jb21tZW50cy1hcmVhIC5jb21tZW50LWxpc3RzIHVsIC5kZXB0aC0xIC5tZWRpYSAubWVkaWEtYm9keSAubWVkaWFfdG9wIGg2IHsKICAgIG1hcmdpbi1ib3R0b206IC40NjY2N3JlbQp9CgouY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0cyB1bCAuZGVwdGgtMSAubWVkaWEgLm1lZGlhLWJvZHkgLm1lZGlhX3RvcCAucmVwbHkgewogICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZDsKICAgIGNvbG9yOiAjNWE2NjcxOwogICAgbGluZS1oZWlnaHQ6IDIuMjY2NjdyZW07CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEuNjY2NjdyZW07CiAgICBib3JkZXItcmFkaXVzOiAxLjY2NjY3cmVtOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIGZvbnQtc2l6ZTogLjg2NjY3cmVtOwogICAgcGFkZGluZzogMCAxcmVtOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UKfQoKLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdHMgdWwgLmRlcHRoLTEgLm1lZGlhIC5tZWRpYS1ib2R5IC5tZWRpYV90b3AgLnJlcGx5OmhvdmVyIHsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZDogIzQxM2FhNDsKICAgIGJvcmRlci1jb2xvcjogIzQxM2FhNAp9CgouY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0cyB1bCAuZGVwdGgtMSAubWVkaWEgcCB7CiAgICBtYXJnaW46IDAKfQoKLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdHMgdWwgLmRlcHRoLTEgLmRlcHRoLTIgewogICAgcGFkZGluZy1sZWZ0OiAyLjY2NjY3cmVtOwogICAgbWFyZ2luLXRvcDogMnJlbTsKICAgIHBhZGRpbmctdG9wOiAycmVtOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNGU4ZWQKfQoKLmNvbW1lbnQtZm9ybSB7CiAgICBwYWRkaW5nOiAzcmVtIDIuNjY2NjdyZW0KfQoKLmNvbW1lbnQtZm9ybSAuY29tbWVudC10aXRsZSBoNSB7CiAgICBjb2xvcjogIzIwMjQyODsKICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbQp9CgouY29tbWVudC1mb3JtIGZvcm0gdGV4dGFyZWEgewogICAgaGVpZ2h0OiA4LjMzMzMzcmVtCn0KCi52aWRlby1iYWNrZ3JvdW5kIHsKICAgIGhlaWdodDogNTAwcHggIWltcG9ydGFudDsKICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQKfQoKLnZpZGVvLWJhY2tncm91bmQgLnZpZGVvLWNvbnRlbnQgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgdG9wOiA1MCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkKfQoKLnZpZGVvLWJhY2tncm91bmQgLnZpZGVvLWNvbnRlbnQgaDIgewogICAgY29sb3I6ICNmZmY7CiAgICBtYXJnaW4tYm90dG9tOiAwCn0KCi5uZXdzLWFyZWEgLnNlY3Rpb24tdGl0bGUgewogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgbWFyZ2luLWJvdHRvbTogMi4wNjY2N3JlbQp9CgoubmV3cy1hcmVhIC5zZWN0aW9uLXRpdGxlIGgyIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbWFyZ2luLWJvdHRvbTogMS4wNjY2N3JlbQp9CgoubmV3cy1hcmVhIC5zZWN0aW9uLXRpdGxlIHAgewogICAgY29sb3I6ICMyMDI0MjgKfQoKLmFib3V0LXdyYXBwZXIgLmFib3V0LWNvbnRlbnRzIGgzIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDIuOHJlbTsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0KfQoKLmFib3V0LXdyYXBwZXIgLmFib3V0LWNvbnRlbnRzIHAgewogICAgbWFyZ2luOiAxLjMzMzMzcmVtIDAgMCAwCn0KCi5hYm91dC13cmFwcGVyIC5hYm91dC1jb250ZW50cyAuc3ViLXRpdGxlIHsKICAgIGZvbnQtc2l6ZTogMS4zMzMzM3JlbTsKICAgIGZvbnQtd2VpZ2h0OiA1MDAKfQoKLnRlYW0td3JhcHBlciB7CiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1nL3NoYXBlMS5wbmcpIGNlbnRlci8xMDAlIDEwMCUgbm8tcmVwZWF0OwogICAgcGFkZGluZzogNy4zMzMzM3JlbSAwOwogICAgcG9zaXRpb246IHJlbGF0aXZlCn0KCi50ZWFtLXdyYXBwZXI6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICcnOwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgd2lkdGg6IDMwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIGxlZnQ6IDA7CiAgICB0b3A6IDA7CiAgICBiYWNrZ3JvdW5kOiAjZjdmNmZjOwogICAgei1pbmRleDogLTEKfQoKLnRlYW0td3JhcHBlcjphZnRlciB7CiAgICBjb250ZW50OiAnJzsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHdpZHRoOiA3MCU7CiAgICBoZWlnaHQ6IDEwMCU7CiAgICByaWdodDogMDsKICAgIHRvcDogMDsKICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA2YjU5MCwgIzQxM2FhNCk7CiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDZiNTkwLCAjNDEzYWE0KTsKICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtNDVkZWcsICMwNmI1OTAsICM0MTNhYTQpOwogICAgei1pbmRleDogLTEKfQoKLnRlYW0td3JhcHBlciAudGl0bGUtYm94IHsKICAgIGJhY2tncm91bmQ6ICNmZmY7CiAgICBwYWRkaW5nOiA0cmVtOwogICAgaGVpZ2h0OiAxMDAlOwogICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbTsKICAgIGJvcmRlci1yYWRpdXM6IC4yNjY2N3JlbTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMzBweCByZ2JhKDQxLCA0MSwgNTksIC4xKTsKICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSg0MSwgNDEsIDU5LCAuMSkKfQoKLnRlYW0td3JhcHBlciAudGl0bGUtYm94IGgyIHsKICAgIGNvbG9yOiAjMjAyNDI4OwogICAgbGluZS1oZWlnaHQ6IDMuMnJlbTsKICAgIG1hcmdpbjogMAp9CgoudGVzdGltb25pYWxzIC5vd2wtY2Fyb3VzZWwgewogICAgbWFyZ2luLXRvcDogLTFyZW0KfQoKQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIGFuZCAobWF4LXdpZHRoOjExOTlweCkgewogICAgLm1lbnVfYXJlYS5tZW51MSAubmF2X3JpZ2h0X2NvbnRlbnQgLnNlYXJjaF9tb2R1bGUgewogICAgICAgIGRpc3BsYXk6IG5vbmUKICAgIH0KICAgIC50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSB7CiAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwOwogICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwOwogICAgICAgIGZsZXgtYmFzaXM6IDA7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTsKICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgICBmbGV4LWdyb3c6IDEKICAgIH0KICAgIC50b3BfYmFyIC5pbmZvcyAuaW5mb3MtLXNpbmdsZSsuaW5mb3MtLXNpbmdsZSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHgKICAgIH0KICAgIC5mb290ZXJfX3NtYWxsIC5jb250ZW50LWxlZnQsCiAgICAuZm9vdGVyX19zbWFsbCAuY29udGVudC1yaWdodCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAgICAgLW1zLWZsZXg6IDE7CiAgICAgICAgZmxleDogMQogICAgfQogICAgLmZvb3Rlcl9fc21hbGwgLmNvbnRlbnQtcmlnaHQgewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kOwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgICAgIGRpc3BsYXk6IGZsZXgKICAgIH0KICAgIGZvb3Rlci5mb290ZXI0IC5mb290ZXJfX3NtYWxsIC5pbmZvX2xpbmtzOmJlZm9yZSB7CiAgICAgICAgY29udGVudDogbm9uZQogICAgfQogICAgLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZTpudGgtY2hpbGQoMm4rMSkgLmljb246YmVmb3JlIHsKICAgICAgICBjb250ZW50OiB1cmwoaW1nL2Fycm93LXVwLXNtLnBuZykKICAgIH0KICAgIC5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGUgLmljb246YmVmb3JlIHsKICAgICAgICBjb250ZW50OiB1cmwoaW1nL2Fycm93LWRvd24tc20ucG5nKQogICAgfQogICAgLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZSAuaWNvbjpiZWZvcmUgewogICAgICAgIHJpZ2h0OiAtNTglCiAgICB9CiAgICAucHJpY2luZy5wcmljaW5nLS0yIHsKICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuZXZlbnQtc2luZ2xlIHsKICAgICAgICBoZWlnaHQ6IGF1dG8KICAgIH0KICAgIC5ldmVudC1zaW5nbGUgLmV2ZW50LWluZm8gLnZpZXctYnRuIHsKICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICBtYXJnaW4tdG9wOiAxLjMzMzMzcmVtCiAgICB9CiAgICAudGVzdGltb25pYWwtY2Fyb3VzZWwtdGhyZWUgLmNhcmQtLXRlc3RpbW9uaWFsMiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMAogICAgfQogICAgLnRlc3RpbW9uaWFscyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW0KICAgIH0KICAgIC5zZWFyY2gtd3JhcHBlciBmb3JtIC5mb3JtLWdyb3VwIGJ1dHRvbiB7CiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwCiAgICB9CiAgICAuc2VydmljZS10YWItd3JhcHBlciAuY3RhLXdpZGdldCB7CiAgICAgICAgcGFkZGluZzogMnJlbSAxcmVtCiAgICB9CiAgICAub3RoZXItbG9naW5zIHsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKICAgIH0KICAgIC5wcm9qZWN0LWxpc3QgLmNhcmQgZmlndXJlIHsKICAgICAgICAtd2Via2l0LWFsaWduLXNlbGY6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyCiAgICB9CiAgICAuY2FydC10YWJsZSAuY2FydC1zaW5nbGUgLm5hbWUgYSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMzMzMzNyZW0KICAgIH0KICAgIC5jYXJkLWJvZHkgewogICAgICAgIHBhZGRpbmc6IDIuM3JlbQogICAgfQogICAgLmNhcmQtLXRlc3RpbW9uaWFsIHsKICAgICAgICBwYWRkaW5nOiAyLjMzMzMzcmVtCiAgICB9CiAgICAuY2FyZCAuY2FyZC1mb290ZXIgewogICAgICAgIHBhZGRpbmc6IDJyZW0KICAgIH0KICAgIC5hZGRyZXNzLWJsb2NrcyAuYWRyZXNzIHsKICAgICAgICBwYWRkaW5nOiAwCiAgICB9CiAgICAudGVhbS13cmFwcGVyIC50aXRsZS1ib3ggewogICAgICAgIHBhZGRpbmc6IDJyZW0KICAgIH0KICAgIC5zZXJ2aWNlLXRhYi13cmFwcGVyIC5jdGEtd2lkZ2V0IC5jb250ZW50IHsKICAgICAgICBwYWRkaW5nOiAwCiAgICB9CiAgICAucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX19mZWF0dXJlc19saXN0IHsKICAgICAgICBwYWRkaW5nOiAzMHB4CiAgICB9CiAgICAucHJpY2luZy5wcmljaW5nLS0yIC5wcmljaW5nX19mZWF0dXJlc19saXN0IHVsLmxpc3QgewogICAgICAgIG1hcmdpbi10b3A6IDMwcHgKICAgIH0KICAgIHNlY3Rpb24uaW50cm8tYXJlYSB7CiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuCiAgICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOjk5MXB4KSB7CiAgICAubWFyZ2luLW1kLTYwIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtCiAgICB9CiAgICAubWFyZ2luLW1kLTYwIHAgewogICAgICAgIG1hcmdpbi1ib3R0b206IDAKICAgIH0KICAgIC5tZW51X2FyZWEgLm5hdmJhciAubmF2YmFyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLm5hdi1saW5rOmJlZm9yZSB7CiAgICAgICAgcmlnaHQ6IDIwcHg7CiAgICAgICAgZm9udC1zaXplOiAxM3B4CiAgICB9CiAgICAubWVudV9hcmVhIC5uYXZiYXIgLm5hdmJhci1uYXYgLm5hdi1pdGVtIC5uYXYtbGluayB7CiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4OwogICAgICAgIGNvbG9yOiAjMjAyNDI4CiAgICB9CiAgICAubWVudV9hcmVhIC5uYXZiYXIubmF2YmFyLWJnIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlIHsKICAgICAgICBjb2xvcjogaW5oZXJpdAogICAgfQogICAgLm1lbnVfYXJlYSAubmF2YmFyLW5hdiAubmF2LWl0ZW0+Lm5hdi1saW5rIHsKICAgICAgICBjb2xvcjogIzIwMjQyOAogICAgfQogICAgLm1lbnVfYXJlYSAubmF2YmFyLW5hdiAubmF2LWl0ZW0+Lm5hdi1saW5rLmFjdGl2ZSB7CiAgICAgICAgY29sb3I6ICM0MTNhYTQKICAgIH0KICAgIC5tZW51X2FyZWEgLmRyb3Bkb3duLW1lbnUgYS5kcm9wZG93bi1pdGVtIHsKICAgICAgICBwYWRkaW5nOiA0cHggMTVweAogICAgfQogICAgLm1lbnVfYXJlYSAuZHJvcGRvd24tbWVudSwKICAgIC5tZW51X2FyZWEgLm1lZ2EtbWVudSB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMDsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMDsKICAgICAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5OwogICAgICAgIGxlZnQ6IGF1dG87CiAgICAgICAgcG9zaXRpb246IGluaXRpYWw7CiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4CiAgICB9CiAgICAubWVudV9hcmVhIC5kcm9wZG93bi1tZW51IHVsLAogICAgLm1lbnVfYXJlYSAubWVnYS1tZW51IHVsIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiBpbml0aWFsOwogICAgICAgIC13ZWJraXQtZmxleDogaW5pdGlhbDsKICAgICAgICAtbXMtZmxleDogaW5pdGlhbDsKICAgICAgICBmbGV4OiBpbml0aWFsOwogICAgICAgIHBhZGRpbmc6IDAgMTVweAogICAgfQogICAgLm1lbnVfYXJlYSAuZHJvcGRvd24tbWVudSB1bCt1bCwKICAgIC5tZW51X2FyZWEgLm1lZ2EtbWVudSB1bCt1bCB7CiAgICAgICAgbWFyZ2luLXRvcDogN3B4CiAgICB9CiAgICAubWVudV9hcmVhIC5kcm9wZG93bi1tZW51IHVsK3VsPmxpPmg2LAogICAgLm1lbnVfYXJlYSAubWVnYS1tZW51IHVsK3VsPmxpPmg2IHsKICAgICAgICBtYXJnaW4tdG9wOiAyNHB4CiAgICB9CiAgICAubWVudV9hcmVhIC5kcm9wZG93bi1tZW51IHVsIGxpLAogICAgLm1lbnVfYXJlYSAubWVnYS1tZW51IHVsIGxpIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHgKICAgIH0KICAgIC50b3BfYmFyIC5pbmZvcyB7CiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50CiAgICB9CiAgICAudG9wX2JhciAuaW5mb3MgLmluZm9zLS1zaW5nbGUgc3BhbiB7CiAgICAgICAgZGlzcGxheTogbm9uZQogICAgfQogICAgLmNhcm91c2VsLWZvdXIgLm93bC1pdGVtIGltZywKICAgIC50ZWFtLWNhcm91c2VsLXR3byAub3dsLWl0ZW0gaW1nIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIgLmNhcm91c2VsLXNpbmdsZSAuYXV0aG9yLXRleHQgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAubG9nby1ncmlkLW9uZSBsaSwKICAgIC5sb2dvLWdyaWQtdGhyZWUgbGkgewogICAgICAgIHdpZHRoOiAzMy4zMyUKICAgIH0KICAgIC5kcm9wZG93bnMtd3JhcHBlciAuZHJvcGRvd24gewogICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0KICAgIH0KICAgIC50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX2ltYWdlX21vZHVsZS0tbGVmdCB7CiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwCiAgICB9CiAgICAudGFiLWNvbnRlbnQudGFiLS1jb250ZW50MiAudGFiLXBhbmUgLnRhYl9pbWFnZV9tb2R1bGUtLXJpZ2h0IHsKICAgICAgICBtYXJnaW46IDJyZW0gMCAwIDAKICAgIH0KICAgIC52aWRlby1zaW5nbGUgZmlndXJlIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC52aWRlby13cmFwcGVyLnZpZGVvLS10aHJlZSAudmlkZW8tYmFubmVyIGZpZ3VyZSBmaWdjYXB0aW9uIHsKICAgICAgICBwYWRkaW5nOiAycmVtCiAgICB9CiAgICAuYWNjb3JkaW9uLXN0eWxlcy5hY2NvcmRpb24tLXR3byAuZm9ybS1ib3ggewogICAgICAgIG1hcmdpbi10b3A6IDMuMzMzMzNyZW0KICAgIH0KICAgIC5jYXJkLS10ZWFtMSBmaWd1cmUgaW1nLAogICAgLmNhcmQtLXRlYW0yIGZpZ3VyZSBpbWcgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuZGl2aWRlci50ZXh0LWNlbnRlciBwIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnNwbGl0dGVkLWJhbm5lcjphZnRlciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGNvbnRlbnQ6ICcnOwogICAgICAgIHdpZHRoOiA1MCU7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zKQogICAgfQogICAgLnN1YnNjcmliZS1mb3VyIGZvcm0sCiAgICAuc3Vic2NyaWJlLXNpeCBmb3JtLAogICAgLnN1YnNjcmliZS10aHJlZSBmb3JtIHsKICAgICAgICBtYXJnaW4tdG9wOiAycmVtCiAgICB9CiAgICAudHdpdHRlci1mZWVkcyAuZmVlZC1zaW5nbGUgLmZlZWQtY29udGVudCB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5xdW90ZXMtd2l0aC1pbWFnZSB7CiAgICAgICAgcGFkZGluZy10b3A6IDUuMzMzMzNyZW0KICAgIH0KICAgIC5ibG9ja3F1b3RlNSAuYXV0aG9yLXNpZ24gewogICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0KICAgIH0KICAgIC5jdGEtLWVpZ2h0IHAsCiAgICAuY3RhLS1maXZlIHAsCiAgICAuY3RhLS1mb3VyIHAsCiAgICAuY3RhLS1zZXZlbiBwLAogICAgLmN0YS0tc2l4IHAsCiAgICAuY3RhLS10d28gcCB7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyCiAgICB9CiAgICAuY3RhLS1laWdodCAuYWN0aW9uLWJ0biwKICAgIC5jdGEtLWZpdmUgLmFjdGlvbi1idG4sCiAgICAuY3RhLS1mb3VyIC5hY3Rpb24tYnRuLAogICAgLmN0YS0tc2V2ZW4gLmFjdGlvbi1idG4sCiAgICAuY3RhLS1zaXggLmFjdGlvbi1idG4sCiAgICAuY3RhLS10d28gLmFjdGlvbi1idG4gewogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBtYXJnaW4tdG9wOiAycmVtCiAgICB9CiAgICAuY3RhLS1maXZlIHAsCiAgICAuY3RhLS1zZXZlbiBwLAogICAgLmN0YS0tc2l4IHAgewogICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtCiAgICB9CiAgICAuY3RhLS1zZXZlbiBwIHsKICAgICAgICBsaW5lLWhlaWdodDogMy42NjY2N3JlbQogICAgfQogICAgLmNvbnRhY3Qtc3BsaXQgewogICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7CiAgICAgICAgaGVpZ2h0OiBhdXRvCiAgICB9CiAgICAuY29udGFjdC1zcGxpdCAuZy1tYXBzIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5jb250YWN0LXNwbGl0IC5nLW1hcHMgI21hcDIgewogICAgICAgIGhlaWdodDogMzMuMzMzMzNyZW0KICAgIH0KICAgIC5jb250YWN0LXNwbGl0IC5mb3JtLXdyYXBwZXIgewogICAgICAgIG1hcmdpbi10b3A6IDRyZW07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbQogICAgfQogICAgLmNvbnRhY3QtLWZvdXIgLmZvcm0td3JhcHBlciB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbQogICAgfQogICAgLmJsb2NrLWZ1bGwtd2lkdGgyOmJlZm9yZSwKICAgIC5ibG9jay1mdWxsLXdpZHRoOmJlZm9yZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGNvbnRlbnQ6ICcnOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHRvcDogMDsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45KTsKICAgICAgICB6LWluZGV4OiAxCiAgICB9CiAgICAuYmxvY2stZnVsbC13aWR0aCAuaW1nLAogICAgLmJsb2NrLWZ1bGwtd2lkdGgyIC5pbWcgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuY29udGVudC1ibG9jay0tMTIgLmhpZ2hsaWdodGVkLXRleHQgLmNvbnRlbnQgewogICAgICAgIHBhZGRpbmc6IDAgM3JlbQogICAgfQogICAgLnNlY3Rpb24tc3BsaXQ6YmVmb3JlIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnNlY3Rpb24tc3BsaXQgLnNraWxscyB7CiAgICAgICAgbWFyZ2luLXRvcDogNHJlbQogICAgfQogICAgLmNvbnRhY3QtLWZyb204IC5mb3JtLXdyYXBwZXIgLnNlbGVjdC1iYXNpYywKICAgIC5jb250YWN0LS1mcm9tOCAuZm9ybS13cmFwcGVyIGlucHV0IHsKICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpOwogICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggcmdiYSgxMDUsIDEwNiwgMTE5LCAuMDUpCiAgICB9CiAgICAuZm9vdGVyX19zbWFsbCAuY29udGVudC1sZWZ0LAogICAgLmZvb3Rlcl9fc21hbGwgLmNvbnRlbnQtcmlnaHQgewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLmZvb3Rlcl9fc21hbGwgLmNvbnRlbnQtbGVmdCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyCiAgICB9CiAgICAuZm9vdGVyX19zbWFsbCAuY29udGVudC1sZWZ0IHAsCiAgICAuZm9vdGVyX19zbWFsbCAuY29udGVudC1sZWZ0IHVsIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLmZvb3Rlcl9fc21hbGwgLmNvbnRlbnQtbGVmdCB1bCB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCiAgICB9CiAgICAuZm9vdGVyX19zbWFsbCAuY29udGVudC1yaWdodCB7CiAgICAgICAgbWFyZ2luLXRvcDogMXJlbQogICAgfQogICAgZm9vdGVyLmZvb3RlcjQgLmZvb3Rlcl9fc21hbGwgLmluZm9fbGlua3M6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiBub25lCiAgICB9CiAgICAucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlIHsKICAgICAgICB3aWR0aDogNTAlCiAgICB9CiAgICAucHJvY2Vzcy1vbmUgLnByb2Nlc3Mtc2luZ2xlIC5pY29uOmJlZm9yZSwKICAgIC5wcm9jZXNzLW9uZSAucHJvY2Vzcy1zaW5nbGU6bnRoLWNoaWxkKDJuKzEpIC5pY29uOmJlZm9yZSB7CiAgICAgICAgY29udGVudDogbm9uZQogICAgfQogICAgLnByb2Nlc3MtdGhyZWUgewogICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0KICAgIH0KICAgIC50ZWFtLXNpbmdsZS50ZWFtLWZpdmUsCiAgICAudGVhbS1zaW5nbGUudGVhbS1mb3VyIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtCiAgICB9CiAgICAudGVhbS1zaW5nbGUudGVhbS1maXZlIGltZywKICAgIC50ZWFtLXNpbmdsZS50ZWFtLWZvdXIgaW1nIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnByaWNpbmcucHJpY2luZy0tMiB7CiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudAogICAgfQogICAgLmV2ZW50LXNpbmdsZSB7CiAgICAgICAgaGVpZ2h0OiBhdXRvCiAgICB9CiAgICAuZXZlbnQtc2luZ2xlIC5ldmVudC1pbmZvIC52aWV3LWJ0biB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgbWFyZ2luLXRvcDogMS4zMzMzM3JlbQogICAgfQogICAgI2FjY29yZGlvbl9vbmUsCiAgICAjYWNjb3JkaW9uX3R3byB7CiAgICAgICAgcGFkZGluZzogMnJlbSAyLjY2NjY3cmVtCiAgICB9CiAgICAuc2VjdGlvbi1uZXdzIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbQogICAgfQogICAgLnNlcnZpY2VzIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbQogICAgfQogICAgLnRlc3RpbW9uaWFscyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDVyZW0KICAgIH0KICAgIC5zZWN0aW9uLXNwbGl0MjpiZWZvcmUgewogICAgICAgIGNvbnRlbnQ6IG5vbmUKICAgIH0KICAgIC5hYm91dC1saW5rcyB1bCwKICAgIC5ldmVudC10eXBlcyB1bCB7CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgcGFkZGluZzogMXJlbSAwCiAgICB9CiAgICAuYWJvdXQtbGlua3MgdWwgbGksCiAgICAuZXZlbnQtdHlwZXMgdWwgbGkgewogICAgICAgIG1hcmdpbjogMCAycmVtCiAgICB9CiAgICAuYWJvdXQtbGlua3MgdWwgbGkgYSwKICAgIC5ldmVudC10eXBlcyB1bCBsaSBhIHsKICAgICAgICBwYWRkaW5nOiAxcmVtIDAKICAgIH0KICAgIC50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2Q6YmVmb3JlIHsKICAgICAgICByaWdodDogLTIwcHgKICAgIH0KICAgIC50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXI6YmVmb3JlIHsKICAgICAgICByaWdodDogLTM5cHgKICAgIH0KICAgIC52YWx1ZXMtaW5mbyAudmFsdWUtZGVzYyBwIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMAogICAgfQogICAgLnNlYXJjaC13cmFwcGVyIGZvcm0gLmZvcm0tZ3JvdXAgYnV0dG9uIHsKICAgICAgICBtYXJnaW46IDFyZW0gMCAwIDAKICAgIH0KICAgIC5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkIHsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgICAgIC13ZWJraXQtZmxleDogMTsKICAgICAgICAtbXMtZmxleDogMTsKICAgICAgICBmbGV4OiAxOwogICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNGU4ZWQgIWltcG9ydGFudAogICAgfQogICAgLnNlYXJjaC13cmFwcGVyIC5mb3JtLWdyb3VwIC5zZWxlY3QtYmFzaWMgewogICAgICAgIG1pbi13aWR0aDogMTAwJTsKICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAxOwogICAgICAgIC13ZWJraXQtZmxleDogMTsKICAgICAgICAtbXMtZmxleDogMTsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG1hcmdpbi10b3A6IDFyZW0KICAgIH0KICAgIC5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sLAogICAgLnNlYXJjaC13cmFwcGVyIC5mb3JtLWdyb3VwIC5zZWxlY3QtYmFzaWMgLmZvcm0tY29udHJvbCB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC5jYXJlZXItc2VhcmNoIC5zZWFyY2gtd3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lCiAgICB9CiAgICAuaW5mb3JtYXRpb24tYm94IHsKICAgICAgICBwYWRkaW5nOiA4cmVtIDAgNHJlbSAhaW1wb3J0YW50CiAgICB9CiAgICAuaW5mb3JtYXRpb24td3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgICAgIHRvcDogMAogICAgfQogICAgLmluZm9ybWF0aW9uLXdyYXBwZXIgdWwgewogICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0KICAgIH0KICAgIC5pbmZvcm1hdGlvbi13cmFwcGVyIHVsIGxpIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtCiAgICB9CiAgICAuaW5mb3JtYXRpb24td3JhcHBlciAuY2FyZCB7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U0ZThlZCAhaW1wb3J0YW50CiAgICB9CiAgICAuaW5mb3JtYXRpb24td3JhcHBlciAuY2FyZCAuY2FyZC1ib2R5IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS42NjY2N3JlbQogICAgfQogICAgLmFjdGlvbi1idG5zIHVsIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgICAgIGZsZXgtd3JhcDogd3JhcAogICAgfQogICAgLmNhcmQuY2FyZC0tdGVhbTQgewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgZmxleC13cmFwOiB3cmFwCiAgICB9CiAgICAuY2FyZC5jYXJkLS10ZWFtNCAudGVhbS1pbmZvIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgICAgIGZsZXgtd3JhcDogd3JhcAogICAgfQogICAgLmNhcmQuY2FyZC0tdGVhbTQgLnRlYW0taW5mbyAubS1ib3R0b20tMjUgewogICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHgKICAgIH0KICAgIC5jYXJkLmNhcmQtLXRlYW00IC50ZWFtLWluZm8gLnNvY2lhbC1iYXNpYyB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweAogICAgfQogICAgLmNhcmQuY2FyZC0tdGVhbTQgLnRlYW0taW1hZ2UgewogICAgICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXg6IDEgMCAxMDAlOwogICAgICAgIC1tcy1mbGV4OiAxIDAgMTAwJTsKICAgICAgICBmbGV4OiAxIDAgMTAwJQogICAgfQogICAgLmNhcmQuY2FyZC0tdGVhbTQgLnRlYW0taW1hZ2UgaW1nIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnRlYW0tcHJvZmlsZSAudGVhbS1kZXRhaWxzIHsKICAgICAgICBtYXJnaW4tbGVmdDogMAogICAgfQogICAgLnNlcnZpY2UtdGFiLXdyYXBwZXIgLnNlcnZpY2UtLXRhYnMgLnNpZGViYXIgewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydAogICAgfQogICAgLnNlcnZpY2UtdGFiLXdyYXBwZXIgLnNlcnZpY2UtLXRhYnMgLnNpZGViYXIgLnRhYl9uYXYyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAzOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDI7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDI7CiAgICAgICAgb3JkZXI6IDIKICAgIH0KICAgIC5zZXJ2aWNlLXRhYi13cmFwcGVyIC5zZXJ2aWNlLS10YWJzIC5zaWRlYmFyIC5jdGEtd2lkZ2V0LAogICAgLnNlcnZpY2UtdGFiLXdyYXBwZXIgLnNlcnZpY2UtLXRhYnMgLnNpZGViYXIgLmRvd25sb2FkLXdpZGdldCB7CiAgICAgICAgd2lkdGg6IDQ1JTsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHgKICAgIH0KICAgIC5ldmVudC1zaGFyZSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbQogICAgfQogICAgLm90aGVyLWxvZ2lucyB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCiAgICB9CiAgICAucHJvamVjdC1saXN0IC5jYXJkIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCiAgICB9CiAgICAucHJvamVjdC1saXN0IC5jYXJkIGZpZ3VyZSBpbWcgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1zb3J0MiB1bCBsaSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbQogICAgfQogICAgLmNoZWNrb3V0LXdyYXBwZXIgLm5hdi1pdGVtIHsKICAgICAgICBtYXJnaW46IDAgMy4zMzMzM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAuY2hlY2tvdXQtd3JhcHBlciAubmF2LWl0ZW06YmVmb3JlIHsKICAgICAgICBjb250ZW50OiBub25lCiAgICB9CiAgICAud2lkZ2V0LXdyYXBwZXI6bGFzdC1jaGlsZCAud2lkZ2V0LWRlZmF1bHQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDAKICAgIH0KICAgIC5jYXJ0LXRhYmxlIC5jYXJ0LXNpbmdsZSAubmFtZSBhIHsKICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICBtYXJnaW4tdG9wOiAuNjY2NjdyZW0KICAgIH0KICAgIC5jYXJ0LXRhYmxlLS0yIC5jYXJ0LXNpbmdsZSAubmFtZSBhIHsKICAgICAgICBtYXJnaW4tbGVmdDogMS4zMzMzM3JlbQogICAgfQogICAgLmhyLWRpdmlkZXItZ3JheSB7CiAgICAgICAgbWFyZ2luLXRvcDogMy42NjY2N3JlbQogICAgfQogICAgLnByb2R1Y3RzLXdyYXBwZXIgLnByb2R1Y3Qtc29ydCAuc29ydCAuZm9ybS1ncm91cCB7CiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTsKICAgICAgICAtd2Via2l0LWZsZXg6IDE7CiAgICAgICAgLW1zLWZsZXg6IDE7CiAgICAgICAgZmxleDogMQogICAgfQogICAgLnRvdGFsLXBhZ2VzIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9CiAgICAucHJvZHVjdHMtd3JhcHBlciAucHJvZHVjdC1ncmlkIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4CiAgICB9CiAgICAuY29udGVudF9ibG9jazNfd3JhcHBlciB7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyCiAgICB9CiAgICAudGVhbS13cmFwcGVyIC50aXRsZS1ib3ggewogICAgICAgIHBhZGRpbmc6IDJyZW0KICAgIH0KICAgIC50ZWFtLWNhcm91c2VsLXRocmVlIHsKICAgICAgICBtYXJnaW4tdG9wOiAycmVtCiAgICB9CiAgICAuaW50cm8tb25lIC5pbnRyby1vbmUtLWNvbnRlbnRzIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjMzMzMzcmVtCiAgICB9CiAgICAuaW50cm8tb25lIC5pbnRyby1vbmUtLWNvbnRlbnRzLAogICAgLmludHJvLW9uZSAuaW50cm8tb25lLS1pbWcsCiAgICAuaW50cm8tdGhyZWUgLmludHJvLXRocmVlLS1jb250ZW50cywKICAgIC5pbnRyby10aHJlZSAuaW50cm8tdGhyZWUtLWltZyB7CiAgICAgICAgcG9zaXRpb246IHN0YXRpYzsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLmludHJvLXRocmVlIC5pbnRyby10aHJlZS0taW1nIHsKICAgICAgICB6LWluZGV4OiAxOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBtYXJnaW4tdG9wOiAzLjMzMzMzcmVtCiAgICB9CiAgICAuaW50cm9fYXJlYTkgLmludHJvX2FyZWE5LS1jb250ZW50cywKICAgIC5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLXNsaWRlcyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHJpZ2h0OiBhdXRvOwogICAgICAgIHRvcDogYXV0bzsKICAgICAgICBwYWRkaW5nOiA2LjY2NjY3cmVtIDAKICAgIH0KICAgIC5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLWNvbnRlbnRzOmJlZm9yZSB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5zaGFwZS13cmFwcGVyLmltZy1zaGFwZS1vbmU6YmVmb3JlIHsKICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAuMiU7CiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMC4yJQogICAgfQogICAgLmludHJvLWFyZWEtZm91ciB7CiAgICAgICAgbWluLWhlaWdodDogNDYuNjY2NjdyZW0KICAgIH0KICAgIC5pbnRyb19hcmVhOSAuaW50cm9fYXJlYTktLWNvbnRlbnRzIGgxIGJyIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9CiAgICAudHAtY2FwdGlvbiAuZm9ybS13cmFwcGVyIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9CiAgICAuaW50cm8tZm91ciB7CiAgICAgICAgbWluLWhlaWdodDogMzMuMzMzMzNyZW0KICAgIH0KICAgIC5pbnRyby1hcmVhLWZvdXIgLmltZy1sZWZ0LAogICAgLmludHJvLWFyZWEtZm91ciAuaW1nLXJpZ2h0IHsKICAgICAgICBtYXgtd2lkdGg6IDEwcmVtCiAgICB9CiAgICAuaW50cm8tdHdvIHsKICAgICAgICBtaW4taGVpZ2h0OiA1NTBweAogICAgfQogICAgLm5hdmJhci5uYXZiYXItYmcgLm5hdmJhci10b2dnbGVyIHsKICAgICAgICBjb2xvcjogI2ZmZgogICAgfQogICAgLmJyZWFkY3J1bWIzIHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAKICAgIH0KICAgIC5zZWFyY2gtd3JhcHBlciBmb3JtIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTRlOGVkCiAgICB9CiAgICAuc2VhcmNoLXdyYXBwZXIgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCwKICAgIC5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuc2VsZWN0LWJhc2ljIC5mb3JtLWNvbnRyb2wgewogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNGU4ZWQgIWltcG9ydGFudAogICAgfQogICAgLnN1YnNjcmliZS0tZml2ZSBoMiB7CiAgICAgICAgbWFyZ2luLXRvcDogMnJlbQogICAgfQogICAgLnByaWNpbmcucHJpY2luZy0tMiAucHJpY2luZ19fZmVhdHVyZXNfbGlzdCB7CiAgICAgICAgcGFkZGluZzogMzBweAogICAgfQogICAgLnByaWNpbmcucHJpY2luZy0tMiAucHJpY2luZ19fZmVhdHVyZXNfbGlzdCB1bC5saXN0IHsKICAgICAgICBtYXJnaW4tdG9wOiAzMHB4CiAgICB9CiAgICAuc3Vic2NyaWJlLXNpeCBoNCwKICAgIC5zdWJzY3JpYmUtdGhyZWUgaDQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHgKICAgIH0KICAgIC5zdWJzY3JpYmUtc2l4IGg0IHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwCiAgICB9CiAgICAudGFiLnRhYi0tMSAudGFiX25hdiB7CiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4CiAgICB9CiAgICAubWVudTYgLm5hdmJhci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLm5hdi1saW5rOmJlZm9yZSwKICAgIC5tZW51NyAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlLAogICAgLm1lbnU4IC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5uYXYtbGluaywKICAgIC5tZW51OCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbS5kcm9wZG93biAubmF2LWxpbms6YmVmb3JlIHsKICAgICAgICBjb2xvcjogIzIwMjQyOAogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6OTkxcHgpIHsKICAgIGh0bWwgewogICAgICAgIGZvbnQtc2l6ZTogMTQuNXB4CiAgICB9CiAgICAuZ2FsbGVyeS1mdWxsd2lkdGggLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgewogICAgICAgIHdpZHRoOiAzMy4zMyUKICAgIH0KICAgIC5jb250ZW50LWJsb2NrIC5jb250ZW50LWxpc3QtLW9uZSwKICAgIC5jb250ZW50LWJsb2NrIC5jb250ZW50LWxpc3QtLXR3byB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgICAgIGRpc3BsYXk6IGZsZXgKICAgIH0KICAgIC5jb250ZW50LWJsb2NrIC5jb250ZW50LWxpc3QtLW9uZSAuY29udGVudC1saXN0LAogICAgLmNvbnRlbnQtYmxvY2sgLmNvbnRlbnQtbGlzdC0tdHdvIC5jb250ZW50LWxpc3QgewogICAgICAgIHdpZHRoOiA1MCUKICAgIH0KICAgIC5jb250ZW50LWJsb2NrIC5jb250ZW50LWxpc3QtLW9uZSAuY29udGVudC1saXN0Om50aC1jaGlsZCgybisyKSwKICAgIC5jb250ZW50LWJsb2NrIC5jb250ZW50LWxpc3QtLXR3byAuY29udGVudC1saXN0Om50aC1jaGlsZCgybisyKSB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4CiAgICB9CiAgICAuY29udGVudC1ibG9jayAuY29udGVudC1saXN0LS1vbmUgLmNvbnRlbnQtbGlzdDpudGgtY2hpbGQoMm4rMSksCiAgICAuY29udGVudC1ibG9jayAuY29udGVudC1saXN0LS10d28gLmNvbnRlbnQtbGlzdDpudGgtY2hpbGQoMm4rMSkgewogICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHgKICAgIH0KICAgIC5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCAuY29udGVudCB7CiAgICAgICAgbWluLWhlaWdodDogMjByZW0KICAgIH0KICAgIC5jb250ZW50LWJsb2NrLS0xMiAuaGlnaGxpZ2h0ZWQtdGV4dCAuY29udGVudCBwIHsKICAgICAgICBmb250LXNpemU6IDEuNjY2NjdyZW07CiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNjY2NjdyZW0KICAgIH0KfQoKQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgewogICAgLm1hcmdpbi1zbS02MCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbQogICAgfQogICAgLm1hcmdpbi1zbS02MCBwIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwCiAgICB9CiAgICAuY2FyZC1ib2R5IHsKICAgICAgICBwYWRkaW5nOiAycmVtCiAgICB9CiAgICAuYmxvZy1jYXJvdXNlbC10d28gLm93bC1pdGVtIGltZywKICAgIC5jYXJvdXNlbC1vbmUgLm93bC1pdGVtIGltZywKICAgIC5jYXJvdXNlbC10d28gLm93bC1pdGVtIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5jYXJvdXNlbC10aHJlZSAubmF2LWNpcmNsZSAub3dsLXByZXYgewogICAgICAgIG1hcmdpbi1sZWZ0OiAwCiAgICB9CiAgICAuY2Fyb3VzZWwtdGhyZWUgLm5hdi1jaXJjbGUgLm93bC1uZXh0IHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDAKICAgIH0KICAgIC5sb2dvLWNhcm91c2VsLXRocmVlIC5uYXYtc3F1YXJlLWRhcmsgLm93bC1wcmV2IHsKICAgICAgICBtYXJnaW4tbGVmdDogMAogICAgfQogICAgLmxvZ28tY2Fyb3VzZWwtdGhyZWUgLm5hdi1zcXVhcmUtZGFyayAub3dsLW5leHQgewogICAgICAgIG1hcmdpbi1yaWdodDogMAogICAgfQogICAgLmxvZ28tZ3JpZC1vbmUgbGksCiAgICAubG9nby1ncmlkLXRocmVlIGxpIHsKICAgICAgICB3aWR0aDogNTAlCiAgICB9CiAgICAuZ2FsbGVyeS1mdWxsd2lkdGggLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgewogICAgICAgIHdpZHRoOiA1MCUKICAgIH0KICAgIC5nYWxsZXJ5LWdyaWQgZmlndXJlIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC50YWIudGFiLS0xIC50YWItY29udGVudCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOwogICAgICAgIG1hcmdpbi10b3A6IDJyZW0KICAgIH0KICAgIC50YWItY29udGVudC50YWItLWNvbnRlbnQyIC50YWItcGFuZSAudGFiX2ltYWdlX21vZHVsZSB7CiAgICAgICAgbWFyZ2luLXRvcDogMnJlbQogICAgfQogICAgLnRhYi50YWItLTQgLnRhYi0tY29udGVudDQgewogICAgICAgIHBhZGRpbmc6IDIuNjY2NjdyZW0KICAgIH0KICAgIC50YWIudGFiLS00IC50YWItLWNvbnRlbnQ0IC50ZXh0X2NvbnRlbnQgewogICAgICAgIG1hcmdpbi10b3A6IDJyZW07CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwCiAgICB9CiAgICAudGFiLnRhYi0tNCAubmF2LXRhYnMgbGkgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIG1hcmdpbi1ib3R0b206IDFweAogICAgfQogICAgLnRhYi50YWItLTggLnRhYl9uYXY3IHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtCiAgICB9CiAgICAuY2FyZCBmaWd1cmUgaW1nLAogICAgLmNhcmQtLXRlbiBmaWd1cmUgaW1nIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnNlY3Rpb24tdGl0bGUtc2ltcGxlIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnNvY2lhbC1idG5zIGxpIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjMzMzMzcmVtCiAgICB9CiAgICAuY291bnRlci0tMSwKICAgIC5jb3VudGVyLS0yLAogICAgLmNvdW50ZXItLTMsCiAgICAuY291bnRlci0tNCwKICAgIC5jb3VudGVyLS02IHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogNC42NjY2N3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAuY291bnRlci0tMSAuY291bnRlcl9zaW5nbGUsCiAgICAuY291bnRlci0tMiAuY291bnRlcl9zaW5nbGUsCiAgICAuY291bnRlci0tMyAuY291bnRlcl9zaW5nbGUsCiAgICAuY291bnRlci0tNCAuY291bnRlcl9zaW5nbGUsCiAgICAuY291bnRlci0tNiAuY291bnRlcl9zaW5nbGUgewogICAgICAgIHdpZHRoOiA1MCU7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4zMzMzM3JlbQogICAgfQogICAgLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iMSAucGFnZV90aXRsZSB7CiAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbQogICAgfQogICAgLmJyZWFkY3J1bWIzIC5icmVhZGNydW1iX3dyYXBwZXIgLnBhZ2VfdGl0bGUsCiAgICAuYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWIyIC5wYWdlX3RpdGxlIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLmJyZWFkY3J1bWJfYXJlYS5icmVhZGNydW1iMSAuYnJlYWRjcnVtYl93cmFwcGVyIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCiAgICB9CiAgICAuY29udGVudC1ibG9jay0tMTIgLmhpZ2hsaWdodGVkLXRleHQgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgcGFkZGluZzogNS4zMzMzM3JlbSAwCiAgICB9CiAgICAuY29udGVudC1ibG9jay0tMTIgLmNsaWVudHMtbG9nbyB7CiAgICAgICAgcGFkZGluZy10b3A6IDAKICAgIH0KICAgIC5ldmVudC1zaW5nbGUgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4KICAgIH0KICAgIC5ldmVudC1zaW5nbGUgLmV2ZW50LWRhdGUgewogICAgICAgIHBhZGRpbmc6IDJyZW0gMAogICAgfQogICAgLmV2ZW50LXNpbmdsZSAuZXZlbnQtZGF0ZSwKICAgIC5ldmVudC1zaW5nbGUgLmV2ZW50LWluZm8gewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7CiAgICAgICAgLXdlYmtpdC1mbGV4OiAxOwogICAgICAgIC1tcy1mbGV4OiAxOwogICAgICAgIGZsZXg6IDEKICAgIH0KICAgIC5oZWFkZXItLTYgLm5hdl9yaWdodF9jb250ZW50IC5jYXJ0X21vZHVsZSwKICAgIC5oZWFkZXItLTYgLm5hdl9yaWdodF9jb250ZW50IC5zZWFyY2hfbW9kdWxlIHsKICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyOwogICAgICAgIC13ZWJraXQtb3JkZXI6IDE7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7CiAgICAgICAgb3JkZXI6IDEKICAgIH0KICAgIC5oZWFkZXItLTYgLm5hdl9yaWdodF9jb250ZW50IC5jdGFidG4gewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDE7CiAgICAgICAgLXdlYmtpdC1vcmRlcjogMDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMDsKICAgICAgICBvcmRlcjogMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQKICAgIH0KICAgIC5uYXZfcmlnaHRfY29udGVudCAuY2FydF9tb2R1bGUgLmNhcnRfX2l0ZW1zIHsKICAgICAgICB3aWR0aDogMjUwcHg7CiAgICAgICAgbWluLXdpZHRoOiBhdXRvOwogICAgICAgIHJpZ2h0OiAwCiAgICB9CiAgICAubmF2X3JpZ2h0X2NvbnRlbnQgLmNhcnRfbW9kdWxlIC5jYXJ0X19pdGVtcyAuY2FydF9pbmZvIGErYSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgbWFyZ2luLXRvcDogMTBweAogICAgfQogICAgLmVycm9yLXdyYXBwZXIgLmVycm9yLWNvbnRlbnRzIHAgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuaG9tZTgtY291bnRlciB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDAKICAgIH0KICAgIC50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2Q6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiBub25lCiAgICB9CiAgICAudGltZWxpbmUxIC5oYXBwZW5pbmcgLmhhcHBlbmluZ19fcGVyaW9kIC53cmFwcGVyOmJlZm9yZSB7CiAgICAgICAgY29udGVudDogbm9uZQogICAgfQogICAgLnRpbWVsaW5lMSAuaGFwcGVuaW5nIC5oYXBwZW5pbmdfX2Rlc2MgewogICAgICAgIG1hcmdpbi10b3A6IDJyZW07CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOwogICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0KICAgIH0KICAgIC50aW1lbGluZTEgLmhhcHBlbmluZzpsYXN0LWNoaWxkIC5oYXBwZW5pbmdfX2Rlc2MgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAwCiAgICB9CiAgICAuc2VhcmNoLXdyYXBwZXIgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbQogICAgfQogICAgLmFjdGlvbi1idG5zIHVsIGxpIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAuNjY2NjdyZW0KICAgIH0KICAgIC5jYXJlZXItc2VhcmNoIC5zZWFyY2gtd3JhcHBlciAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkIHsKICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTRlOGVkICFpbXBvcnRhbnQKICAgIH0KICAgIC5jYXJlZXItc2VhcmNoIC5zZWFyY2gtd3JhcHBlciBmb3JtIHsKICAgICAgICBwYWRkaW5nOiAzMHB4CiAgICB9CiAgICAuc2VydmljZS10YWItd3JhcHBlciAuc2VydmljZS0tdGFicyAuc2lkZWJhciAuY3RhLXdpZGdldCwKICAgIC5zZXJ2aWNlLXRhYi13cmFwcGVyIC5zZXJ2aWNlLS10YWJzIC5zaWRlYmFyIC5kb3dubG9hZC13aWRnZXQgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuc2VydmljZS10YWItd3JhcHBlciAuc2VydmljZS0tdGFicyAuc2lkZWJhciAuZG93bmxvYWQtd2lkZ2V0IHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIKICAgIH0KICAgIC5zZXJ2aWNlLXRhYi13cmFwcGVyIC5zZXJ2aWNlLS10YWJzIC5zaWRlYmFyIC5kb3dubG9hZC13aWRnZXQgLmNvbnRlbnQgcCB7CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyCiAgICB9CiAgICAubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zLAogICAgLmxvZ2luLXJlZ2lzdGVyIC5zaWdudXAtZm9ybSAuZm9ybS13cmFwcGVyIC5vdGhlci1sb2dpbnMgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyCiAgICB9CiAgICAubG9naW4tcmVnaXN0ZXIgLmxvZ2luLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGEsCiAgICAubG9naW4tcmVnaXN0ZXIgLnNpZ251cC1mb3JtIC5mb3JtLXdyYXBwZXIgLm90aGVyLWxvZ2lucyBhIHsKICAgICAgICBtYXJnaW46IDEwcHggMAogICAgfQogICAgLnByb2plY3Qtc2luZ2xlIC5wcm9qZWN0LWluZm8gLmluZm8tYm94IHsKICAgICAgICBtYXJnaW4tdG9wOiAzcmVtCiAgICB9CiAgICAuYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1ib3R0b20gewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IHN0YXJ0OwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDsKICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQKICAgIH0KICAgIC5ibG9nLXNpbmdsZS13cmFwcGVyIC5wb3N0LWJvdHRvbSAuc29jaWFsLXNoYXJlIHsKICAgICAgICBtYXJnaW4tdG9wOiAxLjMzMzMzcmVtCiAgICB9CiAgICAuY2FydC10YWJsZSAuY2FydC1hY3Rpb25zIC5tbC1hdXRvIHsKICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OwogICAgICAgIG1hcmdpbi10b3A6IDFyZW0KICAgIH0KICAgIC5jaGVja291dC13cmFwcGVyIC5uYXYtaXRlbSB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQKICAgIH0KICAgIC50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHsKICAgICAgICBib3R0b206IGF1dG87CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsKICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7CiAgICAgICAgbGVmdDogYXV0bzsKICAgICAgICByaWdodDogMAogICAgfQogICAgLmdhbGxlcnktaW1hZ2UtdmlldyAucG9ydGZvbGlvLWNhcm91c2VsLXNpbmdsZSBpbWcgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAucHJvZHVjdC1pbmZvLXRhYiAucmV2aWV3LXdyYXBwZXIgLnJldmlld3MgewogICAgICAgIHBhZGRpbmc6IDAKICAgIH0KICAgIC5uYXYtY2lyY2xlIGJ1dHRvbiB7CiAgICAgICAgd2lkdGg6IDNyZW07CiAgICAgICAgaGVpZ2h0OiAzcmVtCiAgICB9CiAgICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewogICAgICAgIGhlaWdodDogMjAwcHgKICAgIH0KICAgIGh0bWwgewogICAgICAgIGZvbnQtc2l6ZTogMTRweAogICAgfQogICAgLm1iLXNtLTUwIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4CiAgICB9CiAgICAuc2VydmljZXNfYXJlYSAuaWNvbi1ib3gtZml2ZSB7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwOwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwCiAgICB9CiAgICAuZXZlbnQtc2luZ2xlIC5ldmVudC1pbmZvIHsKICAgICAgICBwYWRkaW5nOiAycmVtIDIuMzMzMzNyZW0KICAgIH0KICAgIC5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSB7CiAgICAgICAgcG9zaXRpb246IGluaXRpYWwKICAgIH0KICAgIC5uYXZfcmlnaHRfY29udGVudCAuc2VhcmNoX21vZHVsZSAuc2VhcmNoX2FyZWEgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHJpZ2h0OiAwCiAgICB9CiAgICAubmF2X3JpZ2h0X2NvbnRlbnQgLnNlYXJjaF9tb2R1bGUgLnNlYXJjaF9hcmVhLmFjdGl2ZSB7CiAgICAgICAgdG9wOiAxMDAlCiAgICB9CiAgICAuY3RhLS1uaW5lIC5jdGEtLW5vbmUtY29udGVudHMgewogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcgogICAgfQogICAgLmN0YS0tbmluZSAuY3RhLS1ub25lLWNvbnRlbnRzIGgzIHsKICAgICAgICBtYXJnaW4tdG9wOiAycmVtCiAgICB9CiAgICAuYWJvdXQtd3JhcHBlciBpbWcgewogICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0KICAgIH0KICAgIC5hYm91dC13cmFwcGVyIC5saW5lLWNoYXJ0X3dyYXAgewogICAgICAgIG1hcmdpbi10b3A6IDJyZW0KICAgIH0KICAgIC50ZWFtLWNhcm91c2VsLXRocmVlIC5jYXJvdXNlbC1zaW5nbGUgLnRlYW0tZGVzYyB7CiAgICAgICAgcGFkZGluZzogMnJlbQogICAgfQogICAgLnRlYW0tY2Fyb3VzZWwtdGhyZWUgLmNhcm91c2VsLXNpbmdsZSAudGVhbS1pbWcgewogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcgogICAgfQogICAgLmludHJvLXRocmVlLAogICAgLmludHJvLXR3byB7CiAgICAgICAgcGFkZGluZzogNS4zMzMzM3JlbSAwCiAgICB9CiAgICAuaW50cm8tdHdvIC5mb3JtLXdyYXBwZXIgewogICAgICAgIG1hcmdpbi10b3A6IDMuMzMzMzNyZW0KICAgIH0KICAgIC5pbWFnZS1jYXJvdXNlbC1vbmUgLm5hdi1jaXJjbGUgYnV0dG9uIHsKICAgICAgICB3aWR0aDogMi4zMzMzM3JlbTsKICAgICAgICBoZWlnaHQ6IDIuMzMzMzNyZW07CiAgICAgICAgZm9udC1zaXplOiAuODY2NjdyZW0KICAgIH0KICAgIC50ZXh0LWJveCB7CiAgICAgICAgbWFyZ2luLXRvcDogMAogICAgfQogICAgLnRhYi50YWItLTIgLnRhYl9uYXYyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluaywKICAgIC50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgewogICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtCiAgICB9CiAgICAudGFiLnRhYi0tMiAudGFiX25hdjIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZTphZnRlciwKICAgIC50YWIudGFiLS02IC50YWJfbmF2MiAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsuYWN0aXZlOmFmdGVyIHsKICAgICAgICBjb250ZW50OiBub25lCiAgICB9CiAgICAuY2hlY2tvdXQtd3JhcHBlciAudGFiLWNvbnRlbnQgLm1ldGhvZC0xIC5ib2R5IHAgaW1nIHsKICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICBtYXJnaW4tdG9wOiAxMHB4CiAgICB9CiAgICAucXVvdGVzLXdpdGgtaW1hZ2UgLmJsb2NrcXVvdGU1IHsKICAgICAgICBtYXJnaW4tdG9wOiA4MHB4CiAgICB9CiAgICAucXVvdGVzLXdpdGgtaW1hZ2UgLmJsb2NrcXVvdGU1IC5hdXRob3Itc2lnbiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMAogICAgfQogICAgLm5hdi1jaXJjbGUgLm93bC1uZXh0LAogICAgLm5hdi1jaXJjbGUgLm93bC1wcmV2IHsKICAgICAgICBtYXJnaW46IDAKICAgIH0KICAgIC50aW1lbGluZTEgLmhhcHBlbmluZyAuaGFwcGVuaW5nX19wZXJpb2QgLndyYXBwZXI6YWZ0ZXIgewogICAgICAgIGNvbnRlbnQ6IG5vbmUKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6MzIwcHgpIGFuZCAobWF4LXdpZHRoOjU3NS45OHB4KSB7CiAgICAubG9nby1ncmlkLW9uZSBsaSwKICAgIC5sb2dvLWdyaWQtdGhyZWUgbGkgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuZ2FsbGVyeS1mdWxsd2lkdGggLnBvcnRmb2xpby1jYXJvdXNlbC1zaW5nbGUgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAudGFiLnRhYi0tNCAubmF2LXRhYnMgbGkgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAudGFiLnRhYi0tNCAubmF2LXBpbGxzIGxpIHsKICAgICAgICBtYXJnaW4tdG9wOiAxcmVtCiAgICB9CiAgICAudGFiLnRhYi0tNyAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0sCiAgICAudGFiLnRhYi0tOCAudGFiX25hdjcgLm5hdiAubmF2LWl0ZW0gewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAudGFiLnRhYi0tMyB1bC5uYXYgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4KICAgIH0KICAgIC50YWIudGFiLS0zIC50YWJfbmF2MyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW0KICAgIH0KICAgIC50YWIudGFiLS0zIC50YWJfbmF2MyAubmF2IGxpIGEgewogICAgICAgIHBhZGRpbmc6IDAgMCAxcmVtIDAKICAgIH0KICAgIC5icmVhZGNydW1iIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcgogICAgfQogICAgLmJyZWFkY3J1bWIgbGkgewogICAgICAgIG1hcmdpbi1ib3R0b206IC42NjY2N3JlbQogICAgfQogICAgLmJyZWFkY3J1bWIgbGk6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMAogICAgfQogICAgLmNvdW50ZXItLTEgLmNvdW50ZXJfc2luZ2xlLAogICAgLmNvdW50ZXItLTIgLmNvdW50ZXJfc2luZ2xlLAogICAgLmNvdW50ZXItLTMgLmNvdW50ZXJfc2luZ2xlLAogICAgLmNvdW50ZXItLTQgLmNvdW50ZXJfc2luZ2xlLAogICAgLmNvdW50ZXItLTYgLmNvdW50ZXJfc2luZ2xlIHsKICAgICAgICB3aWR0aDogMTAwJQogICAgfQogICAgLnN1YnNjcmliZS0tdHdvIC5zdWJzY3JpYmUtZm9ybSwKICAgIC5zdWJzY3JpYmUtc2l4IC5zdWJzY3JpYmUtZm9ybSwKICAgIC5zdWJzY3JpYmUtdGhyZWUgLnN1YnNjcmliZS1mb3JtIHsKICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50CiAgICB9CiAgICAuc3Vic2NyaWJlLS10d28gLnN1YnNjcmliZS1mb3JtIGJ1dHRvbiwKICAgIC5zdWJzY3JpYmUtc2l4IC5zdWJzY3JpYmUtZm9ybSBidXR0b24sCiAgICAuc3Vic2NyaWJlLXRocmVlIC5zdWJzY3JpYmUtZm9ybSBidXR0b24gewogICAgICAgIG1hcmdpbjogMS4zMzMzM3JlbSAwIDAgMAogICAgfQogICAgLnByb2Nlc3Mtb25lIC5wcm9jZXNzLXNpbmdsZSB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5wb3J0Zm9saW8tY2Fyb3VzZWwgLm93bC1pdGVtIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5wYWdpbmF0aW9uLWFyZWEgLnBhZ2luYXRpb24gewogICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOwogICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgZmxleC13cmFwOiB3cmFwCiAgICB9CiAgICAuZmlsdGVyLXdyYXBwZXIgLmZpbHRlci1zb3J0IHVsIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCiAgICB9CiAgICAuZXJyb3Itd3JhcHBlciB7CiAgICAgICAgcGFkZGluZzogOHJlbSAwCiAgICB9CiAgICAuZXJyb3Itd3JhcHBlciAuZXJyb3ItY29udGVudHMgLmVycm9yLTQwNCB7CiAgICAgICAgZm9udC1zaXplOiA4cmVtCiAgICB9CiAgICAuZXJyb3Itd3JhcHBlciAuZXJyb3ItY29udGVudHMgaDIgewogICAgICAgIGZvbnQtc2l6ZTogMS42NjY2N3JlbTsKICAgICAgICBsaW5lLWhlaWdodDogMi4zMzMzM3JlbQogICAgfQogICAgLmFwcGx5LWZvcm0gZm9ybSAuZm9ybS1ncm91cCB7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OwogICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgogICAgfQogICAgLmFwcGx5LWZvcm0gZm9ybSAuZm9ybS1ncm91cCBsYWJlbCB7CiAgICAgICAgbWluLXdpZHRoOiAxMDAlCiAgICB9CiAgICAuY291bnRkb3duIHsKICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDsKICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwOwogICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKICAgIH0KICAgIC5jb3VudGRvd24gbGkgewogICAgICAgIG1hcmdpbjogMCAuNjY2NjdyZW0gMS4zMzMzM3JlbSAhaW1wb3J0YW50CiAgICB9CiAgICAudGFiX2V2ZW50IC50YWJfZXZlbnRfX21vZHVsZSAuc3BlYWtlcnMgewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4KICAgIH0KICAgIC50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4zMzMzM3JlbQogICAgfQogICAgLnRhYl9ldmVudCAudGFiX2V2ZW50X19tb2R1bGUgLnNwZWFrZXJzIGxpOmxhc3QtY2hpbGQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDAKICAgIH0KICAgIC50YWJfZXZlbnQgLnRhYl9ldmVudF9fbW9kdWxlIC5zcGVha2VycyBsaStsaSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDAKICAgIH0KICAgIC5sb2dpbi1yZWdpc3RlciAubG9naW4tZm9ybSAuZm9ybS13cmFwcGVyIC5mb3JtLWFjdGlvbiB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweAogICAgfQogICAgLmxvZ2luLXJlZ2lzdGVyIC5sb2dpbi1mb3JtIC5mb3JtLXdyYXBwZXIgLmZvcm0tYWN0aW9uIC5jdXN0b20tY29udHJvbCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0KICAgIH0KICAgIC5jb21pbmctc29vbiAuY3MtY29udGVudHMgcCB7CiAgICAgICAgd2lkdGg6IDEwMCUKICAgIH0KICAgIC5jb21pbmctc29vbiAuY3MtY29udGVudHMgZm9ybSAuc3Vic2NyaWJlLWZvcm0gewogICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAgICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7CiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXAKICAgIH0KICAgIC5jb21pbmctc29vbiAuY3MtY29udGVudHMgZm9ybSAuc3Vic2NyaWJlLWZvcm0gYnV0dG9uIHsKICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICBtYXJnaW4tdG9wOiAxcmVtCiAgICB9CiAgICAucmVsYXRlZC1wb3N0IC5zaW5nbGUtcG9zdCBpbWcgewogICAgICAgIHdpZHRoOiAxMDAlCiAgICB9CiAgICAuYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1wYWdpbmF0aW9uIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uCiAgICB9CiAgICAuYmxvZy1zaW5nbGUtd3JhcHBlciAucG9zdC1wYWdpbmF0aW9uIC5uZXh0LXBvc3QgewogICAgICAgIG1hcmdpbi10b3A6IDFyZW0KICAgIH0KICAgIC5wcm9kdWN0LWluZm8tdGFiIC5yZXZpZXctd3JhcHBlciAucmV2aWV3cyAucmV2aWV3LXNpbmdsZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgogICAgfQogICAgLnByb2R1Y3QtaW5mby10YWIgLnJldmlldy13cmFwcGVyIC5yZXZpZXdzIC5yZXZpZXctc2luZ2xlIC5yZXZpZXctdGV4dCB7CiAgICAgICAgbWFyZ2luLXRvcDogMnJlbQogICAgfQogICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LXNoYXJlIHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0ICFpbXBvcnRhbnQKICAgIH0KICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1zaGFyZT5zcGFuIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtCiAgICB9CiAgICAucmV2X2NvbHVtbiB7CiAgICAgICAgcGFkZGluZzogMCAxNXB4ICFpbXBvcnRhbnQKICAgIH0KICAgIC5nb190b3AgewogICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OwogICAgICAgIHdpZHRoOiAzMHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweAogICAgfQogICAgLnNlcnZpY2VzX2FyZWEgLmljb24tYm94LWZpdmUgewogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4CiAgICB9CiAgICAuaW50cm8tb25lIC5pbnRyby1vbmUtLWNvbnRlbnRzIHsKICAgICAgICBwYWRkaW5nLXRvcDogNDBweAogICAgfQogICAgLmRpc3BsYXktMyB7CiAgICAgICAgZm9udC1zaXplOiAyLjVyZW0KICAgIH0KICAgIC5sb2dpbi1yZWdpc3RlciAubG9naW4tZm9ybSAuZm9ybS13cmFwcGVyIC5vdGhlci1sb2dpbnMgYSwKICAgIC5sb2dpbi1yZWdpc3RlciAuc2lnbnVwLWZvcm0gLmZvcm0td3JhcHBlciAub3RoZXItbG9naW5zIGEgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcgogICAgfQogICAgLmxpc3QtaW5saW5lLXdyYXBwZXIgLmxpc3QtLWlubGluZSB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsKICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsKICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbgogICAgfQogICAgLnAtdG9wLTcwIHsKICAgICAgICBwYWRkaW5nLXRvcDogNTBweAogICAgfQogICAgLnAtYm90dG9tLTcwIHsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweAogICAgfQogICAgLnAtdG9wLTEwNSB7CiAgICAgICAgcGFkZGluZy10b3A6IDc1cHgKICAgIH0KICAgIC5wLWJvdHRvbS03NSB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHgKICAgIH0KICAgIC5jb250ZW50LWJsb2NrLS0xNSB7CiAgICAgICAgcGFkZGluZzogNzNweCAwIDYycHgKICAgIH0KICAgIC50ZXN0aW1vbmlhbC1jYXJvdXNlbC1zaXgtd3JhcHBlciB7CiAgICAgICAgcGFkZGluZzogNi4wNjY2N3JlbSAwIDUuODY2NjdyZW0gMAogICAgfQogICAgLnAtdG9wLTEwMCB7CiAgICAgICAgcGFkZGluZy10b3A6IDcwcHgKICAgIH0KICAgIC5zdWJzY3JpYmUtc2V2ZW4gewogICAgICAgIHBhZGRpbmc6IDUwcHggMAogICAgfQogICAgZm9vdGVyIC5mb290ZXJfX2JpZyB7CiAgICAgICAgcGFkZGluZzogNzVweCAwIDIwcHgKICAgIH0KICAgIC5zZXJ2aWNlLXR3byB7CiAgICAgICAgcGFkZGluZzogODBweCAwIDUwcHgKICAgIH0KICAgIC5wLXRvcC0xMTAsCiAgICAucC10b3AtMTE1LAogICAgLnAtdG9wLTEyMCB7CiAgICAgICAgcGFkZGluZy10b3A6IDgwcHgKICAgIH0KICAgIC5wLWJvdHRvbS0xMDAsCiAgICAucC1ib3R0b20tMTA1LAogICAgLnAtYm90dG9tLTExMCwKICAgIC5wLWJvdHRvbS0xMjAsCiAgICAucC1ib3R0b20tOTUgewogICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4CiAgICB9CiAgICAudGVhbS13cmFwcGVyKy5wLXRvcC01MCB7CiAgICAgICAgcGFkZGluZy10b3A6IDAKICAgIH0KICAgIC5zdWJzY3JpYmUtZWlnaHQgewogICAgICAgIHBhZGRpbmc6IDgwcHggMCAwCiAgICB9CiAgICAuc2VydmljZXNfYXJlYS5wLWJvdHRvbS03MCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHgKICAgIH0KICAgIC5zZWN0aW9uLXBhZGRpbmcgewogICAgICAgIHBhZGRpbmc6IDgwcHggMAogICAgfQogICAgLnRlc3RpbW9uaWFscyB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHgKICAgIH0KICAgIC5wLWJvdHRvbS05MCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHgKICAgIH0KICAgIC5wLWJvdHRvbS04MCB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHgKICAgIH0KICAgIC5ibG9jay1mdWxsLXdpZHRoLAogICAgLmJsb2NrLWZ1bGwtd2lkdGgyIHsKICAgICAgICBtaW4taGVpZ2h0OiBhdXRvOwogICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4CiAgICB9CiAgICAuYmxvY2stZnVsbC13aWR0aDIgewogICAgICAgIHBhZGRpbmctdG9wOiA1MHB4CiAgICB9CiAgICAuY291bnRlci5jb3VudGVyLS0zIHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAgMzBweCAhaW1wb3J0YW50CiAgICB9CiAgICAudGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciB7CiAgICAgICAgcGFkZGluZzogODBweCAwIDcwcHgKICAgIH0KICAgIC5jb3VudGVyLS0xLAogICAgLmNvdW50ZXItLTIsCiAgICAuY291bnRlci0tMywKICAgIC5jb3VudGVyLS00LAogICAgLmNvdW50ZXItLTYgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAyOHB4ICFpbXBvcnRhbnQKICAgIH0KICAgIC5zdWJzY3JpYmUtZm91ciB7CiAgICAgICAgcGFkZGluZzogODBweCAwCiAgICB9CiAgICAudGVzdGltb25pYWw2IC5zaW5nbGVfdGVzdGltb25pYWwucC1ib3R0b20tNTAgewogICAgICAgIHBhZGRpbmctYm90dG9tOiAwCiAgICB9CiAgICAuYWNjb3JkaW9uLXN0eWxlcyAuYWNjb3JkaW9uX2ZvdXIgewogICAgICAgIG1hcmdpbi10b3A6IDUwcHgKICAgIH0KICAgIC5jb3VudGVyLmNvdW50ZXItLTUgewogICAgICAgIHBhZGRpbmc6IDgwcHggMCA1NXB4CiAgICB9CiAgICAuc3BsaXR0ZWQtYmFubmVyIHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAKICAgIH0KICAgIC5wLWJvdHRvbS01NSB7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHgKICAgIH0KICAgIC5sb2dvLWNhcm91c2VsIHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAKICAgIH0KICAgIC5tLXRvcC0xMTAgewogICAgICAgIG1hcmdpbi10b3A6IDgwcHgKICAgIH0KICAgIC5zZWN0aW9uLXBhZGRpbmcyIHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAgNTBweAogICAgfQogICAgLnByb2plY3QtZ3JpZC0zLnNlY3Rpb24tcGFkZGluZzIgewogICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4CiAgICB9CiAgICAubS1ib3R0b20tMTIwIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4CiAgICB9CiAgICAuaW5mb3JtYXRpb24tYm94IHsKICAgICAgICBwYWRkaW5nOiA4MHB4IDAgNjBweCAhaW1wb3J0YW50CiAgICB9CiAgICAuYWN0aW9uLWJ0bnMgdWwgbGkgewogICAgICAgIG1hcmdpbi1ib3R0b206IDAKICAgIH0KICAgIC5hY3Rpb24tYnRucyB1bCBsaS5zaGFyZS1idG4gewogICAgICAgIHBhZGRpbmctYm90dG9tOiAwCiAgICB9CiAgICAuY2hlY2tvdXQtY29uZmlybSB7CiAgICAgICAgcGFkZGluZzogNzJweCAwIDgwcHgKICAgIH0KfQoKQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo0NzlweCkgewogICAgaHRtbCB7CiAgICAgICAgZm9udC1zaXplOiAxM3B4CiAgICB9CiAgICBib2R5IHsKICAgICAgICBmb250LXNpemU6IDE0cHgKICAgIH0KICAgIC50b3BfYmFyIC50b3BfYmFyLS1sYW5nIHsKICAgICAgICBkaXNwbGF5OiBub25lCiAgICB9CiAgICAudG9wX2JhciAudG9wYmFyX2NvbnRlbnQgewogICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50CiAgICB9CiAgICAubWVudTYgLmN0YWJ0biwKICAgIC5tZW51NiAuc2VhcmNoX21vZHVsZSB7CiAgICAgICAgZGlzcGxheTogbm9uZQogICAgfQogICAgLm1lbnUxIC5uYXZiYXItYnJhbmQgewogICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDEgIWltcG9ydGFudDsKICAgICAgICAtd2Via2l0LW9yZGVyOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDAgIWltcG9ydGFudDsKICAgICAgICBvcmRlcjogMCAhaW1wb3J0YW50CiAgICB9CiAgICAubWVudTEgLm5hdl9yaWdodF9jb250ZW50IHsKICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQKICAgIH0KICAgIC5tZW51NSB7CiAgICAgICAgcGFkZGluZzogMTJweCAwCiAgICB9CiAgICAubWVudTUgLm5hdmJhci1icmFuZCB7CiAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMSAhaW1wb3J0YW50OwogICAgICAgIC13ZWJraXQtb3JkZXI6IDAgIWltcG9ydGFudDsKICAgICAgICAtbXMtZmxleC1vcmRlcjogMCAhaW1wb3J0YW50OwogICAgICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgd2lkdGg6IDUwJQogICAgfQogICAgLm1lbnU1IC5uYXZfcmlnaHRfY29udGVudCB7CiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50CiAgICB9CiAgICAubmF2YmFyIC5uYXZiYXItYnJhbmQgewogICAgICAgIHdpZHRoOiA0MCUKICAgIH0KICAgIC5icmVhZGNydW1iX2FyZWEuYnJlYWRjcnVtYjIgewogICAgICAgIHBhZGRpbmctdG9wOiA0cmVtCiAgICB9CiAgICAuYnJlYWRjcnVtYl9hcmVhLmJyZWFkY3J1bWIyIC5wYWdlX3RpdGxlIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtCiAgICB9CiAgICAuc2hvd2Nhc2UtYm94IC5zaG93Y2FzZS1ib2R5LAogICAgLnNob3djYXNlLWJveCAuc2hvd2Nhc2UtaGVhZGVyIHsKICAgICAgICBwYWRkaW5nOiAycmVtCiAgICB9CiAgICAuY3RhLXdyYXBwZXIgewogICAgICAgIHBhZGRpbmc6IDZyZW0gMAogICAgfQogICAgLmNhcmQgLmNhcmQtYm9keSB7CiAgICAgICAgcGFkZGluZzogMnJlbQogICAgfQogICAgLmNhcmQgLmNhcmQtZm9vdGVyIHsKICAgICAgICBwYWRkaW5nOiAxLjY2cmVtCiAgICB9CiAgICAuY3RhLS1uaW5lOmJlZm9yZSwKICAgIGZvb3Rlci5mb290ZXI2OmJlZm9yZSB7CiAgICAgICAgY29udGVudDogbm9uZQogICAgfQogICAgZm9vdGVyLmZvb3RlcjYgewogICAgICAgIHBhZGRpbmctdG9wOiAwCiAgICB9CiAgICBmb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5mb290ZXJfX2JvdHRvbS1jb250ZW50IHsKICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOwogICAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIKICAgIH0KICAgIGZvb3RlciAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fYm90dG9tLWNvbnRlbnQgcCB7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0KICAgIH0KICAgIC5wbGF5LWJ0bi5wbGF5LWJ0bi0tbGcgewogICAgICAgIHdpZHRoOiAzLjMzMzMzcmVtOwogICAgICAgIGhlaWdodDogMy4zMzMzM3JlbQogICAgfQogICAgLnBsYXktYnRuLnBsYXktYnRuLS1sZyAuc3ZnIHsKICAgICAgICB3aWR0aDogMTVweAogICAgfQogICAgLm5hdi1waWxscyAubmF2LWl0ZW0gewogICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHgKICAgIH0KICAgIC5jb21pbmctc29vbiAuY3MtY29udGVudHMgLmNzLXRleHQgewogICAgICAgIGZvbnQtc2l6ZTogMi4zMzMzM3JlbQogICAgfQogICAgLmNvbnRlbnQtYmxvY2stLTEyIC5oaWdobGlnaHRlZC10ZXh0IC5jb250ZW50IHsKICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHgKICAgIH0KICAgIC5zdWJzY3JpYmUtZm9ybS10d28gewogICAgICAgIHBhZGRpbmc6IDAKICAgIH0KICAgIC5zdWJzY3JpYmUtZm9ybS10d28gLmJ0biB7CiAgICAgICAgcG9zaXRpb246IHN0YXRpYzsKICAgICAgICB0b3A6IDA7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTsKICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgbWFyZ2luLXRvcDogMTVweAogICAgfQogICAgLnN1YnNjcmliZS1mb3JtLXR3byAuZm9ybS1jb250cm9sIHsKICAgICAgICBwYWRkaW5nOiAwIDE1cHgKICAgIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6NDgwcHgpIGFuZCAobWF4LXdpZHRoOjU3NXB4KSB7CiAgICBodG1sIHsKICAgICAgICBmb250LXNpemU6IDE0cHgKICAgIH0KfQ=="}},"time_used":103,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":94,"receive":9,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.003Z","timestamp":1785154590003,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /embed-widget/crypto-mkt-screener/?locale=en HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\ncache-control: max-age=120\r\nexpires: Mon, 27 Jul 2026 12:18:18 GMT\r\ncontent-security-policy: default-src 'self' https: data: blob: wss: 'unsafe-inline'; base-uri 'none'; script-src https://static.tradingview.com/static/ blob: https://*.ampproject.org/ https://*.paypal.com/ https://platform.twitter.com https://platform.x.com https://songbird.cardinalcommerce.com/edge/v1/ https://checkout.razorpay.com/ https://cdn.razorpay.com/static/cx/ https://*.checkout.com/ https://*.revolut.com/ https://*.cardinaltrusted.com https://pay.google.com/gp/p/js/ https://applepay.cdn-apple.com/jsapi/ https://tradingview-gateway.com/ https://www.tradingview-widget.com/static/bundles/embed/ 'nonce-L0Jk+L+e+cZEUBAMX+KkhA=='; object-src 'none'\r\ncross-origin-opener-policy: same-origin-allow-popups\r\nreferrer-policy: origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/27/2026 12:16:30\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4a5d01ca83e0bf3ff68b7edc0433e512\r\ncdn-cache: EXPIRED\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"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":31645,"size_decoded":10658,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (17729)","md5":"cf72ebc0b0e28a7a03e508a8963bb91c","sha1":"ca21a69304fd68915e90fc12d49c9f3df438d40d","sha256":"d63deb7cb5eb199f60fe00fdcd0ac0fabafa54e5d1eb51248be28331d80a5e5a","sha512":"4574b8a4244cf8c7ebd83efdc21b4f24ea004560b99d89878a9a02ccab2d23788babdfe0bd4302b1f5c9e167be130bed48f3f46775128a87648a4dfc38eda769","ssdeep":"768:johXEcvpMte3ARANvbj+UNogFbLrF37MawdzI:IpRMte3ARANvbj+UNogdF3x","tlshash":"78e2e66ba80cd314e8458964bc77f602fd1e131d85a1acd096eec92c01d7ec6e20fbad","first_seen":"2026-07-27T12:17:15.103468Z","last_seen":"2026-07-27T12:17:29.174237Z","times_seen":2,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5TY3JlZW5lciB3aWRnZXQ8L3RpdGxlPgoKCTxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9zY2FubmVyLnRyYWRpbmd2aWV3LmNvbSIgY3Jvc3NvcmlnaW4+Cgk8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLyIgY3Jvc3NvcmlnaW4+CgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTUyNy4xNWM1YzI1ZDI3YTU2YTBkZjc3Mi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zOTA3MC41NWNiYzdhMWRhOTYzYjM4MjliMy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDY5MDcuYzVhZjhhYTdiNTA4MmIxODc1YTUuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQyMzIuYWI2NzMxYjY5OGE4YzI4NTRhOTAuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzI4MTYuMzU1ZDc1YjIxYWU0YjUzNGE4NDkuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTcwODcuYTVlYWViMzBmN2QyNjlmOTdiNDEuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDMzMjUuMjU2ZmE1YTUyMTNiOWNiNzBmNWMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzkwNS42ODJlODllZjJkYzRjNzA0MjNjNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zNTc5NC4wYTI3M2JhZmM1ZGU1MGEwZDIxZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTkzMi4yYTcwZDM5N2MzNGYyZTlkZTk0Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81NDY4MS5hNzE3MTEwZTY3NDlmMzA3ZWQ2ZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MTUwOC43NjcyMTkyODNjNjVmNGQ0Y2E2ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTUxOC4wODFmOTYzN2I5NGVlNjJhNmU2Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjYzMi41OTZlNTM0OGExNTM4YTE4ZmQ0ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTYzNC45ZmY1MDBmNDBjM2VjMjQ5NmE5ZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83NTMwNC4xNzQ0OTZkYmY2MmJjOTBkYjU5YS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MjA5NS5lNmViNTMwYTEzYjJmZWJkMmNkMy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zODAwMi44NmQyODBmZWVhYmFiNjk4MzYwYi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NDAzMS4yNjkxZmMyYzM0NjgyOTNiZmQxNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80Mzc5Mi5lMWJkMDYxMTI0MDRmMDkwMWE2Ni5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83MDM2NC42NDRjYjkzNDQxNjkwYzgyOWFiOS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDg4LjA5ZjI2OWY4YjI2YjJiMDBhOGI3LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM3ODY3LmVjNzMxYWQxMDJkYjY3NjJlNDBjLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzYyNjgxLjY4ODNjNGIxN2U2YTg5ZTRiODdmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMwMjAwLjcxZGEwNzZmYjAxOTdlNGQ1OTUzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMxMzk2LmRhZGExN2FiYzRhZGJmMDczMTM5LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoKPHNjcmlwdCBub25jZT0iTDBKaytMK2UrY1pFVUJBTVgrS2toQT09Ij4KCXdpbmRvdy5sb2NhbGUgPSAnZW4nOwoJd2luZG93Lmxhbmd1YWdlID0gJ2VuJzsKPC9zY3JpcHQ+Cgk8c2NyaXB0IG5vbmNlPSJMMEprK0wrZStjWkVVQkFNWCtLa2hBPT0iPnZhciBlbnZpcm9ubWVudCA9ICJiYXR0bGUiOzwvc2NyaXB0PgoKCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF9zY3JlZW5lcl92MV93aWRnZXQuOWRiZTFiMjgyMTRkN2ExNDcxYmEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjQ2MDI0Ljk3MTc2YWE0OGZlOWQ5YTBkMTI3LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjM4Ny40N2FjZTgzYzYxYTg4NDM0MWNkNi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQ5MjY1LmMyMDhlZjgzNzllMDczZjk0ZDE2LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83NTA0LjEyODhkMWQyOGIyZjQ3ZjdhYzQzLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTgyNy5kMzk3NmRjMGM1Y2ZhMmMyMTQwZS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzYxNjYuNzYzN2JlMWNmMjUxNDUwNGFjNzkuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc2NTc3LmY3M2EwMWUxZjAwMDQzNjIyYjY1LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODAyMDcuM2U1ZTdkNjhjODc1YjM2N2NhZDAuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzEyMTgxLmI2NWE1ODM1NWZmN2NjMzQ5NTBmLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82MTQ5NS4zN2VlN2QxODJjZjg0Y2FhNzY4MS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzAyODguNTkyMDdhYTI2MDdlYTE1OTcyODcuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX3NjcmVlbmVyX3YxX3dpZGdldC4zYzZkY2I0ODI0MWIzOGFkMjBjZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+PHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF9zY3JlZW5lcl92MV93aWRnZXQuOWRiZTFiMjgyMTRkN2ExNDcxYmEuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi40NjAyNC45NzE3NmFhNDhmZTlkOWEwZDEyNy5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMyMzg3LjQ3YWNlODNjNjFhODg0MzQxY2Q2LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTI2NS5jMjA4ZWY4Mzc5ZTA3M2Y5NGQxNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc1MDQuMTI4OGQxZDI4YjJmNDdmN2FjNDMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTgyNy5kMzk3NmRjMGM1Y2ZhMmMyMTQwZS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM2MTY2Ljc2MzdiZTFjZjI1MTQ1MDRhYzc5LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNzY1NzcuZjczYTAxZTFmMDAwNDM2MjJiNjUuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwMjA3LjNlNWU3ZDY4Yzg3NWIzNjdjYWQwLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTIxODEuYjY1YTU4MzU1ZmY3Y2MzNDk1MGYuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82MTQ5NS4zN2VlN2QxODJjZjg0Y2FhNzY4MS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMwMjg4LjU5MjA3YWEyNjA3ZWExNTk3Mjg3LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfc2NyZWVuZXJfdjFfd2lkZ2V0LjNjNmRjYjQ4MjQxYjM4YWQyMGNkLmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJMMEprK0wrZStjWkVVQkFNWCtLa2hBPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjM1LCJjaGFydF9hdXRvc2F2ZV81bWluIjoxLjAsImNoYXJ0X2F1dG9zYXZlXzMwbWluIjoxLjAsInBlcmZvcm1hbmNlX3Rlc3RfbW9kZSI6MS4wLCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCI6MS4wLCJjaGFydF9zdG9yYWdlX2hpYmVybmF0aW9uX2RlbGF5XzYwbWluIjoxLjAsInN1cHBvcnRfcGVyc2lzdGVudF9sb2dzIjoxLjAsIm5ld19zdG9yYWdlX3N1YnNjcmlwdGlvbl91cmwiOjEuMCwicmVtb3ZlX2FuY2hvcmVkX3RleHQiOjEuMCwiZW5hYmxlX3N0ZXBfYnlfc3RlcF9oaW50c19mb3JfZHJhd2luZ3MiOjEuMCwicHVzaHN0cmVhbV9iYXNpY190ZWxlbWV0cnkiOjEuMCwiYWxsb3dfYnJhY2tldHNfcHJvZml0X2xvc3MiOjEuMCwiZW5hYmxlX3RyYWRlZF9jb250ZXh0X2xpbmtpbmciOjEuMCwib3JkZXJfY29udGV4dF92YWxpZGF0aW9uX2luX2luc3RhbnRfbW9kZSI6MS4wLCJhbGVydHMtb24tZnVuZGFtZW50YWwtbWV0cmljcyI6MS4wLCJhbGVydHMtbm90aWZpY2F0aW9uLXNjaGVkdWxlIjoxLjAsImFsZXJ0cy13YXRjaGxpc3QtZXh0ZW5kZWQtaG91cnMiOjEuMCwiZW5hYmxlX3N5bWJvbF9jaGFuZ2VfcmVzdHJpY3Rpb25fb25fd2lkZ2V0cyI6MS4wLCJlbmFibGVfYXN4X3N5bWJvbF9yZXN0cmljdGlvbiI6MS4wLCJzeW1waG9ueV9hbGxvd19ub25fcGFydGl0aW9uZWRfY29va2llX29uX29sZF9zeW1waG9ueSI6MS4wLCJzeW1waG9ueV9ub3RpZmljYXRpb25fYmFkZ2VzIjoxLjAsInN5bXBob255X3VzZV9hZGtfZm9yX3VwZ3JhZGVfcmVxdWVzdCI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF90cmFja2luZyI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF9zb2Z0X2xpbWl0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X2hhcmRfbGltaXQiOjEuMCwidGVsZWdyYW1fbWluaV9hcHBfcmVkdWNlX3NuYXBzaG90X3F1YWxpdHkiOjEuMCwibmV3c19zeW1ib2xfb3ZlcnZpZXdfa2V5X2ZhY3RzIjoxLjAsInRpbWVvdXRfZGphbmdvX2RiIjowLjE1LCJ0aW1lb3V0X2RqYW5nb191c2Vyc2V0dGluZ3NfZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX2NoYXJ0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fc3ltYm9sc19saXN0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fbWluZHNfZGIiOjAuMDUsInRpbWVvdXRfZGphbmdvX2xvZ2dpbmdfZGIiOjAuMjUsImRpc2FibGVfc2VydmljZXNfbW9uaXRvcl9tZXRyaWNzIjoxLjAsImVuYWJsZV9zaWduaW5fcmVjYXB0Y2hhIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sX2NvbW1lbnRzIjoxLjAsImVuYWJsZV9zcGFtZGV0ZWN0b3JtbF9jaGF0IjoxLjAsImVuYWJsZV9taW5kc19zcGFtZGV0ZWN0b3JtbCI6MS4wLCJiYWNrZW5kLWNvbm5lY3Rpb25zLWluLXRva2VuIjoxLjAsIm9uZV9jb25uZWN0aW9uX3dpdGhfZXhjaGFuZ2VzIjoxLjAsIm1vYmlsZS1hZHMtaW9zIjoxLjAsIm1vYmlsZS1hZHMtYW5kcm9pZCI6MS4wLCJnb29nbGUtb25lLXRhcC1zaWduaW4iOjEuMCwiYnJhaW50cmVlLWdvcHJvLWluLW9yZGVyLWRpYWxvZyI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5IjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5IjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktZnJvbS1pb3MtYXBwIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktdHJpYWwiOjEuMCwidHJpcGxlYS1wYXltZW50cyI6MS4wLCJicmFpbnRyZWUtZ29vZ2xlLXBheS10cmlhbCI6MS4wLCJicmFpbnRyZWUtb25lLXVzZC12ZXJpZmljYXRpb24iOjEuMCwiYnJhaW50cmVlLTNkcy1lbmFibGVkIjoxLjAsImJyYWludHJlZS0zZHMtc3RhdHVzLWNoZWNrIjoxLjAsImJyYWludHJlZS1hZGRpdGlvbmFsLWNhcmQtY2hlY2tzLWZvci10cmlhbCI6MS4wLCJicmFpbnRyZWUtaW5zdGFudC1zZXR0bGVtZW50IjoxLjAsImJyYWludHJlZV9yZWN1cnJpbmdfYmlsbGluZ19zY2hlZHVsZXJfc3Vic2NyaXB0aW9uIjoxLjAsImNoZWNrb3V0X21hbnVhbF9jYXB0dXJlX3JlcXVpcmVkIjoxLjAsImNoZWNrb3V0LXN1YnNjcmlwdGlvbnMiOjEuMCwiY2hlY2tvdXRfYWRkaXRpb25hbF9jYXJkX2NoZWNrc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9wcmVwYWlkX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl9wcmVtaXVtX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fY29tbWVyY2lhbF9jYXJkX3RyaWFsIjoxLjAsImVuYWJsZV9wYXltZW50c18zZHNfb3B0aW1pemF0aW9uIjoxLjAsImNvdW50cnlfb2ZfaXNzdWFuY2VfdnNfYmlsbGluZ19jb3VudHJ5IjoxLjAsImNoZWNrb3V0X3Nob3dfaW5zdGVhZF9vZl9icmFpbnRyZWUiOjEuMCwiY2hlY2tvdXQtM2RzIjoxLjAsImNoZWNrb3V0LXBheXBhbCI6MS4wLCJjaGVja291dF9pbmNsdWRlX2FjY291bnRfaG9sZGVyIjoxLjAsImNoZWNrb3V0LXBheXBhbC10cmlhbCI6MS4wLCJhbm51YWxfdG9fbW9udGhseV9kb3duZ3JhZGVfYXR0ZW1wdCI6MS4wLCJyYXpvcnBheV90cmlhbF8xMF9pbnIiOjEuMCwicmF6b3JwYXktY2FyZC1vcmRlci10b2tlbi1zZWN0aW9uIjoxLjAsInJhem9ycGF5LWNhcmQtc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS11cGktc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS1zMy1pbnZvaWNlLXVwbG9hZCI6MS4wLCJyYXpvcnBheV9pbmNsdWRlX2RhdGVfb2ZfYmlydGgiOjEuMCwiZGxvY2FsLXBheW1lbnRzIjoxLjAsInJldm9sdXQtcGF5LXBheW1lbnRzIjoxLjAsInJldm9sdXQtY2FyZC1wYXltZW50cyI6MC41LCJkbG9jYWwtcGl4LWF1dG9tYXRpY28iOjEuMCwiYnJhaW50cmVlX3RyYW5zYWN0aW9uX3NvdXJjZSI6MS4wLCJ2ZXJ0ZXgtdGF4IjoxLjAsInZlcnRleC10YXgtZml4IjoxLjAsInJlY2VpcHRfaW5fZW1haWxzIjoxLjAsImFkd29yZHMtYW5hbHl0aWNzIjoxLjAsImNtMzYwLWFuYWx5dGljcyI6MS4wLCJkaXNhYmxlX21vYmlsZV91cHNlbGxfaW9zIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9hbmRyb2lkIjoxLjAsInJlcXVpcmVkX2FncmVlbWVudF9mb3JfcnQiOjEuMCwiY2hlY2tfbWFya2V0X2RhdGFfbGltaXRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2RhdGEiOjEuMCwiZm9yY2VfdG9fdXBncmFkZV90b19leHBlcnQiOjEuMCwic2VuZF90cmFkZXZhbl9pbnZvaWNlIjoxLjAsInNob3dfcGVwZV9hbmltYXRpb24iOjEuMCwic2VuZF9uZXh0X3BheW1lbnRfaW5mb19yZWNlaXB0IjoxLjAsInN1cHBvcnRfb3Zlcm5pZ2h0X3Nlc3Npb24iOjEuMCwic2NyZWVuZXItYWxlcnRzLXJlYWQtb25seSI6MS4wLCJzY3JlZW5lcl9ib25kX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9zdG9ja19haV9maWx0ZXJzX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfaXNfYWxsb3dlZF90b19jcmVhdGVfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JhdGluZ19jb2x1bW5zX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3NvcnRpbmdfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfZ3JvdXBfYnlfaXNpbl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9zeW1ib2xfc2VhcmNoX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JlZ2lzdHJhdGlvbl9iYW5uZXJfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNlc190cmFja2luZyI6MS4wLCJzZW5kX2ZpbmFuY2lhbF9ub3RpZmljYXRpb25zIjoxLjAsInNwYXJrX3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya19jYXRlZ29yeV90cmFuc2xhdGlvbnMiOjEuMCwic3BhcmtfdGFnc190cmFuc2xhdGlvbnMiOjEuMCwicHJvX3BsYW5faW5pdGlhbF9yZWZ1bmRzX2Rpc2FibGVkIjoxLjAsInByZXZpb3VzX21vbm9wcm9kdWN0X3B1cmNoYXNlc19yZWZ1bmRzX2VuYWJsZWQiOjEuMCwiZW5hYmxlX2lkZWFzX3JlY29tbWVuZGF0aW9ucyI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zX2ZlZWQiOjEuMCwiZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJldGhvY2FfYWxlcnRfbm90aWZpY2F0aW9uX3dlYmhvb2siOjEuMCwiaGlkZV9zdXNwaWNpb3VzX3VzZXJzX2lkZWFzIjoxLjAsImRpc2FibGVfcHVibGlzaF9zdHJhdGVneV9yYW5nZV9iYXNlZF9jaGFydCI6MS4wLCJyZXN0cmljdF9zaW11bHRhbmVvdXNfcmVxdWVzdHMiOjEuMCwibG9naW5fZnJvbV9uZXdfZGV2aWNlX2VtYWlsIjoxLjAsInNzcl93b3JrZXJfbm93YWl0IjoxLjAsImJyb2tlcl9BMUNBUElUQUwiOjEuMCwiYnJva2VyX0FDVElWVFJBREVTIjoxLjAsImJyb2tlcl9BTENIRU1ZTUFSS0VUUyI6MS4wLCJicm9rZXJfQUxJQ0VCTFVFIjoxLjAsImhpZGVfQUxPUl9vbl9pb3MiOjEuMCwiaGlkZV9BTE9SX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9BTE9SX29uX21vYmlsZV93ZWIiOjEuMCwiYWxvci1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0FMUEFDQSI6MS4wLCJicm9rZXJfQUxSQU1aIjoxLjAsImJyb2tlcl9BTVAiOjEuMCwiYnJva2VyX0FOR0VMT05FIjoxLjAsImJyb2tlcl9BVkFfRlVUVVJFUyI6MS4wLCJBVkFfRlVUVVJFU19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9CMlBSSU1FIjoxLjAsImJyb2tlcl9CQUpBSiI6MS4wLCJicm9rZXJfQkVZT05EIjoxLjAsImJyb2tlcl9CSU5BTkNFIjoxLjAsImVuYWJsZV9iaW5hbmNlYXBpc19iYXNlX3VybCI6MS4wLCJicm9rZXJfQklOR0JPTiI6MS4wLCJicm9rZXJfQklUQVpaQSI6MS4wLCJicm9rZXJfQklUR0VUIjoxLjAsImJyb2tlcl9CSVRNRVgiOjEuMCwiYnJva2VyX0JJVFNUQU1QIjoxLjAsImJyb2tlcl9CTEFDS0JVTEwiOjEuMCwiYnJva2VyX0JMVUVCRVJSWU1BUktFVFMiOjEuMCwiYnJva2VyX0JUQ0MiOjEuMCwiYnJva2VyX0JZQklUIjoxLjAsImJyb2tlcl9DQVBJVEFMQ09NIjoxLjAsImJyb2tlcl9DQVBUUkFERVIiOjEuMCwiQ0FQVFJBREVSX3NlcGFyYXRlX2ludGVncmF0aW9uX21pZ3JhdGlvbl93YXJuaW5nIjoxLjAsImJyb2tlcl9DRkkiOjEuMCwiYnJva2VyX0NHU0kiOjEuMCwiYnJva2VyX0NJVFlJTkRFWCI6MS4wLCJjaXR5aW5kZXhfc3ByZWFkYmV0dGluZyI6MS4wLCJDTEVBUlNUUkVFVF9iZXRhIjoxLjAsImJyb2tlcl9DTUNNQVJLRVRTIjoxLjAsImJyb2tlcl9DT0JSQVRSQURJTkciOjEuMCwiYnJva2VyX0NPSU5CQVNFIjoxLjAsImNvaW5iYXNlX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJjb2luYmFzZV9jYW5jZWxfcG9zaXRpb25fYnJhY2tldHMiOjEuMCwiYnJva2VyX0NPSU5KQVIiOjEuMCwiQ09JTkpBUl9iZXRhIjoxLjAsImJyb2tlcl9DT0lOU1dJVENIIjoxLjAsImJyb2tlcl9DT0lOVyI6MS4wLCJicm9rZXJfQ09MTUVYIjoxLjAsImhpZGVfQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiY3FnLXJlYWx0aW1lLWJhbmR3aWR0aC1saW1pdCI6MS4wLCJicm9rZXJfQ1JZUFRPQ09NIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25faW9zIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fYW5kcm9pZCI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0NYTSI6MS4wLCJicm9rZXJfREFPTCI6MS4wLCJicm9rZXJfREFSV0lORVgiOjEuMCwiREFSV0lORVhfYmV0YSI6MS4wLCJicm9rZXJfREVMVEEiOjEuMCwiYnJva2VyX0RFUkFZQUgiOjEuMCwiYnJva2VyX0RFUklWIjoxLjAsImJyb2tlcl9ESEFOIjoxLjAsImJyb2tlcl9ETlNFIjoxLjAsImJyb2tlcl9ET1JNQU4iOjEuMCwiaGlkZV9EVU1NWV9vbl9pb3MiOjEuMCwiaGlkZV9EVU1NWV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRFVNTVlfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRUFTWU1BUktFVFMiOjEuMCwiYnJva2VyX0VDT1ZBTE9SRVMiOjEuMCwiYnJva2VyX0VER0VDTEVBUiI6MS4wLCJlZGdlY2xlYXJfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfRUlHSFRDQVAiOjEuMCwiYnJva2VyX0VSUkFOVEUiOjEuMCwiYnJva2VyX0VTQUZYIjoxLjAsIkZJREVMSVRZX2JldGEiOjEuMCwiRklERUxJVFlfdXNfcmVsZWFzZSI6MC4yNSwiZmlkZWxpdHlfc2VjdXJpdHlfdG9rZW4iOjEuMCwiYnJva2VyX0ZPUkVYQ09NIjoxLjAsImZvcmV4Y29tX3Nlc3Npb25fdjIiOjEuMCwiYnJva2VyX0ZQTUFSS0VUUyI6MS4wLCJoaWRlX0ZUWF9vbl9pb3MiOjEuMCwiaGlkZV9GVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0ZUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImZ0eF9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZVU0lPTk1BUktFVFMiOjEuMCwiZnhjbV9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9GWENNIjoxLjAsImhpZGVfRlhPUEVOX29uX2lvcyI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlhPUEVOX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0ZYUFJPIjoxLjAsImJyb2tlcl9GWFRGIjoxLjAsImJyb2tlcl9GWUVSUyI6MS4wLCJicm9rZXJfR0FURSI6MS4wLCJicm9rZXJfR0JFQlJPS0VSUyI6MS4wLCJnZW1pbmktYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HRU5JQUxJTlZFU1RJTUVOVE9TIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25faW9zIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX21vYmlsZV93ZWIiOjEuMCwiZ2xvYmFscHJpbWUtYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HT01BUktFVFMiOjEuMCwiYnJva2VyX0dPVFJBREUiOjEuMCwiZ290cmFkZV9lbmFibGVfc3RyZWFtaW5nX2VuZHBvaW50cyI6MS4wLCJicm9rZXJfSEVSRU5ZQSI6MS4wLCJoaWRlX0hUWF9vbl9pb3MiOjEuMCwiaGlkZV9IVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0hUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9JQktSIjoxLjAsImNoZWNrX2lia3Jfc2lkZV9tYWludGVuYW5jZSI6MS4wLCJpYmtyX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3BhcmFsbGVsX3Byb3ZpZGVyX2luaXRpYWxpemF0aW9uIjoxLjAsImlia3Jfd3NfYWNjb3VudF9zdW1tYXJ5IjoxLjAsImlia3Jfd3Nfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3N1YnNjcmliZV90b19vcmRlcl91cGRhdGVzX2ZpcnN0IjoxLjAsImlia3Jfd3NfYWNjb3VudF9sZWRnZXIiOjEuMCwiYnJva2VyX0lCUk9LRVIiOjEuMCwiYnJva2VyX0lDTUFSS0VUUyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0FTSUMiOjEuMCwiYnJva2VyX0lDTUFSS0VUU19FVSI6MS4wLCJicm9rZXJfSUciOjEuMCwiYnJva2VyX0lORFNUT0NLUyI6MS4wLCJicm9rZXJfSU5GT1lBVElSSU0iOjEuMCwiYnJva2VyX0lOTk9WRVNUWCI6MS4wLCJicm9rZXJfSU5URVJBQ1RJVkVJTCI6MS4wLCJicm9rZXJfSU5WRVNUUkFERSI6MS4wLCJJTlZFU1RSQURFX2JldGEiOjEuMCwiYnJva2VyX0lST05CRUFNIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tJV09PTSI6MS4wLCJraXdvb21fdXNlX3NlcGFyYXRlX3N0cmVhbWluZ191cmwiOjEuMCwiYnJva2VyX0tPVEFLIjoxLjAsImhpZGVfS09UQUtfb25faW9zIjoxLjAsImhpZGVfS09UQUtfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0tPVEFLX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tSQUtFTiI6MS4wLCJoaWRlX0tSQUtFTl9vbl9pb3MiOjEuMCwiaGlkZV9LUkFLRU5fb25fYW5kcm9pZCI6MS4wLCJLUkFLRU5fYmV0YSI6MS4wLCJrcmFrZW5fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9LU0VDVVJJVElFUyI6MS4wLCJicm9rZXJfTElCRVJBVE9SIjoxLjAsImJyb2tlcl9NRVhDIjoxLjAsImJyb2tlcl9NRVhFTSI6MS4wLCJicm9rZXJfTUlEQVMiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX01PT01PTyI6MS4wLCJicm9rZXJfTU9USUxBTE9TV0FMIjoxLjAsImJyb2tlcl9OSU5KQVRSQURFUiI6MS4wLCJicm9rZXJfT0FOREEiOjEuMCwib2FuZGFfc2VydmVyX2xvZ2dpbmciOjEuMCwib2FuZGFfb2F1dGhfbXVsdGlwbGV4aW5nIjoxLjAsImJyb2tlcl9PS1giOjEuMCwiYnJva2VyX09QT0ZJTkFOQ0UiOjEuMCwiYnJva2VyX09QVElNVVMiOjEuMCwiYnJva2VyX09TTUFOTEkiOjEuMCwiYnJva2VyX09TTUFOTElGWCI6MS4wLCJwYXBlcl9mb3JjZV9jb25uZWN0X3B1c2hzdHJlYW0iOjEuMCwicGFwZXJfc3ViYWNjb3VudF9jdXN0b21fY3VycmVuY3kiOjEuMCwicGFwZXJfb3V0c2lkZV9ydGgiOjEuMCwiYnJva2VyX1BBWVRNIjoxLjAsImJyb2tlcl9QRVBQRVJTVE9ORSI6MS4wLCJicm9rZXJfUEhFTUVYIjoxLjAsImJyb2tlcl9QSElMTElQQ0FQSVRBTF9UUiI6MS4wLCJicm9rZXJfUEhJTExJUE5PVkEiOjEuMCwiYnJva2VyX1BMVVM1MDAiOjEuMCwicGx1czUwMF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIlBMVVM1MDBVU19iZXRhIjoxLjAsImJyb2tlcl9QVVJQTEVUUkFESU5HIjoxLjAsImJyb2tlcl9RVUVTVFJBREUiOjEuMCwiYnJva2VyX1JBVkFCVVJTQVRJTCI6MS4wLCJSQVZBQlVSU0FUSUxfYmV0YSI6MS4wLCJicm9rZXJfUklZQURDQVBJVEFMIjoxLjAsImJyb2tlcl9ST0JPTUFSS0VUUyI6MS4wLCJicm9rZXJfUkVQTEFZQlJPS0VSIjoxLjAsImJyb2tlcl9TQU1VRUwiOjEuMCwiYnJva2VyX1NBWE9CQU5LIjoxLjAsImJyb2tlcl9TSEFSRU1BUktFVCI6MS4wLCJicm9rZXJfU0tJTExJTkciOjEuMCwiYnJva2VyX1NQUkVBREVYIjoxLjAsImJyb2tlcl9TV0lTU1FVT1RFIjoxLjAsImJyb2tlcl9TVE9ORVgiOjEuMCwiYnJva2VyX1RBU1RZRlgiOjEuMCwiYnJva2VyX1RBU1RZVFJBREUiOjEuMCwiYnJva2VyX1RISU5LTUFSS0VUUyI6MS4wLCJ0aGlua21hcmtldHNfYWNjb3VudF9kYXRhX3N0cmVhbWluZyI6MS4wLCJicm9rZXJfVElDS01JTEwiOjEuMCwiaGlkZV9USUdFUl9vbl9pb3MiOjEuMCwiaGlkZV9USUdFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVElHRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfVFJBREVOQVRJT04iOjEuMCwiYnJva2VyX1RSQURFU1RBVElPTiI6MS4wLCJ0cmFkZXN0YXRpb25fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInRyYWRlc3RhdGlvbl9hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsInRyYWRlc3RhdGlvbl9zdHJlYW1pbmdfc2VydmVyX2xvZ2dpbmciOjEuMCwiYnJva2VyX1RSQURFWkVSTyI6MS4wLCJicm9rZXJfVFJBRElFUiI6MS4wLCJicm9rZXJfVFJBRElFUl9GVVRVUkVTIjoxLjAsInRyYWRpZXJfZnV0dXJlc19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9UUkFET1ZBVEUiOjEuMCwiaGlkZV9UUkFEVV9vbl9pb3MiOjEuMCwiaGlkZV9UUkFEVV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVFJBRFVfb25fbW9iaWxlX3dlYiI6MS4wLCJ0cmFkdV9zcHJlYWRfYmV0IjoxLjAsImJyb2tlcl9UUklWRSI6MS4wLCJicm9rZXJfVkFOVEFHRSI6MS4wLCJicm9rZXJfVkVMT0NJVFkiOjEuMCwiYnJva2VyX1dFQlVMTCI6MS4wLCJicm9rZXJfV0VCVUxMSkFQQU4iOjEuMCwiYnJva2VyX1dFQlVMTFBBWSI6MS4wLCJicm9rZXJfV0VCVUxMVUsiOjEuMCwiYnJva2VyX1dISVRFQklUIjoxLjAsImJyb2tlcl9XSFNFTEZJTlZFU1QiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVF9GVVRVUkVTIjoxLjAsIldIU0VMRklOVkVTVF9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1hDVUJFIjoxLjAsImJyb2tlcl9ZTEciOjEuMCwiYnJva2VyX2lkX3Nlc3Npb24iOjEuMCwiZGlzYWxsb3dfY29uY3VycmVudF9zZXNzaW9ucyI6MS4wLCJ1c2VfY29kZV9mbG93X3YyX3Byb3ZpZGVyIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXJfZm9yX3VudGVzdGVkX2Jyb2tlcnMiOjEuMCwibW9iaWxlX3RyYWRpbmdfd2ViIjoxLjAsIm1vYmlsZV90cmFkaW5nX2lvcyI6MS4wLCJtb2JpbGVfdHJhZGluZ19hbmRyb2lkIjoxLjAsImNvbnRpbnVvdXNfZnJvbnRfY29udHJhY3RfdHJhZGluZyI6MS4wLCJ0cmFkaW5nX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJvYXV0aDJfY29kZV9mbG93X3Byb3ZpZGVyX3NlcnZlcl9sb2dnZXIiOjEuMCwicmVzdF9vYXV0aDJfY29kZV9mbG93X211bHRpcGxleGluZyI6MS4wLCJyZXN0X2xvZ291dF9vbl80MjkiOjEuMCwicmV2aWV3X3BvcHVwX29uX2NoYXJ0IjoxLjAsInNob3dfY29uY3VycmVudF9jb25uZWN0aW9uX3dhcm5pbmciOjEuMCwiZW5hYmxlX3RyYWRpbmdfc2VydmVyX2xvZ2dlciI6MS4wLCJvcmRlcl9wcmVzZXRzIjoxLjAsIm9yZGVyX3RpY2tldF9yZXNpemFibGVfZHJhd2VyX29uIjoxLjAsInJlc3RfdXNlX2FzeW5jX21hcHBlciI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9iYW5uZXJfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2ciOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2dfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fbGVhZGVyYm9hcmQiOjEuMCwicGFwZXJfY29tcGV0aXRpb25fcHJldmlvdXNfY29tcGV0aXRpb25zIjoxLjAsImFtcF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJsdWVsaW5lX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiZG9ybWFuX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiaXJvbmJlYW1fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJvcHRpbXVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwic3RvbmV4X29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwieWxnX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwidHJhZGluZ19nZW5lcmFsX2V2ZW50c19nYV90cmFja2luZyI6MS4wLCJyZXBsYXlfcmVzdWx0X3NoYXJpbmciOjEuMCwicmVwbGF5X3RyYWRpbmdfYnJhY2tldHMiOjEuMCwiaGlkZV9hbGxfYnJva2Vyc19idXR0b25faW5faW9zX2FwcCI6MS4wLCJmb3JjZV9tYXhfYWxsb3dlZF9wdWxsaW5nX2ludGVydmFscyI6MS4wLCJwYXBlcl9kZWxheV90cmFkaW5nIjoxLjAsImVuYWJsZV9maXJzdF90b3VjaF9pc19zZWxlY3Rpb24iOjEuMCwiY2xlYXJfcHJvamVjdF9vcmRlcl9vbl9vcmRlcl90aWNrZXRfY2xvc2UiOjEuMCwiZW5hYmxlX25ld19iZWhhdmlvcl9vZl9jb25maXJtX2J1dHRvbnNfb25fbW9iaWxlIjoxLjAsInJlbmV3X3Rva2VuX3ByZWVtcHRpb25fMzAiOjEuMCwiZG9fbm90X29wZW5fb3RfZnJvbV9wbHVzX2J1dHRvbiI6MS4wLCJicm9rZXJfc2lkZV9wcm9tb3Rpb24iOjEuMCwiZW5hYmxlX25ld190cmFkaW5nX21lbnVfc3RydWN0dXJlIjoxLjAsInF1aWNrX3RyYWRpbmdfcGFuZWwiOjEuMCwicGFwZXJfb3JkZXJfY29uZmlybWF0aW9uX2RpYWxvZyI6MS4wLCJwYXBlcl9tdWx0aXBsZV9sZXZlbHNfZW5hYmxlZCI6MS4wLCJwYXBlcl9tYXJnaW5fY29udHJvbCI6MS4wLCJlbmFibGVfc2VnbWVudGF0aW9uX3BhcGVyX3RyYWRpbmciOjEuMCwiZW5hYmxlX2NoYXJ0X2FkYXB0aXZlX3Rwc2xfYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwiZW5hYmxlX21hcmtldF9wcm9qZWN0X29yZGVyIjoxLjAsImVuYWJsZV9zeW1ib2xzX3BvcHVsYXJpdHlfc2hvd2luZyI6MS4wLCJlbmFibGVfdHJhbnNsYXRpb25zX3MzX3VwbG9hZCI6MS4wLCJldGZfZnVuZF9mbG93c19vbmx5X2RheXNfcmVzb2x1dGlvbnMiOjEuMCwiZGlzYWJsZV9zbm93cGxvd19wbGF0Zm9ybV9ldmVudHMiOjEuMCwibm90aWZ5X2lkZWFfbW9kc19hYm91dF9maXJzdF9wdWJsaWNhdGlvbiI6MS4wLCJlbmFibGVfd2FmX3RyYWNraW5nIjoxLjAsIm5ld19lcnJvcnNfZmxvdyI6MS4wLCJxdW90ZS10b2tlbi1maWx0ZXItb3duLXNjcmlwdHMtYnktYWNjZXNzIjoxLjAsImtlZXBfaW5kaWNhdG9yc19zZWFyY2hfc3RhdGUiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3RhYl9zY3JvbGxfc3RhdGUiOjEuMCwiY29uZmlndXJhYmxlX3NlYXJjaF9hbmRfZmlsdHJhdGlvbiI6MS4wLCJwaW5lX2VkaXRvcl93cmFwX29uX2xpbmVfc3BsaXQiOjEuMCwic3ltYm9sX3NlYXJjaF9jb3VudHJ5X3NvdXJjZXMiOjEuMCwid2F0Y2hsaXN0c19kaWFsb2dfc2Nyb2xsX3RvX2FjdGl2ZSI6MS4wLCJib3R0b21fcGFuZWxfdHJhY2tfZXZlbnRzIjoxLjAsInNub3dwbG93X2JlYWNvbl9mZWF0dXJlIjoxLjAsInNob3dfZGF0YV9wcm9ibGVtc19pbl9oZWxwX2NlbnRlciI6MS4wLCJlbmFibGVfYXBwbGVfZGV2aWNlX2NoZWNrIjoxLjAsImVuYWJsZV9hcHBsZV9pbnRyb19vZmZlcl9zaWduYXR1cmUiOjEuMCwiZW5hYmxlX2FwcGxlX3Byb21vX29mZmVyX3NpZ25hdHVyZV92MiI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fc2lnbmF0dXJlIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfYW5kcm9pZCI6MS4wLCJlbmFibGVfcHVzaF9ub3RpZmljYXRpb25zX2lvcyI6MS4wLCJlbmFibGVfbWFudGljb3JlX2NsdXN0ZXIiOjEuMCwiZW5hYmxlX3B1c2hzdHJlYW1fYXV0aCI6MS4wLCJlbmFibGVfZW52b3lfcHJveHkiOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5X3BhcGVydHJhZGluZyI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfc2NyZWVuZXIiOjEuMCwib3B0aW9uc19yZWR1Y2VfcG9sbGluZ19pbnRlcnZhbCI6MS4wLCJvcHRpb25zX2J1aWxkZXJfZ3JvdXBfYWN0aW9ucyI6MS4wLCJvcHRpb25zX2NoYWluX3NpZ21hX2ZpbHRlciI6MS4wLCJvcHRpb25zX2Jyb2tlcl9zdHJhdGVnaWVzIjoxLjAsInNob3dfdG9hc3RfYWJvdXRfdW5yZWFkX21lc3NhZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcGF5b3V0IjoxLjAsImVuYWJsZV9lbWFpbF9jaGFuZ2VfbG9nZ2luZyI6MS4wLCJlbmFibGVfZW1haWxfb25fcGFydG5lcl9zdGF0dXNfY2hhbmdlIjoxLjAsImVuYWJsZV9wYXJ0bmVyX3Byb2dyYW1fYXBwbHkiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbSI6MS4wLCJjb21wcmVzc19jYWNoZV9kYXRhIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZyI6MS4wLCJuZXdzX3NjcmVlbmVyX3BhZ2VfY2xpZW50IjoxLjAsImVuYWJsZV9kZWNsYXJhdGlvbl9wb3B1cF9vbl9sb2FkIjoxLjAsInNob3dfZGF0YV9ib25kc19mcmVlX3VzZXJzIjoxLjAsImVuYWJsZV9tb2Rlcm5fcmVuZGVyX21vZGUiOjEuMCwiZW5hYmxlX3Byb2ZfcG9wdXBfZnJlZSI6MS4wLCJpb3NfYXBwX25ld3NfYW5kX21pbmRzIjoxLjAsImRvX25vdF9kaXNjbG9zZV9waG9uZV9vY2N1cGFuY3kiOjEuMCwiZW5hYmxlX3JlZGlyZWN0X3RvX3dpZGdldF9kb2N1bWVudGF0aW9uX29mX2FueV9sb2NhbGl6YXRpb24iOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nX2hpYmVybmF0aW9uIjoxLjAsIm5ld3Nfc3RyZWFtaW5nX2hpYmVybmF0aW9uX2RlbGF5XzEwbWluIjoxLjAsInBhc3NfcmVjb3Zlcnlfc2VhcmNoX2hpZGVfaW5mbyI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfb25fc2NyZWVuZXIiOjEuMCwiZW5hYmxlX2ZvcmNlZF9lbWFpbF9jb25maXJtYXRpb24iOjEuMCwic2hvd19naWZ0X2J1dHRvbiI6MS4wLCJhZGRyZXNzX3ZhbGlkYXRpb25fZW5hYmxlZCI6MS4wLCJkaXNhYmxlX3VudmVyaWZpZWRfYWRkcmVzcyI6MS4wLCJnZW5lcmF0ZV9pbnZvaWNlX251bWJlcl9ieV9jb3VudHJ5IjoxLjAsInNob3dfZmF2b3JpdGVfbGF5b3V0cyI6MS4wLCJlbmFibGVfc29jaWFsX2F1dGhfY29uZmlybWF0aW9uIjoxLjAsImVuYWJsZV9hZF9ibG9ja19kZXRlY3QiOjEuMCwidHZkX25ld190YWJfbGlua2luZyI6MS4wLCJ0dmRfdGltZV9hbmRfZGF0ZV9yYW5nZV9saW5raW5nIjoxLjAsInVzZV9icm93c2VyX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ1c2VfZGVza3RvcF9zZXNzaW9uX3N0b3JhZ2UiOjEuMCwid3JvbmdfYWNjb3VudF9kaWFsb2dfcHJpbWFyeV9zd2l0Y2giOjEuMCwiZW5hYmxlX2xpbmd1YV9sYW5nX2NoZWNrIjoxLjAsImdldF9zYXZlZF9hY3RpdmVfbGlzdF9iZWZvcmVfZ2V0dGluZ19hbGxfbGlzdHMiOjEuMCwid2F0Y2hsaXN0X2FkZF9zb3VyY2VfcGFyYW0iOjEuMCwic2hvd19yZWZlcnJhbF9ub3RpZmljYXRpb25fZGlhbG9nIjoxLjAsInNldF9uZXdfYmxhY2tfY29sb3IiOjEuMCwibmV3c191c2VfbmV3c19tZWRpYXRvciI6MS4wLCJhbGxvd190cmFpbGluZ193aGl0ZXNwYWNlX2luX251bWJlcl90b2tlbiI6MS4wLCJyZXN0cmljdF9wd25lZF9wYXNzd29yZF9zZXQiOjEuMCwibm90aWZfc2V0dGluZ3NfZW5hYmxlX25ld19zdG9yZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV93cml0ZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV9yZWFkIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrLWZvci1pbml0aWFsLXB1cmNoYXNlIjoxLjAsImVuYWJsZV9tZXRhZGVmZW5kZXJfY2hlY2tfZm9yX2FncmVlbWVudCI6MS4wLCJzaG93X2Rvd25sb2FkX3lpZWxkX2N1cnZlc19kYXRhIjoxLjAsIm1vdmVfa2V5X3Rlbm9yc190b19zZXR0aW5ncyI6MS4wLCJzaG93X3lpZWxkX2N1cnZlc19tYXAiOjEuMCwiZGlzYWJsZV93aWRnZXRiYXJfaW5fYXBwcyI6MS4wLCJoaWRlX3B1YmxpY2F0aW9uc19vZl9iYW5uZWRfdXNlcnMiOjEuMCwiZW5hYmxlX3N1bW1hcnlfdXBkYXRlc19mcm9tX2NoYXJ0X3Nlc3Npb24iOjEuMCwic2hvd19uZXdzX2Zsb3dfdG9vbF9yaWdodF9iYXIiOjEuMCwiZW5hYmxlX2NoYXJ0X3NhdmluZ19zdGF0cyI6MS4wLCJlbmFibGVfc2F2aW5nX3NhbWVfY2hhcnRfcmF0ZV9saW1pdCI6MS4wLCJuZXdzX2FsZXJ0c19lbmFibGVkIjoxLjAsIm5ld3NfbXVsdGlwbGVfYWxlcnRzX2VuYWJsZWQiOjEuMCwicmVmdW5kX3Vudm9pZGFibGVfY291cG9uc19lbmFibGVkIjoxLjAsImVuYWJsZV9zbm93cGxvd19lbWFpbF90cmFja2luZyI6MS4wLCJuZXdzX2VuYWJsZV9zZW50aW1lbnQiOjEuMCwidXNlX2luX3N5bWJvbF9zZWFyY2hfb3B0aW9uc19tY3hfZXhjaGFuZ2UiOjEuMCwiZW5hYmxlX3VzZXJzZXR0aW5nc19zeW1ib2xzX3Blcl9yb3dfc29mdF9saW1pdCI6MC4xLCJmb3JiaWRfbG9naW5fd2l0aF9wd25lZF9wYXNzd29yZHMiOjEuMCwiZGVidWdfZ2V0X3Rlc3RfYmFyc19kYXRhIjoxLjAsIm5ld3NfdXNlX21lZGlhdG9yX3N0b3J5IjoxLjAsIm5ld3NfZmxvd19yZWNvbmZpZ3VyZV9maWx0ZXJzIjoxLjAsImJsYWNrX2ZyaWRheV9lbmFibGVfc2tpcF90b19wYXltZW50IjoxLjAsImhpZGVfdHJhZGluZ19idXR0b25fb25fYm90dG9tX3BhbmVsX2FuZF9yZXBsYXlfdGFiIjoxLjAsImhpZGVfdHJhZGVfYnV0dG9uX2hpbnRfaW5faGVhZGVyX3Rvb2xiYXIiOjEuMCwiaGlkZV9zZWVfb25fc3VwZXJfY2hhcnRzX2J1dHRvbiI6MS4wLCJoaWRlX3N5bWJvbF9wYWdlX2NoYXJ0X3R5cGVfc3dpdGNoZXIiOjEuMCwiZGlzYWJsZV9jaGF0X3NwYW1fcHJvdGVjdGlvbl9mb3JfcHJlbWl1bV91c2VycyI6MS4wLCJkaXNhYmxlX3B1YmxpY19waW5lX3NjcmlwdF9wdWJsaXNoX2xpbWl0cyI6MS4wLCJtYWtlX3RyYWRpbmdfcGFuZWxfY29udGV4dHVhbF90YWIiOjEuMCwicmVjb25uZWN0X2dhaW5fc2Vzc2lvbl9vbl9sc19lcnJvciI6MS4wLCJjaGVja291dC1mbG93LXBheW1lbnRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2t5YyI6MS4wLCJpbmRpYV9leGNsdWRlX2JyYWludHJlZV90YWIiOjEuMCwibWFjcm9fbWFwc19oaWRlX3Rvb2x0aXBfY2hhcnRfYnV0dG9uIjoxLjAsImZvcmNlX2t5Y19mb3Jfbm9ucHJvX3B1cmNoYXNlX2J5X2NvbW1lcmNpYWwiOjEuMCwic2hvd19zcGxpdF9wYW5lbF9mdWxsc2NyZWVuX2J1dHRvbiI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX21vdmVfYnV0dG9uX3RvX3RpdGxlIjoxLjAsIm9yZGVyX3ByZXNldHNfY3J1ZF9zdG9yYWdlIjoxLjAsIm9yZGVyX3ByZXNldHNfcmVtb3ZlX2Zyb21fdHZfc2V0dGluZ3MiOjEuMCwiY2hlY2tvdXQtZmxvdy10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LWdvb2dsZXBheSI6MS4wLCJjaGVja291dC1mbG93LWFwcGxlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5cGFsIjoxLjAsImZvcmJpZF9zaWdudXBfd2l0aF9mYWtlX2dtYWlsX2RvbWFpbnMiOjEuMCwic2hvd19pbXBvcnRfZnJvbV9wYXBlcl90cmFkaW5nX2J1dHRvbiI6MS4wLCJzeW1ib2xfc2VhcmNoX2dyb3VwaW5nIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwtdHJpYWwiOjEuMCwidm9pZF9ub3RfZm91bmRfY2tvX3BheW1lbnRfaW5fYXBwcm92ZWRfd2ViaG9vayI6MS4wLCJzaG93X3BhbmVsX2NvbGxhcHNlX2J1dHRvbiI6MS4wLCJkZWxheV9zdGF0dXNfb25fbGFzdF9iYXIiOjAuNX07CndpbmRvdy5pbml0RGF0YSA9IHt9OwoJCXdpbmRvdy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwgPSAiaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIjsKCndpbmRvdy5pbml0RGF0YSA9IHsid2lkZ2V0RGVmYXVsdHMiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJjb2xvclRoZW1lIjoibGlnaHQiLCJsb2NhbGUiOiJlbiJ9fTsKCQl3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm8gPSB7Imxhbmd1YWdlIjoiZW4iLCJsYW5ndWFnZV9uYW1lIjoiRW5nbGlzaCIsImZsYWciOiJ1cyIsImdlb2lwX2NvZGUiOiJ1cyIsImlzbyI6ImVuIiwiaXNvXzYzOV8zIjoiZW5nIiwiZ2xvYmFsX25hbWUiOiJFbmdsaXNoIiwiaXNfb25seV9yZWNvbW1lbmRlZF90d19hdXRvcmVwb3N0Ijp0cnVlfTsKCQl3aW5kb3cuaW5pdERhdGEuc2V0dGluZ3MgPSB7J1MzX0xPR09fU0VSVklDRV9CQVNFX1VSTCc6ICdodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8nLCAnUzNfTkVXU19JTUFHRV9TRVJWSUNFX0JBU0VfVVJMJzogJ2h0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL25ld3MvJywgJ1dFQlBBQ0tfU1RBVElDX1BBVEgnOiAnaHR0cHM6Ly9zdGF0aWMudHJhZGluZ3ZpZXcuY29tL3N0YXRpYy9idW5kbGVzLycsICdUUkFESU5HX1VSTFMnOiB7J2ZyZWUnOiAnaHR0cHM6Ly9wYXBlcnRyYWRpbmctZnJlZS50cmFkaW5ndmlldy5jb20nLCAncHJvJzogJ2h0dHBzOi8vcGFwZXJ0cmFkaW5nLnRyYWRpbmd2aWV3LmNvbSd9LCAnQ09OVEVTVFNfVVJMJzogJy9wYXBlci10cmFkaW5nJywgJ0NSVURfU1RPUkFHRV9VUkwnOiAnaHR0cHM6Ly9jcnVkLXN0b3JhZ2UudHJhZGluZ3ZpZXcuY29tJ307PC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iTDBKaytMK2UrY1pFVUJBTVgrS2toQT09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgZT17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtjb25zdCB0PXdpbmRvdzt0LmluaXREYXRhPXQuaW5pdERhdGF8fHt9O2NvbnN0IGE9L1wrL2csbj0vPFwvP1tePl0rKD58JCkvZyxzPWU9PmRlY29kZVVSSUNvbXBvbmVudChlLnJlcGxhY2UoYSwiICIpKS5yZXBsYWNlKG4sIiIpLG89dC5sb2NhdGlvbi5zZWFyY2guc3Vic3RyaW5nKDEpLGM9LyhbXiY9XSspPT8oW14mXSopL2csaT17fTtsZXQgbCxyPWMuZXhlYyhvKTtmb3IoO251bGwhPT1yOylpW3MoclsxXSldPXMoclsyXSkscj1jLmV4ZWMobyk7dHJ5e2w9SlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQodC5sb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSkpLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWx8fChsPXt9KX1jYXRjaChlKXtsPXt9fXZhciBoO3QuaW5pdERhdGEucXVlcnlTZXR0aW5ncz1pLHQuaW5pdERhdGEuaGFzaFNldHRpbmdzPShoPWwsT2JqZWN0LmtleXMoaCkuZm9yRWFjaCgodD0+e2VbdF0mJmRlbGV0ZSBoW3RdfSkpLGgpfSkoKTsKCTwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9IkwwSmsrTCtlK2NaRVVCQU1YK0traEE9PSI+d2luZG93LlNTX0hPU1QgPSAic3ltYm9sLXNlYXJjaC50cmFkaW5ndmlldy5jb20iOwoJCXdpbmRvdy5XSURHRVRfU0hFUklGRl9IT1NUID0gImh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbSI7CgkJd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQgPSBmYWxzZTsKCgl3aW5kb3cuU0NSRUVORVJfSE9TVCA9ICdodHRwczovL3NjYW5uZXIudHJhZGluZ3ZpZXcuY29tJzsKCgkJd2luZG93LmxvY2FsZV9kb21haW5zID0geyJlbiI6Ind3dy50cmFkaW5ndmlldy5jb20iLCJhcl9BRSI6ImFyLnRyYWRpbmd2aWV3LmNvbSIsImJyIjoiYnIudHJhZGluZ3ZpZXcuY29tIiwiZGVfREUiOiJkZS50cmFkaW5ndmlldy5jb20iLCJlcyI6ImVzLnRyYWRpbmd2aWV3LmNvbSIsImZyIjoiZnIudHJhZGluZ3ZpZXcuY29tIiwiaGVfSUwiOiJpbC50cmFkaW5ndmlldy5jb20iLCJpZCI6ImlkLnRyYWRpbmd2aWV3LmNvbSIsImluIjoiaW4udHJhZGluZ3ZpZXcuY29tIiwiaXQiOiJpdC50cmFkaW5ndmlldy5jb20iLCJqYSI6ImpwLnRyYWRpbmd2aWV3LmNvbSIsImtyIjoia3IudHJhZGluZ3ZpZXcuY29tIiwibXNfTVkiOiJteS50cmFkaW5ndmlldy5jb20iLCJwbCI6InBsLnRyYWRpbmd2aWV3LmNvbSIsInJ1IjoicnUudHJhZGluZ3ZpZXcuY29tIiwidGhfVEgiOiJ0aC50cmFkaW5ndmlldy5jb20iLCJ0ciI6InRyLnRyYWRpbmd2aWV3LmNvbSIsInZpX1ZOIjoidm4udHJhZGluZ3ZpZXcuY29tIiwiemhfQ04iOiJjbi50cmFkaW5ndmlldy5jb20iLCJ6aF9UVyI6InR3LnRyYWRpbmd2aWV3LmNvbSIsImNhX0VTIjoiZXMudHJhZGluZ3ZpZXcuY29tIn07CgoJCQl3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzID0gd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cyB8fCBbXTsKCQkJCXdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMucHVzaCgnd2lkZ2V0Jyk7CgoJCXdpbmRvdy5UcmFkaW5nVmlldyA9IHdpbmRvdy5UcmFkaW5nVmlldyB8fCB7fTsKPC9zY3JpcHQ+Cgo8L2hlYWQ+Cjxib2R5PgoJPHNjcmlwdCBub25jZT0iTDBKaytMK2UrY1pFVUJBTVgrS2toQT09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgdD0xMDE5O3ZhciBlLHMsbyxhLGQ7IWZ1bmN0aW9uKHQpe3QuQWRhcHRpdmU9ImFkYXB0aXZlIix0LlJlZ3VsYXI9InJlZ3VsYXIiLHQuQ29tcGFjdD0iY29tcGFjdCJ9KGV8fChlPXt9KSksZnVuY3Rpb24odCl7dC5BbGxTeW1ib2xzPSJhbGxfc3ltYm9scyIsdC5NYXJrZXQ9Im1hcmtldCIsdC5TeW1ib2w9InN5bWJvbCJ9KHN8fChzPXt9KSksZnVuY3Rpb24odCl7dC5DcnlwdG9jdXJyZW5jaWVzPSJjcnlwdG8iLHQuQ3VycmVuY2llcz0iZm9yZXgiLHQuU3RvY2tzPSJzdG9jayIsdC5JbmRpY2VzPSJpbmRleCIsdC5GdXR1cmVzPSJmdXR1cmVzIix0LkJvbmRzPSJjZmQifShvfHwobz17fSkpLGZ1bmN0aW9uKHQpe3QuSFRNTD0iaHRtbCIsdC5SZWFjdD0icmVhY3QifShhfHwoYT17fSkpLGZ1bmN0aW9uKHQpe3QuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oZHx8KGQ9e30pKTtjb25zdCBjPXdpbmRvdztjLmluaXREYXRhPWMuaW5pdERhdGF8fHt9O2xldCBpPWMuaW5pdERhdGEuaGFzaFNldHRpbmdzO2lmKGMuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMmJihpPXsuLi5jLmluaXREYXRhLndpZGdldERlZmF1bHRzLC4uLml9KSx2b2lkIDAhPT1pKXtpZih2b2lkIDAhPT1pLmNvbG9yVGhlbWUmJmZ1bmN0aW9uKHQsZT13aW5kb3cpe2NvbnN0IHM9InRoZW1lLSIrdCxvPWUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdDtmb3IoY29uc3QgdCBvZiBBcnJheS5mcm9tKG8pKXQuc3RhcnRzV2l0aCgidGhlbWUtIikmJnQhPT1zJiZvLnJlbW92ZSh0KTtvLmFkZChzKSxlLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LnRoZW1lPXR9KGkuY29sb3JUaGVtZSksKGkuaXNUcmFuc3BhcmVudHx8aS50cmFuc3BhcmVuY3kpJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXMtdHJhbnNwYXJlbnQiKSx2b2lkIDAhPT1pLmRpc3BsYXlNb2RlJiZmdW5jdGlvbihzLG8pe2lmKG89PT1lLkFkYXB0aXZlKXtjb25zdCBlPXdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke3R9cHgpYCksbz0oKT0+e3MuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIiLCFlLm1hdGNoZXMpLHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLWNvbXBhY3QiLGUubWF0Y2hlcyl9O28oKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsbyl9ZWxzZSBzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIixvPT09ZS5SZWd1bGFyKSxzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1jb21wYWN0IixvPT09ZS5Db21wYWN0KX0oZG9jdW1lbnQuYm9keSxpLmRpc3BsYXlNb2RlKSxpLmJvZHlDbGFzc2VzKWZvcihjb25zdCB0IG9mIGkuYm9keUNsYXNzZXMpZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKHQpO2kuYm9keV9jbGFzcyYmZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKGkuYm9keV9jbGFzcyksaS5ib2R5SWQmJihkb2N1bWVudC5ib2R5LmlkPWkuYm9keUlkKX19KSgpOwoJPC9zY3JpcHQ+CgoJPGRpdiBpZD0ianMtc2NyZWVuZXItY29udGFpbmVyIiBjbGFzcz0idHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIiPjwvZGl2PgoKPHNjcmlwdCBub25jZT0iTDBKaytMK2UrY1pFVUJBTVgrS2toQT09Ij4KCXdpbmRvdy5pbml0RGF0YSA9IHdpbmRvdy5pbml0RGF0YSB8fCB7fTsKCgl3aW5kb3cuaW5pdERhdGEuc25vd3Bsb3dTZXR0aW5ncyA9IHsKCQljb2xsZWN0b3JJZDogJ3R2X2NmJywKCQl1cmw6ICdzbm93cGxvdy1waXhlbC50cmFkaW5ndmlldy5jb20nLAoJCXBhcmFtczogewoJCQlhcHBJZDogJ3RyYWRpbmd2aWV3JywKCQkJcG9zdFBhdGg6ICcvY29tLnRyYWRpbmd2aWV3L3RyYWNrJywKCQl9LAoJCWVuYWJsZWQ6IHRydWUsCgl9Cjwvc2NyaXB0PjwvYm9keT4KPC9odG1sPg=="}},"time_used":165,"timings":{"blocked":-1,"dns":6,"connect":1,"send":0,"wait":130,"receive":0,"ssl":25},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15932.2a70d397c34f2e9de94f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.191Z","timestamp":1785154590191,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/15932.2a70d397c34f2e9de94f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-37f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: dced4e438e7cda1b104f7e4535117779\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":895,"size_decoded":1168,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (895), with no line terminators","md5":"61ab7674e7397acc0fbdbd8b60e6843d","sha1":"fcd3f559f2622c63283e4bc9c57d10811df0e449","sha256":"6612bc0b7ab79c16fbd208e005ce64f38027f232bd2fc73621c14c2401cc1abb","sha512":"25a6b08a102f5c8bd5cd31c69e9e714962ab697d5d0b27c3d6ee50b77232d869dc271761eda4f53d91748de07f2e4798911326e27fef8995b5be37d735ab9188","ssdeep":"","tlshash":"3811293871a06d2c7312ee3c17686c8c795da26ca6835eceead07128479f2cc26720a0","first_seen":"2026-03-24T10:46:27.428699Z","last_seen":"2026-07-27T14:18:36.347628Z","times_seen":5005,"resource_available":false,"data":"LnR2LWVtYmVkLXdpZGdldC13cmFwcGVye2JhY2tncm91bmQ6IzAwMDA7aGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjEwMCU7d2lkdGg6MH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlcntmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozNHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIHN2Z3toZWlnaHQ6MTVweDttYXJnaW4taW5saW5lLWVuZDo1cHg7dmVydGljYWwtYWxpZ246dGV4dC10b3A7d2lkdGg6MjZweH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluaywudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluazp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDp2YXIoLS10di13aWRnZXQtYmFja2dyb3VuZC1jb2xvcix2YXIoLS1jb2xvci1iZy1wcmltYXJ5KSk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRve292ZXJmbG93OmF1dG99aHRtbC5pcy10cmFuc3BhcmVudCAudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDojMDAwMH1odG1sLmlzLXRyYW5zcGFyZW50IC50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keTpub3QoLnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQpe2JvcmRlci13aWR0aDowfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/20061.8715a452514d45d5dd3b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.235Z","timestamp":1785154590235,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/20061.8715a452514d45d5dd3b.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1ee3\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 47ea0f228856d2db111342dfd9ec959f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":7907,"size_decoded":4450,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3062)","md5":"7d505e8048a3d56a7c35fec43b942e28","sha1":"7cc8e3f14d3c2bc72667a4b341a18173ba08360e","sha256":"3c8a6537a973cf0adf27e43d6727b986d50fc12ac3b1bf62528b892270b5a901","sha512":"42ecf81a5c530657c264164cdace5abb238353df391c16cb5f4eb18c3d4eea154e934f76f113c9fe8c77cd66d8e6038b288ce213c22f225e959c5b61f6221849","ssdeep":"192:OlOIsbRrYGv5JJjaqRSPoi35z6e5WyoEH6R+0332JtcIKidzTnM:OlOIs1BnJjaq+oCm1GH6etcFidzTM","tlshash":"44f1b89870c9b07653c60867f0735488f23c2550788e89a0f298dcf63ab285ed267f9d","first_seen":"2026-07-23T13:38:20.472499Z","last_seen":"2026-07-27T14:18:36.357551Z","times_seen":1321,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMjAwNjFdLHszMjA0MDMoZSx0KXt2YXIgbixvPSEoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3d8fCF3aW5kb3cuZG9jdW1lbnR8fCF3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7ZnVuY3Rpb24gcigpe2lmKG4pcmV0dXJuIG47aWYoIW98fCF3aW5kb3cuZG9jdW1lbnQuYm9keSlyZXR1cm4iaW5kZXRlcm1pbmF0ZSI7dmFyIGU9d2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJBQkNEIikpLGUuZGlyPSJydGwiLGUuc3R5bGUuZm9udFNpemU9IjE0cHgiLGUuc3R5bGUud2lkdGg9IjRweCIsZS5zdHlsZS5oZWlnaHQ9IjFweCIsZS5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGUuc3R5bGUudG9wPSItMTAwMHB4IixlLnN0eWxlLm92ZXJmbG93PSJzY3JvbGwiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksbj0icmV2ZXJzZSIsZS5zY3JvbGxMZWZ0PjA/bj0iZGVmYXVsdCI6KGUuc2Nyb2xsTGVmdD0xLDA9PT1lLnNjcm9sbExlZnQmJihuPSJuZWdhdGl2ZSIpKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGUpLG59fSwzODQwMTcoZSx0LG4pe24uZCh0LHtmZXRjaDooKT0+c30pO3ZhciBvPW4oMjIxMDYxKTtuKDMwMDI4Nik7Y29uc3Qgcj0oMCxvLmdldExvZ2dlcikoIkZldGNoIik7ZnVuY3Rpb24gcyhlLHQsbj17fSl7e2NvbnN0e2xvZ09uRXJyb3JTdGF0dXM6bz0hMCxsb2dCb2R5T25FcnJvcjpzPSExfT1uO3Q9dHx8e30sZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKS5vcmlnaW49PT1sb2NhdGlvbi5vcmlnaW59KGUpJiYodC5oZWFkZXJzP3QuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnN8fCh0LmhlYWRlcnM9bmV3IEhlYWRlcnModC5oZWFkZXJzKSk6dC5oZWFkZXJzPW5ldyBIZWFkZXJzLHdpbmRvdy5sb2NhbGUmJnQuaGVhZGVycy5zZXQoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpLHQuaGVhZGVycy5zZXQoIlgtUmVxdWVzdGVkLVdpdGgiLCJYTUxIdHRwUmVxdWVzdCIpKSx2b2lkIDA9PT10LmNyZWRlbnRpYWxzJiYodC5jcmVkZW50aWFscz0ic2FtZS1vcmlnaW4iKTtjb25zdCBpPXdpbmRvdy5mZXRjaChlLHQpO3JldHVybiBpLnRoZW4oKG49PntpZighbi5vayYmbyl7bGV0IG89IiI7dC5tZXRob2QmJihvKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxvKz1lLG8rPWAuIFN0YXR1cyAke24uc3RhdHVzfWAsbi5zdGF0dXNUZXh0JiYobys9YC4gJHtuLnN0YXR1c1RleHR9YCksbi5oZWFkZXJzLnZpYSYmKG8rPWAuIFZpYTogJHtuLmhlYWRlcnMudmlhfWApLHMmJiJzdHJpbmciPT10eXBlb2YgdC5ib2R5JiYobys9YC4gQm9keTogJHt0LmJvZHkuc2xpY2UoMCwxMDI0KX1gKSxyLmxvZ0Vycm9yKG8pfXJldHVybiBufSksKG49PntpZihuJiYiQWJvcnRFcnJvciI9PT1uLm5hbWUpcmV0dXJuO2xldCBvPSIiO3QubWV0aG9kJiYobys9YCR7dC5tZXRob2QudG9VcHBlckNhc2UoKX0gYCksbys9ZSxuYXZpZ2F0b3Iub25MaW5lP28rPWAuICR7U3RyaW5nKG4pfWA6bys9Ii4gVXNlciBpcyBvZmZsaW5lLiIsci5sb2dFcnJvcihvKX0pKSxpfX19LDI0NzkwMShlLHQsbil7dmFyIG87bi5kKHQse1N0ZFRoZW1lOigpPT5vfSksZnVuY3Rpb24oZSl7ZS5MaWdodD0ibGlnaHQiLGUuRGFyaz0iZGFyayJ9KG98fChvPXt9KSl9LDcyMTM2OShlLHQsbil7bi5kKHQse2lzTmF0aXZlVUlJbnRlcmFjdGlvbjooKT0+c30pO3ZhciBvPW4oMjM1NzI0KTtmdW5jdGlvbiByKGUpe2lmKCJJTlBVVCI9PT1lLnRhZ05hbWUpe2NvbnN0IHQ9ZS50eXBlO3JldHVybiJ0ZXh0Ij09PXR8fCJlbWFpbCI9PT10fHwibnVtYmVyIj09PXR8fCJwYXNzd29yZCI9PT10fHwic2VhcmNoIj09PXR8fCJ0ZWwiPT09dHx8InVybCI9PT10fXJldHVybiJURVhUQVJFQSI9PT1lLnRhZ05hbWV8fGUuaXNDb250ZW50RWRpdGFibGV9ZnVuY3Rpb24gcyhlLHQpe2lmKCF0KXJldHVybiExO2NvbnN0IG49MjU1JmU7aWYoMjc9PT1ufHxuPj4+ND09NylyZXR1cm4hMTtzd2l0Y2goZV5uKXtjYXNlIG8uTW9kaWZpZXJzLkFsdDpyZXR1cm4oMzg9PT1ufHw0MD09PW4pJiYiU0VMRUNUIj09PXQudGFnTmFtZXx8cih0KTtjYXNlIG8uTW9kaWZpZXJzLkFsdCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gcih0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZDppZig2Nz09PW58fCFvLmlzTWFjS2V5Ym9hcmQmJjQ1PT09bil7Y29uc3QgZT10Lm93bmVyRG9jdW1lbnQmJnQub3duZXJEb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtpZihlJiYhZS5pc0NvbGxhcHNlZClyZXR1cm4hMH1yZXR1cm4gcih0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gbj49MzMmJm48PTQwJiZyKHQpO2Nhc2Ugby5Nb2RpZmllcnMuU2hpZnQ6Y2FzZSAwOnJldHVybiA5PT09bj8hKCF0Lm93bmVyRG9jdW1lbnR8fHQ9PT10Lm93bmVyRG9jdW1lbnQuYm9keXx8dD09PXQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOighZnVuY3Rpb24oZSl7aWYoIkJVVFRPTiI9PT1lLnRhZ05hbWUpcmV0dXJuITA7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7aWYoInN1Ym1pdCI9PT10fHwiYnV0dG9uIj09PXR8fCJyZXNldCI9PT10fHwiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpcmV0dXJuITB9cmV0dXJuITF9KHQpfHwxMz09PW58fDMyPT09bnx8OT09PW4pJiYoImZvcm0iaW4gdHx8dC5pc0NvbnRlbnRFZGl0YWJsZSl9cmV0dXJuITF9fSw1MDU1NihlLHQsbil7bi5kKHQse2NvbG9yc1BhbGV0dGU6KCk9PmR9KTt2YXIgbz1uKDMxNzY2Mykscj1uKDg2NzUyMikscz1uKDEzODYzOCk7Y29uc3QgaT17Li4ubywuLi5yfSxhPXt9LGM9T2JqZWN0LmtleXMoaSkubGVuZ3RoLGw9L14jKChbYS1mMC05XXsyfSl7Miw0fXxbYS1mMC05XXszfSkkL2k7ZnVuY3Rpb24gdShlLHQ9W10sbj1pKXtjb25zdCBvPW5bZV0KO2lmKCFvKXJldHVybiBudWxsO2lmKGwudGVzdChvKSlyZXR1cm4gbztjb25zdCByPW87cmV0dXJuIHQucHVzaChlKSwtMSE9PXQuaW5kZXhPZihyKT8oY29uc29sZS53YXJuKCJDb2xvcnMgZGVmaW5pdGlvbnMgY3ljbGVkIiksbyk6dC5sZW5ndGg+Yz8oY29uc29sZS53YXJuKCJUb28gbWFueSB2YXJpYWJsZXMtbGluayBpbiBIRVgtY29sb3Igc2VhcmNoOiAiK3RbMF0pLG51bGwpOnUocix0LG4pfU9iamVjdC5rZXlzKGkpLmZvckVhY2goKGU9Pntjb25zdCB0PXUoZSk7YVtlXT0oMCxzLmVuc3VyZU5vdE51bGwpKHQpfSkpO2NvbnN0IGQ9YX0sMjE4ODE0KGUsdCxuKXtuLmQodCx7Y29sb3I6KCk9Pm99KTtjb25zdCBvPXtibGFjazcwOiIjNEE0QTRBIixibGFjazgwOiIjNTM1MzUzIn19LDEzODYzOChlLHQsbil7ZnVuY3Rpb24gbyhlLHQpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiQXNzZXJ0aW9uIGZhaWxlZCIrKHQ/YDogJHt0fWA6IiIpKX1mdW5jdGlvbiByKGUsdCl7aWYodm9pZCAwPT09ZSl0aHJvdyBuZXcgRXJyb3IoYCR7dD8/IlZhbHVlIn0gaXMgdW5kZWZpbmVkYCk7cmV0dXJuIGV9ZnVuY3Rpb24gcyhlLHQpe2lmKG51bGw9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyBudWxsYCk7cmV0dXJuIGV9bi5kKHQse2Fzc2VydDooKT0+byxlbnN1cmVEZWZpbmVkOigpPT5yLGVuc3VyZU5vdE51bGw6KCk9PnN9KX0sODU2MzI0KGUsdCxuKXtuLmQodCx7Z2V0TGFuZ3VhZ2U6KCk9PnMscmVnaXN0ZXJMYW5ndWFnZUNvZGVNYXBwZXI6KCk9PmEscmVnaXN0ZXJMYW5ndWFnZUdldHRlcjooKT0+cn0pO2xldCBvPW51bGw7ZnVuY3Rpb24gcihlKXtvPWV9ZnVuY3Rpb24gcygpe2lmKCFvKXRocm93IG5ldyBFcnJvcigiTGFuZ3VhZ2UgZ2V0dGVyIG5vdCByZWdpc3RlcmVkLiBDYWxsIHJlZ2lzdGVyTGFuZ3VhZ2VHZXR0ZXIoKSBmaXJzdC4iKTtyZXR1cm4gbygpfWxldCBpPWU9PmU7ZnVuY3Rpb24gYShlKXtpPWV9fSw3NzMwODgoZSx0LG4pe3ZhciBvO2Z1bmN0aW9uIHIoZSx0PSExKXtpZigicGVyaW9kLWJhY2siPT09ZS50eXBlKXtsZXQgbj1lLnZhbHVlO3JldHVybiB0JiYiWVREIiE9PW4mJiJEIj09PW4uc2xpY2UoLTEpJiYobj1uLnNsaWNlKDAsLTEpKSxufXJldHVybiJyLCIrZS5mcm9tKyI6IitlLnRvfWZ1bmN0aW9uIHMoZSl7Y29uc3QgdD0vciwoXGQrKTooXGQrKS8uZXhlYyhlKTtyZXR1cm4gbnVsbCE9PXQ/e2Zyb206TnVtYmVyKHRbMV0pLHRvOk51bWJlcih0WzJdKSx0eXBlOiJ0aW1lLXJhbmdlIn06e3ZhbHVlOmUsdHlwZToicGVyaW9kLWJhY2sifX1uLmQodCx7Y29udmVydFN0clRvVGltZUZyYW1lOigpPT5zLGNvbnZlcnRUaW1lRnJhbWVUb1N0cjooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuUGVyaW9kQmFjaz0icGVyaW9kLWJhY2siLGUuVGltZVJhbmdlPSJ0aW1lLXJhbmdlIn0ob3x8KG89e30pKX0sODEwNDEoZSx0LG4pe24uZCh0LHtTdGRUaGVtZTooKT0+by5TdGRUaGVtZX0pO3ZhciBvPW4oMjQ3OTAxKX0sOTExMzI3KGUsdCxuKXtuLmQodCx7bWFrZVN5bWJvbFBhZ2VVcmw6KCk9PmcsbWFrZVRlbXBsYXRlU3ltYm9sVXJsOigpPT5wfSk7big5NjM5MDApO3ZhciBvPW4oMzA5ODM2KSxyPW4oMjQxOTM3KSxzPW4oNzMwNjQ1KSxpPW4oODUxNDU4KSxhPW4oMTU2ODI5KTtjb25zdCBjPW5ldyBTZXQoWyJTUDpTUFgiLCJDQk9FOlNQWCJdKTtmdW5jdGlvbiBsKGUpe2NvbnN0IHQ9ey4uLmV9O2lmKCJzcHJlYWQiPT09dC50eXBlfHwiZXhwcmVzc2lvbiI9PT10LnR5cGUpe2NvbnN0IGU9dC5zaG9ydE5hbWUmJnUodC5zaG9ydE5hbWUpLG49dC5wcm9OYW1lJiZ1KHQucHJvTmFtZSk7dC50eXBlPXZvaWQgMCx0LnNob3J0TmFtZT1lLHQucHJvTmFtZT1ufXJldHVybiB0fWZ1bmN0aW9uIHUoZSl7cmV0dXJuKDAsaS50b2tlbml6ZSkoZSkuZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV9ZnVuY3Rpb24gZChlKXtjb25zdCB0PXtzaG9ydE5hbWU6ZS5zaG9ydE5hbWUsZXhjaGFuZ2U6ZS5leGNoYW5nZSxwcm9OYW1lOmUucHJvTmFtZSx0eXBlOmUudHlwZSx0eXBlc3BlY3M6ZS50eXBlc3BlY3Mscm9vdDplLnJvb3R9O3JldHVybiB0LnByb05hbWUmJnQucHJvTmFtZS5pbmNsdWRlcygiOiIpJiYoW3QuZXhjaGFuZ2UsdC5zaG9ydE5hbWVdPXQucHJvTmFtZS5zcGxpdCgiOiIpKSx0fWZ1bmN0aW9uIG0oZSx0KXtjb25zdCBuPWVuY29kZVVSSUNvbXBvbmVudCh0LnNob3J0TmFtZXx8IiIpLG89ZW5jb2RlVVJJQ29tcG9uZW50KHQuZXhjaGFuZ2V8fCIiKSxyPWVuY29kZVVSSUNvbXBvbmVudCh0LnByb05hbWV8fCIiKSxzPWVuY29kZVVSSUNvbXBvbmVudCh0LnJvb3R8fCIiKTtyZXR1cm4gZS5yZXBsYWNlKCJ7dHZleGNoYW5nZX0iLG8pLnJlcGxhY2UoInt0dnN5bWJvbH0iLG4pLnJlcGxhY2UoInt0dnByb3N5bWJvbH0iLHIpLnJlcGxhY2UoInt0dnJvb3R9IixzKX1mdW5jdGlvbiBmKGUsdD0iIil7Y29uc3Qgbj1kKGUpLHt0eXBlOm8sdHlwZXNwZWNzOnIsc2hvcnROYW1lOnMscHJvTmFtZTppLGV4Y2hhbmdlOmwscm9vdDp1fT1uO3JldHVybiB2b2lkIDA9PT1zJiZ2b2lkIDA9PT1pPyhjb25zb2xlLndhcm4oIlBhcmFtcyBtaXNzZWQiKSwiLyIpOmkmJmMuaGFzKGkpP2Avc3ltYm9scy97dHZzeW1ib2x9LyR7dH1gOm98fHI/ImNvbW1vZGl0eSI9PT1vJiZyJiZyLmluY2x1ZGVzKCJjZmQiKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjohdXx8IXJ8fCJmdXR1cmVzIiE9PW98fHIuaW5jbHVkZXMoImNvbnRpbnVvdXMiKSYmcz8uZW5kc1dpdGgoIjEhIil8fHIuaW5jbHVkZXMoImV4Y2hhbmdlLWNvbnRpbnVvdXMiKT9sJiYoImZvcmV4Ij09PW98fHImJigwLAphLmhhc0NyeXB0b1R5cGVzcGVjKShyKSk/Ii9zeW1ib2xzL3t0dnN5bWJvbH0vP2V4Y2hhbmdlPXt0dmV4Y2hhbmdlfSI6bD9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dmV4Y2hhbmdlfS17dHZyb290fTEhLyR7dH0/Y29udHJhY3Q9e3R2c3ltYm9sfWA6bD9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWB9ZnVuY3Rpb24gcChlLHQpe2xldCBuPWU7aWYoIS97dHZzeW1ib2x9fHt0dmV4Y2hhbmdlfXx7dHZwcm9zeW1ib2x9Ly50ZXN0KGUpKXtsZXQgbz0idHZwcm9zeW1ib2wiO3ZvaWQgMD09PXQucHJvTmFtZSYmKG89InR2c3ltYm9sIiksbj1gJHtlfT90dndpZGdldHN5bWJvbD17JHtvfX1gfWNvbnN0IG89bShuLGQobCh0KSkpO2lmKCEoMCxzLmlzU2FmZVVybCkobykpdGhyb3cgbmV3IEVycm9yKGBUaGUgc3ltYm9sIFVSTCAke299IGlzIG5vdCBhbGxvd2VkLmApO3JldHVybiBvfWZ1bmN0aW9uIGgoZSx0LG4scyl7Y29uc3QgaT0od2luZG93LmxvY2FsZV9kb21haW5zPygwLHIuZGV0ZXJtaW5lQmFzZVVybCkod2luZG93LmxvY2FsZV9kb21haW5zLHMpOndpbmRvdy5sb2NhdGlvbi5vcmlnaW4pK20oZSxkKGwodCkpKTtyZXR1cm4gbj8oMCxvLmFkZFV0bVRvVXJsKShpLG4pOml9ZnVuY3Rpb24gZyhlLHQsbixvKXtjb25zdCByPWwoZSk7cmV0dXJuIGgoZihyLG8pLHIsdCxuKX19LDQ0MzU1NyhlLHQsbil7bi5kKHQse3BhcnNlSHRtbEVsZW1lbnQ6KCk9PnN9KTtjb25zdCBvPW5ldyBXZWFrTWFwO3ZhciByO2Z1bmN0aW9uIHMoZSx0KXtjb25zdCBuPWZ1bmN0aW9uKGUsdCl7bGV0IG4scjtyZXR1cm4gbj1udWxsPT10P2RvY3VtZW50LmRvY3VtZW50RWxlbWVudDo5PT09dC5ub2RlVHlwZT90LmRvY3VtZW50RWxlbWVudDp0LG8mJihyPW8uZ2V0KG4pKSxyfHwocj1uLm93bmVyRG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxyLnNlbGVjdE5vZGVDb250ZW50cyhuKSxvJiZvLnNldChuLHIpKSxyLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChlKX0oZSx0KSxyPW4uZmlyc3RFbGVtZW50Q2hpbGQ7cmV0dXJuIG51bGwhPT1yJiZuLnJlbW92ZUNoaWxkKHIpLHJ9IWZ1bmN0aW9uKGUpe2VbZS5FbGVtZW50PTFdPSJFbGVtZW50IixlW2UuRG9jdW1lbnQ9OV09IkRvY3VtZW50In0ocnx8KHI9e30pKX0sMzA5ODM2KGUsdCxuKXtuLmQodCx7YWRkVXRtVG9Vcmw6KCk9PnJ9KTt2YXIgbz1uKDYwMTU4Nyk7ZnVuY3Rpb24gcihlLHQpe2lmKCEvKFthLXpBLVowLTkuLV0qdHJhZGluZ3ZpZXcuY29tKXxsb2NhbGhvc3QvLnRlc3QoZSkpcmV0dXJuIGU7Y29uc3Qgbj0oMCxvLmJ1aWxkVXRtUXVlcnlTdHJpbmcpKHQpO2lmKCIiPT09bilyZXR1cm4gZTtjb25zdCByPWUuaW5kZXhPZigiPyIpLHM9ZS5pbmRleE9mKCIjIiksaT0tMSE9PXM7aWYoLTEhPT1yJiYoIWl8fHI8cykpe3JldHVybmAke2Uuc2xpY2UoMCxyKX0/JHtpP2Uuc2xpY2UocisxLHMpOmUuc2xpY2UocisxKX0mJHtufSR7aT9lLnNsaWNlKHMpOiIifWB9aWYoaSl7cmV0dXJuYCR7ZS5zbGljZSgwLHMpfT8ke259JHtlLnNsaWNlKHMpfWB9cmV0dXJuYCR7ZX0/JHtufWB9fSw2MDE1ODcoZSx0LG4pe24uZCh0LHtidWlsZFV0bVF1ZXJ5U3RyaW5nOigpPT5hLGZpbHRlclV0bUluZm86KCk9Pml9KTt2YXIgbz1uKDQ5MjY3Nykscj1uKDY0MTU5Myk7Y29uc3Qgcz1bInV0bV9zb3VyY2UiLCJ1dG1fbWVkaXVtIiwidXRtX2NhbXBhaWduIl07ZnVuY3Rpb24gaShlKXtjb25zdCB0PXt9O3JldHVybiBzLmZvckVhY2goKG49Pntjb25zdCBvPWVbbl07InN0cmluZyI9PXR5cGVvZiBvJiYiIiE9PW8mJih0W25dPSgwLHIuaHRtbEVzY2FwZSkobykpfSkpLHR9ZnVuY3Rpb24gYShlLHQ9ITEpe2NvbnN0IG49KDAsby5jcmVhdGVVcmxQYXJhbXMpKGUpO3JldHVybiBuJiZ0PyI/IituOm59fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.83031.2ba881756d332385188c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.496Z","timestamp":1785154590496,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.83031.2ba881756d332385188c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a7-41c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:07 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:29:52\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9859a63e1d5eac7e59618ebca4aabb86\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1052,"size_decoded":1341,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (1050), with no line terminators","md5":"a6b774013c1979fb43105262f5b3f98c","sha1":"3d0388027d8429640d1a42606b3eeb629b531da2","sha256":"87bbc5540f9fe4f357a1d9adead64447f2e0e52530ceaee0cebfda403d3a5b37","sha512":"240af447a4ad0c5739c98771da0bb9b33fbaad1f58826c86f943f8cb166611d176debb1d637c2abc374f2b10845cad59b1c8821006fd7ebcb9f90c5322c63e28","ssdeep":"","tlshash":"b8113257d024d5ea3f7ada19b394ddd5b8f0b09605f2c4da37082f44c21be991828af9","first_seen":"2026-07-24T21:10:00.131755Z","last_seen":"2026-07-27T14:14:25.410168Z","times_seen":142,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwyNDkyOSw0MDI0MCw4MzAzMV0sezczNDc1MChlKXtlLmV4cG9ydHM9WyJNYXkiXX0sNTI2Nzg1KGUpe2UuZXhwb3J0cz1bIkFwciJdfSw5Mzc2MihlKXtlLmV4cG9ydHM9WyJBdWciXX0sNzY5MDM2KGUpe2UuZXhwb3J0cz1bIkRlYyJdfSw2MTczNDEoZSl7ZS5leHBvcnRzPVsiRmViIl19LDY1NzM3NChlKXtlLmV4cG9ydHM9WyJKYW4iXX0sMTgzOTU5KGUpe2UuZXhwb3J0cz1bIkp1bCJdfSw4Nzc0NShlKXtlLmV4cG9ydHM9WyJKdW4iXX0sNDkzOShlKXtlLmV4cG9ydHM9WyJPb3BzISBTb21ldGhpbmcgd2VudCB3cm9uZyJdfSw3MjgzMzcoZSl7ZS5leHBvcnRzPVsiT2N0Il19LDEwMzMwNShlKXtlLmV4cG9ydHM9WyJNYXIiXX0sMTQ2ODA3KGUpe2UuZXhwb3J0cz1bIk5vIGRhdGEgaGVyZSB5ZXQiXX0sNjQ2NTQ1KGUpe2UuZXhwb3J0cz1bIk5vdiJdfSwxNzg0NjkoZSl7ZS5leHBvcnRzPVsiU2VwIl19LDg5NzY3KGUpe2UuZXhwb3J0cz1bIlExIl19LDk0ODkyMyhlKXtlLmV4cG9ydHM9WyJRMiJdfSwzNjc5MzUoZSl7ZS5leHBvcnRzPVsiUTMiXX0sMTc1NTA3KGUpe2UuZXhwb3J0cz1bIlE0Il19LDU0MTc0MihlKXtlLmV4cG9ydHM9WyJSZWZyZXNoIHRoZSBwYWdlIG9yIGNvbWUgYmFjayBsYXRlciB0byBrZWVwIHJlYWRpbmcuIl19LDgyNTgwNyhlKXtlLmV4cG9ydHM9WyJSZWxvYWQiXX0sMjg1MjcoZSl7ZS5leHBvcnRzPVsiVG9wIFN0b3JpZXMiXX0sNDIwODg4KGUpe2UuZXhwb3J0cz1bIlVuZm9ydHVuYXRlbHksIHRoZXJlIGFyZSBubyBUb3AgU3RvcmllcyBhdmFpbGFibGUgZm9yIHtzeW1ib2xOYW1lfS4gUGxlYXNlIHRyeSBjaGFuZ2luZyB0aGUgc3ltYm9sIG9yIHRoZSBtYXJrZXQgaW4gdGhlIGZlZWQgc2V0dGluZ3MuIl19LDUxNzg1OShlKXtlLmV4cG9ydHM9WyJWaXNpdCBUcmFkaW5nVmlldyDigJQgZmluYW5jaWFsIGNoYXJ0aW5nIHBsYXRmb3JtIGFuZCB0cmFkaW5nIGNvbW11bml0eSJdfX1dKTs="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12181.b65a58355ff7cc34950f.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.557Z","timestamp":1785154590557,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/12181.b65a58355ff7cc34950f.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a44af20-21c82\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 01 Jul 2026 06:09:36 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/01/2026 11:40:37\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9551bcbd3378c548c35935421b76ff8d\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":138370,"size_decoded":18187,"mime_type":"application/javascript; charset=utf-8","magic":"ASCII text, with very long lines (3070)","md5":"90cd4a18a60bc908d0840ba4fec27dc6","sha1":"bb5de7eba54b0d9323f872960612df642a27716e","sha256":"ae043b44480c283e0e50b84e353fe3e98e560fb8f9bd14638f61a5dfadc231ba","sha512":"1ff83bc8bcac42839140d927da7b753dc51b3ab887327bf07fef3ca3b194425621ed7376ef404517f818a80b9f3d96955fd5c9239c1dc05e599503f7118edc99","ssdeep":"1536:U4ecrc2hMNlbPWqfxN+fUE44ld4e44IJmuJY7+fHfvWr05KNyhLcSbWd4+o:4CxdswjaWyn","tlshash":"10d345b217f406f473b80d5293f77e591b3c74a359882c52d2a4d9a0dd40fc2a96ba3e","first_seen":"2026-07-01T19:46:28.364877Z","last_seen":"2026-07-27T14:23:37.873503Z","times_seen":1150,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjE4MV0sezcxMjE4MShlKXtlLmV4cG9ydHMudHpEYXRhPXsiQWZyaWNhL0NhaXJvIjp7dGltZTpbLTIxODU0MDE2MDAsLTkyOTgzNjgwMCwtOTIzMDk3NjAwLC05MDYxNjMyMDAsLTg5Mjg1NzYwMCwtODc1ODM2ODAwLC04NTc3NzkyMDAsLTg0NDMwMDgwMCwtODI1ODExMjAwLC04MTI2Nzg0MDAsLTc5NDE4ODgwMCwtNzc5ODQ2NDAwLC03NjI2NTI4MDAsLTM5OTA4MTYwMCwtMzg2NjRlNCwtMzY4MzIzMjAwLC0zNTUxMDRlMywtMzM2NzgzNjAwLC0zMjM2NDM2MDAsLTMwNTE2MTIwMCwtMjkyMDIxMjAwLC0yNzM2MjUyMDAsLTI2MDQ4NTIwMCwtMjQyMDg5MjAwLC0yMjg5NDkyMDAsLTIxMDU1MzIwMCwtMTk3NDEzMjAwLC0xNzg5MzA4MDAsLTE2NTc5MDgwMCwtMTQ3Mzk0ODAwLC0xMzQyNTQ4MDAsLTExNTg1ODgwMCwtMTAyNjMyNDAwLC04NDMyMjgwMCwtNzEwOTY0MDAsLTUyNzAwNDAwLC0zOTQ3NGUzLC0yMTE2NDQwMCwtNzkzOGUzLDEwMzcxNjAwLDIzNTk4ZTMsNDE5MDc2MDAsNTUxMzRlMyw3MzUzZTQsODY3NTY0MDAsMTA1MDY2ZTMsMTE4MjkyNDAwLDEzNjYwMmUzLDE0OTgyODQwMCwxNjgxMzhlMywxODEzNjQ0MDAsMTk5NzYwNDAwLDIxMjk4NjgwMCwyMzEyOTY0MDAsMjQ0NTIyODAwLDI2MjgzMjQwMCwyNzYwNTg4MDAsMjk0MzY4NDAwLDMwNzU5NDgwMCwzMjU5OTA4MDAsMzM5MjE3MjAwLDM1NzUyNjgwMCwzNzA3NTMyMDAsMzk2NDA2ODAwLDQwMjI4OTIwMCw0MjY4MTk2MDAsNDMzODI1MjAwLDQ1MjIyMTIwMCw0NjU0NDc2MDAsNDgzNzU3MjAwLDQ5Njk4MzYwMCw1MTUyOTMyMDAsNTI4NTE5NjAwLDU0NjgyOTIwMCw1NjAwNTU2MDAsNTc4NDUxNjAwLDU5MTY3OGUzLDYxMDQxOTYwMCw2MjMyMTRlMyw2NDE1MjM2MDAsNjU0NzVlNCw2NzMwNTk2MDAsNjg2Mjg2ZTMsNzA0NjgyZTMsNzE3OTA4NDAwLDczNjIxOGUzLDc0OTQ0NDQwMCw3Njc3NTRlMyw3ODA5ODA0MDAsNzk5MDI3MjAwLDgxMjMzMjgwMCw4MzA0NzY4MDAsODQzNzgyNDAwLDg2MTkyNjQwMCw4NzUyMzJlMyw4OTMzNzZlMyw5MDY2ODE2MDAsOTI1NDMwNDAwLDkzODczNmUzLDk1Njg4ZTQsOTcwMTg1NjAwLDk4ODMyOTYwMCwxMDAxNjM1MjAwLDEwMTk3NzkyMDAsMTAzMzA4NDgwMCwxMDUxMjI4ODAwLDEwNjQ1MzQ0MDAsMTA4MzI4MzIwMCwxMDk2NTg4ODAwLDExMTQ3MzI4MDAsMTEyODAzODQwMCwxMTQ2MTgyNDAwLDExNTg4ODMyMDAsMTE3NzYzMmUzLDExODkxMjMyMDAsMTIwOTA4MTYwMCwxMjE5OTY4ZTMsMTI0MDUzMTIwMCwxMjUwODEyODAwLDEyNzI1ODU2MDAsMTI4MTQ4NDgwMCwxMjg0MDc2ODAwLDEyODU4OTEyMDAsMTQwMDE5ODQwMCwxNDAzODI3MjAwLDE0MDY4NTEyMDAsMTQxMTY4OTYwMCwxNjgyNjRlNCwxNjk4MzY0ODAwLDE3MTQwODk2MDAsMTczMDQxOTIwMCwxNzQ1NTM5MjAwLDE3NjE4Njg4MDAsMTc3Njk4ODgwMCwxNzkzMzE4NDAwLDE4MDkwNDMyMDAsMTgyNDc2OGUzLDE4NDA0OTI4MDAsMTg1NjIxNzYwMCwxODcxOTQyNDAwLDE4ODc2NjcyMDAsMTkwMzM5MmUzLDE5MTk3MjE2MDAsMTkzNDg0MTYwMF0sb2Zmc2V0Ols3NTA5LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwXX0sIkFmcmljYS9DYXNhYmxhbmNhIjp7CnRpbWU6Wy0xNzczMDE0NDAwLC05NTYzNjE2MDAsLTk1MDQ4NjQwMCwtOTQyMDE5MjAwLC03NjExODRlMywtNjE3MjQxNjAwLC02MDUxNDU2MDAsLTgxNDMyZTMsLTcxMTA3MjAwLDE0MTI2NGUzLDE0NzIyNTYwMCwxOTk3NTY4MDAsMjA3NzA1NjAwLDIzMTI5MjgwMCwyNDQyNTI4MDAsMjY1NTA3MjAwLDI3MTAzNjgwMCw0NDgyNDMyMDAsNTA0OTIxNjAwLDEyMTIyNzg0MDAsMTIyMDIyNzIwMCwxMjQzODE0NDAwLDEyNTA4MTI4MDAsMTI3Mjc1ODQwMCwxMjgxMjI1NjAwLDEzMDE3ODg4MDAsMTMxMjA3MDQwMCwxMzM1NjY0ODAwLDEzNDI3NTMyMDAsMTM0NTQyOGUzLDEzNDg5NzRlMywxMzY3MTE0NDAwLDEzNzMxNjZlMywxMzc2MWU1LDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDAzOTI0NDAwLDE0MDY5NDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0MzQyNTA4MDAsMTQzNzI3MTIwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0NjUwOTU2MDAsMTQ2ODExNmUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNDk1MzM1NjAwLDE0OTg5NjA4MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTUyNjE4MDQwMCwxNTI5MjAwODAwLDE1NDA2OTU2MDAsMTU1NzAyNTIwMCwxNTYwMDQ1NjAwLDE1ODcyNjUyMDAsMTU5MDg5MDQwMCwxNjE4MTFlNCwxNjIxMTMwNDAwLDE2NDgzNWU0LDE2NTE5NzUyMDAsMTY3OTE5NDgwMCwxNjgyMjE1MjAwLDE3MTAwMzk2MDAsMTcxMzA2ZTQsMTc0MDI3OTYwMCwxNzQzOTA0ODAwLDE3NzExMjQ0MDAsMTc3NDE0NDgwMCwxODAxOTY5MjAwLDE4MDQ5ODk2MDAsMTgzMjIwOTIwMCwxODM1ODM0NDAwLDE4NjMwNTRlMywxODY2MDc0NDAwLDE4OTMyOTRlMywxODk2OTE5MjAwLDE5MjQxMzg4MDAsMTkyNzE1OTIwMF0sb2Zmc2V0OlstMTgyMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDBdfSwiQWZyaWNhL0pvaGFubmVzYnVyZyI6e3RpbWU6Wy0yNDU4MTY2NDAwLC0yMTA5MjgzMjAwLC04NjA5Njg4MDAsLTg0NTI0NGUzLC04Mjk1MTkyMDAsLTgxMzc5NDQwMCwxOTI0OTk5MjAwXSxvZmZzZXQ6WzY3MjAsNTQwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJBZnJpY2EvTGFnb3MiOnt0aW1lOlstMjAzNTU4NGUzLC0xOTQwODg5NjAwLC0xNzY3MjI1NjAwLC0xNTg4NDY0ZTMsMTkyNDk5NTYwMF0sb2Zmc2V0Ols4MTUsMCw4MTUsMTgwMCwzNjAwXX0sIkFmcmljYS9OYWlyb2JpIjp7dGltZTpbLTE5NDYxNmU0LC0xMzA5NzM3NjAwLC0xMjYxOTU4NDAwLC0xMDQxMzc5MjAwLC04NjUyOTZlMywxOTI1MDAyODAwXSxvZmZzZXQ6Wzg4MzYsOWUzLDEwODAwLDllMyw5OTAwLDEwODAwXX0sIkFmcmljYS9UdW5pcyI6e3RpbWU6Wy0yNzk3MmU1LC0xODU1OTU4NDAwLC05NjkyMzg4MDAsLTk1MDQ4NjQwMCwtOTQxOTM2NDAwLC04OTExMjk2MDAsLTg3NzgyNGUzLC04NTcyNWU0LC04NDQ1NTI4MDAsLTg0MjkxMTIwMCwtODQyMjJlNCwtODI4MjIzMjAwLC04MTI0OTg0MDAsLTc5NjI2MjQwMCwtNzgxMDQ4ODAwLC03NjY2MjcyMDAsMjMxMjA2NDAwLDI0MzkxMDgwMCwyNjI4Mjg4MDAsMjc2MDUxNjAwLDU4MTEyNjQwMCw1OTExNTI0MDAsNjA2ODczNjAwLDYyMjYwMmUzLDY0MTUyZTQsNjU0NjU2NDAwLDExMTQ5MDU2MDAsMTEyODA0NTYwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxOTI0OTk1NjAwXSxvZmZzZXQ6WzI0NDQsNTYxLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkFtZXJpY2EvQW5jaG9yYWdlIjp7CnRpbWU6Wy0zMjI1MTczMzAzLC0yMTg4OTg3MjAwLC04ODAyMzZlMywtNzY5NDI4ZTMsLTc2NTQxMDQwMCwtODY5MTg0MDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDM4OTk4NDAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLG9mZnNldDpbNTA0MjQsLTM1OTc2LC0zNmUzLC0zMjQwMCwtMzI0MDAsLTM2ZTMsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTMyNDAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDBdfSwiQW1lcmljYS9BcmdlbnRpbmEvQnVlbm9zX0FpcmVzIjp7dGltZTpbLTIzNzIxMTJlMywtMTU2NzQ2ODgwMCwtMTIzMzQ0NjQwMCwtMTIyMjk5MmUzLC0xMjA1OTcxMjAwLC0xMTk0MDQ4ZTMsLTExNzI4OGU0LC0xMTYyNTEyZTMsLTExNDEzNDRlMywtMTEzMDk3NmUzLC0xMTA5ODA4ZTMsLTEwOTk0NGU0LC0xMDc4MjcyZTMsLTEwNjc4MTc2MDAsLTEwNDY2NDk2MDAsLTEwMzYyODE2MDAsLTEwMTUxMTM2MDAsLTEwMDQ3NDU2MDAsLTk4MzU3NzYwMCwtOTczMjA5NjAwLC05NTIwNDE2MDAsLTk0MTU4NzIwMCwtOTMxMDQ2NDAwLC05MDA4OTI4MDAsLTg5MDM1MmUzLC04MzM3NmU0LC04MjcyOGU0LC03NTIyODQ4MDAsLTczMzc5NTIwMCwtMTk3MzM3NjAwLC0xOTA4NTc2MDAsLTE4NDIwNDgwMCwtMTY0NTA1NjAwLC0xNTI2Njg4MDAsLTEzMjk2OTYwMCwtMTIxMTMyODAwLC0xMDE0MzM2MDAsLTg2ODMyZTMsLTcxMTA3MjAwLC01NDc3NzYwMCwtMzkwNTI4MDAsLTIzMzI4ZTMsLTc2MDMyMDAsMTI4MTMxMjAwLDEzNjU5ODQwMCw1OTY5Mzc2MDAsNjA1MDU5MjAwLDYyNDQxMjgwMCw2MzY1MDg4MDAsNjU2NDY3MjAwLDY2Nzk1ODQwMCw2ODc5MTY4MDAsNjk5NDA4ZTMsNzE5MzY2NDAwLDczMTQ2MjQwMCw5Mzg5MDg4MDAsOTUyMDQxNjAwLDExOTg5NzI4MDAsMTIwNTYyNTYwMCwxMjI0Mzc0NDAwLDEyMzcwNzUyMDAsMTkyNDk4MTIwMF0sCm9mZnNldDpbLTE0MDI4LC0xNTQwOCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtMTA4MDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDBdfSwiQW1lcmljYS9Cb2dvdGEiOnt0aW1lOlstMjcwNzY4OTYwMCwtMTczOTA1OTIwMCw3MDQ4NTEyMDAsNzI5MDQzMjAwLDE5MjQ5NzRlM10sb2Zmc2V0OlstMTc3NzYsLTE3Nzc2LC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL0NhcmFjYXMiOnt0aW1lOlstMjUyNDUyMTYwMCwtMTgyNjc1NTIwMCwtMTU3NzY2NDAwLDExOTcxNjkyMDAsMTQ2MjA2OTgwMCwxOTI0OTc3NjAwXSxvZmZzZXQ6Wy0xNjA2NCwtMTYwNjAsLTE2MjAwLC0xNDQwMCwtMTYyMDAsLTE0NDAwXX0sIkFtZXJpY2EvQ2hpY2FnbyI6ewp0aW1lOlstMjcxNzY2ODIzNiwtMTYzMzI5ODQwMCwtMTYxNTE1NDQwMCwtMTYwMTg0ODgwMCwtMTU4MzcwNDgwMCwtMTU2Mzc0NjQwMCwtMTU1MTY1MDQwMCwtMTUzODk0OTYwMCwtMTUyMDIwMDgwMCwtMTUwNDQ3NmUzLC0xNDkxNzc1MjAwLC0xNDczMDI2NDAwLC0xNDU5NzIwODAwLC0xNDQxNTc2ODAwLC0xNDI4MjcxMjAwLC0xNDEwMTI3MjAwLC0xMzk2ODIxNjAwLC0xMzc4Njc3NjAwLC0xMzY1MzcyZTMsLTEzNDcyMjhlMywtMTMzMzkyMjQwMCwtMTMxNTE3MzYwMCwtMTMwMTg2OGUzLC0xMjgzNzI0ZTMsLTEyNzA0MTg0MDAsLTEyNTIyNzQ0MDAsLTEyMzg5Njg4MDAsLTEyMjA4MjQ4MDAsLTEyMDc1MTkyMDAsLTExODkzNzUyMDAsLTExNzYwNjk2MDAsLTExNTczMjA4MDAsLTExNDQ2MmU0LC0xMTI1ODcxMjAwLC0xMTEyNTY1NjAwLC0xMDk0NDIxNjAwLC0xMDgxMTE2ZTMsLTEwNjc4MTA0MDAsLTEwNDU0MzI4MDAsLTEwMzE1MjI0MDAsLTEwMTgyMTY4MDAsLTEwMDAwNzI4MDAsLTk4Njc2NzIwMCwtOTY4MDE4NDAwLC05NTUzMTc2MDAsLTkzNjU2ODgwMCwtOTIzMjYzMjAwLC05MDUxMTkyMDAsLTg5MTgxMzYwMCwtODgwMjM2ZTMsLTc2OTQxMzYwMCwtNzY1NDEwNDAwLC03NDcyNjY0MDAsLTczMzk2MDgwMCwtNzE1ODE2ODAwLC03MDI1MTEyMDAsLTY4NDM2NzIwMCwtNjcxMDYxNjAwLC02NTI5MTc2MDAsLTYzOTYxMmUzLC02MjA4NjMyMDAsLTYwODE2MjQwMCwtNTg5NDEzNjAwLC01NzYxMDhlMywtNTU3OTY0ZTMsLTU0NDY1ODQwMCwtNTI2NTE0NDAwLC01MTMyMDg4MDAsLTQ5NTA2NDgwMCwtNDgxNzU5MjAwLC00NjM2MTUyMDAsLTQ0NzI4NTYwMCwtNDMxNTYwODAwLC00MTU4MzZlMywtNDAwMTExMjAwLC0zODQzODY0MDAsLTM2ODY2MTYwMCwtMzUyOTM2ODAwLC0zMzcyMTJlMywtMzIxNDg3MjAwLC0zMDU3NjI0MDAsLTI4OTQzMjgwMCwtMjczNzA4ZTMsLTI1Nzk4MzIwMCwtMjQyMjU4NDAwLC0yMjY1MzM2MDAsLTIxMDgwODgwMCwtMTk1MDg0ZTMsLTE3OTM1OTIwMCwtMTYzNjM0NDAwLC0xNDc5MDk2MDAsLTEzMTU4ZTQsLTExNjQ2ZTQsLTEwMDEzMDQwMCwtODQ0MDU2MDAsLTY4NjgwODAwLC01Mjk1NmUzLC0zNzIzMTIwMCwtMjE1MDY0MDAsLTU3ODE2MDAsOTk0MzIwMCwyNTY2OGUzLDQxMzkyODAwLDU3NzIyNDAwLDczNDQ3MjAwLDg5MTcyZTMsMTA0ODk2ODAwLDEyMDYyMTYwMCwxMjY2Njk2MDAsMTUyMDcxMjAwLDE2MjM1MjgwMCwxODM1MjA4MDAsMTk5MjQ1NjAwLDIxNTU3NTIwMCwyMzA2OTUyMDAsMjQ3MDI0ODAwLDI2Mjc0OTYwMCwyNzg0NzQ0MDAsMjk0MTk5MjAwLDMwOTkyNGUzLDMyNTY0ODgwMCwzNDEzNzM2MDAsMzU3MDk4NDAwLDM3MjgyMzIwMCwzODg1NDhlMyw0MDQ4Nzc2MDAsNDE5OTk3NjAwLDQzNjMyNzIwMCw0NTIwNTJlMyw0Njc3NzY4MDAsNDgzNTAxNjAwLDQ5OTIyNjQwMCw1MTQ5NTEyMDAsNTMwNjc2ZTMsNTQ0NTg2NDAwLDU2MjEyNTYwMCw1NzYwMzZlMyw1OTQxOGU0LDYwNzQ4NTYwMCw2MjU2Mjk2MDAsNjM4OTM1MjAwLDY1NzA3OTIwMCw2NzA5ODk2MDAsNjg4NTI4ODAwLDcwMjQzOTIwMCw3MTk5Nzg0MDAsNzMzODg4ODAwLDc1MjAzMjgwMCw3NjUzMzg0MDAsNzgzNDgyNDAwLDc5Njc4OGUzLDgxNDkzMmUzLDgyODg0MjQwMCw4NDYzODE2MDAsODYwMjkyZTMsODc3ODMxMjAwLDg5MTc0MTYwMCw5MDkyODA4MDAsOTIzMTkxMjAwLDk0MTMzNTIwMCw5NTQ2NDA4MDAsOTcyNzg0ODAwLDk4NjA5MDQwMCwxMDA0MjM0NDAwLDEwMTgxNDQ4MDAsMTAzNTY4NGUzLDEwNDk1OTQ0MDAsMTA2NzEzMzYwMCwxMDgxMDQ0ZTMsMTA5OTE4OGUzLDExMTI0OTM2MDAsMTEzMDYzNzYwMCwxMTQzOTQzMjAwLDExNjIwODcyMDAsMTE3MzU3ODQwMCwxMTk0MTQxNjAwLDEyMDUwMjhlMywxMjI1NTkxMjAwLDEyMzY0Nzc2MDAsMTI1NzA0MDgwMCwxMjY4NTMyZTMsMTI4OTA5NTIwMCwxMjk5OTgxNjAwLDEzMjA1NDQ4MDAsMTMzMTQzMTIwMCwxMzUxOTk0NDAwLDEzNjI4ODA4MDAsMTM4MzQ0NGUzLDEzOTQzMzA0MDAsMTQxNDg5MzYwMCwxNDI1NzhlNCwxNDQ2MzQzMjAwLDE0NTc4MzQ0MDAsMTQ3ODM5NzYwMCwxNDg5Mjg0ZTMsMTUwOTg0NzIwMCwxNTIwNzMzNjAwLDE1NDEyOTY4MDAsMTU1MjE4MzIwMCwxNTcyNzQ2NDAwLDE1ODM2MzI4MDAsMTYwNDE5NmUzLDE2MTU2ODcyMDAsMTYzNjI1MDQwMCwxNjQ3MTM2ODAwLDE2Njc3ZTUsMTY3ODU4NjQwMCwxNjk5MTQ5NjAwLDE3MTAwMzZlMywxNzMwNTk5MjAwLDE3NDE0ODU2MDAsMTc2MjA0ODgwMCwxNzcyOTM1MjAwLDE3OTM0OTg0MDAsMTgwNDk4OTYwMCwxODI1NTUyODAwLDE4MzY0MzkyMDAsMTg1NzAwMjQwMCwxODY3ODg4ODAwLDE4ODg0NTJlMywxODk5MzM4NDAwLDE5MTk5MDE2MDAsMTkzMDc4OGUzXSwKb2Zmc2V0OlstMjEwMzYsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDBdfSwiQW1lcmljYS9FbF9TYWx2YWRvciI6e3RpbWU6Wy0xNTQ2MzAwODAwLDU0Njk5ODQwMCw1NTk2OTkyMDAsNTc4NDQ4ZTMsNTkxMTQ4ODAwLDE5MjQ5NzA0MDBdLG9mZnNldDpbLTIxNDA4LC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwXX0sIkFtZXJpY2EvSGFsaWZheCI6ewp0aW1lOlstMjEzMTY2MDgwMCwtMTY5NjI5MTIwMCwtMTY4MDQ4ZTQsLTE2MzIwODg4MDAsLTE2MTUxNTQ0MDAsLTE1NjY3Nzc2MDAsLTE1NTcxMDA4MDAsLTE1MzU1MDA4MDAsLTE1MjQ5NmU0LC0xNTA0NDgzMjAwLC0xNDkzNDI0ZTMsLTE0NzI0Mjg4MDAsLTE0NjE5NzQ0MDAsLTE0NDA5NzkyMDAsLTE0Mjk0MDE2MDAsLTE0MDk1Mjk2MDAsLTEzOTY3NDI0MDAsLTEzNzY4NzA0MDAsLTEzNjY1MDI0MDAsLTEzNDY2MzA0MDAsLTEzMzM4NDMyMDAsLTEzMTM5NzEyMDAsLTEzMDM2ODk2MDAsLTEyODI1MjE2MDAsLTEyNzI2NzJlMywtMTI1MTA3MmUzLC0xMjQwMDk5MjAwLC0xMjE5NjIyNDAwLC0xMjA3NDRlNCwtMTE4ODc3NzYwMCwtMTE3NTk5MDQwMCwtMTE1NzMyOGUzLC0xMTQzOTM2ZTMsLTExMjQwNjRlMywtMTExMzc4MjQwMCwtMTA5MTQwNDgwMCwtMTA4MTAzNjgwMCwtMTA1OTg2ODgwMCwtMTA1MDc5NjgwMCwtMTAzMDkyNDgwMCwtMTAxODEzNzYwMCwtOTk5NDc1MjAwLC05ODY2ODhlMywtOTY1NjA2NDAwLC05NTUyMzg0MDAsLTkzNTk3MTIwMCwtOTIzMTg0ZTMsLTkwNDUyMTYwMCwtODkxNzM0NDAwLC04ODAyMzZlMywtNzY5NDA2NDAwLC03NjU0MTA0MDAsLTc0NzI2NjQwMCwtNzMzOTYwODAwLC03MTU4MTY4MDAsLTcwMjUxMTIwMCwtNjg0MzY3MjAwLC02NzEwNjE2MDAsLTY1MjkxNzYwMCwtNjM5NjEyZTMsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDMxNTYwODAwLC00MTgyNTUyMDAsLTQwMDExMTIwMCwtMzg2ODA1NjAwLC0zNjg2NjE2MDAsLTM1NTM1NmUzLC0zMzcyMTJlMywtMzIzOTA2NDAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEzNjM0NjQwMCwxNTIwNzEyMDAsMTY3Nzk2ZTMsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTE1MjY0LC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMF19LCJBbWVyaWNhL0p1bmVhdSI6e3RpbWU6Wy0zMjI1MTY5NTg4LC0yMTg4OTg3MjAwLC04ODAyMzZlMywtNzY5NDIwODAwLC03NjU0MTA0MDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDM4OTk4NDAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLApvZmZzZXQ6WzU0MTM5LC0zMjI2MSwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yODgwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMzI0MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMF19LCJBbWVyaWNhL0xpbWEiOnt0aW1lOlstMjUyNDUyMTYwMCwtMTkzODU1NjgwMCwtMTAwOTg0MzIwMCwtMTAwMjA2NzIwMCwtOTg2Nzc0NDAwLC05NzEwNDk2MDAsLTk1NTMyNDgwMCwtOTM5NmU1LDUwNDkyMTYwMCw1MTI2OTc2MDAsNTM2NDU3NjAwLDU0NDIzMzYwMCw2MzExNTJlMyw2Mzg5MjhlMyw3NTczODI0MDAsNzY1MTU4NDAwLDE5MjQ5NzRlM10sb2Zmc2V0OlstMTg0OTIsLTE4NTE2LC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL0xvc19BbmdlbGVzIjp7dGltZTpbLTI3MTc2NjgzNzgsLTE2MzMyOTg0MDAsLTE2MTUxNTQ0MDAsLTE2MDE4NDg4MDAsLTE1ODM3MDQ4MDAsLTg4MDIzNmUzLC03Njk0MjA4MDAsLTc2NTQxMDQwMCwtNjg3OTk1OTQwLC02NjI2ODA4MDAsLTYyMDg2NjgwMCwtNjA4MTYyNDAwLC01ODk0MTcyMDAsLTU3NjEwOGUzLC01NTc5Njc2MDAsLTU0NDY1ODQwMCwtNTI2NTE4ZTMsLTUxMzIwODgwMCwtNDk1MDY4NDAwLC00ODE3NTkyMDAsLTQ2MzYxODgwMCwtNDUwMzA5NjAwLC00MzE1NjQ0MDAsLTQxODI1NTIwMCwtNDAwMTE0ODAwLC0zODY4MDU2MDAsLTM2ODY2NTIwMCwtMzU1MzU2ZTMsLTMzNzIxNTYwMCwtMzIzOTA2NDAwLC0zMDU3NjZlMywtMjkyNDU2ODAwLC0yNzM3MTE2MDAsLTI2MTAwNzIwMCwtMjQyMjYyZTMsLTIyNjUzMzYwMCwtMjEwODEyNDAwLC0xOTUwODRlMywtMTc5MzYyODAwLC0xNjM2MzQ0MDAsLTE0NzkxMzIwMCwtMTMxNThlNCwtMTE2NDYzNjAwLC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTI4Mzc4LC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMF19LCJBbWVyaWNhL01leGljb19DaXR5Ijp7dGltZTpbLTE1MTQ3NjMzOTYsLTEzNDMxNzQ0MDAsLTEyMzQ4Mjg4MDAsLTEyMjA0ODY0MDAsLTEyMDcxODA4MDAsLTExOTEzNjk2MDAsLTk3NTI4MzIwMCwtOTYzMTg3MjAwLC05MTcxMzZlMywtOTA3MzcyODAwLC04MjE5MjMyMDAsLTgxMDA4NjQwMCwtNjI3NTIzMjAwLC02MTMwMDhlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODkxMTQ0MDAsMTAwMTgxNTIwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzUzOTI4MDAsMTE5MzUzNjgwMCwxMjA3NDQ3MjAwLDEyMjQ5ODY0MDAsMTIzODg5NjgwMCwxMjU2NDM2ZTMsMTI3MDM0NjQwMCwxMjg4NDkwNDAwLDEzMDE3OTZlMywxMzE5OTRlNCwxMzMzMjQ1NjAwLDEzNTEzODk2MDAsMTM2NTNlNSwxMzgyODM5MjAwLDEzOTY3NDk2MDAsMTQxNDI4ODgwMCwxNDI4MTk5MjAwLDE0NDU3Mzg0MDAsMTQ1OTY0ODgwMCwxNDc3NzkyODAwLDE0OTEwOTg0MDAsMTUwOTI0MjQwMCwxNTIyNTQ4ZTMsMTU0MDY5MmUzLDE1NTQ2MDI0MDAsMTU3MjE0MTYwMCwxNTg2MDUyZTMsMTYwMzU5MTIwMCwxNjE3NTAxNjAwLDE2MzU2NDU2MDAsMTY0ODk1MTIwMCwxNjY3MDk1MjAwLDE5MjQ5NzA0MDBdLG9mZnNldDpbLTIzNzk2LC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMF19LCJBbWVyaWNhL05ld19Zb3JrIjp7CnRpbWU6Wy0yNzE3NjY4NTYyLC0xNjMzMjk4NDAwLC0xNjE1MTU0NDAwLC0xNjAxODQ4ODAwLC0xNTgzNzA0ODAwLC0xNTcwMzk5MjAwLC0xNTUxNjUwNDAwLC0xNTM2NTMwNDAwLC0xNTIzMjI0ODAwLC0xNTA0NDc2ZTMsLTE0OTE3NzUyMDAsLTE0NzMwMjY0MDAsLTE0NTk3MjA4MDAsLTE0NDE1NzY4MDAsLTE0MjgyNzEyMDAsLTE0MTAxMjcyMDAsLTEzOTY4MjE2MDAsLTEzNzg2Nzc2MDAsLTEzNjUzNzJlMywtMTM0NzIyOGUzLC0xMzMzOTIyNDAwLC0xMzE1MTczNjAwLC0xMzAxODY4ZTMsLTEyODM3MjRlMywtMTI3MDQxODQwMCwtMTI1MjI3NDQwMCwtMTIzODk2ODgwMCwtMTIyMDgyNDgwMCwtMTIwNzUxOTIwMCwtMTE4OTM3NTIwMCwtMTE3NjA2OTYwMCwtMTE1NzMyMDgwMCwtMTE0NDYyZTQsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTkyMzI2MzIwMCwtOTA1MTE5MjAwLC04OTE4MTM2MDAsLTg4MDIzNmUzLC03Njk0MWU0LC03NjU0MTA0MDAsLTc0NzI2NjQwMCwtNzMzOTYwODAwLC03MTU4MTY4MDAsLTcwMjUxMTIwMCwtNjg0MzY3MjAwLC02NzEwNjE2MDAsLTY1MjkxNzYwMCwtNjM5NjEyZTMsLTYyMDg2MzIwMCwtNjA4MTYyNDAwLC01ODk0MTM2MDAsLTU3NjEwOGUzLC01NTc5NjRlMywtNTQ0NjU4NDAwLC01MjY1MTQ0MDAsLTUxMzIwODgwMCwtNDk1MDY0ODAwLC00ODE3NTkyMDAsLTQ2MzYxNTIwMCwtNDQ3Mjg1NjAwLC00MzE1NjA4MDAsLTQxNTgzNmUzLC00MDAxMTEyMDAsLTM4NDM4NjQwMCwtMzY4NjYxNjAwLC0zNTI5MzY4MDAsLTMzNzIxMmUzLC0zMjE0ODcyMDAsLTMwNTc2MjQwMCwtMjg5NDMyODAwLC0yNzM3MDhlMywtMjU3OTgzMjAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEyNjY2OTYwMCwxNTIwNzEyMDAsMTYyMzUyODAwLDE4MzUyMDgwMCwxOTkyNDU2MDAsMjE1NTc1MjAwLDIzMDY5NTIwMCwyNDcwMjQ4MDAsMjYyNzQ5NjAwLDI3ODQ3NDQwMCwyOTQxOTkyMDAsMzA5OTI0ZTMsMzI1NjQ4ODAwLDM0MTM3MzYwMCwzNTcwOTg0MDAsMzcyODIzMjAwLDM4ODU0OGUzLDQwNDg3NzYwMCw0MTk5OTc2MDAsNDM2MzI3MjAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLApvZmZzZXQ6Wy0xNzc2MiwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL1Bob2VuaXgiOnt0aW1lOlstMjcxNzY3MDQ5OCwtMTYzMzI5ODQwMCwtMTYxNTE1NDQwMCwtMTYwMTg0ODgwMCwtMTU4MzcwNDgwMCwtODgwMjM2ZTMsLTgyMDU0MDc0MCwtODEyNjc4MzQwLC03OTY4NjcxNDAsLTg0NDA1NjAwLC02ODY4MDgwMCwxOTI0OTY2ODAwXSxvZmZzZXQ6Wy0yNjg5OCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwXX0sIkFtZXJpY2EvU2FudGlhZ28iOnsKdGltZTpbLTI1MjQ1MjE2MDAsLTE4OTI2Nzg0MDAsLTE2ODg0Mjg4MDAsLTE2MTkyMjI0MDAsLTE1OTM4MjA4MDAsLTEzMzYwMDMyMDAsLTEzMTc2ZTUsLTEzMDQzODA4MDAsLTEyODYwNjRlMywtMTI3Mjg0NDgwMCwtMTI1NDUyOGUzLC0xMjQxMzA4ODAwLC0xMjIyOTkyZTMsLTEyMDk3NzI4MDAsLTExOTEzNjk2MDAsLTExNzgxNTA0MDAsLTg3MDU2NjQwMCwtODY1Mjk2ZTMsLTc0MDUzNDQwMCwtNzM2NjQ2NDAwLC03MTgwNzA0MDAsLTcxMzY2NzYwMCwtMzY2MzM2MDAsLTIzOTMyODAwLC0zMzY5NjAwLDc1MTY4MDAsMjQ0NTEyMDAsMzc3NTY4MDAsNTU5MDA4MDAsNjkyMDY0MDAsODc5NTUyMDAsMTAwNjU2ZTMsMTE4MTk1MjAwLDEzMjEwNTYwMCwxNTA4NTQ0MDAsMTYzNTU1MjAwLDE4MjMwNGUzLDE5NTYwOTYwMCwyMTM3NTM2MDAsMjI3MDU5MjAwLDI0NTIwMzIwMCwyNTg1MDg4MDAsMjc3MjU3NjAwLDI4OTk1ODQwMCwzMDg3MDcyMDAsMzIxNDA4ZTMsMzQwMTU2ODAwLDM1MzQ2MjQwMCwzNzE2MDY0MDAsMzg0OTEyZTMsNDAzMDU2ZTMsNDE2MzYxNjAwLDQzNDUwNTYwMCw0NDc4MTEyMDAsNDY2NTZlNCw0NzkyNjA4MDAsNDk4MDA5NjAwLDUxMDcxMDQwMCw1Mjk0NTkyMDAsNTQ1MTg0ZTMsNTYwOTA4ODAwLDU3NDIxNDQwMCw1OTIzNTg0MDAsNjA1NjY0ZTMsNjI0NDEyODAwLDYzNzExMzYwMCw2NTM0NDMyMDAsNjY4NTYzMjAwLDY4NzMxMmUzLDcwMDYxNzYwMCw3MTg3NjE2MDAsNzMyMDY3MjAwLDc1MDIxMTIwMCw3NjM1MTY4MDAsNzgxNjYwODAwLDc5NDk2NjQwMCw4MTM3MTUyMDAsODI2NDE2ZTMsODQ1MTY0ODAwLDg1OTY4ZTQsODc2NjE0NDAwLDg4OTkyZTQsOTA2ODU0NDAwLDkyMzE4NGUzLDkzOTUxMzYwMCw5NTI4MTkyMDAsOTcxNTY4ZTMsOTg0MjY4ODAwLDEwMDMwMTc2MDAsMTAxNTcxODQwMCwxMDM0NDY3MjAwLDEwNDcxNjhlMywxMDY1OTE2ODAwLDEwNzkyMjI0MDAsMTA5NzM2NjQwMCwxMTEwNjcyZTMsMTEyODgxNmUzLDExNDIxMjE2MDAsMTE2MDg3MDQwMCwxMTczNTcxMjAwLDExOTIzMmU0LDEyMDY4MzUyMDAsMTIyMzc2OTYwMCwxMjM3MDc1MjAwLDEyNTUyMTkyMDAsMTI3MDMzOTIwMCwxMjg2NjY4ODAwLDEzMDQ4MTI4MDAsMTMxMzg4NDgwMCwxMzM1NjU3NjAwLDEzNDY1NDRlMywxMzY3MTA3MjAwLDEzNzg1OTg0MDAsMTM5ODU1NjgwMCwxNDEwMDQ4ZTMsMTQ2MzI3MDQwMCwxNDcxMTMyODAwLDE0OTQ3MmU0LDE1MDI1ODI0MDAsMTUyNjE2OTYwMCwxNTM0MDMyZTMsMTU1NDU5NTIwMCwxNTY3OTAwODAwLDE1ODYwNDQ4MDAsMTU5OTM1MDQwMCwxNjE3NDk0NDAwLDE2MzA4ZTUsMTY0ODk0NGUzLDE2NjI4NTQ0MDAsMTY4MDM5MzYwMCwxNjkzNjk5MjAwLDE3MTI0NDhlMywxNzI1NzUzNjAwLDE3NDM4OTc2MDAsMTc1NzIwMzIwMCwxNzc1MzQ3MjAwLDE3ODg2NTI4MDAsMTgwNjc5NjgwMCwxODIwMTAyNDAwLDE4MzgyNDY0MDAsMTg1MTU1MmUzLDE4NzAzMDA4MDAsMTg4MzAwMTYwMCwxOTAxNzUwNDAwLDE5MTUwNTZlMywxOTMzMmU1XSxvZmZzZXQ6Wy0xNjk2NSwtMTY5NjUsLTE4ZTMsLTE2OTY1LC0xNDQwMCwtMTY5NjUsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwXX0sIkFtZXJpY2EvU2FvX1BhdWxvIjp7CnRpbWU6Wy0xNzY3MjI1NjAwLC0xMjA2OTY4NDAwLC0xMTkxMzY5NjAwLC0xMTc1Mzg1NjAwLC0xMTU5ODMzNjAwLC02MzM4MzA0MDAsLTYyMjA3NjQwMCwtNjAyMjk0NDAwLC01OTE4NGU0LC01NzA3NTg0MDAsLTU2MDIxNzYwMCwtNTM5MTM2ZTMsLTUzMTM2ZTQsLTE5NTQzNjgwMCwtMTg0MjA0ODAwLC0xNTUxNzQ0MDAsLTE1MDA3NjgwMCwtMTI4OTA4ODAwLC0xMjExMzI4MDAsLTk5OTY0ODAwLC04OTU5NjgwMCwtNjg0Mjg4MDAsLTU3OTc0NDAwLDQ5OTczNzYwMCw1MTEyMjg4MDAsNTMwNTgyNDAwLDU0MDI1OTIwMCw1NjIxMTg0MDAsNTcxMTkwNDAwLDU5Mjk2MzIwMCw2MDIwMzUyMDAsNjI0NDEyODAwLDYzNDY5NDQwMCw2NTY0NjcyMDAsNjY2NzQ4ODAwLDY4NzkxNjgwMCw2OTc1OTM2MDAsNzE5OTcxMjAwLDcyODQzODQwMCw3NTA4MTZlMyw3NjE3MDI0MDAsNzgyMjY1NjAwLDc5MzE1MmUzLDgxMzcxNTIwMCw4MjM5OTY4MDAsODQ0NTZlNCw4NTYwNTEyMDAsODc2MDk2ZTMsODg4NzEwNDAwLDkwODA2NGUzLDkxOTU1NTIwMCw5Mzg5MDg4MDAsOTUxNjA5NjAwLDk3MDk2MzIwMCw5ODI0NTQ0MDAsMTAwMzAxNzYwMCwxMDEzOTA0ZTMsMTAzNjI4MTYwMCwxMDQ1MzUzNjAwLDEwNjY1MjE2MDAsMTA3NjgwMzIwMCwxMDk5MzUzNjAwLDExMDg4NTc2MDAsMTEyOTQyMDgwMCwxMTQwMzA3MjAwLDExNjI2ODQ4MDAsMTE3MjM2MTYwMCwxMTkyMzJlNCwxMjAzMjA2NDAwLDEyMjQzNzQ0MDAsMTIzNDY1NmUzLDEyNTU4MjRlMywxMjY2NzEwNDAwLDEyODcyNzM2MDAsMTI5ODE2ZTQsMTMxODcyMzIwMCwxMzMwMjE0NDAwLDEzNTA3Nzc2MDAsMTM2MTA1OTIwMCwxMzgyMjI3MjAwLDEzOTI1MDg4MDAsMTQxMzY3NjgwMCwxNDI0NTYzMjAwLDE0NDUxMjY0MDAsMTQ1NjAxMjgwMCwxNDc2NTc2ZTMsMTQ4NzQ2MjQwMCwxNTA4MDI1NjAwLDE1MTg5MTJlMywxNTQxMjg5NjAwLDE1NTAzNjE2MDAsMTkyNDk4MTIwMF0sb2Zmc2V0OlstMTExODgsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwXX0sIkFtZXJpY2EvVG9yb250byI6ewp0aW1lOlstMjM2Njc1NTIwMCwtMTYzMjA4ODgwMCwtMTYxNTE1NDQwMCwtMTYwMTc3MTQwMCwtMTU4MzcxMmUzLC0xNTY3Mzc1MjAwLC0xNTU0NjgxNjAwLC0xNTM0NzE2ZTMsLTE1MjQwODg4MDAsLTE1MDMyNjY0MDAsLTE0OTIzOGU0LC0xNDcxODE2ODAwLC0xNDYwOTMwNDAwLC0xNDQwOTcyZTMsLTE0Mjg4NzZlMywtMTQwOTUyMjQwMCwtMTM5NzQyNjQwMCwtMTM3ODA3MjgwMCwtMTM2NTk3NjgwMCwtMTM0NjYyMzIwMCwtMTMzMzkyMjQwMCwtMTMxNTE3MzYwMCwtMTMwMTg2OGUzLC0xMjgzNzI0ZTMsLTEyNzA0MTg0MDAsLTEyNTIyNzQ0MDAsLTEyMzg5Njg4MDAsLTEyMjA4MjQ4MDAsLTEyMDc1MTkyMDAsLTExODg3NzA0MDAsLTExNzYwNjk2MDAsLTExNTczMjA4MDAsLTExNDQwMTUyMDAsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTg4MDIzMjQwMCwtNzY5NDFlNCwtNzY1NDEwNDAwLC03NDcyNjY0MDAsLTczMzk2MDgwMCwtNzE1ODE2ODAwLC03MDI1MTEyMDAsLTY4NDM2NzIwMCwtNjcxMDYxNjAwLC02NTI5MTc2MDAsLTYzNDE2ODgwMCwtNjIwODYzMjAwLC02MDI3MTkyMDAsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDYzNjE1MjAwLC00NTAzMDk2MDAsLTQzMTU2MDgwMCwtNDE4MjU1MjAwLC00MDAxMTEyMDAsLTM4NDM4NjQwMCwtMzY4NjYxNjAwLC0zNTI5MzY4MDAsLTMzNzIxMmUzLC0zMjE0ODcyMDAsLTMwNTc2MjQwMCwtMjg5NDMyODAwLC0yNzM3MDhlMywtMjU3OTgzMjAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEzNjM0NjQwMCwxNTIwNzEyMDAsMTY3Nzk2ZTMsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTE5MDUyLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE0NDAwLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTNdfSwiQW1lcmljYS9WYW5jb3V2ZXIiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTE2MzIwODg4MDAsLTE2MTUxNTQ0MDAsLTg4MDIzNmUzLC03Njk0MjA4MDAsLTc2NTQxMDQwMCwtNzQ3MjY2NDAwLC03MzM5NjA4MDAsLTcxNTgxNjgwMCwtNzAyNTExMjAwLC02ODQzNjcyMDAsLTY3MTA2MTYwMCwtNjUyOTE3NjAwLC02Mzk2MTJlMywtNjIwODYzMjAwLC02MDgxNjI0MDAsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDYzNjE1MjAwLC00NTAzMDk2MDAsLTQzMTU2MDgwMCwtNDE4MjU1MjAwLC00MDAxMTEyMDAsLTM4NjgwNTYwMCwtMzY4NjYxNjAwLC0zNTUzNTZlMywtMzM3MjEyZTMsLTMyMzkwNjQwMCwtMzA1NzYyNDAwLC0yOTI0NTY4MDAsLTI3MzcwOGUzLC0yNjEwMDcyMDAsLTI0MjI1ODQwMCwtMjI2NTMzNjAwLC0yMTA4MDg4MDAsLTE5NTA4NGUzLC0xNzkzNTkyMDAsLTE2MzYzNDQwMCwtMTQ3OTA5NjAwLC0xMzE1OGU0LC0xMTY0NmU0LC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTM2MzQ2NDAwLDE1MjA3MTIwMCwxNjc3OTZlMywxODM1MjA4MDAsMTk5MjQ1NjAwLDIxNTU3NTIwMCwyMzA2OTUyMDAsMjQ3MDI0ODAwLDI2Mjc0OTYwMCwyNzg0NzQ0MDAsMjk0MTk5MjAwLDMwOTkyNGUzLDMyNTY0ODgwMCwzNDEzNzM2MDAsMzU3MDk4NDAwLDM3MjgyMzIwMCwzODg1NDhlMyw0MDQ4Nzc2MDAsNDE5OTk3NjAwLDQzNjMyNzIwMCw0NTIwNTJlMyw0Njc3NzY4MDAsNDgzNTAxNjAwLDQ5OTIyNjQwMCw1MTQ5NTEyMDAsNTMwNjc2ZTMsNTQ0NTg2NDAwLDU2MjEyNTYwMCw1NzYwMzZlMyw1OTQxOGU0LDYwNzQ4NTYwMCw2MjU2Mjk2MDAsNjM4OTM1MjAwLDY1NzA3OTIwMCw2NzA5ODk2MDAsNjg4NTI4ODAwLDcwMjQzOTIwMCw3MTk5Nzg0MDAsNzMzODg4ODAwLDc1MjAzMjgwMCw3NjUzMzg0MDAsNzgzNDgyNDAwLDc5Njc4OGUzLDgxNDkzMmUzLDgyODg0MjQwMCw4NDYzODE2MDAsODYwMjkyZTMsODc3ODMxMjAwLDg5MTc0MTYwMCw5MDkyODA4MDAsOTIzMTkxMjAwLDk0MTMzNTIwMCw5NTQ2NDA4MDAsOTcyNzg0ODAwLDk4NjA5MDQwMCwxMDA0MjM0NDAwLDEwMTgxNDQ4MDAsMTAzNTY4NGUzLDEwNDk1OTQ0MDAsMTA2NzEzMzYwMCwxMDgxMDQ0ZTMsMTA5OTE4OGUzLDExMTI0OTM2MDAsMTEzMDYzNzYwMCwxMTQzOTQzMjAwLDExNjIwODcyMDAsMTE3MzU3ODQwMCwxMTk0MTQxNjAwLDEyMDUwMjhlMywxMjI1NTkxMjAwLDEyMzY0Nzc2MDAsMTI1NzA0MDgwMCwxMjY4NTMyZTMsMTI4OTA5NTIwMCwxMjk5OTgxNjAwLDEzMjA1NDQ4MDAsMTMzMTQzMTIwMCwxMzUxOTk0NDAwLDEzNjI4ODA4MDAsMTM4MzQ0NGUzLDEzOTQzMzA0MDAsMTQxNDg5MzYwMCwxNDI1NzhlNCwxNDQ2MzQzMjAwLDE0NTc4MzQ0MDAsMTQ3ODM5NzYwMCwxNDg5Mjg0ZTMsMTUwOTg0NzIwMCwxNTIwNzMzNjAwLDE1NDEyOTY4MDAsMTU1MjE4MzIwMCwxNTcyNzQ2NDAwLDE1ODM2MzI4MDAsMTYwNDE5NmUzLDE2MTU2ODcyMDAsMTYzNjI1MDQwMCwxNjQ3MTM2ODAwLDE2Njc3ZTUsMTY3ODU4NjQwMCwxNjk5MTQ5NjAwLDE3MTAwMzZlMywxNzMwNTk5MjAwLDE3NDE0ODU2MDAsMTc2MjA0ODgwMCwxNzcyOTM1MjAwLDE3OTM0OTg0MDAsMTgwNDk4OTYwMCwxODI1NTUyODAwLDE4MzY0MzkyMDAsMTg1NzAwMjQwMCwxODY3ODg4ODAwLDE4ODg0NTJlMywxODk5MzM4NDAwLDE5MTk5MDE2MDAsMTkzMDc4OGUzXSwKb2Zmc2V0OlstMjk1NDgsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMF19LCJBc2lhL0FsbWF0eSI6e3RpbWU6Wy0xNDQxMTUyZTMsLTEyNDc1Mjk2MDAsMzU0OTMxMjAwLDM3MDc0MjQwMCwzODY0NjcyMDAsNDAyMjc4NDAwLDQxODAwMzIwMCw0MzM4MTQ0MDAsNDQ5NjI1NjAwLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDY5NTc4NjQwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxNzA5MjUxMjAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE4NDY4LDE4ZTMsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjE2MDAsMThlMywyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwxOGUzXX0sIkFzaWEvQXNoa2hhYmFkIjp7dGltZTpbLTE0NDExNTJlMywtMTI0NzUyOTYwMCwzNTQ5MzEyMDAsMzcwNzQyNDAwLDM4NjQ2NzIwMCw0MDIyNzg0MDAsNDE4MDAzMjAwLDQzMzgxNDQwMCw0NDk2MjU2MDAsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNjk1Nzg2NDAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE0MDEyLDE0NDAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywxOGUzLDE0NDAwLDE4ZTNdfSwiQXNpYS9CYWhyYWluIjp7dGltZTpbLTg5Nzg2ODgwMCwtODIwNTQwODAwLDc2MjA0ODAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTIxNDAsMTI2MDAsMTQ0MDAsMTA4MDBdfSwiQXNpYS9CYW5na29rIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE1NzAwNjA4MDAsMTkyNTAxNzIwMF0sb2Zmc2V0OlsyNDEyNCwyNDEyNCwyNTIwMF19LCJBc2lhL0Nob25ncWluZyI6ewp0aW1lOlstMjE3NzQ1MjgwMCwtMTYwMDY0NjQwMCwtMTU4NTg3MmUzLC05MzM2Mzg0MDAsLTkyMjA2MDgwMCwtOTA4ODQxNjAwLC04ODg3OTY4MDAsLTg4MTAyMDgwMCwtNzY3ODM2ODAwLC03NDU4MDQ4MDAsLTczMzc5NTIwMCwtNzE2ODYwODAwLC02OTk1ODA4MDAsLTY4Mzg1NmUzLC02NzA2MzY4MDAsLTY1MjMyZTQsLTY0OTk4NzIwMCw1MTU1NTZlMyw1MjcwNDcyMDAsNTQ1MTkxMjAwLDU1ODQ5NjgwMCw1NzcyNDU2MDAsNTg5OTQ2NDAwLDYwODY5NTIwMCw2MjIwMDA4MDAsNjQwMTQ0ODAwLDY1MzQ1MDQwMCw2NzE1OTQ0MDAsNjg0OWU1LDE5MjUwMjA4MDBdLG9mZnNldDpbMjkxNDMsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9Db2xvbWJvIjp7dGltZTpbLTI4NDAxNDA4MDAsLTIwMTk2ODY0MDAsLTg4MzI2NzIwMCwtODYyNjE3NjAwLC03NjQwMjhlMyw4MzI5ODI0MDAsODQ2Mjg5ODAwLDExNDUwNjFlMywxOTI1MDExODAwXSxvZmZzZXQ6WzE5MTY0LDE5MTcyLDE5ODAwLDIxNjAwLDIzNDAwLDE5ODAwLDIzNDAwLDIxNjAwLDE5ODAwXX0sIkFzaWEvRGhha2EiOnt0aW1lOlstMjUyNDUyMTYwMCwtODkxNTYxNjAwLC04NzIwMzUyMDAsLTg2MjYxNzYwMCwtNTc2MTE1MjAwLDEyNDU0NTI0MDAsMTI2MjMwMzk5OSwxOTI1MDEzNjAwXSxvZmZzZXQ6WzIxNzAwLDIxMjAwLDIzNDAwLDE5ODAwLDIzNDAwLDIxNjAwLDI1MjAwLDIxNjAwXX0sIkFzaWEvRHViYWkiOnt0aW1lOlstMTU3NzkyMzIwMCwxOTI1MDA2NDAwXSxvZmZzZXQ6WzEzMjcyLDE0NDAwXX0sIkFzaWEvSG9fQ2hpX01pbmgiOnt0aW1lOlstMjAwNDA0OGUzLC0xODUxNTUyZTMsLTg1MjA4MDQwMCwtNzgyNjE0ODAwLC03Njc4MzY4MDAsLTcxODA3MDQwMCwtNDU3NzQzNjAwLC0zMTU2MjI4MDAsMTcxODQ5NjAwLDE5MjUwMTcyMDBdLG9mZnNldDpbMjU1OTAsMjU1OTAsMjUyMDAsMjg4MDAsMzI0MDAsMjUyMDAsMjg4MDAsMjUyMDAsMjg4MDAsMjUyMDBdfSwiQXNpYS9Ib25nX0tvbmciOnt0aW1lOlstMjA1NjY2MzM5OCwtOTAwODgyZTMsLTg5MTU0NzIwMCwtODg0MjE3NjAwLC03NjExNzY4MDAsLTc0Nzg3ODQwMCwtNzI4NTA4NjAwLC03MTcwMjFlMywtNjk3MDU5ZTMsLTY4Mzc1N2UzLC02NjgwMjg2MDAsLTY1NDcyNjYwMCwtNjM2NTc5ZTMsLTYyMzI3N2UzLC02MDUxMjk0MDAsLTU5MTgyNzQwMCwtNTczNjc5ODAwLC01NTk3NzNlMywtNTQxNjI1NDAwLC01MjgzMjM0MDAsLTUxMDE3OTQwMCwtNDk4MDgzNDAwLC00Nzg3Mjk4MDAsLTQ2NjYzMzgwMCwtNDQ2Njc1NDAwLC00MzUxODQyMDAsLTQxNTIyNTgwMCwtNDAzMTI5ODAwLC0zODM3NzYyMDAsLTM3MTY4MDIwMCwtMzUyMzI2NjAwLC0zNDAyMzA2MDAsLTMyMDg3N2UzLC0zMDg3ODFlMywtMjg4ODIyNjAwLC0yNzczMzE0MDAsLTI1NzM3M2UzLC0yNDU4ODE4MDAsLTIyNTkyMzQwMCwtMjEzODI3NDAwLC0xOTQ0NzM4MDAsLTE4MjM3NzgwMCwtMTYzMDI0MjAwLC0xNDg1MDllMywtMTMyNzg0MjAwLC0xMTcwNTk0MDAsLTEwMTMzNDYwMCwtODU2MDk4MDAsLTY5MjgwMjAwLC01MzU1NTQwMCwtMzc4MzA2MDAsLTIyMTA1ODAwLC02MzgxZTMsOTM0MzgwMCwyNTA2ODYwMCw0MDc5MzQwMCw1NjUxODIwMCw3MjI0M2UzLDg4NTcyNjAwLDEwNDI5NzQwMCwxMjAwMjIyMDAsMTI2MDcwMjAwLDE1MTQ3MTgwMCwxNjcxOTY2MDAsMTgyOTIxNDAwLDE5ODY0NjIwMCwyMTQzNzFlMywyOTU0MTQyMDAsMzA5MzI0NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbMjc0MDIsMjg4MDAsMzI0MDAsMzA2MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9KYWthcnRhIjp7dGltZTpbLTMyMzEyNzM2MDAsLTE0NTE2OTM1NjgsLTExNzI4OGU0LC04NzY2MTQ0MDAsLTc2NjAyMjQwMCwtNjgzODU2ZTMsLTYyMDc4NGUzLC0xODkzODg4MDAsMTkyNTAxNzIwMF0sb2Zmc2V0OlsyNTYzMiwyNTYzMiwyNjQwMCwyN2UzLDMyNDAwLDI3ZTMsMjg4MDAsMjdlMywyNTIwMF19LCJBc2lhL0plcnVzYWxlbSI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTY0MDk5NTIwMCwtOTMzNjMxMjAwLC05MjMwODY4MDAsLTkxOTAyOTYwMCwtODU3MzM2NDAwLC04NDQyOTM2MDAsLTgyNTgwMDQwMCwtODEyNjcxMjAwLC03OTQxNzhlMywtNzc5ODM5MjAwLC03NjI2NDJlMywtNzQ4MzAzMjAwLC03MzExMDZlMywtNjgxOTQ4ZTMsLTY3MzIxNDQwMCwtNjY3OTQ3NjAwLC02NTIzMTI4MDAsLTYzNjQxMTYwMCwtNjIyMDcyODAwLC02MDg5MzY0MDAsLTU5MTgzMjgwMCwtNTcyNDc1NjAwLC01NTg1Njg4MDAsLTU0Mjg0MDQwMCwtNTI3NzI0ZTMsLTUxNDQxNDgwMCwtNDkwODMxMjAwLC00ODI5NjUyMDAsLTQ1OTM4MTYwMCwtNDUxNTE1NjAwLC00Mjg1MzY4MDAsLTQxODI1MTYwMCwtNDAwMTExMjAwLC0zODc0MDY4MDAsMTQyMzg3MjAwLDE1MDg1NDQwMCwxNjcxODRlMywxNzg2NzUyMDAsMzM0MTA4ODAwLDMzNzc0MTIwMCw0NTI2NDk2MDAsNDYyMzNlNCw0ODIyODQ4MDAsNDk0MzgwODAwLDUxNjc1ODQwMCw1MjY0MzUyMDAsNTQ1NDQzMjAwLDU1ODQ4OTYwMCw1NzY2MzM2MDAsNTg5MzM0NDAwLDYwOTg5NzYwMCw2MjA3ODRlMyw2MzgzMjMyMDAsNjUxNjI4ODAwLDY2OTc3MjgwMCw2ODM2ODMyMDAsNzAxODI3MjAwLDcxNTczNzYwMCw3MzM3MDg4MDAsNzQ3MTg3MjAwLDc2NTE1ODQwMCw3NzgwMzJlMyw3OTY2MDhlMyw4MTAwODY0MDAsODI2ODQ4ZTMsODQyODMyZTMsODU4OTAyNDAwLDg3NDE5NTIwMCw4OTAzNTJlMyw5MDUwNGU0LDkyMzAxODQwMCw5MzYzMjRlMyw5NTU2Nzc2MDAsOTcwNzk0ZTMsOTg2Nzc4ZTMsMTAwMTI5MzIwMCwxMDE3MzYzNjAwLDEwMzM5NTI0MDAsMTA0ODgxMzIwMCwxMDY1MTQyODAwLDEwODEyOTk2MDAsMTA5NTgxNDgwMCwxMTEyMzIwODAwLDExMjg4MjMyMDAsMTE0Mzc3MDQwMCwxMTU5NjY4ZTMsMTE3NTIyZTQsMTE4OTkwOGUzLDEyMDY2Njk2MDAsMTIyMzE3MmUzLDEyMzgxMTkyMDAsMTI1NDAxNjgwMCwxMjY5NTY4ODAwLDEyODQyNTY4MDAsMTMwMTYyMzIwMCwxMzE3NTIwODAwLDEzMzMwNzI4MDAsMTM0ODM2NTYwMCwxMzY0NTIyNDAwLDEzODI4MzkyMDAsMTM5NTk3MmUzLDE0MTQyODg4MDAsMTQyNzQyMTYwMCwxNDQ1NzM4NDAwLDE0NTg4NzEyMDAsMTQ3Nzc5MjgwMCwxNDkwMzIwODAwLDE1MDkyNDI0MDAsMTUyMTc3MDQwMCwxNTQwNjkyZTMsMTU1MzgyNDgwMCwxNTcyMTQxNjAwLDE1ODUyNzQ0MDAsMTYwMzU5MTIwMCwxNjE2NzI0ZTMsMTYzNTY0NTYwMCwxNjQ4MTczNjAwLDE2NjcwOTUyMDAsMTY3OTYyMzIwMCwxNjk4NTQ0ODAwLDE3MTE2Nzc2MDAsMTcyOTk5NDQwMCwxNzQzMTI3MjAwLDE3NjE0NDRlMywxNzc0NTc2ODAwLDE3OTI4OTM2MDAsMTgwNjAyNjQwMCwxODI0OTQ4ZTMsMTgzNzQ3NmUzLDE4NTYzOTc2MDAsMTg2ODkyNTYwMCwxODg3ODQ3MjAwLDE5MDA5OGU0LDE5MTkyOTY4MDAsMTkzMjQyOTYwMF0sb2Zmc2V0Ols4NDU0LDg0NDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxNDQwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJBc2lhL0thYnVsIjp7dGltZTpbLTI1MjQ1MjE2MDAsLTc4ODkxODQwMCwxOTI1MDA4MjAwXSxvZmZzZXQ6WzE2NjA4LDE0NDAwLDE2MjAwXX0sIkFzaWEvS2FyYWNoaSI6e3RpbWU6Wy0xOTg4MTUwNDAwLC04NjI2MTc2MDAsLTc2NDEyMTYwMCwtNTc2MTE1MjAwLDM4NzkzNjAwLDEwMTgxMzc2MDAsMTAzMzg2MjQwMCwxMjEyMjc4NDAwLDEyMjU0OTc2MDAsMTIzOTc1MzYwMCwxMjU3MDMzNjAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE2MDkyLDE5ODAwLDIzNDAwLDE5ODAwLDE4ZTMsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlM119LCJBc2lhL0thdGhtYW5kdSI6e3RpbWU6Wy0xNTc3OTIzMjAwLDUwNDkyMTYwMCwxOTI1MDEyNzAwXSxvZmZzZXQ6WzIwNDc2LDE5ODAwLDIwNzAwXX0sIkFzaWEvS29sa2F0YSI6e3RpbWU6Wy0zNjQ1MjE2ZTMsLTMxNTU2NzM2MDAsLTIwMTk2ODY0MDAsLTg5MTU2MTYwMCwtODcyMDM1MjAwLC04NjI2MTc2MDAsLTc2NDEyMTYwMCwxOTI1MDExODAwXSxvZmZzZXQ6WzIxMjA4LDIxMjAwLDE5MjcwLDE5ODAwLDIzNDAwLDE5ODAwLDIzNDAwLDE5ODAwXX0sIkFzaWEvS3VhbGFfTHVtcHVyIjp7dGltZTpbLTIxNzc0NTI4MDAsLTIwMzgxNzZlMywtMTE2NzYwOTYwMCwtMTA3MzAwMTYwMCwtODk0MTUzNjAwLC04Nzk2Mzg0MDAsLTc2Njk3MjgwMCwzNzg2ODk0MDAsMTkyNTAyMDgwMF0sb2Zmc2V0OlsyNDQwNiwyNDkyNSwyNTIwMCwyNjQwMCwyNjQwMCwyN2UzLDMyNDAwLDI3ZTMsMjg4MDBdfSwiQXNpYS9LdXdhaXQiOnt0aW1lOlstNjMxMTUyZTMsMTkyNTAwMjgwMF0sb2Zmc2V0OlsxMTUxNiwxMDgwMF19LCJBc2lhL01hbmlsYSI6ewp0aW1lOlstMzk0NDY3ODQwMCwtMjIxOTA1NDE2OCwtMTA0NjY0OTYwMCwtMTA0MDA4MzIwMCwtODg0OTk1MjAwLC04Nzk5ODRlMywtNzgzNTYxNjAwLC03NjAwNjA4MDAsLTQ5NjE5NTIwMCwtNDkxNTI5NjAwLDIyODM1NTIwMCwyNDM3MzQ0MDAsNjQzMjQ4ZTMsNjQ5MjA5NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbLTU3MzY4LDI5MDMyLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDMyNDAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwXX0sIkFzaWEvTXVzY2F0Ijp7dGltZTpbLTE1Nzc5MjMyMDAsMTkyNTAwNjQwMF0sb2Zmc2V0OlsxNDA2NCwxNDQwMF19LCJBc2lhL05pY29zaWEiOnt0aW1lOlstMTUxODkxMmUzLDE2NjU3OTIwMCwxODIzMDRlMywyMDA5NjY0MDAsMjEzODRlNCwyMjg4NzM2MDAsMjQzOTkzNjAwLDI2MDMyMzIwMCwyNzYxMzQ0MDAsMjkxNzcyODAwLDMwNzQ5NzYwMCwzMjM4MjcyMDAsMzM4OTQ3MjAwLDM1NDY3MmUzLDM3MDM5NjgwMCwzODYxMjE2MDAsNDAxODQ2NDAwLDQxNzU3MTIwMCw0MzMyOTZlMyw0NDkwMjA4MDAsNDY1MzUwNDAwLDQ4MTA3NTIwMCw0OTY4ZTUsNTEyNTI0ODAwLDUyODI0OTYwMCw1NDM5NzQ0MDAsNTU5Njk5MjAwLDU3NTQyNGUzLDU5MTE0ODgwMCw2MDY4NzM2MDAsNjIyNTk4NDAwLDYzODMyMzIwMCw2NTQ2NTI4MDAsNjcwMzc3NjAwLDY4NjEwMjQwMCw3MDE4MjcyMDAsNzE3NTUyZTMsNzMzMjc2ODAwLDc0OTAwMTYwMCw3NjQ3MjY0MDAsNzgwNDUxMjAwLDc5NjE3NmUzLDgxMTkwMDgwMCw4MjgyMzA0MDAsODQzOTU1MjAwLDg1OTY4ZTQsODc1NDA0ODAwLDg5MTEyOTYwMCw5MDkyODhlMyw5MjI1OWU0LDk0MTM0MjQwMCw5NTQwMzk2MDAsOTcyNzkyZTMsOTg1NDg5MjAwLDEwMDQyNDE2MDAsMTAxNzU0MzYwMCwxMDM1NjkxMjAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzgwMDgsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiQXNpYS9RYXRhciI6e3RpbWU6Wy0xNTc3OTIzMjAwLDc2MjA0ODAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTIzNjgsMTQ0MDAsMTA4MDBdfSwiQXNpYS9SaXlhZGgiOnt0aW1lOlstNzE5NjI1NjAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTEyMTIsMTA4MDBdfSwiQXNpYS9TZW91bCI6e3RpbWU6Wy0xOTQ4NzUyZTMsLTE4MzAzODRlMywtNzY3MzE4NDAwLC02ODExNzc2MDAsLTY3MjE5MmUzLC02NTQ3MzkyMDAsLTY0MDgyODgwMCwtNjIzMzc2ZTMsLTYwOTM3OTIwMCwtNTg4ODE2ZTMsLTU3NzkyOTYwMCwtNDk4MDk2ZTMsLTQ2MjY3MmUzLC00NTE2OTkyMDAsLTQyOTc1MzYwMCwtNDE4MjYyNDAwLC0zOTk1MTM2MDAsLTM4NzQxNzYwMCwtMzY4MDY0ZTMsLTM1NTk2OGUzLC0zMzY2MTQ0MDAsLTMyNDUxODQwMCwtMzA1MTY0ODAwLC0yOTMwNjg4MDAsLTI2NDkwMjQwMCw1NDc2MTA0MDAsNTYwOTE5NjAwLDU3OTA2ZTQsNTkyMzY5MjAwLDE5MjUwMjQ0MDBdLG9mZnNldDpbMzA0NzIsMzA2MDAsMzI0MDAsMzI0MDAsMzZlMywzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDAsMzZlMywzMjQwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDBdfSwiQXNpYS9TaGFuZ2hhaSI6ewp0aW1lOlstMjE3NzQ1MjgwMCwtMTYwMDY0NjQwMCwtMTU4NTg3MmUzLC05MzM2Mzg0MDAsLTkyMjA2MDgwMCwtOTA4ODQxNjAwLC04ODg3OTY4MDAsLTg4MTAyMDgwMCwtNzY3ODM2ODAwLC03NDU4MDQ4MDAsLTczMzc5NTIwMCwtNzE2ODYwODAwLC02OTk1ODA4MDAsLTY4Mzg1NmUzLC02NzA2MzY4MDAsLTY1MjMyZTQsLTY0OTk4NzIwMCw1MTU1NTZlMyw1MjcwNDcyMDAsNTQ1MTkxMjAwLDU1ODQ5NjgwMCw1NzcyNDU2MDAsNTg5OTQ2NDAwLDYwODY5NTIwMCw2MjIwMDA4MDAsNjQwMTQ0ODAwLDY1MzQ1MDQwMCw2NzE1OTQ0MDAsNjg0OWU1LDE5MjUwMjA4MDBdLG9mZnNldDpbMjkxNDMsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9TaW5nYXBvcmUiOnt0aW1lOlstMjE3NzQ1MjgwMCwtMjAzODE3NmUzLC0xMTY3NjA5NjAwLC0xMDczMDAxNjAwLC04OTQxNTM2MDAsLTg3OTYzODQwMCwtNzY2OTcyODAwLDM3ODY4OTQwMCwxOTI1MDIwODAwXSxvZmZzZXQ6WzI0OTI1LDI0OTI1LDI1MjAwLDI2NDAwLDI2NDAwLDI3ZTMsMzI0MDAsMjdlMywyODgwMF19LCJBc2lhL1RhaXBlaSI6e3RpbWU6Wy0yMzM1MjE5MjAwLC0xMDE3NzkyZTMsLTc2NjE5MTYwMCwtNzQ1ODA0ODAwLC03MzM3OTUyMDAsLTcxNjg2MDgwMCwtNjk5NTgwODAwLC02ODM4NTZlMywtNjcwNjM2ODAwLC02NTIzMmU0LC02MzkxMDA4MDAsLTYyMDc4NGUzLC02MDc1NjQ4MDAsLTU4OTI0OGUzLC01NzYwMjg4MDAsLTU2Mjg5NmUzLC01NDE3MjhlMywtNTI4NjgxNjAwLC01MTAxOTJlMywtNDk3MTQ1NjAwLC00Nzg2NTZlMywtNDY1NjA5NjAwLC00NDk3OTg0MDAsLTQzMzk4NzIwMCwtNDE4MTc2ZTMsLTQwMjQ1MTIwMCwtMzg2NjRlNCwtMzcwOTE1MjAwLC0zNTUxMDRlMywtMzM5Mzc5MjAwLC0zMjM1NjhlMywtMzAyNDg2NDAwLC0yOTE5NDU2MDAsLTI3MDk1MDQwMCwtMjYwNDA5NjAwLDEzNDAwNjQwMCwxNDk4MTc2MDAsMTY1NTQyNDAwLDE4MTM1MzYwMCwyOTk2MzUyMDAsMzA3NTg0ZTMsMTkyNTAyMDgwMF0sb2Zmc2V0OlsyOTE2MCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMF19LCJBc2lhL1RlaHJhbiI6e3RpbWU6Wy0xNzA0MTUzNjAwLC0xMDkwNDU0NDAwLDIyNzgzMzIwMCwyNDYyNGU0LDI1OTYzMmUzLDI3MTEyNjgwMCwyNzk1OTA0MDAsMjk2NjExMjAwLDMwNjU0NzIwMCwzMjI0NDQ4MDAsMzM4NTE1MjAwLDY3MzIyODgwMCw2ODU0OTc2MDAsNzAxMjIyNDAwLDcxNzEyZTQsNzMyNzU4NDAwLDc0ODY1NmUzLDc2NDI5NDQwMCw3ODAxOTJlMyw3OTU4MzA0MDAsODExNzI4ZTMsODI3MzY2NDAwLDg0MzI2NGUzLDg1ODk4ODgwMCw4NzQ4ODY0MDAsODkwNTI0ODAwLDkwNjQyMjQwMCw5MjIwNjA4MDAsOTM3OTU4NDAwLDk1MzU5NjgwMCw5Njk0OTQ0MDAsOTg1MjE5MjAwLDEwMDExMTY4MDAsMTAxNjc1NTIwMCwxMDMyNjUyODAwLDEwNDgyOTEyMDAsMTA2NDE4ODgwMCwxMDc5ODI3MjAwLDEwOTU3MjQ4MDAsMTExMTQ0OTYwMCwxMTI3MzQ3MjAwLDEyMDYwNTc2MDAsMTIyMTk1NTIwMCwxMjM3NjhlNCwxMjUzNTc3NjAwLDEyNjkyMTZlMywxMjg1MTEzNjAwLDEzMDA3NTJlMywxMzE2NjQ5NjAwLDEzMzIyODhlMywxMzQ4MTg1NjAwLDEzNjM5MTA0MDAsMTM3OTgwOGUzLDEzOTU0NDY0MDAsMTQxMTM0NGUzLDE0MjY5ODI0MDAsMTQ0Mjg4ZTQsMTQ1ODUxODQwMCwxNDc0NDE2ZTMsMTQ5MDE0MDgwMCwxNTA2MDM4NDAwLDE1MjE2NzY4MDAsMTUzNzU3NDQwMCwxNTUzMjEyODAwLDE1NjkxMTA0MDAsMTU4NDc0ODgwMCwxNjAwNjQ2NDAwLDE2MTYzNzEyMDAsMTYzMjI2ODgwMCwxNjQ3OTA3MjAwLDE2NjM4MDQ4MDAsMTkyNTAwNDYwMF0sb2Zmc2V0OlsxMjM0NCwxMjM0NCwxMjYwMCwxNjIwMCwxNDQwMCwxOGUzLDE0NDAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwXX0sIkFzaWEvVG9reW8iOnt0aW1lOlstMjU4NzY3ODg2MSwtNjgzNzY5NjAwLC02NzIyNzQ4MDAsLTY1NDczOTIwMCwtNjQwODI1MjAwLC02MjAyNjU2MDAsLTYwOTM3NTYwMCwtNTg4ODE2ZTMsLTU3NzkyNmUzLDE5MjUwMjQ0MDBdLG9mZnNldDpbMzM1MzksMzI0MDAsMzZlMywzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDAsMzZlMywzMjQwMF19LCJBc2lhL1lhbmdvbiI6e3RpbWU6Wy0yODQwMTQwODAwLC0xNTc3OTIzMjAwLC04NzMyNDQ4MDAsLTc3ODM3NzYwMCwxOTI1MDE1NDAwXSxvZmZzZXQ6WzIzMDg3LDIzMDg3LDIzNDAwLDMyNDAwLDIzNDAwXX0sIkF0bGFudGljL0F6b3JlcyI6ewp0aW1lOlstMjcxMzkxMDQwMCwtMTgzMDM4MzY3MiwtMTY4OTU1NTYwMCwtMTY3Nzc5OGUzLC0xNjY3NDMzNjAwLC0xNjQ3NzM0NDAwLC0xNjM1ODk3NjAwLC0xNjE2MTk4NDAwLC0xNjA0MzYxNjAwLC0xNTg0NjYyNDAwLC0xNTcyNzM5MjAwLC0xNTUzMDRlNCwtMTU0MTIwMzIwMCwtMTUyMTUwNGUzLC0xNDQyNDUxNjAwLC0xNDI3NjczNjAwLC0xMzc5MjkzMjAwLC0xMzY0Nzc0NDAwLC0xMzQ4NDQ4NDAwLC0xMzMzMzI0ODAwLC0xMzE2Mzk0ZTMsLTEzMDEyNzA0MDAsLTEyODQzMzk2MDAsLTEyNjk4MjA4MDAsLTEyMjE0NDA0MDAsLTEyMDY5MjE2MDAsLTExOTEyMDA0MDAsLTExNzU0NzJlMywtMTEyNzY5NjQwMCwtMTExMTk2OGUzLC0xMDk2ODUxNjAwLC0xMDgwNTE4NDAwLC0xMDYzNTg3NjAwLC0xMDQ5MDY4ODAwLC0xMDMzMzQ3NjAwLC0xMDE3NjE5MjAwLC0xMDAyNTAyODAwLC05ODYxNjk2MDAsLTk2OTIzODgwMCwtOTUwNDg2NDAwLC05NDIwMjI4MDAsLTkyMjQ5MjgwMCwtOTA2OTQ0NDAwLC04OTExMjk2MDAsLTg3NzMwOTIwMCwtODczNjgwNDAwLC04NjRlNiwtODU3OTUyZTMsLTg0NTg1OTYwMCwtODQyODM1NjAwLC04MzEzNDA4MDAsLTgyNTg5NzYwMCwtODE0NDFlNCwtODEwNzgxMjAwLC03OTk4OTEyMDAsLTc5NDQ0OGUzLC03ODI5NjA0MDAsLTc3OTMzMTYwMCwtNzY4NDQxNjAwLC03NjI5OTg0MDAsLTc0OTA5MTYwMCwtNzMzMzYzMjAwLC03MTc2MzEyMDAsLTcwMTkwMjgwMCwtNjg2MTgxNjAwLC02NzA0NTMyMDAsLTY1NDczMmUzLC02MzkwMDM2MDAsLTYyMzI4MjQwMCwtNjA3NTU0ZTMsLTU5MTgzMjgwMCwtNTc1NDk5NjAwLC01NTk3Nzg0MDAsLTU0NDA1ZTQsLTUyODMyODgwMCwtNTEyNjAwNDAwLC00OTY4NzkyMDAsLTQ4MTE1MDgwMCwtNDY1NDI5NjAwLC00NDk3MDEyMDAsLTQzMzk4ZTQsLTQxNzY0NjgwMCwtNDAxOTI1NjAwLC0zODYxOTcyMDAsLTM3MDQ3NmUzLC0zNTQ3NDc2MDAsLTMzOTAyNjQwMCwtMzIzMjk4ZTMsLTMwNzU3NjgwMCwtMjkxODQ4NDAwLC0yNzYxMjcyMDAsLTI2MDM5ODgwMCwtMjQ0Njc3NjAwLC0yMjgzNDQ0MDAsLTIxMjYyMzIwMCwtMTk2ODk0ODAwLC0xODExNzM2MDAsLTE2NTQ0NTIwMCwtMTQ5NzI0ZTMsLTEzMzk5NTYwMCwtMTE4Mjc0NDAwLC0xMDI1NDZlMywzODYxMjE2MDAsNDAxODVlNCw0MTc1NzEyMDAsNDMzMjk5NjAwLDQ0OTAyMDgwMCw0NjUzNTRlMyw0ODEwNzUyMDAsNDk2ODAzNjAwLDUxMjUyNDgwMCw1MjgyNTMyMDAsNTQzOTc0NDAwLDU1OTcwMjgwMCw1NzU0MjRlMyw1OTExNTI0MDAsNjA2ODczNjAwLDYyMjYwMmUzLDYzODMyMzIwMCw2NTQ2NTY0MDAsNjcwMzc3NjAwLDY4NjEwNmUzLDcwMTgyNzIwMCw3MTc1NTU2MDAsNzI1NDE4ZTMsNzMzMjgwNDAwLDc0MDI4MjQwMCw3NDkwMDUyMDAsNzY0NzI2NDAwLDc4MDQ1NDgwMCw3OTYxNzZlMyw4MTE5MDQ0MDAsODI4MjMwNDAwLDg0NjM3OGUzLDg1OTY4ZTQsODc3ODI3NjAwLDg5MTEyOTYwMCw5MDkyNzcyMDAsOTIyNTc5MjAwLDk0MTMzMTYwMCw5NTQwMjg4MDAsOTcyNzgxMjAwLDk4NTQ3ODQwMCwxMDA0MjMwODAwLDEwMTc1MzI4MDAsMTAzNTY4MDQwMCwxMDQ4OTgyNDAwLDEwNjcxM2U0LDEwODA0MzJlMywxMDk5MTg0NDAwLDExMTE4ODE2MDAsMTEzMDYzNGUzLDExNDMzMzEyMDAsMTE2MjA4MzYwMCwxMTc0NzgwODAwLDExOTM1MzMyMDAsMTIwNjgzNTIwMCwxMjI0OTgyODAwLDEyMzgyODQ4MDAsMTI1NjQzMjQwMCwxMjY5NzM0NDAwLDEyODg0ODY4MDAsMTMwMTE4NGUzLDEzMTk5MzY0MDAsMTMzMjYzMzYwMCwxMzUxMzg2ZTMsMTM2NDY4OGUzLDEzODI4MzU2MDAsMTM5NjEzNzYwMCwxNDE0Mjg1MjAwLDE0Mjc1ODcyMDAsMTQ0NTczNDgwMCwxNDU5MDM2ODAwLDE0Nzc3ODkyMDAsMTQ5MDQ4NjQwMCwxNTA5MjM4ODAwLDE1MjE5MzZlMywxNTQwNjg4NDAwLDE1NTM5OTA0MDAsMTU3MjEzOGUzLDE1ODU0NGU0LDE2MDM1ODc2MDAsMTYxNjg4OTYwMCwxNjM1NjQyZTMsMTY0ODMzOTIwMCwxNjY3MDkxNjAwLDE2Nzk3ODg4MDAsMTY5ODU0MTIwMCwxNzExODQzMjAwLDE3Mjk5OTA4MDAsMTc0MzI5MjgwMCwxNzYxNDQwNDAwLDE3NzQ3NDI0MDAsMTc5Mjg5ZTQsMTgwNjE5MmUzLDE4MjQ5NDQ0MDAsMTgzNzY0MTYwMCwxODU2Mzk0ZTMsMTg2OTA5MTIwMCwxODg3ODQzNjAwLDE5MDExNDU2MDAsMTkxOTI5MzIwMCwxOTMyNTk1MjAwXSwKb2Zmc2V0OlstNjE2MCwtNjg3MiwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwwLC0zNjAwLC03MjAwLC0zNjAwLDAsLTM2MDAsLTcyMDAsLTM2MDAsMCwtMzYwMCwtNzIwMCwtMzYwMCwwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLDM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwXX0sIkF0bGFudGljL1JleWtqYXZpayI6e3RpbWU6Wy0xOTU2NjE0NDAwLC0xNjY4MjE0ODAwLC0xNjQ3MjEyNDAwLC0xNjM2Njc4ODAwLC0xNjEzNDNlNCwtMTYwNTE0MjgwMCwtMTU4MTg5NGUzLC0xNTM5NTY1MjAwLC0xNTMxMzVlNCwtOTY4MDI5MjAwLC05NTIyOTM2MDAsLTk0MjAxMmUzLC05MjAyMzkyMDAsLTkwOTk2MTIwMCwtODg4Nzg5NjAwLC04Nzc5MDY4MDAsLTg1Nzk0NDgwMCwtODQ2NDU3MjAwLC04MjY0OTUyMDAsLTgxNTAwNzYwMCwtNzk1MDQ1NjAwLC03ODM1NThlMywtNzYyOTkxMjAwLC03NTIxMDg0MDAsLTczMTU0MTYwMCwtNzE3NjM0ODAwLC03MDAwOTJlMywtNjg2MTg1MjAwLC02Njg2NDI0MDAsLTY1NDczNTYwMCwtNjM2NTg4ZTMsLTYyMzI4NmUzLC02MDU3NDMyMDAsLTU5MTgzNjQwMCwtNTczNjg4ODAwLC01NTk3ODJlMywtNTQyMjM5MjAwLC01MjgzMzI0MDAsLTUxMDc4OTYwMCwtNDk2ODgyODAwLC00NzkzNGU0LC00NjU0MzMyMDAsLTQ0Nzg5MDQwMCwtNDMzOTgzNjAwLC00MTU4MzZlMywtNDAxOTI5MjAwLC0zODQzODY0MDAsLTM3MDQ3OTYwMCwtMzUyOTM2ODAwLC0zMzkwM2U0LC0zMjE0ODcyMDAsLTMwNzU4MDQwMCwtMjkwMDM3NjAwLC0yNzYxMzA4MDAsLTI1ODU4OGUzLC0yNDQ2ODEyMDAsLTIyNjUzMzYwMCwtMjEyNjI2ODAwLC0xOTUwODRlMywtMTgxMTc3MjAwLC0xNjM2MzQ0MDAsLTE0OTcyNzYwMCwtMTMyMTg0ODAwLC0xMTgyNzhlMywtMTAwNzM1MjAwLC04NjgyODQwMCwtNjg2ODA4MDAsLTU0Nzc0ZTMsMTkyNDk5MmUzXSxvZmZzZXQ6Wy01MjgwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDBdfSwiQXVzdHJhbGlhL0FDVCI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NjczNzIwMCw0MDQ4Nzc2MDAsNDE1NzY3NjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNDY3Nzc2ODAwLDQ3ODY2NjgwMCw0OTkyMjY0MDAsNTExMzI2ZTMsNTMwMDcxMjAwLDU0Mjc3NTYwMCw1NjIxMjU2MDAsNTc0ODNlNCw1OTQxOGU0LDYwNjI3OTYwMCw2MjU2Mjk2MDAsNjM2NTE5NjAwLDY1NzA3OTIwMCw2Njc5NjkyMDAsNjg4NTI4ODAwLDY5OTQxODgwMCw3MTk5Nzg0MDAsNzMxNDczMjAwLDc1MjAzMjgwMCw3NjI5MjI4MDAsNzgzNDgyNDAwLDc5NDM3MjQwMCw4MTQ5MzJlMyw4MjgyNDEyMDAsODQ2MzgxNjAwLDg1OTY5MDgwMCw4Nzc4MzEyMDAsODkxMTQwNDAwLDkwOTI4MDgwMCw5MjI1OWU0LDk0MTMzNTIwMCw5NTQwMzk2MDAsOTY3MzQxNjAwLDk4NTQ4OTIwMCwxMDA0MjM0NDAwLDEwMTc1NDM2MDAsMTAzNTY4NGUzLDEwNDg5OTMyMDAsMTA2NzEzMzYwMCwxMDgwNDQyODAwLDEwOTkxODhlMywxMTExODkyNDAwLDExMzA2Mzc2MDAsMTE0Mzk0NjgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA3NDUwODAwLDEyMjMxNzJlMywxMjM4OTAwNDAwLDEyNTQ2MjE2MDAsMTI3MDM1ZTQsMTI4NjA3MTIwMCwxMzAxNzk5NjAwLDEzMTc1MjA4MDAsMTMzMzI0OTIwMCwxMzQ5NTc1MjAwLDEzNjUzMDM2MDAsMTM4MTAyNDgwMCwxMzk2NzUzMjAwLDE0MTI0NzQ0MDAsMTQyODIwMjgwMCwxNDQzOTI0ZTMsMTQ1OTY1MjQwMCwxNDc1MzczNjAwLDE0OTExMDJlMywxNTA2ODIzMjAwLDE1MjI1NTE2MDAsMTUzODg3NzYwMCwxNTU0NjA2ZTMsMTU3MDMyNzIwMCwxNTg2MDU1NjAwLDE2MDE3NzY4MDAsMTYxNzUwNTIwMCwxNjMzMjI2NDAwLDE2NDg5NTQ4MDAsMTY2NDY3NmUzLDE2ODA0MDQ0MDAsMTY5NjEyNTYwMCwxNzEyNDU4ODAwLDE3MjgxOGU0LDE3NDM5MDg0MDAsMTc1OTYyOTYwMCwxNzc1MzU4ZTMsMTc5MTA3OTIwMCwxODA2ODA3NjAwLDE4MjI1Mjg4MDAsMTgzODI1NzIwMCwxODUzOTc4NDAwLDE4Njk3MDY4MDAsMTg4NjAzMjgwMCwxOTAxNzYxMjAwLDE5MTc0ODI0MDAsMTkzMzIxMDgwMF0sb2Zmc2V0OlszNjI5MiwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwXX0sIkF1c3RyYWxpYS9BZGVsYWlkZSI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMjIzMDE1NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NDMxOGUzLDQwNDg3NzYwMCw0MTU3Njc2MDAsNDM2MzI3MjAwLDQ0NzIxNzIwMCw0Njc3NzY4MDAsNDc4NjY2ODAwLDQ5OTIyNjQwMCw1MTEzMjZlMyw1MzAwNzEyMDAsNTQyNzc1NjAwLDU2MjEyNTYwMCw1NzQ4M2U0LDU5NDE4ZTQsNjA2Mjc5NjAwLDYyNTYyOTYwMCw2Mzc3MjkyMDAsNjU3MDc5MjAwLDY2Nzk2OTIwMCw2ODg1Mjg4MDAsNzAxMjMzMjAwLDcxOTk3ODQwMCw3MzE0NzMyMDAsNzUyMDMyODAwLDc2NDEzMjQwMCw3ODM0ODI0MDAsNzk2MTg2ODAwLDgxNDkzMmUzLDgyODI0MTIwMCw4NDYzODE2MDAsODU5NjkwODAwLDg3NzgzMTIwMCw4OTExNDA0MDAsOTA5MjgwODAwLDkyMjU5ZTQsOTQxMzM1MjAwLDk1NDAzOTYwMCw5NzI3ODQ4MDAsOTg1NDg5MjAwLDEwMDQyMzQ0MDAsMTAxNzU0MzYwMCwxMDM1Njg0ZTMsMTA0ODk5MzIwMCwxMDY3MTMzNjAwLDEwODA0NDI4MDAsMTA5OTE4OGUzLDExMTE4OTI0MDAsMTEzMDYzNzYwMCwxMTQzOTQ2ODAwLDExNjIwODcyMDAsMTE3NDc5MTYwMCwxMTkzNTM2ODAwLDEyMDc0NTA4MDAsMTIyMzE3MmUzLDEyMzg5MDA0MDAsMTI1NDYyMTYwMCwxMjcwMzVlNCwxMjg2MDcxMjAwLDEzMDE3OTk2MDAsMTMxNzUyMDgwMCwxMzMzMjQ5MjAwLDEzNDk1NzUyMDAsMTM2NTMwMzYwMCwxMzgxMDI0ODAwLDEzOTY3NTMyMDAsMTQxMjQ3NDQwMCwxNDI4MjAyODAwLDE0NDM5MjRlMywxNDU5NjUyNDAwLDE0NzUzNzM2MDAsMTQ5MTEwMmUzLDE1MDY4MjMyMDAsMTUyMjU1MTYwMCwxNTM4ODc3NjAwLDE1NTQ2MDZlMywxNTcwMzI3MjAwLDE1ODYwNTU2MDAsMTYwMTc3NjgwMCwxNjE3NTA1MjAwLDE2MzMyMjY0MDAsMTY0ODk1NDgwMCwxNjY0Njc2ZTMsMTY4MDQwNDQwMCwxNjk2MTI1NjAwLDE3MTI0NTg4MDAsMTcyODE4ZTQsMTc0MzkwODQwMCwxNzU5NjI5NjAwLDE3NzUzNThlMywxNzkxMDc5MjAwLDE4MDY4MDc2MDAsMTgyMjUyODgwMCwxODM4MjU3MjAwLDE4NTM5Nzg0MDAsMTg2OTcwNjgwMCwxODg2MDMyODAwLDE5MDE3NjEyMDAsMTkxNzQ4MjQwMCwxOTMzMjEwODAwXSxvZmZzZXQ6WzMzMjYwLDMyNDAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwXX0sIkF1c3RyYWxpYS9CcmlzYmFuZSI6e3RpbWU6Wy0yMzY2NzU1MjAwLC0xNjcyNTI0ZTMsLTE2NjUzNDkyMDAsLTg4MzYwNTYwMCwtODc2MDg1MjAwLC04NjAzNjRlMywtODQ0NjM1NjAwLC04MjgzMDk2MDAsLTgxMzE4NmUzLDU3NzIyNDAwLDY4MDA3NjAwLDYyNTYyOTYwMCw2MzY1MTk2MDAsNjU3MDc5MjAwLDY2Nzk2OTIwMCw2ODg1Mjg4MDAsNjk5NDE4ODAwLDE5MjUwMjhlM10sb2Zmc2V0OlszNjcyOCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlM119LCJBdXN0cmFsaWEvUGVydGgiOnt0aW1lOlstMjMzNzg5NzYwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwxNTIwNzEyMDAsMTYyOTYxMjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNjkwMzQzMjAwLDY5OTQxODgwMCwxMTY1MTExMjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA2ODQ2ZTMsMTIyNDk4NjQwMCwxMjM4Mjk1NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbMjc4MDQsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXVzdHJhbGlhL1N5ZG5leSI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NjczNzIwMCw0MDQ4Nzc2MDAsNDE1NzY3NjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNDY3Nzc2ODAwLDQ3ODY2NjgwMCw0OTkyMjY0MDAsNTExMzI2ZTMsNTMwMDcxMjAwLDU0Mjc3NTYwMCw1NjIxMjU2MDAsNTc0ODNlNCw1OTQxOGU0LDYwNjI3OTYwMCw2MjU2Mjk2MDAsNjM2NTE5NjAwLDY1NzA3OTIwMCw2Njc5NjkyMDAsNjg4NTI4ODAwLDY5OTQxODgwMCw3MTk5Nzg0MDAsNzMxNDczMjAwLDc1MjAzMjgwMCw3NjI5MjI4MDAsNzgzNDgyNDAwLDc5NDM3MjQwMCw4MTQ5MzJlMyw4MjgyNDEyMDAsODQ2MzgxNjAwLDg1OTY5MDgwMCw4Nzc4MzEyMDAsODkxMTQwNDAwLDkwOTI4MDgwMCw5MjI1OWU0LDk0MTMzNTIwMCw5NTQwMzk2MDAsOTY3MzQxNjAwLDk4NTQ4OTIwMCwxMDA0MjM0NDAwLDEwMTc1NDM2MDAsMTAzNTY4NGUzLDEwNDg5OTMyMDAsMTA2NzEzMzYwMCwxMDgwNDQyODAwLDEwOTkxODhlMywxMTExODkyNDAwLDExMzA2Mzc2MDAsMTE0Mzk0NjgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA3NDUwODAwLDEyMjMxNzJlMywxMjM4OTAwNDAwLDEyNTQ2MjE2MDAsMTI3MDM1ZTQsMTI4NjA3MTIwMCwxMzAxNzk5NjAwLDEzMTc1MjA4MDAsMTMzMzI0OTIwMCwxMzQ5NTc1MjAwLDEzNjUzMDM2MDAsMTM4MTAyNDgwMCwxMzk2NzUzMjAwLDE0MTI0NzQ0MDAsMTQyODIwMjgwMCwxNDQzOTI0ZTMsMTQ1OTY1MjQwMCwxNDc1MzczNjAwLDE0OTExMDJlMywxNTA2ODIzMjAwLDE1MjI1NTE2MDAsMTUzODg3NzYwMCwxNTU0NjA2ZTMsMTU3MDMyNzIwMCwxNTg2MDU1NjAwLDE2MDE3NzY4MDAsMTYxNzUwNTIwMCwxNjMzMjI2NDAwLDE2NDg5NTQ4MDAsMTY2NDY3NmUzLDE2ODA0MDQ0MDAsMTY5NjEyNTYwMCwxNzEyNDU4ODAwLDE3MjgxOGU0LDE3NDM5MDg0MDAsMTc1OTYyOTYwMCwxNzc1MzU4ZTMsMTc5MTA3OTIwMCwxODA2ODA3NjAwLDE4MjI1Mjg4MDAsMTgzODI1NzIwMCwxODUzOTc4NDAwLDE4Njk3MDY4MDAsMTg4NjAzMjgwMCwxOTAxNzYxMjAwLDE5MTc0ODI0MDAsMTkzMzIxMDgwMF0sb2Zmc2V0OlszNjI5MiwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwXX0sIkV1cm9wZS9BbXN0ZXJkYW0iOnsKdGltZTpbLTQyNjAyMTEyMDAsLTE2OTM2OTkyMDAsLTE2ODA0OGU0LC0xNjYzNDUyZTMsLTE2NTAxNDI4MDAsLTE2MzMyMTJlMywtMTYxNzQ4MzYwMCwtMTYwMTE1NzYwMCwtMTU4NjAzNGUzLC0xNTY5NzA4ZTMsLTE1NTQ1ODQ0MDAsLTE1MzgyNTg0MDAsLTE1MjMxMzQ4MDAsLTE1MDc1ZTUsLTE0OTA1NjJlMywtMTQ3MDE3NTIwMCwtMTQ1OTExMjQwMCwtMTQ0Mzk5NmUzLC0xNDI3NjYyODAwLC0xNDA2NjcxMjAwLC0xMzk2MjEzMjAwLC0xMzc2OTQ5NjAwLC0xMzY0NzYzNjAwLC0xMzQ1NDEzNjAwLC0xMzMzMzE0ZTMsLTEzMTM3OTEyMDAsLTEzMDEyNTk2MDAsLTEyODIyNTUyMDAsLTEyNjk4MWU0LC0xMjUwNzE5MjAwLC0xMjM4MzYwNDAwLC0xMjE5MTgzMjAwLC0xMjA2OTEwODAwLC0xMTg2OTU2ZTMsLTExNzU0NjEyMDAsLTExNTYwMjQ4MDAsLTExNDM0MDY4MDAsLTExMjQ0ODg4MDAsLTExMTE5NTcyMDAsLTEwOTI5NTI4MDAsLTEwODA1MDc2MDAsLTEwNjEzMzA0MDAsLTEwNDkwNThlMywtMTAyOTE4OTYwMCwtMTAyNTc0MDgwMCwtMTAxNzYwODQwMCwtOTk4MjU4NDAwLC05ODYxNTg4MDAsLTk2NjcyMjQwMCwtOTU0MTA0NDAwLC05MzUwMjA4MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLDIyODg4MDgwMCwyNDQwMDQ0MDAsMjYwMzMwNDAwLDI3NjA1ODgwMCwyOTE3OGU0LDMwNzUwODQwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMTE3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsNDgwMCwxMjAwLDQ4MDAsMTIwMCw0ODAwLDEyMDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9BdGhlbnMiOnsKdGltZTpbLTIzNDQ2MzY4MDAsLTE2ODYwOTU5NDAsLTExODI5ODg4MDAsLTExNzgxNTA0MDAsLTkwNjg1NDQwMCwtOTA0ODY3MjAwLC04NTcyNWU0LC04NDQ0NzM2MDAsLTgyODIzMDQwMCwtODEyNDE5MjAwLC01NTIzNTUyMDAsLTU0MTY0MTYwMCwxNjY0OTI4MDAsMTg2MTk1NjAwLDE5ODAzNmUzLDIxMzc2NDQwMCwyMjg4ODA4MDAsMjQ0MDkwODAwLDI2MDMzMDQwMCwyNzU0NTc2MDAsMjkxODA1MjAwLDMwNzQxODQwMCwzMjMzOTUyMDAsMzM4OTQ3MjAwLDM1NDY4MjgwMCwzNzA0MTEyMDAsMzg2MTMyNDAwLDQwMTg2MDgwMCw0MTc1ODJlMyw0MzMzMTA0MDAsNDQ5MDMxNjAwLDQ2NTM2NDgwMCw0ODEwODZlMyw0OTY4MTQ0MDAsNTEyNTM1NjAwLDUyODI2NGUzLDU0Mzk4NTIwMCw1NTk3MTM2MDAsNTc1NDM0ODAwLDU5MTE2MzIwMCw2MDY4ODQ0MDAsNjIyNjEyODAwLDYzODMzNGUzLDY1NDY2NzIwMCw2NzAzODg0MDAsNjg2MTE2ODAwLDcwMTgzOGUzLDcxNzU2NjQwMCw3MzMyODc2MDAsNzQ5MDE2ZTMsNzY0NzM3MjAwLDc4MDQ2NTYwMCw3OTYxODY4MDAsODExOTE1MjAwLDgyODI0MTIwMCw4NDYzODg4MDAsODU5NjkwODAwLDg3NzgzODQwMCw4OTExNDA0MDAsOTA5Mjg4ZTMsOTIyNTllNCw5NDEzNDI0MDAsOTU0MDM5NjAwLDk3Mjc5MmUzLDk4NTQ4OTIwMCwxMDA0MjQxNjAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1NjkyLDU2OTIsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJFdXJvcGUvQmVsZ3JhZGUiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTkwNTgyMTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzc3OTM4NDAwLC03NjY2MTY0MDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols0OTIwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CZXJsaW4iOnt0aW1lOlstMjQyMjA1MTIwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC05Mzg5MDE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzc2NTU2ZTMsLTc2NTkyNTIwMCwtNzYxMTczMjAwLC03NDg0NzZlMywtNzMzMjY2ZTMsLTcxNzYyNzYwMCwtNzE0NjAzNjAwLC03MTAzN2U0LC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsLTY1NDEyNzIwMCwtNjM5MDAzNjAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbMzIwOCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMTA4MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CcmF0aXNsYXZhIjp7dGltZTpbLTM3ODY4MjU2MDAsLTI0NjkzOTg0MDAsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtOTM4OTAxNjAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDg4MDAsLTc2NTMyMDQwMCwtNzQ2NTc1MjAwLC03MzMzNTI0MDAsLTcyODUxNGUzLC03MjEyNmU0LC03MTY0MjE2MDAsLTcwMTkwMjgwMCwtNjg0OTcyZTMsLTY3MDQ1MzIwMCwtNjU0MjEzNjAwLC02MzkwMDM2MDAsMjkxNzhlNCwzMDc1MDg0MDAsMzIzODM0NDAwLDMzODk1OGUzLDM1NDY3OTIwMCwzNzA0MDc2MDAsMzg2MTI4ODAwLDQwMTg1NzIwMCw0MTc1Nzg0MDAsNDMzMzA2ODAwLDQ0OTAyOGUzLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDcwMTgzNDQwMCw3MTc1NjI4MDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODUyMDAsODU5Njg3MjAwLDg3NzgzNDgwMCw4OTExMzY4MDAsOTA5Mjg0NDAwLDkyMjU4NjQwMCw5NDEzMzg4MDAsOTU0MDM2ZTMsOTcyNzg4NDAwLDk4NTQ4NTYwMCwxMDA0MjM4ZTMsMTAxNzU0ZTQsMTAzNTY4NzYwMCwxMDQ4OTg5NjAwLDEwNjcxMzcyMDAsMTA4MDQzOTIwMCwxMDk5MTkxNjAwLDExMTE4ODg4MDAsMTEzMDY0MTIwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxMjM4MjkyZTMsMTI1NjQzOTYwMCwxMjY5NzQxNjAwLDEyODg0OTRlMywxMzAxMTkxMjAwLDEzMTk5NDM2MDAsMTMzMjY0MDgwMCwxMzUxMzkzMjAwLDEzNjQ2OTUyMDAsMTM4Mjg0MjgwMCwxMzk2MTQ0ODAwLDE0MTQyOTI0MDAsMTQyNzU5NDQwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNTA5MjQ2ZTMsMTUyMTk0MzIwMCwxNTQwNjk1NjAwLDE1NTM5OTc2MDAsMTU3MjE0NTIwMCwxNTg1NDQ3MjAwLDE2MDM1OTQ4MDAsMTYxNjg5NjgwMCwxNjM1NjQ5MjAwLDE2NDgzNDY0MDAsMTY2NzA5ODgwMCwxNjc5Nzk2ZTMsMTY5ODU0ODQwMCwxNzExODUwNDAwLDE3Mjk5OThlMywxNzQzM2U1LDE3NjE0NDc2MDAsMTc3NDc0OTYwMCwxNzkyODk3MjAwLDE4MDYxOTkyMDAsMTgyNDk1MTYwMCwxODM3NjQ4ODAwLDE4NTY0MDEyMDAsMTg2OTA5ODQwMCwxODg3ODUwODAwLDE5MDExNTI4MDAsMTkxOTMwMDQwMCwxOTMyNjAyNDAwXSxvZmZzZXQ6WzM0NjQsMzQ2NCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvQnJ1c3NlbHMiOnsKdGltZTpbLTI4NDAxNDA4MDAsLTI0NTA5OTQxNTAsLTE3NDAzNTUyMDAsLTE2OTM2OTkyMDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYxMzgyMjQwMCwtMTYwNDI3ODgwMCwtMTU4NTUyNjQwMCwtMTU3NDAzODgwMCwtMTU1MjI2MjQwMCwtMTUzOTk5NzIwMCwtMTUyMDU1MzYwMCwtMTUwNzUxMDgwMCwtMTQ5MDU3MjgwMCwtMTQ3MzY0MmUzLC0xNDU5MTIzMjAwLC0xNDQ0MDA2ODAwLC0xNDI3NjczNjAwLC0xNDExOTUyNDAwLC0xMzk2MjI0ZTMsLTEzNzkyOTMyMDAsLTEzNjQ3NzQ0MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjQ4MDAsLTEzMTYzOTRlMywtMTMwMTI1OTYwMCwtMTI4NDMyODgwMCwtMTI2OTgxZTQsLTEyNTM0ODRlMywtMTIzODM2MDQwMCwtMTIyMTQyOTYwMCwtMTIwNjkxMDgwMCwtMTE5MTE4OTYwMCwtMTE3NTQ2MTIwMCwtMTE2MDM0NDgwMCwtMTE0MzQwNjgwMCwtMTEyNzY4NTYwMCwtMTExMTk1NzIwMCwtMTA5Njg0MDgwMCwtMTA4MDUwNzYwMCwtMTA2MzU3NjgwMCwtMTA0OTA1OGUzLC0xMDMzMzM2ODAwLC0xMDE3NjA4NDAwLC0xMDAyNDkyZTMsLTk4NjE1ODgwMCwtOTY5MjI4ZTMsLTk1MDQ3NTYwMCwtOTQyMDEyZTMsLTkzNDY2NDQwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk4MDY2ZTMsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLC03NDU0NTJlMywtNzMzMjY2ZTMsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlsxMDUwLDEwNTAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CdWNoYXJlc3QiOnsKdGltZTpbLTI0NjkzOTg0MDAsLTEyMTMxNDI0MDAsLTExODcwNDk2MDAsLTExNzU0Njg0MDAsLTExNTk3NDcyMDAsLTExNDQwMTg4MDAsLTExMjc2OTI4MDAsLTExMTE5NjQ0MDAsLTEwOTYyNDMyMDAsLTEwODA1MTQ4MDAsLTEwNjQ3OTM2MDAsLTEwNDkwNjUyMDAsLTEwMzMzNDRlMywtMTAxNzYxNTYwMCwtMTAwMTg5NDQwMCwtOTg2MTY2ZTMsLTk3MDQ0NDgwMCwtOTU0NzE2NDAwLDI5NjYxMTIwMCwzMDc0OTc2MDAsMzIzODIzNjAwLDMzODk1MDgwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzc3NjAwLDY4NjEwNmUzLDcwMTgyNzIwMCw3MTc1NTU2MDAsNzMzMjc2ODAwLDc0OTAwNTIwMCw3NjQ3MjY0MDAsNzgwNDUxMjAwLDc5NjE3NmUzLDgxMTkwMDgwMCw4MjgyMzA0MDAsODQ2Mzc0NDAwLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk1NDAzOTYwMCw5NzI3OTJlMyw5ODU0ODkyMDAsMTAwNDI0MTYwMCwxMDE3NTQzNjAwLDEwMzU2OTEyMDAsMTA0ODk5MzIwMCwxMDY3MTQwODAwLDEwODA0NDI4MDAsMTA5OTE5NTIwMCwxMTExODkyNDAwLDExMzA2NDQ4MDAsMTE0MzM0MmUzLDExNjIwOTQ0MDAsMTE3NDc5MTYwMCwxMTkzNTQ0ZTMsMTIwNjg0NmUzLDEyMjQ5OTM2MDAsMTIzODI5NTYwMCwxMjU2NDQzMjAwLDEyNjk3NDUyMDAsMTI4ODQ5NzYwMCwxMzAxMTk0ODAwLDEzMTk5NDcyMDAsMTMzMjY0NDQwMCwxMzUxMzk2ODAwLDEzNjQ2OTg4MDAsMTM4Mjg0NjQwMCwxMzk2MTQ4NDAwLDE0MTQyOTZlMywxNDI3NTk4ZTMsMTQ0NTc0NTYwMCwxNDU5MDQ3NjAwLDE0Nzc4ZTUsMTQ5MDQ5NzIwMCwxNTA5MjQ5NjAwLDE1MjE5NDY4MDAsMTU0MDY5OTIwMCwxNTU0MDAxMjAwLDE1NzIxNDg4MDAsMTU4NTQ1MDgwMCwxNjAzNTk4NDAwLDE2MTY5MDA0MDAsMTYzNTY1MjgwMCwxNjQ4MzVlNCwxNjY3MTAyNDAwLDE2Nzk3OTk2MDAsMTY5ODU1MmUzLDE3MTE4NTRlMywxNzMwMDAxNjAwLDE3NDMzMDM2MDAsMTc2MTQ1MTIwMCwxNzc0NzUzMjAwLDE3OTI5MDA4MDAsMTgwNjIwMjgwMCwxODI0OTU1MjAwLDE4Mzc2NTI0MDAsMTg1NjQwNDgwMCwxODY5MTAyZTMsMTg4Nzg1NDQwMCwxOTAxMTU2NDAwLDE5MTkzMDRlMywxOTMyNjA2ZTNdLG9mZnNldDpbNjI2NCw2MjY0LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL0J1ZGFwZXN0Ijp7CnRpbWU6Wy0yNDk4MjU2ZTMsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYwMDQ2NjQwMCwtMTU4NzI0MzYwMCwtMTU2OTcwOGUzLC0xNTU1MTg5MjAwLC05MDY3NzE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc3ODQ2NzYwMCwtNzYyNjQ5MjAwLC03NDk2ODU2MDAsLTczMzI2OTYwMCwtNzE3NjMxMjAwLC03MDE5MDI4MDAsLTY4NjE4MTYwMCwtNjcwNDUzMjAwLC02NTQxMjcyMDAsLTYzOTAwMzYwMCwtNDkyNjUyODAwLC00ODExNjE2MDAsLTQ2MTE5NmUzLC00NDk3MDEyMDAsLTQyODUzNjgwMCwtNDE4MjUxNjAwLC0zOTcwODcyMDAsLTM4NjgwMmUzLDMyMzgyNzIwMCwzMzg5NTA4MDAsMzU0NjcyZTMsMzcwNDAwNDAwLDM4NjEyMTYwMCw0MDE4NWU0LDQxNzU3MTIwMCw0MzMyOTk2MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbNDU4MCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL0NvcGVuaGFnZW4iOnsKdGltZTpbLTI1MjQ1MjE2MDAsLTIzOTgyOTEyMDAsLTE2OTI0OTMyMDAsLTE2ODA0ODM2MDAsLTkzNTEwNzIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjkzODEyMDAsLTc0NzAwNzIwMCwtNzM2Mzc2NDAwLC03MTUyMTJlMywtNzA2NzQxMjAwLC02ODMxNTc2MDAsLTY3NTI5MTYwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMzAyMCwzMDIwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvRHVibGluIjp7CnRpbWU6Wy0yODIxNjUxMjAwLC0xNjkxOTY0ZTMsLTE2ODA0NjkyMDAsLTE2NjQxNDMyMDAsLTE2NTAxNDI4MDAsLTE2MzM5MDMyMDAsLTE2MTc0ODM2MDAsLTE2MDE4NDg4MDAsLTE1ODYwMzRlMywtMTU3MDM5OTIwMCwtMTU1MjE2NTIwMCwtMTUzODM0NDgwMCwtMTUyMjUzZTQsLTE1MDc1ZTUsLTE0OTA1NjJlMywtMTQ3MzYzMTIwMCwtMTQ2MDkyNjgwMCwtMTQ0Mjc4NjQwMCwtMTQyODg3MjQwMCwtMTQxMDczMmUzLC0xMzk2MjEzMjAwLC0xMzc5MjgyNDAwLC0xMzY0NzYzNjAwLC0xMzQ4NDM3NjAwLC0xMzMzMzE0ZTMsLTEzMTU3Nzg0MDAsLTEzMDEyNTk2MDAsLTEyODQzMjg4MDAsLTEyNjk4MWU0LC0xMjUzNDg0ZTMsLTEyMzgzNjA0MDAsLTEyMjE0Mjk2MDAsLTEyMDY5MTA4MDAsLTExODk5OGU0LC0xMTc1NDYxMjAwLC0xMTU5MTM1MjAwLC0xMTQzNDA2ODAwLC0xMTI2NDc2ZTMsLTExMTE5NTcyMDAsLTEwOTU2MzEyMDAsLTEwODA1MDc2MDAsLTEwNjM1NzY4MDAsLTEwNDkwNThlMywtMTAzMjEyNzIwMCwtMTAxNzYwODQwMCwtMTAwMTI4MjQwMCwtOTg2MTU4ODAwLC05NjkyMjhlMywtOTUwNDc1NjAwLC05NDIwMTJlMywtNzMzMzUyNDAwLC03MTk0NDU2MDAsLTY5OTQ4MzYwMCwtNjg0OTcyZTMsLTY2ODAzNGUzLC02NTQ3MzJlMywtNjM2NTg0NDAwLC02MjIwNzI4MDAsLTYwNTczOTYwMCwtNTkwNjIzMjAwLC01NzQyOWU0LC01NTg1Njg4MDAsLTU0MjIzNTYwMCwtNTI3MTE5MjAwLC01MTI2MDA0MDAsLTQ5NjI3NDQwMCwtNDgxMTUwODAwLC00NjQyMmU0LC00NDk3MDEyMDAsLTQzMjE2NTYwMCwtNDE3NjQ2ODAwLC00MDEzMjA4MDAsLTM4NjE5NzIwMCwtMzY5MjY2NDAwLC0zNTQ3NDc2MDAsLTMzNzgxNjgwMCwtMzIzMjk4ZTMsLTMwNjk3MmUzLC0yOTE4NDg0MDAsLTI3NjczMmUzLC0yNTc5Nzk2MDAsLTI0NTI4MjQwMCwtMjI2NTNlNCwtMjEzMjI4ZTMsLTE5NTA4MDQwMCwtMTgyMzgzMjAwLC0xNjM2MzA4MDAsLTE1MDkzMzYwMCwtMTMyMTgxMjAwLC0xMTk0ODRlMywtMTAwNzMxNjAwLC04ODAzNDQwMCwtNjg2NzcyMDAsLTU5MDA0ZTMsNTc3MjZlMyw2OTgxODQwMCw4OTE3NTYwMCwxMDEyNjhlMywxMjA2MjUyMDAsMTMyNzE3NjAwLDE1MjA3NDgwMCwxNjQxNjcyMDAsMTgzNTI0NDAwLDE5NjIyMTYwMCwyMTQ5NzRlMywyMjc2NzEyMDAsMjQ2NDIzNjAwLDI1OTEyMDgwMCwyNzg0NzhlMywyOTA1NzA0MDAsMzA5OTI3NjAwLDMyMjAyZTQsMzQxMzc3MjAwLDM1NDY3NTYwMCwzNzI4MjMyMDAsMzg2MTI1MjAwLDQwNDI3MjgwMCw0MTc1NzQ4MDAsNDM1NzIyNDAwLDQ0OTAyNDQwMCw0Njc3NzY4MDAsNDgxMDc4ODAwLDQ5OTIyNjQwMCw1MTI1Mjg0MDAsNTMwNjc2ZTMsNTQzOTc4ZTMsNTYyMTI1NjAwLDU3NTQyNzYwMCw1OTM1NzUyMDAsNjA2ODc3MjAwLDYyNTYyOTYwMCw2MzgzMjY4MDAsNjU3MDc5MjAwLDY3MDM4MTIwMCw2ODg1Mjg4MDAsNzAxODMwODAwLDcxOTk3ODQwMCw3MzMyODA0MDAsNzUxNDI4ZTMsNzY0NzNlNCw3ODI4Nzc2MDAsNzk2MTc5NjAwLDgxNDMyNzIwMCw4MjgyMzRlMyw4NDYzODE2MDAsODU5NjgzNjAwLDg3NzgzMTIwMCw4OTExMzMyMDAsOTA5MjgwODAwLDkyMjU4MjgwMCw5NDEzMzUyMDAsOTU0MDMyNDAwLDk3Mjc4NDgwMCw5ODU0ODJlMywxMDA0MjM0NDAwLDEwMTc1MzY0MDAsMTAzNTY4NGUzLDEwNDg5ODZlMywxMDY3MTMzNjAwLDEwODA0MzU2MDAsMTA5OTE4OGUzLDExMTE4ODUyMDAsMTEzMDYzNzYwMCwxMTQzMzM0ODAwLDExNjIwODcyMDAsMTE3NDc4NDQwMCwxMTkzNTM2ODAwLDEyMDY4Mzg4MDAsMTIyNDk4NjQwMCwxMjM4Mjg4NDAwLDEyNTY0MzZlMywxMjY5NzM4ZTMsMTI4ODQ5MDQwMCwxMzAxMTg3NjAwLDEzMTk5NGU0LDEzMzI2MzcyMDAsMTM1MTM4OTYwMCwxMzY0NjkxNjAwLDEzODI4MzkyMDAsMTM5NjE0MTIwMCwxNDE0Mjg4ODAwLDE0Mjc1OTA4MDAsMTQ0NTczODQwMCwxNDU5MDQwNDAwLDE0Nzc3OTI4MDAsMTQ5MDQ5ZTQsMTUwOTI0MjQwMCwxNTIxOTM5NjAwLDE1NDA2OTJlMywxNTUzOTk0ZTMsMTU3MjE0MTYwMCwxNTg1NDQzNjAwLDE2MDM1OTEyMDAsMTYxNjg5MzIwMCwxNjM1NjQ1NjAwLDE2NDgzNDI4MDAsMTY2NzA5NTIwMCwxNjc5NzkyNDAwLDE2OTg1NDQ4MDAsMTcxMTg0NjgwMCwxNzI5OTk0NDAwLDE3NDMyOTY0MDAsMTc2MTQ0NGUzLDE3NzQ3NDZlMywxNzkyODkzNjAwLDE4MDYxOTU2MDAsMTgyNDk0OGUzLDE4Mzc2NDUyMDAsMTg1NjM5NzYwMCwxODY5MDk0ODAwLDE4ODc4NDcyMDAsMTkwMTE0OTIwMCwxOTE5Mjk2ODAwLDE5MzI1OTg4MDBdLG9mZnNldDpbLTE1MjEsLTE1MjEsMjA3OSwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwXX0sIkV1cm9wZS9IZWxzaW5raSI6ewp0aW1lOlstMjg5MDI1MjgwMCwtMTUzNTkzMjgwMCwtODc1NjY0ZTMsLTg1OTc2MjgwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTgyZTMsNDMzMzEwNDAwLDQ0OTAzMTYwMCw0NjUzNjQ4MDAsNDgxMDg2ZTMsNDk2ODE0NDAwLDUxMjUzNTYwMCw1MjgyNjRlMyw1NDM5ODUyMDAsNTU5NzEzNjAwLDU3NTQzNDgwMCw1OTExNjMyMDAsNjA2ODg0NDAwLDYyMjYxMjgwMCw2MzgzMzRlMyw2NTQ2NjcyMDAsNjcwMzg4NDAwLDY4NjExNjgwMCw3MDE4MzhlMyw3MTc1NjY0MDAsNzMzMjg3NjAwLDc0OTAxNmUzLDc2NDczNzIwMCw3ODA0NjU2MDAsNzk2MTg2ODAwLDgxMTkxNTIwMCw4MjgyNDEyMDAsODQ2Mzg4ODAwLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk1NDAzOTYwMCw5NzI3OTJlMyw5ODU0ODkyMDAsMTAwNDI0MTYwMCwxMDE3NTQzNjAwLDEwMzU2OTEyMDAsMTA0ODk5MzIwMCwxMDY3MTQwODAwLDEwODA0NDI4MDAsMTA5OTE5NTIwMCwxMTExODkyNDAwLDExMzA2NDQ4MDAsMTE0MzM0MmUzLDExNjIwOTQ0MDAsMTE3NDc5MTYwMCwxMTkzNTQ0ZTMsMTIwNjg0NmUzLDEyMjQ5OTM2MDAsMTIzODI5NTYwMCwxMjU2NDQzMjAwLDEyNjk3NDUyMDAsMTI4ODQ5NzYwMCwxMzAxMTk0ODAwLDEzMTk5NDcyMDAsMTMzMjY0NDQwMCwxMzUxMzk2ODAwLDEzNjQ2OTg4MDAsMTM4Mjg0NjQwMCwxMzk2MTQ4NDAwLDE0MTQyOTZlMywxNDI3NTk4ZTMsMTQ0NTc0NTYwMCwxNDU5MDQ3NjAwLDE0Nzc4ZTUsMTQ5MDQ5NzIwMCwxNTA5MjQ5NjAwLDE1MjE5NDY4MDAsMTU0MDY5OTIwMCwxNTU0MDAxMjAwLDE1NzIxNDg4MDAsMTU4NTQ1MDgwMCwxNjAzNTk4NDAwLDE2MTY5MDA0MDAsMTYzNTY1MjgwMCwxNjQ4MzVlNCwxNjY3MTAyNDAwLDE2Nzk3OTk2MDAsMTY5ODU1MmUzLDE3MTE4NTRlMywxNzMwMDAxNjAwLDE3NDMzMDM2MDAsMTc2MTQ1MTIwMCwxNzc0NzUzMjAwLDE3OTI5MDA4MDAsMTgwNjIwMjgwMCwxODI0OTU1MjAwLDE4Mzc2NTI0MDAsMTg1NjQwNDgwMCwxODY5MTAyZTMsMTg4Nzg1NDQwMCwxOTAxMTU2NDAwLDE5MTkzMDRlMywxOTMyNjA2ZTNdLG9mZnNldDpbNTk4OSw1OTg5LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL0lzdGFuYnVsIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE4Njk4Njg4MDAsLTE2OTM2OTkyMDAsLTE2ODA0OGU0LC0xNTcwNDA2NDAwLC0xNTUyMTc2ZTMsLTE1MzgzNTJlMywtMTUyMjU0MDgwMCwtMTUwNzUwNzIwMCwtMTQ5MDU3MjgwMCwtMTQ0MDIwMTYwMCwtMTQyODAxOTIwMCwtMTQwOTcwMjQwMCwtMTM5NjQ4MzIwMCwtOTMxMDQ2NDAwLC05MjI2NjU2MDAsLTkxNzgyNzIwMCwtODkyNDI1NjAwLC04NzU4MzY4MDAsLTc2NDcyNjQwMCwtNzQ0MzM2ZTMsLTczMzc5NTIwMCwtNzE2NDI4ODAwLC03MDE5MTM2MDAsLTY4NDk3OTIwMCwtNjcwNDY0ZTMsLTY1NDEzNDQwMCwtNjM5MDE0NDAwLC02MjIwOGU0LC02MDY5NmU0LC01OTAwMjU2MDAsLTU3NTUxMDQwMCwtMjM1NjEyODAwLC0xOTQ4MzJlMywtMTc3NzI0ODAwLC0xNjU3MTUyMDAsMTA3OTE3MjAwLDEyMTIyNjQwMCwxMzM5MjcyMDAsMTUyNjc2ZTMsMTY0Njg1NjAwLDE4NDEyNTYwMCwxOTYyMjE2MDAsMjE1NTc1MjAwLDIyODg4MDgwMCwyNDU4MTUyMDAsMjYwMzMwNDAwLDI2NzkyNjQwMCw0Mjg0NjQ4MDAsNDMzOTA4ZTMsNDY4MTIyNDAwLDQ4MjgwNjgwMCw0OTY3MjA4MDAsNTEyNTI4NDAwLDUyODI1NjgwMCw1NDM5NzhlMyw1NTk3MDY0MDAsNTc1NDI3NjAwLDU5MTE1NmUzLDYwNjg3NzIwMCw2MjI2MDU2MDAsNjM4MzI2ODAwLDY1NDY2ZTQsNjcwMzgxMjAwLDY4NjEwOTYwMCw3MDE4MzA4MDAsNzE3NTU5MjAwLDczMzI4MDQwMCw3NDkwMDg4MDAsNzY0MTI1MjAwLDc4MDQ1ODQwMCw3OTYxNzk2MDAsODExOTA4ZTMsODI4MjM0ZTMsODQ2MzgxNjAwLDg1OTY4MzYwMCw4Nzc4MzEyMDAsODkxMTMzMjAwLDkwOTI4MDgwMCw5MjI1ODI4MDAsOTQxMzM1MjAwLDk1NDAzMjQwMCw5NzI3ODQ4MDAsOTg1NDgyZTMsMTAwNDIzNDQwMCwxMDE3NTM2NDAwLDEwMzU2ODRlMywxMDQ4OTg2ZTMsMTA2NzEzMzYwMCwxMDgwNDM1NjAwLDEwOTkxODhlMywxMTExODg1MjAwLDExMzA2Mzc2MDAsMTE0MzMzNDgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTI4MTIwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjIzNDgwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDY5NTUyMDAsMTQ1OTA0NzYwMCwxNDczMjA2NDAwLDE5MjUwMDI4MDBdLApvZmZzZXQ6WzY5NTIsNzAxNiw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsMTA4MDAsMTQ0MDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDEwODAwXX0sIkV1cm9wZS9MaXNib24iOnt0aW1lOlstMTgzMDM4NjIwNSwtMTY4OTU1NTYwMCwtMTY3Nzc5OGUzLC0xNjY3NDMzNjAwLC0xNjQ3NzM0NDAwLC0xNjM1ODk3NjAwLC0xNjE2MTk4NDAwLC0xNjA0MzYxNjAwLC0xNTg0NjYyNDAwLC0xNTcyNzM5MjAwLC0xNTUzMDRlNCwtMTU0MTIwMzIwMCwtMTUyMTUwNGUzLC0xNDQyNDUxNjAwLC0xNDI3NjczNjAwLC0xMzc5MjkzMjAwLC0xMzY0Nzc0NDAwLC0xMzQ4NDQ4NDAwLC0xMzMzMzI0ODAwLC0xMzE2Mzk0ZTMsLTEzMDEyNzA0MDAsLTEyODQzMzk2MDAsLTEyNjk4MjA4MDAsLTEyMjE0NDA0MDAsLTEyMDY5MjE2MDAsLTExOTEyMDA0MDAsLTExNzU0NzJlMywtMTEyNzY5NjQwMCwtMTExMTk2OGUzLC0xMDk2ODUxNjAwLC0xMDgwNTE4NDAwLC0xMDYzNTg3NjAwLC0xMDQ5MDY4ODAwLC0xMDMzMzQ3NjAwLC0xMDE3NjE5MjAwLC0xMDAyNTAyODAwLC05ODYxNjk2MDAsLTk2OTIzODgwMCwtOTUwNDg2NDAwLC05NDIwMjI4MDAsLTkyMjQ5MjgwMCwtOTA2OTQ0NDAwLC04OTExMjk2MDAsLTg3NzMwOTIwMCwtODczNjgwNDAwLC04NjRlNiwtODU3OTUyZTMsLTg0NTg1OTYwMCwtODQyODM1NjAwLC04MzEzNDA4MDAsLTgyNTg5NzYwMCwtODE0NDFlNCwtODEwNzgxMjAwLC03OTk4OTEyMDAsLTc5NDQ0OGUzLC03ODI5NjA0MDAsLTc3OTMzMTYwMCwtNzY4NDQxNjAwLC03NjI5OTg0MDAsLTc0OTA5MTYwMCwtNzMzMzYzMjAwLC03MTc2MzEyMDAsLTcwMTkwMjgwMCwtNjg2MTgxNjAwLC02NzA0NTMyMDAsLTY1NDczMmUzLC02MzkwMDM2MDAsLTYyMzI4MjQwMCwtNjA3NTU0ZTMsLTU5MTgzMjgwMCwtNTc1NDk5NjAwLC01NTk3Nzg0MDAsLTU0NDA1ZTQsLTUyODMyODgwMCwtNTEyNjAwNDAwLC00OTY4NzkyMDAsLTQ4MTE1MDgwMCwtNDY1NDI5NjAwLC00NDk3MDEyMDAsLTQzMzk4ZTQsLTQxNzY0NjgwMCwtNDAxOTI1NjAwLC0zODYxOTcyMDAsLTM3MDQ3NmUzLC0zNTQ3NDc2MDAsLTMzOTAyNjQwMCwtMzIzMjk4ZTMsLTMwNzU3NjgwMCwtMjkxODQ4NDAwLC0yNzYxMjcyMDAsLTI2MDM5ODgwMCwtMjQ0Njc3NjAwLC0yMjgzNDQ0MDAsLTIxMjYyMzIwMCwtMTk2ODk0ODAwLC0xODExNzM2MDAsLTE2NTQ0NTIwMCwtMTQ5NzI0ZTMsLTEzMzk5NTYwMCwtMTE4Mjc0NDAwLC0xMDI1NDZlMywyMTI1NDc2MDAsMjI4MjY4ODAwLDI0Mzk5NzIwMCwyNjAzMjY4MDAsMjc2MDU1MjAwLDI5MTc3NjQwMCwzMDc1MDQ4MDAsMzIzODMwODAwLDMzODk1NDQwMCwzNTQ2NzJlMywzNzA0MDA0MDAsMzg2MTIxNjAwLDQwMTg1ZTQsNDE3NTcxMjAwLDQzMzI5OTYwMCw0NDkwMjA4MDAsNDY1MzU0ZTMsNDgxMDc1MjAwLDQ5NjgwMzYwMCw1MTI1Mjg0MDAsNTI4MjU2ODAwLDU0Mzk3OGUzLDU1OTcwNjQwMCw1NzU0Mjc2MDAsNTkxMTU2ZTMsNjA2ODc3MjAwLDYyMjYwNTYwMCw2MzgzMjY4MDAsNjU0NjZlNCw2NzAzODEyMDAsNjg2MTA5NjAwLDcwMTgzMDgwMCw3MTc1NTkyMDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODE2MDAsODU5NjgzNjAwLDg3NzgzMTIwMCw4OTExMzMyMDAsOTA5MjgwODAwLDkyMjU4MjgwMCw5NDEzMzUyMDAsOTU0MDMyNDAwLDk3Mjc4NDgwMCw5ODU0ODJlMywxMDA0MjM0NDAwLDEwMTc1MzY0MDAsMTAzNTY4NGUzLDEwNDg5ODZlMywxMDY3MTMzNjAwLDEwODA0MzU2MDAsMTA5OTE4OGUzLDExMTE4ODUyMDAsMTEzMDYzNzYwMCwxMTQzMzM0ODAwLDExNjIwODcyMDAsMTE3NDc4NDQwMCwxMTkzNTM2ODAwLDEyMDY4Mzg4MDAsMTIyNDk4NjQwMCwxMjM4Mjg4NDAwLDEyNTY0MzZlMywxMjY5NzM4ZTMsMTI4ODQ5MDQwMCwxMzAxMTg3NjAwLDEzMTk5NGU0LDEzMzI2MzcyMDAsMTM1MTM4OTYwMCwxMzY0NjkxNjAwLDEzODI4MzkyMDAsMTM5NjE0MTIwMCwxNDE0Mjg4ODAwLDE0Mjc1OTA4MDAsMTQ0NTczODQwMCwxNDU5MDQwNDAwLDE0Nzc3OTI4MDAsMTQ5MDQ5ZTQsMTUwOTI0MjQwMCwxNTIxOTM5NjAwLDE1NDA2OTJlMywxNTUzOTk0ZTMsMTU3MjE0MTYwMCwxNTg1NDQzNjAwLDE2MDM1OTEyMDAsMTYxNjg5MzIwMCwxNjM1NjQ1NjAwLDE2NDgzNDI4MDAsMTY2NzA5NTIwMCwxNjc5NzkyNDAwLDE2OTg1NDQ4MDAsMTcxMTg0NjgwMCwxNzI5OTk0NDAwLDE3NDMyOTY0MDAsMTc2MTQ0NGUzLDE3NzQ3NDZlMywxNzkyODkzNjAwLDE4MDYxOTU2MDAsMTgyNDk0OGUzLDE4Mzc2NDUyMDAsMTg1NjM5NzYwMCwxODY5MDk0ODAwLDE4ODc4NDcyMDAsMTkwMTE0OTIwMCwxOTE5Mjk2ODAwLDE5MzI1OTg4MDBdLApvZmZzZXQ6Wy0yMjA1LDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCwwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwXX0sIkV1cm9wZS9ManVibGphbmEiOnt0aW1lOlstMjcxMzkxMDQwMCwtOTA1ODIxMjAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDg4MDAsLTc2NjYxNjQwMCw0MTc1Nzg0MDAsNDMzMzA2ODAwLDQ0OTAyOGUzLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDcwMTgzNDQwMCw3MTc1NjI4MDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODUyMDAsODU5Njg3MjAwLDg3NzgzNDgwMCw4OTExMzY4MDAsOTA5Mjg0NDAwLDkyMjU4NjQwMCw5NDEzMzg4MDAsOTU0MDM2ZTMsOTcyNzg4NDAwLDk4NTQ4NTYwMCwxMDA0MjM4ZTMsMTAxNzU0ZTQsMTAzNTY4NzYwMCwxMDQ4OTg5NjAwLDEwNjcxMzcyMDAsMTA4MDQzOTIwMCwxMDk5MTkxNjAwLDExMTE4ODg4MDAsMTEzMDY0MTIwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxMjM4MjkyZTMsMTI1NjQzOTYwMCwxMjY5NzQxNjAwLDEyODg0OTRlMywxMzAxMTkxMjAwLDEzMTk5NDM2MDAsMTMzMjY0MDgwMCwxMzUxMzkzMjAwLDEzNjQ2OTUyMDAsMTM4Mjg0MjgwMCwxMzk2MTQ0ODAwLDE0MTQyOTI0MDAsMTQyNzU5NDQwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNTA5MjQ2ZTMsMTUyMTk0MzIwMCwxNTQwNjk1NjAwLDE1NTM5OTc2MDAsMTU3MjE0NTIwMCwxNTg1NDQ3MjAwLDE2MDM1OTQ4MDAsMTYxNjg5NjgwMCwxNjM1NjQ5MjAwLDE2NDgzNDY0MDAsMTY2NzA5ODgwMCwxNjc5Nzk2ZTMsMTY5ODU0ODQwMCwxNzExODUwNDAwLDE3Mjk5OThlMywxNzQzM2U1LDE3NjE0NDc2MDAsMTc3NDc0OTYwMCwxNzkyODk3MjAwLDE4MDYxOTkyMDAsMTgyNDk1MTYwMCwxODM3NjQ4ODAwLDE4NTY0MDEyMDAsMTg2OTA5ODQwMCwxODg3ODUwODAwLDE5MDExNTI4MDAsMTkxOTMwMDQwMCwxOTMyNjAyNDAwXSxvZmZzZXQ6WzM0ODQsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL0xvbmRvbiI6ewp0aW1lOlstMzg1MjY2MjQwMCwtMTY5MTk2NGUzLC0xNjgwNDY5MjAwLC0xNjY0MTQzMjAwLC0xNjUwMTQyODAwLC0xNjMzOTAzMjAwLC0xNjE3NDgzNjAwLC0xNjAxODQ4ODAwLC0xNTg2MDM0ZTMsLTE1NzAzOTkyMDAsLTE1NTIxNjUyMDAsLTE1MzgzNDQ4MDAsLTE1MjI1M2U0LC0xNTA3NWU1LC0xNDkwNTYyZTMsLTE0NzM2MzEyMDAsLTE0NjA5MjY4MDAsLTE0NDI3ODY0MDAsLTE0Mjg4NzI0MDAsLTE0MTA3MzJlMywtMTM5NjIxMzIwMCwtMTM3OTI4MjQwMCwtMTM2NDc2MzYwMCwtMTM0ODQzNzYwMCwtMTMzMzMxNGUzLC0xMzE1Nzc4NDAwLC0xMzAxMjU5NjAwLC0xMjg0MzI4ODAwLC0xMjY5ODFlNCwtMTI1MzQ4NGUzLC0xMjM4MzYwNDAwLC0xMjIxNDI5NjAwLC0xMjA2OTEwODAwLC0xMTg5OThlNCwtMTE3NTQ2MTIwMCwtMTE1OTEzNTIwMCwtMTE0MzQwNjgwMCwtMTEyNjQ3NmUzLC0xMTExOTU3MjAwLC0xMDk1NjMxMjAwLC0xMDgwNTA3NjAwLC0xMDYzNTc2ODAwLC0xMDQ5MDU4ZTMsLTEwMzIxMjcyMDAsLTEwMTc2MDg0MDAsLTEwMDEyODI0MDAsLTk4NjE1ODgwMCwtOTY5MjI4ZTMsLTk1MDQ3NTYwMCwtOTQyMDEyZTMsLTkwNDUxNDQwMCwtODk2MDQzNjAwLC04NzU0ODRlMywtODY0NTk0ZTMsLTg0NDAzNDQwMCwtODMyNTM5NjAwLC04MTI1ODQ4MDAsLTc5ODA2NmUzLC03ODEwNDg4MDAsLTc3MjA1OTYwMCwtNzY0ODAyZTMsLTc0ODQ3NmUzLC03MzMzNTI0MDAsLTcxOTQ0NTYwMCwtNzE3MDI2NDAwLC03MDY3NDEyMDAsLTY5OTQ4MzYwMCwtNjg3OTk2ZTMsLTY2ODAzNGUzLC02NTQ3MzJlMywtNjM2NTg0NDAwLC02MjIwNzI4MDAsLTYwNTczOTYwMCwtNTkwNjIzMjAwLC01NzQyOWU0LC01NTg1Njg4MDAsLTU0MjIzNTYwMCwtNTI3MTE5MjAwLC01MTI2MDA0MDAsLTQ5NjI3NDQwMCwtNDgxMTUwODAwLC00NjQyMmU0LC00NDk3MDEyMDAsLTQzMjE2NTYwMCwtNDE3NjQ2ODAwLC00MDEzMjA4MDAsLTM4NjE5NzIwMCwtMzY5MjY2NDAwLC0zNTQ3NDc2MDAsLTMzNzgxNjgwMCwtMzIzMjk4ZTMsLTMwNjk3MmUzLC0yOTE4NDg0MDAsLTI3NjczMmUzLC0yNTc5Nzk2MDAsLTI0NTI4MjQwMCwtMjI2NTNlNCwtMjEzMjI4ZTMsLTE5NTA4MDQwMCwtMTgyMzgzMjAwLC0xNjM2MzA4MDAsLTE1MDkzMzYwMCwtMTMyMTgxMjAwLC0xMTk0ODRlMywtMTAwNzMxNjAwLC04ODAzNDQwMCwtNjg2NzcyMDAsLTU5MDA0ZTMsLTM3MjM4NDAwLDU3NzI2ZTMsNjk4MTg0MDAsODkxNzU2MDAsMTAxMjY4ZTMsMTIwNjI1MjAwLDEzMjcxNzYwMCwxNTIwNzQ4MDAsMTY0MTY3MjAwLDE4MzUyNDQwMCwxOTYyMjE2MDAsMjE0OTc0ZTMsMjI3NjcxMjAwLDI0NjQyMzYwMCwyNTkxMjA4MDAsMjc4NDc4ZTMsMjkwNTcwNDAwLDMwOTkyNzYwMCwzMjIwMmU0LDM0MTM3NzIwMCwzNTQ2NzU2MDAsMzcyODIzMjAwLDM4NjEyNTIwMCw0MDQyNzI4MDAsNDE3NTc0ODAwLDQzNTcyMjQwMCw0NDkwMjQ0MDAsNDY3Nzc2ODAwLDQ4MTA3ODgwMCw0OTkyMjY0MDAsNTEyNTI4NDAwLDUzMDY3NmUzLDU0Mzk3OGUzLDU2MjEyNTYwMCw1NzU0Mjc2MDAsNTkzNTc1MjAwLDYwNjg3NzIwMCw2MjU2Mjk2MDAsNjM4MzI2ODAwLDY1NzA3OTIwMCw2NzAzODEyMDAsNjg4NTI4ODAwLDcwMTgzMDgwMCw3MTk5Nzg0MDAsNzMzMjgwNDAwLDc1MTQyOGUzLDc2NDczZTQsNzgyODc3NjAwLDc5NjE3OTYwMCw4MTQzMjcyMDAsODI4MjM0ZTMsODQ2MzgxNjAwLDg1OTY4MzYwMCw4Nzc4MzEyMDAsODkxMTMzMjAwLDkwOTI4MDgwMCw5MjI1ODI4MDAsOTQxMzM1MjAwLDk1NDAzMjQwMCw5NzI3ODQ4MDAsOTg1NDgyZTMsMTAwNDIzNDQwMCwxMDE3NTM2NDAwLDEwMzU2ODRlMywxMDQ4OTg2ZTMsMTA2NzEzMzYwMCwxMDgwNDM1NjAwLDEwOTkxODhlMywxMTExODg1MjAwLDExMzA2Mzc2MDAsMTE0MzMzNDgwMCwxMTYyMDg3MjAwLDExNzQ3ODQ0MDAsMTE5MzUzNjgwMCwxMjA2ODM4ODAwLDEyMjQ5ODY0MDAsMTIzODI4ODQwMCwxMjU2NDM2ZTMsMTI2OTczOGUzLDEyODg0OTA0MDAsMTMwMTE4NzYwMCwxMzE5OTRlNCwxMzMyNjM3MjAwLDEzNTEzODk2MDAsMTM2NDY5MTYwMCwxMzgyODM5MjAwLDEzOTYxNDEyMDAsMTQxNDI4ODgwMCwxNDI3NTkwODAwLDE0NDU3Mzg0MDAsMTQ1OTA0MDQwMCwxNDc3NzkyODAwLDE0OTA0OWU0LDE1MDkyNDI0MDAsMTUyMTkzOTYwMCwxNTQwNjkyZTMsMTU1Mzk5NGUzLDE1NzIxNDE2MDAsMTU4NTQ0MzYwMCwxNjAzNTkxMjAwLDE2MTY4OTMyMDAsMTYzNTY0NTYwMCwxNjQ4MzQyODAwLDE2NjcwOTUyMDAsMTY3OTc5MjQwMCwxNjk4NTQ0ODAwLDE3MTE4NDY4MDAsMTcyOTk5NDQwMCwxNzQzMjk2NDAwLDE3NjE0NDRlMywxNzc0NzQ2ZTMsMTc5Mjg5MzYwMCwxODA2MTk1NjAwLDE4MjQ5NDhlMywxODM3NjQ1MjAwLDE4NTYzOTc2MDAsMTg2OTA5NDgwMCwxODg3ODQ3MjAwLDE5MDExNDkyMDAsMTkxOTI5NjgwMCwxOTMyNTk4ODAwXSwKb2Zmc2V0OlstNzUsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDBdfSwiRXVyb3BlL0x1eGVtYm91cmciOnt0aW1lOlstMjA2OTcxMmUzLC0xNjkyNDkzMjAwLC0xNjgwNDc2NDAwLC0xNjYyMzM5NjAwLC0xNjUwMTVlNCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYxMjY1NmUzLC0xNjA0Mjc4ODAwLC0xNTg1NTE1NjAwLC0xNTc0MDM4ODAwLC0xNTUyMjU1MjAwLC0xNTM5OTk3MjAwLC0xNTIwNTQ2NDAwLC0xNTA3NTEwODAwLC0xNDkwNTY5MjAwLC0xNDczNjQyZTMsLTE0NTkxMTZlMywtMTQ0NDAwNjgwMCwtMTQyNzY3ZTQsLTE0MTE4NjZlMywtMTM5NjIyMDQwMCwtMTM3OTI5MzIwMCwtMTM2NDc3MDgwMCwtMTM0ODQ0ODQwMCwtMTMzMzMyMTIwMCwtMTMxNjM5NGUzLC0xMzAxMjY2ODAwLC0xMjg0MzM5NjAwLC0xMjY5ODFlNCwtMTI1MzQ4NGUzLC0xMjM4MzYwNDAwLC0xMjIxNDI5NjAwLC0xMjA2OTEwODAwLC0xMTkxMTg5NjAwLC0xMTc1NDYxMjAwLC0xMTYwMzQ0ODAwLC0xMTQzNDA2ODAwLC0xMTI3Njg1NjAwLC0xMTExOTU3MjAwLC0xMDk2ODQwODAwLC0xMDgwNTA3NjAwLC0xMDYzNTc2ODAwLC0xMDQ5MDU4ZTMsLTEwMzMzMzY4MDAsLTEwMTc2MDg0MDAsLTEwMDI0OTJlMywtOTg2MTU4ODAwLC05NjkyMjhlMywtOTUwNDc1NjAwLC05NDIwMTJlMywtOTM1MTgyODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTc5Nzk2MDAsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLC03NDU0NTJlMywtNzMzMjY2ZTMsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbMTQ3NiwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9NYWRyaWQiOnt0aW1lOlstMjE3NzQ1MzY4NCwtMTYzMTkyNjgwMCwtMTYxNjg4NmUzLC0xNjAxMTY4NDAwLC0xNTg1MzVlNCwtMTQ0MjQ1MTYwMCwtMTQyNzY3ZTQsLTEzNzkyOTMyMDAsLTEzNjQ3NzA4MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjEyMDAsLTEzMTYzOTA0MDAsLTEzMDEyNjY4MDAsLTEyODQzMzk2MDAsLTEyNjk4MTcyMDAsLTEwMjY5NTRlMywtMTAxNzYxNTYwMCwtMTAwMTg5OGUzLC05OTk0Nzg4MDAsLTk4NjA4MzIwMCwtOTU0MTExNjAwLC05NDAyMDg0MDAsLTg3MzA3NTYwMCwtODYyNjE0ZTMsLTg0MjgzNTYwMCwtODI4MzEzMjAwLC04MTEzODZlMywtNzk2ODYzNjAwLC03Nzk5MzY0MDAsLTc2NTQxNGUzLC03NDg0ODY4MDAsLTczMzk2NDQwMCwtNjUyMzIzNjAwLC02MzkwMTA4MDAsMTM1MTI2ZTMsMTUwMjUzMjAwLDE2NjU3NTYwMCwxODE3MDI4MDAsMTk2ODE1NjAwLDIxMjU0NzYwMCwyMjg4N2U0LDI0Mzk5NzIwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbLTg4NCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9NYWx0YSI6e3RpbWU6Wy0yNDAzNDc1MjAwLC0xNjkwNzYxNjAwLC0xNjgwNDhlNCwtMTY2NDc1NTIwMCwtMTY0ODk0NGUzLC0xNjM1MTJlNCwtMTYxNjg4OTYwMCwtMTYwNDI3NTIwMCwtMTU4NTUyNjQwMCwtMTU3MTAxMTIwMCwtMTU1NTI4NjQwMCwtOTMyNDI4ODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNTg0ODAwLC03OTgwNjZlMywtNzgxMDQ4ODAwLC03NjY3MWU0LC03NTA4OTUyMDAsLTczMzM1MjQwMCwtNzE5NDUyODAwLC03MDE5MWU0LC02ODkyMDU2MDAsLTY3MDQ1MzIwMCwtMTE0MDQ4ZTMsLTEwMzE2MTYwMCwtODE5OTM2MDAsLTcxNzA4NDAwLC01MDU0NGUzLC00MDI1ODgwMCwtMTg0ODk2MDAsLTgyMDQ0MDAsMTI5NmU0LDIzMjQ1MjAwLDQzODA0ODAwLDU0Njk0ODAwLDc1ODU5MjAwLDg2NzQ5MjAwLDEwMjM4NGUzLDExODExMjQwMCwxMzU3MzQ0MDAsMTQ4NTI1MjAwLDE2NzE5MTIwMCwxODA0OTY4MDAsMTk4NjQwODAwLDIxMTk0NjQwMCwyMzAwOTA0MDAsMjQzMzk2ZTMsMjYxNTRlNCwyNzQ4NDU2MDAsMjkyOTg5NjAwLDMwNjI5NTIwMCwzMjMzMTZlMywzMzgzNDk2MDAsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLApvZmZzZXQ6WzM0ODQsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9Nb3Njb3ciOnt0aW1lOlstMjg0MDE0MDgwMCwtMTY4ODI1NmUzLC0xNjU2ODFlNCwtMTY0MTM0MDgwMCwtMTYyNzk1NmUzLC0xNjE4NzAwNDAwLC0xNTk2NDE2NDAwLC0xNTkzODA0NTIxLC0xNTg5ODQ2NDAwLC0xNTQyNDE2NDAwLC0xNTM5NDc4ODAwLC0xNTI1MzA1NjAwLC0xNTIyNzEzNjAwLC0xNDkxMTc3NjAwLC0xMjQ3NTI5NjAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw2OTU3ODY0MDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTQxNDI4ODgwMCwxOTI1MDAyODAwXSxvZmZzZXQ6WzkwMTcsOTAxNyw5MDc5LDEyNjc5LDkwNzksMTYyNzksMTI2NzksMTYyNzksMTQ0MDAsMTA4MDAsMTQ0MDAsMThlMywxNDQwMCwxMDgwMCw3MjAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDEwODAwLDcyMDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDBdfSwiRXVyb3BlL09zbG8iOnsKdGltZTpbLTIzNjY3NTUyMDAsLTE2OTE4ODEyMDAsLTE2ODA1NjY0MDAsLTkyNzUwNzYwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjUzMjA0MDAsLTM0MDg0MDgwMCwtMzI0NTA3NjAwLC0zMDg3ODY0MDAsLTI5MzA1OGUzLC0yNzczMzY4MDAsLTI2MTYwODQwMCwtMjQ1ODg3MjAwLC0yMzAxNTg4MDAsLTIxNDQzNzYwMCwtMTk4NzA5MjAwLC0xODI5ODhlMywtMTY2NjU0ODAwLC0xNDc5MDk2MDAsLTEzNTIwNTIwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMjU4MCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9QYXJpcyI6ewp0aW1lOlstMjQ4NjU5MmUzLC0xODU1OTU4NDAwLC0xNjg5ODE0ODAwLC0xNjgwMzkzNjAwLC0xNjY1MzYzNjAwLC0xNjQ4MzM5MjAwLC0xNjM1MTIzNjAwLC0xNjE2ODg5NjAwLC0xNjA0Mjc4ODAwLC0xNTg1NDRlNCwtMTU3NDAzODgwMCwtMTU1MjI2MjQwMCwtMTUzOTk5NzIwMCwtMTUyMDU1MzYwMCwtMTUwNzUxMDgwMCwtMTQ5MDU3MjgwMCwtMTQ3MDYxOGUzLC0xNDU5MTIzMjAwLC0xNDQ0MDA2ODAwLC0xNDI3NjczNjAwLC0xNDExOTUyNDAwLC0xMzk2MjI0ZTMsLTEzNzkyOTMyMDAsLTEzNjQ3NzQ0MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjQ4MDAsLTEzMTYzOTRlMywtMTMwMTI3MDQwMCwtMTI4NDMzOTYwMCwtMTI2OTgyMDgwMCwtMTI1MzQ5NDgwMCwtMTIzODM3MTIwMCwtMTIyMTQ0MDQwMCwtMTIwNjkyMTYwMCwtMTE5MTIwMDQwMCwtMTE3NTQ3MmUzLC0xMTYwMzU1NjAwLC0xMTQzNDE3NjAwLC0xMTI3Njk2NDAwLC0xMTExOTY4ZTMsLTEwOTY4NTE2MDAsLTEwODA1MTg0MDAsLTEwNjM1ODc2MDAsLTEwNDkwNjg4MDAsLTEwMzMzNDc2MDAsLTEwMTc2MTkyMDAsLTEwMDI1MDI4MDAsLTk4NjE2OTYwMCwtOTY5MjM4ODAwLC05NTA0ODY0MDAsLTk0MjAxMmUzLC05MzI0MzI0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTgwMDA2NGUzLC03OTYyNTg4MDAsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLDE5NjgyMjgwMCwyMTI1NDc2MDAsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols1NjEsNTYxLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL1ByYWd1ZSI6ewp0aW1lOlstMzc4NjgyNTYwMCwtMjQ2OTM5ODQwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC05Mzg5MDE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzY1MzIwNDAwLC03NDY1NzUyMDAsLTczMzM1MjQwMCwtNzI4NTE0ZTMsLTcyMTI2ZTQsLTcxNjQyMTYwMCwtNzAxOTAyODAwLC02ODQ5NzJlMywtNjcwNDUzMjAwLC02NTQyMTM2MDAsLTYzOTAwMzYwMCwyOTE3OGU0LDMwNzUwODQwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMzQ2NCwzNDY0LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCwwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9SaWdhIjp7CnRpbWU6Wy0yODQwMTQwODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC0xNjAxNjc2ZTMsLTE1OTcyNjZlMywtMTM3NzMwMjQwMCwtOTI4MDIyNDAwLC04OTk1MTA0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc5NTgzMDQwMCwzNTQ5MzEyMDAsMzcwNzQyNDAwLDM4NjQ2NzIwMCw0MDIyNzg0MDAsNDE4MDAzMjAwLDQzMzgxNDQwMCw0NDk2MjU2MDAsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0Mzk2NmUzLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk4NTQ4OTIwMCwxMDA0MjQxNjAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1Nzk0LDU3OTQsOTM5NCw1Nzk0LDkzOTQsNTc5NCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJFdXJvcGUvUm9tZSI6ewp0aW1lOlstMzI1MjA5NmUzLC0yNDAzNTYyMjA0LC0xNjkwNzYxNjAwLC0xNjgwNDhlNCwtMTY2NDc1NTIwMCwtMTY0ODk0NGUzLC0xNjM1MTJlNCwtMTYxNjg4OTYwMCwtMTYwNDI3NTIwMCwtMTU4NTUyNjQwMCwtMTU3MTAxMTIwMCwtMTU1NTI4NjQwMCwtOTMyNDI4ODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTgwNjZlMywtNzgxMDQ4ODAwLC03NjY3MWU0LC03NTA4OTUyMDAsLTczMzM1MjQwMCwtNzE5NDUyODAwLC03MDE5MWU0LC02ODkyMDU2MDAsLTY3MDQ1MzIwMCwtMTE0MDQ4ZTMsLTEwMzE2MTYwMCwtODE5OTM2MDAsLTcxNzA4NDAwLC01MDU0NGUzLC00MDI1ODgwMCwtMTg0ODk2MDAsLTgyMDQ0MDAsMTI5NmU0LDIzMjQ1MjAwLDQzODA0ODAwLDU0Njk0ODAwLDc1ODU5MjAwLDg2NzQ5MjAwLDEwNzkxMzYwMCwxMTgxOTg4MDAsMTM4NzU4NDAwLDE0OTY0ODQwMCwxNzA4MTI4MDAsMTgxMDk4ZTMsMjAyMjYyNDAwLDIxMjU0NzYwMCwyMzMxMDcyMDAsMjQzOTk3MjAwLDI2NTE2MTYwMCwyNzYwNTE2MDAsMjk2NjExMjAwLDMwNzUwMTIwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMjk5NiwyOTk2LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvU29maWEiOnsKdGltZTpbLTI4NDAxNDA4MDAsLTIzNjk1MmU0LC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDUyMDAsMjkxNzY5MjAwLDMwNzU4NzYwMCwzMjM4MjM2MDAsMzM5MDM3MjAwLDM1NTI3MzIwMCwzNzA0MDRlMywzODY3MjI4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM3NzYwMCw2ODYxMDI0MDAsNzAxODI3MjAwLDcxNzU1MmUzLDczMzI3NjgwMCw3NDkwMDE2MDAsNzY0NzI2NDAwLDc4MDQ1MTIwMCw3OTYxNzZlMyw4MTE5MDA4MDAsODI4MjMwNDAwLDg0NjM3NDQwMCw4NTk2OTA4MDAsODc3ODM4NDAwLDg5MTE0MDQwMCw5MDkyODhlMyw5MjI1OWU0LDk0MTM0MjQwMCw5NTQwMzk2MDAsOTcyNzkyZTMsOTg1NDg5MjAwLDEwMDQyNDE2MDAsMTAxNzU0MzYwMCwxMDM1NjkxMjAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzU1OTYsNzAxNiw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL1N0b2NraG9sbSI6e3RpbWU6Wy0yODcxNjc2ODAwLC0yMjA4OTg4ODAwLC0xNjkyNDkzMjAwLC0xNjgwNDc2NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbNDMzMiwzNjE0LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9UYWxsaW5uIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE2MzgzMTY4MDAsLTE2MzIwMDI0MDAsLTE2MTg2OTMyMDAsLTE1OTM4MjA4MDAsLTE1MzU5MzI4MDAsLTkyNzkzNmUzLC04OTI5NDRlMywtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk3NjQ0ODAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1OTQwLDU5NDAsMzYwMCw3MjAwLDM2MDAsNTk0MCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwXX0sIkV1cm9wZS9WaWVubmEiOnsKdGltZTpbLTI0MjIwNTEyMDAsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTU2OTcwOGUzLC0xNTU1Nzk0ZTMsLTkzODkwMTYwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03ODAxODEyMDAsLTc0ODQ3NmUzLC03MzMyNjZlMywtNzE3NjMxMjAwLC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsMzIzODI3MjAwLDMzODk0NzIwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlszOTIxLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvVmlsbml1cyI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTY3MjUzMTIwMCwtMTU4NTA5NDQwMCwtMTU2MTI0OGUzLC0xNTUzNTU4NDAwLC05MjgxOTUyMDAsLTkwMDExNTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtODAyMTM3NjAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTQwNDAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzYwNzYsNTA0MCw1NzM2LDM2MDAsNzIwMCwzNjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCw3MjAwLDM2MDAsNzIwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL1dhcnNhdyI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTcxNzAyNzIwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC0xNjAwNDY2NDAwLC0xNTg3MTU3MjAwLC0xNTAxNzE4NDAwLC05MzE3MzA0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5NjYwMDgwMCwtNzc4NzIzMjAwLC03NjI2NTI4MDAsLTc0ODQ4MzIwMCwtNzMzMjY2ZTMsLTcxNTIxMmUzLC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsLTY1NDEyNzIwMCwtNjM5MDAzNjAwLC0zOTcwOTA4MDAsLTM4NjgwNTYwMCwtMzcxMDg0NDAwLC0zNTUzNTZlMywtMzM0MTkxNjAwLC0zMjMzMDE2MDAsLTMwNzU4MDQwMCwtMjkxODUyZTMsLTI3MTI5MjQwMCwtMjYwNDAyNDAwLC0yMzk4NDI4MDAsLTIyODk1MjgwMCwtMjA4MzkzMjAwLC0xOTc1MDMyMDAsLTE3NjMzODgwMCwtMTY2MDUzNjAwLDIyODg3NzIwMCwyNDQwMDA4MDAsMjYwMzI2ODAwLDI3NjA1NTIwMCwyOTE3NzY0MDAsMzA3NTA0ODAwLDMyMzgzMDgwMCwzMzg5NTQ0MDAsMzU0Njc1NjAwLDM3MDQwNGUzLDM4NjEyNTIwMCw0MDE4NTM2MDAsNDE3NTc0ODAwLDQzMzMwMzIwMCw0NDkwMjQ0MDAsNDY1MzU3NjAwLDQ4MTA3ODgwMCw0OTY4MDcyMDAsNTEyNTI4NDAwLDUyODI1NjgwMCw1NDM5NzhlMyw1NTk3MDY0MDAsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols1MDQwLDUwNDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsNzIwMCwxMDgwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9aYWdyZWIiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTkwNTgyMTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjY2MTY0MDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlszODMyLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9adXJpY2giOnt0aW1lOlstMzY3NTE5NjgwMCwtMjM4NTI0NDgwMCwtOTA0NDMxNjAwLC04OTExMjI0MDAsLTg3Mjk4MmUzLC04NTk2NzI4MDAsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLApvZmZzZXQ6WzIwNDgsMTc4NiwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJQYWNpZmljL0F1Y2tsYW5kIjp7dGltZTpbLTMxOTIzOTM2MDAsLTEzMzAyOTM2MDAsLTEzMjAwMTJlMywtMTMwMDY1ODQwMCwtMTI4NzM1MjgwMCwtMTI2OTIwODgwMCwtMTI1NTkwMzIwMCwtMTIzNzc1OTIwMCwtMTIyNDQ1MzYwMCwtMTIwNjMwOTYwMCwtMTE5MjM5OTIwMCwtMTE3NDg2ZTQsLTExNjA5NDk2MDAsLTExNDM0MTA0MDAsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTkyMzI2MzIwMCwtNzU3MzgyNDAwLDE1MjY3NmUzLDE2MjM1NjQwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NDMxOGUzLDQwNDg3NzYwMCw0MTU3Njc2MDAsNDM2MzI3MjAwLDQ0NzIxNzIwMCw0Njc3NzY4MDAsNDc4NjY2ODAwLDQ5OTIyNjQwMCw1MTAxMTY0MDAsNTMwNjc2ZTMsNTQxNTY2ZTMsNTYyMTI1NjAwLDU3MzYyMDQwMCw1OTQxOGU0LDYwNTA3ZTQsNjIzODE1MjAwLDYzNzcyOTIwMCw2NTUyNjQ4MDAsNjY5MTc4ODAwLDY4NjcxNDQwMCw3MDA2Mjg0MDAsNzE4MTY0ZTMsNzMyNjgyODAwLDc0OTYxMzYwMCw3NjQxMzI0MDAsNzgxMDYzMjAwLDc5NTU4MmUzLDgxMjUxMjgwMCw4MjcwMzE2MDAsODQ0NTY3MjAwLDg1ODQ4MTIwMCw4NzYwMTY4MDAsODg5OTMwODAwLDkwNzQ2NjQwMCw5MjE5ODUyMDAsOTM4OTE2ZTMsOTUzNDM0ODAwLDk3MDM2NTYwMCw5ODQ4ODQ0MDAsMTAwMjQyZTQsMTAxNjMzNGUzLDEwMzM4Njk2MDAsMTA0Nzc4MzYwMCwxMDY1MzE5MjAwLDEwNzk4MzhlMywxMDk2NzY4ODAwLDExMTEyODc2MDAsMTEyODIxODQwMCwxMTQyNzM3MjAwLDExNTk2NjhlMywxMTc0MTg2ODAwLDExOTExMTc2MDAsMTIwNzQ1MDgwMCwxMjIyNTY3MjAwLDEyMzg5MDA0MDAsMTI1NDAxNjgwMCwxMjcwMzVlNCwxMjg1NDY2NDAwLDEzMDE3OTk2MDAsMTMxNjkxNmUzLDEzMzMyNDkyMDAsMTM0ODk3MDQwMCwxMzY1MzAzNjAwLDEzODA0MmU0LDEzOTY3NTMyMDAsMTQxMTg2OTYwMCwxNDI4MjAyODAwLDE0NDMzMTkyMDAsMTQ1OTY1MjQwMCwxNDc0NzY4ODAwLDE0OTExMDJlMywxNTA2MjE4NDAwLDE1MjI1NTE2MDAsMTUzODI3MjgwMCwxNTU0NjA2ZTMsMTU2OTcyMjQwMCwxNTg2MDU1NjAwLDE2MDExNzJlMywxNjE3NTA1MjAwLDE2MzI2MjE2MDAsMTY0ODk1NDgwMCwxNjY0MDcxMjAwLDE2ODA0MDQ0MDAsMTY5NTUyMDgwMCwxNzEyNDU4ODAwLDE3Mjc1NzUyMDAsMTc0MzkwODQwMCwxNzU5MDI0ODAwLDE3NzUzNThlMywxNzkwNDc0NDAwLDE4MDY4MDc2MDAsMTgyMTkyNGUzLDE4MzgyNTcyMDAsMTg1MzM3MzYwMCwxODY5NzA2ODAwLDE4ODU0MjhlMywxOTAxNzYxMjAwLDE5MTY4Nzc2MDAsMTkzMzIxMDgwMF0sb2Zmc2V0Ols0MTk0NCw0MTQwMCw0NWUzLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwXX0sIlBhY2lmaWMvQ2hhdGhhbSI6ewp0aW1lOlstMzE5MjM5MzYwMCwtNzU3MzgyNDAwLDE1MjY3ODcwMCwxNjIzNTkxMDAsMTgzNTIzNTAwLDE5NTAxODMwMCwyMTU1Nzc5MDAsMjI2NDY3OTAwLDI0NzAyNzUwMCwyNTc5MTc1MDAsMjc4NDc3MTAwLDI4OTM2NzEwMCwzMDk5MjY3MDAsMzIwODE2NzAwLDM0MTM3NjMwMCwzNTIyNjYzMDAsMzcyODI1OTAwLDM4NDMyMDcwMCw0MDQ4ODAzMDAsNDE1NzcwMzAwLDQzNjMyOTkwMCw0NDcyMTk5MDAsNDY3Nzc5NTAwLDQ3ODY2OTUwMCw0OTkyMjkxMDAsNTEwMTE5MTAwLDUzMDY3ODcwMCw1NDE1Njg3MDAsNTYyMTI4MzAwLDU3MzYyMzEwMCw1OTQxODI3MDAsNjA1MDcyNzAwLDYyMzgxNzkwMCw2Mzc3MzE5MDAsNjU1MjY3NTAwLDY2OTE4MTUwMCw2ODY3MTcxMDAsNzAwNjMxMTAwLDcxODE2NjcwMCw3MzI2ODU1MDAsNzQ5NjE2MzAwLDc2NDEzNTEwMCw3ODEwNjU5MDAsNzk1NTg0NzAwLDgxMjUxNTUwMCw4MjcwMzQzMDAsODQ0NTY5OTAwLDg1ODQ4MzkwMCw4NzYwMTk1MDAsODg5OTMzNTAwLDkwNzQ2OTEwMCw5MjE5ODc5MDAsOTM4OTE4NzAwLDk1MzQzNzUwMCw5NzAzNjgzMDAsOTg0ODg3MTAwLDEwMDI0MjI3MDAsMTAxNjMzNjcwMCwxMDMzODcyMzAwLDEwNDc3ODYzMDAsMTA2NTMyMTkwMCwxMDc5ODQwNzAwLDEwOTY3NzE1MDAsMTExMTI5MDMwMCwxMTI4MjIxMTAwLDExNDI3Mzk5MDAsMTE1OTY3MDcwMCwxMTc0MTg5NTAwLDExOTExMjAzMDAsMTIwNzQ1MzUwMCwxMjIyNTY5OTAwLDEyMzg5MDMxMDAsMTI1NDAxOTUwMCwxMjcwMzUyNzAwLDEyODU0NjkxMDAsMTMwMTgwMjMwMCwxMzE2OTE4NzAwLDEzMzMyNTE5MDAsMTM0ODk3MzEwMCwxMzY1MzA2MzAwLDEzODA0MjI3MDAsMTM5Njc1NTkwMCwxNDExODcyMzAwLDE0MjgyMDU1MDAsMTQ0MzMyMTkwMCwxNDU5NjU1MTAwLDE0NzQ3NzE1MDAsMTQ5MTEwNDcwMCwxNTA2MjIxMTAwLDE1MjI1NTQzMDAsMTUzODI3NTUwMCwxNTU0NjA4NzAwLDE1Njk3MjUxMDAsMTU4NjA1ODMwMCwxNjAxMTc0NzAwLDE2MTc1MDc5MDAsMTYzMjYyNDMwMCwxNjQ4OTU3NTAwLDE2NjQwNzM5MDAsMTY4MDQwNzEwMCwxNjk1NTIzNTAwLDE3MTI0NjE1MDAsMTcyNzU3NzkwMCwxNzQzOTExMTAwLDE3NTkwMjc1MDAsMTc3NTM2MDcwMCwxNzkwNDc3MTAwLDE4MDY4MTAzMDAsMTgyMTkyNjcwMCwxODM4MjU5OTAwLDE4NTMzNzYzMDAsMTg2OTcwOTUwMCwxODg1NDMwNzAwLDE5MDE3NjM5MDAsMTkxNjg4MDMwMCwxOTMzMjEzNTAwXSxvZmZzZXQ6WzQ0MDI4LDQ0MTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwXX0sIlBhY2lmaWMvRmFrYW9mbyI6e3RpbWU6Wy0yMTc3NDUyODAwLDEzMjUyMDMyMDAsMTkyNTAzODgwMF0sb2Zmc2V0OlstNDEwOTYsLTM5NjAwLDQ2ODAwXX0sIlBhY2lmaWMvSG9ub2x1bHUiOnt0aW1lOlstMjMzNDEzOTIwMCwtMTE1NzMyMDgwMCwtMTE1NTQ3MDQwMCwtODgwMjM2ZTMsLTc2OTQyOTgwMCwtNzY1NDEwNDAwLC03MTIxODhlMywxOTI0OTU2ZTNdLG9mZnNldDpbLTM3ODg2LC0zNzgwMCwtMzQyMDAsLTM3ODAwLC0zNDIwMCwtMzQyMDAsLTM3ODAwLC0zNmUzXX0sIlBhY2lmaWMvTm9yZm9sayI6e3RpbWU6Wy0yMTc3NDUyODAwLC01OTk2MTZlMywxNTIwNzEyMDAsMTYyOTYxMjAwLDE0NDM5MjRlMywxNTcwMzI3MjAwLDE1ODYwNTU2MDAsMTYwMTc3NjgwMCwxNjE3NTA1MjAwLDE2MzMyMjY0MDAsMTY0ODk1NDgwMCwxNjY0Njc2ZTMsMTY4MDQwNDQwMCwxNjk2MTI1NjAwLDE3MTI0NTg4MDAsMTcyODE4ZTQsMTc0MzkwODQwMCwxNzU5NjI5NjAwLDE3NzUzNThlMywxNzkxMDc5MjAwLDE4MDY4MDc2MDAsMTgyMjUyODgwMCwxODM4MjU3MjAwLDE4NTM5Nzg0MDAsMTg2OTcwNjgwMCwxODg2MDMyODAwLDE5MDE3NjEyMDAsMTkxNzQ4MjQwMCwxOTMzMjEwODAwXSxvZmZzZXQ6WzQwMzEyLDQwMzIwLDQxNDAwLDQ1ZTMsNDE0MDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDBdfSwiVVMvTW91bnRhaW4iOnsKdGltZTpbLTI3MTc2Njg3OTYsLTE2MzMyOTg0MDAsLTE2MTUxNTQ0MDAsLTE2MDE4NDg4MDAsLTE1ODM3MDQ4MDAsLTE1NzAzOTkyMDAsLTE1NTE2NTA0MDAsLTE1Mzg5NDk2MDAsLTE1MzQxMTEyMDAsLTg4MDIzNmUzLC03Njk0MTcyMDAsLTc2NTQxMDQwMCwtMTQ3OTA5NjAwLC0xMzE1OGU0LC0xMTY0NmU0LC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sb2Zmc2V0OlstMjUxOTYsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDBdfX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.144Z","timestamp":1785154591144,"http_version":"","security_state":"","security_info":null,"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://persimmontrades.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":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/56999.40625ab5294b3ee623fd.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.252Z","timestamp":1785154590252,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/56999.40625ab5294b3ee623fd.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b70-1bfe\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:20 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:17:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: d91d3ce0110ffc182aa59194ab6dee58\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":7166,"size_decoded":2610,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (7166), with no line terminators","md5":"a187d90617d30161645a6e132a5943e2","sha1":"2d61a1ffa4d1d7b814c1441fc10558c23b332fe0","sha256":"0dc94b40aaa0af0f0da9a8177da4892a49511dcc323f7d4392a80247095cbb3e","sha512":"dbe8ba1a51d000c63a58079ac58aae8b92b2a0e686ded1d087e92a7f9dea6b15d113ec30052d6184686e7b36c4e14b03a76ab75b0b813e509e8c547d75060874","ssdeep":"192:2jp4MopoU/PnVtjRbQxouDIISaHSjlJ7jNrCsrVm:yeFJf7Y","tlshash":"45e16911f19ca46996078a2c5391bd441234c78efbe67eeaad23f9104b8e3db5cf3149","first_seen":"2026-03-24T19:47:05.038828Z","last_seen":"2026-07-27T14:22:59.56328Z","times_seen":1513,"resource_available":false,"data":"LnR2LXNpdGUtd2lkZ2V0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9keS1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zaXRlLXdpZGdldDphZnRlciwudHYtc2l0ZS13aWRnZXQ6YmVmb3Jle2NsZWFyOmJvdGg7Y29udGVudDoiIjtkaXNwbGF5OnRhYmxlfS50di1zaXRlLXdpZGdldC0tYmdfbm9uZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCl9LnR2LXNpdGUtd2lkZ2V0LS1zY3JvbGxhYmxle292ZXJmbG93OmhpZGRlbn0udHYtc2l0ZS13aWRnZXQtLWZ1bGwtd2lkdGh7d2lkdGg6MTAwJX0udHYtc2l0ZS13aWRnZXRfX2JvZHksLnR2LXNpdGUtd2lkZ2V0X19mb290ZXIsLnR2LXNpdGUtd2lkZ2V0X19oZWFkLC50di1zaXRlLXdpZGdldF9fc2VwYXJhdG9ye21hcmdpbjoyMHB4IDA7cGFkZGluZzowIDIwcHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2l0ZS13aWRnZXRfX2JvZHksLnR2LXNpdGUtd2lkZ2V0X19mb290ZXIsLnR2LXNpdGUtd2lkZ2V0X19oZWFkLC50di1zaXRlLXdpZGdldF9fc2VwYXJhdG9ye3BhZGRpbmc6MCAxMnB4fX0udHYtc2l0ZS13aWRnZXRfX2JvZHktLXRhYnMtcGFkZGluZywudHYtc2l0ZS13aWRnZXRfX2Zvb3Rlci0tdGFicy1wYWRkaW5nLC50di1zaXRlLXdpZGdldF9faGVhZC0tdGFicy1wYWRkaW5nLC50di1zaXRlLXdpZGdldF9fc2VwYXJhdG9yLS10YWJzLXBhZGRpbmd7cGFkZGluZy10b3A6MTNweH0udHYtc2l0ZS13aWRnZXRfX2JhY2tncm91bmR7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0udHYtc2l0ZS13aWRnZXRfX2JhY2tncm91bmQtLTZtZntiYWNrZ3JvdW5kLWltYWdlOnVybCg2LW1vbnRocy1mcmVlLWJhY2tncm91bmQuYWI3NTM4NWM3NmZlMTRiN2U3ZmQuc3ZnKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNvdmVyfS50di1zaXRlLXdpZGdldF9fY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2l0ZS13aWRnZXRfX2NvbnRlbnQtLWNlbnRlcmVke3RleHQtYWxpZ246Y2VudGVyfS50di1zaXRlLXdpZGdldF9faGVhZHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zaXRlLXdpZGdldF9faGVhZC0tYm9yZGVyZWR7Ym9yZGVyLWJvdHRvbToycHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmctYm90dG9tOjIwcHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2l0ZS13aWRnZXRfX2hlYWQtLWJvcmRlcmVke3BhZGRpbmctYm90dG9tOjB9fS50di1zaXRlLXdpZGdldF9faGVhZDphZnRlcntjbGVhcjpib3RoO2NvbnRlbnQ6IiI7ZGlzcGxheTp0YWJsZX0udHYtc2l0ZS13aWRnZXRfX2JvZHktLXBhZGRpbmdfYm90dG9te3BhZGRpbmctYm90dG9tOjIwcHh9LnR2LXNpdGUtd2lkZ2V0X19ib2R5LS1wYWRkaW5nX3RvcHtwYWRkaW5nLXRvcDoyMHB4fS50di1zaXRlLXdpZGdldF9fYm9keS5pLWxvYWRpbmd7cG9pbnRlci1ldmVudHM6bm9uZX0udHYtc2l0ZS13aWRnZXRfX2JvZHkuaS1sb2FkaW5nPip7b3BhY2l0eTouNDt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNpdGUtd2lkZ2V0X19ib2R5LS10cmltbWVke21hcmdpbjowO3BhZGRpbmc6MH0udHYtc2l0ZS13aWRnZXRfX2JvZHktLXRyaW1tZWRfdmVydGljYWx7bWFyZ2luOjB9LnR2LXNpdGUtd2lkZ2V0X19ib2R5LS1jaGFydHtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTtoZWlnaHQ6NTMwcHg7bWFyZ2luOjA7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zaXRlLXdpZGdldF9fZm9vdGVyOmFmdGVye2NsZWFyOmJvdGg7Y29udGVudDoiIjtkaXNwbGF5OnRhYmxlfS50di1zaXRlLXdpZGdldF9fZm9vdGVyLS1ib3JkZXJlZHtib3JkZXItdG9wOjJweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTttYXJnaW4tdG9wOjA7cGFkZGluZy10b3A6MjBweH0udHYtc2l0ZS13aWRnZXRfX2FjdGlvbnN7dGV4dC1hbGlnbjplbmR9LnR2LXNpdGUtd2lkZ2V0X19hY3Rpb25zPip7bWFyZ2luLWlubGluZS1zdGFydDoxNXB4fS50di1zaXRlLXdpZGdldF9fYWN0aW9ucy0tY2VudGVyZWR7ZmxvYXQ6bm9uZTt0ZXh0LWFsaWduOmNlbnRlcn1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zaXRlLXdpZGdldF9fYWN0aW9uc3ttYXJnaW4tYm90dG9tOi0yMHB4fS50di1zaXRlLXdpZGdldF9fYWN0aW9ucz4qe21hcmdpbi1ib3R0b206MjBweH0udHYtc2l0ZS13aWRnZXRfX2FjdGlvbnMtLXRhYmxldF9tYXJnaW57bWFyZ2luLWJvdHRvbTowfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnR2LXNpdGUtd2lkZ2V0X19hY3Rpb25ze21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE1cHg7dGV4dC1hbGlnbjpzdGFydH19LnR2LXNpdGUtd2lkZ2V0X19oZWFkIC50di1zaXRlLXdpZGdldF9fYWN0aW9ucyAudHYtYnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotM3B4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNpdGUtd2lkZ2V0X19oZWFkIC50di1zaXRlLXdpZGdldF9fYWN0aW9ucyAudHYtYnV0dG9ue3RvcDowfX0udHYtc2l0ZS13aWRnZXRfX3RpdGxle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuNDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNpdGUtd2lkZ2V0X190aXRsZSBhLC50di1zaXRlLXdpZGdldF9fdGl0bGUgYTp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7ZmlsbDp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS13aWRnZXRfX3RpdGxlIGE6aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcil9fS50di1zaXRlLXdpZGdldF9fdGl0bGUgYTphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWFjdGl2ZSk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlKX0udHYtc2l0ZS13aWRnZXRfX3RpdGxlIGE6Zm9jdXN7b3V0bGluZTphdXRvO291dGxpbmUtb2Zmc2V0OjJweH0udHYtc2l0ZS13aWRnZXRfX3RpdGxlIGE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zaXRlLXdpZGdldF9fdGl0bGUgYTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6bm9uZX0udHYtc2l0ZS13aWRnZXRfX3RpdGxlOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS50di1zaXRlLXdpZGdldF9fdGl0bGUtLWJyYW5kZWR7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zaXRlLXdpZGdldF9fdGl0bGUtLWhhbGYtd2lkdGh7d2lkdGg6NTAlfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNpdGUtd2lkZ2V0X190aXRsZS0taGFsZi13aWR0aHt3aWR0aDphdXRvfX0udHYtc2l0ZS13aWRnZXRfX3RpdGxlLWluZm8taWNvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHg7dmVydGljYWwtYWxpZ246dGV4dC10b3A7d2lkdGg6MThweH0udHYtc2l0ZS13aWRnZXRfX3RpdGxlLWluZm8taWNvbiBzdmd7aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtmaWxsOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcil9LnR2LXNpdGUtd2lkZ2V0X19zdWJ0aXRsZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTttYXJnaW4tYm90dG9tOjVweDttYXJnaW4tdG9wOjZweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNpdGUtd2lkZ2V0X19zdWJ0aXRsZS0taGFsZi13aWR0aHt3aWR0aDo1MCV9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2l0ZS13aWRnZXRfX3N1YnRpdGxlLS1oYWxmLXdpZHRoe3dpZHRoOmF1dG99fS50di1zaXRlLXdpZGdldF9fc3VidGl0bGU6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnR2LXNpdGUtd2lkZ2V0X190YWJze2ZvbnQtc2l6ZToxNHB4O21hcmdpbi10b3A6MTBweH0udHYtc2l0ZS13aWRnZXRfX2FmdGVyLXRhYnMtY29udGFpbmVye3BhZGRpbmctdG9wOjE1cHh9LnR2LXNpdGUtd2lkZ2V0X19zY3JvbGwtd3JhcHBlcntib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnR2LXNpdGUtd2lkZ2V0X19zY3JvbGwtaW5uZXJ7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9LnR2LXNpdGUtd2lkZ2V0X19zY3JvbGwtaW5uZXIuaS1uby1zY3JvbGx7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNpdGUtd2lkZ2V0X19oZWlnaHRfZGVmYXVsdHtoZWlnaHQ6NDgwcHh9LnR2LXNpdGUtd2lkZ2V0X19oZWlnaHRfaW5jcmVhc2Vke2hlaWdodDo3MDBweH0udHYtc2l0ZS13aWRnZXRfX2hlaWdodF9ob3RsaXN0e2hlaWdodDoyNzVweH0udHYtc2l0ZS13aWRnZXRfX2hlaWdodF9ob3RsaXN0LS1pbnRlcmFjdGl2ZXtoZWlnaHQ6NDk1cHh9LnR2LXNpdGUtd2lkZ2V0X19uby1ob3J6LWluZGVudHttYXJnaW4taW5saW5lLWVuZDotMjBweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0yMHB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNpdGUtd2lkZ2V0X19uby1ob3J6LWluZGVudHttYXJnaW4taW5saW5lLWVuZDotMTJweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0xMnB4fX0udHYtc2l0ZS13aWRnZXRfX3Nob3ctbW9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7Ym90dG9tOjA7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEzcHg7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6Ljk3O3BhZGRpbmc6MjBweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2U7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnR2LXNpdGUtd2lkZ2V0X19zaG93LW1vcmUsLnR2LXNpdGUtd2lkZ2V0X19zaG93LW1vcmU6dmlzaXRlZHtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zaXRlLXdpZGdldF9fc2hvdy1tb3JlOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcik7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktaG92ZXIpfX0udHYtc2l0ZS13aWRnZXRfX3Nob3ctbW9yZTphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWFjdGl2ZSk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlKX0udHYtc2l0ZS13aWRnZXRfX3Nob3ctbW9yZTpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zaXRlLXdpZGdldF9fc2hvdy1tb3JlOmZvY3VzLXZpc2libGV7b3V0bGluZTphdXRvO291dGxpbmUtb2Zmc2V0OjJweH0udHYtc2l0ZS13aWRnZXRfX3Nob3ctbW9yZTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6bm9uZX0udHYtc2l0ZS13aWRnZXRfX3Nob3ctbW9yZS0tdGVjaHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2l0ZS13aWRnZXQtLWRhcmt7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKX0udHYtc2l0ZS13aWRnZXRfX2hlYWQtLWRhcmt7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9LnR2LXNpdGUtd2lkZ2V0X190aXRsZS0tZGFya3tjb2xvcjojZmZmfS50di1zaXRlLXdpZGdldF9fYm9keS0tZGFyaywudHYtc2l0ZS13aWRnZXRfX2Zvb3Rlci0tZGFya3tjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKX0udHYtc2l0ZS13aWRnZXRfX2Zvb3Rlci0tZGFya3tib3JkZXItY29sb3I6I2ZmZmZmZjFhfS50di1zaXRlLXdpZGdldF9fdGl0bGUtaW5saW5lLXNlbGVjdC13cmFwcGVye2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZTptZWRpdW07Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6LTNweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNpdGUtd2lkZ2V0X19ob3RsaXN0LW9wdGlvbi10aXRsZXttYXJnaW4taW5saW5lLXN0YXJ0OjVweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LXRyYW5zZm9ybTpub25lO3RvcDoxcHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1zaXRlLXdpZGdldF9fc2VsZWN0LWJ1dHRvbi5pLWRpc2FibGVke2N1cnNvcjpkZWZhdWx0O29wYWNpdHk6Ljd9LnR2LXNpdGUtd2lkZ2V0X19ob3RsaXN0LWV4Y2hhbmdlLS1zZWxlY3RlZHtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApfS50di1zaXRlLXdpZGdldF9fY2FsZW5kYXItZmlsdGVyLWljb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6aW5saW5lLWVuZDtoZWlnaHQ6MjVweH0udHYtc2l0ZS13aWRnZXRfX2NhbGVuZGFyLWZpbHRlci1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrO2hlaWdodDoyMHB4O21hcmdpbi10b3A6M3B4O3dpZHRoOjIwcHh9LnR2LXNpdGUtd2lkZ2V0X19pbXBvcnRhbmNlLXN3aXRjaGVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXg6bm9uZTtmbG9hdDppbmxpbmUtZW5kO2hlaWdodDoyNXB4O2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnR2LXNpdGUtd2lkZ2V0X19pbXBvcnRhbmNlLXN3aXRjaGVyLmktYWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKX0udHYtc2l0ZS13aWRnZXRfX3NlcGFyYXRvcjpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1kaXZpZGVyKTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweH0="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7278.738759ef0ac33469253b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.297Z","timestamp":1785154590297,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/7278.738759ef0ac33469253b.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-7592\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3c12ee6ed4faf4e5a850c8c9aa61f8aa\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":30098,"size_decoded":10551,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0b8a552598142ab8089cd94992779448","sha1":"87a17e3637b405af0a42d322fc032cfd1da668b2","sha256":"22e612835027b9e83688180a91ed31c88f1ccb25ae05dc6866015bd73cb709a8","sha512":"3117f337cfd3fac0235478fc1c3bed80263bf95c521e7d287c8d86eada785db4a298db00b8523d0c3f22c5bced964bb3c73d3b355fb4211325d32ddc24fdcb10","ssdeep":"768:FbBK1Dsf6MP7AAKZAlrHp4Czh1HBvJ+vmdv2cKWPUqz+1xKGDZwYzYAlFKVGjqtr:UsfDP7ADAzlRBvJ++dv2cKWPUqz+1xK9","tlshash":"52d2940ab26054a711db01db4077405bea3fa6e9a04185befa688cdd0b6ee4c3167b7d","first_seen":"2026-07-23T13:38:20.531806Z","last_seen":"2026-07-27T14:18:36.413596Z","times_seen":1302,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3Mjc4XSx7ODYwMDI1KHQpe3QuZXhwb3J0cz17cGFpcjoicGFpci14d0dzU1hSMCIseHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzOiJ4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMteHdHc1NYUjAiLHh4eHhzbWFsbDoieHh4eHNtYWxsLXh3R3NTWFIwIix4eHhzbWFsbDoieHh4c21hbGwteHdHc1NYUjAiLHh4c21hbGw6Inh4c21hbGwteHdHc1NYUjAiLHhzbWFsbDoieHNtYWxsLXh3R3NTWFIwIixzbWFsbDoic21hbGwteHdHc1NYUjAiLG1lZGl1bToibWVkaXVtLXh3R3NTWFIwIixsYXJnZToibGFyZ2UteHdHc1NYUjAiLHhsYXJnZToieGxhcmdlLXh3R3NTWFIwIix4eGxhcmdlOiJ4eGxhcmdlLXh3R3NTWFIwIix4eHhsYXJnZToieHh4bGFyZ2UteHdHc1NYUjAiLGxvZ286ImxvZ28teHdHc1NYUjAiLHNrZWxldG9uOiJza2VsZXRvbi14d0dzU1hSMCIsZW1wdHk6ImVtcHR5LXh3R3NTWFIwIn19LDE0MDAxNyh0KXt0LmV4cG9ydHM9e2xvZ286ImxvZ28tVkNOS3ViV3EiLGhpZGRlbjoiaGlkZGVuLVZDTkt1YldxIix4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjM6Inh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy1WQ05LdWJXcSIseHh4c21hbGw6Inh4eHNtYWxsLVZDTkt1YldxIix4eHNtYWxsOiJ4eHNtYWxsLVZDTkt1YldxIix4c21hbGw6InhzbWFsbC1WQ05LdWJXcSIsc21hbGw6InNtYWxsLVZDTkt1YldxIixtZWRpdW06Im1lZGl1bS1WQ05LdWJXcSIsbGFyZ2U6ImxhcmdlLVZDTkt1YldxIix4bGFyZ2U6InhsYXJnZS1WQ05LdWJXcSIseHhsYXJnZToieHhsYXJnZS1WQ05LdWJXcSIseHh4bGFyZ2U6Inh4eGxhcmdlLVZDTkt1YldxIixza2VsZXRvbjoic2tlbGV0b24tVkNOS3ViV3EiLGxldHRlcjoibGV0dGVyLVZDTkt1YldxIn19LDk3NTI4NSh0KXt0LmV4cG9ydHM9e3dyYXBwZXI6IndyYXBwZXItaGN0MnlKdksiLGFuaW1hdGVkOiJhbmltYXRlZC1oY3QyeUp2SyIscHVsc2F0aW9uOiJwdWxzYXRpb24taGN0MnlKdksifX0sMjM1NzI0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse01vZGlmaWVyczooKT0+cixoYXNoRnJvbUV2ZW50OigpPT5sLGlzTWFjS2V5Ym9hcmQ6KCk9Pm4sbW9kaWZpZXJzRnJvbUV2ZW50OigpPT5hfSk7dmFyIGksbz1zKDczODQ1OCk7IWZ1bmN0aW9uKHQpe3RbdC5LZXlDb2RlPTI1NV09IktleUNvZGUiLHRbdC5Db250cm9sPTI1Nl09IkNvbnRyb2wiLHRbdC5BbHQ9NTEyXT0iQWx0Iix0W3QuU2hpZnQ9MTAyNF09IlNoaWZ0Iix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KGl8fChpPXt9KSk7Y29uc3Qgbj1vLmlzTWFjfHxvLmlzSU9TO3ZhciByO2Z1bmN0aW9uIGEodCl7bGV0IGU9MDtyZXR1cm4gdC5zaGlmdEtleSYmKGUrPTEwMjQpLHQuYWx0S2V5JiYoZSs9NTEyKSx0LmN0cmxLZXkmJihlKz0yNTYpLHQubWV0YUtleSYmKGUrPTIwNDgpLGV9ZnVuY3Rpb24gbCh0KXtyZXR1cm4gYSh0KXx0LmtleUNvZGV9IWZ1bmN0aW9uKHQpe3RbdC5Ob25lPTBdPSJOb25lIix0W3QuQWx0PTUxMl09IkFsdCIsdFt0LlNoaWZ0PTEwMjRdPSJTaGlmdCIsdFt0Lk1vZD1uPzIwNDg6MjU2XT0iTW9kIix0W3QuQ29udHJvbD0yNTZdPSJDb250cm9sIix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KHJ8fChyPXt9KSk7Y29uc3QgaD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4Om4/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0sYz17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCB0PTE7dDw9MTY7dCsrKWhbdCsxMTFdPWBGJHt0fWAsY1t0KzExMV09YEYke3R9YH0sODM3ODIyKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldENpcmNsZUxvZ29BbnlIdG1sOigpPT5ufSk7dmFyIGk9cyg4ODQ3OTgpLG89cygxNTIxODIpO2Z1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybHM6ZSwuLi5zfT10O3JldHVybiAxPT09ZS5sZW5ndGg/KDAsaS5nZXRDaXJjbGVMb2dvSHRtbCkoe2xvZ29Vcmw6ZVswXSwuLi5zfSk6Mj09PWUubGVuZ3RoPygwLG8uZ2V0Q2lyY2xlTG9nb1BhaXJIdG1sKSh7cHJpbWFyeUxvZ29Vcmw6ZVswXSxzZWNvbmRhcnlMb2dvVXJsOmVbMV0sLi4uc30pOigwLGkuZ2V0Q2lyY2xlTG9nb0h0bWwpKHtsb2dvVXJsOnZvaWQgMCwuLi5zfSl9fSwxNTIxODIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0Q2lyY2xlTG9nb1BhaXJIdG1sOigpPT5vfSk7dmFyIGk9cyg2Mjc4NDgpO2Z1bmN0aW9uIG8odCl7Y29uc3R7cHJpbWFyeUxvZ29Vcmw6ZSxzZWNvbmRhcnlMb2dvVXJsOnMsc2l6ZTpvLGNsYXNzTmFtZTpyfT10O3JldHVybmA8c3BhbiBjbGFzcz0iJHsoMCxpLmdldEJsb2NrU3R5bGVDbGFzc2VzKShvLHIpfSI+XG5cdFx0XHQke24oe2xvZ29Vcmw6cyxzaXplOm99KX1cblx0XHRcdCR7bih7bG9nb1VybDplLHNpemU6b30pfVxuXHRcdDwvc3Bhbj5gfWZ1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybDplLHNpemU6c309dCxvPSgwLGkuZ2V0TG9nb1N0eWxlQ2xhc3NlcykocywyLEJvb2xlYW4oZSkpO3JldHVybiB2b2lkIDA9PT1lP2A8c3BhbiBjbGFzcz0iJHtvfSI+PC9zcGFuPmA6YDxpbWcgY2xhc3M9IiR7b30iIGNyb3Nzb3JpZ2luIHNyYz0iJHtlfSIgYWx0PSIiIC8+YH19LDYyNzg0OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRCbG9ja1N0eWxlQ2xhc3NlczooKT0+bCxnZXRMb2dvU3R5bGVDbGFzc2VzOigpPT5ofSk7dmFyIGk9cyg5MTQ0ODcpLG89cy5uKGkpLG49cygxMzY0KSxyPXMoODYwMDI1KSxhPXMubihyKTtmdW5jdGlvbiBsKHQsZSl7CnJldHVybiBvKCkoYSgpLnBhaXIsYSgpW3RdLGUpfWZ1bmN0aW9uIGgodCxlPTIscz0hMCl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0sYSgpLnNrZWxldG9uLG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLCFzJiZhKCkuZW1wdHksMT09PWUmJm8oKShuLnNrZWxldG9uVGhlbWUuYW5pbWF0ZWQpKX19LDg4NDc5OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRDaXJjbGVMb2dvSHRtbDooKT0+b30pO3ZhciBpPXMoNzk0MTg3KTtzKDE0MDAxNyk7ZnVuY3Rpb24gbyh0KXtjb25zdCBlPSgwLGkuZ2V0U3R5bGVDbGFzc2VzKSh0LnNpemUsMix0LmNsYXNzTmFtZSk7cmV0dXJuKDAsaS5pc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHMpKHQpP2A8aW1nIGNsYXNzPSIke2V9IiBjcm9zc29yaWdpbiBzcmM9IiR7dC5sb2dvVXJsfSIgYWx0PSIiPmA6YDxzcGFuIGNsYXNzPSIke2V9Ij4ke3QucGxhY2Vob2xkZXJMZXR0ZXJ8fCIifTwvc3Bhbj5gfX0sNzk0MTg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldFN0eWxlQ2xhc3NlczooKT0+bCxpc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHM6KCk9Pmh9KTt2YXIgaT1zKDkxNDQ4Nyksbz1zLm4oaSksbj1zKDEzNjQpLHI9cygxNDAwMTcpLGE9cy5uKHIpO2Z1bmN0aW9uIGwodCxlPTIscyl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0scywwPT09ZXx8MT09PWU/bygpKG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLGEoKS5za2VsZXRvbik6YSgpLmxldHRlciwxPT09ZSYmbi5za2VsZXRvblRoZW1lLmFuaW1hdGVkKX1mdW5jdGlvbiBoKHQpe3JldHVybiJsb2dvVXJsImluIHQmJm51bGwhPT10LmxvZ29VcmwmJnZvaWQgMCE9PXQubG9nb1VybCYmMCE9PXQubG9nb1VybC5sZW5ndGh9fSwxMzY0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3NrZWxldG9uVGhlbWU6KCk9Pm99KTt2YXIgaT1zKDk3NTI4NSk7Y29uc3Qgbz1zLm4oaSkoKX0sMjE2MTEodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe2lmKG51bGwhPXQmJiJib29sZWFuIiE9dHlwZW9mIHQmJiFpc05hTihOdW1iZXIodCkpKXJldHVybiBOdW1iZXIodCl9cy5kKGUse3RvTnVtYmVyT3JVbmRlZmluZWQ6KCk9Pml9KX0sNTE4NzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3QucHJldmVudERlZmF1bHQoKX1zLmQoZSx7cHJldmVudERlZmF1bHQ6KCk9PmkscHJldmVudERlZmF1bHRGb3JDb250ZXh0TWVudTooKT0+bn0pO2NvbnN0IG89WyJpbnB1dDpub3QoW3R5cGVdKSIsJ2lucHV0W3R5cGU9InRleHQiXScsJ2lucHV0W3R5cGU9ImVtYWlsIl0nLCdpbnB1dFt0eXBlPSJwYXNzd29yZCJdJywnaW5wdXRbdHlwZT0ic2VhcmNoIl0nLCdpbnB1dFt0eXBlPSJudW1iZXIiXScsJ2lucHV0W3R5cGU9InVybCJdJywidGV4dGFyZWEiLCJhW2hyZWZdIiwnKltjb250ZW50ZWRpdGFibGU9InRydWUiXScsIltkYXRhLWFsbG93LWNvbnRleHQtbWVudV0iXTtmdW5jdGlvbiBuKHQpe2NvbnN0IGU9dC50YXJnZXQ7ZSYmIWUuY2xvc2VzdChvLmpvaW4oIiwgIikpJiZ0LnByZXZlbnREZWZhdWx0KCl9fSwxMjUyMTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UGVyY2VudGFnZUZvcm1hdHRlcjooKT0+bn0pO3ZhciBpPXMoMTE1MjkzKSxvPXMoNzU1NjI3KTtjbGFzcyBuIGV4dGVuZHMgby5QcmljZUZvcm1hdHRlcntjb25zdHJ1Y3Rvcih0PXt9KXt2b2lkIDAhPT10LmRlY2ltYWxQbGFjZXMmJih0LnByaWNlU2NhbGU9TWF0aC5wb3coMTAsdC5kZWNpbWFsUGxhY2VzKSksc3VwZXIodCksdGhpcy50eXBlPSJwZXJjZW50YWdlIn1zdGF0ZSgpe3JldHVybnsuLi5zdXBlci5zdGF0ZSgpLHBlcmNlbnQ6ITB9fXBhcnNlKHQsZSl7cmV0dXJuIHQ9dC5yZXBsYWNlKCIlIiwiIiksc3VwZXIucGFyc2UodCxlKX1mb3JtYXQodCxlPXt9KXtjb25zdHt1c2VSdGxGb3JtYXQ6cz0hMH09ZSxvPXN1cGVyLmZvcm1hdCh0LHsuLi5lLHVzZVJ0bEZvcm1hdDohMX0pKyIlIjtyZXR1cm4gcz8oMCxpLmZvcmNlTFRSU3RyKShvKTpvfXN0YXRpYyBzZXJpYWxpemUodCl7cmV0dXJuIHQuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUodCl7cmV0dXJuIG5ldyBuKHQpfX19LDk4NDM3Nih0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtQTEFDRV9IT0xERVI6KCk9PnIsVm9sdW1lRm9ybWF0dGVyOigpPT5ofSk7dmFyIGk9cyg3ODMyNTQpLG89cyg2MDE4NDEpLG49cygxMDcwNDUpO2NvbnN0IHI9Ii0tLSIsYT1be3ZhbHVlOjMsbGV0dGVyOiJLIn0se3ZhbHVlOjYsbGV0dGVyOiJNIn0se3ZhbHVlOjksbGV0dGVyOiJCIn0se3ZhbHVlOjEyLGxldHRlcjoiVCJ9XTtmdW5jdGlvbiBsKHQsZSl7Y29uc3Qgcz10LWU7cmV0dXJuIGEuZmluZCgodD0+dC52YWx1ZT49cykpPz9hW2EubGVuZ3RoLTFdfWNsYXNzIGh7Y29uc3RydWN0b3IodD17fSl7dGhpcy50eXBlPSJ2b2x1bWUiO2NvbnN0e3ByZWNpc2lvbjplPTAsbWluUHJlY2lzaW9uOnM9MCxkaW1lbnNpb25QcmVjaXNpb246aT0yLGRpbWVuc2lvbk1pblByZWNpc2lvbjpvPTAsc2lnbmlmaWNhbnREaWdpdHM6cj0zLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLG5vRXhwb25lbnRpYWxGb3JtOmwscmVtb3ZlU3BhY2VCZWZvcmVEaW1lbnNpb246aH09dDt0aGlzLl9wcmVjaXNpb249ZSx0aGlzLl9mb3JtYXR0ZXI9bmV3IG4uTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX3ByZWNpc2lvbixtaW5QcmVjaXNpb246cyxub0V4cG9uZW50aWFsRm9ybTpsfSksdGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uPWksdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyPW5ldyBuLk51bWVyaWNGb3JtYXR0ZXIoe2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLHByZWNpc2lvbjp0aGlzLl9kaW1lbnNpb25QcmVjaXNpb24sbWluUHJlY2lzaW9uOm8sbm9FeHBvbmVudGlhbEZvcm06bH0pLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzPXIsdGhpcy5fZnJhY3Rpb25hbFZhbHVlcz12b2lkIDAhPT1lJiZlPjAsdGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb249aD8iIjoi4oCvIix0aGlzLl9vcHRpb25zPXR9c3RhdGUoKXsKY29uc3R7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OnQsLi4uZX09dGhpcy5fb3B0aW9ucztyZXR1cm4gZX1mb3JtYXQodCxlKXtpZighKDAsby5pc051bWJlcikodCkpcmV0dXJuIHI7aWYoTWF0aC5hYnModCk+PTFlMTAwKXJldHVybiBpLnQobnVsbCx7Y29udGV4dDoidm9sdW1lLWZvcm1hdHRlciJ9LHMoNTcwNjIpKTtsZXQgbj0iIjtNYXRoLmFicyh0KTwxJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbikpLHQ8MD9uPSLiiJIiOnQ+MCYmZT8uc2lnblBvc2l0aXZlJiYobj0iKyIpLHQ9TWF0aC5hYnModCk7Y29uc3QgYT0hIShlPy5pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ/P3RoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0KTtsZXQgaCxjLG09TWF0aC5mbG9vcihNYXRoLmxvZzEwKHQpKSsxO2lmKG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbiksbT1NYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEpLG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzKWg9dGhpcy5fZm9ybWF0TnVtYmVyKHQsYSx0aGlzLl9mb3JtYXR0ZXIpO2Vsc2V7bGV0IGU9bChtLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKTtjb25zdCBzPU1hdGgucG93KDEwLGUudmFsdWUpO3Q9Kyh0L3MpLnRvRml4ZWQodGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uKSpzLGU9bChNYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEsdGhpcy5fc2lnbmlmaWNhbnREaWdpdHMpLGg9dGhpcy5fZm9ybWF0TnVtYmVyKHQvTWF0aC5wb3coMTAsZS52YWx1ZSksYSx0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXIpLGM9ZS5sZXR0ZXJ9cmV0dXJuIGM/YCR7bn0ke2h9JHt0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbn0ke2N9YDpgJHtufSR7aH1gfXBhcnNlKHQsZSl7aWYodD09PXIpcmV0dXJue2Vycm9yOiJub3QgYSBudW1iZXIiLHJlczohMSx2YWx1ZTpOYU59O2NvbnN0IHM9e0s6MWUzLE06MWU2LEI6MWU5LFQ6MWUxMn0saT0odD10LnJlcGxhY2UoIuKIkiIsIi0iKSkuc2xpY2UoLTEpO2lmKHMuaGFzT3duUHJvcGVydHkoaSkpe2NvbnN0IG49dGhpcy5fZm9ybWF0dGVyLnBhcnNlKHQuc2xpY2UoMCwtMSkudHJpbSgpLGUpLHI9bi5yZXM/bi52YWx1ZTpOYU47cmV0dXJuKDAsby5pc051bWJlcikocik/e3JlczohMCx2YWx1ZTpyKnNbaV19OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX17Y29uc3Qgcz10aGlzLl9mb3JtYXR0ZXIucGFyc2UodC50cmltKCksZSk7bGV0IGk9cy5yZXM/cy52YWx1ZTpOYU47cmV0dXJuLTA9PT1pJiYoaT0wKSwoMCxvLmlzTnVtYmVyKShpKT97cmVzOiEwLHZhbHVlOml9OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX19c3RhdGljIHNlcmlhbGl6ZSh0KXtyZXR1cm4gdC5zdGF0ZSgpfXN0YXRpYyBkZXNlcmlhbGl6ZSh0KXtyZXR1cm4gbmV3IGgodCl9X2Zvcm1hdE51bWJlcih0LGUscyl7aWYodGhpcy5fZnJhY3Rpb25hbFZhbHVlcyYmMCE9PXQpe2NvbnN0IGU9MTQtTWF0aC5jZWlsKE1hdGgubG9nMTAodCkpLHM9TWF0aC5wb3coMTAsZSk7dD1NYXRoLnJvdW5kKHQqcykvc31yZXR1cm4gcy5mb3JtYXQodCx7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmV9KX19fSw2NDE1OTModCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7ZGVjb2RlSFRNTEVudGl0aWVzOigpPT5sLGdldEZpcnN0U2VnbWVudE9yQ29kZVBvaW50U3RyaW5nOigpPT5jLGh0bWxFc2NhcGU6KCk9Pmh9KTtjb25zdCBpPS9bPCInJj5dL2csbz10PT5gJiMke3QuY2hhckNvZGVBdCgwKX07YCxuPXsiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInLCImYXBvczsiOiInIiwiJmFtcDsiOiImIiwiJiM2MDsiOiI8IiwiJiM2MjsiOiI+IiwiJiMzNDsiOiciJywiJiMzOTsiOiInIiwiJiMwMzk7IjoiJyIsIiYjMzg7IjoiJiJ9LHI9T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhuKS5tYXAoKChbdCxlXSk9Pih7W2VdOnR9KSkpKSxhPW5ldyBSZWdFeHAoT2JqZWN0LmtleXMobikuam9pbigifCIpLCJnIik7bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhyKS5qb2luKCJ8IiksImciKTtmdW5jdGlvbiBsKHQpe3JldHVybiB0LnJlcGxhY2UoYSwodD0+blt0XXx8dCkpfWZ1bmN0aW9uIGgodCl7cmV0dXJuIHQucmVwbGFjZShpLG8pfWZ1bmN0aW9uIGModCl7Y29uc3QgZT1JbnRsLlNlZ21lbnRlcjtpZihlKXtjb25zdCBzPW5ldyBlKHZvaWQgMCx7Z3JhbnVsYXJpdHk6ImdyYXBoZW1lIn0pLFt7c2VnbWVudDppfT17c2VnbWVudDpudWxsfV09cy5zZWdtZW50KHQpO3JldHVybiBpPy50b1VwcGVyQ2FzZSgpPz9udWxsfXtjb25zdCBlPXQuY29kZVBvaW50QXQoMCk7cmV0dXJuIGU/U3RyaW5nLmZyb21Db2RlUG9pbnQoZSkudG9VcHBlckNhc2UoKTpudWxsfX19LDM0NTE1MSh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtob3RLZXlEZXNlcmlhbGl6ZTooKT0+b30pO3ZhciBpPXMoNjQxNTkzKTtmdW5jdGlvbiBvKHQpe3JldHVybiBKU09OLnBhcnNlKCgwLGkuZGVjb2RlSFRNTEVudGl0aWVzKSh0KSl9fSw5ODYyNzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0TG9nb1VybHNIb29rOigpPT5yfSk7dmFyIGk9cyg2MDE4NDEpLG89cyg4NjIyMTMpO2NvbnN0IG49KDAsby5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gcih0LGUpe2xldCBzPSExO3JldHVybihyLGEsbCk9PntpZighcyYmKHIubG9nb3x8bCkpe3M9ITA7Y29uc3QgYT1yLmxvZ28/ZnVuY3Rpb24odCxlPW8uTG9nb1NpemUuTWVkaXVtKXtyZXR1cm4oInBhaXIiPT09dC5zdHlsZT9bdC5sb2dvaWQsdC5sb2dvaWQyXTpbdC5sb2dvaWRdKS5tYXAoKHQ9Pm4uZ2V0U3ltYm9sTG9nb1VybCh0LGUpKSkuZmlsdGVyKGkubm90TnVsbCl9KHIubG9nbyxlKTpbXTt0KGEpfX19fSwyODQ0ODQodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UXVvdGVUaWNrZXI6KCk9PmJ9KQo7dmFyIGk9cyg5NjQ0ODYpLG89cygyMjEwNjEpLG49cyg2MDE4NDEpLHI9cygxMjUyMTgpLGE9cyg4OTE3NzgpLGw9cyg3NTU2MjcpLGg9cyg5ODQzNzYpLGM9cyg1NjM5MTgpLG09cygzMDY5MCksdT1zKDUyODM5NiksZD1zKDExMzU2NyksXz1zKDE1OTUxMyksZz1zKDk3MzExOSkscD1zKDYwMjg3KSxmPXMoNzg2NzYwKSx4PXMoMTAxNzEyKTtjb25zdCB5PSgwLG8uZ2V0TG9nZ2VyKSgiUXVvdGVUaWNrZXIiKSxOPXthZGREZXNjcmlwdGlvblRpdGxlOiEwLGNoYW5nZURpcmVjdGlvbkRvd25DbGFzczoiZG93biIsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczoidXAiLGNoYW5nZURpcmVjdGlvbk5ldXRyYWxDbGFzczoibmV1dHJhbCIsY2hhbmdlSW5CcmFja2V0czohMSxjaGFuZ2VQZXJjZW50SW5CcmFja2V0czohMSxsYXN0UHJpY2VUaW1lSW5CcmFja2V0czohMCxsYXN0UmVsZWFzZURhdGVUaW1lSW5CcmFja2V0czohMCxydGNUaW1lSW5CcmFja2V0czohMCxjbGllbnROYW1lOiJxdW90ZS10aWNrZXIiLGRvbnREeWVQcmljZTohMSxmYWxsaW5nQmc6bnVsbCxncm93aW5nQmc6bnVsbCxsYXN0RmFsbGluZ0NsYXNzOiJmYWxsaW5nIixsYXN0R3Jvd2luZ0NsYXNzOiJncm93aW5nIixxdW90ZVNlc3Npb246bnVsbCxzaWduTmVnYXRpdmU6ITAsc2lnblBvc2l0aXZlOiExLGN1c3RvbVByaWNlRm9ybWF0dGVyOm51bGwsY3VzdG9tVGltZUZvcm1hdHRlcjpudWxsLHNlc3Npb25TdGF0dXNDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyIixkYXRhTW9kZUNsYXNzU3VmZml4OiItLWZvci10aWNrZXIiLHNob3dJbnZhbGlkU3ltYm9sU3RhdHVzOiExLGluZGljYXRvcnNUb29sdGlwVHlwZToiY3VzdG9tIixsYXN0UHJpY2VMYXN0Q2hhclN1cDohMSxsYXN0UHJpY2VIaWdobGlnaHREaWZmT25seTohMSxpbml0ZWRIb29rOnZvaWQgMCxzZXRTdGF0ZUhvb2s6dm9pZCAwLHBlcm1pc3Npb25EZW5pZWRIb29rOnZvaWQgMCxub1N1Y2hTeW1ib2xIb29rOnZvaWQgMH0sQz0vW0tNQlRdLztmdW5jdGlvbiBiKHQsZSxzPXt9KXt0aGlzLmVuYWJsZWQ9ITAsdGhpcy5fc3ltYm9sPXQsdGhpcy5fc3ltYm9sT3JpZ2luYWw9bnVsbCx0aGlzLl9vcHRpb25zPSgwLGkuZGVlcEV4dGVuZCkoe30sTixzKSwhMSE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiYhMCE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiZkZWxldGUgdGhpcy5fb3B0aW9ucy5zaWduTmVnYXRpdmUscy5jdXN0b21QcmljZUZvcm1hdHRlciYmKHRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyPXMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIpLHMuY3VzdG9tVGltZUZvcm1hdHRlciYmKHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5sYXN0UHJpY2V8fHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5ydGM/dGhpcy5fdGltZUZvcm1hdHRlcj1zLmN1c3RvbVRpbWVGb3JtYXR0ZXI6dGhpcy5fdGltZUZvcm1hdHRlcj17bGFzdFByaWNlOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIscnRjOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXJ9KSx0aGlzLl9wZXJjZW50Rm9ybWF0dGVyPW5ldyByLlBlcmNlbnRhZ2VGb3JtYXR0ZXIsdGhpcy5fZGVmYXVsdFByaWNlRm9ybWF0dGVyPW5ldyBsLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOjEwMH0pLHRoaXMuX3ByaWNlRm9ybWF0dGVyPXRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyfHx0aGlzLl9kZWZhdWx0UHJpY2VGb3JtYXR0ZXIsdGhpcy5fdm9sdW1lRm9ybWF0dGVyPW5ldyBoLlZvbHVtZUZvcm1hdHRlcih7cHJlY2lzaW9uOjJ9KSx0aGlzLl9jYWNoZT17fSx0aGlzLl9sYXN0UHJpY2U9bnVsbCx0aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQ9IiIsdGhpcy5fbGFzdE1pbk1vdmU9MCx0aGlzLl9lbGVtZW50cz17fSx0aGlzLl90ZXh0Tm9kZXM9e30sdGhpcy5fY2hhbmdlVm9sdW1lTGV0dGVyPXRoaXMuX2dldENoYW5nZVZvbHVtZUxldHRlckNhbGxiYWNrKCksdGhpcy5fc2V0RWxlbWVudHMoZSksdGhpcy5faGlnaGxpZ2h0ZXJzPXt9LHRoaXMuX2luaXRIaWdobGlnaHRlcnMoKSx0aGlzLl9vcHRpb25zLnNldFN0YXRlSG9vayYmdGhpcy5zZXRTdGF0ZUhvb2sodGhpcy5fb3B0aW9ucy5zZXRTdGF0ZUhvb2spLHRoaXMucXVvdGVTZXNzaW9uPXRoaXMuX29wdGlvbnMucXVvdGVTZXNzaW9ufHwoMCxfLmdldFF1b3RlU2Vzc2lvbkluc3RhbmNlKSgic2ltcGxlIiksdGhpcy5fcXVvdGVTZXNzaW9uRXZlbnRIYW5kbGVyPXRoaXMub25EYXRhLmJpbmQodGhpcyksdGhpcy5fY29ubmVjdFRpbWVvdXRJZD1zZXRUaW1lb3V0KHRoaXMuY29ubmVjdC5iaW5kKHRoaXMpLDApfWZ1bmN0aW9uIHYodCl7Y29uc3QgZT10LnNlYXJjaChDKSxzPWU+PTA/dC5zbGljZShlKToiIjtyZXR1cm5bZT4wP3Quc3Vic3RyaW5nKGUsMCk6MD09PWU/IiI6dCxzXX1mdW5jdGlvbiBTKHQsZSxzLGksbyl7dmFyIG4scj1udWxsO2Z1bmN0aW9uIGEoKXtpZihuJiYoY2xlYXJUaW1lb3V0KG4pLG49dm9pZCAwKSxzfHxlKWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuYmFja2dyb3VuZD0iIjtpZighc3x8IWUpZm9yKHI9MDtyPHQubGVuZ3RoO3IrKylpJiZ0W3JdLmNsYXNzTGlzdC5yZW1vdmUoaSksbyYmdFtyXS5jbGFzc0xpc3QucmVtb3ZlKG8pfXJldHVybntzaG93OmZ1bmN0aW9uKGwpe3ZhciBoPTA7aWYobCE9PXIpe2lmKG51bGwhPT1yJiZudWxsIT09bCYmKGg9bC1yKSxhKCksbj1zZXRUaW1lb3V0KGEsNzUwKSwwPGgpe2lmKGUpZm9yKHZhciBjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5zdHlsZS5iYWNrZ3JvdW5kPWU7ZWxzZSBpZihpKWZvcihjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5jbGFzc0xpc3QuYWRkKGkpfWVsc2UgaWYoaDwwKWlmKHMpZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLnN0eWxlLmJhY2tncm91bmQ9cztlbHNlIGlmKG8pZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLmNsYXNzTGlzdC5hZGQobyk7bnVsbCE9PWwmJihyPWwpfX0saGlkZTphfX1iLnByb3RvdHlwZS5fc2V0RWxlbWVudHM9ZnVuY3Rpb24odCl7dGhpcy5fY29udGFpbmVyPXQsCnRoaXMuX2VsZW1lbnRzLmNoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UiLCJzeW1ib2wtY2hhbmdlIl0pLHRoaXMuX2VsZW1lbnRzLmNoYW5nZURpcmVjdGlvbj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UtZGlyZWN0aW9uIiwic3ltYm9sLWNoYW5nZS1kaXJlY3Rpb24iXSksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlRGlyZWN0aW9uPXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5jaGFuZ2VQZXJjZW50PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWNoYW5nZS1wdCIsInN5bWJvbC1jaGFuZ2UtcHQiXSksdGhpcy5fZWxlbWVudHMuZGVzY3JpcHRpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtZGVzY3JpcHRpb24tbmFtZSIsInN5bWJvbC1kZXNjcmlwdGlvbi1uYW1lIl0pLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlIiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLXB0IiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1leHQtaHJzLWNsb3NlIiksdGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VEaXJlY3Rpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbmlnaHQtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZSIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZS1wdCIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1uaWdodC1jbG9zZSIpLHRoaXMuX2VsZW1lbnRzLmluZHVzdHJ5PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWluZHVzdHJ5Iiwic3ltYm9sLWluZHVzdHJ5Il0pLHRoaXMuX2VsZW1lbnRzLmxhc3Q9dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbGFzdCIsInN5bWJvbC1sYXN0Il0pLHRoaXMuX2VsZW1lbnRzLnNlY3Rvcj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zZWN0b3IiLCJzeW1ib2wtc2VjdG9yIl0pLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXM9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1zZXNzaW9uLXN0YXR1cyIpLHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zaG9ydC1uYW1lIiwic3ltYm9sLXNob3J0LW5hbWUiXSksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZT10aGlzLl9maW5kRWxlbWVudHModCwianMtZGF0YS1tb2RlIiksdGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWxhc3QtcGVyaW9kIiksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZS5mb3JFYWNoKCh0PT50LmNsYXNzTGlzdC5hZGQoImktaGlkZGVuIikpKSx0aGlzLl90ZXh0Tm9kZXMuY2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmNoYW5nZSksdGhpcy5fdGV4dE5vZGVzLmNoYW5nZVBlcmNlbnQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2UpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDbG9zZSksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlKSx0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2U9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSksdGhpcy5fdGV4dE5vZGVzLmxhc3Q9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubGFzdCksdGhpcy5fdGV4dE5vZGVzLm9wZW49dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtb3BlbiIpLHRoaXMuX3RleHROb2Rlcy5lcHM9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtZXBzIiksdGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcD10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1tYXJrZXQtY2FwIiksdGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wcmV2LWNsb3NlIiksdGhpcy5fdGV4dE5vZGVzLmRpdmlkZW5kcz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1kaXZpZGVuZHMiKSx0aGlzLl90ZXh0Tm9kZXMucHJpY2VFYXJuaW5ncz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wZSIpLHRoaXMuX3RleHROb2Rlcy52b2x1bWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtdm9sdW1lIiksdGhpcy5fdGV4dE5vZGVzLmhpZ2g9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtaGlnaCIpLHRoaXMuX3RleHROb2Rlcy5sb3c9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtbG93IiksCnRoaXMuX3RleHROb2Rlcy5jdXJyZW5jeT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1jdXJyZW5jeSIpLHRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxwLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubGFzdFJlbGVhc2VEYXRlPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxhc3QtcmVsZWFzZS1kYXRlIiksdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtcnRjLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubnRjVGltZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1udGMtdGltZSIpLHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQ9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VIaWdobGlnaHREaWZmT25seT90aGlzLl9lbGVtZW50cy5sYXN0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzcGFuIikpKTp0aGlzLl9lbGVtZW50cy5sYXN0LHRoaXMuX3RleHROb2Rlcy5sYXN0SGlnaGxpZ2h0PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQpLHRoaXMuX2VsZW1lbnRzLmxhc3RTdXA9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VMYXN0Q2hhclN1cD90aGlzLl9lbGVtZW50cy5sYXN0SGlnaGxpZ2h0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzdXAiKSkpOltdLHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RTdXApfSxiLnByb3RvdHlwZS5fZmluZEVsZW1lbnRzPWZ1bmN0aW9uKHQsZSl7dmFyIHM9KDAsbi5pc0FycmF5KShlKT9lOltlXTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxzLm1hcCgoZT0+QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUpKSkpKX0sYi5wcm90b3R5cGUuX2ZpbmRUZXh0Tm9kZXM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZmluZEVsZW1lbnRzKHQsZSkpfSxiLnByb3RvdHlwZS5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXM9ZnVuY3Rpb24odCl7cmV0dXJuIHQubWFwKCh0PT57dmFyIGU9dGhpcy5fZ2V0Rmlyc3RUZXh0Tm9kZSh0KTtyZXR1cm4gZXx8KGU9dC5vd25lckRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKSx0LmFwcGVuZENoaWxkKGUpKSxlfSkpfSxiLnByb3RvdHlwZS5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudD1mdW5jdGlvbih0LGUpe2NvbnN0IHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4gdC5hcHBlbmRDaGlsZChzKSxzfSxiLnByb3RvdHlwZS5fZ2V0Rmlyc3RUZXh0Tm9kZT1mdW5jdGlvbih0KXtmb3IodmFyIGU9dC5jaGlsZE5vZGVzLHM9ZS5sZW5ndGgtMTtzPj0wO3MtLSlpZigzPT09ZS5pdGVtKHMpLm5vZGVUeXBlKXJldHVybiBlLml0ZW0ocyk7cmV0dXJuIG51bGx9LGIucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24odCl7dGhpcy5fc3Vic2NyaWJlZHx8KHRoaXMuX3N1YnNjcmliZWRTeW1ib2w9dHx8dGhpcy5fc3ltYm9sLHRoaXMucXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITApfSxiLnByb3RvdHlwZS5kaXNjb25uZWN0PWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX2Nvbm5lY3RUaW1lb3V0SWQpLHRoaXMuX3N1YnNjcmliZWQmJih0aGlzLnF1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfSxiLnByb3RvdHlwZS5vbkRhdGE9ZnVuY3Rpb24odCxlKXt0aGlzLmVuYWJsZWQmJigib2siPT09dC5zdGF0dXM/dGhpcy5zdWNjZXNzRGF0YSh0LGUpOiJwZXJtaXNzaW9uX2RlbmllZCI9PT10LnN0YXR1cz90aGlzLm9uUGVybWlzc2lvbkRlbmllZCh0KToiZXJyb3IiPT09dC5zdGF0dXMmJnRoaXMuZXJyb3JEYXRhKHQpKX0sYi5wcm90b3R5cGUuc3VjY2Vzc0RhdGE9ZnVuY3Rpb24odCxlKXt0LnZhbHVlcyYmdGhpcy5zZXRTdGF0ZSh0LnZhbHVlcyx0LGUpfSxiLnByb3RvdHlwZS5vblBlcm1pc3Npb25EZW5pZWQ9ZnVuY3Rpb24odCl7KDAseC5pc1NmUXVvdGVEYXRhKSh0KXx8KDAsZi5pc01jeFF1b3RlRGF0YSkodCk/dGhpcy5fb3B0aW9ucy5wZXJtaXNzaW9uRGVuaWVkSG9vaz90aGlzLl9vcHRpb25zLnBlcm1pc3Npb25EZW5pZWRIb29rKHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCk6dGhpcy5lcnJvckRhdGEodCk6dGhpcy5kb3duZ3JhZGVEYXRhKHQpfSxiLnByb3RvdHlwZS5lcnJvckRhdGE9ZnVuY3Rpb24odCl7dGhpcy5fb3B0aW9ucy5zaG93SW52YWxpZFN5bWJvbFN0YXR1cyYmKHRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbCksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKHQ9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6dCxkYXRhOnt2YWx1ZXM6e2N1cnJlbnRfc2Vzc2lvbjoiaW52YWxpZCJ9fSx0b29sdGlwVHlwZTp0aGlzLl9vcHRpb25zLmluZGljYXRvcnNUb29sdGlwVHlwZX0pKSkpLHRoaXMuX29wdGlvbnMubm9TdWNoU3ltYm9sSG9vaz8odGhpcy5fc3ltYm9sT3JpZ2luYWwmJnRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbE9yaWdpbmFsKSx0aGlzLl9vcHRpb25zLm5vU3VjaFN5bWJvbEhvb2suY2FsbCh0aGlzLHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCkpOnkubG9nV2FybigiTm8gZGF0YSBmb3I6ICIrdGhpcy5fc3ltYm9sKX0sYi5wcm90b3R5cGUuZG93bmdyYWRlRGF0YT1mdW5jdGlvbih0KXt7CmNvbnN0IGU9dCYmdC52YWx1ZXMmJnQudmFsdWVzLmFsdGVybmF0aXZlLHM9dGhpcy5fc3ltYm9sPT09ZTtpZighKGUmJi0xIT09ZS5pbmRleE9mKCI6IikpfHxzKXJldHVybiB2b2lkIHRoaXMuZXJyb3JEYXRhKHQpO3RoaXMuX3N5bWJvbE9yaWdpbmFsPXRoaXMuX3N5bWJvbCx0aGlzLl9zeW1ib2w9ZSx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuY29ubmVjdCgpfX0sYi5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24odCxlLGkpe2NvbnN0IG89aS52YWx1ZXM7dGhpcy5faXNWb2x1bWVGb3JtYXQ9InZvbHVtZSI9PT10LmZvcm1hdCxudWxsPT1vLnByaWNlc2NhbGUmJm51bGw9PW8ubWlubW92JiZudWxsPT1vLmZyYWN0aW9uYWwmJm51bGw9PW8ubWlubW92ZTJ8fCh0aGlzLl9wcmljZUZvcm1hdHRlcj10aGlzLl9jdXN0b21QcmljZUZvcm1hdHRlcnx8dGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX3ZvbHVtZUZvcm1hdHRlcnx8bmV3IGwuUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6dC5wcmljZXNjYWxlfHwxMDAsbWluTW92ZTp0Lm1pbm1vdnx8MSxmcmFjdGlvbmFsOnQuZnJhY3Rpb25hbCxtaW5Nb3ZlMjp0Lm1pbm1vdmUyfSkpO2NvbnN0IG49dGhpcy5fb3B0aW9ucyxyPXRoaXMuX3BlcmNlbnRGb3JtYXR0ZXIsYT10aGlzLl9wcmljZUZvcm1hdHRlcixfPXRoaXMuX2RlZmF1bHRQcmljZUZvcm1hdHRlcixmPXRoaXMuX3ZvbHVtZUZvcm1hdHRlcix4PSh0LGU9ITApPT5lP2AoJHt0fSlgOnQsTj12b2lkIDAhPT1uLnNpZ25Qb3NpdGl2ZUNoYW5nZT9uLnNpZ25Qb3NpdGl2ZUNoYW5nZTpuLnNpZ25Qb3NpdGl2ZSxDPXQ9PigwLGcucXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2UpKHQsbyxuKSxiPXQ9Pntjb25zdCBlPXIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpOLHNpZ25OZWdhdGl2ZTpuLnNpZ25OZWdhdGl2ZX0pO3JldHVybiB4KGUsbi5jaGFuZ2VQZXJjZW50SW5CcmFja2V0cyl9LHY9YS5mb3JtYXQuYmluZChhKSxTPV8uZm9ybWF0LmJpbmQoXyksUD1mLmZvcm1hdC5iaW5kKGYpLFQ9dD0+bnVsbD09dD9oLlBMQUNFX0hPTERFUjpTKHQpO24uZGlzYWJsZUNoYW5nZXx8KHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmNoYW5nZSxvLmNoYW5nZSxDKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5jaGFuZ2VQZXJjZW50LG8uY2hhbmdlX3BlcmNlbnQsYiksbnVsbCE9by5jaGFuZ2UmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5jaGFuZ2UsdGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksby5jaGFuZ2Usbi5jaGFuZ2VVcEZvbnRDb2xvcixuLmNoYW5nZURvd25Gb250Q29sb3Isbi5jaGFuZ2VOZXV0cmFsRm9udENvbG9yKSx0aGlzLl9zZXRDaGFuZ2VEaXJlY3Rpb24odGhpcy5fZWxlbWVudHMuY2hhbmdlRGlyZWN0aW9uLG8uY2hhbmdlKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXh0SHJzQ2hhbmdlLG8ucmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZVBlcmNlbnQsby5yY2hwLGIpLG51bGwhPW8ucmNoJiYobi5kb250RHllUHJpY2V8fHRoaXMuX3NldENoYW5nZUZvbnRDb2xvcihbXS5jb25jYXQodGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLG8ucmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZURpcmVjdGlvbixvLnJjaCkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlLG8ubmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlUGVyY2VudCxvLm5jaHAsYiksbnVsbCE9by5uY2gmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZVBlcmNlbnQpLG8ubmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlRGlyZWN0aW9uLG8ubmNoKSkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZSxvLnByZXZfY2xvc2VfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZGl2aWRlbmRzLHQuZGl2aWRlbmRzX3lpZWxkLCh0PT5udWxsPT10P2guUExBQ0VfSE9MREVSOnIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpuLnNpZ25Qb3NpdGl2ZSxzaWduTmVnYXRpdmU6bi5zaWduTmVnYXRpdmV9KSksITApO2xldCB3PSgwLHUuZ2V0VHJhbnNsYXRlZFN5bWJvbERlc2NyaXB0aW9uKShvKTtpZih3JiYodz10aGlzLl9wcmVwYXJlU3ltYm9sRGVzY3JpcHRpb24odyksdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uLHcpLHRoaXMuX29wdGlvbnMuYWRkRGVzY3JpcHRpb25UaXRsZSkpZm9yKHZhciBGPTA7Rjx0aGlzLl9lbGVtZW50cy5kZXNjcmlwdGlvbi5sZW5ndGg7RisrKXRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uW0ZdLnNldEF0dHJpYnV0ZSgidGl0bGUiLHcpO2lmKChudWxsIT1vLnNob3J0X25hbWV8fG51bGwhPW8uZXhjaGFuZ2UpJiZ0LnNob3J0X25hbWUpe3ZhciBEPXQuc2hvcnRfbmFtZTsiUVVBTkRMIj09PXQuZXhjaGFuZ2UmJnZvaWQgMCE9PXQuc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzFdJiYoRD10LnNob3J0X25hbWUuc3BsaXQoIi8iKVsxXSsiLCAiK3Quc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzBdKSx0aGlzLnNldFNob3J0TmFtZShEKX0KdFsicmVmZXJlbmNlLWxhc3QtcGVyaW9kIl0mJnRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZQcm9taXNlLmFsbChbcy5lKDIzNTY3KSxzLmUoNzM5NyldKS50aGVuKHMuYmluZChzLDIxNTU3OSkpLnRoZW4oKGU9Pnt0aGlzLl9zZXRUZXh0c0NvbnRlbnQodGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZCxlLnBlcmlvZEZvcm1hdHRlcih0WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSkpfSkpLHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZ2b2lkIDA9PT10WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSYmdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QsIuKAlCIpLHRoaXMuX3NldExhc3RWYWx1ZShvLmxhc3RfcHJpY2Usby5taW5tb3ZlMix2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZSxvLnJ0Yyx2KSxvLnJ0YyYmdGhpcy5faGlnaGxpZ2h0ZXJzLmV4dEhyc0Nsb3NlLnNob3coby5ydGMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2Usby5udGMsdiksby5udGMmJnRoaXMuX2hpZ2hsaWdodGVycy5uaWdodENsb3NlLnNob3coby5udGMpLG8uaW5kdXN0cnkmJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5pbmR1c3RyeSx0LmluZHVzdHJ5LCh0PT50KSksby5zZWN0b3ImJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5zZWN0b3IsdC5zZWN0b3IpLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXMmJm8uY3VycmVudF9zZXNzaW9uJiYodGhpcy5fc2Vzc2lvblN0YXR1c0luc3RhbmNlcz90aGlzLl9zZXNzaW9uU3RhdHVzSW5zdGFuY2VzLmZvckVhY2goKHQ9PnQuc2V0U3RhdHVzKG8uY3VycmVudF9zZXNzaW9uKSkpOnRoaXMuX3Nlc3Npb25TdGF0dXNJbnN0YW5jZXM9dGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKGU9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6ZSxzaG9ydDohMCxkYXRhOnt2YWx1ZXM6b30scXVvdGVTZXNzaW9uOnRoaXMucXVvdGVTZXNzaW9uLHN5bWJvbDp0Lm9yaWdpbmFsX25hbWUsbWFudWFsVXBkYXRlOiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlLHNlc3Npb25TdGF0dXNJY29uOnRoaXMuX29wdGlvbnMuc2Vzc2lvblN0YXR1c0ljb259KSkpKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5vcGVuLG8ub3Blbl9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5oaWdoLG8uaGlnaF9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sb3csby5sb3dfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXBzLHQuZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSxULCEwKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5wcmljZUVhcm5pbmdzLHQucHJpY2VfZWFybmluZ3NfdHRtLFQsITApLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcCx0Lm1hcmtldF9jYXBfYmFzaWMsUCwhMCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMudm9sdW1lLHQudm9sdW1lLFAsITApO2NvbnN0IGs9KDAsZC5wcmVwYXJlQ3VycmVuY3lWYWx1ZSkobyk7aWYoayYmdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuY3VycmVuY3ksayxwLnF1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3ksITApLChvLmxwX3RpbWV8fHQubHBfdGltZSkmJnRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lLmxlbmd0aCYmKHRoaXMuX3RpbWVGb3JtYXR0ZXImJnRoaXMuX3RpbWVGb3JtYXR0ZXIubGFzdFByaWNlP3RoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxhc3RQcmljZVRpbWUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RQcmljZSh0LmxwX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMubGFzdFByaWNlVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJsYXN0IHByaWNlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLmxhc3RfcmVsZWFzZV9kYXRlfHx0Lmxhc3RfcmVsZWFzZV9kYXRlKSYmdGhpcy5fdGV4dE5vZGVzLmxhc3RSZWxlYXNlRGF0ZS5sZW5ndGgmJih0aGlzLl90aW1lRm9ybWF0dGVyJiZ0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZT90aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0UmVsZWFzZURhdGUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZSh0Lmxhc3RfcmVsZWFzZV9kYXRlLHQuY3VycmVudF9zZXNzaW9uKSx0aGlzLl9vcHRpb25zLmxhc3RSZWxlYXNlRGF0ZVRpbWVJbkJyYWNrZXRzKSk6eS5sb2dFcnJvcigibGFzdFJlbGVhc2VEYXRlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLnJ0Y190aW1lfHx0LnJ0Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMucnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQucnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJydGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksCihvLm50Y190aW1lfHx0Lm50Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLm50Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQubnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJudGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksbnVsbCE9by5sYXN0X3ByaWNlKWZvcihGPTA7Rjx0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLmxlbmd0aDtGKyspdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZVtGXS5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpO3RoaXMuX2VsZW1lbnRzLnVwZGF0ZU1vZGUmJihvLnVwZGF0ZV9tb2RlfHxvLnVwZGF0ZV9tb2RlX3NlY29uZHMpJiYodGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz90aGlzLl91cGRhdGVNb2RlSW5zdGFuY2VzLmZvckVhY2goKGU9PmUudXBkYXRlKHt2YWx1ZXM6dH0pKSk6dGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz10aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLm1hcCgoZT0+bmV3IG0uRGF0YU1vZGVJbmRpY2F0b3Ioe2NsYXNzU3VmZml4OnRoaXMuX29wdGlvbnMuZGF0YU1vZGVDbGFzc1N1ZmZpeCxlbDplLGRhdGE6e3ZhbHVlczp0fSxtb2RlSW50ZXJ2YWw6dC51cGRhdGVfbW9kZV9zZWNvbmRzLHNob3J0OiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlfSkpKSksdGhpcy5fc2V0U3RhdGVIb29rJiZ0aGlzLl9zZXRTdGF0ZUhvb2soZS52YWx1ZXMsaS52YWx1ZXMsZS5jb21wbGV0ZSx0aGlzLmdldE9wdGlvbnMoKSksdGhpcy5fbGFzdFByaWNlP3RoaXMuX2hpZ2hsaWdodGVycy5sYXN0LnNob3codC5sYXN0X3ByaWNlKTpudWxsPT09dGhpcy5fbGFzdFByaWNlJiYodGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoInF1b3RlLXRpY2tlci1pbml0ZWQiKSwiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fb3B0aW9ucy5pbml0ZWRIb29rJiZ0aGlzLl9vcHRpb25zLmluaXRlZEhvb2soImxhc3RfcHJpY2UiaW4gdCkpLHRoaXMuX2xhc3RQcmljZT10Lmxhc3RfcHJpY2V9LGIucHJvdG90eXBlLl9zZXROb2Rlc1ZhbHVlPWZ1bmN0aW9uKHQsZSxzLGkpe2lmKG51bGwhPWV8fGkpZm9yKHZhciBvPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxuPTA7bjx0Lmxlbmd0aDtuKyspdFtuXS5ub2RlVmFsdWU9b30sYi5wcm90b3R5cGUuX3NldFRleHRzQ29udGVudD1mdW5jdGlvbih0LGUscyl7aWYodCYmdC5sZW5ndGgmJmUpZm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxvPTA7bzx0Lmxlbmd0aDtvKyspdFtvXS50ZXh0Q29udGVudD1pfSxiLnByb3RvdHlwZS5fc2V0TGFzdFZhbHVlPWZ1bmN0aW9uKHQsZSxzKXtpZihudWxsPT10KXJldHVybjtjb25zdCBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3ModCk6U3RyaW5nKHQpO2lmKGk9PT10aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQpcmV0dXJuO2NvbnN0W28sbixyXT10aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5P3RoaXMuX2dldExhc3RWYWx1ZVN0cmluZ0RpZmYodGhpcy5fbGFzdFByaWNlRm9ybWF0dGVkLGkpOlsiIixpLCIiXSxhPW8sbD10aGlzLl9jYWxjdWxhdGVQaXBldHRlRGlnaXRzKGUpLFtoLGNdPXRoaXMuX29wdGlvbnMubGFzdFByaWNlTGFzdENoYXJTdXAmJmw/W24uc2xpY2UoMCwtbCksbi5zbGljZSgtbCldOltuLCIiXTt0aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5JiYodGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX2NoYW5nZVZvbHVtZUxldHRlci5jYWxsKHRoaXMsciksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdCxhKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdEhpZ2hsaWdodCxoKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwLGMpLHRoaXMuX2xhc3RQcmljZUZvcm1hdHRlZD1pfSxiLnByb3RvdHlwZS5fZ2V0Q2hhbmdlVm9sdW1lTGV0dGVyQ2FsbGJhY2s9ZnVuY3Rpb24oKXtsZXQgdDtyZXR1cm4gZnVuY3Rpb24oZSl7ZSE9PXQmJih0PWUsdGhpcy5fZWxlbWVudHMubGFzdC5mb3JFYWNoKChlPT57MyE9PWUuY2hpbGROb2Rlcy5sZW5ndGg/ZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSk6ZS5jaGlsZE5vZGVzWzJdLm5vZGVWYWx1ZT10fSkpKX19LGIucHJvdG90eXBlLl9nZXRMYXN0VmFsdWVTdHJpbmdEaWZmPWZ1bmN0aW9uKHQsZSl7aWYodD09PWUpe2NvbnN0W3Qsc109dihlKTtyZXR1cm5bdCwiIixzXX1sZXQgcz0wO2Zvcig7dFtzXT09PWVbc107KXMrKztjb25zdFtpLG9dPXYoZS5zbGljZShzKSk7cmV0dXJuW2Uuc2xpY2UoMCxzKSxpLG9dfSxiLnByb3RvdHlwZS5fY2FsY3VsYXRlUGlwZXR0ZURpZ2l0cz1mdW5jdGlvbih0KXtyZXR1cm4gdCYmdCE9PXRoaXMuX2xhc3RNaW5Nb3ZlJiYodGhpcy5fbGFzdE1pbk1vdmU9dCksdGhpcy5fbGFzdE1pbk1vdmU/KCIiK3RoaXMuX2xhc3RNaW5Nb3ZlKS5sZW5ndGgtMTowfSxiLnByb3RvdHlwZS5fc2V0Q2hhbmdlRm9udENvbG9yPWZ1bmN0aW9uKHQsZSxzLGksbyl7Zm9yKHZhciBuPWEuUHJpY2VDb2xvcmVyLmZvcm1hdFNpZ24oZSx7dXA6cyxkb3duOmksbmV1dHJhbDpvfSkscj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuY29sb3I9bn0sYi5wcm90b3R5cGUuX3NldENoYW5nZURpcmVjdGlvbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcz0wO3M8dC5sZW5ndGg7cysrKXt2YXIgaT10W3NdLmNsYXNzTGlzdDtpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvblVwQ2xhc3MsZT4wKSxpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvbkRvd25DbGFzcyxlPDApLGkudG9nZ2xlKHRoaXMuX29wdGlvbnMuY2hhbmdlRGlyZWN0aW9uTmV1dHJhbENsYXNzLDA9PT1lKX19LApiLnByb3RvdHlwZS5zZXRTaG9ydE5hbWU9ZnVuY3Rpb24odD0iIil7dGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZSx0KX0sYi5wcm90b3R5cGUuX3ByZXBhcmVTeW1ib2xEZXNjcmlwdGlvbj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9nZXRDYWNoZSgic3ltYm9sLWRlc2NyaXB0aW9uOiIrdCk7cmV0dXJuIGV8fChlPXQsdGhpcy5fc2V0Q2FjaGUoInN5bWJvbC1kZXNjcmlwdGlvbjoiK3QsZSksZSl9LGIucHJvdG90eXBlLl9pbml0SGlnaGxpZ2h0ZXJzPWZ1bmN0aW9uKCl7dGhpcy5faGlnaGxpZ2h0ZXJzLmxhc3Q9bmV3IFModGhpcy5fZWxlbWVudHMubGFzdEhpZ2hsaWdodCx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKSx0aGlzLl9oaWdobGlnaHRlcnMuZXh0SHJzQ2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2UsdGhpcy5fb3B0aW9ucy5ncm93aW5nQmcsdGhpcy5fb3B0aW9ucy5mYWxsaW5nQmcsdGhpcy5fb3B0aW9ucy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX29wdGlvbnMubGFzdEZhbGxpbmdDbGFzcyksdGhpcy5faGlnaGxpZ2h0ZXJzLm5pZ2h0Q2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKX0sYi5wcm90b3R5cGUuZGlzYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMSx0aGlzLmRpc2Nvbm5lY3QoKX0sYi5wcm90b3R5cGUuZW5hYmxlPWZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSEwLHRoaXMuY29ubmVjdCgpfSxiLnByb3RvdHlwZS5zZXRTdGF0ZUhvb2s9ZnVuY3Rpb24odCl7bnVsbD09PXQmJnRoaXMuX3NldFN0YXRlSG9vaz9kZWxldGUgdGhpcy5fc2V0U3RhdGVIb29rOiJmdW5jdGlvbiI9PXR5cGVvZiB0JiYodGhpcy5fc2V0U3RhdGVIb29rPXQpfSxiLnByb3RvdHlwZS5fc2V0Q2FjaGU9ZnVuY3Rpb24odCxlKXtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jYWNoZVt0XTp0aGlzLl9jYWNoZVt0XT1lfSxiLnByb3RvdHlwZS5fZ2V0Q2FjaGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2NhY2hlJiZ0aGlzLl9jYWNoZVt0XX0sYi5wcm90b3R5cGUuZ2V0T3B0aW9ucz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9vcHRpb25zfX0sMTEzNTY3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3ByZXBhcmVDdXJyZW5jeVZhbHVlOigpPT5vfSk7dmFyIGk9cygxODUyNzEpO2Z1bmN0aW9uIG8odCl7bGV0IGU9W107Y29uc3Qgbz1mdW5jdGlvbih0KXtzd2l0Y2godCl7Y2FzZSJQQ1QiOmNhc2UiUENUUEFSIjpyZXR1cm4iJSI7Y2FzZSJQQ1RHRFAiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNTU4NDEyKSk7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtkZWZhdWx0OnJldHVybiB0fX0odC5jdXJyZW5jeV9jb2RlfHx0LnZhbHVlX3VuaXRfaWR8fCIiKTtzd2l0Y2godC5tZWFzdXJlKXtjYXNlInByaWNlIjpjYXNlInVuaXQiOmU9W28sdC51bml0X2lkXTticmVhaztkZWZhdWx0OmU9W29dfXJldHVybiBlLmZpbHRlcihCb29sZWFuKS5qb2luKCLigIkv4oCJIil9fSw5MzExOTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7aGFuZGxlVFZMaW5rc0NsaWNrOigpPT5hfSk7dmFyIGk9cyg0MDAxODEpLG89cyg2MDE1ODcpLG49cyg3MzA2NDUpO2NvbnN0IHI9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKHQ9Pntjb25zdCBlPXQudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7ZT8uaG9zdG5hbWUmJigwLG4uaXNJbnRlcm5hbEhvc3QpKGUuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbih0LGUpe2NvbnN0IHM9ZnVuY3Rpb24oKXtjb25zdCB0PXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXModCkubGVuZ3RoPjApcmV0dXJuKDAsby5maWx0ZXJVdG1JbmZvKSh0KTtjb25zdCBlPW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjplLmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOmUuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsaS5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhyLHt3aWRnZXRfdHlwZTpoKHMpLGRvbWFpbjpsKHMpLGxpbms6dCx0YXJnZXRfdHlwZTplfSl9KGUuaHJlZixlLmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gbCh0KXtjb25zdCBlPWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gdC51dG1fc291cmNlfHxmdW5jdGlvbih0KXt0cnl7cmV0dXJuIG5ldyBVUkwodCkuaG9zdH1jYXRjaCh0KXtyZXR1cm4iIn19KGUpfWZ1bmN0aW9uIGgodCl7aWYodC51dG1fY2FtcGFpZ24pcmV0dXJuIHQudXRtX2NhbXBhaWduO2NvbnN0IGU9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGUuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP2Uuc3BsaXQoIi8iKVsyXTplfX0sMzg5Mjk4KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3RyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvOigpPT5vfSk7dmFyIGk9cyg0MDAxODEpO2FzeW5jIGZ1bmN0aW9uIG8odCl7TWF0aC5yYW5kb20oKT4uMDA1fHwoYXdhaXQoMCxpLmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRfbG9hZF9tZXRhX2luZm8vanNvbnNjaGVtYS8xLTAtMCIsdCl9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.149Z","timestamp":1785154591149,"http_version":"","security_state":"","security_info":null,"request":{"raw":"POST /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/json\r\nContent-Length: 1623\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\n\r\n","headers":null,"cookies":null,"method":"POST","post_data":{"size":1623,"data":"{\"schema\":\"iglu:com.snowplowanalytics.snowplow/payload_data/jsonschema/1-0-4\",\"data\":[{\"e\":\"ue\",\"eid\":\"f8ff18cc-c06f-46ed-8329-31a0a2ab1153\",\"tv\":\"js-3.24.1\",\"tna\":\"tv_cf\",\"aid\":\"tradingview\",\"p\":\"web\",\"cookie\":\"1\",\"cs\":\"UTF-8\",\"lang\":\"en-US\",\"res\":\"1280x1024\",\"cd\":\"24\",\"dtm\":\"1785154591101\",\"ue_px\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy91bnN0cnVjdF9ldmVudC9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6eyJzY2hlbWEiOiJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRzX3dpdGhvdXRfd2Vic29ja2V0L2pzb25zY2hlbWEvMS0wLTAiLCJkYXRhIjp7Imhvc3QiOiJwZXJzaW1tb250cmFkZXMuY29tIiwicGF0aCI6Ii8iLCJ3aWRnZXRfaWQiOiJjcnlwdG9ta3RzY3JlZW5lciIsImV2ZW50X25hbWUiOiJwYWdlX3ZpZXcifX19\",\"cx\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6W3sic2NoZW1hIjoiaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsImRhdGEiOnsiaWQiOiIzNDhiNGRjMy1kZGZjLTRiZGItYmIwYi0wYzRjYWY2ZmVkYTMifX1dfQ\",\"vp\":\"400x458\",\"ds\":\"400x458\",\"vid\":\"1\",\"sid\":\"b177bc9a-34b2-4836-9972-6f558777cbde\",\"refr\":\"https://persimmontrades.com/\",\"url\":\"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D\",\"stm\":\"1785154591102\"}]}"}},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXRP.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.854Z","timestamp":1785154591854,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCXRP.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"persimmontrades.com/translate.google.com/translate_a/elementa0d8.html?cb=googleTranslateElementInit","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.332Z","timestamp":1785154589332,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /translate.google.com/translate_a/elementa0d8.html?cb=googleTranslateElementInit HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1459,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-27T14:18:32.432843Z","times_seen":144288,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":52,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":51,"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCETH.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.177Z","timestamp":1785154591177,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /crypto/XTVCETH.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"6c8b94d554caad39b40a6f7147fdc6a5\"\r\nlast-modified: Wed, 26 Feb 2025 20:02:22 GMT\r\ncdn-cachedat: 08/09/2025 14:29:13\r\nx-amz-id-2: cjxB+0rsJO+G+g9GS4iIDBwPWU8gDfAMJoEjErDTv2wKdTYX9BsP2jwaadSiv0iWhu6SXJksiTE=\r\nx-amz-request-id: WYQ4X71VWYX7W99T\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 6c8b94d554caad39b40a6f7147fdc6a5\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 623f4489d15608a9661f9b3eadf6bf26\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1163,"size_decoded":1548,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1163), with no line terminators","md5":"6c8b94d554caad39b40a6f7147fdc6a5","sha1":"66d27f915603d3286cf7257c467fa70e1422a462","sha256":"de92a8cf9812de5a645ec6e45df7843458c106187045b6f94f431bbc2d1a703b","sha512":"ec6c9900e3c43c736df89e4140184f5bcc7d328843ddcabd17bcce25f1d5c4e0841c503f5d6927419340be7336574244f7675f9d90158284bc8348f0d3161ea4","ssdeep":"","tlshash":"2f212ea8e25db92b884783fccb2d54633a5460ee578443e6b056d63a3490bdbec00bc0","first_seen":"2025-04-10T12:22:36.097854Z","last_seen":"2026-07-27T14:20:57.350563Z","times_seen":5712,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC45NyAzLjE0VjcuMkw1LjExIDkuMWwzLjg2LTUuOTZaIiBmaWxsPSIjRTdGMEZGIi8+PHBhdGggZD0ibTUuMSA5LjEtLjAxLjA0IDMuODkgMi4yMVY3LjJMNS4xIDkuMVoiIGZpbGw9IiNBNUI5RUUiLz48cGF0aCBkPSJNOC45NyAzLjE0VjcuMmwzLjk0IDEuOTVMOSAzLjFsLS4wMi4wM1oiIGZpbGw9IiNBNUI4RjAiLz48cGF0aCBkPSJNMTIuOSA5LjE0IDkgMTEuMzZoLS4wM1Y3LjE4bDMuOTQgMS45NVoiIGZpbGw9IiM2ODdGQ0IiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Im05IDMgNCA2LjE1LTQgMi4yOC00LTIuMjhMOSAzWm0tLjA3LjMyTDUuMjYgOC45OGwzLjY3LTEuODRWMy4zMlptMCAzLjk0TDUuMjEgOS4xNGwzLjcyIDIuMTJ2LTRabS4xMyA0di00bDMuNzMgMS44OC0zLjczIDIuMTJabTMuNjgtMi4yN0w5LjA2IDcuMTRWMy4zMkwxMi43NCA5WiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik05IDE0LjkgNS4wNSA5Ljc2IDkgMTEuOTJsMy45NS0yLjE2TDkgMTQuOVoiIGZpbGw9IiNBOEI5RUYiLz48cGF0aCBkPSJNOSAxMS45MiA1LjA1IDkuNzYgOSAxNC45di0yLjk4WiIgZmlsbD0iI0U4RjFGRiIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0ibTUgOS44LjA5LS4wOEw5IDExLjg2bDMuOTEtMi4xNC4wOS4wOEw5IDE1IDUgOS44Wm0zLjk0IDIuMTUtMy42Ny0yIDMuNjcgNC43N3YtMi43N1ptLjEyIDIuNzd2LTIuNzdsMy42Ny0yLTMuNjcgNC43N1oiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI5IiB5MT0iMCIgeDI9IjkiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM0NjUxOTEiLz48c3RvcCBvZmZzZXQ9Ii4zNiIgc3RvcC1jb2xvcj0iIzMyNDk4RiIvPjxzdG9wIG9mZnNldD0iLjciIHN0b3AtY29sb3I9IiM1NTVFOTkiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM0RjU3OTUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":62,"timings":{"blocked":-1,"dns":23,"connect":24,"send":0,"wait":1,"receive":-1,"ssl":12},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCTRX.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.868Z","timestamp":1785154591868,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCTRX.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80594.e87444e26f9e12545231.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.225Z","timestamp":1785154590225,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80594.e87444e26f9e12545231.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-a338\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7e38682064400a4dbd96f2267247135a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":41784,"size_decoded":13916,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (8882)","md5":"75148ecd9563758ef37fbf710fa1ed9c","sha1":"de1a10ecd54ec0decbb03a8cd557426111cea6d0","sha256":"cf8c7a93d59e717ec020cee201f3d4cc1c2abdd9d284d8c741acd1489c03835c","sha512":"f58c5f5e173f73a99e68100eddfff45b2ea08d85d707f75a9b525aed76766a2a71017d55a717a9392da38d5c5ae394e073d0e7784e029bda8c8aae2a167f353d","ssdeep":"768:E+Rr6eBG5q/FjGgPqzEthfn9evRIZ3XQl0m0FSCUSxlfHiTzJuqgyLDNZGItbNb6:spKxt59evRIZXxQy8NbNANtfJiO","tlshash":"5f13c83df5d1956372eb84ff4f66f6435a266402b26b6fe0b135d3c0244ac8b1222e6d","first_seen":"2026-07-23T13:38:20.394325Z","last_seen":"2026-07-27T14:18:36.366982Z","times_seen":1424,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NSw4MDU5NCw4MDkzOV0sezgwNDYxOShvKXtvLmV4cG9ydHM9e319LDExNDA2OChvKXtvLmV4cG9ydHM9eyJjb21tb24tdG9vbHRpcCI6ImNvbW1vbi10b29sdGlwLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhpZGRlbiI6ImNvbW1vbi10b29sdGlwLS1oaWRkZW4tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbCI6ImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC0tZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbCI6ImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC1mYXJ0aGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciI6ImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMiOiJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19idXR0b24iOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCI6ImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93IjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlIjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXkiOiJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jayI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay0tZGl2aWRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dCI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduIjoiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WCJ9fSw1NjkzOTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNGZWF0dXJlRW5hYmxlZDooKT0+Z30pO3ZhciByPXQoOTQ4MzgwKSxsPXQoMzc3MjI2KSxjPXQoODU2MTk2KSxuPXQoOTMyMzY1KTtjb25zdCBhPW5ldyByLkRlbGVnYXRlLGk9ImZvcmNlZmVhdHVyZXRvZ2dsZS4iO2NvbnN0IHM9bmV3IGNsYXNze2VuYWJsZUZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGkrbywidHJ1ZSIpLGEuZmlyZShvKX1kaXNhYmxlRmVhdHVyZShvKXtuLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0oaStvLCJmYWxzZSIpLGEuZmlyZShvKX1yZXNldEZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkrbyksYS5maXJlKG8pfW9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQoKXtyZXR1cm4gYX19O2Z1bmN0aW9uIGQobyxlKXtyZXR1cm4oIW9bZV18fC0xIT09b1tlXSkmJighISgidHJ1ZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJ0cnVlIj09PXdpbmRvdy51c2VyPy5zZXR0aW5ncz8uW2krZV0pfHwhKCJmYWxzZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJmYWxzZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltpK2VdKSYmKCEhb1tlXSYmKDE9PT1vW2VdfHwoMCxjLnNob3VsZEFmZmVjdFVzZXIpKGUsb1tlXSkpKSl9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e30sd2luZG93LlRyYWRpbmdWaWV3LkZlYXR1cmVUb2dnbGU9cztjb25zdCBnPSh1PXdpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGV8fHt9LCgwLGwub25XaWRnZXQpKCl8fFByb21pc2UuYWxsKFt0LmUoODU0MzQpLHQuZSg3Mjg1KSx0LmUoMTM5OTMpXSkudGhlbih0LmJpbmQodCw1MDcyODUpKS50aGVuKChvPT57by5wdXNoU3RyZWFtTXVsdGlwbGV4ZXIub24oImZlYXR1cmV0b2dnbGUiLChvPT57Y29uc3QgZT1kKHUsby5uYW1lKTt1W28ubmFtZV09by5zdGF0ZSxlIT09ZCh1LG8ubmFtZSkmJmEuZmlyZShvLm5hbWUpfSkpfSkpLApkLmJpbmQobnVsbCx1KSk7dmFyIHU7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9Z30sNzkyNjEyKG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldEluaXREYXRhOigpPT5sfSk7KDAsdCgyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5Jbml0RGF0YSIpO2NvbnN0IHI9d2luZG93LmluaXREYXRhfHx7fTtmdW5jdGlvbiBsKCl7cmV0dXJuIHJ9fSw5MzIzNjUobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7VFZMb2NhbFN0b3JhZ2U6KCk9PmN9KTtjb25zdCByPSgwLHQoMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBsPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2gobyl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChvKXt9fTtsLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3Qgbz0xMCxlPVtdO2ZvcihsZXQgbz0wO288dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO28rKyl7Y29uc3QgdD10aGlzLmtleShvKTtlLnB1c2goe2tleTp0LGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKHQpKS5sZW5ndGh9KX1lLnNvcnQoKChvLGUpPT5lLmxlbmd0aC1vLmxlbmd0aCkpO2NvbnN0IHQ9ZS5zbGljZSgwLG8pO2Uuc29ydCgoKG8sZSk9PmUua2V5Lmxlbmd0aC1vLmtleS5sZW5ndGgpKTtjb25zdCBsPWUuc2xpY2UoMCxvKTtyLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxyLmxvZ05vcm1hbChgVG9wICR7b30ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KHQpfWApLHIubG9nTm9ybWFsKGBUb3AgJHtvfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShsKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChvPT57ci5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkobyl9YCl9KSl9Y2F0Y2gobyl7fX19LGwucHJvdG90eXBlLmxlbmd0aD0wLGwucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLGwucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sbC5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIG8sZT0wO2ZvcihvIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KG8pJiZlKys7dGhpcy5sZW5ndGg9ZX19LGwucHJvdG90eXBlLmtleT1mdW5jdGlvbihvKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkobyk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW29dfSxsLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKG8pe3JldHVybiB0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0obyk6dm9pZCAwPT09dGhpcy5sb2NhbFN0b3JhZ2Vbb10/bnVsbDp0aGlzLmxvY2FsU3RvcmFnZVtvXX0sbC5wcm90b3R5cGUuc2V0SXRlbT1mdW5jdGlvbihvLGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShvLGUpOnRoaXMubG9jYWxTdG9yYWdlW29dPWUsdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LGwucHJvdG90eXBlLnJlbW92ZUl0ZW09ZnVuY3Rpb24obyl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG8pOmRlbGV0ZSB0aGlzLmxvY2FsU3RvcmFnZVtvXSx0aGlzLl91cGRhdGVMZW5ndGgoKX0sbC5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmNsZWFyKCk6dGhpcy5sb2NhbFN0b3JhZ2U9e30sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9O2NvbnN0IGM9bmV3IGw7d2luZG93LlRWTG9jYWxTdG9yYWdlPWN9LDExNzMxMyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtpc09uTW9iaWxlQXBwUGFnZTooKT0+bH0pO3ZhciByPXQoNTg3NDM2KTtmdW5jdGlvbiBsKG8sZT0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOnR9PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGw9InRydWUiPT09dC5nZXQoIm1vYmlsZWFwcF9uZXciKSxjPSJ0cnVlIj09PXQuZ2V0KCJtb2JpbGVhcHAiKTtpZighZSl7Y29uc3Qgbz1yLmdldCgidHZfYXBwIil8fCIiO2x8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKG8pLGN8fD0iaW9zIj09PW99cmV0dXJuISgibmV3IiE9PW8mJiJhbnkiIT09b3x8IWwpfHwhKCJuZXciPT09b3x8IWMpfX0sNzc5Mzg5KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse0FjdGlvbkdyb3VwOigpPT5sfSk7dmFyIHI9dCg5OTI4MDMpO2NsYXNzIGx7Y29uc3RydWN0b3IobyxlKXt0aGlzLl9hY3Rpb25zPW5ldyBNYXAsdGhpcy5fbWFuYWdlcj1vLHRoaXMub3JkZXI9ZT8ub3JkZXI/PzAsdGhpcy5tb2RhbD0hKCFlfHwhZS5tb2RhbCksZSYmKHRoaXMuZGVzYz1lLmRlc2MpLGUmJmUuaXNEaXNhYmxlZD8iZnVuY3Rpb24iPT10eXBlb2YgZS5pc0Rpc2FibGVkP3RoaXMuaXNEaXNhYmxlZD1lLmlzRGlzYWJsZWQ6dGhpcy5pc0Rpc2FibGVkPSgpPT4hMDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiExLHRoaXMuX21hbmFnZXIucmVnaXN0ZXJHcm91cCh0aGlzKX1hZGQobyl7bGV0IGU9dGhpcy5fYWN0aW9ucy5nZXQoby5ob3RrZXkpO2V8fChlPVtdLHRoaXMuX2FjdGlvbnMuc2V0KG8uaG90a2V5LGUpKTtjb25zdCB0PW5ldyByLkFjdGlvbih0aGlzLG8pO3JldHVybiBlLnB1c2godCksdH1yZW1vdmUobyl7Y29uc3QgZT10aGlzLl9hY3Rpb25zLmdldChvLmhvdGtleSk7aWYoIWUpcmV0dXJuCjtjb25zdCB0PWUuZmluZEluZGV4KChlPT5lPT09bykpO3Q+PTAmJigxPT09ZS5sZW5ndGg/dGhpcy5fYWN0aW9ucy5kZWxldGUoby5ob3RrZXkpOmUuc3BsaWNlKHQsMSkpfWhhbmRsZUhvdGtleShvLGUpe2NvbnN0IHQ9dGhpcy5fYWN0aW9ucy5nZXQobyk7aWYoIXQpcmV0dXJuITE7Zm9yKGNvbnN0IHIgb2YgdClpZigoIXIuZWxlbWVudHx8ZS50YXJnZXQmJnIuZWxlbWVudC5jb250YWlucyhlLnRhcmdldCkpJiYhci5pc0Rpc2FibGVkKGUpKXJldHVybiBlLnJlcGVhdCYmIXIuaXNSZXBlYXRBY2NlcHRlZHx8KHIuaGFuZGxlcihlKSx0aGlzLl9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobykpLGUucHJldmVudERlZmF1bHQoKSwhMDtyZXR1cm4hMX1wcm9tb3RlKCl7dGhpcy5fbWFuYWdlci5wcm9tb3RlR3JvdXAodGhpcyl9ZGVzdHJveSgpe2Zvcihjb25zdFssb11vZiB0aGlzLl9hY3Rpb25zKWZvcihjb25zdCBlIG9mIG8pZS5kZXN0cm95KCk7dGhpcy5fYWN0aW9ucy5jbGVhcigpLHRoaXMuX21hbmFnZXIudW5yZWdpc3Rlckdyb3VwKHRoaXMpfXN0YXRpYyBzZXRNYXRjaGVkSG90a2V5SGFuZGxlcihvKXtsLl9tYXRjaGVkSG90a2V5SGFuZGxlcj1vfV9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobyl7bC5fbWF0Y2hlZEhvdGtleUhhbmRsZXImJmwuX21hdGNoZWRIb3RrZXlIYW5kbGVyKG8pfX19LDI5MTM0MShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtBY3Rpb25NYW5hZ2VyOigpPT5pfSk7dmFyIHI9dCgyMzIzNjQpLGw9dCgyMzU3MjQpLGM9dCg3MjEzNjkpLG49dCg2OTYyMDgpO2NsYXNzIGEgZXh0ZW5kcyByLldhdGNoZWRWYWx1ZXtzZXRWYWx1ZShvLGUpe2NvbnN0IHQ9dGhpcy52YWx1ZSgpOyhlfHx2b2lkIDA9PT10fHx0LmNvZGUhPT1vLmNvZGV8fHQubW9kaWZpZXJzIT09by5tb2RpZmllcnMpJiZzdXBlci5zZXRWYWx1ZShvKX19Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMuX2dyb3Vwcz1bXSx0aGlzLl9wcmVzc2VkS2V5cz1uZXcgci5XYXRjaGVkVmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlPW5ldyBhKG5ldyBuLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwKSksdGhpcy5fa2V5RG93bkxpc3RlbmVyPW89PntpZihvLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IGU9KDAsbC5oYXNoRnJvbUV2ZW50KShvKTtpZih0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZShlKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUuc2V0VmFsdWUobmV3IG4uS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSxvLmNvZGUpKSwhKDAsYy5pc05hdGl2ZVVJSW50ZXJhY3Rpb24pKGUsby50YXJnZXQpKWZvcihsZXQgdD10aGlzLl9ncm91cHMubGVuZ3RoO3QtLSA+MDspe2NvbnN0IHI9dGhpcy5fZ3JvdXBzW3RdO2lmKCFyLmlzRGlzYWJsZWQoKSl7aWYoci5oYW5kbGVIb3RrZXkoZSxvKSlyZXR1cm47aWYoci5tb2RhbClyZXR1cm59fX0sdGhpcy5fa2V5VXBMaXN0ZW5lcj1vPT57Y29uc3QgZT0oMCxsLmhhc2hGcm9tRXZlbnQpKG8pO3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKGUpLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAsbC5tb2RpZmllcnNGcm9tRXZlbnQpKG8pLCIiKSl9LHRoaXMuX2JsdXJFdmVudD0oKT0+e3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKDApLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoMCwiIikpfSx0aGlzLl9tb3VzZUV2ZW50PW89Pntjb25zdCBlPSgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSx0PTI1NSYodGhpcy5fcHJlc3NlZEtleXMudmFsdWUoKT8/MCk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoZXx0KX19bGlzdGVuKG8pe28uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXVubGlzdGVuKG8pe28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXJlZ2lzdGVyR3JvdXAobyl7dGhpcy5fZ3JvdXBzLnB1c2gobyksdGhpcy5zb3J0R3JvdXBzKCl9dW5yZWdpc3Rlckdyb3VwKG8pe2ZvcihsZXQgZT10aGlzLl9ncm91cHMubGVuZ3RoO2UtLTspdGhpcy5fZ3JvdXBzW2VdPT09byYmdGhpcy5fZ3JvdXBzLnNwbGljZShlLDEpfXByb21vdGVHcm91cChvKXtjb25zdCBlPXRoaXMuX2dldE1vZGFsT3JkZXJFcG9jaCgpLHQ9cyhvLGUpO2xldCByPXRoaXMuX2dyb3Vwcy5maW5kSW5kZXgoKG89PnMobyxlKT09PXQpKSxsPTA7Zm9yKDtyPHRoaXMuX2dyb3Vwcy5sZW5ndGgmJnModGhpcy5fZ3JvdXBzW3JdLGUpPT09dDspe2NvbnN0IGM9dGhpcy5fZ3JvdXBzW3JdO2M9PT1vP2w9MTpzKGMsZSk9PT10JiYodGhpcy5fZ3JvdXBzW3ItbF09YykscisrfXRoaXMuX2dyb3Vwc1tyLWxdPW99cHJlc3NlZEtleXMoKXtyZXR1cm4gdGhpcy5fcHJlc3NlZEtleXMucmVhZG9ubHkoKX1rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKXtyZXR1cm4gdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnJlYWRvbmx5KCl9c29ydEdyb3Vwcygpe2NvbnN0IG89dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCk7dGhpcy5fZ3JvdXBzLnNvcnQoKChlLHQpPT5zKHQsbyktcyhlLG8pKSl9X2dldE1pbk9yZGVyKCl7cmV0dXJuIHRoaXMuX2dyb3Vwcy5yZWR1Y2UoKChvLGUpPT5NYXRoLm1pbihvLGUub3JkZXIpKSwwKX0KX2dldE1vZGFsT3JkZXJFcG9jaCgpe3JldHVybi0yKihNYXRoLmFicyh0aGlzLl9nZXRNaW5PcmRlcigpKS0xKX19ZnVuY3Rpb24gcyhvLGUpe3JldHVybiBvLm9yZGVyKyhvLm1vZGFsP2U6MCl9fSw5OTI4MDMobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7QWN0aW9uOigpPT5yfSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihvLGUpe3RoaXMuX2dyb3VwPW87Y29uc3R7aG90a2V5OnQsaGFuZGxlcjpyLGRlc2M6bCxpc0Rpc2FibGVkOmMsZWxlbWVudDpuPW51bGwsaXNSZXBlYXRBY2NlcHRlZDphPSExfT1lO3RoaXMuaG90a2V5PXQsdGhpcy5oYW5kbGVyPXIsdGhpcy5kZXNjPWwsdGhpcy5lbGVtZW50PW4sdGhpcy5pc1JlcGVhdEFjY2VwdGVkPWEsdGhpcy5pc0Rpc2FibGVkPWM/ImZ1bmN0aW9uIj09dHlwZW9mIGM/YzooKT0+ITA6KCk9PiExfWRlc3Ryb3koKXt0aGlzLl9ncm91cCYmKHRoaXMuX2dyb3VwLnJlbW92ZSh0aGlzKSx0aGlzLl9ncm91cD1udWxsKX19fSw3MjcwOShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVHcm91cDooKT0+bn0pO3ZhciByPXQoMjkxMzQxKSxsPXQoNzc5Mzg5KTtjb25zdCBjPW5ldyByLkFjdGlvbk1hbmFnZXI7Yy5wcmVzc2VkS2V5cygpLGMua2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCk7ZnVuY3Rpb24gbihvKXtyZXR1cm4gbmV3IGwuQWN0aW9uR3JvdXAoYyxvKX19LDY5NjIwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9Pmx9KTt2YXIgcj10KDIzNTcyNCk7Y2xhc3MgbHtjb25zdHJ1Y3RvcihvLGUpe3RoaXMubW9kaWZpZXJzPW8sdGhpcy5jb2RlPWV9YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7cmV0dXJuIHIuaXNNYWNLZXlib2FyZD8iTWV0YUxlZnQiPT09dGhpcy5jb2RlfHwiTWV0YVJpZ2h0Ij09PXRoaXMuY29kZXx8Ik9TTGVmdCI9PT10aGlzLmNvZGV8fCJPU1JpZ2h0Ij09PXRoaXMuY29kZToiQ29udHJvbExlZnQiPT09dGhpcy5jb2RlfHwiQ29udHJvbFJpZ2h0Ij09PXRoaXMuY29kZX19fSwzODcyMzEobyxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKG8sZSx0PXt9KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxvLGZ1bmN0aW9uKG8sZSx0PXt9KXtjb25zdCByPU9iamVjdC5hc3NpZ24oe30sZSk7Zm9yKGNvbnN0IGwgb2YgT2JqZWN0LmtleXMoZSkpe2NvbnN0IGM9dFtsXXx8bDtjIGluIG8mJihyW2xdPVtvW2NdLGVbbF1dLmpvaW4oIiAiKSl9cmV0dXJuIHJ9KG8sZSx0KSl9dC5kKGUse21lcmdlVGhlbWVzOigpPT5yfSl9LDQ5MjY3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyl7Y29uc3QgZT1bXTtmb3IoY29uc3QgdCBpbiBvKWlmKG8uaGFzT3duUHJvcGVydHkodCkmJm51bGwhPW9bdF0pe2NvbnN0IHI9b1t0XSxsPSJvYmplY3QiPT10eXBlb2Ygcj9KU09OLnN0cmluZ2lmeShyKTpTdHJpbmcocik7ZS5wdXNoKHtrZXk6dCxwYWlyOmVuY29kZVVSSUNvbXBvbmVudCh0KSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGwpfSl9cmV0dXJuIGUuc29ydCgoKG8sZSk9Pm8ua2V5PmUua2V5PzE6by5rZXk8ZS5rZXk/LTE6MCkpLm1hcCgobz0+by5wYWlyKSkuam9pbigiJiIpfXQuZChlLHtjcmVhdGVVcmxQYXJhbXM6KCk9PnJ9KX0sMTA3MDQ1KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse051bWVyaWNGb3JtYXR0ZXI6KCk9PmN9KTt2YXIgcj10KDU5ODkyMiksbD10KDU0NjQ4NSk7Y2xhc3MgY3tjb25zdHJ1Y3RvcihvPXt9KXt0aGlzLl9vcHRpb25zPW99Zm9ybWF0KG8sZT17fSl7aWYoIU51bWJlci5pc0Zpbml0ZShvKSlyZXR1cm4gU3RyaW5nKG8pO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0PXRoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0LG5vRXhwb25lbnRpYWxGb3JtOm49dGhpcy5fb3B0aW9ucy5ub0V4cG9uZW50aWFsRm9ybX09ZSx7bWluUHJlY2lzaW9uOmEscHJlY2lzaW9uOml9PXRoaXMuX29wdGlvbnMscz0oMCxsLmdldE51bWJlckZvcm1hdCkodCk7cmV0dXJuIHZvaWQgMD09PWk/Yy5fZm9ybWF0Tm9FSW1wbChvLHMsaSxhKTooMCxyLmZvcm1hdE51bWJlcikobyxzLGksbixhKX1wYXJzZShvLGUpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LHByZWNpc2lvbjpjfT10aGlzLl9vcHRpb25zLG49KDAsbC5nZXROdW1iZXJGb3JtYXQpKHR8fGU/Lmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGE9KDAsci5wYXJzZU51bWJlcikobyxuKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGEpPyhjJiYoYT0rYS50b0ZpeGVkKGMpKSx7cmVzOiEwLHZhbHVlOmF9KTp7cmVzOiExfX1zdGF0aWMgZm9ybWF0Tm9FKG8sZSl7cmV0dXJuIHRoaXMuX2Zvcm1hdE5vRUltcGwobyxlKX1zdGF0aWMgX2Zvcm1hdE5vRUltcGwobyxlLHQsbCl7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShvKT8oZT1lPz97Z3JvdXBpbmdTZXBhcmF0b3I6IiIsZGVjaW1hbFNpZ246Ii4ifSwoMCxyLmZvcm1hdE51bWJlcikobyxlLHQsITAsbCkpOlN0cmluZyhvKX19fSw5MDEwMjIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7U0VQQVJBVE9SX1BSRUZJWDooKT0+cn0pO2NvbnN0IHI9IiMjIyJ9LDM1NjM4MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRUb29sdGlwRGF0YTooKT0+bCxzZXRUb29sdGlwRGF0YTooKT0+Y30pO2NvbnN0IHI9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbChvLGUpe2NvbnN0IHQ9ci5nZXQobyk7cmV0dXJuIHQgaW5zdGFuY2VvZiBGdW5jdGlvbj90KGUpOnQmJnRbZV19ZnVuY3Rpb24gYyhvLGUsdCl7aWYodCBpbnN0YW5jZW9mIEZ1bmN0aW9uKXJldHVybiB2b2lkIHIuc2V0KG8sdCk7Y29uc3QgbD1yLmdldChvKSxjPXZvaWQgMD09PWx8fGwgaW5zdGFuY2VvZiBGdW5jdGlvbj97fTpsO2NbZV09dCxyLnNldChvLGMpfX0sNDkwMzc4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldERhdGFGcm9tVGFyZ2V0OigpPT5tLGdldFRvb2x0aXA6KCk9PmgsaGlkZVRvb2x0aXA6KCk9PmYsCnNldFN0eWxlOigpPT5iLHNob3dUb29sdGlwOigpPT55fSk7dmFyIHIsbD10KDEzODYzOCksYz10KDQ0MzU1Nyksbj10KDk2OTE2OCksYT0odCg4MjkxODApLHQoNTE4NzUpKSxpPXQoNjQwNzQ0KSxzPXQoMzE4OTc0KSxkPXQoNjg2NjUwKSxnPXQoMzU2MzgwKSx1PXQoMzQ1MTUxKSxwPXQoMTE0MDY4KTtmdW5jdGlvbiBtKG8pe2NvbnN0IGU9ZnVuY3Rpb24obyl7Y29uc3QgZT1vLmhhc0F0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik/by5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcCIpOm8uZ2V0QXR0cmlidXRlKCJ0aXRsZSIpO3JldHVybiBlJiYoKDAsZy5zZXRUb29sdGlwRGF0YSkobywidGV4dCIsZSksby5yZW1vdmVBdHRyaWJ1dGUoInRpdGxlIikpLCgwLGcuZ2V0VG9vbHRpcERhdGEpKG8sInRleHQiKXx8IiJ9KG8pLHQ9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxyPXtoOnQuaGVpZ2h0LHc6dC53aWR0aCx4OnQubGVmdCx5OnQudG9wfSxsPW8uZ2V0QXR0cmlidXRlKCJkYXRhLWNvbG9yLXRoZW1lIil8fCIiLGM9by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLWh0bWwiKSxuPXBhcnNlSW50KG8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtZGVsYXkiKXx8IiIpLGE9cGFyc2VJbnQoby5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1kZWJvdW5jZSIpfHwiIik7bGV0IGk9e3R5cGU6Im5vbmUifTtyZXR1cm4gZSYmKGk9e3R5cGU6Yz8iaHRtbCI6InRleHQiLGRhdGE6ZX0pLHthYm92ZTpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYWJvdmUiKSxiZWxvdzpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYmVsb3ciKSxvdGw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW90bCIpLG90cjpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtb3RyIiksdmVydGljYWw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLXZlcnRpY2FsIiksaG90a2V5Om8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtaG90a2V5IiksbmFycm93Om8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1uYXJyb3ciKSx3aWRlOm8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC13aWRlIiksY29sb3JUaGVtZTpsLHRvb2x0aXBEZWxheTpuLHRvb2x0aXBEZWJvdW5jZTphLHJlY3Q6cixjb250ZW50OmksdGFyZ2V0Om99fWZ1bmN0aW9uIGgobyl7Y29uc3QgZT0oMCxsLmVuc3VyZU5vdE51bGwpKEYpLmNsb25lTm9kZSghMCksdD1EKGUpLHtjb250ZW50OnJ9PW87c3dpdGNoKHIudHlwZSl7Y2FzZSJlbGVtZW50Ijp0LmlubmVySFRNTD0iIix0LmFwcGVuZENoaWxkKHIuZGF0YSk7YnJlYWs7Y2FzZSJodG1sIjp0LmlubmVySFRNTD1yLmRhdGE7YnJlYWs7Y2FzZSJ0ZXh0IjppZihvLmhvdGtleSl7Y29uc3Qgbz0oMCxsLmVuc3VyZU5vdE51bGwpKEMpLmNsb25lTm9kZSghMCk7by5pbm5lclRleHQ9ci5kYXRhLHQuYXBwZW5kQ2hpbGQobyl9ZWxzZSB0LmlubmVyVGV4dD1yLmRhdGF9aWYoby5ob3RrZXkpe2NvbnN0IGU9Im5vbmUiIT09ci50eXBlLGM9KDAsbC5lbnN1cmVOb3ROdWxsKShFKS5jbG9uZU5vZGUoITApLG49KDAsdS5ob3RLZXlEZXNlcmlhbGl6ZSkoby5ob3RrZXkpLGE9bi5rZXlzLm1hcCgobz0+YDxzcGFuIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIl19Ij4ke299PC9zcGFuPmApKTtjLmlubmVySFRNTD1mdW5jdGlvbihvLGUpe2NvbnN0IHQ9L3tcZH18e2hvdGtleV9cZH0vZ2k7cmV0dXJuIG8ucmVwbGFjZSh0LChvPT57Y29uc3QgdD1OdW1iZXIoby5tYXRjaCgvXGQvKSk7cmV0dXJuIGVbdF19KSl9KG4udGV4dCxhKS5yZXBsYWNlKC9cc1wrXHMvZyxgPHNwYW4gY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbiJdfSI+Kzwvc3Bhbj5gKSx0LmNsYXNzTGlzdC5hZGQocFsiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5Il0pLGUmJmMuY2xhc3NMaXN0LmFkZChwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIl0pLHQuYXBwZW5kQ2hpbGQoYyl9cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGEucHJldmVudERlZmF1bHQpLGV9ZnVuY3Rpb24gYihvLGUpe2NvbnN0IHQ9ZS5yZWN0O2lmKCF0KXJldHVybjsoMCxkLnNldFRvb2x0aXBDb2xvclRoZW1lKShvLGUuY29sb3JUaGVtZXx8ImRlZmF1bHQiKTtjb25zdCByPUQobyksbD1vLnF1ZXJ5U2VsZWN0b3IoYC4ke3BbImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19YCk7ZS5hZGRDbGFzcyYmby5jbGFzc0xpc3QuYWRkKGUuYWRkQ2xhc3MpLGUuYWRkQm9keUNsYXNzJiZyLmNsYXNzTGlzdC5hZGQoZS5hZGRCb2R5Q2xhc3MpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSJdLEJvb2xlYW4oZS53aWRlKSksci5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIl0sQm9vbGVhbihlLm5vUGFkZGluZykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93Il0sQm9vbGVhbihlLm5hcnJvdykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucyJdLCEwKSxyLnN0eWxlLmxlZnQ9digwKSxyLnN0eWxlLndpZHRoPXYoci5jbGllbnRXaWR0aCsoQm9vbGVhbihlLm5vUGFkZGluZyk/MDoyKSk7Y29uc3QgYz1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLGE9cy5DaGVja01vYmlsZS5pT1MoKXx8cy5DaGVja01vYmlsZS5BbmRyb2lkKCl8fCgwLHMuc3VwcG9ydFRvdWNoKSgpJiYoMCxzLmlzTWFjKSgpP3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCxnPWUudmVydGljYWwsdT1lLmV4dGVuZE1hcmdpbnx8ZyYmdC53PDIwfHwhZyYmdC5oPDIwO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZmFydGhlciJdLHUpLApvLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLXZlcnRpY2FsIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsIl0sIWcpO2NvbnN0IG09ZnVuY3Rpb24obyl7cmV0dXJuIG8ucXVlcnlTZWxlY3RvcihgLiR7cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiXX1gKX0obyksaD1vLm9mZnNldEhlaWdodDtpZihnKXtjb25zdCBzPTEwLGQ9YS0xMCxnPTEyLHU9cytnLGI9ZC1nLHk9KDAsaS5jbGFtcCkodC55K3QuaC8yLHUsYiktaC8yLGY9eStoO28uc3R5bGUubGVmdD12KHQueCt0LncpLG8uc3R5bGUudG9wPXYoeSkseTxzP3Iuc3R5bGUudG9wPWwuc3R5bGUudG9wPXYocy15KTpmPmQmJihyLnN0eWxlLnRvcD1sLnN0eWxlLnRvcD12KGQtZikpO2NvbnN0e3JpZ2h0Ond9PShvLnF1ZXJ5U2VsZWN0b3IoIjpsYXN0LWNoaWxkIil8fHIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLF89dysxMD5jO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sXyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIV8pO2xldCBrPV8/ImFmdGVyIjoiYmVmb3JlIjsoMCxuLmlzUnRsKSgpPyhrPWUub3RyPyJhZnRlciI6ayxrPWUub3RsPyJiZWZvcmUiOmspOihrPWUub3RyPyJiZWZvcmUiOmssaz1lLm90bD8iYWZ0ZXIiOmspLG0uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVmb3JlIl0sImJlZm9yZSI9PT1rKSxtLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyIl0sImFmdGVyIj09PWspLCJhZnRlciI9PT1rJiYoby5zdHlsZS5sZWZ0PSJhdXRvIixvLnN0eWxlLnJpZ2h0PXYoYy10LngpKX1lbHNle2NvbnN0IG49dC54LShyLm9mZnNldFdpZHRoLXQudykvMixpPWMtby5vZmZzZXRXaWR0aC0yMDw9MD8oYy1vLm9mZnNldFdpZHRoKS8yOjEwLHM9Yy1pLW8ub2Zmc2V0V2lkdGgsZD1NYXRoLm1heChpLE1hdGgubWluKG4scykpO28uc3R5bGUubGVmdD12KGQpO2NvbnN0IGc9czxuO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIWcpO2NvbnN0IHU9ZnVuY3Rpb24obyxlLHQscil7aWYoby5hYm92ZSlyZXR1cm4gTChlLHIpPyJhYm92ZSI6ImJlbG93IjtpZihvLmJlbG93KXJldHVybiBmdW5jdGlvbihvLGUsdCl7cmV0dXJuIHQueSt0LmgrZSsxMDxvfShlLHQscik/ImJlbG93IjoiYWJvdmUiO3JldHVybiBMKHQscik/ImFib3ZlIjoiYmVsb3cifShlLGEsaCx0KTsiYWJvdmUiPT09dT9vLnN0eWxlLmJvdHRvbT12KGEtdC55KTpvLnN0eWxlLnRvcD12KHQueSt0LmgpLG0uY2xhc3NMaXN0LmFkZCgiYWJvdmUiPT09dT9wWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUiXTpwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ciXSk7Y29uc3R7bGVmdDpifT1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2xldCB5PU1hdGgudHJ1bmModC54K3Qudy8yLShiK3IuY2xpZW50V2lkdGgvMikpO28uc3R5bGUubGVmdD12KGQreSksby5zdHlsZS53aWR0aD12KHIuY2xpZW50V2lkdGgrbC5jbGllbnRXaWR0aCkseT1nP01hdGgubWF4KDAseSk6TWF0aC5taW4oMCx5KSxsLnN0eWxlLmxlZnQ9digteSksci5zdHlsZS5sZWZ0PXYoLXkpfX1mdW5jdGlvbiB5KG8pe28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0taGlkZGVuIl0sITEpfWZ1bmN0aW9uIGYobyl7by5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMCl9ZnVuY3Rpb24gdihvKXtyZXR1cm5gJHtNYXRoLmZsb29yKG8pfXB4YH0hZnVuY3Rpb24obyl7b1tvLlZpZXdwb3J0UGFkZGluZz0xMF09IlZpZXdwb3J0UGFkZGluZyJ9KHJ8fChyPXt9KSk7Y29uc3Qgdz1gXG5cdDxkaXYgaWQ9ImNvbW1vbi10b29sdGlwLXdyYXBwZXIiIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwIl19Ij5cblx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19IiA+XG5cdFx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ib2R5Il19IGpzLXRvb2x0aXAtYm9keSI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciJdfSI+PC9kaXY+XG5cdDwvZGl2PlxuYCxfPWBcblx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIl19Ij48L2Rpdj5cbmAsaz1gXG5cdDxkaXYgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0Il19Ij48L2Rpdj5cbmAsRj0oMCxjLnBhcnNlSHRtbEVsZW1lbnQpKHcpLEU9KDAsYy5wYXJzZUh0bWxFbGVtZW50KShfKSxDPSgwLGMucGFyc2VIdG1sRWxlbWVudCkoayk7ZnVuY3Rpb24gRChvKXtyZXR1cm4gby5xdWVyeVNlbGVjdG9yKGAuJHtwWyJjb21tb24tdG9vbHRpcF9fYm9keSJdfWApfWZ1bmN0aW9uIEwobyxlKXtyZXR1cm4gMTArbzxlLnl9fSwxNjc4OTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7ZW1wdHk6KCk9Pm4sc2V0VG9vbHRpcDooKT0+YX0pO2NvbnN0IHI9InRvb2x0aXAtcm9vdC1lbGVtZW50IjtsZXQgbDtmdW5jdGlvbiBjKCl7Y29uc3Qgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChyKTtvP2w9bzoobD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxsLmlkPXIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsKSl9ZnVuY3Rpb24gbigpe2wmJihsLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gYShvKXtuKCksbHx8YygpLGwuYXBwZW5kQ2hpbGQobyl9ImludGVyYWN0aXZlIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/YygpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGMpfSw2NTg5OTUobyxlLHQpeyJ1c2Ugc3RyaWN0Igo7dC5kKGUse2NsZWFyU2NoZWR1bGU6KCk9Pm4sc2NoZWR1bGVIaWRlOigpPT5pLHNjaGVkdWxlUmVtb3ZlOigpPT5hLHNjaGVkdWxlUmVuZGVyOigpPT5zfSk7bGV0IHI9MCxsPTAsYz0wO2Z1bmN0aW9uIG4oKXtjbGVhclRpbWVvdXQociksY2xlYXJUaW1lb3V0KGwpLGNsZWFyVGltZW91dChjKX1mdW5jdGlvbiBhKG8sZSl7Yz1zZXRUaW1lb3V0KG8sZSl9ZnVuY3Rpb24gaShvLGUpe2w9c2V0VGltZW91dChvLGUpfWZ1bmN0aW9uIHMobyxlKXtyPXNldFRpbWVvdXQobyxlKX19LDY4NjY1MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtzZXRUb29sdGlwQ29sb3JUaGVtZTooKT0+Y30pO2NvbnN0IHI9e2RlZmF1bHQ6IiIsd2hpdGU6InRoZW1lLXdoaXRlIixjaGFydDoidGhlbWUtY2hhcnQiLG5ld3M6InRoZW1lLW5ld3MiLCJyb3VuZC1zaGFkb3ciOiJ0aGVtZS1yb3VuZC1zaGFkb3cifSxsPU9iamVjdC5rZXlzKHIpO2Z1bmN0aW9uIGMobyxlKXtjb25zdCB0PWwuaW5jbHVkZXMoZSk/cltlXToiIjtvLmNsYXNzTGlzdC5yZW1vdmUoLi4ubC5tYXAoKG89PnJbb10pKS5maWx0ZXIoKG89PiEhbykpKSx0JiYhby5jbGFzc0xpc3QuY29udGFpbnModCkmJm8uY2xhc3NMaXN0LmFkZCh0KX19LDc0MjU3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtyZXR1cm4gbyYmby51dG1fY2FtcGFpZ24mJihvLnV0bV9jYW1wYWlnbis9YC0ke2V9YCksb31hc3luYyBmdW5jdGlvbiBsKG8sZSxyLGwpe2lmKCJsZW50YXJ1Ij09PW8pe2NvbnN0e2dldExlbnRhQ29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDQ0MjUzKSx0LmUoODUwMzgpXSkudGhlbih0LmJpbmQodCwyODQwNDEpKTtyZXR1cm4gbygpfWlmKCJjbW9uZXljb210dyI9PT1vKXtjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDY0NDUpLHQuZSg3MTM5NCldKS50aGVuKHQuYmluZCh0LDc3Nzc2OSkpO3JldHVybiBvKGUscil9aWYoIm5ldyI9PT1sKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg5Nzc5NyksdC5lKDc2MDQwKV0pLnRoZW4odC5iaW5kKHQsOTgxMTU3KSk7cmV0dXJuIG8oZSxyKX1pZigid2l0aF9ib3JkZXIiPT09bCl7Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNTM1MjEpLHQuZSgxNjgxMyldKS50aGVuKHQuYmluZCh0LDg1MjY2OSkpO3JldHVybiBvKGUscil9aWYoImxhcmdlX3RyYWRlIj09PWwpe2NvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDc0MDExKSx0LmUoNzkwNDEpXSkudGhlbih0LmJpbmQodCw0OTM1NTkpKTtyZXR1cm4gbyhlLHIpfXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDk3NTA5KV0pLnRoZW4odC5iaW5kKHQsNzA1NzkwKSk7cmV0dXJuIG8oZSxyKX19dC5kKGUse2FkZFV0bUNhbXBhaWduU291cmNlOigpPT5yLGdldEN1c3RvbWVyQ29weXJpZ2h0RGF0YTooKT0+bH0pfSw3NDgwMDIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9PnN9KTt2YXIgcj10KDIyMTA2MSksbD10KDM4NDAxNyksYz10KDUyODg2NCk7Y29uc3Qgbj13aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVHx8Imh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYueHN0YWdpbmctd2lkZ2V0LnR2IixhPSgwLHIuZ2V0TG9nZ2VyKSgiV2lkZ2V0U2hlcmlmZi5XaWRnZXQiKTtsZXQgaT1udWxsO2FzeW5jIGZ1bmN0aW9uIHMoKXtyZXR1cm4gbnVsbD09PWkmJihpPWF3YWl0IGFzeW5jIGZ1bmN0aW9uKCl7Y29uc3Qgbz1mdW5jdGlvbigpe2lmKGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aClyZXR1cm4gZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW2RvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgtMV07dHJ5e3JldHVybiBuZXcgVVJMKGRvY3VtZW50LnJlZmVycmVyKS5vcmlnaW59Y2F0Y2gobyl7cmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbnx8bnVsbH19KCk7aWYobnVsbD09PW8pcmV0dXJuIGEubG9nV2FybigiYW5jZXN0b3JPcmlnaW4gaXMgdW5kZWZpbmVkIiksUHJvbWlzZS5yZXNvbHZlKFtdKTtjb25zdCBlPW5ldyBVUkwoIi9zaGVyaWZmL2FwaS92MS9ydWxlcy9zZWFyY2giLG4pO2Uuc2VhcmNoUGFyYW1zLmFwcGVuZCgib3JpZ2luIixvKTtyZXR1cm4oYXdhaXQoMCxsLmZldGNoKShlLnRvSlNPTigpKS50aGVuKChvPT57aWYoIW8ub2spdGhyb3cgbmV3IEVycm9yKCJHdWFyZCByZXF1ZXN0IGVycm9yIG9jY3VyZWQiKTtyZXR1cm4gMjA0PT09by5zdGF0dXM/UHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSk6by5qc29uKCl9KSkuY2F0Y2goKG89PihhLmxvZ1dhcm4oby5tZXNzYWdlKSxQcm9taXNlLnJlc29sdmUoe2FjdGlvbnM6W119KSkpKSkuYWN0aW9ucy5maWx0ZXIoKG89PmMud2lkZ2V0U2hlcmlmZkFjdGlvbnMuaGFzKG8pKSl9KCkpLFByb21pc2UucmVzb2x2ZShpKX19LDI2NTEwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9Pml9KTt2YXIgcj10KDEzODYzOCksbD10KDc0ODAwMiksYz10KDY1MzgxNyksbj10KDc0MjU3NyksYT10KDUyODg2NCk7ZnVuY3Rpb24gaShvLGUsdCxpPXt9KXtpZihudWxsPT09by5wYXJlbnRFbGVtZW50KXJldHVybiBjb25zb2xlLndhcm4oIkNhbiBub3Qgd3JhcCAnZWxXaWRnZXRDb250YWluZXInIGJlY2F1c2UgaXQgaGFzIG5vIHBhcmVudEVsZW1lbnQiKSxvO2xldCBzPW51bGwsZD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKTtjb25zdCBnPW51bGwhPT1kO2lmKGcpe2Q9KDAsci5lbnN1cmVOb3ROdWxsKShkKSxzPSgwLApyLmVuc3VyZU5vdE51bGwpKGQucGFyZW50RWxlbWVudCk7bGV0IG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1oZWFkIik7bnVsbD09PW8mJihvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8uY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlciIpLG8uY2xhc3NMaXN0LmFkZCgianMtZW1iZWQtd2lkZ2V0LWhlYWQiKSxzLmluc2VydEJlZm9yZShvLGQpKX1lbHNlIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iikscy5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlciIpLHMuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIGpzLWVtYmVkLXdpZGdldC1oZWFkIj48L2Rpdj48ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keSBqcy1lbWJlZC13aWRnZXQtYm9keSI+PC9kaXY+JyxkPXMucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1ib2R5Iik7aWYoaS5vdmVyZmxvd0F1dG8mJmQuY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHktLW92ZXJmbG93X2F1dG8iKSxpLnNob3dCb3JkZXJPblRyYW5zcGFyZW50JiZkLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQiKSwhaS5pc1doaXRlTGFiZWwpeyFhc3luYyBmdW5jdGlvbihvLGUsdCxpLHM9e30pe2NvbnN0IGQ9cy5pc1NoZXJpZmZEaXNhYmxlZD9bXTphd2FpdCgwLGwuZ2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnMpKCksZz1kLmluY2x1ZGVzKGEuS25vd25BY3Rpb24uTGFyZ2VUcmFkZUxvZ28pLHU9ZnVuY3Rpb24obyl7cmV0dXJuWyJjcnlwdG8tY29pbnMtaGVhdG1hcCIsImZvcmV4LWNyb3NzLXJhdGVzIiwibWFya2V0LW92ZXJ2aWV3Iiwic3ltYm9sLW92ZXJ2aWV3IiwibWFya2V0LXF1b3RlcyIsInN0b2NrLWhlYXRtYXAiLCJzY3JlZW5lciIsImZvcmV4LWhlYXQtbWFwIiwiY3J5cHRvLW1rdC1zY3JlZW5lciIsImV2ZW50cyIsImhvdGxpc3RzIl0uaW5jbHVkZXMobyl9KGUpLHA9ZyYmdT8ibGFyZ2VfdHJhZGUiOnZvaWQgMCxtPWF3YWl0KDAsbi5nZXRDdXN0b21lckNvcHlyaWdodERhdGEpKHMuY3VzdG9tZXIscy5sb2NhbGUsKDAsbi5hZGRVdG1DYW1wYWlnblNvdXJjZSkoey4uLml9LCJsb2dvIikscCksaD1wPz9zLmNvcHlyaWdodE9wdGlvbnM/Lm1vZGU/PyJzbWFsbF9vbGQiOygwLHIuZW5zdXJlTm90TnVsbCkobykuYXBwZW5kQ2hpbGQoKDAsYy5jcmVhdGVDb3B5cmlnaHRMYWJlbCkoe3NoZXJpZmZPcHRpb25zOmQsc25hcFRvRWRnZTp0LC4uLnMuY29weXJpZ2h0T3B0aW9ucywuLi5tLG1vZGU6aH0pKX0oZCxlLCFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJpcy10cmFuc3BhcmVudCIpfHxCb29sZWFuKGkuc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQpLHQsaSl9cmV0dXJuIGd8fChvLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHMsbyksZC5hcHBlbmRDaGlsZChvKSksb319LDc1MTU1NyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9PnIuY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyfSk7dCg4MDQ2MTkpO3ZhciByPXQoMjY1MTA4KX0sNDI5NjYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSk7dmFyIHI9dCg4NTYzMjQpLGw9dCg5NjMwOTgpOygwLHIucmVnaXN0ZXJMYW5ndWFnZUdldHRlcikoKCgpPT53aW5kb3cubGFuZ3VhZ2V8fCIiKSksKDAsci5yZWdpc3Rlckxhbmd1YWdlQ29kZU1hcHBlcikobC5nZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2UpfSw2MzE2MzQobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0SW5pdERhdGE6KCk9Pmx9KTt2YXIgcj10KDc5MjYxMik7ZnVuY3Rpb24gbCgpe3JldHVybigwLHIuZ2V0SW5pdERhdGEpKCl9fSw0MDAxODEobyxlLHQpeyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNzA2NDQpLHQuZSg5NTIwNyldKS50aGVuKHQuYmluZCh0LDQ3NzE1MCkpO3JldHVybiBvKCl9dC5kKGUse2dldFRyYWNrZXI6KCk9PnJ9KX0sMTU2ODI5KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtyZXR1cm4gdm9pZCAwIT09byYmby5pbmNsdWRlcygiY3J5cHRvIil9dC5kKGUse2hhc0NyeXB0b1R5cGVzcGVjOigpPT5yfSl9LDc5NTM4MyhvLGUsdCl7dCgzNjMyNjkpLnNldENsYXNzZXMoKSx0KDQyOTY2KSx0KDYxMDI2OCk7dmFyIHI9dCg3NDk2NDgpLndoZW5Eb2N1bWVudFJlYWR5LGw9dCg5MzExOTgpLmhhbmRsZVRWTGlua3NDbGljaztyKCgoKT0+e2woKX0pKX0sNjEwMjY4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLCgwLHQoMTE1MjkzKS5zZXREb2N1bWVudERpckdldHRlcikoKCgpPT53aW5kb3cuZG9jdW1lbnQuZGlyKSl9LDI0MTkzNyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtjb25zdCB0PWV8fHdpbmRvdy5sb2NhbGV8fCJlbiI7bGV0IHI9b1t0XT9vW3RdOm8uZW47cmV0dXJuIHI9InRyYWRpbmd2aWV3LmNvbSI9PT1yPyJ3d3cudHJhZGluZ3ZpZXcuY29tIjpyLHI/ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wrIi8vIityOiIifXQuZChlLHtkZXRlcm1pbmVCYXNlVXJsOigpPT5yfSl9LDk2MzkwMChvLGUsdCl7InVzZSBzdHJpY3QiO3ZhciByOyFmdW5jdGlvbihvKXtvLkVtcHR5PSIiLG8uVGVjaG5pY2Fsc1BhdGg9InRlY2huaWNhbHMvIixvLkZpbmFuY2lhbHNPdmVydmlld1BhdGg9ImZpbmFuY2lhbHMtb3ZlcnZpZXcvIixvLlRpbWVsaW5lUGF0aD0iaGlzdG9yeS10aW1lbGluZS8iLG8uTmV3c1BhdGg9Im5ld3MvIixvLk9wdGlvbnNQYXRoPSJvcHRpb25zLyIsby5Qcm9maWxlUGF0aD0icHJvZmlsZS8iLG8uSG9sZGluZ3NQYXRoPSJob2xkaW5ncy8ifShyfHwocj17fSkpfSw1MjgzOTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7CmdldFRyYW5zbGF0ZWRTeW1ib2xEZXNjcmlwdGlvbjooKT0+Y30pO3ZhciByPXQoMTg1MjcxKTtmdW5jdGlvbiBsKG8pe2NvbnN0IGU9YCMke299LXN5bWJvbC1kZXNjcmlwdGlvbmAsbD1yLnQoZSx2b2lkIDAsdCgyNTg2NjcpKTtyZXR1cm4gbD09PWU/bnVsbDpsfWZ1bmN0aW9uIGMobyl7aWYodm9pZCAwIT09by5wcm9fbmFtZSl7Y29uc3QgZT1sKG8ucHJvX25hbWUpO2lmKG51bGwhPT1lKXJldHVybiBlO2lmKHZvaWQgMCE9PW8uc2hvcnRfbmFtZSl7Y29uc3QgZT1sKG8uc2hvcnRfbmFtZSk7aWYobnVsbCE9PWUpcmV0dXJuIGV9fXJldHVybiJlbiIhPT1vLmxhbmd1YWdlJiZ2b2lkIDAhPT1vLmxvY2FsX2Rlc2NyaXB0aW9uJiZvLmxhbmd1YWdlPT09d2luZG93Lmxhbmd1YWdlfHwiZW4iPT09by5sYW5ndWFnZSYmdm9pZCAwIT09by5sb2NhbF9kZXNjcmlwdGlvbiYmby5sYW5ndWFnZT09PXdpbmRvdy5sYW5ndWFnZT9vLmxvY2FsX2Rlc2NyaXB0aW9uOm8uZGVzY3JpcHRpb258fCIifX0sNzMwNjQ1KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtjb25zdCBlPW5ldyBVUkwobyxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm4gYyhlKSYmbChlKX10LmQoZSx7aXNJbnRlcm5hbEhvc3Q6KCk9Pm4saXNTYWZlVXJsOigpPT5yfSk7Y29uc3QgbD1vPT4hby51c2VybmFtZSxjPW89PiJodHRwOiI9PT1vLnByb3RvY29sfHwiaHR0cHM6Ij09PW8ucHJvdG9jb2w7ZnVuY3Rpb24gbihvLGU9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKXtjb25zdCB0PSIuIj09PWUuc2xpY2UoLTEpPzM6MixyPWUudG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC10KSxsPW8udG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC1yLmxlbmd0aCk7cmV0dXJuIHIuam9pbigiLiIpPT09bC5qb2luKCIuIil9fSw3Mzg0NTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNBbmRyb2lkOigpPT51LGlzQW55TW9iaWxlOigpPT55LGlzQmxhY2tCZXJyeTooKT0+cCxpc0Nocm9tZTooKT0+YSxpc0VkZ2U6KCk9PnMsaXNGRjooKT0+aSxpc0lPUzooKT0+bSxpc0lQYWQ6KCk9PmIsaXNNYWM6KCk9PmcsaXNPcGVyYU1pbmk6KCk9PmgsaXNTYWZhcmk6KCk9PmQsbW9iaWxldG91Y2g6KCk9PmMsdG91Y2g6KCk9Pm59KTtjb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixsPXImJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LGM9ciYmbCYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LG49ciYmKGx8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxhPXImJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxpPXImJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLHM9ciYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGQ9ciYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZz1yJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHU9KHImJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksciYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxwPXImJi9CbGFja0JlcnJ5L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxtPXImJi9pUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksaD1yJiYvT3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksYj1yJiYoIk1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjF8fC9pUGFkLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLHk9dXx8cHx8bXx8aH0sMzE3NjYzKG8peyJ1c2Ugc3RyaWN0Igo7by5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29sb3Itd2hpdGUiOiIjZmZmZmZmIiwiY29sb3ItYmxhY2siOiIjMDAwMDAwIiwiY29sb3ItdHJhbnNwYXJlbnQiOiIjMDAwMDAwMDAiLCJjb2xvci1jb2xkLWdyYXktNTAiOiIjRjlGOUY5IiwiY29sb3ItY29sZC1ncmF5LTEwMCI6IiNGMkYyRjIiLCJjb2xvci1jb2xkLWdyYXktMTUwIjoiI0VCRUJFQiIsImNvbG9yLWNvbGQtZ3JheS0yMDAiOiIjREJEQkRCIiwiY29sb3ItY29sZC1ncmF5LTI1MCI6IiNDOUM5QzkiLCJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0I4QjhCOCIsImNvbG9yLWNvbGQtZ3JheS0zNTAiOiIjQThBOEE4IiwiY29sb3ItY29sZC1ncmF5LTQwMCI6IiM5QzlDOUMiLCJjb2xvci1jb2xkLWdyYXktNDUwIjoiIzhDOEM4QyIsImNvbG9yLWNvbGQtZ3JheS01MDAiOiIjODA4MDgwIiwiY29sb3ItY29sZC1ncmF5LTU1MCI6IiM3MDcwNzAiLCJjb2xvci1jb2xkLWdyYXktNjAwIjoiIzYzNjM2MyIsImNvbG9yLWNvbGQtZ3JheS02NTAiOiIjNTc1NzU3IiwiY29sb3ItY29sZC1ncmF5LTcwMCI6IiM0QTRBNEEiLCJjb2xvci1jb2xkLWdyYXktNzUwIjoiIzNEM0QzRCIsImNvbG9yLWNvbGQtZ3JheS04MDAiOiIjMkUyRTJFIiwiY29sb3ItY29sZC1ncmF5LTg1MCI6IiMxRjFGMUYiLCJjb2xvci1jb2xkLWdyYXktOTAwIjoiIzBGMEYwRiIsImNvbG9yLWNvbGQtZ3JheS05NTAiOiIjMDAwMDAwIiwiY29sb3ItcmlwZS1yZWQtNTAiOiIjRkZFQkVDIiwiY29sb3ItcmlwZS1yZWQtMTAwIjoiI0ZDQ0JDRCIsImNvbG9yLXJpcGUtcmVkLTIwMCI6IiNGQUExQTQiLCJjb2xvci1yaXBlLXJlZC0zMDAiOiIjRjc3QzgwIiwiY29sb3ItcmlwZS1yZWQtNDAwIjoiI0Y3NTI1RiIsImNvbG9yLXJpcGUtcmVkLTUwMCI6IiNGMjM2NDUiLCJjb2xvci1yaXBlLXJlZC02MDAiOiIjQ0MyRjNDIiwiY29sb3ItcmlwZS1yZWQtNzAwIjoiI0IyMjgzMyIsImNvbG9yLXJpcGUtcmVkLTgwMCI6IiM5OTFGMjkiLCJjb2xvci1yaXBlLXJlZC05MDAiOiIjODAxOTIyIiwiY29sb3ItcmlwZS1yZWQtYTEwMCI6IiNGRjgwODAiLCJjb2xvci1yaXBlLXJlZC1hMjAwIjoiI0ZGNTI1MiIsImNvbG9yLXJpcGUtcmVkLWE0MDAiOiIjRkYzMzMzIiwiY29sb3ItcmlwZS1yZWQtYTYwMCI6IiNDQzI5MjkiLCJjb2xvci1yaXBlLXJlZC1hNzAwIjoiIzgwMjAyOCIsImNvbG9yLXJpcGUtcmVkLWE4MDAiOiIjNEQxOTFEIiwiY29sb3ItcmlwZS1yZWQtYTkwMCI6IiMzMzFGMjAiLCJjb2xvci10YW4tb3JhbmdlLTUwIjoiI0ZGRjNFMCIsImNvbG9yLXRhbi1vcmFuZ2UtMTAwIjoiI0ZGRTBCMiIsImNvbG9yLXRhbi1vcmFuZ2UtMjAwIjoiI0ZGQ0M4MCIsImNvbG9yLXRhbi1vcmFuZ2UtMzAwIjoiI2ZmYjc0ZCIsImNvbG9yLXRhbi1vcmFuZ2UtNDAwIjoiI0ZGQTcyNiIsImNvbG9yLXRhbi1vcmFuZ2UtNTAwIjoiI0ZGOTgwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNjAwIjoiI0ZCOEMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNzAwIjoiI0Y1N0MwMCIsImNvbG9yLXRhbi1vcmFuZ2UtODAwIjoiI0VGNkMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtOTAwIjoiI2U2NTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTEwMCI6IiNGRkQxODAiLCJjb2xvci10YW4tb3JhbmdlLWEyMDAiOiIjZmZhYjQwIiwiY29sb3ItdGFuLW9yYW5nZS1hNDAwIjoiI0ZGOTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTUwMCI6IiNFNTdFMTciLCJjb2xvci10YW4tb3JhbmdlLWE2MDAiOiIjQ0M3MDE0IiwiY29sb3ItdGFuLW9yYW5nZS1hNzAwIjoiIzhDNTQxQyIsImNvbG9yLXRhbi1vcmFuZ2UtYTgwMCI6IiM1OTNBMUIiLCJjb2xvci10YW4tb3JhbmdlLWE5MDAiOiIjMzMyNjFBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwIjoiI0U4RjVFOSIsImNvbG9yLWlndWFuYS1ncmVlbi0xMDAiOiIjQzhFNkM5IiwiY29sb3ItaWd1YW5hLWdyZWVuLTIwMCI6IiNBNUQ2QTciLCJjb2xvci1pZ3VhbmEtZ3JlZW4tMzAwIjoiIzgxYzc4NCIsImNvbG9yLWlndWFuYS1ncmVlbi00MDAiOiIjNjZCQjZBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwMCI6IiM0Y2FmNTAiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tNjAwIjoiIzQzYTA0NyIsImNvbG9yLWlndWFuYS1ncmVlbi03MDAiOiIjMzg4ZTNjIiwiY29sb3ItaWd1YW5hLWdyZWVuLTgwMCI6IiMyRTdEMzIiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tOTAwIjoiIzFCNUUyMCIsImNvbG9yLWlndWFuYS1ncmVlbi1hMTAwIjoiI0I5RjZDQSIsImNvbG9yLWlndWFuYS1ncmVlbi1hMjAwIjoiIzY5RjBBRSIsImNvbG9yLWlndWFuYS1ncmVlbi1hNDAwIjoiIzAwRTY3NiIsImNvbG9yLWlndWFuYS1ncmVlbi1hNzAwIjoiIzAwYzg1MyIsImNvbG9yLWJhbmFuYS15ZWxsb3ctNTAiOiIjRkZGREU3IiwiY29sb3ItYmFuYW5hLXllbGxvdy0xMDAiOiIjRkZGOUM0IiwiY29sb3ItYmFuYW5hLXllbGxvdy0yMDAiOiIjRkZGNTlEIiwiY29sb3ItYmFuYW5hLXllbGxvdy0zMDAiOiIjRkZGMTc2IiwiY29sb3ItYmFuYW5hLXllbGxvdy00MDAiOiIjZmZlZTU4IiwiY29sb3ItYmFuYW5hLXllbGxvdy01MDAiOiIjZmZlYjNiIiwiY29sb3ItYmFuYW5hLXllbGxvdy02MDAiOiIjZmRkODM1IiwiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiOiIjZmJjMDJkIiwiY29sb3ItYmFuYW5hLXllbGxvdy04MDAiOiIjZjlhODI1IiwiY29sb3ItYmFuYW5hLXllbGxvdy05MDAiOiIjRjU3RjE3IiwiY29sb3ItYmFuYW5hLXllbGxvdy1hMTAwIjoiI0ZGRkY4RCIsImNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMCI6IiNGRkZGMDAiLCJjb2xvci1iYW5hbmEteWVsbG93LWE0MDAiOiIjZmZlYTAwIiwiY29sb3ItYmFuYW5hLXllbGxvdy1hNzAwIjoiI0VFREEwMSIsImNvbG9yLXR2LWJsdWUtNTAiOiIjRTNFRkZEIiwiY29sb3ItdHYtYmx1ZS0xMDAiOiIjQkJEOUZCIiwiY29sb3ItdHYtYmx1ZS0yMDAiOiIjOTBCRkY5IiwiY29sb3ItdHYtYmx1ZS0zMDAiOiIjNUI5Q0Y2IiwiY29sb3ItdHYtYmx1ZS00MDAiOiIjMzE3OUY1IiwiY29sb3ItdHYtYmx1ZS01MDAiOiIjMjk2MkZGIiwiY29sb3ItdHYtYmx1ZS02MDAiOiIjMUU1M0U1IiwiY29sb3ItdHYtYmx1ZS03MDAiOiIjMTg0OENDIiwiY29sb3ItdHYtYmx1ZS04MDAiOiIjMTQzRUIyIiwiY29sb3ItdHYtYmx1ZS05MDAiOiIjMEMzMjk5IiwiY29sb3ItdHYtYmx1ZS1hMTAwIjoiIzgyYjFmZiIsImNvbG9yLXR2LWJsdWUtYTIwMCI6IiM0NDhhZmYiLCJjb2xvci10di1ibHVlLWE0MDAiOiIjMjk3OWZmIiwiY29sb3ItdHYtYmx1ZS1hNjAwIjoiIzI5NjJGRiIsImNvbG9yLXR2LWJsdWUtYTcwMCI6IiMxNDNBODciLCJjb2xvci10di1ibHVlLWE4MDAiOiIjMTQyRTYxIiwiY29sb3ItdHYtYmx1ZS1hOTAwIjoiIzEzMjA0MiIsImNvbG9yLWRlZXAtYmx1ZS01MCI6IiNFREU3RjYiLCJjb2xvci1kZWVwLWJsdWUtMTAwIjoiI0QxQzRFOSIsImNvbG9yLWRlZXAtYmx1ZS0yMDAiOiIjQjM5RERCIiwiY29sb3ItZGVlcC1ibHVlLTMwMCI6IiM5NTc1Y2QiLCJjb2xvci1kZWVwLWJsdWUtNDAwIjoiIzdlNTdjMiIsImNvbG9yLWRlZXAtYmx1ZS01MDAiOiIjNjczYWI3IiwiY29sb3ItZGVlcC1ibHVlLTYwMCI6IiM1RTM1QjEiLCJjb2xvci1kZWVwLWJsdWUtNzAwIjoiIzUxMmRhOCIsImNvbG9yLWRlZXAtYmx1ZS04MDAiOiIjNDUyN0EwIiwiY29sb3ItZGVlcC1ibHVlLTkwMCI6IiMzMTFCOTIiLCJjb2xvci1kZWVwLWJsdWUtYTEwMCI6IiNiMzg4ZmYiLCJjb2xvci1kZWVwLWJsdWUtYTIwMCI6IiM3QzRERkYiLCJjb2xvci1kZWVwLWJsdWUtYTQwMCI6IiM2NTFGRkYiLCJjb2xvci1kZWVwLWJsdWUtYTcwMCI6IiM2MjAwRUEiLCJjb2xvci1taW50eS1ncmVlbi01MCI6IiNEQUYyRUUiLCJjb2xvci1taW50eS1ncmVlbi0xMDAiOiIjQUNFNURDIiwiY29sb3ItbWludHktZ3JlZW4tMjAwIjoiIzcwQ0NCRCIsImNvbG9yLW1pbnR5LWdyZWVuLTMwMCI6IiM0MkJEQTgiLCJjb2xvci1taW50eS1ncmVlbi00MDAiOiIjMjJBQjk0IiwiY29sb3ItbWludHktZ3JlZW4tNTAwIjoiIzA4OTk4MSIsImNvbG9yLW1pbnR5LWdyZWVuLTYwMCI6IiMwNjgwNkIiLCJjb2xvci1taW50eS1ncmVlbi03MDAiOiIjMDU2NjU2IiwiY29sb3ItbWludHktZ3JlZW4tODAwIjoiIzAwNEQ0MCIsImNvbG9yLW1pbnR5LWdyZWVuLTkwMCI6IiMwMDMzMkEiLCJjb2xvci1taW50eS1ncmVlbi1hMTAwIjoiI0E3RkZGMCIsImNvbG9yLW1pbnR5LWdyZWVuLWEyMDAiOiIjNDVFNUNCIiwiY29sb3ItbWludHktZ3JlZW4tYTQwMCI6IiMyQkQ5QkMiLCJjb2xvci1taW50eS1ncmVlbi1hNjAwIjoiIzI0QjI5QiIsImNvbG9yLW1pbnR5LWdyZWVuLWE3MDAiOiIjMUI3NjY3IiwiY29sb3ItbWludHktZ3JlZW4tYTgwMCI6IiMxMDQ0M0IiLCJjb2xvci1taW50eS1ncmVlbi1hOTAwIjoiIzA4MjYyMSIsImNvbG9yLWdyYXBlcy1wdXJwbGUtNTAiOiIjRjNFNUY1IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDAiOiIjRTFCRUU3IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0yMDAiOiIjQ0U5M0Q4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDAiOiIjYmE2OGM4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS00MDAiOiIjYWI0N2JjIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS01MDAiOiIjOWMyN2IwIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS02MDAiOiIjOGUyNGFhIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS03MDAiOiIjN2IxZmEyIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS04MDAiOiIjNkExQjlBIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS05MDAiOiIjNEExNDhDIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hMTAwIjoiI0VBODBGQyIsImNvbG9yLWdyYXBlcy1wdXJwbGUtYTIwMCI6IiNFMDQwRkIiLCJjb2xvci1ncmFwZXMtcHVycGxlLWE0MDAiOiIjRDUwMEY5IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hNzAwIjoiI2FhMDBmZiIsImNvbG9yLWJlcnJ5LXBpbmstNTAiOiIjRkNFNEVDIiwiY29sb3ItYmVycnktcGluay0xMDAiOiIjRjhCQkQwIiwiY29sb3ItYmVycnktcGluay0yMDAiOiIjZjQ4ZmIxIiwiY29sb3ItYmVycnktcGluay0zMDAiOiIjZjA2MjkyIiwiY29sb3ItYmVycnktcGluay00MDAiOiIjZWM0MDdhIiwiY29sb3ItYmVycnktcGluay01MDAiOiIjZTkxZTYzIiwiY29sb3ItYmVycnktcGluay02MDAiOiIjRDgxQjYwIiwiY29sb3ItYmVycnktcGluay03MDAiOiIjQzIxODVCIiwiY29sb3ItYmVycnktcGluay04MDAiOiIjQUQxNDU3IiwiY29sb3ItYmVycnktcGluay05MDAiOiIjODgwRTRGIiwiY29sb3ItYmVycnktcGluay1hMTAwIjoiI2ZmODBhYiIsImNvbG9yLWJlcnJ5LXBpbmstYTIwMCI6IiNmZjQwODEiLCJjb2xvci1iZXJyeS1waW5rLWE0MDAiOiIjZjUwMDU3IiwiY29sb3ItYmVycnktcGluay1hNzAwIjoiI2M1MTE2MiIsImNvbG9yLXNreS1ibHVlLTUwIjoiI0UwRjdGQSIsImNvbG9yLXNreS1ibHVlLTEwMCI6IiNCMkVCRjIiLCJjb2xvci1za3ktYmx1ZS0yMDAiOiIjODBERUVBIiwiY29sb3Itc2t5LWJsdWUtMzAwIjoiIzRkZDBlMSIsImNvbG9yLXNreS1ibHVlLTQwMCI6IiMyNmM2ZGEiLCJjb2xvci1za3ktYmx1ZS01MDAiOiIjMDBiY2Q0IiwiY29sb3Itc2t5LWJsdWUtNjAwIjoiIzAwYWNjMSIsImNvbG9yLXNreS1ibHVlLTcwMCI6IiMwMDk3QTciLCJjb2xvci1za3ktYmx1ZS04MDAiOiIjMDA4MzhGIiwiY29sb3Itc2t5LWJsdWUtOTAwIjoiIzAwNjA2NCIsImNvbG9yLXNreS1ibHVlLWExMDAiOiIjODRGRkZGIiwiY29sb3Itc2t5LWJsdWUtYTIwMCI6IiMxOEZGRkYiLCJjb2xvci1za3ktYmx1ZS1hNDAwIjoiIzAwZTVmZiIsImNvbG9yLXNreS1ibHVlLWE3MDAiOiIjMDBCOEQ0IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwIjoiI0RBRjJFNiIsImNvbG9yLWZvcmVzdC1ncmVlbi0xMDAiOiIjQUNFNUM5IiwiY29sb3ItZm9yZXN0LWdyZWVuLTIwMCI6IiM3MENDOUUiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tMzAwIjoiIzQyQkQ3RiIsImNvbG9yLWZvcmVzdC1ncmVlbi00MDAiOiIjMjJBQjY3IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwMCI6IiMwODk5NTAiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tNjAwIjoiIzA2ODA0MyIsImNvbG9yLWZvcmVzdC1ncmVlbi03MDAiOiIjMDU2NjM2IiwiY29sb3ItZm9yZXN0LWdyZWVuLTgwMCI6IiMwMDREMjciLCJjb2xvci1mb3Jlc3QtZ3JlZW4tOTAwIjoiIzFBMzMyNiIsImNvbG9yLWZhY2Vib29rIjoiIzE4NzdGMiIsImNvbG9yLWRlZXAtZmFjZWJvb2siOiIjMTU2NENBIiwiY29sb3ItdHdpdHRlciI6IiMxREExRjIiLCJjb2xvci1kZWVwLXR3aXR0ZXIiOiIjMTg4Q0QzIiwiY29sb3IteW91dHViZSI6IiNGRjAwMDAiLCJjb2xvci1saW5rZWRpbiI6IiMwMDdCQjUiLCJjb2xvci1zZWVraW5nLWFscGhhLWJyYW5kIjoiI2ZmNzIwMCJ9JykKfSw4Njc1MjIobyl7InVzZSBzdHJpY3QiCjtvLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2xvci1oZWFkZXItYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLWJnLXByaW1hcnkiOiJjb2xvci13aGl0ZSIsImNvbG9yLWJnLXByaW1hcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItYmctc2Vjb25kYXJ5IjoiY29sb3Itd2hpdGUiLCJjb2xvci1iZy1oaWdobGlnaHQiOiJjb2xvci1jb2xkLWdyYXktNTAiLCJjb2xvci1iZy1zY3JvbGwtYnV0dG9ucyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1sZWdhY3ktYmctc2Nyb2xsLWJ1dHRvbnMiOiJjb2xvci1jb2xkLWdyYXktODUwIiwiY29sb3ItbGVnYWN5LWJnLXdpZGdldCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItdGV4dC1wcmltYXJ5IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXRleHQtc2Vjb25kYXJ5IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRleHQtdGVydGlhcnkiOiJjb2xvci1jb2xkLWdyYXktNDAwIiwiY29sb3ItdGV4dC1kaXNhYmxlZCI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1hY2NlbnQtY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1ib3gtc2hhZG93IjoiY29sb3ItY29sZC1ncmF5LTMwMCIsImNvbG9yLWRpdmlkZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItZGl2aWRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1kaXZpZGVyLXNlY29uZGFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1hY3RpdmUtaG92ZXItdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1hbGVydC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvcmRlci10YWJsZSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1icmFuZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYnJhbmQtYWN0aXZlIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci1icmFuZC1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItY2hhcnQtcGFnZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC1iZyI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1kYW5nZXIiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1kYW5nZXItaG92ZXIiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1kYW5nZXItYWN0aXZlIjoiY29sb3ItcmlwZS1yZWQtNjAwIiwiY29sb3ItZGVwdGhyZW5kZXJlci1zdHJva2Utc3R5bGUiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItaGlnaGxpZ2h0LW5ldyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAiLCJjb2xvci1pbnB1dC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaW5wdXQtcHVibGlzaC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItbGluayI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItbGluay1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItbGluay1hY3RpdmUiOiJjb2xvci10di1ibHVlLTcwMCIsImNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItcGFuZS1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItcGFuZS1zZWNvbmRhcnktYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLXByaW1hcnktc3ltYm9sIjoiY29sb3Itc2t5LWJsdWUtNTAwIiwiY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb24iOiJjb2xvci1jb2xkLWdyYXktNjUwIiwiY29sb3Itc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLXN1Y2Nlc3MtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1zdWNjZXNzLWFjdGl2ZSI6ImNvbG9yLW1pbnR5LWdyZWVuLTcwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbiI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWwiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1vcGVuZWQtZWxlbWVudC1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1wb3B1cC1iYWNrZ3JvdW5kIjoiY29sb3Itd2hpdGUiLCJjb2xvci1wb3B1cC1lbGVtZW50LXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmUiOiJjb2xvci13aGl0ZSIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWFjdGl2ZS1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtMjAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci10b29sdGlwLWJnIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uIjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdW5kZXJsaW5lZC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXdpZGdldC1wYWdlcy1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itd2FybmluZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItZ3Jvd2luZyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWZhbGxpbmciOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1mb3JleC1pY29uIjoiY29sb3ItY29sZC1ncmF5LTc1MCIsImNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTQwMCIsImNvbG9yLWxpc3QtaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1saXN0LWl0ZW0tdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2siOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcHJpY2UtYXhpcy1sYWJlbC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXByaWNlLWF4aXMtZ2VhciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXIiOiJjb2xvci1ibGFjayIsImNvbG9yLXByaWNlLWF4aXMtaGlnaGxpZ2h0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJpZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvcmRlci1jaGF0LWZpZWxkcyI6ImNvbG9yLWNvbGQtZ3JheS0yNTAiLCJjb2xvci1ib3JkZXItaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMjUwIiwiY29sb3ItYnV0dG9uLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZSI6ImNvbG9yLWNvbGQtZ3JheS02NTAiLCJjb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRpc2FibGVkLWlucHV0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWVtcHR5LWNvbnRhaW5lci1tZXNzYWdlIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWljb25zIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWlucHV0LXRleHRhcmVhLXJlYWRvbmx5IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLWlucHV0LXBsYWNlaG9sZGVyLXRleHQiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3ItaXRlbS1hY3RpdmUtYmx1ZSI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1pdGVtLWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1ibHVlIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItaXRlbS1hY3RpdmUtdGV4dCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWxpc3QtaXRlbSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1uZXdzLWhpZ2hsaWdodCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItcGxhY2Vob2xkZXIiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3Itcm93LWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMzAwIiwiY29sb3Itc2VwYXJhdG9yLXRhYmxlLWNoYXQiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGFnLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10YWctaG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGV4dC1yZWd1bGFyIjoiY29sb3ItY29sZC1ncmF5LTcwMCIsImNvbG9yLXR2LWJ1dHRvbi1jaGVja2VkIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXNjcm9sbC1iZyI6ImNvbG9yLWNvbGQtZ3JheS00MDAiLCJjb2xvci1zY3JvbGwtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXdpZGdldC1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3ciOiJjb2xvci13aGl0ZSIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQiOiJjb2xvci1jb2xkLWdyYXktMjAwIiwiY29sb3ItY29udHJvbC1pbnRlbnQtc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmciOiJjb2xvci10YW4tb3JhbmdlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRhbmdlciI6ImNvbG9yLXJpcGUtcmVkLTUwMCIsImNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmUtbWFya2V0IjoiY29sb3ItdGFuLW9yYW5nZS02MDAiLCJjb2xvci1wb3N0LW1hcmtldCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3Itbm90YWNjdXJhdGUtbW9kZSI6ImNvbG9yLWJlcnJ5LXBpbmstNjAwIiwiY29sb3ItZGVsYXktbW9kZSI6ImNvbG9yLXRhbi1vcmFuZ2UtNzAwIiwiY29sb3ItZGVsYXktbW9kZS1iZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNDAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkIjoiY29sb3ItdHYtYmx1ZS01MCIsImNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXIiOiJjb2xvci10di1ibHVlLTIwMCIsImNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLW1hcmtlci1mbGFnZ2VkIjoiY29sb3ItcmlwZS1yZWQtNDAwIiwiY29sb3ItbWFya2VyLWZsYWdnZWQtaG92ZXJlZCI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFzayI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLXNlbGwiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1idXkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLW5ldXRyYWwiOiJjb2xvci1jb2xkLWdyYXktNTUwIiwiY29sb3ItcHJvIjoiY29sb3ItbWludHktZ3JlZW4tNDAwIiwiY29sb3ItcHJvLWhvdmVyIjoiY29sb3ItbWludHktZ3JlZW4tNjAwIiwiY29sb3ItcHJvLXBsdXMiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXByby1wbHVzLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci1wcm8tcHJlbWl1bSI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItcHJvLXByZW1pdW0taG92ZXIiOiJjb2xvci10YW4tb3JhbmdlLTcwMCIsImNvbG9yLXRyaWFsIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRyaWFsLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLW1vZCI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLW1vZC1ob3ZlciI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQiOiJjb2xvci1taW50eS1ncmVlbi00MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtYWN0aXZlIjoiY29sb3ItbWludHktZ3JlZW4tNTAwIiwiY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1vdmVybGF5IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXNlYXJjaC1idXR0b24taG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1jb250ZW50LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1iZy1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1ib3JkZXItZGVmYXVsdCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXJlcGxheS1kYXRhLW1vZGUiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1sZWdhY3ktc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTMwMCIsImNvbG9yLWNvbGxhcHNlLXRhYnMtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItYXR0ZW50aW9uIjoiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiLCJjb2xvci14LXR3aXR0ZXItY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1jYXJkLWJvcmRlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jYXJkLWJvcmRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1zZWxlY3Rpb24tYmciOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLWRlZmF1bHQtZ3JheSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmciOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItZmVhdHVyZWQtYnJva2VyLWJhZGdlLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS10ZXh0IjoiY29sb3Itd2hpdGUifScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/71424.eaefaf568dc8f1d16228.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.276Z","timestamp":1785154590276,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/71424.eaefaf568dc8f1d16228.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-2389\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2747796fd08b55398f26a275c2c0319c\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9097,"size_decoded":3504,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3069)","md5":"d28b49d04557c0480cdbf81791cd43e4","sha1":"5e3a933096e33a38573e6f19d421af3adced7eb3","sha256":"21caef4db64aefa7c30365f0531a6b960cb10fa95ec42c10a6fa7de721bddee9","sha512":"087a004245d3199dec5b9b58bec642b846508dc967ba639a6b7eaa4289fe4a7bcca4cccaff9c3453cdc12b02032d564596001b3d891d12aaf21df4603b27a819","ssdeep":"96:BkL7dHrG9n2UbPK2Fv7927Erv8mYNWNPoHJuocGImcU8aG3y/J4Pphe8JxEpUOPs:BM7kNIAeyTmcu8VC8nIeCwIiT0BEF","tlshash":"16124324fb93b2b351cb619a583f080bf33a14d9132510a8735189dd1dfc99ab6afb74","first_seen":"2026-07-23T13:38:20.56175Z","last_seen":"2026-07-27T14:22:59.719959Z","times_seen":342,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3MTQyNF0sezkxNDQ4NyhlLHQpe3ZhciBpOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBzKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgaT1hcmd1bWVudHNbdF07aWYoaSl7dmFyIGE9dHlwZW9mIGk7aWYoInN0cmluZyI9PT1hfHwibnVtYmVyIj09PWEpZS5wdXNoKGkpO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShpKSYmaS5sZW5ndGgpe3ZhciByPXMuYXBwbHkobnVsbCxpKTtyJiZlLnB1c2gocil9ZWxzZSBpZigib2JqZWN0Ij09PWEpZm9yKHZhciBvIGluIGkpbi5jYWxsKGksbykmJmlbb10mJmUucHVzaChvKX19cmV0dXJuIGUuam9pbigiICIpfWUuZXhwb3J0cz8ocy5kZWZhdWx0PXMsZS5leHBvcnRzPXMpOnZvaWQgMD09PShpPWZ1bmN0aW9uKCl7cmV0dXJuIHN9LmFwcGx5KHQsW10pKXx8KGUuZXhwb3J0cz1pKX0oKX0sMzIwNDAzKGUsdCl7InVzZSBzdHJpY3QiO3ZhciBpLG49ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8IXdpbmRvdy5kb2N1bWVudHx8IXdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KTtmdW5jdGlvbiBzKCl7aWYoaSlyZXR1cm4gaTtpZighbnx8IXdpbmRvdy5kb2N1bWVudC5ib2R5KXJldHVybiJpbmRldGVybWluYXRlIjt2YXIgZT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkFCQ0QiKSksZS5kaXI9InJ0bCIsZS5zdHlsZS5mb250U2l6ZT0iMTRweCIsZS5zdHlsZS53aWR0aD0iNHB4IixlLnN0eWxlLmhlaWdodD0iMXB4IixlLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsZS5zdHlsZS50b3A9Ii0xMDAwcHgiLGUuc3R5bGUub3ZlcmZsb3c9InNjcm9sbCIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKSxpPSJyZXZlcnNlIixlLnNjcm9sbExlZnQ+MD9pPSJkZWZhdWx0IjooZS5zY3JvbGxMZWZ0PTEsMD09PWUuc2Nyb2xsTGVmdCYmKGk9Im5lZ2F0aXZlIikpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSksaX19LDkxODc3OShlLHQsaSl7InVzZSBzdHJpY3QiO2kuZCh0LHtiaW5kQ2FudmFzRWxlbWVudEJpdG1hcFNpemVUbzooKT0+cixlcXVhbFNpemVzOigpPT5uLmVxdWFsU2l6ZXMsc2l6ZTooKT0+bi5zaXplLHRyeUNyZWF0ZUNhbnZhc1JlbmRlcmluZ1RhcmdldDJEOigpPT5ofSk7dmFyIG49aSg3NDI3OSkscz1pKDc0MzQ1MSksYT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0LGkpe3ZhciBzO3RoaXMuX2NhbnZhc0VsZW1lbnQ9bnVsbCx0aGlzLl9iaXRtYXBTaXplQ2hhbmdlZExpc3RlbmVycz1bXSx0aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplPW51bGwsdGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnM9W10sdGhpcy5fZGV2aWNlUGl4ZWxSYXRpb09ic2VydmFibGU9bnVsbCx0aGlzLl9jYW52YXNFbGVtZW50UmVzaXplT2JzZXJ2ZXI9bnVsbCx0aGlzLl9jYW52YXNFbGVtZW50PWUsdGhpcy5fY2FudmFzRWxlbWVudENsaWVudFNpemU9KDAsbi5zaXplKSh7d2lkdGg6dGhpcy5fY2FudmFzRWxlbWVudC5jbGllbnRXaWR0aCxoZWlnaHQ6dGhpcy5fY2FudmFzRWxlbWVudC5jbGllbnRIZWlnaHR9KSx0aGlzLl90cmFuc2Zvcm1CaXRtYXBTaXplPW51bGwhPXQ/dDpmdW5jdGlvbihlKXtyZXR1cm4gZX0sdGhpcy5fYWxsb3dSZXNpemVPYnNlcnZlcj1udWxsPT09KHM9bnVsbD09aT92b2lkIDA6aS5hbGxvd1Jlc2l6ZU9ic2VydmVyKXx8dm9pZCAwPT09c3x8cyx0aGlzLl9jaG9vc2VBbmRJbml0T2JzZXJ2ZXIoKX1yZXR1cm4gZS5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbigpe3ZhciBlLHQ7aWYobnVsbD09PXRoaXMuX2NhbnZhc0VsZW1lbnQpdGhyb3cgbmV3IEVycm9yKCJPYmplY3QgaXMgZGlzcG9zZWQiKTtudWxsPT09KGU9dGhpcy5fY2FudmFzRWxlbWVudFJlc2l6ZU9ic2VydmVyKXx8dm9pZCAwPT09ZXx8ZS5kaXNjb25uZWN0KCksdGhpcy5fY2FudmFzRWxlbWVudFJlc2l6ZU9ic2VydmVyPW51bGwsbnVsbD09PSh0PXRoaXMuX2RldmljZVBpeGVsUmF0aW9PYnNlcnZhYmxlKXx8dm9pZCAwPT09dHx8dC5kaXNwb3NlKCksdGhpcy5fZGV2aWNlUGl4ZWxSYXRpb09ic2VydmFibGU9bnVsbCx0aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZExpc3RlbmVycy5sZW5ndGg9MCx0aGlzLl9iaXRtYXBTaXplQ2hhbmdlZExpc3RlbmVycy5sZW5ndGg9MCx0aGlzLl9jYW52YXNFbGVtZW50PW51bGx9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLnByb3RvdHlwZSwiY2FudmFzRWxlbWVudCIse2dldDpmdW5jdGlvbigpe2lmKG51bGw9PT10aGlzLl9jYW52YXNFbGVtZW50KXRocm93IG5ldyBFcnJvcigiT2JqZWN0IGlzIGRpc3Bvc2VkIik7cmV0dXJuIHRoaXMuX2NhbnZhc0VsZW1lbnR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCJjYW52YXNFbGVtZW50Q2xpZW50U2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9jYW52YXNFbGVtZW50Q2xpZW50U2l6ZX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZS5wcm90b3R5cGUsImJpdG1hcFNpemUiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4oMCxuLnNpemUpKHt3aWR0aDp0aGlzLmNhbnZhc0VsZW1lbnQud2lkdGgsaGVpZ2h0OnRoaXMuY2FudmFzRWxlbWVudC5oZWlnaHR9KX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSxlLnByb3RvdHlwZS5yZXNpemVDYW52YXNFbGVtZW50PWZ1bmN0aW9uKGUpe3RoaXMuX2NhbnZhc0VsZW1lbnRDbGllbnRTaXplPSgwLG4uc2l6ZSkoZSksdGhpcy5jYW52YXNFbGVtZW50LnN0eWxlLndpZHRoPSIiLmNvbmNhdCh0aGlzLl9jYW52YXNFbGVtZW50Q2xpZW50U2l6ZS53aWR0aCwicHgiKSwKdGhpcy5jYW52YXNFbGVtZW50LnN0eWxlLmhlaWdodD0iIi5jb25jYXQodGhpcy5fY2FudmFzRWxlbWVudENsaWVudFNpemUuaGVpZ2h0LCJweCIpLHRoaXMuX2ludmFsaWRhdGVCaXRtYXBTaXplKCl9LGUucHJvdG90eXBlLnN1YnNjcmliZUJpdG1hcFNpemVDaGFuZ2VkPWZ1bmN0aW9uKGUpe3RoaXMuX2JpdG1hcFNpemVDaGFuZ2VkTGlzdGVuZXJzLnB1c2goZSl9LGUucHJvdG90eXBlLnVuc3Vic2NyaWJlQml0bWFwU2l6ZUNoYW5nZWQ9ZnVuY3Rpb24oZSl7dGhpcy5fYml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnM9dGhpcy5fYml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdCE9PWV9KSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLnByb3RvdHlwZSwic3VnZ2VzdGVkQml0bWFwU2l6ZSIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLGUucHJvdG90eXBlLnN1YnNjcmliZVN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkPWZ1bmN0aW9uKGUpe3RoaXMuX3N1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkTGlzdGVuZXJzLnB1c2goZSl9LGUucHJvdG90eXBlLnVuc3Vic2NyaWJlU3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWQ9ZnVuY3Rpb24oZSl7dGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnM9dGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdCE9PWV9KSl9LGUucHJvdG90eXBlLmFwcGx5U3VnZ2VzdGVkQml0bWFwU2l6ZT1mdW5jdGlvbigpe2lmKG51bGwhPT10aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplKXt2YXIgZT10aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplO3RoaXMuX3N1Z2dlc3RlZEJpdG1hcFNpemU9bnVsbCx0aGlzLl9yZXNpemVCaXRtYXAoZSksdGhpcy5fZW1pdFN1Z2dlc3RlZEJpdG1hcFNpemVDaGFuZ2VkKGUsdGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZSl9fSxlLnByb3RvdHlwZS5fcmVzaXplQml0bWFwPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuYml0bWFwU2l6ZTsoMCxuLmVxdWFsU2l6ZXMpKHQsZSl8fCh0aGlzLmNhbnZhc0VsZW1lbnQud2lkdGg9ZS53aWR0aCx0aGlzLmNhbnZhc0VsZW1lbnQuaGVpZ2h0PWUuaGVpZ2h0LHRoaXMuX2VtaXRCaXRtYXBTaXplQ2hhbmdlZCh0LGUpKX0sZS5wcm90b3R5cGUuX2VtaXRCaXRtYXBTaXplQ2hhbmdlZD1mdW5jdGlvbihlLHQpe3ZhciBpPXRoaXM7dGhpcy5fYml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnMuZm9yRWFjaCgoZnVuY3Rpb24obil7cmV0dXJuIG4uY2FsbChpLGUsdCl9KSl9LGUucHJvdG90eXBlLl9zdWdnZXN0TmV3Qml0bWFwU2l6ZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzLl9zdWdnZXN0ZWRCaXRtYXBTaXplLGk9KDAsbi5zaXplKSh0aGlzLl90cmFuc2Zvcm1CaXRtYXBTaXplKGUsdGhpcy5fY2FudmFzRWxlbWVudENsaWVudFNpemUpKSxzPSgwLG4uZXF1YWxTaXplcykodGhpcy5iaXRtYXBTaXplLGkpP251bGw6aTtudWxsPT09dCYmbnVsbD09PXN8fG51bGwhPT10JiZudWxsIT09cyYmKDAsbi5lcXVhbFNpemVzKSh0LHMpfHwodGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZT1zLHRoaXMuX2VtaXRTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZCh0LHMpKX0sZS5wcm90b3R5cGUuX2VtaXRTdWdnZXN0ZWRCaXRtYXBTaXplQ2hhbmdlZD1mdW5jdGlvbihlLHQpe3ZhciBpPXRoaXM7dGhpcy5fc3VnZ2VzdGVkQml0bWFwU2l6ZUNoYW5nZWRMaXN0ZW5lcnMuZm9yRWFjaCgoZnVuY3Rpb24obil7cmV0dXJuIG4uY2FsbChpLGUsdCl9KSl9LGUucHJvdG90eXBlLl9jaG9vc2VBbmRJbml0T2JzZXJ2ZXI9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuX2FsbG93UmVzaXplT2JzZXJ2ZXI/bmV3IFByb21pc2UoKGZ1bmN0aW9uKGUpe3ZhciB0PW5ldyBSZXNpemVPYnNlcnZlcigoZnVuY3Rpb24oaSl7ZShpLmV2ZXJ5KChmdW5jdGlvbihlKXtyZXR1cm4iZGV2aWNlUGl4ZWxDb250ZW50Qm94U2l6ZSJpbiBlfSkpKSx0LmRpc2Nvbm5lY3QoKX0pKTt0Lm9ic2VydmUoZG9jdW1lbnQuYm9keSx7Ym94OiJkZXZpY2UtcGl4ZWwtY29udGVudC1ib3gifSl9KSkuY2F0Y2goKGZ1bmN0aW9uKCl7cmV0dXJuITF9KSkudGhlbigoZnVuY3Rpb24odCl7cmV0dXJuIHQ/ZS5faW5pdFJlc2l6ZU9ic2VydmVyKCk6ZS5faW5pdERldmljZVBpeGVsUmF0aW9PYnNlcnZhYmxlKCl9KSk6dGhpcy5faW5pdERldmljZVBpeGVsUmF0aW9PYnNlcnZhYmxlKCl9LGUucHJvdG90eXBlLl9pbml0RGV2aWNlUGl4ZWxSYXRpb09ic2VydmFibGU9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKG51bGwhPT10aGlzLl9jYW52YXNFbGVtZW50KXt2YXIgdD1vKHRoaXMuX2NhbnZhc0VsZW1lbnQpO2lmKG51bGw9PT10KXRocm93IG5ldyBFcnJvcigiTm8gd2luZG93IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgY2FudmFzIik7dGhpcy5fZGV2aWNlUGl4ZWxSYXRpb09ic2VydmFibGU9KDAscy5jcmVhdGVPYnNlcnZhYmxlKSh0KSx0aGlzLl9kZXZpY2VQaXhlbFJhdGlvT2JzZXJ2YWJsZS5zdWJzY3JpYmUoKGZ1bmN0aW9uKCl7cmV0dXJuIGUuX2ludmFsaWRhdGVCaXRtYXBTaXplKCl9KSksdGhpcy5faW52YWxpZGF0ZUJpdG1hcFNpemUoKX19LGUucHJvdG90eXBlLl9pbnZhbGlkYXRlQml0bWFwU2l6ZT1mdW5jdGlvbigpe3ZhciBlLHQ7aWYobnVsbCE9PXRoaXMuX2NhbnZhc0VsZW1lbnQpe3ZhciBpPW8odGhpcy5fY2FudmFzRWxlbWVudCk7aWYobnVsbCE9PWkpe3ZhciBzPW51bGwhPT0odD1udWxsPT09KGU9dGhpcy5fZGV2aWNlUGl4ZWxSYXRpb09ic2VydmFibGUpfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnZhbHVlKSYmdm9pZCAwIT09dD90OmkuZGV2aWNlUGl4ZWxSYXRpbyxhPXRoaXMuX2NhbnZhc0VsZW1lbnQuZ2V0Q2xpZW50UmVjdHMoKSxyPXZvaWQgMCE9PWFbMF0/ZnVuY3Rpb24oZSx0KXtyZXR1cm4oMCxuLnNpemUpKHt3aWR0aDpNYXRoLnJvdW5kKGUubGVmdCp0K2Uud2lkdGgqdCktTWF0aC5yb3VuZChlLmxlZnQqdCksCmhlaWdodDpNYXRoLnJvdW5kKGUudG9wKnQrZS5oZWlnaHQqdCktTWF0aC5yb3VuZChlLnRvcCp0KX0pfShhWzBdLHMpOigwLG4uc2l6ZSkoe3dpZHRoOnRoaXMuX2NhbnZhc0VsZW1lbnRDbGllbnRTaXplLndpZHRoKnMsaGVpZ2h0OnRoaXMuX2NhbnZhc0VsZW1lbnRDbGllbnRTaXplLmhlaWdodCpzfSk7dGhpcy5fc3VnZ2VzdE5ld0JpdG1hcFNpemUocil9fX0sZS5wcm90b3R5cGUuX2luaXRSZXNpemVPYnNlcnZlcj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7bnVsbCE9PXRoaXMuX2NhbnZhc0VsZW1lbnQmJih0aGlzLl9jYW52YXNFbGVtZW50UmVzaXplT2JzZXJ2ZXI9bmV3IFJlc2l6ZU9ic2VydmVyKChmdW5jdGlvbih0KXt2YXIgaT10LmZpbmQoKGZ1bmN0aW9uKHQpe3JldHVybiB0LnRhcmdldD09PWUuX2NhbnZhc0VsZW1lbnR9KSk7aWYoaSYmaS5kZXZpY2VQaXhlbENvbnRlbnRCb3hTaXplJiZpLmRldmljZVBpeGVsQ29udGVudEJveFNpemVbMF0pe3ZhciBzPWkuZGV2aWNlUGl4ZWxDb250ZW50Qm94U2l6ZVswXSxhPSgwLG4uc2l6ZSkoe3dpZHRoOnMuaW5saW5lU2l6ZSxoZWlnaHQ6cy5ibG9ja1NpemV9KTtlLl9zdWdnZXN0TmV3Qml0bWFwU2l6ZShhKX19KSksdGhpcy5fY2FudmFzRWxlbWVudFJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fY2FudmFzRWxlbWVudCx7Ym94OiJkZXZpY2UtcGl4ZWwtY29udGVudC1ib3gifSkpfSxlfSgpO2Z1bmN0aW9uIHIoZSx0KXtpZigiZGV2aWNlLXBpeGVsLWNvbnRlbnQtYm94Ij09PXQudHlwZSlyZXR1cm4gbmV3IGEoZSx0LnRyYW5zZm9ybSx0Lm9wdGlvbnMpO3Rocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgYmluZGluZyB0YXJnZXQiKX1mdW5jdGlvbiBvKGUpe3JldHVybiBlLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXd9dmFyIGw9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCxpKXtpZigwPT09dC53aWR0aHx8MD09PXQuaGVpZ2h0KXRocm93IG5ldyBUeXBlRXJyb3IoIlJlbmRlcmluZyB0YXJnZXQgY291bGQgb25seSBiZSBjcmVhdGVkIG9uIGEgbWVkaWEgd2l0aCBwb3NpdGl2ZSB3aWR0aCBhbmQgaGVpZ2h0Iik7aWYodGhpcy5fbWVkaWFTaXplPXQsMD09PWkud2lkdGh8fDA9PT1pLmhlaWdodCl0aHJvdyBuZXcgVHlwZUVycm9yKCJSZW5kZXJpbmcgdGFyZ2V0IGNvdWxkIG9ubHkgYmUgY3JlYXRlZCB1c2luZyBhIGJpdG1hcCB3aXRoIHBvc2l0aXZlIGludGVnZXIgd2lkdGggYW5kIGhlaWdodCIpO3RoaXMuX2JpdG1hcFNpemU9aSx0aGlzLl9jb250ZXh0PWV9cmV0dXJuIGUucHJvdG90eXBlLnVzZU1lZGlhQ29vcmRpbmF0ZVNwYWNlPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gdGhpcy5fY29udGV4dC5zYXZlKCksdGhpcy5fY29udGV4dC5zZXRUcmFuc2Zvcm0oMSwwLDAsMSwwLDApLHRoaXMuX2NvbnRleHQuc2NhbGUodGhpcy5faG9yaXpvbnRhbFBpeGVsUmF0aW8sdGhpcy5fdmVydGljYWxQaXhlbFJhdGlvKSxlKHtjb250ZXh0OnRoaXMuX2NvbnRleHQsbWVkaWFTaXplOnRoaXMuX21lZGlhU2l6ZX0pfWZpbmFsbHl7dGhpcy5fY29udGV4dC5yZXN0b3JlKCl9fSxlLnByb3RvdHlwZS51c2VCaXRtYXBDb29yZGluYXRlU3BhY2U9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiB0aGlzLl9jb250ZXh0LnNhdmUoKSx0aGlzLl9jb250ZXh0LnNldFRyYW5zZm9ybSgxLDAsMCwxLDAsMCksZSh7Y29udGV4dDp0aGlzLl9jb250ZXh0LG1lZGlhU2l6ZTp0aGlzLl9tZWRpYVNpemUsYml0bWFwU2l6ZTp0aGlzLl9iaXRtYXBTaXplLGhvcml6b250YWxQaXhlbFJhdGlvOnRoaXMuX2hvcml6b250YWxQaXhlbFJhdGlvLHZlcnRpY2FsUGl4ZWxSYXRpbzp0aGlzLl92ZXJ0aWNhbFBpeGVsUmF0aW99KX1maW5hbGx5e3RoaXMuX2NvbnRleHQucmVzdG9yZSgpfX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCJfaG9yaXpvbnRhbFBpeGVsUmF0aW8iLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fYml0bWFwU2l6ZS53aWR0aC90aGlzLl9tZWRpYVNpemUud2lkdGh9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCJfdmVydGljYWxQaXhlbFJhdGlvIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2JpdG1hcFNpemUuaGVpZ2h0L3RoaXMuX21lZGlhU2l6ZS5oZWlnaHR9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksZX0oKTtmdW5jdGlvbiBoKGUsdCl7dmFyIGk9ZS5jYW52YXNFbGVtZW50Q2xpZW50U2l6ZTtpZigwPT09aS53aWR0aHx8MD09PWkuaGVpZ2h0KXJldHVybiBudWxsO3ZhciBuPWUuYml0bWFwU2l6ZTtpZigwPT09bi53aWR0aHx8MD09PW4uaGVpZ2h0KXJldHVybiBudWxsO3ZhciBzPWUuY2FudmFzRWxlbWVudC5nZXRDb250ZXh0KCIyZCIsdCk7cmV0dXJuIG51bGw9PT1zP251bGw6bmV3IGwocyxpLG4pfX0sODE3MzUwKGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbj1pKDE3ODQ5Nykscz1pKDM2MDYyMCk7Y29uc3QgYT1mdW5jdGlvbihlKXtyZXR1cm4hMD09PWV8fCExPT09ZXx8KDAscy5kZWZhdWx0KShlKSYmIltvYmplY3QgQm9vbGVhbl0iPT0oMCxuLmRlZmF1bHQpKGUpfX0sMjA2NjczKGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbj1pKDE3ODQ5Nykscz1pKDM2MDYyMCk7Y29uc3QgYT1mdW5jdGlvbihlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGV8fCgwLHMuZGVmYXVsdCkoZSkmJiJbb2JqZWN0IE51bWJlcl0iPT0oMCxuLmRlZmF1bHQpKGUpfX0sMzA0MjIxKGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbj1pKDE3ODQ5Nykscz1pKDI5NTYzNSksYT1pKDM2MDYyMCk7Y29uc3Qgcj1mdW5jdGlvbihlKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGV8fCEoMCxzLmRlZmF1bHQpKGUpJiYoMCxhLmRlZmF1bHQpKGUpJiYiW29iamVjdCBTdHJpbmddIj09KDAsbi5kZWZhdWx0KShlKX19fV0pOw=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_68x28dp.png","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:31.145Z","timestamp":1785154591145,"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://persimmontrades.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: 428773\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1597,"size_decoded":2271,"mime_type":"image/png","magic":"PNG image data, 68 x 28, 8-bit/color RGBA, non-interlaced","md5":"c4a931d597decd2553aac6634b766cf2","sha1":"6ec84fb4a2745b4b71520241be77db1fd1013830","sha256":"f56402b127698db4b4dc611a97a6f081d04c4691c60522c5912d189e37c94a9e","sha512":"4932e0f7f38085a7c52539bdd5c7f470740e560a4471bea30d12ef9e3efe77f6bbfac28d26c62a245c43d98ebf74c824b2b414843080a27edf1563a5f874ac84","ssdeep":"","tlshash":"7c310afff39e8cec419e764069ba5965a362cd68233e928f14499592e4d007710f5f41","first_seen":"2023-04-05T08:27:37Z","last_seen":"2026-07-27T14:17:34.090615Z","times_seen":18138,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEQAAAAcCAYAAADYzhkoAAAGBElEQVRYw+1ZXWwUVRQe2N22ViP136gvigZSocTOzLrEynZmdhtiihqkaqw/LzxA1MQHIcRGV9idthIRIdbSWNGHQtYGEkOMYre1CRpLG3nAP9CW1GCg+5d2OzPL1i7d67kzd3Znt9Pd1Sam0t5kMum9Z+ee+91zzvfdW4paasU3pyd0Ay/Kd2w8kCpdtCDwolRZK8rtnChd5EUFqY9XStV6lbOcqOza6IneuNDXwPi3PMv4N7fS/i0vziMakJUT5dZaUZpJA2H6SJcFr1y7kAGhj27uYvxPIQDl838NBu9TjhsWPsI1K68LzVfWc3vkByFt3JxPeR/Aimvjcsc1DQjnk8U0GD7lw7lqhtubuBfGPR4PWn7NAsJ5YytrvdJVAshRCqFl//c6OC9AIPz3ktqQcHvk2+frDPJQyyN19Oowx26IcMwqRFHLCtlPnSxZPd1n3TDVV7IKofz2Dd3IAj5XubxSTZ0ndvM/BQTRtC0sMA+FefujY+71s9eL2YOkyvH5ghER2MawQI+GBRalH469AA48Y2Z/NWBrnA5YRpO9NpR5LBeg39Qeinkj75P+NLDfNO+TW2ANv8AThbr32FyA4I0JCeyr4FNE9y0osKkQR3dNONdVGACRFTLBW6YR5JNf4XzSp+aP8oFuF+bZpgwQdAImO4/fel+It+80fne619qkg/BXjy2R7LGcV9+kD8Z3Ztc5ZYcBiCsAwG8qIFkMGH9yLkAADNEAxARs1I9BgU6SvtO/b7y/VNcdCfLBN8xTSjk2FwVjilYjg3uYxmirCwfEx130CtyPkQ9xrF91gmNngkL1WhWMb2w0LD5FFt6FApRqj/qpCvjbr4LUa5sBm7UkravScsCrHNG1kHOvcidoo28LARLi7OvSYPDMAX3xIa56ZZijo6rfLnaXtmCvMow/BhrkE9OiK0rbgYU6sx5R6dd3iqB/iEw4jHPU+Hs8eTqNeOYg7kv22A6pkRCwDKMfqCz71JdUqSGNDpJNadPlAN2Bsuxd78Tvgk1N5geE2af5x5zFNWvU6SyDvhfAnwFD1JzRKbeTTBZx7EtdVxQzifLbZLd+UtMFQk5H38weHGnXJmVOqYAEbKfJgk3tYbxdHe+xnSIRMkB8NLWv9UlD+QCB+b/WNoQ9BiC0GOsIRHB/2MU+jRoqSzRR5os7DBrEUwiMBg8q0aMK7N8jETKoflxg95sCwrNtxKHvSIQMahFiM7WHsTYyrtrDUWJQS1Fl/xxMOVAUIHo0cPQkjtYob680p16v8pl+ZhGalZfyKlpR/lh1DrSLa8/kAxogTKcWIew51NBgmU1z7AgBpE0DxNJJGOUc6qay7SGFYHyERFAbiciPtLRWfsW0a7SvEaXbwJepvCkjMO+mI0Jgt4+5q6430r5e8wwLnaiAD/5sKJjdUMQewQDg8XoPKgeg6vWdItHRpP8+6LI7MmzCdlx0ONTUu1RPl0PfYZ3iwnx1tVpUe6wOA812pL6nVHt0giqHunKYME8KCmu1xnRxe6aQy+3gV5nuN7DdV4WK6pibWZMu+lDv9PRQ6xtECmzkZRirzwFFuhU+2pdzkEsCvcVy2QV2zJeraElukpBkY5CbQ/ht2JndOWnRkqbdXlsM3kPkjUi67M5Ji+YM7SrjuG4YJENB2gUf3sxoIzqK0xxq2njGP2bHrJTAZxQsfiA6zsyiWUgnDBiMOU0VJwgfQHpbmGNCWcJMoIOQKltzFStWpECx2wCEkFGYQWQEoW/rLMUKGwCgvIzBMPqEtRBsWlCNHl/8iXzCDPuh+pNVT9hLQAbPFz4BA8eDAxzXHH8cy+SalthNRUl3qBlRnrZHeGZTRGBY5HRa89pDzQBg7Mnekk3TASsLWsRa4GRehv3BqhRS6W4VKK8iYUCKuZbA/mG/sH/Yz0L+Lcjmah1fAYr5NagfJ3JP4rjWZQhh8pZFcYsntCTu05kEF1GnKK/BahWipA7q3B/kjuaLRXW1CYX8OcM1Rc4RQglh0BbdfS++wYOIOKlHCz7hYl3kbI3fs6j/G4DZsNhjxlJbakttqf2X7W8TpV8yKnnUNAAAAABJRU5ErkJggg=="}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51031.535f27b776f394c7e43a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.220Z","timestamp":1785154590220,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51031.535f27b776f394c7e43a.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-ab54\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c8bcd6cffe796ff306be655b51fa66fa\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":43860,"size_decoded":14999,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (12910)","md5":"cd701b7197ef255d09501c8c91343508","sha1":"d84cab0e7c13c5801a0a2c6df4aba3f32e6b316d","sha256":"714cb61cc6924e6d1e8241ff191fc5aeb03baebbbaa81c15949838a09fb406f6","sha512":"ae8f1406dc1e5c9e8082d922e8a0d6257582733129c26617fefb99243013fa5f0bc9eb178dd69665786b8fb7fd0b7ccdd7ed719fe60676564b82598253efca75","ssdeep":"768:CcDTi4tT8YE9xSrNtzDcsIj/XWm9hIz4dp9VUZ+n5Vz2mpehIeVeLh9zoJZemINE:hryj/XWgGET5Vz2mp9emzoJZemINyKfS","tlshash":"7e131a35652af5f79ee941ea543754829bbc00523444042876bccdec278caf9f23aef9","first_seen":"2026-07-24T11:36:48.046407Z","last_seen":"2026-07-27T14:18:36.397568Z","times_seen":1546,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1MTAzMV0sezE1Njg1MChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHt0ZWxlbWV0cnk6KCk9Pmh9KTt2YXIgcz1fKDk0ODM4MCksaT1fKDIyMTA2MSksbj1fKDM4NDAxNyksYT1fKDM3NzIyNikscj1fKDExNzMxMyk7XygzMDAyODYpO2NvbnN0IG89KDAsaS5nZXRMb2dnZXIpKCJDb21tb24uVGVsZW1ldHJ5IiksbD17ZGVmYXVsdDoxNWUzLHNpdGU6M2U1fSxjPVsiYmVmb3JlX3dlYnNvY2tldF9jb25uZWN0aW9uX3RpbWVfZnJhbWUiLCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIiwiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIsInBhZ2VfZnVsbF9sb2FkX3RpbWVfZnJhbWUiLCJwYWdlX2xvYWRfdGltZV9mcmFtZSJdO2NvbnN0IGg9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXBvcnRTZW50PW5ldyBzLkRlbGVnYXRlLHRoaXMudGltZUNvdW50ZXJzPXtzZXJpZXM6e21hcmtzOltdfSxzdHVkeTp7fSxwaW5lOnt9fSx0aGlzLl90aW1lb3V0SWRzPXt9LHRoaXMuX2NvbW1vbkFkZGl0aW9uYWxEYXRhPXtjbHVzdGVyOm51bGwsdXNlcklkOiIwIn0sdGhpcy5fcmVwb3J0U3Rhc2g9e319c2V0U2Vzc2lvbkluZm8oZSl7Y29uc3QgdD10aGlzLl9wYXJzZUNsdXN0ZXIoZSk7bnVsbCE9PXQmJih0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YS5jbHVzdGVyPXQpfXNlbmRSZXBvcnQoZSx0LF8pe2lmKCF0aGlzLl9pc0FibGVUb1NlbmRSZXBvcnQodCkpcmV0dXJuO2NvbnN0IHM9dGhpcy5fZ2V0U3Vic2VydmljZVR5cGUoZSksaT10aGlzLl9nZXRIb3N0KGUscyk7aWYobnVsbCE9PWkpe2lmKF89dm9pZCAwPT09Xz97Y291bnQ6MX06Xyx0aGlzLl9hZGRSZXBvcnRUb1N0YXNoKF8sdCxpKSwhdGhpcy5fdGltZW91dElkc1tlXSl7Y29uc3QgdD1sW2VdPz9sLmRlZmF1bHQ7dGhpcy5fdGltZW91dElkc1tlXT1zZXRUaW1lb3V0KHRoaXMuX3NlbmRUZWxlbWV0cnlUb1NlcnZpY2UuYmluZCh0aGlzLGUsaSksdCl9fWVsc2Ugby5sb2dFcnJvcihgVW5hYmxlIHRvIGdldCBob3N0IGZvciBjb3VudGVyOiAke3R9LCBtZXRyaWMgdHlwZTogJHtlfSwgc2VyaXZjZSB0eXBlOiAke3N9YCl9c2VuZENoYXJ0UmVwb3J0KGUsdCxfPSEwKXt0aGlzLl9zZW5kU2VydmljZVNwZWNpZmllZFJlcG9ydCgiY2hhcnRzIixlLHQsXyl9c2VuZExpbmVUb29sc1N0b3JhZ2VSZXBvcnQoZSx0LF89ITApe3RoaXMuX3NlbmRTZXJ2aWNlU3BlY2lmaWVkUmVwb3J0KCJsaW5lX3Rvb2xzX3N0b3JhZ2UiLGUsdCxfKX1fc2VuZFNlcnZpY2VTcGVjaWZpZWRSZXBvcnQoZSx0LF8scz0hMCl7dGhpcy5fdXBkYXRlVXNlckluZm8oKSxfPXZvaWQgMD09PV8/e2NvdW50OjF9Ol8scyYmKF89dGhpcy5fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oXyxbImNsdXN0ZXIiLCJ1c2VySWQiXSkpLHRoaXMuc2VuZFJlcG9ydChlLHQsXyl9X3VwZGF0ZVVzZXJJbmZvKCl7Y29uc3QgZT0idXNlciJpbiB3aW5kb3cmJiJpZCJpbiB3aW5kb3cudXNlcj93aW5kb3cudXNlci5pZDoiMCI7dGhpcy5fY29tbW9uQWRkaXRpb25hbERhdGEudXNlcklkPVN0cmluZyhlKX1faXNBYmxlVG9TZW5kUmVwb3J0KGUpe2NvbnN0IHQ9d2luZG93LlRFTEVNRVRSWV9IT1NUUyxfPWMuaW5jbHVkZXMoZSkscz1Cb29sZWFuKHdpbmRvdy5UcmFkaW5nVmlldz8ub25DaGFydFBhZ2V8fCgwLGEub25XaWRnZXQpKCkpO3JldHVybiB0JiYoIV98fHMpfV9zZW5kVGVsZW1ldHJ5VG9TZXJ2aWNlKGUsdCl7aWYodGhpcy5fcmVwb3J0U3Rhc2guaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IGU9dGhpcy5fY3JvcFBhcmFtcyh0aGlzLl9yZXBvcnRTdGFzaFt0XSksXz10aGlzLl9yZW5hbWVBbGxQYXJhbXMoZSkscz17ZXZlbnQ6InJlcG9ydF9zdGFzaCIscGFyYW1zOnRoaXMuX2NsZWFuQWxsUGFyYW1zKF8pfTtvLmxvZ0RlYnVnKGBSZXBvcnQgdG8gaG9zdDogJHt0fTsgc3Rhc2g6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5fcmVwb3J0U3Rhc2hbdF0pfWApLHRoaXMucmVwb3J0U2VudC5maXJlKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxkZWxldGUgdGhpcy5fcmVwb3J0U3Rhc2hbdF0sKDAsbi5mZXRjaCkoYCR7dH0vcmVwb3J0YCx7bWV0aG9kOiJQT1NUIixib2R5OkpTT04uc3RyaW5naWZ5KHMpfSl9dGhpcy5fdGltZW91dElkc1tlXT1udWxsfV9nZXRIb3N0KGUsdCl7Y29uc3QgXz13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLHM9X1tlXSYmX1tlXVt0XTtyZXR1cm4gQm9vbGVhbihzKT9zOm51bGx9X2dldFN1YnNlcnZpY2VUeXBlKGUpe2lmKCFbImNoYXJ0cyIsInNpdGUiXS5pbmNsdWRlcyhlKSlyZXR1cm4iYWxsIjtsZXQgdD0iZnJlZSI7Y29uc3QgXz13aW5kb3cudXNlci5pc19wcm87cmV0dXJuImNoYXJ0cyI9PT1lJiYoMCxyLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/dD1fPyJpb3NfcHJvIjoiaW9zX2ZyZWUiOiJjaGFydHMiPT09ZSYmKDAsci5pc09uTW9iaWxlQXBwUGFnZSkoIm5ldyIpP3Q9Xz8iYW5kcm9pZF9wcm8iOiJhbmRyb2lkX2ZyZWUiOigwLGEub25XaWRnZXQpKCk/dD0id2lkZ2V0IjpfJiYodD0icHJvIiksdH1fcGFyc2VDbHVzdGVyKGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UoZSkuc2Vzc2lvbl9pZH1jYXRjaChlKXtyZXR1cm4gby5sb2dFcnJvcigiQ291bGQgbm90IHBhcnNlIGNsdXN0ZXIgaWQgKHNlc3Npb24gaWQpIiksbnVsbH1jb25zdCBfPS8oLipAKSguKikvZ2kuZXhlYyh0KTtyZXR1cm4gbnVsbCE9PV8mJl8ubGVuZ3RoPj0zP19bMl06bnVsbH1fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oZSx0KXtyZXR1cm4gdC5mb3JFYWNoKCh0PT57dCBpbiB0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YSYmKGUuYWRkaXRpb25hbD1lLmFkZGl0aW9uYWx8fHt9LGUuYWRkaXRpb25hbFt0XT10aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YVt0XSl9KSksZX1fY3JvcFBhcmFtcyhlKXsKZm9yKGNvbnN0IHQgaW4gZSllLmhhc093blByb3BlcnR5KHQpJiZlW3RdLmxlbmd0aD4xZTMmJihlLnRvb19tdWNoX21ldHJpY3NfZnJhbWU9ZS50b29fbXVjaF9tZXRyaWNzX2ZyYW1lPz9bXSxlLnRvb19tdWNoX21ldHJpY3NfZnJhbWUucHVzaCh7dmFsdWU6ZVt0XS5sZW5ndGgsYWRkaXRpb25hbDp7ZXZlbnQ6dH19KSxkZWxldGUgZVt0XSk7cmV0dXJuIGV9X3JlbmFtZUFsbFBhcmFtcyhlKXtjb25zdCB0PXt9O2Zvcihjb25zdCBfIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShfKSYmKHRbX109W10sZVtfXS5mb3JFYWNoKChlPT57dFtfXS5wdXNoKHRoaXMuX3JlbmFtZUVudHJ5UGFyYW1zKGUpKX0pKSk7cmV0dXJuIHR9X3JlbmFtZUVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9e2NvdW50OiJjIix2YWx1ZToidiIsdGV4dDoidCIsYWRkaXRpb25hbDoiYSJ9O3JldHVybiBPYmplY3Qua2V5cyhlKS5yZWR1Y2UoKChfLHMpPT4oX1t0W3NdXT1lW3NdLF8pKSx7fSl9X2NsZWFuQWxsUGFyYW1zKGUpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IF8gaW4gZSlpZihlLmhhc093blByb3BlcnR5KF8pKXt0W19dPVtdO2NvbnN0IHM9e2M6MH07ZVtfXS5mb3JFYWNoKChlPT57Y29uc3QgaT10aGlzLl9jbGVhbkVudHJ5UGFyYW1zKGUpLG49T2JqZWN0LmtleXMoaSkubGVuZ3RoOzE9PT1uJiZ2b2lkIDAhPT1pLmM/cy5jKz1pLmM6bj4wJiZ0W19dLnB1c2goaSl9KSkscy5jPjAmJnRbX10ucHVzaChzKSwwPT09dFtfXS5sZW5ndGgmJmRlbGV0ZSB0W19dfXJldHVybiB0fV9jbGVhbkVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9T2JqZWN0LmtleXMoZSkucmVkdWNlKCgodCxfKT0+ImMiIT09XyYmInQiIT09X3x8ZVtfXT8odFtfXT1lW19dLHQpOnQpLHt9KTtyZXR1cm4iYyJpbiB0fHwidiJpbiB0fHwidCJpbiB0P3Q6e319X2FkZFJlcG9ydFRvU3Rhc2goZSx0LF8pe18gaW4gdGhpcy5fcmVwb3J0U3Rhc2h8fCh0aGlzLl9yZXBvcnRTdGFzaFtfXT17fSksdCBpbiB0aGlzLl9yZXBvcnRTdGFzaFtfXXx8KHRoaXMuX3JlcG9ydFN0YXNoW19dW3RdPVtdKSxPYmplY3Qua2V5cyhlKS5sZW5ndGg+MCYmdGhpcy5fcmVwb3J0U3Rhc2hbX11bdF0ucHVzaChlKX19fSw5NjQ0ODYoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7ZGVlcEV4dGVuZDooKT0+aX0pO2NvbnN0IHM9bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIGkoZSwuLi50KXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlPygwPT09dC5sZW5ndGh8fHQuZm9yRWFjaCgodD0+e251bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdCYmT2JqZWN0LmtleXModCkuZm9yRWFjaCgoXz0+e2lmKGZ1bmN0aW9uKGUpe3JldHVybiBzLmhhcyhlKX0oXykpcmV0dXJuO2NvbnN0IGE9ZVtfXSxyPXRbX107aWYocj09PWUpcmV0dXJuO2NvbnN0IG89QXJyYXkuaXNBcnJheShyKTtpZihyJiYobihyKXx8bykpe2xldCB0O3Q9bz9hJiZBcnJheS5pc0FycmF5KGEpP2E6W106YSYmbihhKT9hOnt9LGVbX109aSh0LHIpfWVsc2Ugdm9pZCAwIT09ciYmKGVbX109cil9KSl9KSksZSk6ZX1mdW5jdGlvbiBuKGUpe2lmKCFlfHwiW29iamVjdCBPYmplY3RdIiE9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSlyZXR1cm4hMTtjb25zdCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtpZighdClyZXR1cm4hMDtjb25zdCBfPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS50b1N0cmluZyxzPXQuaGFzT3duUHJvcGVydHkoImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3I7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHMmJl8uY2FsbChzKT09PV8uY2FsbChPYmplY3QpfX0sNzY4NzYwKGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcygpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChfLHMpPT57ZT1fLHQ9c30pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fV8uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9PnN9KX0sNTg5NzQ5KGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcyhlKXtpZih2b2lkIDA9PT1lKXJldHVybiIiO2lmKGUgaW5zdGFuY2VvZiBFcnJvcil7bGV0IHQ9ZS5tZXNzYWdlO3JldHVybiBlLnN0YWNrJiYodCs9IiAiK2Uuc3RhY2spLHR9cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKTpKU09OLnN0cmluZ2lmeShlKX1fLmQodCx7ZXJyb3JUb1N0cmluZzooKT0+c30pfSwxMTYzMTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7Y3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlOigpPT5hfSk7dmFyIHM9XygxMzg2MzgpO2NsYXNzIGl7Y29uc3RydWN0b3IoZSl7dGhpcy5fY2FjaGU9ZX1hc3luYyBnZXRWYWx1ZShlKXtjb25zdCB0PWF3YWl0IHRoaXMuX2NhY2hlLm1hdGNoKGUpO2lmKCF0KXJldHVybiBudWxsO3JldHVybiJhcHBsaWNhdGlvbi9qc29uIj09PSgwLHMuZW5zdXJlTm90TnVsbCkodC5oZWFkZXJzLmdldCgiQ29udGVudC1UeXBlIikpP3QuanNvbigpOnQudGV4dCgpfWFzeW5jIHNldFZhbHVlKGUsdCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P3RoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZSh0LHtoZWFkZXJzOnsiY29udGVudC10eXBlIjoidGV4dC9wbGFpbiJ9fSkpOnRoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZShKU09OLnN0cmluZ2lmeSh0KSx7aGVhZGVyczp7ImNvbnRlbnQtdHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifX0pKX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXtjb25zdCBfPWF3YWl0IHRoaXMuZ2V0VmFsdWUoZSk7XyYmKGF3YWl0IHRoaXMuc2V0VmFsdWUodCxfKSxhd2FpdCB0aGlzLl9jYWNoZS5kZWxldGUoZSkpfWFzeW5jIGRlbGV0ZVZhbHVlKGUpe3JldHVybiB0aGlzLl9jYWNoZS5kZWxldGUoZSl9fWNsYXNzIG57Y29uc3RydWN0b3IoKXt0aGlzLl9kYXRhPW5ldyBNYXB9YXN5bmMgZ2V0VmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZ2V0KGUpPz9udWxsfWFzeW5jIHNldFZhbHVlKGUsdCl7dGhpcy5fZGF0YS5zZXQoZSx0KX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXsKdGhpcy5fZGF0YS5oYXMoZSkmJih0aGlzLl9kYXRhLnNldCh0LHRoaXMuX2RhdGEuZ2V0KGUpKSx0aGlzLl9kYXRhLmRlbGV0ZShlKSl9YXN5bmMgZGVsZXRlVmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZGVsZXRlKGUpfX1hc3luYyBmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWF3YWl0IGNhY2hlcy5vcGVuKGUpO3JldHVybiBuZXcgaSh0KX1jYXRjaHtyZXR1cm4gbmV3IG59fX0sNDAzNihlLHQsXyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHMoZSl7Y29uc3QgdD17fTtpZigtMT09PWUuaW5kZXhPZigiQCIpKXQuc2hvcnRJZD1lLHQucGFja2FnZUlkPSJ0di1iYXNpY3N0dWRpZXMiLHQuaWQ9ZSsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtjb25zdCBfPWUuc3BsaXQoIkAiKTt0LnNob3J0SWQ9X1swXTtjb25zdCBzPV9bMV0uc3BsaXQoIi0iKTtpZigzPT09cy5sZW5ndGgpdC5wYWNrYWdlSWQ9cy5zbGljZSgwLDIpLmpvaW4oIi0iKSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPXBhcnNlSW50KHNbMl0pO2Vsc2UgaWYoMT09PXMubGVuZ3RoJiYiZGVjaXNpb25iYXIiPT09c1swXSl0LnBhY2thZ2VJZD0ibGVzLSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtpZigxIT09cy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJ1bmV4cGVjdGVkIHN0dWR5IGlkOiIrZSk7dC5wYWNrYWdlSWQ9InR2LSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTF9fWlmKHQuZnVsbElkPXQuaWQrIi0iK3QudmVyc2lvbiwidHYtc2NyaXB0aW5nIj09PXQucGFja2FnZUlkKXtjb25zdCBlPXQuc2hvcnRJZDtpZigwPT09ZS5pbmRleE9mKCJTY3JpcHQkIil8fDA9PT1lLmluZGV4T2YoIlN0cmF0ZWd5U2NyaXB0JCIpKXtjb25zdCBfPWUuaW5kZXhPZigiXyIpO3QucHJvZHVjdElkPV8+PTA/ZS5zdWJzdHJpbmcoMCxfKTp0LnBhY2thZ2VJZH1lbHNlIHQucHJvZHVjdElkPXQucGFja2FnZUlkfWVsc2UgdC5wcm9kdWN0SWQ9dC5wYWNrYWdlSWQ7cmV0dXJuIHR9Xy5kKHQse3BhcnNlSWRTdHJpbmc6KCk9PnN9KX0sNzgwOTc1KGUsdCxfKXsidXNlIHN0cmljdCI7dmFyIHM7Xy5kKHQse0NoYXJ0QXBpTWVzc2FnZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuQ29ubmVjdGVkPSJjb25uZWN0ZWQiLGUuRGlzY29ubmVjdGVkPSJkaXNjb25uZWN0ZWQiLGUuUmVjb25uZWN0QmFpbG91dD0icmVjb25uZWN0X2JhaWxvdXQifShzfHwocz17fSkpfSwzMDkwNTIoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7UVVPVEVfRklFTERTOigpPT5pLFFVT1RFX0ZJRUxEU19DQUNIRTooKT0+bn0pO3ZhciBzPV8oMTM4NjM4KQo7Y29uc3QgaT1uZXcgU2V0KFsicHJvX25hbWUiLCJiYXNlX25hbWUiLCJsb2dvIiwibG9nb2lkIiwiY3VycmVuY3ktbG9nb2lkIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiLCJzb3VyY2UtbG9nb2lkIiwic2hvcnRfbmFtZSIsIndlYl9zaXRlX3VybCIsInByb19wZXJtIiwidGltZXpvbmUiLCJjdXJyZW50X3Nlc3Npb24iLCJzZXNzaW9uX2hvbGlkYXlzIiwibGFzdF9wcmljZSIsImxwX3RpbWUiLCJzdWJzZXNzaW9ucyIsInByZXZfY2xvc2VfcHJpY2UiLCJvcGVuX3ByaWNlIiwiaGlnaF9wcmljZSIsImxvd19wcmljZSIsInByaWNlXzUyX3dlZWtfaGlnaCIsInByaWNlXzUyX3dlZWtfbG93IiwiYXNrIiwiYXNrX3NpemUiLCJiaWQiLCJiaWRfc2l6ZSIsInJjaCIsInJjaHAiLCJydGMiLCJydGNfdGltZSIsIm5jaCIsIm5jaHAiLCJudGMiLCJudGNfdGltZSIsImRhdGFfZnJlcXVlbmN5IiwicmVmZXJlbmNlLWxhc3QtcGVyaW9kLXN0YXJ0IiwiYnVzaW5lc3NfZGVzY3JpcHRpb24iLCJ3ZWJfc2l0ZV91cmwiLCJmaWdpIiwibnVtYmVyX29mX2VtcGxveWVlcyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9jYWxlbmRhcl9kYXRlIiwicm9vdCIsImRlc2NyaXB0aW9uIiwiZXhjaGFuZ2UiLCJsaXN0ZWRfZXhjaGFuZ2UiLCJ0eXBlIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJpc190cmFkYWJsZSIsInNlY3RvciIsInR5cGVzcGVjcyIsInZpc2libGUtcGxvdHMtc2V0IiwiaW5kdXN0cnkiLCJjdXJyZW5jeV9pZCIsImxhc3RfcHJpY2UiLCJmcmFjdGlvbmFsIiwibWlubW92IiwibWlubW92ZTIiLCJwcmljZXNjYWxlIiwidmFyaWFibGVfdGlja19zaXplIiwiY2hhbmdlIiwiY2hhbmdlX3BlcmNlbnQiLCJ2b2x1bWUiLCJhdmVyYWdlX3ZvbHVtZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJtYXJrZXRfY2FwX2NhbGMiLCJ0b3RhbF9yZXZlbnVlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSIsInByaWNlX2Vhcm5pbmdzX3R0bSIsImJldGFfMV95ZWFyIiwiZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX2Z5IiwiZGl2aWRlbmRzX3lpZWxkIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3B1YmxpY2F0aW9uX3R5cGVfbmV4dF9mcSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcSIsImZvcmVjYXN0X3JhdyIsImxhc3RfcmVsZWFzZV9kYXRlIiwibmV4dF9yZWxlYXNlX2RhdGUiLCJyZWZlcmVuY2VfbGFzdF9wZXJpb2QiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwibnVtYmVyX29mX2VtcGxveWVlcyIsIndlYl9zaXRlX3VybCIsImJ1c2luZXNzX2Rlc2NyaXB0aW9uIiwiZm91bmRlZCIsImNlbyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsInRvdGFsX3NoYXJlc19vdXRzdGFuZGluZyIsImRpdmlkZW5kX3BheW91dF9yYXRpb190dG0iLCJkaXZpZGVuZHNfeWllbGRfY3VycmVudCIsImRpdmlkZW5kX2V4X2RhdGVfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfcmVjZW50IiwiZGl2aWRlbmRfZXhfZGF0ZV9yZWNlbnQiLCJkaXZpZGVuZF9hbW91bnRfaCIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV91cGNvbWluZyIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV9yZWNlbnQiLCJ0b3RhbF9yZXZlbnVlX2ZxX2giLCJ0b3RhbF9yZXZlbnVlX2Z5X2giLCJuZXRfaW5jb21lX2Z5X2giLCJuZXRfaW5jb21lX2ZxX2giLCJ0b3RhbF9hc3NldHNfZnlfaCIsInRvdGFsX2Fzc2V0c19mcV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19meV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2Z5X2giLCJmaXNjYWxfcGVyaW9kX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2ZoX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnFfaCIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcV9oIiwiZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9mcV9oIiwibmV4dF9lYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxIiwiaXNfbmV4dF9lYXJuaW5nc19yZWxlYXNlX2RhdGVfZXN0aW1hdGVkIiwic3ltYm9sLXByaW1hcnluYW1lIiwiY3VycmVuY3lfY29kZSIsInJhdGVzX21jIiwicmF0ZXNfZnkiLCJyYXRlc190dG0iLCJtZWFzdXJlIiwidmFsdWVfdW5pdF9pZCIsInZhbHVlLXVuaXQtaWQiLCJ1cGRhdGVfbW9kZSIsImxhbmd1YWdlIiwibG9jYWxfZGVzY3JpcHRpb24iLCJzaG9ydF9kZXNjcmlwdGlvbiIsInNvdXJjZSIsInNvdXJjZTIiLCJmb3JtYXQiLCJyZWNvbW1lbmRhdGlvbl9tYXJrIiwibGFzdF9yZXBvcnRfZnJlcXVlbmN5IiwicHJpY2VfdGFyZ2V0X2VzdGltYXRlc19udW0iLCJwcmljZV90YXJnZXRfYXZlcmFnZSIsInVwZGF0ZV9tb2RlX3NlY29uZHMiLCJyZWNvbW1lbmRhdGlvbl90b3RhbCIsInJlY29tbWVuZGF0aW9uX2J1eSIsInJlY29tbWVuZGF0aW9uX292ZXIiLCJyZWNvbW1lbmRhdGlvbl9ob2xkIiwicmVjb21tZW5kYXRpb25fdW5kZXIiLCJyZWNvbW1lbmRhdGlvbl9zZWxsIiwicmVjb21tZW5kYXRpb25fdG90YWwiLCJwcmljZV90YXJnZXRfaGlnaCIsInByaWNlX3RhcmdldF9sb3ciLCJyYXRlc19wdCIsInJhdGVzX3B0IiwidG90YWxfcmV2ZW51ZV9meV9oIiwidG90YWxfcmV2ZW51ZV9mcV9oIiwidG90YWxfcmV2ZW51ZV9maF9oIiwibmV0X3JldmVudWVfZnlfaCIsIm5ldF9yZXZlbnVlX2ZxX2giLCJuZXRfcmV2ZW51ZV9maF9oIiwibmV0X2luY29tZV9meV9oIiwibmV0X2luY29tZV9mcV9oIiwibmV0X2luY29tZV9maF9oIiwidG90YWxfYXNzZXRzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZnFfaCIsInRvdGFsX2Fzc2V0c19maF9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJ0b3RhbF9saWFiaWxpdGllc19maF9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19maF9oIiwiZmlzY2FsX3BlcmlvZF9meSIsImZpc2NhbF9wZXJpb2RfZnEiLCJmaXNjYWxfcGVyaW9kX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlX2ZxX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnlfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9maF9oIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZV9meSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X3RpbWUiLCJlYXJuaW5nc19yZWxlYXNlX3RpbWUiLCJpc19uZXh0X2Vhcm5pbmdzX3JlbGVhc2VfZGF0ZV9lc3RpbWF0ZWQiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZmgiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2ZoX2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZoX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2Z5X2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZoX2giLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnEiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnkiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZmgiLCJyZXZlbnVlX2ZxX2giLCJyZXZlbnVlX2Z5X2giLCJyZXZlbnVlX2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZxX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2Z5X2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnEiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnkiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZmgiLCJyZXZlbnVlX3NlZ19ieV9idXNpbmVzc19oIiwicmV2ZW51ZV9zZWdfYnlfcmVnaW9uX2giLCJ0b3RhbF9yZXZlbnVlX2Z5IiwidG90YWxfcmV2ZW51ZV9mcSIsInRvdGFsX3JldmVudWVfZmgiLCJncm9zc19wcm9maXRfZnkiLCJncm9zc19wcm9maXRfZnEiLCJncm9zc19wcm9maXRfZmgiLCJlYml0ZGFfZnkiLCJlYml0X2Z5IiwibmV0X2luY29tZV9meSIsIm5ldF9pbmNvbWVfZnEiLCJuZXRfaW5jb21lX2ZoIiwidG90YWxfZGVidF9meV9oIiwidG90YWxfZGVidF9mcV9oIiwidG90YWxfZGVidF9maF9oIiwiZnJlZV9jYXNoX2Zsb3dfZnlfaCIsImZyZWVfY2FzaF9mbG93X2ZxX2giLCJmcmVlX2Nhc2hfZmxvd19maF9oIiwiY2FzaF9uX2VxdWl2YWxlbnRzX2Z5X2giLCJjYXNoX25fZXF1aXZhbGVudHNfZnFfaCIsImNhc2hfbl9lcXVpdmFsZW50c19maF9oIiwidG90YWxfY3VycmVudF9hc3NldHNfZnkiLCJ0b3RhbF9jdXJyZW50X2Fzc2V0c19mcSIsInRvdGFsX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfY3VycmVudF9saWFiaWxpdGllc19meSIsInRvdGFsX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnEiLCJ0b3RhbF9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2Z5IiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZxIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnkiLCJ0b3RhbF9ub25fY3VycmVudF9saWFiaWxpdGllc19mcSIsInRvdGFsX25vbl9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwibG9hbnNfbmV0X2Z5IiwibG9hbnNfbmV0X2Z5X2giLCJsb2Fuc19uZXRfZnFfaCIsImxvYW5zX25ldF9maF9oIiwidG90YWxfZGVwb3NpdHNfZnkiLCJ0b3RhbF9kZXBvc2l0c19meV9oIiwidG90YWxfZGVwb3NpdHNfZnFfaCIsInRvdGFsX2RlcG9zaXRzX2ZoX2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19meSIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2Z5X2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19mcV9oIiwibG9hbl9sb3NzX2FsbG93YW5jZXNfZmhfaCIsInJlc2VydmVfdG9fdG90YWxfY2FwaXRhbF9meV9oIiwicmVzZXJ2ZV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJyZXNlcnZlX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsInVuZWFybmVkX3ByZW1pdW1fdG9fdG90YWxfY2FwaXRhbF9meV9oIiwidW5lYXJuZWRfcHJlbWl1bV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJ1bmVhcm5lZF9wcmVtaXVtX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsImluc3VyYW5jZV9yZXNlcnZlc19meV9oIiwiaW5zdXJhbmNlX3Jlc2VydmVzX2ZxX2giLCJpbnN1cmFuY2VfcmVzZXJ2ZXNfZmhfaCIsInBvbGljeV9jbGFpbXNfZnlfaCIsInBvbGljeV9jbGFpbXNfZnFfaCIsInBvbGljeV9jbGFpbXNfZmhfaCIsInByZW1pdW1zX2Vhcm5lZF9meV9oIiwicHJlbWl1bXNfZWFybmVkX2ZxX2giLCJwcmVtaXVtc19lYXJuZWRfZmhfaCIsInByaWNlX2Vhcm5pbmdzX2ZxX2giLCJwcmljZV9lYXJuaW5nc19meV9oIiwicHJpY2VfZWFybmluZ3NfZmhfaCIsInByaWNlX3NhbGVzX2ZxX2giLCJwcmljZV9zYWxlc19meV9oIiwicHJpY2Vfc2FsZXNfZmhfaCIsImRpbHV0ZWRfbmV0X2luY29tZV90dG0iLCJ0b3RhbF9yZXZlbnVlX3R0bSIsIm5ldF9yZXZlbnVlX3R0bSIsInByaWNlX2Vhcm5pbmdzX2N1cnJlbnQiLCJwcmljZV9zYWxlc19jdXJyZW50IiwiaXNpbi1kaXNwbGF5ZWQiLCJjdXNpcCIsImNmaV9jb2RlIiwiaW50ZXJlc3RfaW5jb21lX2Z5X2giLCJpbnRlcmVzdF9pbmNvbWVfZnFfaCIsImludGVyZXN0X2luY29tZV9maF9oIiwibm9uX2ludGVyZXN0X2luY29tZV9meV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9mcV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9maF9oIiwid2Vic2l0ZSIsImRvYyIsImV4cGxvcmVyIiwic291cmNlcyIsImNvbnRyYWN0cyIsImNyeXB0b19jb21tb25fY2F0ZWdvcmllcyIsImNyeXB0b19hc3NldCIsImNvbW11bml0eSIsImRpdmlkZW5kc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiLCJmaW5hbmNpYWxzX2F2YWlsYWJpbGl0eSIsImRvY3VtZW50cyIsImV0Zl9hc3NldF90eXBlX2V4cG9zdXJlIiwiZXRmX3JlZ2lvbl9leHBvc3VyZSIsInRvcF9ob2xkaW5ncyIsInVuaXQtaWQiLCJvcHRpb25zLWluZm8iLCJvcHRpb24tdHlwZSIsImludGVyZXN0X2luY29tZV9meSIsImludGVyZXN0X2luY29tZV9mcSIsImludGVyZXN0X2luY29tZV9maCIsIm5vbl9pbnRlcmVzdF9pbmNvbWVfZnkiLCJub25faW50ZXJlc3RfaW5jb21lX2ZxIiwibm9uX2ludGVyZXN0X2luY29tZV9maCIsImludGVyZXN0X2V4cGVuc2VfZnkiLCJpbnRlcmVzdF9leHBlbnNlX2ZxIiwiaW50ZXJlc3RfZXhwZW5zZV9maCIsImxvYW5fbG9zc19wcm92aXNpb25fZnkiLCJsb2FuX2xvc3NfcHJvdmlzaW9uX2ZxIiwibG9hbl9sb3NzX3Byb3Zpc2lvbl9maCIsIm5vbl9pbnRlcmVzdF9leHBlbnNlX2Z5Iiwibm9uX2ludGVyZXN0X2V4cGVuc2VfZnEiLCJub25faW50ZXJlc3RfZXhwZW5zZV9maCIsIm5vbl9vcGVyX2luY29tZV9meSIsIm5vbl9vcGVyX2luY29tZV9mcSIsIm5vbl9vcGVyX2luY29tZV9maCIsInVudXN1YWxfZXhwZW5zZV9pbmNfZnkiLCJ1bnVzdWFsX2V4cGVuc2VfaW5jX2ZxIiwidW51c3VhbF9leHBlbnNlX2luY19maCIsInByZXRheF9pbmNvbWVfZnkiLCJwcmV0YXhfaW5jb21lX2ZxIiwicHJldGF4X2luY29tZV9maCIsImluY29tZV90YXhfZnkiLCJpbmNvbWVfdGF4X2ZxIiwiaW5jb21lX3RheF9maCIsImFmdGVyX3RheF9vdGhlcl9pbmNvbWVfZnkiLCJhZnRlcl90YXhfb3RoZXJfaW5jb21lX2ZxIiwiYWZ0ZXJfdGF4X290aGVyX2luY29tZV9maCIsInRvdGFsX25vbl9vcGVyX2luY29tZV9meSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9mcSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9maCIsIm9wZXJfaW5jb21lX2Z5Iiwib3Blcl9pbmNvbWVfZnEiLCJvcGVyX2luY29tZV9maCIsIm9wZXJhdGluZ19leHBlbnNlc19meSIsIm9wZXJhdGluZ19leHBlbnNlc19mcSIsIm9wZXJhdGluZ19leHBlbnNlc19maCIsImNvc3Rfb2ZfZ29vZHNfZnkiLCJjb3N0X29mX2dvb2RzX2ZxIiwiY29zdF9vZl9nb29kc19maCIsImVxdWl0eV9pbl9lYXJuaW5nc19meSIsImVxdWl0eV9pbl9lYXJuaW5nc19mcSIsImVxdWl0eV9pbl9lYXJuaW5nc19maCIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9meSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9mcSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9maCIsImRpc2NvbnRpbnVlZF9vcGVyYXRpb25zX2Z5IiwiZGlzY29udGludWVkX29wZXJhdGlvbnNfZnEiLCJkaXNjb250aW51ZWRfb3BlcmF0aW9uc19maCIsImZyb250X2NvbnRyYWN0IiwibWluX2NvbnRyYWN0IiwicG9pbnR2YWx1ZSIsInVuaXRfaWQiLCJleHBpcmF0aW9uIiwiYXVtIiwiYXNzZXRfY2xhc3MiLCJmb2N1cyIsImV4cGVuc2VfcmF0aW8iLCJsYXVuY2hfZGF0ZSIsImlzc3VlciIsImJyYW5kIiwiaG9tZXBhZ2UiLCJpbmRleF90cmFja2VkIiwiYWN0aXZlbHlfbWFuYWdlZCIsImZ1bmRfdmlld19tb2RlcyIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnlfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnFfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZmhfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZmhfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZmhfaCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9maCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9mcSIsInRvdGFsX2RlYnRfZnEiLCJtaW5vcml0eV9pbnRlcmVzdF9maCIsIm1pbm9yaXR5X2ludGVyZXN0X2ZxIiwiY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2ZxIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZoIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZxIiwiZW50ZXJwcmlzZV92YWx1ZV9jdXJyZW50IiwiZXRmX2hvbGRpbmdzX2NvdW50IiwiY29udHJhY3QtZGVzY3JpcHRpb24iLCJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiLCJhbGxfdGltZV9oaWdoIiwiYWxsX3RpbWVfaGlnaF9kYXkiLCJhbGxfdGltZV9sb3ciLCJhbGxfdGltZV9sb3dfZGF5Iiwib3V0c3RhbmRpbmdfYW1vdW50Iiwibm9taW5hbF92YWx1ZSIsImRlbm9tX21pbiIsImN1cnJlbnRfY291cG9uIiwiY291cG9uX3R5cGVfZ2VuZXJhbCIsImNvdXBvbl9mcmVxdWVuY3kiLCJ5aWVsZF90b19tYXR1cml0eSIsIm1hdHVyaXR5LWRhdGUiLCJkYXlzX3RvX21hdHVyaXR5IiwiYm9uZF9pc3N1ZXIiLCJpc3N1ZV9kYXRlIiwiYm9uZF9pc3N1ZXJfc3RvY2tfc3ltYm9sIiwidG90YWxfaXNzdWVkX2Ftb3VudCIsInBhaWRfYW1vdW50IiwiYm9uZF9zbnBfcmF0aW5nX2x0X2giLCJwbGFjZW1lbnRfdHlwZSIsImR1cmF0aW9uX3R5cGUiLCJtYXR1cml0eV90eXBlIiwib2ZmZXJfdHlwZSIsInJlZGVtcHRpb25fdHlwZSIsImNvbnZlcnNpb25fb3B0aW9uIiwic2lua2luZ19mdW5kIiwib3duZXJzaGlwX2Zvcm0iLCJkYWlseS1zdW1tYXJ5LWFzdCIsImlzc3VlX3N0YXR1cyIsImNvdXBvbl9oIiwic2lua2luZ19mdW5kX25leHRfZGF0ZSIsInNpbmtpbmdfZnVuZF9taW5fYW1vdW50X25leHQiLCJjYWxsX25leHRfZGF0ZSIsInJlZGVtcHRpb25zX2giLCJjYWxsX25vdGljZV9kYXlzIiwicHV0X25leHRfZGF0ZSIsInB1dF9ub3RpY2VfZGF5c19taW4iLCJzZW5pb3JpdHlfbGV2ZWwiLCJpbmZsYXRpb25fcHJvdGVjdGlvbiIsInBsZWRnZV9zdGF0dXMiLCJib25kX2lzc3Vlcl9jb3VudHJ5X29mX3Jpc2siLCJib25kX2lzc3Vlcl9jcl9wYXJlbnQiLCJjcmVkaXRfZW5oYW5jZW1lbnRfdHlwZSIsImNyZWRpdF9lbmhhbmNlbWVudF9zdGF0dXMiLCJ1c2Vfb2ZfcHJvY2VlZHMiLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX2x0X2giLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX3N0X2giLCJib25kX2FnZW50c190ciIsImZpcnN0X2Jhcl90aW1lXzFkIiwiZmluYW5jaWFsLWluZGljYXRvci1pZCIsImV4Y2hhbmdlLWluZm8iLCJ1bmRlcmx5aW5nLXN5bWJvbCIsInN0cmlrZSIsImxvdHNpemUiLCJvcHRpb24tc3R5bGUiLCJoYXNfYm9uZHMiLCJvcGVuX3RpbWUiLCJoYXNfYm9uZHMiLCJkZXhfYnV5c18xNW0iLCJkZXhfc2VsbHNfMTVtIiwiZGV4X2J1eV92b2x1bWVfMTVtIiwiZGV4X3NlbGxfdm9sdW1lXzE1bSIsImRleF9idXllcnNfMTVtIiwiZGV4X3NlbGxlcnNfMTVtIiwiZGV4X2J1eXNfMWgiLCJkZXhfc2VsbHNfMWgiLCJkZXhfYnV5X3ZvbHVtZV8xaCIsImRleF9zZWxsX3ZvbHVtZV8xaCIsImRleF9idXllcnNfMWgiLCJkZXhfc2VsbGVyc18xaCIsImRleF9idXlzXzRoIiwiZGV4X3NlbGxzXzRoIiwiZGV4X2J1eV92b2x1bWVfNGgiLCJkZXhfc2VsbF92b2x1bWVfNGgiLCJkZXhfYnV5ZXJzXzRoIiwiZGV4X3NlbGxlcnNfNGgiLCJkZXhfYnV5c18xMmgiLCJkZXhfc2VsbHNfMTJoIiwiZGV4X2J1eV92b2x1bWVfMTJoIiwiZGV4X3NlbGxfdm9sdW1lXzEyaCIsImRleF9idXllcnNfMTJoIiwiZGV4X3NlbGxlcnNfMTJoIiwiZGV4X2J1eXNfMjRoIiwiZGV4X3NlbGxzXzI0aCIsImRleF9idXlfdm9sdW1lXzI0aCIsImRleF9zZWxsX3ZvbHVtZV8yNGgiLCJkZXhfYnV5ZXJzXzI0aCIsImRleF9zZWxsZXJzXzI0aCIsImRleF9jb252ZXJ0ZWRfc3ltYm9sIiwiZGV4X3RyYWRpbmdfdm9sdW1lXzI0aCIsImRleF9jcmVhdGVkX3RpbWUiLCJkZXhfY3VycmVuY3kiLCJkZXhfY3VycmVuY3lfbG9nb2lkIiwiYmxvY2tjaGFpbl9hZGRyZXNzZXNfdXJscyIsImJsb2NrY2hhaW5fYWRkcmVzc2VzIiwiYmFzZV9jdXJyZW5jeSIsImlwb19vZmZlcl9zdGF0dXMiLCJoYXNfaXBvX2RldGFpbHNfdmlzaWJsZSIsImlwb19wcmljZV9yYW5nZV91c2RfbWF4IiwiaXBvX3ByaWNlX3JhbmdlX3VzZF9taW4iLCJpcG9fb2ZmZXJfcHJpY2VfdXNkIiwiaXBvX29mZmVyZWRfc2hhcmVzIiwiaXBvX2RlYWxfYW1vdW50X3VzZCIsImlwb19hbm5vdW5jZW1lbnRfZGF0ZSIsImlwb19vZmZlcl9kYXRlIiwiYXZhaWxhYmxlX2RhdGFfcmFuZ2VfYmVnaW5fZGF0ZSIsImF2YWlsYWJsZV9kYXRhX3JhbmdlX2VuZF9kYXRlIiwiaGFzX2V0Zl9vd25lcnNoaXAiLCJzeW1ib2xfcHJpbWFyeV9saXN0aW5nIiwibWV0cmljX3l0bSIsIm1ldHJpY3MiLCJlcHNfZXN0aW1hdGVzX2Z5X2giLCJlcHNfZXN0aW1hdGVzX2ZxX2giLCJlcHNfZXN0aW1hdGVzX2ZoX2giLCJyZXZlbnVlX2VzdGltYXRlc19meV9oIiwicmV2ZW51ZV9lc3RpbWF0ZXNfZnFfaCIsInJldmVudWVfZXN0aW1hdGVzX2ZoX2giLCJkcHNfZXN0aW1hdGVzX2Z5X2giLCJkcHNfZXN0aW1hdGVzX2ZxX2giLCJkcHNfZXN0aW1hdGVzX2ZoX2giLCJjb3N0X29mX2dvb2RzX2VzdGltYXRlc19meV9oIiwiY29zdF9vZl9nb29kc19lc3RpbWF0ZXNfZnFfaCIsImNvc3Rfb2ZfZ29vZHNfZXN0aW1hdGVzX2ZoX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2Z5X2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZxX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZoX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2Z5X2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZxX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZoX2giLCJyZXNlYXJjaF9hbmRfZGV2X2VzdGltYXRlc19meV9oIiwicmVzZWFyY2hfYW5kX2Rldl9lc3RpbWF0ZXNfZnFfaCIsInJlc2VhcmNoX2FuZF9kZXZfZXN0aW1hdGVzX2ZoX2giLCJlYml0ZGFfZXN0aW1hdGVzX2Z5X2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZxX2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZoX2giLCJlYml0X2VzdGltYXRlc19meV9oIiwiZWJpdF9lc3RpbWF0ZXNfZnFfaCIsImViaXRfZXN0aW1hdGVzX2ZoX2giLCJuZXRfaW5jb21lX2VzdGltYXRlc19meV9oIiwibmV0X2luY29tZV9lc3RpbWF0ZXNfZnFfaCIsIm5ldF9pbmNvbWVfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZxX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9kZWJ0X2VzdGltYXRlc19meV9oIiwidG90YWxfZGVidF9lc3RpbWF0ZXNfZnFfaCIsInRvdGFsX2RlYnRfZXN0aW1hdGVzX2ZoX2giLCJib29rX3ZhbHVlX3Blcl9zaGFyZV9lc3RpbWF0ZXNfZnlfaCIsImJvb2tfdmFsdWVfcGVyX3NoYXJlX2VzdGltYXRlc19mcV9oIiwiYm9va192YWx1ZV9wZXJfc2hhcmVfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXBpdGFsX2V4cGVuZGl0dXJlc19lc3RpbWF0ZXNfZnlfaCIsImNhcGl0YWxfZXhwZW5kaXR1cmVzX2VzdGltYXRlc19mcV9oIiwiY2FwaXRhbF9leHBlbmRpdHVyZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJmcmVlX2Nhc2hfZmxvd19lc3RpbWF0ZXNfZnlfaCIsImZyZWVfY2FzaF9mbG93X2VzdGltYXRlc19mcV9oIiwiZnJlZV9jYXNoX2Zsb3dfZXN0aW1hdGVzX2ZoX2giLCJlc3RpbWF0ZXNfZmlzY2FsX3BlcmlvZF9meV9oIiwiZXN0aW1hdGVzX2Zpc2NhbF9wZXJpb2RfZnFfaCIsImVzdGltYXRlc19maXNjYWxfcGVyaW9kX2ZoX2giLCJmb3JlY2FzdF9hdmFpbGFiaWxpdHkiXSksbj1uZXcgY2xhc3N7CmNvbnN0cnVjdG9yKGUpe3RoaXMuX2NhY2hlPW5ldyBNYXAsdGhpcy5fdGltZXM9bmV3IE1hcCx0aGlzLl9maWVsZHM9Wy4uLmUuZmllbGRzXX11cGRhdGUoZSx0LF8pe2NvbnN0IGk9KDAscy5lbnN1cmVEZWZpbmVkKShlLnN5bWJvbG5hbWUpLG49RGF0ZS5ub3coKTtpZih0aGlzLl9jYWNoZS5oYXMoaSl8fHRoaXMuX2NhY2hlLnNldChpLHtzeW1ib2xuYW1lOmksc3RhdHVzOmUuc3RhdHVzLHZhbHVlczp7fX0pLHRoaXMuX3RpbWVzLmhhcyhpKXx8dGhpcy5fdGltZXMuc2V0KGksbmV3IE1hcCksImVycm9yIj09PWUuc3RhdHVzKXJldHVybjtjb25zdCBhPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fY2FjaGUuZ2V0KGkpKSxyPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fdGltZXMuZ2V0KGkpKTthLnN0YXR1cz1lLnN0YXR1cztmb3IoY29uc3QgcyBvZiB0aGlzLl9maWVsZHMpdC5oYXMocykmJihffHx2b2lkIDAhPT1lLnZhbHVlc1tzXSkmJihhLnZhbHVlc1tzXT1lLnZhbHVlc1tzXSxyLnNldChzLG4pKX1nZXQoZSl7cmV0dXJuIHRoaXMuX2NhY2hlLmdldChlKT8/bnVsbH1nZXRUaW1lcyhlKXtyZXR1cm4gdGhpcy5fdGltZXMuZ2V0KGUpPz9udWxsfWZpZWxkcygpe3JldHVybiB0aGlzLl9maWVsZHN9fSh7ZmllbGRzOml9KX0sOTI3NTkzKGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse1F1b3RlU2Vzc2lvbk11bHRpcGxleGVyOigpPT5mfSk7dmFyIHM9Xyg1ODcxNjgpLGk9Xyg1NDc4NTEpLG49XygzNTI4MzcpLGE9XygxMzg2MzgpLHI9XygyMjEwNjEpLG89Xyg5NDgzODApLGw9Xyg5NjQ0ODYpLGM9XygxNTAxNTApLGg9XygzMDkwNTIpLGQ9XygzNjc5NDYpO2xldCB1PSExO3ZhciBtPV8oOTcwNzc0KTtjb25zdCBwPSgwLHIuZ2V0TG9nZ2VyKSgiV2ViY2hhcnRDbGllbnQuUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIiKTtjbGFzcyBme2NvbnN0cnVjdG9yKGUpe3RoaXMub25Db25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMub25EaXNjb25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLl9zdWJzY3JpcHRpb25zPXt9LHRoaXMuX3N5bWJvbF9kYXRhPXt9LHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHM9KDAsaS5kZWZhdWx0KSh0aGlzLl91cGRhdGVGYXN0U3ltYm9scywyNTApLHRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGE9e30sdGhpcy5fZXh0ZW5zaW9ucz17fSx0aGlzLm9wdGlvbnM9e3Rocm90dGxlVGltZW91dDoxMjUsLi4uZX0sdGhpcy5fc2Vzc2lvbj1uZXcgbS5RdW90ZVNlc3Npb24oZS5hcGksWyJtdWx0aXBsZXhlciIsZS5uYW1lLCgwLGMucmFuZG9tSGFzaCkoKV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIl8iKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LmZvcm1hdHRlciYmKHRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyPXRoaXMub3B0aW9ucy5leHRlbnNpb25zLmZvcm1hdHRlcih0aGlzKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LnNuYXBzaG90JiYodGhpcy5fZXh0ZW5zaW9ucy5zbmFwc2hvdD10aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucy5zbmFwc2hvdCh0aGlzKSksdGhpcy5jb25uZWN0KCl9ZGVzdHJveSgpe3RoaXMuX3Nlc3Npb24uZGVzdHJveSgpLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCl9aW50ZXJuYWxzKCl7cmV0dXJue3Nlc3Npb246KCk9PnRoaXMuX3Nlc3Npb24sc3Vic2NyaXB0aW9uczooKT0+dGhpcy5fc3Vic2NyaXB0aW9ucyxkYXRhOigpPT50aGlzLl9zeW1ib2xfZGF0YX19Y29ubmVjdCgpe3RoaXMuX3Nlc3Npb24uY29ubmVjdCh0aGlzLnF1b3RlSGFuZGxlci5iaW5kKHRoaXMpKX1xdW90ZUhhbmRsZXIoZSl7Y29uc3R7bWV0aG9kOnQscGFyYW1zOl99PWU7c3dpdGNoKHQpe2Nhc2UiY29ubmVjdGVkIjp0aGlzLl9jb25uZWN0ZWR8fCh0aGlzLl9jb25uZWN0ZWQ9ITAsdGhpcy5vbkNvbm5lY3RlZCgpKTticmVhaztjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpicmVhaztjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKF9bMF0pO2JyZWFrO2Nhc2UicXVvdGVfY29tcGxldGVkIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKHtzeW1ib2xuYW1lOl9bMF0sY29tcGxldGU6cGVyZm9ybWFuY2Uubm93KCksdmFsdWVzOnt9fSk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCkpfX1vbkNvbm5lY3RlZCgpe3RoaXMuc2V0RmllbGRzKCk7Y29uc3QgZT1PYmplY3Qua2V5cyh0aGlzLl9zeW1ib2xfZGF0YSk7ZS5sZW5ndGgmJih0aGlzLl9zZXNzaW9uLnF1b3RlQWRkU3ltYm9scyhlKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpLHRoaXMub25Db25uZWN0LmZpcmUoKX1zZXRGaWVsZHMoKXtjb25zdHtmaWVsZHM6ZX09dGhpcy5vcHRpb25zO2UmJmUubGVuZ3RoJiZ0aGlzLl9zZXNzaW9uLnF1b3RlU2V0RmllbGRzKGUpfW9uU3ltYm9sRGF0YShlKXt0cnl7ZS5zdGF0dXMmJmguUVVPVEVfRklFTERTX0NBQ0hFLnVwZGF0ZShlLGguUVVPVEVfRklFTERTLCExKX1jYXRjaChlKXt9Y29uc3QgdD1lLnN5bWJvbG5hbWU7bGV0IF89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVt0XTt1JiYoZGVsZXRlIGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2Usdm9pZCAwIT09ZS52YWx1ZXMucmVndWxhcl9jbG9zZSYmKGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2U9ZS52YWx1ZXMucmVndWxhcl9jbG9zZSkpLF98fChfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbdF09e2ZuRGlzcGF0Y2g6KDAscy5kZWZhdWx0KSh0aGlzLmRpc3BhdGNoU3ltYm9sRGF0YS5iaW5kKHRoaXMpLHRoaXMub3B0aW9ucy50aHJvdHRsZVRpbWVvdXQpfSksXy5jYWNoZT8oMCxsLmRlZXBFeHRlbmQpKF8uY2FjaGUsZSk6Xy5jYWNoZT1lLF8uZm5EaXNwYXRjaCh0KX1kaXNwYXRjaFN5bWJvbERhdGEoZSl7Y29uc3QgdD10aGlzLl9zeW1ib2xfZGF0YVtlXSxfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbZV0uY2FjaGUKO2lmKGRlbGV0ZSB0aGlzLl90aHJvdHRsZWRTeW1ib2xEYXRhW2VdLmNhY2hlLHRoaXMuX3N5bWJvbF9kYXRhW2VdKXsoMCxsLmRlZXBFeHRlbmQpKHQsXyksdC52YWx1ZXMmJnRoaXMuX3BhcnNlVXBkYXRlTW9kZSh0LnZhbHVlcyk7Zm9yKGNvbnN0IHMgaW4gdGhpcy5fc3Vic2NyaXB0aW9ucyl7Y29uc3QgaT10aGlzLl9zdWJzY3JpcHRpb25zW3NdO2lmKGkuaGFzKGUpKXtbLi4uKDAsYS5lbnN1cmVEZWZpbmVkKShpLmdldChlKSldLmZvckVhY2goKGU9PntlKHQsXyl9KSl9fX19c3Vic2NyaWJlKGUsdCxfKXt0aGlzLl9zdWJzY3JpcHRpb25zW2VdPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV18fG5ldyBNYXA7Y29uc3Qgcz10aGlzLl9zdWJzY3JpcHRpb25zW2VdO3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IGk9W107dC5mb3JFYWNoKChlPT57dGhpcy5fc3ltYm9sX2RhdGFbZV0/cyYmcy5oYXMoZSl8fHRoaXMuX3N5bWJvbF9kYXRhW2VdLnN1YnNjcmliZXJzX2NvdW50Kys6KHRoaXMuX3N5bWJvbF9kYXRhW2VdPXtzdWJzY3JpYmVyc19jb3VudDoxfSxpLnB1c2goZSkpLHMuaGFzKGUpfHxzLnNldChlLFtdKTtjb25zdCB0PSgwLGEuZW5zdXJlRGVmaW5lZCkocy5nZXQoZSkpO3QucHVzaChfKSx0LmZhc3Q9ITAsdGhpcy5fc3ltYm9sX2RhdGFbZV0mJnRoaXMuX3N5bWJvbF9kYXRhW2VdLnZhbHVlcyYmXyh0aGlzLl9zeW1ib2xfZGF0YVtlXSx0aGlzLl9zeW1ib2xfZGF0YVtlXSl9KSksaS5sZW5ndGgmJnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVBZGRTeW1ib2xzKGkpLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSl9dW5zdWJzY3JpYmUoZSx0LF8pe3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IHM9dGhpcy5fc3Vic2NyaXB0aW9uc1tlXSxpPVtdO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtjb25zdCByPXRbbl07aWYocyYmcy5oYXMocikpe2lmKF8pe2NvbnN0IGU9KDAsYS5lbnN1cmVEZWZpbmVkKShzLmdldChyKSksdD1lLmluZGV4T2YoXyk7fnQmJmUuc3BsaWNlKHQsMSksZS5sZW5ndGh8fHMuZGVsZXRlKHIpfWVsc2Ugcy5kZWxldGUocik7MD09PXMuc2l6ZSYmZGVsZXRlIHRoaXMuX3N1YnNjcmlwdGlvbnNbZV0sdGhpcy5fc3ltYm9sX2RhdGEuaGFzT3duUHJvcGVydHkocikmJihzLmhhcyhyKXx8dGhpcy5fc3ltYm9sX2RhdGFbcl0uc3Vic2NyaWJlcnNfY291bnQtLSx0aGlzLl9zeW1ib2xfZGF0YVtyXS5zdWJzY3JpYmVyc19jb3VudHx8KGRlbGV0ZSB0aGlzLl9zeW1ib2xfZGF0YVtyXSxpLnB1c2gocikpKX1lbHNlIHAubG9nV2FybihgQ2hlY2sgeW91ciBzdWIvdW5zdWIgbG9va3MgaXQgaXMgbGVha2luZyAoY2xpZW50X2lkPSR7ZX0sIHN5bWJvbD0ke3J9KWApfWkubGVuZ3RoJiZ0aGlzLl9jb25uZWN0ZWQmJih0aGlzLl9zZXNzaW9uLnF1b3RlUmVtb3ZlU3ltYm9scyhpKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpfXNldEZhc3RTeW1ib2xzKGUsdCl7aWYodGhpcy5fc3Vic2NyaXB0aW9uc1tlXSl7Y29uc3QgXz10aGlzLl9zdWJzY3JpcHRpb25zW2VdLHM9QXJyYXkuZnJvbShfLmtleXMoKSk7Zm9yKGxldCBlPTA7ZTxzLmxlbmd0aDsrK2Upe2NvbnN0IGk9c1tlXTsoMCxhLmVuc3VyZURlZmluZWQpKF8uZ2V0KGkpKS5mYXN0PS0xIT09dC5pbmRleE9mKGkpfX10aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCl9c25hcHNob3QoZSl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2V4dGVuc2lvbnMuc25hcHNob3Q/UHJvbWlzZS5yZWplY3QoIk5vIGZvcm1hdHRlciBleHRlbnNpb24gcHJvdmlkZWQiKTp0aGlzLl9leHRlbnNpb25zLnNuYXBzaG90KGUpfWZvcm1hdHRlcihlLHQpe3JldHVybiB2b2lkIDA9PT10aGlzLl9leHRlbnNpb25zLmZvcm1hdHRlcj9Qcm9taXNlLnJlamVjdCgiTm8gZm9ybWF0dGVyIGV4dGVuc2lvbiBwcm92aWRlZCIpOnRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyKGUsdCl9X3VwZGF0ZUZhc3RTeW1ib2xzKCl7aWYoIXRoaXMuX2Nvbm5lY3RlZClyZXR1cm47Y29uc3QgZT10aGlzLl9mYXN0U3ltYm9scygpOzA9PT1lLmxlbmd0aD90aGlzLl9zZXNzaW9uLnF1b3RlSGliZXJuYXRlQWxsKCk6dGhpcy5fc2Vzc2lvbi5xdW90ZUZhc3RTeW1ib2xzKGUpfV9mYXN0U3ltYm9scygpe2xldCBlPVtdO2Zvcihjb25zdCB0IGluIHRoaXMuX3N1YnNjcmlwdGlvbnMpe2NvbnN0IF89dGhpcy5fc3Vic2NyaXB0aW9uc1t0XSxzPUFycmF5LmZyb20oXy5rZXlzKCkpO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7Kyt0KXtjb25zdCBpPXNbdF07KDAsYS5lbnN1cmVEZWZpbmVkKShfLmdldChpKSkuZmFzdCYmZS5wdXNoKGkpfX1yZXR1cm4gZT0oMCxuLmRlZmF1bHQpKGUpLGV9X3BhcnNlVXBkYXRlTW9kZShlKXsoMCxkLm5vcm1hbGl6ZVVwZGF0ZU1vZGUpKGUpfX19LDk3MDc3NChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtRdW90ZVNlc3Npb246KCk9Pml9KTt2YXIgcz1fKDE1MDE1MCk7Y2xhc3MgaXtjb25zdHJ1Y3RvcihlLHQ9KDAscy5yYW5kb21IYXNoKSgpKXt0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSx0aGlzLl9nbG9iYWxIYW5kbGVyPW51bGwsdGhpcy5fY2hhcnRBcGk9ZSx0aGlzLl9zZXNzaW9uaWQ9InFzXyIrdH1kZXN0cm95KCl7dGhpcy5fc2Vzc2lvbnN0YXJ0ZWQmJih0aGlzLl9jaGFydEFwaS5xdW90ZURlbGV0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSl9Y29ubmVjdGVkKCl7cmV0dXJuIHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3RlZCgpfWNvbm5lY3QoZSl7dGhpcy5fZ2xvYmFsSGFuZGxlcj1lLHRoaXMuX2NoYXJ0QXBpLmNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkLHRoaXMpLHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fY2hhcnRBcGkuZGlzY29ubmVjdCgpfXF1b3RlQWRkU3ltYm9scyhlKXt0aGlzLl9jaGFydEFwaS5xdW90ZUFkZFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlUmVtb3ZlU3ltYm9scyhlKXsKdGhpcy5fY2hhcnRBcGkucXVvdGVSZW1vdmVTeW1ib2xzKHRoaXMuX3Nlc3Npb25pZCxlKX1xdW90ZUZhc3RTeW1ib2xzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlRmFzdFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlU2V0RmllbGRzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlU2V0RmllbGRzKHRoaXMuX3Nlc3Npb25pZCxlKX1vbk1lc3NhZ2UoZSl7c3dpdGNoKGUubWV0aG9kKXtjYXNlImNvbm5lY3RlZCI6dGhpcy5fc2Vzc2lvbnN0YXJ0ZWR8fCh0aGlzLl9jaGFydEFwaS5xdW90ZUNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMCk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX3Nlc3Npb25zdGFydGVkPSExfXRoaXMuX2dsb2JhbEhhbmRsZXI/LihlKX1xdW90ZUhpYmVybmF0ZUFsbCgpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlSGliZXJuYXRlQWxsKHRoaXMuX3Nlc3Npb25pZCl9fX0sNjYxODU4KGUsdCxfKXtlLmV4cG9ydHM9W3tuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDM1MDE0NikpLHZhbHVlOiIiLHNlYXJjaF90eXBlOiJ1bmRlZmluZWQifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1NTU1MTApKSx2YWx1ZToic3RvY2tzIixzZWFyY2hfdHlwZToic3RvY2tzIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTY0OTE3KSksdmFsdWU6ImZ1bmRzIixzZWFyY2hfdHlwZToiZnVuZHMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1MDUwNzkpKSx2YWx1ZToiZnV0dXJlcyIsc2VhcmNoX3R5cGU6ImZ1dHVyZXMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg5Nzk5NykpLHZhbHVlOiJmb3JleCIsc2VhcmNoX3R5cGU6ImZvcmV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oMzg0NTk3KSksdmFsdWU6ImNmZCIsc2VhcmNoX3R5cGU6ImNmZCJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDY1NTIzNSkpLHZhbHVlOiJiaXRjb2luLGNyeXB0byIsc2VhcmNoX3R5cGU6ImNyeXB0byJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDkyNzQxMSkpLHZhbHVlOiJpbmRleCIsc2VhcmNoX3R5cGU6ImluZGV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNzY1NDQwKSksdmFsdWU6ImJvbmQiLHNlYXJjaF90eXBlOiJib25kIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTQ4MzIyKSksdmFsdWU6ImVjb25vbWljIixzZWFyY2hfdHlwZToiZWNvbm9taWMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg3OTYwMCkpLHZhbHVlOiJvcHRpb25zIixzZWFyY2hfdHlwZToib3B0aW9ucyJ9XX0sNjA2MTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7QXV0aFRva2VuOigpPT5vfSk7dmFyIHM9XygyMjEwNjEpLGk9Xyg5NDgzODApLG49XygzODQwMTcpO2NvbnN0IGE9KDAscy5nZXRMb2dnZXIpKCJDaGFydEFwaS5BdXRoVG9rZW4iLHtjb2xvcjoiIzE3MyJ9KTt2YXIgcjshZnVuY3Rpb24oZSl7ZVtlLkV4cGlyYXRpb25SZXNlcnZlPTNlNV09IkV4cGlyYXRpb25SZXNlcnZlIixlW2UuTWF4UmV0cmllcz0zXT0iTWF4UmV0cmllcyIsZVtlLlJldHJ5RGVsYXlNdWx0aXBsaWVyPTFlM109IlJldHJ5RGVsYXlNdWx0aXBsaWVyIixlW2UuRmFsbGJhY2tFeHBpcmF0aW9uPTE0NGU1XT0iRmFsbGJhY2tFeHBpcmF0aW9uIixlW2UuTWluRXhwaXJhdGlvbj0zZTVdPSJNaW5FeHBpcmF0aW9uIn0ocnx8KHI9e30pKTtjbGFzcyBve2NvbnN0cnVjdG9yKCl7dGhpcy5pbnZhbGlkYXRlZD1uZXcgaS5EZWxlZ2F0ZSx0aGlzLl90aWQ9MCx0aGlzLl9vbkdvaW5nQXV0aFRva2VuUmVxdWVzdD1udWxsLHRoaXMuX29uT25saW5lPSgpPT57YS5sb2dJbmZvKCJPbmxpbmUsIG5ldyB0b2tlbiB3aWxsIGJlIGZldGNoZWQgaWYgbmVlZGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpfSx0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2U9KCk9PnsidmlzaWJsZSI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJihhLmxvZ0luZm8oIlBhZ2UgdmlzaWJsZSwgbmV3IHRva2VuIHNob3VsZCBiZSBmZXRjaGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpKX0sd2luZG93LmxvZ2luU3RhdGVDaGFuZ2V8fCh3aW5kb3cubG9naW5TdGF0ZUNoYW5nZT1uZXcgaS5EZWxlZ2F0ZSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMsKGU9PntlfHwodGhpcy5fc2V0KHdpbmRvdy51c2VyLmF1dGhfdG9rZW4pLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpKX0pKSx0aGlzLl9zZXQod2luZG93LnVzZXIuYXV0aF90b2tlbiksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5fb25PbmxpbmUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMuX29uVmlzaWJpbGl0eUNoYW5nZSl9ZGVzdHJveSgpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLHRoaXMuX29uT25saW5lKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2UpfWdldChlKXtyZXR1cm4gd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ/IWUmJnRoaXMuY3VycmVudFRva2VuSXNWYWxpZCgpPyhhLmxvZ0luZm8oYFVzaW5nIGNhY2hlZCB0b2tlbiAke3RoaXMuX2NhY2hlLnRva2VufWApLFByb21pc2UucmVzb2x2ZSh0aGlzLl9jYWNoZS50b2tlbikpOndpbmRvdy5uYXZpZ2F0b3Iub25MaW5lP3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0fHw9dGhpcy5fZmV0Y2goQm9vbGVhbihlKSwwKS50aGVuKChlPT57CmlmKCF3aW5kb3cuaXNfYXV0aGVudGljYXRlZCl0aHJvdyBuZXcgRXJyb3IoIlVzZXIgbG9nZ2VkIG91dCB3aGlsZSB0aGUgcmVxdWVzdCB3YXMgaW4gZmxpZ2h0Iik7cmV0dXJuIHRoaXMuX3NldChlKSxlfSkpLmNhdGNoKChlPT4oYS5sb2dFcnJvcihgRXJyb3IgZmV0Y2hpbmcgbmV3IHRva2VuOiAke2UmJmUubWVzc2FnZX1gKSwiIikpKS5maW5hbGx5KCgoKT0+e3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0PW51bGx9KSk6KGEubG9nV2FybigiT2ZmbGluZSwgY2Fubm90IGZldGNoIG5ldyB0b2tlbiwgdXNpbmcgY2FjaGVkIHRva2VuIiksUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2NhY2hlLnRva2VuKSk6UHJvbWlzZS5yZXNvbHZlKCIiKX1yZXNldCgpe3RoaXMuX3NldCh2b2lkIDApLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpfWN1cnJlbnRUb2tlbklzVmFsaWQoKXtyZXR1cm4hd2luZG93LmlzX2F1dGhlbnRpY2F0ZWR8fCEhdGhpcy5fY2FjaGUmJihwZXJmb3JtYW5jZS5ub3coKTx0aGlzLl9jYWNoZS5tb25vVmFsaWRUaHJ1JiZEYXRlLm5vdygpPHRoaXMuX2NhY2hlLndhbGxWYWxpZFRocnUpfV9zZXQoZSl7aWYod2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJnZvaWQgMCE9PWUpe2NvbnN0IHQ9ZnVuY3Rpb24oZSl7aWYoIiI9PT1lKXJldHVybiAxNDRlNTt0cnl7Y29uc3QgdD1KU09OLnBhcnNlKGF0b2IoZS5zcGxpdCgiLiIpWzFdLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKSksXz0xZTMqKHQuZXhwLXQuaWF0KTtpZighaXNGaW5pdGUoXykpdGhyb3cgbmV3IEVycm9yKCJpbnZhbGlkIGV4cGlyYXRpb24iKTtyZXR1cm4gTWF0aC5tYXgoXy0zZTUsM2U1KX1jYXRjaCh0KXtyZXR1cm4gYS5sb2dFcnJvcihgJHtlfSBpcyBpbnZhbGlkOiAke3QubWVzc2FnZX1gKSwxNDRlNX19KGUpO3RoaXMuX2NhY2hlPXt0b2tlbjplLG1vbm9WYWxpZFRocnU6cGVyZm9ybWFuY2Uubm93KCkrdCx3YWxsVmFsaWRUaHJ1OkRhdGUubm93KCkrdH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksdGhpcy5fdGlkPXNldFRpbWVvdXQoKCgpPT57d2luZG93Lm5hdmlnYXRvci5vbkxpbmU/dGhpcy5yZXNldCgpOmEubG9nSW5mbygiT2ZmbGluZSwgY2FjaGUgd2lsbCBub3QgYmUgaW52YWxpZGF0ZWQiKX0pLHQpLGEubG9nSW5mbyhgQ2FjaGVkIGZvciAke3R9IG1zOiAke2V9YCl9ZWxzZSB0aGlzLl9jYWNoZT17dG9rZW46IiIsbW9ub1ZhbGlkVGhydTotMS8wLHdhbGxWYWxpZFRocnU6LTEvMH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksYS5sb2dJbmZvKCJDYWNoZSBkcm9wcGVkIil9X2ZldGNoKGUsdCl7cmV0dXJuIGEubG9nTm9ybWFsKGBGZXRjaGluZyBhIG5ldyB0b2tlbiwgZ3JhYlNlc3Npb249JHtlfWApLCgwLG4uZmV0Y2gpKCIvcXVvdGVfdG9rZW4vIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0sYm9keTplPyJncmFiU2Vzc2lvbj10cnVlIjoiIn0pLnRoZW4oKGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYFJlc3BvbnNlIHN0YXR1cyBpcyBub3Qgb2s6ICR7ZS5zdGF0dXN9YCk7cmV0dXJuIGUuanNvbigpLnRoZW4oU3RyaW5nKX0pLChfPT57aWYodD49Myl0aHJvdyBfO3JldHVybiBhLmxvZ1dhcm4oIlJlcXVlc3QgZmFpbGVkLCB3aWxsIHJldHJ5IiksZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0PT5zZXRUaW1lb3V0KHQsMWUzKmUpKSl9KHQpLnRoZW4oKCgpPT50aGlzLl9mZXRjaChlLHQrMSkpKX0pKX1hc3luYyBfdHJ5VG9VcGRhdGVUb2tlbigpe3RoaXMuX2NhY2hlLnRva2VuIT09YXdhaXQgdGhpcy5nZXQoKSYmdGhpcy5pbnZhbGlkYXRlZC5maXJlKCl9fX0sOTMwMDQ1KGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse0pTT05EYXRhSGFuZGxlcjooKT0+YX0pO3ZhciBzPV8oNzgzMzQwKTtmdW5jdGlvbiBpKGUpe3JldHVybntpbmRleDplLmksdmFsdWU6ZS52fX1mdW5jdGlvbiBuKGUpe2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKGUpKXtjb25zdCBfPWVbdF07Xy50JiYoXy50dXJuYXJvdW5kPWVbdF0udCksInMiaW4gZVt0XSYmZVt0XS5zJiYhXy5zZXJpZXMmJihfLnNlcmllcz1lW3RdLnMubWFwKGkpKSwic3QiaW4gZVt0XSYmZVt0XS5zdCYmIV8uc2VyaWVzJiYoXy5zZXJpZXM9ZVt0XS5zdC5tYXAoaSkpfX1jbGFzcyBhe3NldF9icm9rZXIoZSl7cmV0dXJuW2VdfXNldF9kYXRhX3F1YWxpdHkoKXtyZXR1cm5bImxvdyJdfXF1b3RlX2NyZWF0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1xdW90ZV9kZWxldGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cXVvdGVfc2V0X2ZpZWxkcyhlLHQpe3JldHVybltlXS5jb25jYXQodCl9cXVvdGVfYWRkX3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX3JlbW92ZV9zeW1ib2xzKGUsdCl7cmV0dXJuW2VdLmNvbmNhdCh0KX1xdW90ZV9mYXN0X3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX2hpYmVybmF0ZV9hbGwoZSl7cmV0dXJuW2VdfWRlcHRoX2NyZWF0ZV9zZXNzaW9uKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWRlcHRoX2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc3ltYm9sKGUsdCl7cmV0dXJuW2UsdF19ZGVwdGhfY2xlYXJfc3ltYm9sKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc2NhbGUoZSx0KXtyZXR1cm5bZSx0XX1jaGFydF9jcmVhdGVfc2Vzc2lvbihlLHQpe3JldHVybltlLHQ/ImRpc2FibGVfc3RhdGlzdGljcyI6IiJdfWNoYXJ0X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1zZXRfYXV0aF90b2tlbihlKXtyZXR1cm5bZV19c2V0X2xvY2FsZShlLHQpe3JldHVybltlLHRdfXN3aXRjaF90aW1lem9uZShlLHQpe3JldHVybltlLHRdfXJlc29sdmVfc3ltYm9sKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWNyZWF0ZV9zZXJpZXMoZSx0LF8scyxpLG4sYSl7cmV0dXJuW2UsdCxfPV98fCIiLHMsaSxuLGFdfXJlbW92ZV9zZXJpZXMoZSx0KXtyZXR1cm5bZSx0XX1tb2RpZnlfc2VyaWVzKGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpLG5dfQpyZXF1ZXN0X21vcmVfZGF0YShlLHQsXyl7cmV0dXJuW2UsdCxfXX1zZXRfZnV0dXJlX3RpY2ttYXJrc19tb2RlKGUsdCl7cmV0dXJuW2UsdF19cmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhKGUpe3JldHVybltlXX1jcmVhdGVfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybltlLHQsXz1ffHwiIixzLGldLmNvbmNhdChuKX1jcmVhdGVfY2hpbGRfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybiB0aGlzLmNyZWF0ZV9zdHVkeShlLHQsXyxzLGksbil9cmVtb3ZlX3N0dWR5KGUsdCl7cmV0dXJuW2UsdF19bW9kaWZ5X3N0dWR5KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfW5vdGlmeV9zdHVkeShlLHQsXyxzKXtyZXR1cm5bZSx0LF89X3x8IiIsc119Y3JlYXRlX3BvaW50c2V0KGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpXS5jb25jYXQobil9bW9kaWZ5X3BvaW50c2V0KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfXJlbW92ZV9wb2ludHNldChlLHQpe3JldHVybltlLHRdfXJlcXVlc3RfbW9yZV90aWNrbWFya3MoZSx0LF8pe3JldHVybltlLHQsX119Z2V0X2ZpcnN0X2Jhcl90aW1lKGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9jcmVhdGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cmVwbGF5X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1yZXBsYXlfcmVzZXQoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X3N0YXJ0KGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9zdG9wKGUsdCl7cmV0dXJuW2UsdF19cmVwbGF5X3N0ZXAoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2FkZF9zZXJpZXMoZSx0LF8scyl7cmV0dXJuW2UsdCxfLHNdfXJlcGxheV9yZW1vdmVfc2VyaWVzKGUsdCxfLHMpe3JldHVybltlLHQsXyxzXX1yZXBsYXlfc2V0X3Jlc29sdXRpb24oZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2dldF9kZXB0aChlLHQsXyxzKXtyZXR1cm5bZSx0LF8sc119Y29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpe2NvbnN0IHQ9ZS5tYXJrcy5tYXAoKGU9Pih7c3BhbjplWzBdLHRpbWU6ZVsxXSxpbmRleDplWzJdfSkpKSxfPXZvaWQgMD09PWUuaW5kZXhfZGlmZj9bXTplLmluZGV4X2RpZmYubWFwKChlPT4oe29sZDplWzBdLG5ldzplWzFdfSkpKTtyZXR1cm57Li4uZSxtYXJrczp0LGluZGV4X2RpZmY6XyxjbGVhcjowPT09ZS5jaGFuZ2VzLmxlbmd0aCYmMD09PV8ubGVuZ3RoJiYwPT09dC5sZW5ndGh9fWdldERhdGFVcGRhdGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVDaGFuZ2VzZXQoZSl7cmV0dXJuIGUucGFyYW1zWzFdfXByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhlLHQsXyl7Zm9yKGNvbnN0W2ksbl1vZiBPYmplY3QuZW50cmllcyh0KSl7Y29uc3QgdD0icGxvdHMiaW4gbj9uLnBsb3RzOm4uc2VyaWVzLGE9e2N1c3RvbUlkOmksdHVybmFyb3VuZDpuLnR1cm5hcm91bmQscGxvdHM6dH07Im5zImluIG4mJm4ubnMmJihhLm5vbnNlcmllcz1uLm5zKSwibGJzImluIG4mJm4ubGJzJiYoYS5sYXN0QmFyPXtjbG9zZVRpbWU6bi5sYnMuYmFyX2Nsb3NlX3RpbWV9KTtmb3IoY29uc3QgZSBvZiBhLnBsb3RzKWZvcihjb25zdFt0LF9db2YgT2JqZWN0LmVudHJpZXMoZS52YWx1ZSkpXyYmTWF0aC5hYnMoXyk+PTFlMTAwJiYoZS52YWx1ZVsrdF09dm9pZCAwKTtfKGUsaSx7bWV0aG9kOnMuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5EYXRhVXBkYXRlLHBhcmFtczphfSl9fXVucGFjayhlKXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dC5tJiZ0LnAmJih0Lm1ldGhvZD10Lm0sdC5wYXJhbXM9dC5wLHQudGltZT10LnQpO2NvbnN0IF89dC5wYXJhbXNbMV07c3dpdGNoKHQubWV0aG9kKXtjYXNlInFzZCI6dC5tZXRob2Q9InF1b3RlX3N5bWJvbF9kYXRhIixfLnN5bWJvbG5hbWU9Xy5uLF8uc3RhdHVzPV8ucyxfLnZhbHVlcz1fLnYsXy52YWx1ZXMuY2hhbmdlPV8udi5jaCxfLnZhbHVlcy5sYXN0X3ByaWNlPV8udi5scCxfLnZhbHVlcy5jaGFuZ2VfcGVyY2VudD1fLnYuY2hwLGRlbGV0ZSBfLm4sZGVsZXRlIF8ucyxkZWxldGUgXy52LGRlbGV0ZSBfLnZhbHVlcy5jaCxkZWxldGUgXy52YWx1ZXMubHAsZGVsZXRlIF8udmFsdWVzLmNocDticmVhaztjYXNlImR1Ijp0Lm1ldGhvZD0iZGF0YV91cGRhdGUiLG4oXyk7YnJlYWs7Y2FzZSJjbGVhcl9kYXRhIjpmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhfKSlfW2VdLnR1cm5hcm91bmQ9X1tlXS50O2JyZWFrO2Nhc2UidGltZXNjYWxlX3VwZGF0ZSI6bihfKX1yZXR1cm4gdH1wcmVwYXJlRW5jb2RlTWVzc2FnZShlLHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7bTplLHA6dH0pfXJlcXVlc3RfZGF0YV9wcm9ibGVtcygpe3JldHVybltdfX19LDQ2MzQ0NyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtIYW5kbGVySW5mbzooKT0+c30pO2NsYXNzIHN7Y29uc3RydWN0b3IoZSx0LF8pe3RoaXMuaGFuZGxlcj1lLHRoaXMuY3VzdG9tSWQ9dCx0aGlzLnNpbmdsZVNob3Q9X319fSw3ODMzNDAoZSx0LF8peyJ1c2Ugc3RyaWN0Ijt2YXIgcyxpLG47Xy5kKHQse1dlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9PmksV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9Pm4sV2ViY2hhcnRSZXNwb25zZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuUmVxdWVzdERhdGFQcm9ibGVtcz0icmVxdWVzdF9kYXRhX3Byb2JsZW1zIixlLlByb3RvY29sRXJyb3I9InByb3RvY29sX2Vycm9yIixlLlByb3RvY29sU3dpdGNoZWQ9InByb3RvY29sX3N3aXRjaGVkIixlLkNyaXRpY2FsRXJyb3I9ImNyaXRpY2FsX2Vycm9yIn0oc3x8KHM9e30pKSxmdW5jdGlvbihlKXtlLlN0dWRpZXNNZXRhZGF0YT0ic3R1ZGllc19tZXRhZGF0YSIsZS5UaW1lU2NhbGVVcGRhdGU9InRpbWVzY2FsZV91cGRhdGUiLGUuVGlja01hcmtVcGRhdGU9InRpY2ttYXJrX3VwZGF0ZSIsZS5EVT0iZHUiLGUuRGF0YVVwZGF0ZT0iZGF0YV91cGRhdGUiLAplLkluZGV4VXBkYXRlPSJpbmRleF91cGRhdGUiLGUuVGltZVNjYWxlQ29tcGxldGVkPSJ0aW1lc2NhbGVfY29tcGxldGVkIixlLlFTRD0icXNkIixlLlF1b3RlTGlzdEZpZWxkPSJxdW90ZV9saXN0X2ZpZWxkcyIsZS5RdW90ZVN5bWJvbERhdGE9InF1b3RlX3N5bWJvbF9kYXRhIixlLlF1b3RlQ29tcGxldGVkPSJxdW90ZV9jb21wbGV0ZWQiLGUuRGVwdGhTeW1ib2xFcnJvcj0iZGVwdGhfc3ltYm9sX2Vycm9yIixlLkRlcHRoU3ltYm9sU3VjY2Vzcz0iZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiLGUuRGVwdGhEYXRhPSJkZCIsZS5EZXB0aERhdGFVcGRhdGU9ImRwdSIsZS5EZXB0aEJhckxhc3RWYWx1ZT0iZGVwdGhfYmFyX2xhc3RfdmFsdWUiLGUuQ2xlYXJEYXRhPSJjbGVhcl9kYXRhIixlLlNlcmllc1RpbWVGcmFtZT0ic2VyaWVzX3RpbWVmcmFtZSIsZS5TeW1ib2xSZXNvbHZlZD0ic3ltYm9sX3Jlc29sdmVkIixlLlNlcmllc0Vycm9yPSJzZXJpZXNfZXJyb3IiLGUuU2VyaWVzQ29tcGxldGVkPSJzZXJpZXNfY29tcGxldGVkIixlLlN0dWR5TG9hZGluZz0ic3R1ZHlfbG9hZGluZyJ9KGl8fChpPXt9KSksZnVuY3Rpb24oZSl7ZS5SZXBsYXlFcnJvcj0icmVwbGF5X2Vycm9yIixlLlJlcGxheVBvaW50PSJyZXBsYXlfcG9pbnQiLGUuUmVwbGF5T2s9InJlcGxheV9vayIsZS5SZXBsYXlSZXNvbHV0aW9ucz0icmVwbGF5X3Jlc29sdXRpb25zIixlLlJlcGxheURhdGFFbmQ9InJlcGxheV9kYXRhX2VuZCIsZS5SZXBsYXlJbnN0YW5jZUlkPSJyZXBsYXlfaW5zdGFuY2VfaWQiLGUuUmVwbGF5RGVwdGg9InJlcGxheV9kZXB0aCJ9KG58fChuPXt9KSl9LDUyMTMzMyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtnZXREZWZhdWx0UmVzb2x1dGlvbnM6KCk9Pm59KTt2YXIgcz1fKDkzMDIzMSksaT1fKDYxOTk5Mik7ZnVuY3Rpb24gbigpe2NvbnN0IGU9WyIxIiwiMyIsIjUiLCIxNSIsIjMwIiwiNDUiLCI2MCIsIjEyMCIsIjE4MCIsIjI0MCIsIjFEIiwiMVciLCIxTSIsIjNNIiwiNk0iLCIxMk0iLCIxUiIsIjEwUiIsIjEwMFIiLCIxMDAwUiJdO2lmKCEoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSl7bGV0IHQ9WyIxUyIsIjVTIiwiMTBTIiwiMTVTIiwiMzBTIiwiNDVzIl07cmV0dXJuKDAsaS5pc1RpY2tzRW5hYmxlZCkoKSYmKHQ9WyIxVCIsIjEwVCIsIjEwMFQiLCIxMDAwVCJdLmNvbmNhdCh0KSksdC5jb25jYXQoZSl9cmV0dXJuIGV9fSwyMTc1MjcoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7dHlwZXM6KCk9PnN9KTtjb25zdCBzPXtFQ09OT01JQzoiZWNvbm9taWMiLFFVQU5ETDoicXVhbmRsIn19LDEyNzcxMShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY21lIjp7IklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjk5OTk5fX0sImJvdmVzcGEiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fSwicWVjb21xYSI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19LCJzYW50YW5kZXJjb21hciI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19fScpfSw1MDI1ODcoZSl7InVzZSBzdHJpY3QiCjtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJmcmVlIjp7IkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6MX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MX0sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjJ9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjF9LCJISVNUT1JJQ0FMX0JBUlMiOnsibGltaXQiOjV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6MX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo1MCwibGltaXQiOjMsImNvbXBsZXhfbGltaXQiOjAsInByaW1pdGl2ZV9saW1pdCI6M30sIlNDUkVFTkVSX0lOVEVSVkFMUyI6eyJpbnRlcnZhbCI6WyIxRCIsIjFXIiwiMU0iXX0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6MX0sIlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyI6eyJsaW1pdCI6MX0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjJ9LCJJREVBX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIlR3aXR0ZXIiLCJZb3V0dWJlIl19LCJNVUxUSUNPTE9SX0ZMQUdHRURfU1lNQk9MUyI6eyJsaW1pdCI6MX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjozMH0sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6MjB9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjoxfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6MjAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MjB9fSwicHJvIjp7IkRSQVdJTkdTIjp7fSwiQkFDS1RFU1RJTkdfQ0hBUlRfRVhQQU5EIjp7fSwiQkFDS1RFU1RJTkdfRVhURU5ERURfTUVUUklDUyI6e30sIkJBQ0tURVNUSU5HX0VYUE9SVF9YTFNYIjp7fSwiQkFDS1RFU1RJTkdfRVhQT1JUX0NTViI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUEVSU09OQUxfU1VQUE9SVCI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6NX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6Mn0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6MiwicHJpbWl0aXZlX2xpbWl0IjoyfSwiQ1VTVE9NX0lOVEVSVkFMUyI6e30sIk1VTFRJUExFX1dBVENITElTVFMiOnt9LCJJTVBPUlRfV0FUQ0hMSVNUUyI6e30sIkVYUE9SVF9XQVRDSExJU1RTIjp7fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6NX0sIkZVTkRBTUVOVEFMU19GT1JFQ0FTVCI6e30sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6NH0sIlRWX1BST1NUVURJRVMiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtY2hhcnRwYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoxMH0sIlRWX1ZPTFVNRUJZUFJJQ0UiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtdm9sdW1lYnlwcmljZSJdfSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjF9LCJUSUNLX0JZX1RJQ0tfUFVTSF9EQVRBIjp7fSwiU0VSVkVSX1NJREVfQUxFUlRTIjp7Im92ZXJhbGxfbGltaXQiOjIwMDAsImxpbWl0IjoyMCwiY29tcGxleF9saW1pdCI6MjAsInByaW1pdGl2ZV9saW1pdCI6MjB9LCJTQ1JFRU5FUl9BVVRPX1JFRlJFU0giOnt9LCJTQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIIjp7fSwiU0NSRUVORVJfTkVXX0VYUE9SVF9DU1ZfREFUQSI6e30sIlNDUkVFTkVSX05FV19TSE9XX1JFU1RSSUNURURfREFUQSI6e30sIlNIT1dfQk9ORFNfUkVTVFJJQ1RFRF9EQVRBIjp7fSwiUE9SVEZPTElPX0RBVEFfTElNSVQiOnt9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjozfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6NTAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NTB9LCJTQ1JFRU5FUl9JTlRFUlZBTFMiOnsiaW50ZXJ2YWwiOlsiMW0iLCI1bSIsIjE1bSIsIjMwbSIsIjFoIiwiMmgiLCI0aCIsIjFEIiwiMVciLCIxTSJdfSwiTk9fU1BPTlNPUkVEX0FEUyI6eyJkaXNhYmxlX29uX2xpdGVfcGxhbiI6ImV4Y2x1ZGVfbW9iaWxlIn0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6OTk5OTl9LCJTSU1VTFRBTkVPVVNfQ09OTkVDVElPTlMiOnsibGltaXQiOjF9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoxMH0sIklEQ19BVkFJTEFCTEVfREVMQVkiOnt9LCJTVEFUVVMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkJBUl9SRVBMQVlfSU5UUkFEQVkiOnsibGltaXQiOjF9LCJNVUxUSUZMQUdHRURfU1lNQk9MU19MSVNUUyI6e30sIlNIT1dTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJBTEVSVFNfV0VCSE9PSyI6e30sIkFMRVJUU19PTl9FQVJOSU5HUyI6e30sIkFMRVJUU19PTl9GVU5EQU1FTlRBTF9NRVRSSUNTIjp7fSwiREVFUF9GVU5EQU1FTlRBTFNfSElTVE9SWSI6e30sIlBVQkxJU0hfUFJPVEVDVEVEX1NDUklQVFMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIklERUFfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiVHdpdHRlciIsIllvdXR1YmUiXX0sIkVYVEVOREVEX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIkZhY2Vib29rIiwiSW5zdGFncmFtIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJNVUxUSV9NT05JVE9SIjp7fSwiTVVMVElDT0xPUl9GTEFHR0VEX1NZTUJPTFMiOnsibGltaXQiOjd9LCJJTlRSQURBWV9FWENIQU5HRSI6e30sIlZPTFVNRV9QUk9GSUxFIjp7fSwiU1RSRUFNU19BQ0NFU1MiOnsiZm9sbG93ZXJzIjoxMH0sIlNNU18yRkFfVkVSSUZJQ0FUSU9OIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTT0NJQUxfQUNUSVZJVFkiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjoxMDAwfSwiRklFTERTX1BFUk1JU1NJT05TIjp7Iml0ZW1zIjpbInJlZmJvbmRzIl19LCJDVVNUT01fUkFOR0VfQkFSUyI6e30sIkZBU1RFU1RfREFUQV9GTE9XIjp7fSwiU0VTU0lPTl9WT0xVTUVfUFJPRklMRSI6e30sIlNIT1dfRVRGX0hPTERJTkdTX0RBVEEiOnt9fSwicHJvX3JlYWx0aW1lIjp7ImV4dGVuZHMiOiJwcm8iLCJDSEFSVF9TVE9SQUdFIjp7ImxpbWl0IjoxMH0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6NH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6NCwicHJpbWl0aXZlX2xpbWl0Ijo0fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjd9LCJUVl9QUk9TVFVESUVTIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LXByb3N0dWRpZXMiLCJ0di1jaGFydHBhdHRlcm5zIl19LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6OX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6MTAwLCJjb21wbGV4X2xpbWl0IjoxMDAsInByaW1pdGl2ZV9saW1pdCI6MTAwfSwiQUxFUlRTX01VTFRJQ09ORElUSU9OUyI6eyJjb25kaXRpb25fbGltaXQiOjV9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNBTl9FRElUX1BVQkxJQ19DSEFUUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MjB9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkNVU1RPTV9GT1JNVUxBUyI6e30sIklOVFJBREFZX0VYT1RJQ19DSEFSVFMiOnt9LCJLQUdJX1JFTktPIjp7fSwiSU5UUkFEQVlfU1BSRUFEIjp7fSwiQ1VTVE9NX0NIQVRTIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6NH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NzV9fSwicHJvX3ByZW1pdW0iOnsiZXh0ZW5kcyI6InByb19yZWFsdGltZSIsIkJBUl9ERVRBTElaQVRJT04iOnt9LCJTQ1JJUFRfRVhFQ1VUSU9OX09OX0hJU1RPUllfQkFSUyI6e30sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjk5OTk5fSwiTVVMVElQTEVfQ0hBUlRTIjp7ImxpbWl0Ijo4fSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0Ijo2LCJwcmltaXRpdmVfbGltaXQiOjZ9LCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTF9HUkFQSFNfTEFSR0VfVElNRV9SQU5HRSI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo5OTk5OSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1BBVFRFUk5TIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LWNoYXJ0cGF0dGVybnMiLCJ0di1jaGFydF9wYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoyMH0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0IjoyNH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6NDAwLCJjb21wbGV4X2xpbWl0Ijo0MDAsInByaW1pdGl2ZV9saW1pdCI6NDAwLCJ3YXRjaGxpc3RfbGltaXQiOjIsIm92ZXJhbGxfd2F0Y2hsaXN0X2xpbWl0Ijo1fSwiU0lNVUxUQU5FT1VTX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6NTB9LCJJREVBX1NJR05BVFVSRSI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUFJPRklMRV9XRUJTSVRFX0ZJRUxEIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo0fSwiQkFSX1JFUExBWV8xUyI6e30sIkFMRVJUU19OT19FWFBJUkFUSU9OIjp7fSwiUFVCTElTSF9JTlZJVEVfT05MWV9TQ1JJUFRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkRFRVBfSElTVE9SWV9CQUNLVEVTVCI6e30sIkFMRVJUU19PTl9TRUNPTkRTIjp7fSwiUEVSTUFORU5UX1NUUkVBTV9SRUNPUkRTIjp7fSwiRVhURU5ERURfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiRmFjZWJvb2siLCJJbnN0YWdyYW0iLCJXZWJzaXRlIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTRUNPTkRTX0lOVEVSVkFMUyI6e30sIlRQT19QRVJJT0RJQyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di12b2x1bWVieXByaWNlIl19LCJUUE9fQ0hBUlRfU1RZTEUiOnt9LCJWT0xVTUVfQ0FORExFUyI6e30sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6NjB9LCJWT0xVTUVfRk9PVFBSSU5UIjp7fSwiUElORV9TQ1JFRU5FUiI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjV9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjEwMH0sIlNPQ0lBTF9UUlVTVEVEX1VTRVIiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkZPTExPV0VSU19PTkxZX01JTkRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9fSwicHJvX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX3ByZW1pdW0iLCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjozMH0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6Mjl9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjEwfSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0IjoxMiwicHJpbWl0aXZlX2xpbWl0IjoxMn0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MjV9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjYwMCwiY29tcGxleF9saW1pdCI6NjAwLCJwcmltaXRpdmVfbGltaXQiOjYwMCwid2F0Y2hsaXN0X2xpbWl0IjoxMCwib3ZlcmFsbF93YXRjaGxpc3RfbGltaXQiOjIwfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6ODB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo2fSwiQkFSX1JFUExBWV8xUyI6e30sIkJBUl9SRVBMQVlfMVQiOnt9LCJFWFBPUlRfRklOQU5DSUFMU19EQVRBIjp7fSwiVElDS19JTlRFUlZBTFMiOnt9LCJGSVJTVF9QUklPUklUWV9TVVBQT1JUIjp7fSwiQlVZX1BST19EQVRBIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6Nn0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MTI1fX0sInByb19wcmVtaXVtX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX2V4cGVydCIsIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjUwfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0Ijo0OX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MTZ9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjk5OTk5LCJwcmltaXRpdmVfbGltaXQiOjI1fSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0Ijo0MH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo0MDAwLCJsaW1pdCI6MTAwMCwiY29tcGxleF9saW1pdCI6MTAwMCwicHJpbWl0aXZlX2xpbWl0IjoxMDAwLCJ3YXRjaGxpc3RfbGltaXQiOjE1LCJvdmVyYWxsX3dhdGNobGlzdF9saW1pdCI6MzB9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyMDB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0IjoxMH0sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjd9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjE1MH19fScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.94947.78350a9903056b993c26.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.723Z","timestamp":1785154590723,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.94947.78350a9903056b993c26.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\ncontent-length: 112\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b72-70\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:22 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:20:00\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fe4a5a46939b3b7ed4ef2f0674a513a3\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":112,"size_decoded":911,"mime_type":"application/javascript; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"ca07c1961f9b98a2b190f872aebba5c1","sha1":"9e765a84de461cb72d1dda1a992eb168a347762a","sha256":"a73e581e82580c634a0afa42bd7a8ada31e093c3eb60aa347c906aae841b3aeb","sha512":"a67762b341ac2d78faa332f26b523a96315b5af223ab2412020c2f5ddb5da9672e687275ff53b962f79998a9e3156f990109016fd3d54e511ff855544a441857","ssdeep":"","tlshash":"1cb092222060fc24386b140875a10eb268b822e5282684eebb2518442026a680900f8c","first_seen":"2026-05-05T10:36:04.862254Z","last_seen":"2026-07-27T14:23:37.840068Z","times_seen":815,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NDk0N10sezM5NDk0NyhlKXtlLmV4cG9ydHM9WyJNb3JlIl19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"maps.googleapis.com/maps/api/mapsjs/gen_204?csp_test=true","fqdn":"maps.googleapis.com","domain":"maps.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.113.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.794Z","timestamp":1785154589794,"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":"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 /maps/api/mapsjs/gen_204?csp_test=true HTTP/1.1\r\nHost: maps.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\nOrigin: https://persimmontrades.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.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/3 200 \r\ncontent-type: application/json; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: scaffolding on HTTPServer2\r\ncontent-length: 23\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\naccess-control-allow-origin: https://persimmontrades.com\r\naccess-control-expose-headers: vary,vary,vary,content-encoding,date,server,content-length\r\nserver-timing: gfet4t7; dur=10\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":3,"size_decoded":556,"mime_type":"application/json; charset=UTF-8","magic":"JSON text data","md5":"8a80554c91d9fca8acb82f023de02f11","sha1":"5f36b2ea290645ee34d943220a14b54ee5ea5be5","sha256":"ca3d163bab055381827226140568f3bef7eaac187cebd76878e0b63e9e442356","sha512":"ca4b6defb8adcc010050bc8b1bb8f8092c4928b8a0fba32146abcfb256e4d91672f88ca2cdf6210e754e5b8ac5e23fb023806ccd749ac8b701f79a691f03c87a","ssdeep":"","tlshash":"c7200000000000000000000c00000000000000000c0000000000000000000000000000","first_seen":"2023-03-07T01:10:31Z","last_seen":"2026-07-27T14:17:31.558584Z","times_seen":427132,"resource_available":true,"data":"e30K"}},"time_used":41,"timings":{"blocked":0,"dns":0,"connect":21,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3905.682e89ef2dc4c70423c6.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.182Z","timestamp":1785154590182,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3905.682e89ef2dc4c70423c6.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-23c4\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b17d62fc4623511e2f587ee03ed0be32\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9156,"size_decoded":2695,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9156), with no line terminators","md5":"585b0debea11681772c2af93fac32f6f","sha1":"239ef62778933c4ffbb2003ad1da3ab7f1c412e6","sha256":"7a6f9ce2286878bf4b28af0ff0922e443fe7fd6f6289968222d35cacb1fd8f85","sha512":"f37cf7f51a2fb42cf0f1822ddea62c13673cc6ac0dd4e9ec40de3f0387a5fc680d4eeec0d9d2b81cbc71136e743b6e8692b20d29e16cd72a6c83c741eea6239e","ssdeep":"192:aB56ZYifpWjOHpRSvoAyGGoCARk3NPmHHZ+DG4x8:ayXsh","tlshash":"6612cf5bf5e30baa2f63e1255a2d7b48516773062887a5f5ee42f3e045caec216036cc","first_seen":"2026-03-24T10:38:42.78469Z","last_seen":"2026-07-27T14:18:36.423283Z","times_seen":6617,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtd01EZjojMDAwMDstLV8xLXdNRGY6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tXzItd01EZjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8zLXdNRGY6IzAwMDB9W2RhdGEtdGhlbWU9ZGFya117LS1fMC13TURmOiMwMDAwOy0tXzEtd01EZjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1fMi13TURmOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzMtd01EZjojMDAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxM3B4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6dmFyKC0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dCk7ZGlzcGxheTppbmxpbmUtZmxleDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtLWhpZGRlbi1FSkJEOTZ6WHtvcGFjaXR5OjB9LmNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYe21hcmdpbjo0cHggMH0uY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elh7bWFyZ2luOjhweCAwfS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elh7bWFyZ2luOjAgNHB4fS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WHttYXJnaW46MCA4cHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvd30uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zLUVKQkQ5NnpYLC5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXItRUpCRDk2elh7Ym9yZGVyLWVuZC1lbmQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoycHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1lbmQ6MXB4fS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MnB4O2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgsLmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjFweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elh7cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXIsLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItbGVmdDo2cHggc29saWQ7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tXzMtd01EZik7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tXzMtd01EZik7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTZweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6NHB4O2JvdHRvbToxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXRvcC13aWR0aDo0cHg7dG9wOjEwMCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDphZnRlcntib3JkZXItYm90dG9tOjZweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8zLXdNRGYpO2JvcmRlci10b3A6NnB4IHNvbGlkO2JvcmRlci10b3AtY29sb3I6dmFyKC0tXzMtd01EZik7bWFyZ2luLXRvcDotNnB4O3RvcDo1MCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LXdpZHRoOjRweDtyaWdodDoxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWxlZnQtd2lkdGg6NHB4O2xlZnQ6MTAwJX0uY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjMxMHB4O3BhZGRpbmc6M3B4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpzdGFydH0uY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5LUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzowfS5jb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZS1FSkJEOTZ6WHttYXgtd2lkdGg6NjQwcHh9LmNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elh7bWF4LXdpZHRoOjIwMHB4fS5jb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZy1FSkJEOTZ6WHtwYWRkaW5nOjB9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDoxIDAgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjEycHg7bWFyZ2luOjNweCAwO3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXItRUpCRDk2elg6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTttYXJnaW4taW5saW5lLWVuZDo4cHg7d2lkdGg6MXB4fS5jb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQtRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjNweCA4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uLUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtoZWlnaHQ6MThweDtwYWRkaW5nOjFweCA2cHg7d2lkdGg6YXV0bzstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WHtoZWlnaHQ6MTVweDtsaW5lLWhlaWdodDoxNHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEzcHh9LmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19idXR0b24tRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX19LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6MH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItaW5saW5lLWVuZDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tXzAtd01EZik7Ym9yZGVyLWlubGluZS1zdGFydDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1fMC13TURmKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YmVmb3Jle2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmUsLmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YmVmb3Jle2JvcmRlci1pbmxpbmUtZW5kOjdweCBzb2xpZDtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItaW5saW5lLXN0YXJ0OjdweCBzb2xpZDtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLV8wLXdNRGYpO2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWlubGluZS1zdGFydDotN3B4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItYm90dG9tLXdpZHRoOjZweDt0b3A6LTZweH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLXRvcC13aWR0aDo2cHg7Ym90dG9tOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YmVmb3JlLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWJvdHRvbTo3cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjdweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpO21hcmdpbi10b3A6LTdweDt0b3A6NTAlfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWlubGluZS1lbmQtd2lkdGg6NnB4O2luc2V0LWlubGluZS1zdGFydDotNnB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjZweDtpbnNldC1pbmxpbmUtZW5kOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvd3tib3gtc2hhZG93OjAgMXB4IDNweCAwICMyYTJjMzk0YTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtcm91bmQtc2hhZG93IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWlubGluZS1lbmQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtZW5kLWNvbG9yOnZhcigtLV8wLXdNRGYpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAtd01EZil9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmFmdGVyLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1jaGFydCAuY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTttYXgtd2lkdGg6MzQycHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLWNoYXJ0IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLW5ld3MgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czo4cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7bWF4LXdpZHRoOjMyMHB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1uZXdzIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87995.911b26181778fecc4b4e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.294Z","timestamp":1785154590294,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/87995.911b26181778fecc4b4e.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-7a23\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7d7224515d7beec995f5d5a61b531f36\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":31267,"size_decoded":10843,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"6a05d8171572287378e38e6964e02fe8","sha1":"63d026c77be2140ec887f9ff6d3f073098c753d7","sha256":"6c8f663aeaed79d462dc53895df9b7870b0e620a0dfe1116cb122d17391b60ed","sha512":"a4076a5db83f1d9f5054f7bcbcbb078c8881c79fcd79ea086d710a4a25568695a0fb17213a40d0b396482e293c7d980d411e5f128a7a040a765286cf92d3595e","ssdeep":"768:72RxBdTMf+AnnZv7+SVxp9QYQ2UYfzvEB7DU0M/Zm8FNpVwLY8jnEM//i7XeBFK8:7SEnnZv7+S9Un78F/VwLY8jnEM//i7XM","tlshash":"97e2a642e342606702f381ed0c354503a339ebd5784649acb6a98defb56cd0cb5bab7d","first_seen":"2026-07-24T18:44:55.949977Z","last_seen":"2026-07-27T14:22:59.58383Z","times_seen":317,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s4Nzk5NV0sezEyNzE1Nyh0KXt0LmV4cG9ydHM9e2ZhZGU6ImZhZGUtTU9kVWlCWUQiLGhpZGRlbjoiaGlkZGVuLU1PZFVpQllEIn19LDQ3MDA5MCh0LGUsaSl7InVzZSBzdHJpY3QiO2kuZChlLHtNaW5pQ2hhcnQ6KCk9Pmp9KTt2YXIgcz1pKDY3ODMxMiksYT1pKDc0MDE2Miksbj1pKDc4MzI1NCkscj1pKDIzMjM2NCksbz1pKDQwMjA0NSksaD1pKDk0ODM4MCksbD1pKDEzODYzOCksYz1pKDYyNDY3OCksZD1pKDgyNjE1NiksbT1pKDIyMTA2MSksdT1pKDI1NDY3MyksXz1pKDUwNTU2KSxwPWkoNDU5OTk0KSxmPWkoNzczMDg4KSxiPWkoMTMxMjk0KSxnPWkoNTkxNzQxKSxTPWkoODAyNTg2KSx2PWkoMTg5ODYzKSx5PWkoMTQ2MDU4KSxDPWkoNjEwNTcxKTtjb25zdCBEPSgwLHMuZGVmYXVsdEhvcnpTY2FsZUJlaGF2aW9yKSgpO2NsYXNzIFQgZXh0ZW5kcyBEe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl9sYXN0SGFzaD0iIn1zaG91bGRSZXNldFRpY2ttYXJrTGFiZWxzKHQpe2NvbnN0IGU9dGhpcy5jYWxjdWxhdGVJdGVtc0hhc2godCksaT1lIT09dGhpcy5fbGFzdEhhc2g7cmV0dXJuIHRoaXMuX2xhc3RIYXNoPWUsaX1jYWxjdWxhdGVJdGVtc0hhc2godCl7cmV0dXJuIHQucmVkdWNlKCgodCxlKT0+dCtlLmluZGV4KSwiIil9fXZhciBQPWkoNTg2MjQ3KSx3PWkoMTI3MTU3KTtjb25zdCBrPSgwLG0uZ2V0TG9nZ2VyKSgiQ2hhcnQuTWluaUNoYXJ0IiksTT17dmFsdWU6IjEyTSIsdHlwZToicGVyaW9kLWJhY2sifSxJPXt0b3A6LjAxLGJvdHRvbTouMDF9LHg9e2NoYXJ0VHlwZToiYXJlYSIsbGluZVdpZHRoOjIscHJpY2VMaW5lVmlzaWJsZTohMSxjcm9zc2hhaXJNYXJrZXJWaXNpYmxlOiExLGxhc3RWYWx1ZVZpc2libGU6ITEsc2NhbGVNYXJnaW5zOkl9LE89e2xpbmVXaWR0aDoyLHByaWNlTGluZVZpc2libGU6ITEsY3Jvc3NoYWlyTWFya2VyVmlzaWJsZTohMSxsYXN0VmFsdWVWaXNpYmxlOiExLHNjYWxlTWFyZ2luczpJfSxGPXtjaGFydFR5cGU6ImJhc2VsaW5lIn0sUj17cHJpY2VMaW5lVmlzaWJsZTohMSxsYXN0VmFsdWVWaXNpYmxlOiExLHNjYWxlTWFyZ2luczpJfSxWPXtwcmljZUxpbmVWaXNpYmxlOiExLGxhc3RWYWx1ZVZpc2libGU6ITEsc2NhbGVNYXJnaW5zOkl9LHo9e3NjYWxlTWFyZ2luczpJfSxFPXtjaGFydFR5cGU6InByZXR0eS1oaXN0b2dyYW0iLHNjYWxlTWFyZ2luczpJLHJhZGl1czoyLHdpZHRoUGVyY2VudDo1MH0sTD17dmlzaWJsZTohMSxjb2xvcjpfLmNvbG9yc1BhbGV0dGVbImNvbG9yLXR2LWJsdWUtNTAwIl0sbGluZVdpZHRoOjEsbGVuZ3RoOjksbGFzdFZhbHVlVmlzaWJsZTohMSxwcmljZUxpbmVWaXNpYmxlOiExfSxCPXtzcGlubmVyOnt2aXNpYmxlOiExLHdpZHRoOjQsY29sb3I6Xy5jb2xvcnNQYWxldHRlWyJjb2xvci1icmFuZCJdfSxmYWRlOnt2aXNpYmxlOiExLHdhaXRGb3JTdHVkeVBsb3RzOiJub25lIn0sY2xlYXJEYXRhT25TeW1ib2xDaGFuZ2U6ITAsY2xlYXJEYXRhT25UaW1lZnJhbWVDaGFuZ2U6ITB9LE49e29uRmlyc3REYXRhOm51bGwsZGVzY3JpcHRpb246IiIsc2hvd0Rlc2NyaXB0aW9uOiEwLG5vRGF0YVRpbWVvdXQ6MTVlMyx0aW1lZnJhbWU6e3Zpc2libGU6ITEsdmFsdWU6TX0sY2hhcnRPcHRpb25zOnttaW5XaWR0aDowLG1pbkhlaWdodDowLGNoYXJ0OntncmlkOntob3J6TGluZXM6e2NvbG9yOiJyZ2JhKDEyMCwgMTIzLCAxMzQsIDAuMSkiLHZpc2libGU6ITF9LHZlcnRMaW5lczp7Y29sb3I6IiNmZmZmZmYiLHZpc2libGU6ITF9fSxjcm9zc2hhaXI6e2hvcnpMaW5lOnt2aXNpYmxlOiExLHN0eWxlOjMsd2lkdGg6MSxsYWJlbFZpc2libGU6ITEsbGFiZWxCYWNrZ3JvdW5kQ29sb3I6IiMwZjBmMGYifSx2ZXJ0TGluZTp7dmlzaWJsZTohMSxzdHlsZTozLHdpZHRoOjEsbGFiZWxWaXNpYmxlOiExLGxhYmVsQmFja2dyb3VuZENvbG9yOiIjMGYwZjBmIn19LGxheW91dDp7Zm9udEZhbWlseToiVHJlYnVjaGV0IE1TIixmb250U2l6ZToxMCx0ZXh0Q29sb3I6IiM4Mzg4OEQiLGJhY2tncm91bmQ6e3R5cGU6cy5Db2xvclR5cGUuU29saWQsY29sb3I6InRyYW5zcGFyZW50In0sYXR0cmlidXRpb25Mb2dvOiExfSxyaWdodFByaWNlU2NhbGU6e3Zpc2libGU6ITAsYm9yZGVyVmlzaWJsZTohMSxlbnRpcmVUZXh0T25seTohMCxtb2RlOnMuUHJpY2VTY2FsZU1vZGUuTm9ybWFsfSxsZWZ0UHJpY2VTY2FsZTp7dmlzaWJsZTohMSxib3JkZXJWaXNpYmxlOiExLGVudGlyZVRleHRPbmx5OiEwLG1vZGU6cy5QcmljZVNjYWxlTW9kZS5Ob3JtYWx9LHRpbWVTY2FsZTp7Ym9yZGVyVmlzaWJsZTohMSx0aW1lVmlzaWJsZTohMCxzZWNvbmRzVmlzaWJsZTohMSxsb2NrVmlzaWJsZVRpbWVSYW5nZU9uUmVzaXplOiEwfSxoYW5kbGVTY2FsZTohMSxoYW5kbGVTY3JvbGw6ITF9LHNlcmllczp4LHZvbHVtZTpDLmRlZmF1bHRWb2x1bWVPcHRpb25zLG1hOkwsbG9hZGluZzpCfX0sVT17IjF5Ijp7dmFsdWU6IjEyTSIsdHlwZToicGVyaW9kLWJhY2sifSwiNXkiOnt2YWx1ZToiNjBNIix0eXBlOiJwZXJpb2QtYmFjayJ9LG1heDp7dmFsdWU6IkFMTCIsdHlwZToicGVyaW9kLWJhY2sifX07ZnVuY3Rpb24gVyh0LGUsaSxhLG4scil7cmV0dXJuISF0LmRheUFuZFRpbWVUaWNrTWFya0ZpeEVuYWJsZWQmJihhPT09cy5UaWNrTWFya1R5cGUuVGltZT9mdW5jdGlvbih0KXtyZXR1cm4idGltZS1yYW5nZSIhPT10LnR5cGUmJih0LnZhbHVlLmVuZHNXaXRoKCJNIil8fHQudmFsdWUuZW5kc1dpdGgoIlkiKXx8WyJZVEQiLCJBTEwiXS5pbmNsdWRlcyh0LnZhbHVlKSl9KGUpOiEoIW58fCFyfHxhPD1yKSYmKGE9PT1zLlRpY2tNYXJrVHlwZS5EYXlPZk1vbnRoJiYoaS5nZXRNb250aCgpIT09bi5nZXRNb250aCgpfHxpLmdldEZ1bGxZZWFyKCkhPT1uLmdldEZ1bGxZZWFyKCkpKSl9Y29uc3QgSD0oKCk9PntsZXQgdD1udWxsLGU9bnVsbCxpPW51bGw7cmV0dXJuKGEsbixyLG8saCxsKT0+e2NvbnN0IGM9e30sZD1uZXcgRGF0ZSgxZTMqbykKO2kmJigwLGYuYXJlRXF1YWxUaW1lRnJhbWVzKShpLHIpfHwodD1udWxsLGU9bnVsbCxpPXIpO2xldCBtPSExO2lmKG4pe209KG4uc3VwcHJlc3NGbj8/VykobixyLGQsaCx0LGUpfWlmKHQ9ZCxlPWgsbSlyZXR1cm4iIjtzd2l0Y2goaCl7Y2FzZSBzLlRpY2tNYXJrVHlwZS5ZZWFyOm4/LmhpZGVZZWFyc1RpY2tNYXJrcz9jLm1vbnRoPSJzaG9ydCI6Yy55ZWFyPSJudW1lcmljIjticmVhaztjYXNlIHMuVGlja01hcmtUeXBlLk1vbnRoOmMubW9udGg9InNob3J0IjticmVhaztjYXNlIHMuVGlja01hcmtUeXBlLkRheU9mTW9udGg6Yy5kYXk9Im51bWVyaWMiO2JyZWFrO2Nhc2Ugcy5UaWNrTWFya1R5cGUuVGltZTpjLmhvdXIxMj0iMTItaG91cnMiPT09YSxjLmhvdXI9IjItZGlnaXQiLGMubWludXRlPSIyLWRpZ2l0IjticmVhaztjYXNlIHMuVGlja01hcmtUeXBlLlRpbWVXaXRoU2Vjb25kczpjLmhvdXIxMj0iMTItaG91cnMiPT09YSxjLmhvdXI9IjItZGlnaXQiLGMubWludXRlPSIyLWRpZ2l0IixjLnNlY29uZD0iMi1kaWdpdCJ9Y29uc3QgdT1uZXcgRGF0ZShkLmdldFVUQ0Z1bGxZZWFyKCksZC5nZXRVVENNb250aCgpLGQuZ2V0VVRDRGF0ZSgpLGQuZ2V0VVRDSG91cnMoKSxkLmdldFVUQ01pbnV0ZXMoKSxkLmdldFVUQ1NlY29uZHMoKSxkLmdldFVUQ01pbGxpc2Vjb25kcygpKTtyZXR1cm4gdD1kLGU9aCx1LnRvTG9jYWxlU3RyaW5nKGwsYyl9fSkoKTtmdW5jdGlvbiBxKHQsZSl7cmV0dXJuIHQuc2VyaWVzKCkuc2VyaWVzT3JkZXIoKS1lLnNlcmllcygpLnNlcmllc09yZGVyKCl9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cubWluaUNoYXJ0SW5zdGFuY2VzPXdpbmRvdy5taW5pQ2hhcnRJbnN0YW5jZXN8fHt9KTtjb25zdCBBPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdy5taW5pQ2hhcnRJbnN0YW5jZXM6e307bGV0IFk9MDtjb25zdCBHPXthY3F1aXJlOigpPT4oMCxiLm93bmVyc2hpcCkobmV3IHAuQ2hhcnRTZXNzaW9uKHdpbmRvdy5DaGFydEFwaUluc3RhbmNlLCEwKSl9O2NsYXNzIGp7Y29uc3RydWN0b3IodCxlLGksbil7dGhpcy5faXNEZXN0cm95ZWQ9ITEsdGhpcy5fc3R1ZHlQbG90c09yZGVySW52YWxpZGF0ZWQ9ITAsdGhpcy5fc3R1ZHlQbG90cz1bXSx0aGlzLl9lbFRpbWVmcmFtZT1udWxsLHRoaXMuX3RpbWVmcmFtZVZpZXc9bnVsbCx0aGlzLl90aWNrbWFya3M9bmV3IE1hcCx0aGlzLl9jYWNoZWRUaWNrbWFya3M9bmV3IE1hcCx0aGlzLl9jaGFydFNlc3Npb249bnVsbCx0aGlzLl9jaGFydFNlc3Npb25Db25uZWN0ZWQ9bnVsbCx0aGlzLl9jb25uZWN0Q2FsbGJhY2s9bnVsbCx0aGlzLl9jb25uZWN0ZWQ9ITEsdGhpcy5fbG9hZEVycm9yVGltZW91dD1udWxsLHRoaXMuX2lzTG9hZGluZz0hMSx0aGlzLl9zcGlubmVyPW51bGwsdGhpcy5fY3Jvc3NoYWlyTW92ZUhhbmRsZXJzPW5ldyBNYXAsdGhpcy5fYXRvbWljVXBkYXRlSXNHb2luZz0hMSx0aGlzLl9zZXJpZXNVcERvd25Db2xvcnM9e30sdGhpcy5faXNEV01SZXNvbHV0aW9uPSExLHRoaXMuX3VwZGF0ZVRpbWVySWQ9bnVsbCx0aGlzLl93aWR0aD1uZXcgci5XYXRjaGVkVmFsdWUoMCksdGhpcy5faGVpZ2h0PW5ldyByLldhdGNoZWRWYWx1ZSgwKSx0aGlzLl9zdGF0dXM9bmV3IHIuV2F0Y2hlZFZhbHVlKCJsb2FkaW5nIiksdGhpcy5fdGltZVNjYWxlU2l6ZUNoYW5nZWQ9bmV3IGguRGVsZWdhdGUsdGhpcy5fb25QbG90U3RhdHVzQ2hhbmdlZD0oKT0+e2NvbnN0IHQ9dGhpcy5fbWFpblBsb3Quc3RhdHVzKCkudmFsdWUoKSxlPXRoaXMuX3N0dWR5UGxvdHMuZXZlcnkoKHQ9PjAhPT10LnN0YXR1cygpLnZhbHVlKCkpKSxpPWV8fHRoaXMuX3N0dWR5UGxvdHMuc29tZSgodD0+MCE9PXQuc3RhdHVzKCkudmFsdWUoKSYmdC5pc1Zpc2libGUoKS52YWx1ZSgpKSk7c3dpdGNoKHQpe2Nhc2UgMzplJiZ0aGlzLl9vblBsb3RzRGF0YVJlYWR5KCk7YnJlYWs7Y2FzZSAyOnRoaXMuX29uTWFpblBsb3REYXRhRXJyb3IoKTticmVhaztjYXNlIDE6dGhpcy5fb25NYWluUGxvdFN5bWJvbFJlc29sdmluZ0Vycm9yKCl9Y29uc3Qgcz10aGlzLl9vcHRpb25zLmNoYXJ0T3B0aW9ucy5sb2FkaW5nLmZhZGU7aWYocy52aXNpYmxlKXN3aXRjaCh0aGlzLl9jYWNoZWRUaWNrbWFya3Muc2l6ZT4wfHx0KXtjYXNlIDA6dGhpcy5faW5uZXJDb250YWluZXIuY2xhc3NMaXN0LmFkZCh3LmZhZGUpO2JyZWFrO2Nhc2UgMjpjYXNlIDE6Y2FzZSEwOnRoaXMuX2lubmVyQ29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUody5mYWRlKTticmVhaztjYXNlIDM6KCJub25lIj09PXMud2FpdEZvclN0dWR5UGxvdHN8fCJhbGwiPT09cy53YWl0Rm9yU3R1ZHlQbG90cyYmZXx8ImFueSI9PT1zLndhaXRGb3JTdHVkeVBsb3RzJiZpKSYmdGhpcy5faW5uZXJDb250YWluZXIuY2xhc3NMaXN0LnJlbW92ZSh3LmZhZGUpfXRoaXMuX3VwZGF0ZVN0YXR1cygpfSx0aGlzLl90aW1lRnJhbWVPcHRpb25zPWk/LnRpbWVmcmFtZT8ub3B0aW9ucz8/KDAsUy5nZXRNaW5pVGltZUZyYW1lT3B0aW9ucykoKSx0aGlzLl9vcHRpb25zPSgwLGEuZGVmYXVsdCkoe30sTixpKSx0aGlzLl9jaGFydFNlc3Npb25Qcm92aWRlcj1uPz9HLHRoaXMuX2NvbnRhaW5lcj1lLHRoaXMuX2lubmVyQ29udGFpbmVyPWUub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9pbm5lckNvbnRhaW5lci5zdHlsZS53aWR0aD0iMTAwJSIsdGhpcy5faW5uZXJDb250YWluZXIuc3R5bGUuaGVpZ2h0PSIxMDAlIix0aGlzLl9pbm5lckNvbnRhaW5lci5zdHlsZS5taW5IZWlnaHQ9ImluaGVyaXQiLHRoaXMuX2lubmVyQ29udGFpbmVyLnN0eWxlLm1pbldpZHRoPSJpbmhlcml0IixlLmFwcGVuZENoaWxkKHRoaXMuX2lubmVyQ29udGFpbmVyKSx0aGlzLl93aWRnZXQ9KDAscy5jcmVhdGVDaGFydEV4KSh0aGlzLl9pbm5lckNvbnRhaW5lcixuZXcgVCx7Li4udGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnM/LmNoYXJ0LGF1dG9TaXplOiEwfSk7Y29uc3QgbD10aGlzLl93aWRnZXQucGFuZXMoKVswXTt0aGlzLl90ZXh0V2F0ZXJtYXJrPSgwLHMuY3JlYXRlVGV4dFdhdGVybWFyaykobCx7CnZpc2libGU6ITF9KSx0aGlzLl90aW1lZnJhbWU9bmV3IG8uV2F0Y2hlZE9iamVjdCh0aGlzLl9vcHRpb25zLnRpbWVmcmFtZS52YWx1ZSksdGhpcy5fbWFpblBsb3Q9dGhpcy5fY3JlYXRlTWFpblBsb3QodCksdGhpcy5zZXRUaW1lZnJhbWUodGhpcy5fdGltZWZyYW1lLnZhbHVlKCksITApO2NvbnN0IGM9KDAsZi5jb252ZXJ0VGltZUZyYW1lVG9TdHIpKHRoaXMuX3RpbWVmcmFtZS52YWx1ZSgpKSxkPXRoaXMuX29wdGlvbnMuY2FjaGU/LmxvYWREYXRhKGMpO2Q/KHRoaXMuX2NhY2hlZFRpY2ttYXJrcz1kLnRpY2ttYXJrcyx0aGlzLl90aWNrbWFya3M9bmV3IE1hcCh0aGlzLl9jYWNoZWRUaWNrbWFya3MpLHRoaXMuX2NyZWF0ZVRvb2x0aXBEYXRlRm9ybWF0dGVyKCkpOnRoaXMuY29ubmVjdCgpLHRoaXMuX3BhcmVudFJlc2l6ZU9ic2VydmVyPW5ldyBSZXNpemVPYnNlcnZlcigodD0+e3RoaXMuX21haW5QbG90LmZpdENvbnRlbnQoKTtmb3IoY29uc3QgZSBvZiB0KWlmKGUuY29udGVudEJveFNpemUpe2NvbnN0IHQ9ZS5jb250ZW50Qm94U2l6ZVswXTt0aGlzLl93aWR0aC5zZXRWYWx1ZSh0LmlubGluZVNpemUpLHRoaXMuX2hlaWdodC5zZXRWYWx1ZSh0LmJsb2NrU2l6ZSl9fSkpLHRoaXMuX3BhcmVudFJlc2l6ZU9ic2VydmVyLm9ic2VydmUoZSk7Y29uc3QgbT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3RoaXMuX3dpZHRoLnNldFZhbHVlKG0ud2lkdGgpLHRoaXMuX2hlaWdodC5zZXRWYWx1ZShtLmhlaWdodCksdGhpcy5fY3JlYXRlTGVnZW5kKCksdGhpcy5fdXBkYXRlU2VyaWVzVXBEb3duQ29sb3JzKCksdGhpcy5fYm91bmRUaW1lU2NhbGVTaXplQ2hhbmdlZEhhbmRsZXI9dGhpcy5fdGltZVNjYWxlU2l6ZUNoYW5nZWRIYW5kbGVyLmJpbmQodGhpcyksdGhpcy5fd2lkZ2V0LnRpbWVTY2FsZSgpLnN1YnNjcmliZVNpemVDaGFuZ2UodGhpcy5fYm91bmRUaW1lU2NhbGVTaXplQ2hhbmdlZEhhbmRsZXIpLFkrPTEsdGhpcy5faW5uZXJDb250YWluZXIuZGF0YXNldC5taW5pQ2hhcnRJZD1gJHtZfWAsQVt0aGlzLl9pbm5lckNvbnRhaW5lci5kYXRhc2V0Lm1pbmlDaGFydElkXT10aGlzfWFzeW5jIHRha2VTY3JlZW5zaG90KCl7Y29uc3R7dGFrZVNjcmVlbnNob3Q6dH09YXdhaXQgUHJvbWlzZS5hbGwoW2kuZSg5Mjk2NCksaS5lKDEyMTgxKSxpLmUoMTkzMTEpXSkudGhlbihpLmJpbmQoaSwyMDE3ODEpKTtyZXR1cm4gdCh0aGlzLndpZGdldCgpLHRoaXMubWFpblBsb3QoKS5zeW1ib2xJbmZvKCkpfXNjcmVlbnNob3RTeW1ib2woKXtyZXR1cm4gdGhpcy5tYWluUGxvdCgpLnN5bWJvbCgpfWNvbnRhaW5lcigpe3JldHVybiB0aGlzLl9jb250YWluZXJ9aW5uZXJDb250YWluZXIoKXtyZXR1cm4gdGhpcy5faW5uZXJDb250YWluZXJ9Z2V0Q2hhcnRDb250YWluZXIoKXtyZXR1cm4gdGhpcy5fY29udGFpbmVyPygwLHkuZ2V0Q2hhcnRMYXlvdXRDb250YWluZXIpKHRoaXMuX2NvbnRhaW5lcik6bnVsbH13aWR0aCgpe3JldHVybiB0aGlzLl93aWR0aC5yZWFkb25seSgpfWhlaWdodCgpe3JldHVybiB0aGlzLl9oZWlnaHQucmVhZG9ubHkoKX1zdGF0dXMoKXtyZXR1cm4gdGhpcy5fc3RhdHVzLnJlYWRvbmx5KCl9c2VyaWVzRGF0YVNvdXJjZSgpe3JldHVybiB0aGlzLl9tYWluUGxvdC5zZXJpZXNEYXRhU291cmNlKCl9c3VwcG9ydFJlYWx0aW1lVXBkYXRlcygpe3JldHVybiBCb29sZWFuKHRoaXMuX29wdGlvbnMuZG9Ob3REaXNjb25uZWN0T25EYXRhUmVhZHkpfWNvbm5lY3QodCl7Y29uc3QgZT0oMCxmLmNvbnZlcnRUaW1lRnJhbWVUb1N0cikodGhpcy5fdGltZWZyYW1lLnZhbHVlKCkpOygwLGwuYXNzZXJ0KSghdGhpcy5fb3B0aW9ucy5jYWNoZT8ubG9hZERhdGEoZSksIkNoYXJ0IGNhbiBub3QgdG8gY29ubmVjdCBpZiB0aGVyZSBpcyBhbiBleGlzdGluZyBjYWNoZSBkYXRhIiksImZ1bmN0aW9uIj09dHlwZW9mIHQmJih0aGlzLl9jb25uZWN0Q2FsbGJhY2s9dCksdGhpcy5fY2xlYXJSZWNvbm5lY3Rpb25UaW1lb3V0KCksdGhpcy5jb25uZWN0ZWQoKXx8KHRoaXMuX3Nob3dMb2FkaW5nKCksdGhpcy5fbWFpblBsb3QuY2xlYXJEYXRhKCksdGhpcy5fc3R1ZHlQbG90cy5mb3JFYWNoKCh0PT50LmNsZWFyRGF0YSgpKSksdGhpcy5fY2hhcnRTZXNzaW9ufHwodGhpcy5fY2hhcnRTZXNzaW9uPXRoaXMuX2NoYXJ0U2Vzc2lvblByb3ZpZGVyLmFjcXVpcmUoKSx0aGlzLl9jaGFydFNlc3Npb24uY3JpdGljYWxFcnJvcigpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uQ2hhcnRTZXNzaW9uQ3JpdGljYWxFcnJvciksdGhpcy5fY2hhcnRTZXNzaW9uQ29ubmVjdGVkPXRoaXMuX2NoYXJ0U2Vzc2lvbi5pc0Nvbm5lY3RlZCgpLnNwYXduKCksdGhpcy5fY2hhcnRTZXNzaW9uQ29ubmVjdGVkLnN1YnNjcmliZSh0aGlzLl9vbkNoYXJ0U2Vzc2lvbklzQ29ubmVjdGVkQ2hhbmdlZC5iaW5kKHRoaXMpLHtjYWxsV2l0aExhc3Q6ITB9KSksdGhpcy5fY2hhcnRTZXNzaW9uLmNvbm5lY3QodGhpcy5fb25EYXRhLmJpbmQodGhpcykpLHRoaXMuX2NoYXJ0U2Vzc2lvbi5pc0Nvbm5lY3RlZCgpLnZhbHVlKCkmJnRoaXMuX3JlcXVlc3REYXRhKCksdGhpcy5fY2xlYXJOb0RhdGFUaW1lb3V0KCksdGhpcy5fY3JlYXRlTm9EYXRhVGltZW91dCgpKX1kaXNjb25uZWN0KCl7dGhpcy5fc3R1ZHlQbG90cy5mb3JFYWNoKCh0PT50LmRpc2Nvbm5lY3QoKSkpLHRoaXMuX21haW5QbG90LmRpc2Nvbm5lY3QoKSx0aGlzLl9jaGFydFNlc3Npb24/LmRpc2Nvbm5lY3QoKSx0aGlzLl9jb25uZWN0ZWQ9ITEsdGhpcy5fY2xlYXJOb0RhdGFUaW1lb3V0KCl9Y29ubmVjdGVkKCl7cmV0dXJuIEJvb2xlYW4odGhpcy5fY29ubmVjdGVkJiZ0aGlzLl9jaGFydFNlc3Npb24mJnRoaXMuX2NoYXJ0U2Vzc2lvbi5pc0Nvbm5lY3RlZCgpLnZhbHVlKCkpfXNldFRpbWVmcmFtZSh0LGUsaSl7Y29uc3Qgcz10aGlzLl90aW1lZnJhbWUudmFsdWUoKTtsZXQgYT10O2NvbnN0IG49InBlcmlvZC1iYWNrIj09PWEudHlwZT9VW2EudmFsdWVdOnZvaWQgMDt2b2lkIDAhPT1uJiYoYT1uKTtsZXQgcj1udWxsCjtpZihyPXRoaXMuX3RpbWVmcmFtZUlzQXZhaWxhYmxlKGEpP2E6dGhpcy5fdGltZWZyYW1lSXNBdmFpbGFibGUoTSk/TTp0aGlzLl90aW1lRnJhbWVPcHRpb25zLmZpbmQoKHQ9PnRoaXMuX3RpbWVmcmFtZUlzQXZhaWxhYmxlKHQudmFsdWUpKSk/LnZhbHVlPz9udWxsLG51bGw9PT1yKXJldHVybiB2b2lkIGsubG9nV2FybigiVGhlIGN1cnJlbnQgdGltZWZyYW1lIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggdGhlIHRpbWVmcmFtZXMgZnJvbSB0aW1lRnJhbWVPcHRpb25zIik7dGhpcy5fb3B0aW9ucy50aW1lZnJhbWUuY3VycmVudFRpbWVmcmFtZUNhbGxiYWNrJiZ0aGlzLl9vcHRpb25zLnRpbWVmcmFtZS5jdXJyZW50VGltZWZyYW1lQ2FsbGJhY2sociksdGhpcy5fdGltZWZyYW1lLnNldFZhbHVlKHIpO2NvbnN0IG89KDAsZi5jb252ZXJ0VGltZUZyYW1lVG9TdHIpKHRoaXMuX3RpbWVmcmFtZS52YWx1ZSgpKTt0aGlzLl9hY3RpdmVSYW5nZT1vLHRoaXMuX3RpbWVmcmFtZVZpZXcmJnRoaXMuX29wdGlvbnMudGltZWZyYW1lLnZpc2libGUmJnRoaXMuX3RpbWVmcmFtZVZpZXcudXBkYXRlKHthY3RpdmVSYW5nZTp0aGlzLl9hY3RpdmVSYW5nZX0pO2NvbnN0IGg9dGhpcy5fb3B0aW9ucy5jYWNoZT8ubG9hZERhdGEobyk7aWYoaClyZXR1cm4gdGhpcy5fY2FjaGVkVGlja21hcmtzPWgudGlja21hcmtzLHRoaXMuX3RpY2ttYXJrcz1uZXcgTWFwKHRoaXMuX2NhY2hlZFRpY2ttYXJrcyksdGhpcy5fY3JlYXRlVG9vbHRpcERhdGVGb3JtYXR0ZXIoKSx2b2lkIHRoaXMuX21haW5QbG90LnJlbG9hZENhY2hlKGgubWFpblBsb3QpO3RoaXMuX2NhY2hlZFRpY2ttYXJrcy5zaXplJiYodGhpcy5fY2FjaGVkVGlja21hcmtzPW5ldyBNYXAsdGhpcy5fdGlja21hcmtzPW5ldyBNYXAsdGhpcy5fbWFpblBsb3QucmVsb2FkQ2FjaGUoKSx0aGlzLl9tYWluUGxvdC5jbGVhckRhdGEoKSksKCFlJiZzIT09dGhpcy5fdGltZWZyYW1lLnZhbHVlKCl8fGkpJiZ0aGlzLl9yZXF1ZXN0RGF0YU9uVGltZWZyYW1lQ2hhbmdlKCl9Y2hhcnRTZXNzaW9uKCl7cmV0dXJuKDAsbC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9jaGFydFNlc3Npb24pfXdpZGdldCgpe3JldHVybiB0aGlzLl93aWRnZXR9dGltZWZyYW1lKCl7cmV0dXJuIHRoaXMuX3RpbWVmcmFtZS5yZWFkb25seSgpfXNldFRpbWVGcmFtZU9wdGlvbnModCxlKXtpZih0PT09dGhpcy5fdGltZUZyYW1lT3B0aW9ucylyZXR1cm47Y29uc3QgaT10aGlzLl90aW1lRnJhbWVPcHRpb25zLmZpbmQoKHQ9PigwLGYuYXJlRXF1YWxUaW1lRnJhbWVzKSh0LnZhbHVlLHRoaXMudGltZWZyYW1lKCkudmFsdWUoKSkpKSxzPWk/LnRhcmdldFJlc29sdXRpb24/P251bGw7dGhpcy5fdGltZUZyYW1lT3B0aW9ucz10LGU/dGhpcy5zZXRUaW1lZnJhbWUoZSk6dGhpcy5yZXNvbHV0aW9uKCkhPT1zJiZ0aGlzLl9yZXF1ZXN0RGF0YU9uVGltZWZyYW1lQ2hhbmdlKCksdGhpcy5faW5pdFRpbWVmcmFtZXNSZW5kZXJlcigpfXRpbWVGcmFtZU9wdGlvbnMoKXtyZXR1cm4gdGhpcy5fdGltZUZyYW1lT3B0aW9uc31yZXNvbHV0aW9uKCl7Y29uc3QgdD10aGlzLl90aW1lRnJhbWVPcHRpb25zLmZpbmQoKHQ9PigwLGYuYXJlRXF1YWxUaW1lRnJhbWVzKSh0LnZhbHVlLHRoaXMudGltZWZyYW1lKCkudmFsdWUoKSkpKTtyZXR1cm4oMCxsLmVuc3VyZURlZmluZWQpKHQ/LnRhcmdldFJlc29sdXRpb24pfWNoYW5nZVN5bWJvbCh0LGUpe3ZvaWQgMCE9PWUmJnRoaXMuX3VwZGF0ZVNlcmllc09wdGlvbnMoZSksdGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnMubG9hZGluZy5jbGVhckRhdGFPblN5bWJvbENoYW5nZSYmKHRoaXMuX21haW5QbG90LmNsZWFyRGF0YSgpLHRoaXMuX21haW5QbG90LmRlbGV0ZVZpZXcoKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQuY2xlYXJEYXRhKCkpKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQuZGVsZXRlVmlldygpKSkpO3RoaXMuX21haW5QbG90LnNldFN5bWJvbCh0LHRoaXMuX29wdGlvbnMuY2hhcnRPcHRpb25zLnNlcmllcykmJih0aGlzLmNvbm5lY3RlZCgpJiYodGhpcy5fbWFpblBsb3QucmVxdWVzdERhdGEoKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQucmVxdWVzdERhdGEoKSkpKSx0aGlzLmNvbm5lY3QoKSl9dXBkYXRlU2VyaWVzT3B0aW9ucyh0KXt0aGlzLl9hdG9taWNVcGRhdGVJc0dvaW5nPSEwLHRoaXMuX3VwZGF0ZVNlcmllc09wdGlvbnModCksdGhpcy5fbWFpblBsb3QudXBkYXRlU2VyaWVzT3B0aW9ucyh0KSx0aGlzLl91cGRhdGVTZXJpZXNVcERvd25Db2xvcnMoKSx0aGlzLl9hdG9taWNVcGRhdGVJc0dvaW5nPSExfWdldFNlcmllc09wdGlvbnMoKXtyZXR1cm4gdGhpcy5fbWFpblBsb3QuY3VycmVudFNlcmllc09wdGlvbnMoKX11cGRhdGVBZGRpdGlvbmFsU2VyaWVzT3B0aW9ucyh0LGUpe3RoaXMuX3N0dWR5UGxvdHNbZV0udXBkYXRlU2VyaWVzT3B0aW9ucyh0KX1zaG93TWVzc2FnZSh0KXt0aGlzLl9oaWRlTG9hZGluZygpLHRoaXMuX21haW5QbG90LmRlbGV0ZVZpZXcoKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQuZGVsZXRlVmlldygpKSksdGhpcy5fdGV4dFdhdGVybWFyay5hcHBseU9wdGlvbnM/Lih7dmlzaWJsZTohMCxsaW5lczpbe2NvbG9yOiIjODM4ODhEIix0ZXh0OnQsZm9udFNpemU6MTJ9XX0pfWhpZGVNZXNzYWdlKCl7dGhpcy5fdGV4dFdhdGVybWFyay5hcHBseU9wdGlvbnM/Lih7dmlzaWJsZTohMSxsaW5lczpbXX0pfWZyb20oKXtjb25zdCB0PXRoaXMuX3RpbWVGcmFtZU9wdGlvbnMuZmluZCgodD0+KDAsZi5hcmVFcXVhbFRpbWVGcmFtZXMpKHQudmFsdWUsdGhpcy50aW1lZnJhbWUoKS52YWx1ZSgpKSkpO3JldHVyblt0Py5mcm9tXX1lbmFibGUodCl7dGhpcy5jb25uZWN0KHQpfWRpc2FibGUoKXt0aGlzLmRpc2Nvbm5lY3QoKX1kZXN0cm95KCl7dGhpcy5fYm91bmRUaW1lU2NhbGVTaXplQ2hhbmdlZEhhbmRsZXImJih0aGlzLl93aWRnZXQudGltZVNjYWxlKCkudW5zdWJzY3JpYmVTaXplQ2hhbmdlKHRoaXMuX2JvdW5kVGltZVNjYWxlU2l6ZUNoYW5nZWRIYW5kbGVyKSwKdGhpcy5fYm91bmRUaW1lU2NhbGVTaXplQ2hhbmdlZEhhbmRsZXI9dm9pZCAwKSx0aGlzLl9wYXJlbnRSZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5kaXNjb25uZWN0KCksdGhpcy5fd2lkZ2V0LnJlbW92ZSgpLHRoaXMuX21haW5QbG90LnN5bWJvbFJlc29sdmVkKCkudW5zdWJzY3JpYmVBbGwobnVsbCksdGhpcy5fbWFpblBsb3QudGltZUZyYW1lSW52YWxpZGF0ZWQoKS51bnN1YnNjcmliZUFsbCh0aGlzKSx0aGlzLl9tYWluUGxvdC5kZXN0cm95KCksdGhpcy5fc3R1ZHlQbG90cy5mb3JFYWNoKCh0PT50LmRlc3Ryb3koKSkpLHRoaXMuX3RpbWVmcmFtZVZpZXc/LmRlc3Ryb3koKSx0aGlzLl9jaGFydFNlc3Npb25Db25uZWN0ZWQ/LmRlc3Ryb3koKSx0aGlzLl9jaGFydFNlc3Npb24/LmNyaXRpY2FsRXJyb3IoKS51bnN1YnNjcmliZUFsbCh0aGlzKSx0aGlzLl9jaGFydFNlc3Npb24/LnJlbGVhc2UoKSxkZWxldGUgQVt0aGlzLl9pbm5lckNvbnRhaW5lci5kYXRhc2V0Lm1pbmlDaGFydElkXSx0aGlzLl9pbm5lckNvbnRhaW5lci5yZW1vdmUoKSx0aGlzLl9pc0Rlc3Ryb3llZD0hMH11cGRhdGVBdmFpbGFibGVUaW1lZnJhbWVzKCl7dGhpcy5fbWFpblBsb3Quc3ltYm9sSW5mbygpPyh0aGlzLl90aW1lZnJhbWVWaWV3JiZ0aGlzLl9vcHRpb25zLnRpbWVmcmFtZS52aXNpYmxlJiZ0aGlzLl90aW1lZnJhbWVWaWV3LnVwZGF0ZSh7cmFuZ2VzOnRoaXMuX2dldEF2YWlsYWJsZVRpbWVGcmFtZXMoKX0pLHRoaXMuc2V0VGltZWZyYW1lKHRoaXMuX3RpbWVmcmFtZS52YWx1ZSgpKSk6ay5sb2dXYXJuKCJVcGRhdGluZyBhdmFpbGFibGUgcmVzb2x1dGlvbnMgd2l0aG91dCBmdWxsIHN5bWJvbCBpbmZvIil9bWFpblBsb3QoKXtyZXR1cm4gdGhpcy5fbWFpblBsb3R9Zml0Q29udGVudCgpe3RoaXMuX21haW5QbG90LmZpdENvbnRlbnQoKX1oYXNTdHVkeVBsb3RzKCl7cmV0dXJuIHRoaXMuX3N0dWR5UGxvdHMubGVuZ3RoPjB9c3R1ZHlQbG90cygpe3JldHVybiB0aGlzLl9zdHVkeVBsb3RzT3JkZXJJbnZhbGlkYXRlZCYmKHRoaXMuX3N0dWR5UGxvdHMuc29ydChxKSx0aGlzLl9zdHVkeVBsb3RzT3JkZXJJbnZhbGlkYXRlZD0hMSksdGhpcy5fc3R1ZHlQbG90c31hZGRTdHVkeVBsb3QodCl7cmV0dXJuIHRoaXMuX2FkZFN0dWR5UGxvdCh0KSx7bm9EYXRhOnQubm9EYXRhKCksc3RhdHVzOnQuc3RhdHVzKCkscmVtb3ZlOigpPT57dGhpcy5fcmVtb3ZlU3R1ZHlQbG90KHQpfSxzeW1ib2w6KCk9PnQuc3ltYm9sKCksZXh0ZW5kZWRTeW1ib2w6KCk9PnQuZXh0ZW5kZWRTeW1ib2woKSxvcHRpb25zOigpPT50LmN1cnJlbnRTZXJpZXNPcHRpb25zKCl9fWluZGV4VG9UaW1lKHQpe2NvbnN0IGU9dGhpcy5fdGlja21hcmtzLnNpemU/dGhpcy5fdGlja21hcmtzOnRoaXMuX2NhY2hlZFRpY2ttYXJrcztyZXR1cm4gZS5nZXQodCk/LnRpbWU/P251bGx9c3Vic2NyaWJlQ3Jvc3NoYWlyTW92ZSh0KXtjb25zdCBlPWU9Pnt0aGlzLl9hdG9taWNVcGRhdGVJc0dvaW5nfHx0KGUpfTt0aGlzLl9jcm9zc2hhaXJNb3ZlSGFuZGxlcnMuc2V0KHQsZSksdGhpcy5fd2lkZ2V0LnN1YnNjcmliZUNyb3NzaGFpck1vdmUoZSl9dW5zdWJzY3JpYmVDcm9zc2hhaXJNb3ZlKHQpe2NvbnN0IGU9dGhpcy5fY3Jvc3NoYWlyTW92ZUhhbmRsZXJzLmdldCh0KTtlJiYodGhpcy5fY3Jvc3NoYWlyTW92ZUhhbmRsZXJzLmRlbGV0ZSh0KSx0aGlzLl93aWRnZXQudW5zdWJzY3JpYmVDcm9zc2hhaXJNb3ZlKGUpKX11cERvd25Db2xvcnModCl7cmV0dXJuIHRoaXMuX3Nlcmllc1VwRG93bkNvbG9yc1t0XXx8dGhpcy5fdXBkYXRlU2VyaWVzVXBEb3duQ29sb3JzSW1wbCgpLHRoaXMuX3Nlcmllc1VwRG93bkNvbG9yc1t0XT8/bnVsbH1kYXRlVGltZUZvcm1hdHRlcigpe3JldHVybiB0aGlzLl9kYXRlVGltZUZvcm1hdHRlcn1pc0RXTVJlc29sdXRpb24oKXtyZXR1cm4gdGhpcy5faXNEV01SZXNvbHV0aW9ufXVwZGF0ZUNoYXJ0UmlnaHRNYXJnaW5BY2NvcmRpbmdUb1RpdGxlcygpe2NvbnN0IHQ9dGhpcy5tYWluUGxvdCgpLmN1cnJlbnRTZXJpZXNPcHRpb25zKCkuaG9yek1hcmdpbnM/LnJpZ2h0UHg7aWYodCl0aGlzLm1haW5QbG90KCkudXBkYXRlSG9yek1hcmdpbnMoe3JpZ2h0UHg6dH0pO2Vsc2V7Y29uc3QgdD1bdGhpcy5tYWluUGxvdCgpLC4uLnRoaXMuX3N0dWR5UGxvdHNdO2xldCBlPTA7Zm9yKGNvbnN0IGkgb2YgdClmb3IoY29uc3QgdCBvZiBpLnRpdGxlcygpKWU9TWF0aC5tYXgoZSx0Lmxlbmd0aCk7dGhpcy5tYWluUGxvdCgpLnVwZGF0ZUhvcnpNYXJnaW5zKHtyaWdodFB4OjEyKmV9KX10aGlzLm1haW5QbG90KCkuZml0Q29udGVudCgpfWFjdGl2ZVJhbmdlKCl7cmV0dXJuIHRoaXMuX2FjdGl2ZVJhbmdlfXRpbWVTY2FsZVNpemVDaGFuZ2VkKCl7cmV0dXJuIHRoaXMuX3RpbWVTY2FsZVNpemVDaGFuZ2VkfV9nZXRDaGFydFBsb3RDbGFzcygpe3JldHVybiBQLk1pbmlDaGFydFBsb3R9X2NyZWF0ZU1haW5QbG90KHQpe2NvbnN0IGU9KDAsZi5jb252ZXJ0VGltZUZyYW1lVG9TdHIpKHRoaXMuX3RpbWVmcmFtZS52YWx1ZSgpKSxpPW5ldyh0aGlzLl9nZXRDaGFydFBsb3RDbGFzcygpKSh0aGlzLHRoaXMuX29wdGlvbnMuY2hhcnRPcHRpb25zLnNlcmllcyx0aGlzLl9vcHRpb25zLmNoYXJ0T3B0aW9ucy52b2x1bWUsKCgpPT50aGlzLl9zdHVkeVBsb3RzKSx0aGlzLl9vcHRpb25zLm1haW5QbG90T3B0aW9ucyx0aGlzLl9vcHRpb25zLmNhY2hlPy5sb2FkRGF0YShlKT8ubWFpblBsb3QpO3JldHVybiBpLnNldFN5bWJvbCh0KSxpLnN5bWJvbFJlc29sdmVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TeW1ib2xSZXNvbHZlZCksaS50aW1lRnJhbWVJbnZhbGlkYXRlZCgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uVGltZUZyYW1lSW52YWxpZGF0ZWQpLGkuc3RhdHVzKCkuc3Vic2NyaWJlKHRoaXMuX29uUGxvdFN0YXR1c0NoYW5nZWQpLGl9X29uUGxvdHNEYXRhUmVhZHkoKXsiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fb3B0aW9ucy5vbkZpcnN0RGF0YSYmKHRoaXMuX29wdGlvbnMub25GaXJzdERhdGEoKSwKdGhpcy5fb3B0aW9ucy5vbkZpcnN0RGF0YT1udWxsKSx0aGlzLl9oaWRlTG9hZGluZygpLHRoaXMuaGlkZU1lc3NhZ2UoKSx0aGlzLl9jbGVhck5vRGF0YVRpbWVvdXQoKSx0aGlzLl9vcHRpb25zLmRvTm90RGlzY29ubmVjdE9uRGF0YVJlYWR5fHx0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9jcmVhdGVSZWNvbm5lY3Rpb25UaW1lb3V0KCksdGhpcy5fc2F2ZUNhY2hlKCl9X2FkZFN0dWR5UGxvdCh0KXt0aGlzLl9zdHVkeVBsb3RzLnB1c2godCksdC5zdGF0dXMoKS5zdWJzY3JpYmUodGhpcy5fb25QbG90U3RhdHVzQ2hhbmdlZCksdGhpcy5jb25uZWN0ZWQoKT90LnJlcXVlc3REYXRhKCk6dGhpcy5jb25uZWN0KCksdC5mb3JjZVBlcmNlbnRhZ2VNb2RlKCkmJnRoaXMuX21haW5QbG90LnN3aXRjaFRvUGVyY2VudGFnZVNjYWxlTW9kZSgpLHRoaXMuX3VwZGF0ZVN0YXR1cygpLHRoaXMuX3N0dWR5UGxvdHNPcmRlckludmFsaWRhdGVkPSEwfV9yZW1vdmVTdHVkeVBsb3QodCl7Y29uc3QgZT10aGlzLl9zdHVkeVBsb3RzLmluZGV4T2YodCk7KDAsbC5hc3NlcnQpKC0xIT09ZSksdGhpcy5fc3R1ZHlQbG90cy5zcGxpY2UoZSwxKSx0LnN0YXR1cygpLnVuc3Vic2NyaWJlKHRoaXMuX29uUGxvdFN0YXR1c0NoYW5nZWQpLHQuZGVsZXRlVmlldygpLHQuY2xlYXJEYXRhKCksdC5kZXN0cm95KCksdGhpcy5fYXV0b1Jlc3RvcmVPcmlnaW5hbFNjYWxlTW9kZSgpJiZ0aGlzLl9zdHVkeVBsb3RzLmV2ZXJ5KCh0PT4hdC5mb3JjZVBlcmNlbnRhZ2VNb2RlKCkpKSYmdGhpcy5fbWFpblBsb3QucmVzdG9yZU9yaWdpbmFsU2NhbGVNb2RlKCksdGhpcy5fc3R1ZHlQbG90c09yZGVySW52YWxpZGF0ZWQ9ITAsdGhpcy5fdXBkYXRlU3RhdHVzKCl9X2F1dG9SZXN0b3JlT3JpZ2luYWxTY2FsZU1vZGUoKXtyZXR1cm4hMH1fdXBkYXRlU2VyaWVzVXBEb3duQ29sb3JzKCl7dGhpcy5fc2VyaWVzVXBEb3duQ29sb3JzPXt9fV91cGRhdGVTZXJpZXNVcERvd25Db2xvcnNJbXBsKCl7Y29uc3QgdD10aGlzLl9vcHRpb25zLmNoYXJ0T3B0aW9ucy5zZXJpZXMsZT10aGlzLl9tYWluUGxvdC5zZXJpZXMoKS5vcHRpb25zKCk7c3dpdGNoKHQuY2hhcnRUeXBlKXtjYXNlImNhbmRsZXN0aWNrcyI6Y29uc3QgaT1lO3RoaXMuX3Nlcmllc1VwRG93bkNvbG9ycy5DYW5kbGVzdGljaz17dXA6dC5ib3JkZXJVcENvbG9yPz90LnVwQ29sb3I/P2kuYm9yZGVyVXBDb2xvcj8/aS51cENvbG9yLGRvd246dC5ib3JkZXJEb3duQ29sb3I/P3QuZG93bkNvbG9yPz9pLmJvcmRlckRvd25Db2xvcj8/aS5kb3duQ29sb3J9O2JyZWFrO2Nhc2UiYmFycyI6Y29uc3Qgcz1lO3RoaXMuX3Nlcmllc1VwRG93bkNvbG9ycy5CYXI9e3VwOnQudXBDb2xvcj8/cy51cENvbG9yLGRvd246dC5kb3duQ29sb3I/P3MuZG93bkNvbG9yfTticmVhaztjYXNlImhpc3RvZ3JhbSI6Y29uc3QgYT1lO3RoaXMuX3Nlcmllc1VwRG93bkNvbG9ycy5IaXN0b2dyYW09e3VwOnQudXBDb2xvcj8/dC5jb2xvcj8/YS5jb2xvcixkb3duOnQuZG93bkNvbG9yPz90LmNvbG9yPz9hLmNvbG9yfX19X3VwZGF0ZVNlcmllc09wdGlvbnModCl7dGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnMuc2VyaWVzPWZ1bmN0aW9uKHQpe2xldCBlO3N3aXRjaCh0LmNoYXJ0VHlwZT8/ImFyZWEiKXtjYXNlImJhcnMiOmU9UjticmVhaztjYXNlImNhbmRsZXN0aWNrcyI6ZT1WO2JyZWFrO2Nhc2UiYXJlYSI6ZT14O2JyZWFrO2Nhc2UibGluZSI6ZT1PO2JyZWFrO2Nhc2UiaGlzdG9ncmFtIjplPXo7YnJlYWs7Y2FzZSJwcmV0dHktaGlzdG9ncmFtIjplPUU7YnJlYWs7Y2FzZSJiYXNlbGluZSI6ZT1GfXJldHVybigwLGEuZGVmYXVsdCkoe30sZSx0KX0odCl9X3NhdmVDYWNoZSgpe2NvbnN0e2NhY2hlOnR9PXRoaXMuX29wdGlvbnM7aWYoIXQpcmV0dXJuO2NvbnN0IGU9dGhpcy5fcHJlcGFyZUNhY2hlRGF0YSgpLGk9KDAsZi5jb252ZXJ0VGltZUZyYW1lVG9TdHIpKHRoaXMuX3RpbWVmcmFtZS52YWx1ZSgpKTtlJiYodC5zYXZlRGF0YShpLGUpLHRoaXMuX2NhY2hlZFRpY2ttYXJrcz1lLnRpY2ttYXJrcyl9X3ByZXBhcmVDYWNoZURhdGEoKXtpZighdGhpcy5fdGlja21hcmtzLnNpemUpcmV0dXJuIG51bGw7Y29uc3QgdD10aGlzLl9tYWluUGxvdC5jYWNoZURhdGEoKTtyZXR1cm4gdD97bWFpblBsb3Q6dCx0aWNrbWFya3M6bmV3IE1hcCh0aGlzLl90aWNrbWFya3MpfTpudWxsfV9vbk1haW5QbG90RGF0YUVycm9yKCl7dGhpcy5faGlkZUxvYWRpbmcoKSx0aGlzLnNob3dNZXNzYWdlKG4udChudWxsLHZvaWQgMCxpKDg3MjM4KSkpLHRoaXMuX2NsZWFyTm9EYXRhVGltZW91dCgpLHRoaXMuZGlzY29ubmVjdCgpfV9vbk1haW5QbG90U3ltYm9sUmVzb2x2aW5nRXJyb3IoKXt0aGlzLl9oaWRlTG9hZGluZygpLHRoaXMuc2hvd01lc3NhZ2Uobi50KG51bGwsdm9pZCAwLGkoMTQ2ODA3KSkpLHRoaXMuX2NsZWFyTm9EYXRhVGltZW91dCgpLHRoaXMuZGlzY29ubmVjdCgpfV9jcmVhdGVSZWNvbm5lY3Rpb25UaW1lb3V0KCl7aWYodGhpcy5fb3B0aW9ucy5kb05vdERpc2Nvbm5lY3RPbkRhdGFSZWFkeSlyZXR1cm47Y29uc3QgdD10aGlzLl9vcHRpb25zLnVwZGF0ZVRpbWVvdXQ7dm9pZCAwIT09dCYmdD4wJiYodGhpcy5fdXBkYXRlVGltZXJJZD1zZXRUaW1lb3V0KCgoKT0+e3RoaXMuX3VwZGF0ZVRpbWVySWQ9bnVsbCx0aGlzLmNvbm5lY3RlZCgpP3RoaXMuX3JlcXVlc3REYXRhKCk6dGhpcy5jb25uZWN0KCl9KSx0KSl9X2NsZWFyUmVjb25uZWN0aW9uVGltZW91dCgpe251bGwhPT10aGlzLl91cGRhdGVUaW1lcklkJiYoY2xlYXJJbnRlcnZhbCh0aGlzLl91cGRhdGVUaW1lcklkKSx0aGlzLl91cGRhdGVUaW1lcklkPW51bGwpfV9jcmVhdGVOb0RhdGFUaW1lb3V0KCl7Y29uc3QgdD10aGlzLl9vcHRpb25zLm5vRGF0YVRpbWVvdXQ7dm9pZCAwIT09dCYmdD4wJiYodGhpcy5fbG9hZEVycm9yVGltZW91dD1zZXRUaW1lb3V0KCgoKT0+e3RoaXMuc2hvd01lc3NhZ2Uobi50KG51bGwsdm9pZCAwLGkoMTQ2ODA3KSkpLAoiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fb3B0aW9ucy5vbkZpcnN0RGF0YSYmKHRoaXMuX29wdGlvbnMub25GaXJzdERhdGEoKSx0aGlzLl9vcHRpb25zLm9uRmlyc3REYXRhPW51bGwpfSksdCkpfV9jbGVhck5vRGF0YVRpbWVvdXQoKXt0aGlzLl9sb2FkRXJyb3JUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuX2xvYWRFcnJvclRpbWVvdXQpLHRoaXMuX2xvYWRFcnJvclRpbWVvdXQ9bnVsbCl9X2luaXRUaW1lZnJhbWVzUmVuZGVyZXIoKXtpZighdGhpcy5fb3B0aW9ucy50aW1lZnJhbWUudmlzaWJsZSlyZXR1cm47e2NvbnN0IHQ9dGhpcy5fdGltZUZyYW1lT3B0aW9ucy5sZW5ndGg8MjtpZih0aGlzLl90aW1lZnJhbWVWaWV3Py51cGRhdGUoe2hpZGRlbjp0fSksKHRoaXMuX2VsVGltZWZyYW1lPz90aGlzLl9vcHRpb25zLnRpbWVmcmFtZS5jb250YWluZXIpPy5jbGFzc0xpc3QudG9nZ2xlKHcuaGlkZGVuLHQpLHQpcmV0dXJufWlmKHRoaXMuX2VsVGltZWZyYW1lKXJldHVybjt0aGlzLl9vcHRpb25zLnRpbWVmcmFtZS5jb250YWluZXI/dGhpcy5fZWxUaW1lZnJhbWU9dGhpcy5fb3B0aW9ucy50aW1lZnJhbWUuY29udGFpbmVyOih0aGlzLl9lbFRpbWVmcmFtZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9jb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5fZWxUaW1lZnJhbWUpKTtjb25zdCB0PSh0LGUpPT57Y29uc3QgaT10aGlzLl90aW1lRnJhbWVPcHRpb25zLmxlbmd0aDwyLHM9KDAsbC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9lbFRpbWVmcmFtZSk7cy5jbGFzc0xpc3QudG9nZ2xlKHcuaGlkZGVuLGkpLHRoaXMuX3RpbWVmcmFtZVZpZXc9bmV3IHQuVGltZUZyYW1lVmlld1JlbmRlcmVyKHMse25hbWU6Im1pbmljaGFydF90aW1lZnJhbWUiLGFjdGl2ZVJhbmdlOnRoaXMuX2FjdGl2ZVJhbmdlLHJhbmdlczp0aGlzLl9nZXRBdmFpbGFibGVUaW1lRnJhbWVzKCksb25TZWxlY3RSYW5nZTp0PT57dGhpcy5zZXRUaW1lZnJhbWUoe3ZhbHVlOnQsdHlwZToicGVyaW9kLWJhY2sifSl9LHNpemU6dGhpcy5fb3B0aW9ucy50aW1lZnJhbWUuc2l6ZSxoaWRkZW46aSx0aGVtZTplfSl9O1Byb21pc2UuYWxsKFtpLmUoMTIzODUpLGkuZSg4MDc4MiksaS5lKDMyMzg3KSxpLmUoNDQxNjIpXSkudGhlbihpLmJpbmQoaSwzOTU2MjUpKS50aGVuKChlPT57KHRoaXMuX29wdGlvbnMudGltZWZyYW1lLmdldFRoZW1lfHwoKCk9PlByb21pc2UucmVzb2x2ZSh2b2lkIDApKSkoKS50aGVuKChpPT50KGUsaSkpKX0pKX1fY3JlYXRlTGVnZW5kKCl7dGhpcy5fb3B0aW9ucy5sZWdlbmQmJnRoaXMuX29wdGlvbnMubGVnZW5kLnZpc2libGUmJlByb21pc2UuYWxsKFtpLmUoMzAzNzMpLGkuZSg1Njg5KSxpLmUoNjU4MyksaS5lKDMyMzg3KSxpLmUoMTY0NildKS50aGVuKGkuYmluZChpLDI5NzY1MCkpLnRoZW4oKHQ9PnQuY3JlYXRlTGVnZW5kKHRoaXMuX29wdGlvbnMubGVnZW5kLmNvbnRhaW5lcix0aGlzLl9vcHRpb25zLmxlZ2VuZC5pdGVtcykpKX1fZ2V0QXZhaWxhYmxlVGltZUZyYW1lcygpe2NvbnN0IHQ9W107Zm9yKGNvbnN0IGUgb2YgdGhpcy5fdGltZUZyYW1lT3B0aW9ucyl7aWYoIXRoaXMuX3RpbWVmcmFtZUlzQXZhaWxhYmxlKGUudmFsdWUpKWNvbnRpbnVlO2NvbnN0IGk9KDAsZi5jb252ZXJ0VGltZUZyYW1lVG9TdHIpKGUudmFsdWUpO3QucHVzaCh7dmFsdWU6aSx0ZXh0OmUudGV4dCxkZXNjcmlwdGlvbjplLmRlc2NyaXB0aW9ufSl9cmV0dXJuIHR9X3RpbWVmcmFtZUlzQXZhaWxhYmxlKHQpe2NvbnN0IGU9dGhpcy5fdGltZUZyYW1lT3B0aW9ucy5maW5kKChlPT4oMCxmLmFyZUVxdWFsVGltZUZyYW1lcykoZS52YWx1ZSx0KSkpO2lmKCFlKXJldHVybiExO2NvbnN0IGk9dGhpcy5tYWluUGxvdCgpLnN5bWJvbEluZm8oKTtpZighaXx8aS5wcm9fbmFtZSE9PXRoaXMuX21haW5QbG90LnN5bWJvbCgpKXJldHVybiEwO2lmKGkuaGFzX2ludHJhZGF5KXJldHVybiEwO3JldHVybiF1LkludGVydmFsLnBhcnNlKGUudGFyZ2V0UmVzb2x1dGlvbikuaXNJbnRyYWRheSgpfV9vbkNoYXJ0U2Vzc2lvbklzQ29ubmVjdGVkQ2hhbmdlZCh0KXt0IT09dGhpcy5fY29ubmVjdGVkJiYodD8odGhpcy5fY29ubmVjdGVkPSEwLCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9jb25uZWN0Q2FsbGJhY2smJnRoaXMuX2Nvbm5lY3RDYWxsYmFjaygpLHRoaXMuX2NoYXJ0U2Vzc2lvbj8uc3dpdGNoVGltZXpvbmUoIkV0Yy9VVEMiKSx0aGlzLl9yZXF1ZXN0RGF0YSgpKToodGhpcy5fY29ubmVjdGVkPSExLHRoaXMuX21haW5QbG90LmRpc2Nvbm5lY3QoKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQuZGlzY29ubmVjdCgpKSkpKX1fb25DaGFydFNlc3Npb25Dcml0aWNhbEVycm9yKCl7dGhpcy5fY29ubmVjdGVkPSExfV9jcmVhdGVUb29sdGlwRGF0ZUZvcm1hdHRlcigpe2NvbnN0IHQ9dS5JbnRlcnZhbC5wYXJzZSh0aGlzLnJlc29sdXRpb24oKSk7bGV0IGU7dGhpcy5faXNEV01SZXNvbHV0aW9uPXQuaXNEV00oKSx0aGlzLl93aWRnZXQudGltZVNjYWxlKCkuYXBwbHlPcHRpb25zKHt0aW1lVmlzaWJsZTohdGhpcy5faXNEV01SZXNvbHV0aW9uLHNlY29uZHNWaXNpYmxlOnQuaXNTZWNvbmRzKCl9KTtjb25zdHtkYXRlRm9ybWF0Omk9ImRkIE1NTSAneXkiLHRpbWVIb3Vyc0Zvcm1hdDpzPSIyNC1ob3VycyIsc3VwcHJlc3NUaWNrTWFya3M6YX09dGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnM7ZT10aGlzLl9pc0RXTVJlc29sdXRpb24/bmV3IGMuRGF0ZUZvcm1hdHRlcihpKTpuZXcgZC5EYXRlVGltZUZvcm1hdHRlcih7ZGF0ZUZvcm1hdDppLHRpbWVGb3JtYXQ6KDAsZy5nZXRUaW1lRm9ybWF0Rm9ySW50ZXJ2YWwpKHQscyl9KSx0aGlzLl9kYXRlVGltZUZvcm1hdHRlcj1lLHRoaXMuX3dpZGdldC5hcHBseU9wdGlvbnMoe2xvY2FsaXphdGlvbjp7dGltZUZvcm1hdHRlcjp0PT5lLmZvcm1hdChuZXcgRGF0ZSgxZTMqdCkpfSx0aW1lU2NhbGU6e3RpY2tNYXJrRm9ybWF0dGVyOkguYmluZChudWxsLHMsYSx0aGlzLl90aW1lZnJhbWUudmFsdWUoKSl9fSksdGhpcy5fd2lkZ2V0LmFwcGx5T3B0aW9ucyh7dGltZVNjYWxlOnsKdGltZVZpc2libGU6IXUuSW50ZXJ2YWwucGFyc2UodGhpcy5fbWFpblBsb3QucmVzb2x1dGlvbigpKS5pc0RXTSgpfX0pfV9yZXF1ZXN0RGF0YSgpe3RoaXMuX2NyZWF0ZVRvb2x0aXBEYXRlRm9ybWF0dGVyKCksdGhpcy5fY2xlYXJSZWNvbm5lY3Rpb25UaW1lb3V0KCksdGhpcy5fbWFpblBsb3QucmVxdWVzdERhdGEoKSx0aGlzLl9zdHVkeVBsb3RzLmZvckVhY2goKHQ9PnQucmVxdWVzdERhdGEoKSkpfV9vbkRhdGEodCl7aWYodGhpcy5fbWFpblBsb3QuaXNDb25uZWN0ZWQoKSlzd2l0Y2godC5tZXRob2Qpe2Nhc2UidGltZXNjYWxlX3VwZGF0ZSI6e2NvbnN0IGU9dC5wYXJhbXM7aWYoZS5jbGVhcil7dGhpcy5fdGlja21hcmtzLmNsZWFyKCksdGhpcy5fbWFpblBsb3QuY2xlYXJTb3VyY2VEYXRhKCk7Zm9yKGNvbnN0IHQgb2YgdGhpcy5fc3R1ZHlQbG90cyl0LmNsZWFyU291cmNlRGF0YSgpfWlmKGUuaW5kZXhfZGlmZi5sZW5ndGg+MCl7dGhpcy5fbWFpblBsb3QubW92ZVNvdXJjZURhdGEoZS5pbmRleF9kaWZmKTtmb3IoY29uc3QgdCBvZiB0aGlzLl9zdHVkeVBsb3RzKXQubW92ZVNvdXJjZURhdGEoZS5pbmRleF9kaWZmKX1jb25zdCBpPWUubWFya3M7bGV0IHM9MS8wLGE9LTEvMDtmb3IoY29uc3QgdCBvZiBpKXRoaXMuX3RpY2ttYXJrcy5oYXModC5pbmRleCl8fChzPU1hdGgubWluKHMsdC5pbmRleCksYT1NYXRoLm1heChhLHQuaW5kZXgpKSx0aGlzLl90aWNrbWFya3Muc2V0KHQuaW5kZXgsdCk7TnVtYmVyLmlzRmluaXRlKHMpJiZ0aGlzLl9tYWluUGxvdC5vblRpY2ttYXJrc0FkZGVkKHMsYSksdGhpcy5fc2F2ZUNhY2hlKCk7YnJlYWt9fX1fb25TeW1ib2xSZXNvbHZlZCgpe3RoaXMudXBkYXRlQXZhaWxhYmxlVGltZWZyYW1lcygpLHRoaXMuX2luaXRUaW1lZnJhbWVzUmVuZGVyZXIoKX1fb25UaW1lRnJhbWVJbnZhbGlkYXRlZCgpe3RoaXMuX2FjdGl2ZVJhbmdlPXZvaWQgMCx0aGlzLl90aW1lZnJhbWVWaWV3Py51cGRhdGUoe2FjdGl2ZVJhbmdlOnZvaWQgMH0pfV9zaG93TG9hZGluZygpe2lmKHRoaXMuX2lzTG9hZGluZylyZXR1cm47dGhpcy5oaWRlTWVzc2FnZSgpO2NvbnN0IHQ9dGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnMubG9hZGluZzt0LnNwaW5uZXIudmlzaWJsZSYmKG51bGw9PT10aGlzLl9zcGlubmVyJiYodGhpcy5fc3Bpbm5lcj1uZXcgdi5TcGlubmVyKCJtaW5pIikuc2V0U3R5bGUoe2NvbG9yOnQuc3Bpbm5lci5jb2xvcix3aWR0aDp0LnNwaW5uZXIud2lkdGgudG9TdHJpbmcoKSx6SW5kZXg6IjEwIn0pKSx0aGlzLl9zcGlubmVyLnNwaW4odGhpcy5faW5uZXJDb250YWluZXIpKSx0LmZhZGUudmlzaWJsZSYmdGhpcy5faW5uZXJDb250YWluZXIuY2xhc3NMaXN0LmFkZCh3LmZhZGUpLHRoaXMuX2lzTG9hZGluZz0hMH1faGlkZUxvYWRpbmcoKXt0aGlzLl9pc0xvYWRpbmcmJih0aGlzLl9zcGlubmVyJiZ0aGlzLl9zcGlubmVyLnN0b3AoKSx0aGlzLl9pc0xvYWRpbmc9ITEpfV9yZXF1ZXN0RGF0YU9uVGltZWZyYW1lQ2hhbmdlKCl7dGhpcy5fb3B0aW9ucy5jaGFydE9wdGlvbnMubG9hZGluZy5jbGVhckRhdGFPblRpbWVmcmFtZUNoYW5nZSYmKHRoaXMuX3N0dWR5UGxvdHMuZm9yRWFjaCgodD0+dC5jbGVhckRhdGEoKSkpLHRoaXMuX3N0dWR5UGxvdHMuZm9yRWFjaCgodD0+dC5kZWxldGVWaWV3KCkpKSx0aGlzLm1haW5QbG90KCkuY2xlYXJEYXRhKCksdGhpcy5tYWluUGxvdCgpLmRlbGV0ZVZpZXcoKSksdGhpcy5jb25uZWN0ZWQoKT90aGlzLl9yZXF1ZXN0RGF0YSgpOnRoaXMuY29ubmVjdCgpfV91cGRhdGVTdGF0dXMoKXtjb25zdCB0PVt0aGlzLl9tYWluUGxvdC5zdGF0dXMoKS52YWx1ZSgpLC4uLnRoaXMuX3N0dWR5UGxvdHMubWFwKCh0PT50LnN0YXR1cygpLnZhbHVlKCkpKV0sZT10LmV2ZXJ5KCh0PT4wIT09dCkpPzM9PT10WzBdPyJyZWFkeSI6ImVycm9yIjoibG9hZGluZyI7dGhpcy5fc3RhdHVzLnNldFZhbHVlKGUpfV90aW1lU2NhbGVTaXplQ2hhbmdlZEhhbmRsZXIodCxlKXt0aGlzLl90aW1lU2NhbGVTaXplQ2hhbmdlZC5maXJlKHQsZSl9fX0sMTQ2MDU4KHQsZSxpKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcyh0KXtyZXR1cm4gdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IikuaXRlbSgwKT8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRhYmxlIikuaXRlbSgwKT8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRyIikuaXRlbSgwKT8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRkIikuaXRlbSgxKT8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpLml0ZW0oMCk/P251bGx9aS5kKGUse2dldENoYXJ0TGF5b3V0Q29udGFpbmVyOigpPT5zfSl9LDU4NjI0Nyh0LGUsaSl7InVzZSBzdHJpY3QiO2kuZChlLHtNaW5pQ2hhcnRQbG90OigpPT5jfSk7dmFyIHMsYT1pKDc0MDE2Mik7IWZ1bmN0aW9uKHQpe3QuRGVmYXVsdD0iZGVmYXVsdCIsdC5GdWxsU2luZ2xlU2Vzc2lvbj0iZnVsbF9zaW5nbGVfc2Vzc2lvbiJ9KHN8fChzPXt9KSk7dmFyIG49aSg5MzYzMjYpLHI9aSg4NTcxNTEpLG89aSgxMjE0NzkpLGg9aSg4MzcyMDMpLGw9aSgyNDIxNzEpO2NsYXNzIGMgZXh0ZW5kcyBsLk1pbmlDaGFydFBsb3RCYXNle2NvbnN0cnVjdG9yKHQsZSxpLHMsbixyKXtzdXBlcih0LGUsaSxuKSx0aGlzLl9zZXJpZXNEYXRhU291cmNlPW51bGwsdGhpcy5fY2FjaGVkRGF0YT1udWxsLHRoaXMuX3N0dWR5UGxvdHM9cyx0aGlzLl9vcHRpb25zPW4sdGhpcy5faG9yek1hcmdpbnM9KDAsYS5kZWZhdWx0KSh7fSxsLnNlcmllc0hvcnpNYXJnaW5zRGVmYXVsdHMsZS5ob3J6TWFyZ2lucyksciYmdGhpcy5fbG9hZENhY2hlKHIpfWRlc3Ryb3koKXt0aGlzLl9zZXJpZXNEYXRhU291cmNlPy5kZXN0cm95KCksc3VwZXIuZGVzdHJveSgpfXVwZGF0ZUhvcnpNYXJnaW5zKHQpe3RoaXMuX2hvcnpNYXJnaW5zPSgwLGEuZGVmYXVsdCkodGhpcy5faG9yek1hcmdpbnMsdCksdGhpcy5fbWluaUNoYXJ0LmZpdENvbnRlbnQoKX1yZWxvYWRDYWNoZSh0KXt0aGlzLl9jYWNoZT10LHQ/dGhpcy5fbG9hZENhY2hlKHQpOih0aGlzLl9taW5CYXJJbmRleD1udWxsLHRoaXMuX21heEJhckluZGV4PW51bGwsCnRoaXMuX2NhY2hlZERhdGE9bnVsbCx0aGlzLl9vbkRhdGEoKS50aGVuKCgoKT0+e3RoaXMuZml0Q29udGVudCgpfSkpKX1yZXF1ZXN0RGF0YSgpe2NvbnN0IHQ9dGhpcy5fZ2V0U2VyaWVzRGF0YVNvdXJjZSgpO3RoaXMuX3N0YXR1cy5zZXRWYWx1ZSgwKSx0aGlzLl9ub0RhdGEuc2V0VmFsdWUobnVsbCksdC5tb2RpZnlTZXJpZXModGhpcy5leHRlbmRlZFN5bWJvbCgpLCgwLG8uZ2V0U2VydmVySW50ZXJ2YWwpKHRoaXMucmVzb2x1dGlvbigpKSx0aGlzLl9taW5pQ2hhcnQudGltZWZyYW1lKCkudmFsdWUoKSksdC5pc1N0YXJ0ZWQoKXx8dC5zdGFydCgpfWNsZWFyU291cmNlRGF0YSgpe3RoaXMuX3Nlcmllc0RhdGFTb3VyY2U/LmNsZWFyRGF0YSgpLHRoaXMuX3N0dWR5UGxvdHMoKS5mb3JFYWNoKCh0PT50LmNsZWFyU291cmNlRGF0YSgpKSl9bW92ZVNvdXJjZURhdGEodCl7dGhpcy5fc2VyaWVzRGF0YVNvdXJjZT8ubW92ZURhdGEodCl9b25UaWNrbWFya3NBZGRlZCh0LGUpe2NvbnN0IGk9dGhpcy5tYXhCYXJJbmRleCgpO3RoaXMuX2lzTGFzdFNlc3Npb25JbnRlcnZhbC52YWx1ZSgpJiZudWxsIT09aSYmaT49dCYmaTw9ZSYmKHRoaXMudXBkYXRlRGF0YSghMSwhMCksdGhpcy5maXRDb250ZW50KCkpfWRpc2Nvbm5lY3QoKXt0aGlzLl9zZXJpZXNEYXRhU291cmNlPy5zdG9wKCl9aXNDb25uZWN0ZWQoKXtyZXR1cm4gQm9vbGVhbih0aGlzLl9zZXJpZXNEYXRhU291cmNlPy5pc1N0YXJ0ZWQoKSl9Y2xlYXJEYXRhKCl7aWYoc3VwZXIuY2xlYXJEYXRhKCksdGhpcy5fbWluQmFySW5kZXg9bnVsbCx0aGlzLl9tYXhCYXJJbmRleD1udWxsLG51bGwhPT10aGlzLl9zZXJpZXNEYXRhU291cmNlJiYodGhpcy5fc2VyaWVzRGF0YVNvdXJjZS5zdG9wKCksdGhpcy5jbGVhclNvdXJjZURhdGEoKSksdGhpcy5fY2FjaGUpe2NvbnN0e21pbkJhckluZGV4OnQsbWF4QmFySW5kZXg6ZSxzeW1ib2xJbmZvOml9PXRoaXMuX2NhY2hlO3RoaXMuX21pbkJhckluZGV4PXQsdGhpcy5fbWF4QmFySW5kZXg9ZSxpJiYodGhpcy5fc3ltYm9sSW5mbz1pLHRoaXMuX3N5bWJvbEluZm9XVi5zZXRWYWx1ZShpKSx0aGlzLl9pbml0QmFyQnVpbGRlcihpKS50aGVuKCgoKT0+e3RoaXMuX2lzRGVzdHJveWVkLnZhbHVlKCl8fHRoaXMuX29uRGF0YSgpLnRoZW4oKCgpPT57dGhpcy5maXRDb250ZW50KCl9KSl9KSkpfX1zZXJpZXNEYXRhU291cmNlKCl7cmV0dXJuIHRoaXMuX2dldFNlcmllc0RhdGFTb3VyY2UoKX1maXJzdEJhcigpe3JldHVybigwLGwuaXNUaW1lUG9pbnRJbmRleCkodGhpcy5fbWluQmFySW5kZXgpP3RoaXMuX2JhcnMoKS5zZWFyY2godGhpcy5fbWluQmFySW5kZXgpOnRoaXMuX2JhcnMoKS5maXJzdCgpfWxhc3RCYXIoKXtyZXR1cm4oMCxsLmlzVGltZVBvaW50SW5kZXgpKHRoaXMuX21heEJhckluZGV4KT90aGlzLl9iYXJzKCkuc2VhcmNoKHRoaXMuX21heEJhckluZGV4LG4uUGxvdFJvd1NlYXJjaE1vZGUuTmVhcmVzdExlZnQpOnRoaXMuX2JhcnMoKS5sYXN0KCl9Y2FjaGVEYXRhKCl7Y29uc3QgdD10aGlzLl9zZXJpZXNEYXRhU291cmNlPy5kYXRhKCk/LmNsb25lKCksZT10aGlzLl9zeW1ib2xJbmZvLGk9dGhpcy5fbWluQmFySW5kZXgscz10aGlzLl9tYXhCYXJJbmRleDtyZXR1cm4gdCYmbnVsbCE9PWUmJm51bGwhPT1pJiZudWxsIT09cz97ZGF0YTp0LHN5bWJvbEluZm86ZSxtaW5CYXJJbmRleDppLG1heEJhckluZGV4OnN9Om51bGx9Zml0Q29udGVudCgpe2lmKG51bGw9PT10aGlzLl9kYXRhTGVuZ3RoSW5mb3x8MD09PXRoaXMuX2RhdGFMZW5ndGhJbmZvLmhpc3RvcnkpcmV0dXJuO2NvbnN0e2hpc3Rvcnk6dCxyZWFsdGltZTplLHdoaXRlc3BhY2VzOmksbGFzdEJhclRpbWU6cyxmaXhMZWZ0RWRnZVVudGlsOmE9MH09dGhpcy5fZGF0YUxlbmd0aEluZm8sbj10aGlzLl9taW5pQ2hhcnQud2lkZ2V0KCkscj1uLnBhbmVTaXplKCkud2lkdGg7aWYoMD09PXIpcmV0dXJuO2NvbnN0e2xlZnRMb2dpY2FsOm8scmlnaHRMb2dpY2FsOmgsbGVmdFB4OmwscmlnaHRQeDpjfT10aGlzLl9ob3J6TWFyZ2lucztsZXQgZD10aGlzLl9maXRDb250ZW50TGVmdEluZGV4KCktby0obnVsbD09PXN8fGE+PXM/MDplKSxtPU1hdGgubWF4KGQsTWF0aC5tYXgoMCx0LTEpK2graStlKTtpZigwIT09bCl7ZC09bC8oKHItbCkvKG0tZCsxKSl9aWYoMCE9PWMpe20rPWMvKChyLWMpLyhtLWQrMSkpfWlmKG09TWF0aC5tYXgoZCxtKSxtLWQ8MSl7Y29uc3QgdD0oMS0obS1kKSkvMjtkLT10LG0rPXR9bi50aW1lU2NhbGUoKS5zZXRWaXNpYmxlTG9naWNhbFJhbmdlKHtmcm9tOmQsdG86bX0pLG4udGltZVNjYWxlKCkuYXBwbHlPcHRpb25zKHtsb2NrVmlzaWJsZVRpbWVSYW5nZU9uUmVzaXplOiEwfSl9X2ZpdENvbnRlbnRMZWZ0SW5kZXgoKXtyZXR1cm4gMH1fdXBkYXRlU2VyaWVzT3B0aW9ucyh0KXtzdXBlci5fdXBkYXRlU2VyaWVzT3B0aW9ucyh0KSx0LmhvcnpNYXJnaW5zJiZ0aGlzLnVwZGF0ZUhvcnpNYXJnaW5zKHQuaG9yek1hcmdpbnMpfV9pc01haW5QbG90KCl7cmV0dXJuITB9X2RhdGFVcGRhdGVkKHQsZSxpKXtpZihzdXBlci5fZGF0YVVwZGF0ZWQodCxlLGkpLCF0aGlzLl9pc0xhc3RTZXNzaW9uSW50ZXJ2YWwudmFsdWUoKXx8IXRoaXMuX21pbmlDaGFydC5zdXBwb3J0UmVhbHRpbWVVcGRhdGVzKCl8fCFpKXJldHVybjtjb25zdCBzPWkubGFzdEJhclNlc3Npb247MCE9PXMmJjEhPT1zJiYzIT09c3x8MiE9PWUubGFzdEJhclNlc3Npb258fFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCgpPT57dGhpcy5fbWluaUNoYXJ0LnNldFRpbWVmcmFtZSh0aGlzLl9taW5pQ2hhcnQudGltZWZyYW1lKCkudmFsdWUoKSwhMSwhMCl9KSl9X29uQ2hhcnRTdHlsZUNoYW5nZWQoKXtzdXBlci5fb25DaGFydFN0eWxlQ2hhbmdlZCgpLHRoaXMuX3N0dWR5UGxvdHMoKS5mb3JFYWNoKCh0PT50LnVwZGF0ZVNlcmllc09wdGlvbnMoe2NoYXJ0VHlwZTp0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy5jaGFydFR5cGV9KSkpfV9iZWZvcmVEYXRhUmVhZHkoKXtzdXBlci5fYmVmb3JlRGF0YVJlYWR5KCksCnRoaXMuX3N0dWR5UGxvdHMoKS5mb3JFYWNoKCh0PT50LmRlbGV0ZVZpZXcoKSkpfV9nZXRTZXJpZXNEYXRhU291cmNlKCl7aWYobnVsbD09PXRoaXMuX3Nlcmllc0RhdGFTb3VyY2Upe2NvbnN0IHQ9dGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMuaW5pdGlhbFJlcXVlc3RPcHRpb25zLGU9dGhpcy5fc2VyaWVzRGF0YVNvdXJjZT1uZXcgaC5TZXJpZXNEYXRhU291cmNlKHRoaXMuY2hhcnRTZXNzaW9uKCksInMiLHQpLGk9ZS5kYXRhRXZlbnRzKCk7aS5zeW1ib2xSZXNvbHZlZCgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uU3ltYm9sUmVzb2x2ZWQpLGkuc3ltYm9sTm90UGVybWl0dGVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TeW1ib2xOb3RQZXJtaXR0ZWQpLGkuc3ltYm9sR3JvdXBOb3RQZXJtaXR0ZWQoKS5zdWJzY3JpYmUodGhpcyx0aGlzLl9vblN5bWJvbEdyb3VwTm90UGVybWl0dGVkKSxpLmludHJhZGF5U3ByZWFkTm90UGVybWl0dGVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25JbnRyYWRheVNwcmVhZE5vdFBlcm1pdHRlZCksaS5zeW1ib2xJbnZhbGlkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TeW1ib2xJbnZhbGlkKSxpLnN5bWJvbEVycm9yKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TeW1ib2xFcnJvciksaS5pbnRyYWRheUV4Y2hhbmdlTm90UGVybWl0dGVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25SZXNvbHV0aW9uT3JFeGNoYW5nZU5vdFBlcm1pdHRlZEVycm9yKSxpLmN1c3RvbUludGVydmFsTm90UGVybWl0dGVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25SZXNvbHV0aW9uT3JFeGNoYW5nZU5vdFBlcm1pdHRlZEVycm9yKSxpLmNvbXBsZXRlZCgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uRGF0YUNvbXBsZXRlZCksaS5zZXJpZXNFcnJvcigpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uRGF0YUVycm9yKSxpLnNlcmllc1RpbWVGcmFtZSgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uVGltZUZyYW1lKSxpLmRhdGFVcGRhdGVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25EYXRhSW50ZXJuYWwpLGkuY3JlYXRlZCgpLnN1YnNjcmliZShudWxsLCgoKT0+cGVyZm9ybWFuY2UubWFyaygiUkZEIix7ZGV0YWlsOiJSZXF1ZXN0IGZpcnN0IGRhdGEifSkpLCEwKSxpLmNyZWF0ZWQoKS5zdWJzY3JpYmUobnVsbCwoKCk9PmUuc2V0RnV0dXJlVGlja21hcmtzTW9kZShzLkZ1bGxTaW5nbGVTZXNzaW9uKSkpLGkuZGF0YVVwZGF0ZWQoKS5zdWJzY3JpYmUobnVsbCwoKCk9PntwZXJmb3JtYW5jZS5tYXJrKCJGRFIiLHtkZXRhaWw6IkZpcnN0IGRhdGEgcmVzcG9uc2UifSkscGVyZm9ybWFuY2UubWVhc3VyZSgiUmVzcG9uc2UgaWRsZSIsIlJGRCIsIkZEUiIpfSksITApfXJldHVybiB0aGlzLl9zZXJpZXNEYXRhU291cmNlfV9iYXJzKCl7cmV0dXJuIHRoaXMuX2NhY2hlZERhdGE/dGhpcy5fY2FjaGVkRGF0YS5zZXJpZXNEYXRhLmJhcnMoKTp0aGlzLl9zZXJpZXNEYXRhU291cmNlPy5kYXRhKCkuYmFycygpPz9uZXcgci5QbG90TGlzdH1fb25UaW1lRnJhbWUodCxlKXt0aGlzLl9jYWNoZWREYXRhfHwodGhpcy5fbWluQmFySW5kZXg9dCx0aGlzLl9tYXhCYXJJbmRleD1lKSx0aGlzLnVwZGF0ZURhdGEoITEpLHRoaXMuX3N0dWR5UGxvdHMoKS5mb3JFYWNoKCh0PT50LnVwZGF0ZURhdGEoITEsITApKSl9X29uRGF0YUNvbXBsZXRlZCgpe3RoaXMuX2NhY2hlZERhdGEmJih0aGlzLl9jYWNoZWREYXRhPW51bGwpLHRoaXMudXBkYXRlRGF0YSghMSwhMCksc3VwZXIuX29uRGF0YUNvbXBsZXRlZCgpLHRoaXMuZml0Q29udGVudCgpfV9vbkRhdGFJbnRlcm5hbCh0LGUsaSl7dGhpcy5fb25EYXRhKGU/dm9pZCAwOmk/LmluZGV4KX1hc3luYyBfbG9hZENhY2hlKHQpe2NvbnN0e2RhdGE6ZSxzeW1ib2xJbmZvOmksbWluQmFySW5kZXg6cyxtYXhCYXJJbmRleDphfT10O3RoaXMuX21pbkJhckluZGV4PXMsdGhpcy5fbWF4QmFySW5kZXg9YSx0aGlzLl9jYWNoZWREYXRhPXtzeW1ib2w6dGhpcy5leHRlbmRlZFN5bWJvbCgpLHJlc29sdXRpb246dGhpcy5yZXNvbHV0aW9uKCksdGltZUZyYW1lOnRoaXMuX21pbmlDaGFydC50aW1lZnJhbWUoKS52YWx1ZSgpLHNlcmllc0RhdGE6ZX0sdGhpcy5fc3ltYm9sSW5mbz1pLHRoaXMuX3N5bWJvbEluZm9XVi5zZXRWYWx1ZShpKTtjb25zdCBuPWF3YWl0IHRoaXMuX2luaXRCYXJCdWlsZGVyKGkpOyF0aGlzLl9pc0Rlc3Ryb3llZC52YWx1ZSgpJiZ0aGlzLl9zeW1ib2xJbmZvJiYodGhpcy5fc3ltYm9sSW5mbyE9PWkmJm4udXBkYXRlKHRoaXMuX3N5bWJvbEluZm8pLGF3YWl0IHRoaXMuX29uRGF0YSgpLHRoaXMuX3N0YXR1cy5zZXRWYWx1ZSgzKSx0aGlzLmZpdENvbnRlbnQoKSl9fX0sNjk1OTQ2KHQsZSxpKXsidXNlIHN0cmljdCI7aS5kKGUse1ByZXR0eUhpc3RvZ3JhbVNlcmllczooKT0+bn0pO2NvbnN0IHM9ey4uLmkoNjc4MzEyKS5jdXN0b21TZXJpZXNEZWZhdWx0T3B0aW9ucyxjb2xvcjoiI0Q2Mzg2NCIsd2lkdGhQZXJjZW50OjUwLHJhZGl1czo0fTtjbGFzcyBhe2NvbnN0cnVjdG9yKCl7dGhpcy5fZGF0YT1udWxsLHRoaXMuX29wdGlvbnM9bnVsbH1kcmF3KHQsZSl7dC51c2VCaXRtYXBDb29yZGluYXRlU3BhY2UoKHQ9PnRoaXMuX2RyYXdJbXBsKHQsZSkpKX11cGRhdGUodCxlKXt0aGlzLl9kYXRhPXQsdGhpcy5fb3B0aW9ucz1lfV9kcmF3SW1wbCh0LGUpe2lmKG51bGw9PT10aGlzLl9kYXRhfHwwPT09dGhpcy5fZGF0YS5iYXJzLmxlbmd0aHx8bnVsbD09PXRoaXMuX2RhdGEudmlzaWJsZVJhbmdlfHxudWxsPT09dGhpcy5fb3B0aW9ucylyZXR1cm47Y29uc3QgaT10aGlzLl9vcHRpb25zLHM9dGhpcy5fZGF0YS5iYXJzLm1hcCgocz0+KHt4OnMueCp0Lmhvcml6b250YWxQaXhlbFJhdGlvLHZhbHVlOmUocy5vcmlnaW5hbERhdGEudmFsdWUpPz9OYU4sY29sb3I6cy5iYXJDb2xvcj8/aS5jb2xvcn0pKSksYT1lKDApPz8wLG49dC5jb250ZXh0O2xldCByPW51bGw7bi5iZWdpblBhdGgoKQo7Y29uc3Qgbz1NYXRoLm1heCgxLE1hdGgucm91bmQoLjAxKmkud2lkdGhQZXJjZW50KnRoaXMuX2RhdGEuYmFyU3BhY2luZyp0Lmhvcml6b250YWxQaXhlbFJhdGlvKSksaD1NYXRoLmZsb29yKGkucmFkaXVzKnQuaG9yaXpvbnRhbFBpeGVsUmF0aW8pO3Muc2xpY2UodGhpcy5fZGF0YS52aXNpYmxlUmFuZ2UuZnJvbSx0aGlzLl9kYXRhLnZpc2libGVSYW5nZS50bysxKS5mb3JFYWNoKChlPT57Y29uc3QgaT1lLmNvbG9yO251bGwhPT1yJiZyIT09aSYmKG4uZmlsbCgpLG4uYmVnaW5QYXRoKCkpLG4uZmlsbFN0eWxlPWk7Y29uc3Qgcz1mdW5jdGlvbih0LGUsaSl7Y29uc3Qgcz1NYXRoLnJvdW5kKGkqdCksYT1NYXRoLnJvdW5kKGkqZSk7cmV0dXJue3Bvc2l0aW9uOk1hdGgubWluKHMsYSksbGVuZ3RoOk1hdGguYWJzKGEtcykrMX19KGEsZS52YWx1ZSx0LnZlcnRpY2FsUGl4ZWxSYXRpbyksbD1NYXRoLmZsb29yKE1hdGgubWluKGgsby8yLE1hdGguYWJzKHMubGVuZ3RoKSkpLGM9TWF0aC5yb3VuZChlLngtby8yKTtuLnJvdW5kUmVjdChjLHMucG9zaXRpb24sbyxzLmxlbmd0aCxlLnZhbHVlPGE/W2wsbCwwLDBdOlswLDAsbCxsXSkscj1pfSkpLG4uZmlsbCgpfX1jbGFzcyBue2NvbnN0cnVjdG9yKCl7dGhpcy5fcmVuZGVyZXI9bmV3IGF9cHJpY2VWYWx1ZUJ1aWxkZXIodCl7cmV0dXJuW3QudmFsdWVdfWlzV2hpdGVzcGFjZSh0KXtyZXR1cm4gdm9pZCAwPT09dC52YWx1ZX1yZW5kZXJlcigpe3JldHVybiB0aGlzLl9yZW5kZXJlcn11cGRhdGUodCxlKXt0aGlzLl9yZW5kZXJlci51cGRhdGUodCxlKX1kZWZhdWx0T3B0aW9ucygpe3JldHVybiBzfX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/blocks/overflow-tooltips.6c9e7a9e84cff3e7568d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.808Z","timestamp":1785154590808,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/blocks/overflow-tooltips.6c9e7a9e84cff3e7568d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-371b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:30:00\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 06fd72b18344cd747f2f646939dc5331\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":14107,"size_decoded":6408,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3064)","md5":"8585e73b106451afec7d614976670c9c","sha1":"56604fcba10488e8973efe787e3ea4ac668118e0","sha256":"9abfa28c773fb1a5727ed06a299c38baff4e03029964fb0042de5cfc2b048c88","sha512":"7ca2da55902be17c9a1cb6602c8cf11283359e79f7efaebef96f5fcc2e67173273bfaefa99b490826dfa8ed9b3661ba7d7135fbaa68fbc8a875caaf10b9bab35","ssdeep":"384:TCXScxJ9CdRRDnOaiOSRePsUaArNaMg4Da7CHLHI8abmvUho:OCcxJ9CdRpnOadSRePsUagNaRaa7CrH5","tlshash":"e152e8f2338b35b122d505a7687b6344fb395884b84b4470b569d8e52c2adcbe2f3d6c","first_seen":"2026-07-24T21:10:00.124032Z","last_seen":"2026-07-27T14:14:25.422549Z","times_seen":141,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMjA2OTEsMzU2NTddLHszNzcyMjYoZSx0LG4pe24uZCh0LHtvbldpZGdldDooKT0+cn0pO2NvbnN0IG89bmV3IE1hcDtmdW5jdGlvbiByKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxuPWAke3R9JHtlfWA7cmV0dXJuIG8uaGFzKG4pfHxvLnNldChuLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbj1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG4paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IG89WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxyPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IGk7Zm9yKGxldCBlPW8ubGVuZ3RoLTE7ZT49MDtlLS0paWYoaT1uZXcgUmVnRXhwKG9bZV0pLGkudGVzdChyKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksby5nZXQobik/PyExfX0sNzI3MDkoZSx0LG4pe24uZCh0LHtjcmVhdGVHcm91cDooKT0+c30pO3ZhciBvPW4oMjkxMzQxKSxyPW4oNzc5Mzg5KTtjb25zdCBpPW5ldyBvLkFjdGlvbk1hbmFnZXI7aS5wcmVzc2VkS2V5cygpLGkua2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4gbmV3IHIuQWN0aW9uR3JvdXAoaSxlKX19LDIzNTcyNChlLHQsbil7bi5kKHQse01vZGlmaWVyczooKT0+cyxoYXNoRnJvbUV2ZW50OigpPT5hLGlzTWFjS2V5Ym9hcmQ6KCk9PmksbW9kaWZpZXJzRnJvbUV2ZW50OigpPT5jfSk7dmFyIG8scj1uKDczODQ1OCk7IWZ1bmN0aW9uKGUpe2VbZS5LZXlDb2RlPTI1NV09IktleUNvZGUiLGVbZS5Db250cm9sPTI1Nl09IkNvbnRyb2wiLGVbZS5BbHQ9NTEyXT0iQWx0IixlW2UuU2hpZnQ9MTAyNF09IlNoaWZ0IixlW2UuTWV0YT0yMDQ4XT0iTWV0YSJ9KG98fChvPXt9KSk7Y29uc3QgaT1yLmlzTWFjfHxyLmlzSU9TO3ZhciBzO2Z1bmN0aW9uIGMoZSl7bGV0IHQ9MDtyZXR1cm4gZS5zaGlmdEtleSYmKHQrPTEwMjQpLGUuYWx0S2V5JiYodCs9NTEyKSxlLmN0cmxLZXkmJih0Kz0yNTYpLGUubWV0YUtleSYmKHQrPTIwNDgpLHR9ZnVuY3Rpb24gYShlKXtyZXR1cm4gYyhlKXxlLmtleUNvZGV9IWZ1bmN0aW9uKGUpe2VbZS5Ob25lPTBdPSJOb25lIixlW2UuQWx0PTUxMl09IkFsdCIsZVtlLlNoaWZ0PTEwMjRdPSJTaGlmdCIsZVtlLk1vZD1pPzIwNDg6MjU2XT0iTW9kIixlW2UuQ29udHJvbD0yNTZdPSJDb250cm9sIixlW2UuTWV0YT0yMDQ4XT0iTWV0YSJ9KHN8fChzPXt9KSk7Y29uc3QgbD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4Omk/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0sdT17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCBlPTE7ZTw9MTY7ZSsrKWxbZSsxMTFdPWBGJHtlfWAsdVtlKzExMV09YEYke2V9YH0sNzIxMzY5KGUsdCxuKXtuLmQodCx7aXNOYXRpdmVVSUludGVyYWN0aW9uOigpPT5pfSk7dmFyIG89bigyMzU3MjQpO2Z1bmN0aW9uIHIoZSl7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7cmV0dXJuInRleHQiPT09dHx8ImVtYWlsIj09PXR8fCJudW1iZXIiPT09dHx8InBhc3N3b3JkIj09PXR8fCJzZWFyY2giPT09dHx8InRlbCI9PT10fHwidXJsIj09PXR9cmV0dXJuIlRFWFRBUkVBIj09PWUudGFnTmFtZXx8ZS5pc0NvbnRlbnRFZGl0YWJsZX1mdW5jdGlvbiBpKGUsdCl7aWYoIXQpcmV0dXJuITE7Y29uc3Qgbj0yNTUmZTtpZigyNz09PW58fG4+Pj40PT03KXJldHVybiExO3N3aXRjaChlXm4pe2Nhc2Ugby5Nb2RpZmllcnMuQWx0OnJldHVybigzOD09PW58fDQwPT09bikmJiJTRUxFQ1QiPT09dC50YWdOYW1lfHxyKHQpO2Nhc2Ugby5Nb2RpZmllcnMuQWx0K28uTW9kaWZpZXJzLlNoaWZ0OnJldHVybiByKHQpCjtjYXNlIG8uTW9kaWZpZXJzLk1vZDppZig2Nz09PW58fCFvLmlzTWFjS2V5Ym9hcmQmJjQ1PT09bil7Y29uc3QgZT10Lm93bmVyRG9jdW1lbnQmJnQub3duZXJEb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtpZihlJiYhZS5pc0NvbGxhcHNlZClyZXR1cm4hMH1yZXR1cm4gcih0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gbj49MzMmJm48PTQwJiZyKHQpO2Nhc2Ugby5Nb2RpZmllcnMuU2hpZnQ6Y2FzZSAwOnJldHVybiA5PT09bj8hKCF0Lm93bmVyRG9jdW1lbnR8fHQ9PT10Lm93bmVyRG9jdW1lbnQuYm9keXx8dD09PXQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOighZnVuY3Rpb24oZSl7aWYoIkJVVFRPTiI9PT1lLnRhZ05hbWUpcmV0dXJuITA7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7aWYoInN1Ym1pdCI9PT10fHwiYnV0dG9uIj09PXR8fCJyZXNldCI9PT10fHwiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpcmV0dXJuITB9cmV0dXJuITF9KHQpfHwxMz09PW58fDMyPT09bnx8OT09PW4pJiYoImZvcm0iaW4gdHx8dC5pc0NvbnRlbnRFZGl0YWJsZSl9cmV0dXJuITF9fSw1MTg3NShlLHQsbil7ZnVuY3Rpb24gbyhlKXtlLnByZXZlbnREZWZhdWx0KCl9bi5kKHQse3ByZXZlbnREZWZhdWx0OigpPT5vfSl9LDY0MDc0NChlLHQsbil7ZnVuY3Rpb24gbyhlLHQsbil7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGUsdCksbil9bi5kKHQse2NsYW1wOigpPT5vfSl9LDIzMjM2NChlLHQsbil7bi5kKHQse1dhdGNoZWRWYWx1ZTooKT0+aX0pO2NvbnN0IG89KDAsbigyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiByKGUpe28ubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3MgaXtjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG49dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihuLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgbz1uLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihuLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmbyYmbi5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO24uX3ZhbHVlPWU7Y29uc3QgaT1uLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgcz0wO2ZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7dCsrKXtpW3RdLm9uY2UmJihuLl9saXN0ZW5lcnMuc3BsaWNlKHQtcywxKSxzKyspO3RyeXtpW3RdLmNiKGUpfWNhdGNoKGUpe3IoZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBuPSEhdCYmISF0Lm9uY2Usbz0hIXQmJiEhdC5jYWxsV2l0aExhc3QsaT10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKG8mJmkuaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShpLl92YWx1ZSl9Y2F0Y2goZSl7cihlKX1pZihuKXJldHVybn1pLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBuPXQuX2xpc3RlbmVycztmb3IobGV0IG89bi5sZW5ndGg7by0tOyluW29dLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG5bb10uY2IhPT1lJiZudWxsIT09ZXx8bi5zcGxpY2UobywxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxuKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbigpO2NvbnN0IG89cj0+e3QocikmJihlLnVuc3Vic2NyaWJlKG8pLG4oKSl9O2Uuc3Vic2NyaWJlKG8se2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe3IoZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgcyh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBzIGV4dGVuZHMgaXtjb25zdHJ1Y3RvcihlLHQsbil7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW59ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe3IoZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7CnJldHVybiB0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2V8fCh0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2U9ey4uLnN1cGVyLnJlYWRvbmx5KCksZGVzdHJveTooKT0+dGhpcy5kZXN0cm95KCkscmVhZG9ubHkoKXtyZXR1cm4gdGhpc319KSx0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2V9cmVsZWFzZSgpe3RoaXMuX3dlYWtSZWZlcmVuY2V8fHN1cGVyLnJlbGVhc2UoKX19fSwzNDUxNTEoZSx0LG4pe24uZCh0LHtob3RLZXlEZXNlcmlhbGl6ZTooKT0+cn0pO3ZhciBvPW4oNjQxNTkzKTtmdW5jdGlvbiByKGUpe3JldHVybiBKU09OLnBhcnNlKCgwLG8uZGVjb2RlSFRNTEVudGl0aWVzKShlKSl9fSwzNDQ3ODUoZSx0LG4pe24ucih0KSxuLmQodCx7aGlkZTooKT0+RSxzaG93OigpPT5mLHNob3dPbkVsZW1lbnQ6KCk9Pm0sdGVtcEZvcmNlSGlkZTooKT0+Zyx0b29sdGlwQ2xpY2tIYW5kbGVyOigpPT52LHVwZGF0ZVRvb2x0aXBUZXh0OigpPT5wfSk7dmFyIG89bigzNjMyNjkpLHI9bigxMzg2MzgpLGk9big3MjcwOSkscz1uKDY1ODk5NSksYz1uKDE2Nzg5NiksYT1uKDQ5MDM3OCk7bGV0IGw9ITEsdT1udWxsLGQ9bnVsbDtvLm1vYmlsZXRvdWNofHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIix3LCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYoISh0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2xvc2VzdCgnW2RhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzPSJ0cnVlIl0nKSYmdC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpKSlyZXR1cm47dyhlLCEwKX0pLHtjYXB0dXJlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLChmdW5jdGlvbihlKXtlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZ3KGUsITApfSkse2NhcHR1cmU6ITB9KSk7Y29uc3QgaD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKCk9PntpZih1JiZ1Lm9wdGlvbnMudGFyZ2V0KXtsZXQgZTtlPSJpc0Nvbm5lY3RlZCJpbiB1Lm9wdGlvbnMudGFyZ2V0P3Uub3B0aW9ucy50YXJnZXQuaXNDb25uZWN0ZWQ6ZG9jdW1lbnQuYm9keS5jb250YWlucyh1Lm9wdGlvbnMudGFyZ2V0KSxlfHxFKCl9fSkpLG09KGUsdD17fSk9Pntjb25zdHtjb250ZW50Om4sLi4ub309TSh0KSxyPWEuZ2V0RGF0YUZyb21UYXJnZXQoZSksaT1PYmplY3QuYXNzaWduKHIsbyk7cmV0dXJuIm5vbmUiIT09bi50eXBlJiYoaS5jb250ZW50PW4pLCEoIm5vbmUiPT09aS5jb250ZW50LnR5cGUmJiFpLmhvdGtleSkmJihpLnRhcmdldD1lLGYoaSksITApfSxmPWU9Pntjb25zdCB0PU0oZSksbj1hLmdldFRvb2x0aXAodCk7aWYodT17b3B0aW9uczp0LGVsZW1lbnQ6bn0sKDAsYy5zZXRUb29sdGlwKShuKSwoMCxzLmNsZWFyU2NoZWR1bGUpKCksIWwpcmV0dXJuIGEuaGlkZVRvb2x0aXAobiksdm9pZCgwLHMuc2NoZWR1bGVSZW5kZXIpKCgoKT0+TChuKSksZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLnRvb2x0aXBEZWxheXx8aXNOYU4oZS50b29sdGlwRGVsYXkpPzUwMDplLnRvb2x0aXBEZWxheX0odCkpO2NvbnN0e3Rvb2x0aXBEZWJvdW5jZTpvfT1lOyJudW1iZXIiIT10eXBlb2Ygb3x8aXNOYU4obyk/TChuKTooMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9PkwobikpLG8pfSxwPWU9PmEudXBkYXRlVG9vbHRpcFRleHRGcm9tVGFyZ2V0KGUpO2Z1bmN0aW9uIHcoZSx0KXtpZigic291cmNlQ2FwYWJpbGl0aWVzImluIGUmJmUuc291cmNlQ2FwYWJpbGl0aWVzPy5maXJlc1RvdWNoRXZlbnRzKXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKGUsdCxuKXtjb25zdCBvPVtdO2Zvcig7ZSYmZSE9PXQ7KWUuY2xhc3NMaXN0JiZlLmNsYXNzTGlzdC5jb250YWlucyhuKSYmby5wdXNoKGUpLGU9ZS5wYXJlbnRFbGVtZW50fHxfKGUucGFyZW50Tm9kZSk7cmV0dXJuIG99KGUudGFyZ2V0LGUuY3VycmVudFRhcmdldCwiYXBwbHktY29tbW9uLXRvb2x0aXAiKTtmb3IoY29uc3QgbyBvZiBuKXtpZihlIGluc3RhbmNlb2YgTW91c2VFdmVudClpZigiYnV0dG9ucyJpbiBlKXtpZigxJmUuYnV0dG9ucyljb250aW51ZX1lbHNlIGlmKDE9PT1lLndoaWNoKWNvbnRpbnVlO2NvbnN0IG49KCk9Pm0obyk7aWYobigpKXtjb25zdCBlPWU9PnIobnVsbCwhMCkscj0oaSxzPSExKT0+e28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY29tbW9uLXRvb2x0aXAtdXBkYXRlIixuKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpLG8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixyKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUse2NhcHR1cmU6ITB9KSx0JiYoby5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIixyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLHIpKSxkJiYoZC5kZXN0cm95KCksZD1udWxsKSxFKHMpfTtvLmFkZEV2ZW50TGlzdGVuZXIoImNvbW1vbi10b29sdGlwLXVwZGF0ZSIsbiksby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixyKSxvLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLHtjYXB0dXJlOiEwfSksdCYmKG8uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsciksby5hZGRFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixyKSksbnVsbD09PWQmJihkPSgwLGkuY3JlYXRlR3JvdXApKHtkZXNjOiJUb29sdGlwIn0pLGQuYWRkKHtkZXNjOiJIaWRlIixob3RrZXk6MjcsaGFuZGxlcjpyfSkpO2JyZWFrfX19ZnVuY3Rpb24gdihlKXtvLm1vYmlsZXRvdWNoJiYobShlLmN1cnJlbnRUYXJnZXQse3Rvb2x0aXBEZWxheTowfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix5KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix5KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLHkpLAp3aW5kb3cuc2NyZWVuLm9yaWVudGF0aW9uPy5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHkpKX1mdW5jdGlvbiB5KCl7ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix5KSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix5KSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLHkpLHdpbmRvdy5zY3JlZW4ub3JpZW50YXRpb24/LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIseSksRSgpfWZ1bmN0aW9uIGIoKXsoMCxjLmVtcHR5KSgpLGw9ITEsdT1udWxsfWNvbnN0IGc9KCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsci5lbnN1cmVOb3ROdWxsKShoKS5kaXNjb25uZWN0KCksIXV8fCFsKXJldHVybjtjb25zdHtlbGVtZW50OmV9PXU7YS5oaWRlVG9vbHRpcChlKSxiKCl9LEU9KGUsdCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsci5lbnN1cmVOb3ROdWxsKShoKS5kaXNjb25uZWN0KCksIXUpcmV0dXJuO2lmKCFlJiYhbClyZXR1cm47Y29uc3R7ZWxlbWVudDpuLG9wdGlvbnM6b309dSxpPSgpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixpKSxhLmhpZGVUb29sdGlwKG4pLGU/YigpOigwLHMuc2NoZWR1bGVSZW1vdmUpKCgoKT0+e2IoKX0pLDI1MCksdD8uKCl9O28udG9vbHRpcEhpZGVEZWxheT8oMCxzLnNjaGVkdWxlSGlkZSkoKCgpPT57bi5xdWVyeVNlbGVjdG9yKCI6aG92ZXIiKT9uLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGkpOmkoKX0pLG8udG9vbHRpcEhpZGVEZWxheSk6aSgpfTtmdW5jdGlvbiBMKGUpe2NvbnN0e29wdGlvbnM6dH09KDAsci5lbnN1cmVOb3ROdWxsKSh1KTtpZihhLnNldFN0eWxlKGUsdCksYS5zaG93VG9vbHRpcChlKSwoMCxyLmVuc3VyZU5vdE51bGwpKGgpLm9ic2VydmUoZG9jdW1lbnQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSksbD0hMCx0LmZvcmNlSGlkZU9uTW92ZSl7Y29uc3QgZT0oKT0+e2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKSxFKCl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKX19ZnVuY3Rpb24gXyhlKXtyZXR1cm4gZSYmKGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERT9lOm51bGwpfWZ1bmN0aW9uIE0oZSl7aWYoZnVuY3Rpb24oZSl7cmV0dXJuImNvbnRlbnQiaW4gZX0oZSkpcmV0dXJuIGU7Y29uc3R7aW5uZXI6dCxodG1sOm4sdGV4dDpvLC4uLnJ9PWU7bGV0IGk9e3R5cGU6Im5vbmUifTtyZXR1cm4gdCYmKGk9e3R5cGU6ImVsZW1lbnQiLGRhdGE6dH0pLG8mJihpPXt0eXBlOm4/Imh0bWwiOiJ0ZXh0IixkYXRhOm99KSx7Y29udGVudDppLC4uLnJ9fX0sMjI2MzMxKGUsdCxuKXtuLnIodCk7dmFyIG89bigzNDQ3ODUpO2Z1bmN0aW9uIHIoZSx0PSJ4Iil7bGV0IG49ITE7cmV0dXJuIngiIT09dCYmImJvdGgiIT09dHx8KG49bnx8ZS5vZmZzZXRXaWR0aDxlLnNjcm9sbFdpZHRoKSwieSIhPT10JiYiYm90aCIhPT10fHwobj1ufHxlLm9mZnNldEhlaWdodDxlLnNjcm9sbEhlaWdodCksbn1mdW5jdGlvbiBpKGUsdD0ieCIpe2Zvcihjb25zdCBuIG9mIEFycmF5LmZyb20oZS5jaGlsZHJlbikpaWYobiBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYocihuLHQpfHxpKG4sdCkpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIHMoZSl7bGV0IHQ9IngiO3JldHVybiBlLm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCIpP3Q9ImJvdGgiOmUubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl95IikmJih0PSJ5IiksdH1mdW5jdGlvbiBjKGUpe2NvbnN0IHQ9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtb3ZlcmZsb3ctdG9vbHRpcC1odG1sIik7aWYodClyZXR1cm57dHlwZToiaHRtbCIsZGF0YTp0fTtjb25zdCBuPWUuZ2V0QXR0cmlidXRlKCJkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dCIpO2lmKG4pcmV0dXJue3R5cGU6InRleHQiLGRhdGE6bn07aWYoZS5tYXRjaGVzPy4oIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1hbGxvdy10ZXh0Iikpe3JldHVybnt0eXBlOiJ0ZXh0IixkYXRhOmUudGV4dENvbnRlbnR8fCIifX1jb25zdCBvPUFycmF5LmZyb20oZS5jaGlsZE5vZGVzKS5yZWR1Y2UoKChlLHQpPT4odC5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFJiZlLnB1c2godC50ZXh0Q29udGVudHx8IiIpLGUpKSxbXSkuam9pbigiIikudHJpbSgpO3JldHVybiBvP3t0eXBlOiJ0ZXh0IixkYXRhOm99Ont0eXBlOiJub25lIn19ZnVuY3Rpb24gYShlLHQpe2xldCBuPSExO2NvbnN0IG89ZS5jaGlsZHJlbjtmb3IobGV0IGU9MDtlPG8ubGVuZ3RoO2UrKyl7Y29uc3QgaT1vW2VdO2lmKGkgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmcihpLHQpKXtuPSEwO2JyZWFrfX1yZXR1cm4gbn1mdW5jdGlvbiBsKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYodCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYodC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC1mb2N1cyIpfHx0LnF1ZXJ5U2VsZWN0b3IoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLWZvY3VzIikpKXtjb25zdCBlPXQubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAiKT90OnQucXVlcnlTZWxlY3RvcigiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAiKSxuPXMoZSk7aWYoZS5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4tcmVjdXJzaXZlbHkiKSl7aWYoIWkoZSxuKSlyZXR1cm59ZWxzZSBpZihlLm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1jaGVjay1jaGlsZHJlbiIpKXtpZighYShlLG4pKXJldHVybn1lbHNlIGlmKCFyKGUsbikpcmV0dXJuOygwLG8uc2hvd09uRWxlbWVudCkodCx7Y29udGVudDpjKGUpfSk7Y29uc3QgbD0oKT0+eygwLG8uaGlkZSkoKSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLGwpLAp0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLGwpfTt0LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLGwpLHQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsbCl9fSgwLG4oNzQ5NjQ4KS53aGVuRG9jdW1lbnRSZWFkeSkoKCgpPT57ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsKGU9Pntjb25zdCB0PWUudGFyZ2V0O2lmKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmdC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCIpKXtjb25zdCBlPXModCk7aWYodC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4tcmVjdXJzaXZlbHkiKSl7aWYoIWkodCxlKSlyZXR1cm59ZWxzZSBpZih0Lm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1jaGVjay1jaGlsZHJlbiIpKXtpZighYSh0LGUpKXJldHVybn1lbHNlIGlmKCFyKHQsZSkpcmV0dXJuOygwLG8uc2hvd09uRWxlbWVudCkodCx7Y29udGVudDpjKHQpfSk7Y29uc3Qgbj0oKT0+eygwLG8uaGlkZSkoKSxbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxuKSkpfTtbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LmFkZEV2ZW50TGlzdGVuZXIoZSxuKSkpfX0pLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbCwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLGwsITApfSkpfSwzMTg5NzQoZSx0LG4pe24uZCh0LHtDaGVja01vYmlsZTooKT0+bCxpc0Rlc2t0b3BBcHA6KCk9PmMsaXNNYWM6KCk9PnMsaXNTeW1waG9ueUVtYmVkOigpPT5hLHN1cHBvcnRUb3VjaDooKT0+dX0pO3ZhciBvPW4oNzM4NDU4KSxyPW4oMzc3MjI2KTtjb25zdCBpPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gby5pc01hY31mdW5jdGlvbiBjKCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gYSgpe3JldHVybiBpLmlzU3ltcGhvbnl8fCExfWNvbnN0IGw9e0FuZHJvaWQ6KCk9Pm8uaXNBbmRyb2lkLEJsYWNrQmVycnk6KCk9Pm8uaXNCbGFja0JlcnJ5LGlPUzooKT0+by5pc0lPUyxPcGVyYTooKT0+by5pc09wZXJhTWluaSxpc0lQYWQ6KCk9Pm8uaXNJUGFkLGFueTooKT0+by5pc0FueU1vYmlsZX07ZnVuY3Rpb24gdSgpe3JldHVybiBvLm1vYmlsZXRvdWNofHxvLnRvdWNofHxvLmlzQW55TW9iaWxlfWkuaXNNb2JpbGU9bCxpLm9uV2lkZ2V0PXIub25XaWRnZXQ7by5pc0Nocm9tZSxvLmlzRkYsby5pc0VkZ2Usby5pc1NhZmFyaX0sOTY5MTY4KGUsdCxuKXtuLmQodCx7aXNSdGw6KCk9Pm8uaXNSdGx9KTtuKDYxMDI2OCk7dmFyIG89bigxMTUyOTMpfSw0NDM1NTcoZSx0LG4pe24uZCh0LHtwYXJzZUh0bWxFbGVtZW50OigpPT5pfSk7Y29uc3Qgbz1uZXcgV2Vha01hcDt2YXIgcjtmdW5jdGlvbiBpKGUsdCl7Y29uc3Qgbj1mdW5jdGlvbihlLHQpe2xldCBuLHI7cmV0dXJuIG49bnVsbD09dD9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6OT09PXQubm9kZVR5cGU/dC5kb2N1bWVudEVsZW1lbnQ6dCxvJiYocj1vLmdldChuKSkscnx8KHI9bi5vd25lckRvY3VtZW50LmNyZWF0ZVJhbmdlKCksci5zZWxlY3ROb2RlQ29udGVudHMobiksbyYmby5zZXQobixyKSksci5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQoZSl9KGUsdCkscj1uLmZpcnN0RWxlbWVudENoaWxkO3JldHVybiBudWxsIT09ciYmbi5yZW1vdmVDaGlsZChyKSxyfSFmdW5jdGlvbihlKXtlW2UuRWxlbWVudD0xXT0iRWxlbWVudCIsZVtlLkRvY3VtZW50PTldPSJEb2N1bWVudCJ9KHJ8fChyPXt9KSl9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.142Z","timestamp":1785154591142,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785154591.1.1785154591..b177bc9a-34b2-4836-9972-6f558777cbde..f8ff18cc-c06f-46ed-8329-31a0a2ab1153.1785154591101.1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-dc9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3b5c638bb83ffc31be1c7a4f778ddfd8\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":3529,"size_decoded":2690,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1999)","md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-27T14:18:36.428394Z","times_seen":1506,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/43644.0f7c140019a67fd50be6.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.483Z","timestamp":1785154590483,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/43644.0f7c140019a67fd50be6.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 37\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b70-25\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:20 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:18:38\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a4e906b570c3ee502504793ee6ec4f85\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":37,"size_decoded":821,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"40e7cdfa5fbbec9974c8ff508c5b737e","sha1":"b94192497b31c714250d61b05c282d286e55261d","sha256":"582ea1fe7d215016aeb35e182c73a8c84b8d0938111a644d0298ba4719fa041f","sha512":"62e373a6019a91ff86c10637189c72a0d1db71df35ccb168330a115accc1eb05bbe880857da38d4afafe81c027200eba58108bcd5d4c251f373f47293ebc3f6d","ssdeep":"","tlshash":"79800080f82a2a280330820c8c8032a03008e20cc8f302c88822ea22a00eab30203880","first_seen":"2024-11-26T05:27:28.665532Z","last_seen":"2026-07-27T14:14:25.436425Z","times_seen":816,"resource_available":false,"data":"Lm5vQnJlYWstSGtHWEs1MjR7d2hpdGUtc3BhY2U6bm93cmFwfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/18472.d9419b6dcb64c88564c1.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.486Z","timestamp":1785154590486,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/18472.d9419b6dcb64c88564c1.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b75-1a6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:18:38\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6ad17cca0565699d4f478910d9c02d90\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":422,"size_decoded":992,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (422), with no line terminators","md5":"476b3b70cc16dcfe296161b43f04c908","sha1":"6e946ff2c7e0d4ca53575ba0988c8e545f4b7a4d","sha256":"d05eeeff94d3200cf850fbcb2ff60c963417d6bff4e8801c6579fe48b6be339b","sha512":"ceaea3acdc328e1b6a4c2b2d09324166cc7e945ab9bd78f84be8084e65119b317b2c644d26cae59e8d883a5b9075ff1650d8f4ceaf8c81e9ba03b4db4f5cfc04","ssdeep":"","tlshash":"81e0a7c3028672c92d52c76412f99901a3ecd85212f5ddb3063b67410918f3abc23196","first_seen":"2026-04-07T05:25:24.888174Z","last_seen":"2026-07-27T14:14:25.2884Z","times_seen":398,"resource_available":false,"data":"LnN0YWNrLUwyRTI2U3dme2Rpc3BsYXk6ZmxleDtsaXN0LXN0eWxlOm5vbmV9LnN0YWNrLUwyRTI2U3dmOmRpcihydGwpe2RpcmVjdGlvbjpsdHJ9LnN0YWNrLUwyRTI2U3dmPip7ZGlzcGxheTppbmxpbmUtZmxleH0uc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmPjpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDotM3B4fS5zdGFjay0teHh4c21hbGwtTDJFMjZTd2Y+Om5vdCg6bGFzdC1jaGlsZCl7Y2xpcC1wYXRoOnBhdGgoIm0tMS0xaDI1YTEgMSAwIDAgMCAwIDIwSC0xeiIpfS5zdGFjay0teHNtYWxsLUwyRTI2U3dmPjpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDotNHB4fS5zdGFjay0teHNtYWxsLUwyRTI2U3dmPjpub3QoOmxhc3QtY2hpbGQpe2NsaXAtcGF0aDpwYXRoKCJtLTEtMWgzM2ExIDEgMCAwIDAgMCAyNkgtMXoiKX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/58051.c5440665c3b32e6c6de8.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.733Z","timestamp":1785154590733,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/58051.c5440665c3b32e6c6de8.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-5d0\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:25\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2485c9670a85f39e14329ab57223c6c7\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1488,"size_decoded":1212,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1488), with no line terminators","md5":"cf65d352f7bbe1096200906298dfdaa4","sha1":"1ee5e8f8ec59df371481cf547e15a60aeb9861b1","sha256":"7d1408d461997bc322a57ca4f5d5ba5790cb74026412bfdea9daf11a791bb295","sha512":"15b40c4931e69256f4b949a92cca1ce21b6626a6c5c30b98f66992ecdbdf512f74c41ef4eba04ad2b96b2694b5985b1f52a6fc258bb9d31d03d7adb1b7d71ffc","ssdeep":"","tlshash":"6c3158897371e8707485985336aa58dc7a04cc390c4394facdf3eaaca0d197e8219737","first_seen":"2026-07-16T13:40:49.811222Z","last_seen":"2026-07-27T14:23:37.851073Z","times_seen":243,"resource_available":false,"data":"LmFycm93SWNvbi1ZVGp6dXk4eXtkaXNwbGF5OmlubGluZS1mbGV4O2hlaWdodDoxOHB4O21hcmdpbi1pbmxpbmUtZW5kOi00cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlO3dpZHRoOjE4cHh9LmFycm93SWNvbi1ZVGp6dXk4eS5kcm9wcGVkLVlUanp1eTh5e3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uYXJyb3dJY29uLVlUanp1eTh5LmRyb3BwZWQtWVRqenV5OHk6ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX0uc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLnhsYXJnZS1VN0dZdThBbS5zZWxlY3RlZC1VN0dZdThBbXstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToyMHB4Oy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MzBweH0uc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLm1lZGl1bS1VN0dZdThBbS5zZWxlY3RlZC1VN0dZdThBbSwuc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLnNtYWxsLVU3R1l1OEFtLnNlbGVjdGVkLVU3R1l1OEFtLC5zcXVhcmVUYWJCdXR0b24tVTdHWXU4QW0ueGxhcmdlLVU3R1l1OEFtLnNlbGVjdGVkLVU3R1l1OEFte2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0uc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLm1lZGl1bS1VN0dZdThBbS5zZWxlY3RlZC1VN0dZdThBbSwuc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLnNtYWxsLVU3R1l1OEFtLnNlbGVjdGVkLVU3R1l1OEFtey0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE2cHg7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4fS5zcXVhcmVUYWJCdXR0b24tVTdHWXU4QW0ubWVkaXVtV2l0aFNtYWxsRm9udC1VN0dZdThBbS5zZWxlY3RlZC1VN0dZdThBbSwuc3F1YXJlVGFiQnV0dG9uLVU3R1l1OEFtLnhzbWFsbC1VN0dZdThBbS5zZWxlY3RlZC1VN0dZdThBbXtmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxUcmVidWNoZXQgTVMsUm9ib3RvLFVidW50dSxzYW5zLXNlcmlmO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uO2ZvbnQtc3R5bGU6bm9ybWFsOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE0cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC13ZWlnaHQ6NDAwOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MThweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCl9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.736Z","timestamp":1785154590736,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32387.47ace83c61a884341cd6.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-205c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 680c5a599ebefbe476fbd1a383a9d566\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":132552,"size_decoded":45612,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-27T14:17:30.792424Z","times_seen":2594,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMzIzODddLHs1MzIzODcoZSxuLHQpe3ZhciByPXQoNzc5NDc0KSxsPXQoMTgyNjE0KTtmdW5jdGlvbiBhKGUpe2Zvcih2YXIgbj0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKW4rPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1t0XSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIituKyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIHU9bmV3IFNldCxvPXt9O2Z1bmN0aW9uIGkoZSxuKXtzKGUsbikscyhlKyJDYXB0dXJlIixuKX1mdW5jdGlvbiBzKGUsbil7Zm9yKG9bZV09bixlPTA7ZTxuLmxlbmd0aDtlKyspdS5hZGQobltlXSl9dmFyIGM9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksZj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LGQ9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxwPXt9LG09e307ZnVuY3Rpb24gaChlLG4sdCxyLGwsYSx1KXt0aGlzLmFjY2VwdHNCb29sZWFucz0yPT09bnx8Mz09PW58fDQ9PT1uLHRoaXMuYXR0cmlidXRlTmFtZT1yLHRoaXMuYXR0cmlidXRlTmFtZXNwYWNlPWwsdGhpcy5tdXN0VXNlUHJvcGVydHk9dCx0aGlzLnByb3BlcnR5TmFtZT1lLHRoaXMudHlwZT1uLHRoaXMuc2FuaXRpemVVUkw9YSx0aGlzLnJlbW92ZUVtcHR5U3RyaW5nPXV9dmFyIGc9e307ImNoaWxkcmVuIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIGRlZmF1bHRWYWx1ZSBkZWZhdWx0Q2hlY2tlZCBpbm5lckhUTUwgc3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZyBzdHlsZSIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMCwhMSxlLG51bGwsITEsITEpfSkpLFtbImFjY2VwdENoYXJzZXQiLCJhY2NlcHQtY2hhcnNldCJdLFsiY2xhc3NOYW1lIiwiY2xhc3MiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXV0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZVswXTtnW25dPW5ldyBoKG4sMSwhMSxlWzFdLG51bGwsITEsITEpfSkpLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDIsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiYXV0b1JldmVyc2UiLCJleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIiwiZm9jdXNhYmxlIiwicHJlc2VydmVBbHBoYSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwyLCExLGUsbnVsbCwhMSwhMSl9KSksImFsbG93RnVsbFNjcmVlbiBhc3luYyBhdXRvRm9jdXMgYXV0b1BsYXkgY29udHJvbHMgZGVmYXVsdCBkZWZlciBkaXNhYmxlZCBkaXNhYmxlUGljdHVyZUluUGljdHVyZSBkaXNhYmxlUmVtb3RlUGxheWJhY2sgZm9ybU5vVmFsaWRhdGUgaGlkZGVuIGxvb3Agbm9Nb2R1bGUgbm9WYWxpZGF0ZSBvcGVuIHBsYXlzSW5saW5lIHJlYWRPbmx5IHJlcXVpcmVkIHJldmVyc2VkIHNjb3BlZCBzZWFtbGVzcyBpdGVtU2NvcGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDMsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwzLCEwLGUsbnVsbCwhMSwhMSl9KSksWyJjYXB0dXJlIiwiZG93bmxvYWQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNCwhMSxlLG51bGwsITEsITEpfSkpLFsiY29scyIsInJvd3MiLCJzaXplIiwic3BhbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSw2LCExLGUsbnVsbCwhMSwhMSl9KSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSk7dmFyIHY9L1tcLTpdKFthLXpdKS9nO2Z1bmN0aW9uIHkoZSl7cmV0dXJuIGVbMV0udG9VcHBlckNhc2UoKX1mdW5jdGlvbiBiKGUsbix0LHIpe3ZhciBsPWcuaGFzT3duUHJvcGVydHkobik/Z1tuXTpudWxsOyhudWxsIT09bD8wIT09bC50eXBlOnJ8fCEoMjxuLmxlbmd0aCl8fCJvIiE9PW5bMF0mJiJPIiE9PW5bMF18fCJuIiE9PW5bMV0mJiJOIiE9PW5bMV0pJiYoZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbD09bnx8ZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbCE9PXQmJjA9PT10LnR5cGUpcmV0dXJuITE7c3dpdGNoKHR5cGVvZiBuKXtjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6cmV0dXJuITA7Y2FzZSJib29sZWFuIjpyZXR1cm4hciYmKG51bGwhPT10PyF0LmFjY2VwdHNCb29sZWFuczoiZGF0YS0iIT09KGU9ZS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSkpJiYiYXJpYS0iIT09ZSk7ZGVmYXVsdDpyZXR1cm4hMX19KGUsbix0LHIpKXJldHVybiEwCjtpZihyKXJldHVybiExO2lmKG51bGwhPT10KXN3aXRjaCh0LnR5cGUpe2Nhc2UgMzpyZXR1cm4hbjtjYXNlIDQ6cmV0dXJuITE9PT1uO2Nhc2UgNTpyZXR1cm4gaXNOYU4obik7Y2FzZSA2OnJldHVybiBpc05hTihuKXx8MT5ufXJldHVybiExfShuLHQsbCxyKSYmKHQ9bnVsbCkscnx8bnVsbD09PWw/ZnVuY3Rpb24oZSl7cmV0dXJuISFmLmNhbGwobSxlKXx8IWYuY2FsbChwLGUpJiYoZC50ZXN0KGUpP21bZV09ITA6KHBbZV09ITAsITEpKX0obikmJihudWxsPT09dD9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLCIiK3QpKTpsLm11c3RVc2VQcm9wZXJ0eT9lW2wucHJvcGVydHlOYW1lXT1udWxsPT09dD8zIT09bC50eXBlJiYiIjp0OihuPWwuYXR0cmlidXRlTmFtZSxyPWwuYXR0cmlidXRlTmFtZXNwYWNlLG51bGw9PT10P2UucmVtb3ZlQXR0cmlidXRlKG4pOih0PTM9PT0obD1sLnR5cGUpfHw0PT09bCYmITA9PT10PyIiOiIiK3Qscj9lLnNldEF0dHJpYnV0ZU5TKHIsbix0KTplLnNldEF0dHJpYnV0ZShuLHQpKSkpfSJhY2NlbnQtaGVpZ2h0IGFsaWdubWVudC1iYXNlbGluZSBhcmFiaWMtZm9ybSBiYXNlbGluZS1zaGlmdCBjYXAtaGVpZ2h0IGNsaXAtcGF0aCBjbGlwLXJ1bGUgY29sb3ItaW50ZXJwb2xhdGlvbiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnMgY29sb3ItcHJvZmlsZSBjb2xvci1yZW5kZXJpbmcgZG9taW5hbnQtYmFzZWxpbmUgZW5hYmxlLWJhY2tncm91bmQgZmlsbC1vcGFjaXR5IGZpbGwtcnVsZSBmbG9vZC1jb2xvciBmbG9vZC1vcGFjaXR5IGZvbnQtZmFtaWx5IGZvbnQtc2l6ZSBmb250LXNpemUtYWRqdXN0IGZvbnQtc3RyZXRjaCBmb250LXN0eWxlIGZvbnQtdmFyaWFudCBmb250LXdlaWdodCBnbHlwaC1uYW1lIGdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwgZ2x5cGgtb3JpZW50YXRpb24tdmVydGljYWwgaG9yaXotYWR2LXggaG9yaXotb3JpZ2luLXggaW1hZ2UtcmVuZGVyaW5nIGxldHRlci1zcGFjaW5nIGxpZ2h0aW5nLWNvbG9yIG1hcmtlci1lbmQgbWFya2VyLW1pZCBtYXJrZXItc3RhcnQgb3ZlcmxpbmUtcG9zaXRpb24gb3ZlcmxpbmUtdGhpY2tuZXNzIHBhaW50LW9yZGVyIHBhbm9zZS0xIHBvaW50ZXItZXZlbnRzIHJlbmRlcmluZy1pbnRlbnQgc2hhcGUtcmVuZGVyaW5nIHN0b3AtY29sb3Igc3RvcC1vcGFjaXR5IHN0cmlrZXRocm91Z2gtcG9zaXRpb24gc3RyaWtldGhyb3VnaC10aGlja25lc3Mgc3Ryb2tlLWRhc2hhcnJheSBzdHJva2UtZGFzaG9mZnNldCBzdHJva2UtbGluZWNhcCBzdHJva2UtbGluZWpvaW4gc3Ryb2tlLW1pdGVybGltaXQgc3Ryb2tlLW9wYWNpdHkgc3Ryb2tlLXdpZHRoIHRleHQtYW5jaG9yIHRleHQtZGVjb3JhdGlvbiB0ZXh0LXJlbmRlcmluZyB1bmRlcmxpbmUtcG9zaXRpb24gdW5kZXJsaW5lLXRoaWNrbmVzcyB1bmljb2RlLWJpZGkgdW5pY29kZS1yYW5nZSB1bml0cy1wZXItZW0gdi1hbHBoYWJldGljIHYtaGFuZ2luZyB2LWlkZW9ncmFwaGljIHYtbWF0aGVtYXRpY2FsIHZlY3Rvci1lZmZlY3QgdmVydC1hZHYteSB2ZXJ0LW9yaWdpbi14IHZlcnQtb3JpZ2luLXkgd29yZC1zcGFjaW5nIHdyaXRpbmctbW9kZSB4bWxuczp4bGluayB4LWhlaWdodCIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2Uodix5KTtnW25dPW5ldyBoKG4sMSwhMSxlLG51bGwsITEsITEpfSkpLCJ4bGluazphY3R1YXRlIHhsaW5rOmFyY3JvbGUgeGxpbms6cm9sZSB4bGluazpzaG93IHhsaW5rOnRpdGxlIHhsaW5rOnR5cGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHYseSk7Z1tuXT1uZXcgaChuLDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITEsITEpfSkpLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPWUucmVwbGFjZSh2LHkpO2dbbl09bmV3IGgobiwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsITEsITEpfSkpLFsidGFiSW5kZXgiLCJjcm9zc09yaWdpbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pKSxnLnhsaW5rSHJlZj1uZXcgaCgieGxpbmtIcmVmIiwxLCExLCJ4bGluazpocmVmIiwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITAsITEpLFsic3JjIiwiaHJlZiIsImFjdGlvbiIsImZvcm1BY3Rpb24iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMCwhMCl9KSk7dmFyIGs9ci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCx3PVN5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKSxTPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLHg9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxFPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksQz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxOPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxfPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksUD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLFQ9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEw9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLE09U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIiksU3ltYm9sLmZvcigicmVhY3QuZGVidWdfdHJhY2VfbW9kZSIpO3ZhciBGPVN5bWJvbC5mb3IoInJlYWN0Lm9mZnNjcmVlbiIpO1N5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIik7dmFyIFI9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEQoZSl7CnJldHVybiBudWxsPT09ZXx8Im9iamVjdCIhPXR5cGVvZiBlP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKGU9UiYmZVtSXXx8ZVsiQEBpdGVyYXRvciJdKT9lOm51bGx9dmFyIEksTz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIFUoZSl7aWYodm9pZCAwPT09SSl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgbj1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7ST1uJiZuWzFdfHwiIn1yZXR1cm4iXG4iK0krZX12YXIgVj0hMTtmdW5jdGlvbiBBKGUsbil7aWYoIWV8fFYpcmV0dXJuIiI7Vj0hMDt2YXIgdD1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e2lmKG4paWYobj1mdW5jdGlvbigpe3Rocm93IEVycm9yKCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLnByb3RvdHlwZSwicHJvcHMiLHtzZXQ6ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfX0pLCJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5jb25zdHJ1Y3Qpe3RyeXtSZWZsZWN0LmNvbnN0cnVjdChuLFtdKX1jYXRjaChlKXt2YXIgcj1lfVJlZmxlY3QuY29uc3RydWN0KGUsW10sbil9ZWxzZXt0cnl7bi5jYWxsKCl9Y2F0Y2goZSl7cj1lfWUuY2FsbChuLnByb3RvdHlwZSl9ZWxzZXt0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXtyPWV9ZSgpfX1jYXRjaChuKXtpZihuJiZyJiYic3RyaW5nIj09dHlwZW9mIG4uc3RhY2spe2Zvcih2YXIgbD1uLnN0YWNrLnNwbGl0KCJcbiIpLGE9ci5zdGFjay5zcGxpdCgiXG4iKSx1PWwubGVuZ3RoLTEsbz1hLmxlbmd0aC0xOzE8PXUmJjA8PW8mJmxbdV0hPT1hW29dOylvLS07Zm9yKDsxPD11JiYwPD1vO3UtLSxvLS0paWYobFt1XSE9PWFbb10pe2lmKDEhPT11fHwxIT09bylkb3tpZih1LS0sMD4tLW98fGxbdV0hPT1hW29dKXt2YXIgaT0iXG4iK2xbdV0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIik7cmV0dXJuIGUuZGlzcGxheU5hbWUmJmkuaW5jbHVkZXMoIjxhbm9ueW1vdXM+IikmJihpPWkucmVwbGFjZSgiPGFub255bW91cz4iLGUuZGlzcGxheU5hbWUpKSxpfX13aGlsZSgxPD11JiYwPD1vKTticmVha319fWZpbmFsbHl7Vj0hMSxFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT10fXJldHVybihlPWU/ZS5kaXNwbGF5TmFtZXx8ZS5uYW1lOiIiKT9VKGUpOiIifWZ1bmN0aW9uIEIoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDU6cmV0dXJuIFUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBVKCJMYXp5Iik7Y2FzZSAxMzpyZXR1cm4gVSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBVKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9QShlLnR5cGUsITEpO2Nhc2UgMTE6cmV0dXJuIGU9QShlLnR5cGUucmVuZGVyLCExKTtjYXNlIDE6cmV0dXJuIGU9QShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fWZ1bmN0aW9uIFcoZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTtzd2l0Y2goZSl7Y2FzZSB4OnJldHVybiJGcmFnbWVudCI7Y2FzZSBTOnJldHVybiJQb3J0YWwiO2Nhc2UgQzpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgRTpyZXR1cm4iU3RyaWN0TW9kZSI7Y2FzZSBQOnJldHVybiJTdXNwZW5zZSI7Y2FzZSBUOnJldHVybiJTdXNwZW5zZUxpc3QifWlmKCJvYmplY3QiPT10eXBlb2YgZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBOOnJldHVybihlLmRpc3BsYXlOYW1lfHwiQ29udGV4dCIpKyIuQ29uc3VtZXIiO2Nhc2UgejpyZXR1cm4oZS5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIF86dmFyIG49ZS5yZW5kZXI7cmV0dXJuKGU9ZS5kaXNwbGF5TmFtZSl8fChlPSIiIT09KGU9bi5kaXNwbGF5TmFtZXx8bi5uYW1lfHwiIik/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpLGU7Y2FzZSBMOnJldHVybiBudWxsIT09KG49ZS5kaXNwbGF5TmFtZXx8bnVsbCk/bjpXKGUudHlwZSl8fCJNZW1vIjtjYXNlIE06bj1lLl9wYXlsb2FkLGU9ZS5faW5pdDt0cnl7cmV0dXJuIFcoZShuKSl9Y2F0Y2goZSl7fX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBIKGUpe3ZhciBuPWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKG4uZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4obi5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9bi5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLG4uZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gbjtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIFcobik7Y2FzZSA4OnJldHVybiBuPT09RT8iU3RyaWN0TW9kZSI6Ik1vZGUiO2Nhc2UgMjI6cmV0dXJuIk9mZnNjcmVlbiI7Y2FzZSAxMjpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgMjE6cmV0dXJuIlNjb3BlIjtjYXNlIDEzOnJldHVybiJTdXNwZW5zZSI7Y2FzZSAxOTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIDI1OnJldHVybiJUcmFjaW5nTWFya2VyIjtjYXNlIDE6Y2FzZSAwOmNhc2UgMTc6Y2FzZSAyOmNhc2UgMTQ6Y2FzZSAxNTppZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm4gbi5kaXNwbGF5TmFtZXx8bi5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgbilyZXR1cm4gbn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBRKGUpe3N3aXRjaCh0eXBlb2YgZSl7Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gaihlKXt2YXIgbj1lLnR5cGUKO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW58fCJyYWRpbyI9PT1uKX1mdW5jdGlvbiAkKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgbj1qKGUpPyJjaGVja2VkIjoidmFsdWUiLHQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLmNvbnN0cnVjdG9yLnByb3RvdHlwZSxuKSxyPSIiK2Vbbl07aWYoIWUuaGFzT3duUHJvcGVydHkobikmJnZvaWQgMCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuc2V0KXt2YXIgbD10LmdldCxhPXQuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe3I9IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOnQuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiByfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtyPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW25dfX19fShlKSl9ZnVuY3Rpb24gcShlKXtpZighZSlyZXR1cm4hMTt2YXIgbj1lLl92YWx1ZVRyYWNrZXI7aWYoIW4pcmV0dXJuITA7dmFyIHQ9bi5nZXRWYWx1ZSgpLHI9IiI7cmV0dXJuIGUmJihyPWooZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09dCYmKG4uc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIEsoZSl7aWYodm9pZCAwPT09KGU9ZXx8KCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQ/ZG9jdW1lbnQ6dm9pZCAwKSkpcmV0dXJuIG51bGw7dHJ5e3JldHVybiBlLmFjdGl2ZUVsZW1lbnR8fGUuYm9keX1jYXRjaChuKXtyZXR1cm4gZS5ib2R5fX1mdW5jdGlvbiBZKGUsbil7dmFyIHQ9bi5jaGVja2VkO3JldHVybiBPKHt9LG4se2RlZmF1bHRDaGVja2VkOnZvaWQgMCxkZWZhdWx0VmFsdWU6dm9pZCAwLHZhbHVlOnZvaWQgMCxjaGVja2VkOm51bGwhPXQ/dDplLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWR9KX1mdW5jdGlvbiBYKGUsbil7dmFyIHQ9bnVsbD09bi5kZWZhdWx0VmFsdWU/IiI6bi5kZWZhdWx0VmFsdWUscj1udWxsIT1uLmNoZWNrZWQ/bi5jaGVja2VkOm4uZGVmYXVsdENoZWNrZWQ7dD1RKG51bGwhPW4udmFsdWU/bi52YWx1ZTp0KSxlLl93cmFwcGVyU3RhdGU9e2luaXRpYWxDaGVja2VkOnIsaW5pdGlhbFZhbHVlOnQsY29udHJvbGxlZDoiY2hlY2tib3giPT09bi50eXBlfHwicmFkaW8iPT09bi50eXBlP251bGwhPW4uY2hlY2tlZDpudWxsIT1uLnZhbHVlfX1mdW5jdGlvbiBHKGUsbil7bnVsbCE9KG49bi5jaGVja2VkKSYmYihlLCJjaGVja2VkIixuLCExKX1mdW5jdGlvbiBaKGUsbil7RyhlLG4pO3ZhciB0PVEobi52YWx1ZSkscj1uLnR5cGU7aWYobnVsbCE9dCkibnVtYmVyIj09PXI/KDA9PT10JiYiIj09PWUudmFsdWV8fGUudmFsdWUhPXQpJiYoZS52YWx1ZT0iIit0KTplLnZhbHVlIT09IiIrdCYmKGUudmFsdWU9IiIrdCk7ZWxzZSBpZigic3VibWl0Ij09PXJ8fCJyZXNldCI9PT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpO24uaGFzT3duUHJvcGVydHkoInZhbHVlIik/ZWUoZSxuLnR5cGUsdCk6bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikmJmVlKGUsbi50eXBlLFEobi5kZWZhdWx0VmFsdWUpKSxudWxsPT1uLmNoZWNrZWQmJm51bGwhPW4uZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhbi5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gSihlLG4sdCl7aWYobi5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKXx8bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikpe3ZhciByPW4udHlwZTtpZighKCJzdWJtaXQiIT09ciYmInJlc2V0IiE9PXJ8fHZvaWQgMCE9PW4udmFsdWUmJm51bGwhPT1uLnZhbHVlKSlyZXR1cm47bj0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlLHR8fG49PT1lLnZhbHVlfHwoZS52YWx1ZT1uKSxlLmRlZmF1bHRWYWx1ZT1ufSIiIT09KHQ9ZS5uYW1lKSYmKGUubmFtZT0iIiksZS5kZWZhdWx0Q2hlY2tlZD0hIWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZCwiIiE9PXQmJihlLm5hbWU9dCl9ZnVuY3Rpb24gZWUoZSxuLHQpeyJudW1iZXIiPT09biYmSyhlLm93bmVyRG9jdW1lbnQpPT09ZXx8KG51bGw9PXQ/ZS5kZWZhdWx0VmFsdWU9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZTplLmRlZmF1bHRWYWx1ZSE9PSIiK3QmJihlLmRlZmF1bHRWYWx1ZT0iIit0KSl9dmFyIG5lPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gdGUoZSxuLHQscil7aWYoZT1lLm9wdGlvbnMsbil7bj17fTtmb3IodmFyIGw9MDtsPHQubGVuZ3RoO2wrKyluWyIkIit0W2xdXT0hMDtmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKWw9bi5oYXNPd25Qcm9wZXJ0eSgiJCIrZVt0XS52YWx1ZSksZVt0XS5zZWxlY3RlZCE9PWwmJihlW3RdLnNlbGVjdGVkPWwpLGwmJnImJihlW3RdLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IodD0iIitRKHQpLG49bnVsbCxsPTA7bDxlLmxlbmd0aDtsKyspe2lmKGVbbF0udmFsdWU9PT10KXJldHVybiBlW2xdLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbbF0uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PW58fGVbbF0uZGlzYWJsZWR8fChuPWVbbF0pfW51bGwhPT1uJiYobi5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIHJlKGUsbil7aWYobnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihhKDkxKSk7cmV0dXJuIE8oe30sbix7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIGxlKGUsbil7dmFyIHQ9bi52YWx1ZTtpZihudWxsPT10KXtpZih0PW4uY2hpbGRyZW4sbj1uLmRlZmF1bHRWYWx1ZSxudWxsIT10KXtpZihudWxsIT1uKXRocm93IEVycm9yKGEoOTIpKTtpZihuZSh0KSl7CmlmKDE8dC5sZW5ndGgpdGhyb3cgRXJyb3IoYSg5MykpO3Q9dFswXX1uPXR9bnVsbD09biYmKG49IiIpLHQ9bn1lLl93cmFwcGVyU3RhdGU9e2luaXRpYWxWYWx1ZTpRKHQpfX1mdW5jdGlvbiBhZShlLG4pe3ZhciB0PVEobi52YWx1ZSkscj1RKG4uZGVmYXVsdFZhbHVlKTtudWxsIT10JiYoKHQ9IiIrdCkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uLmRlZmF1bHRWYWx1ZSYmZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCkpLG51bGwhPXImJihlLmRlZmF1bHRWYWx1ZT0iIityKX1mdW5jdGlvbiB1ZShlKXt2YXIgbj1lLnRleHRDb250ZW50O249PT1lLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlJiYiIiE9PW4mJm51bGwhPT1uJiYoZS52YWx1ZT1uKX1mdW5jdGlvbiBvZShlKXtzd2l0Y2goZSl7Y2FzZSJzdmciOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI7Y2FzZSJtYXRoIjpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI7ZGVmYXVsdDpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCJ9fWZ1bmN0aW9uIGllKGUsbil7cmV0dXJuIG51bGw9PWV8fCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/b2Uobik6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWUmJiJmb3JlaWduT2JqZWN0Ij09PW4/Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiOmV9dmFyIHNlLGNlLGZlPShjZT1mdW5jdGlvbihlLG4pe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPW47ZWxzZXtmb3IoKHNlPXNlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrbi52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+IixuPXNlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDtuLmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQobi5maXJzdENoaWxkKX19LCJ1bmRlZmluZWQiIT10eXBlb2YgTVNBcHAmJk1TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uP2Z1bmN0aW9uKGUsbix0LHIpe01TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uKChmdW5jdGlvbigpe3JldHVybiBjZShlLG4pfSkpfTpjZSk7ZnVuY3Rpb24gZGUoZSxuKXtpZihuKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7aWYodCYmdD09PWUubGFzdENoaWxkJiYzPT09dC5ub2RlVHlwZSlyZXR1cm4gdm9pZCh0Lm5vZGVWYWx1ZT1uKX1lLnRleHRDb250ZW50PW59dmFyIHBlPXthbmltYXRpb25JdGVyYXRpb25Db3VudDohMCxhc3BlY3RSYXRpbzohMCxib3JkZXJJbWFnZU91dHNldDohMCxib3JkZXJJbWFnZVNsaWNlOiEwLGJvcmRlckltYWdlV2lkdGg6ITAsYm94RmxleDohMCxib3hGbGV4R3JvdXA6ITAsYm94T3JkaW5hbEdyb3VwOiEwLGNvbHVtbkNvdW50OiEwLGNvbHVtbnM6ITAsZmxleDohMCxmbGV4R3JvdzohMCxmbGV4UG9zaXRpdmU6ITAsZmxleFNocmluazohMCxmbGV4TmVnYXRpdmU6ITAsZmxleE9yZGVyOiEwLGdyaWRBcmVhOiEwLGdyaWRSb3c6ITAsZ3JpZFJvd0VuZDohMCxncmlkUm93U3BhbjohMCxncmlkUm93U3RhcnQ6ITAsZ3JpZENvbHVtbjohMCxncmlkQ29sdW1uRW5kOiEwLGdyaWRDb2x1bW5TcGFuOiEwLGdyaWRDb2x1bW5TdGFydDohMCxmb250V2VpZ2h0OiEwLGxpbmVDbGFtcDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx0YWJTaXplOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMCxmaWxsT3BhY2l0eTohMCxmbG9vZE9wYWNpdHk6ITAsc3RvcE9wYWNpdHk6ITAsc3Ryb2tlRGFzaGFycmF5OiEwLHN0cm9rZURhc2hvZmZzZXQ6ITAsc3Ryb2tlTWl0ZXJsaW1pdDohMCxzdHJva2VPcGFjaXR5OiEwLHN0cm9rZVdpZHRoOiEwfSxtZT1bIldlYmtpdCIsIm1zIiwiTW96IiwiTyJdO2Z1bmN0aW9uIGhlKGUsbix0KXtyZXR1cm4gbnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbnx8IiI9PT1uPyIiOnR8fCJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHBlLmhhc093blByb3BlcnR5KGUpJiZwZVtlXT8oIiIrbikudHJpbSgpOm4rInB4In1mdW5jdGlvbiBnZShlLG4pe2Zvcih2YXIgdCBpbiBlPWUuc3R5bGUsbilpZihuLmhhc093blByb3BlcnR5KHQpKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpLGw9aGUodCxuW3RdLHIpOyJmbG9hdCI9PT10JiYodD0iY3NzRmxvYXQiKSxyP2Uuc2V0UHJvcGVydHkodCxsKTplW3RdPWx9fU9iamVjdC5rZXlzKHBlKS5mb3JFYWNoKChmdW5jdGlvbihlKXttZS5mb3JFYWNoKChmdW5jdGlvbihuKXtuPW4rZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStlLnN1YnN0cmluZygxKSxwZVtuXT1wZVtlXX0pKX0pKTt2YXIgdmU9Tyh7bWVudWl0ZW06ITB9LHthcmVhOiEwLGJhc2U6ITAsYnI6ITAsY29sOiEwLGVtYmVkOiEwLGhyOiEwLGltZzohMCxpbnB1dDohMCxrZXlnZW46ITAsbGluazohMCxtZXRhOiEwLHBhcmFtOiEwLHNvdXJjZTohMCx0cmFjazohMCx3YnI6ITB9KTtmdW5jdGlvbiB5ZShlLG4pe2lmKG4pe2lmKHZlW2VdJiYobnVsbCE9bi5jaGlsZHJlbnx8bnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCkpdGhyb3cgRXJyb3IoYSgxMzcsZSkpO2lmKG51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpe2lmKG51bGwhPW4uY2hpbGRyZW4pdGhyb3cgRXJyb3IoYSg2MCkpO2lmKCJvYmplY3QiIT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTHx8ISgiX19odG1sImluIG4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKGEoNjEpKX1pZihudWxsIT1uLnN0eWxlJiYib2JqZWN0IiE9dHlwZW9mIG4uc3R5bGUpdGhyb3cgRXJyb3IoYSg2MikpfX1mdW5jdGlvbiBiZShlLG4pe2lmKC0xPT09ZS5pbmRleE9mKCItIikpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLmlzO3N3aXRjaChlKXtjYXNlImFubm90YXRpb24teG1sIjpjYXNlImNvbG9yLXByb2ZpbGUiOmNhc2UiZm9udC1mYWNlIjpjYXNlImZvbnQtZmFjZS1zcmMiOgpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIga2U9bnVsbDtmdW5jdGlvbiB3ZShlKXtyZXR1cm4oZT1lLnRhcmdldHx8ZS5zcmNFbGVtZW50fHx3aW5kb3cpLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50JiYoZT1lLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50KSwzPT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgU2U9bnVsbCx4ZT1udWxsLEVlPW51bGw7ZnVuY3Rpb24gQ2UoZSl7aWYoZT1ibChlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFNlKXRocm93IEVycm9yKGEoMjgwKSk7dmFyIG49ZS5zdGF0ZU5vZGU7biYmKG49d2wobiksU2UoZS5zdGF0ZU5vZGUsZS50eXBlLG4pKX19ZnVuY3Rpb24gemUoZSl7eGU/RWU/RWUucHVzaChlKTpFZT1bZV06eGU9ZX1mdW5jdGlvbiBOZSgpe2lmKHhlKXt2YXIgZT14ZSxuPUVlO2lmKEVlPXhlPW51bGwsQ2UoZSksbilmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKUNlKG5bZV0pfX1mdW5jdGlvbiBfZShlLG4pe3JldHVybiBlKG4pfWZ1bmN0aW9uIFBlKCl7fXZhciBUZT0hMTtmdW5jdGlvbiBMZShlLG4sdCl7aWYoVGUpcmV0dXJuIGUobix0KTtUZT0hMDt0cnl7cmV0dXJuIF9lKGUsbix0KX1maW5hbGx5e1RlPSExLChudWxsIT09eGV8fG51bGwhPT1FZSkmJihQZSgpLE5lKCkpfX1mdW5jdGlvbiBNZShlLG4pe3ZhciB0PWUuc3RhdGVOb2RlO2lmKG51bGw9PT10KXJldHVybiBudWxsO3ZhciByPXdsKHQpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3Q9cltuXTtlOnN3aXRjaChuKXtjYXNlIm9uQ2xpY2siOmNhc2Uib25DbGlja0NhcHR1cmUiOmNhc2Uib25Eb3VibGVDbGljayI6Y2FzZSJvbkRvdWJsZUNsaWNrQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRG93biI6Y2FzZSJvbk1vdXNlRG93bkNhcHR1cmUiOmNhc2Uib25Nb3VzZU1vdmUiOmNhc2Uib25Nb3VzZU1vdmVDYXB0dXJlIjpjYXNlIm9uTW91c2VVcCI6Y2FzZSJvbk1vdXNlVXBDYXB0dXJlIjpjYXNlIm9uTW91c2VFbnRlciI6KHI9IXIuZGlzYWJsZWQpfHwocj0hKCJidXR0b24iPT09KGU9ZS50eXBlKXx8ImlucHV0Ij09PWV8fCJzZWxlY3QiPT09ZXx8InRleHRhcmVhIj09PWUpKSxlPSFyO2JyZWFrIGU7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYodCYmImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IoYSgyMzEsbix0eXBlb2YgdCkpO3JldHVybiB0fXZhciBGZT0hMTtpZihjKXRyeXt2YXIgUmU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KFJlLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7RmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLFJlLFJlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsUmUsUmUpfWNhdGNoKGNlKXtGZT0hMX1mdW5jdGlvbiBEZShlLG4sdCxyLGwsYSx1LG8saSl7dmFyIHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXtuLmFwcGx5KHQscyl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX12YXIgSWU9ITEsT2U9bnVsbCxVZT0hMSxWZT1udWxsLEFlPXtvbkVycm9yOmZ1bmN0aW9uKGUpe0llPSEwLE9lPWV9fTtmdW5jdGlvbiBCZShlLG4sdCxyLGwsYSx1LG8saSl7SWU9ITEsT2U9bnVsbCxEZS5hcHBseShBZSxhcmd1bWVudHMpfWZ1bmN0aW9uIFdlKGUpe3ZhciBuPWUsdD1lO2lmKGUuYWx0ZXJuYXRlKWZvcig7bi5yZXR1cm47KW49bi5yZXR1cm47ZWxzZXtlPW47ZG97ISEoNDA5OCYobj1lKS5mbGFncykmJih0PW4ucmV0dXJuKSxlPW4ucmV0dXJufXdoaWxlKGUpfXJldHVybiAzPT09bi50YWc/dDpudWxsfWZ1bmN0aW9uIEhlKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09biYmKG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihuPWUubWVtb2l6ZWRTdGF0ZSkpLG51bGwhPT1uKXJldHVybiBuLmRlaHlkcmF0ZWR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gUWUoZSl7aWYoV2UoZSkhPT1lKXRocm93IEVycm9yKGEoMTg4KSl9ZnVuY3Rpb24gamUoZSl7cmV0dXJuIG51bGwhPT0oZT1mdW5jdGlvbihlKXt2YXIgbj1lLmFsdGVybmF0ZTtpZighbil7aWYobnVsbD09PShuPVdlKGUpKSl0aHJvdyBFcnJvcihhKDE4OCkpO3JldHVybiBuIT09ZT9udWxsOmV9Zm9yKHZhciB0PWUscj1uOzspe3ZhciBsPXQucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciB1PWwuYWx0ZXJuYXRlO2lmKG51bGw9PT11KXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXt0PXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PXUuY2hpbGQpe2Zvcih1PWwuY2hpbGQ7dTspe2lmKHU9PT10KXJldHVybiBRZShsKSxlO2lmKHU9PT1yKXJldHVybiBRZShsKSxuO3U9dS5zaWJsaW5nfXRocm93IEVycm9yKGEoMTg4KSl9aWYodC5yZXR1cm4hPT1yLnJldHVybil0PWwscj11O2Vsc2V7Zm9yKHZhciBvPSExLGk9bC5jaGlsZDtpOyl7aWYoaT09PXQpe289ITAsdD1sLHI9dTticmVha31pZihpPT09cil7bz0hMCxyPWwsdD11O2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXtmb3IoaT11LmNoaWxkO2k7KXtpZihpPT09dCl7bz0hMCx0PXUscj1sO2JyZWFrfWlmKGk9PT1yKXtvPSEwLHI9dSx0PWw7YnJlYWt9aT1pLnNpYmxpbmd9aWYoIW8pdGhyb3cgRXJyb3IoYSgxODkpKX19aWYodC5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKGEoMTkwKSl9aWYoMyE9PXQudGFnKXRocm93IEVycm9yKGEoMTg4KSk7cmV0dXJuIHQuc3RhdGVOb2RlLmN1cnJlbnQ9PT10P2U6bn0oZSkpPyRlKGUpOm51bGx9ZnVuY3Rpb24gJGUoZSl7aWYoNT09PWUudGFnfHw2PT09ZS50YWcpcmV0dXJuIGU7Zm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe3ZhciBuPSRlKGUpO2lmKG51bGwhPT1uKXJldHVybiBuO2U9ZS5zaWJsaW5nfXJldHVybiBudWxsfQp2YXIgcWU9bC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrLEtlPWwudW5zdGFibGVfY2FuY2VsQ2FsbGJhY2ssWWU9bC51bnN0YWJsZV9zaG91bGRZaWVsZCxYZT1sLnVuc3RhYmxlX3JlcXVlc3RQYWludCxHZT1sLnVuc3RhYmxlX25vdyxaZT1sLnVuc3RhYmxlX2dldEN1cnJlbnRQcmlvcml0eUxldmVsLEplPWwudW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHksZW49bC51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eSxubj1sLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LHRuPWwudW5zdGFibGVfTG93UHJpb3JpdHkscm49bC51bnN0YWJsZV9JZGxlUHJpb3JpdHksbG49bnVsbCxhbj1udWxsO3ZhciB1bj1NYXRoLmNsejMyP01hdGguY2x6MzI6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+Pj49MCwwPT09ZT8zMjozMS0ob24oZSkvc258MCl8MH0sb249TWF0aC5sb2csc249TWF0aC5MTjI7dmFyIGNuPTY0LGZuPTQxOTQzMDQ7ZnVuY3Rpb24gZG4oZSl7c3dpdGNoKGUmLWUpe2Nhc2UgMTpyZXR1cm4gMTtjYXNlIDI6cmV0dXJuIDI7Y2FzZSA0OnJldHVybiA0O2Nhc2UgODpyZXR1cm4gODtjYXNlIDE2OnJldHVybiAxNjtjYXNlIDMyOnJldHVybiAzMjtjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiA0MTk0MjQwJmU7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4gMTMwMDIzNDI0JmU7Y2FzZSAxMzQyMTc3Mjg6cmV0dXJuIDEzNDIxNzcyODtjYXNlIDI2ODQzNTQ1NjpyZXR1cm4gMjY4NDM1NDU2O2Nhc2UgNTM2ODcwOTEyOnJldHVybiA1MzY4NzA5MTI7Y2FzZSAxMDczNzQxODI0OnJldHVybiAxMDczNzQxODI0O2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIHBuKGUsbil7dmFyIHQ9ZS5wZW5kaW5nTGFuZXM7aWYoMD09PXQpcmV0dXJuIDA7dmFyIHI9MCxsPWUuc3VzcGVuZGVkTGFuZXMsYT1lLnBpbmdlZExhbmVzLHU9MjY4NDM1NDU1JnQ7aWYoMCE9PXUpe3ZhciBvPXUmfmw7MCE9PW8/cj1kbihvKTowIT09KGEmPXUpJiYocj1kbihhKSl9ZWxzZSAwIT09KHU9dCZ+bCk/cj1kbih1KTowIT09YSYmKHI9ZG4oYSkpO2lmKDA9PT1yKXJldHVybiAwO2lmKDAhPT1uJiZuIT09ciYmIShuJmwpJiYoKGw9ciYtcik+PShhPW4mLW4pfHwxNj09PWwmJjQxOTQyNDAmYSkpcmV0dXJuIG47aWYoNCZyJiYocnw9MTYmdCksMCE9PShuPWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyxuJj1yOzA8bjspbD0xPDwodD0zMS11bihuKSkscnw9ZVt0XSxuJj1+bDtyZXR1cm4gcn1mdW5jdGlvbiBtbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpyZXR1cm4gbisyNTA7Y2FzZSA4OmNhc2UgMTY6Y2FzZSAzMjpjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiBuKzVlMztkZWZhdWx0OnJldHVybi0xfX1mdW5jdGlvbiBobihlKXtyZXR1cm4gMCE9PShlPS0xMDczNzQxODI1JmUucGVuZGluZ0xhbmVzKT9lOjEwNzM3NDE4MjQmZT8xMDczNzQxODI0OjB9ZnVuY3Rpb24gZ24oKXt2YXIgZT1jbjtyZXR1cm4hKDQxOTQyNDAmKGNuPDw9MSkpJiYoY249NjQpLGV9ZnVuY3Rpb24gdm4oZSl7Zm9yKHZhciBuPVtdLHQ9MDszMT50O3QrKyluLnB1c2goZSk7cmV0dXJuIG59ZnVuY3Rpb24geW4oZSxuLHQpe2UucGVuZGluZ0xhbmVzfD1uLDUzNjg3MDkxMiE9PW4mJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wKSwoZT1lLmV2ZW50VGltZXMpW249MzEtdW4obildPXR9ZnVuY3Rpb24gYm4oZSxuKXt2YXIgdD1lLmVudGFuZ2xlZExhbmVzfD1uO2ZvcihlPWUuZW50YW5nbGVtZW50czt0Oyl7dmFyIHI9MzEtdW4odCksbD0xPDxyO2wmbnxlW3JdJm4mJihlW3JdfD1uKSx0Jj1+bH19dmFyIGtuPTA7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MjY4NDM1NDU1JmU/MTY6NTM2ODcwOTEyOjQ6MX12YXIgU24seG4sRW4sQ24sem4sTm49ITEsX249W10sUG49bnVsbCxUbj1udWxsLExuPW51bGwsTW49bmV3IE1hcCxGbj1uZXcgTWFwLFJuPVtdLERuPSJtb3VzZWRvd24gbW91c2V1cCB0b3VjaGNhbmNlbCB0b3VjaGVuZCB0b3VjaHN0YXJ0IGF1eGNsaWNrIGRibGNsaWNrIHBvaW50ZXJjYW5jZWwgcG9pbnRlcmRvd24gcG9pbnRlcnVwIGRyYWdlbmQgZHJhZ3N0YXJ0IGRyb3AgY29tcG9zaXRpb25lbmQgY29tcG9zaXRpb25zdGFydCBrZXlkb3duIGtleXByZXNzIGtleXVwIGlucHV0IHRleHRJbnB1dCBjb3B5IGN1dCBwYXN0ZSBjbGljayBjaGFuZ2UgY29udGV4dG1lbnUgcmVzZXQgc3VibWl0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIEluKGUsbil7c3dpdGNoKGUpe2Nhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6UG49bnVsbDticmVhaztjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnbGVhdmUiOlRuPW51bGw7YnJlYWs7Y2FzZSJtb3VzZW92ZXIiOmNhc2UibW91c2VvdXQiOkxuPW51bGw7YnJlYWs7Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVyb3V0IjpNbi5kZWxldGUobi5wb2ludGVySWQpO2JyZWFrO2Nhc2UiZ290cG9pbnRlcmNhcHR1cmUiOmNhc2UibG9zdHBvaW50ZXJjYXB0dXJlIjpGbi5kZWxldGUobi5wb2ludGVySWQpfX1mdW5jdGlvbiBPbihlLG4sdCxyLGwsYSl7cmV0dXJuIG51bGw9PT1lfHxlLm5hdGl2ZUV2ZW50IT09YT8oZT17YmxvY2tlZE9uOm4sZG9tRXZlbnROYW1lOnQsZXZlbnRTeXN0ZW1GbGFnczpyLG5hdGl2ZUV2ZW50OmEsdGFyZ2V0Q29udGFpbmVyczpbbF19LG51bGwhPT1uJiYobnVsbCE9PShuPWJsKG4pKSYmeG4obikpLAplKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLG49ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1sJiYtMT09PW4uaW5kZXhPZihsKSYmbi5wdXNoKGwpLGUpfWZ1bmN0aW9uIFVuKGUpe3ZhciBuPXlsKGUudGFyZ2V0KTtpZihudWxsIT09bil7dmFyIHQ9V2Uobik7aWYobnVsbCE9PXQpaWYoMTM9PT0obj10LnRhZykpe2lmKG51bGwhPT0obj1IZSh0KSkpcmV0dXJuIGUuYmxvY2tlZE9uPW4sdm9pZCB6bihlLnByaW9yaXR5LChmdW5jdGlvbigpe0VuKHQpfSkpfWVsc2UgaWYoMz09PW4mJnQuc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpcmV0dXJuIHZvaWQoZS5ibG9ja2VkT249Mz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbCl9ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBWbihlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciBuPWUudGFyZ2V0Q29udGFpbmVyczswPG4ubGVuZ3RoOyl7dmFyIHQ9WG4oZS5kb21FdmVudE5hbWUsZS5ldmVudFN5c3RlbUZsYWdzLG5bMF0sZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PXQpcmV0dXJuIG51bGwhPT0obj1ibCh0KSkmJnhuKG4pLGUuYmxvY2tlZE9uPXQsITE7dmFyIHI9bmV3KHQ9ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3IodC50eXBlLHQpO2tlPXIsdC50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSxrZT1udWxsLG4uc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBBbihlLG4sdCl7Vm4oZSkmJnQuZGVsZXRlKG4pfWZ1bmN0aW9uIEJuKCl7Tm49ITEsbnVsbCE9PVBuJiZWbihQbikmJihQbj1udWxsKSxudWxsIT09VG4mJlZuKFRuKSYmKFRuPW51bGwpLG51bGwhPT1MbiYmVm4oTG4pJiYoTG49bnVsbCksTW4uZm9yRWFjaChBbiksRm4uZm9yRWFjaChBbil9ZnVuY3Rpb24gV24oZSxuKXtlLmJsb2NrZWRPbj09PW4mJihlLmJsb2NrZWRPbj1udWxsLE5ufHwoTm49ITAsbC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGwudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksQm4pKSl9ZnVuY3Rpb24gSG4oZSl7ZnVuY3Rpb24gbihuKXtyZXR1cm4gV24obixlKX1pZigwPF9uLmxlbmd0aCl7V24oX25bMF0sZSk7Zm9yKHZhciB0PTE7dDxfbi5sZW5ndGg7dCsrKXt2YXIgcj1fblt0XTtyLmJsb2NrZWRPbj09PWUmJihyLmJsb2NrZWRPbj1udWxsKX19Zm9yKG51bGwhPT1QbiYmV24oUG4sZSksbnVsbCE9PVRuJiZXbihUbixlKSxudWxsIT09TG4mJlduKExuLGUpLE1uLmZvckVhY2gobiksRm4uZm9yRWFjaChuKSx0PTA7dDxSbi5sZW5ndGg7dCsrKShyPVJuW3RdKS5ibG9ja2VkT249PT1lJiYoci5ibG9ja2VkT249bnVsbCk7Zm9yKDswPFJuLmxlbmd0aCYmbnVsbD09PSh0PVJuWzBdKS5ibG9ja2VkT247KVVuKHQpLG51bGw9PT10LmJsb2NrZWRPbiYmUm4uc2hpZnQoKX12YXIgUW49ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxqbj0hMDtmdW5jdGlvbiAkbihlLG4sdCxyKXt2YXIgbD1rbixhPVFuLnRyYW5zaXRpb247UW4udHJhbnNpdGlvbj1udWxsO3RyeXtrbj0xLEtuKGUsbix0LHIpfWZpbmFsbHl7a249bCxRbi50cmFuc2l0aW9uPWF9fWZ1bmN0aW9uIHFuKGUsbix0LHIpe3ZhciBsPWtuLGE9UW4udHJhbnNpdGlvbjtRbi50cmFuc2l0aW9uPW51bGw7dHJ5e2tuPTQsS24oZSxuLHQscil9ZmluYWxseXtrbj1sLFFuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24gS24oZSxuLHQscil7aWYoam4pe3ZhciBsPVhuKGUsbix0LHIpO2lmKG51bGw9PT1sKVFyKGUsbixyLFluLHQpLEluKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLG4sdCxyLGwpe3N3aXRjaChuKXtjYXNlImZvY3VzaW4iOnJldHVybiBQbj1PbihQbixlLG4sdCxyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gVG49T24oVG4sZSxuLHQscixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIExuPU9uKExuLGUsbix0LHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIE1uLnNldChhLE9uKE1uLmdldChhKXx8bnVsbCxlLG4sdCxyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxGbi5zZXQoYSxPbihGbi5nZXQoYSl8fG51bGwsZSxuLHQscixsKSksITB9cmV0dXJuITF9KGwsZSxuLHQscikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKEluKGUsciksNCZuJiYtMTxEbi5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9YmwobCk7aWYobnVsbCE9PWEmJlNuKGEpLG51bGw9PT0oYT1YbihlLG4sdCxyKSkmJlFyKGUsbixyLFluLHQpLGE9PT1sKWJyZWFrO2w9YX1udWxsIT09bCYmci5zdG9wUHJvcGFnYXRpb24oKX1lbHNlIFFyKGUsbixyLG51bGwsdCl9fXZhciBZbj1udWxsO2Z1bmN0aW9uIFhuKGUsbix0LHIpe2lmKFluPW51bGwsbnVsbCE9PShlPXlsKGU9d2UocikpKSlpZihudWxsPT09KG49V2UoZSkpKWU9bnVsbDtlbHNlIGlmKDEzPT09KHQ9bi50YWcpKXtpZihudWxsIT09KGU9SGUobikpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT10KXtpZihuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIG4hPT1lJiYoZT1udWxsKTtyZXR1cm4gWW49ZSxudWxsfWZ1bmN0aW9uIEduKGUpe3N3aXRjaChlKXtjYXNlImNhbmNlbCI6Y2FzZSJjbGljayI6Y2FzZSJjbG9zZSI6Y2FzZSJjb250ZXh0bWVudSI6Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdzdGFydCI6Y2FzZSJkcm9wIjpjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmNhc2UiaW5wdXQiOmNhc2UiaW52YWxpZCI6Y2FzZSJrZXlkb3duIjpjYXNlImtleXByZXNzIjpjYXNlImtleXVwIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZXVwIjpjYXNlInBhc3RlIjpjYXNlInBhdXNlIjpjYXNlInBsYXkiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVydXAiOmNhc2UicmF0ZWNoYW5nZSI6CmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goWmUoKSl7Y2FzZSBKZTpyZXR1cm4gMTtjYXNlIGVuOnJldHVybiA0O2Nhc2Ugbm46Y2FzZSB0bjpyZXR1cm4gMTY7Y2FzZSBybjpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgWm49bnVsbCxKbj1udWxsLGV0PW51bGw7ZnVuY3Rpb24gbnQoKXtpZihldClyZXR1cm4gZXQ7dmFyIGUsbix0PUpuLHI9dC5sZW5ndGgsbD0idmFsdWUiaW4gWm4/Wm4udmFsdWU6Wm4udGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmdFtlXT09PWxbZV07ZSsrKTt2YXIgdT1yLWU7Zm9yKG49MTtuPD11JiZ0W3Itbl09PT1sW2Etbl07bisrKTtyZXR1cm4gZXQ9bC5zbGljZShlLDE8bj8xLW46dm9pZCAwKX1mdW5jdGlvbiB0dChlKXt2YXIgbj1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PW4mJihlPTEzKTplPW4sMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gcnQoKXtyZXR1cm4hMH1mdW5jdGlvbiBsdCgpe3JldHVybiExfWZ1bmN0aW9uIGF0KGUpe2Z1bmN0aW9uIG4obix0LHIsbCxhKXtmb3IodmFyIHUgaW4gdGhpcy5fcmVhY3ROYW1lPW4sdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eSh1KSYmKG49ZVt1XSx0aGlzW3VdPW4/bihsKTpsW3VdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT9ydDpsdCx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWx0LHRoaXN9cmV0dXJuIE8obi5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1ydCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1ydCl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpydH0pLG59dmFyIHV0LG90LGl0LHN0PXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LGN0PWF0KHN0KSxmdD1PKHt9LHN0LHt2aWV3OjAsZGV0YWlsOjB9KSxkdD1hdChmdCkscHQ9Tyh7fSxmdCx7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT1pdCYmKGl0JiYibW91c2Vtb3ZlIj09PWUudHlwZT8odXQ9ZS5zY3JlZW5YLWl0LnNjcmVlblgsb3Q9ZS5zY3JlZW5ZLWl0LnNjcmVlblkpOm90PXV0PTAsaXQ9ZSksdXQpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOm90fX0pLG10PWF0KHB0KSxodD1hdChPKHt9LHB0LHtkYXRhVHJhbnNmZXI6MH0pKSxndD1hdChPKHt9LGZ0LHtyZWxhdGVkVGFyZ2V0OjB9KSksdnQ9YXQoTyh7fSxzdCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHl0PU8oe30sc3Qse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSksYnQ9YXQoeXQpLGt0PWF0KE8oe30sc3Qse2RhdGE6MH0pKSx3dD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLApVcDoiQXJyb3dVcCIsUmlnaHQ6IkFycm93UmlnaHQiLERvd246IkFycm93RG93biIsRGVsOiJEZWxldGUiLFdpbjoiT1MiLE1lbnU6IkNvbnRleHRNZW51IixBcHBzOiJDb250ZXh0TWVudSIsU2Nyb2xsOiJTY3JvbGxMb2NrIixNb3pQcmludGFibGVLZXk6IlVuaWRlbnRpZmllZCJ9LFN0PXs4OiJCYWNrc3BhY2UiLDk6IlRhYiIsMTI6IkNsZWFyIiwxMzoiRW50ZXIiLDE2OiJTaGlmdCIsMTc6IkNvbnRyb2wiLDE4OiJBbHQiLDE5OiJQYXVzZSIsMjA6IkNhcHNMb2NrIiwyNzoiRXNjYXBlIiwzMjoiICIsMzM6IlBhZ2VVcCIsMzQ6IlBhZ2VEb3duIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zZXJ0Iiw0NjoiRGVsZXRlIiwxMTI6IkYxIiwxMTM6IkYyIiwxMTQ6IkYzIiwxMTU6IkY0IiwxMTY6IkY1IiwxMTc6IkY2IiwxMTg6IkY3IiwxMTk6IkY4IiwxMjA6IkY5IiwxMjE6IkYxMCIsMTIyOiJGMTEiLDEyMzoiRjEyIiwxNDQ6Ik51bUxvY2siLDE0NToiU2Nyb2xsTG9jayIsMjI0OiJNZXRhIn0seHQ9e0FsdDoiYWx0S2V5IixDb250cm9sOiJjdHJsS2V5IixNZXRhOiJtZXRhS2V5IixTaGlmdDoic2hpZnRLZXkifTtmdW5jdGlvbiBFdChlKXt2YXIgbj10aGlzLm5hdGl2ZUV2ZW50O3JldHVybiBuLmdldE1vZGlmaWVyU3RhdGU/bi5nZXRNb2RpZmllclN0YXRlKGUpOiEhKGU9eHRbZV0pJiYhIW5bZV19ZnVuY3Rpb24gQ3QoKXtyZXR1cm4gRXR9dmFyIHp0PU8oe30sZnQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIG49d3RbZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PW4pcmV0dXJuIG59cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPXR0KGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1N0W2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSxOdD1hdCh6dCksX3Q9YXQoTyh7fSxwdCx7cG9pbnRlcklkOjAsd2lkdGg6MCxoZWlnaHQ6MCxwcmVzc3VyZTowLHRhbmdlbnRpYWxQcmVzc3VyZTowLHRpbHRYOjAsdGlsdFk6MCx0d2lzdDowLHBvaW50ZXJUeXBlOjAsaXNQcmltYXJ5OjB9KSksUHQ9YXQoTyh7fSxmdCx7dG91Y2hlczowLHRhcmdldFRvdWNoZXM6MCxjaGFuZ2VkVG91Y2hlczowLGFsdEtleTowLG1ldGFLZXk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxnZXRNb2RpZmllclN0YXRlOkN0fSkpLFR0PWF0KE8oe30sc3Qse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLEx0PU8oe30scHQse2RlbHRhWDpmdW5jdGlvbihlKXtyZXR1cm4iZGVsdGFYImluIGU/ZS5kZWx0YVg6IndoZWVsRGVsdGFYImluIGU/LWUud2hlZWxEZWx0YVg6MH0sZGVsdGFZOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVkiaW4gZT9lLmRlbHRhWToid2hlZWxEZWx0YVkiaW4gZT8tZS53aGVlbERlbHRhWToid2hlZWxEZWx0YSJpbiBlPy1lLndoZWVsRGVsdGE6MH0sZGVsdGFaOjAsZGVsdGFNb2RlOjB9KSxNdD1hdChMdCksRnQ9WzksMTMsMjcsMzJdLFJ0PWMmJiJDb21wb3NpdGlvbkV2ZW50ImluIHdpbmRvdyxEdD1udWxsO2MmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJihEdD1kb2N1bWVudC5kb2N1bWVudE1vZGUpO3ZhciBJdD1jJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIUR0LE90PWMmJighUnR8fER0JiY4PER0JiYxMT49RHQpLFV0PVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLFZ0PSExO2Z1bmN0aW9uIEF0KGUsbil7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09RnQuaW5kZXhPZihuLmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PW4ua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPWUuZGV0YWlsKSYmImRhdGEiaW4gZT9lLmRhdGE6bnVsbH12YXIgV3Q9ITE7dmFyIEh0PXtjb2xvcjohMCxkYXRlOiEwLGRhdGV0aW1lOiEwLCJkYXRldGltZS1sb2NhbCI6ITAsZW1haWw6ITAsbW9udGg6ITAsbnVtYmVyOiEwLHBhc3N3b3JkOiEwLHJhbmdlOiEwLHNlYXJjaDohMCx0ZWw6ITAsdGV4dDohMCx0aW1lOiEwLHVybDohMCx3ZWVrOiEwfTtmdW5jdGlvbiBRdChlKXt2YXIgbj1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PW4/ISFIdFtlLnR5cGVdOiJ0ZXh0YXJlYSI9PT1ufWZ1bmN0aW9uIGp0KGUsbix0LHIpe3plKHIpLDA8KG49JHIobiwib25DaGFuZ2UiKSkubGVuZ3RoJiYodD1uZXcgY3QoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLHQsciksZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczpufSkpfXZhciAkdD1udWxsLHF0PW51bGw7ZnVuY3Rpb24gS3QoZSl7VXIoZSwwKX1mdW5jdGlvbiBZdChlKXtpZihxKGtsKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBYdChlLG4pe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gbn12YXIgR3Q9ITE7aWYoYyl7dmFyIFp0O2lmKGMpe3ZhciBKdD0ib25pbnB1dCJpbiBkb2N1bWVudDtpZighSnQpe3ZhciBlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlci5zZXRBdHRyaWJ1dGUoIm9uaW5wdXQiLCJyZXR1cm47IiksSnQ9ImZ1bmN0aW9uIj09dHlwZW9mIGVyLm9uaW5wdXR9WnQ9SnQKfWVsc2UgWnQ9ITE7R3Q9WnQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSl9ZnVuY3Rpb24gbnIoKXskdCYmKCR0LmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikscXQ9JHQ9bnVsbCl9ZnVuY3Rpb24gdHIoZSl7aWYoInZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZZdChxdCkpe3ZhciBuPVtdO2p0KG4scXQsZSx3ZShlKSksTGUoS3Qsbil9fWZ1bmN0aW9uIHJyKGUsbix0KXsiZm9jdXNpbiI9PT1lPyhucigpLHF0PXQsKCR0PW4pLmF0dGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikpOiJmb2N1c291dCI9PT1lJiZucigpfWZ1bmN0aW9uIGxyKGUpe2lmKCJzZWxlY3Rpb25jaGFuZ2UiPT09ZXx8ImtleXVwIj09PWV8fCJrZXlkb3duIj09PWUpcmV0dXJuIFl0KHF0KX1mdW5jdGlvbiBhcihlLG4pe2lmKCJjbGljayI9PT1lKXJldHVybiBZdChuKX1mdW5jdGlvbiB1cihlLG4pe2lmKCJpbnB1dCI9PT1lfHwiY2hhbmdlIj09PWUpcmV0dXJuIFl0KG4pfXZhciBvcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLG4pe3JldHVybiBlPT09biYmKDAhPT1lfHwxL2U9PTEvbil8fGUhPWUmJm4hPW59O2Z1bmN0aW9uIGlyKGUsbil7aWYob3IoZSxuKSlyZXR1cm4hMDtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIG58fG51bGw9PT1uKXJldHVybiExO3ZhciB0PU9iamVjdC5rZXlzKGUpLHI9T2JqZWN0LmtleXMobik7aWYodC5sZW5ndGghPT1yLmxlbmd0aClyZXR1cm4hMTtmb3Iocj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO2lmKCFmLmNhbGwobixsKXx8IW9yKGVbbF0sbltsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gc3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIGNyKGUsbil7dmFyIHQscj1zcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYodD1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PW4mJnQ+PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6bi1lfTtlPXR9ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1zcihyKX19ZnVuY3Rpb24gZnIoZSxuKXtyZXR1cm4hKCFlfHwhbikmJihlPT09bnx8KCFlfHwzIT09ZS5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9mcihlLG4ucGFyZW50Tm9kZSk6ImNvbnRhaW5zImluIGU/ZS5jb250YWlucyhuKTohIWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24obikpKSl9ZnVuY3Rpb24gZHIoKXtmb3IodmFyIGU9d2luZG93LG49SygpO24gaW5zdGFuY2VvZiBlLkhUTUxJRnJhbWVFbGVtZW50Oyl7dHJ5e3ZhciB0PSJzdHJpbmciPT10eXBlb2Ygbi5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWZ9Y2F0Y2goZSl7dD0hMX1pZighdClicmVhaztuPUsoKGU9bi5jb250ZW50V2luZG93KS5kb2N1bWVudCl9cmV0dXJuIG59ZnVuY3Rpb24gcHIoZSl7dmFyIG49ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiBuJiYoImlucHV0Ij09PW4mJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09bnx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfWZ1bmN0aW9uIG1yKGUpe3ZhciBuPWRyKCksdD1lLmZvY3VzZWRFbGVtLHI9ZS5zZWxlY3Rpb25SYW5nZTtpZihuIT09dCYmdCYmdC5vd25lckRvY3VtZW50JiZmcih0Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHQpKXtpZihudWxsIT09ciYmcHIodCkpaWYobj1yLnN0YXJ0LHZvaWQgMD09PShlPXIuZW5kKSYmKGU9biksInNlbGVjdGlvblN0YXJ0ImluIHQpdC5zZWxlY3Rpb25TdGFydD1uLHQuc2VsZWN0aW9uRW5kPU1hdGgubWluKGUsdC52YWx1ZS5sZW5ndGgpO2Vsc2UgaWYoKGU9KG49dC5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm4uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKXtlPWUuZ2V0U2VsZWN0aW9uKCk7dmFyIGw9dC50ZXh0Q29udGVudC5sZW5ndGgsYT1NYXRoLm1pbihyLnN0YXJ0LGwpO3I9dm9pZCAwPT09ci5lbmQ/YTpNYXRoLm1pbihyLmVuZCxsKSwhZS5leHRlbmQmJmE+ciYmKGw9cixyPWEsYT1sKSxsPWNyKHQsYSk7dmFyIHU9Y3IodCxyKTtsJiZ1JiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bC5ub2RlfHxlLmFuY2hvck9mZnNldCE9PWwub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXUubm9kZXx8ZS5mb2N1c09mZnNldCE9PXUub2Zmc2V0KSYmKChuPW4uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobC5ub2RlLGwub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGE+cj8oZS5hZGRSYW5nZShuKSxlLmV4dGVuZCh1Lm5vZGUsdS5vZmZzZXQpKToobi5zZXRFbmQodS5ub2RlLHUub2Zmc2V0KSxlLmFkZFJhbmdlKG4pKSl9Zm9yKG49W10sZT10O2U9ZS5wYXJlbnROb2RlOykxPT09ZS5ub2RlVHlwZSYmbi5wdXNoKHtlbGVtZW50OmUsbGVmdDplLnNjcm9sbExlZnQsdG9wOmUuc2Nyb2xsVG9wfSk7Zm9yKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvY3VzJiZ0LmZvY3VzKCksdD0wO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pLmVsZW1lbnQuc2Nyb2xsTGVmdD1lLmxlZnQsZS5lbGVtZW50LnNjcm9sbFRvcD1lLnRvcH19dmFyIGhyPWMmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJjExPj1kb2N1bWVudC5kb2N1bWVudE1vZGUsZ3I9bnVsbCx2cj1udWxsLHlyPW51bGwsYnI9ITE7ZnVuY3Rpb24ga3IoZSxuLHQpe3ZhciByPXQud2luZG93PT09dD90LmRvY3VtZW50Ojk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O2JyfHxudWxsPT1ncnx8Z3IhPT1LKHIpfHwoInNlbGVjdGlvblN0YXJ0ImluKHI9Z3IpJiZwcihyKT9yPXtzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZAp9OnI9e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0seXImJmlyKHlyLHIpfHwoeXI9ciwwPChyPSRyKHZyLCJvblNlbGVjdCIpKS5sZW5ndGgmJihuPW5ldyBjdCgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsbix0KSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnJ9KSxuLnRhcmdldD1ncikpKX1mdW5jdGlvbiB3cihlLG4pe3ZhciB0PXt9O3JldHVybiB0W2UudG9Mb3dlckNhc2UoKV09bi50b0xvd2VyQ2FzZSgpLHRbIldlYmtpdCIrZV09IndlYmtpdCIrbix0WyJNb3oiK2VdPSJtb3oiK24sdH12YXIgU3I9e2FuaW1hdGlvbmVuZDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOndyKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9uZW5kOndyKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvbkVuZCIpfSx4cj17fSxFcj17fTtmdW5jdGlvbiBDcihlKXtpZih4cltlXSlyZXR1cm4geHJbZV07aWYoIVNyW2VdKXJldHVybiBlO3ZhciBuLHQ9U3JbZV07Zm9yKG4gaW4gdClpZih0Lmhhc093blByb3BlcnR5KG4pJiZuIGluIEVyKXJldHVybiB4cltlXT10W25dO3JldHVybiBlfWMmJihFcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKS5zdHlsZSwiQW5pbWF0aW9uRXZlbnQiaW4gd2luZG93fHwoZGVsZXRlIFNyLmFuaW1hdGlvbmVuZC5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbml0ZXJhdGlvbi5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbnN0YXJ0LmFuaW1hdGlvbiksIlRyYW5zaXRpb25FdmVudCJpbiB3aW5kb3d8fGRlbGV0ZSBTci50cmFuc2l0aW9uZW5kLnRyYW5zaXRpb24pO3ZhciB6cj1DcigiYW5pbWF0aW9uZW5kIiksTnI9Q3IoImFuaW1hdGlvbml0ZXJhdGlvbiIpLF9yPUNyKCJhbmltYXRpb25zdGFydCIpLFByPUNyKCJ0cmFuc2l0aW9uZW5kIiksVHI9bmV3IE1hcCxMcj0iYWJvcnQgYXV4Q2xpY2sgY2FuY2VsIGNhblBsYXkgY2FuUGxheVRocm91Z2ggY2xpY2sgY2xvc2UgY29udGV4dE1lbnUgY29weSBjdXQgZHJhZyBkcmFnRW5kIGRyYWdFbnRlciBkcmFnRXhpdCBkcmFnTGVhdmUgZHJhZ092ZXIgZHJhZ1N0YXJ0IGRyb3AgZHVyYXRpb25DaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgZ290UG9pbnRlckNhcHR1cmUgaW5wdXQgaW52YWxpZCBrZXlEb3duIGtleVByZXNzIGtleVVwIGxvYWQgbG9hZGVkRGF0YSBsb2FkZWRNZXRhZGF0YSBsb2FkU3RhcnQgbG9zdFBvaW50ZXJDYXB0dXJlIG1vdXNlRG93biBtb3VzZU1vdmUgbW91c2VPdXQgbW91c2VPdmVyIG1vdXNlVXAgcGFzdGUgcGF1c2UgcGxheSBwbGF5aW5nIHBvaW50ZXJDYW5jZWwgcG9pbnRlckRvd24gcG9pbnRlck1vdmUgcG9pbnRlck91dCBwb2ludGVyT3ZlciBwb2ludGVyVXAgcHJvZ3Jlc3MgcmF0ZUNoYW5nZSByZXNldCByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdWJtaXQgc3VzcGVuZCB0aW1lVXBkYXRlIHRvdWNoQ2FuY2VsIHRvdWNoRW5kIHRvdWNoU3RhcnQgdm9sdW1lQ2hhbmdlIHNjcm9sbCB0b2dnbGUgdG91Y2hNb3ZlIHdhaXRpbmcgd2hlZWwiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTXIoZSxuKXtUci5zZXQoZSxuKSxpKG4sW2VdKX1mb3IodmFyIEZyPTA7RnI8THIubGVuZ3RoO0ZyKyspe3ZhciBScj1McltGcl07TXIoUnIudG9Mb3dlckNhc2UoKSwib24iKyhSclswXS50b1VwcGVyQ2FzZSgpK1JyLnNsaWNlKDEpKSl9TXIoenIsIm9uQW5pbWF0aW9uRW5kIiksTXIoTnIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIiksTXIoX3IsIm9uQW5pbWF0aW9uU3RhcnQiKSxNcigiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIiksTXIoImZvY3VzaW4iLCJvbkZvY3VzIiksTXIoImZvY3Vzb3V0Iiwib25CbHVyIiksTXIoUHIsIm9uVHJhbnNpdGlvbkVuZCIpLHMoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxzKCJvbk1vdXNlTGVhdmUiLFsibW91c2VvdXQiLCJtb3VzZW92ZXIiXSkscygib25Qb2ludGVyRW50ZXIiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLHMoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxpKCJvbkNoYW5nZSIsImNoYW5nZSBjbGljayBmb2N1c2luIGZvY3Vzb3V0IGlucHV0IGtleWRvd24ga2V5dXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxpKCJvblNlbGVjdCIsImZvY3Vzb3V0IGNvbnRleHRtZW51IGRyYWdlbmQgZm9jdXNpbiBrZXlkb3duIGtleXVwIG1vdXNlZG93biBtb3VzZXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksaSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksaSgib25Db21wb3NpdGlvbkVuZCIsImNvbXBvc2l0aW9uZW5kIGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uU3RhcnQiLCJjb21wb3NpdGlvbnN0YXJ0IGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpCjt2YXIgRHI9ImFib3J0IGNhbnBsYXkgY2FucGxheXRocm91Z2ggZHVyYXRpb25jaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgbG9hZGVkZGF0YSBsb2FkZWRtZXRhZGF0YSBsb2Fkc3RhcnQgcGF1c2UgcGxheSBwbGF5aW5nIHByb2dyZXNzIHJhdGVjaGFuZ2UgcmVzaXplIHNlZWtlZCBzZWVraW5nIHN0YWxsZWQgc3VzcGVuZCB0aW1ldXBkYXRlIHZvbHVtZWNoYW5nZSB3YWl0aW5nIi5zcGxpdCgiICIpLElyPW5ldyBTZXQoImNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHRvZ2dsZSIuc3BsaXQoIiAiKS5jb25jYXQoRHIpKTtmdW5jdGlvbiBPcihlLG4sdCl7dmFyIHI9ZS50eXBlfHwidW5rbm93bi1ldmVudCI7ZS5jdXJyZW50VGFyZ2V0PXQsZnVuY3Rpb24oZSxuLHQscixsLHUsbyxpLHMpe2lmKEJlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxJZSl7aWYoIUllKXRocm93IEVycm9yKGEoMTk4KSk7dmFyIGM9T2U7SWU9ITEsT2U9bnVsbCxVZXx8KFVlPSEwLFZlPWMpfX0ocixuLHZvaWQgMCxlKSxlLmN1cnJlbnRUYXJnZXQ9bnVsbH1mdW5jdGlvbiBVcihlLG4pe249ISEoNCZuKTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIHI9ZVt0XSxsPXIuZXZlbnQ7cj1yLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYobilmb3IodmFyIHU9ci5sZW5ndGgtMTswPD11O3UtLSl7dmFyIG89clt1XSxpPW8uaW5zdGFuY2Uscz1vLmN1cnJlbnRUYXJnZXQ7aWYobz1vLmxpc3RlbmVyLGkhPT1hJiZsLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtPcihsLG8scyksYT1pfWVsc2UgZm9yKHU9MDt1PHIubGVuZ3RoO3UrKyl7aWYoaT0obz1yW3VdKS5pbnN0YW5jZSxzPW8uY3VycmVudFRhcmdldCxvPW8ubGlzdGVuZXIsaSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO09yKGwsbyxzKSxhPWl9fX1pZihVZSl0aHJvdyBlPVZlLFVlPSExLFZlPW51bGwsZX1mdW5jdGlvbiBWcihlLG4pe3ZhciB0PW5baGxdO3ZvaWQgMD09PXQmJih0PW5baGxdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjt0LmhhcyhyKXx8KEhyKG4sZSwyLCExKSx0LmFkZChyKSl9ZnVuY3Rpb24gQXIoZSxuLHQpe3ZhciByPTA7biYmKHJ8PTQpLEhyKHQsZSxyLG4pfXZhciBCcj0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBXcihlKXtpZighZVtCcl0pe2VbQnJdPSEwLHUuZm9yRWFjaCgoZnVuY3Rpb24obil7InNlbGVjdGlvbmNoYW5nZSIhPT1uJiYoSXIuaGFzKG4pfHxBcihuLCExLGUpLEFyKG4sITAsZSkpfSkpO3ZhciBuPTk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50O251bGw9PT1ufHxuW0JyXXx8KG5bQnJdPSEwLEFyKCJzZWxlY3Rpb25jaGFuZ2UiLCExLG4pKX19ZnVuY3Rpb24gSHIoZSxuLHQscil7c3dpdGNoKEduKG4pKXtjYXNlIDE6dmFyIGw9JG47YnJlYWs7Y2FzZSA0Omw9cW47YnJlYWs7ZGVmYXVsdDpsPUtufXQ9bC5iaW5kKG51bGwsbix0LGUpLGw9dm9pZCAwLCFGZXx8InRvdWNoc3RhcnQiIT09biYmInRvdWNobW92ZSIhPT1uJiYid2hlZWwiIT09bnx8KGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIobix0LHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcihuLHQsITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKG4sdCx7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKG4sdCwhMSl9ZnVuY3Rpb24gUXIoZSxuLHQscixsKXt2YXIgYT1yO2lmKCEoMSZufHwyJm58fG51bGw9PT1yKSllOmZvcig7Oyl7aWYobnVsbD09PXIpcmV0dXJuO3ZhciB1PXIudGFnO2lmKDM9PT11fHw0PT09dSl7dmFyIG89ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihvPT09bHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PWwpYnJlYWs7aWYoND09PXUpZm9yKHU9ci5yZXR1cm47bnVsbCE9PXU7KXt2YXIgaT11LnRhZztpZigoMz09PWl8fDQ9PT1pKSYmKChpPXUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09bHx8OD09PWkubm9kZVR5cGUmJmkucGFyZW50Tm9kZT09PWwpKXJldHVybjt1PXUucmV0dXJufWZvcig7bnVsbCE9PW87KXtpZihudWxsPT09KHU9eWwobykpKXJldHVybjtpZig1PT09KGk9dS50YWcpfHw2PT09aSl7cj1hPXU7Y29udGludWUgZX1vPW8ucGFyZW50Tm9kZX19cj1yLnJldHVybn1MZSgoZnVuY3Rpb24oKXt2YXIgcj1hLGw9d2UodCksdT1bXTtlOnt2YXIgbz1Uci5nZXQoZSk7aWYodm9pZCAwIT09byl7dmFyIGk9Y3Qscz1lO3N3aXRjaChlKXtjYXNlImtleXByZXNzIjppZigwPT09dHQodCkpYnJlYWsgZTtjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmk9TnQ7YnJlYWs7Y2FzZSJmb2N1c2luIjpzPSJmb2N1cyIsaT1ndDticmVhaztjYXNlImZvY3Vzb3V0IjpzPSJibHVyIixpPWd0O2JyZWFrO2Nhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmk9Z3Q7YnJlYWs7Y2FzZSJjbGljayI6aWYoMj09PXQuYnV0dG9uKWJyZWFrIGU7Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2Vtb3ZlIjpjYXNlIm1vdXNldXAiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlImNvbnRleHRtZW51IjppPW10O2JyZWFrO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnZXhpdCI6Y2FzZSJkcmFnbGVhdmUiOmNhc2UiZHJhZ292ZXIiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmk9aHQ7YnJlYWs7Y2FzZSJ0b3VjaGNhbmNlbCI6Y2FzZSJ0b3VjaGVuZCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2UidG91Y2hzdGFydCI6aT1QdDticmVhaztjYXNlIHpyOmNhc2UgTnI6Y2FzZSBfcjppPXZ0O2JyZWFrO2Nhc2UgUHI6aT1UdDticmVhaztjYXNlInNjcm9sbCI6aT1kdDticmVhaztjYXNlIndoZWVsIjppPU10O2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOmk9YnQ7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOgpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVydXAiOmk9X3R9dmFyIGM9ISEoNCZuKSxmPSFjJiYic2Nyb2xsIj09PWUsZD1jP251bGwhPT1vP28rIkNhcHR1cmUiOm51bGw6bztjPVtdO2Zvcih2YXIgcCxtPXI7bnVsbCE9PW07KXt2YXIgaD0ocD1tKS5zdGF0ZU5vZGU7aWYoNT09PXAudGFnJiZudWxsIT09aCYmKHA9aCxudWxsIT09ZCYmKG51bGwhPShoPU1lKG0sZCkpJiZjLnB1c2goanIobSxoLHApKSkpLGYpYnJlYWs7bT1tLnJldHVybn0wPGMubGVuZ3RoJiYobz1uZXcgaShvLHMsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6Y30pKX19aWYoISg3Jm4pKXtpZihpPSJtb3VzZW91dCI9PT1lfHwicG9pbnRlcm91dCI9PT1lLCghKG89Im1vdXNlb3ZlciI9PT1lfHwicG9pbnRlcm92ZXIiPT09ZSl8fHQ9PT1rZXx8IShzPXQucmVsYXRlZFRhcmdldHx8dC5mcm9tRWxlbWVudCl8fCF5bChzKSYmIXNbbWxdKSYmKGl8fG8pJiYobz1sLndpbmRvdz09PWw/bDoobz1sLm93bmVyRG9jdW1lbnQpP28uZGVmYXVsdFZpZXd8fG8ucGFyZW50V2luZG93OndpbmRvdyxpPyhpPXIsbnVsbCE9PShzPShzPXQucmVsYXRlZFRhcmdldHx8dC50b0VsZW1lbnQpP3lsKHMpOm51bGwpJiYocyE9PShmPVdlKHMpKXx8NSE9PXMudGFnJiY2IT09cy50YWcpJiYocz1udWxsKSk6KGk9bnVsbCxzPXIpLGkhPT1zKSl7aWYoYz1tdCxoPSJvbk1vdXNlTGVhdmUiLGQ9Im9uTW91c2VFbnRlciIsbT0ibW91c2UiLCJwb2ludGVyb3V0IiE9PWUmJiJwb2ludGVyb3ZlciIhPT1lfHwoYz1fdCxoPSJvblBvaW50ZXJMZWF2ZSIsZD0ib25Qb2ludGVyRW50ZXIiLG09InBvaW50ZXIiKSxmPW51bGw9PWk/bzprbChpKSxwPW51bGw9PXM/bzprbChzKSwobz1uZXcgYyhoLG0rImxlYXZlIixpLHQsbCkpLnRhcmdldD1mLG8ucmVsYXRlZFRhcmdldD1wLGg9bnVsbCx5bChsKT09PXImJigoYz1uZXcgYyhkLG0rImVudGVyIixzLHQsbCkpLnRhcmdldD1wLGMucmVsYXRlZFRhcmdldD1mLGg9YyksZj1oLGkmJnMpZTp7Zm9yKGQ9cyxtPTAscD1jPWk7cDtwPXFyKHApKW0rKztmb3IocD0wLGg9ZDtoO2g9cXIoaCkpcCsrO2Zvcig7MDxtLXA7KWM9cXIoYyksbS0tO2Zvcig7MDxwLW07KWQ9cXIoZCkscC0tO2Zvcig7bS0tOyl7aWYoYz09PWR8fG51bGwhPT1kJiZjPT09ZC5hbHRlcm5hdGUpYnJlYWsgZTtjPXFyKGMpLGQ9cXIoZCl9Yz1udWxsfWVsc2UgYz1udWxsO251bGwhPT1pJiZLcih1LG8saSxjLCExKSxudWxsIT09cyYmbnVsbCE9PWYmJktyKHUsZixzLGMsITApfWlmKCJzZWxlY3QiPT09KGk9KG89cj9rbChyKTp3aW5kb3cpLm5vZGVOYW1lJiZvLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09aSYmImZpbGUiPT09by50eXBlKXZhciBnPVh0O2Vsc2UgaWYoUXQobykpaWYoR3QpZz11cjtlbHNle2c9bHI7dmFyIHY9cnJ9ZWxzZShpPW8ubm9kZU5hbWUpJiYiaW5wdXQiPT09aS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW8udHlwZXx8InJhZGlvIj09PW8udHlwZSkmJihnPWFyKTtzd2l0Y2goZyYmKGc9ZyhlLHIpKT9qdCh1LGcsdCxsKToodiYmdihlLG8sciksImZvY3Vzb3V0Ij09PWUmJih2PW8uX3dyYXBwZXJTdGF0ZSkmJnYuY29udHJvbGxlZCYmIm51bWJlciI9PT1vLnR5cGUmJmVlKG8sIm51bWJlciIsby52YWx1ZSkpLHY9cj9rbChyKTp3aW5kb3csZSl7Y2FzZSJmb2N1c2luIjooUXQodil8fCJ0cnVlIj09PXYuY29udGVudEVkaXRhYmxlKSYmKGdyPXYsdnI9cix5cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp5cj12cj1ncj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpicj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6YnI9ITEsa3IodSx0LGwpO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihocilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmtyKHUsdCxsKX12YXIgeTtpZihSdCllOntzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgYj0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmI9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Yj0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1iPXZvaWQgMH1lbHNlIFd0P0F0KGUsdCkmJihiPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZSYmMjI5PT09dC5rZXlDb2RlJiYoYj0ib25Db21wb3NpdGlvblN0YXJ0Iik7YiYmKE90JiYia28iIT09dC5sb2NhbGUmJihXdHx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1iPyJvbkNvbXBvc2l0aW9uRW5kIj09PWImJld0JiYoeT1udCgpKTooSm49InZhbHVlImluKFpuPWwpP1puLnZhbHVlOlpuLnRleHRDb250ZW50LFd0PSEwKSksMDwodj0kcihyLGIpKS5sZW5ndGgmJihiPW5ldyBrdChiLGUsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6YixsaXN0ZW5lcnM6dn0pLHk/Yi5kYXRhPXk6bnVsbCE9PSh5PUJ0KHQpKSYmKGIuZGF0YT15KSkpLCh5PUl0P2Z1bmN0aW9uKGUsbil7c3dpdGNoKGUpe2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBCdChuKTtjYXNlImtleXByZXNzIjpyZXR1cm4gMzIhPT1uLndoaWNoP251bGw6KFZ0PSEwLFV0KTtjYXNlInRleHRJbnB1dCI6cmV0dXJuKGU9bi5kYXRhKT09PVV0JiZWdD9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsdCk6ZnVuY3Rpb24oZSxuKXtpZihXdClyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IVJ0JiZBdChlLG4pPyhlPW50KCksZXQ9Sm49Wm49bnVsbCxXdD0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEobi5jdHJsS2V5fHxuLmFsdEtleXx8bi5tZXRhS2V5KXx8bi5jdHJsS2V5JiZuLmFsdEtleSl7aWYobi5jaGFyJiYxPG4uY2hhci5sZW5ndGgpcmV0dXJuIG4uY2hhcgo7aWYobi53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShuLndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gT3QmJiJrbyIhPT1uLmxvY2FsZT9udWxsOm4uZGF0YX19KGUsdCkpJiYoMDwocj0kcihyLCJvbkJlZm9yZUlucHV0IikpLmxlbmd0aCYmKGw9bmV3IGt0KCJvbkJlZm9yZUlucHV0IiwiYmVmb3JlaW5wdXQiLG51bGwsdCxsKSx1LnB1c2goe2V2ZW50OmwsbGlzdGVuZXJzOnJ9KSxsLmRhdGE9eSkpfVVyKHUsbil9KSl9ZnVuY3Rpb24ganIoZSxuLHQpe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOm4sY3VycmVudFRhcmdldDp0fX1mdW5jdGlvbiAkcihlLG4pe2Zvcih2YXIgdD1uKyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIGw9ZSxhPWwuc3RhdGVOb2RlOzU9PT1sLnRhZyYmbnVsbCE9PWEmJihsPWEsbnVsbCE9KGE9TWUoZSx0KSkmJnIudW5zaGlmdChqcihlLGEsbCkpLG51bGwhPShhPU1lKGUsbikpJiZyLnB1c2goanIoZSxhLGwpKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBxcihlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtkb3tlPWUucmV0dXJufXdoaWxlKGUmJjUhPT1lLnRhZyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gS3IoZSxuLHQscixsKXtmb3IodmFyIGE9bi5fcmVhY3ROYW1lLHU9W107bnVsbCE9PXQmJnQhPT1yOyl7dmFyIG89dCxpPW8uYWx0ZXJuYXRlLHM9by5zdGF0ZU5vZGU7aWYobnVsbCE9PWkmJmk9PT1yKWJyZWFrOzU9PT1vLnRhZyYmbnVsbCE9PXMmJihvPXMsbD9udWxsIT0oaT1NZSh0LGEpKSYmdS51bnNoaWZ0KGpyKHQsaSxvKSk6bHx8bnVsbCE9KGk9TWUodCxhKSkmJnUucHVzaChqcih0LGksbykpKSx0PXQucmV0dXJufTAhPT11Lmxlbmd0aCYmZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp1fSl9dmFyIFlyPS9cclxuPy9nLFhyPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gR3IoZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoWXIsIlxuIikucmVwbGFjZShYciwiIil9ZnVuY3Rpb24gWnIoZSxuLHQpe2lmKG49R3IobiksR3IoZSkhPT1uJiZ0KXRocm93IEVycm9yKGEoNDI1KSl9ZnVuY3Rpb24gSnIoKXt9dmFyIGVsPW51bGwsbmw9bnVsbDtmdW5jdGlvbiB0bChlLG4pe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiBuLmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIG4uY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBybD0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCxsbD0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsYWw9ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsdWw9ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PWFsP2Z1bmN0aW9uKGUpe3JldHVybiBhbC5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2gob2wpfTpybDtmdW5jdGlvbiBvbChlKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Rocm93IGV9KSl9ZnVuY3Rpb24gaWwoZSxuKXt2YXIgdD1uLHI9MDtkb3t2YXIgbD10Lm5leHRTaWJsaW5nO2lmKGUucmVtb3ZlQ2hpbGQodCksbCYmOD09PWwubm9kZVR5cGUpaWYoIi8kIj09PSh0PWwuZGF0YSkpe2lmKDA9PT1yKXJldHVybiBlLnJlbW92ZUNoaWxkKGwpLHZvaWQgSG4obik7ci0tfWVsc2UiJCIhPT10JiYiJD8iIT09dCYmIiQhIiE9PXR8fHIrKzt0PWx9d2hpbGUodCk7SG4obil9ZnVuY3Rpb24gc2woZSl7Zm9yKDtudWxsIT1lO2U9ZS5uZXh0U2libGluZyl7dmFyIG49ZS5ub2RlVHlwZTtpZigxPT09bnx8Mz09PW4pYnJlYWs7aWYoOD09PW4pe2lmKCIkIj09PShuPWUuZGF0YSl8fCIkISI9PT1ufHwiJD8iPT09bilicmVhaztpZigiLyQiPT09bilyZXR1cm4gbnVsbH19cmV0dXJuIGV9ZnVuY3Rpb24gY2woZSl7ZT1lLnByZXZpb3VzU2libGluZztmb3IodmFyIG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiJCI9PT10fHwiJCEiPT09dHx8IiQ/Ij09PXQpe2lmKDA9PT1uKXJldHVybiBlO24tLX1lbHNlIi8kIj09PXQmJm4rK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfXZhciBmbD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSxkbD0iX19yZWFjdEZpYmVyJCIrZmwscGw9Il9fcmVhY3RQcm9wcyQiK2ZsLG1sPSJfX3JlYWN0Q29udGFpbmVyJCIrZmwsaGw9Il9fcmVhY3RFdmVudHMkIitmbCxnbD0iX19yZWFjdExpc3RlbmVycyQiK2ZsLHZsPSJfX3JlYWN0SGFuZGxlcyQiK2ZsO2Z1bmN0aW9uIHlsKGUpe3ZhciBuPWVbZGxdO2lmKG4pcmV0dXJuIG47Zm9yKHZhciB0PWUucGFyZW50Tm9kZTt0Oyl7aWYobj10W21sXXx8dFtkbF0pe2lmKHQ9bi5hbHRlcm5hdGUsbnVsbCE9PW4uY2hpbGR8fG51bGwhPT10JiZudWxsIT09dC5jaGlsZClmb3IoZT1jbChlKTtudWxsIT09ZTspe2lmKHQ9ZVtkbF0pcmV0dXJuIHQ7ZT1jbChlKX1yZXR1cm4gbn10PShlPXQpLnBhcmVudE5vZGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYmwoZSl7cmV0dXJuIShlPWVbZGxdfHxlW21sXSl8fDUhPT1lLnRhZyYmNiE9PWUudGFnJiYxMyE9PWUudGFnJiYzIT09ZS50YWc/bnVsbDplfWZ1bmN0aW9uIGtsKGUpe2lmKDU9PT1lLnRhZ3x8Nj09PWUudGFnKXJldHVybiBlLnN0YXRlTm9kZTt0aHJvdyBFcnJvcihhKDMzKSl9ZnVuY3Rpb24gd2woZSl7cmV0dXJuIGVbcGxdfHxudWxsfXZhciBTbD1bXSx4bD0tMTtmdW5jdGlvbiBFbChlKXtyZXR1cm57Y3VycmVudDplfX1mdW5jdGlvbiBDbChlKXswPnhsfHwoZS5jdXJyZW50PVNsW3hsXSxTbFt4bF09bnVsbCx4bC0tKX1mdW5jdGlvbiB6bChlLG4pe3hsKyssU2xbeGxdPWUuY3VycmVudCxlLmN1cnJlbnQ9bn0KdmFyIE5sPXt9LF9sPUVsKE5sKSxQbD1FbCghMSksVGw9Tmw7ZnVuY3Rpb24gTGwoZSxuKXt2YXIgdD1lLnR5cGUuY29udGV4dFR5cGVzO2lmKCF0KXJldHVybiBObDt2YXIgcj1lLnN0YXRlTm9kZTtpZihyJiZyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkVW5tYXNrZWRDaGlsZENvbnRleHQ9PT1uKXJldHVybiByLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWFza2VkQ2hpbGRDb250ZXh0O3ZhciBsLGE9e307Zm9yKGwgaW4gdClhW2xdPW5bbF07cmV0dXJuIHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1uLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksYX1mdW5jdGlvbiBNbChlKXtyZXR1cm4gbnVsbCE9KGU9ZS5jaGlsZENvbnRleHRUeXBlcyl9ZnVuY3Rpb24gRmwoKXtDbChQbCksQ2woX2wpfWZ1bmN0aW9uIFJsKGUsbix0KXtpZihfbC5jdXJyZW50IT09TmwpdGhyb3cgRXJyb3IoYSgxNjgpKTt6bChfbCxuKSx6bChQbCx0KX1mdW5jdGlvbiBEbChlLG4sdCl7dmFyIHI9ZS5zdGF0ZU5vZGU7aWYobj1uLmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiByLmdldENoaWxkQ29udGV4dClyZXR1cm4gdDtmb3IodmFyIGwgaW4gcj1yLmdldENoaWxkQ29udGV4dCgpKWlmKCEobCBpbiBuKSl0aHJvdyBFcnJvcihhKDEwOCxIKGUpfHwiVW5rbm93biIsbCkpO3JldHVybiBPKHt9LHQscil9ZnVuY3Rpb24gSWwoZSl7cmV0dXJuIGU9KGU9ZS5zdGF0ZU5vZGUpJiZlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0fHxObCxUbD1fbC5jdXJyZW50LHpsKF9sLGUpLHpsKFBsLFBsLmN1cnJlbnQpLCEwfWZ1bmN0aW9uIE9sKGUsbix0KXt2YXIgcj1lLnN0YXRlTm9kZTtpZighcil0aHJvdyBFcnJvcihhKDE2OSkpO3Q/KGU9RGwoZSxuLFRsKSxyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0PWUsQ2woUGwpLENsKF9sKSx6bChfbCxlKSk6Q2woUGwpLHpsKFBsLHQpfXZhciBVbD1udWxsLFZsPSExLEFsPSExO2Z1bmN0aW9uIEJsKGUpe251bGw9PT1VbD9VbD1bZV06VWwucHVzaChlKX1mdW5jdGlvbiBXbCgpe2lmKCFBbCYmbnVsbCE9PVVsKXtBbD0hMDt2YXIgZT0wLG49a247dHJ5e3ZhciB0PVVsO2Zvcihrbj0xO2U8dC5sZW5ndGg7ZSsrKXt2YXIgcj10W2VdO2Rve3I9cighMCl9d2hpbGUobnVsbCE9PXIpfVVsPW51bGwsVmw9ITF9Y2F0Y2gobil7dGhyb3cgbnVsbCE9PVVsJiYoVWw9VWwuc2xpY2UoZSsxKSkscWUoSmUsV2wpLG59ZmluYWxseXtrbj1uLEFsPSExfX1yZXR1cm4gbnVsbH12YXIgSGw9W10sUWw9MCxqbD1udWxsLCRsPTAscWw9W10sS2w9MCxZbD1udWxsLFhsPTEsR2w9IiI7ZnVuY3Rpb24gWmwoZSxuKXtIbFtRbCsrXT0kbCxIbFtRbCsrXT1qbCxqbD1lLCRsPW59ZnVuY3Rpb24gSmwoZSxuLHQpe3FsW0tsKytdPVhsLHFsW0tsKytdPUdsLHFsW0tsKytdPVlsLFlsPWU7dmFyIHI9WGw7ZT1HbDt2YXIgbD0zMi11bihyKS0xO3ImPX4oMTw8bCksdCs9MTt2YXIgYT0zMi11bihuKStsO2lmKDMwPGEpe3ZhciB1PWwtbCU1O2E9KHImKDE8PHUpLTEpLnRvU3RyaW5nKDMyKSxyPj49dSxsLT11LFhsPTE8PDMyLXVuKG4pK2x8dDw8bHxyLEdsPWErZX1lbHNlIFhsPTE8PGF8dDw8bHxyLEdsPWV9ZnVuY3Rpb24gZWEoZSl7bnVsbCE9PWUucmV0dXJuJiYoWmwoZSwxKSxKbChlLDEsMCkpfWZ1bmN0aW9uIG5hKGUpe2Zvcig7ZT09PWpsOylqbD1IbFstLVFsXSxIbFtRbF09bnVsbCwkbD1IbFstLVFsXSxIbFtRbF09bnVsbDtmb3IoO2U9PT1ZbDspWWw9cWxbLS1LbF0scWxbS2xdPW51bGwsR2w9cWxbLS1LbF0scWxbS2xdPW51bGwsWGw9cWxbLS1LbF0scWxbS2xdPW51bGx9dmFyIHRhPW51bGwscmE9bnVsbCxsYT0hMSxhYT1udWxsO2Z1bmN0aW9uIHVhKGUsbil7dmFyIHQ9THMoNSxudWxsLG51bGwsMCk7dC5lbGVtZW50VHlwZT0iREVMRVRFRCIsdC5zdGF0ZU5vZGU9bix0LnJldHVybj1lLG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpfWZ1bmN0aW9uIG9hKGUsbil7c3dpdGNoKGUudGFnKXtjYXNlIDU6dmFyIHQ9ZS50eXBlO3JldHVybiBudWxsIT09KG49MSE9PW4ubm9kZVR5cGV8fHQudG9Mb3dlckNhc2UoKSE9PW4ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT9udWxsOm4pJiYoZS5zdGF0ZU5vZGU9bix0YT1lLHJhPXNsKG4uZmlyc3RDaGlsZCksITApO2Nhc2UgNjpyZXR1cm4gbnVsbCE9PShuPSIiPT09ZS5wZW5kaW5nUHJvcHN8fDMhPT1uLm5vZGVUeXBlP251bGw6bikmJihlLnN0YXRlTm9kZT1uLHRhPWUscmE9bnVsbCwhMCk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PShuPTghPT1uLm5vZGVUeXBlP251bGw6bikmJih0PW51bGwhPT1ZbD97aWQ6WGwsb3ZlcmZsb3c6R2x9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOm4sdHJlZUNvbnRleHQ6dCxyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKHQ9THMoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9bix0LnJldHVybj1lLGUuY2hpbGQ9dCx0YT1lLHJhPW51bGwsITApO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGlhKGUpe3JldHVybiEoISgxJmUubW9kZSl8fDEyOCZlLmZsYWdzKX1mdW5jdGlvbiBzYShlKXtpZihsYSl7dmFyIG49cmE7aWYobil7dmFyIHQ9bjtpZighb2EoZSxuKSl7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtuPXNsKHQubmV4dFNpYmxpbmcpO3ZhciByPXRhO24mJm9hKGUsbik/dWEocix0KTooZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsbGE9ITEsdGE9ZSl9fWVsc2V7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixsYT0hMSx0YT1lfX19ZnVuY3Rpb24gY2EoZSl7Zm9yKGU9ZS5yZXR1cm47bnVsbCE9PWUmJjUhPT1lLnRhZyYmMyE9PWUudGFnJiYxMyE9PWUudGFnOyllPWUucmV0dXJuO3RhPWV9ZnVuY3Rpb24gZmEoZSl7aWYoZSE9PXRhKXJldHVybiExO2lmKCFsYSlyZXR1cm4gY2EoZSksbGE9ITAsITE7dmFyIG4KO2lmKChuPTMhPT1lLnRhZykmJiEobj01IT09ZS50YWcpJiYobj0iaGVhZCIhPT0obj1lLnR5cGUpJiYiYm9keSIhPT1uJiYhdGwoZS50eXBlLGUubWVtb2l6ZWRQcm9wcykpLG4mJihuPXJhKSl7aWYoaWEoZSkpdGhyb3cgZGEoKSxFcnJvcihhKDQxOCkpO2Zvcig7bjspdWEoZSxuKSxuPXNsKG4ubmV4dFNpYmxpbmcpfWlmKGNhKGUpLDEzPT09ZS50YWcpe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IoYSgzMTcpKTtlOntmb3IoZT1lLm5leHRTaWJsaW5nLG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiLyQiPT09dCl7aWYoMD09PW4pe3JhPXNsKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9bi0tfWVsc2UiJCIhPT10JiYiJCEiIT09dCYmIiQ/IiE9PXR8fG4rK31lPWUubmV4dFNpYmxpbmd9cmE9bnVsbH19ZWxzZSByYT10YT9zbChlLnN0YXRlTm9kZS5uZXh0U2libGluZyk6bnVsbDtyZXR1cm4hMH1mdW5jdGlvbiBkYSgpe2Zvcih2YXIgZT1yYTtlOyllPXNsKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHBhKCl7cmE9dGE9bnVsbCxsYT0hMX1mdW5jdGlvbiBtYShlKXtudWxsPT09YWE/YWE9W2VdOmFhLnB1c2goZSl9dmFyIGhhPWsuUmVhY3RDdXJyZW50QmF0Y2hDb25maWc7ZnVuY3Rpb24gZ2EoZSxuKXtpZihlJiZlLmRlZmF1bHRQcm9wcyl7Zm9yKHZhciB0IGluIG49Tyh7fSxuKSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW5bdF0mJihuW3RdPWVbdF0pO3JldHVybiBufXJldHVybiBufXZhciB2YT1FbChudWxsKSx5YT1udWxsLGJhPW51bGwsa2E9bnVsbDtmdW5jdGlvbiB3YSgpe2thPWJhPXlhPW51bGx9ZnVuY3Rpb24gU2EoZSl7dmFyIG49dmEuY3VycmVudDtDbCh2YSksZS5fY3VycmVudFZhbHVlPW59ZnVuY3Rpb24geGEoZSxuLHQpe2Zvcig7bnVsbCE9PWU7KXt2YXIgcj1lLmFsdGVybmF0ZTtpZigoZS5jaGlsZExhbmVzJm4pIT09bj8oZS5jaGlsZExhbmVzfD1uLG51bGwhPT1yJiYoci5jaGlsZExhbmVzfD1uKSk6bnVsbCE9PXImJihyLmNoaWxkTGFuZXMmbikhPT1uJiYoci5jaGlsZExhbmVzfD1uKSxlPT09dClicmVhaztlPWUucmV0dXJufX1mdW5jdGlvbiBFYShlLG4pe3lhPWUsa2E9YmE9bnVsbCxudWxsIT09KGU9ZS5kZXBlbmRlbmNpZXMpJiZudWxsIT09ZS5maXJzdENvbnRleHQmJighIShlLmxhbmVzJm4pJiYoa289ITApLGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIENhKGUpe3ZhciBuPWUuX2N1cnJlbnRWYWx1ZTtpZihrYSE9PWUpaWYoZT17Y29udGV4dDplLG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1iYSl7aWYobnVsbD09PXlhKXRocm93IEVycm9yKGEoMzA4KSk7YmE9ZSx5YS5kZXBlbmRlbmNpZXM9e2xhbmVzOjAsZmlyc3RDb250ZXh0OmV9fWVsc2UgYmE9YmEubmV4dD1lO3JldHVybiBufXZhciB6YT1udWxsO2Z1bmN0aW9uIE5hKGUpe251bGw9PT16YT96YT1bZV06emEucHVzaChlKX1mdW5jdGlvbiBfYShlLG4sdCxyKXt2YXIgbD1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09bD8odC5uZXh0PXQsTmEobikpOih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxuLmludGVybGVhdmVkPXQsUGEoZSxyKX1mdW5jdGlvbiBQYShlLG4pe2UubGFuZXN8PW47dmFyIHQ9ZS5hbHRlcm5hdGU7Zm9yKG51bGwhPT10JiYodC5sYW5lc3w9biksdD1lLGU9ZS5yZXR1cm47bnVsbCE9PWU7KWUuY2hpbGRMYW5lc3w9bixudWxsIT09KHQ9ZS5hbHRlcm5hdGUpJiYodC5jaGlsZExhbmVzfD1uKSx0PWUsZT1lLnJldHVybjtyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlOm51bGx9dmFyIFRhPSExO2Z1bmN0aW9uIExhKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxpbnRlcmxlYXZlZDpudWxsLGxhbmVzOjB9LGVmZmVjdHM6bnVsbH19ZnVuY3Rpb24gTWEoZSxuKXtlPWUudXBkYXRlUXVldWUsbi51cGRhdGVRdWV1ZT09PWUmJihuLnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGVmZmVjdHM6ZS5lZmZlY3RzfSl9ZnVuY3Rpb24gRmEoZSxuKXtyZXR1cm57ZXZlbnRUaW1lOmUsbGFuZTpuLHRhZzowLHBheWxvYWQ6bnVsbCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH19ZnVuY3Rpb24gUmEoZSxuLHQpe3ZhciByPWUudXBkYXRlUXVldWU7aWYobnVsbD09PXIpcmV0dXJuIG51bGw7aWYocj1yLnNoYXJlZCwyJl9pKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP24ubmV4dD1uOihuLm5leHQ9bC5uZXh0LGwubmV4dD1uKSxyLnBlbmRpbmc9bixQYShlLHQpfXJldHVybiBudWxsPT09KGw9ci5pbnRlcmxlYXZlZCk/KG4ubmV4dD1uLE5hKHIpKToobi5uZXh0PWwubmV4dCxsLm5leHQ9biksci5pbnRlcmxlYXZlZD1uLFBhKGUsdCl9ZnVuY3Rpb24gRGEoZSxuLHQpe2lmKG51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKSYmKG49bi5zaGFyZWQsNDE5NDI0MCZ0KSl7dmFyIHI9bi5sYW5lczt0fD1yJj1lLnBlbmRpbmdMYW5lcyxuLmxhbmVzPXQsYm4oZSx0KX19ZnVuY3Rpb24gSWEoZSxuKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJnQ9PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PSh0PXQuZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIHU9e2V2ZW50VGltZTp0LmV2ZW50VGltZSxsYW5lOnQubGFuZSx0YWc6dC50YWcscGF5bG9hZDp0LnBheWxvYWQsY2FsbGJhY2s6dC5jYWxsYmFjayxuZXh0Om51bGx9O251bGw9PT1hP2w9YT11OmE9YS5uZXh0PXUsdD10Lm5leHR9d2hpbGUobnVsbCE9PXQpO251bGw9PT1hP2w9YT1uOmE9YS5uZXh0PW59ZWxzZSBsPWE9bjtyZXR1cm4gdD17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsCnNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sdm9pZChlLnVwZGF0ZVF1ZXVlPXQpfW51bGw9PT0oZT10Lmxhc3RCYXNlVXBkYXRlKT90LmZpcnN0QmFzZVVwZGF0ZT1uOmUubmV4dD1uLHQubGFzdEJhc2VVcGRhdGU9bn1mdW5jdGlvbiBPYShlLG4sdCxyKXt2YXIgbD1lLnVwZGF0ZVF1ZXVlO1RhPSExO3ZhciBhPWwuZmlyc3RCYXNlVXBkYXRlLHU9bC5sYXN0QmFzZVVwZGF0ZSxvPWwuc2hhcmVkLnBlbmRpbmc7aWYobnVsbCE9PW8pe2wuc2hhcmVkLnBlbmRpbmc9bnVsbDt2YXIgaT1vLHM9aS5uZXh0O2kubmV4dD1udWxsLG51bGw9PT11P2E9czp1Lm5leHQ9cyx1PWk7dmFyIGM9ZS5hbHRlcm5hdGU7bnVsbCE9PWMmJigobz0oYz1jLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT11JiYobnVsbD09PW8/Yy5maXJzdEJhc2VVcGRhdGU9czpvLm5leHQ9cyxjLmxhc3RCYXNlVXBkYXRlPWkpKX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKHU9MCxjPXM9aT1udWxsLG89YTs7KXt2YXIgZD1vLmxhbmUscD1vLmV2ZW50VGltZTtpZigociZkKT09PWQpe251bGwhPT1jJiYoYz1jLm5leHQ9e2V2ZW50VGltZTpwLGxhbmU6MCx0YWc6by50YWcscGF5bG9hZDpvLnBheWxvYWQsY2FsbGJhY2s6by5jYWxsYmFjayxuZXh0Om51bGx9KTtlOnt2YXIgbT1lLGg9bztzd2l0Y2goZD1uLHA9dCxoLnRhZyl7Y2FzZSAxOmlmKCJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCkpe2Y9bS5jYWxsKHAsZixkKTticmVhayBlfWY9bTticmVhayBlO2Nhc2UgMzptLmZsYWdzPS02NTUzNyZtLmZsYWdzfDEyODtjYXNlIDA6aWYobnVsbD09KGQ9ImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKT9tLmNhbGwocCxmLGQpOm0pKWJyZWFrIGU7Zj1PKHt9LGYsZCk7YnJlYWsgZTtjYXNlIDI6VGE9ITB9fW51bGwhPT1vLmNhbGxiYWNrJiYwIT09by5sYW5lJiYoZS5mbGFnc3w9NjQsbnVsbD09PShkPWwuZWZmZWN0cyk/bC5lZmZlY3RzPVtvXTpkLnB1c2gobykpfWVsc2UgcD17ZXZlbnRUaW1lOnAsbGFuZTpkLHRhZzpvLnRhZyxwYXlsb2FkOm8ucGF5bG9hZCxjYWxsYmFjazpvLmNhbGxiYWNrLG5leHQ6bnVsbH0sbnVsbD09PWM/KHM9Yz1wLGk9Zik6Yz1jLm5leHQ9cCx1fD1kO2lmKG51bGw9PT0obz1vLm5leHQpKXtpZihudWxsPT09KG89bC5zaGFyZWQucGVuZGluZykpYnJlYWs7bz0oZD1vKS5uZXh0LGQubmV4dD1udWxsLGwubGFzdEJhc2VVcGRhdGU9ZCxsLnNoYXJlZC5wZW5kaW5nPW51bGx9fWlmKG51bGw9PT1jJiYoaT1mKSxsLmJhc2VTdGF0ZT1pLGwuZmlyc3RCYXNlVXBkYXRlPXMsbC5sYXN0QmFzZVVwZGF0ZT1jLG51bGwhPT0obj1sLnNoYXJlZC5pbnRlcmxlYXZlZCkpe2w9bjtkb3t1fD1sLmxhbmUsbD1sLm5leHR9d2hpbGUobCE9PW4pfWVsc2UgbnVsbD09PWEmJihsLnNoYXJlZC5sYW5lcz0wKTtJaXw9dSxlLmxhbmVzPXUsZS5tZW1vaXplZFN0YXRlPWZ9fWZ1bmN0aW9uIFVhKGUsbix0KXtpZihlPW4uZWZmZWN0cyxuLmVmZmVjdHM9bnVsbCxudWxsIT09ZSlmb3Iobj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5jYWxsYmFjaztpZihudWxsIT09bCl7aWYoci5jYWxsYmFjaz1udWxsLHI9dCwiZnVuY3Rpb24iIT10eXBlb2YgbCl0aHJvdyBFcnJvcihhKDE5MSxsKSk7bC5jYWxsKHIpfX19dmFyIFZhPShuZXcgci5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gQWEoZSxuLHQscil7dD1udWxsPT0odD10KHIsbj1lLm1lbW9pemVkU3RhdGUpKT9uOk8oe30sbix0KSxlLm1lbW9pemVkU3RhdGU9dCwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPXQpfXZhciBCYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZXZShlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EucGF5bG9hZD1uLG51bGwhPXQmJihhLmNhbGxiYWNrPXQpLG51bGwhPT0obj1SYShlLGEsbCkpJiYodHMobixlLGwsciksRGEobixlLGwpKX0sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EudGFnPTEsYS5wYXlsb2FkPW4sbnVsbCE9dCYmKGEuY2FsbGJhY2s9dCksbnVsbCE9PShuPVJhKGUsYSxsKSkmJih0cyhuLGUsbCxyKSxEYShuLGUsbCkpfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oZSxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciB0PWVzKCkscj1ucyhlKSxsPUZhKHQscik7bC50YWc9MixudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KG49UmEoZSxsLHIpKSYmKHRzKG4sZSxyLHQpLERhKG4sZSxyKSl9fTtmdW5jdGlvbiBXYShlLG4sdCxyLGwsYSx1KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSx1KTohbi5wcm90b3R5cGV8fCFuLnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudHx8KCFpcih0LHIpfHwhaXIobCxhKSl9ZnVuY3Rpb24gSGEoZSxuLHQpe3ZhciByPSExLGw9TmwsYT1uLmNvbnRleHRUeXBlO3JldHVybiJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/YT1DYShhKToobD1NbChuKT9UbDpfbC5jdXJyZW50LGE9KHI9bnVsbCE9KHI9bi5jb250ZXh0VHlwZXMpKT9MbChlLGwpOk5sKSxuPW5ldyBuKHQsYSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT1uLnN0YXRlJiZ2b2lkIDAhPT1uLnN0YXRlP24uc3RhdGU6bnVsbCxuLnVwZGF0ZXI9QmEsZS5zdGF0ZU5vZGU9bixuLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1sLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksbn1mdW5jdGlvbiBRYShlLG4sdCxyKXtlPW4uc3RhdGUsCiJmdW5jdGlvbiI9PXR5cGVvZiBuLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJm4uY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyh0LHIpLCJmdW5jdGlvbiI9PXR5cGVvZiBuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKHQsciksbi5zdGF0ZSE9PWUmJkJhLmVucXVldWVSZXBsYWNlU3RhdGUobixuLnN0YXRlLG51bGwpfWZ1bmN0aW9uIGphKGUsbix0LHIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucHJvcHM9dCxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxsLnJlZnM9VmEsTGEoZSk7dmFyIGE9bi5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2wuY29udGV4dD1DYShhKTooYT1NbChuKT9UbDpfbC5jdXJyZW50LGwuY29udGV4dD1MbChlLGEpKSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2YoYT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihBYShlLG4sYSx0KSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgbC5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGwuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwuY29tcG9uZW50V2lsbE1vdW50fHwobj1sLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudFdpbGxNb3VudCYmbC5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgbC5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZsLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxuIT09bC5zdGF0ZSYmQmEuZW5xdWV1ZVJlcGxhY2VTdGF0ZShsLGwuc3RhdGUsbnVsbCksT2EoZSx0LGwsciksbC5zdGF0ZT1lLm1lbW9pemVkU3RhdGUpLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudERpZE1vdW50JiYoZS5mbGFnc3w9NDE5NDMwOCl9ZnVuY3Rpb24gJGEoZSxuLHQpe2lmKG51bGwhPT0oZT10LnJlZikmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIGUpe2lmKHQuX293bmVyKXtpZih0PXQuX293bmVyKXtpZigxIT09dC50YWcpdGhyb3cgRXJyb3IoYSgzMDkpKTt2YXIgcj10LnN0YXRlTm9kZX1pZighcil0aHJvdyBFcnJvcihhKDE0NyxlKSk7dmFyIGw9cix1PSIiK2U7cmV0dXJuIG51bGwhPT1uJiZudWxsIT09bi5yZWYmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnJlZiYmbi5yZWYuX3N0cmluZ1JlZj09PXU/bi5yZWY6KG49ZnVuY3Rpb24oZSl7dmFyIG49bC5yZWZzO249PT1WYSYmKG49bC5yZWZzPXt9KSxudWxsPT09ZT9kZWxldGUgblt1XTpuW3VdPWV9LG4uX3N0cmluZ1JlZj11LG4pfWlmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBFcnJvcihhKDI4NCkpO2lmKCF0Ll9vd25lcil0aHJvdyBFcnJvcihhKDI5MCxlKSl9cmV0dXJuIGV9ZnVuY3Rpb24gcWEoZSxuKXt0aHJvdyBlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChuKSxFcnJvcihhKDMxLCJbb2JqZWN0IE9iamVjdF0iPT09ZT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyhuKS5qb2luKCIsICIpKyJ9IjplKSl9ZnVuY3Rpb24gS2EoZSl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9ZnVuY3Rpb24gWWEoZSl7ZnVuY3Rpb24gbihuLHQpe2lmKGUpe3ZhciByPW4uZGVsZXRpb25zO251bGw9PT1yPyhuLmRlbGV0aW9ucz1bdF0sbi5mbGFnc3w9MTYpOnIucHVzaCh0KX19ZnVuY3Rpb24gdCh0LHIpe2lmKCFlKXJldHVybiBudWxsO2Zvcig7bnVsbCE9PXI7KW4odCxyKSxyPXIuc2libGluZztyZXR1cm4gbnVsbH1mdW5jdGlvbiByKGUsbil7Zm9yKGU9bmV3IE1hcDtudWxsIT09bjspbnVsbCE9PW4ua2V5P2Uuc2V0KG4ua2V5LG4pOmUuc2V0KG4uaW5kZXgsbiksbj1uLnNpYmxpbmc7cmV0dXJuIGV9ZnVuY3Rpb24gbChlLG4pe3JldHVybihlPUZzKGUsbikpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiB1KG4sdCxyKXtyZXR1cm4gbi5pbmRleD1yLGU/bnVsbCE9PShyPW4uYWx0ZXJuYXRlKT8ocj1yLmluZGV4KTx0PyhuLmZsYWdzfD0yLHQpOnI6KG4uZmxhZ3N8PTIsdCk6KG4uZmxhZ3N8PTEwNDg1NzYsdCl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gZSYmbnVsbD09PW4uYWx0ZXJuYXRlJiYobi5mbGFnc3w9Miksbn1mdW5jdGlvbiBpKGUsbix0LHIpe3JldHVybiBudWxsPT09bnx8NiE9PW4udGFnPygobj1Pcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gcyhlLG4sdCxyKXt2YXIgYT10LnR5cGU7cmV0dXJuIGE9PT14P2YoZSxuLHQucHJvcHMuY2hpbGRyZW4scix0LmtleSk6bnVsbCE9PW4mJihuLmVsZW1lbnRUeXBlPT09YXx8Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmYS4kJHR5cGVvZj09PU0mJkthKGEpPT09bi50eXBlKT8oKHI9bChuLHQucHJvcHMpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscik6KChyPVJzKHQudHlwZSx0LmtleSx0LnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gYyhlLG4sdCxyKXtyZXR1cm4gbnVsbD09PW58fDQhPT1uLnRhZ3x8bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PXQuY29udGFpbmVySW5mb3x8bi5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT10LmltcGxlbWVudGF0aW9uPygobj1Vcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0LmNoaWxkcmVufHxbXSkpLnJldHVybj1lLG4pfWZ1bmN0aW9uIGYoZSxuLHQscixhKXtyZXR1cm4gbnVsbD09PW58fDchPT1uLnRhZz8oKG49RHModCxlLm1vZGUscixhKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gZChlLG4sdCl7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4obj1PcygiIituLGUubW9kZSx0KSkucmV0dXJuPWUsbjtpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXsKc3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4odD1ScyhuLnR5cGUsbi5rZXksbi5wcm9wcyxudWxsLGUubW9kZSx0KSkucmVmPSRhKGUsbnVsbCxuKSx0LnJldHVybj1lLHQ7Y2FzZSBTOnJldHVybihuPVVzKG4sZS5tb2RlLHQpKS5yZXR1cm49ZSxuO2Nhc2UgTTpyZXR1cm4gZChlLCgwLG4uX2luaXQpKG4uX3BheWxvYWQpLHQpfWlmKG5lKG4pfHxEKG4pKXJldHVybihuPURzKG4sZS5tb2RlLHQsbnVsbCkpLnJldHVybj1lLG47cWEoZSxuKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsbix0LHIpe3ZhciBsPW51bGwhPT1uP24ua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gbnVsbCE9PWw/bnVsbDppKGUsbiwiIit0LHIpO2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe3N3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIHc6cmV0dXJuIHQua2V5PT09bD9zKGUsbix0LHIpOm51bGw7Y2FzZSBTOnJldHVybiB0LmtleT09PWw/YyhlLG4sdCxyKTpudWxsO2Nhc2UgTTpyZXR1cm4gcChlLG4sKGw9dC5faW5pdCkodC5fcGF5bG9hZCkscil9aWYobmUodCl8fEQodCkpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLG4sdCxyLG51bGwpO3FhKGUsdCl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLG4sdCxyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHIpcmV0dXJuIGkobixlPWUuZ2V0KHQpfHxudWxsLCIiK3IsbCk7aWYoIm9iamVjdCI9PXR5cGVvZiByJiZudWxsIT09cil7c3dpdGNoKHIuJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4gcyhuLGU9ZS5nZXQobnVsbD09PXIua2V5P3Q6ci5rZXkpfHxudWxsLHIsbCk7Y2FzZSBTOnJldHVybiBjKG4sZT1lLmdldChudWxsPT09ci5rZXk/dDpyLmtleSl8fG51bGwscixsKTtjYXNlIE06cmV0dXJuIG0oZSxuLHQsKDAsci5faW5pdCkoci5fcGF5bG9hZCksbCl9aWYobmUocil8fEQocikpcmV0dXJuIGYobixlPWUuZ2V0KHQpfHxudWxsLHIsbCxudWxsKTtxYShuLHIpfXJldHVybiBudWxsfWZ1bmN0aW9uIGgobCxhLG8saSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9YSxoPWE9MCxnPW51bGw7bnVsbCE9PWYmJmg8by5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLG9baF0saSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJm4obCxmKSxhPXUodixhLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1vLmxlbmd0aClyZXR1cm4gdChsLGYpLGxhJiZabChsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxvLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxvW2hdLGkpKSYmKGE9dShmLGEsaCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIGxhJiZabChsLGgpLHN9Zm9yKGY9cihsLGYpO2g8by5sZW5ndGg7aCsrKW51bGwhPT0oZz1tKGYsbCxoLG9baF0saSkpJiYoZSYmbnVsbCE9PWcuYWx0ZXJuYXRlJiZmLmRlbGV0ZShudWxsPT09Zy5rZXk/aDpnLmtleSksYT11KGcsYSxoKSxudWxsPT09Yz9zPWc6Yy5zaWJsaW5nPWcsYz1nKTtyZXR1cm4gZSYmZi5mb3JFYWNoKChmdW5jdGlvbihlKXtyZXR1cm4gbihsLGUpfSkpLGxhJiZabChsLGgpLHN9ZnVuY3Rpb24gZyhsLG8saSxzKXt2YXIgYz1EKGkpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBjKXRocm93IEVycm9yKGEoMTUwKSk7aWYobnVsbD09KGk9Yy5jYWxsKGkpKSl0aHJvdyBFcnJvcihhKDE1MSkpO2Zvcih2YXIgZj1jPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJm4obCxoKSxvPXUoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gdChsLGgpLGxhJiZabChsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz11KHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gbGEmJlpsKGwsZyksY31mb3IoaD1yKGwsaCk7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9bShoLGwsZyx5LnZhbHVlLHMpKSYmKGUmJm51bGwhPT15LmFsdGVybmF0ZSYmaC5kZWxldGUobnVsbD09PXkua2V5P2c6eS5rZXkpLG89dSh5LG8sZyksbnVsbD09PWY/Yz15OmYuc2libGluZz15LGY9eSk7cmV0dXJuIGUmJmguZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIG4obCxlKX0pKSxsYSYmWmwobCxnKSxjfXJldHVybiBmdW5jdGlvbiBlKHIsYSx1LGkpe2lmKCJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJnUudHlwZT09PXgmJm51bGw9PT11LmtleSYmKHU9dS5wcm9wcy5jaGlsZHJlbiksIm9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSl7c3dpdGNoKHUuJCR0eXBlb2Ype2Nhc2UgdzplOntmb3IodmFyIHM9dS5rZXksYz1hO251bGwhPT1jOyl7aWYoYy5rZXk9PT1zKXtpZigocz11LnR5cGUpPT09eCl7aWYoNz09PWMudGFnKXt0KHIsYy5zaWJsaW5nKSwoYT1sKGMsdS5wcm9wcy5jaGlsZHJlbikpLnJldHVybj1yLHI9YTticmVhayBlfX1lbHNlIGlmKGMuZWxlbWVudFR5cGU9PT1zfHwib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zJiZzLiQkdHlwZW9mPT09TSYmS2Eocyk9PT1jLnR5cGUpe3QocixjLnNpYmxpbmcpLChhPWwoYyx1LnByb3BzKSkucmVmPSRhKHIsYyx1KSxhLnJldHVybj1yLHI9YTticmVhayBlfXQocixjKTticmVha31uKHIsYyksYz1jLnNpYmxpbmd9dS50eXBlPT09eD8oKGE9RHModS5wcm9wcy5jaGlsZHJlbixyLm1vZGUsaSx1LmtleSkpLnJldHVybj1yLHI9YSk6KChpPVJzKHUudHlwZSx1LmtleSx1LnByb3BzLG51bGwsci5tb2RlLGkpKS5yZWY9JGEocixhLHUpLAppLnJldHVybj1yLHI9aSl9cmV0dXJuIG8ocik7Y2FzZSBTOmU6e2ZvcihjPXUua2V5O251bGwhPT1hOyl7aWYoYS5rZXk9PT1jKXtpZig0PT09YS50YWcmJmEuc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT11LmNvbnRhaW5lckluZm8mJmEuc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09dS5pbXBsZW1lbnRhdGlvbil7dChyLGEuc2libGluZyksKGE9bChhLHUuY2hpbGRyZW58fFtdKSkucmV0dXJuPXIscj1hO2JyZWFrIGV9dChyLGEpO2JyZWFrfW4ocixhKSxhPWEuc2libGluZ30oYT1Vcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hfXJldHVybiBvKHIpO2Nhc2UgTTpyZXR1cm4gZShyLGEsKGM9dS5faW5pdCkodS5fcGF5bG9hZCksaSl9aWYobmUodSkpcmV0dXJuIGgocixhLHUsaSk7aWYoRCh1KSlyZXR1cm4gZyhyLGEsdSxpKTtxYShyLHUpfXJldHVybiJzdHJpbmciPT10eXBlb2YgdSYmIiIhPT11fHwibnVtYmVyIj09dHlwZW9mIHU/KHU9IiIrdSxudWxsIT09YSYmNj09PWEudGFnPyh0KHIsYS5zaWJsaW5nKSwoYT1sKGEsdSkpLnJldHVybj1yLHI9YSk6KHQocixhKSwoYT1Pcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hKSxvKHIpKTp0KHIsYSl9fXZhciBYYT1ZYSghMCksR2E9WWEoITEpLFphPXt9LEphPUVsKFphKSxldT1FbChaYSksbnU9RWwoWmEpO2Z1bmN0aW9uIHR1KGUpe2lmKGU9PT1aYSl0aHJvdyBFcnJvcihhKDE3NCkpO3JldHVybiBlfWZ1bmN0aW9uIHJ1KGUsbil7c3dpdGNoKHpsKG51LG4pLHpsKGV1LGUpLHpsKEphLFphKSxlPW4ubm9kZVR5cGUpe2Nhc2UgOTpjYXNlIDExOm49KG49bi5kb2N1bWVudEVsZW1lbnQpP24ubmFtZXNwYWNlVVJJOmllKG51bGwsIiIpO2JyZWFrO2RlZmF1bHQ6bj1pZShuPShlPTg9PT1lP24ucGFyZW50Tm9kZTpuKS5uYW1lc3BhY2VVUkl8fG51bGwsZT1lLnRhZ05hbWUpfUNsKEphKSx6bChKYSxuKX1mdW5jdGlvbiBsdSgpe0NsKEphKSxDbChldSksQ2wobnUpfWZ1bmN0aW9uIGF1KGUpe3R1KG51LmN1cnJlbnQpO3ZhciBuPXR1KEphLmN1cnJlbnQpLHQ9aWUobixlLnR5cGUpO24hPT10JiYoemwoZXUsZSksemwoSmEsdCkpfWZ1bmN0aW9uIHV1KGUpe2V1LmN1cnJlbnQ9PT1lJiYoQ2woSmEpLENsKGV1KSl9dmFyIG91PUVsKDApO2Z1bmN0aW9uIGl1KGUpe2Zvcih2YXIgbj1lO251bGwhPT1uOyl7aWYoMTM9PT1uLnRhZyl7dmFyIHQ9bi5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10JiYobnVsbD09PSh0PXQuZGVoeWRyYXRlZCl8fCIkPyI9PT10LmRhdGF8fCIkISI9PT10LmRhdGEpKXJldHVybiBufWVsc2UgaWYoMTk9PT1uLnRhZyYmdm9pZCAwIT09bi5tZW1vaXplZFByb3BzLnJldmVhbE9yZGVyKXtpZigxMjgmbi5mbGFncylyZXR1cm4gbn1lbHNlIGlmKG51bGwhPT1uLmNoaWxkKXtuLmNoaWxkLnJldHVybj1uLG49bi5jaGlsZDtjb250aW51ZX1pZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHN1PVtdO2Z1bmN0aW9uIGN1KCl7Zm9yKHZhciBlPTA7ZTxzdS5sZW5ndGg7ZSsrKXN1W2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7c3UubGVuZ3RoPTB9dmFyIGZ1PWsuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixkdT1rLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHB1PTAsbXU9bnVsbCxodT1udWxsLGd1PW51bGwsdnU9ITEseXU9ITEsYnU9MCxrdT0wO2Z1bmN0aW9uIHd1KCl7dGhyb3cgRXJyb3IoYSgzMjEpKX1mdW5jdGlvbiBTdShlLG4pe2lmKG51bGw9PT1uKXJldHVybiExO2Zvcih2YXIgdD0wO3Q8bi5sZW5ndGgmJnQ8ZS5sZW5ndGg7dCsrKWlmKCFvcihlW3RdLG5bdF0pKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIHh1KGUsbix0LHIsbCx1KXtpZihwdT11LG11PW4sbi5tZW1vaXplZFN0YXRlPW51bGwsbi51cGRhdGVRdWV1ZT1udWxsLG4ubGFuZXM9MCxmdS5jdXJyZW50PW51bGw9PT1lfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlP3VvOm9vLGU9dChyLGwpLHl1KXt1PTA7ZG97aWYoeXU9ITEsYnU9MCwyNTw9dSl0aHJvdyBFcnJvcihhKDMwMSkpO3UrPTEsZ3U9aHU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsZnUuY3VycmVudD1pbyxlPXQocixsKX13aGlsZSh5dSl9aWYoZnUuY3VycmVudD1hbyxuPW51bGwhPT1odSYmbnVsbCE9PWh1Lm5leHQscHU9MCxndT1odT1tdT1udWxsLHZ1PSExLG4pdGhyb3cgRXJyb3IoYSgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFdSgpe3ZhciBlPTAhPT1idTtyZXR1cm4gYnU9MCxlfWZ1bmN0aW9uIEN1KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1ndT9tdS5tZW1vaXplZFN0YXRlPWd1PWU6Z3U9Z3UubmV4dD1lLGd1fWZ1bmN0aW9uIHp1KCl7aWYobnVsbD09PWh1KXt2YXIgZT1tdS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9aHUubmV4dDt2YXIgbj1udWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZTpndS5uZXh0O2lmKG51bGwhPT1uKWd1PW4saHU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKGEoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooaHU9ZSkubWVtb2l6ZWRTdGF0ZSxiYXNlU3RhdGU6aHUuYmFzZVN0YXRlLGJhc2VRdWV1ZTpodS5iYXNlUXVldWUscXVldWU6aHUucXVldWUsbmV4dDpudWxsfSxudWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZT1ndT1lOmd1PWd1Lm5leHQ9ZX1yZXR1cm4gZ3V9ZnVuY3Rpb24gTnUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uKGUpOm59ZnVuY3Rpb24gX3UoZSl7dmFyIG49enUoKSx0PW4ucXVldWU7aWYobnVsbD09PXQpdGhyb3cgRXJyb3IoYSgzMTEpKTt0Lmxhc3RSZW5kZXJlZFJlZHVjZXI9ZTt2YXIgcj1odSxsPXIuYmFzZVF1ZXVlLHU9dC5wZW5kaW5nO2lmKG51bGwhPT11KXtpZihudWxsIT09bCl7dmFyIG89bC5uZXh0CjtsLm5leHQ9dS5uZXh0LHUubmV4dD1vfXIuYmFzZVF1ZXVlPWw9dSx0LnBlbmRpbmc9bnVsbH1pZihudWxsIT09bCl7dT1sLm5leHQscj1yLmJhc2VTdGF0ZTt2YXIgaT1vPW51bGwscz1udWxsLGM9dTtkb3t2YXIgZj1jLmxhbmU7aWYoKHB1JmYpPT09ZiludWxsIT09cyYmKHM9cy5uZXh0PXtsYW5lOjAsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLHI9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTplKHIsYy5hY3Rpb24pO2Vsc2V7dmFyIGQ9e2xhbmU6ZixhY3Rpb246Yy5hY3Rpb24saGFzRWFnZXJTdGF0ZTpjLmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTpjLmVhZ2VyU3RhdGUsbmV4dDpudWxsfTtudWxsPT09cz8oaT1zPWQsbz1yKTpzPXMubmV4dD1kLG11LmxhbmVzfD1mLElpfD1mfWM9Yy5uZXh0fXdoaWxlKG51bGwhPT1jJiZjIT09dSk7bnVsbD09PXM/bz1yOnMubmV4dD1pLG9yKHIsbi5tZW1vaXplZFN0YXRlKXx8KGtvPSEwKSxuLm1lbW9pemVkU3RhdGU9cixuLmJhc2VTdGF0ZT1vLG4uYmFzZVF1ZXVlPXMsdC5sYXN0UmVuZGVyZWRTdGF0ZT1yfWlmKG51bGwhPT0oZT10LmludGVybGVhdmVkKSl7bD1lO2Rve3U9bC5sYW5lLG11LmxhbmVzfD11LElpfD11LGw9bC5uZXh0fXdoaWxlKGwhPT1lKX1lbHNlIG51bGw9PT1sJiYodC5sYW5lcz0wKTtyZXR1cm5bbi5tZW1vaXplZFN0YXRlLHQuZGlzcGF0Y2hdfWZ1bmN0aW9uIFB1KGUpe3ZhciBuPXp1KCksdD1uLnF1ZXVlO2lmKG51bGw9PT10KXRocm93IEVycm9yKGEoMzExKSk7dC5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9dC5kaXNwYXRjaCxsPXQucGVuZGluZyx1PW4ubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7dC5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG97dT1lKHUsby5hY3Rpb24pLG89by5uZXh0fXdoaWxlKG8hPT1sKTtvcih1LG4ubWVtb2l6ZWRTdGF0ZSl8fChrbz0hMCksbi5tZW1vaXplZFN0YXRlPXUsbnVsbD09PW4uYmFzZVF1ZXVlJiYobi5iYXNlU3RhdGU9dSksdC5sYXN0UmVuZGVyZWRTdGF0ZT11fXJldHVyblt1LHJdfWZ1bmN0aW9uIFR1KCl7fWZ1bmN0aW9uIEx1KGUsbil7dmFyIHQ9bXUscj16dSgpLGw9bigpLHU9IW9yKHIubWVtb2l6ZWRTdGF0ZSxsKTtpZih1JiYoci5tZW1vaXplZFN0YXRlPWwsa289ITApLHI9ci5xdWV1ZSxIdShSdS5iaW5kKG51bGwsdCxyLGUpLFtlXSksci5nZXRTbmFwc2hvdCE9PW58fHV8fG51bGwhPT1ndSYmMSZndS5tZW1vaXplZFN0YXRlLnRhZyl7aWYodC5mbGFnc3w9MjA0OCxVdSg5LEZ1LmJpbmQobnVsbCx0LHIsbCxuKSx2b2lkIDAsbnVsbCksbnVsbD09PVBpKXRocm93IEVycm9yKGEoMzQ5KSk7MzAmcHV8fE11KHQsbixsKX1yZXR1cm4gbH1mdW5jdGlvbiBNdShlLG4sdCl7ZS5mbGFnc3w9MTYzODQsZT17Z2V0U25hcHNob3Q6bix2YWx1ZTp0fSxudWxsPT09KG49bXUudXBkYXRlUXVldWUpPyhuPXtsYXN0RWZmZWN0Om51bGwsc3RvcmVzOm51bGx9LG11LnVwZGF0ZVF1ZXVlPW4sbi5zdG9yZXM9W2VdKTpudWxsPT09KHQ9bi5zdG9yZXMpP24uc3RvcmVzPVtlXTp0LnB1c2goZSl9ZnVuY3Rpb24gRnUoZSxuLHQscil7bi52YWx1ZT10LG4uZ2V0U25hcHNob3Q9cixEdShuKSYmSXUoZSl9ZnVuY3Rpb24gUnUoZSxuLHQpe3JldHVybiB0KChmdW5jdGlvbigpe0R1KG4pJiZJdShlKX0pKX1mdW5jdGlvbiBEdShlKXt2YXIgbj1lLmdldFNuYXBzaG90O2U9ZS52YWx1ZTt0cnl7dmFyIHQ9bigpO3JldHVybiFvcihlLHQpfWNhdGNoKGUpe3JldHVybiEwfX1mdW5jdGlvbiBJdShlKXt2YXIgbj1QYShlLDEpO251bGwhPT1uJiZ0cyhuLGUsMSwtMSl9ZnVuY3Rpb24gT3UoZSl7dmFyIG49Q3UoKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKGU9ZSgpKSxuLm1lbW9pemVkU3RhdGU9bi5iYXNlU3RhdGU9ZSxlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjpOdSxsYXN0UmVuZGVyZWRTdGF0ZTplfSxuLnF1ZXVlPWUsZT1lLmRpc3BhdGNoPW5vLmJpbmQobnVsbCxtdSxlKSxbbi5tZW1vaXplZFN0YXRlLGVdfWZ1bmN0aW9uIFV1KGUsbix0LHIpe3JldHVybiBlPXt0YWc6ZSxjcmVhdGU6bixkZXN0cm95OnQsZGVwczpyLG5leHQ6bnVsbH0sbnVsbD09PShuPW11LnVwZGF0ZVF1ZXVlKT8obj17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSxtdS51cGRhdGVRdWV1ZT1uLG4ubGFzdEVmZmVjdD1lLm5leHQ9ZSk6bnVsbD09PSh0PW4ubGFzdEVmZmVjdCk/bi5sYXN0RWZmZWN0PWUubmV4dD1lOihyPXQubmV4dCx0Lm5leHQ9ZSxlLm5leHQ9cixuLmxhc3RFZmZlY3Q9ZSksZX1mdW5jdGlvbiBWdSgpe3JldHVybiB6dSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gQXUoZSxuLHQscil7dmFyIGw9Q3UoKTttdS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9VXUoMXxuLHQsdm9pZCAwLHZvaWQgMD09PXI/bnVsbDpyKX1mdW5jdGlvbiBCdShlLG4sdCxyKXt2YXIgbD16dSgpO3I9dm9pZCAwPT09cj9udWxsOnI7dmFyIGE9dm9pZCAwO2lmKG51bGwhPT1odSl7dmFyIHU9aHUubWVtb2l6ZWRTdGF0ZTtpZihhPXUuZGVzdHJveSxudWxsIT09ciYmU3Uocix1LmRlcHMpKXJldHVybiB2b2lkKGwubWVtb2l6ZWRTdGF0ZT1VdShuLHQsYSxyKSl9bXUuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPVV1KDF8bix0LGEscil9ZnVuY3Rpb24gV3UoZSxuKXtyZXR1cm4gQXUoODM5MDY1Niw4LGUsbil9ZnVuY3Rpb24gSHUoZSxuKXtyZXR1cm4gQnUoMjA0OCw4LGUsbil9ZnVuY3Rpb24gUXUoZSxuKXtyZXR1cm4gQnUoNCwyLGUsbil9ZnVuY3Rpb24ganUoZSxuKXtyZXR1cm4gQnUoNCw0LGUsbil9ZnVuY3Rpb24gJHUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj8oZT1lKCksbihlKSxmdW5jdGlvbigpe24obnVsbCl9KTpudWxsIT1uPyhlPWUoKSxuLmN1cnJlbnQ9ZSxmdW5jdGlvbigpe24uY3VycmVudD1udWxsfSk6dm9pZCAwfWZ1bmN0aW9uIHF1KGUsbix0KXsKcmV0dXJuIHQ9bnVsbCE9dD90LmNvbmNhdChbZV0pOm51bGwsQnUoNCw0LCR1LmJpbmQobnVsbCxuLGUpLHQpfWZ1bmN0aW9uIEt1KCl7fWZ1bmN0aW9uIFl1KGUsbil7dmFyIHQ9enUoKTtuPXZvaWQgMD09PW4/bnVsbDpuO3ZhciByPXQubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXImJm51bGwhPT1uJiZTdShuLHJbMV0pP3JbMF06KHQubWVtb2l6ZWRTdGF0ZT1bZSxuXSxlKX1mdW5jdGlvbiBYdShlLG4pe3ZhciB0PXp1KCk7bj12b2lkIDA9PT1uP251bGw6bjt2YXIgcj10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09biYmU3UobixyWzFdKT9yWzBdOihlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZSl9ZnVuY3Rpb24gR3UoZSxuLHQpe3JldHVybiAyMSZwdT8ob3IodCxuKXx8KHQ9Z24oKSxtdS5sYW5lc3w9dCxJaXw9dCxlLmJhc2VTdGF0ZT0hMCksbik6KGUuYmFzZVN0YXRlJiYoZS5iYXNlU3RhdGU9ITEsa289ITApLGUubWVtb2l6ZWRTdGF0ZT10KX1mdW5jdGlvbiBadShlLG4pe3ZhciB0PWtuO2tuPTAhPT10JiY0PnQ/dDo0LGUoITApO3ZhciByPWR1LnRyYW5zaXRpb247ZHUudHJhbnNpdGlvbj17fTt0cnl7ZSghMSksbigpfWZpbmFsbHl7a249dCxkdS50cmFuc2l0aW9uPXJ9fWZ1bmN0aW9uIEp1KCl7cmV0dXJuIHp1KCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBlbyhlLG4sdCl7dmFyIHI9bnMoZSk7aWYodD17bGFuZTpyLGFjdGlvbjp0LGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sdG8oZSkpcm8obix0KTtlbHNlIGlmKG51bGwhPT0odD1fYShlLG4sdCxyKSkpe3RzKHQsZSxyLGVzKCkpLGxvKHQsbixyKX19ZnVuY3Rpb24gbm8oZSxuLHQpe3ZhciByPW5zKGUpLGw9e2xhbmU6cixhY3Rpb246dCxoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9O2lmKHRvKGUpKXJvKG4sbCk7ZWxzZXt2YXIgYT1lLmFsdGVybmF0ZTtpZigwPT09ZS5sYW5lcyYmKG51bGw9PT1hfHwwPT09YS5sYW5lcykmJm51bGwhPT0oYT1uLmxhc3RSZW5kZXJlZFJlZHVjZXIpKXRyeXt2YXIgdT1uLmxhc3RSZW5kZXJlZFN0YXRlLG89YSh1LHQpO2lmKGwuaGFzRWFnZXJTdGF0ZT0hMCxsLmVhZ2VyU3RhdGU9byxvcihvLHUpKXt2YXIgaT1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09aT8obC5uZXh0PWwsTmEobikpOihsLm5leHQ9aS5uZXh0LGkubmV4dD1sKSx2b2lkKG4uaW50ZXJsZWF2ZWQ9bCl9fWNhdGNoKGUpe31udWxsIT09KHQ9X2EoZSxuLGwscikpJiYodHModCxlLHIsbD1lcygpKSxsbyh0LG4scikpfX1mdW5jdGlvbiB0byhlKXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gZT09PW11fHxudWxsIT09biYmbj09PW11fWZ1bmN0aW9uIHJvKGUsbil7eXU9dnU9ITA7dmFyIHQ9ZS5wZW5kaW5nO251bGw9PT10P24ubmV4dD1uOihuLm5leHQ9dC5uZXh0LHQubmV4dD1uKSxlLnBlbmRpbmc9bn1mdW5jdGlvbiBsbyhlLG4sdCl7aWYoNDE5NDI0MCZ0KXt2YXIgcj1uLmxhbmVzO3R8PXImPWUucGVuZGluZ0xhbmVzLG4ubGFuZXM9dCxibihlLHQpfX12YXIgYW89e3JlYWRDb250ZXh0OkNhLHVzZUNhbGxiYWNrOnd1LHVzZUNvbnRleHQ6d3UsdXNlRWZmZWN0Ond1LHVzZUltcGVyYXRpdmVIYW5kbGU6d3UsdXNlSW5zZXJ0aW9uRWZmZWN0Ond1LHVzZUxheW91dEVmZmVjdDp3dSx1c2VNZW1vOnd1LHVzZVJlZHVjZXI6d3UsdXNlUmVmOnd1LHVzZVN0YXRlOnd1LHVzZURlYnVnVmFsdWU6d3UsdXNlRGVmZXJyZWRWYWx1ZTp3dSx1c2VUcmFuc2l0aW9uOnd1LHVzZU11dGFibGVTb3VyY2U6d3UsdXNlU3luY0V4dGVybmFsU3RvcmU6d3UsdXNlSWQ6d3UsdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSx1bz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6ZnVuY3Rpb24oZSxuKXtyZXR1cm4gQ3UoKS5tZW1vaXplZFN0YXRlPVtlLHZvaWQgMD09PW4/bnVsbDpuXSxlfSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpXdSx1c2VJbXBlcmF0aXZlSGFuZGxlOmZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gdD1udWxsIT10P3QuY29uY2F0KFtlXSk6bnVsbCxBdSg0MTk0MzA4LDQsJHUuYmluZChudWxsLG4sZSksdCl9LHVzZUxheW91dEVmZmVjdDpmdW5jdGlvbihlLG4pe3JldHVybiBBdSg0MTk0MzA4LDQsZSxuKX0sdXNlSW5zZXJ0aW9uRWZmZWN0OmZ1bmN0aW9uKGUsbil7cmV0dXJuIEF1KDQsMixlLG4pfSx1c2VNZW1vOmZ1bmN0aW9uKGUsbil7dmFyIHQ9Q3UoKTtyZXR1cm4gbj12b2lkIDA9PT1uP251bGw6bixlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZX0sdXNlUmVkdWNlcjpmdW5jdGlvbihlLG4sdCl7dmFyIHI9Q3UoKTtyZXR1cm4gbj12b2lkIDAhPT10P3Qobik6bixyLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bixlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOm59LHIucXVldWU9ZSxlPWUuZGlzcGF0Y2g9ZW8uYmluZChudWxsLG11LGUpLFtyLm1lbW9pemVkU3RhdGUsZV19LHVzZVJlZjpmdW5jdGlvbihlKXtyZXR1cm4gZT17Y3VycmVudDplfSxDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlU3RhdGU6T3UsdXNlRGVidWdWYWx1ZTpLdSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3JldHVybiBDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3ZhciBlPU91KCExKSxuPWVbMF07cmV0dXJuIGU9WnUuYmluZChudWxsLGVbMV0pLEN1KCkubWVtb2l6ZWRTdGF0ZT1lLFtuLGVdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLG4sdCl7dmFyIHI9bXUsbD1DdSgpO2lmKGxhKXtpZih2b2lkIDA9PT10KXRocm93IEVycm9yKGEoNDA3KSk7dD10KCl9ZWxzZXtpZih0PW4oKSxudWxsPT09UGkpdGhyb3cgRXJyb3IoYSgzNDkpKTszMCZwdXx8TXUocixuLHQpfWwubWVtb2l6ZWRTdGF0ZT10O3ZhciB1PXt2YWx1ZTp0LGdldFNuYXBzaG90Om59O3JldHVybiBsLnF1ZXVlPXUsCld1KFJ1LmJpbmQobnVsbCxyLHUsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LFV1KDksRnUuYmluZChudWxsLHIsdSx0LG4pLHZvaWQgMCxudWxsKSx0fSx1c2VJZDpmdW5jdGlvbigpe3ZhciBlPUN1KCksbj1QaS5pZGVudGlmaWVyUHJlZml4O2lmKGxhKXt2YXIgdD1HbDtuPSI6IituKyJSIisodD0oWGwmfigxPDwzMi11bihYbCktMSkpLnRvU3RyaW5nKDMyKSt0KSwwPCh0PWJ1KyspJiYobis9IkgiK3QudG9TdHJpbmcoMzIpKSxuKz0iOiJ9ZWxzZSBuPSI6IituKyJyIisodD1rdSsrKS50b1N0cmluZygzMikrIjoiO3JldHVybiBlLm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxvbz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6WXUsdXNlQ29udGV4dDpDYSx1c2VFZmZlY3Q6SHUsdXNlSW1wZXJhdGl2ZUhhbmRsZTpxdSx1c2VJbnNlcnRpb25FZmZlY3Q6UXUsdXNlTGF5b3V0RWZmZWN0Omp1LHVzZU1lbW86WHUsdXNlUmVkdWNlcjpfdSx1c2VSZWY6VnUsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gX3UoTnUpfSx1c2VEZWJ1Z1ZhbHVlOkt1LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEd1KHp1KCksaHUubWVtb2l6ZWRTdGF0ZSxlKX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3JldHVybltfdShOdSlbMF0senUoKS5tZW1vaXplZFN0YXRlXX0sdXNlTXV0YWJsZVNvdXJjZTpUdSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpMdSx1c2VJZDpKdSx1bnN0YWJsZV9pc05ld1JlY29uY2lsZXI6ITF9LGlvPXtyZWFkQ29udGV4dDpDYSx1c2VDYWxsYmFjazpZdSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpIdSx1c2VJbXBlcmF0aXZlSGFuZGxlOnF1LHVzZUluc2VydGlvbkVmZmVjdDpRdSx1c2VMYXlvdXRFZmZlY3Q6anUsdXNlTWVtbzpYdSx1c2VSZWR1Y2VyOlB1LHVzZVJlZjpWdSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQdShOdSl9LHVzZURlYnVnVmFsdWU6S3UsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlKXt2YXIgbj16dSgpO3JldHVybiBudWxsPT09aHU/bi5tZW1vaXplZFN0YXRlPWU6R3UobixodS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1B1KE51KVswXSx6dSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOlR1LHVzZVN5bmNFeHRlcm5hbFN0b3JlOkx1LHVzZUlkOkp1LHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gc28oZSxuKXt0cnl7dmFyIHQ9IiIscj1uO2Rve3QrPUIocikscj1yLnJldHVybn13aGlsZShyKTt2YXIgbD10fWNhdGNoKGUpe2w9IlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfXJldHVybnt2YWx1ZTplLHNvdXJjZTpuLHN0YWNrOmwsZGlnZXN0Om51bGx9fWZ1bmN0aW9uIGNvKGUsbix0KXtyZXR1cm57dmFsdWU6ZSxzb3VyY2U6bnVsbCxzdGFjazpudWxsIT10P3Q6bnVsbCxkaWdlc3Q6bnVsbCE9bj9uOm51bGx9fWZ1bmN0aW9uIGZvKGUsbil7dHJ5e2NvbnNvbGUuZXJyb3Iobi52YWx1ZSl9Y2F0Y2goZSl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0aHJvdyBlfSkpfX12YXIgcG89ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtNYXA/V2Vha01hcDpNYXA7ZnVuY3Rpb24gbW8oZSxuLHQpeyh0PUZhKC0xLHQpKS50YWc9Myx0LnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH07dmFyIHI9bi52YWx1ZTtyZXR1cm4gdC5jYWxsYmFjaz1mdW5jdGlvbigpe1FpfHwoUWk9ITAsamk9ciksZm8oMCxuKX0sdH1mdW5jdGlvbiBobyhlLG4sdCl7KHQ9RmEoLTEsdCkpLnRhZz0zO3ZhciByPWUudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBsPW4udmFsdWU7dC5wYXlsb2FkPWZ1bmN0aW9uKCl7cmV0dXJuIHIobCl9LHQuY2FsbGJhY2s9ZnVuY3Rpb24oKXtmbygwLG4pfX12YXIgYT1lLnN0YXRlTm9kZTtyZXR1cm4gbnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYodC5jYWxsYmFjaz1mdW5jdGlvbigpe2ZvKDAsbiksImZ1bmN0aW9uIiE9dHlwZW9mIHImJihudWxsPT09JGk/JGk9bmV3IFNldChbdGhpc10pOiRpLmFkZCh0aGlzKSk7dmFyIGU9bi5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKG4udmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLHR9ZnVuY3Rpb24gZ28oZSxuLHQpe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyBwbzt2YXIgbD1uZXcgU2V0O3Iuc2V0KG4sbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldChuKSkmJihsPW5ldyBTZXQsci5zZXQobixsKSk7bC5oYXModCl8fChsLmFkZCh0KSxlPUNzLmJpbmQobnVsbCxlLG4sdCksbi50aGVuKGUsZSkpfWZ1bmN0aW9uIHZvKGUpe2Rve3ZhciBuO2lmKChuPTEzPT09ZS50YWcpJiYobj1udWxsPT09KG49ZS5tZW1vaXplZFN0YXRlKXx8bnVsbCE9PW4uZGVoeWRyYXRlZCksbilyZXR1cm4gZTtlPWUucmV0dXJufXdoaWxlKG51bGwhPT1lKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiB5byhlLG4sdCxyLGwpe3JldHVybiAxJmUubW9kZT8oZS5mbGFnc3w9NjU1MzYsZS5sYW5lcz1sLGUpOihlPT09bj9lLmZsYWdzfD02NTUzNjooZS5mbGFnc3w9MTI4LHQuZmxhZ3N8PTEzMTA3Mix0LmZsYWdzJj0tNTI4MDUsMT09PXQudGFnJiYobnVsbD09PXQuYWx0ZXJuYXRlP3QudGFnPTE3Oigobj1GYSgtMSwxKSkudGFnPTIsUmEodCxuLDEpKSksdC5sYW5lc3w9MSksZSl9dmFyIGJvPWsuUmVhY3RDdXJyZW50T3duZXIsa289ITE7ZnVuY3Rpb24gd28oZSxuLHQscil7bi5jaGlsZD1udWxsPT09ZT9HYShuLG51bGwsdCxyKTpYYShuLGUuY2hpbGQsdCxyKX1mdW5jdGlvbiBTbyhlLG4sdCxyLGwpe3Q9dC5yZW5kZXI7dmFyIGE9bi5yZWY7cmV0dXJuIEVhKG4sbCkscj14dShlLG4sdCxyLGEsbCksdD1FdSgpLG51bGw9PT1lfHxrbz8obGEmJnQmJmVhKG4pLG4uZmxhZ3N8PTEsd28oZSxuLHIsbCksbi5jaGlsZCk6KG4udXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSxuLmZsYWdzJj0tMjA1MywKZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiB4byhlLG4sdCxyLGwpe2lmKG51bGw9PT1lKXt2YXIgYT10LnR5cGU7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIGF8fE1zKGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PXQuY29tcGFyZXx8dm9pZCAwIT09dC5kZWZhdWx0UHJvcHM/KChlPVJzKHQudHlwZSxudWxsLHIsbixuLm1vZGUsbCkpLnJlZj1uLnJlZixlLnJldHVybj1uLG4uY2hpbGQ9ZSk6KG4udGFnPTE1LG4udHlwZT1hLEVvKGUsbixhLHIsbCkpfWlmKGE9ZS5jaGlsZCwhKGUubGFuZXMmbCkpe3ZhciB1PWEubWVtb2l6ZWRQcm9wcztpZigodD1udWxsIT09KHQ9dC5jb21wYXJlKT90OmlyKSh1LHIpJiZlLnJlZj09PW4ucmVmKXJldHVybiBRbyhlLG4sbCl9cmV0dXJuIG4uZmxhZ3N8PTEsKGU9RnMoYSxyKSkucmVmPW4ucmVmLGUucmV0dXJuPW4sbi5jaGlsZD1lfWZ1bmN0aW9uIEVvKGUsbix0LHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihpcihhLHIpJiZlLnJlZj09PW4ucmVmKXtpZihrbz0hMSxuLnBlbmRpbmdQcm9wcz1yPWEsIShlLmxhbmVzJmwpKXJldHVybiBuLmxhbmVzPWUubGFuZXMsUW8oZSxuLGwpOzEzMTA3MiZlLmZsYWdzJiYoa289ITApfX1yZXR1cm4gTm8oZSxuLHQscixsKX1mdW5jdGlvbiBDbyhlLG4sdCl7dmFyIHI9bi5wZW5kaW5nUHJvcHMsbD1yLmNoaWxkcmVuLGE9bnVsbCE9PWU/ZS5tZW1vaXplZFN0YXRlOm51bGw7aWYoImhpZGRlbiI9PT1yLm1vZGUpaWYoMSZuLm1vZGUpe2lmKCEoMTA3Mzc0MTgyNCZ0KSlyZXR1cm4gZT1udWxsIT09YT9hLmJhc2VMYW5lc3x0OnQsbi5sYW5lcz1uLmNoaWxkTGFuZXM9MTA3Mzc0MTgyNCxuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczplLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LG4udXBkYXRlUXVldWU9bnVsbCx6bChGaSxNaSksTWl8PWUsbnVsbDtuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHI9bnVsbCE9PWE/YS5iYXNlTGFuZXM6dCx6bChGaSxNaSksTWl8PXJ9ZWxzZSBuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHpsKEZpLE1pKSxNaXw9dDtlbHNlIG51bGwhPT1hPyhyPWEuYmFzZUxhbmVzfHQsbi5tZW1vaXplZFN0YXRlPW51bGwpOnI9dCx6bChGaSxNaSksTWl8PXI7cmV0dXJuIHdvKGUsbixsLHQpLG4uY2hpbGR9ZnVuY3Rpb24gem8oZSxuKXt2YXIgdD1uLnJlZjsobnVsbD09PWUmJm51bGwhPT10fHxudWxsIT09ZSYmZS5yZWYhPT10KSYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKX1mdW5jdGlvbiBObyhlLG4sdCxyLGwpe3ZhciBhPU1sKHQpP1RsOl9sLmN1cnJlbnQ7cmV0dXJuIGE9TGwobixhKSxFYShuLGwpLHQ9eHUoZSxuLHQscixhLGwpLHI9RXUoKSxudWxsPT09ZXx8a28/KGxhJiZyJiZlYShuKSxuLmZsYWdzfD0xLHdvKGUsbix0LGwpLG4uY2hpbGQpOihuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbi5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiBfbyhlLG4sdCxyLGwpe2lmKE1sKHQpKXt2YXIgYT0hMDtJbChuKX1lbHNlIGE9ITE7aWYoRWEobixsKSxudWxsPT09bi5zdGF0ZU5vZGUpSG8oZSxuKSxIYShuLHQsciksamEobix0LHIsbCkscj0hMDtlbHNlIGlmKG51bGw9PT1lKXt2YXIgdT1uLnN0YXRlTm9kZSxvPW4ubWVtb2l6ZWRQcm9wczt1LnByb3BzPW87dmFyIGk9dS5jb250ZXh0LHM9dC5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zP3M9Q2Eocyk6cz1MbChuLHM9TWwodCk/VGw6X2wuY3VycmVudCk7dmFyIGM9dC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMsZj0iZnVuY3Rpb24iPT10eXBlb2YgY3x8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGU7Znx8ImZ1bmN0aW9uIiE9dHlwZW9mIHUuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fChvIT09cnx8aSE9PXMpJiZRYShuLHUscixzKSxUYT0hMTt2YXIgZD1uLm1lbW9pemVkU3RhdGU7dS5zdGF0ZT1kLE9hKG4scix1LGwpLGk9bi5tZW1vaXplZFN0YXRlLG8hPT1yfHxkIT09aXx8UGwuY3VycmVudHx8VGE/KCJmdW5jdGlvbiI9PXR5cGVvZiBjJiYoQWEobix0LGMsciksaT1uLm1lbW9pemVkU3RhdGUpLChvPVRhfHxXYShuLHQsbyxyLGQsaSxzKSk/KGZ8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudHx8KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudCYmdS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZ1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSksImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSk6KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZE1vdW50JiYobi5mbGFnc3w9NDE5NDMwOCksbi5tZW1vaXplZFByb3BzPXIsbi5tZW1vaXplZFN0YXRlPWkpLHUucHJvcHM9cix1LnN0YXRlPWksdS5jb250ZXh0PXMscj1vKTooImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSxyPSExKX1lbHNle3U9bi5zdGF0ZU5vZGUsTWEoZSxuKSxvPW4ubWVtb2l6ZWRQcm9wcyxzPW4udHlwZT09PW4uZWxlbWVudFR5cGU/bzpnYShuLnR5cGUsbyksdS5wcm9wcz1zLGY9bi5wZW5kaW5nUHJvcHMsZD11LmNvbnRleHQsIm9iamVjdCI9PXR5cGVvZihpPXQuY29udGV4dFR5cGUpJiZudWxsIT09aT9pPUNhKGkpOmk9TGwobixpPU1sKHQpP1RsOl9sLmN1cnJlbnQpO3ZhciBwPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzCjsoYz0iZnVuY3Rpb24iPT10eXBlb2YgcHx8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIHUuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09aSkmJlFhKG4sdSxyLGkpLFRhPSExLGQ9bi5tZW1vaXplZFN0YXRlLHUuc3RhdGU9ZCxPYShuLHIsdSxsKTt2YXIgbT1uLm1lbW9pemVkU3RhdGU7byE9PWZ8fGQhPT1tfHxQbC5jdXJyZW50fHxUYT8oImZ1bmN0aW9uIj09dHlwZW9mIHAmJihBYShuLHQscCxyKSxtPW4ubWVtb2l6ZWRTdGF0ZSksKHM9VGF8fFdhKG4sdCxzLHIsZCxtLGkpfHwhMSk/KGN8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiYiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnRXaWxsVXBkYXRlfHwoImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxpKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZShyLG0saSkpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZSYmKG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlJiYobi5mbGFnc3w9MTAyNCkpOigiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnREaWRVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fChuLmZsYWdzfD00KSwiZnVuY3Rpb24iIT10eXBlb2YgdS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTEwMjQpLG4ubWVtb2l6ZWRQcm9wcz1yLG4ubWVtb2l6ZWRTdGF0ZT1tKSx1LnByb3BzPXIsdS5zdGF0ZT1tLHUuY29udGV4dD1pLHI9cyk6KCJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwobi5mbGFnc3w9MTAyNCkscj0hMSl9cmV0dXJuIFBvKGUsbix0LHIsYSxsKX1mdW5jdGlvbiBQbyhlLG4sdCxyLGwsYSl7em8oZSxuKTt2YXIgdT0hISgxMjgmbi5mbGFncyk7aWYoIXImJiF1KXJldHVybiBsJiZPbChuLHQsITEpLFFvKGUsbixhKTtyPW4uc3RhdGVOb2RlLGJvLmN1cnJlbnQ9bjt2YXIgbz11JiYiZnVuY3Rpb24iIT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDpyLnJlbmRlcigpO3JldHVybiBuLmZsYWdzfD0xLG51bGwhPT1lJiZ1PyhuLmNoaWxkPVhhKG4sZS5jaGlsZCxudWxsLGEpLG4uY2hpbGQ9WGEobixudWxsLG8sYSkpOndvKGUsbixvLGEpLG4ubWVtb2l6ZWRTdGF0ZT1yLnN0YXRlLGwmJk9sKG4sdCwhMCksbi5jaGlsZH1mdW5jdGlvbiBUbyhlKXt2YXIgbj1lLnN0YXRlTm9kZTtuLnBlbmRpbmdDb250ZXh0P1JsKDAsbi5wZW5kaW5nQ29udGV4dCxuLnBlbmRpbmdDb250ZXh0IT09bi5jb250ZXh0KTpuLmNvbnRleHQmJlJsKDAsbi5jb250ZXh0LCExKSxydShlLG4uY29udGFpbmVySW5mbyl9ZnVuY3Rpb24gTG8oZSxuLHQscixsKXtyZXR1cm4gcGEoKSxtYShsKSxuLmZsYWdzfD0yNTYsd28oZSxuLHQsciksbi5jaGlsZH12YXIgTW8sRm8sUm8sRG89e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBJbyhlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gT28oZSxuLHQpe3ZhciByLGw9bi5wZW5kaW5nUHJvcHMsdT1vdS5jdXJyZW50LG89ITEsaT0hISgxMjgmbi5mbGFncyk7aWYoKHI9aSl8fChyPShudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSkmJiEhKDImdSkpLHI/KG89ITAsbi5mbGFncyY9LTEyOSk6bnVsbCE9PWUmJm51bGw9PT1lLm1lbW9pemVkU3RhdGV8fCh1fD0xKSx6bChvdSwxJnUpLG51bGw9PT1lKXJldHVybiBzYShuKSxudWxsIT09KGU9bi5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShlPWUuZGVoeWRyYXRlZCk/KDEmbi5tb2RlPyIkISI9PT1lLmRhdGE/bi5sYW5lcz04Om4ubGFuZXM9MTA3Mzc0MTgyNDpuLmxhbmVzPTEsbnVsbCk6KGk9bC5jaGlsZHJlbixlPWwuZmFsbGJhY2ssbz8obD1uLm1vZGUsbz1uLmNoaWxkLGk9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46aX0sMSZsfHxudWxsPT09bz9vPUlzKGksbCwwLG51bGwpOihvLmNoaWxkTGFuZXM9MCxvLnBlbmRpbmdQcm9wcz1pKSxlPURzKGUsbCx0LG51bGwpLG8ucmV0dXJuPW4sZS5yZXR1cm49bixvLnNpYmxpbmc9ZSxuLmNoaWxkPW8sbi5jaGlsZC5tZW1vaXplZFN0YXRlPUlvKHQpLG4ubWVtb2l6ZWRTdGF0ZT1EbyxlKTpVbyhuLGkpKTtpZihudWxsIT09KHU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShyPXUuZGVoeWRyYXRlZCkpcmV0dXJuIGZ1bmN0aW9uKGUsbix0LHIsbCx1LG8pe2lmKHQpcmV0dXJuIDI1NiZuLmZsYWdzPyhuLmZsYWdzJj0tMjU3LFZvKGUsbixvLHI9Y28oRXJyb3IoYSg0MjIpKSkpKTpudWxsIT09bi5tZW1vaXplZFN0YXRlPyhuLmNoaWxkPWUuY2hpbGQsbi5mbGFnc3w9MTI4LG51bGwpOih1PXIuZmFsbGJhY2ssbD1uLm1vZGUscj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46ci5jaGlsZHJlbn0sbCwwLG51bGwpLCh1PURzKHUsbCxvLG51bGwpKS5mbGFnc3w9MixyLnJldHVybj1uLHUucmV0dXJuPW4sci5zaWJsaW5nPXUsbi5jaGlsZD1yLDEmbi5tb2RlJiZYYShuLGUuY2hpbGQsbnVsbCxvKSxuLmNoaWxkLm1lbW9pemVkU3RhdGU9SW8obyksbi5tZW1vaXplZFN0YXRlPURvLHUpO2lmKCEoMSZuLm1vZGUpKXJldHVybiBWbyhlLG4sbyxudWxsKTtpZigiJCEiPT09bC5kYXRhKXsKaWYocj1sLm5leHRTaWJsaW5nJiZsLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGk9ci5kZ3N0O3JldHVybiByPWksVm8oZSxuLG8scj1jbyh1PUVycm9yKGEoNDE5KSkscix2b2lkIDApKX1pZihpPSEhKG8mZS5jaGlsZExhbmVzKSxrb3x8aSl7aWYobnVsbCE9PShyPVBpKSl7c3dpdGNoKG8mLW8pe2Nhc2UgNDpsPTI7YnJlYWs7Y2FzZSAxNjpsPTg7YnJlYWs7Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0Omw9MzI7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6bD0yNjg0MzU0NTY7YnJlYWs7ZGVmYXVsdDpsPTB9MCE9PShsPWwmKHIuc3VzcGVuZGVkTGFuZXN8byk/MDpsKSYmbCE9PXUucmV0cnlMYW5lJiYodS5yZXRyeUxhbmU9bCxQYShlLGwpLHRzKHIsZSxsLC0xKSl9cmV0dXJuIGhzKCksVm8oZSxuLG8scj1jbyhFcnJvcihhKDQyMSkpKSl9cmV0dXJuIiQ/Ij09PWwuZGF0YT8obi5mbGFnc3w9MTI4LG4uY2hpbGQ9ZS5jaGlsZCxuPU5zLmJpbmQobnVsbCxlKSxsLl9yZWFjdFJldHJ5PW4sbnVsbCk6KGU9dS50cmVlQ29udGV4dCxyYT1zbChsLm5leHRTaWJsaW5nKSx0YT1uLGxhPSEwLGFhPW51bGwsbnVsbCE9PWUmJihxbFtLbCsrXT1YbCxxbFtLbCsrXT1HbCxxbFtLbCsrXT1ZbCxYbD1lLmlkLEdsPWUub3ZlcmZsb3csWWw9biksbj1VbyhuLHIuY2hpbGRyZW4pLG4uZmxhZ3N8PTQwOTYsbil9KGUsbixpLGwscix1LHQpO2lmKG8pe289bC5mYWxsYmFjayxpPW4ubW9kZSxyPSh1PWUuY2hpbGQpLnNpYmxpbmc7dmFyIHM9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46bC5jaGlsZHJlbn07cmV0dXJuIDEmaXx8bi5jaGlsZD09PXU/KGw9RnModSxzKSkuc3VidHJlZUZsYWdzPTE0NjgwMDY0JnUuc3VidHJlZUZsYWdzOigobD1uLmNoaWxkKS5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9cyxuLmRlbGV0aW9ucz1udWxsKSxudWxsIT09cj9vPUZzKHIsbyk6KG89RHMobyxpLHQsbnVsbCkpLmZsYWdzfD0yLG8ucmV0dXJuPW4sbC5yZXR1cm49bixsLnNpYmxpbmc9byxuLmNoaWxkPWwsbD1vLG89bi5jaGlsZCxpPW51bGw9PT0oaT1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0lvKHQpOntiYXNlTGFuZXM6aS5iYXNlTGFuZXN8dCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczppLnRyYW5zaXRpb25zfSxvLm1lbW9pemVkU3RhdGU9aSxvLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn50LG4ubWVtb2l6ZWRTdGF0ZT1EbyxsfXJldHVybiBlPShvPWUuY2hpbGQpLnNpYmxpbmcsbD1GcyhvLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSksISgxJm4ubW9kZSkmJihsLmxhbmVzPXQpLGwucmV0dXJuPW4sbC5zaWJsaW5nPW51bGwsbnVsbCE9PWUmJihudWxsPT09KHQ9bi5kZWxldGlvbnMpPyhuLmRlbGV0aW9ucz1bZV0sbi5mbGFnc3w9MTYpOnQucHVzaChlKSksbi5jaGlsZD1sLG4ubWVtb2l6ZWRTdGF0ZT1udWxsLGx9ZnVuY3Rpb24gVW8oZSxuKXtyZXR1cm4obj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46bn0sZS5tb2RlLDAsbnVsbCkpLnJldHVybj1lLGUuY2hpbGQ9bn1mdW5jdGlvbiBWbyhlLG4sdCxyKXtyZXR1cm4gbnVsbCE9PXImJm1hKHIpLFhhKG4sZS5jaGlsZCxudWxsLHQpLChlPVVvKG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4pKS5mbGFnc3w9MixuLm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIEFvKGUsbix0KXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bikseGEoZS5yZXR1cm4sbix0KX1mdW5jdGlvbiBCbyhlLG4sdCxyLGwpe3ZhciBhPWUubWVtb2l6ZWRTdGF0ZTtudWxsPT09YT9lLm1lbW9pemVkU3RhdGU9e2lzQmFja3dhcmRzOm4scmVuZGVyaW5nOm51bGwscmVuZGVyaW5nU3RhcnRUaW1lOjAsbGFzdDpyLHRhaWw6dCx0YWlsTW9kZTpsfTooYS5pc0JhY2t3YXJkcz1uLGEucmVuZGVyaW5nPW51bGwsYS5yZW5kZXJpbmdTdGFydFRpbWU9MCxhLmxhc3Q9cixhLnRhaWw9dCxhLnRhaWxNb2RlPWwpfWZ1bmN0aW9uIFdvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7aWYod28oZSxuLHIuY2hpbGRyZW4sdCksMiYocj1vdS5jdXJyZW50KSlyPTEmcnwyLG4uZmxhZ3N8PTEyODtlbHNle2lmKG51bGwhPT1lJiYxMjgmZS5mbGFncyllOmZvcihlPW4uY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJkFvKGUsdCxuKTtlbHNlIGlmKDE5PT09ZS50YWcpQW8oZSx0LG4pO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT1uKWJyZWFrIGU7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PW4pYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9ciY9MX1pZih6bChvdSxyKSwxJm4ubW9kZSlzd2l0Y2gobCl7Y2FzZSJmb3J3YXJkcyI6Zm9yKHQ9bi5jaGlsZCxsPW51bGw7bnVsbCE9PXQ7KW51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGw9PT1pdShlKSYmKGw9dCksdD10LnNpYmxpbmc7bnVsbD09PSh0PWwpPyhsPW4uY2hpbGQsbi5jaGlsZD1udWxsKToobD10LnNpYmxpbmcsdC5zaWJsaW5nPW51bGwpLEJvKG4sITEsbCx0LGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3IodD1udWxsLGw9bi5jaGlsZCxuLmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09aXUoZSkpe24uY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9dCx0PWwsbD1lfUJvKG4sITAsdCxudWxsLGEpO2JyZWFrO2Nhc2UidG9nZXRoZXIiOgpCbyhuLCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6bi5tZW1vaXplZFN0YXRlPW51bGx9ZWxzZSBuLm1lbW9pemVkU3RhdGU9bnVsbDtyZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBIbyhlLG4peyEoMSZuLm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsbi5hbHRlcm5hdGU9bnVsbCxuLmZsYWdzfD0yKX1mdW5jdGlvbiBRbyhlLG4sdCl7aWYobnVsbCE9PWUmJihuLmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksSWl8PW4ubGFuZXMsISh0Jm4uY2hpbGRMYW5lcykpcmV0dXJuIG51bGw7aWYobnVsbCE9PWUmJm4uY2hpbGQhPT1lLmNoaWxkKXRocm93IEVycm9yKGEoMTUzKSk7aWYobnVsbCE9PW4uY2hpbGQpe2Zvcih0PUZzKGU9bi5jaGlsZCxlLnBlbmRpbmdQcm9wcyksbi5jaGlsZD10LHQucmV0dXJuPW47bnVsbCE9PWUuc2libGluZzspZT1lLnNpYmxpbmcsKHQ9dC5zaWJsaW5nPUZzKGUsZS5wZW5kaW5nUHJvcHMpKS5yZXR1cm49bjt0LnNpYmxpbmc9bnVsbH1yZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBqbyhlLG4pe2lmKCFsYSlzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJoaWRkZW4iOm49ZS50YWlsO2Zvcih2YXIgdD1udWxsO251bGwhPT1uOyludWxsIT09bi5hbHRlcm5hdGUmJih0PW4pLG49bi5zaWJsaW5nO251bGw9PT10P2UudGFpbD1udWxsOnQuc2libGluZz1udWxsO2JyZWFrO2Nhc2UiY29sbGFwc2VkIjp0PWUudGFpbDtmb3IodmFyIHI9bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYocj10KSx0PXQuc2libGluZztudWxsPT09cj9ufHxudWxsPT09ZS50YWlsP2UudGFpbD1udWxsOmUudGFpbC5zaWJsaW5nPW51bGw6ci5zaWJsaW5nPW51bGx9fWZ1bmN0aW9uICRvKGUpe3ZhciBuPW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLHQ9MCxyPTA7aWYobilmb3IodmFyIGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9MTQ2ODAwNjQmbC5zdWJ0cmVlRmxhZ3Mscnw9MTQ2ODAwNjQmbC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO2Vsc2UgZm9yKGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9bC5zdWJ0cmVlRmxhZ3Mscnw9bC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO3JldHVybiBlLnN1YnRyZWVGbGFnc3w9cixlLmNoaWxkTGFuZXM9dCxufWZ1bmN0aW9uIHFvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcztzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiAkbyhuKSxudWxsO2Nhc2UgMTpjYXNlIDE3OnJldHVybiBNbChuLnR5cGUpJiZGbCgpLCRvKG4pLG51bGw7Y2FzZSAzOnJldHVybiByPW4uc3RhdGVOb2RlLGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGZhKG4pP24uZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJiEoMjU2Jm4uZmxhZ3MpfHwobi5mbGFnc3w9MTAyNCxudWxsIT09YWEmJih1cyhhYSksYWE9bnVsbCkpKSwkbyhuKSxudWxsO2Nhc2UgNTp1dShuKTt2YXIgbD10dShudS5jdXJyZW50KTtpZih0PW4udHlwZSxudWxsIT09ZSYmbnVsbCE9bi5zdGF0ZU5vZGUpRm8oZSxuLHQsciksZS5yZWYhPT1uLnJlZiYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtyZXR1cm4gJG8obiksbnVsbH1pZihlPXR1KEphLmN1cnJlbnQpLGZhKG4pKXtyPW4uc3RhdGVOb2RlLHQ9bi50eXBlO3ZhciB1PW4ubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltkbF09bixyW3BsXT11LGU9ISEoMSZuLm1vZGUpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixyKSxWcigiY2xvc2UiLHIpO2JyZWFrO2Nhc2UiaWZyYW1lIjpjYXNlIm9iamVjdCI6Y2FzZSJlbWJlZCI6VnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UidmlkZW8iOmNhc2UiYXVkaW8iOmZvcihsPTA7bDxEci5sZW5ndGg7bCsrKVZyKERyW2xdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLHIpO2JyZWFrO2Nhc2UiaW1nIjpjYXNlImltYWdlIjpjYXNlImxpbmsiOlZyKCJlcnJvciIsciksVnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6VnIoInRvZ2dsZSIscik7YnJlYWs7Y2FzZSJpbnB1dCI6WChyLHUpLFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInNlbGVjdCI6ci5fd3JhcHBlclN0YXRlPXt3YXNNdWx0aXBsZTohIXUubXVsdGlwbGV9LFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInRleHRhcmVhIjpsZShyLHUpLFZyKCJpbnZhbGlkIixyKX1mb3IodmFyIGkgaW4geWUodCx1KSxsPW51bGwsdSlpZih1Lmhhc093blByb3BlcnR5KGkpKXt2YXIgcz11W2ldOyJjaGlsZHJlbiI9PT1pPyJzdHJpbmciPT10eXBlb2Ygcz9yLnRleHRDb250ZW50IT09cyYmKCEwIT09dS5zdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcmJlpyKHIudGV4dENvbnRlbnQscyxlKSxsPVsiY2hpbGRyZW4iLHNdKToibnVtYmVyIj09dHlwZW9mIHMmJnIudGV4dENvbnRlbnQhPT0iIitzJiYoITAhPT11LnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci50ZXh0Q29udGVudCxzLGUpLGw9WyJjaGlsZHJlbiIsIiIrc10pOm8uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPXMmJiJvblNjcm9sbCI9PT1pJiZWcigic2Nyb2xsIixyKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChyKSxKKHIsdSwhMCk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChyKSx1ZShyKTticmVhaztjYXNlInNlbGVjdCI6Y2FzZSJvcHRpb24iOmJyZWFrO2RlZmF1bHQ6ImZ1bmN0aW9uIj09dHlwZW9mIHUub25DbGljayYmKHIub25jbGljaz1Kcil9cj1sLG4udXBkYXRlUXVldWU9cixudWxsIT09ciYmKG4uZmxhZ3N8PTQpfWVsc2V7Cmk9OT09PWwubm9kZVR5cGU/bDpsLm93bmVyRG9jdW1lbnQsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZSYmKGU9b2UodCkpLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/InNjcmlwdCI9PT10PygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudCh0LHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KHQpLCJzZWxlY3QiPT09dCYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsdCksZVtkbF09bixlW3BsXT1yLE1vKGUsbiksbi5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1iZSh0LHIpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixlKSxWcigiY2xvc2UiLGUpLGw9cjticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOlZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGw9MDtsPERyLmxlbmd0aDtsKyspVnIoRHJbbF0sZSk7bD1yO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLGUpLGw9cjticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpWcigiZXJyb3IiLGUpLFZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJkZXRhaWxzIjpWcigidG9nZ2xlIixlKSxsPXI7YnJlYWs7Y2FzZSJpbnB1dCI6WChlLHIpLGw9WShlLHIpLFZyKCJpbnZhbGlkIixlKTticmVhaztjYXNlIm9wdGlvbiI6ZGVmYXVsdDpsPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxsPU8oe30scix7dmFsdWU6dm9pZCAwfSksVnIoImludmFsaWQiLGUpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmxlKGUsciksbD1yZShlLHIpLFZyKCJpbnZhbGlkIixlKX1mb3IodSBpbiB5ZSh0LGwpLHM9bClpZihzLmhhc093blByb3BlcnR5KHUpKXt2YXIgYz1zW3VdOyJzdHlsZSI9PT11P2dlKGUsYyk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/bnVsbCE9KGM9Yz9jLl9faHRtbDp2b2lkIDApJiZmZShlLGMpOiJjaGlsZHJlbiI9PT11PyJzdHJpbmciPT10eXBlb2YgYz8oInRleHRhcmVhIiE9PXR8fCIiIT09YykmJmRlKGUsYyk6Im51bWJlciI9PXR5cGVvZiBjJiZkZShlLCIiK2MpOiJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciIT09dSYmInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIhPT11JiYiYXV0b0ZvY3VzIiE9PXUmJihvLmhhc093blByb3BlcnR5KHUpP251bGwhPWMmJiJvblNjcm9sbCI9PT11JiZWcigic2Nyb2xsIixlKTpudWxsIT1jJiZiKGUsdSxjLGkpKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChlKSxKKGUsciwhMSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChlKSx1ZShlKTticmVhaztjYXNlIm9wdGlvbiI6bnVsbCE9ci52YWx1ZSYmZS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIitRKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KHU9ci52YWx1ZSk/dGUoZSwhIXIubXVsdGlwbGUsdSwhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnRlKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBsLm9uQ2xpY2smJihlLm9uY2xpY2s9SnIpfXN3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYobi5mbGFnc3w9NCl9bnVsbCE9PW4ucmVmJiYobi5mbGFnc3w9NTEyLG4uZmxhZ3N8PTIwOTcxNTIpfXJldHVybiAkbyhuKSxudWxsO2Nhc2UgNjppZihlJiZudWxsIT1uLnN0YXRlTm9kZSlSbygwLG4sZS5tZW1vaXplZFByb3BzLHIpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiByJiZudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtpZih0PXR1KG51LmN1cnJlbnQpLHR1KEphLmN1cnJlbnQpLGZhKG4pKXtpZihyPW4uc3RhdGVOb2RlLHQ9bi5tZW1vaXplZFByb3BzLHJbZGxdPW4sKHU9ci5ub2RlVmFsdWUhPT10KSYmbnVsbCE9PShlPXRhKSlzd2l0Y2goZS50YWcpe2Nhc2UgMzpacihyLm5vZGVWYWx1ZSx0LCEhKDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci5ub2RlVmFsdWUsdCwhISgxJmUubW9kZSkpfXUmJihuLmZsYWdzfD00KX1lbHNlKHI9KDk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50KS5jcmVhdGVUZXh0Tm9kZShyKSlbZGxdPW4sbi5zdGF0ZU5vZGU9cn1yZXR1cm4gJG8obiksbnVsbDtjYXNlIDEzOmlmKENsKG91KSxyPW4ubWVtb2l6ZWRTdGF0ZSxudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5kZWh5ZHJhdGVkKXtpZihsYSYmbnVsbCE9PXJhJiYxJm4ubW9kZSYmISgxMjgmbi5mbGFncykpZGEoKSxwYSgpLG4uZmxhZ3N8PTk4NTYwLHU9ITE7ZWxzZSBpZih1PWZhKG4pLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIXUpdGhyb3cgRXJyb3IoYSgzMTgpKTtpZighKHU9bnVsbCE9PSh1PW4ubWVtb2l6ZWRTdGF0ZSk/dS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKGEoMzE3KSk7dVtkbF09bn1lbHNlIHBhKCksISgxMjgmbi5mbGFncykmJihuLm1lbW9pemVkU3RhdGU9bnVsbCksbi5mbGFnc3w9NDskbyhuKSx1PSExfWVsc2UgbnVsbCE9PWFhJiYodXMoYWEpLGFhPW51bGwpLHU9ITA7aWYoIXUpcmV0dXJuIDY1NTM2Jm4uZmxhZ3M/bjpudWxsfXJldHVybiAxMjgmbi5mbGFncz8obi5sYW5lcz10LG4pOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYobi5jaGlsZC5mbGFnc3w9ODE5MiwKMSZuLm1vZGUmJihudWxsPT09ZXx8MSZvdS5jdXJyZW50PzA9PT1SaSYmKFJpPTMpOmhzKCkpKSxudWxsIT09bi51cGRhdGVRdWV1ZSYmKG4uZmxhZ3N8PTQpLCRvKG4pLG51bGwpO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsPT09ZSYmV3Iobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksJG8obiksbnVsbDtjYXNlIDEwOnJldHVybiBTYShuLnR5cGUuX2NvbnRleHQpLCRvKG4pLG51bGw7Y2FzZSAxOTppZihDbChvdSksbnVsbD09PSh1PW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuICRvKG4pLG51bGw7aWYocj0hISgxMjgmbi5mbGFncyksbnVsbD09PShpPXUucmVuZGVyaW5nKSlpZihyKWpvKHUsITEpO2Vsc2V7aWYoMCE9PVJpfHxudWxsIT09ZSYmMTI4JmUuZmxhZ3MpZm9yKGU9bi5jaGlsZDtudWxsIT09ZTspe2lmKG51bGwhPT0oaT1pdShlKSkpe2ZvcihuLmZsYWdzfD0xMjgsam8odSwhMSksbnVsbCE9PShyPWkudXBkYXRlUXVldWUpJiYobi51cGRhdGVRdWV1ZT1yLG4uZmxhZ3N8PTQpLG4uc3VidHJlZUZsYWdzPTAscj10LHQ9bi5jaGlsZDtudWxsIT09dDspZT1yLCh1PXQpLmZsYWdzJj0xNDY4MDA2NixudWxsPT09KGk9dS5hbHRlcm5hdGUpPyh1LmNoaWxkTGFuZXM9MCx1LmxhbmVzPWUsdS5jaGlsZD1udWxsLHUuc3VidHJlZUZsYWdzPTAsdS5tZW1vaXplZFByb3BzPW51bGwsdS5tZW1vaXplZFN0YXRlPW51bGwsdS51cGRhdGVRdWV1ZT1udWxsLHUuZGVwZW5kZW5jaWVzPW51bGwsdS5zdGF0ZU5vZGU9bnVsbCk6KHUuY2hpbGRMYW5lcz1pLmNoaWxkTGFuZXMsdS5sYW5lcz1pLmxhbmVzLHUuY2hpbGQ9aS5jaGlsZCx1LnN1YnRyZWVGbGFncz0wLHUuZGVsZXRpb25zPW51bGwsdS5tZW1vaXplZFByb3BzPWkubWVtb2l6ZWRQcm9wcyx1Lm1lbW9pemVkU3RhdGU9aS5tZW1vaXplZFN0YXRlLHUudXBkYXRlUXVldWU9aS51cGRhdGVRdWV1ZSx1LnR5cGU9aS50eXBlLGU9aS5kZXBlbmRlbmNpZXMsdS5kZXBlbmRlbmNpZXM9bnVsbD09PWU/bnVsbDp7bGFuZXM6ZS5sYW5lcyxmaXJzdENvbnRleHQ6ZS5maXJzdENvbnRleHR9KSx0PXQuc2libGluZztyZXR1cm4gemwob3UsMSZvdS5jdXJyZW50fDIpLG4uY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXUudGFpbCYmR2UoKT5XaSYmKG4uZmxhZ3N8PTEyOCxyPSEwLGpvKHUsITEpLG4ubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighcilpZihudWxsIT09KGU9aXUoaSkpKXtpZihuLmZsYWdzfD0xMjgscj0hMCxudWxsIT09KHQ9ZS51cGRhdGVRdWV1ZSkmJihuLnVwZGF0ZVF1ZXVlPXQsbi5mbGFnc3w9NCksam8odSwhMCksbnVsbD09PXUudGFpbCYmImhpZGRlbiI9PT11LnRhaWxNb2RlJiYhaS5hbHRlcm5hdGUmJiFsYSlyZXR1cm4gJG8obiksbnVsbH1lbHNlIDIqR2UoKS11LnJlbmRlcmluZ1N0YXJ0VGltZT5XaSYmMTA3Mzc0MTgyNCE9PXQmJihuLmZsYWdzfD0xMjgscj0hMCxqbyh1LCExKSxuLmxhbmVzPTQxOTQzMDQpO3UuaXNCYWNrd2FyZHM/KGkuc2libGluZz1uLmNoaWxkLG4uY2hpbGQ9aSk6KG51bGwhPT0odD11Lmxhc3QpP3Quc2libGluZz1pOm4uY2hpbGQ9aSx1Lmxhc3Q9aSl9cmV0dXJuIG51bGwhPT11LnRhaWw/KG49dS50YWlsLHUucmVuZGVyaW5nPW4sdS50YWlsPW4uc2libGluZyx1LnJlbmRlcmluZ1N0YXJ0VGltZT1HZSgpLG4uc2libGluZz1udWxsLHQ9b3UuY3VycmVudCx6bChvdSxyPzEmdHwyOjEmdCksbik6KCRvKG4pLG51bGwpO2Nhc2UgMjI6Y2FzZSAyMzpyZXR1cm4gZnMoKSxyPW51bGwhPT1uLm1lbW9pemVkU3RhdGUsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPT1yJiYobi5mbGFnc3w9ODE5MiksciYmMSZuLm1vZGU/ISEoMTA3Mzc0MTgyNCZNaSkmJigkbyhuKSw2Jm4uc3VidHJlZUZsYWdzJiYobi5mbGFnc3w9ODE5MikpOiRvKG4pLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKGEoMTU2LG4udGFnKSl9ZnVuY3Rpb24gS28oZSxuKXtzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMTpyZXR1cm4gTWwobi50eXBlKSYmRmwoKSw2NTUzNiYoZT1uLmZsYWdzKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDM6cmV0dXJuIGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLDY1NTM2JihlPW4uZmxhZ3MpJiYhKDEyOCZlKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDU6cmV0dXJuIHV1KG4pLG51bGw7Y2FzZSAxMzppZihDbChvdSksbnVsbCE9PShlPW4ubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT1uLmFsdGVybmF0ZSl0aHJvdyBFcnJvcihhKDM0MCkpO3BhKCl9cmV0dXJuIDY1NTM2JihlPW4uZmxhZ3MpPyhuLmZsYWdzPS02NTUzNyZlfDEyOCxuKTpudWxsO2Nhc2UgMTk6cmV0dXJuIENsKG91KSxudWxsO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIFNhKG4udHlwZS5fY29udGV4dCksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGZzKCksbnVsbDtkZWZhdWx0OnJldHVybiBudWxsfX1Nbz1mdW5jdGlvbihlLG4pe2Zvcih2YXIgdD1uLmNoaWxkO251bGwhPT10Oyl7aWYoNT09PXQudGFnfHw2PT09dC50YWcpZS5hcHBlbmRDaGlsZCh0LnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09dC50YWcmJm51bGwhPT10LmNoaWxkKXt0LmNoaWxkLnJldHVybj10LHQ9dC5jaGlsZDtjb250aW51ZX1pZih0PT09bilicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09bilyZXR1cm47dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX0sRm89ZnVuY3Rpb24oZSxuLHQscil7dmFyIGw9ZS5tZW1vaXplZFByb3BzO2lmKGwhPT1yKXtlPW4uc3RhdGVOb2RlLHR1KEphLmN1cnJlbnQpO3ZhciBhLHU9bnVsbDtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6bD1ZKGUsbCkscj1ZKGUsciksdT1bXTticmVhaztjYXNlInNlbGVjdCI6bD1PKHt9LGwse3ZhbHVlOnZvaWQgMH0pLHI9Tyh7fSxyLHt2YWx1ZTp2b2lkIDB9KSx1PVtdO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmw9cmUoZSxsKSxyPXJlKGUsciksdT1bXTticmVhawo7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2YgbC5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPUpyKX1mb3IoYyBpbiB5ZSh0LHIpLHQ9bnVsbCxsKWlmKCFyLmhhc093blByb3BlcnR5KGMpJiZsLmhhc093blByb3BlcnR5KGMpJiZudWxsIT1sW2NdKWlmKCJzdHlsZSI9PT1jKXt2YXIgaT1sW2NdO2ZvcihhIGluIGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKHR8fCh0PXt9KSx0W2FdPSIiKX1lbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiE9PWMmJiJjaGlsZHJlbiIhPT1jJiYic3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIiE9PWMmJiJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciIT09YyYmImF1dG9Gb2N1cyIhPT1jJiYoby5oYXNPd25Qcm9wZXJ0eShjKT91fHwodT1bXSk6KHU9dXx8W10pLnB1c2goYyxudWxsKSk7Zm9yKGMgaW4gcil7dmFyIHM9cltjXTtpZihpPW51bGwhPWw/bFtjXTp2b2lkIDAsci5oYXNPd25Qcm9wZXJ0eShjKSYmcyE9PWkmJihudWxsIT1zfHxudWxsIT1pKSlpZigic3R5bGUiPT09YylpZihpKXtmb3IoYSBpbiBpKSFpLmhhc093blByb3BlcnR5KGEpfHxzJiZzLmhhc093blByb3BlcnR5KGEpfHwodHx8KHQ9e30pLHRbYV09IiIpO2ZvcihhIGluIHMpcy5oYXNPd25Qcm9wZXJ0eShhKSYmaVthXSE9PXNbYV0mJih0fHwodD17fSksdFthXT1zW2FdKX1lbHNlIHR8fCh1fHwodT1bXSksdS5wdXNoKGMsdCkpLHQ9cztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWM/KHM9cz9zLl9faHRtbDp2b2lkIDAsaT1pP2kuX19odG1sOnZvaWQgMCxudWxsIT1zJiZpIT09cyYmKHU9dXx8W10pLnB1c2goYyxzKSk6ImNoaWxkcmVuIj09PWM/InN0cmluZyIhPXR5cGVvZiBzJiYibnVtYmVyIiE9dHlwZW9mIHN8fCh1PXV8fFtdKS5wdXNoKGMsIiIrcyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJihvLmhhc093blByb3BlcnR5KGMpPyhudWxsIT1zJiYib25TY3JvbGwiPT09YyYmVnIoInNjcm9sbCIsZSksdXx8aT09PXN8fCh1PVtdKSk6KHU9dXx8W10pLnB1c2goYyxzKSl9dCYmKHU9dXx8W10pLnB1c2goInN0eWxlIix0KTt2YXIgYz11OyhuLnVwZGF0ZVF1ZXVlPWMpJiYobi5mbGFnc3w9NCl9fSxSbz1mdW5jdGlvbihlLG4sdCxyKXt0IT09ciYmKG4uZmxhZ3N8PTQpfTt2YXIgWW89ITEsWG89ITEsR289ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsWm89bnVsbDtmdW5jdGlvbiBKbyhlLG4pe3ZhciB0PWUucmVmO2lmKG51bGwhPT10KWlmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRyeXt0KG51bGwpfWNhdGNoKHQpe0VzKGUsbix0KX1lbHNlIHQuY3VycmVudD1udWxsfWZ1bmN0aW9uIGVpKGUsbix0KXt0cnl7dCgpfWNhdGNoKHQpe0VzKGUsbix0KX19dmFyIG5pPSExO2Z1bmN0aW9uIHRpKGUsbix0KXt2YXIgcj1uLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBsPXI9ci5uZXh0O2Rve2lmKChsLnRhZyZlKT09PWUpe3ZhciBhPWwuZGVzdHJveTtsLmRlc3Ryb3k9dm9pZCAwLHZvaWQgMCE9PWEmJmVpKG4sdCxhKX1sPWwubmV4dH13aGlsZShsIT09cil9fWZ1bmN0aW9uIHJpKGUsbil7aWYobnVsbCE9PShuPW51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKT9uLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciB0PW49bi5uZXh0O2Rve2lmKCh0LnRhZyZlKT09PWUpe3ZhciByPXQuY3JlYXRlO3QuZGVzdHJveT1yKCl9dD10Lm5leHR9d2hpbGUodCE9PW4pfX1mdW5jdGlvbiBsaShlKXt2YXIgbj1lLnJlZjtpZihudWxsIT09bil7dmFyIHQ9ZS5zdGF0ZU5vZGU7ZS50YWcsZT10LCJmdW5jdGlvbiI9PXR5cGVvZiBuP24oZSk6bi5jdXJyZW50PWV9fWZ1bmN0aW9uIGFpKGUpe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiYoZS5hbHRlcm5hdGU9bnVsbCxhaShuKSksZS5jaGlsZD1udWxsLGUuZGVsZXRpb25zPW51bGwsZS5zaWJsaW5nPW51bGwsNT09PWUudGFnJiYobnVsbCE9PShuPWUuc3RhdGVOb2RlKSYmKGRlbGV0ZSBuW2RsXSxkZWxldGUgbltwbF0sZGVsZXRlIG5baGxdLGRlbGV0ZSBuW2dsXSxkZWxldGUgblt2bF0pKSxlLnN0YXRlTm9kZT1udWxsLGUucmV0dXJuPW51bGwsZS5kZXBlbmRlbmNpZXM9bnVsbCxlLm1lbW9pemVkUHJvcHM9bnVsbCxlLm1lbW9pemVkU3RhdGU9bnVsbCxlLnBlbmRpbmdQcm9wcz1udWxsLGUuc3RhdGVOb2RlPW51bGwsZS51cGRhdGVRdWV1ZT1udWxsfWZ1bmN0aW9uIHVpKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8ND09PWUudGFnfWZ1bmN0aW9uIG9pKGUpe2U6Zm9yKDs7KXtmb3IoO251bGw9PT1lLnNpYmxpbmc7KXtpZihudWxsPT09ZS5yZXR1cm58fHVpKGUucmV0dXJuKSlyZXR1cm4gbnVsbDtlPWUucmV0dXJufWZvcihlLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nOzUhPT1lLnRhZyYmNiE9PWUudGFnJiYxOCE9PWUudGFnOyl7aWYoMiZlLmZsYWdzKWNvbnRpbnVlIGU7aWYobnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSxuPzg9PT10Lm5vZGVUeXBlP3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxuKTp0Lmluc2VydEJlZm9yZShlLG4pOig4PT09dC5ub2RlVHlwZT8obj10LnBhcmVudE5vZGUpLmluc2VydEJlZm9yZShlLHQpOihuPXQpLmFwcGVuZENoaWxkKGUpLG51bGwhPSh0PXQuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9SnIpKTtlbHNlIGlmKDQhPT1yJiZudWxsIT09KGU9ZS5jaGlsZCkpZm9yKGlpKGUsbix0KSxlPWUuc2libGluZztudWxsIT09ZTspaWkoZSxuLHQpLGU9ZS5zaWJsaW5nfWZ1bmN0aW9uIHNpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSwKbj90Lmluc2VydEJlZm9yZShlLG4pOnQuYXBwZW5kQ2hpbGQoZSk7ZWxzZSBpZig0IT09ciYmbnVsbCE9PShlPWUuY2hpbGQpKWZvcihzaShlLG4sdCksZT1lLnNpYmxpbmc7bnVsbCE9PWU7KXNpKGUsbix0KSxlPWUuc2libGluZ312YXIgY2k9bnVsbCxmaT0hMTtmdW5jdGlvbiBkaShlLG4sdCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspcGkoZSxuLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHBpKGUsbix0KXtpZihhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXthbi5vbkNvbW1pdEZpYmVyVW5tb3VudChsbix0KX1jYXRjaChlKXt9c3dpdGNoKHQudGFnKXtjYXNlIDU6WG98fEpvKHQsbik7Y2FzZSA2OnZhciByPWNpLGw9Zmk7Y2k9bnVsbCxkaShlLG4sdCksZmk9bCxudWxsIT09KGNpPXIpJiYoZmk/KGU9Y2ksdD10LnN0YXRlTm9kZSw4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk6ZS5yZW1vdmVDaGlsZCh0KSk6Y2kucmVtb3ZlQ2hpbGQodC5zdGF0ZU5vZGUpKTticmVhaztjYXNlIDE4Om51bGwhPT1jaSYmKGZpPyhlPWNpLHQ9dC5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/aWwoZS5wYXJlbnROb2RlLHQpOjE9PT1lLm5vZGVUeXBlJiZpbChlLHQpLEhuKGUpKTppbChjaSx0LnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWNpLGw9ZmksY2k9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxmaT0hMCxkaShlLG4sdCksY2k9cixmaT1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZighWG8mJihudWxsIT09KHI9dC51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKSl7bD1yPXIubmV4dDtkb3t2YXIgYT1sLHU9YS5kZXN0cm95O2E9YS50YWcsdm9pZCAwIT09dSYmKDImYXx8NCZhKSYmZWkodCxuLHUpLGw9bC5uZXh0fXdoaWxlKGwhPT1yKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAxOmlmKCFYbyYmKEpvKHQsbiksImZ1bmN0aW9uIj09dHlwZW9mKHI9dC5zdGF0ZU5vZGUpLmNvbXBvbmVudFdpbGxVbm1vdW50KSl0cnl7ci5wcm9wcz10Lm1lbW9pemVkUHJvcHMsci5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsci5jb21wb25lbnRXaWxsVW5tb3VudCgpfWNhdGNoKGUpe0VzKHQsbixlKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAyMTpkaShlLG4sdCk7YnJlYWs7Y2FzZSAyMjoxJnQubW9kZT8oWG89KHI9WG8pfHxudWxsIT09dC5tZW1vaXplZFN0YXRlLGRpKGUsbix0KSxYbz1yKTpkaShlLG4sdCk7YnJlYWs7ZGVmYXVsdDpkaShlLG4sdCl9fWZ1bmN0aW9uIG1pKGUpe3ZhciBuPWUudXBkYXRlUXVldWU7aWYobnVsbCE9PW4pe2UudXBkYXRlUXVldWU9bnVsbDt2YXIgdD1lLnN0YXRlTm9kZTtudWxsPT09dCYmKHQ9ZS5zdGF0ZU5vZGU9bmV3IEdvKSxuLmZvckVhY2goKGZ1bmN0aW9uKG4pe3ZhciByPV9zLmJpbmQobnVsbCxlLG4pO3QuaGFzKG4pfHwodC5hZGQobiksbi50aGVuKHIscikpfSkpfX1mdW5jdGlvbiBoaShlLG4pe3ZhciB0PW4uZGVsZXRpb25zO2lmKG51bGwhPT10KWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO3RyeXt2YXIgdT1lLG89bixpPW87ZTpmb3IoO251bGwhPT1pOyl7c3dpdGNoKGkudGFnKXtjYXNlIDU6Y2k9aS5zdGF0ZU5vZGUsZmk9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0OmNpPWkuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sZmk9ITA7YnJlYWsgZX1pPWkucmV0dXJufWlmKG51bGw9PT1jaSl0aHJvdyBFcnJvcihhKDE2MCkpO3BpKHUsbyxsKSxjaT1udWxsLGZpPSExO3ZhciBzPWwuYWx0ZXJuYXRlO251bGwhPT1zJiYocy5yZXR1cm49bnVsbCksbC5yZXR1cm49bnVsbH1jYXRjaChlKXtFcyhsLG4sZSl9fWlmKDEyODU0Jm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWdpKG4sZSksbj1uLnNpYmxpbmd9ZnVuY3Rpb24gZ2koZSxuKXt2YXIgdD1lLmFsdGVybmF0ZSxyPWUuZmxhZ3M7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYoaGkobixlKSx2aShlKSw0JnIpe3RyeXt0aSgzLGUsZS5yZXR1cm4pLHJpKDMsZSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX10cnl7dGkoNSxlLGUucmV0dXJuKX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDE6aGkobixlKSx2aShlKSw1MTImciYmbnVsbCE9PXQmJkpvKHQsdC5yZXR1cm4pO2JyZWFrO2Nhc2UgNTppZihoaShuLGUpLHZpKGUpLDUxMiZyJiZudWxsIT09dCYmSm8odCx0LnJldHVybiksMzImZS5mbGFncyl7dmFyIGw9ZS5zdGF0ZU5vZGU7dHJ5e2RlKGwsIiIpfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWlmKDQmciYmbnVsbCE9KGw9ZS5zdGF0ZU5vZGUpKXt2YXIgdT1lLm1lbW9pemVkUHJvcHMsbz1udWxsIT09dD90Lm1lbW9pemVkUHJvcHM6dSxpPWUudHlwZSxzPWUudXBkYXRlUXVldWU7aWYoZS51cGRhdGVRdWV1ZT1udWxsLG51bGwhPT1zKXRyeXsiaW5wdXQiPT09aSYmInJhZGlvIj09PXUudHlwZSYmbnVsbCE9dS5uYW1lJiZHKGwsdSksYmUoaSxvKTt2YXIgYz1iZShpLHUpO2ZvcihvPTA7bzxzLmxlbmd0aDtvKz0yKXt2YXIgZj1zW29dLGQ9c1tvKzFdOyJzdHlsZSI9PT1mP2dlKGwsZCk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWY/ZmUobCxkKToiY2hpbGRyZW4iPT09Zj9kZShsLGQpOmIobCxmLGQsYyl9c3dpdGNoKGkpe2Nhc2UiaW5wdXQiOloobCx1KTticmVhaztjYXNlInRleHRhcmVhIjphZShsLHUpO2JyZWFrO2Nhc2Uic2VsZWN0Ijp2YXIgcD1sLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU7bC5fd3JhcHBlclN0YXRlLndhc011bHRpcGxlPSEhdS5tdWx0aXBsZTt2YXIgbT11LnZhbHVlO251bGwhPW0/dGUobCwhIXUubXVsdGlwbGUsbSwhMSk6cCE9PSEhdS5tdWx0aXBsZSYmKG51bGwhPXUuZGVmYXVsdFZhbHVlP3RlKGwsISF1Lm11bHRpcGxlLHUuZGVmYXVsdFZhbHVlLCEwKTp0ZShsLCEhdS5tdWx0aXBsZSx1Lm11bHRpcGxlP1tdOiIiLCExKSl9bFtwbF09dX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDY6aWYoaGkobixlKSx2aShlKSw0JnIpewppZihudWxsPT09ZS5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjIpKTtsPWUuc3RhdGVOb2RlLHU9ZS5tZW1vaXplZFByb3BzO3RyeXtsLm5vZGVWYWx1ZT11fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWJyZWFrO2Nhc2UgMzppZihoaShuLGUpLHZpKGUpLDQmciYmbnVsbCE9PXQmJnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e0huKG4uY29udGFpbmVySW5mbyl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX1icmVhaztjYXNlIDQ6ZGVmYXVsdDpoaShuLGUpLHZpKGUpO2JyZWFrO2Nhc2UgMTM6aGkobixlKSx2aShlKSw4MTkyJihsPWUuY2hpbGQpLmZsYWdzJiYodT1udWxsIT09bC5tZW1vaXplZFN0YXRlLGwuc3RhdGVOb2RlLmlzSGlkZGVuPXUsIXV8fG51bGwhPT1sLmFsdGVybmF0ZSYmbnVsbCE9PWwuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fChCaT1HZSgpKSksNCZyJiZtaShlKTticmVhaztjYXNlIDIyOmlmKGY9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUsMSZlLm1vZGU/KFhvPShjPVhvKXx8ZixoaShuLGUpLFhvPWMpOmhpKG4sZSksdmkoZSksODE5MiZyKXtpZihjPW51bGwhPT1lLm1lbW9pemVkU3RhdGUsKGUuc3RhdGVOb2RlLmlzSGlkZGVuPWMpJiYhZiYmMSZlLm1vZGUpZm9yKFpvPWUsZj1lLmNoaWxkO251bGwhPT1mOyl7Zm9yKGQ9Wm89ZjtudWxsIT09Wm87KXtzd2l0Y2gobT0ocD1abykuY2hpbGQscC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTp0aSg0LHAscC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpKbyhwLHAucmV0dXJuKTt2YXIgaD1wLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgaC5jb21wb25lbnRXaWxsVW5tb3VudCl7cj1wLHQ9cC5yZXR1cm47dHJ5e249cixoLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxoLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxoLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7RXMocix0LGUpfX1icmVhaztjYXNlIDU6Sm8ocCxwLnJldHVybik7YnJlYWs7Y2FzZSAyMjppZihudWxsIT09cC5tZW1vaXplZFN0YXRlKXt3aShkKTtjb250aW51ZX19bnVsbCE9PW0/KG0ucmV0dXJuPXAsWm89bSk6d2koZCl9Zj1mLnNpYmxpbmd9ZTpmb3IoZj1udWxsLGQ9ZTs7KXtpZig1PT09ZC50YWcpe2lmKG51bGw9PT1mKXtmPWQ7dHJ5e2w9ZC5zdGF0ZU5vZGUsYz8iZnVuY3Rpb24iPT10eXBlb2YodT1sLnN0eWxlKS5zZXRQcm9wZXJ0eT91LnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOnUuZGlzcGxheT0ibm9uZSI6KGk9ZC5zdGF0ZU5vZGUsbz1udWxsIT0ocz1kLm1lbW9pemVkUHJvcHMuc3R5bGUpJiZzLmhhc093blByb3BlcnR5KCJkaXNwbGF5Iik/cy5kaXNwbGF5Om51bGwsaS5zdHlsZS5kaXNwbGF5PWhlKCJkaXNwbGF5IixvKSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX19fWVsc2UgaWYoNj09PWQudGFnKXtpZihudWxsPT09Zil0cnl7ZC5zdGF0ZU5vZGUubm9kZVZhbHVlPWM/IiI6ZC5tZW1vaXplZFByb3BzfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWVsc2UgaWYoKDIyIT09ZC50YWcmJjIzIT09ZC50YWd8fG51bGw9PT1kLm1lbW9pemVkU3RhdGV8fGQ9PT1lKSYmbnVsbCE9PWQuY2hpbGQpe2QuY2hpbGQucmV0dXJuPWQsZD1kLmNoaWxkO2NvbnRpbnVlfWlmKGQ9PT1lKWJyZWFrIGU7Zm9yKDtudWxsPT09ZC5zaWJsaW5nOyl7aWYobnVsbD09PWQucmV0dXJufHxkLnJldHVybj09PWUpYnJlYWsgZTtmPT09ZCYmKGY9bnVsbCksZD1kLnJldHVybn1mPT09ZCYmKGY9bnVsbCksZC5zaWJsaW5nLnJldHVybj1kLnJldHVybixkPWQuc2libGluZ319YnJlYWs7Y2FzZSAxOTpoaShuLGUpLHZpKGUpLDQmciYmbWkoZSk7Y2FzZSAyMTp9fWZ1bmN0aW9uIHZpKGUpe3ZhciBuPWUuZmxhZ3M7aWYoMiZuKXt0cnl7ZTp7Zm9yKHZhciB0PWUucmV0dXJuO251bGwhPT10Oyl7aWYodWkodCkpe3ZhciByPXQ7YnJlYWsgZX10PXQucmV0dXJufXRocm93IEVycm9yKGEoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIGw9ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKGRlKGwsIiIpLHIuZmxhZ3MmPS0zMyksc2koZSxvaShlKSxsKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciB1PXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWkoZSxvaShlKSx1KTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMTYxKSl9fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9ZS5mbGFncyY9LTN9NDA5NiZuJiYoZS5mbGFncyY9LTQwOTcpfWZ1bmN0aW9uIHlpKGUsbix0KXtabz1lLGJpKGUsbix0KX1mdW5jdGlvbiBiaShlLG4sdCl7Zm9yKHZhciByPSEhKDEmZS5tb2RlKTtudWxsIT09Wm87KXt2YXIgbD1abyxhPWwuY2hpbGQ7aWYoMjI9PT1sLnRhZyYmcil7dmFyIHU9bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZXx8WW87aWYoIXUpe3ZhciBvPWwuYWx0ZXJuYXRlLGk9bnVsbCE9PW8mJm51bGwhPT1vLm1lbW9pemVkU3RhdGV8fFhvO289WW87dmFyIHM9WG87aWYoWW89dSwoWG89aSkmJiFzKWZvcihabz1sO251bGwhPT1abzspaT0odT1abykuY2hpbGQsMjI9PT11LnRhZyYmbnVsbCE9PXUubWVtb2l6ZWRTdGF0ZT9TaShsKTpudWxsIT09aT8oaS5yZXR1cm49dSxabz1pKTpTaShsKTtmb3IoO251bGwhPT1hOylabz1hLGJpKGEsbix0KSxhPWEuc2libGluZztabz1sLFlvPW8sWG89c31raShlKX1lbHNlIDg3NzImbC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1hPyhhLnJldHVybj1sLFpvPWEpOmtpKGUpfX1mdW5jdGlvbiBraShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKDg3NzImbi5mbGFncyl7dmFyIHQ9bi5hbHRlcm5hdGU7dHJ5e2lmKDg3NzImbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6WG98fHJpKDUsbik7YnJlYWs7Y2FzZSAxOnZhciByPW4uc3RhdGVOb2RlO2lmKDQmbi5mbGFncyYmIVhvKWlmKG51bGw9PT10KXIuY29tcG9uZW50RGlkTW91bnQoKTtlbHNle3ZhciBsPW4uZWxlbWVudFR5cGU9PT1uLnR5cGU/dC5tZW1vaXplZFByb3BzOmdhKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpCjtyLmNvbXBvbmVudERpZFVwZGF0ZShsLHQubWVtb2l6ZWRTdGF0ZSxyLl9fcmVhY3RJbnRlcm5hbFNuYXBzaG90QmVmb3JlVXBkYXRlKX12YXIgdT1uLnVwZGF0ZVF1ZXVlO251bGwhPT11JiZVYShuLHUscik7YnJlYWs7Y2FzZSAzOnZhciBvPW4udXBkYXRlUXVldWU7aWYobnVsbCE9PW8pe2lmKHQ9bnVsbCxudWxsIT09bi5jaGlsZClzd2l0Y2gobi5jaGlsZC50YWcpe2Nhc2UgNTpjYXNlIDE6dD1uLmNoaWxkLnN0YXRlTm9kZX1VYShuLG8sdCl9YnJlYWs7Y2FzZSA1OnZhciBpPW4uc3RhdGVOb2RlO2lmKG51bGw9PT10JiY0Jm4uZmxhZ3Mpe3Q9aTt2YXIgcz1uLm1lbW9pemVkUHJvcHM7c3dpdGNoKG4udHlwZSl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpzLmF1dG9Gb2N1cyYmdC5mb2N1cygpO2JyZWFrO2Nhc2UiaW1nIjpzLnNyYyYmKHQuc3JjPXMuc3JjKX19YnJlYWs7Y2FzZSA2OmNhc2UgNDpjYXNlIDEyOmNhc2UgMTk6Y2FzZSAxNzpjYXNlIDIxOmNhc2UgMjI6Y2FzZSAyMzpjYXNlIDI1OmJyZWFrO2Nhc2UgMTM6aWYobnVsbD09PW4ubWVtb2l6ZWRTdGF0ZSl7dmFyIGM9bi5hbHRlcm5hdGU7aWYobnVsbCE9PWMpe3ZhciBmPWMubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09Zil7dmFyIGQ9Zi5kZWh5ZHJhdGVkO251bGwhPT1kJiZIbihkKX19fWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoYSgxNjMpKX1Yb3x8NTEyJm4uZmxhZ3MmJmxpKG4pfWNhdGNoKGUpe0VzKG4sbi5yZXR1cm4sZSl9fWlmKG49PT1lKXtabz1udWxsO2JyZWFrfWlmKG51bGwhPT0odD1uLnNpYmxpbmcpKXt0LnJldHVybj1uLnJldHVybixabz10O2JyZWFrfVpvPW4ucmV0dXJufX1mdW5jdGlvbiB3aShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKG49PT1lKXtabz1udWxsO2JyZWFrfXZhciB0PW4uc2libGluZztpZihudWxsIT09dCl7dC5yZXR1cm49bi5yZXR1cm4sWm89dDticmVha31abz1uLnJldHVybn19ZnVuY3Rpb24gU2koZSl7Zm9yKDtudWxsIT09Wm87KXt2YXIgbj1abzt0cnl7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnZhciB0PW4ucmV0dXJuO3RyeXtyaSg0LG4pfWNhdGNoKGUpe0VzKG4sdCxlKX1icmVhaztjYXNlIDE6dmFyIHI9bi5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkTW91bnQpe3ZhciBsPW4ucmV0dXJuO3RyeXtyLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7RXMobixsLGUpfX12YXIgYT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobixhLGUpfWJyZWFrO2Nhc2UgNTp2YXIgdT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobix1LGUpfX19Y2F0Y2goZSl7RXMobixuLnJldHVybixlKX1pZihuPT09ZSl7Wm89bnVsbDticmVha312YXIgbz1uLnNpYmxpbmc7aWYobnVsbCE9PW8pe28ucmV0dXJuPW4ucmV0dXJuLFpvPW87YnJlYWt9Wm89bi5yZXR1cm59fXZhciB4aSxFaT1NYXRoLmNlaWwsQ2k9ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHppPWsuUmVhY3RDdXJyZW50T3duZXIsTmk9ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfaT0wLFBpPW51bGwsVGk9bnVsbCxMaT0wLE1pPTAsRmk9RWwoMCksUmk9MCxEaT1udWxsLElpPTAsT2k9MCxVaT0wLFZpPW51bGwsQWk9bnVsbCxCaT0wLFdpPTEvMCxIaT1udWxsLFFpPSExLGppPW51bGwsJGk9bnVsbCxxaT0hMSxLaT1udWxsLFlpPTAsWGk9MCxHaT1udWxsLFppPS0xLEppPTA7ZnVuY3Rpb24gZXMoKXtyZXR1cm4gNiZfaT9HZSgpOi0xIT09Wmk/Wmk6Wmk9R2UoKX1mdW5jdGlvbiBucyhlKXtyZXR1cm4gMSZlLm1vZGU/MiZfaSYmMCE9PUxpP0xpJi1MaTpudWxsIT09aGEudHJhbnNpdGlvbj8oMD09PUppJiYoSmk9Z24oKSksSmkpOjAhPT0oZT1rbik/ZTplPXZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MTY6R24oZS50eXBlKToxfWZ1bmN0aW9uIHRzKGUsbix0LHIpe2lmKDUwPFhpKXRocm93IFhpPTAsR2k9bnVsbCxFcnJvcihhKDE4NSkpO3luKGUsdCxyKSwyJl9pJiZlPT09UGl8fChlPT09UGkmJighKDImX2kpJiYoT2l8PXQpLDQ9PT1SaSYmb3MoZSxMaSkpLHJzKGUsciksMT09PXQmJjA9PT1faSYmISgxJm4ubW9kZSkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSkpfWZ1bmN0aW9uIHJzKGUsbil7dmFyIHQ9ZS5jYWxsYmFja05vZGU7IWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT1lLnBlbmRpbmdMYW5lczswPGE7KXt2YXIgdT0zMS11bihhKSxvPTE8PHUsaT1sW3VdOy0xPT09aT9vJnQmJiEobyZyKXx8KGxbdV09bW4obyxuKSk6aTw9biYmKGUuZXhwaXJlZExhbmVzfD1vKSxhJj1+b319KGUsbik7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpbnVsbCE9PXQmJktlKHQpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihuPXImLXIsZS5jYWxsYmFja1ByaW9yaXR5IT09bil7aWYobnVsbCE9dCYmS2UodCksMT09PW4pMD09PWUudGFnP2Z1bmN0aW9uKGUpe1ZsPSEwLEJsKGUpfShpcy5iaW5kKG51bGwsZSkpOkJsKGlzLmJpbmQobnVsbCxlKSksdWwoKGZ1bmN0aW9uKCl7ISg2Jl9pKSYmV2woKX0pKSx0PW51bGw7ZWxzZXtzd2l0Y2god24ocikpe2Nhc2UgMTp0PUplO2JyZWFrO2Nhc2UgNDp0PWVuO2JyZWFrO2Nhc2UgMTY6ZGVmYXVsdDp0PW5uO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnQ9cm59dD1Qcyh0LGxzLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PW4sZS5jYWxsYmFja05vZGU9dH19ZnVuY3Rpb24gbHMoZSxuKXtpZihaaT0tMSxKaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTt2YXIgdD1lLmNhbGxiYWNrTm9kZTtpZihTcygpJiZlLmNhbGxiYWNrTm9kZSE9PXQpcmV0dXJuIG51bGw7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpcmV0dXJuIG51bGw7aWYoMzAmcnx8ciZlLmV4cGlyZWRMYW5lc3x8biluPWdzKGUscik7ZWxzZXtuPXI7dmFyIGw9X2k7X2l8PTI7dmFyIHU9bXMoKQo7Zm9yKFBpPT09ZSYmTGk9PT1ufHwoSGk9bnVsbCxXaT1HZSgpKzUwMCxkcyhlLG4pKTs7KXRyeXt5cygpO2JyZWFrfWNhdGNoKG4pe3BzKGUsbil9d2EoKSxDaS5jdXJyZW50PXUsX2k9bCxudWxsIT09VGk/bj0wOihQaT1udWxsLExpPTAsbj1SaSl9aWYoMCE9PW4pe2lmKDI9PT1uJiYoMCE9PShsPWhuKGUpKSYmKHI9bCxuPWFzKGUsbCkpKSwxPT09bil0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7aWYoNj09PW4pb3MoZSxyKTtlbHNle2lmKGw9ZS5jdXJyZW50LmFsdGVybmF0ZSwhKDMwJnJ8fGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1lOzspe2lmKDE2Mzg0Jm4uZmxhZ3Mpe3ZhciB0PW4udXBkYXRlUXVldWU7aWYobnVsbCE9PXQmJm51bGwhPT0odD10LnN0b3JlcykpZm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBsPXRbcl0sYT1sLmdldFNuYXBzaG90O2w9bC52YWx1ZTt0cnl7aWYoIW9yKGEoKSxsKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX19fWlmKHQ9bi5jaGlsZCwxNjM4NCZuLnN1YnRyZWVGbGFncyYmbnVsbCE9PXQpdC5yZXR1cm49bixuPXQ7ZWxzZXtpZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4hMDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fXJldHVybiEwfShsKXx8KG49Z3MoZSxyKSwyPT09biYmKHU9aG4oZSksMCE9PXUmJihyPXUsbj1hcyhlLHUpKSksMSE9PW4pKSl0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7c3dpdGNoKGUuZmluaXNoZWRXb3JrPWwsZS5maW5pc2hlZExhbmVzPXIsbil7Y2FzZSAwOmNhc2UgMTp0aHJvdyBFcnJvcihhKDM0NSkpO2Nhc2UgMjpjYXNlIDU6d3MoZSxBaSxIaSk7YnJlYWs7Y2FzZSAzOmlmKG9zKGUsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChuPUJpKzUwMC1HZSgpKSl7aWYoMCE9PXBuKGUsMCkpYnJlYWs7aWYoKChsPWUuc3VzcGVuZGVkTGFuZXMpJnIpIT09cil7ZXMoKSxlLnBpbmdlZExhbmVzfD1lLnN1c3BlbmRlZExhbmVzJmw7YnJlYWt9ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxuKTticmVha313cyhlLEFpLEhpKTticmVhaztjYXNlIDQ6aWYob3MoZSxyKSwoNDE5NDI0MCZyKT09PXIpYnJlYWs7Zm9yKG49ZS5ldmVudFRpbWVzLGw9LTE7MDxyOyl7dmFyIG89MzEtdW4ocik7dT0xPDxvLChvPW5bb10pPmwmJihsPW8pLHImPX51fWlmKHI9bCwxMDwocj0oMTIwPihyPUdlKCktcik/MTIwOjQ4MD5yPzQ4MDoxMDgwPnI/MTA4MDoxOTIwPnI/MTkyMDozZTM+cj8zZTM6NDMyMD5yPzQzMjA6MTk2MCpFaShyLzE5NjApKS1yKSl7ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxyKTticmVha313cyhlLEFpLEhpKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzI5KSl9fX1yZXR1cm4gcnMoZSxHZSgpKSxlLmNhbGxiYWNrTm9kZT09PXQ/bHMuYmluZChudWxsLGUpOm51bGx9ZnVuY3Rpb24gYXMoZSxuKXt2YXIgdD1WaTtyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoZHMoZSxuKS5mbGFnc3w9MjU2KSwyIT09KGU9Z3MoZSxuKSkmJihuPUFpLEFpPXQsbnVsbCE9PW4mJnVzKG4pKSxlfWZ1bmN0aW9uIHVzKGUpe251bGw9PT1BaT9BaT1lOkFpLnB1c2guYXBwbHkoQWksZSl9ZnVuY3Rpb24gb3MoZSxuKXtmb3IobiY9flVpLG4mPX5PaSxlLnN1c3BlbmRlZExhbmVzfD1uLGUucGluZ2VkTGFuZXMmPX5uLGU9ZS5leHBpcmF0aW9uVGltZXM7MDxuOyl7dmFyIHQ9MzEtdW4obikscj0xPDx0O2VbdF09LTEsbiY9fnJ9fWZ1bmN0aW9uIGlzKGUpe2lmKDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTtTcygpO3ZhciBuPXBuKGUsMCk7aWYoISgxJm4pKXJldHVybiBycyhlLEdlKCkpLG51bGw7dmFyIHQ9Z3MoZSxuKTtpZigwIT09ZS50YWcmJjI9PT10KXt2YXIgcj1obihlKTswIT09ciYmKG49cix0PWFzKGUscikpfWlmKDE9PT10KXRocm93IHQ9RGksZHMoZSwwKSxvcyhlLG4pLHJzKGUsR2UoKSksdDtpZig2PT09dCl0aHJvdyBFcnJvcihhKDM0NSkpO3JldHVybiBlLmZpbmlzaGVkV29yaz1lLmN1cnJlbnQuYWx0ZXJuYXRlLGUuZmluaXNoZWRMYW5lcz1uLHdzKGUsQWksSGkpLHJzKGUsR2UoKSksbnVsbH1mdW5jdGlvbiBzcyhlLG4pe3ZhciB0PV9pO19pfD0xO3RyeXtyZXR1cm4gZShuKX1maW5hbGx5ezA9PT0oX2k9dCkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSl9fWZ1bmN0aW9uIGNzKGUpe251bGwhPT1LaSYmMD09PUtpLnRhZyYmISg2Jl9pKSYmU3MoKTt2YXIgbj1faTtfaXw9MTt2YXIgdD1OaS50cmFuc2l0aW9uLHI9a247dHJ5e2lmKE5pLnRyYW5zaXRpb249bnVsbCxrbj0xLGUpcmV0dXJuIGUoKX1maW5hbGx5e2tuPXIsTmkudHJhbnNpdGlvbj10LCEoNiYoX2k9bikpJiZXbCgpfX1mdW5jdGlvbiBmcygpe01pPUZpLmN1cnJlbnQsQ2woRmkpfWZ1bmN0aW9uIGRzKGUsbil7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgdD1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT10JiYoZS50aW1lb3V0SGFuZGxlPS0xLGxsKHQpKSxudWxsIT09VGkpZm9yKHQ9VGkucmV0dXJuO251bGwhPT10Oyl7dmFyIHI9dDtzd2l0Y2gobmEociksci50YWcpe2Nhc2UgMTpudWxsIT0ocj1yLnR5cGUuY2hpbGRDb250ZXh0VHlwZXMpJiZGbCgpO2JyZWFrO2Nhc2UgMzpsdSgpLENsKFBsKSxDbChfbCksY3UoKTticmVhaztjYXNlIDU6dXUocik7YnJlYWs7Y2FzZSA0Omx1KCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OkNsKG91KTticmVhaztjYXNlIDEwOlNhKHIudHlwZS5fY29udGV4dCk7YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOmZzKCl9dD10LnJldHVybn1pZihQaT1lLFRpPWU9RnMoZS5jdXJyZW50LG51bGwpLExpPU1pPW4sUmk9MCxEaT1udWxsLFVpPU9pPUlpPTAsQWk9Vmk9bnVsbCxudWxsIT09emEpe2ZvcihuPTA7bjx6YS5sZW5ndGg7bisrKWlmKG51bGwhPT0ocj0odD16YVtuXSkuaW50ZXJsZWF2ZWQpKXt0LmludGVybGVhdmVkPW51bGwKO3ZhciBsPXIubmV4dCxhPXQucGVuZGluZztpZihudWxsIT09YSl7dmFyIHU9YS5uZXh0O2EubmV4dD1sLHIubmV4dD11fXQucGVuZGluZz1yfXphPW51bGx9cmV0dXJuIGV9ZnVuY3Rpb24gcHMoZSxuKXtmb3IoOzspe3ZhciB0PVRpO3RyeXtpZih3YSgpLGZ1LmN1cnJlbnQ9YW8sdnUpe2Zvcih2YXIgcj1tdS5tZW1vaXplZFN0YXRlO251bGwhPT1yOyl7dmFyIGw9ci5xdWV1ZTtudWxsIT09bCYmKGwucGVuZGluZz1udWxsKSxyPXIubmV4dH12dT0hMX1pZihwdT0wLGd1PWh1PW11PW51bGwseXU9ITEsYnU9MCx6aS5jdXJyZW50PW51bGwsbnVsbD09PXR8fG51bGw9PT10LnJldHVybil7Umk9MSxEaT1uLFRpPW51bGw7YnJlYWt9ZTp7dmFyIHU9ZSxvPXQucmV0dXJuLGk9dCxzPW47aWYobj1MaSxpLmZsYWdzfD0zMjc2OCxudWxsIT09cyYmIm9iamVjdCI9PXR5cGVvZiBzJiYiZnVuY3Rpb24iPT10eXBlb2Ygcy50aGVuKXt2YXIgYz1zLGY9aSxkPWYudGFnO2lmKCEoMSZmLm1vZGV8fDAhPT1kJiYxMSE9PWQmJjE1IT09ZCkpe3ZhciBwPWYuYWx0ZXJuYXRlO3A/KGYudXBkYXRlUXVldWU9cC51cGRhdGVRdWV1ZSxmLm1lbW9pemVkU3RhdGU9cC5tZW1vaXplZFN0YXRlLGYubGFuZXM9cC5sYW5lcyk6KGYudXBkYXRlUXVldWU9bnVsbCxmLm1lbW9pemVkU3RhdGU9bnVsbCl9dmFyIG09dm8obyk7aWYobnVsbCE9PW0pe20uZmxhZ3MmPS0yNTcseW8obSxvLGksMCxuKSwxJm0ubW9kZSYmZ28odSxjLG4pLHM9Yzt2YXIgaD0obj1tKS51cGRhdGVRdWV1ZTtpZihudWxsPT09aCl7dmFyIGc9bmV3IFNldDtnLmFkZChzKSxuLnVwZGF0ZVF1ZXVlPWd9ZWxzZSBoLmFkZChzKTticmVhayBlfWlmKCEoMSZuKSl7Z28odSxjLG4pLGhzKCk7YnJlYWsgZX1zPUVycm9yKGEoNDI2KSl9ZWxzZSBpZihsYSYmMSZpLm1vZGUpe3ZhciB2PXZvKG8pO2lmKG51bGwhPT12KXshKDY1NTM2JnYuZmxhZ3MpJiYodi5mbGFnc3w9MjU2KSx5byh2LG8saSwwLG4pLG1hKHNvKHMsaSkpO2JyZWFrIGV9fXU9cz1zbyhzLGkpLDQhPT1SaSYmKFJpPTIpLG51bGw9PT1WaT9WaT1bdV06VmkucHVzaCh1KSx1PW87ZG97c3dpdGNoKHUudGFnKXtjYXNlIDM6dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LG1vKDAscyxuKSk7YnJlYWsgZTtjYXNlIDE6aT1zO3ZhciB5PXUudHlwZSxiPXUuc3RhdGVOb2RlO2lmKCEoMTI4JnUuZmxhZ3N8fCJmdW5jdGlvbiIhPXR5cGVvZiB5LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvciYmKG51bGw9PT1ifHwiZnVuY3Rpb24iIT10eXBlb2YgYi5jb21wb25lbnREaWRDYXRjaHx8bnVsbCE9PSRpJiYkaS5oYXMoYikpKSl7dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LGhvKHUsaSxuKSk7YnJlYWsgZX19dT11LnJldHVybn13aGlsZShudWxsIT09dSl9a3ModCl9Y2F0Y2goZSl7bj1lLFRpPT09dCYmbnVsbCE9PXQmJihUaT10PXQucmV0dXJuKTtjb250aW51ZX1icmVha319ZnVuY3Rpb24gbXMoKXt2YXIgZT1DaS5jdXJyZW50O3JldHVybiBDaS5jdXJyZW50PWFvLG51bGw9PT1lP2FvOmV9ZnVuY3Rpb24gaHMoKXswIT09UmkmJjMhPT1SaSYmMiE9PVJpfHwoUmk9NCksbnVsbD09PVBpfHwhKDI2ODQzNTQ1NSZJaSkmJiEoMjY4NDM1NDU1Jk9pKXx8b3MoUGksTGkpfWZ1bmN0aW9uIGdzKGUsbil7dmFyIHQ9X2k7X2l8PTI7dmFyIHI9bXMoKTtmb3IoUGk9PT1lJiZMaT09PW58fChIaT1udWxsLGRzKGUsbikpOzspdHJ5e3ZzKCk7YnJlYWt9Y2F0Y2gobil7cHMoZSxuKX1pZih3YSgpLF9pPXQsQ2kuY3VycmVudD1yLG51bGwhPT1UaSl0aHJvdyBFcnJvcihhKDI2MSkpO3JldHVybiBQaT1udWxsLExpPTAsUml9ZnVuY3Rpb24gdnMoKXtmb3IoO251bGwhPT1UaTspYnMoVGkpfWZ1bmN0aW9uIHlzKCl7Zm9yKDtudWxsIT09VGkmJiFZZSgpOylicyhUaSl9ZnVuY3Rpb24gYnMoZSl7dmFyIG49eGkoZS5hbHRlcm5hdGUsZSxNaSk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT1uP2tzKGUpOlRpPW4semkuY3VycmVudD1udWxsfWZ1bmN0aW9uIGtzKGUpe3ZhciBuPWU7ZG97dmFyIHQ9bi5hbHRlcm5hdGU7aWYoZT1uLnJldHVybiwzMjc2OCZuLmZsYWdzKXtpZihudWxsIT09KHQ9S28odCxuKSkpcmV0dXJuIHQuZmxhZ3MmPTMyNzY3LHZvaWQoVGk9dCk7aWYobnVsbD09PWUpcmV0dXJuIFJpPTYsdm9pZChUaT1udWxsKTtlLmZsYWdzfD0zMjc2OCxlLnN1YnRyZWVGbGFncz0wLGUuZGVsZXRpb25zPW51bGx9ZWxzZSBpZihudWxsIT09KHQ9cW8odCxuLE1pKSkpcmV0dXJuIHZvaWQoVGk9dCk7aWYobnVsbCE9PShuPW4uc2libGluZykpcmV0dXJuIHZvaWQoVGk9bik7VGk9bj1lfXdoaWxlKG51bGwhPT1uKTswPT09UmkmJihSaT01KX1mdW5jdGlvbiB3cyhlLG4sdCl7dmFyIHI9a24sbD1OaS50cmFuc2l0aW9uO3RyeXtOaS50cmFuc2l0aW9uPW51bGwsa249MSxmdW5jdGlvbihlLG4sdCxyKXtkb3tTcygpfXdoaWxlKG51bGwhPT1LaSk7aWYoNiZfaSl0aHJvdyBFcnJvcihhKDMyNykpO3Q9ZS5maW5pc2hlZFdvcms7dmFyIGw9ZS5maW5pc2hlZExhbmVzO2lmKG51bGw9PT10KXJldHVybiBudWxsO2lmKGUuZmluaXNoZWRXb3JrPW51bGwsZS5maW5pc2hlZExhbmVzPTAsdD09PWUuY3VycmVudCl0aHJvdyBFcnJvcihhKDE3NykpO2UuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7dmFyIHU9dC5sYW5lc3x0LmNoaWxkTGFuZXM7aWYoZnVuY3Rpb24oZSxuKXt2YXIgdD1lLnBlbmRpbmdMYW5lcyZ+bjtlLnBlbmRpbmdMYW5lcz1uLGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPW4sZS5tdXRhYmxlUmVhZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sbj1lLmVudGFuZ2xlbWVudHM7dmFyIHI9ZS5ldmVudFRpbWVzO2ZvcihlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBsPTMxLXVuKHQpLGE9MTw8bDtuW2xdPTAscltsXT0tMSxlW2xdPS0xLHQmPX5hfX0oZSx1KSxlPT09UGkmJihUaT1QaT1udWxsLExpPTApLAohKDIwNjQmdC5zdWJ0cmVlRmxhZ3MpJiYhKDIwNjQmdC5mbGFncyl8fHFpfHwocWk9ITAsUHMobm4sKGZ1bmN0aW9uKCl7cmV0dXJuIFNzKCksbnVsbH0pKSksdT0hISgxNTk5MCZ0LmZsYWdzKSwhISgxNTk5MCZ0LnN1YnRyZWVGbGFncyl8fHUpe3U9TmkudHJhbnNpdGlvbixOaS50cmFuc2l0aW9uPW51bGw7dmFyIG89a247a249MTt2YXIgaT1faTtfaXw9NCx6aS5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSxuKXtpZihlbD1qbixwcihlPWRyKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgdD17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTp7dmFyIHI9KHQ9KHQ9ZS5vd25lckRvY3VtZW50KSYmdC5kZWZhdWx0Vmlld3x8d2luZG93KS5nZXRTZWxlY3Rpb24mJnQuZ2V0U2VsZWN0aW9uKCk7aWYociYmMCE9PXIucmFuZ2VDb3VudCl7dD1yLmFuY2hvck5vZGU7dmFyIGw9ci5hbmNob3JPZmZzZXQsdT1yLmZvY3VzTm9kZTtyPXIuZm9jdXNPZmZzZXQ7dHJ5e3Qubm9kZVR5cGUsdS5ub2RlVHlwZX1jYXRjaChlKXt0PW51bGw7YnJlYWsgZX12YXIgbz0wLGk9LTEscz0tMSxjPTAsZj0wLGQ9ZSxwPW51bGw7bjpmb3IoOzspe2Zvcih2YXIgbTtkIT09dHx8MCE9PWwmJjMhPT1kLm5vZGVUeXBlfHwoaT1vK2wpLGQhPT11fHwwIT09ciYmMyE9PWQubm9kZVR5cGV8fChzPW8rciksMz09PWQubm9kZVR5cGUmJihvKz1kLm5vZGVWYWx1ZS5sZW5ndGgpLG51bGwhPT0obT1kLmZpcnN0Q2hpbGQpOylwPWQsZD1tO2Zvcig7Oyl7aWYoZD09PWUpYnJlYWsgbjtpZihwPT09dCYmKytjPT09bCYmKGk9bykscD09PXUmJisrZj09PXImJihzPW8pLG51bGwhPT0obT1kLm5leHRTaWJsaW5nKSlicmVhaztwPShkPXApLnBhcmVudE5vZGV9ZD1tfXQ9LTE9PT1pfHwtMT09PXM/bnVsbDp7c3RhcnQ6aSxlbmQ6c319ZWxzZSB0PW51bGx9dD10fHx7c3RhcnQ6MCxlbmQ6MH19ZWxzZSB0PW51bGw7Zm9yKG5sPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOnR9LGpuPSExLFpvPW47bnVsbCE9PVpvOylpZihlPShuPVpvKS5jaGlsZCwxMDI4Jm4uc3VidHJlZUZsYWdzJiZudWxsIT09ZSllLnJldHVybj1uLFpvPWU7ZWxzZSBmb3IoO251bGwhPT1abzspe249Wm87dHJ5e3ZhciBoPW4uYWx0ZXJuYXRlO2lmKDEwMjQmbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztjYXNlIDE6aWYobnVsbCE9PWgpe3ZhciBnPWgubWVtb2l6ZWRQcm9wcyx2PWgubWVtb2l6ZWRTdGF0ZSx5PW4uc3RhdGVOb2RlLGI9eS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZShuLmVsZW1lbnRUeXBlPT09bi50eXBlP2c6Z2Eobi50eXBlLGcpLHYpO3kuX19yZWFjdEludGVybmFsU25hcHNob3RCZWZvcmVVcGRhdGU9Yn1icmVhaztjYXNlIDM6dmFyIGs9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09ay5ub2RlVHlwZT9rLnRleHRDb250ZW50PSIiOjk9PT1rLm5vZGVUeXBlJiZrLmRvY3VtZW50RWxlbWVudCYmay5yZW1vdmVDaGlsZChrLmRvY3VtZW50RWxlbWVudCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihhKDE2MykpfX1jYXRjaChlKXtFcyhuLG4ucmV0dXJuLGUpfWlmKG51bGwhPT0oZT1uLnNpYmxpbmcpKXtlLnJldHVybj1uLnJldHVybixabz1lO2JyZWFrfVpvPW4ucmV0dXJufWg9bmksbmk9ITF9KGUsdCksZ2kodCxlKSxtcihubCksam49ISFlbCxubD1lbD1udWxsLGUuY3VycmVudD10LHlpKHQsZSxsKSxYZSgpLF9pPWksa249byxOaS50cmFuc2l0aW9uPXV9ZWxzZSBlLmN1cnJlbnQ9dDtpZihxaSYmKHFpPSExLEtpPWUsWWk9bCksdT1lLnBlbmRpbmdMYW5lcywwPT09dSYmKCRpPW51bGwpLGZ1bmN0aW9uKGUpe2lmKGFuJiYiZnVuY3Rpb24iPT10eXBlb2YgYW4ub25Db21taXRGaWJlclJvb3QpdHJ5e2FuLm9uQ29tbWl0RmliZXJSb290KGxuLGUsdm9pZCAwLCEoMTI4Jn5lLmN1cnJlbnQuZmxhZ3MpKX1jYXRjaChlKXt9fSh0LnN0YXRlTm9kZSkscnMoZSxHZSgpKSxudWxsIT09bilmb3Iocj1lLm9uUmVjb3ZlcmFibGVFcnJvcix0PTA7dDxuLmxlbmd0aDt0KyspbD1uW3RdLHIobC52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bC5zdGFjayxkaWdlc3Q6bC5kaWdlc3R9KTtpZihRaSl0aHJvdyBRaT0hMSxlPWppLGppPW51bGwsZTshISgxJllpKSYmMCE9PWUudGFnJiZTcygpLHU9ZS5wZW5kaW5nTGFuZXMsMSZ1P2U9PT1HaT9YaSsrOihYaT0wLEdpPWUpOlhpPTAsV2woKX0oZSxuLHQscil9ZmluYWxseXtOaS50cmFuc2l0aW9uPWwsa249cn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBTcygpe2lmKG51bGwhPT1LaSl7dmFyIGU9d24oWWkpLG49TmkudHJhbnNpdGlvbix0PWtuO3RyeXtpZihOaS50cmFuc2l0aW9uPW51bGwsa249MTY+ZT8xNjplLG51bGw9PT1LaSl2YXIgcj0hMTtlbHNle2lmKGU9S2ksS2k9bnVsbCxZaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMzEpKTt2YXIgbD1faTtmb3IoX2l8PTQsWm89ZS5jdXJyZW50O251bGwhPT1abzspe3ZhciB1PVpvLG89dS5jaGlsZDtpZigxNiZaby5mbGFncyl7dmFyIGk9dS5kZWxldGlvbnM7aWYobnVsbCE9PWkpe2Zvcih2YXIgcz0wO3M8aS5sZW5ndGg7cysrKXt2YXIgYz1pW3NdO2Zvcihabz1jO251bGwhPT1abzspe3ZhciBmPVpvO3N3aXRjaChmLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTp0aSg4LGYsdSl9dmFyIGQ9Zi5jaGlsZDtpZihudWxsIT09ZClkLnJldHVybj1mLFpvPWQ7ZWxzZSBmb3IoO251bGwhPT1abzspe3ZhciBwPShmPVpvKS5zaWJsaW5nLG09Zi5yZXR1cm47aWYoYWkoZiksZj09PWMpe1pvPW51bGw7YnJlYWt9aWYobnVsbCE9PXApe3AucmV0dXJuPW0sWm89cDticmVha31abz1tfX19dmFyIGg9dS5hbHRlcm5hdGU7aWYobnVsbCE9PWgpe3ZhciBnPWguY2hpbGQ7aWYobnVsbCE9PWcpe2guY2hpbGQ9bnVsbDtkb3t2YXIgdj1nLnNpYmxpbmc7Zy5zaWJsaW5nPW51bGwsZz12fXdoaWxlKG51bGwhPT1nKX19Wm89dX19aWYoMjA2NCZ1LnN1YnRyZWVGbGFncyYmbnVsbCE9PW8pby5yZXR1cm49dSwKWm89bztlbHNlIGU6Zm9yKDtudWxsIT09Wm87KXtpZigyMDQ4Jih1PVpvKS5mbGFncylzd2l0Y2godS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dGkoOSx1LHUucmV0dXJuKX12YXIgeT11LnNpYmxpbmc7aWYobnVsbCE9PXkpe3kucmV0dXJuPXUucmV0dXJuLFpvPXk7YnJlYWsgZX1abz11LnJldHVybn19dmFyIGI9ZS5jdXJyZW50O2Zvcihabz1iO251bGwhPT1abzspe3ZhciBrPShvPVpvKS5jaGlsZDtpZigyMDY0Jm8uc3VidHJlZUZsYWdzJiZudWxsIT09aylrLnJldHVybj1vLFpvPWs7ZWxzZSBlOmZvcihvPWI7bnVsbCE9PVpvOyl7aWYoMjA0OCYoaT1abykuZmxhZ3MpdHJ5e3N3aXRjaChpLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpyaSg5LGkpfX1jYXRjaChlKXtFcyhpLGkucmV0dXJuLGUpfWlmKGk9PT1vKXtabz1udWxsO2JyZWFrIGV9dmFyIHc9aS5zaWJsaW5nO2lmKG51bGwhPT13KXt3LnJldHVybj1pLnJldHVybixabz13O2JyZWFrIGV9Wm89aS5yZXR1cm59fWlmKF9pPWwsV2woKSxhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7YW4ub25Qb3N0Q29tbWl0RmliZXJSb290KGxuLGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7a249dCxOaS50cmFuc2l0aW9uPW59fXJldHVybiExfWZ1bmN0aW9uIHhzKGUsbix0KXtlPVJhKGUsbj1tbygwLG49c28odCxuKSwxKSwxKSxuPWVzKCksbnVsbCE9PWUmJih5bihlLDEsbikscnMoZSxuKSl9ZnVuY3Rpb24gRXMoZSxuLHQpe2lmKDM9PT1lLnRhZyl4cyhlLGUsdCk7ZWxzZSBmb3IoO251bGwhPT1uOyl7aWYoMz09PW4udGFnKXt4cyhuLGUsdCk7YnJlYWt9aWYoMT09PW4udGFnKXt2YXIgcj1uLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygbi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09JGl8fCEkaS5oYXMocikpKXtuPVJhKG4sZT1obyhuLGU9c28odCxlKSwxKSwxKSxlPWVzKCksbnVsbCE9PW4mJih5bihuLDEsZSkscnMobixlKSk7YnJlYWt9fW49bi5yZXR1cm59fWZ1bmN0aW9uIENzKGUsbix0KXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUobiksbj1lcygpLGUucGluZ2VkTGFuZXN8PWUuc3VzcGVuZGVkTGFuZXMmdCxQaT09PWUmJihMaSZ0KT09PXQmJig0PT09Uml8fDM9PT1SaSYmKDEzMDAyMzQyNCZMaSk9PT1MaSYmNTAwPkdlKCktQmk/ZHMoZSwwKTpVaXw9dCkscnMoZSxuKX1mdW5jdGlvbiB6cyhlLG4pezA9PT1uJiYoMSZlLm1vZGU/KG49Zm4sISgxMzAwMjM0MjQmKGZuPDw9MSkpJiYoZm49NDE5NDMwNCkpOm49MSk7dmFyIHQ9ZXMoKTtudWxsIT09KGU9UGEoZSxuKSkmJih5bihlLG4sdCkscnMoZSx0KSl9ZnVuY3Rpb24gTnMoZSl7dmFyIG49ZS5tZW1vaXplZFN0YXRlLHQ9MDtudWxsIT09biYmKHQ9bi5yZXRyeUxhbmUpLHpzKGUsdCl9ZnVuY3Rpb24gX3MoZSxuKXt2YXIgdD0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxsPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09bCYmKHQ9bC5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKG4pLHpzKGUsdCl9ZnVuY3Rpb24gUHMoZSxuKXtyZXR1cm4gcWUoZSxuKX1mdW5jdGlvbiBUcyhlLG4sdCxyKXt0aGlzLnRhZz1lLHRoaXMua2V5PXQsdGhpcy5zaWJsaW5nPXRoaXMuY2hpbGQ9dGhpcy5yZXR1cm49dGhpcy5zdGF0ZU5vZGU9dGhpcy50eXBlPXRoaXMuZWxlbWVudFR5cGU9bnVsbCx0aGlzLmluZGV4PTAsdGhpcy5yZWY9bnVsbCx0aGlzLnBlbmRpbmdQcm9wcz1uLHRoaXMuZGVwZW5kZW5jaWVzPXRoaXMubWVtb2l6ZWRTdGF0ZT10aGlzLnVwZGF0ZVF1ZXVlPXRoaXMubWVtb2l6ZWRQcm9wcz1udWxsLHRoaXMubW9kZT1yLHRoaXMuc3VidHJlZUZsYWdzPXRoaXMuZmxhZ3M9MCx0aGlzLmRlbGV0aW9ucz1udWxsLHRoaXMuY2hpbGRMYW5lcz10aGlzLmxhbmVzPTAsdGhpcy5hbHRlcm5hdGU9bnVsbH1mdW5jdGlvbiBMcyhlLG4sdCxyKXtyZXR1cm4gbmV3IFRzKGUsbix0LHIpfWZ1bmN0aW9uIE1zKGUpe3JldHVybiEoIShlPWUucHJvdG90eXBlKXx8IWUuaXNSZWFjdENvbXBvbmVudCl9ZnVuY3Rpb24gRnMoZSxuKXt2YXIgdD1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PXQ/KCh0PUxzKGUudGFnLG4sZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSx0LnR5cGU9ZS50eXBlLHQuc3RhdGVOb2RlPWUuc3RhdGVOb2RlLHQuYWx0ZXJuYXRlPWUsZS5hbHRlcm5hdGU9dCk6KHQucGVuZGluZ1Byb3BzPW4sdC50eXBlPWUudHlwZSx0LmZsYWdzPTAsdC5zdWJ0cmVlRmxhZ3M9MCx0LmRlbGV0aW9ucz1udWxsKSx0LmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3MsdC5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyx0LmxhbmVzPWUubGFuZXMsdC5jaGlsZD1lLmNoaWxkLHQubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsdC5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSx0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbj1lLmRlcGVuZGVuY2llcyx0LmRlcGVuZGVuY2llcz1udWxsPT09bj9udWxsOntsYW5lczpuLmxhbmVzLGZpcnN0Q29udGV4dDpuLmZpcnN0Q29udGV4dH0sdC5zaWJsaW5nPWUuc2libGluZyx0LmluZGV4PWUuaW5kZXgsdC5yZWY9ZS5yZWYsdH1mdW5jdGlvbiBScyhlLG4sdCxyLGwsdSl7dmFyIG89MjtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpTXMoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89NTtlbHNlIGU6c3dpdGNoKGUpe2Nhc2UgeDpyZXR1cm4gRHModC5jaGlsZHJlbixsLHUsbik7Y2FzZSBFOm89OCxsfD04O2JyZWFrO2Nhc2UgQzpyZXR1cm4oZT1McygxMix0LG4sMnxsKSkuZWxlbWVudFR5cGU9QyxlLmxhbmVzPXUsZTtjYXNlIFA6cmV0dXJuKGU9THMoMTMsdCxuLGwpKS5lbGVtZW50VHlwZT1QLGUubGFuZXM9dSxlO2Nhc2UgVDoKcmV0dXJuKGU9THMoMTksdCxuLGwpKS5lbGVtZW50VHlwZT1ULGUubGFuZXM9dSxlO2Nhc2UgRjpyZXR1cm4gSXModCxsLHUsbik7ZGVmYXVsdDppZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXN3aXRjaChlLiQkdHlwZW9mKXtjYXNlIHo6bz0xMDticmVhayBlO2Nhc2UgTjpvPTk7YnJlYWsgZTtjYXNlIF86bz0xMTticmVhayBlO2Nhc2UgTDpvPTE0O2JyZWFrIGU7Y2FzZSBNOm89MTYscj1udWxsO2JyZWFrIGV9dGhyb3cgRXJyb3IoYSgxMzAsbnVsbD09ZT9lOnR5cGVvZiBlLCIiKSl9cmV0dXJuKG49THMobyx0LG4sbCkpLmVsZW1lbnRUeXBlPWUsbi50eXBlPXIsbi5sYW5lcz11LG59ZnVuY3Rpb24gRHMoZSxuLHQscil7cmV0dXJuKGU9THMoNyxlLHIsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBJcyhlLG4sdCxyKXtyZXR1cm4oZT1McygyMixlLHIsbikpLmVsZW1lbnRUeXBlPUYsZS5sYW5lcz10LGUuc3RhdGVOb2RlPXtpc0hpZGRlbjohMX0sZX1mdW5jdGlvbiBPcyhlLG4sdCl7cmV0dXJuKGU9THMoNixlLG51bGwsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBVcyhlLG4sdCl7cmV0dXJuKG49THMoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LG4pKS5sYW5lcz10LG4uc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSxufWZ1bmN0aW9uIFZzKGUsbix0LHIsbCl7dGhpcy50YWc9bix0aGlzLmNvbnRhaW5lckluZm89ZSx0aGlzLmZpbmlzaGVkV29yaz10aGlzLnBpbmdDYWNoZT10aGlzLmN1cnJlbnQ9dGhpcy5wZW5kaW5nQ2hpbGRyZW49bnVsbCx0aGlzLnRpbWVvdXRIYW5kbGU9LTEsdGhpcy5jYWxsYmFja05vZGU9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9bnVsbCx0aGlzLmNhbGxiYWNrUHJpb3JpdHk9MCx0aGlzLmV2ZW50VGltZXM9dm4oMCksdGhpcy5leHBpcmF0aW9uVGltZXM9dm4oLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5maW5pc2hlZExhbmVzPXRoaXMubXV0YWJsZVJlYWRMYW5lcz10aGlzLmV4cGlyZWRMYW5lcz10aGlzLnBpbmdlZExhbmVzPXRoaXMuc3VzcGVuZGVkTGFuZXM9dGhpcy5wZW5kaW5nTGFuZXM9MCx0aGlzLmVudGFuZ2xlbWVudHM9dm4oMCksdGhpcy5pZGVudGlmaWVyUHJlZml4PXIsdGhpcy5vblJlY292ZXJhYmxlRXJyb3I9bCx0aGlzLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGE9bnVsbH1mdW5jdGlvbiBBcyhlLG4sdCxyLGwsYSx1LG8saSl7cmV0dXJuIGU9bmV3IFZzKGUsbix0LG8saSksMT09PW4/KG49MSwhMD09PWEmJihufD04KSk6bj0wLGE9THMoMyxudWxsLG51bGwsbiksZS5jdXJyZW50PWEsYS5zdGF0ZU5vZGU9ZSxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6dCxjYWNoZTpudWxsLHRyYW5zaXRpb25zOm51bGwscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpudWxsfSxMYShhKSxlfWZ1bmN0aW9uIEJzKGUpe2lmKCFlKXJldHVybiBObDtlOntpZihXZShlPWUuX3JlYWN0SW50ZXJuYWxzKSE9PWV8fDEhPT1lLnRhZyl0aHJvdyBFcnJvcihhKDE3MCkpO3ZhciBuPWU7ZG97c3dpdGNoKG4udGFnKXtjYXNlIDM6bj1uLnN0YXRlTm9kZS5jb250ZXh0O2JyZWFrIGU7Y2FzZSAxOmlmKE1sKG4udHlwZSkpe249bi5zdGF0ZU5vZGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ7YnJlYWsgZX19bj1uLnJldHVybn13aGlsZShudWxsIT09bik7dGhyb3cgRXJyb3IoYSgxNzEpKX1pZigxPT09ZS50YWcpe3ZhciB0PWUudHlwZTtpZihNbCh0KSlyZXR1cm4gRGwoZSx0LG4pfXJldHVybiBufWZ1bmN0aW9uIFdzKGUsbix0LHIsbCxhLHUsbyxpKXtyZXR1cm4oZT1Bcyh0LHIsITAsZSwwLGEsMCxvLGkpKS5jb250ZXh0PUJzKG51bGwpLHQ9ZS5jdXJyZW50LChhPUZhKHI9ZXMoKSxsPW5zKHQpKSkuY2FsbGJhY2s9bnVsbCE9bj9uOm51bGwsUmEodCxhLGwpLGUuY3VycmVudC5sYW5lcz1sLHluKGUsbCxyKSxycyhlLHIpLGV9ZnVuY3Rpb24gSHMoZSxuLHQscil7dmFyIGw9bi5jdXJyZW50LGE9ZXMoKSx1PW5zKGwpO3JldHVybiB0PUJzKHQpLG51bGw9PT1uLmNvbnRleHQ/bi5jb250ZXh0PXQ6bi5wZW5kaW5nQ29udGV4dD10LChuPUZhKGEsdSkpLnBheWxvYWQ9e2VsZW1lbnQ6ZX0sbnVsbCE9PShyPXZvaWQgMD09PXI/bnVsbDpyKSYmKG4uY2FsbGJhY2s9ciksbnVsbCE9PShlPVJhKGwsbix1KSkmJih0cyhlLGwsdSxhKSxEYShlLGwsdSkpLHV9ZnVuY3Rpb24gUXMoZSl7cmV0dXJuKGU9ZS5jdXJyZW50KS5jaGlsZD8oZS5jaGlsZC50YWcsZS5jaGlsZC5zdGF0ZU5vZGUpOm51bGx9ZnVuY3Rpb24ganMoZSxuKXtpZihudWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7dmFyIHQ9ZS5yZXRyeUxhbmU7ZS5yZXRyeUxhbmU9MCE9PXQmJnQ8bj90Om59fWZ1bmN0aW9uICRzKGUsbil7anMoZSxuKSwoZT1lLmFsdGVybmF0ZSkmJmpzKGUsbil9eGk9ZnVuY3Rpb24oZSxuLHQpe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PW4ucGVuZGluZ1Byb3BzfHxQbC5jdXJyZW50KWtvPSEwO2Vsc2V7aWYoIShlLmxhbmVzJnR8fDEyOCZuLmZsYWdzKSlyZXR1cm4ga289ITEsZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuLnRhZyl7Y2FzZSAzOlRvKG4pLHBhKCk7YnJlYWs7Y2FzZSA1OmF1KG4pO2JyZWFrO2Nhc2UgMTpNbChuLnR5cGUpJiZJbChuKTticmVhaztjYXNlIDQ6cnUobixuLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciByPW4udHlwZS5fY29udGV4dCxsPW4ubWVtb2l6ZWRQcm9wcy52YWx1ZTt6bCh2YSxyLl9jdXJyZW50VmFsdWUpLHIuX2N1cnJlbnRWYWx1ZT1sO2JyZWFrO2Nhc2UgMTM6aWYobnVsbCE9PShyPW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuIG51bGwhPT1yLmRlaHlkcmF0ZWQ/KHpsKG91LDEmb3UuY3VycmVudCksbi5mbGFnc3w9MTI4LG51bGwpOnQmbi5jaGlsZC5jaGlsZExhbmVzP09vKGUsbix0KTooemwob3UsMSZvdS5jdXJyZW50KSwKbnVsbCE9PShlPVFvKGUsbix0KSk/ZS5zaWJsaW5nOm51bGwpO3psKG91LDEmb3UuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihyPSEhKHQmbi5jaGlsZExhbmVzKSwxMjgmZS5mbGFncyl7aWYocilyZXR1cm4gV28oZSxuLHQpO24uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9bi5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLHpsKG91LG91LmN1cnJlbnQpLHIpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBuLmxhbmVzPTAsQ28oZSxuLHQpfXJldHVybiBRbyhlLG4sdCl9KGUsbix0KTtrbz0hISgxMzEwNzImZS5mbGFncyl9ZWxzZSBrbz0hMSxsYSYmMTA0ODU3NiZuLmZsYWdzJiZKbChuLCRsLG4uaW5kZXgpO3N3aXRjaChuLmxhbmVzPTAsbi50YWcpe2Nhc2UgMjp2YXIgcj1uLnR5cGU7SG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzO3ZhciBsPUxsKG4sX2wuY3VycmVudCk7RWEobix0KSxsPXh1KG51bGwsbixyLGUsbCx0KTt2YXIgdT1FdSgpO3JldHVybiBuLmZsYWdzfD0xLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnJlbmRlciYmdm9pZCAwPT09bC4kJHR5cGVvZj8obi50YWc9MSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsTWwocik/KHU9ITAsSWwobikpOnU9ITEsbi5tZW1vaXplZFN0YXRlPW51bGwhPT1sLnN0YXRlJiZ2b2lkIDAhPT1sLnN0YXRlP2wuc3RhdGU6bnVsbCxMYShuKSxsLnVwZGF0ZXI9QmEsbi5zdGF0ZU5vZGU9bCxsLl9yZWFjdEludGVybmFscz1uLGphKG4scixlLHQpLG49UG8obnVsbCxuLHIsITAsdSx0KSk6KG4udGFnPTAsbGEmJnUmJmVhKG4pLHdvKG51bGwsbixsLHQpLG49bi5jaGlsZCksbjtjYXNlIDE2OnI9bi5lbGVtZW50VHlwZTtlOntzd2l0Y2goSG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzLHI9KGw9ci5faW5pdCkoci5fcGF5bG9hZCksbi50eXBlPXIsbD1uLnRhZz1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gTXMoZSk/MTowO2lmKG51bGwhPWUpe2lmKChlPWUuJCR0eXBlb2YpPT09XylyZXR1cm4gMTE7aWYoZT09PUwpcmV0dXJuIDE0fXJldHVybiAyfShyKSxlPWdhKHIsZSksbCl7Y2FzZSAwOm49Tm8obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTpuPV9vKG51bGwsbixyLGUsdCk7YnJlYWsgZTtjYXNlIDExOm49U28obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTQ6bj14byhudWxsLG4scixnYShyLnR5cGUsZSksdCk7YnJlYWsgZX10aHJvdyBFcnJvcihhKDMwNixyLCIiKSl9cmV0dXJuIG47Y2FzZSAwOnJldHVybiByPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLE5vKGUsbixyLGw9bi5lbGVtZW50VHlwZT09PXI/bDpnYShyLGwpLHQpO2Nhc2UgMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxfbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDM6ZTp7aWYoVG8obiksbnVsbD09PWUpdGhyb3cgRXJyb3IoYSgzODcpKTtyPW4ucGVuZGluZ1Byb3BzLGw9KHU9bi5tZW1vaXplZFN0YXRlKS5lbGVtZW50LE1hKGUsbiksT2EobixyLG51bGwsdCk7dmFyIG89bi5tZW1vaXplZFN0YXRlO2lmKHI9by5lbGVtZW50LHUuaXNEZWh5ZHJhdGVkKXtpZih1PXtlbGVtZW50OnIsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOm8uY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpvLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6by50cmFuc2l0aW9uc30sbi51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9dSxuLm1lbW9pemVkU3RhdGU9dSwyNTYmbi5mbGFncyl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjMpKSxuKSk7YnJlYWsgZX1pZihyIT09bCl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjQpKSxuKSk7YnJlYWsgZX1mb3IocmE9c2wobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mby5maXJzdENoaWxkKSx0YT1uLGxhPSEwLGFhPW51bGwsdD1HYShuLG51bGwscix0KSxuLmNoaWxkPXQ7dDspdC5mbGFncz0tMyZ0LmZsYWdzfDQwOTYsdD10LnNpYmxpbmd9ZWxzZXtpZihwYSgpLHI9PT1sKXtuPVFvKGUsbix0KTticmVhayBlfXdvKGUsbixyLHQpfW49bi5jaGlsZH1yZXR1cm4gbjtjYXNlIDU6cmV0dXJuIGF1KG4pLG51bGw9PT1lJiZzYShuKSxyPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLHU9bnVsbCE9PWU/ZS5tZW1vaXplZFByb3BzOm51bGwsbz1sLmNoaWxkcmVuLHRsKHIsbCk/bz1udWxsOm51bGwhPT11JiZ0bChyLHUpJiYobi5mbGFnc3w9MzIpLHpvKGUsbiksd28oZSxuLG8sdCksbi5jaGlsZDtjYXNlIDY6cmV0dXJuIG51bGw9PT1lJiZzYShuKSxudWxsO2Nhc2UgMTM6cmV0dXJuIE9vKGUsbix0KTtjYXNlIDQ6cmV0dXJuIHJ1KG4sbi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscj1uLnBlbmRpbmdQcm9wcyxudWxsPT09ZT9uLmNoaWxkPVhhKG4sbnVsbCxyLHQpOndvKGUsbixyLHQpLG4uY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxTbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDc6cmV0dXJuIHdvKGUsbixuLnBlbmRpbmdQcm9wcyx0KSxuLmNoaWxkO2Nhc2UgODpjYXNlIDEyOnJldHVybiB3byhlLG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sdCksbi5jaGlsZDtjYXNlIDEwOmU6e2lmKHI9bi50eXBlLl9jb250ZXh0LGw9bi5wZW5kaW5nUHJvcHMsdT1uLm1lbW9pemVkUHJvcHMsbz1sLnZhbHVlLHpsKHZhLHIuX2N1cnJlbnRWYWx1ZSksci5fY3VycmVudFZhbHVlPW8sbnVsbCE9PXUpaWYob3IodS52YWx1ZSxvKSl7aWYodS5jaGlsZHJlbj09PWwuY2hpbGRyZW4mJiFQbC5jdXJyZW50KXtuPVFvKGUsbix0KTticmVhayBlfX1lbHNlIGZvcihudWxsIT09KHU9bi5jaGlsZCkmJih1LnJldHVybj1uKTtudWxsIT09dTspe3ZhciBpPXUuZGVwZW5kZW5jaWVzO2lmKG51bGwhPT1pKXtvPXUuY2hpbGQ7Zm9yKHZhciBzPWkuZmlyc3RDb250ZXh0O251bGwhPT1zOyl7aWYocy5jb250ZXh0PT09cil7CmlmKDE9PT11LnRhZyl7KHM9RmEoLTEsdCYtdCkpLnRhZz0yO3ZhciBjPXUudXBkYXRlUXVldWU7aWYobnVsbCE9PWMpe3ZhciBmPShjPWMuc2hhcmVkKS5wZW5kaW5nO251bGw9PT1mP3MubmV4dD1zOihzLm5leHQ9Zi5uZXh0LGYubmV4dD1zKSxjLnBlbmRpbmc9c319dS5sYW5lc3w9dCxudWxsIT09KHM9dS5hbHRlcm5hdGUpJiYocy5sYW5lc3w9dCkseGEodS5yZXR1cm4sdCxuKSxpLmxhbmVzfD10O2JyZWFrfXM9cy5uZXh0fX1lbHNlIGlmKDEwPT09dS50YWcpbz11LnR5cGU9PT1uLnR5cGU/bnVsbDp1LmNoaWxkO2Vsc2UgaWYoMTg9PT11LnRhZyl7aWYobnVsbD09PShvPXUucmV0dXJuKSl0aHJvdyBFcnJvcihhKDM0MSkpO28ubGFuZXN8PXQsbnVsbCE9PShpPW8uYWx0ZXJuYXRlKSYmKGkubGFuZXN8PXQpLHhhKG8sdCxuKSxvPXUuc2libGluZ31lbHNlIG89dS5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj11O2Vsc2UgZm9yKG89dTtudWxsIT09bzspe2lmKG89PT1uKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PSh1PW8uc2libGluZykpe3UucmV0dXJuPW8ucmV0dXJuLG89dTticmVha31vPW8ucmV0dXJufXU9b313byhlLG4sbC5jaGlsZHJlbix0KSxuPW4uY2hpbGR9cmV0dXJuIG47Y2FzZSA5OnJldHVybiBsPW4udHlwZSxyPW4ucGVuZGluZ1Byb3BzLmNoaWxkcmVuLEVhKG4sdCkscj1yKGw9Q2EobCkpLG4uZmxhZ3N8PTEsd28oZSxuLHIsdCksbi5jaGlsZDtjYXNlIDE0OnJldHVybiBsPWdhKHI9bi50eXBlLG4ucGVuZGluZ1Byb3BzKSx4byhlLG4scixsPWdhKHIudHlwZSxsKSx0KTtjYXNlIDE1OnJldHVybiBFbyhlLG4sbi50eXBlLG4ucGVuZGluZ1Byb3BzLHQpO2Nhc2UgMTc6cmV0dXJuIHI9bi50eXBlLGw9bi5wZW5kaW5nUHJvcHMsbD1uLmVsZW1lbnRUeXBlPT09cj9sOmdhKHIsbCksSG8oZSxuKSxuLnRhZz0xLE1sKHIpPyhlPSEwLElsKG4pKTplPSExLEVhKG4sdCksSGEobixyLGwpLGphKG4scixsLHQpLFBvKG51bGwsbixyLCEwLGUsdCk7Y2FzZSAxOTpyZXR1cm4gV28oZSxuLHQpO2Nhc2UgMjI6cmV0dXJuIENvKGUsbix0KX10aHJvdyBFcnJvcihhKDE1NixuLnRhZykpfTt2YXIgcXM9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIEtzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFlzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFhzKGUpe3JldHVybiEoIWV8fDEhPT1lLm5vZGVUeXBlJiY5IT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlKX1mdW5jdGlvbiBHcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSYmKDghPT1lLm5vZGVUeXBlfHwiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICIhPT1lLm5vZGVWYWx1ZSkpfWZ1bmN0aW9uIFpzKCl7fWZ1bmN0aW9uIEpzKGUsbix0LHIsbCl7dmFyIGE9dC5fcmVhY3RSb290Q29udGFpbmVyO2lmKGEpe3ZhciB1PWE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGwpe3ZhciBvPWw7bD1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO28uY2FsbChlKX19SHMobix1LGUsbCl9ZWxzZSB1PWZ1bmN0aW9uKGUsbix0LHIsbCl7aWYobCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBhPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO2EuY2FsbChlKX19dmFyIHU9V3MobixyLGUsMCxudWxsLCExLDAsIiIsWnMpO3JldHVybiBlLl9yZWFjdFJvb3RDb250YWluZXI9dSxlW21sXT11LmN1cnJlbnQsV3IoOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLGNzKCksdX1mb3IoO2w9ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBvPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKGkpO28uY2FsbChlKX19dmFyIGk9QXMoZSwwLCExLG51bGwsMCwhMSwwLCIiLFpzKTtyZXR1cm4gZS5fcmVhY3RSb290Q29udGFpbmVyPWksZVttbF09aS5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxjcygoZnVuY3Rpb24oKXtIcyhuLGksdCxyKX0pKSxpfSh0LG4sZSxsLHIpO3JldHVybiBRcyh1KX1Zcy5wcm90b3R5cGUucmVuZGVyPUtzLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGw9PT1uKXRocm93IEVycm9yKGEoNDA5KSk7SHMoZSxuLG51bGwsbnVsbCl9LFlzLnByb3RvdHlwZS51bm1vdW50PUtzLnByb3RvdHlwZS51bm1vdW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGwhPT1lKXt0aGlzLl9pbnRlcm5hbFJvb3Q9bnVsbDt2YXIgbj1lLmNvbnRhaW5lckluZm87Y3MoKGZ1bmN0aW9uKCl7SHMobnVsbCxlLG51bGwsbnVsbCl9KSksblttbF09bnVsbH19LFlzLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgbj1DbigpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5Om59O2Zvcih2YXIgdD0wO3Q8Um4ubGVuZ3RoJiYwIT09biYmbjxSblt0XS5wcmlvcml0eTt0KyspO1JuLnNwbGljZSh0LDAsZSksMD09PXQmJlVuKGUpfX0sU249ZnVuY3Rpb24oZSl7c3dpdGNoKGUudGFnKXtjYXNlIDM6dmFyIG49ZS5zdGF0ZU5vZGU7aWYobi5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXt2YXIgdD1kbihuLnBlbmRpbmdMYW5lcyk7MCE9PXQmJihibihuLDF8dCkscnMobixHZSgpKSwhKDYmX2kpJiYoV2k9R2UoKSs1MDAsV2woKSkpfWJyZWFrO2Nhc2UgMTM6Y3MoKGZ1bmN0aW9uKCl7dmFyIG49UGEoZSwxKTtpZihudWxsIT09bil7dmFyIHQ9ZXMoKTt0cyhuLGUsMSx0KX19KSksJHMoZSwxKX19LHhuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPVBhKGUsMTM0MjE3NzI4KTtpZihudWxsIT09bil0cyhuLGUsMTM0MjE3NzI4LGVzKCkpOyRzKGUsMTM0MjE3NzI4KX19LEVuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPW5zKGUpLHQ9UGEoZSxuKQo7aWYobnVsbCE9PXQpdHModCxlLG4sZXMoKSk7JHMoZSxuKX19LENuPWZ1bmN0aW9uKCl7cmV0dXJuIGtufSx6bj1mdW5jdGlvbihlLG4pe3ZhciB0PWtuO3RyeXtyZXR1cm4ga249ZSxuKCl9ZmluYWxseXtrbj10fX0sU2U9ZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuKXtjYXNlImlucHV0IjppZihaKGUsdCksbj10Lm5hbWUsInJhZGlvIj09PXQudHlwZSYmbnVsbCE9bil7Zm9yKHQ9ZTt0LnBhcmVudE5vZGU7KXQ9dC5wYXJlbnROb2RlO2Zvcih0PXQucXVlcnlTZWxlY3RvckFsbCgiaW5wdXRbbmFtZT0iK0pTT04uc3RyaW5naWZ5KCIiK24pKyddW3R5cGU9InJhZGlvIl0nKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9d2wocik7aWYoIWwpdGhyb3cgRXJyb3IoYSg5MCkpO3EociksWihyLGwpfX19YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6YWUoZSx0KTticmVhaztjYXNlInNlbGVjdCI6bnVsbCE9KG49dC52YWx1ZSkmJnRlKGUsISF0Lm11bHRpcGxlLG4sITEpfX0sX2U9c3MsUGU9Y3M7dmFyIGVjPXt1c2luZ0NsaWVudEVudHJ5UG9pbnQ6ITEsRXZlbnRzOltibCxrbCx3bCx6ZSxOZSxzc119LG5jPXtmaW5kRmliZXJCeUhvc3RJbnN0YW5jZTp5bCxidW5kbGVUeXBlOjAsdmVyc2lvbjoiMTguMi4wIixyZW5kZXJlclBhY2thZ2VOYW1lOiJyZWFjdC1kb20ifSx0Yz17YnVuZGxlVHlwZTpuYy5idW5kbGVUeXBlLHZlcnNpb246bmMudmVyc2lvbixyZW5kZXJlclBhY2thZ2VOYW1lOm5jLnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6bmMucmVuZGVyZXJDb25maWcsb3ZlcnJpZGVIb29rU3RhdGU6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZURlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZVJlbmFtZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzOm51bGwsb3ZlcnJpZGVQcm9wc0RlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzUmVuYW1lUGF0aDpudWxsLHNldEVycm9ySGFuZGxlcjpudWxsLHNldFN1c3BlbnNlSGFuZGxlcjpudWxsLHNjaGVkdWxlVXBkYXRlOm51bGwsY3VycmVudERpc3BhdGNoZXJSZWY6ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLGZpbmRIb3N0SW5zdGFuY2VCeUZpYmVyOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09KGU9amUoZSkpP251bGw6ZS5zdGF0ZU5vZGV9LGZpbmRGaWJlckJ5SG9zdEluc3RhbmNlOm5jLmZpbmRGaWJlckJ5SG9zdEluc3RhbmNlfHxmdW5jdGlvbigpe3JldHVybiBudWxsfSxmaW5kSG9zdEluc3RhbmNlc0ZvclJlZnJlc2g6bnVsbCxzY2hlZHVsZVJlZnJlc2g6bnVsbCxzY2hlZHVsZVJvb3Q6bnVsbCxzZXRSZWZyZXNoSGFuZGxlcjpudWxsLGdldEN1cnJlbnRGaWJlcjpudWxsLHJlY29uY2lsZXJWZXJzaW9uOiIxOC4yLjAtbmV4dC05ZTNiNzcyYjgtMjAyMjA2MDgifTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIF9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyl7dmFyIHJjPV9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztpZighcmMuaXNEaXNhYmxlZCYmcmMuc3VwcG9ydHNGaWJlcil0cnl7bG49cmMuaW5qZWN0KHRjKSxhbj1yY31jYXRjaChjZSl7fX1uLl9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPWVjLG4uY3JlYXRlUG9ydGFsPWZ1bmN0aW9uKGUsbil7dmFyIHQ9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGw7aWYoIVhzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIGZ1bmN0aW9uKGUsbix0KXt2YXIgcj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbDtyZXR1cm57JCR0eXBlb2Y6UyxrZXk6bnVsbD09cj9udWxsOiIiK3IsY2hpbGRyZW46ZSxjb250YWluZXJJbmZvOm4saW1wbGVtZW50YXRpb246dH19KGUsbixudWxsLHQpfSxuLmNyZWF0ZVJvb3Q9ZnVuY3Rpb24oZSxuKXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSgyOTkpKTt2YXIgdD0hMSxyPSIiLGw9cXM7cmV0dXJuIG51bGwhPW4mJighMD09PW4udW5zdGFibGVfc3RyaWN0TW9kZSYmKHQ9ITApLHZvaWQgMCE9PW4uaWRlbnRpZmllclByZWZpeCYmKHI9bi5pZGVudGlmaWVyUHJlZml4KSx2b2lkIDAhPT1uLm9uUmVjb3ZlcmFibGVFcnJvciYmKGw9bi5vblJlY292ZXJhYmxlRXJyb3IpKSxuPUFzKGUsMSwhMSxudWxsLDAsdCwwLHIsbCksZVttbF09bi5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxuZXcgS3Mobil9LG4uZmluZERPTU5vZGU9ZnVuY3Rpb24oZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigxPT09ZS5ub2RlVHlwZSlyZXR1cm4gZTt2YXIgbj1lLl9yZWFjdEludGVybmFscztpZih2b2lkIDA9PT1uKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5yZW5kZXIpdGhyb3cgRXJyb3IoYSgxODgpKTt0aHJvdyBlPU9iamVjdC5rZXlzKGUpLmpvaW4oIiwiKSxFcnJvcihhKDI2OCxlKSl9cmV0dXJuIGU9bnVsbD09PShlPWplKG4pKT9udWxsOmUuc3RhdGVOb2RlfSxuLmZsdXNoU3luYz1mdW5jdGlvbihlKXtyZXR1cm4gY3MoZSl9LG4uaHlkcmF0ZT1mdW5jdGlvbihlLG4sdCl7aWYoIUdzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIEpzKG51bGwsZSxuLCEwLHQpfSxuLmh5ZHJhdGVSb290PWZ1bmN0aW9uKGUsbix0KXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSg0MDUpKTt2YXIgcj1udWxsIT10JiZ0Lmh5ZHJhdGVkU291cmNlc3x8bnVsbCxsPSExLHU9IiIsbz1xcztpZihudWxsIT10JiYoITA9PT10LnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT10LmlkZW50aWZpZXJQcmVmaXgmJih1PXQuaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09dC5vblJlY292ZXJhYmxlRXJyb3ImJihvPXQub25SZWNvdmVyYWJsZUVycm9yKSksbj1XcyhuLG51bGwsZSwxLG51bGwhPXQ/dDpudWxsLGwsMCx1LG8pLGVbbWxdPW4uY3VycmVudCxXcihlKSxyKWZvcihlPTA7ZTxyLmxlbmd0aDtlKyspbD0obD0odD1yW2VdKS5fZ2V0VmVyc2lvbikodC5fc291cmNlKSwKbnVsbD09bi5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP24ubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bdCxsXTpuLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaCh0LGwpO3JldHVybiBuZXcgWXMobil9LG4ucmVuZGVyPWZ1bmN0aW9uKGUsbix0KXtpZighR3MobikpdGhyb3cgRXJyb3IoYSgyMDApKTtyZXR1cm4gSnMobnVsbCxlLG4sITEsdCl9LG4udW5tb3VudENvbXBvbmVudEF0Tm9kZT1mdW5jdGlvbihlKXtpZighR3MoZSkpdGhyb3cgRXJyb3IoYSg0MCkpO3JldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoY3MoKGZ1bmN0aW9uKCl7SnMobnVsbCxudWxsLGUsITEsKGZ1bmN0aW9uKCl7ZS5fcmVhY3RSb290Q29udGFpbmVyPW51bGwsZVttbF09bnVsbH0pKX0pKSwhMCl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9c3Msbi51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLG4sdCxyKXtpZighR3ModCkpdGhyb3cgRXJyb3IoYSgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihhKDM4KSk7cmV0dXJuIEpzKGUsbix0LCExLHIpfSxuLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LDUwODIwNyhlLG4pe2Z1bmN0aW9uIHQoZSxuKXt2YXIgdD1lLmxlbmd0aDtlLnB1c2gobik7ZTpmb3IoOzA8dDspe3ZhciByPXQtMT4+PjEsbD1lW3JdO2lmKCEoMDxhKGwsbikpKWJyZWFrIGU7ZVtyXT1uLGVbdF09bCx0PXJ9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD9udWxsOmVbMF19ZnVuY3Rpb24gbChlKXtpZigwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7dmFyIG49ZVswXSx0PWUucG9wKCk7aWYodCE9PW4pe2VbMF09dDtlOmZvcih2YXIgcj0wLGw9ZS5sZW5ndGgsdT1sPj4+MTtyPHU7KXt2YXIgbz0yKihyKzEpLTEsaT1lW29dLHM9bysxLGM9ZVtzXTtpZigwPmEoaSx0KSlzPGwmJjA+YShjLGkpPyhlW3JdPWMsZVtzXT10LHI9cyk6KGVbcl09aSxlW29dPXQscj1vKTtlbHNle2lmKCEoczxsJiYwPmEoYyx0KSkpYnJlYWsgZTtlW3JdPWMsZVtzXT10LHI9c319fXJldHVybiBufWZ1bmN0aW9uIGEoZSxuKXt2YXIgdD1lLnNvcnRJbmRleC1uLnNvcnRJbmRleDtyZXR1cm4gMCE9PXQ/dDplLmlkLW4uaWR9aWYoIm9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdyl7dmFyIHU9cGVyZm9ybWFuY2U7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gdS5ub3coKX19ZWxzZXt2YXIgbz1EYXRlLGk9by5ub3coKTtuLnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiBvLm5vdygpLWl9fXZhciBzPVtdLGM9W10sZj0xLGQ9bnVsbCxwPTMsbT0hMSxoPSExLGc9ITEsdj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwseT0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLGI9InVuZGVmaW5lZCIhPXR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gayhlKXtmb3IodmFyIG49cihjKTtudWxsIT09bjspe2lmKG51bGw9PT1uLmNhbGxiYWNrKWwoYyk7ZWxzZXtpZighKG4uc3RhcnRUaW1lPD1lKSlicmVhaztsKGMpLG4uc29ydEluZGV4PW4uZXhwaXJhdGlvblRpbWUsdChzLG4pfW49cihjKX19ZnVuY3Rpb24gdyhlKXtpZihnPSExLGsoZSksIWgpaWYobnVsbCE9PXIocykpaD0hMCxGKFMpO2Vsc2V7dmFyIG49cihjKTtudWxsIT09biYmUih3LG4uc3RhcnRUaW1lLWUpfX1mdW5jdGlvbiBTKGUsdCl7aD0hMSxnJiYoZz0hMSx5KHopLHo9LTEpLG09ITA7dmFyIGE9cDt0cnl7Zm9yKGsodCksZD1yKHMpO251bGwhPT1kJiYoIShkLmV4cGlyYXRpb25UaW1lPnQpfHxlJiYhUCgpKTspe3ZhciB1PWQuY2FsbGJhY2s7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHUpe2QuY2FsbGJhY2s9bnVsbCxwPWQucHJpb3JpdHlMZXZlbDt2YXIgbz11KGQuZXhwaXJhdGlvblRpbWU8PXQpO3Q9bi51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygbz9kLmNhbGxiYWNrPW86ZD09PXIocykmJmwocyksayh0KX1lbHNlIGwocyk7ZD1yKHMpfWlmKG51bGwhPT1kKXZhciBpPSEwO2Vsc2V7dmFyIGY9cihjKTtudWxsIT09ZiYmUih3LGYuc3RhcnRUaW1lLXQpLGk9ITF9cmV0dXJuIGl9ZmluYWxseXtkPW51bGwscD1hLG09ITF9fSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZyYmdm9pZCAwIT09bmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcmJm5hdmlnYXRvci5zY2hlZHVsaW5nLmlzSW5wdXRQZW5kaW5nLmJpbmQobmF2aWdhdG9yLnNjaGVkdWxpbmcpO3ZhciB4LEU9ITEsQz1udWxsLHo9LTEsTj01LF89LTE7ZnVuY3Rpb24gUCgpe3JldHVybiEobi51bnN0YWJsZV9ub3coKS1fPE4pfWZ1bmN0aW9uIFQoKXtpZihudWxsIT09Qyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtfPWU7dmFyIHQ9ITA7dHJ5e3Q9QyghMCxlKX1maW5hbGx5e3Q/eCgpOihFPSExLEM9bnVsbCl9fWVsc2UgRT0hMX1pZigiZnVuY3Rpb24iPT10eXBlb2YgYil4PWZ1bmN0aW9uKCl7YihUKX07ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsKXt2YXIgTD1uZXcgTWVzc2FnZUNoYW5uZWwsTT1MLnBvcnQyO0wucG9ydDEub25tZXNzYWdlPVQseD1mdW5jdGlvbigpe00ucG9zdE1lc3NhZ2UobnVsbCl9fWVsc2UgeD1mdW5jdGlvbigpe3YoVCwwKX07ZnVuY3Rpb24gRihlKXtDPWUsRXx8KEU9ITAseCgpKX1mdW5jdGlvbiBSKGUsdCl7ej12KChmdW5jdGlvbigpe2Uobi51bnN0YWJsZV9ub3coKSl9KSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLApuLnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sbi51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLEYoUykpfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxuLnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHIocyl9LG4udW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIG49MzticmVhaztkZWZhdWx0Om49cH12YXIgdD1wO3A9bjt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9dH19LG4udW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LG4udW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxuLnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciB0PXA7cD1lO3RyeXtyZXR1cm4gbigpfWZpbmFsbHl7cD10fX0sbi51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsbCxhKXt2YXIgdT1uLnVuc3RhYmxlX25vdygpO3N3aXRjaCgib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2E9Im51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/dSthOnU6YT11LGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6ZisrLGNhbGxiYWNrOmwscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTphLGV4cGlyYXRpb25UaW1lOm89YStvLHNvcnRJbmRleDotMX0sYT51PyhlLnNvcnRJbmRleD1hLHQoYyxlKSxudWxsPT09cihzKSYmZT09PXIoYykmJihnPyh5KHopLHo9LTEpOmc9ITAsUih3LGEtdSkpKTooZS5zb3J0SW5kZXg9byx0KHMsZSksaHx8bXx8KGg9ITAsRihTKSkpLGV9LG4udW5zdGFibGVfc2hvdWxkWWllbGQ9UCxuLnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbihlKXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciB0PXA7cD1uO3RyeXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPXR9fX19LDE4MjYxNChlLG4sdCl7ZS5leHBvcnRzPXQoNTA4MjA3KX19XSk7"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/42288.47ecaeca1012ee3e1d8c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.736Z","timestamp":1785154590736,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/42288.47ecaeca1012ee3e1d8c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-4efd\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:41\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7d63a3e9aa922d008d0616b00bb4eccc\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":20221,"size_decoded":8618,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3070)","md5":"146c86b697d57edadedb79e577a2b819","sha1":"fac3ccefeac950dd75b09bf983e4db643acb17cf","sha256":"e7c1e85bb4c79e48526d268113263cbed1b8dc51caa0f7ece95022ce45c6426a","sha512":"0c8f76ba43c26ac96ac8ce77228656bc32000075828146c8e3f5f6c8d83aa1124958db4a287753456a136751fe65d9fc935c7e8efead69cb7bc5587e6f54cd75","ssdeep":"384:IPLZpvbUA+tmPj2DF4ciyLHBoIUEDHfKXqEVKtwAqXrNc2G/p5RuePAU32wDP7Fb:IT78mPj0FHLHevUfKa+EwBxnJePTr6Y","tlshash":"a29219c260053875dddf6eef405b45ade33e243538055499b238adec02a9a5873a7f2f","first_seen":"2026-07-22T11:33:41.962494Z","last_seen":"2026-07-27T14:23:37.865812Z","times_seen":267,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0MjI4OF0sezIwMjA0MShlKXtlLmV4cG9ydHM9e2hpZGRlbjoiaGlkZGVuLW5NdHhYVFhfIixmYWRlSW5XcmFwcGVyOiJmYWRlSW5XcmFwcGVyLW5NdHhYVFhfIixpc0FuaW1hdGVkOiJpc0FuaW1hdGVkLW5NdHhYVFhfIn19LDU2NzI2KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZUZhZGVJbkNvbnRleHQ6KCk9PnJ9KTt2YXIgaT1uKDc3OTQ3NCk7big5MTQ0ODcpLG4oMjAyMDQxKTtjb25zdCBvPWkuY3JlYXRlQ29udGV4dCh7Y2hpbGRyZW46e30sc2V0SXNSZWFkeTooKT0+e319KTtmdW5jdGlvbiByKCl7Y29uc3R7c2V0SXNSZWFkeTplLGNoaWxkcmVuOnR9PSgwLGkudXNlQ29udGV4dCkobyksbj0oMCxpLnVzZVJlZikoKDAsaS51c2VJZCkoKSk7dFtuLmN1cnJlbnRdfHwodFtuLmN1cnJlbnRdPXtpc1JlYWR5OiExfSk7cmV0dXJuKDAsaS51c2VDYWxsYmFjaykoKCgpPT57dFtuLmN1cnJlbnRdLmlzUmVhZHk9ITAsZShPYmplY3QudmFsdWVzKHQpLmV2ZXJ5KChlPT5lLmlzUmVhZHkpKSl9KSxbdCxlXSl9fSwxODM1NzIoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtuLmQodCx7Q29sbGFwc2VEaXJlY3Rpb246KCk9Pml9KSxmdW5jdGlvbihlKXtlLlN0YXJ0Rmlyc3Q9InN0YXJ0LWZpcnN0IixlLkVuZEZpcnN0PSJlbmQtZmlyc3QifShpfHwoaT17fSkpfSwxMzc2NjkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlQ29sbGFwc2libGVDb21tb246KCk9PmN9KTt2YXIgaT1uKDc3OTQ3NCksbz1uKDcxOTQyNSkscj1uKDMxNDcyMCkscz1uKDk5MTA5MSksbD1uKDYxNjMxMSksYT1uKDk2NDU5NCk7ZnVuY3Rpb24gYyhlKXtjb25zdHtpdGVtc0xpc3Q6dCxnZXRJdGVtSWQ6bixjYWxjVmlzaWJsZUFuZEhpZGRlbkl0ZW1zOmMsc2hvdWxkS2VlcEl0ZW1WaXNpYmxlOmQsb25NZWFzdXJlQ2FsbGJhY2s6Zixmb3JjZVVwZGF0ZTpiPSExfT1lLFtoLG1dPSgwLHMudXNlUmVmc01hcCkoKSxwPSgwLGkudXNlUmVmKShudWxsKSx2PSgwLGkudXNlUmVmKSh7d2lkdGhzTWFwOm5ldyBNYXAsY29udGFpbmVyV2lkdGg6MCxtb3JlQnV0dG9uV2lkdGg6MH0pLFtnLEldPSgwLGkudXNlU3RhdGUpKHt2aXNpYmxlOnQsaGlkZGVuOltdfSksQz0oMCxpLnVzZU1lbW8pKCgoKT0+dC5yZWR1Y2UoKChlLHQsbik9PihkKHQpJiZlLnB1c2gobiksZSkpLFtdKSksW3QsZF0pLFI9KDAsaS51c2VDYWxsYmFjaykoKCgpPT57aWYodi5jdXJyZW50LmNvbnRhaW5lcldpZHRoKXtjb25zdCBlPWModi5jdXJyZW50LEMpOyhmdW5jdGlvbihlLHQpe3JldHVybiF1KGUudmlzaWJsZSx0LnZpc2libGUpfHwhdShlLmhpZGRlbix0LmhpZGRlbil9KShnLGUpJiZJKGUpfX0pLFt2LEksZyxDLGNdKSxTPSgwLGkudXNlQ2FsbGJhY2spKCgoKT0+e3YuY3VycmVudC5tb3JlQnV0dG9uV2lkdGg9cC5jdXJyZW50PygwLHIub3V0ZXJXaWR0aCkocC5jdXJyZW50LCEwKTowO2NvbnN0IGU9bmV3IE1hcCh2LmN1cnJlbnQud2lkdGhzTWFwKTtmb3IoY29uc3QgaSBvZiB0KXtjb25zdCB0PW4oaSksbz1oLmN1cnJlbnQuZ2V0KHQpO2lmKG8pe2NvbnN0IG49KDAsci5vdXRlcldpZHRoKShvLCEwKTtlLnNldCh0LG4pfX12LmN1cnJlbnQud2lkdGhzTWFwPWUsZiYmZigpfSksW3YsdCxuLGgsZl0pLGs9KDAsaS51c2VSZWYpKG51bGwpLHk9KDAsaS51c2VDYWxsYmFjaykoKChbZV0pPT57ZS5jb250ZW50UmVjdC53aWR0aCE9PXYuY3VycmVudC5jb250YWluZXJXaWR0aCYmKGsuY3VycmVudCYmY2FuY2VsQW5pbWF0aW9uRnJhbWUoay5jdXJyZW50KSx2LmN1cnJlbnQuY29udGFpbmVyV2lkdGg9ZS5jb250ZW50UmVjdC53aWR0aCxrLmN1cnJlbnQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgoKT0+e1IoKX0pKSl9KSxbdixSXSksTT0oMCxpLnVzZVJlZikobnVsbCksSD0oMCxpLnVzZUNhbGxiYWNrKSgoKFtlXSk9PntNLmN1cnJlbnQmJmNhbmNlbEFuaW1hdGlvbkZyYW1lKE0uY3VycmVudCksUygpLE0uY3VycmVudD1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57UigpfSkpfSksW1MsUl0pLEE9KDAsby51c2VSZXNpemVPYnNlcnZlcikoSCksdz0oMCxvLnVzZVJlc2l6ZU9ic2VydmVyKSh5KSxUPSgwLGkudXNlUmVmKShudWxsKSxFPSgwLGEubWVyZ2VSZWZzKShbdyxUXSkseD0oMCxpLnVzZVJlZikodCksej0oMCxpLnVzZVJlZikoITApLEI9KDAsaS51c2VSZWYpKFtdKTtyZXR1cm4oMCxsLnVzZUlzb21vcnBoaWNMYXlvdXRFZmZlY3QpKCgoKT0+e2NvbnN0IGU9di5jdXJyZW50LndpZHRoc01hcC5zaXplPT09dC5sZW5ndGg7IWImJiF6LmN1cnJlbnQmJnUoeC5jdXJyZW50LHQpJiZ1KEIuY3VycmVudCxDKSYmZXx8KFMoKSxSKCksei5jdXJyZW50PSExLHguY3VycmVudD10LEIuY3VycmVudD1DKX0pLFt0LEMsYixTLFJdKSx7Y29udGFpbmVyUmVmQ2FsbGJhY2s6RSxtb3JlQnV0dG9uUmVmOnAsaW5uZXJDb250YWluZXJSZWZDYWxsYmFjazpBLGl0ZW1zUmVmczpoLHNldEl0ZW1SZWY6bSxoaWRkZW5JdGVtczpnLmhpZGRlbix2aXNpYmxlSXRlbXM6Zy52aXNpYmxlLGl0ZW1zTWVhc3VyZW1lbnRzOnZ9fWZ1bmN0aW9uIHUoZSx0KXtyZXR1cm4gZS5sZW5ndGg9PT10Lmxlbmd0aCYmZS5yZWR1Y2UoKChlLG4saSk9PmUmJm49PT10W2ldKSwhMCl9fSw4NjgzMzkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlQ29sbGFwc2libGU6KCk9PnN9KTt2YXIgaT1uKDc3OTQ3NCksbz1uKDE4MzU3Mikscj1uKDEzNzY2OSk7ZnVuY3Rpb24gcyhlLHQsbixzPW8uQ29sbGFwc2VEaXJlY3Rpb24uRW5kRmlyc3Qpe2NvbnN0IGw9KDAsaS51c2VDYWxsYmFjaykoKChuLGkpPT57Y29uc3Qgcj1lLm1hcCgoZT0+bi53aWR0aHNNYXAuZ2V0KHQoZSkpPz8wKSk7cmV0dXJuIGZ1bmN0aW9uKHtpdGVtczplLGNvbnRhaW5lcldpZHRoOnQsZWxlbWVudHNXaWR0aHM6bixtZW51SXRlbVdpZHRoOmksa2VlcFZpc2libGU6cixkaXJlY3Rpb246c30pe2NvbnN0IGw9Wy4uLmVdLGE9W10sYz1bXTtsZXQgdT0wO2Zvcihjb25zdCBlIG9mIG4pdSs9ZQo7aWYodTw9dClyZXR1cm57dmlzaWJsZTpsLGhpZGRlbjpjfTtjb25zdCBkPVsuLi5uXTtpZih1PXIubWFwKChlPT5kW2VdKSkucmVkdWNlKCgoZSx0KT0+ZSt0KSwwKStpLHM9PT1vLkNvbGxhcHNlRGlyZWN0aW9uLkVuZEZpcnN0KWZvcihsZXQgZT0wO2U8bC5sZW5ndGg7ZSsrKXIuaW5jbHVkZXMoZSk/YS5wdXNoKGxbZV0pOih1Kz1kW2VdLHU8PXQ/YS5wdXNoKGxbZV0pOmMucHVzaChsW2VdKSk7ZWxzZSBmb3IobGV0IGU9bC5sZW5ndGgtMTtlPj0wO2UtLSlyLmluY2x1ZGVzKGUpP2EudW5zaGlmdChsW2VdKToodSs9ZFtlXSx1PD10P2EudW5zaGlmdChsW2VdKTpjLnVuc2hpZnQobFtlXSkpO3JldHVybnt2aXNpYmxlOmEsaGlkZGVuOmN9fSh7aXRlbXM6ZSxjb250YWluZXJXaWR0aDpuLmNvbnRhaW5lcldpZHRoLGVsZW1lbnRzV2lkdGhzOnIsbWVudUl0ZW1XaWR0aDpuLm1vcmVCdXR0b25XaWR0aCxrZWVwVmlzaWJsZTppLGRpcmVjdGlvbjpzfSl9KSxbZV0pO3JldHVybigwLHIudXNlQ29sbGFwc2libGVDb21tb24pKHtpdGVtc0xpc3Q6ZSxnZXRJdGVtSWQ6dCxjYWxjVmlzaWJsZUFuZEhpZGRlbkl0ZW1zOmwsc2hvdWxkS2VlcEl0ZW1WaXNpYmxlOm59KX19LDQ1NjQ4NyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt1c2VEaXNjbG9zdXJlOigpPT5jfSk7dmFyIGk9big3Nzk0NzQpLG89bigxMzg2MzgpLHI9big3MjEzNjkpLHM9bigxNDU5ODQpLGw9big4MzM5MDMpLGE9big0MTkxODEpO2Z1bmN0aW9uIGMoZSl7Y29uc3R7aWQ6dCxsaXN0Ym94SWQ6bixkaXNhYmxlZDpjLGJ1dHRvblRhYkluZGV4OnU9MCxvbkZvY3VzOmQsb25CbHVyOmYsb25DbGljazpifT1lLFtoLG1dPSgwLGkudXNlU3RhdGUpKCExKSxbcCx2XT0oMCxzLnVzZUZvY3VzKSgpLGc9cHx8aCxJPW4/P3ZvaWQgMCE9PXQ/KDAsYS5jcmVhdGVEb21JZCkodCwibGlzdGJveCIpOnZvaWQgMCxDPSgwLGkudXNlUmVmKShudWxsKSxSPSgwLGkudXNlQ2FsbGJhY2spKChlPT5DLmN1cnJlbnQ/LmZvY3VzKGUpKSxbQ10pLFM9KDAsaS51c2VSZWYpKG51bGwpLGs9KDAsaS51c2VDYWxsYmFjaykoKCgpPT4oMCxvLmVuc3VyZU5vdE51bGwpKFMuY3VycmVudCkuZm9jdXMoKSksW1NdKSx5PSgwLGkudXNlQ2FsbGJhY2spKCgoKT0+bSghMCkpLFttXSksTT0oMCxpLnVzZUNhbGxiYWNrKSgoKGU9ITEsdD0hMSk9PnttKCExKTtjb25zdHthY3RpdmVFbGVtZW50Om59PWRvY3VtZW50O24mJigwLHIuaXNUZXh0RWRpdGluZ0ZpZWxkKShuKXx8dHx8Uih7cHJldmVudFNjcm9sbDplfSl9KSxbbSxSXSksSD0oMCxpLnVzZUNhbGxiYWNrKSgoKCk9PntoP00oKTp5KCl9KSxbaCxNLHldKSxBPWM/W106W2Qsdi5vbkZvY3VzXSx3PWM/W106W2Ysdi5vbkJsdXJdLFQ9Yz9bXTpbYixIXSxFPSgwLGwuY3JlYXRlU2FmZU11bHRpY2FzdEV2ZW50SGFuZGxlcikoLi4uQSkseD0oMCxsLmNyZWF0ZVNhZmVNdWx0aWNhc3RFdmVudEhhbmRsZXIpKC4uLncpLHo9KDAsbC5jcmVhdGVTYWZlTXVsdGljYXN0RXZlbnRIYW5kbGVyKSguLi5UKTtyZXR1cm57bGlzdGJveElkOkksaXNPcGVuZWQ6aCxpc0ZvY3VzZWQ6ZyxidXR0b25UYWJJbmRleDpjPy0xOnUsbGlzdGJveFRhYkluZGV4Oi0xLG9wZW46eSxjbG9zZTpNLHRvZ2dsZTpILG9uT3BlbjprLGJ1dHRvbkZvY3VzQmluZGluZ3M6e29uRm9jdXM6RSxvbkJsdXI6eH0sb25CdXR0b25DbGljazp6LGJ1dHRvblJlZjpDLGxpc3Rib3hSZWY6UyxidXR0b25BcmlhOnsiYXJpYS1jb250cm9scyI6aD9JOnZvaWQgMCwiYXJpYS1leHBhbmRlZCI6aCwiYXJpYS1kaXNhYmxlZCI6Y319fX0sNzA4MjA3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZUl0ZW1zS2V5Ym9hcmROYXZpZ2F0aW9uOigpPT5sfSk7dmFyIGksbz1uKDc3OTQ3NCkscj1uKDc2MzU0OSk7ZnVuY3Rpb24gcyhlLHQpe3JldHVybiBlPj0wP2UldDoodC1NYXRoLmFicyhlKSV0KSV0fSFmdW5jdGlvbihlKXtlLk5leHQ9Im5leHQiLGUuUHJldmlvdXM9InByZXZpb3VzIixlLkZpcnN0PSJmaXJzdCIsZS5MYXN0PSJsYXN0In0oaXx8KGk9e30pKTtmdW5jdGlvbiBsKGUsdCxuLGksbCxhLGM9e30sdSxkKXtjb25zdCBmPSgwLG8udXNlQ2FsbGJhY2spKChlPT57Y29uc3QgdD1uLmZpbmRJbmRleChpKTtpZih0PT09bi5sZW5ndGgtMSYmIWEpcmV0dXJuIHZvaWQodT8ub25GYWlsTmV4dCYmdS5vbkZhaWxOZXh0KGUpKTtjb25zdCBvPXModCsxLG4ubGVuZ3RoKTtsJiZsKG5bb10sIm5leHQiKX0pLFtuLGksbCxhXSksYj0oMCxvLnVzZUNhbGxiYWNrKSgoZT0+e2NvbnN0IHQ9bi5maW5kSW5kZXgoaSk7aWYoMD09PXQmJiFhKXJldHVybiB2b2lkKHU/Lm9uRmFpbFByZXYmJnUub25GYWlsUHJldihlKSk7Y29uc3Qgbz1zKHQtMSxuLmxlbmd0aCk7bCYmbChuW29dLCJwcmV2aW91cyIpfSksW24saSxsLGFdKSxoPSgwLG8udXNlQ2FsbGJhY2spKCgoKT0+e2wmJmwoblswXSwiZmlyc3QiKX0pLFtsLG5dKSxtPSgwLG8udXNlQ2FsbGJhY2spKCgoKT0+e2wmJmwobltuLmxlbmd0aC0xXSwibGFzdCIpfSksW2wsbl0pLHA9KDAsby51c2VNZW1vKSgoKCk9PihlPT4oe25leHQ6WzQwLCgpPT5lKCk/Mzc6MzldLHByZXZpb3VzOlszOCwoKT0+ZSgpPzM5OjM3XSxmaXJzdDpbMzMsKCk9PmUoKT8zNTozNl0sbGFzdDpbMzQsKCk9PmUoKT8zNjozNV19KSkodCkpLFt0XSkse25leHQ6dj1wLm5leHQscHJldmlvdXM6Zz1wLnByZXZpb3VzLGZpcnN0Okk9cC5maXJzdCxsYXN0OkM9cC5sYXN0fT1jO3JldHVybigwLHIudXNlQ29tcG9zZWRLZXlib2FyZEFjdGlvbkhhbmRsZXJzKSgoMCxyLnVzZUtleWJvYXJkQWN0aW9uSGFuZGxlcikodixmLGQ/Lm5leHQ/PygoKT0+ITApLGUpLCgwLHIudXNlS2V5Ym9hcmRBY3Rpb25IYW5kbGVyKShnLGIsZD8ucHJldmlvdXM/PygoKT0+ITApLGUpLCgwLHIudXNlS2V5Ym9hcmRBY3Rpb25IYW5kbGVyKShJLGgsKCgpPT4hMCksZSksKDAsci51c2VLZXlib2FyZEFjdGlvbkhhbmRsZXIpKEMsbSwoKCk9PiEwKSxlKSl9fSw2NjI3NjEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlS2VlcEFjdGl2ZUl0ZW1JbnRvVmlldzooKT0+c30pCjt2YXIgaT1uKDc3OTQ3NCksbz1uKDEzODYzOCkscj1uKDk5MzgzOSk7ZnVuY3Rpb24gcyhlPXt9KXtjb25zdHthY3RpdmVJdGVtOnQsZ2V0S2V5Om4sLi4uc309ZSxsPSgwLGkudXNlUmVmKShudWxsKSxhPSgwLGkudXNlUmVmKShuZXcgTWFwKSxjPSgwLHIudXNlU2Nyb2xsSW50b1ZpZXdIZWxwZXIpKGwuY3VycmVudCksdT0oMCxpLnVzZUNhbGxiYWNrKSgoKCk9PntudWxsIT09Yy5jdXJyZW50JiZudWxsIT09bC5jdXJyZW50JiZjLmN1cnJlbnQuZ2V0Q29udGFpbmVyKCkhPT1sLmN1cnJlbnQmJmMuY3VycmVudC5zZXRDb250YWluZXIobC5jdXJyZW50KX0pLFtjLGxdKSxkPSgwLGkudXNlQ2FsbGJhY2spKChlPT57bC5jdXJyZW50PWV9KSxbbF0pLGY9KDAsaS51c2VDYWxsYmFjaykoKChlLHQpPT57Y29uc3QgaT1uP24oZSk6ZTt0P2EuY3VycmVudC5zZXQoaSx0KTphLmN1cnJlbnQuZGVsZXRlKGkpfSksW2Esbl0pLGI9KDAsaS51c2VDYWxsYmFjaykoKChlLHQpPT57aWYoIWUpcmV0dXJuO2NvbnN0IGk9bj9uKGUpOmUscj1hLmN1cnJlbnQuZ2V0KGkpO3ImJih1KCksKDAsby5lbnN1cmVOb3ROdWxsKShjLmN1cnJlbnQpLnNjcm9sbFRvKHIsdCkpfSksW2EsYyxuXSk7cmV0dXJuKDAsaS51c2VFZmZlY3QpKCgoKT0+Yih0LHMpKSxbYix0XSksW2QsZixiXX19LDQxODM4NihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt1c2VNb2JpbGVUb3VjaFN0YXRlOigpPT5yfSk7dmFyIGk9big3Nzk0NzQpLG89big3Mzg0NTgpO2Z1bmN0aW9uIHIoKXtjb25zdFtlLHRdPSgwLGkudXNlU3RhdGUpKCExKTtyZXR1cm4oMCxpLnVzZUVmZmVjdCkoKCgpPT57dChvLm1vYmlsZXRvdWNoKX0pLFtdKSxlfX0sNTg2MjIzKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZVByZXZpb3VzOigpPT5vfSk7dmFyIGk9big3Nzk0NzQpO2Z1bmN0aW9uIG8oZSl7Y29uc3QgdD0oMCxpLnVzZVJlZikobnVsbCk7cmV0dXJuKDAsaS51c2VFZmZlY3QpKCgoKT0+e3QuY3VycmVudD1lfSksW2VdKSx0LmN1cnJlbnR9fSw5OTEwOTEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlUmVmc01hcDooKT0+b30pO3ZhciBpPW4oNzc5NDc0KTtmdW5jdGlvbiBvKCl7Y29uc3QgZT0oMCxpLnVzZVJlZikobmV3IE1hcCksdD0oMCxpLnVzZUNhbGxiYWNrKSgodD0+bj0+e251bGwhPT1uP2UuY3VycmVudC5zZXQodCxuKTplLmN1cnJlbnQuZGVsZXRlKHQpfSksW2VdKTtyZXR1cm5bZSx0XX19LDk5MzgzOShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt1c2VTY3JvbGxJbnRvVmlld0hlbHBlcjooKT0+c30pO3ZhciBpPW4oNzc5NDc0KSxvPW4oMTM4NjM4KSxyPW4oODY2NzQzKTtmdW5jdGlvbiBzKGUpe2NvbnN0IHQ9KDAsaS51c2VSZWYpKG51bGwpO3JldHVybigwLGkudXNlRWZmZWN0KSgoKCk9Pih0LmN1cnJlbnQ9bmV3IHIuU2Nyb2xsSW50b1ZpZXdIZWxwZXIoZSksKCk9PigwLG8uZW5zdXJlTm90TnVsbCkodC5jdXJyZW50KS5kZXN0cm95KCkpKSxbXSksdH19LDU5MTU3MihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt1c2VUYWJzS2V5Ym9hcmROYXZpZ2F0aW9uOigpPT5jfSk7dmFyIGk9big3Nzk0NzQpLG89bigxMzg2MzgpLHI9big3NjM1NDkpLHM9big3MDgyMDcpO2Z1bmN0aW9uIGwoKXtyZXR1cm4hMX1mdW5jdGlvbiBhKGUsdCl7cmV0dXJue25leHQ6KCk9PnQhPT1lLmxlbmd0aC0xLHByZXZpb3VzOigpPT4wIT09dH19ZnVuY3Rpb24gYyhlKXtjb25zdHthY3RpdmF0aW9uVHlwZTp0PSJtYW51YWwifT1lLG49KDAsaS51c2VNZW1vKSgoKCk9PnQpLFtdKTtyZXR1cm4oMCxvLmFzc2VydCkodD09PW4sIkFjdGl2YXRpb24gdHlwZSBtdXN0IGJlIGludmFyaWFudC4iKSwiYXV0b21hdGljIj09PXQ/ZnVuY3Rpb24oZSl7Y29uc3R7aXNSdGw6dCxpdGVtczpuLHByZXZlbnREZWZhdWx0SWZIYW5kbGVkOm89ITAsc3RvcFByb3BhZ2F0aW9uSWZIYW5kbGVkOmM9ITEsbG9vcDp1PSEwLGlzSGlnaGxpZ2h0ZWQ6ZCxvbkhpZ2hsaWdodDpmLG9uQWN0aXZhdGU6Yixpc0NvbGxhcHNlZDpoPWwsb3JpZW50YXRpb246bX09ZSxwPSgwLGkudXNlQ2FsbGJhY2spKChlPT57ZihlKSxoKGUpfHxiKGUpfSksW2YsYixoXSksdj0hdSYmYz9hKG4sbi5maW5kSW5kZXgoZCkpOnZvaWQgMDtyZXR1cm4oMCxyLnVzZUtleWJvYXJkRXZlbnRIYW5kbGVyKShbKDAscy51c2VJdGVtc0tleWJvYXJkTmF2aWdhdGlvbikobSx0LG4sZCxwLHUse30sdm9pZCAwLHYpXSxvLGMpfShlKTpmdW5jdGlvbihlKXtjb25zdHtpc1J0bDp0LGl0ZW1zOm4scHJldmVudERlZmF1bHRJZkhhbmRsZWQ6bz0hMCxzdG9wUHJvcGFnYXRpb25JZkhhbmRsZWQ6bD0hMSxsb29wOmM9ITAsaXNIaWdobGlnaHRlZDp1LG9uSGlnaGxpZ2h0OmQsb25BY3RpdmF0ZTpmLG9yaWVudGF0aW9uOmJ9PWUsaD1uLmZpbmRJbmRleCh1KSxtPW5baF0scD0oMCxpLnVzZUNhbGxiYWNrKSgoKCk9Pnt2b2lkIDAhPT1tJiZmKG0pfSksW20sZl0pLHY9IWMmJmw/YShuLGgpOnZvaWQgMCxnPSgwLGkudXNlQ2FsbGJhY2spKChlPT5kKGUpKSxbZF0pLEk9KDAscy51c2VJdGVtc0tleWJvYXJkTmF2aWdhdGlvbikoYix0LG4sdSxnLGMse30sdm9pZCAwLHYpLEM9KDAsci51c2VLZXlib2FyZEFjdGlvbkhhbmRsZXIpKFsxMywzMl0scCk7cmV0dXJuKDAsci51c2VLZXlib2FyZEV2ZW50SGFuZGxlcikoW0ksQ10sbyxsKX0oZSl9fSw0NTQxNzQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dXNlVGFiczooKT0+ZH0pO3ZhciBpPW4oNzc5NDc0KTtmdW5jdGlvbiBvKGUsdD0iaG9yaXpvbnRhbCIsbixpLG8scil7cmV0dXJue2lkOmUscm9sZTpyPyJyYWRpb2dyb3VwIjoidGFibGlzdCIsImFyaWEtb3JpZW50YXRpb24iOnQsImFyaWEtbGFiZWwiOm8sImFyaWEtbGFiZWxsZWRieSI6aSwiYXJpYS1kaXNhYmxlZCI6bn19ZnVuY3Rpb24gcihlLHQsbixpLG8scixzLGwpe3JldHVybntpZDplLHJvbGU6cj8icmFkaW8iOiJ0YWIiLHRhYkluZGV4OnQ/bD8udGFiSW5kZXg/PzA6LTEsZGlzYWJsZWQ6bywiYXJpYS1zZWxlY3RlZCI6cj92b2lkIDA6biwiYXJpYS1jaGVja2VkIjpyP246dm9pZCAwLAoiYXJpYS1jb250cm9scyI6aSwiYXJpYS1kaXNhYmxlZCI6bywiYXJpYS1sYWJlbCI6cywiZGF0YS1mb2N1cy1tYW5hZ2VyIjp2b2lkIDAhPT1sP2xbImRhdGEtZm9jdXMtbWFuYWdlciJdOnZvaWQgMH19dmFyIHM9big4MzM5MDMpLGw9bigxNDU5ODQpLGE9big2NjI3NjEpLGM9big1OTE1NzIpLHU9big0MTgzODYpO2Z1bmN0aW9uIGQoZSl7Y29uc3R7aWQ6dCxpdGVtczpuLG9yaWVudGF0aW9uOmQsYWN0aXZhdGlvblR5cGU6Zj0ibWFudWFsIixkaXNhYmxlZDpiLHRhYmxpc3RMYWJlbElkOmgsdGFibGlzdExhYmVsOm0sZm9jdXNPbkhpZ2hsaWdodDpwPSEwLHByZXZlbnREZWZhdWx0SWZLZXlib2FyZEFjdGlvbkhhbmRsZWQ6dj0hMCxzdG9wUHJvcGFnYXRpb25JZktleWJvYXJkQWN0aW9uSGFuZGxlZDpnPSExLGtleWJvYXJkTmF2aWdhdGlvbkxvb3A6ST0hMCxzY3JvbGxJbnRvVmlld09wdGlvbnM6Qyxpc0FjdGl2ZTpSLG9uQWN0aXZhdGU6Uyxpc0NvbGxhcHNlZDprLGlzUnRsOnksaXNEaXNjbG9zdXJlT3BlbmVkOk0saXNSYWRpb0dyb3VwOkgsZGVmYXVsdEtleWJvYXJkRm9jdXM6QSxmb2N1c2FibGVJdGVtQXR0cmlidXRlczp3PXt9fT1lLFQ9KDAsdS51c2VNb2JpbGVUb3VjaFN0YXRlKSgpLEU9TT9udWxsOmR8fCJob3Jpem9udGFsIix4PSgwLGkudXNlUmVmKShlLml0ZW1zUmVmcz8uY3VycmVudD8/bmV3IE1hcCksW3osQl09KDAsaS51c2VTdGF0ZSkoKSxbXyxGXT0oMCxsLnVzZUZvY3VzKSgpLEs9bi5maW5kKFIpLFc9KDAsaS51c2VDYWxsYmFjaykoKGU9PmUuaWQ9PT16Py5pZCksW3pdKSxWPSgwLGkudXNlQ2FsbGJhY2spKChlPT57Y29uc3QgdD14LmN1cnJlbnQuZ2V0KGUuaWQpO3AmJnZvaWQgMCE9PXQmJnQhPT1kb2N1bWVudC5hY3RpdmVFbGVtZW50JiZ0LmZvY3VzKCl9KSxbcF0pLEQ9KDAsaS51c2VSZWYpKCksTz0oMCxpLnVzZUNhbGxiYWNrKSgoKGUsdCk9PntCKGUpLCJudW1iZXIiPT10eXBlb2YgdD8oY2xlYXJUaW1lb3V0KEQuY3VycmVudCksRC5jdXJyZW50PXNldFRpbWVvdXQoKCgpPT5WKGUpKSx0KSk6VihlKX0pLFtCLFZdKSxOPSgwLGkudXNlQ2FsbGJhY2spKChlPT57Ynx8ZS5kaXNhYmxlZHx8KFMoZSksVyhlKXx8TyhlKSl9KSxbYixTLFcsT10pLEw9KDAsYy51c2VUYWJzS2V5Ym9hcmROYXZpZ2F0aW9uKSh7aXNSdGw6eSxpdGVtczpuLGFjdGl2YXRpb25UeXBlOmYscHJldmVudERlZmF1bHRJZkhhbmRsZWQ6dixzdG9wUHJvcGFnYXRpb25JZkhhbmRsZWQ6Zyxsb29wOkksb25BY3RpdmF0ZTpOLGlzSGlnaGxpZ2h0ZWQ6VyxvbkhpZ2hsaWdodDpPLGlzQ29sbGFwc2VkOmssb3JpZW50YXRpb246RX0pOygwLGkudXNlRWZmZWN0KSgoKCk9PntUfHx2b2lkIDAhPT1LJiZCKEspfSksW0ssVF0pLCgwLGkudXNlRWZmZWN0KSgoKCk9PntffHxCKHZvaWQgMCl9KSxbX10pLCgwLGkudXNlRWZmZWN0KSgoKCk9PigpPT5jbGVhclRpbWVvdXQoRC5jdXJyZW50KSksW10pO2NvbnN0IFA9Qz8uYWRkaXRpb25hbFNjcm9sbD8/MCxbcSxYXT0oMCxhLnVzZUtlZXBBY3RpdmVJdGVtSW50b1ZpZXcpKHsuLi5DLHZpc2liaWxpdHlEZXRlY3Rpb25PZmZzZXRJbmxpbmU6UCsyNCxzbmFwVG9NaWRkbGU6ITAsYWN0aXZlSXRlbTp6Pz9LLGdldEtleTooMCxpLnVzZUNhbGxiYWNrKSgoZT0+ZS5pZCksW10pfSksVT0oMCxpLnVzZUNhbGxiYWNrKSgoKGUsdCk9PntudWxsIT09dD94LmN1cnJlbnQuc2V0KGUuaWQsdCk6eC5jdXJyZW50LmRlbGV0ZShlLmlkKSxYKGUsdCl9KSxbWF0pLHtmaXJzdEVkZ2VJdGVtSW5kZXg6RyxsYXN0RWRnZUl0ZW1JbmRleDpqfT1mdW5jdGlvbihlLHQpe2xldCBuLGk7Zm9yKGxldCBvPTA7bzxlLmxlbmd0aDtvKyspe2NvbnN0IHI9ZS5sZW5ndGgtKG8rMSkscz12b2lkIDAhPT10JiZ0KGVbcl0pO2lmKCFlW29dLmRpc2FibGVkJiZ2b2lkIDA9PT1uJiYobj1vKSwhZVtyXS5kaXNhYmxlZCYmIXMmJnZvaWQgMD09PWkmJihpPXIpLHZvaWQgMCE9PW4mJnZvaWQgMCE9PWkpYnJlYWt9cmV0dXJue2ZpcnN0RWRnZUl0ZW1JbmRleDpuLGxhc3RFZGdlSXRlbUluZGV4Oml9fShuLGspO3JldHVybnt0YWJzQmluZGluZ3M6bi5tYXAoKChlLHQpPT57Y29uc3Qgbj1XKGUpLGk9UihlKSxvPWUuZGlzYWJsZWQ/P2I/PyExLHM9MT09PUE/Xz9uOnQ9PT1HfHx0PT09ajpfP246aTtyZXR1cm57Li4ucihlLmlkLHMsaSxlLnRhYnBhbmVsSWQsbyxILGVbImFyaWEtbGFiZWwiXSx3KSxoaWdobGlnaHRlZDpuLGFjdGl2ZTppLGhhbmRsZUl0ZW1SZWY6VX19KSksdGFibGlzdEJpbmRpbmc6ey4uLm8odCxkLGIsaCxtLEgpLG9uQmx1cjpGLm9uQmx1cixvbkZvY3VzOigwLHMuY3JlYXRlU2FmZU11bHRpY2FzdEV2ZW50SGFuZGxlcikoRi5vbkZvY3VzLChlPT57bGV0IHQ9bnVsbDtmb3IoY29uc3RbaSxvXW9mIHguY3VycmVudC5lbnRyaWVzKCkpaWYoZS50YXJnZXQ9PT1vKXt0PW4uZmluZCgoZT0+ZS5pZD09PWkpKT8/bnVsbDticmVha310JiYhVyh0KSYmKCJhdXRvbWF0aWMiPT09ZiYmayYmIWsodCk/Tih0KTpPKHQpKX0pKSxvbktleURvd246TH0sc2Nyb2xsV3JhcEJpbmRpbmc6e3JlZjpxfSxvbkFjdGl2YXRlOk4sb25IaWdobGlnaHQ6Tyxpc0hpZ2hsaWdodGVkOld9fX0sODQ2ODU4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZVRhYnNNYWluSGFuZGxlcnM6KCk9Pmd9KTt2YXIgaT1uKDc3OTQ3NCksbz1uKDgzMzkwMykscj1uKDQxODM4Nikscz1uKDgwOTQzNiksbD1uKDcxNzkzMik7dmFyIGE9big4NjgzMzkpLGM9big0NTQxNzQpLHU9big0NTY0ODcpLGQ9bigzMTk2OSksZj1uKDc2MzU0OSksYj1uKDU2NzI2KSxoPW4oNTI5NDExKSxtPW4oNzE5NDI1KSxwPW4oNTg2MjIzKTt2YXIgdj1uKDM5NjQzMSk7ZnVuY3Rpb24gZyhlLHQsbil7CmNvbnN0e2lkOmcsaXRlbXM6SSxhY3RpdmF0aW9uVHlwZTpDLG9yaWVudGF0aW9uOlI9Imhvcml6b250YWwiLGRpc2FibGVkOlMsb25BY3RpdmF0ZTprLGlzQWN0aXZlOnksb3ZlcmZsb3dCZWhhdmlvdXI6TSxlbmFibGVBY3RpdmVTdGF0ZVN0eWxlczpILHRhYmxpc3RMYWJlbElkOkEsdGFibGlzdExhYmVsOncscHJldmVudERlZmF1bHRJZktleWJvYXJkQWN0aW9uSGFuZGxlZDpULHNpemU6RSxzdG9wUHJvcGFnYXRpb25JZktleWJvYXJkQWN0aW9uSGFuZGxlZDp4LGtleWJvYXJkTmF2aWdhdGlvbkxvb3A6eixkZWZhdWx0S2V5Ym9hcmRGb2N1czpCLGZvY3VzYWJsZUl0ZW1BdHRyaWJ1dGVzOl99PXQsRj0oMCxpLnVzZU1lbW8pKCgoKT0+KDAsdi50cmFuc2Zvcm1UYWJzV2l0aENvdW50ZXJzKShJLFMsRSkpLFtJLFMsRV0pLEs9KDAsci51c2VNb2JpbGVUb3VjaFN0YXRlKSgpLFc9ZnVuY3Rpb24oZSl7Y29uc3QgdD0oMCxsLnVzZVNhZmVNYXRjaE1lZGlhKShzWyJtZWRpYS1tZi1waG9uZS1sYW5kc2NhcGUiXSwhMCksbj0oMCxyLnVzZU1vYmlsZVRvdWNoU3RhdGUpKCk7cmV0dXJuIGU/PyhufHwhdD8ic2Nyb2xsIjoiY29sbGFwc2UiKX0oTSksVj0oMCxpLnVzZVJlZikoITEpLEQ9KDAsaS51c2VDYWxsYmFjaykoKGU9PmUuaWQpLFtdKSxPPUg/PyFLLE49KDAsYi51c2VGYWRlSW5Db250ZXh0KSgpLHt2aXNpYmxlSXRlbXM6TCxoaWRkZW5JdGVtczpQLGNvbnRhaW5lclJlZkNhbGxiYWNrOnEsaW5uZXJDb250YWluZXJSZWZDYWxsYmFjazpYLG1vcmVCdXR0b25SZWY6VSxzZXRJdGVtUmVmOkcsaXRlbXNNZWFzdXJlbWVudHM6an09KDAsYS51c2VDb2xsYXBzaWJsZSkoRixELHkpLEo9KDAscC51c2VQcmV2aW91cykoai5jdXJyZW50Py5jb250YWluZXJXaWR0aCk/PzAsUT0oMCxoLnVzZUlzTm9uRmlyc3RSZW5kZXIpKCksWT1qLmN1cnJlbnQ/LmNvbnRhaW5lcldpZHRoPz8wO2xldCBaPSExO2ouY3VycmVudCYmUSYmKFo9ZnVuY3Rpb24oZSx0LG4saSxvKXtpZigiY29sbGFwc2UiIT09aSlyZXR1cm4hMDtjb25zdCByPWZ1bmN0aW9uKGUsdCxuKXtjb25zdCBpPWUuZmlsdGVyKChlPT50LmZpbmQoKHQ9PnQuaWQ9PT1lWzBdKSkpKTtyZXR1cm4gdC5sZW5ndGg+MD9pWzBdWzFdK246MH0oQXJyYXkuZnJvbShlLndpZHRoc01hcC5lbnRyaWVzKCkpLHQsbykscz1lLm1vcmVCdXR0b25XaWR0aD8/MDtsZXQgbD1mdW5jdGlvbihlLHQpe3JldHVybiBlLnJlZHVjZSgoKGUsbik9PmUrKHQuZ2V0KG4uaWQpPz8wKSksMCl9KG4sZS53aWR0aHNNYXApO3JldHVybiBsKz10Lmxlbmd0aD4wP3M6MCxmdW5jdGlvbihlLHQsbixpKXtyZXR1cm4gMCE9PWU/dC1uPGUmJnQtbj5pOm48dH0ocixlLmNvbnRhaW5lcldpZHRoLGwsbyl9KGouY3VycmVudCxQLEwsVyxuLmdhcD8/MCl8fDA9PT1ZKTtjb25zdCAkPSgwLG0udXNlUmVzaXplT2JzZXJ2ZXIpKCgoW2VdKT0+e3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKCk9PntRJiZaJiZlLmNvbnRlbnRSZWN0LndpZHRoPT09SiYmTigpfSkpfSkpLGVlPSJjb2xsYXBzZSI9PT1XP0w6Rix0ZT0oMCxpLnVzZU1lbW8pKCgoKT0+ImNvbGxhcHNlIj09PVc/UDpbXSksW1csUF0pLG5lPSgwLGkudXNlQ2FsbGJhY2spKChlPT50ZS5pbmNsdWRlcyhlKSksW3RlXSkse2lzT3BlbmVkOmllLG9wZW46b2UsY2xvc2U6cmUsb25CdXR0b25DbGljazpzZX09KDAsdS51c2VEaXNjbG9zdXJlKSh7aWQ6ZyxkaXNhYmxlZDpTfSkse3RhYnNCaW5kaW5nczpsZSx0YWJsaXN0QmluZGluZzphZSxzY3JvbGxXcmFwQmluZGluZzpjZSxvbkFjdGl2YXRlOnVlLG9uSGlnaGxpZ2h0OmRlLGlzSGlnaGxpZ2h0ZWQ6ZmV9PSgwLGMudXNlVGFicykoe2lkOmcsaXRlbXM6Wy4uLmVlLC4uLnRlXSxhY3RpdmF0aW9uVHlwZTpDLG9yaWVudGF0aW9uOlIsZGlzYWJsZWQ6Uyx0YWJsaXN0TGFiZWxJZDpBLHRhYmxpc3RMYWJlbDp3LHByZXZlbnREZWZhdWx0SWZLZXlib2FyZEFjdGlvbkhhbmRsZWQ6VCxzY3JvbGxJbnRvVmlld09wdGlvbnM6bi5zY3JvbGxJbnRvVmlld09wdGlvbnMsb25BY3RpdmF0ZTprLGlzQWN0aXZlOnksaXNDb2xsYXBzZWQ6bmUsaXNSdGw6bi5pc1J0bCxpc0Rpc2Nsb3N1cmVPcGVuZWQ6aWUsaXNSYWRpb0dyb3VwOm4uaXNSYWRpb0dyb3VwLHN0b3BQcm9wYWdhdGlvbklmS2V5Ym9hcmRBY3Rpb25IYW5kbGVkOngsa2V5Ym9hcmROYXZpZ2F0aW9uTG9vcDp6LGRlZmF1bHRLZXlib2FyZEZvY3VzOkIsZm9jdXNhYmxlSXRlbUF0dHJpYnV0ZXM6X30pLGJlPXRlLmZpbmQoZmUpLGhlPSgwLGkudXNlQ2FsbGJhY2spKCgoKT0+e2NvbnN0IGU9Ri5maW5kKHkpO2UmJmRlKGUpfSksW2RlLHksRl0pLG1lPSgwLGkudXNlQ2FsbGJhY2spKCgoKT0+e3JlKCksaGUoKSxWLmN1cnJlbnQ9ITB9KSxbcmUsaGVdKSxwZT0oMCxpLnVzZUNhbGxiYWNrKSgoKCk9PntiZSYmKHVlKGJlKSxkZShiZSwyNTApKX0pLFt1ZSxkZSxiZV0pO2NlLnJlZj0oMCxkLnVzZU1lcmdlZFJlZnMpKFskLGNlLnJlZixxXSksYWUucmVmPSgwLGQudXNlTWVyZ2VkUmVmcykoW2FlLnJlZixYXSksYWUub25LZXlEb3duPSgwLG8uY3JlYXRlU2FmZU11bHRpY2FzdEV2ZW50SGFuZGxlcikoKDAsZi51c2VLZXlib2FyZEV2ZW50SGFuZGxlcikoWygwLGYudXNlS2V5Ym9hcmRDbG9zZSkoaWUsbWUpLCgwLGYudXNlS2V5Ym9hcmRBY3Rpb25IYW5kbGVyKShbMTMsMzJdLHBlLCgwLGkudXNlQ2FsbGJhY2spKCgoKT0+Qm9vbGVhbihiZSkpLFtiZV0pKV0sVCksYWUub25LZXlEb3duKTtjb25zdCB2ZT0oMCxpLnVzZUNhbGxiYWNrKSgoZT0+e1YuY3VycmVudD0hMCxzZShlKX0pLFtWLHNlXSksZ2U9KDAsaS51c2VDYWxsYmFjaykoKGU9PntlJiZ1ZShlKX0pLFt1ZV0pO3JldHVybigwLGkudXNlRWZmZWN0KSgoKCk9PntWLmN1cnJlbnQ/Vi5jdXJyZW50PSExOmJlJiYhaWU/b2UoKTohYmUmJmllJiZyZSgpfSksW2JlLGllLG9lLHJlXSkse2VuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOk8sbW9yZUJ1dHRvblJlZjpVLHNldEl0ZW1SZWY6RyxnZXRCaW5kaW5nczplPT5sZS5maW5kKCh0PT50LmlkPT09ZS5pZCkpLGhhbmRsZU1vcmVCdXR0b25DbGljazp2ZSwKaGFuZGxlQ29sbGFwc2VkSXRlbUNsaWNrOmdlLHNjcm9sbFdyYXBCaW5kaW5nOmNlLG92ZXJmbG93QmVoYXZpb3VyOlcsdGFibGlzdEJpbmRpbmc6YWUsdmlzaWJsZVRhYnM6ZWUsaGlkZGVuVGFiczp0ZSxoYW5kbGVBY3RpdmF0ZTp1ZSxpc01vYmlsZVRvdWNoOkssZ2V0SXRlbUlkOkQsaXNEaXNjbG9zdXJlT3BlbmVkOmllLGlzSGlnaGxpZ2h0ZWQ6ZmUsY2xvc2VEaXNjbG9zdXJlOnJlfX19LDM5NjQzMShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjb3VudGVyU2l6ZUZyb21TcXVhcmVUYWJzU2l6ZTooKT0+cyxnZXRUYWJDb3VudGVyOigpPT5yLHRyYW5zZm9ybVRhYnNXaXRoQ291bnRlcnM6KCk9Pmx9KTt2YXIgaT1uKDc3OTQ3NCksbz1uKDcyMTkxMCk7ZnVuY3Rpb24gcih7Y291bnQ6ZSxjb2xvcjp0PSJkYW5nZXIiLHNpemU6bj0ieHNtYWxsIixkaXNhYmxlZDpyfSl7cmV0dXJuIGkuY3JlYXRlRWxlbWVudChvLkNvdW50ZXIseyJhcmlhLWxhYmVsIjoiVGFiIGNvdW50ZXIiLGNvdW50OmUsc2l6ZTpuLGNvbG9yOnQsYm9yZGVyQ29sb3I6InByaW1hcnkiLGRpc2FibGVkOnJ9KX1mdW5jdGlvbiBzKGUpe3JldHVybnt4c21hbGw6InhzbWFsbCIsc21hbGw6InNtYWxsIixtZWRpdW06Im1lZGl1bSIsbWVkaXVtV2l0aFNtYWxsRm9udDoibWVkaXVtIix4bGFyZ2U6ImxhcmdlIn1bZV19ZnVuY3Rpb24gbChlLHQsbil7cmV0dXJuIGUubWFwKChlPT57Y29uc3QgaT1lLmNvdW50ZXI7cmV0dXJuIGk/ey4uLmUsZW5kVXBwZXJTbG90OnIoe2NvdW50OmkuY291bnQsY29sb3I6aS5jb2xvcixzaXplOnMobiksZGlzYWJsZWQ6dH0pLGNvdW50ZXI6dm9pZCAwfTplfSkpfX0sMjEyMTI1KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIGksbyxyLHMsbDtuLmQodCx7VGFiTmFtZXM6KCk9Pmx9KSxmdW5jdGlvbihlKXtlW2UuQWN0aXZlPTBdPSJBY3RpdmUiLGVbZS5FZGdlcz0xXT0iRWRnZXMifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuSG9yaXpvbnRhbD0iaG9yaXpvbnRhbCIsZS5WZXJ0aWNhbD0idmVydGljYWwifShvfHwobz17fSkpLGZ1bmN0aW9uKGUpe2UuQXV0b21hdGljPSJhdXRvbWF0aWMiLGUuTWFudWFsPSJtYW51YWwifShyfHwocj17fSkpLGZ1bmN0aW9uKGUpe2UuQ29sbGFwc2U9ImNvbGxhcHNlIixlLlNjcm9sbD0ic2Nyb2xsIixlLldyYXA9IndyYXAiLGUuTm9uZT0ibm9uZSJ9KHN8fChzPXt9KSksZnVuY3Rpb24oZSl7ZS5TcXVhcmVCdXR0b25UYWJzPSJzcXVhcmUtYnV0dG9uLXRhYnMiLGUuVW5kZXJsaW5lQnV0dG9uVGFicz0idW5kZXJsaW5lLWJ1dHRvbi10YWJzIixlLlVuZGVybGluZUFuY2hvclRhYnM9InVuZGVybGluZS1hbmNob3ItdGFicyIsZS5Sb3VuZEFuY2hvclRhYnM9InJvdW5kLWFuY2hvci10YWJzIixlLlJvdW5kQnV0dG9uVGFicz0icm91bmQtYnV0dG9uLXRhYnMiLGUuTGlnaHRCdXR0b25UYWJzPSJsaWdodC1idXR0b24tdGFicyJ9KGx8fChsPXt9KSl9LDIzNDI5MihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0LG49MCl7Y29uc3QgaT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gaS50b3Atby50b3A+PTAmJm8uYm90dG9tLWkuYm90dG9tPj0wJiZpLmxlZnQtby5sZWZ0Pj1uJiZvLnJpZ2h0LWkucmlnaHQ+PW59bi5kKHQse2lzRWxlbWVudEluVmlldzooKT0+aX0pfSw4NjY3NDMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7U2Nyb2xsSW50b1ZpZXdIZWxwZXI6KCk9PmN9KTt2YXIgaT1uKDk1MDE5NCksbz1uKDIzNDI5Mik7Y29uc3Qgcj17ZHVyYXRpb246MjAwLGFkZGl0aW9uYWxTY3JvbGw6MH0scz17dmVydGljYWw6e3Njcm9sbFNpemU6InNjcm9sbEhlaWdodCIsY2xpZW50U2l6ZToiY2xpZW50SGVpZ2h0IixzdGFydDoidG9wIixlbmQ6ImJvdHRvbSIsc2l6ZToiaGVpZ2h0In0saG9yaXpvbnRhbDp7c2Nyb2xsU2l6ZToic2Nyb2xsV2lkdGgiLGNsaWVudFNpemU6ImNsaWVudFdpZHRoIixzdGFydDoibGVmdCIsZW5kOiJyaWdodCIsc2l6ZToid2lkdGgifX07ZnVuY3Rpb24gbChlLHQpe2NvbnN0IG49c1tlXTtyZXR1cm4gdFtuLnNjcm9sbFNpemVdPnRbbi5jbGllbnRTaXplXX1mdW5jdGlvbiBhKGUsdCxuLG8scixsKXtjb25zdCBhPWZ1bmN0aW9uKGUsdCxuLGk9MCl7Y29uc3Qgbz1zW2VdO3JldHVybntzdGFydDotMSppLG1pZGRsZTotMSooTWF0aC5mbG9vcihuW28uc2l6ZV0vMiktTWF0aC5mbG9vcih0W28uc2l6ZV0vMikpLGVuZDotMSoobltvLnNpemVdLXRbby5zaXplXSkraX19KGUsbyxyLGwuYWRkaXRpb25hbFNjcm9sbCk7bGV0IGM9MDtpZihsLnNuYXBUb01pZGRsZXx8ZnVuY3Rpb24oZSx0LG4pe2NvbnN0IGk9c1tlXTtyZXR1cm4gdFtpLnN0YXJ0XTxuW2kuc3RhcnRdLW5baS5zaXplXS8yfHx0W2kuZW5kXT5uW2kuZW5kXStuW2kuc2l6ZV0vMn0oZSxvLHIpKWM9YS5taWRkbGU7ZWxzZXtjb25zdCB0PWZ1bmN0aW9uKGUsdCxuLGk9MCl7Y29uc3Qgbz1zW2VdLHI9dFtvLnN0YXJ0XStNYXRoLmZsb29yKHRbby5zaXplXS8yKSxsPW5bby5zdGFydF0rTWF0aC5mbG9vcihuW28uc2l6ZV0vMik7cmV0dXJue3N0YXJ0OnRbby5zdGFydF0tbltvLnN0YXJ0XS1pLG1pZGRsZTpyLWwsZW5kOnRbby5lbmRdLW5bby5lbmRdK2l9fShlLG8scixsLmFkZGl0aW9uYWxTY3JvbGwpLG49ZnVuY3Rpb24oZSl7Y29uc3R7c3RhcnQ6dCxtaWRkbGU6bixlbmQ6aX09ZSxvPW5ldyBNYXAoW1tNYXRoLmFicyh0KSx7a2V5OiJzdGFydCIsdmFsdWU6TWF0aC5zaWduKHQpfV0sW01hdGguYWJzKG4pLHtrZXk6Im1pZGRsZSIsdmFsdWU6TWF0aC5zaWduKG4pfV0sW01hdGguYWJzKGkpLHtrZXk6ImVuZCIsdmFsdWU6TWF0aC5zaWduKGkpfV1dKSxyPU1hdGgubWluKC4uLm8ua2V5cygpKTtyZXR1cm4gby5nZXQocil9KHQpO2M9dm9pZCAwIT09bj9hW24ua2V5XTowfXJldHVybiBsLmFsaWduJiYoYz1hW2wuYWxpZ25dKSwoMCxpLnNjcm9sbFRvKSh7Li4ubCx0YXJnZXQ6dCx0YXJnZXRSZWN0Om8sd3JhcDpuLHdyYXBSZWN0OnIsYWRkaXRpb25hbFNjcm9sbDpjLGRpcmVjdGlvbjplfSl9Y2xhc3MgY3sKY29uc3RydWN0b3IoZT1udWxsKXt0aGlzLl9jb250YWluZXI9bnVsbCx0aGlzLl9sYXN0U2Nyb2xsZWRFbGVtZW50PW51bGwsdGhpcy5fc3RvcFZlcnRpY2FsU2Nyb2xsPW51bGwsdGhpcy5fc3RvcEhvcml6b250YWxTY3JvbGw9bnVsbCx0aGlzLl9jb250YWluZXI9ZX1zY3JvbGxUbyhlLHQ9cil7aWYobnVsbCE9PXRoaXMuX2NvbnRhaW5lciYmbnVsbCE9PWUmJiEoMCxvLmlzRWxlbWVudEluVmlldykoZSx0aGlzLl9jb250YWluZXIsdC52aXNpYmlsaXR5RGV0ZWN0aW9uT2Zmc2V0SW5saW5lKSl7Y29uc3Qgbj1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGk9dGhpcy5fY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3RoaXMuc3RvcFNjcm9sbCgpLGwoInZlcnRpY2FsIix0aGlzLl9jb250YWluZXIpJiYodGhpcy5fc3RvcFZlcnRpY2FsU2Nyb2xsPWEoInZlcnRpY2FsIixlLHRoaXMuX2NvbnRhaW5lcixuLGksdGhpcy5fbW9kaWZ5T3B0aW9ucygidmVydGljYWwiLHQpKSksbCgiaG9yaXpvbnRhbCIsdGhpcy5fY29udGFpbmVyKSYmKHRoaXMuX3N0b3BIb3Jpem9udGFsU2Nyb2xsPWEoImhvcml6b250YWwiLGUsdGhpcy5fY29udGFpbmVyLG4saSx0aGlzLl9tb2RpZnlPcHRpb25zKCJob3Jpem9udGFsIix0KSkpfXRoaXMuX2xhc3RTY3JvbGxlZEVsZW1lbnQ9ZX1zY3JvbGxUb0xhc3RFbGVtZW50KGUpe3RoaXMuc2Nyb2xsVG8odGhpcy5fbGFzdFNjcm9sbGVkRWxlbWVudCxlKX1zdG9wU2Nyb2xsKCl7bnVsbCE9PXRoaXMuX3N0b3BWZXJ0aWNhbFNjcm9sbCYmdGhpcy5fc3RvcFZlcnRpY2FsU2Nyb2xsKCksbnVsbCE9PXRoaXMuX3N0b3BIb3Jpem9udGFsU2Nyb2xsJiZ0aGlzLl9zdG9wSG9yaXpvbnRhbFNjcm9sbCgpfWdldENvbnRhaW5lcigpe3JldHVybiB0aGlzLl9jb250YWluZXJ9c2V0Q29udGFpbmVyKGUpe3RoaXMuX2NvbnRhaW5lcj1lLHRoaXMuX2NvbnRhaW5lcj8uY29udGFpbnModGhpcy5fbGFzdFNjcm9sbGVkRWxlbWVudCl8fCh0aGlzLl9sYXN0U2Nyb2xsZWRFbGVtZW50PW51bGwpfWRlc3Ryb3koKXt0aGlzLnN0b3BTY3JvbGwoKSx0aGlzLl9jb250YWluZXI9bnVsbCx0aGlzLl9sYXN0U2Nyb2xsZWRFbGVtZW50PW51bGx9X2hhbmRsZVNjcm9sbEVuZChlKXsidmVydGljYWwiPT09ZT90aGlzLl9zdG9wVmVydGljYWxTY3JvbGw9bnVsbDp0aGlzLl9zdG9wSG9yaXpvbnRhbFNjcm9sbD1udWxsfV9tb2RpZnlPcHRpb25zKGUsdCl7cmV0dXJuIE9iamVjdC5hc3NpZ24oe30sdCx7b25TY3JvbGxFbmQ6KCk9Pnt0aGlzLl9oYW5kbGVTY3JvbGxFbmQoZSksdm9pZCAwIT09dC5vblNjcm9sbEVuZCYmdC5vblNjcm9sbEVuZCgpfX0pfX19LDk1MDE5NChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtzY3JvbGxUbzooKT0+b30pO3ZhciBpPW4oMjE4ODE0KTtmdW5jdGlvbiBvKGUpe2NvbnN0e2FkZGl0aW9uYWxTY3JvbGw6dD0wLGR1cmF0aW9uOm49aS5kdXIsZnVuYzpvPWkuZWFzaW5nRnVuYy5lYXNlSW5PdXRDdWJpYyxvblNjcm9sbEVuZDpyLHRhcmdldDpzLHdyYXA6bCxkaXJlY3Rpb246YT0idmVydGljYWwifT1lO2xldHt0YXJnZXRSZWN0OmMsd3JhcFJlY3Q6dX09ZTtjPWM/P3MuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdT11Pz9sLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2NvbnN0IGQ9KCJ2ZXJ0aWNhbCI9PT1hP2MudG9wLXUudG9wOmMubGVmdC11LmxlZnQpK3QsZj0idmVydGljYWwiPT09YT8ic2Nyb2xsVG9wIjoic2Nyb2xsTGVmdCIsYj1sP2xbZl06MDtsZXQgaCxtPTA7cmV0dXJuIG09d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoZnVuY3Rpb24gZSh0KXtsZXQgaTtpZihoP2k9dC1oOihpPTAsaD10KSxpPj1uKXJldHVybiBsW2ZdPWIrZCx2b2lkKHImJnIoKSk7Y29uc3Qgcz1iK2QqbyhpL24pO2xbZl09TWF0aC5mbG9vcihzKSxtPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZSl9KSksZnVuY3Rpb24oKXt3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUobSksciYmcigpfX19fV0pOw=="}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/logo.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.338Z","timestamp":1785154589338,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/logo.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\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 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1459,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-27T14:18:32.432843Z","times_seen":144288,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":51,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":51,"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"salesiq.zohopublic.eu/visitor/v2/channels/website?widgetcode=siqe64b21f821497a735abab8e07a2e315f1e89d5d86551681d580f230d5686bfd83e13d8d84c1f3d060c1ee86dedca12de\u0026internal_channel_req=true\u0026embed_version=v2\u0026language_api=true\u0026browser_language=en\u0026current_domain=https%3A%2F%2Fpersimmontrades.com\u0026pagetitle=PERSIMMON%20TRADE%20-%20Best%20choice%20for%20cryptocurrency%20trading.\u0026include_fields=avuid","fqdn":"salesiq.zohopublic.eu","domain":"zohopublic.eu","tld":"eu"},"ip":{"addr":"185.230.212.19","port":443,"asn":205111,"as":"ZOHO Corporation B.V","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.094Z","timestamp":1785154590094,"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":"zohopublic.eu","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Wed, 22 Jul 2026 15:39:57 GMT","end":"Tue, 20 Oct 2026 15:39:56 GMT"},"fingerprint":{"sha1":"EC:87:81:59:41:B7:C6:78:6B:35:B6:6A:10:96:81:9D:4B:0A:B8:97","sha256":"BC:72:33:84:A6:B4:ED:D6:2F:41:B3:66:B9:29:81:56:15:31:33:A3:17:8D:61:AC:88:BA:16:52:BC:3B:2A:A9"}}},"request":{"raw":"OPTIONS /visitor/v2/channels/website?widgetcode=siqe64b21f821497a735abab8e07a2e315f1e89d5d86551681d580f230d5686bfd83e13d8d84c1f3d060c1ee86dedca12de\u0026internal_channel_req=true\u0026embed_version=v2\u0026language_api=true\u0026browser_language=en\u0026current_domain=https%3A%2F%2Fpersimmontrades.com\u0026pagetitle=PERSIMMON%20TRADE%20-%20Best%20choice%20for%20cryptocurrency%20trading.\u0026include_fields=avuid HTTP/1.1\r\nHost: salesiq.zohopublic.eu\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: GET\r\nAccess-Control-Request-Headers: x-siq-embed-version\r\nReferer: https://persimmontrades.com/\r\nOrigin: https://persimmontrades.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/2 200 \r\nserver: ZGS\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-length: 0\r\nset-cookie: zalb_34e30bb8af=8dcfa58411c0ae7aac5e9d107001b186; Path=/; Secure; HttpOnly\r\naccess-control-expose-headers: Waf-Encryption-Key\r\nx-content-type-options: nosniff\r\nencoding: UTF-8\r\naccess-control-allow-headers: Content-Type,x-siq-internal-channel,Waf-Encryption-Key,x-siq-embed-version,X-SIQ-Channel,x-siq-redirection\r\nx-frame-options: SAMEORIGIN\r\naccess-control-allow-origin: https://persimmontrades.com\r\naccess-control-allow-methods: GET\r\naccess-control-allow-credentials: true\r\nstrict-transport-security: max-age=64072000; includeSubDomains; preload\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":0,"size_decoded":666,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":77,"timings":{"blocked":0,"dns":0,"connect":22,"send":0,"wait":30,"receive":0,"ssl":25},"alerts":{"ids":null,"analyzer":[{"sensor_name":"ultradns","sensor_type":"DNS","title":"DigiCert UltraDNS","description":"DigiCert UltraDNS","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"salesiq.zohopublic.eu","verdict":"malicious","severity":"medium","comment":"","link":"https://vercara.digicert.com/ultra-dns-public","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/61495.37ee7d182cf84caa7681.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.558Z","timestamp":1785154590558,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/61495.37ee7d182cf84caa7681.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-7f91\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a7ab3d0658ef132434be83e031b64892\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":32657,"size_decoded":11309,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"1101547aa0a5f1429817d5e491a4287b","sha1":"0bb8f75c93fe64e583a0bc2f0859ff602e1d94a7","sha256":"1f91a265530e9f4142c3b135c93094b7746dba4d3ff42b4ba49d8690c98c7597","sha512":"9f661d05439bbe5f87c7b8580707ce9d517a82a994773de68693c0ba9d653c3bf2565b248d08253aecfc1781e4706198fc30eab02cf96336de418992131d8497","ssdeep":"768:VbtJRlpt8ZUxC6nEFMQQE0rmtel4/0Q+xg23ba1Sj7Fk+1/1NB2VVR4m:VbtvCZLu/004/7+Gsba1SaU2F","tlshash":"cbe2e55632357a3601ef508b58fb0043e23a64486114992dfc7cdeec6ebdd8a623657f","first_seen":"2026-07-25T03:24:57.451516Z","last_seen":"2026-07-27T14:22:59.551008Z","times_seen":283,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s2MTQ5NSw2MzU5NV0sezgwMzI4NyhlKXtlLmV4cG9ydHM9eyJkZWZhdWx0LWRyYXdlci1taW4tdG9wLWRpc3RhbmNlIjoiMTAwcHgiLHdyYXA6IndyYXAtaWlpMTE4b04iLHBvc2l0aW9uQm90dG9tOiJwb3NpdGlvbkJvdHRvbS1paWkxMThvTiIsYmFja2Ryb3A6ImJhY2tkcm9wLWlpaTExOG9OIixkcmF3ZXI6ImRyYXdlci1paWkxMThvTiIscG9zaXRpb25MZWZ0OiJwb3NpdGlvbkxlZnQtaWlpMTE4b04ifX0sNzUxODYzKGUpe2UuZXhwb3J0cz17d3JhcDoid3JhcC1HaERqWHpCeCIsaW5wdXQ6ImlucHV0LUdoRGpYekJ4Iixib3g6ImJveC1HaERqWHpCeCIsaG92ZXJEb3Q6ImhvdmVyRG90LUdoRGpYekJ4IixyZWQ6InJlZC1HaERqWHpCeCIsYmx1ZToiYmx1ZS1HaERqWHpCeCIsZ3JlZW46ImdyZWVuLUdoRGpYekJ4IixvcmFuZ2U6Im9yYW5nZS1HaERqWHpCeCIscHVycGxlOiJwdXJwbGUtR2hEalh6QngiLGN5YW46ImN5YW4tR2hEalh6QngiLHBpbms6InBpbmstR2hEalh6QngiLGxhcmdlOiJsYXJnZS1HaERqWHpCeCIscGlja2VyRG90OiJwaWNrZXJEb3QtR2hEalh6QngifX0sNTU4OTcyKGUpe2UuZXhwb3J0cz17d3JhcHBlcjoid3JhcHBlci1WbmVRVm9OdiIsc2VsZWN0b3I6InNlbGVjdG9yLVZuZVFWb052IixhcnJvd0xlZnQ6ImFycm93TGVmdC1WbmVRVm9OdiIsY29sb3JTZWxlY3RCdXR0b246ImNvbG9yU2VsZWN0QnV0dG9uLVZuZVFWb052Iixwb3B1cDoicG9wdXAtVm5lUVZvTnYifX0sOTE2MjYoZSl7ZS5leHBvcnRzPXtpdGVtOiJpdGVtLXZUbThPMExNIixpbnRlcmFjdGl2ZToiaW50ZXJhY3RpdmUtdlRtOE8wTE0iLGhvdmVyZWQ6ImhvdmVyZWQtdlRtOE8wTE0iLGRpc2FibGVkOiJkaXNhYmxlZC12VG04TzBMTSIsYWN0aXZlOiJhY3RpdmUtdlRtOE8wTE0iLHNob3J0Y3V0OiJzaG9ydGN1dC12VG04TzBMTSIsbm9ybWFsOiJub3JtYWwtdlRtOE8wTE0iLGJpZzoiYmlnLXZUbThPMExNIixpY29uQ2VsbDoiaWNvbkNlbGwtdlRtOE8wTE0iLGljb246Imljb24tdlRtOE8wTE0iLGNvbnRlbnQ6ImNvbnRlbnQtdlRtOE8wTE0iLGxhYmVsOiJsYWJlbC12VG04TzBMTSIsY2hlY2tlZDoiY2hlY2tlZC12VG04TzBMTSIsdG9vbGJveDoidG9vbGJveC12VG04TzBMTSIsc2hvd1Rvb2xib3hPbkhvdmVyOiJzaG93VG9vbGJveE9uSG92ZXItdlRtOE8wTE0iLGFycm93SWNvbjoiYXJyb3dJY29uLXZUbThPMExNIixzdWJNZW51OiJzdWJNZW51LXZUbThPMExNIixpbnZpc2libGVIb3RrZXk6ImludmlzaWJsZUhvdGtleS12VG04TzBMTSJ9fSwxMDc5NjYoZSl7ZS5leHBvcnRzPXtpdGVtOiJpdGVtLWQ5akxPTHJSIixlbXB0eUljb25zOiJlbXB0eUljb25zLWQ5akxPTHJSIixsb2FkaW5nOiJsb2FkaW5nLWQ5akxPTHJSIixkaXNhYmxlZDoiZGlzYWJsZWQtZDlqTE9MclIiLGludGVyYWN0aXZlOiJpbnRlcmFjdGl2ZS1kOWpMT0xyUiIsaG92ZXJlZDoiaG92ZXJlZC1kOWpMT0xyUiIsbm9ybWFsOiJub3JtYWwtZDlqTE9MclIiLGJpZzoiYmlnLWQ5akxPTHJSIixpY29uOiJpY29uLWQ5akxPTHJSIixsYWJlbDoibGFiZWwtZDlqTE9MclIiLHRpdGxlOiJ0aXRsZS1kOWpMT0xyUiIsbmVzdGVkOiJuZXN0ZWQtZDlqTE9MclIiLHNob3J0Y3V0OiJzaG9ydGN1dC1kOWpMT0xyUiIscmVtb3ZlOiJyZW1vdmUtZDlqTE9MclIifX0sOTU0NDc4KGUpe2UuZXhwb3J0cz17c2VwYXJhdG9yOiJzZXBhcmF0b3ItS0h0eU1UWUcifX0sMzEzNzcyKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0RyYXdlckNvbnRleHQ6KCk9PmMsRHJhd2VyTWFuYWdlcjooKT0+bn0pO3ZhciBvPXMoNzc5NDc0KSxpPXMoOTk1Njc4KTtjbGFzcyBuIGV4dGVuZHMgby5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2lzQm9keUZpeGVkPSExLHRoaXMuX2FkZERyYXdlcj1lPT57dGhpcy5zZXRTdGF0ZSgodD0+KHtzdGFjazpbLi4udC5zdGFjayxlXX0pKSl9LHRoaXMuX3JlbW92ZURyYXdlcj1lPT57dGhpcy5zZXRTdGF0ZSgodD0+KHtzdGFjazp0LnN0YWNrLmZpbHRlcigodD0+dCE9PWUpKX0pKSl9LHRoaXMuc3RhdGU9e3N0YWNrOltdfX1jb21wb25lbnREaWRVcGRhdGUoZSx0KXshdC5zdGFjay5sZW5ndGgmJnRoaXMuc3RhdGUuc3RhY2subGVuZ3RoJiYoKDAsaS5yZXF1ZXN0TW9kYWxTY3JvbGxMb2NrKSh3aW5kb3cpLHRoaXMuX2lzQm9keUZpeGVkPSEwKSx0LnN0YWNrLmxlbmd0aCYmIXRoaXMuc3RhdGUuc3RhY2subGVuZ3RoJiZ0aGlzLl9pc0JvZHlGaXhlZCYmKCgwLGkucmVsZWFzZU1vZGFsU2Nyb2xsTG9jaykod2luZG93KSx0aGlzLl9pc0JvZHlGaXhlZD0hMSl9Y29tcG9uZW50V2lsbFVubW91bnQoKXt0aGlzLnN0YXRlLnN0YWNrLmxlbmd0aCYmdGhpcy5faXNCb2R5Rml4ZWQmJigwLGkucmVsZWFzZU1vZGFsU2Nyb2xsTG9jaykod2luZG93KX1yZW5kZXIoKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KGMuUHJvdmlkZXIse3ZhbHVlOnthZGREcmF3ZXI6dGhpcy5fYWRkRHJhd2VyLHJlbW92ZURyYXdlcjp0aGlzLl9yZW1vdmVEcmF3ZXIsY3VycmVudERyYXdlcjp0aGlzLnN0YXRlLnN0YWNrLmxlbmd0aD90aGlzLnN0YXRlLnN0YWNrW3RoaXMuc3RhdGUuc3RhY2subGVuZ3RoLTFdOm51bGx9fSx0aGlzLnByb3BzLmNoaWxkcmVuKX19Y29uc3QgYz1vLmNyZWF0ZUNvbnRleHQobnVsbCl9LDk2NDIxNChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtEcmF3ZXI6KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDEzODYzOCksbD1zKDU4NTQ4KSxyPXMoMTUwMTUwKSxhPXMoMzEzNzcyKSxoPXMoNjMyOTkyKSxkPXMoNTU4MDMwKSx1PXMoODAzMjg3KTt2YXIgbTtmdW5jdGlvbiBfKGUpe2NvbnN0e3Bvc2l0aW9uOnQ9IkJvdHRvbSIsb25DbG9zZTpzLGNoaWxkcmVuOmkscmVmZXJlbmNlOmQsY2xhc3NOYW1lOm0sdGhlbWU6Xz11fT1lLHA9KDAsYy5lbnN1cmVOb3ROdWxsKSgoMCxvLnVzZUNvbnRleHQpKGEuRHJhd2VyQ29udGV4dCkpLFt2XT0oMCwKby51c2VTdGF0ZSkoKCgpPT4oMCxyLnJhbmRvbUhhc2gpKCkpKSxmPSgwLG8udXNlUmVmKShudWxsKSxiPSgwLG8udXNlQ29udGV4dCkoaC5DbG9zZURlbGVnYXRlQ29udGV4dCk7cmV0dXJuKDAsby51c2VMYXlvdXRFZmZlY3QpKCgoKT0+KCgwLGMuZW5zdXJlTm90TnVsbCkoZi5jdXJyZW50KS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pLGIuc3Vic2NyaWJlKHAscykscC5hZGREcmF3ZXIodiksKCk9PntwLnJlbW92ZURyYXdlcih2KSxiLnVuc3Vic2NyaWJlKHAscyl9KSksW10pLG8uY3JlYXRlRWxlbWVudChsLlBvcnRhbCxudWxsLG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7cmVmOmQsY2xhc3NOYW1lOm4oKSh1LndyYXAsdVtgcG9zaXRpb24ke3R9YF0pfSx2PT09cC5jdXJyZW50RHJhd2VyJiZvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTp1LmJhY2tkcm9wLG9uQ2xpY2s6c30pLG8uY3JlYXRlRWxlbWVudChnLHtjbGFzc05hbWU6bigpKF8uZHJhd2VyLHVbYHBvc2l0aW9uJHt0fWBdLG0pLHJlZjpmLCJkYXRhLW5hbWUiOmVbImRhdGEtbmFtZSJdLCJkYXRhLXFhLWlkIjplWyJkYXRhLXFhLWlkIl19LGkpKSl9IWZ1bmN0aW9uKGUpe2UuTGVmdD0iTGVmdCIsZS5Cb3R0b209IkJvdHRvbSJ9KG18fChtPXt9KSk7Y29uc3QgZz0oMCxvLmZvcndhcmRSZWYpKCgoZSx0KT0+e2NvbnN0e2NsYXNzTmFtZTpzLC4uLml9PWU7cmV0dXJuIG8uY3JlYXRlRWxlbWVudChkLlRvdWNoU2Nyb2xsQ29udGFpbmVyLHtjbGFzc05hbWU6bigpKHUuZHJhd2VyLHMpLHRhYkluZGV4Oi0xLHJlZjp0LC4uLml9KX0pKX0sNjMyOTkyKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0Nsb3NlRGVsZWdhdGVDb250ZXh0OigpPT5ufSk7dmFyIG89cyg3Nzk0NzQpLGk9cygyNzYwMTkpO2NvbnN0IG49by5jcmVhdGVDb250ZXh0KGkuZ2xvYmFsQ2xvc2VEZWxlZ2F0ZSl9LDM4NzIzMShlLHQscyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSx0LHM9e30pe3JldHVybiBPYmplY3QuYXNzaWduKHt9LGUsZnVuY3Rpb24oZSx0LHM9e30pe2NvbnN0IG89T2JqZWN0LmFzc2lnbih7fSx0KTtmb3IoY29uc3QgaSBvZiBPYmplY3Qua2V5cyh0KSl7Y29uc3Qgbj1zW2ldfHxpO24gaW4gZSYmKG9baV09W2Vbbl0sdFtpXV0uam9pbigiICIpKX1yZXR1cm4gb30oZSx0LHMpKX1zLmQodCx7bWVyZ2VUaGVtZXM6KCk9Pm99KX0sOTAwODQxKGUsdCxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlLHQscyxvLGkpe2Z1bmN0aW9uIG4oaSl7aWYoZT5pLnRpbWVTdGFtcClyZXR1cm47Y29uc3Qgbj1pLnRhcmdldDt2b2lkIDAhPT1zJiZudWxsIT09dCYmbnVsbCE9PW4mJm4ub3duZXJEb2N1bWVudD09PW8mJih0LmNvbnRhaW5zKG4pfHxzKGkpKX1yZXR1cm4gaS5jbGljayYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbiwhMSksaS5tb3VzZURvd24mJm8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixuLCExKSxpLnRvdWNoRW5kJiZvLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixuLCExKSxpLnRvdWNoU3RhcnQmJm8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbiwhMSksKCk9PntvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIixuLCExKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiwhMSksby5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsbiwhMSksby5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixuLCExKX19cy5kKHQse2FkZE91dHNpZGVFdmVudExpc3RlbmVyOigpPT5vfSl9LDIzNjc2NShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHt1c2VPdXRzaWRlRXZlbnQ6KCk9PmN9KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDYxNjMxMSksbj1zKDkwMDg0MSk7ZnVuY3Rpb24gYyhlKXtjb25zdHtjbGljazp0LG1vdXNlRG93bjpzLHRvdWNoRW5kOmMsdG91Y2hTdGFydDpsLGhhbmRsZXI6cixyZWZlcmVuY2U6YX09ZSxoPSgwLG8udXNlUmVmKShudWxsKSxkPSgwLG8udXNlUmVmKSgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvdz8wOm5ldyB3aW5kb3cuQ3VzdG9tRXZlbnQoInRpbWVzdGFtcCIpLnRpbWVTdGFtcCk7cmV0dXJuKDAsaS51c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0KSgoKCk9Pntjb25zdCBlPXtjbGljazp0LG1vdXNlRG93bjpzLHRvdWNoRW5kOmMsdG91Y2hTdGFydDpsfSxvPWE/YS5jdXJyZW50OmguY3VycmVudDtyZXR1cm4oMCxuLmFkZE91dHNpZGVFdmVudExpc3RlbmVyKShkLmN1cnJlbnQsbyxyLGRvY3VtZW50LGUpfSksW3QscyxjLGwscl0pLGF8fGh9fSw4Njk4NDIoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7U3dpdGNoR3JvdXBDb250ZXh0OigpPT5ufSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg4NjIzODgpO2NvbnN0IG49KDAsby5jcmVhdGVDb250ZXh0KSh7Z2V0TmFtZTooKT0+IiIsZ2V0VmFsdWVzOigpPT5bXSxnZXRPbkNoYW5nZTooKT0+aS5kZWZhdWx0LHN1YnNjcmliZTppLmRlZmF1bHQsdW5zdWJzY3JpYmU6aS5kZWZhdWx0fSl9LDY1ODQ2KGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse21ha2VTd2l0Y2hHcm91cEl0ZW06KCk9Pm59KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDg2OTg0Mik7ZnVuY3Rpb24gbihlKXt2YXIgdDtyZXR1cm4gdD1jbGFzcyBleHRlbmRzIG8uUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fb25DaGFuZ2U9ZT0+e3RoaXMuY29udGV4dC5nZXRPbkNoYW5nZSgpKGUudGFyZ2V0LnZhbHVlKX0sdGhpcy5fb25VcGRhdGU9ZT0+e2UuaW5jbHVkZXModGhpcy5wcm9wcy52YWx1ZSkmJnRoaXMuZm9yY2VVcGRhdGUoKX19Y29tcG9uZW50RGlkTW91bnQoKXt0aGlzLmNvbnRleHQuc3Vic2NyaWJlKHRoaXMuX29uVXBkYXRlKX1yZW5kZXIoKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMsbmFtZTp0aGlzLl9nZXROYW1lKCksb25DaGFuZ2U6dGhpcy5fb25DaGFuZ2UsY2hlY2tlZDp0aGlzLl9pc0NoZWNrZWQoKX0pfWNvbXBvbmVudFdpbGxVbm1vdW50KCl7dGhpcy5jb250ZXh0LnVuc3Vic2NyaWJlKHRoaXMuX29uVXBkYXRlKX1fZ2V0TmFtZSgpewpyZXR1cm4gdGhpcy5jb250ZXh0LmdldE5hbWUoKX1faXNDaGVja2VkKCl7cmV0dXJuIHRoaXMuY29udGV4dC5nZXRWYWx1ZXMoKS5pbmNsdWRlcyh0aGlzLnByb3BzLnZhbHVlKX19LHQuY29udGV4dFR5cGU9aS5Td2l0Y2hHcm91cENvbnRleHQsdH19LDE0OTM2NChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtTd2l0Y2hHcm91cDooKT0+bn0pO3ZhciBvPXMoNzc5NDc0KSxpPXMoODY5ODQyKTtjbGFzcyBuIGV4dGVuZHMgby5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX3N1YnNjcmlwdGlvbnM9bmV3IFNldCx0aGlzLl9nZXROYW1lPSgpPT50aGlzLnByb3BzLm5hbWUsdGhpcy5fZ2V0VmFsdWVzPSgpPT50aGlzLnByb3BzLnZhbHVlcyx0aGlzLl9nZXRPbkNoYW5nZT0oKT0+dGhpcy5wcm9wcy5vbkNoYW5nZSx0aGlzLl9zdWJzY3JpYmU9ZT0+e3RoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKGUpfSx0aGlzLl91bnN1YnNjcmliZT1lPT57dGhpcy5fc3Vic2NyaXB0aW9ucy5kZWxldGUoZSl9LHRoaXMuc3RhdGU9e3N3aXRjaEdyb3VwQ29udGV4dDp7Z2V0TmFtZTp0aGlzLl9nZXROYW1lLGdldFZhbHVlczp0aGlzLl9nZXRWYWx1ZXMsZ2V0T25DaGFuZ2U6dGhpcy5fZ2V0T25DaGFuZ2Usc3Vic2NyaWJlOnRoaXMuX3N1YnNjcmliZSx1bnN1YnNjcmliZTp0aGlzLl91bnN1YnNjcmliZX19fXJlbmRlcigpe3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoaS5Td2l0Y2hHcm91cENvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnRoaXMuc3RhdGUuc3dpdGNoR3JvdXBDb250ZXh0fSx0aGlzLnByb3BzLmNoaWxkcmVuKX1jb21wb25lbnREaWRVcGRhdGUoZSl7dGhpcy5fbm90aWZ5KHRoaXMuX2dldFVwZGF0ZXModGhpcy5wcm9wcy52YWx1ZXMsZS52YWx1ZXMpKX1fbm90aWZ5KGUpe3RoaXMuX3N1YnNjcmlwdGlvbnMuZm9yRWFjaCgodD0+dChlKSkpfV9nZXRVcGRhdGVzKGUsdCl7cmV0dXJuWy4uLnQsLi4uZV0uZmlsdGVyKChzPT50LmluY2x1ZGVzKHMpPyFlLmluY2x1ZGVzKHMpOmUuaW5jbHVkZXMocykpKX19fSwzMTQ3MjAoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUpe2NvbnN0e3BhZGRpbmdUb3A6dCxwYWRkaW5nQm90dG9tOnN9PXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpO3JldHVyblt0LHNdLnJlZHVjZSgoKGUsdCk9PmUtTnVtYmVyKCh0fHwiIikucmVwbGFjZSgicHgiLCIiKSkpLGUuY2xpZW50SGVpZ2h0KX1mdW5jdGlvbiBpKGUsdD0hMSl7Y29uc3Qgcz1nZXRDb21wdXRlZFN0eWxlKGUpLG89W3MuaGVpZ2h0XTtyZXR1cm4iYm9yZGVyLWJveCIhPT1zLmJveFNpemluZyYmby5wdXNoKHMucGFkZGluZ1RvcCxzLnBhZGRpbmdCb3R0b20scy5ib3JkZXJUb3BXaWR0aCxzLmJvcmRlckJvdHRvbVdpZHRoKSx0JiZvLnB1c2gocy5tYXJnaW5Ub3Ascy5tYXJnaW5Cb3R0b20pLG8ucmVkdWNlKCgoZSx0KT0+ZSsocGFyc2VGbG9hdCh0KXx8MCkpLDApfWZ1bmN0aW9uIG4oZSx0PSExKXtjb25zdCBzPWdldENvbXB1dGVkU3R5bGUoZSksbz1bcy53aWR0aF07cmV0dXJuImJvcmRlci1ib3giIT09cy5ib3hTaXppbmcmJm8ucHVzaChzLnBhZGRpbmdMZWZ0LHMucGFkZGluZ1JpZ2h0LHMuYm9yZGVyTGVmdFdpZHRoLHMuYm9yZGVyUmlnaHRXaWR0aCksdCYmby5wdXNoKHMubWFyZ2luTGVmdCxzLm1hcmdpblJpZ2h0KSxvLnJlZHVjZSgoKGUsdCk9PmUrKHBhcnNlRmxvYXQodCl8fDApKSwwKX1zLmQodCx7Y29udGVudEhlaWdodDooKT0+byxvdXRlckhlaWdodDooKT0+aSxvdXRlcldpZHRoOigpPT5ufSl9LDQ0MDcxNShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUNvbnRleHQ6KCk9Pm99KTtjb25zdCBvPXMoNzc5NDc0KS5jcmVhdGVDb250ZXh0KG51bGwpfSw1MjUxKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0hpbnQ6KCk9Pmx9KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDkxNjI2KTtmdW5jdGlvbiBsKGUpe2NvbnN0e3RleHQ6dD0iIixjbGFzc05hbWU6c309ZTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOm4oKShjLnNob3J0Y3V0LHMpfSx0KX19LDcyMTE2NyhlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUl0ZW06KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDI3MzMxMCksbD1zKDY0OTE2Nikscj1zKDc3OTEwOCksYT1zKDUyNTEpLGg9cygzODA1NiksZD1zKDU4MDU5NiksdT1zKDQ2MjcwNCksbT1zKDEwNzk2Nik7ZnVuY3Rpb24gXyhlKXtjb25zdHtjbGFzc05hbWU6dCxpc1RpdGxlOnMsaXNMb2FkaW5nOmksaXNIb3ZlcmVkOl8sYWN0aXZlOmcsY2hlY2thYmxlOnAsZGlzYWJsZWQ6dixjaGVja2VkOmYsaWNvbjpiLGljb25DaGVja2VkOkMsaGludDpJLHN1Ykl0ZW1zOkUsbGFiZWw6eSxzdHlsZWRMYWJlbDprLG9uQ2xpY2s6eCxjaGlsZHJlbjpMLHRvb2xib3g6dyxqc3hMYWJlbDpOLHNpemU6Uz0ibm9ybWFsIn09ZSxNPSgwLG8udXNlQ29udGV4dCkoci5FbXB0eUljb25zQ29udGV4dCksRD0hIUUubGVuZ3RoO3JldHVybiBpP28uY3JlYXRlRWxlbWVudCgibGkiLHtjbGFzc05hbWU6bigpKHQsbS5pdGVtLG0ubG9hZGluZyxtW1NdKX0sby5jcmVhdGVFbGVtZW50KGwuTG9hZGVyLG51bGwpKTpvLmNyZWF0ZUVsZW1lbnQoImxpIix7Y2xhc3NOYW1lOm4oKSh0LG0uaXRlbSxtLmludGVyYWN0aXZlLHMmJm0udGl0bGUsdiYmbS5kaXNhYmxlZCxfJiZtLmhvdmVyZWQsZyYmbS5hY3RpdmUsTSYmbS5lbXB0eUljb25zLG1bU10pLG9uQ2xpY2s6eH0sby5jcmVhdGVFbGVtZW50KGMuSWNvbix7Y2xhc3NOYW1lOm4oKShtLmljb24pLGljb246ZnVuY3Rpb24oKXtpZihwJiZmKXJldHVybiBDfHxifHxoO3JldHVybiBifSgpfSksby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOm4oKShtLmxhYmVsKX0sIU4mJms/ay5tYXAoKCh7dGV4dDplLC4uLnR9LHMpPT5vLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtrZXk6cyxzdHlsZTp0fSxlKSkpOk4/P3kpLCEhdyYmby5jcmVhdGVFbGVtZW50KGMuSWNvbix7Cm9uQ2xpY2s6ZnVuY3Rpb24oKXt3JiZ3LmFjdGlvbigpfSxjbGFzc05hbWU6bS5yZW1vdmUsaWNvbjp1fSksIUQmJkkmJm8uY3JlYXRlRWxlbWVudChhLkhpbnQse2NsYXNzTmFtZTptLnNob3J0Y3V0LHRleHQ6SX0pLEQmJm8uY3JlYXRlRWxlbWVudChjLkljb24se2NsYXNzTmFtZTptLm5lc3RlZCxpY29uOmR9KSxMKX19LDMyMzgzMChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUxpc3Q6KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDk1NDQ3OCk7ZnVuY3Rpb24gbihlKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJsaSIse2NsYXNzTmFtZTppLnNlcGFyYXRvcn0pfXZhciBjPXMoNzIxMTY3KSxsPXMoNTY5Mzk4KSxyPXMoOTY0MjE0KSxhPXMoMjc2MDE5KTtjb25zdCBoPSgwLGwuaXNGZWF0dXJlRW5hYmxlZCkoImZvcmNlX2Rpc2FibGVfanN4X21lbnVfaXRlbXNfcmVuZGVyaW5nIik7ZnVuY3Rpb24gZChlKXtjb25zdCB0PWg/ZS5hY3Rpb246ZS5hY3Rpb24uY3VzdG9tKCk/P2UuYWN0aW9uLFtzLGldPSgwLG8udXNlU3RhdGUpKCgoKT0+dC5nZXRTdGF0ZSgpKSksW24sbF09KDAsby51c2VTdGF0ZSkoITEpLGQ9ISFzLnN1Ykl0ZW1zLmxlbmd0aCx1PWQmJm47cmV0dXJuKDAsby51c2VFZmZlY3QpKCgoKT0+e2NvbnN0IGU9KCk9PmkodC5nZXRTdGF0ZSgpKTtyZXR1cm4gdC5vblVwZGF0ZSgpLnN1YnNjcmliZShudWxsLGUpLCgpPT57dC5vblVwZGF0ZSgpLnVuc3Vic2NyaWJlKG51bGwsZSl9fSksW10pLG8uY3JlYXRlRWxlbWVudChjLkNvbnRleHRNZW51SXRlbSx7Li4ucyxvbkNsaWNrOmZ1bmN0aW9uKGUpe2lmKHMuZGlzYWJsZWR8fGUuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47aWYoZClyZXR1cm4gdm9pZCBsKCEwKTtzLmRvTm90Q2xvc2VPbkNsaWNrfHwoMCxhLmdsb2JhbENsb3NlTWVudSkoKTt0LmV4ZWN1dGUoKX0saXNMb2FkaW5nOnMubG9hZGluZyxpc0hvdmVyZWQ6dX0sdSYmby5jcmVhdGVFbGVtZW50KHIuRHJhd2VyLHtvbkNsb3NlOm19LG8uY3JlYXRlRWxlbWVudChfLHtpdGVtczpzLnN1Ykl0ZW1zLHBhcmVudEFjdGlvbjp0LGNsb3NlTmVzdGVkOm19KSkpO2Z1bmN0aW9uIG0oZSl7ZSYmZS5wcmV2ZW50RGVmYXVsdCgpLGwoITEpfX12YXIgdT1zKDc3OTEwOCksbT1zKDMzNDU1MCk7ZnVuY3Rpb24gXyhlKXtjb25zdHtpdGVtczp0LHBhcmVudEFjdGlvbjpzLGNsb3NlTmVzdGVkOml9PWUsbD0hQm9vbGVhbihzKSYmdC5ldmVyeSgoZT0+IUJvb2xlYW4oInNlcGFyYXRvciIhPT1lLnR5cGUmJihlLmdldFN0YXRlKCkuaWNvbnx8ZS5nZXRTdGF0ZSgpLmNoZWNrYWJsZSkpKSk7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCh1LkVtcHR5SWNvbnNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpsfSxvLmNyZWF0ZUVsZW1lbnQoInVsIixudWxsLHMmJm8uY3JlYXRlRWxlbWVudChvLkZyYWdtZW50LG51bGwsby5jcmVhdGVFbGVtZW50KGMuQ29udGV4dE1lbnVJdGVtLHtsYWJlbDpzLmdldFN0YXRlKCkubGFiZWwsaXNUaXRsZTohMCxhY3RpdmU6ITEsZGlzYWJsZWQ6ITEsc3ViSXRlbXM6W10sY2hlY2thYmxlOiExLGNoZWNrZWQ6ITEsZG9Ob3RDbG9zZU9uQ2xpY2s6ITEsaWNvbjptLG9uQ2xpY2s6aX0pLG8uY3JlYXRlRWxlbWVudChuLG51bGwpKSx0Lm1hcCgoZT0+e3N3aXRjaChlLnR5cGUpe2Nhc2UiYWN0aW9uIjpyZXR1cm4gby5jcmVhdGVFbGVtZW50KGQse2tleTplLmlkLGFjdGlvbjplfSk7Y2FzZSJzZXBhcmF0b3IiOnJldHVybiBvLmNyZWF0ZUVsZW1lbnQobix7a2V5OmUuaWR9KX19KSkpKX19LDc3OTEwOChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtFbXB0eUljb25zQ29udGV4dDooKT0+b30pO2NvbnN0IG89cyg3Nzk0NzQpLmNyZWF0ZUNvbnRleHQoITEpfSwzMjk2NjgoZSx0LHMpeyJ1c2Ugc3RyaWN0Ijt2YXIgbztmdW5jdGlvbiBpKGUpe2UuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInJvdmluZy10YWJpbmRleDptYWluLWVsZW1lbnQiKSl9ZnVuY3Rpb24gbihlKXtlLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJyb3ZpbmctdGFiaW5kZXg6c2Vjb25kYXJ5LWVsZW1lbnQiKSl9cy5kKHQse2JlY29tZU1haW5FbGVtZW50OigpPT5pLGJlY29tZVNlY29uZGFyeUVsZW1lbnQ6KCk9Pm59KSxmdW5jdGlvbihlKXtlLk1haW5FbGVtZW50PSJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50IixlLlNlY29uZGFyeUVsZW1lbnQ9InJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCJ9KG98fChvPXt9KSl9LDMwNjYwMShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb2xvclNlbGVjdG9yOigpPT5JfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg3MTIxMzQpLG49cygyMzU3MjQpLGM9cygxNDkzNjQpLGw9cyg5ODM2MTYpLHI9cygzMjk2NjgpLGE9cyg5MTQ0ODcpLGg9cy5uKGEpLGQ9cyg2NTg0NiksdT1zKDI3MzMxMCksbT1zKDE4NTI3MSksXz1zKDQ0MDcxNSksZz1zKDE4MjMwOCkscD1zKDI3NDg1MSksdj1zKDIwMzMwOSksZj1zKDc1MTg2Myk7Y29uc3QgYj0oMCxkLm1ha2VTd2l0Y2hHcm91cEl0ZW0pKChmdW5jdGlvbihlKXtjb25zdHtjbGFzc05hbWU6dCx2YWx1ZTpuPWkuTGlzdENvbG9yLlJlZCxuYW1lOmMsY2hlY2tlZDpsfT1lLFtyLGFdPSgwLGcudXNlUm92aW5nVGFiaW5kZXhFbGVtZW50KShudWxsKSxkPSgwLG8udXNlQ29udGV4dCkoXy5Db250ZXh0TWVudUNvbnRleHQpLGI9ZD8udHlwZT8/Im1lbnUiLEM9bjtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJsYWJlbCIse3JlZjpyLHRhYkluZGV4OmEsY2xhc3NOYW1lOmgoKSh0LGYud3JhcCwiZHJhd2VyIj09PWImJmYubGFyZ2UpLCJkYXRhLWNvbG9yIjpDLHJvbGU6Im1lbnVpdGVtIiwiYXJpYS1sYWJlbCI6bS50KG51bGwse3JlcGxhY2U6e2NvbG9yOkN9fSxzKDUwNjkxNSkpLCJhcmlhLWNoZWNrZWQiOmx9LG8uY3JlYXRlRWxlbWVudCgiaW5wdXQiLHtjbGFzc05hbWU6Zi5pbnB1dCx0eXBlOiJyYWRpbyIsbmFtZTpjLHZhbHVlOm4sY2hlY2tlZDpsLG9uQ2hhbmdlOmUub25DaGFuZ2Usb25DbGljazpsP2Z1bmN0aW9uKCl7CmUub25DbGlja0lmQ2hlY2tlZCYmZS5vbkNsaWNrSWZDaGVja2VkKG4pfTp2b2lkIDB9KSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpoKCkoZi5ib3gsZltDXSwiZHJhd2VyIj09PWImJmYubGFyZ2UpfSxsP28uY3JlYXRlRWxlbWVudCh1Lkljb24se2ljb246cH0pOm8uY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOmYucGlja2VyRG90fSxvLmNyZWF0ZUVsZW1lbnQodS5JY29uLHtjbGFzc05hbWU6Zi5ob3ZlckRvdCxpY29uOnZ9KSkpKX0pKSxDPVszOSwzNywxMywzMiwyN107ZnVuY3Rpb24gSShlKXtjb25zdHtidXR0b25DbGFzc05hbWU6dCx2YWx1ZTpzLG9uU2VsZWN0ZWRDbGljazphLGZyb21LZXlib2FyZDpofT1lLGQ9KDAsby51c2VSZWYpKG51bGwpLHU9KDAsby51c2VDYWxsYmFjaykoKGU9PntpZighZC5jdXJyZW50fHxlLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IHQ9KDAsbi5oYXNoRnJvbUV2ZW50KShlKTtpZighQy5pbmNsdWRlcyh0KSlyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IG89KDAsbC5xdWVyeUZvY3VzYWJsZUVsZW1lbnRzKShkLmN1cnJlbnQpLnNvcnQobC5uYXZpZ2F0aW9uT3JkZXJDb21wYXJhdG9yKSxjPW8uZmluZEluZGV4KChlPT5lPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkpO2lmKC0xPT09YylyZXR1cm47Y29uc3QgYT1vW2NdO2xldCBoO3N3aXRjaCh0KXtjYXNlIDEzOmNhc2UgMzI6XyhhLmRhdGFzZXQuY29sb3J8fGkuTGlzdENvbG9yLlJlZCk7YnJlYWs7Y2FzZSAyNzpfKHMpfXN3aXRjaCgoMCxsLm1hcEtleUNvZGVUb0RpcmVjdGlvbikodCkpe2Nhc2UiaW5saW5lTmV4dCI6aD1vW2MrMV18fG9bMF07YnJlYWs7Y2FzZSJpbmxpbmVQcmV2IjpoPW9bYy0xXXx8b1tvLmxlbmd0aC0xXX1oIGluc3RhbmNlb2YgSFRNTExhYmVsRWxlbWVudCYmKCgwLHIuYmVjb21lU2Vjb25kYXJ5RWxlbWVudCkoYSksKDAsci5iZWNvbWVNYWluRWxlbWVudCkoaCksaC5mb2N1cygpKX0pLFtdKTsoMCxvLnVzZUxheW91dEVmZmVjdCkoKCgpPT57aWYoIWgpcmV0dXJuO2NvbnN0IGU9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCx0PWQuY3VycmVudDtpZighdClyZXR1cm47Y29uc3Rbc109KDAsbC5xdWVyeUZvY3VzYWJsZUVsZW1lbnRzKSh0KS5zb3J0KGwubmF2aWdhdGlvbk9yZGVyQ29tcGFyYXRvcik7cmV0dXJuIHM/KCgwLHIuYmVjb21lTWFpbkVsZW1lbnQpKHMpLHMuZm9jdXMoKSwoKT0+e2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmZS5mb2N1cygpfSk6dm9pZCAwfSksW10pO2NvbnN0IG09aS5MSVNUX0NPTE9SUy5tYXAoKChlLHMpPT5vLmNyZWF0ZUVsZW1lbnQoYix7a2V5OnMsY2xhc3NOYW1lOnQsb25DbGlja0lmQ2hlY2tlZDphLHZhbHVlOmV9KSkpO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoIm1lbnUiLHtyZWY6ZCxvbktleURvd246dX0sby5jcmVhdGVFbGVtZW50KGMuU3dpdGNoR3JvdXAse25hbWU6ImNvbG9yLXNlbGVjdG9yIixvbkNoYW5nZTpfLHZhbHVlczp2b2lkIDAhPT1zP1tzXTpbXX0sbSkpO2Z1bmN0aW9uIF8odCl7ZS5vbkNoYW5nZSYmdm9pZCAwIT09dCYmZS5vbkNoYW5nZSh0KX19fSw4MzQxODgoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7UG9wdXBDb2xvclNlbGVjdG9yOigpPT5JfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg2MDc4MzIpLG49cyg2MDk1MjgpLGM9cyg0MDYxMTApLGw9cygzMTM3NzIpLHI9cyg5NjQyMTQpLGE9cygzMjM4MzApLGg9cyg0NDA3MTUpLGQ9cyg5NjkxNjgpLHU9cyg1ODU0OCksbT1zKDMwNjYwMSksXz1zKDM2MzI2OSksZz1zKDU1ODk3Mik7Y2xhc3MgcCBleHRlbmRzIG8uUHVyZUNvbXBvbmVudHtjb21wb25lbnREaWRNb3VudCgpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmKF8ubW9iaWxldG91Y2g/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMuX29uVG91Y2hTdGFydCk6KHRoaXMucHJvcHMuZWxlbS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIix0aGlzLl9vblRhcmdldE1vdXNlTGVhdmUpLGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLnByb3BzLmhpZGUpKSl9Y29tcG9uZW50V2lsbFVubW91bnQoKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJihfLm1vYmlsZXRvdWNoP2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix0aGlzLl9vblRvdWNoU3RhcnQpOnRoaXMucHJvcHMuZWxlbSYmKHRoaXMucHJvcHMuZWxlbS5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIix0aGlzLl9vblRhcmdldE1vdXNlTGVhdmUpLGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMucHJvcHMuaGlkZSkpKX1yZW5kZXIoKXtjb25zdCBlPXt0b3A6MH07aWYodGhpcy5wcm9wcy5lbGVtKXtjb25zdCB0PXRoaXMucHJvcHMuZWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlLnRvcD10LnRvcCt0LmhlaWdodC8yLCgwLGQuaXNSdGwpKCk/ZS5yaWdodD13aW5kb3cuaW5uZXJXaWR0aC10LmxlZnQ6ZS5sZWZ0PXQubGVmdCt0LndpZHRofWVsc2UgZS5sZWZ0PTA7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCh1LlBvcnRhbCxudWxsLG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7c3R5bGU6ZSxjbGFzc05hbWU6Zy5wb3B1cCxyZWY6dGhpcy5fc2V0UG9wVXBFbGVtLG9uTW91c2VMZWF2ZTpfLm1vYmlsZXRvdWNoP3ZvaWQgMDp0aGlzLl9vblBvcFVwTW91c2VMZWF2ZX0sby5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6Zy53cmFwcGVyfSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpnLnNlbGVjdG9yfSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpnLmFycm93TGVmdH0pLG8uY3JlYXRlRWxlbWVudChtLkNvbG9yU2VsZWN0b3Ise2J1dHRvbkNsYXNzTmFtZTpnLmNvbG9yU2VsZWN0QnV0dG9uLHZhbHVlOnRoaXMucHJvcHMuY3VycmVudENvbG9yLGZyb21LZXlib2FyZDp0aGlzLnByb3BzLmZyb21LZXlib2FyZCxvbkNoYW5nZTp0aGlzLl9vbkNoYW5nZX0pKSkpKQp9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuX3BvcFVwRWxlbT1udWxsLHRoaXMuX29uQ2hhbmdlPWU9Pnt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3IoZSksdGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uVGFyZ2V0TW91c2VMZWF2ZT1lPT57Y29uc3QgdD0hIWUucmVsYXRlZFRhcmdldC5ub2RlTmFtZSxzPWUucmVsYXRlZFRhcmdldD09PXRoaXMuX3BvcFVwRWxlbSxvPXRoaXMuX3BvcFVwRWxlbSYmdCYmdGhpcy5fcG9wVXBFbGVtLmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCk7c3x8b3x8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uUG9wVXBNb3VzZUxlYXZlPWU9Pntjb25zdCB0PSEhZS5uYXRpdmVFdmVudC5yZWxhdGVkVGFyZ2V0Lm5vZGVOYW1lLHM9ZS5uYXRpdmVFdmVudC5yZWxhdGVkVGFyZ2V0PT09dGhpcy5wcm9wcy5lbGVtLG89dCYmdGhpcy5wcm9wcy5lbGVtLmNvbnRhaW5zKGUubmF0aXZlRXZlbnQucmVsYXRlZFRhcmdldCk7c3x8b3x8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uVG91Y2hTdGFydD1lPT57Y29uc3QgdD0hIWUudGFyZ2V0Lm5vZGVOYW1lLHM9ZS50YXJnZXQ9PT10aGlzLnByb3BzLmVsZW0sbz1lLnRhcmdldD09PXRoaXMuX3BvcFVwRWxlbSxpPXQmJnRoaXMucHJvcHMuZWxlbS5jb250YWlucyhlLnRhcmdldCksbj10aGlzLl9wb3BVcEVsZW0mJnQmJnRoaXMuX3BvcFVwRWxlbS5jb250YWlucyhlLnRhcmdldCk7c3x8aXx8b3x8bnx8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX3NldFBvcFVwRWxlbT1lPT57dGhpcy5fcG9wVXBFbGVtPWV9fX1mdW5jdGlvbiB2KGUpe2NvbnN0e2FjdGlvbnM6dCwuLi5zfT1lO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoYy5NYXRjaE1lZGlhLHtydWxlOm4uRGlhbG9nQnJlYWtwb2ludHMuVGFibGV0U21hbGx9LChlPT5lJiZ0P28uY3JlYXRlRWxlbWVudChsLkRyYXdlck1hbmFnZXIsbnVsbCxvLmNyZWF0ZUVsZW1lbnQoaC5Db250ZXh0TWVudUNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnt0eXBlOiJkcmF3ZXIifX0sby5jcmVhdGVFbGVtZW50KHIuRHJhd2VyLHtvbkNsb3NlOnMuaGlkZSxwb3NpdGlvbjoiQm90dG9tIn0sby5jcmVhdGVFbGVtZW50KGEuQ29udGV4dE1lbnVMaXN0LHtpdGVtczp0fSkpKSk6by5jcmVhdGVFbGVtZW50KHAsey4uLnN9KSkpfXZhciBmPXMoNTcxMzAwKTtsZXQgYj1udWxsLEM9bnVsbDt2YXIgSTshZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdCgpe2ImJkM/LnVubW91bnQoKX1lLnNob3c9ZnVuY3Rpb24oZSl7Ynx8KGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHQoKSxDPSgwLGYuY3JlYXRlUmVhY3RSb290KShvLmNyZWF0ZUVsZW1lbnQoaS5TbG90Q29udGV4dC5Qcm92aWRlcix7dmFsdWU6ZS5tYW5hZ2VyfHxudWxsfSxvLmNyZWF0ZUVsZW1lbnQodix7Li4uZSxoaWRlOnR9KSksYil9LGUuaGlkZT10fShJfHwoST17fSkpfSw4NTU5ODkoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7Y3JlYXRlU2VsZWN0YWJsZUxpc3Q6KCk9PnB9KTtjbGFzcyBve2NvbnN0cnVjdG9yKGUpe3RoaXMuX2NvbGw9ZX1nZXRJdGVtQnlJZHgoZSl7cmV0dXJuIHRoaXMuX2NvbGwuaXRlbShlKX1nZXRJdGVtcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuX2NvbGwpfWdldEZpcnN0SXRlbSgpe3JldHVybiB0aGlzLmdldEl0ZW1CeUlkeCgwKX1nZXRMYXN0SXRlbSgpe2NvbnN0IGU9dGhpcy5fY29sbC5sZW5ndGg7cmV0dXJuIHRoaXMuZ2V0SXRlbUJ5SWR4KGUtMSl9Z2V0SXRlbUlkeChlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbmRJbmRleC5jYWxsKHRoaXMuX2NvbGwsKHQ9PnQ9PT1lKSl9Z2V0TGVuZ3RoKCl7cmV0dXJuIHRoaXMuX2NvbGwubGVuZ3RofWNvbnRhaW5zKGUpe3JldHVybi0xIT09dGhpcy5nZXRJdGVtSWR4KGUpfX12YXIgaSxuPXMoNzI3MDkpOyFmdW5jdGlvbihlKXtlW2UuUHJldj0tMV09IlByZXYiLGVbZS5OZXh0PTFdPSJOZXh0In0oaXx8KGk9e30pKTtjb25zdCBjPSJjdXJzb3IiO2NsYXNzIGx7Y29uc3RydWN0b3IoZSl7dGhpcy5fZW5hYmxlRm9jdXNET01FbGVtZW50PSExLHRoaXMuX2xpc3Q9ZS5saXN0LHRoaXMuX2l0ZW1zPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlLmxpc3RJdGVtQ2xhc3MpKSx0aGlzLl9mb2N1c2VkPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlLmZvY3VzZWRMaXN0SXRlbUNsYXNzKSksdGhpcy5fc2VsZWN0ZWQ9bmV3IG8odGhpcy5fbGlzdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKSksdGhpcy5fY3Vyc29yPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShjKSksdGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzPWUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzLHRoaXMuX2ZvY3VzZWRMaXN0SXRlbUNsYXNzPWUuZm9jdXNlZExpc3RJdGVtQ2xhc3MsdGhpcy5fb25TZWxlY3Q9ZS5vblNlbGVjdCx0aGlzLl9vbk5hdmlnYXRlPWUub25OYXZpZ2F0ZSx0aGlzLl9vbkNvbmZpcm09ZS5vbkNvbmZpcm0sdGhpcy5fb25EZWxldGU9ZS5vbkRlbGV0ZSx0aGlzLl9tb3VzZUFjdGlvbnM9bmV3IE1hcCx0aGlzLl9jeWNsaWNOYXZpZ2F0aW9uRGlzYWJsZWQ9Qm9vbGVhbihlLmN5Y2xpY05hdmlnYXRpb25EaXNhYmxlZCksdGhpcy5fZW5hYmxlRm9jdXNET01FbGVtZW50PUJvb2xlYW4oZS5lbmFibGVGb2N1c0RPTUVsZW1lbnQpLHRoaXMuaG90a2V5cz0oMCxuLmNyZWF0ZUdyb3VwKSh7ZGVzYzoiU2VsZWN0YWJsZSBsaXN0In0pLGUubW9kZXMmJmUubW9kZXMuZm9yRWFjaCgodD0+bmV3IHQoe3NlbGVjdGlvbjp0aGlzLGxvY2FsSG90a2V5RWxlbWVudDp0aGlzLl9saXN0LGdsb2JhbEhvdGtleUVsZW1lbnQ6ZS5nbG9iYWxIb3RrZXlzP251bGw6dGhpcy5fbGlzdH0pKSl9c2VsZWN0SXRlbShlKXtlLmNsYXNzTGlzdC5hZGQodGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKX11bnNlbGVjdEl0ZW0oZSl7ZS5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX3NlbGVjdGVkTGlzdEl0ZW1DbGFzcyl9dmlzdWFsbHlGb2N1c0l0ZW0oZSl7CnRoaXMucmVtb3ZlRm9jdXMoKSxlLmNsYXNzTGlzdC5hZGQodGhpcy5fZm9jdXNlZExpc3RJdGVtQ2xhc3MpLHRoaXMuc2V0Q3Vyc29yKGUpfWZvY3VzSXRlbShlKXt0aGlzLnZpc3VhbGx5Rm9jdXNJdGVtKGUpLHRoaXMuX2VuYWJsZUZvY3VzRE9NRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZ0aGlzLl9mb2N1c0RPTUVsZW1lbnQoZSl9Z2V0Rm9jdXNlZEl0ZW1JZHgoKXtjb25zdCBlPXRoaXMuX2ZvY3VzZWQuZ2V0Rmlyc3RJdGVtKCk7cmV0dXJuIGU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMX1nZXRGb2N1c2VkSXRlbSgpe3JldHVybiB0aGlzLl9mb2N1c2VkLmdldEZpcnN0SXRlbSgpfWlzU2VsZWN0ZWQoZSl7cmV0dXJuIHRoaXMuX3NlbGVjdGVkLmNvbnRhaW5zKGUpfWlzRm9jdXNlZChlKXtyZXR1cm4gdGhpcy5fZm9jdXNlZC5jb250YWlucyhlKX1pc0xpc3RJdGVtKGUpe3JldHVybiB0aGlzLl9pdGVtcy5jb250YWlucyhlKX1yZW1vdmVTZWxlY3Rpb25zKCl7dGhpcy5fc2VsZWN0ZWQuZ2V0SXRlbXMoKS5mb3JFYWNoKChlPT5lLmNsYXNzTGlzdC5yZW1vdmUodGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKSkpfXJlbW92ZUZvY3VzKCl7dGhpcy5fZm9jdXNlZC5nZXRJdGVtcygpLmZvckVhY2goKGU9PmUuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLl9mb2N1c2VkTGlzdEl0ZW1DbGFzcykpKX1tb3ZlKGUsdCxzKXtjb25zdCBvPWU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMTtsZXQgaTtpPSJudW1iZXIiPT10eXBlb2YgdD90aGlzLl9pdGVtcy5nZXRJdGVtQnlJZHgodGhpcy5fY2FsY05leHRJdGVtSWR4KG8sdCkpOnQsaSYmKHMoaSxlKSx0aGlzLl9zY3JvbGxJZk5vdFZpc2libGUoaSkpfWdldFNlbGVjdGVkSXRlbXMoKXtyZXR1cm4gdGhpcy5fc2VsZWN0ZWQuZ2V0SXRlbXMoKX1nZXRMaXN0KCl7cmV0dXJuIHRoaXMuX2xpc3R9Z2V0SXRlbXNDb2xsZWN0aW9uKCl7cmV0dXJuIHRoaXMuX2l0ZW1zfWdldFNlbGVjdGVkQ29sbGVjdGlvbigpe3JldHVybiB0aGlzLl9zZWxlY3RlZH1zZXRDdXJzb3IoZSl7dGhpcy5yZW1vdmVDdXJzb3IoKSxlLmNsYXNzTGlzdC5hZGQoYyl9cmVtb3ZlQ3Vyc29yKCl7dGhpcy5fY3Vyc29yLmdldEl0ZW1zKCkuZm9yRWFjaCgoZT0+ZS5jbGFzc0xpc3QucmVtb3ZlKGMpKSl9Z2V0Q3Vyc29ySXRlbSgpe3JldHVybiB0aGlzLl9jdXJzb3IuZ2V0Rmlyc3RJdGVtKCl9Z2V0Q3Vyc29ySXRlbUlkeCgpe2NvbnN0IGU9dGhpcy5nZXRDdXJzb3JJdGVtKCk7cmV0dXJuIGU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMX1vblNlbGVjdChlLHQpe3RoaXMuX29uU2VsZWN0JiZ0aGlzLl9vblNlbGVjdCh7Y3Vyc29yOnQsaXRlbXM6dGhpcy5nZXRTZWxlY3RlZEl0ZW1zKCksYWN0aW9uOmV9KX1vbk5hdmlnYXRlKGUsdCl7dGhpcy5fb25OYXZpZ2F0ZSYmdGhpcy5fb25OYXZpZ2F0ZSh7Y3Vyc29yOmUsY3Vyc29ySWR4OnRoaXMuZ2V0Q3Vyc29ySXRlbUlkeCgpLGl0ZW1zOltlXSxhY3Rpb246dH0pfW9uQ29uZmlybShlLHQpe3RoaXMuX29uQ29uZmlybSYmdGhpcy5fb25Db25maXJtKHtjdXJzb3I6ZSxpdGVtczpbZV0sYWN0aW9uOnR9KX1vbkRlbGV0ZShlLHQscyl7dGhpcy5fb25EZWxldGUmJnRoaXMuX29uRGVsZXRlKHtjdXJzb3I6cyxpdGVtczplLGFjdGlvbjp0fSl9cmVnaXN0ZXJNb3VzZUFjdGlvbihlLHQpe3RoaXMuX21vdXNlQWN0aW9ucy5zZXQoZSx0KX1kaXNwYXRjaE1vdXNlRXZlbnQoZSx0KXtjb25zdCBzPXRoaXMuX21vdXNlQWN0aW9ucy5nZXQoZSk7cyYmcyh0KX1kZWxlZ2F0ZUNsaWNrKGUpe3JldHVybiB0PT57aWYoIXQuZGVmYXVsdFByZXZlbnRlZCl7Y29uc3Qgcz10aGlzLl9saXN0LmNvbnRhaW5zKHQudGFyZ2V0KTtsZXQgbz10LnRhcmdldDtmb3IoO3MmJm8hPT10aGlzLl9saXN0Oyl7aWYobyYmdGhpcy5pc0xpc3RJdGVtKG8pKXJldHVybiB2b2lkIGUobyk7bz1vJiZvLnBhcmVudEVsZW1lbnR9fX19Y2xlYXIoKXt0aGlzLnJlbW92ZVNlbGVjdGlvbnMoKSx0aGlzLnJlbW92ZUZvY3VzKCksdGhpcy5yZW1vdmVDdXJzb3IoKX1kZXN0cm95KCl7dGhpcy5ob3RrZXlzLmRlc3Ryb3koKSxkZWxldGUgdGhpcy5fbGlzdCxkZWxldGUgdGhpcy5faXRlbXMsZGVsZXRlIHRoaXMuX3NlbGVjdGVkLGRlbGV0ZSB0aGlzLl9mb2N1c2VkLGRlbGV0ZSB0aGlzLl9jdXJzb3IsZGVsZXRlIHRoaXMuX21vdXNlQWN0aW9uc31fc2Nyb2xsSWZOb3RWaXNpYmxlKGUpe2NvbnN0IHQ9dGhpcy5fbGlzdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxzPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbz10LnRvcCxpPXQuYm90dG9tLG49cy50b3AsYz1zLmJvdHRvbTtuPG8/dGhpcy5fbGlzdC5zY3JvbGxUb3AtPW8tbjpjPmkmJih0aGlzLl9saXN0LnNjcm9sbFRvcCs9Yy1pKX1fY2FsY05leHRJdGVtSWR4KGUsdCl7Y29uc3Qgcz10aGlzLl9pdGVtcy5nZXRMZW5ndGgoKS0xO2xldCBvPWUrdDtpZihvPDApe2lmKHRoaXMuX2N5Y2xpY05hdmlnYXRpb25EaXNhYmxlZClyZXR1cm4tMTtvPXN9aWYobz5zKXtpZih0aGlzLl9jeWNsaWNOYXZpZ2F0aW9uRGlzYWJsZWQpcmV0dXJuLTE7bz0wfXJldHVybiBvfV9mb2N1c0RPTUVsZW1lbnQoZSl7ZS5mb2N1cygpfX12YXIgcj1zKDIzNTcyNCk7Y2xhc3MgYXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9mb2N1c05leHQ9KCk9PntpZighdGhpcy5faXNWYWxpZE5hdmlnYXRpb24oKSlyZXR1cm47Y29uc3QgZT10aGlzLl9zZWxlY3Rpb24uZ2V0Q3Vyc29ySXRlbSgpO3RoaXMuX3NlbGVjdGlvbi5tb3ZlKGUsaS5OZXh0LHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImRvd24iKSl9LHRoaXMuX2ZvY3VzUHJldj0oKT0+e2lmKCF0aGlzLl9pc1ZhbGlkTmF2aWdhdGlvbigpKXJldHVybjtjb25zdCBlPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUoZSxpLlByZXYsdGhpcy5fZm9jdXNJdGVtLmJpbmQodGhpcywidXAiKSl9LHRoaXMuX2ZvY3VzRmlyc3Q9KCk9PntpZighdGhpcy5faXNWYWxpZE5hdmlnYXRpb24oKSlyZXR1cm4KO2NvbnN0IGU9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEZpcnN0SXRlbSgpLHQ9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUodCxlLHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImhvbWUiKSl9LHRoaXMuX2ZvY3VzTGFzdD0oKT0+e2lmKCF0aGlzLl9pc1ZhbGlkTmF2aWdhdGlvbigpKXJldHVybjtjb25zdCBlPXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKS5nZXRMYXN0SXRlbSgpLHQ9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUodCxlLHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImVuZCIpKX0sdGhpcy5fc2VsZWN0aW9uPWUuc2VsZWN0aW9uLHRoaXMuX3NlbGVjdGlvbi5yZWdpc3Rlck1vdXNlQWN0aW9uKCJjbGljayIsdGhpcy5fc2VsZWN0aW9uLmRlbGVnYXRlQ2xpY2sodGhpcy5fZm9jdXNJdGVtLmJpbmQodGhpcywiY2xpY2siKSkpLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgUHJldmlvdXMiLGhvdGtleTozOCxoYW5kbGVyOnRoaXMuX2ZvY3VzUHJldixlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudCxpc1JlcGVhdEFjY2VwdGVkOiEwfSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJGb2N1cyBOZXh0Iixob3RrZXk6NDAsaGFuZGxlcjp0aGlzLl9mb2N1c05leHQsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnQsaXNSZXBlYXRBY2NlcHRlZDohMH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgUHJldmlvdXMiLGhvdGtleTpyLk1vZGlmaWVycy5TaGlmdCszMixoYW5kbGVyOnRoaXMuX2ZvY3VzUHJldixlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudCxpc1JlcGVhdEFjY2VwdGVkOiEwfSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJGb2N1cyBOZXh0Iixob3RrZXk6MzIsaGFuZGxlcjp0aGlzLl9mb2N1c05leHQsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnQsaXNSZXBlYXRBY2NlcHRlZDohMH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgRmlyc3QiLGhvdGtleTozNixoYW5kbGVyOnRoaXMuX2ZvY3VzRmlyc3QsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnR9KSx0aGlzLl9zZWxlY3Rpb24uaG90a2V5cy5hZGQoe2Rlc2M6IkZvY3VzIExhc3QiLGhvdGtleTozNSxoYW5kbGVyOnRoaXMuX2ZvY3VzTGFzdCxlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudH0pfV9mb2N1c0l0ZW0oZSx0KXt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpLHRoaXMuX3NlbGVjdGlvbi5mb2N1c0l0ZW0odCksdGhpcy5fc2VsZWN0aW9uLnNldEN1cnNvcih0KSx0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbSh0KSx0aGlzLl9zZWxlY3Rpb24ub25OYXZpZ2F0ZSh0LGUpfV9pc1ZhbGlkTmF2aWdhdGlvbigpe3JldHVybiBkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09ZG9jdW1lbnQuYm9keXx8dGhpcy5fc2VsZWN0aW9uLmdldExpc3QoKS5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KX19Y2xhc3MgaHtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuQWx0KzEzLGhhbmRsZXI6dGhpcy5fb25JdGVtS2V5RG93bi5iaW5kKHRoaXMsImFsdCtyZXR1cm4iKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuQWx0K3IuTW9kaWZpZXJzLlNoaWZ0KzEzLGhhbmRsZXI6dGhpcy5fb25JdGVtS2V5RG93bi5iaW5kKHRoaXMsImFsdCtyZXR1cm4iKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSl9X29uSXRlbUtleURvd24oZSx0KXtjb25zdCBzPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7cyYmdGhpcy5fc2VsZWN0aW9uLm9uQ29uZmlybShzLGUpfX1jbGFzcyBke2NvbnN0cnVjdG9yKGUpe3RoaXMuX3NlbGVjdGlvbj1lLnNlbGVjdGlvbix0aGlzLl9zZWxlY3Rpb24ucmVnaXN0ZXJNb3VzZUFjdGlvbigic2hpZnQrY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywic2hpZnQrY2xpY2siKSkpLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRXh0ZW5kIFNlbGVjdGlvbiBEb3duIixob3RrZXk6ci5Nb2RpZmllcnMuU2hpZnQrNDAsaGFuZGxlcjp0aGlzLl9uZXh0UmFuZ2VJdGVtLmJpbmQodGhpcywic2hpZnQrZG93biIpLGVsZW1lbnQ6ZS5sb2NhbEhvdGtleUVsZW1lbnR9KSx0aGlzLl9zZWxlY3Rpb24uaG90a2V5cy5hZGQoe2Rlc2M6IkV4dGVuZCBTZWxlY3Rpb24gVXAiLGhvdGtleTpyLk1vZGlmaWVycy5TaGlmdCszOCxoYW5kbGVyOnRoaXMuX3ByZXZSYW5nZUl0ZW0uYmluZCh0aGlzLCJzaGlmdCt1cCIpLGVsZW1lbnQ6ZS5sb2NhbEhvdGtleUVsZW1lbnR9KX1fbmV4dFJhbmdlSXRlbShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKSxzPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLmdldEN1cnNvckl0ZW1JZHgoKSE9PXQuZ2V0TGVuZ3RoKCktMSYmdGhpcy5fc2VsZWN0aW9uLm1vdmUocyxpLk5leHQsdGhpcy5fYWRkSXRlbVRvUmFuZ2UoZSwoKGUsdCk9PmU8dCkpKX1fcHJldlJhbmdlSXRlbShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7MCE9PXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtSWR4KCkmJnRoaXMuX3NlbGVjdGlvbi5tb3ZlKHQsaS5QcmV2LHRoaXMuX2FkZEl0ZW1Ub1JhbmdlKGUsKChlLHQpPT5lPnQpKSl9X29uSXRlbUNsaWNrKGUsdCl7Y29uc3Qgcz10aGlzLl9zZWxlY3Rpb24uZ2V0SXRlbXNDb2xsZWN0aW9uKCkuZ2V0SXRlbXMoKSxvPXRoaXMuX2dldFJhbmdlSW5mbyh0KTt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpCjtmb3IobGV0IGU9by5zdGFydDtlPD1vLmVuZDtlKyspdGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoc1tlXSl8fHRoaXMuX3NlbGVjdGlvbi5zZWxlY3RJdGVtKHNbZV0pO3RoaXMuX3NlbGVjdGlvbi5zZXRDdXJzb3IodCksdGhpcy5fc2VsZWN0aW9uLm9uU2VsZWN0KGUsdCl9X2dldFJhbmdlSW5mbyhlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKS5nZXRJdGVtSWR4KGUpLHM9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtSWR4KCksbz0tMSE9PXM/czowO3JldHVybiB0Pm8/e3N0YXJ0Om8sZW5kOnR9OntzdGFydDp0LGVuZDpvfX1fYWRkSXRlbVRvUmFuZ2UoZSx0KXtyZXR1cm4ocyxvKT0+e2NvbnN0IGk9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1JZHgocyksbj10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW1JZHgoKTswPT09dGhpcy5fc2VsZWN0aW9uLmdldFNlbGVjdGVkQ29sbGVjdGlvbigpLmdldExlbmd0aCgpJiZvJiZ0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShvKSx0KG4saSk/dGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0ocyk6byYmdGhpcy5fc2VsZWN0aW9uLnVuc2VsZWN0SXRlbShvKSx0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKHMpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlLHMpfX19Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLnJlZ2lzdGVyTW91c2VBY3Rpb24oImN0cmwrY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywiY3RybCtjbGljayIpKSksdGhpcy5fc2VsZWN0aW9uLnJlZ2lzdGVyTW91c2VBY3Rpb24oIm1ldGErY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywibWV0YStjbGljayIpKSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuTW9kKzY1LGhhbmRsZXI6dGhpcy5fc2VsZWN0QWxsLmJpbmQodGhpcywiY3RybCthIiksZWxlbWVudDplLmxvY2FsSG90a2V5RWxlbWVudH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7aG90a2V5OjI3LGhhbmRsZXI6dGhpcy5fdW5zZWxlY3RBbGwuYmluZCh0aGlzLCJlc2MiKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSl9X29uSXRlbUNsaWNrKGUsdCl7Y29uc3Qgcz10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW0oKSxvPXRoaXMuX3NlbGVjdGlvbi5nZXRTZWxlY3RlZENvbGxlY3Rpb24oKS5nZXRMZW5ndGgoKTtzJiYwPT09byYmdGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0ocyksdGhpcy5fdG9nZ2xlU2VsZWN0aW9uKHQpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlLHQpfV90b2dnbGVTZWxlY3Rpb24oZSl7dGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoZSk/dGhpcy5fc2VsZWN0aW9uLnVuc2VsZWN0SXRlbShlKTp0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShlKSx0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKGUpfV9zZWxlY3RBbGwoZSl7dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1zKCkuZm9yRWFjaCgoZT0+dGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0oZSkpKSx0aGlzLl9zZWxlY3Rpb24ub25TZWxlY3QoZSl9X3Vuc2VsZWN0QWxsKGUpe3RoaXMuX3NlbGVjdGlvbi5yZW1vdmVTZWxlY3Rpb25zKCk7Y29uc3QgdD10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW0oKTt0JiZ0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKHQpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlKX19Y2xhc3MgbXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJEZWxldGUiLGhvdGtleTo0NixoYW5kbGVyOnRoaXMuX2RlbGV0ZS5iaW5kKHRoaXMsImRlbCIpLGVsZW1lbnQ6ZS5nbG9iYWxIb3RrZXlFbGVtZW50fSl9X2RlbGV0ZShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRTZWxlY3RlZEl0ZW1zKCkscz10aGlzLl9zZWxlY3Rpb24uZ2V0Q3Vyc29ySXRlbSgpO3MmJnQubGVuZ3RoPjA/dGhpcy5fc2VsZWN0aW9uLm9uRGVsZXRlKHQsZSxzKTpzJiZ0aGlzLl9zZWxlY3Rpb24ub25EZWxldGUoW3NdLGUscyl9fXZhciBfPXMoMzE4OTc0KTtjbGFzcyBne2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Rpc3BhdGNoQ2xpY2s9ZT0+e2UuY3RybEtleSYmISgwLF8uaXNNYWMpKCk/dGhpcy5fc2VsZWN0aW9uLmRpc3BhdGNoTW91c2VFdmVudCgiY3RybCtjbGljayIsZSk6ZS5zaGlmdEtleT90aGlzLl9zZWxlY3Rpb24uZGlzcGF0Y2hNb3VzZUV2ZW50KCJzaGlmdCtjbGljayIsZSk6ZS5tZXRhS2V5JiYoMCxfLmlzTWFjKSgpP3RoaXMuX3NlbGVjdGlvbi5kaXNwYXRjaE1vdXNlRXZlbnQoIm1ldGErY2xpY2siLGUpOnRoaXMuX3NlbGVjdGlvbi5kaXNwYXRjaE1vdXNlRXZlbnQoImNsaWNrIixlKX0sdGhpcy5fb25TZWxlY3Q9ZT0+e3RoaXMuX2NvbGxlY3RLZXlzKCksdGhpcy5fb3B0cy5vblNlbGVjdCYmdGhpcy5fb3B0cy5vblNlbGVjdChlKX0sdGhpcy5fb25OYXZpZ2F0ZT1lPT57dGhpcy5fY29sbGVjdEtleXMoKSx0aGlzLl9vcHRzLm9uTmF2aWdhdGUmJnRoaXMuX29wdHMub25OYXZpZ2F0ZShlKX0sdGhpcy5fZGlzYWJsZVNlbGVjdGlvbj0oKT0+e3RoaXMuX2xpc3Qub25zZWxlY3RzdGFydD0oKT0+ITF9LHRoaXMuX2VuYWJsZVNlbGVjdGlvbj0oKT0+e3RoaXMuX2xpc3Qub25zZWxlY3RzdGFydD0oKT0+bnVsbH0sdGhpcy5fb3B0cz1lLHRoaXMuX2xpc3Q9ZS5saXN0LHRoaXMuX3NlbGVjdGlvbj1uZXcgbCh7bGlzdDplLmxpc3QsbGlzdEl0ZW1DbGFzczplLmxpc3RJdGVtQ2xhc3Msc2VsZWN0ZWRMaXN0SXRlbUNsYXNzOmUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzLGZvY3VzZWRMaXN0SXRlbUNsYXNzOmUuZm9jdXNlZExpc3RJdGVtQ2xhc3Msb25TZWxlY3Q6dGhpcy5fb25TZWxlY3Qsb25OYXZpZ2F0ZTp0aGlzLl9vbk5hdmlnYXRlLApvbkNvbmZpcm06ZS5vbkNvbmZpcm0sb25EZWxldGU6ZS5vbkRlbGV0ZSxtb2RlczplLm1vZGVzLGdsb2JhbEhvdGtleXM6Qm9vbGVhbihlLmdsb2JhbEhvdGtleXMpLGN5Y2xpY05hdmlnYXRpb25EaXNhYmxlZDpCb29sZWFuKGUuY3ljbGljTmF2aWdhdGlvbkRpc2FibGVkKSxlbmFibGVGb2N1c0RPTUVsZW1lbnQ6Qm9vbGVhbihlLmVuYWJsZUZvY3VzRE9NRWxlbWVudCl9KSx0aGlzLl9zZWxlY3RlZEtleXM9W10sdGhpcy5fZm9jdXNlZEtleT1udWxsLHRoaXMuX2N1cnNvcktleT1udWxsLHRoaXMuYWN0aXZhdGUoKSx0aGlzLl9jb2xsZWN0S2V5cygpfWFjdGl2YXRlKCl7dGhpcy5fbGlzdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5fZGlzcGF0Y2hDbGljayksdGhpcy5fbGlzdC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9kaXNhYmxlU2VsZWN0aW9uKSx0aGlzLl9saXN0LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9lbmFibGVTZWxlY3Rpb24pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLnByb21vdGUoKX1kZWFjdGl2YXRlKCl7dGhpcy5fbGlzdC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5fZGlzcGF0Y2hDbGljayksdGhpcy5fbGlzdC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9kaXNhYmxlU2VsZWN0aW9uKSx0aGlzLl9saXN0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9lbmFibGVTZWxlY3Rpb24pfWZvY3VzSXRlbShlKXt0aGlzLl9pc05vdEZvY3VzZWQoZSkmJih0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpLHRoaXMuX3NlbGVjdGlvbi5mb2N1c0l0ZW0oZSkpfXZpc3VhbGx5Rm9jdXNJdGVtKGUpe3RoaXMuX2lzTm90Rm9jdXNlZChlKSYmKHRoaXMuX3NlbGVjdGlvbi5yZW1vdmVTZWxlY3Rpb25zKCksdGhpcy5fc2VsZWN0aW9uLnZpc3VhbGx5Rm9jdXNJdGVtKGUpLHRoaXMuX3NlbGVjdGlvbi5zZWxlY3RJdGVtKGUpKX1yZW1vdmVGb2N1cygpe3RoaXMuX3NlbGVjdGlvbi5yZW1vdmVGb2N1cygpfXJlbW92ZVNlbGVjdGlvbnMoKXt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpfXJlc3RvcmUoKXtpZih0aGlzLl9vcHRzLmdldE5vZGVLZXkpe2NvbnN0IGU9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1zKCksdD10aGlzLl9vcHRzLmdldE5vZGVLZXk7ZS5mb3JFYWNoKChlPT57Y29uc3Qgcz10KGUpO3RoaXMuX2ZvY3VzZWRLZXk9PT1zJiZ0aGlzLl9zZWxlY3Rpb24uZm9jdXNJdGVtKGUpLHRoaXMuX2N1cnNvcktleT09PXMmJnRoaXMuX3NlbGVjdGlvbi5zZXRDdXJzb3IoZSksdGhpcy5fc2VsZWN0ZWRLZXlzLmluY2x1ZGVzKHMpJiZ0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShlKX0pKX19Z2V0U2VsZWN0ZWRLZXlzKCl7cmV0dXJuIHRoaXMuX2NvbGxlY3RLZXlzKCksdGhpcy5fc2VsZWN0ZWRLZXlzfWdldEZvY3VzZWRLZXkoKXtyZXR1cm4gdGhpcy5fY29sbGVjdEtleXMoKSx0aGlzLl9mb2N1c2VkS2V5fHxudWxsfWNsZWFyKCl7dGhpcy5fc2VsZWN0aW9uLmNsZWFyKCl9ZGVzdHJveSgpe3RoaXMuZGVhY3RpdmF0ZSgpLHRoaXMuX3NlbGVjdGlvbi5kZXN0cm95KCksZGVsZXRlIHRoaXMuX3NlbGVjdGlvbixkZWxldGUgdGhpcy5fbGlzdCxkZWxldGUgdGhpcy5fb3B0c31fY29sbGVjdEtleXMoKXtpZih0aGlzLl9vcHRzLmdldE5vZGVLZXkpe2NvbnN0IGU9dGhpcy5fb3B0cy5nZXROb2RlS2V5LHQ9dGhpcy5fc2VsZWN0aW9uLmdldFNlbGVjdGVkSXRlbXMoKSxzPXRoaXMuX3NlbGVjdGlvbi5nZXRGb2N1c2VkSXRlbSgpLG89dGhpcy5fc2VsZWN0aW9uLmdldEN1cnNvckl0ZW0oKTt0aGlzLl9zZWxlY3RlZEtleXM9dC5tYXAoKHQ9PmUodCkpKSx0aGlzLl9mb2N1c2VkS2V5PXM/ZShzKTpudWxsLHRoaXMuX2N1cnNvcktleT1vP2Uobyk6bnVsbH19X2lzTm90Rm9jdXNlZChlKXtyZXR1cm4hdGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoZSkmJiF0aGlzLl9zZWxlY3Rpb24uaXNGb2N1c2VkKGUpfX1mdW5jdGlvbiBwKGUpe3JldHVybiBuZXcgZyhPYmplY3QuYXNzaWduKHt9LHttb2RlczpbYSxoLG0sdSxkXX0sZSkpfX0sMTY4ODI0KGUsdCxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtjb25zdFt0LHMsb109ZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnRvU3RyaW5nKCk7cmV0dXJuW051bWJlcih0LnNsaWNlKDAsNCkpLE51bWJlcih0LnNsaWNlKDQsNikpLE51bWJlcih0LnNsaWNlKDYpKV19KGUpO3JldHVybiBuZXcgRGF0ZSh0LHMtMSxvKX1zLmQodCx7Z2V0RGF0ZUZyb21ZWVlZTU1ERDooKT0+b30pfSwxODIzMDgoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7dXNlUm92aW5nVGFiaW5kZXhFbGVtZW50OigpPT5jfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg3ODc4OTUpLG49cyg2MTYzMTEpO2Z1bmN0aW9uIGMoZSx0PVtdKXtjb25zdFtzLGNdPSgwLG8udXNlU3RhdGUpKCExKSxsPSgwLGkudXNlRnVuY3Rpb25hbFJlZk9iamVjdCkoZSk7cmV0dXJuKDAsbi51c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0KSgoKCk9Pntjb25zdCBlPWwuY3VycmVudDtpZihudWxsPT09ZSlyZXR1cm47Y29uc3QgdD1lPT57c3dpdGNoKGUudHlwZSl7Y2FzZSJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50IjpjKCEwKTticmVhaztjYXNlInJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCI6YyghMSl9fTtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyKCJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50Iix0KSxlLmFkZEV2ZW50TGlzdGVuZXIoInJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCIsdCksKCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJvdmluZy10YWJpbmRleDptYWluLWVsZW1lbnQiLHQpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigicm92aW5nLXRhYmluZGV4OnNlY29uZGFyeS1lbGVtZW50Iix0KX19KSx0KSxbbCxzPzA6LTFdfX0sMzA5ODM2KGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse2FkZFV0bVRvVXJsOigpPT5pfSk7dmFyIG89cyg2MDE1ODcpO2Z1bmN0aW9uIGkoZSx0KXsKaWYoIS8oW2EtekEtWjAtOS4tXSp0cmFkaW5ndmlldy5jb20pfGxvY2FsaG9zdC8udGVzdChlKSlyZXR1cm4gZTtjb25zdCBzPSgwLG8uYnVpbGRVdG1RdWVyeVN0cmluZykodCk7aWYoIiI9PT1zKXJldHVybiBlO2NvbnN0IGk9ZS5pbmRleE9mKCI/Iiksbj1lLmluZGV4T2YoIiMiKSxjPS0xIT09bjtpZigtMSE9PWkmJighY3x8aTxuKSl7cmV0dXJuYCR7ZS5zbGljZSgwLGkpfT8ke2M/ZS5zbGljZShpKzEsbik6ZS5zbGljZShpKzEpfSYke3N9JHtjP2Uuc2xpY2Uobik6IiJ9YH1pZihjKXtyZXR1cm5gJHtlLnNsaWNlKDAsbil9PyR7c30ke2Uuc2xpY2Uobil9YH1yZXR1cm5gJHtlfT8ke3N9YH19LDYwMTU4NyhlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtidWlsZFV0bVF1ZXJ5U3RyaW5nOigpPT5sLGJ1aWxkVXRtUXVlcnlTdHJpbmdGcm9tVXJsUGFyYW1zOigpPT5yLGZpbHRlclV0bUluZm86KCk9PmN9KTt2YXIgbz1zKDQ5MjY3NyksaT1zKDY0MTU5Myk7Y29uc3Qgbj1bInV0bV9zb3VyY2UiLCJ1dG1fbWVkaXVtIiwidXRtX2NhbXBhaWduIl07ZnVuY3Rpb24gYyhlKXtjb25zdCB0PXt9O3JldHVybiBuLmZvckVhY2goKHM9Pntjb25zdCBvPWVbc107InN0cmluZyI9PXR5cGVvZiBvJiYiIiE9PW8mJih0W3NdPSgwLGkuaHRtbEVzY2FwZSkobykpfSkpLHR9ZnVuY3Rpb24gbChlLHQ9ITEpe2NvbnN0IHM9KDAsby5jcmVhdGVVcmxQYXJhbXMpKGUpO3JldHVybiBzJiZ0PyI/IitzOnN9ZnVuY3Rpb24gcihlKXtyZXR1cm4gbChjKCgwLG8uZ2V0VXJsUGFyYW1zKSgpKSxlKX19LDQ2MjcwNChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTIgNGgzdjFoLTEuMDRsLS44OCA5LjY0YTEuNSAxLjUgMCAwIDEtMS41IDEuMzZINi40MmExLjUgMS41IDAgMCAxLTEuNS0xLjM2TDQuMDUgNUgzVjRoM3YtLjVDNiAyLjY3IDYuNjcgMiA3LjUgMmgzYy44MyAwIDEuNS42NyAxLjUgMS41VjRaTTcuNSAzYS41LjUgMCAwIDAtLjUuNVY0aDR2LS41YS41LjUgMCAwIDAtLjUtLjVoLTNaTTUuMDUgNWwuODcgOS41NWEuNS41IDAgMCAwIC41LjQ1aDUuMTdhLjUuNSAwIDAgMCAuNS0uNDVMMTIuOTQgNWgtNy45WiIvPjwvc3ZnPid9LDIwMzMwOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQgOGE0IDQgMCAxIDAgOCAwIDQgNCAwIDEgMC04IDAiLz48L3N2Zz4nfSwyNzQ4NTEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgOGE4IDggMCAxIDAgMTYgMEE4IDggMCAxIDAgMCA4em0yIDBhNiA2IDAgMSAwIDEyIDBBNiA2IDAgMSAwIDIgOHptMiAwYTQgNCAwIDEgMCA4IDAgNCA0IDAgMSAwLTggMCIvPjwvc3ZnPid9LDMzNDU1MChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjggMjgiIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCIgZmlsbD0ibm9uZSI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMTYuNSAyMEwxMSAxNC41IDE2LjUgOSIvPjwvc3ZnPid9LDM4MDU2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4IiBmaWxsPSJub25lIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuNSIgZD0iTTcgMTVsNSA1TDIzIDkiLz48L3N2Zz4nfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12965.406ee59fa009f0e9c26b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.806Z","timestamp":1785154590806,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/12965.406ee59fa009f0e9c26b.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-354b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:24:15\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bde34cf03131d285cc1952b8732925f8\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":13643,"size_decoded":5425,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3059)","md5":"8f068d27c22abe7d9f3f34955d82c013","sha1":"1bb36f3e26b99198a5baab85523b9c98993d8ca3","sha256":"3f53d80ee40e4e88681a0616c27021de72b0dcd57a831595b1569d7bd6f24602","sha512":"2745c2ed092eb78acfa3ce76236a417d40d860e8bb59414a438d07e088373f58b4e4f47813c291879b7b6b36e85b92df41dec082e34ac67c93bb748392e00929","ssdeep":"384:u+Rrmj0QFMfquq4C/u9jqPADqjCI4LWa7ORlzHOafnpuu2Gzxn:u+RrmIbfqdh/u9jqPADqjsLWa7ODtfnF","tlshash":"4852933b71e316b246e645d5843e36429b770284b08750b0b56bebfd0b9ec456223afc","first_seen":"2026-07-24T21:10:00.134074Z","last_seen":"2026-07-27T14:14:25.43861Z","times_seen":141,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NV0sezExNDA2OCh0KXt0LmV4cG9ydHM9eyJjb21tb24tdG9vbHRpcCI6ImNvbW1vbi10b29sdGlwLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhpZGRlbiI6ImNvbW1vbi10b29sdGlwLS1oaWRkZW4tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbCI6ImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC0tZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbCI6ImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC1mYXJ0aGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciI6ImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMiOiJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19idXR0b24iOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCI6ImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93IjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlIjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXkiOiJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jayI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay0tZGl2aWRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dCI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduIjoiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WCJ9fSw3NzkzODkodCxvLGUpeyJ1c2Ugc3RyaWN0IjtlLmQobyx7QWN0aW9uR3JvdXA6KCk9PnN9KTt2YXIgaT1lKDk5MjgwMyk7Y2xhc3Mgc3tjb25zdHJ1Y3Rvcih0LG8pe3RoaXMuX2FjdGlvbnM9bmV3IE1hcCx0aGlzLl9tYW5hZ2VyPXQsdGhpcy5vcmRlcj1vPy5vcmRlcj8/MCx0aGlzLm1vZGFsPSEoIW98fCFvLm1vZGFsKSxvJiYodGhpcy5kZXNjPW8uZGVzYyksbyYmby5pc0Rpc2FibGVkPyJmdW5jdGlvbiI9PXR5cGVvZiBvLmlzRGlzYWJsZWQ/dGhpcy5pc0Rpc2FibGVkPW8uaXNEaXNhYmxlZDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiEwOnRoaXMuaXNEaXNhYmxlZD0oKT0+ITEsdGhpcy5fbWFuYWdlci5yZWdpc3Rlckdyb3VwKHRoaXMpfWFkZCh0KXtsZXQgbz10aGlzLl9hY3Rpb25zLmdldCh0LmhvdGtleSk7b3x8KG89W10sdGhpcy5fYWN0aW9ucy5zZXQodC5ob3RrZXksbykpO2NvbnN0IGU9bmV3IGkuQWN0aW9uKHRoaXMsdCk7cmV0dXJuIG8ucHVzaChlKSxlfXJlbW92ZSh0KXtjb25zdCBvPXRoaXMuX2FjdGlvbnMuZ2V0KHQuaG90a2V5KTtpZighbylyZXR1cm47Y29uc3QgZT1vLmZpbmRJbmRleCgobz0+bz09PXQpKTtlPj0wJiYoMT09PW8ubGVuZ3RoP3RoaXMuX2FjdGlvbnMuZGVsZXRlKHQuaG90a2V5KTpvLnNwbGljZShlLDEpKX1oYW5kbGVIb3RrZXkodCxvKXtjb25zdCBlPXRoaXMuX2FjdGlvbnMuZ2V0KHQpO2lmKCFlKXJldHVybiExO2Zvcihjb25zdCBpIG9mIGUpaWYoKCFpLmVsZW1lbnR8fG8udGFyZ2V0JiZpLmVsZW1lbnQuY29udGFpbnMoby50YXJnZXQpKSYmIWkuaXNEaXNhYmxlZChvKSlyZXR1cm4gby5yZXBlYXQmJiFpLmlzUmVwZWF0QWNjZXB0ZWR8fChpLmhhbmRsZXIobyksdGhpcy5fY2FsbE1hdGNoZWRIb3RrZXlIYW5kbGVyKHQpKSxvLnByZXZlbnREZWZhdWx0KCksITA7cmV0dXJuITF9cHJvbW90ZSgpe3RoaXMuX21hbmFnZXIucHJvbW90ZUdyb3VwKHRoaXMpfWRlc3Ryb3koKXtmb3IoY29uc3RbLHRdb2YgdGhpcy5fYWN0aW9ucylmb3IoY29uc3QgbyBvZiB0KW8uZGVzdHJveSgpO3RoaXMuX2FjdGlvbnMuY2xlYXIoKSx0aGlzLl9tYW5hZ2VyLnVucmVnaXN0ZXJHcm91cCh0aGlzKX0Kc3RhdGljIHNldE1hdGNoZWRIb3RrZXlIYW5kbGVyKHQpe3MuX21hdGNoZWRIb3RrZXlIYW5kbGVyPXR9X2NhbGxNYXRjaGVkSG90a2V5SGFuZGxlcih0KXtzLl9tYXRjaGVkSG90a2V5SGFuZGxlciYmcy5fbWF0Y2hlZEhvdGtleUhhbmRsZXIodCl9fX0sMjkxMzQxKHQsbyxlKXsidXNlIHN0cmljdCI7ZS5kKG8se0FjdGlvbk1hbmFnZXI6KCk9PmN9KTt2YXIgaT1lKDIzMjM2NCkscz1lKDIzNTcyNCksbj1lKDcyMTM2OSkscj1lKDY5NjIwOCk7Y2xhc3MgbCBleHRlbmRzIGkuV2F0Y2hlZFZhbHVle3NldFZhbHVlKHQsbyl7Y29uc3QgZT10aGlzLnZhbHVlKCk7KG98fHZvaWQgMD09PWV8fGUuY29kZSE9PXQuY29kZXx8ZS5tb2RpZmllcnMhPT10Lm1vZGlmaWVycykmJnN1cGVyLnNldFZhbHVlKHQpfX1jbGFzcyBje2NvbnN0cnVjdG9yKCl7dGhpcy5fZ3JvdXBzPVtdLHRoaXMuX3ByZXNzZWRLZXlzPW5ldyBpLldhdGNoZWRWYWx1ZSgwKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGU9bmV3IGwobmV3IHIuS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKDApKSx0aGlzLl9rZXlEb3duTGlzdGVuZXI9dD0+e2lmKHQuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3Qgbz0oMCxzLmhhc2hGcm9tRXZlbnQpKHQpO2lmKHRoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKG8pLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgci5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAscy5tb2RpZmllcnNGcm9tRXZlbnQpKHQpLHQuY29kZSkpLCEoMCxuLmlzTmF0aXZlVUlJbnRlcmFjdGlvbikobyx0LnRhcmdldCkpZm9yKGxldCBlPXRoaXMuX2dyb3Vwcy5sZW5ndGg7ZS0tID4wOyl7Y29uc3QgaT10aGlzLl9ncm91cHNbZV07aWYoIWkuaXNEaXNhYmxlZCgpKXtpZihpLmhhbmRsZUhvdGtleShvLHQpKXJldHVybjtpZihpLm1vZGFsKXJldHVybn19fSx0aGlzLl9rZXlVcExpc3RlbmVyPXQ9Pntjb25zdCBvPSgwLHMuaGFzaEZyb21FdmVudCkodCk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUobyksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyByLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgoMCxzLm1vZGlmaWVyc0Zyb21FdmVudCkodCksIiIpKX0sdGhpcy5fYmx1ckV2ZW50PSgpPT57dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyByLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwLCIiKSl9LHRoaXMuX21vdXNlRXZlbnQ9dD0+e2NvbnN0IG89KDAscy5tb2RpZmllcnNGcm9tRXZlbnQpKHQpLGU9MjU1Jih0aGlzLl9wcmVzc2VkS2V5cy52YWx1ZSgpPz8wKTt0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZShvfGUpfX1saXN0ZW4odCl7dC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLHQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLHQuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSx0LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9dW5saXN0ZW4odCl7dC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9cmVnaXN0ZXJHcm91cCh0KXt0aGlzLl9ncm91cHMucHVzaCh0KSx0aGlzLnNvcnRHcm91cHMoKX11bnJlZ2lzdGVyR3JvdXAodCl7Zm9yKGxldCBvPXRoaXMuX2dyb3Vwcy5sZW5ndGg7by0tOyl0aGlzLl9ncm91cHNbb109PT10JiZ0aGlzLl9ncm91cHMuc3BsaWNlKG8sMSl9cHJvbW90ZUdyb3VwKHQpe2NvbnN0IG89dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCksZT1hKHQsbyk7bGV0IGk9dGhpcy5fZ3JvdXBzLmZpbmRJbmRleCgodD0+YSh0LG8pPT09ZSkpLHM9MDtmb3IoO2k8dGhpcy5fZ3JvdXBzLmxlbmd0aCYmYSh0aGlzLl9ncm91cHNbaV0sbyk9PT1lOyl7Y29uc3Qgbj10aGlzLl9ncm91cHNbaV07bj09PXQ/cz0xOmEobixvKT09PWUmJih0aGlzLl9ncm91cHNbaS1zXT1uKSxpKyt9dGhpcy5fZ3JvdXBzW2ktc109dH1wcmVzc2VkS2V5cygpe3JldHVybiB0aGlzLl9wcmVzc2VkS2V5cy5yZWFkb25seSgpfWtleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgpe3JldHVybiB0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUucmVhZG9ubHkoKX1zb3J0R3JvdXBzKCl7Y29uc3QgdD10aGlzLl9nZXRNb2RhbE9yZGVyRXBvY2goKTt0aGlzLl9ncm91cHMuc29ydCgoKG8sZSk9PmEoZSx0KS1hKG8sdCkpKX1fZ2V0TWluT3JkZXIoKXtyZXR1cm4gdGhpcy5fZ3JvdXBzLnJlZHVjZSgoKHQsbyk9Pk1hdGgubWluKHQsby5vcmRlcikpLDApfV9nZXRNb2RhbE9yZGVyRXBvY2goKXtyZXR1cm4tMiooTWF0aC5hYnModGhpcy5fZ2V0TWluT3JkZXIoKSktMSl9fWZ1bmN0aW9uIGEodCxvKXtyZXR1cm4gdC5vcmRlcisodC5tb2RhbD9vOjApfX0sOTkyODAzKHQsbyxlKXsidXNlIHN0cmljdCI7ZS5kKG8se0FjdGlvbjooKT0+aX0pO2NsYXNzIGl7Y29uc3RydWN0b3IodCxvKXt0aGlzLl9ncm91cD10O2NvbnN0e2hvdGtleTplLGhhbmRsZXI6aSxkZXNjOnMsaXNEaXNhYmxlZDpuLGVsZW1lbnQ6cj1udWxsLGlzUmVwZWF0QWNjZXB0ZWQ6bD0hMX09bzt0aGlzLmhvdGtleT1lLHRoaXMuaGFuZGxlcj1pLHRoaXMuZGVzYz1zLHRoaXMuZWxlbWVudD1yLHRoaXMuaXNSZXBlYXRBY2NlcHRlZD1sLHRoaXMuaXNEaXNhYmxlZD1uPyJmdW5jdGlvbiI9PXR5cGVvZiBuP246KCk9PiEwOigpPT4hMX1kZXN0cm95KCl7dGhpcy5fZ3JvdXAmJih0aGlzLl9ncm91cC5yZW1vdmUodGhpcyksdGhpcy5fZ3JvdXA9bnVsbCl9fX0sNjk2MjA4KHQsbyxlKXsidXNlIHN0cmljdCI7ZS5kKG8sewpLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9PnN9KTt2YXIgaT1lKDIzNTcyNCk7Y2xhc3Mgc3tjb25zdHJ1Y3Rvcih0LG8pe3RoaXMubW9kaWZpZXJzPXQsdGhpcy5jb2RlPW99YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7cmV0dXJuIGkuaXNNYWNLZXlib2FyZD8iTWV0YUxlZnQiPT09dGhpcy5jb2RlfHwiTWV0YVJpZ2h0Ij09PXRoaXMuY29kZXx8Ik9TTGVmdCI9PT10aGlzLmNvZGV8fCJPU1JpZ2h0Ij09PXRoaXMuY29kZToiQ29udHJvbExlZnQiPT09dGhpcy5jb2RlfHwiQ29udHJvbFJpZ2h0Ij09PXRoaXMuY29kZX19fSwzNTYzODAodCxvLGUpeyJ1c2Ugc3RyaWN0IjtlLmQobyx7Z2V0VG9vbHRpcERhdGE6KCk9PnMsc2V0VG9vbHRpcERhdGE6KCk9Pm59KTtjb25zdCBpPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIHModCxvKXtjb25zdCBlPWkuZ2V0KHQpO3JldHVybiBlIGluc3RhbmNlb2YgRnVuY3Rpb24/ZShvKTplJiZlW29dfWZ1bmN0aW9uIG4odCxvLGUpe2lmKGUgaW5zdGFuY2VvZiBGdW5jdGlvbilyZXR1cm4gdm9pZCBpLnNldCh0LGUpO2NvbnN0IHM9aS5nZXQodCksbj12b2lkIDA9PT1zfHxzIGluc3RhbmNlb2YgRnVuY3Rpb24/e306cztuW29dPWUsaS5zZXQodCxuKX19LDQ5MDM3OCh0LG8sZSl7InVzZSBzdHJpY3QiO2UuZChvLHtnZXREYXRhRnJvbVRhcmdldDooKT0+XyxnZXRUb29sdGlwOigpPT55LGhpZGVUb29sdGlwOigpPT5iLHNldFN0eWxlOigpPT5nLHNob3dUb29sdGlwOigpPT5mLHVwZGF0ZVRvb2x0aXBUZXh0RnJvbVRhcmdldDooKT0+dX0pO3ZhciBpLHM9ZSgxMzg2MzgpLG49ZSg0NDM1NTcpLHI9ZSg5NjkxNjgpLGw9KGUoODI5MTgwKSxlKDUxODc1KSksYz1lKDY0MDc0NCksYT1lKDMxODk3NCksZD1lKDY4NjY1MCksbT1lKDM1NjM4MCksaD1lKDM0NTE1MSkscD1lKDExNDA2OCk7ZnVuY3Rpb24gdSh0KXtjb25zdCBvPXQuaGFzQXR0cmlidXRlKCJkYXRhLXRvb2x0aXAiKT90LmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik6dC5nZXRBdHRyaWJ1dGUoInRpdGxlIik7cmV0dXJuIG8mJigoMCxtLnNldFRvb2x0aXBEYXRhKSh0LCJ0ZXh0IixvKSx0LnJlbW92ZUF0dHJpYnV0ZSgidGl0bGUiKSksKDAsbS5nZXRUb29sdGlwRGF0YSkodCwidGV4dCIpfHwiIn1mdW5jdGlvbiBfKHQpe2NvbnN0IG89dSh0KSxlPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaT17aDplLmhlaWdodCx3OmUud2lkdGgseDplLmxlZnQseTplLnRvcH0scz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jb2xvci10aGVtZSIpfHwiIixuPXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1odG1sIikscj1wYXJzZUludCh0LmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwLWRlbGF5Iil8fCIiKSxsPXBhcnNlSW50KHQuZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtZGVib3VuY2UiKXx8IiIpO2xldCBjPXt0eXBlOiJub25lIn07cmV0dXJuIG8mJihjPXt0eXBlOm4/Imh0bWwiOiJ0ZXh0IixkYXRhOm99KSx7YWJvdmU6dC5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLWFib3ZlIiksYmVsb3c6dC5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLWJlbG93Iiksb3RsOnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1vdGwiKSxvdHI6dC5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW90ciIpLHZlcnRpY2FsOnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC12ZXJ0aWNhbCIpLGhvdGtleTp0LmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwLWhvdGtleSIpLG5hcnJvdzp0LmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtbmFycm93Iiksd2lkZTp0LmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtd2lkZSIpLGNvbG9yVGhlbWU6cyx0b29sdGlwRGVsYXk6cix0b29sdGlwRGVib3VuY2U6bCxyZWN0OmksY29udGVudDpjLHRhcmdldDp0fX1mdW5jdGlvbiB5KHQpe2NvbnN0IG89KDAscy5lbnN1cmVOb3ROdWxsKShFKS5jbG9uZU5vZGUoITApLGU9TShvKSx7Y29udGVudDppfT10O3N3aXRjaChpLnR5cGUpe2Nhc2UiZWxlbWVudCI6ZS5pbm5lckhUTUw9IiIsZS5hcHBlbmRDaGlsZChpLmRhdGEpO2JyZWFrO2Nhc2UiaHRtbCI6ZS5pbm5lckhUTUw9aS5kYXRhO2JyZWFrO2Nhc2UidGV4dCI6aWYodC5ob3RrZXkpe2NvbnN0IHQ9KDAscy5lbnN1cmVOb3ROdWxsKShCKS5jbG9uZU5vZGUoITApO3QuaW5uZXJUZXh0PWkuZGF0YSxlLmFwcGVuZENoaWxkKHQpfWVsc2UgZS5pbm5lclRleHQ9aS5kYXRhfWlmKHQuaG90a2V5KXtjb25zdCBvPSJub25lIiE9PWkudHlwZSxuPSgwLHMuZW5zdXJlTm90TnVsbCkoRCkuY2xvbmVOb2RlKCEwKSxyPSgwLGguaG90S2V5RGVzZXJpYWxpemUpKHQuaG90a2V5KSxsPXIua2V5cy5tYXAoKHQ9PmA8c3BhbiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJ1dHRvbiJdfSI+JHt0fTwvc3Bhbj5gKSk7bi5pbm5lckhUTUw9ZnVuY3Rpb24odCxvKXtjb25zdCBlPS97XGR9fHtob3RrZXlfXGR9L2dpO3JldHVybiB0LnJlcGxhY2UoZSwodD0+e2NvbnN0IGU9TnVtYmVyKHQubWF0Y2goL1xkLykpO3JldHVybiBvW2VdfSkpfShyLnRleHQsbCkucmVwbGFjZSgvXHNcK1xzL2csYDxzcGFuIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19wbHVzLXNpZ24iXX0iPis8L3NwYW4+YCksZS5jbGFzc0xpc3QuYWRkKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS13aXRoLWhvdGtleSJdKSxvJiZuLmNsYXNzTGlzdC5hZGQocFsiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay0tZGl2aWRlciJdKSxlLmFwcGVuZENoaWxkKG4pfXJldHVybiBvLmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IixsLnByZXZlbnREZWZhdWx0KSxvfWZ1bmN0aW9uIGcodCxvKXtjb25zdCBlPW8ucmVjdDtpZighZSlyZXR1cm47KDAsZC5zZXRUb29sdGlwQ29sb3JUaGVtZSkodCxvLmNvbG9yVGhlbWV8fCJkZWZhdWx0IikKO2NvbnN0IGk9TSh0KSxzPXQucXVlcnlTZWxlY3RvcihgLiR7cFsiY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXIiXX1gKTtvLmFkZENsYXNzJiZ0LmNsYXNzTGlzdC5hZGQoby5hZGRDbGFzcyksby5hZGRCb2R5Q2xhc3MmJmkuY2xhc3NMaXN0LmFkZChvLmFkZEJvZHlDbGFzcyksaS5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlIl0sQm9vbGVhbihvLndpZGUpKSxpLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLXBhZGRpbmciXSxCb29sZWFuKG8ubm9QYWRkaW5nKSksaS5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ciXSxCb29sZWFuKG8ubmFycm93KSksaS5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zIl0sITApLGkuc3R5bGUubGVmdD12KDApLGkuc3R5bGUud2lkdGg9dihpLmNsaWVudFdpZHRoKyhCb29sZWFuKG8ubm9QYWRkaW5nKT8wOjIpKTtjb25zdCBuPWRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgsbD1hLkNoZWNrTW9iaWxlLmlPUygpfHxhLkNoZWNrTW9iaWxlLkFuZHJvaWQoKXx8KDAsYS5zdXBwb3J0VG91Y2gpKCkmJigwLGEuaXNNYWMpKCk/d2luZG93LmlubmVySGVpZ2h0OmRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0LG09by52ZXJ0aWNhbCxoPW8uZXh0ZW5kTWFyZ2lufHxtJiZlLnc8MjB8fCFtJiZlLmg8MjA7dC5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1mYXJ0aGVyIl0saCksdC5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbCJdLG0pLHQuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbCJdLCFtKTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3IoYC4ke3BbImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19YCl9KHQpLF89dC5vZmZzZXRIZWlnaHQ7aWYobSl7Y29uc3QgYT0xMCxkPWwtMTAsbT0xMixoPWErbSx5PWQtbSxnPSgwLGMuY2xhbXApKGUueStlLmgvMixoLHkpLV8vMixmPWcrXzt0LnN0eWxlLmxlZnQ9dihlLngrZS53KSx0LnN0eWxlLnRvcD12KGcpLGc8YT9pLnN0eWxlLnRvcD1zLnN0eWxlLnRvcD12KGEtZyk6Zj5kJiYoaS5zdHlsZS50b3A9cy5zdHlsZS50b3A9dihkLWYpKTtjb25zdHtyaWdodDpifT0odC5xdWVyeVNlbGVjdG9yKCI6bGFzdC1jaGlsZCIpfHxpKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx3PWIrMTA+bjt0LmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCJdLHcpLHQuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbCJdLCF3KTtsZXQgaz13PyJhZnRlciI6ImJlZm9yZSI7KDAsci5pc1J0bCkoKT8oaz1vLm90cj8iYWZ0ZXIiOmssaz1vLm90bD8iYmVmb3JlIjprKTooaz1vLm90cj8iYmVmb3JlIjprLGs9by5vdGw/ImFmdGVyIjprKSx1LmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZSJdLCJiZWZvcmUiPT09ayksdS5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlciJdLCJhZnRlciI9PT1rKSwiYWZ0ZXIiPT09ayYmKHQuc3R5bGUubGVmdD0iYXV0byIsdC5zdHlsZS5yaWdodD12KG4tZS54KSl9ZWxzZXtjb25zdCByPWUueC0oaS5vZmZzZXRXaWR0aC1lLncpLzIsYz1uLXQub2Zmc2V0V2lkdGgtMjA8PTA/KG4tdC5vZmZzZXRXaWR0aCkvMjoxMCxhPW4tYy10Lm9mZnNldFdpZHRoLGQ9TWF0aC5tYXgoYyxNYXRoLm1pbihyLGEpKTt0LnN0eWxlLmxlZnQ9dihkKTtjb25zdCBtPWE8cjt0LmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCJdLG0pLHQuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbCJdLCFtKTtjb25zdCBoPWZ1bmN0aW9uKHQsbyxlLGkpe2lmKHQuYWJvdmUpcmV0dXJuIFQobyxpKT8iYWJvdmUiOiJiZWxvdyI7aWYodC5iZWxvdylyZXR1cm4gZnVuY3Rpb24odCxvLGUpe3JldHVybiBlLnkrZS5oK28rMTA8dH0obyxlLGkpPyJiZWxvdyI6ImFib3ZlIjtyZXR1cm4gVChlLGkpPyJhYm92ZSI6ImJlbG93In0obyxsLF8sZSk7ImFib3ZlIj09PWg/dC5zdHlsZS5ib3R0b209dihsLWUueSk6dC5zdHlsZS50b3A9dihlLnkrZS5oKSx1LmNsYXNzTGlzdC5hZGQoImFib3ZlIj09PWg/cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlIl06cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93Il0pO2NvbnN0e2xlZnQ6eX09aS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtsZXQgZz1NYXRoLnRydW5jKGUueCtlLncvMi0oeStpLmNsaWVudFdpZHRoLzIpKTt0LnN0eWxlLmxlZnQ9dihkK2cpLHQuc3R5bGUud2lkdGg9dihpLmNsaWVudFdpZHRoK3MuY2xpZW50V2lkdGgpLGc9bT9NYXRoLm1heCgwLGcpOk1hdGgubWluKDAsZykscy5zdHlsZS5sZWZ0PXYoLWcpLGkuc3R5bGUubGVmdD12KC1nKX19ZnVuY3Rpb24gZih0KXt0LmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLWhpZGRlbiJdLCExKX1mdW5jdGlvbiBiKHQpe3QuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0taGlkZGVuIl0sITApfWZ1bmN0aW9uIHYodCl7cmV0dXJuYCR7TWF0aC5mbG9vcih0KX1weGB9IWZ1bmN0aW9uKHQpe3RbdC5WaWV3cG9ydFBhZGRpbmc9MTBdPSJWaWV3cG9ydFBhZGRpbmcifShpfHwoaT17fSkpCjtjb25zdCB3PWBcblx0PGRpdiBpZD0iY29tbW9uLXRvb2x0aXAtd3JhcHBlciIgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXAiXX0iPlxuXHRcdDxkaXYgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiXX0iID5cblx0XHRcdDxkaXYgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX2JvZHkiXX0ganMtdG9vbHRpcC1ib2R5Ij48L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19Ij48L2Rpdj5cblx0PC9kaXY+XG5gLGs9YFxuXHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2siXX0iPjwvZGl2PlxuYCxMPWBcblx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQiXX0iPjwvZGl2PlxuYCxFPSgwLG4ucGFyc2VIdG1sRWxlbWVudCkodyksRD0oMCxuLnBhcnNlSHRtbEVsZW1lbnQpKGspLEI9KDAsbi5wYXJzZUh0bWxFbGVtZW50KShMKTtmdW5jdGlvbiBNKHQpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3IoYC4ke3BbImNvbW1vbi10b29sdGlwX19ib2R5Il19YCl9ZnVuY3Rpb24gVCh0LG8pe3JldHVybiAxMCt0PG8ueX19LDE2Nzg5Nih0LG8sZSl7InVzZSBzdHJpY3QiO2UuZChvLHtlbXB0eTooKT0+cixzZXRUb29sdGlwOigpPT5sfSk7Y29uc3QgaT0idG9vbHRpcC1yb290LWVsZW1lbnQiO2xldCBzO2Z1bmN0aW9uIG4oKXtjb25zdCB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGkpO3Q/cz10OihzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHMuaWQ9aSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHMpKX1mdW5jdGlvbiByKCl7cyYmKHMuaW5uZXJIVE1MPSIiKX1mdW5jdGlvbiBsKHQpe3IoKSxzfHxuKCkscy5hcHBlbmRDaGlsZCh0KX0iaW50ZXJhY3RpdmUiPT09ZG9jdW1lbnQucmVhZHlTdGF0ZT9uKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbil9LDY1ODk5NSh0LG8sZSl7InVzZSBzdHJpY3QiO2UuZChvLHtjbGVhclNjaGVkdWxlOigpPT5yLHNjaGVkdWxlSGlkZTooKT0+YyxzY2hlZHVsZVJlbW92ZTooKT0+bCxzY2hlZHVsZVJlbmRlcjooKT0+YX0pO2xldCBpPTAscz0wLG49MDtmdW5jdGlvbiByKCl7Y2xlYXJUaW1lb3V0KGkpLGNsZWFyVGltZW91dChzKSxjbGVhclRpbWVvdXQobil9ZnVuY3Rpb24gbCh0LG8pe249c2V0VGltZW91dCh0LG8pfWZ1bmN0aW9uIGModCxvKXtzPXNldFRpbWVvdXQodCxvKX1mdW5jdGlvbiBhKHQsbyl7aT1zZXRUaW1lb3V0KHQsbyl9fSw2ODY2NTAodCxvLGUpeyJ1c2Ugc3RyaWN0IjtlLmQobyx7c2V0VG9vbHRpcENvbG9yVGhlbWU6KCk9Pm59KTtjb25zdCBpPXtkZWZhdWx0OiIiLHdoaXRlOiJ0aGVtZS13aGl0ZSIsY2hhcnQ6InRoZW1lLWNoYXJ0IixuZXdzOiJ0aGVtZS1uZXdzIiwicm91bmQtc2hhZG93IjoidGhlbWUtcm91bmQtc2hhZG93In0scz1PYmplY3Qua2V5cyhpKTtmdW5jdGlvbiBuKHQsbyl7Y29uc3QgZT1zLmluY2x1ZGVzKG8pP2lbb106IiI7dC5jbGFzc0xpc3QucmVtb3ZlKC4uLnMubWFwKCh0PT5pW3RdKSkuZmlsdGVyKCh0PT4hIXQpKSksZSYmIXQuY2xhc3NMaXN0LmNvbnRhaW5zKGUpJiZ0LmNsYXNzTGlzdC5hZGQoZSl9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scanner.tradingview.com/crypto/metainfo?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old","fqdn":"scanner.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"143.204.238.100","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.016Z","timestamp":1785154591016,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Thu, 09 Oct 2025 00:00:00 GMT","end":"Fri, 06 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"02:47:4D:AC:A6:12:65:AD:C2:19:CD:7E:61:B8:BF:E1:D8:36:CF:00","sha256":"12:7C:86:50:31:B1:3E:03:76:8B:F1:84:D4:AD:BC:95:0E:C1:60:40:F5:CE:75:F0:11:AF:91:BC:55:C1:D7:36"}}},"request":{"raw":"POST /crypto/metainfo?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old HTTP/1.1\r\nHost: scanner.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/json, text/javascript, */*; q=0.01\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8\r\nContent-Length: 22\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"POST","post_data":{"size":22,"data":"{\"markets\":[\"crypto\"]}"}},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/json; charset=utf-8\r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\nvary: Origin\r\ncontent-encoding: gzip\r\nx-perm-error: InvalidCredential\r\nserver: tv\r\nvia: 76.164.233.87:443, 1.1 4c304736e6087956cb00821d710060a4.cloudfront.net (CloudFront)\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-allow-headers: Referer,Accept\r\naccess-control-allow-methods: GET, POST\r\naccess-control-allow-credentials: true\r\naccess-control-max-age: 86400\r\nx-cache: Miss from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 3P0KgfjA2fRk0dQqHPTlzMCJmfGLNJKgUyS0InNqlzN03V4eqaxFUw==\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":166709,"size_decoded":29345,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"8321b5e0e46dfb9f3489c43e5d083015","sha1":"8a2603959a199e67e83583ea46d4414ea927a578","sha256":"9c4dab78a9661ed71abe00623cbbf4ac6c4d08a5dc6a430491311a021999f1f3","sha512":"d4c0dd56dcccfb796f832d915e09c26ade94de48a5781b005fb68b3b396cb7231860d1354957a94e620b68c0ce9cae0bcc9b066fab838eae7d4572697d47a609","ssdeep":"3072:GmqpfWya4x8mW/IM83ZdcUpWTn+tLBQViL:GqyumW/IM83ZdcUpWTn+tLBQViL","tlshash":"73f30ea9e98524be01736f5f20fb632837bc4903f3d21858e5570e4127da275b0a76be","first_seen":"2026-07-27T12:17:15.124802Z","last_seen":"2026-07-27T12:17:15.124802Z","times_seen":1,"resource_available":false,"data":"eyJmaW5hbmNpYWxfY3VycmVuY3kiOiJVU0QiLCJmaWVsZHMiOlt7Im4iOiJkZXhfc2VsbHNfNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibGFyZ2VfdHhfY291bnQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiMjRoX3ZvbF9jbWMiLCJ0IjoiZnVuZGFtZW50YWxfcHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5ZXJzXzRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF90cmFkaW5nX3ZvbHVtZV8xaCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByaWNlc2NhbGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJvdmlkZXItaWQiLCJ0IjoidGV4dCIsInIiOlsieHRjb20iLCJwaW9uZXgiLCJiaXR2YXZvIiwiYml0Zmx5ZXIiLCJob25leXN3YXAiLCJidGNjIiwia2F0YW5hMyIsImRlbHRhaW4iLCJ0cmFkZXJqb2UiLCJ2ZWxvZHJvbWVzbGlwc3RyZWFtIiwicGFuZ29saW4iLCJtZXhjIiwid2hpdGViaXQiLCJnYXRlIiwicmF5ZGl1bWNsbW0iLCJ0dmMiLCJiaXR1bml4IiwiY3VydmUiLCJ3ZWV4IiwicGFuY2FrZXN3YXAiLCJjb2luamFyIiwiYWVyb2Ryb21lIiwiZ2VtaW5pIiwiZGVyaWJpdCIsInZ2c2ZpbmFuY2UiLCJiaXRydWUiLCJ1cGJpdCIsImJ0c2UiLCJjYW1lbG90MiIsImxmajJkb3QyIiwiY2FtZWxvdDMiLCJjZXR1cyIsInN5bmNzd2FwMiIsInJhbXNlczIiLCJieWJpdCIsImNvaW5zd2l0Y2giLCJiaW5neCIsIm9reCIsImt1Y29pbiIsImNvaW5iYXNlIiwiZGVlcGNvaW4iLCJieWRmaSIsImNvaW5leCIsInJheWRpdW1jcG1tIiwicGhlbWV4IiwidnZzMyIsInN1c2hpc3dhcCIsInBoYXJhb2giLCJiYXNlc3dhcCIsInprc3dhcCIsInJheWRpdW0iLCJrcmFrZW4iLCJvcmNhIiwidmVsb2Ryb21lMiIsImJpbmFuY2UiLCJzdW5zd2FwIiwidG9vYml0Iiwia2NleCIsInBhbmNha2Vzd2FwMyIsImJpdGZpbmV4IiwidHVyYm9zZmluYW5jZSIsIm1tZmluYW5jZSIsImthdGFuYSIsInF1aWNrc3dhcDMiLCJiaXRnZXQiLCJ3b29uZXR3b3JrIiwiY29pbnciLCJiaXRzdGFtcCIsInF1aWNrc3dhcCIsImJsYWNraG9sZTMiLCJ1bmlzd2FwNCIsImh0eCIsIm1ldGVvcmFkeW4iLCJzdG9uZmkiLCJjcnlwdG9jb20iLCJzcG9va3lzd2FwIiwidW5pc3dhcDMiLCJiaXRhenphIiwiYml0aHVtYiIsImJsdWVmaW4iLCJkZWR1c3QiLCJsYmFuayIsInBvbG9uaWV4IiwiYml0c28iLCJiaXRtZXgiLCJ2ZWxvZHJvbWUiLCJhZXJvZHJvbWVzbGlwc3RyZWFtIiwicHVsc2V4Iiwiem9vbWV4IiwiYml0bWFydCIsImJsb2ZpbiIsImJpc3dhcCIsIm1ldGVvcmFkbG1tIiwic3luY3N3YXAiLCJiaXRrdWIiLCJ1bmlzd2FwIl19LHsibiI6Im1heF9zdXBwbHkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibG9zc2VzX2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5X3ZvbHVtZV8xNW0iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjb250cmlidXRvcnNjcmVhdGVkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImN1cnJlbnRfc2Vzc2lvbiIsInQiOiJ0ZXh0IiwiciI6WyJtYXJrZXQiXX0seyJuIjoidHhzX2NvdW50IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdpdGh1Yl9jb21taXRzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImFkZHJlc3Nlc19uZXciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibWlubW92ZTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicnRjIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eV92b2x1bWVfNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjcnlwdG9fY29uc2Vuc3VzX2FsZ29yaXRobXMiLCJ0Ijoic2V0IiwiciI6W119LHsibiI6InR3aXR0ZXJfcG9zaXRpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYmxvY2tjaGFpbi1pZCIsInQiOiJ0ZXh0IiwiciI6WyJhcmJpdHJ1bSIsImJhc2UiLCJldGhlcmV1bSIsImNyb25vcyIsInprc3luY19lcmEiLCJhdmFsYW5jaGVfY19jaGFpbiIsImZhbnRvbSIsInVuaWNoYWluIiwiZ25vc2lzX2NoYWluIiwicG9seWdvbiIsInJvbmluIiwidG9uIiwicHVsc2VjaGFpbiIsInRyb24yMCIsIm9wdGltaXNtIiwic3VpX25ldHdvcmsiLCJzb2xhbmEiLCJibmJfc21hcnRfY2hhaW5fYmVwMjAiXX0seyJuIjoiYWxsX3RpbWVfaGlnaF9kYXkiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImRleF9idXlzXzFoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsc18xMmgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYWx0cmFuayIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJzb3VyY2UtbG9nb2lkIiwidCI6InRleHQiLCJyIjpbInNvdXJjZS9CSVRVTklYIiwic291cmNlL01NRklOQU5DRSIsInNvdXJjZS9TVE9ORkkiLCJzb3VyY2UvQ1JZUFRPQ09NIiwic291cmNlL1BBTkNBS0VTV0FQM0FSQklUUlVNIiwic291cmNlL1VOSVNXQVA0QVZBTEFOQ0hFIiwic291cmNlL0JJTkdYIiwic291cmNlL1pPT01FWCIsInNvdXJjZS9CSVRGSU5FWCIsInNvdXJjZS9TVVNISVNXQVBQT0xZR09OIiwic291cmNlL1ZFTE9EUk9NRVNMSVBTVFJFQU0iLCJzb3VyY2UvQklTV0FQIiwic291cmNlL1BJT05FWCIsInNvdXJjZS9QQU5DQUtFU1dBUDNFVEgiLCJzb3VyY2UvVU5JU1dBUDRCQVNFIiwic291cmNlL0NPSU5TV0lUQ0giLCJzb3VyY2UvS1JBS0VOIiwic291cmNlL1VOSVNXQVA0UE9MWUdPTiIsInNvdXJjZS9UUkFERVJKT0UiLCJzb3VyY2UvU1RPTkZJMiIsInNvdXJjZS9TVVNISVNXQVAiLCJzb3VyY2UvREVEVVNUIiwic291cmNlL1dFRVgiLCJzb3VyY2UvQ1VSVkVBUkJJVFJVTSIsInNvdXJjZS9aS1NXQVAiLCJzb3VyY2UvUVVJQ0tTV0FQIiwic291cmNlL1RPT0JJVCIsInNvdXJjZS9CTFVFRklOIiwic291cmNlL1VOSVNXQVA0QlNDIiwic291cmNlL0JJVEhVTUIiLCJzb3VyY2UvUkFZRElVTUNMTU0iLCJzb3VyY2UvREVMVEFJTiIsInNvdXJjZS9WVlNGSU5BTkNFIiwic291cmNlL1VOSVNXQVA0VU5JQ0hBSU4iLCJzb3VyY2UvTEJBTksiLCJzb3VyY2UvQklUS1VCIiwic291cmNlL0JJVE1BUlQiLCJzb3VyY2UvUEhFTUVYIiwic291cmNlL0dFTUlOSSIsInNvdXJjZS9QQU5HT0xJTiIsInNvdXJjZS9DT0lORVgiLCJzb3VyY2UvVU5JU1dBUDNBVkFMQU5DSEUiLCJzb3VyY2UvU1BPT0tZU1dBUCIsInNvdXJjZS9VTklTV0FQM09QVElNSVNNIiwic291cmNlL1BVTFNFWCIsInNvdXJjZS9CSVRWQVZPIiwic291cmNlL0hPTkVZU1dBUCIsInNvdXJjZS9BRVJPRFJPTUUiLCJzb3VyY2UvUE9MT05JRVgiLCJzb3VyY2UvTUVURU9SQURZTiIsInNvdXJjZS9CSVRSVUUiLCJzb3VyY2UvQklURkxZRVIiLCJzb3VyY2UvVU5JU1dBUDNFVEgiLCJzb3VyY2UvQklUQVpaQSIsInNvdXJjZS9VTklTV0FQM0JTQyIsInNvdXJjZS9DT0lOQkFTRSIsInNvdXJjZS9TWU5DU1dBUCIsInNvdXJjZS9CSVRNRVgiLCJzb3VyY2UvUVVJQ0tTV0FQM1BPTFlHT04iLCJzb3VyY2UvQlRDQyIsInNvdXJjZS9LQ0VYIiwic291cmNlL0JMQUNLSE9MRTMiLCJzb3VyY2UvQkxPRklOIiwic291cmNlL1hUQ09NIiwic291cmNlL1BBTkNBS0VTV0FQM0JTQyIsInNvdXJjZS9WRUxPRFJPTUUyIiwic291cmNlL0tVQ09JTiIsInNvdXJjZS9TVU5TV0FQMiIsInNvdXJjZS9DT0lOSkFSIiwic291cmNlL1ZWUzMiLCJzb3VyY2UvS0FUQU5BIiwic291cmNlL0NFVFVTIiwic291cmNlL1BBTkNBS0VTV0FQM1pLU1lOQyIsInNvdXJjZS9VUEJJVCIsInNvdXJjZS9BRVJPRFJPTUVTTElQU1RSRUFNIiwic291cmNlL1dISVRFQklUIiwic291cmNlL1JBWURJVU1DUE1NIiwic291cmNlL1VOSVNXQVAzUE9MWUdPTiIsInNvdXJjZS9NRVRFT1JBRExNTSIsInNvdXJjZS9PS1giLCJzb3VyY2UvV09PTkVUV09SSyIsInNvdXJjZS9CSVRTTyIsInNvdXJjZS9CSVRHRVQiLCJzb3VyY2UvQllERkkiLCJzb3VyY2UvQlRTRSIsInNvdXJjZS9PUkNBIiwic291cmNlL0NBTUVMT1QzQVJCSVRSVU0iLCJzb3VyY2UvVFVSQk9TRklOQU5DRSIsInNvdXJjZS9VTklTV0FQIiwic291cmNlL01FWEMiLCJzb3VyY2UvUEFOQ0FLRVNXQVAzQkFTRSIsInNvdXJjZS9DVVJWRSIsInNvdXJjZS9VTklTV0FQNEFSQklUUlVNIiwic291cmNlL0JBU0VTV0FQIiwic291cmNlL0hUWCIsInNvdXJjZS9DT0lOVyIsInNvdXJjZS9LQVRBTkEzIiwic291cmNlL1VOSVNXQVAzQVJCSVRSVU0iLCJzb3VyY2UvUkFNU0VTMiIsInNvdXJjZS9QQU5DQUtFU1dBUCIsInNvdXJjZS9VTklTV0FQQkFTRSIsInNvdXJjZS9SQVlESVVNIiwic291cmNlL0dBVEUiLCJzb3VyY2UvREVFUENPSU4iLCJzb3VyY2UvREVSSUJJVCIsInNvdXJjZS9VTklTV0FQNE9QVElNSVNNIiwic291cmNlL0JJTkFOQ0VVUyIsInNvdXJjZS9WRUxPRFJPTUUiLCJzb3VyY2UvUFVMU0VYMiIsInNvdXJjZS9QSEFSQU9IIiwic291cmNlL1NZTkNTV0FQMiIsInNvdXJjZS9VTklTV0FQNEVUSCIsInNvdXJjZS9VTklTV0FQM0JBU0UiLCJzb3VyY2UvQklUU1RBTVAiLCJzb3VyY2UvQ0FNRUxPVCIsInNvdXJjZS9MRkoyRE9UMiIsInNvdXJjZS9CWUJJVCIsInNvdXJjZS9CSU5BTkNFIl19LHsibiI6ImRleF9idXlzXzEyaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJpbnRlcmFjdGlvbnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidG90YWxfc2hhcmVzX2RpbHV0ZWQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYWxsX3RpbWVfb3BlbiIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9idXllcnNfMTJoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsZXJzXzFoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsX3ZvbHVtZV80aCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsX3ZvbHVtZV8yNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjb250cmlidXRvcnNhY3RpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidHdpdHRlcl9uZWdhdGl2ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkYWlseS1iYXIudGltZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhZGRyZXNzZXNfemVyb19iYWxhbmNlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfdW5pcV8yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3VycmVudF95aWVsZCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxlcnNfMjRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2VfdHJhbnNhY3Rpb25fdXNkIiwidCI6ImZ1bmRhbWVudGFsX3ByaWNlIiwiciI6bnVsbH0seyJuIjoiYXRfdGhlX21vbmV5X2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5c18xNW0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eWVyc18xNW0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eV92b2x1bWVfMjRoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF91bmlxXzEyaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJzb2NpYWxfdm9sdW1lXzI0aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhbGxfdGltZV9oaWdoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoibGFyZ2VfdHhfdm9sdW1lX3VzZCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsX3ZvbHVtZV8xaCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF90cmFkaW5nX3ZvbHVtZV8xMmgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjcnlwdG9fY29kZSIsInQiOiJ0ZXh0IiwiciI6WyJYVFoiLCJXTEQiLCJNT09ERU5HIiwiUEVORExFIiwiVEFPIiwiVklSVFVBTCIsIkVTUCIsIkJBQlkiLCJLU00iLCJBTVAiLCJSQVkiLCJBUkIiLCJIWVBFUiIsIkhVTUEiLCJCR0IiLCJOWFBDIiwiUE9ORCIsIkJSRVYiLCJYQVVUIiwiT1BYIiwiSEFFREFMIiwiU1BYIiwiTUFOQSIsIkFQVCIsIklDUCIsIlQiLCJXRVQiLCJBRVJPIiwiQUlPWiIsIlJFU09MViIsIlpPUkEiLCJORUFSIiwiUkUiLCJEQVNIIiwiQ0hJUCIsIlNUT1JKIiwiVVNEUSIsIkJMVVIiLCJYTVIiLCJQVU5ESVgiLCJQRU5HVSIsIktMViIsIk5NUiIsIlNBRkUiLCJTTFgiLCJTRU5UIiwiQ1ZDIiwiUEFYRyIsIlNPUEgiLCJCSUNPIiwiU1RHIiwiRUxBIiwiRURHRSIsIkdVTiIsIkxBIiwiS0lURSIsIlNUWCIsIkFWTlQiLCJNQU5FS0kiLCJPUkJTIiwiTElOSyIsIlBMVU1FIiwiSFlQRSIsIkciLCJXQ1QiLCJQUk9NIiwiUE9MIiwiU1VJIiwiRVVSUSIsIkRFTlQiLCJMVU5BIiwiUkVOREVSIiwiVVNEMSIsIkVVTCIsIkRFRVAiLCJNTEsiLCJJTklUIiwiS1JMIiwiWkVDIiwiQ0MiLCJET1QiLCJMRU8iLCJBQVZFIiwiTUlOQSIsIkFEQSIsIk9SREVSIiwiQ1RDIiwiWFJQIiwiWUIiLCJQRVBFIiwiRFJJRlQiLCJDWUJFUiIsIk9ORE8iLCJTQUhBUkEiLCJSVk4iLCJCTEVORCIsIkdPTUlOSU5HIiwiTUFOVFJBIiwiUFJPVkUiLCJTQyIsIk1FR0EiLCJNRVRJUyIsIkRPR0UiLCJQUk9TIiwiU1BLIiwiU09MIiwiVFJVTVAiLCJUSEVUQSIsIkNBS0UiLCJKVE8iLCJBU1RFUiIsIk5FV1QiLCJBTklNRSIsIjJaIiwiTFRDIiwiV0xGSSIsIlhZTyIsIlNZUlVQIiwiS0VSTkVMIiwiV0JUIiwiRVRDIiwiUE5LIiwiQklPIiwiQkFSRCIsIlVTVCIsIkxVTkMiLCJMQVQiLCJXQUwiLCJNTE4iLCJBRVJHTyIsIkZFVCIsIktBSUEiLCJSTEMiLCJTUFVSUyIsIkJJR1RJTUUiLCJBQ1MiLCJCVEMiLCJHUkFNIiwiTU9SUEhPIiwiVU5JIiwiTU9OQSIsIkFSSyIsIklSWVMiLCJNT04iLCJDUk8iLCJPUEciLCJBIiwiU1RBQkxFIiwiVlZWIiwiVVNERiIsIk9SQ0EiLCJUUkFDIiwiUk9OIiwiRVRIIiwiVE9OIiwiQ0tCIiwiSU5KIiwiQ0ZHIiwiWFBMIiwiQUtUIiwiT0NFQU4iLCJFUkEiLCJNQVNLIiwiTkNUIiwiQ09XIiwiWkFNQSIsIk5ZTSIsIlFOVCIsIkNTUFIiLCJQRUFRIiwiVFJYIiwiUkxTIiwiWktDIiwiU0tSIiwiQVIiLCJXQlRDIiwiTU5UIiwiWERDIiwiQklSQiIsIkJOVCIsIktBVCIsIlhMTSIsIkhCQVIiLCJGSUwiLCJCT1JBIiwiVFJVU1QiLCJPUkFJIiwiQkNIIiwiV0lOIiwiRkxVSUQiLCJBWEwiLCJTSElCIiwiUFJMIiwiQVZBWCIsIk9BUyIsIkRFR0VOIiwiVVNEUyIsIlJBRCIsIlVTRFQiLCJMSU5FQSIsIlVTREMiLCJDT1JFIiwiVVNBVCIsIlNHQiIsIk1NVCIsIkJOQiJdfSx7Im4iOiJjcnlwdG9fdG90YWxfcmFuayIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmdfYmFsYW5jZSIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfMWgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2lyY3VsYXRpbmdfc3VwcGx5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9jcmVhdGVkX3RpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImRleF9idXllcnNfMWgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF8xNW0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoic2VjdG9yIiwidCI6InRleHQiLCJyIjpbIlNvbHN0aWNlIiwiV29ybGQgTGliZXJ0eSBGaW5hbmNpYWwgVVNEIiwiV2VuIExhbWJvIEZpbmFuY2lhbCIsIlNlbnRpZW50IiwiVE9OIFRva2VuIiwiWWllbGRCYXNpcyIsIlJlbmRlciIsIlphbWEiLCJEYXNoIiwiT3JkZXJseSIsIkluamVjdGl2ZSBQcm90b2NvbCIsIkxvbWJhcmQiLCJTYWxtb25hdGlvbiIsIkFyd2VhdmUiLCJEZWZpbml0aXZlIiwiS2VybmVsREFPIiwiRGVnZW4iLCJCcmV2aXMiLCJGbHVpZCIsIktsZXJvcyIsIk5lcnZvcyBOZXR3b3JrIiwiTGl0ZWNvaW4iLCJDYWxkZXJhIiwiUHJvbSIsIlRlcnJhIiwiQ2FyZGFubyIsIlN0b3JqIiwiQmx1ciIsIk9yYnMiLCJQT0wgKGV4LU1BVElDKSIsIkFuaW1lIChhbmltZW9uYmFzZS5hcnQpIiwiR3JhbSAocHJldi4gVG9uY29pbikiLCJNb25lcm8iLCJIeXBlcmxpcXVpZCIsIk9jZWFuIFByb3RvY29sIiwiSGFlZGFsIFByb3RvY29sIiwiQ3JlZGl0Y29pbiIsIkJhbmNvciIsIk5FQVIgUHJvdG9jb2wiLCJPUFggRmluYW5jZSIsIk1pbmEiLCJTYWhhcmEgQUkiLCJQb2x5U3dhcm0iLCJWYXVsdGEiLCJNYW50bGUiLCJNZXRpc0RBTyIsIlJlIiwiRGVlcCBBSSIsIlF1YW50b3ogVVNEUSIsIkFrYXNoIE5ldHdvcmsiLCJTSElCQSBJTlUiLCJCaXRnZXQgVG9rZW4iLCJVU0RDIiwiVGhyZXNob2xkIiwiTUFORUtJIiwiVVNBVCIsIkppdG8iLCJBYXZlIiwiQWVyb2Ryb21lIEZpbmFuY2UiLCJNQU5UUkEiLCJMQVRPS0VOIiwiQ09XIiwiQ2hhaW5MaW5rIiwiQ3liZXJDb25uZWN0IiwiQXN0ZXIiLCJBc3RlciBVU0RGIiwiRGVudCIsIkFwdG9zIiwiSW50ZXJuZXQgQ29tcHV0ZXIiLCJSZXNvbHYiLCJXb2xmIFdvcmtzIERBTyIsIlJheWxzIiwiVHJ1c3QgVGhlIFByb2Nlc3MiLCJUZXRoZXIgR29sZCIsIkRvZ2Vjb2luIiwiWFJQIiwicGVhcSIsIlN0YWNrcyIsIkJpbyBQcm90b2NvbCIsIktsZXZlciIsIlN1Y2NpbmN0IiwiU3RhYmxlIiwiQWVyZ28iLCJNYXNrIE5ldHdvcmsiLCJNT08gREVORyAobW9vZGVuZy52aXApIiwiaUV4ZWMgUkxDIiwiVmVuaWNlIFRva2VuIiwiT2FzeXMiLCJDb3JlIiwiU2Fha3VydSBQcm90b2NvbCIsIlN0ZWxsYXIiLCJCaW5hbmNlIENvaW4iLCJIdW1pZGlmaSIsIlJvbmluIiwiUGx1bWUiLCJVU0RTIiwiVVNELkFJIiwiQ2FzcGVyIiwiVmlydHVhbHMgUHJvdG9jb2wiLCJTcGFyayIsIkFJT1ogTmV0d29yayIsIlNpYWNvaW4iLCJNYXJsaW4iLCJFdGhlcmV1bSIsIkh5cGVyQ2hhaW5YIiwiUHVuZGkgWFtuZXddIiwiUHVkZ3kgUGVuZ3VpbnMiLCJDcm9ub3MiLCJCb3VuZGxlc3MiLCJCaXJiIiwiUmF5ZGl1bSIsIktyeWxsIiwiQXJrIiwiSW5pdGlhIiwiWFlPIiwiQk9SQSIsIlNvbGFuYSIsIk5FWFBBQ0UiLCJLdXNhbWEiLCJFbGFzdG9zIiwiUHJvc3BlciIsIk9wZW5HcmFkaWVudCIsIk1hcGxlIEZpbmFuY2UiLCJVTlVTIFNFRCBMRU8iLCIjVFJVTVAiLCJaT1JBIiwiUGFuY2FrZVN3YXAiLCJFdGhlcmV1bSBDbGFzc2ljIiwiRHJpZnQiLCJIdW1hIEZpbmFuY2UiLCJTUFg2OTAwIiwiQmFieSIsIlBlcGUiLCJNZWxvbiIsIlRST04iLCJQbGFzbWEiLCJXcmFwcGVkIEJpdGNvaW4iLCJEZWNlbnRyYWxhbmQiLCJTdGFyZ2F0ZSBGaW5hbmNlIiwiU29uZ2JpcmQiLCJJcnlzIiwiTU9OIiwiT25kbyIsIkdv0JxpbmluZyIsIk9yYWljaGFpbiIsIlpjYXNoIiwiVGVycmFVU0QiLCJPcmNhIiwiRXVsZXIiLCJLaXRlIiwiUEFYIEdvbGQiLCJSYWR3b3JrcyIsIkNlbnRyaWZ1Z2UiLCJQZW5kbGUiLCJDaXZpYyIsIlRlcnJhIENsYXNzaWMiLCJBQ3J5cHRvUyIsIlF1YW50IiwiT3JpZ2luVHJhaWwiLCJCaXR0ZW5zb3IiLCJUZXRoZXIgVVNEdCIsIkFSQiBQcm90b2NvbCIsIkJpZyBUaW1lIiwiVGhldGEgVG9rZW4iLCJOZWFyS2F0IiwiRmlsZWNvaW4iLCJUZXpvcyIsIlJhdmVuY29pbiIsIk51bWVyYWlyZSIsIkJpdGNvaW4gQ2FzaCIsIkNhbnRvbiIsIkF4ZWxhciIsIkxpbmVhIiwiV2hpdGVCSVQgQ29pbiIsIldhbGxldENvbm5lY3QgVG9rZW4iLCJUaGUgUGFyYWxsZWwiLCJNZWdhRVRIIiwiRmx1ZW50IiwiTWlMLmsiLCJEb3VibGVaZXJvIiwiS2FpYSIsIkFuZHJldyBUYXRlJ3MgRG9nIiwiTW9uYXZhbGUiLCJCSUNPTk9NWSAoQklDTykiLCJQb2xrYWRvdCIsIldJTmtMaW5rIiwiRmV0Y2guYWkiLCJCaXRjb2luIiwiQXZhbnRpcyIsIkVzcHJlc3NvIiwiWGluRmluIE5ldHdvcmsiLCJBdmFsYW5jaGUiLCJTQUZFKEFuV2FuZykiLCJIZWRlcmEiLCJNb3JwaG8iLCJVbmlzd2FwIiwiR1VOWiIsIlNvcGhpYVZlcnNlIiwiUGxhdE9OIiwiV2FscnVzIiwiVG90dGVuaGFtIEhvdHNwdXIgRmFuIFRva2VuIiwiTllNIiwiTW9tZW50dW0iLCJRdWFudG96IEVVUlEiLCJBbXAiLCJOZXd0b24gUHJvdG9jb2wiXX0seyJuIjoicHJvZml0X2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJicmVha19ldmVuX2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHhzX2NvdW50X3VuaXFfMWgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3J5cHRvX2NhdGVnb3JpZXMiLCJ0Ijoic2V0IiwiciI6W119LHsibiI6ImFsbF90aW1lX2xvd19kYXkiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfdW5pcV8xNW0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF91bmlxXzRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InNvY2lhbGRvbWluYW5jZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidXBkYXRlLXRpbWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidHhzX3ZvbHVtZV91c2QiLCJ0IjoiZnVuZGFtZW50YWxfcHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHhzX2NvdW50XzRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImJpZCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InR2bCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsX3ZvbHVtZV8xNW0iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHJhZGluZ192b2x1bWVfNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwb3N0c2FjdGl2ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0b3RhbF9zdXBwbHkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxlcnNfMTJoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXlfdm9sdW1lXzFoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X3RyYWRpbmdfdm9sdW1lXzE1bSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Im1pbm1vdiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5c18yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3RyYWRpbmdfdm9sdW1lXzI0aCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNlbnRyYWxpemF0aW9uIiwidCI6InRleHQiLCJyIjpbImRleCIsImNleCJdfSx7Im4iOiJkZXhfc2VsbGVyc180aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5X3ZvbHVtZV8xMmgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJzdWJzZXNzaW9ucyIsInQiOiJpbnRlcmZhY2UiLCJyIjpudWxsfSx7Im4iOiJ0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYWxsX3RpbWVfbG93IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoibWFya2V0X2NhcCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6InNlbnRpbWVudCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZnJhY3Rpb25hbCIsInQiOiJ0ZXh0IiwiciI6WyJmYWxzZSJdfSx7Im4iOiJhZGRyZXNzZXNfYWN0aXZlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXllcnNfMjRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InR4c192b2x1bWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lLXR5cGUiLCJ0IjoidGV4dCIsInIiOlsicXVvdGUiLCJ0aWNrIiwiYmFzZSJdfSx7Im4iOiJ0b3RhbF9hZGRyZXNzZXNfd2l0aF9iYWxhbmNlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRlbGVncmFtX25lZ2F0aXZlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfMjRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImluX3RoZV9tb25leV9hZGRyZXNzZXNfcGVyY2VudGFnZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZGV4X3RvdGFsX2xpcXVpZGl0eSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYWxheHlzY29yZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0d2VldHMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3J5cHRvX2Jsb2NrY2hhaW5fZWNvc3lzdGVtcyIsInQiOiJzZXQiLCJyIjpbXX0seyJuIjoidGVsZWdyYW1fbWVtYmVycyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5c180aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbHNfMWgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicG9zdHNjcmVhdGVkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRvdGFsX3ZhbHVlX3RyYWRlZCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImNyeXB0b19jb21tb25fY2F0ZWdvcmllcyIsInQiOiJzZXQiLCJyIjpbXX0seyJuIjoiMjRoX3ZvbF9jaGFuZ2VfY21jIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNvdW50cnkiLCJ0IjoidGV4dCIsInIiOltdfSx7Im4iOiJkZXhfc2VsbF92b2x1bWVfMTJoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF8xMmgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibWludXRlLWJhci50aW1lIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImFkZHJlc3Nlc190b3RhbCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0ZWxlZ3JhbV9wb3NpdGl2ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhY3RpdmVfYWRkcmVzc2VzX3JhdGlvIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbHNfMTVtIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsc18yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxlcnNfMTVtIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImFzayIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Im91dF90aGVfbW9uZXlfYWRkcmVzc2VzX3BlcmNlbnRhZ2UiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImRleF90b3RhbF9zdXBwbHkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYWN0aXZlX3N5bWJvbCIsInQiOiJib29sIiwiciI6bnVsbH0seyJuIjoiaXNfYmxhY2tsaXN0ZWQiLCJ0IjoiYm9vbCIsInIiOm51bGx9LHsibiI6ImtpbmQiLCJ0IjoidGV4dCIsInIiOlsicnQiLCJkZWxheSJdfSx7Im4iOiJsYXN0LXByaWNlLXVwZGF0ZS10aW1lLWludHJhZGF5IiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJpbmRleGVzIiwidCI6ImludGVyZmFjZSIsInIiOm51bGx9LHsibiI6Im1hcmtldF9jYXBfdG9fdHZsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNyeXB0b2Fzc2V0LWluZm8uaWQiLCJ0IjoidGV4dCIsInIiOltdfSx7Im4iOiJzdWJtYXJrZXQiLCJ0IjoidGV4dCIsInIiOlsiIl19LHsibiI6InN1YnR5cGUiLCJ0IjoidGV4dCIsInIiOlsiY3J5cHRvIiwicGVycGV0dWFsIl19LHsibiI6Im52dCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0eXBlIiwidCI6InRleHQiLCJyIjpbImZ1dHVyZXMiLCJzcG90Iiwic3dhcCJdfSx7Im4iOiJtYXR1cml0eV9kYXRlIiwidCI6InRpbWUteXl5eW1tZGQiLCJyIjpudWxsfSx7Im4iOiJsYXN0LXByaWNlLXVwZGF0ZS10aW1lIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJ0eXBlc3BlY3MiLCJ0Ijoic2V0IiwiciI6WyJjcnlwdG8iLCJwZXJwZXR1YWwiLCJkZWZpIiwidHYtY2FsY3VsYXRlZC1wYWlyIiwic3ludGhldGljIiwibGV2ZXJhZ2VkIl19LHsibiI6Im1hcmtldCIsInQiOiJ0ZXh0IiwiciI6WyJjcnlwdG8iXX0seyJuIjoiZGF5c190b19tYXR1cml0eSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsb3dfYWZ0ZXJfaGlnaF9hbGxfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjb3Vwb24iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZXhwaXJhdGlvbiIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiZnVsbHlfZGlsdXRlZF92YWx1ZSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImV4Y2hhbmdlIiwidCI6InRleHQiLCJyIjpbIkJJVEdFVCIsIkJJVFZBVk8iLCJVTklTV0FQM0FWQUxBTkNIRSIsIlJBTVNFUzIiLCJCSVRLVUIiLCJCSVRBWlpBIiwiVU5JU1dBUDRQT0xZR09OIiwiQUVST0RST01FIiwiTEZKMkRPVDIiLCJCWUJJVCIsIkNPSU5TV0lUQ0giLCJVTklTV0FQNEJTQyIsIlRSQURFUkpPRSIsIlZWUzMiLCJWRUxPRFJPTUVTTElQU1RSRUFNIiwiWktTV0FQIiwiQllERkkiLCJIVFgiLCJCSVRNQVJUIiwiU1RPTkZJIiwiQ0FNRUxPVDNBUkJJVFJVTSIsIk1FVEVPUkFEWU4iLCJDVVJWRUFSQklUUlVNIiwiS1JBS0VOIiwiS0FUQU5BMyIsIlNQT09LWVNXQVAiLCJDT0lOVyIsIkJJTkFOQ0UiLCJNRVRFT1JBRExNTSIsIlVOSVNXQVA0QkFTRSIsIlpPT01FWCIsIlJBWURJVU1DTE1NIiwiQkxBQ0tIT0xFMyIsIlVQQklUIiwiQklUVU5JWCIsIkRFRVBDT0lOIiwiWFRDT00iLCJQT0xPTklFWCIsIlVOSVNXQVAiLCJHQVRFIiwiVU5JU1dBUDNCU0MiLCJDVVJWRSIsIlZFTE9EUk9NRTIiLCJPS1giLCJCVFNFIiwiVU5JU1dBUDNCQVNFIiwiQkFTRVNXQVAiLCJQQU5DQUtFU1dBUDNaS1NZTkMiLCJDT0lORVgiLCJWVlNGSU5BTkNFIiwiQklUU1RBTVAiLCJCTFVFRklOIiwiVU5JU1dBUDRVTklDSEFJTiIsIlVOSVNXQVA0QVZBTEFOQ0hFIiwiREVMVEFJTiIsIkNSWVBUT0NPTSIsIlBIQVJBT0giLCJXT09ORVRXT1JLIiwiVU5JU1dBUDRPUFRJTUlTTSIsIkJUQ0MiLCJQVUxTRVgyIiwiU1VOU1dBUDIiLCJNTUZJTkFOQ0UiLCJQQU5DQUtFU1dBUDNCU0MiLCJCSVRGSU5FWCIsIlNVU0hJU1dBUCIsIlBBTkNBS0VTV0FQM0FSQklUUlVNIiwiTUVYQyIsIkJJVE1FWCIsIkhPTkVZU1dBUCIsIkNPSU5CQVNFIiwiUkFZRElVTUNQTU0iLCJVTklTV0FQM1BPTFlHT04iLCJERVJJQklUIiwiVU5JU1dBUDRFVEgiLCJVTklTV0FQM09QVElNSVNNIiwiVU5JU1dBUDNFVEgiLCJMQkFOSyIsIkNPSU5KQVIiLCJQSU9ORVgiLCJXSElURUJJVCIsIktDRVgiLCJCSVRSVUUiLCJDRVRVUyIsIkJJTkFOQ0VVUyIsIlFVSUNLU1dBUCIsIlNVU0hJU1dBUFBPTFlHT04iLCJSQVlESVVNIiwiV0VFWCIsIlBVTFNFWCIsIk9SQ0EiLCJTWU5DU1dBUCIsIlNUT05GSTIiLCJERURVU1QiLCJCTE9GSU4iLCJVTklTV0FQM0FSQklUUlVNIiwiS0FUQU5BIiwiUEFOQ0FLRVNXQVAzRVRIIiwiQklURkxZRVIiLCJLVUNPSU4iLCJQQU5DQUtFU1dBUDNCQVNFIiwiQklTV0FQIiwiVU5JU1dBUDRBUkJJVFJVTSIsIkNBTUVMT1QiLCJUVVJCT1NGSU5BTkNFIiwiQklOR1giLCJQQU5HT0xJTiIsIlBBTkNBS0VTV0FQIiwiUEhFTUVYIiwiR0VNSU5JIiwiQklUU08iLCJBRVJPRFJPTUVTTElQU1RSRUFNIiwiQklUSFVNQiIsIlZFTE9EUk9NRSIsIlRPT0JJVCIsIlFVSUNLU1dBUDNQT0xZR09OIiwiVU5JU1dBUEJBU0UiLCJTWU5DU1dBUDIiXX0seyJuIjoidXBkYXRlX3RpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IjI0aF92b2xfdG9fbWFya2V0X2NhcCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJpc19zaGFyaWFoX2NvbXBsaWFudCIsInQiOiJib29sIiwiciI6bnVsbH0seyJuIjoiY3VycmVuY3lfaWQiLCJ0IjoidGV4dCIsInIiOlsiWFRWQ1pFTiIsIlBMTiIsIlhUVkNSRU5CVEMiLCJYVFZDTVNPTCIsIlhUVkNXRlRNIiwiWFRWQ0ZSQVgiLCJYVFZDQVZBWCIsIlhUVkNGUEkiLCJYVFZDWFZTIiwiWFRWQ1VTRFRURVRIRVJVIiwiWFRWQ0dMRFhHIiwiWFRWQ1VOSVRFRCIsIlhUVkNET0dFIiwiWFRWQ0pVUEkiLCJYVFZDVVNEQVQiLCJYVFZDRkJYRklSIiwiWFRWQ0NDQzIiLCJYVFZDSlVQU09MSiIsIlhUVkNBTk9NRSIsIlhUVkNBQVZFIiwiWFRWQ1NXSVRDSDIiLCJYVFZDVVVTRFUiLCJYVFZDVVNEQUkyIiwiSlBZIiwiWFRWQ0FVU0RBRyIsIlhUVkNPUFhWRUxPIiwiWFRWQ1NVU0RaUyIsIlhUVkNBU0RJQyIsIlhUVkNTVE9ORiIsIlhUVkNFVEg1IiwiWFRWQ01BUldBIiwiWFRWQ1VTRENPSU42IiwiWFRWQ1VTREVFIiwiWFRWQ1RRUVFYIiwiWFRWQ1VTRDBMIiwiWFRWQ1ZOTyIsIlhUVkNTTE9XRklTSDIiLCJYVFZDR0RUQyIsIlhUVkNVU1BDIiwiTVhOIiwiWFRWQ01FVEZJIiwiS1JXIiwiWFRWQ1BFUEUiLCJYVFZDVExLIiwiWFRWQ0hBSUkiLCJYVFZDV0xEVyIsIlhUVkNUQUtFT1ZFUiIsIlhUVkNCWEEyIiwiWFRWQ1NBVlVTRFMiLCJYVFZDQUNQQSIsIlhUVkNIRU1QWSIsIlhUVkNPTkVCVEMiLCJYVFZDWUgiLCJYVFZDTUlNQVRJQyIsIlhUVkNTVE9ORTIiLCJJRFIiLCJYVFZDVFNBVCIsIlhUVkNEUEMiLCJYVFZDQ0JYUlAiLCJYVFZDRURHRUQiLCJYVFZDVEJUQzIiLCJYVFZDRlVMIiwiWFRWQ1BPTDIiLCJYVFZDSE9XRFkiLCJYVFZDVVNEVEIiLCJYVFZDU0tZMiIsIlhUVkNTRFlCIiwiWFRWQzBYNTQ4RjkzIiwiWFRWQ1VTRFNNIiwiWFRWQ0dSQU0iLCJYVFZDQ09XMiIsIlhUVkNVU0RUVEVUSCIsIlhUVkNCVVJOS0lOR1QiLCJYVFZDQkJUQ0JJIiwiWFRWQ1BFUFBBMyIsIlhUVkNUUklCRSIsIlhUVkNGWFVTRCIsIlhUVkNGWE5UIiwiWFRWQ0FNQUkyIiwiWFRWQ0ZEVVNEIiwiWFRWQ1VTRFMyIiwiWFRWQ0xVU0QiLCJYVFZDUVFRWCIsIlhUVkNLSVRFUCIsIlhUVkNBWExVU0RDIiwiWFRWQ0lETEVNIiwiWFRWQ0VURjQiLCJYVFZDWkVDIiwiQ09QIiwiWFRWQ0JPTUJGIiwiWFRWQ0JBREdFUiIsIlhUVkNMQlJMTyIsIlhUVkNUUFQiLCJYVFZDQVVESVRUIiwiWFRWQ0JUUkIiLCJYVFZDUkdFIiwiWFRWQ1JVU0RSQSIsIlhUVkNDUk8iLCJYVFZDRVVSQyIsIlhUVkNPVVNEIiwiWFRWQ0FVQlJBSSIsIlhUVkNUTE5HT0xEIiwiWFRWQ0tHU1QiLCJYVFZDU1BBIiwiWFRWQ0FUTTUiLCJYVFZDVVNEMzIiLCJYVFZDVVBFUEUzIiwiWFRWQ1hJTk0iLCJYVFZDTU5UIiwiWFRWQ1VBSEciLCJYVFZDNDA0NDQ0IiwiWFRWQ1dTVEVUSCIsIlhUVkNaSU1PTU8yIiwiWFRWQ1RPTk5FTCIsIlhUVkNET0dUIiwiWFRWQ01EQzIiLCJYVFZDUEhMIiwiWFRWQ0tJTiIsIlhUVkNPVFRPQSIsIlhUVkNDTEVWQ1ZYIiwiWFRWQ0ZJU1QiLCJVQUgiLCJYVFZDQVNURVIyIiwiWFRWQ0RBR0MiLCJYVFZDWFRDIiwiWFRWQ0JFODUxMSIsIlhUVkNBUkJJIiwiWFRWQ0NSVjJQT09MIiwiWFRWQ1VTREEyIiwiWFRWQ0dPTEQxMCIsIlhUVkNQSUFPIiwiWFRWQ1ZWViIsIlhUVkNSSVBFIiwiWFRWQ0FEUyIsIlhUVkNWVlMiLCJYVFZDQk9SRyIsIlhUVkNNTU02IiwiWFRWQ0FMRCIsIlhUVkNDT1FBSSIsIlhUVkNWTyIsIlhUVkNGQUZVIiwiWFRWQ1VTRFQiLCJYVFZDV0VUSCIsIlhUVkNHVVNEIiwiWFRWQ1pJS0MiLCJYVFZDUkVVU0RSIiwiWFRWQ0JBTERPUiIsIlhUVkNHT0xER1IiLCJYVFZDUEVORExFIiwiWFRWQ0tQM1IiLCJYVFZDQVVUT05PIiwiWFRWQ0xFTVhMIiwiWFRWQ0NST0lEIiwiWFRWQ0dSRUVONCIsIlhUVkNQQUlQSCIsIlhUVkM4ODg4ODgiLCJYVFZDTlBMIiwiWFRWQ0pBQ0tTIiwiWFRWQ09TQlUiLCJYVFZDVFJBQ1RPUiIsIlhUVkNKT0UiLCJYVFZDVVNHVCIsIlhUVkNFVVNERUwiLCJYVFZDTFBaIiwiWFRWQ09ITSIsIlhUVkNHUk9XViIsIlhUVkNXWERBSSIsIlhUVkNQQlRDUFQiLCJYVFZDVFJJUDIiLCJYVFZDRUlDT0lOIiwiWFRWQ1dTSElCTiIsIlhUVkNXQlQiLCJYVFZDUFlVU0QiLCJYVFZDQUxFVEhBIiwiWFRWQ0JFVEgiLCJYVFZDQVZVU0Q0IiwiWFRWQ0hPUlNFUyIsIlhUVkNDQUtFIiwiWFRWQ1VQWDMiLCJYVFZDUVVJQ0tTIiwiWFRWQ0pUTyIsIlhUVkNCIiwiWFRWQ1NTRCIsIlhUVkNLVUtVTUFDVSIsIlhUVkNBUFhVU0QiLCJYVFZDV0JUQyIsIlhUVkNNU1VTRE0iLCJYVFZDVVNEQ09JIiwiWFRWQ1NPTCIsIkFVRCIsIlhUVkNCSURDIiwiWFRWQ0tBVDIiLCJYVFZDQ0JFVEgiLCJYVFZDSkVXRUxSWSIsIlhUVkNGSUREIiwiWFRWQ0NBNTE4QSIsIlhUVkNVU0RHRyIsIlhUVkNCTEFDS1JPQ0s0IiwiWFRWQ0YzOUYxMiIsIlhUVkNPREFJIiwiWFRWQ0JNMyIsIlhUVkNORVg0IiwiWFRWQ01BVVNEQyIsIlhUVkNSRVRIUiIsIlhUVkNCTkIiLCJYVFZDT0VUSEIiLCJYVFZDQ0VPSiIsIlhUVkNMRE8iLCJYVFZDSFlQRUgiLCJYVFZDQ09JTkJBTksiLCJYVFZDRlRNMiIsIlhUVkNVU0RRIiwiWFRWQ0hCWCIsIlhUVkNUSEJNVCIsIlhUVkNGSUwiLCJYVFZDV0JUQ1ciLCJYVFZDTU1TQyIsIlhUVkNCVEJCRSIsIlhUVkNPTUdPIiwiWFRWQ1NDUlZVU0QiLCJYVFZDSlBZQ09JIiwiWFRWQ0JUQ0JCIiwiWFRWQ01PQklMIiwiWFRWQ0JJT1BSIiwiWFRWQ1RTVVNERTIiLCJYVFZDQ0RYVVNEQyIsIlhUVkNMVVNEU1RBQiIsIkNIRiIsIlhUVkM1RkM3NEQiLCJYVFZDTUlNIiwiWFRWQ0xUQyIsIlhUVkNDUlZVU0QiLCJYVFZDUloiLCJYVFZDU0RPTEEiLCJYVFZDWEFVVCIsIlhUVkNXRkFJMiIsIlhUVkNVU0RCQyIsIlhUVkNLMiIsIlhUVkNBTFVTREFMIiwiWFRWQ09NT01PTSIsIlhUVkNUIiwiWFRWQ0VUSFgiLCJYVFZDV0VFVEgiLCJYVFZDUkFMTFk0IiwiWFRWQ0RFVEhEIiwiWFRWQ0VWQ0UiLCJYVFZDV0NSTyIsIlhUVkNVU1hTIiwiWFRWQ1NSR1QiLCJYVFZDQ09JTjQiLCJYVFZDQ1VBSCIsIlhUVkNWSVJUVUFMIiwiWFRWQ1dSVUIiLCJYVFZDQ0VURVMiLCJYVFZDMUNPVyIsIkJSTCIsIlhUVkNEVVNEMiIsIlhUVkNTT0xBTiIsIlhUVkNDVlgiLCJYVFZDQk9OSyIsIlNHRCIsIlhUVkNKRVRNIiwiRVVSIiwiWFRWQ1VTRENFIiwiWFRWQ1VTREQiLCJYVFZDT1RXTyIsIlhUVkNGUlhVU0QiLCJYVFZDRlJYRVRIIiwiVFJZIiwiWFRWQ1JMVVNEIiwiWFRWQ1ZPVyIsIlhUVkNESU5PQyIsIlhUVkNVU0RaQSIsIlhUVkNVU0RGRiIsIlhUVkNTVExJTksiLCJYVFZDTUVUQURPR0UzIiwiWFRWQ0RBSSIsIlhUVkNXSUYiLCJYVFZDUldBQyIsIlhUVkNBSU9UIiwiWFRWQ0JMT0NLNCIsIlVTRCIsIlhUVkNCVFQyIiwiWFRWQ0dFTklVUyIsIlhUVkNHT0xEWCIsIlhUVkNTVUkiLCJYVFZDU1BJTkUiLCJYVFZDSFRDIiwiWFRWQ0JUQyIsIlhUVkNTVEEzIiwiWFRWQ0dOTyIsIlhUVkNaS1NZIiwiWFRWQ0NST05VUyIsIlhUVkNNUEVORExFIiwiWFRWQ05SV0EyIiwiWFRWQ1lZTE0iLCJYVFZDVEhCTSIsIlhUVkNTVVNEQVQiLCJYVFZDTVpDIiwiQUVEIiwiWFRWQ1ZFTE9EIiwiWFRWQ1NVU0RTUyIsIlhUVkNTRkwiLCJYVFZDTUNPSU4zIiwiWFRWQ1ZVViIsIlhUVkNMVUZGWTIiLCJYVFZDQTY4QUNDIiwiWkFSIiwiWFRWQ0ZNTSIsIlhUVkNFVEgiLCJYVFZDVU5JIiwiWFRWQ05PQUg1IiwiWFRWQ1JBRDIiLCJYVFZDRkNDRiIsIlhUVkNXUk9OIiwiWFRWQ1VTREMiLCJYVFZDVEFJSkkiLCJYVFZDQk9ORDIiLCJYVFZDUlpVU0QiLCJYVFZDTUFNTyIsIlhUVkNFVVJJIiwiWFRWQ1NEQ1JWIiwiWFRWQ0tUQSIsIlhUVkNBS0IiLCJYVFZDQ0JCVENDIiwiWFRWQ0JUQ0IiLCJYVFZDQUFBQTIiLCJYVFZDSEdYRCIsIlhUVkNFVFoyIiwiWFRWQ0FGRiIsIlhUVkNTVVNERSIsIlhUVkNUVVNEIiwiWFRWQ0FWVVNEMyIsIlhUVkNZRkkiLCJYVFZDT1JDQSIsIlhUVkNXQVZBWCIsIlhUVkNHUk9LMTEiLCJYVFZDWEJHIiwiWFRWQ0RPVCIsIlhUVkNBRVJPRCIsIlhUVkNTUFg2IiwiWFRWQ0xJT05MIiwiWFRWQ0hCQVIiLCJYVFZDSExYIiwiQ1pLIiwiS1pUIiwiWFRWQ0tBSVRPIiwiWFRWQ0NEWFIiLCJYVFZDNzdGRkZGIiwiWFRWQ01FTlRFIiwiWFRWQ09TSzQiLCJYVFZDQ1ZYQ1JWIiwiWFRWQ0JOWEIiLCJYVFZDVVNQWSIsIlhUVkNXQk5CIiwiWFRWQ1BBWEciLCJYVFZDT0xZTiIsIlhUVkNSRU5CVEMyIiwiWFRWQ0JUREFPIiwiWFRWQ1RPV0VSIiwiWFRWQ0pJVE9TT0wiLCJYVFZDRVVST1AiLCJYVFZDV0JFVEgiLCJYVFZDRlJBWFAiLCJYVFZDT1AiLCJYVFZDTU9SUCIsIlhUVkNTUVVJRFQiLCJYVFZDTVNVU0RNRSIsIlhUVkNWVVNEViIsIlhUVkNQSFlTSVMiLCJYVFZDSFRYIiwiWFRWQ1NVUEVSRiIsIlhUVkNPRVRIIiwiWFRWQ0ZMT0NLIiwiWFRWQ1RSWCIsIlhUVkNUSFJFIiwiWFRWQ1NFTlRJUyIsIlhUVkNQRVRISiIsIlhUVkNPTU9NTyIsIlhUVkNCQkJFIiwiWFRWQ0ZYQjIwMjYxMjMxIiwiWFRWQ0tDUyIsIlhUVkNZWUIiLCJYVFZDU0hYIiwiWFRWQ1pPUkEyIiwiWFRWQ0NMRVYiLCJYVFZDWFVTRDIiLCJYVFZDQURBTTIiLCJYVFZDU1QzIiwiWFRWQ1RZQ09PTkIiLCJYVFZDTVlCVUJVIiwiWFRWQ01HQ01FIiwiWFRWQ09MWTIiLCJYVFZDR09MREwiLCJYVFZDQVBYVVNEMiIsIlhUVkNTUFlYIiwiR0JQIiwiWFRWQ1VTRFQwIiwiWFRWQ01PT042IiwiWFRWQ1JFSTIiLCJYVFZDRE9MTyIsIlhUVkNTRFBFTkRMRSIsIlhUVkNFVkFVU0RUIiwiWFRWQ05PQUg0IiwiWFRWQ01PTkVZQkUiLCJYVFZDUFJPVE9LRSIsIlhUVkNGT09NIiwiWFRWQ1hMTSIsIkFSUyIsIlhUVkNZTlVTRFgiLCJYVFZDQVhCIiwiWFRWQ1VTRFNNMiIsIlhUVkNTT0xXIiwiVEhCIiwiWFRWQ0FEQSIsIlhUVkNBTFVTRCIsIlhUVkNDT05WTyIsIlhUVkNYREsiLCJYVFZDUFdCTFQiLCJYVFZDTU9TIiwiWFRWQ0VVUlMiLCJYVFZDRE1BR0lDRCIsIlhUVkNTU1M0IiwiQ0FEIiwiWFRWQ0FSRU5BVCIsIlhUVkNDT1NBIiwiWFRWQ1NMRVJGIiwiWFRWQ1VTRFRFIiwiWFRWQ1BVRkVUSCIsIlhUVkNMQUJVQlUxMSIsIlhUVkNXTUFUSUMiLCJYVFZDQjMiLCJYVFZDUkFZIiwiWFRWQ09QUE9QVCIsIlhUVkNYUlAiLCJYVFZDTVNVU0RNRVQiLCJYVFZDSkxQIiwiWFRWQ1NFQVdBVEVSIiwiWFRWQ1RVUiIsIlhUVkNDVkNSVlVTRCIsIlhUVkNTVFVTRFMiLCJYVFZDR0FNRUJZIiwiWFRWQ0FEQU1MIiwiSU5SIiwiWFRWQ0NSQ0xYIiwiWFRWQ1VTRDFXIiwiWFRWQ0JVU0QiLCJYVFZDTElOSyIsIlhUVkNZQ1JWIl19LHsibiI6ImNpcmN1bGF0aW5nX3RvX21heF9zdXBwbHlfcmF0aW8iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImlzX3ByaW1hcnkiLCJ0IjoiYm9vbCIsInIiOm51bGx9LHsibiI6ImlzX3N5bWJvbF9wcmltYXJ5X2xpc3RpbmciLCJ0IjoiYm9vbCIsInIiOm51bGx9LHsibiI6ImJhc2VfY3VycmVuY3lfa2luZCIsInQiOiJ0ZXh0IiwiciI6WyJjcnlwdG8iLCJmaWF0Il19LHsibiI6Im1hcmtldF9jYXBfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLkFsbF9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3J5cHRvYXNzZXQtaW5mby5kZXNjcmlwdGlvbiIsInQiOiJ0ZXh0IiwiciI6W119LHsibiI6ImtpbmQtZGVsYXkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3VycmVuY3lfa2luZCIsInQiOiJ0ZXh0IiwiciI6WyJjcnlwdG8iLCJmaWF0Il19LHsibiI6ImJpZF9hc2tfc3ByZWFkX3BjdCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibG93X2FmdGVyX2hpZ2hfYWxsX2NoYW5nZV9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJtYXJrZXRfY2FwX2RpbHV0ZWRfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0b3RhbF90b19tYXhfc3VwcGx5X3JhdGlvIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2ZWxvY2l0eSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjdXJyZW5jeSIsInQiOiJ0ZXh0IiwiciI6WyJFVVJPUCIsIlpJSyIsIlVQWCIsIkhCQVIiLCJKVVBTT0wiLCJQUk8iLCJVU0RBSSIsIkZBIiwiRkRVU0QiLCJCTSIsIkFEQU0iLCJGVUwiLCJJTlIiLCJBNjhBQ0MiLCJLVUtVTUEiLCJSWlVTRCIsIkFTVEVSIiwiQUVEIiwiQ0xFViIsIllZTE0iLCJDWksiLCJIVEMiLCJPRVRIIiwiT05FQlRDIiwiTUdDIiwiU1VTREUiLCJDRFhSIiwiVVNEQkMiLCJGSUREIiwiTFVTRCIsIlZPVyIsIkdPTERHUiIsIkRPR0UiLCJXU1RFVEgiLCJVU0RRIiwiSlBZQyIsIkFYTFVTREMiLCJTVVNEWiIsIkFUTSIsIkNDQyIsIk9ITSIsIllOVVNEWCIsIlNEUEVORExFIiwiWERLIiwiQ0FEIiwiWklNT01PIiwiU1BZWCIsIkFMRCIsIlNPTCIsIlNVU0RTIiwiQ1ZYIiwiQU5PTUUiLCJUVVIiLCJRVUlDSyIsIk1QRU5ETEUiLCJNTSIsIlUiLCJDQkVUSCIsIkFSQiIsIlNFTlRJUyIsIkxUQyIsIkNPSU5CQU5LIiwiTVoiLCJDRU8iLCJPVFRPIiwiQkVUSCIsIllGSSIsIlJVU0QiLCJDSEYiLCJIVFgiLCJVU1AiLCJXQlQiLCJVU0RTIiwiVUFIIiwiWElOIiwiTUlNIiwiT0xZTiIsIlRVU0QiLCJSRVVTRCIsIkNPSU4iLCJPTU9NIiwiVkVMTyIsIk1OVCIsIlZVU0QiLCJNTVNDIiwiTEVNWCIsIkFLQiIsIkNPUUFJIiwiVFJZIiwiU1RMSU5LIiwiU1RPTkUiLCJHUkFNIiwiQVVTRCIsIlNSRyIsIlRPTk5FTCIsIkJPTkQiLCJUTE5HT0xEIiwiT01HIiwiViIsIkJUUiIsIlVTWCIsIlJaIiwiWFVTRCIsIkJFODUxMSIsIkJUQiIsIkdEVEMiLCJMQUJVQlUiLCJSTFVTRCIsIkhPV0RZIiwiVk5PIiwiQiIsIlpLIiwiU1BJTkUiLCJPUFhWRUxPIiwiRlhCMjAyNjEyMzEiLCJCSU8iLCJLQ1MiLCJUIiwiSkxQIiwiVVNEQSIsIkZUTSIsIlZJUlRVQUwiLCJXQ1JPIiwiT1AiLCJCSUQiLCJKVVAiLCJCQURHRVIiLCJNU1VTRCIsIlVTREYiLCJESU5PIiwiTlBMIiwiT1MiLCJZSCIsIkVER0UiLCJPVVNEIiwiSExYIiwiWEJHIiwiV0JOQiIsIlhSUCIsIkZSQVgiLCJBUkVOQSIsIkRFVEgiLCJFVkFVU0RUIiwiVFJJQkUiLCJYVlMiLCJBTUFJIiwiTU9TIiwiUExOIiwiV1hEQUkiLCJTVCIsIlJFSSIsIkZSWFVTRCIsIkZYTiIsIllZQiIsIlRTVVNERSIsIldGQUkiLCJCVVNEIiwiQ0FLRSIsIlNGTCIsIk9SQ0EiLCJQV0JMVCIsIkpJVE9TT0wiLCJBVlVTRCIsIlBVRkVUSCIsIkZNIiwiVFJJUCIsIk1PTkVZIiwiVVNEQVQiLCJOT0FIIiwiU1NEIiwiRE9UIiwiV0VUSCIsIkJUQyIsIkdVU0QiLCJVU0ciLCJaT1JBIiwiQVJTIiwiU0tZIiwiTUFVU0RDIiwiUFlVU0QiLCJVTkkiLCJTVE9OIiwiUE9MIiwiTElPTiIsIlVTREQiLCJDVlhDUlYiLCJXRlRNIiwiRE9MTyIsIlRSQUNUT1IiLCJHUk9XIiwiQVVUT05PIiwiUEVUSCIsIlNBVlVTRCIsIkJMT0NLIiwiQ1JPIiwiVVVTRCIsIkJPUkciLCJMUFoiLCJMSU5LIiwiQ0E1MThBIiwiU1VTREFUIiwiRUlDT0lOIiwiVVNEQyIsIkJOQiIsIk9TSyIsIlRBS0VPVkVSIiwiRlBJIiwiV0VFVEgiLCJWVSIsIkpPRSIsIlVTRCIsIk1FTlRFIiwiV0lGIiwiVEFJSkkiLCJKRVQiLCJCVERBTyIsIkRNQUdJQyIsIlNIWCIsIkVVUiIsIkpQWSIsIlVTRFoiLCJCQlRDIiwiSE9SU0VTIiwiVUFIRyIsIkVUSFgiLCJVU0QxIiwiVFNBVCIsIk5SV0EiLCJIR1hEIiwiT1RXTyIsIk1DT0lOIiwiTVlCVUJVIiwiV1NISUIiLCJCTEFDS1JPQ0siLCJEUEMiLCJGWFVTRCIsIlRSWCIsIlNQWCIsIkFJT1QiLCJDVUFIIiwiUkFEIiwiVVNEVDAiLCJVU0RDRSIsIkxVRkZZIiwiUkVUSCIsIlVTRFQiLCJVU0RHIiwiTUFSV0EiLCJBTFVTRCIsIkhCWCIsIkJSTCIsIkFEUyIsIkdCUCIsIjVGQzc0RCIsIktUQSIsIk1PUiIsIkpUTyIsIldNQVRJQyIsIlRIQiIsIlhBVVQiLCJVUEVQRSIsIkZSWEVUSCIsIkNWQ1JWVVNEIiwiU0RPTEEiLCJVU0QwIiwiR1JPSyIsIklEUiIsIkZJU1QiLCJPRVRIQiIsIlNRVUlEIiwiTkVYIiwiQk9OSyIsIkFBVkUiLCJVU0RTTSIsIkZJTCIsIkdPTEQiLCJFVEYiLCJaQVIiLCJZQ1JWIiwiVEJUQyIsIkZPT00iLCJSQVkiLCJaRU4iLCJQSUFPIiwiT0xZIiwiUVFRWCIsIktHU1QiLCJBRkYiLCJEQUciLCJQRU5ETEUiLCJUUFQiLCJUUVFRWCIsIkNST05VUyIsIldCVEMiLCJQQVhHIiwiQUxFVEgiLCJYTE0iLCJTVUkiLCJHQU1FIiwiQkFMRE9SIiwiUEJUQyIsIkVVUkMiLCJTR0QiLCIxQ09XIiwiQk5YIiwiTUVURkkiLCJTRFlCIiwiQVNESUMiLCJHUkVFTiIsIlRPV0VSIiwiTUFNTyIsIkFFUk8iLCJTTEVSRiIsIk1JTUFUSUMiLCIwWDU0OEY5MyIsIkNST0lEIiwiS1JXIiwiQlRDQiIsIkJUVCIsIkRVU0QiLCJVU0RUQiIsIkVVUlMiLCJVU0RURSIsIktQM1IiLCJXQkVUSCIsIkFWQVgiLCJBVUJSQUkiLCJSQUxMWSIsIkVUSCIsIkZCWCIsIkNPVyIsIkpBQ0siLCJTVFVTRFMiLCJIWVBFIiwiQVhCIiwiRVRaIiwiREFJIiwiTU9CIiwiU0VBV0FURVIiLCJCVVJOS0lORyIsIkVVUkkiLCJaRUMiLCJDT1AiLCJTU1MiLCJDQlhSUCIsIkNPU0EiLCJSRU5CVEMiLCJLMiIsIlNMT1dGSVNIIiwiU0RDUlYiLCJXUk9OIiwiVVNEMyIsIk1YTiIsIjg4ODg4OCIsIjQwNDQ0NCIsIlBITCIsIktBVCIsIlNDUlZVU0QiLCJWVlMiLCJQRVBFIiwiR0VOSVVTIiwiVFlDT09OIiwiVlZWIiwiS0lURSIsIkJYQSIsIk9QUCIsIkFVRElUIiwiSEVNUFkiLCJHTk8iLCI3N0ZGRkYiLCJCQiIsIlNQQSIsIk1EQyIsIlVTUEMiLCJXQVZBWCIsIkFEQSIsIkFBQUEiLCJET0ciLCJDTEVWQ1ZYIiwiR09MRFgiLCJPREFJIiwiUEVQUEEiLCJUSEJNIiwiSURMRSIsIkxCUiIsIlhUQyIsIlRMSyIsIkIzIiwiUklQRSIsIkNPTlZPIiwiU1VQIiwiQ0JCVEMiLCJFVVNEIiwiSEFJIiwiV0xEIiwiU1dJVENIIiwiQ0RYVVNEIiwiS1pUIiwiTU9PTiIsIkNSVlVTRCIsIktJTiIsIldSVUIiLCJHTERYIiwiRkNDIiwiQ0VURVMiLCJFVkMiLCJTVEEiLCJSVyIsIlBBSSIsIkNSQ0xYIiwiRjM5RjEyIiwiTUVUQURPR0UiLCJBVUQiLCJVU0RFIiwiQk9NQiIsIktBSVRPIiwiSkVXRUxSWSIsIkxETyIsIlJHRSIsIkFQWFVTRCIsIkFDUCIsIkZMT0NLIiwiTVNPTCIsIlBIWVNJUyIsIkNSVjJQT09MIl19LHsibiI6IlBlcmYuQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF9kb3dufDFNIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJoaWdofDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2VfYWJzfDEiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnN8MzAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzfDYwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3wzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlbWFya2V0X2NoYW5nZV9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJvcGVufDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwfDYwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXBfYWJzfDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8NjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsb3d8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXB8NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaGlnaHwzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxMjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InVwZGF0ZV9tb2RlfDYwIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJwcmVfY2hhbmdlfDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidGltZXw1IiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93biIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3wxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNsb3NlfDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwxNSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ0aW1lfDE1IiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxVyIsInQiOiJ0ZXh0IiwiciI6WyJzdHJlYW1pbmciXX0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDEyMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZV9hYnN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXB8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImhpZ2h8NjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDEiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MzAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9hYnN8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZXwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZXw1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZXwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2xvc2V8MjQwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoib3BlbiIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoib3Blbnw2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDFNIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJlbWFya2V0X2dhcCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnN8NjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJvcGVufDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImluZGljYXRvcnNfYmFyc19jb3VudHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJiYXJzX2NvdW50fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsb3d8MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF91cHwzMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibG93fDFXIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MU0iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibG93fDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZV9hYnN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0aW1lfDMwIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6Imxvd3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzfDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbnw1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXw2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxvd3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJsb3ciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZXw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3w2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MTUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcHwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzfDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDEiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDYwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXwxMjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MU0iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcHwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJiYXJzX2NvdW50fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcHwzMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicG9zdG1hcmtldF9jaGFuZ2VfYWJzIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImhpZ2h8MjQwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXwzMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxVyIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidGltZXwyNDAiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6InVwZGF0ZV9tb2RlfDMwIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MzAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bnwxMjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcF91cCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaW5kaWNhdG9yc19iYXJzX2NvdW50fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoib3BlbnwxNSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Im9wZW58MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ0aW1lfDFNIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bnw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVtYXJrZXRfY2hhbmdlX2Zyb21fb3BlbiIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibG93fDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJjaGFuZ2VfYWJzfDEiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9hYnN8MTUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsb3d8NjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxNSIsInQiOiJ0ZXh0IiwiciI6WyJzdHJlYW1pbmciXX0seyJuIjoiY2hhbmdlX2Fic3wxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDEyMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2xvc2V8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxNSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImluZGljYXRvcnNfYmFyc19jb3VudHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiaW5kaWNhdG9yc19iYXJzX2NvdW50fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidGltZXwxVyIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnN8MTUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJoaWdofDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnN8MjQwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidGltZXw2MCIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidGltZXwxMjAiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8NSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxTSIsInQiOiJ0ZXh0IiwiciI6WyJzdHJlYW1pbmciXX0seyJuIjoidm9sdW1lX2NoYW5nZXwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidGltZXwxIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJwb3N0bWFya2V0X2NoYW5nZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsb3d8MU0iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaGlnaHwxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidXBkYXRlX21vZGUiLCJ0IjoidGV4dCIsInIiOlsic3RyZWFtaW5nIl19LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByZW1hcmtldF9jaGFuZ2UiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcF9kb3dufDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcHwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwfDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoib3BlbnwyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDYwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJvcGVufDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidXBkYXRlX21vZGV8MjQwIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Im9wZW58MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MzAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzfDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXw1IiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidXBkYXRlX21vZGV8MTIwIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJjbG9zZXw1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicG9zdF9jaGFuZ2V8MSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaGlnaHwxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoib3BlbnwxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2Fic3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicG9zdF9jaGFuZ2V8NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2FicyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnN8MTUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJoaWdofDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2xvc2V8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicHJlbWFya2V0X2NoYW5nZV9mcm9tX29wZW5fYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImhpZ2giLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJiYXJzX2NvdW50fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImhpZ2h8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmljZV9lYXJuaW5nc19md2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJpY2Vfc2FsZXNfZndkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByaWNlX2Jvb2tfZndkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImVudGVycHJpc2VfdmFsdWVfZWJpdGRhX2Z3ZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJlbnRlcnByaXNlX3ZhbHVlX2ViaXRfZndkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImVudGVycHJpc2VfdmFsdWVfc2FsZXNfZndkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLkJsYWNrfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCUG93ZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZvbGF0aWxpdHkuTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtREl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjVEIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNXaGl0ZVNvbGRpZXJzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLkFsbC5DYWxjLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuMU0uRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5JbnZlcnRlZEhhbW1lcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2R8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb25leUZsb3d8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByaWNlXzUyX3dlZWtfaGlnaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjNNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9xdW90ZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTRbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5QaWVyY2luZy5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zQmxhY2tDcm93c3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfaW50cmFkYXlfdXNkfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxXzIwXzYwXzEyMF8zMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJfNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlcuUnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZV8yMF82MF8xMjBfMzB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjYiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVycyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VT3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuRHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1dpbmRvdy5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU98MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5JY2hpbW9rdSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guM00uRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNDR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUlAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nU3RhcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1WzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkJQb3dlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCUG93ZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTd8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjX3VzZHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfdm9sX2NoYW5nZV9hYnN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU2hvb3RpbmdTdGFyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QuaGlzdHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1dpbmRvdy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVU98NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi41WSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4zWV9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJpY2VfNTJfd2Vla19sb3ciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4xMFlfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLldfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zQmxhY2tDcm93c3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLkJsYWNrfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlVPfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjVZX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMDB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuV1J8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5CbGFja3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbVsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTh8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJUb3AuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk1BfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLkRvd258MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTg5fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNzV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5VcHBlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjZNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTh8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjbG9zZV91c2R8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjVEIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTWlkZGxlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTd8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5VcHNpZGVUYXN1a2lHYXAuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9xdW90ZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QuaGlzdHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuM00iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNDR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXQVB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTd8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjVEIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5CQlBvd2VyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LkFmdGVyLkhpZ2guQWxsIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLk1pZGRsZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuT3RoZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGNfdXNkfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjVEX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbW1lcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjX3VzZHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTd8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNXaGl0ZVNvbGRpZXJzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93LlVwcGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiMjRoX3ZvbF9wcmV2fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QuaGlzdCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTd8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3WzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGNfdXNkfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVldNQXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJfNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhcnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuMU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLk1pZGRsZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUlB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTh8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5QaWVyY2luZy5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBTyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuM1kiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guSyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJXLlJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuWVREIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC51cHBlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSGlnaC5BbGwuQ2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0WzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5JY2hpbW9rdXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1RocmVlTWV0aG9kcy5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTRbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3NXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLk1pZGRsZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5VcHNpZGVUYXN1a2lHYXAuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCUG93ZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5CQlBvd2VyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzXzUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5CQlBvd2VyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5VcHNpZGVUYXN1a2lHYXAuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzNbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTlbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0WzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZV8yMF82MF8xMjBfMzB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1RocmVlTWV0aG9kcy5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTd8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsLkNhbGMuRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Pbk5lY2suQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5JY2hpbW9rdXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJST0N8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuTG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRhcmtDbG91ZENvdmVyLkJlYXJpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvd25zaWRlVGFzdWtpR2FwLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiT3Blbi5BbGwuQ2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsLkNhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUC5TQVJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuQmxhY2t8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJXLlJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcl81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyVG9wLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjZ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3ciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC51cHBlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLkFsbC5EYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJlYXJpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyVG9wLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QuaGlzdHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BOXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuMU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5CbGFja3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJUb3AuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFuZ2luZ01hbnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuT3RoZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV81Ml93ZWVrX2xvd19kYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxXzIwXzYwXzEyMF8zMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlcuUnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVldNQXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV81Ml93ZWVrX2hpZ2hfZGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuM00iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlcuUnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuQmxhY2t8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5IdWxsTUE5fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjFNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlJlYy5JY2hpbW9rdXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2R8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVm9sYXRpbGl0eS5EIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU2hvb3RpbmdTdGFyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuRHJhZ29uZmx5fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5CbGFja3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2siLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4xTV9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3R8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNDQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVldNQXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2Jhc2V8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV01BfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJXLlJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfY2xvc2VfY2hhbmdlX2Fic3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93LlVwcGVyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjX3VzZHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5CQlBvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3Rhcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuM01fYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE5fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2R8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLldoaXRlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDaGFpa2luTW9uZXlGbG93fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuWVREX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRpbWVfYnVzaW5lc3NfZGF5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjBbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjX3VzZHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGx8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU8iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzNHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzNHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ0RvamlTdGFyLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtREl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTRbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDaGFpa2luTW9uZXlGbG93fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCUG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkt8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5NaWRkbGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtREl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiMjRoX3ZvbHw1IiwidCI6ImZ1bmRhbWVudGFsX3ByaWNlIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1WzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjZNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNzV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJST0N8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkJQb3dlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC51cHBlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLlciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuNk0uRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiRU1BOHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU2hvb3RpbmdTdGFyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb25leUZsb3d8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGNfdXNkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuTG93ZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLkJsYWNrfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BN3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGNfdXNkfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGx8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTUwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF92b2xfY2hhbmdlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLkRvd258NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbW1lcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImZpcnN0X2Jhcl90aW1lIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJBVFJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTd8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNDR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcl81MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGNfdXNkfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtREl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuT3RoZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLlkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuTG93ZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1RocmVlTWV0aG9kcy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLkRvd24iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjZNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlNNQTEzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTd8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3NXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlMxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLkFsbHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzXzUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTh8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjZNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvd25zaWRlVGFzdWtpR2FwLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi5ZX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5CbGFja3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuSyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfaW50cmFkYXl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXNfNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFuIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSGlnaC4zTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2R8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9xdW90ZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTWlkZGxlfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFh8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuNk1fYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTRbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiMjRoX2Nsb3NlX3ByZXZ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNDR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ0RvamlTdGFyLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyXzIwXzYwXzEyMF8zMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjZ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Pbk5lY2suQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVm9sYXRpbGl0eS5XIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5RmxvdyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BODl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb25leUZsb3d8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlcuUnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU98MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuMTBZIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BODl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTZ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5IdWxsTUE5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zQmxhY2tDcm93c3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9XX0="}},"time_used":183,"timings":{"blocked":0,"dns":0,"connect":8,"send":0,"wait":154,"receive":0,"ssl":20},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/cl17.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.356Z","timestamp":1785154589356,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/cl17.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 1525\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1525,"size_decoded":1790,"mime_type":"image/png","magic":"PNG image data, 144 x 49, 8-bit colormap, non-interlaced","md5":"64bc4839376d775b81051fbbe9db76d1","sha1":"efed05c551a87bdb6c6e21bc047c2af2c31a7d78","sha256":"cd4f1c45d384fe5b114ea542c9809684cad992e4263dfd39567c282e41fee6b2","sha512":"b1623e4d3b97824696f1e7696caf13a3af0ff539d7851ed10f38f464e34102b7e7527ff1e4b3fc308832fcb7518d2618c8f87abca48dfc36d9a8a10630eca6f6","ssdeep":"","tlshash":"0031e9f2c8e4bc60adbc17a3e50130195b67133730b0328152f1683b9ef165645f7824","first_seen":"2025-07-30T23:06:03.986438Z","last_seen":"2026-07-27T12:17:29.148331Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":93,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":35,"receive":58,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.988Z","timestamp":1785154589988,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /embed-widget/ticker-tape/?locale=en HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\ncache-control: max-age=120\r\nexpires: Mon, 27 Jul 2026 12:17:11 GMT\r\ncontent-security-policy: base-uri 'none'; default-src 'self' https: data: blob: wss: 'unsafe-inline'; script-src https://static.tradingview.com/static/ blob: https://*.ampproject.org/ https://*.paypal.com/ https://platform.twitter.com https://platform.x.com https://songbird.cardinalcommerce.com/edge/v1/ https://checkout.razorpay.com/ https://cdn.razorpay.com/static/cx/ https://*.checkout.com/ https://*.revolut.com/ https://*.cardinaltrusted.com https://pay.google.com/gp/p/js/ https://applepay.cdn-apple.com/jsapi/ https://tradingview-gateway.com/ https://www.tradingview-widget.com/static/bundles/embed/ 'nonce-Tfj4Rb3/OiZcKRT7RO7HwQ=='; object-src 'none'\r\ncross-origin-opener-policy: same-origin-allow-popups\r\nreferrer-policy: origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/27/2026 12:16:28\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 38baed0879851b8ad834a724db980e44\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":52010,"size_decoded":17381,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (17729)","md5":"bb7c187f1c0ae8b3aadc16bf37d9b1e9","sha1":"b20cb6e146853cb72676ba137442ee03dcab9925","sha256":"5068705e1509352cbbb7a385bc68963abf24a6e5038ae054075ae0f3234185f3","sha512":"65c0e20a628c46574cc397ae3b837f264c7ff651c65955fd1267a20117156f26bd33fbb21afcaedb0f47c82acb47174cc6b670a98f924e0da650665e7c50d150","ssdeep":"1536:DB8RteetNzfMO53tC3NogdF3qWn+66ceuvRMs:DB8RteetNzfMO53tC3Nl8We4Ms","tlshash":"6233e75388198b05dad64b457c33b203f92903a89542689479acd8dc199ffc3f1a7bfe","first_seen":"2026-07-27T12:17:15.127028Z","last_seen":"2026-07-27T12:18:57.797285Z","times_seen":4,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5UaWNrZXIgVGFwZSBXaWRnZXQ8L3RpdGxlPgoKCTxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIiBjcm9zc29yaWdpbj4KCgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk5NTI3LjE1YzVjMjVkMjdhNTZhMGRmNzcyLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM5MDcwLjU1Y2JjN2ExZGE5NjNiMzgyOWIzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NjkwNy5jNWFmOGFhN2I1MDgyYjE4NzVhNS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjgxNi4zNTVkNzViMjFhZTRiNTM0YTg0OS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80MzMyNS4yNTZmYTVhNTIxM2I5Y2I3MGY1Yy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zOTA1LjY4MmU4OWVmMmRjNGM3MDQyM2M2LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzE1OTMyLjJhNzBkMzk3YzM0ZjJlOWRlOTRmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxNTA4Ljc2NzIxOTI4M2M2NWY0ZDRjYTZlLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzg0MDguZGU1MzQ2NjNlMDUyMDc1YmExMmYuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODAwOTcuMGEzY2ZkYzI4MDI4Nzk1MjJhZWMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Cgo8c2NyaXB0IG5vbmNlPSJUZmo0UmIzL09pWmNLUlQ3Uk83SHdRPT0iPgoJd2luZG93LmxvY2FsZSA9ICdlbic7Cgl3aW5kb3cubGFuZ3VhZ2UgPSAnZW4nOwo8L3NjcmlwdD4KCTxzY3JpcHQgbm9uY2U9IlRmajRSYjMvT2laY0tSVDdSTzdId1E9PSI+dmFyIGVudmlyb25tZW50ID0gImJhdHRsZSI7PC9zY3JpcHQ+CgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9ydW50aW1lLWVtYmVkX3RpY2tlcl90YXBlX3dpZGdldC45NjJmNzc3YzIzYjY2MGQ4MzBhNS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uNTg2NjcuZDE1ZmM0YjVjNjMxYmI1ZWNlOGQuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU3MjkxLjcyMDgzODQyMTBmN2MzM2JjY2U0LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xMzE0OC4zMmNjMDFkYzAxNzUxYjkxNjgyYy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDkyNjUuYzIwOGVmODM3OWUwNzNmOTRkMTYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNzA2LmE1OTEzYWE2YWQ2MmQ5ZGJmMDMxLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82OTM1Mi4zMzAxMWYyNDRiOTJlYTBiNjQyYy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNjU4NjIuOTU3NjQ3NTJjMDlmM2YxOGY4OTAuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxMDMxLjUzNWYyN2I3NzZmMzk0YzdlNDNhLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDcwOC43M2QyYmNhMzcyMDdjNjdhNDFmNC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzU1Mi40YzU1MzUxODNiN2EwMzMwYTg5ZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA1OTQuZTg3NDQ0ZTI2ZjllMTI1NDUyMzEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc5MjA3LjZhNjJmYzgwM2QzZDA3ODk4OTM2LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83Mjc4LjczODc1OWVmMGFjMzM0NjkyNTNiLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yMDA2MS44NzE1YTQ1MjUxNGQ0NWQ1ZGQzYi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODc5MjYuOGFiOWNmZWRlMTYyOTUxMDcwMTcuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX3RpY2tlcl90YXBlX3dpZGdldC45NjVjOTBkYzZkNDEzMTlmMTMyZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+PHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF90aWNrZXJfdGFwZV93aWRnZXQuOTYyZjc3N2MyM2I2NjBkODMwYTUuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi41ODY2Ny5kMTVmYzRiNWM2MzFiYjVlY2U4ZC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU3MjkxLjcyMDgzODQyMTBmN2MzM2JjY2U0LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTI2NS5jMjA4ZWY4Mzc5ZTA3M2Y5NGQxNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNzA2LmE1OTEzYWE2YWQ2MmQ5ZGJmMDMxLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNjkzNTIuMzMwMTFmMjQ0YjkyZWEwYjY0MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxMDMxLjUzNWYyN2I3NzZmMzk0YzdlNDNhLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQ3MDguNzNkMmJjYTM3MjA3YzY3YTQxZjQuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zNTUyLjRjNTUzNTE4M2I3YTAzMzBhODlkLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA1OTQuZTg3NDQ0ZTI2ZjllMTI1NDUyMzEuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83OTIwNy42YTYyZmM4MDNkM2QwNzg5ODkzNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzcyNzguNzM4NzU5ZWYwYWMzMzQ2OTI1M2IuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yMDA2MS44NzE1YTQ1MjUxNGQ0NWQ1ZGQzYi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzg3OTI2LjhhYjljZmVkZTE2Mjk1MTA3MDE3LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfdGlja2VyX3RhcGVfd2lkZ2V0Ljk2NWM5MGRjNmQ0MTMxOWYxMzJkLmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJUZmo0UmIzL09pWmNLUlQ3Uk83SHdRPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjM1LCJjaGFydF9hdXRvc2F2ZV81bWluIjoxLjAsImNoYXJ0X2F1dG9zYXZlXzMwbWluIjoxLjAsInBlcmZvcm1hbmNlX3Rlc3RfbW9kZSI6MS4wLCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCI6MS4wLCJjaGFydF9zdG9yYWdlX2hpYmVybmF0aW9uX2RlbGF5XzYwbWluIjoxLjAsInN1cHBvcnRfcGVyc2lzdGVudF9sb2dzIjoxLjAsIm5ld19zdG9yYWdlX3N1YnNjcmlwdGlvbl91cmwiOjEuMCwicmVtb3ZlX2FuY2hvcmVkX3RleHQiOjEuMCwiZW5hYmxlX3N0ZXBfYnlfc3RlcF9oaW50c19mb3JfZHJhd2luZ3MiOjEuMCwicHVzaHN0cmVhbV9iYXNpY190ZWxlbWV0cnkiOjEuMCwiYWxsb3dfYnJhY2tldHNfcHJvZml0X2xvc3MiOjEuMCwiZW5hYmxlX3RyYWRlZF9jb250ZXh0X2xpbmtpbmciOjEuMCwib3JkZXJfY29udGV4dF92YWxpZGF0aW9uX2luX2luc3RhbnRfbW9kZSI6MS4wLCJhbGVydHMtb24tZnVuZGFtZW50YWwtbWV0cmljcyI6MS4wLCJhbGVydHMtbm90aWZpY2F0aW9uLXNjaGVkdWxlIjoxLjAsImFsZXJ0cy13YXRjaGxpc3QtZXh0ZW5kZWQtaG91cnMiOjEuMCwiZW5hYmxlX3N5bWJvbF9jaGFuZ2VfcmVzdHJpY3Rpb25fb25fd2lkZ2V0cyI6MS4wLCJlbmFibGVfYXN4X3N5bWJvbF9yZXN0cmljdGlvbiI6MS4wLCJzeW1waG9ueV9hbGxvd19ub25fcGFydGl0aW9uZWRfY29va2llX29uX29sZF9zeW1waG9ueSI6MS4wLCJzeW1waG9ueV9ub3RpZmljYXRpb25fYmFkZ2VzIjoxLjAsInN5bXBob255X3VzZV9hZGtfZm9yX3VwZ3JhZGVfcmVxdWVzdCI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF90cmFja2luZyI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF9zb2Z0X2xpbWl0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X2hhcmRfbGltaXQiOjEuMCwidGVsZWdyYW1fbWluaV9hcHBfcmVkdWNlX3NuYXBzaG90X3F1YWxpdHkiOjEuMCwibmV3c19zeW1ib2xfb3ZlcnZpZXdfa2V5X2ZhY3RzIjoxLjAsInRpbWVvdXRfZGphbmdvX2RiIjowLjE1LCJ0aW1lb3V0X2RqYW5nb191c2Vyc2V0dGluZ3NfZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX2NoYXJ0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fc3ltYm9sc19saXN0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fbWluZHNfZGIiOjAuMDUsInRpbWVvdXRfZGphbmdvX2xvZ2dpbmdfZGIiOjAuMjUsImRpc2FibGVfc2VydmljZXNfbW9uaXRvcl9tZXRyaWNzIjoxLjAsImVuYWJsZV9zaWduaW5fcmVjYXB0Y2hhIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sX2NvbW1lbnRzIjoxLjAsImVuYWJsZV9zcGFtZGV0ZWN0b3JtbF9jaGF0IjoxLjAsImVuYWJsZV9taW5kc19zcGFtZGV0ZWN0b3JtbCI6MS4wLCJiYWNrZW5kLWNvbm5lY3Rpb25zLWluLXRva2VuIjoxLjAsIm9uZV9jb25uZWN0aW9uX3dpdGhfZXhjaGFuZ2VzIjoxLjAsIm1vYmlsZS1hZHMtaW9zIjoxLjAsIm1vYmlsZS1hZHMtYW5kcm9pZCI6MS4wLCJnb29nbGUtb25lLXRhcC1zaWduaW4iOjEuMCwiYnJhaW50cmVlLWdvcHJvLWluLW9yZGVyLWRpYWxvZyI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5IjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5IjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktZnJvbS1pb3MtYXBwIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktdHJpYWwiOjEuMCwidHJpcGxlYS1wYXltZW50cyI6MS4wLCJicmFpbnRyZWUtZ29vZ2xlLXBheS10cmlhbCI6MS4wLCJicmFpbnRyZWUtb25lLXVzZC12ZXJpZmljYXRpb24iOjEuMCwiYnJhaW50cmVlLTNkcy1lbmFibGVkIjoxLjAsImJyYWludHJlZS0zZHMtc3RhdHVzLWNoZWNrIjoxLjAsImJyYWludHJlZS1hZGRpdGlvbmFsLWNhcmQtY2hlY2tzLWZvci10cmlhbCI6MS4wLCJicmFpbnRyZWUtaW5zdGFudC1zZXR0bGVtZW50IjoxLjAsImJyYWludHJlZV9yZWN1cnJpbmdfYmlsbGluZ19zY2hlZHVsZXJfc3Vic2NyaXB0aW9uIjoxLjAsImNoZWNrb3V0X21hbnVhbF9jYXB0dXJlX3JlcXVpcmVkIjoxLjAsImNoZWNrb3V0LXN1YnNjcmlwdGlvbnMiOjEuMCwiY2hlY2tvdXRfYWRkaXRpb25hbF9jYXJkX2NoZWNrc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9wcmVwYWlkX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl9wcmVtaXVtX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fY29tbWVyY2lhbF9jYXJkX3RyaWFsIjoxLjAsImVuYWJsZV9wYXltZW50c18zZHNfb3B0aW1pemF0aW9uIjoxLjAsImNvdW50cnlfb2ZfaXNzdWFuY2VfdnNfYmlsbGluZ19jb3VudHJ5IjoxLjAsImNoZWNrb3V0X3Nob3dfaW5zdGVhZF9vZl9icmFpbnRyZWUiOjEuMCwiY2hlY2tvdXQtM2RzIjoxLjAsImNoZWNrb3V0LXBheXBhbCI6MS4wLCJjaGVja291dF9pbmNsdWRlX2FjY291bnRfaG9sZGVyIjoxLjAsImNoZWNrb3V0LXBheXBhbC10cmlhbCI6MS4wLCJhbm51YWxfdG9fbW9udGhseV9kb3duZ3JhZGVfYXR0ZW1wdCI6MS4wLCJyYXpvcnBheV90cmlhbF8xMF9pbnIiOjEuMCwicmF6b3JwYXktY2FyZC1vcmRlci10b2tlbi1zZWN0aW9uIjoxLjAsInJhem9ycGF5LWNhcmQtc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS11cGktc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS1zMy1pbnZvaWNlLXVwbG9hZCI6MS4wLCJyYXpvcnBheV9pbmNsdWRlX2RhdGVfb2ZfYmlydGgiOjEuMCwiZGxvY2FsLXBheW1lbnRzIjoxLjAsInJldm9sdXQtcGF5LXBheW1lbnRzIjoxLjAsInJldm9sdXQtY2FyZC1wYXltZW50cyI6MC41LCJkbG9jYWwtcGl4LWF1dG9tYXRpY28iOjEuMCwiYnJhaW50cmVlX3RyYW5zYWN0aW9uX3NvdXJjZSI6MS4wLCJ2ZXJ0ZXgtdGF4IjoxLjAsInZlcnRleC10YXgtZml4IjoxLjAsInJlY2VpcHRfaW5fZW1haWxzIjoxLjAsImFkd29yZHMtYW5hbHl0aWNzIjoxLjAsImNtMzYwLWFuYWx5dGljcyI6MS4wLCJkaXNhYmxlX21vYmlsZV91cHNlbGxfaW9zIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9hbmRyb2lkIjoxLjAsInJlcXVpcmVkX2FncmVlbWVudF9mb3JfcnQiOjEuMCwiY2hlY2tfbWFya2V0X2RhdGFfbGltaXRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2RhdGEiOjEuMCwiZm9yY2VfdG9fdXBncmFkZV90b19leHBlcnQiOjEuMCwic2VuZF90cmFkZXZhbl9pbnZvaWNlIjoxLjAsInNob3dfcGVwZV9hbmltYXRpb24iOjEuMCwic2VuZF9uZXh0X3BheW1lbnRfaW5mb19yZWNlaXB0IjoxLjAsInN1cHBvcnRfb3Zlcm5pZ2h0X3Nlc3Npb24iOjEuMCwic2NyZWVuZXItYWxlcnRzLXJlYWQtb25seSI6MS4wLCJzY3JlZW5lcl9ib25kX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9zdG9ja19haV9maWx0ZXJzX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfaXNfYWxsb3dlZF90b19jcmVhdGVfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JhdGluZ19jb2x1bW5zX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3NvcnRpbmdfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfZ3JvdXBfYnlfaXNpbl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9zeW1ib2xfc2VhcmNoX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JlZ2lzdHJhdGlvbl9iYW5uZXJfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNlc190cmFja2luZyI6MS4wLCJzZW5kX2ZpbmFuY2lhbF9ub3RpZmljYXRpb25zIjoxLjAsInNwYXJrX3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya19jYXRlZ29yeV90cmFuc2xhdGlvbnMiOjEuMCwic3BhcmtfdGFnc190cmFuc2xhdGlvbnMiOjEuMCwicHJvX3BsYW5faW5pdGlhbF9yZWZ1bmRzX2Rpc2FibGVkIjoxLjAsInByZXZpb3VzX21vbm9wcm9kdWN0X3B1cmNoYXNlc19yZWZ1bmRzX2VuYWJsZWQiOjEuMCwiZW5hYmxlX2lkZWFzX3JlY29tbWVuZGF0aW9ucyI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zX2ZlZWQiOjEuMCwiZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJldGhvY2FfYWxlcnRfbm90aWZpY2F0aW9uX3dlYmhvb2siOjEuMCwiaGlkZV9zdXNwaWNpb3VzX3VzZXJzX2lkZWFzIjoxLjAsImRpc2FibGVfcHVibGlzaF9zdHJhdGVneV9yYW5nZV9iYXNlZF9jaGFydCI6MS4wLCJyZXN0cmljdF9zaW11bHRhbmVvdXNfcmVxdWVzdHMiOjEuMCwibG9naW5fZnJvbV9uZXdfZGV2aWNlX2VtYWlsIjoxLjAsInNzcl93b3JrZXJfbm93YWl0IjoxLjAsImJyb2tlcl9BMUNBUElUQUwiOjEuMCwiYnJva2VyX0FDVElWVFJBREVTIjoxLjAsImJyb2tlcl9BTENIRU1ZTUFSS0VUUyI6MS4wLCJicm9rZXJfQUxJQ0VCTFVFIjoxLjAsImhpZGVfQUxPUl9vbl9pb3MiOjEuMCwiaGlkZV9BTE9SX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9BTE9SX29uX21vYmlsZV93ZWIiOjEuMCwiYWxvci1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0FMUEFDQSI6MS4wLCJicm9rZXJfQUxSQU1aIjoxLjAsImJyb2tlcl9BTVAiOjEuMCwiYnJva2VyX0FOR0VMT05FIjoxLjAsImJyb2tlcl9BVkFfRlVUVVJFUyI6MS4wLCJBVkFfRlVUVVJFU19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9CMlBSSU1FIjoxLjAsImJyb2tlcl9CQUpBSiI6MS4wLCJicm9rZXJfQkVZT05EIjoxLjAsImJyb2tlcl9CSU5BTkNFIjoxLjAsImVuYWJsZV9iaW5hbmNlYXBpc19iYXNlX3VybCI6MS4wLCJicm9rZXJfQklOR0JPTiI6MS4wLCJicm9rZXJfQklUQVpaQSI6MS4wLCJicm9rZXJfQklUR0VUIjoxLjAsImJyb2tlcl9CSVRNRVgiOjEuMCwiYnJva2VyX0JJVFNUQU1QIjoxLjAsImJyb2tlcl9CTEFDS0JVTEwiOjEuMCwiYnJva2VyX0JMVUVCRVJSWU1BUktFVFMiOjEuMCwiYnJva2VyX0JUQ0MiOjEuMCwiYnJva2VyX0JZQklUIjoxLjAsImJyb2tlcl9DQVBJVEFMQ09NIjoxLjAsImJyb2tlcl9DQVBUUkFERVIiOjEuMCwiQ0FQVFJBREVSX3NlcGFyYXRlX2ludGVncmF0aW9uX21pZ3JhdGlvbl93YXJuaW5nIjoxLjAsImJyb2tlcl9DRkkiOjEuMCwiYnJva2VyX0NHU0kiOjEuMCwiYnJva2VyX0NJVFlJTkRFWCI6MS4wLCJjaXR5aW5kZXhfc3ByZWFkYmV0dGluZyI6MS4wLCJDTEVBUlNUUkVFVF9iZXRhIjoxLjAsImJyb2tlcl9DTUNNQVJLRVRTIjoxLjAsImJyb2tlcl9DT0JSQVRSQURJTkciOjEuMCwiYnJva2VyX0NPSU5CQVNFIjoxLjAsImNvaW5iYXNlX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJjb2luYmFzZV9jYW5jZWxfcG9zaXRpb25fYnJhY2tldHMiOjEuMCwiYnJva2VyX0NPSU5KQVIiOjEuMCwiQ09JTkpBUl9iZXRhIjoxLjAsImJyb2tlcl9DT0lOU1dJVENIIjoxLjAsImJyb2tlcl9DT0lOVyI6MS4wLCJicm9rZXJfQ09MTUVYIjoxLjAsImhpZGVfQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiY3FnLXJlYWx0aW1lLWJhbmR3aWR0aC1saW1pdCI6MS4wLCJicm9rZXJfQ1JZUFRPQ09NIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25faW9zIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fYW5kcm9pZCI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0NYTSI6MS4wLCJicm9rZXJfREFPTCI6MS4wLCJicm9rZXJfREFSV0lORVgiOjEuMCwiREFSV0lORVhfYmV0YSI6MS4wLCJicm9rZXJfREVMVEEiOjEuMCwiYnJva2VyX0RFUkFZQUgiOjEuMCwiYnJva2VyX0RFUklWIjoxLjAsImJyb2tlcl9ESEFOIjoxLjAsImJyb2tlcl9ETlNFIjoxLjAsImJyb2tlcl9ET1JNQU4iOjEuMCwiaGlkZV9EVU1NWV9vbl9pb3MiOjEuMCwiaGlkZV9EVU1NWV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRFVNTVlfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRUFTWU1BUktFVFMiOjEuMCwiYnJva2VyX0VDT1ZBTE9SRVMiOjEuMCwiYnJva2VyX0VER0VDTEVBUiI6MS4wLCJlZGdlY2xlYXJfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfRUlHSFRDQVAiOjEuMCwiYnJva2VyX0VSUkFOVEUiOjEuMCwiYnJva2VyX0VTQUZYIjoxLjAsIkZJREVMSVRZX2JldGEiOjEuMCwiRklERUxJVFlfdXNfcmVsZWFzZSI6MC4yNSwiZmlkZWxpdHlfc2VjdXJpdHlfdG9rZW4iOjEuMCwiYnJva2VyX0ZPUkVYQ09NIjoxLjAsImZvcmV4Y29tX3Nlc3Npb25fdjIiOjEuMCwiYnJva2VyX0ZQTUFSS0VUUyI6MS4wLCJoaWRlX0ZUWF9vbl9pb3MiOjEuMCwiaGlkZV9GVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0ZUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImZ0eF9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZVU0lPTk1BUktFVFMiOjEuMCwiZnhjbV9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9GWENNIjoxLjAsImhpZGVfRlhPUEVOX29uX2lvcyI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlhPUEVOX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0ZYUFJPIjoxLjAsImJyb2tlcl9GWFRGIjoxLjAsImJyb2tlcl9GWUVSUyI6MS4wLCJicm9rZXJfR0FURSI6MS4wLCJicm9rZXJfR0JFQlJPS0VSUyI6MS4wLCJnZW1pbmktYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HRU5JQUxJTlZFU1RJTUVOVE9TIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25faW9zIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX21vYmlsZV93ZWIiOjEuMCwiZ2xvYmFscHJpbWUtYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HT01BUktFVFMiOjEuMCwiYnJva2VyX0dPVFJBREUiOjEuMCwiZ290cmFkZV9lbmFibGVfc3RyZWFtaW5nX2VuZHBvaW50cyI6MS4wLCJicm9rZXJfSEVSRU5ZQSI6MS4wLCJoaWRlX0hUWF9vbl9pb3MiOjEuMCwiaGlkZV9IVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0hUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9JQktSIjoxLjAsImNoZWNrX2lia3Jfc2lkZV9tYWludGVuYW5jZSI6MS4wLCJpYmtyX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3BhcmFsbGVsX3Byb3ZpZGVyX2luaXRpYWxpemF0aW9uIjoxLjAsImlia3Jfd3NfYWNjb3VudF9zdW1tYXJ5IjoxLjAsImlia3Jfd3Nfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3N1YnNjcmliZV90b19vcmRlcl91cGRhdGVzX2ZpcnN0IjoxLjAsImlia3Jfd3NfYWNjb3VudF9sZWRnZXIiOjEuMCwiYnJva2VyX0lCUk9LRVIiOjEuMCwiYnJva2VyX0lDTUFSS0VUUyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0FTSUMiOjEuMCwiYnJva2VyX0lDTUFSS0VUU19FVSI6MS4wLCJicm9rZXJfSUciOjEuMCwiYnJva2VyX0lORFNUT0NLUyI6MS4wLCJicm9rZXJfSU5GT1lBVElSSU0iOjEuMCwiYnJva2VyX0lOTk9WRVNUWCI6MS4wLCJicm9rZXJfSU5URVJBQ1RJVkVJTCI6MS4wLCJicm9rZXJfSU5WRVNUUkFERSI6MS4wLCJJTlZFU1RSQURFX2JldGEiOjEuMCwiYnJva2VyX0lST05CRUFNIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tJV09PTSI6MS4wLCJraXdvb21fdXNlX3NlcGFyYXRlX3N0cmVhbWluZ191cmwiOjEuMCwiYnJva2VyX0tPVEFLIjoxLjAsImhpZGVfS09UQUtfb25faW9zIjoxLjAsImhpZGVfS09UQUtfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0tPVEFLX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tSQUtFTiI6MS4wLCJoaWRlX0tSQUtFTl9vbl9pb3MiOjEuMCwiaGlkZV9LUkFLRU5fb25fYW5kcm9pZCI6MS4wLCJLUkFLRU5fYmV0YSI6MS4wLCJrcmFrZW5fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9LU0VDVVJJVElFUyI6MS4wLCJicm9rZXJfTElCRVJBVE9SIjoxLjAsImJyb2tlcl9NRVhDIjoxLjAsImJyb2tlcl9NRVhFTSI6MS4wLCJicm9rZXJfTUlEQVMiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX01PT01PTyI6MS4wLCJicm9rZXJfTU9USUxBTE9TV0FMIjoxLjAsImJyb2tlcl9OSU5KQVRSQURFUiI6MS4wLCJicm9rZXJfT0FOREEiOjEuMCwib2FuZGFfc2VydmVyX2xvZ2dpbmciOjEuMCwib2FuZGFfb2F1dGhfbXVsdGlwbGV4aW5nIjoxLjAsImJyb2tlcl9PS1giOjEuMCwiYnJva2VyX09QT0ZJTkFOQ0UiOjEuMCwiYnJva2VyX09QVElNVVMiOjEuMCwiYnJva2VyX09TTUFOTEkiOjEuMCwiYnJva2VyX09TTUFOTElGWCI6MS4wLCJwYXBlcl9mb3JjZV9jb25uZWN0X3B1c2hzdHJlYW0iOjEuMCwicGFwZXJfc3ViYWNjb3VudF9jdXN0b21fY3VycmVuY3kiOjEuMCwicGFwZXJfb3V0c2lkZV9ydGgiOjEuMCwiYnJva2VyX1BBWVRNIjoxLjAsImJyb2tlcl9QRVBQRVJTVE9ORSI6MS4wLCJicm9rZXJfUEhFTUVYIjoxLjAsImJyb2tlcl9QSElMTElQQ0FQSVRBTF9UUiI6MS4wLCJicm9rZXJfUEhJTExJUE5PVkEiOjEuMCwiYnJva2VyX1BMVVM1MDAiOjEuMCwicGx1czUwMF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIlBMVVM1MDBVU19iZXRhIjoxLjAsImJyb2tlcl9QVVJQTEVUUkFESU5HIjoxLjAsImJyb2tlcl9RVUVTVFJBREUiOjEuMCwiYnJva2VyX1JBVkFCVVJTQVRJTCI6MS4wLCJSQVZBQlVSU0FUSUxfYmV0YSI6MS4wLCJicm9rZXJfUklZQURDQVBJVEFMIjoxLjAsImJyb2tlcl9ST0JPTUFSS0VUUyI6MS4wLCJicm9rZXJfUkVQTEFZQlJPS0VSIjoxLjAsImJyb2tlcl9TQU1VRUwiOjEuMCwiYnJva2VyX1NBWE9CQU5LIjoxLjAsImJyb2tlcl9TSEFSRU1BUktFVCI6MS4wLCJicm9rZXJfU0tJTExJTkciOjEuMCwiYnJva2VyX1NQUkVBREVYIjoxLjAsImJyb2tlcl9TV0lTU1FVT1RFIjoxLjAsImJyb2tlcl9TVE9ORVgiOjEuMCwiYnJva2VyX1RBU1RZRlgiOjEuMCwiYnJva2VyX1RBU1RZVFJBREUiOjEuMCwiYnJva2VyX1RISU5LTUFSS0VUUyI6MS4wLCJ0aGlua21hcmtldHNfYWNjb3VudF9kYXRhX3N0cmVhbWluZyI6MS4wLCJicm9rZXJfVElDS01JTEwiOjEuMCwiaGlkZV9USUdFUl9vbl9pb3MiOjEuMCwiaGlkZV9USUdFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVElHRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfVFJBREVOQVRJT04iOjEuMCwiYnJva2VyX1RSQURFU1RBVElPTiI6MS4wLCJ0cmFkZXN0YXRpb25fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInRyYWRlc3RhdGlvbl9hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsInRyYWRlc3RhdGlvbl9zdHJlYW1pbmdfc2VydmVyX2xvZ2dpbmciOjEuMCwiYnJva2VyX1RSQURFWkVSTyI6MS4wLCJicm9rZXJfVFJBRElFUiI6MS4wLCJicm9rZXJfVFJBRElFUl9GVVRVUkVTIjoxLjAsInRyYWRpZXJfZnV0dXJlc19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9UUkFET1ZBVEUiOjEuMCwiaGlkZV9UUkFEVV9vbl9pb3MiOjEuMCwiaGlkZV9UUkFEVV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVFJBRFVfb25fbW9iaWxlX3dlYiI6MS4wLCJ0cmFkdV9zcHJlYWRfYmV0IjoxLjAsImJyb2tlcl9UUklWRSI6MS4wLCJicm9rZXJfVkFOVEFHRSI6MS4wLCJicm9rZXJfVkVMT0NJVFkiOjEuMCwiYnJva2VyX1dFQlVMTCI6MS4wLCJicm9rZXJfV0VCVUxMSkFQQU4iOjEuMCwiYnJva2VyX1dFQlVMTFBBWSI6MS4wLCJicm9rZXJfV0VCVUxMVUsiOjEuMCwiYnJva2VyX1dISVRFQklUIjoxLjAsImJyb2tlcl9XSFNFTEZJTlZFU1QiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVF9GVVRVUkVTIjoxLjAsIldIU0VMRklOVkVTVF9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1hDVUJFIjoxLjAsImJyb2tlcl9ZTEciOjEuMCwiYnJva2VyX2lkX3Nlc3Npb24iOjEuMCwiZGlzYWxsb3dfY29uY3VycmVudF9zZXNzaW9ucyI6MS4wLCJ1c2VfY29kZV9mbG93X3YyX3Byb3ZpZGVyIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXJfZm9yX3VudGVzdGVkX2Jyb2tlcnMiOjEuMCwibW9iaWxlX3RyYWRpbmdfd2ViIjoxLjAsIm1vYmlsZV90cmFkaW5nX2lvcyI6MS4wLCJtb2JpbGVfdHJhZGluZ19hbmRyb2lkIjoxLjAsImNvbnRpbnVvdXNfZnJvbnRfY29udHJhY3RfdHJhZGluZyI6MS4wLCJ0cmFkaW5nX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJvYXV0aDJfY29kZV9mbG93X3Byb3ZpZGVyX3NlcnZlcl9sb2dnZXIiOjEuMCwicmVzdF9vYXV0aDJfY29kZV9mbG93X211bHRpcGxleGluZyI6MS4wLCJyZXN0X2xvZ291dF9vbl80MjkiOjEuMCwicmV2aWV3X3BvcHVwX29uX2NoYXJ0IjoxLjAsInNob3dfY29uY3VycmVudF9jb25uZWN0aW9uX3dhcm5pbmciOjEuMCwiZW5hYmxlX3RyYWRpbmdfc2VydmVyX2xvZ2dlciI6MS4wLCJvcmRlcl9wcmVzZXRzIjoxLjAsIm9yZGVyX3RpY2tldF9yZXNpemFibGVfZHJhd2VyX29uIjoxLjAsInJlc3RfdXNlX2FzeW5jX21hcHBlciI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9iYW5uZXJfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2ciOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2dfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fbGVhZGVyYm9hcmQiOjEuMCwicGFwZXJfY29tcGV0aXRpb25fcHJldmlvdXNfY29tcGV0aXRpb25zIjoxLjAsImFtcF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJsdWVsaW5lX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiZG9ybWFuX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiaXJvbmJlYW1fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJvcHRpbXVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwic3RvbmV4X29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwieWxnX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwidHJhZGluZ19nZW5lcmFsX2V2ZW50c19nYV90cmFja2luZyI6MS4wLCJyZXBsYXlfcmVzdWx0X3NoYXJpbmciOjEuMCwicmVwbGF5X3RyYWRpbmdfYnJhY2tldHMiOjEuMCwiaGlkZV9hbGxfYnJva2Vyc19idXR0b25faW5faW9zX2FwcCI6MS4wLCJmb3JjZV9tYXhfYWxsb3dlZF9wdWxsaW5nX2ludGVydmFscyI6MS4wLCJwYXBlcl9kZWxheV90cmFkaW5nIjoxLjAsImVuYWJsZV9maXJzdF90b3VjaF9pc19zZWxlY3Rpb24iOjEuMCwiY2xlYXJfcHJvamVjdF9vcmRlcl9vbl9vcmRlcl90aWNrZXRfY2xvc2UiOjEuMCwiZW5hYmxlX25ld19iZWhhdmlvcl9vZl9jb25maXJtX2J1dHRvbnNfb25fbW9iaWxlIjoxLjAsInJlbmV3X3Rva2VuX3ByZWVtcHRpb25fMzAiOjEuMCwiZG9fbm90X29wZW5fb3RfZnJvbV9wbHVzX2J1dHRvbiI6MS4wLCJicm9rZXJfc2lkZV9wcm9tb3Rpb24iOjEuMCwiZW5hYmxlX25ld190cmFkaW5nX21lbnVfc3RydWN0dXJlIjoxLjAsInF1aWNrX3RyYWRpbmdfcGFuZWwiOjEuMCwicGFwZXJfb3JkZXJfY29uZmlybWF0aW9uX2RpYWxvZyI6MS4wLCJwYXBlcl9tdWx0aXBsZV9sZXZlbHNfZW5hYmxlZCI6MS4wLCJwYXBlcl9tYXJnaW5fY29udHJvbCI6MS4wLCJlbmFibGVfc2VnbWVudGF0aW9uX3BhcGVyX3RyYWRpbmciOjEuMCwiZW5hYmxlX2NoYXJ0X2FkYXB0aXZlX3Rwc2xfYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwiZW5hYmxlX21hcmtldF9wcm9qZWN0X29yZGVyIjoxLjAsImVuYWJsZV9zeW1ib2xzX3BvcHVsYXJpdHlfc2hvd2luZyI6MS4wLCJlbmFibGVfdHJhbnNsYXRpb25zX3MzX3VwbG9hZCI6MS4wLCJldGZfZnVuZF9mbG93c19vbmx5X2RheXNfcmVzb2x1dGlvbnMiOjEuMCwiZGlzYWJsZV9zbm93cGxvd19wbGF0Zm9ybV9ldmVudHMiOjEuMCwibm90aWZ5X2lkZWFfbW9kc19hYm91dF9maXJzdF9wdWJsaWNhdGlvbiI6MS4wLCJlbmFibGVfd2FmX3RyYWNraW5nIjoxLjAsIm5ld19lcnJvcnNfZmxvdyI6MS4wLCJxdW90ZS10b2tlbi1maWx0ZXItb3duLXNjcmlwdHMtYnktYWNjZXNzIjoxLjAsImtlZXBfaW5kaWNhdG9yc19zZWFyY2hfc3RhdGUiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3RhYl9zY3JvbGxfc3RhdGUiOjEuMCwiY29uZmlndXJhYmxlX3NlYXJjaF9hbmRfZmlsdHJhdGlvbiI6MS4wLCJwaW5lX2VkaXRvcl93cmFwX29uX2xpbmVfc3BsaXQiOjEuMCwic3ltYm9sX3NlYXJjaF9jb3VudHJ5X3NvdXJjZXMiOjEuMCwid2F0Y2hsaXN0c19kaWFsb2dfc2Nyb2xsX3RvX2FjdGl2ZSI6MS4wLCJib3R0b21fcGFuZWxfdHJhY2tfZXZlbnRzIjoxLjAsInNub3dwbG93X2JlYWNvbl9mZWF0dXJlIjoxLjAsInNob3dfZGF0YV9wcm9ibGVtc19pbl9oZWxwX2NlbnRlciI6MS4wLCJlbmFibGVfYXBwbGVfZGV2aWNlX2NoZWNrIjoxLjAsImVuYWJsZV9hcHBsZV9pbnRyb19vZmZlcl9zaWduYXR1cmUiOjEuMCwiZW5hYmxlX2FwcGxlX3Byb21vX29mZmVyX3NpZ25hdHVyZV92MiI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fc2lnbmF0dXJlIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfYW5kcm9pZCI6MS4wLCJlbmFibGVfcHVzaF9ub3RpZmljYXRpb25zX2lvcyI6MS4wLCJlbmFibGVfbWFudGljb3JlX2NsdXN0ZXIiOjEuMCwiZW5hYmxlX3B1c2hzdHJlYW1fYXV0aCI6MS4wLCJlbmFibGVfZW52b3lfcHJveHkiOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5X3BhcGVydHJhZGluZyI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfc2NyZWVuZXIiOjEuMCwib3B0aW9uc19yZWR1Y2VfcG9sbGluZ19pbnRlcnZhbCI6MS4wLCJvcHRpb25zX2J1aWxkZXJfZ3JvdXBfYWN0aW9ucyI6MS4wLCJvcHRpb25zX2NoYWluX3NpZ21hX2ZpbHRlciI6MS4wLCJvcHRpb25zX2Jyb2tlcl9zdHJhdGVnaWVzIjoxLjAsInNob3dfdG9hc3RfYWJvdXRfdW5yZWFkX21lc3NhZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcGF5b3V0IjoxLjAsImVuYWJsZV9lbWFpbF9jaGFuZ2VfbG9nZ2luZyI6MS4wLCJlbmFibGVfZW1haWxfb25fcGFydG5lcl9zdGF0dXNfY2hhbmdlIjoxLjAsImVuYWJsZV9wYXJ0bmVyX3Byb2dyYW1fYXBwbHkiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbSI6MS4wLCJjb21wcmVzc19jYWNoZV9kYXRhIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZyI6MS4wLCJuZXdzX3NjcmVlbmVyX3BhZ2VfY2xpZW50IjoxLjAsImVuYWJsZV9kZWNsYXJhdGlvbl9wb3B1cF9vbl9sb2FkIjoxLjAsInNob3dfZGF0YV9ib25kc19mcmVlX3VzZXJzIjoxLjAsImVuYWJsZV9tb2Rlcm5fcmVuZGVyX21vZGUiOjEuMCwiZW5hYmxlX3Byb2ZfcG9wdXBfZnJlZSI6MS4wLCJpb3NfYXBwX25ld3NfYW5kX21pbmRzIjoxLjAsImRvX25vdF9kaXNjbG9zZV9waG9uZV9vY2N1cGFuY3kiOjEuMCwiZW5hYmxlX3JlZGlyZWN0X3RvX3dpZGdldF9kb2N1bWVudGF0aW9uX29mX2FueV9sb2NhbGl6YXRpb24iOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nX2hpYmVybmF0aW9uIjoxLjAsIm5ld3Nfc3RyZWFtaW5nX2hpYmVybmF0aW9uX2RlbGF5XzEwbWluIjoxLjAsInBhc3NfcmVjb3Zlcnlfc2VhcmNoX2hpZGVfaW5mbyI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfb25fc2NyZWVuZXIiOjEuMCwiZW5hYmxlX2ZvcmNlZF9lbWFpbF9jb25maXJtYXRpb24iOjEuMCwic2hvd19naWZ0X2J1dHRvbiI6MS4wLCJhZGRyZXNzX3ZhbGlkYXRpb25fZW5hYmxlZCI6MS4wLCJkaXNhYmxlX3VudmVyaWZpZWRfYWRkcmVzcyI6MS4wLCJnZW5lcmF0ZV9pbnZvaWNlX251bWJlcl9ieV9jb3VudHJ5IjoxLjAsInNob3dfZmF2b3JpdGVfbGF5b3V0cyI6MS4wLCJlbmFibGVfc29jaWFsX2F1dGhfY29uZmlybWF0aW9uIjoxLjAsImVuYWJsZV9hZF9ibG9ja19kZXRlY3QiOjEuMCwidHZkX25ld190YWJfbGlua2luZyI6MS4wLCJ0dmRfdGltZV9hbmRfZGF0ZV9yYW5nZV9saW5raW5nIjoxLjAsInVzZV9icm93c2VyX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ1c2VfZGVza3RvcF9zZXNzaW9uX3N0b3JhZ2UiOjEuMCwid3JvbmdfYWNjb3VudF9kaWFsb2dfcHJpbWFyeV9zd2l0Y2giOjEuMCwiZW5hYmxlX2xpbmd1YV9sYW5nX2NoZWNrIjoxLjAsImdldF9zYXZlZF9hY3RpdmVfbGlzdF9iZWZvcmVfZ2V0dGluZ19hbGxfbGlzdHMiOjEuMCwid2F0Y2hsaXN0X2FkZF9zb3VyY2VfcGFyYW0iOjEuMCwic2hvd19yZWZlcnJhbF9ub3RpZmljYXRpb25fZGlhbG9nIjoxLjAsInNldF9uZXdfYmxhY2tfY29sb3IiOjEuMCwibmV3c191c2VfbmV3c19tZWRpYXRvciI6MS4wLCJhbGxvd190cmFpbGluZ193aGl0ZXNwYWNlX2luX251bWJlcl90b2tlbiI6MS4wLCJyZXN0cmljdF9wd25lZF9wYXNzd29yZF9zZXQiOjEuMCwibm90aWZfc2V0dGluZ3NfZW5hYmxlX25ld19zdG9yZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV93cml0ZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV9yZWFkIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrLWZvci1pbml0aWFsLXB1cmNoYXNlIjoxLjAsImVuYWJsZV9tZXRhZGVmZW5kZXJfY2hlY2tfZm9yX2FncmVlbWVudCI6MS4wLCJzaG93X2Rvd25sb2FkX3lpZWxkX2N1cnZlc19kYXRhIjoxLjAsIm1vdmVfa2V5X3Rlbm9yc190b19zZXR0aW5ncyI6MS4wLCJzaG93X3lpZWxkX2N1cnZlc19tYXAiOjEuMCwiZGlzYWJsZV93aWRnZXRiYXJfaW5fYXBwcyI6MS4wLCJoaWRlX3B1YmxpY2F0aW9uc19vZl9iYW5uZWRfdXNlcnMiOjEuMCwiZW5hYmxlX3N1bW1hcnlfdXBkYXRlc19mcm9tX2NoYXJ0X3Nlc3Npb24iOjEuMCwic2hvd19uZXdzX2Zsb3dfdG9vbF9yaWdodF9iYXIiOjEuMCwiZW5hYmxlX2NoYXJ0X3NhdmluZ19zdGF0cyI6MS4wLCJlbmFibGVfc2F2aW5nX3NhbWVfY2hhcnRfcmF0ZV9saW1pdCI6MS4wLCJuZXdzX2FsZXJ0c19lbmFibGVkIjoxLjAsIm5ld3NfbXVsdGlwbGVfYWxlcnRzX2VuYWJsZWQiOjEuMCwicmVmdW5kX3Vudm9pZGFibGVfY291cG9uc19lbmFibGVkIjoxLjAsImVuYWJsZV9zbm93cGxvd19lbWFpbF90cmFja2luZyI6MS4wLCJuZXdzX2VuYWJsZV9zZW50aW1lbnQiOjEuMCwidXNlX2luX3N5bWJvbF9zZWFyY2hfb3B0aW9uc19tY3hfZXhjaGFuZ2UiOjEuMCwiZW5hYmxlX3VzZXJzZXR0aW5nc19zeW1ib2xzX3Blcl9yb3dfc29mdF9saW1pdCI6MC4xLCJmb3JiaWRfbG9naW5fd2l0aF9wd25lZF9wYXNzd29yZHMiOjEuMCwiZGVidWdfZ2V0X3Rlc3RfYmFyc19kYXRhIjoxLjAsIm5ld3NfdXNlX21lZGlhdG9yX3N0b3J5IjoxLjAsIm5ld3NfZmxvd19yZWNvbmZpZ3VyZV9maWx0ZXJzIjoxLjAsImJsYWNrX2ZyaWRheV9lbmFibGVfc2tpcF90b19wYXltZW50IjoxLjAsImhpZGVfdHJhZGluZ19idXR0b25fb25fYm90dG9tX3BhbmVsX2FuZF9yZXBsYXlfdGFiIjoxLjAsImhpZGVfdHJhZGVfYnV0dG9uX2hpbnRfaW5faGVhZGVyX3Rvb2xiYXIiOjEuMCwiaGlkZV9zZWVfb25fc3VwZXJfY2hhcnRzX2J1dHRvbiI6MS4wLCJoaWRlX3N5bWJvbF9wYWdlX2NoYXJ0X3R5cGVfc3dpdGNoZXIiOjEuMCwiZGlzYWJsZV9jaGF0X3NwYW1fcHJvdGVjdGlvbl9mb3JfcHJlbWl1bV91c2VycyI6MS4wLCJkaXNhYmxlX3B1YmxpY19waW5lX3NjcmlwdF9wdWJsaXNoX2xpbWl0cyI6MS4wLCJtYWtlX3RyYWRpbmdfcGFuZWxfY29udGV4dHVhbF90YWIiOjEuMCwicmVjb25uZWN0X2dhaW5fc2Vzc2lvbl9vbl9sc19lcnJvciI6MS4wLCJjaGVja291dC1mbG93LXBheW1lbnRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2t5YyI6MS4wLCJpbmRpYV9leGNsdWRlX2JyYWludHJlZV90YWIiOjEuMCwibWFjcm9fbWFwc19oaWRlX3Rvb2x0aXBfY2hhcnRfYnV0dG9uIjoxLjAsImZvcmNlX2t5Y19mb3Jfbm9ucHJvX3B1cmNoYXNlX2J5X2NvbW1lcmNpYWwiOjEuMCwic2hvd19zcGxpdF9wYW5lbF9mdWxsc2NyZWVuX2J1dHRvbiI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX21vdmVfYnV0dG9uX3RvX3RpdGxlIjoxLjAsIm9yZGVyX3ByZXNldHNfY3J1ZF9zdG9yYWdlIjoxLjAsIm9yZGVyX3ByZXNldHNfcmVtb3ZlX2Zyb21fdHZfc2V0dGluZ3MiOjEuMCwiY2hlY2tvdXQtZmxvdy10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LWdvb2dsZXBheSI6MS4wLCJjaGVja291dC1mbG93LWFwcGxlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5cGFsIjoxLjAsImZvcmJpZF9zaWdudXBfd2l0aF9mYWtlX2dtYWlsX2RvbWFpbnMiOjEuMCwic2hvd19pbXBvcnRfZnJvbV9wYXBlcl90cmFkaW5nX2J1dHRvbiI6MS4wLCJzeW1ib2xfc2VhcmNoX2dyb3VwaW5nIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwtdHJpYWwiOjEuMCwidm9pZF9ub3RfZm91bmRfY2tvX3BheW1lbnRfaW5fYXBwcm92ZWRfd2ViaG9vayI6MS4wLCJzaG93X3BhbmVsX2NvbGxhcHNlX2J1dHRvbiI6MS4wLCJkZWxheV9zdGF0dXNfb25fbGFzdF9iYXIiOjAuNX07CndpbmRvdy5pbml0RGF0YSA9IHt9OwoJCXdpbmRvdy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwgPSAiaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIjsKCndpbmRvdy5pbml0RGF0YSA9IHsid2lkZ2V0RGVmYXVsdHMiOnsiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRpc3BsYXlNb2RlIjoiYWRhcHRpdmUiLCJzaG93U3ltYm9sTG9nbyI6ZmFsc2UsInN5bWJvbHMiOlt7InByb05hbWUiOiJGT1JFWENPTTpTUFhVU0QiLCJ0aXRsZSI6IlMmUCA1MDAgSW5kZXgifSx7InByb05hbWUiOiJGT1JFWENPTTpOU1hVU0QiLCJ0aXRsZSI6IlVTIDEwMCBDYXNoIENGRCJ9LHsicHJvTmFtZSI6IkZYX0lEQzpFVVJVU0QiLCJ0aXRsZSI6IkVVUiB0byBVU0QifSx7InByb05hbWUiOiJCSVRTVEFNUDpCVENVU0QiLCJ0aXRsZSI6IkJpdGNvaW4ifSx7InByb05hbWUiOiJCSVRTVEFNUDpFVEhVU0QiLCJ0aXRsZSI6IkV0aGVyZXVtIn1dLCJjb2xvclRoZW1lIjoibGlnaHQiLCJsb2NhbGUiOiJlbiJ9fTsKCQl3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm8gPSB7Imxhbmd1YWdlIjoiZW4iLCJsYW5ndWFnZV9uYW1lIjoiRW5nbGlzaCIsImZsYWciOiJ1cyIsImdlb2lwX2NvZGUiOiJ1cyIsImlzbyI6ImVuIiwiaXNvXzYzOV8zIjoiZW5nIiwiZ2xvYmFsX25hbWUiOiJFbmdsaXNoIiwiaXNfb25seV9yZWNvbW1lbmRlZF90d19hdXRvcmVwb3N0Ijp0cnVlfTsKCQl3aW5kb3cuaW5pdERhdGEuc2V0dGluZ3MgPSB7J1MzX0xPR09fU0VSVklDRV9CQVNFX1VSTCc6ICdodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8nLCAnUzNfTkVXU19JTUFHRV9TRVJWSUNFX0JBU0VfVVJMJzogJ2h0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL25ld3MvJywgJ1dFQlBBQ0tfU1RBVElDX1BBVEgnOiAnaHR0cHM6Ly9zdGF0aWMudHJhZGluZ3ZpZXcuY29tL3N0YXRpYy9idW5kbGVzLycsICdUUkFESU5HX1VSTFMnOiB7J2ZyZWUnOiAnaHR0cHM6Ly9wYXBlcnRyYWRpbmctZnJlZS50cmFkaW5ndmlldy5jb20nLCAncHJvJzogJ2h0dHBzOi8vcGFwZXJ0cmFkaW5nLnRyYWRpbmd2aWV3LmNvbSd9LCAnQ09OVEVTVFNfVVJMJzogJy9wYXBlci10cmFkaW5nJywgJ0NSVURfU1RPUkFHRV9VUkwnOiAnaHR0cHM6Ly9jcnVkLXN0b3JhZ2UudHJhZGluZ3ZpZXcuY29tJ307PC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iVGZqNFJiMy9PaVpjS1JUN1JPN0h3UT09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgZT17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtjb25zdCB0PXdpbmRvdzt0LmluaXREYXRhPXQuaW5pdERhdGF8fHt9O2NvbnN0IGE9L1wrL2csbj0vPFwvP1tePl0rKD58JCkvZyxzPWU9PmRlY29kZVVSSUNvbXBvbmVudChlLnJlcGxhY2UoYSwiICIpKS5yZXBsYWNlKG4sIiIpLG89dC5sb2NhdGlvbi5zZWFyY2guc3Vic3RyaW5nKDEpLGM9LyhbXiY9XSspPT8oW14mXSopL2csaT17fTtsZXQgbCxyPWMuZXhlYyhvKTtmb3IoO251bGwhPT1yOylpW3MoclsxXSldPXMoclsyXSkscj1jLmV4ZWMobyk7dHJ5e2w9SlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQodC5sb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSkpLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWx8fChsPXt9KX1jYXRjaChlKXtsPXt9fXZhciBoO3QuaW5pdERhdGEucXVlcnlTZXR0aW5ncz1pLHQuaW5pdERhdGEuaGFzaFNldHRpbmdzPShoPWwsT2JqZWN0LmtleXMoaCkuZm9yRWFjaCgodD0+e2VbdF0mJmRlbGV0ZSBoW3RdfSkpLGgpfSkoKTsKCTwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9IlRmajRSYjMvT2laY0tSVDdSTzdId1E9PSI+d2luZG93LlNTX0hPU1QgPSAic3ltYm9sLXNlYXJjaC50cmFkaW5ndmlldy5jb20iOwoJCXdpbmRvdy5XSURHRVRfU0hFUklGRl9IT1NUID0gImh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbSI7CgkJd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQgPSBmYWxzZTsKCgoJCXdpbmRvdy5sb2NhbGVfZG9tYWlucyA9IHsiZW4iOiJ3d3cudHJhZGluZ3ZpZXcuY29tIiwiYXJfQUUiOiJhci50cmFkaW5ndmlldy5jb20iLCJiciI6ImJyLnRyYWRpbmd2aWV3LmNvbSIsImRlX0RFIjoiZGUudHJhZGluZ3ZpZXcuY29tIiwiZXMiOiJlcy50cmFkaW5ndmlldy5jb20iLCJmciI6ImZyLnRyYWRpbmd2aWV3LmNvbSIsImhlX0lMIjoiaWwudHJhZGluZ3ZpZXcuY29tIiwiaWQiOiJpZC50cmFkaW5ndmlldy5jb20iLCJpbiI6ImluLnRyYWRpbmd2aWV3LmNvbSIsIml0IjoiaXQudHJhZGluZ3ZpZXcuY29tIiwiamEiOiJqcC50cmFkaW5ndmlldy5jb20iLCJrciI6ImtyLnRyYWRpbmd2aWV3LmNvbSIsIm1zX01ZIjoibXkudHJhZGluZ3ZpZXcuY29tIiwicGwiOiJwbC50cmFkaW5ndmlldy5jb20iLCJydSI6InJ1LnRyYWRpbmd2aWV3LmNvbSIsInRoX1RIIjoidGgudHJhZGluZ3ZpZXcuY29tIiwidHIiOiJ0ci50cmFkaW5ndmlldy5jb20iLCJ2aV9WTiI6InZuLnRyYWRpbmd2aWV3LmNvbSIsInpoX0NOIjoiY24udHJhZGluZ3ZpZXcuY29tIiwiemhfVFciOiJ0dy50cmFkaW5ndmlldy5jb20iLCJjYV9FUyI6ImVzLnRyYWRpbmd2aWV3LmNvbSJ9OwoKCQkJd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cyA9IHdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMgfHwgW107CgkJCQl3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLnB1c2goJ3dpZGdldCcpOwoKCQl3aW5kb3cuVHJhZGluZ1ZpZXcgPSB3aW5kb3cuVHJhZGluZ1ZpZXcgfHwge307Cjwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9IlRmajRSYjMvT2laY0tSVDdSTzdId1E9PSI+dmFyIGVudmlyb25tZW50ID0gImJhdHRsZSI7CgkJd2luZG93LkJVSUxEX1RJTUUgPSAiMjAyNi0wNy0yNFQxMTo0MDowOCI7CgkJd2luZG93LldFQlNPQ0tFVF9IT1NUID0gIndpZGdldGRhdGEudHJhZGluZ3ZpZXcuY29tIjsKCQl3aW5kb3cuV0VCU09DS0VUX0hPU1RfRk9SX1JFQ09OTkVDVCA9ICJ3aWRnZXRkYXRhLWJhY2t1cC50cmFkaW5ndmlldy5jb20iOwoJCXdpbmRvdy51c2VyID0geyd1c2VybmFtZSc6ICdHdWVzdCcsICdmb2xsb3dpbmcnOiAnMCcsICdmb2xsb3dlcnMnOiAnMCcsICdpZ25vcmVfbGlzdCc6IHt9LCAnZG9fbm90X3RyYWNrJzogdHJ1ZX07PC9zY3JpcHQ+Cgk8c2NyaXB0IG5vbmNlPSJUZmo0UmIzL09pWmNLUlQ3Uk83SHdRPT0iPmxldCBwYXJhbXMgPSB7fTsKCQkJY29uc3QgaHR0cFJlZyA9IG5ldyBSZWdFeHAoJ15odHRwKHMpPzovLycpOwoKCQkJdHJ5IHsKCQkJCXBhcmFtcyA9IEpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KGxvY2F0aW9uLmhhc2guc3Vic3RyaW5nKDEpKSk7CgkJCX0gY2F0Y2ggKGUpIHsKCQkJCXBhcmFtcyA9IHt9OwoJCQl9CgoJCQl3aW5kb3cuV0VCU09DS0VUX1BBUkFNU19BTkFMWVRJQ1MgPSB7CgkJCQknd3NfYW5jZXN0b3Jfb3JpZ2luJzogd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyAmJiB3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aCA/IHdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnNbd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGggLSAxXS5yZXBsYWNlKGh0dHBSZWcsICcnKSA6IG51bGwsCgkJCQknd3NfcGFnZV91cmknOiBwYXJhbXNbJ3BhZ2UtdXJpJ10sCgkJCX07KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGUoZSx0PSExKXtjb25zdHtzZWFyY2hQYXJhbXM6bn09bmV3IFVSTChTdHJpbmcobG9jYXRpb24pKTtsZXQgcz0idHJ1ZSI9PT1uLmdldCgibW9iaWxlYXBwX25ldyIpLG89InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcCIpO2lmKCF0KXtjb25zdCBlPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZSsiPSIsbj1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKTtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoO2UrKyl7bGV0IHM9bltlXTtmb3IoOyIgIj09PXMuY2hhckF0KDApOylzPXMuc3Vic3RyaW5nKDEscy5sZW5ndGgpO2lmKDA9PT1zLmluZGV4T2YodCkpcmV0dXJuIHMuc3Vic3RyaW5nKHQubGVuZ3RoLHMubGVuZ3RoKX1yZXR1cm4gbnVsbH0oInR2X2FwcCIpfHwiIjtzfHw9WyJhbmRyb2lkIiwiYW5kcm9pZF9ucHMiXS5pbmNsdWRlcyhlKSxvfHw9ImlvcyI9PT1lfXJldHVybiEoIm5ldyIhPT1lJiYiYW55IiE9PWV8fCFzKXx8ISgibmV3Ij09PWV8fCFvKX1jb25zdCB0PSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixuPXQmJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LHM9KHQmJm4mJndpbmRvdyx0JiYobnx8bmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSx0JiZ3aW5kb3cuY2hyb21lJiZ3aW5kb3cuY2hyb21lLnJ1bnRpbWUsdCYmd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJmaXJlZm94IiksdCYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHQmJkJvb2xlYW4obmF2aWdhdG9yLnZlbmRvcikmJm5hdmlnYXRvci52ZW5kb3IuaW5kZXhPZigiQXBwbGUiKT4tMSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkNyaU9TIikmJm5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiRnhpT1MiKSx0JiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHQmJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSx0JiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksdCYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxvPXQmJi9CbGFja0JlcnJ5L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxpPXQmJi9pUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkscj10JiYvT3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksYz10JiYoIk1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjF8fC9pUGFkLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLGE9c3x8b3x8aXx8cjtjb25zdCBfPW5ldyBNYXA7ZnVuY3Rpb24gZCgpe2NvbnN0IGU9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLHQ9d2luZG93LmxvY2F0aW9uLmhvc3Qsbj1gJHt0fSR7ZX1gO3JldHVybiBfLmhhcyhuKXx8Xy5zZXQobixmdW5jdGlvbihlLHQpe2NvbnN0IG49WyJed2lkZ2V0LWRvY3MiXTtmb3IoY29uc3QgZSBvZiBuKWlmKG5ldyBSZWdFeHAoZSkudGVzdCh0KSlyZXR1cm4hMDtjb25zdCBzPVsiXndpZGdldGVtYmVkLz8kIiwiXmNtZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0c3RhdGljLz8kIiwiXihbMC05YS16QS1aLV0rKT8vP21lZGl1bXdpZGdldGVtYmVkLz8kIiwiXnR3aXR0ZXItY2hhcnQvPyQiLCJedGVsZWdyYW0vY2hhcnQvPyQiLCJeZW1iZWQvKFswLTlhLXpBLVpdezh9KS8/JCIsIl53aWRnZXRwb3B1cC8/JCIsIl5leHRlbnNpb24vPyQiLCJeaWRlYS1wb3B1cC8/JCIsIl5ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXm1hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeZXZlbnRzd2lkZ2V0ZW1iZWQvPyQiLCJedGlja2Vyc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4Y3Jvc3NyYXRlc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4aGVhdG1hcHdpZGdldGVtYmVkLz8kIiwiXm1hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnNjcmVlbmVyd2lkZ2V0Lz8kIiwiXmNyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJedGVjaG5pY2FsLWFuYWx5c2lzLXdpZGdldC1lbWJlZC8kIiwiXnNpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3NpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeZW1iZWQtd2lkZ2V0LyhbMC05YS16QS1aLV0rKS8oKFswLTlhLXpBLVotXSspLyk/JCIsIl53aWRnZXQtZG9jcy8oWzAtOWEtekEtWi1dKykvKFswLTlhLXpBLVotL10rKT8kIl0sbz1lLnJlcGxhY2UoL15cLy8sIiIpO2xldCBpO2ZvcihsZXQgZT1zLmxlbmd0aC0xO2U+PTA7ZS0tKWlmKGk9bmV3IFJlZ0V4cChzW2VdKSxpLnRlc3QobykpcmV0dXJuITA7cmV0dXJuITF9KGUsdCkpLF8uZ2V0KG4pPz8hMX1jb25zdCBoPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2NvbnN0IGw9e0FuZHJvaWQ6KCk9PnMsQmxhY2tCZXJyeTooKT0+byxpT1M6KCk9PmksT3BlcmE6KCk9PnIsaXNJUGFkOigpPT5jLGFueTooKT0+YX07aC5pc01vYmlsZT1sLGgub25XaWRnZXQ9ZDtjb25zdCB1PSgpPT57fSxnPSJ+bX4iO2NsYXNzIG17Y29uc3RydWN0b3IoZSx0PXt9KXt0aGlzLnNlc3Npb25pZD1udWxsLHRoaXMuY29ubmVjdGVkPSExLHRoaXMuX3RpbWVvdXQ9bnVsbCx0aGlzLl9iYXNlPWUsdGhpcy5fb3B0aW9ucz17dGltZW91dDp0LnRpbWVvdXR8fDJlNCxjb25uZWN0aW9uVHlwZTp0LmNvbm5lY3Rpb25UeXBlLGFwaUtleTp0LmFwaUtleX19Y29ubmVjdCgpe3RoaXMuX3NvY2tldD1uZXcgV2ViU29ja2V0KHRoaXMuX3ByZXBhcmVVcmwoKSksCnRoaXMuX3NvY2tldC5vbm1lc3NhZ2U9ZT0+e2lmKCJzdHJpbmciIT10eXBlb2YgZS5kYXRhKXRocm93IG5ldyBUeXBlRXJyb3IoYFRoZSBXZWJTb2NrZXQgbWVzc2FnZSBzaG91bGQgYmUgYSBzdHJpbmcuIFJlY2lldmVkICR7T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUuZGF0YSl9YCk7dGhpcy5fb25EYXRhKGUuZGF0YSl9LHRoaXMuX3NvY2tldC5vbmNsb3NlPXRoaXMuX29uQ2xvc2UuYmluZCh0aGlzKSx0aGlzLl9zb2NrZXQub25lcnJvcj10aGlzLl9vbkVycm9yLmJpbmQodGhpcyl9c2VuZChlKXt0aGlzLl9zb2NrZXQmJnRoaXMuX3NvY2tldC5zZW5kKHRoaXMuX2VuY29kZShlKSl9ZGlzY29ubmVjdCgpe3RoaXMuX2NsZWFySWRsZVRpbWVvdXQoKSx0aGlzLl9zb2NrZXQmJih0aGlzLl9zb2NrZXQub25tZXNzYWdlPXUsdGhpcy5fc29ja2V0Lm9uY2xvc2U9dSx0aGlzLl9zb2NrZXQub25lcnJvcj11LHRoaXMuX3NvY2tldC5jbG9zZSgpKX1fY2xlYXJJZGxlVGltZW91dCgpe251bGwhPT10aGlzLl90aW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX3RpbWVvdXQ9bnVsbCl9X2VuY29kZShlKXtsZXQgdCxuPSIiO2NvbnN0IHM9QXJyYXkuaXNBcnJheShlKT9lOltlXSxvPXMubGVuZ3RoO2ZvcihsZXQgZT0wO2U8bztlKyspdD1udWxsPT09c1tlXXx8dm9pZCAwPT09c1tlXT8iIjptLl9zdHJpbmdpZnkoc1tlXSksbis9Zyt0Lmxlbmd0aCtnK3Q7cmV0dXJuIG59X2RlY29kZShlKXtjb25zdCB0PVtdO2xldCBuLHM7ZG97aWYoZS5zdWJzdHJpbmcoMCwzKSE9PWcpcmV0dXJuIHQ7bj0iIixzPSIiO2NvbnN0IG89KGU9ZS5zdWJzdHJpbmcoMykpLmxlbmd0aDtmb3IobGV0IHQ9MDt0PG87dCsrKXtpZihzPU51bWJlcihlLnN1YnN0cmluZyh0LHQrMSkpLE51bWJlcihlLnN1YnN0cmluZyh0LHQrMSkpIT09cyl7ZT1lLnN1YnN0cmluZyhuLmxlbmd0aCszKSxuPU51bWJlcihuKTticmVha31uKz1zfXQucHVzaChlLnN1YnN0cmluZygwLG4pKSxlPWUuc3Vic3RyaW5nKG4pfXdoaWxlKCIiIT09ZSk7cmV0dXJuIHR9X29uRGF0YShlKXt0aGlzLl9zZXRUaW1lb3V0KCk7Y29uc3QgdD10aGlzLl9kZWNvZGUoZSksbj10Lmxlbmd0aDtmb3IobGV0IGU9MDtlPG47ZSsrKXRoaXMuX29uTWVzc2FnZSh0W2VdKX1fc2V0VGltZW91dCgpe3RoaXMuX2NsZWFySWRsZVRpbWVvdXQoKSx0aGlzLl90aW1lb3V0PXNldFRpbWVvdXQodGhpcy5fb25UaW1lb3V0LmJpbmQodGhpcyksdGhpcy5fb3B0aW9ucy50aW1lb3V0KX1fb25UaW1lb3V0KCl7dGhpcy5kaXNjb25uZWN0KCksdGhpcy5fb25EaXNjb25uZWN0KHtjb2RlOjRlMyxyZWFzb246InNvY2tldC5pbyB0aW1lb3V0Iix3YXNDbGVhbjohMX0pfV9vbk1lc3NhZ2UoZSl7dGhpcy5zZXNzaW9uaWQ/dGhpcy5fY2hlY2tJZkhlYXJ0YmVhdChlKT90aGlzLl9vbkhlYXJ0YmVhdChlLnNsaWNlKDMpKTp0aGlzLl9jaGVja0lmSnNvbihlKT90aGlzLl9iYXNlLm9uTWVzc2FnZShKU09OLnBhcnNlKGUuc2xpY2UoMykpKTp0aGlzLl9iYXNlLm9uTWVzc2FnZShlKToodGhpcy5zZXNzaW9uaWQ9ZSx0aGlzLl9vbkNvbm5lY3QoKSl9X2NoZWNrSWZIZWFydGJlYXQoZSl7cmV0dXJuIHRoaXMuX2NoZWNrTWVzc2FnZVR5cGUoZSwiaCIpfV9jaGVja0lmSnNvbihlKXtyZXR1cm4gdGhpcy5fY2hlY2tNZXNzYWdlVHlwZShlLCJqIil9X2NoZWNrTWVzc2FnZVR5cGUoZSx0KXtyZXR1cm4gZS5zdWJzdHJpbmcoMCwzKT09PSJ+Iit0KyJ+In1fb25IZWFydGJlYXQoZSl7dGhpcy5zZW5kKCJ+aH4iK2UpfV9vbkNvbm5lY3QoKXt0aGlzLmNvbm5lY3RlZD0hMCx0aGlzLl9iYXNlLm9uQ29ubmVjdCgpfV9vbkRpc2Nvbm5lY3QoZSl7dGhpcy5fY2xlYXIoKSx0aGlzLl9iYXNlLm9uRGlzY29ubmVjdChlKSx0aGlzLnNlc3Npb25pZD1udWxsfV9jbGVhcigpe3RoaXMuY29ubmVjdGVkPSExfV9wcmVwYXJlVXJsKCl7Y29uc3QgdD1rKHRoaXMuX2Jhc2UuaG9zdCk7aWYodC5wYXRobmFtZSs9InNvY2tldC5pby93ZWJzb2NrZXQiLHQucHJvdG9jb2w9IndzczoiLHQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiZnJvbSIsd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnNsaWNlKDEsNTApKSx0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImRhdGUiLHdpbmRvdy5CVUlMRF9USU1FfHwiIiksZSgiYW55IikmJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiY2xpZW50IiwibW9iaWxlIiksdGhpcy5fb3B0aW9ucy5jb25uZWN0aW9uVHlwZSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJ0eXBlIix0aGlzLl9vcHRpb25zLmNvbm5lY3Rpb25UeXBlKSx3aW5kb3cuV0VCU09DS0VUX1BBUkFNU19BTkFMWVRJQ1Mpe2NvbnN0e3dzX3BhZ2VfdXJpOmUsd3NfYW5jZXN0b3Jfb3JpZ2luOm59PXdpbmRvdy5XRUJTT0NLRVRfUEFSQU1TX0FOQUxZVElDUztlJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoInBhZ2UtdXJpIixlKSxuJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFuY2VzdG9yLW9yaWdpbiIsbil9Y29uc3Qgbj13aW5kb3cubG9jYXRpb24uc2VhcmNoLmluY2x1ZGVzKCJ3aWRnZXRfdG9rZW4iKXx8d2luZG93LmxvY2F0aW9uLmhhc2guaW5jbHVkZXMoIndpZGdldF90b2tlbiIpO3JldHVybiBkKCl8fG58fHQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiYXV0aCIsInNlc3Npb25pZCIpLHZvaWQgMCE9PXRoaXMuX29wdGlvbnMuYXBpS2V5JiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFwaV9rZXkiLHRoaXMuX29wdGlvbnMuYXBpS2V5KSx0LmhyZWZ9X29uQ2xvc2UoZSl7dGhpcy5fY2xlYXJJZGxlVGltZW91dCgpLHRoaXMuX29uRGlzY29ubmVjdChlKX1fb25FcnJvcihlKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fY2xlYXIoKSx0aGlzLl9iYXNlLmVtaXQoImVycm9yIixbZV0pLHRoaXMuc2Vzc2lvbmlkPW51bGx9c3RhdGljIF9zdHJpbmdpZnkoZSl7cmV0dXJuIltvYmplY3QgT2JqZWN0XSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk/In5qfiIrSlNPTi5zdHJpbmdpZnkoZSk6U3RyaW5nKGUpfX1jbGFzcyB3e2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ob3N0PWUsCnRoaXMuX2Nvbm5lY3Rpbmc9ITEsdGhpcy5fZXZlbnRzPXt9LHRoaXMudHJhbnNwb3J0PXRoaXMuX2dldFRyYW5zcG9ydCh0KX1pc0Nvbm5lY3RlZCgpe3JldHVybiEhdGhpcy50cmFuc3BvcnQmJnRoaXMudHJhbnNwb3J0LmNvbm5lY3RlZH1pc0Nvbm5lY3RpbmcoKXtyZXR1cm4gdGhpcy5fY29ubmVjdGluZ31jb25uZWN0KCl7dGhpcy5pc0Nvbm5lY3RlZCgpfHwodGhpcy5fY29ubmVjdGluZyYmdGhpcy5kaXNjb25uZWN0KCksdGhpcy5fY29ubmVjdGluZz0hMCx0aGlzLnRyYW5zcG9ydC5jb25uZWN0KCkpfXNlbmQoZSl7dGhpcy50cmFuc3BvcnQmJnRoaXMudHJhbnNwb3J0LmNvbm5lY3RlZCYmdGhpcy50cmFuc3BvcnQuc2VuZChlKX1kaXNjb25uZWN0KCl7dGhpcy50cmFuc3BvcnQmJnRoaXMudHJhbnNwb3J0LmRpc2Nvbm5lY3QoKX1vbihlLHQpe2UgaW4gdGhpcy5fZXZlbnRzfHwodGhpcy5fZXZlbnRzW2VdPVtdKSx0aGlzLl9ldmVudHNbZV0ucHVzaCh0KX1vZmZBbGwoKXt0aGlzLl9ldmVudHM9e319b25NZXNzYWdlKGUpe3RoaXMuZW1pdCgibWVzc2FnZSIsW2VdKX1lbWl0KGUsdD1bXSl7aWYoZSBpbiB0aGlzLl9ldmVudHMpe2NvbnN0IG49dGhpcy5fZXZlbnRzW2VdLmNvbmNhdCgpLHM9bi5sZW5ndGg7Zm9yKGxldCBlPTA7ZTxzO2UrKyluW2VdLmFwcGx5KHRoaXMsdCl9fW9uQ29ubmVjdCgpe3RoaXMuY2xlYXIoKSx0aGlzLmVtaXQoImNvbm5lY3QiKX1vbkRpc2Nvbm5lY3QoZSl7dGhpcy5lbWl0KCJkaXNjb25uZWN0IixbZV0pfWNsZWFyKCl7dGhpcy5fY29ubmVjdGluZz0hMX1fZ2V0VHJhbnNwb3J0KGUpe3JldHVybiBuZXcgbSh0aGlzLGUpfX1mdW5jdGlvbiBrKGUpe2NvbnN0IHQ9LTEhPT1lLmluZGV4T2YoIi8iKT9uZXcgVVJMKGUpOm5ldyBVUkwoIndzczovLyIrZSk7aWYoIndzczoiIT09dC5wcm90b2NvbCYmImh0dHBzOiIhPT10LnByb3RvY29sKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB3ZWJzb2NrZXQgYmFzZSAiK2UpO3JldHVybiB0LnBhdGhuYW1lLmVuZHNXaXRoKCIvIil8fCh0LnBhdGhuYW1lKz0iLyIpLHQuc2VhcmNoPSIiLHQudXNlcm5hbWU9IiIsdC5wYXNzd29yZD0iIix0fXZhciBwLGI7IWZ1bmN0aW9uKGUpe2VbZS5Ob3JtYWw9MzAwXT0iTm9ybWFsIixlW2UuQWZ0ZXJDbG9zZUV2ZW50PTVlM109IkFmdGVyQ2xvc2VFdmVudCJ9KHB8fChwPXt9KSksZnVuY3Rpb24oZSl7ZVtlLkluZm89MF09IkluZm8iLGVbZS5Ob3JtYWw9MV09Ik5vcm1hbCIsZVtlLkRlYnVnPTJdPSJEZWJ1ZyIsZVtlLkVycm9yPTNdPSJFcnJvciJ9KGJ8fChiPXt9KSk7Y29uc3QgZj0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmTnVtYmVyKHdpbmRvdy5URUxFTUVUUllfV1NfRVJST1JfTE9HU19USFJFU0hPTEQpfHwwO3ZhciB5OyFmdW5jdGlvbihlKXtlW2UuUGluZ0ludGVydmFsPTFlNF09IlBpbmdJbnRlcnZhbCIsZVtlLk1heFBpbmdzQ291bnQ9MTBdPSJNYXhQaW5nc0NvdW50IixlW2UuTWF4UmVkaXJlY3RzPTIwXT0iTWF4UmVkaXJlY3RzIixlW2UuTWF4UmVjb25uZWN0cz0yMF09Ik1heFJlY29ubmVjdHMifSh5fHwoeT17fSkpO2NsYXNzIFR7Y29uc3RydWN0b3IoZSx0PXt9KXt0aGlzLl9xdWV1ZVN0YWNrPVtdLHRoaXMuX2xvZ3NRdWV1ZT1bXSx0aGlzLl90ZWxlbWV0cnlPYmplY3RzUXVldWU9W10sdGhpcy5fcmVjb25uZWN0Q291bnQ9MCx0aGlzLl9yZWRpcmVjdENvdW50PTAsdGhpcy5fZXJyb3JzQ291bnQ9MCx0aGlzLl9lcnJvcnNJbmZvU2VudD0hMSx0aGlzLl9jb25uZWN0aW9uU3RhcnQ9bnVsbCx0aGlzLl9jb25uZWN0aW9uRXN0YWJsaXNoZWQ9bnVsbCx0aGlzLl9yZWNvbm5lY3RUaW1lb3V0PW51bGwsdGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW49bnVsbCx0aGlzLl9pc0Nvbm5lY3Rpb25Gb3JiaWRkZW49ITEsdGhpcy5faW5pdGlhbEhvc3Q9dC5pbml0aWFsSG9zdHx8bnVsbCx0aGlzLl9zdWdnZXN0ZWRIb3N0PWUsdGhpcy5fcHJvSG9zdD10LnByb0hvc3QsdGhpcy5fcmVjb25uZWN0SG9zdD10LnJlY29ubmVjdEhvc3QsdGhpcy5fbm9SZWNvbm5lY3RBZnRlclRpbWVvdXQ9ITA9PT10Lm5vUmVjb25uZWN0QWZ0ZXJUaW1lb3V0LHRoaXMuX2RhdGFSZXF1ZXN0VGltZW91dD10LmRhdGFSZXF1ZXN0VGltZW91dCx0aGlzLl9jb25uZWN0aW9uVHlwZT10LmNvbm5lY3Rpb25UeXBlLHRoaXMuX2FwaUtleT10LmFwaUtleSx0aGlzLl9kb0Nvbm5lY3QoKSx0LnBpbmdSZXF1aXJlZCYmLTE9PT13aW5kb3cubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIm5vcGluZyIpJiZ0aGlzLl9zdGFydFBpbmcoKX1jb25uZWN0KCl7dGhpcy5fdHJ5Q29ubmVjdCgpfXJlc2V0Q291bnRlcnMoKXt0aGlzLl9yZWNvbm5lY3RDb3VudD0wLHRoaXMuX3JlZGlyZWN0Q291bnQ9MH1zZXRMb2dnZXIoZSx0KXt0aGlzLl9sb2dnZXI9ZSx0aGlzLl9nZXRMb2dIaXN0b3J5PXQsdGhpcy5fZmx1c2hMb2dzKCl9c2V0VGVsZW1ldHJ5KGUpe3RoaXMuX3RlbGVtZXRyeT1lLHRoaXMuX3RlbGVtZXRyeS5yZXBvcnRTZW50LnN1YnNjcmliZSh0aGlzLHRoaXMuX29uVGVsZW1ldHJ5U2VudCksdGhpcy5fZmx1c2hUZWxlbWV0cnkoKX1vblJlY29ubmVjdChlKXt0aGlzLl9vblJlY29ubmVjdD1lfWlzQ29ubmVjdGVkKCl7cmV0dXJuISF0aGlzLl9zb2NrZXQmJnRoaXMuX3NvY2tldC5pc0Nvbm5lY3RlZCgpfWlzQ29ubmVjdGluZygpe3JldHVybiEhdGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQuaXNDb25uZWN0aW5nKCl9b24oZSx0KXtyZXR1cm4hIXRoaXMuX3NvY2tldCYmKCJjb25uZWN0Ij09PWUmJnRoaXMuX3NvY2tldC5pc0Nvbm5lY3RlZCgpP3QoKToiZGlzY29ubmVjdCI9PT1lP3RoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3MucHVzaCh0KTp0aGlzLl9zb2NrZXQub24oZSx0KSwhMCl9Z2V0U2Vzc2lvbklkKCl7cmV0dXJuIHRoaXMuX3NvY2tldCYmdGhpcy5fc29ja2V0LnRyYW5zcG9ydD90aGlzLl9zb2NrZXQudHJhbnNwb3J0LnNlc3Npb25pZDpudWxsfXNlbmQoZSl7cmV0dXJuIHRoaXMuaXNDb25uZWN0ZWQoKT8odGhpcy5fc29ja2V0LnNlbmQoZSksITApOih0aGlzLl9xdWV1ZU1lc3NhZ2UoZSksITEpfQpnZXRDb25uZWN0aW9uRXN0YWJsaXNoZWQoKXtyZXR1cm4gdGhpcy5fY29ubmVjdGlvbkVzdGFibGlzaGVkfWdldEhvc3QoKXtjb25zdCBlPXRoaXMuX3RyeUdldFByb0hvc3QoKTtyZXR1cm4gbnVsbCE9PWU/ZTp0aGlzLl9yZWNvbm5lY3RIb3N0JiZ0aGlzLl9yZWNvbm5lY3RDb3VudD4zP3RoaXMuX3JlY29ubmVjdEhvc3Q6dGhpcy5fc3VnZ2VzdGVkSG9zdH1nZXRSZWNvbm5lY3RDb3VudCgpe3JldHVybiB0aGlzLl9yZWNvbm5lY3RDb3VudH1nZXRSZWRpcmVjdENvdW50KCl7cmV0dXJuIHRoaXMuX3JlZGlyZWN0Q291bnR9Z2V0Q29ubmVjdGlvblN0YXJ0KCl7cmV0dXJuIHRoaXMuX2Nvbm5lY3Rpb25TdGFydH1kaXNjb25uZWN0KCl7dGhpcy5fY2xlYXJSZWNvbm5lY3RUaW1lb3V0KCksKHRoaXMuaXNDb25uZWN0ZWQoKXx8dGhpcy5pc0Nvbm5lY3RpbmcoKSkmJih0aGlzLl9wcm9wYWdhdGVEaXNjb25uZWN0KCksdGhpcy5fZGlzY29ubmVjdENhbGxiYWNrcz1bXSx0aGlzLl9jbG9zZVNvY2tldCgpKX1mb3JiaWRDb25uZWN0aW9uKCl7dGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuPSEwLHRoaXMuZGlzY29ubmVjdCgpfWFsbG93Q29ubmVjdGlvbigpe3RoaXMuX2lzQ29ubmVjdGlvbkZvcmJpZGRlbj0hMSx0aGlzLmNvbm5lY3QoKX1pc01heFJlZGlyZWN0cygpe3JldHVybiB0aGlzLl9yZWRpcmVjdENvdW50Pj0yMH1pc01heFJlY29ubmVjdHMoKXtyZXR1cm4gdGhpcy5fcmVjb25uZWN0Q291bnQ+PTIwfWdldFBpbmdJbmZvKCl7cmV0dXJuIHRoaXMuX3BpbmdJbmZvfHxudWxsfWdldEFwaUtleSgpe3JldHVybiB0aGlzLl9hcGlLZXl9X3RyeUdldFByb0hvc3QoKXtyZXR1cm4gd2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcub25DaGFydFBhZ2UmJiJiYXR0bGUiPT09d2luZG93LmVudmlyb25tZW50JiYhdGhpcy5fcmVkaXJlY3RDb3VudCYmLTE9PT13aW5kb3cubG9jYXRpb24uaHJlZi5pbmRleE9mKCJ3c19ob3N0Iik/dGhpcy5faW5pdGlhbEhvc3Q/dGhpcy5faW5pdGlhbEhvc3Q6dm9pZCAwIT09d2luZG93LnVzZXImJndpbmRvdy51c2VyLnByb19wbGFuP3RoaXMuX3Byb0hvc3R8fHRoaXMuX3N1Z2dlc3RlZEhvc3Q6bnVsbDpudWxsfV9xdWV1ZU1lc3NhZ2UoZSl7MD09PXRoaXMuX3F1ZXVlU3RhY2subGVuZ3RoJiZ0aGlzLl9sb2dNZXNzYWdlKDAsIlNvY2tldCBpcyBub3QgY29ubmVjdGVkLiBRdWV1ZWQgYSBtZXNzYWdlIiksdGhpcy5fcXVldWVTdGFjay5wdXNoKGUpfV9wcm9jZXNzTWVzc2FnZVF1ZXVlKCl7MCE9PXRoaXMuX3F1ZXVlU3RhY2subGVuZ3RoJiYodGhpcy5fbG9nTWVzc2FnZSgwLCJQcm9jZXNzaW5nIHF1ZXVlZCBtZXNzYWdlcyIpLHRoaXMuX3F1ZXVlU3RhY2suZm9yRWFjaCh0aGlzLnNlbmQuYmluZCh0aGlzKSksdGhpcy5fbG9nTWVzc2FnZSgwLCJQcm9jZXNzZWQgIit0aGlzLl9xdWV1ZVN0YWNrLmxlbmd0aCsiIG1lc3NhZ2VzIiksdGhpcy5fcXVldWVTdGFjaz1bXSl9X29uRGlzY29ubmVjdChlKXt0aGlzLl9ub1JlY29ubmVjdEFmdGVyVGltZW91dHx8bnVsbCE9PXRoaXMuX3JlY29ubmVjdFRpbWVvdXR8fCh0aGlzLl9yZWNvbm5lY3RUaW1lb3V0PXNldFRpbWVvdXQodGhpcy5fdHJ5UmVjb25uZWN0LmJpbmQodGhpcyksNWUzKSksdGhpcy5fY2xlYXJPbmxpbmVDYW5jZWxsYXRpb25Ub2tlbigpO2xldCB0PSJkaXNjb25uZWN0IHNlc3Npb246Iit0aGlzLmdldFNlc3Npb25JZCgpO2UmJih0Kz0iLCBjb2RlOiIrZS5jb2RlKyIsIHJlYXNvbjoiK2UucmVhc29uLDEwMDU9PT1lLmNvZGUmJnRoaXMuX3NlbmRUZWxlbWV0cnkoIndlYnNvY2tldF9jb2RlXzEwMDUiKSksdGhpcy5fbG9nTWVzc2FnZSgwLHQpLHRoaXMuX3Byb3BhZ2F0ZURpc2Nvbm5lY3QoZSksdGhpcy5fY2xvc2VTb2NrZXQoKSx0aGlzLl9xdWV1ZVN0YWNrPVtdfV9jbG9zZVNvY2tldCgpe251bGwhPT10aGlzLl9zb2NrZXQmJih0aGlzLl9zb2NrZXQub2ZmQWxsKCksdGhpcy5fc29ja2V0LmRpc2Nvbm5lY3QoKSx0aGlzLl9zb2NrZXQ9bnVsbCl9X2xvZ01lc3NhZ2UoZSx0KXtjb25zdCBuPXttZXRob2Q6ZSxtZXNzYWdlOnR9O3RoaXMuX2xvZ2dlcj90aGlzLl9mbHVzaExvZ01lc3NhZ2Uobik6KG4ubWVzc2FnZT1gWyR7KG5ldyBEYXRlKS50b0lTT1N0cmluZygpfV0gJHtuLm1lc3NhZ2V9YCx0aGlzLl9sb2dzUXVldWUucHVzaChuKSl9X2ZsdXNoTG9nTWVzc2FnZShlKXtzd2l0Y2goZS5tZXRob2Qpe2Nhc2UgMjp0aGlzLl9sb2dnZXIubG9nRGVidWcoZS5tZXNzYWdlKTticmVhaztjYXNlIDM6dGhpcy5fbG9nZ2VyLmxvZ0Vycm9yKGUubWVzc2FnZSk7YnJlYWs7Y2FzZSAwOnRoaXMuX2xvZ2dlci5sb2dJbmZvKGUubWVzc2FnZSk7YnJlYWs7Y2FzZSAxOnRoaXMuX2xvZ2dlci5sb2dOb3JtYWwoZS5tZXNzYWdlKX19X2ZsdXNoTG9ncygpe3RoaXMuX2ZsdXNoTG9nTWVzc2FnZSh7bWV0aG9kOjEsbWVzc2FnZToibWVzc2FnZXMgZnJvbSBxdWV1ZS4gU3RhcnQuIn0pLHRoaXMuX2xvZ3NRdWV1ZS5mb3JFYWNoKChlPT57dGhpcy5fZmx1c2hMb2dNZXNzYWdlKGUpfSkpLHRoaXMuX2ZsdXNoTG9nTWVzc2FnZSh7bWV0aG9kOjEsbWVzc2FnZToibWVzc2FnZXMgZnJvbSBxdWV1ZS4gRW5kLiJ9KSx0aGlzLl9sb2dzUXVldWU9W119X3NlbmRUZWxlbWV0cnkoZSx0KXtjb25zdCBuPXtldmVudDplLHBhcmFtczp0fTt0aGlzLl90ZWxlbWV0cnk/dGhpcy5fZmx1c2hUZWxlbWV0cnlPYmplY3Qobik6dGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlLnB1c2gobil9X2ZsdXNoVGVsZW1ldHJ5T2JqZWN0KGUpe3RoaXMuX3RlbGVtZXRyeS5zZW5kQ2hhcnRSZXBvcnQoZS5ldmVudCxlLnBhcmFtcywhMSl9X2ZsdXNoVGVsZW1ldHJ5KCl7dGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlLmZvckVhY2goKGU9Pnt0aGlzLl9mbHVzaFRlbGVtZXRyeU9iamVjdChlKX0pKSx0aGlzLl90ZWxlbWV0cnlPYmplY3RzUXVldWU9W119X2RvQ29ubmVjdCgpewp0aGlzLl9zb2NrZXQmJih0aGlzLl9zb2NrZXQuaXNDb25uZWN0ZWQoKXx8dGhpcy5fc29ja2V0LmlzQ29ubmVjdGluZygpKXx8KHRoaXMuX2NsZWFyT25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKSx0aGlzLl9ob3N0PXRoaXMuZ2V0SG9zdCgpLHRoaXMuX3NvY2tldD1uZXcgdyh0aGlzLl9ob3N0LHt0aW1lb3V0OnRoaXMuX2RhdGFSZXF1ZXN0VGltZW91dCxjb25uZWN0aW9uVHlwZTp0aGlzLl9jb25uZWN0aW9uVHlwZSxhcGlLZXk6dGhpcy5fYXBpS2V5fSksdGhpcy5fbG9nTWVzc2FnZSgwLCJDb25uZWN0aW5nIHRvICIrdGhpcy5faG9zdCksdGhpcy5fYmluZEV2ZW50cygpLHRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3M9W10sdGhpcy5fY29ubmVjdGlvblN0YXJ0PXBlcmZvcm1hbmNlLm5vdygpLHRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZD1udWxsLHRoaXMuX3NvY2tldC5jb25uZWN0KCkscGVyZm9ybWFuY2UubWFyaygiU1dTQyIse2RldGFpbDoiU3RhcnQgV2ViU29ja2V0IGNvbm5lY3Rpb24ifSksdGhpcy5fc29ja2V0Lm9uKCJjb25uZWN0IiwoKCk9PntwZXJmb3JtYW5jZS5tYXJrKCJFV1NDIix7ZGV0YWlsOiJFbmQgV2ViU29ja2V0IGNvbm5lY3Rpb24ifSkscGVyZm9ybWFuY2UubWVhc3VyZSgiV2ViU29ja2V0IGNvbm5lY3Rpb24gZGVsYXkiLCJTV1NDIiwiRVdTQyIpfSkpKX1fcHJvcGFnYXRlRGlzY29ubmVjdChlKXtjb25zdCB0PXRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3MubGVuZ3RoO2ZvcihsZXQgbj0wO248dDtuKyspdGhpcy5fZGlzY29ubmVjdENhbGxiYWNrc1tuXShlfHx7fSl9X2JpbmRFdmVudHMoKXt0aGlzLl9zb2NrZXQmJih0aGlzLl9zb2NrZXQub24oImNvbm5lY3QiLCgoKT0+e2NvbnN0IGU9dGhpcy5nZXRTZXNzaW9uSWQoKTtpZigic3RyaW5nIj09dHlwZW9mIGUpe2NvbnN0IHQ9SlNPTi5wYXJzZShlKTtpZih0LnJlZGlyZWN0KXJldHVybiB0aGlzLl9yZWRpcmVjdENvdW50Kz0xLHRoaXMuX3N1Z2dlc3RlZEhvc3Q9dC5yZWRpcmVjdCx0aGlzLmlzTWF4UmVkaXJlY3RzKCkmJnRoaXMuX3NlbmRUZWxlbWV0cnkoInJlZGlyZWN0X2JhaWxvdXQiKSx2b2lkIHRoaXMuX3JlZGlyZWN0KCl9dGhpcy5fY29ubmVjdGlvbkVzdGFibGlzaGVkPXBlcmZvcm1hbmNlLm5vdygpLHRoaXMuX3Byb2Nlc3NNZXNzYWdlUXVldWUoKSx0aGlzLl9sb2dNZXNzYWdlKDAsImNvbm5lY3Qgc2Vzc2lvbjoiK2UpfSkpLHRoaXMuX3NvY2tldC5vbigiZGlzY29ubmVjdCIsdGhpcy5fb25EaXNjb25uZWN0LmJpbmQodGhpcykpLHRoaXMuX3NvY2tldC5vbigiY2xvc2UiLHRoaXMuX29uRGlzY29ubmVjdC5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQub24oImVycm9yIiwoZT0+e3RoaXMuX2xvZ01lc3NhZ2UoMCxuZXcgRGF0ZSsiIHNlc3Npb246Iit0aGlzLmdldFNlc3Npb25JZCgpKyIgd2Vic29ja2V0IGVycm9yOiIrSlNPTi5zdHJpbmdpZnkoZSkpLHRoaXMuX3NlbmRUZWxlbWV0cnkoIndlYnNvY2tldF9lcnJvciIpLHRoaXMuX2Vycm9yc0NvdW50KyssIXRoaXMuX2Vycm9yc0luZm9TZW50JiZ0aGlzLl9lcnJvcnNDb3VudD49ZiYmKHZvaWQgMCE9PXRoaXMuX2xhc3RDb25uZWN0Q2FsbFN0YWNrJiYodGhpcy5fc2VuZFRlbGVtZXRyeSgid2Vic29ja2V0X2Vycm9yX2Nvbm5lY3Rfc3RhY2siLHt0ZXh0OnRoaXMuX2xhc3RDb25uZWN0Q2FsbFN0YWNrfSksZGVsZXRlIHRoaXMuX2xhc3RDb25uZWN0Q2FsbFN0YWNrKSx2b2lkIDAhPT10aGlzLl9nZXRMb2dIaXN0b3J5JiZ0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfZXJyb3JfbG9nIix7dGV4dDp0aGlzLl9nZXRMb2dIaXN0b3J5KDUwKS5qb2luKCJcbiIpfSksdGhpcy5fZXJyb3JzSW5mb1NlbnQ9ITApfSkpKX1fcmVkaXJlY3QoKXt0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9yZWNvbm5lY3RXaGVuT25saW5lKCl9X3RyeVJlY29ubmVjdCgpe3RoaXMuX3RyeUNvbm5lY3QoKSYmKHRoaXMuX3JlY29ubmVjdENvdW50Kz0xKX1fdHJ5Q29ubmVjdCgpe3JldHVybiF0aGlzLl9pc0Nvbm5lY3Rpb25Gb3JiaWRkZW4mJih0aGlzLl9jbGVhclJlY29ubmVjdFRpbWVvdXQoKSx0aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFjaz1uZXcgRXJyb3IoYFdlYlNvY2tldCBjb25uZWN0IHN0YWNrLiBJcyBjb25uZWN0ZWQ6ICR7dGhpcy5pc0Nvbm5lY3RlZCgpfS5gKS5zdGFja3x8IiIsIXRoaXMuaXNDb25uZWN0ZWQoKSYmKHRoaXMuZGlzY29ubmVjdCgpLHRoaXMuX3JlY29ubmVjdFdoZW5PbmxpbmUoKSwhMCkpfV9jbGVhck9ubGluZUNhbmNlbGxhdGlvblRva2VuKCl7dGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW4mJih0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbigpLHRoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuPW51bGwpfV9jbGVhclJlY29ubmVjdFRpbWVvdXQoKXtudWxsIT09dGhpcy5fcmVjb25uZWN0VGltZW91dCYmKGNsZWFyVGltZW91dCh0aGlzLl9yZWNvbm5lY3RUaW1lb3V0KSx0aGlzLl9yZWNvbm5lY3RUaW1lb3V0PW51bGwpfV9yZWNvbm5lY3RXaGVuT25saW5lKCl7aWYobmF2aWdhdG9yLm9uTGluZSlyZXR1cm4gdGhpcy5fbG9nTWVzc2FnZSgwLCJOZXR3b3JrIHN0YXR1czogb25saW5lIC0gdHJ5aW5nIHRvIGNvbm5lY3QiKSx0aGlzLl9kb0Nvbm5lY3QoKSx2b2lkKHRoaXMuX29uUmVjb25uZWN0JiZ0aGlzLl9vblJlY29ubmVjdCgpKTt0aGlzLl9sb2dNZXNzYWdlKDAsIk5ldHdvcmsgc3RhdHVzOiBvZmZsaW5lIC0gd2FpdCB1bnRpbCBvbmxpbmUiKSx0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbj1mdW5jdGlvbihlKXtsZXQgdD1lO2NvbnN0IG49KCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25saW5lIixuKSx0JiZ0KCl9O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixuKSwoKT0+e3Q9bnVsbH19KCgoKT0+e3RoaXMuX2xvZ01lc3NhZ2UoMCwiTmV0d29yayBzdGF0dXMgY2hhbmdlZCB0byBvbmxpbmUgLSB0cnlpbmcgdG8gY29ubmVjdCIpLHRoaXMuX2RvQ29ubmVjdCgpLHRoaXMuX29uUmVjb25uZWN0JiZ0aGlzLl9vblJlY29ubmVjdCgpfSkpfQpfb25UZWxlbWV0cnlTZW50KGUpeyJ3ZWJzb2NrZXRfZXJyb3IiaW4gZSYmKHRoaXMuX2Vycm9yc0NvdW50PTAsdGhpcy5fZXJyb3JzSW5mb1NlbnQ9ITEpfV9zdGFydFBpbmcoKXtpZih0aGlzLl9waW5nSW50ZXJ2YWxJZClyZXR1cm47Y29uc3QgZT1rKHRoaXMuZ2V0SG9zdCgpKTtlLnBhdGhuYW1lKz0icGluZyIsZS5wcm90b2NvbD0iaHR0cHM6IjtsZXQgdD0wLG49MDtjb25zdCBzPWU9Pnt0aGlzLl9waW5nSW5mbz10aGlzLl9waW5nSW5mb3x8e21heDowLG1pbjoxLzAsYXZnOjB9O2NvbnN0IHM9KG5ldyBEYXRlKS5nZXRUaW1lKCktZTtzPnRoaXMuX3BpbmdJbmZvLm1heCYmKHRoaXMuX3BpbmdJbmZvLm1heD1zKSxzPHRoaXMuX3BpbmdJbmZvLm1pbiYmKHRoaXMuX3BpbmdJbmZvLm1pbj1zKSx0Kz1zLG4rKyx0aGlzLl9waW5nSW5mby5hdmc9dC9uLG4+PTEwJiZ0aGlzLl9waW5nSW50ZXJ2YWxJZCYmKGNsZWFySW50ZXJ2YWwodGhpcy5fcGluZ0ludGVydmFsSWQpLGRlbGV0ZSB0aGlzLl9waW5nSW50ZXJ2YWxJZCl9O3RoaXMuX3BpbmdJbnRlcnZhbElkPXNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9KG5ldyBEYXRlKS5nZXRUaW1lKCksbj1uZXcgWE1MSHR0cFJlcXVlc3Q7bi5vcGVuKCJHRVQiLGUsITApLG4uc2VuZCgpLG4ub25yZWFkeXN0YXRlY2hhbmdlPSgpPT57bi5yZWFkeVN0YXRlPT09WE1MSHR0cFJlcXVlc3QuRE9ORSYmMjAwPT09bi5zdGF0dXMmJnModCl9fSksMWU0KX19CmNvbnN0IEM9IndpZGdldF91c2VyX3Rva2VuLSIsdj1KU09OLnBhcnNlKCd7ImFkeCI6IndpZGdldF91c2VyX3Rva2VuLWFkeCIsImFkeEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHhEIiwiYWdlbmNpYWxibWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWdlbmNpYWxibWNvbWJyIiwiYWxqYXppcmFjYXBpdGFsRCI6IndpZGdldF91c2VyX3Rva2VuLWFsamF6aXJhY2FwaXRhbEQiLCJhbGphemlyYWNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLWFsamF6aXJhY2FwaXRhbFJUIiwiYWxyYWpoaWNhcGl0YWxjb21EIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWxyYWpoaWNhcGl0YWxjb21EIiwiYWxyYWpoaWNhcGl0YWxjb21SVCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tUlQiLCJhbWJpdG8iOiJ3aWRnZXRfdXNlcl90b2tlbi1hbWJpdG8iLCJhcmVuYXh0cm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1hcmVuYXh0cm8iLCJhcnRlY2hlY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tQXJ0ZWNoZUQiLCJhdGxjYXBpdGFsIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXRsY2FwaXRhbCIsImJhbmtpcm9zcnUiOiJ3aWRnZXRfdXNlcl90b2tlbi1iYW5raXJvc3J1IiwiYmJ2YWNoIjoid2lkZ2V0X3VzZXJfdG9rZW4tYmJ2YWNoIiwiYmVla3Nncm91cCI6IndpZGdldF91c2VyX3Rva2VuLWJlZWtzZ3JvdXAiLCJiZWx1Z2Fncm91cHJ1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmVsdWdhZ3JvdXBydSIsImJpdmFjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1iaXZhY29tIiwiYmx1ZWZpZWxkIjoid2lkZ2V0X3VzZXJfdG9rZW4tYmx1ZWZpZWxkIiwiYmx1ZWxpbmVmdXR1cmVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tYmx1ZWxpbmVmdXR1cmVzIiwiYm92ZXNwYSI6IndpZGdldF91c2VyX3Rva2VuLWJtZmJvdmVzcGFjb21iciIsImJ2YnJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYnZicm8iLCJieXRldHJhdmVsIjoid2lkZ2V0X3VzZXJfdG9rZW4tYnl0ZXRyYXZlbCIsImNib2VjYW5hZGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1jYm9lY2FuYWRhIiwiY2hhbXBpb25uYXRib3Vyc2UiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaGFtcGlvbm5hdGJvdXJzZSIsImNpbmNvZGlhcyI6IndpZGdldF91c2VyX3Rva2VuLWNpbmNvZGlhcyIsImNlb2NhRCI6IndpZGdldF91c2VyX3Rva2VuLWNlb2NhRCIsImNlb2NhUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYVJUIiwiY21jbWFya2V0cyI6IndpZGdldF91c2VyX3Rva2VuLWNtY21hcmtldHMiLCJjb3BlZXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jb3BlZXMiLCJjc2VsayI6IndpZGdldF91c2VyX3Rva2VuLWNzZWxrIiwiZGFpbHlmeCI6IndpZGdldF91c2VyX3Rva2VuLWRhaWx5ZngiLCJkZWVwc2VhcmNoIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVlcHNlYXJjaCIsImRlcmF5YWhjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1kZXJheWFoY29tIiwiZGZtYWVEIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGZtYWVEIiwiZGZtYWVSVCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlUlQiLCJkaW5hcnNhRCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FEIiwiZGluYXJzYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGluYXJzYVJUIiwiZG9sYXJob3kiOiJ3aWRnZXRfdXNlcl90b2tlbi1kb2xhcmhveSIsImVhc3ludmVzdGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWFzeW52ZXN0Y29tYnIiLCJlZGFpbHkiOiJ3aWRnZXRfdXNlcl90b2tlbi1lZGFpbHkiLCJlbGVzcGFub2xjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1lbGVzcGFub2xjb20iLCJlbG9icmVyb2VzIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxvYnJlcm9lcyIsImVsbmFjaW9uYWxEIjoid2lkZ2V0X3VzZXJfdG9rZW4tRWxOYWNpb25hbEQiLCJlbHBhaXNmaW5hbmNpZXJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwYWlzZmluYW5jaWVybyIsImVscGVyaW9kaWNvZGVsYWVuZXJnaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1lbHBlcmlvZGljb2RlbGFlbmVyZ2lhIiwiZXVxdWVyb2ludmVzdGlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXVxdWVyb2ludmVzdGlyY29tIiwiZXVyZXgiOiJ3aWRnZXRfdXNlcl90b2tlbi1ldXJleCIsImV1cm9maW5zIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyb2ZpbnMiLCJlcGUiOiJ3aWRnZXRfdXNlcl90b2tlbi1lcGUiLCJldXJvcGFwcmVzc2VzIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyb3BhcHJlc3NlcyIsImZpbmFuemFzRCI6IndpZGdldF91c2VyX3Rva2VuLUZpbmFuemFzRCIsImZvcmJlc2NvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tZm9yYmVzY29tYnIiLCJnZW5pYWxpbnZlc3RpbWVudG9zIjoid2lkZ2V0X3VzZXJfdG9rZW4tZ2VuaWFsaW52ZXN0aW1lbnRvcyIsImhlYWx0aGl0YWxpYSI6IndpZGdldF91c2VyX3Rva2VuLWhlYWx0aGl0YWxpYSIsImhlZ25hcm5vIjoid2lkZ2V0X3VzZXJfdG9rZW4taGVnbmFybm8iLCJoaXBvdGVjYXJpb2NvbWFyIjoid2lkZ2V0X3VzZXJfdG9rZW4taGlwb3RlY2FyaW9jb21hciIsImlnY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4taWdjb20iLCJpbnZlc3RlZ2F0ZWNvdWsiOiJ3aWRnZXRfdXNlcl90b2tlbi1pbnZlc3RlZ2F0ZWNvdWsiLCJpbnZlc3RvcGVkaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1pbnZlc3RvcGVkaWEiLCJpbnRlZ3JhbHlhdGlyaW0iOiJ3aWRnZXRfdXNlcl90b2tlbi1pbnRlZ3JhbHlhdGlyaW0iLCJpdnNncm91cCI6IndpZGdldF91c2VyX3Rva2VuLWl2c2dyb3VwIiwianNlY296YSI6IndpZGdldF91c2VyX3Rva2VuLWpzZWNvemEiLCJib2Vyc2VuemVpdHVuZyI6IndpZGdldF91c2VyX3Rva2VuLWJvZXJzZW56ZWl0dW5nIiwibGFpbmZvcm1hY2lvbmNvbSI6IndpZGdldF91c2VyX3Rva2VuLWxhaW5mb3JtYWNpb25jb20iLCJtYXJjb3BvbG9jb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1hcmNvcG9sb2NvbWJyIiwibWVyY2Fkb2ZpbmFuY2llcm9jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1tZXJjYWRvZmluYW5jaWVyb2NvbSIsIm1vZXgiOiJ3aWRnZXRfdXNlcl90b2tlbi1tb2V4IiwibW9uZXl0aW1lc2NvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uZXl0aW1lc2NvbWJyIiwibW9uaXRvcmRvbWVyY2Fkb0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1tb25pdG9yZG9tZXJjYWRvRCIsIm15bmV0Y29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbXluZXRjb20iLCJuZWdvY2lvcyI6IndpZGdldF91c2VyX3Rva2VuLW5lZ29jaW9zIiwiTkdYIjoid2lkZ2V0X3VzZXJfdG9rZW4tTkdYIiwiTm90aWNpYXNhZ3JpY29sYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1ub3RpY2lhc2Fncmljb2xhRCIsIm5vbW1vbWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ub21tb21hIiwibnNlY29rciI6IndpZGdldF91c2VyX3Rva2VuLW5zZWNva3IiLCJva2RpYXJpbyI6IndpZGdldF91c2VyX3Rva2VuLW9rZGlhcmlvIiwicGFuYWZyaWNhbnJlc291cmNlc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXBhbmFmcmljYW5yZXNvdXJjZXNjb20iLCJwc2UiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2UiLCJwb2RlcjM2MCI6IndpZGdldF91c2VyX3Rva2VuLXBvZGVyMzYwIiwicHNlRCI6IndpZGdldF91c2VyX3Rva2VuLXBzZUQiLCJyaXlhZGhjYXBpdGFsRCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxEIiwicml5YWRoY2FwaXRhbFJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tcml5YWRoY2FwaXRhbFJUIiwicWVjb21xYSI6IndpZGdldF91c2VyX3Rva2VuLXFlY29tcWEiLCJzYW1vbGV0Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc2Ftb2xldCIsInNlZWluZ21hY2hpbmVzY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc2VlaW5nbWFjaGluZXNjb20iLCJzZXVkaW5oZWlybyI6IndpZGdldF91c2VyX3Rva2VuLXNldWRpbmhlaXJvIiwic29mdHdhcmVhZyI6IndpZGdldF91c2VyX3Rva2VuLXNvZnR3YXJlYWciLCJzb2dlY2xhaXIiOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2dlY2xhaXIiLCJzZ2NvbXBhbnlpdCI6IndpZGdldF91c2VyX3Rva2VuLXNnY29tcGFueWl0Iiwic2hhcmVqdW5jdGlvbiI6IndpZGdldF91c2VyX3Rva2VuLXNoYXJlanVuY3Rpb24iLCJzbWFydGxhYi1jdXN0b20iOiJ3aWRnZXRfdXNlcl90b2tlbi1zbWFydGxhYiIsInNtYXJ0bGFiIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzcGFjZW1vbmV5Y29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1zcGFjZW1vbmV5Y29tYnIiLCJzdG9uZXh3ZGciOiJ3aWRnZXRfdXNlcl90b2tlbi1zdG9uZXjCoy0hd3d3LnN0b25leC5jb20iLCJzdG94aW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zdG94aW8iLCJzdG9uZXgiOiJ3aWRnZXRfdXNlcl90b2tlbi1zdG9uZXgiLCJ0b3JvaW52ZXN0aW1lbnRvc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXRvcm9pbnZlc3RpbWVudG9zY29tIiwidGhlY3NlY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tdGhlY3NlY29tIiwidHJhZGVyc2NsdWJicmFzaWwiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbCIsInRyYWRlcnNjbHViYnJhc2lsRCI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRlcnNjbHViYnJhc2lsRCIsInRyYWRpbmd2aWV3Ijoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGluZ3ZpZXciLCJ4dG9vbHMiOiJ3aWRnZXRfdXNlcl90b2tlbi14dG9vbHMiLCJ0d2l0dGVyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHdpdHRlciIsInZlbG9jaXR5Y29tcG9zaXRlc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXZlbG9jaXR5Y29tcG9zaXRlc2NvbSIsInZvY2VzYWFicmlsY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi12b2Nlc2FhYnJpbGNvbWJyIiwid2VhbHRoc2ltcGxlIjoid2lkZ2V0X3VzZXJfdG9rZW4td2VhbHRoc2ltcGxlwqMtIW15LndlYWx0aHNpbXBsZS5jb20iLCJ3b3JsZGNoZXNzY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4td29ybGRjaGVzc2NvbSIsInhDcnR5SmtzcCI6IndpZGdldF91c2VyX3Rva2VuLXhDcnR5SmtzcCIsInhwaWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4teHBpY29tYnIifScpW3dpbmRvdy5UcmFkaW5nVmlldyYmd2luZG93LlRyYWRpbmdWaWV3LndpZGdldEN1c3RvbWVyfHwiIl18fCIiLFM9di5zdGFydHNXaXRoKEMpP3Yuc3Vic3RyaW5nKDE4KToidHJhZGluZ3ZpZXciCjt3aW5kb3cuV1NCYWNrZW5kQ29ubmVjdGlvbj1uZXcgVCh3aW5kb3cuV0VCU09DS0VUX0hPU1Qse3BpbmdSZXF1aXJlZDp3aW5kb3cuV1NfSE9TVF9QSU5HX1JFUVVJUkVELHByb0hvc3Q6d2luZG93LldFQlNPQ0tFVF9QUk9fSE9TVCxyZWNvbm5lY3RIb3N0OndpbmRvdy5XRUJTT0NLRVRfSE9TVF9GT1JfUkVDT05ORUNULGluaXRpYWxIb3N0OndpbmRvdy5XRUJTT0NLRVRfSU5JVElBTF9IT1NULGNvbm5lY3Rpb25UeXBlOndpbmRvdy5XRUJTT0NLRVRfQ09OTkVDVElPTl9UWVBFLGFwaUtleTpTfSksd2luZG93LldTQmFja2VuZENvbm5lY3Rpb25DdG9yPVR9KSgpOwoJPC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHk+Cgk8c2NyaXB0IG5vbmNlPSJUZmo0UmIzL09pWmNLUlQ3Uk83SHdRPT0iPgoJCSgoKT0+eyJ1c2Ugc3RyaWN0Ijtjb25zdCB0PTEwMTk7dmFyIGUscyxvLGEsZDshZnVuY3Rpb24odCl7dC5BZGFwdGl2ZT0iYWRhcHRpdmUiLHQuUmVndWxhcj0icmVndWxhciIsdC5Db21wYWN0PSJjb21wYWN0In0oZXx8KGU9e30pKSxmdW5jdGlvbih0KXt0LkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIix0Lk1hcmtldD0ibWFya2V0Iix0LlN5bWJvbD0ic3ltYm9sIn0oc3x8KHM9e30pKSxmdW5jdGlvbih0KXt0LkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsdC5DdXJyZW5jaWVzPSJmb3JleCIsdC5TdG9ja3M9InN0b2NrIix0LkluZGljZXM9ImluZGV4Iix0LkZ1dHVyZXM9ImZ1dHVyZXMiLHQuQm9uZHM9ImNmZCJ9KG98fChvPXt9KSksZnVuY3Rpb24odCl7dC5IVE1MPSJodG1sIix0LlJlYWN0PSJyZWFjdCJ9KGF8fChhPXt9KSksZnVuY3Rpb24odCl7dC5UaGVtZUNsYXNzUHJlZml4PSJ0aGVtZS0ifShkfHwoZD17fSkpO2NvbnN0IGM9d2luZG93O2MuaW5pdERhdGE9Yy5pbml0RGF0YXx8e307bGV0IGk9Yy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoYy5pbml0RGF0YS53aWRnZXREZWZhdWx0cyYmKGk9ey4uLmMuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMsLi4uaX0pLHZvaWQgMCE9PWkpe2lmKHZvaWQgMCE9PWkuY29sb3JUaGVtZSYmZnVuY3Rpb24odCxlPXdpbmRvdyl7Y29uc3Qgcz0idGhlbWUtIit0LG89ZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCB0IG9mIEFycmF5LmZyb20obykpdC5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmdCE9PXMmJm8ucmVtb3ZlKHQpO28uYWRkKHMpLGUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9dH0oaS5jb2xvclRoZW1lKSwoaS5pc1RyYW5zcGFyZW50fHxpLnRyYW5zcGFyZW5jeSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy10cmFuc3BhcmVudCIpLHZvaWQgMCE9PWkuZGlzcGxheU1vZGUmJmZ1bmN0aW9uKHMsbyl7aWYobz09PWUuQWRhcHRpdmUpe2NvbnN0IGU9d2luZG93Lm1hdGNoTWVkaWEoYChtYXgtd2lkdGg6ICR7dH1weClgKSxvPSgpPT57cy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtcmVndWxhciIsIWUubWF0Y2hlcykscy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtY29tcGFjdCIsZS5tYXRjaGVzKX07bygpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixvKX1lbHNlIHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIiLG89PT1lLlJlZ3VsYXIpLHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLWNvbXBhY3QiLG89PT1lLkNvbXBhY3QpfShkb2N1bWVudC5ib2R5LGkuZGlzcGxheU1vZGUpLGkuYm9keUNsYXNzZXMpZm9yKGNvbnN0IHQgb2YgaS5ib2R5Q2xhc3Nlcylkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQodCk7aS5ib2R5X2NsYXNzJiZkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoaS5ib2R5X2NsYXNzKSxpLmJvZHlJZCYmKGRvY3VtZW50LmJvZHkuaWQ9aS5ib2R5SWQpfX0pKCk7Cgk8L3NjcmlwdD4KCgk8ZGl2IGlkPSJ3aWRnZXQtdGlja2VyLXRhcGUtY29udGFpbmVyIj48L2Rpdj4KCjxzY3JpcHQgbm9uY2U9IlRmajRSYjMvT2laY0tSVDdSTzdId1E9PSI+Cgl3aW5kb3cuaW5pdERhdGEgPSB3aW5kb3cuaW5pdERhdGEgfHwge307CgoJd2luZG93LmluaXREYXRhLnNub3dwbG93U2V0dGluZ3MgPSB7CgkJY29sbGVjdG9ySWQ6ICd0dl9jZicsCgkJdXJsOiAnc25vd3Bsb3ctcGl4ZWwudHJhZGluZ3ZpZXcuY29tJywKCQlwYXJhbXM6IHsKCQkJYXBwSWQ6ICd0cmFkaW5ndmlldycsCgkJCXBvc3RQYXRoOiAnL2NvbS50cmFkaW5ndmlldy90cmFjaycsCgkJfSwKCQllbmFibGVkOiB0cnVlLAoJfQo8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4="}},"time_used":48,"timings":{"blocked":-1,"dns":17,"connect":2,"send":0,"wait":2,"receive":0,"ssl":26},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.219Z","timestamp":1785154590219,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/65862.95764752c09f3f18f890.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-8593\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2f78f49e14667da09f233f971d8e6848\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":34195,"size_decoded":11853,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (13834)","md5":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-27T14:18:36.427118Z","times_seen":1638,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNjU4NjJdLHszNzcyMjYoZSx0LG8pe28uZCh0LHtvbldpZGdldDooKT0+c30pO2NvbnN0IHI9bmV3IE1hcDtmdW5jdGlvbiBzKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxvPWAke3R9JHtlfWA7cmV0dXJuIHIuaGFzKG8pfHxyLnNldChvLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG8paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IHI9WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxzPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IF87Zm9yKGxldCBlPXIubGVuZ3RoLTE7ZT49MDtlLS0paWYoXz1uZXcgUmVnRXhwKHJbZV0pLF8udGVzdChzKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksci5nZXQobyk/PyExfX0sMzAwMjg2KGUsdCxvKXsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbmV3IGNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fdGVzdD1lW3RdPXt9fXByb3ZpZGUoZSx0KXt0aGlzLl90ZXN0W2VdPXR9fSh3aW5kb3csInFhR2xvYmFscyIpfSw1ODc0MzYoZSx0LG8pe2Z1bmN0aW9uIHIoZSx0LG8scixzKXtsZXQgXz0iIjtpZihyPXI/IjsgcGF0aD0iK3I6IiIscz1zPyI7IGRvbWFpbj0iK3M6IiIsbyl7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbyo2MCo2MCoxZTMpLF89IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIF89IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrXytzK3J9ZnVuY3Rpb24gcyhlKXtjb25zdCB0PWUrIj0iLG89ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxvLmxlbmd0aDtlKyspe2xldCByPW9bZV07Zm9yKDsiICI9PT1yLmNoYXJBdCgwKTspcj1yLnN1YnN0cmluZygxLHIubGVuZ3RoKTtpZigwPT09ci5pbmRleE9mKHQpKXJldHVybiByLnN1YnN0cmluZyh0Lmxlbmd0aCxyLmxlbmd0aCl9cmV0dXJuIG51bGx9by5kKHQse2dldDooKT0+cyxzZXQ6KCk9PnJ9KX0sOTQ4MzgwKGUsdCxvKXtvLmQodCx7RGVsZWdhdGU6KCk9Pl99KTtjb25zdCByPSgwLG8oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uRGVsZWdhdGUiKTtmdW5jdGlvbiBzKGUpe3JldHVybiFlLnNpbmdsZVNob3R9Y2xhc3MgX3tjb25zdHJ1Y3Rvcigpe3RoaXMuZmlyZT10aGlzLl9maXJlSW1wbC5iaW5kKHRoaXMpLHRoaXMuX2xpc3RlbmVycz1bXX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX2xpc3RlbmVycy5wdXNoKHtvYmplY3Q6ZSxtZW1iZXI6dCxzaW5nbGVTaG90OiEhbyxza2lwOiExfSl9dW5zdWJzY3JpYmUoZSx0KXtmb3IobGV0IG89MDtvPHRoaXMuX2xpc3RlbmVycy5sZW5ndGg7KytvKXtjb25zdCByPXRoaXMuX2xpc3RlbmVyc1tvXTtpZihyLm9iamVjdD09PWUmJnIubWVtYmVyPT09dCl7ci5za2lwPSEwLHRoaXMuX2xpc3RlbmVycy5zcGxpY2UobywxKTticmVha319fXVuc3Vic2NyaWJlQWxsKGUpe2ZvcihsZXQgdD10aGlzLl9saXN0ZW5lcnMubGVuZ3RoLTE7dD49MDstLXQpe2NvbnN0IG89dGhpcy5fbGlzdGVuZXJzW3RdO28ub2JqZWN0PT09ZSYmKG8uc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKHQsMSkpfX1kZXN0cm95KCl7dGhpcy5fbGlzdGVuZXJzPVtdfV9maXJlSW1wbCguLi5lKXtjb25zdCB0PXRoaXMuX2xpc3RlbmVyczt0aGlzLl9saXN0ZW5lcnM9dGhpcy5fbGlzdGVuZXJzLmZpbHRlcihzKTtjb25zdCBvPXQubGVuZ3RoO2ZvcihsZXQgcz0wO3M8bzsrK3Mpe2NvbnN0IG89dFtzXTtpZighby5za2lwKXRyeXtvLm1lbWJlci5hcHBseShvLm9iamVjdHx8bnVsbCxlKX1jYXRjaChlKXtyLmxvZ0Vycm9yKGAke2UmJihlLnN0YWNrfHxlLm1lc3NhZ2UpfWApfX19fX0sNTM0NDQwKGUsdCxvKXtvLmQodCx7bnVtT2ZEZWNpbWFsUGxhY2VzOigpPT5ffSk7dmFyIHI9byg3MTI3NDUpLHM9by5uKHIpO2Z1bmN0aW9uIF8oZSl7cmV0dXJuKG5ldyhzKCkpKGUpLnRvRml4ZWQoKS5zcGxpdCgiLiIpWzFdfHwiIikubGVuZ3RofX0sMjMyMzY0KGUsdCxvKXtvLmQodCx7V2F0Y2hlZFZhbHVlOigpPT5ffSk7Y29uc3Qgcj0oMCwKbygyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiBzKGUpe3IubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3MgX3tjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihvLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgcj1vLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihvLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmciYmby5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO28uX3ZhbHVlPWU7Y29uc3QgXz1vLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgaT0wO2ZvcihsZXQgdD0wO3Q8Xy5sZW5ndGg7dCsrKXtfW3RdLm9uY2UmJihvLl9saXN0ZW5lcnMuc3BsaWNlKHQtaSwxKSxpKyspO3RyeXtfW3RdLmNiKGUpfWNhdGNoKGUpe3MoZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBvPSEhdCYmISF0Lm9uY2Uscj0hIXQmJiEhdC5jYWxsV2l0aExhc3QsXz10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKHImJl8uaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShfLl92YWx1ZSl9Y2F0Y2goZSl7cyhlKX1pZihvKXJldHVybn1fLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBvPXQuX2xpc3RlbmVycztmb3IobGV0IHI9by5sZW5ndGg7ci0tOylvW3JdLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG9bcl0uY2IhPT1lJiZudWxsIT09ZXx8by5zcGxpY2UociwxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxvKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbygpO2NvbnN0IHI9cz0+e3QocykmJihlLnVuc3Vic2NyaWJlKHIpLG8oKSl9O2Uuc3Vic2NyaWJlKHIse2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe3MoZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgaSh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBpIGV4dGVuZHMgX3tjb25zdHJ1Y3RvcihlLHQsbyl7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW99ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe3MoZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7cmV0dXJuIHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZXx8KHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZT17Li4uc3VwZXIucmVhZG9ubHkoKSxkZXN0cm95OigpPT50aGlzLmRlc3Ryb3koKSxyZWFkb25seSgpe3JldHVybiB0aGlzfX0pLHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZX1yZWxlYXNlKCl7dGhpcy5fd2Vha1JlZmVyZW5jZXx8c3VwZXIucmVsZWFzZSgpfX19LDU5ODkyMihlLHQsbyl7by5kKHQse2Zvcm1hdE51bWJlcjooKT0+aSxwYXJzZU51bWJlcjooKT0+bn0pO3ZhciByPW8oNzEyNzQ1KSxzPW8oNjYzMDQ2KSxfPW8oMTE1MjkzKTtmdW5jdGlvbiBpKGUsdCxvLHMsXyl7aWYoIU51bWJlci5pc0Zpbml0ZShlKSlyZXR1cm5gJHtlfWA7Y29uc3QgaT0tMT09PU1hdGguc2lnbihlKT8iLSI6IiI7ZT1NYXRoLmFicyhlKTtsZXQgYT12b2lkIDA9PT1vP2UudG9TdHJpbmcoKTplLnRvRml4ZWQobyk7aWYoYS5pbmNsdWRlcygiZSIpKXtpZighcylyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gO3tjb25zdCBvPW5ldyByLkJpZyhlKTtpZihhPW8ubHQoMSk/by50b0ZpeGVkKCk6by50b1N0cmluZygpLGEuaW5jbHVkZXMoImUiKSlyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gfX1jb25zdCBuPWEuc3BsaXQoIi4iKSxsPW5bMF07bGV0IGM9blsxXTtjb25zdCBkPWZ1bmN0aW9uKGUsdCl7bGV0IG89ZS5sZW5ndGg7Y29uc3Qgcj1bXTtmb3IoO28+MDspci51bnNoaWZ0KGUuc2xpY2UoTWF0aC5tYXgoby0zLDApLG8pKSxvLT0zO3JldHVybiByLmpvaW4odCl9KGwsdC5ncm91cGluZ1NlcGFyYXRvcikKO3JldHVybiB2b2lkIDAhPT1vJiYoYz0wPT09bz92b2lkIDA6ZS50b0ZpeGVkKG8pLnNsaWNlKC1vKSksdm9pZCAwIT09XyYmdm9pZCAwIT09YyYmKGM9ZnVuY3Rpb24oZSx0KXtsZXQgbz1lLmxlbmd0aC0xO2ZvcihsZXQgcj1vO3I+PXQmJiIwIj09PWVbcl07ci09MSlvLT0xO3JldHVybiBlLnNsaWNlKDAsbysxKX0oYyxfKSksYz9gJHtpfSR7ZH0ke3QuZGVjaW1hbFNpZ259JHtjfWA6YCR7aX0ke2R9YH1jb25zdCBhPSgwLHMuZGVmYXVsdCkoKGU9Pntjb25zdCB0PWUucmVwbGFjZSgvWy1bXF17fSgpKis/LixcXF4kfCNcc10vZywiXFwkJiIpO3JldHVybiBuZXcgUmVnRXhwKHQsImdtIil9KSk7ZnVuY3Rpb24gbihlLHQpe2lmKC9eKE5hTnxbK3wtXT9JbmZpbml0eSkkLy50ZXN0KGUpKXJldHVybiBwYXJzZUZsb2F0KGUpO2U9KDAsXy5zdHJpcExUUk1hcmtzKShlKTtjb25zdCBvPWEodC5ncm91cGluZ1NlcGFyYXRvcik7cmV0dXJuIG8mJihlPWUucmVwbGFjZShvLCIiKSksZT1lLnJlcGxhY2UodC5kZWNpbWFsU2lnbiwiLiIpLC9eKFwrfC0pP1xkKyhcLlxkK3xcLik/KGUoXCt8LSk/XGQrKT8kLy50ZXN0KGUpP3BhcnNlRmxvYXQoZSk6TmFOfX0sNTQ2NDg1KGUsdCxvKXtvLmQodCx7Z2V0TnVtYmVyRm9ybWF0OigpPT5kfSk7bGV0IHI9bnVsbDt2YXIgcz1vKDg1NjMyNCk7ZnVuY3Rpb24gXyhlLHQpe3JldHVybntncm91cGluZ1NlcGFyYXRvcjplLGRlY2ltYWxTaWduOnR9fWNvbnN0IGk9XygiLCIsIi4iKSxhPV8oIi4iLCIsIiksbj1fKCLigK8iLCIsIiksbD1fKCIiLCIuIiksYz1uZXcgTWFwKFtbImVuIixpXSxbInRoIixpXSxbImphIixpXSxbImtvIixpXSxbInpoIixpXSxbInpoX1RXIixpXSxbImFyIixpXSxbImhlX0lMIixpXSxbIm1zX01ZIixpXSxbInZpIixpXSxbImRlIixhXSxbImVzIixhXSxbIml0IixhXSxbInRyIixhXSxbInB0IixhXSxbImlkX0lEIixhXSxbImZyIixuXSxbInBsIixuXSxbInJ1IixuXV0pO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIGU/bDoodD1jLmdldCgoMCxzLmdldExhbmd1YWdlKSgpKXx8bCxyP3IodCk6dCk7dmFyIHR9fSw3NTU2MjcoZSx0LG8pe28uZCh0LHtQcmljZUZvcm1hdHRlcjooKT0+eX0pO3ZhciByPW8oNjAxODQxKTtmdW5jdGlvbiBzKGUsdCxvLHIpe2xldCBzPTA7aWYoZT4wJiZ0PjApe2xldCB0PWU7Zm9yKG8mJnImJih0Lz1yKTt0PjE7KXQvPTEwLHMrK31yZXR1cm4gc312YXIgXz1vKDcxMjc0NSksaT1vKDgyMjQzMSksYT1vKDU5ODkyMiksbj1vKDU0NjQ4NSksbD1vKDc4MzI1NCksYz1vKDEzODYzOCksZD1vKDExNTI5MyksdT1vKDUzNTMwKTtmdW5jdGlvbiBtKGUsdCxvKXtjb25zdCByPSgwLGMuZW5zdXJlTm90TnVsbCkoKDAsdS5nZXRNaW5UaWNrRGF0YSkoe3ByaWNlOm8sbWluVGljazpudWxsLHZhcmlhYmxlTWluVGlja0RhdGE6dCxzaG91bGRDaGVja0ZvckVxdWFsaXR5OiEwfSkpLHtwcmljZVNjYWxlOl8sbWluTW92ZTppLG1pbk1vdmUyOmF9PXI7cmV0dXJue3ByaWNlU2NhbGU6XyxtaW5Nb3ZlOmksZnJhY3Rpb25hbExlbmd0aDpzKF8saSxlLGEpfX1jbGFzcyBoe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlckVycm9ycz17Y3VzdG9tOmwudChudWxsLHZvaWQgMCxvKDYxNjE4KSksZnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oOTY4ODE1KSksc2Vjb25kRnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oODUwMjk4KSl9O2NvbnN0e3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6cyxpZ25vcmVNaW5Nb3ZlOl8sdmFyaWFibGVNaW5UaWNrOmksZnJhY3Rpb25hbExlbmd0aDphfT1lO3RoaXMuX3ByaWNlU2NhbGU9dCx0aGlzLl9taW5Nb3ZlPXIsdGhpcy5fbWluTW92ZTI9cyx0aGlzLl9pZ25vcmVNaW5Nb3ZlPV8sdGhpcy5fZnJhY3Rpb25hbExlbmd0aD1hLHRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGE9dm9pZCAwPT09aT92b2lkIDA6KDAsdS5tYWtlVmFyaWFibGVNaW5UaWNrRGF0YSkoe3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6c30saSl9Zm9ybWF0SW1wbChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHNpZ25OZWdhdGl2ZTpyPSEwLHRhaWxTaXplOnMsY3V0RnJhY3Rpb25hbEJ5UHJlY2lzaW9uOl89ITEsdXNlUnRsRm9ybWF0Omk9ITAsdmFyaWFibGVNaW5UaWNrRGF0YVByaWNlOmEsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om4sbm9FeHBvbmVudGlhbEZvcm06bCxyZW1vdmVBbGxFbmRpbmdaZXJvczpjfT10O2xldCB1PSIiO2U8MD91PSExPT09cj8iIjoi4oiSIjplJiYhMD09PW8mJih1PSIrIik7Y29uc3QgbT10aGlzLl9mb3JtYXRVbnNpZ25lZChNYXRoLmFicyhlKSx7dGFpbFNpemU6cyxjdXRGcmFjdGlvbmFsQnlQcmVjaXNpb246Xyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6YSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixub0V4cG9uZW50aWFsRm9ybTpsLHJlbW92ZUFsbEVuZGluZ1plcm9zOmN9KSxoPSIwIj09PW0/bTp1K207cmV0dXJuIGk/KDAsZC5mb3JjZUxUUlN0cikoaCk6aH1wYXJzZShlLHQpe3JldHVybiIrIj09PShlPShlPSgwLGQuc3RyaXBMVFJNYXJrcykoZSkpLnJlcGxhY2UoIuKIkiIsIi0iKSlbMF0mJihlPWUuc3Vic3RyaW5nKDEpKSx0aGlzLl9wYXJzZVVuc2lnbmVkKGUsdCl9X3JlbW92ZUVuZGluZ1plcm9zKGUsdCl7Zm9yKGxldCBvPTA7bzx0JiYiMCI9PT1lW2UubGVuZ3RoLTFdO28rKyllPWUuc3Vic3RyaW5nKDAsZS5sZW5ndGgtMSk7cmV0dXJuIGV9fWNsYXNzIGcgZXh0ZW5kcyBoe2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LG5vRXhwb25lbnRpYWxGb3JtOm99PWU7dGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0PXQsdGhpcy5fbm9FeHBvbmVudGlhbEZvcm09b31oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4gMTA9PT10aGlzLl9taW5Nb3ZlMn1fcGFyc2VVbnNpZ25lZChlLHQpe3JldHVybiB0aGlzLl9wYXJzZUFzRGVjaW1hbChlLHQpfV9mb3JtYXRVbnNpZ25lZChlLHQpewpjb25zdHt0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyPSExLHZhcmlhYmxlTWluVGlja0RhdGFQcmljZTpzLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YT0hMX09dCxuPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLGZyYWN0aW9uYWxMZW5ndGg6dGhpcy5fZnJhY3Rpb25hbExlbmd0aCx0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YX07cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGEmJihPYmplY3QuYXNzaWduKG4sbSghMSx0aGlzLl92YXJpYWJsZU1pblRpY2tEYXRhLHM/P24ucHJpY2UpKSx0aGlzLl9pZ25vcmVNaW5Nb3ZlJiYobi5taW5Nb3ZlPTEpKSx0aGlzLl9mb3JtYXRBc0RlY2ltYWwobil9X2Zvcm1hdEFzRGVjaW1hbChlKXtjb25zdHtwcmljZTp0LHByaWNlU2NhbGU6byxtaW5Nb3ZlOnIsZnJhY3Rpb25hbExlbmd0aDpzPTAsdGFpbFNpemU6bD0wLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpjLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpkPXRoaXMuX2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTp1PXRoaXMuX25vRXhwb25lbnRpYWxGb3JtLHJlbW92ZUFsbEVuZGluZ1plcm9zOm19PWUsaD0oMCxuLmdldE51bWJlckZvcm1hdCkoZCk7aWYodD49MWUyMSYmIXUpcmV0dXJuIHQudG9TdHJpbmcoKS5yZXBsYWNlKCIuIixoLmRlY2ltYWxTaWduKTtjb25zdCBnPU1hdGgucG93KDEwLGwpKm8vKGM/MTpyKSxwPTEvZztsZXQgYjtpZihnPjEpYj1NYXRoLmZsb29yKHQpO2Vsc2V7Y29uc3QgZT1NYXRoLnJvdW5kKHQvcCkqcDtiPTA9PT1NYXRoLnJvdW5kKCh0LWUpL3ApP2U6ZStwfWxldCB3PSIiO2lmKGc+MSl7bGV0IGU9Yz9uZXcgXy5CaWcodCkubXVsKGcpLnJvdW5kKHZvaWQgMCwwKS5taW51cyhuZXcgXy5CaWcoYikubXVsKGcpKS50b051bWJlcigpOnBhcnNlRmxvYXQoKE1hdGgucm91bmQodCpnKS1iKmcpLnRvRml4ZWQocykpO2U+PWcmJihlLT1nLGIrPTEpLGU9Yz9uZXcgXy5CaWcoZSkucm91bmQocywwKS50b051bWJlcigpOnBhcnNlRmxvYXQoZS50b0ZpeGVkKHMpKSpyO2NvbnN0IG89KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZSxzK2wpO2lmKCF1JiZ0PDEmJnM+PTEwJiZvLnN0YXJ0c1dpdGgoIjAwMDAiKSl7bGV0IGU9NDtmb3IobGV0IHQ9ZTt0PG8ubGVuZ3RoJiYiMCI9PT1vW3RdO3QrKyllKys7Y29uc3QgdD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLnNsaWNlKGUpLHMpO3JldHVybiIiPT09dD8iMCI6YDAke2guZGVjaW1hbFNpZ259JHt0fWUtJHtlfWB9Y29uc3QgYT10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLG0/by5sZW5ndGg6bCk7dz1hP2guZGVjaW1hbFNpZ24rYTphfWNvbnN0IHk9KDAsYS5mb3JtYXROdW1iZXIpKGIsaCx2b2lkIDAsdSk7cmV0dXJuIHkuaW5jbHVkZXMoImUiKT95Onkrd31fcGFyc2VBc0RlY2ltYWwoZSx0PXt9KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6b309dCxyPSgwLG4uZ2V0TnVtYmVyRm9ybWF0KSh0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXR8fG8pLHM9KDAsYS5wYXJzZU51bWJlcikoZSxyKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKHMpP3t2YWx1ZTpzLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChzKX06e2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX19Y29uc3QgcD0iJyIsYj1uZXcgUmVnRXhwKC9eKC0/KVswLTldKyQvKTtjbGFzcyB3IGV4dGVuZHMgaHtoYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4hMX1fcGFyc2VVbnNpZ25lZChlKXtyZXR1cm4gdGhpcy5fbWluTW92ZTI/dGhpcy5fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSk6dGhpcy5fcGFyc2VBc1NpbmdsZUZyYWN0aW9uYWwoZSl9X2Zvcm1hdFVuc2lnbmVkKGUsdCl7Y29uc3R7dGFpbFNpemU6byx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6cn09dCxzPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLG1pbk1vdmUyOnRoaXMuX21pbk1vdmUyLGZyYWN0aW9uYWxMZW5ndGg6KDAsYy5lbnN1cmVEZWZpbmVkKSh0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoKSx0YWlsU2l6ZTpvfTtyZXR1cm4gdm9pZCAwIT09dGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSYmT2JqZWN0LmFzc2lnbihzLG0oITAsdGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSxyPz9zLnByaWNlKSksdGhpcy5fZm9ybWF0QXNGcmFjdGlvbmFsKHMpfV9wYXJzZUFzU2luZ2xlRnJhY3Rpb25hbChlKXtsZXQgdD1iLmV4ZWMoZSk7aWYodCl7Y29uc3QgdD1wYXJzZUZsb2F0KGUpO3JldHVybnt2YWx1ZTp0LHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbCh0KX19aWYodD1uZXcgUmVnRXhwKCJeKC0/KShbMC05XSspXFwnKFswLTldKykkIikuZXhlYyhlKSx0KXtjb25zdCBlPSEhdFsxXSxvPXBhcnNlSW50KHRbMl0pLHI9dGhpcy5fcHJpY2VTY2FsZSxzPXRoaXMuX3BhdGNoRnJhY3RQYXJ0KHBhcnNlSW50KHRbM10pLDEscik7aWYocz49cnx8czwwKXJldHVybntlcnJvcjp0aGlzLl9mb3JtYXR0ZXJFcnJvcnMuZnJhY3Rpb24scmVzOiExfTtsZXQgXz1vK3MvcjtyZXR1cm4gZSYmKF89LV8pLHt2YWx1ZTpfLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChfKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSl7bGV0IHQ9Yi5leGVjKGUpO2lmKHQpe2NvbnN0IHQ9cGFyc2VGbG9hdChlKTtyZXR1cm57dmFsdWU6dCxyZXM6ITAsc3VnZ2VzdDp0aGlzLmZvcm1hdEltcGwodCl9fQppZih0PW5ldyBSZWdFeHAoIl4oLT8pKFswLTldKylcXCcoWzAtOV0rKVxcJyhbMC05XSspJCIpLmV4ZWMoZSksdCl7Y29uc3QgZT0hIXRbMV0sbz1wYXJzZUludCh0WzJdKSxyPXZvaWQgMCE9PXRoaXMuX21pbk1vdmUyJiZudWxsIT09dGhpcy5fbWluTW92ZTI/dGhpcy5fbWluTW92ZTI6TmFOLHM9dGhpcy5fcHJpY2VTY2FsZS9yLF89dGhpcy5fbWluTW92ZTIsaT10aGlzLl9wYXRjaEZyYWN0UGFydChwYXJzZUludCh0WzNdKSwxLHMpLGE9dGhpcy5fcGF0Y2hGcmFjdFBhcnQocGFyc2VJbnQodFs0XSksMixfKTtpZihpPj1zfHxpPDApcmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5mcmFjdGlvbixyZXM6ITF9O2lmKG51bGwhPV8mJmE+PV98fGE8MClyZXR1cm57ZXJyb3I6dGhpcy5fZm9ybWF0dGVyRXJyb3JzLnNlY29uZEZyYWN0aW9uLHJlczohMX07bGV0IG49bnVsbCE9Xz9vK2kvcythLyhzKl8pOk5hTjtyZXR1cm4gZSYmKG49LW4pLHt2YWx1ZTpuLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChuKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGF0Y2hGcmFjdFBhcnQoZSx0LG8pe2NvbnN0IHI9ezA6MCw1OjF9LHM9ezA6MCwyOjEsNToyLDc6M30sXz17MDowLDE6MSwyOjIsMzozLDU6NCw2OjUsNzo2LDg6N307cmV0dXJuIDI9PT1vP3ZvaWQgMD09PXJbZV0/LTE6cltlXTo0PT09bz92b2lkIDA9PT1zW2VdPy0xOnNbZV06OD09PW8mJjI9PT10P3ZvaWQgMD09PV9bZV0/LTE6X1tlXTplfV9mb3JtYXRBc0ZyYWN0aW9uYWwoZSl7Y29uc3R7cHJpY2U6dCx0YWlsU2l6ZTpvLHByaWNlU2NhbGU6cixtaW5Nb3ZlOnMsbWluTW92ZTI6XyxmcmFjdGlvbmFsTGVuZ3RoOmF9PWUsbj1yL3M7bGV0IGw9TWF0aC5mbG9vcih0KSxjPW8/TWF0aC5mbG9vcih0Km4pLWwqbjpNYXRoLnJvdW5kKHQqbiktbCpuO2M9PT1uJiYoYz0wLGwrPTEpO2xldCBkPSIiO2lmKG8pe2xldCBlPSh0LWwtYy9uKSpuO2U9TWF0aC5yb3VuZChlKk1hdGgucG93KDEwLG8pKSxkPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGUsbyksZD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhkLG8pfWlmKCFhKXRocm93IG5ldyBFcnJvcigiX2ZyYWN0aW9uYWxMZW5ndGggaXMgbm90IGNhbGN1bGF0ZWQiKTtsZXQgdT0iIjtpZihfKXtjb25zdCBlPWMlXztjPShjLWUpL187Y29uc3QgdD0oMCxpLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjLGEpLG89dGhpcy5fZ2V0RnJhY3RQYXJ0KGUsMixfKTt1PXQrcCtvfWVsc2UgYz10aGlzLl9nZXRGcmFjdFBhcnQoYywxLHIpLHU9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoYypzLGEpO3JldHVybiBsLnRvU3RyaW5nKCkrcCt1K2R9X2dldEZyYWN0UGFydChlLHQsbyl7Y29uc3Qgcj1bMCw1XSxzPVswLDIsNSw3XSxfPVswLDEsMiwzLDUsNiw3LDhdO3JldHVybiAyPT09bz92b2lkIDA9PT1yW2VdPy0xOnJbZV06ND09PW8/dm9pZCAwPT09c1tlXT8tMTpzW2VdOjg9PT1vJiYyPT09dD92b2lkIDA9PT1fW2VdPy0xOl9bZV06ZX19Y2xhc3MgeXtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InByaWNlIjtjb25zdHttaW5Nb3ZlMjp0LGZyYWN0aW9uYWw6byx2YXJpYWJsZU1pblRpY2s6XyxpZ25vcmVNaW5Nb3ZlOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmF9PWUsbj0oMCxyLmlzTnVtYmVyKShlLnByaWNlU2NhbGUpJiYoMCxyLmlzSW50ZWdlcikoZS5wcmljZVNjYWxlKT9lLnByaWNlU2NhbGU6MTAwO2lmKG48MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGJhc2UiKTtjb25zdCBsPSFlLm1pbk1vdmV8fGk/MTplLm1pbk1vdmUsYz1zKG4sbCxvLHQpLGQ9ey4uLmUsbWluTW92ZTpsLHByaWNlU2NhbGU6bixmcmFjdGlvbmFsTGVuZ3RoOmN9O3RoaXMuX3ByaWNlU2NhbGU9bix0aGlzLl9taW5Nb3ZlPWwsdGhpcy5fbWluTW92ZTI9dCx0aGlzLl9mcmFjdGlvbmFsPW8sdGhpcy5fdmFyaWFibGVNaW5UaWNrPV8sdGhpcy5faWdub3JlTWluTW92ZT1pLHRoaXMuX2ZyYWN0aW9uYWxMZW5ndGg9Yyx0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ9YSx0aGlzLl9ub0V4cG9uZW50aWFsRm9ybT1lLm5vRXhwb25lbnRpYWxGb3JtLHRoaXMuX2ltcGxlbWVudGF0aW9uPW8/bmV3IHcoZCk6bmV3IGcoZCl9aXNGcmFjdGlvbmFsKCl7cmV0dXJuISF0aGlzLl9mcmFjdGlvbmFsfXN0YXRlKCl7cmV0dXJue21pbk1vdmU6dGhpcy5fbWluTW92ZSxtaW5Nb3ZlMjp0aGlzLl9taW5Nb3ZlMixwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsdmFyaWFibGVNaW5UaWNrOnRoaXMuX3ZhcmlhYmxlTWluVGljayxpZ25vcmVNaW5Nb3ZlOnRoaXMuX2lnbm9yZU1pbk1vdmUsZnJhY3Rpb25hbDp0aGlzLl9mcmFjdGlvbmFsLG5vRXhwb25lbnRpYWxGb3JtOnRoaXMuX25vRXhwb25lbnRpYWxGb3JtfX1mb3JtYXRDaGFuZ2UoZSx0LG8pe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5mb3JtYXRJbXBsKGUtdCx7Li4ubyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6TWF0aC5taW4oTWF0aC5hYnMoZSksTWF0aC5hYnModCkpfSl9Zm9ybWF0KGUsdCl7cmV0dXJuIHRoaXMuX2ltcGxlbWVudGF0aW9uLmZvcm1hdEltcGwoZSx0KX1wYXJzZShlLHQpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5wYXJzZShlLHQpfWhhc0ZvcmV4QWRkaXRpb25hbFByZWNpc2lvbigpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgeShlKX19fSw3ODMyNTQoZSx0LG8pe28uZCh0LHt0OigpPT5yfSk7Y29uc3Qgcj1vLmkxOG5leHR9LDYyMDM1NChlLHQsbyl7dmFyIHI7by5kKHQse0xvZ29TaXplOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLk1lZGl1bT0wXT0iTWVkaXVtIixlW2UuTGFyZ2U9MV09IkxhcmdlIn0ocnx8KHI9e30pKX0sNzQ5NjQ4KGUsdCxvKXtmdW5jdGlvbiByKGUsdD0hMSl7CiJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGU/dD9zZXRUaW1lb3V0KCgoKT0+ZSgpKSwxKTplKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCgpPT5lKCkpKX1vLmQodCx7d2hlbkRvY3VtZW50UmVhZHk6KCk9PnJ9KTtuZXcgUHJvbWlzZSgoZT0+e3IoZSl9KSl9LDYzNTE4KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyIxNDg1MSI6e30sImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiOnt9LCJjb3VudGRvd24iOnt9LCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiI6e30sInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiOnt9LCJncmF5aW5nX2Rpc2FibGVkX3Rvb2xzX2VuYWJsZWQiOnt9LCJ1cGRhdGVfc3R1ZHlfZm9ybWF0dGVyX29uX3N5bWJvbF9yZXNvbHZlIjp7fSwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50Ijp7fSwicGhvbmVfdmVyaWZpY2F0aW9uIjp7fSwic2hvd190cmFkaW5nX25vdGlmaWNhdGlvbnNfaGlzdG9yeSI6e30sInNob3dfaW50ZXJ2YWxfZGlhbG9nX29uX2tleV9wcmVzcyI6e30sImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIjp7InN1YnNldHMiOlsic2hvd19pbnRlcnZhbF9kaWFsb2dfb25fa2V5X3ByZXNzIl19LCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iOnt9LCJoZWFkZXJfc3ltYm9sX3NlYXJjaCI6e30sInN5bWJvbF9zZWFyY2hfaG90X2tleSI6e30sImhlYWRlcl9yZXNvbHV0aW9ucyI6eyJzdWJzZXRzIjpbImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIl19LCJoZWFkZXJfY2hhcnRfdHlwZSI6e30sImhlYWRlcl9zZXR0aW5ncyI6e30sImhlYWRlcl9pbmRpY2F0b3JzIjp7fSwiaGVhZGVyX2NvbXBhcmUiOnt9LCJoZWFkZXJfdW5kb19yZWRvIjp7fSwiaGVhZGVyX3F1aWNrX3NlYXJjaCI6e30sImhlYWRlcl9zY3JlZW5zaG90Ijp7fSwiaGVhZGVyX3NhdmVsb2FkIjp7fSwic3R1ZHlfb25fc3R1ZHkiOnt9LCJzY2FsZXNfZGF0ZV9mb3JtYXQiOnt9LCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiOnt9LCJoZWFkZXJfd2lkZ2V0Ijp7InN1YnNldHMiOlsiaGVhZGVyX3dpZGdldF9kb21fbm9kZSIsImhlYWRlcl9zeW1ib2xfc2VhcmNoIiwiaGVhZGVyX3Jlc29sdXRpb25zIiwiaGVhZGVyX2NoYXJ0X3R5cGUiLCJoZWFkZXJfc2V0dGluZ3MiLCJoZWFkZXJfaW5kaWNhdG9ycyIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX3VuZG9fcmVkbyIsImhlYWRlcl9xdWlja19zZWFyY2giLCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iLCJjb21wYXJlX3N5bWJvbCIsImhlYWRlcl9zY3JlZW5zaG90Il19LCJsZWdlbmRfd2lkZ2V0Ijp7fSwiY29tcGFyZV9zeW1ib2wiOnsic3Vic2V0cyI6WyJoZWFkZXJfY29tcGFyZSJdfSwicHJvcGVydHlfcGFnZXMiOnsic3Vic2V0cyI6WyJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiLCJjaGFydF9wcm9wZXJ0eV9wYWdlIl19LCJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiOnt9LCJjaGFydF9wcm9wZXJ0eV9wYWdlIjp7InN1YnNldHMiOlsiY2hhcnRfcHJvcGVydHlfcGFnZV9zY2FsZXMiLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3RyYWRpbmciLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3JpZ2h0X21hcmdpbl9lZGl0b3IiXX0sImxlZnRfdG9vbGJhciI6e30sInJpZ2h0X3Rvb2xiYXIiOnt9LCJoaWRlX2xlZnRfdG9vbGJhcl9ieV9kZWZhdWx0Ijp7fSwiY29udHJvbF9iYXIiOnt9LCJ3aWRnZXRfbG9nbyI6e30sInRpbWVmcmFtZXNfdG9vbGJhciI6e30sImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiOnsic3Vic2V0cyI6WyJzaG93X2hpZGVfYnV0dG9uX2luX2xlZ2VuZCIsImZvcm1hdF9idXR0b25faW5fbGVnZW5kIiwic3R1ZHlfYnV0dG9uc19pbl9sZWdlbmQiLCJkZWxldGVfYnV0dG9uX2luX2xlZ2VuZCIsImxlZ2VuZF9pbnBsYWNlX2VkaXQiXX0sInNob3dfaGlkZV9idXR0b25faW5fbGVnZW5kIjp7fSwib2JqZWN0X3RyZWVfbGVnZW5kX21vZGUiOnt9LCJmb3JtYXRfYnV0dG9uX2luX2xlZ2VuZCI6e30sInN0dWR5X2J1dHRvbnNfaW5fbGVnZW5kIjp7fSwiZGVsZXRlX2J1dHRvbl9pbl9sZWdlbmQiOnt9LCJsZWdlbmRfaW5wbGFjZV9lZGl0Ijp7fSwiYnJva2VyX2J1dHRvbiI6e30sImJ1eV9zZWxsX2J1dHRvbnMiOnsic3Vic2V0cyI6WyJicm9rZXJfYnV0dG9uIl19LCJzaG93X2J1eV9zZWxsX2J1dHRvbnNfb25fdW5zdXBwb3J0ZWRfcmVzb2x1dGlvbiI6e30sInBhbmVfY29udGV4dF9tZW51Ijp7fSwic2NhbGVzX2NvbnRleHRfbWVudSI6e30sImxlZ2VuZF9jb250ZXh0X21lbnUiOnt9LCJjb250ZXh0X21lbnVzIjp7InN1YnNldHMiOlsicGFuZV9jb250ZXh0X21lbnUiLCJzY2FsZXNfY29udGV4dF9tZW51IiwibGVnZW5kX2NvbnRleHRfbWVudSIsIm9iamVjdHNfdHJlZV9jb250ZXh0X21lbnUiXX0sIml0ZW1zX2Zhdm9yaXRpbmciOnt9LCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSI6e30sInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIjp7InN1YnNldHMiOlsiaXRlbXNfZmF2b3JpdGluZyIsInNhdmVfY2hhcnRfcHJvcGVydGllc190b19sb2NhbF9zdG9yYWdlIl19LCJoYW5kbGVfc2NhbGUiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY2FsZSIsInBpbmNoX3NjYWxlIiwiYXhpc19wcmVzc2VkX21vdXNlX21vdmVfc2NhbGUiXX0sImhhbmRsZV9zY3JvbGwiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY3JvbGwiLCJwcmVzc2VkX21vdXNlX21vdmVfc2Nyb2xsIiwiaG9yel90b3VjaF9kcmFnX3Njcm9sbCIsInZlcnRfdG91Y2hfZHJhZ19zY3JvbGwiXX0sInBsYWluX3N0dWR5bWFya2V0Ijp7fSwiZGlzYWJsZV9yZXNvbHV0aW9uX3JlYnVpbGQiOnt9LCJib3JkZXJfYXJvdW5kX3RoZV9jaGFydCI6e30sImNoYXJ0aW5nX2xpYnJhcnlfZGVidWdfbW9kZSI6e30sInNhdmVsb2FkX3JlcXVpcmVzX2F1dGhlbnRpY2F0aW9uIjp7fSwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIjp7fSwidm9sdW1lX2ZvcmNlX292ZXJsYXkiOnt9LCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0Ijp7fSwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdF9vbmNlIjp7fSwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIjp7fSwibGVhbl9jaGFydF9sb2FkIjp7fSwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0Ijp7fSwic3Rhcl9zb21lX2ludGVydmFsc19ieV9kZWZhdWx0Ijp7fSwibW92ZV9sb2dvX3RvX21haW5fcGFuZSI6e30sInNob3dfYW5pbWF0ZWRfbG9nbyI6e30sImxpbmtfdG9fdHJhZGluZ3ZpZXciOnt9LCJsb2dvX3dpdGhvdXRfbGluayI6e30sImxvZ29fYWx3YXlzX21heGltaXplZCI6e30sInJpZ2h0X2Jhcl9zdGF5c19vbl9zY3JvbGwiOnt9LCJjaGFydF9jb250ZW50X292ZXJyaWRlc19ieV9kZWZhdWx0cyI6e30sInNuYXBzaG90X3RyYWRpbmdfZHJhd2luZ3MiOnt9LCJhbGxvd19zdXBwb3J0ZWRfcmVzb2x1dGlvbnNfc2V0X29ubHkiOnt9LCJ3aWRnZXRiYXJfdGFicyI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sInNob3dfb2JqZWN0X3RyZWUiOnsic3Vic2V0cyI6WyJyaWdodF90b29sYmFyIl19LCJkb21fd2lkZ2V0Ijp7InN1YnNldHMiOlsicmlnaHRfdG9vbGJhciJdfSwiY29sbGFwc2libGVfaGVhZGVyIjp7fSwic3R1ZHlfdGVtcGxhdGVzIjp7fSwia2VlcF9zZWxlY3RlZF9ncm91cF9vbl90b29sX2NyZWF0aW9uIjp7fSwic2lkZV90b29sYmFyX2luX2Z1bGxzY3JlZW5fbW9kZSI6e30sImhlYWRlcl9pbl9mdWxsc2NyZWVuX21vZGUiOnt9LCJyZW1vdmVfbGlicmFyeV9jb250YWluZXJfYm9yZGVyIjp7fSwid2hvdHJhZGVzX2F1dGhfb25seSI6e30sInN1cHBvcnRfbXVsdGljaGFydHMiOnt9LCJkaXNwbGF5X21hcmtldF9zdGF0dXMiOnt9LCJkaXNwbGF5X2RhdGFfbW9kZSI6e30sImRhdGFzb3VyY2VfY29weXBhc3RlIjp7fSwiZHJhd2luZ190ZW1wbGF0ZXMiOnsic3Vic2V0cyI6WyJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIl19LCJleHBhbmRfc3ltYm9sc2VhcmNoX2l0ZW1zIjp7fSwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyI6e30sInN5bWJvbF9zZWFyY2hfZmxhZ3MiOnt9LCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIjp7fSwiYnVncmVwb3J0X2J1dHRvbiI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sImhlYWRlcl90cmFkZV9idXR0b24iOnt9LCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIjp7fSwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iOnt9LCJ0ZXh0X25vdGVzIjp7fSwic2hvd19zb3VyY2VfY29kZSI6e30sInN5bWJvbF9pbmZvIjp7fSwibm9fYmFyc19zdGF0dXMiOnt9LCJjbGVhcl9iYXJzX29uX3Nlcmllc19lcnJvciI6e30sImhpZGVfbG9hZGluZ19zY3JlZW5fb25fc2VyaWVzX2Vycm9yIjp7fSwic2Vjb25kc19yZXNvbHV0aW9uIjp7fSwiZG9udF9zaG93X2Jvb2xlYW5fc3R1ZHlfYXJndW1lbnRzIjp7fSwiaGlkZV9sYXN0X25hX3N0dWR5X291dHB1dCI6e30sInByaWNlX3NjYWxlX2Fsd2F5c19sYXN0X2Jhcl92YWx1ZSI6e30sInN0dWR5X2RpYWxvZ19mdW5kYW1lbnRhbHNfZWNvbm9teV9hZGRvbnMiOnt9LCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyI6e30sInRyYWRpbmdfbm90aWZpY2F0aW9ucyI6e30sImNoYXJ0X2Nyb3NzaGFpcl9tZW51Ijp7fSwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIjp7fSwiaGlkZV9zZXJpZXNfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X292ZXJsYXlfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X2NvbXBhcmVfbGVnZW5kX2l0ZW0iOnt9LCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIjp7fSwidXNlX292ZXJyaWRlc19mb3Jfb3ZlcmxheSI6e30sInRpbWV6b25lX21lbnUiOnt9LCJtYWluX3Nlcmllc19zY2FsZV9tZW51Ijp7fSwic2hvd19sb2dpbl9kaWFsb2ciOnt9LCJyZW1vdmVfaW1nX2Zyb21fcnNzIjp7fSwiYmFyc19tYXJrcyI6e30sImNoYXJ0X3Njcm9sbCI6e30sImNoYXJ0X3pvb20iOnt9LCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiOnt9LCJsb3dfZGVuc2l0eV9iYXJzIjp7fSwiZW5kX29mX3BlcmlvZF90aW1lc2NhbGVfbWFya3MiOnt9LCJvcGVuX2FjY291bnRfbWFuYWdlciI6e30sInNob3dfb3JkZXJfcGFuZWxfb25fc3RhcnQiOnt9LCJvcmRlcl9wYW5lbCI6eyJzdWJzZXRzIjpbIm9yZGVyX3BhbmVsX2Nsb3NlX2J1dHRvbiIsIm9yZGVyX3BhbmVsX3VuZG9jayIsInJpZ2h0X3Rvb2xiYXIiLCJvcmRlcl9pbmZvIl19LCJtdWx0aXBsZV93YXRjaGxpc3RzIjp7fSwid2F0Y2hsaXN0X2ltcG9ydF9leHBvcnQiOnt9LCJzdHVkeV9vdmVybGF5X2NvbXBhcmVfbGVnZW5kX29wdGlvbiI6e30sIm1vYmlsZV9hcHBfYWN0aW9uX29wZW5fZGV0YWlsc193ZWJ2aWV3Ijp7fSwiY3VzdG9tX3Jlc29sdXRpb25zIjp7fSwicmVmZXJyYWxfcHJvZ3JhbV9mb3Jfd2lkZ2V0X293bmVycyI6e30sIm1vYmlsZV90cmFkaW5nIjp7fSwicmVhbF9icm9rZXJzIjp7fSwicXVpY2tfdHJhZGluZ19wYW5lbCI6e30sIm5hdGl2ZV9tb2JpbGVfYnJva2Vyc19saXN0Ijp7fSwibm9fbWluX2NoYXJ0X3dpZHRoIjp7fSwibG9ja192aXNpYmxlX3RpbWVfcmFuZ2Vfb25fcmVzaXplIjp7fSwicHJpY2VzY2FsZV9jdXJyZW5jeSI6e30sImNyb3BwZWRfdGlja19tYXJrcyI6e30sInRyYWRpbmdfYWNjb3VudF9tYW5hZ2VyIjp7fSwiZGlzYWJsZV9zYW1laW50ZXJ2YWxfYWxpZ25pbmciOnt9LCJkaXNwbGF5X2xlZ2VuZF9vbl9hbGxfY2hhcnRzIjp7fSwiY2hhcnRfc3R5bGVfaGlsbyI6e30sImNoYXJ0X3N0eWxlX2hpbG9fbGFzdF9wcmljZSI6e30sInByaWNlc2NhbGVfdW5pdCI6e30sInNob3dfc3ByZWFkX29wZXJhdG9ycyI6e30sImhpZGVfZXhwb25lbnRpYXRpb25fc3ByZWFkX29wZXJhdG9yIjp7fSwiaGlkZV9yZWNpcHJvY2FsX3NwcmVhZF9vcGVyYXRvciI6e30sImNvbXBhcmVfc3ltYm9sX3NlYXJjaF9zcHJlYWRfb3BlcmF0b3JzIjp7fSwic3R1ZGllc19zeW1ib2xfc2VhcmNoX3NwcmVhZF9vcGVyYXRvcnMiOnt9LCJoaWRlX3Jlc29sdXRpb25faW5fbGVnZW5kIjp7fSwiaGlkZV91bnJlc29sdmVkX3N5bWJvbHNfaW5fbGVnZW5kIjp7fSwiZml4X2xlZnRfZWRnZSI6e30sInN0dWR5X3N5bWJvbF90aWNrZXJfZGVzY3JpcHRpb24iOnt9LCJ0d29fY2hhcmFjdGVyX2Jhcl9tYXJrc19sYWJlbHMiOnt9LCJwaW5fYmFyX21hcmtfdG9vbHRpcHNfb25fY2xpY2siOnt9LCJ0aWNrX3Jlc29sdXRpb24iOnt9LCJzZWNvbmRhcnlfc2VyaWVzX2V4dGVuZF90aW1lX3NjYWxlIjp7fSwiaGlkZV92b2x1bWVfbWEiOnt9LCJzbWFsbF9ub19kaXNwbGF5Ijp7fSwiY2hhcnRpbmdfbGlicmFyeV9zaW5nbGVfc3ltYm9sX3JlcXVlc3QiOnt9LCJ1c2VfdGlja2VyX29uX3N5bWJvbF9pbmZvX3VwZGF0ZSI6e30sInNob3dfem9vbV9hbmRfbW92ZV9idXR0b25zX29uX3RvdWNoIjp7fSwiaGlkZV9tYWluX3Nlcmllc19zeW1ib2xfZnJvbV9pbmRpY2F0b3JfbGVnZW5kIjp7fSwiY2hhcnRfaGlkZV9jbG9zZV9wb3NpdGlvbl9idXR0b24iOnt9LCJjaGFydF9oaWRlX2Nsb3NlX29yZGVyX2J1dHRvbiI6e30sImhpZGVfcHJpY2Vfc2NhbGVfZ2xvYmFsX2xhc3RfYmFyX3ZhbHVlIjp7InN1YnNldHMiOlsidXNlX2xhc3RfdmlzaWJsZV9iYXJfdmFsdWVfaW5fbGVnZW5kIl19LCJrZWVwX29iamVjdF90cmVlX3dpZGdldF9pbl9yaWdodF90b29sYmFyIjp7fSwic2hvd19hdmVyYWdlX2Nsb3NlX3ByaWNlX2xpbmVfYW5kX2xhYmVsIjp7fSwiaGlkZV9pbWFnZV9pbnZhbGlkX3N5bWJvbCI6e30sImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIjp7fSwiY29uZmlybV9vdmVyd3JpdGVfaWZfY2hhcnRfbGF5b3V0X3dpdGhfbmFtZV9leGlzdHMiOnt9LCJkZXRlcm1pbmVfZmlyc3RfZGF0YV9yZXF1ZXN0X3NpemVfdXNpbmdfdmlzaWJsZV9yYW5nZSI6e30sInVzZV9uYV9zdHJpbmdfZm9yX25vdF9hdmFpbGFibGVfdmFsdWVzIjp7fSwic2hvd19sYXN0X3ByaWNlX2FuZF9jaGFuZ2Vfb25seV9pbl9zZXJpZXNfbGVnZW5kIjp7fSwibGVnZW5kX2xhc3RfZGF5X2NoYW5nZSI6e30sImlmcmFtZV9sb2FkaW5nX2NvbXBhdGliaWxpdHlfbW9kZSI6e30sInNob3dfcGVyY2VudF9vcHRpb25fZm9yX3JpZ2h0X21hcmdpbiI6e30sIndhdGNobGlzdF9jb250ZXh0X21lbnUiOnt9LCJhY2Nlc3NpYmxlX2tleWJvYXJkX3Nob3J0Y3V0cyI6e30sImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyI6e30sImFwcF9waG9uZSI6e30sImFwcF90YWJsZXQiOnt9LCJtb2JpbGVfYXBwX2hpZGVfcmVwbGF5X3Rvb2xiYXIiOnt9LCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fdGFwX2luX2xlZ2VuZCI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fbm9uX3RyYWRhYmxlIjp7fSwic2hvd19uZXdfbWVudV9pdGVtc19pbl9jaGFydF9tZW51cyI6e30sInByZV9wb3N0X21hcmtldF9wcmljZV9saW5lIjp7fSwicHJlX3Bvc3RfbWFya2V0X3Nlc3Npb25zIjp7fSwic3R1ZGllc19leHRlbmRfdGltZV9zY2FsZSI6e30sImluYWN0aXZpdHlfZ2FwcyI6e30sImFsaWduX2R3bV9iYXJzX3RvX21haW5fc2VyaWVzIjp7fSwicmVxdWVzdF9vbmx5X3Zpc2libGVfcmFuZ2Vfb25fcmVzZXQiOnt9LCJleHRlbmRlZF9leHRyYXBvbGF0aW9uX2xpbWl0Ijp7fSwidHZfcHJvZHVjdGlvbiI6eyJzdWJzZXRzIjpbIndhdGNobGlzdF9zZWN0aW9ucyIsImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyIsImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsImhlYWRlcl9mdWxsc2NyZWVuX2J1dHRvbiIsImhlYWRlcl93aWRnZXQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwiYnV5X3NlbGxfYnV0dG9ucyIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwidXNlX2xvY2Fsc3RvcmFnZV9mb3Jfc2V0dGluZ3MiLCJzYXZlbG9hZF9yZXF1aXJlc19hdXRoZW50aWNhdGlvbiIsInZvbHVtZV9mb3JjZV9vdmVybGF5Iiwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHRfb25jZSIsImNoYXJ0c19hdXRvX3NhdmUiLCJzYXZlX29sZF9jaGFydF9iZWZvcmVfc2F2ZV9hcyIsImNoYXJ0X2NvbnRlbnRfb3ZlcnJpZGVzX2J5X2RlZmF1bHRzIiwiYWxlcnRzIiwiaGVhZGVyX3NhdmVsb2FkIiwiaGVhZGVyX2xheW91dHRvZ2dsZSIsImRhdGFzb3VyY2VfY29weXBhc3RlIiwic2hvd19zYXZlZF93YXRjaGxpc3RzIiwid2F0Y2hsaXN0c19mcm9tX3RvX2ZpbGUiLCJhZGRfdG9fd2F0Y2hsaXN0IiwicHJvcGVydHlfcGFnZXMiLCJzdXBwb3J0X211bHRpY2hhcnRzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZGlzcGxheV9kYXRhX21vZGUiLCJzaG93X2NoYXJ0X3dhcm5fbWVzc2FnZSIsInN1cHBvcnRfbWFuYWdlX2RyYXdpbmdzIiwid2lkZ2V0YmFyX3RhYnMiLCJzdHVkeV90ZW1wbGF0ZXMiLCJjb2xsYXBzaWJsZV9oZWFkZXIiLCJkcmF3aW5nX3RlbXBsYXRlcyIsImhlYWRlcl90cmFkZV9idXR0b24iLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIiwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iLCJ0ZXh0X25vdGVzIiwic2hvd19zb3VyY2VfY29kZSIsInN5bWJvbF9pbmZvIiwibGluZXRvb2xwcm9wZXJ0aWVzd2lkZ2V0X3RlbXBsYXRlX2J1dHRvbiIsInRyYWRpbmdfbm90aWZpY2F0aW9ucyIsInN5bWJvbF9zZWFyY2hfdGhyZWVfY29sdW1uc19leGNoYW5nZXMiLCJzeW1ib2xfc2VhcmNoX2ZsYWdzIiwic3ltYm9sX3NlYXJjaF9saW1pdGVkX2V4Y2hhbmdlcyIsInBob25lX3ZlcmlmaWNhdGlvbiIsImN1c3RvbV9yZXNvbHV0aW9ucyIsImNvbXBhcmVfc3ltYm9sIiwic3R1ZHlfb25fc3R1ZHkiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJzaG93X2xvZ2luX2RpYWxvZyIsImRvbV93aWRnZXQiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNob3dfdHJhZGluZ19ub3RpZmljYXRpb25zX2hpc3RvcnkiLCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiLCJzdHVkeV9kaWFsb2dfZnVuZGFtZW50YWxzX2Vjb25vbXlfYWRkb25zIiwibXVsdGlwbGVfd2F0Y2hsaXN0cyIsIm1hcmtlZF9zeW1ib2xzIiwib3JkZXJfcGFuZWwiLCJwcmljZXNjYWxlX2N1cnJlbmN5Iiwic2hvd19hbmltYXRlZF9sb2dvIiwicHJpY2VzY2FsZV9jdXJyZW5jeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsInNjYWxlc19kYXRlX2Zvcm1hdCIsInNjYWxlc190aW1lX2hvdXJzX2Zvcm1hdCIsInBvcHVwX2hpbnRzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciIsInNob3dfbmV3X21lbnVfaXRlbXNfaW5fY2hhcnRfbWVudXMiLCJrZWVwX3NlbGVjdGVkX2dyb3VwX29uX3Rvb2xfY3JlYXRpb24iXX0sIndpZGdldCI6eyJzdWJzZXRzIjpbImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwibGVmdF90b29sYmFyIiwicmlnaHRfdG9vbGJhciIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwic2F2ZWxvYWRfcmVxdWlyZXNfYXV0aGVudGljYXRpb24iLCJ2b2x1bWVfZm9yY2Vfb3ZlcmxheSIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHQiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJoZWFkZXJfd2lkZ2V0X2RvbV9ub2RlIiwiaGVhZGVyX3N5bWJvbF9zZWFyY2giLCJoZWFkZXJfcmVzb2x1dGlvbnMiLCJoZWFkZXJfY2hhcnRfdHlwZSIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX2luZGljYXRvcnMiLCJzdGFyX3NvbWVfaW50ZXJ2YWxzX2J5X2RlZmF1bHQiLCJkaXNwbGF5X21hcmtldF9zdGF0dXMiLCJkaXNwbGF5X2RhdGFfbW9kZSIsInNob3dfY2hhcnRfd2Fybl9tZXNzYWdlIiwic3ltYm9sX2luZm8iLCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIiwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyIsInN5bWJvbF9zZWFyY2hfZmxhZ3MiLCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIiwid2lkZ2V0YmFyX3RhYnMiLCJjb21wYXJlX3N5bWJvbCIsInNob3dfbG9naW5fZGlhbG9nIiwicGxhaW5fc3R1ZHltYXJrZXQiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIl19LCJib3Zlc3BhX3dpZGdldCI6eyJzdWJzZXRzIjpbIndpZGdldCIsImhlYWRlcl9zZXR0aW5ncyIsImxpbmV0b29scHJvcGVydGllc3dpZGdldF90ZW1wbGF0ZV9idXR0b24iLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiXX0sImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSI6eyJzdWJzZXRzIjpbIjE0ODUxIiwiYWxsb3dfc3VwcG9ydGVkX3Jlc29sdXRpb25zX3NldF9vbmx5IiwiYXV0b19lbmFibGVfc3ltYm9sX2xhYmVscyIsImJvcmRlcl9hcm91bmRfdGhlX2NoYXJ0IiwiY29sbGFwc2libGVfaGVhZGVyIiwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50IiwiY29udGV4dF9tZW51cyIsImNvbnRyb2xfYmFyIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiLCJkYXRhc291cmNlX2NvcHlwYXN0ZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZWRpdF9idXR0b25zX2luX2xlZ2VuZCIsIm9iamVjdF90cmVlX2xlZ2VuZF9tb2RlIiwiZ3JheWluZ19kaXNhYmxlZF90b29sc19lbmFibGVkIiwiaGVhZGVyX3dpZGdldCIsImxlZ2VuZF93aWRnZXQiLCJoZWFkZXJfc2F2ZWxvYWQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWFuX2NoYXJ0X2xvYWQiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwibGlua190b190cmFkaW5ndmlldyIsInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiLCJwbGFpbl9zdHVkeW1hcmtldCIsInJlZnJlc2hfc2F2ZWRfY2hhcnRzX2xpc3Rfb25fZGlhbG9nX3Nob3ciLCJyaWdodF9iYXJfc3RheXNfb25fc2Nyb2xsIiwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIiwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0IiwidGltZWZyYW1lc190b29sYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwidXBkYXRlX3N0dWR5X2Zvcm1hdHRlcl9vbl9zeW1ib2xfcmVzb2x2ZSIsInVwZGF0ZV90aW1lZnJhbWVzX3NldF9vbl9zeW1ib2xfcmVzb2x2ZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwidm9sdW1lX2ZvcmNlX292ZXJsYXkiLCJ3aWRnZXRfbG9nbyIsImNvdW50ZG93biIsInVzZV9vdmVycmlkZXNfZm9yX292ZXJsYXkiLCJ0cmFkaW5nX25vdGlmaWNhdGlvbnMiLCJjb21wYXJlX3N5bWJvbCIsInN5bWJvbF9pbmZvIiwidGltZXpvbmVfbWVudSIsIm1haW5fc2VyaWVzX3NjYWxlX21lbnUiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwiZ29fdG9fZGF0ZSIsImFkYXB0aXZlX2xvZ28iLCJzaG93X2FuaW1hdGVkX2xvZ28iLCJoYW5kbGVfc2NhbGUiLCJoYW5kbGVfc2Nyb2xsIiwic2hpZnRfdmlzaWJsZV9yYW5nZV9vbl9uZXdfYmFyIiwiY2hhcnRfY29udGVudF9vdmVycmlkZXNfYnlfZGVmYXVsdHMiLCJjcm9wcGVkX3RpY2tfbWFya3MiLCJzY2FsZXNfZGF0ZV9mb3JtYXQiLCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiLCJwb3B1cF9oaW50cyIsInNhdmVfc2hvcnRjdXQiLCJzaG93X3JpZ2h0X3dpZGdldHNfcGFuZWxfYnlfZGVmYXVsdCIsInNob3dfb2JqZWN0X3RyZWUiLCJpbnNlcnRfaW5kaWNhdG9yX2RpYWxvZ19zaG9ydGN1dCIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsImhpZGVfbWFpbl9zZXJpZXNfc3ltYm9sX2Zyb21faW5kaWNhdG9yX2xlZ2VuZCIsImNoYXJ0X3N0eWxlX2hpbG8iLCJyZXF1ZXN0X29ubHlfdmlzaWJsZV9yYW5nZV9vbl9yZXNldCIsImNsZWFyX3ByaWNlX3NjYWxlX29uX2Vycm9yX29yX2VtcHR5X2JhcnMiLCJzaG93X3N5bWJvbF9sb2dvX2luX2xlZ2VuZCIsInNob3dfc3ltYm9sX2xvZ29fZm9yX2NvbXBhcmVfc3R1ZGllcyIsImxpYnJhcnlfY3VzdG9tX2NvbG9yX3RoZW1lcyIsImxvbmdfcHJlc3NfZmxvYXRpbmdfdG9vbHRpcCIsInN5bWJvbF9zZWFyY2hfaGlnaGxpZ2h0X2FjdGl2ZV9zeW1ib2wiXX0sImNoYXJ0aW5nX2xpYnJhcnkiOnsic3Vic2V0cyI6WyJjaGFydGluZ19saWJyYXJ5X2Jhc2UiXX0sInN0YXRpY19jaGFydHNfc2VydmljZSI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnkiLCJkaXNhYmxlX3Jlc29sdXRpb25fcmVidWlsZCJdfSwidHJhZGluZ190ZXJtaW5hbCI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSIsInN1cHBvcnRfbXVsdGljaGFydHMiLCJoZWFkZXJfbGF5b3V0dG9nZ2xlIiwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIiwiY2hhcnRfcHJvcGVydHlfcGFnZV90cmFkaW5nIiwiYWRkX3RvX3dhdGNobGlzdCIsIm9wZW5fYWNjb3VudF9tYW5hZ2VyIiwic2hvd19kb21fZmlyc3RfdGltZSIsIm9yZGVyX3BhbmVsIiwiYnV5X3NlbGxfYnV0dG9ucyIsIm11bHRpcGxlX3dhdGNobGlzdHMiLCJzaG93X3RyYWRpbmdfbm90aWZpY2F0aW9uc19oaXN0b3J5IiwiYWx3YXlzX3Bhc3NfY2FsbGVkX29yZGVyX3RvX21vZGlmeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsImRyYXdpbmdfdGVtcGxhdGVzIiwidHJhZGluZ19hY2NvdW50X21hbmFnZXIiLCJjaGFydF9jcm9zc2hhaXJfbWVudSIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsIndhdGNobGlzdF9jb250ZXh0X21lbnUiLCJzaG93X3N5bWJvbF9sb2dvX2luX2FjY291bnRfbWFuYWdlciIsInNob3dfc3ltYm9sX2xvZ29faW5fY2xvc2VfcG9zaXRpb25fZGlhbG9nIiwic2hvd19zeW1ib2xfbG9nb19pbl9jYW5jZWxfb3JkZXJfZGlhbG9nIiwid2F0Y2hsaXN0X3NlY3Rpb25zIiwicHJlZmVyX3F1b3RlX3Nob3J0X25hbWUiLCJlbmFibGVfZG9tX2RhdGFfZm9yX3VudHJhZGFibGVfc3ltYm9scyIsInByZWZlcl9zeW1ib2xfbmFtZV9vdmVyX2Z1bGxuYW1lIiwid2F0Y2hsaXN0X2Nyb3NzX3RhYl9zeW5jIl19fScpCn0sNzQ2OTQ5KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKQp9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_market_overview_widget.b3778cf59c7972fb2117.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.256Z","timestamp":1785154590256,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/runtime-embed_market_overview_widget.b3778cf59c7972fb2117.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-2b95\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7dfce7949c77090aac27f22287235e6d\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":11157,"size_decoded":6537,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3067)","md5":"1c5e4ac62052f34aee8fe1e7000ecff9","sha1":"0029565b602cc5671a3dece11206c502615dd320","sha256":"e23fb884523506d32b7743fa2a1bf5aa00fe8f36e95450bbdaac26f32bed80dd","sha512":"bb33fac88808b72a28a10b28ef125f8043debaeff6d4c701028ea700061e4637b2e4eead6f8d2d6ff22e6a8ccb2b954946546c00cbb4b63536c16cea814ace92","ssdeep":"192:nbDxftZMoGKLpSH0NQ6WCb6sp160EAkdDIkL1OQXIL5kvPNVed394a6jaOIj:nbDXZ2KLUHZ6Wnsr60Lk1IC1OQ4L5kvQ","tlshash":"e3320bec2558d47125b508511879b462f21d32bbaf4ed0e09363fcf8686dfe86733992","first_seen":"2026-07-24T21:01:56.897779Z","last_seen":"2026-07-27T14:22:59.672074Z","times_seen":228,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLHQsYSxyLG4sYz17fSxmPXt9O2Z1bmN0aW9uIGkoZSl7dmFyIHQ9ZltlXTtpZih2b2lkIDAhPT10KXJldHVybiB0LmV4cG9ydHM7dmFyIGE9ZltlXT17ZXhwb3J0czp7fX07cmV0dXJuIGNbZV0uY2FsbChhLmV4cG9ydHMsYSxhLmV4cG9ydHMsaSksYS5leHBvcnRzfWkubT1jLGkuX3BsdXJhbD17YXI6KGUsdD02LGE9KDA9PWU/MDoxPT1lPzE6Mj09ZT8yOmUlMTAwPj0zJiZlJTEwMDw9MTA/MzplJTEwMD49MTEmJmUlMTAwPD05OT80OjUpKT0+bnVsbD09ZT8wOithLGNzOihlLHQ9MyxhPSgxPT1lPzA6ZT49MiYmZTw9ND8xOjIpKT0+bnVsbD09ZT8wOithLHJ1OihlLHQ9MyxhPShlJTEwPT0xJiZlJTEwMCE9MTE/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorYSxybzooZSx0PTMsYT0oMT09ZT8wOmUlMTAwPjE5fHxlJTEwMD09MCYmMCE9ZT8yOjEpKT0+bnVsbD09ZT8wOithLHBsOihlLHQ9MyxhPSgxPT1lPzA6ZSUxMD49MiYmZSUxMDw9NCYmKGUlMTAwPDEwfHxlJTEwMD49MjApPzE6MikpPT5udWxsPT1lPzA6K2EscHQ6KGUsdD0yLGE9MSE9ZSk9Pm51bGw9PWU/MDorYSxkZTooZSx0PTIsYT0xIT1lKT0+bnVsbD09ZT8wOithLGVuOihlLHQ9MixhPTEhPWUpPT5udWxsPT1lPzA6K2EsZXM6KGUsdD0yLGE9MSE9ZSk9Pm51bGw9PWU/MDorYSxzdjooZSx0PTIsYT0xIT1lKT0+bnVsbD09ZT8wOithLGl0OihlLHQ9MixhPTEhPWUpPT5udWxsPT1lPzA6K2EsdHI6KGUsdD0yLGE9MSE9ZSk9Pm51bGw9PWU/MDorYSxlbDooZSx0PTIsYT0xIT1lKT0+bnVsbD09ZT8wOithLGZyOihlLHQ9MixhPWU+MSk9Pm51bGw9PWU/MDorYSxmYTooZSx0PTEsYT0wKT0+bnVsbD09ZT8wOithLGphOihlLHQ9MSxhPTApPT5udWxsPT1lPzA6K2Esa286KGUsdD0xLGE9MCk9Pm51bGw9PWU/MDorYSx0aDooZSx0PTEsYT0wKT0+bnVsbD09ZT8wOithLHZpOihlLHQ9MSxhPTApPT5udWxsPT1lPzA6K2Esemg6KGUsdD0xLGE9MCk9Pm51bGw9PWU/MDorYSxoZV9JTDooZSx0PTQsYT0oMT09ZT8wOjI9PWU/MTplPjEwJiZlJTEwPT0wPzI6MykpPT5udWxsPT1lPzA6K2EsY2FfRVM6KGUsdD0yLGE9MSE9ZSk9Pm51bGw9PWU/MDorYSxubF9OTDooZSx0PTIsYT0xIT1lKT0+bnVsbD09ZT8wOithLGh1X0hVOihlLHQ9MSxhPTApPT5udWxsPT1lPzA6K2EsaWRfSUQ6KGUsdD0xLGE9MCk9Pm51bGw9PWU/MDorYSxtc19NWTooZSx0PTEsYT0wKT0+bnVsbD09ZT8wOithLHpoX1RXOihlLHQ9MSxhPTApPT5udWxsPT1lPzA6K2F9LGU9W10saS5PPSh0LGEscixuKT0+e2lmKCFhKXt2YXIgYz0xLzA7Zm9yKGQ9MDtkPGUubGVuZ3RoO2QrKyl7Zm9yKHZhclthLHIsbl09ZVtkXSxmPSEwLGw9MDtsPGEubGVuZ3RoO2wrKykoITEmbnx8Yz49bikmJk9iamVjdC5rZXlzKGkuTykuZXZlcnkoKGU9PmkuT1tlXShhW2xdKSkpP2Euc3BsaWNlKGwtLSwxKTooZj0hMSxuPGMmJihjPW4pKTtpZihmKXtlLnNwbGljZShkLS0sMSk7dmFyIG89cigpO3ZvaWQgMCE9PW8mJih0PW8pfX1yZXR1cm4gdH1uPW58fDA7Zm9yKHZhciBkPWUubGVuZ3RoO2Q+MCYmZVtkLTFdWzJdPm47ZC0tKWVbZF09ZVtkLTFdO2VbZF09W2EscixuXX0saS5uPWU9Pnt2YXIgdD1lJiZlLl9fZXNNb2R1bGU/KCk9PmUuZGVmYXVsdDooKT0+ZTtyZXR1cm4gaS5kKHQse2E6dH0pLHR9LGE9T2JqZWN0LmdldFByb3RvdHlwZU9mP2U9Pk9iamVjdC5nZXRQcm90b3R5cGVPZihlKTplPT5lLl9fcHJvdG9fXyxpLnQ9ZnVuY3Rpb24oZSxyKXtpZigxJnImJihlPXRoaXMoZSkpLDgmcilyZXR1cm4gZTtpZigib2JqZWN0Ij09dHlwZW9mIGUmJmUpe2lmKDQmciYmZS5fX2VzTW9kdWxlKXJldHVybiBlO2lmKDE2JnImJiJmdW5jdGlvbiI9PXR5cGVvZiBlLnRoZW4pcmV0dXJuIGV9dmFyIG49T2JqZWN0LmNyZWF0ZShudWxsKTtpLnIobik7dmFyIGM9e307dD10fHxbbnVsbCxhKHt9KSxhKFtdKSxhKGEpXTtmb3IodmFyIGY9MiZyJiZlOygib2JqZWN0Ij09dHlwZW9mIGZ8fCJmdW5jdGlvbiI9PXR5cGVvZiBmKSYmIX50LmluZGV4T2YoZik7Zj1hKGYpKU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGYpLmZvckVhY2goKHQ9PmNbdF09KCk9PmVbdF0pKTtyZXR1cm4gYy5kZWZhdWx0PSgpPT5lLGkuZChuLGMpLG59LGkuZD0oZSx0KT0+e2Zvcih2YXIgYSBpbiB0KWkubyh0LGEpJiYhaS5vKGUsYSkmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGEse2VudW1lcmFibGU6ITAsZ2V0OnRbYV19KX0saS5mPXt9LGkuZT1lPT5Qcm9taXNlLmFsbChPYmplY3Qua2V5cyhpLmYpLnJlZHVjZSgoKHQsYSk9PihpLmZbYV0oZSx0KSx0KSksW10pKSxpLnU9ZT0+Mjg4MzE9PT1lPyJfX0xBTkdfXy4iK2UrIi5mOWU3MzU2ZmY5MWY4MzdmNDdjNy5qcyI6MjM1Njc9PT1lPyJfX0xBTkdfXy4iK2UrIi41ZmRkYzE1OTk4MTQyY2JjNjFlZi5qcyI6OTI5NjQ9PT1lPyJfX0xBTkdfXy4iK2UrIi5hYTY3MGRkZmQxNjU5NTk2NGFlYi5qcyI6OTQ5NDc9PT1lPyJfX0xBTkdfXy4iK2UrIi43ODM1MGE5OTAzMDU2Yjk5M2MyNi5qcyI6KHsxNjEwOiJjcmVhdGUtdGFiLWxhYmVscy1pbXBsIiwxNjQ2OiJsZWdlbmQtdmlldy1yZW5kZXJlciIsNzM5NzoicGVyaW9kLWZvcm1hdHRlciIsMTM5OTM6InB1c2hzdHJlYW0tbXVsdGlwbGV4ZXIiLDE2ODEzOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtd2l0aC1ib3JkZXItZGF0YS1pbXBsIiwxOTMxMToidGFrZS1zY3JlZW5zaG90IiwyMTI2MDoibnNkLXVucGFjay1pbXBsIiwzNTk4MDoiY2xlYXItb2xkLXNldHRpbmdzIiw0MjcwNjoic2ltcGxlLWRpYWxvZyIsNDQxNjI6InRpbWUtZnJhbWUtdmlldy1yZW5kZXJlciIsNDUzMjI6ImxpZ2h0d2VpZ2h0LWNoYXJ0LXByaWNlLXRpbWUtdG9vbHRpcCIsNjIyMzQ6Im5zZC1pbmZsYXRlLXBha28iLDY0NjQ0OiJyZWFjdCIsNzEzOTQ6ImNtb25leWNvbXR3LWNvcHlyaWdodC1kYXRhLWltcGwiLDc2MDQwOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtbmV3LWRhdGEtaW1wbCIsCjc5MDQxOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtdHJhZGUtd2l0aC1kYXRhLWltcGwiLDg1MDM4OiJsZW50YXJ1LWNvcHlyaWdodC1kYXRhLWltcGwiLDkzMjc5OiJtaW5pLWNoYXJ0LWJhci1idWlsZGVyIiw5NTIwNzoic25vd3Bsb3ctdHJhY2tlci1iYXNlIiw5NzUwOToidHJhZGluZ3ZpZXctY29weXJpZ2h0LWRhdGEtaW1wbCJ9W2VdfHxlKSsiLiIrezE1MzQ6Ijc0ZmZlMWU3MjVhNDY1ZDQzNDFlIiwxNjEwOiIwYjU0Nzc2N2QwN2UwOGJiNzI1MyIsMTY0NjoiOGM4MDAwNWFmMjE1OGJkMDgzZGMiLDcyODU6IjhiYzgyOTI2NjUyOGZhNzRhZjVjIiw3Mzk3OiIwNTllNjIyOTI0MDIzMjcwMTZjNCIsMTIxODE6ImI2NWE1ODM1NWZmN2NjMzQ5NTBmIiwxMzk5MzoiM2IxOTljNmFkOGJmNWMzY2FjNjciLDE2ODEzOiI3ZTQ1MjdiYzU1MjE5ZWEzYWQ3NiIsMTkzMTE6IjYyOGM2ZDNmNzZkYWM4ODJlODJkIiwyMTI2MDoiZDA5NTVhYWU3NWY4N2QzYmQ0MjEiLDI0Njk4OiJiZDk1NzA3MzA5NWJhYjdkYTU5NiIsMjgxNzY6IjIxMzQyODY1ZTc0ZmZiZWZmZjQ0IiwzMjM4NzoiNDdhY2U4M2M2MWE4ODQzNDFjZDYiLDM1OTgwOiJjMzQwNDJhNGExMGNiNWZiMmUzZCIsMzk2MDk6IjhjZTBkNzkzYjJiNjBiZTdhNGQ1Iiw0MjI4ODoiNDdlY2FlY2ExMDEyZWUzZTFkOGMiLDQyNzA2OiI2YjExNWU3Mzc3MjU0M2Y0YmMzMCIsNDQxNjI6IjFlNjJiYzczZGVkODU4MTJmMzQzIiw0NTMyMjoiODg1MWEyZDJlMTVkYjkyMWQ0OGEiLDU1MjI5OiIyNTcyMTg4MTlmYWE2NjM5YTM4OSIsNTU5Njk6IjQzYzM3NDgwMTRkZTJjZDBiZDFjIiw2MjIzNDoiMjIwYjAxYTQyMmQxZGRjOWE2ZTIiLDYzMTYwOiIyYTNhMjExODVmYmNjNzA3OWRhZSIsNjQ2NDQ6IjkwOTkyYzlkMGQ1ZGM5MmM4OWI3Iiw2NTEwMDoiZjQyMmUxYWQwNjAxNmRiMGQ0N2EiLDY5MTEzOiI1ZjQ0MDZhYzhiNDQzNmFmZGMyMyIsNzA2NDQ6IjQ0ODc0M2RlZjMyNWZlYjYxOTY3Iiw3MTMwMDoiYjY3MDk0MzM5NDAzMzlkYzFmNjYiLDcxMzk0OiJlNjM5NzViYTFkMzY3ZGY3YTlkOCIsNzYwNDA6Ijg5YTUxYjk4OGVjNDNlZDA0ZWU3Iiw3OTA0MToiYmI0ZjdjYjA2OGZmYmVlOGNiYmEiLDgwOTE1OiI2OTQwNGZkYThhYWZjMjc0MmM1NSIsODUwMzg6IjRjMGQ2ZGYzMDQ1ZGU0MTczMTc4Iiw4NTQzNDoiYjg1Yjc1ZGY5MWIyMmJhYzhkMzkiLDkzMjc5OiJmMzNiMDVkM2ZmYzI0YTYxNTEyNiIsOTUyMDc6IjQ2NWY4YWYxYWE3MmFjM2ExYzMyIiw5NzUwOToiMjdmMzQ5YTFkNTg0ODNmMjdlYWEifVtlXSsiLmpzIixpLm1pbmlDc3NGPWU9Pjk3Nzk3PT09ZT9lKyIuZDk4NWVlYmU2NzM5N2YwMmZhNjQuY3NzIjo4NDMwNj09PWU/ZSsiLjMxZDZjZmUwZDE2YWU5MzFiNzNjLmNzcyI6NTIzOTY9PT1lP2UrIi5lZDc2Y2FmMmZmZTAxNDQ2MGJhNi5jc3MiOjIwMzU0PT09ZT9lKyIuMmRkZjkzNGY4ZWRjMjgwMmQ5MGEuY3NzIjoxMzQ5Mj09PWU/ZSsiLjJjNzc3MzBkMTEyNWE0OTg1YmRjLmNzcyI6Mzc3NDY9PT1lP2UrIi4zNDUyMjdiYjE2ZTBkOGJjOWJkNS5jc3MiOjEyMzg1PT09ZT9lKyIuNzg1NjFlYmRlZjA1Y2U2NDhiNWQuY3NzIjo4MTA3Mj09PWU/ZSsiLjI5MjdhMTc3MjMxZmRkMGUyNGMxLmNzcyI6OTQyMzI9PT1lP2UrIi5hYjY3MzFiNjk4YThjMjg1NGE5MC5jc3MiOjE3MDg3PT09ZT9lKyIuYTVlYWViMzBmN2QyNjlmOTdiNDEuY3NzIjozNjIyMj09PWU/ZSsiLmU5YmU5YTczM2UxMTQ3MzBhNGVhLmNzcyI6MjM2MjQ9PT1lP2UrIi5kMjM5MGQxN2IxNTA5YjAxODgyNi5jc3MiOjk1MDQ9PT1lPyI5NTA0LjkwMzc3ZjdkNTk0NmNmMzI1NGYwLmNzcyI6NDc2MzI9PT1lP2UrIi4zM2QyYTM3NDVhZjQ5N2UzZGE1ZC5jc3MiOjkxODU1PT09ZT9lKyIuMDA5NzY0ZGE2MWJkOGM4YzQ0YmUuY3NzIjo1ODA1MT09PWU/ZSsiLmM1NDQwNjY1YzNiMzJlNmM2ZGU4LmNzcyI6ZSsiLiIrezU2ODk6IjA3ZDBkODUyNGJhNGI5YWY0YWRiIiw2NDQ1OiJhYzYzNWJhMTUxOTRkZjQ4NDYxNiIsNjU4MzoiYmNjNTc0M2UyMzZmZmM1YjdjY2YiLDcxNjM6ImVjNGU3YmNjMGM3OWUyZTYwNzRkIiw4NTc5OiI2ZjY1MThiZTQyOTM4MjI3ODZlMCIsMTAzNjY6IjA3ZTIwZTdiYmVlMjdjOWQ1ZmJjIiwxMjA1MToiYjg0YmU3ODFiYjkwZDQ1N2YxZGYiLDE5NTk1OiJkOTYyYWI3NWJkM2UxYmFhNWFhZSIsMTk3ODc6ImJiYjY2ZmEwZmQyYmQwNGQwODc1IiwyOTI5NjoiYjQwOGYyODIyZmE1Yjk1NjliYWMiLDMwMzczOiJkZTMyYTNjZGNhZTEyYjE1ZDZkZiIsMzg0MTE6IjVkYjQ0ZWIzOWJkMGJkYzlhMDc4Iiw0MDkxNDoiYThkZDY5NmJlN2RkZTZjZTZkZGIiLDQ0MjUzOiI4NDA1YmFmMzNjM2VmZDAxNTI4ZSIsNDc1NTE6IjhkMmNlNTI0YjM4ZTRhOTI1NDdmIiw1MzUyMToiZGM5YmM3MGE2YTgwZjJjOTRmNTUiLDU3MzAwOiJjMWY1ZmM0ZTE1OTkwNjg1ZmI3MyIsNTk5NDE6ImFmMjJmM2FiODNjZGZjYzM5MzVhIiw2MDA2MjoiNDk1NDQ0YTdmYWMxNzNmYjI4Y2QiLDY3MjEyOiI3Y2ExMmFiN2VjY2YxYzQ4YWVhMSIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0Iiw3ODg5OToiYmI1ZjgxZDk0YmU1YjVhN2JiZDEiLDgwNzgyOiI5NzVmYjQxZDQyYWUyZDUxYzA4YiIsODc3NDA6IjVlMWE3Njc5MGVlNDlhMzc5NWZhIiw4OTU1ODoiOTgxYTM0YjE5YjQxZmFkOTJiODgiLDkwOTYwOiJlYzk0MWFjY2ZhYTNlZDJjZDZlMiJ9W2VdKyIuY3NzIixpLmc9ZnVuY3Rpb24oKXtpZigib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMpcmV0dXJuIGdsb2JhbFRoaXM7dHJ5e3JldHVybiB0aGlzfHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChlKXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdylyZXR1cm4gd2luZG93fX0oKSxpLm89KGUsdCk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpLHI9e30sbj0idHJhZGluZ3ZpZXc6IixpLmw9KGUsdCxhLGMpPT57aWYocltlXSlyW2VdLnB1c2godCk7ZWxzZXt2YXIgZixsCjtpZih2b2lkIDAhPT1hKWZvcih2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZD0wO2Q8by5sZW5ndGg7ZCsrKXt2YXIgcz1vW2RdO2lmKHMuZ2V0QXR0cmlidXRlKCJzcmMiKT09ZXx8cy5nZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIpPT1uK2Epe2Y9czticmVha319Znx8KGw9ITAsKGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IikpLmNoYXJzZXQ9InV0Zi04IixpLm5jJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGkubmMpLGYuc2V0QXR0cmlidXRlKCJkYXRhLXdlYnBhY2siLG4rYSksZi5zcmM9ZSwwIT09Zi5zcmMuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihmLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSkscltlXT1bdF07dmFyIHU9KHQsYSk9PntmLm9uZXJyb3I9Zi5vbmxvYWQ9bnVsbCxjbGVhclRpbWVvdXQoYik7dmFyIG49cltlXTtpZihkZWxldGUgcltlXSxmLnBhcmVudE5vZGUmJmYucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChmKSxuJiZuLmZvckVhY2goKGU9PmUoYSkpKSx0KXJldHVybiB0KGEpfSxiPXNldFRpbWVvdXQodS5iaW5kKG51bGwsdm9pZCAwLHt0eXBlOiJ0aW1lb3V0Iix0YXJnZXQ6Zn0pLDEyZTQpO2Yub25lcnJvcj11LmJpbmQobnVsbCxmLm9uZXJyb3IpLGYub25sb2FkPXUuYmluZChudWxsLGYub25sb2FkKSxsJiZkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGYpfX0saS5yPWU9PnsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxpLmo9MTg4MzcsKCgpPT57dmFyIGU7aS5nLmltcG9ydFNjcmlwdHMmJihlPWkuZy5sb2NhdGlvbisiIik7dmFyIHQ9aS5nLmRvY3VtZW50O2lmKCFlJiZ0JiYodC5jdXJyZW50U2NyaXB0JiYiU0NSSVBUIj09PXQuY3VycmVudFNjcmlwdC50YWdOYW1lLnRvVXBwZXJDYXNlKCkmJihlPXQuY3VycmVudFNjcmlwdC5zcmMpLCFlKSl7dmFyIGE9dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0Iik7aWYoYS5sZW5ndGgpZm9yKHZhciByPWEubGVuZ3RoLTE7cj4tMSYmKCFlfHwhL15odHRwKHM/KTovLnRlc3QoZSkpOyllPWFbci0tXS5zcmN9aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBdXRvbWF0aWMgcHVibGljUGF0aCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3NlciIpO2U9ZS5yZXBsYWNlKC9eYmxvYjovLCIiKS5yZXBsYWNlKC8jLiokLywiIikucmVwbGFjZSgvXD8uKiQvLCIiKS5yZXBsYWNlKC9cL1teXC9dKyQvLCIvIiksaS5wPWV9KSgpLGkuZy5sb2NhdGlvbiYmaS5wLnN0YXJ0c1dpdGgoaS5nLmxvY2F0aW9uLm9yaWdpbikmJihpLnA9aS5wLnNsaWNlKGkuZy5sb2NhdGlvbi5vcmlnaW4ubGVuZ3RoKSksKCgpPT57Y29uc3QgZT1pLnU7aS51PXQ9PmUodCkucmVwbGFjZSgiX19MQU5HX18iLGkuZy5sYW5ndWFnZSl9KSgpLCgoKT0+e3ZhciBlPWkuZSx0PU9iamVjdC5jcmVhdGUobnVsbCk7ZnVuY3Rpb24gYSh0LHIpe3JldHVybiBlKHQpLmNhdGNoKChmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24obil7dmFyIGM9ZnVuY3Rpb24oKXtzZWxmLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsYywhMSksITE9PT1uYXZpZ2F0b3Iub25MaW5lP3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixjLCExKTpuKHI8Mj9hKHQscisxKTplKHQpKX07c2V0VGltZW91dChjLHIqcioxZTMpfSkpfSkpfWkuZT1mdW5jdGlvbihlKXtpZighdFtlXSl7dFtlXT1hKGUsMCk7dmFyIHI9ZnVuY3Rpb24oKXtkZWxldGUgdFtlXX07dFtlXS50aGVuKHIscil9cmV0dXJuIHRbZV19fSkoKSwoKCk9PntpZigidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50KXt2YXIgZT1lPT5uZXcgUHJvbWlzZSgoKHQsYSk9Pnt2YXIgcj1pLm1pbmlDc3NGKGUpLG49aS5wK3I7aWYoKChlLHQpPT57Zm9yKHZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsaW5rIikscj0wO3I8YS5sZW5ndGg7cisrKXt2YXIgbj0oZj1hW3JdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpfHxmLmdldEF0dHJpYnV0ZSgiaHJlZiIpO2lmKCJzdHlsZXNoZWV0Ij09PWYucmVsJiYobj09PWV8fG49PT10KSlyZXR1cm4gZn12YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3R5bGUiKTtmb3Iocj0wO3I8Yy5sZW5ndGg7cisrKXt2YXIgZjtpZigobj0oZj1jW3JdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpKT09PWV8fG49PT10KXJldHVybiBmfX0pKHIsbikpcmV0dXJuIHQoKTsoKGUsdCxhLHIsbik9Pnt2YXIgYz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7Yy5yZWw9InN0eWxlc2hlZXQiLGMudHlwZT0idGV4dC9jc3MiLGMub25lcnJvcj1jLm9ubG9hZD1hPT57aWYoYy5vbmVycm9yPWMub25sb2FkPW51bGwsImxvYWQiPT09YS50eXBlKXIoKTtlbHNle3ZhciBmPWEmJigibG9hZCI9PT1hLnR5cGU/Im1pc3NpbmciOmEudHlwZSksaT1hJiZhLnRhcmdldCYmYS50YXJnZXQuaHJlZnx8dCxsPW5ldyBFcnJvcigiTG9hZGluZyBDU1MgY2h1bmsgIitlKyIgZmFpbGVkLlxuKCIraSsiKSIpO2wuY29kZT0iQ1NTX0NIVU5LX0xPQURfRkFJTEVEIixsLnR5cGU9ZixsLnJlcXVlc3Q9aSxjLnBhcmVudE5vZGUmJmMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChjKSxuKGwpfX0sYy5ocmVmPXQsMCE9PWMuaHJlZi5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKGMuY3Jvc3NPcmlnaW49ImFub255bW91cyIpLGE/YS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLGEubmV4dFNpYmxpbmcpOmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYyl9KShlLG4sbnVsbCx0LGEpfSkpLHQ9ezE4ODM3OjB9O2kuZi5taW5pQ3NzPShhLHIpPT57dFthXT9yLnB1c2godFthXSk6MCE9PXRbYV0mJns1Njg5OjEsNjQ0NToxLDY1ODM6MSw3MTYzOjEsODU3OToxLDk1MDQ6MSwxMDM2NjoxLDEyMDUxOjEsMTIzODU6MSwKMTM0OTI6MSwxNzA4NzoxLDE5NTk1OjEsMTk3ODc6MSwyMDM1NDoxLDIzNjI0OjEsMjkyOTY6MSwzMDM3MzoxLDM2MjIyOjEsMzc3NDY6MSwzODQxMToxLDQwOTE0OjEsNDQyNTM6MSw0NzU1MToxLDQ3NjMyOjEsNTIzOTY6MSw1MzUyMToxLDU3MzAwOjEsNTgwNTE6MSw1OTk0MToxLDYwMDYyOjEsNjcyMTI6MSw3NDAxMToxLDc4ODk5OjEsODA3ODI6MSw4MTA3MjoxLDg0MzA2OjEsODc3NDA6MSw4OTU1ODoxLDkwOTYwOjEsOTE4NTU6MSw5NDIzMjoxLDk3Nzk3OjF9W2FdJiZyLnB1c2godFthXT1lKGEpLnRoZW4oKCgpPT57dFthXT0wfSksKGU9Pnt0aHJvdyBkZWxldGUgdFthXSxlfSkpKX19fSkoKSxpLmkxOG5leHQ9KGUsdD17fSxhLHI9aS5nLmxhbmd1YWdlKT0+e2lmKG51bGw9PT1lKXtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBhW3ZvaWQgMD09PXQuY291bnQ/MDppLl9wbHVyYWxbcl0odC5jb3VudCldLnJlcGxhY2UoL3soXHcrKX0vZywoKGUsYSk9PnZvaWQgMCE9PSh0LnJlcGxhY2V8fHQpW2FdPyh0LnJlcGxhY2V8fHQpW2FdOmUpKTtpZigib2JqZWN0Ij09dHlwZW9mIGEpcmV0dXJuIGFbaS5nLmxhbmd1YWdlXT9pLmkxOG5leHQobnVsbCx0LGFbaS5nLmxhbmd1YWdlXSk6aS5pMThuZXh0KG51bGwsdCxhLmVuLCJlbiIpfWVsc2UgaWYoYSYmZSl7Y29uc3Qgcj1gJHtlfSR7dC5jb250ZXh0P2BfJHt0LmNvbnRleHR9YDoiIn1gO2lmKGFbcl0pcmV0dXJuIGkuaTE4bmV4dChudWxsLHQsYVtyXSl9cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKToic3RyaW5nIiE9dHlwZW9mIGU/IiI6ZX0sKCgpPT57dmFyIGU9ezE4ODM3OjAsNDY5MDc6MCwzMjgxNjowLDQzMzI1OjAsMzkwNTowLDE1OTMyOjAsNTQ2ODE6MCw1MTUwODowLDMyNjMyOjAsODQwODowLDM4MDAyOjAsNjI2MzA6MCw2MjY4MTowLDU2OTk5OjAsNDQ0NTQ6MH07aS5mLmo9KHQsYSk9Pnt2YXIgcj1pLm8oZSx0KT9lW3RdOnZvaWQgMDtpZigwIT09cilpZihyKWEucHVzaChyWzJdKTtlbHNlIGlmKC9eKDEoKDcwOHw4ODN8OTc4KTd8MDM2NnwyMDUxfDIzODV8MzQ5Mnw1OTMyfDk1OTUpfDIoMDM1NHwzNjI0fDkyOTYpfDMoKDI2M3w2MjJ8ODAwKTJ8MDM3M3wyODE2fDc3NDZ8ODQxMXw5MDUpfDQoMDkxNHwzMzI1fDQyNTN8NDQ1NHw2OTA3fDc1NTF8NzYzMil8NSgoMzUyfDQ2OHw4MDV8OTk0KTF8MTUwOHwyMzk2fDY4OXw2OTk5fDczMDApfDYoMjYoMzB8ODEpfDAwNjJ8NDQ1fDU4M3w3MjEyKXw3KDE2M3w0MDExfDg4OTkpfDgoMDc4MnwxMDcyfDQwOHw0MzA2fDU3OXw3NzQwfDk1NTgpfDkoMDk2MHwxODU1fDQyMzJ8NTA0fDc3OTcpKSQvLnRlc3QodCkpZVt0XT0wO2Vsc2V7dmFyIG49bmV3IFByb21pc2UoKChhLG4pPT5yPWVbdF09W2Esbl0pKTthLnB1c2goclsyXT1uKTt2YXIgYz1pLnAraS51KHQpLGY9bmV3IEVycm9yO2kubChjLChhPT57aWYoaS5vKGUsdCkmJigwIT09KHI9ZVt0XSkmJihlW3RdPXZvaWQgMCkscikpe3ZhciBuPWEmJigibG9hZCI9PT1hLnR5cGU/Im1pc3NpbmciOmEudHlwZSksYz1hJiZhLnRhcmdldCYmYS50YXJnZXQuc3JjO2YubWVzc2FnZT0iTG9hZGluZyBjaHVuayAiK3QrIiBmYWlsZWQuXG4oIituKyI6ICIrYysiKSIsZi5uYW1lPSJDaHVua0xvYWRFcnJvciIsZi50eXBlPW4sZi5yZXF1ZXN0PWMsclsxXShmKX19KSwiY2h1bmstIit0LHQpfX0saS5PLmo9dD0+MD09PWVbdF07dmFyIHQ9KHQsYSk9Pnt2YXIgcixuLFtjLGYsbF09YSxvPTA7aWYoYy5zb21lKCh0PT4wIT09ZVt0XSkpKXtmb3IociBpbiBmKWkubyhmLHIpJiYoaS5tW3JdPWZbcl0pO2lmKGwpdmFyIGQ9bChpKX1mb3IodCYmdChhKTtvPGMubGVuZ3RoO28rKyluPWNbb10saS5vKGUsbikmJmVbbl0mJmVbbl1bMF0oKSxlW25dPTA7cmV0dXJuIGkuTyhkKX0sYT1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdO2EuZm9yRWFjaCh0LmJpbmQobnVsbCwwKSksYS5wdXNoPXQuYmluZChudWxsLGEucHVzaC5iaW5kKGEpKX0pKCksaS5wPWkuZyYmaS5nLldFQlBBQ0tfUFVCTElDX1BBVEh8fGkucH0pKCk7"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"wss","addr":"wss://widgetdata.tradingview.com/socket.io/websocket?from=embed-widget%2Fticker-tape%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=persimmontrades.com%2F\u0026ancestor-origin=persimmontrades.com\u0026api_key=tradingview","fqdn":"widgetdata.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"93.123.102.177","port":443,"asn":199524,"as":"G-Core Labs S.A.","country":"United Kingdom","country_code":"GB"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.464Z","timestamp":1785154590464,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Wed, 18 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"96:06:76:35:9F:2C:2D:1C:89:55:E8:92:7C:4F:4B:FD:E9:F6:FF:1A","sha256":"BC:FA:33:CE:19:85:7A:43:44:BA:17:CE:87:15:42:E2:02:0C:7A:4E:83:42:1F:58:8F:59:B4:20:BF:4B:35:00"}}},"request":{"raw":"GET /socket.io/websocket?from=embed-widget%2Fticker-tape%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=persimmontrades.com%2F\u0026ancestor-origin=persimmontrades.com\u0026api_key=tradingview HTTP/1.1\r\nHost: widgetdata.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-WebSocket-Version: 13\r\nOrigin: https://www.tradingview-widget.com\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: CTJwHySDvHWUU4RZjS1W5Q==\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 12:16:30 GMT\r\nConnection: upgrade\r\nsec-websocket-accept: ZGPmeLb9CISM1nHInoLJPdyLBCE=\r\nsec-websocket-extensions: permessage-deflate\r\nupgrade: websocket\r\nServer: tv\r\n\r\n","headers":null,"cookies":null,"status_code":"101","status_text":"Switching Protocols","fingerprints":null,"data":{"size":0,"size_decoded":224,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":104,"timings":{"blocked":-1,"dns":3,"connect":21,"send":0,"wait":23,"receive":0,"ssl":56},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3905.682e89ef2dc4c70423c6.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.804Z","timestamp":1785154590804,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3905.682e89ef2dc4c70423c6.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-23c4\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 230357f5365997de941a33528d310be1\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9156,"size_decoded":2695,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9156), with no line terminators","md5":"585b0debea11681772c2af93fac32f6f","sha1":"239ef62778933c4ffbb2003ad1da3ab7f1c412e6","sha256":"7a6f9ce2286878bf4b28af0ff0922e443fe7fd6f6289968222d35cacb1fd8f85","sha512":"f37cf7f51a2fb42cf0f1822ddea62c13673cc6ac0dd4e9ec40de3f0387a5fc680d4eeec0d9d2b81cbc71136e743b6e8692b20d29e16cd72a6c83c741eea6239e","ssdeep":"192:aB56ZYifpWjOHpRSvoAyGGoCARk3NPmHHZ+DG4x8:ayXsh","tlshash":"6612cf5bf5e30baa2f63e1255a2d7b48516773062887a5f5ee42f3e045caec216036cc","first_seen":"2026-03-24T10:38:42.78469Z","last_seen":"2026-07-27T14:18:36.423283Z","times_seen":6617,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtd01EZjojMDAwMDstLV8xLXdNRGY6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tXzItd01EZjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8zLXdNRGY6IzAwMDB9W2RhdGEtdGhlbWU9ZGFya117LS1fMC13TURmOiMwMDAwOy0tXzEtd01EZjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1fMi13TURmOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzMtd01EZjojMDAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxM3B4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6dmFyKC0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dCk7ZGlzcGxheTppbmxpbmUtZmxleDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtLWhpZGRlbi1FSkJEOTZ6WHtvcGFjaXR5OjB9LmNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYe21hcmdpbjo0cHggMH0uY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elh7bWFyZ2luOjhweCAwfS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elh7bWFyZ2luOjAgNHB4fS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WHttYXJnaW46MCA4cHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvd30uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zLUVKQkQ5NnpYLC5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXItRUpCRDk2elh7Ym9yZGVyLWVuZC1lbmQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoycHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1lbmQ6MXB4fS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MnB4O2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgsLmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjFweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elh7cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXIsLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItbGVmdDo2cHggc29saWQ7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tXzMtd01EZik7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tXzMtd01EZik7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTZweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6NHB4O2JvdHRvbToxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXRvcC13aWR0aDo0cHg7dG9wOjEwMCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDphZnRlcntib3JkZXItYm90dG9tOjZweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8zLXdNRGYpO2JvcmRlci10b3A6NnB4IHNvbGlkO2JvcmRlci10b3AtY29sb3I6dmFyKC0tXzMtd01EZik7bWFyZ2luLXRvcDotNnB4O3RvcDo1MCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LXdpZHRoOjRweDtyaWdodDoxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWxlZnQtd2lkdGg6NHB4O2xlZnQ6MTAwJX0uY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjMxMHB4O3BhZGRpbmc6M3B4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpzdGFydH0uY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5LUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzowfS5jb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZS1FSkJEOTZ6WHttYXgtd2lkdGg6NjQwcHh9LmNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elh7bWF4LXdpZHRoOjIwMHB4fS5jb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZy1FSkJEOTZ6WHtwYWRkaW5nOjB9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDoxIDAgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjEycHg7bWFyZ2luOjNweCAwO3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXItRUpCRDk2elg6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTttYXJnaW4taW5saW5lLWVuZDo4cHg7d2lkdGg6MXB4fS5jb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQtRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjNweCA4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uLUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtoZWlnaHQ6MThweDtwYWRkaW5nOjFweCA2cHg7d2lkdGg6YXV0bzstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WHtoZWlnaHQ6MTVweDtsaW5lLWhlaWdodDoxNHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEzcHh9LmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19idXR0b24tRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX19LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6MH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItaW5saW5lLWVuZDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tXzAtd01EZik7Ym9yZGVyLWlubGluZS1zdGFydDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1fMC13TURmKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YmVmb3Jle2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmUsLmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YmVmb3Jle2JvcmRlci1pbmxpbmUtZW5kOjdweCBzb2xpZDtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItaW5saW5lLXN0YXJ0OjdweCBzb2xpZDtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLV8wLXdNRGYpO2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWlubGluZS1zdGFydDotN3B4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItYm90dG9tLXdpZHRoOjZweDt0b3A6LTZweH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLXRvcC13aWR0aDo2cHg7Ym90dG9tOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YmVmb3JlLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWJvdHRvbTo3cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjdweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpO21hcmdpbi10b3A6LTdweDt0b3A6NTAlfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWlubGluZS1lbmQtd2lkdGg6NnB4O2luc2V0LWlubGluZS1zdGFydDotNnB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjZweDtpbnNldC1pbmxpbmUtZW5kOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvd3tib3gtc2hhZG93OjAgMXB4IDNweCAwICMyYTJjMzk0YTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtcm91bmQtc2hhZG93IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWlubGluZS1lbmQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtZW5kLWNvbG9yOnZhcigtLV8wLXdNRGYpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAtd01EZil9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmFmdGVyLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1jaGFydCAuY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTttYXgtd2lkdGg6MzQycHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLWNoYXJ0IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLW5ld3MgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czo4cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7bWF4LXdpZHRoOjMyMHB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1uZXdzIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/indices/nasdaq-100.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.179Z","timestamp":1785154591179,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /indices/nasdaq-100.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"e43547b28d52708527e1a93ed81a65a7\"\r\nlast-modified: Fri, 09 Jan 2026 13:46:11 GMT\r\nx-amz-id-2: Ut768fvv6CqolLoHMm1SzecLOAJ9udCAk/7mrw0tp6dHw2zVKY2n3szIptBZGaty1gMDDdfbmQ54Vl4LuLguQLLdCENUwYijguaOG44xTFI=\r\nx-amz-request-id: ZR1Z43GWF09180KJ\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: e43547b28d52708527e1a93ed81a65a7\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/09/2026 15:15:32\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 98912f0a754bf7d43791be32c6344204\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":595,"size_decoded":1293,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (595), with no line terminators","md5":"e43547b28d52708527e1a93ed81a65a7","sha1":"cea5f013e01ff1dcd32d3cca0bebb7bb45f759f3","sha256":"ba307d8fb558b6f6e51d2e263f39b8c41440fa8765c14ae0dd6b6d9a7ecc0ead","sha512":"2ee4d4edb6b9450c0cce1e631ed0b2fcc95b92c9a57b3eee5f6b49587350659c98ca38c9207d46648750699cc1a3ff8525a414b7e47de95b70672d69395591e9","ssdeep":"","tlshash":"7af0ac926b15afdd67138b42cd505188098f68e5f24a83dcb13152bcd4467c3bc5052c","first_seen":"2026-01-10T04:08:40.597074Z","last_seen":"2026-07-27T14:20:57.304071Z","times_seen":2773,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMDkxQkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMy41IDExLjloMS4yVjYuMUgzLjVMMiA3LjE0djEuMDhsMS40Ny0xaC4wM3Y0LjY4Wk04LjI3IDEyYzEuNDYgMCAyLjM1LTEuMTUgMi4zNS0zcy0uODktMy0yLjM1LTMtMi4zNSAxLjE1LTIuMzUgMyAuODkgMyAyLjM1IDNabTAtLjk3Yy0uNzIgMC0xLjEzLS43NS0xLjEzLTIuMDMgMC0xLjI4LjQxLTIuMDMgMS4xMy0yLjAzUzkuNCA3LjcyIDkuNCA5VjljMCAxLjI4LS40MSAyLjAzLTEuMTMgMi4wM1pNMTMuNjUgMTJDMTUuMSAxMiAxNiAxMC44NSAxNiA5cy0uODktMy0yLjM1LTNjLTEuNDcgMC0yLjM2IDEuMTUtMi4zNiAzcy45IDMgMi4zNiAzWm0wLS45N2MtLjcyIDAtMS4xMy0uNzUtMS4xMy0yLjAzIDAtMS4yOC40LTIuMDMgMS4xMy0yLjAzLjcyIDAgMS4xMy43NSAxLjEzIDIuMDJWOWMwIDEuMjgtLjQxIDIuMDMtMS4xMyAyLjAzWiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"time_used":58,"timings":{"blocked":-1,"dns":23,"connect":24,"send":0,"wait":2,"receive":-1,"ssl":7},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32816.355d75b21ae4b534a849.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.169Z","timestamp":1785154590169,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32816.355d75b21ae4b534a849.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-102a\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 0b28670538b7952b1d2319854cd903df\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4138,"size_decoded":1890,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4138), with no line terminators","md5":"1769fde9875fdbb634439ca894f9dbe9","sha1":"44ac405e2cfa40ef07cbca4bf97d2226e51258d3","sha256":"8b2250108bfd0dcb2848b28cd1bf2fec55df68d3105b3bf87664cfd86cf2ff10","sha512":"b537406a03c65c8c9859d1e4cb17c37e062cc846b9e763763bbbfa0670ed74ffd1a3f571e5e7654a7b809c6810990a95babd6183fced394492ae1095b4193bcf","ssdeep":"48:D+GIP+GI2LrVLjVQqpz5Cw83JJMeFtQSphXivmRE0r/VC5WNHC5mNVd:DaRLBLpQqpVv0JKOTphXiuREIVweHwmZ","tlshash":"f5814858835c4dafbb2647826762fc582164e3feb2324b6c534924fd46b4d6d39332c5","first_seen":"2026-07-16T11:36:17.974176Z","last_seen":"2026-07-27T14:18:36.41289Z","times_seen":1819,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtODRvdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLTg0b3Q6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnBhaXIteHdHc1NYUjB7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmV9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDoxNHB4O3dpZHRoOjE0cHh9LnBhaXIteHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ucGFpci14d0dzU1hSMC54eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9LnBhaXIteHdHc1NYUjAuc21hbGwteHdHc1NYUjB7aGVpZ2h0OjI4cHg7d2lkdGg6MjhweH0ucGFpci14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweH0ucGFpci14d0dzU1hSMC5sYXJnZS14d0dzU1hSMHtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS5wYWlyLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NTZweDt3aWR0aDo1NnB4fS5wYWlyLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjB7aGVpZ2h0OjExMnB4O3dpZHRoOjExMnB4fS5wYWlyLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxNjhweDt3aWR0aDoxNjhweH0ucGFpci14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjEycHh9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHh9LmxvZ28teHdHc1NYUjB7Ym9yZGVyLXJhZGl1czo1MCV9LmxvZ28teHdHc1NYUjA6bm90KGltZyl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC04NG90KX0ubG9nby14d0dzU1hSMDpmaXJzdC1jaGlsZCwubG9nby14d0dzU1hSMDpsYXN0LWNoaWxke3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHg7d2lkdGg6OHB4fS5sb2dvLXh3R3NTWFIwLnh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTZweCl9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtOHB4KX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNnB4LDZweCl9LmxvZ28teHdHc1NYUjAueHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMHtoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS5sb2dvLXh3R3NTWFIwLnNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTBweCwxMHB4KX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LDEycHgpfS5sb2dvLXh3R3NTWFIwLmxhcmdlLXh3R3NTWFIwe2hlaWdodDozMnB4O3dpZHRoOjMycHh9LmxvZ28teHdHc1NYUjAubGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xNnB4LDE2cHgpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6MzhweDt3aWR0aDozOHB4fS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTE4cHgsMThweCl9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NzZweDt3aWR0aDo3NnB4fS5sb2dvLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0zNnB4LDM2cHgpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxMTRweDt3aWR0aDoxMTRweH0ubG9nby14d0dzU1hSMC54eHhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTU0cHgsNTRweCl9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwOmxhc3QtY2hpbGR7b3V0bGluZToxcHggc29saWQgdmFyKC0tdWktbGliLWJhZGdlLWFjdHVhbC1iYWNrZ3JvdW5kKX0ubG9nby14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0zLjc0ODgyIDExLjU2MzRDNS4xNDIzOSAxMC4xMjM2IDYgOC4xNjE5OCA2IDZDNiAzLjgzODAyIDUuMTQyMzkgMS44NzYzNSAzLjc0ODgyIDAuNDM2NjE3QzQuNDQzOTYgMC4xNTUwNTYgNS4yMDM4NyAtNS45NDEzNmUtMDcgNiAtNS4yNDUzN2UtMDdDOS4zMTM3MSAtMi4zNDg0M2UtMDcgMTIgMi42ODYyOSAxMiA2QzEyIDkuMzEzNzEgOS4zMTM3MSAxMiA2IDEyQzUuMjAzODcgMTIgNC40NDM5NiAxMS44NDQ5IDMuNzQ4ODIgMTEuNTYzNFoiKX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTEyIDBIMHY0YTggOCAwIDAgMSA4IDhoNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0xMiAwSDB2Ni4yNTRBOCA4IDAgMCAxIDUuNzQ2IDEySDEyWiIpfS5sb2dvLXh3R3NTWFIwLnhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE2IDhBOCA4IDAgMCAwIC4zIDZhMTAgMTAgMCAwIDEgOS43IDkuN0E4IDggMCAwIDAgMTYgOFoiKX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE4IDBIMHY4LjA0QTExIDExIDAgMCAxIDkuOTYgMThIMThWMFoiKX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0yNCAwSDB2MTBjOCAwIDE0IDYgMTQgMTRoMTBWMFoiKX0ubG9nby14d0dzU1hSMC5sYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTMyIDBIMHYxNGExOCAxOCAwIDAgMSAxOCAxOGgxNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTM4IDBIMHYxNi4wMkwxIDE2YTIxIDIxIDAgMCAxIDIwLjk4IDIySDM4VjBaIil9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTc2IDBIMHYzMi4wNUE0MiA0MiAwIDAgMSA0My45NSA3Nkg3NlYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwOmZpcnN0LWNoaWxke2NsaXAtcGF0aDpwYXRoKCJNMTEzIDBIMFY0OGMzNS0xIDY2IDI2IDY2IDY2djBoNDhWMFoiKX0uc2tlbGV0b24teHdHc1NYUjB7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9LmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tbGlnaHQuNmQwYjczMWFjNmY0ODlmMDZlNjUuc3ZnKTtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbn1odG1sLnRoZW1lLWRhcmsgLmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tZGFyay5kNmQwN2JmZjkyZDdlNGRmZjVhZC5zdmcpfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7278.738759ef0ac33469253b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.234Z","timestamp":1785154590234,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/7278.738759ef0ac33469253b.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-7592\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6dcbd245f9102994fa41c144cf1e5d80\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":30098,"size_decoded":10551,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0b8a552598142ab8089cd94992779448","sha1":"87a17e3637b405af0a42d322fc032cfd1da668b2","sha256":"22e612835027b9e83688180a91ed31c88f1ccb25ae05dc6866015bd73cb709a8","sha512":"3117f337cfd3fac0235478fc1c3bed80263bf95c521e7d287c8d86eada785db4a298db00b8523d0c3f22c5bced964bb3c73d3b355fb4211325d32ddc24fdcb10","ssdeep":"768:FbBK1Dsf6MP7AAKZAlrHp4Czh1HBvJ+vmdv2cKWPUqz+1xKGDZwYzYAlFKVGjqtr:UsfDP7ADAzlRBvJ++dv2cKWPUqz+1xK9","tlshash":"52d2940ab26054a711db01db4077405bea3fa6e9a04185befa688cdd0b6ee4c3167b7d","first_seen":"2026-07-23T13:38:20.531806Z","last_seen":"2026-07-27T14:18:36.413596Z","times_seen":1302,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3Mjc4XSx7ODYwMDI1KHQpe3QuZXhwb3J0cz17cGFpcjoicGFpci14d0dzU1hSMCIseHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzOiJ4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMteHdHc1NYUjAiLHh4eHhzbWFsbDoieHh4eHNtYWxsLXh3R3NTWFIwIix4eHhzbWFsbDoieHh4c21hbGwteHdHc1NYUjAiLHh4c21hbGw6Inh4c21hbGwteHdHc1NYUjAiLHhzbWFsbDoieHNtYWxsLXh3R3NTWFIwIixzbWFsbDoic21hbGwteHdHc1NYUjAiLG1lZGl1bToibWVkaXVtLXh3R3NTWFIwIixsYXJnZToibGFyZ2UteHdHc1NYUjAiLHhsYXJnZToieGxhcmdlLXh3R3NTWFIwIix4eGxhcmdlOiJ4eGxhcmdlLXh3R3NTWFIwIix4eHhsYXJnZToieHh4bGFyZ2UteHdHc1NYUjAiLGxvZ286ImxvZ28teHdHc1NYUjAiLHNrZWxldG9uOiJza2VsZXRvbi14d0dzU1hSMCIsZW1wdHk6ImVtcHR5LXh3R3NTWFIwIn19LDE0MDAxNyh0KXt0LmV4cG9ydHM9e2xvZ286ImxvZ28tVkNOS3ViV3EiLGhpZGRlbjoiaGlkZGVuLVZDTkt1YldxIix4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjM6Inh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy1WQ05LdWJXcSIseHh4c21hbGw6Inh4eHNtYWxsLVZDTkt1YldxIix4eHNtYWxsOiJ4eHNtYWxsLVZDTkt1YldxIix4c21hbGw6InhzbWFsbC1WQ05LdWJXcSIsc21hbGw6InNtYWxsLVZDTkt1YldxIixtZWRpdW06Im1lZGl1bS1WQ05LdWJXcSIsbGFyZ2U6ImxhcmdlLVZDTkt1YldxIix4bGFyZ2U6InhsYXJnZS1WQ05LdWJXcSIseHhsYXJnZToieHhsYXJnZS1WQ05LdWJXcSIseHh4bGFyZ2U6Inh4eGxhcmdlLVZDTkt1YldxIixza2VsZXRvbjoic2tlbGV0b24tVkNOS3ViV3EiLGxldHRlcjoibGV0dGVyLVZDTkt1YldxIn19LDk3NTI4NSh0KXt0LmV4cG9ydHM9e3dyYXBwZXI6IndyYXBwZXItaGN0MnlKdksiLGFuaW1hdGVkOiJhbmltYXRlZC1oY3QyeUp2SyIscHVsc2F0aW9uOiJwdWxzYXRpb24taGN0MnlKdksifX0sMjM1NzI0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse01vZGlmaWVyczooKT0+cixoYXNoRnJvbUV2ZW50OigpPT5sLGlzTWFjS2V5Ym9hcmQ6KCk9Pm4sbW9kaWZpZXJzRnJvbUV2ZW50OigpPT5hfSk7dmFyIGksbz1zKDczODQ1OCk7IWZ1bmN0aW9uKHQpe3RbdC5LZXlDb2RlPTI1NV09IktleUNvZGUiLHRbdC5Db250cm9sPTI1Nl09IkNvbnRyb2wiLHRbdC5BbHQ9NTEyXT0iQWx0Iix0W3QuU2hpZnQ9MTAyNF09IlNoaWZ0Iix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KGl8fChpPXt9KSk7Y29uc3Qgbj1vLmlzTWFjfHxvLmlzSU9TO3ZhciByO2Z1bmN0aW9uIGEodCl7bGV0IGU9MDtyZXR1cm4gdC5zaGlmdEtleSYmKGUrPTEwMjQpLHQuYWx0S2V5JiYoZSs9NTEyKSx0LmN0cmxLZXkmJihlKz0yNTYpLHQubWV0YUtleSYmKGUrPTIwNDgpLGV9ZnVuY3Rpb24gbCh0KXtyZXR1cm4gYSh0KXx0LmtleUNvZGV9IWZ1bmN0aW9uKHQpe3RbdC5Ob25lPTBdPSJOb25lIix0W3QuQWx0PTUxMl09IkFsdCIsdFt0LlNoaWZ0PTEwMjRdPSJTaGlmdCIsdFt0Lk1vZD1uPzIwNDg6MjU2XT0iTW9kIix0W3QuQ29udHJvbD0yNTZdPSJDb250cm9sIix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KHJ8fChyPXt9KSk7Y29uc3QgaD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4Om4/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0sYz17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCB0PTE7dDw9MTY7dCsrKWhbdCsxMTFdPWBGJHt0fWAsY1t0KzExMV09YEYke3R9YH0sODM3ODIyKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldENpcmNsZUxvZ29BbnlIdG1sOigpPT5ufSk7dmFyIGk9cyg4ODQ3OTgpLG89cygxNTIxODIpO2Z1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybHM6ZSwuLi5zfT10O3JldHVybiAxPT09ZS5sZW5ndGg/KDAsaS5nZXRDaXJjbGVMb2dvSHRtbCkoe2xvZ29Vcmw6ZVswXSwuLi5zfSk6Mj09PWUubGVuZ3RoPygwLG8uZ2V0Q2lyY2xlTG9nb1BhaXJIdG1sKSh7cHJpbWFyeUxvZ29Vcmw6ZVswXSxzZWNvbmRhcnlMb2dvVXJsOmVbMV0sLi4uc30pOigwLGkuZ2V0Q2lyY2xlTG9nb0h0bWwpKHtsb2dvVXJsOnZvaWQgMCwuLi5zfSl9fSwxNTIxODIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0Q2lyY2xlTG9nb1BhaXJIdG1sOigpPT5vfSk7dmFyIGk9cyg2Mjc4NDgpO2Z1bmN0aW9uIG8odCl7Y29uc3R7cHJpbWFyeUxvZ29Vcmw6ZSxzZWNvbmRhcnlMb2dvVXJsOnMsc2l6ZTpvLGNsYXNzTmFtZTpyfT10O3JldHVybmA8c3BhbiBjbGFzcz0iJHsoMCxpLmdldEJsb2NrU3R5bGVDbGFzc2VzKShvLHIpfSI+XG5cdFx0XHQke24oe2xvZ29Vcmw6cyxzaXplOm99KX1cblx0XHRcdCR7bih7bG9nb1VybDplLHNpemU6b30pfVxuXHRcdDwvc3Bhbj5gfWZ1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybDplLHNpemU6c309dCxvPSgwLGkuZ2V0TG9nb1N0eWxlQ2xhc3NlcykocywyLEJvb2xlYW4oZSkpO3JldHVybiB2b2lkIDA9PT1lP2A8c3BhbiBjbGFzcz0iJHtvfSI+PC9zcGFuPmA6YDxpbWcgY2xhc3M9IiR7b30iIGNyb3Nzb3JpZ2luIHNyYz0iJHtlfSIgYWx0PSIiIC8+YH19LDYyNzg0OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRCbG9ja1N0eWxlQ2xhc3NlczooKT0+bCxnZXRMb2dvU3R5bGVDbGFzc2VzOigpPT5ofSk7dmFyIGk9cyg5MTQ0ODcpLG89cy5uKGkpLG49cygxMzY0KSxyPXMoODYwMDI1KSxhPXMubihyKTtmdW5jdGlvbiBsKHQsZSl7CnJldHVybiBvKCkoYSgpLnBhaXIsYSgpW3RdLGUpfWZ1bmN0aW9uIGgodCxlPTIscz0hMCl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0sYSgpLnNrZWxldG9uLG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLCFzJiZhKCkuZW1wdHksMT09PWUmJm8oKShuLnNrZWxldG9uVGhlbWUuYW5pbWF0ZWQpKX19LDg4NDc5OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRDaXJjbGVMb2dvSHRtbDooKT0+b30pO3ZhciBpPXMoNzk0MTg3KTtzKDE0MDAxNyk7ZnVuY3Rpb24gbyh0KXtjb25zdCBlPSgwLGkuZ2V0U3R5bGVDbGFzc2VzKSh0LnNpemUsMix0LmNsYXNzTmFtZSk7cmV0dXJuKDAsaS5pc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHMpKHQpP2A8aW1nIGNsYXNzPSIke2V9IiBjcm9zc29yaWdpbiBzcmM9IiR7dC5sb2dvVXJsfSIgYWx0PSIiPmA6YDxzcGFuIGNsYXNzPSIke2V9Ij4ke3QucGxhY2Vob2xkZXJMZXR0ZXJ8fCIifTwvc3Bhbj5gfX0sNzk0MTg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldFN0eWxlQ2xhc3NlczooKT0+bCxpc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHM6KCk9Pmh9KTt2YXIgaT1zKDkxNDQ4Nyksbz1zLm4oaSksbj1zKDEzNjQpLHI9cygxNDAwMTcpLGE9cy5uKHIpO2Z1bmN0aW9uIGwodCxlPTIscyl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0scywwPT09ZXx8MT09PWU/bygpKG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLGEoKS5za2VsZXRvbik6YSgpLmxldHRlciwxPT09ZSYmbi5za2VsZXRvblRoZW1lLmFuaW1hdGVkKX1mdW5jdGlvbiBoKHQpe3JldHVybiJsb2dvVXJsImluIHQmJm51bGwhPT10LmxvZ29VcmwmJnZvaWQgMCE9PXQubG9nb1VybCYmMCE9PXQubG9nb1VybC5sZW5ndGh9fSwxMzY0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3NrZWxldG9uVGhlbWU6KCk9Pm99KTt2YXIgaT1zKDk3NTI4NSk7Y29uc3Qgbz1zLm4oaSkoKX0sMjE2MTEodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe2lmKG51bGwhPXQmJiJib29sZWFuIiE9dHlwZW9mIHQmJiFpc05hTihOdW1iZXIodCkpKXJldHVybiBOdW1iZXIodCl9cy5kKGUse3RvTnVtYmVyT3JVbmRlZmluZWQ6KCk9Pml9KX0sNTE4NzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3QucHJldmVudERlZmF1bHQoKX1zLmQoZSx7cHJldmVudERlZmF1bHQ6KCk9PmkscHJldmVudERlZmF1bHRGb3JDb250ZXh0TWVudTooKT0+bn0pO2NvbnN0IG89WyJpbnB1dDpub3QoW3R5cGVdKSIsJ2lucHV0W3R5cGU9InRleHQiXScsJ2lucHV0W3R5cGU9ImVtYWlsIl0nLCdpbnB1dFt0eXBlPSJwYXNzd29yZCJdJywnaW5wdXRbdHlwZT0ic2VhcmNoIl0nLCdpbnB1dFt0eXBlPSJudW1iZXIiXScsJ2lucHV0W3R5cGU9InVybCJdJywidGV4dGFyZWEiLCJhW2hyZWZdIiwnKltjb250ZW50ZWRpdGFibGU9InRydWUiXScsIltkYXRhLWFsbG93LWNvbnRleHQtbWVudV0iXTtmdW5jdGlvbiBuKHQpe2NvbnN0IGU9dC50YXJnZXQ7ZSYmIWUuY2xvc2VzdChvLmpvaW4oIiwgIikpJiZ0LnByZXZlbnREZWZhdWx0KCl9fSwxMjUyMTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UGVyY2VudGFnZUZvcm1hdHRlcjooKT0+bn0pO3ZhciBpPXMoMTE1MjkzKSxvPXMoNzU1NjI3KTtjbGFzcyBuIGV4dGVuZHMgby5QcmljZUZvcm1hdHRlcntjb25zdHJ1Y3Rvcih0PXt9KXt2b2lkIDAhPT10LmRlY2ltYWxQbGFjZXMmJih0LnByaWNlU2NhbGU9TWF0aC5wb3coMTAsdC5kZWNpbWFsUGxhY2VzKSksc3VwZXIodCksdGhpcy50eXBlPSJwZXJjZW50YWdlIn1zdGF0ZSgpe3JldHVybnsuLi5zdXBlci5zdGF0ZSgpLHBlcmNlbnQ6ITB9fXBhcnNlKHQsZSl7cmV0dXJuIHQ9dC5yZXBsYWNlKCIlIiwiIiksc3VwZXIucGFyc2UodCxlKX1mb3JtYXQodCxlPXt9KXtjb25zdHt1c2VSdGxGb3JtYXQ6cz0hMH09ZSxvPXN1cGVyLmZvcm1hdCh0LHsuLi5lLHVzZVJ0bEZvcm1hdDohMX0pKyIlIjtyZXR1cm4gcz8oMCxpLmZvcmNlTFRSU3RyKShvKTpvfXN0YXRpYyBzZXJpYWxpemUodCl7cmV0dXJuIHQuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUodCl7cmV0dXJuIG5ldyBuKHQpfX19LDk4NDM3Nih0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtQTEFDRV9IT0xERVI6KCk9PnIsVm9sdW1lRm9ybWF0dGVyOigpPT5ofSk7dmFyIGk9cyg3ODMyNTQpLG89cyg2MDE4NDEpLG49cygxMDcwNDUpO2NvbnN0IHI9Ii0tLSIsYT1be3ZhbHVlOjMsbGV0dGVyOiJLIn0se3ZhbHVlOjYsbGV0dGVyOiJNIn0se3ZhbHVlOjksbGV0dGVyOiJCIn0se3ZhbHVlOjEyLGxldHRlcjoiVCJ9XTtmdW5jdGlvbiBsKHQsZSl7Y29uc3Qgcz10LWU7cmV0dXJuIGEuZmluZCgodD0+dC52YWx1ZT49cykpPz9hW2EubGVuZ3RoLTFdfWNsYXNzIGh7Y29uc3RydWN0b3IodD17fSl7dGhpcy50eXBlPSJ2b2x1bWUiO2NvbnN0e3ByZWNpc2lvbjplPTAsbWluUHJlY2lzaW9uOnM9MCxkaW1lbnNpb25QcmVjaXNpb246aT0yLGRpbWVuc2lvbk1pblByZWNpc2lvbjpvPTAsc2lnbmlmaWNhbnREaWdpdHM6cj0zLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLG5vRXhwb25lbnRpYWxGb3JtOmwscmVtb3ZlU3BhY2VCZWZvcmVEaW1lbnNpb246aH09dDt0aGlzLl9wcmVjaXNpb249ZSx0aGlzLl9mb3JtYXR0ZXI9bmV3IG4uTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX3ByZWNpc2lvbixtaW5QcmVjaXNpb246cyxub0V4cG9uZW50aWFsRm9ybTpsfSksdGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uPWksdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyPW5ldyBuLk51bWVyaWNGb3JtYXR0ZXIoe2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLHByZWNpc2lvbjp0aGlzLl9kaW1lbnNpb25QcmVjaXNpb24sbWluUHJlY2lzaW9uOm8sbm9FeHBvbmVudGlhbEZvcm06bH0pLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzPXIsdGhpcy5fZnJhY3Rpb25hbFZhbHVlcz12b2lkIDAhPT1lJiZlPjAsdGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb249aD8iIjoi4oCvIix0aGlzLl9vcHRpb25zPXR9c3RhdGUoKXsKY29uc3R7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OnQsLi4uZX09dGhpcy5fb3B0aW9ucztyZXR1cm4gZX1mb3JtYXQodCxlKXtpZighKDAsby5pc051bWJlcikodCkpcmV0dXJuIHI7aWYoTWF0aC5hYnModCk+PTFlMTAwKXJldHVybiBpLnQobnVsbCx7Y29udGV4dDoidm9sdW1lLWZvcm1hdHRlciJ9LHMoNTcwNjIpKTtsZXQgbj0iIjtNYXRoLmFicyh0KTwxJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbikpLHQ8MD9uPSLiiJIiOnQ+MCYmZT8uc2lnblBvc2l0aXZlJiYobj0iKyIpLHQ9TWF0aC5hYnModCk7Y29uc3QgYT0hIShlPy5pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ/P3RoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0KTtsZXQgaCxjLG09TWF0aC5mbG9vcihNYXRoLmxvZzEwKHQpKSsxO2lmKG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbiksbT1NYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEpLG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzKWg9dGhpcy5fZm9ybWF0TnVtYmVyKHQsYSx0aGlzLl9mb3JtYXR0ZXIpO2Vsc2V7bGV0IGU9bChtLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKTtjb25zdCBzPU1hdGgucG93KDEwLGUudmFsdWUpO3Q9Kyh0L3MpLnRvRml4ZWQodGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uKSpzLGU9bChNYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEsdGhpcy5fc2lnbmlmaWNhbnREaWdpdHMpLGg9dGhpcy5fZm9ybWF0TnVtYmVyKHQvTWF0aC5wb3coMTAsZS52YWx1ZSksYSx0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXIpLGM9ZS5sZXR0ZXJ9cmV0dXJuIGM/YCR7bn0ke2h9JHt0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbn0ke2N9YDpgJHtufSR7aH1gfXBhcnNlKHQsZSl7aWYodD09PXIpcmV0dXJue2Vycm9yOiJub3QgYSBudW1iZXIiLHJlczohMSx2YWx1ZTpOYU59O2NvbnN0IHM9e0s6MWUzLE06MWU2LEI6MWU5LFQ6MWUxMn0saT0odD10LnJlcGxhY2UoIuKIkiIsIi0iKSkuc2xpY2UoLTEpO2lmKHMuaGFzT3duUHJvcGVydHkoaSkpe2NvbnN0IG49dGhpcy5fZm9ybWF0dGVyLnBhcnNlKHQuc2xpY2UoMCwtMSkudHJpbSgpLGUpLHI9bi5yZXM/bi52YWx1ZTpOYU47cmV0dXJuKDAsby5pc051bWJlcikocik/e3JlczohMCx2YWx1ZTpyKnNbaV19OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX17Y29uc3Qgcz10aGlzLl9mb3JtYXR0ZXIucGFyc2UodC50cmltKCksZSk7bGV0IGk9cy5yZXM/cy52YWx1ZTpOYU47cmV0dXJuLTA9PT1pJiYoaT0wKSwoMCxvLmlzTnVtYmVyKShpKT97cmVzOiEwLHZhbHVlOml9OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX19c3RhdGljIHNlcmlhbGl6ZSh0KXtyZXR1cm4gdC5zdGF0ZSgpfXN0YXRpYyBkZXNlcmlhbGl6ZSh0KXtyZXR1cm4gbmV3IGgodCl9X2Zvcm1hdE51bWJlcih0LGUscyl7aWYodGhpcy5fZnJhY3Rpb25hbFZhbHVlcyYmMCE9PXQpe2NvbnN0IGU9MTQtTWF0aC5jZWlsKE1hdGgubG9nMTAodCkpLHM9TWF0aC5wb3coMTAsZSk7dD1NYXRoLnJvdW5kKHQqcykvc31yZXR1cm4gcy5mb3JtYXQodCx7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmV9KX19fSw2NDE1OTModCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7ZGVjb2RlSFRNTEVudGl0aWVzOigpPT5sLGdldEZpcnN0U2VnbWVudE9yQ29kZVBvaW50U3RyaW5nOigpPT5jLGh0bWxFc2NhcGU6KCk9Pmh9KTtjb25zdCBpPS9bPCInJj5dL2csbz10PT5gJiMke3QuY2hhckNvZGVBdCgwKX07YCxuPXsiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInLCImYXBvczsiOiInIiwiJmFtcDsiOiImIiwiJiM2MDsiOiI8IiwiJiM2MjsiOiI+IiwiJiMzNDsiOiciJywiJiMzOTsiOiInIiwiJiMwMzk7IjoiJyIsIiYjMzg7IjoiJiJ9LHI9T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhuKS5tYXAoKChbdCxlXSk9Pih7W2VdOnR9KSkpKSxhPW5ldyBSZWdFeHAoT2JqZWN0LmtleXMobikuam9pbigifCIpLCJnIik7bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhyKS5qb2luKCJ8IiksImciKTtmdW5jdGlvbiBsKHQpe3JldHVybiB0LnJlcGxhY2UoYSwodD0+blt0XXx8dCkpfWZ1bmN0aW9uIGgodCl7cmV0dXJuIHQucmVwbGFjZShpLG8pfWZ1bmN0aW9uIGModCl7Y29uc3QgZT1JbnRsLlNlZ21lbnRlcjtpZihlKXtjb25zdCBzPW5ldyBlKHZvaWQgMCx7Z3JhbnVsYXJpdHk6ImdyYXBoZW1lIn0pLFt7c2VnbWVudDppfT17c2VnbWVudDpudWxsfV09cy5zZWdtZW50KHQpO3JldHVybiBpPy50b1VwcGVyQ2FzZSgpPz9udWxsfXtjb25zdCBlPXQuY29kZVBvaW50QXQoMCk7cmV0dXJuIGU/U3RyaW5nLmZyb21Db2RlUG9pbnQoZSkudG9VcHBlckNhc2UoKTpudWxsfX19LDM0NTE1MSh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtob3RLZXlEZXNlcmlhbGl6ZTooKT0+b30pO3ZhciBpPXMoNjQxNTkzKTtmdW5jdGlvbiBvKHQpe3JldHVybiBKU09OLnBhcnNlKCgwLGkuZGVjb2RlSFRNTEVudGl0aWVzKSh0KSl9fSw5ODYyNzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0TG9nb1VybHNIb29rOigpPT5yfSk7dmFyIGk9cyg2MDE4NDEpLG89cyg4NjIyMTMpO2NvbnN0IG49KDAsby5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gcih0LGUpe2xldCBzPSExO3JldHVybihyLGEsbCk9PntpZighcyYmKHIubG9nb3x8bCkpe3M9ITA7Y29uc3QgYT1yLmxvZ28/ZnVuY3Rpb24odCxlPW8uTG9nb1NpemUuTWVkaXVtKXtyZXR1cm4oInBhaXIiPT09dC5zdHlsZT9bdC5sb2dvaWQsdC5sb2dvaWQyXTpbdC5sb2dvaWRdKS5tYXAoKHQ9Pm4uZ2V0U3ltYm9sTG9nb1VybCh0LGUpKSkuZmlsdGVyKGkubm90TnVsbCl9KHIubG9nbyxlKTpbXTt0KGEpfX19fSwyODQ0ODQodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UXVvdGVUaWNrZXI6KCk9PmJ9KQo7dmFyIGk9cyg5NjQ0ODYpLG89cygyMjEwNjEpLG49cyg2MDE4NDEpLHI9cygxMjUyMTgpLGE9cyg4OTE3NzgpLGw9cyg3NTU2MjcpLGg9cyg5ODQzNzYpLGM9cyg1NjM5MTgpLG09cygzMDY5MCksdT1zKDUyODM5NiksZD1zKDExMzU2NyksXz1zKDE1OTUxMyksZz1zKDk3MzExOSkscD1zKDYwMjg3KSxmPXMoNzg2NzYwKSx4PXMoMTAxNzEyKTtjb25zdCB5PSgwLG8uZ2V0TG9nZ2VyKSgiUXVvdGVUaWNrZXIiKSxOPXthZGREZXNjcmlwdGlvblRpdGxlOiEwLGNoYW5nZURpcmVjdGlvbkRvd25DbGFzczoiZG93biIsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczoidXAiLGNoYW5nZURpcmVjdGlvbk5ldXRyYWxDbGFzczoibmV1dHJhbCIsY2hhbmdlSW5CcmFja2V0czohMSxjaGFuZ2VQZXJjZW50SW5CcmFja2V0czohMSxsYXN0UHJpY2VUaW1lSW5CcmFja2V0czohMCxsYXN0UmVsZWFzZURhdGVUaW1lSW5CcmFja2V0czohMCxydGNUaW1lSW5CcmFja2V0czohMCxjbGllbnROYW1lOiJxdW90ZS10aWNrZXIiLGRvbnREeWVQcmljZTohMSxmYWxsaW5nQmc6bnVsbCxncm93aW5nQmc6bnVsbCxsYXN0RmFsbGluZ0NsYXNzOiJmYWxsaW5nIixsYXN0R3Jvd2luZ0NsYXNzOiJncm93aW5nIixxdW90ZVNlc3Npb246bnVsbCxzaWduTmVnYXRpdmU6ITAsc2lnblBvc2l0aXZlOiExLGN1c3RvbVByaWNlRm9ybWF0dGVyOm51bGwsY3VzdG9tVGltZUZvcm1hdHRlcjpudWxsLHNlc3Npb25TdGF0dXNDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyIixkYXRhTW9kZUNsYXNzU3VmZml4OiItLWZvci10aWNrZXIiLHNob3dJbnZhbGlkU3ltYm9sU3RhdHVzOiExLGluZGljYXRvcnNUb29sdGlwVHlwZToiY3VzdG9tIixsYXN0UHJpY2VMYXN0Q2hhclN1cDohMSxsYXN0UHJpY2VIaWdobGlnaHREaWZmT25seTohMSxpbml0ZWRIb29rOnZvaWQgMCxzZXRTdGF0ZUhvb2s6dm9pZCAwLHBlcm1pc3Npb25EZW5pZWRIb29rOnZvaWQgMCxub1N1Y2hTeW1ib2xIb29rOnZvaWQgMH0sQz0vW0tNQlRdLztmdW5jdGlvbiBiKHQsZSxzPXt9KXt0aGlzLmVuYWJsZWQ9ITAsdGhpcy5fc3ltYm9sPXQsdGhpcy5fc3ltYm9sT3JpZ2luYWw9bnVsbCx0aGlzLl9vcHRpb25zPSgwLGkuZGVlcEV4dGVuZCkoe30sTixzKSwhMSE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiYhMCE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiZkZWxldGUgdGhpcy5fb3B0aW9ucy5zaWduTmVnYXRpdmUscy5jdXN0b21QcmljZUZvcm1hdHRlciYmKHRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyPXMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIpLHMuY3VzdG9tVGltZUZvcm1hdHRlciYmKHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5sYXN0UHJpY2V8fHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5ydGM/dGhpcy5fdGltZUZvcm1hdHRlcj1zLmN1c3RvbVRpbWVGb3JtYXR0ZXI6dGhpcy5fdGltZUZvcm1hdHRlcj17bGFzdFByaWNlOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIscnRjOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXJ9KSx0aGlzLl9wZXJjZW50Rm9ybWF0dGVyPW5ldyByLlBlcmNlbnRhZ2VGb3JtYXR0ZXIsdGhpcy5fZGVmYXVsdFByaWNlRm9ybWF0dGVyPW5ldyBsLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOjEwMH0pLHRoaXMuX3ByaWNlRm9ybWF0dGVyPXRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyfHx0aGlzLl9kZWZhdWx0UHJpY2VGb3JtYXR0ZXIsdGhpcy5fdm9sdW1lRm9ybWF0dGVyPW5ldyBoLlZvbHVtZUZvcm1hdHRlcih7cHJlY2lzaW9uOjJ9KSx0aGlzLl9jYWNoZT17fSx0aGlzLl9sYXN0UHJpY2U9bnVsbCx0aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQ9IiIsdGhpcy5fbGFzdE1pbk1vdmU9MCx0aGlzLl9lbGVtZW50cz17fSx0aGlzLl90ZXh0Tm9kZXM9e30sdGhpcy5fY2hhbmdlVm9sdW1lTGV0dGVyPXRoaXMuX2dldENoYW5nZVZvbHVtZUxldHRlckNhbGxiYWNrKCksdGhpcy5fc2V0RWxlbWVudHMoZSksdGhpcy5faGlnaGxpZ2h0ZXJzPXt9LHRoaXMuX2luaXRIaWdobGlnaHRlcnMoKSx0aGlzLl9vcHRpb25zLnNldFN0YXRlSG9vayYmdGhpcy5zZXRTdGF0ZUhvb2sodGhpcy5fb3B0aW9ucy5zZXRTdGF0ZUhvb2spLHRoaXMucXVvdGVTZXNzaW9uPXRoaXMuX29wdGlvbnMucXVvdGVTZXNzaW9ufHwoMCxfLmdldFF1b3RlU2Vzc2lvbkluc3RhbmNlKSgic2ltcGxlIiksdGhpcy5fcXVvdGVTZXNzaW9uRXZlbnRIYW5kbGVyPXRoaXMub25EYXRhLmJpbmQodGhpcyksdGhpcy5fY29ubmVjdFRpbWVvdXRJZD1zZXRUaW1lb3V0KHRoaXMuY29ubmVjdC5iaW5kKHRoaXMpLDApfWZ1bmN0aW9uIHYodCl7Y29uc3QgZT10LnNlYXJjaChDKSxzPWU+PTA/dC5zbGljZShlKToiIjtyZXR1cm5bZT4wP3Quc3Vic3RyaW5nKGUsMCk6MD09PWU/IiI6dCxzXX1mdW5jdGlvbiBTKHQsZSxzLGksbyl7dmFyIG4scj1udWxsO2Z1bmN0aW9uIGEoKXtpZihuJiYoY2xlYXJUaW1lb3V0KG4pLG49dm9pZCAwKSxzfHxlKWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuYmFja2dyb3VuZD0iIjtpZighc3x8IWUpZm9yKHI9MDtyPHQubGVuZ3RoO3IrKylpJiZ0W3JdLmNsYXNzTGlzdC5yZW1vdmUoaSksbyYmdFtyXS5jbGFzc0xpc3QucmVtb3ZlKG8pfXJldHVybntzaG93OmZ1bmN0aW9uKGwpe3ZhciBoPTA7aWYobCE9PXIpe2lmKG51bGwhPT1yJiZudWxsIT09bCYmKGg9bC1yKSxhKCksbj1zZXRUaW1lb3V0KGEsNzUwKSwwPGgpe2lmKGUpZm9yKHZhciBjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5zdHlsZS5iYWNrZ3JvdW5kPWU7ZWxzZSBpZihpKWZvcihjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5jbGFzc0xpc3QuYWRkKGkpfWVsc2UgaWYoaDwwKWlmKHMpZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLnN0eWxlLmJhY2tncm91bmQ9cztlbHNlIGlmKG8pZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLmNsYXNzTGlzdC5hZGQobyk7bnVsbCE9PWwmJihyPWwpfX0saGlkZTphfX1iLnByb3RvdHlwZS5fc2V0RWxlbWVudHM9ZnVuY3Rpb24odCl7dGhpcy5fY29udGFpbmVyPXQsCnRoaXMuX2VsZW1lbnRzLmNoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UiLCJzeW1ib2wtY2hhbmdlIl0pLHRoaXMuX2VsZW1lbnRzLmNoYW5nZURpcmVjdGlvbj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UtZGlyZWN0aW9uIiwic3ltYm9sLWNoYW5nZS1kaXJlY3Rpb24iXSksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlRGlyZWN0aW9uPXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5jaGFuZ2VQZXJjZW50PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWNoYW5nZS1wdCIsInN5bWJvbC1jaGFuZ2UtcHQiXSksdGhpcy5fZWxlbWVudHMuZGVzY3JpcHRpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtZGVzY3JpcHRpb24tbmFtZSIsInN5bWJvbC1kZXNjcmlwdGlvbi1uYW1lIl0pLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlIiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLXB0IiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1leHQtaHJzLWNsb3NlIiksdGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VEaXJlY3Rpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbmlnaHQtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZSIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZS1wdCIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1uaWdodC1jbG9zZSIpLHRoaXMuX2VsZW1lbnRzLmluZHVzdHJ5PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWluZHVzdHJ5Iiwic3ltYm9sLWluZHVzdHJ5Il0pLHRoaXMuX2VsZW1lbnRzLmxhc3Q9dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbGFzdCIsInN5bWJvbC1sYXN0Il0pLHRoaXMuX2VsZW1lbnRzLnNlY3Rvcj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zZWN0b3IiLCJzeW1ib2wtc2VjdG9yIl0pLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXM9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1zZXNzaW9uLXN0YXR1cyIpLHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zaG9ydC1uYW1lIiwic3ltYm9sLXNob3J0LW5hbWUiXSksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZT10aGlzLl9maW5kRWxlbWVudHModCwianMtZGF0YS1tb2RlIiksdGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWxhc3QtcGVyaW9kIiksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZS5mb3JFYWNoKCh0PT50LmNsYXNzTGlzdC5hZGQoImktaGlkZGVuIikpKSx0aGlzLl90ZXh0Tm9kZXMuY2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmNoYW5nZSksdGhpcy5fdGV4dE5vZGVzLmNoYW5nZVBlcmNlbnQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2UpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDbG9zZSksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlKSx0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2U9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSksdGhpcy5fdGV4dE5vZGVzLmxhc3Q9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubGFzdCksdGhpcy5fdGV4dE5vZGVzLm9wZW49dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtb3BlbiIpLHRoaXMuX3RleHROb2Rlcy5lcHM9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtZXBzIiksdGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcD10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1tYXJrZXQtY2FwIiksdGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wcmV2LWNsb3NlIiksdGhpcy5fdGV4dE5vZGVzLmRpdmlkZW5kcz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1kaXZpZGVuZHMiKSx0aGlzLl90ZXh0Tm9kZXMucHJpY2VFYXJuaW5ncz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wZSIpLHRoaXMuX3RleHROb2Rlcy52b2x1bWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtdm9sdW1lIiksdGhpcy5fdGV4dE5vZGVzLmhpZ2g9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtaGlnaCIpLHRoaXMuX3RleHROb2Rlcy5sb3c9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtbG93IiksCnRoaXMuX3RleHROb2Rlcy5jdXJyZW5jeT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1jdXJyZW5jeSIpLHRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxwLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubGFzdFJlbGVhc2VEYXRlPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxhc3QtcmVsZWFzZS1kYXRlIiksdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtcnRjLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubnRjVGltZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1udGMtdGltZSIpLHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQ9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VIaWdobGlnaHREaWZmT25seT90aGlzLl9lbGVtZW50cy5sYXN0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzcGFuIikpKTp0aGlzLl9lbGVtZW50cy5sYXN0LHRoaXMuX3RleHROb2Rlcy5sYXN0SGlnaGxpZ2h0PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQpLHRoaXMuX2VsZW1lbnRzLmxhc3RTdXA9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VMYXN0Q2hhclN1cD90aGlzLl9lbGVtZW50cy5sYXN0SGlnaGxpZ2h0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzdXAiKSkpOltdLHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RTdXApfSxiLnByb3RvdHlwZS5fZmluZEVsZW1lbnRzPWZ1bmN0aW9uKHQsZSl7dmFyIHM9KDAsbi5pc0FycmF5KShlKT9lOltlXTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxzLm1hcCgoZT0+QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUpKSkpKX0sYi5wcm90b3R5cGUuX2ZpbmRUZXh0Tm9kZXM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZmluZEVsZW1lbnRzKHQsZSkpfSxiLnByb3RvdHlwZS5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXM9ZnVuY3Rpb24odCl7cmV0dXJuIHQubWFwKCh0PT57dmFyIGU9dGhpcy5fZ2V0Rmlyc3RUZXh0Tm9kZSh0KTtyZXR1cm4gZXx8KGU9dC5vd25lckRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKSx0LmFwcGVuZENoaWxkKGUpKSxlfSkpfSxiLnByb3RvdHlwZS5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudD1mdW5jdGlvbih0LGUpe2NvbnN0IHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4gdC5hcHBlbmRDaGlsZChzKSxzfSxiLnByb3RvdHlwZS5fZ2V0Rmlyc3RUZXh0Tm9kZT1mdW5jdGlvbih0KXtmb3IodmFyIGU9dC5jaGlsZE5vZGVzLHM9ZS5sZW5ndGgtMTtzPj0wO3MtLSlpZigzPT09ZS5pdGVtKHMpLm5vZGVUeXBlKXJldHVybiBlLml0ZW0ocyk7cmV0dXJuIG51bGx9LGIucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24odCl7dGhpcy5fc3Vic2NyaWJlZHx8KHRoaXMuX3N1YnNjcmliZWRTeW1ib2w9dHx8dGhpcy5fc3ltYm9sLHRoaXMucXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITApfSxiLnByb3RvdHlwZS5kaXNjb25uZWN0PWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX2Nvbm5lY3RUaW1lb3V0SWQpLHRoaXMuX3N1YnNjcmliZWQmJih0aGlzLnF1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfSxiLnByb3RvdHlwZS5vbkRhdGE9ZnVuY3Rpb24odCxlKXt0aGlzLmVuYWJsZWQmJigib2siPT09dC5zdGF0dXM/dGhpcy5zdWNjZXNzRGF0YSh0LGUpOiJwZXJtaXNzaW9uX2RlbmllZCI9PT10LnN0YXR1cz90aGlzLm9uUGVybWlzc2lvbkRlbmllZCh0KToiZXJyb3IiPT09dC5zdGF0dXMmJnRoaXMuZXJyb3JEYXRhKHQpKX0sYi5wcm90b3R5cGUuc3VjY2Vzc0RhdGE9ZnVuY3Rpb24odCxlKXt0LnZhbHVlcyYmdGhpcy5zZXRTdGF0ZSh0LnZhbHVlcyx0LGUpfSxiLnByb3RvdHlwZS5vblBlcm1pc3Npb25EZW5pZWQ9ZnVuY3Rpb24odCl7KDAseC5pc1NmUXVvdGVEYXRhKSh0KXx8KDAsZi5pc01jeFF1b3RlRGF0YSkodCk/dGhpcy5fb3B0aW9ucy5wZXJtaXNzaW9uRGVuaWVkSG9vaz90aGlzLl9vcHRpb25zLnBlcm1pc3Npb25EZW5pZWRIb29rKHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCk6dGhpcy5lcnJvckRhdGEodCk6dGhpcy5kb3duZ3JhZGVEYXRhKHQpfSxiLnByb3RvdHlwZS5lcnJvckRhdGE9ZnVuY3Rpb24odCl7dGhpcy5fb3B0aW9ucy5zaG93SW52YWxpZFN5bWJvbFN0YXR1cyYmKHRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbCksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKHQ9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6dCxkYXRhOnt2YWx1ZXM6e2N1cnJlbnRfc2Vzc2lvbjoiaW52YWxpZCJ9fSx0b29sdGlwVHlwZTp0aGlzLl9vcHRpb25zLmluZGljYXRvcnNUb29sdGlwVHlwZX0pKSkpLHRoaXMuX29wdGlvbnMubm9TdWNoU3ltYm9sSG9vaz8odGhpcy5fc3ltYm9sT3JpZ2luYWwmJnRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbE9yaWdpbmFsKSx0aGlzLl9vcHRpb25zLm5vU3VjaFN5bWJvbEhvb2suY2FsbCh0aGlzLHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCkpOnkubG9nV2FybigiTm8gZGF0YSBmb3I6ICIrdGhpcy5fc3ltYm9sKX0sYi5wcm90b3R5cGUuZG93bmdyYWRlRGF0YT1mdW5jdGlvbih0KXt7CmNvbnN0IGU9dCYmdC52YWx1ZXMmJnQudmFsdWVzLmFsdGVybmF0aXZlLHM9dGhpcy5fc3ltYm9sPT09ZTtpZighKGUmJi0xIT09ZS5pbmRleE9mKCI6IikpfHxzKXJldHVybiB2b2lkIHRoaXMuZXJyb3JEYXRhKHQpO3RoaXMuX3N5bWJvbE9yaWdpbmFsPXRoaXMuX3N5bWJvbCx0aGlzLl9zeW1ib2w9ZSx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuY29ubmVjdCgpfX0sYi5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24odCxlLGkpe2NvbnN0IG89aS52YWx1ZXM7dGhpcy5faXNWb2x1bWVGb3JtYXQ9InZvbHVtZSI9PT10LmZvcm1hdCxudWxsPT1vLnByaWNlc2NhbGUmJm51bGw9PW8ubWlubW92JiZudWxsPT1vLmZyYWN0aW9uYWwmJm51bGw9PW8ubWlubW92ZTJ8fCh0aGlzLl9wcmljZUZvcm1hdHRlcj10aGlzLl9jdXN0b21QcmljZUZvcm1hdHRlcnx8dGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX3ZvbHVtZUZvcm1hdHRlcnx8bmV3IGwuUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6dC5wcmljZXNjYWxlfHwxMDAsbWluTW92ZTp0Lm1pbm1vdnx8MSxmcmFjdGlvbmFsOnQuZnJhY3Rpb25hbCxtaW5Nb3ZlMjp0Lm1pbm1vdmUyfSkpO2NvbnN0IG49dGhpcy5fb3B0aW9ucyxyPXRoaXMuX3BlcmNlbnRGb3JtYXR0ZXIsYT10aGlzLl9wcmljZUZvcm1hdHRlcixfPXRoaXMuX2RlZmF1bHRQcmljZUZvcm1hdHRlcixmPXRoaXMuX3ZvbHVtZUZvcm1hdHRlcix4PSh0LGU9ITApPT5lP2AoJHt0fSlgOnQsTj12b2lkIDAhPT1uLnNpZ25Qb3NpdGl2ZUNoYW5nZT9uLnNpZ25Qb3NpdGl2ZUNoYW5nZTpuLnNpZ25Qb3NpdGl2ZSxDPXQ9PigwLGcucXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2UpKHQsbyxuKSxiPXQ9Pntjb25zdCBlPXIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpOLHNpZ25OZWdhdGl2ZTpuLnNpZ25OZWdhdGl2ZX0pO3JldHVybiB4KGUsbi5jaGFuZ2VQZXJjZW50SW5CcmFja2V0cyl9LHY9YS5mb3JtYXQuYmluZChhKSxTPV8uZm9ybWF0LmJpbmQoXyksUD1mLmZvcm1hdC5iaW5kKGYpLFQ9dD0+bnVsbD09dD9oLlBMQUNFX0hPTERFUjpTKHQpO24uZGlzYWJsZUNoYW5nZXx8KHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmNoYW5nZSxvLmNoYW5nZSxDKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5jaGFuZ2VQZXJjZW50LG8uY2hhbmdlX3BlcmNlbnQsYiksbnVsbCE9by5jaGFuZ2UmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5jaGFuZ2UsdGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksby5jaGFuZ2Usbi5jaGFuZ2VVcEZvbnRDb2xvcixuLmNoYW5nZURvd25Gb250Q29sb3Isbi5jaGFuZ2VOZXV0cmFsRm9udENvbG9yKSx0aGlzLl9zZXRDaGFuZ2VEaXJlY3Rpb24odGhpcy5fZWxlbWVudHMuY2hhbmdlRGlyZWN0aW9uLG8uY2hhbmdlKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXh0SHJzQ2hhbmdlLG8ucmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZVBlcmNlbnQsby5yY2hwLGIpLG51bGwhPW8ucmNoJiYobi5kb250RHllUHJpY2V8fHRoaXMuX3NldENoYW5nZUZvbnRDb2xvcihbXS5jb25jYXQodGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLG8ucmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZURpcmVjdGlvbixvLnJjaCkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlLG8ubmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlUGVyY2VudCxvLm5jaHAsYiksbnVsbCE9by5uY2gmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZVBlcmNlbnQpLG8ubmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlRGlyZWN0aW9uLG8ubmNoKSkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZSxvLnByZXZfY2xvc2VfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZGl2aWRlbmRzLHQuZGl2aWRlbmRzX3lpZWxkLCh0PT5udWxsPT10P2guUExBQ0VfSE9MREVSOnIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpuLnNpZ25Qb3NpdGl2ZSxzaWduTmVnYXRpdmU6bi5zaWduTmVnYXRpdmV9KSksITApO2xldCB3PSgwLHUuZ2V0VHJhbnNsYXRlZFN5bWJvbERlc2NyaXB0aW9uKShvKTtpZih3JiYodz10aGlzLl9wcmVwYXJlU3ltYm9sRGVzY3JpcHRpb24odyksdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uLHcpLHRoaXMuX29wdGlvbnMuYWRkRGVzY3JpcHRpb25UaXRsZSkpZm9yKHZhciBGPTA7Rjx0aGlzLl9lbGVtZW50cy5kZXNjcmlwdGlvbi5sZW5ndGg7RisrKXRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uW0ZdLnNldEF0dHJpYnV0ZSgidGl0bGUiLHcpO2lmKChudWxsIT1vLnNob3J0X25hbWV8fG51bGwhPW8uZXhjaGFuZ2UpJiZ0LnNob3J0X25hbWUpe3ZhciBEPXQuc2hvcnRfbmFtZTsiUVVBTkRMIj09PXQuZXhjaGFuZ2UmJnZvaWQgMCE9PXQuc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzFdJiYoRD10LnNob3J0X25hbWUuc3BsaXQoIi8iKVsxXSsiLCAiK3Quc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzBdKSx0aGlzLnNldFNob3J0TmFtZShEKX0KdFsicmVmZXJlbmNlLWxhc3QtcGVyaW9kIl0mJnRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZQcm9taXNlLmFsbChbcy5lKDIzNTY3KSxzLmUoNzM5NyldKS50aGVuKHMuYmluZChzLDIxNTU3OSkpLnRoZW4oKGU9Pnt0aGlzLl9zZXRUZXh0c0NvbnRlbnQodGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZCxlLnBlcmlvZEZvcm1hdHRlcih0WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSkpfSkpLHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZ2b2lkIDA9PT10WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSYmdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QsIuKAlCIpLHRoaXMuX3NldExhc3RWYWx1ZShvLmxhc3RfcHJpY2Usby5taW5tb3ZlMix2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZSxvLnJ0Yyx2KSxvLnJ0YyYmdGhpcy5faGlnaGxpZ2h0ZXJzLmV4dEhyc0Nsb3NlLnNob3coby5ydGMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2Usby5udGMsdiksby5udGMmJnRoaXMuX2hpZ2hsaWdodGVycy5uaWdodENsb3NlLnNob3coby5udGMpLG8uaW5kdXN0cnkmJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5pbmR1c3RyeSx0LmluZHVzdHJ5LCh0PT50KSksby5zZWN0b3ImJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5zZWN0b3IsdC5zZWN0b3IpLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXMmJm8uY3VycmVudF9zZXNzaW9uJiYodGhpcy5fc2Vzc2lvblN0YXR1c0luc3RhbmNlcz90aGlzLl9zZXNzaW9uU3RhdHVzSW5zdGFuY2VzLmZvckVhY2goKHQ9PnQuc2V0U3RhdHVzKG8uY3VycmVudF9zZXNzaW9uKSkpOnRoaXMuX3Nlc3Npb25TdGF0dXNJbnN0YW5jZXM9dGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKGU9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6ZSxzaG9ydDohMCxkYXRhOnt2YWx1ZXM6b30scXVvdGVTZXNzaW9uOnRoaXMucXVvdGVTZXNzaW9uLHN5bWJvbDp0Lm9yaWdpbmFsX25hbWUsbWFudWFsVXBkYXRlOiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlLHNlc3Npb25TdGF0dXNJY29uOnRoaXMuX29wdGlvbnMuc2Vzc2lvblN0YXR1c0ljb259KSkpKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5vcGVuLG8ub3Blbl9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5oaWdoLG8uaGlnaF9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sb3csby5sb3dfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXBzLHQuZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSxULCEwKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5wcmljZUVhcm5pbmdzLHQucHJpY2VfZWFybmluZ3NfdHRtLFQsITApLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcCx0Lm1hcmtldF9jYXBfYmFzaWMsUCwhMCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMudm9sdW1lLHQudm9sdW1lLFAsITApO2NvbnN0IGs9KDAsZC5wcmVwYXJlQ3VycmVuY3lWYWx1ZSkobyk7aWYoayYmdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuY3VycmVuY3ksayxwLnF1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3ksITApLChvLmxwX3RpbWV8fHQubHBfdGltZSkmJnRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lLmxlbmd0aCYmKHRoaXMuX3RpbWVGb3JtYXR0ZXImJnRoaXMuX3RpbWVGb3JtYXR0ZXIubGFzdFByaWNlP3RoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxhc3RQcmljZVRpbWUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RQcmljZSh0LmxwX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMubGFzdFByaWNlVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJsYXN0IHByaWNlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLmxhc3RfcmVsZWFzZV9kYXRlfHx0Lmxhc3RfcmVsZWFzZV9kYXRlKSYmdGhpcy5fdGV4dE5vZGVzLmxhc3RSZWxlYXNlRGF0ZS5sZW5ndGgmJih0aGlzLl90aW1lRm9ybWF0dGVyJiZ0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZT90aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0UmVsZWFzZURhdGUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZSh0Lmxhc3RfcmVsZWFzZV9kYXRlLHQuY3VycmVudF9zZXNzaW9uKSx0aGlzLl9vcHRpb25zLmxhc3RSZWxlYXNlRGF0ZVRpbWVJbkJyYWNrZXRzKSk6eS5sb2dFcnJvcigibGFzdFJlbGVhc2VEYXRlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLnJ0Y190aW1lfHx0LnJ0Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMucnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQucnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJydGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksCihvLm50Y190aW1lfHx0Lm50Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLm50Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQubnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJudGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksbnVsbCE9by5sYXN0X3ByaWNlKWZvcihGPTA7Rjx0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLmxlbmd0aDtGKyspdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZVtGXS5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpO3RoaXMuX2VsZW1lbnRzLnVwZGF0ZU1vZGUmJihvLnVwZGF0ZV9tb2RlfHxvLnVwZGF0ZV9tb2RlX3NlY29uZHMpJiYodGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz90aGlzLl91cGRhdGVNb2RlSW5zdGFuY2VzLmZvckVhY2goKGU9PmUudXBkYXRlKHt2YWx1ZXM6dH0pKSk6dGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz10aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLm1hcCgoZT0+bmV3IG0uRGF0YU1vZGVJbmRpY2F0b3Ioe2NsYXNzU3VmZml4OnRoaXMuX29wdGlvbnMuZGF0YU1vZGVDbGFzc1N1ZmZpeCxlbDplLGRhdGE6e3ZhbHVlczp0fSxtb2RlSW50ZXJ2YWw6dC51cGRhdGVfbW9kZV9zZWNvbmRzLHNob3J0OiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlfSkpKSksdGhpcy5fc2V0U3RhdGVIb29rJiZ0aGlzLl9zZXRTdGF0ZUhvb2soZS52YWx1ZXMsaS52YWx1ZXMsZS5jb21wbGV0ZSx0aGlzLmdldE9wdGlvbnMoKSksdGhpcy5fbGFzdFByaWNlP3RoaXMuX2hpZ2hsaWdodGVycy5sYXN0LnNob3codC5sYXN0X3ByaWNlKTpudWxsPT09dGhpcy5fbGFzdFByaWNlJiYodGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoInF1b3RlLXRpY2tlci1pbml0ZWQiKSwiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fb3B0aW9ucy5pbml0ZWRIb29rJiZ0aGlzLl9vcHRpb25zLmluaXRlZEhvb2soImxhc3RfcHJpY2UiaW4gdCkpLHRoaXMuX2xhc3RQcmljZT10Lmxhc3RfcHJpY2V9LGIucHJvdG90eXBlLl9zZXROb2Rlc1ZhbHVlPWZ1bmN0aW9uKHQsZSxzLGkpe2lmKG51bGwhPWV8fGkpZm9yKHZhciBvPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxuPTA7bjx0Lmxlbmd0aDtuKyspdFtuXS5ub2RlVmFsdWU9b30sYi5wcm90b3R5cGUuX3NldFRleHRzQ29udGVudD1mdW5jdGlvbih0LGUscyl7aWYodCYmdC5sZW5ndGgmJmUpZm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxvPTA7bzx0Lmxlbmd0aDtvKyspdFtvXS50ZXh0Q29udGVudD1pfSxiLnByb3RvdHlwZS5fc2V0TGFzdFZhbHVlPWZ1bmN0aW9uKHQsZSxzKXtpZihudWxsPT10KXJldHVybjtjb25zdCBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3ModCk6U3RyaW5nKHQpO2lmKGk9PT10aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQpcmV0dXJuO2NvbnN0W28sbixyXT10aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5P3RoaXMuX2dldExhc3RWYWx1ZVN0cmluZ0RpZmYodGhpcy5fbGFzdFByaWNlRm9ybWF0dGVkLGkpOlsiIixpLCIiXSxhPW8sbD10aGlzLl9jYWxjdWxhdGVQaXBldHRlRGlnaXRzKGUpLFtoLGNdPXRoaXMuX29wdGlvbnMubGFzdFByaWNlTGFzdENoYXJTdXAmJmw/W24uc2xpY2UoMCwtbCksbi5zbGljZSgtbCldOltuLCIiXTt0aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5JiYodGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX2NoYW5nZVZvbHVtZUxldHRlci5jYWxsKHRoaXMsciksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdCxhKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdEhpZ2hsaWdodCxoKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwLGMpLHRoaXMuX2xhc3RQcmljZUZvcm1hdHRlZD1pfSxiLnByb3RvdHlwZS5fZ2V0Q2hhbmdlVm9sdW1lTGV0dGVyQ2FsbGJhY2s9ZnVuY3Rpb24oKXtsZXQgdDtyZXR1cm4gZnVuY3Rpb24oZSl7ZSE9PXQmJih0PWUsdGhpcy5fZWxlbWVudHMubGFzdC5mb3JFYWNoKChlPT57MyE9PWUuY2hpbGROb2Rlcy5sZW5ndGg/ZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSk6ZS5jaGlsZE5vZGVzWzJdLm5vZGVWYWx1ZT10fSkpKX19LGIucHJvdG90eXBlLl9nZXRMYXN0VmFsdWVTdHJpbmdEaWZmPWZ1bmN0aW9uKHQsZSl7aWYodD09PWUpe2NvbnN0W3Qsc109dihlKTtyZXR1cm5bdCwiIixzXX1sZXQgcz0wO2Zvcig7dFtzXT09PWVbc107KXMrKztjb25zdFtpLG9dPXYoZS5zbGljZShzKSk7cmV0dXJuW2Uuc2xpY2UoMCxzKSxpLG9dfSxiLnByb3RvdHlwZS5fY2FsY3VsYXRlUGlwZXR0ZURpZ2l0cz1mdW5jdGlvbih0KXtyZXR1cm4gdCYmdCE9PXRoaXMuX2xhc3RNaW5Nb3ZlJiYodGhpcy5fbGFzdE1pbk1vdmU9dCksdGhpcy5fbGFzdE1pbk1vdmU/KCIiK3RoaXMuX2xhc3RNaW5Nb3ZlKS5sZW5ndGgtMTowfSxiLnByb3RvdHlwZS5fc2V0Q2hhbmdlRm9udENvbG9yPWZ1bmN0aW9uKHQsZSxzLGksbyl7Zm9yKHZhciBuPWEuUHJpY2VDb2xvcmVyLmZvcm1hdFNpZ24oZSx7dXA6cyxkb3duOmksbmV1dHJhbDpvfSkscj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuY29sb3I9bn0sYi5wcm90b3R5cGUuX3NldENoYW5nZURpcmVjdGlvbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcz0wO3M8dC5sZW5ndGg7cysrKXt2YXIgaT10W3NdLmNsYXNzTGlzdDtpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvblVwQ2xhc3MsZT4wKSxpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvbkRvd25DbGFzcyxlPDApLGkudG9nZ2xlKHRoaXMuX29wdGlvbnMuY2hhbmdlRGlyZWN0aW9uTmV1dHJhbENsYXNzLDA9PT1lKX19LApiLnByb3RvdHlwZS5zZXRTaG9ydE5hbWU9ZnVuY3Rpb24odD0iIil7dGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZSx0KX0sYi5wcm90b3R5cGUuX3ByZXBhcmVTeW1ib2xEZXNjcmlwdGlvbj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9nZXRDYWNoZSgic3ltYm9sLWRlc2NyaXB0aW9uOiIrdCk7cmV0dXJuIGV8fChlPXQsdGhpcy5fc2V0Q2FjaGUoInN5bWJvbC1kZXNjcmlwdGlvbjoiK3QsZSksZSl9LGIucHJvdG90eXBlLl9pbml0SGlnaGxpZ2h0ZXJzPWZ1bmN0aW9uKCl7dGhpcy5faGlnaGxpZ2h0ZXJzLmxhc3Q9bmV3IFModGhpcy5fZWxlbWVudHMubGFzdEhpZ2hsaWdodCx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKSx0aGlzLl9oaWdobGlnaHRlcnMuZXh0SHJzQ2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2UsdGhpcy5fb3B0aW9ucy5ncm93aW5nQmcsdGhpcy5fb3B0aW9ucy5mYWxsaW5nQmcsdGhpcy5fb3B0aW9ucy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX29wdGlvbnMubGFzdEZhbGxpbmdDbGFzcyksdGhpcy5faGlnaGxpZ2h0ZXJzLm5pZ2h0Q2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKX0sYi5wcm90b3R5cGUuZGlzYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMSx0aGlzLmRpc2Nvbm5lY3QoKX0sYi5wcm90b3R5cGUuZW5hYmxlPWZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSEwLHRoaXMuY29ubmVjdCgpfSxiLnByb3RvdHlwZS5zZXRTdGF0ZUhvb2s9ZnVuY3Rpb24odCl7bnVsbD09PXQmJnRoaXMuX3NldFN0YXRlSG9vaz9kZWxldGUgdGhpcy5fc2V0U3RhdGVIb29rOiJmdW5jdGlvbiI9PXR5cGVvZiB0JiYodGhpcy5fc2V0U3RhdGVIb29rPXQpfSxiLnByb3RvdHlwZS5fc2V0Q2FjaGU9ZnVuY3Rpb24odCxlKXtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jYWNoZVt0XTp0aGlzLl9jYWNoZVt0XT1lfSxiLnByb3RvdHlwZS5fZ2V0Q2FjaGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2NhY2hlJiZ0aGlzLl9jYWNoZVt0XX0sYi5wcm90b3R5cGUuZ2V0T3B0aW9ucz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9vcHRpb25zfX0sMTEzNTY3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3ByZXBhcmVDdXJyZW5jeVZhbHVlOigpPT5vfSk7dmFyIGk9cygxODUyNzEpO2Z1bmN0aW9uIG8odCl7bGV0IGU9W107Y29uc3Qgbz1mdW5jdGlvbih0KXtzd2l0Y2godCl7Y2FzZSJQQ1QiOmNhc2UiUENUUEFSIjpyZXR1cm4iJSI7Y2FzZSJQQ1RHRFAiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNTU4NDEyKSk7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtkZWZhdWx0OnJldHVybiB0fX0odC5jdXJyZW5jeV9jb2RlfHx0LnZhbHVlX3VuaXRfaWR8fCIiKTtzd2l0Y2godC5tZWFzdXJlKXtjYXNlInByaWNlIjpjYXNlInVuaXQiOmU9W28sdC51bml0X2lkXTticmVhaztkZWZhdWx0OmU9W29dfXJldHVybiBlLmZpbHRlcihCb29sZWFuKS5qb2luKCLigIkv4oCJIil9fSw5MzExOTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7aGFuZGxlVFZMaW5rc0NsaWNrOigpPT5hfSk7dmFyIGk9cyg0MDAxODEpLG89cyg2MDE1ODcpLG49cyg3MzA2NDUpO2NvbnN0IHI9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKHQ9Pntjb25zdCBlPXQudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7ZT8uaG9zdG5hbWUmJigwLG4uaXNJbnRlcm5hbEhvc3QpKGUuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbih0LGUpe2NvbnN0IHM9ZnVuY3Rpb24oKXtjb25zdCB0PXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXModCkubGVuZ3RoPjApcmV0dXJuKDAsby5maWx0ZXJVdG1JbmZvKSh0KTtjb25zdCBlPW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjplLmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOmUuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsaS5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhyLHt3aWRnZXRfdHlwZTpoKHMpLGRvbWFpbjpsKHMpLGxpbms6dCx0YXJnZXRfdHlwZTplfSl9KGUuaHJlZixlLmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gbCh0KXtjb25zdCBlPWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gdC51dG1fc291cmNlfHxmdW5jdGlvbih0KXt0cnl7cmV0dXJuIG5ldyBVUkwodCkuaG9zdH1jYXRjaCh0KXtyZXR1cm4iIn19KGUpfWZ1bmN0aW9uIGgodCl7aWYodC51dG1fY2FtcGFpZ24pcmV0dXJuIHQudXRtX2NhbXBhaWduO2NvbnN0IGU9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGUuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP2Uuc3BsaXQoIi8iKVsyXTplfX0sMzg5Mjk4KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3RyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvOigpPT5vfSk7dmFyIGk9cyg0MDAxODEpO2FzeW5jIGZ1bmN0aW9uIG8odCl7TWF0aC5yYW5kb20oKT4uMDA1fHwoYXdhaXQoMCxpLmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRfbG9hZF9tZXRhX2luZm8vanNvbnNjaGVtYS8xLTAtMCIsdCl9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/indices/s-and-p-500.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.181Z","timestamp":1785154591181,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /indices/s-and-p-500.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"f120e635d6a57528861fe87233bc6c11\"\r\nlast-modified: Thu, 26 May 2022 07:17:22 GMT\r\ncdn-cachedat: 08/09/2025 14:29:45\r\nx-amz-id-2: qCsAUqIpsCfJaAWof8QktvCdDdkX7LP1F6Y3OLXsMYBG3TiLeqs03hdf/2Kd1TR5ArQ1JYOCQis=\r\nx-amz-request-id: B365SAHS09PPEEGF\r\nx-amz-meta-hash: f120e635d6a57528861fe87233bc6c11\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fe03aa72003fcb2b8185aecacc0d890b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1077,"size_decoded":1394,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1077), with no line terminators","md5":"f120e635d6a57528861fe87233bc6c11","sha1":"5375e7fbf750045de3953e70f9aca8ccd8fb659d","sha256":"bc65c6721af6fef8b02dca12cd466a18150acbe66203f45d76782f210194867e","sha512":"e2f959afe015e3c45b866ff60b73a3950af97eb0cafb7abc94bce2b3f6aacaaff0f61c2082ac1c6a92114af05773320027f699b4af2f9fc14c93ee25ffca34e7","ssdeep":"","tlshash":"9e11f3c9571476c82487ea41bf7d7dd96186baba2fb246c0d05fc52c52c37d2ad08c5c","first_seen":"2023-06-18T17:30:27Z","last_seen":"2026-07-27T14:20:57.273408Z","times_seen":4451,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjQzQxNjJFIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTQuMTQ3IDEyYzEuMzA4IDAgMi4yMTUtLjgyNCAyLjIxNS0yLjAzOHYtLjAwOGMwLTEuMDkzLS43ODgtMS44ODQtMS44OC0xLjg4NC0uNTc5IDAtMS4wNTIuMjM3LTEuMjkyLjYyN2gtLjAyNGwuMTQyLTEuNjMyaDIuNzA3VjYuMUgyLjM2MmwtLjI2NCAzLjQwNGgxLjAzM2MuMDctLjEyLjE2NS0uMjMzLjI3Ni0uMzIxLjE5Ny0uMTU3LjQ0OS0uMjQ1Ljc0OC0uMjQ1LjYyMyAwIDEuMDY4LjQzIDEuMDcyIDEuMDR2LjAwOWMwIC42MTgtLjQ0NSAxLjA1My0xLjA3NiAxLjA1My0uNTU1IDAtLjk2MS0uMzM4LTEuMDQ4LS43NzZsLS4wMDQtLjAyOEgybC4wMDQuMDZDMi4wNyAxMS4yNjUgMi44OTggMTIgNC4xNDcgMTJaTTguODg2IDEyYzEuNDI2IDAgMi4yOTMtMS4xNTMgMi4yOTMtMi45OTh2LS4wMDhDMTEuMTc5IDcuMTQ5IDEwLjMxMiA2IDguODg2IDZjLTEuNDMgMC0yLjI5NyAxLjE1LTIuMjk3IDIuOTk0di4wMDhjMCAxLjg0NS44NjYgMi45OTggMi4yOTcgMi45OThabTAtLjk3M2MtLjY5OCAwLTEuMDkyLS43NTEtMS4wOTItMi4wMjV2LS4wMDhjMC0xLjI3NC4zOTQtMi4wMjEgMS4wOTItMi4wMjEuNjkzIDAgMS4wOTEuNzQ3IDEuMDkxIDIuMDIxdi4wMDhjMCAxLjI3NC0uMzk4IDIuMDI1LTEuMDkxIDIuMDI1Wk0xMy43MDcgMTJDMTUuMTMzIDEyIDE2IDEwLjg0NyAxNiA5LjAwMnYtLjAwOEMxNiA3LjE0OSAxNS4xMzMgNiAxMy43MDcgNmMtMS40MyAwLTIuMjk3IDEuMTUtMi4yOTcgMi45OTR2LjAwOGMwIDEuODQ1Ljg2NyAyLjk5OCAyLjI5NyAyLjk5OFptMC0uOTczYy0uNjk4IDAtMS4wOTItLjc1MS0xLjA5Mi0yLjAyNXYtLjAwOGMwLTEuMjc0LjM5NC0yLjAyMSAxLjA5Mi0yLjAyMS42OTMgMCAxLjA5MS43NDcgMS4wOTEgMi4wMjF2LjAwOGMwIDEuMjc0LS4zOTggMi4wMjUtMS4wOTEgMi4wMjVaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":48,"timings":{"blocked":-1,"dns":21,"connect":13,"send":0,"wait":2,"receive":-1,"ssl":9},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCETH.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.257Z","timestamp":1785154591257,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /crypto/XTVCETH.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"6c8b94d554caad39b40a6f7147fdc6a5\"\r\nlast-modified: Wed, 26 Feb 2025 20:02:22 GMT\r\ncdn-cachedat: 08/09/2025 14:29:13\r\nx-amz-id-2: cjxB+0rsJO+G+g9GS4iIDBwPWU8gDfAMJoEjErDTv2wKdTYX9BsP2jwaadSiv0iWhu6SXJksiTE=\r\nx-amz-request-id: WYQ4X71VWYX7W99T\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 6c8b94d554caad39b40a6f7147fdc6a5\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 0a1afce6cae8a039bcc6bbdc64088f6c\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":1163,"size_decoded":1548,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1163), with no line terminators","md5":"6c8b94d554caad39b40a6f7147fdc6a5","sha1":"66d27f915603d3286cf7257c467fa70e1422a462","sha256":"de92a8cf9812de5a645ec6e45df7843458c106187045b6f94f431bbc2d1a703b","sha512":"ec6c9900e3c43c736df89e4140184f5bcc7d328843ddcabd17bcce25f1d5c4e0841c503f5d6927419340be7336574244f7675f9d90158284bc8348f0d3161ea4","ssdeep":"","tlshash":"2f212ea8e25db92b884783fccb2d54633a5460ee578443e6b056d63a3490bdbec00bc0","first_seen":"2025-04-10T12:22:36.097854Z","last_seen":"2026-07-27T14:20:57.350563Z","times_seen":5712,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC45NyAzLjE0VjcuMkw1LjExIDkuMWwzLjg2LTUuOTZaIiBmaWxsPSIjRTdGMEZGIi8+PHBhdGggZD0ibTUuMSA5LjEtLjAxLjA0IDMuODkgMi4yMVY3LjJMNS4xIDkuMVoiIGZpbGw9IiNBNUI5RUUiLz48cGF0aCBkPSJNOC45NyAzLjE0VjcuMmwzLjk0IDEuOTVMOSAzLjFsLS4wMi4wM1oiIGZpbGw9IiNBNUI4RjAiLz48cGF0aCBkPSJNMTIuOSA5LjE0IDkgMTEuMzZoLS4wM1Y3LjE4bDMuOTQgMS45NVoiIGZpbGw9IiM2ODdGQ0IiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Im05IDMgNCA2LjE1LTQgMi4yOC00LTIuMjhMOSAzWm0tLjA3LjMyTDUuMjYgOC45OGwzLjY3LTEuODRWMy4zMlptMCAzLjk0TDUuMjEgOS4xNGwzLjcyIDIuMTJ2LTRabS4xMyA0di00bDMuNzMgMS44OC0zLjczIDIuMTJabTMuNjgtMi4yN0w5LjA2IDcuMTRWMy4zMkwxMi43NCA5WiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik05IDE0LjkgNS4wNSA5Ljc2IDkgMTEuOTJsMy45NS0yLjE2TDkgMTQuOVoiIGZpbGw9IiNBOEI5RUYiLz48cGF0aCBkPSJNOSAxMS45MiA1LjA1IDkuNzYgOSAxNC45di0yLjk4WiIgZmlsbD0iI0U4RjFGRiIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0ibTUgOS44LjA5LS4wOEw5IDExLjg2bDMuOTEtMi4xNC4wOS4wOEw5IDE1IDUgOS44Wm0zLjk0IDIuMTUtMy42Ny0yIDMuNjcgNC43N3YtMi43N1ptLjEyIDIuNzd2LTIuNzdsMy42Ny0yLTMuNjcgNC43N1oiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI5IiB5MT0iMCIgeDI9IjkiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM0NjUxOTEiLz48c3RvcCBvZmZzZXQ9Ii4zNiIgc3RvcC1jb2xvcj0iIzMyNDk4RiIvPjxzdG9wIG9mZnNldD0iLjciIHN0b3AtY29sb3I9IiM1NTVFOTkiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM0RjU3OTUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBTC.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.839Z","timestamp":1785154591839,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCBTC.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css?family=Poppins:400,500,600,700,900|Mirza:400,700\u0026subset=arabic","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.304Z","timestamp":1785154589304,"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=Poppins:400,500,600,700,900|Mirza:400,700\u0026subset=arabic 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://persimmontrades.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 12:16:29 GMT\r\ndate: Mon, 27 Jul 2026 12:16:29 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":8917,"size_decoded":1574,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (649)","md5":"33fc09f481ccb91aa47920ea0d3bfadf","sha1":"aa38049f7ded26b6845074817c38c3ac22ac1f2e","sha256":"1da2b145a8c1fbc51bb7e7316d39734f1127c6c2f123d4afd8faf83ec2b432e6","sha512":"9111f2ae33d1247f2f1946806bf24a5b00d7840686b53916b29891f1ea36ea91e3fb0fa8c899dc14d186edd720f1cfac312629891364b7805181d62784b7e941","ssdeep":"192:PqCl3RkPUCl+qp+CKSe1rV3HwwVzzbKoaBk:rlAlm","tlshash":"9902cce1087e90447b831cc223ce7c37de0ea29574449438abfe0d8dada7c26636176d","first_seen":"2025-09-22T10:43:48.524829Z","last_seen":"2026-07-27T12:17:29.201422Z","times_seen":29,"resource_available":false,"data":"LyogYXJhYmljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTWlyemEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9taXJ6YS92MTkvY28zSW1XbGlraU41RXRyZklzYUFzZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDYwMC0wNkZGLCBVKzA3NTAtMDc3RiwgVSswODcwLTA4OEUsIFUrMDg5MC0wODkxLCBVKzA4OTctMDhFMSwgVSswOEUzLTA4RkYsIFUrMjAwQy0yMDBFLCBVKzIwMTAtMjAxMSwgVSsyMDRGLCBVKzJFNDEsIFUrRkI1MC1GREZGLCBVK0ZFNzAtRkU3NCwgVStGRTc2LUZFRkMsIFUrMTAyRTAtMTAyRkIsIFUrMTBFNjAtMTBFN0UsIFUrMTBFQzItMTBFQzQsIFUrMTBFRkMtMTBFRkYsIFUrMUVFMDAtMUVFMDMsIFUrMUVFMDUtMUVFMUYsIFUrMUVFMjEtMUVFMjIsIFUrMUVFMjQsIFUrMUVFMjcsIFUrMUVFMjktMUVFMzIsIFUrMUVFMzQtMUVFMzcsIFUrMUVFMzksIFUrMUVFM0IsIFUrMUVFNDIsIFUrMUVFNDcsIFUrMUVFNDksIFUrMUVFNEIsIFUrMUVFNEQtMUVFNEYsIFUrMUVFNTEtMUVFNTIsIFUrMUVFNTQsIFUrMUVFNTcsIFUrMUVFNTksIFUrMUVFNUIsIFUrMUVFNUQsIFUrMUVFNUYsIFUrMUVFNjEtMUVFNjIsIFUrMUVFNjQsIFUrMUVFNjctMUVFNkEsIFUrMUVFNkMtMUVFNzIsIFUrMUVFNzQtMUVFNzcsIFUrMUVFNzktMUVFN0MsIFUrMUVFN0UsIFUrMUVFODAtMUVFODksIFUrMUVFOEItMUVFOUIsIFUrMUVFQTEtMUVFQTMsIFUrMUVFQTUtMUVFQTksIFUrMUVFQUItMUVFQkIsIFUrMUVFRjAtMUVFRjE7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTWlyemEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9taXJ6YS92MTkvY28zSW1XbGlraU41RXRyVUlzYUFzZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTWlyemEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9taXJ6YS92MTkvY28zSW1XbGlraU41RXRyYUlzWS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGFyYWJpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01pcnphJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbWlyemEvdjE5L2NvM0ZtV2xpa2lONUV0SmhCOU82azZieG9nLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNjAwLTA2RkYsIFUrMDc1MC0wNzdGLCBVKzA4NzAtMDg4RSwgVSswODkwLTA4OTEsIFUrMDg5Ny0wOEUxLCBVKzA4RTMtMDhGRiwgVSsyMDBDLTIwMEUsIFUrMjAxMC0yMDExLCBVKzIwNEYsIFUrMkU0MSwgVStGQjUwLUZERkYsIFUrRkU3MC1GRTc0LCBVK0ZFNzYtRkVGQywgVSsxMDJFMC0xMDJGQiwgVSsxMEU2MC0xMEU3RSwgVSsxMEVDMi0xMEVDNCwgVSsxMEVGQy0xMEVGRiwgVSsxRUUwMC0xRUUwMywgVSsxRUUwNS0xRUUxRiwgVSsxRUUyMS0xRUUyMiwgVSsxRUUyNCwgVSsxRUUyNywgVSsxRUUyOS0xRUUzMiwgVSsxRUUzNC0xRUUzNywgVSsxRUUzOSwgVSsxRUUzQiwgVSsxRUU0MiwgVSsxRUU0NywgVSsxRUU0OSwgVSsxRUU0QiwgVSsxRUU0RC0xRUU0RiwgVSsxRUU1MS0xRUU1MiwgVSsxRUU1NCwgVSsxRUU1NywgVSsxRUU1OSwgVSsxRUU1QiwgVSsxRUU1RCwgVSsxRUU1RiwgVSsxRUU2MS0xRUU2MiwgVSsxRUU2NCwgVSsxRUU2Ny0xRUU2QSwgVSsxRUU2Qy0xRUU3MiwgVSsxRUU3NC0xRUU3NywgVSsxRUU3OS0xRUU3QywgVSsxRUU3RSwgVSsxRUU4MC0xRUU4OSwgVSsxRUU4Qi0xRUU5QiwgVSsxRUVBMS0xRUVBMywgVSsxRUVBNS0xRUVBOSwgVSsxRUVBQi0xRUVCQiwgVSsxRUVGMC0xRUVGMTsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNaXJ6YSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21pcnphL3YxOS9jbzNGbVdsaWtpTjVFdEpoQjlPeGs2YnhvZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTWlyemEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9taXJ6YS92MTkvY28zRm1XbGlraU41RXRKaEI5T19rNlkud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBkZXZhbmFnYXJpICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUV5cDhrdjhKSGdGVnJKSmJlY21ORS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDkwMC0wOTdGLCBVKzFDRDAtMUNGOSwgVSsyMDBDLTIwMEQsIFUrMjBBOCwgVSsyMEI5LCBVKzIwRjAsIFUrMjVDQywgVStBODMwLUE4MzksIFUrQThFMC1BOEZGLCBVKzExQjAwLTExQjA5Owp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlFeXA4a3Y4SkhnRlZySkpuZWNtTkUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlFeXA4a3Y4SkhnRlZySkpmZWNnLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogZGV2YW5hZ2FyaSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEdUOVoxMWxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMR1Q5WjFKbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEdUOVoxeGxGUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGRldmFuYWdhcmkgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxFajZaMTFsRmMtSy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDkwMC0wOTdGLCBVKzFDRDAtMUNGOSwgVSsyMDBDLTIwMEQsIFUrMjBBOCwgVSsyMEI5LCBVKzIwRjAsIFUrMjVDQywgVStBODMwLUE4MzksIFUrQThFMC1BOEZGLCBVKzExQjAwLTExQjA5Owp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEVqNloxSmxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxFajZaMXhsRlEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBkZXZhbmFnYXJpICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMQ3o3WjExbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA5MDAtMDk3RiwgVSsxQ0QwLTFDRjksIFUrMjAwQy0yMDBELCBVKzIwQTgsIFUrMjBCOSwgVSsyMEYwLCBVKzI1Q0MsIFUrQTgzMC1BODM5LCBVK0E4RTAtQThGRiwgVSsxMUIwMC0xMUIwOTsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxDejdaMUpsRmMtSy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMQ3o3WjF4bEZRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogZGV2YW5hZ2FyaSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogOTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEJUNVoxMWxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA5MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMQlQ1WjFKbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogOTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEJUNVoxeGxGUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Cg=="}},"time_used":121,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":47,"receive":0,"ssl":56},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/slider_bg1.jpg","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.341Z","timestamp":1785154589341,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/slider_bg1.jpg HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 113752\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":113752,"size_decoded":114020,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 1920x900, components 3","md5":"9cc0ccedab62d615e7435ed69c6aa562","sha1":"a507c1f79e9c7cfba8b53be16de9009e27b17e12","sha256":"5562c973c57163da04f37bc031c9303c1d8d57126b99157cba9f49e0a9839454","sha512":"35fce1fc6ac2293694bb0031752c520bdbcd535969895faf7cc360a5a340f17efba196f8cb17229c2586da67827679752af43ce12bbe8a39b659044023189c3a","ssdeep":"3072:eqofI1ntiWf2r4S+YncIblEd9Jd5WoOZj:egMWOMt07blAJWH","tlshash":"c6b3126e66776117ee0c6abd6bfa0f340f12c0e66d7d2f9242585226cc61f8eb2550e0","first_seen":"2025-07-30T23:06:03.941734Z","last_seen":"2026-07-27T12:17:29.182273Z","times_seen":8,"resource_available":false,"data":"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"}},"time_used":108,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":50,"receive":58,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/service7.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.346Z","timestamp":1785154589346,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/service7.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 3483\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3483,"size_decoded":3748,"mime_type":"image/png","magic":"PNG image data, 160 x 133, 8-bit colormap, non-interlaced","md5":"bed314be11405e29cc342c5291dee847","sha1":"892328d2425595b0dc2513c25577e3fb6f87060f","sha256":"fe4c71efabaa014e7a28d54e9fd9687bdb9f0a750f2a5a0bbe56e8ba699b6f6a","sha512":"ebcae468628ca0ef8db943250390bfa001616deaf453932cc86b799e3cb43712891c597f5c84a819599bfd17a5bca247ad0caadc656bff5c850ed196cfd97112","ssdeep":"","tlshash":"0f715bcb75d73e186594d39308b06aee51134c513d9dafd05f38c016b8c4a2da1f5b8d","first_seen":"2025-07-30T23:06:04.02754Z","last_seen":"2026-07-27T12:17:29.228714Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.650Z","timestamp":1785154589650,"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 /s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://persimmontrades.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/2 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 7748\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 03:05:43 GMT\r\nexpires: Fri, 23 Jul 2027 03:05:43 GMT\r\ncache-control: public, max-age=31536000\r\nage: 378646\r\nlast-modified: Mon, 15 Sep 2025 16:36:26 GMT\r\ncontent-type: font/woff2\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":7748,"size_decoded":8580,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 7748, version 1.0","md5":"a09f2fccfee35b7247b08a1a266f0328","sha1":"0da2d17e738f46d2a09e6fb7969da451719a9820","sha256":"cd36de204aca2d5fa263a731f7c20009b5e3d754ba1f1e03c33e93a48f3e7446","sha512":"5e3f9a298003b84250ec6801e08ad2a4ff8845d4c3e13ea61bec37da24d26ede13b436257882124cc0c27e9a323ba92e7d23c6ad3f48a7b75535f5ed98813a0e","ssdeep":"96:0g6vAF/FXh6MmoI56TEwosGU/DbVF/QBT1gaHEYT6u/w3hXLbJPAS772+6haAftj:zp6x6TYpoDYBJg8TRkbJPAS/2+CzQa7","tlshash":"f3f19de65d1e5e8980f0102f6f6efce767950d88141dadf9a9e72f884c6ba1b04c90cd","first_seen":"2023-04-05T13:48:05Z","last_seen":"2026-07-27T14:14:52.240284Z","times_seen":268512,"resource_available":true,"data":"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"}},"time_used":165,"timings":{"blocked":99,"dns":0,"connect":15,"send":0,"wait":16,"receive":1,"ssl":33},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.748Z","timestamp":1785154589748,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://persimmontrades.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 8000\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:16 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:16 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Mon, 15 Sep 2025 16:33:57 GMT\r\ncontent-type: font/woff2\r\nage: 428773\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":8000,"size_decoded":8812,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 8000, version 1.0","md5":"72993dddf88a63e8f226656f7de88e57","sha1":"179f97ec0275f09603a8db94d4380eb584d81cd5","sha256":"f4e80d9dfd374d02989b87a27b5ed4cb78fbb177c27f1478e9a8b0afb7513149","sha512":"7c20165f9d22a86341e841fd58526209017dcde2afe2d0d2a89fe853d95dc69f658d25cf798c71f452dab09843fc808c1ae87a60b1284134163abf5a1d93e50a","ssdeep":"192:GDonmfrEdXT8WrxzRXwyQo3zGEOM7Y2hOMgWnsfYSjv4ENFGwrlKJ:8onPxTzjgyQSzLPXOTIYHJAJ","tlshash":"08f1b0ffa92456c4df692475a5044f27623652b4dd35cb2f496f3e12d2d74224bcc4c1","first_seen":"2023-04-05T18:53:14Z","last_seen":"2026-07-27T14:18:36.421213Z","times_seen":283641,"resource_available":false,"data":"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"}},"time_used":22,"timings":{"blocked":3,"dns":0,"connect":0,"send":0,"wait":18,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/43325.256fa5a5213b9cb70f5c.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.175Z","timestamp":1785154590175,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/43325.256fa5a5213b9cb70f5c.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b74-b07\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:24 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:17:08\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 63f1d316603d0ff4f45614c178a3abd6\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2823,"size_decoded":1643,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2823), with no line terminators","md5":"9117f5417af5435afba6f7700053a6fc","sha1":"28521c103a762e72c133892f41ee2fb550e20888","sha256":"e121896dc20723795767320cb9facd147ce5ba20427b67b47b47eb2f85d85b67","sha512":"7e71e1b26466a549b6496d8e84f2581eff4877ff30f1d0deaa365a3c6729bf545e9672f4a4c8417b5dfe1c7d61cfd349b3c6d476823a50b074c4a6423cb09a67","ssdeep":"","tlshash":"275188abfbcb1e2de71bcea1e7a712ff91a405c1be584138e5b3ad71064ca741724184","first_seen":"2026-04-15T09:47:56.523899Z","last_seen":"2026-07-27T14:18:36.327292Z","times_seen":4971,"resource_available":false,"data":"LmxhYmVsLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDttYXgtd2lkdGg6MjhweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOm1heC13aWR0aCAuNnMgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHMsYmFja2dyb3VuZCAuM3MgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHM7ei1pbmRleDozfS5sYWJlbC1kemJkN2x5ViAubG9nb1dyYXAtZHpiZDdseVZ7cGFkZGluZy1pbmxpbmUtZW5kOjVweH0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWRCeUNsaWNrLWR6YmQ3bHlWLC5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWe21heC13aWR0aDoxMDVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxhYmVsLWR6YmQ3bHlWOmhvdmVye21heC13aWR0aDoxMDVweH19LmxhYmVsLWR6YmQ3bHlWOm5vdChhKXtjdXJzb3I6ZGVmYXVsdH0ubGFiZWwtZHpiZDdseVY6Zm9jdXN7b3V0bGluZTphdXRvO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO291dGxpbmUtb2Zmc2V0Oi0ycHg7b3V0bGluZS13aWR0aDoycHh9LmxhYmVsLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2luc2V0LWlubGluZS1zdGFydDo4cHh9LmxhYmVsLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzowIDJweCA0cHggMCB2YXIoLS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KX0ubGFiZWwtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2luc2V0LWlubGluZS1lbmQ6OHB4fS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MDtib3JkZXItZW5kLWVuZC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoxMnB4O2luc2V0LWlubGluZS1zdGFydDowfS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLmVuZC1kemJkN2x5Vntib3JkZXItcmFkaXVzOjA7Ym9yZGVyLWVuZC1zdGFydC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjEycHg7aW5zZXQtaW5saW5lLWVuZDowfS5sYWJlbC1kemJkN2x5Vi50b3AtZHpiZDdseVZ7dG9wOjhweH1AbWVkaWEgKG1heC1oZWlnaHQ6NTBweCl7LmxhYmVsLWR6YmQ3bHlWLnRvcC1kemJkN2x5Vnt0b3A6YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfX0ubGFiZWwtZHpiZDdseVYuYm90dG9tLWR6YmQ3bHlWe2JvdHRvbTo4cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTtib3JkZXItcmFkaXVzOjE3cHg7aGVpZ2h0OjM0cHg7bWF4LXdpZHRoOjM0cHg7cGFkZGluZzowIDZweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYgLmxvZ29XcmFwLWR6YmQ3bHlWe3BhZGRpbmctaW5saW5lLWVuZDo1cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzpub25lfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MCAxN3B4IDE3cHggMH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5zdGFydC1kemJkN2x5VjpkaXIocnRsKXtib3JkZXItcmFkaXVzOjE3cHggMCAwIDE3cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLnNuYXAtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTdweCAwIDAgMTdweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5lbmQtZHpiZDdseVY6ZGlyKHJ0bCl7Ym9yZGVyLXJhZGl1czowIDE3cHggMTdweCAwfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5leHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVZ7bWF4LXdpZHRoOjExMXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOjExMXB4fX0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVZ7bWF4LXdpZHRoOm5vbmU7dHJhbnNpdGlvbjpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOm5vbmV9fS5sYWJlbF9fbGluay1kemJkN2x5Vntib3JkZXItcmFkaXVzOmluaGVyaXQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZC1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkQnlDbGljay1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVYgLmxhYmVsX19saW5rLWR6YmQ3bHlWe3BvaW50ZXItZXZlbnRzOmF1dG99QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5sYWJlbC1kemJkN2x5Vjpob3ZlciAubGFiZWxfX2xpbmstZHpiZDdseVZ7cG9pbnRlci1ldmVudHM6YXV0b319"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/36166.7637be1cf2514504ac79.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.551Z","timestamp":1785154590551,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/36166.7637be1cf2514504ac79.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-52e1\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1773a61969cec699bc7a96f022c52305\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":21217,"size_decoded":9572,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3063)","md5":"51776a5fc46a025b06d1b20c444a8934","sha1":"ded406bfe93dcf4112270cd3f1634b7bec2da0cf","sha256":"6619f156d8b0192fb34d6c756bf0bda361c55a6a2d79c9fe1117d9a83ad626df","sha512":"1a8c2a8de6868dcf9765cf86c13f9a9f50c87cc022a6142c3a48a4e8da04589a6c06376ccb2928de274dd64f5558784b2a5f2c5c13617c7c40ea38359ab819ad","ssdeep":"384:Ew9WKLri/jpKfQVAFzMnNReRhrt3bkiRWXxKziTObRcRbF:Ew9WKa9K4Gz4fejx1RWszhbe9F","tlshash":"8492b5c8b1e1f0e556e768a0807f444bf13a7d19349e9060a3a2d4d678b46dec07bf6e","first_seen":"2026-07-25T03:24:57.421925Z","last_seen":"2026-07-27T14:26:47.098053Z","times_seen":306,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNjE2Niw4MDcwNl0sezcxMjc0NSh0LHIsZSl7dmFyIG47IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBvLHU9MWU2LGk9MWU2LGM9IltiaWcuanNdICIsZj1jKyJJbnZhbGlkICIscz1mKyJkZWNpbWFsIHBsYWNlcyIsYT1mKyJyb3VuZGluZyBtb2RlIixsPWMrIkRpdmlzaW9uIGJ5IHplcm8iLHA9e30saD12b2lkIDAsZD0vXi0/KFxkKyhcLlxkKik/fFwuXGQrKShlWystXT9cZCspPyQvaTtmdW5jdGlvbiB5KHQscixlLG4pe3ZhciBvPXQuYztpZihlPT09aCYmKGU9dC5jb25zdHJ1Y3Rvci5STSksMCE9PWUmJjEhPT1lJiYyIT09ZSYmMyE9PWUpdGhyb3cgRXJyb3IoYSk7aWYocjwxKW49Mz09PWUmJihufHwhIW9bMF0pfHwwPT09ciYmKDE9PT1lJiZvWzBdPj01fHwyPT09ZSYmKG9bMF0+NXx8NT09PW9bMF0mJihufHxvWzFdIT09aCkpKSxvLmxlbmd0aD0xLG4/KHQuZT10LmUtcisxLG9bMF09MSk6b1swXT10LmU9MDtlbHNlIGlmKHI8by5sZW5ndGgpe2lmKG49MT09PWUmJm9bcl0+PTV8fDI9PT1lJiYob1tyXT41fHw1PT09b1tyXSYmKG58fG9bcisxXSE9PWh8fDEmb1tyLTFdKSl8fDM9PT1lJiYobnx8ISFvWzBdKSxvLmxlbmd0aD1yLS0sbilmb3IoOysrb1tyXT45OylvW3JdPTAsci0tfHwoKyt0LmUsby51bnNoaWZ0KDEpKTtmb3Iocj1vLmxlbmd0aDshb1stLXJdOylvLnBvcCgpfXJldHVybiB0fWZ1bmN0aW9uIHYodCxyLGUpe3ZhciBuPXQuZSxvPXQuYy5qb2luKCIiKSx1PW8ubGVuZ3RoO2lmKHIpbz1vLmNoYXJBdCgwKSsodT4xPyIuIitvLnNsaWNlKDEpOiIiKSsobjwwPyJlIjoiZSsiKStuO2Vsc2UgaWYobjwwKXtmb3IoOysrbjspbz0iMCIrbztvPSIwLiIrb31lbHNlIGlmKG4+MClpZigrK24+dSlmb3Iobi09dTtuLS07KW8rPSIwIjtlbHNlIG48dSYmKG89by5zbGljZSgwLG4pKyIuIitvLnNsaWNlKG4pKTtlbHNlIHU+MSYmKG89by5jaGFyQXQoMCkrIi4iK28uc2xpY2UoMSkpO3JldHVybiB0LnM8MCYmZT8iLSIrbzpvfXAuYWJzPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyk7cmV0dXJuIHQucz0xLHR9LHAuY21wPWZ1bmN0aW9uKHQpe3ZhciByLGU9dGhpcyxuPWUuYyxvPSh0PW5ldyBlLmNvbnN0cnVjdG9yKHQpKS5jLHU9ZS5zLGk9dC5zLGM9ZS5lLGY9dC5lO2lmKCFuWzBdfHwhb1swXSlyZXR1cm4gblswXT91Om9bMF0/LWk6MDtpZih1IT1pKXJldHVybiB1O2lmKHI9dTwwLGMhPWYpcmV0dXJuIGM+Zl5yPzE6LTE7Zm9yKGk9KGM9bi5sZW5ndGgpPChmPW8ubGVuZ3RoKT9jOmYsdT0tMTsrK3U8aTspaWYoblt1XSE9b1t1XSlyZXR1cm4gblt1XT5vW3VdXnI/MTotMTtyZXR1cm4gYz09Zj8wOmM+Zl5yPzE6LTF9LHAuZGl2PWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMsZT1yLmNvbnN0cnVjdG9yLG49ci5jLG89KHQ9bmV3IGUodCkpLmMsaT1yLnM9PXQucz8xOi0xLGM9ZS5EUDtpZihjIT09fn5jfHxjPDB8fGM+dSl0aHJvdyBFcnJvcihzKTtpZighb1swXSl0aHJvdyBFcnJvcihsKTtpZighblswXSlyZXR1cm4gdC5zPWksdC5jPVt0LmU9MF0sdDt2YXIgZixhLHAsZCx2LHc9by5zbGljZSgpLGI9Zj1vLmxlbmd0aCxnPW4ubGVuZ3RoLG09bi5zbGljZSgwLGYpLEU9bS5sZW5ndGgsXz10LFM9Xy5jPVtdLE89MCxqPWMrKF8uZT1yLmUtdC5lKSsxO2ZvcihfLnM9aSxpPWo8MD8wOmosdy51bnNoaWZ0KDApO0UrKzxmOyltLnB1c2goMCk7ZG97Zm9yKHA9MDtwPDEwO3ArKyl7aWYoZiE9KEU9bS5sZW5ndGgpKWQ9Zj5FPzE6LTE7ZWxzZSBmb3Iodj0tMSxkPTA7Kyt2PGY7KWlmKG9bdl0hPW1bdl0pe2Q9b1t2XT5tW3ZdPzE6LTE7YnJlYWt9aWYoIShkPDApKWJyZWFrO2ZvcihhPUU9PWY/bzp3O0U7KXtpZihtWy0tRV08YVtFXSl7Zm9yKHY9RTt2JiYhbVstLXZdOyltW3ZdPTk7LS1tW3ZdLG1bRV0rPTEwfW1bRV0tPWFbRV19Zm9yKDshbVswXTspbS5zaGlmdCgpfVNbTysrXT1kP3A6KytwLG1bMF0mJmQ/bVtFXT1uW2JdfHwwOm09W25bYl1dfXdoaWxlKChiKys8Z3x8bVswXSE9PWgpJiZpLS0pO3JldHVybiBTWzBdfHwxPT1PfHwoUy5zaGlmdCgpLF8uZS0tLGotLSksTz5qJiZ5KF8saixlLlJNLG1bMF0hPT1oKSxffSxwLmVxPWZ1bmN0aW9uKHQpe3JldHVybiAwPT09dGhpcy5jbXAodCl9LHAuZ3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY21wKHQpPjB9LHAuZ3RlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmNtcCh0KT4tMX0scC5sdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jbXAodCk8MH0scC5sdGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY21wKHQpPDF9LHAubWludXM9cC5zdWI9ZnVuY3Rpb24odCl7dmFyIHIsZSxuLG8sdT10aGlzLGk9dS5jb25zdHJ1Y3RvcixjPXUucyxmPSh0PW5ldyBpKHQpKS5zO2lmKGMhPWYpcmV0dXJuIHQucz0tZix1LnBsdXModCk7dmFyIHM9dS5jLnNsaWNlKCksYT11LmUsbD10LmMscD10LmU7aWYoIXNbMF18fCFsWzBdKXJldHVybiBsWzBdP3Qucz0tZjpzWzBdP3Q9bmV3IGkodSk6dC5zPTEsdDtpZihjPWEtcCl7Zm9yKChvPWM8MCk/KGM9LWMsbj1zKToocD1hLG49bCksbi5yZXZlcnNlKCksZj1jO2YtLTspbi5wdXNoKDApO24ucmV2ZXJzZSgpfWVsc2UgZm9yKGU9KChvPXMubGVuZ3RoPGwubGVuZ3RoKT9zOmwpLmxlbmd0aCxjPWY9MDtmPGU7ZisrKWlmKHNbZl0hPWxbZl0pe289c1tmXTxsW2ZdO2JyZWFrfWlmKG8mJihuPXMscz1sLGw9bix0LnM9LXQucyksKGY9KGU9bC5sZW5ndGgpLShyPXMubGVuZ3RoKSk+MClmb3IoO2YtLTspc1tyKytdPTA7Zm9yKGY9cjtlPmM7KXtpZihzWy0tZV08bFtlXSl7Zm9yKHI9ZTtyJiYhc1stLXJdOylzW3JdPTk7LS1zW3JdLHNbZV0rPTEwfXNbZV0tPWxbZV19Zm9yKDswPT09c1stLWZdOylzLnBvcCgpO2Zvcig7MD09PXNbMF07KXMuc2hpZnQoKSwtLXA7cmV0dXJuIHNbMF18fCh0LnM9MSxzPVtwPTBdKSx0LmM9cyx0LmU9cCx0fSxwLm1vZD1mdW5jdGlvbih0KXsKdmFyIHIsZT10aGlzLG49ZS5jb25zdHJ1Y3RvcixvPWUucyx1PSh0PW5ldyBuKHQpKS5zO2lmKCF0LmNbMF0pdGhyb3cgRXJyb3IobCk7cmV0dXJuIGUucz10LnM9MSxyPTE9PXQuY21wKGUpLGUucz1vLHQucz11LHI/bmV3IG4oZSk6KG89bi5EUCx1PW4uUk0sbi5EUD1uLlJNPTAsZT1lLmRpdih0KSxuLkRQPW8sbi5STT11LHRoaXMubWludXMoZS50aW1lcyh0KSkpfSxwLnBsdXM9cC5hZGQ9ZnVuY3Rpb24odCl7dmFyIHIsZSxuLG89dGhpcyx1PW8uY29uc3RydWN0b3I7aWYodD1uZXcgdSh0KSxvLnMhPXQucylyZXR1cm4gdC5zPS10LnMsby5taW51cyh0KTt2YXIgaT1vLmUsYz1vLmMsZj10LmUscz10LmM7aWYoIWNbMF18fCFzWzBdKXJldHVybiBzWzBdfHwoY1swXT90PW5ldyB1KG8pOnQucz1vLnMpLHQ7aWYoYz1jLnNsaWNlKCkscj1pLWYpe2ZvcihyPjA/KGY9aSxuPXMpOihyPS1yLG49Yyksbi5yZXZlcnNlKCk7ci0tOyluLnB1c2goMCk7bi5yZXZlcnNlKCl9Zm9yKGMubGVuZ3RoLXMubGVuZ3RoPDAmJihuPXMscz1jLGM9bikscj1zLmxlbmd0aCxlPTA7cjtjW3JdJT0xMCllPShjWy0tcl09Y1tyXStzW3JdK2UpLzEwfDA7Zm9yKGUmJihjLnVuc2hpZnQoZSksKytmKSxyPWMubGVuZ3RoOzA9PT1jWy0tcl07KWMucG9wKCk7cmV0dXJuIHQuYz1jLHQuZT1mLHR9LHAucG93PWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMsZT1uZXcgci5jb25zdHJ1Y3RvcigiMSIpLG49ZSxvPXQ8MDtpZih0IT09fn50fHx0PC0xZTZ8fHQ+aSl0aHJvdyBFcnJvcihmKyJleHBvbmVudCIpO2ZvcihvJiYodD0tdCk7MSZ0JiYobj1uLnRpbWVzKHIpKSx0Pj49MTspcj1yLnRpbWVzKHIpO3JldHVybiBvP2UuZGl2KG4pOm59LHAucHJlYz1mdW5jdGlvbih0LHIpe2lmKHQhPT1+fnR8fHQ8MXx8dD51KXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO3JldHVybiB5KG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpLHQscil9LHAucm91bmQ9ZnVuY3Rpb24odCxyKXtpZih0PT09aCl0PTA7ZWxzZSBpZih0IT09fn50fHx0PC11fHx0PnUpdGhyb3cgRXJyb3Iocyk7cmV0dXJuIHkobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyksdCt0aGlzLmUrMSxyKX0scC5zcXJ0PWZ1bmN0aW9uKCl7dmFyIHQscixlLG49dGhpcyxvPW4uY29uc3RydWN0b3IsdT1uLnMsaT1uLmUsZj1uZXcgbygiMC41Iik7aWYoIW4uY1swXSlyZXR1cm4gbmV3IG8obik7aWYodTwwKXRocm93IEVycm9yKGMrIk5vIHNxdWFyZSByb290Iik7MD09PSh1PU1hdGguc3FydChuKyIiKSl8fHU9PT0xLzA/KChyPW4uYy5qb2luKCIiKSkubGVuZ3RoK2kmMXx8KHIrPSIwIiksaT0oKGkrMSkvMnwwKS0oaTwwfHwxJmkpLHQ9bmV3IG8oKCh1PU1hdGguc3FydChyKSk9PTEvMD8iNWUiOih1PXUudG9FeHBvbmVudGlhbCgpKS5zbGljZSgwLHUuaW5kZXhPZigiZSIpKzEpKStpKSk6dD1uZXcgbyh1KyIiKSxpPXQuZSsoby5EUCs9NCk7ZG97ZT10LHQ9Zi50aW1lcyhlLnBsdXMobi5kaXYoZSkpKX13aGlsZShlLmMuc2xpY2UoMCxpKS5qb2luKCIiKSE9PXQuYy5zbGljZSgwLGkpLmpvaW4oIiIpKTtyZXR1cm4geSh0LChvLkRQLT00KSt0LmUrMSxvLlJNKX0scC50aW1lcz1wLm11bD1mdW5jdGlvbih0KXt2YXIgcixlPXRoaXMsbj1lLmNvbnN0cnVjdG9yLG89ZS5jLHU9KHQ9bmV3IG4odCkpLmMsaT1vLmxlbmd0aCxjPXUubGVuZ3RoLGY9ZS5lLHM9dC5lO2lmKHQucz1lLnM9PXQucz8xOi0xLCFvWzBdfHwhdVswXSlyZXR1cm4gdC5jPVt0LmU9MF0sdDtmb3IodC5lPWYrcyxpPGMmJihyPW8sbz11LHU9cixzPWksaT1jLGM9cykscj1uZXcgQXJyYXkocz1pK2MpO3MtLTspcltzXT0wO2ZvcihmPWM7Zi0tOyl7Zm9yKGM9MCxzPWkrZjtzPmY7KWM9cltzXSt1W2ZdKm9bcy1mLTFdK2MscltzLS1dPWMlMTAsYz1jLzEwfDA7cltzXT1jfWZvcihjPysrdC5lOnIuc2hpZnQoKSxmPXIubGVuZ3RoOyFyWy0tZl07KXIucG9wKCk7cmV0dXJuIHQuYz1yLHR9LHAudG9FeHBvbmVudGlhbD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMsbj1lLmNbMF07aWYodCE9PWgpe2lmKHQhPT1+fnR8fHQ8MHx8dD51KXRocm93IEVycm9yKHMpO2ZvcihlPXkobmV3IGUuY29uc3RydWN0b3IoZSksKyt0LHIpO2UuYy5sZW5ndGg8dDspZS5jLnB1c2goMCl9cmV0dXJuIHYoZSwhMCwhIW4pfSxwLnRvRml4ZWQ9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLG49ZS5jWzBdO2lmKHQhPT1oKXtpZih0IT09fn50fHx0PDB8fHQ+dSl0aHJvdyBFcnJvcihzKTtmb3IodD10KyhlPXkobmV3IGUuY29uc3RydWN0b3IoZSksdCtlLmUrMSxyKSkuZSsxO2UuYy5sZW5ndGg8dDspZS5jLnB1c2goMCl9cmV0dXJuIHYoZSwhMSwhIW4pfSxwLnRvSlNPTj1wLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxyPXQuY29uc3RydWN0b3I7cmV0dXJuIHYodCx0LmU8PXIuTkV8fHQuZT49ci5QRSwhIXQuY1swXSl9LHAudG9OdW1iZXI9ZnVuY3Rpb24oKXt2YXIgdD1OdW1iZXIodih0aGlzLCEwLCEwKSk7aWYoITA9PT10aGlzLmNvbnN0cnVjdG9yLnN0cmljdCYmIXRoaXMuZXEodC50b1N0cmluZygpKSl0aHJvdyBFcnJvcihjKyJJbXByZWNpc2UgY29udmVyc2lvbiIpO3JldHVybiB0fSxwLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcyxuPWUuY29uc3RydWN0b3Isbz1lLmNbMF07aWYodCE9PWgpe2lmKHQhPT1+fnR8fHQ8MXx8dD51KXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO2ZvcihlPXkobmV3IG4oZSksdCxyKTtlLmMubGVuZ3RoPHQ7KWUuYy5wdXNoKDApfXJldHVybiB2KGUsdDw9ZS5lfHxlLmU8PW4uTkV8fGUuZT49bi5QRSwhIW8pfSxwLnZhbHVlT2Y9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLHI9dC5jb25zdHJ1Y3RvcjtpZighMD09PXIuc3RyaWN0KXRocm93IEVycm9yKGMrInZhbHVlT2YgZGlzYWxsb3dlZCIpO3JldHVybiB2KHQsdC5lPD1yLk5FfHx0LmU+PXIuUEUsITApfSxvPWZ1bmN0aW9uIHQoKXtmdW5jdGlvbiByKGUpe3ZhciBuPXRoaXM7aWYoIShuIGluc3RhbmNlb2YgcikpcmV0dXJuIGU9PT1oP3QoKTpuZXcgcihlKTtpZihlIGluc3RhbmNlb2YgciluLnM9ZS5zLG4uZT1lLmUsCm4uYz1lLmMuc2xpY2UoKTtlbHNle2lmKCJzdHJpbmciIT10eXBlb2YgZSl7aWYoITA9PT1yLnN0cmljdCl0aHJvdyBUeXBlRXJyb3IoZisibnVtYmVyIik7ZT0wPT09ZSYmMS9lPDA/Ii0wIjpTdHJpbmcoZSl9IWZ1bmN0aW9uKHQscil7dmFyIGUsbixvO2lmKCFkLnRlc3QocikpdGhyb3cgRXJyb3IoZisibnVtYmVyIik7dC5zPSItIj09ci5jaGFyQXQoMCk/KHI9ci5zbGljZSgxKSwtMSk6MSwoZT1yLmluZGV4T2YoIi4iKSk+LTEmJihyPXIucmVwbGFjZSgiLiIsIiIpKTsobj1yLnNlYXJjaCgvZS9pKSk+MD8oZTwwJiYoZT1uKSxlKz0rci5zbGljZShuKzEpLHI9ci5zdWJzdHJpbmcoMCxuKSk6ZTwwJiYoZT1yLmxlbmd0aCk7Zm9yKG89ci5sZW5ndGgsbj0wO248byYmIjAiPT1yLmNoYXJBdChuKTspKytuO2lmKG49PW8pdC5jPVt0LmU9MF07ZWxzZXtmb3IoO28+MCYmIjAiPT1yLmNoYXJBdCgtLW8pOyk7Zm9yKHQuZT1lLW4tMSx0LmM9W10sZT0wO248PW87KXQuY1tlKytdPStyLmNoYXJBdChuKyspfX0obixlKX1uLmNvbnN0cnVjdG9yPXJ9cmV0dXJuIHIucHJvdG90eXBlPXAsci5EUD0yMCxyLlJNPTEsci5ORT0tNyxyLlBFPTIxLHIuc3RyaWN0PWZhbHNlLHIucm91bmREb3duPTAsci5yb3VuZEhhbGZVcD0xLHIucm91bmRIYWxmRXZlbj0yLHIucm91bmRVcD0zLHJ9KCksby5kZWZhdWx0PW8uQmlnPW8sdm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gb30uY2FsbChyLGUscix0KSl8fCh0LmV4cG9ydHM9bil9KCl9LDkxNDQ4Nyh0LHIpe3ZhciBlOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBvKCl7Zm9yKHZhciB0PVtdLHI9MDtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1hcmd1bWVudHNbcl07aWYoZSl7dmFyIHU9dHlwZW9mIGU7aWYoInN0cmluZyI9PT11fHwibnVtYmVyIj09PXUpdC5wdXNoKGUpO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShlKSYmZS5sZW5ndGgpe3ZhciBpPW8uYXBwbHkobnVsbCxlKTtpJiZ0LnB1c2goaSl9ZWxzZSBpZigib2JqZWN0Ij09PXUpZm9yKHZhciBjIGluIGUpbi5jYWxsKGUsYykmJmVbY10mJnQucHVzaChjKX19cmV0dXJuIHQuam9pbigiICIpfXQuZXhwb3J0cz8oby5kZWZhdWx0PW8sdC5leHBvcnRzPW8pOnZvaWQgMD09PShlPWZ1bmN0aW9uKCl7cmV0dXJuIG99LmFwcGx5KHIsW10pKXx8KHQuZXhwb3J0cz1lKX0oKX0sMTg1MjcxKHQscixlKXsidXNlIHN0cmljdCI7ZS5yKHIpLGUuZChyLHt0OigpPT5uLnQsd2l0aFRyYW5zbGF0aW9uQ29udGV4dDooKT0+b30pO2UoODI5MTgwKTt2YXIgbj1lKDc4MzI1NCk7ZnVuY3Rpb24gbyh0KXt0aHJvdyBuZXcgRXJyb3IoIk5vdCBpbXBsZW1lbnRlZCIpfX0sOTYzMDk4KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2dldElzb0xhbmd1YWdlQ29kZUZyb21MYW5ndWFnZTooKT0+b30pO2NvbnN0IG49e2FyX0FFOiJhciIsYnI6InB0IixkZV9ERToiZGUiLGNhX0VTOiJjYSIsaGVfSUw6ImhlIixpZF9JRDoiaWQiLGluOiJlbiIsa3I6ImtvIixtc19NWToibXMiLHN2X1NFOiJzdiIsdGhfVEg6InRoIix1azoiZW4iLHZpX1ZOOiJ2aSIsemhfQ046InpoLUhhbnMiLHpoX1RXOiJ6aC1IYW50Iix6aDoiemgtSGFucyIsaHVfSFU6Imh1LUhVIn07ZnVuY3Rpb24gbyh0KXtyZXR1cm4gblt0XXx8dH19LDEyMjc0OSh0LHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1TeW1ib2wuZm9yKCJyZWFjdC5lbGVtZW50Iiksbj1TeW1ib2wuZm9yKCJyZWFjdC5wb3J0YWwiKSxvPVN5bWJvbC5mb3IoInJlYWN0LmZyYWdtZW50IiksdT1TeW1ib2wuZm9yKCJyZWFjdC5zdHJpY3RfbW9kZSIpLGk9U3ltYm9sLmZvcigicmVhY3QucHJvZmlsZXIiKSxjPVN5bWJvbC5mb3IoInJlYWN0LnByb3ZpZGVyIiksZj1TeW1ib2wuZm9yKCJyZWFjdC5jb250ZXh0Iikscz1TeW1ib2wuZm9yKCJyZWFjdC5mb3J3YXJkX3JlZiIpLGE9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2UiKSxsPVN5bWJvbC5mb3IoInJlYWN0Lm1lbW8iKSxwPVN5bWJvbC5mb3IoInJlYWN0LmxhenkiKSxoPVN5bWJvbC5pdGVyYXRvcjt2YXIgZD17aXNNb3VudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKCl7fX0seT1PYmplY3QuYXNzaWduLHY9e307ZnVuY3Rpb24gdyh0LHIsZSl7dGhpcy5wcm9wcz10LHRoaXMuY29udGV4dD1yLHRoaXMucmVmcz12LHRoaXMudXBkYXRlcj1lfHxkfWZ1bmN0aW9uIGIoKXt9ZnVuY3Rpb24gZyh0LHIsZSl7dGhpcy5wcm9wcz10LHRoaXMuY29udGV4dD1yLHRoaXMucmVmcz12LHRoaXMudXBkYXRlcj1lfHxkfXcucHJvdG90eXBlLmlzUmVhY3RDb21wb25lbnQ9e30sdy5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24odCxyKXtpZigib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0JiZudWxsIT10KXRocm93IEVycm9yKCJzZXRTdGF0ZSguLi4pOiB0YWtlcyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzIHRvIHVwZGF0ZSBvciBhIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcy4iKTt0aGlzLnVwZGF0ZXIuZW5xdWV1ZVNldFN0YXRlKHRoaXMsdCxyLCJzZXRTdGF0ZSIpfSx3LnByb3RvdHlwZS5mb3JjZVVwZGF0ZT1mdW5jdGlvbih0KXt0aGlzLnVwZGF0ZXIuZW5xdWV1ZUZvcmNlVXBkYXRlKHRoaXMsdCwiZm9yY2VVcGRhdGUiKX0sYi5wcm90b3R5cGU9dy5wcm90b3R5cGU7dmFyIG09Zy5wcm90b3R5cGU9bmV3IGI7bS5jb25zdHJ1Y3Rvcj1nLHkobSx3LnByb3RvdHlwZSksbS5pc1B1cmVSZWFjdENvbXBvbmVudD0hMDt2YXIgRT1BcnJheS5pc0FycmF5LF89T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxTPXtjdXJyZW50Om51bGx9LE89e2tleTohMCxyZWY6ITAsX19zZWxmOiEwLF9fc291cmNlOiEwfTtmdW5jdGlvbiBqKHQscixuKXt2YXIgbyx1PXt9LGk9bnVsbCxjPW51bGwKO2lmKG51bGwhPXIpZm9yKG8gaW4gdm9pZCAwIT09ci5yZWYmJihjPXIucmVmKSx2b2lkIDAhPT1yLmtleSYmKGk9IiIrci5rZXkpLHIpXy5jYWxsKHIsbykmJiFPLmhhc093blByb3BlcnR5KG8pJiYodVtvXT1yW29dKTt2YXIgZj1hcmd1bWVudHMubGVuZ3RoLTI7aWYoMT09PWYpdS5jaGlsZHJlbj1uO2Vsc2UgaWYoMTxmKXtmb3IodmFyIHM9QXJyYXkoZiksYT0wO2E8ZjthKyspc1thXT1hcmd1bWVudHNbYSsyXTt1LmNoaWxkcmVuPXN9aWYodCYmdC5kZWZhdWx0UHJvcHMpZm9yKG8gaW4gZj10LmRlZmF1bHRQcm9wcyl2b2lkIDA9PT11W29dJiYodVtvXT1mW29dKTtyZXR1cm57JCR0eXBlb2Y6ZSx0eXBlOnQsa2V5OmkscmVmOmMscHJvcHM6dSxfb3duZXI6Uy5jdXJyZW50fX1mdW5jdGlvbiBQKHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQmJnQuJCR0eXBlb2Y9PT1lfXZhciBSPS9cLysvZztmdW5jdGlvbiBrKHQscil7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCYmbnVsbCE9dC5rZXk/ZnVuY3Rpb24odCl7dmFyIHI9eyI9IjoiPTAiLCI6IjoiPTIifTtyZXR1cm4iJCIrdC5yZXBsYWNlKC9bPTpdL2csKGZ1bmN0aW9uKHQpe3JldHVybiByW3RdfSkpfSgiIit0LmtleSk6ci50b1N0cmluZygzNil9ZnVuY3Rpb24geCh0LHIsbyx1LGkpe3ZhciBjPXR5cGVvZiB0OyJ1bmRlZmluZWQiIT09YyYmImJvb2xlYW4iIT09Y3x8KHQ9bnVsbCk7dmFyIGY9ITE7aWYobnVsbD09PXQpZj0hMDtlbHNlIHN3aXRjaChjKXtjYXNlInN0cmluZyI6Y2FzZSJudW1iZXIiOmY9ITA7YnJlYWs7Y2FzZSJvYmplY3QiOnN3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIGU6Y2FzZSBuOmY9ITB9fWlmKGYpcmV0dXJuIGk9aShmPXQpLHQ9IiI9PT11PyIuIitrKGYsMCk6dSxFKGkpPyhvPSIiLG51bGwhPXQmJihvPXQucmVwbGFjZShSLCIkJi8iKSsiLyIpLHgoaSxyLG8sIiIsKGZ1bmN0aW9uKHQpe3JldHVybiB0fSkpKTpudWxsIT1pJiYoUChpKSYmKGk9ZnVuY3Rpb24odCxyKXtyZXR1cm57JCR0eXBlb2Y6ZSx0eXBlOnQudHlwZSxrZXk6cixyZWY6dC5yZWYscHJvcHM6dC5wcm9wcyxfb3duZXI6dC5fb3duZXJ9fShpLG8rKCFpLmtleXx8ZiYmZi5rZXk9PT1pLmtleT8iIjooIiIraS5rZXkpLnJlcGxhY2UoUiwiJCYvIikrIi8iKSt0KSksci5wdXNoKGkpKSwxO2lmKGY9MCx1PSIiPT09dT8iLiI6dSsiOiIsRSh0KSlmb3IodmFyIHM9MDtzPHQubGVuZ3RoO3MrKyl7dmFyIGE9dStrKGM9dFtzXSxzKTtmKz14KGMscixvLGEsaSl9ZWxzZSBpZihhPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT09dHx8Im9iamVjdCIhPXR5cGVvZiB0P251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKHQ9aCYmdFtoXXx8dFsiQEBpdGVyYXRvciJdKT90Om51bGx9KHQpLCJmdW5jdGlvbiI9PXR5cGVvZiBhKWZvcih0PWEuY2FsbCh0KSxzPTA7IShjPXQubmV4dCgpKS5kb25lOylmKz14KGM9Yy52YWx1ZSxyLG8sYT11K2soYyxzKyspLGkpO2Vsc2UgaWYoIm9iamVjdCI9PT1jKXRocm93IHI9U3RyaW5nKHQpLEVycm9yKCJPYmplY3RzIGFyZSBub3QgdmFsaWQgYXMgYSBSZWFjdCBjaGlsZCAoZm91bmQ6ICIrKCJbb2JqZWN0IE9iamVjdF0iPT09cj8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyh0KS5qb2luKCIsICIpKyJ9IjpyKSsiKS4gSWYgeW91IG1lYW50IHRvIHJlbmRlciBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4sIHVzZSBhbiBhcnJheSBpbnN0ZWFkLiIpO3JldHVybiBmfWZ1bmN0aW9uIE4odCxyLGUpe2lmKG51bGw9PXQpcmV0dXJuIHQ7dmFyIG49W10sbz0wO3JldHVybiB4KHQsbiwiIiwiIiwoZnVuY3Rpb24odCl7cmV0dXJuIHIuY2FsbChlLHQsbysrKX0pKSxufWZ1bmN0aW9uIEModCl7aWYoLTE9PT10Ll9zdGF0dXMpe3ZhciByPXQuX3Jlc3VsdDsocj1yKCkpLnRoZW4oKGZ1bmN0aW9uKHIpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTEsdC5fcmVzdWx0PXIpfSksKGZ1bmN0aW9uKHIpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTIsdC5fcmVzdWx0PXIpfSkpLC0xPT09dC5fc3RhdHVzJiYodC5fc3RhdHVzPTAsdC5fcmVzdWx0PXIpfWlmKDE9PT10Ll9zdGF0dXMpcmV0dXJuIHQuX3Jlc3VsdC5kZWZhdWx0O3Rocm93IHQuX3Jlc3VsdH12YXIgQT17Y3VycmVudDpudWxsfSxJPXt0cmFuc2l0aW9uOm51bGx9LCQ9e1JlYWN0Q3VycmVudERpc3BhdGNoZXI6QSxSZWFjdEN1cnJlbnRCYXRjaENvbmZpZzpJLFJlYWN0Q3VycmVudE93bmVyOlN9O3IuQ2hpbGRyZW49e21hcDpOLGZvckVhY2g6ZnVuY3Rpb24odCxyLGUpe04odCwoZnVuY3Rpb24oKXtyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0pLGUpfSxjb3VudDpmdW5jdGlvbih0KXt2YXIgcj0wO3JldHVybiBOKHQsKGZ1bmN0aW9uKCl7cisrfSkpLHJ9LHRvQXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIE4odCwoZnVuY3Rpb24odCl7cmV0dXJuIHR9KSl8fFtdfSxvbmx5OmZ1bmN0aW9uKHQpe2lmKCFQKHQpKXRocm93IEVycm9yKCJSZWFjdC5DaGlsZHJlbi5vbmx5IGV4cGVjdGVkIHRvIHJlY2VpdmUgYSBzaW5nbGUgUmVhY3QgZWxlbWVudCBjaGlsZC4iKTtyZXR1cm4gdH19LHIuQ29tcG9uZW50PXcsci5GcmFnbWVudD1vLHIuUHJvZmlsZXI9aSxyLlB1cmVDb21wb25lbnQ9ZyxyLlN0cmljdE1vZGU9dSxyLlN1c3BlbnNlPWEsci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRD0kLHIuY2xvbmVFbGVtZW50PWZ1bmN0aW9uKHQscixuKXtpZihudWxsPT10KXRocm93IEVycm9yKCJSZWFjdC5jbG9uZUVsZW1lbnQoLi4uKTogVGhlIGFyZ3VtZW50IG11c3QgYmUgYSBSZWFjdCBlbGVtZW50LCBidXQgeW91IHBhc3NlZCAiK3QrIi4iKTt2YXIgbz15KHt9LHQucHJvcHMpLHU9dC5rZXksaT10LnJlZixjPXQuX293bmVyO2lmKG51bGwhPXIpe2lmKHZvaWQgMCE9PXIucmVmJiYoaT1yLnJlZixjPVMuY3VycmVudCksdm9pZCAwIT09ci5rZXkmJih1PSIiK3Iua2V5KSwKdC50eXBlJiZ0LnR5cGUuZGVmYXVsdFByb3BzKXZhciBmPXQudHlwZS5kZWZhdWx0UHJvcHM7Zm9yKHMgaW4gcilfLmNhbGwocixzKSYmIU8uaGFzT3duUHJvcGVydHkocykmJihvW3NdPXZvaWQgMD09PXJbc10mJnZvaWQgMCE9PWY/ZltzXTpyW3NdKX12YXIgcz1hcmd1bWVudHMubGVuZ3RoLTI7aWYoMT09PXMpby5jaGlsZHJlbj1uO2Vsc2UgaWYoMTxzKXtmPUFycmF5KHMpO2Zvcih2YXIgYT0wO2E8czthKyspZlthXT1hcmd1bWVudHNbYSsyXTtvLmNoaWxkcmVuPWZ9cmV0dXJueyQkdHlwZW9mOmUsdHlwZTp0LnR5cGUsa2V5OnUscmVmOmkscHJvcHM6byxfb3duZXI6Y319LHIuY3JlYXRlQ29udGV4dD1mdW5jdGlvbih0KXtyZXR1cm4odD17JCR0eXBlb2Y6ZixfY3VycmVudFZhbHVlOnQsX2N1cnJlbnRWYWx1ZTI6dCxfdGhyZWFkQ291bnQ6MCxQcm92aWRlcjpudWxsLENvbnN1bWVyOm51bGwsX2RlZmF1bHRWYWx1ZTpudWxsLF9nbG9iYWxOYW1lOm51bGx9KS5Qcm92aWRlcj17JCR0eXBlb2Y6YyxfY29udGV4dDp0fSx0LkNvbnN1bWVyPXR9LHIuY3JlYXRlRWxlbWVudD1qLHIuY3JlYXRlRmFjdG9yeT1mdW5jdGlvbih0KXt2YXIgcj1qLmJpbmQobnVsbCx0KTtyZXR1cm4gci50eXBlPXQscn0sci5jcmVhdGVSZWY9ZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudDpudWxsfX0sci5mb3J3YXJkUmVmPWZ1bmN0aW9uKHQpe3JldHVybnskJHR5cGVvZjpzLHJlbmRlcjp0fX0sci5pc1ZhbGlkRWxlbWVudD1QLHIubGF6eT1mdW5jdGlvbih0KXtyZXR1cm57JCR0eXBlb2Y6cCxfcGF5bG9hZDp7X3N0YXR1czotMSxfcmVzdWx0OnR9LF9pbml0OkN9fSxyLm1lbW89ZnVuY3Rpb24odCxyKXtyZXR1cm57JCR0eXBlb2Y6bCx0eXBlOnQsY29tcGFyZTp2b2lkIDA9PT1yP251bGw6cn19LHIuc3RhcnRUcmFuc2l0aW9uPWZ1bmN0aW9uKHQpe3ZhciByPUkudHJhbnNpdGlvbjtJLnRyYW5zaXRpb249e307dHJ5e3QoKX1maW5hbGx5e0kudHJhbnNpdGlvbj1yfX0sci51bnN0YWJsZV9hY3Q9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiYWN0KC4uLikgaXMgbm90IHN1cHBvcnRlZCBpbiBwcm9kdWN0aW9uIGJ1aWxkcyBvZiBSZWFjdC4iKX0sci51c2VDYWxsYmFjaz1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlQ2FsbGJhY2sodCxyKX0sci51c2VDb250ZXh0PWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlQ29udGV4dCh0KX0sci51c2VEZWJ1Z1ZhbHVlPWZ1bmN0aW9uKCl7fSxyLnVzZURlZmVycmVkVmFsdWU9ZnVuY3Rpb24odCl7cmV0dXJuIEEuY3VycmVudC51c2VEZWZlcnJlZFZhbHVlKHQpfSxyLnVzZUVmZmVjdD1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlRWZmZWN0KHQscil9LHIudXNlSWQ9ZnVuY3Rpb24oKXtyZXR1cm4gQS5jdXJyZW50LnVzZUlkKCl9LHIudXNlSW1wZXJhdGl2ZUhhbmRsZT1mdW5jdGlvbih0LHIsZSl7cmV0dXJuIEEuY3VycmVudC51c2VJbXBlcmF0aXZlSGFuZGxlKHQscixlKX0sci51c2VJbnNlcnRpb25FZmZlY3Q9ZnVuY3Rpb24odCxyKXtyZXR1cm4gQS5jdXJyZW50LnVzZUluc2VydGlvbkVmZmVjdCh0LHIpfSxyLnVzZUxheW91dEVmZmVjdD1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlTGF5b3V0RWZmZWN0KHQscil9LHIudXNlTWVtbz1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlTWVtbyh0LHIpfSxyLnVzZVJlZHVjZXI9ZnVuY3Rpb24odCxyLGUpe3JldHVybiBBLmN1cnJlbnQudXNlUmVkdWNlcih0LHIsZSl9LHIudXNlUmVmPWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlUmVmKHQpfSxyLnVzZVN0YXRlPWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlU3RhdGUodCl9LHIudXNlU3luY0V4dGVybmFsU3RvcmU9ZnVuY3Rpb24odCxyLGUpe3JldHVybiBBLmN1cnJlbnQudXNlU3luY0V4dGVybmFsU3RvcmUodCxyLGUpfSxyLnVzZVRyYW5zaXRpb249ZnVuY3Rpb24oKXtyZXR1cm4gQS5jdXJyZW50LnVzZVRyYW5zaXRpb24oKX0sci52ZXJzaW9uPSIxOC4yLjAifSw5NTM3NDkodCxyLGUpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKHQpe3JldHVybiBmdW5jdGlvbihyKXt2YXIgZT1yLmRpc3BhdGNoLG49ci5nZXRTdGF0ZTtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIGZ1bmN0aW9uKG8pe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBvP28oZSxuLHQpOnIobyl9fX19ZS5kKHIse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbz1uKCk7by53aXRoRXh0cmFBcmd1bWVudD1uO2NvbnN0IHU9b30sNzg3NzI0KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2FwcGx5TWlkZGxld2FyZTooKT0+cCxjb21iaW5lUmVkdWNlcnM6KCk9PmEsY29tcG9zZTooKT0+bCxjcmVhdGVTdG9yZTooKT0+c30pO3ZhciBuPWUoMjI0MTA3KTtmdW5jdGlvbiBvKHQpe3JldHVybiJNaW5pZmllZCBSZWR1eCBlcnJvciAjIit0KyI7IHZpc2l0IGh0dHBzOi8vcmVkdXguanMub3JnL0Vycm9ycz9jb2RlPSIrdCsiIGZvciB0aGUgZnVsbCBtZXNzYWdlIG9yIHVzZSB0aGUgbm9uLW1pbmlmaWVkIGRldiBlbnZpcm9ubWVudCBmb3IgZnVsbCBlcnJvcnMuICJ9dmFyIHU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmU3ltYm9sLm9ic2VydmFibGV8fCJAQG9ic2VydmFibGUiLGk9ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDcpLnNwbGl0KCIiKS5qb2luKCIuIil9LGM9e0lOSVQ6IkBAcmVkdXgvSU5JVCIraSgpLFJFUExBQ0U6IkBAcmVkdXgvUkVQTEFDRSIraSgpLFBST0JFX1VOS05PV05fQUNUSU9OOmZ1bmN0aW9uKCl7cmV0dXJuIkBAcmVkdXgvUFJPQkVfVU5LTk9XTl9BQ1RJT04iK2koKX19O2Z1bmN0aW9uIGYodCl7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dClyZXR1cm4hMTtmb3IodmFyIHI9dDtudWxsIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKHIpOylyPU9iamVjdC5nZXRQcm90b3R5cGVPZihyKTtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQpPT09cn1mdW5jdGlvbiBzKHQscixlKXt2YXIgbgo7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHImJiJmdW5jdGlvbiI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mIGFyZ3VtZW50c1szXSl0aHJvdyBuZXcgRXJyb3IobygwKSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHImJnZvaWQgMD09PWUmJihlPXIscj12b2lkIDApLHZvaWQgMCE9PWUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBFcnJvcihvKDEpKTtyZXR1cm4gZShzKSh0LHIpfWlmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcihvKDIpKTt2YXIgaT10LGE9cixsPVtdLHA9bCxoPSExO2Z1bmN0aW9uIGQoKXtwPT09bCYmKHA9bC5zbGljZSgpKX1mdW5jdGlvbiB5KCl7aWYoaCl0aHJvdyBuZXcgRXJyb3IobygzKSk7cmV0dXJuIGF9ZnVuY3Rpb24gdih0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgRXJyb3Iobyg0KSk7aWYoaCl0aHJvdyBuZXcgRXJyb3Iobyg1KSk7dmFyIHI9ITA7cmV0dXJuIGQoKSxwLnB1c2godCksZnVuY3Rpb24oKXtpZihyKXtpZihoKXRocm93IG5ldyBFcnJvcihvKDYpKTtyPSExLGQoKTt2YXIgZT1wLmluZGV4T2YodCk7cC5zcGxpY2UoZSwxKSxsPW51bGx9fX1mdW5jdGlvbiB3KHQpe2lmKCFmKHQpKXRocm93IG5ldyBFcnJvcihvKDcpKTtpZih2b2lkIDA9PT10LnR5cGUpdGhyb3cgbmV3IEVycm9yKG8oOCkpO2lmKGgpdGhyb3cgbmV3IEVycm9yKG8oOSkpO3RyeXtoPSEwLGE9aShhLHQpfWZpbmFsbHl7aD0hMX1mb3IodmFyIHI9bD1wLGU9MDtlPHIubGVuZ3RoO2UrKyl7KDAscltlXSkoKX1yZXR1cm4gdH1yZXR1cm4gdyh7dHlwZTpjLklOSVR9KSwobj17ZGlzcGF0Y2g6dyxzdWJzY3JpYmU6dixnZXRTdGF0ZTp5LHJlcGxhY2VSZWR1Y2VyOmZ1bmN0aW9uKHQpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcihvKDEwKSk7aT10LHcoe3R5cGU6Yy5SRVBMQUNFfSl9fSlbdV09ZnVuY3Rpb24oKXt2YXIgdCxyPXY7cmV0dXJuKHQ9e3N1YnNjcmliZTpmdW5jdGlvbih0KXtpZigib2JqZWN0IiE9dHlwZW9mIHR8fG51bGw9PT10KXRocm93IG5ldyBFcnJvcihvKDExKSk7ZnVuY3Rpb24gZSgpe3QubmV4dCYmdC5uZXh0KHkoKSl9cmV0dXJuIGUoKSx7dW5zdWJzY3JpYmU6cihlKX19fSlbdV09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sdH0sbn1mdW5jdGlvbiBhKHQpe2Zvcih2YXIgcj1PYmplY3Qua2V5cyh0KSxlPXt9LG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIHU9cltuXTswLCJmdW5jdGlvbiI9PXR5cGVvZiB0W3VdJiYoZVt1XT10W3VdKX12YXIgaSxmPU9iamVjdC5rZXlzKGUpO3RyeXshZnVuY3Rpb24odCl7T2JqZWN0LmtleXModCkuZm9yRWFjaCgoZnVuY3Rpb24ocil7dmFyIGU9dFtyXTtpZih2b2lkIDA9PT1lKHZvaWQgMCx7dHlwZTpjLklOSVR9KSl0aHJvdyBuZXcgRXJyb3IobygxMikpO2lmKHZvaWQgMD09PWUodm9pZCAwLHt0eXBlOmMuUFJPQkVfVU5LTk9XTl9BQ1RJT04oKX0pKXRocm93IG5ldyBFcnJvcihvKDEzKSl9KSl9KGUpfWNhdGNoKHQpe2k9dH1yZXR1cm4gZnVuY3Rpb24odCxyKXtpZih2b2lkIDA9PT10JiYodD17fSksaSl0aHJvdyBpO2Zvcih2YXIgbj0hMSx1PXt9LGM9MDtjPGYubGVuZ3RoO2MrKyl7dmFyIHM9ZltjXSxhPWVbc10sbD10W3NdLHA9YShsLHIpO2lmKHZvaWQgMD09PXApe3ImJnIudHlwZTt0aHJvdyBuZXcgRXJyb3IobygxNCkpfXVbc109cCxuPW58fHAhPT1sfXJldHVybihuPW58fGYubGVuZ3RoIT09T2JqZWN0LmtleXModCkubGVuZ3RoKT91OnR9fWZ1bmN0aW9uIGwoKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxyPW5ldyBBcnJheSh0KSxlPTA7ZTx0O2UrKylyW2VdPWFyZ3VtZW50c1tlXTtyZXR1cm4gMD09PXIubGVuZ3RoP2Z1bmN0aW9uKHQpe3JldHVybiB0fToxPT09ci5sZW5ndGg/clswXTpyLnJlZHVjZSgoZnVuY3Rpb24odCxyKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdChyLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpKX19KSl9ZnVuY3Rpb24gcCgpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLHI9bmV3IEFycmF5KHQpLGU9MDtlPHQ7ZSsrKXJbZV09YXJndW1lbnRzW2VdO3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10LmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpLHU9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IobygxNSkpfSxpPXtnZXRTdGF0ZTplLmdldFN0YXRlLGRpc3BhdGNoOmZ1bmN0aW9uKCl7cmV0dXJuIHUuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSxjPXIubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdChpKX0pKTtyZXR1cm4gdT1sLmFwcGx5KHZvaWQgMCxjKShlLmRpc3BhdGNoKSwoMCxuLmRlZmF1bHQpKCgwLG4uZGVmYXVsdCkoe30sZSkse30se2Rpc3BhdGNoOnV9KX19fX0sMzY0MzUwKHQscixlKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbih0LHIpe3JldHVybiB0PT09cn1lLmQocix7Y3JlYXRlU2VsZWN0b3I6KCk9Pm99KTt2YXIgbz1mdW5jdGlvbih0KXtmb3IodmFyIHI9YXJndW1lbnRzLmxlbmd0aCxlPUFycmF5KHI+MT9yLTE6MCksbj0xO248cjtuKyspZVtuLTFdPWFyZ3VtZW50c1tuXTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHI9YXJndW1lbnRzLmxlbmd0aCxuPUFycmF5KHIpLG89MDtvPHI7bysrKW5bb109YXJndW1lbnRzW29dO3ZhciB1PTAsaT1uLnBvcCgpLGM9ZnVuY3Rpb24odCl7dmFyIHI9QXJyYXkuaXNBcnJheSh0WzBdKT90WzBdOnQ7aWYoIXIuZXZlcnkoKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0fSkpKXt2YXIgZT1yLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fSkpLmpvaW4oIiwgIik7dGhyb3cgbmV3IEVycm9yKCJTZWxlY3RvciBjcmVhdG9ycyBleHBlY3QgYWxsIGlucHV0LXNlbGVjdG9ycyB0byBiZSBmdW5jdGlvbnMsIGluc3RlYWQgcmVjZWl2ZWQgdGhlIGZvbGxvd2luZyB0eXBlczogWyIrZSsiXSIpfXJldHVybiByfShuKSxmPXQuYXBwbHkodm9pZCAwLFtmdW5jdGlvbigpe3JldHVybiB1KyssaS5hcHBseShudWxsLGFyZ3VtZW50cykKfV0uY29uY2F0KGUpKSxzPXQoKGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLHI9Yy5sZW5ndGgsZT0wO2U8cjtlKyspdC5wdXNoKGNbZV0uYXBwbHkobnVsbCxhcmd1bWVudHMpKTtyZXR1cm4gZi5hcHBseShudWxsLHQpfSkpO3JldHVybiBzLnJlc3VsdEZ1bmM9aSxzLmRlcGVuZGVuY2llcz1jLHMucmVjb21wdXRhdGlvbnM9ZnVuY3Rpb24oKXtyZXR1cm4gdX0scy5yZXNldFJlY29tcHV0YXRpb25zPWZ1bmN0aW9uKCl7cmV0dXJuIHU9MH0sc319KChmdW5jdGlvbih0KXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bixlPW51bGwsbz1udWxsO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbih0LHIsZSl7aWYobnVsbD09PXJ8fG51bGw9PT1lfHxyLmxlbmd0aCE9PWUubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbj1yLmxlbmd0aCxvPTA7bzxuO28rKylpZighdChyW29dLGVbb10pKXJldHVybiExO3JldHVybiEwfShyLGUsYXJndW1lbnRzKXx8KG89dC5hcHBseShudWxsLGFyZ3VtZW50cykpLGU9YXJndW1lbnRzLG99fSkpfSwxOTM3MSh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49ZSg5MDgxNTQpO2Z1bmN0aW9uIG8odCxyLGUpe3JldHVybihyPSgwLG4uZGVmYXVsdCkocikpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9fSwyMjQxMDcodCxyLGUpeyJ1c2Ugc3RyaWN0IjtlLmQocix7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPWUoMTkzNzEpO2Z1bmN0aW9uIG8odCxyKXt2YXIgZT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO3ImJihuPW4uZmlsdGVyKChmdW5jdGlvbihyKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LHIpLmVudW1lcmFibGV9KSkpLGUucHVzaC5hcHBseShlLG4pfXJldHVybiBlfWZ1bmN0aW9uIHUodCl7Zm9yKHZhciByPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl7dmFyIGU9bnVsbCE9YXJndW1lbnRzW3JdP2FyZ3VtZW50c1tyXTp7fTtyJTI/byhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpeygwLG4uZGVmYXVsdCkodCxyLGVbcl0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoZSkpOm8oT2JqZWN0KGUpKS5mb3JFYWNoKChmdW5jdGlvbihyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxyKSl9KSl9cmV0dXJuIHR9fSw4OTI2MzkodCxyLGUpeyJ1c2Ugc3RyaWN0IjtlLmQocix7ZGVmYXVsdDooKT0+b30pO3ZhciBuPWUoMTI5NDc2KTtmdW5jdGlvbiBvKHQscil7aWYoIm9iamVjdCIhPSgwLG4uZGVmYXVsdCkodCl8fCF0KXJldHVybiB0O3ZhciBlPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1lKXt2YXIgbz1lLmNhbGwodCxyfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT0oMCxuLmRlZmF1bHQpKG8pKXJldHVybiBvO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09cj9TdHJpbmc6TnVtYmVyKSh0KX19LDkwODE1NCh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT51fSk7dmFyIG49ZSgxMjk0NzYpLG89ZSg4OTI2MzkpO2Z1bmN0aW9uIHUodCl7dmFyIHI9KDAsby5kZWZhdWx0KSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09KDAsbi5kZWZhdWx0KShyKT9yOnIrIiJ9fSwxMjk0NzYodCxyLGUpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKHQpe3JldHVybiBuPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSxuKHQpfWUuZChyLHtkZWZhdWx0OigpPT5ufSl9LDgzOTQyNih0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT51fSk7dmFyIG49ZSg2OTIzNjkpO2NvbnN0IG89ZnVuY3Rpb24odCxyKXt2YXIgZTtpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuIHQ9KDAsbi5kZWZhdWx0KSh0KSxmdW5jdGlvbigpe3JldHVybi0tdD4wJiYoZT1yLmFwcGx5KHRoaXMsYXJndW1lbnRzKSksdDw9MSYmKHI9dm9pZCAwKSxlfX07Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gbygyLHQpfX0sNjkyMzY5KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2RlZmF1bHQ6KCk9Pml9KTt2YXIgbj1lKDQwNjQ0OSksbz0xLzA7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdD8odD0oMCxuLmRlZmF1bHQpKHQpKT09PW98fHQ9PT0tMS8wPzE3OTc2OTMxMzQ4NjIzMTU3ZTI5MioodDwwPy0xOjEpOnQ9PXQ/dDowOjA9PT10P3Q6MH07Y29uc3QgaT1mdW5jdGlvbih0KXt2YXIgcj11KHQpLGU9ciUxO3JldHVybiByPT1yP2U/ci1lOnI6MH19LDg1Njc3MCh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtuYW5vaWQ6KCk9Pm59KTtsZXQgbj0odD0yMSk9PmNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkodCkpLnJlZHVjZSgoKHQscik9PnQrPShyJj02Myk8MzY/ci50b1N0cmluZygzNik6cjw2Mj8oci0yNikudG9TdHJpbmcoMzYpLnRvVXBwZXJDYXNlKCk6cj42Mj8iLSI6Il8iKSwiIil9fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/EU.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.176Z","timestamp":1785154591176,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /country/EU.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"e9173ef4613c3da43c45885ea39c4b96\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:40 GMT\r\ncdn-cachedat: 08/14/2025 09:10:20\r\nx-amz-id-2: IGvrac7MqHxUh1QiyHa7TlaNCW1ovet751MtaKlEOhnFUg/Ve+TJ7dFFdzEvBETD3+Js36nYc2s=\r\nx-amz-request-id: ECGH90GHNAD03QXR\r\nx-amz-meta-hash: e9173ef4613c3da43c45885ea39c4b96\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e17081d2657be70ec27e6eaa4a8e354f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":870,"size_decoded":1356,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (870), with no line terminators","md5":"e9173ef4613c3da43c45885ea39c4b96","sha1":"218b28ec16584e3f2326b778d3cca1d5c6a682d1","sha256":"b47993af3ef9963a193ddc9d0bd10fc8f1f773fe0881ffa3c8d2151498fccf03","sha512":"00d7715020d6aff8cb33c0816f82fad776e93a11839ebf322e782d322c40e34b5f38cd0ec5fc20f5b9539d398fb7fe2a790779eabe23b473da197bead805c302","ssdeep":"","tlshash":"f8115c6b4308d6384885ca21edb658052653bcfaa8ce2adff1969960b5478c7b400f18","first_seen":"2023-04-19T07:58:06Z","last_seen":"2026-07-27T14:17:31.026246Z","times_seen":6109,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iIzE1NjVDMCIvPjxwYXRoIGQ9Ik04Ljk1IDJsLjM3IDEuMTRoMS4ybC0uOTcuNy4zNyAxLjE0LS45Ny0uNy0uOTYuNy4zNi0xLjEzLS45Ni0uN2gxLjJMOC45NCAyek00LjA0IDQuMDRsMS4wNy41NC44NC0uODQtLjE4IDEuMTggMS4wNi41NC0xLjE4LjE5LS4xOSAxLjE4LS41NC0xLjA2LTEuMTguMTguODQtLjg0LS41NC0xLjA3ek0yIDguOTVsMS4xNC0uMzd2LTEuMmwuNy45N0w0Ljk5IDhsLS43Ljk2LjcuOTctMS4xMy0uMzctLjcuOTd2LTEuMkwyIDguOTV6TTQuMDQgMTMuODZsLjU0LTEuMDYtLjg0LS44NSAxLjE4LjE5LjU0LTEuMDcuMTkgMS4xOSAxLjE4LjE4LTEuMDYuNTUuMTggMS4xOC0uODQtLjg1LTEuMDcuNTR6TTguOTUgMTUuOWwtLjM3LTEuMTRoLTEuMmwuOTctLjdMOCAxMi45MmwuOTYuNy45Ny0uNy0uMzcgMS4xNC45Ny43aC0xLjJsLS4zNyAxLjE0ek0xMy44NiAxMy44NmwtMS4wNi0uNTQtLjg1Ljg1LjE5LTEuMTgtMS4wNy0uNTUgMS4xOS0uMTguMTgtMS4xOS41NSAxLjA3IDEuMTgtLjE5LS44NS44NS41NCAxLjA2ek0xNS45IDguOTVsLTEuMTQuMzd2MS4ybC0uNy0uOTctMS4xNC4zNy43LS45Ny0uNy0uOTYgMS4xNC4zNi43LS45NnYxLjJsMS4xNC4zNnpNMTMuODYgNC4wNGwtLjU0IDEuMDcuODUuODQtMS4xOC0uMTgtLjU1IDEuMDYtLjE4LTEuMTgtMS4xOS0uMTkgMS4wNy0uNTQtLjE5LTEuMTguODUuODQgMS4wNi0uNTR6IiBmaWxsPSIjRkREODM1Ii8+PC9zdmc+"}},"time_used":57,"timings":{"blocked":-1,"dns":24,"connect":24,"send":0,"wait":3,"receive":-1,"ssl":5},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_42x16dp.png","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.428Z","timestamp":1785154590428,"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://persimmontrades.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: 428776\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":910,"size_decoded":1583,"mime_type":"image/png","magic":"PNG image data, 42 x 16, 8-bit/color RGBA, non-interlaced","md5":"efa6bb2bfe459bc6f4bdafa3db0383f6","sha1":"52d15ce52fe50643e542c17812de43f4ed1b6ee0","sha256":"6318394f737c66f0e2ccfcd88e3935c6667633a1b95fa29fba2b75431d55eef2","sha512":"e23c04d8997f5c2f92070e09261b7ee50d9df8753f45cf66f604f0874ffa8d99e947c97c528ec02a2c3fbe8e43d840b343a7d0225532980d5da95031216415b7","ssdeep":"","tlshash":"491184a73cd1dc6854a47a87aa91b864ec250f1b91a220981237b42277313444fdc8f7","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-07-27T14:17:34.064975Z","times_seen":54869,"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":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32632.596e5348a1538a18fd4e.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.519Z","timestamp":1785154590519,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32632.596e5348a1538a18fd4e.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-4fc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 114a597d6a8996d27531453acf0a1460\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1276,"size_decoded":1216,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1276), with no line terminators","md5":"4dbd9186e797320373da6c5f9843030c","sha1":"23410205367378f1c6436025ba87050084b119a4","sha256":"7efe9b338dd4970e4b6ee84a711c1bb6cc65dad73322597e03c040abdb1fa38a","sha512":"a66b0365c81f21e82e8d510923718ce9c71b8aab5c59688e1d32283b9203b9d4b79e04b000fd34cc03234913be0c316407e1d1b9b4c6360478f73081d15595ef","ssdeep":"","tlshash":"3321dfe1e790187af8a38916a788de867158fa036713fd49f7daa80e4481d78113c34d","first_seen":"2026-07-16T13:40:49.72467Z","last_seen":"2026-07-27T14:22:59.561476Z","times_seen":1151,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtdWdzMTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXVnczE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnR2LXNwaW5uZXJ7YW5pbWF0aW9uOnR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtajRKbHJZVkggLjlzIGxpbmVhciBpbmZpbml0ZTtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXI6MCBzb2xpZCB2YXIoLS10di1zcGlubmVyLWNvbG9yLHZhcigtLWNvbG9yLWJyYW5kKSk7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5Om5vbmU7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjphYnNvbHV0ZX0udHYtc3Bpbm5lci0tc2hvd257ZGlzcGxheTpibG9ja30udHYtc3Bpbm5lci0tc2l6ZV94eHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gN3B4KTt0b3A6Y2FsYyg1MCUgLSA3cHgpO3dpZHRoOjEwcHh9LnR2LXNwaW5uZXItLXNpemVfeHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjE0cHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gOXB4KTt0b3A6Y2FsYyg1MCUgLSA5cHgpO3dpZHRoOjE0cHh9LnR2LXNwaW5uZXItLXNpemVfc21hbGx7Ym9yZGVyLXdpZHRoOjJweDtoZWlnaHQ6MjBweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAxMnB4KTt0b3A6Y2FsYyg1MCUgLSAxMnB4KTt3aWR0aDoyMHB4fS50di1zcGlubmVyLS1zaXplX21lZGl1bXtib3JkZXItd2lkdGg6M3B4O2hlaWdodDoyOHB4O2luc2V0LWlubGluZS1zdGFydDpjYWxjKDUwJSAtIDE3cHgpO3RvcDpjYWxjKDUwJSAtIDE3cHgpO3dpZHRoOjI4cHh9LnR2LXNwaW5uZXItLXNpemVfbGFyZ2V7Ym9yZGVyLXdpZHRoOjRweDtoZWlnaHQ6NTZweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAzMnB4KTt0b3A6Y2FsYyg1MCUgLSAzMnB4KTt3aWR0aDo1NnB4fS50di1zcGlubmVyOmRpcihydGwpe2FuaW1hdGlvbjp0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSCAuOXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgdHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKC0xdHVybil9fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/56258.282e6141fc02ac85d0d5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.274Z","timestamp":1785154590274,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/56258.282e6141fc02ac85d0d5.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a0c2e6a-174e\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 19 May 2026 09:33:30 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: cd1955e4740f0249d7808479edcaa63d\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":5966,"size_decoded":3195,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3055)","md5":"a9563eafb41c9e6b519a29f0206f6b89","sha1":"43a8b417d99fe60c3d65ddae1e66d8cabd277000","sha256":"ba67ff82446ee411a3ef96ebe6abe55cf6cc1abfd78c841cd5d9a0a70804725a","sha512":"1e31a74cb24aeb33cac85e854608a21314f1416f3db595d14b0577305da06f72bf42b9dea2c36f570fcea9dbd7d88793bd8bc291d498ab58b1e2413f173b781d","ssdeep":"96:AaPctCCkctcSycQOchchctDOAXtC4C2GM0/CnXkMHsU3KEu9pJfmJuuImRBYkqMy:NcUrctcXc3chchc1OotC4ChMUCX1HFRM","tlshash":"d5c1118471c1f09513db9a82a4370606f27d5c5c704b79ece3d0d4d6aabba4db42bb36","first_seen":"2026-05-19T10:58:17.796011Z","last_seen":"2026-07-27T14:22:59.718752Z","times_seen":998,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNTYyNThdLHs3NDM0NTEodCxlLG4pe24uZChlLHtjcmVhdGVPYnNlcnZhYmxlOigpPT5pfSk7dmFyIHI9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe3ZhciBlPXRoaXM7dGhpcy5fcmVzb2x1dGlvbkxpc3RlbmVyPWZ1bmN0aW9uKCl7cmV0dXJuIGUuX29uUmVzb2x1dGlvbkNoYW5nZWQoKX0sdGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0PW51bGwsdGhpcy5fb2JzZXJ2ZXJzPVtdLHRoaXMuX3dpbmRvdz10LHRoaXMuX2luc3RhbGxSZXNvbHV0aW9uTGlzdGVuZXIoKX1yZXR1cm4gdC5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbigpe3RoaXMuX3VuaW5zdGFsbFJlc29sdXRpb25MaXN0ZW5lcigpLHRoaXMuX3dpbmRvdz1udWxsfSxPYmplY3QuZGVmaW5lUHJvcGVydHkodC5wcm90b3R5cGUsInZhbHVlIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfSxlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pLHQucHJvdG90eXBlLnN1YnNjcmliZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLG49e25leHQ6dH07cmV0dXJuIHRoaXMuX29ic2VydmVycy5wdXNoKG4pLHt1bnN1YnNjcmliZTpmdW5jdGlvbigpe2UuX29ic2VydmVycz1lLl9vYnNlcnZlcnMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdCE9PW59KSl9fX0sdC5wcm90b3R5cGUuX2luc3RhbGxSZXNvbHV0aW9uTGlzdGVuZXI9ZnVuY3Rpb24oKXtpZihudWxsIT09dGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0KXRocm93IG5ldyBFcnJvcigiUmVzb2x1dGlvbiBsaXN0ZW5lciBpcyBhbHJlYWR5IGluc3RhbGxlZCIpO3ZhciB0PXRoaXMuX3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvO3RoaXMuX3Jlc29sdXRpb25NZWRpYVF1ZXJ5TGlzdD10aGlzLl93aW5kb3cubWF0Y2hNZWRpYSgiYWxsIGFuZCAocmVzb2x1dGlvbjogIi5jb25jYXQodCwiZHBweCkiKSksdGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0LmFkZExpc3RlbmVyKHRoaXMuX3Jlc29sdXRpb25MaXN0ZW5lcil9LHQucHJvdG90eXBlLl91bmluc3RhbGxSZXNvbHV0aW9uTGlzdGVuZXI9ZnVuY3Rpb24oKXtudWxsIT09dGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0JiYodGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0LnJlbW92ZUxpc3RlbmVyKHRoaXMuX3Jlc29sdXRpb25MaXN0ZW5lciksdGhpcy5fcmVzb2x1dGlvbk1lZGlhUXVlcnlMaXN0PW51bGwpfSx0LnByb3RvdHlwZS5fcmVpbnN0YWxsUmVzb2x1dGlvbkxpc3RlbmVyPWZ1bmN0aW9uKCl7dGhpcy5fdW5pbnN0YWxsUmVzb2x1dGlvbkxpc3RlbmVyKCksdGhpcy5faW5zdGFsbFJlc29sdXRpb25MaXN0ZW5lcigpfSx0LnByb3RvdHlwZS5fb25SZXNvbHV0aW9uQ2hhbmdlZD1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5fb2JzZXJ2ZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5leHQodC5fd2luZG93LmRldmljZVBpeGVsUmF0aW8pfSkpLHRoaXMuX3JlaW5zdGFsbFJlc29sdXRpb25MaXN0ZW5lcigpfSx0fSgpO2Z1bmN0aW9uIGkodCl7cmV0dXJuIG5ldyByKHQpfX0sNzQyNzkodCxlLG4pe2Z1bmN0aW9uIHIodCl7dmFyIGU9dC53aWR0aCxuPXQuaGVpZ2h0O2lmKGU8MCl0aHJvdyBuZXcgRXJyb3IoIk5lZ2F0aXZlIHdpZHRoIGlzIG5vdCBhbGxvd2VkIGZvciBTaXplIik7aWYobjwwKXRocm93IG5ldyBFcnJvcigiTmVnYXRpdmUgaGVpZ2h0IGlzIG5vdCBhbGxvd2VkIGZvciBTaXplIik7cmV0dXJue3dpZHRoOmUsaGVpZ2h0Om59fWZ1bmN0aW9uIGkodCxlKXtyZXR1cm4gdC53aWR0aD09PWUud2lkdGgmJnQuaGVpZ2h0PT09ZS5oZWlnaHR9bi5kKGUse2VxdWFsU2l6ZXM6KCk9Pmksc2l6ZTooKT0+cn0pfSw3ODkyODcodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5yfSk7Y29uc3Qgcj1mdW5jdGlvbih0LGUsbil7c3dpdGNoKG4ubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIHQuY2FsbChlKTtjYXNlIDE6cmV0dXJuIHQuY2FsbChlLG5bMF0pO2Nhc2UgMjpyZXR1cm4gdC5jYWxsKGUsblswXSxuWzFdKTtjYXNlIDM6cmV0dXJuIHQuY2FsbChlLG5bMF0sblsxXSxuWzJdKX1yZXR1cm4gdC5hcHBseShlLG4pfX0sMjU4MjYodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5yfSk7Y29uc3Qgcj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSxuLHIpe2Zvcih2YXIgaT0tMSx1PU9iamVjdChlKSxvPXIoZSksYT1vLmxlbmd0aDthLS07KXt2YXIgbD1vW3Q/YTorK2ldO2lmKCExPT09bih1W2xdLGwsdSkpYnJlYWt9cmV0dXJuIGV9fSgpfSw0ODI2Mih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmp9KTt2YXIgcj1uKDg4NjUxNCksaT1uKDI1NDczOCksdT1uKDkxMDc3OCk7Y29uc3Qgbz1mdW5jdGlvbih0LGUsbil7KHZvaWQgMCE9PW4mJiEoMCx1LmRlZmF1bHQpKHRbZV0sbil8fHZvaWQgMD09PW4mJiEoZSBpbiB0KSkmJigwLGkuZGVmYXVsdCkodCxlLG4pfTt2YXIgYT1uKDI1ODI2KSxsPW4oNDg3MDYwKSxzPW4oMTM5MDcpLGY9big3MDU3NDkpLGQ9big4MDc1NzUpLGM9big1MzE1NTcpLGg9bigyOTU2MzUpLHY9bigyMzk2MykscD1uKDY1OTAxOCksdz1uKDkyODEzMiksXz1uKDg4MDExNSksYj1uKDkzMTQzMykseT1uKDE2NTI2Nyk7Y29uc3QgZz1mdW5jdGlvbih0LGUpe2lmKCgiY29uc3RydWN0b3IiIT09ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIHRbZV0pJiYiX19wcm90b19fIiE9ZSlyZXR1cm4gdFtlXX07dmFyIEw9big2MTg1NyksUj1uKDIxNzQ1Nyk7Y29uc3QgTT1mdW5jdGlvbih0KXtyZXR1cm4oMCxMLmRlZmF1bHQpKHQsKDAsUi5kZWZhdWx0KSh0KSl9O2NvbnN0IE89ZnVuY3Rpb24odCxlLG4scixpLHUsYSl7dmFyIEw9Zyh0LG4pLFI9ZyhlLG4pLE89YS5nZXQoUik7aWYoTylvKHQsbixPKTtlbHNle3ZhciBqPXU/dShMLFIsbisiIix0LGUsYSk6dm9pZCAwLHg9dm9pZCAwPT09ajtpZih4KXt2YXIgUT0oMCxoLmRlZmF1bHQpKFIpLG09IVEmJigwLApwLmRlZmF1bHQpKFIpLGs9IVEmJiFtJiYoMCx5LmRlZmF1bHQpKFIpO2o9UixRfHxtfHxrPygwLGguZGVmYXVsdCkoTCk/aj1MOigwLHYuZGVmYXVsdCkoTCk/aj0oMCxmLmRlZmF1bHQpKEwpOm0/KHg9ITEsaj0oMCxsLmRlZmF1bHQpKFIsITApKTprPyh4PSExLGo9KDAscy5kZWZhdWx0KShSLCEwKSk6aj1bXTooMCxiLmRlZmF1bHQpKFIpfHwoMCxjLmRlZmF1bHQpKFIpPyhqPUwsKDAsYy5kZWZhdWx0KShMKT9qPU0oTCk6KDAsXy5kZWZhdWx0KShMKSYmISgwLHcuZGVmYXVsdCkoTCl8fChqPSgwLGQuZGVmYXVsdCkoUikpKTp4PSExfXgmJihhLnNldChSLGopLGkoaixSLHIsdSxhKSxhLmRlbGV0ZShSKSksbyh0LG4sail9fTtjb25zdCBqPWZ1bmN0aW9uIHQoZSxuLGksdSxsKXtlIT09biYmKDAsYS5kZWZhdWx0KShuLChmdW5jdGlvbihhLHMpe2lmKGx8fChsPW5ldyByLmRlZmF1bHQpLCgwLF8uZGVmYXVsdCkoYSkpTyhlLG4scyxpLHQsdSxsKTtlbHNle3ZhciBmPXU/dShnKGUscyksYSxzKyIiLGUsbixsKTp2b2lkIDA7dm9pZCAwPT09ZiYmKGY9YSksbyhlLHMsZil9fSksUi5kZWZhdWx0KX19LDY0NTM3Nih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgcj1uKDIzMjg1NCksaT1uKDM3MjAzNSksdT1uKDcwOTA1MSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybigwLHUuZGVmYXVsdCkoKDAsaS5kZWZhdWx0KSh0LGUsci5kZWZhdWx0KSx0KyIiKX19LDU3NDY2OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgcj1uKDY0NTM3NiksaT1uKDg1NDg5NCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4oMCxyLmRlZmF1bHQpKChmdW5jdGlvbihlLG4pe3ZhciByPS0xLHU9bi5sZW5ndGgsbz11PjE/blt1LTFdOnZvaWQgMCxhPXU+Mj9uWzJdOnZvaWQgMDtmb3Iobz10Lmxlbmd0aD4zJiYiZnVuY3Rpb24iPT10eXBlb2Ygbz8odS0tLG8pOnZvaWQgMCxhJiYoMCxpLmRlZmF1bHQpKG5bMF0sblsxXSxhKSYmKG89dTwzP3ZvaWQgMDpvLHU9MSksZT1PYmplY3QoZSk7KytyPHU7KXt2YXIgbD1uW3JdO2wmJnQoZSxsLHIsbyl9cmV0dXJuIGV9KSl9fSw4NTQ4OTQodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIHI9big5MTA3NzgpLGk9bigzOTI5MDgpLHU9big5MjExNDMpLG89big4ODAxMTUpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLG4pe2lmKCEoMCxvLmRlZmF1bHQpKG4pKXJldHVybiExO3ZhciBhPXR5cGVvZiBlO3JldHVybiEhKCJudW1iZXIiPT1hPygwLGkuZGVmYXVsdCkobikmJigwLHUuZGVmYXVsdCkoZSxuLmxlbmd0aCk6InN0cmluZyI9PWEmJmUgaW4gbikmJigwLHIuZGVmYXVsdCkobltlXSx0KX19LDM3MjAzNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgcj1uKDc4OTI4NyksaT1NYXRoLm1heDtjb25zdCB1PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZT1pKHZvaWQgMD09PWU/dC5sZW5ndGgtMTplLDApLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PWFyZ3VtZW50cyxvPS0xLGE9aSh1Lmxlbmd0aC1lLDApLGw9QXJyYXkoYSk7KytvPGE7KWxbb109dVtlK29dO289LTE7Zm9yKHZhciBzPUFycmF5KGUrMSk7KytvPGU7KXNbb109dVtvXTtyZXR1cm4gc1tlXT1uKGwpLCgwLHIuZGVmYXVsdCkodCx0aGlzLHMpfX19LDcwOTA1MSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgcj1uKDEyODA3NiksaT1uKDM2MDQ5KSx1PW4oMjMyODU0KTtjb25zdCBvPWkuZGVmYXVsdD9mdW5jdGlvbih0LGUpe3JldHVybigwLGkuZGVmYXVsdCkodCwidG9TdHJpbmciLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTooMCxyLmRlZmF1bHQpKGUpLHdyaXRhYmxlOiEwfSl9OnUuZGVmYXVsdDtjb25zdCBhPSgwLG4oOTQ4NTczKS5kZWZhdWx0KShvKX0sOTQ4NTczKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciByPURhdGUubm93O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9MCxuPTA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGk9cigpLHU9MTYtKGktbik7aWYobj1pLHU+MCl7aWYoKytlPj04MDApcmV0dXJuIGFyZ3VtZW50c1swXX1lbHNlIGU9MDtyZXR1cm4gdC5hcHBseSh2b2lkIDAsYXJndW1lbnRzKX19fSwxMjgwNzYodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5yfSk7Y29uc3Qgcj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdH19fSwyMzI4NTQodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5yfSk7Y29uc3Qgcj1mdW5jdGlvbih0KXtyZXR1cm4gdH19LDIzOTYzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciByPW4oMzkyOTA4KSxpPW4oMzYwNjIwKTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybigwLGkuZGVmYXVsdCkodCkmJigwLHIuZGVmYXVsdCkodCl9fSw5MzE0MzModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7dmFyIHI9bigxNzg0OTcpLGk9bigzOTI1NDUpLHU9bigzNjA2MjApLG89RnVuY3Rpb24ucHJvdG90eXBlLGE9T2JqZWN0LnByb3RvdHlwZSxsPW8udG9TdHJpbmcscz1hLmhhc093blByb3BlcnR5LGY9bC5jYWxsKE9iamVjdCk7Y29uc3QgZD1mdW5jdGlvbih0KXtpZighKDAsdS5kZWZhdWx0KSh0KXx8IltvYmplY3QgT2JqZWN0XSIhPSgwLHIuZGVmYXVsdCkodCkpcmV0dXJuITE7dmFyIGU9KDAsaS5kZWZhdWx0KSh0KTtpZihudWxsPT09ZSlyZXR1cm4hMDt2YXIgbj1zLmNhbGwoZSwiY29uc3RydWN0b3IiKSYmZS5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgbiYmbiBpbnN0YW5jZW9mIG4mJmwuY2FsbChuKT09Zn19LDc0MDE2Mih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pml9KTt2YXIgcj1uKDQ4MjYyKTtjb25zdCBpPSgwLG4oNTc0NjY5KS5kZWZhdWx0KSgoZnVuY3Rpb24odCxlLG4peygwLHIuZGVmYXVsdCkodCxlLG4pfSkpfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.315Z","timestamp":1785154589315,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1459,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-27T14:18:32.432843Z","times_seen":144288,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.006Z","timestamp":1785154590006,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /embed-widget/timeline/ HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\ncache-control: max-age=120\r\nexpires: Mon, 27 Jul 2026 12:18:07 GMT\r\ncontent-security-policy: default-src 'self' https: data: blob: wss: 'unsafe-inline'; base-uri 'none'; object-src 'none'; script-src https://static.tradingview.com/static/ blob: https://*.ampproject.org/ https://*.paypal.com/ https://platform.twitter.com https://platform.x.com https://songbird.cardinalcommerce.com/edge/v1/ https://checkout.razorpay.com/ https://cdn.razorpay.com/static/cx/ https://*.checkout.com/ https://*.revolut.com/ https://*.cardinaltrusted.com https://pay.google.com/gp/p/js/ https://applepay.cdn-apple.com/jsapi/ https://tradingview-gateway.com/ https://www.tradingview-widget.com/static/bundles/embed/ 'nonce-/jwlaIIjeOhcA5HjlTTlZg=='\r\ncross-origin-opener-policy: same-origin-allow-popups\r\nreferrer-policy: origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/27/2026 12:16:30\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 874df9b9e9bfadb30a2500cc08f3d4a7\r\ncdn-cache: EXPIRED\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"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":50984,"size_decoded":13692,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (24434)","md5":"c9ef3a78ca570056f05eac8d5a3026bb","sha1":"43be35af2efcf77271d3c573dd62c4af002d416e","sha256":"3db28028caa1b899efb93ce1f77fd683b49ab0624e967dbd32b3b73a6158a42f","sha512":"6f6863db649f73122ed99f1efdc654b2b6e5ea3f4b759fa68284a76521a7b692a00e02e6de5260250ef955a9e77a962d02d2129e008753ea8da8a45a39991be6","ssdeep":"768:bE/8MR9NogFbLrM3+Ma1zpAhZrSZM2eeyI5:Q/8MR9NogdM3wAhZrS1eeyI5","tlshash":"1d33e5b78058633af54646c4bc777a54fd9a034a88d29cf822ecd99c12c7c92db137ad","first_seen":"2026-07-27T12:17:15.155465Z","last_seen":"2026-07-27T12:17:29.139744Z","times_seen":2,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5UaW1lbGluZSBXaWRnZXQ8L3RpdGxlPgoKCTxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIiBjcm9zc29yaWdpbj4KCgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk5NTI3LjE1YzVjMjVkMjdhNTZhMGRmNzcyLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM5MDcwLjU1Y2JjN2ExZGE5NjNiMzgyOWIzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NjkwNy5jNWFmOGFhN2I1MDgyYjE4NzVhNS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yMDM1NC4yZGRmOTM0ZjhlZGMyODAyZDkwYS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xMTIxOC4xMWZlN2U4ZmRhMzAxOWFhYzFhZi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80MzMyNS4yNTZmYTVhNTIxM2I5Y2I3MGY1Yy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTkzMi4yYTcwZDM5N2MzNGYyZTlkZTk0Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80MzY0NC4wZjdjMTQwMDE5YTY3ZmQ1MGJlNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NTM2OC45ZmYwMGEzZTM4MjEyMDI5YmE1NS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xODQ3Mi5kOTQxOWI2ZGNiNjRjODg1NjRjMS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yNTgwOS44ZGY0ZWE3YjA5OWFkYzE1ZDA2Ni5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yNjU5Mi4xYzYxMjM5MDJiYzg4ZWJhOWQ1Ny5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83Mzc0NS40MDdmMGY3YTkzM2VkMDQyNDQ4NC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCjxzY3JpcHQgbm9uY2U9Ii9qd2xhSUlqZU9oY0E1SGpsVFRsWmc9PSI+Cgl3aW5kb3cubG9jYWxlID0gJ2VuJzsKCXdpbmRvdy5sYW5ndWFnZSA9ICdlbic7Cjwvc2NyaXB0PgoJPHNjcmlwdCBub25jZT0iL2p3bGFJSWplT2hjQTVIamxUVGxaZz09Ij52YXIgZW52aXJvbm1lbnQgPSAiYmF0dGxlIjs8L3NjcmlwdD4KCgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL3J1bnRpbWUtZW1iZWRfdGltZWxpbmVfd2lkZ2V0LmU1MTkxYjRjNzMzNzRkYzA1MzM5LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi44MzAzMS4yYmE4ODE3NTZkMzMyMzg1MTg4Yy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzIzODcuNDdhY2U4M2M2MWE4ODQzNDFjZDYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzExMzEyLjc4MGQ2MDBhMjY5NmRkZjZlZTQ0LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbWJlZF90aW1lbGluZV93aWRnZXQuOGY1NjI3ODU0MmE5MTc5ZjM5ZjUuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL3J1bnRpbWUtZW1iZWRfdGltZWxpbmVfd2lkZ2V0LmU1MTkxYjRjNzMzNzRkYzA1MzM5LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uODMwMzEuMmJhODgxNzU2ZDMzMjM4NTE4OGMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjM4Ny40N2FjZTgzYzYxYTg4NDM0MWNkNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzExMzEyLjc4MGQ2MDBhMjY5NmRkZjZlZTQ0LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfdGltZWxpbmVfd2lkZ2V0LjhmNTYyNzg1NDJhOTE3OWYzOWY1LmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSIvandsYUlJamVPaGNBNUhqbFRUbFpnPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjM1LCJjaGFydF9hdXRvc2F2ZV81bWluIjoxLjAsImNoYXJ0X2F1dG9zYXZlXzMwbWluIjoxLjAsInBlcmZvcm1hbmNlX3Rlc3RfbW9kZSI6MS4wLCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCI6MS4wLCJjaGFydF9zdG9yYWdlX2hpYmVybmF0aW9uX2RlbGF5XzYwbWluIjoxLjAsInN1cHBvcnRfcGVyc2lzdGVudF9sb2dzIjoxLjAsIm5ld19zdG9yYWdlX3N1YnNjcmlwdGlvbl91cmwiOjEuMCwicmVtb3ZlX2FuY2hvcmVkX3RleHQiOjEuMCwiZW5hYmxlX3N0ZXBfYnlfc3RlcF9oaW50c19mb3JfZHJhd2luZ3MiOjEuMCwicHVzaHN0cmVhbV9iYXNpY190ZWxlbWV0cnkiOjEuMCwiYWxsb3dfYnJhY2tldHNfcHJvZml0X2xvc3MiOjEuMCwiZW5hYmxlX3RyYWRlZF9jb250ZXh0X2xpbmtpbmciOjEuMCwib3JkZXJfY29udGV4dF92YWxpZGF0aW9uX2luX2luc3RhbnRfbW9kZSI6MS4wLCJhbGVydHMtb24tZnVuZGFtZW50YWwtbWV0cmljcyI6MS4wLCJhbGVydHMtbm90aWZpY2F0aW9uLXNjaGVkdWxlIjoxLjAsImFsZXJ0cy13YXRjaGxpc3QtZXh0ZW5kZWQtaG91cnMiOjEuMCwiZW5hYmxlX3N5bWJvbF9jaGFuZ2VfcmVzdHJpY3Rpb25fb25fd2lkZ2V0cyI6MS4wLCJlbmFibGVfYXN4X3N5bWJvbF9yZXN0cmljdGlvbiI6MS4wLCJzeW1waG9ueV9hbGxvd19ub25fcGFydGl0aW9uZWRfY29va2llX29uX29sZF9zeW1waG9ueSI6MS4wLCJzeW1waG9ueV9ub3RpZmljYXRpb25fYmFkZ2VzIjoxLjAsInN5bXBob255X3VzZV9hZGtfZm9yX3VwZ3JhZGVfcmVxdWVzdCI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF90cmFja2luZyI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF9zb2Z0X2xpbWl0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X2hhcmRfbGltaXQiOjEuMCwidGVsZWdyYW1fbWluaV9hcHBfcmVkdWNlX3NuYXBzaG90X3F1YWxpdHkiOjEuMCwibmV3c19zeW1ib2xfb3ZlcnZpZXdfa2V5X2ZhY3RzIjoxLjAsInRpbWVvdXRfZGphbmdvX2RiIjowLjE1LCJ0aW1lb3V0X2RqYW5nb191c2Vyc2V0dGluZ3NfZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX2NoYXJ0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fc3ltYm9sc19saXN0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fbWluZHNfZGIiOjAuMDUsInRpbWVvdXRfZGphbmdvX2xvZ2dpbmdfZGIiOjAuMjUsImRpc2FibGVfc2VydmljZXNfbW9uaXRvcl9tZXRyaWNzIjoxLjAsImVuYWJsZV9zaWduaW5fcmVjYXB0Y2hhIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sX2NvbW1lbnRzIjoxLjAsImVuYWJsZV9zcGFtZGV0ZWN0b3JtbF9jaGF0IjoxLjAsImVuYWJsZV9taW5kc19zcGFtZGV0ZWN0b3JtbCI6MS4wLCJiYWNrZW5kLWNvbm5lY3Rpb25zLWluLXRva2VuIjoxLjAsIm9uZV9jb25uZWN0aW9uX3dpdGhfZXhjaGFuZ2VzIjoxLjAsIm1vYmlsZS1hZHMtaW9zIjoxLjAsIm1vYmlsZS1hZHMtYW5kcm9pZCI6MS4wLCJnb29nbGUtb25lLXRhcC1zaWduaW4iOjEuMCwiYnJhaW50cmVlLWdvcHJvLWluLW9yZGVyLWRpYWxvZyI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5IjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5IjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktZnJvbS1pb3MtYXBwIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktdHJpYWwiOjEuMCwidHJpcGxlYS1wYXltZW50cyI6MS4wLCJicmFpbnRyZWUtZ29vZ2xlLXBheS10cmlhbCI6MS4wLCJicmFpbnRyZWUtb25lLXVzZC12ZXJpZmljYXRpb24iOjEuMCwiYnJhaW50cmVlLTNkcy1lbmFibGVkIjoxLjAsImJyYWludHJlZS0zZHMtc3RhdHVzLWNoZWNrIjoxLjAsImJyYWludHJlZS1hZGRpdGlvbmFsLWNhcmQtY2hlY2tzLWZvci10cmlhbCI6MS4wLCJicmFpbnRyZWUtaW5zdGFudC1zZXR0bGVtZW50IjoxLjAsImJyYWludHJlZV9yZWN1cnJpbmdfYmlsbGluZ19zY2hlZHVsZXJfc3Vic2NyaXB0aW9uIjoxLjAsImNoZWNrb3V0X21hbnVhbF9jYXB0dXJlX3JlcXVpcmVkIjoxLjAsImNoZWNrb3V0LXN1YnNjcmlwdGlvbnMiOjEuMCwiY2hlY2tvdXRfYWRkaXRpb25hbF9jYXJkX2NoZWNrc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9wcmVwYWlkX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl9wcmVtaXVtX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fY29tbWVyY2lhbF9jYXJkX3RyaWFsIjoxLjAsImVuYWJsZV9wYXltZW50c18zZHNfb3B0aW1pemF0aW9uIjoxLjAsImNvdW50cnlfb2ZfaXNzdWFuY2VfdnNfYmlsbGluZ19jb3VudHJ5IjoxLjAsImNoZWNrb3V0X3Nob3dfaW5zdGVhZF9vZl9icmFpbnRyZWUiOjEuMCwiY2hlY2tvdXQtM2RzIjoxLjAsImNoZWNrb3V0LXBheXBhbCI6MS4wLCJjaGVja291dF9pbmNsdWRlX2FjY291bnRfaG9sZGVyIjoxLjAsImNoZWNrb3V0LXBheXBhbC10cmlhbCI6MS4wLCJhbm51YWxfdG9fbW9udGhseV9kb3duZ3JhZGVfYXR0ZW1wdCI6MS4wLCJyYXpvcnBheV90cmlhbF8xMF9pbnIiOjEuMCwicmF6b3JwYXktY2FyZC1vcmRlci10b2tlbi1zZWN0aW9uIjoxLjAsInJhem9ycGF5LWNhcmQtc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS11cGktc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS1zMy1pbnZvaWNlLXVwbG9hZCI6MS4wLCJyYXpvcnBheV9pbmNsdWRlX2RhdGVfb2ZfYmlydGgiOjEuMCwiZGxvY2FsLXBheW1lbnRzIjoxLjAsInJldm9sdXQtcGF5LXBheW1lbnRzIjoxLjAsInJldm9sdXQtY2FyZC1wYXltZW50cyI6MC41LCJkbG9jYWwtcGl4LWF1dG9tYXRpY28iOjEuMCwiYnJhaW50cmVlX3RyYW5zYWN0aW9uX3NvdXJjZSI6MS4wLCJ2ZXJ0ZXgtdGF4IjoxLjAsInZlcnRleC10YXgtZml4IjoxLjAsInJlY2VpcHRfaW5fZW1haWxzIjoxLjAsImFkd29yZHMtYW5hbHl0aWNzIjoxLjAsImNtMzYwLWFuYWx5dGljcyI6MS4wLCJkaXNhYmxlX21vYmlsZV91cHNlbGxfaW9zIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9hbmRyb2lkIjoxLjAsInJlcXVpcmVkX2FncmVlbWVudF9mb3JfcnQiOjEuMCwiY2hlY2tfbWFya2V0X2RhdGFfbGltaXRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2RhdGEiOjEuMCwiZm9yY2VfdG9fdXBncmFkZV90b19leHBlcnQiOjEuMCwic2VuZF90cmFkZXZhbl9pbnZvaWNlIjoxLjAsInNob3dfcGVwZV9hbmltYXRpb24iOjEuMCwic2VuZF9uZXh0X3BheW1lbnRfaW5mb19yZWNlaXB0IjoxLjAsInN1cHBvcnRfb3Zlcm5pZ2h0X3Nlc3Npb24iOjEuMCwic2NyZWVuZXItYWxlcnRzLXJlYWQtb25seSI6MS4wLCJzY3JlZW5lcl9ib25kX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9zdG9ja19haV9maWx0ZXJzX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfaXNfYWxsb3dlZF90b19jcmVhdGVfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JhdGluZ19jb2x1bW5zX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3NvcnRpbmdfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfZ3JvdXBfYnlfaXNpbl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9zeW1ib2xfc2VhcmNoX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JlZ2lzdHJhdGlvbl9iYW5uZXJfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNlc190cmFja2luZyI6MS4wLCJzZW5kX2ZpbmFuY2lhbF9ub3RpZmljYXRpb25zIjoxLjAsInNwYXJrX3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya19jYXRlZ29yeV90cmFuc2xhdGlvbnMiOjEuMCwic3BhcmtfdGFnc190cmFuc2xhdGlvbnMiOjEuMCwicHJvX3BsYW5faW5pdGlhbF9yZWZ1bmRzX2Rpc2FibGVkIjoxLjAsInByZXZpb3VzX21vbm9wcm9kdWN0X3B1cmNoYXNlc19yZWZ1bmRzX2VuYWJsZWQiOjEuMCwiZW5hYmxlX2lkZWFzX3JlY29tbWVuZGF0aW9ucyI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zX2ZlZWQiOjEuMCwiZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJldGhvY2FfYWxlcnRfbm90aWZpY2F0aW9uX3dlYmhvb2siOjEuMCwiaGlkZV9zdXNwaWNpb3VzX3VzZXJzX2lkZWFzIjoxLjAsImRpc2FibGVfcHVibGlzaF9zdHJhdGVneV9yYW5nZV9iYXNlZF9jaGFydCI6MS4wLCJyZXN0cmljdF9zaW11bHRhbmVvdXNfcmVxdWVzdHMiOjEuMCwibG9naW5fZnJvbV9uZXdfZGV2aWNlX2VtYWlsIjoxLjAsInNzcl93b3JrZXJfbm93YWl0IjoxLjAsImJyb2tlcl9BMUNBUElUQUwiOjEuMCwiYnJva2VyX0FDVElWVFJBREVTIjoxLjAsImJyb2tlcl9BTENIRU1ZTUFSS0VUUyI6MS4wLCJicm9rZXJfQUxJQ0VCTFVFIjoxLjAsImhpZGVfQUxPUl9vbl9pb3MiOjEuMCwiaGlkZV9BTE9SX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9BTE9SX29uX21vYmlsZV93ZWIiOjEuMCwiYWxvci1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0FMUEFDQSI6MS4wLCJicm9rZXJfQUxSQU1aIjoxLjAsImJyb2tlcl9BTVAiOjEuMCwiYnJva2VyX0FOR0VMT05FIjoxLjAsImJyb2tlcl9BVkFfRlVUVVJFUyI6MS4wLCJBVkFfRlVUVVJFU19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9CMlBSSU1FIjoxLjAsImJyb2tlcl9CQUpBSiI6MS4wLCJicm9rZXJfQkVZT05EIjoxLjAsImJyb2tlcl9CSU5BTkNFIjoxLjAsImVuYWJsZV9iaW5hbmNlYXBpc19iYXNlX3VybCI6MS4wLCJicm9rZXJfQklOR0JPTiI6MS4wLCJicm9rZXJfQklUQVpaQSI6MS4wLCJicm9rZXJfQklUR0VUIjoxLjAsImJyb2tlcl9CSVRNRVgiOjEuMCwiYnJva2VyX0JJVFNUQU1QIjoxLjAsImJyb2tlcl9CTEFDS0JVTEwiOjEuMCwiYnJva2VyX0JMVUVCRVJSWU1BUktFVFMiOjEuMCwiYnJva2VyX0JUQ0MiOjEuMCwiYnJva2VyX0JZQklUIjoxLjAsImJyb2tlcl9DQVBJVEFMQ09NIjoxLjAsImJyb2tlcl9DQVBUUkFERVIiOjEuMCwiQ0FQVFJBREVSX3NlcGFyYXRlX2ludGVncmF0aW9uX21pZ3JhdGlvbl93YXJuaW5nIjoxLjAsImJyb2tlcl9DRkkiOjEuMCwiYnJva2VyX0NHU0kiOjEuMCwiYnJva2VyX0NJVFlJTkRFWCI6MS4wLCJjaXR5aW5kZXhfc3ByZWFkYmV0dGluZyI6MS4wLCJDTEVBUlNUUkVFVF9iZXRhIjoxLjAsImJyb2tlcl9DTUNNQVJLRVRTIjoxLjAsImJyb2tlcl9DT0JSQVRSQURJTkciOjEuMCwiYnJva2VyX0NPSU5CQVNFIjoxLjAsImNvaW5iYXNlX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJjb2luYmFzZV9jYW5jZWxfcG9zaXRpb25fYnJhY2tldHMiOjEuMCwiYnJva2VyX0NPSU5KQVIiOjEuMCwiQ09JTkpBUl9iZXRhIjoxLjAsImJyb2tlcl9DT0lOU1dJVENIIjoxLjAsImJyb2tlcl9DT0lOVyI6MS4wLCJicm9rZXJfQ09MTUVYIjoxLjAsImhpZGVfQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiY3FnLXJlYWx0aW1lLWJhbmR3aWR0aC1saW1pdCI6MS4wLCJicm9rZXJfQ1JZUFRPQ09NIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25faW9zIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fYW5kcm9pZCI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0NYTSI6MS4wLCJicm9rZXJfREFPTCI6MS4wLCJicm9rZXJfREFSV0lORVgiOjEuMCwiREFSV0lORVhfYmV0YSI6MS4wLCJicm9rZXJfREVMVEEiOjEuMCwiYnJva2VyX0RFUkFZQUgiOjEuMCwiYnJva2VyX0RFUklWIjoxLjAsImJyb2tlcl9ESEFOIjoxLjAsImJyb2tlcl9ETlNFIjoxLjAsImJyb2tlcl9ET1JNQU4iOjEuMCwiaGlkZV9EVU1NWV9vbl9pb3MiOjEuMCwiaGlkZV9EVU1NWV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRFVNTVlfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRUFTWU1BUktFVFMiOjEuMCwiYnJva2VyX0VDT1ZBTE9SRVMiOjEuMCwiYnJva2VyX0VER0VDTEVBUiI6MS4wLCJlZGdlY2xlYXJfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfRUlHSFRDQVAiOjEuMCwiYnJva2VyX0VSUkFOVEUiOjEuMCwiYnJva2VyX0VTQUZYIjoxLjAsIkZJREVMSVRZX2JldGEiOjEuMCwiRklERUxJVFlfdXNfcmVsZWFzZSI6MC4yNSwiZmlkZWxpdHlfc2VjdXJpdHlfdG9rZW4iOjEuMCwiYnJva2VyX0ZPUkVYQ09NIjoxLjAsImZvcmV4Y29tX3Nlc3Npb25fdjIiOjEuMCwiYnJva2VyX0ZQTUFSS0VUUyI6MS4wLCJoaWRlX0ZUWF9vbl9pb3MiOjEuMCwiaGlkZV9GVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0ZUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImZ0eF9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZVU0lPTk1BUktFVFMiOjEuMCwiZnhjbV9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9GWENNIjoxLjAsImhpZGVfRlhPUEVOX29uX2lvcyI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlhPUEVOX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0ZYUFJPIjoxLjAsImJyb2tlcl9GWFRGIjoxLjAsImJyb2tlcl9GWUVSUyI6MS4wLCJicm9rZXJfR0FURSI6MS4wLCJicm9rZXJfR0JFQlJPS0VSUyI6MS4wLCJnZW1pbmktYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HRU5JQUxJTlZFU1RJTUVOVE9TIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25faW9zIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX21vYmlsZV93ZWIiOjEuMCwiZ2xvYmFscHJpbWUtYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HT01BUktFVFMiOjEuMCwiYnJva2VyX0dPVFJBREUiOjEuMCwiZ290cmFkZV9lbmFibGVfc3RyZWFtaW5nX2VuZHBvaW50cyI6MS4wLCJicm9rZXJfSEVSRU5ZQSI6MS4wLCJoaWRlX0hUWF9vbl9pb3MiOjEuMCwiaGlkZV9IVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0hUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9JQktSIjoxLjAsImNoZWNrX2lia3Jfc2lkZV9tYWludGVuYW5jZSI6MS4wLCJpYmtyX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3BhcmFsbGVsX3Byb3ZpZGVyX2luaXRpYWxpemF0aW9uIjoxLjAsImlia3Jfd3NfYWNjb3VudF9zdW1tYXJ5IjoxLjAsImlia3Jfd3Nfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3N1YnNjcmliZV90b19vcmRlcl91cGRhdGVzX2ZpcnN0IjoxLjAsImlia3Jfd3NfYWNjb3VudF9sZWRnZXIiOjEuMCwiYnJva2VyX0lCUk9LRVIiOjEuMCwiYnJva2VyX0lDTUFSS0VUUyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0FTSUMiOjEuMCwiYnJva2VyX0lDTUFSS0VUU19FVSI6MS4wLCJicm9rZXJfSUciOjEuMCwiYnJva2VyX0lORFNUT0NLUyI6MS4wLCJicm9rZXJfSU5GT1lBVElSSU0iOjEuMCwiYnJva2VyX0lOTk9WRVNUWCI6MS4wLCJicm9rZXJfSU5URVJBQ1RJVkVJTCI6MS4wLCJicm9rZXJfSU5WRVNUUkFERSI6MS4wLCJJTlZFU1RSQURFX2JldGEiOjEuMCwiYnJva2VyX0lST05CRUFNIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tJV09PTSI6MS4wLCJraXdvb21fdXNlX3NlcGFyYXRlX3N0cmVhbWluZ191cmwiOjEuMCwiYnJva2VyX0tPVEFLIjoxLjAsImhpZGVfS09UQUtfb25faW9zIjoxLjAsImhpZGVfS09UQUtfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0tPVEFLX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tSQUtFTiI6MS4wLCJoaWRlX0tSQUtFTl9vbl9pb3MiOjEuMCwiaGlkZV9LUkFLRU5fb25fYW5kcm9pZCI6MS4wLCJLUkFLRU5fYmV0YSI6MS4wLCJrcmFrZW5fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9LU0VDVVJJVElFUyI6MS4wLCJicm9rZXJfTElCRVJBVE9SIjoxLjAsImJyb2tlcl9NRVhDIjoxLjAsImJyb2tlcl9NRVhFTSI6MS4wLCJicm9rZXJfTUlEQVMiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX01PT01PTyI6MS4wLCJicm9rZXJfTU9USUxBTE9TV0FMIjoxLjAsImJyb2tlcl9OSU5KQVRSQURFUiI6MS4wLCJicm9rZXJfT0FOREEiOjEuMCwib2FuZGFfc2VydmVyX2xvZ2dpbmciOjEuMCwib2FuZGFfb2F1dGhfbXVsdGlwbGV4aW5nIjoxLjAsImJyb2tlcl9PS1giOjEuMCwiYnJva2VyX09QT0ZJTkFOQ0UiOjEuMCwiYnJva2VyX09QVElNVVMiOjEuMCwiYnJva2VyX09TTUFOTEkiOjEuMCwiYnJva2VyX09TTUFOTElGWCI6MS4wLCJwYXBlcl9mb3JjZV9jb25uZWN0X3B1c2hzdHJlYW0iOjEuMCwicGFwZXJfc3ViYWNjb3VudF9jdXN0b21fY3VycmVuY3kiOjEuMCwicGFwZXJfb3V0c2lkZV9ydGgiOjEuMCwiYnJva2VyX1BBWVRNIjoxLjAsImJyb2tlcl9QRVBQRVJTVE9ORSI6MS4wLCJicm9rZXJfUEhFTUVYIjoxLjAsImJyb2tlcl9QSElMTElQQ0FQSVRBTF9UUiI6MS4wLCJicm9rZXJfUEhJTExJUE5PVkEiOjEuMCwiYnJva2VyX1BMVVM1MDAiOjEuMCwicGx1czUwMF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIlBMVVM1MDBVU19iZXRhIjoxLjAsImJyb2tlcl9QVVJQTEVUUkFESU5HIjoxLjAsImJyb2tlcl9RVUVTVFJBREUiOjEuMCwiYnJva2VyX1JBVkFCVVJTQVRJTCI6MS4wLCJSQVZBQlVSU0FUSUxfYmV0YSI6MS4wLCJicm9rZXJfUklZQURDQVBJVEFMIjoxLjAsImJyb2tlcl9ST0JPTUFSS0VUUyI6MS4wLCJicm9rZXJfUkVQTEFZQlJPS0VSIjoxLjAsImJyb2tlcl9TQU1VRUwiOjEuMCwiYnJva2VyX1NBWE9CQU5LIjoxLjAsImJyb2tlcl9TSEFSRU1BUktFVCI6MS4wLCJicm9rZXJfU0tJTExJTkciOjEuMCwiYnJva2VyX1NQUkVBREVYIjoxLjAsImJyb2tlcl9TV0lTU1FVT1RFIjoxLjAsImJyb2tlcl9TVE9ORVgiOjEuMCwiYnJva2VyX1RBU1RZRlgiOjEuMCwiYnJva2VyX1RBU1RZVFJBREUiOjEuMCwiYnJva2VyX1RISU5LTUFSS0VUUyI6MS4wLCJ0aGlua21hcmtldHNfYWNjb3VudF9kYXRhX3N0cmVhbWluZyI6MS4wLCJicm9rZXJfVElDS01JTEwiOjEuMCwiaGlkZV9USUdFUl9vbl9pb3MiOjEuMCwiaGlkZV9USUdFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVElHRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfVFJBREVOQVRJT04iOjEuMCwiYnJva2VyX1RSQURFU1RBVElPTiI6MS4wLCJ0cmFkZXN0YXRpb25fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInRyYWRlc3RhdGlvbl9hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsInRyYWRlc3RhdGlvbl9zdHJlYW1pbmdfc2VydmVyX2xvZ2dpbmciOjEuMCwiYnJva2VyX1RSQURFWkVSTyI6MS4wLCJicm9rZXJfVFJBRElFUiI6MS4wLCJicm9rZXJfVFJBRElFUl9GVVRVUkVTIjoxLjAsInRyYWRpZXJfZnV0dXJlc19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9UUkFET1ZBVEUiOjEuMCwiaGlkZV9UUkFEVV9vbl9pb3MiOjEuMCwiaGlkZV9UUkFEVV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVFJBRFVfb25fbW9iaWxlX3dlYiI6MS4wLCJ0cmFkdV9zcHJlYWRfYmV0IjoxLjAsImJyb2tlcl9UUklWRSI6MS4wLCJicm9rZXJfVkFOVEFHRSI6MS4wLCJicm9rZXJfVkVMT0NJVFkiOjEuMCwiYnJva2VyX1dFQlVMTCI6MS4wLCJicm9rZXJfV0VCVUxMSkFQQU4iOjEuMCwiYnJva2VyX1dFQlVMTFBBWSI6MS4wLCJicm9rZXJfV0VCVUxMVUsiOjEuMCwiYnJva2VyX1dISVRFQklUIjoxLjAsImJyb2tlcl9XSFNFTEZJTlZFU1QiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVF9GVVRVUkVTIjoxLjAsIldIU0VMRklOVkVTVF9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1hDVUJFIjoxLjAsImJyb2tlcl9ZTEciOjEuMCwiYnJva2VyX2lkX3Nlc3Npb24iOjEuMCwiZGlzYWxsb3dfY29uY3VycmVudF9zZXNzaW9ucyI6MS4wLCJ1c2VfY29kZV9mbG93X3YyX3Byb3ZpZGVyIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXJfZm9yX3VudGVzdGVkX2Jyb2tlcnMiOjEuMCwibW9iaWxlX3RyYWRpbmdfd2ViIjoxLjAsIm1vYmlsZV90cmFkaW5nX2lvcyI6MS4wLCJtb2JpbGVfdHJhZGluZ19hbmRyb2lkIjoxLjAsImNvbnRpbnVvdXNfZnJvbnRfY29udHJhY3RfdHJhZGluZyI6MS4wLCJ0cmFkaW5nX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJvYXV0aDJfY29kZV9mbG93X3Byb3ZpZGVyX3NlcnZlcl9sb2dnZXIiOjEuMCwicmVzdF9vYXV0aDJfY29kZV9mbG93X211bHRpcGxleGluZyI6MS4wLCJyZXN0X2xvZ291dF9vbl80MjkiOjEuMCwicmV2aWV3X3BvcHVwX29uX2NoYXJ0IjoxLjAsInNob3dfY29uY3VycmVudF9jb25uZWN0aW9uX3dhcm5pbmciOjEuMCwiZW5hYmxlX3RyYWRpbmdfc2VydmVyX2xvZ2dlciI6MS4wLCJvcmRlcl9wcmVzZXRzIjoxLjAsIm9yZGVyX3RpY2tldF9yZXNpemFibGVfZHJhd2VyX29uIjoxLjAsInJlc3RfdXNlX2FzeW5jX21hcHBlciI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9iYW5uZXJfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2ciOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2dfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fbGVhZGVyYm9hcmQiOjEuMCwicGFwZXJfY29tcGV0aXRpb25fcHJldmlvdXNfY29tcGV0aXRpb25zIjoxLjAsImFtcF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJsdWVsaW5lX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiZG9ybWFuX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiaXJvbmJlYW1fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJvcHRpbXVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwic3RvbmV4X29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwieWxnX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwidHJhZGluZ19nZW5lcmFsX2V2ZW50c19nYV90cmFja2luZyI6MS4wLCJyZXBsYXlfcmVzdWx0X3NoYXJpbmciOjEuMCwicmVwbGF5X3RyYWRpbmdfYnJhY2tldHMiOjEuMCwiaGlkZV9hbGxfYnJva2Vyc19idXR0b25faW5faW9zX2FwcCI6MS4wLCJmb3JjZV9tYXhfYWxsb3dlZF9wdWxsaW5nX2ludGVydmFscyI6MS4wLCJwYXBlcl9kZWxheV90cmFkaW5nIjoxLjAsImVuYWJsZV9maXJzdF90b3VjaF9pc19zZWxlY3Rpb24iOjEuMCwiY2xlYXJfcHJvamVjdF9vcmRlcl9vbl9vcmRlcl90aWNrZXRfY2xvc2UiOjEuMCwiZW5hYmxlX25ld19iZWhhdmlvcl9vZl9jb25maXJtX2J1dHRvbnNfb25fbW9iaWxlIjoxLjAsInJlbmV3X3Rva2VuX3ByZWVtcHRpb25fMzAiOjEuMCwiZG9fbm90X29wZW5fb3RfZnJvbV9wbHVzX2J1dHRvbiI6MS4wLCJicm9rZXJfc2lkZV9wcm9tb3Rpb24iOjEuMCwiZW5hYmxlX25ld190cmFkaW5nX21lbnVfc3RydWN0dXJlIjoxLjAsInF1aWNrX3RyYWRpbmdfcGFuZWwiOjEuMCwicGFwZXJfb3JkZXJfY29uZmlybWF0aW9uX2RpYWxvZyI6MS4wLCJwYXBlcl9tdWx0aXBsZV9sZXZlbHNfZW5hYmxlZCI6MS4wLCJwYXBlcl9tYXJnaW5fY29udHJvbCI6MS4wLCJlbmFibGVfc2VnbWVudGF0aW9uX3BhcGVyX3RyYWRpbmciOjEuMCwiZW5hYmxlX2NoYXJ0X2FkYXB0aXZlX3Rwc2xfYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwiZW5hYmxlX21hcmtldF9wcm9qZWN0X29yZGVyIjoxLjAsImVuYWJsZV9zeW1ib2xzX3BvcHVsYXJpdHlfc2hvd2luZyI6MS4wLCJlbmFibGVfdHJhbnNsYXRpb25zX3MzX3VwbG9hZCI6MS4wLCJldGZfZnVuZF9mbG93c19vbmx5X2RheXNfcmVzb2x1dGlvbnMiOjEuMCwiZGlzYWJsZV9zbm93cGxvd19wbGF0Zm9ybV9ldmVudHMiOjEuMCwibm90aWZ5X2lkZWFfbW9kc19hYm91dF9maXJzdF9wdWJsaWNhdGlvbiI6MS4wLCJlbmFibGVfd2FmX3RyYWNraW5nIjoxLjAsIm5ld19lcnJvcnNfZmxvdyI6MS4wLCJxdW90ZS10b2tlbi1maWx0ZXItb3duLXNjcmlwdHMtYnktYWNjZXNzIjoxLjAsImtlZXBfaW5kaWNhdG9yc19zZWFyY2hfc3RhdGUiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3RhYl9zY3JvbGxfc3RhdGUiOjEuMCwiY29uZmlndXJhYmxlX3NlYXJjaF9hbmRfZmlsdHJhdGlvbiI6MS4wLCJwaW5lX2VkaXRvcl93cmFwX29uX2xpbmVfc3BsaXQiOjEuMCwic3ltYm9sX3NlYXJjaF9jb3VudHJ5X3NvdXJjZXMiOjEuMCwid2F0Y2hsaXN0c19kaWFsb2dfc2Nyb2xsX3RvX2FjdGl2ZSI6MS4wLCJib3R0b21fcGFuZWxfdHJhY2tfZXZlbnRzIjoxLjAsInNub3dwbG93X2JlYWNvbl9mZWF0dXJlIjoxLjAsInNob3dfZGF0YV9wcm9ibGVtc19pbl9oZWxwX2NlbnRlciI6MS4wLCJlbmFibGVfYXBwbGVfZGV2aWNlX2NoZWNrIjoxLjAsImVuYWJsZV9hcHBsZV9pbnRyb19vZmZlcl9zaWduYXR1cmUiOjEuMCwiZW5hYmxlX2FwcGxlX3Byb21vX29mZmVyX3NpZ25hdHVyZV92MiI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fc2lnbmF0dXJlIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfYW5kcm9pZCI6MS4wLCJlbmFibGVfcHVzaF9ub3RpZmljYXRpb25zX2lvcyI6MS4wLCJlbmFibGVfbWFudGljb3JlX2NsdXN0ZXIiOjEuMCwiZW5hYmxlX3B1c2hzdHJlYW1fYXV0aCI6MS4wLCJlbmFibGVfZW52b3lfcHJveHkiOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5X3BhcGVydHJhZGluZyI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfc2NyZWVuZXIiOjEuMCwib3B0aW9uc19yZWR1Y2VfcG9sbGluZ19pbnRlcnZhbCI6MS4wLCJvcHRpb25zX2J1aWxkZXJfZ3JvdXBfYWN0aW9ucyI6MS4wLCJvcHRpb25zX2NoYWluX3NpZ21hX2ZpbHRlciI6MS4wLCJvcHRpb25zX2Jyb2tlcl9zdHJhdGVnaWVzIjoxLjAsInNob3dfdG9hc3RfYWJvdXRfdW5yZWFkX21lc3NhZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcGF5b3V0IjoxLjAsImVuYWJsZV9lbWFpbF9jaGFuZ2VfbG9nZ2luZyI6MS4wLCJlbmFibGVfZW1haWxfb25fcGFydG5lcl9zdGF0dXNfY2hhbmdlIjoxLjAsImVuYWJsZV9wYXJ0bmVyX3Byb2dyYW1fYXBwbHkiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbSI6MS4wLCJjb21wcmVzc19jYWNoZV9kYXRhIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZyI6MS4wLCJuZXdzX3NjcmVlbmVyX3BhZ2VfY2xpZW50IjoxLjAsImVuYWJsZV9kZWNsYXJhdGlvbl9wb3B1cF9vbl9sb2FkIjoxLjAsInNob3dfZGF0YV9ib25kc19mcmVlX3VzZXJzIjoxLjAsImVuYWJsZV9tb2Rlcm5fcmVuZGVyX21vZGUiOjEuMCwiZW5hYmxlX3Byb2ZfcG9wdXBfZnJlZSI6MS4wLCJpb3NfYXBwX25ld3NfYW5kX21pbmRzIjoxLjAsImRvX25vdF9kaXNjbG9zZV9waG9uZV9vY2N1cGFuY3kiOjEuMCwiZW5hYmxlX3JlZGlyZWN0X3RvX3dpZGdldF9kb2N1bWVudGF0aW9uX29mX2FueV9sb2NhbGl6YXRpb24iOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nX2hpYmVybmF0aW9uIjoxLjAsIm5ld3Nfc3RyZWFtaW5nX2hpYmVybmF0aW9uX2RlbGF5XzEwbWluIjoxLjAsInBhc3NfcmVjb3Zlcnlfc2VhcmNoX2hpZGVfaW5mbyI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfb25fc2NyZWVuZXIiOjEuMCwiZW5hYmxlX2ZvcmNlZF9lbWFpbF9jb25maXJtYXRpb24iOjEuMCwic2hvd19naWZ0X2J1dHRvbiI6MS4wLCJhZGRyZXNzX3ZhbGlkYXRpb25fZW5hYmxlZCI6MS4wLCJkaXNhYmxlX3VudmVyaWZpZWRfYWRkcmVzcyI6MS4wLCJnZW5lcmF0ZV9pbnZvaWNlX251bWJlcl9ieV9jb3VudHJ5IjoxLjAsInNob3dfZmF2b3JpdGVfbGF5b3V0cyI6MS4wLCJlbmFibGVfc29jaWFsX2F1dGhfY29uZmlybWF0aW9uIjoxLjAsImVuYWJsZV9hZF9ibG9ja19kZXRlY3QiOjEuMCwidHZkX25ld190YWJfbGlua2luZyI6MS4wLCJ0dmRfdGltZV9hbmRfZGF0ZV9yYW5nZV9saW5raW5nIjoxLjAsInVzZV9icm93c2VyX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ1c2VfZGVza3RvcF9zZXNzaW9uX3N0b3JhZ2UiOjEuMCwid3JvbmdfYWNjb3VudF9kaWFsb2dfcHJpbWFyeV9zd2l0Y2giOjEuMCwiZW5hYmxlX2xpbmd1YV9sYW5nX2NoZWNrIjoxLjAsImdldF9zYXZlZF9hY3RpdmVfbGlzdF9iZWZvcmVfZ2V0dGluZ19hbGxfbGlzdHMiOjEuMCwid2F0Y2hsaXN0X2FkZF9zb3VyY2VfcGFyYW0iOjEuMCwic2hvd19yZWZlcnJhbF9ub3RpZmljYXRpb25fZGlhbG9nIjoxLjAsInNldF9uZXdfYmxhY2tfY29sb3IiOjEuMCwibmV3c191c2VfbmV3c19tZWRpYXRvciI6MS4wLCJhbGxvd190cmFpbGluZ193aGl0ZXNwYWNlX2luX251bWJlcl90b2tlbiI6MS4wLCJyZXN0cmljdF9wd25lZF9wYXNzd29yZF9zZXQiOjEuMCwibm90aWZfc2V0dGluZ3NfZW5hYmxlX25ld19zdG9yZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV93cml0ZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV9yZWFkIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrLWZvci1pbml0aWFsLXB1cmNoYXNlIjoxLjAsImVuYWJsZV9tZXRhZGVmZW5kZXJfY2hlY2tfZm9yX2FncmVlbWVudCI6MS4wLCJzaG93X2Rvd25sb2FkX3lpZWxkX2N1cnZlc19kYXRhIjoxLjAsIm1vdmVfa2V5X3Rlbm9yc190b19zZXR0aW5ncyI6MS4wLCJzaG93X3lpZWxkX2N1cnZlc19tYXAiOjEuMCwiZGlzYWJsZV93aWRnZXRiYXJfaW5fYXBwcyI6MS4wLCJoaWRlX3B1YmxpY2F0aW9uc19vZl9iYW5uZWRfdXNlcnMiOjEuMCwiZW5hYmxlX3N1bW1hcnlfdXBkYXRlc19mcm9tX2NoYXJ0X3Nlc3Npb24iOjEuMCwic2hvd19uZXdzX2Zsb3dfdG9vbF9yaWdodF9iYXIiOjEuMCwiZW5hYmxlX2NoYXJ0X3NhdmluZ19zdGF0cyI6MS4wLCJlbmFibGVfc2F2aW5nX3NhbWVfY2hhcnRfcmF0ZV9saW1pdCI6MS4wLCJuZXdzX2FsZXJ0c19lbmFibGVkIjoxLjAsIm5ld3NfbXVsdGlwbGVfYWxlcnRzX2VuYWJsZWQiOjEuMCwicmVmdW5kX3Vudm9pZGFibGVfY291cG9uc19lbmFibGVkIjoxLjAsImVuYWJsZV9zbm93cGxvd19lbWFpbF90cmFja2luZyI6MS4wLCJuZXdzX2VuYWJsZV9zZW50aW1lbnQiOjEuMCwidXNlX2luX3N5bWJvbF9zZWFyY2hfb3B0aW9uc19tY3hfZXhjaGFuZ2UiOjEuMCwiZW5hYmxlX3VzZXJzZXR0aW5nc19zeW1ib2xzX3Blcl9yb3dfc29mdF9saW1pdCI6MC4xLCJmb3JiaWRfbG9naW5fd2l0aF9wd25lZF9wYXNzd29yZHMiOjEuMCwiZGVidWdfZ2V0X3Rlc3RfYmFyc19kYXRhIjoxLjAsIm5ld3NfdXNlX21lZGlhdG9yX3N0b3J5IjoxLjAsIm5ld3NfZmxvd19yZWNvbmZpZ3VyZV9maWx0ZXJzIjoxLjAsImJsYWNrX2ZyaWRheV9lbmFibGVfc2tpcF90b19wYXltZW50IjoxLjAsImhpZGVfdHJhZGluZ19idXR0b25fb25fYm90dG9tX3BhbmVsX2FuZF9yZXBsYXlfdGFiIjoxLjAsImhpZGVfdHJhZGVfYnV0dG9uX2hpbnRfaW5faGVhZGVyX3Rvb2xiYXIiOjEuMCwiaGlkZV9zZWVfb25fc3VwZXJfY2hhcnRzX2J1dHRvbiI6MS4wLCJoaWRlX3N5bWJvbF9wYWdlX2NoYXJ0X3R5cGVfc3dpdGNoZXIiOjEuMCwiZGlzYWJsZV9jaGF0X3NwYW1fcHJvdGVjdGlvbl9mb3JfcHJlbWl1bV91c2VycyI6MS4wLCJkaXNhYmxlX3B1YmxpY19waW5lX3NjcmlwdF9wdWJsaXNoX2xpbWl0cyI6MS4wLCJtYWtlX3RyYWRpbmdfcGFuZWxfY29udGV4dHVhbF90YWIiOjEuMCwicmVjb25uZWN0X2dhaW5fc2Vzc2lvbl9vbl9sc19lcnJvciI6MS4wLCJjaGVja291dC1mbG93LXBheW1lbnRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2t5YyI6MS4wLCJpbmRpYV9leGNsdWRlX2JyYWludHJlZV90YWIiOjEuMCwibWFjcm9fbWFwc19oaWRlX3Rvb2x0aXBfY2hhcnRfYnV0dG9uIjoxLjAsImZvcmNlX2t5Y19mb3Jfbm9ucHJvX3B1cmNoYXNlX2J5X2NvbW1lcmNpYWwiOjEuMCwic2hvd19zcGxpdF9wYW5lbF9mdWxsc2NyZWVuX2J1dHRvbiI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX21vdmVfYnV0dG9uX3RvX3RpdGxlIjoxLjAsIm9yZGVyX3ByZXNldHNfY3J1ZF9zdG9yYWdlIjoxLjAsIm9yZGVyX3ByZXNldHNfcmVtb3ZlX2Zyb21fdHZfc2V0dGluZ3MiOjEuMCwiY2hlY2tvdXQtZmxvdy10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LWdvb2dsZXBheSI6MS4wLCJjaGVja291dC1mbG93LWFwcGxlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5cGFsIjoxLjAsImZvcmJpZF9zaWdudXBfd2l0aF9mYWtlX2dtYWlsX2RvbWFpbnMiOjEuMCwic2hvd19pbXBvcnRfZnJvbV9wYXBlcl90cmFkaW5nX2J1dHRvbiI6MS4wLCJzeW1ib2xfc2VhcmNoX2dyb3VwaW5nIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwtdHJpYWwiOjEuMCwidm9pZF9ub3RfZm91bmRfY2tvX3BheW1lbnRfaW5fYXBwcm92ZWRfd2ViaG9vayI6MS4wLCJzaG93X3BhbmVsX2NvbGxhcHNlX2J1dHRvbiI6MS4wLCJkZWxheV9zdGF0dXNfb25fbGFzdF9iYXIiOjAuNX07CndpbmRvdy5pbml0RGF0YSA9IHt9OwoJCXdpbmRvdy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwgPSAiaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIjsKCndpbmRvdy5pbml0RGF0YSA9IHsid2lkZ2V0RGVmYXVsdHMiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo4MzAsImF1dG9zaXplIjpmYWxzZSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRpc3BsYXlNb2RlIjoicmVndWxhciIsImZlZWRNb2RlIjoiYWxsX3N5bWJvbHMiLCJjb2xvclRoZW1lIjoibGlnaHQiLCJsb2NhbGUiOiJlbiJ9fTsKCQl3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm8gPSB7Imxhbmd1YWdlIjoiZW4iLCJsYW5ndWFnZV9uYW1lIjoiRW5nbGlzaCIsImZsYWciOiJ1cyIsImdlb2lwX2NvZGUiOiJ1cyIsImlzbyI6ImVuIiwiaXNvXzYzOV8zIjoiZW5nIiwiZ2xvYmFsX25hbWUiOiJFbmdsaXNoIiwiaXNfb25seV9yZWNvbW1lbmRlZF90d19hdXRvcmVwb3N0Ijp0cnVlfTsKCQl3aW5kb3cuaW5pdERhdGEuc2V0dGluZ3MgPSB7J1MzX0xPR09fU0VSVklDRV9CQVNFX1VSTCc6ICdodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8nLCAnUzNfTkVXU19JTUFHRV9TRVJWSUNFX0JBU0VfVVJMJzogJ2h0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL25ld3MvJywgJ1dFQlBBQ0tfU1RBVElDX1BBVEgnOiAnaHR0cHM6Ly9zdGF0aWMudHJhZGluZ3ZpZXcuY29tL3N0YXRpYy9idW5kbGVzLycsICdUUkFESU5HX1VSTFMnOiB7J2ZyZWUnOiAnaHR0cHM6Ly9wYXBlcnRyYWRpbmctZnJlZS50cmFkaW5ndmlldy5jb20nLCAncHJvJzogJ2h0dHBzOi8vcGFwZXJ0cmFkaW5nLnRyYWRpbmd2aWV3LmNvbSd9LCAnQ09OVEVTVFNfVVJMJzogJy9wYXBlci10cmFkaW5nJywgJ0NSVURfU1RPUkFHRV9VUkwnOiAnaHR0cHM6Ly9jcnVkLXN0b3JhZ2UudHJhZGluZ3ZpZXcuY29tJ307PC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iL2p3bGFJSWplT2hjQTVIamxUVGxaZz09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgZT17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtjb25zdCB0PXdpbmRvdzt0LmluaXREYXRhPXQuaW5pdERhdGF8fHt9O2NvbnN0IGE9L1wrL2csbj0vPFwvP1tePl0rKD58JCkvZyxzPWU9PmRlY29kZVVSSUNvbXBvbmVudChlLnJlcGxhY2UoYSwiICIpKS5yZXBsYWNlKG4sIiIpLG89dC5sb2NhdGlvbi5zZWFyY2guc3Vic3RyaW5nKDEpLGM9LyhbXiY9XSspPT8oW14mXSopL2csaT17fTtsZXQgbCxyPWMuZXhlYyhvKTtmb3IoO251bGwhPT1yOylpW3MoclsxXSldPXMoclsyXSkscj1jLmV4ZWMobyk7dHJ5e2w9SlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQodC5sb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSkpLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWx8fChsPXt9KX1jYXRjaChlKXtsPXt9fXZhciBoO3QuaW5pdERhdGEucXVlcnlTZXR0aW5ncz1pLHQuaW5pdERhdGEuaGFzaFNldHRpbmdzPShoPWwsT2JqZWN0LmtleXMoaCkuZm9yRWFjaCgodD0+e2VbdF0mJmRlbGV0ZSBoW3RdfSkpLGgpfSkoKTsKCTwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9Ii9qd2xhSUlqZU9oY0E1SGpsVFRsWmc9PSI+d2luZG93LlNTX0hPU1QgPSAic3ltYm9sLXNlYXJjaC50cmFkaW5ndmlldy5jb20iOwoJCXdpbmRvdy5XSURHRVRfU0hFUklGRl9IT1NUID0gImh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbSI7CgkJd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQgPSBmYWxzZTsKCgoJCXdpbmRvdy5sb2NhbGVfZG9tYWlucyA9IHsiZW4iOiJ3d3cudHJhZGluZ3ZpZXcuY29tIiwiYXJfQUUiOiJhci50cmFkaW5ndmlldy5jb20iLCJiciI6ImJyLnRyYWRpbmd2aWV3LmNvbSIsImRlX0RFIjoiZGUudHJhZGluZ3ZpZXcuY29tIiwiZXMiOiJlcy50cmFkaW5ndmlldy5jb20iLCJmciI6ImZyLnRyYWRpbmd2aWV3LmNvbSIsImhlX0lMIjoiaWwudHJhZGluZ3ZpZXcuY29tIiwiaWQiOiJpZC50cmFkaW5ndmlldy5jb20iLCJpbiI6ImluLnRyYWRpbmd2aWV3LmNvbSIsIml0IjoiaXQudHJhZGluZ3ZpZXcuY29tIiwiamEiOiJqcC50cmFkaW5ndmlldy5jb20iLCJrciI6ImtyLnRyYWRpbmd2aWV3LmNvbSIsIm1zX01ZIjoibXkudHJhZGluZ3ZpZXcuY29tIiwicGwiOiJwbC50cmFkaW5ndmlldy5jb20iLCJydSI6InJ1LnRyYWRpbmd2aWV3LmNvbSIsInRoX1RIIjoidGgudHJhZGluZ3ZpZXcuY29tIiwidHIiOiJ0ci50cmFkaW5ndmlldy5jb20iLCJ2aV9WTiI6InZuLnRyYWRpbmd2aWV3LmNvbSIsInpoX0NOIjoiY24udHJhZGluZ3ZpZXcuY29tIiwiemhfVFciOiJ0dy50cmFkaW5ndmlldy5jb20iLCJjYV9FUyI6ImVzLnRyYWRpbmd2aWV3LmNvbSJ9OwoKCQkJd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cyA9IHdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMgfHwgW107CgkJCQl3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLnB1c2goJ3dpZGdldCcpOwoKCQl3aW5kb3cuVHJhZGluZ1ZpZXcgPSB3aW5kb3cuVHJhZGluZ1ZpZXcgfHwge307Cjwvc2NyaXB0PgoKPC9oZWFkPgo8Ym9keT4KCTxzY3JpcHQgbm9uY2U9Ii9qd2xhSUlqZU9oY0E1SGpsVFRsWmc9PSI+CgkJKCgpPT57InVzZSBzdHJpY3QiO2NvbnN0IHQ9MTAxOTt2YXIgZSxzLG8sYSxkOyFmdW5jdGlvbih0KXt0LkFkYXB0aXZlPSJhZGFwdGl2ZSIsdC5SZWd1bGFyPSJyZWd1bGFyIix0LkNvbXBhY3Q9ImNvbXBhY3QifShlfHwoZT17fSkpLGZ1bmN0aW9uKHQpe3QuQWxsU3ltYm9scz0iYWxsX3N5bWJvbHMiLHQuTWFya2V0PSJtYXJrZXQiLHQuU3ltYm9sPSJzeW1ib2wifShzfHwocz17fSkpLGZ1bmN0aW9uKHQpe3QuQ3J5cHRvY3VycmVuY2llcz0iY3J5cHRvIix0LkN1cnJlbmNpZXM9ImZvcmV4Iix0LlN0b2Nrcz0ic3RvY2siLHQuSW5kaWNlcz0iaW5kZXgiLHQuRnV0dXJlcz0iZnV0dXJlcyIsdC5Cb25kcz0iY2ZkIn0ob3x8KG89e30pKSxmdW5jdGlvbih0KXt0LkhUTUw9Imh0bWwiLHQuUmVhY3Q9InJlYWN0In0oYXx8KGE9e30pKSxmdW5jdGlvbih0KXt0LlRoZW1lQ2xhc3NQcmVmaXg9InRoZW1lLSJ9KGR8fChkPXt9KSk7Y29uc3QgYz13aW5kb3c7Yy5pbml0RGF0YT1jLmluaXREYXRhfHx7fTtsZXQgaT1jLmluaXREYXRhLmhhc2hTZXR0aW5ncztpZihjLmluaXREYXRhLndpZGdldERlZmF1bHRzJiYoaT17Li4uYy5pbml0RGF0YS53aWRnZXREZWZhdWx0cywuLi5pfSksdm9pZCAwIT09aSl7aWYodm9pZCAwIT09aS5jb2xvclRoZW1lJiZmdW5jdGlvbih0LGU9d2luZG93KXtjb25zdCBzPSJ0aGVtZS0iK3Qsbz1lLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3Q7Zm9yKGNvbnN0IHQgb2YgQXJyYXkuZnJvbShvKSl0LnN0YXJ0c1dpdGgoInRoZW1lLSIpJiZ0IT09cyYmby5yZW1vdmUodCk7by5hZGQocyksZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC50aGVtZT10fShpLmNvbG9yVGhlbWUpLChpLmlzVHJhbnNwYXJlbnR8fGkudHJhbnNwYXJlbmN5KSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzLXRyYW5zcGFyZW50Iiksdm9pZCAwIT09aS5kaXNwbGF5TW9kZSYmZnVuY3Rpb24ocyxvKXtpZihvPT09ZS5BZGFwdGl2ZSl7Y29uc3QgZT13aW5kb3cubWF0Y2hNZWRpYShgKG1heC13aWR0aDogJHt0fXB4KWApLG89KCk9PntzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIiwhZS5tYXRjaGVzKSxzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1jb21wYWN0IixlLm1hdGNoZXMpfTtvKCksZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLG8pfWVsc2Ugcy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtcmVndWxhciIsbz09PWUuUmVndWxhcikscy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtY29tcGFjdCIsbz09PWUuQ29tcGFjdCl9KGRvY3VtZW50LmJvZHksaS5kaXNwbGF5TW9kZSksaS5ib2R5Q2xhc3Nlcylmb3IoY29uc3QgdCBvZiBpLmJvZHlDbGFzc2VzKWRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCh0KTtpLmJvZHlfY2xhc3MmJmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChpLmJvZHlfY2xhc3MpLGkuYm9keUlkJiYoZG9jdW1lbnQuYm9keS5pZD1pLmJvZHlJZCl9fSkoKTsKCTwvc2NyaXB0PgoKCTxkaXYgY2xhc3M9InR2LWVtYmVkLXdpZGdldC13cmFwcGVyIj4KCQk8ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keSBqcy1lbWJlZC13aWRnZXQtYm9keSI+CgkJCTxkaXYgY2xhc3M9InR2LXRpbWVsaW5lLXdpZGdldCBqcy10aW1lbGluZS13aWRnZXQtc3NyLXJvb3QiIGRhdGEtcHJvcHMtaWQ9IjVOR1ZPbyIgZGF0YS1yZW5kZXItbW9kZT0ibGVnYWN5Ij48ZGl2IGNsYXNzPSJjb250YWluZXItQ3ZFWUhmNEkiPjxkaXYgY2xhc3M9ImhlYWRlci1DdkVZSGY0SSI+PGgxIGNsYXNzPSJ0aXRsZS1DdkVZSGY0SSI+VG9wIFN0b3JpZXM8L2gxPjwvZGl2PjxkaXYgY2xhc3M9ImlubmVyQ29udGFpbmVyLUN2RVlIZjRJIj48ZGl2PjxkaXYgY2xhc3M9ImdyaWQtYjZwUDcxVGQiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3OmRjZjlmOTZhMTA5NGI6MC1udmRhLW52aWRpYS1zdG9jay1wb3BzLTEtb24tMjUwLWJpbGxpb24tb3BlbmFpLWZpbmFuY2luZy1pbi10aGUtd29ya3MvIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImNhcmQtUFlFMjd2cmsiPjxhcnRpY2xlIGNsYXNzPSJjYXJkLWV4dGVyaW9yLXBMS1NvRTlTIGFydGljbGUtUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iaGVhZGVyLVBZRTI3dnJrIj48dWwgY2xhc3M9InN0YWNrLUwyRTI2U3dmIHN0YWNrLS14eHhzbWFsbC1MMkUyNlN3ZiBhcHBseS1jb21tb24tdG9vbHRpcCI+PGxpPjxpbWcgY2xhc3M9ImxvZ28tVkNOS3ViV3EgeHh4c21hbGwtVkNOS3ViV3Egd3JhcHBlci1oY3QyeUp2SyBza2VsZXRvbi1WQ05LdWJXcSIgY3Jvc3NvcmlnaW49IiIgc3JjPSJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS9udmlkaWEuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJNb24sIDI3IEp1bCAyMDI2IDA4OjE0OjEzIEdNVCI+PHRpbWUgZGF0ZVRpbWU9Ik1vbiwgMjcgSnVsIDIwMjYgMDg6MTQ6MTMgR01UIj4zIGhvdXJzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9Ik5WREE6IE52aWRpYSBTdG9jayBQb3BzIDElIG9uICQyNTAgQmlsbGlvbiBPcGVuQUkgRmluYW5jaW5nIGluIHRoZSBXb3JrcyI+TlZEQTogTnZpZGlhIFN0b2NrIFBvcHMgMSUgb24gJDI1MCBCaWxsaW9uIE9wZW5BSSBGaW5hbmNpbmcgaW4gdGhlIFdvcmtzPC9kaXY+PC9kaXY+PC9hcnRpY2xlPjwvYT48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy90cmFkaW5ndmlldzo2MTJhNDk0YTQwOTRiOjAtYnRjLXVzZC1iaXRjb2luLXByaWNlLXN0ZWFkeS1uZWFyLTY1LTAwMC1haGVhZC1vZi1mZWQtcmF0ZS1kZWNpc2lvbi13aGF0LXRvLWV4cGVjdC8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL2NyeXB0by9YVFZDQlRDLnN2ZyIgYWx0PSIiIGxvYWRpbmc9ImxhenkiLz48L2xpPjwvdWw+PHJlbGF0aXZlLXRpbWUgbG9jYWxlPSJlbiIgZXZlbnQtdGltZT0iTW9uLCAyNyBKdWwgMjAyNiAwNzo1ODowOSBHTVQiPjx0aW1lIGRhdGVUaW1lPSJNb24sIDI3IEp1bCAyMDI2IDA3OjU4OjA5IEdNVCI+NCBob3VycyBhZ288L3RpbWU+PC9yZWxhdGl2ZS10aW1lPjwvZGl2PjxkaXYgY2xhc3M9ImFwcGx5LW92ZXJmbG93LXRvb2x0aXAgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tZGlyZWN0aW9uX2JvdGggdGl0bGUtUFlFMjd2cmsiIGRhdGEtb3ZlcmZsb3ctdG9vbHRpcC10ZXh0PSJCVEMvVVNEOiBCaXRjb2luIFByaWNlIFN0ZWFkeSBOZWFyICQ2NSwwMDAgQWhlYWQgb2YgRmVkIFJhdGUgRGVjaXNpb24uIFdoYXQgdG8gRXhwZWN0PyI+QlRDL1VTRDogQml0Y29pbiBQcmljZSBTdGVhZHkgTmVhciAkNjUsMDAwIEFoZWFkIG9mIEZlZCBSYXRlIERlY2lzaW9uLiBXaGF0IHRvIEV4cGVjdD88L2Rpdj48L2Rpdj48L2FydGljbGU+PC9hPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3OmNlMzM2ODhhYjA5NGI6MC1zcHgtcy1wLTUwMC1mdXR1cmVzLWp1bXAtMS1hcy13YXItaml0dGVycy1lYXNlLW1vcmUtYmlnLXRlY2gtZWFybmluZ3Mtb24tZGVjay8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL2luZGljZXMvcy1hbmQtcC01MDAuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJNb24sIDI3IEp1bCAyMDI2IDA3OjQxOjQ4IEdNVCI+PHRpbWUgZGF0ZVRpbWU9Ik1vbiwgMjcgSnVsIDIwMjYgMDc6NDE6NDggR01UIj40IGhvdXJzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9IlNQWDogUyZhbXA7UCA1MDAgRnV0dXJlcyBKdW1wIDElIGFzIFdhciBKaXR0ZXJzIEVhc2UsIE1vcmUgQmlnIFRlY2ggRWFybmluZ3Mgb24gRGVjayI+U1BYOiBTJmFtcDtQIDUwMCBGdXR1cmVzIEp1bXAgMSUgYXMgV2FyIEppdHRlcnMgRWFzZSwgTW9yZSBCaWcgVGVjaCBFYXJuaW5ncyBvbiBEZWNrPC9kaXY+PC9kaXY+PC9hcnRpY2xlPjwvYT48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy90cmFkaW5ndmlldzpjZWJlMDJmY2MwOTRiOjAtdXNkLWpweS1kb2xsYXItcHVzaGVzLXllbi1pbnRvLWRlZXAtZW5kLW5lYXItMTY0LWFzLWphcGFuLWluZmxhdGlvbi1yaXNlcy8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL2NvdW50cnkvVVMuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PGxpPjxpbWcgY2xhc3M9ImxvZ28tVkNOS3ViV3EgeHh4c21hbGwtVkNOS3ViV3Egd3JhcHBlci1oY3QyeUp2SyBza2VsZXRvbi1WQ05LdWJXcSIgY3Jvc3NvcmlnaW49IiIgc3JjPSJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS9jb3VudHJ5L0pQLnN2ZyIgYWx0PSIiIGxvYWRpbmc9ImxhenkiLz48L2xpPjwvdWw+PHJlbGF0aXZlLXRpbWUgbG9jYWxlPSJlbiIgZXZlbnQtdGltZT0iRnJpLCAyNCBKdWwgMjAyNiAwNzowNjo1OSBHTVQiPjx0aW1lIGRhdGVUaW1lPSJGcmksIDI0IEp1bCAyMDI2IDA3OjA2OjU5IEdNVCI+MyBkYXlzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9IlVTRC9KUFk6IERvbGxhciBQdXNoZXMgWWVuIGludG8gRGVlcCBFbmQgTmVhciDCpTE2NCBhcyBKYXBhbiBJbmZsYXRpb24gUmlzZXMiPlVTRC9KUFk6IERvbGxhciBQdXNoZXMgWWVuIGludG8gRGVlcCBFbmQgTmVhciDCpTE2NCBhcyBKYXBhbiBJbmZsYXRpb24gUmlzZXM8L2Rpdj48L2Rpdj48L2FydGljbGU+PC9hPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3Ojc0MDJiY2NhZjA5NGI6MC1pbnRjLWludGVsLXN0b2NrLWp1bXBzLWFzLWVhcm5pbmdzLXNob3ctdGVjaC12ZXRlcmFuLWlzLWJhY2staW4taXRzLXByaW1lLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vaW50ZWwuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJGcmksIDI0IEp1bCAyMDI2IDA2OjUzOjQzIEdNVCI+PHRpbWUgZGF0ZVRpbWU9IkZyaSwgMjQgSnVsIDIwMjYgMDY6NTM6NDMgR01UIj4zIGRheXMgYWdvPC90aW1lPjwvcmVsYXRpdmUtdGltZT48L2Rpdj48ZGl2IGNsYXNzPSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl9ib3RoIHRpdGxlLVBZRTI3dnJrIiBkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dD0iSU5UQzogSW50ZWwgU3RvY2sgSnVtcHMgYXMgRWFybmluZ3MgU2hvdyBUZWNoIFZldGVyYW4gSXMgQmFjayBpbiBJdHMgUHJpbWUiPklOVEM6IEludGVsIFN0b2NrIEp1bXBzIGFzIEVhcm5pbmdzIFNob3cgVGVjaCBWZXRlcmFuIElzIEJhY2sgaW4gSXRzIFByaW1lPC9kaXY+PC9kaXY+PC9hcnRpY2xlPjwvYT48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy90cmFkaW5ndmlldzoyZDQ1MTc3NDkwOTRiOjAtaXhpYy1uYXNkYXEtY29tcG9zaXRlLWZhbGxzLTItMS1hcy1haS10cmFkZS11bndpbmRzLW1hZy03LXNoZWRzLTgwMC1iaWxsaW9uLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vaW5kaWNlcy9uYXNkYXEtY29tcG9zaXRlLnN2ZyIgYWx0PSIiIGxvYWRpbmc9ImxhenkiLz48L2xpPjwvdWw+PHJlbGF0aXZlLXRpbWUgbG9jYWxlPSJlbiIgZXZlbnQtdGltZT0iRnJpLCAyNCBKdWwgMjAyNiAwNjo0MzoxMSBHTVQiPjx0aW1lIGRhdGVUaW1lPSJGcmksIDI0IEp1bCAyMDI2IDA2OjQzOjExIEdNVCI+MyBkYXlzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9IklYSUM6IE5hc2RhcSBDb21wb3NpdGUgRmFsbHMgMi4xJSBhcyBBSSBUcmFkZSBVbndpbmRzLCBNYWcgNyBTaGVkcyAkODAwIEJpbGxpb24iPklYSUM6IE5hc2RhcSBDb21wb3NpdGUgRmFsbHMgMi4xJSBhcyBBSSBUcmFkZSBVbndpbmRzLCBNYWcgNyBTaGVkcyAkODAwIEJpbGxpb248L2Rpdj48L2Rpdj48L2FydGljbGU+PC9hPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3OjNlMWI2YTFmMTA5NGI6MC1nb29nbC1hbHBoYWJldC1wb3N0cy1ibG93b3V0LWVhcm5pbmdzLWJ1dC1zdGVlcGVyLXNwZW5kLXNwb29rcy10cmFkZXJzLXNoYXJlcy1kcm9wLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vYWxwaGFiZXQuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJUaHUsIDIzIEp1bCAyMDI2IDA3OjEyOjU5IEdNVCI+PHRpbWUgZGF0ZVRpbWU9IlRodSwgMjMgSnVsIDIwMjYgMDc6MTI6NTkgR01UIj40IGRheXMgYWdvPC90aW1lPjwvcmVsYXRpdmUtdGltZT48L2Rpdj48ZGl2IGNsYXNzPSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl9ib3RoIHRpdGxlLVBZRTI3dnJrIiBkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dD0iR09PR0w6IEFscGhhYmV0IFBvc3RzIEJsb3dvdXQgRWFybmluZ3MgYnV0IFN0ZWVwZXIgU3BlbmQgU3Bvb2tzIFRyYWRlcnMsIFNoYXJlcyBEcm9wIj5HT09HTDogQWxwaGFiZXQgUG9zdHMgQmxvd291dCBFYXJuaW5ncyBidXQgU3RlZXBlciBTcGVuZCBTcG9va3MgVHJhZGVycywgU2hhcmVzIERyb3A8L2Rpdj48L2Rpdj48L2FydGljbGU+PC9hPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3OjliZWQ2YmM3MTA5NGI6MC10c2xhLXRlc2xhLXN0b2NrLWR1bXBzLWFzLWVhcm5pbmdzLXNob3ctMjAtc2xpZGUtcmV2ZW51ZS10b3BzLWVzdGltYXRlcy8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL3Rlc2xhLnN2ZyIgYWx0PSIiIGxvYWRpbmc9ImxhenkiLz48L2xpPjwvdWw+PHJlbGF0aXZlLXRpbWUgbG9jYWxlPSJlbiIgZXZlbnQtdGltZT0iVGh1LCAyMyBKdWwgMjAyNiAwNzowNzowMSBHTVQiPjx0aW1lIGRhdGVUaW1lPSJUaHUsIDIzIEp1bCAyMDI2IDA3OjA3OjAxIEdNVCI+NCBkYXlzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9IlRTTEE6IFRlc2xhIFN0b2NrIER1bXBzIGFzIEVhcm5pbmdzIFNob3cgMjAlIFNsaWRlLCBSZXZlbnVlIFRvcHMgRXN0aW1hdGVzIj5UU0xBOiBUZXNsYSBTdG9jayBEdW1wcyBhcyBFYXJuaW5ncyBTaG93IDIwJSBTbGlkZSwgUmV2ZW51ZSBUb3BzIEVzdGltYXRlczwvZGl2PjwvZGl2PjwvYXJ0aWNsZT48L2E+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL25ld3MvdHJhZGluZ3ZpZXc6ODJjYmI4NzkxMDk0YjowLXNweC1zLXAtNTAwLWZ1dHVyZXMtaHVnLXRoZS1mbGF0bGluZS1hcy1lYXJuaW5ncy1zZWFzb24tc2hpZnRzLWdlYXJzLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vaW5kaWNlcy9zLWFuZC1wLTUwMC5zdmciIGFsdD0iIiBsb2FkaW5nPSJsYXp5Ii8+PC9saT48L3VsPjxyZWxhdGl2ZS10aW1lIGxvY2FsZT0iZW4iIGV2ZW50LXRpbWU9IlRodSwgMjMgSnVsIDIwMjYgMDY6NTk6MzAgR01UIj48dGltZSBkYXRlVGltZT0iVGh1LCAyMyBKdWwgMjAyNiAwNjo1OTozMCBHTVQiPjQgZGF5cyBhZ288L3RpbWU+PC9yZWxhdGl2ZS10aW1lPjwvZGl2PjxkaXYgY2xhc3M9ImFwcGx5LW92ZXJmbG93LXRvb2x0aXAgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tZGlyZWN0aW9uX2JvdGggdGl0bGUtUFlFMjd2cmsiIGRhdGEtb3ZlcmZsb3ctdG9vbHRpcC10ZXh0PSJTUFg6IFMmYW1wO1AgNTAwIEZ1dHVyZXMgSHVnIHRoZSBGbGF0bGluZSBhcyBFYXJuaW5ncyBTZWFzb24gU2hpZnRzIEdlYXJzIj5TUFg6IFMmYW1wO1AgNTAwIEZ1dHVyZXMgSHVnIHRoZSBGbGF0bGluZSBhcyBFYXJuaW5ncyBTZWFzb24gU2hpZnRzIEdlYXJzPC9kaXY+PC9kaXY+PC9hcnRpY2xlPjwvYT48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy90cmFkaW5ndmlldzozN2YxNmQ0MjcwOTRiOjAtdXNkLWpweS1kb2xsYXItcHVtcHMtdG8tbmV3LWZvdXItZGVjYWRlLWhpZ2gtYWJvdmUtMTYzLXRva3lvLXMtdHVybi10by1tb3ZlLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vY291bnRyeS9VUy5zdmciIGFsdD0iIiBsb2FkaW5nPSJsYXp5Ii8+PC9saT48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL2NvdW50cnkvSlAuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJXZWQsIDIyIEp1bCAyMDI2IDA3OjAyOjE0IEdNVCI+PHRpbWUgZGF0ZVRpbWU9IldlZCwgMjIgSnVsIDIwMjYgMDc6MDI6MTQgR01UIj41IGRheXMgYWdvPC90aW1lPjwvcmVsYXRpdmUtdGltZT48L2Rpdj48ZGl2IGNsYXNzPSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl9ib3RoIHRpdGxlLVBZRTI3dnJrIiBkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dD0iVVNEL0pQWTogRG9sbGFyIFB1bXBzIHRvIE5ldyBGb3VyLURlY2FkZSBIaWdoIEFib3ZlIMKlMTYzLiBUb2t5b+KAmXMgVHVybiB0byBNb3ZlPyI+VVNEL0pQWTogRG9sbGFyIFB1bXBzIHRvIE5ldyBGb3VyLURlY2FkZSBIaWdoIEFib3ZlIMKlMTYzLiBUb2t5b+KAmXMgVHVybiB0byBNb3ZlPzwvZGl2PjwvZGl2PjwvYXJ0aWNsZT48L2E+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL25ld3MvdHJhZGluZ3ZpZXc6YzMzNWY2YjYwMDk0YjowLWNvaW4tY29pbmJhc2Utc3RvY2stcHVtcHMtMTAtYXMtY3J5cHRvLWJyb3MtZXllLXNlbmF0ZS12b3RlLW9uLWNsYXJpdHktYWN0LyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vY29pbmJhc2Uuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJXZWQsIDIyIEp1bCAyMDI2IDA3OjAxOjIyIEdNVCI+PHRpbWUgZGF0ZVRpbWU9IldlZCwgMjIgSnVsIDIwMjYgMDc6MDE6MjIgR01UIj41IGRheXMgYWdvPC90aW1lPjwvcmVsYXRpdmUtdGltZT48L2Rpdj48ZGl2IGNsYXNzPSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl9ib3RoIHRpdGxlLVBZRTI3dnJrIiBkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dD0iQ09JTjogQ29pbmJhc2UgU3RvY2sgUHVtcHMgMTAlIGFzIENyeXB0byBCcm9zIEV5ZSBTZW5hdGUgVm90ZSBvbiBDTEFSSVRZIEFjdCI+Q09JTjogQ29pbmJhc2UgU3RvY2sgUHVtcHMgMTAlIGFzIENyeXB0byBCcm9zIEV5ZSBTZW5hdGUgVm90ZSBvbiBDTEFSSVRZIEFjdDwvZGl2PjwvZGl2PjwvYXJ0aWNsZT48L2E+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL25ld3MvdHJhZGluZ3ZpZXc6NzU4ZTBlOTFlMDk0YjowLWl4aWMtbmFzZGFxLWNvbXBvc2l0ZS1zaG9vdHMtdXAtMS0zLWFzLXRyYWRlcnMtc25hcC11cC1kaXNjb3VudGVkLWNoaXAtc3RvY2tzLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjYXJkLVBZRTI3dnJrIj48YXJ0aWNsZSBjbGFzcz0iY2FyZC1leHRlcmlvci1wTEtTb0U5UyBhcnRpY2xlLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJjb250YWluZXItUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImhlYWRlci1QWUUyN3ZyayI+PHVsIGNsYXNzPSJzdGFjay1MMkUyNlN3ZiBzdGFjay0teHh4c21hbGwtTDJFMjZTd2YgYXBwbHktY29tbW9uLXRvb2x0aXAiPjxsaT48aW1nIGNsYXNzPSJsb2dvLVZDTkt1YldxIHh4eHNtYWxsLVZDTkt1YldxIHdyYXBwZXItaGN0MnlKdksgc2tlbGV0b24tVkNOS3ViV3EiIGNyb3Nzb3JpZ2luPSIiIHNyYz0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vaW5kaWNlcy9uYXNkYXEtY29tcG9zaXRlLnN2ZyIgYWx0PSIiIGxvYWRpbmc9ImxhenkiLz48L2xpPjwvdWw+PHJlbGF0aXZlLXRpbWUgbG9jYWxlPSJlbiIgZXZlbnQtdGltZT0iV2VkLCAyMiBKdWwgMjAyNiAwNjo1NTozMyBHTVQiPjx0aW1lIGRhdGVUaW1lPSJXZWQsIDIyIEp1bCAyMDI2IDA2OjU1OjMzIEdNVCI+NSBkYXlzIGFnbzwvdGltZT48L3JlbGF0aXZlLXRpbWU+PC9kaXY+PGRpdiBjbGFzcz0iYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCBhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCB0aXRsZS1QWUUyN3ZyayIgZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQ9IklYSUM6IE5hc2RhcSBDb21wb3NpdGUgU2hvb3RzIFVwIDEuMyUgYXMgVHJhZGVycyBTbmFwIFVwIERpc2NvdW50ZWQgQ2hpcCBTdG9ja3MiPklYSUM6IE5hc2RhcSBDb21wb3NpdGUgU2hvb3RzIFVwIDEuMyUgYXMgVHJhZGVycyBTbmFwIFVwIERpc2NvdW50ZWQgQ2hpcCBTdG9ja3M8L2Rpdj48L2Rpdj48L2FydGljbGU+PC9hPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9uZXdzL3RyYWRpbmd2aWV3OmVhOTIwNWFlYTA5NGI6MC1idGMtdXNkLWJpdGNvaW4tdG9wcy02Ni0wMDAtYXMtdXBzaWRlLW1vdmUtZ2FpbnMtc3RlYW0tY3JhY2tzLXJlc2lzdGFuY2UvIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImNhcmQtUFlFMjd2cmsiPjxhcnRpY2xlIGNsYXNzPSJjYXJkLWV4dGVyaW9yLXBMS1NvRTlTIGFydGljbGUtUFlFMjd2cmsiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iaGVhZGVyLVBZRTI3dnJrIj48dWwgY2xhc3M9InN0YWNrLUwyRTI2U3dmIHN0YWNrLS14eHhzbWFsbC1MMkUyNlN3ZiBhcHBseS1jb21tb24tdG9vbHRpcCI+PGxpPjxpbWcgY2xhc3M9ImxvZ28tVkNOS3ViV3EgeHh4c21hbGwtVkNOS3ViV3Egd3JhcHBlci1oY3QyeUp2SyBza2VsZXRvbi1WQ05LdWJXcSIgY3Jvc3NvcmlnaW49IiIgc3JjPSJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS9jcnlwdG8vWFRWQ0JUQy5zdmciIGFsdD0iIiBsb2FkaW5nPSJsYXp5Ii8+PC9saT48L3VsPjxyZWxhdGl2ZS10aW1lIGxvY2FsZT0iZW4iIGV2ZW50LXRpbWU9IlR1ZSwgMjEgSnVsIDIwMjYgMDc6NTQ6NTQgR01UIj48dGltZSBkYXRlVGltZT0iVHVlLCAyMSBKdWwgMjAyNiAwNzo1NDo1NCBHTVQiPjYgZGF5cyBhZ288L3RpbWU+PC9yZWxhdGl2ZS10aW1lPjwvZGl2PjxkaXYgY2xhc3M9ImFwcGx5LW92ZXJmbG93LXRvb2x0aXAgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tZGlyZWN0aW9uX2JvdGggdGl0bGUtUFlFMjd2cmsiIGRhdGEtb3ZlcmZsb3ctdG9vbHRpcC10ZXh0PSJCVEMvVVNEOiBCaXRjb2luIFRvcHMgJDY2LDAwMCBhcyBVcHNpZGUgTW92ZSBHYWlucyBTdGVhbSwgQ3JhY2tzIFJlc2lzdGFuY2UiPkJUQy9VU0Q6IEJpdGNvaW4gVG9wcyAkNjYsMDAwIGFzIFVwc2lkZSBNb3ZlIEdhaW5zIFN0ZWFtLCBDcmFja3MgUmVzaXN0YW5jZTwvZGl2PjwvZGl2PjwvYXJ0aWNsZT48L2E+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL25ld3MvdHJhZGluZ3ZpZXc6YjE0MzU1MGVmMDk0YjowLXBza3ktcGFyYW1vdW50LXN0b2NrLWZhbGxzLTItYWZ0ZXItanVkZ2UtcGF1c2VzLTExMGItd2FybmVyLWJyb3MtZGVhbC8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL3ZpYWNvbWNicy5zdmciIGFsdD0iIiBsb2FkaW5nPSJsYXp5Ii8+PC9saT48L3VsPjxyZWxhdGl2ZS10aW1lIGxvY2FsZT0iZW4iIGV2ZW50LXRpbWU9IlR1ZSwgMjEgSnVsIDIwMjYgMDc6Mjg6MjAgR01UIj48dGltZSBkYXRlVGltZT0iVHVlLCAyMSBKdWwgMjAyNiAwNzoyODoyMCBHTVQiPjYgZGF5cyBhZ288L3RpbWU+PC9yZWxhdGl2ZS10aW1lPjwvZGl2PjxkaXYgY2xhc3M9ImFwcGx5LW92ZXJmbG93LXRvb2x0aXAgYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tZGlyZWN0aW9uX2JvdGggdGl0bGUtUFlFMjd2cmsiIGRhdGEtb3ZlcmZsb3ctdG9vbHRpcC10ZXh0PSJQU0tZOiBQYXJhbW91bnQgU3RvY2sgRmFsbHMgMiUgQWZ0ZXIgSnVkZ2UgUGF1c2VzICQxMTBCIFdhcm5lciBCcm9zLiBEZWFsIj5QU0tZOiBQYXJhbW91bnQgU3RvY2sgRmFsbHMgMiUgQWZ0ZXIgSnVkZ2UgUGF1c2VzICQxMTBCIFdhcm5lciBCcm9zLiBEZWFsPC9kaXY+PC9kaXY+PC9hcnRpY2xlPjwvYT48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy90cmFkaW5ndmlldzphYThlN2FmZmEwOTRiOjAtc3B4LXMtcC01MDAtdHVtYmxlcy10by1zdGFydC10aGUtd2Vlay1lcXVpdHktZnV0dXJlcy1yaXNlLWFtaWQtcmVuZXdlZC1vcHRpbWlzbS8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY2FyZC1QWUUyN3ZyayI+PGFydGljbGUgY2xhc3M9ImNhcmQtZXh0ZXJpb3ItcExLU29FOVMgYXJ0aWNsZS1QWUUyN3ZyayI+PGRpdiBjbGFzcz0iY29udGFpbmVyLVBZRTI3dnJrIj48ZGl2IGNsYXNzPSJoZWFkZXItUFlFMjd2cmsiPjx1bCBjbGFzcz0ic3RhY2stTDJFMjZTd2Ygc3RhY2stLXh4eHNtYWxsLUwyRTI2U3dmIGFwcGx5LWNvbW1vbi10b29sdGlwIj48bGk+PGltZyBjbGFzcz0ibG9nby1WQ05LdWJXcSB4eHhzbWFsbC1WQ05LdWJXcSB3cmFwcGVyLWhjdDJ5SnZLIHNrZWxldG9uLVZDTkt1YldxIiBjcm9zc29yaWdpbj0iIiBzcmM9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tL2luZGljZXMvcy1hbmQtcC01MDAuc3ZnIiBhbHQ9IiIgbG9hZGluZz0ibGF6eSIvPjwvbGk+PC91bD48cmVsYXRpdmUtdGltZSBsb2NhbGU9ImVuIiBldmVudC10aW1lPSJUdWUsIDIxIEp1bCAyMDI2IDA3OjAxOjM4IEdNVCI+PHRpbWUgZGF0ZVRpbWU9IlR1ZSwgMjEgSnVsIDIwMjYgMDc6MDE6MzggR01UIj42IGRheXMgYWdvPC90aW1lPjwvcmVsYXRpdmUtdGltZT48L2Rpdj48ZGl2IGNsYXNzPSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl9ib3RoIHRpdGxlLVBZRTI3dnJrIiBkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dD0iU1BYOiBTJmFtcDtQIDUwMCBUdW1ibGVzIHRvIFN0YXJ0IHRoZSBXZWVrLiBFcXVpdHkgRnV0dXJlcyBSaXNlIEFtaWQgUmVuZXdlZCBPcHRpbWlzbSI+U1BYOiBTJmFtcDtQIDUwMCBUdW1ibGVzIHRvIFN0YXJ0IHRoZSBXZWVrLiBFcXVpdHkgRnV0dXJlcyBSaXNlIEFtaWQgUmVuZXdlZCBPcHRpbWlzbTwvZGl2PjwvZGl2PjwvYXJ0aWNsZT48L2E+PGRpdiBjbGFzcz0iZm9vdGVyLWI2cFA3MVRkIj48ZGl2IGRhdGEtaWQ9Im1vcmUtYnV0dG9uIj48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vbmV3cy8/dXRtX2NhbXBhaWduPXRpbWVsaW5lJmFtcDt1dG1fbWVkaXVtPXdpZGdldF9uZXciIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iYnV0dG9uLU1jUHRVdDJvIHRleHRCdXR0b24tX0MzRk1HVXggbGluay1fQzNGTUdVeCBicmFuZC1fQzNGTUdVeCBtZWRpdW0tX0MzRk1HVXgiPjxzcGFuIGNsYXNzPSJiYWNrZ3JvdW5kLV9DM0ZNR1V4Ij48L3NwYW4+PHNwYW4gY2xhc3M9ImNvbnRlbnQtX0MzRk1HVXgiPjxzcGFuIGNsYXNzPSJ0aXRsZS1NY1B0VXQybyI+S2VlcCA8c3BhbiBjbGFzcz0ibm9CcmVhay1Ia0dYSzUyNCI+cmVhZGluZzxzcGFuIHJvbGU9ImltZyIgY2xhc3M9ImFycm93SWNvbi1NY1B0VXQybyIgYXJpYS1oaWRkZW49InRydWUiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNNy41NiA0LjVhLjc1Ljc1IDAgMSAwLTEuMTIgMWwxLjEyLTF6TTEwLjUgOWwuNTYuNWEuNzUuNzUgMCAwIDAgMC0xbC0uNTYuNXptLTQuMDYgMy41YS43NS43NSAwIDAgMCAxLjEyIDFsLTEuMTItMXptMC03bDMuNSA0IDEuMTItMS0zLjUtNC0xLjEyIDF6bTMuNSAzbC0zLjUgNCAxLjEyIDEgMy41LTQtMS4xMi0xeiIvPjwvc3ZnPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2E+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9wcnMuaW5pdC1kYXRhK2pzb24iPnsiNU5HVk9vIjp7Im5ld3MiOlt7ImlkIjoidHJhZGluZ3ZpZXc6ZGNmOWY5NmExMDk0YjowIiwidGl0bGUiOiJOVkRBOiBOdmlkaWEgU3RvY2sgUG9wcyAxJSBvbiAkMjUwIEJpbGxpb24gT3BlbkFJIEZpbmFuY2luZyBpbiB0aGUgV29ya3MiLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzpkY2Y5Zjk2YTEwOTRiOjAtbnZkYS1udmlkaWEtc3RvY2stcG9wcy0xLW9uLTI1MC1iaWxsaW9uLW9wZW5haS1maW5hbmNpbmctaW4tdGhlLXdvcmtzLyIsInB1Ymxpc2hlZCI6MTc4NTE0MDA1MywidXJnZW5jeSI6MiwicGF5d2FsbCI6ZmFsc2UsImxpbmsiOiJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20iLCJyZWxhdGVkU3ltYm9scyI6W3sic3ltYm9sIjoiTkFTREFROk5WREEiLCJsb2dvaWQiOiJudmlkaWEifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3OjYxMmE0OTRhNDA5NGI6MCIsInRpdGxlIjoiQlRDL1VTRDogQml0Y29pbiBQcmljZSBTdGVhZHkgTmVhciAkNjUsMDAwIEFoZWFkIG9mIEZlZCBSYXRlIERlY2lzaW9uLiBXaGF0IHRvIEV4cGVjdD8iLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzo2MTJhNDk0YTQwOTRiOjAtYnRjLXVzZC1iaXRjb2luLXByaWNlLXN0ZWFkeS1uZWFyLTY1LTAwMC1haGVhZC1vZi1mZWQtcmF0ZS1kZWNpc2lvbi13aGF0LXRvLWV4cGVjdC8iLCJwdWJsaXNoZWQiOjE3ODUxMzkwODksInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6IkJJVFNUQU1QOkJUQ1VTRCIsImN1cnJlbmN5LWxvZ29pZCI6ImNvdW50cnkvVVMiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCI6ImNyeXB0by9YVFZDQlRDIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19LHsiaWQiOiJ0cmFkaW5ndmlldzpjZTMzNjg4YWIwOTRiOjAiLCJ0aXRsZSI6IlNQWDogUyZQIDUwMCBGdXR1cmVzIEp1bXAgMSUgYXMgV2FyIEppdHRlcnMgRWFzZSwgTW9yZSBCaWcgVGVjaCBFYXJuaW5ncyBvbiBEZWNrIiwic3RvcnlQYXRoIjoiL25ld3MvdHJhZGluZ3ZpZXc6Y2UzMzY4OGFiMDk0YjowLXNweC1zLXAtNTAwLWZ1dHVyZXMtanVtcC0xLWFzLXdhci1qaXR0ZXJzLWVhc2UtbW9yZS1iaWctdGVjaC1lYXJuaW5ncy1vbi1kZWNrLyIsInB1Ymxpc2hlZCI6MTc4NTEzODEwOCwidXJnZW5jeSI6MiwicGF5d2FsbCI6ZmFsc2UsImxpbmsiOiJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20iLCJyZWxhdGVkU3ltYm9scyI6W3sic3ltYm9sIjoiQ0JPRTpTUFgiLCJsb2dvaWQiOiJpbmRpY2VzL3MtYW5kLXAtNTAwIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19LHsiaWQiOiJ0cmFkaW5ndmlldzpjZWJlMDJmY2MwOTRiOjAiLCJ0aXRsZSI6IlVTRC9KUFk6IERvbGxhciBQdXNoZXMgWWVuIGludG8gRGVlcCBFbmQgTmVhciDCpTE2NCBhcyBKYXBhbiBJbmZsYXRpb24gUmlzZXMiLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzpjZWJlMDJmY2MwOTRiOjAtdXNkLWpweS1kb2xsYXItcHVzaGVzLXllbi1pbnRvLWRlZXAtZW5kLW5lYXItMTY0LWFzLWphcGFuLWluZmxhdGlvbi1yaXNlcy8iLCJwdWJsaXNoZWQiOjE3ODQ4NzY4MTksInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6IkZYOlVTREpQWSIsImN1cnJlbmN5LWxvZ29pZCI6ImNvdW50cnkvSlAiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCI6ImNvdW50cnkvVVMifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3Ojc0MDJiY2NhZjA5NGI6MCIsInRpdGxlIjoiSU5UQzogSW50ZWwgU3RvY2sgSnVtcHMgYXMgRWFybmluZ3MgU2hvdyBUZWNoIFZldGVyYW4gSXMgQmFjayBpbiBJdHMgUHJpbWUiLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzo3NDAyYmNjYWYwOTRiOjAtaW50Yy1pbnRlbC1zdG9jay1qdW1wcy1hcy1lYXJuaW5ncy1zaG93LXRlY2gtdmV0ZXJhbi1pcy1iYWNrLWluLWl0cy1wcmltZS8iLCJwdWJsaXNoZWQiOjE3ODQ4NzYwMjMsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6Ik5BU0RBUTpJTlRDIiwibG9nb2lkIjoiaW50ZWwifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3OjJkNDUxNzc0OTA5NGI6MCIsInRpdGxlIjoiSVhJQzogTmFzZGFxIENvbXBvc2l0ZSBGYWxscyAyLjElIGFzIEFJIFRyYWRlIFVud2luZHMsIE1hZyA3IFNoZWRzICQ4MDAgQmlsbGlvbiIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3OjJkNDUxNzc0OTA5NGI6MC1peGljLW5hc2RhcS1jb21wb3NpdGUtZmFsbHMtMi0xLWFzLWFpLXRyYWRlLXVud2luZHMtbWFnLTctc2hlZHMtODAwLWJpbGxpb24vIiwicHVibGlzaGVkIjoxNzg0ODc1MzkxLCJ1cmdlbmN5IjoyLCJwYXl3YWxsIjpmYWxzZSwibGluayI6Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbSIsInJlbGF0ZWRTeW1ib2xzIjpbeyJzeW1ib2wiOiJUVkM6SVhJQyIsImxvZ29pZCI6ImluZGljZXMvbmFzZGFxLWNvbXBvc2l0ZSJ9XSwicHJvdmlkZXIiOnsiaWQiOiJ0cmFkaW5ndmlldyIsIm5hbWUiOiJUcmFkaW5nVmlldyIsImxvZ29faWQiOiJ0cmFkaW5ndmlldyJ9fSx7ImlkIjoidHJhZGluZ3ZpZXc6M2UxYjZhMWYxMDk0YjowIiwidGl0bGUiOiJHT09HTDogQWxwaGFiZXQgUG9zdHMgQmxvd291dCBFYXJuaW5ncyBidXQgU3RlZXBlciBTcGVuZCBTcG9va3MgVHJhZGVycywgU2hhcmVzIERyb3AiLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzozZTFiNmExZjEwOTRiOjAtZ29vZ2wtYWxwaGFiZXQtcG9zdHMtYmxvd291dC1lYXJuaW5ncy1idXQtc3RlZXBlci1zcGVuZC1zcG9va3MtdHJhZGVycy1zaGFyZXMtZHJvcC8iLCJwdWJsaXNoZWQiOjE3ODQ3OTA3NzksInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6Ik5BU0RBUTpHT09HIiwibG9nb2lkIjoiYWxwaGFiZXQifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3OjliZWQ2YmM3MTA5NGI6MCIsInRpdGxlIjoiVFNMQTogVGVzbGEgU3RvY2sgRHVtcHMgYXMgRWFybmluZ3MgU2hvdyAyMCUgU2xpZGUsIFJldmVudWUgVG9wcyBFc3RpbWF0ZXMiLCJzdG9yeVBhdGgiOiIvbmV3cy90cmFkaW5ndmlldzo5YmVkNmJjNzEwOTRiOjAtdHNsYS10ZXNsYS1zdG9jay1kdW1wcy1hcy1lYXJuaW5ncy1zaG93LTIwLXNsaWRlLXJldmVudWUtdG9wcy1lc3RpbWF0ZXMvIiwicHVibGlzaGVkIjoxNzg0NzkwNDIxLCJ1cmdlbmN5IjoyLCJwYXl3YWxsIjpmYWxzZSwibGluayI6Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbSIsInJlbGF0ZWRTeW1ib2xzIjpbeyJzeW1ib2wiOiJOQVNEQVE6VFNMQSIsImxvZ29pZCI6InRlc2xhIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19LHsiaWQiOiJ0cmFkaW5ndmlldzo4MmNiYjg3OTEwOTRiOjAiLCJ0aXRsZSI6IlNQWDogUyZQIDUwMCBGdXR1cmVzIEh1ZyB0aGUgRmxhdGxpbmUgYXMgRWFybmluZ3MgU2Vhc29uIFNoaWZ0cyBHZWFycyIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3OjgyY2JiODc5MTA5NGI6MC1zcHgtcy1wLTUwMC1mdXR1cmVzLWh1Zy10aGUtZmxhdGxpbmUtYXMtZWFybmluZ3Mtc2Vhc29uLXNoaWZ0cy1nZWFycy8iLCJwdWJsaXNoZWQiOjE3ODQ3ODk5NzAsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6IkNCT0U6U1BYIiwibG9nb2lkIjoiaW5kaWNlcy9zLWFuZC1wLTUwMCJ9XSwicHJvdmlkZXIiOnsiaWQiOiJ0cmFkaW5ndmlldyIsIm5hbWUiOiJUcmFkaW5nVmlldyIsImxvZ29faWQiOiJ0cmFkaW5ndmlldyJ9fSx7ImlkIjoidHJhZGluZ3ZpZXc6MzdmMTZkNDI3MDk0YjowIiwidGl0bGUiOiJVU0QvSlBZOiBEb2xsYXIgUHVtcHMgdG8gTmV3IEZvdXItRGVjYWRlIEhpZ2ggQWJvdmUgwqUxNjMuIFRva3lv4oCZcyBUdXJuIHRvIE1vdmU/Iiwic3RvcnlQYXRoIjoiL25ld3MvdHJhZGluZ3ZpZXc6MzdmMTZkNDI3MDk0YjowLXVzZC1qcHktZG9sbGFyLXB1bXBzLXRvLW5ldy1mb3VyLWRlY2FkZS1oaWdoLWFib3ZlLTE2My10b2t5by1zLXR1cm4tdG8tbW92ZS8iLCJwdWJsaXNoZWQiOjE3ODQ3MDM3MzQsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6IkZYOlVTREpQWSIsImN1cnJlbmN5LWxvZ29pZCI6ImNvdW50cnkvSlAiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCI6ImNvdW50cnkvVVMifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3OmMzMzVmNmI2MDA5NGI6MCIsInRpdGxlIjoiQ09JTjogQ29pbmJhc2UgU3RvY2sgUHVtcHMgMTAlIGFzIENyeXB0byBCcm9zIEV5ZSBTZW5hdGUgVm90ZSBvbiBDTEFSSVRZIEFjdCIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3OmMzMzVmNmI2MDA5NGI6MC1jb2luLWNvaW5iYXNlLXN0b2NrLXB1bXBzLTEwLWFzLWNyeXB0by1icm9zLWV5ZS1zZW5hdGUtdm90ZS1vbi1jbGFyaXR5LWFjdC8iLCJwdWJsaXNoZWQiOjE3ODQ3MDM2ODIsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6Ik5BU0RBUTpDT0lOIiwibG9nb2lkIjoiY29pbmJhc2UifV0sInByb3ZpZGVyIjp7ImlkIjoidHJhZGluZ3ZpZXciLCJuYW1lIjoiVHJhZGluZ1ZpZXciLCJsb2dvX2lkIjoidHJhZGluZ3ZpZXcifX0seyJpZCI6InRyYWRpbmd2aWV3Ojc1OGUwZTkxZTA5NGI6MCIsInRpdGxlIjoiSVhJQzogTmFzZGFxIENvbXBvc2l0ZSBTaG9vdHMgVXAgMS4zJSBhcyBUcmFkZXJzIFNuYXAgVXAgRGlzY291bnRlZCBDaGlwIFN0b2NrcyIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3Ojc1OGUwZTkxZTA5NGI6MC1peGljLW5hc2RhcS1jb21wb3NpdGUtc2hvb3RzLXVwLTEtMy1hcy10cmFkZXJzLXNuYXAtdXAtZGlzY291bnRlZC1jaGlwLXN0b2Nrcy8iLCJwdWJsaXNoZWQiOjE3ODQ3MDMzMzMsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6IlRWQzpJWElDIiwibG9nb2lkIjoiaW5kaWNlcy9uYXNkYXEtY29tcG9zaXRlIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19LHsiaWQiOiJ0cmFkaW5ndmlldzplYTkyMDVhZWEwOTRiOjAiLCJ0aXRsZSI6IkJUQy9VU0Q6IEJpdGNvaW4gVG9wcyAkNjYsMDAwIGFzIFVwc2lkZSBNb3ZlIEdhaW5zIFN0ZWFtLCBDcmFja3MgUmVzaXN0YW5jZSIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3OmVhOTIwNWFlYTA5NGI6MC1idGMtdXNkLWJpdGNvaW4tdG9wcy02Ni0wMDAtYXMtdXBzaWRlLW1vdmUtZ2FpbnMtc3RlYW0tY3JhY2tzLXJlc2lzdGFuY2UvIiwicHVibGlzaGVkIjoxNzg0NjIwNDk0LCJ1cmdlbmN5IjoyLCJwYXl3YWxsIjpmYWxzZSwibGluayI6Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbSIsInJlbGF0ZWRTeW1ib2xzIjpbeyJzeW1ib2wiOiJCSVRTVEFNUDpCVENVU0QiLCJjdXJyZW5jeS1sb2dvaWQiOiJjb3VudHJ5L1VTIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiOiJjcnlwdG8vWFRWQ0JUQyJ9XSwicHJvdmlkZXIiOnsiaWQiOiJ0cmFkaW5ndmlldyIsIm5hbWUiOiJUcmFkaW5nVmlldyIsImxvZ29faWQiOiJ0cmFkaW5ndmlldyJ9fSx7ImlkIjoidHJhZGluZ3ZpZXc6YjE0MzU1MGVmMDk0YjowIiwidGl0bGUiOiJQU0tZOiBQYXJhbW91bnQgU3RvY2sgRmFsbHMgMiUgQWZ0ZXIgSnVkZ2UgUGF1c2VzICQxMTBCIFdhcm5lciBCcm9zLiBEZWFsIiwic3RvcnlQYXRoIjoiL25ld3MvdHJhZGluZ3ZpZXc6YjE0MzU1MGVmMDk0YjowLXBza3ktcGFyYW1vdW50LXN0b2NrLWZhbGxzLTItYWZ0ZXItanVkZ2UtcGF1c2VzLTExMGItd2FybmVyLWJyb3MtZGVhbC8iLCJwdWJsaXNoZWQiOjE3ODQ2MTg5MDAsInVyZ2VuY3kiOjIsInBheXdhbGwiOmZhbHNlLCJsaW5rIjoiaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tIiwicmVsYXRlZFN5bWJvbHMiOlt7InN5bWJvbCI6Ik5BU0RBUTpQU0tZIiwibG9nb2lkIjoidmlhY29tY2JzIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19LHsiaWQiOiJ0cmFkaW5ndmlldzphYThlN2FmZmEwOTRiOjAiLCJ0aXRsZSI6IlNQWDogUyZQIDUwMCBUdW1ibGVzIHRvIFN0YXJ0IHRoZSBXZWVrLiBFcXVpdHkgRnV0dXJlcyBSaXNlIEFtaWQgUmVuZXdlZCBPcHRpbWlzbSIsInN0b3J5UGF0aCI6Ii9uZXdzL3RyYWRpbmd2aWV3OmFhOGU3YWZmYTA5NGI6MC1zcHgtcy1wLTUwMC10dW1ibGVzLXRvLXN0YXJ0LXRoZS13ZWVrLWVxdWl0eS1mdXR1cmVzLXJpc2UtYW1pZC1yZW5ld2VkLW9wdGltaXNtLyIsInB1Ymxpc2hlZCI6MTc4NDYxNzI5OCwidXJnZW5jeSI6MiwicGF5d2FsbCI6ZmFsc2UsImxpbmsiOiJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20iLCJyZWxhdGVkU3ltYm9scyI6W3sic3ltYm9sIjoiQ0JPRTpTUFgiLCJsb2dvaWQiOiJpbmRpY2VzL3MtYW5kLXAtNTAwIn1dLCJwcm92aWRlciI6eyJpZCI6InRyYWRpbmd2aWV3IiwibmFtZSI6IlRyYWRpbmdWaWV3IiwibG9nb19pZCI6InRyYWRpbmd2aWV3In19XX19PC9zY3JpcHQ+CgkJPC9kaXY+Cgk8L2Rpdj4KCjxzY3JpcHQgbm9uY2U9Ii9qd2xhSUlqZU9oY0E1SGpsVFRsWmc9PSI+Cgl3aW5kb3cuaW5pdERhdGEgPSB3aW5kb3cuaW5pdERhdGEgfHwge307CgoJd2luZG93LmluaXREYXRhLnNub3dwbG93U2V0dGluZ3MgPSB7CgkJY29sbGVjdG9ySWQ6ICd0dl9jZicsCgkJdXJsOiAnc25vd3Bsb3ctcGl4ZWwudHJhZGluZ3ZpZXcuY29tJywKCQlwYXJhbXM6IHsKCQkJYXBwSWQ6ICd0cmFkaW5ndmlldycsCgkJCXBvc3RQYXRoOiAnL2NvbS50cmFkaW5ndmlldy90cmFjaycsCgkJfSwKCQllbmFibGVkOiB0cnVlLAoJfQo8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4="}},"time_used":164,"timings":{"blocked":4,"dns":2,"connect":4,"send":0,"wait":129,"receive":0,"ssl":23},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15634.9ff500f40c3ec2496a9d.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.521Z","timestamp":1785154590521,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/15634.9ff500f40c3ec2496a9d.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608300-7a6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:44:48 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5d8b12c469b0d9b6dece45efa609c213\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1958,"size_decoded":1433,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1958), with no line terminators","md5":"1fe59f1cabe116d4c360e360391910cf","sha1":"6005a9d280a7661b640624f5309d0059e00f57a4","sha256":"4cac2a96f86db5b5ea7cc505de00925b8dff9a9b88157d33fa0832d728ab2d06","sha512":"4ce34a33edf60063dc9b5a69446b4f0f5b1870f1fa2980b7306e02ea292d73a9f2773611581f28e96d6bbf7d8c35367b6e71c21cc38b5073b921728dc3ced4b9","ssdeep":"","tlshash":"ef41545553f6b277e6b3453c6eaeb6944fb4403fab31168cb990e13847ef5500344d40","first_seen":"2026-07-22T16:00:00.46556Z","last_seen":"2026-07-27T14:22:59.654676Z","times_seen":367,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtdzFiMzp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNjAwKTstLV8xLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLV8xLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKX0uc3dpdGNoZXItbDNEdEtMc0x7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxleDowIDAgYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ei1pbmRleDowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uaW5wdXQtbDNEdEtMc0x7Y3Vyc29yOmRlZmF1bHQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5pbnB1dC1sM0R0S0xzTDpjaGVja2VkLC5pbnB1dC1sM0R0S0xzTDpkaXNhYmxlZCwuaW5wdXQtbDNEdEtMc0w6Zm9jdXN7Ym9yZGVyOjA7b3V0bGluZTowfS5pbnB1dC1sM0R0S0xzTDpmb2N1cysudGh1bWJXcmFwcGVyLWwzRHRLTHNMOmFmdGVye2Rpc3BsYXk6YmxvY2t9LmlucHV0LWwzRHRLTHNMOmZvY3VzLXZpc2libGUrLnRodW1iV3JhcHBlci1sM0R0S0xzTDphZnRlcntkaXNwbGF5OmJsb2NrfS5pbnB1dC1sM0R0S0xzTDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpKy50aHVtYldyYXBwZXItbDNEdEtMc0w6YWZ0ZXJ7ZGlzcGxheTpub25lfS50aHVtYldyYXBwZXItbDNEdEtMc0x7ZGlzcGxheTpibG9jaztoZWlnaHQ6Zml0LWNvbnRlbnQ7b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6Zml0LWNvbnRlbnR9LnRodW1iV3JhcHBlci1sM0R0S0xzTDpmb2N1c3tvdXRsaW5lOm5vbmV9LnRodW1iV3JhcHBlci1sM0R0S0xzTDpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udGh1bWJXcmFwcGVyLWwzRHRLTHNMOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsdWUpO2JvcmRlci1yYWRpdXM6MjRweDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5Om5vbmU7aGVpZ2h0OmNhbGMoMTAwJSArIDhweCk7aW5zZXQtaW5saW5lLXN0YXJ0Oi00cHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTRweDt3aWR0aDpjYWxjKDEwMCUgKyA4cHgpO3otaW5kZXg6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpOmhvdmVyKy50aHVtYldyYXBwZXItbDNEdEtMc0x7LS11aS1saWItc3dpdGNoVmlldy1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsKX19LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpOmFjdGl2ZSsudGh1bWJXcmFwcGVyLWwzRHRLTHNMey0tdWktbGliLXN3aXRjaFZpZXctY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpLmNoZWNrZWQtbDNEdEtMc0w6aG92ZXIrLnRodW1iV3JhcHBlci1sM0R0S0xzTHstLXVpLWxpYi1zd2l0Y2hWaWV3LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkKX19LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpLmNoZWNrZWQtbDNEdEtMc0w6YWN0aXZlKy50aHVtYldyYXBwZXItbDNEdEtMc0x7LS11aS1saWItc3dpdGNoVmlldy1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtKX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.18","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.768Z","timestamp":1785154590768,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sat, 27 Dec 2025 00:00:00 GMT","end":"Sun, 24 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"0A:93:73:BB:95:EC:D1:52:11:5B:CC:2D:92:43:D4:FD:5A:2E:BE:A4","sha256":"70:E8:96:A5:F6:09:13:92:CB:0D:3F:A5:37:C4:A1:0D:4A:F7:52:C0:C1:B6:21:DB:D5:92:33:3F:B5:7D:EE:0F"}}},"request":{"raw":"GET /sheriff/api/v1/rules/search?origin=https%3A%2F%2Fpersimmontrades.com HTTP/1.1\r\nHost: widget-sheriff.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 204 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 4888a1b692b693505c9036bc998623cc.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\ncross-origin-resource-policy: same-site\r\naccess-control-max-age: 86400\r\nvary: Origin\r\nx-cache: Hit from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: hk2iV9rb0Zhke_iaFSPgfIVn5NbC2DDY7QVdkTr6-yyh3pf7lpNfYg==\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":0,"size_decoded":574,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":16,"timings":{"blocked":-1,"dns":4,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-timeline.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.325Z","timestamp":1785154589325,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-timeline.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.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 12:16:29 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"45fde7c9b5fe73225f39ad186531ae50\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:31 GMT\r\nx-amz-id-2: tuoaDwWlx+XLLUiFepJTJsa0RVMPUYd27xnBi+XyaSVZLuFZY5G9WC6Snu2AhGIYYOh0tafcy/UboK6lfdhyn4+HQoBIW/rF\r\nx-amz-request-id: FDZ34VXJ6S6YXHPR\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: R.yZjsO3e4Fm1HID.Ff3OAIzWkgFhNny\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:31:56\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1f68afa9e204ea94795fea410ce8b8b6\r\ncdn-cache: REVALIDATED\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":13397,"size_decoded":6199,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"45fde7c9b5fe73225f39ad186531ae50","sha1":"b91437d3352f7dd8837afe887ace22fe90baa81e","sha256":"16109a716500895b8fd1cb8a20b8cb6b361b9f67433db420d47af19a222d8643","sha512":"aa4ebb4663ea67325d359a985581e77385865f9469415de45528fe183d217cc2d128e2209f14a6f5489e86cf41dc5c6d2337bc87f24204a333c47a0709c05840","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OlmaRMViZMEaGT:uD5Unb26nD6OlmaRkFEJT","tlshash":"e252d7a9b660dcbd41d945dba07a2321b61d3a48b207aca4b5ece4c510fdccca531f7e","first_seen":"2026-07-23T06:14:49.706446Z","last_seen":"2026-07-27T14:14:25.315542Z","times_seen":135,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixUPWxvY2F0aW9uLmhvc3RuYW1lLEM9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9VCx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09Qyx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoVCxDLF8pO2NvbnN0IEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxBLGspLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgRT10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoRT8odChFLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxFKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19dmFyIGcsdSxtLHA7IWZ1bmN0aW9uKHQpe3QuQWRhcHRpdmU9ImFkYXB0aXZlIix0LlJlZ3VsYXI9InJlZ3VsYXIiLHQuQ29tcGFjdD0iY29tcGFjdCJ9KGd8fChnPXt9KSksZnVuY3Rpb24odCl7dC5BbGxTeW1ib2xzPSJhbGxfc3ltYm9scyIsdC5NYXJrZXQ9Im1hcmtldCIsdC5TeW1ib2w9InN5bWJvbCJ9KHV8fCh1PXt9KSksZnVuY3Rpb24odCl7dC5DcnlwdG9jdXJyZW5jaWVzPSJjcnlwdG8iLHQuQ3VycmVuY2llcz0iZm9yZXgiLHQuU3RvY2tzPSJzdG9jayIsdC5JbmRpY2VzPSJpbmRleCIsdC5GdXR1cmVzPSJmdXR1cmVzIix0LkJvbmRzPSJjZmQifShtfHwobT17fSkpLGZ1bmN0aW9uKHQpe3QuSFRNTD0iaHRtbCIsdC5SZWFjdD0icmVhY3QifShwfHwocD17fSkpO25ldyBjbGFzcyBleHRlbmRzIGR7CmdldCB3aWRnZXRJZCgpe3JldHVybiJ0aW1lbGluZSJ9Z2V0IHVzZVNub3dwbG93UGFnZVZpZXcoKXtyZXR1cm4hMH1nZXQgcHJvcGVydGllc1RvQWRkVG9HZXRQYXJhbXMoKXtyZXR1cm5bIm1hcmtldCIsInN5bWJvbCJdfXVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KXtyZXR1cm4gdCYmdC5mZWVkTW9kZT09PXUuU3ltYm9sP2Z1bmN0aW9uKHQpe3RyeXtjb25zdCBlPW5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpLGk9e307Zm9yKGNvbnN0W3Isc11vZiBPYmplY3QuZW50cmllcyh0KSl7Y29uc3QgdD1lLnNlYXJjaFBhcmFtcy5nZXQocyk7dCYmKGlbcl09dCl9cmV0dXJuIGl9Y2F0Y2h7cmV0dXJue319fSh7c3ltYm9sOiJ0dndpZGdldHN5bWJvbCJ9KTp7fX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bIndpZHRoIiwiaGVpZ2h0IiwibWFya2V0Iiwic3ltYm9sIiwiY29sb3JUaGVtZSIsImlzVHJhbnNwYXJlbnQiLCJjb2xvclRoZW1lIiwiZGlzcGxheU1vZGUiLCJsYXJnZUNoYXJ0VXJsIiwiY3VzdG9tZXIiXX19fSkoKTs="}},"time_used":162,"timings":{"blocked":-1,"dns":5,"connect":2,"send":0,"wait":129,"receive":-1,"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/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.646Z","timestamp":1785154589646,"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/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://persimmontrades.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: 92699\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 17:28:11 GMT\r\nexpires: Thu, 22 Jul 2027 17:28:11 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: 413299\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":266390,"size_decoded":93559,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (2543)","md5":"eee9a1207007c5ca4881ae1d2d28501c","sha1":"055b95815ec1c7e235a4cd1b81986d5d91189286","sha256":"10db7fa38c6dbe779e1409808ec38f25074b935da180aa0f225307cc79e1bcd4","sha512":"0d0e9b5d67d5b34cbd057ef33fcfb4719221ed6139a1ab0796edd0018d992cf6c14a9e7bec89c99d8d91831b7a3602575c9c03e64dcf381ba15f0587cde57194","ssdeep":"3072:8D4U6KKZgtBOjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:8QcMsb0muBzg","tlshash":"d944e9d8b2a174669363f4a5413f000fb13b68a9f8484dacb28dd8e26df4959417bf7c","first_seen":"2026-07-22T19:32:39.227777Z","last_seen":"2026-07-27T14:17:31.048583Z","times_seen":312,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF90cj10aGlzLmRlZmF1bHRfdHJ8fHt9OyhmdW5jdGlvbihfKXt2YXIgd2luZG93PXRoaXM7CnRyeXsKXy5fRl90b2dnbGVzX2luaXRpYWxpemU9ZnVuY3Rpb24oYSl7KHR5cGVvZiBnbG9iYWxUaGlzIT09InVuZGVmaW5lZCI/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/YTpudWxsfSx0Zz1mdW5jdGlvbigpe3RoaXMuZz1uZXcgQmI7dGhpcy5DYT10aGlzLm89IiI7dGhpcy5qPSExO3RoaXMuaD0wO3RoaXMubD0hMX07dGcucHJvdG90eXBlLkI9ZnVuY3Rpb24oYSl7dGhpcy5vPV8uaWcoYSk7dGhpcy5DYT1TdHJpbmcoYS5BKTt0aGlzLmcuZygpfTsKdGcucHJvdG90eXBlLkE9ZnVuY3Rpb24oYSl7dGhpcy5qPSEwO3RoaXMuaD1fLmhnKGEpO3RoaXMuZy5nKCl9O3RnLnByb3RvdHlwZS5DPWZ1bmN0aW9uKCl7dGhpcy5sPSEwO3RoaXMuZy5nKCl9O3ZhciBqZz1mdW5jdGlvbigpe3RoaXMuZz0wO3RoaXMuaD1bXX0sdWc9ZnVuY3Rpb24oYSxiKXthLmgucHVzaChiKTt4ZyhhKX0seGc9ZnVuY3Rpb24oYSl7Zm9yKDthLmc8NSYmYS5oLmxlbmd0aDspeWcoYSxhLmguc2hpZnQoKSl9LHlnPWZ1bmN0aW9uKGEsYil7YS5nKys7TWUoYigpLGZ1bmN0aW9uKCl7dGhpcy5nLS07eGcodGhpcyl9LGEpfTt2YXIgemc9bmV3IERmKCExKSxBZz1kb2N1bWVudC5sb2NhdGlvbi5ocmVmOwpxZih7ZmxhZ3M6e2RtbDp6Z30saW5pdGlhbGl6ZTpmdW5jdGlvbihhKXt2YXIgYj16Zy5nZXQoKSxjPSIiLGQ9IiI7d2luZG93JiZ3aW5kb3cuX0ZfY3NzUm93S2V5JiYoYz13aW5kb3cuX0ZfY3NzUm93S2V5LHdpbmRvdy5fRl9jb21iaW5lZFNpZ25hdHVyZSYmKGQ9d2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlKSk7aWYoYyYmdHlwZW9mIHdpbmRvdy5fRl9pbnN0YWxsQ3NzIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiVSIpO3ZhciBlLGY9Xy52Ll9GX2pzVXJsO2YmJihlPXdnKGYpKTshZSYmKGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhc2UtanMiKSkmJihlPWYuc3JjP2Yuc3JjOmYuZ2V0QXR0cmlidXRlKCJocmVmIiksZT13ZyhlKSk7ZXx8KGU9d2coQWcpKTtlfHwoZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZT13ZyhlW2UubGVuZ3RoLTFdLnNyYykpO2lmKCFlKXRocm93IEVycm9yKCJWIik7ZT1uZXcga2coZSk7YyYmKGUubz1jKTsKZCYmKGUubD1kKTtlLkM9YjtiPWphKCk7Yi5PPWU7Yi5YZighMCk7Yj1qYSgpO2Iuc2UoYSk7YS5qKGIpfX0pOwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemU9ZnVuY3Rpb24oYSxiKXtpZighXy5kYSl7aWYoIV8uaGEpcmV0dXJuO18uaWEoKX1fLmRhLnFlKGEsYil9OwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemUoJ2IvbjczcXdmL1VVSnFWZS9NcEp3WmMvZWxfY29uZi9lbF9tYWluX2Nzcy9zeTEvc3kyOjYvc3kzOjcvc3k0OjYvZWxfbWFpbjo1LDgsOS9jb3JzcHJveHkvd2Vic2l0ZV9lcnJvci9uYXZpZ2F0aW9udWk6Ny9waGlzaGluZ19wcm90ZWN0aW9uOjgvX3N0YW06OScsWydzeTEnLCdzeTInLCdzeTMnLCdzeTQnLCdlbF9tYWluX2NzcycsJ2VsX21haW4nXSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBHZyxIZyxJZyxYZyxjaCxpaCxqaCxsaCxtaCxvaCxzaCx1aCx0aCxBaCxCaCxGaCxEaCxFaCxEZztfLkVnPWZ1bmN0aW9uKGEpe2lmKERnLnRlc3QoYSkpcmV0dXJuIGF9O18uRmc9ZnVuY3Rpb24oYSxiKXthLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mnx8KGEuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyPXt9KTthLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mi5zZXZlcml0eT1ifTtHZz1mdW5jdGlvbihhKXtpZighXy5VYXx8IV8uVmEpcmV0dXJuITE7Zm9yKHZhciBiPTA7YjxfLlZhLmJyYW5kcy5sZW5ndGg7YisrKXt2YXIgYz1fLlZhLmJyYW5kc1tiXS5icmFuZDtpZihjJiZjLmluZGV4T2YoYSkhPS0xKXJldHVybiEwfXJldHVybiExfTtIZz1mdW5jdGlvbigpe3JldHVybiBfLncoIkZpcmVmb3giKXx8Xy53KCJGeGlPUyIpfTsKSWc9ZnVuY3Rpb24oKXtyZXR1cm4gXy5XYSgpP0dnKCJDaHJvbWl1bSIpOihfLncoIkNocm9tZSIpfHxfLncoIkNyaU9TIikpJiYhKF8uV2EoKT8wOl8udygiRWRnZSIpKXx8Xy53KCJTaWxrIil9O18uSmc9ZnVuY3Rpb24oKXtyZXR1cm4gXy53KCJTYWZhcmkiKSYmIShJZygpfHwoXy5XYSgpPzA6Xy53KCJDb2FzdCIpKXx8Xy5YYSgpfHwoXy5XYSgpPzA6Xy53KCJFZGdlIikpfHwoXy5XYSgpP0dnKCJNaWNyb3NvZnQgRWRnZSIpOl8udygiRWRnLyIpKXx8KF8uV2EoKT9HZygiT3BlcmEiKTpfLncoIk9QUiIpKXx8SGcoKXx8Xy53KCJTaWxrIil8fF8udygiQW5kcm9pZCIpKX07Xy5LZz1mdW5jdGlvbigpe3JldHVybiBfLncoIkFuZHJvaWQiKSYmIShJZygpfHxIZygpfHxfLlhhKCl8fF8udygiU2lsayIpKX07Cl8uTWc9ZnVuY3Rpb24oYSxiKXtpZihhIT1udWxsKXt2YXIgYzt2YXIgZD0oYz1MZykhPW51bGw/YzpMZz17fTtjPWRbYV18fDA7Yz49Ynx8KGRbYV09YysxLGE9RXJyb3IoKSxfLkZnKGEsImluY2lkZW50IiksXy5yYihhKSl9fTtfLk5nPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdHlwZW9mIFN5bWJvbD09PSJmdW5jdGlvbiImJnR5cGVvZiBTeW1ib2woKT09PSJzeW1ib2wiPyhjPT09dm9pZCAwPzA6YykmJlN5bWJvbC5mb3ImJmE/U3ltYm9sLmZvcihhKTphIT1udWxsP1N5bWJvbChhKTpTeW1ib2woKTpifTtfLlJnPWZ1bmN0aW9uKGEsYil7Xy5PZ3x8Xy5IIGluIGF8fFBnKGEsUWcpO2FbXy5IXXw9Yn07Xy5TZz1mdW5jdGlvbihhLGIpe18uT2d8fF8uSCBpbiBhfHxQZyhhLFFnKTthW18uSF09Yn07Xy5UZz1mdW5jdGlvbihhKXtfLlJnKGEsMzQpO3JldHVybiBhfTtfLlVnPWZ1bmN0aW9uKGEpe18uUmcoYSw4MTkyKTtyZXR1cm4gYX07Cl8uV2c9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj09PXZvaWQgMD9hLmchPT1fLlZnJiYhISgyJihhLkpbXy5IXXwwKSk6ISEoMiZiKSYmYS5nIT09Xy5WZ307WGc9ZnVuY3Rpb24oYSl7YS5UbD0hMDtyZXR1cm4gYX07Xy5iaD1mdW5jdGlvbihhKXt2YXIgYj1hO2lmKFlnKGIpKXtpZighL15ccyooPzotP1sxLTldXGQqfDApP1xzKiQvLnRlc3QoYikpdGhyb3cgRXJyb3IoU3RyaW5nKGIpKTt9ZWxzZSBpZihaZyhiKSYmIU51bWJlci5pc1NhZmVJbnRlZ2VyKGIpKXRocm93IEVycm9yKFN0cmluZyhiKSk7cmV0dXJuICRnP0JpZ0ludChhKTphPWFoKGEpP2E/IjEiOiIwIjpZZyhhKT9hLnRyaW0oKXx8IjAiOlN0cmluZyhhKX07CmNoPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg+Yi5sZW5ndGgpcmV0dXJuITE7aWYoYS5sZW5ndGg8Yi5sZW5ndGh8fGE9PT1iKXJldHVybiEwO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLGU9YltjXTtpZihkPmUpcmV0dXJuITE7aWYoZDxlKXJldHVybiEwfX07Xy5oaD1mdW5jdGlvbihhLGIsYyxkKXtpZihhIT1udWxsJiZhW2RoXT09PWVoKXJldHVybiBhO2lmKCFBcnJheS5pc0FycmF5KGEpKXJldHVybiBjP2QmMj9iW18uZmhdfHwoYltfLmZoXT1fLmdoKGIpKTpuZXcgYjp2b2lkIDA7Yz1hW18uSF18MDtkPWN8ZCYzMnxkJjI7ZCE9PWMmJl8uU2coYSxkKTtyZXR1cm4gbmV3IGIoYSl9O18uZ2g9ZnVuY3Rpb24oYSl7YT1uZXcgYTtfLlRnKGEuSik7cmV0dXJuIGF9O2loPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtqaD1mdW5jdGlvbihhKXtyZXR1cm4gYX07CmxoPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXthPV8uaGgoYSxkLGMsZik7ZSYmKGE9Xy5raChhKSk7cmV0dXJuIGF9O21oPWZ1bmN0aW9uKGEpe3JldHVyblthLHRoaXMuZ2V0KGEpXX07b2g9ZnVuY3Rpb24oYSxiKXtiPDEwMHx8Xy5NZyhuaCwxKX07CnNoPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWQhPT12b2lkIDA7ZD0hIWQ7dmFyIGY9Xy5waChfLnFoKSxnOyFlJiZfLk9nJiZmJiYoZz1hW2ZdKSYmZy5UayhvaCk7Zj1bXTt2YXIgaD1hLmxlbmd0aDtnPTQyOTQ5NjcyOTU7dmFyIGs9ITEsbD0hIShiJjY0KSxuPWw/YiYxMjg/MDotMTp2b2lkIDA7aWYoIShiJjEpKXt2YXIgcT1oJiZhW2gtMV07cSE9bnVsbCYmdHlwZW9mIHE9PT0ib2JqZWN0IiYmcS5jb25zdHJ1Y3Rvcj09PU9iamVjdD8oaC0tLGc9aCk6cT12b2lkIDA7aWYobCYmIShiJjEyOCkmJiFlKXtrPSEwO3ZhciBwO2c9KChwPXJoKSE9bnVsbD9wOmloKShnLW4sbixhLHEsdm9pZCAwKStufX1iPXZvaWQgMDtmb3IoZT0wO2U8aDtlKyspaWYocD1hW2VdLHAhPW51bGwmJihwPWMocCxkKSkhPW51bGwpaWYobCYmZT49Zyl7dmFyIHI9ZS1uLHQ9dm9pZCAwOygodD1iKSE9bnVsbD90OmI9e30pW3JdPXB9ZWxzZSBmW2VdPXA7aWYocSlmb3IodmFyIEEgaW4gcSlhPXFbQV0sYSE9Cm51bGwmJihhPWMoYSxkKSkhPW51bGwmJihoPStBLGU9dm9pZCAwLGwmJiFOdW1iZXIuaXNOYU4oaCkmJihlPWgrbik8Zz9mW2VdPWE6KGg9dm9pZCAwLCgoaD1iKSE9bnVsbD9oOmI9e30pW0FdPWEpKTtiJiYoaz9mLnB1c2goYik6ZltnXT1iKTtyZXR1cm4gZn07dWg9ZnVuY3Rpb24oYSl7YVswXT10aChhWzBdKTthWzFdPXRoKGFbMV0pO3JldHVybiBhfTsKdGg9ZnVuY3Rpb24oYSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJudW1iZXIiOnJldHVybiBOdW1iZXIuaXNGaW5pdGUoYSk/YToiIithO2Nhc2UgImJpZ2ludCI6cmV0dXJuKDAsXy52aCkoYSk/TnVtYmVyKGEpOiIiK2E7Y2FzZSAiYm9vbGVhbiI6cmV0dXJuIGE/MTowO2Nhc2UgIm9iamVjdCI6aWYoQXJyYXkuaXNBcnJheShhKSl7dmFyIGI9YVtfLkhdfDA7cmV0dXJuIGEubGVuZ3RoPT09MCYmYiYxP3ZvaWQgMDpzaChhLGIsdGgpfWlmKGEhPW51bGwmJmFbZGhdPT09ZWgpcmV0dXJuIF8ud2goYSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIF8ueGgmJmEgaW5zdGFuY2VvZiBfLnhoKXJldHVybiBhLmcoKTtpZihhIGluc3RhbmNlb2YgXy55aClyZXR1cm4gYT1hLnNpemUhPT0wP18uemgoYSx1aCk6dm9pZCAwLGE7cmV0dXJufXJldHVybiBhfTtfLndoPWZ1bmN0aW9uKGEpe2E9YS5KO3JldHVybiBzaChhLGFbXy5IXXwwLHRoKX07Cl8uST1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIEFoKGEsYixjLDIwNDgpfTsKQWg9ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kPT09dm9pZCAwPzA6ZDtpZihhPT1udWxsKXt2YXIgZT0zMjtjPyhhPVtjXSxlfD0xMjgpOmE9W107YiYmKGU9ZSYtMTY3NjA4MzN8KGImMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KGEpKXRocm93IEVycm9yKCJiYSIpO2U9YVtfLkhdfDA7aWYoXy5NYyYmMSZlKXRocm93IEVycm9yKCJjYSIpOzIwNDgmZSYmISgyJmUpJiZCaCgpO2lmKGUmMjU2KXRocm93IEVycm9yKCJkYSIpO2lmKGUmNjQpcmV0dXJuKGV8ZCkhPT1lJiZfLlNnKGEsZXxkKSxhO2lmKGMmJihlfD0xMjgsYyE9PWFbMF0pKXRocm93IEVycm9yKCJlYSIpO2E6e2M9YTtlfD02NDt2YXIgZj1jLmxlbmd0aDtpZihmKXt2YXIgZz1mLTEsaD1jW2ddO2lmKGghPW51bGwmJnR5cGVvZiBoPT09Im9iamVjdCImJmguY29uc3RydWN0b3I9PT1PYmplY3Qpe2I9ZSYxMjg/MDotMTtnLT1iO2lmKGc+PTEwMjQpdGhyb3cgRXJyb3IoImdhIik7Zm9yKHZhciBrIGluIGgpZj0raywKZjxnJiYoY1tmK2JdPWhba10sZGVsZXRlIGhba10pO2U9ZSYtMTY3NjA4MzN8KGcmMTAyMyk8PDE0O2JyZWFrIGF9fWlmKGIpe2s9TWF0aC5tYXgoYixmLShlJjEyOD8wOi0xKSk7aWYoaz4xMDI0KXRocm93IEVycm9yKCJoYSIpO2U9ZSYtMTY3NjA4MzN8KGsmMTAyMyk8PDE0fX19Xy5TZyhhLGV8NjR8ZCk7cmV0dXJuIGF9O0JoPWZ1bmN0aW9uKCl7aWYoXy5NYyl0aHJvdyBFcnJvcigiZmEiKTtfLk1nKENoLDUpfTsKRmg9ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiBhO2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBjPWFbXy5IXXwwO3JldHVybiBhLmxlbmd0aD09PTAmJmMmMT92b2lkIDA6RGgoYSxjLGIpfWlmKGEhPW51bGwmJmFbZGhdPT09ZWgpcmV0dXJuIEVoKGEpO2lmKGEgaW5zdGFuY2VvZiBfLnloKXtiPWEuS2I7aWYoYiYyKXJldHVybiBhO2lmKCFhLnNpemUpcmV0dXJuO2M9Xy5UZyhfLnpoKGEpKTtpZihhLkdiKWZvcihhPTA7YTxjLmxlbmd0aDthKyspe3ZhciBkPWNbYV0sZT1kWzFdO2U9PW51bGx8fHR5cGVvZiBlIT09Im9iamVjdCI/ZT12b2lkIDA6ZSE9bnVsbCYmZVtkaF09PT1laD9lPUVoKGUpOkFycmF5LmlzQXJyYXkoZSk/ZT1EaChlLGVbXy5IXXwwLCEhKGImMzIpKTplPXZvaWQgMDtkWzFdPWV9cmV0dXJuIGN9aWYoImZ1bmN0aW9uIj09dHlwZW9mIF8ueGgmJmEgaW5zdGFuY2VvZiBfLnhoKXJldHVybiBhfTsKRGg9ZnVuY3Rpb24oYSxiLGMpe2lmKGImMilyZXR1cm4gYTshY3x8NDA5NiZifHwxNiZiP2E9Xy5HaChhLGIsITEsYyYmIShiJjE2KSk6KF8uUmcoYSwzNCksYiY0JiZPYmplY3QuZnJlZXplKGEpKTtyZXR1cm4gYX07Xy5IaD1mdW5jdGlvbihhLGIsYyl7YT1uZXcgYS5jb25zdHJ1Y3RvcihiKTtjJiYoYS5nPV8uVmcpO2EuaD1fLlZnO3JldHVybiBhfTtFaD1mdW5jdGlvbihhKXt2YXIgYj1hLkosYz1iW18uSF18MDtyZXR1cm4gXy5XZyhhLGMpP2E6Xy5JaChhLGIsYyk/Xy5IaChhLGIpOl8uR2goYixjKX07Xy5HaD1mdW5jdGlvbihhLGIsYyxkKXtkIT1udWxsfHwoZD0hISgzNCZiKSk7YT1zaChhLGIsRmgsZCk7ZD0zMjtjJiYoZHw9Mik7Yj1iJjE2NzY5MjE3fGQ7Xy5TZyhhLGIpO3JldHVybiBhfTsKXy5raD1mdW5jdGlvbihhKXt2YXIgYj1hLkosYz1iW18uSF18MDtyZXR1cm4gXy5XZyhhLGMpP18uSWgoYSxiLGMpP18uSGgoYSxiLCEwKTpuZXcgYS5jb25zdHJ1Y3RvcihfLkdoKGIsYywhMSkpOmF9O18uSWg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBjJjI/ITA6YyYzMiYmIShjJjQwOTYpPyhfLlNnKGIsY3wyKSxhLmc9Xy5WZywhMCk6ITF9O18ucGg9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O0RnPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7Xy5KaD1IZygpO18uS2g9Xy5aYSgpfHxfLncoImlQb2QiKTtfLkxoPV8udygiaVBhZCIpO18uTWg9Xy5LZygpO18uTmg9SWcoKTtfLk9oPV8uSmcoKSYmIV8uJGEoKTtfLlBoPSFfLlNjJiZ0eXBlb2YgYnRvYT09PSJmdW5jdGlvbiI7dmFyIExnPXZvaWQgMDt2YXIgUWgsbmgsQ2gsZGg7Xy5PZz10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgpPT09InN5bWJvbCI7UWg9Xy5OZygiamFzIix2b2lkIDAsITApO18uZmg9Xy5OZyh2b2lkIDAsIjBkaSIpO18ucWg9Xy5OZyh2b2lkIDAsU3ltYm9sKCkpO18uUmg9Xy5OZyh2b2lkIDAsIjB1YiIpO25oPV8uTmcodm9pZCAwLCIwdWJzIik7Q2g9Xy5OZyh2b2lkIDAsIjBhY3RrIik7ZGg9Xy5OZygibV9tIiwiWGwiLCEwKTtfLlNoPV8uTmcoKTt2YXIgUWcsUGcsVWg7UWc9e2VpOnt2YWx1ZTowLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCxlbnVtZXJhYmxlOiExfX07UGc9T2JqZWN0LmRlZmluZVByb3BlcnRpZXM7Xy5IPV8uT2c/UWg6ImVpIjtVaD1bXTtfLlNnKFVoLDcpO18uVGg9T2JqZWN0LmZyZWV6ZShVaCk7dmFyIGVoLFZoO2VoPXt9O18uVmc9e307Vmg9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1hO3RoaXMuaD1iO3RoaXMuaj1jfTtWaC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3ZhciBhPXRoaXMuZy5uZXh0KCk7YS5kb25lfHwoYS52YWx1ZT10aGlzLmguY2FsbCh0aGlzLmosYS52YWx1ZSkpO3JldHVybiBhfTtWaC5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfTtfLldoPU9iamVjdC5mcmVlemUoe30pO18uWGg9T2JqZWN0LmZyZWV6ZSh7fSk7dmFyIFpnPVhnKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIifSksWWc9WGcoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9KSxhaD1YZyhmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iYm9vbGVhbiJ9KTt2YXIgJGc9dHlwZW9mIF8udi5CaWdJbnQ9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgXy52LkJpZ0ludCgwKT09PSJiaWdpbnQiO3ZhciAkaCxZaCxhaSxaaDtfLnZoPVhnKGZ1bmN0aW9uKGEpe3JldHVybiAkZz9hPj1ZaCYmYTw9Wmg6YVswXT09PSItIj9jaChhLCRoKTpjaChhLGFpKX0pOyRoPU51bWJlci5NSU5fU0FGRV9JTlRFR0VSLnRvU3RyaW5nKCk7WWg9JGc/QmlnSW50KE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKTp2b2lkIDA7YWk9TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIudG9TdHJpbmcoKTtaaD0kZz9CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpOnZvaWQgMDtfLmJpPXR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24iP0JpZ0ludC5hc0ludE46dm9pZCAwO18uY2k9TnVtYmVyLmlzU2FmZUludGVnZXI7Xy5kaT1OdW1iZXIuaXNGaW5pdGU7Xy5laT1NYXRoLnRydW5jO3ZhciBmaT1mdW5jdGlvbigpe3RyeXt2YXIgYT1mdW5jdGlvbigpe3JldHVybigwLF8uVGIpKE1hcCxbXSx0aGlzLmNvbnN0cnVjdG9yKX07Xy5CKGEsTWFwKTtfLlFjKG5ldyBhKTtyZXR1cm4hMX1jYXRjaChiKXtyZXR1cm4hMH19KCksZ2k9ZnVuY3Rpb24oKXt0aGlzLmc9bmV3IE1hcH0saGksaWk7Xy5tPWdpLnByb3RvdHlwZTtfLm0uZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmcuZ2V0KGEpfTtfLm0uc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5nLnNldChhLGIpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZTtyZXR1cm4gdGhpc307Xy5tLmRlbGV0ZT1mdW5jdGlvbihhKXthPXRoaXMuZy5kZWxldGUoYSk7dGhpcy5zaXplPXRoaXMuZy5zaXplO3JldHVybiBhfTtfLm0uY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmcuY2xlYXIoKTt0aGlzLnNpemU9dGhpcy5nLnNpemV9O18ubS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZy5oYXMoYSl9O18ubS5lbnRyaWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5lbnRyaWVzKCl9OwpfLm0ua2V5cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcua2V5cygpfTtfLm0udmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy52YWx1ZXMoKX07Xy5tLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5nLmZvckVhY2goYSxiKX07Z2kucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbnRyaWVzKCl9O2hpPWZ1bmN0aW9uKCl7aWYoZmkpcmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZihnaS5wcm90b3R5cGUsTWFwLnByb3RvdHlwZSksT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoZ2kucHJvdG90eXBlLHtzaXplOnt2YWx1ZTowLGNvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLHdyaXRhYmxlOiEwfX0pLGdpO3ZhciBhPWZ1bmN0aW9uKCl7cmV0dXJuKDAsXy5UYikoTWFwLFtdLHRoaXMuY29uc3RydWN0b3IpfTtfLkIoYSxNYXApO3JldHVybiBhfSgpOwpfLnloPWZ1bmN0aW9uKGEsYixjLGQpe2M9Yz09PXZvaWQgMD9qaDpjO2Q9ZD09PXZvaWQgMD9qaDpkO3ZhciBlPWhpLmNhbGwodGhpcyl8fHRoaXM7ZS5LYj1hW18uSF18MDtlLkdiPWI7ZS5hZD1jO2Uua2c9ZS5HYj9saDpkO2Zvcih2YXIgZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZz1hW2ZdLGg9YyhnWzBdLCExLCEwKSxrPWdbMV07Yj9rPT09dm9pZCAwJiYoaz1udWxsKTprPWQoZ1sxXSwhMSwhMCx2b2lkIDAsdm9pZCAwLGUuS2IpO2hpLnByb3RvdHlwZS5zZXQuY2FsbChlLGgsayl9cmV0dXJuIGV9O18uQihfLnloLGhpKTtpaT1mdW5jdGlvbihhKXtpZihhLktiJjIpdGhyb3cgRXJyb3IoImFhIik7fTtfLnpoPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uVWcoQXJyYXkuZnJvbShoaS5wcm90b3R5cGUuZW50cmllcy5jYWxsKGEpLGIpKX07Xy5tPV8ueWgucHJvdG90eXBlO18ubS5jbGVhcj1mdW5jdGlvbigpe2lpKHRoaXMpO2hpLnByb3RvdHlwZS5jbGVhci5jYWxsKHRoaXMpfTsKXy5tLmRlbGV0ZT1mdW5jdGlvbihhKXtpaSh0aGlzKTtyZXR1cm4gaGkucHJvdG90eXBlLmRlbGV0ZS5jYWxsKHRoaXMsdGhpcy5hZChhLCEwLCExKSl9O18ubS5lbnRyaWVzPWZ1bmN0aW9uKCl7aWYodGhpcy5HYil7dmFyIGE9aGkucHJvdG90eXBlLmtleXMuY2FsbCh0aGlzKTthPW5ldyBWaChhLG1oLHRoaXMpfWVsc2UgYT1oaS5wcm90b3R5cGUuZW50cmllcy5jYWxsKHRoaXMpO3JldHVybiBhfTtfLm0udmFsdWVzPWZ1bmN0aW9uKCl7aWYodGhpcy5HYil7dmFyIGE9aGkucHJvdG90eXBlLmtleXMuY2FsbCh0aGlzKTthPW5ldyBWaChhLF8ueWgucHJvdG90eXBlLmdldCx0aGlzKX1lbHNlIGE9aGkucHJvdG90eXBlLnZhbHVlcy5jYWxsKHRoaXMpO3JldHVybiBhfTsKXy5tLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXt0aGlzLkdiP2hpLnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcyxmdW5jdGlvbihjLGQsZSl7YS5jYWxsKGIsZS5nZXQoZCksZCxlKX0pOmhpLnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcyxhLGIpfTtfLm0uc2V0PWZ1bmN0aW9uKGEsYil7aWkodGhpcyk7YT10aGlzLmFkKGEsITAsITEpO3JldHVybiBhPT1udWxsP3RoaXM6Yj09bnVsbD8oaGkucHJvdG90eXBlLmRlbGV0ZS5jYWxsKHRoaXMsYSksdGhpcyk6aGkucHJvdG90eXBlLnNldC5jYWxsKHRoaXMsYSx0aGlzLmtnKGIsITAsITAsdGhpcy5HYiwhMSx0aGlzLktiKSl9O18ubS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIGhpLnByb3RvdHlwZS5oYXMuY2FsbCh0aGlzLHRoaXMuYWQoYSwhMSwhMSkpfTsKXy5tLmdldD1mdW5jdGlvbihhKXthPXRoaXMuYWQoYSwhMSwhMSk7dmFyIGI9aGkucHJvdG90eXBlLmdldC5jYWxsKHRoaXMsYSk7aWYoYiE9PXZvaWQgMCl7dmFyIGM9dGhpcy5HYjtyZXR1cm4gYz8oYz10aGlzLmtnKGIsITEsITAsYyx0aGlzLk5rLHRoaXMuS2IpLGMhPT1iJiZoaS5wcm90b3R5cGUuc2V0LmNhbGwodGhpcyxhLGMpLGMpOmJ9fTtfLnloLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZW50cmllcygpfTtfLnloLnByb3RvdHlwZS50b0pTT049dm9pZCAwO3ZhciByaDtfLmppPV8uYmgoMCk7Xy5KPWZ1bmN0aW9uKGEsYixjKXt0aGlzLko9Xy5JKGEsYixjKX07Xy5KLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm4gXy53aCh0aGlzKX07Xy5KLnByb3RvdHlwZVtkaF09ZWg7Xy5KLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkoudG9TdHJpbmcoKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBMaSxNaSxOaSxPaSxSaSxQaSxRaSxTaSxVaSxXaSxYaTtfLmtpPWZ1bmN0aW9uKGEpe3ZhciBiPV8uZWMuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gXy5NYShhWzBdKTtmb3IodmFyIGM9YVswXSxkPTA7ZDxiLmxlbmd0aDtkKyspYys9ZW5jb2RlVVJJQ29tcG9uZW50KGJbZF0pK2FbZCsxXTtyZXR1cm4gXy5NYShjKX07Xy5saT1mdW5jdGlvbihhKXtfLlJnKGEsMzIpO3JldHVybiBhfTtfLm1pPWZ1bmN0aW9uKGEpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhKX07Xy5uaT1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJib29sZWFuIil0aHJvdyBFcnJvcigiJGAiK18ub2MoYSkrImAiK2EpO3JldHVybiBhfTtfLm9pPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGx8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhO2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuISFhfTsKXy5waT1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbHx8dHlwZW9mIGE9PT0ic3RyaW5nIj9hOnZvaWQgMH07Xy5xaT1mdW5jdGlvbihhKXtpZihhLmchPT1fLlZnKXJldHVybiExO3ZhciBiPWEuSjtiPV8uR2goYixiW18uSF18MCk7Xy5SZyhiLDIwNDgpO2EuSj1iO2EuZz12b2lkIDA7YS5oPXZvaWQgMDtyZXR1cm4hMH07Xy5yaT1mdW5jdGlvbihhKXtpZighXy5xaShhKSYmXy5XZyhhLGEuSltfLkhdfDApKXRocm93IEVycm9yKCk7fTtfLnNpPWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMCYmKGI9YVtfLkhdfDApO2ImMzImJiEoYiY0MDk2KSYmXy5TZyhhLGJ8NDA5Nil9OwpfLnRpPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YysoZT8wOi0xKSxnPWEubGVuZ3RoLTE7aWYoZz49MSsoZT8wOi0xKSYmZj49Zyl7dmFyIGg9YVtnXTtpZihoIT1udWxsJiZ0eXBlb2YgaD09PSJvYmplY3QiJiZoLmNvbnN0cnVjdG9yPT09T2JqZWN0KXJldHVybiBoW2NdPWQsYn1pZihmPD1nKXJldHVybiBhW2ZdPWQsYjtpZihkIT09dm9pZCAwKXt2YXIgaztnPSgoaz1iKSE9bnVsbD9rOmI9YVtfLkhdfDApPj4xNCYxMDIzfHw1MzY4NzA5MTI7Yz49Zz9kIT1udWxsJiYoZj17fSxhW2crKGU/MDotMSldPShmW2NdPWQsZikpOmFbZl09ZH1yZXR1cm4gYn07Xy5CaT1mdW5jdGlvbihhLGIpe2E9Xy51aShhLGIsdm9pZCAwKTtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOl8uVGh9O18uQ2k9ZnVuY3Rpb24oYSxiKXsyJmImJihhfD0yKTtyZXR1cm4gYXwxfTtfLkRpPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9KDImYj9hfDI6YSYtMykmLTI3M307Cl8uRWk9ZnVuY3Rpb24oYSl7cmV0dXJuISEoMiZhKSYmISEoNCZhKXx8ISEoMjU2JmEpfTtfLkZpPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGs9YjtmPT09MXx8KGYhPT00PzA6MiZifHwhKDE2JmIpJiYzMiZkKT9fLkVpKGIpfHwoYnw9IWEubGVuZ3RofHxnJiYhKDQwOTYmYil8fDMyJmQmJiEoNDA5NiZifHwxNiZiKT8yOjI1NixiIT09ayYmXy5TZyhhLGIpLE9iamVjdC5mcmVlemUoYSkpOihmPT09MiYmXy5FaShiKSYmKGE9Xy5taShhKSxrPTAsYj1fLkRpKGIsZCksZD1fLnRpKGMsZCxlLGEpKSxfLkVpKGIpfHwoaHx8KGJ8PTE2KSxiIT09ayYmXy5TZyhhLGIpKSk7MiZifHwhKDQwOTYmYnx8MTYmYil8fF8uc2koYyxkKTtyZXR1cm4gYX07Xy5HaT1mdW5jdGlvbihhLGIsYyxkKXtfLnJpKGEpO3ZhciBlPWEuSjtfLnRpKGUsZVtfLkhdfDAsYiwoZD09PSIwIj9OdW1iZXIoYyk9PT0wOmM9PT1kKT92b2lkIDA6Yyk7cmV0dXJuIGF9OwpfLkhpPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9ITE7ZD1fLnVpKGEsZCxlLGZ1bmN0aW9uKGcpe3ZhciBoPV8uaGgoZyxjLCExLGIpO2Y9aCE9PWcmJmghPW51bGw7cmV0dXJuIGh9KTtpZihkIT1udWxsKXJldHVybiBmJiYhXy5XZyhkKSYmXy5zaShhLGIpLGR9OwpfLklpPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGs9Xy5XZyhhLGMpO2Y9az8xOmY7Zz0hIWd8fGY9PT0zO2s9aCYmIWs7KGY9PT0yfHxrKSYmXy5xaShhKSYmKGI9YS5KLGM9YltfLkhdfDApO2E9Xy5CaShiLGUpO3ZhciBsPWE9PT1fLlRoPzc6YVtfLkhdfDAsbj1fLkNpKGwsYyk7aWYoaD0hKDQmbikpe3ZhciBxPWEscD1jLHI9ISEoMiZuKTtyJiYocHw9Mik7Zm9yKHZhciB0PSFyLEE9ITAsRD0wLEU9MDtEPHEubGVuZ3RoO0QrKyl7dmFyIGJhPV8uaGgocVtEXSxkLCExLHApO2lmKGJhIGluc3RhbmNlb2YgZCl7aWYoIXIpe3ZhciBaPV8uV2coYmEpO3QmJih0PSFaKTtBJiYoQT1aKX1xW0UrK109YmF9fUU8RCYmKHEubGVuZ3RoPUUpO258PTQ7bj1BP24mLTQwOTc6bnw0MDk2O249dD9ufDg6biYtOX1uIT09bCYmKF8uU2coYSxuKSwyJm4mJk9iamVjdC5mcmVlemUoYSkpO2lmKGsmJiEoOCZufHwhYS5sZW5ndGgmJihmPT09MXx8KGYhPT00PzA6MiZufHwhKDE2Jm4pJiYKMzImYykpKSl7Xy5FaShuKSYmKGE9Xy5taShhKSxuPV8uRGkobixjKSxjPV8udGkoYixjLGUsYSkpO2Q9YTtrPW47Zm9yKGw9MDtsPGQubGVuZ3RoO2wrKylxPWRbbF0sbj1fLmtoKHEpLHEhPT1uJiYoZFtsXT1uKTtrfD04O249az1kLmxlbmd0aD9rfDQwOTY6ayYtNDA5NztfLlNnKGEsbil9cmV0dXJuIGE9Xy5GaShhLG4sYixjLGUsZixoLGcpfTtfLkppPWZ1bmN0aW9uKGEpe2E9PW51bGwmJihhPXZvaWQgMCk7cmV0dXJuIGF9O18uS2k9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe2I9SlNPTi5wYXJzZShiKTtpZighQXJyYXkuaXNBcnJheShiKSl0aHJvdyBFcnJvcigiaWFgIitfLm9jKGIpKyJgIitiKTtfLlRnKGIpO3JldHVybiBuZXcgYShiKX19O0xpPWZ1bmN0aW9uKGEpe2lmKGEuRyl0aHJvdyBuZXcgVHlwZUVycm9yKCJmIik7YS5HPSEwfTtNaT1mdW5jdGlvbihhLGIpe2EubD17YmY6YixDZjohMH07YS5nPWEuQ3x8YS5vfTsKTmk9ZnVuY3Rpb24oYSxiKXthLnJhdz1iO09iamVjdC5mcmVlemUmJihPYmplY3QuZnJlZXplKGEpLE9iamVjdC5mcmVlemUoYikpO3JldHVybiBhfTtfLks9ZnVuY3Rpb24oYSl7cmV0dXJuIE5pKGEsYSl9O09pPWZ1bmN0aW9uKGEpe3RoaXMuZz1uZXcgXy5GO3RoaXMuaD1hfTtSaT1mdW5jdGlvbihhLGIpe0xpKGEuZyk7dmFyIGM9YS5nLkE7aWYoYylyZXR1cm4gUGkoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5nLnJldHVybik7YS5nLnJldHVybihiKTtyZXR1cm4gUWkoYSl9O1BpPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5nLkEsYyk7Xy5jYyhlKTtpZighZS5kb25lKXJldHVybiBhLmcuRz0hMSxlO3ZhciBmPWUudmFsdWV9Y2F0Y2goZyl7cmV0dXJuIGEuZy5BPW51bGwsTWkoYS5nLGcpLFFpKGEpfWEuZy5BPW51bGw7ZC5jYWxsKGEuZyxmKTtyZXR1cm4gUWkoYSl9OwpRaT1mdW5jdGlvbihhKXtmb3IoO2EuZy5nOyl0cnl7dmFyIGI9YS5oKGEuZyk7aWYoYilyZXR1cm4gYS5nLkc9ITEse3ZhbHVlOmIudmFsdWUsZG9uZTohMX19Y2F0Y2goYyl7YS5nLmo9dm9pZCAwLE1pKGEuZyxjKX1hLmcuRz0hMTtpZihhLmcubCl7Yj1hLmcubDthLmcubD1udWxsO2lmKGIuQ2YpdGhyb3cgYi5iZjtyZXR1cm57dmFsdWU6Yi5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX07ClNpPWZ1bmN0aW9uKGEpe3RoaXMubmV4dD1mdW5jdGlvbihiKXtMaShhLmcpO2EuZy5BP2I9UGkoYSxhLmcuQS5uZXh0LGIsYS5nLkkpOihhLmcuSShiKSxiPVFpKGEpKTtyZXR1cm4gYn07dGhpcy50aHJvdz1mdW5jdGlvbihiKXtMaShhLmcpO2EuZy5BP2I9UGkoYSxhLmcuQVsidGhyb3ciXSxiLGEuZy5JKTooTWkoYS5nLGIpLGI9UWkoYSkpO3JldHVybiBifTt0aGlzLnJldHVybj1mdW5jdGlvbihiKXtyZXR1cm4gUmkoYSxiKX07dGhpc1tTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9fTtVaT1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGQpe3JldHVybiBhLm5leHQoZCl9ZnVuY3Rpb24gYyhkKXtyZXR1cm4gYS50aHJvdyhkKX1yZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oZCxlKXtmdW5jdGlvbiBmKGcpe2cuZG9uZT9kKGcudmFsdWUpOlByb21pc2UucmVzb2x2ZShnLnZhbHVlKS50aGVuKGIsYykudGhlbihmLGUpfWYoYS5uZXh0KCkpfSl9O18uVmk9ZnVuY3Rpb24oYSl7cmV0dXJuIFVpKG5ldyBTaShuZXcgT2koYSkpKX07CldpPWZ1bmN0aW9uKGEpe3JldHVybiBTdHJpbmcoYSkucmVwbGFjZSgvXC0oW2Etel0pL2csZnVuY3Rpb24oYixjKXtyZXR1cm4gYy50b1VwcGVyQ2FzZSgpfSl9O1hpPWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoUmVnRXhwKCIoXnxbXFxzXSspKFthLXpdKSIsImciKSxmdW5jdGlvbihiLGMsZCl7cmV0dXJuIGMrZC50b1VwcGVyQ2FzZSgpfSl9O18uWWk9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8ub2UpcmV0dXJuIGE7dmFyIGI9bmV3IF8ub2UoXy5sZSk7Xy5uZShiLDIsYSk7cmV0dXJuIGJ9OwpfLnVpPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGI9PT0tMSlyZXR1cm4gbnVsbDt2YXIgZT1iKyhjPzA6LTEpLGY9YS5sZW5ndGgtMTtpZighKGY8MSsoYz8wOi0xKSkpe2lmKGU+PWYpe3ZhciBnPWFbZl07aWYoZyE9bnVsbCYmdHlwZW9mIGc9PT0ib2JqZWN0IiYmZy5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yz1nW2JdO3ZhciBoPSEwfWVsc2UgaWYoZT09PWYpYz1nO2Vsc2UgcmV0dXJufWVsc2UgYz1hW2VdO2lmKGQmJmMhPW51bGwpe2Q9ZChjKTtpZihkPT1udWxsKXJldHVybiBkO2lmKCFPYmplY3QuaXMoZCxjKSlyZXR1cm4gaD9nW2JdPWQ6YVtlXT1kLGR9cmV0dXJuIGN9fTtfLlppPWZ1bmN0aW9uKGEsYixjLGQsZSl7Yj1fLnVpKGEuSixiLGMsZSk7aWYoYiE9PW51bGx8fGQmJmEuaCE9PV8uVmcpcmV0dXJuIGJ9O18uJGk9ZnVuY3Rpb24oYSxiLGMpe18ucmkoYSk7dmFyIGQ9YS5KO18udGkoZCxkW18uSF18MCxiLGMpO3JldHVybiBhfTsKXy5haj1mdW5jdGlvbihhKXtyZXR1cm4gYT09PV8uV2g/Mjo0fTtfLmJqPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuSixmPWVbXy5IXXwwO2I9Xy5IaShlLGYsYixjLGQpO2lmKGI9PW51bGwpcmV0dXJuIGI7Zj1lW18uSF18MDtpZighXy5XZyhhLGYpKXt2YXIgZz1fLmtoKGIpO2chPT1iJiYoXy5xaShhKSYmKGU9YS5KLGY9ZVtfLkhdfDApLGI9ZyxmPV8udGkoZSxmLGMsYixkKSxfLnNpKGUsZikpfXJldHVybiBifTtfLmNqPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLko7cmV0dXJuIF8uSWkoYSxkLGRbXy5IXXwwLGIsYyxfLmFqKCksITEsITApfTtfLkw9ZnVuY3Rpb24oYSxiLGMpe2M9Xy5KaShjKTtfLiRpKGEsYixjKTtjJiYhXy5XZyhjKSYmXy5zaShhLkopO3JldHVybiBhfTtfLk09ZnVuY3Rpb24oYSxiKXt2YXIgYz1jPT09dm9pZCAwPyExOmM7YT1fLm9pKF8uWmkoYSxiKSk7cmV0dXJuIGEhPW51bGw/YTpjfTsKXy5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yz09PXZvaWQgMD8iIjpjO3ZhciBkO3JldHVybihkPV8ucGkoXy5aaShhLGIpKSkhPW51bGw/ZDpjfTtfLmRqPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yz09PXZvaWQgMD8wOmM7YT1fLlppKGEsYik7YT1hPT1udWxsP2E6KDAsXy5kaSkoYSk/YXwwOnZvaWQgMDtyZXR1cm4gYSE9bnVsbD9hOmN9O18uZWo9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLkdpKGEsYixjPT1udWxsP2M6Xy5uaShjKSwhMSl9O18uZmo9ZnVuY3Rpb24oYSxiKXtpZihiPT1udWxsfHxiPT0iIilyZXR1cm4gbmV3IGE7Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJqYSIpO3JldHVybiBuZXcgYShfLmxpKGIpKX07dmFyIGlqLGdqLGpqO18uaGo9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBiPT09InN0cmluZyIpZ2ooYSxjLGIpO2Vsc2UgZm9yKHZhciBkIGluIGIpZ2ooYSxiW2RdLGQpfTtpaj0vXi0tLisvO2dqPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1qaltjXTtpZighZCl7dmFyIGU9V2koYyk7ZD1lO2Euc3R5bGVbZV09PT12b2lkIDAmJihlPShfLlZjPyJXZWJraXQiOl8uVWM/Ik1veiI6bnVsbCkrWGkoZSksYS5zdHlsZVtlXSE9PXZvaWQgMCYmKGQ9ZSkpO2pqW2NdPWR9KGM9ZCkmJihpai50ZXN0KGMpP2Euc3R5bGUuc2V0UHJvcGVydHkoYyxiKTphLnN0eWxlW2NdPWIpfTtqaj17fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGxqLG9qLHBqLHFqLHRqLHVqLHZqLHdqLHhqLHlqLEFqLENqLERqLEVqLEZqLEdqLEhqLElqLEtqLE5qLE9qLFhqLFlqLGJrLG5qLG1qLGNrLGVrLHJqLHNqLHpqLG5rO18ua2o9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uRGMpcmV0dXJuIGEuZzt0aHJvdyBFcnJvcigidCIpO307bGo9ZnVuY3Rpb24oYSl7dmFyIGI9YS5KLGM9YltfLkhdfDA7cmV0dXJuIF8uSWgoYSxiLGMpP18uSGgoYSxiLCEwKTpuZXcgYS5jb25zdHJ1Y3RvcihfLkdoKGIsYywhMSkpfTsKb2o9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj0wKTtpZighbWope21qPXt9O2Zvcih2YXIgYz0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkiLnNwbGl0KCIiKSxkPVsiKy89IiwiKy8iLCItXz0iLCItXy4iLCItXyJdLGU9MDtlPDU7ZSsrKXt2YXIgZj1jLmNvbmNhdChkW2VdLnNwbGl0KCIiKSk7bmpbZV09Zjtmb3IodmFyIGc9MDtnPGYubGVuZ3RoO2crKyl7dmFyIGg9ZltnXTttaltoXT09PXZvaWQgMCYmKG1qW2hdPWcpfX19Yj1ualtiXTtjPUFycmF5KE1hdGguZmxvb3IoYS5sZW5ndGgvMykpO2Q9Yls2NF18fCIiO2ZvcihlPWY9MDtmPGEubGVuZ3RoLTI7Zis9Myl7dmFyIGs9YVtmXSxsPWFbZisxXTtoPWFbZisyXTtnPWJbaz4+Ml07az1iWyhrJjMpPDw0fGw+PjRdO2w9YlsobCYxNSk8PDJ8aD4+Nl07aD1iW2gmNjNdO2NbZSsrXT1nK2srbCtofWc9MDtoPWQ7c3dpdGNoKGEubGVuZ3RoLWYpe2Nhc2UgMjpnPQphW2YrMV0saD1iWyhnJjE1KTw8Ml18fGQ7Y2FzZSAxOmE9YVtmXSxjW2VdPWJbYT4+Ml0rYlsoYSYzKTw8NHxnPj40XStoK2R9cmV0dXJuIGMuam9pbigiIil9O3BqPWZ1bmN0aW9uKGEpe2E9RXJyb3IoYSk7Xy5GZyhhLCJ3YXJuaW5nIik7cmV0dXJuIGF9O3FqPWZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24ifTt0aj1mdW5jdGlvbihhKXt2YXIgYj1hPj4+MDtyaj1iO3NqPShhLWIpLzQyOTQ5NjcyOTY+Pj4wfTt1aj1mdW5jdGlvbihhLGIpe2I9fmI7YT9hPX5hKzE6Yis9MTtyZXR1cm5bYSxiXX07dmo9ZnVuY3Rpb24oYSl7aWYoYTwwKXt0aigtYSk7dmFyIGI9Xy5DKHVqKHJqLHNqKSk7YT1iLm5leHQoKS52YWx1ZTtiPWIubmV4dCgpLnZhbHVlO3JqPWE+Pj4wO3NqPWI+Pj4wfWVsc2UgdGooYSl9O3dqPWZ1bmN0aW9uKGEpe2E9U3RyaW5nKGEpO3JldHVybiIwMDAwMDAwIi5zbGljZShhLmxlbmd0aCkrYX07CnhqPWZ1bmN0aW9uKGEsYil7Yj4+Pj0wO2E+Pj49MDtpZihiPD0yMDk3MTUxKXZhciBjPSIiKyg0Mjk0OTY3Mjk2KmIrYSk7ZWxzZSBxaigpP2M9IiIrKEJpZ0ludChiKTw8QmlnSW50KDMyKXxCaWdJbnQoYSkpOihjPShhPj4+MjR8Yjw8OCkmMTY3NzcyMTUsYj1iPj4xNiY2NTUzNSxhPShhJjE2Nzc3MjE1KStjKjY3NzcyMTYrYio2NzEwNjU2LGMrPWIqODE0NzQ5NyxiKj0yLGE+PTFFNyYmKGMrPWEvMUU3Pj4+MCxhJT0xRTcpLGM+PTFFNyYmKGIrPWMvMUU3Pj4+MCxjJT0xRTcpLGM9Yit3aihjKSt3aihhKSk7cmV0dXJuIGN9O3lqPWZ1bmN0aW9uKCl7dmFyIGE9cmosYj1zajtiJjIxNDc0ODM2NDg/cWooKT9hPSIiKyhCaWdJbnQoYnwwKTw8QmlnSW50KDMyKXxCaWdJbnQoYT4+PjApKTooYj1fLkModWooYSxiKSksYT1iLm5leHQoKS52YWx1ZSxiPWIubmV4dCgpLnZhbHVlLGE9Ii0iK3hqKGEsYikpOmE9eGooYSxiKTtyZXR1cm4gYX07CkFqPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYmlnaW50IjpyZXR1cm4hMDtjYXNlICJudW1iZXIiOnJldHVybigwLF8uZGkpKGEpO2Nhc2UgInN0cmluZyI6cmV0dXJuIHpqLnRlc3QoYSk7ZGVmYXVsdDpyZXR1cm4hMX19O18uQmo9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ibnVtYmVyIil0aHJvdyBwaigiaW50MzIiKTtpZighKDAsXy5kaSkoYSkpdGhyb3cgcGooImludDMyIik7cmV0dXJuIGF8MH07Q2o9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4oMCxfLmRpKShhKT9hfDA6dm9pZCAwfTsKRGo9ZnVuY3Rpb24oYSl7dmFyIGI9YS5sZW5ndGg7aWYoYVswXT09PSItIj9iPDIwfHxiPT09MjAmJmE8PSItOTIyMzM3MjAzNjg1NDc3NTgwOCI6YjwxOXx8Yj09PTE5JiZhPD0iOTIyMzM3MjAzNjg1NDc3NTgwNyIpcmV0dXJuIGE7aWYoYS5sZW5ndGg8MTYpdmooTnVtYmVyKGEpKTtlbHNlIGlmKHFqKCkpYT1CaWdJbnQoYSkscmo9TnVtYmVyKGEmQmlnSW50KDQyOTQ5NjcyOTUpKT4+PjAsc2o9TnVtYmVyKGE+PkJpZ0ludCgzMikmQmlnSW50KDQyOTQ5NjcyOTUpKTtlbHNle2I9KyhhWzBdPT09Ii0iKTtzaj1yaj0wO2Zvcih2YXIgYz1hLmxlbmd0aCxkPWIsZT0oYy1iKSU2K2I7ZTw9YztkPWUsZSs9NilkPU51bWJlcihhLnNsaWNlKGQsZSkpLHNqKj0xRTYscmo9cmoqMUU2K2Qscmo+PTQyOTQ5NjcyOTYmJihzais9TWF0aC50cnVuYyhyai80Mjk0OTY3Mjk2KSxzaj4+Pj0wLHJqPj4+PTApO2ImJihiPV8uQyh1aihyaixzaikpLGE9Yi5uZXh0KCkudmFsdWUsYj1iLm5leHQoKS52YWx1ZSwKcmo9YSxzaj1iKX1yZXR1cm4geWooKX07RWo9ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy5laSkoTnVtYmVyKGEpKTtpZigoMCxfLmNpKShiKSlyZXR1cm4gXy5iaChiKTtiPWEuaW5kZXhPZigiLiIpO2IhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxiKSk7cmV0dXJuIHFqKCk/Xy5iaCgoMCxfLmJpKSg2NCxCaWdJbnQoYSkpKTpfLmJoKERqKGEpKX07Rmo9ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy5laSkoTnVtYmVyKGEpKTtpZigoMCxfLmNpKShiKSlyZXR1cm4gU3RyaW5nKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtyZXR1cm4gRGooYSl9OwpHaj1mdW5jdGlvbihhKXthPSgwLF8uZWkpKGEpO2lmKCEoMCxfLmNpKShhKSl7dmooYSk7dmFyIGI9cmosYz1zajtpZihhPWMmMjE0NzQ4MzY0OCliPX5iKzE+Pj4wLGM9fmM+Pj4wLGI9PTAmJihjPWMrMT4+PjApO3ZhciBkPWMqNDI5NDk2NzI5NisoYj4+PjApO2I9TnVtYmVyLmlzU2FmZUludGVnZXIoZCk/ZDp4aihiLGMpO2E9dHlwZW9mIGI9PT0ibnVtYmVyIj9hPy1iOmI6YT8iLSIrYjpifXJldHVybiBhfTtIaj1mdW5jdGlvbihhKXthPSgwLF8uZWkpKGEpOygwLF8uY2kpKGEpP2E9U3RyaW5nKGEpOih2aihhKSxhPXlqKCkpO3JldHVybiBhfTtJaj1mdW5jdGlvbihhKXtyZXR1cm4oMCxfLmNpKShhKT9fLmJoKEdqKGEpKTpfLmJoKEhqKGEpKX07Cl8uSmo9ZnVuY3Rpb24oYSl7dmFyIGI9dm9pZCAwO2IhPW51bGx8fChiPTEwMjQpO2lmKCFBaihhKSl0aHJvdyBwaigiaW50NjQiKTt2YXIgYz10eXBlb2YgYTtzd2l0Y2goYil7Y2FzZSA1MTI6c3dpdGNoKGMpe2Nhc2UgInN0cmluZyI6cmV0dXJuIEZqKGEpO2Nhc2UgImJpZ2ludCI6cmV0dXJuIFN0cmluZygoMCxfLmJpKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4gSGooYSl9Y2FzZSAxMDI0OnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiBFaihhKTtjYXNlICJiaWdpbnQiOnJldHVybiBfLmJoKCgwLF8uYmkpKDY0LGEpKTtkZWZhdWx0OnJldHVybiBJaihhKX1jYXNlIDA6c3dpdGNoKGMpe2Nhc2UgInN0cmluZyI6cmV0dXJuIEZqKGEpO2Nhc2UgImJpZ2ludCI6cmV0dXJuIF8uYmgoKDAsXy5iaSkoNjQsYSkpO2RlZmF1bHQ6cmV0dXJuIEdqKGEpfWRlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gZm9ybWF0IHJlcXVlc3RlZCB0eXBlIGZvciBpbnQ2NCIpO319OwpLaj1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtpZihhPT1udWxsKXJldHVybiBhO2lmKGI9PT0iYmlnaW50IilyZXR1cm4gXy5iaCgoMCxfLmJpKSg2NCxhKSk7aWYoQWooYSkpcmV0dXJuIGI9PT0ic3RyaW5nIj9FaihhKTpJaihhKX07Xy5Maj1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIGF9O18uTWo9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3JldHVybiBfLmZqKGEsYil9fTsKTmo9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7ZVswXT0xNzMyNTg0MTkzO2VbMV09NDAyMzIzMzQxNztlWzJdPTI1NjIzODMxMDI7ZVszXT0yNzE3MzM4Nzg7ZVs0XT0zMjg1Mzc3NTIwO249bD0wfWZ1bmN0aW9uIGIocSl7Zm9yKHZhciBwPWcscj0wO3I8NjQ7cis9NClwW3IvNF09cVtyXTw8MjR8cVtyKzFdPDwxNnxxW3IrMl08PDh8cVtyKzNdO2ZvcihyPTE2O3I8ODA7cisrKXE9cFtyLTNdXnBbci04XV5wW3ItMTRdXnBbci0xNl0scFtyXT0ocTw8MXxxPj4+MzEpJjQyOTQ5NjcyOTU7cT1lWzBdO3ZhciB0PWVbMV0sQT1lWzJdLEQ9ZVszXSxFPWVbNF07Zm9yKHI9MDtyPDgwO3IrKyl7aWYocjw0MClpZihyPDIwKXt2YXIgYmE9RF50JihBXkQpO3ZhciBaPTE1MTg1MDAyNDl9ZWxzZSBiYT10XkFeRCxaPTE4NTk3NzUzOTM7ZWxzZSByPDYwPyhiYT10JkF8RCYodHxBKSxaPTI0MDA5NTk3MDgpOihiYT10XkFeRCxaPTMzOTU0Njk3ODIpO2JhPSgocTw8NXxxPj4+MjcpJjQyOTQ5NjcyOTUpKwpiYStFK1orcFtyXSY0Mjk0OTY3Mjk1O0U9RDtEPUE7QT0odDw8MzB8dD4+PjIpJjQyOTQ5NjcyOTU7dD1xO3E9YmF9ZVswXT1lWzBdK3EmNDI5NDk2NzI5NTtlWzFdPWVbMV0rdCY0Mjk0OTY3Mjk1O2VbMl09ZVsyXStBJjQyOTQ5NjcyOTU7ZVszXT1lWzNdK0QmNDI5NDk2NzI5NTtlWzRdPWVbNF0rRSY0Mjk0OTY3Mjk1fWZ1bmN0aW9uIGMocSxwKXtpZih0eXBlb2YgcT09PSJzdHJpbmciKXtxPXVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChxKSk7Zm9yKHZhciByPVtdLHQ9MCxBPXEubGVuZ3RoO3Q8QTsrK3Qpci5wdXNoKHEuY2hhckNvZGVBdCh0KSk7cT1yfXB8fChwPXEubGVuZ3RoKTtyPTA7aWYobD09MClmb3IoO3IrNjQ8cDspYihxLnNsaWNlKHIscis2NCkpLHIrPTY0LG4rPTY0O2Zvcig7cjxwOylpZihmW2wrK109cVtyKytdLG4rKyxsPT02NClmb3IobD0wLGIoZik7cis2NDxwOyliKHEuc2xpY2UocixyKzY0KSkscis9NjQsbis9NjR9ZnVuY3Rpb24gZCgpe3ZhciBxPVtdLApwPW4qODtsPDU2P2MoaCw1Ni1sKTpjKGgsNjQtKGwtNTYpKTtmb3IodmFyIHI9NjM7cj49NTY7ci0tKWZbcl09cCYyNTUscD4+Pj04O2IoZik7Zm9yKHI9cD0wO3I8NTtyKyspZm9yKHZhciB0PTI0O3Q+PTA7dC09OClxW3ArK109ZVtyXT4+dCYyNTU7cmV0dXJuIHF9Zm9yKHZhciBlPVtdLGY9W10sZz1bXSxoPVsxMjhdLGs9MTtrPDY0OysrayloW2tdPTA7dmFyIGwsbjthKCk7cmV0dXJue3Jlc2V0OmEsdXBkYXRlOmMsZGlnZXN0OmQsZmg6ZnVuY3Rpb24oKXtmb3IodmFyIHE9ZCgpLHA9IiIscj0wO3I8cS5sZW5ndGg7cisrKXArPSIwMTIzNDU2Nzg5QUJDREVGIi5jaGFyQXQoTWF0aC5mbG9vcihxW3JdLzE2KSkrIjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChxW3JdJTE2KTtyZXR1cm4gcH19fTtPaj1mdW5jdGlvbigpe3RoaXMuZz1kb2N1bWVudHx8e2Nvb2tpZToiIn19OwpYaj1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9QajpiO2lmKCFRail7dmFyIGM7YT0oYz1hLm5hdmlnYXRvcik9PW51bGw/dm9pZCAwOmMudXNlckFnZW50RGF0YTtpZighYXx8dHlwZW9mIGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMhPT0iZnVuY3Rpb24ifHxhLmJyYW5kcyYmdHlwZW9mIGEuYnJhbmRzLm1hcCE9PSJmdW5jdGlvbiIpcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJvYSIpKTtSaigoYS5icmFuZHN8fFtdKS5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9bmV3IFNqO2Y9Xy5UaihmLDEsZS5icmFuZCk7cmV0dXJuIF8uVGooZiwyLGUudmVyc2lvbil9KSk7dHlwZW9mIGEubW9iaWxlPT09ImJvb2xlYW4iJiZfLlVqKFZqLDIsYS5tb2JpbGUpO1FqPWEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoYil9dmFyIGQ9bmV3IFNldChiKTtyZXR1cm4gUWoudGhlbihmdW5jdGlvbihlKXt2YXIgZj1saihWaik7ZC5oYXMoInBsYXRmb3JtIikmJl8uVGooZiwzLGUucGxhdGZvcm0pO2QuaGFzKCJwbGF0Zm9ybVZlcnNpb24iKSYmCl8uVGooZiw0LGUucGxhdGZvcm1WZXJzaW9uKTtkLmhhcygiYXJjaGl0ZWN0dXJlIikmJl8uVGooZiw1LGUuYXJjaGl0ZWN0dXJlKTtkLmhhcygibW9kZWwiKSYmXy5UaihmLDYsZS5tb2RlbCk7ZC5oYXMoInVhRnVsbFZlcnNpb24iKSYmXy5UaihmLDcsZS51YUZ1bGxWZXJzaW9uKTtyZXR1cm4gXy5XaihmKX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIF8uV2ooVmopfSl9O1lqPWZ1bmN0aW9uKGEpe3RoaXMuZz10aGlzLmg9dGhpcy5qPWF9O18uWmo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGQ9Yy5zbGljZSgpO2QucHVzaC5hcHBseShkLGFyZ3VtZW50cyk7cmV0dXJuIGEuYXBwbHkodGhpcyxkKX19O18uYWs9ZnVuY3Rpb24oYSxiKXthLnFhP2IoKTooYS5XfHwoYS5XPVtdKSxhLlcucHVzaChiKSl9O2JrPXtabDohMH07Xy5Xaj1mdW5jdGlvbihhKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoXy53aChhKSl9Owpuaj17fTttaj1udWxsO2NrPXt9O18ueGg9ZnVuY3Rpb24oYSxiKXtpZihiIT09Y2spdGhyb3cgRXJyb3IoIloiKTt0aGlzLm89YTtpZihhIT1udWxsJiZhLmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIlkiKTt9O18ueGgucHJvdG90eXBlLmc9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLm87aWYoYT09bnVsbClhPSIiO2Vsc2UgaWYodHlwZW9mIGEhPT0ic3RyaW5nIil7aWYoXy5QaCl7Zm9yKHZhciBiPSIiLGM9MCxkPWEubGVuZ3RoLTEwMjQwO2M8ZDspYis9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGEuc3ViYXJyYXkoYyxjKz0xMDI0MCkpO2IrPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxjP2Euc3ViYXJyYXkoYyk6YSk7YT1idG9hKGIpfWVsc2UgYT1vaihhKTthPXRoaXMubz1hfXJldHVybiBhfTtfLmRrPV8uTmcodm9pZCAwLCIxb2EiKTtlaz17fTtyaj0wO3NqPTA7emo9L14tPyhbMS05XVswLTldKnwwKShcLlswLTldKyk/JC87Cl8uZms9ZnVuY3Rpb24oYSxiLGMpe18ucmkoYSk7dmFyIGQ9YS5KLGU9ZFtfLkhdfDA7aWYoYz09bnVsbClyZXR1cm4gXy50aShkLGUsYiksYTtmb3IodmFyIGY9Yz09PV8uVGg/NzpjW18uSF18MCxnPWYsaD1fLkVpKGYpLGs9aHx8T2JqZWN0LmlzRnJvemVuKGMpLGw9ITAsbj0hMCxxPTA7cTxjLmxlbmd0aDtxKyspe3ZhciBwPWNbcV07aHx8KHA9Xy5XZyhwKSxsJiYobD0hcCksbiYmKG49cCkpfWh8fChmPWw/MTM6NSxmPW4/ZiYtNDA5NzpmfDQwOTYpO2smJmY9PT1nfHwoYz1fLm1pKGMpLGc9MCxmPV8uRGkoZixlKSk7ZiE9PWcmJl8uU2coYyxmKTtlPV8udGkoZCxlLGIsYyk7MiZmfHwhKDQwOTYmZnx8MTYmZil8fF8uc2koZCxlKTtyZXR1cm4gYX07Xy5naz1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwPzA6YzthPUNqKF8uWmkoYSxiKSk7cmV0dXJuIGEhPW51bGw/YTpjfTsKXy5oaz1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwP18uamk6YzthPV8uWmkoYSxiLHZvaWQgMCx2b2lkIDAsS2opO3JldHVybiBhIT1udWxsP2E6Y307Xy5Vaj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uJGkoYSxiLGM9PW51bGw/YzpfLm5pKGMpKX07Xy5paz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uJGkoYSxiLGM9PW51bGw/YzpfLkJqKGMpKX07Xy5qaz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uJGkoYSxiLGM9PW51bGw/YzpfLkpqKGMpKX07Xy5Uaj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uJGkoYSxiLF8uTGooYykpfTtfLmtrPWZ1bmN0aW9uKGEsYixjKXtpZihjIT1udWxsKXtpZighKDAsXy5kaSkoYykpdGhyb3cgcGooImVudW0iKTtjfD0wfXJldHVybiBfLiRpKGEsYixjKX07Cm5rPWZ1bmN0aW9uKCl7dmFyIGE9bGssYj1tazt0aGlzLmc9MTc1MjM3Mzc1O3RoaXMuTGI9Yjt0aGlzLmg9Xy5iajt0aGlzLmRlZmF1bHRWYWx1ZT12b2lkIDA7dGhpcy5qPWEuV2whPW51bGw/ZWs6dm9pZCAwfTtuay5wcm90b3R5cGUucmVnaXN0ZXI9ZnVuY3Rpb24oKXtfLlFjKHRoaXMpfTt2YXIgb2s9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKG9rLF8uSik7dmFyIHBrPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiIiO2lmKC9eYWJvdXQ6KD86Ymxhbmt8c3JjZG9jKSQvLnRlc3QoYSkpcmV0dXJuIHdpbmRvdy5vcmlnaW58fCIiO2EuaW5kZXhPZigiYmxvYjoiKT09PTAmJihhPWEuc3Vic3RyaW5nKDUpKTthPWEuc3BsaXQoIiMiKVswXS5zcGxpdCgiPyIpWzBdO2E9YS50b0xvd2VyQ2FzZSgpO2EuaW5kZXhPZigiLy8iKT09MCYmKGE9d2luZG93LmxvY2F0aW9uLnByb3RvY29sK2EpOy9eW1x3XC1dKjpcL1wvLy50ZXN0KGEpfHwoYT13aW5kb3cubG9jYXRpb24uaHJlZik7dmFyIGI9YS5zdWJzdHJpbmcoYS5pbmRleE9mKCI6Ly8iKSszKSxjPWIuaW5kZXhPZigiLyIpO2MhPS0xJiYoYj1iLnN1YnN0cmluZygwLGMpKTtjPWEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCI6Ly8iKSk7aWYoIWMpdGhyb3cgRXJyb3IoImthYCIrYSk7aWYoYyE9PSJodHRwIiYmYyE9PSJodHRwcyImJmMhPT0iY2hyb21lLWV4dGVuc2lvbiImJmMhPT0ibW96LWV4dGVuc2lvbiImJgpjIT09ImZpbGUiJiZjIT09ImFuZHJvaWQtYXBwIiYmYyE9PSJjaHJvbWUtc2VhcmNoIiYmYyE9PSJjaHJvbWUtdW50cnVzdGVkIiYmYyE9PSJjaHJvbWUiJiZjIT09ImFwcCImJmMhPT0iZGV2dG9vbHMiKXRocm93IEVycm9yKCJsYWAiK2MpO2E9IiI7dmFyIGQ9Yi5pbmRleE9mKCI6Iik7aWYoZCE9LTEpe3ZhciBlPWIuc3Vic3RyaW5nKGQrMSk7Yj1iLnN1YnN0cmluZygwLGQpO2lmKGM9PT0iaHR0cCImJmUhPT0iODAifHxjPT09Imh0dHBzIiYmZSE9PSI0NDMiKWE9IjoiK2V9cmV0dXJuIGMrIjovLyIrYithfTt2YXIgcms9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVN0cmluZyhfLnYubG9jYXRpb24uaHJlZik7cmV0dXJuIGQmJmEmJmI/W2IscWsocGsoZCksYSxjfHxudWxsKV0uam9pbigiICIpOm51bGx9LHFrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPVtdO2lmKChBcnJheS5pc0FycmF5KGMpPzI6MSk9PTEpcmV0dXJuIGU9W2IsYV0sXy52YyhkLGZ1bmN0aW9uKGgpe2UucHVzaChoKX0pLHNrKGUuam9pbigiICIpKTt2YXIgZj1bXSxnPVtdO18udmMoYyxmdW5jdGlvbihoKXtnLnB1c2goaC5rZXkpO2YucHVzaChoLnZhbHVlKX0pO2M9TWF0aC5mbG9vcigobmV3IERhdGUpLmdldFRpbWUoKS8xRTMpO2U9Zi5sZW5ndGg9PTA/W2MsYixhXTpbZi5qb2luKCI6IiksYyxiLGFdO18udmMoZCxmdW5jdGlvbihoKXtlLnB1c2goaCl9KTthPXNrKGUuam9pbigiICIpKTthPVtjLGFdO2cubGVuZ3RoPT0wfHxhLnB1c2goZy5qb2luKCIiKSk7cmV0dXJuIGEuam9pbigiXyIpfSxzaz1mdW5jdGlvbihhKXt2YXIgYj0KTmooKTtiLnVwZGF0ZShhKTtyZXR1cm4gYi5maCgpLnRvTG93ZXJDYXNlKCl9O18ubT1Pai5wcm90b3R5cGU7Xy5tLnNldD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ITE7aWYodHlwZW9mIGM9PT0ib2JqZWN0Iil7dmFyIGU9Yy5zYW1lU2l0ZTtkPWMuc2VjdXJlfHwhMTt2YXIgZj1jLmRvbWFpbnx8dm9pZCAwO3ZhciBnPWMucGF0aHx8dm9pZCAwO3ZhciBoPWMuQml9aWYoL1s7PVxzXS8udGVzdChhKSl0aHJvdyBFcnJvcigibWFgIithKTtpZigvWztcclxuXS8udGVzdChiKSl0aHJvdyBFcnJvcigibmFgIitiKTtoPT09dm9pZCAwJiYoaD0tMSk7dGhpcy5nLmNvb2tpZT1hKyI9IitiKyhmPyI7ZG9tYWluPSIrZjoiIikrKGc/IjtwYXRoPSIrZzoiIikrKGg8MD8iIjpoPT0wPyI7ZXhwaXJlcz0iKyhuZXcgRGF0ZSgxOTcwLDEsMSkpLnRvVVRDU3RyaW5nKCk6IjtleHBpcmVzPSIrKG5ldyBEYXRlKERhdGUubm93KCkraCoxRTMpKS50b1VUQ1N0cmluZygpKSsoZD8iO3NlY3VyZSI6IiIpKyhlIT1udWxsPyI7c2FtZXNpdGU9IitlOiIiKX07Cl8ubS5nZXQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YSsiPSIsZD0odGhpcy5nLmNvb2tpZXx8IiIpLnNwbGl0KCI7IiksZT0wLGY7ZTxkLmxlbmd0aDtlKyspe2Y9Xy5BYyhkW2VdKTtpZihmLmxhc3RJbmRleE9mKGMsMCk9PTApcmV0dXJuIGYuc2xpY2UoYy5sZW5ndGgpO2lmKGY9PWEpcmV0dXJuIiJ9cmV0dXJuIGJ9O18ubS5yZW1vdmU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuZ2V0KGEpIT09dm9pZCAwO3RoaXMuc2V0KGEsIiIse0JpOjAscGF0aDpiLGRvbWFpbjpjfSk7cmV0dXJuIGR9O18ubS5PYz1mdW5jdGlvbigpe3JldHVybiB0ayh0aGlzKS5rZXlzfTtfLm0uaWI9ZnVuY3Rpb24oKXtyZXR1cm4gdGsodGhpcykudmFsdWVzfTtfLm0uY2xlYXI9ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGsodGhpcykua2V5cyxiPWEubGVuZ3RoLTE7Yj49MDtiLS0pdGhpcy5yZW1vdmUoYVtiXSl9Owp2YXIgdGs9ZnVuY3Rpb24oYSl7YT0oYS5nLmNvb2tpZXx8IiIpLnNwbGl0KCI7Iik7Zm9yKHZhciBiPVtdLGM9W10sZCxlLGY9MDtmPGEubGVuZ3RoO2YrKyllPV8uQWMoYVtmXSksZD1lLmluZGV4T2YoIj0iKSxkPT0tMT8oYi5wdXNoKCIiKSxjLnB1c2goZSkpOihiLnB1c2goZS5zdWJzdHJpbmcoMCxkKSksYy5wdXNoKGUuc3Vic3RyaW5nKGQrMSkpKTtyZXR1cm57a2V5czpiLHZhbHVlczpjfX07dmFyIHVrPWZ1bmN0aW9uKGEsYixjLGQpeyhhPV8udlthXSl8fHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwoYT0obmV3IE9qKS5nZXQoYikpO3JldHVybiBhP3JrKGEsYyxkKTpudWxsfSx2az1mdW5jdGlvbihhKXt2YXIgYj1wayhfLnY9PW51bGw/dm9pZCAwOl8udi5sb2NhdGlvbi5ocmVmKSxjPVtdLGQ7KGQ9Xy52Ll9fU0FQSVNJRHx8Xy52Ll9fQVBJU0lEfHxfLnYuX18zUFNBUElTSUR8fF8udi5fXzFQU0FQSVNJRHx8Xy52Ll9fT1ZFUlJJREVfU0lEKT9kPSEwOih0eXBlb2YgZG9jdW1lbnQhPT0idW5kZWZpbmVkIiYmKGQ9bmV3IE9qLGQ9ZC5nZXQoIlNBUElTSUQiKXx8ZC5nZXQoIkFQSVNJRCIpfHxkLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKXx8ZC5nZXQoIl9fU2VjdXJlLTFQQVBJU0lEIikpLGQ9ISFkKTtkJiYoZD0oYj1iLmluZGV4T2YoImh0dHBzOiIpPT0wfHxiLmluZGV4T2YoImNocm9tZS1leHRlbnNpb246Iik9PTB8fGIuaW5kZXhPZigiY2hyb21lLXVudHJ1c3RlZDovL25ldy10YWItcGFnZSIpPT0KMHx8Yi5pbmRleE9mKCJtb3otZXh0ZW5zaW9uOiIpPT0wKT9fLnYuX19TQVBJU0lEOl8udi5fX0FQSVNJRCxkfHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KGQ9bmV3IE9qLGQ9ZC5nZXQoYj8iU0FQSVNJRCI6IkFQSVNJRCIpfHxkLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKSksKGQ9ZD9yayhkLGI/IlNBUElTSURIQVNIIjoiQVBJU0lESEFTSCIsYSk6bnVsbCkmJmMucHVzaChkKSxiJiYoKGI9dWsoIl9fMVBTQVBJU0lEIiwiX19TZWN1cmUtMVBBUElTSUQiLCJTQVBJU0lEMVBIQVNIIixhKSkmJmMucHVzaChiKSwoYT11aygiX18zUFNBUElTSUQiLCJfX1NlY3VyZS0zUEFQSVNJRCIsIlNBUElTSUQzUEhBU0giLGEpKSYmYy5wdXNoKGEpKSk7cmV0dXJuIGMubGVuZ3RoPT0wP251bGw6Yy5qb2luKCIgIil9O3ZhciB3az1mdW5jdGlvbigpe30seGs9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU7cmV0dXJuIF8uVmkoZnVuY3Rpb24oZil7c3dpdGNoKGYuZyl7Y2FzZSAxOnJldHVybiBiPW5ldyBDb21wcmVzc2lvblN0cmVhbSgiZ3ppcCIpLGM9KG5ldyBSZXNwb25zZShiLnJlYWRhYmxlKSkuYXJyYXlCdWZmZXIoKSxkPWIud3JpdGFibGUuZ2V0V3JpdGVyKCksZi5oKGQud3JpdGUoKG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKGEpKSwyKTtjYXNlIDI6cmV0dXJuIGYuaChkLmNsb3NlKCksMyk7Y2FzZSAzOnJldHVybiBlPVVpbnQ4QXJyYXksZi5oKGMsNCk7Y2FzZSA0OnJldHVybiBmLnJldHVybihuZXcgZShmLmopKX19KX07d2sucHJvdG90eXBlLlRhPWZ1bmN0aW9uKGEpe3JldHVybiBhPDEwMjQ/ITE6dHlwZW9mIENvbXByZXNzaW9uU3RyZWFtIT09InVuZGVmaW5lZCJ9O3ZhciB5az1mdW5jdGlvbihhLGIpe3RoaXMuaD1hO3RoaXMubz1iO3RoaXMuZz0hMTt0aGlzLmo9ZnVuY3Rpb24oKXtyZXR1cm4gRGF0ZS5ub3coKX07dGhpcy5sPXRoaXMuaigpfSx6az1mdW5jdGlvbihhLGIpe2EuaD1iO2EudGltZXImJmEuZz8oYS5zdG9wKCksYS5zdGFydCgpKTphLnRpbWVyJiZhLnN0b3AoKX07eWsucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLmc9ITA7dGhpcy50aW1lcnx8KHRoaXMudGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe2EudGljaygpfSx0aGlzLmgpLHRoaXMubD10aGlzLmooKSl9O3lrLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5nPSExO3RoaXMudGltZXImJihjbGVhclRpbWVvdXQodGhpcy50aW1lciksdGhpcy50aW1lcj12b2lkIDApfTsKeWsucHJvdG90eXBlLnRpY2s9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO2lmKHRoaXMuZyl7dmFyIGI9TWF0aC5tYXgodGhpcy5qKCktdGhpcy5sLDApO2I8dGhpcy5oKi44P3RoaXMudGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe2EudGljaygpfSx0aGlzLmgtYik6KHRoaXMudGltZXImJihjbGVhclRpbWVvdXQodGhpcy50aW1lciksdGhpcy50aW1lcj12b2lkIDApLHRoaXMubygpLHRoaXMuZyYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSkpfWVsc2UgdGhpcy50aW1lcj12b2lkIDB9O3ZhciBBaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoQWssXy5KKTt2YXIgQms9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEJrLF8uSik7dmFyIENrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihDayxfLkopO0NrLnByb3RvdHlwZS5QZD1mdW5jdGlvbigpe3JldHVybiBfLmRqKHRoaXMsMSl9O3ZhciBTaj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoU2osXy5KKTt2YXIgRGs9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKERrLF8uSik7dmFyIFJqPWZ1bmN0aW9uKGEpe18uZmsoVmosMSxhKX0sRWs9Xy5NaihEayk7dmFyIEZrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihGayxfLkopO3ZhciBQaj1bInBsYXRmb3JtIiwicGxhdGZvcm1WZXJzaW9uIiwiYXJjaGl0ZWN0dXJlIiwibW9kZWwiLCJ1YUZ1bGxWZXJzaW9uIl0sVmo9bmV3IERrLFFqPW51bGw7dmFyIEdrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihHayxfLkopO3ZhciBIaz1mdW5jdGlvbihhKXtyZXR1cm4gXy5rayhhLDEsMSl9O3ZhciBJaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoSWssXy5KKTtJay5wcm90b3R5cGUuTWE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5OKHRoaXMsMil9O0lrLnByb3RvdHlwZS5jYj1mdW5jdGlvbihhKXtfLlRqKHRoaXMsMixhKX07dmFyIEprPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSw0KX07Xy5CKEprLF8uSik7Xy5Laz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEsMzcpfTtfLkIoXy5LayxfLkopO18uS2sucHJvdG90eXBlLmNiPWZ1bmN0aW9uKGEpe18ucmkodGhpcyk7dmFyIGI9dGhpcy5KLGM9Xy5JaSh0aGlzLGIsYltfLkhdfDAsSWssMywyLCEwKTtpZih0eXBlb2YgYSE9PSJudW1iZXIifHxhPDB8fGE+Yy5sZW5ndGgpdGhyb3cgRXJyb3IoKTthIT12b2lkIDA/Yy5zcGxpY2UoYSwxLHZvaWQgMCk6Yy5wdXNoKHZvaWQgMCk7dmFyIGQ9YT1jPT09Xy5UaD83OmNbXy5IXXwwLGU9Xy5XZygpO2U/KGEmPS05LGMubGVuZ3RoPT09MSYmKGEmPS00MDk3KSk6YXw9NDA5NjthIT09ZCYmXy5TZyhjLGEpO2V8fF8uc2koYil9O18uTGs9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5UaihhLDgsYil9O3ZhciBNaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEsMTkpfTtfLkIoTWssXy5KKTtNay5wcm90b3R5cGUudmM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ua2sodGhpcywyLGEpfTt2YXIgT2s9ZnVuY3Rpb24oYSxiKXt0aGlzLmFiPWI9Yj09PXZvaWQgMD8hMTpiO3RoaXMuaj10aGlzLmxvY2FsZT1udWxsO3RoaXMuaD0wO3RoaXMubD0hMTt0aGlzLmc9bmV3IE1rO051bWJlci5pc0ludGVnZXIoYSkmJnRoaXMuZy52YyhhKTtifHwodGhpcy5sb2NhbGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgibGFuZyIpKTtOayh0aGlzLG5ldyBHayl9O09rLnByb3RvdHlwZS52Yz1mdW5jdGlvbihhKXt0aGlzLmcudmMoYSk7cmV0dXJuIHRoaXN9Owp2YXIgTms9ZnVuY3Rpb24oYSxiKXtfLkwoYS5nLDEsYik7Xy5kaihiLDEpfHxIayhiKTthLmFifHwoYj1QayhhKSxfLk4oYiw1KXx8Xy5UaihiLDUsYS5sb2NhbGUpKTthLmomJihiPVBrKGEpLF8uYmooYixEayw5KXx8Xy5MKGIsOSxhLmopKX0sUWs9ZnVuY3Rpb24oYSxiKXthLmg9Yn0sUms9ZnVuY3Rpb24oYSl7dmFyIGI9Yj09PXZvaWQgMD9QajpiO3ZhciBjPWEuYWI/dm9pZCAwOl8ubWIoKTtjP1hqKGMsYikudGhlbihmdW5jdGlvbihkKXthLmo9RWsoZCE9bnVsbD9kOiJbXSIpO2Q9UGsoYSk7Xy5MKGQsOSxhLmopO3JldHVybiEwfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4hMX0pOlByb21pc2UucmVzb2x2ZSghMSl9LFBrPWZ1bmN0aW9uKGEpe3ZhciBiPV8uYmooYS5nLEdrLDEpO2J8fChiPW5ldyBHayxOayhhLGIpKTthPWI7Yj1fLmJqKGEsRmssMTEpO2J8fChiPW5ldyBGayxfLkwoYSwxMSxiKSk7cmV0dXJuIGJ9LFNrPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe2M9Yz09PQp2b2lkIDA/MDpjO2Q9ZD09PXZvaWQgMD8wOmQ7ZT1lPT09dm9pZCAwP251bGw6ZTtmPWY9PT12b2lkIDA/MDpmO2c9Zz09PXZvaWQgMD8wOmc7aWYoIWEuYWIpe3ZhciBoPVBrKGEpO3ZhciBrPW5ldyBDaztrPV8ua2soaywxLGEuaCk7az1fLlVqKGssMixhLmwpO2Q9Xy5payhrLDMsZD4wP2Q6dm9pZCAwKTtkPV8uaWsoZCw0LGY+MD9mOnZvaWQgMCk7ZD1fLmlrKGQsNSxnPjA/Zzp2b2lkIDApO2Y9ZC5KO2c9ZltfLkhdfDA7ZD1fLldnKGQsZyk/ZDpfLkloKGQsZixnKT9fLkhoKGQsZik6bmV3IGQuY29uc3RydWN0b3IoXy5HaChmLGcsITApKTtfLkwoaCwxMCxkKX1hPWxqKGEuZyk7aD1EYXRlLm5vdygpLnRvU3RyaW5nKCk7YT1fLiRpKGEsNCxoPT1udWxsP2g6Xy5KaihoKSk7Yj1fLmZrKGEsMyxiLnNsaWNlKCkpO2UmJihhPW5ldyBBayxlPV8uaWsoYSwxMyxlKSxhPW5ldyBCayxlPV8uTChhLDIsZSksYT1uZXcgSmssZT1fLkwoYSwxLGUpLGU9Xy5rayhlLDIsOSksXy5MKGIsMTgsCmUpKTtjJiZfLmprKGIsMTQsYyk7cmV0dXJuIGJ9O1lqLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuZz10aGlzLmg9dGhpcy5qfTtZai5wcm90b3R5cGUuTWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ofTt2YXIgbGs9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhLDgpfTtfLkIobGssXy5KKTt2YXIgVGs9Xy5Naihsayk7dmFyIG1rPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihtayxfLkopO3ZhciBVaztVaz1uZXcgbms7dmFyIFlrPWZ1bmN0aW9uKGEpe18udS5jYWxsKHRoaXMpO3ZhciBiPXRoaXM7dGhpcy5nPVtdO3RoaXMubGE9IiI7dGhpcy5LPXRoaXMuTD0hMTt0aGlzLnJhPXRoaXMuST0tMTt0aGlzLlI9ITE7dGhpcy5EPXRoaXMuZXhwZXJpbWVudElkcz1udWxsO3RoaXMuQT10aGlzLmw9MDt0aGlzLkM9bnVsbDt0aGlzLkY9dGhpcy5HPTA7dGhpcy53YT0xO3RoaXMud2M9MDt0aGlzLk9iPWEuT2I7dGhpcy50Yj1hLnRifHxmdW5jdGlvbigpe307dGhpcy5qPW5ldyBPayhhLk9iLGEuYWIpO3RoaXMuemE9YS56YXx8bnVsbDt0aGlzLkNiPWEuQ2J8fG51bGw7dGhpcy5CPWEuYWp8fG51bGw7dGhpcy5tYj1hLm1ifHxudWxsO3RoaXMuY2M9YS5jY3x8ITE7dGhpcy53aXRoQ3JlZGVudGlhbHM9IWEuTWM7dGhpcy5hYj1hLmFifHwhMTt0aGlzLlQ9IXRoaXMuYWImJiEhXy5tYigpJiYhIV8ubWIoKS5uYXZpZ2F0b3ImJl8ubWIoKS5uYXZpZ2F0b3Iuc2VuZEJlYWNvbiE9PXZvaWQgMDt0aGlzLlA9dHlwZW9mIFVSTFNlYXJjaFBhcmFtcyE9PQoidW5kZWZpbmVkIiYmISEobmV3IFVSTChWaygpKSkuc2VhcmNoUGFyYW1zJiYhIShuZXcgVVJMKFZrKCkpKS5zZWFyY2hQYXJhbXMuc2V0O3ZhciBjPUhrKG5ldyBHayk7TmsodGhpcy5qLGMpO3RoaXMubz1uZXcgWWooMUU0KTthPVdrKHRoaXMsYS5PZSk7dGhpcy5oPW5ldyB5ayh0aGlzLm8uTWEoKSxhKTt0aGlzLk89bmV3IHlrKDZFNSxhKTt0aGlzLmNjfHx0aGlzLk8uc3RhcnQoKTtpZighdGhpcy5hYil7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsZnVuY3Rpb24oKXtpZihkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIil7WGsoYik7dmFyIGY7KGY9Yi5DKT09bnVsbHx8Zi5mbHVzaCgpfX0pO3ZhciBkLGU7KGQ9Xy5tYigpKT09bnVsbHx8KGU9ZC5hZGRFdmVudExpc3RlbmVyKT09bnVsbHx8ZS5jYWxsKGQsInBhZ2VoaWRlIixmdW5jdGlvbigpe1hrKGIpO3ZhciBmOyhmPWIuQyk9PW51bGx8fGYuZmx1c2goKX0pfX0sWmssYmwsCiRrO18uQihZayxfLnUpO3ZhciBXaz1mdW5jdGlvbihhLGIpe2lmKCFhLlApcmV0dXJuIGZ1bmN0aW9uKCl7fTt2YXIgYz1mdW5jdGlvbigpe2EuZmx1c2goKX07cmV0dXJuIGI/ZnVuY3Rpb24oKXtiKCkudGhlbihjKX06Y307WWsucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtYayh0aGlzKTt0aGlzLmguc3RvcCgpO3RoaXMuTy5zdG9wKCk7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyl9O1prPWZ1bmN0aW9uKGEpe2EuQnx8KGEuQj1WaygpKTt0cnl7cmV0dXJuKG5ldyBVUkwoYS5CKSkudG9TdHJpbmcoKX1jYXRjaChiKXtyZXR1cm4obmV3IFVSTChhLkIsXy5tYigpLmxvY2F0aW9uLm9yaWdpbikpLnRvU3RyaW5nKCl9fTtfLmFsPWZ1bmN0aW9uKGEsYil7aWYoYiBpbnN0YW5jZW9mIF8uS2spYS5sb2coYik7ZWxzZSB0cnl7dmFyIGM9Xy5MayhuZXcgXy5LayxfLldqKGIpKTthLmxvZyhjKX1jYXRjaChkKXskayhhLDQsMSl9fTsKYmw9ZnVuY3Rpb24oYSxiKXthLm89bmV3IFlqKGI8MT8xOmIpO3prKGEuaCxhLm8uTWEoKSl9OyRrPWZ1bmN0aW9uKGEsYixjKXthLkMmJmEuQy5TbChiLGMpfTsKWWsucHJvdG90eXBlLmxvZz1mdW5jdGlvbihhKXskayh0aGlzLDIsMSk7aWYodGhpcy5QKXthPWxqKGEpO3ZhciBiPXRoaXMud2ErKztiPWE9Xy5qayhhLDIxLGIpO3ZhciBjPV8uWmkoYiwxKTt2YXIgZD1kPT09dm9pZCAwPyExOmQ7dmFyIGU9dHlwZW9mIGM7ZD1jPT1udWxsP2M6ZT09PSJiaWdpbnQiP1N0cmluZygoMCxfLmJpKSg2NCxjKSk6QWooYyk/ZT09PSJzdHJpbmciP0ZqKGMpOmQ/SGooYyk6R2ooYyk6dm9pZCAwO2Q9PW51bGwmJihkPURhdGUubm93KCksZD1OdW1iZXIuaXNGaW5pdGUoZCk/ZC50b1N0cmluZygpOiIwIixfLiRpKGIsMSxkPT1udWxsP2Q6Xy5KaihkKSkpO2Q9Xy5aaShiLDE1LHZvaWQgMCx2b2lkIDAsS2opO2QhPW51bGwmJih0eXBlb2YgZD09PSJiaWdpbnQiPygwLF8udmgpKGQpP2Q9TnVtYmVyKGQpOihkPSgwLF8uYmkpKDY0LGQpLGQ9KDAsXy52aCkoZCk/TnVtYmVyKGQpOlN0cmluZyhkKSk6ZD1BaihkKT90eXBlb2YgZD09PSJudW1iZXIiP0dqKGQpOgpGaihkKTp2b2lkIDApO2QhPW51bGx8fF8uamsoYiwxNSwobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkqNjApO3RoaXMuZXhwZXJpbWVudElkcyYmKGQ9bGoodGhpcy5leHBlcmltZW50SWRzKSxfLkwoYiwxNixkKSk7JGsodGhpcywxLDEpO2I9dGhpcy5nLmxlbmd0aC0xRTMrMTtiPjAmJih0aGlzLmcuc3BsaWNlKDAsYiksdGhpcy5sKz1iLCRrKHRoaXMsMyxiKSk7dGhpcy5nLnB1c2goYSk7dGhpcy5jY3x8dGhpcy5oLmd8fHRoaXMuaC5zdGFydCgpfX07CllrLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXM7aWYodGhpcy5nLmxlbmd0aD09PTApYSYmYSgpO2Vsc2V7dmFyIGQ9RGF0ZS5ub3coKTtpZih0aGlzLnJhPmQmJnRoaXMuSTxkKWImJmIoInRocm90dGxlZCIpO2Vsc2V7dGhpcy56YSYmKHR5cGVvZiB0aGlzLnphLlBkPT09ImZ1bmN0aW9uIj9Rayh0aGlzLmosdGhpcy56YS5QZCgpKTp0aGlzLmouaD0wKTt2YXIgZT10aGlzLmcubGVuZ3RoLGY9U2sodGhpcy5qLHRoaXMuZyx0aGlzLmwsdGhpcy5BLHRoaXMuQ2IsdGhpcy5HLHRoaXMuRiksZz10aGlzLnRiKCk7aWYoZyYmdGhpcy5sYT09PWcpYiYmYigic3RhbGUtYXV0aC10b2tlbiIpO2Vsc2V7dGhpcy5nPVtdO3RoaXMuaC5nJiZ0aGlzLmguc3RvcCgpO3RoaXMubD0wO2Q9Xy5XaihmKTt2YXIgaDt0aGlzLkQmJnRoaXMuRC5UYShkLmxlbmd0aCkmJihoPXhrKGQpKTt2YXIgaz1jbCh0aGlzLGQsZyksbD1mdW5jdGlvbihwKXtjLm8ucmVzZXQoKTt6ayhjLmgsCmMuby5NYSgpKTtpZihwKXt2YXIgcj1udWxsO3RyeXt2YXIgdD1KU09OLnN0cmluZ2lmeShKU09OLnBhcnNlKHAucmVwbGFjZSgiKV19J1xuIiwiIikpKTtyPVRrKHQpfWNhdGNoKEUpe31pZihyKXtwPU51bWJlcihfLmhrKHIsMSxfLmJoKCItMSIpKSk7cD4wJiYoYy5JPURhdGUubm93KCksYy5yYT1jLkkrcCk7cD1Vay5nO3Q9Xy5waChfLnFoKTt2YXIgQTtfLk9nJiZ0JiYoKEE9ci5KW3RdKT09bnVsbD92b2lkIDA6QVtwXSkhPW51bGwmJl8uTWcoXy5SaCwzKTthOntBPVVrLmc7dmFyIEQ9RD09PXZvaWQgMD8hMTpEO2lmKF8ucGgoXy5TaCkmJl8ucGgoXy5xaCkmJnZvaWQgMD09PV8uU2gpe3A9ci5KO3Q9cFtfLnFoXTtpZighdClicmVhayBhO2lmKHQ9dC5ibSl0cnl7dChwLEEsYmspO2JyZWFrIGF9Y2F0Y2goRSl7Xy5yYihFKX19RCYmKEQ9ci5KLChwPV8ucGgoXy5xaCkpJiZwIGluIEQmJihEPURbcF0pJiZkZWxldGUgRFtBXSl9RD1Vay5MYj9Vay5oKHIsVWsuTGIsVWsuZyxVay5qKToKVWsuaChyLFVrLmcsbnVsbCxVay5qKTtpZihEPUQ9PT1udWxsP3ZvaWQgMDpEKUQ9Xy5nayhELDEsLTEpLEQhPT0tMSYmKGMuUnx8YmwoYyxEKSl9fWEmJmEoKTtjLkE9MH0sbj1mdW5jdGlvbihwLHIpe3ZhciB0PV8uY2ooZixfLktrLDMpO3ZhciBBPU51bWJlcihfLmhrKGYsMTQpKSxEPWMubztELmc9TWF0aC5taW4oM0U1LEQuZyoyKTtELmg9TWF0aC5taW4oM0U1LEQuZytNYXRoLnJvdW5kKC4xKihNYXRoLnJhbmRvbSgpLS41KSoyKkQuZykpO3prKGMuaCxjLm8uTWEoKSk7cD09PTQwMSYmZyYmKGMubGE9Zyk7QSYmKGMubCs9QSk7cj09PXZvaWQgMCYmKHI9NTAwPD1wJiZwPDYwMHx8cD09PTQwMXx8cD09PTApO3ImJihjLmc9dC5jb25jYXQoYy5nKSxjLmNjfHxjLmguZ3x8Yy5oLnN0YXJ0KCkpOyRrKGMsNywxKTtiJiZiKCJuZXQtc2VuZC1mYWlsZWQiLHApOysrYy5BfSxxPWZ1bmN0aW9uKCl7Yy56YSYmYy56YS5zZW5kKGssbCxuKX07aD9oLnRoZW4oZnVuY3Rpb24ocCl7JGsoYywKNSxlKTtrLm5lWyJDb250ZW50LUVuY29kaW5nIl09Imd6aXAiO2submVbIkNvbnRlbnQtVHlwZSJdPSJhcHBsaWNhdGlvbi9iaW5hcnkiO2suYm9keT1wO2suWmc9MjtxKCl9LGZ1bmN0aW9uKCl7JGsoYyw2LGUpO3EoKX0pOnEoKX19fX07CnZhciBjbD1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwP251bGw6Yzt2YXIgZD1kPT09dm9pZCAwP2Eud2l0aENyZWRlbnRpYWxzOmQ7dmFyIGU9e30sZj1uZXcgVVJMKFprKGEpKTtjJiYoZS5BdXRob3JpemF0aW9uPWMpO2EubWImJihlWyJYLUdvb2ctQXV0aFVzZXIiXT1hLm1iLGYuc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLGEubWIpKTtyZXR1cm57dXJsOmYudG9TdHJpbmcoKSxib2R5OmIsWmc6MSxuZTplLExpOiJQT1NUIix3aXRoQ3JlZGVudGlhbHM6ZCx3YzphLndjfX0sWGs9ZnVuY3Rpb24oYSl7YS5qLmw9ITA7YS5MJiYoYS5qLmg9MyxkbChhKSk7YS5LJiYoYS5qLmg9MixlbChhKSk7YS5mbHVzaCgpO2Euai5sPSExfSxkbD1mdW5jdGlvbihhKXtmbChhLDMyLDEwLGZ1bmN0aW9uKGIsYyl7Yj1uZXcgVVJMKGIpO2Iuc2VhcmNoUGFyYW1zLnNldCgiZm9ybWF0IiwianNvbiIpO3ZhciBkPSExO3RyeXtkPV8ubWIoKS5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihiLnRvU3RyaW5nKCksCl8uV2ooYykpfWNhdGNoKGUpe31kfHwoYS5UPSExKTtyZXR1cm4gZH0pfSxlbD1mdW5jdGlvbihhKXtmbChhLDYsNSxmdW5jdGlvbihiLGMpe2I9bmV3IFVSTChiKTtiLnNlYXJjaFBhcmFtcy5zZXQoImZvcm1hdCIsImJhc2U2NGpzb24iKTt2YXIgZD1iLnNlYXJjaFBhcmFtcyxlPWQuc2V0O2M9Xy5XaihjKTtmb3IodmFyIGY9W10sZz0wLGg9MDtoPGMubGVuZ3RoO2grKyl7dmFyIGs9Yy5jaGFyQ29kZUF0KGgpO2s+MjU1JiYoZltnKytdPWsmMjU1LGs+Pj04KTtmW2crK109a31jPW9qKGYsMyk7ZS5jYWxsKGQsInAiLGMpO2I9Yi50b1N0cmluZygpO2lmKGIubGVuZ3RoPjE1MzYwKXJldHVybiExOyhuZXcgSW1hZ2UpLnNyYz1iO3JldHVybiEwfSl9LGZsPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEuZy5sZW5ndGghPT0wKXt2YXIgZT1uZXcgVVJMKFprKGEpKTtlLnNlYXJjaFBhcmFtcy5kZWxldGUoImZvcm1hdCIpO3ZhciBmPWEudGIoKTtmJiZlLnNlYXJjaFBhcmFtcy5zZXQoImF1dGgiLApmKTtlLnNlYXJjaFBhcmFtcy5zZXQoImF1dGh1c2VyIixhLm1ifHwiMCIpO2ZvcihmPTA7ZjxjJiZhLmcubGVuZ3RoOysrZil7dmFyIGc9YS5nLnNsaWNlKDAsYiksaD1TayhhLmosZyxhLmwsYS5BLGEuQ2IsYS5HLGEuRik7aWYoIWQoZS50b1N0cmluZygpLGgpKXsrK2EuQTticmVha31hLmw9MDthLkE9MDthLkc9MDthLkY9MDthLmc9YS5nLnNsaWNlKGcubGVuZ3RoKX1hLmguZyYmYS5oLnN0b3AoKX19LFZrPWZ1bmN0aW9uKCl7cmV0dXJuImh0dHBzOi8vcGxheS5nb29nbGUuY29tL2xvZz9mb3JtYXQ9anNvbiZoYXNmYXN0PXRydWUifTt2YXIgZ2w9ZnVuY3Rpb24oKXt0aGlzLlZnPXR5cGVvZiBBYm9ydENvbnRyb2xsZXIhPT0idW5kZWZpbmVkIn07CmdsLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLGUsZixnLGgsayxsLG4scSxwLHI7cmV0dXJuIF8uVmkoZnVuY3Rpb24odCl7c3dpdGNoKHQuZyl7Y2FzZSAxOnJldHVybiBmPShlPWQuVmc/bmV3IEFib3J0Q29udHJvbGxlcjp2b2lkIDApJiZhLndjPjA/c2V0VGltZW91dChmdW5jdGlvbigpe2UuYWJvcnQoKX0sYS53Yyk6dm9pZCAwLHQuRigyLDMpLGc9T2JqZWN0LmFzc2lnbih7fSx7bWV0aG9kOmEuTGksaGVhZGVyczpPYmplY3QuYXNzaWduKHt9LGEubmUpfSxhLmJvZHkmJntib2R5OmEuYm9keX0sYS53aXRoQ3JlZGVudGlhbHMmJntjcmVkZW50aWFsczoiaW5jbHVkZSJ9LHtzaWduYWw6YS53YyYmZT9lLnNpZ25hbDpudWxsfSksdC5oKGZldGNoKGEudXJsLGcpLDUpO2Nhc2UgNTpoPXQuajtpZihoLnN0YXR1cyE9PTIwMCl7KGs9Yyk9PW51bGx8fGsoaC5zdGF0dXMpO3QueGEoMyk7YnJlYWt9aWYoKGw9Yik9PW51bGwpe3QueGEoNyk7YnJlYWt9cmV0dXJuIHQuaChoLnRleHQoKSwKOCk7Y2FzZSA4OmwodC5qKTtjYXNlIDc6Y2FzZSAzOnQuTCgpO2NsZWFyVGltZW91dChmKTt0LnFhKDApO2JyZWFrO2Nhc2UgMjpuPXQuRCgpO3N3aXRjaCgocT1uKT09bnVsbD92b2lkIDA6cS5uYW1lKXtjYXNlICJBYm9ydEVycm9yIjoocD1jKT09bnVsbHx8cCg0MDgpO2JyZWFrO2RlZmF1bHQ6KHI9Yyk9PW51bGx8fHIoNDAwKX10LnhhKDMpfX0pfTtnbC5wcm90b3R5cGUuUGQ9ZnVuY3Rpb24oKXtyZXR1cm4gNH07Xy5obD1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD8iMCI6YjtfLnUuY2FsbCh0aGlzKTt0aGlzLk9iPWE7dGhpcy5tYj1iO3RoaXMuQT0iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7dGhpcy5nPXRoaXMuQ2I9dGhpcy56YT10aGlzLmg9bnVsbDt0aGlzLmw9dGhpcy5vPSExO3RoaXMuaj1udWxsfTtfLkIoXy5obCxfLnUpO18uaWw9ZnVuY3Rpb24oYSxiKXthLnRiPWI7cmV0dXJuIGF9O18uamw9ZnVuY3Rpb24oYSl7YS5vPSEwO3JldHVybiBhfTtfLmhsLnByb3RvdHlwZS5NYz1mdW5jdGlvbigpe3RoaXMuQj0hMDtyZXR1cm4gdGhpc307Cl8ua2w9ZnVuY3Rpb24oYSl7YS56YXx8KGEuemE9bmV3IGdsKTt2YXIgYj1uZXcgWWsoe09iOmEuT2IsdGI6YS50Yj9hLnRiOnZrLG1iOmEubWIsYWo6YS5BLGFiOiExLGNjOiExLE1jOmEuQixPZTphLk9lLHphOmEuemF9KTtfLmFrKGEsXy5aaihfLnBhLGIpKTtpZihhLmgpe3ZhciBjPWEuaCxkPVBrKGIuaik7Xy5UaihkLDcsYyl9Yi5EPW5ldyB3azthLkNiJiYoYi5DYj1hLkNiKTthLmcmJigoZD1hLmcpPyhiLmV4cGVyaW1lbnRJZHN8fChiLmV4cGVyaW1lbnRJZHM9bmV3IG9rKSxjPWIuZXhwZXJpbWVudElkcyxkPV8uV2ooZCksXy5UaihjLDQsZCkpOmIuZXhwZXJpbWVudElkcyYmXy4kaShiLmV4cGVyaW1lbnRJZHMsNCkpO2EubyYmKGIuTD1hLm8mJmIuVCk7YS5sJiYoYi5LPWEubCk7YS5qJiYoYz1hLmosYi5SPSEwLGJsKGIsYykpO1JrKGIuaik7YS56YS52YyYmYS56YS52YyhhLk9iKTthLnphLlFpJiZhLnphLlFpKGIpO3JldHVybiBifTtfLmxsPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihfLmxsLF8uSik7Xy5tPV8ubGwucHJvdG90eXBlO18ubS5KYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywxNil9O18ubS5OYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5Uaih0aGlzLDE2LGEpfTtfLm0ub2E9ZnVuY3Rpb24oKXtyZXR1cm4gXy5OKHRoaXMsMSl9O18ubS5uYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5Uaih0aGlzLDEsYSl9O18ubS5PZD1mdW5jdGlvbigpe3JldHVybiBfLmRqKHRoaXMsNTMpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5tbD1mdW5jdGlvbihhKXt2YXIgYj1fLkthKCk7YT1iP2IuY3JlYXRlSFRNTChhKTphO3JldHVybiBuZXcgXy5EYyhhKX07Xy5ubD1mdW5jdGlvbihhLGIpe2I9Xy5FZyhiKTtiIT09dm9pZCAwJiYoYS5ocmVmPWIpfTtfLm9sPXt9O18ucGw9ZnVuY3Rpb24oYSl7dGhpcy5nPWF9O18ucGwucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ307Xy5xbD17fTtfLnpmPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIksiKTt9O18uemYucHJvdG90eXBlLkpkPW51bGw7Xy56Zi5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb250ZW50fTtfLnpmLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRlbnR9O18uemYucHJvdG90eXBlLlRiPWZ1bmN0aW9uKCl7aWYodGhpcy5aYiE9PV8ucWwpdGhyb3cgRXJyb3IoIkwiKTtyZXR1cm4gXy5tbCh0aGlzLnRvU3RyaW5nKCkpfTt2YXIgcmw9ZnVuY3Rpb24oKXtfLnpmLmNhbGwodGhpcyl9OwpfLkcocmwsXy56Zik7cmwucHJvdG90eXBlLlpiPV8ucWw7dmFyIHNsPWZ1bmN0aW9uKCl7Xy56Zi5jYWxsKHRoaXMpfTtfLkcoc2wsXy56Zik7c2wucHJvdG90eXBlLlpiPV8ub2w7c2wucHJvdG90eXBlLkpkPTE7c2wucHJvdG90eXBlLmo9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IF8ucGwodGhpcy50b1N0cmluZygpKX07Xy50bD1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGMpe3RoaXMuY29udGVudD1jfWIucHJvdG90eXBlPWEucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbihjLGQpe2M9bmV3IGIoU3RyaW5nKGMpKTtkIT09dm9pZCAwJiYoYy5KZD1kKTtyZXR1cm4gY319KHJsKTtfLnVsPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyl7dGhpcy5jb250ZW50PWN9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGMpe3JldHVybiBuZXcgYihTdHJpbmcoYykpfX0oc2wpO18udmw9UmVnRXhwLnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSgic3RpY2t5Iik7Xy53bD1uZXcgUmVnRXhwKChfLnZsPyIiOiJeIikrIig/OiF8Lz8oW2EtekEtWl1bYS16QS1aMC05Oi1dKikpIixfLnZsPyJneSI6ImciKTtfLnhsPWZ1bmN0aW9uKCl7Xy56Zi5jYWxsKHRoaXMpfTtfLkIoXy54bCxybCk7Cl8ueGwucHJvdG90eXBlLm1hPWZ1bmN0aW9uKCl7aWYodGhpcy5jb250ZW50IT09dm9pZCAwKXJldHVybiB0aGlzLmNvbnRlbnQ7Zm9yKHZhciBhPSIiLGI9Xy5DKHRoaXMuVSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYSs9Yy52YWx1ZTtyZXR1cm4gYX07Xy54bC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYSgpfTtfLnlsPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3RoaXMuY29udGVudD0iIn1hLnByb3RvdHlwZT1fLnhsLnByb3RvdHlwZTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGF9fSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmxhKCJlbF9tYWluX2NzcyIpOwoKXy5tYSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmxhKCJlbF9tYWluIik7Ci8qCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIHpsPWZ1bmN0aW9uKGEsYil7dGhpcy54PWEhPT12b2lkIDA/YTowO3RoaXMueT1iIT09dm9pZCAwP2I6MH0sQWw9ZnVuY3Rpb24oYSxiKXt2YXIgYz17fSxkO2ZvcihkIGluIGEpY1tkXT1iLmNhbGwodm9pZCAwLGFbZF0sZCxhKTtyZXR1cm4gY30sQmw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmNyZWF0ZVJhbmdlKCk7Yy5zZWxlY3ROb2RlKGIuYm9keSk7YT1fLm1sKGEpO3JldHVybiBjLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChfLmtqKGEpKX0sQ2w9ZnVuY3Rpb24oYSl7YT1hLm5vZGVOYW1lO3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmciP2E6IkZPUk0ifSxEbD1mdW5jdGlvbihhKXthPWEubm9kZVR5cGU7cmV0dXJuIGE9PT0xfHx0eXBlb2YgYSE9PSJudW1iZXIifSxFbD1mdW5jdGlvbihhLGIsYyl7YS5zZXRBdHRyaWJ1dGUoYixjKX0sRmw9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uTWEoYSl9LEdsPWZ1bmN0aW9uKGEsYixjLGQpe18ucmkoYSk7dmFyIGU9YS5KLGY9ZVtfLkhdfAowO2lmKGM9PW51bGwpcmV0dXJuIF8udGkoZSxmLGIpLGE7dmFyIGc9Yz09PV8uVGg/NzpjW18uSF18MCxoPWcsaz1fLkVpKGcpLGw9a3x8T2JqZWN0LmlzRnJvemVuKGMpO2t8fChnPTApO2x8fChjPV8ubWkoYyksaD0wLGc9Xy5EaShnLGYpLGw9ITEpO2d8PTU7az00Jmc/NTEyJmc/NTEyOjEwMjQmZz8xMDI0OjA6dm9pZCAwO2s9ayE9bnVsbD9rOjEwMjQ7Z3w9aztmb3IodmFyIG49MDtuPGMubGVuZ3RoO24rKyl7dmFyIHE9Y1tuXSxwPWQocSxrKTtPYmplY3QuaXMocSxwKXx8KGwmJihjPV8ubWkoYyksaD0wLGc9Xy5EaShnLGYpLGw9ITEpLGNbbl09cCl9ZyE9PWgmJihsJiYoYz1fLm1pKGMpLGc9Xy5EaShnLGYpKSxfLlNnKGMsZykpO18udGkoZSxmLGIsYyk7cmV0dXJuIGF9LEhsPWZ1bmN0aW9uKGEpe2lmKF8uT2cpe3ZhciBiO3JldHVybihiPWFbXy5ka10pIT1udWxsP2I6YVtfLmRrXT1uZXcgTWFwfWlmKF8uZGsgaW4gYSlyZXR1cm4gYVtfLmRrXTtiPW5ldyBNYXA7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsCl8uZGsse3ZhbHVlOmJ9KTtyZXR1cm4gYn0sSWw9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5nZXQoZCk7aWYoZSE9bnVsbClyZXR1cm4gZTtmb3IodmFyIGY9ZT0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1kW2ZdO18udWkoYixnKSE9bnVsbCYmKGUhPT0wJiYoYz1fLnRpKGIsYyxlKSksZT1nKX1hLnNldChkLGUpO3JldHVybiBlfSxKbD1mdW5jdGlvbihhKXt2YXIgYj17fSxjO2ZvcihjIGluIGEpYltjXT1hW2NdO3JldHVybiBifSxLbD1mdW5jdGlvbihhLGIpe3JldHVybiBhPGI/LTE6YT5iPzE6MH0sTGw9ZnVuY3Rpb24oYSxiKXt2YXIgYz0wO2E9KDAsXy5BYykoU3RyaW5nKGEpKS5zcGxpdCgiLiIpO2I9KDAsXy5BYykoU3RyaW5nKGIpKS5zcGxpdCgiLiIpO2Zvcih2YXIgZD1NYXRoLm1heChhLmxlbmd0aCxiLmxlbmd0aCksZT0wO2M9PTAmJmU8ZDtlKyspe3ZhciBmPWFbZV18fCIiLGc9YltlXXx8IiI7ZG97Zj0vKFxkKikoXEQqKSguKikvLmV4ZWMoZil8fFsiIiwiIiwiIiwKIiJdO2c9LyhcZCopKFxEKikoLiopLy5leGVjKGcpfHxbIiIsIiIsIiIsIiJdO2lmKGZbMF0ubGVuZ3RoPT0wJiZnWzBdLmxlbmd0aD09MClicmVhaztjPUtsKGZbMV0ubGVuZ3RoPT0wPzA6cGFyc2VJbnQoZlsxXSwxMCksZ1sxXS5sZW5ndGg9PTA/MDpwYXJzZUludChnWzFdLDEwKSl8fEtsKGZbMl0ubGVuZ3RoPT0wLGdbMl0ubGVuZ3RoPT0wKXx8S2woZlsyXSxnWzJdKTtmPWZbM107Zz1nWzNdfXdoaWxlKGM9PTApfXJldHVybiBjfSxNbD1mdW5jdGlvbihhKXtpZigvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYS50YWdOYW1lKSl0aHJvdyBFcnJvcigidCIpO30sTmw9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8ucGwpcmV0dXJuIGEuZzt0aHJvdyBFcnJvcigidCIpO30sT2w9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSgvJi9nLCImYW1wOyIpLnJlcGxhY2UoLzwvZywiJmx0OyIpLnJlcGxhY2UoLz4vZywiJmd0OyIpLnJlcGxhY2UoLyIvZywiJnF1b3Q7IikucmVwbGFjZSgvJy9nLAoiJmFwb3M7Iil9LFBsPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5EYz9hOl8ubWwoT2woU3RyaW5nKGEpKSl9LFFsPWZ1bmN0aW9uKGEpe3ZhciBiPXtub25jZTpfLk9hKCJzY3JpcHQiLGRvY3VtZW50KX07YT1fLlJhKGEpLnRvU3RyaW5nKCk7dmFyIGM9IjxzY3JpcHQiO2lmKGI9PW51bGw/MDpiLmlkKWMrPScgaWQ9IicrT2woYi5pZCkrJyInO2lmKGI9PW51bGw/MDpiLm5vbmNlKWMrPScgbm9uY2U9IicrT2woYi5ub25jZSkrJyInO2lmKGI9PW51bGw/MDpiLnR5cGUpYys9JyB0eXBlPSInK09sKGIudHlwZSkrJyInO2lmKGI9PW51bGw/MDpiLmRlZmVyKWMrPSIgZGVmZXIiO3JldHVybiBfLm1sKGMrKCI+IithKyJceDNjL3NjcmlwdD4iKSl9LFJsPWZ1bmN0aW9uKGEpe3ZhciBiPVBsKCIiKTtyZXR1cm4gXy5tbChhLm1hcChmdW5jdGlvbihjKXtyZXR1cm4gXy5raihQbChjKSl9KS5qb2luKF8ua2ooYikudG9TdHJpbmcoKSkpfSxTbD1mdW5jdGlvbihhKXtyZXR1cm4gUmwoYSl9LApWbD1mdW5jdGlvbihhKXtmb3IodmFyIGI9IiIsYz1PYmplY3Qua2V5cyhhKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF0sZj1hW2VdO2lmKCFUbC50ZXN0KGUpKXRocm93IEVycm9yKCJ0Iik7aWYoZiE9PXZvaWQgMCYmZiE9PW51bGwpe2lmKC9eb24uL2kudGVzdChlKSl0aHJvdyBFcnJvcigidCIpO1VsLmluZGV4T2YoZS50b0xvd2VyQ2FzZSgpKSE9PS0xJiYoZj1fLkVnKFN0cmluZyhmKSl8fCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO2Y9ZSsnPSInK1BsKFN0cmluZyhmKSkrJyInO2IrPSIgIitmfX1yZXR1cm4gYn0sWWw9ZnVuY3Rpb24oYSl7dmFyIGI9e307aWYoIVRsLnRlc3QoImJvZHkiKSl0aHJvdyBFcnJvcigidCIpO2lmKFdsLmluZGV4T2YoIkJPRFkiKSE9PS0xKXRocm93IEVycm9yKCJ0Iik7dmFyIGM9Ijxib2R5IjtiJiYoYys9VmwoYikpO0FycmF5LmlzQXJyYXkoYSl8fChhPWE9PT12b2lkIDA/W106W2FdKTtYbC5pbmRleE9mKCJCT0RZIikhPT0tMT8KYys9Ij4iOihhPVNsKGEubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkIGluc3RhbmNlb2YgXy5EYz9kOlBsKFN0cmluZyhkKSl9KSksYys9Ij4iK2EudG9TdHJpbmcoKSsiPC9ib2R5PiIpO3JldHVybiBfLm1sKGMpfSxabD1mdW5jdGlvbihhKXt0aGlzLmg9dGhpcy5CPXRoaXMubD0iIjt0aGlzLkM9bnVsbDt0aGlzLkE9dGhpcy5qPSIiO3RoaXMubz0hMTt2YXIgYjthIGluc3RhbmNlb2YgWmw/KHRoaXMubz1hLm8sJGwodGhpcyxhLmwpLHRoaXMuQj1hLkIsYW0odGhpcyxhLmgpLGJtKHRoaXMsYS5DKSxjbSh0aGlzLGEuaiksZG0odGhpcyxlbShhLmcpKSx0aGlzLkE9YS5BKTphJiYoYj1TdHJpbmcoYSkubWF0Y2goXy5yZikpPyh0aGlzLm89ITEsJGwodGhpcyxiWzFdfHwiIiwhMCksdGhpcy5CPWZtKGJbMl18fCIiKSxhbSh0aGlzLGJbM118fCIiLCEwKSxibSh0aGlzLGJbNF0pLGNtKHRoaXMsYls1XXx8IiIsITApLGRtKHRoaXMsYls2XXx8IiIsITApLHRoaXMuQT1mbShiWzddfHwiIikpOgoodGhpcy5vPSExLHRoaXMuZz1uZXcgZ20obnVsbCx0aGlzLm8pKX0saG09ZnVuY3Rpb24oYSl7cmV0dXJuIF8ueWEoYSk/YS5UYiYmKGE9YS5UYigpLGEgaW5zdGFuY2VvZiBfLkRjKT9hOlBsKCJ6U295eiIpOlBsKFN0cmluZyhhKSl9LGltPWZ1bmN0aW9uKGEsYil7YiYmYi5oP2IuaChhKTooYj1obShiKSxhLmlubmVySFRNTD1fLmtqKGIpKX0sa209ZnVuY3Rpb24oYSxiKXthOmlmKGI9YShifHxqbSx2b2lkIDApLGE9Xy5sYigpLGImJmIuZz9hPWIuZygpOihhPWEuY3JlYXRlRWxlbWVudCgiRElWIiksYj1obShiKSxhLmlubmVySFRNTD1fLmtqKGIpKSxhLmNoaWxkTm9kZXMubGVuZ3RoPT0xJiYoYj1hLmZpcnN0Q2hpbGQsYi5ub2RlVHlwZT09MSkpe2E9YjticmVhayBhfXJldHVybiBhfSxtbT1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpO2E9bG0oYSxiKTtiPWIuYm9keTtiLmFwcGVuZENoaWxkKGEpO2I9KG5ldyBYTUxTZXJpYWxpemVyKS5zZXJpYWxpemVUb1N0cmluZyhiKTsKYj1iLnNsaWNlKGIuaW5kZXhPZigiPiIpKzEsYi5sYXN0SW5kZXhPZigiPC8iKSk7cmV0dXJuIF8ubWwoYil9LG5tPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09InN0cmluZyIpdGhyb3cgRXJyb3IoKTtyZXR1cm4gYX0sb209ZnVuY3Rpb24oYSxiLGMpe2lmKGIpcmV0dXJuIG5tKGEpO3ZhciBkO3JldHVybihkPV8ucGkoYSkpIT1udWxsP2Q6Yz8iIjp2b2lkIDB9LHJtPWZ1bmN0aW9uKCl7cmV0dXJuIHBtfHwocG09bmV3IF8ueWgoXy5UZyhbXSksdm9pZCAwLHZvaWQgMCx2b2lkIDAscW0pKX0sc209ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5KLGY9ZVtfLkhdfDA7Yz1fLldnKGEsZik/MTpjO2Q9ISFkfHxjPT09MztjPT09MiYmXy5xaShhKSYmKGU9YS5KLGY9ZVtfLkhdfDApO2E9Xy5CaShlLGIpO3ZhciBnPWE9PT1fLlRoPzc6YVtfLkhdfDAsaD1fLkNpKGcsZik7dmFyIGs9NCZoPyExOiEwO2lmKGspezQmaCYmKGE9Xy5taShhKSxnPTAsaD1fLkRpKGgsZiksZj1fLnRpKGUsCmYsYixhKSk7Zm9yKHZhciBsPTAsbj0wO2w8YS5sZW5ndGg7bCsrKXt2YXIgcT1fLnBpKGFbbF0pO3EhPW51bGwmJihhW24rK109cSl9bjxsJiYoYS5sZW5ndGg9bik7aD0oaHw0KSYtNTEzO2gmPS0xMDI1O2gmPS00MDk3fWghPT1nJiYoXy5TZyhhLGgpLDImaCYmT2JqZWN0LmZyZWV6ZShhKSk7cmV0dXJuIGE9Xy5GaShhLGgsZSxmLGIsYyxrLGQpfSx1bT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT10bTshZCYmXy5xaShhKSYmKGI9YS5KLGM9YltfLkhdfDApO3ZhciBmPV8udWkoYiwxKTthPSExO2lmKGY9PW51bGwpe2lmKGQpcmV0dXJuIHJtKCk7Zj1bXX1lbHNlIGlmKGYuY29uc3RydWN0b3I9PT1fLnloKWlmKGYuS2ImMiYmIWQpZj1fLnpoKGYpO2Vsc2UgcmV0dXJuIGY7ZWxzZSBBcnJheS5pc0FycmF5KGYpP2E9ISEoKGZbXy5IXXwwKSYyKTpmPVtdO2lmKGQpe2lmKCFmLmxlbmd0aClyZXR1cm4gcm0oKTthfHwoYT0hMCxfLlRnKGYpKX1lbHNlIGlmKGEpe2E9ITE7Xy5VZyhmKTsKZD1fLm1pKGYpO2ZvcihmPTA7ZjxkLmxlbmd0aDtmKyspe3ZhciBnPWRbZl09Xy5taShkW2ZdKTtBcnJheS5pc0FycmF5KGdbMV0pJiYoZ1sxXT1fLlRnKGdbMV0pKX1mPV8uVWcoZCl9IWEmJmMmMzImJl8ubGkoZik7ZT1uZXcgXy55aChmLGUsb20sdm9pZCAwKTtjPV8udGkoYixjLDEsZSk7YXx8Xy5zaShiLGMpO3JldHVybiBlfSx2bT1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLnRvcD1hO3RoaXMucmlnaHQ9Yjt0aGlzLmJvdHRvbT1jO3RoaXMubGVmdD1kfSx3bT1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLmxlZnQ9YTt0aGlzLnRvcD1iO3RoaXMud2lkdGg9Yzt0aGlzLmhlaWdodD1kfSx4bT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPWEubGVuZ3RoLGU9MCxmPVtdLGcsaCxrPTA7azxkOyl7c3dpdGNoKGUpe2Nhc2UgMDp2YXIgbD1hLmluZGV4T2YoIjwiLGspO2lmKGw8MCl7aWYoYy5sZW5ndGg9PT0wKXJldHVybiBhO2MucHVzaChhLnN1YnN0cmluZyhrKSk7az1kfWVsc2UgYy5wdXNoKGEuc3Vic3RyaW5nKGssCmwpKSxoPWwsaz1sKzEsXy52bD8oXy53bC5sYXN0SW5kZXg9ayxsPV8ud2wuZXhlYyhhKSk6KF8ud2wubGFzdEluZGV4PTAsbD1fLndsLmV4ZWMoYS5zdWJzdHJpbmcoaykpKSxsPyhmPVsiPCIsbFswXV0sZz1sWzFdLGU9MSxrKz1sWzBdLmxlbmd0aCk6Yy5wdXNoKCI8Iik7YnJlYWs7Y2FzZSAxOmw9YS5jaGFyQXQoaysrKTtzd2l0Y2gobCl7Y2FzZSAiJyI6Y2FzZSAnIic6dmFyIG49YS5pbmRleE9mKGwsayk7bjwwP2s9ZDooZi5wdXNoKGwsYS5zdWJzdHJpbmcoayxuKzEpKSxrPW4rMSk7YnJlYWs7Y2FzZSAiPiI6Zi5wdXNoKGwpO2MucHVzaChiKGYuam9pbigiIiksZykpO2U9MDtmPVtdO2g9Zz1udWxsO2JyZWFrO2RlZmF1bHQ6Zi5wdXNoKGwpfWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoKTt9ZT09PTEmJms+PWQmJihrPWgrMSxjLnB1c2goIjwiKSxlPTAsZj1bXSxoPWc9bnVsbCl9cmV0dXJuIGMuam9pbigiIil9LERtPWZ1bmN0aW9uKCl7dmFyIGE9eW0oXy5qbChfLmlsKHptKCksCmZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9KS5NYygpKSksYj1BbSgpLm1hcChmdW5jdGlvbihjKXt2YXIgZDthOnt2YXIgZT1jLm87aWYoZT09bnVsbCljPW51bGw7ZWxzZSBpZih0eXBlb2YgZT09PSJudW1iZXIiKWM9ZTtlbHNle2lmKHR5cGVvZiBlPT09InN0cmluZyIpe3ZhciBmPU51bWJlcihlKTtpZighaXNOYU4oZikmJihmIT09MHx8ZS50cmltKCkubGVuZ3RoIT09MCkpe2M9ZjticmVhayBhfX10aHJvdyBCbShjLCJudW1iZXIiKTt9fXJldHVybihkPWMpIT1udWxsP2Q6MH0pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gYz4wfSk7Yi5sZW5ndGg+MCYmKGI9Q20oYiksYS5nPWIpO3JldHVybiBfLmtsKGEpfSxFbT1mdW5jdGlvbihhKXtyZXR1cm4idHJhbnNsYXRlOiIrYX0sS209ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEZtO2I9Xy5UaihiLDEsYS5uYW1lKTt2YXIgYz1HbShhLnN0YXJ0VGltZSk7Yj1fLkwoYiwyLGMpO2E9SG0oYS5kdXJhdGlvbik7YT1fLkwoYiwzLGEpO2I9bmV3IEltOwpyZXR1cm4gSm0oYSw1LGIpfSxHbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgTG07Yi5zZXRTZWNvbmRzKE1hdGguZmxvb3IoYS8xRTMpKTthPU1hdGgucm91bmQoYSUxRTMqMUU2KTtfLkdpKGIsMixhPT1udWxsP2E6Xy5CaihhKSwwKTtyZXR1cm4gYn0sSG09ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IE1tO2Iuc2V0U2Vjb25kcyhNYXRoLmZsb29yKGEvMUUzKSk7YT1NYXRoLnJvdW5kKGElMUUzKjFFNik7Xy5HaShiLDIsYT09bnVsbD9hOl8uQmooYSksMCk7cmV0dXJuIGJ9LE5tPWZ1bmN0aW9uKGEpe3JldHVybiBwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UubWFyayYmKGE9cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShhLCJtYXJrIiksYS5sZW5ndGg9PTEpP2FbMF06bnVsbH0sT209ZnVuY3Rpb24oYSxiKXtyZXR1cm4gcGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLm1lYXN1cmU/cGVyZm9ybWFuY2UubWVhc3VyZShhLGIpfHxudWxsOm51bGx9LFJtPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0KQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtkLnNwbGljZSgwLDIpO2Q9ImwiK2EudG9TdHJpbmcoMTYpKyJpIitiLnRvU3RyaW5nKDE2KSsoZC5sZW5ndGg/Ii0iK2Quam9pbigiXyIpOiIiKTtQbT9QbS5wdXNoKGQpOlFtKGQpfSxWbT1mdW5jdGlvbigpe3ZhciBhPVNtfHwoU209VG0oJ1tudWxsLG51bGwsbnVsbCxudWxsLG51bGwsIihmdW5jdGlvbigpe1wndXNlIHN0cmljdFwnO3ZhciBmXFx1MDAzZHR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllc1xcdTAwM2RcXHUwMDNkXFwiZnVuY3Rpb25cXCI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYyxiKXtpZihhXFx1MDAzZFxcdTAwM2RBcnJheS5wcm90b3R5cGV8fGFcXHUwMDNkXFx1MDAzZE9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtjXVxcdTAwM2RiLnZhbHVlO3JldHVybiBhfTtmdW5jdGlvbiBnKGEpe2FcXHUwMDNkW1xcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIGdsb2JhbFRoaXNcXHUwMDI2XFx1MDAyNmdsb2JhbFRoaXMsYSxcXCJvYmplY3RcXCJcXHUwMDNkXFx1MDAzZHR5cGVvZiB3aW5kb3dcXHUwMDI2XFx1MDAyNndpbmRvdyxcXCJvYmplY3RcXCJcXHUwMDNkXFx1MDAzZHR5cGVvZiBzZWxmXFx1MDAyNlxcdTAwMjZzZWxmLFxcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIGdsb2JhbFxcdTAwMjZcXHUwMDI2Z2xvYmFsXTtmb3IodmFyIGNcXHUwMDNkMDtjXFx1MDAzY2EubGVuZ3RoOysrYyl7dmFyIGJcXHUwMDNkYVtjXTtpZihiXFx1MDAyNlxcdTAwMjZiLk1hdGhcXHUwMDNkXFx1MDAzZE1hdGgpcmV0dXJuIGJ9dGhyb3cgRXJyb3IoXFwiQ2Fubm90IGZpbmQgZ2xvYmFsIG9iamVjdFxcIik7fXZhciBoXFx1MDAzZGcodGhpcyk7XFxuZnVuY3Rpb24gayhhLGMpe2lmKGMpYTp7dmFyIGJcXHUwMDNkaDthXFx1MDAzZGEuc3BsaXQoXFwiLlxcIik7Zm9yKHZhciBkXFx1MDAzZDA7ZFxcdTAwM2NhLmxlbmd0aC0xO2QrKyl7dmFyIGVcXHUwMDNkYVtkXTtpZighKGUgaW4gYikpYnJlYWsgYTtiXFx1MDAzZGJbZV19YVxcdTAwM2RhW2EubGVuZ3RoLTFdO2RcXHUwMDNkYlthXTtjXFx1MDAzZGMoZCk7YyFcXHUwMDNkZFxcdTAwMjZcXHUwMDI2YyFcXHUwMDNkbnVsbFxcdTAwMjZcXHUwMDI2ZihiLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpjfSl9fWsoXFwiZ2xvYmFsVGhpc1xcIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8aH0pOy8qXFxuXFxuIENvcHlyaWdodCBHb29nbGUgTExDXFxuIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXFxuKi9cXG52YXIgbFxcdTAwM2RnbG9iYWxUaGlzLnRydXN0ZWRUeXBlcyxtO2Z1bmN0aW9uIG4oKXt2YXIgYVxcdTAwM2RudWxsO2lmKCFsKXJldHVybiBhO3RyeXt2YXIgY1xcdTAwM2RmdW5jdGlvbihiKXtyZXR1cm4gYn07YVxcdTAwM2RsLmNyZWF0ZVBvbGljeShcXCJnb29nI2h0bWxcXCIse2NyZWF0ZUhUTUw6YyxjcmVhdGVTY3JpcHQ6YyxjcmVhdGVTY3JpcHRVUkw6Y30pfWNhdGNoKGIpe31yZXR1cm4gYX07ZnVuY3Rpb24gcChhKXt0aGlzLmdcXHUwMDNkYX1wLnByb3RvdHlwZS50b1N0cmluZ1xcdTAwM2RmdW5jdGlvbigpe3JldHVybiB0aGlzLmcrXFwiXFwifTtmdW5jdGlvbiBxKGEpe21cXHUwMDNkXFx1MDAzZFxcdTAwM2R2b2lkIDBcXHUwMDI2XFx1MDAyNihtXFx1MDAzZG4oKSk7YVxcdTAwM2RtP20uY3JlYXRlU2NyaXB0VVJMKGEpOmE7cmV0dXJuIG5ldyBwKGEpfTtpZighZnVuY3Rpb24oKXtpZihzZWxmLm9yaWdpbilyZXR1cm4gc2VsZi5vcmlnaW5cXHUwMDNkXFx1MDAzZFxcdTAwM2RcXCJudWxsXFwiO2lmKGxvY2F0aW9uLmhvc3QhXFx1MDAzZFxcdTAwM2RcXCJcXCIpcmV0dXJuITE7dHJ5e3JldHVybiB3aW5kb3cucGFyZW50LmVzY2FwZShcXCJcXCIpLCExfWNhdGNoKGEpe3JldHVybiEwfX0oKSl0aHJvdyBFcnJvcihcXCJzYW5kYm94aW5nIGVycm9yXFwiKTtcXG53aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcXCJtZXNzYWdlXFwiLGZ1bmN0aW9uKGEpe3ZhciBjXFx1MDAzZGEucG9ydHNbMF07YVxcdTAwM2RhLmRhdGE7dmFyIGJcXHUwMDNkYS5jYWxsYmFja05hbWUuc3BsaXQoXFwiLlxcIiksZFxcdTAwM2R3aW5kb3c7YlswXVxcdTAwM2RcXHUwMDNkXFx1MDAzZFxcIndpbmRvd1xcIlxcdTAwMjZcXHUwMDI2Yi5zaGlmdCgpO2Zvcih2YXIgZVxcdTAwM2QwO2VcXHUwMDNjYi5sZW5ndGgtMTtlKyspZFtiW2VdXVxcdTAwM2R7fSxkXFx1MDAzZGRbYltlXV07ZFtiW2IubGVuZ3RoLTFdXVxcdTAwM2RmdW5jdGlvbihyKXtjLnBvc3RNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHIpKX07YlxcdTAwM2Rkb2N1bWVudC5jcmVhdGVFbGVtZW50KFxcInNjcmlwdFxcIik7YVxcdTAwM2RxKGEudXJsKTtpZihhIGluc3RhbmNlb2YgcClhXFx1MDAzZGEuZztlbHNlIHRocm93IEVycm9yKFxcIlxcIik7Yi5zcmNcXHUwMDNkYTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGIpfSwhMCk7fSkuY2FsbCh0aGlzKTtcXG4iXScpKTsKaWYoIWEpcmV0dXJuIG51bGw7YT1fLnBpKF8uWmkoYSw2LHZvaWQgMCxVbSkpO3ZhciBiO2E9PT1udWxsfHxhPT09dm9pZCAwP2I9bnVsbDpiPV8uUWEoYSk7cmV0dXJuIGJ9LFdtPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O2E9Xy5DKGEpO2Zvcih2YXIgYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpYz1jLnZhbHVlLGJbYy5sYW5ndWFnZV09Yy5uYW1lO3JldHVybiBifSxYbT1mdW5jdGlvbigpe30sWW09ZnVuY3Rpb24oYSxiKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5sPW5ldyBfLkhiKHRoaXMpO3RoaXMuUWIoYXx8bnVsbCk7YiYmKHRoaXMuVWI9Yil9LGJuPWZ1bmN0aW9uKGEpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmc9YTt0aGlzLmg9Xy54KHRoaXMuZywiZm9jdXMiLHRoaXMsITApO3RoaXMuaj1fLngodGhpcy5nLCJibHVyIix0aGlzLCEwKX0sY249ZnVuY3Rpb24oKXt9LGRuPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmVsZW1lbnQ9YTt0aGlzLmo9Yjt0aGlzLmw9Y30sZW49ZnVuY3Rpb24oYSwKYil7dGhpcy5nPWEgaW5zdGFuY2VvZiB6bD9hOm5ldyB6bChhLGIpfSxmbj1mdW5jdGlvbihhLGIpe3RoaXMubz1ifHx2b2lkIDA7WW0uY2FsbCh0aGlzLGEpfSxPPWZ1bmN0aW9uKGEsYixjKXt0aGlzLkc9Y3x8KGE/Xy5sYihnbihhKSk6Xy5sYigpKTtmbi5jYWxsKHRoaXMsdGhpcy5HLlMoIkRJViIse3N0eWxlOiJwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Om5vbmU7In0pKTt0aGlzLnJhPW5ldyB6bCgxLDEpO3RoaXMuQT1uZXcgU2V0O3RoaXMuQz1udWxsO2EmJnRoaXMuYXR0YWNoKGEpO2IhPW51bGwmJnRoaXMuS2EoYil9LGhuPWZ1bmN0aW9uKGEpe2E9YS5jbGFzc05hbWU7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyImJmEubWF0Y2goL1xTKy9nKXx8W119LGtuPWZ1bmN0aW9uKGEsYil7dmFyIGM9aG4oYSksZD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSksZT1jLmxlbmd0aCtkLmxlbmd0aDtqbihjLGQpO2EuY2xhc3NOYW1lPWMuam9pbigiICIpOwpyZXR1cm4gYy5sZW5ndGg9PWV9LG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9aG4oYSksZD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSksZT1sbihjLGQpO2EuY2xhc3NOYW1lPWUuam9pbigiICIpO3JldHVybiBlLmxlbmd0aD09Yy5sZW5ndGgtZC5sZW5ndGh9LGpuPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspXy50YShhLGJbY10pfHxhLnB1c2goYltjXSl9LGxuPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiFfLnRhKGIsYyl9KX0sbm49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy50YShobihhKSxiKX0sb249ZnVuY3Rpb24oYSxiLGMpe2M/a24oYSxiKTptbihhLGIpfSx0bj1mdW5jdGlvbihhKXtyZXR1cm4gcG4obmV3IHFuLHNtKGEsMSxfLmFqKCkpLm1hcChmdW5jdGlvbihiLGMpe3ZhciBkPW5ldyBybjtiPXNuKGQsMSxiKTtpZihzbShhLDIsXy5haigpKS5sZW5ndGg+Yyl7ZD1zbShhLDIsCjMsITApO2lmKHR5cGVvZiBjIT09Im51bWJlciJ8fGM8MHx8Yz49ZC5sZW5ndGgpdGhyb3cgRXJyb3IoKTtzbihiLDMsZFtjXSl9cmV0dXJuIGJ9KSl9LHVuPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBybjtiPXNuKGIsMSxhWzBdKTthLmxlbmd0aD09PTMmJnNuKGIsMyxhWzJdKTtyZXR1cm4gYn0sdm49ZnVuY3Rpb24oYSl7cmV0dXJuIF8uY2ooYSxybiwxKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIF8uTihiLDMpP1tfLk4oYiwxKSwyMDAsXy5OKGIsMyldOltfLk4oYiwxKSwyMDBdfSl9LHduPWZ1bmN0aW9uKCl7fSx4bj1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5oPWF8fF8ubGIoKTt0aGlzLmxhPW51bGw7dGhpcy5qYj0hMTt0aGlzLkM9bnVsbDt0aGlzLk89dm9pZCAwO3RoaXMuUj10aGlzLkY9dGhpcy5LPW51bGw7dGhpcy53YT0hMX0seW49ZnVuY3Rpb24oYSl7dmFyIGI9Xy5sYigpLGM9Yi5nLGQ9Yi5jcmVhdGVFbGVtZW50KCJTVFlMRSIpLGU9Xy5PYSgic3R5bGUiLApjKTtlJiZkLnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpO2QudHlwZT0idGV4dC9jc3MiO2I9Yi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdO2Quc3R5bGVTaGVldD9kLnN0eWxlU2hlZXQuY3NzVGV4dD1hOmQuYXBwZW5kQ2hpbGQoYy5jcmVhdGVUZXh0Tm9kZShhKSk7Yi5hcHBlbmRDaGlsZChkKTtyZXR1cm4gZH0sQ249ZnVuY3Rpb24oKXtmb3IodmFyIGEgaW4gT2JqZWN0LnByb3RvdHlwZSl7Xy56Yz1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnIGluIGQpZFtnXSE9PU9iamVjdC5wcm90b3R5cGVbZ10mJmUuY2FsbChmLGRbZ10sZyxkKX07YnJlYWt9dmFyIGI9RGF0ZS5ub3coKSxjPXpuKEFuKTtjJiZ0eXBlb2YgYz09ImZ1bmN0aW9uIiYmKEJuPT0xP2MoKTpmdW5jdGlvbiBlKCl7dmFyIGY9ZG9jdW1lbnQucmVhZHlTdGF0ZTtfLm9jKGYpPT0idW5kZWZpbmVkInx8Zj09ImNvbXBsZXRlInx8Zj09ImludGVyYWN0aXZlInx8RGF0ZS5ub3coKS1iPj0yRTQ/YygpOndpbmRvdy5zZXRUaW1lb3V0KGUsCjUwMCl9KCkpfTtfLm09emwucHJvdG90eXBlO18ubS5lcXVhbHM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiB6bCYmKHRoaXM9PWE/ITA6dGhpcyYmYT90aGlzLng9PWEueCYmdGhpcy55PT1hLnk6ITEpfTtfLm0uY2VpbD1mdW5jdGlvbigpe3RoaXMueD1NYXRoLmNlaWwodGhpcy54KTt0aGlzLnk9TWF0aC5jZWlsKHRoaXMueSk7cmV0dXJuIHRoaXN9O18ubS5mbG9vcj1mdW5jdGlvbigpe3RoaXMueD1NYXRoLmZsb29yKHRoaXMueCk7dGhpcy55PU1hdGguZmxvb3IodGhpcy55KTtyZXR1cm4gdGhpc307Xy5tLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGgucm91bmQodGhpcy54KTt0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpO3JldHVybiB0aGlzfTsKXy5tLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiB6bD8odGhpcy54Kz1hLngsdGhpcy55Kz1hLnkpOih0aGlzLngrPU51bWJlcihhKSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy55Kz1iKSk7cmV0dXJuIHRoaXN9Owp2YXIgRG49ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyB6bChhLngsYS55KX0sRW49WyJkYXRhOiIsImh0dHA6IiwiaHR0cHM6IiwibWFpbHRvOiIsImZ0cDoiXSxGbj1mdW5jdGlvbihhKXt2YXIgYj0xO2E9YS5zcGxpdCgiOiIpO2Zvcih2YXIgYz1bXTtiPjAmJmEubGVuZ3RoOyljLnB1c2goYS5zaGlmdCgpKSxiLS07YS5sZW5ndGgmJmMucHVzaChhLmpvaW4oIjoiKSk7cmV0dXJuIGN9LEduPWZ1bmN0aW9uKGEsYixjKXtjPWEuZy5nZXQoYyk7cmV0dXJuKGM9PW51bGw/MDpjLmhhcyhiKSk/Yy5nZXQoYik6YS5sLmhhcyhiKT97dWE6MX06KGM9YS5vLmdldChiKSk/YzphLmgmJltdLmNvbmNhdChfLiRiKGEuaCkpLnNvbWUoZnVuY3Rpb24oZCl7cmV0dXJuIGIuaW5kZXhPZihkKT09PTB9KT97dWE6MX06e3VhOjB9fSxIbj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Q2woYik7Yz1jLmNyZWF0ZUVsZW1lbnQoZCk7Yj1iLmF0dHJpYnV0ZXM7Zm9yKHZhciBlPV8uQyhiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj0KZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7Zj1nLm5hbWU7Zz1nLnZhbHVlO3ZhciBoPUduKGEuZyxmLGQpLGs7YTp7aWYoaz1oLmNvbmRpdGlvbnMpe2s9Xy5DKGspO2Zvcih2YXIgbD1rLm5leHQoKTshbC5kb25lO2w9ay5uZXh0KCkpe3ZhciBuPV8uQyhsLnZhbHVlKTtsPW4ubmV4dCgpLnZhbHVlO249bi5uZXh0KCkudmFsdWU7dmFyIHE9dm9pZCAwO2lmKChsPShxPWIuZ2V0TmFtZWRJdGVtKGwpKT09bnVsbD92b2lkIDA6cS52YWx1ZSkmJiFuLmhhcyhsKSl7az0hMTticmVhayBhfX19az0hMH1pZihrKXN3aXRjaChoLnVhKXtjYXNlIDE6RWwoYyxmLGcpO2JyZWFrO2Nhc2UgMjp0aHJvdyBFcnJvcigpO2Nhc2UgMzpFbChjLGYsZy50b0xvd2VyQ2FzZSgpKTticmVhaztjYXNlIDQ6RWwoYyxmLGcpO2JyZWFrO2Nhc2UgNTpFbChjLGYsZyk7YnJlYWs7Y2FzZSA2OkVsKGMsZixnKTticmVhaztjYXNlIDc6YTppZihoPXZvaWQgMCxrPWcsXy5DYyl7dHJ5e2g9bmV3IFVSTChrKX1jYXRjaChwKXtoPQoiaHR0cHM6IjticmVhayBhfWg9aC5wcm90b2NvbH1lbHNlIGI6e2g9aztrPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTt0cnl7ay5ocmVmPWh9Y2F0Y2gocCl7aD12b2lkIDA7YnJlYWsgYn1oPWsucHJvdG9jb2w7aD1oPT09IjoifHxoPT09IiI/Imh0dHBzOiI6aH1nPWghPT12b2lkIDAmJkVuLmluZGV4T2YoaC50b0xvd2VyQ2FzZSgpKSE9PS0xP2c6ImFib3V0OmludmFsaWQjekNsb3N1cmV6IjtFbChjLGYsZyl9fXJldHVybiBjfSxsbT1mdW5jdGlvbihhLGIpe3ZhciBjPV8ucWQ7YT1CbChhLGIpO2E9ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihhLDUsZnVuY3Rpb24oaCl7aWYoaC5ub2RlVHlwZT09PTMpaD0xO2Vsc2UgaWYoRGwoaCkpaWYoaD1DbChoKSxoPT09bnVsbCloPTI7ZWxzZXt2YXIgaz1jLmc7aD1oIT09IkZPUk0iJiYoay5qLmhhcyhoKXx8ay5nLmhhcyhoKSk/MToyfWVsc2UgaD0yO3JldHVybiBofSk7Zm9yKHZhciBkPWEubmV4dE5vZGUoKSxlPWIuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLApmPWU7ZCE9PW51bGw7KXt2YXIgZz12b2lkIDA7aWYoZC5ub2RlVHlwZT09PTMpZz1jLmNyZWF0ZVRleHROb2RlKGQuZGF0YSk7ZWxzZSBpZihEbChkKSlnPUhuKGMsZCxiKTtlbHNlIHRocm93IEVycm9yKCJ0Iik7Zi5hcHBlbmRDaGlsZChnKTtpZihkPWEuZmlyc3RDaGlsZCgpKWY9ZztlbHNlIGZvcig7IShkPWEubmV4dFNpYmxpbmcoKSkmJihkPWEucGFyZW50Tm9kZSgpKTspZj1mLnBhcmVudE5vZGV9cmV0dXJuIGV9LEluPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGI9YiYmYiE9IioiP1N0cmluZyhiKS50b1VwcGVyQ2FzZSgpOiIiKT9hLnF1ZXJ5U2VsZWN0b3JBbGwoYik6YS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpfSxKbj1mdW5jdGlvbihhKXtyZXR1cm4gYS5zY3JvbGxpbmdFbGVtZW50P2Euc2Nyb2xsaW5nRWxlbWVudDpfLlZjfHxhLmNvbXBhdE1vZGUhPSJDU1MxQ29tcGF0Ij9hLmJvZHl8fGEuZG9jdW1lbnRFbGVtZW50OmEuZG9jdW1lbnRFbGVtZW50fSxLbj1mdW5jdGlvbihhKXt2YXIgYj0KSm4oYSk7YT1hLmRlZmF1bHRWaWV3O3JldHVybiBuZXcgemwoKGE9PW51bGw/dm9pZCAwOmEucGFnZVhPZmZzZXQpfHxiLnNjcm9sbExlZnQsKGE9PW51bGw/dm9pZCAwOmEucGFnZVlPZmZzZXQpfHxiLnNjcm9sbFRvcCl9LExuPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O2E9KGEuZyYmKGEuZz9hLmcucmVhZHlTdGF0ZTowKT49Mj9hLmcuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCl8fCIiOiIiKS5zcGxpdCgiXHJcbiIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKCEvXltcc1x4YTBdKiQvLnRlc3QoYVtjXSkpe3ZhciBkPUZuKGFbY10pLGU9ZFswXTtkPWRbMV07aWYodHlwZW9mIGQ9PT0ic3RyaW5nIil7ZD1kLnRyaW0oKTt2YXIgZj1iW2VdfHxbXTtiW2VdPWY7Zi5wdXNoKGQpfX1yZXR1cm4gQWwoYixmdW5jdGlvbihnKXtyZXR1cm4gZy5qb2luKCIsICIpfSl9LE1uPVs0LDUsNl0sSm09ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU1uO2M9Xy5KaShjKTthOnt2YXIgZT1jO18ucmkoYSk7CnZhciBmPWEuSixnPWZbXy5IXXwwO2lmKGU9PW51bGwpe3ZhciBoPUhsKGYpO2lmKElsKGgsZixnLGQpPT09YiloLnNldChkLDApO2Vsc2UgYnJlYWsgYX1lbHNle2g9SGwoZik7dmFyIGs9SWwoaCxmLGcsZCk7ayE9PWImJihrJiYoZz1fLnRpKGYsZyxrKSksaC5zZXQoZCxiKSl9Xy50aShmLGcsYixlKX1jJiYhXy5XZyhjKSYmXy5zaShhLkopO3JldHVybiBhfSxMbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoTG0sXy5KKTtMbS5wcm90b3R5cGUuZ2V0U2Vjb25kcz1mdW5jdGlvbigpe3JldHVybiBfLmhrKHRoaXMsMSl9O0xtLnByb3RvdHlwZS5zZXRTZWNvbmRzPWZ1bmN0aW9uKGEpe3JldHVybiBfLkdpKHRoaXMsMSxhPT1udWxsP2E6Xy5KaihhKSwiMCIpfTt2YXIgTW09ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKE1tLF8uSik7TW0ucHJvdG90eXBlLmdldFNlY29uZHM9ZnVuY3Rpb24oKXtyZXR1cm4gXy5oayh0aGlzLDEpfTsKTW0ucHJvdG90eXBlLnNldFNlY29uZHM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uR2kodGhpcywxLGE9PW51bGw/YTpfLkpqKGEpLCIwIil9O3ZhciBObj1mdW5jdGlvbihhKXt2YXIgYj1uZXcgXy5LaztyZXR1cm4gXy5payhiLDExLGEpfSx6bT1mdW5jdGlvbigpe3ZhciBhPW5ldyBfLmhsKDE4NzEsIjAiKTthLkE9Imh0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZWFwaXMuY29tL2VsZW1lbnQvbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7cmV0dXJuIGF9LHltPWZ1bmN0aW9uKGEpe2EuaD1PbjtyZXR1cm4gYX0sSW09ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEltLF8uSik7dmFyIFBuPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihQbixfLkopO3ZhciBGbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoRm0sXy5KKTt2YXIgUW49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFFuLF8uSik7dmFyIFJuPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9OwpfLkIoUm4sXy5KKTt2YXIgU249ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFNuLF8uSik7dmFyIFRuPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihUbixfLkopOwp2YXIgVW49ZnVuY3Rpb24oYSl7Xy5yaShhKTthPWEuSjt2YXIgYj1hW18uSF18MCxjPV8udWkoYSwxMTIpLGQ9dm9pZCAwPT09Xy5YaCxlPV8uaGgoYyxUbiwhZCxiKTshZHx8ZT8oZT1fLmtoKGUpLGMhPT1lJiYoYj1fLnRpKGEsYiwxMTIsZSksXy5zaShhLGIpKSxhPWUpOmE9dm9pZCAwO3JldHVybiBhfSxWbj1mdW5jdGlvbihhLGIpe2EuVSE9PXZvaWQgMD9hLlUucHVzaChiKTphLmNvbnRlbnQrPWI7cmV0dXJuIGF9LFduPWZ1bmN0aW9uKGEsYil7YS5VIT09dm9pZCAwP2EuVS5wdXNoKGIpOmIgaW5zdGFuY2VvZiBfLnhsP2IuY29udGVudCE9PXZvaWQgMD9hLmNvbnRlbnQrPWIubWEoKTooYS5VPVthLmNvbnRlbnQsYl0sYS5jb250ZW50PXZvaWQgMCk6YS5jb250ZW50Kz1iO3JldHVybiBhfSxYbj1mdW5jdGlvbihhKXt2YXIgYjthPV8uQygoYj1hLlUpIT1udWxsP2I6W10pO2ZvcihiPWEubmV4dCgpOyFiLmRvbmU7Yj1hLm5leHQoKSlpZihiPWIudmFsdWUsYiBpbnN0YW5jZW9mCl8ueGwmJlhuKGIpKXJldHVybiEwO3JldHVybiExfSxabj1mdW5jdGlvbihhLGIpe2I9WW4oYnx8e30sYS5oP2EuaC5nZXREYXRhKCk6e30pO2EuZyhudWxsLGIuWmIpO3JldHVybiBiLmooKX0sJG49e30sYW89ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IHpsKGEueC1iLngsYS55LWIueSl9LGJvPS8mL2csY289LzwvZyxlbz0vPi9nLGZvPS8iL2csZ289LycvZyxobz0vXHgwMC9nLGlvPS9bXHgwMCY8PiInXS8sam89ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSgvXHhhMHxbIFx0XSsvZywiICIpfSxrbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC9bXHNceGEwXSskLywiIil9LGxvPWZ1bmN0aW9uKGEpe2lvLnRlc3QoYSkmJihhLmluZGV4T2YoIiYiKSE9LTEmJihhPWEucmVwbGFjZShibywiJmFtcDsiKSksYS5pbmRleE9mKCI8IikhPS0xJiYoYT1hLnJlcGxhY2UoY28sIiZsdDsiKSksYS5pbmRleE9mKCI+IikhPS0xJiYoYT1hLnJlcGxhY2UoZW8sIiZndDsiKSksYS5pbmRleE9mKCciJykhPQotMSYmKGE9YS5yZXBsYWNlKGZvLCImcXVvdDsiKSksYS5pbmRleE9mKCInIikhPS0xJiYoYT1hLnJlcGxhY2UoZ28sIiYjMzk7IikpLGEuaW5kZXhPZigiXHgwMCIpIT0tMSYmKGE9YS5yZXBsYWNlKGhvLCImIzA7IikpKTtyZXR1cm4gYX0sbW89ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSgvJihbXjtdKyk7L2csZnVuY3Rpb24oYixjKXtzd2l0Y2goYyl7Y2FzZSAiYW1wIjpyZXR1cm4iJiI7Y2FzZSAibHQiOnJldHVybiI8IjtjYXNlICJndCI6cmV0dXJuIj4iO2Nhc2UgInF1b3QiOnJldHVybiciJztkZWZhdWx0OnJldHVybiBjLmNoYXJBdCgwKSE9IiMifHwoYz1OdW1iZXIoIjAiK2Muc2xpY2UoMSkpLGlzTmFOKGMpKT9iOlN0cmluZy5mcm9tQ2hhckNvZGUoYyl9fSl9LG5vPS8mKFteO1xzPCZdKyk7Py9nLG9vPWZ1bmN0aW9uKGEpe3ZhciBiPXsiJmFtcDsiOiImIiwiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInfTt2YXIgYz1fLnYuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CnJldHVybiBhLnJlcGxhY2Uobm8sZnVuY3Rpb24oZCxlKXt2YXIgZj1iW2RdO2lmKGYpcmV0dXJuIGY7ZS5jaGFyQXQoMCk9PSIjIiYmKGU9TnVtYmVyKCIwIitlLnNsaWNlKDEpKSxpc05hTihlKXx8KGY9U3RyaW5nLmZyb21DaGFyQ29kZShlKSkpO2Z8fChmPV8ubWwoZCsiICIpLGMubm9kZVR5cGU9PT0xJiZNbChjKSxjLmlubmVySFRNTD1fLmtqKGYpLGY9Yy5maXJzdENoaWxkLm5vZGVWYWx1ZS5zbGljZSgwLC0xKSk7cmV0dXJuIGJbZF09Zn0pfSxwbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5pbmRleE9mKCImIikhPS0xPyJkb2N1bWVudCJpbiBfLnY/b28oYSk6bW8oYSk6YX0scm89ZnVuY3Rpb24oYSl7dmFyIGI9cW87cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiLCI3LjAiKT9iWyI3LjAiXTpiWyI3LjAiXT1hKCI3LjAiKX0scW89e30sc289ZnVuY3Rpb24oKXtyZXR1cm4gcm8oZnVuY3Rpb24oKXtyZXR1cm4gTGwoXy5qZCwiNy4wIik+PTB9KX0sClRsPS9eW2Etel1bYS16XGQtXSokL2ksV2w9IkFQUExFVCBCQVNFIEVNQkVEIElGUkFNRSBMSU5LIE1BVEggTUVUQSBPQkpFQ1QgU0NSSVBUIFNUWUxFIFNWRyBURU1QTEFURSIuc3BsaXQoIiAiKSxYbD0iQVJFQSBCUiBDT0wgQ09NTUFORCBIUiBJTUcgSU5QVVQgS0VZR0VOIFBBUkFNIFNPVVJDRSBUUkFDSyBXQlIiLnNwbGl0KCIgIiksVWw9WyJhY3Rpb24iLCJmb3JtYWN0aW9uIiwiaHJlZiJdLHRvPWZ1bmN0aW9uKCl7dGhpcy5nPW5ldyBNYXB9Owp0by5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1QbCgiX3NhZmV2YWx1ZXNfZm9ybWF0X21hcmtlcl86IikudG9TdHJpbmcoKTthPVBsKGEpLnRvU3RyaW5nKCkucmVwbGFjZShuZXcgUmVnRXhwKCJcXHsiK2MrIltcXHcmIztdK1xcfSIsImciKSxmdW5jdGlvbihkKXt2YXIgZTtpZihlPWIuZy5nZXQoZCkpe2Q9IiI7c3dpdGNoKGUudHlwZSl7Y2FzZSAiaHRtbCI6ZD1lLnhmO2JyZWFrO2Nhc2UgInN0YXJ0VGFnIjpkPSI8IitlLnRhZ05hbWUrZS5hdHRyaWJ1dGVzKyI+IjticmVhaztjYXNlICJlbmRUYWciOmQ9IjwvIitlLnRhZ05hbWUrIj4ifWU9ZH1lbHNlIGU9ZDtyZXR1cm4gZX0pO3JldHVybiBfLm1sKGEpfTt0by5wcm90b3R5cGUudGV4dD1mdW5jdGlvbihhKXtyZXR1cm4gdW8odGhpcyx7dHlwZToiaHRtbCIseGY6UGwoYSkudG9TdHJpbmcoKX0pfTsKdmFyIHVvPWZ1bmN0aW9uKGEsYil7dmFyIGM9Intfc2FmZXZhbHVlc19mb3JtYXRfbWFya2VyXzoiK2EuZy5zaXplKyJfIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSsifSI7YS5nLnNldChQbChjKS50b1N0cmluZygpLGIpO3JldHVybiBjfSxnbj1mdW5jdGlvbihhKXtyZXR1cm4gXy50ZChkb2N1bWVudCxhKX0sdm89ZnVuY3Rpb24oYSl7dmFyIGI9YXx8ZG9jdW1lbnQ7Yi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lP2E9Yi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJWSXBnSmQteUFXTkViLW5WTWZjZC1mbWNtUyIpWzBdOihiPWRvY3VtZW50LGE9KGF8fGIpLnF1ZXJ5U2VsZWN0b3IoIi5WSXBnSmQteUFXTkViLW5WTWZjZC1mbWNtUyIpKTtyZXR1cm4gYXx8bnVsbH0sd289ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLnlkKGRvY3VtZW50LGFyZ3VtZW50cyl9LHhvPWZ1bmN0aW9uKGEsYil7Yi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGEsCmIubmV4dFNpYmxpbmcpfSx5bz1mdW5jdGlvbihhKXtyZXR1cm4gXy55YShhKSYmYS5ub2RlVHlwZT09MX0sem89ZnVuY3Rpb24oYSl7cmV0dXJuIGEuY29udGVudERvY3VtZW50fHxhLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnR9LEFvPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5jb250ZW50V2luZG93fHwoYS5jb250ZW50RG9jdW1lbnQ/Xy5tYihhLmNvbnRlbnREb2N1bWVudCk6bnVsbCl9Y2F0Y2goYil7fXJldHVybiBudWxsfSxCbz17U0NSSVBUOjEsU1RZTEU6MSxIRUFEOjEsSUZSQU1FOjEsT0JKRUNUOjF9LENvPXtJTUc6IiAiLEJSOiJcbiJ9LERvPWZ1bmN0aW9uKGEsYixjKXtpZighKGEubm9kZU5hbWUgaW4gQm8pKWlmKGEubm9kZVR5cGU9PTMpYz9iLnB1c2goU3RyaW5nKGEubm9kZVZhbHVlKS5yZXBsYWNlKC8oXHJcbnxccnxcbikvZywiIikpOmIucHVzaChhLm5vZGVWYWx1ZSk7ZWxzZSBpZihhLm5vZGVOYW1lIGluIENvKWIucHVzaChDb1thLm5vZGVOYW1lXSk7ZWxzZSBmb3IoYT0KYS5maXJzdENoaWxkO2E7KURvKGEsYixjKSxhPWEubmV4dFNpYmxpbmd9LEVvPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO0RvKGEsYiwhMCk7YT1iLmpvaW4oIiIpO2E9YS5yZXBsYWNlKC8gXHhBRCAvZywiICIpLnJlcGxhY2UoL1x4QUQvZywiIik7YT1hLnJlcGxhY2UoL1x1MjAwQi9nLCIiKTthPWEucmVwbGFjZSgvICsvZywiICIpO2EhPSIgIiYmKGE9YS5yZXBsYWNlKC9eXHMqLywiIikpO3JldHVybiBhfSxGbz1mdW5jdGlvbihhLGIsYyl7dGhpcy5wcm9taXNlPWE7dGhpcy5yZXNvbHZlPWI7dGhpcy5yZWplY3Q9Y30sR289ZnVuY3Rpb24oKXt2YXIgYSxiLGM9bmV3IF8ub2UoZnVuY3Rpb24oZCxlKXthPWQ7Yj1lfSk7cmV0dXJuIG5ldyBGbyhjLGEsYil9LEhvPWZ1bmN0aW9uKGEpe2lmKGEuaWImJnR5cGVvZiBhLmliPT0iZnVuY3Rpb24iKXJldHVybiBhLmliKCk7aWYodHlwZW9mIE1hcCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgTWFwfHx0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJgphIGluc3RhbmNlb2YgU2V0KXJldHVybiBBcnJheS5mcm9tKGEudmFsdWVzKCkpO2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIGEuc3BsaXQoIiIpO2lmKF8ucWEoYSkpe2Zvcih2YXIgYj1bXSxjPWEubGVuZ3RoLGQ9MDtkPGM7ZCsrKWIucHVzaChhW2RdKTtyZXR1cm4gYn1iPVtdO2M9MDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifSxJbz1mdW5jdGlvbihhKXtpZihhLk9jJiZ0eXBlb2YgYS5PYz09ImZ1bmN0aW9uIilyZXR1cm4gYS5PYygpO2lmKCFhLmlifHx0eXBlb2YgYS5pYiE9ImZ1bmN0aW9uIil7aWYodHlwZW9mIE1hcCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgTWFwKXJldHVybiBBcnJheS5mcm9tKGEua2V5cygpKTtpZighKHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFNldCkpe2lmKF8ucWEoYSl8fHR5cGVvZiBhPT09InN0cmluZyIpe3ZhciBiPVtdO2E9YS5sZW5ndGg7Zm9yKHZhciBjPTA7YzxhO2MrKyliLnB1c2goYyk7CnJldHVybiBifWI9W107Yz0wO2Zvcih2YXIgZCBpbiBhKWJbYysrXT1kO3JldHVybiBifX19LEpvPWZ1bmN0aW9uKGEsYixjKXtpZihhLmZvckVhY2gmJnR5cGVvZiBhLmZvckVhY2g9PSJmdW5jdGlvbiIpYS5mb3JFYWNoKGIsYyk7ZWxzZSBpZihfLnFhKGEpfHx0eXBlb2YgYT09PSJzdHJpbmciKUFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYSxiLGMpO2Vsc2UgZm9yKHZhciBkPUlvKGEpLGU9SG8oYSksZj1lLmxlbmd0aCxnPTA7ZzxmO2crKyliLmNhbGwoYyxlW2ddLGQmJmRbZ10sYSl9LGdtPWZ1bmN0aW9uKGEsYil7dGhpcy5oPXRoaXMuZz1udWxsO3RoaXMuaj1hfHxudWxsO3RoaXMubD0hIWJ9LEtvPWZ1bmN0aW9uKGEpe2EuZ3x8KGEuZz1uZXcgTWFwLGEuaD0wLGEuaiYmXy5FYihhLmosZnVuY3Rpb24oYixjKXthLmFkZChfLkRiKGIpLGMpfSkpfTsKZ20ucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe0tvKHRoaXMpO3RoaXMuaj1udWxsO2E9TG8odGhpcyxhKTt2YXIgYz10aGlzLmcuZ2V0KGEpO2N8fHRoaXMuZy5zZXQoYSxjPVtdKTtjLnB1c2goYik7dGhpcy5oKz0xO3JldHVybiB0aGlzfTtnbS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe0tvKHRoaXMpO2E9TG8odGhpcyxhKTtyZXR1cm4gdGhpcy5nLmhhcyhhKT8odGhpcy5qPW51bGwsdGhpcy5oLT10aGlzLmcuZ2V0KGEpLmxlbmd0aCx0aGlzLmcuZGVsZXRlKGEpKTohMX07Z20ucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5nPXRoaXMuaj1udWxsO3RoaXMuaD0wfTt2YXIgTW89ZnVuY3Rpb24oYSxiKXtLbyhhKTtiPUxvKGEsYik7cmV0dXJuIGEuZy5oYXMoYil9O18ubT1nbS5wcm90b3R5cGU7Cl8ubS5mb3JFYWNoPWZ1bmN0aW9uKGEsYil7S28odGhpcyk7dGhpcy5nLmZvckVhY2goZnVuY3Rpb24oYyxkKXtjLmZvckVhY2goZnVuY3Rpb24oZSl7YS5jYWxsKGIsZSxkLHRoaXMpfSx0aGlzKX0sdGhpcyl9O18ubS5PYz1mdW5jdGlvbigpe0tvKHRoaXMpO2Zvcih2YXIgYT1BcnJheS5mcm9tKHRoaXMuZy52YWx1ZXMoKSksYj1BcnJheS5mcm9tKHRoaXMuZy5rZXlzKCkpLGM9W10sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWZvcih2YXIgZT1hW2RdLGY9MDtmPGUubGVuZ3RoO2YrKyljLnB1c2goYltkXSk7cmV0dXJuIGN9O18ubS5pYj1mdW5jdGlvbihhKXtLbyh0aGlzKTt2YXIgYj1bXTtpZih0eXBlb2YgYT09PSJzdHJpbmciKU1vKHRoaXMsYSkmJihiPWIuY29uY2F0KHRoaXMuZy5nZXQoTG8odGhpcyxhKSkpKTtlbHNle2E9QXJyYXkuZnJvbSh0aGlzLmcudmFsdWVzKCkpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWI9Yi5jb25jYXQoYVtjXSl9cmV0dXJuIGJ9OwpfLm0uc2V0PWZ1bmN0aW9uKGEsYil7S28odGhpcyk7dGhpcy5qPW51bGw7YT1Mbyh0aGlzLGEpO01vKHRoaXMsYSkmJih0aGlzLmgtPXRoaXMuZy5nZXQoYSkubGVuZ3RoKTt0aGlzLmcuc2V0KGEsW2JdKTt0aGlzLmgrPTE7cmV0dXJuIHRoaXN9O18ubS5nZXQ9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4gYjthPXRoaXMuaWIoYSk7cmV0dXJuIGEubGVuZ3RoPjA/U3RyaW5nKGFbMF0pOmJ9O3ZhciBObz1mdW5jdGlvbihhLGIsYyl7YS5yZW1vdmUoYik7Yy5sZW5ndGg+MCYmKGEuaj1udWxsLGEuZy5zZXQoTG8oYSxiKSxfLndhKGMpKSxhLmgrPWMubGVuZ3RoKX07CmdtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe2lmKHRoaXMuailyZXR1cm4gdGhpcy5qO2lmKCF0aGlzLmcpcmV0dXJuIiI7Zm9yKHZhciBhPVtdLGI9QXJyYXkuZnJvbSh0aGlzLmcua2V5cygpKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1fLkdiKGQpO2Q9dGhpcy5pYihkKTtmb3IodmFyIGY9MDtmPGQubGVuZ3RoO2YrKyl7dmFyIGc9ZTtkW2ZdIT09IiImJihnKz0iPSIrXy5HYihkW2ZdKSk7YS5wdXNoKGcpfX1yZXR1cm4gdGhpcy5qPWEuam9pbigiJiIpfTsKdmFyIGVtPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBnbTtiLmo9YS5qO2EuZyYmKGIuZz1uZXcgTWFwKGEuZyksYi5oPWEuaCk7cmV0dXJuIGJ9LExvPWZ1bmN0aW9uKGEsYil7Yj1TdHJpbmcoYik7YS5sJiYoYj1iLnRvTG93ZXJDYXNlKCkpO3JldHVybiBifSxPbz1mdW5jdGlvbihhLGIpe2ImJiFhLmwmJihLbyhhKSxhLmo9bnVsbCxhLmcuZm9yRWFjaChmdW5jdGlvbihjLGQpe3ZhciBlPWQudG9Mb3dlckNhc2UoKTtkIT1lJiYodGhpcy5yZW1vdmUoZCksTm8odGhpcyxlLGMpKX0sYSkpO2EubD1ifTtnbS5wcm90b3R5cGUuZXh0ZW5kPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YXJndW1lbnRzLmxlbmd0aDtiKyspSm8oYXJndW1lbnRzW2JdLGZ1bmN0aW9uKGMsZCl7dGhpcy5hZGQoZCxjKX0sdGhpcyl9Owp2YXIgUG89L1sjXC9cP0BdL2csUW89L1sjXD9dL2csUm89L1sjXD86XS9nLFNvPS8jL2csZm09ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT9iP2RlY29kZVVSSShhLnJlcGxhY2UoLyUyNS9nLCIlMjUyNSIpKTpkZWNvZGVVUklDb21wb25lbnQoYSk6IiJ9LFRvPS9bI1w/QF0vZyxVbz1mdW5jdGlvbihhKXthPWEuY2hhckNvZGVBdCgwKTtyZXR1cm4iJSIrKGE+PjQmMTUpLnRvU3RyaW5nKDE2KSsoYSYxNSkudG9TdHJpbmcoMTYpfSxWbz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/KGE9ZW5jb2RlVVJJKGEpLnJlcGxhY2UoYixVbyksYyYmKGE9YS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxhKTpudWxsfTsKWmwucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj10aGlzLmw7YiYmYS5wdXNoKFZvKGIsUG8sITApLCI6Iik7dmFyIGM9dGhpcy5oO2lmKGN8fGI9PSJmaWxlIilhLnB1c2goIi8vIiksKGI9dGhpcy5CKSYmYS5wdXNoKFZvKGIsUG8sITApLCJAIiksYS5wdXNoKF8uR2IoYykucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKSksYz10aGlzLkMsYyE9bnVsbCYmYS5wdXNoKCI6IixTdHJpbmcoYykpO2lmKGM9dGhpcy5qKXRoaXMuaCYmYy5jaGFyQXQoMCkhPSIvIiYmYS5wdXNoKCIvIiksYS5wdXNoKFZvKGMsYy5jaGFyQXQoMCk9PSIvIj9RbzpSbywhMCkpOyhjPXRoaXMuZy50b1N0cmluZygpKSYmYS5wdXNoKCI/IixjKTsoYz10aGlzLkEpJiZhLnB1c2goIiMiLFZvKGMsU28pKTtyZXR1cm4gYS5qb2luKCIiKX07ClpsLnByb3RvdHlwZS5yZXNvbHZlPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBabCh0aGlzKSxjPSEhYS5sO2M/JGwoYixhLmwpOmM9ISFhLkI7Yz9iLkI9YS5COmM9ISFhLmg7Yz9hbShiLGEuaCk6Yz1hLkMhPW51bGw7dmFyIGQ9YS5qO2lmKGMpYm0oYixhLkMpO2Vsc2UgaWYoYz0hIWEuail7aWYoZC5jaGFyQXQoMCkhPSIvIilpZih0aGlzLmgmJiF0aGlzLmopZD0iLyIrZDtlbHNle3ZhciBlPWIuai5sYXN0SW5kZXhPZigiLyIpO2UhPS0xJiYoZD1iLmouc2xpY2UoMCxlKzEpK2QpfWU9ZDtpZihlPT0iLi4ifHxlPT0iLiIpZD0iIjtlbHNlIGlmKGUuaW5kZXhPZigiLi8iKSE9LTF8fGUuaW5kZXhPZigiLy4iKSE9LTEpe2Q9ZS5sYXN0SW5kZXhPZigiLyIsMCk9PTA7ZT1lLnNwbGl0KCIvIik7Zm9yKHZhciBmPVtdLGc9MDtnPGUubGVuZ3RoOyl7dmFyIGg9ZVtnKytdO2g9PSIuIj9kJiZnPT1lLmxlbmd0aCYmZi5wdXNoKCIiKTpoPT0iLi4iPygoZi5sZW5ndGg+MXx8Zi5sZW5ndGg9PQoxJiZmWzBdIT0iIikmJmYucG9wKCksZCYmZz09ZS5sZW5ndGgmJmYucHVzaCgiIikpOihmLnB1c2goaCksZD0hMCl9ZD1mLmpvaW4oIi8iKX1lbHNlIGQ9ZX1jP2NtKGIsZCk6Yz1hLmcudG9TdHJpbmcoKSE9PSIiO2M/ZG0oYixlbShhLmcpKTpjPSEhYS5BO2MmJihiLkE9YS5BKTtyZXR1cm4gYn07CnZhciAkbD1mdW5jdGlvbihhLGIsYyl7YS5sPWM/Zm0oYiwhMCk6YjthLmwmJihhLmw9YS5sLnJlcGxhY2UoLzokLywiIikpO3JldHVybiBhfSxhbT1mdW5jdGlvbihhLGIsYyl7YS5oPWM/Zm0oYiwhMCk6YjtyZXR1cm4gYX0sYm09ZnVuY3Rpb24oYSxiKXtpZihiKXtiPU51bWJlcihiKTtpZihpc05hTihiKXx8YjwwKXRocm93IEVycm9yKCJIYCIrYik7YS5DPWJ9ZWxzZSBhLkM9bnVsbH0sY209ZnVuY3Rpb24oYSxiLGMpe2Euaj1jP2ZtKGIsITApOmI7cmV0dXJuIGF9LGRtPWZ1bmN0aW9uKGEsYixjKXtiIGluc3RhbmNlb2YgZ20/KGEuZz1iLE9vKGEuZyxhLm8pKTooY3x8KGI9Vm8oYixUbykpLGEuZz1uZXcgZ20oYixhLm8pKX0sV289ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBabD9uZXcgWmwoYSk6bmV3IFpsKGEpfSxYbz1mdW5jdGlvbihhKXt2YXIgYj1JbyhhKTtpZih0eXBlb2YgYj09InVuZGVmaW5lZCIpdGhyb3cgRXJyb3IoIkoiKTt2YXIgYz1uZXcgZ20obnVsbCk7CmE9SG8oYSk7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1hW2RdO0FycmF5LmlzQXJyYXkoZik/Tm8oYyxlLGYpOmMuYWRkKGUsZil9cmV0dXJuIGN9LFlvPXt9LFpvPXt9LCRvPXt9LGFwPXt9LGptPXt9LHFtPXt9LHBtLFVtPXt9LGJwPWZ1bmN0aW9uKGEsYixjKXthPWEuSjtyZXR1cm4gXy5IaShhLGFbXy5IXXwwLGIsYyl8fGJbXy5maF18fChiW18uZmhdPV8uZ2goYikpfSxzbj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uR2koYSxiLF8uTGooYyksIiIpfTtfLm09dm0ucHJvdG90eXBlO18ubS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcyYmYT9hIGluc3RhbmNlb2Ygdm0/YS5sZWZ0Pj10aGlzLmxlZnQmJmEucmlnaHQ8PXRoaXMucmlnaHQmJmEudG9wPj10aGlzLnRvcCYmYS5ib3R0b208PXRoaXMuYm90dG9tOmEueD49dGhpcy5sZWZ0JiZhLng8PXRoaXMucmlnaHQmJmEueT49dGhpcy50b3AmJmEueTw9dGhpcy5ib3R0b206ITF9OwpfLm0uY2VpbD1mdW5jdGlvbigpe3RoaXMudG9wPU1hdGguY2VpbCh0aGlzLnRvcCk7dGhpcy5yaWdodD1NYXRoLmNlaWwodGhpcy5yaWdodCk7dGhpcy5ib3R0b209TWF0aC5jZWlsKHRoaXMuYm90dG9tKTt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7cmV0dXJuIHRoaXN9O18ubS5mbG9vcj1mdW5jdGlvbigpe3RoaXMudG9wPU1hdGguZmxvb3IodGhpcy50b3ApO3RoaXMucmlnaHQ9TWF0aC5mbG9vcih0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLmZsb29yKHRoaXMuYm90dG9tKTt0aGlzLmxlZnQ9TWF0aC5mbG9vcih0aGlzLmxlZnQpO3JldHVybiB0aGlzfTtfLm0ucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLnRvcD1NYXRoLnJvdW5kKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGgucm91bmQodGhpcy5yaWdodCk7dGhpcy5ib3R0b209TWF0aC5yb3VuZCh0aGlzLmJvdHRvbSk7dGhpcy5sZWZ0PU1hdGgucm91bmQodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307Cl8ubS50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiKXthIGluc3RhbmNlb2Ygemw/KHRoaXMubGVmdCs9YS54LHRoaXMucmlnaHQrPWEueCx0aGlzLnRvcCs9YS55LHRoaXMuYm90dG9tKz1hLnkpOih0aGlzLmxlZnQrPWEsdGhpcy5yaWdodCs9YSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy50b3ArPWIsdGhpcy5ib3R0b20rPWIpKTtyZXR1cm4gdGhpc307Xy5tPXdtLnByb3RvdHlwZTtfLm0uY29udGFpbnM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiB6bD9hLng+PXRoaXMubGVmdCYmYS54PD10aGlzLmxlZnQrdGhpcy53aWR0aCYmYS55Pj10aGlzLnRvcCYmYS55PD10aGlzLnRvcCt0aGlzLmhlaWdodDp0aGlzLmxlZnQ8PWEubGVmdCYmdGhpcy5sZWZ0K3RoaXMud2lkdGg+PWEubGVmdCthLndpZHRoJiZ0aGlzLnRvcDw9YS50b3AmJnRoaXMudG9wK3RoaXMuaGVpZ2h0Pj1hLnRvcCthLmhlaWdodH07Cl8ubS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguY2VpbCh0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGguY2VpbCh0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5tLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLmZsb29yKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguZmxvb3IodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5mbG9vcih0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9O18ubS5yb3VuZD1mdW5jdGlvbigpe3RoaXMubGVmdD1NYXRoLnJvdW5kKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5yb3VuZCh0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKXy5tLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiB6bD8odGhpcy5sZWZ0Kz1hLngsdGhpcy50b3ArPWEueSk6KHRoaXMubGVmdCs9YSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy50b3ArPWIpKTtyZXR1cm4gdGhpc307CnZhciBjcD1mdW5jdGlvbihhLGIpe2E6e3ZhciBjPV8uc2QoYSk7aWYoYy5kZWZhdWx0VmlldyYmYy5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlJiYoYz1jLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoYSxudWxsKSkpe2M9Y1tiXXx8Yy5nZXRQcm9wZXJ0eVZhbHVlKGIpfHwiIjticmVhayBhfWM9IiJ9cmV0dXJuIGN8fChhLmN1cnJlbnRTdHlsZT9hLmN1cnJlbnRTdHlsZVtiXTpudWxsKXx8YS5zdHlsZSYmYS5zdHlsZVtiXX0sZHA9ZnVuY3Rpb24oYSl7dHlwZW9mIGE9PSJudW1iZXIiJiYoYSs9InB4Iik7cmV0dXJuIGF9LGVwPWZ1bmN0aW9uKGEsYil7aWYoYiBpbnN0YW5jZW9mIHpsKXt2YXIgYz1iLng7Yj1iLnl9ZWxzZSBjPWIsYj12b2lkIDA7YS5zdHlsZS5sZWZ0PWRwKGMpO2Euc3R5bGUudG9wPWRwKGIpfSxmcD1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goYil7cmV0dXJue2xlZnQ6MCx0b3A6MCxyaWdodDowLApib3R0b206MH19fSxncD1mdW5jdGlvbihhKXt2YXIgYj1fLnNkKGEpLGM9Y3AoYSwicG9zaXRpb24iKSxkPWM9PSJmaXhlZCJ8fGM9PSJhYnNvbHV0ZSI7Zm9yKGE9YS5wYXJlbnROb2RlO2EmJmEhPWI7YT1hLnBhcmVudE5vZGUpaWYoYS5ub2RlVHlwZT09MTEmJmEuaG9zdCYmKGE9YS5ob3N0KSxjPWNwKGEsInBvc2l0aW9uIiksZD1kJiZjPT0ic3RhdGljIiYmYSE9Yi5kb2N1bWVudEVsZW1lbnQmJmEhPWIuYm9keSwhZCYmKGEuc2Nyb2xsV2lkdGg+YS5jbGllbnRXaWR0aHx8YS5zY3JvbGxIZWlnaHQ+YS5jbGllbnRIZWlnaHR8fGM9PSJmaXhlZCJ8fGM9PSJhYnNvbHV0ZSJ8fGM9PSJyZWxhdGl2ZSIpKXJldHVybiBhO3JldHVybiBudWxsfSxocD1mdW5jdGlvbihhKXt2YXIgYj1fLnNkKGEpLGM9bmV3IHpsKDAsMCk7aWYoYT09KGI/Xy5zZChiKTpkb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50KXJldHVybiBjO2E9ZnAoYSk7Yj1fLmxiKGIpO2I9S24oYi5nKTtjLng9YS5sZWZ0K2IueDsKYy55PWEudG9wK2IueTtyZXR1cm4gY30saXA9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPW5ldyB2bSgwLEluZmluaXR5LEluZmluaXR5LDApLGM9Xy5sYihhKSxkPWMuZy5ib2R5LGU9Yy5nLmRvY3VtZW50RWxlbWVudCxmPUpuKGMuZyk7YT1ncChhKTspaWYoKCFfLlZjfHxhLmNsaWVudEhlaWdodCE9MHx8YSE9ZCkmJmEhPWQmJmEhPWUmJmNwKGEsIm92ZXJmbG93IikhPSJ2aXNpYmxlIil7dmFyIGc9aHAoYSksaD1uZXcgemwoYS5jbGllbnRMZWZ0LGEuY2xpZW50VG9wKTtnLngrPWgueDtnLnkrPWgueTtiLnRvcD1NYXRoLm1heChiLnRvcCxnLnkpO2IucmlnaHQ9TWF0aC5taW4oYi5yaWdodCxnLngrYS5jbGllbnRXaWR0aCk7Yi5ib3R0b209TWF0aC5taW4oYi5ib3R0b20sZy55K2EuY2xpZW50SGVpZ2h0KTtiLmxlZnQ9TWF0aC5tYXgoYi5sZWZ0LGcueCl9ZD1mLnNjcm9sbExlZnQ7Zj1mLnNjcm9sbFRvcDtiLmxlZnQ9TWF0aC5tYXgoYi5sZWZ0LGQpO2IudG9wPU1hdGgubWF4KGIudG9wLApmKTtjPV8uaWIoYy5nLmRlZmF1bHRWaWV3fHx3aW5kb3cpO2IucmlnaHQ9TWF0aC5taW4oYi5yaWdodCxkK2Mud2lkdGgpO2IuYm90dG9tPU1hdGgubWluKGIuYm90dG9tLGYrYy5oZWlnaHQpO3JldHVybiBiLnRvcD49MCYmYi5sZWZ0Pj0wJiZiLmJvdHRvbT5iLnRvcCYmYi5yaWdodD5iLmxlZnQ/YjpudWxsfSxqcD1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyB6bCgwLDApLGQ9Xy5tYihfLnNkKGEpKTthOnt0cnl7Xy5RYyhkLnBhcmVudCk7dmFyIGU9ITA7YnJlYWsgYX1jYXRjaChmKXt9ZT0hMX1pZighZSlyZXR1cm4gYztkbyBkPT1iP2U9aHAoYSk6KGU9ZnAoYSksZT1uZXcgemwoZS5sZWZ0LGUudG9wKSksYy54Kz1lLngsYy55Kz1lLnk7d2hpbGUoZCYmZCE9YiYmZCE9ZC5wYXJlbnQmJihhPWQuZnJhbWVFbGVtZW50KSYmKGQ9ZC5wYXJlbnQpKTtyZXR1cm4gY30sbHA9ZnVuY3Rpb24oYSl7dmFyIGI9a3A7aWYoY3AoYSwiZGlzcGxheSIpIT0ibm9uZSIpcmV0dXJuIGIoYSk7dmFyIGM9CmEuc3R5bGUsZD1jLmRpc3BsYXksZT1jLnZpc2liaWxpdHksZj1jLnBvc2l0aW9uO2MudmlzaWJpbGl0eT0iaGlkZGVuIjtjLnBvc2l0aW9uPSJhYnNvbHV0ZSI7Yy5kaXNwbGF5PSJpbmxpbmUiO2E9YihhKTtjLmRpc3BsYXk9ZDtjLnBvc2l0aW9uPWY7Yy52aXNpYmlsaXR5PWU7cmV0dXJuIGF9LGtwPWZ1bmN0aW9uKGEpe3ZhciBiPWEub2Zmc2V0V2lkdGgsYz1hLm9mZnNldEhlaWdodCxkPV8uVmMmJiFiJiYhYztyZXR1cm4oYj09PXZvaWQgMHx8ZCkmJmEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0PyhhPWZwKGEpLG5ldyBfLkNhKGEucmlnaHQtYS5sZWZ0LGEuYm90dG9tLWEudG9wKSk6bmV3IF8uQ2EoYixjKX0sbXA9ZnVuY3Rpb24oYSxiKXthLnN0eWxlLmRpc3BsYXk9Yj8iIjoibm9uZSJ9LG5wPWZ1bmN0aW9uKGEsYil7Yj1fLmxiKGIpO3ZhciBjPUluKGIuZywiSEVBRCIpWzBdO2lmKCFjKXt2YXIgZD1JbihiLmcsIkJPRFkiKVswXTtjPWIuUygiSEVBRCIpO2QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYywKZCl9ZD1iLlMoIlNUWUxFIik7dmFyIGU9Xy5PYSgic3R5bGUiLGRvY3VtZW50KTtlJiZkLnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpO2E9TmwoYSk7Xy52LnRydXN0ZWRUeXBlcz9fLkNkKGQsYSk6ZC5pbm5lckhUTUw9YTtiLmFwcGVuZENoaWxkKGMsZCl9LG9wPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5DYShhLm9mZnNldFdpZHRoLGEub2Zmc2V0SGVpZ2h0KX0scHA9ZnVuY3Rpb24oYSxiLGMpe2E9YS5zdHlsZTtfLlVjP2EuTW96Qm94U2l6aW5nPWM6Xy5WYz9hLldlYmtpdEJveFNpemluZz1jOmEuYm94U2l6aW5nPWM7YS53aWR0aD1NYXRoLm1heChiLndpZHRoLDApKyJweCI7YS5oZWlnaHQ9TWF0aC5tYXgoYi5oZWlnaHQsMCkrInB4In0scXA9ZnVuY3Rpb24oYSxiKXtwcChhLGIsImNvbnRlbnQtYm94Iil9LHJwPWZ1bmN0aW9uKGEpe2lmKGEhPW51bGwpc3dpdGNoKGEuSmQpe2Nhc2UgMTpyZXR1cm4gMTtjYXNlIC0xOnJldHVybi0xO2Nhc2UgMDpyZXR1cm4gMH1yZXR1cm4gbnVsbH0sCnNwPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy54bD9YbihhKT8hMDohIWEubWEoKTphIGluc3RhbmNlb2YgXy56Zj8hIWEubWEoKTohIWF9LHRwPS88L2csdXA9ZnVuY3Rpb24oYSxiKXthPWEucmVwbGFjZSgvPFwvL2csIjxcXC8iKS5yZXBsYWNlKC9cXVxdPi9nLCJdXVxcPiIpO3JldHVybiBiP2EucmVwbGFjZSgvey9nLCIgXFx7IikucmVwbGFjZSgvfS9nLCIgXFx9IikucmVwbGFjZSgvXC9cKi9nLCIvICoiKS5yZXBsYWNlKC9cXCQvLCJcXCAiKTphfSx2cD1mdW5jdGlvbihhKXthPVN0cmluZyhhKTtmb3IodmFyIGI9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1NYXRoLm1pbihlLmxlbmd0aC1mLGQubGVuZ3RoKSxoPTA7aDxnO2grKyl7dmFyIGs9ZVtmK2hdO2lmKGRbaF0hPT0oIkEiPD1rJiZrPD0iWiI/ay50b0xvd2VyQ2FzZSgpOmspKXJldHVybiExfXJldHVybiEwfSxjPTA7KGM9YS5pbmRleE9mKCI8IixjKSkhPS0xOyl7aWYoYigiXHgzYy9zY3JpcHQiLAphLGMpfHxiKCJceDNjIS0tIixhLGMpKXJldHVybiJ6U295eiI7Yys9MX1yZXR1cm4gYX0sd3A9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSE9bnVsbCYmYS5aYj09PWJ9LHhwPWZ1bmN0aW9uKGEpe3JldHVybiB3cChhLCRvKT9hLm1hKCk6YSBpbnN0YW5jZW9mIF8uTGE/Xy5OYShhKS50b1N0cmluZygpOiJhYm91dDppbnZhbGlkI3pTb3l6In0senA9ZnVuY3Rpb24oKXt2YXIgYTt3cCgiIixhcCk/YT0iIi5tYSgpOmE9eXAudGVzdCgiIik/IiI6InpTb3l6Ijt3cChhLGFwKSYmKGE9YS5tYSgpKTtyZXR1cm4oYSYmIWEuc3RhcnRzV2l0aCgiICIpPyIgIjoiIikrYX0sQXA9ZnVuY3Rpb24oYSl7cmV0dXJuIHdwKGEsXy5vbCk/dXAoYS5tYSgpLCExKTphPT1udWxsPyIiOmEgaW5zdGFuY2VvZiBfLnBsP3VwKE5sKGEpLCExKTp1cChTdHJpbmcoYSksITApfSxCcD17Ilx4MDAiOiImIzA7IiwiXHQiOiImIzk7IiwiXG4iOiImIzEwOyIsIlx2IjoiJiMxMTsiLCJcZiI6IiYjMTI7IiwiXHIiOiImIzEzOyIsCiIgIjoiJiMzMjsiLCciJzoiJnF1b3Q7IiwiJiI6IiZhbXA7IiwiJyI6IiYjMzk7IiwiLSI6IiYjNDU7IiwiLyI6IiYjNDc7IiwiPCI6IiZsdDsiLCI9IjoiJiM2MTsiLCI+IjoiJmd0OyIsImAiOiImIzk2OyIsIlx1MDA4NSI6IiYjMTMzOyIsIlx1MDBhMCI6IiYjMTYwOyIsIlx1MjAyOCI6IiYjODIzMjsiLCJcdTIwMjkiOiImIzgyMzM7In0sQ3A9ZnVuY3Rpb24oYSl7cmV0dXJuIEJwW2FdfSxEcD17Ilx4MDAiOiJcXHgwMCIsIlxiIjoiXFx4MDgiLCJcdCI6IlxcdCIsIlxuIjoiXFxuIiwiXHYiOiJcXHgwYiIsIlxmIjoiXFxmIiwiXHIiOiJcXHIiLCciJzoiXFx4MjIiLCQ6IlxceDI0IiwiJiI6IlxceDI2IiwiJyI6IlxceDI3IiwiKCI6IlxceDI4IiwiKSI6IlxceDI5IiwiKiI6IlxceDJhIiwiKyI6IlxceDJiIiwiLCI6IlxceDJjIiwiLSI6IlxceDJkIiwiLiI6IlxceDJlIiwiLyI6IlxcLyIsIjoiOiJcXHgzYSIsIjwiOiJcXHgzYyIsIj0iOiJcXHgzZCIsIj4iOiJcXHgzZSIsIj8iOiJcXHgzZiIsCiJbIjoiXFx4NWIiLCJcXCI6IlxcXFwiLCJdIjoiXFx4NWQiLCJeIjoiXFx4NWUiLCJ7IjoiXFx4N2IiLCJ8IjoiXFx4N2MiLCJ9IjoiXFx4N2QiLCJcdTAwODUiOiJcXHg4NSIsIlx1MjAyOCI6IlxcdTIwMjgiLCJcdTIwMjkiOiJcXHUyMDI5In0sRXA9ZnVuY3Rpb24oYSl7cmV0dXJuIERwW2FdfSxGcD17Ilx4MDAiOiJcXDAgIiwiXGIiOiJcXDggIiwiXHQiOiJcXDkgIiwiXG4iOiJcXGEgIiwiXHYiOiJcXGIgIiwiXGYiOiJcXGMgIiwiXHIiOiJcXGQgIiwnIic6IlxcMjIgIiwiJiI6IlxcMjYgIiwiJyI6IlxcMjcgIiwiKCI6IlxcMjggIiwiKSI6IlxcMjkgIiwiKiI6IlxcMmEgIiwiLyI6IlxcMmYgIiwiOiI6IlxcM2EgIiwiOyI6IlxcM2IgIiwiPCI6IlxcM2MgIiwiPSI6IlxcM2QgIiwiPiI6IlxcM2UgIiwiQCI6IlxcNDAgIiwiXFwiOiJcXDVjICIsInsiOiJcXDdiICIsIn0iOiJcXDdkICIsIlx1MDA4NSI6IlxcODUgIiwiXHUwMGEwIjoiXFxhMCAiLCJcdTIwMjgiOiJcXDIwMjggIiwKIlx1MjAyOSI6IlxcMjAyOSAifSxHcD1mdW5jdGlvbihhKXtyZXR1cm4gRnBbYV19LEhwPXsiXHgwMCI6IiUwMCIsIlx1MDAwMSI6IiUwMSIsIlx1MDAwMiI6IiUwMiIsIlx1MDAwMyI6IiUwMyIsIlx1MDAwNCI6IiUwNCIsIlx1MDAwNSI6IiUwNSIsIlx1MDAwNiI6IiUwNiIsIlx1MDAwNyI6IiUwNyIsIlxiIjoiJTA4IiwiXHQiOiIlMDkiLCJcbiI6IiUwQSIsIlx2IjoiJTBCIiwiXGYiOiIlMEMiLCJcciI6IiUwRCIsIlx1MDAwZSI6IiUwRSIsIlx1MDAwZiI6IiUwRiIsIlx1MDAxMCI6IiUxMCIsIlx1MDAxMSI6IiUxMSIsIlx1MDAxMiI6IiUxMiIsIlx1MDAxMyI6IiUxMyIsIlx1MDAxNCI6IiUxNCIsIlx1MDAxNSI6IiUxNSIsIlx1MDAxNiI6IiUxNiIsIlx1MDAxNyI6IiUxNyIsIlx1MDAxOCI6IiUxOCIsIlx1MDAxOSI6IiUxOSIsIlx1MDAxYSI6IiUxQSIsIlx1MDAxYiI6IiUxQiIsIlx1MDAxYyI6IiUxQyIsIlx1MDAxZCI6IiUxRCIsIlx1MDAxZSI6IiUxRSIsIlx1MDAxZiI6IiUxRiIsCiIgIjoiJTIwIiwnIic6IiUyMiIsIiciOiIlMjciLCIoIjoiJTI4IiwiKSI6IiUyOSIsIjwiOiIlM0MiLCI+IjoiJTNFIiwiXFwiOiIlNUMiLCJ7IjoiJTdCIiwifSI6IiU3RCIsIlx1MDA3ZiI6IiU3RiIsIlx1MDA4NSI6IiVDMiU4NSIsIlx1MDBhMCI6IiVDMiVBMCIsIlx1MjAyOCI6IiVFMiU4MCVBOCIsIlx1MjAyOSI6IiVFMiU4MCVBOSIsIlx1ZmYwMSI6IiVFRiVCQyU4MSIsIlx1ZmYwMyI6IiVFRiVCQyU4MyIsIlx1ZmYwNCI6IiVFRiVCQyU4NCIsIlx1ZmYwNiI6IiVFRiVCQyU4NiIsIlx1ZmYwNyI6IiVFRiVCQyU4NyIsIlx1ZmYwOCI6IiVFRiVCQyU4OCIsIlx1ZmYwOSI6IiVFRiVCQyU4OSIsIlx1ZmYwYSI6IiVFRiVCQyU4QSIsIlx1ZmYwYiI6IiVFRiVCQyU4QiIsIlx1ZmYwYyI6IiVFRiVCQyU4QyIsIlx1ZmYwZiI6IiVFRiVCQyU4RiIsIlx1ZmYxYSI6IiVFRiVCQyU5QSIsIlx1ZmYxYiI6IiVFRiVCQyU5QiIsIlx1ZmYxZCI6IiVFRiVCQyU5RCIsIlx1ZmYxZiI6IiVFRiVCQyU5RiIsCiJcdWZmMjAiOiIlRUYlQkMlQTAiLCJcdWZmM2IiOiIlRUYlQkMlQkIiLCJcdWZmM2QiOiIlRUYlQkMlQkQifSxJcD1mdW5jdGlvbihhKXtyZXR1cm4gSHBbYV19LEpwPS9bXHgwMFx4MjJceDI2XHgyN1x4M2NceDNlXS9nLEtwPWZ1bmN0aW9uKGEpe3JldHVybiB3cChhLF8ucWwpP2E6YSBpbnN0YW5jZW9mIF8uRGM/KDAsXy50bCkoXy5raihhKS50b1N0cmluZygpKTooMCxfLnRsKShTdHJpbmcoU3RyaW5nKGEpKS5yZXBsYWNlKEpwLENwKSxycChhKSl9LExwPS9bXHgwMFx4MjJceDI3XHgzY1x4M2VdL2csTXA9ZnVuY3Rpb24oYSl7cmV0dXJuIHhtKFN0cmluZyhhKSxmdW5jdGlvbigpe3JldHVybiIifSkucmVwbGFjZSh0cCwiJmx0OyIpfSxQPWZ1bmN0aW9uKGEpe3dwKGEsXy5xbCk/KGE9TXAoYS5tYSgpKSxhPVN0cmluZyhhKS5yZXBsYWNlKExwLENwKSk6YT1TdHJpbmcoYSkucmVwbGFjZShKcCxDcCk7cmV0dXJuIGF9LE5wPS9bXHgwMFx4MDktXHgwZCBceDIyXHgyNlx4MjdceDJkXC9ceDNjLVx4M2VgXHg4NVx4YTBcdTIwMjhcdTIwMjldL2csCk9wPS9bXHgwMFx4MDktXHgwZCBceDIyXHgyN1x4MmRcL1x4M2MtXHgzZWBceDg1XHhhMFx1MjAyOFx1MjAyOV0vZyxQcD0vW1x4MDBceDA4LVx4MGRceDIyXHgyNlx4MjdcL1x4M2MtXHgzZVx4NWItXHg1ZFx4N2JceDdkXHg4NVx1MjAyOFx1MjAyOV0vZyxRcD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiIgbnVsbCAiO2lmKHdwKGEsWW8pKXJldHVybiBhLm1hKCk7aWYoYSBpbnN0YW5jZW9mIF8uUGEpcmV0dXJuIF8uUmEoYSkudG9TdHJpbmcoKTtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6cmV0dXJuIiAiK2ErIiAiO2RlZmF1bHQ6cmV0dXJuIiciK1N0cmluZyhTdHJpbmcoYSkpLnJlcGxhY2UoUHAsRXApKyInIn19LFJwPS9bXHgwMFx4MDgtXHgwZFx4MjJceDI2LVx4MmFcL1x4M2EtXHgzZUBcXFx4N2JceDdkXHg4NVx4YTBcdTIwMjhcdTIwMjldL2csU3A9L1tceDAwLSBceDIyXHgyNy1ceDI5XHgzY1x4M2VcXFx4N2JceDdkXHg3Zlx4ODVceGEwXHUyMDI4XHUyMDI5XHVmZjAxXHVmZjAzXHVmZjA0XHVmZjA2LVx1ZmYwY1x1ZmYwZlx1ZmYxYVx1ZmYxYlx1ZmYxZFx1ZmYxZlx1ZmYyMFx1ZmYzYlx1ZmYzZF0vZywKVHA9L14oPyFqYXZhc2NyaXB0OikoPzpbYS16MC05Ky4tXSs6fFteJjpcLz8jXSooPzpbXC8/I118JCkpL2ksVXA9ZnVuY3Rpb24oYSl7d3AoYSxabyl8fHdwKGEsJG8pP2E9U3RyaW5nKGEpLnJlcGxhY2UoU3AsSXApOmEgaW5zdGFuY2VvZiBfLkxhPyhhPV8uTmEoYSkudG9TdHJpbmcoKSxhPVN0cmluZyhhKS5yZXBsYWNlKFNwLElwKSk6KGE9U3RyaW5nKGEpLGE9VHAudGVzdChhKT9hLnJlcGxhY2UoU3AsSXApOiJhYm91dDppbnZhbGlkI3pTb3l6Iik7cmV0dXJuIGF9LFZwPS9eW14mOlwvPyNdKig/OltcLz8jXXwkKXxeaHR0cHM/OnxeZmlsZXN5c3RlbTpodHRwcz86fF5mdHA6fF5kYXRhOmltYWdlXC9bYS16MC05Ky1dKztiYXNlNjQsW2EtejAtOStcL10rPSokfF5ibG9iOi9pLFdwPWZ1bmN0aW9uKGEpe3dwKGEsWm8pfHx3cChhLCRvKT9hPVN0cmluZyhhKS5yZXBsYWNlKFNwLElwKTphIGluc3RhbmNlb2YgXy5MYT8oYT1fLk5hKGEpLnRvU3RyaW5nKCksYT1TdHJpbmcoYSkucmVwbGFjZShTcCwKSXApKTooYT1TdHJpbmcoYSksYT1WcC50ZXN0KGEpP2EucmVwbGFjZShTcCxJcCk6ImFib3V0OmludmFsaWQjelNveXoiKTtyZXR1cm4gYX0seXA9L14oPyFvbnxzcmN8KD86YWN0aW9ufGFyY2hpdmV8YmFja2dyb3VuZHxjaXRlfGNsYXNzaWR8Y29kZWJhc2V8Y29udGVudHxkYXRhfGRzeW5jfGhyZWZ8aHR0cC1lcXVpdnxsb25nZGVzY3xzdHlsZXx1c2VtYXApXHMqJCkoPzpbYS16MC05XyQ6LV0qKSQvaSxYcD0vXlthLXpBLVowLTkrXC9fLV0rPXswLDJ9JC8sWXA9ZnVuY3Rpb24oYSl7YT1TdHJpbmcoYSk7cmV0dXJuIFhwLnRlc3QoYSk/YToielNveXoifSxacD1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoWnAsXy5KKTt2YXIgQ209ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFpwO3JldHVybiBHbChiLDMsYSxfLkJqKX07dmFyICRwPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQigkcCxfLkopOyRwLnByb3RvdHlwZS5KYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywyKX07JHAucHJvdG90eXBlLk5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDIsYSl9OyRwLnByb3RvdHlwZS5vYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywzKX07JHAucHJvdG90eXBlLm5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDMsYSl9O3ZhciBhcT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoYXEsXy5KKTt2YXIgYnE9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKGJxLF8uSik7dmFyIGNxPV8uTWooYnEpO3ZhciBkcT1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYX19LGVxPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aC0yO2MrPTMpe3ZhciBkPWIuY2hhckF0KGMrMik7ZD1kPj0iYSI/ZC5jaGFyQ29kZUF0KDApLTg3Ok51bWJlcihkKTtkPWIuY2hhckF0KGMrMSk9PSIrIj9hPj4+ZDphPDxkO2E9Yi5jaGFyQXQoYyk9PSIrIj9hK2QmNDI5NDk2NzI5NTphXmR9cmV0dXJuIGF9LGdxPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1mcS5zcGxpdCgiLiIpLGM9TnVtYmVyKGJbMF0pfHwwLGQ9W10sZT0wLGY9MDtmPGEubGVuZ3RoO2YrKyl7dmFyIGc9YS5jaGFyQ29kZUF0KGYpO2c8MTI4P2RbZSsrXT1nOihnPDIwNDg/ZFtlKytdPWc+PjZ8MTkyOigoZyY2NDUxMik9PTU1Mjk2JiZmKzE8YS5sZW5ndGgmJihhLmNoYXJDb2RlQXQoZisxKSY2NDUxMik9PTU2MzIwPyhnPTY1NTM2KygoZyYxMDIzKTw8MTApKyhhLmNoYXJDb2RlQXQoKytmKSYxMDIzKSxkW2UrK109Cmc+PjE4fDI0MCxkW2UrK109Zz4+MTImNjN8MTI4KTpkW2UrK109Zz4+MTJ8MjI0LGRbZSsrXT1nPj42JjYzfDEyOCksZFtlKytdPWcmNjN8MTI4KX1hPWM7Zm9yKGU9MDtlPGQubGVuZ3RoO2UrKylhKz1kW2VdLGE9ZXEoYSwiKy1hXis2Iik7YT1lcShhLCIrLTNeK2IrLWYiKTthXj1OdW1iZXIoYlsxXSl8fDA7YTwwJiYoYT0oYSYyMTQ3NDgzNjQ3KSsyMTQ3NDgzNjQ4KTtiPWElMUU2O3JldHVybiBiLnRvU3RyaW5nKCkrIi4iKyhiXmMpfSxocT1mdW5jdGlvbigpe3ZhciBhPWRxKFN0cmluZy5mcm9tQ2hhckNvZGUoMTE2KSksYj1kcShTdHJpbmcuZnJvbUNoYXJDb2RlKDEwNykpO2E9W2EoKSxhKCldO2FbMV09YigpO3JldHVybiBhLmpvaW4oIiIpfTt2YXIgaXE9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKGlxLF8uSik7dmFyIGpxPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihqcSxfLkopO3ZhciBrcT1fLk1qKGpxKTt2YXIgbHE9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKGxxLF8uSik7dmFyIE9uPSIiLG1xPSJwcm9kIixucT0iIixvcT0iZW4iLEFuPSIiLHBxPW5ldyBqcSxxcT0hMSxycT1uZXcgRGF0ZSxzcT17fSxCbj0wLHRxPSJ0ZSIsZnE9IiIsdXE9IiIsdnE9Imh0dHBzOi8vIix3cT0iIix4cT0iIix5cT0iIix6cT0iIixBcT0iIixCcT0iIixDcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIixEcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl82OHgyOGRwLnBuZyIsRXE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9wcm9kdWN0LzF4L3RyYW5zbGF0ZV8yNGRwLnBuZyIsRnE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNDJ4MTZkcC5wbmciLEdxPSJodHRwczovL3RyYW5zbGF0ZS5nb29nbGUuY29tIixIcT0iIixJcT0iIixKcT0iIixLcT0KZnVuY3Rpb24oKXtIcT0iLy8iK0JxKyIvdHJhbnNsYXRlX3N1Z2dlc3Rpb24/Y2xpZW50PSIrdHE7SXE9Ii8vIit1cSsiL3RyYW5zbGF0ZV92b3Rpbmc/Y2xpZW50PSIrdHE7SnE9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vc3VwcG9ydC90cmFuc2xhdGUiKyhvcT09ImVuIj8iIjoiI2dvb2d0cmFucy9lbi8iK29xKX0sTHE9ZnVuY3Rpb24oYSl7T249d2luZG93Lmdvb2dsZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlLnZ8fCIiO21xPWEuX2NlbnZ8fCJwcm9kIjtucT1hLlVnfHwiIjtvcT1hLl9jbHx8ImVuIjtBbj1hLl9jdWM7cHE9YS5fY2VmP2txKGEuX2NlZik6bmV3IGpxO3FxPWEuX2NuYWQ7cnE9YS5fY2VzdHx8bmV3IERhdGU7c3E9YS5fY25hbHx8e307Qm49YS5fY2FtPT0ibGliIj8xOjA7dHE9KGEuX2NhY3x8InRlIikrKEJuPT0xPyJfbGliIjoiIik7ZnE9ZnVuY3Rpb24oKXtmdW5jdGlvbiBiKGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBlfX0KdmFyIGM9U3RyaW5nLmZyb21DaGFyQ29kZSgxMDcpLGQ9YihTdHJpbmcuZnJvbUNoYXJDb2RlKDExNikpO2M9YihjKTtkPVtkKCksZCgpXTtkWzFdPWMoKTtyZXR1cm4gYVsiX2MiK2Quam9pbihjKCkpXXx8IiJ9KCk7dXE9YS5fcGFofHwiIjt2cT1hLl9wYXN8fCJodHRwczovLyI7d3E9YS5fcGJpfHwiIjt4cT1hLl9wY2l8fCIiO3lxPWEuX3BsbGF8fCIiO3pxPWEuX3BsaXx8IiI7QXE9YS5fcHN8fCIiO0JxPWEuX3B1aHx8IiI7Q3E9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vaW1hZ2VzL2NsZWFyZG90LmdpZiI7RHE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNjh4MjhkcC5wbmciO0VxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvcHJvZHVjdC8xeC90cmFuc2xhdGVfMjRkcC5wbmciO0ZxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvZ29vZ2xlbG9nby8xeC9nb29nbGVsb2dvX2NvbG9yXzQyeDE2ZHAucG5nIjsKR3E9Imh0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20iO0txKCl9O3dpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fY29uc3Q/THEod2luZG93Lmdvb2dsZS50cmFuc2xhdGUuX2NvbnN0KTpMcSh7X2NhYzoiIixfY2FtOiIiLF9jZWY6IiIsX2Nlc3Q6bmV3IERhdGUsX2NlbnY6IiIsVWc6IiIsX2NnYWs6IiIsX2NqbGM6IiIsX2NsOiIiLF9jbGw6IiIsX2N1YzoiIixfY25hZDohMSxfY25hbDp7fSxDazoiIixfcGFoOiIiLF9wYXM6IiIsX3BiaToiIixfcGNpOiIiLF9waGY6IiIsX3BsaToiIixfcGxsYToiIixfcG1pOiIiLF9wczoiIixfcHRhOiIiLF9wdWg6IiJ9KTt2YXIgTXE9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9YTt0aGlzLm89Yn0sQm09ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IFR5cGVFcnJvcigicWFgIitiKyJgIithLmcrImAiK2EubysiYCIrdHlwZW9mIGEubyl9O01xLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3ZhciBhPXRoaXMubztpZihhPT1udWxsKWE9bnVsbDtlbHNlIGlmKHR5cGVvZiBhIT09InN0cmluZyIpdGhyb3cgQm0odGhpcywic3RyaW5nIik7aWYoYT09PW51bGwpdGhyb3cgRXJyb3IoInBhYCIrdGhpcy5nKTtyZXR1cm4gYX07CnZhciBBbT1mdW5jdGlvbigpe3ZhciBhPWE9PT12b2lkIDA/d2luZG93OmE7YT1hPT09dm9pZCAwP3dpbmRvdzphO2E9YT09PXZvaWQgMD93aW5kb3c6YTthPWEuV0laX2dsb2JhbF9kYXRhO2E9bmV3IE1xKCJ4V3V1R2MiLGEmJiJ4V3V1R2MiaW4gYT9hLnhXdXVHYzpudWxsKTt2YXIgYj1bXSxjPU5xKGEpO3JldHVybiBjPT09bnVsbD9PcShhLGIpOmN9LE5xPWZ1bmN0aW9uKGEpe3ZhciBiPWEubztpZihiPT1udWxsKXJldHVybiBudWxsO0FycmF5LmlzQXJyYXkoYil8fCh0eXBlb2YgYiE9PSJzdHJpbmciP2I9W2JdOihiPWIudHJpbSgpLGI9Yj09IiI/W106Yi5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYy50cmltKCl9KSkpO3JldHVybiBPcShhLGIpfSxPcT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZysiWyI7cmV0dXJuIEFycmF5LmZyb20oYixmdW5jdGlvbihkLGUpe3JldHVybiBuZXcgTXEoYytlKyJdIixkKX0pfTsKTXEucHJvdG90eXBlLm9iamVjdD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLm87aWYoYj09bnVsbCl7aWYoYT09PXZvaWQgMCl0aHJvdyBFcnJvcigicGFgIit0aGlzLmcpO3JldHVybiBhfWlmKHR5cGVvZiBiPT09Im9iamVjdCImJmIuY29uc3RydWN0b3I9PT1PYmplY3Qpe2E9e307dmFyIGM9dGhpcy5nKyIuIixkO2ZvcihkIGluIGIpYVtkXT1uZXcgTXEoYytkLGJbZF0pO3JldHVybiBhfXRocm93IEJtKHRoaXMsIm9iamVjdCIpO307dmFyIFBxPWZ1bmN0aW9uKCl7dmFyIGE7dGhpcy5nPWE9YT09PXZvaWQgMD9EbSgpOmF9O1BxLnByb3RvdHlwZS5sb2c9ZnVuY3Rpb24oYSl7Xy5hbCh0aGlzLmcsYSl9O3ZhciBRcT1uZXcgUHE7dmFyIFJxPUVtKCJpbml0aWFsaXplZCIpLFNxPUVtKCJpbml0aWF0ZWQiKSxUcT1FbSgicmVzdG9yZWQiKSxVcT1FbSgicGFnZV9sb2FkX3RvX2luaXRpYWxpemVkIiksVnE9RW0oImluaXRpYWxpemF0aW9uX3RvX3RyYW5zbGF0aW9uX3RyaWdnZXJlZCIpO3ZhciBXcT1mdW5jdGlvbihhKXt2YXIgYj0ieGIiO2lmKGEueGImJmEuaGFzT3duUHJvcGVydHkoYikpcmV0dXJuIGEueGI7Yj1uZXcgYTtyZXR1cm4gYS54Yj1ifTsvKgoKTWF0aC51dWlkLmpzICh2MS40KQpodHRwOi8vd3d3LmJyb29mYS5jb20KbWFpbHRvOnJvYmVydEBicm9vZmEuY29tCkNvcHlyaWdodCAoYykgMjAxMCBSb2JlcnQgS2llZmZlcgpEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNlbnNlcy4KKi8KdmFyIFhxPSIwMTIzNDU2Nzg5QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIuc3BsaXQoIiIpO2Zvcih2YXIgWXEsWnE9QXJyYXkoMzYpLCRxPTAsYXIsYnI9MDticjwzNjticisrKWJyPT04fHxicj09MTN8fGJyPT0xOHx8YnI9PTIzP1pxW2JyXT0iLSI6YnI9PTE0P1pxW2JyXT0iNCI6KCRxPD0yJiYoJHE9MzM1NTQ0MzIrTWF0aC5yYW5kb20oKSoxNjc3NzIxNnwwKSxhcj0kcSYxNSwkcT4+PTQsWnFbYnJdPVhxW2JyPT0xOT9hciYzfDg6YXJdKTtZcT1acS5qb2luKCIiKTsKdmFyIGNyPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9YT1hPT09dm9pZCAwP1lxOmE7dGhpcy5FYj1iPT09dm9pZCAwPyIiOmI7dGhpcy5GYj1jPT09dm9pZCAwPyIiOmN9LGdyPWZ1bmN0aW9uKGEpe3ZhciBiPWRyKGEsNyk7ZXIoYSxiKTtmcihiLDcpfSxocj1mdW5jdGlvbihhLGIpe3ZhciBjPWIubGI9PT12b2lkIDA/MDpiLmxiO3ZhciBkPWIuTWY9PT12b2lkIDA/MDpiLk1mO3ZhciBlPWIuZ2c9PT12b2lkIDA/MDpiLmdnO3ZhciBmPWIuTGY9PT12b2lkIDA/MDpiLkxmO2I9ZHIoYSw4KTtlcihhLGIpO2E9bmV3IFJuO2M9Xy5payhhLDEsYyk7ZD1fLmlrKGMsMyxkKTtlPV8uaWsoZCwyLGUpO2U9Xy5payhlLDQsZik7Zj1VbihiKTtfLkwoZiw2LGUpO01hdGgucmFuZG9tKCk+PS4wMDV8fChiPV8uTGsoTm4oOCksXy5XaihiKSksUXEubG9nKGIpKX0sZHI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgXy5sbDtjPV8uVGooYyw1MCxvcSk7dmFyIGQ9bmV3IFRuO2I9Xy5rayhkLDEsYik7CmI9Xy5UaihiLDIsdHEpO2E9Xy5UaihiLDMsYS5nKTtyZXR1cm4gXy5MKGMsMTEyLGEpfSxmcj1mdW5jdGlvbihhLGIpe2E9Xy5MayhObihiKSxfLldqKGEpKTtRcS5sb2coYSl9LGVyPWZ1bmN0aW9uKGEsYil7Yi5OYShhLkViKTtiLm5hKGEuRmIpfTt2YXIgaXI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9MDtjPGEubGVuZ3RoOysrYyliW2FbY11dPSEwO3JldHVybiBifSxqcj1mdW5jdGlvbihhKXt0aGlzLmg9YT9bYV06W107dGhpcy5nPVswXTt0aGlzLmo9ITF9O2pyLnByb3RvdHlwZS5wYXNzZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qfTtqci5wcm90b3R5cGUucmVnaXN0ZXI9ZnVuY3Rpb24oYSl7aWYodGhpcy5qKXJldHVybiBhfHxmdW5jdGlvbigpe307dGhpcy5nLnB1c2goMCk7dmFyIGI9dGhpcy5nLmxlbmd0aC0xO3JldHVybigwLF8ueSkoZnVuY3Rpb24oKXt0aGlzLmdbYl0rKzthJiZhLmFwcGx5KG51bGwsYXJndW1lbnRzKTtrcih0aGlzKX0sdGhpcyl9Owpqci5wcm90b3R5cGUuZGVsYXk9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuaj9hOigwLF8ueSkoZnVuY3Rpb24oKXtpZih0aGlzLmopYS5hcHBseShudWxsLGFyZ3VtZW50cyk7ZWxzZXt2YXIgYj1hcmd1bWVudHM7dGhpcy5oLnB1c2goZnVuY3Rpb24oKXthLmFwcGx5KG51bGwsYil9KX19LHRoaXMpfTtqci5wcm90b3R5cGUuZmluaXNoPWZ1bmN0aW9uKCl7dGhpcy5nWzBdPTE7a3IodGhpcyl9Owp2YXIga3I9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmcubGVuZ3RoOysrYilpZihhLmdbYl09PTApcmV0dXJuO2Euaj0hMDtmb3IoYj0wO2I8YS5oLmxlbmd0aDsrK2Ipe3ZhciBjPWEuaFtiXTthLmhbYl09bnVsbDtjLmNhbGwoKX1hLmg9W107YS5nPVtdfSxscj1mdW5jdGlvbihhKXt0aGlzLmo9YTt0aGlzLmg9dGhpcy5nPSExfSxtcj1mdW5jdGlvbihhLGIpe3JldHVybigwLF8ueSkoZnVuY3Rpb24oKXtiJiZiLmFwcGx5KG51bGwsYXJndW1lbnRzKTt0aGlzLmg/dGhpcy5nfHwodGhpcy5qLmNhbGwoKSx0aGlzLmc9ITApOnRoaXMuZz0hMH0sYSl9O2xyLnByb3RvdHlwZS5maW5pc2g9ZnVuY3Rpb24oKXt0aGlzLmh8fCh0aGlzLmg9ITAsdGhpcy5nJiZ0aGlzLmouY2FsbCgpKX07dmFyIG5yPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9Yjt0aGlzLkI9YTt0aGlzLkE9Y3x8MDt0aGlzLmo9dGhpcy5oPSExfSxvcj1mdW5jdGlvbihhKXthLmh8fGEubygpfTsKbnIucHJvdG90eXBlLm89ZnVuY3Rpb24oKXsodGhpcy5oPSh0aGlzLmo9ISF0aGlzLkIuY2FsbCgpKXx8LS10aGlzLkE8PTApPyh0aGlzLmcuY2FsbChudWxsLHRoaXMuaiksdGhpcy5sPTApOnRoaXMubD13aW5kb3cuc2V0VGltZW91dCgoMCxfLnkpKHRoaXMubyx0aGlzKSwzMCl9O25yLnByb3RvdHlwZS5jYW5jZWw9ZnVuY3Rpb24oKXt0aGlzLmwmJndpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5sKTt0aGlzLmg9ITA7dGhpcy5nLmNhbGwobnVsbCx0aGlzLmopfTsKdmFyIHByPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7YS5kaXNwYXRjaEV2ZW50KGIpfX0scXI9ZnVuY3Rpb24oYSl7YT1fLkFjKGEpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgiXyIsIi0iKTtpZihhPT0iemgtY24iKXJldHVybiJ6aC1DTiI7aWYoYT09InpoLXR3IilyZXR1cm4iemgtVFciO3ZhciBiPWEuaW5kZXhPZigiLSIpO2E9Yj49MD9hLnN1YnN0cmluZygwLGIpOmE7cmV0dXJuIGE9PSJ6aCI/InpoLUNOIjphfSxycj1mdW5jdGlvbihhKXt2YXIgYj1bXSxjO2ZvcihjIGluIGEpaWYoYVtjXSE9PU9iamVjdC5wcm90b3R5cGVbY10pe3ZhciBkPV8uR2IoYyk7aWYoXy5vYyhhW2NdKT09ImFycmF5Iilmb3IodmFyIGU9MDtlPGFbY10ubGVuZ3RoOysrZSliLnB1c2goZCsiPSIrXy5HYihhW2NdW2VdKSk7ZWxzZSBiLnB1c2goZCsiPSIrXy5HYihhW2NdKSl9cmV0dXJuIGIuam9pbigiJiIpfSxRbT1mdW5jdGlvbihhLGIpe2I9Ynx8e307Yi5uY2E9YTtiLmNsaWVudD10cTsKT24mJihiLmxvZ2xkPSJ2IitPbik7dmFyIGM9bmV3IEltYWdlO2Muc3JjPSIvLyIrQnErIi9nZW4yMDQ/IitycihiKTtjLm9ubG9hZD1mdW5jdGlvbigpe2Mub25sb2FkPW51bGx9fSx0cj1mdW5jdGlvbihhLGIpe2lmKChfLlNjfHxfLlJjKSYmd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lIT1kb2N1bWVudC5kb21haW4pe3NyPXNyP3NyKzE6MTt2YXIgYz0iZiIrc3IrIl8iK0RhdGUubm93KCkudG9TdHJpbmcoMzYpO3dpbmRvd1tjXT1mdW5jdGlvbigpe3dpbmRvd1tjXT12b2lkIDA7YS5zcmM9IiMiO2ImJndpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YigpfSwwKX07YS5zcmM9ImphdmFzY3JpcHQ6dm9pZChkb2N1bWVudC53cml0ZShcIjxzY3JpcHQ+ZG9jdW1lbnQuZG9tYWluPSciK2RvY3VtZW50LmRvbWFpbisiJztwYXJlbnRbJyIrYysiJ10oKTtceDNjL3NjcmlwdD5cIikpIn1lbHNlIGImJmIoKX0sc3IsdXI9ZnVuY3Rpb24oKXt2YXIgYT17fTt0cnl7Zm9yKHZhciBiIGluIE9iamVjdC5wcm90b3R5cGUpe3ZhciBjPQpPYmplY3QucHJvdG90eXBlW2JdO2RlbGV0ZSBPYmplY3QucHJvdG90eXBlW2JdO2FbYl09Y319Y2F0Y2goZCl7cmV0dXJue319cmV0dXJuIGF9LHZyPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYiBpbiBhKU9iamVjdC5wcm90b3R5cGVbYl09YVtiXX0sd3I9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiIGluIGEpaWYoYVtiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0pcmV0dXJuITE7cmV0dXJuITB9LHhyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEhPSJhdXRvIiYmYSE9InpoLUNOIiYmYT09Yn0seXI9ZnVuY3Rpb24oKXt2YXIgYT13aW5kb3cubG9jYXRpb24uaGFzaC5tYXRjaCgvZ29vZ2xlXC50cmFuc2xhdGVcLmVsZW1lbnRcLnNwPShbXiZdKykvKTtyZXR1cm4gYSYmYVsxXT9hWzFdOm51bGx9O3ZhciBQbT1udWxsLHpyPW51bGwsQXI9ZnVuY3Rpb24oKXt9O0FyLnByb3RvdHlwZS5hdHRhY2g9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZCBpbiBjKWNbZF0hPT1PYmplY3QucHJvdG90eXBlW2RdJiYoYltkXT10eXBlb2YgY1tkXT09PSJmdW5jdGlvbiI/Y1tkXTpfLlpqKFJtLGEsTnVtYmVyKGNbZF0pKSl9O3ZhciBDcj1mdW5jdGlvbigpe1BtJiZCcigpO1BtPVtdO3pyPV8ueCh3aW5kb3csInBhZ2VoaWRlIixmdW5jdGlvbigpe0JyKCl9KX0sQnI9ZnVuY3Rpb24oKXt6ciYmKF8uVmQoenIpLHpyPW51bGwpO1BtJiZQbS5sZW5ndGgmJlFtKFBtLmpvaW4oIiIpKTtQbT1udWxsfSxEcj1uZXcgQXI7dmFyIEVyPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihFcixfLkopO3ZhciBUbT1fLktpKEVyKTt2YXIgU207dmFyIEZyPWZ1bmN0aW9uKGEpe3RoaXMudXJsPWE7dGhpcy50aW1lb3V0PS0xO3RoaXMuaj10aGlzLmg9ImNhbGxiYWNrIjt0aGlzLmc9dGhpcy53Yj1udWxsfSxKcj1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2EuZz1HbygpO3ZhciBjPW5ldyBabChhLnVybCksZD1uZXcgTWFwO2EuaiYmZC5zZXQoYS5qLGEuaCk7Yy5nLmV4dGVuZChYbyhiKSxkKTtHcihhKS50aGVuKGZ1bmN0aW9uKCl7SHIoYSxjLnRvU3RyaW5nKCkpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBhLmcucHJvbWlzZX0pLnRoZW4oZnVuY3Rpb24oKXtJcihhKX0sZnVuY3Rpb24oKXtJcihhKX0pO2EudGltZW91dD4wJiYoYS5sPXNldFRpbWVvdXQoZnVuY3Rpb24oKXthLmcucmVqZWN0KEVycm9yKCJyYSIpKX0sYS50aW1lb3V0KSk7cmV0dXJuIGEuZy5wcm9taXNlfSxIcj1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBNZXNzYWdlQ2hhbm5lbDthLndiLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2Uoe3VybDpiLApjYWxsYmFja05hbWU6YS5ofSwiKiIsW2MucG9ydDJdKTtjLnBvcnQxLm9ubWVzc2FnZT1mdW5jdGlvbihkKXt2YXIgZT17fTthLmwhPT12b2lkIDAmJihjbGVhclRpbWVvdXQoYS5sKSxhLmw9dm9pZCAwKTtkLmRhdGE9PT12b2lkIDAmJmEuZy5yZWplY3QoRXJyb3IoInNhIikpO3R5cGVvZiBkLmRhdGEhPT0ic3RyaW5nIiYmYS5nLnJlamVjdChFcnJvcigidGEiKSk7dHJ5e2U9SlNPTi5wYXJzZShkLmRhdGEpfWNhdGNoKGYpe2EuZy5yZWplY3QoRXJyb3IoInVhYCIrZi5tZXNzYWdlKSl9YS5nLnJlc29sdmUoZSl9fSxHcj1mdW5jdGlvbihhKXt2YXIgYj1HbygpLGM9Xy53ZChkb2N1bWVudCwiSUZSQU1FIik7aWYoIWMuc2FuZGJveCl0aHJvdyBFcnJvcigidmEiKTtjLnNhbmRib3gudmFsdWU9ImFsbG93LXNjcmlwdHMiO2Muc3R5bGUuZGlzcGxheT0ibm9uZSI7YS53Yj1jO2E9Vm0oKTthPVNsKFtfLm1sKCI8IURPQ1RZUEUgaHRtbD4iKSxZbChRbChhKSldKTtjLnNyY2RvYz1fLmtqKGEpOwphPUZsKCJkYXRhOnRleHQvaHRtbDtjaGFyc2V0PVVURi04O2Jhc2U2NCwiK2J0b2EoXy5raihhKS50b1N0cmluZygpKSk7Yy5zcmM9Xy5OYShhKS50b1N0cmluZygpO2MuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtyZXR1cm4gYi5yZXNvbHZlKGMpfSwhMSk7Yy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZnVuY3Rpb24oZCl7Yi5yZWplY3QoZCBpbnN0YW5jZW9mIEVycm9yP2Q6RXJyb3IoU3RyaW5nKGQpKSl9LCExKTtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoYyk7cmV0dXJuIGIucHJvbWlzZX0sSXI9ZnVuY3Rpb24oYSl7YS53YiE9PW51bGwmJihkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoYS53YiksYS53Yj1udWxsKX07dmFyIEtyPWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5nPW5ldyBabChhKTtpZihiKWZvcih2YXIgYyBpbiBiKWJbY10hPT1PYmplY3QucHJvdG90eXBlW2NdJiZ0aGlzLmcuZy5zZXQoYyxiW2NdKX07Xy5CKEtyLF8udSk7S3IucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuITB9O0tyLnByb3RvdHlwZS5TYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlRhKCl9O0tyLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKCl7cmV0dXJuIF8uWWkobnVsbCl9O0tyLnByb3RvdHlwZS5jYW5jZWw9ZnVuY3Rpb24oKXt9O3ZhciBMcj1mdW5jdGlvbihhLGIsYyl7S3IuY2FsbCh0aGlzLGEsYik7YT10aGlzLmg9bmV3IEZyKHRoaXMuZyk7YS5oPSJjYWxsYmFjayI7YS5qPWM9PT12b2lkIDA/ImNhbGxiYWNrIjpjfTtfLkIoTHIsS3IpO0xyLnByb3RvdHlwZS5UYT1mdW5jdGlvbigpe3JldHVybiEwfTsKTHIucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oYSl7cmV0dXJuIEpyKHRoaXMuaCxhKX07THIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbihhKXthLmNhbmNlbCgpfTt2YXIgTXI9ZnVuY3Rpb24oYSxiKXtLci5jYWxsKHRoaXMsYSxiKTt0aGlzLmg9e307dGhpcy5qPTB9O18uQihNcixLcik7TXIucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuITB9OwpNci5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9dXIoKSxkPSsrdGhpcy5qLGU9e30sZj17fTsicSJpbiBhJiYoZi5xPWEucSxkZWxldGUgYS5xKTtlLmhhPW5ldyBfLldmO3RoaXMuZy5oLmVuZHNXaXRoKCIuY29ycC5nb29nbGUuY29tIikmJihlLmhhLkM9ITApO3ZhciBnPW5ldyBfLm9lKGZ1bmN0aW9uKGgsayl7Xy54KGUuaGEsImNvbXBsZXRlIixmdW5jdGlvbigpe2lmKCFlLlJlKXtpZihfLmdnKGUuaGEpKXt2YXIgbD1fLmlnKGUuaGEpO05yKGIsZCk7cmV0dXJuIGgobCl9Yi54aSgpO2w9Xy5pZyhlLmhhKTtOcihiLGQpO3JldHVybiBrKGwpfX0pO18ueChlLmhhLCJ0aW1lb3V0IixmdW5jdGlvbigpe2lmKCFlLlJlKXJldHVybiBiLnppKCksTnIoYixkKSxrKCl9KX0pO2UuaGEuc2VuZCh0aGlzLmcudG9TdHJpbmcoKSsiJiIrcnIoYSksIlBPU1QiLHJyKGYpLHsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0pOwp0aGlzLmhbZF09ZTt2cihjKTtyZXR1cm4gZ307TXIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLmhbYV07YiYmKGIuUmU9ITAsTnIodGhpcyxhKSl9O3ZhciBOcj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuaFtiXTtjJiYoYy5oYSYmKGMuaGEuZGlzcG9zZSgpLGMuaGE9bnVsbCksZGVsZXRlIGEuaFtiXSl9O01yLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7S3IucHJvdG90eXBlLk0uY2FsbCh0aGlzKTtmb3IodmFyIGEgaW4gdGhpcy5oKXRoaXMuY2FuY2VsKGEpfTtEci5hdHRhY2goMTcxNzAsTXIucHJvdG90eXBlLHt6aToxLHhpOjJ9KTt2YXIgT3I9ZnVuY3Rpb24oYSxiLGMpe0tyLmNhbGwodGhpcyxhLGMpO3RoaXMuaD1iLnByb3h5SXNTdXBwb3J0ZWQ7dGhpcy5qPWZ1bmN0aW9uKGQsZSxmKXtyZXR1cm4gXy5ZaShiLnByb3h5U2VuZChkLGUsZikpfTt0aGlzLmw9Yi5wcm94eUNhbmNlbH07Xy5CKE9yLEtyKTtPci5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5oKCl9OwpPci5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmoodGhpcy5nLnRvU3RyaW5nKCksYSxiKX07T3IucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbihhKXt0aGlzLmwoYSl9O3ZhciBQcj1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO3RoaXMuaD1hO3RoaXMuZz1iP2I6bnVsbH07Xy5CKFByLF8udSk7UHIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07dmFyIFJyPWZ1bmN0aW9uKGEsYixjLGQpe18udS5jYWxsKHRoaXMpO3ZhciBlO2I/ZT17Y2xpZW50OmJ9OmU9e2Fubm86MyxjbGllbnQ6dHEsZm9ybWF0OiJodG1sIix2OiIxLjAifTtjJiYoZS5zcD1jKTtlLmtleT1hO09uJiYoZS5sb2dsZD0idiIrT24pO3RoaXMuZz1udWxsO3RoaXMuaD17SGY6MzAwfTthPXRoaXMuQT1uZXcgUHIoZSxkKTtiPXZxK3lxO3RoaXMubz1hLmc/bmV3IE9yKGIsYS5nLHtjbGllbnQ6dHF9KTpuZXcgTHIoYix7Y2xpZW50OnRxfSk7YT10aGlzLkE7aWYoYS5nKXtpZighYS5nKXRocm93IEVycm9yKCJ3YSIpO2E9W3t2YTpuZXcgT3IodnErdXErIi90cmFuc2xhdGVfYS90IixhLmcsYS5oKSxjZToxOTAwLElmOjQyOTQ5NjcyOTUsR2Y6LTEsV2Y6MCxLZDohMX1dfWVsc2UgYT1be3ZhOm5ldyBNcih2cSt1cSsiL3RyYW5zbGF0ZV9hL3QiLGEuaCksY2U6MzA3MjAsSWY6NDI5NDk2NzI5NSxHZjotMSxXZjowLEtkOiExfV07dGhpcy5CPW5ldyBRcihhKTt0aGlzLmo9CiExO2ZvcihiPTA7YjxhLmxlbmd0aDsrK2IpdGhpcy5qPXRoaXMuanx8YVtiXS52YS5UYSgpO3RoaXMuanx8dGhpcy5uaSgpfTtfLkIoUnIsXy51KTtSci5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbihhKXt0aGlzLkN8fCh0aGlzLkM9ITAsdGhpcy5CLnN0YXJ0KCgwLF8ueSkoZnVuY3Rpb24oYil7YiYmKHRoaXMuZz1iLHRoaXMuaC52YT1iLnZhKTthKCl9LHRoaXMpKSl9O1JyLnByb3RvdHlwZS5UYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmp9O1JyLnByb3RvdHlwZS5TYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmchPT1udWxsJiZ0aGlzLmcudmEhPT1udWxsJiZ0aGlzLmcudmEuU2EoKX07CnZhciBTcj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9e3E6Yy5zdWJzdHJpbmcoMCxhLmguSGYpLHNsOiJhdXRvIix0bDoiZW4ifTtyZXR1cm4gbmV3IF8ub2UoZnVuY3Rpb24oZSxmKXthLmgudmEuc2VuZChkLGIpLnRoZW4oZnVuY3Rpb24oZyl7dHJ5e3ZhciBoPUpTT04ucGFyc2UoZyk7ZShoJiZoWzFdfHxudWxsKX1jYXRjaChrKXtlKG51bGwpfX0sZnVuY3Rpb24oZyl7cmV0dXJuIGYoZ3x8bnVsbCl9KX0pfTsKUnIucHJvdG90eXBlLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe3ZhciBrPXRoaXMsbD17cTpiLHNsOmMsdGw6ZH07bC50Yz1lO2YmJihsLmN0dD0xKTtnJiYobC5kb209MSk7aCYmKGwuc3I9MSk7bFtocSgpXT1ncShiLmpvaW4oIiIpKTtyZXR1cm4gbmV3IF8ub2UoZnVuY3Rpb24obixxKXtrLmcudmEuc2VuZChsLGEpLnRoZW4oZnVuY3Rpb24ocCl7aWYocCl7aWYodHlwZW9mIHAhPT0ib2JqZWN0Iil0cnl7cD1KU09OLnBhcnNlKHApfWNhdGNoKEEpe2subWkoKTtxKCk7cmV0dXJufWlmKF8ub2MocCkhPSJhcnJheSIpdmFyIHI9W1twLDIwMF1dO2Vsc2UgaWYocC5sZW5ndGg9PTImJl8ub2MocFswXSkhPSJhcnJheSImJl8ub2MocFsxXSkhPSJhcnJheSIpcj1bW3BbMF0sMjAwLHBbMV1dLFtwWzFdLDIwMCxwWzFdXV07ZWxzZXtyPVtdO2Zvcih2YXIgdD0wO3Q8cC5sZW5ndGg7Kyt0KXJbdF09Xy5vYyhwW3RdKSE9ImFycmF5Ij9bcFt0XSwyMDBdOltwW3RdWzBdLAoyMDAscFt0XVsxXV19bihyKX1lbHNlIHEoKX0pfSl9O3ZhciBUcj1mdW5jdGlvbihhLGIpe2IgaW5zdGFuY2VvZiBfLm9lP2IudGhlbihmdW5jdGlvbihjKXthLmcudmEuY2FuY2VsKGMpfSk6YS5nLnZhLmNhbmNlbChiKX07UnIucHJvdG90eXBlLmw9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLktkP3RoaXMuZy5jZS0obmV3IFpsKHRoaXMuZy52YS5nKSkudG9TdHJpbmcoKS5sZW5ndGg6dGhpcy5nLmNlfTtSci5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMuZyYmKHRoaXMuZy52YS5kaXNwb3NlKCksdGhpcy5nLnZhPW51bGwpO3RoaXMuaC52YT1udWxsO3RoaXMuby5kaXNwb3NlKCk7dGhpcy5vPW51bGx9O0RyLmF0dGFjaCg3MzYxLFJyLnByb3RvdHlwZSx7bmk6ZnVuY3Rpb24oKXtRbSgidGVfYXUiKX19KTtEci5hdHRhY2goNDc1MDQsUnIucHJvdG90eXBlLHttaTpmdW5jdGlvbigpe1FtKCJ0ZV9hZmJyIil9fSk7CnZhciBRcj1mdW5jdGlvbihhKXt0aGlzLmg9YX07UXIucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKGEpe3RoaXMuZz1hO3RoaXMuaj0wO1VyKHRoaXMpfTt2YXIgVXI9ZnVuY3Rpb24oYSl7aWYoYS5qPj1hLmgubGVuZ3RoKWEuZyhudWxsKTtlbHNle3ZhciBiPWEuaFthLmorK107Yi5JaT9vcihuZXcgbnIoKDAsXy55KShiLnZhLlNhLGIudmEpLCgwLF8ueSkoZnVuY3Rpb24oYyl7Yz90aGlzLmcoYik6VXIodGhpcyl9LGEpLGIuSWkpKTpiLnZhLlNhKCk/YS5nKGIpOlVyKGEpfX07dmFyIFZyPWlyKCJBIEFCQlIgQUNST05ZTSBCIEJBU0VGT05UIEJETyBCSUcgQ0lURSBERk4gRU0gRk9OVCBJIElOUFVUIE5PQlIgTEFCRUwgUSBSVCBTIFNNQUxMIFNQQU4gU1RSSUtFIFNUUk9ORyBTVUIgU1VQIFRFWFRBUkVBIFRUIFUgVkFSIi5zcGxpdCgiICIpKSxXcj1pcigiQVBQTEVUIEFSRUEgQkFTRSBGUkFNRSBGUkFNRVNFVCBIUiBMSU5LIE1FVEEgTk9GUkFNRVMgTk9TQ1JJUFQgSU5QVVQgVEVYVEFSRUEgVElUTEUiLnNwbGl0KCIgIikpLFhyPWlyKCJCUiBDT0RFIElNRyBLQkQgTUFQIE9CSkVDVCBQQVJBTSBSUCBTQ1JJUFQgU1RZTEUgV0JSIHN2ZyIuc3BsaXQoIiAiKSksWXI9aXIoWyJzdWJtaXQiLCJidXR0b24iXSk7WG0ucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oKXtyZXR1cm4gWnJ9O3ZhciBacj17ZG9uZTohMCx2YWx1ZTp2b2lkIDB9O1htLnByb3RvdHlwZS5vPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3ZhciBhcz1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMuaD0hIWI7dGhpcy5ub2RlPW51bGw7dGhpcy5nPTA7dGhpcy5qPSExO3RoaXMubD0hYzthJiYkcih0aGlzLGEsZCk7dGhpcy5kZXB0aD1lIT12b2lkIDA/ZTp0aGlzLmd8fDA7dGhpcy5oJiYodGhpcy5kZXB0aCo9LTEpfTtfLkcoYXMsWG0pO3ZhciAkcj1mdW5jdGlvbihhLGIsYyxkKXtpZihhLm5vZGU9YilhLmc9dHlwZW9mIGM9PT0ibnVtYmVyIj9jOmEubm9kZS5ub2RlVHlwZSE9MT8wOmEuaD8tMToxO3R5cGVvZiBkPT09Im51bWJlciImJihhLmRlcHRoPWQpfSxicz1mdW5jdGlvbihhKXt2YXIgYj1hLmg/LTE6MTthLmc9PWImJihhLmc9YiotMSxhLmRlcHRoKz1hLmcqKGEuaD8tMToxKSl9Owphcy5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe2lmKHRoaXMuail7aWYoIXRoaXMubm9kZXx8dGhpcy5sJiZ0aGlzLmRlcHRoPT0wKXJldHVybiBacjt2YXIgYT10aGlzLm5vZGU7dmFyIGI9dGhpcy5oPy0xOjE7aWYodGhpcy5nPT1iKXt2YXIgYz10aGlzLmg/YS5sYXN0Q2hpbGQ6YS5maXJzdENoaWxkO2M/JHIodGhpcyxjKTokcih0aGlzLGEsYiotMSl9ZWxzZShjPXRoaXMuaD9hLnByZXZpb3VzU2libGluZzphLm5leHRTaWJsaW5nKT8kcih0aGlzLGMpOiRyKHRoaXMsYS5wYXJlbnROb2RlLGIqLTEpO3RoaXMuZGVwdGgrPXRoaXMuZyoodGhpcy5oPy0xOjEpfWVsc2UgdGhpcy5qPSEwO3JldHVybihhPXRoaXMubm9kZSk/e3ZhbHVlOmEsZG9uZTohMX06WnJ9O2FzLnByb3RvdHlwZS5lcXVhbHM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubm9kZT09dGhpcy5ub2RlJiYoIXRoaXMubm9kZXx8YS5nPT10aGlzLmcpfTsKYXMucHJvdG90eXBlLnNwbGljZT1mdW5jdGlvbihhKXt2YXIgYj10aGlzLm5vZGUsYz10aGlzLmg/MTotMTt0aGlzLmc9PWMmJih0aGlzLmc9YyotMSx0aGlzLmRlcHRoKz10aGlzLmcqKHRoaXMuaD8tMToxKSk7dGhpcy5oPSF0aGlzLmg7YXMucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzKTt0aGlzLmg9IXRoaXMuaDtjPV8ucWEoYXJndW1lbnRzWzBdKT9hcmd1bWVudHNbMF06YXJndW1lbnRzO2Zvcih2YXIgZD1jLmxlbmd0aC0xO2Q+PTA7ZC0tKXhvKGNbZF0sYik7Xy5BZChiKX07dmFyIGRzPWZ1bmN0aW9uKGEsYil7dGhpcy5sPSExO3RoaXMuaj1fLlNjP1tdOm51bGw7dGhpcy5oPVtdO3RoaXMuZG9uZT0hMTtmb3IodGhpcy5nPW5ldyBhcyhhLCExLGIsYS5ub2RlVHlwZT09PTM/MDoxLDEpO2E9YS5wYXJlbnROb2RlOyljcyh0aGlzLGEsITApO3RoaXMuaC5wdXNoKCExKTt0aGlzLmgucmV2ZXJzZSgpO2ZvcihhPTE7YTx0aGlzLmgubGVuZ3RoOysrYSl0aGlzLmhbYV09PW51bGwmJih0aGlzLmhbYV09dGhpcy5oW2EtMV0pfSxjcz1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7dmFyIGQ9KGIuc3R5bGUmJmIuc3R5bGUud2hpdGVTcGFjZXx8IiIpLnN1YnN0cmluZygwLDMpO2Q9PT0icHJlInx8IWQmJmIudGFnTmFtZT09PSJQUkUiP2EuaC5wdXNoKCEwKTpkJiZkIT09InByZSI/YS5oLnB1c2goITEpOmM/YS5oLnB1c2gobnVsbCk6YS5oLnB1c2goYS5oW2EuaC5sZW5ndGgtMV0pfSxlcz1mdW5jdGlvbihhKXtyZXR1cm4hIWEuaFthLmgubGVuZ3RoLQoxXX07ZHMucHJvdG90eXBlLm5vZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLm5vZGV9O2RzLnByb3RvdHlwZS5kZXB0aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuZGVwdGh9Owpkcy5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3RyeXt0aGlzLmomJnRoaXMuai5sZW5ndGg+MCYmdGhpcy5nLmc9PT0tMSYmdGhpcy5qLmxlbmd0aC0tO3RoaXMuZy5nPT09LTEmJnRoaXMuaC5sZW5ndGgtLTtpZih0aGlzLmomJnRoaXMuai5sZW5ndGg+MCYmdGhpcy5nLmchPT0xJiYhdGhpcy5nLm5vZGUubmV4dFNpYmxpbmcpJHIodGhpcy5nLHRoaXMualt0aGlzLmoubGVuZ3RoLTFdLC0xLHRoaXMuZy5kZXB0aC0xKTtlbHNle3ZhciBhPXRoaXMuZy5uZXh0KCk7dGhpcy5sPSEwO2lmKGEuZG9uZSl7dGhpcy5kb25lPSEwO3JldHVybn10aGlzLmomJnRoaXMuZy5nPT09MSYmdGhpcy5qLnB1c2godGhpcy5nLm5vZGUpfXRoaXMuZy5nPT09MSYmdGhpcy5sJiZjcyh0aGlzLHRoaXMuZy5ub2RlKX1jYXRjaChiKXt0aGlzLndpKGIpLHRoaXMuZG9uZT0hMH19O0RyLmF0dGFjaCg1Mjc1NCxkcy5wcm90b3R5cGUse3dpOjF9KTt2YXIgUT17fSxmcz1mdW5jdGlvbigpe1FbMF09Ik92ZXJzZXR0IjtRWzFdPSJBdmJyeXQiO1FbMl09Ikx1a2siO1FbM109ZnVuY3Rpb24oYSl7cmV0dXJuIkdvb2dsZSBoYXIgb3ZlcnNhdHQgZGVubmUgc2lkZW4gdGlsICIrYSsiIGF1dG9tYXRpc2sifTtRWzRdPWZ1bmN0aW9uKGEpe3JldHVybiJPdmVyc2F0dCB0aWw6ICIrYX07UVs1XT0iRmVpbDogVGplbmVyZW4ga3VubmUgaWtrZSBmdWxsZlx1MDBmOHJlIGZvcmVzcFx1MDBmOHJzZWxlbi4gUHJcdTAwZjh2IHBcdTAwZTUgbnl0dCBzZW5lcmUuIjtRWzZdPSJMZXMgbWVyIjtRWzddPWZ1bmN0aW9uKGEpe3JldHVybiJEcmV2ZXQgYXYgIithfTtRWzhdPSJPdmVyc2V0dGVyIjtRWzldPSJPdmVyc2V0dGVsc2UgcFx1MDBlNWdcdTAwZTVyIjtRWzEwXT1mdW5jdGlvbihhKXtyZXR1cm4iVmlsIGR1IG92ZXJzZXR0ZSBkZW5uZSBzaWRlbiB0aWwgIithKyIgbWVkIEdvb2dsZSBPdmVyc2V0dGVyPyJ9O1FbMTFdPWZ1bmN0aW9uKGEpe3JldHVybiJWaXMgZGVubmUgc2lkZW4gcFx1MDBlNTogIisKYX07UVsxMl09IlZpcyBvcmlnaW5hbCI7UVsxM109IklubmhvbGRldCBwXHUwMGU1IGRlbm5lIGxva2FsZSBmaWxlbiBzZW5kZXMgdGlsIEdvb2dsZSB2aWEgZW4gc2lra2VyIHRpbGtvYmxpbmcgZm9yIFx1MDBlNSBibGkgb3ZlcnNhdHQuIjtRWzE0XT0iSW5uaG9sZGV0IHBcdTAwZTUgZGVubmUgc2lrcmUgc2lkZW4gc2VuZGVzIHRpbCBHb29nbGUgdmlhIGVuIHNpa2tlciB0aWxrb2JsaW5nIGZvciBcdTAwZTUgYmxpIG92ZXJzYXR0LiI7UVsxNV09IklubmhvbGRldCBwXHUwMGU1IGRlbm5lIGludHJhbmV0dHNpZGVuIHNlbmRlcyB0aWwgR29vZ2xlIHZpYSBlbiBzaWtrZXIgdGlsa29ibGluZyBmb3IgXHUwMGU1IGJsaSBvdmVyc2F0dC4iO1FbMTZdPSJWZWxnIHNwclx1MDBlNWsiO1FbMTddPWZ1bmN0aW9uKGEpe3JldHVybiJTbFx1MDBlNSBhdiBvdmVyc2V0dGVsc2UgdGlsICIrYX07UVsxOF09ZnVuY3Rpb24oYSl7cmV0dXJuIkRlYWt0aXZlciBmb3I6ICIrYX07UVsxOV09IlNranVsIGFsbHRpZCI7ClFbMjBdPSJPcmlnaW5hbHRla3N0OiI7UVsyMV09IkJpZHJhIG1lZCBlbiBiZWRyZSBvdmVyc2V0dGVsc2UiO1FbMjJdPSJCaWRyYSI7UVsyM109Ik92ZXJzZXR0IGFsdCI7UVsyNF09IkdqZW5vcHByZXR0IGFsdCI7UVsyNV09IkF2YnJ5dCBhbHQiO1FbMjZdPSJPdmVyc2V0dCBkZWxlbmUgdGlsIG1pdHQgc3ByXHUwMGU1ayI7UVsyN109ZnVuY3Rpb24oYSl7cmV0dXJuIk92ZXJzZXR0IGFsdCB0aWwgIithfTtRWzI4XT0iVmlzIG9wcHJpbm5lbGlnZSBzcHJcdTAwZTVrIjtRWzI5XT0iQWx0ZXJuYXRpdmVyIjtRWzMwXT0iU2xcdTAwZTUgYXYgb3ZlcnNldHRlbHNlIGZvciBkZXR0ZSBuZXR0c3RlZGV0IjtRWzMxXT1udWxsO1FbMzJdPSJWaXMgYWx0ZXJuYXRpdmUgb3ZlcnNldHRlbHNlciI7UVszM109IktsaWtrIHBcdTAwZTUgb3JkIG92ZW5mb3IgZm9yIFx1MDBlNSBmXHUwMGU1IGFsdGVybmF0aXZlIG92ZXJzZXR0ZWxzZXIiO1FbMzRdPSJCcnVrIjtRWzM1XT0iRHJhIG1lZCBTaGlmdC10YXN0IGZvciBcdTAwZTUgZW5kcmUgcmVra2VmXHUwMGY4bGdlIjsKUVszNl09IktsaWtrIGZvciBcdTAwZTUgc2UgYWx0ZXJuYXRpdmUgb3ZlcnNldHRlbHNlciI7UVszN109IkhvbGQgbmVkZSBTaGlmdC10YXN0ZW4sIGtsaWtrLCBvZyBkcmEgZGVyZXR0ZXIgb3JkZW5lIG92ZW5mb3IgZm9yIFx1MDBlNSBlbmRyZSBwXHUwMGU1IHJla2tlZlx1MDBmOGxnZW4uIjtRWzM4XT0iVGFrayBmb3IgYXQgZHUgYmlkcmFyIG1lZCBvdmVyc2V0dGVsc2VzZm9yc2xhZ2V0IGRpdHQgdGlsIEdvb2dsZSBPdmVyc2V0dGVyLiI7UVszOV09IkFkbWluaXN0cmVyIG92ZXJzZXR0aW5nIGZvciBkZXR0ZSBuZXR0c3RlZGV0IjtRWzQwXT0iS2xpa2sgcFx1MDBlNSBldCBvcmQgZm9yIFx1MDBlNSBzZSBhbHRlcm5hdGl2ZSBvdmVyc2V0dGVsc2VyLCBlbGxlciBkb2JiZWx0a2xpa2sgZm9yIFx1MDBlNSByZWRpZ2VyZSBkaXJla3RlIjtRWzQxXT0iT3BwcmlubmVsaWcgdGVrc3QiO1FbNDJdPSJPdmVyc2V0dGVyIjtRWzQzXT0iT3ZlcnNldHQiO1FbNDRdPSJSZXR0aW5nZW4gZGluIGVyIHNlbmR0IGlubi4iOwpRWzQ1XT0iRmVpbDogU3ByXHUwMGU1a2V0IHRpbCBuZXR0c2lkZW4gc3RcdTAwZjh0dGVzIGlra2UuIjtRWzQ2XT0iTW9kdWwgZm9yIHNwclx1MDBlNWtvdmVyc2V0dGluZyI7UVs0N109IkdpIGVuIHZ1cmRlcmluZyBhdiBkZW5uZSBvdmVyc2V0dGVsc2VuIjtRWzQ4XT0iVGlsYmFrZW1lbGRpbmdlbiBkaW4gYnJ1a2VzIGZvciBcdTAwZTUgZ2pcdTAwZjhyZSBHb29nbGUgT3ZlcnNldHRlciBiZWRyZSI7UVs0OV09IkdvZCBvdmVyc2V0dGVsc2UiO1FbNTBdPSJEXHUwMGU1cmxpZyBvdmVyc2V0dGVsc2UiO1FbNTFdPSJPdmVyc2V0dGVsc2UifTt2YXIgZ3M9ZnVuY3Rpb24oKXtyZXR1cm4iW21zZ191bmRlZmluZWRdIn0sUj17fTsKKGZ1bmN0aW9uKCl7dmFyIGE9ZnVuY3Rpb24oYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGJ9fTtSPXtJZTphKDApLG1nOmEoMSksQWU6YSgyKSxXajphKDMpLERnOmEoNCksQ2U6YSg1KSx3ZzphKDQ1KSx4ZzphKDYpLHpnOmEoNyksd2Q6YSg4KSxFZzphKDkpLHNrOmEoMTApLEpnOmEoMTEpLEFnOmEoMTIpLGxrOmEoMTMpLENnOmEoMTQpLGtrOmEoMTUpLEJnOmEoMTYpLHZrOmEoMTcpLEZnOmEoMTgpLGpqOmEoMTkpLFVqOmEoMjApLElqOmEoMjEpLG1rOmEoMjIpLGVrOmEoMjMpLGRrOmEoMjQpLGJrOmEoMjUpLHRrOmEoMjYpLHJrOmEoMjcpLGNrOmEoMjgpLHlnOmEoMjkpLEdnOmEoMzApLGlqOmEoMzIpLGdqOmEoMzMpLHdrOmEoMzQpLHhqOmEoMzUpLHBqOmEoMzYpLHdqOmEoMzcpLG5rOmEoMzgpLFFqOmEoMzkpLGhqOmEoNDApLFZqOmEoNDEpLEVlOmEoNDYpLFhqOmEoNDcpLEhqOmEoNDgpLEdqOmEoNDkpLEZqOmEoNTApLHVrOmEoNTEpfX0pKCk7Ui5DbD1mdW5jdGlvbigpe3JldHVybiBRWzBdfTsKUi5aaz1mdW5jdGlvbigpe3JldHVybiBRWzFdfTtSLmJsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMl19O1Iubmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszXX07Ui5EbD1mdW5jdGlvbigpe3JldHVybiBRWzRdfTtSLmZsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNV19O1IuaGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0NV19O1IuaWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs2XX07Ui5vbD1mdW5jdGlvbigpe3JldHVybiBRWzddfTtSLkdsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbOF19O1IuSWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs5XX07Ui5GbD1mdW5jdGlvbigpe3JldHVybiBRWzEwXX07Ui5PbD1mdW5jdGlvbigpe3JldHVybiBRWzExXX07Ui5wbD1mdW5jdGlvbigpe3JldHVybiBRWzEyXX07Ui55bD1mdW5jdGlvbigpe3JldHVybiBRWzEzXX07Ui56bD1mdW5jdGlvbigpe3JldHVybiBRWzE0XX07Ui54bD1mdW5jdGlvbigpe3JldHVybiBRWzE1XX07Ui5xbD1mdW5jdGlvbigpe3JldHVybiBRWzE2XX07ClIuTGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsxN119O1IuS2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVsxOF19O1IuWWs9ZnVuY3Rpb24oKXtyZXR1cm4gUVsxOV19O1IubGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyMF19O1Iuc2g9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0MV19O1IuZWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyMV19O1IuQWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyMl19O1Iud2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyM119O1Iudmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyNF19O1Iucmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyNV19O1IuSGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyNl19O1IuRWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyN119O1IudWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyOF19O1Iua2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyOV19O1IuTWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszMF19O1Iuamw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszOV19O1IuWGs9ZnVuY3Rpb24oKXtyZXR1cm4gUVszMl19OwpSLlZrPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzNdfTtSLldrPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNDBdfTtSLk5sPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzRdfTtSLmRsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzVdfTtSLmFsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzZdfTtSLmNsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzddfTtSLkJsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMzhdfTtSLmdsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNDZdfTtSLnRoPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNDddfTtSLnJoPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNDhdfTtSLnFoPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNDldfTtSLnBoPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNTBdfTtSLkpsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNTFdfTt2YXIgaHM9Ujt2YXIgaXM9aHMuc2gsanM9aHMudGgsa3M9aHMucmgsbHM9aHMucWgsbXM9aHMucGg7dmFyIHBzPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZGlyO2E9YS5jajtyZXR1cm4gVm4oV24oVm4oV24oVm4oXy55bCgpLCc8ZGl2IGlkPSJnb29nLWd0LXR0IiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLUw3bGJrYiIpKycgc2tpcHRyYW5zbGF0ZSIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IG1hcmdpbjogMCAwIDAgLTIzcHg7IHBhZGRpbmc6IDA7IGZvbnQtZmFtaWx5OiBcJ0dvb2dsZSBTYW5zXCcsIEFyaWFsLCBzYW5zLXNlcmlmOyIgZGF0YS1pZD0iIj48ZGl2IGlkPSJnb29nLWd0LXZ0IiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZCIpKyciPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnIiKSsnIj48aW1nIHNyYz0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kvcHJvZHVjdGxvZ29zL3RyYW5zbGF0ZS92MTQvMjRweC5zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgYWx0PSIiLz48ZGl2IGNsYXNzPSInKwooYj09PSJydGwiPyIgIitQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtU0lzclRkIikrIiAiOiIgIitQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThjIikrIiAiKSsnIiBkaXI9IicrUChiKSsnIj4nK0twKGlzKCkpKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLWs3N0lpZiIpKyciPjxkaXYgaWQ9Imdvb2ctZ3Qtb3JpZ2luYWwtdGV4dCIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1uVk1mY2QtZm1jbVMiKSsiICIrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjEiKSsnIj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZCIpKyIgIitQKGIpKyciPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZCIpKyIgIitQKGIpKyciIGRpcj0iJytQKGIpKyciPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNiIikrCiciPicrS3AoanMoKSkrJzwvZGl2PjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtlIikrJyI+JytLcChrcygpKSsnPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSIpKyIgIitQKGIpKyciPicpLGI9PT0icnRsIj9XbihXbihfLnlsKCksbnMoKSksb3MoKSk6V24oV24oXy55bCgpLG9zKCkpLG5zKCkpKSwiPC9kaXY+PC9kaXY+IiksKDAsXy50bCkoJzxkaXYgaWQ9Imdvb2ctZ3Qtdm90aW5nSGlkZGVuUGFuZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtYVhZVGNlIikrJyI+PGZvcm0gaWQ9Imdvb2ctZ3Qtdm90aW5nRm9ybSIgYWN0aW9uPSInK1AoVXAoYSkpKyciIG1ldGhvZD0icG9zdCIgdGFyZ2V0PSJ2b3RpbmdGcmFtZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtYVhZVGNlIikrJyI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNsIiBpZD0iZ29vZy1ndC12b3RpbmdJbnB1dFNyY0xhbmciLz48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idGwiIGlkPSJnb29nLWd0LXZvdGluZ0lucHV0VHJnTGFuZyIvPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJxdWVyeSIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRTcmNUZXh0Ii8+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9Imd0cmFucyIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRUcmdUZXh0Ii8+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InZvdGUiIGlkPSJnb29nLWd0LXZvdGluZ0lucHV0Vm90ZSIvPjwvZm9ybT48aWZyYW1lIG5hbWU9InZvdGluZ0ZyYW1lIiBmcmFtZUJvcmRlcj0wPjwvaWZyYW1lPjwvZGl2PicpKSwKIjwvZGl2PjwvZGl2PiIpfSxvcz1mdW5jdGlvbigpe3ZhciBhPV8ueWwoKSxiPWxzKCk7Yj1WbihhLCc8YnV0dG9uIGlkPSJnb29nLWd0LXRodW1iVXBCdXR0b24iIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmIikrJyIgdGl0bGU9IicrUChiKSsnIiBhcmlhLWxhYmVsPSInK1AoYikrJyIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+PHNwYW4gaWQ9Imdvb2ctZ3QtdGh1bWJVcEljb24iPicpO3ZhciBjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTIxIDdoLTYuMzFsLjk1LTQuNTcuMDMtLjMyYzAtLjQxLS4xNy0uNzktLjQ0LTEuMDZMMTQuMTcgMFM3LjA4IDYuODUgNyA3SDJ2MTNoMTZjLjgzIDAgMS41NC0uNSAxLjg0LTEuMjJsMy4wMi03LjA1Yy4wOS0uMjMuMTQtLjQ3LjE0LS43M1Y5YzAtMS4xLS45LTItMi0yek03IDE4SDRWOWgzdjl6bTE0LTdsLTMgN0g5VjhsNC4zNC00LjM0TDEyIDloOXYyeiIvPjwvc3ZnPicpOwpiPVZuKFduKGIsYyksJzwvc3Bhbj48c3BhbiBpZD0iZ29vZy1ndC10aHVtYlVwSWNvbkZpbGxlZCI+Jyk7Yz0oMCxfLnRsKSgnPHN2ZyB3aWR0aD0iJytQKDI0KSsnIiBoZWlnaHQ9IicrUCgyNCkrJyIgdmlld0JveD0iJytQKCIwIDAgMjQgMjQiKSsnIiBmb2N1c2FibGU9ImZhbHNlIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1USEk2VmIiKSsiICIrUCgiTk1tNU0iKSsnIicrenAoKSsnPjxwYXRoIGQ9Ik0yMSA3aC02LjMxbC45NS00LjU3LjAzLS4zMmMwLS40MS0uMTctLjc5LS40NC0xLjA2TDE0LjE3IDBTNy4wOCA2Ljg1IDcgN3YxM2gxMWMuODMgMCAxLjU0LS41IDEuODQtMS4yMmwzLjAyLTcuMDVjLjA5LS4yMy4xNC0uNDcuMTQtLjczVjljMC0xLjEtLjktMi0yLTJ6TTUgN0gxdjEzaDRWN3oiLz48L3N2Zz4nKTtWbihXbihiLGMpLCI8L3NwYW4+PC9idXR0b24+Iik7cmV0dXJuIGF9LG5zPWZ1bmN0aW9uKCl7dmFyIGE9Xy55bCgpLGI9bXMoKTtiPVZuKGEsJzxidXR0b24gaWQ9Imdvb2ctZ3QtdGh1bWJEb3duQnV0dG9uIiB0eXBlPSJidXR0b24iIGNsYXNzPSInKwpQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2YiKSsnIiB0aXRsZT0iJytQKGIpKyciIGFyaWEtbGFiZWw9IicrUChiKSsnIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj48c3BhbiBpZD0iZ29vZy1ndC10aHVtYkRvd25JY29uIj4nKTt2YXIgYz0oMCxfLnRsKSgnPHN2ZyB3aWR0aD0iJytQKDI0KSsnIiBoZWlnaHQ9IicrUCgyNCkrJyIgdmlld0JveD0iJytQKCIwIDAgMjQgMjQiKSsnIiBmb2N1c2FibGU9ImZhbHNlIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1USEk2VmIiKSsiICIrUCgiTk1tNU0iKSsnIicrenAoKSsnPjxwYXRoIGQ9Ik0zIDE3aDYuMzFsLS45NSA0LjU3LS4wMy4zMmMwIC40MS4xNy43OS40NCAxLjA2TDkuODMgMjRzNy4wOS02Ljg1IDcuMTctN2g1VjRINmMtLjgzIDAtMS41NC41LTEuODQgMS4yMmwtMy4wMiA3LjA1Yy0uMDkuMjMtLjE0LjQ3LS4xNC43M3YyYzAgMS4xLjkgMiAyIDJ6TTE3IDZoM3Y5aC0zVjZ6TTMgMTNsMy03aDl2MTBsLTQuMzQgNC4zNEwxMiAxNUgzdi0yeiIvPjwvc3ZnPicpOwpiPVZuKFduKGIsYyksJzwvc3Bhbj48c3BhbiBpZD0iZ29vZy1ndC10aHVtYkRvd25JY29uRmlsbGVkIj4nKTtjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTMgMTdoNi4zMWwtLjk1IDQuNTctLjAzLjMyYzAgLjQxLjE3Ljc5LjQ0IDEuMDZMOS44MyAyNHM3LjA5LTYuODUgNy4xNy03VjRINmMtLjgzIDAtMS41NC41LTEuODQgMS4yMmwtMy4wMiA3LjA1Yy0uMDkuMjMtLjE0LjQ3LS4xNC43M3YyYzAgMS4xLjkgMiAyIDJ6bTE2IDBoNFY0aC00djEzeiIvPjwvc3ZnPicpO1ZuKFduKGIsYyksIjwvc3Bhbj48L2J1dHRvbj4iKTtyZXR1cm4gYX07dmFyIHFzPWZ1bmN0aW9uKGEsYixjKXtpZih0eXBlb2YgYT09PSJmdW5jdGlvbiIpYyYmKGE9KDAsXy55KShhLGMpKTtlbHNlIGlmKGEmJnR5cGVvZiBhLmhhbmRsZUV2ZW50PT0iZnVuY3Rpb24iKWE9KDAsXy55KShhLmhhbmRsZUV2ZW50LGEpO2Vsc2UgdGhyb3cgRXJyb3IoInhhIik7cmV0dXJuIE51bWJlcihiKT4yMTQ3NDgzNjQ3Py0xOl8udi5zZXRUaW1lb3V0KGEsYnx8MCl9O3ZhciBycz1mdW5jdGlvbigpe2lmKF8uWmMpe3ZhciBhPS9XaW5kb3dzIE5UIChbMC05Ll0rKS87cmV0dXJuKGE9YS5leGVjKF8uVGEoKSkpP2FbMV06IjAifXJldHVybiBfLlljPyhhPS8xWzB8MV1bXy5dWzAtOV8uXSsvLChhPWEuZXhlYyhfLlRhKCkpKT9hWzBdLnJlcGxhY2UoL18vZywiLiIpOiIxMCIpOl8uJGM/KGE9L0FuZHJvaWRccysoW15cKTtdKykoXCl8OykvLChhPWEuZXhlYyhfLlRhKCkpKT9hWzFdOiIiKTpfLmFkfHxfLmJkfHxfLmNkPyhhPS8oPzppUGhvbmV8Q1BVKVxzK09TXHMrKFxTKykvLChhPWEuZXhlYyhfLlRhKCkpKT9hWzFdLnJlcGxhY2UoL18vZywiLiIpOiIiKToiIn0oKTt2YXIgc3M9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9YS5leGVjKF8uVGEoKSkpP2FbMV06IiJ9LHRzPWZ1bmN0aW9uKCl7aWYoXy5KaClyZXR1cm4gc3MoL0ZpcmVmb3hcLyhbMC05Ll0rKS8pO2lmKF8uU2N8fF8uVGN8fF8uUmMpcmV0dXJuIF8uamQ7aWYoXy5OaCl7aWYoXy4kYSgpfHxfLmFiKCkpe3ZhciBhPXNzKC9DcmlPU1wvKFswLTkuXSspLyk7aWYoYSlyZXR1cm4gYX1yZXR1cm4gc3MoL0Nocm9tZVwvKFswLTkuXSspLyl9aWYoXy5PaCYmIV8uJGEoKSlyZXR1cm4gc3MoL1ZlcnNpb25cLyhbMC05Ll0rKS8pO2lmKF8uS2h8fF8uTGgpe2lmKGE9L1ZlcnNpb25cLyhcUyspLipNb2JpbGVcLyhcUyspLy5leGVjKF8uVGEoKSkpcmV0dXJuIGFbMV0rIi4iK2FbMl19ZWxzZSBpZihfLk1oKXJldHVybihhPXNzKC9BbmRyb2lkXHMrKFswLTkuXSspLykpP2E6c3MoL1ZlcnNpb25cLyhbMC05Ll0rKS8pO3JldHVybiIifSgpO18uRyhZbSxfLmhiKTtfLm09WW0ucHJvdG90eXBlO18ubS5FYT1udWxsO18ubS5EYz0hMDtfLm0uTmU9bnVsbDtfLm0uemI9ITE7Xy5tLlpkPS0xO18ubS5VYj0idG9nZ2xlX2Rpc3BsYXkiO18ubS5IPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuRWF9O18ubS5RYj1mdW5jdGlvbihhKXtpZih0aGlzLnpiKXRocm93IEVycm9yKCJ5YSIpO3RoaXMuRWE9YX07Xy5tLnJlPWZ1bmN0aW9uKGEpe2lmKHRoaXMuemIpdGhyb3cgRXJyb3IoInlhIik7dGhpcy5EYz1hfTtfLm0uaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuemJ9OwpfLm0ucGE9ZnVuY3Rpb24oYSl7dGhpcy5MJiZ0aGlzLkwuc3RvcCgpO3RoaXMuSyYmdGhpcy5LLnN0b3AoKTtpZihhKXtpZighdGhpcy56YiYmdGhpcy51ZCgpKXtpZighdGhpcy5FYSl0aHJvdyBFcnJvcigiemEiKTt0aGlzLnBiKCk7YT1fLnNkKHRoaXMuRWEpO3RoaXMuRGMmJih0aGlzLmwuTihhLCJtb3VzZWRvd24iLHRoaXMuTmYsITApLHRoaXMubC5OKGEsImJsdXIiLHRoaXMuRWkpKTt0aGlzLlViPT0idG9nZ2xlX2Rpc3BsYXkiPyh0aGlzLkVhLnN0eWxlLnZpc2liaWxpdHk9InZpc2libGUiLG1wKHRoaXMuRWEsITApKTp0aGlzLlViPT0ibW92ZV9vZmZzY3JlZW4iJiZ0aGlzLnBiKCk7dGhpcy56Yj0hMDt0aGlzLlpkPURhdGUubm93KCk7dGhpcy5MPyhfLk5kKHRoaXMuTCwiZW5kIix0aGlzLk9mLCExLHRoaXMpLHRoaXMuTC5wbGF5KCkpOnRoaXMuT2YoKX19ZWxzZSB1cyh0aGlzKX07Xy5tLnBiPWZ1bmN0aW9uKCl7fTsKdmFyIHVzPWZ1bmN0aW9uKGEsYil7YS56YiYmYS5kaXNwYXRjaEV2ZW50KHt0eXBlOiJiZWZvcmVoaWRlIix0YXJnZXQ6Yn0pJiYoYS5sJiZfLlJmKGEubCksYS56Yj0hMSxhLks/KF8uTmQoYS5LLCJlbmQiLF8uWmooYS5TZSxiKSwhMSxhKSxhLksucGxheSgpKTphLlNlKGIpKX07Xy5tPVltLnByb3RvdHlwZTtfLm0uU2U9ZnVuY3Rpb24oYSl7dGhpcy5VYj09InRvZ2dsZV9kaXNwbGF5Ij90aGlzLmFpKCk6dGhpcy5VYj09Im1vdmVfb2Zmc2NyZWVuIiYmKHRoaXMuRWEuc3R5bGUudG9wPSItMTAwMDBweCIpO3RoaXMuZ2UoYSl9O18ubS5haT1mdW5jdGlvbigpe3RoaXMuRWEuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIjttcCh0aGlzLkVhLCExKX07Xy5tLnVkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudCgiYmVmb3Jlc2hvdyIpfTtfLm0uT2Y9ZnVuY3Rpb24oKXt0aGlzLmRpc3BhdGNoRXZlbnQoInNob3ciKX07Cl8ubS5nZT1mdW5jdGlvbihhKXt0aGlzLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImhpZGUiLHRhcmdldDphfSl9O18ubS5OZj1mdW5jdGlvbihhKXthPWEudGFyZ2V0O18uQmQodGhpcy5FYSxhKXx8dnModGhpcyxhKXx8RGF0ZS5ub3coKS10aGlzLlpkPDE1MHx8dXModGhpcyxhKX07Xy5tLkVpPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QodGhpcy5FYSk7aWYodHlwZW9mIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPSJ1bmRlZmluZWQiKXtpZihhPWIuYWN0aXZlRWxlbWVudCwhYXx8Xy5CZCh0aGlzLkVhLGEpfHxhLnRhZ05hbWU9PSJCT0RZInx8dnModGhpcyxhKSlyZXR1cm59ZWxzZSBpZihhLnRhcmdldCE9YilyZXR1cm47RGF0ZS5ub3coKS10aGlzLlpkPDE1MHx8dXModGhpcyl9O3ZhciB2cz1mdW5jdGlvbihhLGIpe3JldHVybiBfLnhjKGEuTmV8fFtdLGZ1bmN0aW9uKGMpe3JldHVybiBiPT09Y3x8Xy5CZChjLGIpfSl9OwpZbS5wcm90b3R5cGUuTT1mdW5jdGlvbigpe1ltLmVhLk0uY2FsbCh0aGlzKTt0aGlzLmwuZGlzcG9zZSgpO18ucGEodGhpcy5MKTtfLnBhKHRoaXMuSyk7ZGVsZXRlIHRoaXMuRWE7ZGVsZXRlIHRoaXMubDtkZWxldGUgdGhpcy5OZX07Xy5HKGJuLF8uaGIpO2JuLnByb3RvdHlwZS5oYW5kbGVFdmVudD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgXy5kYihhLmcpO2IudHlwZT1hLnR5cGU9PSJmb2N1c2luInx8YS50eXBlPT0iZm9jdXMiPyJmb2N1c2luIjoiZm9jdXNvdXQiO3RoaXMuZGlzcGF0Y2hFdmVudChiKX07Ym4ucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtibi5lYS5NLmNhbGwodGhpcyk7Xy5WZCh0aGlzLmgpO18uVmQodGhpcy5qKTtkZWxldGUgdGhpcy5nfTtjbi5wcm90b3R5cGUuaD1mdW5jdGlvbigpe307dmFyIHlzPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe3ZhciBoO2lmKGg9Yy5vZmZzZXRQYXJlbnQpe3ZhciBrPWgudGFnTmFtZT09IkhUTUwifHxoLnRhZ05hbWU9PSJCT0RZIjtpZigha3x8Y3AoaCwicG9zaXRpb24iKSE9InN0YXRpYyIpe3ZhciBsPWhwKGgpO2lmKCFrKXtrPSJydGwiPT1jcChoLCJkaXJlY3Rpb24iKTt2YXIgbjtpZihuPWspe249Xy5PaCYmTGwodHMsMTApPj0wO3ZhciBxO2lmKHE9Xy5kZClxPUxsKHJzLDEwKT49MDt2YXIgcD1fLk5oJiZMbCh0cyw4NSk+PTA7bj1fLlVjfHxufHxxfHxwfWs9bj8taC5zY3JvbGxMZWZ0OmsmJmNwKGgsIm92ZXJmbG93WCIpIT0idmlzaWJsZSI/aC5zY3JvbGxXaWR0aC1oLmNsaWVudFdpZHRoLWguc2Nyb2xsTGVmdDpoLnNjcm9sbExlZnQ7bD1hbyhsLG5ldyB6bChrLGguc2Nyb2xsVG9wKSl9fX1oPWx8fG5ldyB6bDtsPWhwKGEpO2s9bHAoYSk7bD1uZXcgd20obC54LGwueSxrLndpZHRoLGsuaGVpZ2h0KTtpZihrPWlwKGEpKXA9Cm5ldyB3bShrLmxlZnQsay50b3Asay5yaWdodC1rLmxlZnQsay5ib3R0b20tay50b3ApLGs9TWF0aC5tYXgobC5sZWZ0LHAubGVmdCksbj1NYXRoLm1pbihsLmxlZnQrbC53aWR0aCxwLmxlZnQrcC53aWR0aCksazw9biYmKHE9TWF0aC5tYXgobC50b3AscC50b3ApLHA9TWF0aC5taW4obC50b3ArbC5oZWlnaHQscC50b3ArcC5oZWlnaHQpLHE8PXAmJihsLmxlZnQ9ayxsLnRvcD1xLGwud2lkdGg9bi1rLGwuaGVpZ2h0PXAtcSkpO249Xy5sYihhKTtrPV8ubGIoYyk7bi5nIT1rLmcmJihuPW4uZy5ib2R5LGs9anAobixrLmcuZGVmYXVsdFZpZXcpLGs9YW8oayxocChuKSksbC5sZWZ0Kz1rLngsbC50b3ArPWsueSk7YT13cyhhLGIpO2I9bC5sZWZ0O2EmND9iKz1sLndpZHRoOmEmMiYmKGIrPWwud2lkdGgvMik7Yj1uZXcgemwoYixsLnRvcCsoYSYxP2wuaGVpZ2h0OjApKTtiPWFvKGIsaCk7ZSYmKGIueCs9KGEmND8tMToxKSplLngsYi55Kz0oYSYxPy0xOjEpKmUueSk7dmFyIHI7ZyYmKHI9CmlwKGMpKSYmKHIudG9wLT1oLnksci5yaWdodC09aC54LHIuYm90dG9tLT1oLnksci5sZWZ0LT1oLngpO3JldHVybiB4cyhiLGMsZCxmLHIsZyl9LHhzPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXthPURuKGEpO3ZhciBnPXdzKGIsYyk7Yz1scChiKTt2YXIgaD1uZXcgXy5DYShjLndpZHRoLGMuaGVpZ2h0KTthPURuKGEpO2g9bmV3IF8uQ2EoaC53aWR0aCxoLmhlaWdodCk7dmFyIGs9MDtpZihkfHxnIT0wKWcmND9hLngtPWgud2lkdGgrKGQ/ZC5yaWdodDowKTpnJjI/YS54LT1oLndpZHRoLzI6ZCYmKGEueCs9ZC5sZWZ0KSxnJjE/YS55LT1oLmhlaWdodCsoZD9kLmJvdHRvbTowKTpkJiYoYS55Kz1kLnRvcCk7ZiYmKGU/KGQ9aCxnPTAsKGYmNjUpPT02NSYmKGEueDxlLmxlZnR8fGEueD49ZS5yaWdodCkmJihmJj0tMiksKGYmMTMyKT09MTMyJiYoYS55PGUudG9wfHxhLnk+PWUuYm90dG9tKSYmKGYmPS01KSxhLng8ZS5sZWZ0JiZmJjEmJihhLng9ZS5sZWZ0LGd8PTEpLGYmMTYmJihrPQphLngsYS54PGUubGVmdCYmKGEueD1lLmxlZnQsZ3w9NCksYS54K2Qud2lkdGg+ZS5yaWdodCYmKGQud2lkdGg9TWF0aC5taW4oZS5yaWdodC1hLngsaytkLndpZHRoLWUubGVmdCksZC53aWR0aD1NYXRoLm1heChkLndpZHRoLDApLGd8PTQpKSxhLngrZC53aWR0aD5lLnJpZ2h0JiZmJjEmJihhLng9TWF0aC5tYXgoZS5yaWdodC1kLndpZHRoLGUubGVmdCksZ3w9MSksZiYyJiYoZ3w9KGEueDxlLmxlZnQ/MTY6MCl8KGEueCtkLndpZHRoPmUucmlnaHQ/MzI6MCkpLGEueTxlLnRvcCYmZiY0JiYoYS55PWUudG9wLGd8PTIpLGYmMzImJihrPWEueSxhLnk8ZS50b3AmJihhLnk9ZS50b3AsZ3w9OCksYS55K2QuaGVpZ2h0PmUuYm90dG9tJiYoZC5oZWlnaHQ9TWF0aC5taW4oZS5ib3R0b20tYS55LGsrZC5oZWlnaHQtZS50b3ApLGQuaGVpZ2h0PU1hdGgubWF4KGQuaGVpZ2h0LDApLGd8PTgpKSxhLnkrZC5oZWlnaHQ+ZS5ib3R0b20mJmYmNCYmKGEueT1NYXRoLm1heChlLmJvdHRvbS1kLmhlaWdodCwKZS50b3ApLGd8PTIpLGYmOCYmKGd8PShhLnk8ZS50b3A/NjQ6MCl8KGEueStkLmhlaWdodD5lLmJvdHRvbT8xMjg6MCkpLGU9Zyk6ZT0yNTYsaz1lKTtlPW5ldyB3bSgwLDAsMCwwKTtlLmxlZnQ9YS54O2UudG9wPWEueTtlLndpZHRoPWgud2lkdGg7ZS5oZWlnaHQ9aC5oZWlnaHQ7YT1rO2lmKGEmNDk2KXJldHVybiBhO2VwKGIsbmV3IHpsKGUubGVmdCxlLnRvcCkpO2g9bmV3IF8uQ2EoZS53aWR0aCxlLmhlaWdodCk7Xy55YyhjLGgpfHxwcChiLGgsImJvcmRlci1ib3giKTtyZXR1cm4gYX0sd3M9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYiY4JiYicnRsIj09Y3AoYSwiZGlyZWN0aW9uIik/Yl40OmIpJi05fTtfLkcoZG4sY24pO2RuLnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEsYixjKXt5cyh0aGlzLmVsZW1lbnQsdGhpcy5qLGEsYix2b2lkIDAsYyx0aGlzLmwpfTtfLkcoZW4sY24pO2VuLnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEsYixjKXt5cygoYT9fLnNkKGEpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQsMCxhLGIsdGhpcy5nLGMsbnVsbCl9O18uRyhmbixZbSk7Zm4ucHJvdG90eXBlLnBiPWZ1bmN0aW9uKCl7aWYodGhpcy5vKXt2YXIgYT0hdGhpcy5pc1Zpc2libGUoKSYmdGhpcy5VYiE9Im1vdmVfb2Zmc2NyZWVuIixiPXRoaXMuSCgpO2EmJihiLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIsbXAoYiwhMCkpO3RoaXMuby5oKGIsOCx0aGlzLlhiKTthJiZtcChiLCExKX19O18uRyhPLGZuKTt2YXIgenM9W107Xy5tPU8ucHJvdG90eXBlO18ubS55YT1udWxsO18ubS5jbGFzc05hbWU9IlZJcGdKZC1zdUVPZGMiO18ubS5aZj01MDA7Xy5tLndmPTA7Xy5tLmF0dGFjaD1mdW5jdGlvbihhKXthPWduKGEpO3RoaXMuQS5hZGQoYSk7Xy54KGEsIm1vdXNlb3ZlciIsdGhpcy5VZCwhMSx0aGlzKTtfLngoYSwibW91c2VvdXQiLHRoaXMuTmIsITEsdGhpcyk7Xy54KGEsIm1vdXNlbW92ZSIsdGhpcy5nYiwhMSx0aGlzKTtfLngoYSwiZm9jdXMiLHRoaXMuZmIsITEsdGhpcyk7Xy54KGEsImJsdXIiLHRoaXMuTmIsITEsdGhpcyl9O18ubS5kZXRhY2g9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczthPyhhPWduKGEpLEFzKHRoaXMsYSksdGhpcy5BLmRlbGV0ZShhKSk6KHRoaXMuQS5mb3JFYWNoKGZ1bmN0aW9uKGMpe0FzKGIsYyl9KSx0aGlzLkEuY2xlYXIoKSl9Owp2YXIgQXM9ZnVuY3Rpb24oYSxiKXtfLlVkKGIsIm1vdXNlb3ZlciIsYS5VZCwhMSxhKTtfLlVkKGIsIm1vdXNlb3V0IixhLk5iLCExLGEpO18uVWQoYiwibW91c2Vtb3ZlIixhLmdiLCExLGEpO18uVWQoYiwiZm9jdXMiLGEuZmIsITEsYSk7Xy5VZChiLCJibHVyIixhLk5iLCExLGEpfTtPLnByb3RvdHlwZS5LYT1mdW5jdGlvbihhKXtfLkNkKHRoaXMuSCgpLGEpfTsKTy5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5IKCk7YiYmXy5BZChiKTtPLmVhLlFiLmNhbGwodGhpcyxhKTthPyhiPXRoaXMuRy5nLmJvZHksYi5pbnNlcnRCZWZvcmUoYSxiLmxhc3RDaGlsZCksXy5wYSh0aGlzLkMpLHRoaXMuQz1uZXcgYm4odGhpcy5IKCkpLF8uYWsodGhpcyxfLlpqKF8ucGEsdGhpcy5DKSksXy54KHRoaXMuQywiZm9jdXNpbiIsdGhpcy5ELHZvaWQgMCx0aGlzKSxfLngodGhpcy5DLCJmb2N1c291dCIsdGhpcy5ULHZvaWQgMCx0aGlzKSk6KF8ucGEodGhpcy5DKSx0aGlzLkM9bnVsbCl9O08ucHJvdG90eXBlLnZkPWZ1bmN0aW9uKCl7cmV0dXJuIEVvKHRoaXMuSCgpKX07dmFyIEJzPWZ1bmN0aW9uKGEpe3JldHVybiBhLkY/YS5pc1Zpc2libGUoKT80OjE6YS5JPzM6YS5pc1Zpc2libGUoKT8yOjB9OwpPLnByb3RvdHlwZS51ZD1mdW5jdGlvbigpe2lmKCFZbS5wcm90b3R5cGUudWQuY2FsbCh0aGlzKSlyZXR1cm4hMTtpZih0aGlzLmcpZm9yKHZhciBhLGI9MDthPXpzW2JdO2IrKylfLkJkKGEuSCgpLHRoaXMuZyl8fGEucGEoITEpO18udWEoenMsdGhpcyk7YT10aGlzLkgoKTthLmNsYXNzTmFtZT10aGlzLmNsYXNzTmFtZTt0aGlzLkQoKTtfLngoYSwibW91c2VvdmVyIix0aGlzLlVjLCExLHRoaXMpO18ueChhLCJtb3VzZW91dCIsdGhpcy5UYywhMSx0aGlzKTtDcyh0aGlzKTtyZXR1cm4hMH07Ck8ucHJvdG90eXBlLmdlPWZ1bmN0aW9uKCl7Xy52YSh6cyx0aGlzKTtmb3IodmFyIGE9dGhpcy5IKCksYixjPTA7Yj16c1tjXTtjKyspYi5nJiZfLkJkKGEsYi5nKSYmYi5wYSghMSk7dGhpcy5IYiYmdGhpcy5IYi5UKCk7Xy5VZChhLCJtb3VzZW92ZXIiLHRoaXMuVWMsITEsdGhpcyk7Xy5VZChhLCJtb3VzZW91dCIsdGhpcy5UYywhMSx0aGlzKTt0aGlzLmc9dm9pZCAwO0JzKHRoaXMpPT0wJiYodGhpcy5QPSExKTtZbS5wcm90b3R5cGUuZ2UuY2FsbCh0aGlzKX07Ty5wcm90b3R5cGUuZGU9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9PWEmJnRoaXMuQS5oYXModGhpcy5nKSYmKHRoaXMuUHx8IXRoaXMuSWQ/KHRoaXMucGEoITEpLHRoaXMuaXNWaXNpYmxlKCl8fCh0aGlzLmc9YSx0aGlzLm89Ynx8bmV3IERzKERuKHRoaXMucmEpKSx0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLnBiKCksdGhpcy5wYSghMCkpKTp0aGlzLmc9dm9pZCAwKTt0aGlzLkY9dm9pZCAwfTsKTy5wcm90b3R5cGUuRmM9ZnVuY3Rpb24oYSl7dGhpcy5JPXZvaWQgMDtpZihhPT10aGlzLmcpe2E9dGhpcy5HO3ZhciBiPWEuZzt0cnl7dmFyIGM9YiYmYi5hY3RpdmVFbGVtZW50O3ZhciBkPWMmJmMubm9kZU5hbWU/YzpudWxsfWNhdGNoKGUpe2Q9bnVsbH1kPWQmJnRoaXMuSCgpJiZhLmNvbnRhaW5zKHRoaXMuSCgpLGQpO3RoaXMueWEhPW51bGwmJih0aGlzLnlhPT10aGlzLkgoKXx8dGhpcy5BLmhhcyh0aGlzLnlhKSl8fGR8fHRoaXMuSWEmJnRoaXMuSWEueWF8fHRoaXMucGEoITEpfX07dmFyIEVzPWZ1bmN0aW9uKGEsYil7dmFyIGM9S24oYS5HLmcpO2EucmEueD1iLmNsaWVudFgrYy54O2EucmEueT1iLmNsaWVudFkrYy55fTtPLnByb3RvdHlwZS5VZD1mdW5jdGlvbihhKXt2YXIgYj1Gcyh0aGlzLGEudGFyZ2V0KTt0aGlzLnlhPWI7dGhpcy5EKCk7YiE9dGhpcy5nJiYodGhpcy5nPWIsR3ModGhpcyxiKSxIcyh0aGlzKSxFcyh0aGlzLGEpKX07CnZhciBGcz1mdW5jdGlvbihhLGIpe3RyeXtmb3IoO2ImJiFhLkEuaGFzKGIpOyliPWIucGFyZW50Tm9kZTtyZXR1cm4gYn1jYXRjaChjKXtyZXR1cm4gbnVsbH19O08ucHJvdG90eXBlLmdiPWZ1bmN0aW9uKGEpe0VzKHRoaXMsYSk7dGhpcy5QPSEwfTtPLnByb3RvdHlwZS5mYj1mdW5jdGlvbihhKXt0aGlzLnlhPWE9RnModGhpcyxhLnRhcmdldCk7dGhpcy5QPSEwO2lmKHRoaXMuZyE9YSl7dGhpcy5nPWE7dmFyIGI9bmV3IElzKHRoaXMueWEpO3RoaXMuRCgpO0dzKHRoaXMsYSxiKTtIcyh0aGlzKX19O3ZhciBIcz1mdW5jdGlvbihhKXtpZihhLmcpZm9yKHZhciBiLGM9MDtiPXpzW2NdO2MrKylfLkJkKGIuSCgpLGEuZykmJihiLklhPWEsYS5IYj1iKX07Ck8ucHJvdG90eXBlLk5iPWZ1bmN0aW9uKGEpe3ZhciBiPUZzKHRoaXMsYS50YXJnZXQpLGM9RnModGhpcyxhLnJlbGF0ZWRUYXJnZXQpO2IhPWMmJihiPT10aGlzLnlhJiYodGhpcy55YT1udWxsKSxDcyh0aGlzKSx0aGlzLlA9ITEsIXRoaXMuaXNWaXNpYmxlKCl8fGEucmVsYXRlZFRhcmdldCYmXy5CZCh0aGlzLkgoKSxhLnJlbGF0ZWRUYXJnZXQpP3RoaXMuZz12b2lkIDA6dGhpcy5UKCkpfTtPLnByb3RvdHlwZS5VYz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuSCgpO3RoaXMueWEhPWEmJih0aGlzLkQoKSx0aGlzLnlhPWEpfTtPLnByb3RvdHlwZS5UYz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLkgoKTt0aGlzLnlhIT1ifHxhLnJlbGF0ZWRUYXJnZXQmJl8uQmQoYixhLnJlbGF0ZWRUYXJnZXQpfHwodGhpcy55YT1udWxsLHRoaXMuVCgpKX07CnZhciBHcz1mdW5jdGlvbihhLGIsYyl7YS5GfHwoYS5GPXFzKCgwLF8ueSkoYS5kZSxhLGIsYyksYS5aZikpfSxDcz1mdW5jdGlvbihhKXthLkYmJihfLnYuY2xlYXJUaW1lb3V0KGEuRiksYS5GPXZvaWQgMCl9O08ucHJvdG90eXBlLlQ9ZnVuY3Rpb24oKXtCcyh0aGlzKT09MiYmKHRoaXMuST1xcygoMCxfLnkpKHRoaXMuRmMsdGhpcyx0aGlzLmcpLHRoaXMud2YpKX07Ty5wcm90b3R5cGUuRD1mdW5jdGlvbigpe3RoaXMuSSYmKF8udi5jbGVhclRpbWVvdXQodGhpcy5JKSx0aGlzLkk9dm9pZCAwKX07Ty5wcm90b3R5cGUuTT1mdW5jdGlvbigpe3RoaXMucGEoITEpO0NzKHRoaXMpO3RoaXMuZGV0YWNoKCk7dGhpcy5IKCkmJl8uQWQodGhpcy5IKCkpO3RoaXMueWE9bnVsbDtkZWxldGUgdGhpcy5HO08uZWEuTS5jYWxsKHRoaXMpfTt2YXIgRHM9ZnVuY3Rpb24oYSxiKXtlbi5jYWxsKHRoaXMsYSxiKX07Xy5HKERzLGVuKTsKRHMucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe2I9aXAoKGE/Xy5zZChhKTpkb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50KTtjPWM/bmV3IHZtKGMudG9wKzEwLGMucmlnaHQsYy5ib3R0b20sYy5sZWZ0KzEwKTpuZXcgdm0oMTAsMCwwLDEwKTt4cyh0aGlzLmcsYSw4LGMsYiw5KSY0OTYmJnhzKHRoaXMuZyxhLDgsYyxiLDUpfTt2YXIgSXM9ZnVuY3Rpb24oYSl7ZG4uY2FsbCh0aGlzLGEsNSl9O18uRyhJcyxkbik7SXMucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5ldyB6bCgxMCwwKTt5cyh0aGlzLmVsZW1lbnQsdGhpcy5qLGEsYixkLGMsOSkmNDk2JiZ5cyh0aGlzLmVsZW1lbnQsNCxhLDEsZCxjLDUpfTt2YXIgSnM9ZnVuY3Rpb24oKXtPLmNhbGwodGhpcyk7dGhpcy5sYT1udWxsO3RoaXMuUj1uZXcgXy5IYih0aGlzKTt0aGlzLkI9dGhpcy5qPXRoaXMuaD10aGlzLndhPW51bGw7dGhpcy5PPSEwfTtfLkIoSnMsTyk7Xy5tPUpzLnByb3RvdHlwZTtfLm0ua2E9ZnVuY3Rpb24oKXt0aGlzLk89ITE7dmFyIGE9Xy54Zi50ZXN0KG9xKT8icnRsIjoibHRyIjt0aGlzLlFiKGttKHBzLHtVbDpFcSxPazpDcSxSbDp4cSxkaXI6YSxjajpJcX0pKTt0aGlzLmNsYXNzTmFtZSs9IiBWSXBnSmQteUFXTkViLUw3bGJrYiBza2lwdHJhbnNsYXRlIjsoYT0hKCF0aGlzLkgoKXx8IXRoaXMuQikpJiZ0aGlzLlIuTih3aW5kb3csInJlc2l6ZSIsKDAsXy55KSh0aGlzLnBiLHRoaXMpKTtyZXR1cm4gYX07Xy5tLmRlPWZ1bmN0aW9uKGEsYil7dGhpcy5sYT1hO08ucHJvdG90eXBlLmRlLmNhbGwodGhpcyxhLGIpO3RoaXMuSCgpLnN0eWxlLmRpc3BsYXk9ImJsb2NrIn07Cl8ubS5VZD1mdW5jdGlvbihhKXtpZighdGhpcy5PKXt2YXIgYj1Gcyh0aGlzLGEudGFyZ2V0KTt0aGlzLnlhPWI7dGhpcy5EKCk7YiE9dGhpcy5nPyh0aGlzLmc9YixHcyh0aGlzLGIpLEhzKHRoaXMpLEVzKHRoaXMsYSkpOkdzKHRoaXMsYil9fTtfLm0uTT1mdW5jdGlvbigpe3RoaXMuUiYmdGhpcy5SLmRpc3Bvc2UoKTt0aGlzLkI9dGhpcy5sYT10aGlzLlI9bnVsbDtPLnByb3RvdHlwZS5NLmNhbGwodGhpcyl9O18ubS5yZT1mdW5jdGlvbihhKXtpZih0aGlzLmlzVmlzaWJsZSgpKXthPSh0aGlzLkRjPWEpP3RoaXMubC5OOnRoaXMubC55Yzt2YXIgYj1fLnNkKHRoaXMuSCgpKTthLmNhbGwodGhpcy5sLGIsIm1vdXNlZG93biIsdGhpcy5OZiwhMCl9ZWxzZSBPLnByb3RvdHlwZS5yZS5jYWxsKHRoaXMsYSl9O18ubS5RYj1mdW5jdGlvbihhKXtPLnByb3RvdHlwZS5RYi5jYWxsKHRoaXMsYSk7YSYmKHRoaXMuQj12byhhKSl9OwpfLm0ucGI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ocChkb2N1bWVudC5ib2R5KS55O2lmKHRoaXMubyl7KHRoaXMub3x8bnVsbCkuZy55Kz1jO08ucHJvdG90eXBlLnBiLmNhbGwodGhpcyk7dmFyIGQ9cGFyc2VJbnQodGhpcy5IKCkuc3R5bGUubGVmdCwxMCk7YT1wYXJzZUludCh0aGlzLkgoKS5zdHlsZS50b3AsMTApLShhPzA6Yyk7YiYmKGI9dGhpcy5YYnx8e30sYS09Yi50b3B8fDEwLGQtPWIubGVmdHx8MTApO2EtPWM7KHRoaXMub3x8bnVsbCkuZy55PWE7KHRoaXMub3x8bnVsbCkuZy54PWQ7Yz1uZXcgemwoZCxhKTtlcCh0aGlzLkgoKSxjKX19O18ubS5wYT1mdW5jdGlvbihhKXtPLnByb3RvdHlwZS5wYS5jYWxsKHRoaXMsYSl9O18ubS5OYT1mdW5jdGlvbihhKXt0aGlzLmg9YX07Xy5tLm5hPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfTtfLm0uS2E9ZnVuY3Rpb24oYSl7YT1hP18uQWMoYSk6IiI7dGhpcy5CP18uQ2QodGhpcy5CLGEpOk8ucHJvdG90eXBlLkthLmNhbGwodGhpcyxhKX07Cl8ubS5KYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmp9O18ubS52ZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkI/RW8odGhpcy5CKTpPLnByb3RvdHlwZS52ZC5jYWxsKHRoaXMpfTtfLm0uTmI9ZnVuY3Rpb24oYSl7dGhpcy5PfHxPLnByb3RvdHlwZS5OYi5jYWxsKHRoaXMsYSl9O18ubS5VYz1mdW5jdGlvbihhKXt0aGlzLk98fE8ucHJvdG90eXBlLlVjLmNhbGwodGhpcyxhKX07Xy5tLlRjPWZ1bmN0aW9uKGEpe3RoaXMuT3x8Ty5wcm90b3R5cGUuVGMuY2FsbCh0aGlzLGEpfTt2YXIgS3M9ZnVuY3Rpb24oKXt0aGlzLmg9bmV3IE1hcDt0aGlzLmc9V3EoY3IpfSxPcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10aHVtYlVwQnV0dG9uIiksYz1hLmgsZD1hLmc7Yi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtpZihMcyhjKT09PU1zKWdyKGQpO2Vsc2V7dmFyIGU9ZHIoZCw1KTtlcihkLGUpO2ZyKGUsNSl9TnMoYyxNcyl9LCExKX0sUXM9ZnVuY3Rpb24oYSl7dmFyIGI9Z24oImdvb2ctZ3QtdGh1bWJEb3duQnV0dG9uIiksYz1hLmgsZD1hLmc7Yi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtpZihMcyhjKT09PVBzKWdyKGQpO2Vsc2V7dmFyIGU9ZHIoZCw2KTtlcihkLGUpO2ZyKGUsNil9TnMoYyxQcyl9LCExKX0sVHM9ZnVuY3Rpb24oYSl7dmFyIGI9Z24oImdvb2ctZ3QtdHQiKSxjPWIuZGF0YXNldCxkPWduKCJnb29nLWd0LXZvdGluZ0lucHV0U3JjTGFuZyIpLGU9Z24oImdvb2ctZ3Qtdm90aW5nSW5wdXRUcmdMYW5nIiksCmY9Z24oImdvb2ctZ3Qtdm90aW5nSW5wdXRTcmNUZXh0IiksZz1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFRyZ1RleHQiKSxoPXZvKCksaz1nbigiZ29vZy1ndC10cmFuc2xhdGlvbiIpLGw9YS5oLG49YS5nO3dpbmRvdy5kb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoImdvb2ctZ3QtcG9wdXBTaG93biIsZnVuY3Rpb24ocSl7dmFyIHA9ZHIobiw0KTtlcihuLHApO2ZyKHAsNCk7cT1xLmRldGFpbDtwPVN0cmluZyhxLkdkKTtxPXEuWGk7Yy5pZD1wO3A9bC5nZXQocCl8fFJzO1NzKHApO2Iuc3R5bGUud2lkdGg9TWF0aC5tYXgoTWF0aC5taW4od2luZG93LmlubmVyV2lkdGgtMTYsNTM2KSwyODgpKyJweCI7cD1xLkphKCl8fCIiO3ZhciByPXEub2EoKXx8IiI7ZC52YWx1ZT1wO2UudmFsdWU9cjtmLnZhbHVlPXEudmQoKTtnLnZhbHVlPXEud2E7ayYmKGsuaW5uZXJUZXh0PXEud2EpO2IubGFuZz1vcTtoLmxhbmc9cDtrJiYoay5sYW5nPXIpO18ueGYudGVzdChwKSYmKGguY2xhc3NMaXN0LmFkZCgicnRsIiksCmguZGlyPSJydGwiKTtrJiZfLnhmLnRlc3QocikmJihrLmNsYXNzTGlzdC5hZGQoInJ0bCIpLGsuZGlyPSJydGwiKX0sITEpfSxTcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10aHVtYlVwQnV0dG9uIiksYz1nbigiZ29vZy1ndC10aHVtYlVwSWNvbiIpLGQ9Z24oImdvb2ctZ3QtdGh1bWJVcEljb25GaWxsZWQiKSxlPWduKCJnb29nLWd0LXRodW1iRG93bkJ1dHRvbiIpLGY9Z24oImdvb2ctZ3QtdGh1bWJEb3duSWNvbiIpLGc9Z24oImdvb2ctZ3QtdGh1bWJEb3duSWNvbkZpbGxlZCIpO2Iuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLCJmYWxzZSIpO2Muc3R5bGUuZGlzcGxheT0iIjtkLnN0eWxlLmRpc3BsYXk9Im5vbmUiO2Uuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLCJmYWxzZSIpO2Yuc3R5bGUuZGlzcGxheT0iIjtnLnN0eWxlLmRpc3BsYXk9Im5vbmUiO3N3aXRjaChhKXtjYXNlIE1zOmIuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLCJ0cnVlIik7Yy5zdHlsZS5kaXNwbGF5PQoibm9uZSI7ZC5zdHlsZS5kaXNwbGF5PSIiO2JyZWFrO2Nhc2UgUHM6ZS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsInRydWUiKSxmLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGcuc3R5bGUuZGlzcGxheT0iIn1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFZvdGUiKS52YWx1ZT1hfSxMcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10dCIpLmRhdGFzZXQ7cmV0dXJuIGEuZ2V0KGIuaWQpfSxOcz1mdW5jdGlvbihhLGIpe0xzKGEpPT09YiYmKGI9UnMpO1NzKGIpO3ZhciBjPWduKCJnb29nLWd0LXR0IikuZGF0YXNldDthLnNldChjLmlkLGIpO2duKCJnb29nLWd0LXZvdGluZ0Zvcm0iKS5zdWJtaXQoKX0sUnM9KDApLnRvU3RyaW5nKCksTXM9KDEpLnRvU3RyaW5nKCksUHM9KDIpLnRvU3RyaW5nKCk7dmFyIFVzPWZ1bmN0aW9uKGEpe3RoaXMuQT1hO3RoaXMubD10aGlzLmg9dGhpcy5vPXRoaXMuaj0tMTt0aGlzLmc9ITE7dGhpcy5DPTA7dGhpcy5EPSIiO3RoaXMuRj0wfTtVcy5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXtpZighdGhpcy5nKXt0aGlzLmc9ITA7dmFyIGE9W10sYjtmb3IoYj0wO2I8MTU7YisrKWFbYl09WHFbMHxNYXRoLnJhbmRvbSgpKjYyXTt0aGlzLkQ9YS5qb2luKCIiKTt0aGlzLkM9MDt0aGlzLmw9dGhpcy5oPXRoaXMubz10aGlzLmo9LTE7dGhpcy5GPURhdGUubm93KCk7cXModGhpcy5CLDFFNCx0aGlzKX19O1VzLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5nJiYodGhpcy5nPSExLFZzKHRoaXMpKX07VXMucHJvdG90eXBlLkI9ZnVuY3Rpb24oKXt0aGlzLmcmJihWcyh0aGlzKSxxcyh0aGlzLkIsMUUzLHRoaXMpKX07CnZhciBWcz1mdW5jdGlvbihhKXt2YXIgYj1hLkEubCxjPWEuQS5BLGQ9YS5BLmosZT1hLkEubztpZihhLmohPWJ8fGEubyE9Y3x8YS5oIT1kfHxhLmwhPWUpe3ZhciBmPXt9O2YuY3Q9YjtmLmN2PWM7Zi5jdHM9ZDtmLmN2cz1lO2Yuc2lkPWEuRDtmLnNlcT1hLkMrKztmLnRhdD1EYXRlLm5vdygpLWEuRjtpZihhLmo+PTB8fGEubz49MHx8YS5oPj0wfHxhLmw+PTApZi5wdD1hLmosZi5wdj1hLm8sZi5wdHM9YS5oLGYucHZzPWEubDtRbSgidGVfdiIsZik7YS5qPWI7YS5vPWM7YS5oPWQ7YS5sPWV9fTt2YXIgV3M9ZnVuY3Rpb24oKXt0aGlzLm89dGhpcy5qPXRoaXMuQT10aGlzLmw9MDt0aGlzLmc9W107dGhpcy5oPV8udi5JbnRlcnNlY3Rpb25PYnNlcnZlciE9bnVsbD9uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKDAsXy55KSh0aGlzLkIsdGhpcykpOm51bGx9O1dzLnByb3RvdHlwZS5hdHRhY2g9ZnVuY3Rpb24oYSxiKXt0aGlzLmorPWI7dmFyIGM9dGhpcy5nLmxlbmd0aDt0aGlzLmcucHVzaChiKTtmb3IoYj0wO2I8YS5sZW5ndGg7KytiKXt2YXIgZD1hW2JdO3lvKGQpPyhkW1hzXT1jLHRoaXMubCs9RW8oZCkubGVuZ3RoLHRoaXMuaCYmdGhpcy5oLm9ic2VydmUoZCkpOnRoaXMuRmYoZC5ub2RlVHlwZSl9fTtXcy5wcm90b3R5cGUuZGV0YWNoPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKXt2YXIgYz1hW2JdO3lvKGMpPyhjW1hzXT12b2lkIDAsdGhpcy5oJiZ0aGlzLmgudW5vYnNlcnZlKGMpKTp0aGlzLkZmKGMubm9kZVR5cGUpfX07CldzLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMubz10aGlzLmo9dGhpcy5BPXRoaXMubD0wO3RoaXMuZz1bXX07V3MucHJvdG90eXBlLkI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDtiKyspe3ZhciBjPWFbYl07aWYoYy5pbnRlcnNlY3Rpb25SYXRpbz4wJiZjLnRhcmdldFtYc10hPW51bGwpe3RoaXMuQSs9RW8oYy50YXJnZXQpLmxlbmd0aDt2YXIgZD1jLnRhcmdldFtYc107dGhpcy5vKz10aGlzLmdbZF07dGhpcy5nW2RdPTA7ZGVsZXRlIGMudGFyZ2V0W1hzXX19fTtEci5hdHRhY2goMzY1NDYsV3MucHJvdG90eXBlLHtGZjoxfSk7dmFyIFhzPSJfZ3RfIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHIoMik7dmFyIFlzPXt9O1lzLmFkZD1rbjtZcy5Eaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aG4oYSk7dHlwZW9mIGI9PT0ic3RyaW5nIj9fLnZhKGQsYik6QXJyYXkuaXNBcnJheShiKSYmKGQ9bG4oZCxiKSk7dHlwZW9mIGMhPT0ic3RyaW5nInx8Xy50YShkLGMpP0FycmF5LmlzQXJyYXkoYykmJmpuKGQsYyk6ZC5wdXNoKGMpO2EuY2xhc3NOYW1lPWQuam9pbigiICIpfTtZcy5lbmFibGU9b247WXMuZ2V0PWhuO1lzLmhhcz1ubjtZcy5yZW1vdmU9bW47WXMuc2V0PWZ1bmN0aW9uKGEsYil7YS5jbGFzc05hbWU9Yn07WXMuaG09ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1obihhKSxlPSExLGY9MDtmPGQubGVuZ3RoO2YrKylkW2ZdPT1iJiYoZC5zcGxpY2UoZi0tLDEpLGU9ITApO2UmJihkLnB1c2goYyksYS5jbGFzc05hbWU9ZC5qb2luKCIgIikpO3JldHVybiBlfTtZcy50b2dnbGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz0hbm4oYSxiKTtvbihhLGIsYyk7cmV0dXJuIGN9O3ZhciBacz1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7YT1hfHx7fTt0aGlzLmc9SmwoYSk7dGhpcy5nLmhjPWEuaGMhPT12b2lkIDA/YS5oYzoxO3RoaXMuZy52ZT0hIWEudmU7dGhpcy5nLmJoPXBhcnNlSW50KGEuYmgsMTApfHwzMDA7dGhpcy5nLnRyYWNrVmlzaWJpbGl0eT1hLnRyYWNrVmlzaWJpbGl0eXx8ITE7dGhpcy5nLmFwaUtleT1hLmFwaUtleXx8IiI7dGhpcy5DPTA7dGhpcy5sPXt9O3RoaXMuQj1udWxsO3RoaXMuRj10aGlzLkQ9IiI7dGhpcy5vPW5ldyBfLkhiKHRoaXMpO3RoaXMuQT10aGlzLmo9dGhpcy5oPW51bGw7dGhpcy5nLnRyYWNrVmlzaWJpbGl0eSYmXy52LkludGVyc2VjdGlvbk9ic2VydmVyIT1udWxsJiYodGhpcy5qPW5ldyBXcyx0aGlzLkE9bmV3IFVzKHRoaXMuaikpO3RoaXMuaD1uZXcgSnMoe1NpOnRoaXMuZy5TaX0pO3RoaXMuaC53Zj0zMDA7dGhpcy5oLlpmPTFFMzt0aGlzLmgucmUoITApO3RoaXMuby5OKHRoaXMuaCwic2hvdyIsKDAsXy55KSh0aGlzLm9nLAp0aGlzKSk7dGhpcy5vLk4odGhpcy5oLCJoaWRlIiwoMCxfLnkpKHRoaXMubmcsdGhpcykpO3RoaXMuaC5rYSgpO2E9bmV3IEtzO2duKCJnb29nLWd0LXRodW1iVXBCdXR0b24iKSYmKE9zKGEpLFFzKGEpLFRzKGEpKX07Xy5CKFpzLF8uaGIpO3ZhciAkcz1mdW5jdGlvbihhKXthLkEmJmEuQS5zdG9wKCk7Zm9yKHZhciBiIGluIGEubCl7dmFyIGM9YSxkPWMubFtiXTtpZihkKXtjLmomJmMuai5kZXRhY2goZC5BYSk7Zm9yKHZhciBlPTA7ZTxkLkFhLmxlbmd0aDsrK2UpZC5BYVtlXSYmYy5kZXRhY2goZC5BYVtlXSk7ZGVsZXRlIGMubFtiXX19YS5qJiZhLmoucmVzZXQoKX07Xy5tPVpzLnByb3RvdHlwZTtfLm0uYXR0YWNoPWZ1bmN0aW9uKGEsYil7YiYmKGIuR2Q9YSx0aGlzLmguYXR0YWNoKGIpKX07Xy5tLmRldGFjaD1mdW5jdGlvbihhKXthJiZ0aGlzLmguZGV0YWNoKGEpfTsKXy5tLm9nPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmxhO2E9YT9hLkdkOnZvaWQgMDtpZihhIT09dm9pZCAwKXt2YXIgYj10aGlzLmxbYV07YXQodGhpcyx0aGlzLkIsITEpO3RoaXMuQj1hO2F0KHRoaXMsYSk7dGhpcy5oLk5hKGIuVGkpO3RoaXMuaC5uYShiLlZpKTt2YXIgYz1iLlo7dGhpcy5oLndhPWMmJl8uQWMoYyk7dGhpcy5oLkthKGIudGV4dCl9YT1uZXcgQ3VzdG9tRXZlbnQoImdvb2ctZ3QtcG9wdXBTaG93biIse2RldGFpbDp7R2Q6YSxYaTp0aGlzLmh9fSk7d2luZG93LmRvY3VtZW50LmJvZHkuZGlzcGF0Y2hFdmVudChhKX07Xy5tLm5nPWZ1bmN0aW9uKCl7YXQodGhpcyx0aGlzLkIsITEpfTtfLm0uTT1mdW5jdGlvbigpeyRzKHRoaXMpO3RoaXMuaCYmKHRoaXMuaC5kaXNwb3NlKCksdGhpcy5oPW51bGwpO3RoaXMubyYmKHRoaXMuby5kaXNwb3NlKCksdGhpcy5vPW51bGwpO18uaGIucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07CnZhciBhdD1mdW5jdGlvbihhLGIsYyl7aWYoYT1hLmxbYl0pZm9yKGM9Y3x8dHlwZW9mIGM9PSJ1bmRlZmluZWQiLGI9MDtiPGEuQWEubGVuZ3RoOysrYilpZihhLkFhW2JdKVlzW2M/ImFkZCI6InJlbW92ZSJdKGEuQWFbYl0sIlZJcGdKZC15QVdORWItVklwZ0pkLWZtY21TLXNuNTRRIil9O3ZhciBidD1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEubGVuZ3RoOysrYilpZihhW2JdJiZhW2JdLm5vZGUpcmV0dXJuIGFbYl0ubm9kZTtyZXR1cm4gbnVsbH0sZnQ9ZnVuY3Rpb24oYSl7dmFyIGI9YnQoYSk7aWYoIWIpcmV0dXJuIG51bGw7dmFyIGM9W10sZD1bXSxlPVtdO2I9bmV3IGRzKGIsITApO3ZhciBmPWFbYS5sZW5ndGgtMV0ubm9kZSxnPTAsaD0hMTtkb3tiLm5leHQoKTt2YXIgaz1iLm5vZGUoKTtpZighaylicmVhazt2YXIgbD1iLmcuZyxuPWIuZGVwdGgoKTtmb3IobD09MSYmLS1uO2c8YS5sZW5ndGgmJiFhW2ddLm5vZGU7KSsrZztrPT1hW2ddLm5vZGV8fCFoJiZsPT0xJiYoayE9bnVsbCYmay5wcmV2aW91c1NpYmxpbmc9PW51bGw/MDohY3QoZHQoaykpKT8obD1ldChrKSxkLnB1c2goe25vZGU6bCxLYTpmdW5jdGlvbigpe319KSxlW2QubGVuZ3RoLTFdPW4say5wYXJlbnROb2RlJiZrLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGwsayksaz09YVtnXS5ub2RlJiYKKGNbZysrXT1kLmxlbmd0aC0xLGg9ITApKTpoPSExfXdoaWxlKGshPWYpO3JldHVybnt6ZTplLEdpOmMsZGk6ZH19LGN0PWZ1bmN0aW9uKGEpe3JldHVybiBhIT1udWxsJiZYclthLnRhZ05hbWVdfSxkdD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBudWxsO2ZvcihhPWEucHJldmlvdXNTaWJsaW5nO2EhPW51bGwmJmEhPW51bGwmJmEubm9kZVR5cGU9PTMmJl8uQWMoRW8oYSkpPT0iIjspYT1hLnByZXZpb3VzU2libGluZztyZXR1cm4gYX0sanQ9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmc9W107Zm9yKHZhciBnPTA7ZzxhLmxlbmd0aDsrK2cpdGhpcy5nLnB1c2goIm5vZGVUeXBlImluIGFbZ10/Z3QoYVtnXSk6YVtnXSksaHQoYVtnXS5ub2RlKTt0aGlzLmw9Yjt0aGlzLkQ9ZHx8MDt0aGlzLlI9ZXx8MDt0aGlzLkM9Yzt0aGlzLkI9Znx8bnVsbDt0aGlzLks9dGhpcy5HPXRoaXMuTD0hMTt0aGlzLm89W107dGhpcy5BPVtdO3RoaXMuaD1bXTsKdGhpcy5PPVtdO25ldyBfLkhiKHRoaXMpO3RoaXMuaj10aGlzLkk9ITF9LGd0O18uQihqdCxfLmhiKTsKdmFyIG10PWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiExO2lmKGEubm9kZVR5cGUhPTN8fCFfLlNjKXJldHVybiBrdCBpbiBhJiYhIWFba3RdO2lmKCFhLnBhcmVudE5vZGUpcmV0dXJuITA7aWYoIShsdCBpbiBhLnBhcmVudE5vZGUpKXJldHVybiExO3ZhciBiPWEucGFyZW50Tm9kZVtsdF07aWYoIWJ8fCFiW2Eubm9kZVZhbHVlXSlyZXR1cm4hMTtiPWJbYS5ub2RlVmFsdWVdO2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGJbY109PWEpcmV0dXJuITA7cmV0dXJuITF9LG50PWZ1bmN0aW9uKGEsYil7aWYoIWEpcmV0dXJuIiI7aWYoYS50YWdOYW1lPT0iVElUTEUiKXJldHVybiBTdHJpbmcoZG9jdW1lbnQudGl0bGUpO2Eubm9kZVR5cGU9PTM/Yj0ibm9kZVZhbHVlIjpifHwoYj0idmFsdWUiKTtyZXR1cm4gYS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKGIpP1N0cmluZyhhLmdldEF0dHJpYnV0ZShiKSk6dHlwZW9mIGFbYl09PT0ic3RyaW5nIj9TdHJpbmcoYVtiXSk6CiIifTtqdC5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sfTsKdmFyIG90PWZ1bmN0aW9uKGEsYixjKXtiPXtQZjpiLGhlOmMsVTpbXX07YS5oLnB1c2goYik7cmV0dXJuIGJ9LHF0PWZ1bmN0aW9uKGEpe2lmKCFhLmomJmEuTCYmIWEuRyYmIWEuSyl7YS5HPSEwO3ZhciBiO2lmKGI9cHQoYS5nKSl7Yj1hLmc7dmFyIGM9YS5oO2lmKGIubGVuZ3RoPT0xJiZiWzBdJiZiWzBdLnhlKXtmb3IodmFyIGQ9W10sZT0wO2U8Yy5sZW5ndGg7KytlKWZvcih2YXIgZj0wO2Y8Y1tlXS5VLmxlbmd0aDsrK2YpZC5wdXNoKGNbZV0uVVtmXS5aKTtiWzBdLkthKGQuam9pbigiICIpLGJbMF0ubm9kZSk7Yj0hMH1lbHNlIGI9ITE7Yj0hYn1pZihiJiYoYj1mdChhLmcpKSl7YS5BPWIuR2k7YS5vPWIuZGk7ZD1hLmc7ZT1hLkE7Zj1hLm87dmFyIGc9Yi56ZTtjPVtdO2Zvcih2YXIgaD0wO2g8ZC5sZW5ndGg7KytoKWlmKGNbaF09W10sZFtoXS5ub2RlJiZlW2hdIT09dm9pZCAwKWZvcih2YXIgaz0wO2s8Zi5sZW5ndGg7KytrKWlmKCEoZ1trXT5nW2VbaF1dKSl7aWYoZ1trXT09CmdbZVtoXV0pe2lmKGZba10ubm9kZS5wYXJlbnROb2RlIT1mW2VbaF1dLm5vZGUucGFyZW50Tm9kZSljb250aW51ZX1lbHNle2Zvcih2YXIgbD1nW2VbaF1dLWdba10sbj1mW2VbaF1dLm5vZGUucGFyZW50Tm9kZTtsLS0mJm4mJm4hPWZba10ubm9kZS5wYXJlbnROb2RlOyluPW4ucGFyZW50Tm9kZTtpZihuIT1mW2tdLm5vZGUucGFyZW50Tm9kZSljb250aW51ZX1jW2hdLnB1c2goayl9ZD1hLmc7ZT1hLmg7Zj0tMTtmb3IoZz1lLmxlbmd0aC0xO2c+PTA7LS1nKWZvcihoPWVbZ10saz1oLlUubGVuZ3RoLTE7az49MDstLWspaWYobD1oLlVba10sIShsLlg8MCkmJmRbbC5YXSYmZFtsLlhdLm5vZGUpaWYoZjwwKWwuWGM9aXIoY1tsLlhdKSxmPWNbbC5YXVtjW2wuWF0ubGVuZ3RoLTFdO2Vsc2UgZm9yKG49Y1tsLlhdLmxlbmd0aC0xO24+PTA7LS1uKWlmKGNbbC5YXVtuXTw9Zil7bC5YYz1pcihjW2wuWF0uc2xpY2UoMCxuKzEpKTtmPWNbbC5YXVtuXTticmVha31mb3IoYz1lPTA7YzxhLmgubGVuZ3RoOysrYyl7ZD0KYS5oW2NdO2Y9YS5nO2c9ZDtoPWIuemU7az1hLkE7bD0iIjtmb3Iobj0wO248Zy5VLmxlbmd0aDsrK24pe3ZhciBxPWcuVVtuXTtsKz1xLlo7aWYocS5YPDApe3ZhciBwPS0xLHI9LTEsdD1rW2cuVVtuLTFdLlhdO3QhPT12b2lkIDAmJihwPWhbdF0pO248Zy5VLmxlbmd0aC0xJiYodD1rW2cuVVtuKzFdLlhdLHQhPT12b2lkIDAmJihyPWhbdF0pKTtpZihwPj0wfHxyPj0wKWE6aWYodD0ocDwwfHxyPHApJiZuPGcuVS5sZW5ndGgtMSxwPWYscj1xLHE9Zy5VW3Q/bisxOm4tMV0sIShxLlg+PXAubGVuZ3RofHxwW3EuWF0ubm9kZT09bnVsbCkpe3A9ci5aO3IuWj0iIjtpZigvXiArJC8udGVzdChwKSYmKHI9dD9xLlouY2hhckNvZGVBdCgwKTpxLlouY2hhckNvZGVBdChxLloubGVuZ3RoLTEpLDM1ODQ8PXImJnI8PTM3MTF8fDEyMjg4PD1yJiZyPD0xMjM1MXx8MTIzNTI8PXImJnI8PTEyNTQzfHwxMjc4NDw9ciYmcjw9MTI3OTl8fDE5OTY4PD1yJiZyPD00MDk1OXx8NjUyODA8PXImJnI8PQo2NTUxOSkpYnJlYWsgYTtxLlo9dD9wK3EuWjpxLlorcH19fWY9bDtnPWEuZztoPWQ7az1hLm87bD1iLnplO249YS5BO3E9W107Zm9yKHA9MDtwPGguVS5sZW5ndGgmJiEoZT49ay5sZW5ndGgpOysrcClpZihyPWguVVtwXSxyLlhjJiYhKHIuWDwwKSYmZ1tyLlhdLm5vZGUmJnIuWilpZihlPT1uW3IuWF18fGUgaW4gci5YYyYmKCEoZSsxIGluIHIuWGMpfHxlKzEhPW5bci5YXSkpe2lmKGtbZV0mJmtbZV0ubm9kZSl7dD1ldChrW2VdLm5vZGUpO3EucHVzaCh0KTtmb3IodmFyIEE9a1tlXS5ub2RlLEQ9bFtuW3IuWF1dLWxbZV0sRT10LGJhPWdbci5YXS5ub2RlLnBhcmVudE5vZGUsWj1FO2JhJiZELS07KVo9YmEuY2xvbmVOb2RlKCExKSxaLmFwcGVuZENoaWxkKEUpLGJhPWJhLnBhcmVudE5vZGUsRT1aO0EuYXBwZW5kQ2hpbGQoWik7QT1nW3IuWF0ubm9kZTtnW3IuWF0ucmQ/Z1tyLlhdLnpmfHx0LmFwcGVuZENoaWxkKEEpOihBPWdbci5YXS5ub2RlLmNsb25lTm9kZSghMSksQS5pZCYmCihBLmlkPSIiKSx0LmFwcGVuZENoaWxkKEEpKTtnW3IuWF0uS2Eoci5aLEEpfX1lbHNlKytlLC0tcDtnPXE7bj1hLmc7cT1kO2g9YS5DO2lmKHEuUGYpaD1xLlBmO2Vsc2V7bD1uLmxlbmd0aDtrPS0xO2ZvcihwPTA7cDxxLlUubGVuZ3RoOysrcClyPXEuVVtwXS5YLHI+PTAmJm5bcl0mJm5bcl0ubm9kZSYmKGs9TWF0aC5tYXgoayxyKSxsPU1hdGgubWluKGwscikpO2ZvcihuPSIiO2w8PWs7KytsKWhbbF0mJihuKz1oW2xdKTtoPW59bD1hO249ZztxPWg7aWYobC5CKXtpZihsLkIuZy5oYyE9Myl7Zz1sLk87aD1nLnB1c2g7az1sLkI7ZD1kLmhlO2Q9ay5sWysray5DXT17aWQ6ay5DLnRvU3RyaW5nKCksUms6bCx0ZXh0OnEsZm06ZHx8cSxaOmYsVGk6ay5ELFZpOmsuRixBYTpufTtmb3IoZj0wO2Y8bi5sZW5ndGg7KytmKW5bZl0mJmsuYXR0YWNoKGQuaWQsbltmXSk7ay5qJiZrLmouYXR0YWNoKG4scS5sZW5ndGgpO2suQSYmay5BLnN0YXJ0KCk7aC5jYWxsKGcsZC5pZCl9fWVsc2UgZm9yKGQ9CjA7ZDxuLmxlbmd0aDsrK2QpbltkXS50aXRsZT1xfWI9YS5nO2ZvcihjPTA7YzxiLmxlbmd0aDsrK2MpYltjXS5ub2RlJiYhYltjXS5yZCYmXy5BZChiW2NdLm5vZGUpO2I9YS5nO2M9YS5vO2E9YS5BO2ZvcihlPWQ9MDtlPGMubGVuZ3RoOysrZSlpZihmPWNbZV0ubm9kZSl7Zm9yKDtkPGIubGVuZ3RoJiZlPmFbZF07KWQrKzsoZD49Yi5sZW5ndGh8fGUhPWFbZF0pJiYhZi5maXJzdENoaWxkJiYoXy5BZChmKSxjW2VdLm5vZGU9bnVsbCl9fX19OwpqdC5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe2lmKHRoaXMuRylpZih0aGlzLkc9ITEsdGhpcy5CJiYkcyh0aGlzLkIpLHRoaXMuTz1bXSxwdCh0aGlzLm8pLHRoaXMuZy5sZW5ndGg9PTEmJnRoaXMuZ1swXS54ZSl0aGlzLmdbMF0uS2EodGhpcy5DWzBdLHRoaXMuZ1swXS5ub2RlKTtlbHNle2Zvcih2YXIgYT0wLGI9MDtiPHRoaXMuby5sZW5ndGg7KytiKXt2YXIgYz10aGlzLm9bYl0ubm9kZTtpZihjKXtmb3IoO2E8dGhpcy5nLmxlbmd0aCYmYj50aGlzLkFbYV07KXt2YXIgZD1hKys7dGhpcy5nW2RdLm5vZGUmJihydCh0aGlzLmdbZF0ubm9kZSksdGhpcy5nW2RdLm5vZGU9bnVsbCl9aWYoYTx0aGlzLmcubGVuZ3RoJiZiPT10aGlzLkFbYV0mJnRoaXMuZ1thXS5ub2RlKXt0aGlzLmdbYV0uemZ8fChfLnpkKGMpLGMuYXBwZW5kQ2hpbGQodGhpcy5nW2FdLm5vZGUpKTt0aGlzLmdbYV0uS2EodGhpcy5DW2FdLHRoaXMuZ1thXS5ub2RlKTthKys7dmFyIGU9Yy5wYXJlbnROb2RlOwppZihlJiZlLm5vZGVUeXBlIT0xMSlpZihjLnJlbW92ZU5vZGUpYy5yZW1vdmVOb2RlKCExKTtlbHNle2Zvcig7ZD1jLmZpcnN0Q2hpbGQ7KWUuaW5zZXJ0QmVmb3JlKGQsYyk7Xy5BZChjKX19ZWxzZSBfLkFkKGMpfX10aGlzLm89W119fTtqdC5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18uaGIucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKTtmb3IodmFyIGE9MDthPHRoaXMuZy5sZW5ndGg7KythKXRoaXMuZ1thXS5ub2RlJiZydCh0aGlzLmdbYV0ubm9kZSk7dGhpcy5nPW51bGx9Owp2YXIgaHQ9ZnVuY3Rpb24oYSl7aWYoYSlpZihhLm5vZGVUeXBlPT0zJiZfLlNjKXtsdCBpbiBhLnBhcmVudE5vZGUmJmEucGFyZW50Tm9kZVtsdF18fChhLnBhcmVudE5vZGVbbHRdPXt9KTt2YXIgYj1hLnBhcmVudE5vZGVbbHRdO2JbYS5ub2RlVmFsdWVdfHwoYlthLm5vZGVWYWx1ZV09W10pO2I9YlthLm5vZGVWYWx1ZV07Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDsrK2MpaWYoYltjXT09YSlyZXR1cm47Yi5wdXNoKGEpfWVsc2UgYVtrdF09MX0scnQ9ZnVuY3Rpb24oYSl7aWYoIWF8fGEubm9kZVR5cGU9PTMmJl8uU2Mpe3ZhciBiPWEucGFyZW50Tm9kZTtpZihiJiZsdCBpbiBiKXt2YXIgYz1iW2x0XTtpZihjJiZhJiZjW2Eubm9kZVZhbHVlXSl7dmFyIGQ9Y1thLm5vZGVWYWx1ZV07aWYoZClmb3IodmFyIGU9MDtlPGQubGVuZ3RoOysrZSlpZihkW2VdPT1hKXtkLnNwbGljZShlLDEpO2JyZWFrfWQubGVuZ3RoPT0wJiZkZWxldGUgY1thLm5vZGVWYWx1ZV19aWYoYyYmd3IoYykpdHJ5e2RlbGV0ZSBiW2x0XX1jYXRjaChmKXtiW2x0XT0KIiJ9fX1lbHNlIGlmKGt0IGluIGEpdHJ5e2RlbGV0ZSBhW2t0XX1jYXRjaChmKXthW2t0XT0iIn19LHB0PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKXRyeXthW2JdLm5vZGUmJiFhW2JdLm5vZGUucGFyZW50Tm9kZSYmKGFbYl0ubm9kZT1udWxsKX1jYXRjaChjKXthW2JdLm5vZGU9bnVsbH1mb3IoYj1hLmxlbmd0aC0xO2I+PTAmJiFhW2JdLm5vZGU7LS1iKTthLmxlbmd0aD1iKzE7cmV0dXJuIGEubGVuZ3RofSxldD1mdW5jdGlvbihhKXthPWEub3duZXJEb2N1bWVudD9hLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9udCIpOl8ud2QoZG9jdW1lbnQsImZvbnQiKTtodChhKTthLnN0eWxlLnZlcnRpY2FsQWxpZ249ImluaGVyaXQiO18ub2koXy5aaShwcSwyKSkmJihhLmRpcj0iYXV0byIpO3JldHVybiBhfSxzdD1mdW5jdGlvbihhKXtmb3IodmFyIGI9bmV3IFNldCxjPTA7YzxhLmcubGVuZ3RoO2MrKyl7dmFyIGQ9YS5nW2NdLm5vZGU7ZCE9bnVsbCYmCmIuYWRkKGQpfXJldHVybiBifSx0dD1mdW5jdGlvbigpe3RoaXMuaD17fTt0aGlzLmc9e319O3R0LnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5oW2FdIT1udWxsfHx0aGlzLmdbYV0hPW51bGx8fGImJihhIGluIHRoaXMuaHx8YSBpbiB0aGlzLmcpfTt0dC5wcm90b3R5cGUud3JpdGU9ZnVuY3Rpb24oYSxiKXt0aGlzLmdbYV09Yn07dHQucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXtkZWxldGUgdGhpcy5nW2FdO2RlbGV0ZSB0aGlzLmhbYV19O3R0LnByb3RvdHlwZS5yZWFkPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuZ1thXTtifHwoYj10aGlzLmhbYV0sdGhpcy5nW2FdPWIpO3JldHVybiBifTt2YXIga3Q9Il9ndF8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKSxsdD0iX2d0bl8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKTsKKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShjKXtkb2N1bWVudC50aXRsZT1jfXZhciBiPXt9O2d0PWZ1bmN0aW9uKGMsZCl7aWYoYy50YWdOYW1lPT0iVElUTEUiKXJldHVybntub2RlOmMsS2E6YSxyZDohMCx6ZjohMCx4ZTohMH07aWYoYy5ub2RlVHlwZT09MylyZXR1cm57bm9kZTpjLEthOmZ1bmN0aW9uKGUsZil7Xy5DZChmLGUpfX07ZHx8KGQ9InZhbHVlIik7YltkXXx8KGJbZF09ZnVuY3Rpb24oZSxmKXtmLnNldEF0dHJpYnV0ZSYmZi5zZXRBdHRyaWJ1dGUoZCxlKTt0eXBlb2YgZT09PSJzdHJpbmciJiYoZltkXT1lKX0pO2M9e25vZGU6YyxLYTpiW2RdLHJkOiEwfTtkIT0idmFsdWUiJiYoYy54ZT0hMCk7cmV0dXJuIGN9fSkoKTsKdmFyIHV0PWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZC5maXJzdENoaWxkJiZkLmZpcnN0Q2hpbGQubm9kZVR5cGU9PTM/ZC5maXJzdENoaWxkLm5vZGVWYWx1ZTpFbyhkKTtkPXtYOmMsWjpwbyhkKX07YS5wdXNoKGQpO2JbY10/YltjXS5lbmQ9ZDpiW2NdPXtzdGFydDpkLGVuZDpkfTtyZXR1cm4gZH0sdnQ9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiLGM9YS5maXJzdENoaWxkO2M7Yz1iKWI9Yy5uZXh0U2libGluZyxjLm5vZGVUeXBlIT0zJiYoYz09YS5maXJzdENoaWxkP2EucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLGEpOnhvKGMsYSksdnQoYykpfTt2YXIgd3Q9ZnVuY3Rpb24oKXt0aGlzLmc9W119O3d0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy5nLnB1c2goYSl9O3ZhciB4dD1mdW5jdGlvbigpe3RoaXMuZz1bXX07Xy5CKHh0LHd0KTt4dC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEpe2lmKGEpZm9yKDthKCk7KTt9O3h0Lmc9ZnVuY3Rpb24oKXtyZXR1cm4gV3EoeHQpfTt2YXIgenQ9ZnVuY3Rpb24oYSl7dGhpcy5nPVtdO3RoaXMuaD0uNTt5dCh0aGlzLGEpO3RoaXMubD0wO3RoaXMuaj0hMDt0aGlzLm89KDAsXy55KSh0aGlzLkEsdGhpcyl9O18uQih6dCx3dCk7dmFyIHl0PWZ1bmN0aW9uKGEsYil7Yj4xP2EuaD0xOmI8LjAwMT9hLmg9LjAwMTpiJiYoYS5oPWIpfTt6dC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEpe3d0LnByb3RvdHlwZS5hZGQuY2FsbCh0aGlzLGEpO3RoaXMuaiYmQXQodGhpcyl9O3ZhciBBdD1mdW5jdGlvbihhKXthLmo9ITE7d2luZG93LnNldFRpbWVvdXQoYS5vLE1hdGgubWluKGEubCw1RTMpKX07Cnp0LnByb3RvdHlwZS5BPWZ1bmN0aW9uKCl7dmFyIGE9KG5ldyBEYXRlKS5nZXRUaW1lKCk7ZG97dGhpcy5nLmxlbmd0aCYmKHRoaXMuZ1swXSYmdGhpcy5nWzBdKCl8fHRoaXMuZy5zaGlmdCgpKTt2YXIgYj0hIXRoaXMuZy5sZW5ndGg7dmFyIGM9OTUqdGhpcy5oKzU7dmFyIGQ9KG5ldyBEYXRlKS5nZXRUaW1lKCktYX13aGlsZShiJiZkPGMpO3RoaXMubD1NYXRoLmNlaWwoZCooMS90aGlzLmgtMSkpKzE7Yj9BdCh0aGlzKTp0aGlzLmo9ITB9O3ZhciBCdD1mdW5jdGlvbihhLGIpe3RoaXMuRD1hfHxudWxsO3RoaXMuST1ifHx4dC5nKCk7dGhpcy5CPXRoaXMuQT10aGlzLkc9bnVsbDt0aGlzLmw9dGhpcy5qPSExO3RoaXMubz1udWxsO3RoaXMuZz1bXTt0aGlzLmg9MH0sQ3Q9ZnVuY3Rpb24oYSxiKXthLmp8fChhLkc9Yil9LER0PWZ1bmN0aW9uKGEsYixjKXthLkE9Yz8oMCxfLnkpKGIsYyk6Yn0sRXQ9ZnVuY3Rpb24oYSxiLGMpe2EuQj1jPygwLF8ueSkoYixjKTpifSxGdD1mdW5jdGlvbihhLGIpe2Euanx8KGEuaj0hMCxhLkY9YixhLmgrKyxhLm89YS5HLGEuQygpKX07QnQucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmgrKzt0aGlzLmo9ITE7dGhpcy5nPVtdfTsKdmFyIEd0PWZ1bmN0aW9uKGEpe2lmKCFhLmopcmV0dXJuIG51bGw7Zm9yKHZhciBiPSExLGM9MDtjPGEuZy5sZW5ndGg7KytjKWlmKGEuZ1tjXS50YXJnZXQ9PT1hKXthLmdbY10ucmVhZHk9ITE7YS5nW2NdLmhnPWEuaCsxO2I9ITA7YnJlYWt9Ynx8YS5nLnB1c2goe3RhcmdldDphLHJlYWR5OiExLGhnOmEuaCsxfSk7cmV0dXJuKDAsXy55KShhLkMsYSxhLGEuaCsxKX0sSHQ9ZnVuY3Rpb24oYSl7aWYoIWEuailyZXR1cm4hMDtmb3IodmFyIGI9MDtiPGEuZy5sZW5ndGg7KytiKWlmKGEuZ1tiXS50YXJnZXQ9PT1hJiZhLmdbYl0uaGc9PWEuaClyZXR1cm4gYS5nW2JdLnJlYWR5O3JldHVybiEwfTsKQnQucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSxiKXtpZih0aGlzLmope2lmKGEpZm9yKHZhciBjPTA7Yzx0aGlzLmcubGVuZ3RoOysrYylpZih0aGlzLmdbY10udGFyZ2V0PT09YSl7dGhpcy5nW2NdLnJlYWR5PSEwO2JyZWFrfXRoaXMubHx8dGhpcy5JLmFkZCgoMCxfLnkpKHRoaXMuVyx0aGlzLGJ8fHRoaXMuaCkpfX07CkJ0LnByb3RvdHlwZS5XPWZ1bmN0aW9uKGEpe2lmKHRoaXMuaCE9YSlyZXR1cm4hMTthPXRoaXMubztpZihhPT1JdClyZXR1cm4gdGhpcy5zdG9wKCksdGhpcy5BJiZ0aGlzLkEuY2FsbCh0aGlzLkQsdGhpcyx0aGlzLkYpLCExO3RoaXMubD0hMDt0cnl7dmFyIGI9YS5jYWxsKHRoaXMuRCx0aGlzLHRoaXMuRik7aWYoIWIpdGhyb3cgRXJyb3IoKTt9Y2F0Y2goYyl7dGhpcy5zdG9wKCk7YT1jO2lmKHRoaXMuQil0aGlzLkIuY2FsbCh0aGlzLkQsYSx0aGlzLHRoaXMuRik7ZWxzZSB0aHJvdyBhO3JldHVybiExfWZpbmFsbHl7dGhpcy5sPSExfWIhPUp0JiYodGhpcy5vPWIsdGhpcy5oKyssdGhpcy5DKCkpO3JldHVybiExfTt2YXIgSnQ9ZnVuY3Rpb24oKXt9LEl0PWZ1bmN0aW9uKCl7fTt2YXIgS3Q9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhLmNsYXNzTmFtZT09InN0cmluZyI/YS5jbGFzc05hbWU6YS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn0sTHQ9ZnVuY3Rpb24oYSxiKXt0eXBlb2YgYS5jbGFzc05hbWU9PSJzdHJpbmciP2EuY2xhc3NOYW1lPWI6YS5zZXRBdHRyaWJ1dGUmJmEuc2V0QXR0cmlidXRlKCJjbGFzcyIsYil9LE10PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuY2xhc3NMaXN0P2EuY2xhc3NMaXN0LmNvbnRhaW5zKGIpOl8udGEoYS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3Q6S3QoYSkubWF0Y2goL1xTKy9nKXx8W10sYil9LE50PWZ1bmN0aW9uKGEsYil7aWYoYS5jbGFzc0xpc3QpYS5jbGFzc0xpc3QuYWRkKGIpO2Vsc2UgaWYoIU10KGEsYikpe3ZhciBjPUt0KGEpO0x0KGEsYysoYy5sZW5ndGg+MD8iICIrYjpiKSl9fSxPdD1mdW5jdGlvbihhLGIpe2EuY2xhc3NMaXN0P2EuY2xhc3NMaXN0LnJlbW92ZShiKTpNdChhLGIpJiYKTHQoYSxBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3Q6S3QoYSkubWF0Y2goL1xTKy9nKXx8W10sZnVuY3Rpb24oYyl7cmV0dXJuIGMhPWJ9KS5qb2luKCIgIikpfTt2YXIgUXQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPWJ8fHt9O3RoaXMuVz1lfHxbXTt0aGlzLkE9W107dGhpcy5GPVtdO1B0KHRoaXMsYXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGIuVmY9PT12b2lkIDB8fCEhYi5WZik7dGhpcy5DPWN8fGp0O3RoaXMuRD1iLmxpO3RoaXMuaj10aGlzLmc9dGhpcy5vPXRoaXMuZGM9bnVsbDt0aGlzLkI9ISFiLmJqO3RoaXMuTD0hIWIuWmk7dGhpcy5LPXRoaXMuQj8yNzoxMzt0aGlzLkk9ITA7dGhpcy5HPVtdO3RoaXMubD1uZXcgQnQodGhpcyxkKX0sUnQ9ZnVuY3Rpb24oYSxiLGMsZCl7YS5sLmp8fChiPXtkZzpiLGFnOmMsQWE6W10sUWY6W10scmI6W10sdGV4dExlbmd0aDowLHNpemU6MCxjb250aW51b3VzOiEwfSxhLmRjPW51bGwsQ3QoYS5sLGEuaCksRHQoYS5sLGQpLEV0KGEubCwoMCxfLnkpKGZ1bmN0aW9uKGUpe3RoaXMudWkoZSk7ZCgpfSxhKSksRnQoYS5sLGIpKX0sU3Q9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5BYS5sZW5ndGg+MD8KbmV3IGIoYS5BYSxhLnJiLmpvaW4oIiIpLGEuUWYsYS50ZXh0TGVuZ3RoLGEuc2l6ZSk6bnVsbH0sVHQ9ZnVuY3Rpb24oYSxiKXtpZighYS5qKXJldHVybiBhLmRjPVN0KGIsYS5DKSwhMDtpZighYi5jb250aW51b3VzJiZiLkFhLmxlbmd0aD4wKXJldHVybiBhLmRjPVN0KGIsYS5DKSwhMDtiLmNvbnRpbnVvdXM9YS5qLktmO2E6e3ZhciBjPWEuajt2YXIgZD1hLks7aWYoYi5zaXplPmIuYWd8fGIudGV4dExlbmd0aD5iLmRnKWM9ITE7ZWxzZXt2YXIgZT1jLnNpemUsZj1jLnRleHQubGVuZ3RoO2lmKGIuQWEubGVuZ3RoIT0wJiYoZSs9Yi5BYS5sZW5ndGg9PTE/Yi5zaXplK2QrZDpiLnNpemUrZCxmKz1iLnRleHRMZW5ndGgsZT5iLmFnfHxmPmIuZGcpKXtjPSExO2JyZWFrIGF9Yi5zaXplPWU7Yi50ZXh0TGVuZ3RoPWY7Yi5BYS5wdXNoKGMubm9kZSk7Yi5RZi5wdXNoKGMudGV4dCk7ZD1iLkFhLmxlbmd0aC0xO2Q9PTA/Yi5yYi5wdXNoKGMuTGQpOihkPT0xJiYoYi5yYlswXT0iPGEgaT0wPiIrCmIucmJbMF0rIjwvYT4iKSxiLnJiLnB1c2goIjxhIGk9IitkKyI+IiksYi5yYi5wdXNoKGMuTGQpLGIucmIucHVzaCgiPC9hPiIpKTtjPSEwfX1pZihjKXJldHVybiBhLmo9bnVsbCwhMTthLmRjPVN0KGIsYS5DKTtyZXR1cm4hMH0sVXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW50KGIsYyk7ZCYmXy5BYyhqbyhkKSkmJmEuRy5wdXNoKHtub2RlOmIsWWc6Yyx0ZXh0OmR9KX07ClF0LnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcztpZih0aGlzLmomJlR0KHRoaXMsYikpcmV0dXJuIEl0O2lmKCF0aGlzLmcpe3RoaXMuST0hIXRoaXMuQS5sZW5ndGg7aWYoIXRoaXMuQS5sZW5ndGgmJihhPXRoaXMuRy5zaGlmdCgpKSlyZXR1cm4gdGhpcy5qPXtLZjohMSxub2RlOmd0KGEubm9kZSxhLllnKSx0ZXh0OmEudGV4dCxMZDpsbyhhLnRleHQpLHNpemU6dGhpcy5CP18uR2IoYS50ZXh0KS5sZW5ndGg6YS50ZXh0Lmxlbmd0aH0sYi5jb250aW51b3VzPSExLFR0KHRoaXMsYiksSXQ7YT10aGlzLkEuc2hpZnQoKXx8dGhpcy5GLnNoaWZ0KCk7aWYoIWEpcmV0dXJuIHRoaXMuaj1udWxsLFR0KHRoaXMsYiksSXQ7dGhpcy5vPVthLllpXTt0aGlzLmc9bmV3IGRzKGEucm9vdCl9dGhpcy5nLm5leHQoKTtpZih0aGlzLmcuZG9uZSlyZXR1cm4gdGhpcy5nPW51bGwsYi5jb250aW51b3VzPSExLHRoaXMuaDthPXRoaXMuZy5ub2RlKCk7dmFyIGQ9dGhpcy5nLmcuZzsKaWYoZD09LTEpcmV0dXJuIFZ0KHRoaXMpLFd0KGEpfHwoYi5jb250aW51b3VzPSExKSx0aGlzLmg7WHQodGhpcyxhKTtkPWQ9PTE7dmFyIGU9ISFhJiYoYS5ub2RlVHlwZT09MyYmdHlwZW9mIGEubm9kZVZhbHVlPT09InN0cmluZyJ8fGEudGFnTmFtZT09IlRJVExFIiYmdHlwZW9mIGEudmFsdWU9PT0ic3RyaW5nInx8YS50YWdOYW1lPT0iVEVYVEFSRUEiJiZNdChhLCJ0cmFuc2xhdGUiKXx8YS50YWdOYW1lPT0iSU5QVVQiJiYoWXJbYS50eXBlXXx8TXQoYSwidHJhbnNsYXRlIikpKTtpZigoZXx8ZCkmJnRoaXMuSSYmIVl0KGEpKXJldHVybiBQdCh0aGlzLGEsWnQodGhpcyksITApLGJzKHRoaXMuZy5nKSxWdCh0aGlzKSx0aGlzLmg7aWYoZCYmWnQodGhpcykmJih0aGlzLkwmJlV0KHRoaXMsYSwidGl0bGUiKSxVdCh0aGlzLGEsImFsdCIpLFV0KHRoaXMsYSwicGxhY2Vob2xkZXIiKSxVdCh0aGlzLGEsImFyaWEtbGFiZWwiKSxVdCh0aGlzLGEsImFyaWEtcGxhY2Vob2xkZXIiKSxVdCh0aGlzLAphLCJhcmlhLXJvbGVkZXNjcmlwdGlvbiIpLFV0KHRoaXMsYSwiYXJpYS12YWx1ZXRleHQiKSxlcyh0aGlzLmcpKSlmb3IodmFyIGY9YS5maXJzdENoaWxkO2Y7KXtpZihmLm5vZGVUeXBlPT0zKXt2YXIgZz1mLm5vZGVWYWx1ZS5zcGxpdCgiXG4iKTtpZihnLmxlbmd0aD4yfHxnLmxlbmd0aD09MiYmXy5BYyhnWzBdKSE9IiImJl8uQWMoZ1sxXSkhPSIiKXtmLm5vZGVWYWx1ZT1nWzBdO2Zvcih2YXIgaD0xO2g8Zy5sZW5ndGg7KytoKXt2YXIgaz1fLnNkKGEpLmNyZWF0ZUVsZW1lbnQoImZvbnQiKTt0aGlzLlcucHVzaChrKTt4byhrLGYpO2Y9azt4byhfLnNkKGEpLmNyZWF0ZVRleHROb2RlKCJcbiIrZ1toXSksZik7Zj1mLm5leHRTaWJsaW5nfX19Zj1mLm5leHRTaWJsaW5nfWEuc2hhZG93Um9vdCYmQXJyYXkuZnJvbShhLnNoYWRvd1Jvb3QuY2hpbGROb2RlcykuZm9yRWFjaChmdW5jdGlvbihyKXtQdChjLHIsWnQoYykpfSk7aWYoZSl7YnModGhpcy5nLmcpO2lmKFp0KHRoaXMpKXt2YXIgbD0KbnQoYSk7aWYoXy5BYyhqbyhsKSkmJih0aGlzLmo9e0tmOiEwLG5vZGU6Z3QoYSksdGV4dDpsLExkOmxvKGwpLHNpemU6dGhpcy5CP18uR2IobCkubGVuZ3RoOmwubGVuZ3RofSxUdCh0aGlzLGIpKSlyZXR1cm4gVnQodGhpcyksSXR9VnQodGhpcyk7cmV0dXJuIHRoaXMuaH1pZihkKXtpZigkdChhKXx8IWEuZmlyc3RDaGlsZCYmYS50YWdOYW1lIT0iSUZSQU1FIiYmYS50YWdOYW1lIT0iUlVCWSIpcmV0dXJuIGIuY29udGludW91cz1iLmNvbnRpbnVvdXMmJiEhWHJbYS50YWdOYW1lXSxicyh0aGlzLmcuZyksVnQodGhpcyksdGhpcy5oO2lmKGEudGFnTmFtZT09IlJVQlkiKXt0cnl7bD1fLkMoYS5jaGlsZE5vZGVzKTtmb3IodmFyIG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcT1uLnZhbHVlO3Eubm9kZVR5cGUhPTMmJlB0KHRoaXMscSxadCh0aGlzKSl9fWNhdGNoKHIpe31icyh0aGlzLmcuZyk7VnQodGhpcyk7cmV0dXJuIHRoaXMuaH1pZihhLnRhZ05hbWU9PSJJRlJBTUUiKXt0cnl7aWYoIWEuc3JjLm1hdGNoKC9odHRwcz86XC9cLy8pfHwKXy5DYihhLnNyYy5tYXRjaChfLnJmKVszXXx8bnVsbCk9PXdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSl7dmFyIHA9em8oYSkuZG9jdW1lbnRFbGVtZW50O3AmJlB0KHRoaXMscCxadCh0aGlzKSl9fWNhdGNoKHIpe31iLmNvbnRpbnVvdXM9ITE7YnModGhpcy5nLmcpO1Z0KHRoaXMpO3JldHVybiB0aGlzLmh9WnQodGhpcykmJld0KGEpP3RoaXMuRCYmYS50YWdOYW1lPT0iQSImJmEuaHJlZiYmdGhpcy5EKGEpOmIuY29udGludW91cz0hMTtyZXR1cm4gdGhpcy5ofWJzKHRoaXMuZy5nKTtWdCh0aGlzKTtyZXR1cm4gdGhpcy5ofTsKdmFyICR0PWZ1bmN0aW9uKGEpe3JldHVybiBtdChhKXx8YS5ub2RlVHlwZSE9MyYmKCFhLnRhZ05hbWV8fFdyW2EudGFnTmFtZV18fFhyW2EudGFnTmFtZV18fE10KGEsInNraXB0cmFuc2xhdGUiKSl9LGF1PWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QoYSk7cmV0dXJuIGIuZGVmYXVsdFZpZXcmJmIuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZT9iLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoYSxudWxsKTphLmN1cnJlbnRTdHlsZX0sWXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubm9kZVR5cGU9PTM/ITA6YS5ub2RlVHlwZSE9MT8hMTphLm9mZnNldFdpZHRoJiZhLm9mZnNldEhlaWdodD8hMDooYT1hdShhKSwhIWEmJmEuZGlzcGxheSE9Im5vbmUiJiZhLnZpc2liaWxpdHkhPSJoaWRkZW4iKX0sV3Q9ZnVuY3Rpb24oYSl7aWYoYS5ub2RlVHlwZT09MylyZXR1cm4hMDtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3ZhciBiPWF1KGEpO3JldHVybiEhVnJbYS50YWdOYW1lXSYmCighYnx8IWIuZGlzcGxheXx8Yi5kaXNwbGF5PT0iaW5saW5lIil9LFB0PWZ1bmN0aW9uKGEsYixjLGQpeyhkP2EuRjphLkEpLnB1c2goe3Jvb3Q6YixZaTpjPT09dm9pZCAwfHxjfSl9LFp0PWZ1bmN0aW9uKGEpe3JldHVybiBhLm9bYS5vLmxlbmd0aC0xXX0sWHQ9ZnVuY3Rpb24oYSxiKXtiPSFtdChiKSYmKGIubm9kZVR5cGU9PSRuJiZadChhKXx8IShNdChiLCJub3RyYW5zbGF0ZSIpfHxiLmF0dHJpYnV0ZXMmJmIuYXR0cmlidXRlcy50cmFuc2xhdGUmJmIuYXR0cmlidXRlcy50cmFuc2xhdGUudmFsdWU9PSJubyIpJiYoTXQoYiwidHJhbnNsYXRlIil8fCEhYi5hdHRyaWJ1dGVzJiYhIWIuYXR0cmlidXRlcy50cmFuc2xhdGUmJmIuYXR0cmlidXRlcy50cmFuc2xhdGUudmFsdWU9PSJ5ZXMifHxadChhKSkpO2Euby5wdXNoKGIpfSxWdD1mdW5jdGlvbihhKXthLm8ucG9wKCl9LGJ1PXt9O0RyLmF0dGFjaCg1NzYyLFF0LnByb3RvdHlwZSx7dWk6MX0pO3ZhciBjdT1mdW5jdGlvbigpe18udS5jYWxsKHRoaXMpO3RoaXMuZz1bXX07Xy5CKGN1LF8udSk7Y3UucHJvdG90eXBlLnJlc3RvcmU9ZnVuY3Rpb24oKXtxcyh0aGlzLmgsMCx0aGlzKX07Y3UucHJvdG90eXBlLmg9ZnVuY3Rpb24oKXtmb3IodmFyIGE9MDthPHRoaXMuZy5sZW5ndGg7KythKV8uQWQodGhpcy5nW2FdKTt0aGlzLmc9W119O2N1LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5yZXN0b3JlKCl9O3ZhciBkdT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgU2V0O2EuZm9yRWFjaChmdW5jdGlvbihjKXt5byhjKT9iLmFkZChjKTooYz1jLnBhcmVudEVsZW1lbnR8fG51bGwsYyE9bnVsbCYmYi5hZGQoYykpfSk7cmV0dXJuIGJ9O3ZhciBldT1mdW5jdGlvbihhKXt0aGlzLmg9ITA7dGhpcy5sPWE7dGhpcy5qPSExO3RoaXMuZz1bXX07ZXUucHJvdG90eXBlLm1hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5qb2luKCIiKX07dmFyIGZ1PWZ1bmN0aW9uKGEsYil7dGhpcy5vPWE7dGhpcy5sPSEwO3RoaXMuaj1iO3RoaXMuZz1udWxsO3RoaXMuaD0wfSxndT1mdW5jdGlvbihhLGIpe3JldHVybiBhLmw/KGIoKDAsXy55KShhLkEsYSksYS5vLGEuaj8iZW4iOiIiKSwhMCk6ITF9O2Z1LnByb3RvdHlwZS5BPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9Yjt0aGlzLmg9YzthKCl9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubD1hO3RoaXMuRD0hIWI7dGhpcy5nPXRoaXMuQz0wO3RoaXMubz10aGlzLmo9LTE7dGhpcy5BPXRoaXMuQj10aGlzLmg9MH0sa3U9ZnVuY3Rpb24oYSxiLGMpe2EuRCYmKGItPTkpO2Zvcih2YXIgZD0iIixlPTAsZj1hLkM7ZjxhLmwubGVuZ3RoOysrZil7dmFyIGc9YS5sLmNoYXJBdChmKSxoPWcuY2hhckNvZGVBdCgwKTtlKys7YS5oKz1hLkQ/aDw9MTI3P2g8PTMyfHxpdVtoXT8zOjE6aDw9MjA0N3x8aD49NTUyOTYmJmg8PTU2MzE5fHxoPj01NjMyMCYmaDw9NTczNDM/Njo5OjE7aD1hLmg+PWI7anVbZ10/KGEubz1mLGEuQj1hLmgsaD1ofHxlPmMpOmc9PSIgIiYmKGEuaj1mLGEuQT1hLmgsaD1ofHxlPmMpO2lmKGgpcmV0dXJuIGEubz49MD8oZD1hLmwuc3Vic3RyaW5nKGEuZyxhLm8rMSksYS5oLT1hLkIsYS5nPWEubysxLGEubz49YS5qPyhhLmo9LTEsYS5BPTApOmEuQS09YS5CLGEubz0tMSxhLkI9MCk6YS5qPj0wPyhkPWEubC5zdWJzdHJpbmcoYS5nLAphLmorMSksYS5oLT1hLkEsYS5nPWEuaisxLGEuaj0tMSxhLkE9MCk6KGQ9YS5sLnN1YnN0cmluZyhhLmcsZisxKSxhLmg9MCxhLmc9ZisxLGEubz1hLmo9LTEsYS5BPWEuQj0wKSxhLkM9ZisxLGR9YS5nPGEubC5sZW5ndGgmJihkPWEubC5zdWJzdHJpbmcoYS5nKSxhLmc9YS5sLmxlbmd0aCk7cmV0dXJuIGR9LGp1PWlyKFsiLiIsIiwiLCI6IiwiXFw/IiwiISJdKSxsdT1bIi4iLCI/IiwiISJdLGl1PWlyKFszNCwzNSwzNiwzNywzOCw0Myw0NCw0Nyw1OCw1OSw2MCw2MSw2Miw2Myw2NCw5MSw5Miw5Myw5NCw5NiwxMjMsMTI0LDEyNSwxMjddKTt2YXIgdG09ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKHRtLF8uSik7dmFyIG11PWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihtdSxfLkopO3ZhciBudT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIobnUsXy5KKTt2YXIgb3U9WzEsMl07dmFyIHB1PWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihwdSxfLkopO3B1LnByb3RvdHlwZS5SYT1mdW5jdGlvbigpe3JldHVybiBfLmRqKHRoaXMsMSl9O3ZhciBxdT1fLktpKHB1KTt2YXIgcnU7dmFyIHN1PWZ1bmN0aW9uKCl7dGhpcy5oYT1uZXcgXy5XZn0sdHU9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO3JldHVybiBfLlZpKGZ1bmN0aW9uKGUpe2M9Y20oYW0oJGwobmV3IFpsLCJodHRwcyIpLGIuaG9zdCksYi5wYXRoKTtkPW5ldyBQcm9taXNlKGZ1bmN0aW9uKGYsZyl7Xy5OZChhLmhhLCJzdWNjZXNzIixmdW5jdGlvbigpe2Yoe2NvZGU6Xy5oZyhhLmhhKSxoZWFkZXJzOkxuKGEuaGEpLGJvZHk6Xy5pZyhhLmhhKX0pfSk7Xy5OZChhLmhhLCJlcnJvciIsZnVuY3Rpb24oKXtnKHtjb2RlOl8uaGcoYS5oYSksaGVhZGVyczpMbihhLmhhKSxib2R5Ol8uaWcoYS5oYSl9KX0pO18uTmQoYS5oYSwidGltZW91dCIsZnVuY3Rpb24oKXtnKHtjb2RlOl8uaGcoYS5oYSksaGVhZGVyczpMbihhLmhhKSxib2R5Ol8uaWcoYS5oYSl9KX0pfSk7YS5oYS5zZW5kKGMsYi5tZXRob2QsYi5ib2R5LGIuaGVhZGVycyk7cmV0dXJuIGUucmV0dXJuKGQpfSl9O3ZhciBybj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIocm4sXy5KKTt2YXIgcW49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKHFuLF8uSik7dmFyIHBuPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uZmsoYSwxLGIpfTt2YXIgd3U9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZjtyZXR1cm4gXy5WaShmdW5jdGlvbihnKXtpZihnLmc9PTEpe2I9cnV8fChydT1xdSgnWzIsbnVsbCxbW1tbImF1dG9wdXNoIixbImF1dG9wdXNoLXRyYW5zbGF0ZS1wYS5zYW5kYm94Lmdvb2dsZWFwaXMuY29tIl1dLFsic3RhZ2luZyIsWyJkYWlseTEtdHJhbnNsYXRlLXBhLnNhbmRib3guZ29vZ2xlYXBpcy5jb20iXV0sWyJwcm9kIixbInRyYW5zbGF0ZS1wYS5nb29nbGVhcGlzLmNvbSJdXSxbInByb2QtZXUiLFsidHJhbnNsYXRlLXBhLmV1LnJlcC5nb29nbGVhcGlzLmNvbSJdXSxbInByb2QtdXMiLFsidHJhbnNsYXRlLXBhLnVzLnJlcC5nb29nbGVhcGlzLmNvbSJdXV1dXV0nKSk7Yz1tcTtucSYmKGM9YysiLSIrbnEpO3ZhciBoPWJwKGIsbnUsMyk7dmFyIGs9aC5KO2s9SWwoSGwoayksayx2b2lkIDAsb3UpO2g9YnAoaCxtdSxrPT09MT8xOi0xKTtrPWguSjt2YXIgbD1rW18uSF18MDtoPXVtKGgsayxsLF8uV2coaCxsKSkuZ2V0KGMpOwpkPV8uTihoLDEpO2g9bmV3ICRwO2s9c20oYSwxLF8uYWooKSk7aD1HbChoLDEsayxubSkuTmEoYS5KYSgpKS5uYShhLm9hKCkpO2s9bmV3IGFxO2g9Xy5MKGssMSxoKTtoPXNuKGgsMix0cSk7Xy5NKHBxLDcpJiZfLmVqKGgsNCwhMCk7ZT1oO2cuRigyKTtyZXR1cm4gZy5oKHZ1KGQsZSksNCl9aWYoZy5nIT0yKXJldHVybiBmPWcuaixnLnJldHVybih0bihmKSk7Zy5EKCk7cmV0dXJuIGcucmV0dXJuKFByb21pc2UucmVqZWN0KEVycm9yKCJBYSIpKSl9KX0sdnU9ZnVuY3Rpb24oYSxiKXt2YXIgYz14dSxkLGUsZixnO3JldHVybiBfLlZpKGZ1bmN0aW9uKGgpe2lmKGguZz09MSlyZXR1cm4gZD17aG9zdDphLHBhdGg6Ii92MS90cmFuc2xhdGVIdG1sIixtZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJYLWdvb2ctYXBpLWtleSI6IkFJemFTeUFUQlhhanZ6UUxUREhFUWJjcHEwSWhlMHZXREhtTzUyMCIsIkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYifSxib2R5Ol8uV2ooYil9LAplPWMuZygpLGguRigyKSxoLmgodHUoZSxkKSw0KTtpZihoLmchPTIpcmV0dXJuIGY9aC5qLGgucmV0dXJuKGNxKGYuYm9keSkpO2c9aC5EKCk7cmV0dXJuIGgucmV0dXJuKFByb21pc2UucmVqZWN0KGcpKX0pfTt2YXIgeHU9bmV3IGZ1bmN0aW9uKCl7dGhpcy5nPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBzdX19LHl1PWZ1bmN0aW9uKGEpe3RoaXMuZz1hfSx6dT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZTtyZXR1cm4gXy5WaShmdW5jdGlvbihmKXtpZihmLmc9PTEpcmV0dXJuIHNtKGIsMSxfLmFqKCkpLmxlbmd0aD09PTA/Zi5yZXR1cm4obmV3IHFuKTpfLk0ocHEsOCk/Zi5yZXR1cm4od3UoYikpOmYuaChhLmcudHJhbnNsYXRlKGN8fGZ1bmN0aW9uKCl7fSxzbShiLDEsXy5haihfLldoKSksYi5KYSgpLGIub2EoKSwwLCExKSwyKTtkPWYuajtlPWQubWFwKHVuKTtyZXR1cm4gZi5yZXR1cm4ocG4obmV3IHFuLGUpKX0pfTt2YXIgQXU9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEF1LF8uSik7dmFyIEJ1PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBBdTtyZXR1cm4gR2woYiwxLGEsbm0pfTtBdS5wcm90b3R5cGUuSmE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5OKHRoaXMsMil9O0F1LnByb3RvdHlwZS5OYT1mdW5jdGlvbihhKXtyZXR1cm4gc24odGhpcywyLGEpfTtBdS5wcm90b3R5cGUub2E9ZnVuY3Rpb24oKXtyZXR1cm4gXy5OKHRoaXMsMyl9O0F1LnByb3RvdHlwZS5uYT1mdW5jdGlvbihhKXtyZXR1cm4gc24odGhpcywzLGEpfTt2YXIgQ3U9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3RoaXMuQj1kfHxmdW5jdGlvbigpe307dGhpcy5QPWZ8fGZ1bmN0aW9uKCl7fTt0aGlzLlI9ISFlO3RoaXMuaj1hLmcuSWY7dGhpcy5sPTA7dGhpcy5JPWZ1bmN0aW9uKCl7fTt0aGlzLkQ9Yzt0aGlzLkY9dGhpcy5oPXRoaXMubz0wO3RoaXMuZz1udWxsO3RoaXMuVz0wO3RoaXMubGE9ITE7dGhpcy5UPWEuZy5HZjt0aGlzLks9W107dGhpcy5xYj0wO3RoaXMuTD1hLmcuS2Q7dGhpcy5BPWEubCgpO3RoaXMud2E9dGhpcy5SPzE6Njt0aGlzLklhPWEuZy5XZjt0aGlzLnFhPWI7dGhpcy5DPVtdO3RoaXMuTz1hfTtDdS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXtmb3IodmFyIGE9MDthPHRoaXMuQy5sZW5ndGg7KythKXRoaXMuQ1thXS5zdG9wKCk7Zm9yKGE9MDthPHRoaXMuSy5sZW5ndGg7KythKVRyKHRoaXMuTyx0aGlzLktbYV0pfTsKdmFyIER1PWZ1bmN0aW9uKGEsYil7dmFyIGM9MDthLkk9KDAsXy55KShmdW5jdGlvbigpeysrYz09dGhpcy5DLmxlbmd0aCYmYigpfSxhKX0sRXU9ZnVuY3Rpb24oYSxiLGMpe2EuQj1mdW5jdGlvbigpe307YS5xYT1iO2EuZz1udWxsO2EucWI9MDthLkM9W107YS5JPWZ1bmN0aW9uKCl7fTthLkQ9Y30sRnU9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuaD09MCYmKGEuaD1iPzNFMzphLkEsIWN8fGM8PWEuQSkpe2Eubz1hLmg7cmV0dXJufWRvIGI9YS5oLGEuaDxhLkEmJihhLmgqPWEud2EsYS5oPmEuQSYmKGEuaD1hLkEpKTt3aGlsZShiIT1hLmgmJmMmJmEuaDxjKTthLm89YS5ofSxHdT1mdW5jdGlvbihhLGIpe3ZhciBjPWIhPW51bGwsZD0hYyYmIWEubGE7KGR8fGMpJiZhLkIoMTAwLGQsYil9LEh1PWZ1bmN0aW9uKGEpe3JldHVybiBhLkw/YS5nLlI6YS5nLm1hKCkubGVuZ3RofSxJdT1mdW5jdGlvbihhLGIsYyxkLGUpe3JldHVybiBuZXcgUXQoYS5xYS5zaGlmdCgpLHtiajphLkwsbGk6YiwKVmY6ITAsWmk6ISFjfSxmdW5jdGlvbigpe3ZhciBmPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7cmV0dXJuIG5ldyBqdChmLnNoaWZ0KCksZi5zaGlmdCgpLGYuc2hpZnQoKSxmLnNoaWZ0KCksZi5zaGlmdCgpLGMsZCl9LGEuRCxlKX0sS3U9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuVD4wJiZiLmxiKCk+PWEuVClyZXR1cm4hMDtpZihIdShhKT5hLmgpe2lmKGIubGIoKT4wKXJldHVybiEwO0Z1KGEsYyxIdShhKSk7Zm9yKHZhciBkPWEuZy5tYSgpLGU9bmV3IGh1KGQsYS5MKSxmO2Y9a3UoZSxhLmgsYS5qKTspaWYobHUuaW5kZXhPZihmLmNoYXJBdChmLmxlbmd0aC0xKSk8MCYmYi5LKyssYi5sLnB1c2gobmV3IGZ1KFtmXSwhMSkpLGEubCs9Zi5sZW5ndGgsYS5qLT1mLmxlbmd0aCxhLmo8PTApe2IuRj1kLnN1YnN0cmluZyhlLmcpO2JyZWFrfWVsc2UgRnUoYSxjKTtKdShiLGEuZywhMCk7YS5nPW51bGw7cmV0dXJuITB9aWYoSHUoYSk+YS5vKXJldHVybiEwO0p1KGIsCmEuZywhMCk7YS5vLT1IdShhKSthLklhO2EubCs9YS5nLkQ7YS5qLT1hLmcuRDthLmc9bnVsbDtyZXR1cm4hMX0sTHU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9e1phOjB9O2MuWmE8YS5sZW5ndGg7Yz17WmE6Yy5aYX0sYy5aYSsrKWFbYy5aYV0ubGVuZ3RoPjEmJmFbYy5aYV1bMV09PT0yMDA/Yi5wdXNoLmFwcGx5KGIsXy4kYihhW2MuWmFdWzBdLnRvU3RyaW5nKCkuc3BsaXQoIiZsdDtleHRyYV9pZF8xJmd0OyIpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuW2UudHJpbSgpLGFbZC5aYV1bMV1dfX0oYykpKSk6Yi5wdXNoKGFbYy5aYV0pO3JldHVybiBifSxNdT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmLGcsaCxrLGwsbjtyZXR1cm4gXy5WaShmdW5jdGlvbihxKXtzd2l0Y2gocS5nKXtjYXNlIDE6dmFyIHA9cHE7aWYoXy5iaihwLGlxLDYpKXt2YXIgcj1fLmJqKHAsaXEsNiksdD1fLk0ociwxKTtwPV8uTShwLDMpfHx0Pyh0P3NtKHIsNCxfLmFqKCkpOgpzbShwLDQsXy5haigpKSkuaW5jbHVkZXMoZC50b0xvd2VyQ2FzZSgpKyJfIitlLnRvTG93ZXJDYXNlKCkpOiExfWVsc2UgcD0hMTtmPXA7aWYoZil7dmFyIEE9QT09PXZvaWQgMD8zRTM6QTtpZihwPV8uYmoocHEsaXEsNikpcD1fLmJqKHBxLGlxLDYpLHA9Xy5NKHAsMSk7aWYocCl7cD1fLmJqKHBxLGlxLDYpO0E9Xy5nayhwLDMpO3A9Xy5nayhwLDIpO3I9W107Zm9yKHQ9MDt0PGMubGVuZ3RoO3QrKyl7dmFyIEQ9W2NbdF1dLEU9Y1t0XS5sZW5ndGg7aWYoY1t0XS5zcGxpdCgiICIpLmxlbmd0aDw9cClmb3IoO3QrMTxjLmxlbmd0aCYmRTxBOylELnB1c2goY1t0KzFdKSxFKz1jW3QrMV0ubGVuZ3RoKzIrMTgsdCsrO3IucHVzaChELmpvaW4oIiAmbHQ7ZXh0cmFfaWRfMSZndDsgIikpfUE9cn1lbHNle3A9W107Zm9yKHI9MDtyPGMubGVuZ3RoOyl7dD1bXTtmb3IoRT0wO3I8Yy5sZW5ndGg7KXtEPWNbcl07dmFyIGJhPUQubGVuZ3RoO0U9dC5sZW5ndGg9PT0wP2JhOkUrMjArYmE7aWYoRT4KQSYmdC5sZW5ndGg+MClicmVhazt0LnB1c2goRCk7cisrfXQubGVuZ3RoPjAmJnAucHVzaCh0LmpvaW4oIiAmbHQ7ZXh0cmFfaWRfMSZndDsgIikpfUE9cH19ZWxzZSBBPWM7Zz1BO2g9enUobmV3IHl1KGEuTyksQnUoZykuTmEoZCkubmEoZSksYik7cS5GKDIpO3JldHVybiBxLmgoaCw0KTtjYXNlIDQ6az1xLmo7bD12bihrKTtuPWY/THUobCk6bDtiKG4sMjAwKTtxLksoMyk7YnJlYWs7Y2FzZSAyOnEuRCgpLGIoW10sNTAwKTtjYXNlIDM6cmV0dXJuIGEuSy5wdXNoKGgpLHEucmV0dXJuKGgpfX0pfTt2YXIgTnU9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmw9Yjt0aGlzLmo9e3Jvb3RNYXJnaW46YX07dGhpcy5nPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoMCxfLnkpKHRoaXMuaCx0aGlzKSx0aGlzLmopfTtfLkIoTnUsXy51KTtOdS5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMuZz1udWxsfTtOdS5wcm90b3R5cGUuaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEubGVuZ3RoO2IrKylpZihhW2JdLmludGVyc2VjdGlvblJhdGlvPjApe3RoaXMubCgpO2JyZWFrfX07TnUucHJvdG90eXBlLnRyYWNrPWZ1bmN0aW9uKGEpe0pvKGEsKDAsXy55KSh0aGlzLmcub2JzZXJ2ZSx0aGlzLmcpKX07dmFyIE91PWZ1bmN0aW9uKGEpe3ZhciBiPWEhPW51bGw/YTp7fSxjPWIuSWssZD1iLktrLGU9Yi5FayxmPWIuTGssZz1iLkhrLGg9Yi5KayxrPWIuRmssbD1iLkdrO2E9Xy55bCgpOyFsJiZzcChjKT8oZT0hIWUsZj0hIWYsYj1iJiZiLlFrLGM9KDAsXy50bCkoc3AoYyk/IjxzY3JpcHQiKyhiPycgbm9uY2U9IicrUChZcChiKSkrJyInOiIiKSsiPndpbmRvd1sncHBDb25maWcnXSA9IHtwcm9kdWN0TmFtZTogIit2cChRcChkIT1udWxsP2Q6InVua25vd24iKSkrIiwgZGVsZXRlSXNFbmZvcmNlZDogIit2cChRcChlKSkrIiwgc2VhbElzRW5mb3JjZWQ6ICIrdnAoUXAoZikpKyIsIGhlYXJ0YmVhdFJhdGU6ICIrdnAoUXAoZyE9bnVsbD9nOi41KSkrIiwgcGVyaW9kaWNSZXBvcnRpbmdSYXRlTWlsbGlzOiAiK3ZwKFFwKGghPW51bGw/aDo2RTQpKSsiLCBkaXNhYmxlQWxsUmVwb3J0aW5nOiAiK3ZwKFFwKGshPW51bGw/azohMSkpKyJ9OyIrdnAoUXAoYyE9bnVsbD9jOiIiKSkrIlx4M2Mvc2NyaXB0PiI6CiIiKSk6Yz0iIjtyZXR1cm4gV24oYSxjKX07dmFyIFB1PWZ1bmN0aW9uKGEpe3JldHVybigwLF8udGwpKCc8c3BhbiBpZD0iJytQKGEuaWQpKyciPjwvc3Bhbj4nKX0sUXU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pZCxjPWEuUmY7cmV0dXJuKDAsXy50bCkoS3AoYS5TZikrJzxkaXYgaWQ9IicrUChiKSsnIj48L2Rpdj4nK0twKGMpKX0sWW49ZnVuY3Rpb24oYSl7dmFyIGI9YS50b3AsYz1hLmxlZnQsZD1hLmJvdHRvbSxlPWEucmlnaHQsZj1hLmlkO3JldHVybigwLF8udWwpKCIuIitBcChhLmNsYXNzTmFtZSkrIiB7ei1pbmRleDo5OTk5OTk5OyBvdmVyZmxvdzp2aXNpYmxlOyBwb3NpdGlvbjpmaXhlZDsgX3Bvc2l0aW9uOmFic29sdXRlOyIrKGJ8fGI9PT0wPyJ0b3A6IitBcChiKSsicHg7IF90b3A6ZXhwcmVzc2lvbigoIitBcChiKSsiKyhoYWNrMT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wfHxkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCkpKydweCcpOyI6InRvcDphdXRvOyIpKyhjfHxjPT09MD8ibGVmdDoiK0FwKGMpKwoicHg7IF9sZWZ0OmV4cHJlc3Npb24oKCIrQXAoYykrIisoaGFjazI9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnR8fGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCkpKydweCcpOyI6ImxlZnQ6YXV0bzsiKSsoZHx8ZD09PTA/ImJvdHRvbToiK0FwKGQpKyJweDsgX3RvcDpleHByZXNzaW9uKCgtIitBcChkKSsiLWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciK1N0cmluZyhmKS5yZXBsYWNlKFJwLEdwKSsiJykub2Zmc2V0SGVpZ2h0KyhoYWNrMz1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0fHxkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCkrKGhhY2s0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wKSkrJ3B4Jyk7IjoiYm90dG9tOmF1dG87IikrKGV8fGU9PT0wPyJyaWdodDoiK0FwKGUpKyJweDsgX2xlZnQ6ZXhwcmVzc2lvbigoLSIrQXAoZSkrIi1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnIisKU3RyaW5nKGYpLnJlcGxhY2UoUnAsR3ApKyInKS5vZmZzZXRXaWR0aCsoaGFjazU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRofHxkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoKSsoaGFjazY9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnR8fGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCkpKydweCcpOyI6InJpZ2h0OmF1dG87IikrIn0iKX0sUnU9ZnVuY3Rpb24oKXtyZXR1cm4oMCxfLnRsKSgnPGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYiKSsnIj48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPIikrJyI+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtYVoyd0VlIikrJyIgd2lkdGg9Ijk2cHgiIGhlaWdodD0iOTZweCIgdmlld0JveD0iMCAwIDY2IDY2Ij48Y2lyY2xlIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtYVoyd0VlLUp0NWNLIikrCiciIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBjeD0iMzMiIGN5PSIzMyIgcj0iMzAiLz48L3N2Zz48L2Rpdj48L2Rpdj4nKX07d24ueGI9dm9pZCAwO3duLmc9ZnVuY3Rpb24oKXtyZXR1cm4gd24ueGI/d24ueGI6d24ueGI9bmV3IHdufTt3bi5wcm90b3R5cGUuZz0wO18uRyh4bixfLmhiKTtfLm09eG4ucHJvdG90eXBlO18ubS5jaT13bi5nKCk7Xy5tLlJhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGF8fCh0aGlzLmxhPSI6IisodGhpcy5jaS5nKyspLnRvU3RyaW5nKDM2KSl9O18ubS5IPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQ307Xy5tLm5kPWZ1bmN0aW9uKGEpe2lmKHRoaXMuSyYmdGhpcy5LIT1hKXRocm93IEVycm9yKCJDYSIpO3huLmVhLm5kLmNhbGwodGhpcyxhKX07Xy5tLlM9ZnVuY3Rpb24oKXt0aGlzLkM9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoIkRJViIpfTtfLm0ua2E9ZnVuY3Rpb24oYSl7U3UodGhpcyxhKX07Xy5tLnFjPWZ1bmN0aW9uKGEpe1N1KHRoaXMsYS5wYXJlbnROb2RlLGEpfTt2YXIgU3U9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuamIpdGhyb3cgRXJyb3IoIkRhIik7YS5DfHxhLlMoKTtiP2IuaW5zZXJ0QmVmb3JlKGEuQyxjfHxudWxsKTphLmguZy5ib2R5LmFwcGVuZENoaWxkKGEuQyk7YS5LJiYhYS5LLmpifHxhLkxhKCl9OwpfLm09eG4ucHJvdG90eXBlO18ubS5haD1mdW5jdGlvbihhKXtpZih0aGlzLmpiKXRocm93IEVycm9yKCJEYSIpO2lmKGEpe3RoaXMud2E9ITA7dmFyIGI9Xy5zZChhKTt0aGlzLmgmJnRoaXMuaC5nPT1ifHwodGhpcy5oPV8ubGIoYSkpO3RoaXMuT2EoYSk7dGhpcy5MYSgpfWVsc2UgdGhyb3cgRXJyb3IoIkVhIik7fTtfLm0uT2E9ZnVuY3Rpb24oYSl7dGhpcy5DPWF9O18ubS5MYT1mdW5jdGlvbigpe3RoaXMuamI9ITA7VHUodGhpcyxmdW5jdGlvbihhKXshYS5qYiYmYS5IKCkmJmEuTGEoKX0pfTtfLm0uc2E9ZnVuY3Rpb24oKXtUdSh0aGlzLGZ1bmN0aW9uKGEpe2EuamImJmEuc2EoKX0pO3RoaXMuTyYmXy5SZih0aGlzLk8pO3RoaXMuamI9ITF9OwpfLm0uTT1mdW5jdGlvbigpe3RoaXMuamImJnRoaXMuc2EoKTt0aGlzLk8mJih0aGlzLk8uZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLk8pO1R1KHRoaXMsZnVuY3Rpb24oYSl7YS5kaXNwb3NlKCl9KTshdGhpcy53YSYmdGhpcy5DJiZfLkFkKHRoaXMuQyk7dGhpcy5LPXRoaXMuQz10aGlzLlI9dGhpcy5GPW51bGw7eG4uZWEuTS5jYWxsKHRoaXMpfTt2YXIgUz1mdW5jdGlvbihhLGIpe3JldHVybiBhLlJhKCkrIi4iK2J9LFR1PWZ1bmN0aW9uKGEsYil7YS5GJiZhLkYuZm9yRWFjaChiLHZvaWQgMCl9Owp4bi5wcm90b3R5cGUuaWU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdO3RoaXMuRiYmdGhpcy5GLmxlbmd0aCE9MDspe3ZhciBjPWIsZD1jLnB1c2gsZT10aGlzLkY/dGhpcy5GWzBdfHxudWxsOm51bGwsZj1hO2lmKGUpe3ZhciBnPXR5cGVvZiBlPT09InN0cmluZyI/ZTplLlJhKCk7dGhpcy5SJiZnPyhlPXRoaXMuUixlPShlIT09bnVsbCYmZyBpbiBlP2VbZ106dm9pZCAwKXx8bnVsbCk6ZT1udWxsO2lmKGcmJmUpe3ZhciBoPXRoaXMuUjtnIGluIGgmJmRlbGV0ZSBoW2ddO18udmEodGhpcy5GLGUpO2YmJihlLnNhKCksZS5DJiZfLkFkKGUuQykpO2Y9ZTtpZihmPT1udWxsKXRocm93IEVycm9yKCJCYSIpO2YuSz1udWxsO3huLmVhLm5kLmNhbGwoZixudWxsKX19aWYoIWUpdGhyb3cgRXJyb3IoIkZhIik7ZC5jYWxsKGMsZSl9cmV0dXJuIGJ9O3ZhciBVdT1mdW5jdGlvbigpe3huLmNhbGwodGhpcyl9O18uQihVdSx4bik7VXUucHJvdG90eXBlLlM9ZnVuY3Rpb24oKXt0aGlzLk9hKGttKFJ1KSl9O1V1LnByb3RvdHlwZS5PYT1mdW5jdGlvbihhKXt0aGlzLkM9YX07VXUucHJvdG90eXBlLnNob3c9ZnVuY3Rpb24oKXtOdCh0aGlzLkgoKSwiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtd09ITXlmLXRpNmhHYyIpO050KHRoaXMuSCgpLmZpcnN0Q2hpbGQsIlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHYyIpfTt2YXIgVnU9ZnVuY3Rpb24oYSl7T3QoYS5IKCksIlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Zi10aTZoR2MiKTtPdChhLkgoKS5maXJzdENoaWxkLCJWSXBnSmQtWlZpOW9kLWFaMndFZS1PaWlDTy10aTZoR2MiKX07dmFyIFd1PWZ1bmN0aW9uKCl7dGhpcy5nPW5ldyBVdTt0aGlzLmcuUygpO3RoaXMuZy5rYSgpO3RoaXMuaD0wfTtXdS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLmg9MDtWdSh0aGlzLmcpfTt2YXIgWHU9V3EoY3IpLFl1PWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dGhpcy5sPWE7dGhpcy5nPWI7dGhpcy5DPVtdO3RoaXMuRj1udWxsO3RoaXMubz1jO3RoaXMuaD1kO3RoaXMuaj1lO3RoaXMucWE9Zjt0aGlzLk89Zzt0aGlzLkQ9dGhpcy5BPW51bGw7dGhpcy5CPWh8fG51bGw7dGhpcy5XPXRoaXMuST0hMTt0aGlzLkc9e307dGhpcy5MPVh1O3RoaXMuSz0wfSxadT1mdW5jdGlvbihhKXtmb3IodmFyIGI9bmV3IFNldCxjPTA7YzxhLmxlbmd0aDtjKyspc3QoYVtjXSkuZm9yRWFjaChmdW5jdGlvbihkKXtyZXR1cm4gYi5hZGQoZCl9KTtyZXR1cm4gYn07Cll1LnByb3RvdHlwZS50cmFja1Zpc2liaWxpdHk9ZnVuY3Rpb24oYSl7dGhpcy5BPW5ldyBOdSgiMjAwcHgiLCgwLF8ueSkodGhpcy5SLHRoaXMsYSkpO3RoaXMuQS50cmFjayhkdShadShbXS5jb25jYXQodGhpcy5nLHRoaXMuQykpKSk7dGhpcy5EPW5ldyBOdSgiMHB4IiwoMCxfLnkpKHRoaXMuUCx0aGlzKSk7dGhpcy5ELnRyYWNrKGR1KFp1KFtdLmNvbmNhdCh0aGlzLmcsdGhpcy5DKSkpKX07WXUucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7dGhpcy5BJiYodGhpcy5BLmcuZGlzY29ubmVjdCgpLHRoaXMuQT1udWxsKTthKCl9O1l1LnByb3RvdHlwZS5QPWZ1bmN0aW9uKCl7dGhpcy5JPSEwOyR1KHRoaXMpO2lmKCF0aGlzLlcmJnRoaXMuQil7dmFyIGE9dGhpcy5CO2EuaCsrPT0wJiZhLmcuc2hvdygpfX07dmFyICR1PWZ1bmN0aW9uKGEpe2EuRCYmKGEuRC5nLmRpc2Nvbm5lY3QoKSxhLkQ9bnVsbCl9OwpZdS5wcm90b3R5cGUuZG9uZT1mdW5jdGlvbigpe2lmKHRoaXMuSSYmIXRoaXMuVyYmdGhpcy5CKXt2YXIgYT10aGlzLkI7LS1hLmg9PTAmJlZ1KGEuZyl9dGhpcy5BJiYodGhpcy5BLmcuZGlzY29ubmVjdCgpLHRoaXMuQT1udWxsKTskdSh0aGlzKTthdih0aGlzKX07dmFyIEp1PWZ1bmN0aW9uKGEsYixjKXtjPyhhLmcucHVzaChiKSxhLkdbYi5tYSgpXT0hMCk6YS5DLnB1c2goYil9O1l1LnByb3RvdHlwZS5sYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcubGVuZ3RoK3RoaXMuQy5sZW5ndGh9O3ZhciBidj1mdW5jdGlvbihhKXtpZihhLmwubGVuZ3RoPT0wKXtmb3IodmFyIGI9W10sYz0wO2M8YS5nLmxlbmd0aDsrK2MpYi5wdXNoKGEuZ1tjXS5tYSgpKTthLmwucHVzaChuZXcgZnUoYiwhMSkpfX07Cll1LnByb3RvdHlwZS50cmFuc2xhdGU9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe2QrKztkPT1jJiZlKCl9YnYodGhpcyk7Zm9yKHZhciBjPTAsZD0wLGU9ZnVuY3Rpb24oKXt9LGY9dGhpcy5vLGc9dGhpcy5oLGg9dGhpcy5qLGs9MDtrPHRoaXMubC5sZW5ndGg7KytrKWd1KHRoaXMubFtrXSxmdW5jdGlvbihsLG4scSl7cmV0dXJuIE11KGYsXy5aaihsLGIpLG4scXx8ZyxoKX0pJiZjKys7YyE9MCYmKGU9R3QoYSkpO3JldHVybiBjfTt2YXIgYXY9ZnVuY3Rpb24oYSl7aWYoYS5nLmxlbmd0aD4wKXtpZihhLmcubGVuZ3RoPT0xJiZhLmwubGVuZ3RoPjEpe3ZhciBiPTE7dmFyIGM9YS5sLmxlbmd0aH1lbHNlIGI9Yz1hLmcubGVuZ3RoO3ZhciBkPWEuZy5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUuRH0pLnJlZHVjZShmdW5jdGlvbihlLGYpe3JldHVybiBlK2Z9KTtocihhLkwse2xiOmIsTWY6YyxnZzpkLExmOmEuS30pfX07dmFyIGN2PXthbToiTm90byBTYW5zIEV0aGlvcGljIixiZXI6Ik5vdG8gU2FucyBUaWZpbmFnaCIsImJtLU5rb28iOiJOb3RvIFNhbnMgTktvIixibjoiTG9oaXQgQmVuZ2FsaSIsYm86Ik5vdG8gU2VyaWYgVGliZXRhbiIsZHY6Ik5vdG8gU2FucyBUaGFhbmEiLGR6OiJOb3RvIFNlcmlmIFRpYmV0YW4iLGl1OiJOb3RvIFNhbnMgQ2FuYWRpYW4gQWJvcmlnaW5hbCIsa206Ik5va29yYSIsbG86IkRoeWFuYSIsbWw6Ik5vdG8gU2FucyBNYWxheWFsYW0iLCJtbmktTXRlaSI6Ik5vdG8gU2FucyBNZWV0ZWkgTWF5ZWsiLG15OiJOb3RvIFNhbnMgTXlhbm1hciIsInBhLUFyYWIiOiJOb3RvIE5hc3RhbGlxIFVyZHUiLHBzOiJOb3RvIE5hc2toIEFyYWJpYyIsc2F0OiJOb3RvIFNhbnMgT2wgQ2hpa2kiLHNkOiJOb3RvIE5hc2toIEFyYWJpYyIsc2k6Ik5vdG8gU2FucyBTaW5oYWxhIix0YToiTG9oaXQgVGFtaWwiLHl1ZToiQ2hvY29sYXRlIENsYXNzaWNhbCBTYW5zIn0sZHY9e30sZXY9KGR2WyJDaG9jb2xhdGUgQ2xhc3NpY2FsIFNhbnMiXT0KIi9jc3MyP2ZhbWlseT1DaG9jb2xhdGUrQ2xhc3NpY2FsK1NhbnMiLGR2LkRoeWFuYT0iL2Nzcz9mYW1pbHk9RGh5YW5hIixkdlsiTG9oaXQgQmVuZ2FsaSJdPSIvY3NzP2ZhbWlseT1Mb2hpdCtCZW5nYWxpIixkdlsiTG9oaXQgVGFtaWwiXT0iL2Nzcz9mYW1pbHk9TG9oaXQrVGFtaWwiLGR2Lk5va29yYT0iL2Nzcz9mYW1pbHk9Tm9rb3JhIixkdlsiTm90byBOYXNraCBBcmFiaWMiXT0iL2Vhcmx5YWNjZXNzL25vdG9uYXNraGFyYWJpYy5jc3MiLGR2WyJOb3RvIE5hc3RhbGlxIFVyZHUiXT0iL2Vhcmx5YWNjZXNzL25vdG9uYXN0YWxpcXVyZHUuY3NzIixkdlsiTm90byBTYW5zIENhbmFkaWFuIEFib3JpZ2luYWwiXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zY2FuYWRpYW5hYm9yaWdpbmFsLmNzcyIsZHZbIk5vdG8gU2FucyBFdGhpb3BpYyJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNldGhpb3BpYy5jc3MiLGR2WyJOb3RvIFNhbnMgTWFsYXlhbGFtIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc21hbGF5YWxhbS5jc3MiLApkdlsiTm90byBTYW5zIE1lZXRlaSBNYXllayJdPSIvY3NzP2ZhbWlseT1Ob3RvK1NhbnMrTWVldGVpK01heWVrIixkdlsiTm90byBTYW5zIE15YW5tYXIiXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zbXlhbm1hci5jc3MiLGR2WyJOb3RvIFNhbnMgTktvIl09Ii9jc3M/ZmFtaWx5PU5vdG8rU2FucytOS28iLGR2WyJOb3RvIFNhbnMgT2wgQ2hpa2kiXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zb2xjaGlraS5jc3MiLGR2WyJOb3RvIFNhbnMgU2luaGFsYSJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNzaW5oYWxhLmNzcyIsZHZbIk5vdG8gU2FucyBUaGFhbmEiXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zdGhhYW5hLmNzcyIsZHZbIk5vdG8gU2FucyBUaWZpbmFnaCJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnN0aWZpbmFnaC5jc3MiLGR2WyJOb3RvIFNlcmlmIFRpYmV0YW4iXT0iL2Nzcz9mYW1pbHk9Tm90bytTZXJpZitUaWJldGFuIixkdiksZnY9ZnVuY3Rpb24oKXt0aGlzLmc9W119Owpmdi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe2Zvcih2YXIgYT1fLkModGhpcy5nKSxiPWEubmV4dCgpOyFiLmRvbmU7Yj1hLm5leHQoKSliLnZhbHVlLnJlbW92ZSgpO3RoaXMuZz1bXX07dmFyIGd2PWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5nPVtdO3RoaXMubD1bXTt0aGlzLmg9YTt0aGlzLmo9Yn07Xy5CKGd2LF8udSk7Z3YucHJvdG90eXBlLm89ZnVuY3Rpb24oYSl7dmFyIGI9Xy5BYyhhLmhyZWYpO2IuaW5kZXhPZigiamF2YXNjcmlwdDoiKT09MHx8Yi5pbmRleE9mKCIjIik+PTB8fCh0aGlzLmwucHVzaChhLmhyZWYpLHRoaXMuZy5wdXNoKGEpLGEuaHJlZj1iKyIjZ29vZ3RyYW5zLyIrdGhpcy5oKyIvIit0aGlzLmopfTtndi5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMucmVzdG9yZSgpfTtndi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe2lmKHRoaXMuZy5sZW5ndGgpe2Zvcih2YXIgYT0wO2E8dGhpcy5nLmxlbmd0aDsrK2EpdGhpcy5nW2FdLmhyZWY9dGhpcy5sW2FdO3RoaXMuZz1bXTt0aGlzLmw9W119fTt2YXIgaHY9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmc9YTt0aGlzLmg9Xy54Zi50ZXN0KGIpPyJ0cmFuc2xhdGVkLXJ0bCI6InRyYW5zbGF0ZWQtbHRyIjthPVtdLmNvbmNhdCh0aGlzLmcpO2ZvcihiPTA7YjxhLmxlbmd0aDsrK2IpeW8oYVtiXSkmJk50KGFbYl0sdGhpcy5oKX07Xy5CKGh2LF8udSk7aHYucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKX07aHYucHJvdG90eXBlLnJlc3RvcmU9ZnVuY3Rpb24oKXtmb3IodmFyIGE9W10uY29uY2F0KHRoaXMuZyksYj0wO2I8YS5sZW5ndGg7KytiKXlvKGFbYl0pJiZPdChhW2JdLHRoaXMuaCl9O3ZhciBpdj1mdW5jdGlvbihhLGIsYyl7dGhpcy5nPTNFMzt0aGlzLmg9W107dGhpcy5qPW51bGw7dGhpcy5vPWE7dGhpcy5FYj1iO3RoaXMuRmI9Yzt0aGlzLmw9YSYmdHlwZW9mIGEubD09PSJmdW5jdGlvbiI/YS5sKCl8fDE4RTM6MThFM30sa3Y9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnLGgsayxsLG4scTtyZXR1cm4gXy5WaShmdW5jdGlvbihwKXtzd2l0Y2gocC5nKXtjYXNlIDE6Yz1sbyhiKTtkPVtdO2lmKGMubGVuZ3RoPmEuZylmb3IoZT1uZXcgaHUoYywhMSksZj0iIjtmPWt1KGUsYS5nKTspZC5wdXNoKGYpLGEuZzxhLmwmJihhLmcqPTYsYS5nPmEubCYmKGEuZz1hLmwpKTtlbHNlIGQucHVzaChjKTtnPVtdO2g9Xy5DKGQpO2s9aC5uZXh0KCk7Y2FzZSAyOmlmKGsuZG9uZSl7cC54YSg0KTticmVha31sPWsudmFsdWU7bj1nO3E9bi5wdXNoO3JldHVybiBwLmgoanYoYSxsKSw1KTtjYXNlIDU6cS5jYWxsKG4scC5qKTtrPWgubmV4dCgpO3AueGEoMik7YnJlYWs7Y2FzZSA0OnJldHVybiBwLnJldHVybihwbyhnLmpvaW4oIiIpKSl9fSl9LApqdj1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2EuaC5wdXNoKHt0ZXh0OmIscmVzb2x2ZTpjLHJlamVjdDpkfSk7YS5qfHwoYS5qPXdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5mbHVzaCgpfSw1MCkpfSl9O2l2LnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMuaj1udWxsO2lmKHRoaXMuaC5sZW5ndGghPT0wKXt2YXIgYT10aGlzLmg7dGhpcy5oPVtdO3ZhciBiPW5ldyB5dSh0aGlzLm8pO2E9Xy5DKGEpO2Zvcih2YXIgYz1hLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17cmM6dm9pZCAwfSxjPWEubmV4dCgpKWQucmM9Yy52YWx1ZSxjPUJ1KFtkLnJjLnRleHRdKS5OYSh0aGlzLkViKS5uYSh0aGlzLkZiKSx6dShiLGMsZnVuY3Rpb24oKXt9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihmKXsoZj12bihmKVswXSkmJmZbMV09PT0yMDA/ZS5yYy5yZXNvbHZlKGZbMF0udG9TdHJpbmcoKSk6ZS5yYy5yZWplY3QoIlRyYW5zbGF0aW9uIGZhaWxlZCIpfX0oZCkpLmNhdGNoKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihmKXtlLnJjLnJlamVjdChmKX19KGQpKX19O3ZhciBsdj1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayxsKXtfLnUuY2FsbCh0aGlzKTt0aGlzLkM9YTt0aGlzLkZjPWI7dGhpcy5sZj1uZXcgZnY7dGhpcy5mYj1jfHxudWxsO3RoaXMuSWE9bHx8bnVsbDt0aGlzLks9bnVsbDt0aGlzLklkPSEhZDt0aGlzLmppPWV8fCJ0cmFuc3BhcmVudCI7dGhpcy5paT0hIWY7dGhpcy5GPVtdO3RoaXMueWY9dGhpcy5JPXRoaXMuZz0hMTt0aGlzLm89aHx8bmV3IHR0O3RoaXMuRGk9IWg7dGhpcy53YT1nfHx4dC5nKCk7dGhpcy5VZT1uZXcgY3U7dGhpcy5IYj10aGlzLmdiPXRoaXMuUj0hMTt0aGlzLmRmPXRoaXMuQT0uNTt0aGlzLmpmPS4wMTt0aGlzLkQ9bmV3IHp0KHRoaXMuQSk7dGhpcy5sYT0odGhpcy5CPXRoaXMucmE9ISFrKT9uZXcgTXV0YXRpb25PYnNlcnZlcigoMCxfLnkpKHRoaXMuUWgsdGhpcykpOm51bGw7dGhpcy5MPXRoaXMuWGU9dGhpcy5qPXRoaXMuaD1udWxsO3RoaXMuUD0wO3RoaXMuTz1uZXcgTWFwO18ueCh3aW5kb3csImJsdXIiLAp0aGlzLnRmLCEwLHRoaXMpO18ueCh3aW5kb3csImZvY3VzIix0aGlzLnVmLCEwLHRoaXMpfTtfLkIobHYsXy51KTtfLm09bHYucHJvdG90eXBlO18ubS5KYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmg/dGhpcy5oOiIifTtfLm0ub2E9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qP3RoaXMuajoiIn07Xy5tLmdoPWZ1bmN0aW9uKGEpe3RoaXMub2kuYXBwbHkodGhpcyxhcmd1bWVudHMpO3RoaXMubCYmdGhpcy5sKDAsITEsMSl9O18ubS5hZj1mdW5jdGlvbihhKXt0aGlzLnBpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt0aGlzLmwmJnRoaXMubCgwLCExLDEpfTtfLm0uaGg9ZnVuY3Rpb24oYSl7dGhpcy5yaS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhpcy5sJiZ0aGlzLmwoMCwhMSwxKX07Xy5tLmloPWZ1bmN0aW9uKGEpe3RoaXMudGkuYXBwbHkodGhpcyxhcmd1bWVudHMpO3RoaXMubCYmdGhpcy5sKDAsITEsMSl9OwpfLm0udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoZHx8YSE9dGhpcy5ofHxiIT10aGlzLmopbXYodGhpcyksdGhpcy5EaSYmKHRoaXMubz1uZXcgdHQpO2Vsc2UgaWYodGhpcy5nKXJldHVybjt0aGlzLmw9Yzt0aGlzLkFpPWU7dGhpcy5CPXRoaXMucmE7dGhpcy5sYSYmdGhpcy5sYS5vYnNlcnZlKGRvY3VtZW50LmJvZHkse2F0dHJpYnV0ZXM6ITAsY2hpbGRMaXN0OiEwLGNoYXJhY3RlckRhdGE6ITAsc3VidHJlZTohMH0pO3RoaXMuZz0hMDt0aGlzLmg9YTt0aGlzLmo9Yjt0aGlzLklkJiYodGhpcy5LPW5ldyBndihhLGIpKTt0aGlzLkhiPXRoaXMuaD09ImF1dG8iO3RoaXMuZmImJihjPXRoaXMuZmIsYSYmKGMuRD1hKSxiJiYoYy5GPWIpKTt0aGlzLlhiPW5ldyBodih0aGlzLkMsdGhpcy5qKTtiIGluIGN2JiYoYT10aGlzLmxmLGIgaW4gY3YmJihiPWN2W2JdLGM9IkBpbXBvcnQgdXJsKCIrV28oImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20iKS5yZXNvbHZlKFdvKGV2W2JdKSkudG9TdHJpbmcoKSsKIik7IixjPXluKGMpLGEuZy5wdXNoKGMpLGI9eW4oJ2JvZHkge2ZvbnQtZmFtaWx5OiInK2IrJyIsIkdvb2dsZSBTYW5zIiwiTm90byBTYW5zIixzYW5zLXNlcmlmICFpbXBvcnRhbnR9JyksYS5nLnB1c2goYikpKTtfLm9pKF8uWmkocHEsOSkpPyh0aGlzLlhlPW5ldyBpdih0aGlzLkZjLHRoaXMuaCx0aGlzLmopLHRoaXMuUD0wLG52KHRoaXMpLHRoaXMuUD09PTAmJnRoaXMubCYmdGhpcy5sKDEwMCwhMCkpOnRoaXMuRz1vdih0aGlzKTsoYj10aGlzLkMgaW5zdGFuY2VvZiBOb2RlP3RoaXMuQzpudWxsKSYmcHYoYix0aGlzLmopfTsKdmFyIG92PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBCdChhLGEud2EpO0N0KGIsYS5zZik7RXQoYiwoMCxfLnkpKGEuZ2gsYSkpO0Z0KGIsbmV3IEN1KGEuRmMsW10uY29uY2F0KGEuQyksYS53YSxhLmwsYS5CLGEuQWkpKTtyZXR1cm4gYn0sbnY9ZnVuY3Rpb24oYSl7YS5MPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihiKXtiLmZvckVhY2goZnVuY3Rpb24oYyl7aWYoYy5pc0ludGVyc2VjdGluZyl7dmFyIGQ9Yy5ib3VuZGluZ0NsaWVudFJlY3Q7ZCYmZC53aWR0aD09PTAmJmQuaGVpZ2h0PT09MHx8KHF2KGEsYy50YXJnZXQpLGEuTC51bm9ic2VydmUoYy50YXJnZXQpKX19KX0pO1tdLmNvbmNhdChhLkMpLmZvckVhY2goZnVuY3Rpb24oYil7cnYoYSxiKX0pfSxydj1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwPyEwOmM7aWYoIVF0fHwhJHQoYikpe2EuRWY9PT12b2lkIDAmJihhLkVmPSEhZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPSJnb29nbGUiXVtjb250ZW50PSJub3RyYW5zbGF0ZSJdLCBtZXRhW25hbWU9InJvYm90cyJdW2NvbnRlbnQ9Im5vdHJhbnNsYXRlIl0sIG1ldGFbbmFtZT0iZ29vZ2xlIl1bdmFsdWU9Im5vdHJhbnNsYXRlIl0sIG1ldGFbbmFtZT0idHJhbnNsYXRlIl1bY29udGVudD0ibm8iXScpKTsKaWYoYS5FZiljPSExO2Vsc2UgaWYoYi5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFKXt2YXIgZD0ibm90cmFuc2xhdGUiLGU9InRyYW5zbGF0ZSI7UXQmJmJ1JiYoZD0ibm90cmFuc2xhdGUiLGU9InRyYW5zbGF0ZSIpO2Q9Yi5jbGFzc0xpc3QmJmIuY2xhc3NMaXN0LmNvbnRhaW5zKGQpfHxiLmdldEF0dHJpYnV0ZSYmYi5nZXRBdHRyaWJ1dGUoInRyYW5zbGF0ZSIpPT09Im5vIjtlPWIuY2xhc3NMaXN0JiZiLmNsYXNzTGlzdC5jb250YWlucyhlKXx8Yi5nZXRBdHRyaWJ1dGUmJmIuZ2V0QXR0cmlidXRlKCJ0cmFuc2xhdGUiKT09PSJ5ZXMiO2M9ZD8hMTplPyEwOmN9aWYoYi5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKWMmJl8uQWMoYi50ZXh0Q29udGVudCkmJmIucGFyZW50RWxlbWVudCYmYS5MLm9ic2VydmUoYi5wYXJlbnRFbGVtZW50KTtlbHNlIGlmKGIuY2hpbGROb2Rlcylmb3IoZT0wO2U8Yi5jaGlsZE5vZGVzLmxlbmd0aDtlKyspcnYoYSxiLmNoaWxkTm9kZXNbZV0sCmMpfX0scXY9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9e30sZD0wO2Q8Yi5jaGlsZE5vZGVzLmxlbmd0aDtjPXtrYjp2b2lkIDB9LGQrKyljLmtiPWIuY2hpbGROb2Rlc1tkXSxjLmtiLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREUmJl8uQWMoYy5rYi50ZXh0Q29udGVudCkmJihhLlArKyxhLk8uaGFzKGMua2IpfHxhLk8uc2V0KGMua2IsYy5rYi50ZXh0Q29udGVudCksa3YoYS5YZSxjLmtiLnRleHRDb250ZW50KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihmKXtlLmtiLnRleHRDb250ZW50PWZ9fShjKSkuY2F0Y2goZnVuY3Rpb24oKXt9KS5maW5hbGx5KGZ1bmN0aW9uKCl7YS5QLS07YS5QPT09MCYmYS5sJiZhLmwoMTAwLCEwKX0pKX07bHYucHJvdG90eXBlLnJlc3RvcmU9ZnVuY3Rpb24oKXttdih0aGlzKTt0aGlzLlVlLnJlc3RvcmUoKTt2YXIgYT10aGlzLkMgaW5zdGFuY2VvZiBOb2RlP3RoaXMuQzpudWxsO2EmJnB2KGEsdGhpcy5KYSgpKX07Cmx2LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5yZXN0b3JlKCk7Xy5VZCh3aW5kb3csImJsdXIiLHRoaXMudGYsITAsdGhpcyk7Xy5VZCh3aW5kb3csImZvY3VzIix0aGlzLnVmLCEwLHRoaXMpfTt2YXIgc3Y9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9d3IoYS5vLmgpLGY9bmV3IEJ0KGEsYi5EKTtiLkMucHVzaChmKTtEdChmLGIuSSk7RnUoYixlKTtDdChmLGR8fGEucGYpO2I9Y3x8bmV3IFl1KFtdLFtdLGIsYS5KYSgpLGEub2EoKSxhLnlmLGEuSSxhLklhKTtFdChmLGEuVWgsYSk7YS5CJiZEdChmLGIuZG9uZSxiKTtGdChmLGIpfTtfLm09bHYucHJvdG90eXBlO18ubS5VaD1mdW5jdGlvbihhLGIsYyl7Yy5kb25lKCk7dGhpcy5JP3RoaXMuaWgoYSk6dGhpcy5oaChhKTtjLm8uSSgpfTtfLm0udWY9ZnVuY3Rpb24oKXt0aGlzLlI9ITE7dGhpcy5UPTA7eXQodGhpcy5ELHRoaXMuQSl9OwpfLm0udGY9ZnVuY3Rpb24oYSl7YS50YXJnZXQ9PXdpbmRvdyYmKHRoaXMuUj0hMCx0aGlzLlQ9MCx5dCh0aGlzLkQsLjAxKSl9O18ubS5RaD1mdW5jdGlvbihhKXtpZih0aGlzLmcmJnRoaXMuQilpZihfLm9pKF8uWmkocHEsOSkpKWZvcih2YXIgYj0wO2I8YS5sZW5ndGg7YisrKXt2YXIgYz1hW2JdLmFkZGVkTm9kZXM7aWYoYylmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKylydih0aGlzLGNbZF0pfWVsc2V7Zm9yKGI9MDtiPGEubGVuZ3RoO2IrKylpZihhW2JdLnRhcmdldCYmYVtiXS50YXJnZXQuY2xhc3NOYW1lJiZ0eXBlb2YgYVtiXS50YXJnZXQuY2xhc3NOYW1lPT09InN0cmluZyImJihhW2JdLnRhcmdldC5jbGFzc05hbWUuaW5kZXhPZigidHJhbnNsYXRlIik+PTB8fGFbYl0udGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKCJnb29nLSIpPT0wKSlyZXR1cm47dGhpcy53YS5hZGQoKDAsXy55KSh0aGlzLk1pLHRoaXMpKX19OwpfLm0uTWk9ZnVuY3Rpb24oKXt0aGlzLkk9ITA7dGhpcy5HJiYodGhpcy5HLnN0b3AoKSx0aGlzLkc9b3YodGhpcykpO3JldHVybiExfTtfLm0uc2Y9ZnVuY3Rpb24oYSxiKXtEdShiLEd0KGEpKTtzdih0aGlzLGIpO3JldHVybiB0aGlzLllofTtfLm0uWWg9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5nKXJldHVybiBJdDtpZighSHQoYSkpcmV0dXJuIEp0O2lmKCF0aGlzLkIpZm9yKGE9MDthPHRoaXMuRi5sZW5ndGg7KythKXt2YXIgYz1iLGQ9KDAsXy55KSh0aGlzLk1lLHRoaXMsYix0aGlzLkZbYV0pO2MuRC5hZGQoZCl9cmV0dXJuIHRoaXMuWGh9OwpfLm0ubmY9ZnVuY3Rpb24oYSxiKXtpZih0aGlzLlQmJiF0aGlzLlIpe2E9KG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5UO3ZhciBjPXRoaXMuQTthPDkwMCYmYz4uMDE/Yz1NYXRoLm1heChjKi45LC4wMSk6YT4xMTAwJiZjPC41JiYoYz1NYXRoLm1pbihjKjEuNSwuNSkpO3RoaXMuQT1jO3RoaXMuZ2I/dGhpcy5qZj0uMDE6dGhpcy5kZj10aGlzLkF9dGhpcy5JPXRoaXMuZz0hMDt0aGlzLlQ9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5DaSE9KGE9ZG9jdW1lbnQuYm9keS5pbm5lclRleHR8fGRvY3VtZW50LmJvZHkudGV4dENvbnRlbnR8fGRvY3VtZW50LmJvZHkuaW5uZXJIVE1MKT8odGhpcy5DaT1hLGE9ITApOmE9ITE7YT8odGhpcy5nYj0hMSx0aGlzLkE9dGhpcy5kZix0aGlzLlJ8fHl0KHRoaXMuRCx0aGlzLkEpLEV1KGIsW10uY29uY2F0KHRoaXMuQyksdGhpcy5EKSxhPW5ldyBCdCh0aGlzLHRoaXMuRCksQ3QoYSx0aGlzLnNmKSxFdChhLCgwLF8ueSkodGhpcy5hZix0aGlzKSksCkZ0KGEsYiksdGhpcy5HPWEpOih0aGlzLmdiPSEwLHRoaXMuQT10aGlzLmpmLHRoaXMuUnx8eXQodGhpcy5ELHRoaXMuQSksYT1uZXcgQnQodGhpcyx0aGlzLkQpLEN0KGEsdGhpcy5uZiksRXQoYSwoMCxfLnkpKHRoaXMuYWYsdGhpcykpLEZ0KGEsYiksdGhpcy5HPWEpO3JldHVybiBJdH07Xy5tLlhoPWZ1bmN0aW9uKGEsYil7aWYoIXRoaXMuZylyZXR1cm4gSXQ7dGhpcy5JPXRoaXMuZz0hMTt0aGlzLkhiP0d1KGIsITApOihHdShiKSxiLlAoYi5sKSk7aWYodGhpcy5paSlyZXR1cm4gdGhpcy5uZjtiLmNsZWFyKCk7cmV0dXJuIEl0fTsKdmFyIHV2PWZ1bmN0aW9uKGEsYixjKXthOnt2YXIgZD10dihhKSxlPWEuZmIsZj1hLmppLGc9YS5VZS5nO2I9R3QoYik7aWYoIWMuRyl7aWYoYy5xYS5sZW5ndGg9PTApe2MubD09MCYmYy5xYj09MCYmYy5CKDAsITApO2M9ITE7YnJlYWsgYX1jLkc9SXUoYyxkLGUsZixnKX1jLnJhPSEwO1J0KGMuRyxjLmosYy5oLGIpO2M9ITB9cmV0dXJuIGM/YS5wZjphLlNjfSx0dj1mdW5jdGlvbihhKXtyZXR1cm4gYS5JZD8oMCxfLnkpKGEuSy5vLGEuSyk6ZnVuY3Rpb24oKXt9fTtfLm09bHYucHJvdG90eXBlOwpfLm0ucGY9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5nKXJldHVybiBJdDt2YXIgYz1iLm87aWYoYy5nPT1udWxsKXtpZighYy5yYSlyZXR1cm4gdXYodGhpcyxhLGIubyk7aWYoIUh0KGEpKXJldHVybiBKdDtjLnJhPSExO2MuZz1jLkcuZGN8fG51bGw7dmFyIGQ9Yy5nP2MuZzpjLkc9bnVsbDtpZighZClyZXR1cm4gdXYodGhpcyxhLGIubyk7dGhpcy5GLnB1c2goZCk7dmFyIGU9ZC5tYSgpO2lmKHRoaXMuby5oYXMoZSwhdGhpcy5CKXx8Yi5HW2VdIT1udWxsJiZiLkdbZV0pcmV0dXJuIGU9Yy5nLkQsYy5sKz1lLGMuai09ZSxjLmc9bnVsbCx0aGlzLkImJkp1KGIsZCwhMSksdXYodGhpcyxhLGIubyk7ZT10aGlzLm87ZD1kLm1hKCk7ZS5nW2RdPW51bGx9Yi5sYigpPjAmJnl0KHRoaXMuRCwuNSk7cmV0dXJuIEt1KGMsYix3cih0aGlzLm8uaCkpP3RoaXMuU2M6dXYodGhpcyxhLGIubyl9OwpfLm0uU2M9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5nfHxiLmxiKCk9PTApcmV0dXJuIEl0O3N2KHRoaXMsYi5vKTtyZXR1cm4gdGhpcy5CPyhiLnRyYWNrVmlzaWJpbGl0eShHdChhKSksdGhpcy5aaCk6Yi50cmFuc2xhdGUoYSk9PTA/SXQ6dGhpcy5yZn07Xy5tLlpoPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuZz9IdChhKT9iLnRyYW5zbGF0ZShhKT09MD9JdDp0aGlzLnJmOkp0Okl0fTsKXy5tLk1lPWZ1bmN0aW9uKGEsYil7Yi5qJiZ0aGlzLm8ucmVtb3ZlKGIubCk7aWYoIXRoaXMuZylyZXR1cm4hMTtpZih0aGlzLm8uaGFzKGIubWEoKSwhMSkpe3ZhciBjPXRoaXMubztjLmhhcyhiLmwsITEpPyhiLmg9Yy5yZWFkKGIubCksYi5MPSEwKTooYy5yZW1vdmUoYi5sKSxiLmo9ITApO3F0KGIpfWVsc2UgaWYoYz10aGlzLm8sYi5qKWMucmVtb3ZlKGIubCk7ZWxzZSBpZihiLkYpe3ZhciBkPWIuRi5yZXBsYWNlKC88YSAvZywiPHNwYW4gIikucmVwbGFjZSgvXC9hPi9nLCIvc3Bhbj4iKTtiLkw9ITA7ZGVsZXRlIGIuRjtiLkY9bnVsbDtiLmg9W107dmFyIGU9ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSxmPWUuY3JlYXRlRWxlbWVudCgiZGl2Iik7bXAoZiwhMSk7ZD1kLmluZGV4T2YoIjxpPiIpPj0wP2Q6IjxiPiIrZCsiPC9iPiI7ZD1fLktiKGQpO2Q9Xy5tbChkKTtmLm5vZGVUeXBlPT09MSYmTWwoZik7Zi5pbm5lckhUTUw9Xy5raihkKTsKZS5ib2R5LmFwcGVuZENoaWxkKGYpO2U9W107Zm9yKGQ9Zi5maXJzdENoaWxkO2Q7ZD1kLm5leHRTaWJsaW5nKWlmKGQudGFnTmFtZT09IkkiKXZhciBnPW90KGIsRW8oZCksZC5pbm5lckhUTUwpO2Vsc2UgaWYoZC50YWdOYW1lPT0iQiIpe2d8fChnPW90KGIsIiIsIiIpKTtpZihiLmcubGVuZ3RoPT0xKXV0KGcuVSxlLDAsZCk7ZWxzZXt2YXIgaD1lO3ZhciBrPWQ7dmFyIGw9Yi5nO2c9Zy5VO2Zvcih2YXIgbj1bXSxxPWsuZmlyc3RDaGlsZDtxO3E9cCl7dmFyIHA9cS5uZXh0U2libGluZzt2dChxKX1mb3IocD1rLmZpcnN0Q2hpbGQ7cDtwPXAubmV4dFNpYmxpbmcpcC5hdHRyaWJ1dGVzJiZwLmF0dHJpYnV0ZXMuaT8oaz1wYXJzZUludChwLmF0dHJpYnV0ZXMuaS5ub2RlVmFsdWUsMTApLCFpc05hTihrKSYmaz49MCYmazxsLmxlbmd0aCYmKGxba10ucmQmJm5ba10/bltrXS5aKz1wLmZpcnN0Q2hpbGQmJnAuZmlyc3RDaGlsZC5ub2RlVHlwZT09Mz9wLmZpcnN0Q2hpbGQubm9kZVZhbHVlOgpFbyhwKTpuW2tdPXV0KGcsaCxrLHApKSk6cC5ub2RlVHlwZT09MyYmZy5wdXNoKHtYOi0xLFo6cG8ocC5ub2RlVmFsdWUpfSk7ZyE9bnVsbCYmZy5sZW5ndGg+MCYmZ1swXS5YPT0tMSYmKGcubGVuZ3RoPT0xP2dbMF0uWD0wOihnWzFdLlo9Z1swXS5aK2dbMV0uWixnLnNoaWZ0KCkpKX1nPXZvaWQgMH1kPWIuaDtmb3IoaD0wO2g8ZC5sZW5ndGgtMTsrK2gpbD1kW2hdLGc9a28obC5VW2wuVS5sZW5ndGgtMV0uWiksZz1nLmNoYXJDb2RlQXQoZy5sZW5ndGgtMSksMTIyODg8PWcmJmc8PTEyMzUxfHw2NTI4MDw9ZyYmZzw9NjU1MTl8fChsLlVbbC5VLmxlbmd0aC0xXS5aKz0iICIpO18uQWQoZik7Zm9yKGY9MDtmPGIuZy5sZW5ndGg7KytmKWY8ZS5sZW5ndGgmJmY8Yi5DLmxlbmd0aCYmZVtmXSE9bnVsbCYmKGQ9Yi5DW2ZdLGg9ZVtmXS5zdGFydCxoIT1udWxsJiYobD1kLnN1YnN0cmluZygwLGQubGVuZ3RoLWQucmVwbGFjZSgvXltcc1x4YTBdKy8sIiIpLmxlbmd0aCksbD09IiAiJiYKKGw9IiIpLGwmJihoLlo9bCtoLloucmVwbGFjZSgvXltcc1x4YTBdKy8sIiIpKSksaD1lW2ZdLmVuZCxoIT1udWxsJiYoZD1kLnN1YnN0cmluZyhrbyhkKS5sZW5ndGgpLGQ9PSIgIiYmKGQ9IiIpLGQmJihoLlo9a28oaC5aKStkKSkpO2IuaC5sZW5ndGghPTF8fGIuaFswXS5oZXx8KGIuaFswXS5oZT1iLmwpO2Mud3JpdGUoYi5sLGIuaCk7cXQoYil9Yi5JfHwodGhpcy5IYj0hMSk7Yz1iLmo/ITA6dm9pZCAwO2EuVys9Yi5EO2MhPW51bGwmJihhLmxhPSEwKTtiPU1hdGgubWluKE1hdGguZmxvb3IoYS5XKjEwMC9hLmwpLDEwMCk7aWYoYS5GIT1ifHxjKWEuRj1iLGEuUj8oYS5CKGEuRiwhMCxjKSxhLlAoYS5XKSk6YS5CKGEuRiwhMSxjKTtyZXR1cm4hMX07Cl8ubS5yZj1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmcpcmV0dXJuIEl0O2lmKCFIdChhKSlyZXR1cm4gSnQ7aWYoYi5sYigpPjEpe2E9Yi5sWzBdO3ZhciBjPWIuZztpZihhLmp8fGMubGVuZ3RoPT0wfHxhLmc9PW51bGx8fGEuZy5sZW5ndGg9PTApYT1udWxsO2Vsc2V7Zm9yKHZhciBkPVtdLGU9W10sZj0wO2Y8YS5nLmxlbmd0aCYmZjxjLmxlbmd0aDsrK2Ype3ZhciBnPWEuZ1tmXTtnJiZnWzBdJiZnWzFdPT0yMDB8fChlLnB1c2goY1tmXSksZC5wdXNoKGEub1tmXSkpfWE9ZS5sZW5ndGg+MD97Tmk6bmV3IGZ1KGQsITApLE9pOmV9Om51bGx9YT1hP25ldyBZdShbYS5OaV0sYS5PaSxiLm8sYi5oLGIuaixiLnFhLGIuTyxiLkIpOm51bGw7YSE9bnVsbCYmc3YodGhpcyxiLm8sYSx0aGlzLlNjKX1lbHNle2E9ITE7Zm9yKGM9MDtjPGIubC5sZW5ndGg7KytjKWQ9Yi5sW2NdLGQuanx8ZC5oPT0yMDAmJmQuZyYmZC5nWzBdP2Q9ZC5sPSExOihkLmo9ITAsZD1kLmw9ITApLGE9ZHx8YTtpZihhKXJldHVybiB0aGlzLlNjfWQ9CnRoaXMuSmEoKTthPXRoaXMub2EoKTtpZihiLmcubGVuZ3RoPjEpaWYoYz1iLmxbMF0sZT1kPT0iYXV0byIsZD1iLmcsYy5oPT0yMDApZm9yKGY9MDtmPGMuZy5sZW5ndGgmJmY8ZC5sZW5ndGg7KytmKWlmKChnPWMuZ1tmXSkmJmdbMV09PTIwMCl7dmFyIGg9Z1syXSxrPWRbZl0sbD1rLG49aCE9bnVsbCYmaD09YTtsLkY9Z1swXTtuIT09dm9pZCAwJiYobC5LPW4pO2suST1lJiZoPT1udWxsfWVsc2UgZFtmXS5qPSEwO2Vsc2UgZm9yKGE9MDthPGQubGVuZ3RoOysrYSlkW2FdLmo9ITA7ZWxzZXtjPW5ldyBldShkPT0iYXV0byIpO2ZvcihkPTA7ZDxiLmwubGVuZ3RoOysrZClmPWIubFtkXSxlPWEsZi5oPT0yMDAmJmYuZyYmZi5nWzBdPyhmPWYuZ1swXSxjLmcucHVzaChmWzBdKSxmPWZbMl0sYy5oPWMuaCYmZiE9bnVsbCYmZj09ZSxmIT1udWxsJiYoYy5sPSExKSk6Yy5qPSEwO2IuRiE9bnVsbCYmKGMuZy5wdXNoKGIuRiksYi5GPW51bGwpO2lmKGE9Yi5nWzBdKWQ9Yy5tYSgpLGU9Yy5oLAphLkY9ZCxlIT09dm9pZCAwJiYoYS5LPWUpLGEuST1jLmwsYS5qPWMuan1pZih0aGlzLkIpe2E9KDAsXy55KSh0aGlzLk1lLHRoaXMpO2ZvcihjPTA7YzxiLmcubGVuZ3RoO2MrKylhKGIubyxiLmdbY10pO2ZvcihjPTA7YzxiLkMubGVuZ3RoO2MrKylhKGIubyxiLkNbY10pOyR1KGIpO2IuVz0hMDtiLkkmJmIuQiYmKGI9Yi5CLC0tYi5oPT0wJiZWdShiLmcpKX1yZXR1cm4gSXR9Owp2YXIgbXY9ZnVuY3Rpb24oYSl7YS5sYSYmYS5sYS5kaXNjb25uZWN0KCk7YS5JYSYmYS5JYS5yZXNldCgpO2EuZyYmKGEuRyYmYS5HLnN0b3AoKSxhLmc9ITEsYS5JPSExKTtpZihhLkYubGVuZ3RoKXtmb3IodmFyIGI9MDtiPGEuRi5sZW5ndGg7KytiKWEuRltiXS5kaXNwb3NlKCk7YS5GPVtdfWEuSyE9bnVsbCYmKGEuSy5yZXN0b3JlKCksYS5LPW51bGwpO2EuWGIhPW51bGwmJihhLlhiLnJlc3RvcmUoKSxhLlhiPW51bGwpO2EuTyYmYS5PLnNpemU+MCYmKGEuTy5mb3JFYWNoKGZ1bmN0aW9uKGMsZCl7ZC50ZXh0Q29udGVudD1jfSksYS5PLmNsZWFyKCkpO2EuTCYmKGEuTC5kaXNjb25uZWN0KCksYS5MPW51bGwpO2EubGYucmVzdG9yZSgpfSxwdj1mdW5jdGlvbihhLGIpe2EuZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpJiZhLnNldEF0dHJpYnV0ZSgieG1sOmxhbmciLGIpO2EuZ2V0QXR0cmlidXRlKCJsYW5nIikmJmEuc2V0QXR0cmlidXRlKCJsYW5nIixiKX07CkRyLmF0dGFjaCgzMDQ2LGx2LnByb3RvdHlwZSx7b2k6MSxyaToyLHBpOjMsdGk6NH0pO3ZhciB2dj1XcShjciksd3Y9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoLGssbCxuKXtfLnUuY2FsbCh0aGlzKTt0aGlzLk89Ynx8bnVsbDt0aGlzLks9ISFjO3RoaXMuRz1kfHwidHJhbnNwYXJlbnQiO3RoaXMuRD1mfHwiIjtiPWd8fHtmZXRjaFN0YXJ0OjAsU2s6MH07YT1iLmZldGNoU3RhcnR8fDA7Yj1iLmZldGNoRW5kfHwwO3RoaXMuRj1hJiZiP2ItYTowO3RoaXMuUj1EYXRlLm5vdygpLXJxO3RoaXMuQT0hMTt0aGlzLmc9bmV3IFJyKGV8fCIiLHZvaWQgMCxmLG4pO3RoaXMuST1uZXcgenQoMSk7dGhpcy5CPW5ldyB0dDt0aGlzLmw9bnVsbDt0aGlzLkM9ITA7dGhpcy5vPV8udi5JbnRlcnNlY3Rpb25PYnNlcnZlciE9bnVsbDt0aGlzLkw9aHx8bnVsbDtlPW5ldyBqcjtmPW5ldyBscih0aGlzLmcuaW5pdGlhbGl6ZS5iaW5kKHRoaXMuZyxlLnJlZ2lzdGVyKCkpKTt0aGlzLnpjPW1yKGYsZS5kZWxheSgoMCxfLnkpKHRoaXMuemMsdGhpcykpKTt0aGlzLlBjPW1yKGYsZS5kZWxheSgoMCxfLnkpKHRoaXMuUGMsCnRoaXMpKSk7dGhpcy5xZD1tcihmLGUuZGVsYXkoKDAsXy55KSh0aGlzLnFkLHRoaXMpKSk7dGhpcy5yZXN0b3JlPW1yKGYsZS5kZWxheSgoMCxfLnkpKHRoaXMucmVzdG9yZSx0aGlzKSkpO2YuZmluaXNoKCk7ZS5maW5pc2goKTtwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UubWFyayYmcGVyZm9ybWFuY2UubWFyayhScSx2b2lkIDApO2U9ZHIodnYsMSk7Zj1uZXcgUW47Zj1fLlRqKGYsMSx3aW5kb3cubG9jYXRpb24ub3JpZ2luKTthOntpZihwZXJmb3JtYW5jZSYmKGg9cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpLGgubGVuZ3RoPT0xKSl7aD1oWzBdO2JyZWFrIGF9aD1udWxsfWgmJihuPW5ldyBGbSxuPV8uVGoobiwxLCIiKSxhPUdtKGguc3RhcnRUaW1lKSxuPV8uTChuLDIsYSksYT1IbShoLmR1cmF0aW9uKSxuPV8uTChuLDMsYSksYT1uZXcgUG4sYT1fLlRqKGEsMSxoLmluaXRpYXRvclR5cGUpLGE9Xy5UaihhLDIsaC5uZXh0SG9wUHJvdG9jb2wpLApiPUdtKGgud29ya2VyU3RhcnR8fDApLGE9Xy5MKGEsMyxiKSxiPUdtKGgucmVkaXJlY3RTdGFydCksYT1fLkwoYSw0LGIpLGI9R20oaC5yZWRpcmVjdFN0YXJ0KSxhPV8uTChhLDQsYiksYj1HbShoLnJlZGlyZWN0RW5kKSxhPV8uTChhLDUsYiksYj1HbShoLmZldGNoU3RhcnQpLGE9Xy5MKGEsNixiKSxiPUdtKGguZG9tYWluTG9va3VwU3RhcnQpLGE9Xy5MKGEsNyxiKSxiPUdtKGguZG9tYWluTG9va3VwRW5kKSxhPV8uTChhLDgsYiksYj1HbShoLmNvbm5lY3RTdGFydCksYT1fLkwoYSw5LGIpLGI9R20oaC5jb25uZWN0RW5kKSxhPV8uTChhLDEwLGIpLGI9R20oaC5zZWN1cmVDb25uZWN0aW9uU3RhcnQpLGE9Xy5MKGEsMTEsYiksYj1HbShoLnJlc3BvbnNlU3RhcnQpLGE9Xy5MKGEsMTMsYiksYj1HbShoLnJlc3BvbnNlRW5kKSxhPV8uTChhLDE0LGIpLGE9Xy5qayhhLDE1LGgudHJhbnNmZXJTaXplKSxhPV8uamsoYSwxNixoLmVuY29kZWRCb2R5U2l6ZSksYT1fLmprKGEsMTcsaC5kZWNvZGVkQm9keVNpemUpLApuPUptKG4sNixhKSxfLkwoZiwzLG4pLG49Tm0oUnEpKSYmKGg9T20oVXEse3N0YXJ0OmgucmVzcG9uc2VFbmQsZW5kOm4uc3RhcnRUaW1lfHxwZXJmb3JtYW5jZS5ub3coKX0pKSYmKHBlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5jbGVhck1lYXN1cmVzJiZwZXJmb3JtYW5jZS5jbGVhck1lYXN1cmVzKFVxKSxoPUttKGgpLF8uTChmLDQsaCksaD1VbihlKSxfLkwoaCw0LGYpKTtmcihlLDEpfTtfLkcod3YsXy51KTtEci5hdHRhY2goMTQwOTcsd3YucHJvdG90eXBlLHtiZTpmdW5jdGlvbigpe1FtKHRoaXMuZy5UYSgpPyJ0ZV9hZmFzIjoidGVfYWZhdSIpfX0pO18ubT13di5wcm90b3R5cGU7Xy5tLlBpPWZ1bmN0aW9uKGEpe3RoaXMubz1hfTtfLm0uU2E9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLlRhKCl9OwpfLm0uemM9ZnVuY3Rpb24oYSxiKXt0aGlzLmcuU2EoKT90aGlzLmcuby5zZW5kKHtkaXNwbGF5X2xhbmd1YWdlOmIsa2V5OiJBSXphU3lCV0RqMFFKdlZJeDhYT2hSZWdYWDVfU3JSV3hoVDVIczQifSxhKS50aGVuKGZ1bmN0aW9uKGMpe3JldHVybiBhKGMpfSk6KHRoaXMuYmUoKSxhKG51bGwpKX07Cl8ubS5QYz1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZztpZihiKWEoYik7ZWxzZSBpZih0aGlzLmcuU2EoKSl7Yj1uZXcgYXMoZG9jdW1lbnQuYm9keSwhMSwhMSwxLDEpO2Zvcih2YXIgYz1bXSxkPTAsZT10aGlzLmcuaC5IZjtjLmxlbmd0aCtkPGU7KXt2YXIgZj1iLm5leHQoKTtpZihmLmRvbmUpYnJlYWs7Zj1mLnZhbHVlO2IuZz09MSYmJHQoZik/YnMoYik6Zi5ub2RlVHlwZT09MyYmKGY9Xy5BYyhqbyhmLm5vZGVWYWx1ZSkpKSYmKGMucHVzaChmKSxkKz1mLmxlbmd0aCl9U3IodGhpcy5nLGEsYy5qb2luKCIgIikpLnRoZW4oZnVuY3Rpb24oZyl7YShnKX0sZnVuY3Rpb24oZyl7cmV0dXJuIGEobnVsbCxnKX0pfWVsc2UgdGhpcy5iZSgpLGEobnVsbCwhMCl9OwpfLm0ucWQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2di5FYj1hO3Z2LkZiPWI7dmFyIGY9ZHIodnYsMik7ZXIodnYsZik7dmFyIGc9Tm0oUnEpO2lmKGcpe3ZhciBoPU5tKFNxKTtpZihoKXt2YXIgaz1PbShWcSx7c3RhcnQ6Zy5zdGFydFRpbWUsZW5kOmguc3RhcnRUaW1lfHxwZXJmb3JtYW5jZS5ub3coKX0pO2smJihnPVVuKGYpLGg9bmV3IFNuLGs9S20oayksaD1fLkwoaCwxLGspLF8uTChnLDUsaCkscGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMoVnEpKX19ZnIoZiwyKTtmPXtkZXRhaWw6e3NvdXJjZUxhbmd1YWdlOmEsdGFyZ2V0TGFuZ3VhZ2U6Yn19O3BlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiZwZXJmb3JtYW5jZS5tYXJrKFNxLGYpO2Y9RGF0ZS5ub3coKTtDcigpO2lmKCFhfHx4cihhLGIpKWE9ImF1dG8iO2lmKGV8fGEhPXRoaXMuaHx8YiE9dGhpcy5qKXRoaXMuQj1uZXcgdHQ7dGhpcy5oPWE7dGhpcy5qPQpiO3RoaXMuZy5TYSgpPyhkPWR8fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCx0aGlzLmwmJnRoaXMubC5kaXNwb3NlKCksdGhpcy5sPW5ldyBsdihkLHRoaXMuZyx0aGlzLk8sdGhpcy5LLHRoaXMuRywhMCx0aGlzLkksdGhpcy5CLHRoaXMubyx0aGlzLkwpLHRoaXMubC55Zj10aGlzLkEsdGhpcy5DPSEwLHRoaXMubC50cmFuc2xhdGUoYSxiLGMsZSwoMCxfLnkpKHRoaXMueWksdGhpcyxmLGEsYikpKToodGhpcy5iZSgpLGMoMCwhMSwhMCkpfTtfLm0ucGc9ZnVuY3Rpb24oKXtyZXR1cm4hIXRoaXMubCYmdGhpcy5sLmd9O18ubS5ZZj1mdW5jdGlvbihhKXt0aGlzLkE9YX07Xy5tLnJlc3RvcmU9ZnVuY3Rpb24oKXt2YXIgYT1kcih2diwzKTtlcih2dixhKTtmcihhLDMpO3BlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiZwZXJmb3JtYW5jZS5tYXJrKFRxLHZvaWQgMCk7Q3IoKTt0aGlzLmcuU2EoKSYmdGhpcy5sJiZ0aGlzLmwucmVzdG9yZSgpfTsKXy5tLk09ZnVuY3Rpb24oKXtCcigpO3d2LmVhLk0uY2FsbCh0aGlzKTt0aGlzLmcuZGlzcG9zZSgpO3RoaXMubD10aGlzLmc9bnVsbDt0aGlzLkI9bmV3IHR0fTsKXy5tLnlpPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuQyYmKHRoaXMuQz0hMSxiPXtzbDpiLHRsOmMsdGV4dGxlbjpkfSx0aGlzLkEmJihiLmN0dD0iMSIpLHRoaXMuRCE9IiImJihiLnNwPXRoaXMuRCksYi50dHQ9RGF0ZS5ub3coKS1hLGIudHRsPXRoaXMuUix0aGlzLkYmJihiLnR0Zj10aGlzLkYpLHRoaXMubyYmKGIuc3I9MSksYT1wcSxjPVtdLF8ub2koXy5aaShhLDIpKSYmYy5wdXNoKCJzZGEiKSxfLm9pKF8uWmkoYSwzKSkmJmMucHVzaCgiZWVpcyIpLGQ9Xy5iaihhLGlxLDYpLF8ub2koXy5aaShkLDEpKSYmYy5wdXNoKCJlc3RzIiksXy5vaShfLlppKGEsNykpJiZjLnB1c2goImVoY20iKSxfLm9pKF8uWmkoYSw4KSkmJmMucHVzaCgiZW9wYSIpLF8ub2koXy5aaShhLDkpKSYmYy5wdXNoKCJlYWR0IiksYi5lZj1jLmpvaW4oIiwiKSxRbSgidGVfdGltZSIsYikpfTt2YXIgeHY9ZnVuY3Rpb24oYSl7eG4uY2FsbCh0aGlzLGEpO3RoaXMuQT1uZXcgXy5IYih0aGlzKX07Xy5CKHh2LHhuKTt4di5wcm90b3R5cGUuUz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKTthLmNsYXNzTmFtZT0iZ29vZy10ZS1jb21ibyI7YS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLFIuRWUpO3RoaXMuT2EoYSl9O3h2LnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3huLnByb3RvdHlwZS5MYS5jYWxsKHRoaXMpO3RoaXMuWmUoKX07eHYucHJvdG90eXBlLlplPWZ1bmN0aW9uKCl7Xy54KHRoaXMuSCgpLCJjaGFuZ2UiLHByKHRoaXMsImNoYW5nZSIpKTt0aGlzLmRpc3BhdGNoRXZlbnQoImxvYWQiKX07eHYucHJvdG90eXBlLnNhPWZ1bmN0aW9uKCl7eG4ucHJvdG90eXBlLnNhLmNhbGwodGhpcyk7dGhpcy5BLmRpc3Bvc2UoKTt0aGlzLkE9bnVsbH07CnZhciB5dj1mdW5jdGlvbihhLGIpe2EuSCgpLnBhcmVudE5vZGUhPWImJihhLkgoKS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEuSCgpKSxiLmFwcGVuZENoaWxkKGEuSCgpKSl9O18ubT14di5wcm90b3R5cGU7Xy5tLnVjPWZ1bmN0aW9uKGEpe3RoaXMuaC5pZSh0aGlzLkgoKSk7Zm9yKHZhciBiIGluIGEpaWYoYVtiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0pe3ZhciBjPXRoaXMuaC5TKCJPUFRJT04iLHt2YWx1ZTpifSk7dGhpcy5oLlNiKGMsYVtiXSk7dGhpcy5IKCkuYXBwZW5kQ2hpbGQoYyl9dGhpcy5IKCkuc2VsZWN0ZWRJbmRleD0wfTtfLm0uTWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IKCkudmFsdWV9O18ubS5jYj1mdW5jdGlvbihhKXtpZih0aGlzLkgoKS52YWx1ZSE9YSlmb3IodmFyIGI9MCxjO2M9dGhpcy5IKCkub3B0aW9ucy5pdGVtKGIpOysrYilpZihjLnZhbHVlPT1hKXt0aGlzLkgoKS5zZWxlY3RlZEluZGV4PWI7YnJlYWt9fTsKXy5tLkFjPWZ1bmN0aW9uKGEpe2lmKF8ub2MoYSk9PSJ1bmRlZmluZWQiKXJldHVybiB0aGlzLkgoKS5vcHRpb25zLml0ZW0odGhpcy5IKCkuc2VsZWN0ZWRJbmRleCkudGV4dDtmb3IodmFyIGI9MCxjO2M9dGhpcy5IKCkub3B0aW9ucy5pdGVtKGIpOysrYilpZihjLnZhbHVlPT1hKXJldHVybiBjLnRleHR9O18ubS5SYj1mdW5jdGlvbihhKXt0aGlzLkgoKS5kaXNhYmxlZD0hYX07dmFyIHp2PWZ1bmN0aW9uKGEpe3h2LmNhbGwodGhpcyxhKX07Xy5CKHp2LHh2KTt6di5wcm90b3R5cGUubmI9ZnVuY3Rpb24oYSl7dGhpcy51Yy5jYWxsKHRoaXMsYSl9O3ZhciBBdj1mdW5jdGlvbihhLGIpe3h2LmNhbGwodGhpcyxiKTt0aGlzLmc9YSYmSmwoYSl8fHt9O3RoaXMuZy5vZT10aGlzLmcub2V8fDExO3RoaXMuZy5wZD10aGlzLmcucGQhPTA7dGhpcy5nLmViPUFxfTtfLkIoQXYseHYpO18ubT1Bdi5wcm90b3R5cGU7Xy5tLktjPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIkdhIik7fTsKXy5tLlM9ZnVuY3Rpb24oKXt0aGlzLktjKCk7dGhpcy5EPXRoaXMuSCgpO3RoaXMubD13bygiSUZSQU1FIix7ZnJhbWVCb3JkZXI6MCwiY2xhc3MiOiJWSXBnSmQtWlZpOW9kLXhsMDdPYi1PRVZtY2Qgc2tpcHRyYW5zbGF0ZSIsdGl0bGU6Ui5FZX0pO3RoaXMubC5zdHlsZS52aXNpYmlsaXR5PSJ2aXNpYmxlIjttcCh0aGlzLmwsITEpO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5sKX07Cl8ubS5aZT1mdW5jdGlvbigpe3ZhciBhPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciIsYj1fLkxiKHRoaXMuZy5lYiksYz1TKHRoaXMsIm1lbnVCb2R5Iik7dGhpcy5BLk4odGhpcy5sLCJsb2FkIix0aGlzLnFnKTt0cih0aGlzLmwsKDAsXy55KShmdW5jdGlvbigpe3ZhciBkPXpvKHRoaXMubCksZT17fSxmPWUmJmUuVGU7ZT1XbihWbihfLnlsKCksIjxoZWFkPiIpLE91KGUpKTtmPSc8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEY4Ij48bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSInK1AoeHAoYikpKyciJysoZj8nIG5vbmNlPSInK1AoWXAoZikpKyciJzoiIikrJz48L2hlYWQ+PGJvZHkgc2Nyb2xsPSJubyIgc3R5bGU9Im1hcmdpbjowcHg7b3ZlcmZsb3c6aGlkZGVuIiBkaXI9IicrUChhKSsnIiBtYXJnaW5IZWlnaHQ9MCBtYXJnaW5XaWR0aD0wIGxlZnRNYXJnaW49MCB0b3BNYXJnaW49MCBib3JkZXI9MD48ZGl2IGlkPSInKwpQKGMpKyciIGNsYXNzPSc7aWYod3AoIlZJcGdKZC1aVmk5b2QteGwwN09iIixfLnFsKSl7dmFyIGc9TXAoIlZJcGdKZC1aVmk5b2QteGwwN09iIi5tYSgpKTtnPVN0cmluZyhnKS5yZXBsYWNlKE9wLENwKX1lbHNlIGc9IlZJcGdKZC1aVmk5b2QteGwwN09iIi5yZXBsYWNlKE5wLENwKTtlPVZuKGUsZitnKyI+PC9kaXY+PC9ib2R5PiIpLlRiKCk7ZC53cml0ZShfLmtqKGUpKTtkLmNsb3NlKCl9LHRoaXMpKX07Xy5tLnFnPWZ1bmN0aW9uKCl7dGhpcy5qPW5ldyBfLnJkKHpvKHRoaXMubCkpO3RoaXMuTD10aGlzLmouSChTKHRoaXMsIm1lbnVCb2R5IikpO3RoaXMuQS5OKHRoaXMuRCwiY2xpY2siLHRoaXMuVGQpO18uU2M/dGhpcy5BLk4odGhpcy5sLCJibHVyIix0aGlzLlJjKTp0aGlzLkEuTihBbyh0aGlzLmwpLCJibHVyIix0aGlzLlJjKTt0aGlzLmRpc3BhdGNoRXZlbnQoImxvYWQiKX07Cl8ubS5zYT1mdW5jdGlvbigpe3h2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO18uQWQodGhpcy5sKTt0aGlzLkQ9dGhpcy5UPXRoaXMuQj10aGlzLkw9dGhpcy5qPXRoaXMubD1udWxsfTtfLm0ucWY9ZnVuY3Rpb24oYSl7dGhpcy5vIT1hLmN1cnJlbnRUYXJnZXQudmFsdWUmJih0aGlzLmNiKGEuY3VycmVudFRhcmdldC52YWx1ZSksdGhpcy5kaXNwYXRjaEV2ZW50KCJjaGFuZ2UiKSk7dGhpcy5SYygpfTtfLm0uVGQ9ZnVuY3Rpb24oKXtCdih0aGlzKTtBbyh0aGlzLmwpLmZvY3VzKCk7dGhpcy5yYT0hMH07Xy5tLlJjPWZ1bmN0aW9uKCl7dGhpcy5yYSYmKHRoaXMucmE9ITEsQnYodGhpcywhMSksXy5tYihfLnNkKHRoaXMuRCkpLmZvY3VzKCkpfTtfLm0ua2U9ZnVuY3Rpb24oKXt9O18ubS5sZT1mdW5jdGlvbigpe307CnZhciBCdj1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBiPT0idW5kZWZpbmVkInx8Yil7YS5sZSgpO2I9anAoYS5ELHdpbmRvdyk7dmFyIGM9Yi55K2EuRC5vZmZzZXRIZWlnaHQsZD1iLnktYS5HLmhlaWdodCxlPWIueCxmPWIueCthLkQub2Zmc2V0V2lkdGgtYS5HLndpZHRoO2lmKF8uU2MmJiFzbygpKXt2YXIgZz1kb2N1bWVudC5ib2R5O2MtPWcub2Zmc2V0VG9wO2QtPWcub2Zmc2V0VG9wO2UtPWcub2Zmc2V0TGVmdDtmLT1nLm9mZnNldExlZnR9ZWxzZSBnPUtuKGRvY3VtZW50KSxjLT1nLnksZC09Zy55LGUtPWcueCxmLT1nLng7Zz1fLmliKHdpbmRvdyk7Yi55PWIueTw9Zy5oZWlnaHQtYS5HLmhlaWdodD9jOmQ7Yi55PmcuaGVpZ2h0LWEuRy5oZWlnaHQmJihiLnk9Zy5oZWlnaHQtYS5HLmhlaWdodCk7Yi55PDAmJihiLnk9MCk7Xy54Zi50ZXN0KG9xKT9iLng9Zj49MD9mOmU6Yi54PWU8PWcud2lkdGgtYS5HLndpZHRoP2U6ZjtiLng+Zy53aWR0aC1hLkcud2lkdGgmJihiLng9Zy53aWR0aC0KYS5HLndpZHRoKTtiLng8MCYmKGIueD0wKTtlcChhLmwsYik7bXAoYS5sLCEwKTtDdihhKX1lbHNlIGEua2UoKSxtcChhLmwsITEpfTtfLm09QXYucHJvdG90eXBlO18ubS5NYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm99OwpfLm0udWM9ZnVuY3Rpb24oYSl7dGhpcy5qLmllKHRoaXMuTCk7bXAodGhpcy5sLCEwKTt0aGlzLklhPWE7dGhpcy5CPVtdO2Zvcih2YXIgYiBpbiBhKWlmKGFbYl0hPT1PYmplY3QucHJvdG90eXBlW2JdKWlmKGFbYl09PSItLS0iKXt2YXIgYz17bGluazp0aGlzLmouUygiRElWIix7Y2xhc3NOYW1lOiJWSXBnSmQtWlZpOW9kLXZIMUdtZi1oZ0RVd2UiLHZhbHVlOmJ9KSxnaTohMH07dGhpcy5CLnB1c2goYyl9ZWxzZXtjPXtsaW5rOnRoaXMuai5TKCJBIix7Y2xhc3NOYW1lOiJWSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIixocmVmOiIjIix2YWx1ZTpifSl9O3RoaXMuQi5wdXNoKGMpO3ZhciBkPXRoaXMuai5TKCJESVYiLHtzdHlsZToid2hpdGUtc3BhY2U6bm93cmFwIn0pO3RoaXMuai5hcHBlbmRDaGlsZChjLmxpbmssZCk7dGhpcy5nLnBkJiZ0aGlzLmouYXBwZW5kQ2hpbGQoZCx0aGlzLmouUygiU1BBTiIse2NsYXNzTmFtZToiaW5kaWNhdG9yIn0sIlx1MjAzYSIpKTsKdGhpcy5qLmFwcGVuZENoaWxkKGQsdGhpcy5qLlMoIlNQQU4iLHtjbGFzc05hbWU6InRleHQifSx0eXBlb2YgYVtiXT09PSJmdW5jdGlvbiI/YVtiXSgpOmFbYl0pKTt0aGlzLkEuTihjLmxpbmssImNsaWNrIix0aGlzLnFmKX1hPXRoaXMuQi5sZW5ndGgtMTthPU1hdGgucm91bmQoKGEtYSV0aGlzLmcub2UpL3RoaXMuZy5vZSkrMTt0aGlzLlQ9dGhpcy5qLlMoIlRBQkxFIix7Y2VsbHNwYWNpbmc6MCxjZWxscGFkZGluZzowLGJvcmRlcjowfSk7Yz10aGlzLmouUygiVEJPRFkiKTtiPXRoaXMuai5TKCJUUiIse3ZhbGlnbjoidG9wIn0pO3RoaXMuTC5jbGFzc05hbWU9IlZJcGdKZC1aVmk5b2QtdkgxR21mIjt0aGlzLmouYXBwZW5kQ2hpbGQodGhpcy5MLHRoaXMuVCk7dGhpcy5qLmFwcGVuZENoaWxkKHRoaXMuVCxjKTt0aGlzLmouYXBwZW5kQ2hpbGQoYyxiKTtmb3IoZD1jPTA7YzxhOysrYyl7dmFyIGU9dGhpcy5qLlMoIlREIik7dGhpcy5qLmFwcGVuZENoaWxkKGIsZSk7Zm9yKHZhciBmPQowO2Y8MTEmJmQ8dGhpcy5CLmxlbmd0aDsrK2YsKytkKXRoaXMuai5hcHBlbmRDaGlsZChlLHRoaXMuQltkXS5saW5rKTtjIT1hLTEmJihlPXRoaXMuai5TKCJURCIseyJjbGFzcyI6IlZJcGdKZC1aVmk5b2QtdkgxR21mLUtyaFBOYiJ9LCJcdTAwYTAiKSx0aGlzLmouYXBwZW5kQ2hpbGQoYixlKSl9dGhpcy5vPW51bGw7dGhpcy5jYih0aGlzLkJbMF0ubGluay52YWx1ZSk7Q3YodGhpcyk7bXAodGhpcy5sLCExKX07Xy5tLkFjPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLklhW18ub2MoYSk9PSJ1bmRlZmluZWQiP3RoaXMubzphXX07Xy5tLm1lPWZ1bmN0aW9uKCl7fTsKXy5tLmNiPWZ1bmN0aW9uKGEpe2lmKHRoaXMubyE9YSl7dGhpcy5BYyhhKSYmKHRoaXMubz1hLHRoaXMubWUoKSk7Zm9yKHZhciBiPTA7Yjx0aGlzLkIubGVuZ3RoOysrYil7dmFyIGM9dGhpcy5CW2JdO2MuZ2l8fChjLmxpbmsuY2xhc3NOYW1lPWMubGluay52YWx1ZT09YSYmdGhpcy5nLnBkPyJWSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIjoiVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIil9fX07dmFyIEN2PWZ1bmN0aW9uKGEpe3FwKGEuTCxvcChhLlQpKTtxcChhLmwsb3AoYS5MKSk7YS5HPW9wKGEubCl9LER2PWZ1bmN0aW9uKGEsYil7QXYuY2FsbCh0aGlzLGEsYil9O18uQihEdixBdik7Xy5tPUR2LnByb3RvdHlwZTsKXy5tLktjPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLlMoImEiLHsiYXJpYS1oYXNwb3B1cCI6InRydWUifSk7YS5jbGFzc05hbWU9IlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCI7Xy5ubChhLCIjIik7dGhpcy5JPXRoaXMuaC5TKCJTUEFOIik7YS5hcHBlbmRDaGlsZCh0aGlzLkkpO3RoaXMuUD10aGlzLmguUygiSU1HIix7c3JjOkNxLGFsdDoiIixzdHlsZToiYmFja2dyb3VuZC1pbWFnZTp1cmwoIit4cSsiKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xNHB4IDBweDtib3JkZXI6bm9uZSIsd2lkdGg6MTQsaGVpZ2h0OjE0fSk7YS5hcHBlbmRDaGlsZCh0aGlzLlApO3RoaXMuT2EoYSl9O18ubS5rZT1mdW5jdGlvbigpe18uaGoodGhpcy5QLCJiYWNrZ3JvdW5kUG9zaXRpb24iLCItMTRweCAwcHgiKX07Xy5tLmxlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImJhY2tncm91bmRQb3NpdGlvbiIsIjBweCAwcHgiKX07Cl8ubS5zYT1mdW5jdGlvbigpe0F2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO3RoaXMuUD10aGlzLkk9bnVsbH07Xy5tLm1lPWZ1bmN0aW9uKCl7dGhpcy5oLlNiKHRoaXMuSSx0aGlzLkFjKHRoaXMubyl8fCIiKX07Xy5tLm5iPWZ1bmN0aW9uKGEpe3RoaXMudWMuY2FsbCh0aGlzLGEpfTt2YXIgRXY9ZnVuY3Rpb24oYSxiKXtBdi5jYWxsKHRoaXMsYSxiKX07Xy5CKEV2LEF2KTtfLm09RXYucHJvdG90eXBlOwpfLm0uS2M9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguUygiYSIseyJhcmlhLWhhc3BvcHVwIjoidHJ1ZSJ9KTthLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVkIjtfLm5sKGEsIiMiKTt0aGlzLkk9dGhpcy5oLlMoIlNQQU4iKTthLmFwcGVuZENoaWxkKHRoaXMuSSk7YS5hcHBlbmRDaGlsZCh0aGlzLmguUygiSU1HIix7c3JjOkNxLGFsdDoiIix3aWR0aDoxLGhlaWdodDoxfSkpO2EuYXBwZW5kQ2hpbGQodGhpcy5oLlMoIlNQQU4iLHtzdHlsZToiYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICNiYmIifSwiXHUyMDBiIikpO2EuYXBwZW5kQ2hpbGQodGhpcy5oLlMoIklNRyIse3NyYzpDcSxhbHQ6IiIsd2lkdGg6MSxoZWlnaHQ6MX0pKTt0aGlzLlA9dGhpcy5oLlMoInNwYW4iLHtzdHlsZToiY29sb3I6Izc2NzY3NiIsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LCJcdTI1YmMiKTthLmFwcGVuZENoaWxkKHRoaXMuUCk7dGhpcy5PYShhKX07Cl8ubS5rZT1mdW5jdGlvbigpe18uaGoodGhpcy5QLCJjb2xvciIsIiM5YjliOWIiKX07Xy5tLmxlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImNvbG9yIiwiI2Q1ZDVkNSIpfTtfLm0uc2E9ZnVuY3Rpb24oKXtBdi5wcm90b3R5cGUuc2EuY2FsbCh0aGlzKTt0aGlzLlA9dGhpcy5JPW51bGx9O18ubS5tZT1mdW5jdGlvbigpe3RoaXMuaC5TYih0aGlzLkksdGhpcy5BYyh0aGlzLm8pfHwiIil9O18ubS5uYj1mdW5jdGlvbihhKXt0aGlzLnVjLmNhbGwodGhpcyxhKX07dmFyIEZ2PWZ1bmN0aW9uKGEsYil7QXYuY2FsbCh0aGlzLGEsYik7dGhpcy5nLnBkPSExfTtfLkIoRnYsQXYpOwpGdi5wcm90b3R5cGUuS2M9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguY3JlYXRlRWxlbWVudCgiZGl2Iik7YS5jbGFzc05hbWU9IlZJcGdKZC1aVmk5b2QtTGdic1NlIjt2YXIgYj10aGlzLmguUygiRElWIix7c3R5bGU6ImJhY2tncm91bmQ6IHVybCgiK3dxKyIpIHJlcGVhdC14IDAgLTM5cHgifSk7YS5hcHBlbmRDaGlsZChiKTt0aGlzLkk9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpO2IuYXBwZW5kQ2hpbGQodGhpcy5JKTt0aGlzLk9hKGEpfTtGdi5wcm90b3R5cGUuc2E9ZnVuY3Rpb24oKXtBdi5wcm90b3R5cGUuc2EuY2FsbCh0aGlzKTt0aGlzLkk9bnVsbH07RnYucHJvdG90eXBlLnFmPWZ1bmN0aW9uKGEpe3RoaXMuY2IoYS5jdXJyZW50VGFyZ2V0LnZhbHVlKTt0aGlzLmRpc3BhdGNoRXZlbnQoImNoYW5nZSIpO3RoaXMuUmMoKX07dmFyIEd2PWZ1bmN0aW9uKGEsYil7eG4uY2FsbCh0aGlzLGIpO3RoaXMuZz1hJiZKbChhKXx8e307dGhpcy5qPW5ldyBfLkhiKHRoaXMpfTtfLkcoR3YseG4pO3ZhciBIdj17ems6MCxLajoxLGhrOjJ9O18ubT1Hdi5wcm90b3R5cGU7Cl8ubS5TPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoImRpdiIpO050KGEsInNraXB0cmFuc2xhdGUiKTtOdChhLCJnb29nLXRlLWdhZGdldCIpO2EuZGlyPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciI7bXAoYSwhMSk7aWYodGhpcy5nLmxheW91dD09MilpbShhLFF1KHtpZDpTKHRoaXMsInRhcmdldExhbmd1YWdlIiksU2Y6IiIsUmY6IiJ9KSk7ZWxzZXt2YXIgYj1uZXcgdG87aWYoc3AoXy5TYyYmIXNvKCkpKXZhciBjPSI8c3BhbiBzdHlsZT1cImRpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtoZWlnaHQ6MTVweDsgd2lkdGg6NTFweDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhSW1hZ2VMb2FkZXIoIHNyYz0nIitTdHJpbmcoRnEpLnJlcGxhY2UoUnAsR3ApKyInLHNpemluZ01ldGhvZD0nc2NhbGUnKTtcIj48L3NwYW4+IjtlbHNlIGM9aHMud2QsYz0nPGltZyBzcmM9IicrUChXcChGcSkpKwonIiB3aWR0aD0iMzdweCIgaGVpZ2h0PSIxNHB4IiBzdHlsZT0icGFkZGluZy1yaWdodDogM3B4IiBhbHQ9Ikdvb2dsZSAnK1AoYykrJyI+Jzt2YXIgZD1ocy53ZDt2YXIgZT0oMCxfLnRsKSgnPHNwYW4gc3R5bGU9IndoaXRlLXNwYWNlOm5vd3JhcCI+PGEgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1sNGVIWC1oU1JHUGQiKSsnIiBocmVmPSInK1AoVXAoR3EpKSsnIiB0YXJnZXQ9Il9ibGFuayI+JytjK0twKGQpKyI8L2E+PC9zcGFuPiIpO2M9Yi5mb3JtYXQ7ZD1SO3ZhciBmPWQuemc7ZT1lLlRiKCk7ZT11byhiLHt0eXBlOiJodG1sIix4ZjpfLmtqKGUpLnRvU3RyaW5nKCl9KTtiPWMuY2FsbChiLGYuY2FsbChkLGUpKTtpbShhLFF1KHtpZDpTKHRoaXMsInRhcmdldExhbmd1YWdlIiksU2Y6IiIsUmY6dGhpcy5nLmxheW91dD09MT9SbChbIlx1MDBhMCIsIlx1MDBhMCIsYl0pOmJ9KSl9dGhpcy5PYShhKX07Cl8ubS5MYT1mdW5jdGlvbigpe0d2LmVhLkxhLmNhbGwodGhpcyk7dGhpcy5sPXRoaXMuZy5sYXlvdXQ9PTI/bmV3IEV2KG51bGwsdGhpcy5oKTpuZXcgenYodGhpcy5oKTt0aGlzLmouTih0aGlzLmwsImNoYW5nZSIscHIodGhpcywiY2hnX3RndF9sYW5nIikpO3RoaXMuai5OKHRoaXMubCwibG9hZCIsdGhpcy5yZyk7dmFyIGE9dGhpcy5oLkgoUyh0aGlzLCJ0YXJnZXRMYW5ndWFnZSIpKTtpZih0aGlzLmcubGF5b3V0PT0yKXt2YXIgYj10aGlzLmguUygiSU1HIix7c3JjOkNxLCJjbGFzcyI6Imdvb2ctdGUtZ2FkZ2V0LWljb24iLGFsdDoiIn0pO2Iuc3R5bGUuYmFja2dyb3VuZEltYWdlPSJ1cmwoIit4cSsiKSI7Yi5zdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb249Ii02NXB4IDBweCI7dmFyIGM9dGhpcy5oLlMoIlNQQU4iLHtzdHlsZToidmVydGljYWwtYWxpZ246IG1pZGRsZSJ9KTthLmFwcGVuZENoaWxkKGIpO2EuYXBwZW5kQ2hpbGQoYyk7dGhpcy5sLmthKGMpO2Euc3R5bGUud2hpdGVTcGFjZT0KIm5vd3JhcCI7YS5jbGFzc05hbWU9Imdvb2ctdGUtZ2FkZ2V0LXNpbXBsZSJ9ZWxzZSB0aGlzLmwua2EoYSksdGhpcy5nLmxheW91dD09MSYmKGEuc3R5bGUuZGlzcGxheT0iaW5saW5lIil9O18ubS5yZz1mdW5jdGlvbigpe2lmKHRoaXMuZy5sYXlvdXQ9PTIpe3ZhciBhPXRoaXMubCxiPXRoaXMuaC5IKFModGhpcywidGFyZ2V0TGFuZ3VhZ2UiKSk7YS5BLnljKGEuRCwiY2xpY2siLGEuVGQpO2EuRD1iO2EuQS5OKGEuRCwiY2xpY2siLGEuVGQpfXRoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTtfLm0uc2E9ZnVuY3Rpb24oKXtHdi5lYS5zYS5jYWxsKHRoaXMpO3RoaXMuai5kaXNwb3NlKCk7dGhpcy5qPW51bGw7dGhpcy5sLmRpc3Bvc2UoKTt0aGlzLmw9bnVsbH07Xy5tLm9hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubC5NYSgpfTtfLm0ubmE9ZnVuY3Rpb24oYSl7YT09IiI/dGhpcy5MJiZ0aGlzLmwubmIodGhpcy5MKTp0aGlzLkkmJnRoaXMubC5uYih0aGlzLkkpO3RoaXMubC5jYihhKX07Cl8ubS5wYT1mdW5jdGlvbihhKXttcCh0aGlzLkgoKSxhKX07Xy5tLlJiPWZ1bmN0aW9uKGEpe3RoaXMubC5SYihhKX07Xy5tLnVlPWZ1bmN0aW9uKGEsYil7dGhpcy5MPWE7dGhpcy5JPWJ9O3ZhciBJdj1mdW5jdGlvbihhLGIpe3huLmNhbGwodGhpcyxiKTt0aGlzLmc9YSYmSmwoYSl8fHt9O3RoaXMuZy5lYnx8KHRoaXMuZy5lYj1BcSk7dGhpcy5qPW5ldyBfLkhiKHRoaXMpfTtfLkcoSXYseG4pO3ZhciBKdj17cGs6MSxxazoyLGxqOjMsa2o6NH07Xy5tPUl2LnByb3RvdHlwZTtfLm0uUz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0aGlzLkc9ITE7bXAoYSwhMSk7dmFyIGI9Uyh0aGlzLCJjb250YWluZXIiKTtiPSgwLF8udGwpKCc8aWZyYW1lIGlkPSInK1AoYikrJyIgZnJhbWVCb3JkZXI9MCBzcmM9ImphdmFzY3JpcHQ6XCdcJyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1TbWZaLU9FVm1jZCIpKycgc2tpcHRyYW5zbGF0ZSIgc3R5bGU9InZpc2liaWxpdHk6dmlzaWJsZSI+PC9pZnJhbWU+Jyk7aW0oYSxiKTt0aGlzLk9hKGEpfTsKXy5tLkxhPWZ1bmN0aW9uKCl7SXYuZWEuTGEuY2FsbCh0aGlzKTt2YXIgYT1fLnhmLnRlc3Qob3EpPyJydGwiOiJsdHIiLGI9Xy5MYih0aGlzLmcuZWIpLGM9Uyh0aGlzLCJ0cmFuc2xhdGUiKSxkPUNxLGU9eHE7dGhpcy5IKCkuaWQ9Uyh0aGlzLCJmbG9hdENvbnRhaW5lciIpO3ZhciBmPXtpZDp0aGlzLkgoKS5pZCxjbGFzc05hbWU6Imdvb2ctdGUtZnRhYi1mbG9hdCJ9O3RoaXMuSCgpLmNsYXNzTmFtZSs9IiBnb29nLXRlLWZ0YWItZmxvYXQiO3N3aXRjaCh0aGlzLmcuTmMpe2Nhc2UgMjp2YXIgZz0iZ29vZy10ZS1mbG9hdC10b3AiO2YudG9wPTA7Zi5yaWdodD0yMDticmVhaztjYXNlIDM6Zz0iZ29vZy10ZS1mbG9hdC1ib3R0b20iO2YuYm90dG9tPTA7Zi5yaWdodD0yMDticmVhaztjYXNlIDQ6Zz0iZ29vZy10ZS1mbG9hdC1ib3R0b20iO2YuYm90dG9tPTA7Zi5sZWZ0PTIwO2JyZWFrO2RlZmF1bHQ6Zz0iZ29vZy10ZS1mbG9hdC10b3AiLGYudG9wPTAsZi5sZWZ0PTIwfW5wKFpuKG5ldyBfLnlmLApmKSx0aGlzLkgoKSk7dGhpcy5CPXRoaXMuaC5IKFModGhpcywiY29udGFpbmVyIikpO3RoaXMuai5OKHRoaXMuQiwibG9hZCIsdGhpcy5zZyk7dHIodGhpcy5CLCgwLF8ueSkoZnVuY3Rpb24oKXt2YXIgaD16byh0aGlzLkIpLGs9ZyxsPXt9LG49bCYmbC5UZSxxPWhzLkllO2s9Vm4oV24oVm4oXy55bCgpLCI8aGVhZD4iKSxPdShsKSksJzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURjgiPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicrUCh4cChiKSkrJyInKyhuPycgbm9uY2U9IicrUChZcChuKSkrJyInOiIiKSsnPjwvaGVhZD48Ym9keSBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLVNtZloiKSsiICIrUChrKSsnIiBzY3JvbGw9Im5vIiBzdHlsZT0ib3ZlcmZsb3c6aGlkZGVuIiBkaXI9IicrUChhKSsnIj48YSBpZD0iJytQKGMpKyciIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9IicrClAoIlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGQiKSsnIj48aW1nIHNyYz0iJytQKFdwKGQpKSsnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJytQKFdwKGUpKSsnKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOi02NXB4IDBweCI+PHNwYW4+JytLcChxKSsiPC9zcGFuPjwvYT48L2JvZHk+IikuVGIoKTtoLndyaXRlKF8ua2ooaykpO2guY2xvc2UoKX0sdGhpcykpfTtfLm0uc2c9ZnVuY3Rpb24oKXt0aGlzLmw9KG5ldyBfLnJkKHpvKHRoaXMuQikpKS5IKFModGhpcywidHJhbnNsYXRlIikpO3RoaXMuai5OKHRoaXMubCwiY2xpY2siLHByKHRoaXMsImNsa190cmFucyIpKTttcCh0aGlzLkgoKSwhMCk7dmFyIGE9b3AodGhpcy5sKTttcCh0aGlzLkgoKSwhMSk7cXAodGhpcy5CLGEpO3FwKHRoaXMuSCgpLGEpO3RoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTsKXy5tLnNhPWZ1bmN0aW9uKCl7SXYuZWEuc2EuY2FsbCh0aGlzKTt0aGlzLmouZGlzcG9zZSgpO3RoaXMuaj1udWxsO18uQWQodGhpcy5CKTt0aGlzLmw9dGhpcy5CPW51bGx9O18ubS5pc1Zpc2libGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5HfTtfLm0ucGE9ZnVuY3Rpb24oYSl7dGhpcy5HPWE7bXAodGhpcy5IKCksYSl9O3ZhciBLdj1mdW5jdGlvbihhLGIpe3huLmNhbGwodGhpcyxiKTt0aGlzLkE9bmV3IF8uSGIodGhpcyk7dGhpcy5nPWEmJkpsKGEpfHx7fTt0aGlzLmcuZWI9QXE7dGhpcy5nLndlPSExO18uaGoodGhpcy5oLmcuYm9keSwicG9zaXRpb24iLCJyZWxhdGl2ZSIpO18uTWh8fF8uaGoodGhpcy5oLmcuYm9keSwibWluSGVpZ2h0IiwiMTAwJSIpO18uaGoodGhpcy5oLmcuZG9jdW1lbnRFbGVtZW50LCJoZWlnaHQiLCIxMDAlIik7Xy5oaih0aGlzLmguZy5ib2R5LCJ0b3AiLCIwcHgiKTtfLlNjJiYod2luZG93Ll9iYW5uZXJxdWlya2ZpeGxlZnQ9LXBhcnNlSW50KCIwIit0aGlzLmguZy5ib2R5LmxlZnRNYXJnaW4sMTApLHdpbmRvdy5fYmFubmVycXVpcmtmaXh0b3A9LXBhcnNlSW50KCIwIit0aGlzLmguZy5ib2R5LnRvcE1hcmdpbiwxMCktNDApfTtfLkcoS3YseG4pO18ubT1Ldi5wcm90b3R5cGU7Xy5tLmthPWZ1bmN0aW9uKCl7dGhpcy5xYyh0aGlzLmguZy5ib2R5LmZpcnN0Q2hpbGQpfTsKXy5tLlM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguY3JlYXRlRWxlbWVudCgiZGl2Iik7dGhpcy5HPSExO21wKGEsITEpO050KGEsInNraXB0cmFuc2xhdGUiKTt2YXIgYj1TKHRoaXMsImNvbnRhaW5lciIpO2I9KDAsXy50bCkoJzxpZnJhbWUgaWQ9IicrUChiKSsnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItT0VWbWNkIikrJyBza2lwdHJhbnNsYXRlIiBmcmFtZUJvcmRlcj0wIHNyYz0iIyIgc3R5bGU9InZpc2liaWxpdHk6dmlzaWJsZSI+PC9pZnJhbWU+Jyk7aW0oYSxiKTt0aGlzLk9hKGEpfTsKXy5tLkxhPWZ1bmN0aW9uKCl7S3YuZWEuTGEuY2FsbCh0aGlzKTt2YXIgYT1fLnhmLnRlc3Qob3EpPyJydGwiOiJsdHIiLGI9Xy5MYih0aGlzLmcuZWIpLGM9Q3EsZD1HcSxlPURxLGY9eHEsZz1TKHRoaXMsInByb21wdFNlY3Rpb24iKSxoPVModGhpcywiY29uZmlybSIpLGs9Uyh0aGlzLCJwcm9ncmVzc1NlY3Rpb24iKSxsPVModGhpcywicHJvZ3Jlc3NWYWx1ZSIpLG49enEscT1TKHRoaXMsImNhbmNlbCIpLHA9Uyh0aGlzLCJmaW5pc2hTZWN0aW9uIikscj1TKHRoaXMsInJlc3RvcmUiKSx0PVModGhpcywiZXJyb3JTZWN0aW9uIiksQT1TKHRoaXMsImVycm9yQ29udGVudCIpLEQ9Uyh0aGlzLCJjbG9zZSIpLEU9Uyh0aGlzLCJub0F1dG9Qb3B1cCIpLGJhLFo9W107dGhpcy5nLndlJiZaLnB1c2goUHUoe2lkOlModGhpcywicHJvbXB0U291cmNlTGFuZyIpfSkpO1oucHVzaChQdSh7aWQ6Uyh0aGlzLCJwcm9tcHRUYXJnZXRMYW5nIil9KSk7dmFyIHZpPW1tKFIuSmcuYXBwbHkobnVsbCwKWikpO1o9W107dGhpcy5nLndlJiZaLnB1c2goUHUoe2lkOlModGhpcywiZmluaXNoU291cmNlTGFuZyIpfSkpO1oucHVzaChQdSh7aWQ6Uyh0aGlzLCJmaW5pc2hUYXJnZXRMYW5nIil9KSk7dmFyIHdpPW1tKFIuRGcuYXBwbHkobnVsbCxaKSk7dGhpcy5nLmNnJiYoYmE9dGhpcy5nLmNnKTt0aGlzLkI9dGhpcy5oLkgoUyh0aGlzLCJjb250YWluZXIiKSk7dGhpcy5BLk4odGhpcy5CLCJsb2FkIix0aGlzLnRnKTt0cih0aGlzLkIsKDAsXy55KShmdW5jdGlvbigpe3ZhciBhZz16byh0aGlzLkIpLFhjPWJhLExkPXt9LERlPUxkJiZMZC5UZSxFZT1ocy53ZCx4aT1ocy5JZSxiZz1ocy5FZyx5aT1ocy5tZyx6aT1ocy5BZyxjZz1ocy5BZSxBaT1ocy5BZTtYYz1WbihXbihWbihfLnlsKCksIjxoZWFkPiIpLE91KExkKSksJzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURjgiPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicrClAoeHAoYikpKyciJysoRGU/JyBub25jZT0iJytQKFlwKERlKSkrJyInOiIiKSsnPjwvaGVhZD48Ym9keSBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGIiKSsnIiBzY3JvbGw9Im5vIiBib3JkZXI9MCBkaXI9IicrUChhKSsnIj48dGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wIHdpZHRoPTEwMCUgaGVpZ2h0PTEwMCU+PHRyIHZhbGlnbj1taWRkbGU+PHRkIHdpZHRoPTEgbm93cmFwPjxhIGhyZWY9IicrUChVcChkKSkrJyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1sNGVIWC1oU1JHUGQiKSsnIiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9IicrUChXcChlKSkrJyIgYWx0PSJHb29nbGUgJytQKEVlKSsnIj48L2E+PC90ZD4nKyhzcChYYyk/Jzx0ZCB3aWR0aD0xPjxpbWcgc3JjPSInK1AoV3AoYykpKyciIHdpZHRoPSI5IiBoZWlnaHQ9IjE1IiB0aXRsZT0iJytQKFhjKSsnIiBhbHQ9IicrUChYYykrJyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCcrClAoV3AoZikpKycpO2JhY2tncm91bmQtcG9zaXRpb246LTU2cHggMHB4O21hcmdpbjowIDRweCI+PC90ZD4nOiIiKSsnPHRkIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZD48dGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wIGhlaWdodD0xMDAlPjx0ciBpZD0iJytQKGcpKyciIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHZhbGlnbj1taWRkbGU+PHRkIG5vd3JhcD48c3BhbiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItYk45N1BjIikrJyI+JytLcCh2aSkrJzwvc3Bhbj48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrJyI+PC90ZD48dGQgbm93cmFwPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1MZ2JzU2UiKSsnIj48ZGl2PjxidXR0b24gaWQ9IicrUChoKSsnIj48Yj4nK0twKHhpKSsnPC9iPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIGNsYXNzPSInKwpQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrJyI+PC90ZD48dGQgbm93cmFwPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1MZ2JzU2UiKSsnIj48ZGl2PjxidXR0b24gaWQ9IicrUChFKSsnIj48L2J1dHRvbj48L2Rpdj48L2Rpdj48L3RkPjwvdHI+PHRyIGlkPSInK1AoaykrJyIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgdmFsaWduPW1pZGRsZT48dGQ+PHNwYW4gY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLWJOOTdQYyIpKyciPicrS3AoYmcpKycmbmJzcDs8c3BhbiBkaXI9Imx0ciI+KDxiIGlkPSInK1AobCkrJyI+PC9iPiUpPC9zcGFuPiZuYnNwOzxpbWcgc3JjPSInK1AoV3AobikpKyciPjwvc3Bhbj48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrJyI+PC90ZD48dGQgbm93cmFwPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1MZ2JzU2UiKSsnIj48ZGl2PjxidXR0b24gaWQ9IicrUChxKSsnIj4nK0twKHlpKSsKJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvdGQ+PC90cj48dHIgaWQ9IicrUChwKSsnIiBzdHlsZT0iZGlzcGxheTpub25lIj48dGQ+PHNwYW4gY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLWJOOTdQYyIpKyciPicrS3Aod2kpKyc8L3NwYW4+PC90ZD48dGQgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZSIpKyciPjwvdGQ+PHRkIG5vd3JhcD48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtTGdic1NlIikrJyI+PGRpdj48YnV0dG9uIGlkPSInK1AocikrJyI+JytLcCh6aSkrJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvdGQ+PC90cj48dHIgaWQ9IicrUCh0KSsnIiBzdHlsZT0iZGlzcGxheTpub25lIiB2YWxpZ249bWlkZGxlPjx0ZD48c3BhbiBpZD0iJytQKEEpKyciIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMiKSsnIj48L3NwYW4+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZSIpKwonIj48L3RkPjx0ZCB3aWR0aD0xIGlkPSJvcHRpb25zIj48L3RkPjx0ZCB3aWR0aD0xPjxhIGlkPSInK1AoRCkrJyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1UdkQ5UGMtaFNSR1BkIikrJyIgaHJlZj0iIyIgdGl0bGU9IicrUChjZykrJyI+PGltZyBzcmM9IicrUChXcChjKSkrJyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiBhbHQ9IicrUChBaSkrJyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCcrUChXcChmKSkrJyk7YmFja2dyb3VuZC1wb3NpdGlvbjotMjhweCAwcHgiPjwvYT48L3RkPjwvdHI+PC90YWJsZT48L2JvZHk+JykuVGIoKTthZy53cml0ZShfLmtqKFhjKSk7YWcuY2xvc2UoKX0sdGhpcykpfTsKXy5tLnRnPWZ1bmN0aW9uKCl7dGhpcy5qPW5ldyBfLnJkKHpvKHRoaXMuQikpO0x2KHRoaXMsUi5DZSk7aWYodGhpcy5nLmViPT1BcSl7dmFyIGE9InVybCgiK3dxKyIpIjtfLmhqKHRoaXMuai5nLmJvZHksImJhY2tncm91bmRJbWFnZSIsYSk7Zm9yKHZhciBiPXRoaXMuai5nLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJidXR0b24iKSxjPTA7YzxiLmxlbmd0aDsrK2Mpe3ZhciBkPWJbY10ucGFyZW50Tm9kZTtfLmhqKGQsImJhY2tncm91bmRJbWFnZSIsYSk7Xy5oaihkLCJiYWNrZ3JvdW5kUmVwZWF0IiwicmVwZWF0LXgiKTtfLmhqKGQsImJhY2tncm91bmRQb3NpdGlvbiIsIjAgLTM5cHgiKX19dGhpcy5nLndlJiYodGhpcy5vPW5ldyBEdih0aGlzLmcsdGhpcy5qKSk7dGhpcy5sPW5ldyBEdih0aGlzLmcsdGhpcy5qKTt0aGlzLkQ9bmV3IEZ2KHRoaXMuZyx0aGlzLmopO3RoaXMuQS5OKHRoaXMuai5IKFModGhpcywiY29uZmlybSIpKSwiY2xpY2siLHByKHRoaXMsImNsa19jb25maXJtIikpOwp0aGlzLkEuTih0aGlzLmouSChTKHRoaXMsImNhbmNlbCIpKSwiY2xpY2siLHByKHRoaXMsImNsa19jYW5jZWwiKSk7dGhpcy5BLk4odGhpcy5qLkgoUyh0aGlzLCJyZXN0b3JlIikpLCJjbGljayIscHIodGhpcywiY2xrX3Jlc3RvcmUiKSk7dGhpcy5BLk4odGhpcy5qLkgoUyh0aGlzLCJjbG9zZSIpKSwiY2xpY2siLHByKHRoaXMsImNsa19jbG9zZSIpKTt0aGlzLlA9dGhpcy5qLkgoUyh0aGlzLCJub0F1dG9Qb3B1cCIpKTt0aGlzLkEuTih0aGlzLlAsImNsaWNrIixwcih0aGlzLCJjbGtfbm9fYXAiKSk7dGhpcy5vJiZ0aGlzLkEuTih0aGlzLm8sImNoYW5nZSIscHIodGhpcywiY2hnX3NyY19sYW5nIikpO3RoaXMuQS5OKHRoaXMubCwiY2hhbmdlIixwcih0aGlzLCJjaGdfdGd0X2xhbmciKSk7dGhpcy5BLk4odGhpcy5ELCJjaGFuZ2UiLHRoaXMuUmgpO2E9bmV3IGpyKCgwLF8ueSkodGhpcy51Zyx0aGlzKSk7dGhpcy5vJiZ0aGlzLkEuTih0aGlzLm8sImxvYWQiLGEucmVnaXN0ZXIoKSk7CnRoaXMuQS5OKHRoaXMubCwibG9hZCIsYS5yZWdpc3RlcigpKTt0aGlzLkEuTih0aGlzLkQsImxvYWQiLGEucmVnaXN0ZXIoKSk7YS5maW5pc2goKTt0aGlzLm8mJnRoaXMuby5rYSh0aGlzLmouSChTKHRoaXMsInByb21wdFNvdXJjZUxhbmciKSkpO3RoaXMubC5rYSh0aGlzLmouSChTKHRoaXMsInByb21wdFRhcmdldExhbmciKSkpO3RoaXMuRC5rYSh0aGlzLmouSCgib3B0aW9ucyIpKX07Xy5tLnVnPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5ELGI9Ui55ZztfLnpkKGEuSSk7YS5JLmFwcGVuZENoaWxkKGEuaC5jcmVhdGVUZXh0Tm9kZShiKyJcdTAwYTBcdTI1YmMiKSk7dGhpcy5ELnVjKHt0dXJuX29mZl9zaXRlOlIuR2csczE6Ii0tLSIsbGVhcm5fbW9yZTpSLnhnfSk7dGhpcy5kaXNwYXRjaEV2ZW50KCJsb2FkIil9O18ubS5SaD1mdW5jdGlvbigpe3N3aXRjaCh0aGlzLkQuTWEoKSl7Y2FzZSAibGVhcm5fbW9yZSI6d2luZG93Lm9wZW4oSnEsIl9ibGFuayIpO2JyZWFrO2Nhc2UgInR1cm5fb2ZmX3NpdGUiOnRoaXMuZGlzcGF0Y2hFdmVudCgiY2xrX25vX2FwX3NpdGUiKX19OwpfLm0uc2E9ZnVuY3Rpb24oKXt0aGlzLnBhKCExKTtLdi5lYS5zYS5jYWxsKHRoaXMpO3RoaXMuQS5kaXNwb3NlKCk7dGhpcy5BPW51bGw7dGhpcy5vJiYodGhpcy5vLmRpc3Bvc2UoKSx0aGlzLm89bnVsbCk7dGhpcy5sLmRpc3Bvc2UoKTt0aGlzLmw9bnVsbDt0aGlzLkQuZGlzcG9zZSgpO3RoaXMuRD1udWxsO18uQWQodGhpcy5CKTt0aGlzLmFjPXRoaXMuaj1udWxsfTtfLm0uSmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5vP3RoaXMuby5NYSgpOiIifTtfLm0ub2E9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sLk1hKCl9O18ubS5OYT1mdW5jdGlvbihhKXt0aGlzLm8mJnRoaXMuby5jYihhKTt0aGlzLlQmJnRoaXMuVFthXSYmdGhpcy5qLlNiKHRoaXMuUCxSLkZnKHRoaXMuVFthXSkpfTtfLm0ubmE9ZnVuY3Rpb24oYSl7dGhpcy5sLmNiKGEpfTsKdmFyIE12PWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEuYWMhPWIpe2EuYWM9YjtpZihiPT0wKXthLm8mJnl2KGEubyxhLmouSChTKGEsInByb21wdFNvdXJjZUxhbmciKSkpO2lmKGEuTCl7dmFyIGU9YS5vYSgpO2EubC5uYihhLkwpO2EubmEoZSl9eXYoYS5sLGEuai5IKFMoYSwicHJvbXB0VGFyZ2V0TGFuZyIpKSl9ZWxzZSBiPT0yJiYoYS5vJiZ5dihhLm8sYS5qLkgoUyhhLCJmaW5pc2hTb3VyY2VMYW5nIikpKSxhLkkmJihlPWEub2EoKSxhLmwubmIoYS5JKSxhLm5hKGUpKSx5dihhLmwsYS5qLkgoUyhhLCJmaW5pc2hUYXJnZXRMYW5nIikpKSk7ZT17fTtlWy0xXT1hLmouSChTKGEsImVycm9yU2VjdGlvbiIpKTtlWzBdPWEuai5IKFMoYSwicHJvbXB0U2VjdGlvbiIpKTtlWzFdPWEuai5IKFMoYSwicHJvZ3Jlc3NTZWN0aW9uIikpO2VbMl09YS5qLkgoUyhhLCJmaW5pc2hTZWN0aW9uIikpO2Zvcih2YXIgZiBpbiBlKWVbZl0hPT1PYmplY3QucHJvdG90eXBlW2ZdJiZtcChlW2ZdLGY9PQpiKX1jJiZhLnBhKCEwKTthLlAucGFyZW50Tm9kZS5wYXJlbnROb2RlLnN0eWxlLmRpc3BsYXk9ZD8iYmxvY2siOiJub25lIn07S3YucHJvdG90eXBlLmlzVmlzaWJsZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkd9OwpLdi5wcm90b3R5cGUucGE9ZnVuY3Rpb24oYSl7aWYodGhpcy5HIT1hKXt0aGlzLkc9YTtpZihfLlNjKXZhciBiPXBhcnNlSW50KCIwIit0aGlzLmguZy5ib2R5LmxlZnRNYXJnaW4sMTApLGM9cGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkudG9wTWFyZ2luLDEwKTt2YXIgZD10aGlzLmguZy5jb21wYXRNb2RlPT0iQmFja0NvbXBhdCI7YT8oXy5oaih0aGlzLmguZy5ib2R5LCJ0b3AiLCI0MHB4IiksbXAodGhpcy5IKCksITApLF8uU2MmJihzbygpPyh3aW5kb3cuX2Jhbm5lcnF1aXJrZml4bGVmdD13aW5kb3cuX2Jhbm5lcnF1aXJrZml4dG9wPTAsZCYmKHRoaXMuaC5nLmJvZHkudG9wTWFyZ2luPWMrNDApKTpkPyh0aGlzLmguZy5ib2R5LnRvcE1hcmdpbj1jKzQwLHdpbmRvdy5fYmFubmVycXVpcmtmaXhsZWZ0PXdpbmRvdy5fYmFubmVycXVpcmtmaXh0b3A9MCk6KHdpbmRvdy5fYmFubmVycXVpcmtmaXhsZWZ0PS1iLHdpbmRvdy5fYmFubmVycXVpcmtmaXh0b3A9LWMtNDApKSk6KF8uaGoodGhpcy5oLmcuYm9keSwKInRvcCIsIjBweCIpLG1wKHRoaXMuSCgpLCExKSxkJiZjPj00MCYmKHRoaXMuaC5nLmJvZHkudG9wTWFyZ2luPWMtNDApKX19O3ZhciBOdj1mdW5jdGlvbihhLGIpe2Euai5TYihhLmouSChTKGEsInByb2dyZXNzVmFsdWUiKSksYil9LEx2PWZ1bmN0aW9uKGEsYil7YS5qLlNiKGEuai5IKFMoYSwiZXJyb3JDb250ZW50IikpLGIpfTtLdi5wcm90b3R5cGUudWU9ZnVuY3Rpb24oYSxiKXt0aGlzLkw9YTt0aGlzLkk9Yjt0aGlzLmwubmIoYSl9O3ZhciBQdj1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO18ub2MoYSk9PSJzdHJpbmciJiYoYj1hLGE9e30pO18ub2MoYik9PSJzdHJpbmciJiYoYj1nbihTdHJpbmcoYikpKTt0aGlzLlQ9Yjt0aGlzLkE9bmV3IF8uSGIodGhpcyk7dGhpcy5sYT12b2lkIDA7YT1PYmplY3QoYSk7dGhpcy5vPSJhdXRvIjshKGI9d2luZG93LnBhcmVudCE9d2luZG93KSYmKGI9KCF3aW5kb3cuZXh0ZXJuYWx8fCF3aW5kb3cuZXh0ZXJuYWwuZ29vZ2xlVG9vbGJhclZlcnNpb258fHBhcnNlRmxvYXQod2luZG93LmV4dGVybmFsLmdvb2dsZVRvb2xiYXJWZXJzaW9uKTw2LjIpJiYoIXdpbmRvdy5ndGJFeHRlcm5hbHx8IXdpbmRvdy5ndGJFeHRlcm5hbC5pc1RyYW5zbGF0ZUVuYWJsZWR8fCF3aW5kb3cuZ3RiRXh0ZXJuYWwuaXNUcmFuc2xhdGVFbmFibGVkKCkpKSYmKGI9bmF2aWdhdG9yLmFwcFZlcnNpb24mJm5hdmlnYXRvci5hcHBWZXJzaW9uLm1hdGNoKC9cc0Nocm9tZVwvKChcZCspXC4oXGQrKVwuW1xkXC5dKylccy8pLApiPSEoYiYmYlsyXSYmYlszXSYmTnVtYmVyKGJbMl0pKjFFMytOdW1iZXIoYlszXSk+PTQwMDEpKTt0aGlzLmc9e0VkOmIsaGY6ITEsRmQ6bnVsbCxFYzpudWxsLFhkOltdLGNmOltdLGRoOiExLFBiOiExLGFwaUtleToiIixsYXlvdXQ6MCxWZTohMX07dGhpcy5JYT17ZWI6QXEsY2c6dnE9PSJodHRwczovLyI/Ui5DZzpudWxsfTt0aGlzLlA9e2ViOkFxLE5jOm51bGx9O2EmJigiYXV0b0Rpc3BsYXkiaW4gYSYmKHRoaXMuZy5FZD10aGlzLmcuRWQmJiEhYS5hdXRvRGlzcGxheSksIm11bHRpbGFuZ3VhZ2VQYWdlImluIGEmJih0aGlzLmcuUGI9ISFhLm11bHRpbGFuZ3VhZ2VQYWdlKSwibGF5b3V0ImluIGEmJih0aGlzLmcubGF5b3V0PWEubGF5b3V0KSxhLnBhZ2VMYW5ndWFnZSYmKHRoaXMuZy5kZD1xcihhLnBhZ2VMYW5ndWFnZSkpLGEuaW5jbHVkZWRMYW5ndWFnZXMmJih0aGlzLmcuWGQ9YS5pbmNsdWRlZExhbmd1YWdlcy5zcGxpdCgiLCIpKSxhLmV4Y2x1ZGVkTGFuZ3VhZ2VzJiYKKHRoaXMuZy5jZj1hLmV4Y2x1ZGVkTGFuZ3VhZ2VzLnNwbGl0KCIsIikpLGEucmVtb3RlQXBpUHJveHlIYW5kbGVycyYmKHRoaXMubGE9YS5yZW1vdGVBcGlQcm94eUhhbmRsZXJzKSx0aGlzLmcuZGQmJih0aGlzLm89dGhpcy5nLmRkKSxhLmtleSYmKHRoaXMuZy5hcGlLZXk9YS5rZXkpLHRoaXMuUC5OYz1OdW1iZXIoYS5mbG9hdFBvc2l0aW9uKXx8dGhpcy5QLk5jLCJkaXNhYmxlQXV0b1RyYW5zbGF0aW9uImluIGEmJih0aGlzLmcuVmU9ISFhLmRpc2FibGVBdXRvVHJhbnNsYXRpb24pKTshdGhpcy5nLlZlJiZPdih0aGlzKSYmKHRoaXMuZy5oZj0hMCk7dGhpcy5DPXt9O2lmKChhPWRvY3VtZW50LmNvb2tpZS5tYXRjaCgvKF58OyApZ29vZ3RyYW5zb3B0PSguKj8pKDt8JCkvKSkmJmFbMl0pZm9yKHRoaXMuQz17fSxhPV8uRGIoYVsyXSkuc3BsaXQoInwiKSxiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBjPWFbYl0uc3BsaXQoIj0iKTtjWzBdJiYodGhpcy5DW2NbMF1dPWNbMV0pfXRoaXMud2E9Cm5ldyBacyh7YXBpS2V5OnRoaXMuZy5hcGlLZXksaGM6MSx2ZTohMCxnbTpIcX0se2NsaWVudDp0cSx1OndpbmRvdy5sb2NhdGlvbi5ocmVmfSk7dGhpcy5GPW5ldyB3dih2b2lkIDAsdGhpcy53YSx2b2lkIDAsdm9pZCAwLHRoaXMuZy5hcGlLZXksdm9pZCAwLHZvaWQgMCxuZXcgV3Usdm9pZCAwLHZvaWQgMCx0aGlzLmxhKTt0aGlzLkc9ITE7dGhpcy5BLk4od2luZG93LCJwYWdlaGlkZSIsdGhpcy5kaXNwb3NlKTt0aGlzLks9bmV3IGpyKCgwLF8ueSkodGhpcy5NaCx0aGlzKSk7dGhpcy5JPW5ldyBqcigoMCxfLnkpKHRoaXMuT2gsdGhpcykpO3RoaXMuTz1uZXcgbHIoKDAsXy55KSh0aGlzLmtpLHRoaXMpKTt0aGlzLmg9bmV3IEt2KHRoaXMuSWEpO3RoaXMuRi56Yyh0aGlzLksucmVnaXN0ZXIoKDAsXy55KSh0aGlzLkpoLHRoaXMpKSxvcSk7dGhpcy5UPyh0aGlzLmw9bmV3IEd2KHRoaXMuZyksdGhpcy5BLk4odGhpcy5sLCJsb2FkIix0aGlzLksucmVnaXN0ZXIoKSksdGhpcy5BLk4odGhpcy5sLAoiY2hnX3RndF9sYW5nIixtcih0aGlzLk8sdGhpcy5JLmRlbGF5KCgwLF8ueSkodGhpcy5JaCx0aGlzKSkpKSx0aGlzLmwua2EodGhpcy5UKSk6dGhpcy5QLk5jJiYodGhpcy5CPW5ldyBJdih0aGlzLlApLHRoaXMuQS5OKHRoaXMuQiwibG9hZCIsdGhpcy5LLnJlZ2lzdGVyKCkpLHRoaXMuQS5OKHRoaXMuQiwiY2xrX3RyYW5zIixtcih0aGlzLk8sdGhpcy5JLmRlbGF5KCgwLF8ueSkodGhpcy5HaCx0aGlzKSkpKSx0aGlzLkIua2EoKSk7IXRoaXMuZy5kZCYmdGhpcy5nLmRoJiZ0aGlzLkYuUGModGhpcy5LLnJlZ2lzdGVyKCgwLF8ueSkodGhpcy5FaCx0aGlzKSkpO3RoaXMuSy5maW5pc2goKX07Xy5CKFB2LF8udSk7CnZhciBPdj1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGYsZyl7aWYoZj1fLkRiKGYpLm1hdGNoKCJeXFwoKChbYS16QS1aXFwtX10qKVxcfCk/KFthLXpBLVpcXC1fXSopXFwpfF4vKChbYS16QS1aXFwtX10qKS8pPyhbYS16QS1aXFwtX10qKSIpKXtpZihmWzNdKXJldHVybiBnLmcuRmQ9ZlsyXSxnLmcuRWM9ZlszXSwhMDtpZihmWzZdKXJldHVybiBnLmcuRmQ9Zls1XSxnLmcuRWM9Zls2XSwhMH1yZXR1cm4hMX12YXIgYz17dXJsOmZ1bmN0aW9uKCl7dmFyIGY9d2luZG93LmxvY2F0aW9uLmhyZWYubWF0Y2goLyMuKmdvb2d0cmFucyguKikvKTtyZXR1cm4gZiYmZlsxXX0sY29va2llOmZ1bmN0aW9uKCl7dmFyIGY9ZG9jdW1lbnQuY29va2llLm1hdGNoKC8oXnw7IClnb29ndHJhbnM9KC4qPykoO3wkKS8pO3JldHVybiBmJiZmWzJdfX0sZDtmb3IoZCBpbiBjKWlmKGNbZF0hPT1PYmplY3QucHJvdG90eXBlW2RdKXt2YXIgZT1jW2RdKCk7aWYoZSYmYihlLGEpKXJldHVybiBkfXJldHVybiIifSwKUXY9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7Yy5sZW5ndGg+MjspYy5zaGlmdCgpO2M9Ijtkb21haW49IitjLmpvaW4oIi4iKTtiIT1udWxsP2E9YSsiPSIrYjooYj1uZXcgRGF0ZSxiLnNldFRpbWUoYi5nZXRUaW1lKCktMSksYT1hKyI9bm9uZTtleHBpcmVzPSIrYi50b0dNVFN0cmluZygpKTthKz0iO3BhdGg9LyI7ZG9jdW1lbnQuY29va2llPWE7dHJ5e2RvY3VtZW50LmNvb2tpZT1hK2N9Y2F0Y2goZCl7fX0sUnY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1udWxsO2IhPT12b2lkIDAmJihjPWEhPT12b2lkIDA/Ii8iK2ErIi8iK2I6Ii8iK2IpO1F2KCJnb29ndHJhbnMiLGMpfTtfLm09UHYucHJvdG90eXBlOwpfLm0uSmg9ZnVuY3Rpb24oYSl7dGhpcy5qPXFyKG9xKTthPWF8fHt9O3ZhciBiPWEudGFyZ2V0TGFuZ3VhZ2VzfHxbXTt0aGlzLkw9e3NsOldtKGEuc291cmNlTGFuZ3VhZ2VzfHxbXSksdGw6V20oYil9O3RoaXMuRD17fTt0aGlzLlI9e307YT0hdGhpcy5nLlhkLmxlbmd0aDtiPWlyKHRoaXMuZy5YZCk7dmFyIGM9aXIodGhpcy5nLmNmKTt0aGlzLkRbb3FdPSIiO3RoaXMuUltvcV09IiI7Zm9yKHZhciBkIGluIHRoaXMuTC50bCl0aGlzLkwudGxbZF09PT1PYmplY3QucHJvdG90eXBlW2RdfHwhKGF8fGQgaW4gYil8fGQgaW4gY3x8KHRoaXMuUltkXT10aGlzLkwudGxbZF0sZD09dGhpcy5nLmRkJiYhdGhpcy5nLlBiKXx8KHRoaXMuRFtkXT10aGlzLkwudGxbZF0pO3RoaXMuRFtvcV18fGRlbGV0ZSB0aGlzLkRbb3FdO3RoaXMuUltvcV18fGRlbGV0ZSB0aGlzLlJbb3FdO3RoaXMucmE9SmwodGhpcy5MLnNsKX07Xy5tLkVoPWZ1bmN0aW9uKGEpe2EmJih0aGlzLm89cXIoYSkpfTsKXy5tLk1oPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuSztpZih0aGlzLkwpe3RoaXMubz10aGlzLm98fHRoaXMuZy5GZDt0aGlzLmo9dGhpcy5nLkVjfHx0aGlzLmo7dmFyIGE9dGhpcy5nLmhmfHx0aGlzLmcuRWQmJnRoaXMubyE9dGhpcy5qJiYhKHRoaXMubyBpbiBzcSkmJnRoaXMuQy5vcyE9IjEiJiZ0aGlzLkNbIm8iK3RoaXMub10hPSIxIjt0aGlzLm89PSJ6aC1UVyImJih0aGlzLm89InpoLUNOIik7dGhpcy5yYVt0aGlzLm9dfHwoYT0hMSx0aGlzLm89ImF1dG8iKTtpZighdGhpcy5EW3RoaXMual0paWYoYT0hMSx0aGlzLkQuZW4pdGhpcy5qPSJlbiI7ZWxzZSBmb3IodmFyIGIgaW4gdGhpcy5EKWlmKHRoaXMuRFtiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0pe3RoaXMuaj1iO2JyZWFrfWlmKHRoaXMubCl7Yj10aGlzLkQ7dmFyIGM9eyIiOlIuQmd9LGQ7Zm9yKGQgaW4gYiliW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXSYmKGNbZF09YltkXSk7dGhpcy5sLnVlKGMsdGhpcy5SKTt0aGlzLmwubmEoIiIpfSFxcSYmCmE/dGhpcy5nLkVjP21yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLm9kLHRoaXMsITAsITApKSkuY2FsbCgpOih0aGlzLkc9ITAsbXIodGhpcy5PLHRoaXMuSS5kZWxheSgoMCxfLnkpKHRoaXMub2QsdGhpcykpKS5jYWxsKCksUW0oInRlX2FwIix7c2w6dGhpcy5vfSkpOih0aGlzLkImJnRoaXMuQi5wYSghMCksdGhpcy5sJiZ0aGlzLmwucGEoITApKTt3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVTZXJ2aWNlJiZ0aGlzLlJiKCExKTt0aGlzLk8uZmluaXNoKCl9fTsKXy5tLk9oPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLGI9dGhpcy5yYTthLm8mJmEuby5uYihiKTthLlQ9Yjt0aGlzLmgudWUodGhpcy5ELHRoaXMuUik7dGhpcy5oLk5hKHRoaXMubyk7dGhpcy5oLm5hKHRoaXMuaik7dGhpcy5BLk4odGhpcy5oLCJjbGtfY29uZmlybSIsdGhpcy55aCk7dGhpcy5BLk4odGhpcy5oLCJjbGtfY2FuY2VsIix0aGlzLnhoKTt0aGlzLkEuTih0aGlzLmgsImNsa19yZXN0b3JlIix0aGlzLlJkKTt0aGlzLkEuTih0aGlzLmgsImNsa19jbG9zZSIsdGhpcy5RYyk7dGhpcy5BLk4odGhpcy5oLCJjbGtfbm9fYXAiLHRoaXMuemgpO3RoaXMuQS5OKHRoaXMuaCwiY2xrX25vX2FwX3NpdGUiLHRoaXMuQWgpO3RoaXMuQS5OKHRoaXMuaCwiY2hnX3NyY19sYW5nIix0aGlzLm1mKTt0aGlzLkEuTih0aGlzLmgsImNoZ190Z3RfbGFuZyIsdGhpcy5tZik7dGhpcy5sJiZ0aGlzLmwucGEoITApfTsKXy5tLmtpPWZ1bmN0aW9uKCl7dGhpcy5BLk4odGhpcy5oLCJsb2FkIix0aGlzLkkucmVnaXN0ZXIoKSk7dGhpcy5oLmthKCk7dGhpcy5JLmZpbmlzaCgpfTtfLm0uTT1mdW5jdGlvbigpe3RoaXMuRi5yZXN0b3JlKCk7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5GLmRpc3Bvc2UoKTt0aGlzLkEuZGlzcG9zZSgpO3RoaXMuQT1udWxsO3RoaXMuaCYmdGhpcy5oLmRpc3Bvc2UoKTt0aGlzLmg9bnVsbDt0aGlzLkImJnRoaXMuQi5kaXNwb3NlKCk7dGhpcy5CPW51bGw7dGhpcy5sJiZ0aGlzLmwuZGlzcG9zZSgpO3RoaXMuVD10aGlzLmw9bnVsbH07Xy5tLnloPWZ1bmN0aW9uKCl7IXRoaXMuaC5pc1Zpc2libGUoKXx8IXRoaXMuZy5QYiYmeHIodGhpcy5vLHRoaXMuaC5vYSgpKXx8KHRoaXMuRyYmUW0oInRlX2FwdCIse3NsOnRoaXMub30pLFN2KHRoaXMsITEpLHRoaXMubCYmdGhpcy5sLm5hKHRoaXMuaC5vYSgpKSl9OwpfLm0ueGg9ZnVuY3Rpb24oKXt0aGlzLmguaXNWaXNpYmxlKCkmJihUdih0aGlzKSxNdih0aGlzLmgsMCksdGhpcy5sJiZ0aGlzLmwubmEoIiIpKX07Xy5tLlJkPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYoVHYodGhpcyksTXYodGhpcy5oLDApKTt0aGlzLmwmJnRoaXMubC5uYSgiIil9O18ubS5RYz1mdW5jdGlvbigpe3RoaXMuaC5pc1Zpc2libGUoKSYmKHRoaXMuRyYmKHRoaXMuRz0hMSxRbSgidGVfYXBjIix7c2w6dGhpcy5vfSkpLFR2KHRoaXMpLHRoaXMuaC5wYSghMSksdGhpcy5sJiZ0aGlzLmwubmEoIiIpLHRoaXMuQiYmdGhpcy5CLnBhKCEwKSl9O18ubS56aD1mdW5jdGlvbigpe3RoaXMuaC5pc1Zpc2libGUoKSYmKHRoaXMuQ1sibyIrdGhpcy5vXT0iMSIsUW0oInRlX2FwciIse3NsOnRoaXMub30pLHRoaXMuRz0hMSx0aGlzLlFjKCkpfTsKXy5tLkFoPWZ1bmN0aW9uKCl7aWYodGhpcy5oLmlzVmlzaWJsZSgpKXt0aGlzLkc9ITE7dGhpcy5DLm9zPSIxIjt2YXIgYT1udWxsO2lmKHRoaXMuQyl7YT1bXTtmb3IodmFyIGIgaW4gdGhpcy5DKXRoaXMuQ1tiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0mJmEucHVzaChiKyI9Iit0aGlzLkNbYl0pO2E9YS5qb2luKCJ8Iil9UXYoImdvb2d0cmFuc29wdCIsYSk7dGhpcy5RYygpfX07Xy5tLm1mPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYoIXRoaXMuZy5QYiYmeHIodGhpcy5vLHRoaXMuaC5vYSgpKT90aGlzLlJkKCk6KHRoaXMubz10aGlzLmguSmEoKXx8dGhpcy5vLHRoaXMuaj10aGlzLmgub2EoKSx0aGlzLmguYWM9PTImJih0aGlzLmwmJnRoaXMubC5uYSh0aGlzLmgub2EoKSksU3YodGhpcykpKSl9O18ubS5vZD1mdW5jdGlvbihhLGIpe3RoaXMuaC5pc1Zpc2libGUoKXx8KHRoaXMuQiYmdGhpcy5CLnBhKCExKSxhP1N2KHRoaXMsYik6TXYodGhpcy5oLDAsITAsdGhpcy5HKSl9OwpfLm0uUmk9ZnVuY3Rpb24oYSxiKXttcih0aGlzLk8sdGhpcy5JLmRlbGF5KCgwLF8ueSkodGhpcy5vZCx0aGlzLGEsYikpKS5jYWxsKCl9O18ubS5HaD1mdW5jdGlvbigpe3RoaXMub2QodGhpcy5oLmFjPT0yKX07Xy5tLkloPWZ1bmN0aW9uKCl7dGhpcy5sLm9hKCk/IXRoaXMuZy5QYiYmeHIodGhpcy5vLHRoaXMuaC5vYSgpKT90aGlzLlJkKCk6KHRoaXMuaj10aGlzLmwub2EoKSx0aGlzLmgubmEodGhpcy5qKSxTdih0aGlzKSk6dGhpcy5sLm5hKHRoaXMuail9Owp2YXIgU3Y9ZnVuY3Rpb24oYSxiKXtpZih3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVTZXJ2aWNlKXRyeXt3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVTZXJ2aWNlLmdldEluc3RhbmNlKCkucmVzdG9yZSgpfWNhdGNoKGMpe31SdihhLm8sYS5qKTthLkc9ITE7IWImJmEubyBpbiBzcSYmUW0oInRlX2FwZSIse3NsOmEub30pO052KGEuaCwwKTtNdihhLmgsMSwhMCk7YS5GLllmKCEhYik7d2luZG93LnNldFRpbWVvdXQoKDAsXy55KShhLkYucWQsYS5GLGEuZy5QYj8iYXV0byI6YS5vLGEuaiwoMCxfLnkpKGEuZmIsYSksdm9pZCAwLHZvaWQgMCksMCl9OwpQdi5wcm90b3R5cGUuZmI9ZnVuY3Rpb24oYSxiLGMpe3R5cGVvZiB0aGlzLmdiPT0iZnVuY3Rpb24iJiZ0aGlzLmdiKCk7dGhpcy5oLmlzVmlzaWJsZSgpJiZ0aGlzLmguYWM9PTEmJihjPyhUdih0aGlzKSxNdih0aGlzLmgsLTEsITApLGM9PTI/THYodGhpcy5oLFIud2cpOkx2KHRoaXMuaCxSLkNlKSk6KE52KHRoaXMuaCxhKSxiJiYodGhpcy5sJiZ0aGlzLmwubmEodGhpcy5qKSx0aGlzLmguTmEodGhpcy5vKSxNdih0aGlzLmgsMikpKSl9O3ZhciBUdj1mdW5jdGlvbihhKXtSdigpO3dpbmRvdy5zZXRUaW1lb3V0KCgwLF8ueSkoYS5GLnJlc3RvcmUsYS5GLG51bGwpLDApfTtQdi5wcm90b3R5cGUuUmI9ZnVuY3Rpb24oYSl7YXx8dGhpcy5RYygpO3RoaXMubCYmdGhpcy5sLlJiKGEpO3RoaXMuQiYmdGhpcy5CLnBhKGEpfTt2YXIgem49ZnVuY3Rpb24oYSl7aWYoYSYmKGE9U3RyaW5nKGEpLGE9YS5zcGxpdCgiLiIpLGEubGVuZ3RoKSl7Zm9yKHZhciBiPXdpbmRvdyxjPTA7YzxhLmxlbmd0aDsrK2Mpe3ZhciBkPWFbY107aWYoIShkJiZkIGluIGIpKXJldHVybjtiPWJbZF19cmV0dXJuIGJ9fTt2YXIgVXY9bnVsbCxWdj1mdW5jdGlvbihhKXtpZighVXYpe3ZhciBiLGMsZCxlO2EmJigia2V5ImluIGEmJihiPWEua2V5KSwic2VydmVyUGFyYW1zImluIGEmJihjPWEuc2VydmVyUGFyYW1zKSwidGltZUluZm8iaW4gYSYmKGQ9YS50aW1lSW5mbyksInJlbW90ZUFwaVByb3h5SGFuZGxlcnMiaW4gYSYmKGU9YS5yZW1vdGVBcGlQcm94eUhhbmRsZXJzKSwoYT15cigpKSYmKGM9YSkpO2E9MDtpZih0cT09InRlX2xpYiJ8fF8uV2MpYT0zO1V2PW5ldyB3dih2b2lkIDAsbmV3IFpzKHthcGlLZXk6YixoYzphLHZlOiEwLHRyYWNrVmlzaWJpbGl0eTpjPT0idHZpcyJ9KSx2b2lkIDAsdm9pZCAwLGIsYyxkLHZvaWQgMCx2b2lkIDAsdm9pZCAwLGUpO1V2LmNvbnN0cnVjdG9yPWZ1bmN0aW9uKCl7fTtVdi5pc0F2YWlsYWJsZT1Vdi5TYTtVdi5nZXRTdXBwb3J0ZWRMYW5ndWFnZXM9VXYuemM7VXYuZ2V0UGFnZUxhbmd1YWdlPVV2LlBjO1V2LnNldENsaWNrVGhyb3VnaD1Vdi5ZZjtVdi50cmFuc2xhdGVQYWdlPQpVdi5xZDtVdi5yZXN0b3JlPVV2LnJlc3RvcmU7VXYuaXNUcmFuc2xhdGluZz1Vdi5wZztVdi5zZXRDaGVja1Zpc2liaWxpdHk9VXYuUGl9cmV0dXJuIFV2fTtWdi5nZXRJbnN0YW5jZT1mdW5jdGlvbigpe3JldHVybiBVdn07dmFyIFd2PW51bGwsWHY9ZnVuY3Rpb24oYSxiKXtXdnx8KFd2PW5ldyBQdihhLGIpLFd2LmNvbnN0cnVjdG9yPWZ1bmN0aW9uKCl7fSk7cmV0dXJuIFd2fTtYdi5nZXRJbnN0YW5jZT1mdW5jdGlvbigpe3JldHVybiBXdn07CnZhciBZdj1mdW5jdGlvbigpe3ZhciBhPXpuKCJnb29nbGUudHJhbnNsYXRlLm0iKTthfHwoZnMoKSxfLnJjKCJnb29nbGUudHJhbnNsYXRlLm0iLFEpLGE9USk7aWYoYSlmb3IodmFyIGIgaW4gUilpZihSW2JdIT09T2JqZWN0LnByb3RvdHlwZVtSW2JdXSYmUltiXSl7dmFyIGM9UltiXSgpO1JbYl09YVtjXT9hW2NdOmdzfV8ub2koXy5aaShwcSwxKSkmJihiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksYi50ZXh0Q29udGVudD0iXG4gIC50cmFuc2xhdGVkLWx0cntcbiAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAudHJhbnNsYXRlZC1ydGx7XG4gICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gICIsYT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLGF8fChhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWQiKSxjPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwKYy5pbnNlcnRCZWZvcmUoYSxjLmZpcnN0Q2hpbGQpKSxhLmFwcGVuZENoaWxkKGIpKTtCbj09MT8oXy5yYygiZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVTZXJ2aWNlIixWdiksUW0oInRlX2xpIikpOihfLnJjKCJnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZUVsZW1lbnQiLFh2KSxQdi5wcm90b3R5cGUuZGlzcG9zZT1Qdi5wcm90b3R5cGUuZGlzcG9zZSxQdi5wcm90b3R5cGUuc2hvd0Jhbm5lcj1Qdi5wcm90b3R5cGUuUmksUHYucHJvdG90eXBlLnNldEVuYWJsZWQ9UHYucHJvdG90eXBlLlJiLF8ucmMoImdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudC5GbG9hdFBvc2l0aW9uIixKdiksSnYuVE9QX0xFRlQ9MSxKdi5UT1BfUklHSFQ9MixKdi5CT1RUT01fUklHSFQ9MyxKdi5CT1RUT01fTEVGVD00LF8ucmMoImdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudC5JbmxpbmVMYXlvdXQiLEh2KSxIdi5WRVJUSUNBTD0wLEh2LkhPUklaT05UQUw9MSxIdi5TSU1QTEU9CjIpO0NuKCl9OwppZih3aW5kb3cuZ29vZ2xlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUuX2NvbnN0KVl2KCk7ZWxzZSBpZih3aW5kb3cuZ29vZ2xlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUuX3Byb3RvQ29uZmlnKXtycT1uZXcgRGF0ZTt2YXIgWnY9bmV3IGxxKHdpbmRvdy5nb29nbGUudHJhbnNsYXRlLl9wcm90b0NvbmZpZyk7T249Xy5OKFp2LDIyKXx8IiI7bXE9Xy5OKFp2LDYpfHwicHJvZCI7bnE9Xy5OKFp2LDEyKXx8IiI7b3E9Xy5OKFp2LDEpfHwiZW4iO0FuPV8uTihadiwyKXx8IiI7dmFyICR2Oygkdj1fLmJqKFp2LGpxLDMpKSYmKHBxPSR2KTtfLk4oWnYsOCk7cXE9Xy5NKFp2LDE3KTtzcT17fTt2YXIgYXc7YXc9c20oWnYsMTgsXy5haigpKTtmb3IodmFyIGJ3PTA7Ync8YXcubGVuZ3RoO2J3Kyspc3FbYXdbYnddXT0hMDtCbj1fLk4oWnYsNSk9PSJsaWIiPzE6MDt0cT0oXy5OKFp2LDQpfHwidGUiKSsKKEJuPT0xPyJfbGliIjoiIik7ZnE9Xy5OKFp2LDkpfHwiIjt2YXIgY3c7KGN3PV8uTihadiwxMCkpfHwoY3c9Xy5OKFp2LDExKSk7dXE9Y3d8fCIiO3ZxPSJodHRwczovLyI7dmFyIGR3O2R3PV8uTihadiwxMyk7dmFyIGV3PXZxKyhkd3x8IiIpKyIvdHJhbnNsYXRlX3N0YXRpYy8iO3dxPWV3KyJpbWcvdGVfYmsuZ2lmIjt4cT1ldysiaW1nL3RlX2N0cmwzLmdpZiI7enE9ZXcrImltZy9sb2FkaW5nLmdpZiI7QXE9Xy5OKFp2LDE0KXx8IiI7eXE9Xy5OKFp2LDE1KXx8IiI7QnE9Xy5OKFp2LDE2KXx8IiI7Q3E9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vaW1hZ2VzL2NsZWFyZG90LmdpZiI7RHE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNjh4MjhkcC5wbmciO0VxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvcHJvZHVjdC8xeC90cmFuc2xhdGVfMjRkcC5wbmciO0ZxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvZ29vZ2xlbG9nby8xeC9nb29nbGVsb2dvX2NvbG9yXzQyeDE2ZHAucG5nIjsKR3E9Imh0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20iO0txKCk7WXYoKX07Cl8ubWEoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9Cn0pLmNhbGwodGhpcyx0aGlzLmRlZmF1bHRfdHIpOwovLyBHb29nbGUgSW5jLgo="}},"time_used":100,"timings":{"blocked":-1,"dns":2,"connect":21,"send":0,"wait":16,"receive":31,"ssl":29},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/fonts/line-awesomeeb4feb4f.woff2?v=1.1.","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.637Z","timestamp":1785154589637,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/fonts/line-awesomeeb4feb4f.woff2?v=1.1. HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/frontmain/css/plugin.min.css\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 80\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":80,"size_decoded":344,"mime_type":"font/woff2","magic":"ASCII text, with no line terminators","md5":"0fe44f17d9fc58b9727d82ed02f8532e","sha1":"21e62a5b934be0c0408a3f0fde5fdd027d7395d9","sha256":"ca880127ffb551093ed636e2b1739bd8f108f3d3c9ce0d3e6ea559fef11a633e","sha512":"8b3ef4799e44ee225ae812747ae44aad0063e8e04f953a9722be1c33ce4c835844228ee7212e4de36b056e600f7dc4dac41fa05e1c02752118ca492b74115410","ssdeep":"","tlshash":"4ca0245143030141170dc1c501113c174c0f14701c54c3704000755704f415770540cc","first_seen":"2026-06-14T14:02:22.218437Z","last_seen":"2026-07-27T12:17:29.149181Z","times_seen":4,"resource_available":false,"data":"Tm8gQ29udGVudDogaHR0cHM6Ly9wYW5kb3JhaW52ZXN0bHRkLmNvbS9mb250cy9saW5lLWF3ZXNvbWVlYjRmZWI0Zi53b2ZmMj92PTEuMS4="}},"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/iframe_api?v=3.2.5","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.151.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.920Z","timestamp":1785154589920,"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 /iframe_api?v=3.2.5 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://persimmontrades.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\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-ygcTKlbDntV6VNQMuqGlOQ' 'unsafe-inline' 'strict-dynamic' https: http: 'unsafe-eval';report-uri https://csp.withgoogle.com/csp/youtube_main/strict, require-trusted-types-for 'script'\r\nexpires: Mon, 27 Jul 2026 12:16:30 GMT\r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncache-control: private, max-age=0\r\np3p: CP=\"This is not a P3P policy! See http://support.google.com/accounts/answer/151657?hl=en for more info.\"\r\nx-frame-options: SAMEORIGIN\r\nstrict-transport-security: max-age=31536000\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\ncross-origin-resource-policy: cross-origin\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-opener-policy-report-only: same-origin; report-to=\"youtube_main\"\r\norigin-trial: AmhMBR6zCLzDDxpW+HfpP67BqwIknWnyMOXOQGfzYswFmJe+fgaI6XZgAzcxOrzNtP7hEDsOo1jdjFnVr2IdxQ4AAAB4eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJXZWJWaWV3WFJlcXVlc3RlZFdpdGhEZXByZWNhdGlvbiIsImV4cGlyeSI6MTc1ODA2NzE5OSwiaXNTdWJkb21haW4iOnRydWV9, AiDEBptUfVeO93q48VdVMe/ubupazdAl8AaHP+NBzdnW8quUcHdzJUyGSfrmtpKJu7EOvwRp9ug2rEo3XU+WMAMAAAB2eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJEZXZpY2VCb3VuZFNlc3Npb25DcmVkZW50aWFsczIiLCJleHBpcnkiOjE3NzQzMTA0MDAsImlzU3ViZG9tYWluIjp0cnVlfQ==\r\ncontent-encoding: br\r\nserver: ESF\r\nx-xss-protection: 0\r\nset-cookie: __Secure-YNID=20.YT=QMQPWpcJ5Zym1dBy3VZSNoiYASB9AEElCp17Xfhq-M9qIhZOs5gBQZR0N8RbQV222G4en21q5yIbbSDaiWasrnFQKLA36k_4V6jKppKQxk_ApGeMsy7mpt2TBcdDofU1FLFX66G0APgKRjY_JkEda9qlnLsA0jartN2yjJfKYXqK6lq99Ds5mjsxFb51ezBtJOEoM0ONYo2_EF9blYX_7ittNY3cVQZ2mUIHSrJVZDuEQiECLJy1LTj5QrirgouLLm783tOTo3873w1odO5KhIF3UAxsnT4sI_K-4L2Fp_pPWjbpr0jMrOHk_0Il64LCSFxCHRrC3htHjL_tlsGXAg; expires=Sat, 23-Jan-2027 12:16:30 GMT; path=/; domain=.youtube.com; Secure; HttpOnly; SameSite=none\nYSC=jsHez48xcNY; Domain=.youtube.com; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-ROLLOUT_TOKEN=CL-QtY20lO-RGRDWitiJ6_KVAxjWitiJ6_KVAw%3D%3D; Domain=youtube.com; Expires=Sat, 23-Jan-2027 12:16:30 GMT; Path=/; Secure; HttpOnly; SameSite=none; Partitioned\n__Secure-YEC=; Domain=.youtube.com; Expires=Tue, 31-Oct-2023 12:16:30 GMT; Path=/; Secure; HttpOnly; SameSite=lax\nVISITOR_INFO1_LIVE=eWACQXheRmA; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 12:16:30 GMT; Path=/; Secure; HttpOnly; SameSite=none\nVISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 12:16:30 GMT; Path=/; Secure; HttpOnly; SameSite=none\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":993,"size_decoded":4233,"mime_type":"text/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (501)","md5":"995a58cfca5d586dca3b5579b3dc9f3d","sha1":"4eedb0ee98b595a39b4839a80c76aebe95e55f37","sha256":"412370935f9625c094daf0f288c67a20b7882914f7a07d17819d5041c8cf87c9","sha512":"2916b5b66e474f3876fb9a6166fff2b69221dcba05894564307a63dbdd80bdffd565c730a50be61ed1bc31c956fa70e78bca3e56e14d2b28d4a0746b2d9494d7","ssdeep":"","tlshash":"cd11ed7b3d84e639865894e4a03fc31cf1b224957c50cd9110cde899e65cacadd2d5fc","first_seen":"2026-07-22T11:04:10.481101Z","last_seen":"2026-07-27T14:17:47.138267Z","times_seen":747,"resource_available":true,"data":"dmFyIHNjcmlwdFVybCA9ICdodHRwczpcL1wvd3d3LnlvdXR1YmUuY29tXC9zXC9wbGF5ZXJcLzdhNzk2OWMyXC93d3ctd2lkZ2V0YXBpLnZmbHNldFwvd3d3LXdpZGdldGFwaS5qcyc7dHJ5e3ZhciB0dFBvbGljeT13aW5kb3cudHJ1c3RlZFR5cGVzLmNyZWF0ZVBvbGljeSgieW91dHViZS13aWRnZXQtYXBpIix7Y3JlYXRlU2NyaXB0VVJMOmZ1bmN0aW9uKHgpe3JldHVybiB4fX0pO3NjcmlwdFVybD10dFBvbGljeS5jcmVhdGVTY3JpcHRVUkwoc2NyaXB0VXJsKX1jYXRjaChlKXt9dmFyIFlUO2lmKCF3aW5kb3dbIllUIl0pWVQ9e2xvYWRpbmc6MCxsb2FkZWQ6MH07dmFyIFlUQ29uZmlnO2lmKCF3aW5kb3dbIllUQ29uZmlnIl0pWVRDb25maWc9eyJob3N0IjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20ifTsKaWYoIVlULmxvYWRpbmcpe1lULmxvYWRpbmc9MTsoZnVuY3Rpb24oKXt2YXIgbD1bXTtZVC5yZWFkeT1mdW5jdGlvbihmKXtpZihZVC5sb2FkZWQpZigpO2Vsc2UgbC5wdXNoKGYpfTt3aW5kb3cub25ZVFJlYWR5PWZ1bmN0aW9uKCl7WVQubG9hZGVkPTE7dmFyIGk9MDtmb3IoO2k8bC5sZW5ndGg7aSsrKXRyeXtsW2ldKCl9Y2F0Y2goZSl7fX07WVQuc2V0Q29uZmlnPWZ1bmN0aW9uKGMpe3ZhciBrO2ZvcihrIGluIGMpaWYoYy5oYXNPd25Qcm9wZXJ0eShrKSlZVENvbmZpZ1trXT1jW2tdfTt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTthLnR5cGU9InRleHQvamF2YXNjcmlwdCI7YS5pZD0id3d3LXdpZGdldGFwaS1zY3JpcHQiO2Euc3JjPXNjcmlwdFVybDthLmFzeW5jPXRydWU7dmFyIGM9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZihjKXt2YXIgbj1jLm5vbmNlfHxjLmdldEF0dHJpYnV0ZSgibm9uY2UiKTtpZihuKWEuc2V0QXR0cmlidXRlKCJub25jZSIsCm4pfXZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTtiLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGEsYil9KSgpfTsK"}},"time_used":69,"timings":{"blocked":-1,"dns":5,"connect":14,"send":0,"wait":28,"receive":0,"ssl":22},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51508.767219283c65f4d4ca6e.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.194Z","timestamp":1785154590194,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51508.767219283c65f4d4ca6e.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b75-9e1\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 42d4e6d31981077b8df089a1e3af88a6\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2529,"size_decoded":1498,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2529), with no line terminators","md5":"76e3b34ef660092cb6ebcda4b1e8a0b0","sha1":"d997b9296e92721e4cfa8c5cd062150dd5a72d76","sha256":"1f4abc998292aaf8b21eb2933273369f5d7611063f098e70b47fbd27258859c0","sha512":"91d3087923640eeca24866262f097a03a730ca9ecbcab63c5851539144aca3fc7b28c2b2a340a3318f5a5f4149e8f995999a8ec0680a94a7780ac64e2ce591a3","ssdeep":"","tlshash":"6651481fb3fb1d212c234b0047d56e432330e5a315e36aece810d1ae9eda9de39b1285","first_seen":"2026-04-15T09:47:56.501715Z","last_seen":"2026-07-27T14:18:36.342904Z","times_seen":5364,"resource_available":false,"data":"LnR2LWRhdGEtbW9kZXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWV7Y29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtZGF0YS1tb2RlLS1zbmFwc2hvdHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCl9LnR2LWRhdGEtbW9kZS0tZW5kb2ZkYXl7Y29sb3I6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS00MDApfS50di1kYXRhLW1vZGUtLWNvbm5lY3RpbmcsLnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLC50di1kYXRhLW1vZGUtLWludmFsaWQsLnR2LWRhdGEtbW9kZS0tbG9hZGluZ3t2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1kZWxheWVke2NvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKX0udHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLXRhcGV7Zm9udC1zaXplOjEwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KX0udHYtZGF0YS1tb2RlLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci10YXBlOmRpcihydGwpe3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0ycHgpfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci10aWNrZXItdGFwZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbi1pbmxpbmUtc3RhcnQ6MXB4O21hcmdpbi10b3A6NHB4O3ZlcnRpY2FsLWFsaWduOnRvcH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bWFyZ2luLWxlZnQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1uby1yZWFsdGltZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1kYXRhLW1vZGUtLWZvci1jaGFydHtmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1zdGFydDo2cHh9LnR2LWRhdGEtbW9kZS0tY29ubmVjdGluZy0tZm9yLWNoYXJ0LC50di1kYXRhLW1vZGUtLWxvYWRpbmctLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLS1mb3ItY2hhcnQsLnR2LWRhdGEtbW9kZS0taW52YWxpZC0tZm9yLWNoYXJ0e2NvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItY2hhcnR7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1jaGFydC50di1kYXRhLW1vZGUtLXJlcGxheXttYXJnaW4tbGVmdDowfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXItY2FyZHtkaXNwbGF5OmlubGluZTttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtZGF0YS1tb2RlLS1mb3Itc3ltYm9sLXdpZGdldHtkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtd2lkZ2V0LC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1jYXJke2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itd2F0Y2gtbGlzdHtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4O292ZXJmbG93OnZpc2libGU7cG9pbnRlci1ldmVudHM6YXV0bzt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtbW9kZS0tZm9yLXdhdGNoLWxpc3Q6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itd2F0Y2gtbGlzdHt2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1zaXplX2xhcmdle2ZvbnQtc2l6ZToxMnB4fS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtaW5mb3tkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXN5bWJvbC1pbmZve2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itc2NyZWVuZXJ7Zm9udC1zaXplOjEwcHh9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci1zY3JlZW5lcntkaXNwbGF5Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/service8.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.348Z","timestamp":1785154589348,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/service8.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 2603\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2603,"size_decoded":2868,"mime_type":"image/png","magic":"PNG image data, 160 x 133, 8-bit colormap, non-interlaced","md5":"aa9bab906c6d73a2281e88047f3191db","sha1":"ec3aa438f9e2dcaaa92c9706fb8501ed444dae04","sha256":"c1f808d2aa8cd6314b00bbcb27702884c3aa6e188a750828c0e78b1489a57a75","sha512":"6b525ffa9eef34039e98ae94019d894a7fe73f0270501b96d84a384e9a60341476ca2d683e551dae04a734dc9542d03cfebc592d9076459b30ff6216820440be","ssdeep":"","tlshash":"3d510ad4f7c01c39e9dab12b5e0603989175fef0eef141e7258949e61120b256a3379c","first_seen":"2025-07-30T23:06:04.09453Z","last_seen":"2026-07-27T12:17:29.252939Z","times_seen":6,"resource_available":false,"data":"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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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/78688.b21e867ddcc73806d1eb.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.300Z","timestamp":1785154590300,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/78688.b21e867ddcc73806d1eb.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-87f0\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 0f3d034a9329dde22ef39db6dda5653b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":34800,"size_decoded":13227,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3071)","md5":"d960399c64635574ab482388a66e51ee","sha1":"229694eb75d1af359961453cdc4994de4116f75c","sha256":"3867272c188376eb0690e2a9bafcfffce6ca8a51b1f961070ab828fe321abf5e","sha512":"1d21dd4d1f2954f95a206bdfa95c45752e36b0f75446fe0f88bf507c70f77e2cf8e3556d3b15913793556c64a5478b69a7cb5313e9d3ccf451d510ef04f5ef3e","ssdeep":"768:MjZ5Iu0QQG3ZKbntDwoWfTQL6JsihnAcuggtc6sPlr0RHsQSmvFmRuA5LSZd4vdy:UKCgg9LLmvcYjI6sCEIRJbqHw5LuwX","tlshash":"d8f2e555f282706142e750ee0c760513f23aaa963c4a456cf53c99cf7a5d919f3b2b3c","first_seen":"2026-07-24T18:44:55.946861Z","last_seen":"2026-07-27T14:22:59.576871Z","times_seen":254,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNDIxNzEsNzg2ODgsODk0NjddLHs5MzA1NjYoZSx0LGkpe2kuZCh0LHtnZXRKU09OOigpPT5CLGdldFZhbHVlOigpPT5MLGtleXM6KCk9PlAscmVtb3ZlOigpPT54LHNldEpTT046KCk9PkYsc2V0VmFsdWU6KCk9PkV9KTt2YXIgcz1pKDk0ODM4MCkscj1pKDIyMTA2MSksbj1pKDU0MDU3OCksYT1pKDkzMDIzMSksbz1pKDU2OTM5OCksbD1pKDkwOTc5OCksdT1pKDM3NzIyNiksaD1pKDM4NDAxNyksYz1pKDE1MjY5OSksZD1pKDkzMjM2NSk7d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307Y29uc3QgcD1bInMudHJhZGluZ3ZpZXcuY29tIiwiYmV0YWNkbi50cmFkaW5ndmlldy5jb20iXSxtPSgoMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1c2VfbG9jYWxzdG9yYWdlX2Zvcl9zZXR0aW5ncyIpLCJsb2NhbCI9PT13aW5kb3cuZW52aXJvbm1lbnQ/NWUzOjEyZTQpLF89KDAsdS5vbldpZGdldCkoKT8idHJhZGluZ3ZpZXctd2lkZ2V0IjoidHJhZGluZ3ZpZXciLGc9XysiLiI7bGV0IGYseSxTLHY9ITEsYj1udWxsLEM9e30sdz1bXTtjb25zdCBWPVsvXndpZGdldGJhclwud2lkZ2V0XC53YXRjaGxpc3QuKy8sLy4rcXVpY2tzJC8sL153aWRnZXRiYXJcLmxheW91dC1zZXR0aW5ncyQvLC9eQ2hhcnRTaWRlVG9vbGJhcldpZGdldFwudmlzaWJsZSQvLC9eb253aWRnZXRcLndhdGNobGlzdCQvLC9eY2hhcnRcLmZhdm9yaXRlRHJhd2luZ3MkLywvXmNoYXJ0XC5mYXZvcml0ZURyYXdpbmdzUG9zaXRpb24kLywvXmNoYXJ0XC5mYXZvcml0ZUxpYnJhcnlJbmRpY2F0b3JzJC8sL15sb2FkQ2hhcnREaWFsb2cuZmF2b3JpdGVzJC8sL15DaGFydEZhdm9yaXRlRHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvLC9edHJhZGluZ1wuY2hhcnRcLnByb3RlcnR5JC8sL150cmFkaW5nX2Zsb2F0aW5nX3Rvb2xiYXJcLnBvc2l0aW9uJC8sL150cmFkaW5nXC5vcmRlcldpZGdldE1vZGVcLi8sL15zeW1ib2xXYXRlcm1hcmskLywvXnBpbmVyZWZlcmVuY2VcLnNpemUkLywvXnBpbmVyZWZlcmVuY2VcLnBvc2l0aW9uJC8sL15oaW50XC4rLywvXkNoYXJ0RHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvXTtjb25zdCBUPSgpPT4hKGJ8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkKSxJPWU9PmcrZSxEPSgwLHIuZ2V0TG9nZ2VyKSgiTGliLlRWU2V0dGluZ3MiKSxPPWU9PntpZih2fHxTKXJldHVybjtpZigoMCxvLmlzRmVhdHVyZUVuYWJsZWQpKCJkaXNhYmxlX3NhdmVfc2V0dGluZ3MiKSlyZXR1cm4gdm9pZCBEPy5sb2dXYXJuKCJTZXR0aW5ncyBmbGFzaGluZyBoYXMgYmVlbiBza2lwcGVkIGJlY2F1c2Ugb2YgZGlzYWJsZV9zYXZlX3NldHRpbmdzIGZlYXR1cmV0b2dnbGUiKTtpZigoMCxhLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSlyZXR1cm47aWYoVCgpKXJldHVybjtpZigwPT09dy5sZW5ndGgpcmV0dXJuO2NvbnN0IHQ9dzt3PVtdO2NvbnN0IGk9e307Zm9yKGxldCBlPXQubGVuZ3RoO2UtLTspe2NvbnN0IHM9dFtlXTtpW3NdPUNbc10/P251bGx9Y29uc3Qgcz1uZXcgRm9ybURhdGE7cy5hcHBlbmQoImRlbHRhIixKU09OLnN0cmluZ2lmeShpKSksZSYmbmF2aWdhdG9yLnNlbmRCZWFjb24/bmF2aWdhdG9yLnNlbmRCZWFjb24oIi9zYXZlc2V0dGluZ3MvIixzKTooMCxoLmZldGNoKSgiL3NhdmVzZXR0aW5ncy8iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixib2R5OnN9KS50aGVuKChpPT57aWYoaS5va3x8KHc9dy5jb25jYXQodCkpLFs0MjksNTAzXS5pbmNsdWRlcyhpLnN0YXR1cykpe2NvbnN0IHQ9MWUzKisoaS5oZWFkZXJzLmdldCgicmV0cnktYWZ0ZXIiKXx8MCl8fDNlNTtTPXNldFRpbWVvdXQoKCgpPT57Uz12b2lkIDAsTyhlKX0pLHQpfX0pKS5jYXRjaCgoKCk9Pnt3PXcuY29uY2F0KHQpfSkpfSxrPSgpPT57Zj12b2lkIDAsdy5sZW5ndGgmJk8oKX0sTT0oZSx0PXt9KT0+e2lmKGIpbnVsbD09Q1tlXT9iLnJlbW92ZVZhbHVlKGUpOmIuc2V0VmFsdWUoZSxDW2VdKTtlbHNlIGlmKFQoKSl0cnl7bnVsbD09Q1tlXT9kLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oSShlKSk6ZC5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKEkoZSksQ1tlXSl9Y2F0Y2goZSl7fWVsc2Ugdy5wdXNoKGUpLGZ8fChmPXNldFRpbWVvdXQoayxtKSk7dC5za2lwQ3Jvc3NXaW5kb3dFdmVudHx8Yy5UVlhXaW5kb3dFdmVudHMuZW1pdCgic2V0dGluZ3MiLEpTT04uc3RyaW5naWZ5KHtrZXk6ZSx2YWx1ZTpDW2VdfSkpfTtmdW5jdGlvbiBMKGUsdCl7Y29uc3QgaT1DW2VdO3JldHVybiBpPz90fWZ1bmN0aW9uIEIoZSx0KXtjb25zdCBpPUwoZSk7aWYobnVsbD09aSlyZXR1cm4gdDt0cnl7cmV0dXJuIEpTT04ucGFyc2UoaSl9Y2F0Y2goaSl7cmV0dXJuIHgoZSksdH19ZnVuY3Rpb24geChlLHQ9e30pe3JldHVybiBudWxsIT1DW2VdJiYoZGVsZXRlIENbZV0sTShlKSksdC5mb3JjZUZsdXNoJiZPKCksVX1mdW5jdGlvbiBFKGUsdCxpPXt9KXtjb25zdCBzPSIiK3Q7cmV0dXJuIENbZV0hPT1zJiYoQ1tlXT1zLE0oZSxpKSksaS5mb3JjZUZsdXNoJiYheSYmKHk9c2V0VGltZW91dCgoKCk9Pnt5PXZvaWQgMCxPKCl9KSwxMCkpLFV9ZnVuY3Rpb24gRihlLHQsaSl7cmV0dXJuIEUoZSxKU09OLnN0cmluZ2lmeSh0KSxpKSxVfWZ1bmN0aW9uIFAoKXtyZXR1cm4gT2JqZWN0LmtleXMoQyl9Yy5UVlhXaW5kb3dFdmVudHMub24oInNldHRpbmdzIiwoZT0+e2NvbnN0IHQ9SlNPTi5wYXJzZShlKTtudWxsPT10LnZhbHVlP2RlbGV0ZSBDW3Qua2V5XTpDW3Qua2V5XT10LnZhbHVlfSkpO2NvbnN0IFc9ZT0+e2ZvcihsZXQgdD0wO3Q8Vi5sZW5ndGg7Kyt0KWlmKFZbdF0uZXhlYyhlKSlyZXR1cm4hMDtyZXR1cm4hMX0sQT1lPT5lLnN1YnN0cmluZygwLGcubGVuZ3RoKT09PWcsUj1lPT57Qz17fTtjb25zdCB0PTA9PT1PYmplY3Qua2V5cyhlKS5sZW5ndGg7dHx8KGU9PntPYmplY3Qua2V5cyhlKS5mb3JFYWNoKCh0PT57Q1t0XT1lW3RdKyIifSkpfSkoZSksCihlPT57Zm9yKGxldCB0PWQuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3QtLTspe2NvbnN0IGk9ZC5UVkxvY2FsU3RvcmFnZS5rZXkodCk7aSYmQShpKSYmKGUmJkUoaS5zdWJzdHJpbmcoZy5sZW5ndGgpLGQuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShpKSksZC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkpKX19KSh0KX0sTj1uZXcgcy5EZWxlZ2F0ZTtjb25zdCBVPXtsb2FkZWQ6ITEsbG9hZGVkTW9kZWw6ITEsZ2V0VmFsdWU6TCxnZXRKU09OOkIsZ2V0Qm9vbDpmdW5jdGlvbihlLHQpe2NvbnN0IGk9TChlKTtyZXR1cm4gbnVsbD09aT90OiEoIWl8fCJmYWxzZSI9PT1pfHwwPT0raSl9LGdldEZsb2F0OmZ1bmN0aW9uKGUsdCl7Y29uc3QgaT1MKGUpO2lmKG51bGw9PWkpcmV0dXJuIHQ7Y29uc3Qgcz1wYXJzZUZsb2F0KGkpO2lmKCFpc0Zpbml0ZShzKSl0aHJvdyBuZXcgVHlwZUVycm9yKCciJytpKyciIGlzIG5vdCBmbG9hdCAoa2V5OiAiJytlKyciKScpO3JldHVybiBzfSxnZXRJbnQ6ZnVuY3Rpb24oZSx0KXtjb25zdCBpPUwoZSk7aWYobnVsbD09aSlyZXR1cm4gdDtjb25zdCBzPXBhcnNlSW50KGksMTApO2lmKCFpc0Zpbml0ZShzKSl0aHJvdyBuZXcgVHlwZUVycm9yKCciJytpKyciIGlzIG5vdCBpbnQgKGtleTogIicrZSsnIiknKTtyZXR1cm4gc30sc2V0VmFsdWU6RSxzZXRKU09OOkYscmVtb3ZlOngsa2V5czpQLGtleXNNYXNrOmZ1bmN0aW9uKGUpe2NvbnN0IHQ9UCgpLGk9W10scz1uZXcgUmVnRXhwKCJeIisoMCxuLnJlZ0V4cEVzY2FwZSkoZSkucmVwbGFjZSgvXFxcKlxcXCovZ2ksIi4rIikucmVwbGFjZSgvXFxcKi9naSwiW14uXSsiKSsiJCIsImdpIik7Zm9yKGxldCBlPXQubGVuZ3RoLTE7ZT49MDtlLS0pcy50ZXN0KHRbZV0pJiZpLnB1c2godFtlXSkscy5sYXN0SW5kZXg9MDtyZXR1cm4gaX0sc3luYzpmdW5jdGlvbihlKXtudWxsIT09ZT8oYj9SKGIuaW5pdGlhbFNldHRpbmdzfHx7fSk6VCgpPygoKCk9PntpZighKDAsdS5vbldpZGdldCkoKXx8IXAuaW5jbHVkZXMod2luZG93LmxvY2F0aW9uLmhvc3QpKXJldHVybjtjb25zdCBlPSJ0cmFkaW5ndmlldy4iO2ZvcihsZXQgdD1kLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDt0LS07KXtjb25zdCBpPWQuVFZMb2NhbFN0b3JhZ2Uua2V5KHQpO2lmKDA9PT1pLmluZGV4T2YoZSkpe2NvbnN0IHQ9aS5yZXBsYWNlKGUsXysiLiIpO2QuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0LGQuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShpKSksZC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkpfX19KSgpLCgoKT0+e0M9e307Y29uc3QgZT0hKDAsYS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgic2F2ZV9jaGFydF9wcm9wZXJ0aWVzX3RvX2xvY2FsX3N0b3JhZ2UiKTtmb3IobGV0IHQ9ZC5UVkxvY2FsU3RvcmFnZS5sZW5ndGg7dC0tOyl7Y29uc3QgaT1kLlRWTG9jYWxTdG9yYWdlLmtleSh0KTtpZighaXx8IUEoaSkpY29udGludWU7Y29uc3Qgcz1pLnN1YnN0cmluZyhnLmxlbmd0aCk7ZSYmIVcocyl8fChDW3NdPWQuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShpKSl9fSkoKSk6UihlfHx7fSksTi5maXJlKCkpOnY9ITB9LG9uU3luYzpOLHNldFNldHRpbmdzQWRhcHRlcjpmdW5jdGlvbihlKXtiPWV9fTt3aW5kb3cuVFZTZXR0aW5ncz1VLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLCgoKT0+eyJoaWRkZW4iIT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiYhMCE9PWRvY3VtZW50LmhpZGRlbnx8TygpfSkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlaGlkZSIsKCgpPT57TyghMCl9KSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImJlZm9yZXVubG9hZCIsKCgpPT57TyghMCl9KSksbC5mbHVzaERlbGVnYXRlLnN1YnNjcmliZShudWxsLCgoKT0+e08oKX0pKSxzZXRUaW1lb3V0KChhc3luYygpPT57Y29uc3R7Y2xlYXJPbGRTZXR0aW5nczplfT1hd2FpdCBpLmUoMzU5ODApLnRoZW4oaS5iaW5kKGksNzU0MTg1KSk7ZSgpfSksM2U0KX0sODAyNTg2KGUsdCxpKXtpLmQodCx7Z2V0TWluaVRpbWVGcmFtZU9wdGlvbnM6KCk9PmF9KTt2YXIgcz1pKDY5MzUwMCk7ZnVuY3Rpb24gcihlKXtjb25zdCB0PW5ldyBEYXRlO3JldHVybiB0LnNldE1vbnRoKHQuZ2V0TW9udGgoKS1lKSxNYXRoLnRydW5jKHQudmFsdWVPZigpLzFlMyl9ZnVuY3Rpb24gbihlKXtjb25zdCB0PW5ldyBEYXRlO3JldHVybiB0LnNldEZ1bGxZZWFyKHQuZ2V0RnVsbFllYXIoKS1lKSxNYXRoLnRydW5jKHQudmFsdWVPZigpLzFlMyl9ZnVuY3Rpb24gYShlKXtjb25zdCB0PSgwLHMuZ2V0VGltZUZyYW1lcykoKTtyZXR1cm5bey4uLnRbZT8ibGFzdHNlc3Npb24iOiIxZCJdfSx7Li4udFsiMW0iXSx0YXJnZXRSZXNvbHV0aW9uOiIxRCIsZnJvbTpyKDEpfSx7Li4udFsiM20iXSx0YXJnZXRSZXNvbHV0aW9uOiIxRCIsZnJvbTpyKDMpfSx7Li4udFsiMTJtIl0sZnJvbTpuKDEpfSx7Li4udFsiNjBtIl0sdGFyZ2V0UmVzb2x1dGlvbjoiMU0iLGZyb206big1KX0sey4uLnQuYWxsfV19fSwyMTg4MTQoZSx0LGkpe2kuZCh0LHtjb2xvcjooKT0+bixkdXI6KCk9PnMsZWFzaW5nRnVuYzooKT0+cn0pO2NvbnN0IHM9MzUwLHI9e2xpbmVhcjplPT5lLGVhc2VJblF1YWQ6ZT0+ZSplLGVhc2VPdXRRdWFkOmU9PmUqKDItZSksZWFzZUluT3V0UXVhZDplPT5lPC41PzIqZSplOig0LTIqZSkqZS0xLGVhc2VJbkN1YmljOmU9PmUqZSplLGVhc2VPdXRDdWJpYzplPT4tLWUqZSplKzEsZWFzZUluT3V0Q3ViaWM6ZT0+ZTwuNT80KmUqZSplOihlLTEpKigyKmUtMikqKDIqZS0yKSsxLGVhc2VJblF1YXJ0OmU9PmUqZSplKmUsZWFzZU91dFF1YXJ0OmU9PjEtIC0tZSplKmUqZSxlYXNlSW5PdXRRdWFydDplPT5lPC41PzgqZSplKmUqZToxLTgqLS1lKmUqZSplLGVhc2VJblF1aW50OmU9PmUqZSplKmUqZSxlYXNlT3V0UXVpbnQ6ZT0+MSstLWUqZSplKmUqZSxlYXNlSW5PdXRRdWludDplPT5lPC41PzE2KmUqZSplKmUqZToxKzE2Ki0tZSplKmUqZSplfTtjb25zdCBuPXtibGFjazcwOiIjNEE0QTRBIixibGFjazgwOiIjNTM1MzUzIn19LDYxMDU3MShlLHQsaSl7aS5kKHQsewpkZWZhdWx0Vm9sdW1lT3B0aW9uczooKT0+bn0pO3ZhciBzPWkoNTA1NTYpLHI9KGkoMjQ3OTAxKSxpKDg3MzU3MykpO2NvbnN0IG49e3NjYWxlTWFyZ2luczp7dG9wOi44LGJvdHRvbTowfSxwcmljZVNjYWxlSWQ6Im92ZXJsYXkiLHVwQ29sb3I6KDAsci5hcHBseVRyYW5zcGFyZW5jeSkocy5jb2xvcnNQYWxldHRlWyJjb2xvci1taW50eS1ncmVlbi01MDAiXSw1MCksZG93bkNvbG9yOigwLHIuYXBwbHlUcmFuc3BhcmVuY3kpKHMuY29sb3JzUGFsZXR0ZVsiY29sb3ItcmlwZS1yZWQtNTAwIl0sNTApLHZpc2libGU6ITEsbGFzdFZhbHVlVmlzaWJsZTohMSxwcmljZUxpbmVWaXNpYmxlOiExfX0sMjQyMTcxKGUsdCxpKXtpLmQodCx7TWluaUNoYXJ0UGxvdEJhc2U6KCk9PlcsaXNUaW1lUG9pbnRJbmRleDooKT0+eCxzZXJpZXNIb3J6TWFyZ2luc0RlZmF1bHRzOigpPT5GfSk7dmFyIHM9aSg2NjMwNDYpLHI9aSg2NzgzMTIpLG49aSg3NDAxNjIpLGE9aSgzMDQyMjEpLG89aSgxMzg2MzgpLGw9aSgxMzQ2NyksdT1pKDIyMTA2MSksaD1pKDYwMTg0MSksYz1pKDIzMjM2NCksZD1pKDQwMjA0NSkscD1pKDk1MjkwMCksbT1pKDE1MDE1MCksXz1pKDk0ODM4MCksZz1pKDc3MzA4OCksZj1pKDgxNDU4OSkseT1pKDc4MzI1NCksUz1pKDk4NDM3Niksdj1pKDQwNzc5OSksYj1pKDExMTk1MyksQz1pKDEyODk5OCksdz1pKDExMzU2NyksVj1pKDg3MzU3MyksVD1pKDIyNjkzNyksST1pKDY5NTk0Nik7Y29uc3QgRD0oMCx1LmdldExvZ2dlcikoIkNoYXJ0Lk1pbmlDaGFydCIpLE89bmV3IFMuVm9sdW1lRm9ybWF0dGVyO2Z1bmN0aW9uIGsoZSx0LGkscyl7cmV0dXJue3RpbWU6dCxjb2xvcjpzLHZhbHVlOmlbZV19fWZ1bmN0aW9uIE0oZSx0KXtyZXR1cm57dGltZTplLG9wZW46dFsxXSxoaWdoOnRbMl0sbG93OnRbM10sY2xvc2U6dFs0XX19ZnVuY3Rpb24gTChlLHQsaSxzLHIpe3JldHVybnt0aW1lOmUsdG9wQ29sb3I6cyxib3R0b21Db2xvcjpyLGxpbmVDb2xvcjppLHZhbHVlOnRbNF19fWZ1bmN0aW9uIEIoZSl7Y29uc3QgdD1uZXcgRGF0ZShlKTtyZXR1cm4gRGF0ZS5VVEModC5nZXRGdWxsWWVhcigpLHQuZ2V0TW9udGgoKSx0LmdldERhdGUoKSx0LmdldEhvdXJzKCksdC5nZXRNaW51dGVzKCksdC5nZXRTZWNvbmRzKCkpLzFlM31mdW5jdGlvbiB4KGUpe3JldHVybigwLGguaXNJbnRlZ2VyKShlKX1jb25zdCBFPSgwLHMuZGVmYXVsdCkoVi5yZXNldFRyYW5zcGFyZW5jeSk7Y29uc3QgRj17bGVmdExvZ2ljYWw6MCxyaWdodExvZ2ljYWw6MCxsZWZ0UHg6MCxyaWdodFB4OjR9O2Z1bmN0aW9uIFAoZSl7aWYoMD09PWUuc2VyaWVzLmxlbmd0aClyZXR1cm4gbnVsbDtjb25zdCB0PWUuc2VyaWVzWzBdLGk9dC52YWx1ZT8/dC5jbG9zZSxzPWUuc2VyaWVzW2Uuc2VyaWVzLmxlbmd0aC0xXSxyPXMudmFsdWU/P3MuY2xvc2U7cmV0dXJue2ZpcnN0Ont2YWx1ZTppLHRpbWU6dC50aW1lfSxsYXN0Ont2YWx1ZTpyLHRpbWU6cy50aW1lfX19Y2xhc3MgV3tjb25zdHJ1Y3RvcihlLHQsaSxzKXt0aGlzLl9zeW1ib2xDaGFuZ2VkPW5ldyBfLkRlbGVnYXRlLHRoaXMuX3Nlcmllc0NoYW5nZWQ9bmV3IF8uRGVsZWdhdGUsdGhpcy5fd2hpdGVzcGFjZXM9bnVsbCx0aGlzLl9zeW1ib2xSZXNvbHZlZD1uZXcgXy5EZWxlZ2F0ZSx0aGlzLl9vcmlnaW5hbFNjYWxlTW9kZT1udWxsLHRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyPW51bGwsdGhpcy5faXNEZXN0cm95ZWQ9bmV3IGMuV2F0Y2hlZFZhbHVlKCExKSx0aGlzLl9zdGF0dXM9bmV3IGMuV2F0Y2hlZFZhbHVlKDApLHRoaXMuX25vRGF0YT1uZXcgYy5XYXRjaGVkVmFsdWUobnVsbCksdGhpcy5fY2hhcnRUeXBlPW5ldyBjLldhdGNoZWRWYWx1ZShudWxsKSx0aGlzLl9kaXJlY3Rpb25CYXNlZENvbG9yPW5ldyBjLldhdGNoZWRWYWx1ZShudWxsKSx0aGlzLl9kYXRhTGVuZ3RoSW5mbz1udWxsLHRoaXMuX3Nlc3Npb25JZD1uZXcgYy5XYXRjaGVkVmFsdWUsdGhpcy5fYmFyQnVpbGRlckxvYWRlcj1udWxsLHRoaXMuX3N5bWJvbEluZm89bnVsbCx0aGlzLl9zeW1ib2xJbmZvV1Y9bmV3IGQuV2F0Y2hlZE9iamVjdChudWxsKSx0aGlzLl9zeW1ib2w9e3N5bWJvbDoiIn0sdGhpcy5fbWluQmFySW5kZXg9bnVsbCx0aGlzLl9tYXhCYXJJbmRleD1udWxsLHRoaXMuX2xhc3RWYWx1ZT1uZXcgYy5XYXRjaGVkVmFsdWUobnVsbCksdGhpcy5faXNWaXNpYmxlPW5ldyBjLldhdGNoZWRWYWx1ZSghMSksdGhpcy5faWQ9KDAsbS5yYW5kb21IYXNoKSgpLHRoaXMuX3RpbWVGcmFtZUludmFsaWRhdGVkPW5ldyBfLkRlbGVnYXRlLHRoaXMuX2ZpcnN0VmFsdWVDYWNoZT1udWxsLHRoaXMuX2ZpcnN0QmFyVGltZT1uZXcgYy5XYXRjaGVkVmFsdWUobnVsbCksdGhpcy5fbGVnZW5kTGFzdEJhckRhdGE9bnVsbCx0aGlzLl9oaXN0b3J5VXBkYXRlUmVjZWl2ZWQ9ITEsdGhpcy5fbWluaUNoYXJ0PWUsdGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zPXQsdGhpcy5fY3VycmVudFNlcmllc09wdGlvbnM9KDAsbi5kZWZhdWx0KSh7fSx0KSx0aGlzLl9vcHRpb25zPXMsdGhpcy5fc2VyaWVzPXRoaXMuX2NyZWF0ZVNlcmllcygpLHRoaXMuX2NoYXJ0VHlwZS5zZXRWYWx1ZSh0LmNoYXJ0VHlwZT8/bnVsbCksdGhpcy5fb3JpZ2luYWxWb2x1bWVPcHRpb25zPWksdGhpcy5fdm9sdW1lPXRoaXMuX2NyZWF0ZVZvbHVtZSgpLHRoaXMuX3RpbWVGcmFtZT1lLnRpbWVmcmFtZSgpLnNwYXduKCksdGhpcy5fdGltZUZyYW1lLnN1YnNjcmliZSh0aGlzLl91cGRhdGVTZXNzaW9uSWQuYmluZCh0aGlzKSksdGhpcy5fY3VycmVudGx5U2hvd25EYXRhRGVzY3JpcHRpb249bmV3IGQuV2F0Y2hlZE9iamVjdCh7dGltZWZyYW1lOnRoaXMuX3RpbWVGcmFtZS52YWx1ZSgpLHN5bWJvbDp0aGlzLnN5bWJvbCgpfSksdGhpcy5faXNMYXN0U2Vzc2lvbkludGVydmFsPSgwLHAuY29tYmluZSkoKGU9PiJMQVNUU0VTU0lPTiI9PT0oMCxnLmNvbnZlcnRUaW1lRnJhbWVUb1N0cikoZSkpLHRoaXMuX21pbmlDaGFydC50aW1lZnJhbWUoKS53ZWFrUmVmZXJlbmNlKCkpLAp0aGlzLl9pc0xhc3RTZXNzaW9uSW50ZXJ2YWwuc3Vic2NyaWJlKHRoaXMuX3VwZGF0ZVNlc3Npb25JZC5iaW5kKHRoaXMpKSx0aGlzLl9taW5pQ2hhcnQudGltZVNjYWxlU2l6ZUNoYW5nZWQoKS5zdWJzY3JpYmUobnVsbCx0aGlzLl90aW1lU2NhbGVTaXplQ2hhbmdlZC5iaW5kKHRoaXMpKSx0aGlzLl9zdGF0dXMuc3Vic2NyaWJlKChlPT57MyE9PWUmJih0aGlzLl9sYXN0VmFsdWUuc2V0VmFsdWUobnVsbCksdGhpcy5fb25MYXN0QmFyRGF0YU1heUNoYW5nZSgpKX0pKX1kZXN0cm95KCl7dGhpcy5fc3RhdHVzLnVuc3Vic2NyaWJlKCksdGhpcy5fdGltZUZyYW1lLmRlc3Ryb3koKSx0aGlzLl9pc0Rlc3Ryb3llZC5zZXRWYWx1ZSghMCksdGhpcy5faXNMYXN0U2Vzc2lvbkludGVydmFsLmRlc3Ryb3koKSx0aGlzLl9iYXJCdWlsZGVyTG9hZGVyPy5kZXN0cm95KCl9aWQoKXtyZXR1cm4gdGhpcy5faWR9c3RhdHVzKCl7cmV0dXJuIHRoaXMuX3N0YXR1cy5yZWFkb25seSgpfW5vRGF0YSgpe3JldHVybiB0aGlzLl9ub0RhdGEucmVhZG9ubHkoKX1jaGFydFR5cGUoKXtyZXR1cm4gdGhpcy5fY2hhcnRUeXBlLnJlYWRvbmx5KCl9c3ltYm9sSW5mbygpe3JldHVybiB0aGlzLl9zeW1ib2xJbmZvfXN5bWJvbEluZm9XVigpe3JldHVybiB0aGlzLl9zeW1ib2xJbmZvV1YucmVhZG9ubHkoKX1zeW1ib2woKXtyZXR1cm4gdGhpcy5fc3ltYm9sLnN5bWJvbH1zdWJTZXNzaW9uKCl7cmV0dXJuIHRoaXMuX3Nlc3Npb25JZC52YWx1ZSgpfXNldFN5bWJvbChlLHQpe3JldHVybigwLGEuZGVmYXVsdCkoZSkmJihlPSgwLGIuaXNFbmNvZGVkRXh0ZW5kZWRTeW1ib2wpKGUpPygwLGIuZGVjb2RlRXh0ZW5kZWRTeW1ib2wpKGUpOnsuLi50aGlzLl9zeW1ib2wsc3ltYm9sOmV9KSx2b2lkIDAhPT10JiZ0aGlzLl91cGRhdGVTZXJpZXNPcHRpb25zKHQpLCEoMCxiLmNvbXBhcmVTeW1ib2xzKSh0aGlzLl9zeW1ib2wsZSkmJih0aGlzLl9zeW1ib2w9ZSx0aGlzLl91cGRhdGVTZXNzaW9uSWQoKSx0aGlzLl9zeW1ib2xDaGFuZ2VkLmZpcmUoKSwhMCl9ZXh0ZW5kZWRTeW1ib2woKXtyZXR1cm57Li4udGhpcy5fc3ltYm9sLHNlc3Npb246dGhpcy5fc2Vzc2lvbklkLnZhbHVlKCl9fXF1b3Rlc1N5bWJvbCgpe3JldHVybnsuLi50aGlzLmV4dGVuZGVkU3ltYm9sKCksbWV0cmljOnZvaWQgMH19dXBkYXRlU2VyaWVzT3B0aW9ucyhlKXtsZXQgdD0hMTt2b2lkIDAhPT1lLmNoYXJ0VHlwZSYmdGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLmNoYXJ0VHlwZSE9PWUuY2hhcnRUeXBlP3Q9ITA6ImxpbmUiIT09dGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLmNoYXJ0VHlwZSYmImFyZWEiIT09dGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLmNoYXJ0VHlwZXx8KHQ9InBvc3RtYXJrZXRMaW5lQ29sb3IiaW4gZSYmdGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLnBvc3RtYXJrZXRMaW5lQ29sb3IhPT1lLnBvc3RtYXJrZXRMaW5lQ29sb3J8fCJwcmVtYXJrZXRMaW5lQ29sb3IiaW4gZSYmdGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLnByZW1hcmtldExpbmVDb2xvciE9PWUucHJlbWFya2V0TGluZUNvbG9yfHwibmlnaHRMaW5lQ29sb3IiaW4gZSYmdGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLm5pZ2h0TGluZUNvbG9yIT09ZS5uaWdodExpbmVDb2xvciksdGhpcy5fdXBkYXRlU2VyaWVzT3B0aW9ucyhlKSx0P3RoaXMuX29uQ2hhcnRTdHlsZUNoYW5nZWQoKTp0aGlzLl9zZXJpZXMuYXBwbHlPcHRpb25zKGUpfWFwcGx5T3B0aW9ucyhlKXsoMCxuLmRlZmF1bHQpKHRoaXMuX29wdGlvbnMsZSl9c3ltYm9sUmVzb2x2ZWQoKXtyZXR1cm4gdGhpcy5fc3ltYm9sUmVzb2x2ZWR9c3ltYm9sQ2hhbmdlZCgpe3JldHVybiB0aGlzLl9zeW1ib2xDaGFuZ2VkfXNlcmllc0NoYW5nZWQoKXtyZXR1cm4gdGhpcy5fc2VyaWVzQ2hhbmdlZH10aW1lRnJhbWVJbnZhbGlkYXRlZCgpe3JldHVybiB0aGlzLl90aW1lRnJhbWVJbnZhbGlkYXRlZH1yZXN0b3JlT3JpZ2luYWxTY2FsZU1vZGUoKXtudWxsIT09dGhpcy5fb3JpZ2luYWxTY2FsZU1vZGUmJnRoaXMuX3Nlcmllcy5wcmljZVNjYWxlKCkuYXBwbHlPcHRpb25zKHttb2RlOnRoaXMuX29yaWdpbmFsU2NhbGVNb2RlfSl9c3dpdGNoVG9QZXJjZW50YWdlU2NhbGVNb2RlKCl7bnVsbD09PXRoaXMuX29yaWdpbmFsU2NhbGVNb2RlJiYodGhpcy5fb3JpZ2luYWxTY2FsZU1vZGU9dGhpcy5fc2VyaWVzLnByaWNlU2NhbGUoKS5vcHRpb25zKCkubW9kZSksdGhpcy5fc2VyaWVzLnByaWNlU2NhbGUoKS5hcHBseU9wdGlvbnMoe21vZGU6ci5QcmljZVNjYWxlTW9kZS5QZXJjZW50YWdlfSl9Y2hhcnRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuX21pbmlDaGFydC5jaGFydFNlc3Npb24oKX1jdXJyZW50U2VyaWVzT3B0aW9ucygpe3JldHVybiB0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9uc312b2x1bWVPcHRpb25zKCl7cmV0dXJuIHRoaXMuX29yaWdpbmFsVm9sdW1lT3B0aW9uc31zZXJpZXMoKXtyZXR1cm4gdGhpcy5fc2VyaWVzfXZvbHVtZSgpe3JldHVybiB0aGlzLl9vcmlnaW5hbFZvbHVtZU9wdGlvbnMudmlzaWJsZT90aGlzLl92b2x1bWU6bnVsbH11cGRhdGVEYXRhKGUsdCxpKXtlJiZ0aGlzLmNsZWFyU291cmNlRGF0YSgpO2NvbnN0IHM9dGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLHI9dGhpcy5fYnVpbGRWaWV3RGF0YShpKSxuPXIuc2VyaWVzLmxlbmd0aDt0aGlzLl9oaXN0b3J5VXBkYXRlUmVjZWl2ZWQ9dGhpcy5faGlzdG9yeVVwZGF0ZVJlY2VpdmVkfHx2b2lkIDA9PT1pLHZvaWQgMCE9PWl8fCJhcmVhIiE9PXMuY2hhcnRUeXBlJiYibGluZSIhPT1zLmNoYXJ0VHlwZXx8KHRoaXMuX2ZpcnN0VmFsdWVDYWNoZT1yLnNlcmllc1swXT8udmFsdWU/P251bGwpO2NvbnN0IGE9dGhpcy5faGlzdG9yeVVwZGF0ZVJlY2VpdmVkJiZudWxsPT09dGhpcy5fZGF0YUxlbmd0aEluZm87aWYodm9pZCAwIT09aSYmIWEpe2NvbnN0IGU9dGhpcy5fZGF0YUxlbmd0aEluZm87aWYobnVsbD09PWUpcmV0dXJuO2NvbnN0IHQ9ey4uLmV9O2UubGFzdEJhclNlc3Npb249ci5sYXN0QmFyU2Vzc2lvbjtsZXQgaT1udWxsCjtmb3IoY29uc3QgdCBvZiByLnNlcmllcyl0aGlzLl9zZXJpZXMudXBkYXRlKHQpLChudWxsPT09ZS5sYXN0QmFyVGltZXx8ZS5sYXN0QmFyVGltZTx0LnRpbWUpJiYoaT10LnRpbWUsZS5sYXN0QmFyVGltZT1pLGUucmVhbHRpbWUrPTEsZS5sYXN0QmFySW5kZXg9KGUubGFzdEJhckluZGV4Pz8tMSkrMSk7aWYoci5hZGRpdGlvbmFsU2VyaWVzJiZ0aGlzLl91cGRhdGVBZGRpdGlvbmFsU2VyaWVzRGF0YShyLmFkZGl0aW9uYWxTZXJpZXMpLHIudm9sdW1lKWZvcihjb25zdCBlIG9mIHIudm9sdW1lKXRoaXMuX3ZvbHVtZS51cGRhdGUoZSk7aWYodm9pZCAwIT09dGhpcy5fd2hpdGVzcGFjZXNEYXRhJiZudWxsIT09aSl7Y29uc3QgdD10aGlzLl93aGl0ZXNwYWNlc0RhdGEuZmluZEluZGV4KChlPT5lLnRpbWU+aSkpOy0xPT09dD8oZS53aGl0ZXNwYWNlcz0wLHRoaXMuX3VwZGF0ZVdoaXRlc3BhY2VzKFtdKSk6MCE9PXQmJihlLndoaXRlc3BhY2VzLT10LHRoaXMuX3VwZGF0ZVdoaXRlc3BhY2VzKHRoaXMuX3doaXRlc3BhY2VzRGF0YS5zbGljZSh0KSkpfW51bGwhPT1pJiYodm9pZCAwIT09ZS5maXhMZWZ0RWRnZVVudGlsPyh0aGlzLl9pc01haW5QbG90KCkmJmUuZml4TGVmdEVkZ2VVbnRpbD49aSYmdGhpcy5fbWluaUNoYXJ0LmZpdENvbnRlbnQoKSxpPmUuZml4TGVmdEVkZ2VVbnRpbCYmKGUuaGlzdG9yeSs9ZS5yZWFsdGltZS0xLGUucmVhbHRpbWU9MCxlLmZpeExlZnRFZGdlVW50aWw9dm9pZCAwLGUudGltZUZyYW1lSW52YWxpZGF0ZWQ9ITAsdGhpcy5fdGltZUZyYW1lSW52YWxpZGF0ZWQuZmlyZSgpKSk6ZS50aW1lRnJhbWVJbnZhbGlkYXRlZHx8KGUudGltZUZyYW1lSW52YWxpZGF0ZWQ9ITAsdGhpcy5fdGltZUZyYW1lSW52YWxpZGF0ZWQuZmlyZSgpKSksdGhpcy5fdXBkYXRlU2VyaWVzQ29sb3Ioci5zZXJpZXNbci5zZXJpZXMubGVuZ3RoLTFdKSx0aGlzLl9kYXRhVXBkYXRlZChyLGUsdCk7Y29uc3Qgcz1QKHIpO3JldHVybiB2b2lkKG51bGwhPT1zJiYodGhpcy5fbGFzdFZhbHVlLnNldFZhbHVlKHMubGFzdC52YWx1ZSksdGhpcy5fb25MYXN0QmFyRGF0YU1heUNoYW5nZSgpKSl9Y29uc3Qgbz1yLndoaXRlc3BhY2VzLGw9bz8ubGVuZ3RoPz8wO3RoaXMuX2RhdGFMZW5ndGhJbmZvPXtoaXN0b3J5Om4scmVhbHRpbWU6MCxsYXN0QmFySW5kZXg6MD09PW4/bnVsbDpuLTEsbGFzdEJhclRpbWU6MD09PW4/bnVsbDpyLnNlcmllc1tuLTFdLnRpbWUsd2hpdGVzcGFjZXM6bCxmaXhMZWZ0RWRnZVVudGlsOnIuZml4TGVmdEVkZ2VVbnRpbCx0aW1lRnJhbWVJbnZhbGlkYXRlZDohMSxsYXN0QmFyU2Vzc2lvbjpyLmxhc3RCYXJTZXNzaW9ufSx0aGlzLl91cGRhdGVTZXJpZXNDb2xvcigwPT09bj92b2lkIDA6ci5zZXJpZXNbbi0xXSksdGhpcy5fc2VyaWVzLmFwcGx5T3B0aW9ucyh0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucyksdGhpcy5fYXBwbHlQcmljZVNjYWxlRm9ybWF0dGVyKCksdHx8dGhpcy5fYmVmb3JlRGF0YVJlYWR5KCksdGhpcy5fc2VyaWVzLnNldERhdGEoci5zZXJpZXMpLHIuYWRkaXRpb25hbFNlcmllcyYmdGhpcy5fc2V0QWRkaXRpb25hbFNlcmllc0RhdGEoci5hZGRpdGlvbmFsU2VyaWVzKSxyLnZvbHVtZSYmdGhpcy5fdm9sdW1lLnNldERhdGEoci52b2x1bWUpLHRoaXMuX3VwZGF0ZVdoaXRlc3BhY2VzKHIud2hpdGVzcGFjZXMpLHRoaXMuX2RhdGFVcGRhdGVkKHIsdGhpcy5fZGF0YUxlbmd0aEluZm8pO2NvbnN0IHU9UChyKTtpZihudWxsIT09dSl7Y29uc3R7Zmlyc3Q6ZSxsYXN0OnR9PXU7dGhpcy5fbGFzdFZhbHVlLnNldFZhbHVlKHQudmFsdWUpLHRoaXMuX2ZpcnN0QmFyVGltZS5zZXRWYWx1ZShlLnRpbWUpLHRoaXMuX29uTGFzdEJhckRhdGFNYXlDaGFuZ2UoKX19dGl0bGVzKCl7cmV0dXJuIHRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zLnRpdGxlP1t0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy50aXRsZV06W119ZGVsZXRlVmlldygpe3RoaXMuX3Nlcmllcy5zZXREYXRhKFtdKSx0aGlzLl93aGl0ZXNwYWNlcz8uc2V0RGF0YShbXSksdGhpcy5fdm9sdW1lLnNldERhdGEoW10pfWNsZWFyRGF0YSgpe3RoaXMuX3N5bWJvbEluZm89bnVsbCx0aGlzLl9zeW1ib2xJbmZvV1Yuc2V0VmFsdWUobnVsbCksdGhpcy5faGlzdG9yeVVwZGF0ZVJlY2VpdmVkPSExLHRoaXMuX2RhdGFMZW5ndGhJbmZvPW51bGwsdGhpcy5fZmlyc3RWYWx1ZUNhY2hlPW51bGwsdGhpcy5fY3VzdG9tUHJpY2VGb3JtYXR0ZXI9bnVsbCx0aGlzLl9zdGF0dXMuc2V0VmFsdWUoMCksdGhpcy5fbm9EYXRhLnNldFZhbHVlKG51bGwpLHRoaXMuX2RpcmVjdGlvbkJhc2VkQ29sb3Iuc2V0VmFsdWUobnVsbCl9cmVzb2x1dGlvbigpe3JldHVybiB0aGlzLl9taW5pQ2hhcnQucmVzb2x1dGlvbigpfW1pbkJhckluZGV4KCl7cmV0dXJuIHRoaXMuX21pbkJhckluZGV4fW1heEJhckluZGV4KCl7cmV0dXJuIHRoaXMuX21heEJhckluZGV4fWZvcmNlUGVyY2VudGFnZU1vZGUoKXtyZXR1cm4hMX1sYXN0QmFyVGltZSgpe3JldHVybiB0aGlzLl9kYXRhTGVuZ3RoSW5mbz8ubGFzdEJhclRpbWU/P3ZvaWQgMH1sYXN0QmFySW5kZXgoKXtyZXR1cm4gdGhpcy5fZGF0YUxlbmd0aEluZm8/Lmxhc3RCYXJJbmRleD8/bnVsbH1nZXRWaWV3RGF0YShlKXtyZXR1cm4gdGhpcy5fYnVpbGRWaWV3RGF0YShlKX1nZXRMZWdlbmREYXRhKGUsdCl7Y29uc3Qgcz10aGlzLnNlcmllcygpLHI9dGhpcy52b2x1bWUoKTtpZih2b2lkIDA9PT1lKXJldHVybltdO2NvbnN0IG49cy5kYXRhQnlJbmRleChlLHQpO2lmKG51bGw9PT1uKXJldHVybltdO2NvbnN0IGE9W10sbz1zLnByaWNlRm9ybWF0dGVyKCksbD10aGlzLmN1cnJlbnRTZXJpZXNPcHRpb25zKCk7aWYoITE9PT1sLnZpc2libGUpcmV0dXJuW107aWYoIkFyZWEiPT09cy5zZXJpZXNUeXBlKCl8fCJMaW5lIj09PXMuc2VyaWVzVHlwZSgpfHwiQmFzZWxpbmUiPT09cy5zZXJpZXNUeXBlKCl8fCJsZWdlbmQiPT09bC50b29sdGlwVHlwZXx8ImxpbmUiPT09bC50b29sdGlwVHlwZSl7Y29uc3R7dmFsdWU6ZX09bjtsZXQgdAo7dD0iYXJlYSI9PT1sLmNoYXJ0VHlwZT9uLmxpbmVDb2xvcjpuLmNvbG9yO2NvbnN0IGk9dGhpcy5zeW1ib2xJbmZvKCkscz1sLmNvbG9yfHxsLmxpbmVDb2xvcjthLnB1c2goe3RpdGxlOmwudG9vbHRpcFRpdGxlfHxpPy5uYW1lfHwiIix2YWx1ZTpvLmZvcm1hdChlKSxjb2xvcjp0fHxzLHVuaXQ6bC5zaG93VW5pdD8oMCx3LnByZXBhcmVDdXJyZW5jeVZhbHVlKSh7Y3VycmVuY3lfY29kZTppPy5jdXJyZW5jeV9jb2RlLHVuaXRfaWQ6aT8udW5pdF9pZCx2YWx1ZV91bml0X2lkOmk/LnZhbHVlX3VuaXRfaWQsbWVhc3VyZTppPy5tZWFzdXJlfSk6dm9pZCAwfSl9ZWxzZXtjb25zdHtvcGVuOmUsaGlnaDp0LGxvdzpyLGNsb3NlOmx9PW4sdT1mdW5jdGlvbihlLHQpe2lmKG51bGw9PT10KXJldHVybjtjb25zdCBpPWU/dC51cDp0LmRvd247cmV0dXJuIEUoaSl9KGw+PWUsdGhpcy5fbWluaUNoYXJ0LnVwRG93bkNvbG9ycyhzLnNlcmllc1R5cGUoKSkpO1tbeS50KG51bGwse2NvbnRleHQ6ImluX2xlZ2VuZCJ9LGkoOTYwNTEzKSksby5mb3JtYXQoZSldLFt5LnQobnVsbCx7Y29udGV4dDoiaW5fbGVnZW5kIn0saSg5NTQ2MTQpKSxvLmZvcm1hdCh0KV0sW3kudChudWxsLHtjb250ZXh0OiJpbl9sZWdlbmQifSxpKDgzOTQ2MykpLG8uZm9ybWF0KHIpXSxbeS50KG51bGwse2NvbnRleHQ6ImluX2xlZ2VuZCJ9LGkoMjI5OTk0KSksby5mb3JtYXQobCldXS5mb3JFYWNoKCgoW2UsdF0pPT57YS5wdXNoKHt2YWx1ZTp0LHRpdGxlOmUsY29sb3I6dX0pfSkpfWNvbnN0IHU9ciYmci5kYXRhQnlJbmRleChlLHQpLGg9dGhpcy52b2x1bWVPcHRpb25zKCk7aWYodSl7Y29uc3R7dmFsdWU6ZSxjb2xvcjp0fT11O2EucHVzaCh7dGl0bGU6aC50b29sdGlwVGl0bGU/P3kudChudWxsLHtjb250ZXh0OiJpbl9sZWdlbmQifSxpKDU2NTMyMSkpLHZhbHVlOk8uZm9ybWF0KGUpLGNvbG9yOmguaWdub3JlQ29sb3I/dm9pZCAwOnQmJigwLFYucmVzZXRUcmFuc3BhcmVuY3kpKHQpLHVuaXQ6aC5zaG93VW5pdD90aGlzLnN5bWJvbEluZm8oKT8uY3VycmVuY3lfY29kZTp2b2lkIDB9KX1yZXR1cm4gYX1sZWdlbmRMYXN0QmFyRGF0YSgpe3JldHVybiB0aGlzLl9sZWdlbmRMYXN0QmFyRGF0YXx8KHRoaXMuX2xlZ2VuZExhc3RCYXJEYXRhPW5ldyBkLldhdGNoZWRPYmplY3QobnVsbCksdGhpcy5fb25MYXN0QmFyRGF0YU1heUNoYW5nZSgpKSx0aGlzLl9sZWdlbmRMYXN0QmFyRGF0YS5yZWFkb25seSgpfXNlc3Npb25BdFRpbWUoZSl7cmV0dXJuIHRoaXMuX2JhckJ1aWxkZXJMb2FkZXI/LmdldCgpPy5zZXNzaW9uKGUpPz9udWxsfWxhc3RWYWx1ZSgpe3JldHVybiB0aGlzLl9sYXN0VmFsdWUucmVhZG9ubHkoKX1maXJzdEJhclRpbWUoKXtyZXR1cm4gdGhpcy5fZmlyc3RCYXJUaW1lLnJlYWRvbmx5KCl9aXNWaXNpYmxlKCl7cmV0dXJuIHRoaXMuX2lzVmlzaWJsZS5yZWFkb25seSgpfXN5bWJvbE5hbWUoKXtyZXR1cm4gdGhpcy5fc3ltYm9sLnN5bWJvbH1saW5lQ29sb3IoKXtjb25zdCBlPXRoaXMuY3VycmVudFNlcmllc09wdGlvbnMoKTtyZXR1cm4ibGluZSI9PT1lLmNoYXJ0VHlwZT9lLmNvbG9yPz8iIjoiYXJlYSI9PT1lLmNoYXJ0VHlwZT9lLmxpbmVDb2xvcj8/IiI6dm9pZCgwLG8uYXNzZXJ0KSghMSxgVW5leHBlY3RlZCBjaGFydCB0eXBlOiAke2UuY2hhcnRUeXBlfWApfWlzRGVzdHJveWVkKCl7cmV0dXJuIHRoaXMuX2lzRGVzdHJveWVkLnJlYWRvbmx5KCl9X2hhc092ZXJuaWdodFNlc3Npb24oKXtyZXR1cm4hMX1faXNNYWluUGxvdCgpe3JldHVybiExfV9vbkNoYXJ0U3R5bGVDaGFuZ2VkKCl7dGhpcy5fcmVjcmVhdGVTZXJpZXMoKSwzPT09dGhpcy5fc3RhdHVzLnZhbHVlKCkmJnRoaXMudXBkYXRlRGF0YSghMSwhMCl9X2JlZm9yZURhdGFSZWFkeSgpe3RoaXMuX2N1cnJlbnRseVNob3duRGF0YURlc2NyaXB0aW9uLnNldFZhbHVlKHt0aW1lZnJhbWU6dGhpcy5fdGltZUZyYW1lLnZhbHVlKCksc3ltYm9sOnRoaXMuc3ltYm9sKCl9KX1fZGF0YVVwZGF0ZWQoZSx0LGkpe31fb25TeW1ib2xSZXNvbHZlZChlKXt0aGlzLl9iYXJCdWlsZGVyTG9hZGVyPy5kZXN0cm95KCksdGhpcy5fYmFyQnVpbGRlckxvYWRlcj1udWxsLHRoaXMuX3N5bWJvbEluZm89ZSx0aGlzLl9zeW1ib2xJbmZvV1Yuc2V0VmFsdWUoZSksdGhpcy5fc3ltYm9sUmVzb2x2ZWQuZmlyZSh0aGlzLl9zeW1ib2xJbmZvKX1fZ2V0Vmlld0RhdGEoZSx0KXtjb25zdCBpPVtdLHM9e3NlcmllczpbXSx2b2x1bWU6aX07bGV0IHI9LTEvMDtjb25zdCBuPXRoaXMuX2JhcnMoKTtpZihuLmlzRW1wdHkoKSlyZXR1cm4gcztjb25zdCBhPXRoaXMubWluQmFySW5kZXgoKSxvPXRoaXMubWF4QmFySW5kZXgoKTtpZihudWxsPT09YXx8bnVsbD09PW8pcmV0dXJuIHM7Y29uc3QgbD10Pz8oeChhKT9hOm4uZmlyc3RJbmRleCgpKSx1PW4ubGFzdEluZGV4KCk7aWYobnVsbD09PWx8fG51bGw9PT11KXJldHVybiBzO2xldCBoO2NvbnN0e3ByZW1hcmtldExpbmVDb2xvcjpjLHBvc3RtYXJrZXRMaW5lQ29sb3I6ZCxuaWdodExpbmVDb2xvcjpwLHByZW1hcmtldFRvcENvbG9yOm0scHJlbWFya2V0Qm90dG9tQ29sb3I6Xyxwb3N0bWFya2V0VG9wQ29sb3I6eSxwb3N0bWFya2V0Qm90dG9tQ29sb3I6UyxuaWdodFRvcENvbG9yOnYsbmlnaHRCb3R0b21Db2xvcjpifT10aGlzLl9nZXRQcmVQb3N0TWFya2V0Q29sb3JzKCksQz1lPT57c3dpdGNoKGUpe2Nhc2UgMDpyZXR1cm5bYyxtLF9dO2Nhc2UgMTpyZXR1cm5bZCx5LFNdO2Nhc2UgMzpyZXR1cm5bcCx2LGJdO2RlZmF1bHQ6cmV0dXJuW119fTtmb3IoY29uc3QgdCBvZiBuLnJhbmdlSXRlcmF0b3IobCx1KSl7Y29uc3R7dmFsdWU6bixpbmRleDphfT10O2lmKGE8PWYuVU5QTE9UVEFCTEVfVElNRV9QT0lOVF9JTkRFWCljb250aW51ZTtjb25zdCBvPXRoaXMuX21pbmlDaGFydC5pbmRleFRvVGltZShhKTtpZihudWxsPT09byl7RC5sb2dXYXJuKGBDb3VsZG4ndCBmaW5kIHRpbWUgZm9yIGluZGV4ICR7YX1gKTtjb250aW51ZX1jb25zdCBsPSF0aGlzLl9taW5pQ2hhcnQuaXNEV01SZXNvbHV0aW9uKCk/QigxZTMqbyk6bwo7aWYobDw9ciljb250aW51ZTtyPWwsaD1sO2NvbnN0IHU9dGhpcy5fYmFySW5kZXhTZXNzaW9uKGEpO3MubGFzdEJhclNlc3Npb249dSxzLnNlcmllcy5wdXNoKGUobCxuLC4uLkModSkpKTtjb25zdCBjPW5bNF0+PW5bMV0/dGhpcy5fb3JpZ2luYWxWb2x1bWVPcHRpb25zLnVwQ29sb3I6dGhpcy5fb3JpZ2luYWxWb2x1bWVPcHRpb25zLmRvd25Db2xvcjtpLnB1c2goe3RpbWU6bCx2YWx1ZTpuWzVdLGNvbG9yOmN9KX1pZih0aGlzLl9pc01haW5QbG90KCkmJnZvaWQgMD09PXQmJnZvaWQgMCE9PWgpc3dpdGNoKCgwLGcuY29udmVydFRpbWVGcmFtZVRvU3RyKSh0aGlzLl90aW1lRnJhbWUudmFsdWUoKSkpe2Nhc2UiMUQiOnMuZml4TGVmdEVkZ2VVbnRpbD1oKzg2NDAwLTE7YnJlYWs7Y2FzZSJMQVNUU0VTU0lPTiI6e2xldCBlPVtdLHQ9aCs4Nzg0MC0xO2NvbnN0IGk9dGhpcy5fZ2VuZXJhdGVCYXJzVG9TZXNzaW9uRW5kKCk7aT8ubGVuZ3RoJiZudWxsIT09byYmbz51JiYoZT1pLHQ9aVtpLmxlbmd0aC0xXS50aW1lKSxzLmZpeExlZnRFZGdlVW50aWw9dCxzLndoaXRlc3BhY2VzPWV9fXJldHVybiBzfV9idWlsZFZpZXdEYXRhKGUpe3N3aXRjaCh0aGlzLl9vcmlnaW5hbFNlcmllc09wdGlvbnMuY2hhcnRUeXBlKXtjYXNlInByZXR0eS1oaXN0b2dyYW0iOmNhc2UiaGlzdG9ncmFtIjp7Y29uc3QgdD10aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucztyZXR1cm4gdGhpcy5fZ2V0Vmlld0RhdGEoKChlLGkpPT5mdW5jdGlvbihlLHQsaSxzKXtjb25zdCByPXRbNF07cmV0dXJue3RpbWU6ZSxjb2xvcjpyPjA/aTpzLHZhbHVlOnJ9fShlLGksdC51cENvbG9yLHQuZG93bkNvbG9yKSksZSl9Y2FzZSJsaW5lIjp7Y29uc3QgdD10aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucztyZXR1cm4gdGhpcy5fZ2V0Vmlld0RhdGEoay5iaW5kKG51bGwsdC5zb3VyY2VQbG90SW5kZXg/PzQpLGUpfWNhc2UiYXJlYSI6Y2FzZSJiYXNlbGluZSI6cmV0dXJuIHRoaXMuX2dldFZpZXdEYXRhKEwsZSk7Y2FzZSJiYXJzIjpjYXNlImNhbmRsZXN0aWNrcyI6cmV0dXJuIHRoaXMuX2dldFZpZXdEYXRhKE0sZSl9fV9zZXRBZGRpdGlvbmFsU2VyaWVzRGF0YShlKXt9X3VwZGF0ZUFkZGl0aW9uYWxTZXJpZXNEYXRhKGUpe31fYmFySW5kZXhTZXNzaW9uKGUpe31fb25TeW1ib2xFcnJvcihlKXtELmxvZ1dhcm4oKDAsdi5lbmNvZGVFeHRlbmRlZFN5bWJvbE9yR2V0U2ltcGxlU3ltYm9sU3RyaW5nKSh0aGlzLl9zeW1ib2wpKyIgc3ltYm9sIHJlc29sdmluZyBlcnJvcjogIitlKSx0aGlzLnVwZGF0ZURhdGEoITApLHRoaXMuX3N0YXR1cy5zZXRWYWx1ZSgxKX1fb25TeW1ib2xOb3RQZXJtaXR0ZWQoKXt0aGlzLl9ub0RhdGEuc2V0VmFsdWUoMSl9X29uSW50cmFkYXlTcHJlYWROb3RQZXJtaXR0ZWQoKXt0aGlzLl9zdGF0dXMuc2V0VmFsdWUoMiksdGhpcy5fbm9EYXRhLnNldFZhbHVlKDQpLHRoaXMuX2lzTWFpblBsb3QoKSYmdGhpcy5fbWluaUNoYXJ0LnNob3dNZXNzYWdlKHkudChudWxsLHtjb250ZXh0OiJtaW5pIGNoYXJ0IGVycm9yIG1lc3NhZ2UifSxpKDgyOTI3MykpKX1fb25TeW1ib2xHcm91cE5vdFBlcm1pdHRlZCgpe3RoaXMuX25vRGF0YS5zZXRWYWx1ZSgxKX1fb25TeW1ib2xJbnZhbGlkKCl7dGhpcy5fbm9EYXRhLnNldFZhbHVlKDApfV9vblJlc29sdXRpb25PckV4Y2hhbmdlTm90UGVybWl0dGVkRXJyb3IoKXtELmxvZ0Vycm9yKCgwLHYuZW5jb2RlRXh0ZW5kZWRTeW1ib2xPckdldFNpbXBsZVN5bWJvbFN0cmluZykodGhpcy5fc3ltYm9sKSsiIHJlc29sdXRpb24gb3IgZXhjaGFuZ2UgcGVybWlzc2lvbiBlcnJvciIpLHRoaXMudXBkYXRlRGF0YSghMCksdGhpcy5faXNNYWluUGxvdCgpJiZ0aGlzLl9taW5pQ2hhcnQuc2hvd01lc3NhZ2UoeS50KG51bGwse2NvbnRleHQ6Im1pbmkgY2hhcnQgZXJyb3IgbWVzc2FnZSJ9LGkoMjg1ODkzKSkpLHNldFRpbWVvdXQoKCgpPT50aGlzLl9taW5pQ2hhcnQudXBkYXRlQXZhaWxhYmxlVGltZWZyYW1lcygpKSwxZTMpfV9vbkRhdGFFcnJvcigpezEhPT10aGlzLl9zdGF0dXMudmFsdWUoKSYmdGhpcy5fc3RhdHVzLnNldFZhbHVlKDIpLHRoaXMuX25vRGF0YS5zZXRWYWx1ZSgzKX1fb25EYXRhQ29tcGxldGVkKCl7dGhpcy5fc3RhdHVzLnNldFZhbHVlKDMpLHRoaXMuX25vRGF0YS5zZXRWYWx1ZSgwPT09dGhpcy5fYmFycygpLnNpemUoKT8yOm51bGwpLDI9PT10aGlzLl9ub0RhdGEudmFsdWUoKSYmdGhpcy5faXNNYWluUGxvdCgpJiZ0aGlzLl9zaG93Tm9EYXRhTWVzc2FnZSgpfV9zaG93Tm9EYXRhTWVzc2FnZSgpe3RoaXMuX21pbmlDaGFydC5zaG93TWVzc2FnZSh5LnQobnVsbCx7Y29udGV4dDoibWluaSBjaGFydCBlcnJvciBtZXNzYWdlIn0saSgyOTkxNTMpKSl9YXN5bmMgX29uRGF0YShlLHQpe251bGwhPT10aGlzLm1pbkJhckluZGV4KCkmJm51bGwhPT10aGlzLm1heEJhckluZGV4KCkmJih0aGlzLnVwZGF0ZURhdGEoITEsdm9pZCAwLGUpLDM9PT10aGlzLl9zdGF0dXMudmFsdWUoKSYmdGhpcy5fbm9EYXRhLnNldFZhbHVlKDA9PT10aGlzLl9iYXJzKCkuc2l6ZSgpPzI6bnVsbCkpfV91cGRhdGVTZXJpZXNPcHRpb25zKGUpe3RoaXMuX29yaWdpbmFsU2VyaWVzT3B0aW9ucz0oMCxuLmRlZmF1bHQpKHRoaXMuX29yaWdpbmFsU2VyaWVzT3B0aW9ucyxlKSx0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucz0oMCxuLmRlZmF1bHQpKHRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zLHRoaXMuX29yaWdpbmFsU2VyaWVzT3B0aW9ucyksdGhpcy5fdXBkYXRlU2VyaWVzQ29sb3IoKSx2b2lkIDAhPT10aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy52aXNpYmxlJiZ0aGlzLl9pc1Zpc2libGUuc2V0VmFsdWUodGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMudmlzaWJsZSl9X3JlY3JlYXRlU2VyaWVzKCl7Y29uc3QgZT10aGlzLl9taW5pQ2hhcnQud2lkZ2V0KCk7ZS5yZW1vdmVTZXJpZXModGhpcy5fc2VyaWVzKSxlLnJlbW92ZVNlcmllcyh0aGlzLl92b2x1bWUpLHRoaXMuX3doaXRlc3BhY2VzJiYoZS5yZW1vdmVTZXJpZXModGhpcy5fd2hpdGVzcGFjZXMpLHRoaXMuX3doaXRlc3BhY2VzPW51bGwpLAp0aGlzLl9zZXJpZXM9dGhpcy5fY3JlYXRlU2VyaWVzKCksdGhpcy5fdm9sdW1lPXRoaXMuX2NyZWF0ZVZvbHVtZSgpLHRoaXMuX2NoYXJ0VHlwZS5zZXRWYWx1ZSh0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy5jaGFydFR5cGUpLHRoaXMuX3Nlcmllc0NoYW5nZWQuZmlyZSgpfV9pbml0QmFyQnVpbGRlcihlKXtyZXR1cm4gbnVsbD09PXRoaXMuX2JhckJ1aWxkZXJMb2FkZXImJih0aGlzLl9iYXJCdWlsZGVyTG9hZGVyPW5ldyBULkFzeW5jUmVzb3VyY2VXcmFwcGVyKFByb21pc2UuYWxsKFtpLmUoMTIxODEpLGkuZSg1NTk2OSksaS5lKDYzMTYwKSxpLmUoOTMyNzkpXSkudGhlbihpLmJpbmQoaSwxNjQ0NzUpKS50aGVuKCh0PT5uZXcgdC5NaW5pQ2hhcnRCYXJCdWlsZGVyKGUpKSkpKSx0aGlzLl9iYXJCdWlsZGVyTG9hZGVyLnByb21pc2UoKX1fZmlyc3RBbmRMYXN0VmFsdWVzRm9yU2VyaWVzQ29sb3IoZSx0KXtpZihudWxsPT09dGhpcy5fZmlyc3RWYWx1ZUNhY2hlfHwhdGhpcy5fZGF0YUxlbmd0aEluZm8pcmV0dXJuIG51bGw7aWYoImxpbmUiIT09ZSYmImFyZWEiIT09ZSlyZXR1cm4gbnVsbDtjb25zdCBpPW51bGw9PT10aGlzLl9kYXRhTGVuZ3RoSW5mby5sYXN0QmFySW5kZXg/bnVsbDp0aGlzLl9zZXJpZXMuZGF0YUJ5SW5kZXgodGhpcy5fZGF0YUxlbmd0aEluZm8ubGFzdEJhckluZGV4KTtyZXR1cm4gbnVsbCE9PWl8fHQ/KHQ9dD8/aSxbdGhpcy5fZmlyc3RWYWx1ZUNhY2hlLHQudmFsdWVdKTpudWxsfV91cGRhdGVTZXJpZXNDb2xvcihlKXtjb25zdCB0PXRoaXMuX29yaWdpbmFsU2VyaWVzT3B0aW9ucyxpPXQuY2hhcnRUeXBlLHM9dGhpcy5fZmlyc3RBbmRMYXN0VmFsdWVzRm9yU2VyaWVzQ29sb3IoaSxlKTtpZihudWxsPT09cylyZXR1cm47Y29uc3RbcixuXT1zO2lmKCJsaW5lIj09PWl8fCJhcmVhIj09PWkpe2NvbnN0IGU9ImxpbmUiPT09aT9uPj1yOm4+cjtpZigiYXJlYSI9PT1pKXtjb25zdCBpPXRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zO2U/KGkubGluZUNvbG9yPXQuZ3Jvd2luZ0xpbmVDb2xvcnx8dC5saW5lQ29sb3IsaS50b3BDb2xvcj10Lmdyb3dpbmdUb3BDb2xvcnx8dC50b3BDb2xvcixpLmJvdHRvbUNvbG9yPXQuZ3Jvd2luZ0JvdHRvbUNvbG9yfHx0LmJvdHRvbUNvbG9yKTooaS5saW5lQ29sb3I9dC5mYWxsaW5nTGluZUNvbG9yfHx0LmxpbmVDb2xvcixpLnRvcENvbG9yPXQuZmFsbGluZ1RvcENvbG9yfHx0LnRvcENvbG9yLGkuYm90dG9tQ29sb3I9dC5mYWxsaW5nQm90dG9tQ29sb3J8fHQuYm90dG9tQ29sb3IpLGkubGluZUNvbG9yfHwoaS5saW5lQ29sb3I9dGhpcy5fc2VyaWVzLm9wdGlvbnMoKS5saW5lQ29sb3IpLHRoaXMuX3Nlcmllcy5hcHBseU9wdGlvbnMoe3RvcENvbG9yOmkudG9wQ29sb3IsYm90dG9tQ29sb3I6aS5ib3R0b21Db2xvcixsaW5lQ29sb3I6aS5saW5lQ29sb3J9KSx0aGlzLl9kaXJlY3Rpb25CYXNlZENvbG9yLnNldFZhbHVlKGkubGluZUNvbG9yKX1lbHNlIGlmKCJsaW5lIj09PWkpe2NvbnN0e2NvbG9yOmksZ3Jvd2luZ0NvbG9yOnM9aSxmYWxsaW5nQ29sb3I6cj1pfT10LG49dGhpcy5fY3VycmVudFNlcmllc09wdGlvbnM7bi5jb2xvcj1lP3M6cixuLmNvbG9yfHwobi5jb2xvcj10aGlzLl9zZXJpZXMub3B0aW9ucygpLmNvbG9yKSx0aGlzLl9zZXJpZXMuYXBwbHlPcHRpb25zKHtjb2xvcjpuLmNvbG9yfSksdGhpcy5fZGlyZWN0aW9uQmFzZWRDb2xvci5zZXRWYWx1ZShuLmNvbG9yKX19fV9wcmljZUZvcm1hdCgpe2NvbnN0IGU9dGhpcy5fc3ltYm9sSW5mbz8/dGhpcy5fbWluaUNoYXJ0Lm1haW5QbG90KCkuc3ltYm9sSW5mbygpO3JldHVybiBudWxsPT09ZT9udWxsOmZ1bmN0aW9uKGUpe2NvbnN0IHQ9KDAsQy5jcmVhdGVTZXJpZXNGb3JtYXR0ZXIpKGUsImRlZmF1bHQiKTtyZXR1cm57dHlwZToiY3VzdG9tIixtaW5Nb3ZlOmUubWlubW92L2UucHJpY2VzY2FsZSxiYXNlOmUucHJpY2VzY2FsZS9lLm1pbm1vdixmb3JtYXR0ZXI6ZT0+dC5mb3JtYXQoZSl9fShlKX1fb25MYXN0QmFyRGF0YU1heUNoYW5nZSgpe2lmKCF0aGlzLl9sZWdlbmRMYXN0QmFyRGF0YSlyZXR1cm47Y29uc3QgZT10aGlzLl9taW5pQ2hhcnQubWFpblBsb3QoKS5sYXN0QmFySW5kZXgoKTtudWxsIT09ZT90aGlzLl9sZWdlbmRMYXN0QmFyRGF0YS5zZXRWYWx1ZSh0aGlzLmdldExlZ2VuZERhdGEoZSxyLk1pc21hdGNoRGlyZWN0aW9uLk5lYXJlc3RMZWZ0KSk6dGhpcy5fbGVnZW5kTGFzdEJhckRhdGEuc2V0VmFsdWUobnVsbCl9X2NyZWF0ZVNlcmllcygpe2NvbnN0IGU9dGhpcy5fbWluaUNoYXJ0LndpZGdldCgpO2xldCB0O3N3aXRjaCh0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy5jaGFydFR5cGUpe2Nhc2UibGluZSI6dD1lLmFkZFNlcmllcyhyLkxpbmVTZXJpZXMsdGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMpO2JyZWFrO2Nhc2UiaGlzdG9ncmFtIjp0PWUuYWRkU2VyaWVzKHIuSGlzdG9ncmFtU2VyaWVzLHRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zKTticmVhaztjYXNlImFyZWEiOnQ9ZS5hZGRTZXJpZXMoci5BcmVhU2VyaWVzLHRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zKTticmVhaztjYXNlImJhcnMiOnQ9ZS5hZGRTZXJpZXMoci5CYXJTZXJpZXMsdGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMpO2JyZWFrO2Nhc2UiY2FuZGxlc3RpY2tzIjp0PWUuYWRkU2VyaWVzKHIuQ2FuZGxlc3RpY2tTZXJpZXMsdGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMpO2JyZWFrO2Nhc2UiYmFzZWxpbmUiOnQ9ZS5hZGRTZXJpZXMoci5CYXNlbGluZVNlcmllcyx0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucyk7YnJlYWs7Y2FzZSJwcmV0dHktaGlzdG9ncmFtIjp7Y29uc3QgaT1uZXcgSS5QcmV0dHlIaXN0b2dyYW1TZXJpZXM7dD1lLmFkZEN1c3RvbVNlcmllcyhpLHRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zKX19cmV0dXJuIG51bGw9PT10aGlzLl9vcmlnaW5hbFNjYWxlTW9kZSYmKHRoaXMuX29yaWdpbmFsU2NhbGVNb2RlPXQucHJpY2VTY2FsZSgpLm9wdGlvbnMoKS5tb2RlKSx0aGlzLl9pc1Zpc2libGUuc2V0VmFsdWUodC5vcHRpb25zKCkudmlzaWJsZSksCnQucHJpY2VTY2FsZSgpLmFwcGx5T3B0aW9ucyh7c2NhbGVNYXJnaW5zOnRoaXMuX2N1cnJlbnRTZXJpZXNPcHRpb25zLnNjYWxlTWFyZ2luc30pLHR9X2NyZWF0ZVZvbHVtZSgpe2NvbnN0IGU9dGhpcy5fbWluaUNoYXJ0LndpZGdldCgpLmFkZFNlcmllcyhyLkhpc3RvZ3JhbVNlcmllcyx0aGlzLl9vcmlnaW5hbFZvbHVtZU9wdGlvbnMpO3JldHVybiBlLnByaWNlU2NhbGUoKS5hcHBseU9wdGlvbnMoe3NjYWxlTWFyZ2luczp0aGlzLl9vcmlnaW5hbFZvbHVtZU9wdGlvbnMuc2NhbGVNYXJnaW5zfSksZX1fYXBwbHlQcmljZVNjYWxlRm9ybWF0dGVyKCl7aWYoInByaWNlRm9ybWF0ImluIHRoaXMuX29yaWdpbmFsU2VyaWVzT3B0aW9ucylyZXR1cm47Y29uc3QgZT10aGlzLl9wcmljZUZvcm1hdCgpO2UmJih0aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucy5wcmljZUZvcm1hdD1lLHRoaXMuX3Nlcmllcy5hcHBseU9wdGlvbnModGhpcy5fY3VycmVudFNlcmllc09wdGlvbnMpKX1fdXBkYXRlU2Vzc2lvbklkKCl7dGhpcy5faXNMYXN0U2Vzc2lvbkludGVydmFsLnZhbHVlKCk/dGhpcy5fc2Vzc2lvbklkLnNldFZhbHVlKHRoaXMuX2hhc092ZXJuaWdodFNlc3Npb24oKT8iMjRoIjoiZXh0ZW5kZWQiKTp0aGlzLl9zZXNzaW9uSWQuc2V0VmFsdWUodGhpcy5fc3ltYm9sLnNlc3Npb24pfV91cGRhdGVXaGl0ZXNwYWNlcyhlKXt2b2lkIDA9PT1lfHwwPT09ZS5sZW5ndGg/bnVsbCE9PXRoaXMuX3doaXRlc3BhY2VzJiYodGhpcy5fbWluaUNoYXJ0LndpZGdldCgpLnJlbW92ZVNlcmllcyh0aGlzLl93aGl0ZXNwYWNlcyksdGhpcy5fd2hpdGVzcGFjZXM9bnVsbCk6KG51bGw9PT10aGlzLl93aGl0ZXNwYWNlcyYmKHRoaXMuX3doaXRlc3BhY2VzPXRoaXMuX21pbmlDaGFydC53aWRnZXQoKS5hZGRTZXJpZXMoci5MaW5lU2VyaWVzKSksdGhpcy5fd2hpdGVzcGFjZXNEYXRhPW51bGw9PT10aGlzLl93aGl0ZXNwYWNlcz92b2lkIDA6ZSx0aGlzLl93aGl0ZXNwYWNlcy5zZXREYXRhKGUpKX1fZ2VuZXJhdGVCYXJzVG9TZXNzaW9uRW5kKCl7Y29uc3QgZT10aGlzLnN5bWJvbEluZm8oKSx0PXRoaXMuX2JhcnMoKS5sYXN0SW5kZXgoKSxpPXRoaXMubWF4QmFySW5kZXgoKTtpZihlJiZ0JiZpJiZ0aGlzLl9pc0xhc3RTZXNzaW9uSW50ZXJ2YWwudmFsdWUoKSl7bGV0IGU9dGhpcy5fbWluaUNoYXJ0LmluZGV4VG9UaW1lKHQpO2lmKG51bGw9PT1lKXJldHVybjtjb25zdCBzPVtdO2ZvcihsZXQgcj10KzE7cjw9aTtyKz0xKXtjb25zdCB0PXRoaXMuX21pbmlDaGFydC5pbmRleFRvVGltZShyKT8/ZSs2MDtzLnB1c2goe3RpbWU6QigxZTMqdCl9KSxlPXR9cmV0dXJuIHN9fV9nZXRQcmVQb3N0TWFya2V0Q29sb3JzKCl7aWYoIXRoaXMuX2lzTWFpblBsb3QoKSlyZXR1cm57fTtsZXQgZSx0LGkscyxyLG47Y29uc3QgYT10aGlzLl9vcmlnaW5hbFNlcmllc09wdGlvbnMucHJlbWFya2V0TGluZUNvbG9yLG89dGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLnBvc3RtYXJrZXRMaW5lQ29sb3IsdT10aGlzLl9vcmlnaW5hbFNlcmllc09wdGlvbnMubmlnaHRMaW5lQ29sb3I7aWYoImFyZWEiPT09dGhpcy5fb3JpZ2luYWxTZXJpZXNPcHRpb25zLmNoYXJ0VHlwZSYmYSYmbyYmdSl7Y29uc3QgaD10aGlzLl9jdXJyZW50U2VyaWVzT3B0aW9ucyxjPWguZ3Jvd2luZ1RvcENvbG9yfHxoLmZhbGxpbmdUb3BDb2xvcnx8aC50b3BDb2xvcjtpZih2b2lkIDAhPT1jKXtjb25zdCB0PSgwLGwudHJ5UGFyc2VSZ2JhKShjKTtpZihudWxsIT09dCl7Y29uc3Qgcz10WzNdO2U9KDAsVi5hcHBseUFscGhhKShhLHMpLGk9KDAsVi5hcHBseUFscGhhKShvLHMpLHI9KDAsVi5hcHBseUFscGhhKSh1LHMpfX1jb25zdCBkPWguZ3Jvd2luZ0JvdHRvbUNvbG9yfHxoLmZhbGxpbmdCb3R0b21Db2xvcnx8aC5ib3R0b21Db2xvcjtpZih2b2lkIDAhPT1kKXtjb25zdCBlPSgwLGwudHJ5UGFyc2VSZ2JhKShkKTtpZihudWxsIT09ZSl7Y29uc3QgaT1lWzNdO3Q9KDAsVi5hcHBseUFscGhhKShhLGkpLHM9KDAsVi5hcHBseUFscGhhKShvLGkpLG49KDAsVi5hcHBseUFscGhhKSh1LGkpfX19cmV0dXJue3ByZW1hcmtldExpbmVDb2xvcjphLHBvc3RtYXJrZXRMaW5lQ29sb3I6byxuaWdodExpbmVDb2xvcjp1LHByZW1hcmtldFRvcENvbG9yOmUscG9zdG1hcmtldFRvcENvbG9yOmksbmlnaHRUb3BDb2xvcjpyLHByZW1hcmtldEJvdHRvbUNvbG9yOnQscG9zdG1hcmtldEJvdHRvbUNvbG9yOnMsbmlnaHRCb3R0b21Db2xvcjpufX1fdGltZVNjYWxlU2l6ZUNoYW5nZWQoKXt0aGlzLl9pc01haW5QbG90KCkmJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCgpPT50aGlzLl9taW5pQ2hhcnQuZml0Q29udGVudCgpKSl9fX0sMTM4NjM4KGUsdCxpKXtmdW5jdGlvbiBzKGUsdCl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBc3NlcnRpb24gZmFpbGVkIisodD9gOiAke3R9YDoiIikpfWZ1bmN0aW9uIHIoZSx0KXtpZih2b2lkIDA9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyB1bmRlZmluZWRgKTtyZXR1cm4gZX1mdW5jdGlvbiBuKGUsdCl7aWYobnVsbD09PWUpdGhyb3cgbmV3IEVycm9yKGAke3Q/PyJWYWx1ZSJ9IGlzIG51bGxgKTtyZXR1cm4gZX1mdW5jdGlvbiBhKGUsdCl7cmV0dXJuIG4ocihlLHQpLHQpfWkuZCh0LHthc3NlcnQ6KCk9PnMsZW5zdXJlOigpPT5hLGVuc3VyZURlZmluZWQ6KCk9PnIsZW5zdXJlTm90TnVsbDooKT0+bn0pfSw5NTI5MDAoZSx0LGkpe2kuZCh0LHtjb21iaW5lOigpPT5ufSk7dmFyIHM9aSgyMzIzNjQpO2Z1bmN0aW9uIHIoZSx0LC4uLmkpe2xldCByPW51bGw7Y29uc3Qgbj0oLi4udCk9PmUoLi4udC5tYXAoKGU9PmUudmFsdWUoKSkpLHI/LnZhbHVlKCkpLGE9cj1uZXcgcy5XYXRjaGVkVmFsdWUobiguLi5pKSksbz0oKT0+e2NvbnN0IGU9aS5tYXAoKChlLHQpPT5lLnZhbHVlKCkpKTt0KC4uLmUpJiZhLnNldFZhbHVlKG4oLi4uaSkpfSxsPWkubWFwKChlPT5lLnNwYXduKCkpKTtmb3IoY29uc3QgZSBvZiBsKWUuc3Vic2NyaWJlKG8pO3JldHVybiBhLnJlYWRvbmx5KCkuc3Bhd24oKCgpPT57CmwuZm9yRWFjaCgoZT0+ZS5kZXN0cm95KCkpKSxpLmZvckVhY2goKGU9PmUucmVsZWFzZSgpKSl9KSl9ZnVuY3Rpb24gbihlLC4uLnQpe3JldHVybiByKGUsKCgpPT4hMCksLi4udCl9fSwxMzEyOTQoZSx0LGkpe2Z1bmN0aW9uIHMoZSl7Y29uc3QgdD1lO3JldHVybiB0LnJlbGVhc2U9KCk9PnQuZGVzdHJveSgpLHQub3duZXJzaGlwPSgpPT50LHR9aS5kKHQse293bmVyc2hpcDooKT0+c30pfSw2MDE4NDEoZSx0LGkpe2kuZCh0LHtjbG9uZTooKT0+cixkZWVwRXF1YWxzOigpPT5sLGhhc1Byb3BlcnR5OigpPT5hLGlzQXJyYXk6KCk9PnUsaXNJbnRlZ2VyOigpPT5jLGlzTmFOOigpPT5oLGlzTnVtYmVyOigpPT5zLGlzT2JqZWN0OigpPT5uLGlzU3RyaW5nOigpPT5kLG5vdE51bGw6KCk9PnB9KTtuZXcgU2V0KFsiX19wcm90b19fIiwicHJvdG90eXBlIiwiY29uc3RydWN0b3IiXSk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGUmJmlzRmluaXRlKGUpfWZ1bmN0aW9uIHIoZSl7aWYoIWV8fCJvYmplY3QiIT10eXBlb2YgZSlyZXR1cm4gZTtsZXQgdDt0PUFycmF5LmlzQXJyYXkoZSk/W106e307Zm9yKGNvbnN0IGkgaW4gZSlpZihlLmhhc093blByb3BlcnR5KGkpKXtjb25zdCBzPWVbaV07dFtpXT1zJiYib2JqZWN0Ij09dHlwZW9mIHM/cihzKTpzfXJldHVybiB0fWZ1bmN0aW9uIG4oZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZX1mdW5jdGlvbiBhKGUsdCl7cmV0dXJuIHQgaW4gZX1mdW5jdGlvbiBvKGUpe3JldHVybiBudWxsIT1lJiYoZS5jb25zdHJ1Y3Rvcj09PUZ1bmN0aW9ufHwiW29iamVjdCBGdW5jdGlvbl0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKX1mdW5jdGlvbiBsKGUsdCxpPSIiKXtpZihlPT09dClyZXR1cm5bITAsaV07aWYobyhlKSYmKGU9dm9pZCAwKSxvKHQpJiYodD12b2lkIDApLG51bGw9PWV8fG51bGw9PXQpcmV0dXJuW2U9PT10LGldO2lmKCJvYmplY3QiIT10eXBlb2YgZSYmIm9iamVjdCIhPXR5cGVvZiB0KXJldHVybltlPT09dCxpXTtpZihBcnJheS5pc0FycmF5KGUpJiZBcnJheS5pc0FycmF5KHQpKXtjb25zdCBzPWUubGVuZ3RoO2lmKHMhPT10Lmxlbmd0aClyZXR1cm5bITEsaV07Zm9yKGxldCByPTA7cjxzO3IrKyl7Y29uc3Qgcz1sKGVbcl0sdFtyXSxpKyJbIityKyJdIik7aWYoIXNbMF0pcmV0dXJuIHN9cmV0dXJuWyEwLGldfWlmKEFycmF5LmlzQXJyYXkoZSl8fEFycmF5LmlzQXJyYXkodCkpcmV0dXJuWyExLGldO2lmKE9iamVjdC5rZXlzKGUpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHQpLmxlbmd0aClyZXR1cm5bITEsaV07Zm9yKGNvbnN0IHMgaW4gZSl7Y29uc3Qgcj1sKGVbc10sdFtzXSxpKyJbIitzKyJdIik7aWYoIXJbMF0pcmV0dXJuIHJ9cmV0dXJuWyEwLGldfWNvbnN0IHU9QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24oZSl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX07ZnVuY3Rpb24gaChlKXtyZXR1cm4hKGU8PTB8fGU+MCl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGUmJmUlMT09MH1mdW5jdGlvbiBkKGUpe3JldHVybiBudWxsIT1lJiZlLmNvbnN0cnVjdG9yPT09U3RyaW5nfWZ1bmN0aW9uIHAoZSl7cmV0dXJuIG51bGwhPT1lfU51bWJlci5pc05hTj1OdW1iZXIuaXNOYU58fGZ1bmN0aW9uKGUpe3JldHVybiBlIT1lfX0sODU2NTYoZSx0LGkpe2kuZCh0LHt1bnBhY2tOb25TZXJpZXNEYXRhQ29tcHJlc3NlZDooKT0+b30pO3ZhciBzPWkoNjAxODQxKSxyPWkoOTk1NjU1KSxuPWkoODY2NzQ4KSxhPWkoODQ4NjAxKTthc3luYyBmdW5jdGlvbiBvKGUpe2NvbnN0IHQ9KDAsYS5wYXJzZU5vblNlcmllc0VudmVsb3BlKShlKTtpZihudWxsPT09dClyZXR1cm4gbnVsbDtjb25zdHtuc0RhdGE6aSxwYXJzZWREYXRhOm99PXQ7cmV0dXJuIGkuaW5kZXhlc19yZXBsYWNlfHwoKDAscy5oYXNQcm9wZXJ0eSkobywiZGF0YUNvbXByZXNzZWQiKSYmKGkuZGF0YT1hd2FpdCgwLG4udW5wYWNrKShvLmRhdGFDb21wcmVzc2VkKSksKDAscy5oYXNQcm9wZXJ0eSkobywiZ3JhcGhpY3NDbWRzQ29tcHJlc3NlZCIpJiYoaS5ncmFwaGljc0NtZHM9KDAsci52YWxpZGF0ZUdyYXBoaWNzQ29tbWFuZHMpKGF3YWl0KDAsbi51bnBhY2spKG8uZ3JhcGhpY3NDbWRzQ29tcHJlc3NlZCkpKSksaX19LDExODA1NihlLHQsaSl7aS5kKHQse2ZyYW1lRWxlbWVudElkOigpPT5yfSk7Y29uc3Qgcz13aW5kb3cuaW5pdERhdGEuaGFzaFNldHRpbmdzfHx7fSxyPSJzdHJpbmciPT10eXBlb2Ygcy5mcmFtZUVsZW1lbnRJZD9zLmZyYW1lRWxlbWVudElkOm51bGx9LDc5ODM4KGUsdCxpKXtpKDU4MDM3KTt2YXIgcz1pKDcyODQzNikscj1pKDc3NzY2MSksbj1pKDU1MDM5Myk7bmV3IFNldChbMyw2LDcsOCw5LDExXSksbmV3IFNldChbMSwyXSk7Y29uc3QgYT1be3R5cGU6ci5zdHVkeVRwb1ByZXJpb2RpY0lkLGJhc2ljU3R1ZHlWZXJzaW9uOjEwNH0se3R5cGU6ci5zdHVkeVRwb1Nlc3Npb25zSWQsYmFzaWNTdHVkeVZlcnNpb246MTA0fV07cy5zdHVkeVZvbEZvb3RwcmludElkLG4uc3R1ZHlWYlBTZXNzaW9uc0lkfSwxMjg5OTgoZSx0LGkpe2kuZCh0LHtjcmVhdGVTZXJpZXNGb3JtYXR0ZXI6KCk9Pmx9KTtpKDE4NTI3MSk7dmFyIHM9aSg5MzAyMzEpLHI9KGkoOTMwNTY2KSxpKDMxODk3NCksaSg3OTgzOCksaSg3NTU2MjcpKSxuPWkoOTg0Mzc2KSxhPWkoMTI1MjE4KTtpKDMxNDkxNCk7KDAscy5pc0ZlYXR1cmVzZXRFbmFibGVkKSgidXBwZXJjYXNlX2luc3RydW1lbnRfbmFtZXMiKSwoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJoaWRlX29iamVjdF90cmVlX2FuZF9wcmljZV9zY2FsZV9leGNoYW5nZV9sYWJlbCIpO3ZhciBvOyFmdW5jdGlvbihlKXtlLkxhc3RVc2VkU3R5bGVLZXk9ImNoYXJ0Lmxhc3RVc2VkU3R5bGUiLGUuTGFzdFVzZWRTaW5nbGVWYWx1ZUJhc2VkU3R5bGU9ImNoYXJ0Lmxhc3RVc2VkU2luZ2xlVmFsdWVCYXNlZFN0eWxlIixlLkxhc3RVc2VkUmF3RGF0YVN0eWxlPSJjaGFydC5yYXdEYXRhU3R5bGUiLAplLkxhc3RVc2VkTWV0cmljPSJjaGFydC5sYXN0VXNlZE1ldHJpYyJ9KG98fChvPXt9KSk7ZnVuY3Rpb24gbChlLHQsaT0hMSl7Y29uc3R7cHJpY2VTY2FsZTpzLG1pbk1vdmU6byxmcmFjdGlvbmFsOmwsbWluTW92ZTI6dSx2YXJpYWJsZU1pblRpY2s6aCxub0V4cG9uZW50aWFsRm9ybTpjfT1mdW5jdGlvbihlLHQ9ImRlZmF1bHQiLGk9ITEpe2xldCBzLHIsbixhLG89MTAwLGw9MTtpZigiZGVmYXVsdCI9PT10KW51bGwhPWUmJigoe3ByaWNlc2NhbGU6byxtaW5tb3Y6bCxtaW5tb3ZlMjpyLGZyYWN0aW9uYWw6c309ZSksbj1lLnZhcmlhYmxlX3RpY2tfc2l6ZXx8dm9pZCAwKTtlbHNle2xldCBlPXQuc3BsaXQoIiwiKTszIT09ZS5sZW5ndGgmJihlPVsiMTAwIiwiMSIsImZhbHNlIl0pLG89cGFyc2VJbnQoZVswXSksbD1wYXJzZUludChlWzFdKSxzPSJ0cnVlIj09PWVbMl0sYT0hMH1yZXR1cm4gaSYmKGw9MSkse3ByaWNlU2NhbGU6byxtaW5Nb3ZlOmwsZnJhY3Rpb25hbDpzLG1pbk1vdmUyOnIsdmFyaWFibGVNaW5UaWNrOm4saWdub3JlTWluTW92ZTppLG5vRXhwb25lbnRpYWxGb3JtOmF9fShlLHQsaSk7aWYobnVsbCE9ZSl7Y29uc3Qgcj1lLmZvcm1hdDtpZigiZGVmYXVsdCI9PT10JiYidm9sdW1lIj09PXIpcmV0dXJuIG5ldyBuLlZvbHVtZUZvcm1hdHRlcih7cHJlY2lzaW9uOjJ9KTtpZigicGVyY2VudCI9PT1yKXJldHVybiBuZXcgYS5QZXJjZW50YWdlRm9ybWF0dGVyKHtwcmljZVNjYWxlOnMsbWluTW92ZTpvLGZyYWN0aW9uYWw6bCxtaW5Nb3ZlMjp1LHZhcmlhYmxlTWluVGljazpoLGlnbm9yZU1pbk1vdmU6aX0pfXJldHVybiBuZXcgci5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTpzLG1pbk1vdmU6byxmcmFjdGlvbmFsOmwsbWluTW92ZTI6dSx2YXJpYWJsZU1pblRpY2s6aCxpZ25vcmVNaW5Nb3ZlOmksbm9FeHBvbmVudGlhbEZvcm06Y30pfX0sMjU0NjczKGUsdCxpKXtpLmQodCx7SW50ZXJ2YWw6KCk9PmgsUmVzb2x1dGlvbktpbmQ6KCk9Pm59KTtjb25zdCBzPS9eKFxkKikoW1RTSERXTVJdKSQvLHI9L14oXGQrKSQvO3ZhciBuLGE7IWZ1bmN0aW9uKGUpe2UuVGlja3M9InRpY2tzIixlLlNlY29uZHM9InNlY29uZHMiLGUuTWludXRlcz0ibWludXRlcyIsZS5EYXlzPSJkYXlzIixlLldlZWtzPSJ3ZWVrcyIsZS5Nb250aHM9Im1vbnRocyIsZS5SYW5nZT0icmFuZ2UiLGUuSW52YWxpZD0iaW52YWxpZCJ9KG58fChuPXt9KSksZnVuY3Rpb24oZSl7ZS5Ib3Vycz0iaG91cnMifShhfHwoYT17fSkpO2NvbnN0IG89e307b1tuLlRpY2tzXT0xZTMsb1tuLlNlY29uZHNdPTFlMyxvW24uTWludXRlc109NjAqb1tuLlNlY29uZHNdLG9bbi5EYXlzXT0xNDQwKm9bbi5NaW51dGVzXSxvW24uV2Vla3NdPTcqb1tuLkRheXNdO2NvbnN0IGw9e1Q6bi5UaWNrcyxTOm4uU2Vjb25kcyxEOm4uRGF5cyxXOm4uV2Vla3MsTTpuLk1vbnRocyxSOm4uUmFuZ2V9LHU9bmV3IFNldChbbi5UaWNrcyxuLlNlY29uZHMsbi5NaW51dGVzXSk7Y2xhc3MgaHtjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2tpbmQ9bi5JbnZhbGlkLHRoaXMuX211bHRpcGxpZXI9MCxlIT09bi5JbnZhbGlkJiZ0PjAmJih0aGlzLl9raW5kPWUsdGhpcy5fbXVsdGlwbGllcj10KX1raW5kKCl7cmV0dXJuIHRoaXMuX2tpbmR9Z3VpS2luZCgpe3JldHVybiB0aGlzLmlzTWludXRlSG91cnMoKT9hLkhvdXJzOnRoaXMuX2tpbmR9bXVsdGlwbGllcigpe3JldHVybiB0aGlzLl9tdWx0aXBsaWVyfWlzVmFsaWQoKXtyZXR1cm4gdGhpcy5raW5kKCkhPT1uLkludmFsaWQmJnRoaXMubXVsdGlwbGllcigpPjB9aXNEV00oKXtyZXR1cm4gdGhpcy5pc1ZhbGlkKCkmJiF0aGlzLmlzUmFuZ2UoKSYmIXRoaXMuaXNJbnRyYWRheSgpJiYhdGhpcy5pc1RpY2tzKCl9aXNJbnRyYWRheSgpe2NvbnN0IGU9dS5oYXModGhpcy5raW5kKCkpO3JldHVybiB0aGlzLmlzVmFsaWQoKSYmZX1pc1NlY29uZHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1uLlNlY29uZHN9aXNNaW51dGVzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09bi5NaW51dGVzfWlzTWludXRlSG91cnMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1uLk1pbnV0ZXMmJigoZT10aGlzLm11bHRpcGxpZXIoKSk+PTYwJiYhKGUlNjApKTt2YXIgZX1pc0RheXMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1uLkRheXN9aXNXZWVrcygpe3JldHVybiB0aGlzLmtpbmQoKT09PW4uV2Vla3N9aXNNb250aHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1uLk1vbnRoc31pc1JhbmdlKCl7cmV0dXJuIHRoaXMua2luZCgpPT09bi5SYW5nZX1pc1RpY2tzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09bi5UaWNrc31pczFUaWNrKCl7cmV0dXJuIHRoaXMuaXNUaWNrcygpJiYxPT09dGhpcy5tdWx0aXBsaWVyKCl9aXNUaW1lQmFzZWQoKXtyZXR1cm4hdGhpcy5pc1JhbmdlKCl9bGV0dGVyKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpJiZ0aGlzLmtpbmQoKSE9PW4uTWludXRlcz90aGlzLmtpbmQoKVswXS50b1VwcGVyQ2FzZSgpOiIifXZhbHVlKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpP3RoaXMua2luZCgpPT09bi5NaW51dGVzP3RoaXMubXVsdGlwbGllcigpKyIiOnRoaXMubXVsdGlwbGllcigpK3RoaXMubGV0dGVyKCk6IiJ9aXNFcXVhbFRvKGUpe2lmKCEoZSBpbnN0YW5jZW9mIGgpKXRocm93IG5ldyBFcnJvcigiQXJndW1lbnQgaXMgbm90IGFuIEludGVydmFsIik7cmV0dXJuISghdGhpcy5pc1ZhbGlkKCl8fCFlLmlzVmFsaWQoKSkmJih0aGlzLmtpbmQoKT09PWUua2luZCgpJiZ0aGlzLm11bHRpcGxpZXIoKT09PWUubXVsdGlwbGllcigpKX1pbk1pbGxpc2Vjb25kcyhlPURhdGUubm93KCkpe2lmKCF0aGlzLmlzVmFsaWQoKXx8dGhpcy5pc1JhbmdlKCkpcmV0dXJuIE5hTjtpZih0aGlzLmlzTW9udGhzKCkpe2NvbnN0IHQ9bmV3IERhdGUoZSk7dC5zZXRVVENNb250aCh0LmdldFVUQ01vbnRoKCkrKHRoaXMubXVsdGlwbGllcigpfHwxKSk7cmV0dXJuK3QtZX1jb25zdCB0PXRoaXMubXVsdGlwbGllcigpO3JldHVybiBvW3RoaXMua2luZCgpXSp0fXN0YXRpYyBpc0VxdWFsKGUsdCl7CnJldHVybiBlPT09dHx8aC5wYXJzZShlKS5pc0VxdWFsVG8oaC5wYXJzZSh0KSl9c3RhdGljIHBhcnNlRXh0KGUpe2U9KGUrIiIpLnRvVXBwZXJDYXNlKCkuc3BsaXQoIiwiKVswXTtsZXQgdD1zLmV4ZWMoZSk7cmV0dXJuIG51bGwhPT10PyJIIj09PXRbMl0/e2ludGVydmFsOm5ldyBoKG4uTWludXRlcyw2MCpjKHRbMV0pKSxndWlSZXNvbHV0aW9uS2luZDphLkhvdXJzfTp7aW50ZXJ2YWw6bmV3IGgobFt0WzJdXSxjKHRbMV0pKSxndWlSZXNvbHV0aW9uS2luZDpsW3RbMl1dfToodD1yLmV4ZWMoZSksbnVsbCE9PXQ/e2ludGVydmFsOm5ldyBoKG4uTWludXRlcyxjKHRbMV0pKSxndWlSZXNvbHV0aW9uS2luZDpuLk1pbnV0ZXN9OntpbnRlcnZhbDpuZXcgaChuLkludmFsaWQsMCksZ3VpUmVzb2x1dGlvbktpbmQ6bi5JbnZhbGlkfSl9c3RhdGljIHBhcnNlKGUpe3JldHVybiBoLnBhcnNlRXh0KGUpLmludGVydmFsfXN0YXRpYyBraW5kKGUpe3JldHVybiBoLnBhcnNlKGUpLmtpbmQoKX1zdGF0aWMgaXNWYWxpZChlKXtyZXR1cm4gaC5wYXJzZShlKS5pc1ZhbGlkKCl9c3RhdGljIGlzRFdNKGUpe3JldHVybiBoLnBhcnNlKGUpLmlzRFdNKCl9c3RhdGljIGlzSW50cmFkYXkoZSl7cmV0dXJuIGgucGFyc2UoZSkuaXNJbnRyYWRheSgpfXN0YXRpYyBpc1NlY29uZHMoZSl7cmV0dXJuIGgucGFyc2UoZSkuaXNTZWNvbmRzKCl9c3RhdGljIGlzTWludXRlcyhlKXtyZXR1cm4gaC5wYXJzZShlKS5pc01pbnV0ZXMoKX1zdGF0aWMgaXNNaW51dGVIb3VycyhlKXtyZXR1cm4gaC5wYXJzZShlKS5pc01pbnV0ZUhvdXJzKCl9c3RhdGljIGlzRGF5cyhlKXtyZXR1cm4gaC5wYXJzZShlKS5pc0RheXMoKX1zdGF0aWMgaXNXZWVrcyhlKXtyZXR1cm4gaC5wYXJzZShlKS5pc1dlZWtzKCl9c3RhdGljIGlzTW9udGhzKGUpe3JldHVybiBoLnBhcnNlKGUpLmlzTW9udGhzKCl9c3RhdGljIGlzUmFuZ2UoZSl7cmV0dXJuIGgucGFyc2UoZSkuaXNSYW5nZSgpfXN0YXRpYyBpc1RpY2tzKGUpe3JldHVybiBoLnBhcnNlKGUpLmlzVGlja3MoKX1zdGF0aWMgaXNUaW1lQmFzZWQoZSl7cmV0dXJuIGgucGFyc2UoZSkuaXNUaW1lQmFzZWQoKX1zdGF0aWMgbm9ybWFsaXplKGUpe2NvbnN0IHQ9aC5wYXJzZShlKTtyZXR1cm4gdC5pc1ZhbGlkKCk/dC52YWx1ZSgpOm51bGx9fWZ1bmN0aW9uIGMoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD8xOnBhcnNlSW50KGUsMTApfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/11312.780d600a2696ddf6ee44.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.499Z","timestamp":1785154590499,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/11312.780d600a2696ddf6ee44.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-232b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5c01f41d3380bb5742e9d41d819fbd2b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9003,"size_decoded":4718,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3036)","md5":"b0720897b12cf88ecebb46f6d89d7c69","sha1":"2fa28bedeea569b2619cdae53062a791ac2bbe17","sha256":"dfc29df647149630e1dbf361ac94f0081f774d552a89224ac3ea2157929c77f5","sha512":"c904e06401e522c893ae37d44d3745ffe459571313cd4e58adfe5e55d3b410df4f6331734bd900341a146bb7d42fbe0b55dd284cac4015d1b744b697066356b0","ssdeep":"192:KHIIzhrJQdAWfH7Gusa7Emt8EBHi61ihHD/wRKZSouH1Oby7eaHHBPUaP6KgUsnm:KHIIzhrGH7Gc7Emt8EBCGMHD/KE9a7Hd","tlshash":"960218dc30a2b47a4b8718def4395942f035657cb446ccc1eaed8d8918634ada3b3d9d","first_seen":"2026-07-22T21:16:51.837735Z","last_seen":"2026-07-27T14:17:30.987385Z","times_seen":288,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMTMxMl0sezgwNDYxOShlKXtlLmV4cG9ydHM9e319LDM4NDAxNyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtmZXRjaDooKT0+b30pO3ZhciBuPXIoMjIxMDYxKTtyKDMwMDI4Nik7Y29uc3QgaT0oMCxuLmdldExvZ2dlcikoIkZldGNoIik7ZnVuY3Rpb24gbyhlLHQscj17fSl7e2NvbnN0e2xvZ09uRXJyb3JTdGF0dXM6bj0hMCxsb2dCb2R5T25FcnJvcjpvPSExfT1yO3Q9dHx8e30sZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKS5vcmlnaW49PT1sb2NhdGlvbi5vcmlnaW59KGUpJiYodC5oZWFkZXJzP3QuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnN8fCh0LmhlYWRlcnM9bmV3IEhlYWRlcnModC5oZWFkZXJzKSk6dC5oZWFkZXJzPW5ldyBIZWFkZXJzLHdpbmRvdy5sb2NhbGUmJnQuaGVhZGVycy5zZXQoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpLHQuaGVhZGVycy5zZXQoIlgtUmVxdWVzdGVkLVdpdGgiLCJYTUxIdHRwUmVxdWVzdCIpKSx2b2lkIDA9PT10LmNyZWRlbnRpYWxzJiYodC5jcmVkZW50aWFscz0ic2FtZS1vcmlnaW4iKTtjb25zdCBhPXdpbmRvdy5mZXRjaChlLHQpO3JldHVybiBhLnRoZW4oKHI9PntpZighci5vayYmbil7bGV0IG49IiI7dC5tZXRob2QmJihuKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxuKz1lLG4rPWAuIFN0YXR1cyAke3Iuc3RhdHVzfWAsci5zdGF0dXNUZXh0JiYobis9YC4gJHtyLnN0YXR1c1RleHR9YCksci5oZWFkZXJzLnZpYSYmKG4rPWAuIFZpYTogJHtyLmhlYWRlcnMudmlhfWApLG8mJiJzdHJpbmciPT10eXBlb2YgdC5ib2R5JiYobis9YC4gQm9keTogJHt0LmJvZHkuc2xpY2UoMCwxMDI0KX1gKSxpLmxvZ0Vycm9yKG4pfXJldHVybiByfSksKHI9PntpZihyJiYiQWJvcnRFcnJvciI9PT1yLm5hbWUpcmV0dXJuO2xldCBuPSIiO3QubWV0aG9kJiYobis9YCR7dC5tZXRob2QudG9VcHBlckNhc2UoKX0gYCksbis9ZSxuYXZpZ2F0b3Iub25MaW5lP24rPWAuICR7U3RyaW5nKHIpfWA6bis9Ii4gVXNlciBpcyBvZmZsaW5lLiIsaS5sb2dFcnJvcihuKX0pKSxhfX19LDExNzMxMyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtpc09uTW9iaWxlQXBwUGFnZTooKT0+aX0pO3ZhciBuPXIoNTg3NDM2KTtmdW5jdGlvbiBpKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOnJ9PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGk9InRydWUiPT09ci5nZXQoIm1vYmlsZWFwcF9uZXciKSxvPSJ0cnVlIj09PXIuZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1uLmdldCgidHZfYXBwIil8fCIiO2l8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLG98fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IWkpfHwhKCJuZXciPT09ZXx8IW8pfX0sMjQ3OTAxKGUsdCxyKXsidXNlIHN0cmljdCI7dmFyIG47ci5kKHQse1N0ZFRoZW1lOigpPT5ufSksZnVuY3Rpb24oZSl7ZS5MaWdodD0ibGlnaHQiLGUuRGFyaz0iZGFyayJ9KG58fChuPXt9KSl9LDM4NzIzMShlLHQscil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0LHI9e30pe3JldHVybiBPYmplY3QuYXNzaWduKHt9LGUsZnVuY3Rpb24oZSx0LHI9e30pe2NvbnN0IG49T2JqZWN0LmFzc2lnbih7fSx0KTtmb3IoY29uc3QgaSBvZiBPYmplY3Qua2V5cyh0KSl7Y29uc3Qgbz1yW2ldfHxpO28gaW4gZSYmKG5baV09W2Vbb10sdFtpXV0uam9pbigiICIpKX1yZXR1cm4gbn0oZSx0LHIpKX1yLmQodCx7bWVyZ2VUaGVtZXM6KCk9Pm59KX0sNjAxODQxKGUsdCxyKXsidXNlIHN0cmljdCI7ci5kKHQse2Nsb25lOigpPT5pLGlzSW50ZWdlcjooKT0+YSxpc051bWJlcjooKT0+bixpc09iamVjdDooKT0+b30pO25ldyBTZXQoWyJfX3Byb3RvX18iLCJwcm90b3R5cGUiLCJjb25zdHJ1Y3RvciJdKTtmdW5jdGlvbiBuKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSl9ZnVuY3Rpb24gaShlKXtpZighZXx8Im9iamVjdCIhPXR5cGVvZiBlKXJldHVybiBlO2xldCB0O3Q9QXJyYXkuaXNBcnJheShlKT9bXTp7fTtmb3IoY29uc3QgciBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkocikpe2NvbnN0IG49ZVtyXTt0W3JdPW4mJiJvYmplY3QiPT10eXBlb2Ygbj9pKG4pOm59cmV0dXJuIHR9ZnVuY3Rpb24gbyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lfUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gYShlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGUmJmUlMT09MH1OdW1iZXIuaXNOYU49TnVtYmVyLmlzTmFOfHxmdW5jdGlvbihlKXtyZXR1cm4gZSE9ZX19LDQ5MjY3NyhlLHQscil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1bXTtmb3IoY29uc3QgciBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkocikmJm51bGwhPWVbcl0pe2NvbnN0IG49ZVtyXSxpPSJvYmplY3QiPT10eXBlb2Ygbj9KU09OLnN0cmluZ2lmeShuKTpTdHJpbmcobik7dC5wdXNoKHtrZXk6cixwYWlyOmVuY29kZVVSSUNvbXBvbmVudChyKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGkpfSl9cmV0dXJuIHQuc29ydCgoKGUsdCk9PmUua2V5PnQua2V5PzE6ZS5rZXk8dC5rZXk/LTE6MCkpLm1hcCgoZT0+ZS5wYWlyKSkuam9pbigiJiIpfXIuZCh0LHtjcmVhdGVVcmxQYXJhbXM6KCk9Pm59KX0sNzQyNTc3KGUsdCxyKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQpe3JldHVybiBlJiZlLnV0bV9jYW1wYWlnbiYmKGUudXRtX2NhbXBhaWduKz1gLSR7dH1gKSxlfWFzeW5jIGZ1bmN0aW9uIGkoZSx0LG4saSl7aWYoImxlbnRhcnUiPT09ZSl7Y29uc3R7Z2V0TGVudGFDb3B5cmlnaHREYXRhOmV9PWF3YWl0IFByb21pc2UuYWxsKFtyLmUoNDQyNTMpLHIuZSg4NTAzOCldKS50aGVuKHIuYmluZChyLDI4NDA0MSkpO3JldHVybiBlKCl9aWYoImNtb25leWNvbXR3Ij09PWUpewpjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW3IuZSg1OTk0MSksci5lKDY0NDUpLHIuZSg3MTM5NCldKS50aGVuKHIuYmluZChyLDc3Nzc2OSkpO3JldHVybiBlKHQsbil9aWYoIm5ldyI9PT1pKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW3IuZSg5Nzc5Nyksci5lKDc2MDQwKV0pLnRoZW4oci5iaW5kKHIsOTgxMTU3KSk7cmV0dXJuIGUodCxuKX1pZigid2l0aF9ib3JkZXIiPT09aSl7Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOmV9PWF3YWl0IFByb21pc2UuYWxsKFtyLmUoNTM1MjEpLHIuZSgxNjgxMyldKS50aGVuKHIuYmluZChyLDg1MjY2OSkpO3JldHVybiBlKHQsbil9aWYoImxhcmdlX3RyYWRlIj09PWkpe2NvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTplfT1hd2FpdCBQcm9taXNlLmFsbChbci5lKDc0MDExKSxyLmUoNzkwNDEpXSkudGhlbihyLmJpbmQociw0OTM1NTkpKTtyZXR1cm4gZSh0LG4pfXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW3IuZSg1OTk0MSksci5lKDk3NTA5KV0pLnRoZW4oci5iaW5kKHIsNzA1NzkwKSk7cmV0dXJuIGUodCxuKX19ci5kKHQse2FkZFV0bUNhbXBhaWduU291cmNlOigpPT5uLGdldEN1c3RvbWVyQ29weXJpZ2h0RGF0YTooKT0+aX0pfSw3NDgwMDIoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7Z2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9PmN9KTt2YXIgbj1yKDIyMTA2MSksaT1yKDM4NDAxNyksbz1yKDUyODg2NCk7Y29uc3QgYT13aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVHx8Imh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYueHN0YWdpbmctd2lkZ2V0LnR2IixzPSgwLG4uZ2V0TG9nZ2VyKSgiV2lkZ2V0U2hlcmlmZi5XaWRnZXQiKTtsZXQgZD1udWxsO2FzeW5jIGZ1bmN0aW9uIGMoKXtyZXR1cm4gbnVsbD09PWQmJihkPWF3YWl0IGFzeW5jIGZ1bmN0aW9uKCl7Y29uc3QgZT1mdW5jdGlvbigpe2lmKGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aClyZXR1cm4gZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW2RvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgtMV07dHJ5e3JldHVybiBuZXcgVVJMKGRvY3VtZW50LnJlZmVycmVyKS5vcmlnaW59Y2F0Y2goZSl7cmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbnx8bnVsbH19KCk7aWYobnVsbD09PWUpcmV0dXJuIHMubG9nV2FybigiYW5jZXN0b3JPcmlnaW4gaXMgdW5kZWZpbmVkIiksUHJvbWlzZS5yZXNvbHZlKFtdKTtjb25zdCB0PW5ldyBVUkwoIi9zaGVyaWZmL2FwaS92MS9ydWxlcy9zZWFyY2giLGEpO3Quc2VhcmNoUGFyYW1zLmFwcGVuZCgib3JpZ2luIixlKTtyZXR1cm4oYXdhaXQoMCxpLmZldGNoKSh0LnRvSlNPTigpKS50aGVuKChlPT57aWYoIWUub2spdGhyb3cgbmV3IEVycm9yKCJHdWFyZCByZXF1ZXN0IGVycm9yIG9jY3VyZWQiKTtyZXR1cm4gMjA0PT09ZS5zdGF0dXM/UHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSk6ZS5qc29uKCl9KSkuY2F0Y2goKGU9PihzLmxvZ1dhcm4oZS5tZXNzYWdlKSxQcm9taXNlLnJlc29sdmUoe2FjdGlvbnM6W119KSkpKSkuYWN0aW9ucy5maWx0ZXIoKGU9Pm8ud2lkZ2V0U2hlcmlmZkFjdGlvbnMuaGFzKGUpKSl9KCkpLFByb21pc2UucmVzb2x2ZShkKX19LDI2NTEwOChlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9PmR9KTt2YXIgbj1yKDEzODYzOCksaT1yKDc0ODAwMiksbz1yKDY1MzgxNyksYT1yKDc0MjU3Nykscz1yKDUyODg2NCk7ZnVuY3Rpb24gZChlLHQscixkPXt9KXtpZihudWxsPT09ZS5wYXJlbnRFbGVtZW50KXJldHVybiBjb25zb2xlLndhcm4oIkNhbiBub3Qgd3JhcCAnZWxXaWRnZXRDb250YWluZXInIGJlY2F1c2UgaXQgaGFzIG5vIHBhcmVudEVsZW1lbnQiKSxlO2xldCBjPW51bGwsdT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKTtjb25zdCBnPW51bGwhPT11O2lmKGcpe3U9KDAsbi5lbnN1cmVOb3ROdWxsKSh1KSxjPSgwLG4uZW5zdXJlTm90TnVsbCkodS5wYXJlbnRFbGVtZW50KTtsZXQgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWhlYWQiKTtudWxsPT09ZSYmKGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIiksZS5jbGFzc0xpc3QuYWRkKCJqcy1lbWJlZC13aWRnZXQtaGVhZCIpLGMuaW5zZXJ0QmVmb3JlKGUsdSkpfWVsc2UgYz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxjLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyIiksYy5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19oZWFkZXIganMtZW1iZWQtd2lkZ2V0LWhlYWQiPjwvZGl2PjxkaXYgY2xhc3M9InR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5IGpzLWVtYmVkLXdpZGdldC1ib2R5Ij48L2Rpdj4nLHU9Yy5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKTtpZihkLm92ZXJmbG93QXV0byYmdS5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keS0tb3ZlcmZsb3dfYXV0byIpLGQuc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQmJnUuY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHktLWJvcmRlci1vbi10cmFuc3BhcmVudCIpLCFkLmlzV2hpdGVMYWJlbCl7IWFzeW5jIGZ1bmN0aW9uKGUsdCxyLGQsYz17fSl7Y29uc3QgdT1jLmlzU2hlcmlmZkRpc2FibGVkP1tdOmF3YWl0KDAsaS5nZXRXaWRnZXRTaGVyaWZmQWN0aW9ucykoKSxnPXUuaW5jbHVkZXMocy5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyksbD1mdW5jdGlvbihlKXsKcmV0dXJuWyJjcnlwdG8tY29pbnMtaGVhdG1hcCIsImZvcmV4LWNyb3NzLXJhdGVzIiwibWFya2V0LW92ZXJ2aWV3Iiwic3ltYm9sLW92ZXJ2aWV3IiwibWFya2V0LXF1b3RlcyIsInN0b2NrLWhlYXRtYXAiLCJzY3JlZW5lciIsImZvcmV4LWhlYXQtbWFwIiwiY3J5cHRvLW1rdC1zY3JlZW5lciIsImV2ZW50cyIsImhvdGxpc3RzIl0uaW5jbHVkZXMoZSl9KHQpLG09ZyYmbD8ibGFyZ2VfdHJhZGUiOnZvaWQgMCxwPWF3YWl0KDAsYS5nZXRDdXN0b21lckNvcHlyaWdodERhdGEpKGMuY3VzdG9tZXIsYy5sb2NhbGUsKDAsYS5hZGRVdG1DYW1wYWlnblNvdXJjZSkoey4uLmR9LCJsb2dvIiksbSksZj1tPz9jLmNvcHlyaWdodE9wdGlvbnM/Lm1vZGU/PyJzbWFsbF9vbGQiOygwLG4uZW5zdXJlTm90TnVsbCkoZSkuYXBwZW5kQ2hpbGQoKDAsby5jcmVhdGVDb3B5cmlnaHRMYWJlbCkoe3NoZXJpZmZPcHRpb25zOnUsc25hcFRvRWRnZTpyLC4uLmMuY29weXJpZ2h0T3B0aW9ucywuLi5wLG1vZGU6Zn0pKX0odSx0LCFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJpcy10cmFuc3BhcmVudCIpfHxCb29sZWFuKGQuc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQpLHIsZCl9cmV0dXJuIGd8fChlLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKGMsZSksdS5hcHBlbmRDaGlsZChlKSksZX19LDc1MTU1NyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9Pm4uY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyfSk7cig4MDQ2MTkpO3ZhciBuPXIoMjY1MTA4KX0sNDI5NjYoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLnIodCk7dmFyIG49cig4NTYzMjQpLGk9cig5NjMwOTgpOygwLG4ucmVnaXN0ZXJMYW5ndWFnZUdldHRlcikoKCgpPT53aW5kb3cubGFuZ3VhZ2V8fCIiKSksKDAsbi5yZWdpc3Rlckxhbmd1YWdlQ29kZU1hcHBlcikoaS5nZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2UpfSw0MDAxODEoZSx0LHIpeyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiBuKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOmV9PWF3YWl0IFByb21pc2UuYWxsKFtyLmUoNzA2NDQpLHIuZSg5NTIwNyldKS50aGVuKHIuYmluZChyLDQ3NzE1MCkpO3JldHVybiBlKCl9ci5kKHQse2dldFRyYWNrZXI6KCk9Pm59KX0sODEwNDEoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7U3RkVGhlbWU6KCk9Pm4uU3RkVGhlbWV9KTt2YXIgbj1yKDI0NzkwMSl9LDc5NTM4MyhlLHQscil7cigzNjMyNjkpLnNldENsYXNzZXMoKSxyKDQyOTY2KSxyKDYxMDI2OCk7dmFyIG49cig3NDk2NDgpLndoZW5Eb2N1bWVudFJlYWR5LGk9cig5MzExOTgpLmhhbmRsZVRWTGlua3NDbGljaztuKCgoKT0+e2koKX0pKX0sNjEwMjY4KGUsdCxyKXsidXNlIHN0cmljdCI7ci5yKHQpLCgwLHIoMTE1MjkzKS5zZXREb2N1bWVudERpckdldHRlcikoKCgpPT53aW5kb3cuZG9jdW1lbnQuZGlyKSl9LDYwMTU4NyhlLHQscil7InVzZSBzdHJpY3QiO3IuZCh0LHtidWlsZFV0bVF1ZXJ5U3RyaW5nOigpPT5zLGZpbHRlclV0bUluZm86KCk9PmF9KTt2YXIgbj1yKDQ5MjY3NyksaT1yKDY0MTU5Myk7Y29uc3Qgbz1bInV0bV9zb3VyY2UiLCJ1dG1fbWVkaXVtIiwidXRtX2NhbXBhaWduIl07ZnVuY3Rpb24gYShlKXtjb25zdCB0PXt9O3JldHVybiBvLmZvckVhY2goKHI9Pntjb25zdCBuPWVbcl07InN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW4mJih0W3JdPSgwLGkuaHRtbEVzY2FwZSkobikpfSkpLHR9ZnVuY3Rpb24gcyhlLHQ9ITEpe2NvbnN0IHI9KDAsbi5jcmVhdGVVcmxQYXJhbXMpKGUpO3JldHVybiByJiZ0PyI/IityOnJ9fSw3Mzg0NTgoZSx0LHIpeyJ1c2Ugc3RyaWN0IjtyLmQodCx7aXNBbmRyb2lkOigpPT5sLGlzQW55TW9iaWxlOigpPT53LGlzQmxhY2tCZXJyeTooKT0+bSxpc0Nocm9tZTooKT0+cyxpc0VkZ2U6KCk9PmMsaXNGRjooKT0+ZCxpc0lPUzooKT0+cCxpc0lQYWQ6KCk9PmgsaXNNYWM6KCk9PmcsaXNPcGVyYU1pbmk6KCk9PmYsaXNTYWZhcmk6KCk9PnUsbW9iaWxldG91Y2g6KCk9Pm8sdG91Y2g6KCk9PmF9KTtjb25zdCBuPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixpPW4mJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LG89biYmaSYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LGE9biYmKGl8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxzPW4mJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxkPW4mJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLGM9biYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHU9biYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZz1uJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLGw9KG4mJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxuJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksbiYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxtPW4mJi9CbGFja0JlcnJ5L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxwPW4mJi9pUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksZj1uJiYvT3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksaD1uJiYoIk1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjF8fC9pUGFkLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLHc9bHx8bXx8cHx8Zn19XSk7"}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/service9.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.349Z","timestamp":1785154589349,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/service9.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 3881\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3881,"size_decoded":4146,"mime_type":"image/png","magic":"PNG image data, 160 x 134, 8-bit colormap, non-interlaced","md5":"a09297a37904324146d5f2b67e1312ca","sha1":"73c0b61710a0e644b9645123b8e30c39ecc06f63","sha256":"1b8a8bdcfc812160b16aba85aa6e7af4cd66c4035d693486c82acf842171f9df","sha512":"d35cb9d802d7ee8ee7f6095e515fecf5750d91902b30722d6b4fec42df5c9c1a71b0e55e881892382203ec71ae42cd42714496af8247e133738949c9025a30d4","ssdeep":"","tlshash":"4d815b4b7bc700170a425e368842600d69c26eadbfbc6e371a14183ecace7bc45fd51a","first_seen":"2025-07-30T23:06:04.15642Z","last_seen":"2026-07-27T12:17:29.164768Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":94,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":32,"receive":62,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.640Z","timestamp":1785154589640,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://persimmontrades.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 7884\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:57:12 GMT\r\nexpires: Fri, 23 Jul 2027 02:57:12 GMT\r\ncache-control: public, max-age=31536000\r\nage: 379157\r\nlast-modified: Mon, 15 Sep 2025 16:34:42 GMT\r\ncontent-type: font/woff2\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":7884,"size_decoded":8696,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 7884, version 1.0","md5":"9212f6f9860f9fc6c69b02fedf6db8c3","sha1":"ac6d71b4d5fdd2b3dabc9a06ff6c001e4251da0b","sha256":"7d93459d86585bfcdbb7e0376056226adb25821ee54b96236fe2123e9560929f","sha512":"67317495f4b53e20a9f31c034e456e6c37f387dffb2c092caa5159bc441cfcadd02749ffe5bbed1d580d5300a59e48a767ef2c6d9978b474f84c1a2cd095c126","ssdeep":"192:xLFDbKO9E3rS3JWBRO/J601FSS5ZUbik3Zy2f0:pd9J5W501otlI","tlshash":"c3f1ae4eb3f2cd1be40982e53a0fc90b1c578272681fd772d067a22517893bc8db2c81","first_seen":"2023-04-05T15:35:34Z","last_seen":"2026-07-27T14:18:36.414947Z","times_seen":384270,"resource_available":false,"data":"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"}},"time_used":131,"timings":{"blocked":-1,"dns":81,"connect":30,"send":0,"wait":16,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15932.2a70d397c34f2e9de94f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.481Z","timestamp":1785154590481,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/15932.2a70d397c34f2e9de94f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-37f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b2ec3df66d2635b12821bde0e4b4b563\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":895,"size_decoded":1167,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (895), with no line terminators","md5":"61ab7674e7397acc0fbdbd8b60e6843d","sha1":"fcd3f559f2622c63283e4bc9c57d10811df0e449","sha256":"6612bc0b7ab79c16fbd208e005ce64f38027f232bd2fc73621c14c2401cc1abb","sha512":"25a6b08a102f5c8bd5cd31c69e9e714962ab697d5d0b27c3d6ee50b77232d869dc271761eda4f53d91748de07f2e4798911326e27fef8995b5be37d735ab9188","ssdeep":"","tlshash":"3811293871a06d2c7312ee3c17686c8c795da26ca6835eceead07128479f2cc26720a0","first_seen":"2026-03-24T10:46:27.428699Z","last_seen":"2026-07-27T14:18:36.347628Z","times_seen":5005,"resource_available":false,"data":"LnR2LWVtYmVkLXdpZGdldC13cmFwcGVye2JhY2tncm91bmQ6IzAwMDA7aGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjEwMCU7d2lkdGg6MH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlcntmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozNHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIHN2Z3toZWlnaHQ6MTVweDttYXJnaW4taW5saW5lLWVuZDo1cHg7dmVydGljYWwtYWxpZ246dGV4dC10b3A7d2lkdGg6MjZweH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluaywudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluazp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDp2YXIoLS10di13aWRnZXQtYmFja2dyb3VuZC1jb2xvcix2YXIoLS1jb2xvci1iZy1wcmltYXJ5KSk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRve292ZXJmbG93OmF1dG99aHRtbC5pcy10cmFuc3BhcmVudCAudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDojMDAwMH1odG1sLmlzLXRyYW5zcGFyZW50IC50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keTpub3QoLnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQpe2JvcmRlci13aWR0aDowfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/54681.a717110e6749f307ed6d.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.513Z","timestamp":1785154590513,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/54681.a717110e6749f307ed6d.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a041685-15e\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 13 May 2026 06:13:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.52\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/13/2026 09:56:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e715e263294923b64757dbb32d0805c0\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":350,"size_decoded":954,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (350), with no line terminators","md5":"f2e28dcef513e7329db6a3a69720bb48","sha1":"d2b0bc2f96723e3d74402c72a78a9a449405c692","sha256":"b2adba47f3ef9121bd8fb32842dcca6edcc4b9e36084de7724ef7244f6b03640","sha512":"97e9c6797a664f80308677fd34c5ddaafe0f74b206038c67761074bc9062d4439f8bd8aaae50193cd70d06f3baa8f30eb1fad236115eb4cda845f8dc922c1e2f","ssdeep":"","tlshash":"60e08cc3f0c6000444a341329c00b738fdaf98588b836ea4805e77304b166cf3b30dae","first_seen":"2026-05-13T13:23:52.95015Z","last_seen":"2026-07-27T14:22:59.652429Z","times_seen":2189,"resource_available":false,"data":"LmktaGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmktaW52aXNpYmxle3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudH0uaS1hbGlnbl9sZWZ0e3RleHQtYWxpZ246c3RhcnQhaW1wb3J0YW50fS5pLWFsaWduX3JpZ2h0e3RleHQtYWxpZ246ZW5kIWltcG9ydGFudH0uaS1hbGlnbl9jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS5pLWZsb2F0X2xlZnR7ZmxvYXQ6aW5saW5lLXN0YXJ0IWltcG9ydGFudH0uaS1mbG9hdF9yaWdodHtmbG9hdDppbmxpbmUtZW5kIWltcG9ydGFudH0uaS1mbG9hdF9ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5pLW5vLWJyZWFre3doaXRlLXNwYWNlOm5vd3JhcH0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T12:16:28.394Z","timestamp":1785154588394,"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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: document\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: none\r\nPriority: u=0, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nset-cookie: CameFrom=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; secure\nPHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc; path=/; domain=persimmontrades.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\ncontent-type: text/html; charset=UTF-8\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 12:16:28 GMT\r\nserver: LiteSpeed\r\nalt-svc: h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\"\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"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":"Google Maps","description":"Google Maps is a web mapping service. It offers satellite imagery, aerial photography, street maps, 360° interactive panoramic views of streets, real-time traffic conditions, and route planning for traveling by foot, car, bicycle and air, or public transportation.","website":"https://maps.google.com","common_platform_enumeration":"","icon":"Google Maps.svg","categories":["Maps"]}],"data":{"size":57042,"size_decoded":11020,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (780)","md5":"5dfa1de472b6a70c18c088eedfe63b69","sha1":"bbebfb3a01a9f23071518a61bee2fed275ee93fe","sha256":"0aa0c146812f565e5ec54231b3c1c2aebd0511b2a01d62a865f7bc2411767f62","sha512":"9c409dd42d904383d04823de600614d204b862298d99723c0fc96a3900cca5da074fbc59654b54dacfc780a788e8ca4892d37226c3ad47058002ffef4a9e6d07","ssdeep":"768:vUhoin3/o5jq4go4dZlzR5POIF4FDMFlGpunTKY8rky:vUmC3/o5jq4gPdZlzRF0EVTKY8rh","tlshash":"77438230abf504a7018706d7eaf249097e91f11bf94a8940baed0ad45fc6d63ee0b75c","first_seen":"2026-06-14T14:02:22.251082Z","last_seen":"2026-07-27T12:17:29.227955Z","times_seen":4,"resource_available":true,"data":"Cgo8IWRvY3R5cGUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iPgoKCjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiCiAgICAgICAgICBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIHVzZXItc2NhbGFibGU9bm8sIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgbWluaW11bS1zY2FsZT0xLjAiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJpZT1lZGdlIj4KICAgIDx0aXRsZT5QRVJTSU1NT04gVFJBREUgIC0gQmVzdCBjaG9pY2UgZm9yIGNyeXB0b2N1cnJlbmN5IHRyYWRpbmcuIDwvdGl0bGU+CiAgICA8bGluayBocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UG9wcGluczo0MDAsNTAwLDYwMCw3MDAsOTAwfE1pcnphOjQwMCw3MDAmYW1wO3N1YnNldD1hcmFiaWMiIHJlbD0ic3R5bGVzaGVldCI+CiAgICA8bGluayBocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9QWxsdXJhIiByZWw9InN0eWxlc2hlZXQiPgoKICAgIDwhLS0gaW5qZWN0OmNzcy0tPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJmcm9udG1haW4vY3NzL3BsdWdpbi5taW4uY3NzIj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iZnJvbnRtYWluL3N0eWxlLmNzcyI+CiAgICA8IS0tIGVuZGluamVjdCAtLT4KICAgIDxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBzaXplcz0iMzJ4MzIiIGhyZWY9ImZyb250bWFpbi9pbWcvZmF2aWNvbi5wbmciPgo8L2hlYWQ+Cjxib2R5PgoKCiAgICAgCiAgICA8IS0tIGhlYWRlciBhcmVhIC0tPgogICAgPHNlY3Rpb24gY2xhc3M9ImhlYWRlciBoZWFkZXItLTIiPgogICAgICAgIAogICAgPGRpdiBjbGFzcz0idG9wX2JhciB0b3AtLWJhcjIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBiZy1wcmltYXJ5Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTEyIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkLWZsZXggdG9wYmFyX2NvbnRlbnQganVzdGlmeS1jb250ZW50LWJldHdlZW4iPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b3BfYmFyLS1pbmZvIG9yZGVyLTAgZC1ub25lIGQtbGctYmxvY2sgYWxpZ24tc2VsZi1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48c3BhbiBjbGFzcz0ibGEgbGEtZW52ZWxvcGUiPjwvc3Bhbj4gPHA+c3VwcG9ydEBwZXJzaW1tb250cmFkZS5jb208L3A+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tLTxsaT48c3BhbiBjbGFzcz0ibGEgbGEtaGVhZHBob25lcyI+PC9zcGFuPiA8cD4rMTMyMzIwNTY3Mjk8L3A+PC9saT4tLS0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PHNwYW4gY2xhc3M9ImxhIGxhLWNsb2NrLW8iPjwvc3Bhbj4gPHA+TW9uLVNhdCA4LjAwIC0gMTguMDA8L3A+PC9saT4tLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIAogICAgPCEtLSBzdGFydCBtZW51IGFyZWEgLS0+CiAgICA8ZGl2IGNsYXNzPSJtZW51X2FyZWEgbWVudTEiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZXhwYW5kLWxnIG5hdmJhci1saWdodCBiZy1saWdodCBweC0wIj4KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJuYXZiYXItYnJhbmQgb3JkZXItc20tMSBvcmRlci0xIiBocmVmPSIvIj48aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9sb2dvLnBuZyIgYWx0PSIiLz48L2E+CiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXZiYXItdG9nZ2xlciIgdHlwZT0iYnV0dG9uIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmF2YmFyU3VwcG9ydGVkQ29udGVudDIiIGFyaWEtY29udHJvbHM9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQyIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5hdmlnYXRpb24iPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsYSBsYS1iYXJzIj48L3NwYW4+CiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2Ugb3JkZXItbWQtMSIgaWQ9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQyIj4KICAgICAgICAgICAgICAgICAgICAKICAgIAogICAgICAgICA8bGkgaWQ9Imdvb2dsZV90cmFuc2xhdGVfZWxlbWVudCI+IDxzY3JpcHQ+CgpmdW5jdGlvbiBnb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCgpIHsKCm5ldyBnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZUVsZW1lbnQoewoKcGFnZUxhbmd1YWdlOiAnZW4nCgp9LCAnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Jyk7Cgp9Cgo8L3NjcmlwdD48c2NyaXB0IHNyYz0iLy90cmFuc2xhdGUuZ29vZ2xlLmNvbS90cmFuc2xhdGVfYS9lbGVtZW50LmpzP2NiPWdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0Ij48L3NjcmlwdD48L2xpPgogICAgCiAgICA8dWwgY2xhc3M9Im5hdmJhci1uYXYgbS1hdXRvIj4KICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIGFjdGl2ZSI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iLyI+SG9tZQogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDwhLS0gZW5kOiAubWVnYS1tZW51IC0tPgogICAgICAgIDwvbGk+CiAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSBoYXNfbWVnYS1sZyI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iP2E9YWJvdXQiPkFib3V0IFVzPC9hPgogICAgICAgICAgICA8IS0tIGVuZDogLm1lZ2EtbWVudSAtLT4KICAgICAgICA8L2xpPgogICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIGhhc19tZWdhLWxnIj4KICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSI/YT1yZWFsIj5SZWFsIEVzdGF0ZTwvYT4KICAgICAgICAgICAgPCEtLSBlbmQ6IC5tZWdhLW1lbnUgLS0+CiAgICAgICAgPC9saT4gCiAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPgogICAgICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ij9hPWxvZ2luIj5Mb2dpbjwvYT4KICAgICAgICA8L2xpPgogICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPgogICAgICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ij9hPXNpZ251cCI+UmVnaXN0ZXI8L2E+CiAgICAgICAgPC9saT4gICAgICAgCiAgICAgICAgCiAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSBoYXNfbWVnYS1sZyI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iP2E9cHJpY2luZyI+VHJhZGluZyBQbGFuczwvYT4KICAgICAgICAgICAgPCEtLSBlbmQ6IC5tZWdhLW1lbnUgLS0+CiAgICAgICAgPC9saT4KICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIGhhc19tZWdhLWxnIj4KICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSI/YT1mb3JleCI+Rm9yZXggYW5kIFN0b2NrIE1hcmtldDwvYT4KICAgICAgICAgICAgPCEtLSBlbmQ6IC5tZWdhLW1lbnUgLS0+CiAgICAgICAgPC9saT4KICAgICAgICAKICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4KICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSI/YT1mYXEiPkZBUTwvYT4KICAgICAgICA8L2xpPgogICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPgogICAgICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9Ij9hPXN1cHBvcnQiPkNvbnRhY3QgVXM8L2E+CiAgICAgICAgPC9saT4KICAgICAgIAogICAgPC91bD4KICAgIDwhLS0gZW5kOiAubmF2YmFyLW5hdiAtLT4KCiAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDwvbmF2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8IS0tIGVuZCBtZW51IGFyZWEgLS0+CgogICAgPC9zZWN0aW9uPjwhLS0gZW5kOiAuaGVhZGVyIC0tPgoKIAogICAgPGRpdiBpZD0icmV2X3NsaWRlcl8xNV8xX3dyYXBwZXIiIGNsYXNzPSJyZXZfc2xpZGVyX3dyYXBwZXIgZnVsbHdpZHRoYmFubmVyLWNvbnRhaW5lciIgZGF0YS1hbGlhcz0ic2xpZGVyMSIKICAgICAgICAgZGF0YS1zb3VyY2U9ImdhbGxlcnkiCiAgICAgICAgIHN0eWxlPSJtYXJnaW46MHB4IGF1dG87YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nOjBweDttYXJnaW4tdG9wOjBweDttYXJnaW4tYm90dG9tOjBweDsiPgogICAgICAgIDwhLS0gU1RBUlQgUkVWT0xVVElPTiBTTElERVIgNS40LjguMSBmdWxsd2lkdGggbW9kZSAtLT4KICAgICAgICA8ZGl2IGlkPSJyZXZfc2xpZGVyXzE1XzEiIGNsYXNzPSJyZXZfc2xpZGVyIGZ1bGx3aWR0aGFiYW5uZXIgZGFyay1vdmVybGF5IiBzdHlsZT0iZGlzcGxheTpub25lOyIKICAgICAgICAgICAgIGRhdGEtdmVyc2lvbj0iNS40LjguMSI+CiAgICAgICAgICAgIDx1bD4gICAgPCEtLSBTTElERSAgLS0+CiAgICAgICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMzYiIGRhdGEtdHJhbnNpdGlvbj0iZmFkZSxzbG90ZmFkZS1ob3Jpem9udGFsIiBkYXRhLXNsb3RhbW91bnQ9ImRlZmF1bHQsZGVmYXVsdCIKICAgICAgICAgICAgICAgICAgICBkYXRhLWhpZGVhZnRlcmxvb3A9IjAiIGRhdGEtaGlkZXNsaWRlb25tb2JpbGU9Im9mZiIgZGF0YS1lYXNlaW49IkVsYXN0aWMuZWFzZU91dCxkZWZhdWx0IgogICAgICAgICAgICAgICAgICAgIGRhdGEtZWFzZW91dD0iRWxhc3RpYy5lYXNlSW4sZGVmYXVsdCIgZGF0YS1tYXN0ZXJzcGVlZD0iMzAwLGRlZmF1bHQiIGRhdGEtZGVsYXk9IjYwMTAiCiAgICAgICAgICAgICAgICAgICAgZGF0YS1yb3RhdGU9IjAsMCIKICAgICAgICAgICAgICAgICAgICBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJTbGlkZSIgZGF0YS1wYXJhbTE9IiIgZGF0YS1wYXJhbTI9IiIgZGF0YS1wYXJhbTM9IiIKICAgICAgICAgICAgICAgICAgICBkYXRhLXBhcmFtND0iIiBkYXRhLXBhcmFtNT0iIiBkYXRhLXBhcmFtNj0iIiBkYXRhLXBhcmFtNz0iIiBkYXRhLXBhcmFtOD0iIiBkYXRhLXBhcmFtOT0iIgogICAgICAgICAgICAgICAgICAgIGRhdGEtcGFyYW0xMD0iIiBkYXRhLWRlc2NyaXB0aW9uPSIiPgogICAgICAgICAgICAgICAgICAgIDwhLS0gTUFJTiBJTUFHRSAtLT4KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9zbGlkZXJfYmcxLmpwZyIgYWx0PSIiIGRhdGEtYmdwb3NpdGlvbj0iY2VudGVyIGNlbnRlciIgZGF0YS1rZW5idXJucz0ib24iCiAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWR1cmF0aW9uPSIzMDAwIiBkYXRhLWVhc2U9IlBvd2VyMy5lYXNlT3V0IiBkYXRhLXNjYWxlc3RhcnQ9IjEzMCIgZGF0YS1zY2FsZWVuZD0iMTAwIgogICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yb3RhdGVzdGFydD0iMCIgZGF0YS1yb3RhdGVlbmQ9IjAiIGRhdGEtYmx1cnN0YXJ0PSIxNSIgZGF0YS1ibHVyZW5kPSIwIgogICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1vZmZzZXRzdGFydD0iMCAwIgogICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1vZmZzZXRlbmQ9IjAgMCIgZGF0YS1iZ3BhcmFsbGF4PSJvZmYiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUlMgLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icnJ6bV8zNiIgY2xhc3M9InJldl9yb3dfem9uZSByZXZfcm93X3pvbmVfbWlkZGxlIiBzdHlsZT0iei1pbmRleDogNTsiPgoKICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gMSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiAgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zNi1sYXllci0yIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteD0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iY2VudGVyIiBkYXRhLXZvZmZzZXQ9Ii0yMTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS13aWR0aD0iWydhdXRvJ10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9InJvdyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWNvbHVtbmJyZWFrPSIzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZT0ib2ZmIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZnJhbWVzPSdbeyAgICJkZWxheSI6MTAsInNwZWVkIjozMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ICAgImRlbGF5IjoiKzU2NzAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2ludG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5sZWZ0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT0iei1pbmRleDogNTsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgZm9udC1zaXplOiAyMHB4OyBsaW5lLWhlaWdodDogMjJweDsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICNmZmZmZmY7IGxldHRlci1zcGFjaW5nOiAwcHg7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTEFZRVIgTlIuIDIgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uICAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zNi1sYXllci0zIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IjEwMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS15PSIxMDAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtd2lkdGg9IlsnYXV0byddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9ImNvbHVtbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZT0ib2ZmIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWZyYW1lcz0nW3sgICAiZGVsYXkiOiIrMCIsInNwZWVkIjozMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ICAgImRlbGF5IjoiKzU2NzAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWNvbHVtbndpZHRoPSI3NSUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdmVydGljYWxhbGlnbj0idG9wIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXRleHRBbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDY7IHdpZHRoOiAxMDAlOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gMyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uICB0cC1uby1ldmVudHMgICB0cC1yZXNpemVtZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zNi1sYXllci01IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS14PSIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXk9IiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtaGVpZ2h0PSJbJ2F1dG8nXSIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9InRleHQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZm9udHNpemU9IlsnNTAnLCAnNDUnLCAnNDAnLCAnMzInXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbGluZWhlaWdodD0iWyc2NCcsICc1NScsICc0MycsICczOCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzAiLCJzcGxpdCI6ImNoYXJzIiwic3BsaXRkZWxheSI6MC4wNSwic3BlZWQiOjIwMDAsInNwbGl0X2RpcmVjdGlvbiI6ImZvcndhcmQiLCJmcmFtZSI6IjAiLCJmcm9tIjoieDpbMTA1JV07ejowO3JYOjQ1ZGVnO3JZOjBkZWc7clo6OTBkZWc7c1g6MTtzWToxO3NrWDowO3NrWTowOyIsIm1hc2siOiJ4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjQuZWFzZUluT3V0In0seyAgICJkZWxheSI6IisyNTcwIiwic3BlZWQiOjEwMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMi5lYXNlSW4ifV0nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5ib3R0b209IlszMCwzMCwzMCwzMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmxlZnQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdGV4dEFsaWduPSJbJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2JvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPSJ6LWluZGV4OiA3OyBtYXgtd2lkdGg6IDkzMHB4OyB3aGl0ZS1zcGFjZTogbm9ybWFsOyBmb250LXNpemU6IDYwcHg7IGxpbmUtaGVpZ2h0OiA3MHB4OyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogI2ZmZmZmZjsgbGV0dGVyLXNwYWNpbmc6IDBweDsgZGlzcGxheTogYmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaGVuIE9uZSBJZGVhIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhbmdlcyBFdmVyeXRoaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTEFZRVIgTlIuIDQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiAgIHRwLXJlc2l6ZW1lIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9InNsaWRlLTM2LWxheWVyLTYiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZm9udHNpemU9IlsnMjAnLCAnMjAnLCAnMTgnLCAnMTYnXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbGluZWhlaWdodD0iWyczNicsICczNicsICcyNCcsICcyMiddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdHlwZT0idGV4dCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZnJhbWVzPSdbeyAgICJkZWxheSI6IisyNjAwIiwic3BlZWQiOjE1MDAsImZyYW1lIjoiMCIsImZyb20iOiJ5OjUwcHg7b3BhY2l0eTowOyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjMuZWFzZU91dCJ9LHsgICAiZGVsYXkiOiIrMTg3MCIsInNwZWVkIjozMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifV0nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5ib3R0b209IlszNSwzNSwzNSwzNV0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmxlZnQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdGV4dEFsaWduPSJbJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2JvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPSJ6LWluZGV4OiA4OyBtYXgtd2lkdGg6IDczMXB4OyB3aGl0ZS1zcGFjZTogbm9ybWFsOyBmb250LXNpemU6IDIwcHg7IGxpbmUtaGVpZ2h0OiAzNnB4OyBmb250LXdlaWdodDogNDAwOyBjb2xvcjogI2ZmZmZmZjsgbGV0dGVyLXNwYWNpbmc6IDBweDsgZGlzcGxheTogYmxvY2s7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgYWN0aXZhdGUgYnJhbmRzIHRocm91Z2ggY3VsdHVyYWwgaW5zaWdodCBzdHJhdGVnaWMgPGJyPiB2aXNpb24sIGFuZCB0aGUgbW90aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjcm9zcy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gNSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9InNsaWRlLTM2LWxheWVyLTEwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS14PSIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXk9IiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtd2lkdGg9IlsnYXV0byddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdHlwZT0idGV4dCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZnJhbWVzPSdbeyAgICJkZWxheSI6IiszNjAwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiIwIiwiZnJvbSI6Im9wYWNpdHk6MDsiLCJ0byI6Im86MTsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9LHsgICAiZGVsYXkiOiIrMjA3MCIsInNwZWVkIjozMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifV0nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5ib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ndG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdsZWZ0PSJbMCwwLDAsMF0iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDk7IHdoaXRlLXNwYWNlOiBub3JtYWw7IGRpc3BsYXk6IGlubGluZS1ibG9jazsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLS1yb3VuZGVkIj5MZWFybiBNb3JlPC9hPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIExBWUVSIE5SLiA2IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ic2xpZGUtMzYtbGF5ZXItMTEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS13aWR0aD0iWydhdXRvJ10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10eXBlPSJ0ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzM4MDAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6IjAiLCJmcm9tIjoib3BhY2l0eTowOyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In0seyAgICJkZWxheSI6IisxODcwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiI5OTkiLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9XScKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2ludG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmJvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5sZWZ0PSJbMzAsMzAsMzAsMzBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ndG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdsZWZ0PSJbMCwwLDAsMF0iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDEwOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImJ0biBidG4tb3V0bGluZS1saWdodCBidG4tLXJvdW5kZWQiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIExBWUVSIE5SLiA3IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiAgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ic2xpZGUtMzYtbGF5ZXItNCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS14PSIxMDAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iMTAwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXdpZHRoPSJbJ2F1dG8nXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10eXBlPSJjb2x1bW4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6IjAiLCJmcm9tIjoib3BhY2l0eTowOyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In0seyAgICJkZWxheSI6Iis1NjcwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiI5OTkiLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9XScKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1jb2x1bW53aWR0aD0iMjUlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXZlcnRpY2FsYWxpZ249InRvcCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW50b3A9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmJvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmxlZnQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmd0b3A9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2xlZnQ9IlswLDAsMCwwXSIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPSJ6LWluZGV4OiAxMTsgd2lkdGg6IDEwMCU7Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPCEtLSBTTElERSAgLS0+CiAgICAgICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMzgiIGRhdGEtdHJhbnNpdGlvbj0iYm94ZmFkZSIgZGF0YS1zbG90YW1vdW50PSJkZWZhdWx0IiBkYXRhLWhpZGVhZnRlcmxvb3A9IjAiCiAgICAgICAgICAgICAgICAgICAgZGF0YS1oaWRlc2xpZGVvbm1vYmlsZT0ib2ZmIiBkYXRhLWVhc2Vpbj0iZGVmYXVsdCIgZGF0YS1lYXNlb3V0PSJkZWZhdWx0IiBkYXRhLW1hc3RlcnNwZWVkPSJkZWZhdWx0IgogICAgICAgICAgICAgICAgICAgIGRhdGEtZGVsYXk9IjYwMTAiIGRhdGEtcm90YXRlPSIwIiBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJTbGlkZSIgZGF0YS1wYXJhbTE9IiIKICAgICAgICAgICAgICAgICAgICBkYXRhLXBhcmFtMj0iIiBkYXRhLXBhcmFtMz0iIiBkYXRhLXBhcmFtND0iIiBkYXRhLXBhcmFtNT0iIiBkYXRhLXBhcmFtNj0iIiBkYXRhLXBhcmFtNz0iIgogICAgICAgICAgICAgICAgICAgIGRhdGEtcGFyYW04PSIiCiAgICAgICAgICAgICAgICAgICAgZGF0YS1wYXJhbTk9IiIgZGF0YS1wYXJhbTEwPSIiIGRhdGEtZGVzY3JpcHRpb249IiI+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBNQUlOIElNQUdFIC0tPgogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL3NsaWRlcl9iZzIuanBnIiBhbHQ9IiIgZGF0YS1iZ3Bvc2l0aW9uPSJjZW50ZXIgY2VudGVyIiBkYXRhLWJnZml0PSJjb3ZlciIKICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtYmdyZXBlYXQ9Im5vLXJlcGVhdCIgZGF0YS1iZ3BhcmFsbGF4PSJvZmYiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUlMgLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0icnJ6bV8zOCIgY2xhc3M9InJldl9yb3dfem9uZSByZXZfcm93X3pvbmVfbWlkZGxlIiBzdHlsZT0iei1pbmRleDogNTsiPgoKICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gOCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiAgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zOC1sYXllci0yIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteD0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iY2VudGVyIiBkYXRhLXZvZmZzZXQ9Ii0yMTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS13aWR0aD0iWydhdXRvJ10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9InJvdyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWNvbHVtbmJyZWFrPSIzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZT0ib2ZmIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZnJhbWVzPSdbeyAgICJkZWxheSI6MTAsInNwZWVkIjozMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ICAgImRlbGF5IjoiKzU2MTAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2ludG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5sZWZ0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT0iei1pbmRleDogNTsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgZm9udC1zaXplOiAyMHB4OyBsaW5lLWhlaWdodDogMjJweDsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICNmZmZmZmY7IGxldHRlci1zcGFjaW5nOiAwcHg7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTEFZRVIgTlIuIDkgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uICAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zOC1sYXllci0zIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IjEwMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS15PSIxMDAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtd2lkdGg9IlsnYXV0byddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9ImNvbHVtbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZT0ib2ZmIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWZyYW1lcz0nW3sgICAiZGVsYXkiOiIrMCIsInNwZWVkIjozMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ICAgImRlbGF5IjoiKzU2MTAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWNvbHVtbndpZHRoPSI3NSUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdmVydGljYWxhbGlnbj0idG9wIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXRleHRBbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDY7IHdpZHRoOiAxMDAlOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gMTAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiAgdHAtbm8tZXZlbnRzICAgdHAtcmVzaXplbWUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ic2xpZGUtMzgtbGF5ZXItNSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteD0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS15PSIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10eXBlPSJ0ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mb250c2l6ZT0iWyc1MCcsICc0NScsICc0MCcsICczMiddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1saW5laGVpZ2h0PSJbJzY0JywgJzU1JywgJzQzJywgJzM4J10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzAiLCJzcGxpdCI6ImNoYXJzIiwic3BsaXRkZWxheSI6MC4xLCJzcGVlZCI6NTAwLCJzcGxpdF9kaXJlY3Rpb24iOiJmb3J3YXJkIiwiZnJhbWUiOiIwIiwiZnJvbSI6InNYOjAuODtzWTowLjg7b3BhY2l0eTowOyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjQuZWFzZU91dCJ9LHsgICAiZGVsYXkiOiIrMjYxMCIsInNwZWVkIjoxMDAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjIuZWFzZUluIn1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW50b3A9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lucmlnaHQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMjUsMjUsMjUsMjVdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5sZWZ0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXRleHRBbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmd0b3A9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2xlZnQ9IlswLDAsMCwwXSIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT0iei1pbmRleDogNzsgbWF4LXdpZHRoOiA5MzBweDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgZm9udC1zaXplOiA2MHB4OyBsaW5lLWhlaWdodDogNzBweDsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6ICNmZmZmZmY7IGxldHRlci1zcGFjaW5nOiAwcHg7IGRpc3BsYXk6IGJsb2NrO3BvaW50ZXItZXZlbnRzOm5vbmU7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVzdCBTb2x1dGlvbiBmb3IgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBZb3VyIEJ1c2luZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTEFZRVIgTlIuIDExIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gICB0cC1yZXNpemVtZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zOC1sYXllci02IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS14PSIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXk9IiIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10eXBlPSJ0ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mb250c2l6ZT0iWycyMCcsICcyMCcsICcxOCcsICcxNiddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1saW5laGVpZ2h0PSJbJzM2JywgJzM2JywgJzI0JywgJzIyJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzI0MzAiLCJzcGVlZCI6MTUwMCwiZnJhbWUiOiIwIiwiZnJvbSI6Ink6NTBweDtvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlT3V0In0seyAgICJkZWxheSI6IisxOTgwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiI5OTkiLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9XScKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2ludG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmJvdHRvbT0iWzM1LDM1LDM1LDM1XSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10ZXh0QWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ndG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdsZWZ0PSJbMCwwLDAsMF0iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDg7IG1heC13aWR0aDogNzMxcHg7IHdoaXRlLXNwYWNlOiBub3JtYWw7IGZvbnQtc2l6ZTogMjBweDsgbGluZS1oZWlnaHQ6IDM2cHg7IGZvbnQtd2VpZ2h0OiA0MDA7IGNvbG9yOiAjZmZmZmZmOyBsZXR0ZXItc3BhY2luZzogMHB4OyBkaXNwbGF5OiBibG9jazsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBhY3RpdmF0ZSBicmFuZHMgdGhyb3VnaCBjdWx0dXJhbCBpbnNpZ2h0IHN0cmF0ZWdpYyA8YnI+IHZpc2lvbiwgYW5kIHRoZSBtb3Rpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNyb3NzLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIExBWUVSIE5SLiAxMiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9InNsaWRlLTM4LWxheWVyLTgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS13aWR0aD0iWydhdXRvJ10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10eXBlPSJ0ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1mcmFtZXM9J1t7ICAgImRlbGF5IjoiKzI5MTAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6IjAiLCJmcm9tIjoib3BhY2l0eTowOyIsInRvIjoibzoxOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In0seyAgICJkZWxheSI6IisyNzAwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiI5OTkiLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9XScKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2ludG9wPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbmJvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5sZWZ0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXRleHRBbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmd0b3A9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2xlZnQ9IlswLDAsMCwwXSIKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT0iei1pbmRleDogOTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tLXJvdW5kZWQiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gTEFZRVIgTlIuIDEzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD0ic2xpZGUtMzgtbGF5ZXItOSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteD0iNSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEteT0iNSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtd2lkdGg9IlsnYXV0byddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWlnaHQ9IlsnYXV0byddIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdHlwZT0idGV4dCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZnJhbWVzPSdbeyAgICJkZWxheSI6IiszMDUwIiwic3BlZWQiOjMwMCwiZnJhbWUiOiIwIiwiZnJvbSI6Im9wYWNpdHk6MDsiLCJ0byI6Im86MTsiLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9LHsgICAiZGVsYXkiOiIrMjU2MCIsInNwZWVkIjozMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifV0nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5yaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1tYXJnaW5ib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzMwLDMwLDMwLDMwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdGV4dEFsaWduPSJbJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ2JvdHRvbT0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPSJ6LWluZGV4OiAxMDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJidG4gYnRuLW91dGxpbmUtbGlnaHQgYnRuLS1yb3VuZGVkIj5MZWFybiBNb3JlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBMQVlFUiBOUi4gMTQgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uICAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPSJzbGlkZS0zOC1sYXllci00IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXg9IjEwMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS15PSIxMDAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtd2lkdGg9IlsnYXV0byddIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWhlaWdodD0iWydhdXRvJ10iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXR5cGU9ImNvbHVtbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWZyYW1lcz0nW3sgICAiZGVsYXkiOiIrMCIsInNwZWVkIjozMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ICAgImRlbGF5IjoiKzU2MTAiLCJzcGVlZCI6MzAwLCJmcmFtZSI6Ijk5OSIsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In1dJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWNvbHVtbndpZHRoPSIyNSUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdmVydGljYWxhbGlnbj0idG9wIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnRvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLW1hcmdpbnJpZ2h0PSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2luYm90dG9tPSJbMCwwLDAsMF0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbWFyZ2lubGVmdD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXRleHRBbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9InotaW5kZXg6IDExOyB3aWR0aDogMTAwJTsiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWJhbm5lcnRpbWVyIHRwLWJvdHRvbSIgc3R5bGU9InZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OyI+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj48IS0tIEVORCBSRVZPTFVUSU9OIFNMSURFUiAtLT4KCiAgICAKICAgIDxzZWN0aW9uIGNsYXNzPSJzdWJzY3JpYmUtdGhyZWUiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMTAgb2Zmc2V0LW1kLTEiPgogICAgICAgICAgICAgICAgICAgIDwhLS0gVHJhZGluZ1ZpZXcgV2lkZ2V0IEJFR0lOIC0tPgo8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyX193aWRnZXQiPjwvZGl2PgogIDxzY3JpcHQgZGF0YS1jZmFzeW5jPSJmYWxzZSIgc3JjPSIvY2RuLWNnaS9zY3JpcHRzLzVjNWRkNzI4L2Nsb3VkZmxhcmUtc3RhdGljL2VtYWlsLWRlY29kZS5taW4uanMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL2V4dGVybmFsLWVtYmVkZGluZy9lbWJlZC13aWRnZXQtdGlja2VyLXRhcGUuanMiIGFzeW5jPgogIHsgICAKICAic3ltYm9scyI6IFsKICAgIHsgICAKICAgICAgInByb05hbWUiOiAiRk9SRVhDT006U1BYVVNEIiwKICAgICAgInRpdGxlIjogIlMmUCA1MDAiCiAgICB9LAogICAgeyAgIAogICAgICAicHJvTmFtZSI6ICJGT1JFWENPTTpOU1hVU0QiLAogICAgICAidGl0bGUiOiAiTmFzZGFxIDEwMCIKICAgIH0sCiAgICB7ICAgCiAgICAgICJwcm9OYW1lIjogIkZYX0lEQzpFVVJVU0QiLAogICAgICAidGl0bGUiOiAiRVVSL1VTRCIKICAgIH0sCiAgICB7ICAgCiAgICAgICJwcm9OYW1lIjogIkJJVFNUQU1QOkJUQ1VTRCIsCiAgICAgICJ0aXRsZSI6ICJCVEMvVVNEIgogICAgfSwKICAgIHsgICAKICAgICAgInByb05hbWUiOiAiQklUU1RBTVA6RVRIVVNEIiwKICAgICAgInRpdGxlIjogIkVUSC9VU0QiCiAgICB9CiAgXSwKICAic2hvd1N5bWJvbExvZ28iOiB0cnVlLAogICJjb2xvclRoZW1lIjogImxpZ2h0IiwKICAiaXNUcmFuc3BhcmVudCI6IGZhbHNlLAogICJkaXNwbGF5TW9kZSI6ICJhZGFwdGl2ZSIsCiAgImxvY2FsZSI6ICJlbiIKfQogIDwvc2NyaXB0Pgo8L2Rpdj4KPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgRU5EIC0tPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPjwhLS0gZW5kczogLnN1YnNjcmliZS10aHJlZSAtLT4KCgoKCiAgPGNlbnRlcj4KICAgICAgICA8ZGl2IGNsYXNzPSJ2aWRlbyI+CiAgICAgICAgICAgIDx2aWRlbyBpZD0ibXlWaWRlbyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iNDE3cHgiIGNvbnRyb2xzPgogIDxzb3VyY2Ugc3JjPSJwZXJzLm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4gPC92aWRlbz48L2Rpdj48L2NlbnRlcj4KCiAgICA8c2VjdGlvbiBjbGFzcz0icC10b3AtMTEwIHAtYm90dG9tLTgwIHNlY3Rpb24tYmciPgogICAgICAgIDxkaXYgY2xhc3M9Imljb24tYm94ZXMgaWNvbi1ib3gtLWZpZnRlZW4iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgPGRpdiBjbGFzcz0iaWNvbi1ib3ggaWNvbi1ib3gtMTUgdGV4dC1jZW50ZXIiPgogICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL3NlcnZpY2U3LnBuZyIgYWx0PSIiPgogICAgICAgIDxoNj5QcmluY2lwYWwgSW52ZXN0aW5nPC9oNj4KICAgICAgICA8cD5XZSBhcmUgY29uZmlkZW50IHRoYXQgeW91ciBpbnZlc3RtZW50IHJlcXVpcmVtZW50cyBhbmQgdGFyZ2V0IHdvdWxkIGJlIGVhc2lseSBzdHJlYW1saW5lZCB3aXRoIG91ciBvZmZlci48L3A+CiAgICA8L2Rpdj48IS0tIGVuZHM6IC5pY29uLWJveCAtLT4KIAogICAgICAgICAgICAgICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmNvbC1sZy00IC0tPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICA8ZGl2IGNsYXNzPSJpY29uLWJveCBpY29uLWJveC0xNSB0ZXh0LWNlbnRlciI+CiAgICAgICAgPGltZyBzcmM9ImZyb250bWFpbi9pbWcvc2VydmljZTgucG5nIiBhbHQ9IiI+CiAgICAgICAgPGg2PlN0YWJsZSBJbnZlc3RtZW50IFJldHVybjwvaDY+CiAgICAgICAgPHA+V2UgcHJvdmlkZSB0aGUgYmVzdCBJbnZlc3RtZW50IHByb2ZpdGFiaWxpdHkgcmV0dXJuIHdpdGggb3VyIGNhcmVmdWxseSBwcmVwYXJlZCBhbmQgdGltZSB0ZXN0ZWQgaW52ZXN0bWVudCBzdHJhdGVneTwvcD4KICAgIDwvZGl2PjwhLS0gZW5kczogLmljb24tYm94IC0tPgogCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAuY29sLWxnLTQgLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9Imljb24tYm94IGljb24tYm94LTE1IHRleHQtY2VudGVyIj4KICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9zZXJ2aWNlOS5wbmciIGFsdD0iIj4KICAgICAgICA8aDY+U3VwcG9ydCBTZXJ2aWNlPC9oNj4KICAgICAgICA8cD5PdXIgY3VzdG9tZXIgc2VydmljZSB0ZWFtIGlzIHJlYWR5IHRvIGFzc2lzdCBhbmQgYWRkcmVzcyBpbiBhbnkgY2hhbGxlbmdlIHlvdSBtaWdodCBoYXZlLjwvcD4KICAgIDwvZGl2PjwhLS0gZW5kczogLmljb24tYm94IC0tPgogCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAuY29sLWxnLTQgLS0+CiAgICAgICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5yb3cgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmljb24tYm94ZXMgLS0+CiAgICA8L3NlY3Rpb24+CgogICAgCiAgICA8c2VjdGlvbiBjbGFzcz0iY29udGVudC1ibG9jayBzZWN0aW9uLWJnIGNvbnRlbnQtLWJsb2NrOCBwLXRvcC0xMTAgcC1ib3R0b20tMTEwIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBtYXJnaW4tbWQtNjAiPgogICAgICAgICAgICAgICAgICAgIAogICAgPGRpdiBjbGFzcz0iZGl2aWRlciB0ZXh0LWxlZnQiPgogICAgICAgIDxzcGFuIGNsYXNzPSJzdWJ0ZXh0Ij5BYm91dCB1czwvc3Bhbj4KICAgICAgICA8aDM+RnJvbSBTdHJhdGVneSB0byBSZXN1bHRzPC9oMz4KICAgICAgICA8cD4gT3VyIGRlZXAgc2VjdG9yIGtub3dsZWRnZSBhbmQgdW5yaXZhbGVkIGluc2lnaHQgaW50byB0aGUgcHJpdmF0ZSBmdW5kIG1hcmtldCBhY3Jvc3Mgc2V2ZXJhbCBhc3NldCBjbGFzc2VzIGFsbG93cyB1cyB0byByYWlzZSBjYXBpdGFsIGVmZmljaWVudGx5IGFuZCBlZmZlY3RpdmVseS4gV2UgdGhyaXZlIG9uIHdvcmtpbmcgYWxvbmdzaWRlIHRoZSBtb3N0IGlubm92YXRpdmUgZnVuZHMgYW5kIGNvbnNpc3RlbnRseSBwYXJ0bmVyIHdpdGggdGhlIGhpZ2hlc3QtcXVhbGl0eSBmdW5kIG1hbmFnZXJzLjwvcD4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtLXRvcC0zMCI+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgPHVsIGNsYXNzPSJidWxsZXQtLWxpc3QxIj4KICAgICAgICAKICAgIDxsaSBjbGFzcz0iYnVsbGV0X2xpc3QiPjxzdHJvbmcgY2xhc3M9ImNvbG9yLWRhcmsiPlByb2Zlc3Npb25hbCAtPC9zdHJvbmc+IERlbGl2ZXJzIHNvbHV0aW9ucyB0aGF0IGhlbHAgZHJpdmU8L2xpPgogCiAgICAgICAgCiAgICA8bGkgY2xhc3M9ImJ1bGxldF9saXN0Ij48c3Ryb25nIGNsYXNzPSJjb2xvci1kYXJrIj5CdXNpbmVzcyAtPC9zdHJvbmc+IEh1bWFuIGNhcGl0YWwgcmVzZWFyY2ggYW5hbHl0aWNzPC9saT4KCiAgICAgICAgCiAgICA8bGkgY2xhc3M9ImJ1bGxldF9saXN0Ij48c3Ryb25nIGNsYXNzPSJjb2xvci1kYXJrIj5TZXJ2aWNlcyAtPC9zdHJvbmc+IENvbXBsZXggcHJvYmxlbXMgYnJpbmdpbmcgYW4gYXBwcm9hY2g8L2xpPgoKICAgIDwvdWw+PCEtLSBlbmRzOiAuYnVsbGV0LS1saXN0MSAtLT4KCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5jb2wtbGctNSAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy02IG9mZnNldC1sZy0xIj4KICAgICAgICAgICAgICAgICAgICAKICAgICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyX193aWRnZXQiPjwvZGl2PgogIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL2V4dGVybmFsLWVtYmVkZGluZy9lbWJlZC13aWRnZXQtbWFya2V0LW92ZXJ2aWV3LmpzIiBhc3luYz4KICB7ICAgCiAgImNvbG9yVGhlbWUiOiAibGlnaHQiLAogICJkYXRlUmFuZ2UiOiAiMTJtIiwKICAic2hvd0NoYXJ0IjogdHJ1ZSwKICAibG9jYWxlIjogImVuIiwKICAid2lkdGgiOiAiMTAwJSIsCiAgImhlaWdodCI6IDQwMCwKICAibGFyZ2VDaGFydFVybCI6ICIiLAogICJpc1RyYW5zcGFyZW50IjogZmFsc2UsCiAgInBsb3RMaW5lQ29sb3JHcm93aW5nIjogInJnYmEoMzMsIDE1MCwgMjQzLCAxKSIsCiAgInBsb3RMaW5lQ29sb3JGYWxsaW5nIjogInJnYmEoMzMsIDE1MCwgMjQzLCAxKSIsCiAgImdyaWRMaW5lQ29sb3IiOiAicmdiYSgyNDAsIDI0MywgMjUwLCAxKSIsCiAgInNjYWxlRm9udENvbG9yIjogInJnYmEoMTIwLCAxMjMsIDEzNCwgMSkiLAogICJiZWxvd0xpbmVGaWxsQ29sb3JHcm93aW5nIjogInJnYmEoMzMsIDE1MCwgMjQzLCAwLjEyKSIsCiAgImJlbG93TGluZUZpbGxDb2xvckZhbGxpbmciOiAicmdiYSgzMywgMTUwLCAyNDMsIDAuMTIpIiwKICAic3ltYm9sQWN0aXZlQ29sb3IiOiAicmdiYSgzMywgMTUwLCAyNDMsIDAuMTIpIiwKICAidGFicyI6IFsKICAgIHsgICAKICAgICAgInRpdGxlIjogIkNyeXB0b2N1cnJlbmN5IiwKICAgICAgInN5bWJvbHMiOiBbCiAgICAgICAgeyAgIAogICAgICAgICAgInMiOiAiQklUQkFZOkJUQ1VTRCIKICAgICAgICB9LAogICAgICAgIHsgICAKICAgICAgICAgICJzIjogIkJJVFBBTkRBUFJPOkJUQ0VVUiIKICAgICAgICB9LAogICAgICAgIHsgICAKICAgICAgICAgICJzIjogIkJJVEJBWTpCVENQTE4iCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJDT0lOQkFTRTpCVENHQlAiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJCSVRCQVk6RVRIQlRDIgogICAgICAgIH0sCiAgICAgICAgeyAgIAogICAgICAgICAgInMiOiAiS1JBS0VOOkVUSFVTRCIKICAgICAgICB9LAogICAgICAgIHsgICAKICAgICAgICAgICJzIjogIktSQUtFTjpFVEhFVVIiCiAgICAgICAgfQogICAgICBdLAogICAgICAib3JpZ2luYWxUaXRsZSI6ICJDb21tb2RpdGllcyIKICAgIH0sCiAgICB7ICAgCiAgICAgICJ0aXRsZSI6ICJCb25kcyIsCiAgICAgICJzeW1ib2xzIjogWwogICAgICAgIHsgICAKICAgICAgICAgICJzIjogIkNNRTpHRTEhIiwKICAgICAgICAgICJkIjogIkV1cm9kb2xsYXIiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJDQk9UOlpCMSEiLAogICAgICAgICAgImQiOiAiVC1Cb25kIgogICAgICAgIH0sCiAgICAgICAgeyAgIAogICAgICAgICAgInMiOiAiQ0JPVDpVQjEhIiwKICAgICAgICAgICJkIjogIlVsdHJhIFQtQm9uZCIKICAgICAgICB9LAogICAgICAgIHsgICAKICAgICAgICAgICJzIjogIkVVUkVYOkZHQkwxISIsCiAgICAgICAgICAiZCI6ICJFdXJvIEJ1bmQiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJFVVJFWDpGQlRQMSEiLAogICAgICAgICAgImQiOiAiRXVybyBCVFAiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJFVVJFWDpGR0JNMSEiLAogICAgICAgICAgImQiOiAiRXVybyBCT0JMIgogICAgICAgIH0KICAgICAgXSwKICAgICAgIm9yaWdpbmFsVGl0bGUiOiAiQm9uZHMiCiAgICB9LAogICAgeyAgIAogICAgICAidGl0bGUiOiAiRm9yZXgiLAogICAgICAic3ltYm9scyI6IFsKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpFVVJVU0QiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpHQlBVU0QiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpVU0RKUFkiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpVU0RDSEYiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpBVURVU0QiCiAgICAgICAgfSwKICAgICAgICB7ICAgCiAgICAgICAgICAicyI6ICJGWDpVU0RDQUQiCiAgICAgICAgfQogICAgICBdLAogICAgICAib3JpZ2luYWxUaXRsZSI6ICJGb3JleCIKICAgIH0KICBdCn0KICA8L3NjcmlwdD4KPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5jb2wtbGctNiAtLT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+PCEtLSBlbmRzOiAuY29udGVudC1ibG9jayAtLT4KCjwhLS0gVHJhZGluZ1ZpZXcgV2lkZ2V0IEJFR0lOIC0tPgo8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyX193aWRnZXQiPjwvZGl2PgogIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LmNvbS9tYXJrZXRzL2NyeXB0b2N1cnJlbmNpZXMvcHJpY2VzLWFsbC8iIHJlbD0ibm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj48c3BhbiBjbGFzcz0iYmx1ZS10ZXh0Ij5DcnlwdG9jdXJyZW5jeSBNYXJrZXRzPC9zcGFuPjwvYT4gYnkgVHJhZGluZ1ZpZXc8L2Rpdj4KICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3MzLnRyYWRpbmd2aWV3LmNvbS9leHRlcm5hbC1lbWJlZGRpbmcvZW1iZWQtd2lkZ2V0LXNjcmVlbmVyLmpzIiBhc3luYz4KICB7CiAgIndpZHRoIjogNDAwLAogICJoZWlnaHQiOiA0OTAsCiAgImRlZmF1bHRDb2x1bW4iOiAib3ZlcnZpZXciLAogICJzY3JlZW5lcl90eXBlIjogImNyeXB0b19ta3QiLAogICJkaXNwbGF5Q3VycmVuY3kiOiAiVVNEIiwKICAiY29sb3JUaGVtZSI6ICJsaWdodCIsCiAgImxvY2FsZSI6ICJlbiIKfQogIDwvc2NyaXB0Pgo8L2Rpdj4KPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgRU5EIC0tPgogIDxzZWN0aW9uIGNsYXNzPSJwLXRvcC0xMDAgcC1ib3R0b20tODAiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1iLTUiPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9ImRpdmlkZXIgdGV4dC1jZW50ZXIiPgogICAgICAgIDxoMSBjbGFzcz0iY29sb3ItZGFyayI+SW52ZXN0bWVudCBQbGFuczwvaDE+CiAgICAgICAgPHAgY2xhc3M9Im14LWF1dG8iPlBFUlNJTU1PTiBUUkFERSAgaXMgYSBzdXN0YWluYWJsZSBhbmQgcHJvZ3Jlc3NpdmUgaW52ZXN0bWVudCBwbGF0Zm9ybSBzdHJpdmluZyB0byB1dGlsaXplIDk5JSBwcm9maXQgbWFraW5nIG9wcG9ydHVuaXRpZXMgdG8gaW1wcm92ZSBjbGllbnRzIGZpbmFuY2lhbCBzdGF0dXMuPC9wPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+CiAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9InByaWNpbmcgcHJpY2luZy0tMSBzaGFkb3ctbGctMiI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJpY2luZ19fdGl0bGUiPgogICAgICAgICAgICA8aDQ+UGxhbiAxIDwvaDQ+CiAgICAgICAgICAgIDxzcGFuPkJhc2ljIFNvbHV0aW9uPC9zcGFuPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJwcmljaW5nX19wcmljZSByb3VuZGVkIj4KICAgICAgICAgICAgPHA+PHN1cD4kPC9zdXA+NTA8L3A+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InByaWNpbmdfX2ZlYXR1cmVzIj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPiQ0LDk5OSBNYXhpbXVtIEludmVzdG1lbnQ8L2xpPgogICAgICAgICAgICAgICAgPGxpPjQlIERhaWx5IGZvciA1IERheXM8L2xpPgogICAgICAgICAgICAgICAgPGxpPlJlZmVycmFsIEJvbnVzOiAxMCU8L2xpPgogICAgICAgICAgICAgICAgPGxpPkFsd2F5cyBBdmFpbGFibGU8L2xpPgogICAgICAgICAgICA8L3VsPjwhLS0gZW5kOiAucHJpY2luZ19fZmVhdHVyZXMgPiAucHJpY2luZyAtLT4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGEgaHJlZj0iP2E9c2lnbnVwIiBjbGFzcz0iYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSI+U2lnbiBVcDwvYT4KICAgIDwvZGl2PjwhLS0gZW5kOiAucHJpY2luZyAtLT4KIAogICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHMgLmNvbC1sZy00IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+CiAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9InByaWNpbmcgcHJpY2luZy0tMSBzaGFkb3ctbGctMiI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJpY2luZ19fdGl0bGUiPgogICAgICAgICAgICA8aDQ+UGxhbiAyPC9oND4KICAgICAgICAgICAgPHNwYW4+QWR2YW5jZWQgU29sdXRpb25zPC9zcGFuPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJwcmljaW5nX19wcmljZSByb3VuZGVkIj4KICAgICAgICAgICAgPHA+PHN1cD4kPC9zdXA+NSwwMDA8L3A+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InByaWNpbmdfX2ZlYXR1cmVzIj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPiQxOSw5OTkgTWF4aW11bSBJbnZlc3RtZW50PC9saT4KICAgICAgICAgICAgICAgIDxsaT41LjUlIERhaWx5IGZvciA1IERheXM8L2xpPgogICAgICAgICAgICAgICAgPGxpPlJlZmVycmFsIEJvbnVzOiAxMCU8L2xpPgogICAgICAgICAgICAgICAgPGxpPkFsd2F5cyBBdmFpbGFibGU8L2xpPgogICAgICAgICAgICA8L3VsPjwhLS0gZW5kOiAucHJpY2luZ19fZmVhdHVyZXMgPiAucHJpY2luZyAtLT4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGEgaHJlZj0iP2E9c2lnbnVwIiBjbGFzcz0iYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSI+U2lnbiBVcDwvYT4KICAgIDwvZGl2PjwhLS0gZW5kOiAucHJpY2luZyAtLT4KIAogICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHMgLmNvbC1sZy00IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+CiAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9InByaWNpbmcgcHJpY2luZy0tMSBzaGFkb3ctbGctMiI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJpY2luZ19fdGl0bGUiPgogICAgICAgICAgICA8aDQ+UGxhbiAzPC9oND4KICAgICAgICAgICAgPHNwYW4+QnVzaW5lc3MgU29sdXRpb25zPC9zcGFuPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJwcmljaW5nX19wcmljZSByb3VuZGVkIj4KICAgICAgICAgICAgPHA+PHN1cD4kPC9zdXA+MjAsMDAwPC9wPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJwcmljaW5nX19mZWF0dXJlcyI+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgIDxsaT4kMjAsMDAwIE1heGltdW0gSW52ZXN0bWVudDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+OCUgRGFpbHkgZm9yIDUgRGF5czwvbGk+CiAgICAgICAgICAgICAgICA8bGk+UmVmZXJyYWwgQm9udXM6IDEwJTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+QWx3YXlzIEF2YWlsYWJsZTwvbGk+CiAgICAgICAgICAgIDwvdWw+PCEtLSBlbmQ6IC5wcmljaW5nX19mZWF0dXJlcyA+IC5wcmljaW5nIC0tPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8YSBocmVmPSI/YT1zaWdudXAiIGNsYXNzPSJidG4gYnRuLW91dGxpbmUtc2Vjb25kYXJ5Ij5TaWduIFVwPC9hPgogICAgPC9kaXY+PCEtLSBlbmQ6IC5wcmljaW5nIC0tPgogCiAgICAgICAgICAgIDwvZGl2PjwhLS0gZW5kcyAuY29sLWxnLTQgLS0+CiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgIAogICAgPC9kaXY+CgogICAgPC9zZWN0aW9uPjwhLS0gZW5kczouc2VjdGlvbi1wYWRkaW5nIC0tPgoKICAgIAogICAgCgoKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tc3BsaXQgcC10b3AtMTAwIHAtYm90dG9tLTExMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy01Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtLWJvdHRvbS01NSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpdmlkZXIgZGl2aWRlci1zaW1wbGUgdGV4dC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMj5QRVJTSU1NT04gVFJBREUgIEF3YXJkczwvaDI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5JbnZlc3RtZW50IHByb2Zlc3Npb25hbHMgcGVyIGV4Y2VsbGVuY2UuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9ImxvZ28tY2Fyb3VzZWwtdHdvIG93bC1jYXJvdXNlbCI+CiAgICAgICAgCiAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbC1zaW5nbGUiPgogICAgICAgIDxkaXYgY2xhc3M9ImxvZ28tYm94Ij4KICAgICAgICAgICAgPGltZyBzcmM9ImZyb250bWFpbi9pbWcvY2wxNC5wbmciIGFsdD0iIj4KICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5sb2dvLWJveCAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWJveCI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsMTUucG5nIiBhbHQ9IiI+CiAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAubG9nby1ib3ggLS0+CiAgICA8L2Rpdj48IS0tIGVuZDogLmNhcm91c2VsLXNpbmdsZSAtLT4KIAogICAgICAgIAogICAgPGRpdiBjbGFzcz0iY2Fyb3VzZWwtc2luZ2xlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWJveCI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsMTYucG5nIiBhbHQ9IiI+CiAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAubG9nby1ib3ggLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9nby1ib3giPgogICAgICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9jbDE3LnBuZyIgYWx0PSIiPgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmxvZ28tYm94IC0tPgogICAgPC9kaXY+PCEtLSBlbmQ6IC5jYXJvdXNlbC1zaW5nbGUgLS0+CgogICAgICAgIAogICAgPGRpdiBjbGFzcz0iY2Fyb3VzZWwtc2luZ2xlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWJveCI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsMTQucG5nIiBhbHQ9IiI+CiAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAubG9nby1ib3ggLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9nby1ib3giPgogICAgICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9jbDE1LnBuZyIgYWx0PSIiPgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmxvZ28tYm94IC0tPgogICAgPC9kaXY+PCEtLSBlbmQ6IC5jYXJvdXNlbC1zaW5nbGUgLS0+CgogICAgICAgIAogICAgPGRpdiBjbGFzcz0iY2Fyb3VzZWwtc2luZ2xlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWJveCI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsMTYucG5nIiBhbHQ9IiI+CiAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAubG9nby1ib3ggLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9nby1ib3giPgogICAgICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9jbDE3LnBuZyIgYWx0PSIiPgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmxvZ28tYm94IC0tPgogICAgPC9kaXY+PCEtLSBlbmQ6IC5jYXJvdXNlbC1zaW5nbGUgLS0+CgogICAgICAgIAogICAgPGRpdiBjbGFzcz0iY2Fyb3VzZWwtc2luZ2xlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2dvLWJveCI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsMTQucG5nIiBhbHQ9IiI+CiAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAubG9nby1ib3ggLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9nby1ib3giPgogICAgICAgICAgICA8aW1nIHNyYz0iZnJvbnRtYWluL2ltZy9jbDE1LnBuZyIgYWx0PSIiPgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmxvZ28tYm94IC0tPgogICAgPC9kaXY+PCEtLSBlbmQ6IC5jYXJvdXNlbC1zaW5nbGUgLS0+CgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAuY29sLWxnLTUgLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBvZmZzZXQtbGctMiBza2lsbHMiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im0tYm90dG9tLTU1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciBkaXZpZGVyLXNpbXBsZSB0ZXh0LWxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPlByb2Zlc3Npb25hbCBTa2lsbHM8L2gyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+U3RyYXRlZ2llcyB0aGF0IGJyaW5nIHJlc3VsdHMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImxhYmVscyBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPgogICAgICAgICAgICA8c3Bhbj5CdXNpbmVzczwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+NzAlPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIGJnLXNlY29uZGFyeSIgcm9sZT0icHJvZ3Jlc3NiYXIiIHN0eWxlPSJ3aWR0aDogNzAlIiBhcmlhLXZhbHVlbm93PSI3MCIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMTAwIj48L2Rpdj4KICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5wcm9ncmVzcyAtLT4KICAgIDwvZGl2PjwhLS0gZW5kczogLnByb2dyZXNzLXdyYXBwZXIgLS0+CiAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy13cmFwcGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsYWJlbHMgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIj4KICAgICAgICAgICAgPHNwYW4+Q29ycG9yYXRlPC9zcGFuPgogICAgICAgICAgICA8c3Bhbj44NSU8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgYmctc2Vjb25kYXJ5IiByb2xlPSJwcm9ncmVzc2JhciIgc3R5bGU9IndpZHRoOiA4NSUiIGFyaWEtdmFsdWVub3c9Ijg1IiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIxMDAiPjwvZGl2PgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLnByb2dyZXNzIC0tPgogICAgPC9kaXY+PCEtLSBlbmRzOiAucHJvZ3Jlc3Mtd3JhcHBlciAtLT4KICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImxhYmVscyBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPgogICAgICAgICAgICA8c3Bhbj5GaW5hbmNlPC9zcGFuPgogICAgICAgICAgICA8c3Bhbj45MCU8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgYmctc2Vjb25kYXJ5IiByb2xlPSJwcm9ncmVzc2JhciIgc3R5bGU9IndpZHRoOiA5MCUiIGFyaWEtdmFsdWVub3c9IjkwIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIxMDAiPjwvZGl2PgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLnByb2dyZXNzIC0tPgogICAgPC9kaXY+PCEtLSBlbmRzOiAucHJvZ3Jlc3Mtd3JhcHBlciAtLT4KICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImxhYmVscyBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4iPgogICAgICAgICAgICA8c3Bhbj5TdHJhdGVneTwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+NzUlPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIGJnLXNlY29uZGFyeSIgcm9sZT0icHJvZ3Jlc3NiYXIiIHN0eWxlPSJ3aWR0aDogNzUlIiBhcmlhLXZhbHVlbm93PSI3NSIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMTAwIj48L2Rpdj4KICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5wcm9ncmVzcyAtLT4KICAgIDwvZGl2PjwhLS0gZW5kczogLnByb2dyZXNzLXdyYXBwZXIgLS0+CgogICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAuY29sLWxnLTUgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+PCEtLSBlbmRzOiAuc2VjdGlvbi1zcGxpdCAtLT4KCiAgICAKICAgIAogICAgICAgIAogICAgCiAgICA8c2VjdGlvbiBjbGFzcz0iY2Fyb3VzZWwtd3JhcHBlciB0Yy1mb3VyLXdyYXBwZXIgYmctcHJpbWFyeSI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWwtY2Fyb3VzZWwtZm91ciBvd2wtY2Fyb3VzZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9ImNhcm91c2VsLXNpbmdsZSB0ZXh0LWNlbnRlciI+CiAgICAgICAgPGltZyBzcmM9ImZyb250bWFpbi9pbWcvY2xpZW50MS5qcGciIGFsdD0iIiBjbGFzcz0icm91bmRlZC1jaXJjbGUiPgogICAgICAgIDxwIGNsYXNzPSJhdXRob3Itc3BlYyI+PHN0cm9uZz5KZWZmIENvbGxpbnMsPC9zdHJvbmc+IDxzcGFuPkFhenp0ZWNoPC9zcGFuPjwvcD4KICAgICAgICA8ZGl2IGNsYXNzPSJhdXRob3ItdGV4dCI+CiAgICAgICAgICAgIDxwPlRoZXnigJl2ZSBiZWVuIGNvbnNpc3RlbnQgdGhyb3VnaG91dCB0aGUgeWVhcnMgYW5kIGdyb3duIHRvZ2V0aGVyIHdpdGggdXMuIEV2ZW4gYXMgdGhleeKAmXZlIGdyb3duLCB0aGV5IGhhdmVu4oCZdCBsb3N0IHNpZ2h0IG9mIHdoYXQgdGhleSBkby4gTW9zdCBvZiB0aGVpciBrZXkgcmVzb3VyY2VzIGFyZSBzdGlsbCB3aXRoIHRoZW0sIHdoaWNoIGlzIGFsc28gYSB0ZXN0YW1lbnQgdG8gdGhlaXIgb3JnYW5pemF0aW9uLjwvcD4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PjwhLS0gZW5kOiAuY2Fyb3VzZWwtc2luZ2xlIC0tPgoKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbC1zaW5nbGUgdGV4dC1jZW50ZXIiPgogICAgICAgIDxpbWcgc3JjPSJmcm9udG1haW4vaW1nL2NsaWVudDEuanBnIiBhbHQ9IiIgY2xhc3M9InJvdW5kZWQtY2lyY2xlIj4KICAgICAgICA8cCBjbGFzcz0iYXV0aG9yLXNwZWMiPjxzdHJvbmc+SmVmZiBDb2xsaW5zLDwvc3Ryb25nPiA8c3Bhbj5BYXp6dGVjaDwvc3Bhbj48L3A+CiAgICAgICAgPGRpdiBjbGFzcz0iYXV0aG9yLXRleHQiPgogICAgICAgICAgICA8cD5QRVJTSU1NT04gVFJBREUgIGlzIGEgZ3JlYXQgY29tcGFueSB0byBJbnZlc3Qgd2l0aCEgSSBhbSBleHRyZW1lbHkgaGFwcHkgd2l0aCB0aGUgZXhwZXJpZW5jZSwgdHJhZGluZyBzZXJ2aWNlcywgYW5kIHN1cHBvcnQgdGhleSBoYXZlIGdpdmVuIHRvIG1lLjwvcD4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PjwhLS0gZW5kOiAuY2Fyb3VzZWwtc2luZ2xlIC0tPgoKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCgogICAgCgogICAgCiAgICA8c2VjdGlvbiBjbGFzcz0iY3RhLXdyYXBwZXItc20gY3RhLS1zZXZlbiBiZ2ltYWdlIGJpel9vdmVybGF5IG92ZXJsYXktLXNlY29uZGFyeSI+CiAgICAgICAgPGRpdiBjbGFzcz0iYmdfaW1hZ2VfaG9sZGVyIj4KICAgICAgICAgICAgPGltZyBzcmM9ImZyb250bWFpbi9pbWcvY3RhMy5wbmciIGFsdD0iIj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgY29udGVudF9hYm92ZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy05Ij4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0ibS0wIGNvbG9yLWxpZ2h0Ij5FYXJuIHJlZmVycmFsIGNvbWlzc2lvbnM/PC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uLWJ0biI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImZyb250bWFpbi9pbWcvY2VydC5wZGYiIGNsYXNzPSJidG4gYnRuLWxpZ2h0Ij5WaWV3IENlcnQhPC9hPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwhLS0gLnJvdyAtLT4KICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj48IS0tIGVuZHM6IC5jdGEtd3JhcHBlci1zbSAtLT4KPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgQkVHSU4gLS0+CjxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXIiPgogIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXJfX3dpZGdldCI+PC9kaXY+CiAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL2tleS1ldmVudHMvIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gY2xhc3M9ImJsdWUtdGV4dCI+RGFpbHkgbmV3cyByb3VuZHVwPC9zcGFuPjwvYT4gYnkgVHJhZGluZ1ZpZXc8L2Rpdj4KICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3MzLnRyYWRpbmd2aWV3LmNvbS9leHRlcm5hbC1lbWJlZGRpbmcvZW1iZWQtd2lkZ2V0LXRpbWVsaW5lLmpzIiBhc3luYz4KICB7CiAgImZlZWRNb2RlIjogImFsbF9zeW1ib2xzIiwKICAiY29sb3JUaGVtZSI6ICJsaWdodCIsCiAgImlzVHJhbnNwYXJlbnQiOiBmYWxzZSwKICAiZGlzcGxheU1vZGUiOiAicmVndWxhciIsCiAgIndpZHRoIjogNDAwLAogICJoZWlnaHQiOiA4MzAsCiAgImxvY2FsZSI6ICJlbiIKfQogIDwvc2NyaXB0Pgo8L2Rpdj4KPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgRU5EIC0tPgoKIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBpZD0ienNpcWNoYXQiPnZhciAkem9obz0kem9obyB8fCB7fTskem9oby5zYWxlc2lxID0gJHpvaG8uc2FsZXNpcSB8fCB7d2lkZ2V0Y29kZTogInNpcWU2NGIyMWY4MjE0OTdhNzM1YWJhYjhlMDdhMmUzMTVmMWU4OWQ1ZDg2NTUxNjgxZDU4MGYyMzBkNTY4NmJmZDgzZTEzZDhkODRjMWYzZDA2MGMxZWU4NmRlZGNhMTJkZSIsIHZhbHVlczp7fSxyZWFkeTpmdW5jdGlvbigpe319O3ZhciBkPWRvY3VtZW50O3M9ZC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtzLnR5cGU9InRleHQvamF2YXNjcmlwdCI7cy5pZD0ienNpcXNjcmlwdCI7cy5kZWZlcj10cnVlO3Muc3JjPSJodHRwczovL3NhbGVzaXEuem9ob3B1YmxpYy5ldS93aWRnZXQiO3Q9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07dC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLHQpOzwvc2NyaXB0PiAKCiA8Zm9vdGVyIGNsYXNzPSJmb290ZXI1IGZvb3Rlci0tYnciPgogICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fYmlnIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQgdGV4dF93aWRnZXQiPgogICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+UEVSU0lNTU9OIFRSQURFICBzdGFuZHMgZmlybWx5IGluIHN1cHBvcnQgb2YgZmluYW5jaWFsIGZyZWVkb20gYW5kIHRoZSBsaWJlcnR5IHRoYXQgQml0Y29pbiBwcm92aWRlcyBnbG9iYWxseSBmb3IgYW55b25lIHRvIHZvbHVudGFyaWx5IHBhcnRpY2lwYXRlIGluIGEgcGVybWlzc2lvbmxlc3MgYW5kIGRlY2VudHJhbGl6ZWQgbmV0d29yay48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwhLS0gZW5kczogLndpZGdldCAtLT4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC5jb2wtbGctMyAtLT4KCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgY29sLXNtLTYgZC1mbGV4IGp1c3RpZnktY29udGVudC1sZy1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQgd2lkZ2V0LS1saW5rcyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9IndpZGdldF9fdGl0bGUiPnF1aWNrIGxpbmtzPC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlua3MiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1ob21lIj5Ib21lPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPWFib3V0Ij5BYm91dCBVczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1zdXBwb3J0Ij5Db250YWN0cyBVczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAud2lkZ2V0IC0tPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmNvbC1sZy0zIC0tPgoKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiBjb2wtc20tNiBkLWZsZXgganVzdGlmeS1jb250ZW50LWxnLWNlbnRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndpZGdldCB3aWRnZXQtLWxpbmtzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0id2lkZ2V0X190aXRsZSI+b3VyIHNlcnZpY2VzPC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlua3MiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1wcmljaW5nIj5JbnZlc3RtZW50IHBsYW5zPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ij9hPWxvZ2luIj5Mb2dpbjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSI/YT1zaWdudXAiPlJlZ2lzdGVyPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48IS0tIGVuZHM6IC53aWRnZXQgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PCEtLSBlbmRzOiAuY29sLWxnLTMgLS0+CgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmZvb3Rlcl9fYmlnIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9fc21hbGwgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICA8IS0tPGEgaHJlZj0iaHR0cHM6Ly93YS5tZS82MTQ4ODg5MzQ3NiIgdGFyZ2V0PSJibGFuayIgY2xhc3M9IiIgaWQ9InRlbGVncmFtIj48aW1nIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSIgc3R5bGU9IndpZHRoOiA1MHB4OyBoZWlnaHQ6IGF1dG87IiBzcmM9ImltZy90ZWwucG5nIj48L2E+LS0+CiAgICAgICAgICAgIDxwPsKpMjAyNSBQRVJTSU1NT04gVFJBREUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9wPgogICAgICAgIDwvZGl2PjwhLS0gZW5kczogLmZvb3Rlcl9fc21hbGwgLS0+CiAgICA8L2Zvb3Rlcj4KCjxkaXYgY2xhc3M9ImdvX3RvcCI+CiAgICA8c3BhbiBjbGFzcz0ibGEgbGEtYW5nbGUtdXAiPjwvc3Bhbj4KPC9kaXY+CgogICAgIDxzY3JpcHQgc3JjPSJodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvanM/a2V5PUFJemFTeURkdUYydExYaWNERVBETUF0QzYtTkxPZWtYMEE1dmxuWSI+PC9zY3JpcHQ+CiAgICAgPCEtLSBpbmplY3Q6anMtLT4KICAgICA8c2NyaXB0IHNyYz0iZnJvbnRtYWluL2pzL3BsdWdpbnMubWluLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iZnJvbnRtYWluL2pzL3NjcmlwdC5taW4uanM/dmVyPTEuMy4zIj48L3NjcmlwdD4KICAgICA8IS0tIGVuZGluamVjdC0tPgogICAgCgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CmZ1bmN0aW9uIGdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0KCkgeyAgIAogIG5ldyBnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZUVsZW1lbnQoeyAgIHBhZ2VMYW5ndWFnZTogJ2VuJ30sICdnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQnKTsKfQo8L3NjcmlwdD4KCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3RyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnRhMGQ4Lmh0bWw/Y2I9Z29vZ2xlVHJhbnNsYXRlRWxlbWVudEluaXQiPjwvc2NyaXB0PgoKPGRpdiBjbGFzcz0ibWdtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgo8ZGl2IGNsYXNzPSJ0eHQiIHN0eWxlPSJjb2xvcjojZmZmZmZmOyI+U29tZW9uZSBmcm9tIDxiPjwvYj4ganVzdCBlYXJuZWQgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApOyIgb25jbGljaz0iamF2YXNjcmlwdDp2b2lkKDApOyI+PC9hPjwvZGl2Pgo8L2Rpdj4KCTxzdHlsZT4KLm1nbSB7ICAgCiAgICBib3JkZXItcmFkaXVzOiA3cHg7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICB6LWluZGV4OiA5OTk5OTk5OTk7CiAgICB0b3A6IDgwcHg7CiAgICByaWdodDogNTBweDsKICAgIGJhY2tncm91bmQ6ICM0MTNhYTQ7CiAgICBwYWRkaW5nOiAxMnB4IDIzcHg7CiAgICBib3gtc2hhZG93OiA3cHggNHB4IDEzcHggMnB4IHJnYigwIDAgMCAvIDMwJSk7Cn0KLm1nbSBhIHsgICAKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbG9yOiNmMmQ1MTY7Cn0KLm1nbSBhLCAubWdtIGE6YWN0aXZlIHsgICAKICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTsKICAgIGNvbG9yOiNmMmQ1MTY7CiAgICAKfQoKCi50eHQgeyAgIAogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFHd1NVUkJWRWhMdFphOVNnTkJFTWM5c1V4eFJjb1VLU3pTV0loWHBGTWhoWVdGaGFCZzR5UFlpV0NYWnhCTEVSc0xSUzNFUWtFZndDS2RqV0pBd1NLQ2dvS0NjdWR2NE81WUxydDdFemdYaGlVMy80K2IyY2ttd1ZqSlNwS2tRNndBaTRnd2hUK3ozd1JCY0V6MHlqU3NlVVRyY1J5ZnNIc1htRDBBbWJIT0M5SWk4VkltbnVYQlBnbEhwUTV3d1NWTTdzTm5URzdaYTRKd0RkQ2p4eUFpSDNueUEybXRhVEp1ZmlEWjVkQ2FxbEl0SUxoMU5IYXRmTjVza3ZqeDlaMzhtNjlDZ3p1WG1aZ1ZyUElHRTc2M0p4OXFLc1JveldZdzZ4T0hkRVIrbm4yS2tPK0JiK1VWNUNCTjZXQzZRdEJnYlJWb3pyYWhBYm1tNkh0VXNndFBDMTl0RmR4WFpZQk9ma2JtRkoxVmFIQTFWQUhqZDBwcDcwb1RaenZSK0VWcngyWWdmZHNxNmV1NTVCSFlSOGhsY2tpK24ra0VSVUZHOEJyQTBCd2plQXYyTThXTFFCdGN5K1NENmZOc21uQjNBbEJMcmdUdFZXMWMyUU40YlZXTEFUYUlTNjBKMkR1NXkxVGlKZ2pTQnZGVlpnVG13Q1UrZEFaRm9QeEdFRXM4bnlIQzlCd2UyR3ZFSnYyV1haYjB2amR5RlQ0Q3hrM2Uva0lxbE9Hb1ZMd3dQZXZwWUhUKzAwVCtoV3dYRGY0QUpBT1VxV2NEaGJ3QUFBQUFTVVZPUks1Q1lJST0pIWltcG9ydGFudDsKICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICBwYWRkaW5nOiAycHggMjhweDsKfQoKCgo8L3N0eWxlPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAKICAgIHZhciBsaXN0Q291bnRyaWVzID0gWydBcmdlbnRpbmEnLCAnVVNBJywgJ0dlcm1hbnknLCAnRnJhbmNlJywgJ0l0YWx5JywgJ1NvdXRoIEtvcmVhJywgJ0F1c3RyYWxpYScsICdOb3J3YXknLCAnQ2FuYWRhJywgJ0FyZ2VudGluYScsICdTYXVkaSBBcmFiaWEnLCAnTWV4aWNvJywgJ1NwYWluJywgJ0F1c3RyaWEnLCAnVmVuZXp1ZWxhJywgJ1NvdXRoIEFmcmljYScsICdTd2VkZW4nLCAnU291dGggS29yZWEnLCAnQ2hpbmEnLCAnSXRhbHknLCAnR2VybWFueScsICdVbml0ZWQgS2luZ2RvbScsICdCYWhyYWluJywgJ0dyZWVjZScsICdDdWJhJywgJ0J1bGdhcmlhJywgJ1BvcnR1Z2FsJywgJ0F1c3RyaWEnLCAnQ3lwcnVzJywgJ1BhbmFtYScsICdBc2lhJywgJ05vcndheScsICdOZXRoZXJsYW5kcycsICdTd2l0emVybGFuZCcsICdCZWxnaXVtJywgJ0lzcmFlbCcsICdDeXBydXMnLCdTcGFpbicsJ05vcndheSddOwogICAgdmFyIGxpc3RQbGFucyA9IFsnJDkyMDcwJywnJDI3NjAwJywnJDg1NDAwJywnJDIzNDAwMCcsJyQyODgwMCcsJyQ0MTIwMCcsJyQ3MzUwMCcsICckODAwMDAnLCAnJDk2NTAnLCAnJDk1MDAwJywgJyQ0NTAwMCcsICckNTIwMCcsJyQ3MjAwJywnNDU3MDAnLCckMzUwMCcsJyQ1MDAwJywnJDEzNTAwJywnJDk1MDAnXTsKICAgIHZhciAgZ2hvc3RzPVsnSmFtZXMnLCdNYXJ5JywnSm9obicsJ1BhdHJpY2lhJywnUm9iZXJ0JywnSmVubmlmZXInLCdNaWNoYWVsJywnTGluZGEnLCdXaWxsaWFtJywnRWxpemFiZXRoJywnRGF2aWQnLCdCYXJiYXJhJywnUmljaGFyZCcsJ1N1c2FuJywnSm9zZXBoJywnSmVzc2ljYScsJ1Rob21hcycsJ1NhcmFoJywnQ2hhcmxlcycsCidLYXJlbicsJ0NocmlzdG9waGVyJywnTmFuY3knLCdEYW5pZWwnLCdNYXJnYXJldCcsJ01hdHRoZXcnLCdMaXNhJywnQW50aG9ueScsJ0JldHR5JywnRG9uYWxkJywnRG9yb3RoeScsJ01hcmsnLCdTYW5kcmEnLCdQYXVsJywnQXNobGV5JywnU3RldmVuJywnS2ltYmVybHknLCdBbmRyZXcnLCdEb25uYScsJ0tlbm5ldGgnLCdFbWlseScsCidKb3NodWEnLCdNaWNoZWxsZScsJ0dlb3JnZScsJ0Nhcm9sJywnS2V2aW4nLCdBbWFuZGEnLCdCcmlhbicsJ01lbGlzc2EnLCdFZHdhcmQnLCdEZWJvcmFoJywnUm9uYWxkJywnU3RlcGhhbmllJywnVGltb3RoeScsJ1JlYmVjY2EnLCdKYXNvbicsJ0xhdXJhJywnSmVmZnJleScsJ1NoYXJvbicsJ1J5YW4nLCdDeW50aGlhJywnSmFjb2InLAonS2F0aGxlZW4nLCdHYXJ5JywnSGVsZW4nLCdOaWNob2xhcycsJ0FteScsJ0VyaWMnLCdTaGlybGV5JywnU3RlcGhlbicsJ0FuZ2VsYScsJ0pvbmF0aGFuJywnQW5uYScsJ0xhcnJ5JywnQnJlbmRhJywnSnVzdGluJywnUGFtZWxhJywnU2NvdHQnLCdOaWNvbGUnLCdCcmFuZG9uJywnUnV0aCcsJ0ZyYW5rJywnS2F0aGVyaW5lJywnQmVuamFtaW4nLAonU2FtYW50aGEnLCdHcmVnb3J5JywnQ2hyaXN0aW5lJywnU2FtdWVsJywnRW1tYScsJ1JheW1vbmQnLCdDYXRoZXJpbmUnLCdQYXRyaWNrJywnRGVicmEnLCdBbGV4YW5kZXInLCdWaXJnaW5pYScsJ0phY2snLCdSYWNoZWwnLCdEZW5uaXMnLCdDYXJvbHluJywnSmVycnknLCdKYW5ldCcsJ1R5bGVyJywnTWFyaWEnLCdBYXJvbicsJ0hlYXRoZXInLAonSm9zZScsJ0RpYW5lJywnSGVucnknLCdKdWxpZScsJ0RvdWdsYXMnLCdKb3ljZScsJ0FkYW0nLCdWaWN0b3JpYScsJ1BldGVyJywnS2VsbHknLCdOYXRoYW4nLCdDaHJpc3RpbmEnLCdaYWNoYXJ5JywnSm9hbicsJ1dhbHRlcicsJ0V2ZWx5bicsJ0t5bGUnLCdMYXVyZW4nLCdIYXJvbGQnLCdKdWRpdGgnLCdDYXJsJywnT2xpdmlhJywnSmVyZW15JywKJ0ZyYW5jZXMnLCdLZWl0aCcsJ01hcnRoYScsJ1JvZ2VyJywnQ2hlcnlsJywnR2VyYWxkJywnTWVnYW4nLCdFdGhhbicsJ0FuZHJlYScsJ0FydGh1cicsJ0hhbm5haCcsJ1RlcnJ5JywnSmFjcXVlbGluZScsJ0NocmlzdGlhbicsJ0FubicsJ1NlYW4nLCdKZWFuJywnTGF3cmVuY2UnLCdBbGljZScsJ0F1c3RpbicsJ0thdGhyeW4nLCdKb2UnLAonR2xvcmlhJywnTm9haCcsJ1RlcmVzYScsJ0plc3NlJywnRG9yaXMnLCdBbGJlcnQnLCdTYXJhJywnQnJ5YW4nLCdKYW5pY2UnLCdCaWxseScsJ0p1bGlhJywnQnJ1Y2UnLCdNYXJpZScsJ1dpbGxpZScsJ01hZGlzb24nLCdKb3JkYW4nLCdHcmFjZScsJ0R5bGFuJywnSnVkeScsJ0FsYW4nLCdUaGVyZXNhJywnUmFscGgnLCdCZXZlcmx5JywKJ0dhYnJpZWwnLCdEZW5pc2UnLCdSb3knLCdNYXJpbHluJywnSnVhbicsJ0FtYmVyJywnV2F5bmUnLCdEYW5pZWxsZScsJ0V1Z2VuZScsJ0FiaWdhaWwnLCdMb2dhbicsJ0JyaXR0YW55JywnUmFuZHknLCdSb3NlJywnTG91aXMnLCdEaWFuYScsJ1J1c3NlbGwnLCdOYXRhbGllJywnVmluY2VudCcsJ1NvcGhpYScsJ1BoaWxpcCcsJ0FsZXhpcycsCidCb2JieScsJ0xvcmknLCdKb2hubnknLCdLYXlsYScsJ0JyYWRsZXknXTsKIGludGVydmFsID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDQwMDAwIC0gODAwMCArIDEpICsgODAwMCk7CiAgICB2YXIgcnVuID0gc2V0SW50ZXJ2YWwocmVxdWVzdCwgaW50ZXJ2YWwpOwoKICAgIGZ1bmN0aW9uIHJlcXVlc3QoKSB7ICAgCiAgICAgICAgY2xlYXJJbnRlcnZhbChydW4pOwogICAgICAgIGludGVydmFsID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDQwMDAwMCAtIDgwMDAwICsgMSkgKyA4MDAwKTsKICAgICAgICB2YXIgY291bnRyeSA9IGxpc3RDb3VudHJpZXNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogbGlzdENvdW50cmllcy5sZW5ndGgpXTsKICAgICAgICB2YXIgcGxhbiA9IGxpc3RQbGFuc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBsaXN0UGxhbnMubGVuZ3RoKV07CiAgICAgICAgIHZhciBnaG9zdCA9IGdob3N0c1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBnaG9zdHMubGVuZ3RoKV07ICAgCiAgICAgICAgdmFyIG1zZyA9ICc8Yj4nKyBnaG9zdCArJzwvYj4gZnJvbSA8Yj4nICsgY291bnRyeSArICc8L2I+IGp1c3QgZWFybmVkICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCk7IiBvbmNsaWNrPSJqYXZhc2NyaXB0OnZvaWQoMCk7Ij4nICsgcGxhbiArICcgLjwvYT4nOwogICAgICAgICQoIi5tZ20gLnR4dCIpLmh0bWwobXNnKTsKICAgICAgICAkKCIubWdtIikuc3RvcCh0cnVlKS5mYWRlSW4oMzAwKTsKICAgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsgICAKICAgICAgICAgICAgJCgiLm1nbSIpLnN0b3AodHJ1ZSkuZmFkZU91dCgzMDApOwogICAgICAgIH0sIDEwMDAwKTsKICAgICAgICBydW4gPSBzZXRJbnRlcnZhbChyZXF1ZXN0LCBpbnRlcnZhbCk7CiAgICB9Cjwvc2NyaXB0PgoKCjwvYm9keT4KCjwvaHRtbD4K"}},"time_used":429,"timings":{"blocked":-1,"dns":58,"connect":21,"send":0,"wait":321,"receive":0,"ssl":28},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80594.e87444e26f9e12545231.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.292Z","timestamp":1785154590292,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80594.e87444e26f9e12545231.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-a338\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bb61ecc4108c437f625fe1242aae6908\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":41784,"size_decoded":13916,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (8882)","md5":"75148ecd9563758ef37fbf710fa1ed9c","sha1":"de1a10ecd54ec0decbb03a8cd557426111cea6d0","sha256":"cf8c7a93d59e717ec020cee201f3d4cc1c2abdd9d284d8c741acd1489c03835c","sha512":"f58c5f5e173f73a99e68100eddfff45b2ea08d85d707f75a9b525aed76766a2a71017d55a717a9392da38d5c5ae394e073d0e7784e029bda8c8aae2a167f353d","ssdeep":"768:E+Rr6eBG5q/FjGgPqzEthfn9evRIZ3XQl0m0FSCUSxlfHiTzJuqgyLDNZGItbNb6:spKxt59evRIZXxQy8NbNANtfJiO","tlshash":"5f13c83df5d1956372eb84ff4f66f6435a266402b26b6fe0b135d3c0244ac8b1222e6d","first_seen":"2026-07-23T13:38:20.394325Z","last_seen":"2026-07-27T14:18:36.366982Z","times_seen":1424,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NSw4MDU5NCw4MDkzOV0sezgwNDYxOShvKXtvLmV4cG9ydHM9e319LDExNDA2OChvKXtvLmV4cG9ydHM9eyJjb21tb24tdG9vbHRpcCI6ImNvbW1vbi10b29sdGlwLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhpZGRlbiI6ImNvbW1vbi10b29sdGlwLS1oaWRkZW4tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbCI6ImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC0tZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbCI6ImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC1mYXJ0aGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciI6ImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMiOiJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19idXR0b24iOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCI6ImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93IjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlIjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXkiOiJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jayI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay0tZGl2aWRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dCI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduIjoiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WCJ9fSw1NjkzOTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNGZWF0dXJlRW5hYmxlZDooKT0+Z30pO3ZhciByPXQoOTQ4MzgwKSxsPXQoMzc3MjI2KSxjPXQoODU2MTk2KSxuPXQoOTMyMzY1KTtjb25zdCBhPW5ldyByLkRlbGVnYXRlLGk9ImZvcmNlZmVhdHVyZXRvZ2dsZS4iO2NvbnN0IHM9bmV3IGNsYXNze2VuYWJsZUZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGkrbywidHJ1ZSIpLGEuZmlyZShvKX1kaXNhYmxlRmVhdHVyZShvKXtuLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0oaStvLCJmYWxzZSIpLGEuZmlyZShvKX1yZXNldEZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkrbyksYS5maXJlKG8pfW9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQoKXtyZXR1cm4gYX19O2Z1bmN0aW9uIGQobyxlKXtyZXR1cm4oIW9bZV18fC0xIT09b1tlXSkmJighISgidHJ1ZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJ0cnVlIj09PXdpbmRvdy51c2VyPy5zZXR0aW5ncz8uW2krZV0pfHwhKCJmYWxzZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJmYWxzZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltpK2VdKSYmKCEhb1tlXSYmKDE9PT1vW2VdfHwoMCxjLnNob3VsZEFmZmVjdFVzZXIpKGUsb1tlXSkpKSl9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e30sd2luZG93LlRyYWRpbmdWaWV3LkZlYXR1cmVUb2dnbGU9cztjb25zdCBnPSh1PXdpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGV8fHt9LCgwLGwub25XaWRnZXQpKCl8fFByb21pc2UuYWxsKFt0LmUoODU0MzQpLHQuZSg3Mjg1KSx0LmUoMTM5OTMpXSkudGhlbih0LmJpbmQodCw1MDcyODUpKS50aGVuKChvPT57by5wdXNoU3RyZWFtTXVsdGlwbGV4ZXIub24oImZlYXR1cmV0b2dnbGUiLChvPT57Y29uc3QgZT1kKHUsby5uYW1lKTt1W28ubmFtZV09by5zdGF0ZSxlIT09ZCh1LG8ubmFtZSkmJmEuZmlyZShvLm5hbWUpfSkpfSkpLApkLmJpbmQobnVsbCx1KSk7dmFyIHU7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9Z30sNzkyNjEyKG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldEluaXREYXRhOigpPT5sfSk7KDAsdCgyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5Jbml0RGF0YSIpO2NvbnN0IHI9d2luZG93LmluaXREYXRhfHx7fTtmdW5jdGlvbiBsKCl7cmV0dXJuIHJ9fSw5MzIzNjUobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7VFZMb2NhbFN0b3JhZ2U6KCk9PmN9KTtjb25zdCByPSgwLHQoMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBsPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2gobyl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChvKXt9fTtsLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3Qgbz0xMCxlPVtdO2ZvcihsZXQgbz0wO288dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO28rKyl7Y29uc3QgdD10aGlzLmtleShvKTtlLnB1c2goe2tleTp0LGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKHQpKS5sZW5ndGh9KX1lLnNvcnQoKChvLGUpPT5lLmxlbmd0aC1vLmxlbmd0aCkpO2NvbnN0IHQ9ZS5zbGljZSgwLG8pO2Uuc29ydCgoKG8sZSk9PmUua2V5Lmxlbmd0aC1vLmtleS5sZW5ndGgpKTtjb25zdCBsPWUuc2xpY2UoMCxvKTtyLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxyLmxvZ05vcm1hbChgVG9wICR7b30ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KHQpfWApLHIubG9nTm9ybWFsKGBUb3AgJHtvfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShsKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChvPT57ci5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkobyl9YCl9KSl9Y2F0Y2gobyl7fX19LGwucHJvdG90eXBlLmxlbmd0aD0wLGwucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLGwucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sbC5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIG8sZT0wO2ZvcihvIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KG8pJiZlKys7dGhpcy5sZW5ndGg9ZX19LGwucHJvdG90eXBlLmtleT1mdW5jdGlvbihvKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkobyk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW29dfSxsLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKG8pe3JldHVybiB0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0obyk6dm9pZCAwPT09dGhpcy5sb2NhbFN0b3JhZ2Vbb10/bnVsbDp0aGlzLmxvY2FsU3RvcmFnZVtvXX0sbC5wcm90b3R5cGUuc2V0SXRlbT1mdW5jdGlvbihvLGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShvLGUpOnRoaXMubG9jYWxTdG9yYWdlW29dPWUsdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LGwucHJvdG90eXBlLnJlbW92ZUl0ZW09ZnVuY3Rpb24obyl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG8pOmRlbGV0ZSB0aGlzLmxvY2FsU3RvcmFnZVtvXSx0aGlzLl91cGRhdGVMZW5ndGgoKX0sbC5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmNsZWFyKCk6dGhpcy5sb2NhbFN0b3JhZ2U9e30sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9O2NvbnN0IGM9bmV3IGw7d2luZG93LlRWTG9jYWxTdG9yYWdlPWN9LDExNzMxMyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtpc09uTW9iaWxlQXBwUGFnZTooKT0+bH0pO3ZhciByPXQoNTg3NDM2KTtmdW5jdGlvbiBsKG8sZT0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOnR9PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGw9InRydWUiPT09dC5nZXQoIm1vYmlsZWFwcF9uZXciKSxjPSJ0cnVlIj09PXQuZ2V0KCJtb2JpbGVhcHAiKTtpZighZSl7Y29uc3Qgbz1yLmdldCgidHZfYXBwIil8fCIiO2x8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKG8pLGN8fD0iaW9zIj09PW99cmV0dXJuISgibmV3IiE9PW8mJiJhbnkiIT09b3x8IWwpfHwhKCJuZXciPT09b3x8IWMpfX0sNzc5Mzg5KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse0FjdGlvbkdyb3VwOigpPT5sfSk7dmFyIHI9dCg5OTI4MDMpO2NsYXNzIGx7Y29uc3RydWN0b3IobyxlKXt0aGlzLl9hY3Rpb25zPW5ldyBNYXAsdGhpcy5fbWFuYWdlcj1vLHRoaXMub3JkZXI9ZT8ub3JkZXI/PzAsdGhpcy5tb2RhbD0hKCFlfHwhZS5tb2RhbCksZSYmKHRoaXMuZGVzYz1lLmRlc2MpLGUmJmUuaXNEaXNhYmxlZD8iZnVuY3Rpb24iPT10eXBlb2YgZS5pc0Rpc2FibGVkP3RoaXMuaXNEaXNhYmxlZD1lLmlzRGlzYWJsZWQ6dGhpcy5pc0Rpc2FibGVkPSgpPT4hMDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiExLHRoaXMuX21hbmFnZXIucmVnaXN0ZXJHcm91cCh0aGlzKX1hZGQobyl7bGV0IGU9dGhpcy5fYWN0aW9ucy5nZXQoby5ob3RrZXkpO2V8fChlPVtdLHRoaXMuX2FjdGlvbnMuc2V0KG8uaG90a2V5LGUpKTtjb25zdCB0PW5ldyByLkFjdGlvbih0aGlzLG8pO3JldHVybiBlLnB1c2godCksdH1yZW1vdmUobyl7Y29uc3QgZT10aGlzLl9hY3Rpb25zLmdldChvLmhvdGtleSk7aWYoIWUpcmV0dXJuCjtjb25zdCB0PWUuZmluZEluZGV4KChlPT5lPT09bykpO3Q+PTAmJigxPT09ZS5sZW5ndGg/dGhpcy5fYWN0aW9ucy5kZWxldGUoby5ob3RrZXkpOmUuc3BsaWNlKHQsMSkpfWhhbmRsZUhvdGtleShvLGUpe2NvbnN0IHQ9dGhpcy5fYWN0aW9ucy5nZXQobyk7aWYoIXQpcmV0dXJuITE7Zm9yKGNvbnN0IHIgb2YgdClpZigoIXIuZWxlbWVudHx8ZS50YXJnZXQmJnIuZWxlbWVudC5jb250YWlucyhlLnRhcmdldCkpJiYhci5pc0Rpc2FibGVkKGUpKXJldHVybiBlLnJlcGVhdCYmIXIuaXNSZXBlYXRBY2NlcHRlZHx8KHIuaGFuZGxlcihlKSx0aGlzLl9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobykpLGUucHJldmVudERlZmF1bHQoKSwhMDtyZXR1cm4hMX1wcm9tb3RlKCl7dGhpcy5fbWFuYWdlci5wcm9tb3RlR3JvdXAodGhpcyl9ZGVzdHJveSgpe2Zvcihjb25zdFssb11vZiB0aGlzLl9hY3Rpb25zKWZvcihjb25zdCBlIG9mIG8pZS5kZXN0cm95KCk7dGhpcy5fYWN0aW9ucy5jbGVhcigpLHRoaXMuX21hbmFnZXIudW5yZWdpc3Rlckdyb3VwKHRoaXMpfXN0YXRpYyBzZXRNYXRjaGVkSG90a2V5SGFuZGxlcihvKXtsLl9tYXRjaGVkSG90a2V5SGFuZGxlcj1vfV9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobyl7bC5fbWF0Y2hlZEhvdGtleUhhbmRsZXImJmwuX21hdGNoZWRIb3RrZXlIYW5kbGVyKG8pfX19LDI5MTM0MShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtBY3Rpb25NYW5hZ2VyOigpPT5pfSk7dmFyIHI9dCgyMzIzNjQpLGw9dCgyMzU3MjQpLGM9dCg3MjEzNjkpLG49dCg2OTYyMDgpO2NsYXNzIGEgZXh0ZW5kcyByLldhdGNoZWRWYWx1ZXtzZXRWYWx1ZShvLGUpe2NvbnN0IHQ9dGhpcy52YWx1ZSgpOyhlfHx2b2lkIDA9PT10fHx0LmNvZGUhPT1vLmNvZGV8fHQubW9kaWZpZXJzIT09by5tb2RpZmllcnMpJiZzdXBlci5zZXRWYWx1ZShvKX19Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMuX2dyb3Vwcz1bXSx0aGlzLl9wcmVzc2VkS2V5cz1uZXcgci5XYXRjaGVkVmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlPW5ldyBhKG5ldyBuLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwKSksdGhpcy5fa2V5RG93bkxpc3RlbmVyPW89PntpZihvLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IGU9KDAsbC5oYXNoRnJvbUV2ZW50KShvKTtpZih0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZShlKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUuc2V0VmFsdWUobmV3IG4uS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSxvLmNvZGUpKSwhKDAsYy5pc05hdGl2ZVVJSW50ZXJhY3Rpb24pKGUsby50YXJnZXQpKWZvcihsZXQgdD10aGlzLl9ncm91cHMubGVuZ3RoO3QtLSA+MDspe2NvbnN0IHI9dGhpcy5fZ3JvdXBzW3RdO2lmKCFyLmlzRGlzYWJsZWQoKSl7aWYoci5oYW5kbGVIb3RrZXkoZSxvKSlyZXR1cm47aWYoci5tb2RhbClyZXR1cm59fX0sdGhpcy5fa2V5VXBMaXN0ZW5lcj1vPT57Y29uc3QgZT0oMCxsLmhhc2hGcm9tRXZlbnQpKG8pO3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKGUpLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAsbC5tb2RpZmllcnNGcm9tRXZlbnQpKG8pLCIiKSl9LHRoaXMuX2JsdXJFdmVudD0oKT0+e3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKDApLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoMCwiIikpfSx0aGlzLl9tb3VzZUV2ZW50PW89Pntjb25zdCBlPSgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSx0PTI1NSYodGhpcy5fcHJlc3NlZEtleXMudmFsdWUoKT8/MCk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoZXx0KX19bGlzdGVuKG8pe28uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXVubGlzdGVuKG8pe28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXJlZ2lzdGVyR3JvdXAobyl7dGhpcy5fZ3JvdXBzLnB1c2gobyksdGhpcy5zb3J0R3JvdXBzKCl9dW5yZWdpc3Rlckdyb3VwKG8pe2ZvcihsZXQgZT10aGlzLl9ncm91cHMubGVuZ3RoO2UtLTspdGhpcy5fZ3JvdXBzW2VdPT09byYmdGhpcy5fZ3JvdXBzLnNwbGljZShlLDEpfXByb21vdGVHcm91cChvKXtjb25zdCBlPXRoaXMuX2dldE1vZGFsT3JkZXJFcG9jaCgpLHQ9cyhvLGUpO2xldCByPXRoaXMuX2dyb3Vwcy5maW5kSW5kZXgoKG89PnMobyxlKT09PXQpKSxsPTA7Zm9yKDtyPHRoaXMuX2dyb3Vwcy5sZW5ndGgmJnModGhpcy5fZ3JvdXBzW3JdLGUpPT09dDspe2NvbnN0IGM9dGhpcy5fZ3JvdXBzW3JdO2M9PT1vP2w9MTpzKGMsZSk9PT10JiYodGhpcy5fZ3JvdXBzW3ItbF09YykscisrfXRoaXMuX2dyb3Vwc1tyLWxdPW99cHJlc3NlZEtleXMoKXtyZXR1cm4gdGhpcy5fcHJlc3NlZEtleXMucmVhZG9ubHkoKX1rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKXtyZXR1cm4gdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnJlYWRvbmx5KCl9c29ydEdyb3Vwcygpe2NvbnN0IG89dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCk7dGhpcy5fZ3JvdXBzLnNvcnQoKChlLHQpPT5zKHQsbyktcyhlLG8pKSl9X2dldE1pbk9yZGVyKCl7cmV0dXJuIHRoaXMuX2dyb3Vwcy5yZWR1Y2UoKChvLGUpPT5NYXRoLm1pbihvLGUub3JkZXIpKSwwKX0KX2dldE1vZGFsT3JkZXJFcG9jaCgpe3JldHVybi0yKihNYXRoLmFicyh0aGlzLl9nZXRNaW5PcmRlcigpKS0xKX19ZnVuY3Rpb24gcyhvLGUpe3JldHVybiBvLm9yZGVyKyhvLm1vZGFsP2U6MCl9fSw5OTI4MDMobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7QWN0aW9uOigpPT5yfSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihvLGUpe3RoaXMuX2dyb3VwPW87Y29uc3R7aG90a2V5OnQsaGFuZGxlcjpyLGRlc2M6bCxpc0Rpc2FibGVkOmMsZWxlbWVudDpuPW51bGwsaXNSZXBlYXRBY2NlcHRlZDphPSExfT1lO3RoaXMuaG90a2V5PXQsdGhpcy5oYW5kbGVyPXIsdGhpcy5kZXNjPWwsdGhpcy5lbGVtZW50PW4sdGhpcy5pc1JlcGVhdEFjY2VwdGVkPWEsdGhpcy5pc0Rpc2FibGVkPWM/ImZ1bmN0aW9uIj09dHlwZW9mIGM/YzooKT0+ITA6KCk9PiExfWRlc3Ryb3koKXt0aGlzLl9ncm91cCYmKHRoaXMuX2dyb3VwLnJlbW92ZSh0aGlzKSx0aGlzLl9ncm91cD1udWxsKX19fSw3MjcwOShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVHcm91cDooKT0+bn0pO3ZhciByPXQoMjkxMzQxKSxsPXQoNzc5Mzg5KTtjb25zdCBjPW5ldyByLkFjdGlvbk1hbmFnZXI7Yy5wcmVzc2VkS2V5cygpLGMua2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCk7ZnVuY3Rpb24gbihvKXtyZXR1cm4gbmV3IGwuQWN0aW9uR3JvdXAoYyxvKX19LDY5NjIwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9Pmx9KTt2YXIgcj10KDIzNTcyNCk7Y2xhc3MgbHtjb25zdHJ1Y3RvcihvLGUpe3RoaXMubW9kaWZpZXJzPW8sdGhpcy5jb2RlPWV9YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7cmV0dXJuIHIuaXNNYWNLZXlib2FyZD8iTWV0YUxlZnQiPT09dGhpcy5jb2RlfHwiTWV0YVJpZ2h0Ij09PXRoaXMuY29kZXx8Ik9TTGVmdCI9PT10aGlzLmNvZGV8fCJPU1JpZ2h0Ij09PXRoaXMuY29kZToiQ29udHJvbExlZnQiPT09dGhpcy5jb2RlfHwiQ29udHJvbFJpZ2h0Ij09PXRoaXMuY29kZX19fSwzODcyMzEobyxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKG8sZSx0PXt9KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxvLGZ1bmN0aW9uKG8sZSx0PXt9KXtjb25zdCByPU9iamVjdC5hc3NpZ24oe30sZSk7Zm9yKGNvbnN0IGwgb2YgT2JqZWN0LmtleXMoZSkpe2NvbnN0IGM9dFtsXXx8bDtjIGluIG8mJihyW2xdPVtvW2NdLGVbbF1dLmpvaW4oIiAiKSl9cmV0dXJuIHJ9KG8sZSx0KSl9dC5kKGUse21lcmdlVGhlbWVzOigpPT5yfSl9LDQ5MjY3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyl7Y29uc3QgZT1bXTtmb3IoY29uc3QgdCBpbiBvKWlmKG8uaGFzT3duUHJvcGVydHkodCkmJm51bGwhPW9bdF0pe2NvbnN0IHI9b1t0XSxsPSJvYmplY3QiPT10eXBlb2Ygcj9KU09OLnN0cmluZ2lmeShyKTpTdHJpbmcocik7ZS5wdXNoKHtrZXk6dCxwYWlyOmVuY29kZVVSSUNvbXBvbmVudCh0KSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGwpfSl9cmV0dXJuIGUuc29ydCgoKG8sZSk9Pm8ua2V5PmUua2V5PzE6by5rZXk8ZS5rZXk/LTE6MCkpLm1hcCgobz0+by5wYWlyKSkuam9pbigiJiIpfXQuZChlLHtjcmVhdGVVcmxQYXJhbXM6KCk9PnJ9KX0sMTA3MDQ1KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse051bWVyaWNGb3JtYXR0ZXI6KCk9PmN9KTt2YXIgcj10KDU5ODkyMiksbD10KDU0NjQ4NSk7Y2xhc3MgY3tjb25zdHJ1Y3RvcihvPXt9KXt0aGlzLl9vcHRpb25zPW99Zm9ybWF0KG8sZT17fSl7aWYoIU51bWJlci5pc0Zpbml0ZShvKSlyZXR1cm4gU3RyaW5nKG8pO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0PXRoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0LG5vRXhwb25lbnRpYWxGb3JtOm49dGhpcy5fb3B0aW9ucy5ub0V4cG9uZW50aWFsRm9ybX09ZSx7bWluUHJlY2lzaW9uOmEscHJlY2lzaW9uOml9PXRoaXMuX29wdGlvbnMscz0oMCxsLmdldE51bWJlckZvcm1hdCkodCk7cmV0dXJuIHZvaWQgMD09PWk/Yy5fZm9ybWF0Tm9FSW1wbChvLHMsaSxhKTooMCxyLmZvcm1hdE51bWJlcikobyxzLGksbixhKX1wYXJzZShvLGUpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LHByZWNpc2lvbjpjfT10aGlzLl9vcHRpb25zLG49KDAsbC5nZXROdW1iZXJGb3JtYXQpKHR8fGU/Lmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGE9KDAsci5wYXJzZU51bWJlcikobyxuKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGEpPyhjJiYoYT0rYS50b0ZpeGVkKGMpKSx7cmVzOiEwLHZhbHVlOmF9KTp7cmVzOiExfX1zdGF0aWMgZm9ybWF0Tm9FKG8sZSl7cmV0dXJuIHRoaXMuX2Zvcm1hdE5vRUltcGwobyxlKX1zdGF0aWMgX2Zvcm1hdE5vRUltcGwobyxlLHQsbCl7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShvKT8oZT1lPz97Z3JvdXBpbmdTZXBhcmF0b3I6IiIsZGVjaW1hbFNpZ246Ii4ifSwoMCxyLmZvcm1hdE51bWJlcikobyxlLHQsITAsbCkpOlN0cmluZyhvKX19fSw5MDEwMjIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7U0VQQVJBVE9SX1BSRUZJWDooKT0+cn0pO2NvbnN0IHI9IiMjIyJ9LDM1NjM4MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRUb29sdGlwRGF0YTooKT0+bCxzZXRUb29sdGlwRGF0YTooKT0+Y30pO2NvbnN0IHI9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbChvLGUpe2NvbnN0IHQ9ci5nZXQobyk7cmV0dXJuIHQgaW5zdGFuY2VvZiBGdW5jdGlvbj90KGUpOnQmJnRbZV19ZnVuY3Rpb24gYyhvLGUsdCl7aWYodCBpbnN0YW5jZW9mIEZ1bmN0aW9uKXJldHVybiB2b2lkIHIuc2V0KG8sdCk7Y29uc3QgbD1yLmdldChvKSxjPXZvaWQgMD09PWx8fGwgaW5zdGFuY2VvZiBGdW5jdGlvbj97fTpsO2NbZV09dCxyLnNldChvLGMpfX0sNDkwMzc4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldERhdGFGcm9tVGFyZ2V0OigpPT5tLGdldFRvb2x0aXA6KCk9PmgsaGlkZVRvb2x0aXA6KCk9PmYsCnNldFN0eWxlOigpPT5iLHNob3dUb29sdGlwOigpPT55fSk7dmFyIHIsbD10KDEzODYzOCksYz10KDQ0MzU1Nyksbj10KDk2OTE2OCksYT0odCg4MjkxODApLHQoNTE4NzUpKSxpPXQoNjQwNzQ0KSxzPXQoMzE4OTc0KSxkPXQoNjg2NjUwKSxnPXQoMzU2MzgwKSx1PXQoMzQ1MTUxKSxwPXQoMTE0MDY4KTtmdW5jdGlvbiBtKG8pe2NvbnN0IGU9ZnVuY3Rpb24obyl7Y29uc3QgZT1vLmhhc0F0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik/by5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcCIpOm8uZ2V0QXR0cmlidXRlKCJ0aXRsZSIpO3JldHVybiBlJiYoKDAsZy5zZXRUb29sdGlwRGF0YSkobywidGV4dCIsZSksby5yZW1vdmVBdHRyaWJ1dGUoInRpdGxlIikpLCgwLGcuZ2V0VG9vbHRpcERhdGEpKG8sInRleHQiKXx8IiJ9KG8pLHQ9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxyPXtoOnQuaGVpZ2h0LHc6dC53aWR0aCx4OnQubGVmdCx5OnQudG9wfSxsPW8uZ2V0QXR0cmlidXRlKCJkYXRhLWNvbG9yLXRoZW1lIil8fCIiLGM9by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLWh0bWwiKSxuPXBhcnNlSW50KG8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtZGVsYXkiKXx8IiIpLGE9cGFyc2VJbnQoby5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1kZWJvdW5jZSIpfHwiIik7bGV0IGk9e3R5cGU6Im5vbmUifTtyZXR1cm4gZSYmKGk9e3R5cGU6Yz8iaHRtbCI6InRleHQiLGRhdGE6ZX0pLHthYm92ZTpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYWJvdmUiKSxiZWxvdzpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYmVsb3ciKSxvdGw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW90bCIpLG90cjpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtb3RyIiksdmVydGljYWw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLXZlcnRpY2FsIiksaG90a2V5Om8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtaG90a2V5IiksbmFycm93Om8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1uYXJyb3ciKSx3aWRlOm8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC13aWRlIiksY29sb3JUaGVtZTpsLHRvb2x0aXBEZWxheTpuLHRvb2x0aXBEZWJvdW5jZTphLHJlY3Q6cixjb250ZW50OmksdGFyZ2V0Om99fWZ1bmN0aW9uIGgobyl7Y29uc3QgZT0oMCxsLmVuc3VyZU5vdE51bGwpKEYpLmNsb25lTm9kZSghMCksdD1EKGUpLHtjb250ZW50OnJ9PW87c3dpdGNoKHIudHlwZSl7Y2FzZSJlbGVtZW50Ijp0LmlubmVySFRNTD0iIix0LmFwcGVuZENoaWxkKHIuZGF0YSk7YnJlYWs7Y2FzZSJodG1sIjp0LmlubmVySFRNTD1yLmRhdGE7YnJlYWs7Y2FzZSJ0ZXh0IjppZihvLmhvdGtleSl7Y29uc3Qgbz0oMCxsLmVuc3VyZU5vdE51bGwpKEMpLmNsb25lTm9kZSghMCk7by5pbm5lclRleHQ9ci5kYXRhLHQuYXBwZW5kQ2hpbGQobyl9ZWxzZSB0LmlubmVyVGV4dD1yLmRhdGF9aWYoby5ob3RrZXkpe2NvbnN0IGU9Im5vbmUiIT09ci50eXBlLGM9KDAsbC5lbnN1cmVOb3ROdWxsKShFKS5jbG9uZU5vZGUoITApLG49KDAsdS5ob3RLZXlEZXNlcmlhbGl6ZSkoby5ob3RrZXkpLGE9bi5rZXlzLm1hcCgobz0+YDxzcGFuIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIl19Ij4ke299PC9zcGFuPmApKTtjLmlubmVySFRNTD1mdW5jdGlvbihvLGUpe2NvbnN0IHQ9L3tcZH18e2hvdGtleV9cZH0vZ2k7cmV0dXJuIG8ucmVwbGFjZSh0LChvPT57Y29uc3QgdD1OdW1iZXIoby5tYXRjaCgvXGQvKSk7cmV0dXJuIGVbdF19KSl9KG4udGV4dCxhKS5yZXBsYWNlKC9cc1wrXHMvZyxgPHNwYW4gY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbiJdfSI+Kzwvc3Bhbj5gKSx0LmNsYXNzTGlzdC5hZGQocFsiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5Il0pLGUmJmMuY2xhc3NMaXN0LmFkZChwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIl0pLHQuYXBwZW5kQ2hpbGQoYyl9cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGEucHJldmVudERlZmF1bHQpLGV9ZnVuY3Rpb24gYihvLGUpe2NvbnN0IHQ9ZS5yZWN0O2lmKCF0KXJldHVybjsoMCxkLnNldFRvb2x0aXBDb2xvclRoZW1lKShvLGUuY29sb3JUaGVtZXx8ImRlZmF1bHQiKTtjb25zdCByPUQobyksbD1vLnF1ZXJ5U2VsZWN0b3IoYC4ke3BbImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19YCk7ZS5hZGRDbGFzcyYmby5jbGFzc0xpc3QuYWRkKGUuYWRkQ2xhc3MpLGUuYWRkQm9keUNsYXNzJiZyLmNsYXNzTGlzdC5hZGQoZS5hZGRCb2R5Q2xhc3MpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSJdLEJvb2xlYW4oZS53aWRlKSksci5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIl0sQm9vbGVhbihlLm5vUGFkZGluZykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93Il0sQm9vbGVhbihlLm5hcnJvdykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucyJdLCEwKSxyLnN0eWxlLmxlZnQ9digwKSxyLnN0eWxlLndpZHRoPXYoci5jbGllbnRXaWR0aCsoQm9vbGVhbihlLm5vUGFkZGluZyk/MDoyKSk7Y29uc3QgYz1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLGE9cy5DaGVja01vYmlsZS5pT1MoKXx8cy5DaGVja01vYmlsZS5BbmRyb2lkKCl8fCgwLHMuc3VwcG9ydFRvdWNoKSgpJiYoMCxzLmlzTWFjKSgpP3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCxnPWUudmVydGljYWwsdT1lLmV4dGVuZE1hcmdpbnx8ZyYmdC53PDIwfHwhZyYmdC5oPDIwO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZmFydGhlciJdLHUpLApvLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLXZlcnRpY2FsIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsIl0sIWcpO2NvbnN0IG09ZnVuY3Rpb24obyl7cmV0dXJuIG8ucXVlcnlTZWxlY3RvcihgLiR7cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiXX1gKX0obyksaD1vLm9mZnNldEhlaWdodDtpZihnKXtjb25zdCBzPTEwLGQ9YS0xMCxnPTEyLHU9cytnLGI9ZC1nLHk9KDAsaS5jbGFtcCkodC55K3QuaC8yLHUsYiktaC8yLGY9eStoO28uc3R5bGUubGVmdD12KHQueCt0LncpLG8uc3R5bGUudG9wPXYoeSkseTxzP3Iuc3R5bGUudG9wPWwuc3R5bGUudG9wPXYocy15KTpmPmQmJihyLnN0eWxlLnRvcD1sLnN0eWxlLnRvcD12KGQtZikpO2NvbnN0e3JpZ2h0Ond9PShvLnF1ZXJ5U2VsZWN0b3IoIjpsYXN0LWNoaWxkIil8fHIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLF89dysxMD5jO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sXyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIV8pO2xldCBrPV8/ImFmdGVyIjoiYmVmb3JlIjsoMCxuLmlzUnRsKSgpPyhrPWUub3RyPyJhZnRlciI6ayxrPWUub3RsPyJiZWZvcmUiOmspOihrPWUub3RyPyJiZWZvcmUiOmssaz1lLm90bD8iYWZ0ZXIiOmspLG0uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVmb3JlIl0sImJlZm9yZSI9PT1rKSxtLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyIl0sImFmdGVyIj09PWspLCJhZnRlciI9PT1rJiYoby5zdHlsZS5sZWZ0PSJhdXRvIixvLnN0eWxlLnJpZ2h0PXYoYy10LngpKX1lbHNle2NvbnN0IG49dC54LShyLm9mZnNldFdpZHRoLXQudykvMixpPWMtby5vZmZzZXRXaWR0aC0yMDw9MD8oYy1vLm9mZnNldFdpZHRoKS8yOjEwLHM9Yy1pLW8ub2Zmc2V0V2lkdGgsZD1NYXRoLm1heChpLE1hdGgubWluKG4scykpO28uc3R5bGUubGVmdD12KGQpO2NvbnN0IGc9czxuO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIWcpO2NvbnN0IHU9ZnVuY3Rpb24obyxlLHQscil7aWYoby5hYm92ZSlyZXR1cm4gTChlLHIpPyJhYm92ZSI6ImJlbG93IjtpZihvLmJlbG93KXJldHVybiBmdW5jdGlvbihvLGUsdCl7cmV0dXJuIHQueSt0LmgrZSsxMDxvfShlLHQscik/ImJlbG93IjoiYWJvdmUiO3JldHVybiBMKHQscik/ImFib3ZlIjoiYmVsb3cifShlLGEsaCx0KTsiYWJvdmUiPT09dT9vLnN0eWxlLmJvdHRvbT12KGEtdC55KTpvLnN0eWxlLnRvcD12KHQueSt0LmgpLG0uY2xhc3NMaXN0LmFkZCgiYWJvdmUiPT09dT9wWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUiXTpwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ciXSk7Y29uc3R7bGVmdDpifT1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2xldCB5PU1hdGgudHJ1bmModC54K3Qudy8yLShiK3IuY2xpZW50V2lkdGgvMikpO28uc3R5bGUubGVmdD12KGQreSksby5zdHlsZS53aWR0aD12KHIuY2xpZW50V2lkdGgrbC5jbGllbnRXaWR0aCkseT1nP01hdGgubWF4KDAseSk6TWF0aC5taW4oMCx5KSxsLnN0eWxlLmxlZnQ9digteSksci5zdHlsZS5sZWZ0PXYoLXkpfX1mdW5jdGlvbiB5KG8pe28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0taGlkZGVuIl0sITEpfWZ1bmN0aW9uIGYobyl7by5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMCl9ZnVuY3Rpb24gdihvKXtyZXR1cm5gJHtNYXRoLmZsb29yKG8pfXB4YH0hZnVuY3Rpb24obyl7b1tvLlZpZXdwb3J0UGFkZGluZz0xMF09IlZpZXdwb3J0UGFkZGluZyJ9KHJ8fChyPXt9KSk7Y29uc3Qgdz1gXG5cdDxkaXYgaWQ9ImNvbW1vbi10b29sdGlwLXdyYXBwZXIiIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwIl19Ij5cblx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19IiA+XG5cdFx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ib2R5Il19IGpzLXRvb2x0aXAtYm9keSI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciJdfSI+PC9kaXY+XG5cdDwvZGl2PlxuYCxfPWBcblx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIl19Ij48L2Rpdj5cbmAsaz1gXG5cdDxkaXYgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0Il19Ij48L2Rpdj5cbmAsRj0oMCxjLnBhcnNlSHRtbEVsZW1lbnQpKHcpLEU9KDAsYy5wYXJzZUh0bWxFbGVtZW50KShfKSxDPSgwLGMucGFyc2VIdG1sRWxlbWVudCkoayk7ZnVuY3Rpb24gRChvKXtyZXR1cm4gby5xdWVyeVNlbGVjdG9yKGAuJHtwWyJjb21tb24tdG9vbHRpcF9fYm9keSJdfWApfWZ1bmN0aW9uIEwobyxlKXtyZXR1cm4gMTArbzxlLnl9fSwxNjc4OTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7ZW1wdHk6KCk9Pm4sc2V0VG9vbHRpcDooKT0+YX0pO2NvbnN0IHI9InRvb2x0aXAtcm9vdC1lbGVtZW50IjtsZXQgbDtmdW5jdGlvbiBjKCl7Y29uc3Qgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChyKTtvP2w9bzoobD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxsLmlkPXIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsKSl9ZnVuY3Rpb24gbigpe2wmJihsLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gYShvKXtuKCksbHx8YygpLGwuYXBwZW5kQ2hpbGQobyl9ImludGVyYWN0aXZlIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/YygpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGMpfSw2NTg5OTUobyxlLHQpeyJ1c2Ugc3RyaWN0Igo7dC5kKGUse2NsZWFyU2NoZWR1bGU6KCk9Pm4sc2NoZWR1bGVIaWRlOigpPT5pLHNjaGVkdWxlUmVtb3ZlOigpPT5hLHNjaGVkdWxlUmVuZGVyOigpPT5zfSk7bGV0IHI9MCxsPTAsYz0wO2Z1bmN0aW9uIG4oKXtjbGVhclRpbWVvdXQociksY2xlYXJUaW1lb3V0KGwpLGNsZWFyVGltZW91dChjKX1mdW5jdGlvbiBhKG8sZSl7Yz1zZXRUaW1lb3V0KG8sZSl9ZnVuY3Rpb24gaShvLGUpe2w9c2V0VGltZW91dChvLGUpfWZ1bmN0aW9uIHMobyxlKXtyPXNldFRpbWVvdXQobyxlKX19LDY4NjY1MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtzZXRUb29sdGlwQ29sb3JUaGVtZTooKT0+Y30pO2NvbnN0IHI9e2RlZmF1bHQ6IiIsd2hpdGU6InRoZW1lLXdoaXRlIixjaGFydDoidGhlbWUtY2hhcnQiLG5ld3M6InRoZW1lLW5ld3MiLCJyb3VuZC1zaGFkb3ciOiJ0aGVtZS1yb3VuZC1zaGFkb3cifSxsPU9iamVjdC5rZXlzKHIpO2Z1bmN0aW9uIGMobyxlKXtjb25zdCB0PWwuaW5jbHVkZXMoZSk/cltlXToiIjtvLmNsYXNzTGlzdC5yZW1vdmUoLi4ubC5tYXAoKG89PnJbb10pKS5maWx0ZXIoKG89PiEhbykpKSx0JiYhby5jbGFzc0xpc3QuY29udGFpbnModCkmJm8uY2xhc3NMaXN0LmFkZCh0KX19LDc0MjU3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtyZXR1cm4gbyYmby51dG1fY2FtcGFpZ24mJihvLnV0bV9jYW1wYWlnbis9YC0ke2V9YCksb31hc3luYyBmdW5jdGlvbiBsKG8sZSxyLGwpe2lmKCJsZW50YXJ1Ij09PW8pe2NvbnN0e2dldExlbnRhQ29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDQ0MjUzKSx0LmUoODUwMzgpXSkudGhlbih0LmJpbmQodCwyODQwNDEpKTtyZXR1cm4gbygpfWlmKCJjbW9uZXljb210dyI9PT1vKXtjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDY0NDUpLHQuZSg3MTM5NCldKS50aGVuKHQuYmluZCh0LDc3Nzc2OSkpO3JldHVybiBvKGUscil9aWYoIm5ldyI9PT1sKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg5Nzc5NyksdC5lKDc2MDQwKV0pLnRoZW4odC5iaW5kKHQsOTgxMTU3KSk7cmV0dXJuIG8oZSxyKX1pZigid2l0aF9ib3JkZXIiPT09bCl7Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNTM1MjEpLHQuZSgxNjgxMyldKS50aGVuKHQuYmluZCh0LDg1MjY2OSkpO3JldHVybiBvKGUscil9aWYoImxhcmdlX3RyYWRlIj09PWwpe2NvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDc0MDExKSx0LmUoNzkwNDEpXSkudGhlbih0LmJpbmQodCw0OTM1NTkpKTtyZXR1cm4gbyhlLHIpfXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDk3NTA5KV0pLnRoZW4odC5iaW5kKHQsNzA1NzkwKSk7cmV0dXJuIG8oZSxyKX19dC5kKGUse2FkZFV0bUNhbXBhaWduU291cmNlOigpPT5yLGdldEN1c3RvbWVyQ29weXJpZ2h0RGF0YTooKT0+bH0pfSw3NDgwMDIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9PnN9KTt2YXIgcj10KDIyMTA2MSksbD10KDM4NDAxNyksYz10KDUyODg2NCk7Y29uc3Qgbj13aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVHx8Imh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYueHN0YWdpbmctd2lkZ2V0LnR2IixhPSgwLHIuZ2V0TG9nZ2VyKSgiV2lkZ2V0U2hlcmlmZi5XaWRnZXQiKTtsZXQgaT1udWxsO2FzeW5jIGZ1bmN0aW9uIHMoKXtyZXR1cm4gbnVsbD09PWkmJihpPWF3YWl0IGFzeW5jIGZ1bmN0aW9uKCl7Y29uc3Qgbz1mdW5jdGlvbigpe2lmKGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aClyZXR1cm4gZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW2RvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgtMV07dHJ5e3JldHVybiBuZXcgVVJMKGRvY3VtZW50LnJlZmVycmVyKS5vcmlnaW59Y2F0Y2gobyl7cmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbnx8bnVsbH19KCk7aWYobnVsbD09PW8pcmV0dXJuIGEubG9nV2FybigiYW5jZXN0b3JPcmlnaW4gaXMgdW5kZWZpbmVkIiksUHJvbWlzZS5yZXNvbHZlKFtdKTtjb25zdCBlPW5ldyBVUkwoIi9zaGVyaWZmL2FwaS92MS9ydWxlcy9zZWFyY2giLG4pO2Uuc2VhcmNoUGFyYW1zLmFwcGVuZCgib3JpZ2luIixvKTtyZXR1cm4oYXdhaXQoMCxsLmZldGNoKShlLnRvSlNPTigpKS50aGVuKChvPT57aWYoIW8ub2spdGhyb3cgbmV3IEVycm9yKCJHdWFyZCByZXF1ZXN0IGVycm9yIG9jY3VyZWQiKTtyZXR1cm4gMjA0PT09by5zdGF0dXM/UHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSk6by5qc29uKCl9KSkuY2F0Y2goKG89PihhLmxvZ1dhcm4oby5tZXNzYWdlKSxQcm9taXNlLnJlc29sdmUoe2FjdGlvbnM6W119KSkpKSkuYWN0aW9ucy5maWx0ZXIoKG89PmMud2lkZ2V0U2hlcmlmZkFjdGlvbnMuaGFzKG8pKSl9KCkpLFByb21pc2UucmVzb2x2ZShpKX19LDI2NTEwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9Pml9KTt2YXIgcj10KDEzODYzOCksbD10KDc0ODAwMiksYz10KDY1MzgxNyksbj10KDc0MjU3NyksYT10KDUyODg2NCk7ZnVuY3Rpb24gaShvLGUsdCxpPXt9KXtpZihudWxsPT09by5wYXJlbnRFbGVtZW50KXJldHVybiBjb25zb2xlLndhcm4oIkNhbiBub3Qgd3JhcCAnZWxXaWRnZXRDb250YWluZXInIGJlY2F1c2UgaXQgaGFzIG5vIHBhcmVudEVsZW1lbnQiKSxvO2xldCBzPW51bGwsZD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKTtjb25zdCBnPW51bGwhPT1kO2lmKGcpe2Q9KDAsci5lbnN1cmVOb3ROdWxsKShkKSxzPSgwLApyLmVuc3VyZU5vdE51bGwpKGQucGFyZW50RWxlbWVudCk7bGV0IG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1oZWFkIik7bnVsbD09PW8mJihvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8uY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlciIpLG8uY2xhc3NMaXN0LmFkZCgianMtZW1iZWQtd2lkZ2V0LWhlYWQiKSxzLmluc2VydEJlZm9yZShvLGQpKX1lbHNlIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iikscy5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlciIpLHMuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIGpzLWVtYmVkLXdpZGdldC1oZWFkIj48L2Rpdj48ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keSBqcy1lbWJlZC13aWRnZXQtYm9keSI+PC9kaXY+JyxkPXMucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1ib2R5Iik7aWYoaS5vdmVyZmxvd0F1dG8mJmQuY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHktLW92ZXJmbG93X2F1dG8iKSxpLnNob3dCb3JkZXJPblRyYW5zcGFyZW50JiZkLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQiKSwhaS5pc1doaXRlTGFiZWwpeyFhc3luYyBmdW5jdGlvbihvLGUsdCxpLHM9e30pe2NvbnN0IGQ9cy5pc1NoZXJpZmZEaXNhYmxlZD9bXTphd2FpdCgwLGwuZ2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnMpKCksZz1kLmluY2x1ZGVzKGEuS25vd25BY3Rpb24uTGFyZ2VUcmFkZUxvZ28pLHU9ZnVuY3Rpb24obyl7cmV0dXJuWyJjcnlwdG8tY29pbnMtaGVhdG1hcCIsImZvcmV4LWNyb3NzLXJhdGVzIiwibWFya2V0LW92ZXJ2aWV3Iiwic3ltYm9sLW92ZXJ2aWV3IiwibWFya2V0LXF1b3RlcyIsInN0b2NrLWhlYXRtYXAiLCJzY3JlZW5lciIsImZvcmV4LWhlYXQtbWFwIiwiY3J5cHRvLW1rdC1zY3JlZW5lciIsImV2ZW50cyIsImhvdGxpc3RzIl0uaW5jbHVkZXMobyl9KGUpLHA9ZyYmdT8ibGFyZ2VfdHJhZGUiOnZvaWQgMCxtPWF3YWl0KDAsbi5nZXRDdXN0b21lckNvcHlyaWdodERhdGEpKHMuY3VzdG9tZXIscy5sb2NhbGUsKDAsbi5hZGRVdG1DYW1wYWlnblNvdXJjZSkoey4uLml9LCJsb2dvIikscCksaD1wPz9zLmNvcHlyaWdodE9wdGlvbnM/Lm1vZGU/PyJzbWFsbF9vbGQiOygwLHIuZW5zdXJlTm90TnVsbCkobykuYXBwZW5kQ2hpbGQoKDAsYy5jcmVhdGVDb3B5cmlnaHRMYWJlbCkoe3NoZXJpZmZPcHRpb25zOmQsc25hcFRvRWRnZTp0LC4uLnMuY29weXJpZ2h0T3B0aW9ucywuLi5tLG1vZGU6aH0pKX0oZCxlLCFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJpcy10cmFuc3BhcmVudCIpfHxCb29sZWFuKGkuc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQpLHQsaSl9cmV0dXJuIGd8fChvLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHMsbyksZC5hcHBlbmRDaGlsZChvKSksb319LDc1MTU1NyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9PnIuY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyfSk7dCg4MDQ2MTkpO3ZhciByPXQoMjY1MTA4KX0sNDI5NjYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSk7dmFyIHI9dCg4NTYzMjQpLGw9dCg5NjMwOTgpOygwLHIucmVnaXN0ZXJMYW5ndWFnZUdldHRlcikoKCgpPT53aW5kb3cubGFuZ3VhZ2V8fCIiKSksKDAsci5yZWdpc3Rlckxhbmd1YWdlQ29kZU1hcHBlcikobC5nZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2UpfSw2MzE2MzQobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0SW5pdERhdGE6KCk9Pmx9KTt2YXIgcj10KDc5MjYxMik7ZnVuY3Rpb24gbCgpe3JldHVybigwLHIuZ2V0SW5pdERhdGEpKCl9fSw0MDAxODEobyxlLHQpeyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNzA2NDQpLHQuZSg5NTIwNyldKS50aGVuKHQuYmluZCh0LDQ3NzE1MCkpO3JldHVybiBvKCl9dC5kKGUse2dldFRyYWNrZXI6KCk9PnJ9KX0sMTU2ODI5KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtyZXR1cm4gdm9pZCAwIT09byYmby5pbmNsdWRlcygiY3J5cHRvIil9dC5kKGUse2hhc0NyeXB0b1R5cGVzcGVjOigpPT5yfSl9LDc5NTM4MyhvLGUsdCl7dCgzNjMyNjkpLnNldENsYXNzZXMoKSx0KDQyOTY2KSx0KDYxMDI2OCk7dmFyIHI9dCg3NDk2NDgpLndoZW5Eb2N1bWVudFJlYWR5LGw9dCg5MzExOTgpLmhhbmRsZVRWTGlua3NDbGljaztyKCgoKT0+e2woKX0pKX0sNjEwMjY4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLCgwLHQoMTE1MjkzKS5zZXREb2N1bWVudERpckdldHRlcikoKCgpPT53aW5kb3cuZG9jdW1lbnQuZGlyKSl9LDI0MTkzNyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtjb25zdCB0PWV8fHdpbmRvdy5sb2NhbGV8fCJlbiI7bGV0IHI9b1t0XT9vW3RdOm8uZW47cmV0dXJuIHI9InRyYWRpbmd2aWV3LmNvbSI9PT1yPyJ3d3cudHJhZGluZ3ZpZXcuY29tIjpyLHI/ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wrIi8vIityOiIifXQuZChlLHtkZXRlcm1pbmVCYXNlVXJsOigpPT5yfSl9LDk2MzkwMChvLGUsdCl7InVzZSBzdHJpY3QiO3ZhciByOyFmdW5jdGlvbihvKXtvLkVtcHR5PSIiLG8uVGVjaG5pY2Fsc1BhdGg9InRlY2huaWNhbHMvIixvLkZpbmFuY2lhbHNPdmVydmlld1BhdGg9ImZpbmFuY2lhbHMtb3ZlcnZpZXcvIixvLlRpbWVsaW5lUGF0aD0iaGlzdG9yeS10aW1lbGluZS8iLG8uTmV3c1BhdGg9Im5ld3MvIixvLk9wdGlvbnNQYXRoPSJvcHRpb25zLyIsby5Qcm9maWxlUGF0aD0icHJvZmlsZS8iLG8uSG9sZGluZ3NQYXRoPSJob2xkaW5ncy8ifShyfHwocj17fSkpfSw1MjgzOTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7CmdldFRyYW5zbGF0ZWRTeW1ib2xEZXNjcmlwdGlvbjooKT0+Y30pO3ZhciByPXQoMTg1MjcxKTtmdW5jdGlvbiBsKG8pe2NvbnN0IGU9YCMke299LXN5bWJvbC1kZXNjcmlwdGlvbmAsbD1yLnQoZSx2b2lkIDAsdCgyNTg2NjcpKTtyZXR1cm4gbD09PWU/bnVsbDpsfWZ1bmN0aW9uIGMobyl7aWYodm9pZCAwIT09by5wcm9fbmFtZSl7Y29uc3QgZT1sKG8ucHJvX25hbWUpO2lmKG51bGwhPT1lKXJldHVybiBlO2lmKHZvaWQgMCE9PW8uc2hvcnRfbmFtZSl7Y29uc3QgZT1sKG8uc2hvcnRfbmFtZSk7aWYobnVsbCE9PWUpcmV0dXJuIGV9fXJldHVybiJlbiIhPT1vLmxhbmd1YWdlJiZ2b2lkIDAhPT1vLmxvY2FsX2Rlc2NyaXB0aW9uJiZvLmxhbmd1YWdlPT09d2luZG93Lmxhbmd1YWdlfHwiZW4iPT09by5sYW5ndWFnZSYmdm9pZCAwIT09by5sb2NhbF9kZXNjcmlwdGlvbiYmby5sYW5ndWFnZT09PXdpbmRvdy5sYW5ndWFnZT9vLmxvY2FsX2Rlc2NyaXB0aW9uOm8uZGVzY3JpcHRpb258fCIifX0sNzMwNjQ1KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtjb25zdCBlPW5ldyBVUkwobyxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm4gYyhlKSYmbChlKX10LmQoZSx7aXNJbnRlcm5hbEhvc3Q6KCk9Pm4saXNTYWZlVXJsOigpPT5yfSk7Y29uc3QgbD1vPT4hby51c2VybmFtZSxjPW89PiJodHRwOiI9PT1vLnByb3RvY29sfHwiaHR0cHM6Ij09PW8ucHJvdG9jb2w7ZnVuY3Rpb24gbihvLGU9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKXtjb25zdCB0PSIuIj09PWUuc2xpY2UoLTEpPzM6MixyPWUudG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC10KSxsPW8udG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC1yLmxlbmd0aCk7cmV0dXJuIHIuam9pbigiLiIpPT09bC5qb2luKCIuIil9fSw3Mzg0NTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNBbmRyb2lkOigpPT51LGlzQW55TW9iaWxlOigpPT55LGlzQmxhY2tCZXJyeTooKT0+cCxpc0Nocm9tZTooKT0+YSxpc0VkZ2U6KCk9PnMsaXNGRjooKT0+aSxpc0lPUzooKT0+bSxpc0lQYWQ6KCk9PmIsaXNNYWM6KCk9PmcsaXNPcGVyYU1pbmk6KCk9PmgsaXNTYWZhcmk6KCk9PmQsbW9iaWxldG91Y2g6KCk9PmMsdG91Y2g6KCk9Pm59KTtjb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixsPXImJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LGM9ciYmbCYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LG49ciYmKGx8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxhPXImJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxpPXImJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLHM9ciYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGQ9ciYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZz1yJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHU9KHImJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksciYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxwPXImJi9CbGFja0JlcnJ5L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxtPXImJi9pUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksaD1yJiYvT3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksYj1yJiYoIk1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjF8fC9pUGFkLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLHk9dXx8cHx8bXx8aH0sMzE3NjYzKG8peyJ1c2Ugc3RyaWN0Igo7by5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29sb3Itd2hpdGUiOiIjZmZmZmZmIiwiY29sb3ItYmxhY2siOiIjMDAwMDAwIiwiY29sb3ItdHJhbnNwYXJlbnQiOiIjMDAwMDAwMDAiLCJjb2xvci1jb2xkLWdyYXktNTAiOiIjRjlGOUY5IiwiY29sb3ItY29sZC1ncmF5LTEwMCI6IiNGMkYyRjIiLCJjb2xvci1jb2xkLWdyYXktMTUwIjoiI0VCRUJFQiIsImNvbG9yLWNvbGQtZ3JheS0yMDAiOiIjREJEQkRCIiwiY29sb3ItY29sZC1ncmF5LTI1MCI6IiNDOUM5QzkiLCJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0I4QjhCOCIsImNvbG9yLWNvbGQtZ3JheS0zNTAiOiIjQThBOEE4IiwiY29sb3ItY29sZC1ncmF5LTQwMCI6IiM5QzlDOUMiLCJjb2xvci1jb2xkLWdyYXktNDUwIjoiIzhDOEM4QyIsImNvbG9yLWNvbGQtZ3JheS01MDAiOiIjODA4MDgwIiwiY29sb3ItY29sZC1ncmF5LTU1MCI6IiM3MDcwNzAiLCJjb2xvci1jb2xkLWdyYXktNjAwIjoiIzYzNjM2MyIsImNvbG9yLWNvbGQtZ3JheS02NTAiOiIjNTc1NzU3IiwiY29sb3ItY29sZC1ncmF5LTcwMCI6IiM0QTRBNEEiLCJjb2xvci1jb2xkLWdyYXktNzUwIjoiIzNEM0QzRCIsImNvbG9yLWNvbGQtZ3JheS04MDAiOiIjMkUyRTJFIiwiY29sb3ItY29sZC1ncmF5LTg1MCI6IiMxRjFGMUYiLCJjb2xvci1jb2xkLWdyYXktOTAwIjoiIzBGMEYwRiIsImNvbG9yLWNvbGQtZ3JheS05NTAiOiIjMDAwMDAwIiwiY29sb3ItcmlwZS1yZWQtNTAiOiIjRkZFQkVDIiwiY29sb3ItcmlwZS1yZWQtMTAwIjoiI0ZDQ0JDRCIsImNvbG9yLXJpcGUtcmVkLTIwMCI6IiNGQUExQTQiLCJjb2xvci1yaXBlLXJlZC0zMDAiOiIjRjc3QzgwIiwiY29sb3ItcmlwZS1yZWQtNDAwIjoiI0Y3NTI1RiIsImNvbG9yLXJpcGUtcmVkLTUwMCI6IiNGMjM2NDUiLCJjb2xvci1yaXBlLXJlZC02MDAiOiIjQ0MyRjNDIiwiY29sb3ItcmlwZS1yZWQtNzAwIjoiI0IyMjgzMyIsImNvbG9yLXJpcGUtcmVkLTgwMCI6IiM5OTFGMjkiLCJjb2xvci1yaXBlLXJlZC05MDAiOiIjODAxOTIyIiwiY29sb3ItcmlwZS1yZWQtYTEwMCI6IiNGRjgwODAiLCJjb2xvci1yaXBlLXJlZC1hMjAwIjoiI0ZGNTI1MiIsImNvbG9yLXJpcGUtcmVkLWE0MDAiOiIjRkYzMzMzIiwiY29sb3ItcmlwZS1yZWQtYTYwMCI6IiNDQzI5MjkiLCJjb2xvci1yaXBlLXJlZC1hNzAwIjoiIzgwMjAyOCIsImNvbG9yLXJpcGUtcmVkLWE4MDAiOiIjNEQxOTFEIiwiY29sb3ItcmlwZS1yZWQtYTkwMCI6IiMzMzFGMjAiLCJjb2xvci10YW4tb3JhbmdlLTUwIjoiI0ZGRjNFMCIsImNvbG9yLXRhbi1vcmFuZ2UtMTAwIjoiI0ZGRTBCMiIsImNvbG9yLXRhbi1vcmFuZ2UtMjAwIjoiI0ZGQ0M4MCIsImNvbG9yLXRhbi1vcmFuZ2UtMzAwIjoiI2ZmYjc0ZCIsImNvbG9yLXRhbi1vcmFuZ2UtNDAwIjoiI0ZGQTcyNiIsImNvbG9yLXRhbi1vcmFuZ2UtNTAwIjoiI0ZGOTgwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNjAwIjoiI0ZCOEMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNzAwIjoiI0Y1N0MwMCIsImNvbG9yLXRhbi1vcmFuZ2UtODAwIjoiI0VGNkMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtOTAwIjoiI2U2NTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTEwMCI6IiNGRkQxODAiLCJjb2xvci10YW4tb3JhbmdlLWEyMDAiOiIjZmZhYjQwIiwiY29sb3ItdGFuLW9yYW5nZS1hNDAwIjoiI0ZGOTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTUwMCI6IiNFNTdFMTciLCJjb2xvci10YW4tb3JhbmdlLWE2MDAiOiIjQ0M3MDE0IiwiY29sb3ItdGFuLW9yYW5nZS1hNzAwIjoiIzhDNTQxQyIsImNvbG9yLXRhbi1vcmFuZ2UtYTgwMCI6IiM1OTNBMUIiLCJjb2xvci10YW4tb3JhbmdlLWE5MDAiOiIjMzMyNjFBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwIjoiI0U4RjVFOSIsImNvbG9yLWlndWFuYS1ncmVlbi0xMDAiOiIjQzhFNkM5IiwiY29sb3ItaWd1YW5hLWdyZWVuLTIwMCI6IiNBNUQ2QTciLCJjb2xvci1pZ3VhbmEtZ3JlZW4tMzAwIjoiIzgxYzc4NCIsImNvbG9yLWlndWFuYS1ncmVlbi00MDAiOiIjNjZCQjZBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwMCI6IiM0Y2FmNTAiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tNjAwIjoiIzQzYTA0NyIsImNvbG9yLWlndWFuYS1ncmVlbi03MDAiOiIjMzg4ZTNjIiwiY29sb3ItaWd1YW5hLWdyZWVuLTgwMCI6IiMyRTdEMzIiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tOTAwIjoiIzFCNUUyMCIsImNvbG9yLWlndWFuYS1ncmVlbi1hMTAwIjoiI0I5RjZDQSIsImNvbG9yLWlndWFuYS1ncmVlbi1hMjAwIjoiIzY5RjBBRSIsImNvbG9yLWlndWFuYS1ncmVlbi1hNDAwIjoiIzAwRTY3NiIsImNvbG9yLWlndWFuYS1ncmVlbi1hNzAwIjoiIzAwYzg1MyIsImNvbG9yLWJhbmFuYS15ZWxsb3ctNTAiOiIjRkZGREU3IiwiY29sb3ItYmFuYW5hLXllbGxvdy0xMDAiOiIjRkZGOUM0IiwiY29sb3ItYmFuYW5hLXllbGxvdy0yMDAiOiIjRkZGNTlEIiwiY29sb3ItYmFuYW5hLXllbGxvdy0zMDAiOiIjRkZGMTc2IiwiY29sb3ItYmFuYW5hLXllbGxvdy00MDAiOiIjZmZlZTU4IiwiY29sb3ItYmFuYW5hLXllbGxvdy01MDAiOiIjZmZlYjNiIiwiY29sb3ItYmFuYW5hLXllbGxvdy02MDAiOiIjZmRkODM1IiwiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiOiIjZmJjMDJkIiwiY29sb3ItYmFuYW5hLXllbGxvdy04MDAiOiIjZjlhODI1IiwiY29sb3ItYmFuYW5hLXllbGxvdy05MDAiOiIjRjU3RjE3IiwiY29sb3ItYmFuYW5hLXllbGxvdy1hMTAwIjoiI0ZGRkY4RCIsImNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMCI6IiNGRkZGMDAiLCJjb2xvci1iYW5hbmEteWVsbG93LWE0MDAiOiIjZmZlYTAwIiwiY29sb3ItYmFuYW5hLXllbGxvdy1hNzAwIjoiI0VFREEwMSIsImNvbG9yLXR2LWJsdWUtNTAiOiIjRTNFRkZEIiwiY29sb3ItdHYtYmx1ZS0xMDAiOiIjQkJEOUZCIiwiY29sb3ItdHYtYmx1ZS0yMDAiOiIjOTBCRkY5IiwiY29sb3ItdHYtYmx1ZS0zMDAiOiIjNUI5Q0Y2IiwiY29sb3ItdHYtYmx1ZS00MDAiOiIjMzE3OUY1IiwiY29sb3ItdHYtYmx1ZS01MDAiOiIjMjk2MkZGIiwiY29sb3ItdHYtYmx1ZS02MDAiOiIjMUU1M0U1IiwiY29sb3ItdHYtYmx1ZS03MDAiOiIjMTg0OENDIiwiY29sb3ItdHYtYmx1ZS04MDAiOiIjMTQzRUIyIiwiY29sb3ItdHYtYmx1ZS05MDAiOiIjMEMzMjk5IiwiY29sb3ItdHYtYmx1ZS1hMTAwIjoiIzgyYjFmZiIsImNvbG9yLXR2LWJsdWUtYTIwMCI6IiM0NDhhZmYiLCJjb2xvci10di1ibHVlLWE0MDAiOiIjMjk3OWZmIiwiY29sb3ItdHYtYmx1ZS1hNjAwIjoiIzI5NjJGRiIsImNvbG9yLXR2LWJsdWUtYTcwMCI6IiMxNDNBODciLCJjb2xvci10di1ibHVlLWE4MDAiOiIjMTQyRTYxIiwiY29sb3ItdHYtYmx1ZS1hOTAwIjoiIzEzMjA0MiIsImNvbG9yLWRlZXAtYmx1ZS01MCI6IiNFREU3RjYiLCJjb2xvci1kZWVwLWJsdWUtMTAwIjoiI0QxQzRFOSIsImNvbG9yLWRlZXAtYmx1ZS0yMDAiOiIjQjM5RERCIiwiY29sb3ItZGVlcC1ibHVlLTMwMCI6IiM5NTc1Y2QiLCJjb2xvci1kZWVwLWJsdWUtNDAwIjoiIzdlNTdjMiIsImNvbG9yLWRlZXAtYmx1ZS01MDAiOiIjNjczYWI3IiwiY29sb3ItZGVlcC1ibHVlLTYwMCI6IiM1RTM1QjEiLCJjb2xvci1kZWVwLWJsdWUtNzAwIjoiIzUxMmRhOCIsImNvbG9yLWRlZXAtYmx1ZS04MDAiOiIjNDUyN0EwIiwiY29sb3ItZGVlcC1ibHVlLTkwMCI6IiMzMTFCOTIiLCJjb2xvci1kZWVwLWJsdWUtYTEwMCI6IiNiMzg4ZmYiLCJjb2xvci1kZWVwLWJsdWUtYTIwMCI6IiM3QzRERkYiLCJjb2xvci1kZWVwLWJsdWUtYTQwMCI6IiM2NTFGRkYiLCJjb2xvci1kZWVwLWJsdWUtYTcwMCI6IiM2MjAwRUEiLCJjb2xvci1taW50eS1ncmVlbi01MCI6IiNEQUYyRUUiLCJjb2xvci1taW50eS1ncmVlbi0xMDAiOiIjQUNFNURDIiwiY29sb3ItbWludHktZ3JlZW4tMjAwIjoiIzcwQ0NCRCIsImNvbG9yLW1pbnR5LWdyZWVuLTMwMCI6IiM0MkJEQTgiLCJjb2xvci1taW50eS1ncmVlbi00MDAiOiIjMjJBQjk0IiwiY29sb3ItbWludHktZ3JlZW4tNTAwIjoiIzA4OTk4MSIsImNvbG9yLW1pbnR5LWdyZWVuLTYwMCI6IiMwNjgwNkIiLCJjb2xvci1taW50eS1ncmVlbi03MDAiOiIjMDU2NjU2IiwiY29sb3ItbWludHktZ3JlZW4tODAwIjoiIzAwNEQ0MCIsImNvbG9yLW1pbnR5LWdyZWVuLTkwMCI6IiMwMDMzMkEiLCJjb2xvci1taW50eS1ncmVlbi1hMTAwIjoiI0E3RkZGMCIsImNvbG9yLW1pbnR5LWdyZWVuLWEyMDAiOiIjNDVFNUNCIiwiY29sb3ItbWludHktZ3JlZW4tYTQwMCI6IiMyQkQ5QkMiLCJjb2xvci1taW50eS1ncmVlbi1hNjAwIjoiIzI0QjI5QiIsImNvbG9yLW1pbnR5LWdyZWVuLWE3MDAiOiIjMUI3NjY3IiwiY29sb3ItbWludHktZ3JlZW4tYTgwMCI6IiMxMDQ0M0IiLCJjb2xvci1taW50eS1ncmVlbi1hOTAwIjoiIzA4MjYyMSIsImNvbG9yLWdyYXBlcy1wdXJwbGUtNTAiOiIjRjNFNUY1IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDAiOiIjRTFCRUU3IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0yMDAiOiIjQ0U5M0Q4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDAiOiIjYmE2OGM4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS00MDAiOiIjYWI0N2JjIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS01MDAiOiIjOWMyN2IwIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS02MDAiOiIjOGUyNGFhIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS03MDAiOiIjN2IxZmEyIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS04MDAiOiIjNkExQjlBIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS05MDAiOiIjNEExNDhDIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hMTAwIjoiI0VBODBGQyIsImNvbG9yLWdyYXBlcy1wdXJwbGUtYTIwMCI6IiNFMDQwRkIiLCJjb2xvci1ncmFwZXMtcHVycGxlLWE0MDAiOiIjRDUwMEY5IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hNzAwIjoiI2FhMDBmZiIsImNvbG9yLWJlcnJ5LXBpbmstNTAiOiIjRkNFNEVDIiwiY29sb3ItYmVycnktcGluay0xMDAiOiIjRjhCQkQwIiwiY29sb3ItYmVycnktcGluay0yMDAiOiIjZjQ4ZmIxIiwiY29sb3ItYmVycnktcGluay0zMDAiOiIjZjA2MjkyIiwiY29sb3ItYmVycnktcGluay00MDAiOiIjZWM0MDdhIiwiY29sb3ItYmVycnktcGluay01MDAiOiIjZTkxZTYzIiwiY29sb3ItYmVycnktcGluay02MDAiOiIjRDgxQjYwIiwiY29sb3ItYmVycnktcGluay03MDAiOiIjQzIxODVCIiwiY29sb3ItYmVycnktcGluay04MDAiOiIjQUQxNDU3IiwiY29sb3ItYmVycnktcGluay05MDAiOiIjODgwRTRGIiwiY29sb3ItYmVycnktcGluay1hMTAwIjoiI2ZmODBhYiIsImNvbG9yLWJlcnJ5LXBpbmstYTIwMCI6IiNmZjQwODEiLCJjb2xvci1iZXJyeS1waW5rLWE0MDAiOiIjZjUwMDU3IiwiY29sb3ItYmVycnktcGluay1hNzAwIjoiI2M1MTE2MiIsImNvbG9yLXNreS1ibHVlLTUwIjoiI0UwRjdGQSIsImNvbG9yLXNreS1ibHVlLTEwMCI6IiNCMkVCRjIiLCJjb2xvci1za3ktYmx1ZS0yMDAiOiIjODBERUVBIiwiY29sb3Itc2t5LWJsdWUtMzAwIjoiIzRkZDBlMSIsImNvbG9yLXNreS1ibHVlLTQwMCI6IiMyNmM2ZGEiLCJjb2xvci1za3ktYmx1ZS01MDAiOiIjMDBiY2Q0IiwiY29sb3Itc2t5LWJsdWUtNjAwIjoiIzAwYWNjMSIsImNvbG9yLXNreS1ibHVlLTcwMCI6IiMwMDk3QTciLCJjb2xvci1za3ktYmx1ZS04MDAiOiIjMDA4MzhGIiwiY29sb3Itc2t5LWJsdWUtOTAwIjoiIzAwNjA2NCIsImNvbG9yLXNreS1ibHVlLWExMDAiOiIjODRGRkZGIiwiY29sb3Itc2t5LWJsdWUtYTIwMCI6IiMxOEZGRkYiLCJjb2xvci1za3ktYmx1ZS1hNDAwIjoiIzAwZTVmZiIsImNvbG9yLXNreS1ibHVlLWE3MDAiOiIjMDBCOEQ0IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwIjoiI0RBRjJFNiIsImNvbG9yLWZvcmVzdC1ncmVlbi0xMDAiOiIjQUNFNUM5IiwiY29sb3ItZm9yZXN0LWdyZWVuLTIwMCI6IiM3MENDOUUiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tMzAwIjoiIzQyQkQ3RiIsImNvbG9yLWZvcmVzdC1ncmVlbi00MDAiOiIjMjJBQjY3IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwMCI6IiMwODk5NTAiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tNjAwIjoiIzA2ODA0MyIsImNvbG9yLWZvcmVzdC1ncmVlbi03MDAiOiIjMDU2NjM2IiwiY29sb3ItZm9yZXN0LWdyZWVuLTgwMCI6IiMwMDREMjciLCJjb2xvci1mb3Jlc3QtZ3JlZW4tOTAwIjoiIzFBMzMyNiIsImNvbG9yLWZhY2Vib29rIjoiIzE4NzdGMiIsImNvbG9yLWRlZXAtZmFjZWJvb2siOiIjMTU2NENBIiwiY29sb3ItdHdpdHRlciI6IiMxREExRjIiLCJjb2xvci1kZWVwLXR3aXR0ZXIiOiIjMTg4Q0QzIiwiY29sb3IteW91dHViZSI6IiNGRjAwMDAiLCJjb2xvci1saW5rZWRpbiI6IiMwMDdCQjUiLCJjb2xvci1zZWVraW5nLWFscGhhLWJyYW5kIjoiI2ZmNzIwMCJ9JykKfSw4Njc1MjIobyl7InVzZSBzdHJpY3QiCjtvLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2xvci1oZWFkZXItYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLWJnLXByaW1hcnkiOiJjb2xvci13aGl0ZSIsImNvbG9yLWJnLXByaW1hcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItYmctc2Vjb25kYXJ5IjoiY29sb3Itd2hpdGUiLCJjb2xvci1iZy1oaWdobGlnaHQiOiJjb2xvci1jb2xkLWdyYXktNTAiLCJjb2xvci1iZy1zY3JvbGwtYnV0dG9ucyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1sZWdhY3ktYmctc2Nyb2xsLWJ1dHRvbnMiOiJjb2xvci1jb2xkLWdyYXktODUwIiwiY29sb3ItbGVnYWN5LWJnLXdpZGdldCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItdGV4dC1wcmltYXJ5IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXRleHQtc2Vjb25kYXJ5IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRleHQtdGVydGlhcnkiOiJjb2xvci1jb2xkLWdyYXktNDAwIiwiY29sb3ItdGV4dC1kaXNhYmxlZCI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1hY2NlbnQtY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1ib3gtc2hhZG93IjoiY29sb3ItY29sZC1ncmF5LTMwMCIsImNvbG9yLWRpdmlkZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItZGl2aWRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1kaXZpZGVyLXNlY29uZGFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1hY3RpdmUtaG92ZXItdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1hbGVydC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvcmRlci10YWJsZSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1icmFuZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYnJhbmQtYWN0aXZlIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci1icmFuZC1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItY2hhcnQtcGFnZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC1iZyI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1kYW5nZXIiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1kYW5nZXItaG92ZXIiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1kYW5nZXItYWN0aXZlIjoiY29sb3ItcmlwZS1yZWQtNjAwIiwiY29sb3ItZGVwdGhyZW5kZXJlci1zdHJva2Utc3R5bGUiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItaGlnaGxpZ2h0LW5ldyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAiLCJjb2xvci1pbnB1dC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaW5wdXQtcHVibGlzaC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItbGluayI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItbGluay1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItbGluay1hY3RpdmUiOiJjb2xvci10di1ibHVlLTcwMCIsImNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItcGFuZS1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItcGFuZS1zZWNvbmRhcnktYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLXByaW1hcnktc3ltYm9sIjoiY29sb3Itc2t5LWJsdWUtNTAwIiwiY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb24iOiJjb2xvci1jb2xkLWdyYXktNjUwIiwiY29sb3Itc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLXN1Y2Nlc3MtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1zdWNjZXNzLWFjdGl2ZSI6ImNvbG9yLW1pbnR5LWdyZWVuLTcwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbiI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWwiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1vcGVuZWQtZWxlbWVudC1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1wb3B1cC1iYWNrZ3JvdW5kIjoiY29sb3Itd2hpdGUiLCJjb2xvci1wb3B1cC1lbGVtZW50LXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmUiOiJjb2xvci13aGl0ZSIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWFjdGl2ZS1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtMjAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci10b29sdGlwLWJnIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uIjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdW5kZXJsaW5lZC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXdpZGdldC1wYWdlcy1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itd2FybmluZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItZ3Jvd2luZyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWZhbGxpbmciOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1mb3JleC1pY29uIjoiY29sb3ItY29sZC1ncmF5LTc1MCIsImNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTQwMCIsImNvbG9yLWxpc3QtaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1saXN0LWl0ZW0tdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2siOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcHJpY2UtYXhpcy1sYWJlbC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXByaWNlLWF4aXMtZ2VhciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXIiOiJjb2xvci1ibGFjayIsImNvbG9yLXByaWNlLWF4aXMtaGlnaGxpZ2h0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJpZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvcmRlci1jaGF0LWZpZWxkcyI6ImNvbG9yLWNvbGQtZ3JheS0yNTAiLCJjb2xvci1ib3JkZXItaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMjUwIiwiY29sb3ItYnV0dG9uLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZSI6ImNvbG9yLWNvbGQtZ3JheS02NTAiLCJjb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRpc2FibGVkLWlucHV0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWVtcHR5LWNvbnRhaW5lci1tZXNzYWdlIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWljb25zIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWlucHV0LXRleHRhcmVhLXJlYWRvbmx5IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLWlucHV0LXBsYWNlaG9sZGVyLXRleHQiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3ItaXRlbS1hY3RpdmUtYmx1ZSI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1pdGVtLWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1ibHVlIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItaXRlbS1hY3RpdmUtdGV4dCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWxpc3QtaXRlbSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1uZXdzLWhpZ2hsaWdodCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItcGxhY2Vob2xkZXIiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3Itcm93LWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMzAwIiwiY29sb3Itc2VwYXJhdG9yLXRhYmxlLWNoYXQiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGFnLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10YWctaG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGV4dC1yZWd1bGFyIjoiY29sb3ItY29sZC1ncmF5LTcwMCIsImNvbG9yLXR2LWJ1dHRvbi1jaGVja2VkIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXNjcm9sbC1iZyI6ImNvbG9yLWNvbGQtZ3JheS00MDAiLCJjb2xvci1zY3JvbGwtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXdpZGdldC1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3ciOiJjb2xvci13aGl0ZSIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQiOiJjb2xvci1jb2xkLWdyYXktMjAwIiwiY29sb3ItY29udHJvbC1pbnRlbnQtc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmciOiJjb2xvci10YW4tb3JhbmdlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRhbmdlciI6ImNvbG9yLXJpcGUtcmVkLTUwMCIsImNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmUtbWFya2V0IjoiY29sb3ItdGFuLW9yYW5nZS02MDAiLCJjb2xvci1wb3N0LW1hcmtldCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3Itbm90YWNjdXJhdGUtbW9kZSI6ImNvbG9yLWJlcnJ5LXBpbmstNjAwIiwiY29sb3ItZGVsYXktbW9kZSI6ImNvbG9yLXRhbi1vcmFuZ2UtNzAwIiwiY29sb3ItZGVsYXktbW9kZS1iZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNDAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkIjoiY29sb3ItdHYtYmx1ZS01MCIsImNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXIiOiJjb2xvci10di1ibHVlLTIwMCIsImNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLW1hcmtlci1mbGFnZ2VkIjoiY29sb3ItcmlwZS1yZWQtNDAwIiwiY29sb3ItbWFya2VyLWZsYWdnZWQtaG92ZXJlZCI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFzayI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLXNlbGwiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1idXkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLW5ldXRyYWwiOiJjb2xvci1jb2xkLWdyYXktNTUwIiwiY29sb3ItcHJvIjoiY29sb3ItbWludHktZ3JlZW4tNDAwIiwiY29sb3ItcHJvLWhvdmVyIjoiY29sb3ItbWludHktZ3JlZW4tNjAwIiwiY29sb3ItcHJvLXBsdXMiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXByby1wbHVzLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci1wcm8tcHJlbWl1bSI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItcHJvLXByZW1pdW0taG92ZXIiOiJjb2xvci10YW4tb3JhbmdlLTcwMCIsImNvbG9yLXRyaWFsIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRyaWFsLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLW1vZCI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLW1vZC1ob3ZlciI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQiOiJjb2xvci1taW50eS1ncmVlbi00MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtYWN0aXZlIjoiY29sb3ItbWludHktZ3JlZW4tNTAwIiwiY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1vdmVybGF5IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXNlYXJjaC1idXR0b24taG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1jb250ZW50LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1iZy1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1ib3JkZXItZGVmYXVsdCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXJlcGxheS1kYXRhLW1vZGUiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1sZWdhY3ktc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTMwMCIsImNvbG9yLWNvbGxhcHNlLXRhYnMtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItYXR0ZW50aW9uIjoiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiLCJjb2xvci14LXR3aXR0ZXItY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1jYXJkLWJvcmRlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jYXJkLWJvcmRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1zZWxlY3Rpb24tYmciOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLWRlZmF1bHQtZ3JheSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmciOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItZmVhdHVyZWQtYnJva2VyLWJhZGdlLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS10ZXh0IjoiY29sb3Itd2hpdGUifScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/84306.31d6cfe0d16ae931b73c.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.725Z","timestamp":1785154590725,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/84306.31d6cfe0d16ae931b73c.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 0\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"6a58abe8-0\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 10:01:12 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8a92abeba6044860968b86ba07753723\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":782,"mime_type":"text/css; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":""}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/62630.53732daea8178447393f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.249Z","timestamp":1785154590249,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/62630.53732daea8178447393f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a2900e8-81\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 10 Jun 2026 06:15:04 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/10/2026 10:16:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b56645b186b43e32f9029e38ebf7a7cc\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":129,"size_decoded":881,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"e5f07c5aaef58d5986915a301b87421f","sha1":"bb55df8bc52b7214dada6d5d4ae37eb47151784f","sha256":"49d455199479291a3af612b0f532703169f142725fde325723b363a726fd0ea1","sha512":"9d6d6ae7362ec7e4be470196877102b5a670aa65a7dd5005699788845f5ccd947c955a0b7621e3ad9caf3290a852edf6c6d446adc1f4418e2e91fec9146f22f0","ssdeep":"","tlshash":"8ab02b90a2c00b9800534289e4ff330b007954c77f60108c089dcc804a03120c073bd1","first_seen":"2026-06-10T15:56:02.644043Z","last_seen":"2026-07-27T14:22:59.641985Z","times_seen":1034,"resource_available":false,"data":"LmZhZGUtTU9kVWlCWUQgY2FudmFze2ZpbHRlcjpvcGFjaXR5KC4zKTtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246ZmlsdGVyIC4zcyBlYXNlLWluLW91dCAuMXN9LmhpZGRlbi1NT2RVaUJZRHtkaXNwbGF5Om5vbmV9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/91471.b29974fd0c9e082b675f.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.305Z","timestamp":1785154590305,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/91471.b29974fd0c9e082b675f.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-946a\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:32:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 02f3b23ea549f15f6a7b50e113b72efa\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":37994,"size_decoded":15888,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"7ee1c473d086f208519ca0b747a9f6ab","sha1":"3dc0b238a5eae7c6f9dd0b900ace997a2f1c30b3","sha256":"e4c7751039c0012824c9d1bed4e691de339abd9bc2615467769fc60d005a8d1c","sha512":"afead0c3ca6cede488d5640db1c34ec7afc5fa34fe5be03c03b988d43dd7a7d272a36f9b642f16a94adbf6b3fa441c5180293b7a5644005ad5839834a6e0ed4c","ssdeep":"768:jK3FhYqmQ21dNvWXt3iYeRYgEsWp+62DYOmsdePjzuvuEQnLpa7oA1fzfHk2G64I:2U2NHgBeu0DWfP4iJNr","tlshash":"3403e6c932d6b0ba13e705e980bb1006e3be0989b84d9561f698dcd13d3589b6373f6d","first_seen":"2026-07-24T21:01:56.87909Z","last_seen":"2026-07-27T14:22:59.65359Z","times_seen":223,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3OTIwNyw5MTQ3MV0sezM5OTA5MihlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zIjoiLjZzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIiwiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcy1oYWxmLXRpbWUiOiIuM3MgMHMgY3ViaWMtYmV6aWVyKC40LCAuMDEsIC4yMiwgMSkiLGxhYmVsOiJsYWJlbC1kemJkN2x5ViIsbG9nb1dyYXA6ImxvZ29XcmFwLWR6YmQ3bHlWIixleHBhbmRlZFdpdGhUcmFuc2l0aW9uOiJleHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWIixleHBhbmRlZEJ5Q2xpY2s6ImV4cGFuZGVkQnlDbGljay1kemJkN2x5ViIsc3RhcnQ6InN0YXJ0LWR6YmQ3bHlWIixlbmQ6ImVuZC1kemJkN2x5ViIsc25hcDoic25hcC1kemJkN2x5ViIsdG9wOiJ0b3AtZHpiZDdseVYiLGJvdHRvbToiYm90dG9tLWR6YmQ3bHlWIixsYXJnZToibGFyZ2UtZHpiZDdseVYiLGV4cGFuZGVkOiJleHBhbmRlZC1kemJkN2x5ViIsbGFiZWxfX2xpbms6ImxhYmVsX19saW5rLWR6YmQ3bHlWIn19LDI4OTUwOChlKXtlLmV4cG9ydHM9e319LDQ4NTIxMChlKXtlLmV4cG9ydHM9e319LDg1NTc0MihlKXtlLmV4cG9ydHM9e319LDU1NTEzNyhlKXtlLmV4cG9ydHM9e319LDgwMDI3NChlKXtlLmV4cG9ydHM9e319LDEzNDY3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse25vcm1hbGl6ZUFscGhhQ29tcG9uZW50OigpPT5sLHBhcnNlUmdiOigpPT5MLHBhcnNlUmdiYTooKT0+UyxyZ2JUb0JsYWNrV2hpdGVTdHJpbmc6KCk9PngscmdiYTooKT0+ZCxyZ2JhVG9TdHJpbmc6KCk9PncsdHJ5UGFyc2VSZ2I6KCk9Pl8sdHJ5UGFyc2VSZ2JhOigpPT5OfSk7dmFyIHI9big2MDE4NDEpLG89big4MzA3ODMpO2Z1bmN0aW9uIHMoZSx0LG4pe3JldHVybigwLHIuaXNOYU4pKHQpfHx0PGU/ZTp0Pm4/bjpNYXRoLnJvdW5kKHQpfWZ1bmN0aW9uIGkoZSx0LG4pe3JldHVybigwLHIuaXNOYU4pKHQpfHx0PGU/ZTp0Pm4/bjpNYXRoLnJvdW5kKDFlNCp0KS8xZTR9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gcygwLGUsMjU1KX1mdW5jdGlvbiBhKGUpe3JldHVybiBzKDAsZSwyNTUpfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIHMoMCxlLDI1NSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4gaSgwLGUsMSl9ZnVuY3Rpb24gZChlLHQsbixyKXtpZihBcnJheS5pc0FycmF5KGUpKXtjb25zdCBuPWU7cmV0dXJuIHI9dCxbblswXSxuWzFdLG5bMl0sbChyKV19e2NvbnN0IG89dDtyZXR1cm4gbj1ufHwwLHI9cnx8MCxbYyhlKSxhKG8pLHUobiksbChyKV19fWNvbnN0IHA9Wy4xOTksLjY4NywuMTE0XTt2YXIgZixtLGgsZztmdW5jdGlvbiB5KGUpe2NvbnN0IHQ9Zi5yZS5leGVjKGUpO3JldHVybiBudWxsIT09dD9mLnBhcnNlKHQpOm51bGx9ZnVuY3Rpb24gdihlKXtjb25zdCB0PW0ucmUuZXhlYyhlKTtyZXR1cm4gbnVsbCE9PXQ/bS5wYXJzZSh0KTpudWxsfWZ1bmN0aW9uIGIoZSl7Y29uc3QgdD1oLnJlLmV4ZWMoZSk7cmV0dXJuIG51bGwhPT10P2gucGFyc2UodCk6bnVsbH1mdW5jdGlvbiBFKGUpe2NvbnN0IHQ9Zy5yZS5leGVjKGUpO3JldHVybiBudWxsIT09dD9nLnBhcnNlKHQpOm51bGx9ZnVuY3Rpb24gdyhlKXtjb25zdFt0LG4scixvXT1lO3JldHVybmByZ2JhKCR7dH0sICR7bn0sICR7cn0sICR7b30pYH1mdW5jdGlvbiB4KGUsdCl7aWYodDwwfHx0PjI1NSl0aHJvdyBuZXcgRXJyb3IoImludmFsaWQgdGhyZXNob2xkIHZhbHVlLCB2YWxpZCB2YWx1ZXMgYXJlIFswLCAyNTVdIik7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBwWzBdKmVbMF0rcFsxXSplWzFdK3BbMl0qZVsyXX0oZSk+PXQ/IndoaXRlIjoiYmxhY2sifWZ1bmN0aW9uIF8oZSl7ZT1lLnRvTG93ZXJDYXNlKCk7Y29uc3QgdD0oMCxvLnRyeVBhcnNlTmFtZWRSZ2JhKShlKTtpZihudWxsIT09dCl7Y29uc3RbZSxuLHJdPXQ7cmV0dXJuW2UsbixyXX1jb25zdCBuPXkoZSk7aWYobnVsbCE9PW4pcmV0dXJuIG47Y29uc3Qgcj12KGUpO2lmKG51bGwhPT1yKXJldHVybiByO2NvbnN0IHM9YihlKTtpZihudWxsIT09cylyZXR1cm4gcztjb25zdCBpPUUoZSk7aWYobnVsbCE9PWkpe2NvbnN0W2UsdCxuXT1pO3JldHVybltlLHQsbl19cmV0dXJuIG51bGx9ZnVuY3Rpb24gTChlKXtjb25zdCB0PV8oZSk7aWYobnVsbCE9PXQpcmV0dXJuIHQ7dGhyb3cgbmV3IEVycm9yKCJQYXNzZWQgY29sb3Igc3RyaW5nIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUga25vd24gY29sb3IgcmVwcmVzZW50YXRpb25zIil9ZnVuY3Rpb24gTihlKXtlPWUudG9Mb3dlckNhc2UoKTtjb25zdCB0PSgwLG8udHJ5UGFyc2VOYW1lZFJnYmEpKGUpO2lmKG51bGwhPT10KXJldHVybiB0O2NvbnN0IG49eShlKTtpZihudWxsIT09bil7Y29uc3RbZSx0LHJdPW47cmV0dXJuW2UsdCxyLDFdfWNvbnN0IHI9dihlKTtpZihudWxsIT09cil7Y29uc3RbZSx0LG5dPXI7cmV0dXJuW2UsdCxuLDFdfWNvbnN0IHM9YihlKTtpZihudWxsIT09cyl7Y29uc3RbZSx0LG5dPXM7cmV0dXJuW2UsdCxuLDFdfWNvbnN0IGk9RShlKTtyZXR1cm4gbnVsbCE9PWk/aTpudWxsfWZ1bmN0aW9uIFMoZSl7Y29uc3QgdD1OKGUpO2lmKG51bGwhPT10KXJldHVybiB0O3Rocm93IG5ldyBFcnJvcigiUGFzc2VkIGNvbG9yIHN0cmluZyBkb2VzIG5vdCBtYXRjaCBhbnkgb2YgdGhlIGtub3duIGNvbG9yIHJlcHJlc2VudGF0aW9ucyIpfSFmdW5jdGlvbihlKXtlLnJlPS9ecmdiXChccyooLT9cZHsxLDEwfSlccyosXHMqKC0/XGR7MSwxMH0pXHMqLFxzKigtP1xkezEsMTB9KVxzKlwpJC8sZS5wYXJzZT1mdW5jdGlvbihlKXtyZXR1cm5bYyhwYXJzZUludChlWzFdLDEwKSksYShwYXJzZUludChlWzJdLDEwKSksdShwYXJzZUludChlWzNdLDEwKSldfX0oZnx8KGY9e30pKSxmdW5jdGlvbihlKXtlLnJlPS9eIyhbMC05YS1mQS1GXXsyfSkoWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KSQvLGUucGFyc2U9ZnVuY3Rpb24oZSl7CnJldHVybltjKHBhcnNlSW50KGVbMV0sMTYpKSxhKHBhcnNlSW50KGVbMl0sMTYpKSx1KHBhcnNlSW50KGVbM10sMTYpKV19fShtfHwobT17fSkpLGZ1bmN0aW9uKGUpe2UucmU9L14jKFswLTlhLWZBLUZdKShbMC05YS1mQS1GXSkoWzAtOWEtZkEtRl0pJC8sZS5wYXJzZT1mdW5jdGlvbihlKXtyZXR1cm5bYyhwYXJzZUludChlWzFdK2VbMV0sMTYpKSxhKHBhcnNlSW50KGVbMl0rZVsyXSwxNikpLHUocGFyc2VJbnQoZVszXStlWzNdLDE2KSldfX0oaHx8KGg9e30pKSxmdW5jdGlvbihlKXtlLnJlPS9ecmdiYVwoXHMqKC0/XGR7MSwxMH0pXHMqLFxzKigtP1xkezEsMTB9KVxzKixccyooLT9cZHsxLDEwfSlccyosXHMqKC0/W1xkXXswLDEwfSg/OlwuXGQrKT8pXHMqXCkkLyxlLnBhcnNlPWZ1bmN0aW9uKGUpe3JldHVybltjKHBhcnNlSW50KGVbMV0sMTApKSxhKHBhcnNlSW50KGVbMl0sMTApKSx1KHBhcnNlSW50KGVbM10sMTApKSxsKHBhcnNlRmxvYXQoZVs0XSkpXX19KGd8fChnPXt9KSl9LDcyMTM2OShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc05hdGl2ZVVJSW50ZXJhY3Rpb246KCk9PnMsaXNUZXh0RWRpdGluZ0ZpZWxkOigpPT5vfSk7dmFyIHI9bigyMzU3MjQpO2Z1bmN0aW9uIG8oZSl7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7cmV0dXJuInRleHQiPT09dHx8ImVtYWlsIj09PXR8fCJudW1iZXIiPT09dHx8InBhc3N3b3JkIj09PXR8fCJzZWFyY2giPT09dHx8InRlbCI9PT10fHwidXJsIj09PXR9cmV0dXJuIlRFWFRBUkVBIj09PWUudGFnTmFtZXx8ZS5pc0NvbnRlbnRFZGl0YWJsZX1mdW5jdGlvbiBzKGUsdCl7aWYoIXQpcmV0dXJuITE7Y29uc3Qgbj0yNTUmZTtpZigyNz09PW58fG4+Pj40PT03KXJldHVybiExO3N3aXRjaChlXm4pe2Nhc2Ugci5Nb2RpZmllcnMuQWx0OnJldHVybigzOD09PW58fDQwPT09bikmJiJTRUxFQ1QiPT09dC50YWdOYW1lfHxvKHQpO2Nhc2Ugci5Nb2RpZmllcnMuQWx0K3IuTW9kaWZpZXJzLlNoaWZ0OnJldHVybiBvKHQpO2Nhc2Ugci5Nb2RpZmllcnMuTW9kOmlmKDY3PT09bnx8IXIuaXNNYWNLZXlib2FyZCYmNDU9PT1uKXtjb25zdCBlPXQub3duZXJEb2N1bWVudCYmdC5vd25lckRvY3VtZW50LmdldFNlbGVjdGlvbigpO2lmKGUmJiFlLmlzQ29sbGFwc2VkKXJldHVybiEwfXJldHVybiBvKHQpO2Nhc2Ugci5Nb2RpZmllcnMuTW9kK3IuTW9kaWZpZXJzLlNoaWZ0OnJldHVybiBuPj0zMyYmbjw9NDAmJm8odCk7Y2FzZSByLk1vZGlmaWVycy5TaGlmdDpjYXNlIDA6cmV0dXJuIDk9PT1uPyEoIXQub3duZXJEb2N1bWVudHx8dD09PXQub3duZXJEb2N1bWVudC5ib2R5fHx0PT09dC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk6KCFmdW5jdGlvbihlKXtpZigiQlVUVE9OIj09PWUudGFnTmFtZSlyZXR1cm4hMDtpZigiSU5QVVQiPT09ZS50YWdOYW1lKXtjb25zdCB0PWUudHlwZTtpZigic3VibWl0Ij09PXR8fCJidXR0b24iPT09dHx8InJlc2V0Ij09PXR8fCJjaGVja2JveCI9PT10fHwicmFkaW8iPT09dClyZXR1cm4hMH1yZXR1cm4hMX0odCl8fDEzPT09bnx8MzI9PT1ufHw5PT09bikmJigiZm9ybSJpbiB0fHx0LmlzQ29udGVudEVkaXRhYmxlKX1yZXR1cm4hMX19LDMwODgxMChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt0aW1lRnJhbWVzOigpPT5yfSk7Y29uc3Qgcj0oMCxuKDY5MzUwMCkuZ2V0VGltZUZyYW1lcykoKX0sMzQ0MTAzKGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1be2Q6IkUtTWluaSBTJlAgNTAwIix0OiJFUyJ9LHtkOiJFLU1pbmkgTmFzZGFxIDEwMCIsdDoiTlEifSx7ZDoiR29sZCIsdDoiR0MifSx7ZDoiU2lsdmVyIix0OiJTSSJ9LHtkOiJDcnVkZSBPaWwgV1RJIix0OiJDTCJ9LHtkOiJOYXR1cmFsIEdhcyIsdDoiTkcifSx7ZDoiQXVzdHJhbGlhbiBEb2xsYXIiLHQ6IjZBIn0se2Q6IkF1c3RyYWxpYW4gRG9sbGFyIChGbG9vcikiLHQ6IkFEIn0se2Q6IkV1cm8gRlgiLHQ6IjZFIn0se2Q6IkV1cm8gRlggKEZsb29yKSIsdDoiRUMifSx7ZDoiQ29ybiIsdDoiWkMifSx7ZDoiQ29ybiAoRmxvb3IpIix0OiJDIn0se2Q6IkV1cm9kb2xsYXIiLHQ6IkdFIn0se2Q6IkV1cm9kb2xsYXIgKEZsb29yKSIsdDoiRUQifV0sbj1mdW5jdGlvbigpe3ZhciBlPVt7cGF0dGVybjoiKCIsY3RvcjpzfSx7cGF0dGVybjoiKSIsY3RvcjppfSx7cGF0dGVybjoiKyIsY3RvcjphfSx7cGF0dGVybjoiLSIsY3Rvcjp1fSx7cGF0dGVybjoiKiIsY3RvcjpsfSx7cGF0dGVybjoiLyIsY3RvcjpkfSx7cGF0dGVybjoiXiIsY3RvcjpwfSx7cGF0dGVybjovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxjdG9yOmd9LHtwYXR0ZXJuOi9cLi8sY3RvcjpifSx7cGF0dGVybjovW2EtekEtWjAtOV9cdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZdW2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKnwnLis/Jy8sY3RvcjpofSx7cGF0dGVybjovJ1teJ10qLyxjdG9yOnZ9LHtwYXR0ZXJuOi9bXDAtXHgyMFxzXSsvLGN0b3I6b31dO2Z1bmN0aW9uIG4oZSx0KXt2YXIgbj1mdW5jdGlvbigpe307cmV0dXJuIG4ucHJvdG90eXBlPXQucHJvdG90eXBlLGUucHJvdG90eXBlPW5ldyBuLGV9ZnVuY3Rpb24gcigpe31mdW5jdGlvbiBvKGUpe3RoaXMudmFsdWU9ZX1mdW5jdGlvbiBzKCl7fWZ1bmN0aW9uIGkoKXt9ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBhKCl7fWZ1bmN0aW9uIHUoKXt9ZnVuY3Rpb24gbCgpe31mdW5jdGlvbiBkKCl7fWZ1bmN0aW9uIHAoKXt9ci5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX0sbihvLHIpLG4ocyxyKSxzLnByb3RvdHlwZS52YWx1ZT0iKCIsbihpLHIpLGkucHJvdG90eXBlLnZhbHVlPSIpIixuKGMsciksbihhLGMpLGEucHJvdG90eXBlLnZhbHVlPSIrIixhLnByb3RvdHlwZS5wcmVjZWRlbmNlPTAsYS5wcm90b3R5cGUuY29tbXV0YXRpdmU9ITAsbih1LGMpLHUucHJvdG90eXBlLnZhbHVlPSItIix1LnByb3RvdHlwZS5wcmVjZWRlbmNlPTAsdS5wcm90b3R5cGUuY29tbXV0YXRpdmU9ITEsbihsLGMpLApsLnByb3RvdHlwZS52YWx1ZT0iKiIsbC5wcm90b3R5cGUucHJlY2VkZW5jZT0xLGwucHJvdG90eXBlLmNvbW11dGF0aXZlPSEwLG4oZCxjKSxkLnByb3RvdHlwZS52YWx1ZT0iLyIsZC5wcm90b3R5cGUucHJlY2VkZW5jZT0xLGQucHJvdG90eXBlLmNvbW11dGF0aXZlPSExLG4ocCxjKSxwLnByb3RvdHlwZS52YWx1ZT0iXiIscC5wcm90b3R5cGUucHJlY2VkZW5jZT0yLHAucHJvdG90eXBlLmNvbW11dGF0aXZlPSExO3ZhciBmPS9eJz8oPzooW0EtWjAtOV9dKyk6KT8oLio/KSc/JC9pLG09L1srXC0vKl0vO2Z1bmN0aW9uIGgoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIGcoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHkoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHYoKXtoLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiBiKCl7Zy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9bihoLHIpLGgucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5oYXNPd25Qcm9wZXJ0eSgiX3RpY2tlciIpKXt2YXIgZT1tLnRlc3QodGhpcy5fdGlja2VyKT8iJyI6IiI7cmV0dXJuIGUrKHRoaXMuX2V4Y2hhbmdlP3RoaXMuX2V4Y2hhbmdlKyI6IjoiIikrdGhpcy5fdGlja2VyK2V9cmV0dXJuIHRoaXMudmFsdWV9LGgucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKCl7dmFyIGU9Zi5leGVjKHRoaXMudmFsdWUpO2VbMV0mJih0aGlzLl9leGNoYW5nZT1lWzFdKSx0aGlzLl90aWNrZXI9ZVsyXX0saC5wcm90b3R5cGUucGFyc2VBc0Z1dHVyZXM9ZnVuY3Rpb24oKXt0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKTtmb3IodmFyIGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHQuc29tZSgoZnVuY3Rpb24odCl7cmV0dXJuIHQudD09PWV9KSl9LG49MjtuPj0xOy0tbil7dmFyIHI9dGhpcy5fdGlja2VyLnNsaWNlKDAsbik7aWYoZShyKSl7dGhpcy5fcm9vdD1yLHRoaXMuX2NvbnRyYWN0PXRoaXMuX3RpY2tlci5zbGljZShuKTticmVha319fSxoLnByb3RvdHlwZS5leGNoYW5nZT1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX2V4Y2hhbmdlO251bGw9PWU/ZGVsZXRlIHRoaXMuX2V4Y2hhbmdlOnRoaXMuX2V4Y2hhbmdlPWUrIiJ9LGgucHJvdG90eXBlLnRpY2tlcj1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3RpY2tlcjtudWxsPT1lP2RlbGV0ZSB0aGlzLl90aWNrZXI6dGhpcy5fdGlja2VyPWUrIiIsZGVsZXRlIHRoaXMuX3Jvb3QsZGVsZXRlIHRoaXMuX2NvbnRyYWN0fSxoLnByb3RvdHlwZS5yb290PWZ1bmN0aW9uKGUpe2lmKHRoaXMuaGFzT3duUHJvcGVydHkoIl9yb290Iil8fHRoaXMucGFyc2VBc0Z1dHVyZXMoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3Jvb3Q7bnVsbD09ZT9kZWxldGUgdGhpcy5fcm9vdDoodGhpcy5fcm9vdD1lKyIiLHRoaXMuX3Jvb3QmJih0aGlzLl90aWNrZXI9dGhpcy5fcm9vdCsodGhpcy5fY29udHJhY3R8fCIiKSkpfSxoLnByb3RvdHlwZS5jb250cmFjdD1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfY29udHJhY3QiKXx8dGhpcy5wYXJzZUFzRnV0dXJlcygpLCEoYXJndW1lbnRzLmxlbmd0aD4wKSlyZXR1cm4gdGhpcy5fcm9vdDtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jb250cmFjdDoodGhpcy5fY29udHJhY3Q9ZSsiIix0aGlzLl9yb290JiYodGhpcy5fdGlja2VyPXRoaXMuX3Jvb3QrdGhpcy5fY29udHJhY3QpKX0sbihnLHIpLGcucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaGFzT3duUHJvcGVydHkoIl9ub3JtYWxpemVkVmFsdWUiKT90aGlzLl9ub3JtYWxpemVkVmFsdWU6dGhpcy52YWx1ZX0sZy5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oKXt0aGlzLl9ub3JtYWxpemVkVmFsdWU9dGhpcy52YWx1ZS5yZXBsYWNlKC9eMCt8XC4wKiQvZywiIikucmVwbGFjZSgvKFwuXGQqPykwKyQvLCIkMSIpLnJlcGxhY2UoL14oXC58JCkvLCIwJDEiKX0seS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX0sbih2LGgpLHYucHJvdG90eXBlLmlzSW5jb21wbGV0ZT0hMCx2LnByb3RvdHlwZS5pbmNvbXBsZXRlU3VnZ2VzdD1mdW5jdGlvbigpe2lmKCInIiE9PXRoaXMudmFsdWUpcmV0dXJuIFN0cmluZygiJyIpfSxuKGIsZyksYi5wcm90b3R5cGUuaXNJbmNvbXBsZXRlPSEwO3ZhciBFPW5ldyBSZWdFeHAoZS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiIoIisoInN0cmluZyI9PXR5cGVvZiBlLnBhdHRlcm4/ZS5wYXR0ZXJuLnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIik6ZS5wYXR0ZXJuLnNvdXJjZSkrIikifSkpLmNvbmNhdCgiLiIpLmpvaW4oInwiKSwiZyIpO2Z1bmN0aW9uIHcodCxuKXt2YXIgcixzPVtdO2U6Zm9yKDtyPUUuZXhlYyh0KTspe2Zvcih2YXIgaT1lLmxlbmd0aDtpLS07KWlmKHJbaSsxXSl7aWYoZVtpXS5jdG9yKXt2YXIgYz1uZXcgZVtpXS5jdG9yKHJbaSsxXSk7Yy5fb2Zmc2V0PXIuaW5kZXgscy5wdXNoKGMpfWNvbnRpbnVlIGV9dmFyIGE9bmV3IHkoclswXSk7YS5fb2Zmc2V0PXIuaW5kZXgscy5wdXNoKGEpfWlmKG4mJm4ucmVjb3Zlcil7dmFyIHU7Zm9yKGk9cy5sZW5ndGg7aS0tOyl7dmFyIGw9c1tpXTtpZihsIGluc3RhbmNlb2YgZ3x8bCBpbnN0YW5jZW9mIGgpe2lmKHZvaWQgMCE9PXUpe3ZhciBkPW5ldyBoKCIiKSxwPXMuc3BsaWNlKGksdS1pKzEsZCk7ZC52YWx1ZT1wLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUudmFsdWV9KSkuam9pbigiIil9dT1pfWVsc2UgbCBpbnN0YW5jZW9mIG98fCh1PXZvaWQgMCl9fXJldHVybiBzfWZ1bmN0aW9uIHgoZSl7Zm9yKHZhciB0PVtdLG49MDtuPGUubGVuZ3RoO24rKyllW25daW5zdGFuY2VvZiBvfHx0LnB1c2goZVtuXSk7cmV0dXJuIHR9ZnVuY3Rpb24gXyhlKXtlPXgoZSkKO2Zvcih2YXIgdCxuPVtdLHI9W10sbz0wO288ZS5sZW5ndGg7bysrKXt2YXIgYT1lW29dO2lmKGEgaW5zdGFuY2VvZiBjKXIubGVuZ3RoJiZyW3IubGVuZ3RoLTFdLm1pblByZWNlZGVuY2U+YS5wcmVjZWRlbmNlJiYocltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPWEucHJlY2VkZW5jZSk7ZWxzZSBpZihhIGluc3RhbmNlb2YgcylyLnB1c2godD17bWluUHJlY2VkZW5jZToxLzAsb3BlbkJyYWNlSW5kZXg6b30pO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIGkpe3ZhciB1PWVbKHQ9ci5wb3AoKSkub3BlbkJyYWNlSW5kZXgtMV0sbD1lW28rMV07bCBpbnN0YW5jZW9mIGMmJiEobC5wcmVjZWRlbmNlPD10Lm1pblByZWNlZGVuY2UpfHwhKCEodSBpbnN0YW5jZW9mIGMpfHx1LnByZWNlZGVuY2U8dC5taW5QcmVjZWRlbmNlfHx1LnByZWNlZGVuY2U9PT10Lm1pblByZWNlZGVuY2UmJnUuY29tbXV0YXRpdmUpfHwobi51bnNoaWZ0KHQub3BlbkJyYWNlSW5kZXgpLG4ucHVzaChvKSxyLmxlbmd0aCYmcltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPnQubWluUHJlY2VkZW5jZSYmKHJbci5sZW5ndGgtMV0ubWluUHJlY2VkZW5jZT10Lm1pblByZWNlZGVuY2UpKX19Zm9yKG89bi5sZW5ndGg7by0tOyllLnNwbGljZShuW29dLDEpO3JldHVybiBlfWZ1bmN0aW9uIEwoZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoImV4cHJlc3Npb24gbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybihlPXcoZSkpLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBofSkpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZXhjaGFuZ2UoKX0pKS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkpfWZ1bmN0aW9uIE4oZSl7cmV0dXJuIDEhPT0oZT1MKGUpKS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIFMoZSx0KXtyZXR1cm4oZT1MKGUpKS5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gdC5pbmNsdWRlcygoZXx8IiIpLnRvVXBwZXJDYXNlKCkpfSkpfWZ1bmN0aW9uIFQoZSl7cmV0dXJuIGUuam9pbigiIil9cmV0dXJue3Rva2VuaXplOncsdmFsaWRhdGU6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PSJpbml0IixuPSJ2YXIiLHI9dCxhPXt3YXJuaW5nczpbXSxlcnJvcnM6W10saXNFbXB0eTohMH0sdT1bXSxsPTA7bDxlLmxlbmd0aDtsKyspe2lmKCEoKHA9ZVtsXSlpbnN0YW5jZW9mIG8pKXtpZihkZWxldGUgYS5pc0VtcHR5LHAuaXNJbmNvbXBsZXRlKXt2YXIgZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246ImluY29tcGxldGVfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH07aWYocC5pbmNvbXBsZXRlU3VnZ2VzdCYmKGQucmVjb3Zlcj17YXBwZW5kOnAuaW5jb21wbGV0ZVN1Z2dlc3QoKX0pLGEud2FybmluZ3MucHVzaChkKSxsIT09ZS5sZW5ndGgtMSl7ZC5zdGF0dXM9ImVycm9yIjtjb250aW51ZX19aWYocCBpbnN0YW5jZW9mIGh8fHAgaW5zdGFuY2VvZiBnKXtpZihyPT09bil7YS5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmV4cGVjdGVkX3Rva2VuIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnB9KTtjb250aW51ZX1yPW59ZWxzZSBpZihwIGluc3RhbmNlb2YgYyl7aWYociE9PW4pe2EuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9cj0ib3BlcmF0b3IifWVsc2UgaWYocCBpbnN0YW5jZW9mIHMpe2lmKHI9PT1uKXthLmVycm9ycy5wdXNoKHtzdGF0dXM6ImVycm9yIixyZWFzb246InVuZXhwZWN0ZWRfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pO2NvbnRpbnVlfXUucHVzaChwKSxyPXR9ZWxzZSBpZihwIGluc3RhbmNlb2YgaSl7aWYociE9PW4pe2EuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9dS5wb3AoKXx8YS5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmJhbGFuY2VkX2JyYWNlIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnAscmVjb3Zlcjp7cHJlcGVuZDpuZXcgc319KSxyPW59ZWxzZSBwIGluc3RhbmNlb2YgeSYmYS5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bnBhcnNlZF9lbnRpdHkiLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pfX1mb3IoYS5icmFjZUJhbGFuY2U9dS5sZW5ndGgsciE9PW4mJmEud2FybmluZ3MucHVzaCh7c3RhdHVzOiJpbmNvbXBsZXRlIn0pO3UubGVuZ3RoOyl7dmFyIHA7ZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246InVuYmFsYW5jZWRfYnJhY2UiLG9mZnNldDoocD11LnBvcCgpKS5fb2Zmc2V0LHRva2VuOnB9O3I9PT1uJiYoZC5yZWNvdmVyPXthcHBlbmQ6bmV3IGl9KSxhLndhcm5pbmdzLnB1c2goZCl9cmV0dXJuIGEuY3VycmVudFN0YXRlPXIsMD09PWEud2FybmluZ3MubGVuZ3RoJiZkZWxldGUgYS53YXJuaW5ncywwPT09YS5lcnJvcnMubGVuZ3RoJiZkZWxldGUgYS5lcnJvcnMsYX0sZmFjdG9yT3V0QnJhY2VzOl8sbm9ybWFsaXplVG9rZW5zOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0ucGFyc2UmJmVbdF0ucGFyc2UoKTtyZXR1cm4gZX0sZmxpcDpmdW5jdGlvbihlKXt2YXIgdD1mdW5jdGlvbihlKXtmb3IodmFyIHQsbj0wLHI9MSxhPTIsdT0zLGw9bixwPTAsZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgbT1lW2ZdO2lmKCEobSBpbnN0YW5jZW9mIG8pKXN3aXRjaChsKXtjYXNlIG46aWYoIShtIGluc3RhbmNlb2YgZyYmMT09K20udmFsdWUpKXJldHVybiExO2w9cjticmVhaztjYXNlIHI6aWYoIShsPT09ciYmbSBpbnN0YW5jZW9mIGQpKXJldHVybiExO2w9YSx0PWYrMTticmVhaztjYXNlIGE6aWYobSBpbnN0YW5jZW9mIHMpbD11LHA9MTtlbHNlIGlmKG0gaW5zdGFuY2VvZiBjKXJldHVybiExO2JyZWFrO2Nhc2UgdTptIGluc3RhbmNlb2Ygcz9wKys6bSBpbnN0YW5jZW9mIGkmJi0tcDw9MCYmKGw9YSl9fXJldHVybiBlLnNsaWNlKHQpfShlKQo7cmV0dXJuIF8odHx8W25ldyBnKCIxIiksbmV3IGQsbmV3IHNdLmNvbmNhdChlKS5jb25jYXQobmV3IGkpKX0saGFzQmF0c1N5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuIFMoZSxbIkJBVFMiXSl9LGhhc0VvZFN5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuKGU9TihlKSkmJi0xIT09ZS50b1VwcGVyQ2FzZSgpLmluZGV4T2YoIl9FT0QiKX0saGFzQ2h4anB5U3ltYm9sczpmdW5jdGlvbihlKXtyZXR1cm4gUyhlLFsiQ0hYSlBZIl0pfSxoYXNGcmVlRGVsYXlTeW1ib2xzOmZ1bmN0aW9uKGUpe3JldHVybiBTKGUscHJvLmdldFByb2R1Y3RzQnlUeXBlKHByby5QUk9EVUNUX1RZUEVTLmV4Y2hhbmdlKS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLmV4Y2hhbmdlLnRvVXBwZXJDYXNlKCkrIl9ETFkifSkpKX0sZ2V0RXhjaGFuZ2U6TixnZXRFeGNoYW5nZXM6TCxpc0V4Y2hhbmdlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuISEoZT1OKGUpKSYmZS5zdWJzdHJpbmcoMCx0Lmxlbmd0aCk9PT10fSxTeW1ib2xUb2tlbjpoLEluY29tcGxldGVTeW1ib2xUb2tlbjp2LE51bWJlclRva2VuOmcsQmluYXJ5T3BlcmF0b3JUb2tlbjpjLE9wZW5CcmFjZVRva2VuOnMsQ2xvc2VCcmFjZVRva2VuOmksdGlja2VyOmZ1bmN0aW9uKGUpe3JldHVybiBuZXcgaChlKS50aWNrZXIoKX0sc2hvcnROYW1lOmZ1bmN0aW9uKGUpe2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJleHByZXNzaW9uIG11c3QgYmUgYSBzdHJpbmciKTt2YXIgdD1fKHgodyhlKSkpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKGUpe2UgaW5zdGFuY2VvZiBoJiZlLmV4Y2hhbmdlKG51bGwpfSkpLFQodCl9LG5vcm1hbGl6ZTpmdW5jdGlvbihlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcigiZXhwcmVzc2lvbiBtdXN0IGJlIGEgc3RyaW5nIik7cmV0dXJuIFQoXyh4KHcoZSkpKSl9fX0oKTtlLmV4cG9ydHM9bn0sNDg4MDUoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0Q3Jvc3NoYWlyTW92ZURhdGE6KCk9Pm99KTt2YXIgcj1uKDc4MzI1NCk7ZnVuY3Rpb24gbyhlLHQpe2NvbnN0e3BvaW50Om8sdGltZTpzLHNlcmllc0RhdGE6aX09dDtpZih2b2lkIDA9PT1vfHx2b2lkIDA9PT1zKXJldHVybjtjb25zdCBjPWUubWFpblBsb3QoKSxhPWMuc2VyaWVzKCk7aWYodm9pZCAwPT09aS5nZXQoYSkpcmV0dXJuO2xldCB1O2NvbnN0IGw9W10sZD1jLmN1cnJlbnRTZXJpZXNPcHRpb25zKCk7aWYodT0iQXJlYSI9PT1hLnNlcmllc1R5cGUoKXx8IkxpbmUiPT09YS5zZXJpZXNUeXBlKCk/ZC50b29sdGlwVHlwZXx8ImxpbmUiOmQudG9vbHRpcFR5cGV8fCJvaGxjIixsLnB1c2goLi4uYy5nZXRMZWdlbmREYXRhKHQubG9naWNhbCkpLGUuc3R1ZHlQbG90cygpLmZvckVhY2goKGU9PntsLnB1c2goLi4uZS5nZXRMZWdlbmREYXRhKHQubG9naWNhbCkpfSkpLDA9PT1sLmxlbmd0aClyZXR1cm47Y29uc3QgcD1kLnRvb2x0aXBMZWdlbmRDb2xvck9yZGVyO3A/LnNpemUmJmwuc29ydCgoKGUsdCk9Pntjb25zdCBuPXAuZ2V0KGUuY29sb3IpPz8tMSxyPXAuZ2V0KHQuY29sb3IpPz8tMTtyZXR1cm4obj4tMT9uOjEvMCktKHI+LTE/cjoxLzApfSkpO2NvbnN0IGY9bmV3IERhdGUoMWUzKnMpO2xldCBtPWUuZGF0ZVRpbWVGb3JtYXR0ZXIoKS5mb3JtYXQoZix7ZGF0ZVRpbWVTZXBhcmF0b3I6IlxuIn0pO2UuaXNEV01SZXNvbHV0aW9uKCl8fChtKz0iICIrZnVuY3Rpb24oZSl7aWYoMD09PWUpcmV0dXJuIlVUQyI7Y29uc3QgdD1NYXRoLmFicyhlKSxuPU1hdGguZmxvb3IodC82MCkscj10LTYwKm47cmV0dXJuYFVUQyR7TWF0aC5zaWduKGUpPD0wPyIrIjoiLSJ9JHtufSR7cj4wP2A6JHtyfWA6IiJ9YH0oZi5nZXRUaW1lem9uZU9mZnNldCgpKSk7Y29uc3QgaD1lLmlzRFdNUmVzb2x1dGlvbigpfHwzIT09Yy5zZXNzaW9uQXRUaW1lKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9bmV3IERhdGUoMWUzKmUpO3JldHVybiBuZXcgRGF0ZSh0LmdldFVUQ0Z1bGxZZWFyKCksdC5nZXRVVENNb250aCgpLHQuZ2V0VVRDRGF0ZSgpLHQuZ2V0VVRDSG91cnMoKSx0LmdldFVUQ01pbnV0ZXMoKSx0LmdldFVUQ1NlY29uZHMoKSkudmFsdWVPZigpLzFlM30ocykpP3ZvaWQgMDpyLnQobnVsbCx7Y29udGV4dDoibWFya2V0X3N0YXR1cyJ9LG4oNTQ1MjI0KSk7cmV0dXJue3BvaW50Om8sdGltZTptLHByaWNlczpsLHR5cGU6dSxub3RlOmh9fX0sMjMyOTQ4KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4hKCFlfHwhT2JqZWN0LmtleXMoZSkubGVuZ3RoKX1uLmQodCx7aXNQcm9kdWN0RGVmaW5lZDooKT0+cn0pfSw2OTA4MTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y2hlY2tJZkV4Y2hhbmdlQXZhaWxhYmxlOigpPT5zfSk7big4MjkxODApO3ZhciByPW4oNDk4NjUxKTtmdW5jdGlvbiBvKGUpe2lmKCEoMCxyLmlzSURDRXhjaGFuZ2UpKGUpKXJldHVybiExO2U9aShlKTtjb25zdCB0PXdpbmRvdy5wcm8sbj10LmdldFByb2R1Y3QoZSk7cmV0dXJuIHZvaWQgMCE9PW4uaWRjX3NlcnZpY2VfY29kZXNfZGVsYXkmJigoIUFycmF5LmlzQXJyYXkobi5pbmNsdWRlZF9leGNoYW5nZXMpfHwhbi5pbmNsdWRlZF9leGNoYW5nZXMuc29tZSgoZT0+dC5oYXNQYWNrYWdlKGkoZSkpKSkpJiYhZnVuY3Rpb24oZSl7Y29uc3QgdD13aW5kb3cucHJvO3JldHVybiB0Lmhhc1BhY2thZ2UoZSl8fHQuaGFzUGFja2FnZShlKyJfZGx5Iil9KGUpKX1mdW5jdGlvbiBzKGUpe2NvbnN0IHQ9d2luZG93LnBybztyZXR1cm4gbmV3IFByb21pc2UoKG49Pnt3aW5kb3cuaXNfYXV0aGVudGljYXRlZD8hdC5nZXRJRENFeGNoYW5nZXMoITApLmxlbmd0aHx8dC5pc0ludmFsaWRTaG9wQ29uZigpP3QudXBkYXRlU2hvcENvbmYoKS50aGVuKCgoKT0+e24oIW8oZSkpfSkpLmNhdGNoKCgoKT0+e24oITApfSkpOm4oIW8oZSkpOm4oITApfSkpfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIGUuc3RhcnRzV2l0aCgiZXhjaGFuZ2UtIik/ZToiZXhjaGFuZ2UtezB9Ii5mb3JtYXQoZS50b0xvd2VyQ2FzZSgpKX19LDQ5ODY1MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHsKaXNJRENFeGNoYW5nZTooKT0+b30pO3ZhciByPW4oMjMyOTQ4KTtmdW5jdGlvbiBvKGUsdD0hMSl7aWYoZSYmZS5zdGFydHNXaXRoKCJleGNoYW5nZS0iKSlyZXR1cm4gZnVuY3Rpb24oZSx0PSExKXtjb25zdCBuPXdpbmRvdy5wcm8/LmdldFByb2R1Y3QoZSk7cmV0dXJuISh2b2lkIDA9PT1ufHwhKDAsci5pc1Byb2R1Y3REZWZpbmVkKShuKXx8KHQ/IW4uaWRjX3NlcnZpY2VfY29kZXNfZGVsYXk6IW4uaWRjX3NlcnZpY2VfY29kZXMpKX0oZSx0KTtjb25zdCBuPShlfHwiIikudG9Mb3dlckNhc2UoKTtyZXR1cm4gd2luZG93LnBybz8uZ2V0SURDRXhjaGFuZ2VzKHQpPy5pbmNsdWRlcyhuKT8/ITF9fSw4OTg3MTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0V2FybmluZ1RleHRGb3JGcmVlVXNlcnM6KCk9Pm99KTt2YXIgcj1uKDE4NTI3MSk7ZnVuY3Rpb24gbygpe3JldHVybiB3aW5kb3cuaXNfYXV0aGVudGljYXRlZD9yLnQobnVsbCx2b2lkIDAsbig1NDM4MzMpKTpyLnQobnVsbCx2b2lkIDAsbigxODY0MDIpKX19LDYxMzYyNihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjaGVjazooKT0+YX0pO3ZhciByPW4oMzQ0MTAzKSxvPW4oMzg0MDE3KSxzPW4oNDc5MzQpLGk9big2OTA4MTYpLGM9big4MjM2NzQpO2Z1bmN0aW9uIGEoZSx0PSEwKXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGEpPT57Y29uc3QgdT0oMCxyLmdldEV4Y2hhbmdlKShlKTt1PygwLGkuY2hlY2tJZkV4Y2hhbmdlQXZhaWxhYmxlKSh1KS50aGVuKChyPT5yP24oZSk6KDAscy5lbmFibGVkKSgiSURDX0FWQUlMQUJMRV9ERUxBWSIpP3Q/dm9pZCgwLG8uZmV0Y2gpKGAvaWRjLXNpZ24tYWdyZWVtZW50LWNoZWNrLyR7dX0vYCx7Y3JlZGVudGlhbHM6ImluY2x1ZGUifSkudGhlbigodD0+dC5qc29uKCkudGhlbigodD0+dC5yZXM9PT1jLlN5bWJvbEF2YWlsYWJpbGl0eUNvZGVzLkRFTEFZX05PVF9BVkFJTEFCTEU/YSh7ZXhjaGFuZ2U6dSxlcnJDb2RlOnQucmVzLHJlYXNvbjoiZGVsYXkgbm90IGF2YWlsYWJsZSIsc3ltYm9sOmV9KTp0LnJlcz09PWMuU3ltYm9sQXZhaWxhYmlsaXR5Q29kZXMuTkVFRF9TSUdOX0FHUkVFTUVOVD9hKHtleGNoYW5nZTp1LGVyckNvZGU6dC5yZXMscmVhc29uOiJuZWVkIHNpZ24gYWdyZWVtZW50IixzeW1ib2w6ZX0pOnQucmVzPT09Yy5TeW1ib2xBdmFpbGFiaWxpdHlDb2Rlcy5ORUVEX0FERF9TRVJWSUNFP2Eoe2V4Y2hhbmdlOnUsZXJyQ29kZTp0LnJlcyxyZWFzb246Im5lZWQgYWRkIHNlcnZpY2UiLHN5bWJvbDplfSk6bihlKSkpKSkuY2F0Y2goKCgpPT57bihlKX0pKTpuKGUpOmEoe2V4Y2hhbmdlOnUsZXJyQ29kZTpjLlN5bWJvbEF2YWlsYWJpbGl0eUNvZGVzLkRFTEFZX05PVF9BVkFJTEFCTEUscmVhc29uOiJkZWxheSBub3QgYXZhaWxhYmxlIixzeW1ib2w6ZX0pKSk6bihlKX0pKX19LDgyMzY3NChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtTeW1ib2xBdmFpbGFiaWxpdHlDb2RlczooKT0+cn0pO2NvbnN0IHI9e09LOiJPSyIsRVJSOiJFUlIiLFNZTUJPTF9OT1RfQVZBSUxBQkxFX0ZPUl9BTk9OOiJTWU1CT0xfTk9UX0FWQUlMQUJMRV9GT1JfQU5PTiIsREVMQVlfTk9UX0FWQUlMQUJMRToiREVMQVlfTk9UX0FWQUlMQUJMRSIsTkVFRF9TSUdOX0FHUkVFTUVOVDoiTkVFRF9TSUdOX0FHUkVFTUVOVCIsTkVFRF9BRERfU0VSVklDRToiTkVFRF9BRERfU0VSVklDRSJ9fSwxNTAxNTAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z3VpZDooKT0+byxyYW5kb21IYXNoOigpPT5zLHJhbmRvbUhhc2hOOigpPT5pfSk7Y29uc3Qgcj0iMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiO2Z1bmN0aW9uIG8oKXtyZXR1cm4ieHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Ii5yZXBsYWNlKC9beHldL2csKGU9Pntjb25zdCB0PTE2Kk1hdGgucmFuZG9tKCl8MDtyZXR1cm4oIngiPT09ZT90OjMmdHw4KS50b1N0cmluZygxNil9KSl9ZnVuY3Rpb24gcygpe3JldHVybiBpKDEyKX1mdW5jdGlvbiBpKGUpe2xldCB0PSIiO2ZvcihsZXQgbj0wO248ZTsrK24pe2NvbnN0IGU9TWF0aC5mbG9vcig2MipNYXRoLnJhbmRvbSgpKTt0Kz1yW2VdfXJldHVybiB0fX0sNjQwNzQ0KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlLHQsbil7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGUsdCksbil9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZT4wP01hdGguZmxvb3IoZSk6TWF0aC5jZWlsKGUpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIGUlMj09MH1uLmQodCx7Y2xhbXA6KCk9PnIsaXNFdmVuOigpPT5zLHRvSW50OigpPT5vfSl9LDExNTI5MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtmb3JjZUxUUlN0cjooKT0+bCxpc1J0bDooKT0+cyxzZXREb2N1bWVudERpckdldHRlcjooKT0+byxzdHJpcExUUk1hcmtzOigpPT51fSk7bigzMjA0MDMpO2xldCByPSgpPT5udWxsO2Z1bmN0aW9uIG8oZSl7cj1lfWNvbnN0IHM9KCk9PiJydGwiPT09ZnVuY3Rpb24oKXtjb25zdCBlPXIoKTtpZihudWxsPT09ZSl0aHJvdyBuZXcgRXJyb3IoIkRvY3VtZW50IGRpcmVjdGlvbiBnZXR0ZXIgaXMgbm90IHNldCwgY2FsbCBzZXREb2N1bWVudERpckdldHRlciB0byBzZXQgaXQiKTtyZXR1cm4gZX0oKSxpPSLigKoiLGM9IuKArCIsYT1uZXcgUmVnRXhwKCLigI584oCPfOKAqnzigKt84oCsIiwiZyIpO2Z1bmN0aW9uIHUoZSl7cmV0dXJuIiIhPT1lJiZzKCkmJm51bGwhPWU/ZS5yZXBsYWNlKGEsIiIpOmV9ZnVuY3Rpb24gbChlKXtyZXR1cm4iIiE9PWUmJnMoKSYmbnVsbCE9ZT9pK2UrYzplfXZhciBkOyFmdW5jdGlvbihlKXtlLkxUUj0ibHRyIixlLlJUTD0icnRsIixlLlVOS05PV049IiJ9KGR8fChkPXt9KSl9LDExMTk1MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjb21wYXJlU3ltYm9sczooKT0+aCxkZWNvZGVFeHRlbmRlZFN5bWJvbDooKT0+cCxlbmNvZGVFeHRlbmRlZFN5bWJvbDooKT0+byxlbmNvZGVFeHRlbmRlZFN5bWJvbFN0cnVjdHVyYWw6KCk9PmwsZXh0cmFjdEV4dGVuZGVkU3ltYm9sOigpPT5mLGlzRW5jb2RlZEV4dGVuZGVkU3ltYm9sOigpPT5kLApyZXBsYWNlRXh0ZW5kZWRTeW1ib2w6KCk9Pmd9KTt2YXIgcj1uKDYwMTg0MSk7ZnVuY3Rpb24gbyhlKXtyZXR1cm4iPSIrSlNPTi5zdHJpbmdpZnkocyhlKSl9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gT2JqZWN0LmtleXMoZSkuc29ydCgpLnJlZHVjZSgoKHQsbik9PigiW29iamVjdCBPYmplY3RdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlW25dKT90W25dPXMoZVtuXSk6dFtuXT1lW25dLHQpKSx7fSl9ZnVuY3Rpb24gaShlKXtyZXR1cm4oMCxyLmlzU3RyaW5nKShlKX1mdW5jdGlvbiBjKGUpe3JldHVybiFpKGUpJiYiaW5wdXRzImluIGV9ZnVuY3Rpb24gYShlKXtyZXR1cm4haShlKSYmInJlcGxheSJpbiBlfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIGEoZSl8fGZ1bmN0aW9uKGUpe3JldHVybiFpKGUpJiZhKGUuc3ltYm9sKX0oZSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4gYyhlKXx8dShlKXx8ZS5zZXNzaW9ufHxlLmFkanVzdG1lbnR8fGVbImN1cnJlbmN5LWlkIl18fGVbInVuaXQtaWQiXXx8ZS5tZXRyaWM/byhlKTplLnN5bWJvbH1mdW5jdGlvbiBkKGUpe3JldHVybiI9Ij09PWVbMF19ZnVuY3Rpb24gcChlKXtpZighZChlKSlyZXR1cm57c3ltYm9sOmV9O3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlLnNsaWNlKDEpKX1jYXRjaCh0KXtyZXR1cm57c3ltYm9sOmV9fX1mdW5jdGlvbiBmKGUpe2lmKGkoZSkpcmV0dXJue3N5bWJvbDplfTtsZXQgdD1lO2Zvcig7IWkodC5zeW1ib2wpOyl0PXQuc3ltYm9sO3JldHVybiB0fWNvbnN0IG09WyJzeW1ib2wiLCJzZXNzaW9uIiwidW5pdC1pZCIsImN1cnJlbmN5LWlkIiwibWV0cmljIiwiYWRqdXN0bWVudCIsImJhY2thZGp1c3RtZW50Iiwic2V0dGxlbWVudC1hcy1jbG9zZSJdO2Z1bmN0aW9uIGgoZSx0KXtyZXR1cm4gbS5ldmVyeSgobj0+ZVtuXT09PXRbbl0pKX1mdW5jdGlvbiBnKGUsdCl7bGV0IG49ZTtmb3IoOyFpKG4uc3ltYm9sKTspbj1uLnN5bWJvbDtuLnN5bWJvbD10fX0sMzQ0Nzg1KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigzNjMyNjkpLG89bigxMzg2MzgpLHM9big3MjcwOSksaT1uKDY1ODk5NSksYz1uKDE2Nzg5NiksYT1uKDQ5MDM3OCk7bGV0IHU9ITEsbD1udWxsLGQ9bnVsbDtyLm1vYmlsZXRvdWNofHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixoLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYoISh0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2xvc2VzdCgnW2RhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzPSJ0cnVlIl0nKSYmdC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpKSlyZXR1cm47aChlLCEwKX0pLHtjYXB0dXJlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLChmdW5jdGlvbihlKXtlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZoKGUsITApfSkse2NhcHR1cmU6ITB9KSk7Y29uc3QgcD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKCk9PntpZihsJiZsLm9wdGlvbnMudGFyZ2V0KXtsZXQgZTtlPSJpc0Nvbm5lY3RlZCJpbiBsLm9wdGlvbnMudGFyZ2V0P2wub3B0aW9ucy50YXJnZXQuaXNDb25uZWN0ZWQ6ZG9jdW1lbnQuYm9keS5jb250YWlucyhsLm9wdGlvbnMudGFyZ2V0KSxlfHx5KCl9fSkpLGY9KGUsdD17fSk9Pntjb25zdHtjb250ZW50Om4sLi4ucn09RSh0KSxvPWEuZ2V0RGF0YUZyb21UYXJnZXQoZSkscz1PYmplY3QuYXNzaWduKG8scik7cmV0dXJuIm5vbmUiIT09bi50eXBlJiYocy5jb250ZW50PW4pLCEoIm5vbmUiPT09cy5jb250ZW50LnR5cGUmJiFzLmhvdGtleSkmJihzLnRhcmdldD1lLG0ocyksITApfSxtPWU9Pntjb25zdCB0PUUoZSksbj1hLmdldFRvb2x0aXAodCk7aWYobD17b3B0aW9uczp0LGVsZW1lbnQ6bn0sKDAsYy5zZXRUb29sdGlwKShuKSwoMCxpLmNsZWFyU2NoZWR1bGUpKCksIXUpcmV0dXJuIGEuaGlkZVRvb2x0aXAobiksdm9pZCgwLGkuc2NoZWR1bGVSZW5kZXIpKCgoKT0+dihuKSksZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLnRvb2x0aXBEZWxheXx8aXNOYU4oZS50b29sdGlwRGVsYXkpPzUwMDplLnRvb2x0aXBEZWxheX0odCkpO2NvbnN0e3Rvb2x0aXBEZWJvdW5jZTpyfT1lOyJudW1iZXIiIT10eXBlb2Ygcnx8aXNOYU4ocik/dihuKTooMCxpLnNjaGVkdWxlUmVuZGVyKSgoKCk9PnYobikpLHIpfTtmdW5jdGlvbiBoKGUsdCl7aWYoInNvdXJjZUNhcGFiaWxpdGllcyJpbiBlJiZlLnNvdXJjZUNhcGFiaWxpdGllcz8uZmlyZXNUb3VjaEV2ZW50cylyZXR1cm47Y29uc3Qgbj1mdW5jdGlvbihlLHQsbil7Y29uc3Qgcj1bXTtmb3IoO2UmJmUhPT10OyllLmNsYXNzTGlzdCYmZS5jbGFzc0xpc3QuY29udGFpbnMobikmJnIucHVzaChlKSxlPWUucGFyZW50RWxlbWVudHx8YihlLnBhcmVudE5vZGUpO3JldHVybiByfShlLnRhcmdldCxlLmN1cnJlbnRUYXJnZXQsImFwcGx5LWNvbW1vbi10b29sdGlwIik7Zm9yKGNvbnN0IHIgb2Ygbil7aWYoZSBpbnN0YW5jZW9mIE1vdXNlRXZlbnQpaWYoImJ1dHRvbnMiaW4gZSl7aWYoMSZlLmJ1dHRvbnMpY29udGludWV9ZWxzZSBpZigxPT09ZS53aGljaCljb250aW51ZTtjb25zdCBuPSgpPT5mKHIpO2lmKG4oKSl7Y29uc3QgZT1lPT5vKG51bGwsITApLG89KHMsaT0hMSk9PntyLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNvbW1vbi10b29sdGlwLXVwZGF0ZSIsbiksci5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixvKSxyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbyksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLHtjYXB0dXJlOiEwfSksdCYmKHIucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsbyksci5yZW1vdmVFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixvKSksZCYmKGQuZGVzdHJveSgpLGQ9bnVsbCkseShpKX07ci5hZGRFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLG4pLHIuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsbyksCnIuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixvKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUse2NhcHR1cmU6ITB9KSx0JiYoci5hZGRFdmVudExpc3RlbmVyKCJibHVyIixvKSxyLmFkZEV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLG8pKSxudWxsPT09ZCYmKGQ9KDAscy5jcmVhdGVHcm91cCkoe2Rlc2M6IlRvb2x0aXAifSksZC5hZGQoe2Rlc2M6IkhpZGUiLGhvdGtleToyNyxoYW5kbGVyOm99KSk7YnJlYWt9fX1mdW5jdGlvbiBnKCl7KDAsYy5lbXB0eSkoKSx1PSExLGw9bnVsbH1jb25zdCB5PShlLHQpPT57aWYoKDAsaS5jbGVhclNjaGVkdWxlKSgpLCgwLG8uZW5zdXJlTm90TnVsbCkocCkuZGlzY29ubmVjdCgpLCFsKXJldHVybjtpZighZSYmIXUpcmV0dXJuO2NvbnN0e2VsZW1lbnQ6bixvcHRpb25zOnJ9PWwscz0oKT0+e24ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIscyksYS5oaWRlVG9vbHRpcChuKSxlP2coKTooMCxpLnNjaGVkdWxlUmVtb3ZlKSgoKCk9PntnKCl9KSwyNTApLHQ/LigpfTtyLnRvb2x0aXBIaWRlRGVsYXk/KDAsaS5zY2hlZHVsZUhpZGUpKCgoKT0+e24ucXVlcnlTZWxlY3RvcigiOmhvdmVyIik/bi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixzKTpzKCl9KSxyLnRvb2x0aXBIaWRlRGVsYXkpOnMoKX07ZnVuY3Rpb24gdihlKXtjb25zdHtvcHRpb25zOnR9PSgwLG8uZW5zdXJlTm90TnVsbCkobCk7aWYoYS5zZXRTdHlsZShlLHQpLGEuc2hvd1Rvb2x0aXAoZSksKDAsby5lbnN1cmVOb3ROdWxsKShwKS5vYnNlcnZlKGRvY3VtZW50LHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pLHU9ITAsdC5mb3JjZUhpZGVPbk1vdmUpe2NvbnN0IGU9KCk9Pntkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSkseSgpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSl9fWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGUmJihlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREU/ZTpudWxsKX1mdW5jdGlvbiBFKGUpe2lmKGZ1bmN0aW9uKGUpe3JldHVybiJjb250ZW50ImluIGV9KGUpKXJldHVybiBlO2NvbnN0e2lubmVyOnQsaHRtbDpuLHRleHQ6ciwuLi5vfT1lO2xldCBzPXt0eXBlOiJub25lIn07cmV0dXJuIHQmJihzPXt0eXBlOiJlbGVtZW50IixkYXRhOnR9KSxyJiYocz17dHlwZTpuPyJodG1sIjoidGV4dCIsZGF0YTpyfSkse2NvbnRlbnQ6cywuLi5vfX19LDEzNjk5MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjb3B5cmlnaHRMYWJlbDooKT0+bH0pO3ZhciByLG89bigxODUyNzEpLHM9big5MTQ0ODcpLGk9bi5uKHMpLGM9big2MDE4NDEpLGE9bigzODcyMzEpLHU9bigzOTkwOTIpO2Z1bmN0aW9uIGwoe3N2Z1RleHQ6ZSxpY29uOnQsdGhlbWU6cyx1cmw6bCxtb2RlOmQsdmVydGljYWxQb3NpdGlvbjpwPXIuVmVydGljYWwuQm90dG9tLGhvcml6b250YWxQb3NpdGlvbjpmPXIuSG9yaXpvbnRhbC5FbmQsc25hcFRvRWRnZTptPSEwLGlzRXhwYW5kZWQ6aD0hMSxjbGFzc05hbWU6Z30pe2xldCB5O3N3aXRjaChkKXtjYXNlIm5ldyI6Y2FzZSJ3aXRoX2JvcmRlciI6Y2FzZSJsYXJnZV90cmFkZSI6eT0oMCxjLmNsb25lKShzKTticmVhaztkZWZhdWx0Onk9KDAsYS5tZXJnZVRoZW1lcykoKDAsYy5jbG9uZSkodSkscyl9Y29uc3Qgdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7bGV0IGI7bCYmKGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpLGIuY2xhc3NMaXN0LmFkZCguLi55LmxhYmVsX19saW5rLnNwbGl0KC9ccy8pKSxiLmhyZWY9bCxiLnRhcmdldD0iX2JsYW5rIixiLnJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciIsYi5zZXRBdHRyaWJ1dGUoImRhdGEtdGFyZ2V0LXR5cGUiLCJjb3B5cmlnaHQiKSxiLmFyaWFMYWJlbD1vLnQobnVsbCx2b2lkIDAsbig1MTc4NTkpKSx2LmFwcGVuZChiKSksdi5jbGFzc05hbWU9aSgpKHkubGFiZWwsZj09PXIuSG9yaXpvbnRhbC5TdGFydCYmeS5zdGFydCxmPT09ci5Ib3Jpem9udGFsLkVuZCYmeS5lbmQscD09PXIuVmVydGljYWwuVG9wJiZ5LnRvcCxwPT09ci5WZXJ0aWNhbC5Cb3R0b20mJnkuYm90dG9tLG0mJiJsYXJnZV90cmFkZSIhPT1kJiZ5LnNuYXAsImxhcmdlX29sZCI9PT1kJiZ5LmxhcmdlLChofHwibGFyZ2VfdHJhZGUiPT09ZCkmJnkuZXhwYW5kZWQsZywianMtY29weXJpZ2h0LWxhYmVsIiksdi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCgpPT57ZnVuY3Rpb24gZSgpe3YuY2xhc3NMaXN0LnJlbW92ZSh5LmV4cGFuZGVkQnlDbGljayksdi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixlKX12LmNsYXNzTGlzdC5jb250YWlucyh5LmV4cGFuZGVkV2l0aFRyYW5zaXRpb24pfHx2LmNsYXNzTGlzdC5jb250YWlucyh5LmV4cGFuZGVkKXx8KHYuY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWRCeUNsaWNrKT9sfHxlKCk6KHYuY2xhc3NMaXN0LmFkZCh5LmV4cGFuZGVkQnlDbGljayksdi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixlKSkpfSkpO2NvbnN0IEU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO0UuY2xhc3NOYW1lPXkubG9nb1dyYXAsRS5pbm5lckhUTUw9dDtjb25zdCB3PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtyZXR1cm4gdy5jbGFzc05hbWU9eS5zdmdUZXh0V3JhcCx3LmlubmVySFRNTD1lLHYuYXBwZW5kKEUsdyksW3YseV19IWZ1bmN0aW9uKGUpe2xldCB0LG47IWZ1bmN0aW9uKGUpe2VbZS5Cb3R0b209MF09IkJvdHRvbSIsZVtlLlRvcD0xXT0iVG9wIn0odD1lLlZlcnRpY2FsfHwoZS5WZXJ0aWNhbD17fSkpLGZ1bmN0aW9uKGUpe2VbZS5TdGFydD0wXT0iU3RhcnQiLGVbZS5FbmQ9MV09IkVuZCJ9KG49ZS5Ib3Jpem9udGFsfHwoZS5Ib3Jpem9udGFsPXt9KSl9KHJ8fChyPXt9KSl9LDY1MzgxNyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHsKY3JlYXRlQ29weXJpZ2h0TGFiZWw6KCk9PmN9KTt2YXIgcj1uKDkxNDQ4Nyksbz1uLm4ocikscz1uKDEzNjk5MSksaT1uKDUyODg2NCk7ZnVuY3Rpb24gYyh7c2hlcmlmZk9wdGlvbnM6ZSwuLi50fSl7Y29uc3RbbixyXT0oMCxzLmNvcHlyaWdodExhYmVsKSh0KSxjPWUmJmUuaW5jbHVkZXMoaS5Lbm93bkFjdGlvbi5FeHBhbmQpLGE9ZSYmZS5pbmNsdWRlcyhpLktub3duQWN0aW9uLkxhcmdlVHJhZGVMb2dvKTtyZXR1cm4gbi5jbGFzc05hbWU9bygpKG4uY2xhc3NOYW1lLChjfHxhKSYmci5leHBhbmRlZFdpdGhUcmFuc2l0aW9uKSxufX0sNTI4ODY0KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse0tub3duQWN0aW9uOigpPT5yLHdpZGdldFNoZXJpZmZBY3Rpb25zOigpPT5vfSksZnVuY3Rpb24oZSl7ZS5FeHBhbmQ9ImV4cGFuZC1sb2dvIixlLkxhcmdlVHJhZGVMb2dvPSJsYXJnZS10cmFkZS1sb2dvIn0ocnx8KHI9e30pKTtjb25zdCBvPW5ldyBTZXQoW3IuRXhwYW5kLHIuTGFyZ2VUcmFkZUxvZ29dKX0sMTgwMTk4KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2xldCByPW51bGwsbz0hMTtyZXR1cm4gUHJvbWlzZS5hbGwoW24uZSg2NDY0NCkudGhlbihuLnQuYmluZChuLDc3OTQ3NCwxOSkpLFByb21pc2UuYWxsKFtuLmUoMzIzODcpLG4uZSg3MTMwMCldKS50aGVuKG4uYmluZChuLDU3MTMwMCkpLFByb21pc2UuYWxsKFtuLmUoMzYyMjIpLG4uZSg0NzU1MSksbi5lKDcxNjMpLG4uZSgzMjM4Nyksbi5lKDQ1MzIyKV0pLnRoZW4obi5iaW5kKG4sNzMyOTQ2KSldKS50aGVuKCgoW24scyxpXSk9PntvfHwocj1zLmNyZWF0ZVJlYWN0Um9vdChuLmNyZWF0ZUVsZW1lbnQoaS5MaWdodHdlaWdodENoYXJ0UHJpY2VUaW1lVG9vbHRpcCx7Li4uZX0pLHQpKX0pKSwoKT0+e289ITAsdC5yZW1vdmUoKSxyPy51bm1vdW50KCl9fW4uZCh0LHtjcmVhdGVMaWdodHdlaWdodENoYXJ0UHJpY2VUaW1lVG9vbHRpcDooKT0+cn0pfSwyMzQzMShlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByLG87bi5kKHQse0lGcmFtZUV2ZW50czooKT0+b30pLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlNldFN5bWJvbD0ic2V0LXN5bWJvbCIsZS5TZXRJbnRlcnZhbD0ic2V0LWludGVydmFsIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShyfHwocj17fSkpLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlN5bWJvbENsaWNrPSJ0di13aWRnZXQtc3ltYm9sLWNsaWNrIixlLldpZGdldExvYWQ9InR2LXdpZGdldC1sb2FkIixlLldpZGdldFJlYWR5PSJ0di13aWRnZXQtcmVhZHkiLGUuUmVzaXplSWZyYW1lPSJ0di13aWRnZXQtcmVzaXplLWlmcmFtZSIsZS5Ob0RhdGE9InR2LXdpZGdldC1uby1kYXRhIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShvfHwobz17fSkpfSw3MzIxMTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCxuKXtjb25zdCByPXtuYW1lOmUsZnJhbWVFbGVtZW50SWQ6dCxkYXRhOm59O3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UociwiKiIpfW4uZCh0LHtkaXNwYXRjaEV2ZW50VG9QYXJlbnQ6KCk9PnJ9KX0sNDc5MzQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZW5hYmxlZDooKT0+YyxnZXRDb25maWc6KCk9PnV9KTt2YXIgcj1uKDUwMjU4Nyksbz1uKDEyNzcxMSkscz1uKDMxODk3NCksaT1uKDIxMjIyOSk7ZnVuY3Rpb24gYyhlLHQsbil7bGV0IHI9d2luZG93LnVzZXI7biYmKHI9bik7Y29uc3Qgbz11KGUsdCxyKTtpZighbylyZXR1cm4hMTtpZihvLmRpc2FibGVfb25fdHJpYWwmJighcnx8ci5pc190cmlhbCkpcmV0dXJuITE7Y29uc3QgaT1vLmRpc2FibGVfb25fbGl0ZV9wbGFuO2lmKGkmJnIuaXNfbGl0ZV9wbGFuKXtpZigiYWxsIj09PWkpcmV0dXJuITE7aWYoImV4Y2x1ZGVfbW9iaWxlIj09PWkmJiFzLkNoZWNrTW9iaWxlLmFueSgpKXJldHVybiExfXJldHVybiEwfWZ1bmN0aW9uIGEoZSl7Y29uc3QgdD1yW2VdO3JldHVybiB0P3QuZXh0ZW5kcz9PYmplY3QuYXNzaWduKHt9LGEodC5leHRlbmRzKSx0KTp0Om51bGx9ZnVuY3Rpb24gdShlLHQsbil7bGV0IHI9YSh0fHwoZnVuY3Rpb24oZSl7bGV0IHQ9d2luZG93LnVzZXI7InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy51c2VyJiYodD13aW5kb3cudXNlciksZSYmKHQ9ZSk7bGV0IG49dD8ucHJvX3BsYW58fCJmcmVlIjtyZXR1cm4iZnJlZSIhPT1uJiYhKDAsaS5pc1RyaWFsUHJvZHVjdCkobil8fChuPSgwLGkuZ2V0UHJvZHVjdEZvclRyaWFsKShuKSksbn0obik/PyIiKSk7aWYoIXIpcmV0dXJuIG51bGw7Y29uc3Qgcz13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyO3JldHVybiBzJiZvW3NdJiYocj1PYmplY3QuYXNzaWduKHt9LHIsb1tzXSkpLHImJnJbZV18fG51bGx9fSw4NjIyMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7TG9nb1NpemU6KCk9PnIuTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT5sfSk7dmFyIHI9big2MjAzNTQpLG89bigxMzg2MzgpLHM9big2MzE2MzQpLGk9big4MTA0MSk7Y29uc3QgYz0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiTG9nb1VybFJlc29sdmVyIik7Y2xhc3MgYXtjb25zdHJ1Y3RvcihlKXsoMCxvLmFzc2VydCkoIiIhPT1lLCJTMyBiYXNlIHVybCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpLHRoaXMuX2Jhc2VVcmw9ZX1nZXRTeW1ib2xMb2dvVXJsKGUsdCl7aWYoIiI9PT1lKXJldHVybiBjLmxvZ1dhcm4oImxvZ28gaWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSwiIjtzd2l0Y2godCl7Y2FzZSByLkxvZ29TaXplLk1lZGl1bTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS5zdmdgO2Nhc2Ugci5Mb2dvU2l6ZS5MYXJnZTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS0tYmlnLnN2Z2B9fWdldENvdW50cnlGbGFnVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiY291bnRyeS8iK2UsdCl9Z2V0UHJvdmlkZXJMb2dvVXJsKGUsdCl7CnJldHVybiB0aGlzLmdldFN5bWJvbExvZ29VcmwoInByb3ZpZGVyLyIrZSx0KX1nZXRTb3VyY2VMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgic291cmNlLyIrZSx0KX1nZXRCbG9ja2NoYWluQ29udHJhY3RMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiYmxvY2tjaGFpbi8iK2UsdCl9Z2V0Q2FuZGxlc3RpY2tQYXR0ZXJuTG9nb1VybChlLHQ9aS5TdGRUaGVtZS5MaWdodCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybChgY2FuZGxlcGF0dGVybi8ke2V9LSR7dH1gLHIuTG9nb1NpemUuTWVkaXVtKX19bGV0IHU7ZnVuY3Rpb24gbCgpe3JldHVybiBmdW5jdGlvbigpe2lmKCF1KXtjb25zdCBlPSgwLHMuZ2V0SW5pdERhdGEpKCksdD1lLnNldHRpbmdzP2Uuc2V0dGluZ3MuUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMOiIiO3U9bmV3IGEodCl9cmV0dXJuIHV9KCl9fSwyMzQ5NjQoZSx0LG4peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKGUsdCl7Y29uc3Qgcj1hd2FpdCBQcm9taXNlLmFsbChbbi5lKDI4ODMxKSxuLmUoODQzMDYpLG4uZSgyOTI5Niksbi5lKDUyMzk2KSxuLmUoNjAwNjIpLG4uZSgyMDM1NCksbi5lKDEzNDkyKSxuLmUoMzc3NDYpLG4uZSgxMjM4NSksbi5lKDgxMDcyKSxuLmUoOTQyMzIpLG4uZSgxOTU5NSksbi5lKDE5Nzg3KSxuLmUoODU3OSksbi5lKDE3MDg3KSxuLmUoNTczMDApLG4uZSgxMjA1MSksbi5lKDg5NTU4KSxuLmUoMTAzNjYpLG4uZSg0MDkxNCksbi5lKDkwOTYwKSxuLmUoODc3NDApLG4uZSg3ODg5OSksbi5lKDY3MjEyKSxuLmUoODA5MTUpLG4uZSgxNTM0KSxuLmUoMjgxNzYpLG4uZSgzOTYwOSksbi5lKDU1MjI5KSxuLmUoNjUxMDApLG4uZSg0MjcwNildKS50aGVuKG4uYmluZChuLDUwNjI3NSkpO3JldHVybiByLnNob3dTaW1wbGVEaWFsb2coZSxyLndhcm5pbmdNb2R1bGUsdCl9bi5kKHQse3Nob3dXYXJuaW5nOigpPT5yfSl9LDg1MTQ1OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc1NwcmVhZDooKT0+bCxzaG9ydE5hbWVGcm9tVG9rZW5zOigpPT5kLHRva2VuaXplOigpPT5hfSk7dmFyIHIsbz1uKDkwMTAyMikscz1uKDU2OTM5OCk7IWZ1bmN0aW9uKGUpe2UuU3ltYm9sPSJzeW1ib2wiLGUuSW5jb21wbGV0ZVN5bWJvbD0iaW5jb21wbGV0ZVN5bWJvbCIsZS5OdW1iZXI9Im51bWJlciIsZS5JbmNvbXBsZXRlTnVtYmVyPSJpbmNvbXBsZXRlTnVtYmVyIixlLlNlcGFyYXRvclByZWZpeD0ic2VwYXJhdG9yUHJlZml4IixlLk9wZW5CcmFjZT0ib3BlbkJyYWNlIixlLkNsb3NlQnJhY2U9ImNsb3NlQnJhY2UiLGUuUGx1cz0icGx1cyIsZS5NaW51cz0ibWludXMiLGUuTXVsdGlwbHk9Im11bHRpcGx5IixlLkRpdmlkZT0iZGl2aWRlIixlLlBvd2VyPSJwb3dlciIsZS5XaGl0ZXNwYWNlPSJ3aGl0ZXNwYWNlIixlLlVucGFyc2VkPSJ1bnBhcnNlZCJ9KHJ8fChyPXt9KSk7Y29uc3QgaT0vKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXSkoPzpbXi0rXC8qXlxzXSd8W2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKSp8Jy4rPycvLGM9KGU9KDAscy5pc0ZlYXR1cmVFbmFibGVkKSgiYWxsb3dfdHJhaWxpbmdfd2hpdGVzcGFjZV9pbl9udW1iZXJfdG9rZW4iKSk9Pih7bnVtYmVyOmU/L1xkKyg/OlwuXGQqfCg/IVthLXpBLVowLTlfITouJl0pKSg/OlxzKig/PVxzKiQpKT98XC5cZCsoPzpccyooPz1ccyokKSk/LzovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxpbmNvbXBsZXRlTnVtYmVyOi9cLi8sc3ltYm9sOmksaW5jb21wbGV0ZVN5bWJvbDovJ1teJ10qLyxzZXBhcmF0b3JQcmVmaXg6by5TRVBBUkFUT1JfUFJFRklYLG9wZW5CcmFjZToiKCIsY2xvc2VCcmFjZToiKSIscGx1czoiKyIsbWludXM6Ii0iLG11bHRpcGx5OiIqIixkaXZpZGU6Ii8iLHBvd2VyOiJeIix3aGl0ZXNwYWNlOi9bXDAtXHgyMFxzXSsvLHVucGFyc2VkOm51bGx9KTtmdW5jdGlvbiBhKGUsdD1jKCkpe2lmKCFlKXJldHVybltdO2NvbnN0IG49W10scj1PYmplY3Qua2V5cyh0KTtsZXQgbztjb25zdCBzPSgoZT1jKCkpPT5uZXcgUmVnRXhwKE9iamVjdC52YWx1ZXMoZSkubWFwKChlPT57cmV0dXJuIG51bGw9PT1lPyIiOmAoJHsic3RyaW5nIj09dHlwZW9mIGU/KHQ9ZSx0LnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIikpOmUuc291cmNlfSlgO3ZhciB0fSkpLmZpbHRlcigoZT0+IiIhPT1lKSkuY29uY2F0KCIuIikuam9pbigifCIpLCJnIikpKHQpO2Zvcig7bz1zLmV4ZWMoZSk7KXtsZXQgZT0hMTtmb3IobGV0IHQ9ci5sZW5ndGg7dC0tOylpZihvW3QrMV0pe3JbdF0mJm4ucHVzaCh7dmFsdWU6b1t0KzFdLHR5cGU6clt0XSxwcmVjZWRlbmNlOjAsb2Zmc2V0Om8uaW5kZXh9KSxlPSEwO2JyZWFrfWV8fG4ucHVzaCh7dmFsdWU6b1swXSx0eXBlOiJ1bnBhcnNlZCIscHJlY2VkZW5jZTowLG9mZnNldDpvLmluZGV4fSl9cmV0dXJuIG59ZnVuY3Rpb24gdShlKXtyZXR1cm4icGx1cyI9PT1lfHwibWludXMiPT09ZXx8Im11bHRpcGx5Ij09PWV8fCJkaXZpZGUiPT09ZXx8InBvd2VyIj09PWV9ZnVuY3Rpb24gbChlKXtyZXR1cm4gZS5sZW5ndGg+MSYmZS5zb21lKChlPT51KGUudHlwZSkpKX1mdW5jdGlvbiBkKGUpe3JldHVybiBmdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9W107Zm9yKGNvbnN0IG4gb2YgZSkid2hpdGVzcGFjZSIhPT1uLnR5cGUmJnQucHVzaChuKTtyZXR1cm4gdH0oZSk7Y29uc3QgdD1bXSxuPVtdO2xldCByO2ZvcihsZXQgbz0wO288ZS5sZW5ndGg7bysrKXtjb25zdCBzPWVbb107c3dpdGNoKHMudHlwZSl7Y2FzZSJwbHVzIjpjYXNlIm1pbnVzIjpjYXNlIm11bHRpcGx5IjpjYXNlImRpdmlkZSI6Y2FzZSJwb3dlciI6bi5sZW5ndGgmJm5bbi5sZW5ndGgtMV0ubWluUHJlY2VkZW5jZT5zLnByZWNlZGVuY2UmJihuW24ubGVuZ3RoLTFdLm1pblByZWNlZGVuY2U9cy5wcmVjZWRlbmNlKTticmVhaztjYXNlIm9wZW5CcmFjZSI6cj17bWluUHJlY2VkZW5jZToxLzAsCm9wZW5CcmFjZUluZGV4Om99LG4ucHVzaChyKTticmVhaztjYXNlImNsb3NlQnJhY2UiOntpZihyPW4ucG9wKCksIXIpYnJlYWs7Y29uc3Qgcz1lW3Iub3BlbkJyYWNlSW5kZXgtMV0saT1lW28rMV0sYz1zJiYoInBsdXMiPT09cy50eXBlfHwibXVsdGlwbHkiPT09cy50eXBlKTsoIXUoaT8udHlwZSl8fGk/LnByZWNlZGVuY2U8PXIubWluUHJlY2VkZW5jZSkmJighdShzPy50eXBlKXx8cz8ucHJlY2VkZW5jZTxyPy5taW5QcmVjZWRlbmNlfHxzPy5wcmVjZWRlbmNlPT09cj8ubWluUHJlY2VkZW5jZSYmYykmJih0LnVuc2hpZnQoci5vcGVuQnJhY2VJbmRleCksdC5wdXNoKG8pLG4ubGVuZ3RoJiZuW24ubGVuZ3RoLTFdLm1pblByZWNlZGVuY2U+ci5taW5QcmVjZWRlbmNlJiYobltuLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPXIubWluUHJlY2VkZW5jZSkpfX19Zm9yKGxldCBuPXQubGVuZ3RoO24tLTspZS5zcGxpY2UodFtuXSwxKTtyZXR1cm4gZX0oZSkucmVkdWNlKCgoZSx0KT0+e2lmKCJzeW1ib2wiIT09dC50eXBlKXJldHVybiBlK3QudmFsdWU7Y29uc3RbLG5dPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9L14nPyg/OihbQS1aMC05X10rKTopPyguKj8pJz8kL2kuZXhlYyhlLnZhbHVlKTtpZihudWxsPT09dClyZXR1cm5bdm9pZCAwLHZvaWQgMF07cmV0dXJuW3RbMV0sdFsyXV19KHQpO3JldHVybiBuP2UrbjplfSksIiIpfX0sNjE5OTkyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2lzVGlja3NFbmFibGVkOigpPT5vfSk7dmFyIHI9bigzMTg5NzQpO24oOTMwMjMxKTtmdW5jdGlvbiBvKCl7cmV0dXJuISgwLHIub25XaWRnZXQpKCl9fSw3MjgzMTIoZSx0LG4peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKGUsdCxyLG8scyxpKXtyZXR1cm4oYXdhaXQgUHJvbWlzZS5hbGwoW24uZSg5NDk0Nyksbi5lKDg0MzA2KSxuLmUoODEwNzIpLG4uZSgyMzYyNCksbi5lKDk1MDQpLG4uZSg0NzYzMiksbi5lKDkxODU1KSxuLmUoNTgwNTEpLG4uZSgzODQxMSksbi5lKDMyMzg3KSxuLmUoNDIyODgpLG4uZSg2OTExMyksbi5lKDE2MTApXSkudGhlbihuLmJpbmQobiw0NjY3ODEpKSkuY3JlYXRlVGFiTGFiZWxzSW1wKGUsdCxyLG8scyxpKX1uLmQodCx7Y3JlYXRlVGFiTGFiZWxzOigpPT5yfSl9LDk2OTE2OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc1J0bDooKT0+ci5pc1J0bH0pO24oNjEwMjY4KTt2YXIgcj1uKDExNTI5Myl9LDU1NTE4NyhlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoKXt0cnl7cmV0dXJuIEpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KGxvY2F0aW9uLmhhc2guc3Vic3RyaW5nKDEpKSl9Y2F0Y2goZSl7cmV0dXJue319fW4uZCh0LHtwYXJzZVVybEhhc2hQYXJhbXM6KCk9PnJ9KX0sOTExMzI3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse21ha2VTeW1ib2xQYWdlVXJsOigpPT5nLG1ha2VUZW1wbGF0ZVN5bWJvbFVybDooKT0+bX0pO24oOTYzOTAwKTt2YXIgcj1uKDMwOTgzNiksbz1uKDI0MTkzNykscz1uKDczMDY0NSksaT1uKDg1MTQ1OCksYz1uKDE1NjgyOSk7Y29uc3QgYT1uZXcgU2V0KFsiU1A6U1BYIiwiQ0JPRTpTUFgiXSk7ZnVuY3Rpb24gdShlKXtjb25zdCB0PXsuLi5lfTtpZigic3ByZWFkIj09PXQudHlwZXx8ImV4cHJlc3Npb24iPT09dC50eXBlKXtjb25zdCBlPXQuc2hvcnROYW1lJiZsKHQuc2hvcnROYW1lKSxuPXQucHJvTmFtZSYmbCh0LnByb05hbWUpO3QudHlwZT12b2lkIDAsdC5zaG9ydE5hbWU9ZSx0LnByb05hbWU9bn1yZXR1cm4gdH1mdW5jdGlvbiBsKGUpe3JldHVybigwLGkudG9rZW5pemUpKGUpLmZpbmQoKGU9PiJzeW1ib2wiPT09ZS50eXBlKSk/LnZhbHVlfWZ1bmN0aW9uIGQoZSl7Y29uc3QgdD17c2hvcnROYW1lOmUuc2hvcnROYW1lLGV4Y2hhbmdlOmUuZXhjaGFuZ2UscHJvTmFtZTplLnByb05hbWUsdHlwZTplLnR5cGUsdHlwZXNwZWNzOmUudHlwZXNwZWNzLHJvb3Q6ZS5yb290fTtyZXR1cm4gdC5wcm9OYW1lJiZ0LnByb05hbWUuaW5jbHVkZXMoIjoiKSYmKFt0LmV4Y2hhbmdlLHQuc2hvcnROYW1lXT10LnByb05hbWUuc3BsaXQoIjoiKSksdH1mdW5jdGlvbiBwKGUsdCl7Y29uc3Qgbj1lbmNvZGVVUklDb21wb25lbnQodC5zaG9ydE5hbWV8fCIiKSxyPWVuY29kZVVSSUNvbXBvbmVudCh0LmV4Y2hhbmdlfHwiIiksbz1lbmNvZGVVUklDb21wb25lbnQodC5wcm9OYW1lfHwiIikscz1lbmNvZGVVUklDb21wb25lbnQodC5yb290fHwiIik7cmV0dXJuIGUucmVwbGFjZSgie3R2ZXhjaGFuZ2V9IixyKS5yZXBsYWNlKCJ7dHZzeW1ib2x9IixuKS5yZXBsYWNlKCJ7dHZwcm9zeW1ib2x9IixvKS5yZXBsYWNlKCJ7dHZyb290fSIscyl9ZnVuY3Rpb24gZihlLHQ9IiIpe2NvbnN0IG49ZChlKSx7dHlwZTpyLHR5cGVzcGVjczpvLHNob3J0TmFtZTpzLHByb05hbWU6aSxleGNoYW5nZTp1LHJvb3Q6bH09bjtyZXR1cm4gdm9pZCAwPT09cyYmdm9pZCAwPT09aT8oY29uc29sZS53YXJuKCJQYXJhbXMgbWlzc2VkIiksIi8iKTppJiZhLmhhcyhpKT9gL3N5bWJvbHMve3R2c3ltYm9sfS8ke3R9YDpyfHxvPyJjb21tb2RpdHkiPT09ciYmbyYmby5pbmNsdWRlcygiY2ZkIik/Ii9zeW1ib2xzL3t0dnN5bWJvbH0vP2V4Y2hhbmdlPXt0dmV4Y2hhbmdlfSI6IWx8fCFvfHwiZnV0dXJlcyIhPT1yfHxvLmluY2x1ZGVzKCJjb250aW51b3VzIikmJnM/LmVuZHNXaXRoKCIxISIpfHxvLmluY2x1ZGVzKCJleGNoYW5nZS1jb250aW51b3VzIik/dSYmKCJmb3JleCI9PT1yfHxvJiYoMCxjLmhhc0NyeXB0b1R5cGVzcGVjKShvKSk/Ii9zeW1ib2xzL3t0dnN5bWJvbH0vP2V4Y2hhbmdlPXt0dmV4Y2hhbmdlfSI6dT9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dmV4Y2hhbmdlfS17dHZyb290fTEhLyR7dH0/Y29udHJhY3Q9e3R2c3ltYm9sfWA6dT9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWB9ZnVuY3Rpb24gbShlLHQpe2xldCBuPWUKO2lmKCEve3R2c3ltYm9sfXx7dHZleGNoYW5nZX18e3R2cHJvc3ltYm9sfS8udGVzdChlKSl7bGV0IHI9InR2cHJvc3ltYm9sIjt2b2lkIDA9PT10LnByb05hbWUmJihyPSJ0dnN5bWJvbCIpLG49YCR7ZX0/dHZ3aWRnZXRzeW1ib2w9eyR7cn19YH1jb25zdCByPXAobixkKHUodCkpKTtpZighKDAscy5pc1NhZmVVcmwpKHIpKXRocm93IG5ldyBFcnJvcihgVGhlIHN5bWJvbCBVUkwgJHtyfSBpcyBub3QgYWxsb3dlZC5gKTtyZXR1cm4gcn1mdW5jdGlvbiBoKGUsdCxuLHMpe2NvbnN0IGk9KHdpbmRvdy5sb2NhbGVfZG9tYWlucz8oMCxvLmRldGVybWluZUJhc2VVcmwpKHdpbmRvdy5sb2NhbGVfZG9tYWlucyxzKTp3aW5kb3cubG9jYXRpb24ub3JpZ2luKStwKGUsZCh1KHQpKSk7cmV0dXJuIG4/KDAsci5hZGRVdG1Ub1VybCkoaSxuKTppfWZ1bmN0aW9uIGcoZSx0LG4scil7Y29uc3Qgbz11KGUpO3JldHVybiBoKGYobyxyKSxvLHQsbil9fSw0ODI1MDQoZSx0LG4pe2NvbnN0IHI9bigxOTk4MjcpO2UuZXhwb3J0cz1yLHIoZG9jdW1lbnQpLmFqYXhTZW5kKCgoZSx0LG4pPT57bi5jcm9zc0RvbWFpbiYmIW4uZm9yY2VMYW5ndWFnZUhlYWRlcnx8KHdpbmRvdy5sb2NhbGU/dC5zZXRSZXF1ZXN0SGVhZGVyKCJYLUxhbmd1YWdlIix3aW5kb3cubG9jYWxlKTpjb25zb2xlLndhcm4oIndpbmRvdy5sb2NhbGUgaXMgbm90IGRlZmluZWQiKSl9KSl9LDIxMjIyOShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRQcm9kdWN0Rm9yVHJpYWw6KCk9PnMsaXNUcmlhbFByb2R1Y3Q6KCk9Pm99KTtuKDgyOTE4MCksbigxODUyNzEpO2NvbnN0IHI9Il90cmlhbCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gbmV3IFJlZ0V4cChyKyIkIikudGVzdChlKX1mdW5jdGlvbiBzKGUpe3JldHVybiBlLnNwbGl0KHIpWzBdfX0sNDQzNTU3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3BhcnNlSHRtbEVsZW1lbnQ6KCk9PnN9KTtjb25zdCByPW5ldyBXZWFrTWFwO3ZhciBvO2Z1bmN0aW9uIHMoZSx0KXtjb25zdCBuPWZ1bmN0aW9uKGUsdCl7bGV0IG4sbztyZXR1cm4gbj1udWxsPT10P2RvY3VtZW50LmRvY3VtZW50RWxlbWVudDo5PT09dC5ub2RlVHlwZT90LmRvY3VtZW50RWxlbWVudDp0LHImJihvPXIuZ2V0KG4pKSxvfHwobz1uLm93bmVyRG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxvLnNlbGVjdE5vZGVDb250ZW50cyhuKSxyJiZyLnNldChuLG8pKSxvLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChlKX0oZSx0KSxvPW4uZmlyc3RFbGVtZW50Q2hpbGQ7cmV0dXJuIG51bGwhPT1vJiZuLnJlbW92ZUNoaWxkKG8pLG99IWZ1bmN0aW9uKGUpe2VbZS5FbGVtZW50PTFdPSJFbGVtZW50IixlW2UuRG9jdW1lbnQ9OV09IkRvY3VtZW50In0ob3x8KG89e30pKX0sMTAyNTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7Y29uc3Qgbj1PYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKSk7Zm9yKGNvbnN0IHIgb2YgdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxyKSYmKG5bcl09ZVtyXSk7cmV0dXJuIG59bi5kKHQse3BpY2tGaWVsZHM6KCk9PnJ9KX0sMzA5ODM2KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2FkZFV0bVRvVXJsOigpPT5vfSk7dmFyIHI9big2MDE1ODcpO2Z1bmN0aW9uIG8oZSx0KXtpZighLyhbYS16QS1aMC05Li1dKnRyYWRpbmd2aWV3LmNvbSl8bG9jYWxob3N0Ly50ZXN0KGUpKXJldHVybiBlO2NvbnN0IG49KDAsci5idWlsZFV0bVF1ZXJ5U3RyaW5nKSh0KTtpZigiIj09PW4pcmV0dXJuIGU7Y29uc3Qgbz1lLmluZGV4T2YoIj8iKSxzPWUuaW5kZXhPZigiIyIpLGk9LTEhPT1zO2lmKC0xIT09byYmKCFpfHxvPHMpKXtyZXR1cm5gJHtlLnNsaWNlKDAsbyl9PyR7aT9lLnNsaWNlKG8rMSxzKTplLnNsaWNlKG8rMSl9JiR7bn0ke2k/ZS5zbGljZShzKToiIn1gfWlmKGkpe3JldHVybmAke2Uuc2xpY2UoMCxzKX0/JHtufSR7ZS5zbGljZShzKX1gfXJldHVybmAke2V9PyR7bn1gfX0sNjAxNTg3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2J1aWxkVXRtUXVlcnlTdHJpbmc6KCk9PmMsZmlsdGVyVXRtSW5mbzooKT0+aX0pO3ZhciByPW4oNDkyNjc3KSxvPW4oNjQxNTkzKTtjb25zdCBzPVsidXRtX3NvdXJjZSIsInV0bV9tZWRpdW0iLCJ1dG1fY2FtcGFpZ24iXTtmdW5jdGlvbiBpKGUpe2NvbnN0IHQ9e307cmV0dXJuIHMuZm9yRWFjaCgobj0+e2NvbnN0IHI9ZVtuXTsic3RyaW5nIj09dHlwZW9mIHImJiIiIT09ciYmKHRbbl09KDAsby5odG1sRXNjYXBlKShyKSl9KSksdH1mdW5jdGlvbiBjKGUsdD0hMSl7Y29uc3Qgbj0oMCxyLmNyZWF0ZVVybFBhcmFtcykoZSk7cmV0dXJuIG4mJnQ/Ij8iK246bn19LDc3OTA5MShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgOCAxNCIgd2lkdGg9IjgiIGhlaWdodD0iMTQiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTIgMmw0IDUtNCA1Ii8+PC9zdmc+J30sMjIxMDYxKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse2dldExvZ0hpc3Rvcnk6KCk9PmgsZ2V0TG9nZ2VyOigpPT55LGdldFJhd0xvZ0hpc3Rvcnk6KCk9PmYsaXNIaWdoUmF0ZUVuYWJsZWQ6KCk9PnB9KSxmdW5jdGlvbihlKXtlW2UuRVJST1I9MV09IkVSUk9SIixlW2UuV0FSTklORz0yXT0iV0FSTklORyIsZVtlLklORk89M109IklORk8iLGVbZS5OT1JNQUw9NF09Ik5PUk1BTCIsZVtlLkRFQlVHPTVdPSJERUJVRyJ9KHJ8fChyPXt9KSk7bGV0IG89MDtjb25zdCBzPVtdO2xldCBpPW51bGwsYz1udWxsLGE9bnVsbCx1PW51bGwsbD1yLldBUk5JTkcsZD0hMTtmdW5jdGlvbiBwKCl7cmV0dXJuIGR9ZnVuY3Rpb24gZihlLHQpe2xldCBuPXMucmVkdWNlKCgoZSx0KT0+ZS5jb25jYXQodCkpLFtdKTtyZXR1cm4gbi5zb3J0KCgoZSx0KT0+ZS5pZC10LmlkKSksCnZvaWQgMCE9PXQmJihuPW4uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihuPW4uc2xpY2UoLWUpKSxufWZ1bmN0aW9uIG0oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9Y29uc3QgaD0oZSx0KT0+ZnVuY3Rpb24oZSx0KXtsZXQgbixyPTAsbz0wO2ZvcihuPWUubGVuZ3RoLTE7bj49MSYmKHIrPTgqKDErZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pLmxlbmd0aCksIShuLTE+MCYmKG89OCooMStlbmNvZGVVUklDb21wb25lbnQoZVtuLTFdKS5sZW5ndGgpLHIrbz50KSkpO24tLSk7cmV0dXJuIGUuc2xpY2Uobil9KGYoZSx0KS5tYXAobSksNzU0OTc0NzIpO2Z1bmN0aW9uIGcoZSx0LG4scyxkKXtpZih0PT09YyYmcy5pZD09PWEpcmV0dXJuO2NvbnN0IGY9bmV3IERhdGU7aWYoZTw9ci5OT1JNQUwmJmZ1bmN0aW9uKGUsdCxuLHIscyxpKXsiZnVuY3Rpb24iPT10eXBlb2Ygc3RydWN0dXJlZENsb25lJiYodD1zdHJ1Y3R1cmVkQ2xvbmUodCkpLHQ9dC5zbGljZSgwLGk/PzFlMyk7Y29uc3QgYz17aWQ6byxtZXNzYWdlOnQsc3ViU3lzdGVtSWQ6cix0aW1lc3RhbXA6TnVtYmVyKGUpfTtvKz0xLG4ucHVzaChjKSx2b2lkIDAhPT1zJiZuLmxlbmd0aD5zJiZuLnNwbGljZSgwLDEpfShmLHQsbixzLmlkLHMubWF4Q291bnQsZCksZTw9bCYmKCFzLmhpZ2hSYXRlfHxwKCkpJiYoIWl8fHMuaWQubWF0Y2goaSkpKXtjb25zdCBuPWYudG9JU09TdHJpbmcoKSsiOiIrcy5pZCsiOiIrdDtzd2l0Y2goZSl7Y2FzZSByLkRFQlVHOmNvbnNvbGUuZGVidWcobik7YnJlYWs7Y2FzZSByLklORk86Y2FzZSByLk5PUk1BTDpzLmNvbG9yP2NvbnNvbGUubG9nKCIlYyIrbiwiY29sb3I6ICIrcy5jb2xvcik6Y29uc29sZS5sb2cobik7YnJlYWs7Y2FzZSByLldBUk5JTkc6Y29uc29sZS53YXJuKG4pO2JyZWFrO2Nhc2Ugci5FUlJPUjpjb25zb2xlLmVycm9yKG4pfWM9dCxhPXMuaWQsbnVsbCE9PXUmJmNsZWFyVGltZW91dCh1KSx1PXNldFRpbWVvdXQoKCgpPT57Yz1udWxsLGE9bnVsbCx1PW51bGx9KSwxZTMpfX1mdW5jdGlvbiB5KGUsdD17fSl7Y29uc3Qgbj1bXTtzLnB1c2gobik7Y29uc3Qgbz1PYmplY3QuYXNzaWduKHQse2lkOmV9KTtmdW5jdGlvbiBpKGUpe3JldHVybih0LHIpPT5nKGUsU3RyaW5nKHQpLG4sbyxyKX1yZXR1cm57bG9nRGVidWc6aShyLkRFQlVHKSxsb2dFcnJvcjppKHIuRVJST1IpLGxvZ0luZm86aShyLklORk8pLGxvZ05vcm1hbDppKHIuTk9STUFMKSxsb2dXYXJuOmkoci5XQVJOSU5HKX19fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99527.15c5c25d27a56a0df772.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.470Z","timestamp":1785154590470,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/99527.15c5c25d27a56a0df772.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-19360\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4b927d3e790b78ee86ecb80ff7cdf13a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":103264,"size_decoded":14015,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"3ae28448cb02ee3491028f82c9e212b5","sha1":"840f868063e33818424634685f83f5dc9c54fd85","sha256":"6d8af262e85da3952f96074c40841361fe81de28292a6654a4b6a5c8c0d9a1b6","sha512":"615657ad93d0166da77c83a566e60f1d4002b7a4a1c811227c935f2a4ea91b16e01893aba5c708e2a1b40c39c6e773c08d99e62560bcc1c8df301a3b9f1b3821","ssdeep":"768:ywlwokCcAfM0x/2bcVtmUK6ogvY0FGhgiU4vWQs/WQ2das9:oIVtmUK6ouY0FGhgi1vjs/WQ2day","tlshash":"dea335bcf95192bb5e9b587f4398f6697648f943fd066f86bf00c00020c6ee710e5a5a","first_seen":"2026-04-20T12:30:34.890238Z","last_seen":"2026-07-27T14:18:36.387016Z","times_seen":5614,"resource_available":false,"data":"aHRtbHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjE0cHg7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbn1odG1sW2xhbmc9dmldIGJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsc2Fucy1zZXJpZn1ib2R5LGh0bWx7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDoxMDAlfWJvZHksZGlyLGgxLGgyLGgzLGg0LGg1LGg2LGh0bWwsbGksbWVudSxvbCxwLHVse21hcmdpbjowO3BhZGRpbmc6MH1he3RleHQtZGVjb3JhdGlvbjpub25lfWE6YWN0aXZle291dGxpbmU6MH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7YTpob3ZlcntvdXRsaW5lOjB9fWgxe2ZvbnQtc2l6ZToyZW19c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246aW5pdGlhbH1zdXB7dG9wOi0uMjVlbX1zdWJ7Ym90dG9tOi0uMjVlbX1maWd1cmV7bWFyZ2luOjB9cHJle292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7bWFyZ2luOjB9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixpbnB1dFt0eXBlPWJ1dHRvbl0saW5wdXRbdHlwZT1yZXNldF0saW5wdXRbdHlwZT1zdWJtaXRdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Y3Vyc29yOmRlZmF1bHR9aW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtib3gtc2l6aW5nOmluaXRpYWx9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9dGQsdGh7cGFkZGluZzowfTpyb290ey0tY29sb3Itd2hpdGU6I2ZmZjstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci10cmFuc3BhcmVudDojMDAwMDstLWNvbG9yLWNvbGQtZ3JheS01MDojZjlmOWY5Oy0tY29sb3ItY29sZC1ncmF5LTEwMDojZjJmMmYyOy0tY29sb3ItY29sZC1ncmF5LTE1MDojZWJlYmViOy0tY29sb3ItY29sZC1ncmF5LTIwMDojZGJkYmRiOy0tY29sb3ItY29sZC1ncmF5LTI1MDojYzljOWM5Oy0tY29sb3ItY29sZC1ncmF5LTMwMDojYjhiOGI4Oy0tY29sb3ItY29sZC1ncmF5LTM1MDojYThhOGE4Oy0tY29sb3ItY29sZC1ncmF5LTQwMDojOWM5YzljOy0tY29sb3ItY29sZC1ncmF5LTQ1MDojOGM4YzhjOy0tY29sb3ItY29sZC1ncmF5LTUwMDpncmV5Oy0tY29sb3ItY29sZC1ncmF5LTU1MDojNzA3MDcwOy0tY29sb3ItY29sZC1ncmF5LTYwMDojNjM2MzYzOy0tY29sb3ItY29sZC1ncmF5LTY1MDojNTc1NzU3Oy0tY29sb3ItY29sZC1ncmF5LTcwMDojNGE0YTRhOy0tY29sb3ItY29sZC1ncmF5LTc1MDojM2QzZDNkOy0tY29sb3ItY29sZC1ncmF5LTgwMDojMmUyZTJlOy0tY29sb3ItY29sZC1ncmF5LTg1MDojMWYxZjFmOy0tY29sb3ItY29sZC1ncmF5LTkwMDojMGYwZjBmOy0tY29sb3ItY29sZC1ncmF5LTk1MDojMDAwOy0tY29sb3ItcmlwZS1yZWQtNTA6I2ZmZWJlYzstLWNvbG9yLXJpcGUtcmVkLTEwMDojZmNjYmNkOy0tY29sb3ItcmlwZS1yZWQtMjAwOiNmYWExYTQ7LS1jb2xvci1yaXBlLXJlZC0zMDA6I2Y3N2M4MDstLWNvbG9yLXJpcGUtcmVkLTQwMDojZjc1MjVmOy0tY29sb3ItcmlwZS1yZWQtNTAwOiNmMjM2NDU7LS1jb2xvci1yaXBlLXJlZC02MDA6I2NjMmYzYzstLWNvbG9yLXJpcGUtcmVkLTcwMDojYjIyODMzOy0tY29sb3ItcmlwZS1yZWQtODAwOiM5OTFmMjk7LS1jb2xvci1yaXBlLXJlZC05MDA6IzgwMTkyMjstLWNvbG9yLXJpcGUtcmVkLWExMDA6I2ZmODA4MDstLWNvbG9yLXJpcGUtcmVkLWEyMDA6I2ZmNTI1MjstLWNvbG9yLXJpcGUtcmVkLWE0MDA6I2YzMzstLWNvbG9yLXJpcGUtcmVkLWE2MDA6I2NjMjkyOTstLWNvbG9yLXJpcGUtcmVkLWE3MDA6IzgwMjAyODstLWNvbG9yLXJpcGUtcmVkLWE4MDA6IzRkMTkxZDstLWNvbG9yLXJpcGUtcmVkLWE5MDA6IzMzMWYyMDstLWNvbG9yLXRhbi1vcmFuZ2UtNTA6I2ZmZjNlMDstLWNvbG9yLXRhbi1vcmFuZ2UtMTAwOiNmZmUwYjI7LS1jb2xvci10YW4tb3JhbmdlLTIwMDojZmZjYzgwOy0tY29sb3ItdGFuLW9yYW5nZS0zMDA6I2ZmYjc0ZDstLWNvbG9yLXRhbi1vcmFuZ2UtNDAwOiNmZmE3MjY7LS1jb2xvci10YW4tb3JhbmdlLTUwMDojZmY5ODAwOy0tY29sb3ItdGFuLW9yYW5nZS02MDA6I2ZiOGMwMDstLWNvbG9yLXRhbi1vcmFuZ2UtNzAwOiNmNTdjMDA7LS1jb2xvci10YW4tb3JhbmdlLTgwMDojZWY2YzAwOy0tY29sb3ItdGFuLW9yYW5nZS05MDA6I2U2NTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTEwMDojZmZkMTgwOy0tY29sb3ItdGFuLW9yYW5nZS1hMjAwOiNmZmFiNDA7LS1jb2xvci10YW4tb3JhbmdlLWE0MDA6I2ZmOTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTUwMDojZTU3ZTE3Oy0tY29sb3ItdGFuLW9yYW5nZS1hNjAwOiNjYzcwMTQ7LS1jb2xvci10YW4tb3JhbmdlLWE3MDA6IzhjNTQxYzstLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMDojNTkzYTFiOy0tY29sb3ItdGFuLW9yYW5nZS1hOTAwOiMzMzI2MWE7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tNTA6I2U4ZjVlOTstLWNvbG9yLWlndWFuYS1ncmVlbi0xMDA6I2M4ZTZjOTstLWNvbG9yLWlndWFuYS1ncmVlbi0yMDA6I2E1ZDZhNzstLWNvbG9yLWlndWFuYS1ncmVlbi0zMDA6IzgxYzc4NDstLWNvbG9yLWlndWFuYS1ncmVlbi00MDA6IzY2YmI2YTstLWNvbG9yLWlndWFuYS1ncmVlbi01MDA6IzRjYWY1MDstLWNvbG9yLWlndWFuYS1ncmVlbi02MDA6IzQzYTA0NzstLWNvbG9yLWlndWFuYS1ncmVlbi03MDA6IzM4OGUzYzstLWNvbG9yLWlndWFuYS1ncmVlbi04MDA6IzJlN2QzMjstLWNvbG9yLWlndWFuYS1ncmVlbi05MDA6IzFiNWUyMDstLWNvbG9yLWlndWFuYS1ncmVlbi1hMTAwOiNiOWY2Y2E7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tYTIwMDojNjlmMGFlOy0tY29sb3ItaWd1YW5hLWdyZWVuLWE0MDA6IzAwZTY3NjstLWNvbG9yLWlndWFuYS1ncmVlbi1hNzAwOiMwMGM4NTM7LS1jb2xvci1iYW5hbmEteWVsbG93LTUwOiNmZmZkZTc7LS1jb2xvci1iYW5hbmEteWVsbG93LTEwMDojZmZmOWM0Oy0tY29sb3ItYmFuYW5hLXllbGxvdy0yMDA6I2ZmZjU5ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctMzAwOiNmZmYxNzY7LS1jb2xvci1iYW5hbmEteWVsbG93LTQwMDojZmZlZTU4Oy0tY29sb3ItYmFuYW5hLXllbGxvdy01MDA6I2ZmZWIzYjstLWNvbG9yLWJhbmFuYS15ZWxsb3ctNjAwOiNmZGQ4MzU7LS1jb2xvci1iYW5hbmEteWVsbG93LTcwMDojZmJjMDJkOy0tY29sb3ItYmFuYW5hLXllbGxvdy04MDA6I2Y5YTgyNTstLWNvbG9yLWJhbmFuYS15ZWxsb3ctOTAwOiNmNTdmMTc7LS1jb2xvci1iYW5hbmEteWVsbG93LWExMDA6I2ZmZmY4ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMDojZmYwOy0tY29sb3ItYmFuYW5hLXllbGxvdy1hNDAwOiNmZmVhMDA7LS1jb2xvci1iYW5hbmEteWVsbG93LWE3MDA6I2VlZGEwMTstLWNvbG9yLXR2LWJsdWUtNTA6I2UzZWZmZDstLWNvbG9yLXR2LWJsdWUtMTAwOiNiYmQ5ZmI7LS1jb2xvci10di1ibHVlLTIwMDojOTBiZmY5Oy0tY29sb3ItdHYtYmx1ZS0zMDA6IzViOWNmNjstLWNvbG9yLXR2LWJsdWUtNDAwOiMzMTc5ZjU7LS1jb2xvci10di1ibHVlLTUwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS02MDA6IzFlNTNlNTstLWNvbG9yLXR2LWJsdWUtNzAwOiMxODQ4Y2M7LS1jb2xvci10di1ibHVlLTgwMDojMTQzZWIyOy0tY29sb3ItdHYtYmx1ZS05MDA6IzBjMzI5OTstLWNvbG9yLXR2LWJsdWUtYTEwMDojODJiMWZmOy0tY29sb3ItdHYtYmx1ZS1hMjAwOiM0NDhhZmY7LS1jb2xvci10di1ibHVlLWE0MDA6IzI5NzlmZjstLWNvbG9yLXR2LWJsdWUtYTYwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS1hNzAwOiMxNDNhODc7LS1jb2xvci10di1ibHVlLWE4MDA6IzE0MmU2MTstLWNvbG9yLXR2LWJsdWUtYTkwMDojMTMyMDQyOy0tY29sb3ItZGVlcC1ibHVlLTUwOiNlZGU3ZjY7LS1jb2xvci1kZWVwLWJsdWUtMTAwOiNkMWM0ZTk7LS1jb2xvci1kZWVwLWJsdWUtMjAwOiNiMzlkZGI7LS1jb2xvci1kZWVwLWJsdWUtMzAwOiM5NTc1Y2Q7LS1jb2xvci1kZWVwLWJsdWUtNDAwOiM3ZTU3YzI7LS1jb2xvci1kZWVwLWJsdWUtNTAwOiM2NzNhYjc7LS1jb2xvci1kZWVwLWJsdWUtNjAwOiM1ZTM1YjE7LS1jb2xvci1kZWVwLWJsdWUtNzAwOiM1MTJkYTg7LS1jb2xvci1kZWVwLWJsdWUtODAwOiM0NTI3YTA7LS1jb2xvci1kZWVwLWJsdWUtOTAwOiMzMTFiOTI7LS1jb2xvci1kZWVwLWJsdWUtYTEwMDojYjM4OGZmOy0tY29sb3ItZGVlcC1ibHVlLWEyMDA6IzdjNGRmZjstLWNvbG9yLWRlZXAtYmx1ZS1hNDAwOiM2NTFmZmY7LS1jb2xvci1kZWVwLWJsdWUtYTcwMDojNjIwMGVhOy0tY29sb3ItbWludHktZ3JlZW4tNTA6I2RhZjJlZTstLWNvbG9yLW1pbnR5LWdyZWVuLTEwMDojYWNlNWRjOy0tY29sb3ItbWludHktZ3JlZW4tMjAwOiM3MGNjYmQ7LS1jb2xvci1taW50eS1ncmVlbi0zMDA6IzQyYmRhODstLWNvbG9yLW1pbnR5LWdyZWVuLTQwMDojMjJhYjk0Oy0tY29sb3ItbWludHktZ3JlZW4tNTAwOiMwODk5ODE7LS1jb2xvci1taW50eS1ncmVlbi02MDA6IzA2ODA2YjstLWNvbG9yLW1pbnR5LWdyZWVuLTcwMDojMDU2NjU2Oy0tY29sb3ItbWludHktZ3JlZW4tODAwOiMwMDRkNDA7LS1jb2xvci1taW50eS1ncmVlbi05MDA6IzAwMzMyYTstLWNvbG9yLW1pbnR5LWdyZWVuLWExMDA6I2E3ZmZmMDstLWNvbG9yLW1pbnR5LWdyZWVuLWEyMDA6IzQ1ZTVjYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE0MDA6IzJiZDliYzstLWNvbG9yLW1pbnR5LWdyZWVuLWE2MDA6IzI0YjI5YjstLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDA6IzFiNzY2NzstLWNvbG9yLW1pbnR5LWdyZWVuLWE4MDA6IzEwNDQzYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE5MDA6IzA4MjYyMTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTA6I2YzZTVmNTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtMTAwOiNlMWJlZTc7LS1jb2xvci1ncmFwZXMtcHVycGxlLTIwMDojY2U5M2Q4Oy0tY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDA6I2JhNjhjODstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNDAwOiNhYjQ3YmM7LS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMDojOWMyN2IwOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS02MDA6IzhlMjRhYTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwOiM3YjFmYTI7LS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMDojNmExYjlhOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS05MDA6IzRhMTQ4YzstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTEwMDojZWE4MGZjOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS1hMjAwOiNlMDQwZmI7LS1jb2xvci1ncmFwZXMtcHVycGxlLWE0MDA6I2Q1MDBmOTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTcwMDojYTBmOy0tY29sb3ItYmVycnktcGluay01MDojZmNlNGVjOy0tY29sb3ItYmVycnktcGluay0xMDA6I2Y4YmJkMDstLWNvbG9yLWJlcnJ5LXBpbmstMjAwOiNmNDhmYjE7LS1jb2xvci1iZXJyeS1waW5rLTMwMDojZjA2MjkyOy0tY29sb3ItYmVycnktcGluay00MDA6I2VjNDA3YTstLWNvbG9yLWJlcnJ5LXBpbmstNTAwOiNlOTFlNjM7LS1jb2xvci1iZXJyeS1waW5rLTYwMDojZDgxYjYwOy0tY29sb3ItYmVycnktcGluay03MDA6I2MyMTg1YjstLWNvbG9yLWJlcnJ5LXBpbmstODAwOiNhZDE0NTc7LS1jb2xvci1iZXJyeS1waW5rLTkwMDojODgwZTRmOy0tY29sb3ItYmVycnktcGluay1hMTAwOiNmZjgwYWI7LS1jb2xvci1iZXJyeS1waW5rLWEyMDA6I2ZmNDA4MTstLWNvbG9yLWJlcnJ5LXBpbmstYTQwMDojZjUwMDU3Oy0tY29sb3ItYmVycnktcGluay1hNzAwOiNjNTExNjI7LS1jb2xvci1za3ktYmx1ZS01MDojZTBmN2ZhOy0tY29sb3Itc2t5LWJsdWUtMTAwOiNiMmViZjI7LS1jb2xvci1za3ktYmx1ZS0yMDA6IzgwZGVlYTstLWNvbG9yLXNreS1ibHVlLTMwMDojNGRkMGUxOy0tY29sb3Itc2t5LWJsdWUtNDAwOiMyNmM2ZGE7LS1jb2xvci1za3ktYmx1ZS01MDA6IzAwYmNkNDstLWNvbG9yLXNreS1ibHVlLTYwMDojMDBhY2MxOy0tY29sb3Itc2t5LWJsdWUtNzAwOiMwMDk3YTc7LS1jb2xvci1za3ktYmx1ZS04MDA6IzAwODM4ZjstLWNvbG9yLXNreS1ibHVlLTkwMDojMDA2MDY0Oy0tY29sb3Itc2t5LWJsdWUtYTEwMDojODRmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTIwMDojMThmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTQwMDojMDBlNWZmOy0tY29sb3Itc2t5LWJsdWUtYTcwMDojMDBiOGQ0Oy0tY29sb3ItZm9yZXN0LWdyZWVuLTUwOiNkYWYyZTY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMTAwOiNhY2U1Yzk7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwOiM3MGNjOWU7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwOiM0MmJkN2Y7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwOiMyMmFiNjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwOiMwODk5NTA7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNjAwOiMwNjgwNDM7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwOiMwNTY2MzY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwOiMwMDRkMjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwOiMxYTMzMjY7LS1jb2xvci1mYWNlYm9vazojMTg3N2YyOy0tY29sb3ItZGVlcC1mYWNlYm9vazojMTU2NGNhOy0tY29sb3ItdHdpdHRlcjojMWRhMWYyOy0tY29sb3ItZGVlcC10d2l0dGVyOiMxODhjZDM7LS1jb2xvci15b3V0dWJlOnJlZDstLWNvbG9yLWxpbmtlZGluOiMwMDdiYjU7LS1jb2xvci1zZWVraW5nLWFscGhhLWJyYW5kOiNmZjcyMDB9W2RhdGEtdGhlbWU9bGlnaHRdey0tY29sb3ItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvZHktYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9keS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmctaGlnaGxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItdGV4dC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApOy0tY29sb3ItdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWFjY2VudC1jb250ZW50OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm94LXNoYWRvdzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWRpdmlkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kaXZpZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItZGl2aWRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnJhbmQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGlnaGxpZ2h0LW5ldzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWlucHV0LXB1Ymxpc2gtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBhbmUtc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1zZXBhcmF0b3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wcmltYXJ5LXN5bWJvbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWljb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLW9wZW5lZC1lbGVtZW50LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1kaXZpZGVyLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtc2Vjb25kYXJ5LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWhpbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10di1kaWFsb2ctY2FwdGlvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci11bmRlcmxpbmVkLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci13aWRnZXQtcGFnZXMtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItbGlzdC1pdGVtLWFjdGl2ZS1iZzp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1saXN0LWl0ZW0tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtYmFjazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhci1ob3Zlcjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1idXR0b24taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kZXB0aHJlbmRlcmVyLWZpbGwtc3R5bGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGlzYWJsZWQtaW5wdXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1lbXB0eS1jb250YWluZXItbWVzc2FnZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWljb25zOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaXRlbS1ob3Zlci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItcGxhY2Vob2xkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1yb3ctaG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Itc2Nyb2xsYmFyLWJvZHktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1zZXBhcmF0b3ItdGFibGUtY2hhdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXNjcm9sbC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXNjcm9sbC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci13aWRnZXQtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3c6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByZS1tYXJrZXQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItcG9zdC1tYXJrZXQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3Itbm90YWNjdXJhdGUtbW9kZTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTYwMCk7LS1jb2xvci1kZWxheS1tb2RlOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWRlbGF5LW1vZGUtYmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS00MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItbGlzdC1pdGVtLWJnLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1oaWdobGlnaHRlZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1tYXJrZXItZmxhZ2dlZC1ob3ZlcmVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hc2s6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLXNlbGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWJ1eTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItcHJvOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1wcm8taG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXByby1wbHVzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXByby1wbHVzLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXByby1wcmVtaXVtOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXByby1wcmVtaXVtLWhvdmVyOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLXRyaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdHJpYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1tb2Q6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1vZC1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYnJva2VyLWZlYXR1cmVkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1zdG9wcGVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1zZWFyY2gtYnV0dG9uLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jYXJkLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNhcmQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNlbGVjdGlvbi1iZzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1kZWZhdWx0LWdyYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXBsYXRmb3JtOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtcGFnZS1wcm9tbzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2Utc29jaWFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXNpbXBsZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1wcm9tbzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1mdWxsc2NyZWVuOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1pY29ucy10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1zb2NpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtcHJpbWFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3Itc3RhdGljLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1zdGF0aWMtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWZvY3VzLW5vdC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXJlYWQtb25seTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2l0aC12YWx1ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWVycm9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWxpbms6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1hcnJvd3MtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1kYW5nZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1maWxsLWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1ib3JkZXItdGVydGlhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaXNPcGVuZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1pc09wZW5lZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50OiNmZmYwOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQtNjA6I2ZmZjk7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDAzOy0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLW90aGVyLW1vZGFsLWJhY2tncm91bmQ6I2QxZDFkMTRkOy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTojMDAwMzstLWNvbG9yLW90aGVyLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1zaGFkb3ctc2Vjb25kYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktcHJpbWFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXRlcnRpYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktcHJpbWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1zZWNvbmRhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTIwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktdGVydGlhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTEwMCk7LS1jb2xvci1zZWFyY2gtaGlnaGxpZ2h0LXByaW1hcnktbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsYWNrOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3Itd2hpdGU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDEtbm9ybWFsOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDItYm9sZDp2YXIoLS1jb2xvci1za3ktYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1ub3JtYWw6dmFyKC0tY29sb3ItcmlwZS1yZWQtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC10aGluOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1saWdodDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLW5vcm1hbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcXVhdGVybmFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE2MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1aW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTgwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay04MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYm9yZGVyLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMS1saWdodDojMjk2MmZmMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLW5vcm1hbDojMjk2MmZmNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWJvbGQ6IzI5NjJmZjY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMi1saWdodDojMDBhY2MxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLW5vcm1hbDojMDBhY2MxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWJvbGQ6IzAwYWNjMTY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMy1saWdodDojOWMyN2IwMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLW5vcm1hbDojOWMyN2IwNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWJvbGQ6IzljMjdiMDY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtNC1saWdodDojNWUzNWIxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LW5vcm1hbDojNWUzNWIxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWJvbGQ6IzVlMzViMTY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWxpZ2h0OiNjYzJmM2MyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMS1ub3JtYWw6I2NjMmYzYzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWJvbGQ6I2NjMmYzYzY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWxpZ2h0OiNlOTFlNjMyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMi1ub3JtYWw6I2U5MWU2MzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWJvbGQ6I2U5MWU2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbGlnaHQ6IzYzNjM2MzI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbm9ybWFsOiM2MzYzNjM0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0xLWJvbGQ6IzYzNjM2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbGlnaHQ6IzAwMDAwMDI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbm9ybWFsOiMwMDAwMDA0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLWJvbGQ6IzAwMDY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtbGlnaHQ6IzA4OTk4MTI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLW5vcm1hbDojMDg5OTgxNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtYm9sZDojMDg5OTgxNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItbGlnaHQ6IzA4OTk1MDI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLW5vcm1hbDojMDg5OTUwNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItYm9sZDojMDg5OTUwNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtbGlnaHQ6IzQzYTA0NzI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLW5vcm1hbDojNDNhMDQ3NGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtYm9sZDojNDNhMDQ3NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1saWdodDojZmRkODM1MjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1ub3JtYWw6I2ZkZDgzNTRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItYm9sZDojZmRkODM1NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1saWdodDojNjM2MzYzMjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1ub3JtYWw6IzYzNjM2MzRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtYm9sZDojNjM2MzYzNjY7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtODAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLW06dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmV1dHJhbDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC1taW51czItZGVmYXVsdDojZGU4MTJmOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXY3LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS00MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3Itc2t5LWJsdWUtMTAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0zMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14eGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS05MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWJvcmRlcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLXhzOnZhcigtLWNvbG9yLXNreS1ibHVlLTUwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtczp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteHhsOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3Itc2t5LWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXhzOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhsOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14eGw6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHM6dmFyKC0tY29sb3ItYmVycnktcGluay01MCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstczp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTUwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteGw6dmFyKC0tY29sb3ItYmVycnktcGluay03MDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXh4bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstYm9yZGVyOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXhzOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1sOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXhsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHM6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS01MCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtczp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbTp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteGw6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS03MDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXh4bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtYm9yZGVyOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLWNvbG9yLWhlYWRlci1iZzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib2R5LWJnOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYmctcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10ZXh0LXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYWNjZW50LWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZGl2aWRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWRpdmlkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1kaXZpZGVyLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJveC1zaGFkb3c6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnV0dG9uLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWRpc2FibGVkLWlucHV0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1oaWdobGlnaHQtbmV3OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pY29uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItaW5wdXQtcHVibGlzaC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLWJsdWU6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtaXRlbTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcGFuZS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wbGFjZWhvbGRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXBvcHVwLW1lbnUtaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItcHJpbWFyeS1zeW1ib2w6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLXJvdy1ob3Zlci1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc2VjdGlvbi1zZXBhcmF0b3ItYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2VhcmNoLWJ1dHRvbi1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXNlcGFyYXRvci10YWJsZS1jaGF0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3Itc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3Itc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLXNlY29uZGFyeS1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRvb2xiYXItaW50ZXJhY3RpdmUtZWxlbWVudC10ZXh0LW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItb3BlbmVkLWVsZW1lbnQtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXBvcHVwLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1oaW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10di1kcm9wZG93bi1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdW5kZXJsaW5lZC10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itd2lkZ2V0LXBhZ2VzLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItbGlzdC1pdGVtLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2s6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zY3JvbGwtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1zY3JvbGwtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3Itd2lkZ2V0LWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXNjcm9sbC1idXR0b25zLWFycm93OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250cm9sLWludGVudC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1wcmltYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1nb3RvLWxhYmVsLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1wcmUtbWFya2V0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLXBvc3QtbWFya2V0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5vdGFjY3VyYXRlLW1vZGU6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWRlbGF5LW1vZGU6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItZGVsYXktbW9kZS1iZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY2FyZC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jYXJkLWJvcmRlci1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLXN0cm9rZS1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zZWxlY3Rpb24tYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWRlZmF1bHQtZ3JheTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS1iZzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci10di1ibHVlLWE5MDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcGxhdGZvcm06dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcHJvbW86dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXNvY2lhbDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1zaW1wbGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXByb21vOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItYmFja2dyb3VuZC1kaWFsb2ctZnVsbHNjcmVlbjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb250ZW50LWljb25zLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LWljb25zLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXByb21vLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXByaW1hcnktc3BlY2lhbDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtc2Vjb25kYXJ5LXNwZWNpYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMjAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1zdGF0aWMtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXN0YXRpYy1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtbm90LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci13aXRoLXZhbHVlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWRlc2NyaXB0aW9uLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1maWxsLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1saW5rOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGFiZWwtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb3VudGVyLWZpbGwtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY291bnRlci1jb250ZW50LWFjY2VudDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb3VudGVyLWJvcmRlci10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQ6IzAwMDA7LS1jb2xvci1vdGhlci10cmFuc3BhcmVudC02MDojMDAwOTstLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6IzAwMDY7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3Itb3RoZXItbW9kYWwtYmFja2dyb3VuZDojMDAwMDAwNGQ7LS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDA2Oy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLW90aGVyLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLW90aGVyLWJsYWNrLWZyaWRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktc2Vjb25kYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktdGVydGlhcnk6dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tY29sb3Itb3RoZXItY3liZXItbW9uZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMjAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS10ZXJ0aWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMTAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2VhcmNoLWhpZ2hsaWdodC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmxhY2s6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci13aGl0ZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0MS1ub3JtYWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLWExMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0Mi1ib2xkOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1saWdodDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLW5vcm1hbDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtdGhpbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3Mtbm9ybWFsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE5MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nLWxpZ2h0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1YXRlcm5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtYTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtaGVhdnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWExMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYXR0ZW50aW9uOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXBvc2l0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWEyMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLWExMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLWJvbGQ6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcXVpbmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWxpZ2h0OiM0NDhhZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtbm9ybWFsOiM0NDhhZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtYm9sZDojNDQ4YWZmNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWxpZ2h0OiMwMGJjZDQzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItbm9ybWFsOiMwMGJjZDQ0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItYm9sZDojMDBiY2Q0NjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWxpZ2h0OiNlYTgwZmMzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtbm9ybWFsOiNlYTgwZmM0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtYm9sZDojZWE4MGZjNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWxpZ2h0OiNiMzg4ZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtbm9ybWFsOiNiMzg4ZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtYm9sZDojYjM4OGZmNjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtbGlnaHQ6I2YyMzY0NTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLW5vcm1hbDojZjIzNjQ1NGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtYm9sZDojZjIzNjQ1NjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItbGlnaHQ6I2ZmNDA4MTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLW5vcm1hbDojZmY0MDgxNGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItYm9sZDojZmY0MDgxNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1saWdodDojYjhiOGI4MzM7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1ub3JtYWw6I2I4YjhiODRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtYm9sZDojYjhiOGI4NjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1saWdodDojZmZmMzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLW5vcm1hbDojZmZmZmZmNGQ7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1ib2xkOiNmZmY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWxpZ2h0OiMyMmFiOTQzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMS1ub3JtYWw6IzIyYWI5NDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWJvbGQ6IzIyYWI5NDY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWxpZ2h0OiMyMmFiNjczMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMi1ub3JtYWw6IzIyYWI2NzRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWJvbGQ6IzIyYWI2NzY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWxpZ2h0OiM0Y2FmNTAzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMy1ub3JtYWw6IzRjYWY1MDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWJvbGQ6IzRjYWY1MDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbGlnaHQ6I2ZmOTgwMDMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbm9ybWFsOiNmZjk4MDA0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0xLWJvbGQ6I2ZmOTgwMDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbGlnaHQ6I2ZkZDgzNTMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbm9ybWFsOiNmZGQ4MzU0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0yLWJvbGQ6I2ZkZDgzNTY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbGlnaHQ6I2ZmOTgwMDFhOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbm9ybWFsOiNmZjk4MDAzMzstLWNvbG9yLW92ZXJsYXktd2FybmluZy0zLWJvbGQ6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbGlnaHQ6IzJlMmUyZTY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbm9ybWFsOiMyZTJlMmVjYzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0zLWJvbGQ6IzJlMmUyZTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czMtZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMi1kZWZhdWx0OiNhYTYzMjQ7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXplcm8tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12MS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12My1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjctZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTYwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5ldXRyYWw6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2Utczp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14bDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2UteHhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1ib3JkZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14czp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14eGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUteHM6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS03MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUtczp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1sOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14bDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUteHhsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXhzOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1zOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1tOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNzAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1sOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay14bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHhsOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstMjAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1ib3JkZXI6dmFyKC0tY29sb3ItYmVycnktcGluay0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4teHM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hOTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hODAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNzAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14eGw6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLWJvcmRlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXhzOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1zOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1tOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1sOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS14bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHhsOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1ib3JkZXI6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDApOy0tY29sb3ItbWFya2VyLWZsYWdnZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkLWhvdmVyZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWFzazp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc2VsbDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItYnV5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1wcm86dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLXByby1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItcHJvLXBsdXM6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItcHJvLXBsdXMtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItcHJvLXByZW1pdW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItcHJvLXByZW1pdW0taG92ZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItdHJpYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10cmlhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLW1vZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItbW9kLWhvdmVyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLWJyb2tlci1mZWF0dXJlZC1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy10cmlnZ2VyZWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_timeline_widget.8f56278542a9179f39f5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.501Z","timestamp":1785154590501,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/embed_timeline_widget.8f56278542a9179f39f5.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-cbdb\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:29:55\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1c075158469118036b6ebdee267eea60\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":52187,"size_decoded":20722,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3936)","md5":"f52abc055236b0e7c579e36502699d99","sha1":"5bf9aa5b6bf9365cfc73148d7e6f8a13e4a9aab9","sha256":"5a0df6f2035e30d5ce764cd4cbb4ab9949635c5c371acfaf7137d6f6886f7beb","sha512":"774855c25c78f2bcb39c20a8e81337c8e8ec8fe94c6b8171d33bec0129c8325769244128a2b28b8a9174a74b4df5752e0eb75808a09e45821a5aac3f095537d7","ssdeep":"768:5DS/P+ySy+3+xUxJYIq+Rrvq1oxmjPIXqSEgN559qzPgWrHS01X2ExQie0sC/DYp:5DkP+LZWP4qtgSPy3wXeUUn","tlshash":"b03329567191b06d66b710db90bf1104f77a2d54bc5ecc60a2bcaccd38b0a48662bfa9","first_seen":"2026-07-24T21:10:00.120004Z","last_seen":"2026-07-27T14:14:25.385439Z","times_seen":142,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s2NDY0NCw3NTUwM10sezkxNDQ4NyhlLHQpe3ZhciBuOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgcj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBvKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07aWYobil7dmFyIGE9dHlwZW9mIG47aWYoInN0cmluZyI9PT1hfHwibnVtYmVyIj09PWEpZS5wdXNoKG4pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShuKSYmbi5sZW5ndGgpe3ZhciBpPW8uYXBwbHkobnVsbCxuKTtpJiZlLnB1c2goaSl9ZWxzZSBpZigib2JqZWN0Ij09PWEpZm9yKHZhciBzIGluIG4pci5jYWxsKG4scykmJm5bc10mJmUucHVzaChzKX19cmV0dXJuIGUuam9pbigiICIpfWUuZXhwb3J0cz8oby5kZWZhdWx0PW8sZS5leHBvcnRzPW8pOnZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIG99LmFwcGx5KHQsW10pKXx8KGUuZXhwb3J0cz1uKX0oKX0sNDczMTU5KGUpe2UuZXhwb3J0cz17YnV0dG9uOiJidXR0b24tbUxFaENyVnciLGljb25Pbmx5OiJpY29uT25seS1tTEVoQ3JWdyIsd2l0aFN0YXJ0U2xvdDoid2l0aFN0YXJ0U2xvdC1tTEVoQ3JWdyIsd2l0aEVuZFNsb3Q6IndpdGhFbmRTbG90LW1MRWhDclZ3IixzdGFydFNsb3RXcmFwOiJzdGFydFNsb3RXcmFwLW1MRWhDclZ3IixlbmRTbG90V3JhcDoiZW5kU2xvdFdyYXAtbUxFaENyVnciLHhzbWFsbDoieHNtYWxsLW1MRWhDclZ3IixzbWFsbDoic21hbGwtbUxFaENyVnciLG1lZGl1bToibWVkaXVtLW1MRWhDclZ3IixsYXJnZToibGFyZ2UtbUxFaENyVnciLHhsYXJnZToieGxhcmdlLW1MRWhDclZ3Iixjb250ZW50OiJjb250ZW50LW1MRWhDclZ3IixsaW5rOiJsaW5rLW1MRWhDclZ3IixibHVlOiJibHVlLW1MRWhDclZ3IixwcmltYXJ5OiJwcmltYXJ5LW1MRWhDclZ3IixzZWNvbmRhcnk6InNlY29uZGFyeS1tTEVoQ3JWdyIsZ3JheToiZ3JheS1tTEVoQ3JWdyIsZ3JlZW46ImdyZWVuLW1MRWhDclZ3IixyZWQ6InJlZC1tTEVoQ3JWdyIsYmxhY2s6ImJsYWNrLW1MRWhDclZ3IixzbG90OiJzbG90LW1MRWhDclZ3IixzdHJldGNoOiJzdHJldGNoLW1MRWhDclZ3Iixncm91cGVkOiJncm91cGVkLW1MRWhDclZ3IixhZGp1c3RQb3NpdGlvbjoiYWRqdXN0UG9zaXRpb24tbUxFaENyVnciLGZpcnN0Um93OiJmaXJzdFJvdy1tTEVoQ3JWdyIsZmlyc3RDb2w6ImZpcnN0Q29sLW1MRWhDclZ3Iiwibm8tY29ybmVyLXRvcC1sZWZ0Ijoibm8tY29ybmVyLXRvcC1sZWZ0LW1MRWhDclZ3Iiwibm8tY29ybmVyLXRvcC1yaWdodCI6Im5vLWNvcm5lci10b3AtcmlnaHQtbUxFaENyVnciLCJuby1jb3JuZXItYm90dG9tLXJpZ2h0Ijoibm8tY29ybmVyLWJvdHRvbS1yaWdodC1tTEVoQ3JWdyIsIm5vLWNvcm5lci1ib3R0b20tbGVmdCI6Im5vLWNvcm5lci1ib3R0b20tbGVmdC1tTEVoQ3JWdyIsdGV4dFdyYXA6InRleHRXcmFwLW1MRWhDclZ3IixtdWx0aWxpbmVDb250ZW50OiJtdWx0aWxpbmVDb250ZW50LW1MRWhDclZ3IixwcmltYXJ5VGV4dDoicHJpbWFyeVRleHQtbUxFaENyVnciLHNlY29uZGFyeVRleHQ6InNlY29uZGFyeVRleHQtbUxFaENyVncifX0sMzEzODM5KGUpe2UuZXhwb3J0cz17YnJhbmQ6ImJyYW5kLV9DM0ZNR1V4Iixob3ZlcmVkOiJob3ZlcmVkLV9DM0ZNR1V4IixiYWNrZ3JvdW5kOiJiYWNrZ3JvdW5kLV9DM0ZNR1V4Iiwic3RhdGVzLXdpdGhvdXQtYmciOiJzdGF0ZXMtd2l0aG91dC1iZy1fQzNGTUdVeCIsZGlzYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOiJkaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtX0MzRk1HVXgiLGRpbW1lZDoiZGltbWVkLV9DM0ZNR1V4IixzZWxlY3RlZDoic2VsZWN0ZWQtX0MzRk1HVXgiLGFjdGl2YXRlZDoiYWN0aXZhdGVkLV9DM0ZNR1V4IixncmF5OiJncmF5LV9DM0ZNR1V4IiwibGlnaHQtZ3JheSI6ImxpZ2h0LWdyYXktX0MzRk1HVXgiLHhzbWFsbDoieHNtYWxsLV9DM0ZNR1V4IixzbWFsbDoic21hbGwtX0MzRk1HVXgiLG1lZGl1bToibWVkaXVtLV9DM0ZNR1V4IixsYXJnZToibGFyZ2UtX0MzRk1HVXgiLHRleHRCdXR0b246InRleHRCdXR0b24tX0MzRk1HVXgiLGxpbms6ImxpbmstX0MzRk1HVXgiLGNvbnRlbnQ6ImNvbnRlbnQtX0MzRk1HVXgiLHdpdGhTdGFydEljb246IndpdGhTdGFydEljb24tX0MzRk1HVXgiLCJzdGFydC1pY29uIjoic3RhcnQtaWNvbi1fQzNGTUdVeCIsd2l0aEVuZEljb246IndpdGhFbmRJY29uLV9DM0ZNR1V4IiwiZW5kLWljb24iOiJlbmQtaWNvbi1fQzNGTUdVeCIsaWNvbk9ubHk6Imljb25Pbmx5LV9DM0ZNR1V4IixjYXJldDoiY2FyZXQtX0MzRk1HVXgiLHNlbWlib2xkMThweDoic2VtaWJvbGQxOHB4LV9DM0ZNR1V4IixzZW1pYm9sZDE2cHg6InNlbWlib2xkMTZweC1fQzNGTUdVeCIsc2VtaWJvbGQxNHB4OiJzZW1pYm9sZDE0cHgtX0MzRk1HVXgiLHJlZ3VsYXIxMnB4OiJyZWd1bGFyMTJweC1fQzNGTUdVeCIscmVndWxhcjE0cHg6InJlZ3VsYXIxNHB4LV9DM0ZNR1V4IixyZWd1bGFyMTZweDoicmVndWxhcjE2cHgtX0MzRk1HVXgifX0sMTA4MTY5KGUpe2UuZXhwb3J0cz17ImNhcmQtZXh0ZXJpb3IiOiJjYXJkLWV4dGVyaW9yLXBMS1NvRTlTIn19LDE0MDAxNyhlKXtlLmV4cG9ydHM9e2xvZ286ImxvZ28tVkNOS3ViV3EiLGhpZGRlbjoiaGlkZGVuLVZDTkt1YldxIix4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjM6Inh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy1WQ05LdWJXcSIseHh4c21hbGw6Inh4eHNtYWxsLVZDTkt1YldxIix4eHNtYWxsOiJ4eHNtYWxsLVZDTkt1YldxIix4c21hbGw6InhzbWFsbC1WQ05LdWJXcSIsc21hbGw6InNtYWxsLVZDTkt1YldxIixtZWRpdW06Im1lZGl1bS1WQ05LdWJXcSIsbGFyZ2U6ImxhcmdlLVZDTkt1YldxIix4bGFyZ2U6InhsYXJnZS1WQ05LdWJXcSIseHhsYXJnZToieHhsYXJnZS1WQ05LdWJXcSIseHh4bGFyZ2U6Inh4eGxhcmdlLVZDTkt1YldxIixza2VsZXRvbjoic2tlbGV0b24tVkNOS3ViV3EiLApsZXR0ZXI6ImxldHRlci1WQ05LdWJXcSJ9fSw2OTQzNDkoZSl7ZS5leHBvcnRzPXtwcmV2aWV3OiJwcmV2aWV3LWt5OXd1OVlBIixmaXhlZEhlaWdodDoiZml4ZWRIZWlnaHQta3k5d3U5WUEiLHJhdGlvMTZieTk6InJhdGlvMTZieTkta3k5d3U5WUEiLHJhdGlvMmJ5MToicmF0aW8yYnkxLWt5OXd1OVlBIiwiYnJva2VuLWltYWdlIjoiYnJva2VuLWltYWdlLWt5OXd1OVlBIiwicHJldmlldy1ncmlkIjoicHJldmlldy1ncmlkLWt5OXd1OVlBIixwaWN0dXJlOiJwaWN0dXJlLWt5OXd1OVlBIixpbWFnZToiaW1hZ2Uta3k5d3U5WUEiLCJpbWFnZS1saW5rIjoiaW1hZ2UtbGluay1reTl3dTlZQSIsbWlkZGxlOiJtaWRkbGUta3k5d3U5WUEiLGNvcm5lcjoiY29ybmVyLWt5OXd1OVlBIiwiY29ybmVyLXRvcC1sZWZ0IjoiY29ybmVyLXRvcC1sZWZ0LWt5OXd1OVlBIiwiY29ybmVyLXRvcC1yaWdodCI6ImNvcm5lci10b3AtcmlnaHQta3k5d3U5WUEiLCJjb3JuZXItYm90dG9tLWxlZnQiOiJjb3JuZXItYm90dG9tLWxlZnQta3k5d3U5WUEiLCJjb3JuZXItYm90dG9tLXJpZ2h0IjoiY29ybmVyLWJvdHRvbS1yaWdodC1reTl3dTlZQSJ9fSw5NzUyODUoZSl7ZS5leHBvcnRzPXt3cmFwcGVyOiJ3cmFwcGVyLWhjdDJ5SnZLIixhbmltYXRlZDoiYW5pbWF0ZWQtaGN0MnlKdksiLHB1bHNhdGlvbjoicHVsc2F0aW9uLWhjdDJ5SnZLIn19LDI4OTMwKGUpe2UuZXhwb3J0cz17cHJldmlld1dyYXBwZXI6InByZXZpZXdXcmFwcGVyLXZpUE9HMmM2In19LDM5OTA5MihlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zIjoiLjZzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIiwiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcy1oYWxmLXRpbWUiOiIuM3MgMHMgY3ViaWMtYmV6aWVyKC40LCAuMDEsIC4yMiwgMSkiLGxhYmVsOiJsYWJlbC1kemJkN2x5ViIsbG9nb1dyYXA6ImxvZ29XcmFwLWR6YmQ3bHlWIixleHBhbmRlZFdpdGhUcmFuc2l0aW9uOiJleHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWIixleHBhbmRlZEJ5Q2xpY2s6ImV4cGFuZGVkQnlDbGljay1kemJkN2x5ViIsc3RhcnQ6InN0YXJ0LWR6YmQ3bHlWIixlbmQ6ImVuZC1kemJkN2x5ViIsc25hcDoic25hcC1kemJkN2x5ViIsdG9wOiJ0b3AtZHpiZDdseVYiLGJvdHRvbToiYm90dG9tLWR6YmQ3bHlWIixsYXJnZToibGFyZ2UtZHpiZDdseVYiLGV4cGFuZGVkOiJleHBhbmRlZC1kemJkN2x5ViIsbGFiZWxfX2xpbms6ImxhYmVsX19saW5rLWR6YmQ3bHlWIn19LDY4OTQ0NChlKXtlLmV4cG9ydHM9e2NvbnRhaW5lcjoiY29udGFpbmVyLUN2RVlIZjRJIixpbm5lckNvbnRhaW5lcjoiaW5uZXJDb250YWluZXItQ3ZFWUhmNEkiLGhlYWRlcjoiaGVhZGVyLUN2RVlIZjRJIix0aXRsZToidGl0bGUtQ3ZFWUhmNEkiLGljb246Imljb24tQ3ZFWUhmNEkiLGxpbms6ImxpbmstQ3ZFWUhmNEkifX0sMzIzMjUxKGUpe2UuZXhwb3J0cz17Y29udGFpbmVyOiJjb250YWluZXItck0yNkNFRXMiLGNvbnRlbnQ6ImNvbnRlbnQtck0yNkNFRXMiLGljb246Imljb24tck0yNkNFRXMiLHRpdGxlOiJ0aXRsZS1yTTI2Q0VFcyIsc3VidGl0bGU6InN1YnRpdGxlLXJNMjZDRUVzIixjaGlsZHJlbkNvbnRhaW5lcjoiY2hpbGRyZW5Db250YWluZXItck0yNkNFRXMifX0sNTE2NzgxKGUpe2UuZXhwb3J0cz17YXJyb3dJY29uOiJhcnJvd0ljb24tTWNQdFV0Mm8iLHRpdGxlOiJ0aXRsZS1NY1B0VXQybyIsYnV0dG9uOiJidXR0b24tTWNQdFV0Mm8ifX0sMTkyNTcoZSl7ZS5leHBvcnRzPXtjYXJkOiJjYXJkLVBZRTI3dnJrIixjYXJkV2l0aEltYWdlOiJjYXJkV2l0aEltYWdlLVBZRTI3dnJrIixjb250YWluZXI6ImNvbnRhaW5lci1QWUUyN3ZyayIsaGVhZGVyOiJoZWFkZXItUFlFMjd2cmsiLHRpdGxlOiJ0aXRsZS1QWUUyN3ZyayIsYXJ0aWNsZToiYXJ0aWNsZS1QWUUyN3ZyayIscHJldmlldzoicHJldmlldy1QWUUyN3ZyayJ9fSw3Njg5MjkoZSl7ZS5leHBvcnRzPXtncmlkOiJncmlkLWI2cFA3MVRkIixmb290ZXI6ImZvb3Rlci1iNnBQNzFUZCJ9fSw1NjI2OTkoZSl7ZS5leHBvcnRzPXtub0JyZWFrOiJub0JyZWFrLUhrR1hLNTI0In19LDc1MzQ4NShlKXtlLmV4cG9ydHM9e3N0YWNrOiJzdGFjay1MMkUyNlN3ZiIsInN0YWNrLS14eHhzbWFsbCI6InN0YWNrLS14eHhzbWFsbC1MMkUyNlN3ZiIsInN0YWNrLS14c21hbGwiOiJzdGFjay0teHNtYWxsLUwyRTI2U3dmIn19LDMyMDQwMyhlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbixyPSEoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3d8fCF3aW5kb3cuZG9jdW1lbnR8fCF3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7ZnVuY3Rpb24gbygpe2lmKG4pcmV0dXJuIG47aWYoIXJ8fCF3aW5kb3cuZG9jdW1lbnQuYm9keSlyZXR1cm4iaW5kZXRlcm1pbmF0ZSI7dmFyIGU9d2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJBQkNEIikpLGUuZGlyPSJydGwiLGUuc3R5bGUuZm9udFNpemU9IjE0cHgiLGUuc3R5bGUud2lkdGg9IjRweCIsZS5zdHlsZS5oZWlnaHQ9IjFweCIsZS5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGUuc3R5bGUudG9wPSItMTAwMHB4IixlLnN0eWxlLm92ZXJmbG93PSJzY3JvbGwiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksbj0icmV2ZXJzZSIsZS5zY3JvbGxMZWZ0PjA/bj0iZGVmYXVsdCI6KGUuc2Nyb2xsTGVmdD0xLDA9PT1lLnNjcm9sbExlZnQmJihuPSJuZWdhdGl2ZSIpKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGUpLG59fSwzMDAyODYoZSx0LG4peyJ1c2Ugc3RyaWN0IjsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbmV3IGNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fdGVzdD1lW3RdPXt9fXByb3ZpZGUoZSx0KXt0aGlzLl90ZXN0W2VdPXR9fSh3aW5kb3csInFhR2xvYmFscyIpfSw4MjkxODAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKDYwMTg0MSk7Y29uc3Qgbz0veyhcdyspfS9nLGE9L3soXGQrKX0vZwo7U3RyaW5nLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oLi4uZSl7Y29uc3QgdD0oMCxyLmlzT2JqZWN0KShlWzBdKSxuPXQ/bzphLGk9dD8odCxuKT0+e2NvbnN0IHI9ZVswXTtyZXR1cm4gdm9pZCAwIT09cltuXT9yW25dOnR9Oih0LG4pPT57Y29uc3Qgcj1wYXJzZUludChuLDEwKSxvPWVbcl07cmV0dXJuIHZvaWQgMCE9PW8/bzp0fTtyZXR1cm4gdGhpcy5yZXBsYWNlKG4saSl9fSwxMzg2MzgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBc3NlcnRpb24gZmFpbGVkIisodD9gOiAke3R9YDoiIikpfWZ1bmN0aW9uIG8oZSx0KXtpZih2b2lkIDA9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyB1bmRlZmluZWRgKTtyZXR1cm4gZX1mdW5jdGlvbiBhKGUsdCl7aWYobnVsbD09PWUpdGhyb3cgbmV3IEVycm9yKGAke3Q/PyJWYWx1ZSJ9IGlzIG51bGxgKTtyZXR1cm4gZX1uLmQodCx7YXNzZXJ0OigpPT5yLGVuc3VyZURlZmluZWQ6KCk9Pm8sZW5zdXJlTm90TnVsbDooKT0+YX0pfSw1ODc0MzYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCxuLHIsbyl7bGV0IGE9IiI7aWYocj1yPyI7IHBhdGg9IityOiIiLG89bz8iOyBkb21haW49IitvOiIiLG4pe2NvbnN0IGU9bmV3IERhdGU7ZS5zZXRUaW1lKGUuZ2V0VGltZSgpKzI0Km4qNjAqNjAqMWUzKSxhPSI7IGV4cGlyZXM9IitlLnRvVVRDU3RyaW5nKCl9ZWxzZSBhPSIiO2RvY3VtZW50LmNvb2tpZT1lKyI9Iit0K2ErbytyfWZ1bmN0aW9uIG8oZSl7Y29uc3QgdD1lKyI9IixuPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyIpO2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSsrKXtsZXQgcj1uW2VdO2Zvcig7IiAiPT09ci5jaGFyQXQoMCk7KXI9ci5zdWJzdHJpbmcoMSxyLmxlbmd0aCk7aWYoMD09PXIuaW5kZXhPZih0KSlyZXR1cm4gci5zdWJzdHJpbmcodC5sZW5ndGgsci5sZW5ndGgpfXJldHVybiBudWxsfW4uZCh0LHtnZXQ6KCk9Pm8sc2V0OigpPT5yfSl9LDExNTI5MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc1J0bDooKT0+YSxzZXREb2N1bWVudERpckdldHRlcjooKT0+b30pO24oMzIwNDAzKTtsZXQgcj0oKT0+bnVsbDtmdW5jdGlvbiBvKGUpe3I9ZX1jb25zdCBhPSgpPT4icnRsIj09PWZ1bmN0aW9uKCl7Y29uc3QgZT1yKCk7aWYobnVsbD09PWUpdGhyb3cgbmV3IEVycm9yKCJEb2N1bWVudCBkaXJlY3Rpb24gZ2V0dGVyIGlzIG5vdCBzZXQsIGNhbGwgc2V0RG9jdW1lbnREaXJHZXR0ZXIgdG8gc2V0IGl0Iik7cmV0dXJuIGV9KCk7bmV3IFJlZ0V4cCgi4oCOfOKAj3zigKp84oCrfOKArCIsImciKTt2YXIgaTshZnVuY3Rpb24oZSl7ZS5MVFI9Imx0ciIsZS5SVEw9InJ0bCIsZS5VTktOT1dOPSIifShpfHwoaT17fSkpfSw4NTYzMjQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7cmVnaXN0ZXJMYW5ndWFnZUNvZGVNYXBwZXI6KCk9PmkscmVnaXN0ZXJMYW5ndWFnZUdldHRlcjooKT0+b30pO2xldCByPW51bGw7ZnVuY3Rpb24gbyhlKXtyPWV9bGV0IGE9ZT0+ZTtmdW5jdGlvbiBpKGUpe2E9ZX19LDc4MzI1NChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt0OigpPT5yfSk7Y29uc3Qgcj1uLmkxOG5leHR9LDY0MTU5MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtkZWNvZGVIVE1MRW50aXRpZXM6KCk9PmwsaHRtbEVzY2FwZTooKT0+Y30pO2NvbnN0IHI9L1s8IicmPl0vZyxvPWU9PmAmIyR7ZS5jaGFyQ29kZUF0KDApfTtgLGE9eyImbHQ7IjoiPCIsIiZndDsiOiI+IiwiJnF1b3Q7IjonIicsIiZhcG9zOyI6IiciLCImYW1wOyI6IiYiLCImIzYwOyI6IjwiLCImIzYyOyI6Ij4iLCImIzM0OyI6JyInLCImIzM5OyI6IiciLCImIzAzOTsiOiInIiwiJiMzODsiOiImIn0saT1PYmplY3QuYXNzaWduKHt9LC4uLk9iamVjdC5lbnRyaWVzKGEpLm1hcCgoKFtlLHRdKT0+KHtbdF06ZX0pKSkpLHM9bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhhKS5qb2luKCJ8IiksImciKTtuZXcgUmVnRXhwKE9iamVjdC5rZXlzKGkpLmpvaW4oInwiKSwiZyIpO2Z1bmN0aW9uIGwoZSl7cmV0dXJuIGUucmVwbGFjZShzLChlPT5hW2VdfHxlKSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZS5yZXBsYWNlKHIsbyl9fSwxMzY5OTEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Q29weXJpZ2h0UG9zaXRpb246KCk9PnIsY29weXJpZ2h0TGFiZWw6KCk9PnV9KTt2YXIgcixvPW4oMTg1MjcxKSxhPW4oOTE0NDg3KSxpPW4ubihhKSxzPW4oNjAxODQxKSxsPW4oMzg3MjMxKSxjPW4oMzk5MDkyKTtmdW5jdGlvbiB1KHtzdmdUZXh0OmUsaWNvbjp0LHRoZW1lOmEsdXJsOnUsbW9kZTptLHZlcnRpY2FsUG9zaXRpb246ZD1yLlZlcnRpY2FsLkJvdHRvbSxob3Jpem9udGFsUG9zaXRpb246Zz1yLkhvcml6b250YWwuRW5kLHNuYXBUb0VkZ2U6Zj0hMCxpc0V4cGFuZGVkOmg9ITEsY2xhc3NOYW1lOnB9KXtsZXQgeTtzd2l0Y2gobSl7Y2FzZSJuZXciOmNhc2Uid2l0aF9ib3JkZXIiOmNhc2UibGFyZ2VfdHJhZGUiOnk9KDAscy5jbG9uZSkoYSk7YnJlYWs7ZGVmYXVsdDp5PSgwLGwubWVyZ2VUaGVtZXMpKCgwLHMuY2xvbmUpKGMpLGEpfWNvbnN0IF89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2xldCBiO3UmJihiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxiLmNsYXNzTGlzdC5hZGQoLi4ueS5sYWJlbF9fbGluay5zcGxpdCgvXHMvKSksYi5ocmVmPXUsYi50YXJnZXQ9Il9ibGFuayIsYi5yZWw9Im5vb3BlbmVyIG5vcmVmZXJyZXIiLGIuc2V0QXR0cmlidXRlKCJkYXRhLXRhcmdldC10eXBlIiwiY29weXJpZ2h0IiksYi5hcmlhTGFiZWw9by50KG51bGwsdm9pZCAwLG4oNTE3ODU5KSksXy5hcHBlbmQoYikpLApfLmNsYXNzTmFtZT1pKCkoeS5sYWJlbCxnPT09ci5Ib3Jpem9udGFsLlN0YXJ0JiZ5LnN0YXJ0LGc9PT1yLkhvcml6b250YWwuRW5kJiZ5LmVuZCxkPT09ci5WZXJ0aWNhbC5Ub3AmJnkudG9wLGQ9PT1yLlZlcnRpY2FsLkJvdHRvbSYmeS5ib3R0b20sZiYmImxhcmdlX3RyYWRlIiE9PW0mJnkuc25hcCwibGFyZ2Vfb2xkIj09PW0mJnkubGFyZ2UsKGh8fCJsYXJnZV90cmFkZSI9PT1tKSYmeS5leHBhbmRlZCxwLCJqcy1jb3B5cmlnaHQtbGFiZWwiKSxfLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKCk9PntmdW5jdGlvbiBlKCl7Xy5jbGFzc0xpc3QucmVtb3ZlKHkuZXhwYW5kZWRCeUNsaWNrKSxfLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpfV8uY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbil8fF8uY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWQpfHwoXy5jbGFzc0xpc3QuY29udGFpbnMoeS5leHBhbmRlZEJ5Q2xpY2spP3V8fGUoKTooXy5jbGFzc0xpc3QuYWRkKHkuZXhwYW5kZWRCeUNsaWNrKSxfLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpKSl9KSk7Y29uc3Qgdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7di5jbGFzc05hbWU9eS5sb2dvV3JhcCx2LmlubmVySFRNTD10O2NvbnN0IHc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiB3LmNsYXNzTmFtZT15LnN2Z1RleHRXcmFwLHcuaW5uZXJIVE1MPWUsXy5hcHBlbmQodix3KSxbXyx5XX0hZnVuY3Rpb24oZSl7bGV0IHQsbjshZnVuY3Rpb24oZSl7ZVtlLkJvdHRvbT0wXT0iQm90dG9tIixlW2UuVG9wPTFdPSJUb3AifSh0PWUuVmVydGljYWx8fChlLlZlcnRpY2FsPXt9KSksZnVuY3Rpb24oZSl7ZVtlLlN0YXJ0PTBdPSJTdGFydCIsZVtlLkVuZD0xXT0iRW5kIn0obj1lLkhvcml6b250YWx8fChlLkhvcml6b250YWw9e30pKX0ocnx8KHI9e30pKX0sNjUzODE3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5hLkNvcHlyaWdodFBvc2l0aW9uLGNyZWF0ZUNvcHlyaWdodExhYmVsOigpPT5zfSk7dmFyIHI9big5MTQ0ODcpLG89bi5uKHIpLGE9bigxMzY5OTEpLGk9big1Mjg4NjQpO2Z1bmN0aW9uIHMoe3NoZXJpZmZPcHRpb25zOmUsLi4udH0pe2NvbnN0W24scl09KDAsYS5jb3B5cmlnaHRMYWJlbCkodCkscz1lJiZlLmluY2x1ZGVzKGkuS25vd25BY3Rpb24uRXhwYW5kKSxsPWUmJmUuaW5jbHVkZXMoaS5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyk7cmV0dXJuIG4uY2xhc3NOYW1lPW8oKShuLmNsYXNzTmFtZSwoc3x8bCkmJnIuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbiksbn19LDUyODg2NChlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByO24uZCh0LHtLbm93bkFjdGlvbjooKT0+cix3aWRnZXRTaGVyaWZmQWN0aW9uczooKT0+b30pLGZ1bmN0aW9uKGUpe2UuRXhwYW5kPSJleHBhbmQtbG9nbyIsZS5MYXJnZVRyYWRlTG9nbz0ibGFyZ2UtdHJhZGUtbG9nbyJ9KHJ8fChyPXt9KSk7Y29uc3Qgbz1uZXcgU2V0KFtyLkV4cGFuZCxyLkxhcmdlVHJhZGVMb2dvXSl9LDM2MzI2OShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHttb2JpbGV0b3VjaDooKT0+byxzZXRDbGFzc2VzOigpPT5hfSk7dmFyIHI9big3Mzg0NTgpO2NvbnN0IG89ci5tb2JpbGV0b3VjaDtyLnRvdWNoO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChyLnRvdWNoPyJmZWF0dXJlLXRvdWNoIjoiZmVhdHVyZS1uby10b3VjaCIsci5tb2JpbGV0b3VjaD8iZmVhdHVyZS1tb2JpbGV0b3VjaCI6ImZlYXR1cmUtbm8tbW9iaWxldG91Y2giKX19LDE4NTI3MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHt0OigpPT5yLnR9KTtuKDgyOTE4MCk7dmFyIHI9big3ODMyNTQpfSw5NjMwOTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0SXNvTGFuZ3VhZ2VDb2RlRnJvbUxhbmd1YWdlOigpPT5vfSk7Y29uc3Qgcj17YXJfQUU6ImFyIixicjoicHQiLGRlX0RFOiJkZSIsY2FfRVM6ImNhIixoZV9JTDoiaGUiLGlkX0lEOiJpZCIsaW46ImVuIixrcjoia28iLG1zX01ZOiJtcyIsc3ZfU0U6InN2Iix0aF9USDoidGgiLHVrOiJlbiIsdmlfVk46InZpIix6aF9DTjoiemgtSGFucyIsemhfVFc6InpoLUhhbnQiLHpoOiJ6aC1IYW5zIixodV9IVToiaHUtSFUifTtmdW5jdGlvbiBvKGUpe3JldHVybiByW2VdfHxlfX0sMzM2MzM0KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigxMjkzNjUpO3IuY3JlYXRlUm9vdCx0Lmh5ZHJhdGVSb290PXIuaHlkcmF0ZVJvb3R9LDEyOTM2NShlLHQsbil7InVzZSBzdHJpY3QiOyFmdW5jdGlvbiBlKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSxlLmV4cG9ydHM9big1MzIzODcpfSwxMjI3NDkoZSx0KXsidXNlIHN0cmljdCI7dmFyIG49U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLHI9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksbz1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGE9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxpPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIikscz1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLGw9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGM9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSx1PVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIiksbT1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIiksZD1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5IiksZz1TeW1ib2wuaXRlcmF0b3I7dmFyIGY9e2lzTW91bnRlZDpmdW5jdGlvbigpe3JldHVybiExfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVSZXBsYWNlU3RhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbigpe30KfSxoPU9iamVjdC5hc3NpZ24scD17fTtmdW5jdGlvbiB5KGUsdCxuKXt0aGlzLnByb3BzPWUsdGhpcy5jb250ZXh0PXQsdGhpcy5yZWZzPXAsdGhpcy51cGRhdGVyPW58fGZ9ZnVuY3Rpb24gXygpe31mdW5jdGlvbiBiKGUsdCxuKXt0aGlzLnByb3BzPWUsdGhpcy5jb250ZXh0PXQsdGhpcy5yZWZzPXAsdGhpcy51cGRhdGVyPW58fGZ9eS5wcm90b3R5cGUuaXNSZWFjdENvbXBvbmVudD17fSx5LnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT10eXBlb2YgZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPWUpdGhyb3cgRXJyb3IoInNldFN0YXRlKC4uLik6IHRha2VzIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMgdG8gdXBkYXRlIG9yIGEgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzLiIpO3RoaXMudXBkYXRlci5lbnF1ZXVlU2V0U3RhdGUodGhpcyxlLHQsInNldFN0YXRlIil9LHkucHJvdG90eXBlLmZvcmNlVXBkYXRlPWZ1bmN0aW9uKGUpe3RoaXMudXBkYXRlci5lbnF1ZXVlRm9yY2VVcGRhdGUodGhpcyxlLCJmb3JjZVVwZGF0ZSIpfSxfLnByb3RvdHlwZT15LnByb3RvdHlwZTt2YXIgdj1iLnByb3RvdHlwZT1uZXcgXzt2LmNvbnN0cnVjdG9yPWIsaCh2LHkucHJvdG90eXBlKSx2LmlzUHVyZVJlYWN0Q29tcG9uZW50PSEwO3ZhciB3PUFycmF5LmlzQXJyYXksRT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHg9e2N1cnJlbnQ6bnVsbH0sQz17a2V5OiEwLHJlZjohMCxfX3NlbGY6ITAsX19zb3VyY2U6ITB9O2Z1bmN0aW9uIFMoZSx0LHIpe3ZhciBvLGE9e30saT1udWxsLHM9bnVsbDtpZihudWxsIT10KWZvcihvIGluIHZvaWQgMCE9PXQucmVmJiYocz10LnJlZiksdm9pZCAwIT09dC5rZXkmJihpPSIiK3Qua2V5KSx0KUUuY2FsbCh0LG8pJiYhQy5oYXNPd25Qcm9wZXJ0eShvKSYmKGFbb109dFtvXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKWEuY2hpbGRyZW49cjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07YS5jaGlsZHJlbj1jfWlmKGUmJmUuZGVmYXVsdFByb3BzKWZvcihvIGluIGw9ZS5kZWZhdWx0UHJvcHMpdm9pZCAwPT09YVtvXSYmKGFbb109bFtvXSk7cmV0dXJueyQkdHlwZW9mOm4sdHlwZTplLGtleTppLHJlZjpzLHByb3BzOmEsX293bmVyOnguY3VycmVudH19ZnVuY3Rpb24gayhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09bn12YXIgTD0vXC8rL2c7ZnVuY3Rpb24gTShlLHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJm51bGwhPWUua2V5P2Z1bmN0aW9uKGUpe3ZhciB0PXsiPSI6Ij0wIiwiOiI6Ij0yIn07cmV0dXJuIiQiK2UucmVwbGFjZSgvWz06XS9nLChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pKX0oIiIrZS5rZXkpOnQudG9TdHJpbmcoMzYpfWZ1bmN0aW9uIFQoZSx0LG8sYSxpKXt2YXIgcz10eXBlb2YgZTsidW5kZWZpbmVkIiE9PXMmJiJib29sZWFuIiE9PXN8fChlPW51bGwpO3ZhciBsPSExO2lmKG51bGw9PT1lKWw9ITA7ZWxzZSBzd2l0Y2gocyl7Y2FzZSJzdHJpbmciOmNhc2UibnVtYmVyIjpsPSEwO2JyZWFrO2Nhc2Uib2JqZWN0Ijpzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBuOmNhc2UgcjpsPSEwfX1pZihsKXJldHVybiBpPWkobD1lKSxlPSIiPT09YT8iLiIrTShsLDApOmEsdyhpKT8obz0iIixudWxsIT1lJiYobz1lLnJlcGxhY2UoTCwiJCYvIikrIi8iKSxUKGksdCxvLCIiLChmdW5jdGlvbihlKXtyZXR1cm4gZX0pKSk6bnVsbCE9aSYmKGsoaSkmJihpPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOm4sdHlwZTplLnR5cGUsa2V5OnQscmVmOmUucmVmLHByb3BzOmUucHJvcHMsX293bmVyOmUuX293bmVyfX0oaSxvKyghaS5rZXl8fGwmJmwua2V5PT09aS5rZXk/IiI6KCIiK2kua2V5KS5yZXBsYWNlKEwsIiQmLyIpKyIvIikrZSkpLHQucHVzaChpKSksMTtpZihsPTAsYT0iIj09PWE/Ii4iOmErIjoiLHcoZSkpZm9yKHZhciBjPTA7YzxlLmxlbmd0aDtjKyspe3ZhciB1PWErTShzPWVbY10sYyk7bCs9VChzLHQsbyx1LGkpfWVsc2UgaWYodT1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZT9udWxsOiJmdW5jdGlvbiI9PXR5cGVvZihlPWcmJmVbZ118fGVbIkBAaXRlcmF0b3IiXSk/ZTpudWxsfShlKSwiZnVuY3Rpb24iPT10eXBlb2YgdSlmb3IoZT11LmNhbGwoZSksYz0wOyEocz1lLm5leHQoKSkuZG9uZTspbCs9VChzPXMudmFsdWUsdCxvLHU9YStNKHMsYysrKSxpKTtlbHNlIGlmKCJvYmplY3QiPT09cyl0aHJvdyB0PVN0cmluZyhlKSxFcnJvcigiT2JqZWN0cyBhcmUgbm90IHZhbGlkIGFzIGEgUmVhY3QgY2hpbGQgKGZvdW5kOiAiKygiW29iamVjdCBPYmplY3RdIj09PXQ/Im9iamVjdCB3aXRoIGtleXMgeyIrT2JqZWN0LmtleXMoZSkuam9pbigiLCAiKSsifSI6dCkrIikuIElmIHlvdSBtZWFudCB0byByZW5kZXIgYSBjb2xsZWN0aW9uIG9mIGNoaWxkcmVuLCB1c2UgYW4gYXJyYXkgaW5zdGVhZC4iKTtyZXR1cm4gbH1mdW5jdGlvbiBOKGUsdCxuKXtpZihudWxsPT1lKXJldHVybiBlO3ZhciByPVtdLG89MDtyZXR1cm4gVChlLHIsIiIsIiIsKGZ1bmN0aW9uKGUpe3JldHVybiB0LmNhbGwobixlLG8rKyl9KSkscn1mdW5jdGlvbiBJKGUpe2lmKC0xPT09ZS5fc3RhdHVzKXt2YXIgdD1lLl9yZXN1bHQ7KHQ9dCgpKS50aGVuKChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0xLGUuX3Jlc3VsdD10KX0pLChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0yLGUuX3Jlc3VsdD10KX0pKSwtMT09PWUuX3N0YXR1cyYmKGUuX3N0YXR1cz0wLGUuX3Jlc3VsdD10KX1pZigxPT09ZS5fc3RhdHVzKXJldHVybiBlLl9yZXN1bHQuZGVmYXVsdDt0aHJvdyBlLl9yZXN1bHR9dmFyIFU9e2N1cnJlbnQ6bnVsbH0sQT17dHJhbnNpdGlvbjpudWxsfSxSPXsKUmVhY3RDdXJyZW50RGlzcGF0Y2hlcjpVLFJlYWN0Q3VycmVudEJhdGNoQ29uZmlnOkEsUmVhY3RDdXJyZW50T3duZXI6eH07dC5DaGlsZHJlbj17bWFwOk4sZm9yRWFjaDpmdW5jdGlvbihlLHQsbil7TihlLChmdW5jdGlvbigpe3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfSksbil9LGNvdW50OmZ1bmN0aW9uKGUpe3ZhciB0PTA7cmV0dXJuIE4oZSwoZnVuY3Rpb24oKXt0Kyt9KSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4gTihlLChmdW5jdGlvbihlKXtyZXR1cm4gZX0pKXx8W119LG9ubHk6ZnVuY3Rpb24oZSl7aWYoIWsoZSkpdGhyb3cgRXJyb3IoIlJlYWN0LkNoaWxkcmVuLm9ubHkgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhIHNpbmdsZSBSZWFjdCBlbGVtZW50IGNoaWxkLiIpO3JldHVybiBlfX0sdC5Db21wb25lbnQ9eSx0LkZyYWdtZW50PW8sdC5Qcm9maWxlcj1pLHQuUHVyZUNvbXBvbmVudD1iLHQuU3RyaWN0TW9kZT1hLHQuU3VzcGVuc2U9dSx0Ll9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPVIsdC5jbG9uZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LHIpe2lmKG51bGw9PWUpdGhyb3cgRXJyb3IoIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciBvPWgoe30sZS5wcm9wcyksYT1lLmtleSxpPWUucmVmLHM9ZS5fb3duZXI7aWYobnVsbCE9dCl7aWYodm9pZCAwIT09dC5yZWYmJihpPXQucmVmLHM9eC5jdXJyZW50KSx2b2lkIDAhPT10LmtleSYmKGE9IiIrdC5rZXkpLGUudHlwZSYmZS50eXBlLmRlZmF1bHRQcm9wcyl2YXIgbD1lLnR5cGUuZGVmYXVsdFByb3BzO2ZvcihjIGluIHQpRS5jYWxsKHQsYykmJiFDLmhhc093blByb3BlcnR5KGMpJiYob1tjXT12b2lkIDA9PT10W2NdJiZ2b2lkIDAhPT1sP2xbY106dFtjXSl9dmFyIGM9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1jKW8uY2hpbGRyZW49cjtlbHNlIGlmKDE8Yyl7bD1BcnJheShjKTtmb3IodmFyIHU9MDt1PGM7dSsrKWxbdV09YXJndW1lbnRzW3UrMl07by5jaGlsZHJlbj1sfXJldHVybnskJHR5cGVvZjpuLHR5cGU6ZS50eXBlLGtleTphLHJlZjppLHByb3BzOm8sX293bmVyOnN9fSx0LmNyZWF0ZUNvbnRleHQ9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9eyQkdHlwZW9mOmwsX2N1cnJlbnRWYWx1ZTplLF9jdXJyZW50VmFsdWUyOmUsX3RocmVhZENvdW50OjAsUHJvdmlkZXI6bnVsbCxDb25zdW1lcjpudWxsLF9kZWZhdWx0VmFsdWU6bnVsbCxfZ2xvYmFsTmFtZTpudWxsfSkuUHJvdmlkZXI9eyQkdHlwZW9mOnMsX2NvbnRleHQ6ZX0sZS5Db25zdW1lcj1lfSx0LmNyZWF0ZUVsZW1lbnQ9Uyx0LmNyZWF0ZUZhY3Rvcnk9ZnVuY3Rpb24oZSl7dmFyIHQ9Uy5iaW5kKG51bGwsZSk7cmV0dXJuIHQudHlwZT1lLHR9LHQuY3JlYXRlUmVmPWZ1bmN0aW9uKCl7cmV0dXJue2N1cnJlbnQ6bnVsbH19LHQuZm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6YyxyZW5kZXI6ZX19LHQuaXNWYWxpZEVsZW1lbnQ9ayx0Lmxhenk9ZnVuY3Rpb24oZSl7cmV0dXJueyQkdHlwZW9mOmQsX3BheWxvYWQ6e19zdGF0dXM6LTEsX3Jlc3VsdDplfSxfaW5pdDpJfX0sdC5tZW1vPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOm0sdHlwZTplLGNvbXBhcmU6dm9pZCAwPT09dD9udWxsOnR9fSx0LnN0YXJ0VHJhbnNpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1BLnRyYW5zaXRpb247QS50cmFuc2l0aW9uPXt9O3RyeXtlKCl9ZmluYWxseXtBLnRyYW5zaXRpb249dH19LHQudW5zdGFibGVfYWN0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoImFjdCguLi4pIGlzIG5vdCBzdXBwb3J0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgb2YgUmVhY3QuIil9LHQudXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVS5jdXJyZW50LnVzZUNhbGxiYWNrKGUsdCl9LHQudXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gVS5jdXJyZW50LnVzZUNvbnRleHQoZSl9LHQudXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sdC51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBVLmN1cnJlbnQudXNlRGVmZXJyZWRWYWx1ZShlKX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVS5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIFUuY3VycmVudC51c2VJZCgpfSx0LnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBVLmN1cnJlbnQudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LHQudXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIFUuY3VycmVudC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sdC51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVS5jdXJyZW50LnVzZUxheW91dEVmZmVjdChlLHQpfSx0LnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVS5jdXJyZW50LnVzZU1lbW8oZSx0KX0sdC51c2VSZWR1Y2VyPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVS5jdXJyZW50LnVzZVJlZHVjZXIoZSx0LG4pfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gVS5jdXJyZW50LnVzZVJlZihlKX0sdC51c2VTdGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gVS5jdXJyZW50LnVzZVN0YXRlKGUpfSx0LnVzZVN5bmNFeHRlcm5hbFN0b3JlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVS5jdXJyZW50LnVzZVN5bmNFeHRlcm5hbFN0b3JlKGUsdCxuKX0sdC51c2VUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIFUuY3VycmVudC51c2VUcmFuc2l0aW9uKCl9LHQudmVyc2lvbj0iMTguMi4wIn0sNzc5NDc0KGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPW4oMTIyNzQ5KX0sNzExNjc4KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9big3Nzk0NzQpLG89bigxMzg2MzgpLGE9bigxODUyNzEpLGk9big5MTQ0ODcpLHM9bi5uKGkpLGw9bigxMDgxNjkpLGM9bi5uKGwpO2NvbnN0IHU9KDAsci5mb3J3YXJkUmVmKSgoZnVuY3Rpb24oZSx0KXsKY29uc3R7Y2hpbGRyZW46bixjbGFzc05hbWU6byxvbkNsaWNrOmEsaHRtbEF0dHJJZDppLGRhdGFRYUlkOmwsLi4udX09ZTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJhcnRpY2xlIix7Li4udSxpZDppLGNsYXNzTmFtZTpzKCkoYygpWyJjYXJkLWV4dGVyaW9yIl0sbyksb25DbGljazphLHJlZjp0LCJkYXRhLXFhLWlkIjpsfSxuKX0pKTt2YXIgbTtmdW5jdGlvbiBkKGUpe3JldHVybiJsb2dvVXJsImluIGV9IWZ1bmN0aW9uKGUpe2VbZS5NYXhMb2dvVXJsc1N0YWNrTGVuZ3RoPTRdPSJNYXhMb2dvVXJsc1N0YWNrTGVuZ3RoIn0obXx8KG09e30pKTt2YXIgZz1uKDk3NTI4NSk7Y29uc3QgZj1uLm4oZykoKTt2YXIgaD1uKDE0MDAxNykscD1uLm4oaCk7cCgpLmhpZGRlbjtmdW5jdGlvbiB5KGUpe2NvbnN0IHQ9ZnVuY3Rpb24oZSl7cmV0dXJuImxvZ29VcmwiaW4gZSYmbnVsbCE9PWUubG9nb1VybCYmdm9pZCAwIT09ZS5sb2dvVXJsJiYwIT09ZS5sb2dvVXJsLmxlbmd0aH0oZSksW24sb109KDAsci51c2VTdGF0ZSkoMCksYT0oMCxyLnVzZVJlZikobnVsbCksaT1mdW5jdGlvbihlLHQ9MixuKXtyZXR1cm4gcygpKHAoKS5sb2dvLHAoKVtlXSxuLDA9PT10fHwxPT09dD9zKCkoZi53cmFwcGVyLHAoKS5za2VsZXRvbik6cCgpLmxldHRlciwxPT09dCYmZi5hbmltYXRlZCl9KGUuc2l6ZSxuLGUuY2xhc3NOYW1lKSxsPWUuYWx0Pz9lLnRpdGxlPz8iIixjPXQ/bFswXTplLnBsYWNlaG9sZGVyTGV0dGVyO3JldHVybigwLHIudXNlRWZmZWN0KSgoKCk9Pm8oYS5jdXJyZW50Py5jb21wbGV0ZT8/IXQ/MjoxKSksW3RdKSx0JiYzIT09bj9yLmNyZWF0ZUVsZW1lbnQoImltZyIse3JlZjphLGNsYXNzTmFtZTppLGNyb3NzT3JpZ2luOiIiLHNyYzplLmxvZ29VcmwsYWx0OmwsdGl0bGU6ZS50aXRsZSxsb2FkaW5nOmUubG9hZGluZyxvbkxvYWQ6KCk9Pm8oMiksb25FcnJvcjooKT0+bygzKSwiYXJpYS1sYWJlbCI6ZVsiYXJpYS1sYWJlbCJdLCJhcmlhLWhpZGRlbiI6ZVsiYXJpYS1oaWRkZW4iXX0pOnIuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTppLHRpdGxlOmUudGl0bGUsImFyaWEtbGFiZWwiOmVbImFyaWEtbGFiZWwiXSwiYXJpYS1oaWRkZW4iOmVbImFyaWEtaGlkZGVuIl19LGMpfXZhciBfPW4oNzUzNDg1KTtmdW5jdGlvbiBiKGUpe2NvbnN0e3NpemU6dD0ieHh4c21hbGwiLHJlZmVyZW5jZTpuLHNob3dUb29sdGlwOm8saGlkZVRvb2x0aXA6YX09ZSxpPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9W10sbj1uZXcgU2V0LHI9ZS5zbGljZSgpO2Zvcig7MCE9PXIubGVuZ3RoOyl7Y29uc3QgZT1yLnNoaWZ0KCk7aWYoIWUpYnJlYWs7Y29uc3QgYT1kKGUpLGk9YT9lLmxvZ29Vcmw6ZS5zeW1ib2w7aWYoIW4uaGFzKGkpJiYobi5hZGQoaSksYT90LnB1c2goZSk6dC5wdXNoKHtwbGFjZWhvbGRlckxldHRlcjoobz1lLnN5bWJvbCxvLmluY2x1ZGVzKCI6Iik/by5zcGxpdCgiOiIpOlsiIixvXSlbMV1bMF19KSw0PT09dC5sZW5ndGgpKWJyZWFrfXZhciBvO3JldHVybiB0fShlLmxvZ29VcmxzT3JTeW1ib2xzKTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJ1bCIse2NsYXNzTmFtZTpzKCkoXy5zdGFjayxfW2BzdGFjay0tJHt0fWBdLGUuY2xhc3NOYW1lLCJhcHBseS1jb21tb24tdG9vbHRpcCIpLHJlZjpuLG9uTW91c2VFbnRlcjpvLG9uTW91c2VMZWF2ZTphfSxpLm1hcCgoKGUsbik9PnIuY3JlYXRlRWxlbWVudCgibGkiLHtrZXk6bn0sci5jcmVhdGVFbGVtZW50KHksey4uLmUsc2l6ZTp0LGxvYWRpbmc6ImxhenkifSkpKSkpfWZ1bmN0aW9uIHYoZSx0LG49ImxvbmciKXtjb25zdFtyLG9dPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9TWF0aC5mbG9vcihlLzFlMyksbj1NYXRoLnNpZ24odCksW3Isb109ZnVuY3Rpb24oZSl7aWYoZTw5MClyZXR1cm5bMSwibWludXRlIl07aWYoZTwyNzAwKXJldHVybltNYXRoLm1heChNYXRoLmZsb29yKGUvNjApLDIpLCJtaW51dGUiXTtpZihlPDU0MDApcmV0dXJuWzEsImhvdXIiXTtpZihlPDc5MjAwKXJldHVybltNYXRoLm1heChNYXRoLmZsb29yKGUvNjAvNjApLDIpLCJob3VyIl07aWYoZTwxMjk2MDApcmV0dXJuWzEsImRheSJdO2lmKGU8MjE2ZTQpcmV0dXJuW01hdGgubWF4KE1hdGguZmxvb3IoZS84NjQwMCksMiksImRheSJdO2lmKGU8Mzg4OGUzKXJldHVyblsxLCJtb250aCJdO2lmKGU8Mjk4MDhlMylyZXR1cm5bTWF0aC5tYXgoTWF0aC5mbG9vcihlLzI1OTJlMyksMiksIm1vbnRoIl07cmV0dXJuIGU8NDcwODhlMz9bMSwieWVhciJdOltNYXRoLm1heChNYXRoLmZsb29yKGUvMzE1MzZlMyksMiksInllYXIiXX0oTWF0aC5hYnModCkpO3JldHVybltuKnIsb119KGUpO3JldHVybiBuZXcgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQodCx7bnVtZXJpYzoiYXV0byIsc3R5bGU6bn0pLmZvcm1hdChyLG8pfWZ1bmN0aW9uIHcoKXtpZighd2luZG93LmN1c3RvbUVsZW1lbnRzLmdldCgicmVsYXRpdmUtdGltZSIpKXtjbGFzcyBlIGV4dGVuZHMgSFRNTEVsZW1lbnR7c3RhdGljIGdldCBvYnNlcnZlZEF0dHJpYnV0ZXMoKXtyZXR1cm5bImV2ZW50LXRpbWUiLCJsb2NhbGUiLCJmb3JtYXQtc3R5bGUiLCJ0aW1lLXpvbmUiXX1jb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5fY3VycmVudFRpbWU9MCx0aGlzLl9ldmVudFRpbWU9MCx0aGlzLl9sb2NhbGU9dm9pZCAwLHRoaXMuX3RpbWVab25lPXZvaWQgMCx0aGlzLl9zdHlsZT0ibG9uZyIsdGhpcy5faXNDb25uZWN0ZWQ9ITEsdGhpcy5fZGF0ZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0aW1lIik7Y29uc3QgZT10aGlzLmdldEF0dHJpYnV0ZSgic3NyLXRpbWUiKTt0aGlzLl9jdXJyZW50VGltZT1lP0RhdGUucGFyc2UoZSk6RGF0ZS5ub3coKTt0aGlzLmF0dGFjaFNoYWRvdyh7bW9kZToiY2xvc2VkIn0pLmFwcGVuZENoaWxkKHRoaXMuX2RhdGUpfWNvbm5lY3RlZENhbGxiYWNrKCl7dGhpcy5faXNDb25uZWN0ZWQ9ITAsdGhpcy5jbGFzc0xpc3QuYWRkKCJhcHBseS1jb21tb24tdG9vbHRpcCIpLHRoaXMuX3VwZGF0ZUF0dHJpYnV0ZXMoKSx0aGlzLl9jb25uZWN0aW9uQ2hhbmdlZCgpfWRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7CnRoaXMuX2lzQ29ubmVjdGVkPSExLHRoaXMuX2Nvbm5lY3Rpb25DaGFuZ2VkKCl9YXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrKGUsdCxuKXsiZXZlbnQtdGltZSI9PT1lJiYodGhpcy5fZXZlbnRUaW1lPURhdGUucGFyc2UobikpLCJsb2NhbGUiPT09ZSYmKHRoaXMuX2xvY2FsZT1uKSwidGltZS16b25lIj09PWUmJih0aGlzLl90aW1lWm9uZT1uKSwiZm9ybWF0LXN0eWxlIj09PWUmJih0aGlzLl9zdHlsZT1uKSx0aGlzLl9pc0Nvbm5lY3RlZCYmKHRoaXMuX3VwZGF0ZUF0dHJpYnV0ZXMoKSx0aGlzLnVwZGF0ZShEYXRlLm5vdygpKSl9dXBkYXRlKGUpe2NvbnN0IHQ9dih0aGlzLl9ldmVudFRpbWUtZSx0aGlzLl9sb2NhbGUsdGhpcy5fc3R5bGUpO3RoaXMuX2RhdGUuaW5uZXJUZXh0PXR9X3VwZGF0ZUF0dHJpYnV0ZXMoKXtjb25zdCBlPW5ldyBEYXRlKHRoaXMuX2V2ZW50VGltZSk7dmFyIHQsbixyLG87dGhpcy5zZXRBdHRyaWJ1dGUoInRpdGxlIiwodD1lLG89dGhpcy5fbG9jYWxlLG49bz9gJHtvfS11LWhjLWgyM2A6dm9pZCAwLHI9dGhpcy5fdGltZVpvbmUsbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQobix7dGltZVpvbmU6cix5ZWFyOiJudW1lcmljIixkYXk6Im51bWVyaWMiLG1vbnRoOiJzaG9ydCIsaG91cjoiMi1kaWdpdCIsbWludXRlOiIyLWRpZ2l0IixjYWxlbmRhcjoiZ3JlZ29yeSIsdGltZVpvbmVOYW1lOiJzaG9ydCJ9KS5mb3JtYXQodCkpKSx0aGlzLl9kYXRlLnNldEF0dHJpYnV0ZSgiZGF0ZXRpbWUiLGUudG9VVENTdHJpbmcoKSl9X2Nvbm5lY3Rpb25DaGFuZ2VkKCl7dGhpcy5faXNDb25uZWN0ZWQ/KEUuYWRkKHRoaXMpLHRoaXMudXBkYXRlKHRoaXMuX2N1cnJlbnRUaW1lKSxTKCkpOkUuZGVsZXRlKHRoaXMpfX13aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCJyZWxhdGl2ZS10aW1lIixlKX19Y29uc3QgRT1uZXcgU2V0O2xldCB4PTAsQz0wO2Z1bmN0aW9uIFMoKXswPT09eCYmMD09PUMmJjAhPT1FLnNpemUmJih4PXNldFRpbWVvdXQoKCgpPT57eD0wLEM9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgoKT0+e0M9MCxTKCksZnVuY3Rpb24oKXtjb25zdCBlPURhdGUubm93KCk7Zm9yKGNvbnN0IHQgb2YgRSl0LnVwZGF0ZShlKX0oKX0pKX0pLDNlNCkpfWZ1bmN0aW9uIGsoZSl7Y29uc3R7c3NyVGltZTp0LGV2ZW50VGltZTpuLGxvY2FsZUlzbzpvLGZvcm1hdFN0eWxlOmEsZmFsbGJhY2tUZXh0OmksaXNTU1I6cyxjbGFzc05hbWU6bCx0aW1lWm9uZTpjfT1lLHU9bmV3IERhdGUodHx8RGF0ZS5ub3coKSksbT1uZXcgRGF0ZShuKSxkPSgwLHIudXNlUmVmKShudWxsKTtyZXR1cm4gc3x8KDAsci51c2VMYXlvdXRFZmZlY3QpKCgoKT0+e2NvbnN0IGU9ZC5jdXJyZW50O2kmJmUmJiFlLnRleHRDb250ZW50JiYoZS50ZXh0Q29udGVudD1pKX0pKSwoMCxyLnVzZUVmZmVjdCkoKCgpPT57Y29uc3QgZT1kLmN1cnJlbnQ7SW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQmJihlJiZlLnJlbW92ZSgpLHcoKSl9KSxbXSksci5jcmVhdGVFbGVtZW50KCJyZWxhdGl2ZS10aW1lIix7bG9jYWxlOm8sInNzci10aW1lIjp0P3UudG9VVENTdHJpbmcoKTp2b2lkIDAsImV2ZW50LXRpbWUiOm0udG9VVENTdHJpbmcoKSwidGltZS16b25lIjpjLCJmb3JtYXQtc3R5bGUiOmEsY2xhc3M6bH0sci5jcmVhdGVFbGVtZW50KEwse3N0YXJ0RGF0ZTp1LGVuZERhdGU6bSxsb2NhbGVJc286byxzdHlsZTphLHJlZjpkfSkpfWNvbnN0IEw9ci5mb3J3YXJkUmVmKCgoZSx0KT0+e2NvbnN0e3N0YXJ0RGF0ZTpuLGVuZERhdGU6byxsb2NhbGVJc286YSxzdHlsZTppfT1lO2lmKEludGwuUmVsYXRpdmVUaW1lRm9ybWF0KXtjb25zdCBlPSgwLHIudXNlTWVtbykoKCgpPT52KG8uZ2V0VGltZSgpLW4uZ2V0VGltZSgpLGEsaSkpLFtdKTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJ0aW1lIix7cmVmOnQsZGF0ZVRpbWU6by50b1VUQ1N0cmluZygpLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMH0sZSl9cmV0dXJuIHIuY3JlYXRlRWxlbWVudCgidGltZSIse3JlZjp0LGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOntfX2h0bWw6IiJ9LHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMH0pCn0pKSxNPUpTT04ucGFyc2UoJ3siZW4iOnsibGFuZ3VhZ2UiOiJlbiIsImxhbmd1YWdlX25hbWUiOiJFbmdsaXNoIiwiZmxhZyI6InVzIiwiZ2VvaXBfY29kZSI6InVzIiwiaXNvIjoiZW4iLCJpc29fNjM5XzMiOiJlbmciLCJnbG9iYWxfbmFtZSI6IkVuZ2xpc2giLCJpc19vbmx5X3JlY29tbWVuZGVkX3R3X2F1dG9yZXBvc3QiOnRydWV9LCJpbiI6eyJsYW5ndWFnZSI6ImVuIiwibGFuZ3VhZ2VfbmFtZSI6IkVuZ2xpc2gg4oCOKEluZGlhKeKAjiIsImZsYWciOiJpbiIsImdlb2lwX2NvZGUiOiJpbiIsImlzbyI6ImVuIiwiaXNvXzYzOV8zIjoiZW5nIiwiZ2xvYmFsX25hbWUiOiJJbmRpYW4ifSwiZGVfREUiOnsibGFuZ3VhZ2UiOiJkZSIsImxhbmd1YWdlX25hbWUiOiJEZXV0c2NoIiwiZmxhZyI6ImRlIiwiZ2VvaXBfY29kZSI6ImRlIiwiY291bnRyaWVzX3dpdGhfdGhpc19sYW5ndWFnZSI6WyJhdCIsImNoIl0sImlzbyI6ImRlIiwiaXNvXzYzOV8zIjoiZGV1IiwiZ2xvYmFsX25hbWUiOiJHZXJtYW4iLCJpc19pbl9ldXJvcGVhbl91bmlvbiI6dHJ1ZX0sImZyIjp7Imxhbmd1YWdlIjoiZnIiLCJsYW5ndWFnZV9uYW1lIjoiRnJhbsOnYWlzIiwiZmxhZyI6ImZyIiwiZ2VvaXBfY29kZSI6ImZyIiwiaXNvIjoiZnIiLCJpc29fNjM5XzMiOiJmcmEiLCJnbG9iYWxfbmFtZSI6IkZyZW5jaCIsImlzX2luX2V1cm9wZWFuX3VuaW9uIjp0cnVlfSwiY2FfRVMiOnsibGFuZ3VhZ2UiOiJjYV9FUyIsImxhbmd1YWdlX25hbWUiOiJDYXRhbMOgIiwiZmxhZyI6ImVzIiwiZ2VvaXBfY29kZSI6ImVzIiwiaXNvIjoiY2EiLCJpc29fNjM5XzMiOiJjYXQiLCJnbG9iYWxfbmFtZSI6IkNhdGFsYW4ifSwiZXMiOnsibGFuZ3VhZ2UiOiJlcyIsImxhbmd1YWdlX25hbWUiOiJFc3Bhw7FvbCIsImZsYWciOiJlcyIsImdlb2lwX2NvZGUiOiJlcyIsImNvdW50cmllc193aXRoX3RoaXNfbGFuZ3VhZ2UiOlsibXgiLCJhciIsInZlIiwiY2wiLCJjbyIsInBlIiwidXkiLCJweSIsImNyIiwiZ3QiLCJjIiwiYm8iLCJwYSIsInByIl0sImlzbyI6ImVzIiwiaXNvXzYzOV8zIjoic3BhIiwiZ2xvYmFsX25hbWUiOiJTcGFuaXNoIiwiaXNfaW5fZXVyb3BlYW5fdW5pb24iOnRydWV9LCJpdCI6eyJsYW5ndWFnZSI6Iml0IiwibGFuZ3VhZ2VfbmFtZSI6Ikl0YWxpYW5vIiwiZmxhZyI6Iml0IiwiZ2VvaXBfY29kZSI6Iml0IiwiaXNvIjoiaXQiLCJpc29fNjM5XzMiOiJpdGEiLCJnbG9iYWxfbmFtZSI6Ikl0YWxpYW4iLCJpc19pbl9ldXJvcGVhbl91bmlvbiI6dHJ1ZX0sInBsIjp7Imxhbmd1YWdlIjoicGwiLCJsYW5ndWFnZV9uYW1lIjoiUG9sc2tpIiwiZmxhZyI6InBsIiwiZ2VvaXBfY29kZSI6InBsIiwiaXNvIjoicGwiLCJpc29fNjM5XzMiOiJwb2wiLCJnbG9iYWxfbmFtZSI6IlBvbGlzaCIsImlzX2luX2V1cm9wZWFuX3VuaW9uIjp0cnVlfSwiaHVfSFUiOnsibGFuZ3VhZ2UiOiJodV9IVSIsImxhbmd1YWdlX25hbWUiOiJNYWd5YXIiLCJmbGFnIjoiaHUiLCJnZW9pcF9jb2RlIjoiaHUiLCJpc28iOiJodSIsImlzb182MzlfMyI6Imh1biIsImdsb2JhbF9uYW1lIjoiSHVuZ2FyaWFuIiwiaXNfaW5fZXVyb3BlYW5fdW5pb24iOnRydWV9LCJzdl9TRSI6eyJsYW5ndWFnZSI6InN2IiwibGFuZ3VhZ2VfbmFtZSI6IlN2ZW5za2EiLCJmbGFnIjoic2UiLCJnZW9pcF9jb2RlIjoic2UiLCJpc28iOiJzdiIsImlzb182MzlfMyI6InN3ZSIsImdsb2JhbF9uYW1lIjoiU3dlZGlzaCIsImlzX2luX2V1cm9wZWFuX3VuaW9uIjp0cnVlfSwidHIiOnsibGFuZ3VhZ2UiOiJ0ciIsImxhbmd1YWdlX25hbWUiOiJUw7xya8OnZSIsImZsYWciOiJ0ciIsImdlb2lwX2NvZGUiOiJ0ciIsImlzbyI6InRyIiwiaXNvXzYzOV8zIjoidHVyIiwiZ2xvYmFsX25hbWUiOiJUdXJraXNoIiwiaXNfb25seV9yZWNvbW1lbmRlZF90d19hdXRvcmVwb3N0Ijp0cnVlfSwicnUiOnsibGFuZ3VhZ2UiOiJydSIsImxhbmd1YWdlX25hbWUiOiLQoNGD0YHRgdC60LjQuSIsImZsYWciOiJydSIsImdlb2lwX2NvZGUiOiJydSIsImNvdW50cmllc193aXRoX3RoaXNfbGFuZ3VhZ2UiOlsiYW0iLCJieSIsImtnIiwia3oiLCJtZCIsInRqIiwidG0iLCJ1eiJdLCJpc28iOiJydSIsImlzb182MzlfMyI6InJ1cyIsImdsb2JhbF9uYW1lIjoiUnVzc2lhbiIsImlzX29ubHlfcmVjb21tZW5kZWRfdHdfYXV0b3JlcG9zdCI6dHJ1ZX0sImJyIjp7Imxhbmd1YWdlIjoicHQiLCJsYW5ndWFnZV9uYW1lIjoiUG9ydHVndcOqcyIsImZsYWciOiJiciIsImdlb2lwX2NvZGUiOiJiciIsImlzbyI6InB0IiwiaXNvXzYzOV8zIjoicG9yIiwiZ2xvYmFsX25hbWUiOiJQb3J0dWd1ZXNlIn0sImlkIjp7Imxhbmd1YWdlIjoiaWRfSUQiLCJsYW5ndWFnZV9uYW1lIjoiQmFoYXNhIEluZG9uZXNpYSIsImZsYWciOiJpZCIsImdlb2lwX2NvZGUiOiJpZCIsImlzbyI6ImlkIiwiaXNvXzYzOV8zIjoiaW5kIiwiZ2xvYmFsX25hbWUiOiJJbmRvbmVzaWFuIn0sIm1zX01ZIjp7Imxhbmd1YWdlIjoibXNfTVkiLCJsYW5ndWFnZV9uYW1lIjoiQmFoYXNhIE1lbGF5dSIsImZsYWciOiJteSIsImdlb2lwX2NvZGUiOiJteSIsImlzbyI6Im1zIiwiaXNvXzYzOV8zIjoiemxtIiwiZ2xvYmFsX25hbWUiOiJNYWxheXNpYW4ifSwidGhfVEgiOnsibGFuZ3VhZ2UiOiJ0aCIsImxhbmd1YWdlX25hbWUiOiLguKDguLLguKnguLLguYTguJfguKIiLCJmbGFnIjoidGgiLCJnZW9pcF9jb2RlIjoidGgiLCJpc28iOiJ0aCIsImlzb182MzlfMyI6InRoYSIsImdsb2JhbF9uYW1lIjoiVGhhaSJ9LCJ2aV9WTiI6eyJsYW5ndWFnZSI6InZpIiwibGFuZ3VhZ2VfbmFtZSI6IlRp4bq/bmcgVmnhu4d0IiwiZmxhZyI6InZuIiwiZ2VvaXBfY29kZSI6InZuIiwiaXNvIjoidmkiLCJpc29fNjM5XzMiOiJ2aWUiLCJnbG9iYWxfbmFtZSI6IlZpZXRuYW1lc2UifSwiamEiOnsibGFuZ3VhZ2UiOiJqYSIsImxhbmd1YWdlX25hbWUiOiLml6XmnKzoqp4iLCJmbGFnIjoianAiLCJnZW9pcF9jb2RlIjoianAiLCJpc28iOiJqYSIsImlzb182MzlfMyI6ImpwbiIsImdsb2JhbF9uYW1lIjoiSmFwYW5lc2UifSwia3IiOnsibGFuZ3VhZ2UiOiJrbyIsImxhbmd1YWdlX25hbWUiOiLtlZzqta3slrQiLCJmbGFnIjoia3IiLCJnZW9pcF9jb2RlIjoia3IiLCJpc28iOiJrbyIsImlzb182MzlfMyI6ImtvciIsImdsb2JhbF9uYW1lIjoiS29yZWFuIn0sInpoX0NOIjp7Imxhbmd1YWdlIjoiemgiLCJsYW5ndWFnZV9uYW1lIjoi566A5L2T5Lit5paHIiwiZmxhZyI6ImNuIiwiZ2VvaXBfY29kZSI6ImNuIiwiY291bnRyaWVzX3dpdGhfdGhpc19sYW5ndWFnZSI6WyJ6aCJdLCJpc28iOiJ6aC1IYW5zIiwiaXNvXzYzOV8zIjoiY21uIiwiZ2xvYmFsX25hbWUiOiJDaGluZXNlIn0sInpoX1RXIjp7Imxhbmd1YWdlIjoiemhfVFciLCJsYW5ndWFnZV9uYW1lIjoi57mB6auU5Lit5paHIiwiZmxhZyI6InR3IiwiZ2VvaXBfY29kZSI6InR3IiwiY291bnRyaWVzX3dpdGhfdGhpc19sYW5ndWFnZSI6WyJoayJdLCJpc28iOiJ6aC1IYW50IiwiaXNvXzYzOV8zIjoiY21uIiwiZ2xvYmFsX25hbWUiOiJUYWl3YW5lc2UifSwiYXJfQUUiOnsibGFuZ3VhZ2UiOiJhciIsImxhbmd1YWdlX25hbWUiOiLYp9mE2LnYsdio2YrYqSIsImZsYWciOiJzYSIsImdlb2lwX2NvZGUiOiJzYSIsImNvdW50cmllc193aXRoX3RoaXNfbGFuZ3VhZ2UiOlsiYWUiLCJiaCIsImRqIiwiZHoiLCJlZyIsImVyIiwiaXEiLCJqbyIsImttIiwia3ciLCJsYiIsImx5IiwibWEiLCJtciIsIm9tIiwicWEiLCJzYSIsInNkIiwic28iLCJzeSIsInRkIiwidG4iLCJ5ZSJdLCJkaXIiOiJydGwiLCJpc28iOiJhciIsImlzb182MzlfMyI6ImFyYiIsImdsb2JhbF9uYW1lIjoiQXJhYmljIn0sImhlX0lMIjp7Imxhbmd1YWdlIjoiaGVfSUwiLCJsYW5ndWFnZV9uYW1lIjoi16LXkdeo15nXqiIsImZsYWciOiJpbCIsImdlb2lwX2NvZGUiOiJpbCIsImRpciI6InJ0bCIsImlzbyI6ImhlIiwiaXNvXzYzOV8zIjoiaGViIiwiZ2xvYmFsX25hbWUiOiJJc3JhZWxpIn19JyksVD1mdW5jdGlvbigpewpjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYWdlLWxvY2FsZS1saW5rcyIpPy50ZXh0Q29udGVudCx0PWU/SlNPTi5wYXJzZShlKTpbXTtpZigwPT09dC5sZW5ndGgpcmV0dXJuIE07Y29uc3Qgbj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoe2xvY2FsZTplLHVybDp0fSk9PntuW2VdPXsuLi5NW2VdLGhyZWY6dH19KSksbn0oKTtmdW5jdGlvbiBOKGUpe3JldHVybiBlPWV8fHdpbmRvdy5sb2NhbGUsVFtlXT8uaXNvfXZhciBJOyFmdW5jdGlvbihlKXtlLlR3ZW50eUZvdXJIb3Vycz0iMjQtaG91cnMiLGUuVHdlbHZlSG91cnM9IjEyLWhvdXJzIn0oSXx8KEk9e30pKTt2YXIgVT1uKDYwMTg0MSk7ZnVuY3Rpb24gQShlLHQpe2lmKCEoMCxVLmlzTnVtYmVyKShlKSlyZXR1cm4ibi9hIjtpZighKDAsVS5pc0ludGVnZXIpKHQpKXRocm93IG5ldyBUeXBlRXJyb3IoImludmFsaWQgbGVuZ3RoIik7aWYodDwwfHx0PjI0KXRocm93IG5ldyBUeXBlRXJyb3IoImludmFsaWQgbGVuZ3RoIik7aWYoMD09PXQpcmV0dXJuIGUudG9TdHJpbmcoKTtyZXR1cm4oIjAwMDAwMDAwMDAwMDAwMDAwMDAwIitlLnRvU3RyaW5nKCkpLnNsaWNlKC10KX1jbGFzcyBSe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2lzVHdlbHZlSG91cnNGb3JtYXQ9ITEsdGhpcy5fdmFsdWVzQW5kRGVsaW1pdGVycz1bXTtjb25zdCB0PWV8fCIlaDolbTolcyIsbj1uZXcgUmVnRXhwKCIlaHwlbXwlc1xcK3wlc3NcXCt8JXNzfCVhbXBtfCVzIiwiZyIpO2xldCByPW4uZXhlYyh0KSxvPTA7Zm9yKDtudWxsIT09cjspe2NvbnN0IGU9clswXTsiJWFtcG0iPT09ZSYmKHRoaXMuX2lzVHdlbHZlSG91cnNGb3JtYXQ9ITApO2NvbnN0IGE9dC5zdWJzdHJpbmcobyxyLmluZGV4KTsiIiE9PWEmJnRoaXMuX3ZhbHVlc0FuZERlbGltaXRlcnMucHVzaChhKSx0aGlzLl92YWx1ZXNBbmREZWxpbWl0ZXJzLnB1c2goZSksbz1yLmluZGV4K2UubGVuZ3RoLHI9bi5leGVjKHQpfX1mb3JtYXQoZSl7cmV0dXJuIHRoaXMuX2Zvcm1hdFRpbWUoZSl9Zm9ybWF0TG9jYWwoZSl7cmV0dXJuIHRoaXMuX2Zvcm1hdFRpbWUoZSwhMCl9X2Zvcm1hdFRpbWUoZSx0PSExKXtsZXQgbj10P2UuZ2V0SG91cnMoKTplLmdldFVUQ0hvdXJzKCk7Y29uc3Qgcj10P2UuZ2V0TWludXRlcygpOmUuZ2V0VVRDTWludXRlcygpLG89dD9lLmdldFNlY29uZHMoKTplLmdldFVUQ1NlY29uZHMoKSxhPXQ/ZS5nZXRNaWxsaXNlY29uZHMoKTplLmdldFVUQ01pbGxpc2Vjb25kcygpO2xldCBpPSIiO3RoaXMuX2lzVHdlbHZlSG91cnNGb3JtYXQmJihpPW4+PTEyPyJQTSI6IkFNIixuJT0xMixuPW58fDEyKTtsZXQgcz0iIixsPSExO2ZvcihsZXQgZT10aGlzLl92YWx1ZXNBbmREZWxpbWl0ZXJzLmxlbmd0aC0xO2U+PTA7ZS0tKXtjb25zdCB0PXRoaXMuX3ZhbHVlc0FuZERlbGltaXRlcnNbZV07bGV0IGM7c3dpdGNoKHQpe2Nhc2UiJWgiOmM9QShuLDIpO2JyZWFrO2Nhc2UiJW0iOmM9QShyLDIpO2JyZWFrO2Nhc2UiJXMrIjowIT09bz9jPUEobywyKTooYz0iIixsPSEwKTticmVhaztjYXNlIiVzIjpjPUEobywyKTticmVhaztjYXNlIiVzcyI6Yz1BKGEsMyk7YnJlYWs7Y2FzZSIlc3MrIjowIT09YT9jPUEoYSwzKTooYz0iIixsPSEwKTticmVhaztjYXNlIiVhbXBtIjpjPWk7YnJlYWs7ZGVmYXVsdDppZihsKXtsPSExO2NvbnRpbnVlfWM9dH1zPWMrc31yZXR1cm4gc319Y2xhc3MgJHtjb25zdHJ1Y3RvcihlKXt0aGlzLl90aW1lRm9ybWF0dGVySW5zdGFuY2U9bmV3IFIoZSl9Zm9ybWF0KGUpe3JldHVybiAkLl9jdXN0b21Gb3JtYXR0ZXI/JC5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdChlKTp0aGlzLl90aW1lRm9ybWF0dGVySW5zdGFuY2UuZm9ybWF0KGUpfWZvcm1hdExvY2FsKGUpe3JldHVybiAkLl9jdXN0b21Gb3JtYXR0ZXI/JC5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdExvY2FsKGUpOnRoaXMuX3RpbWVGb3JtYXR0ZXJJbnN0YW5jZS5mb3JtYXRMb2NhbChlKX1zdGF0aWMgc2V0Q3VzdG9tRm9ybWF0dGVyKGUpeyQuX2N1c3RvbUZvcm1hdHRlcj1lfX0kLl9jdXN0b21Gb3JtYXR0ZXI9bnVsbDt2YXIgTz1uKDc4MzI1NCk7Y29uc3QgVj17MTooKT0+Ty50KG51bGwsdm9pZCAwLG4oNjU3Mzc0KSksMjooKT0+Ty50KG51bGwsdm9pZCAwLG4oNjE3MzQxKSksMzooKT0+Ty50KG51bGwsdm9pZCAwLG4oMTAzMzA1KSksNDooKT0+Ty50KG51bGwsdm9pZCAwLG4oNTI2Nzg1KSksNTooKT0+Ty50KG51bGwse2NvbnRleHQ6InNob3J0In0sbig3MzQ3NTApKSw2OigpPT5PLnQobnVsbCx2b2lkIDAsbig4Nzc0NSkpLDc6KCk9Pk8udChudWxsLHZvaWQgMCxuKDE4Mzk1OSkpLDg6KCk9Pk8udChudWxsLHZvaWQgMCxuKDkzNzYyKSksOTooKT0+Ty50KG51bGwsdm9pZCAwLG4oMTc4NDY5KSksMTA6KCk9Pk8udChudWxsLHZvaWQgMCxuKDcyODMzNykpLDExOigpPT5PLnQobnVsbCx2b2lkIDAsbig2NDY1NDUpKSwxMjooKT0+Ty50KG51bGwsdm9pZCAwLG4oNzY5MDM2KSl9LHo9ezE6KCk9Pk8udChudWxsLHZvaWQgMCxuKDg5NzY3KSksMjooKT0+Ty50KG51bGwsdm9pZCAwLG4oOTQ4OTIzKSksMzooKT0+Ty50KG51bGwsdm9pZCAwLG4oMzY3OTM1KSksNDooKT0+Ty50KG51bGwsdm9pZCAwLG4oMTc1NTA3KSl9LEQ9KGUsdCk9Pih0P2UuZ2V0TW9udGgoKTplLmdldFVUQ01vbnRoKCkpKzEsRj0oZSx0KT0+dD9lLmdldERhdGUoKTplLmdldFVUQ0RhdGUoKSxIPShlLHQpPT50P2UuZ2V0RnVsbFllYXIoKTplLmdldFVUQ0Z1bGxZZWFyKCksVz0oZSx0KT0+elsoKGUsdCk9Pk1hdGguZmxvb3IoKEQoZSx0KS0xKS8zKSsxKShlLHQpXSgpLFA9KGUsdCk9PkEoRihlLHQpLDIpLGo9KGUsdCk9PlZbRChlLHQpXSgpLEc9KGUsdCk9PkEoRChlLHQpLDIpLEI9KGUsdCk9PkEoSChlLHQpJTEwMCwyKSxZPShlLHQpPT5BKEgoZSx0KSw0KSxxPXsicXEgJ3l5IjooZSx0KT0+YCR7VyhlLHQpfSAnJHtCKGUsdCl9YCwicXEgeXl5eSI6KGUsdCk9PmAke1coZSx0KX0gJHtZKGUsdCl9YCwiZGQgTU1NICd5eSI6KGUsdCk9PmAke1AoZSx0KX0gJHtqKGUsdCl9ICcke0IoZSx0KX1gLAoiTU1NICd5eSI6KGUsdCk9PmAke2ooZSx0KX0gJyR7QihlLHQpfWAsIk1NTSBkZCwgeXl5eSI6KGUsdCk9PmAke2ooZSx0KX0gJHtQKGUsdCl9LCAke1koZSx0KX1gLCJNTU0gZCwgeXl5eSI6KGUsdCk9PmAke2ooZSx0KX0gJHsoKGUsdCk9PkEoRihlLHQpLDApKShlLHQpfSwgJHtZKGUsdCl9YCwiTU1NIHl5eXkiOihlLHQpPT5gJHtqKGUsdCl9ICR7WShlLHQpfWAsIk1NTSBkZCI6KGUsdCk9PmAke2ooZSx0KX0gJHtQKGUsdCl9YCwiZGQgTU1NIjooZSx0KT0+YCR7UChlLHQpfSAke2ooZSx0KX1gLCJ5eXl5LU1NLWRkIjooZSx0KT0+YCR7WShlLHQpfS0ke0coZSx0KX0tJHtQKGUsdCl9YCwieXktTU0tZGQiOihlLHQpPT5gJHtCKGUsdCl9LSR7RyhlLHQpfS0ke1AoZSx0KX1gLCJ5eS9NTS9kZCI6KGUsdCk9PmAke0IoZSx0KX0vJHtHKGUsdCl9LyR7UChlLHQpfWAsInl5eXkvTU0vZGQiOihlLHQpPT5gJHtZKGUsdCl9LyR7RyhlLHQpfS8ke1AoZSx0KX1gLCJkZC1NTS15eXl5IjooZSx0KT0+YCR7UChlLHQpfS0ke0coZSx0KX0tJHtZKGUsdCl9YCwiZGQtTU0teXkiOihlLHQpPT5gJHtQKGUsdCl9LSR7RyhlLHQpfS0ke0IoZSx0KX1gLCJkZC9NTS95eSI6KGUsdCk9PmAke1AoZSx0KX0vJHtHKGUsdCl9LyR7QihlLHQpfWAsImRkL01NL3l5eXkiOihlLHQpPT5gJHtQKGUsdCl9LyR7RyhlLHQpfS8ke1koZSx0KX1gLCJNTS9kZC95eSI6KGUsdCk9PmAke0coZSx0KX0vJHtQKGUsdCl9LyR7QihlLHQpfWAsIk1NL2RkL3l5eXkiOihlLHQpPT5gJHtHKGUsdCl9LyR7UChlLHQpfS8ke1koZSx0KX1gfTtPYmplY3Qua2V5cyhxKTtmdW5jdGlvbiBLKGUpe3JldHVybiBmdW5jdGlvbihlKXtjb25zdCB0PW5ldyBEYXRlKGUpLG49bmV3ICQoIiVoOiVtIikscj1xWyJNTU0gZGQiXSh0LCEwKTtyZXR1cm5bbi5mb3JtYXRMb2NhbCh0KSxyXX0oZSkuam9pbigiICIpLnJlcGxhY2UoIiAiLCIgwrcgIil9ZnVuY3Rpb24gWigpe2NvbnN0IGU9TigpO3JldHVybiBlJiZgJHtlfS11LWhjLWgyM2B9Y29uc3QgUT0oZSx0KT0+e2NvbnN0IG49SihlKS5nZXRUaW1lKCk7cmV0dXJuIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFooKSx7ZGF5OiJudW1lcmljIixtb250aDoic2hvcnQiLHllYXI6Im51bWVyaWMiLGhvdXI6IjItZGlnaXQiLG1pbnV0ZToiMi1kaWdpdCIsY2FsZW5kYXI6ImdyZWdvcnkiLHRpbWVab25lTmFtZToic2hvcnQiLHRpbWVab25lOnQ/IlVUQyI6dm9pZCAwfSkuZm9ybWF0KG4pfTtmdW5jdGlvbiBKKGUpe3JldHVybiBlIGluc3RhbmNlb2YgRGF0ZT9lOm5ldyBEYXRlKGUpfWZ1bmN0aW9uIFgoZSl7Y29uc3QgdD1uZXcgRGF0ZShlLmV2ZW50VGltZSk7cmV0dXJuIHIuY3JlYXRlRWxlbWVudCgidGltZSIse2RhdGVUaW1lOnQudG9VVENTdHJpbmcoKSxjbGFzc05hbWU6cygpKGUudGl0bGUmJiJhcHBseS1jb21tb24tdG9vbHRpcCIsZS5jbGFzc05hbWUpLHRpdGxlOmUudGl0bGUsc3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nOiEwfSxlLmNoaWxkcmVuKX1mdW5jdGlvbiBlZShlKXtjb25zdCB0PW5ldyBEYXRlLG49bmV3IERhdGUoZS5ldmVudFRpbWUpLG89bi5nZXRUaW1lKCksYT10LmdldFRpbWUoKS1vLGk9dC5nZXRGdWxsWWVhcigpIT09bi5nZXRGdWxsWWVhcigpO3JldHVybiFpJiZhPDY5MTJlNT9yLmNyZWF0ZUVsZW1lbnQoayx7Y2xhc3NOYW1lOmUuY2xhc3NOYW1lLGV2ZW50VGltZTplLmV2ZW50VGltZSxzc3JUaW1lOmUuc3NyVGltZSxsb2NhbGVJc286TigpLGZhbGxiYWNrVGV4dDpLKG8pLGlzU1NSOiExLHRpbWVab25lOmUudXNlVVRDVGltZXpvbmU/IlVUQyI6dm9pZCAwfSk6ci5jcmVhdGVFbGVtZW50KFgse2NsYXNzTmFtZTplLmNsYXNzTmFtZSxldmVudFRpbWU6ZS5ldmVudFRpbWUsdGl0bGU6UShlLmV2ZW50VGltZSxlLnVzZVVUQ1RpbWV6b25lKX0sZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuKChlLHQpPT57Y29uc3Qgbj1KKGUpLmdldFRpbWUoKTtyZXR1cm4gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoWigpLHttb250aDoic2hvcnQiLGRheToibnVtZXJpYyIsY2FsZW5kYXI6ImdyZWdvcnkiLHllYXI6Im51bWVyaWMiLHRpbWVab25lOnQ/IlVUQyI6dm9pZCAwfSkuZm9ybWF0KG4pfSkoZSxuKTtyZXR1cm4oKGUsdCk9Pntjb25zdCBuPUooZSkuZ2V0VGltZSgpO3JldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChaKCkse21vbnRoOiJzaG9ydCIsZGF5OiJudW1lcmljIixjYWxlbmRhcjoiZ3JlZ29yeSIsdGltZVpvbmU6dD8iVVRDIjp2b2lkIDB9KS5mb3JtYXQobil9KShlLG4pfShvLGksZS51c2VVVENUaW1lem9uZSkpfXZhciB0ZSxuZSxyZSxvZT1uKDYwMTU4NyksYWU9big2OTQzNDkpLGllPW4ubihhZSk7ZnVuY3Rpb24gc2UoZSl7Y29uc3R7cmVzaXplTW9kZTp0PW5lLkZpeGVkSGVpZ2h0LGNsYXNzTmFtZTpuLGNoaWxkcmVuOm8sLi4uYX09ZTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJkaXYiLHsuLi5hLGNsYXNzTmFtZTpzKCkoaWUoKS5wcmV2aWV3LGllKClbdF0sbil9LG8pfWZ1bmN0aW9uIGxlKGUpe2NvbnN0e2NsYXNzTmFtZTp0LHNvdXJjZXM6bixmYWxsYmFja1NyYzpvLHJvbGU6YT0icHJlc2VudGF0aW9uIixsb2FkaW5nOmk9ImxhenkiLGFsdDpsLC4uLmN9PWUsW3UsbV09KDAsci51c2VTdGF0ZSkoITEpO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoInBpY3R1cmUiLHtjbGFzc05hbWU6cygpKGllKCkucGljdHVyZSx1JiZpZSgpWyJicm9rZW4taW1hZ2UiXSl9LG4/Lm1hcCgoKGUsdCk9PnIuY3JlYXRlRWxlbWVudCgic291cmNlIix7Li4uZSxrZXk6dH0pKSksci5jcmVhdGVFbGVtZW50KCJpbWciLHsuLi5jLGFsdDpsLHNyYzpvLG9uRXJyb3I6KCk9Pm0oITApLHJvbGU6YSxsb2FkaW5nOmksY2xhc3NOYW1lOnMoKShpZSgpLmltYWdlLHQpfSkpfSFmdW5jdGlvbihlKXtlLlRvcExlZnQ9InRvcC1sZWZ0IixlLlRvcFJpZ2h0PSJ0b3AtcmlnaHQiLGUuQm90dG9tTGVmdD0iYm90dG9tLWxlZnQiLGUuQm90dG9tUmlnaHQ9ImJvdHRvbS1yaWdodCJ9KHRlfHwodGU9e30pKSxmdW5jdGlvbihlKXtlLkZpeGVkSGVpZ2h0PSJmaXhlZEhlaWdodCIsCmUuUmF0aW8xNmJ5OT0icmF0aW8xNmJ5OSIsZS5SYXRpbzJieTE9InJhdGlvMmJ5MSJ9KG5lfHwobmU9e30pKSxmdW5jdGlvbihlKXtlW2UuTWVkaXVtPTBdPSJNZWRpdW0iLGVbZS5MYXJnZT0xXT0iTGFyZ2UifShyZXx8KHJlPXt9KSk7dmFyIGNlPW4oMjIxMDYxKTtjb25zdCB1ZT0oMCxjZS5nZXRMb2dnZXIpKCJDb21tb24uSW5pdERhdGEiKSxtZT13aW5kb3cuaW5pdERhdGF8fHt9O2Z1bmN0aW9uIGRlKCl7IWZ1bmN0aW9uKCl7Y29uc3QgZT13aW5kb3c7ZS5pbml0RGF0YSYmZS5pbml0RGF0YSE9PW1lJiYoT2JqZWN0LmFzc2lnbihtZSxlLmluaXREYXRhKSxlLmluaXREYXRhPW1lKX0oKTtjb25zdCBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3NjcmlwdFt0eXBlPSJhcHBsaWNhdGlvbi9wcnMuaW5pdC1kYXRhK2pzb24iXScpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtjb25zdCBuPWVbdF07dHJ5e2NvbnN0IGU9SlNPTi5wYXJzZSgoMCxvLmVuc3VyZU5vdE51bGwpKG4udGV4dENvbnRlbnQpKTtPYmplY3QuYXNzaWduKG1lLGUpfWNhdGNoKGUpe3VlLmxvZ1dhcm4oYEZhaWxlZCB0byBwYXJzZSBpbml0RGF0YSBlbGVtZW50LiAke2V9YCl9ZmluYWxseXsoMCxvLmVuc3VyZU5vdE51bGwpKG4ucGFyZW50Tm9kZSkucmVtb3ZlQ2hpbGQobil9fWNvbnN0IHQ9bWUuY29udGVudDt0JiZtZS5zdHVkeV9tZXRhX2luZm9fbWFwJiYodC5zdHVkeU1ldGFJbmZvTWFwPXsuLi50LnN0dWR5TWV0YUluZm9NYXAsLi4ubWUuc3R1ZHlfbWV0YV9pbmZvX21hcH0pfWZ1bmN0aW9uIGdlKCl7cmV0dXJuIG1lfXZhciBmZT1uKDgxMDQxKTtjb25zdCBoZT0oMCxjZS5nZXRMb2dnZXIpKCJMb2dvVXJsUmVzb2x2ZXIiKTtjbGFzcyBwZXtjb25zdHJ1Y3RvcihlKXsoMCxvLmFzc2VydCkoIiIhPT1lLCJTMyBiYXNlIHVybCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpLHRoaXMuX2Jhc2VVcmw9ZX1nZXRTeW1ib2xMb2dvVXJsKGUsdCl7aWYoIiI9PT1lKXJldHVybiBoZS5sb2dXYXJuKCJsb2dvIGlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nIiksIiI7c3dpdGNoKHQpe2Nhc2UgcmUuTWVkaXVtOnJldHVybiB0aGlzLl9iYXNlVXJsK2Ake2V9LnN2Z2A7Y2FzZSByZS5MYXJnZTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS0tYmlnLnN2Z2B9fWdldENvdW50cnlGbGFnVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiY291bnRyeS8iK2UsdCl9Z2V0UHJvdmlkZXJMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgicHJvdmlkZXIvIitlLHQpfWdldFNvdXJjZUxvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJzb3VyY2UvIitlLHQpfWdldEJsb2NrY2hhaW5Db250cmFjdExvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJibG9ja2NoYWluLyIrZSx0KX1nZXRDYW5kbGVzdGlja1BhdHRlcm5Mb2dvVXJsKGUsdD1mZS5TdGRUaGVtZS5MaWdodCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybChgY2FuZGxlcGF0dGVybi8ke2V9LSR7dH1gLHJlLk1lZGl1bSl9fWxldCB5ZTtmdW5jdGlvbiBfZSgpe3JldHVybiBmdW5jdGlvbigpe2lmKCF5ZSl7Y29uc3QgZT1nZSgpLHQ9ZS5zZXR0aW5ncz9lLnNldHRpbmdzLlMzX0xPR09fU0VSVklDRV9CQVNFX1VSTDoiIjt5ZT1uZXcgcGUodCl9cmV0dXJuIHllfSgpfWNvbnN0IGJlPV9lKCk7ZnVuY3Rpb24gdmUoZSx0PXJlLk1lZGl1bSl7Y29uc3Qgbj1lLmxvZ29pZCxyPWVbImJhc2UtY3VycmVuY3ktbG9nb2lkIl0sbz1lWyJjdXJyZW5jeS1sb2dvaWQiXSxhPW4mJmJlLmdldFN5bWJvbExvZ29Vcmwobix0KTtpZihhKXJldHVyblthXTtjb25zdCBpPXImJmJlLmdldFN5bWJvbExvZ29Vcmwocix0KSxzPW8mJmJlLmdldFN5bWJvbExvZ29Vcmwobyx0KTtyZXR1cm4gaSYmcz9baSxzXTppP1tpXTpzP1tzXTpbXX1mdW5jdGlvbiB3ZShlKXtyZXR1cm4gMiE9PWUubGVuZ3RoP2U6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuc29tZSgoZT0+RWUoZSkpKX0oZSkmJiFmdW5jdGlvbihlKXtyZXR1cm4gZS5zb21lKChlPT5lLmluY2x1ZGVzKCJjb3VudHJ5IikmJiFFZShlKSkpfShlKT9lLmZpbHRlcigoZT0+IUVlKGUpKSk6ZX1mdW5jdGlvbiBFZShlKXtyZXR1cm4gZS5pbmNsdWRlcygiY291bnRyeS9VUyIpfWNsYXNzIHhle2NvbnN0cnVjdG9yKGUpeygwLG8uYXNzZXJ0KSgiIiE9PWUsIlMzIGJhc2UgdXJsIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nIiksdGhpcy5fYmFzZVVybD1lfWdldE5ld3NMb2dvVXJscyhlKXtyZXR1cm4oMCxvLmFzc2VydCkoIiIhPT1lLCJsb2dvIGlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nIiksW3RoaXMuX2Jhc2VVcmwrYGxvZ28vJHtlfS0tdGhlbWUtbGlnaHQuc3ZnYCx0aGlzLl9iYXNlVXJsK2Bsb2dvLyR7ZX0tLXRoZW1lLWRhcmsuc3ZnYF19Z2V0TmV3c1Jlc2l6ZWRJbWFnZVVybChlLHQ9ImpwZWciKXtyZXR1cm4gdGhpcy5nZXROZXdzSW1hZ2VVcmwoZSx0LCEwKX1nZXROZXdzT3JpZ2luYWxJbWFnZVVybChlLHQ9ImpwZWciKXtyZXR1cm4gdGhpcy5nZXROZXdzSW1hZ2VVcmwoZSx0LCExKX1nZXROZXdzSW1hZ2VVcmwoZSx0PSJqcGVnIixuPSExKXsoMCxvLmFzc2VydCkoIiIhPT1lLCJpbWFnZSBpZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpO2NvbnN0IHI9bj8iLXJlc2l6ZWQiOiIiO3JldHVybmAke3RoaXMuX2Jhc2VVcmx9aW1hZ2UvJHtlfSR7cn0uJHt0fWB9fWxldCBDZTt2YXIgU2U9bigyODkzMCk7Y29uc3Qga2U9ZnVuY3Rpb24oKXtpZighQ2Upe2NvbnN0IGU9Z2UoKSx0PWUuc2V0dGluZ3M/ZS5zZXR0aW5ncy5TM19ORVdTX0lNQUdFX1NFUlZJQ0VfQkFTRV9VUkw6IiI7Q2U9bmV3IHhlKHQpfXJldHVybiBDZX0oKTtmdW5jdGlvbiBMZShlKXtjb25zdHtwcmV2aWV3SW1hZ2U6dCxyZXNpemVNb2RlOm49bmUuUmF0aW8xNmJ5OSxjbGFzc05hbWU6b309ZSxhPVt7c3JjU2V0OmtlLmdldE5ld3NSZXNpemVkSW1hZ2VVcmwodC5pZCwid2VicCIpLHR5cGU6ImltYWdlcy93ZWJwIn1dCjtyZXR1cm4gci5jcmVhdGVFbGVtZW50KHNlLHtyZXNpemVNb2RlOm4sY2xhc3NOYW1lOnMoKShTZS5wcmV2aWV3V3JhcHBlcixvKSwiZGF0YS1xYS1pZCI6ImhlYWRsaW5lLXByZXZpZXctaW1hZ2UifSxyLmNyZWF0ZUVsZW1lbnQobGUse2ZhbGxiYWNrU3JjOmtlLmdldE5ld3NSZXNpemVkSW1hZ2VVcmwodC5pZCwianBlZyIpLHNvdXJjZXM6YSxhbHQ6dC5hbHR8fCIifSkpfXZhciBNZT1uKDE5MjU3KTtmdW5jdGlvbiBUZShlKXtyZXR1cm57bG9nb1VybDplfX1mdW5jdGlvbiBOZShlKXtjb25zdHtuZXdzSXRlbTp0LHNzclRpbWU6bix1dG1JbmZvOm99PWUsYT10LnByZXZpZXdJbWFnZSxbaSxsXT1yLnVzZVN0YXRlKHQubGluayt0LnN0b3J5UGF0aCksYz10LnJlbGF0ZWRTeW1ib2xzP2Z1bmN0aW9uKGUpe2NvbnN0IHQ9W107Zm9yKGNvbnN0IG4gb2YgZSl7Y29uc3QgZT13ZSh2ZShuKSk7ZS5sZW5ndGg/dC5wdXNoKC4uLmUubWFwKFRlKSk6dC5wdXNoKHtzeW1ib2w6bi5zeW1ib2x9KX1yZXR1cm4gdH0odC5yZWxhdGVkU3ltYm9scy5zbGljZSgwLDQpKTpbXTtyLnVzZUVmZmVjdCgoKCk9Pnt0LmxpbmsmJnQuc3RvcnlQYXRoJiZsKHQubGluayt0LnN0b3J5UGF0aCsoMCxvZS5idWlsZFV0bVF1ZXJ5U3RyaW5nKShvfHx7fSwhdC5saW5rLmluY2x1ZGVzKCI/IikpKX0pLFtvLHQubGluayx0LnN0b3J5UGF0aF0pO2NvbnN0IG09KCk9PnIuY3JlYXRlRWxlbWVudCh1LHtjbGFzc05hbWU6TWUuYXJ0aWNsZX0sci5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6TWUuY29udGFpbmVyfSxyLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpNZS5oZWFkZXJ9LDAhPT1jLmxlbmd0aCYmci5jcmVhdGVFbGVtZW50KHIuRnJhZ21lbnQsbnVsbCxyLmNyZWF0ZUVsZW1lbnQoYix7Y2xhc3NOYW1lOk1lLmxvZ28sbG9nb1VybHNPclN5bWJvbHM6Y30pKSxyLmNyZWF0ZUVsZW1lbnQoZWUse2V2ZW50VGltZToxZTMqdC5wdWJsaXNoZWQsc3NyVGltZTpuJiYxZTMqbixpc1NTUjohMX0pKSx0LnByZXZpZXdJbWFnZSYmci5jcmVhdGVFbGVtZW50KExlLHtwcmV2aWV3SW1hZ2U6dC5wcmV2aWV3SW1hZ2UscmVzaXplTW9kZTpuZS5SYXRpbzJieTEsY2xhc3NOYW1lOk1lLnByZXZpZXd9KSxyLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpzKCkoImFwcGx5LW92ZXJmbG93LXRvb2x0aXAiLCJhcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCIsTWUudGl0bGUpLCJkYXRhLW92ZXJmbG93LXRvb2x0aXAtdGV4dCI6dC50aXRsZX0sdC50aXRsZSkpKTtyZXR1cm4gaT9yLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOmksdGFyZ2V0OiJfYmxhbmsiLGNsYXNzTmFtZTpzKCkoTWUuY2FyZCxhJiZNZS5jYXJkV2l0aEltYWdlKX0sbSgpKTpyLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpzKCkoTWUuY2FyZCxhJiZNZS5jYXJkV2l0aEltYWdlKX0sbSgpKX1Qcm9taXNlLmFsbChbbi5lKDM5MDUpLG4uZSgxMjk2NSksbi5lKDIwNjkxKV0pLnRoZW4obi5iaW5kKG4sMjI2MzMxKSk7dmFyIEllPW4oNzY4OTI5KTtjb25zdCBVZT1yLmZvcndhcmRSZWYoKChlLHQpPT57Y29uc3R7aWNvbjpuPSIiLHRpdGxlOm8sYXJpYUxhYmVsOmEsYXJpYUxhYmVsbGVkYnk6aSxhcmlhSGlkZGVuOnMsLi4ubH09ZSxjPSEhKG98fGF8fGkpO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyb2xlOiJpbWciLC4uLmwscmVmOnQsImFyaWEtbGFiZWwiOmEsImFyaWEtbGFiZWxsZWRieSI6aSwiYXJpYS1oaWRkZW4iOnN8fCFjLHRpdGxlOm8sZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6e19faHRtbDpufX0pfSkpO2Z1bmN0aW9uIEFlKGUpe2NvbnN0e3JlZmVyZW5jZTp0LC4uLm59PWU7cmV0dXJuey4uLm4scmVmOnR9fWZ1bmN0aW9uIFJlKGUpe2NvbnN0e2RhdGFRYUlkOnQsLi4ubn09ZTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJhIix7ImRhdGEtcWEtaWQiOnQsLi4uQWUobil9KX1yLlB1cmVDb21wb25lbnQ7Y29uc3QgJGU9KDAsci5jcmVhdGVDb250ZXh0KSh7ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9KTskZS5kaXNwbGF5TmFtZT0iQ3VzdG9tQmVoYXZpb3VyQ29udGV4dCI7dmFyIE9lPW4oOTM1MSksVmU9bi5uKE9lKSx6ZT1uKDMxMzgzOSksRGU9bi5uKHplKTtjb25zdCBGZT1lPT57Y29uc3QgdD0oMCxyLnVzZUNvbnRleHQpKCRlKSx7Y2xhc3NOYW1lOm4saXNTZWxlY3RlZDpvLGlzRGltbWVkOmEsaXNIb3ZlcmVkOmksc2l6ZTpsPSJtZWRpdW0iLGNvbG9yOmMsc3RhcnRJY29uOnUsZW5kSWNvbjptLHNob3dDYXJldDpkLGVuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOmc9dC5lbmFibGVBY3RpdmVTdGF0ZVN0eWxlcyx0eXBvZ3JhcGh5OmYsaWNvbk9ubHk6aCxpc0xpbms6cD0hMSxpc0FjdGl2YXRlZDp5fT1lO3JldHVybiBzKCkobixEZSgpLnRleHRCdXR0b24scCYmRGUoKS5saW5rLG8mJkRlKCkuc2VsZWN0ZWQsYSYmRGUoKS5kaW1tZWQsaSYmRGUoKS5ob3ZlcmVkLERlKClbY10sRGUoKVtsXSx1JiZEZSgpLndpdGhTdGFydEljb24saCYmRGUoKS5pY29uT25seSwoZHx8bSkmJkRlKCkud2l0aEVuZEljb24sIWcmJkRlKCkuZGlzYWJsZUFjdGl2ZVN0YXRlU3R5bGVzLGYmJkRlKClbZl0seSYmRGUoKS5hY3RpdmF0ZWQpfTtmdW5jdGlvbiBIZShlKXtyZXR1cm4gci5jcmVhdGVFbGVtZW50KHIuRnJhZ21lbnQsbnVsbCxyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKERlKCkuYmFja2dyb3VuZCxlLnN0YXRlc1dpdGhvdXRCZyYmRGUoKVsic3RhdGVzLXdpdGhvdXQtYmciXSl9KSxlLnN0YXJ0SWNvbiYmci5jcmVhdGVFbGVtZW50KFVlLHsuLi5lLnN0YXJ0SWNvbkFyaWFBdHRycyxjbGFzc05hbWU6RGUoKVsic3RhcnQtaWNvbiJdLGljb246ZS5zdGFydEljb259KSxyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6RGUoKS5jb250ZW50fSxlLmNoaWxkcmVuKSwoZS5lbmRJY29ufHxlLnNob3dDYXJldCkmJihlPT5yLmNyZWF0ZUVsZW1lbnQoVWUsey4uLmUuc2hvd0NhcmV0P3ZvaWQgMDplLmVuZEljb25BcmlhQXR0cnMsCmNsYXNzTmFtZTpzKCkoRGUoKVsiZW5kLWljb24iXSxlLnNob3dDYXJldCYmRGUoKS5jYXJldCksaWNvbjplLnNob3dDYXJldD9WZSgpOmUuZW5kSWNvbn0pKShlKSl9ZnVuY3Rpb24gV2UoZSl7Y29uc3R7cmVmZXJlbmNlOnQsY2xhc3NOYW1lOm4saXNTZWxlY3RlZDpvLGlzRGltbWVkOmEsY2hpbGRyZW46aSxzdGFydEljb246cyxzdGFydEljb25BcmlhQXR0cnM6bCxzaG93Q2FyZXQ6Yyxjb2xvcjp1LGVuZEljb246bSxlbmRJY29uQXJpYUF0dHJzOmQsc2l6ZTpnLHR5cG9ncmFwaHk6ZixpY29uT25seTpoLHN0YXRlc1dpdGhvdXRCZzpwLGlzQWN0aXZhdGVkOnkscmVuZGVyQ29tcG9uZW50Ol89UmUsZGF0YVFhSWQ6YixhcmlhTGFiZWw6diwuLi53fT1lO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoXyx7ImFyaWEtbGFiZWwiOnYsLi4udyxjbGFzc05hbWU6RmUoe2NsYXNzTmFtZTpuLGlzU2VsZWN0ZWQ6byxpc0RpbW1lZDphLHN0YXJ0SWNvbjpzLHNob3dDYXJldDpjLGVuZEljb246bSxjb2xvcjp1LHNpemU6Zyx0eXBvZ3JhcGh5OmYsaWNvbk9ubHk6aCxpc0xpbms6ITAsaXNBY3RpdmF0ZWQ6eX0pLHJlZmVyZW5jZTooRT10LHg9W0VdLGU9Pnt4LmZvckVhY2goKHQ9PnsiZnVuY3Rpb24iPT10eXBlb2YgdD90KGUpOm51bGwhPXQmJih0LmN1cnJlbnQ9ZSl9KSl9KSxkYXRhUWFJZDpifSxyLmNyZWF0ZUVsZW1lbnQoSGUse3Nob3dDYXJldDpjLHN0YXJ0SWNvbjpzLHN0YXJ0SWNvbkFyaWFBdHRyczp7Li4ubH0sZW5kSWNvbjptLGVuZEljb25BcmlhQXR0cnM6ey4uLmR9LHN0YXRlc1dpdGhvdXRCZzpwfSxpKSk7dmFyIEUseH12YXIgUGU9big1NjI2OTkpO2Z1bmN0aW9uIGplKGUpe2lmKHZvaWQgMD09PWUuY2hpbGRyZW4pcmV0dXJuIHIuY3JlYXRlRWxlbWVudChyLkZyYWdtZW50LG51bGwsZS50ZXh0KTtjb25zdFt0LG5dPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5zcGxpdCgiICIpLG49dC5wb3AoKTtyZXR1cm5bdC5sZW5ndGg/dC5qb2luKCIgIikrIiAiOiIiLG5dfShlLnRleHQpO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoci5GcmFnbWVudCxudWxsLHQsci5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOlBlLm5vQnJlYWt9LG4sZS5jaGlsZHJlbikpfXZhciBHZT1uKDM1Mjk1MSksQmU9big1MTY3ODEpO2Z1bmN0aW9uIFllKGUpe3JldHVybiByLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpCZS5mb290ZXIsImRhdGEtaWQiOiJtb3JlLWJ1dHRvbiJ9LHIuY3JlYXRlRWxlbWVudChXZSx7aHJlZjplLnVybD9lLnVybDp2b2lkIDAsY29sb3I6ImJyYW5kIixzaXplOiJtZWRpdW0iLGNsYXNzTmFtZTpCZS5idXR0b24sdGFyZ2V0OiJfYmxhbmsifSxyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6QmUudGl0bGV9LHIuY3JlYXRlRWxlbWVudChqZSx7dGV4dDplLnRleHR9LHIuY3JlYXRlRWxlbWVudChVZSx7Y2xhc3NOYW1lOkJlLmFycm93SWNvbixpY29uOkdlfSkpKSkpfWZ1bmN0aW9uIHFlKGUpe2NvbnN0e25ld3M6dCxzaG93U3ltYm9sOm4sdXRtSW5mbzpvfT1lLFthLGldPXIudXNlU3RhdGUodFswXT8ubGluaysiL25ld3MvIisoMCxvZS5idWlsZFV0bVF1ZXJ5U3RyaW5nKShvfHx7fSwhMCkpO3JldHVybiByLnVzZUVmZmVjdCgoKCk9PntpKHRbMF0/LmxpbmsrIi9uZXdzLyIrKDAsb2UuYnVpbGRVdG1RdWVyeVN0cmluZykob3x8e30sITApKX0pLFtvXSksci5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6SWUuZ3JpZH0sdC5tYXAoKHQ9PnIuY3JlYXRlRWxlbWVudChOZSx7a2V5OnQuaWQsbmV3c0l0ZW06dCxzaG93U3ltYm9sOm4sc3NyVGltZTplLnNzclRpbWUsdXRtSW5mbzplLnV0bUluZm99KSkpLHIuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOkllLmZvb3Rlcn0sci5jcmVhdGVFbGVtZW50KFllLHt1cmw6YSx0ZXh0OiJLZWVwIHJlYWRpbmcifSkpKX1jb25zdCBLZT1yLmNyZWF0ZUNvbnRleHQoe2lzR3JvdXBlZDohMSxjZWxsU3RhdGU6e2lzVG9wOiEwLGlzUmlnaHQ6ITAsaXNCb3R0b206ITAsaXNMZWZ0OiEwfX0pO2Z1bmN0aW9uIFplKGUpe3JldHVybiBKZShlLFhlKX1mdW5jdGlvbiBRZShlKXtyZXR1cm4gSmUoZSxldCl9ZnVuY3Rpb24gSmUoZSx0KXtjb25zdCBuPU9iamVjdC5lbnRyaWVzKGUpLmZpbHRlcih0KSxyPXt9O2Zvcihjb25zdFtlLHRdb2YgbilyW2VdPXQ7cmV0dXJuIHJ9ZnVuY3Rpb24gWGUoZSl7Y29uc3RbdCxuXT1lO3JldHVybiAwPT09dC5pbmRleE9mKCJkYXRhLSIpJiYic3RyaW5nIj09dHlwZW9mIG59ZnVuY3Rpb24gZXQoZSl7cmV0dXJuIDA9PT1lWzBdLmluZGV4T2YoImFyaWEtIil9dmFyIHR0PW4oNDczMTU5KSxudD1uLm4odHQpO2NvbnN0IHJ0PSJhcHBseS1vdmVyZmxvdy10b29sdGlwIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWNoZWNrLWNoaWxkcmVuLXJlY3Vyc2l2ZWx5IGFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWFsbG93LXRleHQgYXBwbHktY29tbW9uLXRvb2x0aXAiO2Z1bmN0aW9uIG90KGUpe2NvbnN0e3NpemU6dD0ibWVkaXVtIix2YXJpYW50Om49InByaW1hcnkiLGNvbG9yOnI9ImJyYW5kIixzdHJldGNoOm89ITEsc3RhcnRTbG90OmEsZW5kU2xvdDppLGljb25Pbmx5Omw9ITEsY2xhc3NOYW1lOmMsaXNHcm91cGVkOnUsY2VsbFN0YXRlOm0sZGlzYWJsZVBvc2l0aW9uQWRqdXN0bWVudDpkPSExLHByaW1hcnlUZXh0Omcsc2Vjb25kYXJ5VGV4dDpmLGlzQW5jaG9yOmg9ITF9PWUscD0iYnJhbmQiPT09cj8iYmxhY2siOnIseT1mdW5jdGlvbihlKXtsZXQgdD0wO3JldHVybiBlLmlzVG9wJiZlLmlzTGVmdHx8KHQrPTEpLGUuaXNUb3AmJmUuaXNSaWdodHx8KHQrPTIpLGUuaXNCb3R0b20mJmUuaXNMZWZ0fHwodCs9OCksZS5pc0JvdHRvbSYmZS5pc1JpZ2h0fHwodCs9NCksdH0obSksXz1mdW5jdGlvbihlKXtsZXQgdD0iIjtyZXR1cm4gMCE9PWUmJigxJmUmJih0PXMoKSh0LG50KClbIm5vLWNvcm5lci10b3AtbGVmdCJdKSksMiZlJiYodD1zKCkodCxudCgpWyJuby1jb3JuZXItdG9wLXJpZ2h0Il0pKSw0JmUmJih0PXMoKSh0LG50KClbIm5vLWNvcm5lci1ib3R0b20tcmlnaHQiXSkpLAo4JmUmJih0PXMoKSh0LG50KClbIm5vLWNvcm5lci1ib3R0b20tbGVmdCJdKSkpLHR9KHkpLGI9bCYmKGF8fGkpO3JldHVybiBzKCkoYyxudCgpLmJ1dHRvbixudCgpW3RdLG50KClbcF0sbnQoKVtuXSxvJiZudCgpLnN0cmV0Y2gsYSYmbnQoKS53aXRoU3RhcnRJY29uLGkmJm50KCkud2l0aEVuZEljb24sYiYmbnQoKS5pY29uT25seSxfLHUmJm50KCkuZ3JvdXBlZCx1JiYhZCYmbnQoKS5hZGp1c3RQb3NpdGlvbix1JiZtLmlzVG9wJiZudCgpLmZpcnN0Um93LHUmJm0uaXNMZWZ0JiZudCgpLmZpcnN0Q29sLGcmJmYmJm50KCkubXVsdGlsaW5lQ29udGVudCxoJiZudCgpLmxpbmsscnQpfWZ1bmN0aW9uIGF0KGUpe2NvbnN0e3N0YXJ0U2xvdDp0LGljb25Pbmx5Om4sY2hpbGRyZW46byxlbmRTbG90OmEscHJpbWFyeVRleHQ6aSxzZWNvbmRhcnlUZXh0Omx9PWU7aWYodCYmYSYmbilyZXR1cm4gci5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShudCgpLnNsb3QsbnQoKS5zdGFydFNsb3RXcmFwKX0sdCk7Y29uc3QgYz1uJiYodD8/YSksdT0hdCYmIWEmJiFuJiYhbyYmaSYmbDtyZXR1cm4gci5jcmVhdGVFbGVtZW50KHIuRnJhZ21lbnQsbnVsbCx0JiZyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKG50KCkuc2xvdCxudCgpLnN0YXJ0U2xvdFdyYXApfSx0KSxvJiYhYyYmci5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOm50KCkuY29udGVudH0sbyksYSYmci5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShudCgpLnNsb3QsbnQoKS5lbmRTbG90V3JhcCl9LGEpLHUmJiFjJiZmdW5jdGlvbihlKXtyZXR1cm4gZS5wcmltYXJ5VGV4dCYmZS5zZWNvbmRhcnlUZXh0JiZyLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpzKCkobnQoKS50ZXh0V3JhcCxydCl9LHIuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpudCgpLnByaW1hcnlUZXh0fSwiICIsZS5wcmltYXJ5VGV4dCwiICIpLCJzdHJpbmciPT10eXBlb2YgZS5zZWNvbmRhcnlUZXh0P3IuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpudCgpLnNlY29uZGFyeVRleHR9LCIgIixlLnNlY29uZGFyeVRleHQsIiAiKTpyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6bnQoKS5zZWNvbmRhcnlUZXh0fSxyLmNyZWF0ZUVsZW1lbnQoInNwYW4iLG51bGwsZS5zZWNvbmRhcnlUZXh0LmZpcnN0TGluZSksci5jcmVhdGVFbGVtZW50KCJzcGFuIixudWxsLGUuc2Vjb25kYXJ5VGV4dC5zZWNvbmRMaW5lKSkpfShlKSl9ZnVuY3Rpb24gaXQoZSl7Y29uc3R7Y2xhc3NOYW1lOnQsY29sb3I6bix2YXJpYW50OnIsc2l6ZTpvLHN0cmV0Y2g6YSxpY29uT25seTppLHN0YXJ0U2xvdDpzLGVuZFNsb3Q6bCwuLi5jfT1lO3JldHVybnsuLi5jLC4uLlplKGUpLC4uLlFlKGUpfX1mdW5jdGlvbiBzdChlKXtjb25zdHtyZWZlcmVuY2U6dH09ZSx7aXNHcm91cGVkOm4sY2VsbFN0YXRlOm8sZGlzYWJsZVBvc2l0aW9uQWRqdXN0bWVudDphfT0oMCxyLnVzZUNvbnRleHQpKEtlKSxpPW90KHsuLi5lLGlzR3JvdXBlZDpuLGNlbGxTdGF0ZTpvLGRpc2FibGVQb3NpdGlvbkFkanVzdG1lbnQ6YSxpc0FuY2hvcjohMH0pO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoImEiLHsuLi5pdChlKSxjbGFzc05hbWU6aSxyZWY6dH0sci5jcmVhdGVFbGVtZW50KGF0LHsuLi5lfSkpfXZhciBsdD1uKDU2NzUxMCksY3Q9bigzMjMyNTEpO2Z1bmN0aW9uIHV0KGUpe3JldHVybiByLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpjdC5jb250YWluZXIsImRhdGEtbmFtZSI6ZS5kYXRhTmFtZX0sci5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6Y3QuY29udGVudH0sci5jcmVhdGVFbGVtZW50KFVlLHtjbGFzc05hbWU6Y3QuaWNvbixpY29uOmx0fSksci5jcmVhdGVFbGVtZW50KCJwIix7Y2xhc3NOYW1lOmN0LnRpdGxlfSxlLnRpdGxlKSxyLmNyZWF0ZUVsZW1lbnQoInAiLHtjbGFzc05hbWU6Y3Quc3VidGl0bGV9LGUuc3VidGl0bGUpLGUuY2hpbGRyZW4mJnIuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOmN0LmNoaWxkcmVuQ29udGFpbmVyfSxlLmNoaWxkcmVuKSkpfWZ1bmN0aW9uIG10KGUpe2NvbnN0e3N5bWJvbE5hbWU6dH09ZTtyZXR1cm4gdD9yLmNyZWF0ZUVsZW1lbnQodXQse2RhdGFOYW1lOiJuby1uZXdzLXN0YXRlLWNhcmRzIixzdWJ0aXRsZTphLnQobnVsbCx2b2lkIDAsbig0MjA4ODgpKS5mb3JtYXQoe3N5bWJvbE5hbWU6dH0pLHRpdGxlOmEudChudWxsLHZvaWQgMCxuKDE0NjgwNykpfSk6ci5jcmVhdGVFbGVtZW50KHV0LHtkYXRhTmFtZToiZW1wdHktc3RhdGUtY2FyZHMiLHRpdGxlOmEudChudWxsLHZvaWQgMCxuKDQ5MzkpKSxzdWJ0aXRsZTphLnQobnVsbCx2b2lkIDAsbig1NDE3NDIpKX0sci5jcmVhdGVFbGVtZW50KHN0LHt2YXJpYW50OiJzZWNvbmRhcnkiLHNpemU6ImxhcmdlIixocmVmOiIuIixjb2xvcjoiYmxhY2siLCJkYXRhLW5hbWUiOiJyZWxvYWQtbmV3cy1jYXJkcy1idXR0b24ifSxhLnQobnVsbCx2b2lkIDAsbig4MjU4MDcpKSkpfWZ1bmN0aW9uIGR0KCl7Y29uc3QgZT13aW5kb3c7cmV0dXJuey4uLmUuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMsLi4uZS5pbml0RGF0YS5oYXNoU2V0dGluZ3MsLi4uZS5pbml0RGF0YS5xdWVyeVNldHRpbmdzfX12YXIgZ3Q9big2ODk0NDQpO1Byb21pc2UuYWxsKFtuLmUoMzkwNSksbi5lKDEyOTY1KSxuLmUoMzU2NTcpXSkudGhlbihuLmJpbmQobiwzNDQ3ODUpKTtjb25zdCBmdD1fZSgpO3ZhciBodD1uKDc1MTU1NykscHQ9big2NTM4MTcpLHl0PW4oNDAwMTgxKTtjb25zdCBfdD17aG9zdDoiX3Vua25vd24iLHBhdGg6IiJ9O2Z1bmN0aW9uIGJ0KGUpe2lmKGUpdHJ5e2NvbnN0IHQ9bmV3IFVSTChlKTtyZXR1cm57aG9zdDp0Lmhvc3RuYW1lfHx0Lmhvc3R8fCJfdW5rbm93biIscGF0aDp0LnBhdGhuYW1lfX1jYXRjaHtyZXR1cm59fWZ1bmN0aW9uIHZ0KCl7cmV0dXJuIGJ0KGZ1bmN0aW9uKCl7Y29uc3QgZT13aW5kb3cuaW5pdERhdGE/Lmhhc2hTZXR0aW5ncz8uWyJwYWdlLXVyaSJdCjtpZihlKXJldHVybiJodHRwczovLyIrZX0oKSl8fGJ0KGRvY3VtZW50LnJlZmVycmVyKXx8YnQobG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zPy5bMF0pfHxfdH12YXIgd3Q9bigxMjkzNjUpLEV0PW4oMzM2MzM0KSx4dD1uKDExNTI5Myk7Y29uc3QgQ3Q9KDAsci5jcmVhdGVDb250ZXh0KSh7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9PiExLGlzUnRsOiExLGxvY2FsZToiZW4iLHJlbmRlck1vZGU6ImxlZ2FjeSJ9KTt2YXIgU3Q9bigxMTczMTMpO2NvbnN0IGt0PXtpT3M6Im9sZCIsYW5kcm9pZDoibmV3IixvbGQ6Im9sZCIsbmV3OiJuZXciLGFueToiYW55In07ZnVuY3Rpb24gTHQoZSl7Y29uc3RbdF09KDAsci51c2VTdGF0ZSkoe2lzT25Nb2JpbGVBcHBQYWdlOmU9PigwLFN0LmlzT25Nb2JpbGVBcHBQYWdlKShrdFtlXSksaXNSdGw6KDAseHQuaXNSdGwpKCksbG9jYWxlOndpbmRvdy5sb2NhbGUscmVuZGVyTW9kZTplLnJlbmRlck1vZGU/PyJsZWdhY3kifSk7cmV0dXJuIHIuY3JlYXRlRWxlbWVudChDdC5Qcm92aWRlcix7dmFsdWU6dH0sZS5jaGlsZHJlbil9big3OTUzODMpLG4oODI5MTgwKTshYXN5bmMgZnVuY3Rpb24oZSl7YXdhaXQgbmV3IFByb21pc2UoKGU9PnNldFRpbWVvdXQoZSwwKSkpLChhd2FpdCgwLHl0LmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRzX3dpdGhvdXRfd2Vic29ja2V0L2pzb25zY2hlbWEvMS0wLTAiLHsuLi52dCgpLHdpZGdldF9pZDplLGV2ZW50X25hbWU6InBhZ2VfdmlldyJ9KX0oInRpbWVsaW5lIik7Y29uc3QgTXQ9KDAsby5lbnN1cmVOb3ROdWxsKShkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtdGltZWxpbmUtd2lkZ2V0LXNzci1yb290IikpLFR0PShkZSgpLG1lKVsoMCxvLmVuc3VyZURlZmluZWQpKE10LmRhdGFzZXQucHJvcHNJZCldLE50PWR0KCksSXQ9KDAsb2UuZmlsdGVyVXRtSW5mbykoTnQpLHt3aGl0ZWxhYmVsOlV0fT1OdDsoMCxodC5jcmVhdGVFbWJlZFdpZGdldFdyYXBwZXIpKE10LCJ0aW1lbGluZSIsSXQse2lzV2hpdGVMYWJlbDpVdCxjb3B5cmlnaHRPcHRpb25zOnt2ZXJ0aWNhbFBvc2l0aW9uOnB0LkNvcHlyaWdodFBvc2l0aW9uLlZlcnRpY2FsLlRvcCxtb2RlOiJzbWFsbF9vbGQifX0pLGZ1bmN0aW9uKGUsdCxuPSJsZWdhY3kiKXtjb25zdCBvPXIuY3JlYXRlRWxlbWVudChMdCx7cmVuZGVyTW9kZTpufSxlKTtpZigibW9kZXJuIj09PW4pe2NvbnN0IGU9KDAsRXQuaHlkcmF0ZVJvb3QpKHQsbyk7cmV0dXJue3JlbmRlcih0KXtlLnJlbmRlcihyLmNyZWF0ZUVsZW1lbnQoTHQse3JlbmRlck1vZGU6bn0sdCkpfSx1bm1vdW50KCl7ZS51bm1vdW50KCl9fX13dC5oeWRyYXRlKG8sdCl9KHIuY3JlYXRlRWxlbWVudCgoZnVuY3Rpb24oZSl7Y29uc3R7bmV3czp0LHN5bWJvbE5hbWU6byxzeW1ib2xMb2dvSWQ6aSxzeW1ib2xQYWdlVXJsOnN9PWUsW2wsY109ci51c2VTdGF0ZShzKSxbdSxtXT1yLnVzZVN0YXRlKHt1dG1fbWVkaXVtOiJ3aWRnZXRfbmV3Iix1dG1fY2FtcGFpZ246InRpbWVsaW5lIn0pLGQ9YS50KG51bGwsdm9pZCAwLG4oMjg1MjcpKSxnPXIudXNlUmVmKG51bGwpO3JldHVybiByLnVzZUVmZmVjdCgoKCk9Pntjb25zdCBlPWR0KCksdD0oMCxvZS5maWx0ZXJVdG1JbmZvKShlKTttKHQpLGUubGFyZ2VDaGFydFVybD9jKGUubGFyZ2VDaGFydFVybCsoMCxvZS5idWlsZFV0bVF1ZXJ5U3RyaW5nKSh0fHx7fSwhZS5sYXJnZUNoYXJ0VXJsLmluY2x1ZGVzKCI/IikpKTpzJiZjKHMrKDAsb2UuYnVpbGRVdG1RdWVyeVN0cmluZykodHx8e30sIXMuaW5jbHVkZXMoIj8iKSkpfSksW10pLHIuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOmd0LmNvbnRhaW5lcixyZWY6Z30sci5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6Z3QuaGVhZGVyfSxvP3IuY3JlYXRlRWxlbWVudChyLkZyYWdtZW50LG51bGwsci5jcmVhdGVFbGVtZW50KHkse2xvZ29Vcmw6aT9mdC5nZXRTeW1ib2xMb2dvVXJsKGkscmUuTWVkaXVtKTp2b2lkIDAsc2l6ZToibWVkaXVtIixjbGFzc05hbWU6Z3QuaWNvbn0pLHIuY3JlYXRlRWxlbWVudCgiaDEiLHtjbGFzc05hbWU6Z3QudGl0bGV9LHIuY3JlYXRlRWxlbWVudCgiYSIse2NsYXNzTmFtZTpndC5saW5rLHRhcmdldDoiX2JsYW5rIixocmVmOmx9LG8pLGQpKTpyLmNyZWF0ZUVsZW1lbnQoImgxIix7Y2xhc3NOYW1lOmd0LnRpdGxlfSxkKSksci5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6Z3QuaW5uZXJDb250YWluZXJ9LDA9PT10Lmxlbmd0aD9yLmNyZWF0ZUVsZW1lbnQobXQse3N5bWJvbE5hbWU6b30pOnIuY3JlYXRlRWxlbWVudCgiZGl2IixudWxsLHIuY3JlYXRlRWxlbWVudChxZSx7c2hvd1N5bWJvbDohbyxuZXdzOnQsdXRtSW5mbzp1fSkpKSl9KSx7Li4uVHQsZGlzcGxheU1vZGU6TnQuZGlzcGxheU1vZGV9KSxNdCl9LDczMDY0NShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ludGVybmFsSG9zdDooKT0+cn0pO2Z1bmN0aW9uIHIoZSx0PXdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSl7Y29uc3Qgbj0iLiI9PT10LnNsaWNlKC0xKT8zOjIscj10LnRvTG93ZXJDYXNlKCkuc3BsaXQoIi4iKS5zbGljZSgtbiksbz1lLnRvTG93ZXJDYXNlKCkuc3BsaXQoIi4iKS5zbGljZSgtci5sZW5ndGgpO3JldHVybiByLmpvaW4oIi4iKT09PW8uam9pbigiLiIpfX0sNzQ5NjQ4KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlLHQ9ITEpeyJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGU/dD9zZXRUaW1lb3V0KCgoKT0+ZSgpKSwxKTplKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCgpPT5lKCkpKX1uLmQodCx7d2hlbkRvY3VtZW50UmVhZHk6KCk9PnJ9KTtuZXcgUHJvbWlzZSgoZT0+e3IoZSl9KSl9LDkzMTE5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtoYW5kbGVUVkxpbmtzQ2xpY2s6KCk9PnN9KTt2YXIgcj1uKDQwMDE4MSksbz1uKDYwMTU4NyksYT1uKDczMDY0NSkKO2NvbnN0IGk9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIHMoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKGU9Pntjb25zdCB0PWUudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7dD8uaG9zdG5hbWUmJigwLGEuaXNJbnRlcm5hbEhvc3QpKHQuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbihlLHQpe2NvbnN0IG49ZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXMoZSkubGVuZ3RoPjApcmV0dXJuKDAsby5maWx0ZXJVdG1JbmZvKShlKTtjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjp0LmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOnQuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsci5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhpLHt3aWRnZXRfdHlwZTpjKG4pLGRvbWFpbjpsKG4pLGxpbms6ZSx0YXJnZXRfdHlwZTp0fSl9KHQuaHJlZix0LmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gbChlKXtjb25zdCB0PWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gZS51dG1fc291cmNlfHxmdW5jdGlvbihlKXt0cnl7cmV0dXJuIG5ldyBVUkwoZSkuaG9zdH1jYXRjaChlKXtyZXR1cm4iIn19KHQpfWZ1bmN0aW9uIGMoZSl7aWYoZS51dG1fY2FtcGFpZ24pcmV0dXJuIGUudXRtX2NhbXBhaWduO2NvbnN0IHQ9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIHQuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP3Quc3BsaXQoIi8iKVsyXTp0fX0sOTM1MShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMy45MiA3LjgzIDkgMTIuMjlsNS4wOC00LjQ2LTEtMS4xM0w5IDEwLjI5bC00LjA5LTMuNi0uOTkgMS4xNFoiLz48L3N2Zz4nfSwzNTI5NTEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTcuNTYgNC41YS43NS43NSAwIDEgMC0xLjEyIDFsMS4xMi0xek0xMC41IDlsLjU2LjVhLjc1Ljc1IDAgMCAwIDAtMWwtLjU2LjV6bS00LjA2IDMuNWEuNzUuNzUgMCAwIDAgMS4xMiAxbC0xLjEyLTF6bTAtN2wzLjUgNCAxLjEyLTEtMy41LTQtMS4xMiAxem0zLjUgM2wtMy41IDQgMS4xMiAxIDMuNS00LTEuMTItMXoiLz48L3N2Zz4nfSw1Njc1MTAoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEyMCAxMjAiIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTE0IDEyaDgwdjI5aDE1djYwLjVhOS41IDkuNSAwIDAgMS04LjE1IDkuNHYuMUgyNy43QTEzLjY5IDEzLjY5IDAgMCAxIDE0IDk3LjMxVjEyem03Ny43NSA5NUgyNy43QTkuNjkgOS42OSAwIDAgMSAxOCA5Ny4zMVYxNmg3MnY4NS41YzAgMi4wNS42NSAzLjk1IDEuNzUgNS41em03Ljc1IDBhNS41IDUuNSAwIDAgMCA1LjUtNS41VjQ1SDk0djU2LjVhNS41IDUuNSAwIDAgMCA1LjUgNS41ek04MSA2OUgyN3YtNGg1NHY0ek0yNyA4N2gzM3YtNEgyN3Y0em01NC01NEg2MXYtNGgyMHY0ek02MSA1MWgyMHYtNEg2MXY0ek0zNS4xNyA0MGwtOC41OC04LjU5IDIuODItMi44MkwzOCAzNy4xN2w4LjU5LTguNTggMi44MiAyLjgyTDQwLjgzIDQwbDguNTggOC41OS0yLjgyIDIuODJMMzggNDIuODNsLTguNTkgOC41OC0yLjgyLTIuODJMMzUuMTcgNDB6Ii8+PC9zdmc+J30sMjIxMDYxKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse2dldExvZ2dlcjooKT0+ZixnZXRSYXdMb2dIaXN0b3J5OigpPT5kfSksZnVuY3Rpb24oZSl7ZVtlLkVSUk9SPTFdPSJFUlJPUiIsZVtlLldBUk5JTkc9Ml09IldBUk5JTkciLGVbZS5JTkZPPTNdPSJJTkZPIixlW2UuTk9STUFMPTRdPSJOT1JNQUwiLGVbZS5ERUJVRz01XT0iREVCVUcifShyfHwocj17fSkpO2xldCBvPTA7Y29uc3QgYT1bXTtsZXQgaT1udWxsLHM9bnVsbCxsPW51bGwsYz1udWxsLHU9ci5XQVJOSU5HLG09ITE7ZnVuY3Rpb24gZChlLHQpe2xldCBuPWEucmVkdWNlKCgoZSx0KT0+ZS5jb25jYXQodCkpLFtdKTtyZXR1cm4gbi5zb3J0KCgoZSx0KT0+ZS5pZC10LmlkKSksdm9pZCAwIT09dCYmKG49bi5maWx0ZXIoKGU9PmUuc3ViU3lzdGVtSWQ9PT10KSkpLCJudW1iZXIiPT10eXBlb2YgZSYmKG49bi5zbGljZSgtZSkpLG59ZnVuY3Rpb24gZyhlLHQsbixhLGQpe2lmKHQ9PT1zJiZhLmlkPT09bClyZXR1cm47Y29uc3QgZz1uZXcgRGF0ZTtpZihlPD1yLk5PUk1BTCYmZnVuY3Rpb24oZSx0LG4scixhLGkpeyJmdW5jdGlvbiI9PXR5cGVvZiBzdHJ1Y3R1cmVkQ2xvbmUmJih0PXN0cnVjdHVyZWRDbG9uZSh0KSksdD10LnNsaWNlKDAsaT8/MWUzKTtjb25zdCBzPXtpZDpvLG1lc3NhZ2U6dCxzdWJTeXN0ZW1JZDpyLHRpbWVzdGFtcDpOdW1iZXIoZSl9O28rPTEsbi5wdXNoKHMpLHZvaWQgMCE9PWEmJm4ubGVuZ3RoPmEmJm4uc3BsaWNlKDAsMSl9KGcsdCxuLGEuaWQsYS5tYXhDb3VudCxkKSxlPD11JiYoIWEuaGlnaFJhdGV8fG0pJiYoIWl8fGEuaWQubWF0Y2goaSkpKXtjb25zdCBuPWcudG9JU09TdHJpbmcoKSsiOiIrYS5pZCsiOiIrdDtzd2l0Y2goZSl7Y2FzZSByLkRFQlVHOmNvbnNvbGUuZGVidWcobik7YnJlYWs7Y2FzZSByLklORk86Y2FzZSByLk5PUk1BTDphLmNvbG9yP2NvbnNvbGUubG9nKCIlYyIrbiwiY29sb3I6ICIrYS5jb2xvcik6Y29uc29sZS5sb2cobik7YnJlYWs7Y2FzZSByLldBUk5JTkc6Y29uc29sZS53YXJuKG4pO2JyZWFrCjtjYXNlIHIuRVJST1I6Y29uc29sZS5lcnJvcihuKX1zPXQsbD1hLmlkLG51bGwhPT1jJiZjbGVhclRpbWVvdXQoYyksYz1zZXRUaW1lb3V0KCgoKT0+e3M9bnVsbCxsPW51bGwsYz1udWxsfSksMWUzKX19ZnVuY3Rpb24gZihlLHQ9e30pe2NvbnN0IG49W107YS5wdXNoKG4pO2NvbnN0IG89T2JqZWN0LmFzc2lnbih0LHtpZDplfSk7ZnVuY3Rpb24gaShlKXtyZXR1cm4odCxyKT0+ZyhlLFN0cmluZyh0KSxuLG8scil9cmV0dXJue2xvZ0RlYnVnOmkoci5ERUJVRyksbG9nRXJyb3I6aShyLkVSUk9SKSxsb2dJbmZvOmkoci5JTkZPKSxsb2dOb3JtYWw6aShyLk5PUk1BTCksbG9nV2FybjppKHIuV0FSTklORyl9fX19LGU9PntlLk8oMCxbODMwMzEsNDY5MDcsMjAzNTQsMTEyMTgsNDMzMjUsMTU5MzIsNDM2NDQsNDUzNjgsMTg0NzIsMjU4MDksMjY1OTIsNzM3NDUsMzIzODcsMTEzMTJdLCgoKT0+e3JldHVybiB0PTcxMTY3OCxlKGUucz10KTt2YXIgdH0pKTtlLk8oKX1dKTs="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/52095.e6eb530a13b2febd2cd3.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.524Z","timestamp":1785154590524,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/52095.e6eb530a13b2febd2cd3.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1ff-18c2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:17:35 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f331cf7259c8989aa2c8265147a4162a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":6338,"size_decoded":2044,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (6338), with no line terminators","md5":"caf4bfb0a92f81c0fb9d32b268c23f3c","sha1":"9157a7392cd2a99623089b8a8b0c46066c18c88b","sha256":"3fac059dd2a8faed0d0e54c7f4f74b33d35ee9572c353c6fde78c6cd96f168a1","sha512":"d6b7104f441ac900f2633fda4217d59f42503ae78aed48880181f69174c8e2422ec2a64e191f78c7760476881aa76db8007e9f911ebe2ff98ccab39b640ff4ef","ssdeep":"192:lnsu2uCTwTyQnjnvOJOdr45YERrzxD0VOnPn3nTuouzTmTogen9gqpnq:BI","tlshash":"0fd1794cf146b43e265f353a4319d1eca218b4c2e9c21ff7b971d2244ae1bc2e5f991a","first_seen":"2026-07-23T14:00:31.721517Z","last_seen":"2026-07-27T14:22:59.722311Z","times_seen":366,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtemtrcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXpra3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9Lml0ZW0tdlRtOE8wTE17dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOm5vd3JhcH0uaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTXtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9Lml0ZW0tdlRtOE8wTE0uaW50ZXJhY3RpdmUtdlRtOE8wTE0uaG92ZXJlZC12VG04TzBMTSwuaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTphY3RpdmV7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3ZlcikpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTpob3Zlcntjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyKSl9fS5pdGVtLXZUbThPMExNLmludGVyYWN0aXZlLXZUbThPMExNLmhvdmVyZWQtdlRtOE8wTE17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmludGVyYWN0aXZlLXZUbThPMExNOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlcikpfX0uaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0KSl9Lml0ZW0tdlRtOE8wTE0uZGlzYWJsZWQtdlRtOE8wTE17Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNX0uaXRlbS12VG04TzBMTS5kaXNhYmxlZC12VG04TzBMTSwuaXRlbS12VG04TzBMTS5kaXNhYmxlZC12VG04TzBMTTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmRpc2FibGVkLXZUbThPMExNOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtYmFja2dyb3VuZCx2YXIoLS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kKSk7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfX0uaXRlbS12VG04TzBMTS5hY3RpdmUtdlRtOE8wTE0sLml0ZW0tdlRtOE8wTE0uYWN0aXZlLXZUbThPMExNOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlKSl9fS5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTSAuc2hvcnRjdXQtdlRtOE8wTE0sLml0ZW0tdlRtOE8wTE0uYWN0aXZlLXZUbThPMExNOmFjdGl2ZSAuc2hvcnRjdXQtdlRtOE8wTE17Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTTpob3ZlciAuc2hvcnRjdXQtdlRtOE8wTE17Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9fS5pdGVtLXZUbThPMExNLm5vcm1hbC12VG04TzBMTXtoZWlnaHQ6MzJweH0uaXRlbS12VG04TzBMTS5iaWctdlRtOE8wTE17aGVpZ2h0OjY4cHh9Lmljb25DZWxsLXZUbThPMExNe21pbi13aWR0aDo2cHh9Lmljb24tdlRtOE8wTE17YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweDt3aWR0aDoyOHB4fS5pY29uLXZUbThPMExNIHN2Z3toZWlnaHQ6MjhweDt3aWR0aDoyOHB4fS5jb250ZW50LXZUbThPMExNe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWF4LXdpZHRoOjM2NXB4O3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjRweH0ubGFiZWwtdlRtOE8wTE17ZmxleDoxIDEgYXV0bztmb250LXNpemU6MTRweDtvdmVyZmxvdy14OmhpZGRlbjtwYWRkaW5nLWlubGluZS1zdGFydDoycHg7dGV4dC1hbGlnbjpzdGFydH0udG9vbGJveC12VG04TzBMTXtmbGV4OjAgMSBhdXRvO2xpbmUtaGVpZ2h0OjE0cHg7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS5mZWF0dXJlLW5vLW1vYmlsZXRvdWNoIC50b29sYm94LXZUbThPMExNLnNob3dUb29sYm94T25Ib3Zlci12VG04TzBMTXtvcGFjaXR5OjB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5mZWF0dXJlLW5vLW1vYmlsZXRvdWNoIC5pdGVtLXZUbThPMExNOmhvdmVyIC50b29sYm94LXZUbThPMExNLnNob3dUb29sYm94T25Ib3Zlci12VG04TzBMTXtvcGFjaXR5OjF9fS5hcnJvd0ljb24tdlRtOE8wTE17ZmxleDowIDEgYXV0bzttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHh9LmFycm93SWNvbi12VG04TzBMTSBzdmd7aGVpZ2h0OjEwcHg7ZmlsbDpjdXJyZW50Q29sb3J9LmFycm93SWNvbi12VG04TzBMTSBzdmc6ZGlyKHJ0bCl7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNob3J0Y3V0LXZUbThPMExNe2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0KSk7ZmxleDowIDEgYXV0bztmb250LXNpemU6MTJweDttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHg7cGFkZGluZy10b3A6MnB4fS5zdWJNZW51LXZUbThPMExNe2hlaWdodDowfS5pbnZpc2libGVIb3RrZXktdlRtOE8wTE17dmlzaWJpbGl0eTpoaWRkZW59Lml0ZW0tZDlqTE9MclJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3BhZGRpbmctYmxvY2s6OHB4IDhweDtwYWRkaW5nLWlubGluZTo0MnB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXRlbS1kOWpMT0xyUi5lbXB0eUljb25zLWQ5akxPTHJSe3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9Lml0ZW0tZDlqTE9MclIubG9hZGluZy1kOWpMT0xyUntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5pdGVtLWQ5akxPTHJSLmRpc2FibGVkLWQ5akxPTHJSe2N1cnNvcjpkZWZhdWx0O29wYWNpdHk6LjV9Lml0ZW0tZDlqTE9MclIuZGlzYWJsZWQtZDlqTE9MclIsLml0ZW0tZDlqTE9MclIuZGlzYWJsZWQtZDlqTE9MclI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtYmFja2dyb3VuZCx2YXIoLS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kKSk7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1kOWpMT0xyUi5kaXNhYmxlZC1kOWpMT0xyUjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCx2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQpKX19Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclJ7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfS5pdGVtLWQ5akxPTHJSLmludGVyYWN0aXZlLWQ5akxPTHJSLmhvdmVyZWQtZDlqTE9MclIsLml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6YWN0aXZle2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcix2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXIpKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6aG92ZXJ7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3ZlcikpfX0uaXRlbS1kOWpMT0xyUi5pbnRlcmFjdGl2ZS1kOWpMT0xyUi5ob3ZlcmVkLWQ5akxPTHJSe2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlcikpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1kOWpMT0xyUi5pbnRlcmFjdGl2ZS1kOWpMT0xyUjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcix2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIpKX19Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodCkpfS5pdGVtLWQ5akxPTHJSLm5vcm1hbC1kOWpMT0xyUnttaW4taGVpZ2h0OjQwcHh9Lml0ZW0tZDlqTE9MclIuYmlnLWQ5akxPTHJSe21pbi1oZWlnaHQ6NjhweH0uaWNvbi1kOWpMT0xyUnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2hlaWdodDoyOHB4O2luc2V0LWlubGluZS1zdGFydDo4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3dpZHRoOjI4cHh9Lmljb24tZDlqTE9MclIsLmxhYmVsLWQ5akxPTHJSe2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCx2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQpKX0ubGFiZWwtZDlqTE9MclJ7ZmxleC1ncm93OjE7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4taW5saW5lLWVuZDo4cHg7bWF4LXdpZHRoOjEwMCU7d29yZC1icmVhazpicmVhay13b3JkfS50aXRsZS1kOWpMT0xyUntmb250LXdlaWdodDo3MDB9LnRpdGxlLWQ5akxPTHJSIC5pY29uLWQ5akxPTHJSOmRpcihydGwpe3RyYW5zZm9ybTpzY2FsZVgoLTEpfS5uZXN0ZWQtZDlqTE9MclJ7YWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MThweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1pbmxpbmUtc3RhcnQ6YXV0bzt3aWR0aDoxOHB4fS5uZXN0ZWQtZDlqTE9MclI6ZGlyKHJ0bCl7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNob3J0Y3V0LWQ5akxPTHJSe2xpbmUtaGVpZ2h0OjI0cHg7cGFkZGluZzowfS5yZW1vdmUtZDlqTE9MclIsLnNob3J0Y3V0LWQ5akxPTHJSe21hcmdpbi1pbmxpbmUtZW5kOjhweDttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99LnJlbW92ZS1kOWpMT0xyUnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweH0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCETH.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.842Z","timestamp":1785154591842,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /crypto/XTVCETH.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/62681.6883c4b17e6a89e4b87f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.250Z","timestamp":1785154590250,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/62681.6883c4b17e6a89e4b87f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b74-26d5\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:24 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2882eeca35cbbbb6c62abb2d6b2fe5dd\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9941,"size_decoded":2933,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9941), with no line terminators","md5":"96701d95e8d00efdc09eb9279b871453","sha1":"f12c6f203f7a76e20a0c25bccfbc5f43206b0eda","sha256":"88302743f0b5328d7e90f7e88b47561bc485ab5932193d4dc7755f1bf64cce3d","sha512":"046a3817646c8aca396aad13fdab96075c8699a9d511bc761475ed9e6337ee12877ed966bdd5a60f6361578d948dec9b2e08e3aed8fd78bda1cf8782568c89fa","ssdeep":"192:wCNtGzkUD/UlZ9wmjuMhT27zNJbg9spNHXRWgCWCoTwtsyYIOi7wYdg6YN:Ep89spNHXRWVWnTwtsyYVkwYdg6YN","tlshash":"5b22fab2d16265a76213f62de3e1fe09e337e3939a131fdee223845dc4c6ad94138049","first_seen":"2026-03-24T19:47:05.242316Z","last_seen":"2026-07-27T14:22:59.623491Z","times_seen":1725,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojZmZmZmZmZDk7LS1fMTIteVR5eTojZmZmMDstLV8xMy15VHl5OiNmZmYwOy0tXzE0LXlUeXk6I2YwZjNmYTAwfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojMDAwMDAwZDk7LS1fMTIteVR5eTojMDAwMDstLV8xMy15VHl5OiMwMDAwOy0tXzE0LXlUeXk6IzEzMTcyMjAwfS50di10YWJze2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NTNweDtsaW5lLWhlaWdodDo1M3B4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50di10YWJzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcHg7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlfS50di10YWJzOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9LnR2LXRhYnMuaS1sb2FkZWR7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1jb250ZW50e3BhZGRpbmc6MCA2cHh9LnR2LXRhYnNfX3Njcm9sbC13cmFwe2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7b3ZlcmZsb3cteDpzY3JvbGw7b3ZlcmZsb3cteTpoaWRkZW47cGFkZGluZy1ib3R0b206MTAwcHg7cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCU7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LnR2LXRhYnNfX3Njcm9sbC1ib3h7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di10YWJzLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MCAxNnB4fS50di10YWJzX19hZGRpdGlvbmFsLWluZm97Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7dHJhbnNpdGlvbjppbmhlcml0fS50di10YWJzX190YWJ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDo1M3B4O2xpbmUtaGVpZ2h0OjUzcHg7bWFyZ2luOjA7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaXppbmc6Ym9yZGVyLWJveDt0cmFuc2l0aW9uOmNvbG9yIC4zNXMgZWFzZX0udHYtdGFic19fdGFiOmFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX190YWI6aG92ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fdGFiLmktYWN0aXZlLC50di10YWJzX190YWI6YWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnNfX3RhYjpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9fS50di10YWJzX190YWIuaS1kaXNhYmxlZCwudHYtdGFic19fdGFiOmRpc2FibGVkLC50di10YWJzX190YWJbZGlzYWJsZWRde2NvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Y3Vyc29yOmRlZmF1bHR9LnR2LXRhYnNfX3RhYi0tbm8tcGFkZGluZ3twYWRkaW5nOjB9LnR2LXRhYnNfX3RhYi0tcmlnaHQtc2hpZnRlcnttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99LnR2LXRhYnNfX3RhYi0taWNvbi10YWJ7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXJ7aGVpZ2h0OjQ2cHh9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie2ZvbnQtc2l6ZToxNnB4O2hlaWdodDo0NnB4O2xpbmUtaGVpZ2h0OjQ2cHg7cGFkZGluZy1pbmxpbmUtZW5kOjE2cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTZweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiOmhvdmVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpob3ZlciAudHYtdGFic19fYWRkaXRpb25hbC1pbmZve2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsKX19LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiLmktYWN0aXZle2N1cnNvcjpkZWZhdWx0fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZSwudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWIuaS1hY3RpdmUgLnR2LXRhYnNfX2FkZGl0aW9uYWwtaW5mb3tjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKX0udHYtdGFic19fc2xpZGVyLC50di10YWJzX190YWIuaS1hY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKTtib3R0b206MDtkaXNwbGF5OmJsb2NrO2hlaWdodDozcHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZX0udHYtdGFicy0tY29tcGFjdCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fc2Nyb2xsLWJveCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFie2hlaWdodDoyM3B4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWJ7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLmktbG9hZGVkLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNvbXBhY3QsLnR2LXRhYnMtLWNvbXBhY3QuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3h7cGFkZGluZy1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlci5pLWxvYWRlZCAudHYtdGFic19fc2Nyb2xsLWJveHtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwYWRkaW5nLWlubGluZS1zdGFydDoyMHB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXI6YmVmb3JlLC50di10YWJzLS1jb21wYWN0OmJlZm9yZXtib3R0b206MH0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFiOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE2cHh9LnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS5wYWdlLXdpZGUgLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie3BhZGRpbmctaW5saW5lLWVuZDoxNnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjE2cHh9LnBhZ2Utd2lkZSAudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDotMTZweH0ucGFnZS13aWRlIC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWIuaS1oaWRkZW46Zmlyc3QtY2hpbGQrLnR2LXRhYnNfX3RhYnttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX19zbGlkZXIsLnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntib3R0b206MDtoZWlnaHQ6MXB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtdGFicy0td2l0aC13cmFwLXBhZGRpbmctbW9iaWxlIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDowO3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLXdpdGgtd3JhcC1wYWRkaW5nLW1vYmlsZSAudHYtdGFic19fdGFiOm50aC1sYXN0LWNoaWxkKDIpe21hcmdpbi1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtZW5kOjB9fS50di10YWJzLS1uby1tYXJnaW4gLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLW5vLW1hcmdpbiAudHYtdGFic19fdGFiOmxhc3QtY2hpbGR7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcHthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC15VHl5KTtib3JkZXItcmFkaXVzOjI1cHg7ZGlzcGxheTpmbGV4O2hlaWdodDoyM3B4O3BhZGRpbmc6MCAxNHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLXlUeXkpfX0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFie2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEzcHg7cGFkZGluZzowIDZweH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFiLmktYWN0aXZlIC50di10YWJzX193cmFwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzIteVR5eSk7Y29sb3I6dmFyKC0tXzQteVR5eSl9LnR2LXRhYnMtLW5vLWJvcmRlcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1uby1wYWRkaW5nLC50di10YWJzLS1uby1wYWRkaW5nLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MH0udHYtdGFicy0tbm8tcGFkZGluZyAudHYtdGFic19fdGFie3BhZGRpbmc6MCAxNnB4fS50di10YWJzLS1uby1wYWRkaW5nIC50di10YWJzX190YWIudHYtdGFic19fdGFiLS1uby1wYWRkaW5ne3BhZGRpbmc6MH0udHYtdGFicy5pLWxvYWRlZCAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2NvbnRlbnQ6bm9uZTtkaXNwbGF5Om5vbmV9LnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnNfX3JpZ2h0LWFycm93e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym90dG9tOjA7Ym94LXNpemluZzppbml0aWFsO2N1cnNvcjpwb2ludGVyO2RpcmVjdGlvbjpsdHI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCA1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7d2lkdGg6MzZweH0udHYtdGFic19fbGVmdC1hcnJvdzphZnRlciwudHYtdGFic19fcmlnaHQtYXJyb3c6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXRhYnNfX2xlZnQtYXJyb3cgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEycHg7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb246ZmlsbCAuMzVzIGVhc2U7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjEycHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX19sZWZ0LWFycm93OmhvdmVyIHN2ZywudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tXzUteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fbGVmdC1hcnJvdzphY3RpdmUgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tXzYteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvd3tqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvd3tib3R0b206M3B4O21hcmdpbi10b3A6LTFweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93IHN2ZywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7dmVydGljYWwtYWxpZ246dG9wfS50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktYmcpLHZhcigtLV8xMS15VHl5KSx2YXIoLS1fMTIteVR5eSkpO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19sZWZ0LWFycm93Lmktc2xpZGVke3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0udHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gbGVmdCx2YXIoLS1jb2xvci1ib2R5LWJnKSx2YXIoLS1fMTEteVR5eSksdmFyKC0tXzEyLXlUeXkpKTtyaWdodDowO3RleHQtYWxpZ246cmlnaHQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvdy5pLXNsaWRlZHt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fcmlnaHQtYXJyb3d7d2lkdGg6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93LC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e3dpZHRoOjQ1cHh9LnR2LXRhYnMtLXNlYXJjaGJhcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6ODBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6NTRweH19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV83LXlUeXkpO2JvdHRvbTowfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZCk7Ym90dG9tOjB9LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdyBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3cgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6LjY1fS50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX2xlZnQtYXJyb3c6YWN0aXZlIHN2ZywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdzpob3ZlciBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fOC15VHl5KSx2YXIoLS1fOS15VHl5KSx2YXIoLS1fMTAteVR5eSkpfS50di10YWJzLS1zZWFyY2hiYXJfc3ViLC50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19zY3JvbGwtYm94e2hlaWdodDo0MHB4O2xpbmUtaGVpZ2h0OjQwcHh9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX2xlZnQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzI2NWFlYiAwLCMyNjVhZWIgMTUlLCMyNjVhZWIwMCl9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMyNjVhZWIwMCAwLCMyNjVhZWIgODUlLCMyNjVhZWIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fbGVmdC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1jb2xvci1oZWFkZXItYmcpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA0NSUsdmFyKC0tXzEzLXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdmFyKC0tXzEzLXlUeXkpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA1NSUsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSAxMDAlKX0udHYtdGFicy0tc2VhcmNoYmFyLXByb2ZpbGUgLnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnMtLXNlYXJjaGJhci1wcm9maWxlIC50di10YWJzX19yaWdodC1hcnJvd3tjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAwLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSA0NSUsdmFyKC0tXzE0LXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fMTQteVR5eSkgMCx2YXIoLS1jb2xvci1ib2R5LXNlY29uZGFyeS1iZykgNTUlLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAxMDAlKX0="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/11218.11fe7e8fda3019aac1af.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.478Z","timestamp":1785154590478,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/11218.11fe7e8fda3019aac1af.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-2f4b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:05:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 03faa4828f9b523a7c92c3cab9ac8341\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":12107,"size_decoded":2660,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (12107), with no line terminators","md5":"e0f7661ead7f1ab23e5fdcbc585d9361","sha1":"97111a62b029d9f1e132015dca8555521ff1c10c","sha256":"9c1e854963db207efe402f49eab4095fddb31360630ad065a3443433a842dd8b","sha512":"9e0a03c1d20dd369db0f7d2c163db267a4ca6e141371068f5e82b77f2991e1583aee74f3c54dc736d89c57b28431a576ecfc135e3202a43e2e7e9a26848234b7","ssdeep":"192:YM+fLMLjOLwVVrLoLHdGAFBO1zToFOg6f/JgX2v:2OgCi2v","tlshash":"6842895ab3c0b938bd6364999398a19cae44fc73dc1309e6a132ac3d6cc17b6115df74","first_seen":"2026-07-17T06:02:50.830774Z","last_seen":"2026-07-27T14:14:25.408309Z","times_seen":148,"resource_available":false,"data":"LmJyYW5kLV9DM0ZNR1V4e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50KX0uYnJhbmQtX0MzRk1HVXguaG92ZXJlZC1fQzNGTUdVeDpub3QoOmRpc2FibGVkKXtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5icmFuZC1fQzNGTUdVeDpob3Zlcjpub3QoOmRpc2FibGVkKXtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZCl9fS5icmFuZC1fQzNGTUdVeC5ob3ZlcmVkLV9DM0ZNR1V4Om5vdCg6ZGlzYWJsZWQpIC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LWFjY2VudC1leHRyYS1saWdodCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5icmFuZC1fQzNGTUdVeDpob3Zlcjpub3QoOmRpc2FibGVkKSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQpfX0uYnJhbmQtX0MzRk1HVXg6bm90KC5kaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtX0MzRk1HVXgpOmFjdGl2ZTpub3QoOmRpc2FibGVkKTpub3QoLmRpbW1lZC1fQzNGTUdVeCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1hY2NlbnQpfS5icmFuZC1fQzNGTUdVeDpub3QoLmRpc2FibGVBY3RpdmVTdGF0ZVN0eWxlcy1fQzNGTUdVeCk6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGltbWVkLV9DM0ZNR1V4KSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQpfS5icmFuZC1fQzNGTUdVeC5zZWxlY3RlZC1fQzNGTUdVeHtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZCl9LmJyYW5kLV9DM0ZNR1V4LmFjdGl2YXRlZC1fQzNGTUdVeCwuYnJhbmQtX0MzRk1HVXguYWN0aXZhdGVkLV9DM0ZNR1V4IC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpLC5icmFuZC1fQzNGTUdVeC5zZWxlY3RlZC1fQzNGTUdVeCAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQpfS5icmFuZC1fQzNGTUdVeC5hY3RpdmF0ZWQtX0MzRk1HVXg6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfS5icmFuZC1fQzNGTUdVeC5kaW1tZWQtX0MzRk1HVXgsLmJyYW5kLV9DM0ZNR1V4OmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1saWdodCl9LmdyYXktX0MzRk1HVXh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpO2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQpfS5ncmF5LV9DM0ZNR1V4LmhvdmVyZWQtX0MzRk1HVXg6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmdyYXktX0MzRk1HVXg6aG92ZXI6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX19LmdyYXktX0MzRk1HVXguaG92ZXJlZC1fQzNGTUdVeDpub3QoOmRpc2FibGVkKSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ncmF5LV9DM0ZNR1V4OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0KX19LmdyYXktX0MzRk1HVXg6bm90KC5kaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtX0MzRk1HVXgpOmFjdGl2ZTpub3QoOmRpc2FibGVkKTpub3QoLmRpbW1lZC1fQzNGTUdVeCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX0uZ3JheS1fQzNGTUdVeDpub3QoLmRpc2FibGVBY3RpdmVTdGF0ZVN0eWxlcy1fQzNGTUdVeCk6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGltbWVkLV9DM0ZNR1V4KSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodCl9LmdyYXktX0MzRk1HVXguc2VsZWN0ZWQtX0MzRk1HVXh7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX0uZ3JheS1fQzNGTUdVeC5zZWxlY3RlZC1fQzNGTUdVeCAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCl9LmdyYXktX0MzRk1HVXguYWN0aXZhdGVkLV9DM0ZNR1V4LC5ncmF5LV9DM0ZNR1V4LmFjdGl2YXRlZC1fQzNGTUdVeCAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodCl9LmdyYXktX0MzRk1HVXguYWN0aXZhdGVkLV9DM0ZNR1V4OmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX0uZ3JheS1fQzNGTUdVeC5kaW1tZWQtX0MzRk1HVXgsLmdyYXktX0MzRk1HVXg6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpO2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0KX0ubGlnaHQtZ3JheS1fQzNGTUdVeHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwpfS5saWdodC1ncmF5LV9DM0ZNR1V4LmhvdmVyZWQtX0MzRk1HVXg6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxpZ2h0LWdyYXktX0MzRk1HVXg6aG92ZXI6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX19LmxpZ2h0LWdyYXktX0MzRk1HVXguaG92ZXJlZC1fQzNGTUdVeDpub3QoOmRpc2FibGVkKSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saWdodC1ncmF5LV9DM0ZNR1V4OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0KX19LmxpZ2h0LWdyYXktX0MzRk1HVXg6bm90KC5kaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtX0MzRk1HVXgpOmFjdGl2ZTpub3QoOmRpc2FibGVkKTpub3QoLmRpbW1lZC1fQzNGTUdVeCl7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX0ubGlnaHQtZ3JheS1fQzNGTUdVeDpub3QoLmRpc2FibGVBY3RpdmVTdGF0ZVN0eWxlcy1fQzNGTUdVeCk6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGltbWVkLV9DM0ZNR1V4KSAuYmFja2dyb3VuZC1fQzNGTUdVeDpub3QoLnN0YXRlcy13aXRob3V0LWJnLV9DM0ZNR1V4KXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCl9LmxpZ2h0LWdyYXktX0MzRk1HVXguc2VsZWN0ZWQtX0MzRk1HVXh7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX0ubGlnaHQtZ3JheS1fQzNGTUdVeC5hY3RpdmF0ZWQtX0MzRk1HVXgsLmxpZ2h0LWdyYXktX0MzRk1HVXguYWN0aXZhdGVkLV9DM0ZNR1V4IC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpLC5saWdodC1ncmF5LV9DM0ZNR1V4LnNlbGVjdGVkLV9DM0ZNR1V4IC5iYWNrZ3JvdW5kLV9DM0ZNR1V4Om5vdCguc3RhdGVzLXdpdGhvdXQtYmctX0MzRk1HVXgpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0KX0ubGlnaHQtZ3JheS1fQzNGTUdVeC5hY3RpdmF0ZWQtX0MzRk1HVXg6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfS5saWdodC1ncmF5LV9DM0ZNR1V4LmRpbW1lZC1fQzNGTUdVeCwubGlnaHQtZ3JheS1fQzNGTUdVeDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpfS54c21hbGwtX0MzRk1HVXh7LS11aS1saWItcHJpdmF0ZS10ZXh0QnV0dG9uLXNpemU6Mn0uc21hbGwtX0MzRk1HVXh7LS11aS1saWItcHJpdmF0ZS10ZXh0QnV0dG9uLXNpemU6M30ubWVkaXVtLV9DM0ZNR1V4ey0tdWktbGliLXByaXZhdGUtdGV4dEJ1dHRvbi1zaXplOjR9LmxhcmdlLV9DM0ZNR1V4ey0tdWktbGliLXByaXZhdGUtdGV4dEJ1dHRvbi1zaXplOjV9LnRleHRCdXR0b24tX0MzRk1HVXh7LS11aS1saWItc2l6ZS1kZWY6dmFyKC0tdWktbGliLWluLXRleHRCdXR0b24tc2l6ZSx2YXIoLS11aS1saWItcHJpdmF0ZS10ZXh0QnV0dG9uLXNpemUsNCkpOy0tdWktbGliLXNpemUtZGVmLXhzbWFsbDpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAyKSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gMikpKTstLXVpLWxpYi1zaXplLWRlZi1zbWFsbDpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAzKSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gMykpKTstLXVpLWxpYi1zaXplLWRlZi1tZWRpdW06Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNCkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDQpKSk7LS11aS1saWItc2l6ZS1kZWYtbGFyZ2U6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNSkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDUpKSk7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTppbmxpbmUtZmxleDtoZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMjRweCk7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7LS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWhvcml6b250YWwtdmFsdWU6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSozcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjhweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjEwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjEycHgpOy0tdWktbGliLXByaXZhdGUtcGFkZGluZy1pY29uLXZhbHVlOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjhweCk7LS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWljb24tb25seS12YWx1ZTpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo2cHgpOy0tdWktbGliLXByaXZhdGUtb2Zmc2V0LXZhbHVlOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjhweCk7Zm9udC1zaXplOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMTJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjE2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjE4cHgpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqNDAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo0MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo2MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjYwMCk7bGluZS1oZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMjRweCk7b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmV9LnRleHRCdXR0b24tX0MzRk1HVXg6Zm9jdXN7b3V0bGluZTpub25lfS50ZXh0QnV0dG9uLV9DM0ZNR1V4OmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS50ZXh0QnV0dG9uLV9DM0ZNR1V4OmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6bm9uZTtoZWlnaHQ6Y2FsYygxMDAlICsgNHB4KTtpbnNldC1pbmxpbmUtc3RhcnQ6LTJweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O3dpZHRoOmNhbGMoMTAwJSArIDRweCk7ei1pbmRleDoxfS50ZXh0QnV0dG9uLV9DM0ZNR1V4OmZvY3VzOmFmdGVye2Rpc3BsYXk6YmxvY2t9LnRleHRCdXR0b24tX0MzRk1HVXg6Zm9jdXMtdmlzaWJsZTphZnRlcntkaXNwbGF5OmJsb2NrfS50ZXh0QnV0dG9uLV9DM0ZNR1V4OmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSk6YWZ0ZXJ7ZGlzcGxheTpub25lfS50ZXh0QnV0dG9uLV9DM0ZNR1V4OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7Ym9yZGVyLXJhZGl1czo4cHg7aGVpZ2h0OmNhbGMoMTAwJSArIHZhcigtLXVpLWxpYi1wcml2YXRlLW9mZnNldC12YWx1ZSkqMik7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoKHZhcigtLXVpLWxpYi1wcml2YXRlLXBhZGRpbmctbGVmdC12YWx1ZSwgdmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1ob3Jpem9udGFsLXZhbHVlKSkgKyB2YXIoLS11aS1saWItcHJpdmF0ZS1vZmZzZXQtdmFsdWUpLzIpKi0xKTt0b3A6Y2FsYyh2YXIoLS11aS1saWItcHJpdmF0ZS1vZmZzZXQtdmFsdWUpKi0xKTt3aWR0aDpjYWxjKDEwMCUgKyB2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLXJpZ2h0LXZhbHVlLCB2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWhvcml6b250YWwtdmFsdWUpKSArIHZhcigtLXVpLWxpYi1wcml2YXRlLXBhZGRpbmctbGVmdC12YWx1ZSwgdmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1ob3Jpem9udGFsLXZhbHVlKSkgKyB2YXIoLS11aS1saWItcHJpdmF0ZS1vZmZzZXQtdmFsdWUpKX0udGV4dEJ1dHRvbi1fQzNGTUdVeCAuYmFja2dyb3VuZC1fQzNGTUdVeHtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OmNhbGMoMTAwJSArIHZhcigtLXVpLWxpYi1wcml2YXRlLW9mZnNldC12YWx1ZSkpO2luc2V0LWlubGluZS1lbmQ6Y2FsYyh2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLXJpZ2h0LXZhbHVlLCB2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWhvcml6b250YWwtdmFsdWUpKSotMSk7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGModmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1sZWZ0LXZhbHVlLCB2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWhvcml6b250YWwtdmFsdWUpKSotMSk7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6Y2FsYygxMDAlICsgdmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1yaWdodC12YWx1ZSwgdmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1ob3Jpem9udGFsLXZhbHVlKSkgKyB2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWxlZnQtdmFsdWUsIHZhcigtLXVpLWxpYi1wcml2YXRlLXBhZGRpbmctaG9yaXpvbnRhbC12YWx1ZSkpKX0ubGluay1fQzNGTUdVeHtjdXJzb3I6cG9pbnRlcn0uY29udGVudC1fQzNGTUdVeHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7ei1pbmRleDowfS53aXRoU3RhcnRJY29uLV9DM0ZNR1V4ey0tdWktbGliLXByaXZhdGUtcGFkZGluZy1sZWZ0LXZhbHVlOnZhcigtLXVpLWxpYi1wcml2YXRlLXBhZGRpbmctaWNvbi12YWx1ZSl9LndpdGhTdGFydEljb24tX0MzRk1HVXggLnN0YXJ0LWljb24tX0MzRk1HVXh7Ym9yZGVyLXJhZGl1czp2YXIoLS11aS1saWItdGV4dC1idXR0b24tc3RhcnQtaWNvbi1ib3JkZXItcmFkaXVzLDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luLWlubGluZS1lbmQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSo0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqOHB4KTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDowfS53aXRoRW5kSWNvbi1fQzNGTUdVeHstLXVpLWxpYi1wcml2YXRlLXBhZGRpbmctcmlnaHQtdmFsdWU6dmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1pY29uLXZhbHVlKX0ud2l0aEVuZEljb24tX0MzRk1HVXggLmVuZC1pY29uLV9DM0ZNR1V4e2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luLWlubGluZS1zdGFydDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo2cHgpO3otaW5kZXg6MH0uaWNvbk9ubHktX0MzRk1HVXh7LS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWxlZnQtdmFsdWU6dmFyKC0tdWktbGliLXByaXZhdGUtcGFkZGluZy1pY29uLW9ubHktdmFsdWUpOy0tdWktbGliLXByaXZhdGUtcGFkZGluZy1yaWdodC12YWx1ZTp2YXIoLS11aS1saWItcHJpdmF0ZS1wYWRkaW5nLWljb24tb25seS12YWx1ZSl9Lmljb25Pbmx5LV9DM0ZNR1V4IC5lbmQtaWNvbi1fQzNGTUdVeCwuaWNvbk9ubHktX0MzRk1HVXggLnN0YXJ0LWljb24tX0MzRk1HVXh7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW46MDt6LWluZGV4OjB9LnNlbGVjdGVkLV9DM0ZNR1V4IC5jYXJldC1fQzNGTUdVeHt0cmFuc2Zvcm06cm90YXRlWCgxODBkZWcpfS5zZW1pYm9sZDE4cHgtX0MzRk1HVXh7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MThweDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjI0cHh9LnNlbWlib2xkMTZweC1fQzNGTUdVeCwuc2VtaWJvbGQxOHB4LV9DM0ZNR1V4e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0uc2VtaWJvbGQxNnB4LV9DM0ZNR1V4ey0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE2cHg7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4fS5zZW1pYm9sZDE0cHgtX0MzRk1HVXh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxNHB4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjYwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpfS5yZWd1bGFyMTJweC1fQzNGTUdVeHstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxMnB4Oy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MTZweH0ucmVndWxhcjEycHgtX0MzRk1HVXgsLnJlZ3VsYXIxNHB4LV9DM0ZNR1V4e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0ucmVndWxhcjE0cHgtX0MzRk1HVXh7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTRweDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHh9LnJlZ3VsYXIxNnB4LV9DM0ZNR1V4e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zdHlsZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTZweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo0MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/9504.90377f7d5946cf3254f0.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.729Z","timestamp":1785154590729,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/9504.90377f7d5946cf3254f0.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-1365\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6f647ea050b3eaffc2b16f8be157d51b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4965,"size_decoded":1585,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4965), with no line terminators","md5":"a7c93739d7d8d58ba0894f0a27b2c682","sha1":"b48b0a418f53c6dbb761db96de6488ae85eb133e","sha256":"a965093d2af77ac0200f0ea479b8a52ee4ea68bca04e3e665e8de17120e5a57e","sha512":"14f6b7249ddd5e1f7132a9c9935bf3e702cc8735c81cfd3e2574cb38224ea2d416a7a876fc0472376db26d154f4909a69d75432d4073ad220212a6186da08d13","ssdeep":"48:wfElnMoEhjO3VOgXmhFhR60XBWjzfDnCzhHkvhtflWkvhtcnSnisnSnigtSnSnij:hi776O9lr8D8/t88YY8/K5ncbs6v2U","tlshash":"eca15b43b5c4ac747e42a6dc73fc62dcb2d1ac71ed0205d2d631ad628ccabf72091aa5","first_seen":"2026-07-16T13:40:49.666975Z","last_seen":"2026-07-27T14:23:37.854734Z","times_seen":293,"resource_available":false,"data":"Lnh4eHNtYWxsLUFmZDZ0NFpqey0tdWktbGliLXByaXZhdGUtY291bnRlci1zaXplOjB9Lnh4c21hbGwtQWZkNnQ0Wmp7LS11aS1saWItcHJpdmF0ZS1jb3VudGVyLXNpemU6MX0ueHNtYWxsLUFmZDZ0NFpqey0tdWktbGliLXByaXZhdGUtY291bnRlci1zaXplOjJ9LnNtYWxsLUFmZDZ0NFpqey0tdWktbGliLXByaXZhdGUtY291bnRlci1zaXplOjN9Lm1lZGl1bS1BZmQ2dDRaanstLXVpLWxpYi1wcml2YXRlLWNvdW50ZXItc2l6ZTo0fS5sYXJnZS1BZmQ2dDRaanstLXVpLWxpYi1wcml2YXRlLWNvdW50ZXItc2l6ZTo1fS54bGFyZ2UtQWZkNnQ0Wmp7LS11aS1saWItcHJpdmF0ZS1jb3VudGVyLXNpemU6Nn0uY291bnRlci1BZmQ2dDRaanthbGlnbi1pdGVtczpjZW50ZXI7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt2ZXJ0aWNhbC1hbGlnbjpib3R0b207LS11aS1saWItc2l6ZS1kZWY6dmFyKC0tdWktbGliLWluLWNvdW50ZXItc2l6ZSx2YXIoLS11aS1saWItcHJpdmF0ZS1jb3VudGVyLXNpemUsNCkpOy0tdWktbGliLXNpemUtZGVmLXh4eHNtYWxsOmNhbGMobWF4KDAsIDEgLSAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDApICogKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAwKSkpOy0tdWktbGliLXNpemUtZGVmLXh4c21hbGw6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gMSkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDEpKSk7LS11aS1saWItc2l6ZS1kZWYteHNtYWxsOmNhbGMobWF4KDAsIDEgLSAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDIpICogKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAyKSkpOy0tdWktbGliLXNpemUtZGVmLXNtYWxsOmNhbGMobWF4KDAsIDEgLSAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDMpICogKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAzKSkpOy0tdWktbGliLXNpemUtZGVmLW1lZGl1bTpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSA0KSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNCkpKTstLXVpLWxpYi1zaXplLWRlZi1sYXJnZTpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSA1KSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNSkpKTstLXVpLWxpYi1zaXplLWRlZi14bGFyZ2U6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNikgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDYpKSk7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHhzbWFsbCkqM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXh4c21hbGwpKjVweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjdweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqOXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSoxMHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqMTJweCk7Zm9udC1zaXplOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMTBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjEycHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjE0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoxNHB4KTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjUwMCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNDAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNDAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo0MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo1MDApO2hlaWdodDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHhzbWFsbCkqNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXh4c21hbGwpKjEwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMThweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMjBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjI0cHgpO2xpbmUtaGVpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjE2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjE4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoxOHB4KTttaW4td2lkdGg6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHh4c21hbGwpKjZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHNtYWxsKSoxMHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjE4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjIwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoyNHB4KTtwYWRkaW5nLWlubGluZS1lbmQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHh4c21hbGwpKjBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHNtYWxsKSowcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSozLjVweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo1cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo3LjVweCk7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHh4c21hbGwpKjBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHNtYWxsKSowcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSozcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqM3B4KTtwYWRkaW5nLWlubGluZS1zdGFydDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHhzbWFsbCkqMHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXh4c21hbGwpKjBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjMuNXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjVweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjcuNXB4KTtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14eHhzbWFsbCkqMHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXh4c21hbGwpKjBweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSozcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSozcHgpfS5jb2xvci1kYW5nZXItQWZkNnQ0Wmp7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb3VudGVyLWZpbGwtZGFuZ2VyKTtjb2xvcjp2YXIoLS1jb2xvci1jb3VudGVyLWNvbnRlbnQtZGFuZ2VyKX0uY29sb3ItYWNjZW50LUFmZDZ0NFpqe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY291bnRlci1maWxsLWFjY2VudCk7Y29sb3I6dmFyKC0tY29sb3ItY291bnRlci1jb250ZW50LWFjY2VudCl9LmNvbG9yLWFjY2VudC1saWdodC1BZmQ2dDRaantiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQtbGlnaHQpO2NvbG9yOnZhcigtLWNvbG9yLWNvdW50ZXItY29udGVudC1hY2NlbnQtbGlnaHQpfS5jb2xvci1uZXV0cmFsLWJvbGQtQWZkNnQ0Wmp7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbC1ib2xkKTtjb2xvcjp2YXIoLS1jb2xvci1jb3VudGVyLWNvbnRlbnQtbmV1dHJhbC1ib2xkKX0uY29sb3ItbmV1dHJhbC1BZmQ2dDRaantiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsKTtjb2xvcjp2YXIoLS1jb2xvci1jb3VudGVyLWNvbnRlbnQtbmV1dHJhbCl9LmJvcmRlckNvbG9yLXByaW1hcnktQWZkNnQ0Wmp7LS11aS1saWItY291bnRlci1ib3JkZXItb3V0bGluZS1wcmltYXJ5OnNvbGlkIDJweCB2YXIoLS1jb2xvci1jb3VudGVyLWJvcmRlci1wcmltYXJ5KTtvdXRsaW5lOnZhcigtLXVpLWxpYi1jb3VudGVyLWJvcmRlci1vdXRsaW5lLXByaW1hcnkpfS5ib3JkZXJDb2xvci1zZWNvbmRhcnktQWZkNnQ0Wmp7LS11aS1saWItY291bnRlci1ib3JkZXItb3V0bGluZS1zZWNvbmRhcnk6c29saWQgMnB4IHZhcigtLWNvbG9yLWNvdW50ZXItYm9yZGVyLXNlY29uZGFyeSk7b3V0bGluZTp2YXIoLS11aS1saWItY291bnRlci1ib3JkZXItb3V0bGluZS1zZWNvbmRhcnkpfS5ib3JkZXJDb2xvci10ZXJ0aWFyeS1BZmQ2dDRaanstLXVpLWxpYi1jb3VudGVyLWJvcmRlci1vdXRsaW5lLXRlcnRpYXJ5OnNvbGlkIDJweCB2YXIoLS1jb2xvci1jb3VudGVyLWJvcmRlci10ZXJ0aWFyeSk7b3V0bGluZTp2YXIoLS11aS1saWItY291bnRlci1ib3JkZXItb3V0bGluZS10ZXJ0aWFyeSl9LmRpc2FibGVkLUFmZDZ0NFpqe29wYWNpdHk6LjV9"}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/js/script.min.js?ver=1.3.3","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.330Z","timestamp":1785154589330,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/js/script.min.js?ver=1.3.3 HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\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\ncontent-type: text/javascript\r\nlast-modified: Sun, 14 Sep 2025 13:40:52 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 4520\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":53227,"size_decoded":4757,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"32edc421c412f712b3fc52e9feadf901","sha1":"57dc8f361e4a4bb9b00d364847588fde311218cf","sha256":"3c1d996eef14611bcb5d3c41592a982c85b6afee8cb232f3a5003aac02c013f4","sha512":"0e5743642d5ce9e384fce9ef5e196ff3850e4c33eb62b1b5f100c74d6201af83bf6fa18e4665fe5afa54b3eeae323790105b0ae9ac80ef251b6b404af4036a6d","ssdeep":"1536:rSO+VRNyFnTyFYaRNyFBMyFVTyFR7NyaRnyFJVTyFNCshRny01AfCEhtnmQqyFsl:wJV7VroDq","tlshash":"0f33ff0e64b01062465ba5764e1a4f01e671854f9e9abc30bf8d1b946f0f00f66f7bee","first_seen":"2025-09-22T10:43:48.593757Z","last_seen":"2026-07-27T12:17:29.208943Z","times_seen":27,"resource_available":true,"data":"ISBmdW5jdGlvbihsKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgcywgYSwgZSA9IGwod2luZG93KS53aWR0aCgpOwogICAgbCgiLmJnX2ltYWdlX2hvbGRlciIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGUgPSBsKHRoaXMpLAogICAgICAgICAgICBzID0gZS5jaGlsZHJlbigpLmF0dHIoInNyYyIpOwogICAgICAgIGUuY3NzKHsKICAgICAgICAgICAgImJhY2tncm91bmQtaW1hZ2UiOiAidXJsKCIgKyBzICsgIikiLAogICAgICAgICAgICBvcGFjaXR5OiAiMSIKICAgICAgICB9KS5jaGlsZHJlbigpLmF0dHIoImFsdCIsIHMpCiAgICB9KSwgZSA8IDk5MiAmJiAocyA9ICIubmF2LWl0ZW0uZHJvcGRvd24gLm5hdi1saW5rIiwgbCgiLm5hdmJhciAiICsgKGEgPSAiLm1lZ2EtbWVudSwuZHJvcGRvd24tbWVudSIpKS5zbGlkZVVwKCksIGwocykucmVtb3ZlQXR0cigiZGF0YS10b2dnbGUiKSwgbCgiLm5hdmJhciAiICsgcykub24oImNsaWNrIiwgZnVuY3Rpb24oZSkgewogICAgICAgIGUucHJldmVudERlZmF1bHQoKSwgbCh0aGlzKS50b2dnbGVDbGFzcygiYWN0aXZlIikuc2libGluZ3MoYSkuc2xpZGVUb2dnbGUoKS5wYXJlbnQoKS5zaWJsaW5ncygiLmRyb3Bkb3duIikuY2hpbGRyZW4oYSkuc2xpZGVVcCgpLnNpYmxpbmdzKHMpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKQogICAgfSkpLCBsKCJpbWcuc3ZnIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICB2YXIgYSA9IGwodGhpcyksCiAgICAgICAgICAgIHQgPSBhLmF0dHIoImlkIiksCiAgICAgICAgICAgIGkgPSBhLmF0dHIoImNsYXNzIiksCiAgICAgICAgICAgIGUgPSBhLmF0dHIoInNyYyIpOwogICAgICAgIGwuZ2V0KGUsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHMgPSBqUXVlcnkoZSkuZmluZCgic3ZnIik7CiAgICAgICAgICAgIHZvaWQgMCAhPT0gdCAmJiAocyA9IHMuYXR0cigiaWQiLCB0KSksIHZvaWQgMCAhPT0gaSAmJiAocyA9IHMuYXR0cigiY2xhc3MiLCBpICsgIiByZXBsYWNlZC1zdmciKSksIHMgPSBzLnJlbW92ZUF0dHIoInhtbG5zOmEiKSwgYS5yZXBsYWNlV2l0aChzKQogICAgICAgIH0sICJ4bWwiKQogICAgfSksIGwoIi5jYXJvdXNlbC1vbmUiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDMsCiAgICAgICAgbWFyZ2luOiAzMCwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMgogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAzCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmNhcm91c2VsLXR3byIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMywKICAgICAgICBtYXJnaW46IDMwLAogICAgICAgIG5hdjogITEsCiAgICAgICAgZG90czogITAsCiAgICAgICAgZG90c0NsYXNzOiAib3dsLWRvdHMgZG90LWNpcmNsZSIsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA2MDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAyCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDMKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIuY2Fyb3VzZWwtdGhyZWUiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDEsCiAgICAgICAgbmF2OiAhMCwKICAgICAgICBuYXZUZXh0OiBbJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1sZWZ0Ij48L2k+JywgJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1yaWdodCI+PC9pPiddLAogICAgICAgIG5hdkNvbnRhaW5lckNsYXNzOiAibmF2LWNpcmNsZSIsCiAgICAgICAgZG90czogITEsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA2MDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIuY2Fyb3VzZWwtZm91ciIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMSwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnBvcnRmb2xpby1jYXJvdXNlbCIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogNCwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNTUwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMgogICAgICAgICAgICB9LAogICAgICAgICAgICA3Njg6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAzCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDQKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIuaW1hZ2UtY2Fyb3VzZWwtb25lIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAxLAogICAgICAgIG5hdjogITAsCiAgICAgICAgbmF2VGV4dDogWyc8aSBjbGFzcz0ibGEgbGEtYW5nbGUtbGVmdCI+PC9pPicsICc8aSBjbGFzcz0ibGEgbGEtYW5nbGUtcmlnaHQiPjwvaT4nXSwKICAgICAgICBuYXZDb250YWluZXJDbGFzczogIm5hdi1jaXJjbGUiLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmltYWdlLWNhcm91c2VsLXR3byIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMSwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnRlc3RpbW9uaWFsLWNhcm91c2VsLW9uZSIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMSwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnRlc3RpbW9uaWFsLWNhcm91c2VsLXR3byIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMiwKICAgICAgICBtYXJnaW46IDMwLAogICAgICAgIG5hdjogITEsCiAgICAgICAgZG90czogITAsCiAgICAgICAgZG90c0NsYXNzOiAib3dsLWRvdHMgZG90LWNpcmNsZSBkb3QtbGlnaHQiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNzY4OiB7CiAgICAgICAgICAgICAgICBpdGVtczogMgogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAyCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnRlc3RpbW9uaWFsLWNhcm91c2VsLXRocmVlIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAzLAogICAgICAgIG5hdjogITAsCiAgICAgICAgbmF2VGV4dDogWyc8aSBjbGFzcz0ibGEgbGEtYW5nbGUtbGVmdCI+PC9pPicsICc8aSBjbGFzcz0ibGEgbGEtYW5nbGUtcmlnaHQiPjwvaT4nXSwKICAgICAgICBuYXZDb250YWluZXJDbGFzczogIm5hdi1jaXJjbGUiLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA5OTI6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAzCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnRlc3RpbW9uaWFsLWNhcm91c2VsLWZvdXIiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDEsCiAgICAgICAgbmF2OiAhMCwKICAgICAgICBuYXZUZXh0OiBbJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1sZWZ0Ij48L2k+JywgJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1yaWdodCI+PC9pPiddLAogICAgICAgIG5hdkNvbnRhaW5lckNsYXNzOiAibmF2LWNpcmNsZSBuYXYtY2lyY2xlLS1saWdodCIsCiAgICAgICAgZG90czogITEsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA2MDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIudGVzdGltb25pYWwtY2Fyb3VzZWwtZml2ZSIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMiwKICAgICAgICBuYXY6ICExLAogICAgICAgIGxvb3A6ICExLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIGF1dG9wbGF5OiAhMSwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDk5MjogewogICAgICAgICAgICAgICAgaXRlbXM6IDIKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIudGVzdGltb25pYWwtY2Fyb3VzZWwtc2l4Iikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAxLAogICAgICAgIG5hdjogITEsCiAgICAgICAgZG90czogITAsCiAgICAgICAgZG90c0NsYXNzOiAib3dsLWRvdHMgZG90LWNpcmNsZSBkb3Qtc2Vjb25kYXJ5IiwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDYwMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMWUzOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoIi50ZWFtLWNhcm91c2VsLW9uZSIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMywKICAgICAgICBuYXY6ICEwLAogICAgICAgIG5hdlRleHQ6IFsnPGkgY2xhc3M9ImxhIGxhLWFuZ2xlLWxlZnQiPjwvaT4nLCAnPGkgY2xhc3M9ImxhIGxhLWFuZ2xlLXJpZ2h0Ij48L2k+J10sCiAgICAgICAgbmF2Q29udGFpbmVyQ2xhc3M6ICJuYXYtc3F1YXJlIG5hdi1zcXVhcmUtZGFyayIsCiAgICAgICAgZG90czogITEsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA3Njg6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAyCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDMKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIudGVhbS1jYXJvdXNlbC10d28iKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDQsCiAgICAgICAgbWFyZ2luOiAzMCwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMgogICAgICAgICAgICB9LAogICAgICAgICAgICA5OTI6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiA0CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnRlYW0tY2Fyb3VzZWwtdGhyZWUiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDEsCiAgICAgICAgbmF2OiAhMCwKICAgICAgICBuYXZUZXh0OiBbJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1sZWZ0Ij48L2k+JywgJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1yaWdodCI+PC9pPiddLAogICAgICAgIG5hdkNvbnRhaW5lckNsYXNzOiAibmF2LWNpcmNsZSBuYXYtY2lyY2xlLS1saWdodCIsCiAgICAgICAgZG90czogITEsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA2MDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDk5MjogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIubG9nby1jYXJvdXNlbC1vbmUiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDUsCiAgICAgICAgYXV0b3BsYXk6ICEwLAogICAgICAgIGxvb3A6ICEwLAogICAgICAgIG1hcmdpbjogMzAsCiAgICAgICAgbmF2OiAhMSwKICAgICAgICBkb3RzOiAhMSwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDQ4MDogewogICAgICAgICAgICAgICAgaXRlbXM6IDIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNzY4OiB7CiAgICAgICAgICAgICAgICBpdGVtczogMwogICAgICAgICAgICB9LAogICAgICAgICAgICA5OTI6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiA1CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmxvZ28tY2Fyb3VzZWwtdHdvIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAyLAogICAgICAgIG1hcmdpbjogMzAsCiAgICAgICAgbmF2OiAhMSwKICAgICAgICBkb3RzOiAhMCwKICAgICAgICBkb3RzQ2xhc3M6ICJvd2wtZG90cyBkb3QtY2lyY2xlIiwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDYwMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMWUzOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMgogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoIi5sb2dvLWNhcm91c2VsLXRocmVlIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiA1LAogICAgICAgIG1hcmdpbjogMzAsCiAgICAgICAgbmF2OiAhMCwKICAgICAgICBuYXZUZXh0OiBbJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1sZWZ0Ij48L2k+JywgJzxpIGNsYXNzPSJsYSBsYS1hbmdsZS1yaWdodCI+PC9pPiddLAogICAgICAgIG5hdkNvbnRhaW5lckNsYXNzOiAibmF2LXNxdWFyZSBuYXYtc3F1YXJlLWRhcmsiLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMwogICAgICAgICAgICB9LAogICAgICAgICAgICA5OTI6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiA1CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmxvZ28tY2Fyb3VzZWwtZm91ciIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogNSwKICAgICAgICBhdXRvcGxheTogITAsCiAgICAgICAgbG9vcDogITAsCiAgICAgICAgbmF2OiAhMSwKICAgICAgICBkb3RzOiAhMSwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDQ4MDogewogICAgICAgICAgICAgICAgaXRlbXM6IDMKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNzY4OiB7CiAgICAgICAgICAgICAgICBpdGVtczogNAogICAgICAgICAgICB9LAogICAgICAgICAgICA5OTI6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiA1CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmxvZ28tY2Fyb3VzZWwtZGFyayIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogNCwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIGF1dG9wbGF5OiAhMCwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDYwMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDMKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMWUzOiB7CiAgICAgICAgICAgICAgICBpdGVtczogNAogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoIi5ibG9nLWNhcm91c2VsLW9uZSIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMywKICAgICAgICBtYXJnaW46IDMwLAogICAgICAgIG5hdjogITEsCiAgICAgICAgZG90czogITAsCiAgICAgICAgZG90c0NsYXNzOiAib3dsLWRvdHMgZG90LWNpcmNsZSIsCiAgICAgICAgcmVzcG9uc2l2ZTogewogICAgICAgICAgICAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICA2MDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAyCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDFlMzogewogICAgICAgICAgICAgICAgaXRlbXM6IDMKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBsKCIuYmxvZy1jYXJvdXNlbC10d28iKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDMsCiAgICAgICAgYXV0b3BsYXk6ICEwLAogICAgICAgIG1hcmdpbjogMzAsCiAgICAgICAgbmF2OiAhMSwKICAgICAgICBkb3RzOiAhMSwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDc2ODogewogICAgICAgICAgICAgICAgaXRlbXM6IDIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgOTkyOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoIi50d2l0dGVyLWZlZWRzLWNhcm91c2VsIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAxLAogICAgICAgIGF1dG9wbGF5OiAhMCwKICAgICAgICBsb29wOiAhMCwKICAgICAgICBuYXY6ICEwLAogICAgICAgIG5hdlRleHQ6IFsnPGkgY2xhc3M9ImxhIGxhLWFuZ2xlLWxlZnQiPjwvaT4nLCAnPGkgY2xhc3M9ImxhIGxhLWFuZ2xlLXJpZ2h0Ij48L2k+J10sCiAgICAgICAgbmF2Q29udGFpbmVyQ2xhc3M6ICJuYXYtY2lyY2xlIG5hdi1jaXJjbGUtLWxpZ2h0ZW4iLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLnR3aXR0ZXItZmVlZHMtY2Fyb3VzZWwyIikub3dsQ2Fyb3VzZWwoewogICAgICAgIGl0ZW1zOiAxLAogICAgICAgIGF1dG9wbGF5OiAhMCwKICAgICAgICBsb29wOiAhMCwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICEwLAogICAgICAgIGRvdHNDbGFzczogIm93bC1kb3RzIGRvdC1jaXJjbGUiLAogICAgICAgIHJlc3BvbnNpdmU6IHsKICAgICAgICAgICAgMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgNjAwOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9LAogICAgICAgICAgICAxZTM6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgbCgiLmltYWdlLXZpZXctY2Fyb3VzZWwiKS5vd2xDYXJvdXNlbCh7CiAgICAgICAgaXRlbXM6IDEsCiAgICAgICAgY2VudGVyOiAhMCwKICAgICAgICBsb29wOiAhMSwKICAgICAgICBuYXY6ICExLAogICAgICAgIGRvdHM6ICExLAogICAgICAgIFVSTGhhc2hMaXN0ZW5lcjogITAsCiAgICAgICAgc3RhcnRQb3NpdGlvbjogIiNpbWFnZTEiCiAgICB9KSwgbCgiLmFkZHJlc3Nlc19jYXJvdXNlbCIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogNCwKICAgICAgICBkb3RzOiAhMCwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDYwMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMWUzOiB7CiAgICAgICAgICAgICAgICBpdGVtczogNAogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoIi5pbnRyb19hcmVhOS1jYXJvdXNlbCIpLm93bENhcm91c2VsKHsKICAgICAgICBpdGVtczogMSwKICAgICAgICBkb3RzOiAhMCwKICAgICAgICBhbmltYXRlSW46ICJmYWRlSW4iLAogICAgICAgIGFuaW1hdGVPdXQ6ICJmYWRlT3V0IiwKICAgICAgICByZXNwb25zaXZlOiB7CiAgICAgICAgICAgIDA6IHsKICAgICAgICAgICAgICAgIGl0ZW1zOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDYwMDogewogICAgICAgICAgICAgICAgaXRlbXM6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMWUzOiB7CiAgICAgICAgICAgICAgICBpdGVtczogMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwoJ1tkYXRhLXRvZ2dsZT0idG9vbHRpcCJdJykudG9vbHRpcCgpOwogICAgdmFyIHQgPSBsKCIjbnVtYmVySW5wdXQiKTsKICAgIGwoIi5wY291bnQiKS5vbigiY2xpY2siLCBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgZSA9IHBhcnNlSW50KHQudmFsKCkpOwogICAgICAgICJwbHVzIiA9PT0gbCh0aGlzKS5kYXRhKCJvcGVyYXRpb24iKSA/IGlzTmFOKGUpID8gdC52YWwoMSkgOiB0LnZhbChlICsgMSkgOiAwIDwgZSAmJiB0LnZhbChlIC0gMSkKICAgIH0pLCBsKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpIHsKICAgICAgICBsKCIuc2VsZWN0Ml9kZWZhdWx0Iikuc2VsZWN0Mih7CiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAiTXVsdGlwbGUgU2VsZWN0IiwKICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgY29udGFpbmVyQ3NzQ2xhc3M6ICJmb3JtLWNvbnRyb2wiCiAgICAgICAgfSksIGwoIi5zZWxlY3QyX3RhZ2dlZCIpLnNlbGVjdDIoewogICAgICAgICAgICBtdWx0aXBsZTogITAsCiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAiU2VsZWN0IG9wdGlvbnMiLAogICAgICAgICAgICBjb250YWluZXJDc3NDbGFzczogImZvcm0tY29udHJvbCIKICAgICAgICB9KSwgbCgiLnNlbGVjdGlvbl93aXRoX2ljb24iKS5zZWxlY3QyKHsKICAgICAgICAgICAgdGVtcGxhdGVSZXN1bHQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBlLmlkID8gbCgiPHNwYW4+PHNwYW4gY2xhc3M9J2xhIGxhLSIgKyBlLmVsZW1lbnQudmFsdWUgKyAiJz48L3NwYW4+IiArIGUudGV4dCArICI8L3NwYW4+IikgOiBlLnRleHQKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY29udGFpbmVyQ3NzQ2xhc3M6ICJmb3JtLWNvbnRyb2wiLAogICAgICAgICAgICBkcm9wZG93bkNzc0NsYXNzOiAiY3VzdG9tX3NlbGVjdF93aXRoX2ljb24iCiAgICAgICAgfSkKICAgIH0pLCBsKCIuY291bnRfdXAiKS5jb3VudGVyVXAoKSwgbCgiLmdpdmVfcmF0aW5nIikuYmFycmF0aW5nKHsKICAgICAgICB0aGVtZTogImZvbnRhd2Vzb21lLXN0YXJzIgogICAgfSksIGwoIiNiZ25kVmlkZW8iKS5ZVFBsYXllcigpLCBsKCIjc2xpZGVyLXJhbmdlMSIpLnNsaWRlcih7CiAgICAgICAgcmFuZ2U6ICEwLAogICAgICAgIG1pbjogMCwKICAgICAgICBtYXg6IDUwMCwKICAgICAgICB2YWx1ZXM6IFs3NSwgMzAwXSwKICAgICAgICBzbGlkZTogZnVuY3Rpb24oZSwgcykgewogICAgICAgICAgICBsKCIjYW1vdW50MSIpLnZhbCgiJCIgKyBzLnZhbHVlc1swXSArICIgLSAkIiArIHMudmFsdWVzWzFdKQogICAgICAgIH0KICAgIH0pLCBsKCIjYW1vdW50MSIpLnZhbCgiJCIgKyBsKCIjc2xpZGVyLXJhbmdlMSIpLnNsaWRlcigidmFsdWVzIiwgMCkgKyAiIC0gJCIgKyBsKCIjc2xpZGVyLXJhbmdlMSIpLnNsaWRlcigidmFsdWVzIiwgMSkpLCBsKCIjc2xpZGVyLXJhbmdlMiIpLnNsaWRlcih7CiAgICAgICAgcmFuZ2U6ICEwLAogICAgICAgIG1pbjogMCwKICAgICAgICBtYXg6IDUwMCwKICAgICAgICB2YWx1ZXM6IFs3NSwgMzAwXSwKICAgICAgICBzbGlkZTogZnVuY3Rpb24oZSwgcykgewogICAgICAgICAgICBsKCIjYW1vdW50MiIpLnZhbCgiJCIgKyBzLnZhbHVlc1swXSArICIgLSAkIiArIHMudmFsdWVzWzFdKQogICAgICAgIH0KICAgIH0pLCBsKCIjYW1vdW50MiIpLnZhbCgiJCIgKyBsKCIjc2xpZGVyLXJhbmdlMiIpLnNsaWRlcigidmFsdWVzIiwgMCkgKyAiIC0gJCIgKyBsKCIjc2xpZGVyLXJhbmdlMiIpLnNsaWRlcigidmFsdWVzIiwgMSkpLCBsKCIjdGV4dC1lZGl0b3IiKS50cnVtYm93eWcoKSwgbCgiLmNvdW50ZG93biIpLmNvdW50ZG93bigiMjAxOS8xMS8yNSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICBsKHRoaXMpLmh0bWwoZS5zdHJmdGltZSgiPGxpPjxzcGFuPiVEPC9zcGFuPiA8c3Bhbj5EYXlzPC9zcGFuPjwvbGk+ICA8bGk+PHNwYW4+JUg8L3NwYW4+IDxzcGFuPkhvdXJzPC9zcGFuPjwvbGk+ICA8bGk+PHNwYW4+JU08L3NwYW4+IDxzcGFuPk1pbnV0ZXM8L3NwYW4+PC9saT4gIDxsaT48c3Bhbj4lUzwvc3Bhbj4gPHNwYW4+U2Vjb25kczwvc3Bhbj48L2xpPiAiKSkKICAgIH0pLCBsKCIuc2VhcmNoX3RyaWdnZXIiKS5vbigiY2xpY2siLCBmdW5jdGlvbigpIHsKICAgICAgICBsKHRoaXMpLnRvZ2dsZUNsYXNzKCJsYS1zZWFyY2ggbGEtY2xvc2UiKSwgbCh0aGlzKS5wYXJlbnQoIi5zZWFyY2hfbW9kdWxlIikuY2hpbGRyZW4oIi5zZWFyY2hfYXJlYSIpLnRvZ2dsZUNsYXNzKCJhY3RpdmUiKQogICAgfSksIGwoIi52aWRlby1pZnJhbWUiKS5tYWduaWZpY1BvcHVwKHsKICAgICAgICB0eXBlOiAiaWZyYW1lIiwKICAgICAgICBpZnJhbWU6IHsKICAgICAgICAgICAgbWFya3VwOiAnPGRpdiBjbGFzcz0ibWZwLWlmcmFtZS1zY2FsZXIiPjxkaXYgY2xhc3M9Im1mcC1jbG9zZSI+PC9kaXY+PGlmcmFtZSBjbGFzcz0ibWZwLWlmcmFtZSIgZnJhbWVib3JkZXI9IjAiIGFsbG93ZnVsbHNjcmVlbj48L2lmcmFtZT48L2Rpdj4nLAogICAgICAgICAgICBwYXR0ZXJuczogewogICAgICAgICAgICAgICAgeW91dHViZTogewogICAgICAgICAgICAgICAgICAgIGluZGV4OiAieW91dHViZS5jb20vIiwKICAgICAgICAgICAgICAgICAgICBpZDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IGUubWF0Y2goL1tcXD9cXCZddj0oW15cXD9cXCZdKykvKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMgJiYgc1sxXSA/IHNbMV0gOiBudWxsCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBzcmM6ICIvL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8laWQlP3JlbD0wJmF1dG9wbGF5PTEiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmltZW86IHsKICAgICAgICAgICAgICAgICAgICBpbmRleDogInZpbWVvLmNvbS8iLAogICAgICAgICAgICAgICAgICAgIGlkOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzID0gZS5tYXRjaCgvKGh0dHBzPzpcL1wvKT8od3d3Lik/KHBsYXllci4pP3ZpbWVvLmNvbVwvKFthLXpdKlwvKSooWzAtOV17NiwxMX0pWz9dPy4qLyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzICYmIHNbNV0gPyBzWzVdIDogbnVsbAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgc3JjOiAiLy9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLyVpZCU/YXV0b3BsYXk9MSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgc3JjQWN0aW9uOiAiaWZyYW1lX3NyYyIKICAgICAgICB9CiAgICB9KSwgbCgiLmZpbHRlci1zb3J0IHVsIGxpIikub24oImNsaWNrIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgbCgiLmZpbHRlci1zb3J0IHVsIGxpIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLCBsKHRoaXMpLmFkZENsYXNzKCJhY3RpdmUiKQogICAgfSksIGwoIi5maWx0ZXItc29ydDIgdWwgbGkiKS5vbigiY2xpY2siLCBmdW5jdGlvbigpIHsKICAgICAgICBsKCIuZmlsdGVyLXNvcnQyIHVsIGxpIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLCBsKHRoaXMpLmFkZENsYXNzKCJhY3RpdmUiKQogICAgfSk7CiAgICB2YXIgaSA9IGwoIi5nb190b3AiKTsKICAgIGwod2luZG93KS5vbigic2Nyb2xsIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgMTE3IDwgbChkb2N1bWVudCkuc2Nyb2xsVG9wKCkgPyBpLmZhZGVJbig0MDApIDogaS5mYWRlT3V0KDQwMCkKICAgIH0pLCBpLm9uKCJjbGljayIsIGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBsKCJodG1sLCBib2R5IikuYW5pbWF0ZSh7CiAgICAgICAgICAgIHNjcm9sbFRvcDogMAogICAgICAgIH0sIDgwMCksICExCiAgICB9KSwgbCgiLmN1c3RvbS11cGxvYWQiKS5jaGFuZ2UoZnVuY3Rpb24oKSB7CiAgICAgICAgbCgiLmZpbGUtbmFtZSIpLnRleHQodGhpcy5maWxlc1swXS5uYW1lKQogICAgfSkKfShqUXVlcnkpOwohIGZ1bmN0aW9uKCkgewogICAgInVzZSBzdHJpY3QiOwoKICAgIGZ1bmN0aW9uIGUoZSwgdCwgbCwgcikgewogICAgICAgIHZhciBzID0gbmV3IGdvb2dsZS5tYXBzLkxhdExuZyh0LCBsKSwKICAgICAgICAgICAgbyA9IHsKICAgICAgICAgICAgICAgIGNlbnRlcjogcywKICAgICAgICAgICAgICAgIHpvb206IDEzLAogICAgICAgICAgICAgICAgc2Nyb2xsd2hlZWw6ICExLAogICAgICAgICAgICAgICAgc3R5bGVzOiByIHx8IFt7CiAgICAgICAgICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJ3YXRlciIsCiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjZTllOWU5IgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxNwogICAgICAgICAgICAgICAgICAgIH1dCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJsYW5kc2NhcGUiLAogICAgICAgICAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiI2Y1ZjVmNSIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMjAKICAgICAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicm9hZC5oaWdod2F5IiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5LmZpbGwiLAogICAgICAgICAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMTcKICAgICAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicm9hZC5oaWdod2F5IiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5LnN0cm9rZSIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjZmZmZmZmIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAyOQogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAuMgogICAgICAgICAgICAgICAgICAgIH1dCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJyb2FkLmFydGVyaWFsIiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiNmZmZmZmYiCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDE4CiAgICAgICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBmZWF0dXJlVHlwZTogInJvYWQubG9jYWwiLAogICAgICAgICAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMTYKICAgICAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicG9pIiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiNmNWY1ZjUiCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDIxCiAgICAgICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBmZWF0dXJlVHlwZTogInBvaS5wYXJrIiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiNkZWRlZGUiCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDIxCiAgICAgICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImxhYmVscy50ZXh0LnN0cm9rZSIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogIm9uIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjZmZmZmZmIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxNgogICAgICAgICAgICAgICAgICAgIH1dCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJsYWJlbHMudGV4dC5maWxsIiwKICAgICAgICAgICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgICAgICAgICBzYXR1cmF0aW9uOiAzNgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjMzMzMzMzIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiA0MAogICAgICAgICAgICAgICAgICAgIH1dCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJsYWJlbHMuaWNvbiIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogIm9mZiIKICAgICAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAidHJhbnNpdCIsCiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjZjJmMmYyIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxOQogICAgICAgICAgICAgICAgICAgIH1dCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJhZG1pbmlzdHJhdGl2ZSIsCiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeS5maWxsIiwKICAgICAgICAgICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiNmZWZlZmUiCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDIwCiAgICAgICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBmZWF0dXJlVHlwZTogImFkbWluaXN0cmF0aXZlIiwKICAgICAgICAgICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5LnN0cm9rZSIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICIjZmVmZWZlIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxNwogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLjIKICAgICAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgeSA9IG5ldyBnb29nbGUubWFwcy5NYXAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZSksIG8pLAogICAgICAgICAgICBmID0gbmV3IGdvb2dsZS5tYXBzLk1hcmtlcih7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcywKICAgICAgICAgICAgICAgIGljb246ICJpbWcvbXBjLnBuZyIKICAgICAgICAgICAgfSk7CiAgICAgICAgbmV3IGdvb2dsZS5tYXBzLkluZm9XaW5kb3coewogICAgICAgICAgICBjb250ZW50OiAidW5pdGVkLXN0YXRlcyIKICAgICAgICB9KTsKICAgICAgICBmLnNldE1hcCh5KQogICAgfQogICAgJCgiLm1hcCIpLmxlbmd0aCAmJiBnb29nbGUubWFwcy5ldmVudC5hZGREb21MaXN0ZW5lcih3aW5kb3csICJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgJCgiI21hcDEiKS5sZW5ndGggJiYgZSgibWFwMSIsIDUwLjc5Nzg5NywgLTEuMDc3NjQxKTsKICAgICAgICAkKCIjbWFwMiIpLmxlbmd0aCAmJiBlKCJtYXAyIiwgNTAuNzk3ODk3LCAtMS4wNzc2NDEsIFt7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAiYWxsIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJsYWJlbHMudGV4dC5maWxsIiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIHNhdHVyYXRpb246IDM2CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGNvbG9yOiAiIzMzMzMzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiA0MAogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJhbGwiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImxhYmVscy50ZXh0LnN0cm9rZSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiAib24iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxNgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJhbGwiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImxhYmVscy5pY29uIiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJvZmYiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogImFkbWluaXN0cmF0aXZlIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeS5maWxsIiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZlZmVmZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAyMAogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJhZG1pbmlzdHJhdGl2ZSIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkuc3Ryb2tlIiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZlZmVmZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxNwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEuMgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJsYW5kc2NhcGUiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2RjZTFkYyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAyMAogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJwb2kiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2Y1ZjVmNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAyMQogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJwb2kucGFyayIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgY29sb3I6ICIjZGVkZWRlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDIxCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogInJvYWQuaGlnaHdheSIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkuZmlsbCIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiNmZmZmZmYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMTcKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicm9hZC5oaWdod2F5IiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeS5zdHJva2UiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgY29sb3I6ICIjZmZmZmZmIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDI5CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIHdlaWdodDogLjIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicm9hZC5oaWdod2F5LmNvbnRyb2xsZWRfYWNjZXNzIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiNjZGNkY2QiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogInJvYWQuYXJ0ZXJpYWwiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbGlnaHRuZXNzOiAxOAogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJyb2FkLmxvY2FsIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiNkYWRhZGEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMTYKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAidHJhbnNpdCIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgY29sb3I6ICIjZjJmMmYyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBsaWdodG5lc3M6IDE5CiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogIndhdGVyIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiNkMWQxZDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogMTcKICAgICAgICAgICAgfV0KICAgICAgICB9XSk7CiAgICAgICAgJCgiI21hcDMiKS5sZW5ndGggJiYgZSgibWFwMyIsIDQwLjcxMjgsIC03My45MzUyNDIsIFt7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAiYWxsIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJsYWJlbHMudGV4dC5maWxsIiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiI2ZmZmZmZiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAiYWxsIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJsYWJlbHMudGV4dC5zdHJva2UiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogIm9uIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBjb2xvcjogIiM0MjRiNWIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIHdlaWdodDogMgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBnYW1tYTogIjEiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogImFsbCIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAibGFiZWxzLmljb24iLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogIm9mZiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAiYWRtaW5pc3RyYXRpdmUiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIHdlaWdodDogLjYKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgY29sb3I6ICIjNTQ1YjZiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBnYW1tYTogIjAiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogImxhbmRzY2FwZSIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgY29sb3I6ICIjNTQ1YjZiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBnYW1tYTogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIHdlaWdodDogIjEwIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJwb2kiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiIzY2NmM3YiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicG9pLnBhcmsiLAogICAgICAgICAgICBlbGVtZW50VHlwZTogImdlb21ldHJ5IiwKICAgICAgICAgICAgc3R5bGVyczogW3sKICAgICAgICAgICAgICAgIGNvbG9yOiAiIzU0NWI2YiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgIGZlYXR1cmVUeXBlOiAicm9hZCIsCiAgICAgICAgICAgIGVsZW1lbnRUeXBlOiAiZ2VvbWV0cnkiLAogICAgICAgICAgICBzdHlsZXJzOiBbewogICAgICAgICAgICAgICAgY29sb3I6ICIjNDI0YTViIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBsaWdodG5lc3M6ICIwIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgZmVhdHVyZVR5cGU6ICJ0cmFuc2l0IiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiM2NjZjN2IiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICBmZWF0dXJlVHlwZTogIndhdGVyIiwKICAgICAgICAgICAgZWxlbWVudFR5cGU6ICJnZW9tZXRyeSIsCiAgICAgICAgICAgIHN0eWxlcnM6IFt7CiAgICAgICAgICAgICAgICBjb2xvcjogIiMyZTM1NDYiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0pLCAkKCIjbWFwNCIpLmxlbmd0aCAmJiBlKCJtYXA0IiwgNTAuNzk3ODk3LCAtMS4wNzc2NDEpCiAgICB9KQp9KCk7CiEgZnVuY3Rpb24oZSkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIGk7CiAgICAhIGZ1bmN0aW9uKCkgewogICAgICAgIGZ1bmN0aW9uIGUoKSB7CiAgICAgICAgICAgIHZvaWQgMCA9PT0gaSAmJiAoaSA9IGpRdWVyeSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfMTVfMiIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl8xNV8yIikgOiBpKCIjcmV2X3NsaWRlcl8xNV8yIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogNzUwMCwKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGtleWJvYXJkX2RpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsTmF2aWdhdGlvbjogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbW91c2VTY3JvbGxSZXZlcnNlOiAiZGVmYXVsdCIsCiAgICAgICAgICAgICAgICAgICAgb25Ib3ZlclN0b3A6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGJ1bGxldHM6IHsKICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiAhMCwKICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9vbm1vYmlsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiAiZXJpbnllbiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgICAgICBoX2FsaWduOiAiY2VudGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgdl9hbGlnbjogImJvdHRvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAwLAogICAgICAgICAgICAgICAgICAgICAgICB2X29mZnNldDogNDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHNwYWNlOiA1LAogICAgICAgICAgICAgICAgICAgICAgICB0bXA6ICIiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHZpc2liaWxpdHlMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgcGFyYWxsYXg6IHsKICAgICAgICAgICAgICAgICAgICB0eXBlOiAibW91c2UiLAogICAgICAgICAgICAgICAgICAgIG9yaWdvOiAiZW50ZXJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDQwMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGJnOiAwLAogICAgICAgICAgICAgICAgICAgIHNwZWVkbHM6IDAsCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOiBbNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIDUxLCA1NV0sCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZV9vbm1vYmlsZTogIm9uIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9mZiIsCiAgICAgICAgICAgICAgICBzdG9wQWZ0ZXJMb29wczogLTEsCiAgICAgICAgICAgICAgICBzdG9wQXRTbGlkZTogLTEsCiAgICAgICAgICAgICAgICBzaHVmZmxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzE3XzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMTdfMSIpIDogaSgiI3Jldl9zbGlkZXJfMTdfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJzdGFuZGFyZCIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGtleWJvYXJkX2RpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsTmF2aWdhdGlvbjogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbW91c2VTY3JvbGxSZXZlcnNlOiAiZGVmYXVsdCIsCiAgICAgICAgICAgICAgICAgICAgb25Ib3ZlclN0b3A6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGJ1bGxldHM6IHsKICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiAhMQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjhdLAogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyMDAsIDExOTksIDk5MiwgNzY4XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgcGFyYWxsYXg6IHsKICAgICAgICAgICAgICAgICAgICB0eXBlOiAibW91c2UiLAogICAgICAgICAgICAgICAgICAgIG9yaWdvOiAiZW50ZXJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDQwMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGJnOiAwLAogICAgICAgICAgICAgICAgICAgIHNwZWVkbHM6IDAsCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOiBbNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIDUxLCA1NV0sCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZV9vbm1vYmlsZTogIm9uIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9mZiIsCiAgICAgICAgICAgICAgICBzdG9wQWZ0ZXJMb29wczogLTEsCiAgICAgICAgICAgICAgICBzdG9wQXRTbGlkZTogLTEsCiAgICAgICAgICAgICAgICBzaHVmZmxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzI0XzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMjRfMSIpIDogaSgiI3Jldl9zbGlkZXJfMjRfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJzdGFuZGFyZCIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGtleWJvYXJkX2RpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsTmF2aWdhdGlvbjogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbW91c2VTY3JvbGxSZXZlcnNlOiAiZGVmYXVsdCIsCiAgICAgICAgICAgICAgICAgICAgb25Ib3ZlclN0b3A6ICJvbiIsCiAgICAgICAgICAgICAgICAgICAgYXJyb3dzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiAiemV1cyIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogITAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25tb2JpbGU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICB0bXA6ICc8ZGl2IGNsYXNzPSJ0cC10aXRsZS13cmFwIj4gIFx0PGRpdiBjbGFzcz0idHAtYXJyLWltZ2hvbGRlciI+PC9kaXY+IDwvZGl2PicsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDIwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJyaWdodCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X2FsaWduOiAiY2VudGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAyMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfb2Zmc2V0OiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIHN0b3BMb29wOiAib2ZmIiwKICAgICAgICAgICAgICAgIHN0b3BBZnRlckxvb3BzOiAtMSwKICAgICAgICAgICAgICAgIHN0b3BBdFNsaWRlOiAtMSwKICAgICAgICAgICAgICAgIHNodWZmbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsCiAgICAgICAgICAgICAgICBoaWRlVGh1bWJzT25Nb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQ2FwdGlvbkF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQWxsQ2FwdGlvbkF0TGlsbWl0OiAwLAogICAgICAgICAgICAgICAgZGVidWdNb2RlOiAhMSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIHNpbXBsaWZ5QWxsOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfMjZfMSIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl8yNl8xIikgOiBpKCIjcmV2X3NsaWRlcl8yNl8xIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogOWUzLAogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogewogICAgICAgICAgICAgICAgICAgIG9uSG92ZXJTdG9wOiAib2ZmIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHZpc2liaWxpdHlMZXZlbHM6IFsxMjQwLCAxMDI0LCA3NzgsIDQ4MF0sCiAgICAgICAgICAgICAgICByZXNwb25zaXZlTGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjgsIDU3Nl0sCiAgICAgICAgICAgICAgICBncmlkd2lkdGg6IFsxMTQwLCA5NjAsIDcyMCwgNTQwXSwKICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs3MDAsIDY1MCwgNjAwLCA0MDBdLAogICAgICAgICAgICAgICAgbGF6eVR5cGU6ICJub25lIiwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9uIiwKICAgICAgICAgICAgICAgIHN0b3BBZnRlckxvb3BzOiAwLAogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6IC0xLAogICAgICAgICAgICAgICAgc2h1ZmZsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBhdXRvSGVpZ2h0OiAib2ZmIiwKICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwKICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsCiAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6ICExLAogICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7CiAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG5leHRTbGlkZU9uV2luZG93Rm9jdXM6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiAhMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgbnVsbCA9PSBpKCIjcmV2X3NsaWRlcl8yN18xIikucmV2b2x1dGlvbiA/IHJldnNsaWRlcl9zaG93RG91YmxlSnF1ZXJ5RXJyb3IoIiNyZXZfc2xpZGVyXzI3XzEiKSA6IGkoIiNyZXZfc2xpZGVyXzI3XzEiKS5zaG93KCkucmV2b2x1dGlvbih7CiAgICAgICAgICAgICAgICBzbGlkZXJUeXBlOiAiaGVybyIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHt9LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzMwXzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMzBfMSIpIDogaSgiI3Jldl9zbGlkZXJfMzBfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJoZXJvIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogOWUzLAogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjoge30sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTI0MCwgMTAyNCwgNzc4LCA0ODBdLAogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyMDAsIDExOTksIDk5MiwgNzY4LCA1NzZdLAogICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTE0MCwgOTYwLCA3MjAsIDU0MF0sCiAgICAgICAgICAgICAgICBncmlkaGVpZ2h0OiBbNzAwLCA2NTAsIDYwMCwgNDAwXSwKICAgICAgICAgICAgICAgIGxhenlUeXBlOiAibm9uZSIsCiAgICAgICAgICAgICAgICBzaGFkb3c6IDAsCiAgICAgICAgICAgICAgICBzcGlubmVyOiAic3Bpbm5lcjAiLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsCiAgICAgICAgICAgICAgICBoaWRlVGh1bWJzT25Nb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQ2FwdGlvbkF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQWxsQ2FwdGlvbkF0TGlsbWl0OiAwLAogICAgICAgICAgICAgICAgZGVidWdNb2RlOiAhMSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIHNpbXBsaWZ5QWxsOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfMzFfMSIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl8zMV8xIikgOiBpKCIjcmV2X3NsaWRlcl8zMV8xIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogOWUzLAogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogewogICAgICAgICAgICAgICAgICAgIGtleWJvYXJkTmF2aWdhdGlvbjogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAga2V5Ym9hcmRfZGlyZWN0aW9uOiAiaG9yaXpvbnRhbCIsCiAgICAgICAgICAgICAgICAgICAgbW91c2VTY3JvbGxOYXZpZ2F0aW9uOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBtb3VzZVNjcm9sbFJldmVyc2U6ICJkZWZhdWx0IiwKICAgICAgICAgICAgICAgICAgICBvbkhvdmVyU3RvcDogIm9uIiwKICAgICAgICAgICAgICAgICAgICB0aHVtYm5haWxzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiAiaGFkZXMiLAogICAgICAgICAgICAgICAgICAgICAgICBlbmFibGU6ICEwLAogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAsCiAgICAgICAgICAgICAgICAgICAgICAgIG1pbl93aWR0aDogMTAwLAogICAgICAgICAgICAgICAgICAgICAgICB3cmFwcGVyX3BhZGRpbmc6IDUsCiAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJfY29sb3I6ICJ0cmFuc3BhcmVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRtcDogJzxzcGFuIGNsYXNzPSJ0cC10aHVtYi1pbWctd3JhcCI+ICA8c3BhbiBjbGFzcz0idHAtdGh1bWItaW1hZ2UiPjwvc3Bhbj48L3NwYW4+JywKICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJsZUFtb3VudDogNSwKICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9vbm1vYmlsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgICAgICBzcGFuOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJpbm5lciIsCiAgICAgICAgICAgICAgICAgICAgICAgIHNwYWNlOiA1LAogICAgICAgICAgICAgICAgICAgICAgICBoX2FsaWduOiAiY2VudGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgdl9hbGlnbjogImJvdHRvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAwLAogICAgICAgICAgICAgICAgICAgICAgICB2X29mZnNldDogNDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIHN0b3BMb29wOiAib2ZmIiwKICAgICAgICAgICAgICAgIHN0b3BBZnRlckxvb3BzOiAtMSwKICAgICAgICAgICAgICAgIHN0b3BBdFNsaWRlOiAtMSwKICAgICAgICAgICAgICAgIHNodWZmbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsCiAgICAgICAgICAgICAgICBoaWRlVGh1bWJzT25Nb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQ2FwdGlvbkF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQWxsQ2FwdGlvbkF0TGlsbWl0OiAwLAogICAgICAgICAgICAgICAgZGVidWdNb2RlOiAhMSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIHNpbXBsaWZ5QWxsOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfMzJfMSIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl8zMl8xIikgOiBpKCIjcmV2X3NsaWRlcl8zMl8xIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogOWUzLAogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogewogICAgICAgICAgICAgICAgICAgIG9uSG92ZXJTdG9wOiAib2ZmIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHZpc2liaWxpdHlMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgcGFyYWxsYXg6IHsKICAgICAgICAgICAgICAgICAgICB0eXBlOiAibW91c2UiLAogICAgICAgICAgICAgICAgICAgIG9yaWdvOiAiZW50ZXJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDQwMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGJnOiAwLAogICAgICAgICAgICAgICAgICAgIHNwZWVkbHM6IDAsCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOiBbNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIDUxLCA1NV0sCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZV9vbm1vYmlsZTogIm9uIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9mZiIsCiAgICAgICAgICAgICAgICBzdG9wQWZ0ZXJMb29wczogLTEsCiAgICAgICAgICAgICAgICBzdG9wQXRTbGlkZTogLTEsCiAgICAgICAgICAgICAgICBzaHVmZmxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzMzXzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMzNfMSIpIDogaSgiI3Jldl9zbGlkZXJfMzNfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJzdGFuZGFyZCIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBvbkhvdmVyU3RvcDogIm9mZiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTI0MCwgMTAyNCwgNzc4LCA0ODBdLAogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyMDAsIDExOTksIDk5MiwgNzY4LCA1NzZdLAogICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTE0MCwgOTYwLCA3MjAsIDU0MF0sCiAgICAgICAgICAgICAgICBncmlkaGVpZ2h0OiBbNzAwLCA2NTAsIDYwMCwgNDAwXSwKICAgICAgICAgICAgICAgIGxhenlUeXBlOiAibm9uZSIsCiAgICAgICAgICAgICAgICBzaGFkb3c6IDAsCiAgICAgICAgICAgICAgICBzcGlubmVyOiAic3Bpbm5lcjAiLAogICAgICAgICAgICAgICAgc3RvcExvb3A6ICJvZmYiLAogICAgICAgICAgICAgICAgc3RvcEFmdGVyTG9vcHM6IC0xLAogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6IC0xLAogICAgICAgICAgICAgICAgc2h1ZmZsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBhdXRvSGVpZ2h0OiAib2ZmIiwKICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwKICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsCiAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6ICExLAogICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7CiAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG5leHRTbGlkZU9uV2luZG93Rm9jdXM6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiAhMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgbnVsbCA9PSBpKCIjcmV2X3NsaWRlcl8zNF8xIikucmV2b2x1dGlvbiA/IHJldnNsaWRlcl9zaG93RG91YmxlSnF1ZXJ5RXJyb3IoIiNyZXZfc2xpZGVyXzM0XzEiKSA6IGkoIiNyZXZfc2xpZGVyXzM0XzEiKS5zaG93KCkucmV2b2x1dGlvbih7CiAgICAgICAgICAgICAgICBzbGlkZXJUeXBlOiAic3RhbmRhcmQiLAogICAgICAgICAgICAgICAgc2xpZGVyTGF5b3V0OiAiZnVsbHdpZHRoIiwKICAgICAgICAgICAgICAgIGRvdHRlZE92ZXJsYXk6ICJub25lIiwKICAgICAgICAgICAgICAgIGRlbGF5OiA5ZTMsCiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7CiAgICAgICAgICAgICAgICAgICAga2V5Ym9hcmROYXZpZ2F0aW9uOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZF9kaXJlY3Rpb246ICJob3Jpem9udGFsIiwKICAgICAgICAgICAgICAgICAgICBtb3VzZVNjcm9sbE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsUmV2ZXJzZTogImRlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgIG9uSG92ZXJTdG9wOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBhcnJvd3M6IHsKICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6ICJoZXBoYWlzdG9zIiwKICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiAhMCwKICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9vbm1vYmlsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHRtcDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDIwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJyaWdodCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X2FsaWduOiAiY2VudGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAyMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfb2Zmc2V0OiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExNDAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzcwMCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIHN0b3BMb29wOiAib2ZmIiwKICAgICAgICAgICAgICAgIHN0b3BBZnRlckxvb3BzOiAtMSwKICAgICAgICAgICAgICAgIHN0b3BBdFNsaWRlOiAtMSwKICAgICAgICAgICAgICAgIHNodWZmbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsCiAgICAgICAgICAgICAgICBoaWRlVGh1bWJzT25Nb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQ2FwdGlvbkF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQWxsQ2FwdGlvbkF0TGlsbWl0OiAwLAogICAgICAgICAgICAgICAgZGVidWdNb2RlOiAhMSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIHNpbXBsaWZ5QWxsOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfMzVfMSIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl8zNV8xIikgOiBpKCIjcmV2X3NsaWRlcl8zNV8xIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsCiAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsCiAgICAgICAgICAgICAgICBkZWxheTogOWUzLAogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogewogICAgICAgICAgICAgICAgICAgIG9uSG92ZXJTdG9wOiAib2ZmIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHZpc2liaWxpdHlMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjAwLCAxMTk5LCA5OTIsIDc2OCwgNTc2XSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzExMTAsIDk2MCwgNzIwLCA1NDBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzg1MCwgNjUwLCA2MDAsIDQwMF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgcGFyYWxsYXg6IHsKICAgICAgICAgICAgICAgICAgICB0eXBlOiAibW91c2UiLAogICAgICAgICAgICAgICAgICAgIG9yaWdvOiAiZW50ZXJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDcwMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGJnOiAwLAogICAgICAgICAgICAgICAgICAgIHNwZWVkbHM6IDAsCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOiBbNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIDUxLCA1NV0sCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZV9vbm1vYmlsZTogIm9uIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9mZiIsCiAgICAgICAgICAgICAgICBzdG9wQWZ0ZXJMb29wczogLTEsCiAgICAgICAgICAgICAgICBzdG9wQXRTbGlkZTogLTEsCiAgICAgICAgICAgICAgICBzaHVmZmxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzM2XzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMzZfMSIpIDogaSgiI3Jldl9zbGlkZXJfMzZfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJzdGFuZGFyZCIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBvbkhvdmVyU3RvcDogIm9mZiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjgsIDU3Nl0sCiAgICAgICAgICAgICAgICByZXNwb25zaXZlTGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjgsIDU3Nl0sCiAgICAgICAgICAgICAgICBncmlkd2lkdGg6IFsxMTEwLCA5NjAsIDcyMCwgNTQwXSwKICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs3MDAsIDY1MCwgNjAwLCA0MDBdLAogICAgICAgICAgICAgICAgbGF6eVR5cGU6ICJub25lIiwKICAgICAgICAgICAgICAgIHBhcmFsbGF4OiB7CiAgICAgICAgICAgICAgICAgICAgdHlwZTogIm1vdXNlIiwKICAgICAgICAgICAgICAgICAgICBvcmlnbzogImVudGVycG9pbnQiLAogICAgICAgICAgICAgICAgICAgIHNwZWVkOiA3MDAsCiAgICAgICAgICAgICAgICAgICAgc3BlZWRiZzogMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGxzOiAwLAogICAgICAgICAgICAgICAgICAgIGxldmVsczogWzUsIDEwLCAxNSwgMjAsIDI1LCAzMCwgMzUsIDQwLCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLCA1MSwgNTVdLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVfb25tb2JpbGU6ICJvbiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBzaGFkb3c6IDAsCiAgICAgICAgICAgICAgICBzcGlubmVyOiAic3Bpbm5lcjAiLAogICAgICAgICAgICAgICAgc3RvcExvb3A6ICJvZmYiLAogICAgICAgICAgICAgICAgc3RvcEFmdGVyTG9vcHM6IC0xLAogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6IC0xLAogICAgICAgICAgICAgICAgc2h1ZmZsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBhdXRvSGVpZ2h0OiAib2ZmIiwKICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwKICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsCiAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6ICExLAogICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7CiAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG5leHRTbGlkZU9uV2luZG93Rm9jdXM6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiAhMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgbnVsbCA9PSBpKCIjcmV2X3NsaWRlcl83XzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfN18xIikgOiBpKCIjcmV2X3NsaWRlcl83XzEiKS5zaG93KCkucmV2b2x1dGlvbih7CiAgICAgICAgICAgICAgICBzbGlkZXJUeXBlOiAic3RhbmRhcmQiLAogICAgICAgICAgICAgICAgc2xpZGVyTGF5b3V0OiAiZnVsbHdpZHRoIiwKICAgICAgICAgICAgICAgIGRvdHRlZE92ZXJsYXk6ICJub25lIiwKICAgICAgICAgICAgICAgIGRlbGF5OiA5ZTMsCiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7CiAgICAgICAgICAgICAgICAgICAgb25Ib3ZlclN0b3A6ICJvZmYiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyMDAsIDExOTksIDk5MiwgNzY4LCA1NzZdLAogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyMDAsIDExOTksIDk5MiwgNzY4LCA1NzZdLAogICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTExMCwgOTYwLCA3MjAsIDU0MF0sCiAgICAgICAgICAgICAgICBncmlkaGVpZ2h0OiBbNzAwLCA2NTAsIDYwMCwgNDAwXSwKICAgICAgICAgICAgICAgIGxhenlUeXBlOiAibm9uZSIsCiAgICAgICAgICAgICAgICBwYXJhbGxheDogewogICAgICAgICAgICAgICAgICAgIHR5cGU6ICJtb3VzZSIsCiAgICAgICAgICAgICAgICAgICAgb3JpZ286ICJlbnRlcnBvaW50IiwKICAgICAgICAgICAgICAgICAgICBzcGVlZDogNzAwLAogICAgICAgICAgICAgICAgICAgIHNwZWVkYmc6IDAsCiAgICAgICAgICAgICAgICAgICAgc3BlZWRsczogMCwKICAgICAgICAgICAgICAgICAgICBsZXZlbHM6IFs1LCAxMCwgMTUsIDIwLCAyNSwgMzAsIDM1LCA0MCwgNDUsIDQ2LCA0NywgNDgsIDQ5LCA1MCwgNTEsIDU1XSwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlX29ubW9iaWxlOiAib24iCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIHN0b3BMb29wOiAib2ZmIiwKICAgICAgICAgICAgICAgIHN0b3BBZnRlckxvb3BzOiAtMSwKICAgICAgICAgICAgICAgIHN0b3BBdFNsaWRlOiAtMSwKICAgICAgICAgICAgICAgIHNodWZmbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsCiAgICAgICAgICAgICAgICBoaWRlVGh1bWJzT25Nb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQ2FwdGlvbkF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBoaWRlQWxsQ2FwdGlvbkF0TGlsbWl0OiAwLAogICAgICAgICAgICAgICAgZGVidWdNb2RlOiAhMSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIHNpbXBsaWZ5QWxsOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIG51bGwgPT0gaSgiI3Jldl9zbGlkZXJfOF8xIikucmV2b2x1dGlvbiA/IHJldnNsaWRlcl9zaG93RG91YmxlSnF1ZXJ5RXJyb3IoIiNyZXZfc2xpZGVyXzhfMSIpIDogaSgiI3Jldl9zbGlkZXJfOF8xIikuc2hvdygpLnJldm9sdXRpb24oewogICAgICAgICAgICAgICAgc2xpZGVyTGF5b3V0OiAiZnVsbHdpZHRoIiwKICAgICAgICAgICAgICAgIGRvdHRlZE92ZXJsYXk6ICJub25lIiwKICAgICAgICAgICAgICAgIGRlbGF5OiA5ZTMsCiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7fSwKICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVMZXZlbHM6IFsxMjQwLCAxMDI0LCA3NzgsIDQ4MF0sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTI0MCwgMTAyNCwgNzc4LCA0ODBdLAogICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTkyMCwgMTAyNCwgNzc4LCA0ODBdLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogWzc4NywgNTAwLCA0MDAsIDM1MF0sCiAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzlfMSIpLnJldm9sdXRpb24gPyByZXZzbGlkZXJfc2hvd0RvdWJsZUpxdWVyeUVycm9yKCIjcmV2X3NsaWRlcl85XzEiKSA6IGkoIiNyZXZfc2xpZGVyXzlfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImF1dG8iLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDllMywKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBvbkhvdmVyU3RvcDogIm9mZiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByZXNwb25zaXZlTGV2ZWxzOiBbMTI0MCwgMTAyNCwgNzc4LCA0ODBdLAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogWzE5MjAsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs3MDAsIDFlMywgMWUzLCA4MDBdLAogICAgICAgICAgICAgICAgbGF6eVR5cGU6ICJub25lIiwKICAgICAgICAgICAgICAgIHNoYWRvdzogMCwKICAgICAgICAgICAgICAgIHNwaW5uZXI6ICJzcGlubmVyMCIsCiAgICAgICAgICAgICAgICBzdG9wTG9vcDogIm9mZiIsCiAgICAgICAgICAgICAgICBzdG9wQWZ0ZXJMb29wczogLTEsCiAgICAgICAgICAgICAgICBzdG9wQXRTbGlkZTogLTEsCiAgICAgICAgICAgICAgICBzaHVmZmxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLAogICAgICAgICAgICAgICAgZGlzYWJsZVByb2dyZXNzQmFyOiAib24iLAogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDogMCwKICAgICAgICAgICAgICAgIGRlYnVnTW9kZTogITEsCiAgICAgICAgICAgICAgICBmYWxsYmFja3M6IHsKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBudWxsID09IGkoIiNyZXZfc2xpZGVyXzE1XzEiKS5yZXZvbHV0aW9uID8gcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfMTVfMSIpIDogaSgiI3Jldl9zbGlkZXJfMTVfMSIpLnNob3coKS5yZXZvbHV0aW9uKHsKICAgICAgICAgICAgICAgIHNsaWRlclR5cGU6ICJzdGFuZGFyZCIsCiAgICAgICAgICAgICAgICBzbGlkZXJMYXlvdXQ6ICJmdWxsd2lkdGgiLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgZGVsYXk6IDc1MDAsCiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7CiAgICAgICAgICAgICAgICAgICAga2V5Ym9hcmROYXZpZ2F0aW9uOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZF9kaXJlY3Rpb246ICJob3Jpem9udGFsIiwKICAgICAgICAgICAgICAgICAgICBtb3VzZVNjcm9sbE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsUmV2ZXJzZTogImRlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgIG9uSG92ZXJTdG9wOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBidWxsZXRzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogITAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25tb2JpbGU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogImVyaW55ZW4iLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246ICJob3Jpem9udGFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgaF9hbGlnbjogImNlbnRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJib3R0b20iLAogICAgICAgICAgICAgICAgICAgICAgICBoX29mZnNldDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDQwLAogICAgICAgICAgICAgICAgICAgICAgICBzcGFjZTogNSwKICAgICAgICAgICAgICAgICAgICAgICAgdG1wOiAiIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjgsIDU3Nl0sCiAgICAgICAgICAgICAgICByZXNwb25zaXZlTGV2ZWxzOiBbMTIwMCwgMTE5OSwgOTkyLCA3NjgsIDU3Nl0sCiAgICAgICAgICAgICAgICBncmlkd2lkdGg6IFsxMTQwLCA5NjAsIDcyMCwgNTQwXSwKICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs3MDAsIDY1MCwgNjAwLCA0MDBdLAogICAgICAgICAgICAgICAgbGF6eVR5cGU6ICJub25lIiwKICAgICAgICAgICAgICAgIHBhcmFsbGF4OiB7CiAgICAgICAgICAgICAgICAgICAgdHlwZTogIm1vdXNlIiwKICAgICAgICAgICAgICAgICAgICBvcmlnbzogImVudGVycG9pbnQiLAogICAgICAgICAgICAgICAgICAgIHNwZWVkOiA0MDAsCiAgICAgICAgICAgICAgICAgICAgc3BlZWRiZzogMCwKICAgICAgICAgICAgICAgICAgICBzcGVlZGxzOiAwLAogICAgICAgICAgICAgICAgICAgIGxldmVsczogWzUsIDEwLCAxNSwgMjAsIDI1LCAzMCwgMzUsIDQwLCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLCA1MSwgNTVdLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVfb25tb2JpbGU6ICJvbiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBzaGFkb3c6IDAsCiAgICAgICAgICAgICAgICBzcGlubmVyOiAic3Bpbm5lcjAiLAogICAgICAgICAgICAgICAgc3RvcExvb3A6ICJvZmYiLAogICAgICAgICAgICAgICAgc3RvcEFmdGVyTG9vcHM6IC0xLAogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6IC0xLAogICAgICAgICAgICAgICAgc2h1ZmZsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBhdXRvSGVpZ2h0OiAib2ZmIiwKICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwKICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsCiAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwKICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsCiAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6ICExLAogICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7CiAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG5leHRTbGlkZU9uV2luZG93Rm9jdXM6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiAhMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgICAgICAvbG9hZGVkfGludGVyYWN0aXZlfGNvbXBsZXRlLy50ZXN0KGRvY3VtZW50LnJlYWR5U3RhdGUpID8gZSgpIDogZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIGUpCiAgICB9KCkKfShqUXVlcnkpOw=="}},"time_used":87,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"receive":61,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/cl15.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.353Z","timestamp":1785154589353,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/cl15.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 1554\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1554,"size_decoded":1819,"mime_type":"image/png","magic":"PNG image data, 144 x 29, 8-bit colormap, non-interlaced","md5":"c3926e28677cdc8167667b3b49105be6","sha1":"ca7d2adefd8c54e217dd32d0999aac9e4db2418d","sha256":"22cc9ca3c7f626a056cfb1bfe21026cf1a8c9ebff9b6ce7ad81b15fdda1ef580","sha512":"e22f0a9e3eb079cf04f148c3cacd9543931f2f69f297bb0a853d18cec8f72ceea1bae479c429877453c5968911022b613f50c9c3bee84a979f91c176115033ca","ssdeep":"","tlshash":"ad31c9f9f4391a6a8e7d1164eca40e9ed7e743583c4b5b17b933c42869b10026b75e50","first_seen":"2025-07-30T23:06:03.983486Z","last_seen":"2026-07-27T12:17:29.244405Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":93,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":33,"receive":60,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/8408.de534663e052075ba12f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.196Z","timestamp":1785154590196,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/8408.de534663e052075ba12f.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a338e19-274d\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 18 Jun 2026 06:20:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/18/2026 10:28:50\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f75f18536f80a5eaaafc9fc4ebe0916a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":10061,"size_decoded":2244,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (10061), with no line terminators","md5":"1a43de6a5db68cdffb5be29be8c611ea","sha1":"3cd66aa1e4e9e97cd58ad3ba8f6af15ad6c8fde1","sha256":"3f9db9383ecbe7095a61cb68292e437e948824de33abb3b09239c5effac91b84","sha512":"6735b9616b71290aa8fca75a177841e1cac8bb0193205099110ee83ffc75603098ead364960c2f7f86c7848f9fc3a784a56f615ecba08502e87028ebcc46eaa7","ssdeep":"192:zx9ZzZ8+bBPb+8b7XbnVb1pcGbM9zzZxZwG3TKO0/xavh42fmmw0TuUBJuHbRPuF:zxbl4zlvwG3GVxa2ruiUBsHdPunkS","tlshash":"62227526b95302617c2b5a3d0270affc6936cb939ac387dead10e1344fc75c9a297d85","first_seen":"2026-06-18T11:35:39.145966Z","last_seen":"2026-07-27T14:18:36.34389Z","times_seen":3169,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtUVpDcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVFaQ3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LW1hcmtldC1zdGF0dXNfX2RvdHtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXR7Y29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1pbnZhbGlkIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1yZXBsYXl7Y29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXl7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWRhbmdlci1hY3RpdmUpfS50di1tYXJrZXQtc3RhdHVzLS1uaWdodHtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItc2VtaS1ib2xkKX0udHYtbWFya2V0LXN0YXR1cy0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uX193aXRoSWNvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpfX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb25fX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKTtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4Oy13ZWJraXQtbWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7bWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcHJlLjdkMzdkY2NhMjM0ODMzZDEyYzQzLnN2Zyk7bWFzazp1cmwobWFya2V0LXByZS43ZDM3ZGNjYTIzNDgzM2QxMmM0My5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1wb3N0LW1hcmtldF9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7bWFzazp1cmwobWFya2V0LXBvc3QuOWYyYzViZmRhOTQwNWEyOTFmOTAuc3ZnKTstd2Via2l0LW1hc2stcG9zaXRpb246Y2VudGVyO21hc2stcG9zaXRpb246Y2VudGVyOy13ZWJraXQtbWFzay1zaXplOmNvdmVyO21hc2stc2l6ZTpjb3Zlcjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0taG9saWRheV9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKX19LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXlfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtaG9saWRheS40M2NhMzNkNjkwOTM5YjkzOTc4Ni5zdmcpO21hc2s6dXJsKG1hcmtldC1ob2xpZGF5LjQzY2EzM2Q2OTA5MzliOTM5Nzg2LnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29ue2hlaWdodDoxOHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4O3dpZHRoOjE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZF9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX19LnR2LW1hcmtldC1zdGF0dXMtLWRlbGlzdGVkX193aXRoSWNvbjphZnRlcntib3JkZXItcmFkaXVzOjZweDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7b3BhY2l0eToxNSU7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpO21hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tbmlnaHRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9fS50di1tYXJrZXQtc3RhdHVzLS1uaWdodF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcG9zdC45ZjJjNWJmZGE5NDA1YTI5MWY5MC5zdmcpO21hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6aW5saW5lLXN0YXJ0O21hcmdpbi1pbmxpbmUtZW5kOjB9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1wb3N0LW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbntjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbiAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLWludmFsaWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taG9saWRheXtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1ob2xpZGF5IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHR7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnR7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlcnttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luOmF1dG8gM3B4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXN0aWNreS1zeW1ib2wtaGVhZGVyLC50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLXRhcGV7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDt0cmFuc2Zvcm06dHJhbnNsYXRlWCg0cHgpfS50di1tYXJrZXQtc3RhdHVzLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LW1hcmtldC1zdGF0dXMtLWZvci10aWNrZXItdGFwZTpkaXIocnRsKXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNHB4KX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpmbGV4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1jaGFydHtoZWlnaHQ6NnB4O21hcmdpbi1yaWdodDo0cHg7dmVydGljYWwtYWxpZ246MXB4O3dpZHRoOjZweH0udHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWNhcmR7aGVpZ2h0OjZweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDo2cHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luLWJvdHRvbTozcHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1sYXN0e2hlaWdodDo2cHg7d2lkdGg6NnB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGV7aGVpZ2h0OjRweDt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItY2hhcnR7ZGlzcGxheTpibG9jaztmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1jaGFydDpkaXIocnRsKXttYXJnaW4taW5saW5lLWVuZDo2cHh9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1jYXJkLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWxhc3QsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGUsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itd2F0Y2gtbGlzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXIsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWNhcmQsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItbGFzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItdGFwZSwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci13YXRjaC1saXN0e2Rpc3BsYXk6bm9uZX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQ6ZGlyKHJ0bCl7bWFyZ2luLWlubGluZS1zdGFydDowfS50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQtLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldF9fd2l0aEljb257ZGlzcGxheTpub25lIWltcG9ydGFudH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0e21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0OmFmdGVye2Rpc3BsYXk6bm9uZX0="}},"time_used":6,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/39070.55cbc7a1da963b3829b3.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.471Z","timestamp":1785154590471,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/39070.55cbc7a1da963b3829b3.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 20\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b72-14\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:22 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4fe54b2368232ff25528f563d8a9c259\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":20,"size_decoded":804,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"8c361f5f3e81eca6f243f991934acfb8","sha1":"cca2cc0145571af645e93a0eea492681a68d4db1","sha256":"b7db039e8731af6abd4fe1cad1c082f9a54cac9bfae4de52cac6cbb64431ff06","sha512":"94498523c2221fd084df6e33d95e80c4f0dcc1054ff64a84c7c5309491e66301e34045b6df7d5247854e2893bf8e3fd6ca8b22f2e40daebcad83853dec330ad8","ssdeep":"","tlshash":"757000020028200280800800222000000003023a2a880000a80080200802aa08a0a00a","first_seen":"2026-01-06T10:31:31.715579Z","last_seen":"2026-07-27T14:18:36.387628Z","times_seen":7381,"resource_available":false,"data":"OmZvY3Vze291dGxpbmU6bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/20354.2ddf934f8edc2802d90a.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.475Z","timestamp":1785154590475,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/20354.2ddf934f8edc2802d90a.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-4c0f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e731a26b62f2634b1e119f92be1d5f60\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":19471,"size_decoded":3320,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (19471), with no line terminators","md5":"862a961c39b7410a362cc06ade612375","sha1":"0c7a395968e24e835ade4687d6738865085e0e3a","sha256":"bab109cd7e0f582023950c24ed2f621684d739836c3dd4a8ec06defa4fe2c79a","sha512":"4349960f67b7538f48f9093de4c5f5d571167e0bfa535df0fa4bece73a757b23be6f06dc372fbd20958defade650741ef4ea329a326b707bf80a291c3f7c8fe0","ssdeep":"96:oeExfo1CyDi6qKiVncAB009Fb0g7i3J/KjA+f7GRX6fXGq/J5FzalqIsoNIhYnwa:o/ty+6IcpcA+f7GRX6fXGq1JIsqGsM0V","tlshash":"ab9259dbb1d4a8307dd161e9d35a316ca7d1ec38f9132cc3faa9e45248c1bf224b8566","first_seen":"2026-07-16T13:40:49.886491Z","last_seen":"2026-07-27T14:23:37.783683Z","times_seen":348,"resource_available":false,"data":"LmJ1dHRvbi1tTEVoQ3JWd3thbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZDp2YXIoLS11aS1saWItc3F1YXJlQnV0dG9uLWJhY2tncm91bmQsdmFyKC0tdWktbGliLWJ1dHRvbi1jb2xvci1iZyx2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmcpKSk7Ym9yZGVyLWNvbG9yOnZhcigtLXVpLWxpYi1zcXVhcmVCdXR0b24tYm9yZGVyLWNvbG9yLHZhcigtLXVpLWxpYi1idXR0b24tY29sb3ItYm9yZGVyLHZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXIpKSk7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLXVpLWxpYi1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcix2YXIoLS11aS1saWItYnV0dG9uLWNvbG9yLWNvbnRlbnQsdmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3IpKSk7ZGlzcGxheTppbmxpbmUtZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21heC13aWR0aDoxMDAlO3BhZGRpbmctYm90dG9tOjA7cGFkZGluZy1pbmxpbmUtZW5kOnZhcigtLXVpLWxpYi1zcXVhcmVCdXR0b24tcGFkZGluZy1yaWdodCx2YXIoLS11aS1saWItYnV0dG9uLXBhZGRpbmctcmlnaHQsdmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXBhZGRpbmctcmlnaHQpKSk7cGFkZGluZy10b3A6MDtwYWRkaW5nLWlubGluZS1zdGFydDp2YXIoLS11aS1saWItc3F1YXJlQnV0dG9uLXBhZGRpbmctbGVmdCx2YXIoLS11aS1saWItYnV0dG9uLXBhZGRpbmctbGVmdCx2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcGFkZGluZy1sZWZ0KSkpOy0tdWktbGliLXNpemUtZGVmOnZhcigtLXVpLWxpYi1pbi1zcXVhcmVCdXR0b24tc2l6ZSx2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tc2l6ZSw0KSk7LS11aS1saWItc2l6ZS1kZWYteHNtYWxsOmNhbGMobWF4KDAsIDEgLSAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDIpICogKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAyKSkpOy0tdWktbGliLXNpemUtZGVmLXNtYWxsOmNhbGMobWF4KDAsIDEgLSAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDMpICogKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAzKSkpOy0tdWktbGliLXNpemUtZGVmLW1lZGl1bTpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSA0KSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNCkpKTstLXVpLWxpYi1zaXplLWRlZi1sYXJnZTpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSA1KSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNSkpKTstLXVpLWxpYi1zaXplLWRlZi14bGFyZ2U6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNikgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDYpKSk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24taGVpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMjhweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMzRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjQwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjQ4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo1NnB4KTtoZWlnaHQ6dmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWhlaWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcGFkZGluZy1ob3I6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSo3cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjExcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSoxNXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSoyM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqMzFweCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcGFkZGluZy1sZWZ0OnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1wYWRkaW5nLWhvcik7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcGFkZGluZy1yaWdodDp2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcGFkZGluZy1ob3IpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXJhZGl1czpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoxMnB4KTtib3JkZXItcmFkaXVzOnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1yYWRpdXMpO3RyYW5zaXRpb246dmFyKC0tdWktbGliLXNxdWFyZUJ1dHRvbi10cmFuc2l0aW9uKX0uYnV0dG9uLW1MRWhDclZ3OmFmdGVye2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tcmFkaXVzKSArIDRweCl9LmJ1dHRvbi1tTEVoQ3JWd3tvdXRsaW5lOm5vbmU7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjpyZWxhdGl2ZX0uYnV0dG9uLW1MRWhDclZ3OmZvY3Vze291dGxpbmU6bm9uZX0uYnV0dG9uLW1MRWhDclZ3OmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS5idXR0b24tbUxFaENyVnc6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpub25lO2hlaWdodDpjYWxjKDEwMCUgKyAxMHB4KTtpbnNldC1pbmxpbmUtc3RhcnQ6LTVweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNXB4O3dpZHRoOmNhbGMoMTAwJSArIDEwcHgpO3otaW5kZXg6MX0uYnV0dG9uLW1MRWhDclZ3OmZvY3VzOmFmdGVye2Rpc3BsYXk6YmxvY2t9LmJ1dHRvbi1tTEVoQ3JWdzpmb2N1cy12aXNpYmxlOmFmdGVye2Rpc3BsYXk6YmxvY2t9LmJ1dHRvbi1tTEVoQ3JWdzpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpOmFmdGVye2Rpc3BsYXk6bm9uZX0uYnV0dG9uLW1MRWhDclZ3OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsdWUpfS5idXR0b24tbUxFaENyVncuaWNvbk9ubHktbUxFaENyVnd7aGVpZ2h0OnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1oZWlnaHQpO3dpZHRoOnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1oZWlnaHQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXBhZGRpbmctbGVmdDowOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXBhZGRpbmctcmlnaHQ6MH0uYnV0dG9uLW1MRWhDclZ3Om5vdCguaWNvbk9ubHktbUxFaENyVncpey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXBhZGRpbmctaG9yLXdpdGgtaWNvbjpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjdweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTFweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjE1cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjIzcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSozMXB4KTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1tYXJnaW4tYmV0d2Vlbi1pY29uczpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo4cHgpfS5idXR0b24tbUxFaENyVnc6bm90KC5pY29uT25seS1tTEVoQ3JWdykud2l0aFN0YXJ0U2xvdC1tTEVoQ3JWd3stLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1wYWRkaW5nLWxlZnQ6dmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXBhZGRpbmctaG9yLXdpdGgtaWNvbil9LmJ1dHRvbi1tTEVoQ3JWdzpub3QoLmljb25Pbmx5LW1MRWhDclZ3KS53aXRoRW5kU2xvdC1tTEVoQ3JWd3stLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1wYWRkaW5nLXJpZ2h0OnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1wYWRkaW5nLWhvci13aXRoLWljb24pfS5idXR0b24tbUxFaENyVnc6bm90KC5pY29uT25seS1tTEVoQ3JWdykgLnN0YXJ0U2xvdFdyYXAtbUxFaENyVnd7bWFyZ2luLWlubGluZS1lbmQ6dmFyKC0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLW1hcmdpbi1iZXR3ZWVuLWljb25zKX0uYnV0dG9uLW1MRWhDclZ3Om5vdCguaWNvbk9ubHktbUxFaENyVncpIC5lbmRTbG90V3JhcC1tTEVoQ3JWd3ttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1tYXJnaW4tYmV0d2Vlbi1pY29ucyl9LnhzbWFsbC1tTEVoQ3JWd3stLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1zaXplOjJ9LnNtYWxsLW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXNpemU6M30ubWVkaXVtLW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLXNpemU6NH0ubGFyZ2UtbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tc2l6ZTo1fS54bGFyZ2UtbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tc2l6ZTo2fS5jb250ZW50LW1MRWhDclZ3e2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMTZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjE2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjE2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoxOHB4KTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjQwMCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqNDAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqNTAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo1MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo2MDApO2xpbmUtaGVpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqMThweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjI0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjI0cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSoyNHB4KTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lmljb25Pbmx5LW1MRWhDclZ3IC5jb250ZW50LW1MRWhDclZ3e2JvcmRlcjowO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweDtjbGlwOnJlY3QoMCAwIDAgMCk7b3ZlcmZsb3c6aGlkZGVufS5saW5rLW1MRWhDclZ3e2N1cnNvcjpwb2ludGVyOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5ibHVlLW1MRWhDclZ3LnByaW1hcnktbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2UpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJsdWUtbUxFaENyVncucHJpbWFyeS1tTEVoQ3JWdzpob3ZlcnstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX19fS5ibHVlLW1MRWhDclZ3LnByaW1hcnktbUxFaENyVnc6YWN0aXZley0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktaW52ZXJzZSl9LmJsdWUtbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50KTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50KX1AbWVkaWEgbm90IChwb2ludGVyOmNvYXJzZSl7QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ibHVlLW1MRWhDclZ3LnNlY29uZGFyeS1tTEVoQ3JWdzpob3ZlcnstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX19fS5ibHVlLW1MRWhDclZ3LnNlY29uZGFyeS1tTEVoQ3JWdzphY3RpdmV7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX0uZ3JheS1tTEVoQ3JWdy5wcmltYXJ5LW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmdyYXktbUxFaENyVncucHJpbWFyeS1tTEVoQ3JWdzpob3ZlcnstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX19fS5ncmF5LW1MRWhDclZ3LnByaW1hcnktbUxFaENyVnc6YWN0aXZley0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ub3JtYWwpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZCl9LmdyYXktbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50KTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1saWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmdyYXktbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3OmhvdmVyey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQpfX19LmdyYXktbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3OmFjdGl2ZXstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkKX0uZ3JlZW4tbUxFaENyVncucHJpbWFyeS1tTEVoQ3JWd3stLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX1AbWVkaWEgbm90IChwb2ludGVyOmNvYXJzZSl7QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ncmVlbi1tTEVoQ3JWdy5wcmltYXJ5LW1MRWhDclZ3OmhvdmVyey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktaW52ZXJzZSl9fX0uZ3JlZW4tbUxFaENyVncucHJpbWFyeS1tTEVoQ3JWdzphY3RpdmV7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2UpfS5ncmVlbi1tTEVoQ3JWdy5zZWNvbmRhcnktbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1ib3JkZXItcHJpbWFyeS1zdWNjZXNzKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzKX1AbWVkaWEgbm90IChwb2ludGVyOmNvYXJzZSl7QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ncmVlbi1tTEVoQ3JWdy5zZWNvbmRhcnktbUxFaENyVnc6aG92ZXJ7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1zZW1pLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX19fS5ncmVlbi1tTEVoQ3JWdy5zZWNvbmRhcnktbUxFaENyVnc6YWN0aXZley0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX0ucmVkLW1MRWhDclZ3LnByaW1hcnktbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXIpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlcik7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2UpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnJlZC1tTEVoQ3JWdy5wcmltYXJ5LW1MRWhDclZ3OmhvdmVyey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2UpfX19LnJlZC1tTEVoQ3JWdy5wcmltYXJ5LW1MRWhDclZ3OmFjdGl2ZXstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2UpfS5yZWQtbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3ey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50KTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlcik7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWRlZmF1bHQpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnJlZC1tTEVoQ3JWdy5zZWNvbmRhcnktbUxFaENyVnc6aG92ZXJ7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItc2VtaS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItc2VtaS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktaW52ZXJzZSl9fX0ucmVkLW1MRWhDclZ3LnNlY29uZGFyeS1tTEVoQ3JWdzphY3RpdmV7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlKX0uYmxhY2stbUxFaENyVncucHJpbWFyeS1tTEVoQ3JWd3stLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWludmVyc2UpfUBtZWRpYSBub3QgKHBvaW50ZXI6Y29hcnNlKXtAbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJsYWNrLW1MRWhDclZ3LnByaW1hcnktbUxFaENyVnc6aG92ZXJ7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tY29udGVudC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlKX19fS5ibGFjay1tTEVoQ3JWdy5wcmltYXJ5LW1MRWhDclZ3OmFjdGl2ZXstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWludmVyc2UpfS5ibGFjay1tTEVoQ3JWdy5zZWNvbmRhcnktbUxFaENyVnd7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYmc6dmFyKC0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJvcmRlcjp2YXIoLS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZCl9QG1lZGlhIG5vdCAocG9pbnRlcjpjb2Fyc2Upe0BtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuYmxhY2stbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3OmhvdmVyey0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWJnOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1ib3JkZXI6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpOy0tdWktbGliLXByaXZhdGUtc3F1YXJlQnV0dG9uLWNvbnRlbnQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9fX0uYmxhY2stbUxFaENyVncuc2Vjb25kYXJ5LW1MRWhDclZ3OmFjdGl2ZXstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1iZzp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtYm9sZCk7LS11aS1saWItcHJpdmF0ZS1zcXVhcmVCdXR0b24tYm9yZGVyOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkKTstLXVpLWxpYi1wcml2YXRlLXNxdWFyZUJ1dHRvbi1jb250ZW50LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWludmVyc2UpfS5wcmltYXJ5LW1MRWhDclZ3W2FyaWEtZGlzYWJsZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpfS5wcmltYXJ5LW1MRWhDclZ3W2FyaWEtZGlzYWJsZWQ9dHJ1ZV0sLnNlY29uZGFyeS1tTEVoQ3JWd1thcmlhLWRpc2FibGVkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbGlnaHQpO2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0KX0uc2Vjb25kYXJ5LW1MRWhDclZ3W2FyaWEtZGlzYWJsZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jb2xvci1vdGhlci10cmFuc3BhcmVudCl9LnNsb3QtbUxFaENyVnd7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zdHJldGNoLW1MRWhDclZ3e3dpZHRoOjEwMCV9LmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3LmFkanVzdFBvc2l0aW9uLW1MRWhDclZ3Om5vdCguZmlyc3RSb3ctbUxFaENyVncpe21hcmdpbi10b3A6LTFweH0uYnV0dG9uLW1MRWhDclZ3Lmdyb3VwZWQtbUxFaENyVncuYWRqdXN0UG9zaXRpb24tbUxFaENyVnc6bm90KC5maXJzdENvbC1tTEVoQ3JWdyl7bWFyZ2luLWlubGluZS1zdGFydDotMXB4O21heC13aWR0aDpjYWxjKDEwMCUgKyAxcHgpO3dpZHRoOmNhbGMoMTAwJSArIDFweCl9LmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3OmZvY3Vze3otaW5kZXg6MX0uYnV0dG9uLW1MRWhDclZ3Lmdyb3VwZWQtbUxFaENyVnc6Zm9jdXMtdmlzaWJsZXt6LWluZGV4OjF9LmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3OmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7ei1pbmRleDphdXRvfS5idXR0b24tbUxFaENyVncuZ3JvdXBlZC1tTEVoQ3JWdy5uby1jb3JuZXItdG9wLWxlZnQtbUxFaENyVncsLmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3Lm5vLWNvcm5lci10b3AtbGVmdC1tTEVoQ3JWdzphZnRlcntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjB9LmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3Lm5vLWNvcm5lci10b3AtcmlnaHQtbUxFaENyVncsLmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3Lm5vLWNvcm5lci10b3AtcmlnaHQtbUxFaENyVnc6YWZ0ZXJ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uYnV0dG9uLW1MRWhDclZ3Lmdyb3VwZWQtbUxFaENyVncubm8tY29ybmVyLWJvdHRvbS1yaWdodC1tTEVoQ3JWdywuYnV0dG9uLW1MRWhDclZ3Lmdyb3VwZWQtbUxFaENyVncubm8tY29ybmVyLWJvdHRvbS1yaWdodC1tTEVoQ3JWdzphZnRlcntib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5idXR0b24tbUxFaENyVncuZ3JvdXBlZC1tTEVoQ3JWdy5uby1jb3JuZXItYm90dG9tLWxlZnQtbUxFaENyVncsLmJ1dHRvbi1tTEVoQ3JWdy5ncm91cGVkLW1MRWhDclZ3Lm5vLWNvcm5lci1ib3R0b20tbGVmdC1tTEVoQ3JWdzphZnRlcntib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LnRleHRXcmFwLW1MRWhDclZ3e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5tdWx0aWxpbmVDb250ZW50LW1MRWhDclZ3e2hlaWdodDptaW4tY29udGVudDtwYWRkaW5nOmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqOXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo5cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSoxNXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSoyM3B4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqMjNweCk7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSozcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqNXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqNnB4KTtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjFweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1zbWFsbCkqMXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo1cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYteGxhcmdlKSo2cHgpfS5wcmltYXJ5VGV4dC1tTEVoQ3JWd3tmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxMnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxMnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMTRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjE2cHgpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqNjAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo2MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo2MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjYwMCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjYwMCk7bGluZS1oZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMThweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMThweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjI0cHgpO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5wcmltYXJ5VGV4dC1tTEVoQ3JWdywuc2Vjb25kYXJ5VGV4dC1tTEVoQ3JWd3tmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxUcmVidWNoZXQgTVMsUm9ib3RvLFVidW50dSxzYW5zLXNlcmlmO292ZXJmbG93OmhpZGRlbn0uc2Vjb25kYXJ5VGV4dC1tTEVoQ3JWd3tmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxMXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxMXB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMTJweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMTNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjEzcHgpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OmNhbGModmFyKC0tdWktbGliLXNpemUtZGVmLXhzbWFsbCkqNDAwICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSo0MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo0MDAgKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbGFyZ2UpKjQwMCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjQwMCk7bGluZS1oZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYteHNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXNtYWxsKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLW1lZGl1bSkqMTZweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqMThweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi14bGFyZ2UpKjE4cHgpO3RleHQtdHJhbnNmb3JtOnZhcigtLXVpLWxpYi1zcXVhcmVCdXR0b24tc2Vjb25kYXJ5LXRleHQtdHJhbnNmb3JtKTt3aGl0ZS1zcGFjZTpub3JtYWw7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKjE2cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjEycHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSoxNnB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSoxOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqMThweCk7ZGlzcGxheTotd2Via2l0LWJveDtsZXR0ZXItc3BhY2luZzpjYWxjKHZhcigtLXVpLWxpYi1zaXplLWRlZi14c21hbGwpKi40cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKi40cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSowICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSowICsgdmFyKC0tdWktbGliLXNpemUtZGVmLXhsYXJnZSkqMCk7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KTttYXgtaGVpZ2h0OmNhbGModmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpKjIpfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/37867.ec731ad102db6762e40c.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.533Z","timestamp":1785154590533,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/37867.ec731ad102db6762e40c.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b78-134\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:28 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 0e877a937e8aa6884d7e7fa355e1f370\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":308,"size_decoded":973,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (308), with no line terminators","md5":"935c55cc3e17810075bcce4ab81c1124","sha1":"af63671b9b4c5e480ce1ed8cf80fb5e6cd9a4901","sha256":"0660e1a2eac6aab1096c15e3927919c9f443ff7189df135f235a3aac5b88cd5a","sha512":"5fca3255a37ff2053cf3aac0373f856dd54b280aeeefee9e8f904f1c75266a63414feaa87a1bb692566c171879527baa045548e01ed46b623edd70d9cd15522d","ssdeep":"","tlshash":"01e026bc52740320ac308738b9ce8ccd3e05f22186c30e8ca942d602846d8c08860895","first_seen":"2025-07-09T23:41:09.652491Z","last_seen":"2026-07-27T14:22:59.684039Z","times_seen":1758,"resource_available":false,"data":"LnR2LWZsYWctY291bnRyeXtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjIwcHh9LnR2LWZsYWctY291bnRyeS0tc2l6ZV9ibG9jay10aXRsZXtoZWlnaHQ6MjJweDt3aWR0aDoyMnB4fS50di1mbGFnLWNvdW50cnktLWZvcmV4e2NvbG9yOnZhcigtLWNvbG9yLWZvcmV4LWljb24pfS50di1mbGFnLWNvdW50cnktLWJ0YywudHYtZmxhZy1jb3VudHJ5LS1mb3JleHtib3JkZXItcmFkaXVzOjA7b3ZlcmZsb3c6dmlzaWJsZX0="}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_ticker_tape_widget.965c90dc6d41319f132d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.239Z","timestamp":1785154590239,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/embed_ticker_tape_widget.965c90dc6d41319f132d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-4e48\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 685a7c969915b7e0c3595bcf1d594b80\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":20040,"size_decoded":8357,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3067)","md5":"8194369d30f2aef481ad9b0e75ee118e","sha1":"37a70e62467216b914515bcbdac9df29330d6ae5","sha256":"44ece61da7dd37300e68e5b567453707c97eafcbaccfab2e1cf62f6b05966071","sha512":"4371d06b7b2b3c3742f8395c8c142405ef02bdfae5eb8f48ebb626a5ef89ccac5e87891a1a1806d59bd827f4c45bd0043bcb15e4858bc5264022119f93954367","ssdeep":"384:sN6NujCBUjpEQ4aa20p3kHYB022b2jfMwttlhp4XYzNn0+fo1r7K/A5akkVC8WGq:sMsjCBmEQ4aa26y22b2jfMwt1p4XYhDS","tlshash":"7492e9133394247b80ea44eb91fd4647b6224888f6828818b96ccdce276ddd935b7f7d","first_seen":"2026-07-23T13:38:20.453766Z","last_seen":"2026-07-27T14:17:31.035343Z","times_seen":839,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0NzY3M10sezc1ODA1OShlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1wYWRkaW5nIjoiMTZweCIsImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLWhlaWdodC1ub3JtYWwiOiI0NHB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtaGVpZ2h0LWNvbXBhY3QiOiI3MnB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIjoiMzQ2cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1za2VsZXRvbi13aWR0aC1jb21wYWN0IjoiMTI1cHgifX0sMzE5MDk2KGUpe2UuZXhwb3J0cz17ImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLWhlaWdodC1ub3JtYWwiOiI0NHB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtaGVpZ2h0LWNvbXBhY3QiOiI3MnB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIjoiMzQ2cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1za2VsZXRvbi13aWR0aC1jb21wYWN0IjoiMTI1cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1wYWRkaW5nIjoiMTZweCJ9fSwzOTkwOTIoZSl7ZS5leHBvcnRzPXsiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcyI6Ii42cyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsImNzcy12YWx1ZS1jb3B5cmlnaHQtdHJhbnNpdGlvbi1wYXJhbXMtaGFsZi10aW1lIjoiLjNzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIixsYWJlbDoibGFiZWwtZHpiZDdseVYiLGxvZ29XcmFwOiJsb2dvV3JhcC1kemJkN2x5ViIsZXhwYW5kZWRXaXRoVHJhbnNpdGlvbjoiZXhwYW5kZWRXaXRoVHJhbnNpdGlvbi1kemJkN2x5ViIsZXhwYW5kZWRCeUNsaWNrOiJleHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYiLHN0YXJ0OiJzdGFydC1kemJkN2x5ViIsZW5kOiJlbmQtZHpiZDdseVYiLHNuYXA6InNuYXAtZHpiZDdseVYiLHRvcDoidG9wLWR6YmQ3bHlWIixib3R0b206ImJvdHRvbS1kemJkN2x5ViIsbGFyZ2U6ImxhcmdlLWR6YmQ3bHlWIixleHBhbmRlZDoiZXhwYW5kZWQtZHpiZDdseVYiLGxhYmVsX19saW5rOiJsYWJlbF9fbGluay1kemJkN2x5ViJ9fSw4NjcwNTEoZSl7ZS5leHBvcnRzPXt0aWNrZXJUYXBlOiJ0aWNrZXJUYXBlLU5fa3lwanQ5Iixub0F1dG9TY3JvbGw6Im5vQXV0b1Njcm9sbC1OX2t5cGp0OSIsdGFwZToidGFwZS1OX2t5cGp0OSIsaGVhZDoiaGVhZC1OX2t5cGp0OSIsdGFpbDoidGFpbC1OX2t5cGp0OSIsc2tlbGV0b246InNrZWxldG9uLU5fa3lwanQ5In19LDE1MDE1MChlLHQsaSl7InVzZSBzdHJpY3QiO2kuZCh0LHtndWlkOigpPT5uLHJhbmRvbUhhc2g6KCk9PmEscmFuZG9tSGFzaE46KCk9Pm99KTtjb25zdCBzPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiI7ZnVuY3Rpb24gbigpe3JldHVybiJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZywoZT0+e2NvbnN0IHQ9MTYqTWF0aC5yYW5kb20oKXwwO3JldHVybigieCI9PT1lP3Q6MyZ0fDgpLnRvU3RyaW5nKDE2KX0pKX1mdW5jdGlvbiBhKCl7cmV0dXJuIG8oMTIpfWZ1bmN0aW9uIG8oZSl7bGV0IHQ9IiI7Zm9yKGxldCBpPTA7aTxlOysraSl7Y29uc3QgZT1NYXRoLmZsb29yKDYyKk1hdGgucmFuZG9tKCkpO3QrPXNbZV19cmV0dXJuIHR9fSwxMzY5OTEoZSx0LGkpeyJ1c2Ugc3RyaWN0IjtpLmQodCx7Q29weXJpZ2h0UG9zaXRpb246KCk9PnMsY29weXJpZ2h0TGFiZWw6KCk9PmR9KTt2YXIgcyxuPWkoMTg1MjcxKSxhPWkoOTE0NDg3KSxvPWkubihhKSxyPWkoNjAxODQxKSxsPWkoMzg3MjMxKSxjPWkoMzk5MDkyKTtmdW5jdGlvbiBkKHtzdmdUZXh0OmUsaWNvbjp0LHRoZW1lOmEsdXJsOmQsbW9kZTpoLHZlcnRpY2FsUG9zaXRpb246bT1zLlZlcnRpY2FsLkJvdHRvbSxob3Jpem9udGFsUG9zaXRpb246cD1zLkhvcml6b250YWwuRW5kLHNuYXBUb0VkZ2U6dT0hMCxpc0V4cGFuZGVkOmc9ITEsY2xhc3NOYW1lOl99KXtsZXQgdjtzd2l0Y2goaCl7Y2FzZSJuZXciOmNhc2Uid2l0aF9ib3JkZXIiOmNhc2UibGFyZ2VfdHJhZGUiOnY9KDAsci5jbG9uZSkoYSk7YnJlYWs7ZGVmYXVsdDp2PSgwLGwubWVyZ2VUaGVtZXMpKCgwLHIuY2xvbmUpKGMpLGEpfWNvbnN0IHk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2xldCBiO2QmJihiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxiLmNsYXNzTGlzdC5hZGQoLi4udi5sYWJlbF9fbGluay5zcGxpdCgvXHMvKSksYi5ocmVmPWQsYi50YXJnZXQ9Il9ibGFuayIsYi5yZWw9Im5vb3BlbmVyIG5vcmVmZXJyZXIiLGIuc2V0QXR0cmlidXRlKCJkYXRhLXRhcmdldC10eXBlIiwiY29weXJpZ2h0IiksYi5hcmlhTGFiZWw9bi50KG51bGwsdm9pZCAwLGkoNTE3ODU5KSkseS5hcHBlbmQoYikpLHkuY2xhc3NOYW1lPW8oKSh2LmxhYmVsLHA9PT1zLkhvcml6b250YWwuU3RhcnQmJnYuc3RhcnQscD09PXMuSG9yaXpvbnRhbC5FbmQmJnYuZW5kLG09PT1zLlZlcnRpY2FsLlRvcCYmdi50b3AsbT09PXMuVmVydGljYWwuQm90dG9tJiZ2LmJvdHRvbSx1JiYibGFyZ2VfdHJhZGUiIT09aCYmdi5zbmFwLCJsYXJnZV9vbGQiPT09aCYmdi5sYXJnZSwoZ3x8ImxhcmdlX3RyYWRlIj09PWgpJiZ2LmV4cGFuZGVkLF8sImpzLWNvcHlyaWdodC1sYWJlbCIpLHkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgoKT0+e2Z1bmN0aW9uIGUoKXt5LmNsYXNzTGlzdC5yZW1vdmUodi5leHBhbmRlZEJ5Q2xpY2spLHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZSl9CnkuY2xhc3NMaXN0LmNvbnRhaW5zKHYuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbil8fHkuY2xhc3NMaXN0LmNvbnRhaW5zKHYuZXhwYW5kZWQpfHwoeS5jbGFzc0xpc3QuY29udGFpbnModi5leHBhbmRlZEJ5Q2xpY2spP2R8fGUoKTooeS5jbGFzc0xpc3QuYWRkKHYuZXhwYW5kZWRCeUNsaWNrKSx5LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpKSl9KSk7Y29uc3Qgaz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7ay5jbGFzc05hbWU9di5sb2dvV3JhcCxrLmlubmVySFRNTD10O2NvbnN0IGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBmLmNsYXNzTmFtZT12LnN2Z1RleHRXcmFwLGYuaW5uZXJIVE1MPWUseS5hcHBlbmQoayxmKSxbeSx2XX0hZnVuY3Rpb24oZSl7bGV0IHQsaTshZnVuY3Rpb24oZSl7ZVtlLkJvdHRvbT0wXT0iQm90dG9tIixlW2UuVG9wPTFdPSJUb3AifSh0PWUuVmVydGljYWx8fChlLlZlcnRpY2FsPXt9KSksZnVuY3Rpb24oZSl7ZVtlLlN0YXJ0PTBdPSJTdGFydCIsZVtlLkVuZD0xXT0iRW5kIn0oaT1lLkhvcml6b250YWx8fChlLkhvcml6b250YWw9e30pKX0oc3x8KHM9e30pKX0sNjUzODE3KGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5hLkNvcHlyaWdodFBvc2l0aW9uLGNyZWF0ZUNvcHlyaWdodExhYmVsOigpPT5yfSk7dmFyIHM9aSg5MTQ0ODcpLG49aS5uKHMpLGE9aSgxMzY5OTEpLG89aSg1Mjg4NjQpO2Z1bmN0aW9uIHIoe3NoZXJpZmZPcHRpb25zOmUsLi4udH0pe2NvbnN0W2ksc109KDAsYS5jb3B5cmlnaHRMYWJlbCkodCkscj1lJiZlLmluY2x1ZGVzKG8uS25vd25BY3Rpb24uRXhwYW5kKSxsPWUmJmUuaW5jbHVkZXMoby5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyk7cmV0dXJuIGkuY2xhc3NOYW1lPW4oKShpLmNsYXNzTmFtZSwocnx8bCkmJnMuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbiksaX19LDUyODg2NChlLHQsaSl7InVzZSBzdHJpY3QiO3ZhciBzO2kuZCh0LHtLbm93bkFjdGlvbjooKT0+cyx3aWRnZXRTaGVyaWZmQWN0aW9uczooKT0+bn0pLGZ1bmN0aW9uKGUpe2UuRXhwYW5kPSJleHBhbmQtbG9nbyIsZS5MYXJnZVRyYWRlTG9nbz0ibGFyZ2UtdHJhZGUtbG9nbyJ9KHN8fChzPXt9KSk7Y29uc3Qgbj1uZXcgU2V0KFtzLkV4cGFuZCxzLkxhcmdlVHJhZGVMb2dvXSl9LDExMjU0MihlLHQsaSl7InVzZSBzdHJpY3QiO2kuZCh0LHtnZXRDU1NQcm9wZXJ0eTooKT0+cixnZXRDU1NQcm9wZXJ0eU51bWVyaWNWYWx1ZTooKT0+bCxnZXRDb250ZW50V2lkdGg6KCk9PmEsZ2V0U2Nyb2xsYmFyV2lkdGg6KCk9PnMsbWF0Y2hNZWRpYU1pbk1heDooKT0+bixzZXRTdHlsZTooKT0+b30pO2NvbnN0IHM9KCgpPT57bGV0IGU7cmV0dXJuKCk9PntpZih2b2lkIDA9PT1lKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGk9dC5zdHlsZTtpLnZpc2liaWxpdHk9ImhpZGRlbiIsaS53aWR0aD0iMTAwcHgiLGkubXNPdmVyZmxvd1N0eWxlPSJzY3JvbGxiYXIiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7Y29uc3Qgcz10Lm9mZnNldFdpZHRoO3Quc3R5bGUub3ZlcmZsb3c9InNjcm9sbCI7Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLnN0eWxlLndpZHRoPSIxMDAlIix0LmFwcGVuZENoaWxkKG4pO2NvbnN0IGE9bi5vZmZzZXRXaWR0aDt0LnBhcmVudE5vZGU/LnJlbW92ZUNoaWxkKHQpLGU9cy1hfXJldHVybiBlfX0pKCk7ZnVuY3Rpb24gbihlLHQpe3JldHVybiB0PT09MS8wP3dpbmRvdy5tYXRjaE1lZGlhKGAobWluLXdpZHRoOiAke2V9cHgpYCk6d2luZG93Lm1hdGNoTWVkaWEoYChtaW4td2lkdGg6ICR7ZX1weCkgYW5kIChtYXgtd2lkdGg6ICR7dH1weClgKX1mdW5jdGlvbiBhKGUpe3JldHVybiBsKGUsIndpZHRoIiktbChlLCJwYWRkaW5nLWxlZnQiKS1sKGUsInBhZGRpbmctcmlnaHQiKX1mdW5jdGlvbiBvKGUsdCxpKXtudWxsIT09ZSYmZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LGkpfWZ1bmN0aW9uIHIoZSx0KXtyZXR1cm4gZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpLmdldFByb3BlcnR5VmFsdWUodCl9ZnVuY3Rpb24gbChlLHQpe3JldHVybiBwYXJzZUludChyKGUsdCkpfX0sMzE4OTc0KGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse0NoZWNrTW9iaWxlOigpPT5jLGlzRGVza3RvcEFwcDooKT0+cixpc01hYzooKT0+byxpc1N5bXBob255RW1iZWQ6KCk9Pmwsb25XaWRnZXQ6KCk9Pm4ub25XaWRnZXQsc3VwcG9ydFRvdWNoOigpPT5kfSk7dmFyIHM9aSg3Mzg0NTgpLG49aSgzNzcyMjYpO2NvbnN0IGE9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307ZnVuY3Rpb24gbygpe3JldHVybiBzLmlzTWFjfWZ1bmN0aW9uIHIoKXtyZXR1cm4vVFZEZXNrdG9wL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KX1mdW5jdGlvbiBsKCl7cmV0dXJuIGEuaXNTeW1waG9ueXx8ITF9Y29uc3QgYz17QW5kcm9pZDooKT0+cy5pc0FuZHJvaWQsQmxhY2tCZXJyeTooKT0+cy5pc0JsYWNrQmVycnksaU9TOigpPT5zLmlzSU9TLE9wZXJhOigpPT5zLmlzT3BlcmFNaW5pLGlzSVBhZDooKT0+cy5pc0lQYWQsYW55OigpPT5zLmlzQW55TW9iaWxlfTtmdW5jdGlvbiBkKCl7cmV0dXJuIHMubW9iaWxldG91Y2h8fHMudG91Y2h8fHMuaXNBbnlNb2JpbGV9YS5pc01vYmlsZT1jLGEub25XaWRnZXQ9bi5vbldpZGdldDtzLmlzQ2hyb21lLHMuaXNGRixzLmlzRWRnZSxzLmlzU2FmYXJpfSw5NDY2NzEoZSx0LGkpeyJ1c2Ugc3RyaWN0IjtpKDc5NTM4MyksaSg3MjI1NzEpO3ZhciBzPWkoMTg1MjcxKSxuPWkoNTQ3ODUxKSxhPShpKDMxOTA5NiksaSg4NDU1MTApKSxvPWkoODM3ODIyKSxyPWkoOTg2Mjc1KSxsPWkoNDQzNTU3KSxjPWkoNjQxNTkzKSxkPWkoOTE0NDg3KSxoPWkubihkKTtjbGFzcyBtIGV4dGVuZHMgYS5UaWNrZXJJdGVtQWJzdHJhY3R7Y29uc3RydWN0b3IoZSx0LGkpe3N1cGVyKGUsdCxpKSx0aGlzLl9vcHRpb25zPWl8fHt9fXNldFdpZHRoKGUpe3RoaXMuX2VsLnN0eWxlLnNldFByb3BlcnR5KCJ3aWR0aCIsZSsicHgiKX0KZ2V0V2lkdGgoKXtpZighZG9jdW1lbnQuYm9keS5jb250YWlucyh0aGlzLl9lbCkpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IHRpY2tlciBpdGVtIHdpZHRoLCBiZWNhdXNlIHRoZSBlbGVtZW50IGlzIG5vdCBhdHRhY2hlZCB0byBET00iKTtyZXR1cm4gdGhpcy5fZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9cmVzZXRXaWR0aCgpe3RoaXMuX2VsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ3aWR0aCIpfXRvZ2dsZUNvbXBhY3RNb2RlKGUpe3RoaXMuX2VsLmNsYXNzTGlzdC50b2dnbGUoYCR7dGhpcy5fZ2V0Q2xhc3MoKX0tLWNvbXBhY3RgLGUpfXRvZ2dsZVRyYW5zcGFyZW5jeShlKXt0aGlzLl9lbC5jbGFzc0xpc3QudG9nZ2xlKGAke3RoaXMuX2dldENsYXNzKCl9LS10cmFuc3BhcmVudGAsZSl9c2V0VmlldyhlLHQsaSl7dGhpcy5zZXRXaWR0aChlKSx0aGlzLnRvZ2dsZUNvbXBhY3RNb2RlKHQpLHRoaXMudG9nZ2xlVHJhbnNwYXJlbmN5KGkpfXN0YXRpYyBnZXRTa2VsZXRvbkVsZW1lbnQoZSx0KXtjb25zdCBpPWA8ZGl2IGNsYXNzPSIke2goKSgidHYtdGlja2VyLWl0ZW0tdGFwZSIsInR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIix7InR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QiOmUsInR2LXRpY2tlci1pdGVtLXRhcGUtLXRyYW5zcGFyZW50Ijp0fSl9Ij48ZGl2IGNsYXNzPSJ0di10aWNrZXItaXRlbS10YXBlX19ib3JkZXItd3JhcHBlciI+PGRpdiBjbGFzcz0idHYtdGlja2VyLWl0ZW0tdGFwZV9faW5uZXItd3JhcHBlciI+PGRpdiBjbGFzcz0idHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVyIj48L2Rpdj48ZGl2IGNsYXNzPSJ0di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIiPjwvZGl2PjxkaXYgY2xhc3M9InR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj5gO3JldHVybigwLGwucGFyc2VIdG1sRWxlbWVudCkoaSl9X2dldENsYXNzKCl7cmV0dXJuInR2LXRpY2tlci1pdGVtLXRhcGUifV9nZXRWaWV3KCl7Y29uc3QgZT17Ym9yZGVyV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImJvcmRlci13cmFwcGVyIiksaW5uZXJXcmFwcGVyOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaW5uZXItd3JhcHBlciIpLHN5bWJvbDp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInN5bWJvbCIpLGljb25XcmFwcGVyOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaWNvbi13cmFwcGVyIiksc2hvcnROYW1lV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInNob3J0LW5hbWUtd3JhcHBlciIpLHNob3J0TmFtZTp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInNob3J0LW5hbWUiKSxsYXN0V3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImxhc3Qtd3JhcHBlciIpLGxhc3Q6dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJsYXN0IiksY2hhbmdlV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImNoYW5nZS13cmFwcGVyIiksY2hhbmdlQWJzOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLWFicyIpLGNoYW5nZVB0OnRoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLXB0Iil9LHQ9dGhpcy5fc3ltYm9sRGF0YS50aXRsZXx8dGhpcy5fc3ltYm9sRGF0YS5kZXNjcmlwdGlvbixpPXRoaXMuX29wdGlvbnMuc2hvd1N5bWJvbExvZ287cmV0dXJuYDxkaXYgY2xhc3M9IiR7ZS5ib3JkZXJXcmFwcGVyfSI+PGRpdiBjbGFzcz0iJHtlLmlubmVyV3JhcHBlcn0iPjxkaXYgY2xhc3M9JHtlLnN5bWJvbH0+PGRpdiBjbGFzcz0iJHtlLmljb25XcmFwcGVyfSBqcy1oZWFkZXItaWNvbiI+XG5cdFx0XHRcdFx0XHRcdCR7aT8oMCxvLmdldENpcmNsZUxvZ29BbnlIdG1sKSh7bG9nb1VybHM6W10sc2l6ZTp0aGlzLl9vcHRpb25zLmlzQ29tcGFjdE1vZGU/Inh4eHNtYWxsIjoieHNtYWxsIixjbGFzc05hbWU6dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJpY29uIil9KToiIn1cblx0XHRcdFx0XHRcdDwvZGl2PjxkaXYgY2xhc3M9IiR7ZS5zaG9ydE5hbWVXcmFwcGVyfSI+PHNwYW4gY2xhc3M9IiR7aCgpKGUuc2hvcnROYW1lLCF0JiYianMtc3ltYm9sLXNob3J0LW5hbWUiKX0iPiR7KDAsYy5odG1sRXNjYXBlKSh0fHwiIil9PC9zcGFuPjxzcGFuIGNsYXNzPSJqcy1zeW1ib2wtc2Vzc2lvbi1zdGF0dXMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSIke2UubGFzdFdyYXBwZXJ9Ij48c3BhbiBjbGFzcz0iJHtlLmxhc3R9IGpzLXN5bWJvbC1sYXN0Ij48L3NwYW4+PHNwYW4gY2xhc3M9ImpzLWRhdGEtbW9kZSI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9IiR7ZS5jaGFuZ2VXcmFwcGVyfSBqcy1zeW1ib2wtY2hhbmdlLWRpcmVjdGlvbiI+PHNwYW4gY2xhc3M9IiR7ZS5jaGFuZ2VBYnN9IGpzLXN5bWJvbC1jaGFuZ2UiPjwvc3Bhbj4mbmJzcDxzcGFuIGNsYXNzPSIke2UuY2hhbmdlUHR9IGpzLXN5bWJvbC1jaGFuZ2UtcHQiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj5gfV9nZXRUaWNrZXJPcHRpb25zKCl7cmV0dXJue2RvbnREeWVQcmljZTohMCxzaWduUG9zaXRpdmU6ITAsc2lnbk5lZ2F0aXZlOiEwLGNoYW5nZUluQnJhY2tldHM6ITEsY2hhbmdlUGVyY2VudEluQnJhY2tldHM6ITAsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczpgJHt0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImNoYW5nZS13cmFwcGVyIil9LS11cGAsY2hhbmdlRGlyZWN0aW9uRG93bkNsYXNzOmAke3RoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLXdyYXBwZXIiKX0tLWRvd25gLGxhc3RHcm93aW5nQ2xhc3M6YCR7dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJsYXN0Iil9LS1ncm93aW5nYCxsYXN0RmFsbGluZ0NsYXNzOmAke3RoaXMuX2dldEVsZW1lbnRDbGFzcygibGFzdCIpfS0tZmFsbGluZ2Asc2Vzc2lvblN0YXR1c0NsYXNzU3VmZml4OiItLWZvci10aWNrZXItdGFwZSIsZGF0YU1vZGVDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyLXRhcGUiLHNob3dJbnZhbGlkU3ltYm9sU3RhdHVzOiEwLGluZGljYXRvcnNUb29sdGlwVHlwZToiYnJvd3NlciIsc2V0U3RhdGVIb29rOnRoaXMuX29wdGlvbnMuc2hvd1N5bWJvbExvZ28/KDAsCnIuZ2V0TG9nb1VybHNIb29rKSgoZT0+e2NvbnN0IHQ9dGhpcy5fb3B0aW9ucy5pc0NvbXBhY3RNb2RlPyJ4eHhzbWFsbCI6InhzbWFsbCI7dGhpcy5fcmVuZGVyU3ltYm9sTG9nbyhlLHQpfSkpOnZvaWQgMH19fXZhciBwPWkoNTI3MzIzKSx1PWkubihwKSxnPWkoNzQ5NjQ4KTtjb25zdCBfPXtkZXNrdG9wOjEvMCxkZXNrdG9wSGQ6MTkxOSxwaG9uZTo3NjcsInBob25lLXZlcnRpY2FsIjo0NzksdGFibGV0OjEwMTl9O3ZhciB2PWkoMTEyNTQyKTtjbGFzcyB5IGV4dGVuZHModSgpKXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy53aWR0aD0wLHRoaXMuaGVpZ2h0PTAsdGhpcy5kZXZpY2U9bnVsbCx0aGlzLmJyZWFrcG9pbnRzPV8sdGhpcy5fY2hlY2tEZXZpY2UoKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLl9jaGVja0RldmljZSksT2JqZWN0LmVudHJpZXMoXykuc29ydCgoKFtlLHRdLFtpLHNdKT0+dC1zKSkuZm9yRWFjaCgoKFtlLHRdLGkscyk9PntsZXQgbjtpZigwIT09aSl7Y29uc3RbLGVdPXNbaS0xXTtuPWUrMX1lbHNlIG49MDtjb25zdCBhPSgwLHYubWF0Y2hNZWRpYU1pbk1heCkobix0KTthLm1hdGNoZXMmJnRoaXMuX3NldE5ld0RldmljZShlKSxhLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsKHQ9Pnt0Lm1hdGNoZXMmJih0aGlzLl9jaGVja0RldmljZSgpLHRoaXMuX3NldE5ld0RldmljZShlKSl9KSl9KSksKDAsZy53aGVuRG9jdW1lbnRSZWFkeSkodGhpcy5fY2hlY2tEZXZpY2UuYmluZCh0aGlzKSksdGhpcy5pc1Bob25lU2l6ZURldmljZS5iaW5kKHRoaXMpfWlzUGhvbmVTaXplRGV2aWNlKCl7cmV0dXJuInBob25lIj09PXRoaXMuZGV2aWNlfHwicGhvbmUtdmVydGljYWwiPT09dGhpcy5kZXZpY2V9X2NoZWNrRGV2aWNlKCl7dGhpcy53aWR0aD13aW5kb3cuaW5uZXJXaWR0aCx0aGlzLmhlaWdodD13aW5kb3cuaW5uZXJIZWlnaHR9X3NldE5ld0RldmljZShlKXtjb25zdCB0PXRoaXMuZGV2aWNlO3RoaXMuZGV2aWNlPWUsdGhpcy50cmlnZ2VyKCJjaGFuZ2VEZXZpY2UiLFtlLHRdKX19Y29uc3QgYj1uZXcgeTt2YXIgayxmLHcsRSxDPWkoMTUwMTUwKSx4PWkoOTY5MTY4KTshZnVuY3Rpb24oZSl7ZS5BZGFwdGl2ZT0iYWRhcHRpdmUiLGUuUmVndWxhcj0icmVndWxhciIsZS5Db21wYWN0PSJjb21wYWN0In0oa3x8KGs9e30pKSxmdW5jdGlvbihlKXtlLkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIixlLk1hcmtldD0ibWFya2V0IixlLlN5bWJvbD0ic3ltYm9sIn0oZnx8KGY9e30pKSxmdW5jdGlvbihlKXtlLkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsZS5DdXJyZW5jaWVzPSJmb3JleCIsZS5TdG9ja3M9InN0b2NrIixlLkluZGljZXM9ImluZGV4IixlLkZ1dHVyZXM9ImZ1dHVyZXMiLGUuQm9uZHM9ImNmZCJ9KHd8fCh3PXt9KSksZnVuY3Rpb24oZSl7ZS5IVE1MPSJodG1sIixlLlJlYWN0PSJyZWFjdCJ9KEV8fChFPXt9KSk7dmFyIFQ9aSgyMzIzNjQpLEw9aSg5NDgzODApO3ZhciBTOyFmdW5jdGlvbihlKXtlW2UuVGlja2VySXRlbUhlaWdodE5vcm1hbD00NF09IlRpY2tlckl0ZW1IZWlnaHROb3JtYWwiLGVbZS5UaWNrZXJJdGVtSGVpZ2h0Q29tcGFjdD03Ml09IlRpY2tlckl0ZW1IZWlnaHRDb21wYWN0In0oU3x8KFM9e30pKTtjb25zdCBXPV8ucGhvbmU7ZnVuY3Rpb24gTSgpe3JldHVybiB3aW5kb3cuaW5uZXJXaWR0aDw9V31mdW5jdGlvbiBJKGUpe3JldHVybiBlPzcyOjQ0fWNsYXNzIE4gZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcigpe3N1cGVyKCJDYW5jZWxUb2tlbiIpfX12YXIgVj1pKDc1ODA1OSksRD1pKDg2NzA1MSk7Y29uc3QgQT1zLnQobnVsbCx2b2lkIDAsaSg3ODg0NDQpKTt2YXIgejshZnVuY3Rpb24oZSl7ZS5BbmltYXRpb25OYW1lPSJ0aWNrZXItdGFwZS1zY3JvbGwiLGVbZS5MYXN0UmVzb2x2ZVRpbWVvdXQ9MmUzXT0iTGFzdFJlc29sdmVUaW1lb3V0IixlW2UuUmVzaXplRGVib3VuY2U9MzAwXT0iUmVzaXplRGVib3VuY2UifSh6fHwoej17fSkpO2NvbnN0IFA9cGFyc2VJbnQoVlsiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIl0pLCQ9cGFyc2VJbnQoVlsiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtY29tcGFjdCJdKSxCPXBhcnNlSW50KFZbImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLXBhZGRpbmciXSk7ZnVuY3Rpb24gSChlKXtjb25zdCB0PWUuZ2V0RWxlbWVudCgpO2lmKHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgianMtZXhjbGFtYXRpb25lZC1zeW1ib2wiKS5sZW5ndGgpcmV0dXJuO2NvbnN0IGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2kuY2xhc3NMaXN0LmFkZCgidHYtdGlja2VyLWl0ZW0tdGFwZV9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmsiLCJqcy1leGNsYW1hdGlvbmVkLXN5bWJvbCIpLGkuc2V0QXR0cmlidXRlKCJ0aXRsZSIsQSk7Y29uc3Qgcz10LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoInR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlciIpLml0ZW0oMCk7cyYmcy5hcHBlbmRDaGlsZChpKX1mdW5jdGlvbiBSKGUpe2NvbnN0IHQ9bmV3IFByb21pc2UoKHQ9Pntjb25zdCBpPSgpPT50KCEwKTtlLm9uSW5pdC5zdWJzY3JpYmUobnVsbCwoZT0+e3ZhciB0O2U/aSgpOih0PTJlMyxuZXcgUHJvbWlzZSgoZT0+e3NldFRpbWVvdXQoZSx0KX0pKSkudGhlbihpKX0pLCEwKX0pKSxpPW5ldyBQcm9taXNlKCh0PT57ZS5vbkVycm9yLnN1YnNjcmliZShudWxsLCgoKT0+e0goZSksdCghMSl9KSwhMCl9KSk7cmV0dXJuIFByb21pc2UucmFjZShbdCxpXSl9dmFyIE89aSg3NTE1NTcpLGo9aSg2MDE1ODcpLEY9aSg0MDMzNzApO3ZhciBLLFUscT1pKDY3MzgyOSksWD1pKDIwMDY2Nik7ZnVuY3Rpb24gRyhlLHQsaSl7Y29uc3Qgcz17bmFtZTplLGZyYW1lRWxlbWVudElkOnQsZGF0YTppfTt3aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKHMsIioiKX0hZnVuY3Rpb24oZSl7bGV0IHQ7IWZ1bmN0aW9uKGUpe2UuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIixlLlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwiCn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShLfHwoSz17fSkpLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlN5bWJvbENsaWNrPSJ0di13aWRnZXQtc3ltYm9sLWNsaWNrIixlLldpZGdldExvYWQ9InR2LXdpZGdldC1sb2FkIixlLldpZGdldFJlYWR5PSJ0di13aWRnZXQtcmVhZHkiLGUuUmVzaXplSWZyYW1lPSJ0di13aWRnZXQtcmVzaXplLWlmcmFtZSIsZS5Ob0RhdGE9InR2LXdpZGdldC1uby1kYXRhIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShVfHwoVT17fSkpO2NvbnN0IEo9d2luZG93LmluaXREYXRhLmhhc2hTZXR0aW5nc3x8e30sUT0ic3RyaW5nIj09dHlwZW9mIEouZnJhbWVFbGVtZW50SWQ/Si5mcmFtZUVsZW1lbnRJZDpudWxsO3ZhciBZPWkoNjUzODE3KSxaPWkoMzg5Mjk4KTtjb25zdCBlZT1mdW5jdGlvbigpe2NvbnN0IGU9d2luZG93O3JldHVybnsuLi5lLmluaXREYXRhLndpZGdldERlZmF1bHRzLC4uLmUuaW5pdERhdGEuaGFzaFNldHRpbmdzLC4uLmUuaW5pdERhdGEucXVlcnlTZXR0aW5nc319KCksdGU9KDAsai5maWx0ZXJVdG1JbmZvKShlZSk7bGV0IGllPWVlLnN5bWJvbHM7QXJyYXkuaXNBcnJheShpZSkmJmllLmV2ZXJ5KHEudmFsaWRhdGVTeW1ib2xEYXRhKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc3ltYm9scyBkYXRhLCBmYWxsIGJhY2sgdG8gZGVmYXVsdHMiKSxpZT13aW5kb3cuaW5pdERhdGEuZGVmYXVsdFNldHRpbmdzLnN5bWJvbHMpO2NvbnN0IHNlPWVlLm5vTGlua3M7ZWUubm9MaW5rc3x8aWUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnByb05hbWV8fGUuc2hvcnROYW1lO2UubGlua1BhZ2U9KDAsRi5tYWtlV2lkZ2V0U3ltYm9sTGluaykoe3N5bWJvbDp0LGN1c3RvbVVybDplZS5sYXJnZUNoYXJ0VXJsLHV0bUluZm86dGV9KX0pKTtjb25zdCBuZT1lZS5pc1RyYW5zcGFyZW50LGFlPWVlLnNob3dTeW1ib2xMb2dvLG9lPWVlLmRpc3BsYXlNb2RlLHJlPWVlLmNvbG9yVGhlbWU7cmUmJigwLFguc2V0VGhlbWUpKHJlKTt0cnl7KDAsWi50cmFja1dpZGdldExvYWRNZXRhSW5mbykoe3dpZGdldF9pZDoidGlja2VyLXRhcGUiLHN5bWJvbHM6SlNPTi5zdHJpbmdpZnkoZWUuc3ltYm9scy5tYXAoKGU9PmUucHJvTmFtZXx8IiIpKSksY3VzdG9tZXI6ZWUuY3VzdG9tZXJ9KX1jYXRjaHt9Y29uc3QgbGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3dpZGdldC10aWNrZXItdGFwZS1jb250YWluZXIiKTsoMCxPLmNyZWF0ZUVtYmVkV2lkZ2V0V3JhcHBlcikobGUsInRpY2tlci10YXBlIix0ZSx7aXNXaGl0ZUxhYmVsOmVlLndoaXRlbGFiZWwsbG9jYWxlOmVlLmxvY2FsZSxjb3B5cmlnaHRPcHRpb25zOnt2ZXJ0aWNhbFBvc2l0aW9uOlkuQ29weXJpZ2h0UG9zaXRpb24uVmVydGljYWwuVG9wLG1vZGU6InNtYWxsX29sZCJ9fSk7Y29uc3QgY2U9bmV3IGNsYXNze2NvbnN0cnVjdG9yKGUpe3RoaXMuaGVpZ2h0PW5ldyBULldhdGNoZWRWYWx1ZSgwKSx0aGlzLm9uQWxsVGlja2Vyc0ZhdWx0eT1uZXcgTC5EZWxlZ2F0ZSx0aGlzLl9zdHlsZUVsZW1lbnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSx0aGlzLl9jb250YWluZXJFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3RhcGVFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2hlYWRFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3RhaWxFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2hlYWRUaWNrZXJJdGVtcz1bXSx0aGlzLl90YWlsVGlja2VySXRlbXM9W10sdGhpcy5fdGlja2VySXRlbVdpZHRocz1bXSx0aGlzLl9pc0NvbXBhY3RNb2RlPW5ldyBULldhdGNoZWRWYWx1ZSx0aGlzLl90dXJuS2V5Ym9hcmRGb2N1c09uPWU9PntlLnRhcmdldC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpJiYodGhpcy5fY29udGFpbmVyRWxlbWVudC5jbGFzc0xpc3QuYWRkKEQubm9BdXRvU2Nyb2xsKSx0aGlzLl9jb250YWluZXJFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT24pLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT2ZmKSl9LHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT2ZmPWU9Pntjb25zdCB0PWUucmVsYXRlZFRhcmdldDtudWxsIT09dCYmdGhpcy5fY29udGFpbmVyRWxlbWVudC5jb250YWlucyh0KXx8KHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuc2Nyb2xsTGVmdD0wLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShELm5vQXV0b1Njcm9sbCksdGhpcy5fY29udGFpbmVyRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1c291dCIsdGhpcy5fdHVybktleWJvYXJkRm9jdXNPZmYpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsdGhpcy5fdHVybktleWJvYXJkRm9jdXNPbikpfSx0aGlzLl9jYW5jZWxEZWJvdW5jZWRSZXNpemU9KCk9Pnt9LHRoaXMuX29uQ29tcGFjdE1vZGVDaGFuZ2VkPSgpPT57dGhpcy5fdXBkYXRlVGlja2VyVmlld3NBbmRTdHlsZXMoKX0sdGhpcy5fb25WaXNpYmlsaXR5U3RhdGVDaGFuZ2VkPSgpPT57InZpc2libGUiPT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiZ0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcygpfSx0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcz0oKT0+e3RoaXMuX3VwZGF0ZVRpY2tlclZpZXdzKCksdGhpcy5fdXBkYXRlU3R5bGVzKCl9LHRoaXMuX29uRGV2aWNlQ2hhbmdlZD0oKT0+e3RoaXMuX2lzQ29tcGFjdE1vZGUuc2V0VmFsdWUoTSgpKX0sdGhpcy5fZW5zdXJlU3VmZmljaWVudFRhaWxXaWR0aD0oKT0+e2lmKDA9PT10aGlzLl9zeW1ib2xzLmxlbmd0aClyZXR1cm4KO2NvbnN0IGU9dGhpcy5fY29udGFpbmVyRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCx0PXRoaXMuX3RhaWxFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLGk9dGhpcy5faGVhZFRpY2tlckl0ZW1zLmxlbmd0aDtsZXQgcz1lLXQ7Zm9yKGxldCBlPXRoaXMuX3RhaWxUaWNrZXJJdGVtcy5sZW5ndGglaTtzPjA7ZT0rK2UlaSl7Y29uc3QgdD10aGlzLl90aWNrZXJJdGVtV2lkdGhzW2VdO3MtPXQ7Y29uc3QgaT10aGlzLl9jcmVhdGVUaWNrZXJJdGVtVGFwZSh0aGlzLl9zeW1ib2xzW2VdKTt0aGlzLl90YWlsVGlja2VySXRlbXMucHVzaChpKSx0aGlzLl90YWlsRWxlbWVudC5hcHBlbmRDaGlsZChpLmdldEVsZW1lbnQoKSksaS5zZXRWaWV3KHQsdGhpcy5faXNDb21wYWN0TW9kZS52YWx1ZSgpLHRoaXMuX2lzVHJhbnNwYXJlbnQpfX0sdGhpcy5fdXBkYXRlSGVpZ2h0VmFsdWU9ZT0+e3RoaXMuaGVpZ2h0LnNldFZhbHVlKEkoZSkpfSx0aGlzLl9zeW1ib2xzPWUuc3ltYm9scyx0aGlzLl9zcGVlZD1lLnNwZWVkLHRoaXMuX2lzVHJhbnNwYXJlbnQ9ISFlLmlzVHJhbnNwYXJlbnQsdGhpcy5fZGlzcGxheU1vZGU9ZS5kaXNwbGF5TW9kZSx0aGlzLl9pc0VtYmVkV2lkZ2V0PSEhZS5pc0VtYmVkV2lkZ2V0LHRoaXMuX3Nob3dTeW1ib2xMb2dvPSEhZS5zaG93U3ltYm9sTG9nbyx0aGlzLl9ub0xpbmtzPSEhZS5ub0xpbmtzLHRoaXMuX2lzQ29tcGFjdE1vZGUuc2V0VmFsdWUodGhpcy5fZGlzcGxheU1vZGU9PT1rLkFkYXB0aXZlP00oKTp0aGlzLl9kaXNwbGF5TW9kZT09PWsuQ29tcGFjdCksdGhpcy5faXNDb21wYWN0TW9kZS5zdWJzY3JpYmUodGhpcy5fdXBkYXRlSGVpZ2h0VmFsdWUse2NhbGxXaXRoTGFzdDohMH0pLGUuY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuX2NvbnRhaW5lckVsZW1lbnQpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LmFkZChELnRpY2tlclRhcGUpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZShELm5vQXV0b1Njcm9sbCwhdGhpcy5fc3BlZWQpLHRoaXMuX3NwZWVkJiZ0aGlzLl9jb250YWluZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT24pLHRoaXMuX3RhcGVFbGVtZW50LmNsYXNzTGlzdC5hZGQoRC50YXBlKSx0aGlzLl9oZWFkRWxlbWVudC5jbGFzc0xpc3QuYWRkKEQuaGVhZCksdGhpcy5fdGFpbEVsZW1lbnQuY2xhc3NMaXN0LmFkZChELnRhaWwpO2NvbnN0IHQ9ZnVuY3Rpb24oZSx0LGkpe2NvbnN0IHM9dD8kOlAsbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmNsYXNzTGlzdC5hZGQoRC5za2VsZXRvbik7Y29uc3QgYT1NYXRoLmNlaWwoZS9zKTtmb3IobGV0IGU9MDtlPGE7ZSsrKW4uYXBwZW5kQ2hpbGQobS5nZXRTa2VsZXRvbkVsZW1lbnQodCxpKSk7cmV0dXJuIG59KHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsdGhpcy5faXNDb21wYWN0TW9kZS52YWx1ZSgpLHRoaXMuX2lzVHJhbnNwYXJlbnQpO3RoaXMuX3RhcGVFbGVtZW50LmFwcGVuZENoaWxkKHQpO2NvbnN0IGk9W107Zm9yKGNvbnN0IGUgb2YgdGhpcy5fc3ltYm9scyl7Y29uc3QgdD10aGlzLl9jcmVhdGVUaWNrZXJJdGVtVGFwZShlKTt0LnRvZ2dsZVRyYW5zcGFyZW5jeSh0aGlzLl9pc1RyYW5zcGFyZW50KSx0aGlzLl9oZWFkVGlja2VySXRlbXMucHVzaCh0KSx0aGlzLl9oZWFkRWxlbWVudC5hcHBlbmRDaGlsZCh0LmdldEVsZW1lbnQoKSksaS5wdXNoKFIodCkpfXRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fc3R5bGVFbGVtZW50KSx0aGlzLl9jb250YWluZXJFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX3RhcGVFbGVtZW50KSx0aGlzLl93YWl0Rm9yVGlja2Vyc0NhbmNlbGFibGU9ZnVuY3Rpb24oZSl7bGV0IHQ9ITE7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChpLHMpPT57ZS50aGVuKChlPT50P3MobmV3IE4pOmkoZSkpKSxlLmNhdGNoKChlPT5zKHQ/bmV3IE46ZSkpKX0pKSxjYW5jZWwoKXt0PSEwfX19KFByb21pc2UuYWxsKGkpKSx0aGlzLl93YWl0Rm9yVGlja2Vyc0NhbmNlbGFibGUucHJvbWlzZS50aGVuKChlPT57ZS5ldmVyeSgoZT0+IWUpKSYmdGhpcy5vbkFsbFRpY2tlcnNGYXVsdHkuZmlyZSgpLHRoaXMuX3RhcGVFbGVtZW50LnJlbW92ZUNoaWxkKHQpLHRoaXMuX3RhcGVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2hlYWRFbGVtZW50KSx0aGlzLl90YXBlRWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl90YWlsRWxlbWVudCksdGhpcy5faW5pdCgpfSksKGU9PntpZighKGUgaW5zdGFuY2VvZiBOKSl0aHJvdyBlfSkpfWRlc3Ryb3koKXt0aGlzLl9jb250YWluZXJFbGVtZW50LnJlbW92ZSgpLHRoaXMuX3dhaXRGb3JUaWNrZXJzQ2FuY2VsYWJsZS5jYW5jZWwoKSxiLm9mZigiY2hhbmdlRGV2aWNlIix0aGlzLl9vbkRldmljZUNoYW5nZWQpLHRoaXMuX2NhbmNlbERlYm91bmNlZFJlc2l6ZSgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMuX29uVmlzaWJpbGl0eVN0YXRlQ2hhbmdlZCksdGhpcy5faGVhZFRpY2tlckl0ZW1zLmZvckVhY2goKGU9PntlLnN0b3AoKX0pKSx0aGlzLl90YWlsVGlja2VySXRlbXMuZm9yRWFjaCgoZT0+e2Uuc3RvcCgpfSkpfV9jcmVhdGVUaWNrZXJJdGVtVGFwZShlKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGhpcy5fbm9MaW5rcz8ic3BhbiI6ImEiKTtyZXR1cm4gbmV3IG0oZSx0LHtpc0VtYmVkV2lkZ2V0OnRoaXMuX2lzRW1iZWRXaWRnZXQsc2hvd1N5bWJvbExvZ286dGhpcy5fc2hvd1N5bWJvbExvZ28saXNDb21wYWN0TW9kZTp0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCl9KX1faW5pdCgpe3RoaXMuX2lzQ29tcGFjdE1vZGUuc3Vic2NyaWJlKHRoaXMuX29uQ29tcGFjdE1vZGVDaGFuZ2VkLHtjYWxsV2l0aExhc3Q6ITB9KSx0aGlzLl9lbnN1cmVTdWZmaWNpZW50VGFpbFdpZHRoKCksCnRoaXMuX2Rpc3BsYXlNb2RlPT09ay5BZGFwdGl2ZSYmYi5vbigiY2hhbmdlRGV2aWNlIix0aGlzLl9vbkRldmljZUNoYW5nZWQpLHRoaXMuX2NhbmNlbERlYm91bmNlZFJlc2l6ZT1mdW5jdGlvbihlKXtjb25zdCB0PSgwLG4uZGVmYXVsdCkoZSwzMDApO3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix0KSwoKT0+e3QuY2FuY2VsKCksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdCl9fSh0aGlzLl9lbnN1cmVTdWZmaWNpZW50VGFpbFdpZHRoKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLl9vblZpc2liaWxpdHlTdGF0ZUNoYW5nZWQpO2NvbnN0IGU9KDAsbi5kZWZhdWx0KSh0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcy5iaW5kKHRoaXMpLDApO3RoaXMuX3RhaWxUaWNrZXJJdGVtcy5mb3JFYWNoKCh0PT57dC5vbkluaXQuc3Vic2NyaWJlKG51bGwsZSwhMCksdC5vbkNvbXBsZXRlLnN1YnNjcmliZShudWxsLGUsITApLHQub25FcnJvci5zdWJzY3JpYmUobnVsbCwoKCk9PkgodCkpLCEwKX0pKX1fdXBkYXRlVGlja2VyVmlld3MoKXtjb25zdCBlPXRoaXMuX2hlYWRUaWNrZXJJdGVtcy5sZW5ndGg7dGhpcy5faGVhZFRpY2tlckl0ZW1zLmZvckVhY2goKChlLHQpPT57ZS5yZXNldFdpZHRoKCksZS50b2dnbGVDb21wYWN0TW9kZSh0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCkpO2NvbnN0IGk9ZS5nZXRXaWR0aCgpK0I7ZS5zZXRXaWR0aChpKSx0aGlzLl90aWNrZXJJdGVtV2lkdGhzW3RdPWl9KSksdGhpcy5fdGFpbFRpY2tlckl0ZW1zLmZvckVhY2goKCh0LGkpPT57dC50b2dnbGVDb21wYWN0TW9kZSh0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCkpLHQuc2V0V2lkdGgodGhpcy5fdGlja2VySXRlbVdpZHRoc1tpJWVdKX0pKX1fdXBkYXRlU3R5bGVzKCl7Y29uc3QgZT10aGlzLl9zdHlsZUVsZW1lbnQuc2hlZXQ7aWYoIWV8fCF0aGlzLl9zcGVlZClyZXR1cm47Y29uc3QgdD10aGlzLl9oZWFkRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCxpPSJ0aWNrZXItdGFwZS1zY3JvbGwiKyItLSIrKDAsQy5yYW5kb21IYXNoTikoNCk7Zm9yKDtlLmNzc1J1bGVzLmxlbmd0aD4wOyllLmRlbGV0ZVJ1bGUoMCk7Y29uc3Qgcz1bYEBrZXlmcmFtZXMgJHtpfSB7XG5cdFx0XHRcdGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblx0XHRcdFx0dG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHsoMCx4LmlzUnRsKSgpPyIiOiItIn0ke3R9cHgpOyB9XG5cdFx0XHR9YCxgLiR7RC50YXBlfSB7XG5cdFx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogJHt0L3RoaXMuX3NwZWVkfXM7XG5cdFx0XHRcdGFuaW1hdGlvbi1uYW1lOiAke2l9O1xuXHRcdFx0fWBdO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7dCsrKWUuaW5zZXJ0UnVsZShzW3RdLHQpfX0oe2NvbnRhaW5lcjpsZSxzeW1ib2xzOmllLGlzVHJhbnNwYXJlbnQ6bmUsc2hvd1N5bWJvbExvZ286YWUsZGlzcGxheU1vZGU6b2Usbm9MaW5rczpzZSxzcGVlZDo0MCxpc0VtYmVkV2lkZ2V0OiEwfSk7Y2UuaGVpZ2h0LnN1YnNjcmliZSgoZnVuY3Rpb24oZSl7bmV8fChlKz0yKTtHKFUuTmFtZXMuUmVzaXplSWZyYW1lLG51bGwse2hlaWdodDplfSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSksY2Uub25BbGxUaWNrZXJzRmF1bHR5LnN1YnNjcmliZShudWxsLCgoKT0+e0coVS5OYW1lcy5Ob0RhdGEsUSx2b2lkIDApfSksITApfX0sZT0+e2UuTygwLFs1ODY2Nyw1NzI5MSw0NjkwNywzMjgxNiw0MzMyNSwzOTA1LDE1OTMyLDUxNTA4LDg0MDgsODAwOTcsMTMxNDgsNDkyNjUsODA3MDYsNjkzNTIsNjU4NjIsNTEwMzEsOTQ3MDgsMzU1Miw4MDU5NCw3OTIwNyw3Mjc4LDIwMDYxLDg3OTI2XSwoKCk9PntyZXR1cm4gdD05NDY2NzEsZShlLnM9dCk7dmFyIHR9KSk7ZS5PKCl9XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94825.8a90c0c3ebd413eb9c81.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.295Z","timestamp":1785154590295,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/94825.8a90c0c3ebd413eb9c81.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-846c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 043849eac05a144ee37a6d40bbbfc6b9\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":33900,"size_decoded":11131,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3071)","md5":"321406610467d6dffd30c75b9184e9df","sha1":"eb120d6cc348265cbed0295dd3cfab7428c5425f","sha256":"3f94fcd41f3f37d9d46697679761c3bf1712a0f67a22b38bc5e3c44b47eb56b5","sha512":"8d1b1035b2fe029452f0a7de35ef2793e6da96377c589956a5e21eaf23f3b2ae7bcedfe568a74bb8ba9a46109cdc8876912e2d73814beca47bbfa286c3081136","ssdeep":"768:QmBTez9037WM2rFgD0Nm7YLSxeUf4DK4uA8JUJESLb/XW4xmmInIPxHgask+vvw4:Q4Ow7uxNVvpPpghBT4Uf","tlshash":"17e2b693b3f9a02966ded0dad8341403e31924447884046cf27dbdde6b5dd88b2b9b7e","first_seen":"2026-07-23T13:38:20.509185Z","last_seen":"2026-07-27T14:22:59.606994Z","times_seen":618,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbOTQ4MjVdLHs0MDIwNDUoZSx0LHMpe3MuZCh0LHtXYXRjaGVkT2JqZWN0OigpPT5vfSk7dmFyIHI9cyg2MDE4NDEpLGk9cygyMzIzNjQpO2Z1bmN0aW9uIGEoZSx0KXtyZXR1cm4oMCxyLmRlZXBFcXVhbHMpKGUsdClbMF19Y2xhc3MgbyBleHRlbmRzIGkuV2F0Y2hlZFZhbHVle2NvbnN0cnVjdG9yKGUsdD1hKXtzdXBlcihlKSx0aGlzLl9jb21wYXJhdG9yPXR9c2V0VmFsdWUoZSx0KXshdCYmdGhpcy5fY29tcGFyYXRvcih0aGlzLnZhbHVlKCksZSl8fHN1cGVyLnNldFZhbHVlKGUsdCl9fX0sNjI0Njc4KGUsdCxzKXtzLmQodCx7RGF0ZUZvcm1hdHRlcjooKT0+YX0pO3ZhciByPXMoNDkxMTY1KTtjbGFzcyBpe2NvbnN0cnVjdG9yKGU9Inl5eXktTU0tZGQiLHQ9ITEscz0iVVRDIil7dGhpcy5fZGF0ZUZvcm1hdEZ1bmM9dD8oMCxyLmdldERhdGVGb3JtYXRXaXRoV2Vla2RheSkoZSxzKTpyLmRhdGVGb3JtYXRGdW5jdGlvbnNbZV19Zm9ybWF0KGUpe3JldHVybiB0aGlzLl9kYXRlRm9ybWF0RnVuYyhlLCExKX1mb3JtYXRMb2NhbChlKXtyZXR1cm4gdGhpcy5fZGF0ZUZvcm1hdEZ1bmMoZSwhMCl9cGFyc2UoZSl7cmV0dXJuIiI9PT1lP3tyZXM6ITF9OntyZXM6ITAsdmFsdWU6ZX19fWNsYXNzIGF7Y29uc3RydWN0b3IoZSx0LHMpe3RoaXMuX2RhdGVGb3JtYXR0ZXJJbnN0YW5jZT1uZXcgaShlLHQscyl9Zm9ybWF0KGUpe3JldHVybiBhLl9jdXN0b21Gb3JtYXR0ZXI/YS5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdChlKTp0aGlzLl9kYXRlRm9ybWF0dGVySW5zdGFuY2UuZm9ybWF0KGUpfWZvcm1hdExvY2FsKGUpe3JldHVybiBhLl9jdXN0b21Gb3JtYXR0ZXI/YS5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdExvY2FsKGUpOnRoaXMuX2RhdGVGb3JtYXR0ZXJJbnN0YW5jZS5mb3JtYXRMb2NhbChlKX1wYXJzZShlKXtyZXR1cm4gYS5fY3VzdG9tRm9ybWF0dGVyP2EuX2N1c3RvbUZvcm1hdHRlci5wYXJzZShlKTp0aGlzLl9kYXRlRm9ybWF0dGVySW5zdGFuY2UucGFyc2UoZSl9c3RhdGljIHNldEN1c3RvbUZvcm1hdHRlcihlKXthLl9jdXN0b21Gb3JtYXR0ZXI9ZX19YS5fY3VzdG9tRm9ybWF0dGVyPW51bGx9LDgyNjE1NihlLHQscyl7cy5kKHQse0RhdGVUaW1lRm9ybWF0dGVyOigpPT5ufSk7dmFyIHI9cygyMzgxMDMpLGk9cyg2MjQ2NzgpLGE9cygyOTcxMTEpO2NvbnN0IG89e2RhdGVGb3JtYXQ6Inl5eXktTU0tZGQiLHdpdGhXZWVrZGF5OiExLHRpbWVGb3JtYXQ6ci5ob3VyTWludXRlU2Vjb25kRm9ybWF0LGRhdGVUaW1lU2VwYXJhdG9yOiIgIn07Y2xhc3Mgbntjb25zdHJ1Y3RvcihlPXt9KXtjb25zdCB0PU9iamVjdC5hc3NpZ24oe30sbyxlKTt0aGlzLl9kYXRlRm9ybWF0dGVyPW5ldyBpLkRhdGVGb3JtYXR0ZXIodC5kYXRlRm9ybWF0LHQud2l0aFdlZWtkYXksdC50aW1lem9uZSksdGhpcy5fdGltZUZvcm1hdHRlcj1uZXcgYS5UaW1lRm9ybWF0dGVyKHQudGltZUZvcm1hdCksdGhpcy5fc2VwYXJhdG9yPXQuZGF0ZVRpbWVTZXBhcmF0b3J9Zm9ybWF0KGUsdCl7Y29uc3Qgcz10Py5kYXRlVGltZVNlcGFyYXRvcj8/dGhpcy5fc2VwYXJhdG9yO3JldHVybmAke3RoaXMuX2RhdGVGb3JtYXR0ZXIuZm9ybWF0KGUpfSR7c30ke3RoaXMuX3RpbWVGb3JtYXR0ZXIuZm9ybWF0KGUpfWB9Zm9ybWF0TG9jYWwoZSx0KXtjb25zdCBzPXQ/LmRhdGVUaW1lU2VwYXJhdG9yPz90aGlzLl9zZXBhcmF0b3I7cmV0dXJuYCR7dGhpcy5fZGF0ZUZvcm1hdHRlci5mb3JtYXRMb2NhbChlKX0ke3N9JHt0aGlzLl90aW1lRm9ybWF0dGVyLmZvcm1hdExvY2FsKGUpfWB9fX0sMjM4MTAzKGUsdCxzKXtzLmQodCx7aG91ck1pbnV0ZUZvcm1hdDooKT0+byxob3VyTWludXRlTm9uWmVyb1NlY29uZEZvcm1hdDooKT0+aSxob3VyTWludXRlU2Vjb25kRm9ybWF0OigpPT5yLGhvdXJNaW51dGVTZWNvbmRNaWxsaXNlY0Zvcm1hdDooKT0+YSx0d2VsdmVIb3VyTWludXRlRm9ybWF0OigpPT5sLHR3ZWx2ZUhvdXJNaW51dGVOb25aZXJvU2Vjb25kRm9ybWF0OigpPT5kLHR3ZWx2ZUhvdXJNaW51dGVTZWNvbmRGb3JtYXQ6KCk9Pm59KTtjb25zdCByPSIlaDolbTolcyIsaT0iJWg6JW06JXMrIixhPSIlaDolbTolcy4lc3MrIixvPSIlaDolbSIsbj0iJWg6JW06JXMgJWFtcG0iLGQ9IiVoOiVtOiVzKyAlYW1wbSIsbD0iJWg6JW0gJWFtcG0iO3ZhciBoOyFmdW5jdGlvbihlKXtlLlR3ZW50eUZvdXJIb3Vycz0iMjQtaG91cnMiLGUuVHdlbHZlSG91cnM9IjEyLWhvdXJzIn0oaHx8KGg9e30pKX0sMjk3MTExKGUsdCxzKXtzLmQodCx7VGltZUZvcm1hdHRlcjooKT0+b30pO3ZhciByPXMoMjM4MTAzKSxpPXMoODIyNDMxKTtjbGFzcyBhe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2lzVHdlbHZlSG91cnNGb3JtYXQ9ITEsdGhpcy5fdmFsdWVzQW5kRGVsaW1pdGVycz1bXTtjb25zdCB0PWV8fHIuaG91ck1pbnV0ZVNlY29uZEZvcm1hdCxzPW5ldyBSZWdFeHAoIiVofCVtfCVzXFwrfCVzc1xcK3wlc3N8JWFtcG18JXMiLCJnIik7bGV0IGk9cy5leGVjKHQpLGE9MDtmb3IoO251bGwhPT1pOyl7Y29uc3QgZT1pWzBdOyIlYW1wbSI9PT1lJiYodGhpcy5faXNUd2VsdmVIb3Vyc0Zvcm1hdD0hMCk7Y29uc3Qgcj10LnN1YnN0cmluZyhhLGkuaW5kZXgpOyIiIT09ciYmdGhpcy5fdmFsdWVzQW5kRGVsaW1pdGVycy5wdXNoKHIpLHRoaXMuX3ZhbHVlc0FuZERlbGltaXRlcnMucHVzaChlKSxhPWkuaW5kZXgrZS5sZW5ndGgsaT1zLmV4ZWModCl9fWZvcm1hdChlKXtyZXR1cm4gdGhpcy5fZm9ybWF0VGltZShlKX1mb3JtYXRMb2NhbChlKXtyZXR1cm4gdGhpcy5fZm9ybWF0VGltZShlLCEwKX1fZm9ybWF0VGltZShlLHQ9ITEpe2xldCBzPXQ/ZS5nZXRIb3VycygpOmUuZ2V0VVRDSG91cnMoKTtjb25zdCByPXQ/ZS5nZXRNaW51dGVzKCk6ZS5nZXRVVENNaW51dGVzKCksYT10P2UuZ2V0U2Vjb25kcygpOmUuZ2V0VVRDU2Vjb25kcygpLG89dD9lLmdldE1pbGxpc2Vjb25kcygpOmUuZ2V0VVRDTWlsbGlzZWNvbmRzKCk7bGV0IG49IiIKO3RoaXMuX2lzVHdlbHZlSG91cnNGb3JtYXQmJihuPXM+PTEyPyJQTSI6IkFNIixzJT0xMixzPXN8fDEyKTtsZXQgZD0iIixsPSExO2ZvcihsZXQgZT10aGlzLl92YWx1ZXNBbmREZWxpbWl0ZXJzLmxlbmd0aC0xO2U+PTA7ZS0tKXtjb25zdCB0PXRoaXMuX3ZhbHVlc0FuZERlbGltaXRlcnNbZV07bGV0IGg7c3dpdGNoKHQpe2Nhc2UiJWgiOmg9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykocywyKTticmVhaztjYXNlIiVtIjpoPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKHIsMik7YnJlYWs7Y2FzZSIlcysiOjAhPT1hP2g9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoYSwyKTooaD0iIixsPSEwKTticmVhaztjYXNlIiVzIjpoPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGEsMik7YnJlYWs7Y2FzZSIlc3MiOmg9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykobywzKTticmVhaztjYXNlIiVzcysiOjAhPT1vP2g9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykobywzKTooaD0iIixsPSEwKTticmVhaztjYXNlIiVhbXBtIjpoPW47YnJlYWs7ZGVmYXVsdDppZihsKXtsPSExO2NvbnRpbnVlfWg9dH1kPWgrZH1yZXR1cm4gZH19Y2xhc3Mgb3tjb25zdHJ1Y3RvcihlKXt0aGlzLl90aW1lRm9ybWF0dGVySW5zdGFuY2U9bmV3IGEoZSl9Zm9ybWF0KGUpe3JldHVybiBvLl9jdXN0b21Gb3JtYXR0ZXI/by5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdChlKTp0aGlzLl90aW1lRm9ybWF0dGVySW5zdGFuY2UuZm9ybWF0KGUpfWZvcm1hdExvY2FsKGUpe3JldHVybiBvLl9jdXN0b21Gb3JtYXR0ZXI/by5fY3VzdG9tRm9ybWF0dGVyLmZvcm1hdExvY2FsKGUpOnRoaXMuX3RpbWVGb3JtYXR0ZXJJbnN0YW5jZS5mb3JtYXRMb2NhbChlKX1zdGF0aWMgc2V0Q3VzdG9tRm9ybWF0dGVyKGUpe28uX2N1c3RvbUZvcm1hdHRlcj1lfX1vLl9jdXN0b21Gb3JtYXR0ZXI9bnVsbH0sNDU5OTk0KGUsdCxzKXtzLmQodCx7Q2hhcnRTZXNzaW9uOigpPT5jfSk7dmFyIHI9cyg5NDgzODApLGk9cygxMzg2MzgpLGE9cygyMzIzNjQpLG89cygyMjEwNjEpLG49cygxNTAxNTApO2NvbnN0IGQ9KDAsby5nZXRMb2dnZXIpKCJDaGFydEFwaS5BYnN0cmFjdFNlc3Npb24iKTt2YXIgbDshZnVuY3Rpb24oZSl7ZVtlLkRpc2Nvbm5lY3RlZD0wXT0iRGlzY29ubmVjdGVkIixlW2UuUmVnaXN0ZXJlZD0xXT0iUmVnaXN0ZXJlZCIsZVtlLkNvbm5lY3RlZD0yXT0iQ29ubmVjdGVkIn0obHx8KGw9e30pKTtjbGFzcyBoe2NvbnN0cnVjdG9yKGUsdCxzKXt0aGlzLl9pc0Nvbm5lY3RlZD1uZXcgYS5XYXRjaGVkVmFsdWUoITEpLHRoaXMuX3N0YXRlPTAsdGhpcy5faXNDb25uZWN0Rm9yYmlkZGVuPSExLHRoaXMuX3Nlc3Npb25JZD0iIix0aGlzLl9zZXNzaW9uSWRDaGFuZ2VkPW5ldyByLkRlbGVnYXRlLHRoaXMuX2NoYXJ0QXBpPWUsdGhpcy5fc2Vzc2lvblByZWZpeD10LHRoaXMuX3Nob3VsZFJlY29ubmVjdEFmdGVyQ3JpdGljYWxFcnJvcj1zfWRlc3Ryb3koKXt0aGlzLl9sb2dOb3JtYWwoIkRlc3Ryb3lpbmcgc2Vzc2lvbiIpLHRoaXMuX2lzQ29ubmVjdGVkLnVuc3Vic2NyaWJlKCksdGhpcy5kaXNjb25uZWN0KCksdGhpcy5fc2Vzc2lvbklkQ2hhbmdlZC5kZXN0cm95KCksZGVsZXRlIHRoaXMuX2NoYXJ0QXBpLHRoaXMuX2xvZ05vcm1hbCgiU2Vzc2lvbiBoYXMgYmVlbiBkZXN0cm95ZWQiKX1pc0Nvbm5lY3RlZCgpe3JldHVybiB0aGlzLl9pc0Nvbm5lY3RlZH1zZXNzaW9uSWQoKXtyZXR1cm4gdGhpcy5fc2Vzc2lvbklkfW9uU2Vzc2lvbklkQ2hhbmdlZCgpe3JldHVybiB0aGlzLl9zZXNzaW9uSWRDaGFuZ2VkfWNvbm5lY3QoKXswPT09dGhpcy5fc3RhdGUmJigoMCxpLmFzc2VydCkoIXRoaXMuX2lzQ29ubmVjdEZvcmJpZGRlbiwiQ2Fubm90IGNhbGwgY29ubmVjdCBiZWNhdXNlIGl0IGlzIGZvcmJpZGRlbiBhdCB0aGlzIG1vbWVudCIpLHRoaXMuX3NldFNlc3Npb25JZChgJHt0aGlzLl9zZXNzaW9uUHJlZml4fV8keygwLG4ucmFuZG9tSGFzaCkoKX1gKSx0aGlzLl9sb2dOb3JtYWwoIkNvbm5lY3Rpbmcgc2Vzc2lvbiAtIHdhaXQgdW50aWwgdHJhbnNwb3J0IHN0YXkgY29ubmVjdGVkIiksdGhpcy5fc3RhdGU9MSx0aGlzLl9jaGFydEFwaS5jcmVhdGVTZXNzaW9uKHRoaXMuX3Nlc3Npb25JZCx0aGlzKSl9ZGlzY29ubmVjdCgpezAhPT10aGlzLl9zdGF0ZSYmKCgwLGkuYXNzZXJ0KSgiIiE9PXRoaXMuX3Nlc3Npb25JZCwic2Vzc2lvbklkIG11c3Qgbm90IGJlIGludmFsaWQiKSx0aGlzLl9sb2dOb3JtYWwoIkRpc2Nvbm5lY3Rpbmcgc2Vzc2lvbi4uLiIpLHRoaXMuX2ZvcmJpZENvbm5lY3RXaGlsZSgoKCk9Pnt0aGlzLl9jaGFydEFwaS5jb25uZWN0ZWQoKSYmdGhpcy5fc2VuZFJlbW92ZVNlc3Npb24oKSx0aGlzLl9wcm9jZXNzRGVzdHJveWluZ09uU2VydmVyKCl9KSkpfW9uTWVzc2FnZShlKXtzd2l0Y2goZS5tZXRob2Qpe2Nhc2UiY29ubmVjdGVkIjpyZXR1cm4gdm9pZCB0aGlzLl9vbkNoYXJ0QXBpQ29ubmVjdGVkKCk7Y2FzZSJkaXNjb25uZWN0ZWQiOnJldHVybiB2b2lkIHRoaXMuX29uQ2hhcnRBcGlEaXNjb25uZWN0ZWQoKTtjYXNlImNyaXRpY2FsX2Vycm9yIjpjb25zdCB0PVN0cmluZyhlLnBhcmFtc1swXSkscz1TdHJpbmcoZS5wYXJhbXNbMV0pO3JldHVybiB2b2lkIHRoaXMuX29uQ3JpdGljYWxFcnJvcih0LHMpfXRoaXMuX29uTWVzc2FnZShlKX1zZXJ2ZXJUaW1lKCl7cmV0dXJuIHRoaXMuX2NoYXJ0QXBpLnNlcnZlclRpbWUoKX1fZ2V0Q2hhcnRBcGkoKXtyZXR1cm4gdGhpcy5fY2hhcnRBcGl9X2dlbmVyYXRlTG9nTWVzc2FnZShlKXtyZXR1cm5gWyR7dGhpcy5fc2Vzc2lvbklkfV0gJHtlfWB9X29uQ3JpdGljYWxFcnJvcihlLHQpe3RoaXMuX2xvZ0Vycm9yKGBDcml0aWNhbCBlcnJvci4gUmVhc29uPSR7ZX0sIGluZm89JHt0fS5gKSx0aGlzLl9mb3JiaWRDb25uZWN0V2hpbGUoKCgpPT57dGhpcy5fcHJvY2Vzc0Rlc3Ryb3lpbmdPblNlcnZlcigpfSkpLAp0aGlzLl9zaG91bGRSZWNvbm5lY3RBZnRlckNyaXRpY2FsRXJyb3I/KHRoaXMuX2xvZ05vcm1hbCgiUmVjb25uZWN0aW5nIGFmdGVyIGNyaXRpY2FsIGVycm9yLi4uIiksdGhpcy5jb25uZWN0KCkpOnRoaXMuX2xvZ05vcm1hbCgiUmVjb25uZWN0aW5nIGFmdGVyIGNyaXRpY2FsIGVycm9yIHNraXBwZWQiKX1fb25DaGFydEFwaUNvbm5lY3RlZCgpeygwLGkuYXNzZXJ0KSgxPT09dGhpcy5fc3RhdGUsIlNlc3Npb24gaXMgbm90IHJlZ2lzdGVyZWQiKSx0aGlzLl9sb2dOb3JtYWwoIlRyYW5zcG9ydCBpcyBjb25uZWN0ZWQuIENyZWF0aW5nIHNlc3Npb24gb24gdGhlIHNlcnZlciIpLHRoaXMuX3NlbmRDcmVhdGVTZXNzaW9uKCksdGhpcy5fc3RhdGU9Mix0aGlzLl9pc0Nvbm5lY3RlZC5zZXRWYWx1ZSghMCl9X29uQ2hhcnRBcGlEaXNjb25uZWN0ZWQoKXt0aGlzLl9sb2dOb3JtYWwoIlRyYW5zcG9ydCBpcyBkaXNjb25uZWN0ZWQuIFJlY29ubmVjdGluZy4uLiIpLHRoaXMuX2ZvcmJpZENvbm5lY3RXaGlsZSgoKCk9Pnt0aGlzLl9wcm9jZXNzRGVzdHJveWluZ09uU2VydmVyKCl9KSksdGhpcy5jb25uZWN0KCl9X3NldFNlc3Npb25JZChlKXtjb25zdCB0PXRoaXMuX3Nlc3Npb25JZDt0aGlzLl9sb2dOb3JtYWwoYENoYW5naW5nIHNlc3Npb25JZDogb2xkPSR7dH0sIG5ldz0ke2V9YCksdGhpcy5fc2Vzc2lvbklkPWUsdGhpcy5fc2Vzc2lvbklkQ2hhbmdlZC5maXJlKGUsdCl9X2xvZ05vcm1hbChlKXtkLmxvZ05vcm1hbCh0aGlzLl9nZW5lcmF0ZUxvZ01lc3NhZ2UoZSkpfV9sb2dFcnJvcihlKXtkLmxvZ0Vycm9yKHRoaXMuX2dlbmVyYXRlTG9nTWVzc2FnZShlKSl9X3Byb2Nlc3NEZXN0cm95aW5nT25TZXJ2ZXIoKXt0aGlzLl9zdGF0ZT0wLHRoaXMuX2lzQ29ubmVjdGVkLnNldFZhbHVlKCExKSx0aGlzLl9jaGFydEFwaS5yZW1vdmVTZXNzaW9uKHRoaXMuX3Nlc3Npb25JZCksdGhpcy5fc2V0U2Vzc2lvbklkKCIiKX1fZm9yYmlkQ29ubmVjdFdoaWxlKGUpe3RoaXMuX2lzQ29ubmVjdEZvcmJpZGRlbj0hMCxlKCksdGhpcy5faXNDb25uZWN0Rm9yYmlkZGVuPSExfX1jbGFzcyBjIGV4dGVuZHMgaHtjb25zdHJ1Y3RvcihlLHQ9ITEpe3N1cGVyKGUsImNzIiwhMSksdGhpcy5fc2Vzc2lvbkRpc2FibGVkPSExLHRoaXMuX2hhbmRsZXI9bnVsbCx0aGlzLl9jcml0aWNhbEVycm9yPW5ldyByLkRlbGVnYXRlLHRoaXMuX3N5bWJvbFJlc29sdmVNYXA9bmV3IE1hcCx0aGlzLl9sYXN0U3ltYm9sUmVzb2x2ZUluZm9NYXA9bmV3IE1hcCx0aGlzLl9kaXNhYmxlU3RhdGlzdGljcz10fWRlc3Ryb3koKXt0aGlzLl9jcml0aWNhbEVycm9yLmRlc3Ryb3koKSx0aGlzLl9oYW5kbGVyPW51bGwsdGhpcy5fc3ltYm9sUmVzb2x2ZU1hcC5jbGVhcigpLHN1cGVyLmRlc3Ryb3koKX1zd2l0Y2hUaW1lem9uZShlKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5zd2l0Y2hUaW1lem9uZSh0aGlzLnNlc3Npb25JZCgpLGUpfWRlZmF1bHRSZXNvbHV0aW9ucygpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmRlZmF1bHRSZXNvbHV0aW9ucygpfWF2YWlsYWJsZUN1cnJlbmNpZXMoKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5hdmFpbGFibGVDdXJyZW5jaWVzKCl9YXZhaWxhYmxlVW5pdHMoKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5hdmFpbGFibGVVbml0cygpfWF2YWlsYWJsZU1ldHJpY3MoKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5hdmFpbGFibGVNZXRyaWNzKCl9YXZhaWxhYmxlUHJpY2VTb3VyY2VzKGUpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmF2YWlsYWJsZVByaWNlU291cmNlcyhlKX1yZXNvbHZlU3ltYm9sKGUsdCxzKXtpZih0aGlzLl9zeW1ib2xSZXNvbHZlTWFwLmhhcyh0KSl7Y29uc3RbZSxyXT10aGlzLl9zeW1ib2xSZXNvbHZlTWFwLmdldCh0KTtyZXR1cm4gQXJyYXkuaXNBcnJheShyKT9yLnB1c2gocyk6ci50aGVuKHMpLGV9e2NvbnN0IHI9W3NdO3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLnJlc29sdmVTeW1ib2wodGhpcy5zZXNzaW9uSWQoKSxlLHQsKHM9PntpZigic3ltYm9sX2Vycm9yIj09PXMubWV0aG9kKXRoaXMuX3N5bWJvbFJlc29sdmVNYXAuZGVsZXRlKHQpO2Vsc2V7dGhpcy5fc3ltYm9sUmVzb2x2ZU1hcC5zZXQodCxbZSxQcm9taXNlLnJlc29sdmUocyldKTtjb25zdFsscl09cy5wYXJhbXMsaT17cHJvX25hbWU6ci5wcm9fbmFtZSx0aWNrZXI6ci50aWNrZXJ9O3RoaXMuX2xhc3RTeW1ib2xSZXNvbHZlSW5mb01hcC5zZXQodCxpKSxpLnByb19uYW1lJiZ0aGlzLl9sYXN0U3ltYm9sUmVzb2x2ZUluZm9NYXAuc2V0KGkucHJvX25hbWUsaSksci5mdWxsX25hbWUmJnRoaXMuX2xhc3RTeW1ib2xSZXNvbHZlSW5mb01hcC5zZXQoci5mdWxsX25hbWUsaSksaS50aWNrZXImJnRoaXMuX2xhc3RTeW1ib2xSZXNvbHZlSW5mb01hcC5zZXQoaS50aWNrZXIsaSl9ci5mb3JFYWNoKChlPT5lKHMpKSl9KSksdGhpcy5fc3ltYm9sUmVzb2x2ZU1hcC5zZXQodCxbZSxyXSksZX19cmVxdWVzdEZpcnN0QmFyVGltZShlLHQscyl7cmV0dXJuIHRoaXMuX2dldENoYXJ0QXBpKCkucmVxdWVzdEZpcnN0QmFyVGltZSh0aGlzLnNlc3Npb25JZCgpLGUsdCxzKX1sYXN0U3ltYm9sUmVzb2x2ZUluZm8oZSl7cmV0dXJuIHRoaXMuX2xhc3RTeW1ib2xSZXNvbHZlSW5mb01hcC5nZXQoZSk/P251bGx9Y3JlYXRlU2VyaWVzKGUsdCxzLHIsaSxhLG8pe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmNyZWF0ZVNlcmllcyh0aGlzLnNlc3Npb25JZCgpLGUsdCxzLHIsaSxhLG8pfW1vZGlmeVNlcmllcyhlLHQscyxyLGksYSxvKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5tb2RpZnlTZXJpZXModGhpcy5zZXNzaW9uSWQoKSxlLHQscyxyLGksYSxvKX1yZW1vdmVTZXJpZXMoZSl7cmV0dXJuISF0aGlzLmlzQ29ubmVjdGVkKCkudmFsdWUoKSYmdGhpcy5fZ2V0Q2hhcnRBcGkoKS5yZW1vdmVTZXJpZXModGhpcy5zZXNzaW9uSWQoKSxlKX1yZXF1ZXN0TW9yZURhdGEoZSx0LHMpewpyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGU/dGhpcy5fZ2V0Q2hhcnRBcGkoKS5yZXF1ZXN0TW9yZURhdGEodGhpcy5zZXNzaW9uSWQoKSxlKTp0aGlzLl9nZXRDaGFydEFwaSgpLnJlcXVlc3RNb3JlRGF0YSh0aGlzLnNlc3Npb25JZCgpLGUsdCxzKX1yZXF1ZXN0TW9yZVRpY2ttYXJrcyhlLHQscyl7cmV0dXJuIHRoaXMuX2dldENoYXJ0QXBpKCkucmVxdWVzdE1vcmVUaWNrbWFya3ModGhpcy5zZXNzaW9uSWQoKSxlLHQscyl9c2V0RnV0dXJlVGlja21hcmtzTW9kZShlKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5zZXRGdXR1cmVUaWNrbWFya3NNb2RlKHRoaXMuc2Vzc2lvbklkKCksZSl9Y2FuQ3JlYXRlU3R1ZHkoZSx0KXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5jYW5DcmVhdGVTdHVkeSh0aGlzLnNlc3Npb25JZCgpLGUsdCl9Z2V0U3R1ZHlDb3VudGVyKCl7cmV0dXJuIHRoaXMuX2dldENoYXJ0QXBpKCkuZ2V0U3R1ZHlDb3VudGVyKHRoaXMuc2Vzc2lvbklkKCkpfWdldEZ1bmRhbWVudGFsQ291bnRlcigpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmdldEZ1bmRhbWVudGFsQ291bnRlcih0aGlzLnNlc3Npb25JZCgpKX1nZXRDaGlsZFN0dWR5Q291bnRlcigpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmdldENoaWxkU3R1ZHlDb3VudGVyKHRoaXMuc2Vzc2lvbklkKCkpfWNyZWF0ZVN0dWR5KGUsdCxzLHIsaSxhLG8pe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmNyZWF0ZVN0dWR5KHRoaXMuc2Vzc2lvbklkKCksZSx0LHMscixpLGEsbyl9bW9kaWZ5U3R1ZHkoZSx0LHMscixpKXtyZXR1cm4gdGhpcy5fZ2V0Q2hhcnRBcGkoKS5tb2RpZnlTdHVkeSh0aGlzLnNlc3Npb25JZCgpLGUsdCxzLHIsaSl9bm90aWZ5U3R1ZHkoZSx0LHMpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLm5vdGlmeVN0dWR5KHRoaXMuc2Vzc2lvbklkKCksZSx0LHMpfXJlbW92ZVN0dWR5KGUpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLnJlbW92ZVN0dWR5KHRoaXMuc2Vzc2lvbklkKCksZSl9Y3JlYXRlUG9pbnRzZXQoZSx0LHMscixpLGEpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLmNyZWF0ZVBvaW50c2V0KHRoaXMuc2Vzc2lvbklkKCksZSx0LHMscixpLGEpfW1vZGlmeVBvaW50c2V0KGUsdCxzLHIpe3JldHVybiB0aGlzLl9nZXRDaGFydEFwaSgpLm1vZGlmeVBvaW50c2V0KHRoaXMuc2Vzc2lvbklkKCksZSx0LHMscil9cmVtb3ZlUG9pbnRzZXQoZSl7cmV0dXJuIHRoaXMuX2dldENoYXJ0QXBpKCkucmVtb3ZlUG9pbnRzZXQodGhpcy5zZXNzaW9uSWQoKSxlKX1zZXRWaXNpYmxlVGltZVJhbmdlKGUsdCxzLHIsaSxhLG8pe3RoaXMuX2dldENoYXJ0QXBpKCkuc2V0VmlzaWJsZVRpbWVSYW5nZSh0aGlzLnNlc3Npb25JZCgpLGUsdCxzLHIsITAsaSxhLHZvaWQgMCxvKX1jcml0aWNhbEVycm9yKCl7cmV0dXJuIHRoaXMuX2NyaXRpY2FsRXJyb3J9Y29ubmVjdChlPW51bGwpe251bGwhPT1lJiYodGhpcy5faGFuZGxlcj1lKSx0aGlzLl9zeW1ib2xSZXNvbHZlTWFwLmNsZWFyKCksc3VwZXIuY29ubmVjdCgpfXNldEhhbmRsZXIoZSl7dGhpcy5faGFuZGxlcj1lfWNvbm5lY3RlZCgpe3JldHVybiB0aGlzLmlzQ29ubmVjdGVkKCkudmFsdWUoKSYmIXRoaXMuX3Nlc3Npb25EaXNhYmxlZH1kaXNhYmxlKCl7dGhpcy5fc2Vzc2lvbkRpc2FibGVkPSEwfWNoYXJ0QXBpKCl7cmV0dXJuIHRoaXMuX2dldENoYXJ0QXBpKCl9X3NlbmRDcmVhdGVTZXNzaW9uKCl7T2JqZWN0LmtleXModGhpcykuZm9yRWFjaCgoZT0+ey9eKHN8c3R8c3ltYm9sXylcZCskLy50ZXN0KGUpJiZkZWxldGUgdGhpc1tlXX0pKSx0aGlzLl9nZXRDaGFydEFwaSgpLmNoYXJ0Q3JlYXRlU2Vzc2lvbih0aGlzLnNlc3Npb25JZCgpLHRoaXMuX2Rpc2FibGVTdGF0aXN0aWNzKX1fc2VuZFJlbW92ZVNlc3Npb24oKXt0aGlzLl9nZXRDaGFydEFwaSgpLmNoYXJ0RGVsZXRlU2Vzc2lvbih0aGlzLnNlc3Npb25JZCgpKX1fb25NZXNzYWdlKGUpe3RoaXMuX2hhbmRsZXImJnRoaXMuX2hhbmRsZXIoZSl9X29uQ3JpdGljYWxFcnJvcihlLHQpe3RoaXMuX2NyaXRpY2FsRXJyb3IuZmlyZShlLHQpLHN1cGVyLl9vbkNyaXRpY2FsRXJyb3IoZSx0KX19fSw0NzU0NzgoZSx0LHMpe3MuZCh0LHtDb25mbGF0ZWRDaHVua3NCdWlsZGVyOigpPT5vfSk7dmFyIHI9cygxMzg2MzgpLGk9cygxOTg5MDEpO2NvbnN0IGE9W3tiYXJzVG9NZXJnZToxMCxmb3JCYXJzcGFjaW5nTGFyZ2VyVGhlbjouMDN9LHtiYXJzVG9NZXJnZTozMCxmb3JCYXJzcGFjaW5nTGFyZ2VyVGhlbjouMDF9LHtiYXJzVG9NZXJnZToxMDAsZm9yQmFyc3BhY2luZ0xhcmdlclRoZW46LjAwM30se2JhcnNUb01lcmdlOjUwMCxmb3JCYXJzcGFjaW5nTGFyZ2VyVGhlbjowfV07Y2xhc3Mgb3tjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX3Bsb3RzPWUsdGhpcy5fc3RhdGU9e2NodW5rczpuZXcgTWFwLHByaWNlU291cmNlOm51bGwscHJpY2VTb3VyY2VzUHJvdmlkZXI6dH0sdGhpcy5fc2V0RW1wdHlDb25mbGF0ZWRDaHVua3MoKX1jb25mbGF0ZWRDaHVua3MoZSx0KXtpZih0IT09dGhpcy5fc3RhdGUucHJpY2VTb3VyY2Upe3RoaXMuX3N0YXRlLnByaWNlU291cmNlPXQ7Y29uc3QgZT10aGlzLl9wbG90cy5maXJzdCgpO2UmJih0aGlzLl9zZXRFbXB0eUNvbmZsYXRlZENodW5rcygpLHRoaXMuX3JlYnVpbGRDb25mbGF0ZWRDaHVua3MoZSkpfWNvbnN0IHM9KDAsci5lbnN1cmVEZWZpbmVkKShhLmZpbmQoKHQ9PnQuZm9yQmFyc3BhY2luZ0xhcmdlclRoZW48PWUpKSk7cmV0dXJuKDAsci5lbnN1cmVEZWZpbmVkKSh0aGlzLl9zdGF0ZS5jaHVua3MuZ2V0KHMuYmFyc1RvTWVyZ2UpKX1tZXJnZURhdGEoZSl7Y29uc3QgdD10aGlzLl9wbG90cy5zaXplKCkscz10aGlzLl9wbG90cy5tZXJnZShlKTtyZXR1cm4gcyYmbnVsbCE9PXRoaXMuX3N0YXRlLnByaWNlU291cmNlJiYodD09PXRoaXMuX3Bsb3RzLnNpemUoKSYmcy5pbmRleD09PXRoaXMuX3Bsb3RzLmxhc3RJbmRleCgpP3RoaXMuX3VwZGF0ZUxhdGVzdENodW5rcygpOnRoaXMuX3JlYnVpbGRDb25mbGF0ZWRDaHVua3MocykpLHN9bW92ZURhdGEoZSl7CnRoaXMuX3Bsb3RzLm1vdmUoZSksdGhpcy5fcGxvdHMuc2l6ZSgpPjAmJnRoaXMuX2NsZWFyU3RhdGUoKX1jbGVhckRhdGEoKXt0aGlzLl9wbG90cy5jbGVhcigpLHRoaXMuX2NsZWFyU3RhdGUoKX1fcmVidWlsZENvbmZsYXRlZENodW5rcyhlKXtjb25zdCB0PXRoaXMuX3N0YXRlLnByaWNlU291cmNlO2lmKG51bGw9PT10KXJldHVybjtjb25zdCBzPWUuaW5kZXgsbz10aGlzLl9zdGF0ZS5wcmljZVNvdXJjZXNQcm92aWRlcih0KSxuPShlLHQscyk9PntsZXQgcj1udWxsO2Zvcihjb25zdCBpIG9mIGUpe2NvbnN0IGU9byhpLnZhbHVlKTtyJiZpLmluZGV4LXIuc3RhcnRUaW1lPj1zLmJhcnNUb01lcmdlJiYodC5wdXNoKHIpLHI9bnVsbCkscj8oci5lbmRUaW1lPWkuaW5kZXgsci5oaWdoPU1hdGgubWF4KHIuaGlnaCxlKSxyLmxvdz1NYXRoLm1pbihyLmxvdyxlKSxyLmNsb3NlPWUpOnI9e3N0YXJ0VGltZTppLmluZGV4LGVuZFRpbWU6aS5pbmRleCxvcGVuOmUsaGlnaDplLGxvdzplLGNsb3NlOmV9fXImJnQucHVzaChyKX07YS5mb3JFYWNoKChlPT57Y29uc3QgdD0oMCxyLmVuc3VyZURlZmluZWQpKHRoaXMuX3N0YXRlLmNodW5rcy5nZXQoZS5iYXJzVG9NZXJnZSkpLGE9KDAsaS5sb3dlcmJvdW5kKSh0LHMsKChlLHQpPT5lLmVuZFRpbWU8dCkpO2lmKDA9PT1hJiZ0Lmxlbmd0aD4wKXtjb25zdCBzPXRbMF0uc3RhcnRUaW1lLTEsaT0oMCxyLmVuc3VyZU5vdE51bGwpKHRoaXMuX3Bsb3RzLmZpcnN0SW5kZXgoKSksYT10aGlzLl9wbG90cy5yYW5nZUl0ZXJhdG9yKGkscyksbz1bXTtuKGEsbyxlKTtjb25zdCBkPW8uY29uY2F0KHQpO3RoaXMuX3N0YXRlLmNodW5rcy5zZXQoZS5iYXJzVG9NZXJnZSxkKX1lbHNle2NvbnN0IHM9KDAsci5lbnN1cmVOb3ROdWxsKSh0aGlzLl9wbG90cy5sYXN0SW5kZXgoKSk7dC5zcGxpY2UoYSk7bGV0IGk9KDAsci5lbnN1cmVOb3ROdWxsKSh0aGlzLl9wbG90cy5maXJzdEluZGV4KCkpO3QubGVuZ3RoJiYoaT10W3QubGVuZ3RoLTFdLmVuZFRpbWUrMSk7Y29uc3Qgbz10aGlzLl9wbG90cy5yYW5nZUl0ZXJhdG9yKGkscyk7bihvLHQsZSl9fSkpfV91cGRhdGVMYXRlc3RDaHVua3MoKXtjb25zdCBlPSgwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fcGxvdHMubGFzdCgpKSx0PXRoaXMuX3N0YXRlLnByaWNlU291cmNlc1Byb3ZpZGVyKCJjbG9zZSIpO2EuZm9yRWFjaCgocz0+e2NvbnN0IGk9KDAsci5lbnN1cmVEZWZpbmVkKSh0aGlzLl9zdGF0ZS5jaHVua3MuZ2V0KHMuYmFyc1RvTWVyZ2UpKSxhPXQoZS52YWx1ZSksbz1pW2kubGVuZ3RoLTFdO28uaGlnaD1NYXRoLm1heChvLmhpZ2gsYSksby5sb3c9TWF0aC5taW4oby5sb3csYSksby5jbG9zZT1hLG8uZW5kVGltZT1lLmluZGV4fSkpfV9zZXRFbXB0eUNvbmZsYXRlZENodW5rcygpe2EuZm9yRWFjaCgoZT0+dGhpcy5fc3RhdGUuY2h1bmtzLnNldChlLmJhcnNUb01lcmdlLFtdKSkpfV9jbGVhclN0YXRlKCl7dGhpcy5fc3RhdGUuY2h1bmtzLmNsZWFyKCksdGhpcy5fc3RhdGUucHJpY2VTb3VyY2U9bnVsbH19fSw5MzYzMjYoZSx0LHMpe3ZhciByO3MuZCh0LHtQbG90Um93U2VhcmNoTW9kZTooKT0+cn0pLGZ1bmN0aW9uKGUpe2VbZS5OZWFyZXN0TGVmdD0tMV09Ik5lYXJlc3RMZWZ0IixlW2UuRXhhY3Q9MF09IkV4YWN0IixlW2UuTmVhcmVzdFJpZ2h0PTFdPSJOZWFyZXN0UmlnaHQifShyfHwocj17fSkpfSw3OTE1MjEoZSx0LHMpe3ZhciByO3MuZCh0LHtTeW1ib2xFcnJvclBlcm1pc3Npb25EZW5pZWRSZWFzb246KCk9PnIsaW52YWxpZFN5bWJvbDooKT0+YSxwZXJtaXNzaW9uRGVuaWVkOigpPT5pfSksZnVuY3Rpb24oZSl7ZS5TeW1ib2w9InN5bWJvbCIsZS5Hcm91cFBlcm1pc3Npb249Imdyb3VwIn0ocnx8KHI9e30pKTtjb25zdCBpPSJwZXJtaXNzaW9uIGRlbmllZCIsYT0iaW52YWxpZCBzeW1ib2wifSw4NDg2MDEoZSx0LHMpe3MuZCh0LHtwYXJzZU5vblNlcmllc0VudmVsb3BlOigpPT5hfSk7dmFyIHI9cyg2MDE4NDEpLGk9cyg5OTU2NTUpO2Z1bmN0aW9uIGEoZSl7aWYoIiI9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9SlNPTi5wYXJzZShlKTtpZighKDAsci5pc09iamVjdCkodCl8fCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcigiTm9uLW9iamVjdCBjb250ZW50IGluIHRoZSBub24tc2VyaWVzIGVudmVsb3BlIik7aWYoKDAsci5oYXNQcm9wZXJ0eSkodCwiaW5kZXhlc19yZXBsYWNlIikpcmV0dXJue25zRGF0YTp7aW5kZXhlc19yZXBsYWNlOiEwfSxwYXJzZWREYXRhOnR9O2NvbnN0IHM9e2luZGV4ZXNfcmVwbGFjZTohMX07aWYoKDAsci5oYXNQcm9wZXJ0eSkodCwib2Zmc2V0cyIpJiYocy5vZmZzZXRzPXQub2Zmc2V0cyksKDAsci5oYXNQcm9wZXJ0eSkodCwiaXNVcGRhdGUiKSl7aWYoImJvb2xlYW4iIT10eXBlb2YgdC5pc1VwZGF0ZSl0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHlwZSBvZiAiaXNVcGRhdGUiIGZpZWxkJyk7cy5pc1VwZGF0ZT10LmlzVXBkYXRlfXJldHVybigwLHIuaGFzUHJvcGVydHkpKHQsImRhdGEiKSYmKHMuZGF0YT10LmRhdGEpLCgwLHIuaGFzUHJvcGVydHkpKHQsImdyYXBoaWNzQ21kcyIpJiYocy5ncmFwaGljc0NtZHM9KDAsaS52YWxpZGF0ZUdyYXBoaWNzQ29tbWFuZHMpKHQuZ3JhcGhpY3NDbWRzKSkse25zRGF0YTpzLHBhcnNlZERhdGE6dH19fSw1NTA5MDQoZSx0LHMpe3MuZCh0LHt1bnBhY2tOb25TZXJpZXNEYXRhOigpPT5pfSk7dmFyIHI9cyg4NDg2MDEpO2FzeW5jIGZ1bmN0aW9uIGkoZSl7cmV0dXJuKDAsci5wYXJzZU5vblNlcmllc0VudmVsb3BlKShlKT8ubnNEYXRhPz9udWxsfX0sMTU2OTA4KGUsdCxzKXtzLmQodCx7REVGQVVMVF9OVU1CQVJTOigpPT5pLGluaXRpYWxSZXF1ZXN0T3B0aW9uc1RvTnVtQmFyczooKT0+YX0pO3ZhciByPXMoMTM4NjM4KTtjb25zdCBpPTMwMDtmdW5jdGlvbiBhKGUpe3JldHVybiBlLnN0YXJ0RGF0ZT9lLmVuZERhdGV8fGUuY291bnQ/ZS5lbmREYXRlP1siZnJvbV90byIsZS5zdGFydERhdGUsZS5lbmREYXRlXTpbImJhcl9jb3VudCIsZS5zdGFydERhdGUsKDAsCnIuZW5zdXJlKShlLmNvdW50KV06WyJmcm9tX3RvIixlLnN0YXJ0RGF0ZV06ZS5jb3VudHx8aX19LDg3MTAzNyhlLHQscyl7YXN5bmMgZnVuY3Rpb24gcihlLHQpe2lmKHZvaWQgMD09PWUpcmV0dXJue3Byb2plY3Rpb25QbG90czpbXSxib3hTaXplOm51bGx9O2lmKCIiPT09ZS5kfHwibm9jaGFuZ2UiPT09ZS5pbmRleGVzKXJldHVybiBudWxsO2NvbnN0IHM9YXdhaXQgdChlLmQpO2lmKG51bGw9PT1zfHxzLmluZGV4ZXNfcmVwbGFjZSlyZXR1cm4gbnVsbDtjb25zdCByPWUuaW5kZXhlcyx7YmFyczppPVtdLHByaWNlOmEsYm94U2l6ZTpvLHJldmVyc2FsQW1vdW50Om59PXMuZGF0YTtyZXR1cm57bGFzdFByaWNlOmEscHJvamVjdGlvblBsb3RzOmkubWFwKChlPT57bGV0IHQ7cmV0dXJuImZhY3RvciJpbiBlP3Q9ZS5mYWN0b3I6ImFkZGl0aW9uYWxQcmljZSJpbiBlJiYodD1lLmFkZGl0aW9uYWxQcmljZSkse2luZGV4OnJbZS50aW1lXSx2YWx1ZTpbMCxlLm9wZW4sZS5oaWdoLGUubG93LGUuY2xvc2UsZS52b2x1bWUsdF19fSkpLHJldmVyc2FsQW1vdW50Om4sYm94U2l6ZTpvfX1zLmQodCx7cGFyc2VKYXBhbmVzZVByb2plY3Rpb25CYXJzOigpPT5yfSl9LDkzNTI0MChlLHQscyl7cy5kKHQse1Nlcmllc0RhdGFTb3VyY2U6KCk9PkN9KTt2YXIgcj1zKDEzODYzOCksaT1zKDYwMTg0MSksYT1zKDIyMTA2MSksbz1zKDI1NDY3Myksbj1zKDYxOTE2NSksZD1zKDc5MTUyMSksbD1zKDU1MDkwNCksaD1zKDE1NjkwOCksYz1zKDExMTk1MyksdT1zKDk0ODM4MCk7Y2xhc3MgX3tjb25zdHJ1Y3Rvcigpe3RoaXMuX2NyZWF0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5fbW9kaWZpZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5fY2xlYXJlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9sb2FkaW5nPW5ldyB1LkRlbGVnYXRlLHRoaXMuX2NvbXBsZXRlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9lcnJvcj1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zeW1ib2xFcnJvcj1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zeW1ib2xSZXNvbHZlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zZXJpZXNFcnJvcj1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zeW1ib2xOb3RQZXJtaXR0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5fc3ltYm9sSW52YWxpZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zeW1ib2xHcm91cE5vdFBlcm1pdHRlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9jaGFydFR5cGVOb3RQZXJtaXR0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5faW50cmFkYXlTcHJlYWROb3RQZXJtaXR0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5faW50cmFkYXlFeGNoYW5nZU5vdFBlcm1pdHRlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9jdXN0b21JbnRlcnZhbE5vdFBlcm1pdHRlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zZWNvbmRzSW50ZXJ2YWxOb3RQZXJtaXR0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5fdGlja3NJbnRlcnZhbE5vdFBlcm1pdHRlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9iYXJSZWNlaXZlZD1uZXcgdS5EZWxlZ2F0ZSx0aGlzLl9zZXJpZXNUaW1lRnJhbWU9bmV3IHUuRGVsZWdhdGUsdGhpcy5fZGF0YVVwZGF0ZWQ9bmV3IHUuRGVsZWdhdGUsdGhpcy5fdW5zdXBwb3J0ZWRSZXNvbHV0aW9uUmVxdWVzdGVkPW5ldyB1LkRlbGVnYXRlfWRlc3Ryb3koKXt0aGlzLl9jcmVhdGVkLmRlc3Ryb3koKSx0aGlzLl9tb2RpZmllZC5kZXN0cm95KCksdGhpcy5fbG9hZGluZy5kZXN0cm95KCksdGhpcy5fY29tcGxldGVkLmRlc3Ryb3koKSx0aGlzLl9lcnJvci5kZXN0cm95KCksdGhpcy5fc3ltYm9sRXJyb3IuZGVzdHJveSgpLHRoaXMuX3N5bWJvbFJlc29sdmVkLmRlc3Ryb3koKSx0aGlzLl9zZXJpZXNFcnJvci5kZXN0cm95KCksdGhpcy5fc3ltYm9sSW52YWxpZC5kZXN0cm95KCksdGhpcy5fc3ltYm9sTm90UGVybWl0dGVkLmRlc3Ryb3koKSx0aGlzLl9zeW1ib2xHcm91cE5vdFBlcm1pdHRlZC5kZXN0cm95KCksdGhpcy5fY2hhcnRUeXBlTm90UGVybWl0dGVkLmRlc3Ryb3koKSx0aGlzLl9pbnRyYWRheVNwcmVhZE5vdFBlcm1pdHRlZC5kZXN0cm95KCksdGhpcy5faW50cmFkYXlFeGNoYW5nZU5vdFBlcm1pdHRlZC5kZXN0cm95KCksdGhpcy5fY3VzdG9tSW50ZXJ2YWxOb3RQZXJtaXR0ZWQuZGVzdHJveSgpLHRoaXMuX3NlY29uZHNJbnRlcnZhbE5vdFBlcm1pdHRlZC5kZXN0cm95KCksdGhpcy5fdGlja3NJbnRlcnZhbE5vdFBlcm1pdHRlZC5kZXN0cm95KCksdGhpcy5fYmFyUmVjZWl2ZWQuZGVzdHJveSgpLHRoaXMuX3Nlcmllc1RpbWVGcmFtZS5kZXN0cm95KCksdGhpcy5fZGF0YVVwZGF0ZWQuZGVzdHJveSgpLHRoaXMuX3Vuc3VwcG9ydGVkUmVzb2x1dGlvblJlcXVlc3RlZC5kZXN0cm95KCl9Y3JlYXRlZCgpe3JldHVybiB0aGlzLl9jcmVhdGVkfW1vZGlmaWVkKCl7cmV0dXJuIHRoaXMuX21vZGlmaWVkfWNsZWFyZWQoKXtyZXR1cm4gdGhpcy5fY2xlYXJlZH1sb2FkaW5nKCl7cmV0dXJuIHRoaXMuX2xvYWRpbmd9Y29tcGxldGVkKCl7cmV0dXJuIHRoaXMuX2NvbXBsZXRlZH1lcnJvcigpe3JldHVybiB0aGlzLl9lcnJvcn1zeW1ib2xFcnJvcigpe3JldHVybiB0aGlzLl9zeW1ib2xFcnJvcn1zeW1ib2xSZXNvbHZlZCgpe3JldHVybiB0aGlzLl9zeW1ib2xSZXNvbHZlZH1zZXJpZXNFcnJvcigpe3JldHVybiB0aGlzLl9zZXJpZXNFcnJvcn1zeW1ib2xJbnZhbGlkKCl7cmV0dXJuIHRoaXMuX3N5bWJvbEludmFsaWR9c3ltYm9sTm90UGVybWl0dGVkKCl7cmV0dXJuIHRoaXMuX3N5bWJvbE5vdFBlcm1pdHRlZH1zeW1ib2xHcm91cE5vdFBlcm1pdHRlZCgpe3JldHVybiB0aGlzLl9zeW1ib2xHcm91cE5vdFBlcm1pdHRlZH1jaGFydFR5cGVOb3RQZXJtaXR0ZWQoKXtyZXR1cm4gdGhpcy5fY2hhcnRUeXBlTm90UGVybWl0dGVkfWludHJhZGF5U3ByZWFkTm90UGVybWl0dGVkKCl7cmV0dXJuIHRoaXMuX2ludHJhZGF5U3ByZWFkTm90UGVybWl0dGVkfWludHJhZGF5RXhjaGFuZ2VOb3RQZXJtaXR0ZWQoKXtyZXR1cm4gdGhpcy5faW50cmFkYXlFeGNoYW5nZU5vdFBlcm1pdHRlZH1jdXN0b21JbnRlcnZhbE5vdFBlcm1pdHRlZCgpewpyZXR1cm4gdGhpcy5fY3VzdG9tSW50ZXJ2YWxOb3RQZXJtaXR0ZWR9c2Vjb25kc0ludGVydmFsTm90UGVybWl0dGVkKCl7cmV0dXJuIHRoaXMuX3NlY29uZHNJbnRlcnZhbE5vdFBlcm1pdHRlZH10aWNrc0ludGVydmFsTm90UGVybWl0dGVkKCl7cmV0dXJuIHRoaXMuX3RpY2tzSW50ZXJ2YWxOb3RQZXJtaXR0ZWR9YmFyUmVjZWl2ZWQoKXtyZXR1cm4gdGhpcy5fYmFyUmVjZWl2ZWR9c2VyaWVzVGltZUZyYW1lKCl7cmV0dXJuIHRoaXMuX3Nlcmllc1RpbWVGcmFtZX1kYXRhVXBkYXRlZCgpe3JldHVybiB0aGlzLl9kYXRhVXBkYXRlZH11bnN1cHBvcnRlZFJlc29sdXRpb25SZXF1ZXN0ZWQoKXtyZXR1cm4gdGhpcy5fdW5zdXBwb3J0ZWRSZXNvbHV0aW9uUmVxdWVzdGVkfWZpcmVDb21wbGV0ZWQoZSl7dGhpcy5fY29tcGxldGVkLmZpcmUoZSl9ZmlyZUNyZWF0ZWQoZSl7dGhpcy5fY3JlYXRlZC5maXJlKGUpfWZpcmVNb2RpZmllZCgpe3RoaXMuX21vZGlmaWVkLmZpcmUoKX1maXJlQ2xlYXJlZCgpe3RoaXMuX2NsZWFyZWQuZmlyZSgpfWZpcmVMb2FkaW5nKGUpe3RoaXMuX2xvYWRpbmcuZmlyZShlKX1maXJlRXJyb3IoKXt0aGlzLl9lcnJvci5maXJlKCl9ZmlyZVN5bWJvbEVycm9yKGUpe3RoaXMuX3N5bWJvbEVycm9yLmZpcmUoZSksdGhpcy5maXJlRXJyb3IoKX1maXJlU3ltYm9sUmVzb2x2ZWQoZSl7dGhpcy5fc3ltYm9sUmVzb2x2ZWQuZmlyZShlKX1maXJlU2VyaWVzRXJyb3IoZSl7dGhpcy5fc2VyaWVzRXJyb3IuZmlyZShlKSx0aGlzLmZpcmVFcnJvcigpfWZpcmVTeW1ib2xJbnZhbGlkKCl7dGhpcy5fc3ltYm9sSW52YWxpZC5maXJlKCl9ZmlyZVN5bWJvbE5vdFBlcm1pdHRlZChlKXt0aGlzLl9zeW1ib2xOb3RQZXJtaXR0ZWQuZmlyZShlKX1maXJlU3ltYm9sR3JvdXBOb3RQZXJtaXR0ZWQoZSl7dGhpcy5fc3ltYm9sR3JvdXBOb3RQZXJtaXR0ZWQuZmlyZShlKX1maXJlQ2hhcnRUeXBlTm90UGVybWl0dGVkKGUpe3RoaXMuX2NoYXJ0VHlwZU5vdFBlcm1pdHRlZC5maXJlKGUpLHRoaXMuZmlyZUVycm9yKCl9ZmlyZUludHJhZGF5U3ByZWFkTm90UGVybWl0dGVkKCl7dGhpcy5faW50cmFkYXlTcHJlYWROb3RQZXJtaXR0ZWQuZmlyZSgpLHRoaXMuZmlyZUVycm9yKCl9ZmlyZUludHJhZGF5RXhjaGFuZ2VOb3RQZXJtaXR0ZWQoKXt0aGlzLl9pbnRyYWRheUV4Y2hhbmdlTm90UGVybWl0dGVkLmZpcmUoKSx0aGlzLmZpcmVFcnJvcigpfWZpcmVDdXN0b21JbnRlcnZhbE5vdFBlcm1pdHRlZChlKXt0aGlzLl9jdXN0b21JbnRlcnZhbE5vdFBlcm1pdHRlZC5maXJlKGUpLHRoaXMuZmlyZUVycm9yKCl9ZmlyZVNlY29uZHNJbnRlcnZhbE5vdFBlcm1pdHRlZCgpe3RoaXMuX3NlY29uZHNJbnRlcnZhbE5vdFBlcm1pdHRlZC5maXJlKCksdGhpcy5maXJlRXJyb3IoKX1maXJlVGlja3NJbnRlcnZhbE5vdFBlcm1pdHRlZCgpe3RoaXMuX3RpY2tzSW50ZXJ2YWxOb3RQZXJtaXR0ZWQuZmlyZSgpLHRoaXMuZmlyZUVycm9yKCl9ZmlyZUJhclJlY2VpdmVkKGUpe3RoaXMuX2JhclJlY2VpdmVkLmZpcmUoZSl9ZmlyZVNlcmllc1RpbWVGcmFtZShlLHQscyxyLGkpe3RoaXMuX3Nlcmllc1RpbWVGcmFtZS5maXJlKGUsdCxzLHIsaSl9ZmlyZURhdGFVcGRhdGVkKGUsdCxzLHIsaSl7dGhpcy5fZGF0YVVwZGF0ZWQuZmlyZShlLHQscyxyLGkpfWZpcmVVbnN1cHBvcnRlZFJlc29sdXRpb25SZXF1ZXN0ZWQoKXt0aGlzLl91bnN1cHBvcnRlZFJlc29sdXRpb25SZXF1ZXN0ZWQuZmlyZSgpfX12YXIgbT1zKDg3MTAzNykscD1zKDg1Mjk4MCkseT1zKDMyMjU1NCk7Y29uc3QgZz0veyhcdyspfS9nO2NvbnN0IGI9KDAsYS5nZXRMb2dnZXIpKCJDaGFydC5TZXJpZXNEYXRhU291cmNlIik7dmFyIGY7IWZ1bmN0aW9uKGUpe2VbZS5JZGxlPTBdPSJJZGxlIixlW2UuQXdhaXRpbmdDb25uZWN0aW9uPTFdPSJBd2FpdGluZ0Nvbm5lY3Rpb24iLGVbZS5Bd2FpdGluZ0ZpcnN0RGF0YVVwZGF0ZT0yXT0iQXdhaXRpbmdGaXJzdERhdGFVcGRhdGUiLGVbZS5BY3RpdmU9M109IkFjdGl2ZSJ9KGZ8fChmPXt9KSk7bGV0IFM9MTtsZXQgdj0xO2Z1bmN0aW9uIEkoZSl7cmV0dXJuKDAsYy5leHRyYWN0RXh0ZW5kZWRTeW1ib2wpKGUpLnN5bWJvbH1jbGFzcyBDe2NvbnN0cnVjdG9yKGUsdCxzLHIpe3RoaXMuX2V4dFN5bWJvbD1udWxsLHRoaXMuX2xhc3RSZXNvbHZlZFN5bWJvbD0iIix0aGlzLl9jcmVhdGVTZXJpZXNPdmVycmlkZGVuUGFyYW1zPTAsdGhpcy5faW5zdGFuY2VJZD1udWxsLHRoaXMuX3N5bWJvbEluc3RhbmNlSWQ9bnVsbCx0aGlzLl9yZXNvbHV0aW9uPW51bGwsdGhpcy5fdGltZUZyYW1lPW51bGwsdGhpcy5fZGF0YT1uZXcgbi5TZXJpZXNEYXRhLHRoaXMuX2RhdGFFdmVudHM9bmV3IF8sdGhpcy5fc3RhdHVzPWYuSWRsZSx0aGlzLl90dXJuYXJvdW5kQ291bnRlcj0xLHRoaXMuX2JvdW5kT25HYXRld2F5SXNDb25uZWN0ZWRDaGFuZ2VkPXRoaXMuX29uR2F0ZXdheUlzQ29ubmVjdGVkQ2hhbmdlZC5iaW5kKHRoaXMpLHRoaXMuX2JvdW5kT25NZXNzYWdlPXRoaXMuX29uTWVzc2FnZS5iaW5kKHRoaXMpLHRoaXMuX29uZ29pbmdEYXRhVXBkYXRlPVByb21pc2UucmVzb2x2ZSgpLHRoaXMuX2dhdGV3YXk9ZSx0aGlzLl90dXJuYXJvdW5kUHJlZml4PXQsdGhpcy5fY3JlYXRlU2VyaWVzUGFyYW1zPSgwLGguaW5pdGlhbFJlcXVlc3RPcHRpb25zVG9OdW1CYXJzKShzPz97Y291bnQ6aC5ERUZBVUxUX05VTUJBUlN9KSx0aGlzLl90aW1lRnJhbWU9cnx8bnVsbCx0aGlzLl9nYXRld2F5LmlzQ29ubmVjdGVkKCkuc3Vic2NyaWJlKHRoaXMuX2JvdW5kT25HYXRld2F5SXNDb25uZWN0ZWRDaGFuZ2VkKX1kZXN0cm95KCl7dGhpcy5zdG9wKCksdGhpcy5fZ2F0ZXdheS5pc0Nvbm5lY3RlZCgpLnVuc3Vic2NyaWJlKHRoaXMuX2JvdW5kT25HYXRld2F5SXNDb25uZWN0ZWRDaGFuZ2VkKSx0aGlzLl9kYXRhRXZlbnRzLmRlc3Ryb3koKX1jYW5Nb2RpZnlTZXJpZXMoZSx0KXtjb25zdCBzPSEoMCwKaS5kZWVwRXF1YWxzKSh0aGlzLl9leHRTeW1ib2wsZSlbMF0scj1udWxsPT09dGhpcy5fcmVzb2x1dGlvbnx8IW8uSW50ZXJ2YWwuaXNFcXVhbCh0aGlzLl9yZXNvbHV0aW9uLHQpO3JldHVybiBzfHxyfW1vZGlmeVNlcmllcyhlLHQscz1udWxsLGE9ITEsbj1udWxsKXthJiYoYi5sb2dOb3JtYWwoIkR1ZSB0byBmb3JjZSBmbGFnIGNsZWFyaW5nIHN5bWJvbCAmIHJlc29sdXRpb24gdG8gZm9yY2UgcmUtcmVxdWVzdGluZyBkYXRhLiIpLHRoaXMuX2V4dFN5bWJvbD1udWxsLHRoaXMuX3Jlc29sdXRpb249bnVsbCk7Y29uc3QgZD1JKGUpLGw9IXRoaXMuc3ltYm9sU2FtZUFzUmVzb2x2ZWQoZCk7aWYobCYmKHRoaXMuX2xhc3RSZXNvbHZlZFN5bWJvbD0iIiksdGhpcy5fZXh0U3ltYm9sJiYhbCl7Y29uc3QgdD1JKHRoaXMuX2V4dFN5bWJvbCk7KDAsYy5yZXBsYWNlRXh0ZW5kZWRTeW1ib2wpKGUsdCl9Y29uc3QgaD10aGlzLl9leHRTeW1ib2wsdT10aGlzLl9yZXNvbHV0aW9uO2lmKHRoaXMuX2V4dFN5bWJvbD1lLHRoaXMuX3Jlc29sdXRpb249dCxudWxsPT09dGhpcy5faW5zdGFuY2VJZClyZXR1cm4gdm9pZCh0aGlzLl90aW1lRnJhbWU9cyk7Y29uc3QgXz0hKDAsaS5kZWVwRXF1YWxzKShoLGUpWzBdO18mJigwLGMucmVwbGFjZUV4dGVuZGVkU3ltYm9sKSh0aGlzLl9leHRTeW1ib2wsZCk7Y29uc3QgbT1udWxsPT09dXx8IW8uSW50ZXJ2YWwuaXNFcXVhbCh1LHQpOyhffHxtfHxudWxsIT09cykmJih0aGlzLl90aW1lRnJhbWU9bnVsbCwoX3x8bSkmJnRoaXMuX3R1cm5hcm91bmRDb3VudGVyKyssXyYmdGhpcy5fcmVzb2x2ZVN5bWJvbCgpLHRoaXMuX2dhdGV3YXkubW9kaWZ5U2VyaWVzKHRoaXMuX2luc3RhbmNlSWQsdGhpcy50dXJuYXJvdW5kKCksKDAsci5lbnN1cmVOb3ROdWxsKSh0aGlzLl9zeW1ib2xJbnN0YW5jZUlkKSx0aGlzLl9yZXNvbHV0aW9uLG4scyx0aGlzLl9ib3VuZE9uTWVzc2FnZSksdGhpcy5fZGF0YUV2ZW50cy5maXJlTW9kaWZpZWQoKSl9cmVxdWVzdE1vcmVEYXRhKGUpe251bGwhPT10aGlzLl9pbnN0YW5jZUlkJiZ0aGlzLl9nYXRld2F5LnJlcXVlc3RNb3JlRGF0YSh0aGlzLl9pbnN0YW5jZUlkLGUsdGhpcy5fYm91bmRPbk1lc3NhZ2UpfXJlcXVlc3RNb3JlVGlja21hcmtzKGUpe251bGwhPT10aGlzLl9pbnN0YW5jZUlkJiZ0aGlzLl9nYXRld2F5LnJlcXVlc3RNb3JlVGlja21hcmtzKHRoaXMuX2luc3RhbmNlSWQsZSx0aGlzLl9ib3VuZE9uTWVzc2FnZSl9c2V0RnV0dXJlVGlja21hcmtzTW9kZShlKXtudWxsIT09dGhpcy5faW5zdGFuY2VJZCYmdGhpcy5fZ2F0ZXdheS5zZXRGdXR1cmVUaWNrbWFya3NNb2RlKGUpfWlzU3RhcnRlZCgpe3JldHVybiB0aGlzLl9zdGF0dXMhPT1mLklkbGV9aXNBY3RpdmUoKXtyZXR1cm4gdGhpcy5fc3RhdHVzPT09Zi5BY3RpdmV9cmVzb2x1dGlvbigpe3JldHVybiB0aGlzLl9yZXNvbHV0aW9ufXN0YXJ0KCl7dGhpcy5pc1N0YXJ0ZWQoKT9iLmxvZ05vcm1hbCgic3RhcnQ6IGRhdGEgc291cmNlIGlzIGFscmVhZHkgc3RhcnRlZCwgbm90aGluZyB0byBkbyIpOigoMCxyLmFzc2VydCkobnVsbCE9PXRoaXMuX2V4dFN5bWJvbCwic3ltYm9sIG11c3QgYmUgc2V0IGJlZm9yZSBzdGFydCIpLCgwLHIuYXNzZXJ0KShudWxsIT09dGhpcy5fcmVzb2x1dGlvbiwicmVzb2x1dGlvbiBtdXN0IGJlIHNldCBiZWZvcmUgc3RhcnQiKSx0aGlzLl9nYXRld2F5LmlzQ29ubmVjdGVkKCkudmFsdWUoKT90aGlzLl9jcmVhdGVTZXJpZXMoKTp0aGlzLl9jaGFuZ2VTdGF0dXNUbyhmLkF3YWl0aW5nQ29ubmVjdGlvbikpfXN0b3AoKXt0aGlzLmlzU3RhcnRlZCgpPyhudWxsIT09dGhpcy5faW5zdGFuY2VJZCYmKHRoaXMuX2dhdGV3YXkucmVtb3ZlU2VyaWVzKHRoaXMuX2luc3RhbmNlSWQpLHRoaXMuX2luc3RhbmNlSWQ9bnVsbCksdGhpcy5fc3ltYm9sSW5zdGFuY2VJZD1udWxsLHRoaXMuX2NoYW5nZVN0YXR1c1RvKGYuSWRsZSkpOmIubG9nTm9ybWFsKCJzdG9wOiBkYXRhIHNvdXJjZSBpcyBhbHJlYWR5IHN0b3BwZWQsIG5vdGhpbmcgdG8gZG8iKX1pbnN0YW5jZUlkKCl7cmV0dXJuIHRoaXMuX2luc3RhbmNlSWR9ZGF0YSgpe3JldHVybiB0aGlzLl9kYXRhfXNldERhdGEoZSl7dGhpcy5fZGF0YT1lfXNldFRpbWVmcmFtZShlKXt0aGlzLl90aW1lRnJhbWU9ZX1jbGVhckRhdGEoKXt0aGlzLmlzU3RhcnRlZCgpP3RoaXMuX2VucXVldWVVcGRhdGUoKCgpPT50aGlzLl9jbGVhckRhdGFJbXBsKCkpKTp0aGlzLl9jbGVhckRhdGFJbXBsKCl9ZGF0YUV2ZW50cygpe3JldHVybiB0aGlzLl9kYXRhRXZlbnRzfXR1cm5hcm91bmQoKXtyZXR1cm5gJHt0aGlzLl90dXJuYXJvdW5kUHJlZml4fSR7dGhpcy5fdHVybmFyb3VuZENvdW50ZXJ9YH1zeW1ib2xJbnN0YW5jZUlkKCl7cmV0dXJuIHRoaXMuX3N5bWJvbEluc3RhbmNlSWR9c3ltYm9sKCl7cmV0dXJuIHRoaXMuX2V4dFN5bWJvbH11cGRhdGVFeHRTeW1ib2woZSl7dGhpcy5fZXh0U3ltYm9sPWV9bW92ZURhdGEoZSl7cmV0dXJuIHRoaXMuX2VucXVldWVVcGRhdGUoKCgpPT50aGlzLl9kYXRhLm1vdmVEYXRhKGUpKSl9c2V0SW5pdGlhbFJlcXVlc3RPcHRpb25zKGUpe3RoaXMuX2NyZWF0ZVNlcmllc092ZXJyaWRkZW5QYXJhbXM9KDAsaC5pbml0aWFsUmVxdWVzdE9wdGlvbnNUb051bUJhcnMpKGUpfXN5bWJvbFNhbWVBc1Jlc29sdmVkKGUpe3JldHVybiBudWxsIT09dGhpcy5fZXh0U3ltYm9sJiYoMCx5LnN5bWJvbFNhbWVBc1Jlc29sdmVkKShlLEkodGhpcy5fZXh0U3ltYm9sKSx0aGlzLl9sYXN0UmVzb2x2ZWRTeW1ib2wpfXJlc29sdmVkU3ltYm9sKCl7cmV0dXJuIG51bGw9PT10aGlzLl9leHRTeW1ib2w/bnVsbDpJKHRoaXMuX2V4dFN5bWJvbCl9c3RhdGljIHNldE5vblNlcmllc0RhdGFVbnBhY2tlcihlKXtDLl9ub25TZXJpZXNEYXRhVW5wYWNrZXI9ZX1zdGF0aWMgc2V0U3ltYm9sRW5jb2RlcihlKXtDLl9lbmNvZGVTeW1ib2w9ZX1zdGF0aWMgc2V0RXh0cmFjdFN5bWJvbEZlYXR1cmVzZXRzKGUpe0MuX2V4dHJhY3RTeW1ib2xOYW1lRmVhdHVyZXNldHM9ZX1fcmVzb2x2ZVN5bWJvbCgpewpudWxsIT09dGhpcy5fZXh0U3ltYm9sJiYodGhpcy5fc3ltYm9sSW5zdGFuY2VJZD10aGlzLl9nYXRld2F5LnJlc29sdmVTeW1ib2woInNkc19zeW1fIitTKyssQy5fZW5jb2RlU3ltYm9sKHRoaXMuX2V4dFN5bWJvbCksdGhpcy5fYm91bmRPbk1lc3NhZ2UpKX1fY2xlYXJEYXRhSW1wbCgpe3RoaXMuX2RhdGEuY2xlYXIoKSx0aGlzLl9kYXRhRXZlbnRzLmZpcmVDbGVhcmVkKCl9X2NoYW5nZVN0YXR1c1RvKGUpeygwLHIuYXNzZXJ0KSh0aGlzLl9zdGF0dXMhPT1lLCJTb3VyY2UgYW5kIGRlc3RpbmF0aW9uIHN0YXR1cyBzaG91bGQgYmUgZGlzdGluY3QiKSxiLmxvZ05vcm1hbChgU3RhdHVzIGNoYW5nZWQgZnJvbSAke2ZbdGhpcy5fc3RhdHVzXX0gdG8gJHtmW2VdfWApLHRoaXMuX3N0YXR1cz1lfV9jcmVhdGVTZXJpZXMoKXsoMCxyLmFzc2VydCkodGhpcy5fc3RhdHVzIT09Zi5BY3RpdmUsJ1N0YXR1cyBzaG91bGQgbm90IGJlICJBY3RpdmUiIHdoZW4gY3JlYXRpbmcgYSBzdHVkeScpLHRoaXMuX2luc3RhbmNlSWQ9InNkc18iK3YrKyx0aGlzLl9yZXNvbHZlU3ltYm9sKCk7Y29uc3QgZT10aGlzLl9jcmVhdGVTZXJpZXNPdmVycmlkZGVuUGFyYW1zfHx0aGlzLl9jcmVhdGVTZXJpZXNQYXJhbXM7dGhpcy5fY3JlYXRlU2VyaWVzT3ZlcnJpZGRlblBhcmFtcyYmKHRoaXMuX2NyZWF0ZVNlcmllc092ZXJyaWRkZW5QYXJhbXM9MCksdGhpcy5fZ2F0ZXdheS5jcmVhdGVTZXJpZXModGhpcy5faW5zdGFuY2VJZCx0aGlzLnR1cm5hcm91bmQoKSwoMCxyLmVuc3VyZU5vdE51bGwpKHRoaXMuX3N5bWJvbEluc3RhbmNlSWQpLCgwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fcmVzb2x1dGlvbiksZSx0aGlzLl90aW1lRnJhbWUsdGhpcy5fYm91bmRPbk1lc3NhZ2UpLHRoaXMuX3RpbWVGcmFtZT1udWxsLHRoaXMuX2NoYW5nZVN0YXR1c1RvKGYuQXdhaXRpbmdGaXJzdERhdGFVcGRhdGUpLHRoaXMuX2RhdGFFdmVudHMuZmlyZUNyZWF0ZWQodGhpcy5faW5zdGFuY2VJZCl9X29uR2F0ZXdheUlzQ29ubmVjdGVkQ2hhbmdlZChlKXtlP3RoaXMuX29uR2F0ZXdheUNvbm5lY3RlZCgpOnRoaXMuX29uR2F0ZXdheURpc2Nvbm5lY3RlZCgpfV9vbkdhdGV3YXlDb25uZWN0ZWQoKXt0aGlzLl9zdGF0dXM9PT1mLkF3YWl0aW5nQ29ubmVjdGlvbiYmdGhpcy5fY3JlYXRlU2VyaWVzKCl9X29uR2F0ZXdheURpc2Nvbm5lY3RlZCgpe3RoaXMuX3N0YXR1cyE9PWYuSWRsZSYmdGhpcy5fc3RhdHVzIT09Zi5Bd2FpdGluZ0Nvbm5lY3Rpb24mJih0aGlzLl9pbnN0YW5jZUlkPW51bGwsdGhpcy5fY2hhbmdlU3RhdHVzVG8oZi5Bd2FpdGluZ0Nvbm5lY3Rpb24pKSx0aGlzLl90dXJuYXJvdW5kQ291bnRlcj0xfV9vbk1lc3NhZ2UoZSl7dGhpcy5fZW5xdWV1ZVVwZGF0ZSgoKCk9PnRoaXMuX29uTWVzc2FnZUltcGwoZSkpKX1hc3luYyBfb25NZXNzYWdlSW1wbChlKXtzd2l0Y2goZS5tZXRob2Qpe2Nhc2Uic3ltYm9sX3Jlc29sdmVkIjp7Y29uc3RbdCxzXT1lLnBhcmFtcztpZih0IT09dGhpcy5fc3ltYm9sSW5zdGFuY2VJZCl7bnVsbCE9PXRoaXMuX3N5bWJvbEluc3RhbmNlSWQmJmIubG9nTm9ybWFsKGBSZXNvbHZlIGZvciBvbGQgc3ltYm9sLCBleHBlY3RlZDogJHt0aGlzLl9zeW1ib2xJbnN0YW5jZUlkfSwgYWN0dWFsICR7ZS5wYXJhbXNbMF19YCk7YnJlYWt9dGhpcy5fb25TeW1ib2xSZXNvbHZlZChzKTticmVha31jYXNlInN5bWJvbF9lcnJvciI6aWYoZS5wYXJhbXNbMF0hPT10aGlzLl9zeW1ib2xJbnN0YW5jZUlkKXtudWxsIT09dGhpcy5fc3ltYm9sSW5zdGFuY2VJZCYmYi5sb2dOb3JtYWwoYFN5bWJvbCBlcnJvciBmb3Igb2xkIHN5bWJvbCwgZXhwZWN0ZWQ6ICR7dGhpcy5fc3ltYm9sSW5zdGFuY2VJZH0sIGFjdHVhbCAke2UucGFyYW1zWzBdfWApO2JyZWFrfXRoaXMuX29uU3ltYm9sRXJyb3IoZSk7YnJlYWs7Y2FzZSJzZXJpZXNfdGltZWZyYW1lIjp7Y29uc3RbdCxzLHIsaSxhLG8sbl09ZS5wYXJhbXM7aWYoIXRoaXMuX2NoZWNrVHVybmFyb3VuZCh0LHMpKXtiLmxvZ05vcm1hbChgVGltZSBmcmFtZSBmb3Igb2xkIGRhdGEsIGV4cGVjdGVkOiAke3RoaXMuX3N5bWJvbEluc3RhbmNlSWR9ICgke3RoaXMudHVybmFyb3VuZCgpfSksIGFjdHVhbCAke3R9ICgke3N9KWApO2JyZWFrfXRoaXMuX29uU2VyaWVzVGltZUZyYW1lKHIsaSxhLG8sbik7YnJlYWt9Y2FzZSJzZXJpZXNfZXJyb3IiOntjb25zdFt0LHNdPWUucGFyYW1zO2lmKCF0aGlzLl9jaGVja1R1cm5hcm91bmQodCxzKSl7Yi5sb2dOb3JtYWwoYFNlcmllcyBlcnJvciBmb3Igb2xkIGRhdGEsIGV4cGVjdGVkOiAke3RoaXMuX3N5bWJvbEluc3RhbmNlSWR9ICgke3RoaXMudHVybmFyb3VuZCgpfSksIGFjdHVhbCAke3R9ICgke3N9KWApO2JyZWFrfXRoaXMuX29uU2VyaWVzRXJyb3IoZS5wYXJhbXNbMl0pO2JyZWFrfWNhc2Uic2VyaWVzX2xvYWRpbmciOntjb25zdFt0LHNdPWUucGFyYW1zO2lmKCF0aGlzLl9jaGVja1R1cm5hcm91bmQodCxzKSlicmVhazt0aGlzLl9vblNlcmllc0xvYWRpbmcoZS50aW1lKTticmVha31jYXNlInNlcmllc19jb21wbGV0ZWQiOntjb25zdFt0LHMscixpXT1lLnBhcmFtcztpZighdGhpcy5fY2hlY2tUdXJuYXJvdW5kKHQscikpe2IubG9nTm9ybWFsKGBTZXJpZXMgY29tcGxldGVkIGZvciBvbGQgZGF0YSwgZXhwZWN0ZWQ6ICR7dGhpcy5fc3ltYm9sSW5zdGFuY2VJZH0gKCR7dGhpcy50dXJuYXJvdW5kKCl9KSwgYWN0dWFsICR7dH0gKCR7cn0pYCk7YnJlYWt9dGhpcy5fb25TZXJpZXNDb21wbGV0ZWQocyxlLnRpbWUsaSk7YnJlYWt9Y2FzZSJkYXRhX3VwZGF0ZSI6aWYoIXRoaXMuX2NoZWNrVHVybmFyb3VuZChlLnBhcmFtcy5jdXN0b21JZCxlLnBhcmFtcy50dXJuYXJvdW5kKSl7Yi5sb2dOb3JtYWwoYERhdGEgdXBkYXRlIGZvciBvbGQgZGF0YSwgZXhwZWN0ZWQ6ICR7dGhpcy5fc3ltYm9sSW5zdGFuY2VJZH0gKCR7dGhpcy50dXJuYXJvdW5kKCl9KSwgYWN0dWFsICR7ZS5wYXJhbXMuY3VzdG9tSWR9ICgke2UucGFyYW1zLnR1cm5hcm91bmR9KWApO2JyZWFrfQphd2FpdCB0aGlzLl9vbkRhdGFVcGRhdGUoZS5wYXJhbXMucGxvdHMsZS5wYXJhbXMubm9uc2VyaWVzLGUucGFyYW1zLmxhc3RCYXIpO2JyZWFrO2Nhc2UiY2xlYXJfZGF0YSI6e2lmKGUucGFyYW1zLnR1cm5hcm91bmQhPT10aGlzLnR1cm5hcm91bmQoKSl7Yi5sb2dOb3JtYWwoYENsZWFyIGRhdGEgZm9yIG9sZCBkYXRhLCBleHBlY3RlZDogJHt0aGlzLnR1cm5hcm91bmQoKX0sIGFjdHVhbCAke2UucGFyYW1zLnR1cm5hcm91bmR9YCk7YnJlYWt9Y29uc3QgdD10aGlzLl9kYXRhLmZpcnN0KCk7dGhpcy5fY2xlYXJEYXRhSW1wbCgpLHRoaXMuX2RhdGFFdmVudHMuZmlyZURhdGFVcGRhdGVkKHZvaWQgMCwhMSxudWxsLCExLHQpO2JyZWFrfX19X29uU2VyaWVzRXJyb3IoZSl7bGV0IHQscztpZigic3RyaW5nIj09dHlwZW9mIGUpcz17ZXJyb3I6ZX0sdD1lO2Vsc2UgaWYocz1lLGUuY3R4KXtjb25zdCBzPXt9O09iamVjdC5lbnRyaWVzKGUuY3R4KS5mb3JFYWNoKCgoW2UsdF0pPT57c1tlXT10LnRvU3RyaW5nKCl9KSksaT1lLmVycm9yLGE9cyx0PWkucmVwbGFjZShnLCgoZSx0KT0+dm9pZCAwIT09YVt0XT9hW3RdOmUpKX1lbHNlIHQ9ZS5lcnJvcjt2YXIgaSxhO2lmKHQuc3RhcnRzV2l0aCgic3R1ZHlfbm90X2F1dGg6Iikpe2NvbnN0IGU9dC5zcGxpdCgiOiIsMilbMV0uc3BsaXQoIkAiLDIpWzBdO2lmKFsiQmFyU2V0UmVua28iLCJCYXJTZXRQcmljZUJyZWFrIiwiQmFyU2V0S2FnaSIsIkJhclNldFBuRiJdLmluY2x1ZGVzKGUpKXRoaXMuX2RhdGFFdmVudHMuZmlyZUNoYXJ0VHlwZU5vdFBlcm1pdHRlZChlKTtlbHNle2lmKCJCYXJTZXRTcHJlYWQiPT09ZSlyZXR1cm4gdm9pZCB0aGlzLl9kYXRhRXZlbnRzLmZpcmVJbnRyYWRheVNwcmVhZE5vdFBlcm1pdHRlZCgpO2lmKCJCYXJTZXRSYW5nZSI9PT1lKXtjb25zdCBlPWAkeygwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fZXh0U3ltYm9sKS5pbnB1dHMucmFuZ2V9UmA7dGhpcy5fZGF0YUV2ZW50cy5maXJlQ3VzdG9tSW50ZXJ2YWxOb3RQZXJtaXR0ZWQoZSl9fX1lbHNle2lmKHQuc3RhcnRzV2l0aCgidW5zdXBwb3J0ZWQiKSlyZXR1cm4gdm9pZCB0aGlzLl9kYXRhRXZlbnRzLmZpcmVVbnN1cHBvcnRlZFJlc29sdXRpb25SZXF1ZXN0ZWQoKTsicmVzb2x1dGlvbl9ub3RfZW50aXRsZWQiPT09dD90aGlzLl9kYXRhRXZlbnRzLmZpcmVJbnRyYWRheUV4Y2hhbmdlTm90UGVybWl0dGVkKCk6ImN1c3RvbV9yZXNvbHV0aW9uIj09PXQ/dGhpcy5fZGF0YUV2ZW50cy5maXJlQ3VzdG9tSW50ZXJ2YWxOb3RQZXJtaXR0ZWQoKDAsci5lbnN1cmVOb3ROdWxsKSh0aGlzLl9yZXNvbHV0aW9uKSk6InNlY29uZHNfbm90X2VudGl0bGVkIj09PXQ/dGhpcy5fZGF0YUV2ZW50cy5maXJlU2Vjb25kc0ludGVydmFsTm90UGVybWl0dGVkKCk6InRpY2tzX25vdF9lbnRpdGxlZCI9PT10JiZ0aGlzLl9kYXRhRXZlbnRzLmZpcmVUaWNrc0ludGVydmFsTm90UGVybWl0dGVkKCl9dGhpcy5fZGF0YUV2ZW50cy5maXJlU2VyaWVzRXJyb3Iocyl9X29uU2VyaWVzVGltZUZyYW1lKGUsdCxzLHIsaSl7dGhpcy5fZGF0YUV2ZW50cy5maXJlU2VyaWVzVGltZUZyYW1lKGUsdCxzLHI/PyEwLGkpfV9vblN5bWJvbEVycm9yKGUpe2lmKGUucGFyYW1zWzFdPT09ZC5wZXJtaXNzaW9uRGVuaWVkKXN3aXRjaChlLnBhcmFtc1syXSl7Y2FzZSBkLlN5bWJvbEVycm9yUGVybWlzc2lvbkRlbmllZFJlYXNvbi5TeW1ib2w6dGhpcy5fZGF0YUV2ZW50cy5maXJlU3ltYm9sTm90UGVybWl0dGVkKGUucGFyYW1zWzNdKTticmVhaztjYXNlIGQuU3ltYm9sRXJyb3JQZXJtaXNzaW9uRGVuaWVkUmVhc29uLkdyb3VwUGVybWlzc2lvbjp0aGlzLl9kYXRhRXZlbnRzLmZpcmVTeW1ib2xHcm91cE5vdFBlcm1pdHRlZChlLnBhcmFtc1szXSk7YnJlYWs7ZGVmYXVsdDp0aGlzLl9kYXRhRXZlbnRzLmZpcmVTeW1ib2xOb3RQZXJtaXR0ZWQoZS5wYXJhbXNbMl0pfWVsc2UgZS5wYXJhbXNbMV09PT1kLmludmFsaWRTeW1ib2wmJnRoaXMuX2RhdGFFdmVudHMuZmlyZVN5bWJvbEludmFsaWQoKTt0aGlzLl9kYXRhRXZlbnRzLmZpcmVTeW1ib2xFcnJvcihlLnBhcmFtc1sxXSl9X29uU3ltYm9sUmVzb2x2ZWQoZSl7dGhpcy5fbGFzdFJlc29sdmVkU3ltYm9sPSgwLHIuZW5zdXJlTm90TnVsbCkoKDAscC5leHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvKShDLl9leHRyYWN0U3ltYm9sTmFtZUZlYXR1cmVzZXRzLGUsIiIpKSx0aGlzLl9kYXRhRXZlbnRzLmZpcmVTeW1ib2xSZXNvbHZlZChlKX1hc3luYyBfb25EYXRhVXBkYXRlKGUsdCxzKXt0aGlzLl9vbkRhdGFVbnBhY2tlZChlLHMsYXdhaXQoMCxtLnBhcnNlSmFwYW5lc2VQcm9qZWN0aW9uQmFycykodCxDLl9ub25TZXJpZXNEYXRhVW5wYWNrZXIpKX1fZW5xdWV1ZVVwZGF0ZShlKXtyZXR1cm4gdGhpcy5fb25nb2luZ0RhdGFVcGRhdGU9dGhpcy5fb25nb2luZ0RhdGFVcGRhdGUudGhlbihlLGUpLHRoaXMuX29uZ29pbmdEYXRhVXBkYXRlfV9vbkRhdGFVbnBhY2tlZChlLHQscyl7aWYodGhpcy5fc3RhdHVzPT09Zi5JZGxlKXJldHVybjt0aGlzLl9zdGF0dXM9PT1mLkF3YWl0aW5nRmlyc3REYXRhVXBkYXRlJiYodGhpcy5fY2hhbmdlU3RhdHVzVG8oZi5BY3RpdmUpLHRoaXMuX2NsZWFyRGF0YUltcGwoKSk7Y29uc3Qgcj10aGlzLl9kYXRhLmJhcnMoKS5zaXplKCksaT10aGlzLl9kYXRhLmZpcnN0KCksYT10aGlzLl9kYXRhLmJhcnMoKS5maXJzdEluZGV4KCksbz10aGlzLl9kYXRhLm1lcmdlUmVndWxhckJhcnMoZSk7bnVsbCE9PXMmJih0aGlzLl9kYXRhLm5zQmFycygpLmNsZWFyKCksdGhpcy5fZGF0YS5uc0JhcnMoKS5tZXJnZShzLnByb2plY3Rpb25QbG90cyksdGhpcy5fZGF0YS5sYXN0UHJvamVjdGlvblByaWNlPXMubGFzdFByaWNlLG51bGwhPT1zLmJveFNpemUmJih0aGlzLl9kYXRhLmJveFNpemU9cy5ib3hTaXplKSx0aGlzLl9kYXRhLnJldmVyc2FsQW1vdW50PXMucmV2ZXJzYWxBbW91bnQpO2NvbnN0IG49bnVsbD09PWEsZD1ufHxudWxsIT09byYmby5pbmRleDxhO3RoaXMuX2RhdGFFdmVudHMuZmlyZURhdGFVcGRhdGVkKHQsZCxvLG4saSksCnIhPT10aGlzLl9kYXRhLmJhcnMoKS5zaXplKCkmJm51bGwhPT1vJiZ0aGlzLl9kYXRhRXZlbnRzLmZpcmVCYXJSZWNlaXZlZChvKX1fb25TZXJpZXNMb2FkaW5nKGUpe3RoaXMuX2RhdGFFdmVudHMuZmlyZUxvYWRpbmcoZSl9X29uU2VyaWVzQ29tcGxldGVkKGUsdCxzKXt0aGlzLl9kYXRhRXZlbnRzLmZpcmVDb21wbGV0ZWQoe3VwZGF0ZU1vZGU6ZSx0aW1lOnQsZmxhZ3M6c30pfV9jaGVja1R1cm5hcm91bmQoZSx0KXtyZXR1cm4gdGhpcy5faW5zdGFuY2VJZD09PWUmJih2b2lkIDA9PT10fHx0PT09dGhpcy50dXJuYXJvdW5kKCkpfX1DLl9ub25TZXJpZXNEYXRhVW5wYWNrZXI9bC51bnBhY2tOb25TZXJpZXNEYXRhLEMuX2VuY29kZVN5bWJvbD1jLmVuY29kZUV4dGVuZGVkU3ltYm9sLEMuX2V4dHJhY3RTeW1ib2xOYW1lRmVhdHVyZXNldHM9e3BheUF0dGVudGlvblRvVGlja2VyTm90U3ltYm9sOiExLGNoYXJ0aW5nTGlicmFyeVNpbmdsZVN5bWJvbFJlcXVlc3Q6ITEsdXNlVGlja2VyT25TeW1ib2xJbmZvVXBkYXRlOiExLHVwcGVyY2FzZUluc3RydW1lbnROYW1lczohMX19LDEyMTQ3OShlLHQscyl7cy5kKHQse2dldFNlcnZlckludGVydmFsOigpPT5pfSk7dmFyIHI9cygyNTQ2NzMpO2Z1bmN0aW9uIGkoZSl7cmV0dXJuIHIuSW50ZXJ2YWwuaXNSYW5nZShlKT8iMSI6ZX19LDk5NTY1NShlLHQscyl7cy5kKHQse3ZhbGlkYXRlR3JhcGhpY3NDb21tYW5kczooKT0+YX0pO3ZhciByPXMoNjAxODQxKSxpPXMoMTM4NjM4KTtmdW5jdGlvbiBhKGUpe2lmKCEoMCxyLmlzT2JqZWN0KShlKSl0aHJvdyBuZXcgRXJyb3IoIkdyYXBoaWNzIGNvbW1hbmRzIHNob3VsZCBiZSB3cmFwcGVkIGluIGFuIG9iamVjdCIpO2lmKCgwLHIuaGFzUHJvcGVydHkpKGUsImNyZWF0ZSIpLCgwLHIuaGFzUHJvcGVydHkpKGUsImVyYXNlIikpe2NvbnN0IHQ9ZS5lcmFzZTsoMCxpLmFzc2VydCkoQXJyYXkuaXNBcnJheSh0KSwiQ29sbGVjdGlvbiBvZiBlcmFzZSBjb21tYW5kcyBzaG91bGQgYmUgYXJyYXkiKTtmb3IoY29uc3QgZSBvZiB0KXtpZighKDAsci5pc09iamVjdCkoZSl8fCEoMCxyLmhhc1Byb3BlcnR5KShlLCJhY3Rpb24iKSl0aHJvdyBuZXcgRXJyb3IoIkNvbW1hbmQgc2hvdWxkIGJlIGFuIG9iamVjdCB3aXRoICdhY3Rpb24nIHByb3BlcnR5Iik7KDAsaS5hc3NlcnQpKCJhbGwiPT09ZS5hY3Rpb258fCJvbmUiPT09ZS5hY3Rpb24sIkVyYXNlIGNvbW1hbmQgYWN0aW9uIHNob3VsZCBiZSAnYWxsJyBvciAnb25lJyIpfX1yZXR1cm4gZX19LDMyMjU1NChlLHQscyl7ZnVuY3Rpb24gcihlLHQscyl7cmV0dXJuIGU9PT10fHxlPT09c31zLmQodCx7c3ltYm9sU2FtZUFzUmVzb2x2ZWQ6KCk9PnJ9KX0sODE0NTg5KGUsdCxzKXtzLmQodCx7SU5WQUxJRF9USU1FX1BPSU5UX0lOREVYOigpPT5yLFVOUExPVFRBQkxFX1RJTUVfUE9JTlRfSU5ERVg6KCk9Pml9KTtjb25zdCByPS0yZTYsaT0tMWU2fSw4NjY3NDgoZSx0LHMpe2FzeW5jIGZ1bmN0aW9uIHIoZSl7Y29uc3Rbe2luZmxhdGVabGliOnQsaW5mbGF0ZVJhdzpyfSx7dW5wYWNrSW1wbDppfV09YXdhaXQgUHJvbWlzZS5hbGwoWyJmdW5jdGlvbiI9PXR5cGVvZiBEZWNvbXByZXNzaW9uU3RyZWFtP3MuZSgyMTI2MCkudGhlbihzLmJpbmQocyw3MzUwOTkpKTpQcm9taXNlLmFsbChbcy5lKDI0Njk4KSxzLmUoNjIyMzQpXSkudGhlbihzLmJpbmQocywyOTU4NzMpKSxzLmUoMjEyNjApLnRoZW4ocy5iaW5kKHMsMjk0NDgzKSldKTtyZXR1cm4gaSh0LHIsZSl9cy5kKHQse3VucGFjazooKT0+cn0pfSwxODk4NjMoZSx0LHMpe3MuZCh0LHtTcGlubmVyOigpPT5hfSk7cyg4NDU1NzcpO3ZhciByPXMoNDQzNTU3KSxpPXMoNTY3NDc5KTtjbGFzcyBhe2NvbnN0cnVjdG9yKGUpe3RoaXMuX3Nob3duPSExLHRoaXMuX2VsPSgwLHIucGFyc2VIdG1sRWxlbWVudCkoZnVuY3Rpb24oZT0iIil7cmV0dXJuYDxkaXYgY2xhc3M9InR2LXNwaW5uZXIgJHtlfSIgcm9sZT0icHJvZ3Jlc3NiYXIiPjwvZGl2PmB9KCkpLHRoaXMuc2V0U2l6ZShpLnNwaW5uZXJTaXplTWFwW2V8fGkuREVGQVVMVF9TSVpFXSl9c3BpbihlKXtyZXR1cm4gdGhpcy5fZWwuY2xhc3NMaXN0LmFkZCgidHYtc3Bpbm5lci0tc2hvd24iKSx2b2lkIDA9PT10aGlzLl9jb250YWluZXImJih0aGlzLl9jb250YWluZXI9ZSx2b2lkIDAhPT1lJiZlLmFwcGVuZENoaWxkKHRoaXMuX2VsKSksdGhpcy5fc2hvd249ITAsdGhpc31zdG9wKGUpe3JldHVybiBlJiZ2b2lkIDAhPT10aGlzLl9jb250YWluZXImJnRoaXMuX2NvbnRhaW5lci5yZW1vdmVDaGlsZCh0aGlzLl9lbCksdGhpcy5fZWwmJnRoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoInR2LXNwaW5uZXItLXNob3duIiksdGhpcy5fc2hvd249ITEsdGhpc31zZXRTdHlsZShlKXtyZXR1cm4gT2JqZWN0LmtleXMoZSkuZm9yRWFjaCgodD0+e2NvbnN0IHM9ZVt0XTt2b2lkIDAhPT1zJiZ0aGlzLl9lbC5zdHlsZS5zZXRQcm9wZXJ0eSh0LHMpfSkpLHRoaXN9c3R5bGUoKXtyZXR1cm4gdGhpcy5fZWwuc3R5bGV9c2V0U2l6ZShlKXtjb25zdCB0PXZvaWQgMCE9PWU/YHR2LXNwaW5uZXItLXNpemVfJHtlfWA6IiI7cmV0dXJuIHRoaXMuX2VsLmNsYXNzTmFtZT1gdHYtc3Bpbm5lciAke3R9ICR7dGhpcy5fc2hvd24/InR2LXNwaW5uZXItLXNob3duIjoiIn1gLHRoaXN9Z2V0RWwoKXtyZXR1cm4gdGhpcy5fZWx9ZGVzdHJveSgpe3RoaXMuc3RvcCgpLGRlbGV0ZSB0aGlzLl9lbCxkZWxldGUgdGhpcy5fY29udGFpbmVyfX19LDIyNjkzNyhlLHQscyl7cy5kKHQse0FzeW5jUmVzb3VyY2VXcmFwcGVyOigpPT5yfSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2Rlc3Ryb3llZD0hMSx0aGlzLl9jYWxsYmFja3M9W10sdGhpcy5fcmVzb3VyY2U9e3BlbmRpbmdSZXNvdXJjZTplfSx0aGlzLl9kZXN0cm95Rm49dCxlLnRoZW4oKGU9PntpZih0aGlzLl9kZXN0cm95ZWQpdGhpcy5fZGVzdHJveUZuPy4oZSk7ZWxzZXt0aGlzLl9yZXNvdXJjZS5yZXNvdXJjZT1lO2Zvcihjb25zdCB0IG9mIHRoaXMuX2NhbGxiYWNrcyl0KGUpfX0pKS5maW5hbGx5KCgoKT0+e3RoaXMuX2NhbGxiYWNrcz1bXX0pKX0KZGVzdHJveSgpe3RoaXMuX3Jlc291cmNlLnJlc291cmNlJiZ0aGlzLl9kZXN0cm95Rm4/Lih0aGlzLl9yZXNvdXJjZS5yZXNvdXJjZSksdGhpcy5fcmVzb3VyY2U9e3BlbmRpbmdSZXNvdXJjZTpQcm9taXNlLnJlamVjdCgiUmVzb3VyY2UgaXMgZGVzdHJveWVkIikuY2F0Y2goKCgpPT57fSkpfSx0aGlzLl9jYWxsYmFja3M9W10sdGhpcy5fZGVzdHJveWVkPSEwfWNhbGxGdW5jdGlvbihlKXt0aGlzLl9kZXN0cm95ZWR8fCh0aGlzLl9yZXNvdXJjZS5yZXNvdXJjZT9lKHRoaXMuX3Jlc291cmNlLnJlc291cmNlKTp0aGlzLl9jYWxsYmFja3MucHVzaChlKSl9Z2V0KCl7cmV0dXJuIHRoaXMuX2Rlc3Ryb3llZHx8IXRoaXMuX3Jlc291cmNlLnJlc291cmNlP251bGw6dGhpcy5fcmVzb3VyY2UucmVzb3VyY2V9cHJvbWlzZSgpe3JldHVybiB0aGlzLl9yZXNvdXJjZS5wZW5kaW5nUmVzb3VyY2V9fX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/31396.dada17abc4adbf073139.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.537Z","timestamp":1785154590537,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/31396.dada17abc4adbf073139.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a323c19-182f2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/17/2026 11:26:01\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 348d23ae76142182ecfc9e82bebe6849\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":99058,"size_decoded":18482,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"66317ce4b57c72fcfe161bb2ec83c51a","sha1":"200b2ec9adf4edbbe5f116abd8876b41cdcbe3d2","sha256":"9aab142f72bf381e18723a19f19460cabe90ab7541ad65e69058e08a51975478","sha512":"6d110ae2fa0bc39d29f23be62ef62c56cef642e4fbe558bd4a9235481634d8230cd67a814ad7b51f0ad02357748dc906bc668be8905d86789d1cf8c5a54ebfbd","ssdeep":"1536:n2Qw5vYV3KyVHYBUAbwKkdqmHCtGJWmJPpyyMJgKz8e1nq/eI+GNqz57ApA/q/Yq:A5v8anBUAbeENyv","tlshash":"80a376a5f2522136242b8e3a5b94fd545134e901ef267ffff942e92945c3ed2d22380b","first_seen":"2026-06-17T14:59:58.198603Z","last_seen":"2026-07-27T14:22:59.713275Z","times_seen":418,"resource_available":false,"data":"LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbGVnYWN5LWJnLXdpZGdldCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVufS50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lciAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtvdmVyZmxvdy14OmF1dG99W2RhdGEtdGhlbWU9ZGFya10sW2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtekpxcTojMDAwMH1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50LGRpdi50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci0tdHJhbnNwYXJlbnQgLnR2LXNjcmVlbmVyLXRvb2xiYXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX3N0cm9rZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9faGVhZC13cmFwLGRpdi50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci0tdHJhbnNwYXJlbnQgLnR2LXNjcmVlbmVyLXRhYmxlX190aHtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXIsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2NvbC0tZHJhZ2dpbmcsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX3RoLS1kcmFnZ2luZyxkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9fdGhlYWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtd3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXtkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b246aG92ZXIsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX19ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtZHJvcGRvd24tYmVoYXZpb3JfX2J1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXtkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtekpxcSl9fS50di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keXtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpub25lfS50di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keS5pLW9wZW5lZHtkaXNwbGF5OmJsb2NrfS50di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9ue2N1cnNvcjpwb2ludGVyfS50di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwsLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtLC50di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xse2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmV9LnR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGx7b3ZlcmZsb3c6aGlkZGVufVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLUktMzM6I2U2ZWFlZjstLV8xLUktMzM6I2U2ZTllZDstLV8yLUktMzM6I2Y0ZWNlYzstLV8zLUktMzM6I2VhZjNmYjstLV80LUktMzM6I2YzZjVmOTstLV81LUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fNi1JLTMzOiM5MTk2OTE7LS1fNy1JLTMzOiM5OTk7LS1fOC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzEtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLV8yLUktMzM6IzJjMjAzMDstLV8zLUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1fNC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzUtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTApOy0tXzYtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV83LUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fOC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApfS50di1kYXRhLXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX0udHYtZGF0YS10YWJsZV9faGVhZGVye3BhZGRpbmc6MTBweCAxMnB4fS50di1kYXRhLXRhYmxlX190aGVhZHtib3JkZXI6M3B4IHNvbGlkO2JvcmRlci1ib3R0b206bm9uZX0udHYtZGF0YS10YWJsZV9fc3Ryb2tle2hlaWdodDo0MHB4fS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhpZGV7ZGlzcGxheTpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX3N0cm9rZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV80LUktMzMpfX0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obCAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obCAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjNweH0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obC1hY3RpdmUgLnR2LWRhdGEtdGFibGVfX2NlbGw6Zmlyc3QtY2hpbGQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYnJhbmQpfS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhsLWRhbmdlciAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhsLXN1Y2Nlc3MgLnR2LWRhdGEtdGFibGVfX2NlbGw6Zmlyc3QtY2hpbGQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItbGVnYWN5LXN1Y2Nlc3MpfS50di1kYXRhLXRhYmxlX19zdHJva2U6bGFzdC1jaGlsZCAudHYtZGF0YS10YWJsZV9fY2VsbHtib3JkZXItYm90dG9tOnZhcigtLV8wLUktMzMpIG5vbmV9LnR2LWRhdGEtdGFibGVfX3N0cm9rZS0tZ3JheWVke2NvbG9yOnZhcigtLV83LUktMzMpfS50di1kYXRhLXRhYmxlX19jZWxse2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tXzAtSS0zMyk7Zm9udC1zaXplOjEzcHg7cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MTFweCAxMHB4O3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1kYXRhLXRhYmxlX190Ym9keSAudHYtZGF0YS10YWJsZV9fY2VsbCwudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX2NlbGwgKnstd2Via2l0LXVzZXItc2VsZWN0OnRleHQhaW1wb3J0YW50O3VzZXItc2VsZWN0OnRleHQhaW1wb3J0YW50fS50di1kYXRhLXRhYmxlX19jZWxsLS1ib2xke2ZvbnQtd2VpZ2h0OjcwMH0udHYtZGF0YS10YWJsZV9fY2VsbC0taW5saW5lZHtkaXNwbGF5OmlubGluZS1ibG9ja30udHYtZGF0YS10YWJsZV9fY2VsbC0tcmlnaHQtYWxpZ257dGV4dC1hbGlnbjplbmQhaW1wb3J0YW50fS50di1kYXRhLXRhYmxlX19jZWxsLS1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS1fMS1JLTMzKTtoZWlnaHQ6MTVweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtdGFibGVfX2NlbGwtLWxlZnQtbWFyZ2luPnNwYW57bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS50di1kYXRhLXRhYmxlX19jZWxsLS1yZWQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOnZhcigtLV8yLUktMzMpfS50di1kYXRhLXRhYmxlX19jZWxsLS1ibHVlLWJhY2tncm91bmR7YmFja2dyb3VuZDp2YXIoLS1fMy1JLTMzKX0udHYtZGF0YS10YWJsZV9fY2VsbC0tc3ltYm9sLWNlbGx7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6NjAwO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1kYXRhLXRhYmxlX19jZWxsLS1idXR0b25zLWNlbGx7cGFkZGluZzowIDVweDt0ZXh0LWFsaWduOmVuZCFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjUycHh9LnR2LWRhdGEtdGFibGVfX2NlbGwtLWJ1dHRvbntjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6NXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMnB4O2ZpbGw6IzljYTBhNn0udHYtZGF0YS10YWJsZV9fY2VsbC0tYnV0dG9uLmktaG92ZXJ7ZmlsbDp2YXIoLS1fNS1JLTMzKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRhdGEtdGFibGVfX2NlbGwtLWJ1dHRvbjpob3ZlcntmaWxsOnZhcigtLV81LUktMzMpfX0udHYtZGF0YS10YWJsZV9fY2VsbC0tdGV4dHt0ZXh0LXRyYW5zZm9ybTpub25lfS50di1kYXRhLXRhYmxlX19jZWxsLS10ZXh0LW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtdGFibGVfX3RoZWFkIC50di1kYXRhLXRhYmxlX19jZWxse2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApO2N1cnNvcjpkZWZhdWx0O2ZvbnQtd2VpZ2h0OjQwMDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOnN0YXJ0O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtZGF0YS10YWJsZV9fc29ydGFibGV7Y3Vyc29yOnBvaW50ZXJ9LnR2LWRhdGEtdGFibGVfX3NvcnRhYmxlLS1hc2M6YWZ0ZXJ7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItYm90dG9tOjRweCBzb2xpZCB2YXIoLS1fNi1JLTMzKTtjb250ZW50OiIiO2N1cnNvcjpwb2ludGVyO21hcmdpbi10b3A6LTdweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlfS50di1kYXRhLXRhYmxlX19zb3J0YWJsZS0tZGVzYzphZnRlcntib3JkZXI6NHB4IHNvbGlkICMwMDAwO2JvcmRlci10b3A6NHB4IHNvbGlkIHZhcigtLV82LUktMzMpO2NvbnRlbnQ6IiI7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLXRvcDotMnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCV9LnR2LWRhdGEtdGFibGVfX2J1dHRvbntjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6NXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMnB4O2ZpbGw6IzljYTBhNn1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRhdGEtdGFibGVfX2J1dHRvbjpob3ZlcntmaWxsOnZhcigtLV81LUktMzMpfX0udHYtZGF0YS10YWJsZV9faW5mb3JtYXRpb24tYnV0dG9ue2N1cnNvcjpkZWZhdWx0O21hcmdpbi1pbmxpbmUtZW5kOjJweH0udHYtZGF0YS10YWJsZV9faW5mb3JtYXRpb24tYnV0dG9uIHN2Z3toZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS50di1kYXRhLXRhYmxlX19pbmZvcm1hdGlvbi1idXR0b24uaW5mb3JtYXRpb257Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfS50di1kYXRhLXRhYmxlX19pbmZvcm1hdGlvbi1idXR0b24ud2FybmluZ3tjb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LWRhdGEtdGFibGVfX2luZm9ybWF0aW9uLWJ1dHRvbi5lcnJvcntjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1kYXRhLXRhYmxlX19lZGl0LWJ1dHRvbiBzdmd7aGVpZ2h0OjEycHg7d2lkdGg6MTBweH0udHYtZGF0YS10YWJsZV9fY2xvc2UtYnV0dG9uIHN2Z3toZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS50di1kYXRhLXRhYmxlX19ibHVlLXRleHR7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1kYXRhLXRhYmxlX19saWdodC1yZWQtdGV4dHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1kYXRhLXRhYmxlX19yZWQtdGV4dHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1kYXRhLXRhYmxlX19ncmVlbi10ZXh0e2NvbG9yOnZhcigtLWNvbG9yLWxlZ2FjeS1zdWNjZXNzKX0udHYtZGF0YS10YWJsZV9fcmVkLWdyZWVuLXRleHR7Y29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1kYXRhLXRhYmxlX19ncmV5LXRleHR7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1idXR0b24td3JhcHtwYWRkaW5nLWJsb2NrOjAgMDtwYWRkaW5nLWlubGluZToxNXB4IDA7d2lkdGg6MTVweH0udHYtZGF0YS10YWJsZV9fZHJvcGRvd24tYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1idXR0b24gc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LWRhdGEtdGFibGVfX2Ryb3Bkb3duLWJ1dHRvbi1jcm9zcy1hbGlnbntwYWRkaW5nLWlubGluZS1lbmQ6OXB4fS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1zZWFyY2gtd3JhcHtib3JkZXItYm90dG9tOjFweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8wLUktMzMpO2hlaWdodDo0NXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wYW5lLWJnKTtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtkaXNwbGF5OmJsb2NrO2hlaWdodDo0NXB4O21hcmdpbjowO3BhZGRpbmc6MTBweCAyMnB4IDA7d2lkdGg6MTAwJX0udHYtZGF0YS10YWJsZV9fZHJvcGRvd24td3JhcHtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246Zml4ZWQhaW1wb3J0YW50O3dpZHRoOjI0MHB4fS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1sYWJlbC0tYnJlYWthYmxle3dvcmQtYnJlYWs6YnJlYWstd29yZH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLV8yLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1fMy1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzQtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV81LV9iaGk6dmFyKC0tY29sb3Itd2hpdGUpOy0tXzYtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLV83LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fOC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzktX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fMS1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzItX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8zLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fNC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzUtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV82LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNy1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzgtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV85LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LWNvbnRyb2wtcmFkaW97bWFyZ2luLWlubGluZS1zdGFydDo0cHg7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50di1jb250cm9sLXJhZGlvLS1pbi1hY3Rpb25ze21heC13aWR0aDo1MCV9QG1lZGlhIChtYXgtd2lkdGg6NDc5cHgpey50di1jb250cm9sLXJhZGlvLS1pbi1hY3Rpb25ze21heC13aWR0aDpub25lfX0udHYtY29udHJvbC1yYWRpbywudHYtY29udHJvbC1yYWRpb19fbGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1jb250cm9sLXJhZGlvLS1ub3dyYXAsLnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXJhZGlvX19pbnB1dHtoZWlnaHQ6MThweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MThweH0udHYtY29udHJvbC1yYWRpb19fYm94e2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDoxO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZX0udHYtY29udHJvbC1yYWRpb19fYm94LC50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle2JvcmRlci1yYWRpdXM6M3B4O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0udHYtY29udHJvbC1yYWRpb19fYm94OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29udGVudDoiIjtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTlweDttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlLGJvcmRlci1yYWRpdXMgLjM1cyBlYXNlfS50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8wLV9iaGkpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2JveCBzdmd7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTJweDtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTZweDttYXJnaW4taW5saW5lLXN0YXJ0Oi02cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMnB4O3N0cm9rZTojMDAwMDt0cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNpdGlvbjpzdHJva2UgLjM1cyBlYXNlIDFtcyx0cmFuc2Zvcm0gLjM1cyBlYXNlIDFtc30udHYtY29udHJvbC1yYWRpb19fbGFiZWx7bWFyZ2luLWlubGluZS1lbmQ6MTBweDt3aGl0ZS1zcGFjZTpub3JtYWx9LnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS10d28tbGluZXN7d2lkdGg6MTU1cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXJhZGlvX19sYWJlbC0tbGlsLWxpbmUtaGVpZ2h0e2xpbmUtaGVpZ2h0OjE2cHg7bWF4LXdpZHRoOjgwJTttaW4td2lkdGg6NDUlfS50di1jb250cm9sLXJhZGlvX19sYWJlbCsudHYtY29udHJvbC1yYWRpb3ttYXJnaW4taW5saW5lLXN0YXJ0OjB9LnR2LWNvbnRyb2wtcmFkaW8rLnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVse21hcmdpbi1pbmxpbmUtZW5kOjA7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxZXggLSAyOHB4KX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2JveCwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveHt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1yYWRpbzpob3ZlciAudHYtY29udHJvbC1yYWRpb19fYm94e3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3J9fS50di1jb250cm9sLXJhZGlvOmFjdGl2ZSAudHYtY29udHJvbC1yYWRpb19fYm94OmJlZm9yZSwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLGJvcmRlci1yYWRpdXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxib3JkZXItcmFkaXVzfX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlciwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlcnt3aWxsLWNoYW5nZTpib3JkZXItY29sb3J9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8xLV9iaGkpO3dpbGwtY2hhbmdlOmJvcmRlci1jb2xvcn19LnR2LWNvbnRyb2wtcmFkaW86YWN0aXZlIC50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmZvY3VzKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8yLV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMy1fYmhpKX0udHYtY29udHJvbC1yYWRpb19faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1yYWRpb19fYm94LC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9LnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNmb3JtOnNjYWxlKDApfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV80LV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3ggc3Zne3N0cm9rZTp2YXIoLS1fNS1fYmhpKTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbi1kZWxheTo4Ny41bXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7d2lsbC1jaGFuZ2U6c3Ryb2tlLHRyYW5zZm9ybX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtcmFkaW86aG92ZXIgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV82LV9iaGkpfS50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV83LV9iaGkpfX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveCwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMtdmlzaWJsZTpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fOC1fYmhpKX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlciwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMtdmlzaWJsZTpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV85LV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dFtkaXNhYmxlZF0rLnR2LWNvbnRyb2wtcmFkaW9fX2JveHtvcGFjaXR5Oi41fS50di1jb250cm9sLXJhZGlvLmktZXJyb3IgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKX0udHYtY29udHJvbC1yYWRpb19fYm94e2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoxMHB4O292ZXJmbG93OnZpc2libGU7d2lkdGg6MTBweH0udHYtY29udHJvbC1yYWRpb19fYm94OmFmdGVye2JvcmRlci1yYWRpdXM6NTAlO2luc2V0LWlubGluZS1zdGFydDotNHB4O3RvcDotNHB4fS50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7aGVpZ2h0OjEwcHg7bWFyZ2luLXRvcDotNXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTVweDt0cmFuc2Zvcm06c2NhbGUoMCk7d2lkdGg6MTBweH1odG1sLnRoZW1lLWRhcmsgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX0udHYtY29udHJvbC1yYWRpb19faW5wdXR7aW5zZXQtaW5saW5lLXN0YXJ0Oi00cHg7dG9wOi00cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc30udHYtY29udHJvbC1yYWRpb19faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1yYWRpb19fYm94e2JhY2tncm91bmQtY29sb3I6I2ZmZjt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNlYXJjaC1iYXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2xpbmUtaGVpZ2h0OjgwcHg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcntoZWlnaHQ6NTRweDtsaW5lLWhlaWdodDo1NHB4fX0udHYtc2VhcmNoLWJhcl9faW5uZXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX2lubmVye3BhZGRpbmc6MCA1cHh9fS50di1zZWFyY2gtYmFyX19pbm5lci1yaWdodC1jb2x1bW57YWxpZ24taXRlbXM6ZmxleC1lbmQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWFyZ2luLXRvcDotNTNweH0udHYtc2VhcmNoLWJhcl9fZHJvcGRvd257ZmxvYXQ6aW5saW5lLXN0YXJ0fS50di1zZWFyY2gtYmFyX19idXR0b24sLnR2LXNlYXJjaC1iYXJfX2J1dHRvbi13cmFwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zZWFyY2gtYmFyX19idXR0b24td3JhcC0tbGluZS1oZWlnaHRfaW5oZXJpdCwudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAtLWxpbmUtaGVpZ2h0X2luaGVyaXQudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAtLWxpbmUtaGVpZ2h0X2luaGVyaXR7bGluZS1oZWlnaHQ6aW5oZXJpdH0udHYtc2VhcmNoLWJhcl9fYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpmbGV4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MTAwJTtwYWRkaW5nOjAgMTVweDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlOy0tdGl0bGUtY29sb3ItdGV4dDp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS50di1zZWFyY2gtYmFyX19idXR0b24sLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7ZmlsbDp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQtYWN0aXZlKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWFjdGl2ZSl9LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXM7LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsKX19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQpfS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXMsLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udHYtc2VhcmNoLWJhcl9fYnV0dG9uLmktZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsOy0tdGl0bGUtY29sb3ItdGV4dDojZmZmZmZmYjM7Y3Vyc29yOmRlZmF1bHR9LmktYWN0aXZlIC50di1zZWFyY2gtYmFyX19idXR0b257LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQpfS50di1zZWFyY2gtYmFyX19idXR0b24taW53cmFwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xpbmUtaGVpZ2h0OjE7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGV7Y29sb3I6dmFyKC0tdGl0bGUtY29sb3ItdGV4dCxpbmhlcml0KTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNnB4O2xldHRlci1zcGFjaW5nOi4xMmV4O21hcmdpbi1ib3R0b206NXB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udHYtc2VhcmNoLWJhcl9fYnV0dG9uLXRpdGxlOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXN1YntsaW5lLWhlaWdodDo0MHB4fS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXRhYnN7bGluZS1oZWlnaHQ6ODBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXRhYnN7bGluZS1oZWlnaHQ6NTRweH19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbi1zdWJ0aXRsZXtmb250LXNpemU6MTNweDtsZXR0ZXItc3BhY2luZzouMWV4O29wYWNpdHk6LjY1fS50di1zZWFyY2gtYmFyX19kcm9wZG93bi1ib2R5e21hcmdpbi10b3A6MjNweDttaW4td2lkdGg6MjAwcHh9LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWZpbHRlcnN7ZmxvYXQ6aW5saW5lLXN0YXJ0O21hcmdpbi1pbmxpbmUtZW5kOi0xNXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE1cHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tZmlsdGVyc3tkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19hcmVhLS1zZWFyY2h7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19hcmVhLS1zZWFyY2hfZGVza3RvcHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19hcmVhLS10YWJze3dpZHRoOjEwMCV9QG1lZGlhIChtaW4td2lkdGg6MTAyMHB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tdGFic3ttYXJnaW4taW5saW5lLWVuZDotMTVweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNXB4O3dpZHRoOmNhbGMoMTAwJSAtIDI1MHB4KX19LnR2LXNlYXJjaC1iYXJfX2FyZWEtLXByb2ZpbGUtZmlsdGVyc3tkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtd3JhcDpub3dyYXA7aGVpZ2h0OjU2cHg7b3JkZXI6MTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tcHJvZmlsZS1maWx0ZXJze2Rpc3BsYXk6bm9uZX19LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWRldmljZXN7ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWRldmljZXN7ZGlzcGxheTpibG9ja319LnR2LXNlYXJjaC1iYXJfX3RhZ3Mtd3JhcHtwYWRkaW5nOjQzcHggMCAxMHB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3RhZ3Mtd3JhcHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19zY3JpcHR7YWxpZ24tc2VsZjpzdHJldGNoO2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcik7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NjcmlwdHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX190YWdze2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXRvcDotMjdweDttYXgtaGVpZ2h0OjI5cHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zZWFyY2gtYmFyX190YWdzLmktZXhwYW5kZWR7bWF4LWhlaWdodDpub25lfS50di1zZWFyY2gtYmFyX190YWdzOm5vdCguaS1leHBhbmRlZCkgLnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuLS1sZXNzLXRhZ3N7ZGlzcGxheTpub25lfS50di1zZWFyY2gtYmFyX190YWdzLWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS50di1zZWFyY2gtYmFyX190YWdzLWJ0bntjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoyNHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MTZweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuLC50di1zZWFyY2gtYmFyX190YWdzLWJ0bjp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmZvY3Vze291dGxpbmU6YXV0bztvdXRsaW5lLW9mZnNldDoycHh9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZTphdXRvO291dGxpbmUtb2Zmc2V0OjJweH0udHYtc2VhcmNoLWJhcl9fdGFncy1idG46Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpfS50di1zZWFyY2gtYmFyX191bm1vZGVyYXRlZC1ub3RpY2V7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MS4yO21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O21heC13aWR0aDoxMjBweDtwYWRkaW5nOjFweCA0cHh9LnR2LXNlYXJjaC1iYXJfX3VubW9kZXJhdGVkLW5vdGljZS0td2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNlMmU4ODU7Y29sb3I6IzY2Nn0udHYtc2VhcmNoLWJhcl9fd2lkZ2V0cy1jb250cm9se21hcmdpbi1pbmxpbmUtZW5kOjQwcHh9LnR2LXNlYXJjaC1iYXJfX3dpZGdldHMtY29udHJvbC1pY29uIHN2Z3tmaWxsOiNmZmZ9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1xdWVyeXtkaXNwbGF5OmlubGluZS1ibG9jaztsaW5lLWhlaWdodDoxO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoyMHB4O3ZlcnRpY2FsLWFsaWduOnRvcH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnl7ZGlzcGxheTpibG9jaztwYWRkaW5nLWlubGluZS1lbmQ6NDZweDt0b3A6MH19LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1xdWVyeS0tbW9iaWxle2Rpc3BsYXk6bm9uZX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnktLW1vYmlsZXtkaXNwbGF5OmJsb2NrfS50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZmlsdGVycy1idXR0b257cGFkZGluZy1pbmxpbmUtZW5kOjB9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjojYjNjN2QyNDA7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czozcHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZTo0NHB4IDM2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MjUwcHh9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDpmb2N1czo6cGxhY2Vob2xkZXJ7Y29sb3I6I2I4YmFjMDt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOjA7cGFkZGluZy1ibG9jazoxOXB4IDE5cHg7cGFkZGluZy1pbmxpbmU6MzJweCAzNnB4O3dpZHRoOjEwMCV9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaW5wdXQ6Zm9jdXN7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaWNvbntkaXNwbGF5OmJsb2NrO2luc2V0LWlubGluZS1zdGFydDoxMnB4O21hcmdpbi10b3A6LTlweDtvcGFjaXR5Oi44O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2l0aW9uOm9wYWNpdHkgLjM1cyBlYXNlfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pY29ue2luc2V0LWlubGluZS1zdGFydDowfX0udHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7ZmlsbDp2YXIoLS1jb2xvci13aGl0ZSk7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0udHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0OmZvY3VzKy50di1zZWFyY2gtYmFyX19zZWFyY2gtaWNvbntvcGFjaXR5OjE7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldHtib3R0b206MDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2luc2V0LWlubGluZS1lbmQ6MDtvcGFjaXR5Oi44O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3RyYW5zaXRpb246b3BhY2l0eSAuMzVzIGVhc2U7d2lkdGg6MzZweH0udHYtc2VhcmNoLWJhcl9faW5wdXQtcmVzZXQ6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNlYXJjaC1iYXJfX2lucHV0LXJlc2V0IHN2Z3tkaXNwbGF5OmlubGluZS1ibG9jaztmaWxsOnZhcigtLWNvbG9yLXdoaXRlKTtoZWlnaHQ6OXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDo5cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldDpob3ZlcntvcGFjaXR5OjE7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldHtpbnNldC1pbmxpbmUtZW5kOjExMnB4fX0udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVke2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDo1MHB4O2xpbmUtaGVpZ2h0OjE7bWluLXdpZHRoOjFweDt0ZXh0LWFsaWduOmVuZDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MTAwcHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVke2Rpc3BsYXk6bm9uZX19LnR2LXNlYXJjaC1iYXJfX3Nwb25zb3JlZC10ZXh0e2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tYm90dG9tOi02cHg7b3BhY2l0eTouN30udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWJ5e2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO29wYWNpdHk6Ljk7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgZWFzZTt3aWR0aDoxMDAlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWJ5OmhvdmVye29wYWNpdHk6MTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS50di1zZWFyY2gtYmFyX19zcG9uc29yZWQtaW1ne2Rpc3BsYXk6aW5saW5lLWJsb2NrO2luc2V0LWlubGluZS1lbmQ6MDttYXgtaGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWltZyBzdmd7cG9zaXRpb246cmVsYXRpdmU7ZmlsbDp2YXIoLS1jb2xvci13aGl0ZSk7aGVpZ2h0OjQwcHg7d2lkdGg6MTAwcHh9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnlfZGV2aWNlcy1yZXNlcnZlZC1oZWlnaHR7aGVpZ2h0OjU3cHh9fS50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnkgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmFjdGl2ZSwudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19idXR0b246aG92ZXIsLnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfX0udHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuIHN2ZywudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldCBzdmcsLnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0e2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnkgLnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0OmZvY3VzOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNlYXJjaC1iYXItLXN1YntiYWNrZ3JvdW5kLWNvbG9yOiMwZTEwMTU7aGVpZ2h0OmF1dG87bGluZS1oZWlnaHQ6NDBweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcil9fS50di1zZWFyY2gtYmFyLS1zdWIgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKX0udHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcHtvcGFjaXR5Oi42NTt0cmFuc2l0aW9uOm9wYWNpdHkgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcDpob3ZlcntvcGFjaXR5Oi44O3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXA6YWN0aXZle29wYWNpdHk6MTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAuaS1hY3RpdmV7b3BhY2l0eToxfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcC5pLWFjdGl2ZTpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9fS50di1zZWFyY2gtYmFyLS1zdWIgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbi10aXRsZXtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDB9LnR2LXNlYXJjaC1iYXIgLnR2LXNlYXJjaC1iYXJfX2NhcmV0e21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4fS50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRue2JvdHRvbTowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOjA7aW5zZXQtaW5saW5lLWVuZDowO3BhZGRpbmc6MCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2U7d2lkdGg6NjZweH0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bi0tcmlnaHRfMntpbnNldC1pbmxpbmUtZW5kOjY2cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bntkaXNwbGF5OmJsb2NrfX0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0biBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpfS50di1zZWFyY2gtYmFyIFtkYXRhLWRpdmlzaW9uPXNlYXJjaF17ZGlzcGxheTpub25lfVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhKYnA6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS14SmJwOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteEpicDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV8xLXhKYnA6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9LnR2LXNsaWRlciwudWktc2xpZGVyLnR2LXNsaWRlcntiYWNrZ3JvdW5kOm5vbmUhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6aW5pdGlhbCFpbXBvcnRhbnQ7Ym9yZGVyOm5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZTtoZWlnaHQ6MTBweCFpbXBvcnRhbnQ7bWFyZ2luOjhweCAxMDBweDtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2xpZGVyOmFmdGVyLC51aS1zbGlkZXIudHYtc2xpZGVyOmFmdGVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7Y29udGVudDoiIjtoZWlnaHQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7d2lkdGg6MTAwJX0udHYtc2xpZGVyX19sYWJlbHMsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsc3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt3aWR0aDoxMDAlfS50di1zbGlkZXJfX2xhYmVsLC51aS1zbGlkZXIudHYtc2xpZGVyX19sYWJlbHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzAteEpicCk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTE5cHg7d2lkdGg6MTAzcHg7d2lkdGg6NjVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNsaWRlcl9fbGFiZWw6aG92ZXIsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fMS14SmJwKX19LnR2LXNsaWRlcl9fbGFiZWw6Zm9jdXMsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNsaWRlcl9fbGFiZWwtLWxlZnQsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsLS1sZWZ0e2xlZnQ6LTEwMHB4fS50di1zbGlkZXJfX2xhYmVsLS1yaWdodCwudWktc2xpZGVyLnR2LXNsaWRlcl9fbGFiZWwtLXJpZ2h0e3JpZ2h0Oi05NnB4fS50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGUsLnVpLXNsaWRlci50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGV7YmFja2dyb3VuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCkhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NXB4O2hlaWdodDoxMHB4IWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MCFpbXBvcnRhbnQ7d2lkdGg6MTBweCFpbXBvcnRhbnQ7ei1pbmRleDoxfS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLmZlYXR1cmUtbW9iaWxldG91Y2ggLnVpLXNsaWRlci50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6YWZ0ZXJ7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6LTZweDtwYWRkaW5nOjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTZweDt3aWR0aDoxMDAlfS50di1zbGlkZXIgLnVpLXNsaWRlci1yYW5nZSwudWktc2xpZGVyLnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApIWltcG9ydGFudDtoZWlnaHQ6MnB4IWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NHB4IWltcG9ydGFudDt6LWluZGV4OjF9LnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdlLW1pbiwudWktc2xpZGVyLnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdlLW1pbntsZWZ0OjA7cmlnaHQ6YXV0b30udHYtc2NyZWVuZXJ7cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyIC50di1zY3JlZW5lciwudHYtZmVlZCAudHYtc2NyZWVuZXJ7bWFyZ2luOjB9LnR2LXNjcmVlbmVyX19zdGFuZGFsb25lLW1haW4tY29udGFpbmVye21pbi1oZWlnaHQ6MDtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjEwfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZXtwYWRkaW5nLXRvcDo1NnB4O3otaW5kZXg6MX0udHYtc2NyZWVuZXItLXN0aWNreS1oZWFkZXJ7cGFkZGluZy10b3A6NTdweH0udHYtc2NyZWVuZXItLWhpZGRlbi10b29sYmFye3BhZGRpbmctdG9wOjB9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmV7aGVpZ2h0OmNhbGMoMTAwJSAtIDE4NHB4KTtvdmVyZmxvdzphdXRvO3BhZGRpbmctYm90dG9tOjgwcHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo1cHg7d2lkdGg6NXB4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1zY3JvbGxiYXItdGh1bWItYmFja2dyb3VuZCx2YXIoLS1jb2xvci1zY3JvbGwtYmcpKTtib3JkZXI6MXB4IHNvbGlkICMwMDAwO2JvcmRlci1yYWRpdXM6M3B4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo2cHg7d2lkdGg6NnB4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXNiLXNjcm9sbGJhci1ib2R5LWJnKTtib3JkZXI6bm9uZX0udHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZS0tZnVsbHktbG9hZGVke2hlaWdodDpjYWxjKDEwMCUgLSA1NnB4KTtwYWRkaW5nLWJvdHRvbTowfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZSAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtoZWlnaHQ6YXV0bztvdmVyZmxvdzp2aXNpYmxlO3BhZGRpbmctYm90dG9tOjB9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldHtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXR7bWFyZ2luOjAgLTIwcHh9fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmV7b3ZlcmZsb3c6aGlkZGVufUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtvdmVyZmxvdzphdXRvfX0udHYtc2NyZWVuZXJfX3N5bWJvbHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NzAwO21heC13aWR0aDoxMDAlO3BhZGRpbmctaW5saW5lLWVuZDozcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXJfX3N5bWJvbHtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyX19zeW1ib2wtLXRleHR7Y29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb24pO2N1cnNvcjpkZWZhdWx0fS50di1zY3JlZW5lcl9fc3ltYm9sLS1zZWNvbmRhcnl7Zm9udC13ZWlnaHQ6NDAwfS50di1zY3JlZW5lcl9fdHlwZXtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtmb250LXdlaWdodDo0MDA7dGV4dC10cmFuc2Zvcm06bm9uZX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lcl9fdHlwZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9LnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1jb2xvci1zY3JlZW5lci1kZXNjcmlwdGlvbik7ZGlzcGxheTppbmxpbmU7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi4zcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3ZlcnRpY2FsLWFsaWduOmJvdHRvbX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbnttYXgtd2lkdGg6MTUwcHh9fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS50di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW57Ym90dG9tOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwNXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxfS50di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW4tLXN0YW5kYWxvbmV7cG9zaXRpb246Zml4ZWR9LnR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbi0taGlkZGVuLXRvb2xiYXJ7dG9wOjQ5cHh9LnR2LXNjcmVlbmVyX19ib3R0b20tbG9hZGluZy1zY3JlZW57Ym90dG9tOjQwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIC50di1zY3JlZW5lcl9fYm90dG9tLWxvYWRpbmctc2NyZWVue2JvdHRvbTowO2hlaWdodDo3MHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lcl9fZmlsdGVyLWZpZWxkLXRpdGxlLS1hY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApIWltcG9ydGFudH0udHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtd3JhcHttYXJnaW46MDtwYWRkaW5nOjE0OHB4IDAgMH0udHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtdGl0bGUtd3JhcHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2JvcmRlci1ib3R0b206MnB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjI2cHggMjBweCAyMHB4fS50di1zY3JlZW5lcl9fc3RhbmRhbG9uZS10aXRsZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZTozMHB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzotLjNweDtsaW5lLWhlaWdodDozNXB4fS50di1zY3JlZW5lcl9fbWFpbnRlbmFuY2V7Y29sb3I6IzhmOGY4Zjtmb250LXN0eWxlOml0YWxpYzttYXJnaW46MTBweCAxMXB4O3RleHQtYWxpZ246Y2VudGVyfS50di1zY3JlZW5lcl9fYm9keS1iYWNrZ3JvdW5ke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9keS1iZyl9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtRXFMYjojZTFlNmVjOy0tXzEtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8yLUVxTGI6I2YxZjNmNjstLV8zLUVxTGI6I2ZmZjstLV80LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fNS1FcUxiOnZhcigtLWNvbG9yLXdoaXRlKTstLV82LUVxTGI6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tXzctRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzktRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMTAtRXFMYjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8yLUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1fMy1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzQtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV81LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1fNi1FcUxiOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLV83LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fOC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzktRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMTAtRXFMYjojMzE3OWY1MmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJ7YWxpZ24taXRlbXM6Y2VudGVyO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOm5vd3JhcDtwYWRkaW5nOjEycHggMjBweCAxMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246ZGlzcGxheSAuNHMgLjRzfUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtc2NyZWVuZXItdG9vbGJhcntmbGV4LXdyYXA6d3JhcH19LnR2LXNjcmVlbmVyLXRvb2xiYXItLW9uZS1saW5le2ZsZXgtd3JhcDpub3dyYXA7b3ZlcmZsb3c6dmlzaWJsZX0udHYtc2NyZWVuZXItdG9vbGJhci0tc3RhbmRhbG9uZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS50di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRze2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyl9LnR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfc3RpY2t5e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo1fS50di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRzX2Fic29sdXRle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LnR2LXNjcmVlbmVyLXRvb2xiYXItLXN0YW5kYWxvbmVfc3RpY2t5e2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt6LWluZGV4OjN9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX3JlZnJlc2gtY291bnRlcntib3R0b206MDtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLWNvdW50ZXIgLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3JlZnJlc2gtY291bnRlcntkaXNwbGF5OmJsb2NrfS50di1zY3JlZW5lci10b29sYmFyPmRpdntoZWlnaHQ6MzJweDttYXJnaW4tYm90dG9tOjJweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9ue2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmbGV4LXNocmluazowO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MzJweDttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYmxvY2s6OHB4IDA7cGFkZGluZy1pbmxpbmU6MTJweCAxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDE3NW1zIGVhc2Usb3BhY2l0eSAxNzVtcyBlYXNlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tc3BhY2VfcmlnaHR7bWFyZ2luLWlubGluZS1lbmQ6MTBweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hbmltYXRlZHt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMTc1bXMgZWFzZSxvcGFjaXR5IDE3NW1zIGVhc2Usd2lkdGggLjM1cyBlYXNlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtb3B0aW9uc3tib3JkZXItZW5kLWVuZC1yYWRpdXM6MDtib3JkZXItaW5saW5lLWVuZDpub25lO2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tb3B0aW9uc3tib3JkZXItZW5kLXN0YXJ0LXJhZGl1czowO2JvcmRlci1zdGFydC1zdGFydC1yYWRpdXM6MH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1yZWZyZXNoe3BhZGRpbmc6OHB4IDAgMDt3aWR0aDozMnB4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXJlZnJlc2ggc3Zne2luc2V0LWlubGluZS1zdGFydDo1MCV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZXhwb3J0e3dpZHRoOjM2cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZXhwb3J0IHN2Z3tpbnNldC1pbmxpbmUtc3RhcnQ6NTAlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNxdWFyZXthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2hlaWdodDozMnB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO3dpZHRoOjMycHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tcmVmcmVzaC50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtY291bnRlciBzdmd7dHJhbnNmb3JtOnNjYWxlKC45KSB0cmFuc2xhdGVZKC01cHgpfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd257cGFkZGluZy1pbmxpbmUtZW5kOjE5cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93bjpiZWZvcmV7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtjb250ZW50OiIiO2luc2V0LWlubGluZS1lbmQ6NnB4O21hcmdpbi10b3A6LTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDttYXJnaW4taW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjU1JX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRle3BhZGRpbmctaW5saW5lLWVuZDoyM3B4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmU6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tY3JlYXRlLWFsZXJ0e2JhY2tncm91bmQtY29sb3I6I2ZmZn0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1jcmVhdGUtYWxlcnQgc3Zne3RyYW5zaXRpb246b3BhY2l0eSAxNzVtcyBlYXNlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQ6YWZ0ZXJ7Y29udGVudDoiKiI7aW5zZXQtaW5saW5lLWVuZDoxN3B4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo5cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi5pLWxvYWRpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtwb2ludGVyLWV2ZW50czpub25lfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24uaS1sb2FkaW5nIHN2Z3tvcGFjaXR5OjB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi5pLWxvYWRpbmc6YWZ0ZXJ7YW5pbWF0aW9uLWR1cmF0aW9uOjEuMDVzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLW5hbWU6dHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsMCwuMTEsMSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KTtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMHB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWJsb2NrOi01cHggMDttYXJnaW4taW5saW5lOi01cHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1saXN0LW50aC1jaGlsZC1iZyl9fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b246YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uOmFjdGl2ZSBzdmd7ZmlsbDp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Y29sb3I6dmFyKC0tY29sb3ItaXRlbS1hY3RpdmUtdGV4dCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVkOmhvdmVyIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVkOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWFjdGl2ZSl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWxlcnQtbG9hZGluZ3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWxlcnQtbG9hZGluZyBzdmd7b3BhY2l0eTowfUBrZXlmcmFtZXMgdHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RHswJXtvcGFjaXR5OjB9MjAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDIuNSl9fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFsZXJ0LWxvYWRpbmc6YWZ0ZXJ7YW5pbWF0aW9uLWR1cmF0aW9uOjEuMDVzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLW5hbWU6dHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsMCwuMTEsMSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KTtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMHB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWJsb2NrOi01cHggMDttYXJnaW4taW5saW5lOi01cHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwcHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZC1hbGVydC1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLV80LUVxTGIpfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWVuYWJsZWQtYWxlcnQtbG9hZGluZzphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyc3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtib3JkZXItd2lkdGg6MDtjb2xvcjp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNi1FcUxiKTtjb2xvcjp2YXIoLS1fNy1FcUxiKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczpob3Zlcntjb2xvcjp2YXIoLS1fNy1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi1pY29ue2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24tLXN0YW5kYWxvbmUtcmVmcmVzaHttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7dG9wOi0ycHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi1pY29uLS1leHBvcnR7bWFyZ2luLWlubGluZS1zdGFydDotOHB4O3RvcDotMnB4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tZmlsdGVyc3toZWlnaHQ6MTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjdweDt3aWR0aDoxMnB4O2ZpbGw6dmFyKC0tY29sb3ItaXRlbS1hY3RpdmUtdGV4dCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwLC50di1zY3JlZW5lci10b29sYmFyX19maWx0ZXItY291bnQtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlcjoycHggc29saWQgdmFyKC0tXzUtRXFMYik7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQpO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxMnB4O2hlaWdodDoxOXB4O2luc2V0LWlubGluZS1lbmQ6LTEycHg7bGluZS1oZWlnaHQ6MjBweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6LTEycHg7d2lkdGg6MTlweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50LS1tYXJrZXQtY291bnR7Ym9yZGVyOm5vbmU7aGVpZ2h0OjE2cHg7aW5zZXQtaW5saW5lLWVuZDoxMXB4O2xpbmUtaGVpZ2h0OjE2cHg7dG9wOi0xcHg7d2lkdGg6MTZweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fc3dpdGNoe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMsLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MX0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVze21heC13aWR0aDoxMDAlfS50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2Vye3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3R7ZmxleC1ncm93OjF9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QtZHJvcGRvd24taXRlbS0tc2VsZWN0ZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMTAtRXFMYikhaW1wb3J0YW50O2NvbG9yOnZhcigtLV85LUVxTGIpIWltcG9ydGFudH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0sLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXItaXRlbXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8yLUVxTGIpO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxM3B4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OXB4O21heC13aWR0aDoxNTBweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzo1cHggMTBweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAxNzVtcyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtOmhvdmVyLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtOmFjdGl2ZSwudHYtc2NyZWVuZXItdG9vbGJhcl9fcGVyaW9kLXBpY2tlci1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLUVxTGIpfS50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbTpmaXJzdC1jaGlsZCwudHYtc2NyZWVuZXItdG9vbGJhcl9fcGVyaW9kLXBpY2tlci1pdGVtOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZSwudHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZTphY3RpdmUsLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXItaXRlbS0tYWN0aXZlLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW0tLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMS1FcUxiKSFpbXBvcnRhbnQ7Y29sb3I6dmFyKC0tXzMtRXFMYil9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbS0tYWN0aXZlOmhvdmVyLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW0tLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLUVxTGIpIWltcG9ydGFudDtjb2xvcjp2YXIoLS1fMy1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1tb3JlLXdyYXB7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWlubGluZS1zdGFydDo5cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1tb3Jle2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE1cHg7bWFyZ2luLWlubGluZS1zdGFydDowO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjVweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmU6YWZ0ZXJ7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtjb250ZW50OiIiO21hcmdpbi10b3A6LTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0xcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjU1JX0udHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3Vwe3RvcDotLjVlbX0udHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc2VsZWN0e3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItdG9vbGJhcl9fY3VycmVuY3ktc2VsZWN0e21hcmdpbi1pbmxpbmUtZW5kOjEwcHh9LnR2LXNjcmVlbmVyLXRvb2xiYXIgLnR2LXNjcmVlbmVyLXRvb2xiYXJfX2N1cnJlbmN5LXNlbGVjdCAudHYtZHJvcGRvd25fX2J1dHRvbnt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoyMTBweH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItdG9vbGJhcl9fY3VycmVuY3ktc2VsZWN0IC50di1zY3JlZW5lci1wb3B1cF9faXRlbXt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoxNzBweH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItcG9wdXBfX2N1cnJlbmN5LXNlbGVjdC0tYWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlKX0udHYtZmxhZy1jb3VudHJ5LS1nbG9iZSBzdmd7Y29sb3I6dmFyKC0tXzgtRXFMYil9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtNnlfUjojZWNlY2VjfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtNnlfUjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKX0udHYtc2NyZWVuZXItcG9wdXB7d2lkdGg6MjgwcHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVte2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MTRweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDIycHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXByZXNldHMsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zYXZle2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tXzAtNnlfUil9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zYXZle21hcmdpbi1ib3R0b206MTBweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZSl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXRze2ZvbnQtd2VpZ2h0OjQwMDtwYWRkaW5nOjB9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXRzOmVtcHR5e2Rpc3BsYXk6bm9uZX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXQ6aG92ZXJ7cGFkZGluZy1pbmxpbmUtZW5kOjcwcHh9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS0tc3BhY2UtbGVmdHtwYWRkaW5nLWlubGluZS1zdGFydDoyNXB4IWltcG9ydGFudH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtZHJvcGRvd24taXRlbS1ob3Zlci1iZyl9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1wcmVzZXRzLXRpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6MTBweCAyMnB4fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGV7ZGlzcGxheTpub25lO2luc2V0LWlubGluZS1lbmQ6NzRweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTFweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRlLS1yaWdodHtpbnNldC1pbmxpbmUtZW5kOjE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGU6aG92ZXIgc3ZnICp7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfS50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRle2Rpc3BsYXk6aW5saW5lfX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZWRpdCwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1le2Rpc3BsYXk6bm9uZTtpbnNldC1pbmxpbmUtZW5kOjQ1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjExcHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWVkaXQgc3ZnLC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWUgc3Zne2hlaWdodDoxMHB4O3dpZHRoOjEycHg7ZmlsbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWVkaXQ6aG92ZXIgc3ZnLC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtOmhvdmVyPi50di1zY3JlZW5lci1wb3B1cF9faXRlbS1lZGl0LC50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1le2Rpc3BsYXk6YmxvY2t9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXJlbmFtZSwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmV7bWFyZ2luOi03cHg7cGFkZGluZzo3cHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXIsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZle2Rpc3BsYXk6bm9uZTtpbnNldC1pbmxpbmUtZW5kOjE1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjhweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciBzdmcsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZlIHN2Z3toZWlnaHQ6MTZweDt3aWR0aDoxNnB4O2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFyOmhvdmVyIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmUgc3Zne2ZpbGw6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKX19LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1mYXZvcml0ZSAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmV7ZGlzcGxheTppbmxpbmV9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhcntkaXNwbGF5OmlubGluZX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlOmhvdmVyPi50di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFye2Rpc3BsYXk6bm9uZX19LnR2LXNjcmVlbmVyLXBvcHVwX19yZWZyZXNoLWludGVydmFsc3t3aWR0aDphdXRvfS50di1zY3JlZW5lci1wb3B1cF9fcmVmcmVzaC1pbnRlcnZhbC1sYWJlbHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX19LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpub25lO2hlaWdodDoxNHB4O2luc2V0LWlubGluZS1zdGFydDo2cHg7cGFkZGluZy1ibG9jazoycHggMDtwYWRkaW5nLWlubGluZToycHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OXB4O3dpZHRoOjE0cHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTBweDt3aWR0aDoxMHB4O2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZS0tYWN0aXZle2Rpc3BsYXk6YmxvY2t9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZS0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZTpob3ZlciBzdmd7ZmlsbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tYWxlcnQtdG9nZ2xlLS1hY3RpdmU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApfS50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3ZlciAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tYWxlcnQtdG9nZ2xle2Rpc3BsYXk6YmxvY2t9fS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci1wb3B1cF9faXRlbS0tZmF2b3JpdGUgLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXJ7ZGlzcGxheTpub25lfS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUsLmZlYXR1cmUtbW9iaWxldG91Y2ggLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXJlbmFtZSwuZmVhdHVyZS1tb2JpbGV0b3VjaCAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhcntkaXNwbGF5OmlubGluZX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwe3RvcDoxcHg7d2lkdGg6MjgwcHh9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLXdyYXB7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7aGVpZ2h0OjQ1cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztoZWlnaHQ6NDVweDttYXJnaW46MDtwYWRkaW5nLWJsb2NrOjEwcHggMDtwYWRkaW5nLWlubGluZToyMnB4IDIycHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19zZWFyY2gtbm8tbWF0Y2hlc3tjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7Zm9udC1zdHlsZTppdGFsaWM7cG9pbnRlci1ldmVudHM6bm9uZX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19pdGVte2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxNHB4O3BhZGRpbmc6MTBweCAyMnB4fS50di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW0tLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7Y3Vyc29yOmRlZmF1bHQ7Zm9udC1zdHlsZTppdGFsaWN9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKX1bZGF0YS10aGVtZT1saWdodF17LS1fMC1lTGtWOiNmNWY4Zjk7LS1fMS1lTGtWOnZhcigtLWNvbG9yLXdoaXRlKTstLV8yLWVMa1Y6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1fMy1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tXzQtZUxrVjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLV81LWVMa1Y6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtZUxrVjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMi1lTGtWOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1fMy1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzQtZUxrVjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV81LWVMa1Y6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCl9QGtleWZyYW1lcyBmbGljay16UGlWNlNZNHswJXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApfXRve2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH19QGtleWZyYW1lcyBmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0ezAle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCl9dG97YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfX1odG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mb2N1c2VkLGh0bWwudGhlbWUtZGFyayAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVke2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7aHRtbC50aGVtZS1kYXJrIC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlcixodG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1zZWxlY3RlZDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCkhaW1wb3J0YW50fX1odG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mbGlja3thbmltYXRpb24tbmFtZTpmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0fS50di1zY3JlZW5lci10YWJsZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO3Bvc2l0aW9uOnN0YXRpY30udHYtc2NyZWVuZXItdGFibGUtLWZpeGVke3RhYmxlLWxheW91dDpmaXhlZH0udHYtc2NyZWVuZXItdGFibGVfX3RoZWFke2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS50di1zY3JlZW5lci10YWJsZV9fdGhlYWQtLXJlZ3VsYXIsLnR2LXNjcmVlbmVyLXRhYmxlX190aGVhZC0tc3RpY2t5e3BvaW50ZXItZXZlbnRzOmF1dG99LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFke2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcik7Ym9yZGVyLXRvcDoxcHggc29saWQ7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKTtoZWlnaHQ6NDhweH0udHYtc2NyZWVuZXItdGFibGVfX3Roe2N1cnNvcjpkZWZhdWx0O3BhZGRpbmc6MH0udHYtc2NyZWVuZXItdGFibGVfX3RoOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcil9LnR2LXNjcmVlbmVyLXRhYmxlX190aC0tZHJhZ2dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1lTGtWKTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLXRhYmxlX190aDpsYXN0LWNoaWxkOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX3RoLS1iaWcpOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX3RoLS1uby10b29sYmFyKXtwYWRkaW5nLWlubGluZS1lbmQ6NDFweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX190aDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfX0udHYtc2NyZWVuZXItdGFibGUgLnR2LXNjcmVlbmVyLXRhYmxlX190aHt3aGl0ZS1zcGFjZTpub3JtYWx9LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXB7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDdweDtwYWRkaW5nOjAgMTBweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtd3JhcC0tZGlzYWJsZS1pbnRlcmFjdGlvbntjdXJzb3I6ZGVmYXVsdH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21pbi13aWR0aDozMHB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt3aWR0aDoxMDAlfS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbCwudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZToiY29sdW1uTmFtZSBzZWFyY2hJbnB1dCIgImNvbHVtblZhbHVlIHNlYXJjaElucHV0IiAiY29sdW1uTWF0Y2hlcyBzZWFyY2hJbnB1dCI7bWluLXdpZHRoOjIyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHg7dGV4dC1hbGlnbjpzdGFydDt3aWR0aDoxMDAlfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLW5hbWUtY29sLC50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbC13aXRob3V0LWRlc2NyaXB0aW9ue21pbi13aWR0aDoxMDBweH19LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wsLnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntncmlkLXRlbXBsYXRlOiJjb2x1bW5OYW1lIHNlYXJjaElucHV0IiAiY29sdW1uVmFsdWUgc2VhcmNoSW5wdXQifS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS13aWRnZXQtbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZToiY29sdW1uTmFtZSIgImNvbHVtblZhbHVlIiAiY29sdW1uTWF0Y2hlcyI7bWluLXdpZHRoOjkwcHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweDt0ZXh0LWFsaWduOnN0YXJ0fS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2dyaWQtYXJlYTpjb2x1bW5OYW1lO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMDAlOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MTdweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTJweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDB9LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLXRpdGxlLXRocmVlLWxpbmVze2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6MzZweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdHdvLWxpbmVze2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbGluZS1jbGFtcDoyOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6MjRweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbWFya2Vye2hlaWdodDoyMHB4O2luc2V0LWlubGluZS1zdGFydDotMzBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweH0udHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b257YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTppbmxpbmUtZmxleDtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtZW5kOjA7anVzdGlmeS1jb250ZW50OmNlbnRlcjtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MThweH0udHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b24gc3Zne2hlaWdodDoxNHB4O3dpZHRoOjEycHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fdGg6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9ue2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpfS50di1zY3JlZW5lci10YWJsZV9fdGg6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzMtZUxrVik7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmhvdmVyIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbi0tYWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmhvdmVyIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbi0tYWN0aXZlOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNjcmVlbmVyLXRhYmxlX19jb2wtLWRyYWdnaW5ne2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtZUxrVil9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93e2N1cnNvcjpkZWZhdWx0O2hlaWdodDo0OHB4fS50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZmxpY2t7YW5pbWF0aW9uLWR1cmF0aW9uOjEuNHM7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDoxO2FuaW1hdGlvbi1uYW1lOmZsaWNrLXpQaVY2U1k0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKX19LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1hY3RpdmV7YmFja2dyb3VuZDojMzE3OWY1NjZ9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLV8yLWVMa1YpfS50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIC50di1zY3JlZW5lci10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHtib3JkZXItaW5saW5lLXN0YXJ0OjZweCBzb2xpZCB2YXIoLS1jb2xvci10di1ibHVlLTUwMCl9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mb2N1c2VkLC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tc2VsZWN0ZWR7YmFja2dyb3VuZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWZvY3VzZWQsLnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVke2JhY2tncm91bmQ6dmFyKC0tXzItZUxrVil9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlciwudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApIWltcG9ydGFudH0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlciwudHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tc2VsZWN0ZWQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1fMi1lTGtWKSFpbXBvcnRhbnR9fS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZCAudHYtc2NyZWVuZXItdGFibGVfX21hcmtlciwuZmVhdHVyZS1tb2JpbGV0b3VjaCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkIC50di1zY3JlZW5lci10YWJsZV9fbWFya2Vye3Zpc2liaWxpdHk6dmlzaWJsZX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93OmhvdmVyIC50di1zY3JlZW5lcl9fc3ltYm9se2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93OmhvdmVyIC50di1zY3JlZW5lcl9fc3ltYm9sLS10ZXh0e2NvbG9yOnZhcigtLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uKTtjdXJzb3I6ZGVmYXVsdH19LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1hY3RpdmUgLnR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXJ7dmlzaWJpbGl0eTp2aXNpYmxlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3c6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXJ7dmlzaWJpbGl0eTp2aXNpYmxlfX0udHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1hZGRpdGlvbnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtc2hyaW5rOjA7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50di1zY3JlZW5lci10YWJsZV9fbWFya2Vye21pbi1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt2aXNpYmlsaXR5OmhpZGRlbn0udHYtc2NyZWVuZXItdGFibGVfX21hcmtlci0tYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1jb250YWluZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGx7Zm9udC1zaXplOjE0cHg7cGFkZGluZy1ibG9jazoxMnB4IDEycHg7cGFkZGluZy1pbmxpbmU6MTFweCAxMHB4O3RleHQtYWxpZ246ZW5kO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci10YWJsZV9fY2VsbDpkaXIocnRsKXtkaXJlY3Rpb246bHRyO3RleHQtYWxpZ246cmlnaHR9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fc3ltYm9se3RleHQtdHJhbnNmb3JtOm5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTFweDtsZXR0ZXItc3BhY2luZzouM3B4O21hcmdpbi10b3A6MnB4fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwgLnR2LWZsYWctY291bnRyeXttYXJnaW4tYmxvY2s6MCAwO21hcmdpbi1pbmxpbmU6NHB4IDEycHh9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0e3RleHQtYWxpZ246c3RhcnR9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0OmRpcihydGwpe2RpcmVjdGlvbjpydGx9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS11cHtjb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS11cHtjb2xvcjp2YXIoLS1jb2xvci1ncm93aW5nKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWRvd257Y29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fY2VsbC0tZG93bntjb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWhpZ2hsaWdodGVke3RleHQtb3ZlcmZsb3c6Y2xpcH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWdyb3dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7bWFyZ2luOjAgLTNweDtwYWRkaW5nOjFweCAzcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWdyb3dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1ncm93aW5nKTtjb2xvcjp2YXIoLS1fMS1lTGtWKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7bWFyZ2luOjAgLTNweDtwYWRkaW5nOjFweCAzcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKTtjb2xvcjp2YXIoLS1fMS1lTGtWKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZpeC13aWR0aHtkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MjAwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHttYXgtd2lkdGg6MzAwcHg7cGFkZGluZy1ib3R0b206NHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHg7cGFkZGluZy10b3A6NXB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsOmZpcnN0LWNoaWxke21pbi13aWR0aDowfX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGw6bGFzdC1jaGlsZDpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1iaWcpOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLW5vLXRvb2xiYXIpe3BhZGRpbmctaW5saW5lLWVuZDo1M3B4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aG91dC1kZXNjcmlwdGlvbiAudHYtZmxhZy1jb3VudHJ5e21hcmdpbi10b3A6MH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXdpdGhvdXQtZGVzY3JpcHRpb246Zmlyc3QtY2hpbGR7bWluLXdpZHRoOjE3NXB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS13aXRob3V0LWRlc2NyaXB0aW9uOmZpcnN0LWNoaWxke21pbi13aWR0aDo5MHB4fX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXdpZGdldC13aXRob3V0LWRlc2NyaXB0aW9uOmZpcnN0LWNoaWxke21pbi13aWR0aDo5MHB4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFse2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jcnlwdG9fbWt0e2ZvbnQtc2l6ZToxNHB4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aC1tYXJrZXI6Zmlyc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0udHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyMHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoyMHB4fS50di1zY3JlZW5lci10YWJsZV9fbWFya2V0LWljb24gc3Zne3N0cm9rZTpjdXJyZW50Q29sb3J9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC5zZXNzaW9uLXN0YXR1c3tib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NHB4O21hcmdpbi1ibG9jazowIDJweDttYXJnaW4taW5saW5lOjRweCAwO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjRweH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwgLnNlc3Npb24tc3RhdHVzLnByZV9tYXJrZXR7YmFja2dyb3VuZDojZjc5ZDE2fS50di1zY3JlZW5lci10YWJsZV9fc29ydHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTtib3R0b206MDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MnB4O2luc2V0LWlubGluZS1lbmQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt2aXNpYmlsaXR5OmhpZGRlbjt3aWR0aDoxMDAlfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci10YWJsZV9fc29ydCBzdmd7aW5zZXQtaW5saW5lLWVuZDpjYWxjKDUwJSAtIDRweCk7cG9zaXRpb246YWJzb2x1dGU7ZmlsbDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3NvcnQgc3Zne2ZpbGw6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci10YWJsZV9fc29ydC0tYXNje3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWFzYyBzdmd7dG9wOi0zcHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0LS1kZXNje3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2Mgc3Zne3RvcDoycHh9LnR2LXNjcmVlbmVyLXRhYmxlX190aC0tYmlnOmxhc3QtY2hpbGQgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2luc2V0LWlubGluZS1lbmQ6YXV0bztpbnNldC1pbmxpbmUtc3RhcnQ6MDt3aWR0aDpjYWxjKDEwMCUgLSAycHgpfS50di1zY3JlZW5lci10YWJsZV9fdGg6bGFzdC1jaGlsZDpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX190aC0tYmlnKTpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX190aC0tbm8tdG9vbGJhcikgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2luc2V0LWlubGluZS1lbmQ6YXV0bztpbnNldC1pbmxpbmUtc3RhcnQ6MDt3aWR0aDpjYWxjKDEwMCUgLSA0M3B4KX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmxhc3QtY2hpbGQ6bm90KC50di1zY3JlZW5lci10YWJsZV9fdGgtLWJpZyk6bm90KC50di1zY3JlZW5lci10YWJsZV9fdGgtLW5vLXRvb2xiYXIpIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbntpbnNldC1pbmxpbmUtZW5kOjQzcHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0YWJsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fc29ydGFibGU6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9ue29wYWNpdHk6MX19LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tbmFtZXtkaXNwbGF5OmJsb2NrO2dyaWQtYXJlYTpjb2x1bW5NYXRjaGVzO21heC13aWR0aDoxMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tbmFtZSwudHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlLS10b3RhbHstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjExcHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi40cHg7bGluZS1oZWlnaHQ6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tdG90YWx7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtkaXNwbGF5OmlubGluZS1ibG9jaztncmlkLWFyZWE6Y29sdW1uVmFsdWU7dGV4dC10cmFuc2Zvcm06bm9uZTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnl7YWxpZ24tc2VsZjpjZW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NDAwO2dyaWQtYXJlYTpzZWFyY2hJbnB1dDttYXJnaW4taW5saW5lLWVuZDoxMnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MzJweDttaW4td2lkdGg6MTIwcHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnk6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MzBweDttYXJnaW4tcmlnaHQ6NjBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci10YWJsZV9fc2VhcmNoLXF1ZXJ5e2Rpc3BsYXk6bm9uZX19LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZGVzY3JpcHRpb257bWluLXdpZHRoOjk1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldCBzdmd7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci10YWJsZV9faW5wdXQtcmVzZXR7aW5zZXQtaW5saW5lLWVuZDowfX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldDpob3ZlciBzdmcgcGF0aHtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci10YWJsZV9fc2VhcmNoLWljb257Y29sb3I6dmFyKC0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdCk7aW5zZXQtaW5saW5lLXN0YXJ0OjEwcHg7b3BhY2l0eToxO3RyYW5zaXRpb246YWxsIDBzIGVhc2UgMHN9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1ib2R5LWJnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZToxMXB4O2xldHRlci1zcGFjaW5nOi41cHg7cGFkZGluZy1ibG9jazoxMHB4IDhweDtwYWRkaW5nLWlubGluZTozNnB4IDM2cHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pbnB1dDpmb2N1c3tib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbHtkaXNwbGF5OmlubGluZS1ibG9jaztsZXR0ZXItc3BhY2luZzouNXB4O21hcmdpbi1pbmxpbmUtZW5kOjVweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtdHJhbnNmb3JtOm5vbmV9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1idXl7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1idXl7Y29sb3I6dmFyKC0tY29sb3ItYnV5KX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tc3Ryb25nLWJ1eTpiZWZvcmV7YmFja2dyb3VuZDp1cmwoc3Ryb25nLWJ1eS1hcnJvdy42NzA3ZDEzOGQzMmVjMTY1YTQ1NS5zdmcpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6NTAlO2NvbnRlbnQ6IiI7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTVweH0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tYnV5e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1idXl7Y29sb3I6dmFyKC0tY29sb3ItYnV5KX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tYnV5OmJlZm9yZXtiYWNrZ3JvdW5kOnVybChidXktYXJyb3cuYWI2ZGZlNDExNTQ3OWJkMDRkZDMuc3ZnKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbi15OjUwJTtjb250ZW50OiIiO3BhZGRpbmctaW5saW5lLXN0YXJ0OjE1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXNlbGx7Y29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxse2NvbG9yOnZhcigtLWNvbG9yLXNlbGwpfS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxsOmJlZm9yZXtiYWNrZ3JvdW5kOnVybChzZWxsLWFycm93LjdhYTFiNTYzODcwYWEwYTA1ZTZhLnN2Zykgbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb24teTo1MCU7Y29udGVudDoiIjtwYWRkaW5nLWlubGluZS1zdGFydDoxNXB4fS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctc2VsbHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1zZWxse2NvbG9yOnZhcigtLWNvbG9yLXNlbGwpfS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctc2VsbDpiZWZvcmV7YmFja2dyb3VuZDp1cmwoc3Ryb25nLXNlbGwtYXJyb3cuYWMwYzU1NTkzZjNiMGE4NGQ0ZGEuc3ZnKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbi15OjUwJTtjb250ZW50OiIiO3BhZGRpbmctaW5saW5lLXN0YXJ0OjE1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLW5ldXRyYWx7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tbmV1dHJhbHtjb2xvcjp2YXIoLS1jb2xvci1uZXV0cmFsKX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tbmV1dHJhbDpiZWZvcmV7YmFja2dyb3VuZDp1cmwobmV1dHJhbC1hcnJvdy45OGY2MWMzMTVkNDUzMDA1NTgxMi5zdmcpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6NTAlO2NvbnRlbnQ6IiI7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTVweH0udHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LW1lc3NhZ2V7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Zm9udC1zdHlsZTppdGFsaWM7bWFyZ2luOjEzcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LnR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2ljb257ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2VtcHR5e2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApfS50di1zY3JlZW5lci10YWJsZV9fcGF0dGVybl90b29sdGlwX2NvbnRhaW5lcntmb250LXNpemU6MTNweDtwYWRkaW5nLWJsb2NrOjAgOHB4O3BhZGRpbmctaW5saW5lOjVweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6OTBweH0udHYtc2NyZWVuZXItdGFibGVfX3BhdHRlcm5fdG9vbHRpcF9jb250YWluZXIgc3Zne2hlaWdodDo0MHB4O3BhZGRpbmctYm90dG9tOjZweDt3aWR0aDo0MHB4fS50di1zY3JlZW5lci10YWJsZV9fbG9nby1jb250YWluZXJ7ZmxleC1zaHJpbms6MDttYXJnaW4taW5saW5lLWVuZDo4cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHR7YWxpZ24tY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLWJvdHRvbToxMHB4O3BhZGRpbmctdG9wOjEwcHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC1saW5rLC50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6dmlzaXRlZHtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcil9fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6YWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1hY3RpdmUpO2ZpbGw6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWFjdGl2ZSl9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQtbGluazpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQudHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tZml4ZWR7cG9zaXRpb246Zml4ZWR9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQudHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmU7dG9wOi00OHB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tXzQtZUxrVik7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW46MCAyMHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktY29udGVudHtkaXNwbGF5OmZsZXh9LnR2LXNjcmVlbmVyLXRhYmxlX19zeW1ib2wtY29udGFpbmVyLWRlc2NyaXB0aW9ue21pbi13aWR0aDowfS50di1zY3JlZW5lci10YWJsZV9fY2VsbC1jdXJyZW5jeS12YWx1ZXtjb2xvcjp2YXIoLS1fNS1lTGtWKTtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6M3B4fVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhNWGs6I2RkZTNlNjstLV8xLXhNWGs6I2ZiZmNmYzstLV8yLXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMy14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tXzQteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV81LXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzEteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLV8yLXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fMy14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzQteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV81LXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9ye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItcGFuZS1iZyk7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyKTtib3JkZXItcmFkaXVzOjJweDtib3gtc2hhZG93OjAgMnB4IDNweCAjMjUyYzMxMjk7aGVpZ2h0OjYwcHg7bWFyZ2luLXRvcDotMnB4O21pbi13aWR0aDo0MDBweDtvcGFjaXR5OjE7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6M30udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbntvcGFjaXR5OjB9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1zdGFuZGFsb25le21hcmdpbi10b3A6LTFweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLXdpZGV7d2lkdGg6NDM1cHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1zbGlte21pbi13aWR0aDoyMTBweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXBhbmUtYmcpO3BhZGRpbmctYmxvY2s6OHB4IDhweDtwYWRkaW5nLWlubGluZToyMHB4IDgxcHg7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRpdGxle2NvbG9yOnZhcigtLWNvbG9yLXVuZGVybGluZWQtdGV4dCk7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi41cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnR7bWFyZ2luLXRvcDoxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLWxlZnQsLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlLC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXJpZ2h0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodHttYXJnaW4taW5saW5lLXN0YXJ0OjIwcHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tY29uZGl0aW9uLC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXNlbGVjdHttYXJnaW4tdG9wOjRweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1jb250ZW50LS1zZWxlY3R7aGVpZ2h0OjM0cHg7bGluZS1oZWlnaHQ6MjdweDttYXgtd2lkdGg6MzUwcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRleHR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLV80LXhNWGspO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2hlaWdodDoyNXB4O3BhZGRpbmc6MCA2cHg7d2lkdGg6MTAzcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRleHQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV81LXhNWGspfX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC10ZXh0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItYmV0d2Vlbi1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzQteE1Yayk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDt3aWR0aDoxMDNweDt3aWR0aDo1MHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1iZXR3ZWVuLWlucHV0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fNS14TVhrKX19LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItYmV0d2Vlbi1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWJldHdlZW4tc2VwYXJhdG9ye21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtwYWRkaW5nOjAgNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXJlc2V0e2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAteE1Yayk7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjYwcHg7aW5zZXQtaW5saW5lLWVuZDowO2xpbmUtaGVpZ2h0OjY3cHg7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOjA7d2lkdGg6NjZweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1yZXNldCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXJlc2V0OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzEteE1Yayl9fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNvbnRhaW5lcntoZWlnaHQ6MjdweDtsaW5lLWhlaWdodDoyN3B4O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjE2cHg7bWFyZ2luLWJsb2NrOjZweCAwO21hcmdpbi1pbmxpbmU6NXB4IDA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlO3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jazttYXJnaW4tYmxvY2s6NXB4IDA7bWFyZ2luLWlubGluZToycHggMDtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7c3Ryb2tlLXdpZHRoOjEuNXB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3Blbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuOmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtY2FwdGlvbi0tbm8tdmFsdWUsLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZSAudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci1wbGFjZWhvbGRlcikhaW1wb3J0YW50fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb257Y3Vyc29yOnBvaW50ZXJ9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvd3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1jYXB0aW9uLS10ZXh0LW92ZXJmbG93IC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb24tbGFiZWx7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWlubGluZS1lbmQ6MjNweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb24tLXRleHQtb3ZlcmZsb3cgLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xle21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb246aG92ZXIgLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VhcmNoLXdyYXB7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7aGVpZ2h0OjQ1cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjpub25lO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmJsb2NrO2hlaWdodDo0NXB4O21hcmdpbjowO3BhZGRpbmctYmxvY2s6MTBweCAwO3BhZGRpbmctaW5saW5lOjIycHggMjJweDt3aWR0aDoxMDAlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VhcmNoLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc3R5bGU6aXRhbGljO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZHJvcGRvd24tdG9nZ2xle2hlaWdodDoxNnB4O2luc2V0LWlubGluZS1lbmQ6NDJweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDozMnB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jazttYXJnaW4tYmxvY2s6NXB4IDA7bWFyZ2luLWlubGluZToycHggMDtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZHJvcGRvd24tdG9nZ2xlLS1vcGVue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW46ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tc2VsZWN0OmhvdmVyfi50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZSBzdmd7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci10b2dnbGV7ZGlzcGxheTpibG9ja30udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXR7bWluLXdpZHRoOjMzN3B4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXR7cGFkZGluZy1pbmxpbmUtZW5kOjE4cHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19kcm9wZG93bi1jaGVja2JveC1pdGVte2NvbG9yOnZhcigtLWNvbG9yLXVuZGVybGluZWQtdGV4dCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wYW5lLWJnKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhlYlU6I2UwZTNlYjgwfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteGViVTojNDM0NjUxODB9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJ7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1ib2R5LWJnKX0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVye2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Mn0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyLS1zdGFuZGFsb25lX3N0aWNreXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO3Bvc2l0aW9uOmZpeGVkfS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXItLW1hcmtldHNfc3RpY2t5e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7ZGlzcGxheTppbmxpbmUtYmxvY2s7aW5zZXQtaW5saW5lLWVuZDp1bnNldDtpbnNldC1pbmxpbmUtc3RhcnQ6dW5zZXR9LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tbWFya2V0c19hYnNvbHV0ZXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlfS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX3JpZ2h0LXN1YnN0cmF0ZXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjQ4cHg7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fcmlnaHQtc3Vic3RyYXRlLS1zdGFuZGFsb25lX3N0aWNreXtwb3NpdGlvbjpmaXhlZH0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9uLXdyYXB7Ym9yZGVyLWlubGluZS1zdGFydDoxcHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKTtib3JkZXItdG9wOjFweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXhlYlUpO2luc2V0LWlubGluZS1lbmQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDo0MXB4fS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b24gc3Zne3Bvc2l0aW9uOnJlbGF0aXZlO2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyKX19LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fZmllbGRzLWJ1dHRvbi0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxNXB4fS50di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0LnR2LWRyb3Bkb3due2Rpc3BsYXk6ZmxleH0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdC0tZGlhbG9ne3BhZGRpbmc6N3B4IDAgMDt0b3A6MTBweH0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9fYnV0dG9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2J1dHRvbi10aXRsZXttYXJnaW4taW5saW5lLXN0YXJ0OjNweDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9faXRlbXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19pdGVtIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2l0ZW0tdGl0bGV7bWFyZ2luLWlubGluZS1zdGFydDo2cHg7cG9zaXRpb246cmVsYXRpdmU7dG9wOjFweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QtLWhpZGRlbntoZWlnaHQ6MDtwYWRkaW5nOjAgNXB4O3Zpc2liaWxpdHk6aGlkZGVuO3dpZHRoOjB9LnR2LWNhcmV0e2JvcmRlci1ibG9jay1jb2xvcjpjdXJyZW50Q29sb3IgIzAwMDA7Ym9yZGVyLWJsb2NrLXdpZHRoOjRweCAwO2JvcmRlci1pbmxpbmUtY29sb3I6IzAwMDAgIzAwMDA7Ym9yZGVyLWlubGluZS13aWR0aDo0cHggNHB4O2JvcmRlci1zdHlsZTpzb2xpZDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2U7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjB9LmFjdGl2ZSAudHYtY2FyZXQsLmktZHJvcHBlZCAudHYtY2FyZXQ6bm90KC50di1jYXJldC0tc3RyaWN0KSwudHYtY2FyZXQtLXN0cmljdC5pLWRyb3BwZWR7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXM7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5hY3RpdmUgLnR2LWNhcmV0OmRpcihydGwpLC5pLWRyb3BwZWQgLnR2LWNhcmV0Om5vdCgudHYtY2FyZXQtLXN0cmljdCk6ZGlyKHJ0bCksLnR2LWNhcmV0LS1zdHJpY3QuaS1kcm9wcGVkOmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udHYtY2FyZXQtLXNtYWxse2JvcmRlci1pbmxpbmUtZW5kLXdpZHRoOjNweDtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjNweDtib3JkZXItdG9wLXdpZHRoOjNweDttYXJnaW4taW5saW5lLWVuZDotMXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6M3B4fS50di1jYXJldC0tY29sb3JlZHt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2UsY29sb3IgLjM1cyBlYXNlfS50di1jYXJldC0tbm8tbWFyZ2lue21hcmdpbi1pbmxpbmUtc3RhcnQ6MH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1ZWjhJOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtWVo4STojZTVlNWU4Oy0tXzItWVo4STp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1fMy1ZWjhJOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVlaOEk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS1ZWjhJOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzItWVo4STp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tXzMtWVo4STp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApfS50di1kcm9wZG93bntwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LWRyb3Bkb3duLS1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LWRyb3Bkb3duLmktaW5hY3RpdmUgLnR2LWRyb3Bkb3duX19pdGVtLC50di1kcm9wZG93bl9fZ3JvdXAuaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2l0ZW17YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApO2N1cnNvcjpkZWZhdWx0fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd24uaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2l0ZW06aG92ZXIsLnR2LWRyb3Bkb3duX19ncm91cC5pLWluYWN0aXZlIC50di1kcm9wZG93bl9faXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7Y3Vyc29yOmRlZmF1bHR9fS50di1kcm9wZG93bl9fZGVzY3tjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi10b3A6MnB4O3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW06aG92ZXIgLnR2LWRyb3Bkb3duX19kZXNje2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LWRyb3Bkb3duLmktaW5hY3RpdmUgLnR2LWRyb3Bkb3duX19kZXNjLC50di1kcm9wZG93bl9fZ3JvdXAuaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2Rlc2N7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di1kcm9wZG93bl9fYnV0dG9ue2N1cnNvcjpwb2ludGVyfS50di1kcm9wZG93bl9fZ3JvdXAtLWRpdmlkZWR7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCl9LnR2LWRyb3Bkb3duX19ncm91cC0tZGl2aWRlZDpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0udHYtZHJvcGRvd25fX2JvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtib3JkZXItcmFkaXVzOjZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTtmb250LXNpemU6MTNweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MTVweCAwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTVweDt6LWluZGV4Ojk5fS50di1kcm9wZG93bl9fYm9keS0tdW5kZXItdHJpZ2dlcnt0b3A6MTAwJTt0b3A6Y2FsYygxMDAlIC0gMXB4KX0udHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlcnt0b3A6MH0udHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0e2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6YXV0b30udHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX291dGVyX3JpZ2h0e2luc2V0LWlubGluZS1zdGFydDoxMDAlfS50di1kcm9wZG93bl9fdGl0bGV7Y29sb3I6I2JkYmVjMDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7bWFyZ2luLXRvcDoxMHB4O3BhZGRpbmc6MTBweCAxNXB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udHYtZHJvcGRvd25fX3RpdGxlOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0udHYtZHJvcGRvd25fX2l0ZW17Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDE1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtZHJvcGRvd25fX2l0ZW0sLnR2LWRyb3Bkb3duX19pdGVtOnZpc2l0ZWR7Y29sb3I6dmFyKC0tXzAtWVo4SSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1kcm9wZG93bl9faXRlbTpob3Zlcjpub3QoLmktYWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtZHJvcGRvd25fX2l0ZW06YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzMtWVo4SSl9LnR2LWRyb3Bkb3duX19pdGVtLmktYWN0aXZlLC50di1kcm9wZG93bl9faXRlbTphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKX0udHYtZHJvcGRvd25fX2l0ZW0uaS1hY3RpdmUsLnR2LWRyb3Bkb3duX19pdGVtLmktYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8zLVlaOEkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW0uaS1hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMy1ZWjhJKX19LnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQsLnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQ6YWN0aXZle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtjb2xvcjp2YXIoLS1fMS1ZWjhJKTtjdXJzb3I6ZGVmYXVsdH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLV8xLVlaOEkpO2N1cnNvcjpkZWZhdWx0fX0udHYtZHJvcGRvd25fX2l0ZW0tLXN1Yml0ZW17cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MzBweCAxNXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW0tLW5vdC1pbnRlcmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlLmktYWN0aXZlLC50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlLmktYWN0aXZlOmhvdmVye2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH19LnR2LWRyb3Bkb3duX19pdGVtLS1ub3QtaW50ZXJhY3RpdmUuaS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH0udHYtZHJvcGRvd25fX2l0ZW0tdGV4dHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzYtYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV82LWF1MVc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCl9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtYXUxVzojNTM1MzUzOy0tXzEtYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8yLWF1MVc6I2U1ZTVlODstLV8zLWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tXzQtYXUxVzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1fNS1hdTFXOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLWF1MVc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS1hdTFXOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzItYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8zLWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLV80LWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLV81LWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX0udHYtY29udHJvbC1zZWxlY3RfX3dyYXB7ZGlzcGxheTpibG9jazttaW4td2lkdGg6NDBweDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0udHYtY29udHJvbC1zZWxlY3RfX3dyYXAtLXJlYWRvbmx5e2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjdXJzb3I6dGV4dDstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7dXNlci1zZWxlY3Q6dGV4dH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9keS1iZyk7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTNweDtwYWRkaW5nOjAgMTJweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbG9yOnZhcigtLV8wLWF1MVcpO2N1cnNvcjpwb2ludGVyO2hlaWdodDozNHB4O2xpbmUtaGVpZ2h0OjM0cHg7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6OnBsYWNlaG9sZGVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpO29wYWNpdHk6MX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbHstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxMDAwcHggI2ZmZiFpbXBvcnRhbnR9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1zaXplX3hzbWFsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLXNpemVfeHNtYWxse2hlaWdodDoxOXB4fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC0tc2l6ZV9zbWFsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLXNpemVfc21hbGx7aGVpZ2h0OjI3cHh9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1zaXplX2xhcmdlLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tc2l6ZV9sYXJnZXtmb250LXNpemU6MTZweDtoZWlnaHQ6NDhweH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLWNvbm5lY3Qsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0LS1jb25uZWN0e2JvcmRlci1pbmxpbmUtZW5kOjA7Ym9yZGVyLWlubGluZS1zdGFydDowO2JvcmRlci1yYWRpdXM6MH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLWNvbm5lY3RfbGVmdCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLWNvbm5lY3RfbGVmdHtib3JkZXItZW5kLXN0YXJ0LXJhZGl1czowO2JvcmRlci1pbmxpbmUtc3RhcnQ6bm9uZTtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1jb25uZWN0X3JpZ2h0LHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tY29ubmVjdF9yaWdodHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MDtib3JkZXItaW5saW5lLWVuZDpub25lO2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1jb25uZWN0X3JpZ2h0I2lkX3VzZXJuYW1lOmRpcihydGwpLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tY29ubmVjdF9yaWdodCNpZF91c2VybmFtZTpkaXIocnRsKXtkaXJlY3Rpb246bHRyO3RleHQtYWxpZ246cmlnaHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fY29udHJvbDpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3Q6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlci1ob3Zlcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCkhaW1wb3J0YW50O3RyYW5zaXRpb24tZHVyYXRpb246NjBtc30udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbcmVhZG9ubHldLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtyZWFkb25seV17Ym9yZGVyLWNvbG9yOnZhcigtLV82LWF1MVcpO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbFtyZWFkb25seV06Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0W3JlYWRvbmx5XTpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbcmVhZG9ubHldOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtyZWFkb25seV06aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpIWltcG9ydGFudH19LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktZGlzYWJsZWQsLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sW2Rpc2FibGVkXSxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1kaXNhYmxlZCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3RbZGlzYWJsZWRde2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yKSFpbXBvcnRhbnQ7Y29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLWRpc2FibGVkOjpwbGFjZWhvbGRlciwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdOjpwbGFjZWhvbGRlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1kaXNhYmxlZDo6cGxhY2Vob2xkZXIsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0W2Rpc2FibGVkXTo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1kaXNhYmxlZDpob3ZlciwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWRpc2FibGVkOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtkaXNhYmxlZF06aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpIWltcG9ydGFudH19LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktZXJyb3Isc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0LmktZXJyb3J7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCkhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1lcnJvcjpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1lcnJvcjpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKSFpbXBvcnRhbnR9fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLWVycm9yOmZvY3VzLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWVycm9yOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApIWltcG9ydGFudH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1zdWNjZXNzLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXN1Y2Nlc3MpIWltcG9ydGFudH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktc3VjY2Vzczpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1zdWNjZXNzOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1zdWNjZXNzLWhvdmVyKSFpbXBvcnRhbnR9fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLXN1Y2Nlc3M6YWN0aXZlLC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLXN1Y2Nlc3M6Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0Lmktc3VjY2VzczphY3RpdmUsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0Lmktc3VjY2Vzczpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3Itc3VjY2Vzcy1hY3RpdmUpIWltcG9ydGFudH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLXBob25lLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tcGhvbmV7ZGlyZWN0aW9uOmx0cjt0ZXh0LWFsaWduOnN0YXJ0fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6aG92ZXIsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItaG92ZXIpfX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1kaXNhYmxlZCwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWRpc2FibGVkLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpO2N1cnNvcjpkZWZhdWx0fS5pLWVycm9yIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbCwuaS1lcnJvciBzZWxlY3QudHYtY29udHJvbC1zZWxlY3R7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCkhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaS1lcnJvciAudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6aG92ZXIsLmktZXJyb3Igc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApIWltcG9ydGFudH19LmktZXJyb3IgLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sOmZvY3VzLC5pLWVycm9yIHNlbGVjdC50di1jb250cm9sLXNlbGVjdDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKSFpbXBvcnRhbnR9LnR2LWNvbnRyb2wtc2VsZWN0LS1zaXplX3hzbWFsbCAudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2x7aGVpZ2h0OjE5cHg7bGluZS1oZWlnaHQ6MTlweH0udHYtY29udHJvbC1zZWxlY3QtLXNpemVfc21hbGwgLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9se2hlaWdodDoyN3B4O2xpbmUtaGVpZ2h0OjI3cHh9LnR2LWNvbnRyb2wtc2VsZWN0LS1zaXplX2xhcmdlIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbHtoZWlnaHQ6NDhweDtsaW5lLWhlaWdodDo0OHB4fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lcntkaXNwbGF5OmJsb2NrO21hcmdpbi1pbmxpbmUtZW5kOjEycHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lci0tb3B0aW9uLWRpc2FibGVke2NvbG9yOnZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXItLXJlYWRvbmx5e2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjdXJzb3I6dGV4dDstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7dXNlci1zZWxlY3Q6dGV4dH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXI6YWZ0ZXJ7Y29udGVudDoiXDIwMEUifXNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWluaXRlZHtkaXNwbGF5Om5vbmV9LnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldHtib3R0b206MDtjdXJzb3I6cG9pbnRlcjtpbnNldC1pbmxpbmUtZW5kOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6NDBweH0udHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye2JvcmRlci1pbmxpbmUtZW5kOjRweCBzb2xpZCAjMDAwMDtib3JkZXItaW5saW5lLXN0YXJ0OjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLWNvbG9yLWVtcHR5LWNvbnRhaW5lci1tZXNzYWdlKTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5zZXQtaW5saW5lLWVuZDoxNXB4O2luc2V0LWlubGluZS1zdGFydDphdXRvO21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZSxib3JkZXItY29sb3IgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX3dyYXA6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKSAjMDAwMCAjMDAwMDt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS50di1jb250cm9sLXNlbGVjdF9fd3JhcC5pLW9wZW5lZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyl9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktb3BlbmVkIC50di1jb250cm9sLXNlbGVjdF9fY2FyZXQ6YWZ0ZXI6ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX3dyYXAuaS1vcGVuZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2UpICMwMDAwICMwMDAwfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC5pLW9wZW5lZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmhvdmVyOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpICMwMDAwICMwMDAwO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktY2xvc2luZyAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0e3otaW5kZXg6OTh9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktY2xvc2luZyAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoMCl9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktZGlzYWJsZWQgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldHtjdXJzb3I6ZGVmYXVsdH0udHYtY29udHJvbC1zZWxlY3RfX3dyYXAuaS1kaXNhYmxlZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yKSAjMDAwMCAjMDAwMH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktZGlzYWJsZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikgIzAwMDAgIzAwMDB9fS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtib3JkZXItcmFkaXVzOjZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTtmb250LXNpemU6MTNweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MTVweCAwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTVweDt6LWluZGV4Ojk5fS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24tLXVuZGVyLXRyaWdnZXJ7dG9wOjEwMCU7dG9wOmNhbGMoMTAwJSAtIDFweCl9LnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93bi0tb3Zlci10cmlnZ2Vye3RvcDowfS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24tLXBvc2l0aW9uX3JpZ2h0e2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6YXV0b30udHYtY29udHJvbC1zZWxlY3RfX2Ryb3Bkb3duLS1wb3NpdGlvbl9vdXRlcl9yaWdodHtpbnNldC1pbmxpbmUtc3RhcnQ6MTAwJX0udHYtY29udHJvbC1zZWxlY3RfX2Ryb3Bkb3duLnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93bntjdXJzb3I6ZGVmYXVsdDtpbnNldC1pbmxpbmUtZW5kOi03cHg7aW5zZXQtaW5saW5lLXN0YXJ0Oi03cHg7dG9wOi0xNHB4fS50di1jb250cm9sLXNlbGVjdF9fc2Nyb2xse2hlaWdodDoxMDAlfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXB7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDE1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXA6dmlzaXRlZHtjb2xvcjp2YXIoLS1fMS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3Zlcjpub3QoLmktYWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcil9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAuaS1hY3RpdmUsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLmktZGlzYWJsZWQsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWRpc2FibGVkOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tXzItYXUxVyk7Y3Vyc29yOmRlZmF1bHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAuaS1kaXNhYmxlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tXzItYXUxVyk7Y3Vyc29yOmRlZmF1bHR9fS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLXN1Yml0ZW17cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MzBweCAxNXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLS1ub3QtaW50ZXJhY3RpdmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLS1ub3QtaW50ZXJhY3RpdmUuaS1hY3RpdmUsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC0tbm90LWludGVyYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLW5vdC1pbnRlcmFjdGl2ZS5pLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLW5vdC1pbnRlcmFjdGl2ZS5pLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwe2ZvbnQtc2l6ZToxM3B4O3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktYWN0aXZlIC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi5pLWRpc2FibGVkIC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXB7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLWNvbG9yLWJvcmRlci1ob3Zlcik7Y3Vyc29yOmRlZmF1bHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktZGlzYWJsZWQgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItaG92ZXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktZGlzYWJsZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1jb250cm9sLXNlbGVjdF9fb3B0Z3JvdXB7ZGlzcGxheTpibG9ja30udHYtY29udHJvbC1zZWxlY3RfX29wdGdyb3VwLWxhYmVse2NvbG9yOiNiZGJlYzA7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTRweDtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTttYXJnaW4tdG9wOjEwcHg7cGFkZGluZzoxMHB4IDE1cHg7cGFkZGluZy1pbmxpbmUtZW5kOjIwcHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1sYWJlbDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1zZXBhcmF0b3J7ZGlzcGxheTpub25lfS50di1jb250cm9sLXNlbGVjdF9fb3B0Z3JvdXAtc2VwYXJhdG9yOm5vdCg6bGFzdC1vZi10eXBlKXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlcjpub25lO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDttYXJnaW46OHB4IDB9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1pdGVtc3tkaXNwbGF5OmJsb2NrfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2ggLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldCwudHYtY29udHJvbC1zZWxlY3RfX3dyYXAtLXRvdWNoIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbHtwb2ludGVyLWV2ZW50czpub25lfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2ggLnR2LWNvbnRyb2wtc2VsZWN0LmktaW5pdGVke2JvdHRvbTowO2Rpc3BsYXk6YmxvY2s7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1Bazk1OiM4YThhOGF9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1Bazk1OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfS50di1zY3JlZW5lci1wcm9tcHRfX2xhYmVse2NvbG9yOnZhcigtLV8wLUFrOTUpO2ZvbnQtc2l6ZToxM3B4O21hcmdpbi1ib3R0b206MTBweH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzEtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLV8yLWhDN0M6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMy1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV8xLWhDN0M6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1fMi1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tXzMtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX0udHYtc2NyZWVuZXItZGlhbG9ne292ZXJmbG93OmF1dG99LnR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcHttaW4taGVpZ2h0OjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcDphZnRlcntjbGVhcjpib3RoO2NvbnRlbnQ6IiI7ZGlzcGxheTp0YWJsZX0udHYtc2NyZWVuZXItZGlhbG9nX193cmFwLS0yY29se3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2w6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyLXRhYmxlKTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjUwJTttYXJnaW4taW5saW5lLXN0YXJ0Oi0ycHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoycHg7ei1pbmRleDoxfS50di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2wgLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxke3dpZHRoOjUwJX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGR7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyLXRhYmxlKTtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2Zsb2F0OmlubGluZS1zdGFydDttaW4taGVpZ2h0OjU1cHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCAyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUsLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApfWh0bWwudGhlbWUtZGFyayAudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtLWFjdGl2ZSxodG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtLWFjdGl2ZSAudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtcmVzZXR7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZDpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0udHYtc2NyZWVuZXItZGlhbG9nLS1jYXQxIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MiwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQxIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MywudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQyIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MSwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQyIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MywudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQzIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MSwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQzIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MntkaXNwbGF5Om5vbmV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRpdGxle2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LXNpemU6MTNweDtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDozMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnR7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4O21pbi1oZWlnaHQ6MjdweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo2MyV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLWxlZnQsLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHR7bWFyZ2luLWlubGluZS1zdGFydDoyMHB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo4cHggMjBweH0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tbGVmdCwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlLC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodHtkaXNwbGF5OmJsb2NrO21hcmdpbi1pbmxpbmUtc3RhcnQ6MH19LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtdmFsdWU6bm90KDpsYXN0LWNoaWxkKTphZnRlcntjb250ZW50OiIsICJ9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRleHR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLV8yLWhDN0MpO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2hlaWdodDoyNXB4O3BhZGRpbmc6MCA2cHg7d2lkdGg6MTAzcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC10ZXh0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fMy1oQzdDKX19LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRleHQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItYmV0d2Vlbi1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzItaEM3Qyk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDt3aWR0aDoxMDNweDt3aWR0aDo1MHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItYmV0d2Vlbi1pbnB1dDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tXzMtaEM3Qyl9fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1iZXR3ZWVuLWlucHV0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWJldHdlZW4tc2VwYXJhdG9ye21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtwYWRkaW5nOjAgNnB4fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1yZXNldHtjdXJzb3I6cG9pbnRlcjttYXJnaW4taW5saW5lLXN0YXJ0OjMwcHg7dmlzaWJpbGl0eTpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1yZXNldCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWNvbnRhaW5lcntoZWlnaHQ6MjdweDtsaW5lLWhlaWdodDoyN3B4O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xle2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O21hcmdpbi1ibG9jazo2cHggMDttYXJnaW4taW5saW5lOjVweCAwO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZTt2ZXJ0aWNhbC1hbGlnbjp0b3A7d2lkdGg6MTZweH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ibG9jazo1cHggMDttYXJnaW4taW5saW5lOjJweCAwO3N0cm9rZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtzdHJva2Utd2lkdGg6MS41cHh9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3Blbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3BlbjpkaXIocnRsKXt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfS50di1zY3JlZW5lci1kaWFsb2dfX3NlbGVjdGJveC1jYXB0aW9uLS1uby12YWx1ZSwudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZSAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtb3B0aW9uLXdyYXB7Y29sb3I6dmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpIWltcG9ydGFudH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbntjdXJzb3I6cG9pbnRlcn0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvd3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJX0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvdyAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi1sYWJlbHtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctaW5saW5lLWVuZDoyM3B4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWNhcHRpb24tLXRleHQtb3ZlcmZsb3cgLnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZXttYXJnaW4taW5saW5lLXN0YXJ0Oi0xOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbjpob3ZlciAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1kaWFsb2dfX3NlYXJjaC13cmFwe2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2hlaWdodDo0NXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1kaWFsb2dfX3NlYXJjaC1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOm5vbmU7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjQ1cHg7bWFyZ2luOjA7cGFkZGluZy1ibG9jazoxMHB4IDA7cGFkZGluZy1pbmxpbmU6MjJweCAyMnB4O3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VhcmNoLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc3R5bGU6aXRhbGljO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZXtoZWlnaHQ6MTZweDtpbnNldC1pbmxpbmUtZW5kOjclO21hcmdpbi1pbmxpbmUtZW5kOjdweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyMHB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUgc3Zne2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJsb2NrOjVweCAwO21hcmdpbi1pbmxpbmU6MnB4IDA7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW57dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW46ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXNlbGVjdDpob3Zlcn4udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci10b2dnbGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDo0cHh9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLXRvZ2dsZS1jaGVja2JveHtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2NyZWVuZXItZGlhbG9nIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci10b2dnbGUtY2hlY2tib3gtdGl0bGV7ZGlzcGxheTpub25lfS50di1zY3JlZW5lci1kaWFsb2dfX3NlbGVjdGJveC1vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1zY3JlZW5lci1zZWFyY2h7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItdGFibGUpO2hlaWdodDo0MHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1zZWFyY2hfX2lucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTRweDtoZWlnaHQ6NDBweDtwYWRkaW5nLWJsb2NrOjAgMDtwYWRkaW5nLWlubGluZTo1N3B4IDEzNXB4O3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXNlYXJjaF9faW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKX0udHYtc2NyZWVuZXItc2VhcmNoIHN2Z3tpbnNldC1pbmxpbmUtc3RhcnQ6MjdweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMnB4fS50di1zY3JlZW5lci1zZWFyY2hfX3Jlc2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTtjdXJzb3I6cG9pbnRlcjtpbnNldC1pbmxpbmUtZW5kOjMwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEycHh9LnR2LXNjcmVlbmVyLXNlYXJjaF9fcmVzZXQtaWNvbiBzdmd7aW5zZXQtaW5saW5lLXN0YXJ0Oi0yNnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O2ZpbGw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO3BvaW50ZXItZXZlbnRzOmF1dG99Lm1vZGVUaXRsZS1qc1QzUzRNQXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMzVzO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3I7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZTstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjIxcHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE0cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwfS5tb2RlVGl0bGVBY3RpdmUtanNUM1M0TUF7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS5zd2l0Y2hlckNvbnRhaW5lci1qc1QzUzRNQXttYXJnaW46MCA4cHh9LmVsZW1lbnRXcmFwLUxlWndHaUI2e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXgtd2lkdGg6MTAwJX0uaXRlbXNXcmFwLUxlWndHaUI2e2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXRlbS1MZVp3R2lCNntjb2xvcjp2YXIoLS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWwpO2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjAgOXB4fS5pdGVtLUxlWndHaUI2OmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9Lml0ZW0tTGVad0dpQjY6bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MH0uaXRlbS1MZVp3R2lCNi5hY3RpdmUtTGVad0dpQjYgLml0ZW1Db250ZW50LUxlWndHaUI2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS1jb2xvci13aGl0ZSk7Y3Vyc29yOmRlZmF1bHR9Lml0ZW0tTGVad0dpQjYuYWN0aXZlLUxlWndHaUI2IC5pdGVtQ29udGVudC1MZVp3R2lCNi5kcm9wZG93bkl0ZW0tTGVad0dpQjZ7Y3Vyc29yOnBvaW50ZXJ9Lml0ZW1Db250ZW50LUxlWndHaUI2e2JvcmRlcjoxcHggc29saWQgIzAwMDA7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEzcHg7cGFkZGluZzozcHggMTJweCA0cHg7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlLGNvbG9yIC4zNXMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtQ29udGVudC1MZVp3R2lCNjpob3Zlcjpub3QoLmFjdGl2ZS1MZVp3R2lCNil7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcil9fS5kcm9wZG93bkl0ZW0tTGVad0dpQjZ7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjMycHh9LmRyb3Bkb3duSWNvbi1MZVp3R2lCNntkaXNwbGF5OmJsb2NrO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZX0uZHJvcGRvd25JY29uLUxlWndHaUI2OmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0uZHJvcGRvd25JY29uLUxlWndHaUI2LmFjdGl2ZS1MZVp3R2lCNnt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LmRyb3Bkb3duSWNvbi1MZVp3R2lCNi5hY3RpdmUtTGVad0dpQjY6ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmRyb3Bkb3duTGlzdEl0ZW0tTGVad0dpQjZ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0ubGluay1VSVFwTExOcywubGluay1VSVFwTExOczp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0KTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxpbmstVUlRcExMTnM6aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcil9fS5saW5rLVVJUXBMTE5zOmFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1hY3RpdmUpfS5saW5rLVVJUXBMTE5zOmZvY3Vze291dGxpbmU6YXV0bztvdXRsaW5lLW9mZnNldDoycHh9LmxpbmstVUlRcExMTnM6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS5saW5rLVVJUXBMTE5zOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7b3V0bGluZTpub25lfQ=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/69352.33011f244b92ea0b642c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.216Z","timestamp":1785154590216,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/69352.33011f244b92ea0b642c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1251\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e01aeddc3e668009a819a5012d52292b\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4689,"size_decoded":2599,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3069)","md5":"5892ca5b3227e78df9d2ab92c3248724","sha1":"60544e547f80c21daf35460e9a75d3e817a58acd","sha256":"69236d01bc831a7a43ff776d09a39734ce30f2be4ecd83b55272b4c1d798c182","sha512":"1a6f2ba628e22166c5e1285ea8771085d4fb4bc18728dd29dcc612bfff921b3cde7047233fac48e47050cb6922013824b1166676d4d77219f87ed820d7333524","ssdeep":"48:fGoeBtt/RMHZr15WY7bq5+EGbplkGbDlZ6JGbHwa+EPyZT1k0SL6tGbdnRyeqg5v:RZ15FbqYtZ6UyEeT1hUAeJ4hZ72cYtOO","tlshash":"6ea165cd33c5f46523e2aad7a4bf510be13e198d601c6814b399e8e178579ce8132f78","first_seen":"2026-07-23T13:38:20.554349Z","last_seen":"2026-07-27T14:17:30.929347Z","times_seen":852,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s2OTM1Ml0sezkxNDQ4NyhlLHQpe3ZhciBuOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgcj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBpKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07aWYobil7dmFyIHM9dHlwZW9mIG47aWYoInN0cmluZyI9PT1zfHwibnVtYmVyIj09PXMpZS5wdXNoKG4pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShuKSYmbi5sZW5ndGgpe3ZhciBvPWkuYXBwbHkobnVsbCxuKTtvJiZlLnB1c2gobyl9ZWxzZSBpZigib2JqZWN0Ij09PXMpZm9yKHZhciB1IGluIG4pci5jYWxsKG4sdSkmJm5bdV0mJmUucHVzaCh1KX19cmV0dXJuIGUuam9pbigiICIpfWUuZXhwb3J0cz8oaS5kZWZhdWx0PWksZS5leHBvcnRzPWkpOnZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGl9LmFwcGx5KHQsW10pKXx8KGUuZXhwb3J0cz1uKX0oKX0sODI5MTgwKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9big2MDE4NDEpO2NvbnN0IGk9L3soXHcrKX0vZyxzPS97KFxkKyl9L2c7U3RyaW5nLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oLi4uZSl7Y29uc3QgdD0oMCxyLmlzT2JqZWN0KShlWzBdKSxuPXQ/aTpzLG89dD8odCxuKT0+e2NvbnN0IHI9ZVswXTtyZXR1cm4gdm9pZCAwIT09cltuXT9yW25dOnR9Oih0LG4pPT57Y29uc3Qgcj1wYXJzZUludChuLDEwKSxpPWVbcl07cmV0dXJuIHZvaWQgMCE9PWk/aTp0fTtyZXR1cm4gdGhpcy5yZXBsYWNlKG4sbyl9fSwzNjMyNjkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7bW9iaWxldG91Y2g6KCk9Pmksc2V0Q2xhc3NlczooKT0+c30pO3ZhciByPW4oNzM4NDU4KTtjb25zdCBpPXIubW9iaWxldG91Y2g7ci50b3VjaDtmdW5jdGlvbiBzKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoci50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLHIubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwxODUyNzEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dDooKT0+ci50fSk7big4MjkxODApO3ZhciByPW4oNzgzMjU0KX0sNTI3MzIzKGUsdCxuKXt2YXIgcjshZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoKXt9dmFyIHM9aS5wcm90b3R5cGUsbz10LkV2ZW50RW1pdHRlcjtmdW5jdGlvbiB1KGUsdCl7Zm9yKHZhciBuPWUubGVuZ3RoO24tLTspaWYoZVtuXS5saXN0ZW5lcj09PXQpcmV0dXJuIG47cmV0dXJuLTF9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdGhpc1tlXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIGEoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fGUgaW5zdGFuY2VvZiBSZWdFeHB8fCEoIWV8fCJvYmplY3QiIT10eXBlb2YgZSkmJmEoZS5saXN0ZW5lcil9cy5nZXRMaXN0ZW5lcnM9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPXRoaXMuX2dldEV2ZW50cygpO2lmKGUgaW5zdGFuY2VvZiBSZWdFeHApZm9yKG4gaW4gdD17fSxyKXIuaGFzT3duUHJvcGVydHkobikmJmUudGVzdChuKSYmKHRbbl09cltuXSk7ZWxzZSB0PXJbZV18fChyW2VdPVtdKTtyZXR1cm4gdH0scy5mbGF0dGVuTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3ZhciB0LG49W107Zm9yKHQ9MDt0PGUubGVuZ3RoO3QrPTEpbi5wdXNoKGVbdF0ubGlzdGVuZXIpO3JldHVybiBufSxzLmdldExpc3RlbmVyc0FzT2JqZWN0PWZ1bmN0aW9uKGUpe3ZhciB0LG49dGhpcy5nZXRMaXN0ZW5lcnMoZSk7cmV0dXJuIG4gaW5zdGFuY2VvZiBBcnJheSYmKCh0PXt9KVtlXT1uKSx0fHxufSxzLmFkZExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYoIWEodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigibGlzdGVuZXIgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dmFyIG4scj10aGlzLmdldExpc3RlbmVyc0FzT2JqZWN0KGUpLGk9Im9iamVjdCI9PXR5cGVvZiB0O2ZvcihuIGluIHIpci5oYXNPd25Qcm9wZXJ0eShuKSYmLTE9PT11KHJbbl0sdCkmJnJbbl0ucHVzaChpP3Q6e2xpc3RlbmVyOnQsb25jZTohMX0pO3JldHVybiB0aGlzfSxzLm9uPWMoImFkZExpc3RlbmVyIikscy5hZGRPbmNlTGlzdGVuZXI9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5hZGRMaXN0ZW5lcihlLHtsaXN0ZW5lcjp0LG9uY2U6ITB9KX0scy5vbmNlPWMoImFkZE9uY2VMaXN0ZW5lciIpLHMuZGVmaW5lRXZlbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZ2V0TGlzdGVuZXJzKGUpLHRoaXN9LHMuZGVmaW5lRXZlbnRzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9MSl0aGlzLmRlZmluZUV2ZW50KGVbdF0pO3JldHVybiB0aGlzfSxzLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPXRoaXMuZ2V0TGlzdGVuZXJzQXNPYmplY3QoZSk7Zm9yKHIgaW4gaSlpLmhhc093blByb3BlcnR5KHIpJiYtMSE9PShuPXUoaVtyXSx0KSkmJmlbcl0uc3BsaWNlKG4sMSk7cmV0dXJuIHRoaXN9LHMub2ZmPWMoInJlbW92ZUxpc3RlbmVyIikscy5hZGRMaXN0ZW5lcnM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tYW5pcHVsYXRlTGlzdGVuZXJzKCExLGUsdCl9LHMucmVtb3ZlTGlzdGVuZXJzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubWFuaXB1bGF0ZUxpc3RlbmVycyghMCxlLHQpfSxzLm1hbmlwdWxhdGVMaXN0ZW5lcnM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGkscz1lP3RoaXMucmVtb3ZlTGlzdGVuZXI6dGhpcy5hZGRMaXN0ZW5lcixvPWU/dGhpcy5yZW1vdmVMaXN0ZW5lcnM6dGhpcy5hZGRMaXN0ZW5lcnM7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHx0IGluc3RhbmNlb2YgUmVnRXhwKWZvcihyPW4ubGVuZ3RoO3ItLTspcy5jYWxsKHRoaXMsdCxuW3JdKTtlbHNlIGZvcihyIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShyKSYmKGk9dFtyXSkmJigiZnVuY3Rpb24iPT10eXBlb2YgaT9zLmNhbGwodGhpcyxyLGkpOm8uY2FsbCh0aGlzLHIsaSkpCjtyZXR1cm4gdGhpc30scy5yZW1vdmVFdmVudD1mdW5jdGlvbihlKXt2YXIgdCxuPXR5cGVvZiBlLHI9dGhpcy5fZ2V0RXZlbnRzKCk7aWYoInN0cmluZyI9PT1uKWRlbGV0ZSByW2VdO2Vsc2UgaWYoZSBpbnN0YW5jZW9mIFJlZ0V4cClmb3IodCBpbiByKXIuaGFzT3duUHJvcGVydHkodCkmJmUudGVzdCh0KSYmZGVsZXRlIHJbdF07ZWxzZSBkZWxldGUgdGhpcy5fZXZlbnRzO3JldHVybiB0aGlzfSxzLnJlbW92ZUFsbExpc3RlbmVycz1jKCJyZW1vdmVFdmVudCIpLHMuZW1pdEV2ZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLHMsbz10aGlzLmdldExpc3RlbmVyc0FzT2JqZWN0KGUpO2ZvcihzIGluIG8paWYoby5oYXNPd25Qcm9wZXJ0eShzKSlmb3Iobj1vW3NdLnNsaWNlKDApLGk9MDtpPG4ubGVuZ3RoO2krKykhMD09PShyPW5baV0pLm9uY2UmJnRoaXMucmVtb3ZlTGlzdGVuZXIoZSxyLmxpc3RlbmVyKSxyLmxpc3RlbmVyLmFwcGx5KHRoaXMsdHx8W10pPT09dGhpcy5fZ2V0T25jZVJldHVyblZhbHVlKCkmJnRoaXMucmVtb3ZlTGlzdGVuZXIoZSxyLmxpc3RlbmVyKTtyZXR1cm4gdGhpc30scy50cmlnZ2VyPWMoImVtaXRFdmVudCIpLHMuZW1pdD1mdW5jdGlvbihlKXt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIHRoaXMuZW1pdEV2ZW50KGUsdCl9LHMuc2V0T25jZVJldHVyblZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9vbmNlUmV0dXJuVmFsdWU9ZSx0aGlzfSxzLl9nZXRPbmNlUmV0dXJuVmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5oYXNPd25Qcm9wZXJ0eSgiX29uY2VSZXR1cm5WYWx1ZSIpfHx0aGlzLl9vbmNlUmV0dXJuVmFsdWV9LHMuX2dldEV2ZW50cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ldmVudHN8fCh0aGlzLl9ldmVudHM9e30pfSxpLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdC5FdmVudEVtaXR0ZXI9byxpfSx2b2lkIDA9PT0ocj1mdW5jdGlvbigpe3JldHVybiBpfS5jYWxsKHQsbix0LGUpKXx8KGUuZXhwb3J0cz1yKX0odGhpc3x8e30pfSw4MTczNTAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+c30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMzYwNjIwKTtjb25zdCBzPWZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZXx8ITE9PT1lfHwoMCxpLmRlZmF1bHQpKGUpJiYiW29iamVjdCBCb29sZWFuXSI9PSgwLHIuZGVmYXVsdCkoZSl9fSwyMDY2NzMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+c30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMzYwNjIwKTtjb25zdCBzPWZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZXx8KDAsaS5kZWZhdWx0KShlKSYmIltvYmplY3QgTnVtYmVyXSI9PSgwLHIuZGVmYXVsdCkoZSl9fSwzMDQyMjEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+b30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMjk1NjM1KSxzPW4oMzYwNjIwKTtjb25zdCBvPWZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZXx8ISgwLGkuZGVmYXVsdCkoZSkmJigwLHMuZGVmYXVsdCkoZSkmJiJbb2JqZWN0IFN0cmluZ10iPT0oMCxyLmRlZmF1bHQpKGUpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32632.596e5348a1538a18fd4e.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.244Z","timestamp":1785154590244,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32632.596e5348a1538a18fd4e.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-4fc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ef59b8051dd493cb25ae69a9bc706bd3\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1276,"size_decoded":1216,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1276), with no line terminators","md5":"4dbd9186e797320373da6c5f9843030c","sha1":"23410205367378f1c6436025ba87050084b119a4","sha256":"7efe9b338dd4970e4b6ee84a711c1bb6cc65dad73322597e03c040abdb1fa38a","sha512":"a66b0365c81f21e82e8d510923718ce9c71b8aab5c59688e1d32283b9203b9d4b79e04b000fd34cc03234913be0c316407e1d1b9b4c6360478f73081d15595ef","ssdeep":"","tlshash":"3321dfe1e790187af8a38916a788de867158fa036713fd49f7daa80e4481d78113c34d","first_seen":"2026-07-16T13:40:49.72467Z","last_seen":"2026-07-27T14:22:59.561476Z","times_seen":1151,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtdWdzMTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXVnczE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnR2LXNwaW5uZXJ7YW5pbWF0aW9uOnR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtajRKbHJZVkggLjlzIGxpbmVhciBpbmZpbml0ZTtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXI6MCBzb2xpZCB2YXIoLS10di1zcGlubmVyLWNvbG9yLHZhcigtLWNvbG9yLWJyYW5kKSk7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5Om5vbmU7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjphYnNvbHV0ZX0udHYtc3Bpbm5lci0tc2hvd257ZGlzcGxheTpibG9ja30udHYtc3Bpbm5lci0tc2l6ZV94eHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gN3B4KTt0b3A6Y2FsYyg1MCUgLSA3cHgpO3dpZHRoOjEwcHh9LnR2LXNwaW5uZXItLXNpemVfeHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjE0cHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gOXB4KTt0b3A6Y2FsYyg1MCUgLSA5cHgpO3dpZHRoOjE0cHh9LnR2LXNwaW5uZXItLXNpemVfc21hbGx7Ym9yZGVyLXdpZHRoOjJweDtoZWlnaHQ6MjBweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAxMnB4KTt0b3A6Y2FsYyg1MCUgLSAxMnB4KTt3aWR0aDoyMHB4fS50di1zcGlubmVyLS1zaXplX21lZGl1bXtib3JkZXItd2lkdGg6M3B4O2hlaWdodDoyOHB4O2luc2V0LWlubGluZS1zdGFydDpjYWxjKDUwJSAtIDE3cHgpO3RvcDpjYWxjKDUwJSAtIDE3cHgpO3dpZHRoOjI4cHh9LnR2LXNwaW5uZXItLXNpemVfbGFyZ2V7Ym9yZGVyLXdpZHRoOjRweDtoZWlnaHQ6NTZweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAzMnB4KTt0b3A6Y2FsYyg1MCUgLSAzMnB4KTt3aWR0aDo1NnB4fS50di1zcGlubmVyOmRpcihydGwpe2FuaW1hdGlvbjp0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSCAuOXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgdHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKC0xdHVybil9fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/43325.256fa5a5213b9cb70f5c.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.479Z","timestamp":1785154590479,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/43325.256fa5a5213b9cb70f5c.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b74-b07\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:24 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:17:08\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1e9b88967416fed8f36c7a665b13766d\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2823,"size_decoded":1643,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2823), with no line terminators","md5":"9117f5417af5435afba6f7700053a6fc","sha1":"28521c103a762e72c133892f41ee2fb550e20888","sha256":"e121896dc20723795767320cb9facd147ce5ba20427b67b47b47eb2f85d85b67","sha512":"7e71e1b26466a549b6496d8e84f2581eff4877ff30f1d0deaa365a3c6729bf545e9672f4a4c8417b5dfe1c7d61cfd349b3c6d476823a50b074c4a6423cb09a67","ssdeep":"","tlshash":"275188abfbcb1e2de71bcea1e7a712ff91a405c1be584138e5b3ad71064ca741724184","first_seen":"2026-04-15T09:47:56.523899Z","last_seen":"2026-07-27T14:18:36.327292Z","times_seen":4971,"resource_available":false,"data":"LmxhYmVsLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDttYXgtd2lkdGg6MjhweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOm1heC13aWR0aCAuNnMgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHMsYmFja2dyb3VuZCAuM3MgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHM7ei1pbmRleDozfS5sYWJlbC1kemJkN2x5ViAubG9nb1dyYXAtZHpiZDdseVZ7cGFkZGluZy1pbmxpbmUtZW5kOjVweH0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWRCeUNsaWNrLWR6YmQ3bHlWLC5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWe21heC13aWR0aDoxMDVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxhYmVsLWR6YmQ3bHlWOmhvdmVye21heC13aWR0aDoxMDVweH19LmxhYmVsLWR6YmQ3bHlWOm5vdChhKXtjdXJzb3I6ZGVmYXVsdH0ubGFiZWwtZHpiZDdseVY6Zm9jdXN7b3V0bGluZTphdXRvO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO291dGxpbmUtb2Zmc2V0Oi0ycHg7b3V0bGluZS13aWR0aDoycHh9LmxhYmVsLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2luc2V0LWlubGluZS1zdGFydDo4cHh9LmxhYmVsLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzowIDJweCA0cHggMCB2YXIoLS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KX0ubGFiZWwtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2luc2V0LWlubGluZS1lbmQ6OHB4fS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MDtib3JkZXItZW5kLWVuZC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoxMnB4O2luc2V0LWlubGluZS1zdGFydDowfS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLmVuZC1kemJkN2x5Vntib3JkZXItcmFkaXVzOjA7Ym9yZGVyLWVuZC1zdGFydC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjEycHg7aW5zZXQtaW5saW5lLWVuZDowfS5sYWJlbC1kemJkN2x5Vi50b3AtZHpiZDdseVZ7dG9wOjhweH1AbWVkaWEgKG1heC1oZWlnaHQ6NTBweCl7LmxhYmVsLWR6YmQ3bHlWLnRvcC1kemJkN2x5Vnt0b3A6YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfX0ubGFiZWwtZHpiZDdseVYuYm90dG9tLWR6YmQ3bHlWe2JvdHRvbTo4cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTtib3JkZXItcmFkaXVzOjE3cHg7aGVpZ2h0OjM0cHg7bWF4LXdpZHRoOjM0cHg7cGFkZGluZzowIDZweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYgLmxvZ29XcmFwLWR6YmQ3bHlWe3BhZGRpbmctaW5saW5lLWVuZDo1cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzpub25lfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MCAxN3B4IDE3cHggMH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5zdGFydC1kemJkN2x5VjpkaXIocnRsKXtib3JkZXItcmFkaXVzOjE3cHggMCAwIDE3cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLnNuYXAtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTdweCAwIDAgMTdweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5lbmQtZHpiZDdseVY6ZGlyKHJ0bCl7Ym9yZGVyLXJhZGl1czowIDE3cHggMTdweCAwfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5leHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVZ7bWF4LXdpZHRoOjExMXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOjExMXB4fX0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVZ7bWF4LXdpZHRoOm5vbmU7dHJhbnNpdGlvbjpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOm5vbmV9fS5sYWJlbF9fbGluay1kemJkN2x5Vntib3JkZXItcmFkaXVzOmluaGVyaXQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZC1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkQnlDbGljay1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVYgLmxhYmVsX19saW5rLWR6YmQ3bHlWe3BvaW50ZXItZXZlbnRzOmF1dG99QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5sYWJlbC1kemJkN2x5Vjpob3ZlciAubGFiZWxfX2xpbmstZHpiZDdseVZ7cG9pbnRlci1ldmVudHM6YXV0b319"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.498Z","timestamp":1785154590498,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32387.47ace83c61a884341cd6.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-205c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f706716edc8e89b077279faf3e7b4954\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":132552,"size_decoded":45610,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-27T14:17:30.792424Z","times_seen":2594,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMzIzODddLHs1MzIzODcoZSxuLHQpe3ZhciByPXQoNzc5NDc0KSxsPXQoMTgyNjE0KTtmdW5jdGlvbiBhKGUpe2Zvcih2YXIgbj0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKW4rPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1t0XSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIituKyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIHU9bmV3IFNldCxvPXt9O2Z1bmN0aW9uIGkoZSxuKXtzKGUsbikscyhlKyJDYXB0dXJlIixuKX1mdW5jdGlvbiBzKGUsbil7Zm9yKG9bZV09bixlPTA7ZTxuLmxlbmd0aDtlKyspdS5hZGQobltlXSl9dmFyIGM9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksZj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LGQ9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxwPXt9LG09e307ZnVuY3Rpb24gaChlLG4sdCxyLGwsYSx1KXt0aGlzLmFjY2VwdHNCb29sZWFucz0yPT09bnx8Mz09PW58fDQ9PT1uLHRoaXMuYXR0cmlidXRlTmFtZT1yLHRoaXMuYXR0cmlidXRlTmFtZXNwYWNlPWwsdGhpcy5tdXN0VXNlUHJvcGVydHk9dCx0aGlzLnByb3BlcnR5TmFtZT1lLHRoaXMudHlwZT1uLHRoaXMuc2FuaXRpemVVUkw9YSx0aGlzLnJlbW92ZUVtcHR5U3RyaW5nPXV9dmFyIGc9e307ImNoaWxkcmVuIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIGRlZmF1bHRWYWx1ZSBkZWZhdWx0Q2hlY2tlZCBpbm5lckhUTUwgc3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZyBzdHlsZSIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMCwhMSxlLG51bGwsITEsITEpfSkpLFtbImFjY2VwdENoYXJzZXQiLCJhY2NlcHQtY2hhcnNldCJdLFsiY2xhc3NOYW1lIiwiY2xhc3MiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXV0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZVswXTtnW25dPW5ldyBoKG4sMSwhMSxlWzFdLG51bGwsITEsITEpfSkpLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDIsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiYXV0b1JldmVyc2UiLCJleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIiwiZm9jdXNhYmxlIiwicHJlc2VydmVBbHBoYSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwyLCExLGUsbnVsbCwhMSwhMSl9KSksImFsbG93RnVsbFNjcmVlbiBhc3luYyBhdXRvRm9jdXMgYXV0b1BsYXkgY29udHJvbHMgZGVmYXVsdCBkZWZlciBkaXNhYmxlZCBkaXNhYmxlUGljdHVyZUluUGljdHVyZSBkaXNhYmxlUmVtb3RlUGxheWJhY2sgZm9ybU5vVmFsaWRhdGUgaGlkZGVuIGxvb3Agbm9Nb2R1bGUgbm9WYWxpZGF0ZSBvcGVuIHBsYXlzSW5saW5lIHJlYWRPbmx5IHJlcXVpcmVkIHJldmVyc2VkIHNjb3BlZCBzZWFtbGVzcyBpdGVtU2NvcGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDMsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwzLCEwLGUsbnVsbCwhMSwhMSl9KSksWyJjYXB0dXJlIiwiZG93bmxvYWQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNCwhMSxlLG51bGwsITEsITEpfSkpLFsiY29scyIsInJvd3MiLCJzaXplIiwic3BhbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSw2LCExLGUsbnVsbCwhMSwhMSl9KSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSk7dmFyIHY9L1tcLTpdKFthLXpdKS9nO2Z1bmN0aW9uIHkoZSl7cmV0dXJuIGVbMV0udG9VcHBlckNhc2UoKX1mdW5jdGlvbiBiKGUsbix0LHIpe3ZhciBsPWcuaGFzT3duUHJvcGVydHkobik/Z1tuXTpudWxsOyhudWxsIT09bD8wIT09bC50eXBlOnJ8fCEoMjxuLmxlbmd0aCl8fCJvIiE9PW5bMF0mJiJPIiE9PW5bMF18fCJuIiE9PW5bMV0mJiJOIiE9PW5bMV0pJiYoZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbD09bnx8ZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbCE9PXQmJjA9PT10LnR5cGUpcmV0dXJuITE7c3dpdGNoKHR5cGVvZiBuKXtjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6cmV0dXJuITA7Y2FzZSJib29sZWFuIjpyZXR1cm4hciYmKG51bGwhPT10PyF0LmFjY2VwdHNCb29sZWFuczoiZGF0YS0iIT09KGU9ZS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSkpJiYiYXJpYS0iIT09ZSk7ZGVmYXVsdDpyZXR1cm4hMX19KGUsbix0LHIpKXJldHVybiEwCjtpZihyKXJldHVybiExO2lmKG51bGwhPT10KXN3aXRjaCh0LnR5cGUpe2Nhc2UgMzpyZXR1cm4hbjtjYXNlIDQ6cmV0dXJuITE9PT1uO2Nhc2UgNTpyZXR1cm4gaXNOYU4obik7Y2FzZSA2OnJldHVybiBpc05hTihuKXx8MT5ufXJldHVybiExfShuLHQsbCxyKSYmKHQ9bnVsbCkscnx8bnVsbD09PWw/ZnVuY3Rpb24oZSl7cmV0dXJuISFmLmNhbGwobSxlKXx8IWYuY2FsbChwLGUpJiYoZC50ZXN0KGUpP21bZV09ITA6KHBbZV09ITAsITEpKX0obikmJihudWxsPT09dD9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLCIiK3QpKTpsLm11c3RVc2VQcm9wZXJ0eT9lW2wucHJvcGVydHlOYW1lXT1udWxsPT09dD8zIT09bC50eXBlJiYiIjp0OihuPWwuYXR0cmlidXRlTmFtZSxyPWwuYXR0cmlidXRlTmFtZXNwYWNlLG51bGw9PT10P2UucmVtb3ZlQXR0cmlidXRlKG4pOih0PTM9PT0obD1sLnR5cGUpfHw0PT09bCYmITA9PT10PyIiOiIiK3Qscj9lLnNldEF0dHJpYnV0ZU5TKHIsbix0KTplLnNldEF0dHJpYnV0ZShuLHQpKSkpfSJhY2NlbnQtaGVpZ2h0IGFsaWdubWVudC1iYXNlbGluZSBhcmFiaWMtZm9ybSBiYXNlbGluZS1zaGlmdCBjYXAtaGVpZ2h0IGNsaXAtcGF0aCBjbGlwLXJ1bGUgY29sb3ItaW50ZXJwb2xhdGlvbiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnMgY29sb3ItcHJvZmlsZSBjb2xvci1yZW5kZXJpbmcgZG9taW5hbnQtYmFzZWxpbmUgZW5hYmxlLWJhY2tncm91bmQgZmlsbC1vcGFjaXR5IGZpbGwtcnVsZSBmbG9vZC1jb2xvciBmbG9vZC1vcGFjaXR5IGZvbnQtZmFtaWx5IGZvbnQtc2l6ZSBmb250LXNpemUtYWRqdXN0IGZvbnQtc3RyZXRjaCBmb250LXN0eWxlIGZvbnQtdmFyaWFudCBmb250LXdlaWdodCBnbHlwaC1uYW1lIGdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwgZ2x5cGgtb3JpZW50YXRpb24tdmVydGljYWwgaG9yaXotYWR2LXggaG9yaXotb3JpZ2luLXggaW1hZ2UtcmVuZGVyaW5nIGxldHRlci1zcGFjaW5nIGxpZ2h0aW5nLWNvbG9yIG1hcmtlci1lbmQgbWFya2VyLW1pZCBtYXJrZXItc3RhcnQgb3ZlcmxpbmUtcG9zaXRpb24gb3ZlcmxpbmUtdGhpY2tuZXNzIHBhaW50LW9yZGVyIHBhbm9zZS0xIHBvaW50ZXItZXZlbnRzIHJlbmRlcmluZy1pbnRlbnQgc2hhcGUtcmVuZGVyaW5nIHN0b3AtY29sb3Igc3RvcC1vcGFjaXR5IHN0cmlrZXRocm91Z2gtcG9zaXRpb24gc3RyaWtldGhyb3VnaC10aGlja25lc3Mgc3Ryb2tlLWRhc2hhcnJheSBzdHJva2UtZGFzaG9mZnNldCBzdHJva2UtbGluZWNhcCBzdHJva2UtbGluZWpvaW4gc3Ryb2tlLW1pdGVybGltaXQgc3Ryb2tlLW9wYWNpdHkgc3Ryb2tlLXdpZHRoIHRleHQtYW5jaG9yIHRleHQtZGVjb3JhdGlvbiB0ZXh0LXJlbmRlcmluZyB1bmRlcmxpbmUtcG9zaXRpb24gdW5kZXJsaW5lLXRoaWNrbmVzcyB1bmljb2RlLWJpZGkgdW5pY29kZS1yYW5nZSB1bml0cy1wZXItZW0gdi1hbHBoYWJldGljIHYtaGFuZ2luZyB2LWlkZW9ncmFwaGljIHYtbWF0aGVtYXRpY2FsIHZlY3Rvci1lZmZlY3QgdmVydC1hZHYteSB2ZXJ0LW9yaWdpbi14IHZlcnQtb3JpZ2luLXkgd29yZC1zcGFjaW5nIHdyaXRpbmctbW9kZSB4bWxuczp4bGluayB4LWhlaWdodCIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2Uodix5KTtnW25dPW5ldyBoKG4sMSwhMSxlLG51bGwsITEsITEpfSkpLCJ4bGluazphY3R1YXRlIHhsaW5rOmFyY3JvbGUgeGxpbms6cm9sZSB4bGluazpzaG93IHhsaW5rOnRpdGxlIHhsaW5rOnR5cGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHYseSk7Z1tuXT1uZXcgaChuLDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITEsITEpfSkpLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPWUucmVwbGFjZSh2LHkpO2dbbl09bmV3IGgobiwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsITEsITEpfSkpLFsidGFiSW5kZXgiLCJjcm9zc09yaWdpbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pKSxnLnhsaW5rSHJlZj1uZXcgaCgieGxpbmtIcmVmIiwxLCExLCJ4bGluazpocmVmIiwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITAsITEpLFsic3JjIiwiaHJlZiIsImFjdGlvbiIsImZvcm1BY3Rpb24iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMCwhMCl9KSk7dmFyIGs9ci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCx3PVN5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKSxTPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLHg9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxFPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksQz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxOPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxfPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksUD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLFQ9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEw9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLE09U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIiksU3ltYm9sLmZvcigicmVhY3QuZGVidWdfdHJhY2VfbW9kZSIpO3ZhciBGPVN5bWJvbC5mb3IoInJlYWN0Lm9mZnNjcmVlbiIpO1N5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIik7dmFyIFI9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEQoZSl7CnJldHVybiBudWxsPT09ZXx8Im9iamVjdCIhPXR5cGVvZiBlP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKGU9UiYmZVtSXXx8ZVsiQEBpdGVyYXRvciJdKT9lOm51bGx9dmFyIEksTz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIFUoZSl7aWYodm9pZCAwPT09SSl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgbj1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7ST1uJiZuWzFdfHwiIn1yZXR1cm4iXG4iK0krZX12YXIgVj0hMTtmdW5jdGlvbiBBKGUsbil7aWYoIWV8fFYpcmV0dXJuIiI7Vj0hMDt2YXIgdD1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e2lmKG4paWYobj1mdW5jdGlvbigpe3Rocm93IEVycm9yKCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLnByb3RvdHlwZSwicHJvcHMiLHtzZXQ6ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfX0pLCJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5jb25zdHJ1Y3Qpe3RyeXtSZWZsZWN0LmNvbnN0cnVjdChuLFtdKX1jYXRjaChlKXt2YXIgcj1lfVJlZmxlY3QuY29uc3RydWN0KGUsW10sbil9ZWxzZXt0cnl7bi5jYWxsKCl9Y2F0Y2goZSl7cj1lfWUuY2FsbChuLnByb3RvdHlwZSl9ZWxzZXt0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXtyPWV9ZSgpfX1jYXRjaChuKXtpZihuJiZyJiYic3RyaW5nIj09dHlwZW9mIG4uc3RhY2spe2Zvcih2YXIgbD1uLnN0YWNrLnNwbGl0KCJcbiIpLGE9ci5zdGFjay5zcGxpdCgiXG4iKSx1PWwubGVuZ3RoLTEsbz1hLmxlbmd0aC0xOzE8PXUmJjA8PW8mJmxbdV0hPT1hW29dOylvLS07Zm9yKDsxPD11JiYwPD1vO3UtLSxvLS0paWYobFt1XSE9PWFbb10pe2lmKDEhPT11fHwxIT09bylkb3tpZih1LS0sMD4tLW98fGxbdV0hPT1hW29dKXt2YXIgaT0iXG4iK2xbdV0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIik7cmV0dXJuIGUuZGlzcGxheU5hbWUmJmkuaW5jbHVkZXMoIjxhbm9ueW1vdXM+IikmJihpPWkucmVwbGFjZSgiPGFub255bW91cz4iLGUuZGlzcGxheU5hbWUpKSxpfX13aGlsZSgxPD11JiYwPD1vKTticmVha319fWZpbmFsbHl7Vj0hMSxFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT10fXJldHVybihlPWU/ZS5kaXNwbGF5TmFtZXx8ZS5uYW1lOiIiKT9VKGUpOiIifWZ1bmN0aW9uIEIoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDU6cmV0dXJuIFUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBVKCJMYXp5Iik7Y2FzZSAxMzpyZXR1cm4gVSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBVKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9QShlLnR5cGUsITEpO2Nhc2UgMTE6cmV0dXJuIGU9QShlLnR5cGUucmVuZGVyLCExKTtjYXNlIDE6cmV0dXJuIGU9QShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fWZ1bmN0aW9uIFcoZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTtzd2l0Y2goZSl7Y2FzZSB4OnJldHVybiJGcmFnbWVudCI7Y2FzZSBTOnJldHVybiJQb3J0YWwiO2Nhc2UgQzpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgRTpyZXR1cm4iU3RyaWN0TW9kZSI7Y2FzZSBQOnJldHVybiJTdXNwZW5zZSI7Y2FzZSBUOnJldHVybiJTdXNwZW5zZUxpc3QifWlmKCJvYmplY3QiPT10eXBlb2YgZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBOOnJldHVybihlLmRpc3BsYXlOYW1lfHwiQ29udGV4dCIpKyIuQ29uc3VtZXIiO2Nhc2UgejpyZXR1cm4oZS5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIF86dmFyIG49ZS5yZW5kZXI7cmV0dXJuKGU9ZS5kaXNwbGF5TmFtZSl8fChlPSIiIT09KGU9bi5kaXNwbGF5TmFtZXx8bi5uYW1lfHwiIik/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpLGU7Y2FzZSBMOnJldHVybiBudWxsIT09KG49ZS5kaXNwbGF5TmFtZXx8bnVsbCk/bjpXKGUudHlwZSl8fCJNZW1vIjtjYXNlIE06bj1lLl9wYXlsb2FkLGU9ZS5faW5pdDt0cnl7cmV0dXJuIFcoZShuKSl9Y2F0Y2goZSl7fX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBIKGUpe3ZhciBuPWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKG4uZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4obi5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9bi5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLG4uZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gbjtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIFcobik7Y2FzZSA4OnJldHVybiBuPT09RT8iU3RyaWN0TW9kZSI6Ik1vZGUiO2Nhc2UgMjI6cmV0dXJuIk9mZnNjcmVlbiI7Y2FzZSAxMjpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgMjE6cmV0dXJuIlNjb3BlIjtjYXNlIDEzOnJldHVybiJTdXNwZW5zZSI7Y2FzZSAxOTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIDI1OnJldHVybiJUcmFjaW5nTWFya2VyIjtjYXNlIDE6Y2FzZSAwOmNhc2UgMTc6Y2FzZSAyOmNhc2UgMTQ6Y2FzZSAxNTppZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm4gbi5kaXNwbGF5TmFtZXx8bi5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgbilyZXR1cm4gbn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBRKGUpe3N3aXRjaCh0eXBlb2YgZSl7Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gaihlKXt2YXIgbj1lLnR5cGUKO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW58fCJyYWRpbyI9PT1uKX1mdW5jdGlvbiAkKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgbj1qKGUpPyJjaGVja2VkIjoidmFsdWUiLHQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLmNvbnN0cnVjdG9yLnByb3RvdHlwZSxuKSxyPSIiK2Vbbl07aWYoIWUuaGFzT3duUHJvcGVydHkobikmJnZvaWQgMCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuc2V0KXt2YXIgbD10LmdldCxhPXQuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe3I9IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOnQuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiByfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtyPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW25dfX19fShlKSl9ZnVuY3Rpb24gcShlKXtpZighZSlyZXR1cm4hMTt2YXIgbj1lLl92YWx1ZVRyYWNrZXI7aWYoIW4pcmV0dXJuITA7dmFyIHQ9bi5nZXRWYWx1ZSgpLHI9IiI7cmV0dXJuIGUmJihyPWooZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09dCYmKG4uc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIEsoZSl7aWYodm9pZCAwPT09KGU9ZXx8KCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQ/ZG9jdW1lbnQ6dm9pZCAwKSkpcmV0dXJuIG51bGw7dHJ5e3JldHVybiBlLmFjdGl2ZUVsZW1lbnR8fGUuYm9keX1jYXRjaChuKXtyZXR1cm4gZS5ib2R5fX1mdW5jdGlvbiBZKGUsbil7dmFyIHQ9bi5jaGVja2VkO3JldHVybiBPKHt9LG4se2RlZmF1bHRDaGVja2VkOnZvaWQgMCxkZWZhdWx0VmFsdWU6dm9pZCAwLHZhbHVlOnZvaWQgMCxjaGVja2VkOm51bGwhPXQ/dDplLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWR9KX1mdW5jdGlvbiBYKGUsbil7dmFyIHQ9bnVsbD09bi5kZWZhdWx0VmFsdWU/IiI6bi5kZWZhdWx0VmFsdWUscj1udWxsIT1uLmNoZWNrZWQ/bi5jaGVja2VkOm4uZGVmYXVsdENoZWNrZWQ7dD1RKG51bGwhPW4udmFsdWU/bi52YWx1ZTp0KSxlLl93cmFwcGVyU3RhdGU9e2luaXRpYWxDaGVja2VkOnIsaW5pdGlhbFZhbHVlOnQsY29udHJvbGxlZDoiY2hlY2tib3giPT09bi50eXBlfHwicmFkaW8iPT09bi50eXBlP251bGwhPW4uY2hlY2tlZDpudWxsIT1uLnZhbHVlfX1mdW5jdGlvbiBHKGUsbil7bnVsbCE9KG49bi5jaGVja2VkKSYmYihlLCJjaGVja2VkIixuLCExKX1mdW5jdGlvbiBaKGUsbil7RyhlLG4pO3ZhciB0PVEobi52YWx1ZSkscj1uLnR5cGU7aWYobnVsbCE9dCkibnVtYmVyIj09PXI/KDA9PT10JiYiIj09PWUudmFsdWV8fGUudmFsdWUhPXQpJiYoZS52YWx1ZT0iIit0KTplLnZhbHVlIT09IiIrdCYmKGUudmFsdWU9IiIrdCk7ZWxzZSBpZigic3VibWl0Ij09PXJ8fCJyZXNldCI9PT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpO24uaGFzT3duUHJvcGVydHkoInZhbHVlIik/ZWUoZSxuLnR5cGUsdCk6bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikmJmVlKGUsbi50eXBlLFEobi5kZWZhdWx0VmFsdWUpKSxudWxsPT1uLmNoZWNrZWQmJm51bGwhPW4uZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhbi5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gSihlLG4sdCl7aWYobi5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKXx8bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikpe3ZhciByPW4udHlwZTtpZighKCJzdWJtaXQiIT09ciYmInJlc2V0IiE9PXJ8fHZvaWQgMCE9PW4udmFsdWUmJm51bGwhPT1uLnZhbHVlKSlyZXR1cm47bj0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlLHR8fG49PT1lLnZhbHVlfHwoZS52YWx1ZT1uKSxlLmRlZmF1bHRWYWx1ZT1ufSIiIT09KHQ9ZS5uYW1lKSYmKGUubmFtZT0iIiksZS5kZWZhdWx0Q2hlY2tlZD0hIWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZCwiIiE9PXQmJihlLm5hbWU9dCl9ZnVuY3Rpb24gZWUoZSxuLHQpeyJudW1iZXIiPT09biYmSyhlLm93bmVyRG9jdW1lbnQpPT09ZXx8KG51bGw9PXQ/ZS5kZWZhdWx0VmFsdWU9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZTplLmRlZmF1bHRWYWx1ZSE9PSIiK3QmJihlLmRlZmF1bHRWYWx1ZT0iIit0KSl9dmFyIG5lPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gdGUoZSxuLHQscil7aWYoZT1lLm9wdGlvbnMsbil7bj17fTtmb3IodmFyIGw9MDtsPHQubGVuZ3RoO2wrKyluWyIkIit0W2xdXT0hMDtmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKWw9bi5oYXNPd25Qcm9wZXJ0eSgiJCIrZVt0XS52YWx1ZSksZVt0XS5zZWxlY3RlZCE9PWwmJihlW3RdLnNlbGVjdGVkPWwpLGwmJnImJihlW3RdLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IodD0iIitRKHQpLG49bnVsbCxsPTA7bDxlLmxlbmd0aDtsKyspe2lmKGVbbF0udmFsdWU9PT10KXJldHVybiBlW2xdLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbbF0uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PW58fGVbbF0uZGlzYWJsZWR8fChuPWVbbF0pfW51bGwhPT1uJiYobi5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIHJlKGUsbil7aWYobnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihhKDkxKSk7cmV0dXJuIE8oe30sbix7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIGxlKGUsbil7dmFyIHQ9bi52YWx1ZTtpZihudWxsPT10KXtpZih0PW4uY2hpbGRyZW4sbj1uLmRlZmF1bHRWYWx1ZSxudWxsIT10KXtpZihudWxsIT1uKXRocm93IEVycm9yKGEoOTIpKTtpZihuZSh0KSl7CmlmKDE8dC5sZW5ndGgpdGhyb3cgRXJyb3IoYSg5MykpO3Q9dFswXX1uPXR9bnVsbD09biYmKG49IiIpLHQ9bn1lLl93cmFwcGVyU3RhdGU9e2luaXRpYWxWYWx1ZTpRKHQpfX1mdW5jdGlvbiBhZShlLG4pe3ZhciB0PVEobi52YWx1ZSkscj1RKG4uZGVmYXVsdFZhbHVlKTtudWxsIT10JiYoKHQ9IiIrdCkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uLmRlZmF1bHRWYWx1ZSYmZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCkpLG51bGwhPXImJihlLmRlZmF1bHRWYWx1ZT0iIityKX1mdW5jdGlvbiB1ZShlKXt2YXIgbj1lLnRleHRDb250ZW50O249PT1lLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlJiYiIiE9PW4mJm51bGwhPT1uJiYoZS52YWx1ZT1uKX1mdW5jdGlvbiBvZShlKXtzd2l0Y2goZSl7Y2FzZSJzdmciOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI7Y2FzZSJtYXRoIjpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI7ZGVmYXVsdDpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCJ9fWZ1bmN0aW9uIGllKGUsbil7cmV0dXJuIG51bGw9PWV8fCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/b2Uobik6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWUmJiJmb3JlaWduT2JqZWN0Ij09PW4/Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiOmV9dmFyIHNlLGNlLGZlPShjZT1mdW5jdGlvbihlLG4pe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPW47ZWxzZXtmb3IoKHNlPXNlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrbi52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+IixuPXNlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDtuLmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQobi5maXJzdENoaWxkKX19LCJ1bmRlZmluZWQiIT10eXBlb2YgTVNBcHAmJk1TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uP2Z1bmN0aW9uKGUsbix0LHIpe01TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uKChmdW5jdGlvbigpe3JldHVybiBjZShlLG4pfSkpfTpjZSk7ZnVuY3Rpb24gZGUoZSxuKXtpZihuKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7aWYodCYmdD09PWUubGFzdENoaWxkJiYzPT09dC5ub2RlVHlwZSlyZXR1cm4gdm9pZCh0Lm5vZGVWYWx1ZT1uKX1lLnRleHRDb250ZW50PW59dmFyIHBlPXthbmltYXRpb25JdGVyYXRpb25Db3VudDohMCxhc3BlY3RSYXRpbzohMCxib3JkZXJJbWFnZU91dHNldDohMCxib3JkZXJJbWFnZVNsaWNlOiEwLGJvcmRlckltYWdlV2lkdGg6ITAsYm94RmxleDohMCxib3hGbGV4R3JvdXA6ITAsYm94T3JkaW5hbEdyb3VwOiEwLGNvbHVtbkNvdW50OiEwLGNvbHVtbnM6ITAsZmxleDohMCxmbGV4R3JvdzohMCxmbGV4UG9zaXRpdmU6ITAsZmxleFNocmluazohMCxmbGV4TmVnYXRpdmU6ITAsZmxleE9yZGVyOiEwLGdyaWRBcmVhOiEwLGdyaWRSb3c6ITAsZ3JpZFJvd0VuZDohMCxncmlkUm93U3BhbjohMCxncmlkUm93U3RhcnQ6ITAsZ3JpZENvbHVtbjohMCxncmlkQ29sdW1uRW5kOiEwLGdyaWRDb2x1bW5TcGFuOiEwLGdyaWRDb2x1bW5TdGFydDohMCxmb250V2VpZ2h0OiEwLGxpbmVDbGFtcDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx0YWJTaXplOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMCxmaWxsT3BhY2l0eTohMCxmbG9vZE9wYWNpdHk6ITAsc3RvcE9wYWNpdHk6ITAsc3Ryb2tlRGFzaGFycmF5OiEwLHN0cm9rZURhc2hvZmZzZXQ6ITAsc3Ryb2tlTWl0ZXJsaW1pdDohMCxzdHJva2VPcGFjaXR5OiEwLHN0cm9rZVdpZHRoOiEwfSxtZT1bIldlYmtpdCIsIm1zIiwiTW96IiwiTyJdO2Z1bmN0aW9uIGhlKGUsbix0KXtyZXR1cm4gbnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbnx8IiI9PT1uPyIiOnR8fCJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHBlLmhhc093blByb3BlcnR5KGUpJiZwZVtlXT8oIiIrbikudHJpbSgpOm4rInB4In1mdW5jdGlvbiBnZShlLG4pe2Zvcih2YXIgdCBpbiBlPWUuc3R5bGUsbilpZihuLmhhc093blByb3BlcnR5KHQpKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpLGw9aGUodCxuW3RdLHIpOyJmbG9hdCI9PT10JiYodD0iY3NzRmxvYXQiKSxyP2Uuc2V0UHJvcGVydHkodCxsKTplW3RdPWx9fU9iamVjdC5rZXlzKHBlKS5mb3JFYWNoKChmdW5jdGlvbihlKXttZS5mb3JFYWNoKChmdW5jdGlvbihuKXtuPW4rZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStlLnN1YnN0cmluZygxKSxwZVtuXT1wZVtlXX0pKX0pKTt2YXIgdmU9Tyh7bWVudWl0ZW06ITB9LHthcmVhOiEwLGJhc2U6ITAsYnI6ITAsY29sOiEwLGVtYmVkOiEwLGhyOiEwLGltZzohMCxpbnB1dDohMCxrZXlnZW46ITAsbGluazohMCxtZXRhOiEwLHBhcmFtOiEwLHNvdXJjZTohMCx0cmFjazohMCx3YnI6ITB9KTtmdW5jdGlvbiB5ZShlLG4pe2lmKG4pe2lmKHZlW2VdJiYobnVsbCE9bi5jaGlsZHJlbnx8bnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCkpdGhyb3cgRXJyb3IoYSgxMzcsZSkpO2lmKG51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpe2lmKG51bGwhPW4uY2hpbGRyZW4pdGhyb3cgRXJyb3IoYSg2MCkpO2lmKCJvYmplY3QiIT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTHx8ISgiX19odG1sImluIG4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKGEoNjEpKX1pZihudWxsIT1uLnN0eWxlJiYib2JqZWN0IiE9dHlwZW9mIG4uc3R5bGUpdGhyb3cgRXJyb3IoYSg2MikpfX1mdW5jdGlvbiBiZShlLG4pe2lmKC0xPT09ZS5pbmRleE9mKCItIikpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLmlzO3N3aXRjaChlKXtjYXNlImFubm90YXRpb24teG1sIjpjYXNlImNvbG9yLXByb2ZpbGUiOmNhc2UiZm9udC1mYWNlIjpjYXNlImZvbnQtZmFjZS1zcmMiOgpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIga2U9bnVsbDtmdW5jdGlvbiB3ZShlKXtyZXR1cm4oZT1lLnRhcmdldHx8ZS5zcmNFbGVtZW50fHx3aW5kb3cpLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50JiYoZT1lLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50KSwzPT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgU2U9bnVsbCx4ZT1udWxsLEVlPW51bGw7ZnVuY3Rpb24gQ2UoZSl7aWYoZT1ibChlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFNlKXRocm93IEVycm9yKGEoMjgwKSk7dmFyIG49ZS5zdGF0ZU5vZGU7biYmKG49d2wobiksU2UoZS5zdGF0ZU5vZGUsZS50eXBlLG4pKX19ZnVuY3Rpb24gemUoZSl7eGU/RWU/RWUucHVzaChlKTpFZT1bZV06eGU9ZX1mdW5jdGlvbiBOZSgpe2lmKHhlKXt2YXIgZT14ZSxuPUVlO2lmKEVlPXhlPW51bGwsQ2UoZSksbilmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKUNlKG5bZV0pfX1mdW5jdGlvbiBfZShlLG4pe3JldHVybiBlKG4pfWZ1bmN0aW9uIFBlKCl7fXZhciBUZT0hMTtmdW5jdGlvbiBMZShlLG4sdCl7aWYoVGUpcmV0dXJuIGUobix0KTtUZT0hMDt0cnl7cmV0dXJuIF9lKGUsbix0KX1maW5hbGx5e1RlPSExLChudWxsIT09eGV8fG51bGwhPT1FZSkmJihQZSgpLE5lKCkpfX1mdW5jdGlvbiBNZShlLG4pe3ZhciB0PWUuc3RhdGVOb2RlO2lmKG51bGw9PT10KXJldHVybiBudWxsO3ZhciByPXdsKHQpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3Q9cltuXTtlOnN3aXRjaChuKXtjYXNlIm9uQ2xpY2siOmNhc2Uib25DbGlja0NhcHR1cmUiOmNhc2Uib25Eb3VibGVDbGljayI6Y2FzZSJvbkRvdWJsZUNsaWNrQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRG93biI6Y2FzZSJvbk1vdXNlRG93bkNhcHR1cmUiOmNhc2Uib25Nb3VzZU1vdmUiOmNhc2Uib25Nb3VzZU1vdmVDYXB0dXJlIjpjYXNlIm9uTW91c2VVcCI6Y2FzZSJvbk1vdXNlVXBDYXB0dXJlIjpjYXNlIm9uTW91c2VFbnRlciI6KHI9IXIuZGlzYWJsZWQpfHwocj0hKCJidXR0b24iPT09KGU9ZS50eXBlKXx8ImlucHV0Ij09PWV8fCJzZWxlY3QiPT09ZXx8InRleHRhcmVhIj09PWUpKSxlPSFyO2JyZWFrIGU7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYodCYmImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IoYSgyMzEsbix0eXBlb2YgdCkpO3JldHVybiB0fXZhciBGZT0hMTtpZihjKXRyeXt2YXIgUmU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KFJlLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7RmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLFJlLFJlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsUmUsUmUpfWNhdGNoKGNlKXtGZT0hMX1mdW5jdGlvbiBEZShlLG4sdCxyLGwsYSx1LG8saSl7dmFyIHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXtuLmFwcGx5KHQscyl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX12YXIgSWU9ITEsT2U9bnVsbCxVZT0hMSxWZT1udWxsLEFlPXtvbkVycm9yOmZ1bmN0aW9uKGUpe0llPSEwLE9lPWV9fTtmdW5jdGlvbiBCZShlLG4sdCxyLGwsYSx1LG8saSl7SWU9ITEsT2U9bnVsbCxEZS5hcHBseShBZSxhcmd1bWVudHMpfWZ1bmN0aW9uIFdlKGUpe3ZhciBuPWUsdD1lO2lmKGUuYWx0ZXJuYXRlKWZvcig7bi5yZXR1cm47KW49bi5yZXR1cm47ZWxzZXtlPW47ZG97ISEoNDA5OCYobj1lKS5mbGFncykmJih0PW4ucmV0dXJuKSxlPW4ucmV0dXJufXdoaWxlKGUpfXJldHVybiAzPT09bi50YWc/dDpudWxsfWZ1bmN0aW9uIEhlKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09biYmKG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihuPWUubWVtb2l6ZWRTdGF0ZSkpLG51bGwhPT1uKXJldHVybiBuLmRlaHlkcmF0ZWR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gUWUoZSl7aWYoV2UoZSkhPT1lKXRocm93IEVycm9yKGEoMTg4KSl9ZnVuY3Rpb24gamUoZSl7cmV0dXJuIG51bGwhPT0oZT1mdW5jdGlvbihlKXt2YXIgbj1lLmFsdGVybmF0ZTtpZighbil7aWYobnVsbD09PShuPVdlKGUpKSl0aHJvdyBFcnJvcihhKDE4OCkpO3JldHVybiBuIT09ZT9udWxsOmV9Zm9yKHZhciB0PWUscj1uOzspe3ZhciBsPXQucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciB1PWwuYWx0ZXJuYXRlO2lmKG51bGw9PT11KXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXt0PXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PXUuY2hpbGQpe2Zvcih1PWwuY2hpbGQ7dTspe2lmKHU9PT10KXJldHVybiBRZShsKSxlO2lmKHU9PT1yKXJldHVybiBRZShsKSxuO3U9dS5zaWJsaW5nfXRocm93IEVycm9yKGEoMTg4KSl9aWYodC5yZXR1cm4hPT1yLnJldHVybil0PWwscj11O2Vsc2V7Zm9yKHZhciBvPSExLGk9bC5jaGlsZDtpOyl7aWYoaT09PXQpe289ITAsdD1sLHI9dTticmVha31pZihpPT09cil7bz0hMCxyPWwsdD11O2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXtmb3IoaT11LmNoaWxkO2k7KXtpZihpPT09dCl7bz0hMCx0PXUscj1sO2JyZWFrfWlmKGk9PT1yKXtvPSEwLHI9dSx0PWw7YnJlYWt9aT1pLnNpYmxpbmd9aWYoIW8pdGhyb3cgRXJyb3IoYSgxODkpKX19aWYodC5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKGEoMTkwKSl9aWYoMyE9PXQudGFnKXRocm93IEVycm9yKGEoMTg4KSk7cmV0dXJuIHQuc3RhdGVOb2RlLmN1cnJlbnQ9PT10P2U6bn0oZSkpPyRlKGUpOm51bGx9ZnVuY3Rpb24gJGUoZSl7aWYoNT09PWUudGFnfHw2PT09ZS50YWcpcmV0dXJuIGU7Zm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe3ZhciBuPSRlKGUpO2lmKG51bGwhPT1uKXJldHVybiBuO2U9ZS5zaWJsaW5nfXJldHVybiBudWxsfQp2YXIgcWU9bC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrLEtlPWwudW5zdGFibGVfY2FuY2VsQ2FsbGJhY2ssWWU9bC51bnN0YWJsZV9zaG91bGRZaWVsZCxYZT1sLnVuc3RhYmxlX3JlcXVlc3RQYWludCxHZT1sLnVuc3RhYmxlX25vdyxaZT1sLnVuc3RhYmxlX2dldEN1cnJlbnRQcmlvcml0eUxldmVsLEplPWwudW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHksZW49bC51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eSxubj1sLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LHRuPWwudW5zdGFibGVfTG93UHJpb3JpdHkscm49bC51bnN0YWJsZV9JZGxlUHJpb3JpdHksbG49bnVsbCxhbj1udWxsO3ZhciB1bj1NYXRoLmNsejMyP01hdGguY2x6MzI6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+Pj49MCwwPT09ZT8zMjozMS0ob24oZSkvc258MCl8MH0sb249TWF0aC5sb2csc249TWF0aC5MTjI7dmFyIGNuPTY0LGZuPTQxOTQzMDQ7ZnVuY3Rpb24gZG4oZSl7c3dpdGNoKGUmLWUpe2Nhc2UgMTpyZXR1cm4gMTtjYXNlIDI6cmV0dXJuIDI7Y2FzZSA0OnJldHVybiA0O2Nhc2UgODpyZXR1cm4gODtjYXNlIDE2OnJldHVybiAxNjtjYXNlIDMyOnJldHVybiAzMjtjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiA0MTk0MjQwJmU7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4gMTMwMDIzNDI0JmU7Y2FzZSAxMzQyMTc3Mjg6cmV0dXJuIDEzNDIxNzcyODtjYXNlIDI2ODQzNTQ1NjpyZXR1cm4gMjY4NDM1NDU2O2Nhc2UgNTM2ODcwOTEyOnJldHVybiA1MzY4NzA5MTI7Y2FzZSAxMDczNzQxODI0OnJldHVybiAxMDczNzQxODI0O2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIHBuKGUsbil7dmFyIHQ9ZS5wZW5kaW5nTGFuZXM7aWYoMD09PXQpcmV0dXJuIDA7dmFyIHI9MCxsPWUuc3VzcGVuZGVkTGFuZXMsYT1lLnBpbmdlZExhbmVzLHU9MjY4NDM1NDU1JnQ7aWYoMCE9PXUpe3ZhciBvPXUmfmw7MCE9PW8/cj1kbihvKTowIT09KGEmPXUpJiYocj1kbihhKSl9ZWxzZSAwIT09KHU9dCZ+bCk/cj1kbih1KTowIT09YSYmKHI9ZG4oYSkpO2lmKDA9PT1yKXJldHVybiAwO2lmKDAhPT1uJiZuIT09ciYmIShuJmwpJiYoKGw9ciYtcik+PShhPW4mLW4pfHwxNj09PWwmJjQxOTQyNDAmYSkpcmV0dXJuIG47aWYoNCZyJiYocnw9MTYmdCksMCE9PShuPWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyxuJj1yOzA8bjspbD0xPDwodD0zMS11bihuKSkscnw9ZVt0XSxuJj1+bDtyZXR1cm4gcn1mdW5jdGlvbiBtbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpyZXR1cm4gbisyNTA7Y2FzZSA4OmNhc2UgMTY6Y2FzZSAzMjpjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiBuKzVlMztkZWZhdWx0OnJldHVybi0xfX1mdW5jdGlvbiBobihlKXtyZXR1cm4gMCE9PShlPS0xMDczNzQxODI1JmUucGVuZGluZ0xhbmVzKT9lOjEwNzM3NDE4MjQmZT8xMDczNzQxODI0OjB9ZnVuY3Rpb24gZ24oKXt2YXIgZT1jbjtyZXR1cm4hKDQxOTQyNDAmKGNuPDw9MSkpJiYoY249NjQpLGV9ZnVuY3Rpb24gdm4oZSl7Zm9yKHZhciBuPVtdLHQ9MDszMT50O3QrKyluLnB1c2goZSk7cmV0dXJuIG59ZnVuY3Rpb24geW4oZSxuLHQpe2UucGVuZGluZ0xhbmVzfD1uLDUzNjg3MDkxMiE9PW4mJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wKSwoZT1lLmV2ZW50VGltZXMpW249MzEtdW4obildPXR9ZnVuY3Rpb24gYm4oZSxuKXt2YXIgdD1lLmVudGFuZ2xlZExhbmVzfD1uO2ZvcihlPWUuZW50YW5nbGVtZW50czt0Oyl7dmFyIHI9MzEtdW4odCksbD0xPDxyO2wmbnxlW3JdJm4mJihlW3JdfD1uKSx0Jj1+bH19dmFyIGtuPTA7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MjY4NDM1NDU1JmU/MTY6NTM2ODcwOTEyOjQ6MX12YXIgU24seG4sRW4sQ24sem4sTm49ITEsX249W10sUG49bnVsbCxUbj1udWxsLExuPW51bGwsTW49bmV3IE1hcCxGbj1uZXcgTWFwLFJuPVtdLERuPSJtb3VzZWRvd24gbW91c2V1cCB0b3VjaGNhbmNlbCB0b3VjaGVuZCB0b3VjaHN0YXJ0IGF1eGNsaWNrIGRibGNsaWNrIHBvaW50ZXJjYW5jZWwgcG9pbnRlcmRvd24gcG9pbnRlcnVwIGRyYWdlbmQgZHJhZ3N0YXJ0IGRyb3AgY29tcG9zaXRpb25lbmQgY29tcG9zaXRpb25zdGFydCBrZXlkb3duIGtleXByZXNzIGtleXVwIGlucHV0IHRleHRJbnB1dCBjb3B5IGN1dCBwYXN0ZSBjbGljayBjaGFuZ2UgY29udGV4dG1lbnUgcmVzZXQgc3VibWl0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIEluKGUsbil7c3dpdGNoKGUpe2Nhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6UG49bnVsbDticmVhaztjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnbGVhdmUiOlRuPW51bGw7YnJlYWs7Y2FzZSJtb3VzZW92ZXIiOmNhc2UibW91c2VvdXQiOkxuPW51bGw7YnJlYWs7Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVyb3V0IjpNbi5kZWxldGUobi5wb2ludGVySWQpO2JyZWFrO2Nhc2UiZ290cG9pbnRlcmNhcHR1cmUiOmNhc2UibG9zdHBvaW50ZXJjYXB0dXJlIjpGbi5kZWxldGUobi5wb2ludGVySWQpfX1mdW5jdGlvbiBPbihlLG4sdCxyLGwsYSl7cmV0dXJuIG51bGw9PT1lfHxlLm5hdGl2ZUV2ZW50IT09YT8oZT17YmxvY2tlZE9uOm4sZG9tRXZlbnROYW1lOnQsZXZlbnRTeXN0ZW1GbGFnczpyLG5hdGl2ZUV2ZW50OmEsdGFyZ2V0Q29udGFpbmVyczpbbF19LG51bGwhPT1uJiYobnVsbCE9PShuPWJsKG4pKSYmeG4obikpLAplKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLG49ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1sJiYtMT09PW4uaW5kZXhPZihsKSYmbi5wdXNoKGwpLGUpfWZ1bmN0aW9uIFVuKGUpe3ZhciBuPXlsKGUudGFyZ2V0KTtpZihudWxsIT09bil7dmFyIHQ9V2Uobik7aWYobnVsbCE9PXQpaWYoMTM9PT0obj10LnRhZykpe2lmKG51bGwhPT0obj1IZSh0KSkpcmV0dXJuIGUuYmxvY2tlZE9uPW4sdm9pZCB6bihlLnByaW9yaXR5LChmdW5jdGlvbigpe0VuKHQpfSkpfWVsc2UgaWYoMz09PW4mJnQuc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpcmV0dXJuIHZvaWQoZS5ibG9ja2VkT249Mz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbCl9ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBWbihlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciBuPWUudGFyZ2V0Q29udGFpbmVyczswPG4ubGVuZ3RoOyl7dmFyIHQ9WG4oZS5kb21FdmVudE5hbWUsZS5ldmVudFN5c3RlbUZsYWdzLG5bMF0sZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PXQpcmV0dXJuIG51bGwhPT0obj1ibCh0KSkmJnhuKG4pLGUuYmxvY2tlZE9uPXQsITE7dmFyIHI9bmV3KHQ9ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3IodC50eXBlLHQpO2tlPXIsdC50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSxrZT1udWxsLG4uc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBBbihlLG4sdCl7Vm4oZSkmJnQuZGVsZXRlKG4pfWZ1bmN0aW9uIEJuKCl7Tm49ITEsbnVsbCE9PVBuJiZWbihQbikmJihQbj1udWxsKSxudWxsIT09VG4mJlZuKFRuKSYmKFRuPW51bGwpLG51bGwhPT1MbiYmVm4oTG4pJiYoTG49bnVsbCksTW4uZm9yRWFjaChBbiksRm4uZm9yRWFjaChBbil9ZnVuY3Rpb24gV24oZSxuKXtlLmJsb2NrZWRPbj09PW4mJihlLmJsb2NrZWRPbj1udWxsLE5ufHwoTm49ITAsbC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGwudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksQm4pKSl9ZnVuY3Rpb24gSG4oZSl7ZnVuY3Rpb24gbihuKXtyZXR1cm4gV24obixlKX1pZigwPF9uLmxlbmd0aCl7V24oX25bMF0sZSk7Zm9yKHZhciB0PTE7dDxfbi5sZW5ndGg7dCsrKXt2YXIgcj1fblt0XTtyLmJsb2NrZWRPbj09PWUmJihyLmJsb2NrZWRPbj1udWxsKX19Zm9yKG51bGwhPT1QbiYmV24oUG4sZSksbnVsbCE9PVRuJiZXbihUbixlKSxudWxsIT09TG4mJlduKExuLGUpLE1uLmZvckVhY2gobiksRm4uZm9yRWFjaChuKSx0PTA7dDxSbi5sZW5ndGg7dCsrKShyPVJuW3RdKS5ibG9ja2VkT249PT1lJiYoci5ibG9ja2VkT249bnVsbCk7Zm9yKDswPFJuLmxlbmd0aCYmbnVsbD09PSh0PVJuWzBdKS5ibG9ja2VkT247KVVuKHQpLG51bGw9PT10LmJsb2NrZWRPbiYmUm4uc2hpZnQoKX12YXIgUW49ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxqbj0hMDtmdW5jdGlvbiAkbihlLG4sdCxyKXt2YXIgbD1rbixhPVFuLnRyYW5zaXRpb247UW4udHJhbnNpdGlvbj1udWxsO3RyeXtrbj0xLEtuKGUsbix0LHIpfWZpbmFsbHl7a249bCxRbi50cmFuc2l0aW9uPWF9fWZ1bmN0aW9uIHFuKGUsbix0LHIpe3ZhciBsPWtuLGE9UW4udHJhbnNpdGlvbjtRbi50cmFuc2l0aW9uPW51bGw7dHJ5e2tuPTQsS24oZSxuLHQscil9ZmluYWxseXtrbj1sLFFuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24gS24oZSxuLHQscil7aWYoam4pe3ZhciBsPVhuKGUsbix0LHIpO2lmKG51bGw9PT1sKVFyKGUsbixyLFluLHQpLEluKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLG4sdCxyLGwpe3N3aXRjaChuKXtjYXNlImZvY3VzaW4iOnJldHVybiBQbj1PbihQbixlLG4sdCxyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gVG49T24oVG4sZSxuLHQscixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIExuPU9uKExuLGUsbix0LHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIE1uLnNldChhLE9uKE1uLmdldChhKXx8bnVsbCxlLG4sdCxyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxGbi5zZXQoYSxPbihGbi5nZXQoYSl8fG51bGwsZSxuLHQscixsKSksITB9cmV0dXJuITF9KGwsZSxuLHQscikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKEluKGUsciksNCZuJiYtMTxEbi5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9YmwobCk7aWYobnVsbCE9PWEmJlNuKGEpLG51bGw9PT0oYT1YbihlLG4sdCxyKSkmJlFyKGUsbixyLFluLHQpLGE9PT1sKWJyZWFrO2w9YX1udWxsIT09bCYmci5zdG9wUHJvcGFnYXRpb24oKX1lbHNlIFFyKGUsbixyLG51bGwsdCl9fXZhciBZbj1udWxsO2Z1bmN0aW9uIFhuKGUsbix0LHIpe2lmKFluPW51bGwsbnVsbCE9PShlPXlsKGU9d2UocikpKSlpZihudWxsPT09KG49V2UoZSkpKWU9bnVsbDtlbHNlIGlmKDEzPT09KHQ9bi50YWcpKXtpZihudWxsIT09KGU9SGUobikpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT10KXtpZihuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIG4hPT1lJiYoZT1udWxsKTtyZXR1cm4gWW49ZSxudWxsfWZ1bmN0aW9uIEduKGUpe3N3aXRjaChlKXtjYXNlImNhbmNlbCI6Y2FzZSJjbGljayI6Y2FzZSJjbG9zZSI6Y2FzZSJjb250ZXh0bWVudSI6Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdzdGFydCI6Y2FzZSJkcm9wIjpjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmNhc2UiaW5wdXQiOmNhc2UiaW52YWxpZCI6Y2FzZSJrZXlkb3duIjpjYXNlImtleXByZXNzIjpjYXNlImtleXVwIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZXVwIjpjYXNlInBhc3RlIjpjYXNlInBhdXNlIjpjYXNlInBsYXkiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVydXAiOmNhc2UicmF0ZWNoYW5nZSI6CmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goWmUoKSl7Y2FzZSBKZTpyZXR1cm4gMTtjYXNlIGVuOnJldHVybiA0O2Nhc2Ugbm46Y2FzZSB0bjpyZXR1cm4gMTY7Y2FzZSBybjpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgWm49bnVsbCxKbj1udWxsLGV0PW51bGw7ZnVuY3Rpb24gbnQoKXtpZihldClyZXR1cm4gZXQ7dmFyIGUsbix0PUpuLHI9dC5sZW5ndGgsbD0idmFsdWUiaW4gWm4/Wm4udmFsdWU6Wm4udGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmdFtlXT09PWxbZV07ZSsrKTt2YXIgdT1yLWU7Zm9yKG49MTtuPD11JiZ0W3Itbl09PT1sW2Etbl07bisrKTtyZXR1cm4gZXQ9bC5zbGljZShlLDE8bj8xLW46dm9pZCAwKX1mdW5jdGlvbiB0dChlKXt2YXIgbj1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PW4mJihlPTEzKTplPW4sMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gcnQoKXtyZXR1cm4hMH1mdW5jdGlvbiBsdCgpe3JldHVybiExfWZ1bmN0aW9uIGF0KGUpe2Z1bmN0aW9uIG4obix0LHIsbCxhKXtmb3IodmFyIHUgaW4gdGhpcy5fcmVhY3ROYW1lPW4sdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eSh1KSYmKG49ZVt1XSx0aGlzW3VdPW4/bihsKTpsW3VdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT9ydDpsdCx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWx0LHRoaXN9cmV0dXJuIE8obi5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1ydCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1ydCl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpydH0pLG59dmFyIHV0LG90LGl0LHN0PXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LGN0PWF0KHN0KSxmdD1PKHt9LHN0LHt2aWV3OjAsZGV0YWlsOjB9KSxkdD1hdChmdCkscHQ9Tyh7fSxmdCx7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT1pdCYmKGl0JiYibW91c2Vtb3ZlIj09PWUudHlwZT8odXQ9ZS5zY3JlZW5YLWl0LnNjcmVlblgsb3Q9ZS5zY3JlZW5ZLWl0LnNjcmVlblkpOm90PXV0PTAsaXQ9ZSksdXQpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOm90fX0pLG10PWF0KHB0KSxodD1hdChPKHt9LHB0LHtkYXRhVHJhbnNmZXI6MH0pKSxndD1hdChPKHt9LGZ0LHtyZWxhdGVkVGFyZ2V0OjB9KSksdnQ9YXQoTyh7fSxzdCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHl0PU8oe30sc3Qse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSksYnQ9YXQoeXQpLGt0PWF0KE8oe30sc3Qse2RhdGE6MH0pKSx3dD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLApVcDoiQXJyb3dVcCIsUmlnaHQ6IkFycm93UmlnaHQiLERvd246IkFycm93RG93biIsRGVsOiJEZWxldGUiLFdpbjoiT1MiLE1lbnU6IkNvbnRleHRNZW51IixBcHBzOiJDb250ZXh0TWVudSIsU2Nyb2xsOiJTY3JvbGxMb2NrIixNb3pQcmludGFibGVLZXk6IlVuaWRlbnRpZmllZCJ9LFN0PXs4OiJCYWNrc3BhY2UiLDk6IlRhYiIsMTI6IkNsZWFyIiwxMzoiRW50ZXIiLDE2OiJTaGlmdCIsMTc6IkNvbnRyb2wiLDE4OiJBbHQiLDE5OiJQYXVzZSIsMjA6IkNhcHNMb2NrIiwyNzoiRXNjYXBlIiwzMjoiICIsMzM6IlBhZ2VVcCIsMzQ6IlBhZ2VEb3duIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zZXJ0Iiw0NjoiRGVsZXRlIiwxMTI6IkYxIiwxMTM6IkYyIiwxMTQ6IkYzIiwxMTU6IkY0IiwxMTY6IkY1IiwxMTc6IkY2IiwxMTg6IkY3IiwxMTk6IkY4IiwxMjA6IkY5IiwxMjE6IkYxMCIsMTIyOiJGMTEiLDEyMzoiRjEyIiwxNDQ6Ik51bUxvY2siLDE0NToiU2Nyb2xsTG9jayIsMjI0OiJNZXRhIn0seHQ9e0FsdDoiYWx0S2V5IixDb250cm9sOiJjdHJsS2V5IixNZXRhOiJtZXRhS2V5IixTaGlmdDoic2hpZnRLZXkifTtmdW5jdGlvbiBFdChlKXt2YXIgbj10aGlzLm5hdGl2ZUV2ZW50O3JldHVybiBuLmdldE1vZGlmaWVyU3RhdGU/bi5nZXRNb2RpZmllclN0YXRlKGUpOiEhKGU9eHRbZV0pJiYhIW5bZV19ZnVuY3Rpb24gQ3QoKXtyZXR1cm4gRXR9dmFyIHp0PU8oe30sZnQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIG49d3RbZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PW4pcmV0dXJuIG59cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPXR0KGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1N0W2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSxOdD1hdCh6dCksX3Q9YXQoTyh7fSxwdCx7cG9pbnRlcklkOjAsd2lkdGg6MCxoZWlnaHQ6MCxwcmVzc3VyZTowLHRhbmdlbnRpYWxQcmVzc3VyZTowLHRpbHRYOjAsdGlsdFk6MCx0d2lzdDowLHBvaW50ZXJUeXBlOjAsaXNQcmltYXJ5OjB9KSksUHQ9YXQoTyh7fSxmdCx7dG91Y2hlczowLHRhcmdldFRvdWNoZXM6MCxjaGFuZ2VkVG91Y2hlczowLGFsdEtleTowLG1ldGFLZXk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxnZXRNb2RpZmllclN0YXRlOkN0fSkpLFR0PWF0KE8oe30sc3Qse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLEx0PU8oe30scHQse2RlbHRhWDpmdW5jdGlvbihlKXtyZXR1cm4iZGVsdGFYImluIGU/ZS5kZWx0YVg6IndoZWVsRGVsdGFYImluIGU/LWUud2hlZWxEZWx0YVg6MH0sZGVsdGFZOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVkiaW4gZT9lLmRlbHRhWToid2hlZWxEZWx0YVkiaW4gZT8tZS53aGVlbERlbHRhWToid2hlZWxEZWx0YSJpbiBlPy1lLndoZWVsRGVsdGE6MH0sZGVsdGFaOjAsZGVsdGFNb2RlOjB9KSxNdD1hdChMdCksRnQ9WzksMTMsMjcsMzJdLFJ0PWMmJiJDb21wb3NpdGlvbkV2ZW50ImluIHdpbmRvdyxEdD1udWxsO2MmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJihEdD1kb2N1bWVudC5kb2N1bWVudE1vZGUpO3ZhciBJdD1jJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIUR0LE90PWMmJighUnR8fER0JiY4PER0JiYxMT49RHQpLFV0PVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLFZ0PSExO2Z1bmN0aW9uIEF0KGUsbil7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09RnQuaW5kZXhPZihuLmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PW4ua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPWUuZGV0YWlsKSYmImRhdGEiaW4gZT9lLmRhdGE6bnVsbH12YXIgV3Q9ITE7dmFyIEh0PXtjb2xvcjohMCxkYXRlOiEwLGRhdGV0aW1lOiEwLCJkYXRldGltZS1sb2NhbCI6ITAsZW1haWw6ITAsbW9udGg6ITAsbnVtYmVyOiEwLHBhc3N3b3JkOiEwLHJhbmdlOiEwLHNlYXJjaDohMCx0ZWw6ITAsdGV4dDohMCx0aW1lOiEwLHVybDohMCx3ZWVrOiEwfTtmdW5jdGlvbiBRdChlKXt2YXIgbj1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PW4/ISFIdFtlLnR5cGVdOiJ0ZXh0YXJlYSI9PT1ufWZ1bmN0aW9uIGp0KGUsbix0LHIpe3plKHIpLDA8KG49JHIobiwib25DaGFuZ2UiKSkubGVuZ3RoJiYodD1uZXcgY3QoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLHQsciksZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczpufSkpfXZhciAkdD1udWxsLHF0PW51bGw7ZnVuY3Rpb24gS3QoZSl7VXIoZSwwKX1mdW5jdGlvbiBZdChlKXtpZihxKGtsKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBYdChlLG4pe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gbn12YXIgR3Q9ITE7aWYoYyl7dmFyIFp0O2lmKGMpe3ZhciBKdD0ib25pbnB1dCJpbiBkb2N1bWVudDtpZighSnQpe3ZhciBlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlci5zZXRBdHRyaWJ1dGUoIm9uaW5wdXQiLCJyZXR1cm47IiksSnQ9ImZ1bmN0aW9uIj09dHlwZW9mIGVyLm9uaW5wdXR9WnQ9SnQKfWVsc2UgWnQ9ITE7R3Q9WnQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSl9ZnVuY3Rpb24gbnIoKXskdCYmKCR0LmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikscXQ9JHQ9bnVsbCl9ZnVuY3Rpb24gdHIoZSl7aWYoInZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZZdChxdCkpe3ZhciBuPVtdO2p0KG4scXQsZSx3ZShlKSksTGUoS3Qsbil9fWZ1bmN0aW9uIHJyKGUsbix0KXsiZm9jdXNpbiI9PT1lPyhucigpLHF0PXQsKCR0PW4pLmF0dGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikpOiJmb2N1c291dCI9PT1lJiZucigpfWZ1bmN0aW9uIGxyKGUpe2lmKCJzZWxlY3Rpb25jaGFuZ2UiPT09ZXx8ImtleXVwIj09PWV8fCJrZXlkb3duIj09PWUpcmV0dXJuIFl0KHF0KX1mdW5jdGlvbiBhcihlLG4pe2lmKCJjbGljayI9PT1lKXJldHVybiBZdChuKX1mdW5jdGlvbiB1cihlLG4pe2lmKCJpbnB1dCI9PT1lfHwiY2hhbmdlIj09PWUpcmV0dXJuIFl0KG4pfXZhciBvcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLG4pe3JldHVybiBlPT09biYmKDAhPT1lfHwxL2U9PTEvbil8fGUhPWUmJm4hPW59O2Z1bmN0aW9uIGlyKGUsbil7aWYob3IoZSxuKSlyZXR1cm4hMDtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIG58fG51bGw9PT1uKXJldHVybiExO3ZhciB0PU9iamVjdC5rZXlzKGUpLHI9T2JqZWN0LmtleXMobik7aWYodC5sZW5ndGghPT1yLmxlbmd0aClyZXR1cm4hMTtmb3Iocj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO2lmKCFmLmNhbGwobixsKXx8IW9yKGVbbF0sbltsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gc3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIGNyKGUsbil7dmFyIHQscj1zcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYodD1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PW4mJnQ+PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6bi1lfTtlPXR9ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1zcihyKX19ZnVuY3Rpb24gZnIoZSxuKXtyZXR1cm4hKCFlfHwhbikmJihlPT09bnx8KCFlfHwzIT09ZS5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9mcihlLG4ucGFyZW50Tm9kZSk6ImNvbnRhaW5zImluIGU/ZS5jb250YWlucyhuKTohIWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24obikpKSl9ZnVuY3Rpb24gZHIoKXtmb3IodmFyIGU9d2luZG93LG49SygpO24gaW5zdGFuY2VvZiBlLkhUTUxJRnJhbWVFbGVtZW50Oyl7dHJ5e3ZhciB0PSJzdHJpbmciPT10eXBlb2Ygbi5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWZ9Y2F0Y2goZSl7dD0hMX1pZighdClicmVhaztuPUsoKGU9bi5jb250ZW50V2luZG93KS5kb2N1bWVudCl9cmV0dXJuIG59ZnVuY3Rpb24gcHIoZSl7dmFyIG49ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiBuJiYoImlucHV0Ij09PW4mJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09bnx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfWZ1bmN0aW9uIG1yKGUpe3ZhciBuPWRyKCksdD1lLmZvY3VzZWRFbGVtLHI9ZS5zZWxlY3Rpb25SYW5nZTtpZihuIT09dCYmdCYmdC5vd25lckRvY3VtZW50JiZmcih0Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHQpKXtpZihudWxsIT09ciYmcHIodCkpaWYobj1yLnN0YXJ0LHZvaWQgMD09PShlPXIuZW5kKSYmKGU9biksInNlbGVjdGlvblN0YXJ0ImluIHQpdC5zZWxlY3Rpb25TdGFydD1uLHQuc2VsZWN0aW9uRW5kPU1hdGgubWluKGUsdC52YWx1ZS5sZW5ndGgpO2Vsc2UgaWYoKGU9KG49dC5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm4uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKXtlPWUuZ2V0U2VsZWN0aW9uKCk7dmFyIGw9dC50ZXh0Q29udGVudC5sZW5ndGgsYT1NYXRoLm1pbihyLnN0YXJ0LGwpO3I9dm9pZCAwPT09ci5lbmQ/YTpNYXRoLm1pbihyLmVuZCxsKSwhZS5leHRlbmQmJmE+ciYmKGw9cixyPWEsYT1sKSxsPWNyKHQsYSk7dmFyIHU9Y3IodCxyKTtsJiZ1JiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bC5ub2RlfHxlLmFuY2hvck9mZnNldCE9PWwub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXUubm9kZXx8ZS5mb2N1c09mZnNldCE9PXUub2Zmc2V0KSYmKChuPW4uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobC5ub2RlLGwub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGE+cj8oZS5hZGRSYW5nZShuKSxlLmV4dGVuZCh1Lm5vZGUsdS5vZmZzZXQpKToobi5zZXRFbmQodS5ub2RlLHUub2Zmc2V0KSxlLmFkZFJhbmdlKG4pKSl9Zm9yKG49W10sZT10O2U9ZS5wYXJlbnROb2RlOykxPT09ZS5ub2RlVHlwZSYmbi5wdXNoKHtlbGVtZW50OmUsbGVmdDplLnNjcm9sbExlZnQsdG9wOmUuc2Nyb2xsVG9wfSk7Zm9yKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvY3VzJiZ0LmZvY3VzKCksdD0wO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pLmVsZW1lbnQuc2Nyb2xsTGVmdD1lLmxlZnQsZS5lbGVtZW50LnNjcm9sbFRvcD1lLnRvcH19dmFyIGhyPWMmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJjExPj1kb2N1bWVudC5kb2N1bWVudE1vZGUsZ3I9bnVsbCx2cj1udWxsLHlyPW51bGwsYnI9ITE7ZnVuY3Rpb24ga3IoZSxuLHQpe3ZhciByPXQud2luZG93PT09dD90LmRvY3VtZW50Ojk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O2JyfHxudWxsPT1ncnx8Z3IhPT1LKHIpfHwoInNlbGVjdGlvblN0YXJ0ImluKHI9Z3IpJiZwcihyKT9yPXtzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZAp9OnI9e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0seXImJmlyKHlyLHIpfHwoeXI9ciwwPChyPSRyKHZyLCJvblNlbGVjdCIpKS5sZW5ndGgmJihuPW5ldyBjdCgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsbix0KSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnJ9KSxuLnRhcmdldD1ncikpKX1mdW5jdGlvbiB3cihlLG4pe3ZhciB0PXt9O3JldHVybiB0W2UudG9Mb3dlckNhc2UoKV09bi50b0xvd2VyQ2FzZSgpLHRbIldlYmtpdCIrZV09IndlYmtpdCIrbix0WyJNb3oiK2VdPSJtb3oiK24sdH12YXIgU3I9e2FuaW1hdGlvbmVuZDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOndyKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9uZW5kOndyKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvbkVuZCIpfSx4cj17fSxFcj17fTtmdW5jdGlvbiBDcihlKXtpZih4cltlXSlyZXR1cm4geHJbZV07aWYoIVNyW2VdKXJldHVybiBlO3ZhciBuLHQ9U3JbZV07Zm9yKG4gaW4gdClpZih0Lmhhc093blByb3BlcnR5KG4pJiZuIGluIEVyKXJldHVybiB4cltlXT10W25dO3JldHVybiBlfWMmJihFcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKS5zdHlsZSwiQW5pbWF0aW9uRXZlbnQiaW4gd2luZG93fHwoZGVsZXRlIFNyLmFuaW1hdGlvbmVuZC5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbml0ZXJhdGlvbi5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbnN0YXJ0LmFuaW1hdGlvbiksIlRyYW5zaXRpb25FdmVudCJpbiB3aW5kb3d8fGRlbGV0ZSBTci50cmFuc2l0aW9uZW5kLnRyYW5zaXRpb24pO3ZhciB6cj1DcigiYW5pbWF0aW9uZW5kIiksTnI9Q3IoImFuaW1hdGlvbml0ZXJhdGlvbiIpLF9yPUNyKCJhbmltYXRpb25zdGFydCIpLFByPUNyKCJ0cmFuc2l0aW9uZW5kIiksVHI9bmV3IE1hcCxMcj0iYWJvcnQgYXV4Q2xpY2sgY2FuY2VsIGNhblBsYXkgY2FuUGxheVRocm91Z2ggY2xpY2sgY2xvc2UgY29udGV4dE1lbnUgY29weSBjdXQgZHJhZyBkcmFnRW5kIGRyYWdFbnRlciBkcmFnRXhpdCBkcmFnTGVhdmUgZHJhZ092ZXIgZHJhZ1N0YXJ0IGRyb3AgZHVyYXRpb25DaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgZ290UG9pbnRlckNhcHR1cmUgaW5wdXQgaW52YWxpZCBrZXlEb3duIGtleVByZXNzIGtleVVwIGxvYWQgbG9hZGVkRGF0YSBsb2FkZWRNZXRhZGF0YSBsb2FkU3RhcnQgbG9zdFBvaW50ZXJDYXB0dXJlIG1vdXNlRG93biBtb3VzZU1vdmUgbW91c2VPdXQgbW91c2VPdmVyIG1vdXNlVXAgcGFzdGUgcGF1c2UgcGxheSBwbGF5aW5nIHBvaW50ZXJDYW5jZWwgcG9pbnRlckRvd24gcG9pbnRlck1vdmUgcG9pbnRlck91dCBwb2ludGVyT3ZlciBwb2ludGVyVXAgcHJvZ3Jlc3MgcmF0ZUNoYW5nZSByZXNldCByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdWJtaXQgc3VzcGVuZCB0aW1lVXBkYXRlIHRvdWNoQ2FuY2VsIHRvdWNoRW5kIHRvdWNoU3RhcnQgdm9sdW1lQ2hhbmdlIHNjcm9sbCB0b2dnbGUgdG91Y2hNb3ZlIHdhaXRpbmcgd2hlZWwiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTXIoZSxuKXtUci5zZXQoZSxuKSxpKG4sW2VdKX1mb3IodmFyIEZyPTA7RnI8THIubGVuZ3RoO0ZyKyspe3ZhciBScj1McltGcl07TXIoUnIudG9Mb3dlckNhc2UoKSwib24iKyhSclswXS50b1VwcGVyQ2FzZSgpK1JyLnNsaWNlKDEpKSl9TXIoenIsIm9uQW5pbWF0aW9uRW5kIiksTXIoTnIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIiksTXIoX3IsIm9uQW5pbWF0aW9uU3RhcnQiKSxNcigiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIiksTXIoImZvY3VzaW4iLCJvbkZvY3VzIiksTXIoImZvY3Vzb3V0Iiwib25CbHVyIiksTXIoUHIsIm9uVHJhbnNpdGlvbkVuZCIpLHMoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxzKCJvbk1vdXNlTGVhdmUiLFsibW91c2VvdXQiLCJtb3VzZW92ZXIiXSkscygib25Qb2ludGVyRW50ZXIiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLHMoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxpKCJvbkNoYW5nZSIsImNoYW5nZSBjbGljayBmb2N1c2luIGZvY3Vzb3V0IGlucHV0IGtleWRvd24ga2V5dXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxpKCJvblNlbGVjdCIsImZvY3Vzb3V0IGNvbnRleHRtZW51IGRyYWdlbmQgZm9jdXNpbiBrZXlkb3duIGtleXVwIG1vdXNlZG93biBtb3VzZXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksaSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksaSgib25Db21wb3NpdGlvbkVuZCIsImNvbXBvc2l0aW9uZW5kIGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uU3RhcnQiLCJjb21wb3NpdGlvbnN0YXJ0IGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpCjt2YXIgRHI9ImFib3J0IGNhbnBsYXkgY2FucGxheXRocm91Z2ggZHVyYXRpb25jaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgbG9hZGVkZGF0YSBsb2FkZWRtZXRhZGF0YSBsb2Fkc3RhcnQgcGF1c2UgcGxheSBwbGF5aW5nIHByb2dyZXNzIHJhdGVjaGFuZ2UgcmVzaXplIHNlZWtlZCBzZWVraW5nIHN0YWxsZWQgc3VzcGVuZCB0aW1ldXBkYXRlIHZvbHVtZWNoYW5nZSB3YWl0aW5nIi5zcGxpdCgiICIpLElyPW5ldyBTZXQoImNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHRvZ2dsZSIuc3BsaXQoIiAiKS5jb25jYXQoRHIpKTtmdW5jdGlvbiBPcihlLG4sdCl7dmFyIHI9ZS50eXBlfHwidW5rbm93bi1ldmVudCI7ZS5jdXJyZW50VGFyZ2V0PXQsZnVuY3Rpb24oZSxuLHQscixsLHUsbyxpLHMpe2lmKEJlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxJZSl7aWYoIUllKXRocm93IEVycm9yKGEoMTk4KSk7dmFyIGM9T2U7SWU9ITEsT2U9bnVsbCxVZXx8KFVlPSEwLFZlPWMpfX0ocixuLHZvaWQgMCxlKSxlLmN1cnJlbnRUYXJnZXQ9bnVsbH1mdW5jdGlvbiBVcihlLG4pe249ISEoNCZuKTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIHI9ZVt0XSxsPXIuZXZlbnQ7cj1yLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYobilmb3IodmFyIHU9ci5sZW5ndGgtMTswPD11O3UtLSl7dmFyIG89clt1XSxpPW8uaW5zdGFuY2Uscz1vLmN1cnJlbnRUYXJnZXQ7aWYobz1vLmxpc3RlbmVyLGkhPT1hJiZsLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtPcihsLG8scyksYT1pfWVsc2UgZm9yKHU9MDt1PHIubGVuZ3RoO3UrKyl7aWYoaT0obz1yW3VdKS5pbnN0YW5jZSxzPW8uY3VycmVudFRhcmdldCxvPW8ubGlzdGVuZXIsaSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO09yKGwsbyxzKSxhPWl9fX1pZihVZSl0aHJvdyBlPVZlLFVlPSExLFZlPW51bGwsZX1mdW5jdGlvbiBWcihlLG4pe3ZhciB0PW5baGxdO3ZvaWQgMD09PXQmJih0PW5baGxdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjt0LmhhcyhyKXx8KEhyKG4sZSwyLCExKSx0LmFkZChyKSl9ZnVuY3Rpb24gQXIoZSxuLHQpe3ZhciByPTA7biYmKHJ8PTQpLEhyKHQsZSxyLG4pfXZhciBCcj0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBXcihlKXtpZighZVtCcl0pe2VbQnJdPSEwLHUuZm9yRWFjaCgoZnVuY3Rpb24obil7InNlbGVjdGlvbmNoYW5nZSIhPT1uJiYoSXIuaGFzKG4pfHxBcihuLCExLGUpLEFyKG4sITAsZSkpfSkpO3ZhciBuPTk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50O251bGw9PT1ufHxuW0JyXXx8KG5bQnJdPSEwLEFyKCJzZWxlY3Rpb25jaGFuZ2UiLCExLG4pKX19ZnVuY3Rpb24gSHIoZSxuLHQscil7c3dpdGNoKEduKG4pKXtjYXNlIDE6dmFyIGw9JG47YnJlYWs7Y2FzZSA0Omw9cW47YnJlYWs7ZGVmYXVsdDpsPUtufXQ9bC5iaW5kKG51bGwsbix0LGUpLGw9dm9pZCAwLCFGZXx8InRvdWNoc3RhcnQiIT09biYmInRvdWNobW92ZSIhPT1uJiYid2hlZWwiIT09bnx8KGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIobix0LHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcihuLHQsITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKG4sdCx7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKG4sdCwhMSl9ZnVuY3Rpb24gUXIoZSxuLHQscixsKXt2YXIgYT1yO2lmKCEoMSZufHwyJm58fG51bGw9PT1yKSllOmZvcig7Oyl7aWYobnVsbD09PXIpcmV0dXJuO3ZhciB1PXIudGFnO2lmKDM9PT11fHw0PT09dSl7dmFyIG89ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihvPT09bHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PWwpYnJlYWs7aWYoND09PXUpZm9yKHU9ci5yZXR1cm47bnVsbCE9PXU7KXt2YXIgaT11LnRhZztpZigoMz09PWl8fDQ9PT1pKSYmKChpPXUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09bHx8OD09PWkubm9kZVR5cGUmJmkucGFyZW50Tm9kZT09PWwpKXJldHVybjt1PXUucmV0dXJufWZvcig7bnVsbCE9PW87KXtpZihudWxsPT09KHU9eWwobykpKXJldHVybjtpZig1PT09KGk9dS50YWcpfHw2PT09aSl7cj1hPXU7Y29udGludWUgZX1vPW8ucGFyZW50Tm9kZX19cj1yLnJldHVybn1MZSgoZnVuY3Rpb24oKXt2YXIgcj1hLGw9d2UodCksdT1bXTtlOnt2YXIgbz1Uci5nZXQoZSk7aWYodm9pZCAwIT09byl7dmFyIGk9Y3Qscz1lO3N3aXRjaChlKXtjYXNlImtleXByZXNzIjppZigwPT09dHQodCkpYnJlYWsgZTtjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmk9TnQ7YnJlYWs7Y2FzZSJmb2N1c2luIjpzPSJmb2N1cyIsaT1ndDticmVhaztjYXNlImZvY3Vzb3V0IjpzPSJibHVyIixpPWd0O2JyZWFrO2Nhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmk9Z3Q7YnJlYWs7Y2FzZSJjbGljayI6aWYoMj09PXQuYnV0dG9uKWJyZWFrIGU7Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2Vtb3ZlIjpjYXNlIm1vdXNldXAiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlImNvbnRleHRtZW51IjppPW10O2JyZWFrO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnZXhpdCI6Y2FzZSJkcmFnbGVhdmUiOmNhc2UiZHJhZ292ZXIiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmk9aHQ7YnJlYWs7Y2FzZSJ0b3VjaGNhbmNlbCI6Y2FzZSJ0b3VjaGVuZCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2UidG91Y2hzdGFydCI6aT1QdDticmVhaztjYXNlIHpyOmNhc2UgTnI6Y2FzZSBfcjppPXZ0O2JyZWFrO2Nhc2UgUHI6aT1UdDticmVhaztjYXNlInNjcm9sbCI6aT1kdDticmVhaztjYXNlIndoZWVsIjppPU10O2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOmk9YnQ7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOgpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVydXAiOmk9X3R9dmFyIGM9ISEoNCZuKSxmPSFjJiYic2Nyb2xsIj09PWUsZD1jP251bGwhPT1vP28rIkNhcHR1cmUiOm51bGw6bztjPVtdO2Zvcih2YXIgcCxtPXI7bnVsbCE9PW07KXt2YXIgaD0ocD1tKS5zdGF0ZU5vZGU7aWYoNT09PXAudGFnJiZudWxsIT09aCYmKHA9aCxudWxsIT09ZCYmKG51bGwhPShoPU1lKG0sZCkpJiZjLnB1c2goanIobSxoLHApKSkpLGYpYnJlYWs7bT1tLnJldHVybn0wPGMubGVuZ3RoJiYobz1uZXcgaShvLHMsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6Y30pKX19aWYoISg3Jm4pKXtpZihpPSJtb3VzZW91dCI9PT1lfHwicG9pbnRlcm91dCI9PT1lLCghKG89Im1vdXNlb3ZlciI9PT1lfHwicG9pbnRlcm92ZXIiPT09ZSl8fHQ9PT1rZXx8IShzPXQucmVsYXRlZFRhcmdldHx8dC5mcm9tRWxlbWVudCl8fCF5bChzKSYmIXNbbWxdKSYmKGl8fG8pJiYobz1sLndpbmRvdz09PWw/bDoobz1sLm93bmVyRG9jdW1lbnQpP28uZGVmYXVsdFZpZXd8fG8ucGFyZW50V2luZG93OndpbmRvdyxpPyhpPXIsbnVsbCE9PShzPShzPXQucmVsYXRlZFRhcmdldHx8dC50b0VsZW1lbnQpP3lsKHMpOm51bGwpJiYocyE9PShmPVdlKHMpKXx8NSE9PXMudGFnJiY2IT09cy50YWcpJiYocz1udWxsKSk6KGk9bnVsbCxzPXIpLGkhPT1zKSl7aWYoYz1tdCxoPSJvbk1vdXNlTGVhdmUiLGQ9Im9uTW91c2VFbnRlciIsbT0ibW91c2UiLCJwb2ludGVyb3V0IiE9PWUmJiJwb2ludGVyb3ZlciIhPT1lfHwoYz1fdCxoPSJvblBvaW50ZXJMZWF2ZSIsZD0ib25Qb2ludGVyRW50ZXIiLG09InBvaW50ZXIiKSxmPW51bGw9PWk/bzprbChpKSxwPW51bGw9PXM/bzprbChzKSwobz1uZXcgYyhoLG0rImxlYXZlIixpLHQsbCkpLnRhcmdldD1mLG8ucmVsYXRlZFRhcmdldD1wLGg9bnVsbCx5bChsKT09PXImJigoYz1uZXcgYyhkLG0rImVudGVyIixzLHQsbCkpLnRhcmdldD1wLGMucmVsYXRlZFRhcmdldD1mLGg9YyksZj1oLGkmJnMpZTp7Zm9yKGQ9cyxtPTAscD1jPWk7cDtwPXFyKHApKW0rKztmb3IocD0wLGg9ZDtoO2g9cXIoaCkpcCsrO2Zvcig7MDxtLXA7KWM9cXIoYyksbS0tO2Zvcig7MDxwLW07KWQ9cXIoZCkscC0tO2Zvcig7bS0tOyl7aWYoYz09PWR8fG51bGwhPT1kJiZjPT09ZC5hbHRlcm5hdGUpYnJlYWsgZTtjPXFyKGMpLGQ9cXIoZCl9Yz1udWxsfWVsc2UgYz1udWxsO251bGwhPT1pJiZLcih1LG8saSxjLCExKSxudWxsIT09cyYmbnVsbCE9PWYmJktyKHUsZixzLGMsITApfWlmKCJzZWxlY3QiPT09KGk9KG89cj9rbChyKTp3aW5kb3cpLm5vZGVOYW1lJiZvLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09aSYmImZpbGUiPT09by50eXBlKXZhciBnPVh0O2Vsc2UgaWYoUXQobykpaWYoR3QpZz11cjtlbHNle2c9bHI7dmFyIHY9cnJ9ZWxzZShpPW8ubm9kZU5hbWUpJiYiaW5wdXQiPT09aS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW8udHlwZXx8InJhZGlvIj09PW8udHlwZSkmJihnPWFyKTtzd2l0Y2goZyYmKGc9ZyhlLHIpKT9qdCh1LGcsdCxsKToodiYmdihlLG8sciksImZvY3Vzb3V0Ij09PWUmJih2PW8uX3dyYXBwZXJTdGF0ZSkmJnYuY29udHJvbGxlZCYmIm51bWJlciI9PT1vLnR5cGUmJmVlKG8sIm51bWJlciIsby52YWx1ZSkpLHY9cj9rbChyKTp3aW5kb3csZSl7Y2FzZSJmb2N1c2luIjooUXQodil8fCJ0cnVlIj09PXYuY29udGVudEVkaXRhYmxlKSYmKGdyPXYsdnI9cix5cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp5cj12cj1ncj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpicj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6YnI9ITEsa3IodSx0LGwpO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihocilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmtyKHUsdCxsKX12YXIgeTtpZihSdCllOntzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgYj0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmI9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Yj0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1iPXZvaWQgMH1lbHNlIFd0P0F0KGUsdCkmJihiPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZSYmMjI5PT09dC5rZXlDb2RlJiYoYj0ib25Db21wb3NpdGlvblN0YXJ0Iik7YiYmKE90JiYia28iIT09dC5sb2NhbGUmJihXdHx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1iPyJvbkNvbXBvc2l0aW9uRW5kIj09PWImJld0JiYoeT1udCgpKTooSm49InZhbHVlImluKFpuPWwpP1puLnZhbHVlOlpuLnRleHRDb250ZW50LFd0PSEwKSksMDwodj0kcihyLGIpKS5sZW5ndGgmJihiPW5ldyBrdChiLGUsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6YixsaXN0ZW5lcnM6dn0pLHk/Yi5kYXRhPXk6bnVsbCE9PSh5PUJ0KHQpKSYmKGIuZGF0YT15KSkpLCh5PUl0P2Z1bmN0aW9uKGUsbil7c3dpdGNoKGUpe2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBCdChuKTtjYXNlImtleXByZXNzIjpyZXR1cm4gMzIhPT1uLndoaWNoP251bGw6KFZ0PSEwLFV0KTtjYXNlInRleHRJbnB1dCI6cmV0dXJuKGU9bi5kYXRhKT09PVV0JiZWdD9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsdCk6ZnVuY3Rpb24oZSxuKXtpZihXdClyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IVJ0JiZBdChlLG4pPyhlPW50KCksZXQ9Sm49Wm49bnVsbCxXdD0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEobi5jdHJsS2V5fHxuLmFsdEtleXx8bi5tZXRhS2V5KXx8bi5jdHJsS2V5JiZuLmFsdEtleSl7aWYobi5jaGFyJiYxPG4uY2hhci5sZW5ndGgpcmV0dXJuIG4uY2hhcgo7aWYobi53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShuLndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gT3QmJiJrbyIhPT1uLmxvY2FsZT9udWxsOm4uZGF0YX19KGUsdCkpJiYoMDwocj0kcihyLCJvbkJlZm9yZUlucHV0IikpLmxlbmd0aCYmKGw9bmV3IGt0KCJvbkJlZm9yZUlucHV0IiwiYmVmb3JlaW5wdXQiLG51bGwsdCxsKSx1LnB1c2goe2V2ZW50OmwsbGlzdGVuZXJzOnJ9KSxsLmRhdGE9eSkpfVVyKHUsbil9KSl9ZnVuY3Rpb24ganIoZSxuLHQpe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOm4sY3VycmVudFRhcmdldDp0fX1mdW5jdGlvbiAkcihlLG4pe2Zvcih2YXIgdD1uKyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIGw9ZSxhPWwuc3RhdGVOb2RlOzU9PT1sLnRhZyYmbnVsbCE9PWEmJihsPWEsbnVsbCE9KGE9TWUoZSx0KSkmJnIudW5zaGlmdChqcihlLGEsbCkpLG51bGwhPShhPU1lKGUsbikpJiZyLnB1c2goanIoZSxhLGwpKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBxcihlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtkb3tlPWUucmV0dXJufXdoaWxlKGUmJjUhPT1lLnRhZyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gS3IoZSxuLHQscixsKXtmb3IodmFyIGE9bi5fcmVhY3ROYW1lLHU9W107bnVsbCE9PXQmJnQhPT1yOyl7dmFyIG89dCxpPW8uYWx0ZXJuYXRlLHM9by5zdGF0ZU5vZGU7aWYobnVsbCE9PWkmJmk9PT1yKWJyZWFrOzU9PT1vLnRhZyYmbnVsbCE9PXMmJihvPXMsbD9udWxsIT0oaT1NZSh0LGEpKSYmdS51bnNoaWZ0KGpyKHQsaSxvKSk6bHx8bnVsbCE9KGk9TWUodCxhKSkmJnUucHVzaChqcih0LGksbykpKSx0PXQucmV0dXJufTAhPT11Lmxlbmd0aCYmZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp1fSl9dmFyIFlyPS9cclxuPy9nLFhyPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gR3IoZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoWXIsIlxuIikucmVwbGFjZShYciwiIil9ZnVuY3Rpb24gWnIoZSxuLHQpe2lmKG49R3IobiksR3IoZSkhPT1uJiZ0KXRocm93IEVycm9yKGEoNDI1KSl9ZnVuY3Rpb24gSnIoKXt9dmFyIGVsPW51bGwsbmw9bnVsbDtmdW5jdGlvbiB0bChlLG4pe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiBuLmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIG4uY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBybD0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCxsbD0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsYWw9ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsdWw9ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PWFsP2Z1bmN0aW9uKGUpe3JldHVybiBhbC5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2gob2wpfTpybDtmdW5jdGlvbiBvbChlKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Rocm93IGV9KSl9ZnVuY3Rpb24gaWwoZSxuKXt2YXIgdD1uLHI9MDtkb3t2YXIgbD10Lm5leHRTaWJsaW5nO2lmKGUucmVtb3ZlQ2hpbGQodCksbCYmOD09PWwubm9kZVR5cGUpaWYoIi8kIj09PSh0PWwuZGF0YSkpe2lmKDA9PT1yKXJldHVybiBlLnJlbW92ZUNoaWxkKGwpLHZvaWQgSG4obik7ci0tfWVsc2UiJCIhPT10JiYiJD8iIT09dCYmIiQhIiE9PXR8fHIrKzt0PWx9d2hpbGUodCk7SG4obil9ZnVuY3Rpb24gc2woZSl7Zm9yKDtudWxsIT1lO2U9ZS5uZXh0U2libGluZyl7dmFyIG49ZS5ub2RlVHlwZTtpZigxPT09bnx8Mz09PW4pYnJlYWs7aWYoOD09PW4pe2lmKCIkIj09PShuPWUuZGF0YSl8fCIkISI9PT1ufHwiJD8iPT09bilicmVhaztpZigiLyQiPT09bilyZXR1cm4gbnVsbH19cmV0dXJuIGV9ZnVuY3Rpb24gY2woZSl7ZT1lLnByZXZpb3VzU2libGluZztmb3IodmFyIG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiJCI9PT10fHwiJCEiPT09dHx8IiQ/Ij09PXQpe2lmKDA9PT1uKXJldHVybiBlO24tLX1lbHNlIi8kIj09PXQmJm4rK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfXZhciBmbD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSxkbD0iX19yZWFjdEZpYmVyJCIrZmwscGw9Il9fcmVhY3RQcm9wcyQiK2ZsLG1sPSJfX3JlYWN0Q29udGFpbmVyJCIrZmwsaGw9Il9fcmVhY3RFdmVudHMkIitmbCxnbD0iX19yZWFjdExpc3RlbmVycyQiK2ZsLHZsPSJfX3JlYWN0SGFuZGxlcyQiK2ZsO2Z1bmN0aW9uIHlsKGUpe3ZhciBuPWVbZGxdO2lmKG4pcmV0dXJuIG47Zm9yKHZhciB0PWUucGFyZW50Tm9kZTt0Oyl7aWYobj10W21sXXx8dFtkbF0pe2lmKHQ9bi5hbHRlcm5hdGUsbnVsbCE9PW4uY2hpbGR8fG51bGwhPT10JiZudWxsIT09dC5jaGlsZClmb3IoZT1jbChlKTtudWxsIT09ZTspe2lmKHQ9ZVtkbF0pcmV0dXJuIHQ7ZT1jbChlKX1yZXR1cm4gbn10PShlPXQpLnBhcmVudE5vZGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYmwoZSl7cmV0dXJuIShlPWVbZGxdfHxlW21sXSl8fDUhPT1lLnRhZyYmNiE9PWUudGFnJiYxMyE9PWUudGFnJiYzIT09ZS50YWc/bnVsbDplfWZ1bmN0aW9uIGtsKGUpe2lmKDU9PT1lLnRhZ3x8Nj09PWUudGFnKXJldHVybiBlLnN0YXRlTm9kZTt0aHJvdyBFcnJvcihhKDMzKSl9ZnVuY3Rpb24gd2woZSl7cmV0dXJuIGVbcGxdfHxudWxsfXZhciBTbD1bXSx4bD0tMTtmdW5jdGlvbiBFbChlKXtyZXR1cm57Y3VycmVudDplfX1mdW5jdGlvbiBDbChlKXswPnhsfHwoZS5jdXJyZW50PVNsW3hsXSxTbFt4bF09bnVsbCx4bC0tKX1mdW5jdGlvbiB6bChlLG4pe3hsKyssU2xbeGxdPWUuY3VycmVudCxlLmN1cnJlbnQ9bn0KdmFyIE5sPXt9LF9sPUVsKE5sKSxQbD1FbCghMSksVGw9Tmw7ZnVuY3Rpb24gTGwoZSxuKXt2YXIgdD1lLnR5cGUuY29udGV4dFR5cGVzO2lmKCF0KXJldHVybiBObDt2YXIgcj1lLnN0YXRlTm9kZTtpZihyJiZyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkVW5tYXNrZWRDaGlsZENvbnRleHQ9PT1uKXJldHVybiByLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWFza2VkQ2hpbGRDb250ZXh0O3ZhciBsLGE9e307Zm9yKGwgaW4gdClhW2xdPW5bbF07cmV0dXJuIHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1uLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksYX1mdW5jdGlvbiBNbChlKXtyZXR1cm4gbnVsbCE9KGU9ZS5jaGlsZENvbnRleHRUeXBlcyl9ZnVuY3Rpb24gRmwoKXtDbChQbCksQ2woX2wpfWZ1bmN0aW9uIFJsKGUsbix0KXtpZihfbC5jdXJyZW50IT09TmwpdGhyb3cgRXJyb3IoYSgxNjgpKTt6bChfbCxuKSx6bChQbCx0KX1mdW5jdGlvbiBEbChlLG4sdCl7dmFyIHI9ZS5zdGF0ZU5vZGU7aWYobj1uLmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiByLmdldENoaWxkQ29udGV4dClyZXR1cm4gdDtmb3IodmFyIGwgaW4gcj1yLmdldENoaWxkQ29udGV4dCgpKWlmKCEobCBpbiBuKSl0aHJvdyBFcnJvcihhKDEwOCxIKGUpfHwiVW5rbm93biIsbCkpO3JldHVybiBPKHt9LHQscil9ZnVuY3Rpb24gSWwoZSl7cmV0dXJuIGU9KGU9ZS5zdGF0ZU5vZGUpJiZlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0fHxObCxUbD1fbC5jdXJyZW50LHpsKF9sLGUpLHpsKFBsLFBsLmN1cnJlbnQpLCEwfWZ1bmN0aW9uIE9sKGUsbix0KXt2YXIgcj1lLnN0YXRlTm9kZTtpZighcil0aHJvdyBFcnJvcihhKDE2OSkpO3Q/KGU9RGwoZSxuLFRsKSxyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0PWUsQ2woUGwpLENsKF9sKSx6bChfbCxlKSk6Q2woUGwpLHpsKFBsLHQpfXZhciBVbD1udWxsLFZsPSExLEFsPSExO2Z1bmN0aW9uIEJsKGUpe251bGw9PT1VbD9VbD1bZV06VWwucHVzaChlKX1mdW5jdGlvbiBXbCgpe2lmKCFBbCYmbnVsbCE9PVVsKXtBbD0hMDt2YXIgZT0wLG49a247dHJ5e3ZhciB0PVVsO2Zvcihrbj0xO2U8dC5sZW5ndGg7ZSsrKXt2YXIgcj10W2VdO2Rve3I9cighMCl9d2hpbGUobnVsbCE9PXIpfVVsPW51bGwsVmw9ITF9Y2F0Y2gobil7dGhyb3cgbnVsbCE9PVVsJiYoVWw9VWwuc2xpY2UoZSsxKSkscWUoSmUsV2wpLG59ZmluYWxseXtrbj1uLEFsPSExfX1yZXR1cm4gbnVsbH12YXIgSGw9W10sUWw9MCxqbD1udWxsLCRsPTAscWw9W10sS2w9MCxZbD1udWxsLFhsPTEsR2w9IiI7ZnVuY3Rpb24gWmwoZSxuKXtIbFtRbCsrXT0kbCxIbFtRbCsrXT1qbCxqbD1lLCRsPW59ZnVuY3Rpb24gSmwoZSxuLHQpe3FsW0tsKytdPVhsLHFsW0tsKytdPUdsLHFsW0tsKytdPVlsLFlsPWU7dmFyIHI9WGw7ZT1HbDt2YXIgbD0zMi11bihyKS0xO3ImPX4oMTw8bCksdCs9MTt2YXIgYT0zMi11bihuKStsO2lmKDMwPGEpe3ZhciB1PWwtbCU1O2E9KHImKDE8PHUpLTEpLnRvU3RyaW5nKDMyKSxyPj49dSxsLT11LFhsPTE8PDMyLXVuKG4pK2x8dDw8bHxyLEdsPWErZX1lbHNlIFhsPTE8PGF8dDw8bHxyLEdsPWV9ZnVuY3Rpb24gZWEoZSl7bnVsbCE9PWUucmV0dXJuJiYoWmwoZSwxKSxKbChlLDEsMCkpfWZ1bmN0aW9uIG5hKGUpe2Zvcig7ZT09PWpsOylqbD1IbFstLVFsXSxIbFtRbF09bnVsbCwkbD1IbFstLVFsXSxIbFtRbF09bnVsbDtmb3IoO2U9PT1ZbDspWWw9cWxbLS1LbF0scWxbS2xdPW51bGwsR2w9cWxbLS1LbF0scWxbS2xdPW51bGwsWGw9cWxbLS1LbF0scWxbS2xdPW51bGx9dmFyIHRhPW51bGwscmE9bnVsbCxsYT0hMSxhYT1udWxsO2Z1bmN0aW9uIHVhKGUsbil7dmFyIHQ9THMoNSxudWxsLG51bGwsMCk7dC5lbGVtZW50VHlwZT0iREVMRVRFRCIsdC5zdGF0ZU5vZGU9bix0LnJldHVybj1lLG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpfWZ1bmN0aW9uIG9hKGUsbil7c3dpdGNoKGUudGFnKXtjYXNlIDU6dmFyIHQ9ZS50eXBlO3JldHVybiBudWxsIT09KG49MSE9PW4ubm9kZVR5cGV8fHQudG9Mb3dlckNhc2UoKSE9PW4ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT9udWxsOm4pJiYoZS5zdGF0ZU5vZGU9bix0YT1lLHJhPXNsKG4uZmlyc3RDaGlsZCksITApO2Nhc2UgNjpyZXR1cm4gbnVsbCE9PShuPSIiPT09ZS5wZW5kaW5nUHJvcHN8fDMhPT1uLm5vZGVUeXBlP251bGw6bikmJihlLnN0YXRlTm9kZT1uLHRhPWUscmE9bnVsbCwhMCk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PShuPTghPT1uLm5vZGVUeXBlP251bGw6bikmJih0PW51bGwhPT1ZbD97aWQ6WGwsb3ZlcmZsb3c6R2x9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOm4sdHJlZUNvbnRleHQ6dCxyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKHQ9THMoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9bix0LnJldHVybj1lLGUuY2hpbGQ9dCx0YT1lLHJhPW51bGwsITApO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGlhKGUpe3JldHVybiEoISgxJmUubW9kZSl8fDEyOCZlLmZsYWdzKX1mdW5jdGlvbiBzYShlKXtpZihsYSl7dmFyIG49cmE7aWYobil7dmFyIHQ9bjtpZighb2EoZSxuKSl7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtuPXNsKHQubmV4dFNpYmxpbmcpO3ZhciByPXRhO24mJm9hKGUsbik/dWEocix0KTooZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsbGE9ITEsdGE9ZSl9fWVsc2V7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixsYT0hMSx0YT1lfX19ZnVuY3Rpb24gY2EoZSl7Zm9yKGU9ZS5yZXR1cm47bnVsbCE9PWUmJjUhPT1lLnRhZyYmMyE9PWUudGFnJiYxMyE9PWUudGFnOyllPWUucmV0dXJuO3RhPWV9ZnVuY3Rpb24gZmEoZSl7aWYoZSE9PXRhKXJldHVybiExO2lmKCFsYSlyZXR1cm4gY2EoZSksbGE9ITAsITE7dmFyIG4KO2lmKChuPTMhPT1lLnRhZykmJiEobj01IT09ZS50YWcpJiYobj0iaGVhZCIhPT0obj1lLnR5cGUpJiYiYm9keSIhPT1uJiYhdGwoZS50eXBlLGUubWVtb2l6ZWRQcm9wcykpLG4mJihuPXJhKSl7aWYoaWEoZSkpdGhyb3cgZGEoKSxFcnJvcihhKDQxOCkpO2Zvcig7bjspdWEoZSxuKSxuPXNsKG4ubmV4dFNpYmxpbmcpfWlmKGNhKGUpLDEzPT09ZS50YWcpe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IoYSgzMTcpKTtlOntmb3IoZT1lLm5leHRTaWJsaW5nLG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiLyQiPT09dCl7aWYoMD09PW4pe3JhPXNsKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9bi0tfWVsc2UiJCIhPT10JiYiJCEiIT09dCYmIiQ/IiE9PXR8fG4rK31lPWUubmV4dFNpYmxpbmd9cmE9bnVsbH19ZWxzZSByYT10YT9zbChlLnN0YXRlTm9kZS5uZXh0U2libGluZyk6bnVsbDtyZXR1cm4hMH1mdW5jdGlvbiBkYSgpe2Zvcih2YXIgZT1yYTtlOyllPXNsKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHBhKCl7cmE9dGE9bnVsbCxsYT0hMX1mdW5jdGlvbiBtYShlKXtudWxsPT09YWE/YWE9W2VdOmFhLnB1c2goZSl9dmFyIGhhPWsuUmVhY3RDdXJyZW50QmF0Y2hDb25maWc7ZnVuY3Rpb24gZ2EoZSxuKXtpZihlJiZlLmRlZmF1bHRQcm9wcyl7Zm9yKHZhciB0IGluIG49Tyh7fSxuKSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW5bdF0mJihuW3RdPWVbdF0pO3JldHVybiBufXJldHVybiBufXZhciB2YT1FbChudWxsKSx5YT1udWxsLGJhPW51bGwsa2E9bnVsbDtmdW5jdGlvbiB3YSgpe2thPWJhPXlhPW51bGx9ZnVuY3Rpb24gU2EoZSl7dmFyIG49dmEuY3VycmVudDtDbCh2YSksZS5fY3VycmVudFZhbHVlPW59ZnVuY3Rpb24geGEoZSxuLHQpe2Zvcig7bnVsbCE9PWU7KXt2YXIgcj1lLmFsdGVybmF0ZTtpZigoZS5jaGlsZExhbmVzJm4pIT09bj8oZS5jaGlsZExhbmVzfD1uLG51bGwhPT1yJiYoci5jaGlsZExhbmVzfD1uKSk6bnVsbCE9PXImJihyLmNoaWxkTGFuZXMmbikhPT1uJiYoci5jaGlsZExhbmVzfD1uKSxlPT09dClicmVhaztlPWUucmV0dXJufX1mdW5jdGlvbiBFYShlLG4pe3lhPWUsa2E9YmE9bnVsbCxudWxsIT09KGU9ZS5kZXBlbmRlbmNpZXMpJiZudWxsIT09ZS5maXJzdENvbnRleHQmJighIShlLmxhbmVzJm4pJiYoa289ITApLGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIENhKGUpe3ZhciBuPWUuX2N1cnJlbnRWYWx1ZTtpZihrYSE9PWUpaWYoZT17Y29udGV4dDplLG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1iYSl7aWYobnVsbD09PXlhKXRocm93IEVycm9yKGEoMzA4KSk7YmE9ZSx5YS5kZXBlbmRlbmNpZXM9e2xhbmVzOjAsZmlyc3RDb250ZXh0OmV9fWVsc2UgYmE9YmEubmV4dD1lO3JldHVybiBufXZhciB6YT1udWxsO2Z1bmN0aW9uIE5hKGUpe251bGw9PT16YT96YT1bZV06emEucHVzaChlKX1mdW5jdGlvbiBfYShlLG4sdCxyKXt2YXIgbD1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09bD8odC5uZXh0PXQsTmEobikpOih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxuLmludGVybGVhdmVkPXQsUGEoZSxyKX1mdW5jdGlvbiBQYShlLG4pe2UubGFuZXN8PW47dmFyIHQ9ZS5hbHRlcm5hdGU7Zm9yKG51bGwhPT10JiYodC5sYW5lc3w9biksdD1lLGU9ZS5yZXR1cm47bnVsbCE9PWU7KWUuY2hpbGRMYW5lc3w9bixudWxsIT09KHQ9ZS5hbHRlcm5hdGUpJiYodC5jaGlsZExhbmVzfD1uKSx0PWUsZT1lLnJldHVybjtyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlOm51bGx9dmFyIFRhPSExO2Z1bmN0aW9uIExhKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxpbnRlcmxlYXZlZDpudWxsLGxhbmVzOjB9LGVmZmVjdHM6bnVsbH19ZnVuY3Rpb24gTWEoZSxuKXtlPWUudXBkYXRlUXVldWUsbi51cGRhdGVRdWV1ZT09PWUmJihuLnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGVmZmVjdHM6ZS5lZmZlY3RzfSl9ZnVuY3Rpb24gRmEoZSxuKXtyZXR1cm57ZXZlbnRUaW1lOmUsbGFuZTpuLHRhZzowLHBheWxvYWQ6bnVsbCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH19ZnVuY3Rpb24gUmEoZSxuLHQpe3ZhciByPWUudXBkYXRlUXVldWU7aWYobnVsbD09PXIpcmV0dXJuIG51bGw7aWYocj1yLnNoYXJlZCwyJl9pKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP24ubmV4dD1uOihuLm5leHQ9bC5uZXh0LGwubmV4dD1uKSxyLnBlbmRpbmc9bixQYShlLHQpfXJldHVybiBudWxsPT09KGw9ci5pbnRlcmxlYXZlZCk/KG4ubmV4dD1uLE5hKHIpKToobi5uZXh0PWwubmV4dCxsLm5leHQ9biksci5pbnRlcmxlYXZlZD1uLFBhKGUsdCl9ZnVuY3Rpb24gRGEoZSxuLHQpe2lmKG51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKSYmKG49bi5zaGFyZWQsNDE5NDI0MCZ0KSl7dmFyIHI9bi5sYW5lczt0fD1yJj1lLnBlbmRpbmdMYW5lcyxuLmxhbmVzPXQsYm4oZSx0KX19ZnVuY3Rpb24gSWEoZSxuKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJnQ9PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PSh0PXQuZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIHU9e2V2ZW50VGltZTp0LmV2ZW50VGltZSxsYW5lOnQubGFuZSx0YWc6dC50YWcscGF5bG9hZDp0LnBheWxvYWQsY2FsbGJhY2s6dC5jYWxsYmFjayxuZXh0Om51bGx9O251bGw9PT1hP2w9YT11OmE9YS5uZXh0PXUsdD10Lm5leHR9d2hpbGUobnVsbCE9PXQpO251bGw9PT1hP2w9YT1uOmE9YS5uZXh0PW59ZWxzZSBsPWE9bjtyZXR1cm4gdD17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsCnNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sdm9pZChlLnVwZGF0ZVF1ZXVlPXQpfW51bGw9PT0oZT10Lmxhc3RCYXNlVXBkYXRlKT90LmZpcnN0QmFzZVVwZGF0ZT1uOmUubmV4dD1uLHQubGFzdEJhc2VVcGRhdGU9bn1mdW5jdGlvbiBPYShlLG4sdCxyKXt2YXIgbD1lLnVwZGF0ZVF1ZXVlO1RhPSExO3ZhciBhPWwuZmlyc3RCYXNlVXBkYXRlLHU9bC5sYXN0QmFzZVVwZGF0ZSxvPWwuc2hhcmVkLnBlbmRpbmc7aWYobnVsbCE9PW8pe2wuc2hhcmVkLnBlbmRpbmc9bnVsbDt2YXIgaT1vLHM9aS5uZXh0O2kubmV4dD1udWxsLG51bGw9PT11P2E9czp1Lm5leHQ9cyx1PWk7dmFyIGM9ZS5hbHRlcm5hdGU7bnVsbCE9PWMmJigobz0oYz1jLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT11JiYobnVsbD09PW8/Yy5maXJzdEJhc2VVcGRhdGU9czpvLm5leHQ9cyxjLmxhc3RCYXNlVXBkYXRlPWkpKX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKHU9MCxjPXM9aT1udWxsLG89YTs7KXt2YXIgZD1vLmxhbmUscD1vLmV2ZW50VGltZTtpZigociZkKT09PWQpe251bGwhPT1jJiYoYz1jLm5leHQ9e2V2ZW50VGltZTpwLGxhbmU6MCx0YWc6by50YWcscGF5bG9hZDpvLnBheWxvYWQsY2FsbGJhY2s6by5jYWxsYmFjayxuZXh0Om51bGx9KTtlOnt2YXIgbT1lLGg9bztzd2l0Y2goZD1uLHA9dCxoLnRhZyl7Y2FzZSAxOmlmKCJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCkpe2Y9bS5jYWxsKHAsZixkKTticmVhayBlfWY9bTticmVhayBlO2Nhc2UgMzptLmZsYWdzPS02NTUzNyZtLmZsYWdzfDEyODtjYXNlIDA6aWYobnVsbD09KGQ9ImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKT9tLmNhbGwocCxmLGQpOm0pKWJyZWFrIGU7Zj1PKHt9LGYsZCk7YnJlYWsgZTtjYXNlIDI6VGE9ITB9fW51bGwhPT1vLmNhbGxiYWNrJiYwIT09by5sYW5lJiYoZS5mbGFnc3w9NjQsbnVsbD09PShkPWwuZWZmZWN0cyk/bC5lZmZlY3RzPVtvXTpkLnB1c2gobykpfWVsc2UgcD17ZXZlbnRUaW1lOnAsbGFuZTpkLHRhZzpvLnRhZyxwYXlsb2FkOm8ucGF5bG9hZCxjYWxsYmFjazpvLmNhbGxiYWNrLG5leHQ6bnVsbH0sbnVsbD09PWM/KHM9Yz1wLGk9Zik6Yz1jLm5leHQ9cCx1fD1kO2lmKG51bGw9PT0obz1vLm5leHQpKXtpZihudWxsPT09KG89bC5zaGFyZWQucGVuZGluZykpYnJlYWs7bz0oZD1vKS5uZXh0LGQubmV4dD1udWxsLGwubGFzdEJhc2VVcGRhdGU9ZCxsLnNoYXJlZC5wZW5kaW5nPW51bGx9fWlmKG51bGw9PT1jJiYoaT1mKSxsLmJhc2VTdGF0ZT1pLGwuZmlyc3RCYXNlVXBkYXRlPXMsbC5sYXN0QmFzZVVwZGF0ZT1jLG51bGwhPT0obj1sLnNoYXJlZC5pbnRlcmxlYXZlZCkpe2w9bjtkb3t1fD1sLmxhbmUsbD1sLm5leHR9d2hpbGUobCE9PW4pfWVsc2UgbnVsbD09PWEmJihsLnNoYXJlZC5sYW5lcz0wKTtJaXw9dSxlLmxhbmVzPXUsZS5tZW1vaXplZFN0YXRlPWZ9fWZ1bmN0aW9uIFVhKGUsbix0KXtpZihlPW4uZWZmZWN0cyxuLmVmZmVjdHM9bnVsbCxudWxsIT09ZSlmb3Iobj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5jYWxsYmFjaztpZihudWxsIT09bCl7aWYoci5jYWxsYmFjaz1udWxsLHI9dCwiZnVuY3Rpb24iIT10eXBlb2YgbCl0aHJvdyBFcnJvcihhKDE5MSxsKSk7bC5jYWxsKHIpfX19dmFyIFZhPShuZXcgci5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gQWEoZSxuLHQscil7dD1udWxsPT0odD10KHIsbj1lLm1lbW9pemVkU3RhdGUpKT9uOk8oe30sbix0KSxlLm1lbW9pemVkU3RhdGU9dCwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPXQpfXZhciBCYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZXZShlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EucGF5bG9hZD1uLG51bGwhPXQmJihhLmNhbGxiYWNrPXQpLG51bGwhPT0obj1SYShlLGEsbCkpJiYodHMobixlLGwsciksRGEobixlLGwpKX0sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EudGFnPTEsYS5wYXlsb2FkPW4sbnVsbCE9dCYmKGEuY2FsbGJhY2s9dCksbnVsbCE9PShuPVJhKGUsYSxsKSkmJih0cyhuLGUsbCxyKSxEYShuLGUsbCkpfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oZSxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciB0PWVzKCkscj1ucyhlKSxsPUZhKHQscik7bC50YWc9MixudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KG49UmEoZSxsLHIpKSYmKHRzKG4sZSxyLHQpLERhKG4sZSxyKSl9fTtmdW5jdGlvbiBXYShlLG4sdCxyLGwsYSx1KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSx1KTohbi5wcm90b3R5cGV8fCFuLnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudHx8KCFpcih0LHIpfHwhaXIobCxhKSl9ZnVuY3Rpb24gSGEoZSxuLHQpe3ZhciByPSExLGw9TmwsYT1uLmNvbnRleHRUeXBlO3JldHVybiJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/YT1DYShhKToobD1NbChuKT9UbDpfbC5jdXJyZW50LGE9KHI9bnVsbCE9KHI9bi5jb250ZXh0VHlwZXMpKT9MbChlLGwpOk5sKSxuPW5ldyBuKHQsYSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT1uLnN0YXRlJiZ2b2lkIDAhPT1uLnN0YXRlP24uc3RhdGU6bnVsbCxuLnVwZGF0ZXI9QmEsZS5zdGF0ZU5vZGU9bixuLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1sLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksbn1mdW5jdGlvbiBRYShlLG4sdCxyKXtlPW4uc3RhdGUsCiJmdW5jdGlvbiI9PXR5cGVvZiBuLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJm4uY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyh0LHIpLCJmdW5jdGlvbiI9PXR5cGVvZiBuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKHQsciksbi5zdGF0ZSE9PWUmJkJhLmVucXVldWVSZXBsYWNlU3RhdGUobixuLnN0YXRlLG51bGwpfWZ1bmN0aW9uIGphKGUsbix0LHIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucHJvcHM9dCxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxsLnJlZnM9VmEsTGEoZSk7dmFyIGE9bi5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2wuY29udGV4dD1DYShhKTooYT1NbChuKT9UbDpfbC5jdXJyZW50LGwuY29udGV4dD1MbChlLGEpKSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2YoYT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihBYShlLG4sYSx0KSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgbC5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGwuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwuY29tcG9uZW50V2lsbE1vdW50fHwobj1sLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudFdpbGxNb3VudCYmbC5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgbC5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZsLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxuIT09bC5zdGF0ZSYmQmEuZW5xdWV1ZVJlcGxhY2VTdGF0ZShsLGwuc3RhdGUsbnVsbCksT2EoZSx0LGwsciksbC5zdGF0ZT1lLm1lbW9pemVkU3RhdGUpLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudERpZE1vdW50JiYoZS5mbGFnc3w9NDE5NDMwOCl9ZnVuY3Rpb24gJGEoZSxuLHQpe2lmKG51bGwhPT0oZT10LnJlZikmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIGUpe2lmKHQuX293bmVyKXtpZih0PXQuX293bmVyKXtpZigxIT09dC50YWcpdGhyb3cgRXJyb3IoYSgzMDkpKTt2YXIgcj10LnN0YXRlTm9kZX1pZighcil0aHJvdyBFcnJvcihhKDE0NyxlKSk7dmFyIGw9cix1PSIiK2U7cmV0dXJuIG51bGwhPT1uJiZudWxsIT09bi5yZWYmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnJlZiYmbi5yZWYuX3N0cmluZ1JlZj09PXU/bi5yZWY6KG49ZnVuY3Rpb24oZSl7dmFyIG49bC5yZWZzO249PT1WYSYmKG49bC5yZWZzPXt9KSxudWxsPT09ZT9kZWxldGUgblt1XTpuW3VdPWV9LG4uX3N0cmluZ1JlZj11LG4pfWlmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBFcnJvcihhKDI4NCkpO2lmKCF0Ll9vd25lcil0aHJvdyBFcnJvcihhKDI5MCxlKSl9cmV0dXJuIGV9ZnVuY3Rpb24gcWEoZSxuKXt0aHJvdyBlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChuKSxFcnJvcihhKDMxLCJbb2JqZWN0IE9iamVjdF0iPT09ZT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyhuKS5qb2luKCIsICIpKyJ9IjplKSl9ZnVuY3Rpb24gS2EoZSl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9ZnVuY3Rpb24gWWEoZSl7ZnVuY3Rpb24gbihuLHQpe2lmKGUpe3ZhciByPW4uZGVsZXRpb25zO251bGw9PT1yPyhuLmRlbGV0aW9ucz1bdF0sbi5mbGFnc3w9MTYpOnIucHVzaCh0KX19ZnVuY3Rpb24gdCh0LHIpe2lmKCFlKXJldHVybiBudWxsO2Zvcig7bnVsbCE9PXI7KW4odCxyKSxyPXIuc2libGluZztyZXR1cm4gbnVsbH1mdW5jdGlvbiByKGUsbil7Zm9yKGU9bmV3IE1hcDtudWxsIT09bjspbnVsbCE9PW4ua2V5P2Uuc2V0KG4ua2V5LG4pOmUuc2V0KG4uaW5kZXgsbiksbj1uLnNpYmxpbmc7cmV0dXJuIGV9ZnVuY3Rpb24gbChlLG4pe3JldHVybihlPUZzKGUsbikpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiB1KG4sdCxyKXtyZXR1cm4gbi5pbmRleD1yLGU/bnVsbCE9PShyPW4uYWx0ZXJuYXRlKT8ocj1yLmluZGV4KTx0PyhuLmZsYWdzfD0yLHQpOnI6KG4uZmxhZ3N8PTIsdCk6KG4uZmxhZ3N8PTEwNDg1NzYsdCl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gZSYmbnVsbD09PW4uYWx0ZXJuYXRlJiYobi5mbGFnc3w9Miksbn1mdW5jdGlvbiBpKGUsbix0LHIpe3JldHVybiBudWxsPT09bnx8NiE9PW4udGFnPygobj1Pcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gcyhlLG4sdCxyKXt2YXIgYT10LnR5cGU7cmV0dXJuIGE9PT14P2YoZSxuLHQucHJvcHMuY2hpbGRyZW4scix0LmtleSk6bnVsbCE9PW4mJihuLmVsZW1lbnRUeXBlPT09YXx8Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmYS4kJHR5cGVvZj09PU0mJkthKGEpPT09bi50eXBlKT8oKHI9bChuLHQucHJvcHMpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscik6KChyPVJzKHQudHlwZSx0LmtleSx0LnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gYyhlLG4sdCxyKXtyZXR1cm4gbnVsbD09PW58fDQhPT1uLnRhZ3x8bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PXQuY29udGFpbmVySW5mb3x8bi5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT10LmltcGxlbWVudGF0aW9uPygobj1Vcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0LmNoaWxkcmVufHxbXSkpLnJldHVybj1lLG4pfWZ1bmN0aW9uIGYoZSxuLHQscixhKXtyZXR1cm4gbnVsbD09PW58fDchPT1uLnRhZz8oKG49RHModCxlLm1vZGUscixhKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gZChlLG4sdCl7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4obj1PcygiIituLGUubW9kZSx0KSkucmV0dXJuPWUsbjtpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXsKc3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4odD1ScyhuLnR5cGUsbi5rZXksbi5wcm9wcyxudWxsLGUubW9kZSx0KSkucmVmPSRhKGUsbnVsbCxuKSx0LnJldHVybj1lLHQ7Y2FzZSBTOnJldHVybihuPVVzKG4sZS5tb2RlLHQpKS5yZXR1cm49ZSxuO2Nhc2UgTTpyZXR1cm4gZChlLCgwLG4uX2luaXQpKG4uX3BheWxvYWQpLHQpfWlmKG5lKG4pfHxEKG4pKXJldHVybihuPURzKG4sZS5tb2RlLHQsbnVsbCkpLnJldHVybj1lLG47cWEoZSxuKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsbix0LHIpe3ZhciBsPW51bGwhPT1uP24ua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gbnVsbCE9PWw/bnVsbDppKGUsbiwiIit0LHIpO2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe3N3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIHc6cmV0dXJuIHQua2V5PT09bD9zKGUsbix0LHIpOm51bGw7Y2FzZSBTOnJldHVybiB0LmtleT09PWw/YyhlLG4sdCxyKTpudWxsO2Nhc2UgTTpyZXR1cm4gcChlLG4sKGw9dC5faW5pdCkodC5fcGF5bG9hZCkscil9aWYobmUodCl8fEQodCkpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLG4sdCxyLG51bGwpO3FhKGUsdCl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLG4sdCxyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHIpcmV0dXJuIGkobixlPWUuZ2V0KHQpfHxudWxsLCIiK3IsbCk7aWYoIm9iamVjdCI9PXR5cGVvZiByJiZudWxsIT09cil7c3dpdGNoKHIuJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4gcyhuLGU9ZS5nZXQobnVsbD09PXIua2V5P3Q6ci5rZXkpfHxudWxsLHIsbCk7Y2FzZSBTOnJldHVybiBjKG4sZT1lLmdldChudWxsPT09ci5rZXk/dDpyLmtleSl8fG51bGwscixsKTtjYXNlIE06cmV0dXJuIG0oZSxuLHQsKDAsci5faW5pdCkoci5fcGF5bG9hZCksbCl9aWYobmUocil8fEQocikpcmV0dXJuIGYobixlPWUuZ2V0KHQpfHxudWxsLHIsbCxudWxsKTtxYShuLHIpfXJldHVybiBudWxsfWZ1bmN0aW9uIGgobCxhLG8saSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9YSxoPWE9MCxnPW51bGw7bnVsbCE9PWYmJmg8by5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLG9baF0saSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJm4obCxmKSxhPXUodixhLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1vLmxlbmd0aClyZXR1cm4gdChsLGYpLGxhJiZabChsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxvLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxvW2hdLGkpKSYmKGE9dShmLGEsaCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIGxhJiZabChsLGgpLHN9Zm9yKGY9cihsLGYpO2g8by5sZW5ndGg7aCsrKW51bGwhPT0oZz1tKGYsbCxoLG9baF0saSkpJiYoZSYmbnVsbCE9PWcuYWx0ZXJuYXRlJiZmLmRlbGV0ZShudWxsPT09Zy5rZXk/aDpnLmtleSksYT11KGcsYSxoKSxudWxsPT09Yz9zPWc6Yy5zaWJsaW5nPWcsYz1nKTtyZXR1cm4gZSYmZi5mb3JFYWNoKChmdW5jdGlvbihlKXtyZXR1cm4gbihsLGUpfSkpLGxhJiZabChsLGgpLHN9ZnVuY3Rpb24gZyhsLG8saSxzKXt2YXIgYz1EKGkpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBjKXRocm93IEVycm9yKGEoMTUwKSk7aWYobnVsbD09KGk9Yy5jYWxsKGkpKSl0aHJvdyBFcnJvcihhKDE1MSkpO2Zvcih2YXIgZj1jPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJm4obCxoKSxvPXUoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gdChsLGgpLGxhJiZabChsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz11KHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gbGEmJlpsKGwsZyksY31mb3IoaD1yKGwsaCk7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9bShoLGwsZyx5LnZhbHVlLHMpKSYmKGUmJm51bGwhPT15LmFsdGVybmF0ZSYmaC5kZWxldGUobnVsbD09PXkua2V5P2c6eS5rZXkpLG89dSh5LG8sZyksbnVsbD09PWY/Yz15OmYuc2libGluZz15LGY9eSk7cmV0dXJuIGUmJmguZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIG4obCxlKX0pKSxsYSYmWmwobCxnKSxjfXJldHVybiBmdW5jdGlvbiBlKHIsYSx1LGkpe2lmKCJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJnUudHlwZT09PXgmJm51bGw9PT11LmtleSYmKHU9dS5wcm9wcy5jaGlsZHJlbiksIm9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSl7c3dpdGNoKHUuJCR0eXBlb2Ype2Nhc2UgdzplOntmb3IodmFyIHM9dS5rZXksYz1hO251bGwhPT1jOyl7aWYoYy5rZXk9PT1zKXtpZigocz11LnR5cGUpPT09eCl7aWYoNz09PWMudGFnKXt0KHIsYy5zaWJsaW5nKSwoYT1sKGMsdS5wcm9wcy5jaGlsZHJlbikpLnJldHVybj1yLHI9YTticmVhayBlfX1lbHNlIGlmKGMuZWxlbWVudFR5cGU9PT1zfHwib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zJiZzLiQkdHlwZW9mPT09TSYmS2Eocyk9PT1jLnR5cGUpe3QocixjLnNpYmxpbmcpLChhPWwoYyx1LnByb3BzKSkucmVmPSRhKHIsYyx1KSxhLnJldHVybj1yLHI9YTticmVhayBlfXQocixjKTticmVha31uKHIsYyksYz1jLnNpYmxpbmd9dS50eXBlPT09eD8oKGE9RHModS5wcm9wcy5jaGlsZHJlbixyLm1vZGUsaSx1LmtleSkpLnJldHVybj1yLHI9YSk6KChpPVJzKHUudHlwZSx1LmtleSx1LnByb3BzLG51bGwsci5tb2RlLGkpKS5yZWY9JGEocixhLHUpLAppLnJldHVybj1yLHI9aSl9cmV0dXJuIG8ocik7Y2FzZSBTOmU6e2ZvcihjPXUua2V5O251bGwhPT1hOyl7aWYoYS5rZXk9PT1jKXtpZig0PT09YS50YWcmJmEuc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT11LmNvbnRhaW5lckluZm8mJmEuc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09dS5pbXBsZW1lbnRhdGlvbil7dChyLGEuc2libGluZyksKGE9bChhLHUuY2hpbGRyZW58fFtdKSkucmV0dXJuPXIscj1hO2JyZWFrIGV9dChyLGEpO2JyZWFrfW4ocixhKSxhPWEuc2libGluZ30oYT1Vcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hfXJldHVybiBvKHIpO2Nhc2UgTTpyZXR1cm4gZShyLGEsKGM9dS5faW5pdCkodS5fcGF5bG9hZCksaSl9aWYobmUodSkpcmV0dXJuIGgocixhLHUsaSk7aWYoRCh1KSlyZXR1cm4gZyhyLGEsdSxpKTtxYShyLHUpfXJldHVybiJzdHJpbmciPT10eXBlb2YgdSYmIiIhPT11fHwibnVtYmVyIj09dHlwZW9mIHU/KHU9IiIrdSxudWxsIT09YSYmNj09PWEudGFnPyh0KHIsYS5zaWJsaW5nKSwoYT1sKGEsdSkpLnJldHVybj1yLHI9YSk6KHQocixhKSwoYT1Pcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hKSxvKHIpKTp0KHIsYSl9fXZhciBYYT1ZYSghMCksR2E9WWEoITEpLFphPXt9LEphPUVsKFphKSxldT1FbChaYSksbnU9RWwoWmEpO2Z1bmN0aW9uIHR1KGUpe2lmKGU9PT1aYSl0aHJvdyBFcnJvcihhKDE3NCkpO3JldHVybiBlfWZ1bmN0aW9uIHJ1KGUsbil7c3dpdGNoKHpsKG51LG4pLHpsKGV1LGUpLHpsKEphLFphKSxlPW4ubm9kZVR5cGUpe2Nhc2UgOTpjYXNlIDExOm49KG49bi5kb2N1bWVudEVsZW1lbnQpP24ubmFtZXNwYWNlVVJJOmllKG51bGwsIiIpO2JyZWFrO2RlZmF1bHQ6bj1pZShuPShlPTg9PT1lP24ucGFyZW50Tm9kZTpuKS5uYW1lc3BhY2VVUkl8fG51bGwsZT1lLnRhZ05hbWUpfUNsKEphKSx6bChKYSxuKX1mdW5jdGlvbiBsdSgpe0NsKEphKSxDbChldSksQ2wobnUpfWZ1bmN0aW9uIGF1KGUpe3R1KG51LmN1cnJlbnQpO3ZhciBuPXR1KEphLmN1cnJlbnQpLHQ9aWUobixlLnR5cGUpO24hPT10JiYoemwoZXUsZSksemwoSmEsdCkpfWZ1bmN0aW9uIHV1KGUpe2V1LmN1cnJlbnQ9PT1lJiYoQ2woSmEpLENsKGV1KSl9dmFyIG91PUVsKDApO2Z1bmN0aW9uIGl1KGUpe2Zvcih2YXIgbj1lO251bGwhPT1uOyl7aWYoMTM9PT1uLnRhZyl7dmFyIHQ9bi5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10JiYobnVsbD09PSh0PXQuZGVoeWRyYXRlZCl8fCIkPyI9PT10LmRhdGF8fCIkISI9PT10LmRhdGEpKXJldHVybiBufWVsc2UgaWYoMTk9PT1uLnRhZyYmdm9pZCAwIT09bi5tZW1vaXplZFByb3BzLnJldmVhbE9yZGVyKXtpZigxMjgmbi5mbGFncylyZXR1cm4gbn1lbHNlIGlmKG51bGwhPT1uLmNoaWxkKXtuLmNoaWxkLnJldHVybj1uLG49bi5jaGlsZDtjb250aW51ZX1pZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHN1PVtdO2Z1bmN0aW9uIGN1KCl7Zm9yKHZhciBlPTA7ZTxzdS5sZW5ndGg7ZSsrKXN1W2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7c3UubGVuZ3RoPTB9dmFyIGZ1PWsuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixkdT1rLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHB1PTAsbXU9bnVsbCxodT1udWxsLGd1PW51bGwsdnU9ITEseXU9ITEsYnU9MCxrdT0wO2Z1bmN0aW9uIHd1KCl7dGhyb3cgRXJyb3IoYSgzMjEpKX1mdW5jdGlvbiBTdShlLG4pe2lmKG51bGw9PT1uKXJldHVybiExO2Zvcih2YXIgdD0wO3Q8bi5sZW5ndGgmJnQ8ZS5sZW5ndGg7dCsrKWlmKCFvcihlW3RdLG5bdF0pKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIHh1KGUsbix0LHIsbCx1KXtpZihwdT11LG11PW4sbi5tZW1vaXplZFN0YXRlPW51bGwsbi51cGRhdGVRdWV1ZT1udWxsLG4ubGFuZXM9MCxmdS5jdXJyZW50PW51bGw9PT1lfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlP3VvOm9vLGU9dChyLGwpLHl1KXt1PTA7ZG97aWYoeXU9ITEsYnU9MCwyNTw9dSl0aHJvdyBFcnJvcihhKDMwMSkpO3UrPTEsZ3U9aHU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsZnUuY3VycmVudD1pbyxlPXQocixsKX13aGlsZSh5dSl9aWYoZnUuY3VycmVudD1hbyxuPW51bGwhPT1odSYmbnVsbCE9PWh1Lm5leHQscHU9MCxndT1odT1tdT1udWxsLHZ1PSExLG4pdGhyb3cgRXJyb3IoYSgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFdSgpe3ZhciBlPTAhPT1idTtyZXR1cm4gYnU9MCxlfWZ1bmN0aW9uIEN1KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1ndT9tdS5tZW1vaXplZFN0YXRlPWd1PWU6Z3U9Z3UubmV4dD1lLGd1fWZ1bmN0aW9uIHp1KCl7aWYobnVsbD09PWh1KXt2YXIgZT1tdS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9aHUubmV4dDt2YXIgbj1udWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZTpndS5uZXh0O2lmKG51bGwhPT1uKWd1PW4saHU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKGEoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooaHU9ZSkubWVtb2l6ZWRTdGF0ZSxiYXNlU3RhdGU6aHUuYmFzZVN0YXRlLGJhc2VRdWV1ZTpodS5iYXNlUXVldWUscXVldWU6aHUucXVldWUsbmV4dDpudWxsfSxudWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZT1ndT1lOmd1PWd1Lm5leHQ9ZX1yZXR1cm4gZ3V9ZnVuY3Rpb24gTnUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uKGUpOm59ZnVuY3Rpb24gX3UoZSl7dmFyIG49enUoKSx0PW4ucXVldWU7aWYobnVsbD09PXQpdGhyb3cgRXJyb3IoYSgzMTEpKTt0Lmxhc3RSZW5kZXJlZFJlZHVjZXI9ZTt2YXIgcj1odSxsPXIuYmFzZVF1ZXVlLHU9dC5wZW5kaW5nO2lmKG51bGwhPT11KXtpZihudWxsIT09bCl7dmFyIG89bC5uZXh0CjtsLm5leHQ9dS5uZXh0LHUubmV4dD1vfXIuYmFzZVF1ZXVlPWw9dSx0LnBlbmRpbmc9bnVsbH1pZihudWxsIT09bCl7dT1sLm5leHQscj1yLmJhc2VTdGF0ZTt2YXIgaT1vPW51bGwscz1udWxsLGM9dTtkb3t2YXIgZj1jLmxhbmU7aWYoKHB1JmYpPT09ZiludWxsIT09cyYmKHM9cy5uZXh0PXtsYW5lOjAsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLHI9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTplKHIsYy5hY3Rpb24pO2Vsc2V7dmFyIGQ9e2xhbmU6ZixhY3Rpb246Yy5hY3Rpb24saGFzRWFnZXJTdGF0ZTpjLmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTpjLmVhZ2VyU3RhdGUsbmV4dDpudWxsfTtudWxsPT09cz8oaT1zPWQsbz1yKTpzPXMubmV4dD1kLG11LmxhbmVzfD1mLElpfD1mfWM9Yy5uZXh0fXdoaWxlKG51bGwhPT1jJiZjIT09dSk7bnVsbD09PXM/bz1yOnMubmV4dD1pLG9yKHIsbi5tZW1vaXplZFN0YXRlKXx8KGtvPSEwKSxuLm1lbW9pemVkU3RhdGU9cixuLmJhc2VTdGF0ZT1vLG4uYmFzZVF1ZXVlPXMsdC5sYXN0UmVuZGVyZWRTdGF0ZT1yfWlmKG51bGwhPT0oZT10LmludGVybGVhdmVkKSl7bD1lO2Rve3U9bC5sYW5lLG11LmxhbmVzfD11LElpfD11LGw9bC5uZXh0fXdoaWxlKGwhPT1lKX1lbHNlIG51bGw9PT1sJiYodC5sYW5lcz0wKTtyZXR1cm5bbi5tZW1vaXplZFN0YXRlLHQuZGlzcGF0Y2hdfWZ1bmN0aW9uIFB1KGUpe3ZhciBuPXp1KCksdD1uLnF1ZXVlO2lmKG51bGw9PT10KXRocm93IEVycm9yKGEoMzExKSk7dC5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9dC5kaXNwYXRjaCxsPXQucGVuZGluZyx1PW4ubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7dC5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG97dT1lKHUsby5hY3Rpb24pLG89by5uZXh0fXdoaWxlKG8hPT1sKTtvcih1LG4ubWVtb2l6ZWRTdGF0ZSl8fChrbz0hMCksbi5tZW1vaXplZFN0YXRlPXUsbnVsbD09PW4uYmFzZVF1ZXVlJiYobi5iYXNlU3RhdGU9dSksdC5sYXN0UmVuZGVyZWRTdGF0ZT11fXJldHVyblt1LHJdfWZ1bmN0aW9uIFR1KCl7fWZ1bmN0aW9uIEx1KGUsbil7dmFyIHQ9bXUscj16dSgpLGw9bigpLHU9IW9yKHIubWVtb2l6ZWRTdGF0ZSxsKTtpZih1JiYoci5tZW1vaXplZFN0YXRlPWwsa289ITApLHI9ci5xdWV1ZSxIdShSdS5iaW5kKG51bGwsdCxyLGUpLFtlXSksci5nZXRTbmFwc2hvdCE9PW58fHV8fG51bGwhPT1ndSYmMSZndS5tZW1vaXplZFN0YXRlLnRhZyl7aWYodC5mbGFnc3w9MjA0OCxVdSg5LEZ1LmJpbmQobnVsbCx0LHIsbCxuKSx2b2lkIDAsbnVsbCksbnVsbD09PVBpKXRocm93IEVycm9yKGEoMzQ5KSk7MzAmcHV8fE11KHQsbixsKX1yZXR1cm4gbH1mdW5jdGlvbiBNdShlLG4sdCl7ZS5mbGFnc3w9MTYzODQsZT17Z2V0U25hcHNob3Q6bix2YWx1ZTp0fSxudWxsPT09KG49bXUudXBkYXRlUXVldWUpPyhuPXtsYXN0RWZmZWN0Om51bGwsc3RvcmVzOm51bGx9LG11LnVwZGF0ZVF1ZXVlPW4sbi5zdG9yZXM9W2VdKTpudWxsPT09KHQ9bi5zdG9yZXMpP24uc3RvcmVzPVtlXTp0LnB1c2goZSl9ZnVuY3Rpb24gRnUoZSxuLHQscil7bi52YWx1ZT10LG4uZ2V0U25hcHNob3Q9cixEdShuKSYmSXUoZSl9ZnVuY3Rpb24gUnUoZSxuLHQpe3JldHVybiB0KChmdW5jdGlvbigpe0R1KG4pJiZJdShlKX0pKX1mdW5jdGlvbiBEdShlKXt2YXIgbj1lLmdldFNuYXBzaG90O2U9ZS52YWx1ZTt0cnl7dmFyIHQ9bigpO3JldHVybiFvcihlLHQpfWNhdGNoKGUpe3JldHVybiEwfX1mdW5jdGlvbiBJdShlKXt2YXIgbj1QYShlLDEpO251bGwhPT1uJiZ0cyhuLGUsMSwtMSl9ZnVuY3Rpb24gT3UoZSl7dmFyIG49Q3UoKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKGU9ZSgpKSxuLm1lbW9pemVkU3RhdGU9bi5iYXNlU3RhdGU9ZSxlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjpOdSxsYXN0UmVuZGVyZWRTdGF0ZTplfSxuLnF1ZXVlPWUsZT1lLmRpc3BhdGNoPW5vLmJpbmQobnVsbCxtdSxlKSxbbi5tZW1vaXplZFN0YXRlLGVdfWZ1bmN0aW9uIFV1KGUsbix0LHIpe3JldHVybiBlPXt0YWc6ZSxjcmVhdGU6bixkZXN0cm95OnQsZGVwczpyLG5leHQ6bnVsbH0sbnVsbD09PShuPW11LnVwZGF0ZVF1ZXVlKT8obj17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSxtdS51cGRhdGVRdWV1ZT1uLG4ubGFzdEVmZmVjdD1lLm5leHQ9ZSk6bnVsbD09PSh0PW4ubGFzdEVmZmVjdCk/bi5sYXN0RWZmZWN0PWUubmV4dD1lOihyPXQubmV4dCx0Lm5leHQ9ZSxlLm5leHQ9cixuLmxhc3RFZmZlY3Q9ZSksZX1mdW5jdGlvbiBWdSgpe3JldHVybiB6dSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gQXUoZSxuLHQscil7dmFyIGw9Q3UoKTttdS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9VXUoMXxuLHQsdm9pZCAwLHZvaWQgMD09PXI/bnVsbDpyKX1mdW5jdGlvbiBCdShlLG4sdCxyKXt2YXIgbD16dSgpO3I9dm9pZCAwPT09cj9udWxsOnI7dmFyIGE9dm9pZCAwO2lmKG51bGwhPT1odSl7dmFyIHU9aHUubWVtb2l6ZWRTdGF0ZTtpZihhPXUuZGVzdHJveSxudWxsIT09ciYmU3Uocix1LmRlcHMpKXJldHVybiB2b2lkKGwubWVtb2l6ZWRTdGF0ZT1VdShuLHQsYSxyKSl9bXUuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPVV1KDF8bix0LGEscil9ZnVuY3Rpb24gV3UoZSxuKXtyZXR1cm4gQXUoODM5MDY1Niw4LGUsbil9ZnVuY3Rpb24gSHUoZSxuKXtyZXR1cm4gQnUoMjA0OCw4LGUsbil9ZnVuY3Rpb24gUXUoZSxuKXtyZXR1cm4gQnUoNCwyLGUsbil9ZnVuY3Rpb24ganUoZSxuKXtyZXR1cm4gQnUoNCw0LGUsbil9ZnVuY3Rpb24gJHUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj8oZT1lKCksbihlKSxmdW5jdGlvbigpe24obnVsbCl9KTpudWxsIT1uPyhlPWUoKSxuLmN1cnJlbnQ9ZSxmdW5jdGlvbigpe24uY3VycmVudD1udWxsfSk6dm9pZCAwfWZ1bmN0aW9uIHF1KGUsbix0KXsKcmV0dXJuIHQ9bnVsbCE9dD90LmNvbmNhdChbZV0pOm51bGwsQnUoNCw0LCR1LmJpbmQobnVsbCxuLGUpLHQpfWZ1bmN0aW9uIEt1KCl7fWZ1bmN0aW9uIFl1KGUsbil7dmFyIHQ9enUoKTtuPXZvaWQgMD09PW4/bnVsbDpuO3ZhciByPXQubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXImJm51bGwhPT1uJiZTdShuLHJbMV0pP3JbMF06KHQubWVtb2l6ZWRTdGF0ZT1bZSxuXSxlKX1mdW5jdGlvbiBYdShlLG4pe3ZhciB0PXp1KCk7bj12b2lkIDA9PT1uP251bGw6bjt2YXIgcj10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09biYmU3UobixyWzFdKT9yWzBdOihlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZSl9ZnVuY3Rpb24gR3UoZSxuLHQpe3JldHVybiAyMSZwdT8ob3IodCxuKXx8KHQ9Z24oKSxtdS5sYW5lc3w9dCxJaXw9dCxlLmJhc2VTdGF0ZT0hMCksbik6KGUuYmFzZVN0YXRlJiYoZS5iYXNlU3RhdGU9ITEsa289ITApLGUubWVtb2l6ZWRTdGF0ZT10KX1mdW5jdGlvbiBadShlLG4pe3ZhciB0PWtuO2tuPTAhPT10JiY0PnQ/dDo0LGUoITApO3ZhciByPWR1LnRyYW5zaXRpb247ZHUudHJhbnNpdGlvbj17fTt0cnl7ZSghMSksbigpfWZpbmFsbHl7a249dCxkdS50cmFuc2l0aW9uPXJ9fWZ1bmN0aW9uIEp1KCl7cmV0dXJuIHp1KCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBlbyhlLG4sdCl7dmFyIHI9bnMoZSk7aWYodD17bGFuZTpyLGFjdGlvbjp0LGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sdG8oZSkpcm8obix0KTtlbHNlIGlmKG51bGwhPT0odD1fYShlLG4sdCxyKSkpe3RzKHQsZSxyLGVzKCkpLGxvKHQsbixyKX19ZnVuY3Rpb24gbm8oZSxuLHQpe3ZhciByPW5zKGUpLGw9e2xhbmU6cixhY3Rpb246dCxoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9O2lmKHRvKGUpKXJvKG4sbCk7ZWxzZXt2YXIgYT1lLmFsdGVybmF0ZTtpZigwPT09ZS5sYW5lcyYmKG51bGw9PT1hfHwwPT09YS5sYW5lcykmJm51bGwhPT0oYT1uLmxhc3RSZW5kZXJlZFJlZHVjZXIpKXRyeXt2YXIgdT1uLmxhc3RSZW5kZXJlZFN0YXRlLG89YSh1LHQpO2lmKGwuaGFzRWFnZXJTdGF0ZT0hMCxsLmVhZ2VyU3RhdGU9byxvcihvLHUpKXt2YXIgaT1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09aT8obC5uZXh0PWwsTmEobikpOihsLm5leHQ9aS5uZXh0LGkubmV4dD1sKSx2b2lkKG4uaW50ZXJsZWF2ZWQ9bCl9fWNhdGNoKGUpe31udWxsIT09KHQ9X2EoZSxuLGwscikpJiYodHModCxlLHIsbD1lcygpKSxsbyh0LG4scikpfX1mdW5jdGlvbiB0byhlKXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gZT09PW11fHxudWxsIT09biYmbj09PW11fWZ1bmN0aW9uIHJvKGUsbil7eXU9dnU9ITA7dmFyIHQ9ZS5wZW5kaW5nO251bGw9PT10P24ubmV4dD1uOihuLm5leHQ9dC5uZXh0LHQubmV4dD1uKSxlLnBlbmRpbmc9bn1mdW5jdGlvbiBsbyhlLG4sdCl7aWYoNDE5NDI0MCZ0KXt2YXIgcj1uLmxhbmVzO3R8PXImPWUucGVuZGluZ0xhbmVzLG4ubGFuZXM9dCxibihlLHQpfX12YXIgYW89e3JlYWRDb250ZXh0OkNhLHVzZUNhbGxiYWNrOnd1LHVzZUNvbnRleHQ6d3UsdXNlRWZmZWN0Ond1LHVzZUltcGVyYXRpdmVIYW5kbGU6d3UsdXNlSW5zZXJ0aW9uRWZmZWN0Ond1LHVzZUxheW91dEVmZmVjdDp3dSx1c2VNZW1vOnd1LHVzZVJlZHVjZXI6d3UsdXNlUmVmOnd1LHVzZVN0YXRlOnd1LHVzZURlYnVnVmFsdWU6d3UsdXNlRGVmZXJyZWRWYWx1ZTp3dSx1c2VUcmFuc2l0aW9uOnd1LHVzZU11dGFibGVTb3VyY2U6d3UsdXNlU3luY0V4dGVybmFsU3RvcmU6d3UsdXNlSWQ6d3UsdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSx1bz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6ZnVuY3Rpb24oZSxuKXtyZXR1cm4gQ3UoKS5tZW1vaXplZFN0YXRlPVtlLHZvaWQgMD09PW4/bnVsbDpuXSxlfSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpXdSx1c2VJbXBlcmF0aXZlSGFuZGxlOmZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gdD1udWxsIT10P3QuY29uY2F0KFtlXSk6bnVsbCxBdSg0MTk0MzA4LDQsJHUuYmluZChudWxsLG4sZSksdCl9LHVzZUxheW91dEVmZmVjdDpmdW5jdGlvbihlLG4pe3JldHVybiBBdSg0MTk0MzA4LDQsZSxuKX0sdXNlSW5zZXJ0aW9uRWZmZWN0OmZ1bmN0aW9uKGUsbil7cmV0dXJuIEF1KDQsMixlLG4pfSx1c2VNZW1vOmZ1bmN0aW9uKGUsbil7dmFyIHQ9Q3UoKTtyZXR1cm4gbj12b2lkIDA9PT1uP251bGw6bixlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZX0sdXNlUmVkdWNlcjpmdW5jdGlvbihlLG4sdCl7dmFyIHI9Q3UoKTtyZXR1cm4gbj12b2lkIDAhPT10P3Qobik6bixyLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bixlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOm59LHIucXVldWU9ZSxlPWUuZGlzcGF0Y2g9ZW8uYmluZChudWxsLG11LGUpLFtyLm1lbW9pemVkU3RhdGUsZV19LHVzZVJlZjpmdW5jdGlvbihlKXtyZXR1cm4gZT17Y3VycmVudDplfSxDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlU3RhdGU6T3UsdXNlRGVidWdWYWx1ZTpLdSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3JldHVybiBDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3ZhciBlPU91KCExKSxuPWVbMF07cmV0dXJuIGU9WnUuYmluZChudWxsLGVbMV0pLEN1KCkubWVtb2l6ZWRTdGF0ZT1lLFtuLGVdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLG4sdCl7dmFyIHI9bXUsbD1DdSgpO2lmKGxhKXtpZih2b2lkIDA9PT10KXRocm93IEVycm9yKGEoNDA3KSk7dD10KCl9ZWxzZXtpZih0PW4oKSxudWxsPT09UGkpdGhyb3cgRXJyb3IoYSgzNDkpKTszMCZwdXx8TXUocixuLHQpfWwubWVtb2l6ZWRTdGF0ZT10O3ZhciB1PXt2YWx1ZTp0LGdldFNuYXBzaG90Om59O3JldHVybiBsLnF1ZXVlPXUsCld1KFJ1LmJpbmQobnVsbCxyLHUsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LFV1KDksRnUuYmluZChudWxsLHIsdSx0LG4pLHZvaWQgMCxudWxsKSx0fSx1c2VJZDpmdW5jdGlvbigpe3ZhciBlPUN1KCksbj1QaS5pZGVudGlmaWVyUHJlZml4O2lmKGxhKXt2YXIgdD1HbDtuPSI6IituKyJSIisodD0oWGwmfigxPDwzMi11bihYbCktMSkpLnRvU3RyaW5nKDMyKSt0KSwwPCh0PWJ1KyspJiYobis9IkgiK3QudG9TdHJpbmcoMzIpKSxuKz0iOiJ9ZWxzZSBuPSI6IituKyJyIisodD1rdSsrKS50b1N0cmluZygzMikrIjoiO3JldHVybiBlLm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxvbz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6WXUsdXNlQ29udGV4dDpDYSx1c2VFZmZlY3Q6SHUsdXNlSW1wZXJhdGl2ZUhhbmRsZTpxdSx1c2VJbnNlcnRpb25FZmZlY3Q6UXUsdXNlTGF5b3V0RWZmZWN0Omp1LHVzZU1lbW86WHUsdXNlUmVkdWNlcjpfdSx1c2VSZWY6VnUsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gX3UoTnUpfSx1c2VEZWJ1Z1ZhbHVlOkt1LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEd1KHp1KCksaHUubWVtb2l6ZWRTdGF0ZSxlKX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3JldHVybltfdShOdSlbMF0senUoKS5tZW1vaXplZFN0YXRlXX0sdXNlTXV0YWJsZVNvdXJjZTpUdSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpMdSx1c2VJZDpKdSx1bnN0YWJsZV9pc05ld1JlY29uY2lsZXI6ITF9LGlvPXtyZWFkQ29udGV4dDpDYSx1c2VDYWxsYmFjazpZdSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpIdSx1c2VJbXBlcmF0aXZlSGFuZGxlOnF1LHVzZUluc2VydGlvbkVmZmVjdDpRdSx1c2VMYXlvdXRFZmZlY3Q6anUsdXNlTWVtbzpYdSx1c2VSZWR1Y2VyOlB1LHVzZVJlZjpWdSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQdShOdSl9LHVzZURlYnVnVmFsdWU6S3UsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlKXt2YXIgbj16dSgpO3JldHVybiBudWxsPT09aHU/bi5tZW1vaXplZFN0YXRlPWU6R3UobixodS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1B1KE51KVswXSx6dSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOlR1LHVzZVN5bmNFeHRlcm5hbFN0b3JlOkx1LHVzZUlkOkp1LHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gc28oZSxuKXt0cnl7dmFyIHQ9IiIscj1uO2Rve3QrPUIocikscj1yLnJldHVybn13aGlsZShyKTt2YXIgbD10fWNhdGNoKGUpe2w9IlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfXJldHVybnt2YWx1ZTplLHNvdXJjZTpuLHN0YWNrOmwsZGlnZXN0Om51bGx9fWZ1bmN0aW9uIGNvKGUsbix0KXtyZXR1cm57dmFsdWU6ZSxzb3VyY2U6bnVsbCxzdGFjazpudWxsIT10P3Q6bnVsbCxkaWdlc3Q6bnVsbCE9bj9uOm51bGx9fWZ1bmN0aW9uIGZvKGUsbil7dHJ5e2NvbnNvbGUuZXJyb3Iobi52YWx1ZSl9Y2F0Y2goZSl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0aHJvdyBlfSkpfX12YXIgcG89ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtNYXA/V2Vha01hcDpNYXA7ZnVuY3Rpb24gbW8oZSxuLHQpeyh0PUZhKC0xLHQpKS50YWc9Myx0LnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH07dmFyIHI9bi52YWx1ZTtyZXR1cm4gdC5jYWxsYmFjaz1mdW5jdGlvbigpe1FpfHwoUWk9ITAsamk9ciksZm8oMCxuKX0sdH1mdW5jdGlvbiBobyhlLG4sdCl7KHQ9RmEoLTEsdCkpLnRhZz0zO3ZhciByPWUudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBsPW4udmFsdWU7dC5wYXlsb2FkPWZ1bmN0aW9uKCl7cmV0dXJuIHIobCl9LHQuY2FsbGJhY2s9ZnVuY3Rpb24oKXtmbygwLG4pfX12YXIgYT1lLnN0YXRlTm9kZTtyZXR1cm4gbnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYodC5jYWxsYmFjaz1mdW5jdGlvbigpe2ZvKDAsbiksImZ1bmN0aW9uIiE9dHlwZW9mIHImJihudWxsPT09JGk/JGk9bmV3IFNldChbdGhpc10pOiRpLmFkZCh0aGlzKSk7dmFyIGU9bi5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKG4udmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLHR9ZnVuY3Rpb24gZ28oZSxuLHQpe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyBwbzt2YXIgbD1uZXcgU2V0O3Iuc2V0KG4sbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldChuKSkmJihsPW5ldyBTZXQsci5zZXQobixsKSk7bC5oYXModCl8fChsLmFkZCh0KSxlPUNzLmJpbmQobnVsbCxlLG4sdCksbi50aGVuKGUsZSkpfWZ1bmN0aW9uIHZvKGUpe2Rve3ZhciBuO2lmKChuPTEzPT09ZS50YWcpJiYobj1udWxsPT09KG49ZS5tZW1vaXplZFN0YXRlKXx8bnVsbCE9PW4uZGVoeWRyYXRlZCksbilyZXR1cm4gZTtlPWUucmV0dXJufXdoaWxlKG51bGwhPT1lKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiB5byhlLG4sdCxyLGwpe3JldHVybiAxJmUubW9kZT8oZS5mbGFnc3w9NjU1MzYsZS5sYW5lcz1sLGUpOihlPT09bj9lLmZsYWdzfD02NTUzNjooZS5mbGFnc3w9MTI4LHQuZmxhZ3N8PTEzMTA3Mix0LmZsYWdzJj0tNTI4MDUsMT09PXQudGFnJiYobnVsbD09PXQuYWx0ZXJuYXRlP3QudGFnPTE3Oigobj1GYSgtMSwxKSkudGFnPTIsUmEodCxuLDEpKSksdC5sYW5lc3w9MSksZSl9dmFyIGJvPWsuUmVhY3RDdXJyZW50T3duZXIsa289ITE7ZnVuY3Rpb24gd28oZSxuLHQscil7bi5jaGlsZD1udWxsPT09ZT9HYShuLG51bGwsdCxyKTpYYShuLGUuY2hpbGQsdCxyKX1mdW5jdGlvbiBTbyhlLG4sdCxyLGwpe3Q9dC5yZW5kZXI7dmFyIGE9bi5yZWY7cmV0dXJuIEVhKG4sbCkscj14dShlLG4sdCxyLGEsbCksdD1FdSgpLG51bGw9PT1lfHxrbz8obGEmJnQmJmVhKG4pLG4uZmxhZ3N8PTEsd28oZSxuLHIsbCksbi5jaGlsZCk6KG4udXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSxuLmZsYWdzJj0tMjA1MywKZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiB4byhlLG4sdCxyLGwpe2lmKG51bGw9PT1lKXt2YXIgYT10LnR5cGU7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIGF8fE1zKGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PXQuY29tcGFyZXx8dm9pZCAwIT09dC5kZWZhdWx0UHJvcHM/KChlPVJzKHQudHlwZSxudWxsLHIsbixuLm1vZGUsbCkpLnJlZj1uLnJlZixlLnJldHVybj1uLG4uY2hpbGQ9ZSk6KG4udGFnPTE1LG4udHlwZT1hLEVvKGUsbixhLHIsbCkpfWlmKGE9ZS5jaGlsZCwhKGUubGFuZXMmbCkpe3ZhciB1PWEubWVtb2l6ZWRQcm9wcztpZigodD1udWxsIT09KHQ9dC5jb21wYXJlKT90OmlyKSh1LHIpJiZlLnJlZj09PW4ucmVmKXJldHVybiBRbyhlLG4sbCl9cmV0dXJuIG4uZmxhZ3N8PTEsKGU9RnMoYSxyKSkucmVmPW4ucmVmLGUucmV0dXJuPW4sbi5jaGlsZD1lfWZ1bmN0aW9uIEVvKGUsbix0LHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihpcihhLHIpJiZlLnJlZj09PW4ucmVmKXtpZihrbz0hMSxuLnBlbmRpbmdQcm9wcz1yPWEsIShlLmxhbmVzJmwpKXJldHVybiBuLmxhbmVzPWUubGFuZXMsUW8oZSxuLGwpOzEzMTA3MiZlLmZsYWdzJiYoa289ITApfX1yZXR1cm4gTm8oZSxuLHQscixsKX1mdW5jdGlvbiBDbyhlLG4sdCl7dmFyIHI9bi5wZW5kaW5nUHJvcHMsbD1yLmNoaWxkcmVuLGE9bnVsbCE9PWU/ZS5tZW1vaXplZFN0YXRlOm51bGw7aWYoImhpZGRlbiI9PT1yLm1vZGUpaWYoMSZuLm1vZGUpe2lmKCEoMTA3Mzc0MTgyNCZ0KSlyZXR1cm4gZT1udWxsIT09YT9hLmJhc2VMYW5lc3x0OnQsbi5sYW5lcz1uLmNoaWxkTGFuZXM9MTA3Mzc0MTgyNCxuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczplLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LG4udXBkYXRlUXVldWU9bnVsbCx6bChGaSxNaSksTWl8PWUsbnVsbDtuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHI9bnVsbCE9PWE/YS5iYXNlTGFuZXM6dCx6bChGaSxNaSksTWl8PXJ9ZWxzZSBuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHpsKEZpLE1pKSxNaXw9dDtlbHNlIG51bGwhPT1hPyhyPWEuYmFzZUxhbmVzfHQsbi5tZW1vaXplZFN0YXRlPW51bGwpOnI9dCx6bChGaSxNaSksTWl8PXI7cmV0dXJuIHdvKGUsbixsLHQpLG4uY2hpbGR9ZnVuY3Rpb24gem8oZSxuKXt2YXIgdD1uLnJlZjsobnVsbD09PWUmJm51bGwhPT10fHxudWxsIT09ZSYmZS5yZWYhPT10KSYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKX1mdW5jdGlvbiBObyhlLG4sdCxyLGwpe3ZhciBhPU1sKHQpP1RsOl9sLmN1cnJlbnQ7cmV0dXJuIGE9TGwobixhKSxFYShuLGwpLHQ9eHUoZSxuLHQscixhLGwpLHI9RXUoKSxudWxsPT09ZXx8a28/KGxhJiZyJiZlYShuKSxuLmZsYWdzfD0xLHdvKGUsbix0LGwpLG4uY2hpbGQpOihuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbi5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiBfbyhlLG4sdCxyLGwpe2lmKE1sKHQpKXt2YXIgYT0hMDtJbChuKX1lbHNlIGE9ITE7aWYoRWEobixsKSxudWxsPT09bi5zdGF0ZU5vZGUpSG8oZSxuKSxIYShuLHQsciksamEobix0LHIsbCkscj0hMDtlbHNlIGlmKG51bGw9PT1lKXt2YXIgdT1uLnN0YXRlTm9kZSxvPW4ubWVtb2l6ZWRQcm9wczt1LnByb3BzPW87dmFyIGk9dS5jb250ZXh0LHM9dC5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zP3M9Q2Eocyk6cz1MbChuLHM9TWwodCk/VGw6X2wuY3VycmVudCk7dmFyIGM9dC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMsZj0iZnVuY3Rpb24iPT10eXBlb2YgY3x8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGU7Znx8ImZ1bmN0aW9uIiE9dHlwZW9mIHUuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fChvIT09cnx8aSE9PXMpJiZRYShuLHUscixzKSxUYT0hMTt2YXIgZD1uLm1lbW9pemVkU3RhdGU7dS5zdGF0ZT1kLE9hKG4scix1LGwpLGk9bi5tZW1vaXplZFN0YXRlLG8hPT1yfHxkIT09aXx8UGwuY3VycmVudHx8VGE/KCJmdW5jdGlvbiI9PXR5cGVvZiBjJiYoQWEobix0LGMsciksaT1uLm1lbW9pemVkU3RhdGUpLChvPVRhfHxXYShuLHQsbyxyLGQsaSxzKSk/KGZ8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudHx8KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudCYmdS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZ1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSksImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSk6KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZE1vdW50JiYobi5mbGFnc3w9NDE5NDMwOCksbi5tZW1vaXplZFByb3BzPXIsbi5tZW1vaXplZFN0YXRlPWkpLHUucHJvcHM9cix1LnN0YXRlPWksdS5jb250ZXh0PXMscj1vKTooImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSxyPSExKX1lbHNle3U9bi5zdGF0ZU5vZGUsTWEoZSxuKSxvPW4ubWVtb2l6ZWRQcm9wcyxzPW4udHlwZT09PW4uZWxlbWVudFR5cGU/bzpnYShuLnR5cGUsbyksdS5wcm9wcz1zLGY9bi5wZW5kaW5nUHJvcHMsZD11LmNvbnRleHQsIm9iamVjdCI9PXR5cGVvZihpPXQuY29udGV4dFR5cGUpJiZudWxsIT09aT9pPUNhKGkpOmk9TGwobixpPU1sKHQpP1RsOl9sLmN1cnJlbnQpO3ZhciBwPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzCjsoYz0iZnVuY3Rpb24iPT10eXBlb2YgcHx8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIHUuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09aSkmJlFhKG4sdSxyLGkpLFRhPSExLGQ9bi5tZW1vaXplZFN0YXRlLHUuc3RhdGU9ZCxPYShuLHIsdSxsKTt2YXIgbT1uLm1lbW9pemVkU3RhdGU7byE9PWZ8fGQhPT1tfHxQbC5jdXJyZW50fHxUYT8oImZ1bmN0aW9uIj09dHlwZW9mIHAmJihBYShuLHQscCxyKSxtPW4ubWVtb2l6ZWRTdGF0ZSksKHM9VGF8fFdhKG4sdCxzLHIsZCxtLGkpfHwhMSk/KGN8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiYiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnRXaWxsVXBkYXRlfHwoImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxpKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZShyLG0saSkpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZSYmKG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlJiYobi5mbGFnc3w9MTAyNCkpOigiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnREaWRVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fChuLmZsYWdzfD00KSwiZnVuY3Rpb24iIT10eXBlb2YgdS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTEwMjQpLG4ubWVtb2l6ZWRQcm9wcz1yLG4ubWVtb2l6ZWRTdGF0ZT1tKSx1LnByb3BzPXIsdS5zdGF0ZT1tLHUuY29udGV4dD1pLHI9cyk6KCJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwobi5mbGFnc3w9MTAyNCkscj0hMSl9cmV0dXJuIFBvKGUsbix0LHIsYSxsKX1mdW5jdGlvbiBQbyhlLG4sdCxyLGwsYSl7em8oZSxuKTt2YXIgdT0hISgxMjgmbi5mbGFncyk7aWYoIXImJiF1KXJldHVybiBsJiZPbChuLHQsITEpLFFvKGUsbixhKTtyPW4uc3RhdGVOb2RlLGJvLmN1cnJlbnQ9bjt2YXIgbz11JiYiZnVuY3Rpb24iIT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDpyLnJlbmRlcigpO3JldHVybiBuLmZsYWdzfD0xLG51bGwhPT1lJiZ1PyhuLmNoaWxkPVhhKG4sZS5jaGlsZCxudWxsLGEpLG4uY2hpbGQ9WGEobixudWxsLG8sYSkpOndvKGUsbixvLGEpLG4ubWVtb2l6ZWRTdGF0ZT1yLnN0YXRlLGwmJk9sKG4sdCwhMCksbi5jaGlsZH1mdW5jdGlvbiBUbyhlKXt2YXIgbj1lLnN0YXRlTm9kZTtuLnBlbmRpbmdDb250ZXh0P1JsKDAsbi5wZW5kaW5nQ29udGV4dCxuLnBlbmRpbmdDb250ZXh0IT09bi5jb250ZXh0KTpuLmNvbnRleHQmJlJsKDAsbi5jb250ZXh0LCExKSxydShlLG4uY29udGFpbmVySW5mbyl9ZnVuY3Rpb24gTG8oZSxuLHQscixsKXtyZXR1cm4gcGEoKSxtYShsKSxuLmZsYWdzfD0yNTYsd28oZSxuLHQsciksbi5jaGlsZH12YXIgTW8sRm8sUm8sRG89e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBJbyhlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gT28oZSxuLHQpe3ZhciByLGw9bi5wZW5kaW5nUHJvcHMsdT1vdS5jdXJyZW50LG89ITEsaT0hISgxMjgmbi5mbGFncyk7aWYoKHI9aSl8fChyPShudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSkmJiEhKDImdSkpLHI/KG89ITAsbi5mbGFncyY9LTEyOSk6bnVsbCE9PWUmJm51bGw9PT1lLm1lbW9pemVkU3RhdGV8fCh1fD0xKSx6bChvdSwxJnUpLG51bGw9PT1lKXJldHVybiBzYShuKSxudWxsIT09KGU9bi5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShlPWUuZGVoeWRyYXRlZCk/KDEmbi5tb2RlPyIkISI9PT1lLmRhdGE/bi5sYW5lcz04Om4ubGFuZXM9MTA3Mzc0MTgyNDpuLmxhbmVzPTEsbnVsbCk6KGk9bC5jaGlsZHJlbixlPWwuZmFsbGJhY2ssbz8obD1uLm1vZGUsbz1uLmNoaWxkLGk9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46aX0sMSZsfHxudWxsPT09bz9vPUlzKGksbCwwLG51bGwpOihvLmNoaWxkTGFuZXM9MCxvLnBlbmRpbmdQcm9wcz1pKSxlPURzKGUsbCx0LG51bGwpLG8ucmV0dXJuPW4sZS5yZXR1cm49bixvLnNpYmxpbmc9ZSxuLmNoaWxkPW8sbi5jaGlsZC5tZW1vaXplZFN0YXRlPUlvKHQpLG4ubWVtb2l6ZWRTdGF0ZT1EbyxlKTpVbyhuLGkpKTtpZihudWxsIT09KHU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShyPXUuZGVoeWRyYXRlZCkpcmV0dXJuIGZ1bmN0aW9uKGUsbix0LHIsbCx1LG8pe2lmKHQpcmV0dXJuIDI1NiZuLmZsYWdzPyhuLmZsYWdzJj0tMjU3LFZvKGUsbixvLHI9Y28oRXJyb3IoYSg0MjIpKSkpKTpudWxsIT09bi5tZW1vaXplZFN0YXRlPyhuLmNoaWxkPWUuY2hpbGQsbi5mbGFnc3w9MTI4LG51bGwpOih1PXIuZmFsbGJhY2ssbD1uLm1vZGUscj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46ci5jaGlsZHJlbn0sbCwwLG51bGwpLCh1PURzKHUsbCxvLG51bGwpKS5mbGFnc3w9MixyLnJldHVybj1uLHUucmV0dXJuPW4sci5zaWJsaW5nPXUsbi5jaGlsZD1yLDEmbi5tb2RlJiZYYShuLGUuY2hpbGQsbnVsbCxvKSxuLmNoaWxkLm1lbW9pemVkU3RhdGU9SW8obyksbi5tZW1vaXplZFN0YXRlPURvLHUpO2lmKCEoMSZuLm1vZGUpKXJldHVybiBWbyhlLG4sbyxudWxsKTtpZigiJCEiPT09bC5kYXRhKXsKaWYocj1sLm5leHRTaWJsaW5nJiZsLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGk9ci5kZ3N0O3JldHVybiByPWksVm8oZSxuLG8scj1jbyh1PUVycm9yKGEoNDE5KSkscix2b2lkIDApKX1pZihpPSEhKG8mZS5jaGlsZExhbmVzKSxrb3x8aSl7aWYobnVsbCE9PShyPVBpKSl7c3dpdGNoKG8mLW8pe2Nhc2UgNDpsPTI7YnJlYWs7Y2FzZSAxNjpsPTg7YnJlYWs7Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0Omw9MzI7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6bD0yNjg0MzU0NTY7YnJlYWs7ZGVmYXVsdDpsPTB9MCE9PShsPWwmKHIuc3VzcGVuZGVkTGFuZXN8byk/MDpsKSYmbCE9PXUucmV0cnlMYW5lJiYodS5yZXRyeUxhbmU9bCxQYShlLGwpLHRzKHIsZSxsLC0xKSl9cmV0dXJuIGhzKCksVm8oZSxuLG8scj1jbyhFcnJvcihhKDQyMSkpKSl9cmV0dXJuIiQ/Ij09PWwuZGF0YT8obi5mbGFnc3w9MTI4LG4uY2hpbGQ9ZS5jaGlsZCxuPU5zLmJpbmQobnVsbCxlKSxsLl9yZWFjdFJldHJ5PW4sbnVsbCk6KGU9dS50cmVlQ29udGV4dCxyYT1zbChsLm5leHRTaWJsaW5nKSx0YT1uLGxhPSEwLGFhPW51bGwsbnVsbCE9PWUmJihxbFtLbCsrXT1YbCxxbFtLbCsrXT1HbCxxbFtLbCsrXT1ZbCxYbD1lLmlkLEdsPWUub3ZlcmZsb3csWWw9biksbj1VbyhuLHIuY2hpbGRyZW4pLG4uZmxhZ3N8PTQwOTYsbil9KGUsbixpLGwscix1LHQpO2lmKG8pe289bC5mYWxsYmFjayxpPW4ubW9kZSxyPSh1PWUuY2hpbGQpLnNpYmxpbmc7dmFyIHM9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46bC5jaGlsZHJlbn07cmV0dXJuIDEmaXx8bi5jaGlsZD09PXU/KGw9RnModSxzKSkuc3VidHJlZUZsYWdzPTE0NjgwMDY0JnUuc3VidHJlZUZsYWdzOigobD1uLmNoaWxkKS5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9cyxuLmRlbGV0aW9ucz1udWxsKSxudWxsIT09cj9vPUZzKHIsbyk6KG89RHMobyxpLHQsbnVsbCkpLmZsYWdzfD0yLG8ucmV0dXJuPW4sbC5yZXR1cm49bixsLnNpYmxpbmc9byxuLmNoaWxkPWwsbD1vLG89bi5jaGlsZCxpPW51bGw9PT0oaT1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0lvKHQpOntiYXNlTGFuZXM6aS5iYXNlTGFuZXN8dCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczppLnRyYW5zaXRpb25zfSxvLm1lbW9pemVkU3RhdGU9aSxvLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn50LG4ubWVtb2l6ZWRTdGF0ZT1EbyxsfXJldHVybiBlPShvPWUuY2hpbGQpLnNpYmxpbmcsbD1GcyhvLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSksISgxJm4ubW9kZSkmJihsLmxhbmVzPXQpLGwucmV0dXJuPW4sbC5zaWJsaW5nPW51bGwsbnVsbCE9PWUmJihudWxsPT09KHQ9bi5kZWxldGlvbnMpPyhuLmRlbGV0aW9ucz1bZV0sbi5mbGFnc3w9MTYpOnQucHVzaChlKSksbi5jaGlsZD1sLG4ubWVtb2l6ZWRTdGF0ZT1udWxsLGx9ZnVuY3Rpb24gVW8oZSxuKXtyZXR1cm4obj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46bn0sZS5tb2RlLDAsbnVsbCkpLnJldHVybj1lLGUuY2hpbGQ9bn1mdW5jdGlvbiBWbyhlLG4sdCxyKXtyZXR1cm4gbnVsbCE9PXImJm1hKHIpLFhhKG4sZS5jaGlsZCxudWxsLHQpLChlPVVvKG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4pKS5mbGFnc3w9MixuLm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIEFvKGUsbix0KXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bikseGEoZS5yZXR1cm4sbix0KX1mdW5jdGlvbiBCbyhlLG4sdCxyLGwpe3ZhciBhPWUubWVtb2l6ZWRTdGF0ZTtudWxsPT09YT9lLm1lbW9pemVkU3RhdGU9e2lzQmFja3dhcmRzOm4scmVuZGVyaW5nOm51bGwscmVuZGVyaW5nU3RhcnRUaW1lOjAsbGFzdDpyLHRhaWw6dCx0YWlsTW9kZTpsfTooYS5pc0JhY2t3YXJkcz1uLGEucmVuZGVyaW5nPW51bGwsYS5yZW5kZXJpbmdTdGFydFRpbWU9MCxhLmxhc3Q9cixhLnRhaWw9dCxhLnRhaWxNb2RlPWwpfWZ1bmN0aW9uIFdvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7aWYod28oZSxuLHIuY2hpbGRyZW4sdCksMiYocj1vdS5jdXJyZW50KSlyPTEmcnwyLG4uZmxhZ3N8PTEyODtlbHNle2lmKG51bGwhPT1lJiYxMjgmZS5mbGFncyllOmZvcihlPW4uY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJkFvKGUsdCxuKTtlbHNlIGlmKDE5PT09ZS50YWcpQW8oZSx0LG4pO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT1uKWJyZWFrIGU7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PW4pYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9ciY9MX1pZih6bChvdSxyKSwxJm4ubW9kZSlzd2l0Y2gobCl7Y2FzZSJmb3J3YXJkcyI6Zm9yKHQ9bi5jaGlsZCxsPW51bGw7bnVsbCE9PXQ7KW51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGw9PT1pdShlKSYmKGw9dCksdD10LnNpYmxpbmc7bnVsbD09PSh0PWwpPyhsPW4uY2hpbGQsbi5jaGlsZD1udWxsKToobD10LnNpYmxpbmcsdC5zaWJsaW5nPW51bGwpLEJvKG4sITEsbCx0LGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3IodD1udWxsLGw9bi5jaGlsZCxuLmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09aXUoZSkpe24uY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9dCx0PWwsbD1lfUJvKG4sITAsdCxudWxsLGEpO2JyZWFrO2Nhc2UidG9nZXRoZXIiOgpCbyhuLCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6bi5tZW1vaXplZFN0YXRlPW51bGx9ZWxzZSBuLm1lbW9pemVkU3RhdGU9bnVsbDtyZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBIbyhlLG4peyEoMSZuLm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsbi5hbHRlcm5hdGU9bnVsbCxuLmZsYWdzfD0yKX1mdW5jdGlvbiBRbyhlLG4sdCl7aWYobnVsbCE9PWUmJihuLmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksSWl8PW4ubGFuZXMsISh0Jm4uY2hpbGRMYW5lcykpcmV0dXJuIG51bGw7aWYobnVsbCE9PWUmJm4uY2hpbGQhPT1lLmNoaWxkKXRocm93IEVycm9yKGEoMTUzKSk7aWYobnVsbCE9PW4uY2hpbGQpe2Zvcih0PUZzKGU9bi5jaGlsZCxlLnBlbmRpbmdQcm9wcyksbi5jaGlsZD10LHQucmV0dXJuPW47bnVsbCE9PWUuc2libGluZzspZT1lLnNpYmxpbmcsKHQ9dC5zaWJsaW5nPUZzKGUsZS5wZW5kaW5nUHJvcHMpKS5yZXR1cm49bjt0LnNpYmxpbmc9bnVsbH1yZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBqbyhlLG4pe2lmKCFsYSlzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJoaWRkZW4iOm49ZS50YWlsO2Zvcih2YXIgdD1udWxsO251bGwhPT1uOyludWxsIT09bi5hbHRlcm5hdGUmJih0PW4pLG49bi5zaWJsaW5nO251bGw9PT10P2UudGFpbD1udWxsOnQuc2libGluZz1udWxsO2JyZWFrO2Nhc2UiY29sbGFwc2VkIjp0PWUudGFpbDtmb3IodmFyIHI9bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYocj10KSx0PXQuc2libGluZztudWxsPT09cj9ufHxudWxsPT09ZS50YWlsP2UudGFpbD1udWxsOmUudGFpbC5zaWJsaW5nPW51bGw6ci5zaWJsaW5nPW51bGx9fWZ1bmN0aW9uICRvKGUpe3ZhciBuPW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLHQ9MCxyPTA7aWYobilmb3IodmFyIGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9MTQ2ODAwNjQmbC5zdWJ0cmVlRmxhZ3Mscnw9MTQ2ODAwNjQmbC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO2Vsc2UgZm9yKGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9bC5zdWJ0cmVlRmxhZ3Mscnw9bC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO3JldHVybiBlLnN1YnRyZWVGbGFnc3w9cixlLmNoaWxkTGFuZXM9dCxufWZ1bmN0aW9uIHFvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcztzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiAkbyhuKSxudWxsO2Nhc2UgMTpjYXNlIDE3OnJldHVybiBNbChuLnR5cGUpJiZGbCgpLCRvKG4pLG51bGw7Y2FzZSAzOnJldHVybiByPW4uc3RhdGVOb2RlLGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGZhKG4pP24uZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJiEoMjU2Jm4uZmxhZ3MpfHwobi5mbGFnc3w9MTAyNCxudWxsIT09YWEmJih1cyhhYSksYWE9bnVsbCkpKSwkbyhuKSxudWxsO2Nhc2UgNTp1dShuKTt2YXIgbD10dShudS5jdXJyZW50KTtpZih0PW4udHlwZSxudWxsIT09ZSYmbnVsbCE9bi5zdGF0ZU5vZGUpRm8oZSxuLHQsciksZS5yZWYhPT1uLnJlZiYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtyZXR1cm4gJG8obiksbnVsbH1pZihlPXR1KEphLmN1cnJlbnQpLGZhKG4pKXtyPW4uc3RhdGVOb2RlLHQ9bi50eXBlO3ZhciB1PW4ubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltkbF09bixyW3BsXT11LGU9ISEoMSZuLm1vZGUpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixyKSxWcigiY2xvc2UiLHIpO2JyZWFrO2Nhc2UiaWZyYW1lIjpjYXNlIm9iamVjdCI6Y2FzZSJlbWJlZCI6VnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UidmlkZW8iOmNhc2UiYXVkaW8iOmZvcihsPTA7bDxEci5sZW5ndGg7bCsrKVZyKERyW2xdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLHIpO2JyZWFrO2Nhc2UiaW1nIjpjYXNlImltYWdlIjpjYXNlImxpbmsiOlZyKCJlcnJvciIsciksVnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6VnIoInRvZ2dsZSIscik7YnJlYWs7Y2FzZSJpbnB1dCI6WChyLHUpLFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInNlbGVjdCI6ci5fd3JhcHBlclN0YXRlPXt3YXNNdWx0aXBsZTohIXUubXVsdGlwbGV9LFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInRleHRhcmVhIjpsZShyLHUpLFZyKCJpbnZhbGlkIixyKX1mb3IodmFyIGkgaW4geWUodCx1KSxsPW51bGwsdSlpZih1Lmhhc093blByb3BlcnR5KGkpKXt2YXIgcz11W2ldOyJjaGlsZHJlbiI9PT1pPyJzdHJpbmciPT10eXBlb2Ygcz9yLnRleHRDb250ZW50IT09cyYmKCEwIT09dS5zdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcmJlpyKHIudGV4dENvbnRlbnQscyxlKSxsPVsiY2hpbGRyZW4iLHNdKToibnVtYmVyIj09dHlwZW9mIHMmJnIudGV4dENvbnRlbnQhPT0iIitzJiYoITAhPT11LnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci50ZXh0Q29udGVudCxzLGUpLGw9WyJjaGlsZHJlbiIsIiIrc10pOm8uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPXMmJiJvblNjcm9sbCI9PT1pJiZWcigic2Nyb2xsIixyKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChyKSxKKHIsdSwhMCk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChyKSx1ZShyKTticmVhaztjYXNlInNlbGVjdCI6Y2FzZSJvcHRpb24iOmJyZWFrO2RlZmF1bHQ6ImZ1bmN0aW9uIj09dHlwZW9mIHUub25DbGljayYmKHIub25jbGljaz1Kcil9cj1sLG4udXBkYXRlUXVldWU9cixudWxsIT09ciYmKG4uZmxhZ3N8PTQpfWVsc2V7Cmk9OT09PWwubm9kZVR5cGU/bDpsLm93bmVyRG9jdW1lbnQsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZSYmKGU9b2UodCkpLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/InNjcmlwdCI9PT10PygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudCh0LHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KHQpLCJzZWxlY3QiPT09dCYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsdCksZVtkbF09bixlW3BsXT1yLE1vKGUsbiksbi5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1iZSh0LHIpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixlKSxWcigiY2xvc2UiLGUpLGw9cjticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOlZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGw9MDtsPERyLmxlbmd0aDtsKyspVnIoRHJbbF0sZSk7bD1yO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLGUpLGw9cjticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpWcigiZXJyb3IiLGUpLFZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJkZXRhaWxzIjpWcigidG9nZ2xlIixlKSxsPXI7YnJlYWs7Y2FzZSJpbnB1dCI6WChlLHIpLGw9WShlLHIpLFZyKCJpbnZhbGlkIixlKTticmVhaztjYXNlIm9wdGlvbiI6ZGVmYXVsdDpsPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxsPU8oe30scix7dmFsdWU6dm9pZCAwfSksVnIoImludmFsaWQiLGUpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmxlKGUsciksbD1yZShlLHIpLFZyKCJpbnZhbGlkIixlKX1mb3IodSBpbiB5ZSh0LGwpLHM9bClpZihzLmhhc093blByb3BlcnR5KHUpKXt2YXIgYz1zW3VdOyJzdHlsZSI9PT11P2dlKGUsYyk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/bnVsbCE9KGM9Yz9jLl9faHRtbDp2b2lkIDApJiZmZShlLGMpOiJjaGlsZHJlbiI9PT11PyJzdHJpbmciPT10eXBlb2YgYz8oInRleHRhcmVhIiE9PXR8fCIiIT09YykmJmRlKGUsYyk6Im51bWJlciI9PXR5cGVvZiBjJiZkZShlLCIiK2MpOiJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciIT09dSYmInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIhPT11JiYiYXV0b0ZvY3VzIiE9PXUmJihvLmhhc093blByb3BlcnR5KHUpP251bGwhPWMmJiJvblNjcm9sbCI9PT11JiZWcigic2Nyb2xsIixlKTpudWxsIT1jJiZiKGUsdSxjLGkpKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChlKSxKKGUsciwhMSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChlKSx1ZShlKTticmVhaztjYXNlIm9wdGlvbiI6bnVsbCE9ci52YWx1ZSYmZS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIitRKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KHU9ci52YWx1ZSk/dGUoZSwhIXIubXVsdGlwbGUsdSwhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnRlKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBsLm9uQ2xpY2smJihlLm9uY2xpY2s9SnIpfXN3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYobi5mbGFnc3w9NCl9bnVsbCE9PW4ucmVmJiYobi5mbGFnc3w9NTEyLG4uZmxhZ3N8PTIwOTcxNTIpfXJldHVybiAkbyhuKSxudWxsO2Nhc2UgNjppZihlJiZudWxsIT1uLnN0YXRlTm9kZSlSbygwLG4sZS5tZW1vaXplZFByb3BzLHIpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiByJiZudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtpZih0PXR1KG51LmN1cnJlbnQpLHR1KEphLmN1cnJlbnQpLGZhKG4pKXtpZihyPW4uc3RhdGVOb2RlLHQ9bi5tZW1vaXplZFByb3BzLHJbZGxdPW4sKHU9ci5ub2RlVmFsdWUhPT10KSYmbnVsbCE9PShlPXRhKSlzd2l0Y2goZS50YWcpe2Nhc2UgMzpacihyLm5vZGVWYWx1ZSx0LCEhKDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci5ub2RlVmFsdWUsdCwhISgxJmUubW9kZSkpfXUmJihuLmZsYWdzfD00KX1lbHNlKHI9KDk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50KS5jcmVhdGVUZXh0Tm9kZShyKSlbZGxdPW4sbi5zdGF0ZU5vZGU9cn1yZXR1cm4gJG8obiksbnVsbDtjYXNlIDEzOmlmKENsKG91KSxyPW4ubWVtb2l6ZWRTdGF0ZSxudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5kZWh5ZHJhdGVkKXtpZihsYSYmbnVsbCE9PXJhJiYxJm4ubW9kZSYmISgxMjgmbi5mbGFncykpZGEoKSxwYSgpLG4uZmxhZ3N8PTk4NTYwLHU9ITE7ZWxzZSBpZih1PWZhKG4pLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIXUpdGhyb3cgRXJyb3IoYSgzMTgpKTtpZighKHU9bnVsbCE9PSh1PW4ubWVtb2l6ZWRTdGF0ZSk/dS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKGEoMzE3KSk7dVtkbF09bn1lbHNlIHBhKCksISgxMjgmbi5mbGFncykmJihuLm1lbW9pemVkU3RhdGU9bnVsbCksbi5mbGFnc3w9NDskbyhuKSx1PSExfWVsc2UgbnVsbCE9PWFhJiYodXMoYWEpLGFhPW51bGwpLHU9ITA7aWYoIXUpcmV0dXJuIDY1NTM2Jm4uZmxhZ3M/bjpudWxsfXJldHVybiAxMjgmbi5mbGFncz8obi5sYW5lcz10LG4pOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYobi5jaGlsZC5mbGFnc3w9ODE5MiwKMSZuLm1vZGUmJihudWxsPT09ZXx8MSZvdS5jdXJyZW50PzA9PT1SaSYmKFJpPTMpOmhzKCkpKSxudWxsIT09bi51cGRhdGVRdWV1ZSYmKG4uZmxhZ3N8PTQpLCRvKG4pLG51bGwpO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsPT09ZSYmV3Iobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksJG8obiksbnVsbDtjYXNlIDEwOnJldHVybiBTYShuLnR5cGUuX2NvbnRleHQpLCRvKG4pLG51bGw7Y2FzZSAxOTppZihDbChvdSksbnVsbD09PSh1PW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuICRvKG4pLG51bGw7aWYocj0hISgxMjgmbi5mbGFncyksbnVsbD09PShpPXUucmVuZGVyaW5nKSlpZihyKWpvKHUsITEpO2Vsc2V7aWYoMCE9PVJpfHxudWxsIT09ZSYmMTI4JmUuZmxhZ3MpZm9yKGU9bi5jaGlsZDtudWxsIT09ZTspe2lmKG51bGwhPT0oaT1pdShlKSkpe2ZvcihuLmZsYWdzfD0xMjgsam8odSwhMSksbnVsbCE9PShyPWkudXBkYXRlUXVldWUpJiYobi51cGRhdGVRdWV1ZT1yLG4uZmxhZ3N8PTQpLG4uc3VidHJlZUZsYWdzPTAscj10LHQ9bi5jaGlsZDtudWxsIT09dDspZT1yLCh1PXQpLmZsYWdzJj0xNDY4MDA2NixudWxsPT09KGk9dS5hbHRlcm5hdGUpPyh1LmNoaWxkTGFuZXM9MCx1LmxhbmVzPWUsdS5jaGlsZD1udWxsLHUuc3VidHJlZUZsYWdzPTAsdS5tZW1vaXplZFByb3BzPW51bGwsdS5tZW1vaXplZFN0YXRlPW51bGwsdS51cGRhdGVRdWV1ZT1udWxsLHUuZGVwZW5kZW5jaWVzPW51bGwsdS5zdGF0ZU5vZGU9bnVsbCk6KHUuY2hpbGRMYW5lcz1pLmNoaWxkTGFuZXMsdS5sYW5lcz1pLmxhbmVzLHUuY2hpbGQ9aS5jaGlsZCx1LnN1YnRyZWVGbGFncz0wLHUuZGVsZXRpb25zPW51bGwsdS5tZW1vaXplZFByb3BzPWkubWVtb2l6ZWRQcm9wcyx1Lm1lbW9pemVkU3RhdGU9aS5tZW1vaXplZFN0YXRlLHUudXBkYXRlUXVldWU9aS51cGRhdGVRdWV1ZSx1LnR5cGU9aS50eXBlLGU9aS5kZXBlbmRlbmNpZXMsdS5kZXBlbmRlbmNpZXM9bnVsbD09PWU/bnVsbDp7bGFuZXM6ZS5sYW5lcyxmaXJzdENvbnRleHQ6ZS5maXJzdENvbnRleHR9KSx0PXQuc2libGluZztyZXR1cm4gemwob3UsMSZvdS5jdXJyZW50fDIpLG4uY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXUudGFpbCYmR2UoKT5XaSYmKG4uZmxhZ3N8PTEyOCxyPSEwLGpvKHUsITEpLG4ubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighcilpZihudWxsIT09KGU9aXUoaSkpKXtpZihuLmZsYWdzfD0xMjgscj0hMCxudWxsIT09KHQ9ZS51cGRhdGVRdWV1ZSkmJihuLnVwZGF0ZVF1ZXVlPXQsbi5mbGFnc3w9NCksam8odSwhMCksbnVsbD09PXUudGFpbCYmImhpZGRlbiI9PT11LnRhaWxNb2RlJiYhaS5hbHRlcm5hdGUmJiFsYSlyZXR1cm4gJG8obiksbnVsbH1lbHNlIDIqR2UoKS11LnJlbmRlcmluZ1N0YXJ0VGltZT5XaSYmMTA3Mzc0MTgyNCE9PXQmJihuLmZsYWdzfD0xMjgscj0hMCxqbyh1LCExKSxuLmxhbmVzPTQxOTQzMDQpO3UuaXNCYWNrd2FyZHM/KGkuc2libGluZz1uLmNoaWxkLG4uY2hpbGQ9aSk6KG51bGwhPT0odD11Lmxhc3QpP3Quc2libGluZz1pOm4uY2hpbGQ9aSx1Lmxhc3Q9aSl9cmV0dXJuIG51bGwhPT11LnRhaWw/KG49dS50YWlsLHUucmVuZGVyaW5nPW4sdS50YWlsPW4uc2libGluZyx1LnJlbmRlcmluZ1N0YXJ0VGltZT1HZSgpLG4uc2libGluZz1udWxsLHQ9b3UuY3VycmVudCx6bChvdSxyPzEmdHwyOjEmdCksbik6KCRvKG4pLG51bGwpO2Nhc2UgMjI6Y2FzZSAyMzpyZXR1cm4gZnMoKSxyPW51bGwhPT1uLm1lbW9pemVkU3RhdGUsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPT1yJiYobi5mbGFnc3w9ODE5MiksciYmMSZuLm1vZGU/ISEoMTA3Mzc0MTgyNCZNaSkmJigkbyhuKSw2Jm4uc3VidHJlZUZsYWdzJiYobi5mbGFnc3w9ODE5MikpOiRvKG4pLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKGEoMTU2LG4udGFnKSl9ZnVuY3Rpb24gS28oZSxuKXtzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMTpyZXR1cm4gTWwobi50eXBlKSYmRmwoKSw2NTUzNiYoZT1uLmZsYWdzKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDM6cmV0dXJuIGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLDY1NTM2JihlPW4uZmxhZ3MpJiYhKDEyOCZlKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDU6cmV0dXJuIHV1KG4pLG51bGw7Y2FzZSAxMzppZihDbChvdSksbnVsbCE9PShlPW4ubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT1uLmFsdGVybmF0ZSl0aHJvdyBFcnJvcihhKDM0MCkpO3BhKCl9cmV0dXJuIDY1NTM2JihlPW4uZmxhZ3MpPyhuLmZsYWdzPS02NTUzNyZlfDEyOCxuKTpudWxsO2Nhc2UgMTk6cmV0dXJuIENsKG91KSxudWxsO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIFNhKG4udHlwZS5fY29udGV4dCksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGZzKCksbnVsbDtkZWZhdWx0OnJldHVybiBudWxsfX1Nbz1mdW5jdGlvbihlLG4pe2Zvcih2YXIgdD1uLmNoaWxkO251bGwhPT10Oyl7aWYoNT09PXQudGFnfHw2PT09dC50YWcpZS5hcHBlbmRDaGlsZCh0LnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09dC50YWcmJm51bGwhPT10LmNoaWxkKXt0LmNoaWxkLnJldHVybj10LHQ9dC5jaGlsZDtjb250aW51ZX1pZih0PT09bilicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09bilyZXR1cm47dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX0sRm89ZnVuY3Rpb24oZSxuLHQscil7dmFyIGw9ZS5tZW1vaXplZFByb3BzO2lmKGwhPT1yKXtlPW4uc3RhdGVOb2RlLHR1KEphLmN1cnJlbnQpO3ZhciBhLHU9bnVsbDtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6bD1ZKGUsbCkscj1ZKGUsciksdT1bXTticmVhaztjYXNlInNlbGVjdCI6bD1PKHt9LGwse3ZhbHVlOnZvaWQgMH0pLHI9Tyh7fSxyLHt2YWx1ZTp2b2lkIDB9KSx1PVtdO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmw9cmUoZSxsKSxyPXJlKGUsciksdT1bXTticmVhawo7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2YgbC5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPUpyKX1mb3IoYyBpbiB5ZSh0LHIpLHQ9bnVsbCxsKWlmKCFyLmhhc093blByb3BlcnR5KGMpJiZsLmhhc093blByb3BlcnR5KGMpJiZudWxsIT1sW2NdKWlmKCJzdHlsZSI9PT1jKXt2YXIgaT1sW2NdO2ZvcihhIGluIGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKHR8fCh0PXt9KSx0W2FdPSIiKX1lbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiE9PWMmJiJjaGlsZHJlbiIhPT1jJiYic3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIiE9PWMmJiJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciIT09YyYmImF1dG9Gb2N1cyIhPT1jJiYoby5oYXNPd25Qcm9wZXJ0eShjKT91fHwodT1bXSk6KHU9dXx8W10pLnB1c2goYyxudWxsKSk7Zm9yKGMgaW4gcil7dmFyIHM9cltjXTtpZihpPW51bGwhPWw/bFtjXTp2b2lkIDAsci5oYXNPd25Qcm9wZXJ0eShjKSYmcyE9PWkmJihudWxsIT1zfHxudWxsIT1pKSlpZigic3R5bGUiPT09YylpZihpKXtmb3IoYSBpbiBpKSFpLmhhc093blByb3BlcnR5KGEpfHxzJiZzLmhhc093blByb3BlcnR5KGEpfHwodHx8KHQ9e30pLHRbYV09IiIpO2ZvcihhIGluIHMpcy5oYXNPd25Qcm9wZXJ0eShhKSYmaVthXSE9PXNbYV0mJih0fHwodD17fSksdFthXT1zW2FdKX1lbHNlIHR8fCh1fHwodT1bXSksdS5wdXNoKGMsdCkpLHQ9cztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWM/KHM9cz9zLl9faHRtbDp2b2lkIDAsaT1pP2kuX19odG1sOnZvaWQgMCxudWxsIT1zJiZpIT09cyYmKHU9dXx8W10pLnB1c2goYyxzKSk6ImNoaWxkcmVuIj09PWM/InN0cmluZyIhPXR5cGVvZiBzJiYibnVtYmVyIiE9dHlwZW9mIHN8fCh1PXV8fFtdKS5wdXNoKGMsIiIrcyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJihvLmhhc093blByb3BlcnR5KGMpPyhudWxsIT1zJiYib25TY3JvbGwiPT09YyYmVnIoInNjcm9sbCIsZSksdXx8aT09PXN8fCh1PVtdKSk6KHU9dXx8W10pLnB1c2goYyxzKSl9dCYmKHU9dXx8W10pLnB1c2goInN0eWxlIix0KTt2YXIgYz11OyhuLnVwZGF0ZVF1ZXVlPWMpJiYobi5mbGFnc3w9NCl9fSxSbz1mdW5jdGlvbihlLG4sdCxyKXt0IT09ciYmKG4uZmxhZ3N8PTQpfTt2YXIgWW89ITEsWG89ITEsR289ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsWm89bnVsbDtmdW5jdGlvbiBKbyhlLG4pe3ZhciB0PWUucmVmO2lmKG51bGwhPT10KWlmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRyeXt0KG51bGwpfWNhdGNoKHQpe0VzKGUsbix0KX1lbHNlIHQuY3VycmVudD1udWxsfWZ1bmN0aW9uIGVpKGUsbix0KXt0cnl7dCgpfWNhdGNoKHQpe0VzKGUsbix0KX19dmFyIG5pPSExO2Z1bmN0aW9uIHRpKGUsbix0KXt2YXIgcj1uLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBsPXI9ci5uZXh0O2Rve2lmKChsLnRhZyZlKT09PWUpe3ZhciBhPWwuZGVzdHJveTtsLmRlc3Ryb3k9dm9pZCAwLHZvaWQgMCE9PWEmJmVpKG4sdCxhKX1sPWwubmV4dH13aGlsZShsIT09cil9fWZ1bmN0aW9uIHJpKGUsbil7aWYobnVsbCE9PShuPW51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKT9uLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciB0PW49bi5uZXh0O2Rve2lmKCh0LnRhZyZlKT09PWUpe3ZhciByPXQuY3JlYXRlO3QuZGVzdHJveT1yKCl9dD10Lm5leHR9d2hpbGUodCE9PW4pfX1mdW5jdGlvbiBsaShlKXt2YXIgbj1lLnJlZjtpZihudWxsIT09bil7dmFyIHQ9ZS5zdGF0ZU5vZGU7ZS50YWcsZT10LCJmdW5jdGlvbiI9PXR5cGVvZiBuP24oZSk6bi5jdXJyZW50PWV9fWZ1bmN0aW9uIGFpKGUpe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiYoZS5hbHRlcm5hdGU9bnVsbCxhaShuKSksZS5jaGlsZD1udWxsLGUuZGVsZXRpb25zPW51bGwsZS5zaWJsaW5nPW51bGwsNT09PWUudGFnJiYobnVsbCE9PShuPWUuc3RhdGVOb2RlKSYmKGRlbGV0ZSBuW2RsXSxkZWxldGUgbltwbF0sZGVsZXRlIG5baGxdLGRlbGV0ZSBuW2dsXSxkZWxldGUgblt2bF0pKSxlLnN0YXRlTm9kZT1udWxsLGUucmV0dXJuPW51bGwsZS5kZXBlbmRlbmNpZXM9bnVsbCxlLm1lbW9pemVkUHJvcHM9bnVsbCxlLm1lbW9pemVkU3RhdGU9bnVsbCxlLnBlbmRpbmdQcm9wcz1udWxsLGUuc3RhdGVOb2RlPW51bGwsZS51cGRhdGVRdWV1ZT1udWxsfWZ1bmN0aW9uIHVpKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8ND09PWUudGFnfWZ1bmN0aW9uIG9pKGUpe2U6Zm9yKDs7KXtmb3IoO251bGw9PT1lLnNpYmxpbmc7KXtpZihudWxsPT09ZS5yZXR1cm58fHVpKGUucmV0dXJuKSlyZXR1cm4gbnVsbDtlPWUucmV0dXJufWZvcihlLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nOzUhPT1lLnRhZyYmNiE9PWUudGFnJiYxOCE9PWUudGFnOyl7aWYoMiZlLmZsYWdzKWNvbnRpbnVlIGU7aWYobnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSxuPzg9PT10Lm5vZGVUeXBlP3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxuKTp0Lmluc2VydEJlZm9yZShlLG4pOig4PT09dC5ub2RlVHlwZT8obj10LnBhcmVudE5vZGUpLmluc2VydEJlZm9yZShlLHQpOihuPXQpLmFwcGVuZENoaWxkKGUpLG51bGwhPSh0PXQuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9SnIpKTtlbHNlIGlmKDQhPT1yJiZudWxsIT09KGU9ZS5jaGlsZCkpZm9yKGlpKGUsbix0KSxlPWUuc2libGluZztudWxsIT09ZTspaWkoZSxuLHQpLGU9ZS5zaWJsaW5nfWZ1bmN0aW9uIHNpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSwKbj90Lmluc2VydEJlZm9yZShlLG4pOnQuYXBwZW5kQ2hpbGQoZSk7ZWxzZSBpZig0IT09ciYmbnVsbCE9PShlPWUuY2hpbGQpKWZvcihzaShlLG4sdCksZT1lLnNpYmxpbmc7bnVsbCE9PWU7KXNpKGUsbix0KSxlPWUuc2libGluZ312YXIgY2k9bnVsbCxmaT0hMTtmdW5jdGlvbiBkaShlLG4sdCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspcGkoZSxuLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHBpKGUsbix0KXtpZihhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXthbi5vbkNvbW1pdEZpYmVyVW5tb3VudChsbix0KX1jYXRjaChlKXt9c3dpdGNoKHQudGFnKXtjYXNlIDU6WG98fEpvKHQsbik7Y2FzZSA2OnZhciByPWNpLGw9Zmk7Y2k9bnVsbCxkaShlLG4sdCksZmk9bCxudWxsIT09KGNpPXIpJiYoZmk/KGU9Y2ksdD10LnN0YXRlTm9kZSw4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk6ZS5yZW1vdmVDaGlsZCh0KSk6Y2kucmVtb3ZlQ2hpbGQodC5zdGF0ZU5vZGUpKTticmVhaztjYXNlIDE4Om51bGwhPT1jaSYmKGZpPyhlPWNpLHQ9dC5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/aWwoZS5wYXJlbnROb2RlLHQpOjE9PT1lLm5vZGVUeXBlJiZpbChlLHQpLEhuKGUpKTppbChjaSx0LnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWNpLGw9ZmksY2k9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxmaT0hMCxkaShlLG4sdCksY2k9cixmaT1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZighWG8mJihudWxsIT09KHI9dC51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKSl7bD1yPXIubmV4dDtkb3t2YXIgYT1sLHU9YS5kZXN0cm95O2E9YS50YWcsdm9pZCAwIT09dSYmKDImYXx8NCZhKSYmZWkodCxuLHUpLGw9bC5uZXh0fXdoaWxlKGwhPT1yKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAxOmlmKCFYbyYmKEpvKHQsbiksImZ1bmN0aW9uIj09dHlwZW9mKHI9dC5zdGF0ZU5vZGUpLmNvbXBvbmVudFdpbGxVbm1vdW50KSl0cnl7ci5wcm9wcz10Lm1lbW9pemVkUHJvcHMsci5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsci5jb21wb25lbnRXaWxsVW5tb3VudCgpfWNhdGNoKGUpe0VzKHQsbixlKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAyMTpkaShlLG4sdCk7YnJlYWs7Y2FzZSAyMjoxJnQubW9kZT8oWG89KHI9WG8pfHxudWxsIT09dC5tZW1vaXplZFN0YXRlLGRpKGUsbix0KSxYbz1yKTpkaShlLG4sdCk7YnJlYWs7ZGVmYXVsdDpkaShlLG4sdCl9fWZ1bmN0aW9uIG1pKGUpe3ZhciBuPWUudXBkYXRlUXVldWU7aWYobnVsbCE9PW4pe2UudXBkYXRlUXVldWU9bnVsbDt2YXIgdD1lLnN0YXRlTm9kZTtudWxsPT09dCYmKHQ9ZS5zdGF0ZU5vZGU9bmV3IEdvKSxuLmZvckVhY2goKGZ1bmN0aW9uKG4pe3ZhciByPV9zLmJpbmQobnVsbCxlLG4pO3QuaGFzKG4pfHwodC5hZGQobiksbi50aGVuKHIscikpfSkpfX1mdW5jdGlvbiBoaShlLG4pe3ZhciB0PW4uZGVsZXRpb25zO2lmKG51bGwhPT10KWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO3RyeXt2YXIgdT1lLG89bixpPW87ZTpmb3IoO251bGwhPT1pOyl7c3dpdGNoKGkudGFnKXtjYXNlIDU6Y2k9aS5zdGF0ZU5vZGUsZmk9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0OmNpPWkuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sZmk9ITA7YnJlYWsgZX1pPWkucmV0dXJufWlmKG51bGw9PT1jaSl0aHJvdyBFcnJvcihhKDE2MCkpO3BpKHUsbyxsKSxjaT1udWxsLGZpPSExO3ZhciBzPWwuYWx0ZXJuYXRlO251bGwhPT1zJiYocy5yZXR1cm49bnVsbCksbC5yZXR1cm49bnVsbH1jYXRjaChlKXtFcyhsLG4sZSl9fWlmKDEyODU0Jm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWdpKG4sZSksbj1uLnNpYmxpbmd9ZnVuY3Rpb24gZ2koZSxuKXt2YXIgdD1lLmFsdGVybmF0ZSxyPWUuZmxhZ3M7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYoaGkobixlKSx2aShlKSw0JnIpe3RyeXt0aSgzLGUsZS5yZXR1cm4pLHJpKDMsZSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX10cnl7dGkoNSxlLGUucmV0dXJuKX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDE6aGkobixlKSx2aShlKSw1MTImciYmbnVsbCE9PXQmJkpvKHQsdC5yZXR1cm4pO2JyZWFrO2Nhc2UgNTppZihoaShuLGUpLHZpKGUpLDUxMiZyJiZudWxsIT09dCYmSm8odCx0LnJldHVybiksMzImZS5mbGFncyl7dmFyIGw9ZS5zdGF0ZU5vZGU7dHJ5e2RlKGwsIiIpfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWlmKDQmciYmbnVsbCE9KGw9ZS5zdGF0ZU5vZGUpKXt2YXIgdT1lLm1lbW9pemVkUHJvcHMsbz1udWxsIT09dD90Lm1lbW9pemVkUHJvcHM6dSxpPWUudHlwZSxzPWUudXBkYXRlUXVldWU7aWYoZS51cGRhdGVRdWV1ZT1udWxsLG51bGwhPT1zKXRyeXsiaW5wdXQiPT09aSYmInJhZGlvIj09PXUudHlwZSYmbnVsbCE9dS5uYW1lJiZHKGwsdSksYmUoaSxvKTt2YXIgYz1iZShpLHUpO2ZvcihvPTA7bzxzLmxlbmd0aDtvKz0yKXt2YXIgZj1zW29dLGQ9c1tvKzFdOyJzdHlsZSI9PT1mP2dlKGwsZCk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWY/ZmUobCxkKToiY2hpbGRyZW4iPT09Zj9kZShsLGQpOmIobCxmLGQsYyl9c3dpdGNoKGkpe2Nhc2UiaW5wdXQiOloobCx1KTticmVhaztjYXNlInRleHRhcmVhIjphZShsLHUpO2JyZWFrO2Nhc2Uic2VsZWN0Ijp2YXIgcD1sLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU7bC5fd3JhcHBlclN0YXRlLndhc011bHRpcGxlPSEhdS5tdWx0aXBsZTt2YXIgbT11LnZhbHVlO251bGwhPW0/dGUobCwhIXUubXVsdGlwbGUsbSwhMSk6cCE9PSEhdS5tdWx0aXBsZSYmKG51bGwhPXUuZGVmYXVsdFZhbHVlP3RlKGwsISF1Lm11bHRpcGxlLHUuZGVmYXVsdFZhbHVlLCEwKTp0ZShsLCEhdS5tdWx0aXBsZSx1Lm11bHRpcGxlP1tdOiIiLCExKSl9bFtwbF09dX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDY6aWYoaGkobixlKSx2aShlKSw0JnIpewppZihudWxsPT09ZS5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjIpKTtsPWUuc3RhdGVOb2RlLHU9ZS5tZW1vaXplZFByb3BzO3RyeXtsLm5vZGVWYWx1ZT11fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWJyZWFrO2Nhc2UgMzppZihoaShuLGUpLHZpKGUpLDQmciYmbnVsbCE9PXQmJnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e0huKG4uY29udGFpbmVySW5mbyl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX1icmVhaztjYXNlIDQ6ZGVmYXVsdDpoaShuLGUpLHZpKGUpO2JyZWFrO2Nhc2UgMTM6aGkobixlKSx2aShlKSw4MTkyJihsPWUuY2hpbGQpLmZsYWdzJiYodT1udWxsIT09bC5tZW1vaXplZFN0YXRlLGwuc3RhdGVOb2RlLmlzSGlkZGVuPXUsIXV8fG51bGwhPT1sLmFsdGVybmF0ZSYmbnVsbCE9PWwuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fChCaT1HZSgpKSksNCZyJiZtaShlKTticmVhaztjYXNlIDIyOmlmKGY9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUsMSZlLm1vZGU/KFhvPShjPVhvKXx8ZixoaShuLGUpLFhvPWMpOmhpKG4sZSksdmkoZSksODE5MiZyKXtpZihjPW51bGwhPT1lLm1lbW9pemVkU3RhdGUsKGUuc3RhdGVOb2RlLmlzSGlkZGVuPWMpJiYhZiYmMSZlLm1vZGUpZm9yKFpvPWUsZj1lLmNoaWxkO251bGwhPT1mOyl7Zm9yKGQ9Wm89ZjtudWxsIT09Wm87KXtzd2l0Y2gobT0ocD1abykuY2hpbGQscC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTp0aSg0LHAscC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpKbyhwLHAucmV0dXJuKTt2YXIgaD1wLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgaC5jb21wb25lbnRXaWxsVW5tb3VudCl7cj1wLHQ9cC5yZXR1cm47dHJ5e249cixoLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxoLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxoLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7RXMocix0LGUpfX1icmVhaztjYXNlIDU6Sm8ocCxwLnJldHVybik7YnJlYWs7Y2FzZSAyMjppZihudWxsIT09cC5tZW1vaXplZFN0YXRlKXt3aShkKTtjb250aW51ZX19bnVsbCE9PW0/KG0ucmV0dXJuPXAsWm89bSk6d2koZCl9Zj1mLnNpYmxpbmd9ZTpmb3IoZj1udWxsLGQ9ZTs7KXtpZig1PT09ZC50YWcpe2lmKG51bGw9PT1mKXtmPWQ7dHJ5e2w9ZC5zdGF0ZU5vZGUsYz8iZnVuY3Rpb24iPT10eXBlb2YodT1sLnN0eWxlKS5zZXRQcm9wZXJ0eT91LnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOnUuZGlzcGxheT0ibm9uZSI6KGk9ZC5zdGF0ZU5vZGUsbz1udWxsIT0ocz1kLm1lbW9pemVkUHJvcHMuc3R5bGUpJiZzLmhhc093blByb3BlcnR5KCJkaXNwbGF5Iik/cy5kaXNwbGF5Om51bGwsaS5zdHlsZS5kaXNwbGF5PWhlKCJkaXNwbGF5IixvKSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX19fWVsc2UgaWYoNj09PWQudGFnKXtpZihudWxsPT09Zil0cnl7ZC5zdGF0ZU5vZGUubm9kZVZhbHVlPWM/IiI6ZC5tZW1vaXplZFByb3BzfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWVsc2UgaWYoKDIyIT09ZC50YWcmJjIzIT09ZC50YWd8fG51bGw9PT1kLm1lbW9pemVkU3RhdGV8fGQ9PT1lKSYmbnVsbCE9PWQuY2hpbGQpe2QuY2hpbGQucmV0dXJuPWQsZD1kLmNoaWxkO2NvbnRpbnVlfWlmKGQ9PT1lKWJyZWFrIGU7Zm9yKDtudWxsPT09ZC5zaWJsaW5nOyl7aWYobnVsbD09PWQucmV0dXJufHxkLnJldHVybj09PWUpYnJlYWsgZTtmPT09ZCYmKGY9bnVsbCksZD1kLnJldHVybn1mPT09ZCYmKGY9bnVsbCksZC5zaWJsaW5nLnJldHVybj1kLnJldHVybixkPWQuc2libGluZ319YnJlYWs7Y2FzZSAxOTpoaShuLGUpLHZpKGUpLDQmciYmbWkoZSk7Y2FzZSAyMTp9fWZ1bmN0aW9uIHZpKGUpe3ZhciBuPWUuZmxhZ3M7aWYoMiZuKXt0cnl7ZTp7Zm9yKHZhciB0PWUucmV0dXJuO251bGwhPT10Oyl7aWYodWkodCkpe3ZhciByPXQ7YnJlYWsgZX10PXQucmV0dXJufXRocm93IEVycm9yKGEoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIGw9ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKGRlKGwsIiIpLHIuZmxhZ3MmPS0zMyksc2koZSxvaShlKSxsKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciB1PXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWkoZSxvaShlKSx1KTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMTYxKSl9fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9ZS5mbGFncyY9LTN9NDA5NiZuJiYoZS5mbGFncyY9LTQwOTcpfWZ1bmN0aW9uIHlpKGUsbix0KXtabz1lLGJpKGUsbix0KX1mdW5jdGlvbiBiaShlLG4sdCl7Zm9yKHZhciByPSEhKDEmZS5tb2RlKTtudWxsIT09Wm87KXt2YXIgbD1abyxhPWwuY2hpbGQ7aWYoMjI9PT1sLnRhZyYmcil7dmFyIHU9bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZXx8WW87aWYoIXUpe3ZhciBvPWwuYWx0ZXJuYXRlLGk9bnVsbCE9PW8mJm51bGwhPT1vLm1lbW9pemVkU3RhdGV8fFhvO289WW87dmFyIHM9WG87aWYoWW89dSwoWG89aSkmJiFzKWZvcihabz1sO251bGwhPT1abzspaT0odT1abykuY2hpbGQsMjI9PT11LnRhZyYmbnVsbCE9PXUubWVtb2l6ZWRTdGF0ZT9TaShsKTpudWxsIT09aT8oaS5yZXR1cm49dSxabz1pKTpTaShsKTtmb3IoO251bGwhPT1hOylabz1hLGJpKGEsbix0KSxhPWEuc2libGluZztabz1sLFlvPW8sWG89c31raShlKX1lbHNlIDg3NzImbC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1hPyhhLnJldHVybj1sLFpvPWEpOmtpKGUpfX1mdW5jdGlvbiBraShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKDg3NzImbi5mbGFncyl7dmFyIHQ9bi5hbHRlcm5hdGU7dHJ5e2lmKDg3NzImbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6WG98fHJpKDUsbik7YnJlYWs7Y2FzZSAxOnZhciByPW4uc3RhdGVOb2RlO2lmKDQmbi5mbGFncyYmIVhvKWlmKG51bGw9PT10KXIuY29tcG9uZW50RGlkTW91bnQoKTtlbHNle3ZhciBsPW4uZWxlbWVudFR5cGU9PT1uLnR5cGU/dC5tZW1vaXplZFByb3BzOmdhKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpCjtyLmNvbXBvbmVudERpZFVwZGF0ZShsLHQubWVtb2l6ZWRTdGF0ZSxyLl9fcmVhY3RJbnRlcm5hbFNuYXBzaG90QmVmb3JlVXBkYXRlKX12YXIgdT1uLnVwZGF0ZVF1ZXVlO251bGwhPT11JiZVYShuLHUscik7YnJlYWs7Y2FzZSAzOnZhciBvPW4udXBkYXRlUXVldWU7aWYobnVsbCE9PW8pe2lmKHQ9bnVsbCxudWxsIT09bi5jaGlsZClzd2l0Y2gobi5jaGlsZC50YWcpe2Nhc2UgNTpjYXNlIDE6dD1uLmNoaWxkLnN0YXRlTm9kZX1VYShuLG8sdCl9YnJlYWs7Y2FzZSA1OnZhciBpPW4uc3RhdGVOb2RlO2lmKG51bGw9PT10JiY0Jm4uZmxhZ3Mpe3Q9aTt2YXIgcz1uLm1lbW9pemVkUHJvcHM7c3dpdGNoKG4udHlwZSl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpzLmF1dG9Gb2N1cyYmdC5mb2N1cygpO2JyZWFrO2Nhc2UiaW1nIjpzLnNyYyYmKHQuc3JjPXMuc3JjKX19YnJlYWs7Y2FzZSA2OmNhc2UgNDpjYXNlIDEyOmNhc2UgMTk6Y2FzZSAxNzpjYXNlIDIxOmNhc2UgMjI6Y2FzZSAyMzpjYXNlIDI1OmJyZWFrO2Nhc2UgMTM6aWYobnVsbD09PW4ubWVtb2l6ZWRTdGF0ZSl7dmFyIGM9bi5hbHRlcm5hdGU7aWYobnVsbCE9PWMpe3ZhciBmPWMubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09Zil7dmFyIGQ9Zi5kZWh5ZHJhdGVkO251bGwhPT1kJiZIbihkKX19fWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoYSgxNjMpKX1Yb3x8NTEyJm4uZmxhZ3MmJmxpKG4pfWNhdGNoKGUpe0VzKG4sbi5yZXR1cm4sZSl9fWlmKG49PT1lKXtabz1udWxsO2JyZWFrfWlmKG51bGwhPT0odD1uLnNpYmxpbmcpKXt0LnJldHVybj1uLnJldHVybixabz10O2JyZWFrfVpvPW4ucmV0dXJufX1mdW5jdGlvbiB3aShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKG49PT1lKXtabz1udWxsO2JyZWFrfXZhciB0PW4uc2libGluZztpZihudWxsIT09dCl7dC5yZXR1cm49bi5yZXR1cm4sWm89dDticmVha31abz1uLnJldHVybn19ZnVuY3Rpb24gU2koZSl7Zm9yKDtudWxsIT09Wm87KXt2YXIgbj1abzt0cnl7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnZhciB0PW4ucmV0dXJuO3RyeXtyaSg0LG4pfWNhdGNoKGUpe0VzKG4sdCxlKX1icmVhaztjYXNlIDE6dmFyIHI9bi5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkTW91bnQpe3ZhciBsPW4ucmV0dXJuO3RyeXtyLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7RXMobixsLGUpfX12YXIgYT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobixhLGUpfWJyZWFrO2Nhc2UgNTp2YXIgdT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobix1LGUpfX19Y2F0Y2goZSl7RXMobixuLnJldHVybixlKX1pZihuPT09ZSl7Wm89bnVsbDticmVha312YXIgbz1uLnNpYmxpbmc7aWYobnVsbCE9PW8pe28ucmV0dXJuPW4ucmV0dXJuLFpvPW87YnJlYWt9Wm89bi5yZXR1cm59fXZhciB4aSxFaT1NYXRoLmNlaWwsQ2k9ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHppPWsuUmVhY3RDdXJyZW50T3duZXIsTmk9ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfaT0wLFBpPW51bGwsVGk9bnVsbCxMaT0wLE1pPTAsRmk9RWwoMCksUmk9MCxEaT1udWxsLElpPTAsT2k9MCxVaT0wLFZpPW51bGwsQWk9bnVsbCxCaT0wLFdpPTEvMCxIaT1udWxsLFFpPSExLGppPW51bGwsJGk9bnVsbCxxaT0hMSxLaT1udWxsLFlpPTAsWGk9MCxHaT1udWxsLFppPS0xLEppPTA7ZnVuY3Rpb24gZXMoKXtyZXR1cm4gNiZfaT9HZSgpOi0xIT09Wmk/Wmk6Wmk9R2UoKX1mdW5jdGlvbiBucyhlKXtyZXR1cm4gMSZlLm1vZGU/MiZfaSYmMCE9PUxpP0xpJi1MaTpudWxsIT09aGEudHJhbnNpdGlvbj8oMD09PUppJiYoSmk9Z24oKSksSmkpOjAhPT0oZT1rbik/ZTplPXZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MTY6R24oZS50eXBlKToxfWZ1bmN0aW9uIHRzKGUsbix0LHIpe2lmKDUwPFhpKXRocm93IFhpPTAsR2k9bnVsbCxFcnJvcihhKDE4NSkpO3luKGUsdCxyKSwyJl9pJiZlPT09UGl8fChlPT09UGkmJighKDImX2kpJiYoT2l8PXQpLDQ9PT1SaSYmb3MoZSxMaSkpLHJzKGUsciksMT09PXQmJjA9PT1faSYmISgxJm4ubW9kZSkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSkpfWZ1bmN0aW9uIHJzKGUsbil7dmFyIHQ9ZS5jYWxsYmFja05vZGU7IWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT1lLnBlbmRpbmdMYW5lczswPGE7KXt2YXIgdT0zMS11bihhKSxvPTE8PHUsaT1sW3VdOy0xPT09aT9vJnQmJiEobyZyKXx8KGxbdV09bW4obyxuKSk6aTw9biYmKGUuZXhwaXJlZExhbmVzfD1vKSxhJj1+b319KGUsbik7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpbnVsbCE9PXQmJktlKHQpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihuPXImLXIsZS5jYWxsYmFja1ByaW9yaXR5IT09bil7aWYobnVsbCE9dCYmS2UodCksMT09PW4pMD09PWUudGFnP2Z1bmN0aW9uKGUpe1ZsPSEwLEJsKGUpfShpcy5iaW5kKG51bGwsZSkpOkJsKGlzLmJpbmQobnVsbCxlKSksdWwoKGZ1bmN0aW9uKCl7ISg2Jl9pKSYmV2woKX0pKSx0PW51bGw7ZWxzZXtzd2l0Y2god24ocikpe2Nhc2UgMTp0PUplO2JyZWFrO2Nhc2UgNDp0PWVuO2JyZWFrO2Nhc2UgMTY6ZGVmYXVsdDp0PW5uO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnQ9cm59dD1Qcyh0LGxzLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PW4sZS5jYWxsYmFja05vZGU9dH19ZnVuY3Rpb24gbHMoZSxuKXtpZihaaT0tMSxKaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTt2YXIgdD1lLmNhbGxiYWNrTm9kZTtpZihTcygpJiZlLmNhbGxiYWNrTm9kZSE9PXQpcmV0dXJuIG51bGw7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpcmV0dXJuIG51bGw7aWYoMzAmcnx8ciZlLmV4cGlyZWRMYW5lc3x8biluPWdzKGUscik7ZWxzZXtuPXI7dmFyIGw9X2k7X2l8PTI7dmFyIHU9bXMoKQo7Zm9yKFBpPT09ZSYmTGk9PT1ufHwoSGk9bnVsbCxXaT1HZSgpKzUwMCxkcyhlLG4pKTs7KXRyeXt5cygpO2JyZWFrfWNhdGNoKG4pe3BzKGUsbil9d2EoKSxDaS5jdXJyZW50PXUsX2k9bCxudWxsIT09VGk/bj0wOihQaT1udWxsLExpPTAsbj1SaSl9aWYoMCE9PW4pe2lmKDI9PT1uJiYoMCE9PShsPWhuKGUpKSYmKHI9bCxuPWFzKGUsbCkpKSwxPT09bil0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7aWYoNj09PW4pb3MoZSxyKTtlbHNle2lmKGw9ZS5jdXJyZW50LmFsdGVybmF0ZSwhKDMwJnJ8fGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1lOzspe2lmKDE2Mzg0Jm4uZmxhZ3Mpe3ZhciB0PW4udXBkYXRlUXVldWU7aWYobnVsbCE9PXQmJm51bGwhPT0odD10LnN0b3JlcykpZm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBsPXRbcl0sYT1sLmdldFNuYXBzaG90O2w9bC52YWx1ZTt0cnl7aWYoIW9yKGEoKSxsKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX19fWlmKHQ9bi5jaGlsZCwxNjM4NCZuLnN1YnRyZWVGbGFncyYmbnVsbCE9PXQpdC5yZXR1cm49bixuPXQ7ZWxzZXtpZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4hMDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fXJldHVybiEwfShsKXx8KG49Z3MoZSxyKSwyPT09biYmKHU9aG4oZSksMCE9PXUmJihyPXUsbj1hcyhlLHUpKSksMSE9PW4pKSl0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7c3dpdGNoKGUuZmluaXNoZWRXb3JrPWwsZS5maW5pc2hlZExhbmVzPXIsbil7Y2FzZSAwOmNhc2UgMTp0aHJvdyBFcnJvcihhKDM0NSkpO2Nhc2UgMjpjYXNlIDU6d3MoZSxBaSxIaSk7YnJlYWs7Y2FzZSAzOmlmKG9zKGUsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChuPUJpKzUwMC1HZSgpKSl7aWYoMCE9PXBuKGUsMCkpYnJlYWs7aWYoKChsPWUuc3VzcGVuZGVkTGFuZXMpJnIpIT09cil7ZXMoKSxlLnBpbmdlZExhbmVzfD1lLnN1c3BlbmRlZExhbmVzJmw7YnJlYWt9ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxuKTticmVha313cyhlLEFpLEhpKTticmVhaztjYXNlIDQ6aWYob3MoZSxyKSwoNDE5NDI0MCZyKT09PXIpYnJlYWs7Zm9yKG49ZS5ldmVudFRpbWVzLGw9LTE7MDxyOyl7dmFyIG89MzEtdW4ocik7dT0xPDxvLChvPW5bb10pPmwmJihsPW8pLHImPX51fWlmKHI9bCwxMDwocj0oMTIwPihyPUdlKCktcik/MTIwOjQ4MD5yPzQ4MDoxMDgwPnI/MTA4MDoxOTIwPnI/MTkyMDozZTM+cj8zZTM6NDMyMD5yPzQzMjA6MTk2MCpFaShyLzE5NjApKS1yKSl7ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxyKTticmVha313cyhlLEFpLEhpKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzI5KSl9fX1yZXR1cm4gcnMoZSxHZSgpKSxlLmNhbGxiYWNrTm9kZT09PXQ/bHMuYmluZChudWxsLGUpOm51bGx9ZnVuY3Rpb24gYXMoZSxuKXt2YXIgdD1WaTtyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoZHMoZSxuKS5mbGFnc3w9MjU2KSwyIT09KGU9Z3MoZSxuKSkmJihuPUFpLEFpPXQsbnVsbCE9PW4mJnVzKG4pKSxlfWZ1bmN0aW9uIHVzKGUpe251bGw9PT1BaT9BaT1lOkFpLnB1c2guYXBwbHkoQWksZSl9ZnVuY3Rpb24gb3MoZSxuKXtmb3IobiY9flVpLG4mPX5PaSxlLnN1c3BlbmRlZExhbmVzfD1uLGUucGluZ2VkTGFuZXMmPX5uLGU9ZS5leHBpcmF0aW9uVGltZXM7MDxuOyl7dmFyIHQ9MzEtdW4obikscj0xPDx0O2VbdF09LTEsbiY9fnJ9fWZ1bmN0aW9uIGlzKGUpe2lmKDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTtTcygpO3ZhciBuPXBuKGUsMCk7aWYoISgxJm4pKXJldHVybiBycyhlLEdlKCkpLG51bGw7dmFyIHQ9Z3MoZSxuKTtpZigwIT09ZS50YWcmJjI9PT10KXt2YXIgcj1obihlKTswIT09ciYmKG49cix0PWFzKGUscikpfWlmKDE9PT10KXRocm93IHQ9RGksZHMoZSwwKSxvcyhlLG4pLHJzKGUsR2UoKSksdDtpZig2PT09dCl0aHJvdyBFcnJvcihhKDM0NSkpO3JldHVybiBlLmZpbmlzaGVkV29yaz1lLmN1cnJlbnQuYWx0ZXJuYXRlLGUuZmluaXNoZWRMYW5lcz1uLHdzKGUsQWksSGkpLHJzKGUsR2UoKSksbnVsbH1mdW5jdGlvbiBzcyhlLG4pe3ZhciB0PV9pO19pfD0xO3RyeXtyZXR1cm4gZShuKX1maW5hbGx5ezA9PT0oX2k9dCkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSl9fWZ1bmN0aW9uIGNzKGUpe251bGwhPT1LaSYmMD09PUtpLnRhZyYmISg2Jl9pKSYmU3MoKTt2YXIgbj1faTtfaXw9MTt2YXIgdD1OaS50cmFuc2l0aW9uLHI9a247dHJ5e2lmKE5pLnRyYW5zaXRpb249bnVsbCxrbj0xLGUpcmV0dXJuIGUoKX1maW5hbGx5e2tuPXIsTmkudHJhbnNpdGlvbj10LCEoNiYoX2k9bikpJiZXbCgpfX1mdW5jdGlvbiBmcygpe01pPUZpLmN1cnJlbnQsQ2woRmkpfWZ1bmN0aW9uIGRzKGUsbil7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgdD1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT10JiYoZS50aW1lb3V0SGFuZGxlPS0xLGxsKHQpKSxudWxsIT09VGkpZm9yKHQ9VGkucmV0dXJuO251bGwhPT10Oyl7dmFyIHI9dDtzd2l0Y2gobmEociksci50YWcpe2Nhc2UgMTpudWxsIT0ocj1yLnR5cGUuY2hpbGRDb250ZXh0VHlwZXMpJiZGbCgpO2JyZWFrO2Nhc2UgMzpsdSgpLENsKFBsKSxDbChfbCksY3UoKTticmVhaztjYXNlIDU6dXUocik7YnJlYWs7Y2FzZSA0Omx1KCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OkNsKG91KTticmVhaztjYXNlIDEwOlNhKHIudHlwZS5fY29udGV4dCk7YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOmZzKCl9dD10LnJldHVybn1pZihQaT1lLFRpPWU9RnMoZS5jdXJyZW50LG51bGwpLExpPU1pPW4sUmk9MCxEaT1udWxsLFVpPU9pPUlpPTAsQWk9Vmk9bnVsbCxudWxsIT09emEpe2ZvcihuPTA7bjx6YS5sZW5ndGg7bisrKWlmKG51bGwhPT0ocj0odD16YVtuXSkuaW50ZXJsZWF2ZWQpKXt0LmludGVybGVhdmVkPW51bGwKO3ZhciBsPXIubmV4dCxhPXQucGVuZGluZztpZihudWxsIT09YSl7dmFyIHU9YS5uZXh0O2EubmV4dD1sLHIubmV4dD11fXQucGVuZGluZz1yfXphPW51bGx9cmV0dXJuIGV9ZnVuY3Rpb24gcHMoZSxuKXtmb3IoOzspe3ZhciB0PVRpO3RyeXtpZih3YSgpLGZ1LmN1cnJlbnQ9YW8sdnUpe2Zvcih2YXIgcj1tdS5tZW1vaXplZFN0YXRlO251bGwhPT1yOyl7dmFyIGw9ci5xdWV1ZTtudWxsIT09bCYmKGwucGVuZGluZz1udWxsKSxyPXIubmV4dH12dT0hMX1pZihwdT0wLGd1PWh1PW11PW51bGwseXU9ITEsYnU9MCx6aS5jdXJyZW50PW51bGwsbnVsbD09PXR8fG51bGw9PT10LnJldHVybil7Umk9MSxEaT1uLFRpPW51bGw7YnJlYWt9ZTp7dmFyIHU9ZSxvPXQucmV0dXJuLGk9dCxzPW47aWYobj1MaSxpLmZsYWdzfD0zMjc2OCxudWxsIT09cyYmIm9iamVjdCI9PXR5cGVvZiBzJiYiZnVuY3Rpb24iPT10eXBlb2Ygcy50aGVuKXt2YXIgYz1zLGY9aSxkPWYudGFnO2lmKCEoMSZmLm1vZGV8fDAhPT1kJiYxMSE9PWQmJjE1IT09ZCkpe3ZhciBwPWYuYWx0ZXJuYXRlO3A/KGYudXBkYXRlUXVldWU9cC51cGRhdGVRdWV1ZSxmLm1lbW9pemVkU3RhdGU9cC5tZW1vaXplZFN0YXRlLGYubGFuZXM9cC5sYW5lcyk6KGYudXBkYXRlUXVldWU9bnVsbCxmLm1lbW9pemVkU3RhdGU9bnVsbCl9dmFyIG09dm8obyk7aWYobnVsbCE9PW0pe20uZmxhZ3MmPS0yNTcseW8obSxvLGksMCxuKSwxJm0ubW9kZSYmZ28odSxjLG4pLHM9Yzt2YXIgaD0obj1tKS51cGRhdGVRdWV1ZTtpZihudWxsPT09aCl7dmFyIGc9bmV3IFNldDtnLmFkZChzKSxuLnVwZGF0ZVF1ZXVlPWd9ZWxzZSBoLmFkZChzKTticmVhayBlfWlmKCEoMSZuKSl7Z28odSxjLG4pLGhzKCk7YnJlYWsgZX1zPUVycm9yKGEoNDI2KSl9ZWxzZSBpZihsYSYmMSZpLm1vZGUpe3ZhciB2PXZvKG8pO2lmKG51bGwhPT12KXshKDY1NTM2JnYuZmxhZ3MpJiYodi5mbGFnc3w9MjU2KSx5byh2LG8saSwwLG4pLG1hKHNvKHMsaSkpO2JyZWFrIGV9fXU9cz1zbyhzLGkpLDQhPT1SaSYmKFJpPTIpLG51bGw9PT1WaT9WaT1bdV06VmkucHVzaCh1KSx1PW87ZG97c3dpdGNoKHUudGFnKXtjYXNlIDM6dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LG1vKDAscyxuKSk7YnJlYWsgZTtjYXNlIDE6aT1zO3ZhciB5PXUudHlwZSxiPXUuc3RhdGVOb2RlO2lmKCEoMTI4JnUuZmxhZ3N8fCJmdW5jdGlvbiIhPXR5cGVvZiB5LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvciYmKG51bGw9PT1ifHwiZnVuY3Rpb24iIT10eXBlb2YgYi5jb21wb25lbnREaWRDYXRjaHx8bnVsbCE9PSRpJiYkaS5oYXMoYikpKSl7dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LGhvKHUsaSxuKSk7YnJlYWsgZX19dT11LnJldHVybn13aGlsZShudWxsIT09dSl9a3ModCl9Y2F0Y2goZSl7bj1lLFRpPT09dCYmbnVsbCE9PXQmJihUaT10PXQucmV0dXJuKTtjb250aW51ZX1icmVha319ZnVuY3Rpb24gbXMoKXt2YXIgZT1DaS5jdXJyZW50O3JldHVybiBDaS5jdXJyZW50PWFvLG51bGw9PT1lP2FvOmV9ZnVuY3Rpb24gaHMoKXswIT09UmkmJjMhPT1SaSYmMiE9PVJpfHwoUmk9NCksbnVsbD09PVBpfHwhKDI2ODQzNTQ1NSZJaSkmJiEoMjY4NDM1NDU1Jk9pKXx8b3MoUGksTGkpfWZ1bmN0aW9uIGdzKGUsbil7dmFyIHQ9X2k7X2l8PTI7dmFyIHI9bXMoKTtmb3IoUGk9PT1lJiZMaT09PW58fChIaT1udWxsLGRzKGUsbikpOzspdHJ5e3ZzKCk7YnJlYWt9Y2F0Y2gobil7cHMoZSxuKX1pZih3YSgpLF9pPXQsQ2kuY3VycmVudD1yLG51bGwhPT1UaSl0aHJvdyBFcnJvcihhKDI2MSkpO3JldHVybiBQaT1udWxsLExpPTAsUml9ZnVuY3Rpb24gdnMoKXtmb3IoO251bGwhPT1UaTspYnMoVGkpfWZ1bmN0aW9uIHlzKCl7Zm9yKDtudWxsIT09VGkmJiFZZSgpOylicyhUaSl9ZnVuY3Rpb24gYnMoZSl7dmFyIG49eGkoZS5hbHRlcm5hdGUsZSxNaSk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT1uP2tzKGUpOlRpPW4semkuY3VycmVudD1udWxsfWZ1bmN0aW9uIGtzKGUpe3ZhciBuPWU7ZG97dmFyIHQ9bi5hbHRlcm5hdGU7aWYoZT1uLnJldHVybiwzMjc2OCZuLmZsYWdzKXtpZihudWxsIT09KHQ9S28odCxuKSkpcmV0dXJuIHQuZmxhZ3MmPTMyNzY3LHZvaWQoVGk9dCk7aWYobnVsbD09PWUpcmV0dXJuIFJpPTYsdm9pZChUaT1udWxsKTtlLmZsYWdzfD0zMjc2OCxlLnN1YnRyZWVGbGFncz0wLGUuZGVsZXRpb25zPW51bGx9ZWxzZSBpZihudWxsIT09KHQ9cW8odCxuLE1pKSkpcmV0dXJuIHZvaWQoVGk9dCk7aWYobnVsbCE9PShuPW4uc2libGluZykpcmV0dXJuIHZvaWQoVGk9bik7VGk9bj1lfXdoaWxlKG51bGwhPT1uKTswPT09UmkmJihSaT01KX1mdW5jdGlvbiB3cyhlLG4sdCl7dmFyIHI9a24sbD1OaS50cmFuc2l0aW9uO3RyeXtOaS50cmFuc2l0aW9uPW51bGwsa249MSxmdW5jdGlvbihlLG4sdCxyKXtkb3tTcygpfXdoaWxlKG51bGwhPT1LaSk7aWYoNiZfaSl0aHJvdyBFcnJvcihhKDMyNykpO3Q9ZS5maW5pc2hlZFdvcms7dmFyIGw9ZS5maW5pc2hlZExhbmVzO2lmKG51bGw9PT10KXJldHVybiBudWxsO2lmKGUuZmluaXNoZWRXb3JrPW51bGwsZS5maW5pc2hlZExhbmVzPTAsdD09PWUuY3VycmVudCl0aHJvdyBFcnJvcihhKDE3NykpO2UuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7dmFyIHU9dC5sYW5lc3x0LmNoaWxkTGFuZXM7aWYoZnVuY3Rpb24oZSxuKXt2YXIgdD1lLnBlbmRpbmdMYW5lcyZ+bjtlLnBlbmRpbmdMYW5lcz1uLGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPW4sZS5tdXRhYmxlUmVhZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sbj1lLmVudGFuZ2xlbWVudHM7dmFyIHI9ZS5ldmVudFRpbWVzO2ZvcihlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBsPTMxLXVuKHQpLGE9MTw8bDtuW2xdPTAscltsXT0tMSxlW2xdPS0xLHQmPX5hfX0oZSx1KSxlPT09UGkmJihUaT1QaT1udWxsLExpPTApLAohKDIwNjQmdC5zdWJ0cmVlRmxhZ3MpJiYhKDIwNjQmdC5mbGFncyl8fHFpfHwocWk9ITAsUHMobm4sKGZ1bmN0aW9uKCl7cmV0dXJuIFNzKCksbnVsbH0pKSksdT0hISgxNTk5MCZ0LmZsYWdzKSwhISgxNTk5MCZ0LnN1YnRyZWVGbGFncyl8fHUpe3U9TmkudHJhbnNpdGlvbixOaS50cmFuc2l0aW9uPW51bGw7dmFyIG89a247a249MTt2YXIgaT1faTtfaXw9NCx6aS5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSxuKXtpZihlbD1qbixwcihlPWRyKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgdD17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTp7dmFyIHI9KHQ9KHQ9ZS5vd25lckRvY3VtZW50KSYmdC5kZWZhdWx0Vmlld3x8d2luZG93KS5nZXRTZWxlY3Rpb24mJnQuZ2V0U2VsZWN0aW9uKCk7aWYociYmMCE9PXIucmFuZ2VDb3VudCl7dD1yLmFuY2hvck5vZGU7dmFyIGw9ci5hbmNob3JPZmZzZXQsdT1yLmZvY3VzTm9kZTtyPXIuZm9jdXNPZmZzZXQ7dHJ5e3Qubm9kZVR5cGUsdS5ub2RlVHlwZX1jYXRjaChlKXt0PW51bGw7YnJlYWsgZX12YXIgbz0wLGk9LTEscz0tMSxjPTAsZj0wLGQ9ZSxwPW51bGw7bjpmb3IoOzspe2Zvcih2YXIgbTtkIT09dHx8MCE9PWwmJjMhPT1kLm5vZGVUeXBlfHwoaT1vK2wpLGQhPT11fHwwIT09ciYmMyE9PWQubm9kZVR5cGV8fChzPW8rciksMz09PWQubm9kZVR5cGUmJihvKz1kLm5vZGVWYWx1ZS5sZW5ndGgpLG51bGwhPT0obT1kLmZpcnN0Q2hpbGQpOylwPWQsZD1tO2Zvcig7Oyl7aWYoZD09PWUpYnJlYWsgbjtpZihwPT09dCYmKytjPT09bCYmKGk9bykscD09PXUmJisrZj09PXImJihzPW8pLG51bGwhPT0obT1kLm5leHRTaWJsaW5nKSlicmVhaztwPShkPXApLnBhcmVudE5vZGV9ZD1tfXQ9LTE9PT1pfHwtMT09PXM/bnVsbDp7c3RhcnQ6aSxlbmQ6c319ZWxzZSB0PW51bGx9dD10fHx7c3RhcnQ6MCxlbmQ6MH19ZWxzZSB0PW51bGw7Zm9yKG5sPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOnR9LGpuPSExLFpvPW47bnVsbCE9PVpvOylpZihlPShuPVpvKS5jaGlsZCwxMDI4Jm4uc3VidHJlZUZsYWdzJiZudWxsIT09ZSllLnJldHVybj1uLFpvPWU7ZWxzZSBmb3IoO251bGwhPT1abzspe249Wm87dHJ5e3ZhciBoPW4uYWx0ZXJuYXRlO2lmKDEwMjQmbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztjYXNlIDE6aWYobnVsbCE9PWgpe3ZhciBnPWgubWVtb2l6ZWRQcm9wcyx2PWgubWVtb2l6ZWRTdGF0ZSx5PW4uc3RhdGVOb2RlLGI9eS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZShuLmVsZW1lbnRUeXBlPT09bi50eXBlP2c6Z2Eobi50eXBlLGcpLHYpO3kuX19yZWFjdEludGVybmFsU25hcHNob3RCZWZvcmVVcGRhdGU9Yn1icmVhaztjYXNlIDM6dmFyIGs9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09ay5ub2RlVHlwZT9rLnRleHRDb250ZW50PSIiOjk9PT1rLm5vZGVUeXBlJiZrLmRvY3VtZW50RWxlbWVudCYmay5yZW1vdmVDaGlsZChrLmRvY3VtZW50RWxlbWVudCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihhKDE2MykpfX1jYXRjaChlKXtFcyhuLG4ucmV0dXJuLGUpfWlmKG51bGwhPT0oZT1uLnNpYmxpbmcpKXtlLnJldHVybj1uLnJldHVybixabz1lO2JyZWFrfVpvPW4ucmV0dXJufWg9bmksbmk9ITF9KGUsdCksZ2kodCxlKSxtcihubCksam49ISFlbCxubD1lbD1udWxsLGUuY3VycmVudD10LHlpKHQsZSxsKSxYZSgpLF9pPWksa249byxOaS50cmFuc2l0aW9uPXV9ZWxzZSBlLmN1cnJlbnQ9dDtpZihxaSYmKHFpPSExLEtpPWUsWWk9bCksdT1lLnBlbmRpbmdMYW5lcywwPT09dSYmKCRpPW51bGwpLGZ1bmN0aW9uKGUpe2lmKGFuJiYiZnVuY3Rpb24iPT10eXBlb2YgYW4ub25Db21taXRGaWJlclJvb3QpdHJ5e2FuLm9uQ29tbWl0RmliZXJSb290KGxuLGUsdm9pZCAwLCEoMTI4Jn5lLmN1cnJlbnQuZmxhZ3MpKX1jYXRjaChlKXt9fSh0LnN0YXRlTm9kZSkscnMoZSxHZSgpKSxudWxsIT09bilmb3Iocj1lLm9uUmVjb3ZlcmFibGVFcnJvcix0PTA7dDxuLmxlbmd0aDt0KyspbD1uW3RdLHIobC52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bC5zdGFjayxkaWdlc3Q6bC5kaWdlc3R9KTtpZihRaSl0aHJvdyBRaT0hMSxlPWppLGppPW51bGwsZTshISgxJllpKSYmMCE9PWUudGFnJiZTcygpLHU9ZS5wZW5kaW5nTGFuZXMsMSZ1P2U9PT1HaT9YaSsrOihYaT0wLEdpPWUpOlhpPTAsV2woKX0oZSxuLHQscil9ZmluYWxseXtOaS50cmFuc2l0aW9uPWwsa249cn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBTcygpe2lmKG51bGwhPT1LaSl7dmFyIGU9d24oWWkpLG49TmkudHJhbnNpdGlvbix0PWtuO3RyeXtpZihOaS50cmFuc2l0aW9uPW51bGwsa249MTY+ZT8xNjplLG51bGw9PT1LaSl2YXIgcj0hMTtlbHNle2lmKGU9S2ksS2k9bnVsbCxZaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMzEpKTt2YXIgbD1faTtmb3IoX2l8PTQsWm89ZS5jdXJyZW50O251bGwhPT1abzspe3ZhciB1PVpvLG89dS5jaGlsZDtpZigxNiZaby5mbGFncyl7dmFyIGk9dS5kZWxldGlvbnM7aWYobnVsbCE9PWkpe2Zvcih2YXIgcz0wO3M8aS5sZW5ndGg7cysrKXt2YXIgYz1pW3NdO2Zvcihabz1jO251bGwhPT1abzspe3ZhciBmPVpvO3N3aXRjaChmLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTp0aSg4LGYsdSl9dmFyIGQ9Zi5jaGlsZDtpZihudWxsIT09ZClkLnJldHVybj1mLFpvPWQ7ZWxzZSBmb3IoO251bGwhPT1abzspe3ZhciBwPShmPVpvKS5zaWJsaW5nLG09Zi5yZXR1cm47aWYoYWkoZiksZj09PWMpe1pvPW51bGw7YnJlYWt9aWYobnVsbCE9PXApe3AucmV0dXJuPW0sWm89cDticmVha31abz1tfX19dmFyIGg9dS5hbHRlcm5hdGU7aWYobnVsbCE9PWgpe3ZhciBnPWguY2hpbGQ7aWYobnVsbCE9PWcpe2guY2hpbGQ9bnVsbDtkb3t2YXIgdj1nLnNpYmxpbmc7Zy5zaWJsaW5nPW51bGwsZz12fXdoaWxlKG51bGwhPT1nKX19Wm89dX19aWYoMjA2NCZ1LnN1YnRyZWVGbGFncyYmbnVsbCE9PW8pby5yZXR1cm49dSwKWm89bztlbHNlIGU6Zm9yKDtudWxsIT09Wm87KXtpZigyMDQ4Jih1PVpvKS5mbGFncylzd2l0Y2godS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dGkoOSx1LHUucmV0dXJuKX12YXIgeT11LnNpYmxpbmc7aWYobnVsbCE9PXkpe3kucmV0dXJuPXUucmV0dXJuLFpvPXk7YnJlYWsgZX1abz11LnJldHVybn19dmFyIGI9ZS5jdXJyZW50O2Zvcihabz1iO251bGwhPT1abzspe3ZhciBrPShvPVpvKS5jaGlsZDtpZigyMDY0Jm8uc3VidHJlZUZsYWdzJiZudWxsIT09aylrLnJldHVybj1vLFpvPWs7ZWxzZSBlOmZvcihvPWI7bnVsbCE9PVpvOyl7aWYoMjA0OCYoaT1abykuZmxhZ3MpdHJ5e3N3aXRjaChpLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpyaSg5LGkpfX1jYXRjaChlKXtFcyhpLGkucmV0dXJuLGUpfWlmKGk9PT1vKXtabz1udWxsO2JyZWFrIGV9dmFyIHc9aS5zaWJsaW5nO2lmKG51bGwhPT13KXt3LnJldHVybj1pLnJldHVybixabz13O2JyZWFrIGV9Wm89aS5yZXR1cm59fWlmKF9pPWwsV2woKSxhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7YW4ub25Qb3N0Q29tbWl0RmliZXJSb290KGxuLGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7a249dCxOaS50cmFuc2l0aW9uPW59fXJldHVybiExfWZ1bmN0aW9uIHhzKGUsbix0KXtlPVJhKGUsbj1tbygwLG49c28odCxuKSwxKSwxKSxuPWVzKCksbnVsbCE9PWUmJih5bihlLDEsbikscnMoZSxuKSl9ZnVuY3Rpb24gRXMoZSxuLHQpe2lmKDM9PT1lLnRhZyl4cyhlLGUsdCk7ZWxzZSBmb3IoO251bGwhPT1uOyl7aWYoMz09PW4udGFnKXt4cyhuLGUsdCk7YnJlYWt9aWYoMT09PW4udGFnKXt2YXIgcj1uLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygbi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09JGl8fCEkaS5oYXMocikpKXtuPVJhKG4sZT1obyhuLGU9c28odCxlKSwxKSwxKSxlPWVzKCksbnVsbCE9PW4mJih5bihuLDEsZSkscnMobixlKSk7YnJlYWt9fW49bi5yZXR1cm59fWZ1bmN0aW9uIENzKGUsbix0KXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUobiksbj1lcygpLGUucGluZ2VkTGFuZXN8PWUuc3VzcGVuZGVkTGFuZXMmdCxQaT09PWUmJihMaSZ0KT09PXQmJig0PT09Uml8fDM9PT1SaSYmKDEzMDAyMzQyNCZMaSk9PT1MaSYmNTAwPkdlKCktQmk/ZHMoZSwwKTpVaXw9dCkscnMoZSxuKX1mdW5jdGlvbiB6cyhlLG4pezA9PT1uJiYoMSZlLm1vZGU/KG49Zm4sISgxMzAwMjM0MjQmKGZuPDw9MSkpJiYoZm49NDE5NDMwNCkpOm49MSk7dmFyIHQ9ZXMoKTtudWxsIT09KGU9UGEoZSxuKSkmJih5bihlLG4sdCkscnMoZSx0KSl9ZnVuY3Rpb24gTnMoZSl7dmFyIG49ZS5tZW1vaXplZFN0YXRlLHQ9MDtudWxsIT09biYmKHQ9bi5yZXRyeUxhbmUpLHpzKGUsdCl9ZnVuY3Rpb24gX3MoZSxuKXt2YXIgdD0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxsPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09bCYmKHQ9bC5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKG4pLHpzKGUsdCl9ZnVuY3Rpb24gUHMoZSxuKXtyZXR1cm4gcWUoZSxuKX1mdW5jdGlvbiBUcyhlLG4sdCxyKXt0aGlzLnRhZz1lLHRoaXMua2V5PXQsdGhpcy5zaWJsaW5nPXRoaXMuY2hpbGQ9dGhpcy5yZXR1cm49dGhpcy5zdGF0ZU5vZGU9dGhpcy50eXBlPXRoaXMuZWxlbWVudFR5cGU9bnVsbCx0aGlzLmluZGV4PTAsdGhpcy5yZWY9bnVsbCx0aGlzLnBlbmRpbmdQcm9wcz1uLHRoaXMuZGVwZW5kZW5jaWVzPXRoaXMubWVtb2l6ZWRTdGF0ZT10aGlzLnVwZGF0ZVF1ZXVlPXRoaXMubWVtb2l6ZWRQcm9wcz1udWxsLHRoaXMubW9kZT1yLHRoaXMuc3VidHJlZUZsYWdzPXRoaXMuZmxhZ3M9MCx0aGlzLmRlbGV0aW9ucz1udWxsLHRoaXMuY2hpbGRMYW5lcz10aGlzLmxhbmVzPTAsdGhpcy5hbHRlcm5hdGU9bnVsbH1mdW5jdGlvbiBMcyhlLG4sdCxyKXtyZXR1cm4gbmV3IFRzKGUsbix0LHIpfWZ1bmN0aW9uIE1zKGUpe3JldHVybiEoIShlPWUucHJvdG90eXBlKXx8IWUuaXNSZWFjdENvbXBvbmVudCl9ZnVuY3Rpb24gRnMoZSxuKXt2YXIgdD1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PXQ/KCh0PUxzKGUudGFnLG4sZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSx0LnR5cGU9ZS50eXBlLHQuc3RhdGVOb2RlPWUuc3RhdGVOb2RlLHQuYWx0ZXJuYXRlPWUsZS5hbHRlcm5hdGU9dCk6KHQucGVuZGluZ1Byb3BzPW4sdC50eXBlPWUudHlwZSx0LmZsYWdzPTAsdC5zdWJ0cmVlRmxhZ3M9MCx0LmRlbGV0aW9ucz1udWxsKSx0LmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3MsdC5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyx0LmxhbmVzPWUubGFuZXMsdC5jaGlsZD1lLmNoaWxkLHQubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsdC5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSx0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbj1lLmRlcGVuZGVuY2llcyx0LmRlcGVuZGVuY2llcz1udWxsPT09bj9udWxsOntsYW5lczpuLmxhbmVzLGZpcnN0Q29udGV4dDpuLmZpcnN0Q29udGV4dH0sdC5zaWJsaW5nPWUuc2libGluZyx0LmluZGV4PWUuaW5kZXgsdC5yZWY9ZS5yZWYsdH1mdW5jdGlvbiBScyhlLG4sdCxyLGwsdSl7dmFyIG89MjtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpTXMoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89NTtlbHNlIGU6c3dpdGNoKGUpe2Nhc2UgeDpyZXR1cm4gRHModC5jaGlsZHJlbixsLHUsbik7Y2FzZSBFOm89OCxsfD04O2JyZWFrO2Nhc2UgQzpyZXR1cm4oZT1McygxMix0LG4sMnxsKSkuZWxlbWVudFR5cGU9QyxlLmxhbmVzPXUsZTtjYXNlIFA6cmV0dXJuKGU9THMoMTMsdCxuLGwpKS5lbGVtZW50VHlwZT1QLGUubGFuZXM9dSxlO2Nhc2UgVDoKcmV0dXJuKGU9THMoMTksdCxuLGwpKS5lbGVtZW50VHlwZT1ULGUubGFuZXM9dSxlO2Nhc2UgRjpyZXR1cm4gSXModCxsLHUsbik7ZGVmYXVsdDppZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXN3aXRjaChlLiQkdHlwZW9mKXtjYXNlIHo6bz0xMDticmVhayBlO2Nhc2UgTjpvPTk7YnJlYWsgZTtjYXNlIF86bz0xMTticmVhayBlO2Nhc2UgTDpvPTE0O2JyZWFrIGU7Y2FzZSBNOm89MTYscj1udWxsO2JyZWFrIGV9dGhyb3cgRXJyb3IoYSgxMzAsbnVsbD09ZT9lOnR5cGVvZiBlLCIiKSl9cmV0dXJuKG49THMobyx0LG4sbCkpLmVsZW1lbnRUeXBlPWUsbi50eXBlPXIsbi5sYW5lcz11LG59ZnVuY3Rpb24gRHMoZSxuLHQscil7cmV0dXJuKGU9THMoNyxlLHIsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBJcyhlLG4sdCxyKXtyZXR1cm4oZT1McygyMixlLHIsbikpLmVsZW1lbnRUeXBlPUYsZS5sYW5lcz10LGUuc3RhdGVOb2RlPXtpc0hpZGRlbjohMX0sZX1mdW5jdGlvbiBPcyhlLG4sdCl7cmV0dXJuKGU9THMoNixlLG51bGwsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBVcyhlLG4sdCl7cmV0dXJuKG49THMoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LG4pKS5sYW5lcz10LG4uc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSxufWZ1bmN0aW9uIFZzKGUsbix0LHIsbCl7dGhpcy50YWc9bix0aGlzLmNvbnRhaW5lckluZm89ZSx0aGlzLmZpbmlzaGVkV29yaz10aGlzLnBpbmdDYWNoZT10aGlzLmN1cnJlbnQ9dGhpcy5wZW5kaW5nQ2hpbGRyZW49bnVsbCx0aGlzLnRpbWVvdXRIYW5kbGU9LTEsdGhpcy5jYWxsYmFja05vZGU9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9bnVsbCx0aGlzLmNhbGxiYWNrUHJpb3JpdHk9MCx0aGlzLmV2ZW50VGltZXM9dm4oMCksdGhpcy5leHBpcmF0aW9uVGltZXM9dm4oLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5maW5pc2hlZExhbmVzPXRoaXMubXV0YWJsZVJlYWRMYW5lcz10aGlzLmV4cGlyZWRMYW5lcz10aGlzLnBpbmdlZExhbmVzPXRoaXMuc3VzcGVuZGVkTGFuZXM9dGhpcy5wZW5kaW5nTGFuZXM9MCx0aGlzLmVudGFuZ2xlbWVudHM9dm4oMCksdGhpcy5pZGVudGlmaWVyUHJlZml4PXIsdGhpcy5vblJlY292ZXJhYmxlRXJyb3I9bCx0aGlzLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGE9bnVsbH1mdW5jdGlvbiBBcyhlLG4sdCxyLGwsYSx1LG8saSl7cmV0dXJuIGU9bmV3IFZzKGUsbix0LG8saSksMT09PW4/KG49MSwhMD09PWEmJihufD04KSk6bj0wLGE9THMoMyxudWxsLG51bGwsbiksZS5jdXJyZW50PWEsYS5zdGF0ZU5vZGU9ZSxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6dCxjYWNoZTpudWxsLHRyYW5zaXRpb25zOm51bGwscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpudWxsfSxMYShhKSxlfWZ1bmN0aW9uIEJzKGUpe2lmKCFlKXJldHVybiBObDtlOntpZihXZShlPWUuX3JlYWN0SW50ZXJuYWxzKSE9PWV8fDEhPT1lLnRhZyl0aHJvdyBFcnJvcihhKDE3MCkpO3ZhciBuPWU7ZG97c3dpdGNoKG4udGFnKXtjYXNlIDM6bj1uLnN0YXRlTm9kZS5jb250ZXh0O2JyZWFrIGU7Y2FzZSAxOmlmKE1sKG4udHlwZSkpe249bi5zdGF0ZU5vZGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ7YnJlYWsgZX19bj1uLnJldHVybn13aGlsZShudWxsIT09bik7dGhyb3cgRXJyb3IoYSgxNzEpKX1pZigxPT09ZS50YWcpe3ZhciB0PWUudHlwZTtpZihNbCh0KSlyZXR1cm4gRGwoZSx0LG4pfXJldHVybiBufWZ1bmN0aW9uIFdzKGUsbix0LHIsbCxhLHUsbyxpKXtyZXR1cm4oZT1Bcyh0LHIsITAsZSwwLGEsMCxvLGkpKS5jb250ZXh0PUJzKG51bGwpLHQ9ZS5jdXJyZW50LChhPUZhKHI9ZXMoKSxsPW5zKHQpKSkuY2FsbGJhY2s9bnVsbCE9bj9uOm51bGwsUmEodCxhLGwpLGUuY3VycmVudC5sYW5lcz1sLHluKGUsbCxyKSxycyhlLHIpLGV9ZnVuY3Rpb24gSHMoZSxuLHQscil7dmFyIGw9bi5jdXJyZW50LGE9ZXMoKSx1PW5zKGwpO3JldHVybiB0PUJzKHQpLG51bGw9PT1uLmNvbnRleHQ/bi5jb250ZXh0PXQ6bi5wZW5kaW5nQ29udGV4dD10LChuPUZhKGEsdSkpLnBheWxvYWQ9e2VsZW1lbnQ6ZX0sbnVsbCE9PShyPXZvaWQgMD09PXI/bnVsbDpyKSYmKG4uY2FsbGJhY2s9ciksbnVsbCE9PShlPVJhKGwsbix1KSkmJih0cyhlLGwsdSxhKSxEYShlLGwsdSkpLHV9ZnVuY3Rpb24gUXMoZSl7cmV0dXJuKGU9ZS5jdXJyZW50KS5jaGlsZD8oZS5jaGlsZC50YWcsZS5jaGlsZC5zdGF0ZU5vZGUpOm51bGx9ZnVuY3Rpb24ganMoZSxuKXtpZihudWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7dmFyIHQ9ZS5yZXRyeUxhbmU7ZS5yZXRyeUxhbmU9MCE9PXQmJnQ8bj90Om59fWZ1bmN0aW9uICRzKGUsbil7anMoZSxuKSwoZT1lLmFsdGVybmF0ZSkmJmpzKGUsbil9eGk9ZnVuY3Rpb24oZSxuLHQpe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PW4ucGVuZGluZ1Byb3BzfHxQbC5jdXJyZW50KWtvPSEwO2Vsc2V7aWYoIShlLmxhbmVzJnR8fDEyOCZuLmZsYWdzKSlyZXR1cm4ga289ITEsZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuLnRhZyl7Y2FzZSAzOlRvKG4pLHBhKCk7YnJlYWs7Y2FzZSA1OmF1KG4pO2JyZWFrO2Nhc2UgMTpNbChuLnR5cGUpJiZJbChuKTticmVhaztjYXNlIDQ6cnUobixuLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciByPW4udHlwZS5fY29udGV4dCxsPW4ubWVtb2l6ZWRQcm9wcy52YWx1ZTt6bCh2YSxyLl9jdXJyZW50VmFsdWUpLHIuX2N1cnJlbnRWYWx1ZT1sO2JyZWFrO2Nhc2UgMTM6aWYobnVsbCE9PShyPW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuIG51bGwhPT1yLmRlaHlkcmF0ZWQ/KHpsKG91LDEmb3UuY3VycmVudCksbi5mbGFnc3w9MTI4LG51bGwpOnQmbi5jaGlsZC5jaGlsZExhbmVzP09vKGUsbix0KTooemwob3UsMSZvdS5jdXJyZW50KSwKbnVsbCE9PShlPVFvKGUsbix0KSk/ZS5zaWJsaW5nOm51bGwpO3psKG91LDEmb3UuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihyPSEhKHQmbi5jaGlsZExhbmVzKSwxMjgmZS5mbGFncyl7aWYocilyZXR1cm4gV28oZSxuLHQpO24uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9bi5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLHpsKG91LG91LmN1cnJlbnQpLHIpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBuLmxhbmVzPTAsQ28oZSxuLHQpfXJldHVybiBRbyhlLG4sdCl9KGUsbix0KTtrbz0hISgxMzEwNzImZS5mbGFncyl9ZWxzZSBrbz0hMSxsYSYmMTA0ODU3NiZuLmZsYWdzJiZKbChuLCRsLG4uaW5kZXgpO3N3aXRjaChuLmxhbmVzPTAsbi50YWcpe2Nhc2UgMjp2YXIgcj1uLnR5cGU7SG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzO3ZhciBsPUxsKG4sX2wuY3VycmVudCk7RWEobix0KSxsPXh1KG51bGwsbixyLGUsbCx0KTt2YXIgdT1FdSgpO3JldHVybiBuLmZsYWdzfD0xLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnJlbmRlciYmdm9pZCAwPT09bC4kJHR5cGVvZj8obi50YWc9MSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsTWwocik/KHU9ITAsSWwobikpOnU9ITEsbi5tZW1vaXplZFN0YXRlPW51bGwhPT1sLnN0YXRlJiZ2b2lkIDAhPT1sLnN0YXRlP2wuc3RhdGU6bnVsbCxMYShuKSxsLnVwZGF0ZXI9QmEsbi5zdGF0ZU5vZGU9bCxsLl9yZWFjdEludGVybmFscz1uLGphKG4scixlLHQpLG49UG8obnVsbCxuLHIsITAsdSx0KSk6KG4udGFnPTAsbGEmJnUmJmVhKG4pLHdvKG51bGwsbixsLHQpLG49bi5jaGlsZCksbjtjYXNlIDE2OnI9bi5lbGVtZW50VHlwZTtlOntzd2l0Y2goSG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzLHI9KGw9ci5faW5pdCkoci5fcGF5bG9hZCksbi50eXBlPXIsbD1uLnRhZz1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gTXMoZSk/MTowO2lmKG51bGwhPWUpe2lmKChlPWUuJCR0eXBlb2YpPT09XylyZXR1cm4gMTE7aWYoZT09PUwpcmV0dXJuIDE0fXJldHVybiAyfShyKSxlPWdhKHIsZSksbCl7Y2FzZSAwOm49Tm8obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTpuPV9vKG51bGwsbixyLGUsdCk7YnJlYWsgZTtjYXNlIDExOm49U28obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTQ6bj14byhudWxsLG4scixnYShyLnR5cGUsZSksdCk7YnJlYWsgZX10aHJvdyBFcnJvcihhKDMwNixyLCIiKSl9cmV0dXJuIG47Y2FzZSAwOnJldHVybiByPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLE5vKGUsbixyLGw9bi5lbGVtZW50VHlwZT09PXI/bDpnYShyLGwpLHQpO2Nhc2UgMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxfbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDM6ZTp7aWYoVG8obiksbnVsbD09PWUpdGhyb3cgRXJyb3IoYSgzODcpKTtyPW4ucGVuZGluZ1Byb3BzLGw9KHU9bi5tZW1vaXplZFN0YXRlKS5lbGVtZW50LE1hKGUsbiksT2EobixyLG51bGwsdCk7dmFyIG89bi5tZW1vaXplZFN0YXRlO2lmKHI9by5lbGVtZW50LHUuaXNEZWh5ZHJhdGVkKXtpZih1PXtlbGVtZW50OnIsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOm8uY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpvLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6by50cmFuc2l0aW9uc30sbi51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9dSxuLm1lbW9pemVkU3RhdGU9dSwyNTYmbi5mbGFncyl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjMpKSxuKSk7YnJlYWsgZX1pZihyIT09bCl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjQpKSxuKSk7YnJlYWsgZX1mb3IocmE9c2wobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mby5maXJzdENoaWxkKSx0YT1uLGxhPSEwLGFhPW51bGwsdD1HYShuLG51bGwscix0KSxuLmNoaWxkPXQ7dDspdC5mbGFncz0tMyZ0LmZsYWdzfDQwOTYsdD10LnNpYmxpbmd9ZWxzZXtpZihwYSgpLHI9PT1sKXtuPVFvKGUsbix0KTticmVhayBlfXdvKGUsbixyLHQpfW49bi5jaGlsZH1yZXR1cm4gbjtjYXNlIDU6cmV0dXJuIGF1KG4pLG51bGw9PT1lJiZzYShuKSxyPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLHU9bnVsbCE9PWU/ZS5tZW1vaXplZFByb3BzOm51bGwsbz1sLmNoaWxkcmVuLHRsKHIsbCk/bz1udWxsOm51bGwhPT11JiZ0bChyLHUpJiYobi5mbGFnc3w9MzIpLHpvKGUsbiksd28oZSxuLG8sdCksbi5jaGlsZDtjYXNlIDY6cmV0dXJuIG51bGw9PT1lJiZzYShuKSxudWxsO2Nhc2UgMTM6cmV0dXJuIE9vKGUsbix0KTtjYXNlIDQ6cmV0dXJuIHJ1KG4sbi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscj1uLnBlbmRpbmdQcm9wcyxudWxsPT09ZT9uLmNoaWxkPVhhKG4sbnVsbCxyLHQpOndvKGUsbixyLHQpLG4uY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxTbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDc6cmV0dXJuIHdvKGUsbixuLnBlbmRpbmdQcm9wcyx0KSxuLmNoaWxkO2Nhc2UgODpjYXNlIDEyOnJldHVybiB3byhlLG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sdCksbi5jaGlsZDtjYXNlIDEwOmU6e2lmKHI9bi50eXBlLl9jb250ZXh0LGw9bi5wZW5kaW5nUHJvcHMsdT1uLm1lbW9pemVkUHJvcHMsbz1sLnZhbHVlLHpsKHZhLHIuX2N1cnJlbnRWYWx1ZSksci5fY3VycmVudFZhbHVlPW8sbnVsbCE9PXUpaWYob3IodS52YWx1ZSxvKSl7aWYodS5jaGlsZHJlbj09PWwuY2hpbGRyZW4mJiFQbC5jdXJyZW50KXtuPVFvKGUsbix0KTticmVhayBlfX1lbHNlIGZvcihudWxsIT09KHU9bi5jaGlsZCkmJih1LnJldHVybj1uKTtudWxsIT09dTspe3ZhciBpPXUuZGVwZW5kZW5jaWVzO2lmKG51bGwhPT1pKXtvPXUuY2hpbGQ7Zm9yKHZhciBzPWkuZmlyc3RDb250ZXh0O251bGwhPT1zOyl7aWYocy5jb250ZXh0PT09cil7CmlmKDE9PT11LnRhZyl7KHM9RmEoLTEsdCYtdCkpLnRhZz0yO3ZhciBjPXUudXBkYXRlUXVldWU7aWYobnVsbCE9PWMpe3ZhciBmPShjPWMuc2hhcmVkKS5wZW5kaW5nO251bGw9PT1mP3MubmV4dD1zOihzLm5leHQ9Zi5uZXh0LGYubmV4dD1zKSxjLnBlbmRpbmc9c319dS5sYW5lc3w9dCxudWxsIT09KHM9dS5hbHRlcm5hdGUpJiYocy5sYW5lc3w9dCkseGEodS5yZXR1cm4sdCxuKSxpLmxhbmVzfD10O2JyZWFrfXM9cy5uZXh0fX1lbHNlIGlmKDEwPT09dS50YWcpbz11LnR5cGU9PT1uLnR5cGU/bnVsbDp1LmNoaWxkO2Vsc2UgaWYoMTg9PT11LnRhZyl7aWYobnVsbD09PShvPXUucmV0dXJuKSl0aHJvdyBFcnJvcihhKDM0MSkpO28ubGFuZXN8PXQsbnVsbCE9PShpPW8uYWx0ZXJuYXRlKSYmKGkubGFuZXN8PXQpLHhhKG8sdCxuKSxvPXUuc2libGluZ31lbHNlIG89dS5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj11O2Vsc2UgZm9yKG89dTtudWxsIT09bzspe2lmKG89PT1uKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PSh1PW8uc2libGluZykpe3UucmV0dXJuPW8ucmV0dXJuLG89dTticmVha31vPW8ucmV0dXJufXU9b313byhlLG4sbC5jaGlsZHJlbix0KSxuPW4uY2hpbGR9cmV0dXJuIG47Y2FzZSA5OnJldHVybiBsPW4udHlwZSxyPW4ucGVuZGluZ1Byb3BzLmNoaWxkcmVuLEVhKG4sdCkscj1yKGw9Q2EobCkpLG4uZmxhZ3N8PTEsd28oZSxuLHIsdCksbi5jaGlsZDtjYXNlIDE0OnJldHVybiBsPWdhKHI9bi50eXBlLG4ucGVuZGluZ1Byb3BzKSx4byhlLG4scixsPWdhKHIudHlwZSxsKSx0KTtjYXNlIDE1OnJldHVybiBFbyhlLG4sbi50eXBlLG4ucGVuZGluZ1Byb3BzLHQpO2Nhc2UgMTc6cmV0dXJuIHI9bi50eXBlLGw9bi5wZW5kaW5nUHJvcHMsbD1uLmVsZW1lbnRUeXBlPT09cj9sOmdhKHIsbCksSG8oZSxuKSxuLnRhZz0xLE1sKHIpPyhlPSEwLElsKG4pKTplPSExLEVhKG4sdCksSGEobixyLGwpLGphKG4scixsLHQpLFBvKG51bGwsbixyLCEwLGUsdCk7Y2FzZSAxOTpyZXR1cm4gV28oZSxuLHQpO2Nhc2UgMjI6cmV0dXJuIENvKGUsbix0KX10aHJvdyBFcnJvcihhKDE1NixuLnRhZykpfTt2YXIgcXM9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIEtzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFlzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFhzKGUpe3JldHVybiEoIWV8fDEhPT1lLm5vZGVUeXBlJiY5IT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlKX1mdW5jdGlvbiBHcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSYmKDghPT1lLm5vZGVUeXBlfHwiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICIhPT1lLm5vZGVWYWx1ZSkpfWZ1bmN0aW9uIFpzKCl7fWZ1bmN0aW9uIEpzKGUsbix0LHIsbCl7dmFyIGE9dC5fcmVhY3RSb290Q29udGFpbmVyO2lmKGEpe3ZhciB1PWE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGwpe3ZhciBvPWw7bD1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO28uY2FsbChlKX19SHMobix1LGUsbCl9ZWxzZSB1PWZ1bmN0aW9uKGUsbix0LHIsbCl7aWYobCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBhPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO2EuY2FsbChlKX19dmFyIHU9V3MobixyLGUsMCxudWxsLCExLDAsIiIsWnMpO3JldHVybiBlLl9yZWFjdFJvb3RDb250YWluZXI9dSxlW21sXT11LmN1cnJlbnQsV3IoOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLGNzKCksdX1mb3IoO2w9ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBvPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKGkpO28uY2FsbChlKX19dmFyIGk9QXMoZSwwLCExLG51bGwsMCwhMSwwLCIiLFpzKTtyZXR1cm4gZS5fcmVhY3RSb290Q29udGFpbmVyPWksZVttbF09aS5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxjcygoZnVuY3Rpb24oKXtIcyhuLGksdCxyKX0pKSxpfSh0LG4sZSxsLHIpO3JldHVybiBRcyh1KX1Zcy5wcm90b3R5cGUucmVuZGVyPUtzLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGw9PT1uKXRocm93IEVycm9yKGEoNDA5KSk7SHMoZSxuLG51bGwsbnVsbCl9LFlzLnByb3RvdHlwZS51bm1vdW50PUtzLnByb3RvdHlwZS51bm1vdW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGwhPT1lKXt0aGlzLl9pbnRlcm5hbFJvb3Q9bnVsbDt2YXIgbj1lLmNvbnRhaW5lckluZm87Y3MoKGZ1bmN0aW9uKCl7SHMobnVsbCxlLG51bGwsbnVsbCl9KSksblttbF09bnVsbH19LFlzLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgbj1DbigpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5Om59O2Zvcih2YXIgdD0wO3Q8Um4ubGVuZ3RoJiYwIT09biYmbjxSblt0XS5wcmlvcml0eTt0KyspO1JuLnNwbGljZSh0LDAsZSksMD09PXQmJlVuKGUpfX0sU249ZnVuY3Rpb24oZSl7c3dpdGNoKGUudGFnKXtjYXNlIDM6dmFyIG49ZS5zdGF0ZU5vZGU7aWYobi5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXt2YXIgdD1kbihuLnBlbmRpbmdMYW5lcyk7MCE9PXQmJihibihuLDF8dCkscnMobixHZSgpKSwhKDYmX2kpJiYoV2k9R2UoKSs1MDAsV2woKSkpfWJyZWFrO2Nhc2UgMTM6Y3MoKGZ1bmN0aW9uKCl7dmFyIG49UGEoZSwxKTtpZihudWxsIT09bil7dmFyIHQ9ZXMoKTt0cyhuLGUsMSx0KX19KSksJHMoZSwxKX19LHhuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPVBhKGUsMTM0MjE3NzI4KTtpZihudWxsIT09bil0cyhuLGUsMTM0MjE3NzI4LGVzKCkpOyRzKGUsMTM0MjE3NzI4KX19LEVuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPW5zKGUpLHQ9UGEoZSxuKQo7aWYobnVsbCE9PXQpdHModCxlLG4sZXMoKSk7JHMoZSxuKX19LENuPWZ1bmN0aW9uKCl7cmV0dXJuIGtufSx6bj1mdW5jdGlvbihlLG4pe3ZhciB0PWtuO3RyeXtyZXR1cm4ga249ZSxuKCl9ZmluYWxseXtrbj10fX0sU2U9ZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuKXtjYXNlImlucHV0IjppZihaKGUsdCksbj10Lm5hbWUsInJhZGlvIj09PXQudHlwZSYmbnVsbCE9bil7Zm9yKHQ9ZTt0LnBhcmVudE5vZGU7KXQ9dC5wYXJlbnROb2RlO2Zvcih0PXQucXVlcnlTZWxlY3RvckFsbCgiaW5wdXRbbmFtZT0iK0pTT04uc3RyaW5naWZ5KCIiK24pKyddW3R5cGU9InJhZGlvIl0nKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9d2wocik7aWYoIWwpdGhyb3cgRXJyb3IoYSg5MCkpO3EociksWihyLGwpfX19YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6YWUoZSx0KTticmVhaztjYXNlInNlbGVjdCI6bnVsbCE9KG49dC52YWx1ZSkmJnRlKGUsISF0Lm11bHRpcGxlLG4sITEpfX0sX2U9c3MsUGU9Y3M7dmFyIGVjPXt1c2luZ0NsaWVudEVudHJ5UG9pbnQ6ITEsRXZlbnRzOltibCxrbCx3bCx6ZSxOZSxzc119LG5jPXtmaW5kRmliZXJCeUhvc3RJbnN0YW5jZTp5bCxidW5kbGVUeXBlOjAsdmVyc2lvbjoiMTguMi4wIixyZW5kZXJlclBhY2thZ2VOYW1lOiJyZWFjdC1kb20ifSx0Yz17YnVuZGxlVHlwZTpuYy5idW5kbGVUeXBlLHZlcnNpb246bmMudmVyc2lvbixyZW5kZXJlclBhY2thZ2VOYW1lOm5jLnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6bmMucmVuZGVyZXJDb25maWcsb3ZlcnJpZGVIb29rU3RhdGU6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZURlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZVJlbmFtZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzOm51bGwsb3ZlcnJpZGVQcm9wc0RlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzUmVuYW1lUGF0aDpudWxsLHNldEVycm9ySGFuZGxlcjpudWxsLHNldFN1c3BlbnNlSGFuZGxlcjpudWxsLHNjaGVkdWxlVXBkYXRlOm51bGwsY3VycmVudERpc3BhdGNoZXJSZWY6ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLGZpbmRIb3N0SW5zdGFuY2VCeUZpYmVyOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09KGU9amUoZSkpP251bGw6ZS5zdGF0ZU5vZGV9LGZpbmRGaWJlckJ5SG9zdEluc3RhbmNlOm5jLmZpbmRGaWJlckJ5SG9zdEluc3RhbmNlfHxmdW5jdGlvbigpe3JldHVybiBudWxsfSxmaW5kSG9zdEluc3RhbmNlc0ZvclJlZnJlc2g6bnVsbCxzY2hlZHVsZVJlZnJlc2g6bnVsbCxzY2hlZHVsZVJvb3Q6bnVsbCxzZXRSZWZyZXNoSGFuZGxlcjpudWxsLGdldEN1cnJlbnRGaWJlcjpudWxsLHJlY29uY2lsZXJWZXJzaW9uOiIxOC4yLjAtbmV4dC05ZTNiNzcyYjgtMjAyMjA2MDgifTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIF9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyl7dmFyIHJjPV9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztpZighcmMuaXNEaXNhYmxlZCYmcmMuc3VwcG9ydHNGaWJlcil0cnl7bG49cmMuaW5qZWN0KHRjKSxhbj1yY31jYXRjaChjZSl7fX1uLl9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPWVjLG4uY3JlYXRlUG9ydGFsPWZ1bmN0aW9uKGUsbil7dmFyIHQ9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGw7aWYoIVhzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIGZ1bmN0aW9uKGUsbix0KXt2YXIgcj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbDtyZXR1cm57JCR0eXBlb2Y6UyxrZXk6bnVsbD09cj9udWxsOiIiK3IsY2hpbGRyZW46ZSxjb250YWluZXJJbmZvOm4saW1wbGVtZW50YXRpb246dH19KGUsbixudWxsLHQpfSxuLmNyZWF0ZVJvb3Q9ZnVuY3Rpb24oZSxuKXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSgyOTkpKTt2YXIgdD0hMSxyPSIiLGw9cXM7cmV0dXJuIG51bGwhPW4mJighMD09PW4udW5zdGFibGVfc3RyaWN0TW9kZSYmKHQ9ITApLHZvaWQgMCE9PW4uaWRlbnRpZmllclByZWZpeCYmKHI9bi5pZGVudGlmaWVyUHJlZml4KSx2b2lkIDAhPT1uLm9uUmVjb3ZlcmFibGVFcnJvciYmKGw9bi5vblJlY292ZXJhYmxlRXJyb3IpKSxuPUFzKGUsMSwhMSxudWxsLDAsdCwwLHIsbCksZVttbF09bi5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxuZXcgS3Mobil9LG4uZmluZERPTU5vZGU9ZnVuY3Rpb24oZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigxPT09ZS5ub2RlVHlwZSlyZXR1cm4gZTt2YXIgbj1lLl9yZWFjdEludGVybmFscztpZih2b2lkIDA9PT1uKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5yZW5kZXIpdGhyb3cgRXJyb3IoYSgxODgpKTt0aHJvdyBlPU9iamVjdC5rZXlzKGUpLmpvaW4oIiwiKSxFcnJvcihhKDI2OCxlKSl9cmV0dXJuIGU9bnVsbD09PShlPWplKG4pKT9udWxsOmUuc3RhdGVOb2RlfSxuLmZsdXNoU3luYz1mdW5jdGlvbihlKXtyZXR1cm4gY3MoZSl9LG4uaHlkcmF0ZT1mdW5jdGlvbihlLG4sdCl7aWYoIUdzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIEpzKG51bGwsZSxuLCEwLHQpfSxuLmh5ZHJhdGVSb290PWZ1bmN0aW9uKGUsbix0KXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSg0MDUpKTt2YXIgcj1udWxsIT10JiZ0Lmh5ZHJhdGVkU291cmNlc3x8bnVsbCxsPSExLHU9IiIsbz1xcztpZihudWxsIT10JiYoITA9PT10LnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT10LmlkZW50aWZpZXJQcmVmaXgmJih1PXQuaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09dC5vblJlY292ZXJhYmxlRXJyb3ImJihvPXQub25SZWNvdmVyYWJsZUVycm9yKSksbj1XcyhuLG51bGwsZSwxLG51bGwhPXQ/dDpudWxsLGwsMCx1LG8pLGVbbWxdPW4uY3VycmVudCxXcihlKSxyKWZvcihlPTA7ZTxyLmxlbmd0aDtlKyspbD0obD0odD1yW2VdKS5fZ2V0VmVyc2lvbikodC5fc291cmNlKSwKbnVsbD09bi5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP24ubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bdCxsXTpuLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaCh0LGwpO3JldHVybiBuZXcgWXMobil9LG4ucmVuZGVyPWZ1bmN0aW9uKGUsbix0KXtpZighR3MobikpdGhyb3cgRXJyb3IoYSgyMDApKTtyZXR1cm4gSnMobnVsbCxlLG4sITEsdCl9LG4udW5tb3VudENvbXBvbmVudEF0Tm9kZT1mdW5jdGlvbihlKXtpZighR3MoZSkpdGhyb3cgRXJyb3IoYSg0MCkpO3JldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoY3MoKGZ1bmN0aW9uKCl7SnMobnVsbCxudWxsLGUsITEsKGZ1bmN0aW9uKCl7ZS5fcmVhY3RSb290Q29udGFpbmVyPW51bGwsZVttbF09bnVsbH0pKX0pKSwhMCl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9c3Msbi51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLG4sdCxyKXtpZighR3ModCkpdGhyb3cgRXJyb3IoYSgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihhKDM4KSk7cmV0dXJuIEpzKGUsbix0LCExLHIpfSxuLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LDUwODIwNyhlLG4pe2Z1bmN0aW9uIHQoZSxuKXt2YXIgdD1lLmxlbmd0aDtlLnB1c2gobik7ZTpmb3IoOzA8dDspe3ZhciByPXQtMT4+PjEsbD1lW3JdO2lmKCEoMDxhKGwsbikpKWJyZWFrIGU7ZVtyXT1uLGVbdF09bCx0PXJ9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD9udWxsOmVbMF19ZnVuY3Rpb24gbChlKXtpZigwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7dmFyIG49ZVswXSx0PWUucG9wKCk7aWYodCE9PW4pe2VbMF09dDtlOmZvcih2YXIgcj0wLGw9ZS5sZW5ndGgsdT1sPj4+MTtyPHU7KXt2YXIgbz0yKihyKzEpLTEsaT1lW29dLHM9bysxLGM9ZVtzXTtpZigwPmEoaSx0KSlzPGwmJjA+YShjLGkpPyhlW3JdPWMsZVtzXT10LHI9cyk6KGVbcl09aSxlW29dPXQscj1vKTtlbHNle2lmKCEoczxsJiYwPmEoYyx0KSkpYnJlYWsgZTtlW3JdPWMsZVtzXT10LHI9c319fXJldHVybiBufWZ1bmN0aW9uIGEoZSxuKXt2YXIgdD1lLnNvcnRJbmRleC1uLnNvcnRJbmRleDtyZXR1cm4gMCE9PXQ/dDplLmlkLW4uaWR9aWYoIm9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdyl7dmFyIHU9cGVyZm9ybWFuY2U7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gdS5ub3coKX19ZWxzZXt2YXIgbz1EYXRlLGk9by5ub3coKTtuLnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiBvLm5vdygpLWl9fXZhciBzPVtdLGM9W10sZj0xLGQ9bnVsbCxwPTMsbT0hMSxoPSExLGc9ITEsdj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwseT0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLGI9InVuZGVmaW5lZCIhPXR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gayhlKXtmb3IodmFyIG49cihjKTtudWxsIT09bjspe2lmKG51bGw9PT1uLmNhbGxiYWNrKWwoYyk7ZWxzZXtpZighKG4uc3RhcnRUaW1lPD1lKSlicmVhaztsKGMpLG4uc29ydEluZGV4PW4uZXhwaXJhdGlvblRpbWUsdChzLG4pfW49cihjKX19ZnVuY3Rpb24gdyhlKXtpZihnPSExLGsoZSksIWgpaWYobnVsbCE9PXIocykpaD0hMCxGKFMpO2Vsc2V7dmFyIG49cihjKTtudWxsIT09biYmUih3LG4uc3RhcnRUaW1lLWUpfX1mdW5jdGlvbiBTKGUsdCl7aD0hMSxnJiYoZz0hMSx5KHopLHo9LTEpLG09ITA7dmFyIGE9cDt0cnl7Zm9yKGsodCksZD1yKHMpO251bGwhPT1kJiYoIShkLmV4cGlyYXRpb25UaW1lPnQpfHxlJiYhUCgpKTspe3ZhciB1PWQuY2FsbGJhY2s7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHUpe2QuY2FsbGJhY2s9bnVsbCxwPWQucHJpb3JpdHlMZXZlbDt2YXIgbz11KGQuZXhwaXJhdGlvblRpbWU8PXQpO3Q9bi51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygbz9kLmNhbGxiYWNrPW86ZD09PXIocykmJmwocyksayh0KX1lbHNlIGwocyk7ZD1yKHMpfWlmKG51bGwhPT1kKXZhciBpPSEwO2Vsc2V7dmFyIGY9cihjKTtudWxsIT09ZiYmUih3LGYuc3RhcnRUaW1lLXQpLGk9ITF9cmV0dXJuIGl9ZmluYWxseXtkPW51bGwscD1hLG09ITF9fSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZyYmdm9pZCAwIT09bmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcmJm5hdmlnYXRvci5zY2hlZHVsaW5nLmlzSW5wdXRQZW5kaW5nLmJpbmQobmF2aWdhdG9yLnNjaGVkdWxpbmcpO3ZhciB4LEU9ITEsQz1udWxsLHo9LTEsTj01LF89LTE7ZnVuY3Rpb24gUCgpe3JldHVybiEobi51bnN0YWJsZV9ub3coKS1fPE4pfWZ1bmN0aW9uIFQoKXtpZihudWxsIT09Qyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtfPWU7dmFyIHQ9ITA7dHJ5e3Q9QyghMCxlKX1maW5hbGx5e3Q/eCgpOihFPSExLEM9bnVsbCl9fWVsc2UgRT0hMX1pZigiZnVuY3Rpb24iPT10eXBlb2YgYil4PWZ1bmN0aW9uKCl7YihUKX07ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsKXt2YXIgTD1uZXcgTWVzc2FnZUNoYW5uZWwsTT1MLnBvcnQyO0wucG9ydDEub25tZXNzYWdlPVQseD1mdW5jdGlvbigpe00ucG9zdE1lc3NhZ2UobnVsbCl9fWVsc2UgeD1mdW5jdGlvbigpe3YoVCwwKX07ZnVuY3Rpb24gRihlKXtDPWUsRXx8KEU9ITAseCgpKX1mdW5jdGlvbiBSKGUsdCl7ej12KChmdW5jdGlvbigpe2Uobi51bnN0YWJsZV9ub3coKSl9KSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLApuLnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sbi51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLEYoUykpfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxuLnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHIocyl9LG4udW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIG49MzticmVhaztkZWZhdWx0Om49cH12YXIgdD1wO3A9bjt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9dH19LG4udW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LG4udW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxuLnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciB0PXA7cD1lO3RyeXtyZXR1cm4gbigpfWZpbmFsbHl7cD10fX0sbi51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsbCxhKXt2YXIgdT1uLnVuc3RhYmxlX25vdygpO3N3aXRjaCgib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2E9Im51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/dSthOnU6YT11LGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6ZisrLGNhbGxiYWNrOmwscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTphLGV4cGlyYXRpb25UaW1lOm89YStvLHNvcnRJbmRleDotMX0sYT51PyhlLnNvcnRJbmRleD1hLHQoYyxlKSxudWxsPT09cihzKSYmZT09PXIoYykmJihnPyh5KHopLHo9LTEpOmc9ITAsUih3LGEtdSkpKTooZS5zb3J0SW5kZXg9byx0KHMsZSksaHx8bXx8KGg9ITAsRihTKSkpLGV9LG4udW5zdGFibGVfc2hvdWxkWWllbGQ9UCxuLnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbihlKXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciB0PXA7cD1uO3RyeXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPXR9fX19LDE4MjYxNChlLG4sdCl7ZS5leHBvcnRzPXQoNTA4MjA3KX19XSk7"}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/23624.d2390d17b1509b018826.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.728Z","timestamp":1785154590728,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/23624.d2390d17b1509b018826.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-1547\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: d5027d1144620d39dc63f35917cc6e6a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":5447,"size_decoded":2078,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (5447), with no line terminators","md5":"2c33d31c563e23c31e00293508a0185a","sha1":"a5929dabb129340cfe8b787016b307911e1a3454","sha256":"4ce18d9026cee0619db0fe37daf10d2562a6a41648d0baaf2fbabedd6997ad8f","sha512":"f18b23e71681a5a8a3059d3ca0acc71b714119f95515c18cfb29123816bbf4e158126f7a947ff798c18080ee07ba20b1af9d063e587477bf46de561078ce9fc7","ssdeep":"96:DP5k+VoSKKEKgnKzKvKzKLKIKLKIKhK2nZjBCmVcKEKpVcKEKPK2XIKvmK2XIKv+:9kingKuiuWTWTw2ZXnrnCOtOTLK54WSS","tlshash":"ffb1df88e1cf773e2a3bb9295308e1dc97076780ea421be5bf61e25625cdbc651f5c08","first_seen":"2026-07-16T13:40:49.85665Z","last_seen":"2026-07-27T14:23:37.922771Z","times_seen":365,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtQU1UbDp2YXIoLS1jb2xvci13aGl0ZSl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1BTVRsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApfS5pdGVtLU1pMF90NXVOe2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JvcmRlcjowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSk7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTpmbGV4O2ZsZXgtZmxvdzpyb3cgbm93cmFwO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctYmxvY2s6MnB4IDJweDtwYWRkaW5nLWlubGluZTo4cHggMTBweDt0cmFuc2l0aW9uLXByb3BlcnR5Om5vbmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCV9Lml0ZW0tTWkwX3Q1dU4uaG92ZXJlZC1NaTBfdDV1TiwuaXRlbS1NaTBfdDV1TjphY3RpdmV7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3ZlcikpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1NaTBfdDV1Tjpob3Zlcntjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyKSl9fS5pdGVtLU1pMF90NXVOLmhvdmVyZWQtTWkwX3Q1dU57YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLU1pMF90NXVOOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlcikpfX0uaXRlbS1NaTBfdDV1TjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0KSl9Lml0ZW0tTWkwX3Q1dU57b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmV9Lml0ZW0tTWkwX3Q1dU46Zm9jdXN7b3V0bGluZTpub25lfS5pdGVtLU1pMF90NXVOOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS5pdGVtLU1pMF90NXVOOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6bm9uZTtoZWlnaHQ6Y2FsYygxMDAlIC0gNHB4KTtpbnNldC1pbmxpbmUtc3RhcnQ6MnB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDt3aWR0aDpjYWxjKDEwMCUgLSA0cHgpO3otaW5kZXg6MX0uaXRlbS1NaTBfdDV1Tjpmb2N1czphZnRlcntkaXNwbGF5OmJsb2NrfS5pdGVtLU1pMF90NXVOOmZvY3VzLXZpc2libGU6YWZ0ZXJ7ZGlzcGxheTpibG9ja30uaXRlbS1NaTBfdDV1Tjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpOmFmdGVye2Rpc3BsYXk6bm9uZX0uaXRlbS1NaTBfdDV1TjphZnRlcntib3JkZXItcmFkaXVzOjlweH0uaXRlbS1NaTBfdDV1TjphZnRlcixodG1sLnRoZW1lLWRhcmsgLml0ZW0tTWkwX3Q1dU46YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZSl9Lml0ZW0tTWkwX3Q1dU4uaXNEaXNhYmxlZC1NaTBfdDV1TntjdXJzb3I6ZGVmYXVsdDtvcGFjaXR5Oi41fS5pdGVtLU1pMF90NXVOLmlzRGlzYWJsZWQtTWkwX3Q1dU4sLml0ZW0tTWkwX3Q1dU4uaXNEaXNhYmxlZC1NaTBfdDV1TjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLU1pMF90NXVOLmlzRGlzYWJsZWQtTWkwX3Q1dU46aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9fS5pdGVtLU1pMF90NXVOLmlzQWN0aXZlLU1pMF90NXVOOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItcHJpbWFyeS1pbnZlcnNlKX0uaXRlbS1NaTBfdDV1Ti5pc0FjdGl2ZS1NaTBfdDV1TiwuaXRlbS1NaTBfdDV1Ti5pc0FjdGl2ZS1NaTBfdDV1TjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkKSk7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWFjdGl2ZSx2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktaW52ZXJzZSkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1NaTBfdDV1Ti5pc0FjdGl2ZS1NaTBfdDV1Tjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlKSl9fS5pdGVtLU1pMF90NXVOLmlzQWN0aXZlLU1pMF90NXVOIC5zaG9ydGN1dC1NaTBfdDV1TiwuaXRlbS1NaTBfdDV1Ti5pc0FjdGl2ZS1NaTBfdDV1TjphY3RpdmUgLnNob3J0Y3V0LU1pMF90NXVOe2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWludmVyc2UpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1NaTBfdDV1Ti5pc0FjdGl2ZS1NaTBfdDV1Tjpob3ZlciAuc2hvcnRjdXQtTWkwX3Q1dU57Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9fS5pdGVtLU1pMF90NXVOLmlzQWN0aXZlLU1pMF90NXVOIC50b29sYm94LU1pMF90NXVOLnRvb2xib3gtTWkwX3Q1dU4sLml0ZW0tTWkwX3Q1dU4uaXNBY3RpdmUtTWkwX3Q1dU46YWN0aXZlIC50b29sYm94LU1pMF90NXVOLnRvb2xib3gtTWkwX3Q1dU57Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLU1pMF90NXVOLmlzQWN0aXZlLU1pMF90NXVOOmhvdmVyIC50b29sYm94LU1pMF90NXVOLnRvb2xib3gtTWkwX3Q1dU57Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9fS5pdGVtLU1pMF90NXVOOmJlZm9yZXtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyOHB4fS53aXRoSWNvbi1NaTBfdDV1TntwYWRkaW5nLWJvdHRvbTo2cHg7cGFkZGluZy10b3A6NnB4fS5yb3VuZC1pY29uLU1pMF90NXVOe2JvcmRlci1yYWRpdXM6NTAlO292ZXJmbG93OmhpZGRlbn0uaWNvbi1NaTBfdDV1Tiwuc3RhcnRTbG90LU1pMF90NXVOe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleC1zaHJpbms6MDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1pbmxpbmUtZW5kOjZweDttYXgtaGVpZ2h0OjI4cHg7bWF4LXdpZHRoOjI4cHh9Lmljb24tTWkwX3Q1dU4gc3Zne2Rpc3BsYXk6YmxvY2t9LmxhYmVsUm93LU1pMF90NXVOe2FsaWduLWl0ZW1zOmJhc2VsaW5lO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmZsZXg7ZmxleDowIDEgMTAwJTtmbGV4LWRpcmVjdGlvbjpyb3c7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7cGFkZGluZy1pbmxpbmUtZW5kOjEycHh9LmxhYmVsUm93LU1pMF90NXVOOmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjRweH0ubGFiZWxSb3ctTWkwX3Q1dU46bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6NHB4fS5sYWJlbC1NaTBfdDV1TntkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0bzttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW59LnNob3J0Y3V0LU1pMF90NXVOe2ZvbnQtc2l6ZToxMnB4O21hcmdpbi1pbmxpbmUtZW5kOjVweDttYXJnaW4taW5saW5lLXN0YXJ0OjU4cHg7dGV4dC1hbGlnbjplbmR9Lml0ZW0tTWkwX3Q1dU4uaXRlbS1NaTBfdDV1Tjpub3QoLmlzQWN0aXZlLU1pMF90NXVOKSAuc2hvcnRjdXQtTWkwX3Q1dU57Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1oaW50LXRleHQsdmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwpKX0uaXRlbS1NaTBfdDV1Ti5pdGVtLU1pMF90NXVOLmlzQWN0aXZlLU1pMF90NXVOIC5zaG9ydGN1dC1NaTBfdDV1Tntjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWhpbnQtdGV4dCx2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlKSl9LnRvb2xib3gtTWkwX3Q1dU57YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWRlZmF1bHQtZ3JheSk7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5mZWF0dXJlLW5vLXRvdWNoIC50b29sYm94LU1pMF90NXVOLnNob3dPbkhvdmVyLU1pMF90NXVOe29wYWNpdHk6MH0udG9vbGJveC1NaTBfdDV1Tj46bm90KDpsYXN0LWNoaWxkKXttYXJnaW4taW5saW5lLWVuZDo0cHh9QG1lZGlhIChtYXgtd2lkdGg6NDQwcHgpey50b29sYm94LU1pMF90NXVOPjpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1pbmxpbmUtZW5kOjhweH19LmRpc2Nsb3N1cmUtaXRlbS1jaXJjbGUtbG9nby1NaTBfdDV1TntmbGV4LXNocmluazowO21hcmdpbi1pbmxpbmUtZW5kOjZweH0uZmVhdHVyZS1uby10b3VjaCAuaXRlbS1NaTBfdDV1Tjpmb2N1cy12aXNpYmxlIC50b29sYm94LU1pMF90NXVOLnNob3dPbkZvY3VzLU1pMF90NXVOe29wYWNpdHk6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmZlYXR1cmUtbm8tdG91Y2ggLml0ZW0tTWkwX3Q1dU46aG92ZXIgLnRvb2xib3gtTWkwX3Q1dU4uc2hvd09uSG92ZXItTWkwX3Q1dU57b3BhY2l0eToxfX0uZmVhdHVyZS1uby10b3VjaCAuaXRlbS1NaTBfdDV1TjpoYXMoOmZvY3VzLXZpc2libGUpIC50b29sYm94LU1pMF90NXVOLnNob3dPbkZvY3VzLU1pMF90NXVOe29wYWNpdHk6MX0="}},"time_used":5,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":5,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.643Z","timestamp":1785154589643,"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://persimmontrades.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: 428745\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":20284,"size_decoded":4819,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-07-27T14:18:32.467043Z","times_seen":17847,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":77,"timings":{"blocked":-1,"dns":7,"connect":17,"send":0,"wait":16,"receive":0,"ssl":37},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/73745.407f0f7a933ed0424484.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.492Z","timestamp":1785154590492,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/73745.407f0f7a933ed0424484.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-26d2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:30:36\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 89582bc3bbe8b8e83a337c9a5e7acbf6\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":9938,"size_decoded":3169,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9938), with no line terminators","md5":"c116638a60085f42be3edd2464afafde","sha1":"9c20269a0800922efefc8c70f853b9ee28248062","sha256":"fd28f7c187c9a51a874ff5ac868ed381eda04f312df30f6226fe6b9a2ca7665d","sha512":"fb040dbd9851969ac81310e1c0069606dacf905559ea42b56168e784ecab17011aa1d42a85f4f36fef7182085dbf7d76a79406afd1ed70d953536bbf9244e09c","ssdeep":"192:1cDqi5804vUHUxHH/wHQC7ojMjH+cXQ+v/CO1lP/qzmPFeqA:e2i5ev1xHH/wHQC7ojMjXXQe/XBxA","tlshash":"5a2251a7e2b06534b1974c39a3f6bf19325af563ce415ffaf901ab5c00ca3e61a24604","first_seen":"2026-04-17T04:08:40.205177Z","last_seen":"2026-07-27T14:14:25.421337Z","times_seen":304,"resource_available":false,"data":"W2RhdGEtdGhlbWU9ZGFya10sW2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtSHoxMTojMDAwMH0uY2FyZC1QWUUyN3Zya3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLUh6MTEpO2JvcmRlci1yYWRpdXM6MTZweDtkaXNwbGF5OmlubGluZS1mbGV4O291dGxpbmU6bm9uZTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2U7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LmNhcmQtUFlFMjd2cms6Zm9jdXN7b3V0bGluZTpub25lfS5jYXJkLVBZRTI3dnJrOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS5jYXJkLVBZRTI3dnJrOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5jYXJkLVBZRTI3dnJrOmZvY3VzOmFmdGVye2Rpc3BsYXk6YmxvY2t9LmNhcmQtUFlFMjd2cms6Zm9jdXMtdmlzaWJsZTphZnRlcntkaXNwbGF5OmJsb2NrfS5jYXJkLVBZRTI3dnJrOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSk6YWZ0ZXJ7ZGlzcGxheTpub25lfS5jYXJkLVBZRTI3dnJrOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsdWUpO2JvcmRlci1yYWRpdXM6MTZweH0uY2FyZC1QWUUyN3Zyazpmb2N1cy12aXNpYmxlKy5jYXJkLVBZRTI3dnJrOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSwuY2FyZC1QWUUyN3Zyazpmb2N1cy12aXNpYmxlOmJlZm9yZXtoZWlnaHQ6MH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmNhcmQtUFlFMjd2cms6aG92ZXIrLmNhcmQtUFlFMjd2cms6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlLC5jYXJkLVBZRTI3dnJrOmhvdmVyOmJlZm9yZXtoZWlnaHQ6MH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5jYXJkLVBZRTI3dnJre3BhZGRpbmc6MH19LnR2LWRpc3BsYXktbW9kZS1jb21wYWN0IC5jYXJkLVBZRTI3dnJrOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWRpdmlkZXIpO2NvbnRlbnQ6IiI7aW5zZXQtaW5saW5lLWVuZDo4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjhweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0udHYtZGlzcGxheS1tb2RlLWNvbXBhY3QgLmNhcmQtUFlFMjd2cms6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3Jle2hlaWdodDoxcHh9LnR2LWRpc3BsYXktbW9kZS1jb21wYWN0IC5jYXJkLVBZRTI3dnJrOmZvY3VzLXZpc2libGUrLnR2LWRpc3BsYXktbW9kZS1jb21wYWN0IC5jYXJkLVBZRTI3dnJrOm5vdCg6Zmlyc3QtY2hpbGQpOmJlZm9yZSwudHYtZGlzcGxheS1tb2RlLWNvbXBhY3QgLmNhcmQtUFlFMjd2cms6Zm9jdXMtdmlzaWJsZTpiZWZvcmV7aGVpZ2h0OjB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1kaXNwbGF5LW1vZGUtY29tcGFjdCAuY2FyZC1QWUUyN3Zyazpob3ZlcisudHYtZGlzcGxheS1tb2RlLWNvbXBhY3QgLmNhcmQtUFlFMjd2cms6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlLC50di1kaXNwbGF5LW1vZGUtY29tcGFjdCAuY2FyZC1QWUUyN3Zyazpob3ZlcjpiZWZvcmV7aGVpZ2h0OjB9fS50di1kaXNwbGF5LW1vZGUtY29tcGFjdCAuY2FyZC1QWUUyN3ZyayBodG1sLmlzLXRyYW5zcGFyZW50LnRoZW1lLWRhcms6YmVmb3JlLC50di1kaXNwbGF5LW1vZGUtY29tcGFjdCAuY2FyZC1QWUUyN3ZyayBodG1sLmlzLXRyYW5zcGFyZW50LnRoZW1lLWRhcms6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlLC50di1kaXNwbGF5LW1vZGUtY29tcGFjdCAuY2FyZC1QWUUyN3ZyayBodG1sLmlzLXRyYW5zcGFyZW50OmJlZm9yZSwudHYtZGlzcGxheS1tb2RlLWNvbXBhY3QgLmNhcmQtUFlFMjd2cmsgaHRtbC5pcy10cmFuc3BhcmVudDpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmV7aGVpZ2h0OjB9LmNhcmRXaXRoSW1hZ2UtUFlFMjd2cmsgLmNvbnRhaW5lci1QWUUyN3Zya3tjb2x1bW4tZ2FwOjhweDtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1hcmVhczoiaGVhZGVyIGhlYWRlciIgInRpdGxlIHByZXZpZXciO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgNzJweH1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmNhcmRXaXRoSW1hZ2UtUFlFMjd2cmsgLmNvbnRhaW5lci1QWUUyN3Zya3tncmlkLXRlbXBsYXRlLWFyZWFzOiJoZWFkZXIgcHJldmlldyIgInRpdGxlIHByZXZpZXcifX0uaGVhZGVyLVBZRTI3dnJre2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTpmbGV4O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uO2ZvbnQtc3R5bGU6bm9ybWFsO2dhcDo4cHg7Z3JpZC1hcmVhOmhlYWRlcjttYXJnaW4tYm90dG9tOjhweDttaW4taGVpZ2h0OjE4cHg7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTRweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXdlaWdodDo0MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoxOHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0uaGVhZGVyLVBZRTI3dnJrLC50aXRsZS1QWUUyN3Zya3tmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxUcmVidWNoZXQgTVMsUm9ib3RvLFVidW50dSxzYW5zLXNlcmlmfS50aXRsZS1QWUUyN3Zya3tkaXNwbGF5Oi13ZWJraXQtYm94O2dyaWQtYXJlYTp0aXRsZTtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1saW5lLWNsYW1wOjM7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uO2ZvbnQtc3R5bGU6bm9ybWFsO2xpbmUtaGVpZ2h0OjI0cHg7bWF4LWhlaWdodDo3MnB4Oy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE2cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC13ZWlnaHQ6NTAwOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MjRweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCl9LmFydGljbGUtUFlFMjd2cmt7Ym9yZGVyLXJhZGl1czoxNnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWdyb3c6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmFydGljbGUtUFlFMjd2cms6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9fWh0bWwuaXMtdHJhbnNwYXJlbnQgLmFydGljbGUtUFlFMjd2cms6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojMjcyODMyMGZ9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpe2h0bWwuaXMtdHJhbnNwYXJlbnQgLmFydGljbGUtUFlFMjd2cms6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjcyODMyMGZ9fWh0bWwudGhlbWUtZGFyay5pcy10cmFuc3BhcmVudCAuYXJ0aWNsZS1QWUUyN3Zyazpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNlZWYxZjkyOX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7aHRtbC50aGVtZS1kYXJrLmlzLXRyYW5zcGFyZW50IC5hcnRpY2xlLVBZRTI3dnJrOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2VlZjFmOTI5fX0uYXJ0aWNsZS1QWUUyN3ZyayAuY29udGFpbmVyLVBZRTI3dnJrIC5wcmV2aWV3LVBZRTI3dnJre2FzcGVjdC1yYXRpbzoxO2dyaWQtYXJlYTpwcmV2aWV3fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuYXJ0aWNsZS1QWUUyN3ZyayAuY29udGFpbmVyLVBZRTI3dnJrIC5wcmV2aWV3LVBZRTI3dnJre2FsaWduLXNlbGY6Y2VudGVyfX0uZ3JpZC1iNnBQNzFUZHstLWdyaWQtY29sLWdhcDoyNHB4O2NvbHVtbi1nYXA6dmFyKC0tZ3JpZC1jb2wtZ2FwKTtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpbGwsbWlubWF4KHZhcigtLWdyaWQtaXRlbS1taW4td2lkdGgpLDFmcikpO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMSxtaW5tYXgoMCwxZnIpKTttYXJnaW46MCA4cHg7bWFyZ2luLWlubGluZS1lbmQ6M3B4O3Jvdy1nYXA6dmFyKC0tZ3JpZC1yb3ctZ2FwKTstLWdyaWQtY29sdW1uLWNvdW50OjE7LS1ncmlkLWRpc3BsYXktY29sdW1uLTE6bm9uZTstLWdyaWQtZGlzcGxheS1jb2x1bW4tMjpub25lOy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0zOm5vbmU7LS1ncmlkLWRpc3BsYXktY29sdW1uLTQ6bm9uZTstLWdyaWQtZGlzcGxheS1jb2x1bW4tNTpub25lfS50di1kaXNwbGF5LW1vZGUtcmVndWxhciAuZ3JpZC1iNnBQNzFUZHstLWdyaWQtcm93LWdhcDo4cHh9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey50di1kaXNwbGF5LW1vZGUtcmVndWxhciAuZ3JpZC1iNnBQNzFUZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSk7LS1ncmlkLWNvbHVtbi1jb3VudDoyOy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0xOnJldmVydDstLWdyaWQtZGlzcGxheS1jb2x1bW4tMjpub25lOy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0zOm5vbmU7LS1ncmlkLWRpc3BsYXktY29sdW1uLTQ6bm9uZTstLWdyaWQtZGlzcGxheS1jb2x1bW4tNTpub25lOy0tZ3JpZC1yb3ctZ2FwOjhweDstLWdyaWQtY29sLWdhcDozMnB4fX1AbWVkaWEgKG1pbi13aWR0aDoxMDI0cHgpey50di1kaXNwbGF5LW1vZGUtcmVndWxhciAuZ3JpZC1iNnBQNzFUZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSk7LS1ncmlkLWNvbHVtbi1jb3VudDozOy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0xOnJldmVydDstLWdyaWQtZGlzcGxheS1jb2x1bW4tMjpyZXZlcnQ7LS1ncmlkLWRpc3BsYXktY29sdW1uLTM6bm9uZTstLWdyaWQtZGlzcGxheS1jb2x1bW4tNDpub25lOy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi01Om5vbmV9fUBtZWRpYSAobWluLXdpZHRoOjEyODBweCl7LnR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIC5ncmlkLWI2cFA3MVRkey0tZ3JpZC1jb2wtZ2FwOjY0cHh9fUBtZWRpYSAobWluLXdpZHRoOjE5MjBweCl7LnR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIC5ncmlkLWI2cFA3MVRke2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCxtaW5tYXgoMCwxZnIpKTstLWdyaWQtY29sdW1uLWNvdW50OjQ7LS1ncmlkLWRpc3BsYXktY29sdW1uLTE6cmV2ZXJ0Oy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0yOnJldmVydDstLWdyaWQtZGlzcGxheS1jb2x1bW4tMzpyZXZlcnQ7LS1ncmlkLWRpc3BsYXktY29sdW1uLTQ6bm9uZTstLWdyaWQtZGlzcGxheS1jb2x1bW4tNTpub25lfX1AbWVkaWEgKG1pbi13aWR0aDoyNTYwcHgpey50di1kaXNwbGF5LW1vZGUtcmVndWxhciAuZ3JpZC1iNnBQNzFUZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsbWlubWF4KDAsMWZyKSk7LS1ncmlkLWNvbHVtbi1jb3VudDo1Oy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi0xOnJldmVydDstLWdyaWQtZGlzcGxheS1jb2x1bW4tMjpyZXZlcnQ7LS1ncmlkLWRpc3BsYXktY29sdW1uLTM6cmV2ZXJ0Oy0tZ3JpZC1kaXNwbGF5LWNvbHVtbi00OnJldmVydDstLWdyaWQtZGlzcGxheS1jb2x1bW4tNTpub25lfX0uZm9vdGVyLWI2cFA3MVRke21hcmdpbi1ib3R0b206NHB4O21hcmdpbi10b3A6MjRweDtwYWRkaW5nOjAgOHB4fS5hcnJvd0ljb24tTWNQdFV0Mm97ZGlzcGxheTppbmxpbmUtZmxleDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmFycm93SWNvbi1NY1B0VXQybzpkaXIocnRsKXt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnRpdGxlLU1jUHRVdDJve3doaXRlLXNwYWNlOnByZS13cmFwfS5idXR0b24tTWNQdFV0Mm97aGVpZ2h0OmF1dG8haW1wb3J0YW50O3dpZHRoOmZpdC1jb250ZW50fS5jb250YWluZXItck0yNkNFRXN7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MCAxNnB4fS5jb250ZW50LXJNMjZDRUVze2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzp2YXIoLS12LXJoeXRobS1oZWFkZXItMS1zcGFjZS1waG9uZSkgMjBweCAwO3RleHQtYWxpZ246Y2VudGVyO3RleHQtd3JhcDpiYWxhbmNlfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29udGVudC1yTTI2Q0VFc3twYWRkaW5nOjAgMjBweCB2YXIoLS12LXJoeXRobS1zcGFjaW5nLTMtdGFibGV0KX19QG1lZGlhIChtaW4td2lkdGg6MTI4MHB4KXsuY29udGVudC1yTTI2Q0VFc3twYWRkaW5nOjAgMjBweCB2YXIoLS12LXJoeXRobS1zcGFjaW5nLTMtbGFwdG9wKX19QG1lZGlhIChtaW4td2lkdGg6MTQ0MHB4KXsuY29udGVudC1yTTI2Q0VFc3twYWRkaW5nOjAgMjBweCB2YXIoLS12LXJoeXRobS1zcGFjaW5nLTMtZGVza3RvcCl9fS5jb250ZW50LXJNMjZDRUVzIC5pY29uLXJNMjZDRUVze21hcmdpbi1ib3R0b206MTZweH0uY29udGVudC1yTTI2Q0VFcyAudGl0bGUtck0yNkNFRXN7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyOHB4Oy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjI0cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1ib3R0b206MTJweH0uY29udGVudC1yTTI2Q0VFcyAuc3VidGl0bGUtck0yNkNFRXMsLmNvbnRlbnQtck0yNkNFRXMgLnRpdGxlLXJNMjZDRUVze2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpfS5jb250ZW50LXJNMjZDRUVzIC5zdWJ0aXRsZS1yTTI2Q0VFc3tmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxNnB4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjYwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjI0cHh9LmNoaWxkcmVuQ29udGFpbmVyLXJNMjZDRUVze21hcmdpbjo0MHB4IDB9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtaHpqSjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLV8xLWh6ako6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1oempKOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzEtaHpqSjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKX0udHYtdGltZWxpbmUtd2lkZ2V0e2hlaWdodDoxMDAlfWh0bWwuaXMtdHJhbnNwYXJlbnQgZGl2LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktaW52ZXJzZSk7Ym9yZGVyLXJhZGl1czo0cHh9LmNvbnRhaW5lci1DdkVZSGY0SXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTstLXRpbWVsaW5lLXdpZGdldC1pdGVtLWNvbXBhY3QtYm9yZGVyLWNvbG9yOnZhcigtLV8xLWh6akopOy0tdGltZWxpbmUtd2lkZ2V0LWl0ZW0tY29tcGFjdC1iZy1jb2xvcjp2YXIoLS1jb2xvci1iZy1zZWNvbmRhcnkpfS5pbm5lckNvbnRhaW5lci1DdkVZSGY0SXtvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7aGVpZ2h0OjEwMCV9LmlubmVyQ29udGFpbmVyLUN2RVlIZjRJOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6NXB4O3dpZHRoOjVweH0uaW5uZXJDb250YWluZXItQ3ZFWUhmNEk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXNjcm9sbGJhci10aHVtYi1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXNjcm9sbC1iZykpO2JvcmRlcjoxcHggc29saWQgIzAwMDA7Ym9yZGVyLXJhZGl1czozcHh9LmlubmVyQ29udGFpbmVyLUN2RVlIZjRJOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LmlubmVyQ29udGFpbmVyLUN2RVlIZjRJOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXJ7ZGlzcGxheTpub25lfUBzdXBwb3J0cyAoLW1vei1hcHBlYXJhbmNlOm5vbmUpey5pbm5lckNvbnRhaW5lci1DdkVZSGY0SXtzY3JvbGxiYXItY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSkgIzAwMDA7c2Nyb2xsYmFyLXdpZHRoOnRoaW59fS5oZWFkZXItQ3ZFWUhmNEl7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtkaXNwbGF5OmZsZXg7cGFkZGluZzoxMnB4IDE2cHggOHB4fS50aXRsZS1DdkVZSGY0SXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MzJweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozNnB4fS50aXRsZS1DdkVZSGY0SSwudHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIgLnRpdGxlLUN2RVlIZjRJe2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFRyZWJ1Y2hldCBNUyxSb2JvdG8sVWJ1bnR1LHNhbnMtc2VyaWY7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NjAwfS50di1kaXNwbGF5LW1vZGUtcmVndWxhciAudGl0bGUtQ3ZFWUhmNEl7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDozNnB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KTstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToyOHB4fS5pY29uLUN2RVlIZjRJe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWlubGluZS1lbmQ6OHB4O3ZlcnRpY2FsLWFsaWduOnRvcH0ubGluay1DdkVZSGY0SXttYXJnaW4taW5saW5lLWVuZDo4cHh9LmxpbmstQ3ZFWUhmNEksLmxpbmstQ3ZFWUhmNEk6dmlzaXRlZHtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saW5rLUN2RVlIZjRJOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcik7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktaG92ZXIpfX0ubGluay1DdkVZSGY0STphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWFjdGl2ZSk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlKX0ubGluay1DdkVZSGY0STpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS5saW5rLUN2RVlIZjRJOmZvY3VzLXZpc2libGV7b3V0bGluZTphdXRvO291dGxpbmUtb2Zmc2V0OjJweH0ubGluay1DdkVZSGY0STpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/35794.0a273bafc5de50a0d21d.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.510Z","timestamp":1785154590510,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/35794.0a273bafc5de50a0d21d.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608300-929\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:44:48 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 094bf30064dda9ed7b493384f3ff2043\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2345,"size_decoded":1476,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2345), with no line terminators","md5":"070dbbdaf81468918cc345dc05f9a381","sha1":"2ab8968ccfc58991cdc8860741aecf9533393e0f","sha256":"8782990aacf2d956262c5608c1f9f9be2c54e5b100e7e1fd85521c2424944d72","sha512":"c162784e77aaebd46d2c606d8ec9f965be7c21092d5143c64badbc4cc2b380589455fd4eb60cdd25a9cff11dceab520faac1d1753d1b999596c4c462a0fa0e43","ssdeep":"","tlshash":"e7418bafa148d8b0fe116198b3dd638db6e5ec70a90a05cdb633b839cce17f15d50158","first_seen":"2026-07-22T16:00:00.426214Z","last_seen":"2026-07-27T14:22:59.59144Z","times_seen":368,"resource_available":false,"data":"LnNtYWxsLXRXRElDVGF5ey0tdWktbGliLXByaXZhdGUtc3dpdGNoVmlldy1zaXplOjN9Lm1lZGl1bS10V0RJQ1RheXstLXVpLWxpYi1wcml2YXRlLXN3aXRjaFZpZXctc2l6ZTo0fS5sYXJnZS10V0RJQ1RheXstLXVpLWxpYi1wcml2YXRlLXN3aXRjaFZpZXctc2l6ZTo1fS5zd2l0Y2hWaWV3LXRXRElDVGF5ey0tdWktbGliLXNpemUtZGVmOnZhcigtLXVpLWxpYi1pbi1zd2l0Y2hWaWV3LXNpemUsdmFyKC0tdWktbGliLXByaXZhdGUtc3dpdGNoVmlldy1zaXplLDQpKTstLXVpLWxpYi1zaXplLWRlZi1zbWFsbDpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAzKSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gMykpKTstLXVpLWxpYi1zaXplLWRlZi1tZWRpdW06Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNCkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDQpKSk7LS11aS1saWItc2l6ZS1kZWYtbGFyZ2U6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNSkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDUpKSk7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTstLXN3aXRjaC1oZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjIwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSoyOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSozNHB4KTtoZWlnaHQ6dmFyKC0tc3dpdGNoLWhlaWdodCk7LS1zd2l0Y2gtd2lkdGg6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjM4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo1NHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo2NHB4KTt3aWR0aDp2YXIoLS1zd2l0Y2gtd2lkdGgpOy0tc3dpdGNoLXBhZGRpbmc6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqNXB4KTstLXN3aXRjaC10aHVtYjpjYWxjKHZhcigtLXN3aXRjaC1oZWlnaHQpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKjIpOy0tZGVmYXVsdC1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwpOy0tc3dpdGNoLWNvbG9yOnZhcigtLXVpLWxpYi1zd2l0Y2hWaWV3LWNvbG9yLHZhcigtLWRlZmF1bHQtY29sb3IpKX0uc3dpdGNoVmlldy10V0RJQ1RheS5jaGVja2VkLXRXRElDVGF5ey0tZGVmYXVsdC1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtYm9sZCl9LmRpc2FibGVkLXRXRElDVGF5e29wYWNpdHk6LjV9LnRyYWNrLXRXRElDVGF5e2JhY2tncm91bmQtY29sb3I6dmFyKC0tc3dpdGNoLWNvbG9yKTtib3JkZXItY29sb3I6dmFyKC0tc3dpdGNoLWNvbG9yKTtib3JkZXItcmFkaXVzOjIwcHg7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHg7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0udGh1bWItdFdESUNUYXl7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2UpO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OnZhcigtLXN3aXRjaC10aHVtYik7dHJhbnNmb3JtOnRyYW5zbGF0ZSh2YXIoLS1zd2l0Y2gtcGFkZGluZyksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yNXM7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm07dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXQ7d2lkdGg6dmFyKC0tc3dpdGNoLXRodW1iKX0udGh1bWItdFdESUNUYXk6ZGlyKHJ0bCl7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKHZhcigtLXN3aXRjaC1wYWRkaW5nKSotMSksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKX0uY2hlY2tlZC10V0RJQ1RheSAudGh1bWItdFdESUNUYXl7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKHZhcigtLXN3aXRjaC13aWR0aCkgLSB2YXIoLS1zd2l0Y2gtdGh1bWIpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKSx2YXIoLS1zd2l0Y2gtcGFkZGluZykpfS5jaGVja2VkLXRXRElDVGF5IC50aHVtYi10V0RJQ1RheTpkaXIocnRsKXt0cmFuc2Zvcm06dHJhbnNsYXRlKGNhbGMoKHZhcigtLXN3aXRjaC13aWR0aCkgLSB2YXIoLS1zd2l0Y2gtdGh1bWIpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKSotMSksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.082Z","timestamp":1785154591082,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-396d\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:18:28\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 94c7c074a837f6ce65fc9300ad02f424\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":14701,"size_decoded":6832,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"1edb2832b292eaf1f490fd35fadf61ec","sha1":"40184dc94dd19e2bb7b906af7cc99c694efae8d5","sha256":"68c5b31fb26ad1af6d37dc872285b1e5c9837fed11bba1414d053e93e3728567","sha512":"a575cef153e42834c4fe933e7ec67a2a5442aec23dcf472bb585c8da5b858bfac30b279e03691938a35400b286055406e5a9f34bd3d5e5c8b51f1dbccd902df0","ssdeep":"384:rNtq6SWGLOzCHMJY+Uhb7773Y6cR39CF0msq2k70wcWKd:PjSWGLOuHM4hb7773X3F0msq2k7jcWI","tlshash":"ea62d7887043b09a42d925ef986b5149f7380898740d84b5b651f8d23caed9f63f3ebc","first_seen":"2026-07-24T05:39:08.468159Z","last_seen":"2026-07-27T14:22:59.694422Z","times_seen":432,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NTIwN10sezc1Njg1MShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPWUubGVuZ3RoLGk9MDtpPG47aSsrKXt2YXIgbz1lLmNoYXJDb2RlQXQoaSk7aWYobz49NTUyOTYmJm88PTU2MzE5JiZuPmkrMSl7dmFyIHI9ZS5jaGFyQ29kZUF0KGkrMSk7cj49NTYzMjAmJnI8PTU3MzQzJiYobz0xMDI0KihvLTU1Mjk2KStyLTU2MzIwKzY1NTM2LGkrPTEpfW88MTI4P3QucHVzaChvKTpvPDIwNDg/KHQucHVzaChvPj42fDE5MiksdC5wdXNoKDYzJm98MTI4KSk6bzw1NTI5Nnx8bz49NTczNDQmJm88NjU1MzY/KHQucHVzaChvPj4xMnwyMjQpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6bz49NjU1MzYmJm88PTExMTQxMTE/KHQucHVzaChvPj4xOHwyNDApLHQucHVzaChvPj4xMiY2M3wxMjgpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6dC5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkodCkuYnVmZmVyfX0sNTA0NDAyKGUsdCxuKXt2YXIgaT1uKDYzODIyMSk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBlPWkoZV49ZT4+PjE2LDIyNDY4MjI1MDcpLGU9aShlXj1lPj4+MTMsMzI2NjQ4OTkwOSksKGVePWU+Pj4xNik+Pj4wfX0sNjM4MjIxKGUpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbihlLHQpe3ZhciBuPTY1NTM1JmUsaT02NTUzNSZ0O3JldHVybiBuKmkrKChlPj4+MTYmNjU1MzUpKmkrbioodD4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KGUsdCxuKXt2YXIgaT1uKDYzODIyMSksbz1uKDUwNDQwMikscj1uKDc1Njg1MSkscz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybiBlPDx0fGU+Pj4zMi10fWUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHQ9dD8wfHQ6MCwic3RyaW5nIj09dHlwZW9mIGUmJihlPXIoZSkpLCEoZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIG49bmV3IFVpbnQzMkFycmF5KFt0XSk7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1uZXcgVWludDMyQXJyYXkoZSwwLG4pLHI9MDtyPG47cisrKW9bcl09aShvW3JdLHNbMF0pLG9bcl09YShvW3JdLDE1KSxvW3JdPWkob1tyXSxzWzFdKSx0WzBdPXRbMF1eb1tyXSx0WzBdPWEodFswXSwxMyksdFswXT1pKHRbMF0sNSkrMzg2NDI5MjE5Nn0oZSxuKSxmdW5jdGlvbihlLHQpe3ZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1lLmJ5dGVMZW5ndGglNCxyPTAsYz1uZXcgVWludDhBcnJheShlLDQqbixvKTtzd2l0Y2gobyl7Y2FzZSAzOnJePWNbMl08PDE2O2Nhc2UgMjpyXj1jWzFdPDw4O2Nhc2UgMTpyXj1jWzBdLHI9YShyPWkocixzWzBdKSwxNSkscj1pKHIsc1sxXSksdFswXT10WzBdXnJ9fShlLG4pLGZ1bmN0aW9uKGUsdCl7dFswXT10WzBdXmUuYnl0ZUxlbmd0aCx0WzBdPW8odFswXSl9KGUsbiksbi5idWZmZXJ9fSwzNzcyMjYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7b25XaWRnZXQ6KCk9Pm99KTtjb25zdCBpPW5ldyBNYXA7ZnVuY3Rpb24gbygpe2NvbnN0IGU9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLHQ9d2luZG93LmxvY2F0aW9uLmhvc3Qsbj1gJHt0fSR7ZX1gO3JldHVybiBpLmhhcyhuKXx8aS5zZXQobixmdW5jdGlvbihlLHQpe2NvbnN0IG49WyJed2lkZ2V0LWRvY3MiXTtmb3IoY29uc3QgZSBvZiBuKWlmKG5ldyBSZWdFeHAoZSkudGVzdCh0KSlyZXR1cm4hMDtjb25zdCBpPVsiXndpZGdldGVtYmVkLz8kIiwiXmNtZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0c3RhdGljLz8kIiwiXihbMC05YS16QS1aLV0rKT8vP21lZGl1bXdpZGdldGVtYmVkLz8kIiwiXnR3aXR0ZXItY2hhcnQvPyQiLCJedGVsZWdyYW0vY2hhcnQvPyQiLCJeZW1iZWQvKFswLTlhLXpBLVpdezh9KS8/JCIsIl53aWRnZXRwb3B1cC8/JCIsIl5leHRlbnNpb24vPyQiLCJeaWRlYS1wb3B1cC8/JCIsIl5ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXm1hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeZXZlbnRzd2lkZ2V0ZW1iZWQvPyQiLCJedGlja2Vyc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4Y3Jvc3NyYXRlc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4aGVhdG1hcHdpZGdldGVtYmVkLz8kIiwiXm1hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnNjcmVlbmVyd2lkZ2V0Lz8kIiwiXmNyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJedGVjaG5pY2FsLWFuYWx5c2lzLXdpZGdldC1lbWJlZC8kIiwiXnNpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3NpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeZW1iZWQtd2lkZ2V0LyhbMC05YS16QS1aLV0rKS8oKFswLTlhLXpBLVotXSspLyk/JCIsIl53aWRnZXQtZG9jcy8oWzAtOWEtekEtWi1dKykvKFswLTlhLXpBLVotL10rKT8kIl0sbz1lLnJlcGxhY2UoL15cLy8sIiIpO2xldCByO2ZvcihsZXQgZT1pLmxlbmd0aC0xO2U+PTA7ZS0tKWlmKHI9bmV3IFJlZ0V4cChpW2VdKSxyLnRlc3QobykpcmV0dXJuITA7cmV0dXJuITF9KGUsdCkpLGkuZ2V0KG4pPz8hMX19LDU2OTM5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ZlYXR1cmVFbmFibGVkOigpPT5kLG9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQ6KCk9PmN9KQo7dmFyIGk9big5NDgzODApLG89bigzNzcyMjYpLHI9big4NTYxOTYpLHM9big5MzIzNjUpO2NvbnN0IGE9bmV3IGkuRGVsZWdhdGUsYz0oKT0+YSxsPSJmb3JjZWZlYXR1cmV0b2dnbGUuIjtjb25zdCBnPW5ldyBjbGFzc3tlbmFibGVGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShsK2UsInRydWUiKSxhLmZpcmUoZSl9ZGlzYWJsZUZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGwrZSwiZmFsc2UiKSxhLmZpcmUoZSl9cmVzZXRGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShsK2UpLGEuZmlyZShlKX1vbkZlYXR1cmVzU3RhdGVDaGFuZ2VkKCl7cmV0dXJuIGF9fTtmdW5jdGlvbiB1KGUsdCl7cmV0dXJuKCFlW3RdfHwtMSE9PWVbdF0pJiYoISEoInRydWUiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYidHJ1ZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltsK3RdKXx8ISgiZmFsc2UiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYiZmFsc2UiPT09d2luZG93LnVzZXI/LnNldHRpbmdzPy5bbCt0XSkmJighIWVbdF0mJigxPT09ZVt0XXx8KDAsci5zaG91bGRBZmZlY3RVc2VyKSh0LGVbdF0pKSkpfXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9LHdpbmRvdy5UcmFkaW5nVmlldy5GZWF0dXJlVG9nZ2xlPWc7Y29uc3QgZD0oaD13aW5kb3cuZmVhdHVyZVRvZ2dsZVN0YXRlfHx7fSwoMCxvLm9uV2lkZ2V0KSgpfHxQcm9taXNlLmFsbChbbi5lKDg1NDM0KSxuLmUoNzI4NSksbi5lKDEzOTkzKV0pLnRoZW4obi5iaW5kKG4sNTA3Mjg1KSkudGhlbigoZT0+e2UucHVzaFN0cmVhbU11bHRpcGxleGVyLm9uKCJmZWF0dXJldG9nZ2xlIiwoZT0+e2NvbnN0IHQ9dShoLGUubmFtZSk7aFtlLm5hbWVdPWUuc3RhdGUsdCE9PXUoaCxlLm5hbWUpJiZhLmZpcmUoZS5uYW1lKX0pKX0pKSx1LmJpbmQobnVsbCxoKSk7dmFyIGg7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9ZH0sMTc5NzcxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2VtaXQ6KCk9PmcsZW1pdE9uY2U6KCk9PnUsb246KCk9PmMsc3Vic2NyaWJlOigpPT5sLHVuc3Vic2NyaWJlOigpPT5hfSk7dmFyIGk9big5NDgzODApO2NvbnN0IG89e30scj1bXSxzPXt9O2Z1bmN0aW9uIGEoZSx0LG4pe29bZV0udW5zdWJzY3JpYmUobix0KX1mdW5jdGlvbiBjKGUsdCxuKXtsKGUsdCxuKX1mdW5jdGlvbiBsKGUsdCxuLHIpe28uaGFzT3duUHJvcGVydHkoZSl8fChvW2VdPW5ldyBpLkRlbGVnYXRlKSxzW2VdP3QuY2FsbChuKTpvW2VdLnN1YnNjcmliZShuLHQscil9ZnVuY3Rpb24gZyhlLC4uLnQpe2NvbnN0IG49W2VdLmNvbmNhdCh0KTtyLmZvckVhY2goKGU9PntlLmFwcGx5KG51bGwsbil9KSksby5oYXNPd25Qcm9wZXJ0eShlKSYmb1tlXS5maXJlLmFwcGx5KG9bZV0sdCl9ZnVuY3Rpb24gdShlKXtzW2VdJiZjb25zb2xlLndhcm4oYFNvbWV0aGluZyB3ZW50IHdyb25nOiBlbWl0T25jZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBzYW1lIGV2ZW50ICgke2V9KWApLHNbZV09ITAsZy5hcHBseShudWxsLGFyZ3VtZW50cyl9fSw5MzIzNjUoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7VFZMb2NhbFN0b3JhZ2U6KCk9PnJ9KTtjb25zdCBpPSgwLG4oMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBvPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2goZSl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChlKXt9fTtvLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3QgZT0xMCx0PVtdO2ZvcihsZXQgZT0wO2U8dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2UrKyl7Y29uc3Qgbj10aGlzLmtleShlKTt0LnB1c2goe2tleTpuLGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKG4pKS5sZW5ndGh9KX10LnNvcnQoKChlLHQpPT50Lmxlbmd0aC1lLmxlbmd0aCkpO2NvbnN0IG49dC5zbGljZSgwLGUpO3Quc29ydCgoKGUsdCk9PnQua2V5Lmxlbmd0aC1lLmtleS5sZW5ndGgpKTtjb25zdCBvPXQuc2xpY2UoMCxlKTtpLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxpLmxvZ05vcm1hbChgVG9wICR7ZX0ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KG4pfWApLGkubG9nTm9ybWFsKGBUb3AgJHtlfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShvKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChlPT57aS5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkoZSl9YCl9KSl9Y2F0Y2goZSl7fX19LG8ucHJvdG90eXBlLmxlbmd0aD0wLG8ucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLG8ucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sby5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIGUsdD0wO2ZvcihlIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KGUpJiZ0Kys7dGhpcy5sZW5ndGg9dH19LG8ucHJvdG90eXBlLmtleT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkoZSk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW2VdfSxvLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKGUpewpyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpOnZvaWQgMD09PXRoaXMubG9jYWxTdG9yYWdlW2VdP251bGw6dGhpcy5sb2NhbFN0b3JhZ2VbZV19LG8ucHJvdG90eXBlLnNldEl0ZW09ZnVuY3Rpb24oZSx0KXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KTp0aGlzLmxvY2FsU3RvcmFnZVtlXT10LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfSxvLnByb3RvdHlwZS5yZW1vdmVJdGVtPWZ1bmN0aW9uKGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShlKTpkZWxldGUgdGhpcy5sb2NhbFN0b3JhZ2VbZV0sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LG8ucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5jbGVhcigpOnRoaXMubG9jYWxTdG9yYWdlPXt9LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfTtjb25zdCByPW5ldyBvO3dpbmRvdy5UVkxvY2FsU3RvcmFnZT1yfSwxMTczMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9Pm8sdXJsV2l0aE1vYmlsZUFwcFBhcmFtczooKT0+cn0pO3ZhciBpPW4oNTg3NDM2KTtmdW5jdGlvbiBvKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IG89InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxyPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1pLmdldCgidHZfYXBwIil8fCIiO298fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLHJ8fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IW8pfHwhKCJuZXciPT09ZXx8IXIpfWZ1bmN0aW9uIHIoZSx0PSExKXtpZihvKCJuZXciLHQpKXtjb25zdCB0PW5ldyBVUkwoZSxsb2NhdGlvbi5ocmVmKTt0LnNlYXJjaFBhcmFtcy5zZXQoIm1vYmlsZWFwcF9uZXciLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9aWYobygib2xkIix0KSl7Y29uc3QgdD1uZXcgVVJMKGUsbG9jYXRpb24uaHJlZik7dC5zZWFyY2hQYXJhbXMuc2V0KCJtb2JpbGVhcHAiLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9cmV0dXJuIGV9fSw4NTYxOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7c2hvdWxkQWZmZWN0VXNlcjooKT0+Y30pO3ZhciBpPW4oMTAwNTk1KSxvPW4ubihpKSxyPW4oOTMyMzY1KTtjb25zdCBzPSJmZWF0dXJldG9nZ2xlX3NlZWQiO2Z1bmN0aW9uIGEoZSl7dHJ5e2NvbnN0IHQ9bygpKGUrZnVuY3Rpb24oKXtpZih3aW5kb3cudXNlciYmd2luZG93LnVzZXIuaWQpcmV0dXJuIHdpbmRvdy51c2VyLmlkO2NvbnN0IGU9ci5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKHMpO2lmKG51bGwhPT1lKXJldHVybiBlO2NvbnN0IHQ9TWF0aC5mbG9vcigxZTYqTWF0aC5yYW5kb20oKSk7cmV0dXJuIHIuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShzLGAke3R9YCksdH0oKSksbj1uZXcgRGF0YVZpZXcodCk7cmV0dXJuIG4uZ2V0VWludDMyKDAsITApLzQyOTQ5NjcyOTZ9Y2F0Y2goZSl7cmV0dXJuLjV9fWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gYShlKTw9dH19LDU4NzQzNihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0LG4saSxvKXtsZXQgcj0iIjtpZihpPWk/IjsgcGF0aD0iK2k6IiIsbz1vPyI7IGRvbWFpbj0iK286IiIsbil7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbio2MCo2MCoxZTMpLHI9IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIHI9IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrcitvK2l9ZnVuY3Rpb24gbyhlKXtjb25zdCB0PWUrIj0iLG49ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2xldCBpPW5bZV07Zm9yKDsiICI9PT1pLmNoYXJBdCgwKTspaT1pLnN1YnN0cmluZygxLGkubGVuZ3RoKTtpZigwPT09aS5pbmRleE9mKHQpKXJldHVybiBpLnN1YnN0cmluZyh0Lmxlbmd0aCxpLmxlbmd0aCl9cmV0dXJuIG51bGx9bi5kKHQse2dldDooKT0+byxzZXQ6KCk9Pml9KX0sNzY4NzYwKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSgpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChuLGkpPT57ZT1uLHQ9aX0pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fW4uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9Pml9KX0sOTQ4MzgwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0RlbGVnYXRlOigpPT5yfSk7Y29uc3QgaT0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiQ29tbW9uLkRlbGVnYXRlIik7ZnVuY3Rpb24gbyhlKXtyZXR1cm4hZS5zaW5nbGVTaG90fWNsYXNzIHJ7Y29uc3RydWN0b3IoKXt0aGlzLmZpcmU9dGhpcy5fZmlyZUltcGwuYmluZCh0aGlzKSx0aGlzLl9saXN0ZW5lcnM9W119c3Vic2NyaWJlKGUsdCxuKXt0aGlzLl9saXN0ZW5lcnMucHVzaCh7b2JqZWN0OmUsbWVtYmVyOnQsc2luZ2xlU2hvdDohIW4sc2tpcDohMX0pfXVuc3Vic2NyaWJlKGUsdCl7Zm9yKGxldCBuPTA7bjx0aGlzLl9saXN0ZW5lcnMubGVuZ3RoOysrbil7Y29uc3QgaT10aGlzLl9saXN0ZW5lcnNbbl07aWYoaS5vYmplY3Q9PT1lJiZpLm1lbWJlcj09PXQpe2kuc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKG4sMSk7YnJlYWt9fX11bnN1YnNjcmliZUFsbChlKXtmb3IobGV0IHQ9dGhpcy5fbGlzdGVuZXJzLmxlbmd0aC0xO3Q+PTA7LS10KXtjb25zdCBuPXRoaXMuX2xpc3RlbmVyc1t0XTtuLm9iamVjdD09PWUmJihuLnNraXA9ITAsdGhpcy5fbGlzdGVuZXJzLnNwbGljZSh0LDEpKX19ZGVzdHJveSgpe3RoaXMuX2xpc3RlbmVycz1bXX1fZmlyZUltcGwoLi4uZSl7Y29uc3QgdD10aGlzLl9saXN0ZW5lcnM7dGhpcy5fbGlzdGVuZXJzPXRoaXMuX2xpc3RlbmVycy5maWx0ZXIobyk7Y29uc3Qgbj10Lmxlbmd0aDtmb3IobGV0IG89MDtvPG47KytvKXtjb25zdCBuPXRbb107aWYoIW4uc2tpcCl0cnl7bi5tZW1iZXIuYXBwbHkobi5vYmplY3R8fG51bGwsZSl9Y2F0Y2goZSl7CmkubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9fX19fSw2ODA4NDIoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtuLmQodCx7Q29va2llU2V0dGluZ3M6KCk9PmksYmFubmVyUHJpdmFjeVByZWZlcmVuY2VLZXk6KCk9PmgsY2hlY2tCYW5uZXJQcml2YWN5UHJlZmVyZW5jZUtleTooKT0+QSxjb29raWVTZXR0aW5nc0NoYW5nZUV2ZW50OigpPT5sLGdldENvb2tpZVNldHRpbmc6KCk9PiQsaGlkZUJhbm5lcjooKT0+VCxyZWplY3RCYW5uZXI6KCk9Pl8sc2V0Q29va2llU2V0dGluZzooKT0+TH0pLGZ1bmN0aW9uKGUpe2UuQW5hbHl0aWNzPSJhbmFseXRpY3MiLGUuQWR2ZXJ0aXNpbmc9ImFkdmVydGlzaW5nIn0oaXx8KGk9e30pKTt2YXIgbz1uKDE3OTc3MSkscj1uKDc2ODc2MCkscz1uKDkzMjM2NSksYT1uKDE2MDI5NiksYz1uKDU4NzQzNik7Y29uc3QgbD0iY29va2llX3NldHRpbmdzX2NoYW5nZWQiLGc9KCgwLHIuY3JlYXRlRGVmZXJyZWRQcm9taXNlKSgpLHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZS5zcGxpdCgiLiIpKSx1PSgwLGEuaXNMb2NhbCkoKT8iIjoiLiIrZy5zbGljZSgxLGcubGVuZ3RoKS5qb2luKCIuIiksZD0iY29va2llQmFubmVyIixoPSgwLGEuaXNQcm9kKSgpPyJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lclByb2R1Y3Rpb24iOiJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lckxvY2FsIixwPSJhY2NlcHRlZCIsZj0ibm90QXBwbGljYWJsZSIsbT0icmVqZWN0Iix3PSJjb29raWVzU2V0dGluZ3MiLGI9ImxvY2FsQ29va2llc1NldHRpbmdzIix5PSJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lciIsdj17W2kuQW5hbHl0aWNzXTohMSxbaS5BZHZlcnRpc2luZ106ITF9O2Z1bmN0aW9uIFMoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGQpfWZ1bmN0aW9uIGsoZSl7cmV0dXJuW3AsZixtXS5pbmNsdWRlcyhzLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oZSk/PyIiKX1mdW5jdGlvbiBBKCl7cmV0dXJuIGU9aCxbcCxmLG1dLmluY2x1ZGVzKGMuZ2V0KGUpPz8iIik7dmFyIGV9ZnVuY3Rpb24gVCgpe0kocCl9ZnVuY3Rpb24gXygpe0kobSl9ZnVuY3Rpb24gSShlKXtjLnNldChoLGUsMzY1MywiLyIsdSl9ZnVuY3Rpb24gTChlLHQpe3ZbZV09dCxjLnNldCgoMCxhLmlzUHJvZCkoKT93OmIsSlNPTi5zdHJpbmdpZnkodiksMzY1MywiLyIsdSksby5lbWl0KGwsZSx0KX1mdW5jdGlvbiAkKGUpe3JldHVybiB2W2VdfWZ1bmN0aW9uIFAoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHkpfSFmdW5jdGlvbigpe2NvbnN0IGU9Yy5nZXQoKDAsYS5pc1Byb2QpKCk/dzpiKSx0PXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh5KSxuPXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh3KTtpZihlKXt0JiZuJiYoUCgpLHMuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh3KSksayhkKSYmUygpO3RyeXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dltpLkFuYWx5dGljc109dD8uW2kuQW5hbHl0aWNzXXx8ITEsdltpLkFkdmVydGlzaW5nXT10Py5baS5BZHZlcnRpc2luZ118fCExfWNhdGNoe319ZWxzZSBpZihrKGQpJiYoTChpLkFuYWx5dGljcywhMCksTChpLkFkdmVydGlzaW5nLCEwKSxUKCksUygpKSx0JiZuKXtjb25zdCBlPUpTT04ucGFyc2Uobik7SSh0KSxMKGkuQW5hbHl0aWNzLGU/LltpLkFuYWx5dGljc10pLEwoaS5BZHZlcnRpc2luZyxlPy5baS5BZHZlcnRpc2luZ10pLFAoKSxzLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odyl9fSgpfSwxNjAyOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCksbi5kKHQse2Vudmlyb25tZW50OigpPT5vLGlzRGVidWc6KCk9PmEsaXNMb2NhbDooKT0+cixpc1Byb2Q6KCk9PnN9KTtjb25zdCBpPW5ldyBTZXQoWyJiYXR0bGUiLCJzdGFnaW5nIiwidGVzdCIsImxvY2FsIl0pO2Z1bmN0aW9uIG8oKXtjb25zdCBlPXNlbGYuZW52aXJvbm1lbnQ7cmV0dXJuIGZ1bmN0aW9uKGUpe2kuaGFzKGUpfHxjb25zb2xlLndhcm4oIkludmFsaWQgZW52aXJvbm1lbnQgIitlKX0oZSksZX1mdW5jdGlvbiByKCl7cmV0dXJuImxvY2FsIj09PW8oKX1mdW5jdGlvbiBzKCl7cmV0dXJuImJhdHRsZSI9PT1vKCl9ZnVuY3Rpb24gYSgpe3JldHVybiFzKCl9fSwzMTg5NzQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Q2hlY2tNb2JpbGU6KCk9PmQsYXBwVmVyc2lvbjooKT0+dSxjaGVja1BhZ2VUeXBlOigpPT5wLGRlc2t0b3BBcHBWZXJzaW9uOigpPT5nLGlzQ2hyb21lOigpPT5mLGlzRGVza3RvcEFwcDooKT0+Yyxpc0VkZ2U6KCk9PncsaXNGRjooKT0+bSxpc0xpbnV4OigpPT5hLGlzTWFjOigpPT5zLGlzU2FmYXJpOigpPT5iLGlzU3ltcGhvbnlFbWJlZDooKT0+bCxvbkdvUHJvOigpPT55LG9uV2lkZ2V0OigpPT5vLm9uV2lkZ2V0LHN1cHBvcnRUb3VjaDooKT0+aH0pO3ZhciBpPW4oNzM4NDU4KSxvPW4oMzc3MjI2KTtjb25zdCByPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gaS5pc01hY31mdW5jdGlvbiBhKCl7cmV0dXJuIGkuaXNMaW51eH1mdW5jdGlvbiBjKCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gbCgpe3JldHVybiByLmlzU3ltcGhvbnl8fCExfWZ1bmN0aW9uIGcoKXtjb25zdCBlPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1RWRGVza3RvcFwvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1mdW5jdGlvbiB1KCl7Y29uc3QgZT1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9UcmFkaW5nVmlld1wvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1jb25zdCBkPXtBbmRyb2lkOigpPT5pLmlzQW5kcm9pZCxCbGFja0JlcnJ5OigpPT5pLmlzQmxhY2tCZXJyeSxpT1M6KCk9PmkuaXNJT1MsT3BlcmE6KCk9PmkuaXNPcGVyYU1pbmksaXNJUGFkOigpPT5pLmlzSVBhZCxhbnk6KCk9PmkuaXNBbnlNb2JpbGV9O2Z1bmN0aW9uIGgoKXtyZXR1cm4gaS5tb2JpbGV0b3VjaHx8aS50b3VjaHx8aS5pc0FueU1vYmlsZX1mdW5jdGlvbiBwKGUpewpyZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKS5nZXQoInBhZ2VfdHlwZSIpPT09ZX1yLmlzTW9iaWxlPWQsci5vbldpZGdldD1vLm9uV2lkZ2V0O2NvbnN0IGY9aS5pc0Nocm9tZSxtPWkuaXNGRix3PWkuaXNFZGdlLGI9aS5pc1NhZmFyaTtmdW5jdGlvbiB5KCl7cmV0dXJuIi9wcmljaW5nLyI9PT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9fSw5MjA3MDYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0U2V0dGluZ3M6KCk9Pmh9KTt2YXIgaT1uKDU2OTM5OCksbz1uKDE3OTc3MSkscj1uKDg3MDY0NCkscz1uKDMxODk3NCksYT1uKDExNzMxMyksYz1uKDY4MDg0Mik7Y29uc3QgbD13aW5kb3cuaW5pdERhdGEuc25vd3Bsb3dTZXR0aW5ncztsZXQgZyx1PSJ3ZWIiLGQ9IiI7aWYoKDAscy5pc0Rlc2t0b3BBcHApKCkmJih1PSJwYyIsZD0iX2Rlc2t0b3AiKSwoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/KHU9Im1vYiIsZD0iX2lvcyIpOigwLGEuaXNPbk1vYmlsZUFwcFBhZ2UpKCJuZXciKSYmKHU9Im1vYiIsZD0iX2FuZHJvaWQiKSxsJiZsLnBhcmFtcyYmbC5lbmFibGVkKXtjb25zdCBlPSEoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgiYW55IikmJiEoMCxjLmdldENvb2tpZVNldHRpbmcpKGMuQ29va2llU2V0dGluZ3MuQW5hbHl0aWNzKSYme3dpdGhTZXNzaW9uVHJhY2tpbmc6ITB9O2c9e2NvbGxlY3RvcklkOmwuY29sbGVjdG9ySWQsdXJsOmwudXJsLHBhcmFtczp7YXBwSWQ6bC5wYXJhbXMuYXBwSWQrZCxwbGF0Zm9ybTp1LGRpc2NvdmVyUm9vdERvbWFpbjohMCxjb250ZXh0czp7d2ViUGFnZTohMH0sZXZlbnRNZXRob2Q6ImdldCIsbWF4TG9jYWxTdG9yYWdlUXVldWVTaXplOjMwLGFub255bW91c1RyYWNraW5nOmUsc2Vzc2lvbkNvb2tpZVRpbWVvdXQ6KDAsYy5nZXRDb29raWVTZXR0aW5nKShjLkNvb2tpZVNldHRpbmdzLkFuYWx5dGljcyk/MTgwMDo3Nzc2ZTN9fSwoMCxpLmlzRmVhdHVyZUVuYWJsZWQpKCJzbm93cGxvd19iZWFjb25fZmVhdHVyZSIpJiYoZy5wYXJhbXMuZXZlbnRNZXRob2Q9ImJlYWNvbiIsZy5wYXJhbXMucG9zdFBhdGg9bC5wYXJhbXMucG9zdFBhdGgpfWZ1bmN0aW9uIGgoKXtpZihnKXJldHVybiBnfW8uc3Vic2NyaWJlKGMuY29va2llU2V0dGluZ3NDaGFuZ2VFdmVudCwoKGUsdCk9PntlPT09Yy5Db29raWVTZXR0aW5ncy5BbmFseXRpY3MmJih0PygwLHIuZGlzYWJsZUFub255bW91c1RyYWNraW5nKSgpOigwLHIuZW5hYmxlQW5vbnltb3VzVHJhY2tpbmcpKHtvcHRpb25zOnt3aXRoU2Vzc2lvblRyYWNraW5nOiEwfX0pKX0pLG51bGwpfSw0NzcxNTAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxvO24uZCh0LHtTbm93cGxvd1RyYWNrZXJCYXNlOigpPT51LGdldFRyYWNrZXJJbnN0YW5jZTooKT0+Z30pLGZ1bmN0aW9uKGUpe2UuV2ViPSJ3ZWIiLGUuTW9iaWxlPSJtb2IiLGUuRGVza3RvcD0icGMifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuQW5kcm9pZD0iX2FuZHJvaWQiLGUuSU9TPSJfaW9zIixlLkRlc2t0b3A9Il9kZXNrdG9wIn0ob3x8KG89e30pKTt2YXIgcj1uKDMxODk3NCkscz1uKDg3MDY0NCksYT1uKDkyMDcwNik7bGV0IGM9ITE7bGV0IGw9bnVsbDtmdW5jdGlvbiBnKCl7aWYobnVsbD09PWwpe2NvbnN0IGU9KDAsYS5nZXRTZXR0aW5ncykoKTt2b2lkIDAhPT1lJiYobD1uZXcgdShlKSl9cmV0dXJuIGx9Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxzLm5ld1RyYWNrZXIpKGUuY29sbGVjdG9ySWQsZS51cmwsZS5wYXJhbXMpLHRoaXMuX2NvbGxlY3RvcklkPWUuY29sbGVjdG9ySWQsdGhpcy5fc2V0RGlzY2FyZEJyYWNlKCEwKX10cmFja1BhZ2VWaWV3KCl7KDAscy50cmFja1BhZ2VWaWV3KSh2b2lkIDAsW3RoaXMuX2NvbGxlY3RvcklkXSl9c2V0VXNlcklkKGUpe2NvbnN0IHQ9IWV8fCgwLHIuaXNTeW1waG9ueUVtYmVkKSgpP251bGw6YCR7ZX1gOygwLHMuc2V0VXNlcklkKSh0LFt0aGlzLl9jb2xsZWN0b3JJZF0pfXRyYWNrU2VsZkRlc2MoZSx0KXtjfHwoMCxzLnRyYWNrU2VsZkRlc2NyaWJpbmdFdmVudCkoe2V2ZW50OntzY2hlbWE6ZSxkYXRhOnR9fSxbdGhpcy5fY29sbGVjdG9ySWRdKX1fc2V0RGlzY2FyZEJyYWNlKGUpeygwLHMuZGlzY2FyZEJyYWNlKShlLFt0aGlzLl9jb2xsZWN0b3JJZF0pfV9zdGFydEFjdGl2aXR5V2F0Y2hlcihlKXtsZXQgdD0wO3JldHVybigwLHMuZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKSh7bWluaW11bVZpc2l0TGVuZ3RoOmUubWluaW11bVZpc2l0TGVuZ3RoLGhlYXJ0YmVhdERlbGF5OmUuaGVhcnRiZWF0RGVsYXksY2FsbGJhY2s6KCk9Pnt0Kyt9fSxbdGhpcy5fY29sbGVjdG9ySWRdKSx7ZGlzYWJsZVRyYWNraW5nOnMuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcsZmx1c2hUcmFja2luZ1Jlc3VsdDooKT0+e2NvbnN0IG49dCplLmhlYXJ0YmVhdERlbGF5O3JldHVybiB0PTAsbn19fX19fV0pOw=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.141Z","timestamp":1785154591141,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785154591.1.1785154591..b177bc9a-34b2-4836-9972-6f558777cbde..f8ff18cc-c06f-46ed-8329-31a0a2ab1153.1785154591101.1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-dc9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1c759f0ea73f1529cec360d27429d2a4\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":3529,"size_decoded":2690,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1999)","md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-27T14:18:36.428394Z","times_seen":1506,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/pers.mp4","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"media","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.851Z","timestamp":1785154589851,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /pers.mp4 HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: video/webm,video/ogg,video/*;q=0.9,application/ogg;q=0.7,audio/*;q=0.6,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nRange: bytes=0-\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: video\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nAccept-Encoding: identity\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 206 \r\ncontent-type: video/mp4\r\nlast-modified: Thu, 27 Oct 2022 08:31:08 GMT\r\ncontent-range: bytes 0-17306325/17306326\r\ncontent-length: 17306326\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"206","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":4442037,"size_decoded":4442247,"mime_type":"video/mp4","magic":"ISO Media, MP4 v2 [ISO 14496-14]","md5":"fb8d78f6f445d2f3c29a12a53060fe05","sha1":"aab03ebfd1edb74e292a436a8ed80320ba7731c6","sha256":"010b1108c024cf1b97a745803c51fc5d0b1221efa9797fcb929b275e1f42193a","sha512":"c3bd1870260b6b02943eac91c658c136178049210695e91afeff0d2ae6ae43aafa4e4df70417180cc286b27b5b699ddce750768e81f32bd5285b25db392e2e5b","ssdeep":"24576:HxpO3SfLUqoxMsQknyI4keYsqKEOJmDVSe4nsKgMPTdo6:HxJLUqoGsnyit9yM8PRB","tlshash":"182523e0c73b5892c0639176ca9517320281ab0e7ede625f62e8fa3670775b47f438d9","first_seen":"2026-06-14T14:02:22.059692Z","last_seen":"2026-07-27T12:17:29.204278Z","times_seen":4,"resource_available":false,"data":"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CmcAABnEAAAuGwAAHXYAABinAAAX1wAAEqQAABjsAAAYGQAAGMgAABhEAAAX2QAAE/kAABuvAAAUkgAAFWkAABvNAAASNwAAFxAAABc9AAAYFAAAE/wAABnWAAAPNAAAGpQAABA2AAAaMAAAEHQAABdOAAARjgAAEL0AAB4KAAAThAAAEyMAABNlAAAVWgAACEkAACFtAAASRQAADhUAAA5AAAAPpgAACIwAAB+fAAAPdgAADxoAAA7OAAAUdQAACHwAAB3QAAAQiAAAEb8AABNgAAAOFQAACCAAAB9cAAAONQAAD/gAABF3AAASBAAABk4AAB5yAAAODAAACFQAAAssAAANagAACUEAABvNAAAM2gAAD7QAAA7xAAARkwAABmwAAB1YAAAO5QAAD2MAABCtAAAOugAACJoAABurAAAKjgAADXkAABAdAAANfAAAB8cAABjGAAAJ6wAADNsAAA1mAAAONQAABIkAABqNAAAL0gAACx4AAAtpAAAOHAAACYIAABwbAAANaAAADqQAABCYAAAN1QAACPEAAB1eAAAN8AAADUYAAA+hAAAOhQAABskAABvaAAAM/AAAC+IAAA9lAAAMAgAACAQAABklAAAL3wAADLsAAA9fAAANzgAABhkAABnTAAALpQAACzYAAAsEAAAMcgAACcEAABmmAAAL3wAAD/AAABDxAAAQzgAABnMAABzjAAAQWwAAD0wAAA7iAAAO4AAACFEAABqeAAAMHQAADsEAAA7yAAAORwAABaAAABrxAAANbQAAC6IAAAzfAAAMVQAABB0AABisAAAIQwAACvYAAAppAAAUFwAABsgAABzTAAANGgAADwMAABASAAAOTAAACDQAAB4fAAAMxgAADUoAABFuAAAQqwAABtEAABzBAAAPnwAAD3EAAA62AAAPoAAAA60AABtOAAAPbAAADp8AAAyGAAAKsgAAAP0AABVHAAAKhgAACmsAAAyNAAANwAAABvAAABsTAAAQcAAAD4EAAA5KAAAR4gAABo8AABytAAAOuAAAEPIAABCwAAASKwAABPoAAB0EAAAOLwAAC24AAAzMAAAPFgAABCYAABqrAAAL0gAADOQAAA2fAAAMRAAAAUoAABcjAAALrwAAC6oAAAs/AAAO1wAACV4AABwDAAAMLwAAVhIAAAUlAAADVQAADl4AABYGAAAK0QAA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AAEAAACLAAAAFAAAAAEAAACOAAAAEwAAAAEAAACPAAAAFAAAAAEAAACSAAAAEwAAAAEAAACTAAAAFAAAAAEAAACWAAAAEwAAAAEAAACXAAAAFAAAAAEAAACaAAAAEwAAAAEAAACbAAAAFAAAAAEAAACeAAAAEwAAAAEAAACfAAAAFAAAAAEAAACiAAAAEwAAAAEAAACjAAAAFAAAAAEAAACmAAAAEwAAAAEAAACnAAAAFAAAAAEAAACqAAAAEwAAAAEAAACrAAAAFAAAAAEAAACuAAAAEwAAAAEAAACvAAAAFAAAAAEAAACyAAAAEwAAAAEAAACzAAAAFAAAAAEAAAC2AAAAEwAAAAEAAAC3AAAAFAAAAAEAAAC6AAAAEwAAAAEAAAC7AAAAFAAAAAEAAAC+AAAAEwAAAAEAAAC/AAAAFAAAAAEAAADCAAAAEwAAAAEAAADDAAAAFAAAAAEAAADGAAAAEwAAAAEAAADHAAAAFAAAAAEAAADKAAAAEwAAAAEAAADLAAAAFAAAAAEAAADOAAAAEwAAAAEAAADPAAAAFAAAAAEAAADSAAAAEwAAAAEAAADTAAAAFAAAAAEAAADWAAAAEwAAAAEAAADXAAAAFAAAAAEAAADaAAAAEwAAAAEAAADbAAAAFAAAAAEAAADeAAAAEwAAAAEAAADfAAAAFAAAAAEAAADiAAAAEwAAAAEAAADjAAAAFAAAAAEAAADmAAAAEwAAAAEAAADnAAAAFAAAAAEAAADqAAAAEwAAAAEAAADrAAAAFAAAAAEAAADuAAAAEwAAAAEAAADvAAAAFAAAAAEAAADyAAAAEwAAAAEAAADzAAAAFAAAAAEAAAD2AAAAEwAAAAEAAAD3AAAAFAAAAAEAAAD6AAAAEwAAAAEAAAD7AAAAFAAAAAEAAAD+AAAAEwAAAAEAAAD/AAAAFAAAAAEAAAECAAAAEwAAAAEAAAEDAAAAFAAAAAEAAAEGAAAAEwAAAAEAAAEHAAAAFAAAAAEAAAEKAAAAEwAAAAEAAAELAAAAFAAAAAEAAAEOAAAAEwAAAAEAAAEPAAAAFAAAAAEAAAESAAAAEwAAAAEAAAETAAAAFAAAAAEAAAEWAAAAEwAAAAEAAAEXAAAAFAAAAAEAAAEaAAAAEwAAAAEAAAEbAAAAFAAAAAEAAAEeAAAAEwAAAAEAAAEfAAAAFAAA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AZH6jcFYy+BC1HvXn/mDP8mhM4Fe8UJG+wytYa013aCrrXx1X4nc8Aia8D7+l+xIfaJAdzuwO8CJswPiL9oDKS+mnbrEiAUkq2hAEA+VjZAA73A9J/uTrbwCc/fuPO9+73hwaJfUTPESb+aCm2tb6r6QdwQ3fc+CObFW1cFOamq166+rcpAoZwe2kyKDILguUeXC4RdHurSXVopisUy21/YH80uNK/CJ9JXiXH3+rnjBV74rvxxvTufGeq1d37/MPr1TSv5lMy6vj937q/d3esXgqaWb698IcR2/LG027ifd3dycX3d8xzwobjpyVCAxiOBINenUN7/uumLJ4EfUXm1pvD+kDaDpQmel93L6g/vh7it92Ptp8wiqj/1pNdMez6TTEstvd6xexxMFRpa2YTAzPxnHxvuAwfFqOSzWwwDT/NP3dvXudoZ4naNC333HGdkYF0mlrwB604Tcz+x9krN//8KH63gBnKzaJna3aBb/av711BYoauA8OMjzDVl/FlEBY+FHx5vVgdgnvBIWYDA4B3o0l5nwfqaggD364AiEve61a4oQJFCRhErrCJtYlVfvpuK399jYHAao+1ffrYVLYIEAW16YExlA3gf7pPfeYSMYfhHhvv0B7lgwdy6+AxiX43j/vmEjHXX30nfngh8+OF1S/XtZmFIuqr0s+O7u8L2HuTe73upYf/BPf1q58XVdfs4UM6XSdpOQcT97+7O3A15Rnk+xNZfll8KHbry6SUOcpMCFu1ah1YxK64EjZbRibL8n4U798l+n70mGNOFLu9vt3cv3rjYz33trXJzUvsFnu793pthxQBvbEYWi/r7cnTsfbbp9gq906TVe5xMJ39LXBZVvrl1fb6j7ngqng1vpY+mOvgp3Ln0nvqurHz7/006ucEBoN7MPkgbRKEi4X+ubKViy+4remH938Exz/61VE4epJ8v/iYR379/oZd3Evd7faVO09IkgUNeaC/cnl+0yASd3rS9n1gkG5sp85uyBsdkm4okgLV1ScoAAgrxC9zWQoQW+UjngbGytkK3xjdZHlupO56MBAOD+5YyeGl++EgiMMTiGBlYIy6+2kE80KG540UAcXc+0QEtufKcMhplAOtr/h3/YH2/hR7ve7uFHPPl37V46K3773+vfVj4Lqqq99P3Ld34mO7vv7ktAiN1zu0NOdRsICOoEhWg1ts7y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"}},"time_used":160,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":137,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/46907.c5af8aa7b5082b1875a5.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.165Z","timestamp":1785154590165,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/46907.c5af8aa7b5082b1875a5.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-6bc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8baa8494f6e69dfec11d0b8eb089f11e\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1724,"size_decoded":1396,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1724), with no line terminators","md5":"8212d60d44748bb18233778e23b8f7b2","sha1":"35debdd9067ec06aa3648e5d7a9cddde39873397","sha256":"cc31664050fc2b670129f7e7d1a11bda8d20efa47a713598bbb96d4da6e297ba","sha512":"3f0235fe9fb761707020a01990077cf65fd4d774216e7d49fe218ea8e4ffa73a0d3d662536e662eb978f3d790446e7ee75ab139468bc6a0371653a48512aa994","ssdeep":"","tlshash":"d931cc75936ad2387a770b376241558a3199f64773730239e680bda881e16ba3b333c4","first_seen":"2026-07-16T11:36:17.893966Z","last_seen":"2026-07-27T14:18:36.405932Z","times_seen":2008,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtQUVROTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLUFFUTk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LndyYXBwZXItaGN0MnlKdkt7Y29sb3I6dmFyKC0tXzAtQUVROSl9LmFuaW1hdGVkLWhjdDJ5SnZLe2FuaW1hdGlvbjoxcyBlYXNlLWluLW91dCAwcyBpbmZpbml0ZSBhbHRlcm5hdGUgbm9uZSBydW5uaW5nO2FuaW1hdGlvbi1uYW1lOnB1bHNhdGlvbi1oY3QyeUp2S31Aa2V5ZnJhbWVzIHB1bHNhdGlvbi1oY3QyeUp2S3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtX19ycTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1fX3JxOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtX19ycTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8xLV9fcnE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LmxvZ28tVkNOS3ViV3F7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubG9nby1WQ05LdWJXcTpub3QoaW1nKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLV9fcnEpfS5oaWRkZW4tVkNOS3ViV3F7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlfS54eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3F7Zm9udC1zaXplOjEwcHg7aGVpZ2h0OjEycHg7bGluZS1oZWlnaHQ6MTBweDttaW4td2lkdGg6MTJweDt3aWR0aDoxMnB4fS54eHhzbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTFweDtoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoxOHB4O3dpZHRoOjE4cHh9Lnh4c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjIwcHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt3aWR0aDoyMHB4fS54c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjRweDt3aWR0aDoyNHB4fS5zbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTRweDtoZWlnaHQ6MjhweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoyOHB4O3dpZHRoOjI4cHh9Lm1lZGl1bS1WQ05LdWJXcXtmb250LXNpemU6MTZweDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDozNnB4O3dpZHRoOjM2cHh9LmxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToyNHB4O2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjMycHg7bWluLXdpZHRoOjQ4cHg7d2lkdGg6NDhweH0ueGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZTo0MHB4O2hlaWdodDo1NnB4O2xpbmUtaGVpZ2h0OjQwcHg7bWluLXdpZHRoOjU2cHg7d2lkdGg6NTZweH0ueHhsYXJnZS1WQ05LdWJXcXtmb250LXNpemU6ODBweDtoZWlnaHQ6MTEycHg7bGluZS1oZWlnaHQ6ODBweDttaW4td2lkdGg6MTEycHg7d2lkdGg6MTEycHh9Lnh4eGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToxNjBweDtoZWlnaHQ6MTY4cHg7bGluZS1oZWlnaHQ6MTYwcHg7bWluLXdpZHRoOjE2OHB4O3dpZHRoOjE2OHB4fS5za2VsZXRvbi1WQ05LdWJXcXtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0ubGV0dGVyLVZDTkt1Yldxe2NvbG9yOnZhcigtLV8wLV9fcnEpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMH0="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/38002.86d280feeabab698360b.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.246Z","timestamp":1785154590246,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/38002.86d280feeabab698360b.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a323c19-493\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/17/2026 11:16:00\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7bb2be3de6b402af22596f249c6ee797\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1171,"size_decoded":1246,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1171), with no line terminators","md5":"c5625ab18e2e939c0e7a1aaf8335d885","sha1":"476f700790695056f483a7540cca9876b7ec9b44","sha256":"109dfa81449a46405b7bbad3bb1fe38d13168125084d9486a17269580fa11d1e","sha512":"b0d0814df65da6664845b9aa6212db20c3810f795432ea14ecfb6d89b44ed9dea6826d34c2c7d74e8042a33898c9eb1e143d41e0f9534c42b5a733a1bf91139d","ssdeep":"","tlshash":"ff21df02d15010d8a0ffb368edd1976e8329e0c7e52f09dda1692f75d2817782b6df41","first_seen":"2026-03-24T19:47:05.239918Z","last_seen":"2026-07-27T14:22:59.622222Z","times_seen":1746,"resource_available":false,"data":"LnNiLWlubmVyLXNoYWRvd3tiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvdHRvbTotMTBweDtib3gtc2hhZG93OjAgMCA1cHggIzAwMDAwMDI2O2hlaWdodDoxMHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xMTY2NjY2N3MgZWFzZSx0cmFuc2Zvcm0gLjExNjY2NjY3cyBlYXNlO3dpZHRoOjEwMCU7ei1pbmRleDo1fS5zYi1pbm5lci1zaGFkb3cudG9we2JveC1zaGFkb3c6MCAwIDVweCAjMDAwMDAwMjY7dG9wOi0xMHB4fS5zYi1pbm5lci1zaGFkb3cuaS1pbnZpc2libGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxlLnRvcHt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxle29wYWNpdHk6MH0uc2Itc2Nyb2xsYmFye2luc2V0LWlubGluZS1lbmQ6MXB4O29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7dG9wOjczcHg7dHJhbnNpdGlvbjpvcGFjaXR5IC4zczt3aWR0aDo3cHg7ei1pbmRleDoxfS5zYi1zY3JvbGxiYXIuYWN0aXZlLC5zYi1zY3JvbGxiYXIuYWN0aXZlLWFsd2F5c3tvcGFjaXR5OjF9LnNiLXNjcm9sbGJhcl9fY29udGVudC13cmFwcGVyLS1zY3JvbGwtaW5pdGVke3Bvc2l0aW9uOnJlbGF0aXZlfS5zYi1zY3JvbGxiYXJfX2NvbnRlbnQtLXNjcm9sbC1pbml0ZWR7cG9zaXRpb246YWJzb2x1dGV9LnNiLXNjcm9sbGJhci13cmFwe2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1lbmQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjZweDt6LWluZGV4OjF9LnNiLXNjcm9sbGJhci13cmFwIC5zYi1zY3JvbGxiYXJ7aW5zZXQtaW5saW5lLWVuZDowfS5zYi1zY3JvbGxiYXItYm9keXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXNiLXNjcm9sbGJhci1ib2R5LWJnKTtib3JkZXI6MDt3aWR0aDo2cHh9LmdyYXkgLnNiLXNjcm9sbGJhci1ib2R5e2JhY2tncm91bmQ6Izc1NzU3YTtib3JkZXItY29sb3I6Izc1NzU3YTtib3JkZXItcmFkaXVzOjNweH0uc2Itc2Nyb2xsYmFyLWJvdHRvbSwuc2Itc2Nyb2xsYmFyLXRvcHtkaXNwbGF5Om5vbmV9LmFjdGl2ZS1hbHdheXMuZ3JheSwuZ3JheXtvcGFjaXR5Oi41fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.257Z","timestamp":1785154590257,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-6bea\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a4b04d063f4d82396d0ec2bd3faadee8\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":27626,"size_decoded":6249,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3069)","md5":"c37495f6ca72950f28ad5a6a79a0bab4","sha1":"b23429fd2dea7f2557a8a68545083949759c3ad4","sha256":"b4511e0c850bde295127e6af14148f016b9aea35ea705cdf3106a5a1edbd93b8","sha512":"ddee6e0c9cd60676d9195e2fb635982af76e72cf188acf0f42ba7ac648dbd5acc579a186a2c51fb5ac9d5e758c5289ab285ea4e80694b19f70a1715a5707b77c","ssdeep":"384:L+x0EMPsBRgXD2PTmdN2/5dQ1tHSJm/BtU:L7E2NJuJmI","tlshash":"2cc2c007cd96b099f3f6e24e0eb4d50c2cb453495270d702be868e289ae5ee69d2f315","first_seen":"2026-05-05T10:36:04.872376Z","last_seen":"2026-07-27T14:18:36.415557Z","times_seen":4159,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1ODY2N10sezI1ODY2NyhvKXtvLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZShudWxsKSxvLmV4cG9ydHNbIiNBQVBMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXBwbGUgSW5jIl0sby5leHBvcnRzWyIjQU1FWDpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nod2FiIFNob3J0LVRlcm0gVS5TLiBUcmVhc3VyeSBFVEYiXSxvLmV4cG9ydHNbIiNBTUVYOlNIWUctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFyZXMgMC01IFlFQVIgSGlnaCBZaWVsZCBDb3Jwb3JhdGUgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNBU1g6WEFGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBBbGwgQXVzdHJhbGlhbiA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYQVQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIEFsbCBBdXN0cmFsaWFuIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYSk8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FVRENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyL0NhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0FVRENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gU3dpc3MgRnJhbmMiXSxvLmV4cG9ydHNbIiNBVURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0FVRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjQVVEUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQVVEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JDQkE6SU1WLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIE1FUlZBTCBJbmRleCJdLG8uZXhwb3J0c1siI0JDSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gQ2FzaCAvIEV1cm8iXSxvLmV4cG9ydHNbIiNCQ0hVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIENhc2ggLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JFTEVYOkJFTEVYMTUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUxFWCAxNSBJbmRleCJdLG8uZXhwb3J0c1siI0JJU1Q6WFUxMDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCSVNUIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0JJVE1FWDpYQlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUU6SUJDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSUJFWCAzNSBJbmRleCJdLG8uZXhwb3J0c1siI0JNRkJPVkVTUEE6SUJPVi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJvdmVzcGEgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUZCT1ZFU1BBOklCUkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJQnJhc2lsIEluZGV4Il0sby5leHBvcnRzWyIjQk1GQk9WRVNQQTpJQlhMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJhemlsIDUwIEluZGV4Il0sby5leHBvcnRzWyIjQk1WOkNULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgU1gyMCBSVCJdLG8uZXhwb3J0c1siI0JNVjpGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRm9yZCBNb3RvciBDb21wYW55Il0sby5leHBvcnRzWyIjQk1WOk1FLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0JNViBJUEMgSW5kZXgiXSxvLmV4cG9ydHNbIiNCUkxKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWxpYW4gUmVhbCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JTRTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJVEkgTHRkIl0sby5leHBvcnRzWyIjQlNFOlNFTlNFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCBCU0UgU2Vuc2V4IEluZGV4Il0sby5leHBvcnRzWyIjQlRDQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjQlRDQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUQ0NOWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNCVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gRXVybyJdLG8uZXhwb3J0c1siI0JUQ0dCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjQlRDSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JUQ0tSVy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjQlRDUExOLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI0JUQ1JVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQlRDVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFRoYWkgQmFodCJdLG8uZXhwb3J0c1siI0JUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gR29sZCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQlZMOlNQQkxQR1BULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gQlZMIFBlcnUgR2VuZXJhbCBJbmRleCAoUEVOKSJdLG8uZXhwb3J0c1siI0JWU1Atc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWwgQm92ZXNwYSBJbmRleCJdLApvLmV4cG9ydHNbIiNDQURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDQURVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0NCT0U6T0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0NCT0U6VklYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVm9sYXRpbGl0eSBTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjQ0JPVDpaQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVC1Cb25kIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3JuIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpNMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb3liZWFuIE1lYWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6Wk4xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjEwIFllYXIgVC1Ob3RlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPYXQgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjMwIERheSBGZWRlcmFsIEZ1bmRzIEludGVyZXN0IFJhdGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJpY2UgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlMxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIldoZWF0IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WEsxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gTWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0JPVF9NSU5JOlhXMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJXaGVhdCBNaW5pIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WU0xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBEb3cgSm9uZXMgKCQ1KSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0hGSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgRnJhbmMgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDSEZVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBGcmFuYyAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQ01FOkJUQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBDTUUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpDQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnV0dGVyIEZ1dHVyZXMtQ2FzaCAoQ29udGludW91czogQ3VycmVudCBjb250cmFjdCBpbiBmcm9udCkiXSxvLmV4cG9ydHNbIiNDTUU6R0YxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZlZWRlciBDYXR0bGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpIRTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGVhbiBIb2dzIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUU6TEUxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdmUgQ2F0dGxlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUVfTUlOSTpFNzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOkVTMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6SjcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOk5RMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOQVNEQVEgMTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6UlRZMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLU1pbmkgUnVzc2VsbCAyMDAwIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBRVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbml1bSBFdXJvcGVhbiBQcmVtaXVtIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBVVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbnVtIE1XIFUuUy4gVHJhbnNhY3Rpb24gUHJlbWl1bSBQbGF0dHMgKDI1TVQpIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpHQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6SEcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6U0kxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIENvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIChNaW5pKSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRTzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCAoTWluaSkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NPUFBFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29wcGVyIl0sby5leHBvcnRzWyIjQ09STlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29ybiJdLG8uZXhwb3J0c1siI0NPVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ290dG9uIl0sby5leHBvcnRzWyIjQ1JZUFRPQ0FQOlRPVEFMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ3J5cHRvIFRvdGFsIE1hcmtldCBDYXAsICQiXSxvLmV4cG9ydHNbIiNERk06REZNR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJERk0gSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tcG9zaXRlIEF2ZXJhZ2UgSW5kZXgiXSwKby5leHBvcnRzWyIjREo6REpDSUFHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQWdyaWN1bHR1cmUgQ2FwcGVkIENvbXBvbmVudCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lDQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQ29jb2EiXSxvLmV4cG9ydHNbIiNESjpESkNJRU4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEVuZXJneSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR29sZCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR3JhaW5zIl0sby5leHBvcnRzWyIjREo6REpDSUlLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBOaWNrZWwiXSxvLmV4cG9ydHNbIiNESjpESkNJS0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IENvZmZlZSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lTQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggU3VnYXIiXSxvLmV4cG9ydHNbIiNESjpESkNJU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IFNpbHZlciJdLG8uZXhwb3J0c1siI0RKOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVHJhbnNwb3J0YXRpb24gQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI0RKOkRKVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBVdGlsaXR5IEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlVTQ0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVS5TLiBDb2FsIEluZGV4Il0sby5leHBvcnRzWyIjRUdYOkVHWDMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRUdYIDMwIEluZGV4Il0sby5leHBvcnRzWyIjRVRDQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gQ2xhc3NpYyAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNFVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSBDbGFzc2ljIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIENsYXNzaWMgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0VUSEJUQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQml0Y29pbiJdLG8uZXhwb3J0c1siI0VUSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUSEdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQnJpdGlzaCBQb3VuZCJdLG8uZXhwb3J0c1siI0VUSEpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjRVRIS1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjRVRIVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNFVEhVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVCVU5ELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBCdW5kIl0sby5leHBvcnRzWyIjRVVSQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVSQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjRVVSQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0VVUkNIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0VVUkdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjRVVSSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0VVUk5PSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBOb3J3ZWdpYW4gS3JvbmUiXSxvLmV4cG9ydHNbIiNFVVJOWkQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjRVVST05FWFQ6QUVYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQUVYIEluZGV4Il0sby5leHBvcnRzWyIjRVVST05FWFQ6QkVMMjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUwgMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJPTkVYVDpQWDEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDQUMgNDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0VVUlJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSBUT00iXSxvLmV4cG9ydHNbIiNFVVJTRUstc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gU3dlZGlzaCBLcm9uYSJdLG8uZXhwb3J0c1siI0VVUlRSWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBUdXJraXNoIExpcmEiXSxvLmV4cG9ydHNbIiNFVVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNFVVNUWDUwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBTdG94eCA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0ZPUkVYQ09NOlVTMjAwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIFNtYWxsIENhcCAyMDAwIl0sCm8uZXhwb3J0c1siI0ZSQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0FDIDQwIEluZGV4Il0sby5leHBvcnRzWyIjRlJFRDpHRFAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHcm9zcyBEb21lc3RpYyBQcm9kdWN0LCAxIERlY2ltYWwiXSxvLmV4cG9ydHNbIiNGUkVEOlBPUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRvdGFsIFBvcHVsYXRpb246IEFsbCBBZ2VzIEluY2x1ZGluZyBBcm1lZCBGb3JjZXMgT3ZlcnNlYXMiXSxvLmV4cG9ydHNbIiNGUkVEOlVOUkFURS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNpdmlsaWFuIFVuZW1wbG95bWVudCBSYXRlIl0sby5leHBvcnRzWyIjRlRTRU1ZWDpGQk1LTENJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSBCdXJzYSBNYWxheXNpYSBLTENJIEluZGV4Il0sby5leHBvcnRzWyIjRldCOktUMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktleSBUcm9uaWMgQ29y0YAuIl0sby5leHBvcnRzWyIjRlg6QVVTMjAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBJbmRleCJdLG8uZXhwb3J0c1siI0ZYOlVTMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIEluZGV4Il0sby5leHBvcnRzWyIjR0JQQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjR0JQQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0dCUENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0dCUEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBFdXJvIl0sby5leHBvcnRzWyIjR0JQSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0dCUE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHQlBQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gUG9saXNoIFpsb3R5Il0sby5leHBvcnRzWyIjR0JQUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIFJ1c3NpYW4gUnVibGUiXSxvLmV4cG9ydHNbIiNHQlBVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHRVIzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRBWCBJbmRleCJdLG8uZXhwb3J0c1siI0dPT0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQyJdLG8uZXhwb3J0c1siI0dPT0dMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEEiXSxvLmV4cG9ydHNbIiNHUFc6QUNHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWNhdXRvZ2F6Il0sby5leHBvcnRzWyIjR1BXOldJRzIwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiV0lHMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNIU0k6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjSUNFVVM6RFgxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNJRFg6Q09NUE9TSVRFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSURYIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOkhTQ0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgQ2hpbmEgRW50ZXJwcmlzZXMgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpKS1NFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFrYXJ0YSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpLTFNFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnVyc2EgTWFsYXlzaWEgS0xDSSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1JQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQiBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1PWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6U1RJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU1RJIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6VFdJSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBXZWlnaHRlZCBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOlhMWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFuZ2hhaSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJT1RVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJT1RBIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNKUE4yMjUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNKUFlLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbmVzZSBZZW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjSlBZUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0pQWVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTEtPSC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxVS09JTCJdLG8uZXhwb3J0c1siI0xTRTpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nob2xpdW0gR3JvdXAgUGxjIE9yZCAxUCJdLG8uZXhwb3J0c1siI0xUQ0JSTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gQnJhemlsaWFuIFJlYWwiXSxvLmV4cG9ydHNbIiNMVENCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNMVENVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTFVOQVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkx1bmEgLyBVLlMuIERvbGxhciJdLApvLmV4cG9ydHNbIiNNT0VYOkJSMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmVudCBPaWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6R0FaUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdBWlBST00iXSxvLmV4cG9ydHNbIiNNT0VYOklNT0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTU9FWCBSdXNzaWEgSW5kZXgiXSxvLmV4cG9ydHNbIiNNT0VYOk1HTlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNQUdOSVQiXSxvLmV4cG9ydHNbIiNNT0VYOk1JQ0VYSU5ERVhDRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1PRVggUnVzc2lhIEluZGV4Il0sby5leHBvcnRzWyIjTU9FWDpNWDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUlDRVggSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6TVgyIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQ0VYIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNNT0VYOlJJMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSVFMgSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6UlRTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJUUyBJbmRleCJdLG8uZXhwb3J0c1siI01PRVg6UlVBTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVuaXRlZCBDb21wYW55IFJVU0FMIFBMQyJdLG8uZXhwb3J0c1siI01PRVg6U0JFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNCRVJCQU5LIl0sby5leHBvcnRzWyIjTU9FWDpWVEJSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVlRCIl0sby5leHBvcnRzWyIjTVNGVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1pY3Jvc29mdCBDb3JwLiJdLG8uZXhwb3J0c1siI05BUzEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIDEwMCBDYXNoIENGRCJdLG8uZXhwb3J0c1siI05BU0RBUTpBTUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBZHZhbmNlZCBNaWNybyBEZXZpY2VzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpHT09HLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEMiXSxvLmV4cG9ydHNbIiNOQVNEQVE6R09PR0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQSJdLG8uZXhwb3J0c1siI05BU0RBUTpIR1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIEhvdXNpbmcgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROklFRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgNy0xMCBZZWFyIFRyZWFzdXJ5IEJvbmQgRVRGIl0sby5leHBvcnRzWyIjTkFTREFROklFSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMy03IFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRlcmlzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpJWElDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmFzZGFxIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpMQ0lELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTHVjaWQgR3JvdXAsIEluYy4iXSxvLmV4cG9ydHNbIiNOQVNEQVE6TEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMYW5kcycgRW5kIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpORFgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXNkYXEgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROk9TWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggT2lsIFNlcnZpY2UgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlNIWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMS0zIFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6U09YLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGhpbGFkZWxwaGlhIFNlbWljb25kdWN0b3IgSW5kZXgiXSxvLmV4cG9ydHNbIiNOQVNEQVE6VExULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAyMCsgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLG8uZXhwb3J0c1siI05BU0RBUTpVVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIFV0aWxpdHkgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlhBVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggR29sZCBhbmQgU2lsdmVyIFNlY3RvciBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpaUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlpzY2FsZXIgSW5jIl0sby5leHBvcnRzWyIjTkVPVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTkVPIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNOR0FTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmF0dXJhbCBHYXMgKEhlbnJ5IEh1YikiXSxvLmV4cG9ydHNbIiNOS1ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOU0U6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kaWFuIFRlbGVwaG9uZSBJbmR1c3RyaWVzIExpbWl0ZWQiXSxvLmV4cG9ydHNbIiNOU0U6TklGVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOaWZ0eSA1MCBJbmRleCJdLG8uZXhwb3J0c1siI05ZTUVYOkFFWjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgRXRoYW5vbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6Q0oxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvY29hIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpDTDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGlnaHQgQ3J1ZGUgT2lsIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpITzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgSGFyYm9yIFVMU0QgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOktUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb2ZmZWUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOk5HMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBhbGxhZGl1bSBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEwxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIEZ1dHVyZXMiXSwKby5leHBvcnRzWyIjTllNRVg6UkIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJCT0IgR2Fzb2xpbmUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOlRUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3R0b24gRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYX01JTkk6UUcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIExpZ2h0IENydWRlIE9pbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRVTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIEdhc29saW5lIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWVNFOkJBQkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbGliYWJhIEdyb3VwIEhvbGRpbmdzIEx0ZC4iXSxvLmV4cG9ydHNbIiNOWVNFOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGT1JEIE1UUiBDTyBERUwiXSxvLmV4cG9ydHNbIiNOWVNFOkhFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGF3YWlpYW4gRWxlY3RyaWMgSW5kdXN0cmllcyJdLG8uZXhwb3J0c1siI05ZU0U6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlBCUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBFVFJPTEVPIEJSQVNJTEVJUk8gU0EgUEVUUk9CUiJdLG8uZXhwb3J0c1siI05ZU0U6WEFYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQU1FWCBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlhNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ZU0UgQVJDQSBNYWpvciBNYXJrZXQgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWkRKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNOWkRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI05aWDpBTExDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL05aWCBBbGwgSW5kZXggKENhcGl0YWwgSW5kZXgpIl0sby5leHBvcnRzWyIjTlpYOk5aNTBHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gTlpYIDUwIEluZGV4IEdyb3NzIl0sby5leHBvcnRzWyIjT0FOREE6TkFUR0FTVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBOYXR1cmFsIEdhcyJdLG8uZXhwb3J0c1siI09BTkRBOlNQWDUwMFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPQU5EQTpYQ1VVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENvcHBlciAoVVMkIC8gbGIpIl0sby5leHBvcnRzWyIjT01YQ09QOk9NWEMyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBDb3BlbmhhZ2VuIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YQ09QOlNDSE8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTY2hvdXcgJiBDbyBBL1MiXSxvLmV4cG9ydHNbIiNPTVhIRVg6T01YSDI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIEhlbHNpbmtpIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YUlNFOk9NWFJHSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBSaWdhIEdyb3NzIEluZGV4Il0sby5leHBvcnRzWyIjT01YU1RPOk9NWFMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBTdG9ja2hvbG0gMzAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhUU0U6T01YVEdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFRhbGxpbm4gR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhWU0U6T01YVkdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFZpbG5pdXMgR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPVEM6SUhSTUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJc2hhcmVzIE1TQ0kgSmFwYW4gU0hTIl0sby5leHBvcnRzWyIjUVNFOkdOUkktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJRRSBJbmRleCJdLG8uZXhwb3J0c1siI1JUUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NpYW4gUlRTIEluZGV4Il0sby5leHBvcnRzWyIjUlVTU0VMTDpSVUEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSdXNzZWxsIDMwMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNSVVNTRUxMOlJVSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NlbGwgMTAwMCBJbmRleCJdLG8uZXhwb3J0c1siI1JVU1NFTEw6UlVULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2VsbCAyMDAwIEluZGV4Il0sby5leHBvcnRzWyIjU0VUOkdDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR2xvYmFsIENvbm5lY3Rpb25zIFB1YmxpYyBDb21wYW55Il0sby5leHBvcnRzWyIjU0lYOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGb3JkIE1vdG9yIENvbXBhbnkiXSxvLmV4cG9ydHNbIiNTSVg6U01JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgTWFya2V0IEluZGV4Il0sby5leHBvcnRzWyIjU09MVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU29sYW5hIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNTT1lCTlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU295YmVhbnMiXSxvLmV4cG9ydHNbIiNTUDpPRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BHU0NJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIEdvbGRtYW4gU2FjaHMgQ29tbW9kaXR5IEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1NQOlNWWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgVmFsdWUgSW5kZXgiXSxvLmV4cG9ydHNbIiNTUFg1MDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1VHQVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFN1Z2FyIl0sCm8uZXhwb3J0c1siI1NaU0U6Mzk5MDAxLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2hlbnpoZW4gQ29tcG9uZW50IEluZGV4Il0sby5leHBvcnRzWyIjVEFEQVdVTDoyMzcwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlkZGxlIEVhc3QgU3BlY2lhbGl6ZWQgQ2FibGVzIENvLiJdLG8uZXhwb3J0c1siI1RBREFXVUw6VEFTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhZGF3dWwgQWxsIFNoYXJlcyBJbmRleCJdLG8uZXhwb3J0c1siI1RBU0U6VEEzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRBLTM1IEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRTWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9UU1ggQ29tcG9zaXRlIEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRYNjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvVFNYIDYwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkFVMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpBVTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkFYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkJYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6Q0ExMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNhbmFkaWFuIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkNBMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpDQUM0MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpDTjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpDTjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNoaW5hIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6Q1hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRFMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHZXJtYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpERTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdlcm1hbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkRFVTMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiREFYIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RFhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNwYWluIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTcGFpbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkVVQlVORC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gQnVuZCJdLG8uZXhwb3J0c1siI1RWQzpFWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkZSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGcmFuY2UgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpGUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZyYW5jZSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkZUTUlCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlsYW5vIEl0YWxpYSBCb3JzYSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpHQjAyLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAyIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpHT0xELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBHb2xkIChVUyQgLyBPWikiXSxvLmV4cG9ydHNbIiNUVkM6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOklCRVgzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklCRVggMzUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6SUQwMy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDMgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SUQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklEMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOklUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGFseSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRhbHkgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLApvLmV4cG9ydHNbIiNUVkM6SVhJQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpKUDEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpKUDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SlhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktPU1BJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgQ29tcG9zaXRlIFN0b2NrIFByaWNlIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJLb3JlYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOktSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpNWTEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWFsYXlzaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpNWTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1hbGF5c2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TkRYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5JMjI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gMjI1IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5MMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXRoZXJsYW5kcyBHb3Zlcm5tZW50IEJvbmRzLCAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpOTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldGhlcmxhbmRzIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6TloxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOk5aMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQQUxMQURJVU0tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFBhbGxhZGl1bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBMMDVZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9sYW5kIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBvbGFuZCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlBMQVRJTlVNLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBQbGF0aW51bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb3J0dWdhbCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOlBUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9ydHVnYWwgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpTQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU291dGggQWZyaWNhIFRvcCA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTSUxWRVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFNpbHZlciAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlNQWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6U1NNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIE1hcmtldCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTdHJhaXRzIFRpbWVzIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYNUUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIEZyYW5jIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlRSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUdXJrZXkgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpUUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlR1cmtleSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlVLT0lMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBCcmVudCBDcnVkZSBPaWwiXSxvLmV4cG9ydHNbIiNUVkM6VUtYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlVTMDItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVMwMlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMwNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzA1WS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpVUzEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMzAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFdUSSBDcnVkZSBPaWwiXSwKby5leHBvcnRzWyIjVFZDOlZJWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZvbGF0aWxpdHkgUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpaWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUV0lJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVGFpd2FuIFdlaWdodGVkIEluZGV4Il0sby5leHBvcnRzWyIjVFdTRTpUQUlFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBDYXBpdGFsaXphdGlvbiBXZWlnaHRlZCBTdG9jayBJbmRleCJdLG8uZXhwb3J0c1siI1RXVFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUd2l0dGVyIEluYyJdLG8uZXhwb3J0c1siI1VLMTAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSAxMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNVS09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ3J1ZGUgT2lsIChCcmVudCkiXSxvLmV4cG9ydHNbIiNVTklVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVbmlzd2FwIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI1VTREFVRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gQXVzdHJhbGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjVVNEQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDYW5hZGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFN3aXNzIEZyYW5jIl0sby5leHBvcnRzWyIjVVNEQ05ZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNVU0RES0stc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIERhbmlzaCBLcm9uZSJdLG8uZXhwb3J0c1siI1VTREVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gRXVybyJdLG8uZXhwb3J0c1siI1VTREdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUG91bmQgU3RlcmxpbmciXSxvLmV4cG9ydHNbIiNVU0RIS0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEhvbmcgS29uZyBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RIVUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEh1bmdhcmlhbiBGb3JpbnQiXSxvLmV4cG9ydHNbIiNVU0RJRFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1cGlhaCJdLG8uZXhwb3J0c1siI1VTRElMUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSXNyYWVsaSBTaGVrZWwiXSxvLmV4cG9ydHNbIiNVU0RJTlItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEluZGlhbiBSdXBlZSJdLG8uZXhwb3J0c1siI1VTREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjVVNES1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTb3V0aCBLb3JlYW4iXSxvLmV4cG9ydHNbIiNVU0RNWE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIE1leGljYW4gUGVzbyJdLG8uZXhwb3J0c1siI1VTRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEUEhQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBQaGlsaXBwaW5lIHBlc28iXSxvLmV4cG9ydHNbIiNVU0RQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI1VTRFJVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI1VTRFJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1c3NpYW4gUnVibGUgVE9NIl0sby5leHBvcnRzWyIjVVNEU0VLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTd2VkaXNoIEtyb25hIl0sby5leHBvcnRzWyIjVVNEU0dELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTaW5nYXBvcmUgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNVU0RUUlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFR1cmtpc2ggTGlyYSJdLG8uZXhwb3J0c1siI1VTRFpBUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gU291dGggQWZyaWNhbiBSYW5kIl0sby5leHBvcnRzWyIjVVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENydWRlIE9pbCAoV1RJKSJdLG8uZXhwb3J0c1siI1dIRUFUVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBXaGVhdCJdLG8uZXhwb3J0c1siI1hBR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEFVVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBTcG90IC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYQlRDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQ2FuYWRpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEVUUjpEQVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEQVggSW5kZXgiXSxvLmV4cG9ydHNbIiNYTVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNb25lcm8gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI1hQRFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gUGFsbGFkaXVtIl0sCm8uZXhwb3J0c1siI1hQVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYUlBCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJYUlAgLyBCaXRjb2luIl0sby5leHBvcnRzWyIjWFJQRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWFJQIC8gRXVybyJdLG8uZXhwb3J0c1siI1hSUFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlhSUCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWkVDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWmNhc2ggLyBVLlMuIERvbGxhciJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.265Z","timestamp":1785154590265,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/49265.c208ef8379e073f94d16.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a435fcb-4ddf\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 30 Jun 2026 06:18:51 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/30/2026 11:55:09\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e1c5badd86ea7c135cd5b21a78af26d3\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":19935,"size_decoded":7323,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-27T14:18:36.366377Z","times_seen":2987,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0OTI2NV0sezc1Njg1MSh0KXsidXNlIHN0cmljdCI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxyPXQubGVuZ3RoLG49MDtuPHI7bisrKXt2YXIgdT10LmNoYXJDb2RlQXQobik7aWYodT49NTUyOTYmJnU8PTU2MzE5JiZyPm4rMSl7dmFyIGE9dC5jaGFyQ29kZUF0KG4rMSk7YT49NTYzMjAmJmE8PTU3MzQzJiYodT0xMDI0Kih1LTU1Mjk2KSthLTU2MzIwKzY1NTM2LG4rPTEpfXU8MTI4P2UucHVzaCh1KTp1PDIwNDg/KGUucHVzaCh1Pj42fDE5MiksZS5wdXNoKDYzJnV8MTI4KSk6dTw1NTI5Nnx8dT49NTczNDQmJnU8NjU1MzY/KGUucHVzaCh1Pj4xMnwyMjQpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6dT49NjU1MzYmJnU8PTExMTQxMTE/KGUucHVzaCh1Pj4xOHwyNDApLGUucHVzaCh1Pj4xMiY2M3wxMjgpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6ZS5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZSkuYnVmZmVyfX0sNTA0NDAyKHQsZSxyKXt2YXIgbj1yKDYzODIyMSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0PW4odF49dD4+PjE2LDIyNDY4MjI1MDcpLHQ9bih0Xj10Pj4+MTMsMzI2NjQ4OTkwOSksKHRePXQ+Pj4xNik+Pj4wfX0sNjM4MjIxKHQpeyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbih0LGUpe3ZhciByPTY1NTM1JnQsbj02NTUzNSZlO3JldHVybiByKm4rKCh0Pj4+MTYmNjU1MzUpKm4rciooZT4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KHQsZSxyKXt2YXIgbj1yKDYzODIyMSksdT1yKDUwNDQwMiksYT1yKDc1Njg1MSksbz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYyh0LGUpe3JldHVybiB0PDxlfHQ+Pj4zMi1lfXQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGU9ZT8wfGU6MCwic3RyaW5nIj09dHlwZW9mIHQmJih0PWEodCkpLCEodCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIHI9bmV3IFVpbnQzMkFycmF5KFtlXSk7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT1uZXcgVWludDMyQXJyYXkodCwwLHIpLGE9MDthPHI7YSsrKXVbYV09bih1W2FdLG9bMF0pLHVbYV09Yyh1W2FdLDE1KSx1W2FdPW4odVthXSxvWzFdKSxlWzBdPWVbMF1edVthXSxlWzBdPWMoZVswXSwxMyksZVswXT1uKGVbMF0sNSkrMzg2NDI5MjE5Nn0odCxyKSxmdW5jdGlvbih0LGUpe3ZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT10LmJ5dGVMZW5ndGglNCxhPTAsZj1uZXcgVWludDhBcnJheSh0LDQqcix1KTtzd2l0Y2godSl7Y2FzZSAzOmFePWZbMl08PDE2O2Nhc2UgMjphXj1mWzFdPDw4O2Nhc2UgMTphXj1mWzBdLGE9YyhhPW4oYSxvWzBdKSwxNSksYT1uKGEsb1sxXSksZVswXT1lWzBdXmF9fSh0LHIpLGZ1bmN0aW9uKHQsZSl7ZVswXT1lWzBdXnQuYnl0ZUxlbmd0aCxlWzBdPXUoZVswXSl9KHQsciksci5idWZmZXJ9fSw0MTQxMjModCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoMTYyMzE2KSx1PXIoOTgxNTIzKTtjb25zdCBhPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJTZXQiKX0sMjY5MzY2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDcxMzE0OCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5zZXQodCwiX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIpLHRoaXN9O2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBvKHQpe3ZhciBlPS0xLHI9bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQ7KytlPHI7KXRoaXMuYWRkKHRbZV0pfW8ucHJvdG90eXBlLmFkZD1vLnByb3RvdHlwZS5wdXNoPXUsby5wcm90b3R5cGUuaGFzPWE7Y29uc3QgYz1vfSw4ODY1MTQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoNzM1OTgzKTtjb25zdCB1PWZ1bmN0aW9uKCl7dGhpcy5fX2RhdGFfXz1uZXcgbi5kZWZhdWx0LHRoaXMuc2l6ZT0wfTtjb25zdCBhPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18scj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxyfTtjb25zdCBvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX07Y29uc3QgYz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBmPXIoNjk0MjEpLHM9cig3MTMxNDgpO2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKHIgaW5zdGFuY2VvZiBuLmRlZmF1bHQpe3ZhciB1PXIuX19kYXRhX187aWYoIWYuZGVmYXVsdHx8dS5sZW5ndGg8MTk5KXJldHVybiB1LnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK3Iuc2l6ZSx0aGlzO3I9dGhpcy5fX2RhdGFfXz1uZXcgcy5kZWZhdWx0KHUpfXJldHVybiByLnNldCh0LGUpLHRoaXMuc2l6ZT1yLnNpemUsdGhpc307ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQodCk7dGhpcy5zaXplPWUuc2l6ZX1sLnByb3RvdHlwZS5jbGVhcj11LGwucHJvdG90eXBlLmRlbGV0ZT1hLGwucHJvdG90eXBlLmdldD1vLGwucHJvdG90eXBlLmhhcz1jLGwucHJvdG90eXBlLnNldD1pO2NvbnN0IGQ9bH0sODY1MzMwKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPXIoOTgxNTIzKS5kZWZhdWx0LlVpbnQ4QXJyYXl9LDkyODQ1Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjIzMTYpLHU9cig5ODE1MjMpO2NvbnN0IGE9KDAsbi5kZWZhdWx0KSh1LmRlZmF1bHQsIldlYWtNYXAiKX0sCjk4NDEzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK3I8biYmITEhPT1lKHRbcl0scix0KTspO3JldHVybiB0fX0sMjI0NDE2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDY4ODk2NSk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH07Y29uc3QgYT1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPXItMSx1PXQubGVuZ3RoOysrbjx1OylpZih0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX07Y29uc3Qgbz1mdW5jdGlvbih0LGUscil7cmV0dXJuIGU9PWU/YSh0LGUscik6KDAsbi5kZWZhdWx0KSh0LHUscil9O2NvbnN0IGM9ZnVuY3Rpb24odCxlKXtyZXR1cm4hIShudWxsPT10PzA6dC5sZW5ndGgpJiZvKHQsZSwwKT4tMX19LDgyNTAzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPS0xLHU9bnVsbD09dD8wOnQubGVuZ3RoOysrbjx1OylpZihyKGUsdFtuXSkpcmV0dXJuITA7cmV0dXJuITF9fSw4MjA5NzUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1BcnJheSh0KTsrK3I8dDspbltyXT1lKHIpO3JldHVybiBufTt2YXIgdT1yKDUzMTU1NyksYT1yKDI5NTYzNSksbz1yKDY1OTAxOCksYz1yKDkyMTE0MyksZj1yKDE2NTI2Nykscz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj0oMCxhLmRlZmF1bHQpKHQpLGk9IXImJigwLHUuZGVmYXVsdCkodCksbD0hciYmIWkmJigwLG8uZGVmYXVsdCkodCksZD0hciYmIWkmJiFsJiYoMCxmLmRlZmF1bHQpKHQpLHY9cnx8aXx8bHx8ZCxwPXY/bih0Lmxlbmd0aCxTdHJpbmcpOltdLGI9cC5sZW5ndGg7Zm9yKHZhciB5IGluIHQpIWUmJiFzLmNhbGwodCx5KXx8diYmKCJsZW5ndGgiPT15fHxsJiYoIm9mZnNldCI9PXl8fCJwYXJlbnQiPT15KXx8ZCYmKCJidWZmZXIiPT15fHwiYnl0ZUxlbmd0aCI9PXl8fCJieXRlT2Zmc2V0Ij09eSl8fCgwLGMuZGVmYXVsdCkoeSxiKSl8fHAucHVzaCh5KTtyZXR1cm4gcH19LDQ0ODYyNih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPWUubGVuZ3RoLHU9dC5sZW5ndGg7KytyPG47KXRbdStyXT1lW3JdO3JldHVybiB0fX0sMTY4NTMzKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDI1NDczOCksdT1yKDkxMDc3OCksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IG89ZnVuY3Rpb24odCxlLHIpe3ZhciBvPXRbZV07YS5jYWxsKHQsZSkmJigwLHUuZGVmYXVsdCkobyxyKSYmKHZvaWQgMCE9PXJ8fGUgaW4gdCl8fCgwLG4uZGVmYXVsdCkodCxlLHIpfX0sMjU0NzM4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDM2MDQ5KTtjb25zdCB1PWZ1bmN0aW9uKHQsZSxyKXsiX19wcm90b19fIj09ZSYmbi5kZWZhdWx0PygwLG4uZGVmYXVsdCkodCxlLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTpyLHdyaXRhYmxlOiEwfSk6dFtlXT1yfX0sNDkzMDE4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pkh9KTt2YXIgbj1yKDg4NjUxNCksdT1yKDk4NDEzOSksYT1yKDE2ODUzMyksbz1yKDYxODU3KSxjPXIoMzA5MDgwKTtjb25zdCBmPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQmJigwLG8uZGVmYXVsdCkoZSwoMCxjLmRlZmF1bHQpKGUpLHQpfTt2YXIgcz1yKDIxNzQ1Nyk7Y29uc3QgaT1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYoMCxvLmRlZmF1bHQpKGUsKDAscy5kZWZhdWx0KShlKSx0KX07dmFyIGw9cig0ODcwNjApLGQ9cig3MDU3NDkpLHY9cigyMzA5NTEpO2NvbnN0IHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsdi5kZWZhdWx0KSh0KSxlKX07dmFyIGI9cigxMTY2NDEpO2NvbnN0IHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsYi5kZWZhdWx0KSh0KSxlKX07dmFyIGg9cig4MDYyNDApLGo9cig5OTE1OTkpLGc9cig5Njk3ODUpLHc9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBfPWZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLHI9bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIGUmJiJzdHJpbmciPT10eXBlb2YgdFswXSYmdy5jYWxsKHQsImluZGV4IikmJihyLmluZGV4PXQuaW5kZXgsci5pbnB1dD10LmlucHV0KSxyfTt2YXIgQT1yKDM3NzI1MSk7Y29uc3QgbT1mdW5jdGlvbih0LGUpe3ZhciByPWU/KDAsQS5kZWZhdWx0KSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKHIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9O3ZhciBPPS9cdyokLztjb25zdCB4PWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyB0LmNvbnN0cnVjdG9yKHQuc291cmNlLE8uZXhlYyh0KSk7cmV0dXJuIGUubGFzdEluZGV4PXQubGFzdEluZGV4LGV9O3ZhciBVPXIoODcyOTk5KSxFPVUuZGVmYXVsdD9VLmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxUPUU/RS52YWx1ZU9mOnZvaWQgMDtjb25zdCBTPWZ1bmN0aW9uKHQpe3JldHVybiBUP09iamVjdChULmNhbGwodCkpOnt9fTt2YXIgST1yKDEzOTA3KTtjb25zdCBNPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj10LmNvbnN0cnVjdG9yO3N3aXRjaChlKXtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4oMCxBLmRlZmF1bHQpKHQpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpyZXR1cm4gbmV3IG4oK3QpO2Nhc2UiW29iamVjdCBEYXRhVmlld10iOnJldHVybiBtKHQscik7Y2FzZSJbb2JqZWN0IEZsb2F0MzJBcnJheV0iOmNhc2UiW29iamVjdCBGbG9hdDY0QXJyYXldIjoKY2FzZSJbb2JqZWN0IEludDhBcnJheV0iOmNhc2UiW29iamVjdCBJbnQxNkFycmF5XSI6Y2FzZSJbb2JqZWN0IEludDMyQXJyYXldIjpjYXNlIltvYmplY3QgVWludDhBcnJheV0iOmNhc2UiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MzJBcnJheV0iOnJldHVybigwLEkuZGVmYXVsdCkodCxyKTtjYXNlIltvYmplY3QgTWFwXSI6Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgTnVtYmVyXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiBuZXcgbih0KTtjYXNlIltvYmplY3QgUmVnRXhwXSI6cmV0dXJuIHgodCk7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOnJldHVybiBTKHQpfX07dmFyIEI9cig4MDc1NzUpLFA9cigyOTU2MzUpLGs9cig2NTkwMTgpLHo9cig2NzI1MTEpLEM9cig4ODAxMTUpLEQ9cigzNjA2MjApO2NvbnN0IEY9ZnVuY3Rpb24odCl7cmV0dXJuKDAsRC5kZWZhdWx0KSh0KSYmIltvYmplY3QgU2V0XSI9PSgwLGcuZGVmYXVsdCkodCl9O3ZhciBMPXIoODk5MzM5KSxOPXIoMzY5ODk5KSxXPU4uZGVmYXVsdCYmTi5kZWZhdWx0LmlzU2V0O2NvbnN0IFY9Vz8oMCxMLmRlZmF1bHQpKFcpOkY7dmFyICQ9IltvYmplY3QgQXJndW1lbnRzXSIsUj0iW29iamVjdCBGdW5jdGlvbl0iLHE9IltvYmplY3QgT2JqZWN0XSIsRz17fTtHWyRdPUdbIltvYmplY3QgQXJyYXldIl09R1siW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1HWyJbb2JqZWN0IERhdGFWaWV3XSJdPUdbIltvYmplY3QgQm9vbGVhbl0iXT1HWyJbb2JqZWN0IERhdGVdIl09R1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09R1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09R1siW29iamVjdCBJbnQ4QXJyYXldIl09R1siW29iamVjdCBJbnQxNkFycmF5XSJdPUdbIltvYmplY3QgSW50MzJBcnJheV0iXT1HWyJbb2JqZWN0IE1hcF0iXT1HWyJbb2JqZWN0IE51bWJlcl0iXT1HW3FdPUdbIltvYmplY3QgUmVnRXhwXSJdPUdbIltvYmplY3QgU2V0XSJdPUdbIltvYmplY3QgU3RyaW5nXSJdPUdbIltvYmplY3QgU3ltYm9sXSJdPUdbIltvYmplY3QgVWludDhBcnJheV0iXT1HWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUdbIltvYmplY3QgVWludDE2QXJyYXldIl09R1siW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxHWyJbb2JqZWN0IEVycm9yXSJdPUdbUl09R1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IEg9ZnVuY3Rpb24gdChlLHIsbyx2LGIsdyl7dmFyIEEsbT0xJnIsTz0yJnIseD00JnI7aWYobyYmKEE9Yj9vKGUsdixiLHcpOm8oZSkpLHZvaWQgMCE9PUEpcmV0dXJuIEE7aWYoISgwLEMuZGVmYXVsdCkoZSkpcmV0dXJuIGU7dmFyIFU9KDAsUC5kZWZhdWx0KShlKTtpZihVKXtpZihBPV8oZSksIW0pcmV0dXJuKDAsZC5kZWZhdWx0KShlLEEpfWVsc2V7dmFyIEU9KDAsZy5kZWZhdWx0KShlKSxUPUU9PVJ8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PUU7aWYoKDAsay5kZWZhdWx0KShlKSlyZXR1cm4oMCxsLmRlZmF1bHQpKGUsbSk7aWYoRT09cXx8RT09JHx8VCYmIWIpe2lmKEE9T3x8VD97fTooMCxCLmRlZmF1bHQpKGUpLCFtKXJldHVybiBPP3koZSxpKEEsZSkpOnAoZSxmKEEsZSkpfWVsc2V7aWYoIUdbRV0pcmV0dXJuIGI/ZTp7fTtBPU0oZSxFLG0pfX13fHwodz1uZXcgbi5kZWZhdWx0KTt2YXIgUz13LmdldChlKTtpZihTKXJldHVybiBTO3cuc2V0KGUsQSksVihlKT9lLmZvckVhY2goKGZ1bmN0aW9uKG4pe0EuYWRkKHQobixyLG8sbixlLHcpKX0pKTooMCx6LmRlZmF1bHQpKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKG4sdSl7QS5zZXQodSx0KG4scixvLHUsZSx3KSl9KSk7dmFyIEk9eD9PP2ouZGVmYXVsdDpoLmRlZmF1bHQ6Tz9zLmRlZmF1bHQ6Yy5kZWZhdWx0LEQ9VT92b2lkIDA6SShlKTtyZXR1cm4oMCx1LmRlZmF1bHQpKER8fGUsKGZ1bmN0aW9uKG4sdSl7RCYmKG49ZVt1PW5dKSwoMCxhLmRlZmF1bHQpKEEsdSx0KG4scixvLHUsZSx3KSl9KSksQX19LDg1MTA4Mih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig4ODAxMTUpLHU9T2JqZWN0LmNyZWF0ZTtjb25zdCBhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gZnVuY3Rpb24oZSl7aWYoISgwLG4uZGVmYXVsdCkoZSkpcmV0dXJue307aWYodSlyZXR1cm4gdShlKTt0LnByb3RvdHlwZT1lO3ZhciByPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAscn19KCl9LDY4ODk2NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscixuKXtmb3IodmFyIHU9dC5sZW5ndGgsYT1yKyhuPzE6LTEpO24/YS0tOisrYTx1OylpZihlKHRbYV0sYSx0KSlyZXR1cm4gYTtyZXR1cm4tMX19LDkxNjA4NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig0NDg2MjYpLHU9cigyOTU2MzUpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIpe3ZhciBhPWUodCk7cmV0dXJuKDAsdS5kZWZhdWx0KSh0KT9hOigwLG4uZGVmYXVsdCkoYSxyKHQpKX19LDgzMDg3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig2OTM5NDEpO2NvbnN0IHU9KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5rZXlzLE9iamVjdCk7dmFyIGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBvPWZ1bmN0aW9uKHQpe2lmKCEoMCxuLmRlZmF1bHQpKHQpKXJldHVybiB1KHQpO3ZhciBlPVtdO2Zvcih2YXIgciBpbiBPYmplY3QodCkpYS5jYWxsKHQscikmJiJjb25zdHJ1Y3RvciIhPXImJmUucHVzaChyKTtyZXR1cm4gZX19LDg5OTMzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX0sNzEyODAxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzKGUpfX0sCjM3NzI1MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49cig4NjUzMzApO2NvbnN0IHU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IHQuY29uc3RydWN0b3IodC5ieXRlTGVuZ3RoKTtyZXR1cm4gbmV3IG4uZGVmYXVsdChlKS5zZXQobmV3IG4uZGVmYXVsdCh0KSksZX19LDQ4NzA2MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5mfSk7dmFyIG49cig5ODE1MjMpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXU/bi5kZWZhdWx0LkJ1ZmZlcjp2b2lkIDAsYz1vP28uYWxsb2NVbnNhZmU6dm9pZCAwO2NvbnN0IGY9ZnVuY3Rpb24odCxlKXtpZihlKXJldHVybiB0LnNsaWNlKCk7dmFyIHI9dC5sZW5ndGgsbj1jP2Mocik6bmV3IHQuY29uc3RydWN0b3Iocik7cmV0dXJuIHQuY29weShuKSxufX0sMTM5MDcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMzc3MjUxKTtjb25zdCB1PWZ1bmN0aW9uKHQsZSl7dmFyIHI9ZT8oMCxuLmRlZmF1bHQpKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3Iocix0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfX0sNzA1NzQ5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7dmFyIHI9LTEsbj10Lmxlbmd0aDtmb3IoZXx8KGU9QXJyYXkobikpOysrcjxuOyllW3JdPXRbcl07cmV0dXJuIGV9fSw2MTg1Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjg1MzMpLHU9cigyNTQ3MzgpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIsYSl7dmFyIG89IXI7cnx8KHI9e30pO2Zvcih2YXIgYz0tMSxmPWUubGVuZ3RoOysrYzxmOyl7dmFyIHM9ZVtjXSxpPWE/YShyW3NdLHRbc10scyxyLHQpOnZvaWQgMDt2b2lkIDA9PT1pJiYoaT10W3NdKSxvPygwLHUuZGVmYXVsdCkocixzLGkpOigwLG4uZGVmYXVsdCkocixzLGkpfXJldHVybiByfX0sMzYwNDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMTYyMzE2KTtjb25zdCB1PWZ1bmN0aW9uKCl7dHJ5e3ZhciB0PSgwLG4uZGVmYXVsdCkoT2JqZWN0LCJkZWZpbmVQcm9wZXJ0eSIpO3JldHVybiB0KHt9LCIiLHt9KSx0fWNhdGNoKHQpe319KCl9LDgwNjI0MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig5MTYwODUpLHU9cigyMzA5NTEpLGE9cigzMDkwODApO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsbi5kZWZhdWx0KSh0LGEuZGVmYXVsdCx1LmRlZmF1bHQpfX0sOTkxNTk5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDkxNjA4NSksdT1yKDExNjY0MSksYT1yKDIxNzQ1Nyk7Y29uc3Qgbz1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsYS5kZWZhdWx0LHUuZGVmYXVsdCl9fSwzOTI1NDUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpfSwyMzA5NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsdT0wLGE9W107KytyPG47KXt2YXIgbz10W3JdO2UobyxyLHQpJiYoYVt1KytdPW8pfXJldHVybiBhfTt2YXIgdT1yKDE3NzY1NSksYT1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztjb25zdCBjPW8/ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/W106KHQ9T2JqZWN0KHQpLG4obyh0KSwoZnVuY3Rpb24oZSl7cmV0dXJuIGEuY2FsbCh0LGUpfSkpKX06dS5kZWZhdWx0fSwxMTY2NDEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO3ZhciBuPXIoNDQ4NjI2KSx1PXIoMzkyNTQ1KSxhPXIoMjMwOTUxKSxvPXIoMTc3NjU1KTtjb25zdCBjPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdO3Q7KSgwLG4uZGVmYXVsdCkoZSwoMCxhLmRlZmF1bHQpKHQpKSx0PSgwLHUuZGVmYXVsdCkodCk7cmV0dXJuIGV9Om8uZGVmYXVsdH0sOTY5Nzg1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm19KTt2YXIgbj1yKDE2MjMxNiksdT1yKDk4MTUyMyk7Y29uc3QgYT0oMCxuLmRlZmF1bHQpKHUuZGVmYXVsdCwiRGF0YVZpZXciKTt2YXIgbz1yKDY5NDIxKTtjb25zdCBjPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJQcm9taXNlIik7dmFyIGY9cig0MTQxMjMpLHM9cig5Mjg0NTMpLGk9cigxNzg0OTcpLGw9cig3MzA1MDMpLGQ9IltvYmplY3QgTWFwXSIsdj0iW29iamVjdCBQcm9taXNlXSIscD0iW29iamVjdCBTZXRdIixiPSJbb2JqZWN0IFdlYWtNYXBdIix5PSJbb2JqZWN0IERhdGFWaWV3XSIsaD0oMCxsLmRlZmF1bHQpKGEpLGo9KDAsbC5kZWZhdWx0KShvLmRlZmF1bHQpLGc9KDAsbC5kZWZhdWx0KShjKSx3PSgwLGwuZGVmYXVsdCkoZi5kZWZhdWx0KSxfPSgwLGwuZGVmYXVsdCkocy5kZWZhdWx0KSxBPWkuZGVmYXVsdDsoYSYmQShuZXcgYShuZXcgQXJyYXlCdWZmZXIoMSkpKSE9eXx8by5kZWZhdWx0JiZBKG5ldyBvLmRlZmF1bHQpIT1kfHxjJiZBKGMucmVzb2x2ZSgpKSE9dnx8Zi5kZWZhdWx0JiZBKG5ldyBmLmRlZmF1bHQpIT1wfHxzLmRlZmF1bHQmJkEobmV3IHMuZGVmYXVsdCkhPWIpJiYoQT1mdW5jdGlvbih0KXt2YXIgZT0oMCxpLmRlZmF1bHQpKHQpLHI9IltvYmplY3QgT2JqZWN0XSI9PWU/dC5jb25zdHJ1Y3Rvcjp2b2lkIDAsbj1yPygwLGwuZGVmYXVsdCkocik6IiI7aWYobilzd2l0Y2gobil7Y2FzZSBoOgpyZXR1cm4geTtjYXNlIGo6cmV0dXJuIGQ7Y2FzZSBnOnJldHVybiB2O2Nhc2UgdzpyZXR1cm4gcDtjYXNlIF86cmV0dXJuIGJ9cmV0dXJuIGV9KTtjb25zdCBtPUF9LDgwNzU3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4NTEwODIpLHU9cigzOTI1NDUpLGE9cig2OTM5NDEpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIHQuY29uc3RydWN0b3J8fCgwLGEuZGVmYXVsdCkodCk/e306KDAsbi5kZWZhdWx0KSgoMCx1LmRlZmF1bHQpKHQpKX19LDkyMTE0Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49L14oPzowfFsxLTldXGQqKSQvO2NvbnN0IHU9ZnVuY3Rpb24odCxlKXt2YXIgcj10eXBlb2YgdDtyZXR1cm4hIShlPWU/PzkwMDcxOTkyNTQ3NDA5OTEpJiYoIm51bWJlciI9PXJ8fCJzeW1ib2wiIT1yJiZuLnRlc3QodCkpJiZ0Pi0xJiZ0JTE9PTAmJnQ8ZX19LDY5Mzk0MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49T2JqZWN0LnByb3RvdHlwZTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUucHJvdG90eXBlfHxuKX19LDM2OTg5OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5jfSk7dmFyIG49cig2MDI5NDIpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXUmJm4uZGVmYXVsdC5wcm9jZXNzO2NvbnN0IGM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9YSYmYS5yZXF1aXJlJiZhLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8byYmby5iaW5kaW5nJiZvLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpfSwxMzk4NDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIHQoZShyKSl9fX0sOTcyMDE3KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQpe3ZhciBlPS0xLHI9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtyWysrZV09dH0pKSxyfX0sMjAzNjgxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDQ5MzAxOCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsNSl9fSw1NDc4NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoODgwMTE1KSx1PXIoOTgxNTIzKTtjb25zdCBhPWZ1bmN0aW9uKCl7cmV0dXJuIHUuZGVmYXVsdC5EYXRlLm5vdygpfTt2YXIgbz1yKDQwNjQ0OSksYz1NYXRoLm1heCxmPU1hdGgubWluO2NvbnN0IHM9ZnVuY3Rpb24odCxlLHIpe3ZhciB1LHMsaSxsLGQsdixwPTAsYj0hMSx5PSExLGg9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO2Z1bmN0aW9uIGooZSl7dmFyIHI9dSxuPXM7cmV0dXJuIHU9cz12b2lkIDAscD1lLGw9dC5hcHBseShuLHIpfWZ1bmN0aW9uIGcodCl7dmFyIHI9dC12O3JldHVybiB2b2lkIDA9PT12fHxyPj1lfHxyPDB8fHkmJnQtcD49aX1mdW5jdGlvbiB3KCl7dmFyIHQ9YSgpO2lmKGcodCkpcmV0dXJuIF8odCk7ZD1zZXRUaW1lb3V0KHcsZnVuY3Rpb24odCl7dmFyIHI9ZS0odC12KTtyZXR1cm4geT9mKHIsaS0odC1wKSk6cn0odCkpfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGQ9dm9pZCAwLGgmJnU/aih0KToodT1zPXZvaWQgMCxsKX1mdW5jdGlvbiBBKCl7dmFyIHQ9YSgpLHI9Zyh0KTtpZih1PWFyZ3VtZW50cyxzPXRoaXMsdj10LHIpe2lmKHZvaWQgMD09PWQpcmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBwPXQsZD1zZXRUaW1lb3V0KHcsZSksYj9qKHQpOmx9KHYpO2lmKHkpcmV0dXJuIGNsZWFyVGltZW91dChkKSxkPXNldFRpbWVvdXQodyxlKSxqKHYpfXJldHVybiB2b2lkIDA9PT1kJiYoZD1zZXRUaW1lb3V0KHcsZSkpLGx9cmV0dXJuIGU9KDAsby5kZWZhdWx0KShlKXx8MCwoMCxuLmRlZmF1bHQpKHIpJiYoYj0hIXIubGVhZGluZyxpPSh5PSJtYXhXYWl0ImluIHIpP2MoKDAsby5kZWZhdWx0KShyLm1heFdhaXQpfHwwLGUpOmksaD0idHJhaWxpbmciaW4gcj8hIXIudHJhaWxpbmc6aCksQS5jYW5jZWw9ZnVuY3Rpb24oKXt2b2lkIDAhPT1kJiZjbGVhclRpbWVvdXQoZCkscD0wLHU9dj1zPWQ9dm9pZCAwfSxBLmZsdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PWQ/bDpfKGEoKSl9LEF9fSw1MzE1NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoMTc4NDk3KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1PYmplY3QucHJvdG90eXBlLGM9by5oYXNPd25Qcm9wZXJ0eSxmPW8ucHJvcGVydHlJc0VudW1lcmFibGUscz1hKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/YTpmdW5jdGlvbih0KXtyZXR1cm4oMCx1LmRlZmF1bHQpKHQpJiZjLmNhbGwodCwiY2FsbGVlIikmJiFmLmNhbGwodCwiY2FsbGVlIil9O2NvbnN0IGk9c30sMjk1NjM1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPUFycmF5LmlzQXJyYXl9LDM5MjkwOCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig5MjgxMzIpLHU9cig5OTA2MDQpO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJigwLHUuZGVmYXVsdCkodC5sZW5ndGgpJiYhKDAsbi5kZWZhdWx0KSh0KX19LDY1OTAxOCh0LGUscil7CiJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Zn0pO3ZhciBuPXIoOTgxNTIzKTtjb25zdCB1PWZ1bmN0aW9uKCl7cmV0dXJuITF9O3ZhciBhPSJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmZXhwb3J0cyYmIWV4cG9ydHMubm9kZVR5cGUmJmV4cG9ydHMsbz1hJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsYz1vJiZvLmV4cG9ydHM9PT1hP24uZGVmYXVsdC5CdWZmZXI6dm9pZCAwO2NvbnN0IGY9KGM/Yy5pc0J1ZmZlcjp2b2lkIDApfHx1fSw5OTA2MDQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiZ0Pi0xJiZ0JTE9PTAmJnQ8PTkwMDcxOTkyNTQ3NDA5OTF9fSw2NzI1MTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoOTY5Nzg1KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IE1hcF0iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1yKDg5OTMzOSksYz1yKDM2OTg5OSksZj1jLmRlZmF1bHQmJmMuZGVmYXVsdC5pc01hcDtjb25zdCBzPWY/KDAsby5kZWZhdWx0KShmKTphfSwzNjA2MjAodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdH19LDcxNzMzMih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNzg0OTcpLHU9cigzNjA2MjApO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fHwoMCx1LmRlZmF1bHQpKHQpJiYiW29iamVjdCBTeW1ib2xdIj09KDAsbi5kZWZhdWx0KSh0KX19LDE2NTI2Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5sfSk7dmFyIG49cigxNzg0OTcpLHU9cig5OTA2MDQpLGE9cigzNjA2MjApLG89e307b1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09b1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09b1siW29iamVjdCBJbnQ4QXJyYXldIl09b1siW29iamVjdCBJbnQxNkFycmF5XSJdPW9bIltvYmplY3QgSW50MzJBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09b1siW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPW9bIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsb1siW29iamVjdCBBcmd1bWVudHNdIl09b1siW29iamVjdCBBcnJheV0iXT1vWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPW9bIltvYmplY3QgQm9vbGVhbl0iXT1vWyJbb2JqZWN0IERhdGFWaWV3XSJdPW9bIltvYmplY3QgRGF0ZV0iXT1vWyJbb2JqZWN0IEVycm9yXSJdPW9bIltvYmplY3QgRnVuY3Rpb25dIl09b1siW29iamVjdCBNYXBdIl09b1siW29iamVjdCBOdW1iZXJdIl09b1siW29iamVjdCBPYmplY3RdIl09b1siW29iamVjdCBSZWdFeHBdIl09b1siW29iamVjdCBTZXRdIl09b1siW29iamVjdCBTdHJpbmddIl09b1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IGM9ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KSYmKDAsdS5kZWZhdWx0KSh0Lmxlbmd0aCkmJiEhb1soMCxuLmRlZmF1bHQpKHQpXX07dmFyIGY9cig4OTkzMzkpLHM9cigzNjk4OTkpLGk9cy5kZWZhdWx0JiZzLmRlZmF1bHQuaXNUeXBlZEFycmF5O2NvbnN0IGw9aT8oMCxmLmRlZmF1bHQpKGkpOmN9LDMwOTA4MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4MjA5NzUpLHU9cig4MzA4NzUpLGE9cigzOTI5MDgpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQpOigwLHUuZGVmYXVsdCkodCl9fSwyMTc0NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoODIwOTc1KSx1PXIoODgwMTE1KSxhPXIoNjkzOTQxKTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO2lmKG51bGwhPXQpZm9yKHZhciByIGluIE9iamVjdCh0KSllLnB1c2gocik7cmV0dXJuIGV9O3ZhciBjPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7Y29uc3QgZj1mdW5jdGlvbih0KXtpZighKDAsdS5kZWZhdWx0KSh0KSlyZXR1cm4gbyh0KTt2YXIgZT0oMCxhLmRlZmF1bHQpKHQpLHI9W107Zm9yKHZhciBuIGluIHQpKCJjb25zdHJ1Y3RvciIhPW58fCFlJiZjLmNhbGwodCxuKSkmJnIucHVzaChuKTtyZXR1cm4gcn07dmFyIHM9cigzOTI5MDgpO2NvbnN0IGk9ZnVuY3Rpb24odCl7cmV0dXJuKDAscy5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQsITApOmYodCl9fSw2NjMwNDYodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNzEzMTQ4KTtmdW5jdGlvbiB1KHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHR8fG51bGwhPWUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZnVuY3Rpb24iKTt2YXIgcj1mdW5jdGlvbigpe3ZhciBuPWFyZ3VtZW50cyx1PWU/ZS5hcHBseSh0aGlzLG4pOm5bMF0sYT1yLmNhY2hlO2lmKGEuaGFzKHUpKXJldHVybiBhLmdldCh1KTt2YXIgbz10LmFwcGx5KHRoaXMsbik7cmV0dXJuIHIuY2FjaGU9YS5zZXQodSxvKXx8YSxvfTtyZXR1cm4gci5jYWNoZT1uZXcodS5DYWNoZXx8bi5kZWZhdWx0KSxyfXUuQ2FjaGU9bi5kZWZhdWx0O2NvbnN0IGE9dX0sODYyMzg4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7fX0sMTc3NjU1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7cmV0dXJuW119fSw1ODcxNjgodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNTQ3ODUxKSx1PXIoODgwMTE1KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxyKXsKdmFyIGE9ITAsbz0hMDtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuKDAsdS5kZWZhdWx0KShyKSYmKGE9ImxlYWRpbmciaW4gcj8hIXIubGVhZGluZzphLG89InRyYWlsaW5nImluIHI/ISFyLnRyYWlsaW5nOm8pLCgwLG4uZGVmYXVsdCkodCxlLHtsZWFkaW5nOmEsbWF4V2FpdDplLHRyYWlsaW5nOm99KX19LDQwNjQ0OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT52fSk7dmFyIG49L1xzLztjb25zdCB1PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS0mJm4udGVzdCh0LmNoYXJBdChlKSk7KTtyZXR1cm4gZX07dmFyIGE9L15ccysvO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLHUodCkrMSkucmVwbGFjZShhLCIiKTp0fTt2YXIgYz1yKDg4MDExNSksZj1yKDcxNzMzMikscz0vXlstK10weFswLTlhLWZdKyQvaSxpPS9eMGJbMDFdKyQvaSxsPS9eMG9bMC03XSskL2ksZD1wYXJzZUludDtjb25zdCB2PWZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gdDtpZigoMCxmLmRlZmF1bHQpKHQpKXJldHVybiBOYU47aWYoKDAsYy5kZWZhdWx0KSh0KSl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQudmFsdWVPZj90LnZhbHVlT2YoKTp0O3Q9KDAsYy5kZWZhdWx0KShlKT9lKyIiOmV9aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiAwPT09dD90Oit0O3Q9byh0KTt2YXIgcj1pLnRlc3QodCk7cmV0dXJuIHJ8fGwudGVzdCh0KT9kKHQuc2xpY2UoMikscj8yOjgpOnMudGVzdCh0KT9OYU46K3R9fSwzNTI4MzcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoMjY5MzY2KSx1PXIoMjI0NDE2KSxhPXIoODI1MDM5KSxvPXIoNzEyODAxKSxjPXIoNDE0MTIzKSxmPXIoODYyMzg4KSxzPXIoOTcyMDE3KTtjb25zdCBpPWMuZGVmYXVsdCYmMS8oMCxzLmRlZmF1bHQpKG5ldyBjLmRlZmF1bHQoWywtMF0pKVsxXT09MS8wP2Z1bmN0aW9uKHQpe3JldHVybiBuZXcgYy5kZWZhdWx0KHQpfTpmLmRlZmF1bHQ7Y29uc3QgbD1mdW5jdGlvbih0LGUscil7dmFyIGM9LTEsZj11LmRlZmF1bHQsbD10Lmxlbmd0aCxkPSEwLHY9W10scD12O2lmKHIpZD0hMSxmPWEuZGVmYXVsdDtlbHNlIGlmKGw+PTIwMCl7dmFyIGI9ZT9udWxsOmkodCk7aWYoYilyZXR1cm4oMCxzLmRlZmF1bHQpKGIpO2Q9ITEsZj1vLmRlZmF1bHQscD1uZXcgbi5kZWZhdWx0fWVsc2UgcD1lP1tdOnY7dDpmb3IoOysrYzxsOyl7dmFyIHk9dFtjXSxoPWU/ZSh5KTp5O2lmKHk9cnx8MCE9PXk/eTowLGQmJmg9PWgpe2Zvcih2YXIgaj1wLmxlbmd0aDtqLS07KWlmKHBbal09PT1oKWNvbnRpbnVlIHQ7ZSYmcC5wdXNoKGgpLHYucHVzaCh5KX1lbHNlIGYocCxoLHIpfHwocCE9PXYmJnAucHVzaChoKSx2LnB1c2goeSkpfXJldHVybiB2fTtjb25zdCBkPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lmxlbmd0aD9sKHQpOltdfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/43792.e1bd06112404f0901a66.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.529Z","timestamp":1785154590529,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/43792.e1bd06112404f0901a66.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-fa2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f238204a2c8ebbd8ca53fca1857d53b3\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4002,"size_decoded":1797,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4002), with no line terminators","md5":"132394741fdf9302124f840e6c3a925d","sha1":"59267f8b0edd10201baaabda8807c79d9b9c3642","sha256":"8157f6ce008ce1e225eb1af407cc0fa0cff8f6155386f2da7e90a74c37091048","sha512":"63359d8ac07c4cd882722bc630255d64b699f4f548c64e2558f6d95f25c6e75f0b5645fee034885862797dfedaf95df80c12f73ec2d41c159177c19470c40f6d","ssdeep":"","tlshash":"bd819cbcea50d8770d5fa63e0398d06c3994b213ee26ab57ffa0d10144d7be6419a70e","first_seen":"2026-07-22T16:00:00.457602Z","last_seen":"2026-07-27T14:22:59.602245Z","times_seen":369,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtUk00Xzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1STTRfOnZhcigtLWNvbG9yLXJpcGUtcmVkLWEyMDApOy0tXzItUk00Xzp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tXzMtUk00Xzp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tXzQtUk00Xzp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1fNS1STTRfOnZhcigtLWNvbG9yLWlndWFuYS1ncmVlbi0zMDApOy0tXzYtUk00Xzp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tNjAwKTstLV83LVJNNF86dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tXzgtUk00Xzp2YXIoLS1jb2xvci1iYW5hbmEteWVsbG93LTkwMCk7LS1fOS1STTRfOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMzAwKTstLV8xMC1STTRfOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLV8xMS1STTRfOnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tXzEyLVJNNF86dmFyKC0tY29sb3Itc2t5LWJsdWUtYTcwMCk7LS1fMTMtUk00Xzp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTIwMCk7LS1fMTQtUk00Xzp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTQwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1STTRfOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzEtUk00Xzp2YXIoLS1jb2xvci1yaXBlLXJlZC1hMjAwKTstLV8yLVJNNF86dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLV8zLVJNNF86dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLV80LVJNNF86dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tXzUtUk00Xzp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tMzAwKTstLV82LVJNNF86dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTYwMCk7LS1fNy1STTRfOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctNzAwKTstLV84LVJNNF86dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy05MDApOy0tXzktUk00Xzp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1fMTAtUk00Xzp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTcwMCk7LS1fMTEtUk00Xzp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLV8xMi1STTRfOnZhcigtLWNvbG9yLXNreS1ibHVlLWE3MDApOy0tXzEzLVJNNF86dmFyKC0tY29sb3ItYmVycnktcGluay0yMDApOy0tXzE0LVJNNF86dmFyKC0tY29sb3ItYmVycnktcGluay00MDApfS53cmFwLUdoRGpYekJ4e2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9LndyYXAtR2hEalh6Qng6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlO2NvbnRlbnQ6bm9uZTtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6MDtvdXRsaW5lOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKSBub25lIDJweDtvdXRsaW5lLW9mZnNldDotNHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ud3JhcC1HaERqWHpCeDpmb2N1cy12aXNpYmxlOmJlZm9yZXtjb250ZW50OiIiO291dGxpbmUtc3R5bGU6c29saWR9LndyYXAtR2hEalh6QnggLmlucHV0LUdoRGpYekJ4e2N1cnNvcjpwb2ludGVyO2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsud3JhcC1HaERqWHpCeCAuaW5wdXQtR2hEalh6Qng6aG92ZXI6bm90KDpjaGVja2VkKSsuYm94LUdoRGpYekJ4IC5ob3ZlckRvdC1HaERqWHpCeHtkaXNwbGF5OmJsb2NrfX0uYm94LUdoRGpYekJ4e2hlaWdodDoxNnB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTZweH0uYm94LUdoRGpYekJ4LnJlZC1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMS1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5yZWQtR2hEalh6Qng6aG92ZXJ7Y29sb3I6dmFyKC0tXzItUk00Xyl9fS5ib3gtR2hEalh6QnguYmx1ZS1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMy1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5ibHVlLUdoRGpYekJ4OmhvdmVye2NvbG9yOnZhcigtLV80LVJNNF8pfX0uYm94LUdoRGpYekJ4LmdyZWVuLUdoRGpYekJ4e2NvbG9yOnZhcigtLV81LVJNNF8pfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuYm94LUdoRGpYekJ4LmdyZWVuLUdoRGpYekJ4OmhvdmVye2NvbG9yOnZhcigtLV82LVJNNF8pfX0uYm94LUdoRGpYekJ4Lm9yYW5nZS1HaERqWHpCeHtjb2xvcjp2YXIoLS1fNy1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5vcmFuZ2UtR2hEalh6Qng6aG92ZXJ7Y29sb3I6dmFyKC0tXzgtUk00Xyl9fS5ib3gtR2hEalh6QngucHVycGxlLUdoRGpYekJ4e2NvbG9yOnZhcigtLV85LVJNNF8pfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuYm94LUdoRGpYekJ4LnB1cnBsZS1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTAtUk00Xyl9fS5ib3gtR2hEalh6QnguY3lhbi1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMTEtUk00Xyl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ib3gtR2hEalh6QnguY3lhbi1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTItUk00Xyl9fS5ib3gtR2hEalh6QngucGluay1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMTMtUk00Xyl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ib3gtR2hEalh6QngucGluay1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTQtUk00Xyl9fS5ib3gtR2hEalh6QngubGFyZ2UtR2hEalh6Qnh7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ucGlja2VyRG90LUdoRGpYekJ4e2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9LmhvdmVyRG90LUdoRGpYekJ4e2NvbG9yOnZhcigtLV8wLVJNNF8pO2Rpc3BsYXk6bm9uZTtvcGFjaXR5Oi41fVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXlNSEM6dmFyKC0tY29sb3Itd2hpdGUpfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteU1IQzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKX0ud3JhcHBlci1WbmVRVm9OdntwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZTo2cHggMTBweH0ud3JhcHBlci1WbmVRVm9OdiAuc2VsZWN0b3ItVm5lUVZvTnZ7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAteU1IQyk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNoYWRvdzowIDAgNnB4IDAgdmFyKC0tY29sb3Itb3RoZXItc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0KTtkaXNwbGF5OmlubGluZS1mbGV4O3BhZGRpbmc6NHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS53cmFwcGVyLVZuZVFWb052IC5zZWxlY3Rvci1WbmVRVm9OdiAuYXJyb3dMZWZ0LVZuZVFWb052e2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDotMTJweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDoxMnB4fS53cmFwcGVyLVZuZVFWb052IC5zZWxlY3Rvci1WbmVRVm9OdiAuYXJyb3dMZWZ0LVZuZVFWb052OmFmdGVye2JhY2tncm91bmQ6dmFyKC0tXzAteU1IQyk7Ym94LXNoYWRvdzowIDAgNnB4IDAgdmFyKC0tY29sb3Itb3RoZXItc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0KTtjb250ZW50OiIiO2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDo5cHg7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7d2lkdGg6MTJweH0ud3JhcHBlci1WbmVRVm9OdiAuc2VsZWN0b3ItVm5lUVZvTnYgLmFycm93TGVmdC1WbmVRVm9OdjphZnRlcjpkaXIocnRsKXt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9LmNvbG9yU2VsZWN0QnV0dG9uLVZuZVFWb052e3BhZGRpbmc6NHB4fS5wb3B1cC1WbmVRVm9Odntwb3NpdGlvbjpmaXhlZDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt6LWluZGV4OjEwMDB9"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/47632.33d2a3745af497e3da5d.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.731Z","timestamp":1785154590731,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/47632.33d2a3745af497e3da5d.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-b2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7bb2427289928a607fb36fd3e05877ff\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":178,"size_decoded":890,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"6b0e113b7611f749d459a146078f9a58","sha1":"5b1aec3af3fe370284f6a23557895bd0490a484c","sha256":"5d823f4989976ca71db5dbc63763c653f7f997d13757235fde75755413631b18","sha512":"93cc8381bee6b3f9f3ad64202f4c08c80830f96e99758b28c9a981feda509a38e4fd34bd149a5a7e549c7a7454930a4bdcf3e44a6d270087c2bcd027a72c82a0","ssdeep":"","tlshash":"7bc0801d13d4b410145701ef69e8662c247554fdf7136e5c36d4173b435fe1c0751970","first_seen":"2026-07-16T13:40:49.787877Z","last_seen":"2026-07-27T14:23:37.890163Z","times_seen":289,"resource_available":false,"data":"LmhpZGRlbi1uTXR4WFRYX3tvcGFjaXR5OjB9LmZhZGVJbldyYXBwZXItbk10eFhUWF97d2lkdGg6MTAwJX0uZmFkZUluV3JhcHBlci1uTXR4WFRYXy5pc0FuaW1hdGVkLW5NdHhYVFhfe3RyYW5zaXRpb246b3BhY2l0eSB2YXIoLS11aS1saWItZmFkZUluV3JhcHBlci10cmFuc2l0aW9uLWR1cmF0aW9uLC4zNXMpfQ=="}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/create-tab-labels-impl.0b547767d07e08bb7253.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.741Z","timestamp":1785154590741,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/create-tab-labels-impl.0b547767d07e08bb7253.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-4182\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:54\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4eda7b534f8691aefd552bf1a3e806ec\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":16770,"size_decoded":7377,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3923)","md5":"026653f0df81a4a71e532c30f5935de9","sha1":"722c6637aa2fe6239886103cc1bfa3b53bb9bb51","sha256":"a4ea1ddd9ece32035132ddf73bb24b7ac12ab958618768fc64f3fd487751c53d","sha512":"5ea3f8bb0f15978b4ce3057fd1ebc515d72a707b58f9431704b7cb96d14d06ec56541b9aadf21ad9653f1e731835339028c9130d8b15a6c612f8ceb06dc8c598","ssdeep":"384:j4796kY6CQx86mYPdvUY1C8KfTP4v8mQlnN/b0Aw:j4796NQx86mYPeYVK5mQlnN/Pw","tlshash":"2e720ac37755b06976a365ba807f414da33f2819b56f8cd0e190ecd8aaed648813bf4c","first_seen":"2026-07-23T13:38:20.515019Z","last_seen":"2026-07-27T14:22:59.63092Z","times_seen":101,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNjEwLDY0NjQ0XSx7MzQ4ODQ5KGUpe2UuZXhwb3J0cz17c3F1YXJlVGFiQnV0dG9uOiJzcXVhcmVUYWJCdXR0b24tUktLVFJoWjYiLHNlbGVjdGVkOiJzZWxlY3RlZC1SS0tUUmhaNiIsZGlzYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOiJkaXNhYmxlQWN0aXZlU3RhdGVTdHlsZXMtUktLVFJoWjYiLGRpc2FibGVkOiJkaXNhYmxlZC1SS0tUUmhaNiIsZGlzYWJsZUZvY3VzT3V0bGluZToiZGlzYWJsZUZvY3VzT3V0bGluZS1SS0tUUmhaNiIseGxhcmdlOiJ4bGFyZ2UtUktLVFJoWjYiLHRhYkhpZGRlbkNvbnRlbnQ6InRhYkhpZGRlbkNvbnRlbnQtUktLVFJoWjYiLG1lZGl1bToibWVkaXVtLVJLS1RSaFo2IixzbWFsbDoic21hbGwtUktLVFJoWjYiLHhzbWFsbDoieHNtYWxsLVJLS1RSaFo2IixtZWRpdW1XaXRoU21hbGxGb250OiJtZWRpdW1XaXRoU21hbGxGb250LVJLS1RSaFo2IixmYWtlOiJmYWtlLVJLS1RSaFo2Iix2ZXJ0aWNhbFRhYnNXcmFwcGVyOiJ2ZXJ0aWNhbFRhYnNXcmFwcGVyLVJLS1RSaFo2Iix2ZXJ0aWNhbEJ1dHRvbjoidmVydGljYWxCdXR0b24tUktLVFJoWjYiLGNvbnRlbnQ6ImNvbnRlbnQtUktLVFJoWjYiLHRhYkNvbnRlbnQ6InRhYkNvbnRlbnQtUktLVFJoWjYiLGVuZFNsb3RJbkRpc2Nsb3N1cmU6ImVuZFNsb3RJbkRpc2Nsb3N1cmUtUktLVFJoWjYifX0sMTM1Mjg3KGUpe2UuZXhwb3J0cz17c2Nyb2xsV3JhcDoic2Nyb2xsV3JhcC1GYVYwYks3ZSIsb3ZlcmZsb3dTY3JvbGw6Im92ZXJmbG93U2Nyb2xsLUZhVjBiSzdlIixzcXVhcmVUYWJzOiJzcXVhcmVUYWJzLUZhVjBiSzdlIixvdmVyZmxvd1dyYXA6Im92ZXJmbG93V3JhcC1GYVYwYks3ZSIsY29udGVudDoiY29udGVudC1GYVYwYks3ZSIsdmVydGljYWxDb250ZW50OiJ2ZXJ0aWNhbENvbnRlbnQtRmFWMGJLN2UiLHZlcnRpY2FsOiJ2ZXJ0aWNhbC1GYVYwYks3ZSIseHNtYWxsOiJ4c21hbGwtRmFWMGJLN2UiLHNxdWFyZVRhYkJ1dHRvbjoic3F1YXJlVGFiQnV0dG9uLUZhVjBiSzdlIixzdGFydFNsb3RXcmFwOiJzdGFydFNsb3RXcmFwLUZhVjBiSzdlIixlbmRTbG90V3JhcDoiZW5kU2xvdFdyYXAtRmFWMGJLN2UiLGVuZFVwcGVyU2xvdDoiZW5kVXBwZXJTbG90LUZhVjBiSzdlIixzdGFydFNsb3RXcmFwSWNvbk9ubHk6InN0YXJ0U2xvdFdyYXBJY29uT25seS1GYVYwYks3ZSIsc21hbGw6InNtYWxsLUZhVjBiSzdlIixtZWRpdW06Im1lZGl1bS1GYVYwYks3ZSIsbWVkaXVtV2l0aFNtYWxsRm9udDoibWVkaXVtV2l0aFNtYWxsRm9udC1GYVYwYks3ZSIseGxhcmdlOiJ4bGFyZ2UtRmFWMGJLN2UiLHNxdWFyZVRhYkNvdW50ZXI6InNxdWFyZVRhYkNvdW50ZXItRmFWMGJLN2UifX0sNTAzNzE2KGUpe2UuZXhwb3J0cz17c3F1YXJlVGFiczoic3F1YXJlVGFicy1keTZvTmFpOCIsc3F1YXJlVGFiQnV0dG9uOiJzcXVhcmVUYWJCdXR0b24tZHk2b05haTgifX0sNjkwMDk3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2RlZmF1bHRUaGVtZTooKT0+b30pO3ZhciByPW4oMzg3MjMxKSxhPW4oMTM1Mjg3KSxpPW4oMzQ4ODQ5KTtjb25zdCBvPSgwLHIubWVyZ2VUaGVtZXMpKGksYSl9LDM4Nzc3NChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtDaXJjbGVMb2dvOigpPT5vfSk7dmFyIHI9big3Nzk0NzQpLGE9big3OTQxODcpLGk9bigxNDAwMTcpO24ubihpKSgpLmhpZGRlbjtmdW5jdGlvbiBvKGUpe2NvbnN0IHQ9KDAsYS5pc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHMpKGUpLFtuLGldPSgwLHIudXNlU3RhdGUpKDApLG89KDAsci51c2VSZWYpKG51bGwpLGw9KDAsYS5nZXRTdHlsZUNsYXNzZXMpKGUuc2l6ZSxuLGUuY2xhc3NOYW1lKSxzPWUuYWx0Pz9lLnRpdGxlPz8iIix1PXQ/c1swXTplLnBsYWNlaG9sZGVyTGV0dGVyO3JldHVybigwLHIudXNlRWZmZWN0KSgoKCk9Pmkoby5jdXJyZW50Py5jb21wbGV0ZT8/IXQ/MjoxKSksW3RdKSx0JiYzIT09bj9yLmNyZWF0ZUVsZW1lbnQoImltZyIse3JlZjpvLGNsYXNzTmFtZTpsLGNyb3NzT3JpZ2luOiIiLHNyYzplLmxvZ29VcmwsYWx0OnMsdGl0bGU6ZS50aXRsZSxsb2FkaW5nOmUubG9hZGluZyxvbkxvYWQ6KCk9PmkoMiksb25FcnJvcjooKT0+aSgzKSwiYXJpYS1sYWJlbCI6ZVsiYXJpYS1sYWJlbCJdLCJhcmlhLWhpZGRlbiI6ZVsiYXJpYS1oaWRkZW4iXX0pOnIuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpsLHRpdGxlOmUudGl0bGUsImFyaWEtbGFiZWwiOmVbImFyaWEtbGFiZWwiXSwiYXJpYS1oaWRkZW4iOmVbImFyaWEtaGlkZGVuIl19LHUpfX0sMzA5OTIwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0N1c3RvbUJlaGF2aW91ckNvbnRleHQ6KCk9PnJ9KTtjb25zdCByPSgwLG4oNzc5NDc0KS5jcmVhdGVDb250ZXh0KSh7ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9KTtyLmRpc3BsYXlOYW1lPSJDdXN0b21CZWhhdmlvdXJDb250ZXh0In0sNzYzNTQ5KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZUNvbXBvc2VkS2V5Ym9hcmRBY3Rpb25IYW5kbGVyczooKT0+bCx1c2VLZXlib2FyZEFjdGlvbkhhbmRsZXI6KCk9Pm8sdXNlS2V5Ym9hcmRDbG9zZTooKT0+dSx1c2VLZXlib2FyZEV2ZW50SGFuZGxlcjooKT0+c30pO3ZhciByPW4oNzc5NDc0KSxhPW4oMjM1NzI0KTtjb25zdCBpPSgpPT4hMDtmdW5jdGlvbiBvKGUsdCxuPWksYSl7cmV0dXJuKDAsci51c2VDYWxsYmFjaykoKHI9PntpZihhKXtpZigiaG9yaXpvbnRhbCI9PT1hJiYoNDA9PT1yfHwzOD09PXIpKXJldHVybjtpZigidmVydGljYWwiPT09YSYmKDM3PT09cnx8Mzk9PT1yKSlyZXR1cm59Y29uc3QgaT1lLm1hcCgoZT0+ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZSgpOmUpKTtyZXR1cm4hKCFuKHIpfHwhaS5pbmNsdWRlcyhyKSkmJih0KHIpLCEwKX0pLFsuLi5lLHQsbl0pfWZ1bmN0aW9uIGwoLi4uZSl7cmV0dXJuKDAsci51c2VDYWxsYmFjaykoKHQ9Pntmb3IoY29uc3QgbiBvZiBlKWlmKG4odCkpcmV0dXJuITA7cmV0dXJuITF9KSxbLi4uZV0pfQpmdW5jdGlvbiBzKGUsdD0hMCxuPSExKXtjb25zdCBpPWwoLi4uZSk7cmV0dXJuKDAsci51c2VDYWxsYmFjaykoKGU9Pntjb25zdCByPWkoKDAsYS5oYXNoRnJvbUV2ZW50KShlKSk7ciYmdCYmZS5wcmV2ZW50RGVmYXVsdCgpLHImJm4mJmUuc3RvcFByb3BhZ2F0aW9uKCl9KSxbaV0pfWZ1bmN0aW9uIHUoZSx0KXtyZXR1cm4gbyhbOSwoMCxyLnVzZUNhbGxiYWNrKSgoKCk9PmEuTW9kaWZpZXJzLlNoaWZ0KzkpLFtdKSwyN10sdCwoMCxyLnVzZUNhbGxiYWNrKSgoKCk9PmUpLFtlXSkpfX0sNzE3OTMyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3VzZVNhZmVNYXRjaE1lZGlhOigpPT5hfSk7dmFyIHI9big3Nzk0NzQpO2Z1bmN0aW9uIGEoZSx0PSExKXtjb25zdFtuLGFdPSgwLHIudXNlU3RhdGUpKHQpO3JldHVybigwLHIudXNlRWZmZWN0KSgoKCk9Pntjb25zdCB0PXdpbmRvdy5tYXRjaE1lZGlhKGUpO2Z1bmN0aW9uIG4oKXthKHQubWF0Y2hlcyl9cmV0dXJuIG4oKSx0LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsbiksKCk9Pnt0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIsbil9fSksW2VdKSxufX0sMjczMzEwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0ljb246KCk9PmF9KTt2YXIgcj1uKDc3OTQ3NCk7Y29uc3QgYT1yLmZvcndhcmRSZWYoKChlLHQpPT57Y29uc3R7aWNvbjpuPSIiLHRpdGxlOmEsYXJpYUxhYmVsOmksYXJpYUxhYmVsbGVkYnk6byxhcmlhSGlkZGVuOmwsLi4uc309ZSx1PSEhKGF8fGl8fG8pO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyb2xlOiJpbWciLC4uLnMscmVmOnQsImFyaWEtbGFiZWwiOmksImFyaWEtbGFiZWxsZWRieSI6bywiYXJpYS1oaWRkZW4iOmx8fCF1LHRpdGxlOmEsZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6e19faHRtbDpufX0pfSkpfSw0MTkxODEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y3JlYXRlRG9tSWQ6KCk9PnN9KTtjb25zdCByPS9ccy9nO2Z1bmN0aW9uIGEoZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfWZ1bmN0aW9uIGkoZSl7c3dpdGNoKHR5cGVvZiBlKXtjYXNlInN0cmluZyI6cmV0dXJuIGU7Y2FzZSJudW1iZXIiOmNhc2UiYmlnaW50IjpyZXR1cm4gZS50b1N0cmluZygxMCk7Y2FzZSJib29sZWFuIjpjYXNlInN5bWJvbCI6cmV0dXJuIGUudG9TdHJpbmcoKTtkZWZhdWx0OnJldHVybiBudWxsfX1mdW5jdGlvbiBvKGUpe3JldHVybiBlLnRyaW0oKS5sZW5ndGg+MH1mdW5jdGlvbiBsKGUpe3JldHVybiBlLnJlcGxhY2UociwiLSIpfWZ1bmN0aW9uIHMoLi4uZSl7Y29uc3QgdD1lLm1hcChpKS5maWx0ZXIoYSkuZmlsdGVyKG8pLm1hcChsKTtyZXR1cm4odC5sZW5ndGg+MCYmdFswXS5zdGFydHNXaXRoKCJpZF8iKT90OlsiaWQiLC4uLnRdKS5qb2luKCJfIil9fSw3NzAxNDMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0VGV4dEZvclRvb2x0aXA6KCk9Pm99KTt2YXIgcj1uKDc3OTQ3NCk7Y29uc3QgYT1lPT4oMCxyLmlzVmFsaWRFbGVtZW50KShlKSYmQm9vbGVhbihlLnByb3BzLmNoaWxkcmVuKSxpPShlLHQ9ITApPT5udWxsPT1lfHwiYm9vbGVhbiI9PXR5cGVvZiBlfHwie30iPT09SlNPTi5zdHJpbmdpZnkoZSk/IiI6ZS50b1N0cmluZygpKyh0PyIgIjoiIiksbz1lPT5BcnJheS5pc0FycmF5KGUpfHwoMCxyLmlzVmFsaWRFbGVtZW50KShlKT9yLkNoaWxkcmVuLnRvQXJyYXkoZSkucmVkdWNlKCgoZSx0KT0+e2xldCBuPSIiO3JldHVybiBuPSgwLHIuaXNWYWxpZEVsZW1lbnQpKHQpJiZhKHQpP28odC5wcm9wcy5jaGlsZHJlbik6KDAsci5pc1ZhbGlkRWxlbWVudCkodCkmJiFhKHQpPyIiOmkodCksZS5jb25jYXQobil9KSwiIikudHJpbSgpOmkoZSwhMSl9LDEyOTM2NShlLHQsbil7InVzZSBzdHJpY3QiOyFmdW5jdGlvbiBlKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSxlLmV4cG9ydHM9big1MzIzODcpfSwxMjI3NDkoZSx0KXsidXNlIHN0cmljdCI7dmFyIG49U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLHI9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksYT1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGk9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxvPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksbD1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLHM9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLHU9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSxjPVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIiksZD1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIikscD1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5IiksZj1TeW1ib2wuaXRlcmF0b3I7dmFyIG09e2lzTW91bnRlZDpmdW5jdGlvbigpe3JldHVybiExfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVSZXBsYWNlU3RhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbigpe319LGg9T2JqZWN0LmFzc2lnbixiPXt9O2Z1bmN0aW9uIHgoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8bX1mdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGcoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8bX14LnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50PXt9LHgucHJvdG90eXBlLnNldFN0YXRlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPXR5cGVvZiBlJiYiZnVuY3Rpb24iIT10eXBlb2YgZSYmbnVsbCE9ZSl0aHJvdyBFcnJvcigic2V0U3RhdGUoLi4uKTogdGFrZXMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcyB0byB1cGRhdGUgb3IgYSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMuIikKO3RoaXMudXBkYXRlci5lbnF1ZXVlU2V0U3RhdGUodGhpcyxlLHQsInNldFN0YXRlIil9LHgucHJvdG90eXBlLmZvcmNlVXBkYXRlPWZ1bmN0aW9uKGUpe3RoaXMudXBkYXRlci5lbnF1ZXVlRm9yY2VVcGRhdGUodGhpcyxlLCJmb3JjZVVwZGF0ZSIpfSx5LnByb3RvdHlwZT14LnByb3RvdHlwZTt2YXIgdj1nLnByb3RvdHlwZT1uZXcgeTt2LmNvbnN0cnVjdG9yPWcsaCh2LHgucHJvdG90eXBlKSx2LmlzUHVyZVJlYWN0Q29tcG9uZW50PSEwO3ZhciB3PUFycmF5LmlzQXJyYXksXz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LFM9e2N1cnJlbnQ6bnVsbH0sUj17a2V5OiEwLHJlZjohMCxfX3NlbGY6ITAsX19zb3VyY2U6ITB9O2Z1bmN0aW9uIHooZSx0LHIpe3ZhciBhLGk9e30sbz1udWxsLGw9bnVsbDtpZihudWxsIT10KWZvcihhIGluIHZvaWQgMCE9PXQucmVmJiYobD10LnJlZiksdm9pZCAwIT09dC5rZXkmJihvPSIiK3Qua2V5KSx0KV8uY2FsbCh0LGEpJiYhUi5oYXNPd25Qcm9wZXJ0eShhKSYmKGlbYV09dFthXSk7dmFyIHM9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1zKWkuY2hpbGRyZW49cjtlbHNlIGlmKDE8cyl7Zm9yKHZhciB1PUFycmF5KHMpLGM9MDtjPHM7YysrKXVbY109YXJndW1lbnRzW2MrMl07aS5jaGlsZHJlbj11fWlmKGUmJmUuZGVmYXVsdFByb3BzKWZvcihhIGluIHM9ZS5kZWZhdWx0UHJvcHMpdm9pZCAwPT09aVthXSYmKGlbYV09c1thXSk7cmV0dXJueyQkdHlwZW9mOm4sdHlwZTplLGtleTpvLHJlZjpsLHByb3BzOmksX293bmVyOlMuY3VycmVudH19ZnVuY3Rpb24gSyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09bn12YXIgaz0vXC8rL2c7ZnVuY3Rpb24gQyhlLHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJm51bGwhPWUua2V5P2Z1bmN0aW9uKGUpe3ZhciB0PXsiPSI6Ij0wIiwiOiI6Ij0yIn07cmV0dXJuIiQiK2UucmVwbGFjZSgvWz06XS9nLChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pKX0oIiIrZS5rZXkpOnQudG9TdHJpbmcoMzYpfWZ1bmN0aW9uIFQoZSx0LGEsaSxvKXt2YXIgbD10eXBlb2YgZTsidW5kZWZpbmVkIiE9PWwmJiJib29sZWFuIiE9PWx8fChlPW51bGwpO3ZhciBzPSExO2lmKG51bGw9PT1lKXM9ITA7ZWxzZSBzd2l0Y2gobCl7Y2FzZSJzdHJpbmciOmNhc2UibnVtYmVyIjpzPSEwO2JyZWFrO2Nhc2Uib2JqZWN0Ijpzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBuOmNhc2UgcjpzPSEwfX1pZihzKXJldHVybiBvPW8ocz1lKSxlPSIiPT09aT8iLiIrQyhzLDApOmksdyhvKT8oYT0iIixudWxsIT1lJiYoYT1lLnJlcGxhY2UoaywiJCYvIikrIi8iKSxUKG8sdCxhLCIiLChmdW5jdGlvbihlKXtyZXR1cm4gZX0pKSk6bnVsbCE9byYmKEsobykmJihvPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOm4sdHlwZTplLnR5cGUsa2V5OnQscmVmOmUucmVmLHByb3BzOmUucHJvcHMsX293bmVyOmUuX293bmVyfX0obyxhKyghby5rZXl8fHMmJnMua2V5PT09by5rZXk/IiI6KCIiK28ua2V5KS5yZXBsYWNlKGssIiQmLyIpKyIvIikrZSkpLHQucHVzaChvKSksMTtpZihzPTAsaT0iIj09PWk/Ii4iOmkrIjoiLHcoZSkpZm9yKHZhciB1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBjPWkrQyhsPWVbdV0sdSk7cys9VChsLHQsYSxjLG8pfWVsc2UgaWYoYz1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZT9udWxsOiJmdW5jdGlvbiI9PXR5cGVvZihlPWYmJmVbZl18fGVbIkBAaXRlcmF0b3IiXSk/ZTpudWxsfShlKSwiZnVuY3Rpb24iPT10eXBlb2YgYylmb3IoZT1jLmNhbGwoZSksdT0wOyEobD1lLm5leHQoKSkuZG9uZTspcys9VChsPWwudmFsdWUsdCxhLGM9aStDKGwsdSsrKSxvKTtlbHNlIGlmKCJvYmplY3QiPT09bCl0aHJvdyB0PVN0cmluZyhlKSxFcnJvcigiT2JqZWN0cyBhcmUgbm90IHZhbGlkIGFzIGEgUmVhY3QgY2hpbGQgKGZvdW5kOiAiKygiW29iamVjdCBPYmplY3RdIj09PXQ/Im9iamVjdCB3aXRoIGtleXMgeyIrT2JqZWN0LmtleXMoZSkuam9pbigiLCAiKSsifSI6dCkrIikuIElmIHlvdSBtZWFudCB0byByZW5kZXIgYSBjb2xsZWN0aW9uIG9mIGNoaWxkcmVuLCB1c2UgYW4gYXJyYXkgaW5zdGVhZC4iKTtyZXR1cm4gc31mdW5jdGlvbiBFKGUsdCxuKXtpZihudWxsPT1lKXJldHVybiBlO3ZhciByPVtdLGE9MDtyZXR1cm4gVChlLHIsIiIsIiIsKGZ1bmN0aW9uKGUpe3JldHVybiB0LmNhbGwobixlLGErKyl9KSkscn1mdW5jdGlvbiBPKGUpe2lmKC0xPT09ZS5fc3RhdHVzKXt2YXIgdD1lLl9yZXN1bHQ7KHQ9dCgpKS50aGVuKChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0xLGUuX3Jlc3VsdD10KX0pLChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0yLGUuX3Jlc3VsdD10KX0pKSwtMT09PWUuX3N0YXR1cyYmKGUuX3N0YXR1cz0wLGUuX3Jlc3VsdD10KX1pZigxPT09ZS5fc3RhdHVzKXJldHVybiBlLl9yZXN1bHQuZGVmYXVsdDt0aHJvdyBlLl9yZXN1bHR9dmFyIFY9e2N1cnJlbnQ6bnVsbH0sRj17dHJhbnNpdGlvbjpudWxsfSxBPXtSZWFjdEN1cnJlbnREaXNwYXRjaGVyOlYsUmVhY3RDdXJyZW50QmF0Y2hDb25maWc6RixSZWFjdEN1cnJlbnRPd25lcjpTfTt0LkNoaWxkcmVuPXttYXA6RSxmb3JFYWNoOmZ1bmN0aW9uKGUsdCxuKXtFKGUsKGZ1bmN0aW9uKCl7dC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KSxuKX0sY291bnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9MDtyZXR1cm4gRShlLChmdW5jdGlvbigpe3QrK30pKSx0fSx0b0FycmF5OmZ1bmN0aW9uKGUpe3JldHVybiBFKGUsKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkpfHxbXX0sb25seTpmdW5jdGlvbihlKXtpZighSyhlKSl0aHJvdyBFcnJvcigiUmVhY3QuQ2hpbGRyZW4ub25seSBleHBlY3RlZCB0byByZWNlaXZlIGEgc2luZ2xlIFJlYWN0IGVsZW1lbnQgY2hpbGQuIik7cmV0dXJuIGV9fSx0LkNvbXBvbmVudD14LHQuRnJhZ21lbnQ9YSx0LlByb2ZpbGVyPW8sdC5QdXJlQ29tcG9uZW50PWcsCnQuU3RyaWN0TW9kZT1pLHQuU3VzcGVuc2U9Yyx0Ll9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPUEsdC5jbG9uZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LHIpe2lmKG51bGw9PWUpdGhyb3cgRXJyb3IoIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciBhPWgoe30sZS5wcm9wcyksaT1lLmtleSxvPWUucmVmLGw9ZS5fb3duZXI7aWYobnVsbCE9dCl7aWYodm9pZCAwIT09dC5yZWYmJihvPXQucmVmLGw9Uy5jdXJyZW50KSx2b2lkIDAhPT10LmtleSYmKGk9IiIrdC5rZXkpLGUudHlwZSYmZS50eXBlLmRlZmF1bHRQcm9wcyl2YXIgcz1lLnR5cGUuZGVmYXVsdFByb3BzO2Zvcih1IGluIHQpXy5jYWxsKHQsdSkmJiFSLmhhc093blByb3BlcnR5KHUpJiYoYVt1XT12b2lkIDA9PT10W3VdJiZ2b2lkIDAhPT1zP3NbdV06dFt1XSl9dmFyIHU9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT11KWEuY2hpbGRyZW49cjtlbHNlIGlmKDE8dSl7cz1BcnJheSh1KTtmb3IodmFyIGM9MDtjPHU7YysrKXNbY109YXJndW1lbnRzW2MrMl07YS5jaGlsZHJlbj1zfXJldHVybnskJHR5cGVvZjpuLHR5cGU6ZS50eXBlLGtleTppLHJlZjpvLHByb3BzOmEsX293bmVyOmx9fSx0LmNyZWF0ZUNvbnRleHQ9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9eyQkdHlwZW9mOnMsX2N1cnJlbnRWYWx1ZTplLF9jdXJyZW50VmFsdWUyOmUsX3RocmVhZENvdW50OjAsUHJvdmlkZXI6bnVsbCxDb25zdW1lcjpudWxsLF9kZWZhdWx0VmFsdWU6bnVsbCxfZ2xvYmFsTmFtZTpudWxsfSkuUHJvdmlkZXI9eyQkdHlwZW9mOmwsX2NvbnRleHQ6ZX0sZS5Db25zdW1lcj1lfSx0LmNyZWF0ZUVsZW1lbnQ9eix0LmNyZWF0ZUZhY3Rvcnk9ZnVuY3Rpb24oZSl7dmFyIHQ9ei5iaW5kKG51bGwsZSk7cmV0dXJuIHQudHlwZT1lLHR9LHQuY3JlYXRlUmVmPWZ1bmN0aW9uKCl7cmV0dXJue2N1cnJlbnQ6bnVsbH19LHQuZm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6dSxyZW5kZXI6ZX19LHQuaXNWYWxpZEVsZW1lbnQ9Syx0Lmxhenk9ZnVuY3Rpb24oZSl7cmV0dXJueyQkdHlwZW9mOnAsX3BheWxvYWQ6e19zdGF0dXM6LTEsX3Jlc3VsdDplfSxfaW5pdDpPfX0sdC5tZW1vPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOmQsdHlwZTplLGNvbXBhcmU6dm9pZCAwPT09dD9udWxsOnR9fSx0LnN0YXJ0VHJhbnNpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1GLnRyYW5zaXRpb247Ri50cmFuc2l0aW9uPXt9O3RyeXtlKCl9ZmluYWxseXtGLnRyYW5zaXRpb249dH19LHQudW5zdGFibGVfYWN0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoImFjdCguLi4pIGlzIG5vdCBzdXBwb3J0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgb2YgUmVhY3QuIil9LHQudXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVi5jdXJyZW50LnVzZUNhbGxiYWNrKGUsdCl9LHQudXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gVi5jdXJyZW50LnVzZUNvbnRleHQoZSl9LHQudXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sdC51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBWLmN1cnJlbnQudXNlRGVmZXJyZWRWYWx1ZShlKX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVi5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIFYuY3VycmVudC51c2VJZCgpfSx0LnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBWLmN1cnJlbnQudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LHQudXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIFYuY3VycmVudC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sdC51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVi5jdXJyZW50LnVzZUxheW91dEVmZmVjdChlLHQpfSx0LnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVi5jdXJyZW50LnVzZU1lbW8oZSx0KX0sdC51c2VSZWR1Y2VyPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVi5jdXJyZW50LnVzZVJlZHVjZXIoZSx0LG4pfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gVi5jdXJyZW50LnVzZVJlZihlKX0sdC51c2VTdGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gVi5jdXJyZW50LnVzZVN0YXRlKGUpfSx0LnVzZVN5bmNFeHRlcm5hbFN0b3JlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVi5jdXJyZW50LnVzZVN5bmNFeHRlcm5hbFN0b3JlKGUsdCxuKX0sdC51c2VUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIFYuY3VycmVudC51c2VUcmFuc2l0aW9uKCl9LHQudmVyc2lvbj0iMTguMi4wIn0sNzc5NDc0KGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPW4oMTIyNzQ5KX0sNDY2NzgxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5yKHQpLG4uZCh0LHtjcmVhdGVUYWJMYWJlbHNJbXA6KCk9PmN9KTt2YXIgcj1uKDc3OTQ3NCksYT1uKDEyOTM2NSksaT1uKDM4NzIzMSksbz1uKDM3MzU3NCksbD1uKDY5MDA5Nykscz1uKDUwMzcxNik7ZnVuY3Rpb24gdShlKXtjb25zdCB0PWUuaXRlbXNbMF0sW24sYV09ci51c2VTdGF0ZSh0KSx1PSgwLGkubWVyZ2VUaGVtZXMpKCgwLGkubWVyZ2VUaGVtZXMpKGwuZGVmYXVsdFRoZW1lLGUudGhlbWU/P3t9KSxzKSxjPSgwLHIudXNlQ2FsbGJhY2spKChlPT5uPT09ZSksW25dKSxkPSgwLHIudXNlQ2FsbGJhY2spKCh0PT57YSh0KSxlLm9uQWN0aXZhdGUodCl9KSxbYSxlLm9uQWN0aXZhdGVdKTtyZXR1cm4gci5jcmVhdGVFbGVtZW50KG8uU3F1YXJlVGFicyx7Li4uZSx0aGVtZTp1LGlzQWN0aXZlOmMsb25BY3RpdmF0ZTpkfSl9YXN5bmMgZnVuY3Rpb24gYyhlLHQsbixpLG8sbCl7Y29uc3Qgcz10Lm1hcCgoKGUsdCk9Pih7aWQ6dC50b1N0cmluZygpLGxhYmVsOmV9KSkpLGM9bCYmYXdhaXQgbCgpO3JldHVybiBhLnJlbmRlcihyLmNyZWF0ZUVsZW1lbnQodSx7aWQ6ZSxpdGVtczpzLG9uQWN0aXZhdGU6ZnVuY3Rpb24oZSl7Y29uc3QgdD1OdW1iZXIoZS5pZCkKO3ZhciBuO249dCxpLmZvckVhY2goKChlLHQpPT57ZS5jbGFzc0xpc3QudG9nZ2xlKCJpLWhpZGRlbiIsdCE9PW4pfSkpLG8odCxpKX0sdGhlbWU6YyxzaXplOiJ4c21hbGwifSksbiksZnVuY3Rpb24oKXthLnVubW91bnRDb21wb25lbnRBdE5vZGUobil9fX0sOTM1MShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMy45MiA3LjgzIDkgMTIuMjlsNS4wOC00LjQ2LTEtMS4xM0w5IDEwLjI5bC00LjA5LTMuNi0uOTkgMS4xNFoiLz48L3N2Zz4nfSw4NTY3NzAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7bmFub2lkOigpPT5yfSk7bGV0IHI9KGU9MjEpPT5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KGUpKS5yZWR1Y2UoKChlLHQpPT5lKz0odCY9NjMpPDM2P3QudG9TdHJpbmcoMzYpOnQ8NjI/KHQtMjYpLnRvU3RyaW5nKDM2KS50b1VwcGVyQ2FzZSgpOnQ+NjI/Ii0iOiJfIiksIiIpfSw4MDk0MzYoZSl7InVzZSBzdHJpY3QiCjtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJkdXIiOiIzNTBtcyIsImR1ci1mYXN0IjoiNjBtcyIsImVhc2UtaW4tbGlrZSI6ImN1YmljLWJlemllcigwLjMzLCAwLCAwLjExLCAxKSIsImVhc2Utb3V0LWxpa2UiOiJjdWJpYy1iZXppZXIoMC44OSwgMCwgMC42NywgMSkiLCJzaXplLWZlZWQtaXRlbS13aWR0aCI6IjQ4MHB4Iiwic2l6ZS1mZWVkLWhpZGVudCI6IjIwcHgiLCJzaXplLWZlZWQtdmlkZW50IjoiMjBweCIsInNpemUtYmFzZS1pbmRlbnQiOiI0cHgiLCJzaXplLWxheW91dC1zbWFsbC1ob3J6cGFkZGluZyI6IjEycHgiLCJzaXplLWxheW91dC1ob3J6cGFkZGluZyI6IjIwcHgiLCJzaXplLWRyYXdpbmdzLXRvb2xiYXItaXRlbS1oZWlnaHQiOiIzOHB4Iiwic2l6ZS1oZWFkZXItbGlua2luZGVudCI6IjE1cHgiLCJzaXplLWhlYWRlci1oZWlnaHQiOiI2NHB4Iiwic2l6ZS1uYXYtaGVhZGVyLWhlaWdodCI6IjU4cHgiLCJzaXplLXN0aWNreS1zeW1ib2wtaGVhZGVyLWhlaWdodCI6IjY0cHgiLCJzaXplLWRpYWxvZy1maXhlZC1oZWFkZXItaGVpZ2h0IjoiNzJweCIsInNpemUtc2l0ZS13aWRnZXQtcGFkZGluZyI6IjIwcHgiLCJzaXplLXNpdGUtd2lkZ2V0LXBhZGRpbmctdGFibGV0IjoiMTJweCIsInNpemUtY29sbGFwc2UtdGFicy1oZWlnaHQiOiI1NnB4Iiwic2l6ZS1uby1zY3JvbGwtY2hvaWNlci1oZWlnaHQiOiI1NnB4Iiwic2l6ZS1tYWluLWNoYXJ0LWFyZWEtaW5kZW50IjoiNHB4Iiwic2l6ZS1tYWluLWNoYXJ0LWFyZWEtcmFkaXVzIjoiMCIsInNpemUtc2VhcmNoYmFyLWhlaWdodCI6IjgwcHgiLCJzaXplLXNlYXJjaGJhci1oZWlnaHQtdGFibGV0IjoiNTRweCIsInNpemUtc2VhcmNoYmFyLWJ0bi13aWR0aC10YWJsZXQiOiI2NnB4Iiwic2l6ZS1jb250ZW50LXRvcC12aW5kZW50IjoiNDhweCIsInNpemUtbGF5b3V0LXdpZHRoIjoiMTAyMHB4Iiwic2l6ZS1sYXlvdXQtd2lkdGgtd2lkZSI6IjE1MjBweCIsInNpemUtY2hlY2tib3gtc2lkZSI6IjE4cHgiLCJzaXplLWNoZWNrYm94LWNsaWNrLWV4cGFuZCI6IjEwcHgiLCJzaXplLWNvbnRyb2wtaW5wdXQtaGVpZ2h0LS14c21hbGwiOiIxOXB4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodC0tc21hbGwiOiIyN3B4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodCI6IjM0cHgiLCJzaXplLWNvbnRyb2wtaW5wdXQtaGVpZ2h0LS1sYXJnZSI6IjQ4cHgiLCJzaXplLWNvbnRyb2wtaW5wdXQtcGFkZGluZy1ob3J6IjoiMTJweCIsInNpemUtdGFicy1ob3J6LWluZGVudCI6IjE2cHgiLCJzaXplLWF2YXRhci1ib3JkZXItcmFkaXVzIjoiM3B4Iiwic2l6ZS1jaGFydC12aWV3LXNwYWNpbmciOiIyNXB4Iiwic2l6ZS1jaGFydC12aWV3LXNwYWNpbmctdGFibGV0IjoiMjBweCIsInJhZGl1cy1lbWJlZC13aWRnZXQtd3JhcHBlciI6IjNweCIsInR5cG9ncmFwaHktcGxhdGZvcm0tcmVndWxhci0xNnB4LWxpbmUtaGVpZ2h0IjoiMjRweCIsInR5cG9ncmFwaHktcGxhdGZvcm0tcmVndWxhci0xOHB4LWxpbmUtaGVpZ2h0IjoiMjhweCIsIm1lZGlhLW5vdGVib29rIjoiYWxsIGFuZCAobWF4LXdpZHRoOiAxNTMwcHgpIiwibWVkaWEtdGFibGV0IjoiYWxsIGFuZCAobWF4LXdpZHRoOiAxMDE5cHgpIiwibWVkaWEtcGhvbmUiOiJhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSIsIm1lZGlhLXBob25lLXZlcnRpY2FsIjoiYWxsIGFuZCAobWF4LXdpZHRoOiA0NzlweCkiLCJtZWRpYS1leHRyZW1lLXRoaW4iOiJhbGwgYW5kIChtYXgtd2lkdGg6IDMyOXB4KSIsIm1lZGlhLXNob3ctZHJhd2VyIjoiYWxsIGFuZCAobWF4LXdpZHRoOiA1NjdweCkiLCJtZWRpYS1tZi1sZWdhY3ktcGhvbmUtdmVydGljYWwiOiJhbGwgYW5kIChtaW4td2lkdGg6IDMzMHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1waG9uZSI6ImFsbCBhbmQgKG1pbi13aWR0aDogNDgwcHgpIiwibWVkaWEtbWYtbGVnYWN5LW5vdGVib29rIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMDIwcHgpIiwibWVkaWEtbWYtbGVnYWN5LWRlc2t0b3AtbWVkaXVtIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxNDgwcHgpIiwibWVkaWEtbWYtbGVnYWN5LWRlc2t0b3AiOiJhbGwgYW5kIChtaW4td2lkdGg6IDE1MzFweCkiLCJtZWRpYS1tZi1waG9uZS12ZXJ0aWNhbCI6ImFsbCBhbmQgKG1pbi13aWR0aDogMzIwcHgpIiwibWVkaWEtbWYtcGhvbmUtbGFuZHNjYXBlIjoiYWxsIGFuZCAobWluLXdpZHRoOiA1NjhweCkiLCJtZWRpYS1tZi10YWJsZXQtdmVydGljYWwiOiJhbGwgYW5kIChtaW4td2lkdGg6IDc2OHB4KSIsIm1lZGlhLW1mLXRhYmxldC1sYW5kc2NhcGUiOiJhbGwgYW5kIChtaW4td2lkdGg6IDEwMjRweCkiLCJtZWRpYS1tZi1sYXB0b3AiOiJhbGwgYW5kIChtaW4td2lkdGg6IDEyODBweCkiLCJtZWRpYS1tZi1kZXNrdG9wLW1lZGl1bSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSIsIm1lZGlhLW1mLWRlc2t0b3AtbGFyZ2UiOiJhbGwgYW5kIChtaW4td2lkdGg6IDE5MjBweCkiLCJtZWRpYS1tZi1kZXNrdG9wLWV4dHJhLWxhcmdlIjoiYWxsIGFuZCAobWluLXdpZHRoOiAyNTYwcHgpIiwiY29udGFpbmVyLXRhYmxldCI6IihtYXgtd2lkdGg6IDEwMTlweCkiLCJjb250YWluZXItcGhvbmUiOiIobWF4LXdpZHRoOiA3NjdweCkiLCJjb250YWluZXItcGhvbmUtdmVydGljYWwiOiIobWF4LXdpZHRoOiA0NzlweCkiLCJjb250YWluZXItbWYtcGhvbmUtdmVydGljYWwiOiIobWluLXdpZHRoOiAzMDBweCkiLCJjb250YWluZXItbWYtcGhvbmUtbGFuZHNjYXBlIjoiKG1pbi13aWR0aDogNTQ4cHgpIiwiY29udGFpbmVyLW1mLXRhYmxldC12ZXJ0aWNhbCI6IihtaW4td2lkdGg6IDcwMnB4KSIsImNvbnRhaW5lci1tZi10YWJsZXQtbGFuZHNjYXBlIjoiKG1pbi13aWR0aDogOTU4cHgpIiwiY29udGFpbmVyLW1mLWxhcHRvcCI6IihtaW4td2lkdGg6IDEyMTRweCkiLCJjb250YWluZXItbWYtZGVza3RvcC1tZWRpdW0iOiIobWluLXdpZHRoOiAxMzc0cHgpIiwiY29udGFpbmVyLW1mLWRlc2t0b3AtbGFyZ2UiOiIobWluLXdpZHRoOiAxODU0cHgpIiwiY29udGFpbmVyLW1mLWRlc2t0b3AtZXh0cmEtbGFyZ2UiOiIobWluLXdpZHRoOiAyNDk0cHgpIiwibWVkaWEtbGFwdG9wIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDM5cHgpIiwibWVkaWEtbGFwdG9wLWFuZC1kZXNrdG9wLW1lZGl1bSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTkxOXB4KSIsIm1lZGlhLWxhbmRzY2FwZSI6ImFsbCBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDM3NXB4KSBhbmQgKG1heC1kZXZpY2UtaGVpZ2h0OiA4MTJweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSIsIm1lZGlhLXBob25lLWxhbmRzY2FwZSI6ImFsbCBhbmQgKG1heC1oZWlnaHQ6IDQ0MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIiwibWVkaWEtd2lkZ2V0YmFyLWJyZWFrcG9pbnQiOiJhbGwgYW5kIChtYXgtd2lkdGg6IDEwNjRweCkiLCJ6LWluZGV4LWNvbnRlbnQtcGFnZSI6MSwiei1pbmRleC1jaGFydC1sZWdlbmQiOjYsInotaW5kZXgtY2hhcnQtcmlnaHQtY29ybmVyLWNvbnRyb2xzIjo3LCJ6LWluZGV4LWxvYWRpbmctc2NyZWVuIjo4LCJ6LWluZGV4LWRyb3Bkb3duIjo5OSwiei1pbmRleC10b29sYmFyLXBvcHVwLW1lbnUiOjEwMCwiei1pbmRleC10b29sdGlwIjoxMDAwLCJ6LWluZGV4LXVzZXItbGluay1wb3B1cCI6OTAwLCJ6LWluZGV4LXN0aWNreS1zZWFyY2gtYmFyIjoxMDEsInotaW5kZXgtcmVzaXphYmxlLWRyYXdlciI6ODAwLCJ6LWluZGV4LWZ1bGxzY3JlZW4iOjEwMiwiZGlzYWJsZWQtc3RhdGUtb3BhY2l0eSI6MC41LCJzaXplLWdhcC1taW5pbXVtIjoiMjBweCIsInNpemUtZ2FwLW1lZGl1bSI6IjQwcHgiLCJzaXplLWdhcC1tYXhpbXVtIjoiMTAwcHgifScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/blocks/common-tooltip.443e2901fbe781f27cb4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.809Z","timestamp":1785154590809,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/blocks/common-tooltip.443e2901fbe781f27cb4.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-2db0\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:30:01\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 867ca550d81baceeb88735aeaf9505bd\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":11696,"size_decoded":5721,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3058)","md5":"fda19ced4005a318ad6f7c196047bdb8","sha1":"29be20778e7d4930c00cad0c136ef37d4ae6d859","sha256":"8479bbca58062eb92f1b267862057bc371b14e1c343c3bfa97d22400ea84e601","sha512":"8673e75b8e36c8278474b7140380e1541c5ab1a39dc60d8aef20fa4337e35ec339e06d3718243331041c2968a2b7d7bf62dca74bac409a67e393d592f0afac27","ssdeep":"192:5SSRtax7aOQ4Y4d5HUtsIcphhrQp28wvFJ7DTC5cH6m2DybRe7kCTsHE2nbCErrU:5SScbhhcMRL7DTC6a12bRePs9eE2NatI","tlshash":"8e32e8e2338b36b412e515a3687a9245ff340884780f4460b5a9d8e42c6addbf3f3d6c","first_seen":"2026-07-24T21:10:00.088454Z","last_seen":"2026-07-27T14:14:25.350526Z","times_seen":141,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMzU2NTddLHszNzcyMjYoZSx0LG4pe24uZCh0LHtvbldpZGdldDooKT0+aX0pO2NvbnN0IG89bmV3IE1hcDtmdW5jdGlvbiBpKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxuPWAke3R9JHtlfWA7cmV0dXJuIG8uaGFzKG4pfHxvLnNldChuLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbj1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG4paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IG89WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxpPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IHI7Zm9yKGxldCBlPW8ubGVuZ3RoLTE7ZT49MDtlLS0paWYocj1uZXcgUmVnRXhwKG9bZV0pLHIudGVzdChpKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksby5nZXQobik/PyExfX0sNzI3MDkoZSx0LG4pe24uZCh0LHtjcmVhdGVHcm91cDooKT0+c30pO3ZhciBvPW4oMjkxMzQxKSxpPW4oNzc5Mzg5KTtjb25zdCByPW5ldyBvLkFjdGlvbk1hbmFnZXI7ci5wcmVzc2VkS2V5cygpLHIua2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4gbmV3IGkuQWN0aW9uR3JvdXAocixlKX19LDIzNTcyNChlLHQsbil7bi5kKHQse01vZGlmaWVyczooKT0+cyxoYXNoRnJvbUV2ZW50OigpPT5jLGlzTWFjS2V5Ym9hcmQ6KCk9PnIsbW9kaWZpZXJzRnJvbUV2ZW50OigpPT5hfSk7dmFyIG8saT1uKDczODQ1OCk7IWZ1bmN0aW9uKGUpe2VbZS5LZXlDb2RlPTI1NV09IktleUNvZGUiLGVbZS5Db250cm9sPTI1Nl09IkNvbnRyb2wiLGVbZS5BbHQ9NTEyXT0iQWx0IixlW2UuU2hpZnQ9MTAyNF09IlNoaWZ0IixlW2UuTWV0YT0yMDQ4XT0iTWV0YSJ9KG98fChvPXt9KSk7Y29uc3Qgcj1pLmlzTWFjfHxpLmlzSU9TO3ZhciBzO2Z1bmN0aW9uIGEoZSl7bGV0IHQ9MDtyZXR1cm4gZS5zaGlmdEtleSYmKHQrPTEwMjQpLGUuYWx0S2V5JiYodCs9NTEyKSxlLmN0cmxLZXkmJih0Kz0yNTYpLGUubWV0YUtleSYmKHQrPTIwNDgpLHR9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gYShlKXxlLmtleUNvZGV9IWZ1bmN0aW9uKGUpe2VbZS5Ob25lPTBdPSJOb25lIixlW2UuQWx0PTUxMl09IkFsdCIsZVtlLlNoaWZ0PTEwMjRdPSJTaGlmdCIsZVtlLk1vZD1yPzIwNDg6MjU2XT0iTW9kIixlW2UuQ29udHJvbD0yNTZdPSJDb250cm9sIixlW2UuTWV0YT0yMDQ4XT0iTWV0YSJ9KHN8fChzPXt9KSk7Y29uc3QgdT17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4OnI/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0sZD17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCBlPTE7ZTw9MTY7ZSsrKXVbZSsxMTFdPWBGJHtlfWAsZFtlKzExMV09YEYke2V9YH0sNzIxMzY5KGUsdCxuKXtuLmQodCx7aXNOYXRpdmVVSUludGVyYWN0aW9uOigpPT5yfSk7dmFyIG89bigyMzU3MjQpO2Z1bmN0aW9uIGkoZSl7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7cmV0dXJuInRleHQiPT09dHx8ImVtYWlsIj09PXR8fCJudW1iZXIiPT09dHx8InBhc3N3b3JkIj09PXR8fCJzZWFyY2giPT09dHx8InRlbCI9PT10fHwidXJsIj09PXR9cmV0dXJuIlRFWFRBUkVBIj09PWUudGFnTmFtZXx8ZS5pc0NvbnRlbnRFZGl0YWJsZX1mdW5jdGlvbiByKGUsdCl7aWYoIXQpcmV0dXJuITE7Y29uc3Qgbj0yNTUmZTtpZigyNz09PW58fG4+Pj40PT03KXJldHVybiExO3N3aXRjaChlXm4pe2Nhc2Ugby5Nb2RpZmllcnMuQWx0OnJldHVybigzOD09PW58fDQwPT09bikmJiJTRUxFQ1QiPT09dC50YWdOYW1lfHxpKHQpO2Nhc2Ugby5Nb2RpZmllcnMuQWx0K28uTW9kaWZpZXJzLlNoaWZ0OnJldHVybiBpKHQpCjtjYXNlIG8uTW9kaWZpZXJzLk1vZDppZig2Nz09PW58fCFvLmlzTWFjS2V5Ym9hcmQmJjQ1PT09bil7Y29uc3QgZT10Lm93bmVyRG9jdW1lbnQmJnQub3duZXJEb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtpZihlJiYhZS5pc0NvbGxhcHNlZClyZXR1cm4hMH1yZXR1cm4gaSh0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gbj49MzMmJm48PTQwJiZpKHQpO2Nhc2Ugby5Nb2RpZmllcnMuU2hpZnQ6Y2FzZSAwOnJldHVybiA5PT09bj8hKCF0Lm93bmVyRG9jdW1lbnR8fHQ9PT10Lm93bmVyRG9jdW1lbnQuYm9keXx8dD09PXQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOighZnVuY3Rpb24oZSl7aWYoIkJVVFRPTiI9PT1lLnRhZ05hbWUpcmV0dXJuITA7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7aWYoInN1Ym1pdCI9PT10fHwiYnV0dG9uIj09PXR8fCJyZXNldCI9PT10fHwiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpcmV0dXJuITB9cmV0dXJuITF9KHQpfHwxMz09PW58fDMyPT09bnx8OT09PW4pJiYoImZvcm0iaW4gdHx8dC5pc0NvbnRlbnRFZGl0YWJsZSl9cmV0dXJuITF9fSw1MTg3NShlLHQsbil7ZnVuY3Rpb24gbyhlKXtlLnByZXZlbnREZWZhdWx0KCl9bi5kKHQse3ByZXZlbnREZWZhdWx0OigpPT5vfSl9LDY0MDc0NChlLHQsbil7ZnVuY3Rpb24gbyhlLHQsbil7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGUsdCksbil9bi5kKHQse2NsYW1wOigpPT5vfSl9LDIzMjM2NChlLHQsbil7bi5kKHQse1dhdGNoZWRWYWx1ZTooKT0+cn0pO2NvbnN0IG89KDAsbigyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiBpKGUpe28ubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3Mgcntjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG49dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihuLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgbz1uLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihuLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmbyYmbi5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO24uX3ZhbHVlPWU7Y29uc3Qgcj1uLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgcz0wO2ZvcihsZXQgdD0wO3Q8ci5sZW5ndGg7dCsrKXtyW3RdLm9uY2UmJihuLl9saXN0ZW5lcnMuc3BsaWNlKHQtcywxKSxzKyspO3RyeXtyW3RdLmNiKGUpfWNhdGNoKGUpe2koZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBuPSEhdCYmISF0Lm9uY2Usbz0hIXQmJiEhdC5jYWxsV2l0aExhc3Qscj10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKG8mJnIuaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShyLl92YWx1ZSl9Y2F0Y2goZSl7aShlKX1pZihuKXJldHVybn1yLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBuPXQuX2xpc3RlbmVycztmb3IobGV0IG89bi5sZW5ndGg7by0tOyluW29dLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG5bb10uY2IhPT1lJiZudWxsIT09ZXx8bi5zcGxpY2UobywxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxuKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbigpO2NvbnN0IG89aT0+e3QoaSkmJihlLnVuc3Vic2NyaWJlKG8pLG4oKSl9O2Uuc3Vic2NyaWJlKG8se2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe2koZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgcyh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBzIGV4dGVuZHMgcntjb25zdHJ1Y3RvcihlLHQsbil7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW59ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe2koZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7CnJldHVybiB0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2V8fCh0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2U9ey4uLnN1cGVyLnJlYWRvbmx5KCksZGVzdHJveTooKT0+dGhpcy5kZXN0cm95KCkscmVhZG9ubHkoKXtyZXR1cm4gdGhpc319KSx0aGlzLl9yZWFkb25seVNwYXduSW5zdGFuY2V9cmVsZWFzZSgpe3RoaXMuX3dlYWtSZWZlcmVuY2V8fHN1cGVyLnJlbGVhc2UoKX19fSwzNDUxNTEoZSx0LG4pe24uZCh0LHtob3RLZXlEZXNlcmlhbGl6ZTooKT0+aX0pO3ZhciBvPW4oNjQxNTkzKTtmdW5jdGlvbiBpKGUpe3JldHVybiBKU09OLnBhcnNlKCgwLG8uZGVjb2RlSFRNTEVudGl0aWVzKShlKSl9fSwzNDQ3ODUoZSx0LG4pe24ucih0KSxuLmQodCx7aGlkZTooKT0+RSxzaG93OigpPT5wLHNob3dPbkVsZW1lbnQ6KCk9Pm0sdGVtcEZvcmNlSGlkZTooKT0+eSx0b29sdGlwQ2xpY2tIYW5kbGVyOigpPT52LHVwZGF0ZVRvb2x0aXBUZXh0OigpPT53fSk7dmFyIG89bigzNjMyNjkpLGk9bigxMzg2MzgpLHI9big3MjcwOSkscz1uKDY1ODk5NSksYT1uKDE2Nzg5NiksYz1uKDQ5MDM3OCk7bGV0IHU9ITEsZD1udWxsLGw9bnVsbDtvLm1vYmlsZXRvdWNofHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixmLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYoISh0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2xvc2VzdCgnW2RhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzPSJ0cnVlIl0nKSYmdC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpKSlyZXR1cm47ZihlLCEwKX0pLHtjYXB0dXJlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLChmdW5jdGlvbihlKXtlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZmKGUsITApfSkse2NhcHR1cmU6ITB9KSk7Y29uc3QgaD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKCk9PntpZihkJiZkLm9wdGlvbnMudGFyZ2V0KXtsZXQgZTtlPSJpc0Nvbm5lY3RlZCJpbiBkLm9wdGlvbnMudGFyZ2V0P2Qub3B0aW9ucy50YXJnZXQuaXNDb25uZWN0ZWQ6ZG9jdW1lbnQuYm9keS5jb250YWlucyhkLm9wdGlvbnMudGFyZ2V0KSxlfHxFKCl9fSkpLG09KGUsdD17fSk9Pntjb25zdHtjb250ZW50Om4sLi4ub309TSh0KSxpPWMuZ2V0RGF0YUZyb21UYXJnZXQoZSkscj1PYmplY3QuYXNzaWduKGksbyk7cmV0dXJuIm5vbmUiIT09bi50eXBlJiYoci5jb250ZW50PW4pLCEoIm5vbmUiPT09ci5jb250ZW50LnR5cGUmJiFyLmhvdGtleSkmJihyLnRhcmdldD1lLHAociksITApfSxwPWU9Pntjb25zdCB0PU0oZSksbj1jLmdldFRvb2x0aXAodCk7aWYoZD17b3B0aW9uczp0LGVsZW1lbnQ6bn0sKDAsYS5zZXRUb29sdGlwKShuKSwoMCxzLmNsZWFyU2NoZWR1bGUpKCksIXUpcmV0dXJuIGMuaGlkZVRvb2x0aXAobiksdm9pZCgwLHMuc2NoZWR1bGVSZW5kZXIpKCgoKT0+TChuKSksZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLnRvb2x0aXBEZWxheXx8aXNOYU4oZS50b29sdGlwRGVsYXkpPzUwMDplLnRvb2x0aXBEZWxheX0odCkpO2NvbnN0e3Rvb2x0aXBEZWJvdW5jZTpvfT1lOyJudW1iZXIiIT10eXBlb2Ygb3x8aXNOYU4obyk/TChuKTooMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9PkwobikpLG8pfSx3PWU9PmMudXBkYXRlVG9vbHRpcFRleHRGcm9tVGFyZ2V0KGUpO2Z1bmN0aW9uIGYoZSx0KXtpZigic291cmNlQ2FwYWJpbGl0aWVzImluIGUmJmUuc291cmNlQ2FwYWJpbGl0aWVzPy5maXJlc1RvdWNoRXZlbnRzKXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKGUsdCxuKXtjb25zdCBvPVtdO2Zvcig7ZSYmZSE9PXQ7KWUuY2xhc3NMaXN0JiZlLmNsYXNzTGlzdC5jb250YWlucyhuKSYmby5wdXNoKGUpLGU9ZS5wYXJlbnRFbGVtZW50fHxfKGUucGFyZW50Tm9kZSk7cmV0dXJuIG99KGUudGFyZ2V0LGUuY3VycmVudFRhcmdldCwiYXBwbHktY29tbW9uLXRvb2x0aXAiKTtmb3IoY29uc3QgbyBvZiBuKXtpZihlIGluc3RhbmNlb2YgTW91c2VFdmVudClpZigiYnV0dG9ucyJpbiBlKXtpZigxJmUuYnV0dG9ucyljb250aW51ZX1lbHNlIGlmKDE9PT1lLndoaWNoKWNvbnRpbnVlO2NvbnN0IG49KCk9Pm0obyk7aWYobigpKXtjb25zdCBlPWU9PmkobnVsbCwhMCksaT0ocixzPSExKT0+e28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY29tbW9uLXRvb2x0aXAtdXBkYXRlIixuKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGkpLG8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixpKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUse2NhcHR1cmU6ITB9KSx0JiYoby5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIixpKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLGkpKSxsJiYobC5kZXN0cm95KCksbD1udWxsKSxFKHMpfTtvLmFkZEV2ZW50TGlzdGVuZXIoImNvbW1vbi10b29sdGlwLXVwZGF0ZSIsbiksby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixpKSxvLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsaSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLHtjYXB0dXJlOiEwfSksdCYmKG8uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsaSksby5hZGRFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixpKSksbnVsbD09PWwmJihsPSgwLHIuY3JlYXRlR3JvdXApKHtkZXNjOiJUb29sdGlwIn0pLGwuYWRkKHtkZXNjOiJIaWRlIixob3RrZXk6MjcsaGFuZGxlcjppfSkpO2JyZWFrfX19ZnVuY3Rpb24gdihlKXtvLm1vYmlsZXRvdWNoJiYobShlLmN1cnJlbnRUYXJnZXQse3Rvb2x0aXBEZWxheTowfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixiKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixiKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLGIpLAp3aW5kb3cuc2NyZWVuLm9yaWVudGF0aW9uPy5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGIpKX1mdW5jdGlvbiBiKCl7ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixiKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixiKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLGIpLHdpbmRvdy5zY3JlZW4ub3JpZW50YXRpb24/LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIsYiksRSgpfWZ1bmN0aW9uIGcoKXsoMCxhLmVtcHR5KSgpLHU9ITEsZD1udWxsfWNvbnN0IHk9KCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsaS5lbnN1cmVOb3ROdWxsKShoKS5kaXNjb25uZWN0KCksIWR8fCF1KXJldHVybjtjb25zdHtlbGVtZW50OmV9PWQ7Yy5oaWRlVG9vbHRpcChlKSxnKCl9LEU9KGUsdCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsaS5lbnN1cmVOb3ROdWxsKShoKS5kaXNjb25uZWN0KCksIWQpcmV0dXJuO2lmKCFlJiYhdSlyZXR1cm47Y29uc3R7ZWxlbWVudDpuLG9wdGlvbnM6b309ZCxyPSgpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixyKSxjLmhpZGVUb29sdGlwKG4pLGU/ZygpOigwLHMuc2NoZWR1bGVSZW1vdmUpKCgoKT0+e2coKX0pLDI1MCksdD8uKCl9O28udG9vbHRpcEhpZGVEZWxheT8oMCxzLnNjaGVkdWxlSGlkZSkoKCgpPT57bi5xdWVyeVNlbGVjdG9yKCI6aG92ZXIiKT9uLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpOnIoKX0pLG8udG9vbHRpcEhpZGVEZWxheSk6cigpfTtmdW5jdGlvbiBMKGUpe2NvbnN0e29wdGlvbnM6dH09KDAsaS5lbnN1cmVOb3ROdWxsKShkKTtpZihjLnNldFN0eWxlKGUsdCksYy5zaG93VG9vbHRpcChlKSwoMCxpLmVuc3VyZU5vdE51bGwpKGgpLm9ic2VydmUoZG9jdW1lbnQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSksdT0hMCx0LmZvcmNlSGlkZU9uTW92ZSl7Y29uc3QgZT0oKT0+e2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKSxFKCl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKX19ZnVuY3Rpb24gXyhlKXtyZXR1cm4gZSYmKGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERT9lOm51bGwpfWZ1bmN0aW9uIE0oZSl7aWYoZnVuY3Rpb24oZSl7cmV0dXJuImNvbnRlbnQiaW4gZX0oZSkpcmV0dXJuIGU7Y29uc3R7aW5uZXI6dCxodG1sOm4sdGV4dDpvLC4uLml9PWU7bGV0IHI9e3R5cGU6Im5vbmUifTtyZXR1cm4gdCYmKHI9e3R5cGU6ImVsZW1lbnQiLGRhdGE6dH0pLG8mJihyPXt0eXBlOm4/Imh0bWwiOiJ0ZXh0IixkYXRhOm99KSx7Y29udGVudDpyLC4uLml9fX0sMzE4OTc0KGUsdCxuKXtuLmQodCx7Q2hlY2tNb2JpbGU6KCk9PnUsaXNEZXNrdG9wQXBwOigpPT5hLGlzTWFjOigpPT5zLGlzU3ltcGhvbnlFbWJlZDooKT0+YyxzdXBwb3J0VG91Y2g6KCk9PmR9KTt2YXIgbz1uKDczODQ1OCksaT1uKDM3NzIyNik7Y29uc3Qgcj13aW5kb3cuVHJhZGluZ1ZpZXc9d2luZG93LlRyYWRpbmdWaWV3fHx7fTtmdW5jdGlvbiBzKCl7cmV0dXJuIG8uaXNNYWN9ZnVuY3Rpb24gYSgpe3JldHVybi9UVkRlc2t0b3AvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpfWZ1bmN0aW9uIGMoKXtyZXR1cm4gci5pc1N5bXBob255fHwhMX1jb25zdCB1PXtBbmRyb2lkOigpPT5vLmlzQW5kcm9pZCxCbGFja0JlcnJ5OigpPT5vLmlzQmxhY2tCZXJyeSxpT1M6KCk9Pm8uaXNJT1MsT3BlcmE6KCk9Pm8uaXNPcGVyYU1pbmksaXNJUGFkOigpPT5vLmlzSVBhZCxhbnk6KCk9Pm8uaXNBbnlNb2JpbGV9O2Z1bmN0aW9uIGQoKXtyZXR1cm4gby5tb2JpbGV0b3VjaHx8by50b3VjaHx8by5pc0FueU1vYmlsZX1yLmlzTW9iaWxlPXUsci5vbldpZGdldD1pLm9uV2lkZ2V0O28uaXNDaHJvbWUsby5pc0ZGLG8uaXNFZGdlLG8uaXNTYWZhcml9LDk2OTE2OChlLHQsbil7bi5kKHQse2lzUnRsOigpPT5vLmlzUnRsfSk7big2MTAyNjgpO3ZhciBvPW4oMTE1MjkzKX0sNDQzNTU3KGUsdCxuKXtuLmQodCx7cGFyc2VIdG1sRWxlbWVudDooKT0+cn0pO2NvbnN0IG89bmV3IFdlYWtNYXA7dmFyIGk7ZnVuY3Rpb24gcihlLHQpe2NvbnN0IG49ZnVuY3Rpb24oZSx0KXtsZXQgbixpO3JldHVybiBuPW51bGw9PXQ/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Ojk9PT10Lm5vZGVUeXBlP3QuZG9jdW1lbnRFbGVtZW50OnQsbyYmKGk9by5nZXQobikpLGl8fChpPW4ub3duZXJEb2N1bWVudC5jcmVhdGVSYW5nZSgpLGkuc2VsZWN0Tm9kZUNvbnRlbnRzKG4pLG8mJm8uc2V0KG4saSkpLGkuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGUpfShlLHQpLGk9bi5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gbnVsbCE9PWkmJm4ucmVtb3ZlQ2hpbGQoaSksaX0hZnVuY3Rpb24oZSl7ZVtlLkVsZW1lbnQ9MV09IkVsZW1lbnQiLGVbZS5Eb2N1bWVudD05XT0iRG9jdW1lbnQifShpfHwoaT17fSkpfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"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://persimmontrades.com/","date":"2026-07-27T12:16:29.313Z","timestamp":1785154589313,"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://persimmontrades.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 12:16:29 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":2818,"size_decoded":1537,"mime_type":"text/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1653)","md5":"d1dd83167c5f56af1fcd416113399dd2","sha1":"2c22e5b424e41d0fc18cdb6fffd64ae6efd00545","sha256":"a19e09a0ae50dd98895c725fc3589bb34a69375c4205e508233326868f50225e","sha512":"f42e3fcb53f53e49d4a50b563e673d08923e4e6dd95ae5fbd639dd5ea483012857454fe66d6b8e63c9282fa5126b95c19a29010638cb676d3881314c36934ba4","ssdeep":"","tlshash":"e55112965872e0dac8436c29dfef913961444037ac16ece57e9cd903ffb060ea64d9d4","first_seen":"2026-07-27T12:06:12.664755Z","last_seen":"2026-07-27T13:00:32.837525Z","times_seen":10,"resource_available":true,"data":"CiAgICAoZnVuY3Rpb24oKSB7CiAgICAgIGlmKCF3aW5kb3dbJ19EdW1wRXhjZXB0aW9uJ10pIHsKICAgICAgICBjb25zdCBfRHVtcEV4Y2VwdGlvbiA9IHdpbmRvd1snX0R1bXBFeGNlcHRpb24nXSB8fCBmdW5jdGlvbihlKSB7CiAgICAgICAgICB0aHJvdyBlOwogICAgICAgIH07CiAgICAgICAgd2luZG93WydfRHVtcEV4Y2VwdGlvbiddID0gX0R1bXBFeGNlcHRpb247CiAgICAgIH0KCiAgICAgIHZhciBfZ2V0Q2FsbGJhY2tGdW5jdGlvbiA9IGZ1bmN0aW9uKG5hbWUpIHsKICAgICAgICB2YXIgc2VnbWVudHMgPSBuYW1lLnNwbGl0KCcuJyk7CiAgICAgICAgdmFyIHcgPSB3aW5kb3c7CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzZWdtZW50cy5sZW5ndGg7ICsraSkgewogICAgICAgICAgaWYgKCEodyA9IHdbc2VnbWVudHNbaV1dKSkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHc7CiAgICAgIH07CgogICAgICB2YXIgX2xvYWRDc3MgPSBmdW5jdGlvbih1cmwpIHsKICAgICAgICB2YXIgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKTsKICAgICAgICBsaW5rLnR5cGUgPSAndGV4dC9jc3MnOwogICAgICAgIGxpbmsucmVsID0gJ3N0eWxlc2hlZXQnOwogICAgICAgIGxpbmsuY2hhcnNldCA9ICdVVEYtOCc7CiAgICAgICAgbGluay5ocmVmID0gdXJsOwogICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobGluayk7CiAgICAgIH07CgogICAgICB2YXIgX2xvYWRKcyA9IGZ1bmN0aW9uKHVybCkgewogICAgICAgIHZhciBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICAgICAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOwogICAgICAgIHNjcmlwdC5jaGFyc2V0ID0gJ1VURi04JzsKICAgICAgICBzY3JpcHQuc3JjID0gdXJsOwogICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0KTsKICAgICAgfTsKCiAgICAgIC8vIENyZWF0ZSBhIGZ1bmN0aW9uIHNvIHZhcmlhYmxlcyBkbyBub3QgbGVhayBpbnRvIHRoZSBnbG9iYWwgc2NvcGUKICAgICAgdmFyIGluaXRQcm90b0Zsb3cgPSBmdW5jdGlvbigpIHsKICB2YXIgY29uZmlnUHJvdG8gPSBKU09OLnBhcnNlKCdceDViXHgyMm5vXHgyMixceDIyZ29vZ2xlVHJhbnNsYXRlRWxlbWVudEluaXRceDIyLFx4NWIwLDEsMCxceDViXHgyMmVzX2VuXHgyMixceDIyZW5femhceDIyLFx4MjJlbl9kZVx4MjIsXHgyMmVuX2phXHgyMixceDIyZW5fZXNceDIyLFx4MjJkZV9lblx4MjJceDVkLG51bGwsXHg1YjAsMywxMDAsXHg1Ylx4MjJlbl9oaVx4MjIsXHgyMmhpX2VuXHgyMixceDIyZW5fZXNceDIyLFx4MjJlc19lblx4MjIsXHgyMmVuX2RlXHgyMixceDIyZGVfZW5ceDIyLFx4MjJlbl96aFx4MjIsXHgyMmVuX2phXHgyMixceDIyZW5fYXJceDIyLFx4MjJlbl9pZFx4MjJceDVkXHg1ZCwwLDEsMFx4NWQsXHgyMlx4MjIsXHgyMlx4MjIsXHgyMnByb2RceDIyLFx4MjJJTkZPXHgyMixudWxsLFx4MjI0OTU4NzYuMzMyNzg5MjRceDIyLFx4MjJ0cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb21ceDIyLFx4MjJ0cmFuc2xhdGUtcGEuZ29vZ2xlYXBpcy5jb21ceDIyLG51bGwsXHgyMnRyYW5zbGF0ZS5nb29nbGVhcGlzLmNvbVx4MjIsXHgyMmh0dHBzOlwvXC93d3cuZ3N0YXRpYy5jb21cL19cL3RyYW5zbGF0ZV9odHRwXC9fXC9zc1wva1xcdTAwM2R0cmFuc2xhdGVfaHR0cC50ci5CN0RpaDlKeWpudy5MLkY0Lk9cL2FtXFx1MDAzZEJJQUFCd1wvZFxcdTAwM2QwXC9yc1xcdTAwM2RBTjhTUGZwQzA0dnJyelFYZ3NfVENNNUV0cnV3ZlB6TnRRXC9tXFx1MDAzZGVsX21haW5fY3NzXHgyMixceDIydHJhbnNsYXRlLXBhLmdvb2dsZWFwaXMuY29tXC92MVwvc3VwcG9ydGVkTGFuZ3VhZ2VzXHgyMixceDIydHJhbnNsYXRlLmdvb2dsZS5jb21ceDIyLDAsbnVsbCxudWxsLG51bGwsXHgyMmh0dHBzOlwvXC90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb21cL19cL3RyYW5zbGF0ZV9odHRwXC9fXC9qc1wva1xcdTAwM2R0cmFuc2xhdGVfaHR0cC50ci5uby5zY3JuWTZRMl95dy5PXC9hbVxcdTAwM2RCSUFBQndcL2RcXHUwMDNkMVwvZWRcXHUwMDNkMVwvcnNcXHUwMDNkQU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1d1wvbVxcdTAwM2RlbF9tYWluXHgyMixceDIyVEVfMjAyNjA3MjJceDIyXHg1ZCcpOyB3aW5kb3dbJ2dvb2dsZSddID0gd2luZG93Wydnb29nbGUnXSB8fCB7fTsgd2luZG93Wydnb29nbGUnXVsndHJhbnNsYXRlJ10gPSB3aW5kb3dbJ2dvb2dsZSddWyd0cmFuc2xhdGUnXSB8fCB7fTsgd2luZG93Wydnb29nbGUnXVsndHJhbnNsYXRlJ11bJ19wcm90b0NvbmZpZyddID0gY29uZmlnUHJvdG87X2xvYWRDc3MoJ2h0dHBzOlwvXC93d3cuZ3N0YXRpYy5jb21cL19cL3RyYW5zbGF0ZV9odHRwXC9fXC9zc1wva1x4M2R0cmFuc2xhdGVfaHR0cC50ci5CN0RpaDlKeWpudy5MLkY0Lk9cL2FtXHgzZEJJQUFCd1wvZFx4M2QwXC9yc1x4M2RBTjhTUGZwQzA0dnJyelFYZ3NfVENNNUV0cnV3ZlB6TnRRXC9tXHgzZGVsX21haW5fY3NzJyk7IF9sb2FkSnMoJ2h0dHBzOlwvXC90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb21cL19cL3RyYW5zbGF0ZV9odHRwXC9fXC9qc1wva1x4M2R0cmFuc2xhdGVfaHR0cC50ci5uby5zY3JuWTZRMl95dy5PXC9hbVx4M2RCSUFBQndcL2RceDNkMVwvZWRceDNkMVwvcnNceDNkQU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1d1wvbVx4M2RlbF9tYWluJyk7CiAgICAgIH07CgogICAgICBpbml0UHJvdG9GbG93KCk7CiAgICB9KSgpOwogIA=="}},"time_used":107,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":42,"receive":0,"ssl":47},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/39070.55cbc7a1da963b3829b3.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.161Z","timestamp":1785154590161,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/39070.55cbc7a1da963b3829b3.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 20\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b72-14\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:22 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fbe1a8542b1e4a2c9a89eabe356624e0\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":20,"size_decoded":804,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"8c361f5f3e81eca6f243f991934acfb8","sha1":"cca2cc0145571af645e93a0eea492681a68d4db1","sha256":"b7db039e8731af6abd4fe1cad1c082f9a54cac9bfae4de52cac6cbb64431ff06","sha512":"94498523c2221fd084df6e33d95e80c4f0dcc1054ff64a84c7c5309491e66301e34045b6df7d5247854e2893bf8e3fd6ca8b22f2e40daebcad83853dec330ad8","ssdeep":"","tlshash":"757000020028200280800800222000000003023a2a880000a80080200802aa08a0a00a","first_seen":"2026-01-06T10:31:31.715579Z","last_seen":"2026-07-27T14:18:36.387628Z","times_seen":7381,"resource_available":false,"data":"OmZvY3Vze291dGxpbmU6bm9uZX0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.56093.a47a90809660f801c2ac.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.259Z","timestamp":1785154590259,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.56093.a47a90809660f801c2ac.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a7-1352\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:07 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:20:01\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: aa6959c19f81655a89c26c20e172bd05\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4946,"size_decoded":2622,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3067)","md5":"51c25a0bfe62c19a67cf2b95b6bca15c","sha1":"d31fa4f6ee0c62987e69688ba41c6e49c115c722","sha256":"e804fa7b20565e31cf03df061c695a3e4816b6642e311b9ab69fb1c74cb9b5f8","sha512":"67701c95fe95d12ce594204da841a88c0d5a52b842367ad2f62ed76e360eaa8a13731aade15f0dfc0419ea0bdac268402e28367c7a755e46bd8fba65ab59a2e9","ssdeep":"96:xvhtKURB2yTdjoA5OoH80e1NzU3rJkbTJRr:JhNRzTdnH80e1q3rgTJh","tlshash":"7ca14227d010c1ea2fb6da24b795dcd0b5f4b1e100f1e8ca7b466f66c21bd6528352f8","first_seen":"2026-07-23T13:38:20.523865Z","last_seen":"2026-07-27T14:22:59.531035Z","times_seen":253,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwyNDkyOSwzNzg2NSw0MDI0MCw0NzAzMCw1NjA5Myw1NzE4NCw4NzIzOCw5NDM4OCw5NDcwMl0sezYxNzM0MChlKXtlLmV4cG9ydHM9WyJDb2x1bW5zIl19LDExODQ5MShlKXtlLmV4cG9ydHM9WyJDYW5kbGVzIl19LDc5NjA5MyhlKXtlLmV4cG9ydHM9WyJBcmVhIl19LDk0MTYyOShlKXtlLmV4cG9ydHM9WyJCYXJzIl19LDUyNTMzMShlKXtlLmV4cG9ydHM9WyJCYXNlbGluZSJdfSw0MTM0MyhlKXtlLmV4cG9ydHM9WyJLYWdpIl19LDk2Nzg0MShlKXtlLmV4cG9ydHM9WyJITEMgYXJlYSJdfSw2ODMwMChlKXtlLmV4cG9ydHM9WyJITEMgYmFycyJdfSwzMzE4MjQoZSl7ZS5leHBvcnRzPVsiSG9sbG93IGNhbmRsZXMiXX0sODM1NTQzKGUpe2UuZXhwb3J0cz1bIkhlaWtpbiBBc2hpIl19LDk1MjgxMChlKXtlLmV4cG9ydHM9WyJIaWdoLWxvdyJdfSwyMTA0OTkoZSl7ZS5leHBvcnRzPVsiTGluZSJdfSwxODYxNDcoZSl7ZS5leHBvcnRzPVsiTGluZSB3aXRoIG1hcmtlcnMiXX0sMzA3NDM2KGUpe2UuZXhwb3J0cz1bIkxpbmUgYnJlYWsiXX0sNjg3OTUxKGUpe2UuZXhwb3J0cz1bIlNlc3Npb24gdm9sdW1lIHByb2ZpbGUiXX0sOTE2MTQ4KGUpe2UuZXhwb3J0cz1bIlN0ZXAgbGluZSJdfSw4NjcwMjEoZSl7ZS5leHBvcnRzPVsiUG9pbnQgJiBmaWd1cmUiXX0sMTg4MzUyKGUpe2UuZXhwb3J0cz1bIlJhbmdlIl19LDQ2MTczOChlKXtlLmV4cG9ydHM9WyJSZW5rbyJdfSwxMTc5ODQoZSl7ZS5leHBvcnRzPVsiVGltZSBwcmljZSBvcHBvcnR1bml0eSJdfSw4OTIzNzUoZSl7ZS5leHBvcnRzPVsiVm9sdW1lIGNhbmRsZXMiXX0sMjAxMDczKGUpe2UuZXhwb3J0cz1bIlZvbHVtZSBmb290cHJpbnQiXX0sNTU4NDEyKGUpe2UuZXhwb3J0cz1bIiUgb2YgR0RQIl19LDQ2ODQ2MChlKXtlLmV4cG9ydHM9WyIlIG9mIHBhciJdfSw0NDUwNShlKXtlLmV4cG9ydHM9WyJEaXNjLiB5aWVsZCwgJSJdfSw4NTk5OTQoZSl7ZS5leHBvcnRzPVsiQyJdfSw4OTIzNjMoZSl7ZS5leHBvcnRzPVsiRCJdfSwzOTQ1MDEoZSl7ZS5leHBvcnRzPVsiRCJdfSw1NzA5MzkoZSl7ZS5leHBvcnRzPVsiRSJdfSwzOTQ5MjEoZSl7ZS5leHBvcnRzPVsiRiJdfSw4NjY0NChlKXtlLmV4cG9ydHM9WyJSIl19LDc1NjQ1NyhlKXtlLmV4cG9ydHM9WyJSIl19LDI1NzMyNihlKXtlLmV4cG9ydHM9WyJTIl19LDIyOTk5NChlKXtlLmV4cG9ydHM9WyJDIl19LDk1NDYxNChlKXtlLmV4cG9ydHM9WyJIIl19LDgzOTQ2MyhlKXtlLmV4cG9ydHM9WyJMIl19LDk2MDUxMyhlKXtlLmV4cG9ydHM9WyJPIl19LDU2NTMyMShlKXtlLmV4cG9ydHM9WyJWb2wiXX0sNTUyMTUoZSl7ZS5leHBvcnRzPVsiRGVsaXN0ZWQiXX0sNjg1MTA0KGUpe2UuZXhwb3J0cz1bIkhvbGlkYXkiXX0sNjM4NDA1KGUpe2UuZXhwb3J0cz1bIkludmFsaWQgc3ltYm9sIl19LDg5NzU5MShlKXtlLmV4cG9ydHM9WyJPdmVybmlnaHQgdmlhIEJPQVRTIl19LDI3NDQxNShlKXtlLmV4cG9ydHM9WyJMb2FkaW5nIl19LDcwMjc4OChlKXtlLmV4cG9ydHM9WyJNYXJrZXQgb3BlbiJdfSw5MTQ1NzIoZSl7ZS5leHBvcnRzPVsiTWFya2V0IGNsb3NlZCJdfSw4Njc0NTUoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQiXX0sOTE4ODQyKGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQiXX0sNTQ1MjI0KGUpe2UuZXhwb3J0cz1bIk92ZXJuaWdodCB2aWEgQk9BVFMiXX0sODI5MjczKGUpe2UuZXhwb3J0cz1bIkludHJhZGF5IHNwcmVhZCBkYXRhIGlzIG5vdCBhdmFpbGFibGUiXX0sMjk5MTUzKGUpe2UuZXhwb3J0cz1bIk5vIGRhdGEiXX0sMjg1ODkzKGUpe2UuZXhwb3J0cz1bIk5vIGRhdGEgZm9yIHRoaXMgcmVzb2x1dGlvbiJdfSw3MzQ3NTAoZSl7ZS5leHBvcnRzPVsiTWF5Il19LDM4NDU5NyhlKXtlLmV4cG9ydHM9WyJDRkQiXX0sNjU1MjM1KGUpe2UuZXhwb3J0cz1bIkNyeXB0byJdfSwzNTAxNDYoZSl7ZS5leHBvcnRzPVsiQWxsIl19LDc2NTQ0MChlKXtlLmV4cG9ydHM9WyJCb25kcyJdfSw1NDgzMjIoZSl7ZS5leHBvcnRzPVsiRWNvbm9teSJdfSw5Nzk5NyhlKXtlLmV4cG9ydHM9WyJGb3JleCJdfSw1MDUwNzkoZSl7ZS5leHBvcnRzPVsiRnV0dXJlcyJdfSw1NjQ5MTcoZSl7ZS5leHBvcnRzPVsiRnVuZHMiXX0sOTI3NDExKGUpe2UuZXhwb3J0cz1bIkluZGljZXMiXX0sNzk2MDAoZSl7ZS5leHBvcnRzPVsiT3B0aW9ucyJdfSw1NTU1MTAoZSl7ZS5leHBvcnRzPVsiU3RvY2tzIl19LDU3MDYyKGUpe2UuZXhwb3J0cz1bIk4vQSJdfSw4MTkwNzgoZSl7ZS5leHBvcnRzPVsiM00iXX0sMjcyMDk4KGUpe2UuZXhwb3J0cz1bIjNZIl19LDExMTk3NihlKXtlLmV4cG9ydHM9WyIxIHllYXIiXX0sOTk1MDY2KGUpe2UuZXhwb3J0cz1bIjEwWSJdfSw4MzI3MzMoZSl7ZS5leHBvcnRzPVsiMU0iXX0sOTM4MTAwKGUpe2UuZXhwb3J0cz1bIjFEIl19LDQ5MjEzNShlKXtlLmV4cG9ydHM9WyIxVyJdfSw3NzAzMDMoZSl7ZS5leHBvcnRzPVsiMVkiXX0sOTM0Nzc3KGUpe2UuZXhwb3J0cz1bIjJZIl19LDMyODAzMChlKXtlLmV4cG9ydHM9WyIzIG1vbnRocyJdfSw4Mjg1NShlKXtlLmV4cG9ydHM9WyI1RCJdfSw0NDY1NjAoZSl7ZS5leHBvcnRzPVsiNVkiXX0sNjgwNzYoZSl7ZS5leHBvcnRzPVsiNk0iXX0sMTk0MTk0KGUpe2UuZXhwb3J0cz1bIkNvbm5lY3RpbmciXX0sMjMzNjkwKGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw1MjY3ODUoZSl7ZS5leHBvcnRzPVsiQXByIl19LDkzNzYyKGUpe2UuZXhwb3J0cz1bIkF1ZyJdfSw4Njg4MTAoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IG1vbnRoLiJdfSw5MTM5NTUoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IHllYXIuIl19LDU0MzgzMyhlKXtlLmV4cG9ydHM9WyJEYXRhIGlzIG5vdCBhdmFpbGFibGUgZm9yIGJhc2ljIGFjY291bnQgaG9sZGVycyJdfSw3NjkwMzYoZSl7ZS5leHBvcnRzPVsiRGVjIl19LDIyOTUyNShlKXtlLmV4cG9ydHM9WyJEZWxheWVkIl19LDYwMTc2NChlKXtlLmV4cG9ydHM9WyJFbmQgb2YgRGF5Il19LAo4NzIzOChlKXtlLmV4cG9ydHM9WyJFcnJvciJdfSw2MTczNDEoZSl7ZS5leHBvcnRzPVsiRmViIl19LDk2ODgxNShlKXtlLmV4cG9ydHM9WyJGcmFjdGlvbiBwYXJ0IGlzIGludmFsaWQuIl19LDMyODMxMyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGlzIG5vdCBhbGxvd2VkIl19LDY1NzM3NChlKXtlLmV4cG9ydHM9WyJKYW4iXX0sMTgzOTU5KGUpe2UuZXhwb3J0cz1bIkp1bCJdfSw4Nzc0NShlKXtlLmV4cG9ydHM9WyJKdW4iXX0sNzI4MzM3KGUpe2UuZXhwb3J0cz1bIk9jdCJdfSwxODY0MDIoZSl7ZS5leHBvcnRzPVsiTG9naW4gb3IgcmVnaXN0ZXIgdG8gZ2V0IGRhdGEiXX0sMTAzMzA1KGUpe2UuZXhwb3J0cz1bIk1hciJdfSwxNDY4MDcoZSl7ZS5leHBvcnRzPVsiTm8gZGF0YSBoZXJlIHlldCJdfSw2NDY1NDUoZSl7ZS5leHBvcnRzPVsiTm92Il19LDU2MjM5NShlKXtlLmV4cG9ydHM9WyJTbmFwc2hvdCJdfSw4NTAyOTgoZSl7ZS5leHBvcnRzPVsiU2Vjb25kIGZyYWN0aW9uIHBhcnQgaXMgaW52YWxpZC4iXX0sMTc4NDY5KGUpe2UuZXhwb3J0cz1bIlNlcCJdfSw5OTIzNjIoZSl7ZS5leHBvcnRzPVsiU3R1ZGllcyBsaW1pdCBleGNlZWRlZDoge251bWJlcn0gc3R1ZGllcyBwZXIgbGF5b3V0LlxuUGxlYXNlLCByZW1vdmUgc29tZSBzdHVkaWVzLiJdfSw2MTYxOChlKXtlLmV4cG9ydHM9WyJQcmljZSBmb3JtYXQgaXMgaW52YWxpZC4iXX0sODk3NjcoZSl7ZS5leHBvcnRzPVsiUTEiXX0sOTQ4OTIzKGUpe2UuZXhwb3J0cz1bIlEyIl19LDM2NzkzNShlKXtlLmV4cG9ydHM9WyJRMyJdfSwxNzU1MDcoZSl7ZS5leHBvcnRzPVsiUTQiXX0sODE0NjEoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiJdfSw3OTA1MjQoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiBhbmQgdXBkYXRlZCBldmVyeSAzMCBzZWNvbmRzIl19LDg4MzkyOChlKXtlLmV4cG9ydHM9WyJSZWFsLXRpbWUiXX0sOTc3MjcoZSl7ZS5leHBvcnRzPVsiUmVwbGF5IE1vZGUiXX0sOTM3MDE3KGUpe2UuZXhwb3J0cz1bIldhcm5pbmciXX0sNTE3ODU5KGUpe2UuZXhwb3J0cz1bIlZpc2l0IFRyYWRpbmdWaWV3IOKAlCBmaW5hbmNpYWwgY2hhcnRpbmcgcGxhdGZvcm0gYW5kIHRyYWRpbmcgY29tbXVuaXR5Il19LDQyMjM2OShlKXtlLmV4cG9ydHM9WyJZVEQiXX0sNDg1NDIwKGUpe2UuZXhwb3J0cz1bIlllYXIgdG8gZGF0ZSJdfSw3MjExMTgoZSl7ZS5leHBvcnRzPVsiYW5udWFsbHkiXX0sNjUzNjkoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIG1vbnRobHkiXX0sMjYwMTkzKGUpe2UuZXhwb3J0cz1bImJpbGxlZCBhbm51YWxseSJdfSw1NTY1NjgoZSl7ZS5leHBvcnRzPVsibW9udGhseSJdfSw4NjM4NTIoZSl7ZS5leHBvcnRzPVsidGhyZWUgbW9udGhzIl19LDgzNTgoZSl7ZS5leHBvcnRzPVsidHJpYWwiXX0sMTUzNzY2KGUpe2UuZXhwb3J0cz1bIntwcm9QbGFuTmFtZX0gVHJpYWwiXX0sMzIzNDg1KGUpe2UuZXhwb3J0cz1bIm1vbnRoIiwibW9udGhzIl19LDEwMzAzMChlKXtlLmV4cG9ydHM9WyJ7c3RyfSBkYXkiLCJ7c3RyfSBkYXlzIl19LDIxMDU3NChlKXtlLmV4cG9ydHM9WyJ7c3RyfSBob3VyIiwie3N0cn0gaG91cnMiXX0sNjk0NjE3KGUpe2UuZXhwb3J0cz1bIntzdHJ9IG1vbnRoIiwie3N0cn0gbW9udGhzIl19LDQzOTAoZSl7ZS5leHBvcnRzPVsie3N0cn0gbWludXRlIiwie3N0cn0gbWludXRlcyJdfSw2NDQ2MjUoZSl7ZS5leHBvcnRzPVsie3N0cn0gd2VlayIsIntzdHJ9IHdlZWtzIl19LDIxNjQwMihlKXtlLmV4cG9ydHM9WyJ7c3RyfSB5ZWFyIiwie3N0cn0geWVhcnMiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.545Z","timestamp":1785154590545,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/13148.32cc01dc01751b91682c.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a06d56c-12cc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 15 May 2026 08:12:28 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/15/2026 10:19:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a163ba5e84b59d92d464b6ac561c484d\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4812,"size_decoded":2619,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3061)","md5":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-27T14:18:36.426457Z","times_seen":4545,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"maps.googleapis.com/maps/api/js?key=AIzaSyDduF2tLXicDEPDMAtC6-NLOekX0A5vlnY","fqdn":"maps.googleapis.com","domain":"maps.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.113.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.326Z","timestamp":1785154589326,"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 /maps/api/js?key=AIzaSyDduF2tLXicDEPDMAtC6-NLOekX0A5vlnY HTTP/1.1\r\nHost: maps.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://persimmontrades.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\ncross-origin-resource-policy: cross-origin\r\nvary: Accept-Language, Origin, X-Origin, Referer\r\ncache-control: public, max-age=1800, stale-while-revalidate=12600\r\ntiming-allow-origin: *\r\ncontent-type: text/javascript; charset=UTF-8\r\netag: 132439b8\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: scaffolding on HTTPServer2\r\ncontent-length: 102521\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nserver-timing: gfet4t7; dur=33\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":311453,"size_decoded":103096,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (12270)","md5":"b4bb07fb382e3f14979fe5902599319d","sha1":"99510994356d7f5de57aa46eec60edb972f4701f","sha256":"298b2ddecb6186b2922e34432e1c649c2ad56fd8849edc89a1b574eeef5d8bc4","sha512":"3c2351d52d971d1e6ad0133fa3b3848a0a6d2c80621967e661aae671de53f93b3b420f7fae680ad473cbd08dcb94d8ccd3442c706d413dc2ccd8f76a0e93252a","ssdeep":"3072:GfzHovwhh+hNI8cMS9xlgb7HBrT+kQqbdhfDnT8tSsZ95urOHLNeM6NGPbQ7RpYc:azuHI8cMGcbBrykCh5ucLNbLPMRWc","tlshash":"4c643d947362746287b2e4b4502b0007f17ea49af00c89acf69cddf2aef994945b7f74","first_seen":"2026-07-27T12:17:15.198543Z","last_seen":"2026-07-27T12:17:29.192144Z","times_seen":2,"resource_available":true,"data":"Cgp3aW5kb3cuZ29vZ2xlID0gd2luZG93Lmdvb2dsZSB8fCB7fTsKZ29vZ2xlLm1hcHMgPSBnb29nbGUubWFwcyB8fCB7fTsKKGZ1bmN0aW9uKCkgewogIAogIHZhciBtb2R1bGVzID0gZ29vZ2xlLm1hcHMubW9kdWxlcyA9IHt9OwogIGdvb2dsZS5tYXBzLl9fZ2pzbG9hZF9fID0gZnVuY3Rpb24obmFtZSwgdGV4dCkgewogICAgbW9kdWxlc1tuYW1lXSA9IHRleHQ7CiAgfTsKICAKICBnb29nbGUubWFwcy5Mb2FkID0gZnVuY3Rpb24oYXBpTG9hZCkgewogICAgZGVsZXRlIGdvb2dsZS5tYXBzLkxvYWQ7CiAgICBhcGlMb2FkKFswLjAwOTk5OTk5OTc3NjQ4MjU4MixbbnVsbCxbWyJodHRwczovL2tobXMwLmdvb2dsZWFwaXMuY29tL2toP3Y9MTAxMlx1MDAyNmhsPWVuLVVTXHUwMDI2Z2w9VVNcdTAwMjYiLCJodHRwczovL2tobXMxLmdvb2dsZWFwaXMuY29tL2toP3Y9MTAxMlx1MDAyNmhsPWVuLVVTXHUwMDI2Z2w9VVNcdTAwMjYiXSxudWxsLG51bGwsbnVsbCwxLCIxMDEyIixbImh0dHBzOi8va2htczAuZ29vZ2xlLmNvbS9raD92PTEwMTJcdTAwMjZobD1lbi1VU1x1MDAyNmdsPVVTXHUwMDI2IiwiaHR0cHM6Ly9raG1zMS5nb29nbGUuY29tL2toP3Y9MTAxMlx1MDAyNmhsPWVuLVVTXHUwMDI2Z2w9VVNcdTAwMjYiXV0sbnVsbCxudWxsLG51bGwsbnVsbCxbWyJodHRwczovL2Nia3MwLmdvb2dsZWFwaXMuY29tL2Niaz8iLCJodHRwczovL2Nia3MxLmdvb2dsZWFwaXMuY29tL2Niaz8iXV0sW1siaHR0cHM6Ly9raG1zMC5nb29nbGVhcGlzLmNvbS9raD92PTE2OVx1MDAyNmhsPWVuLVVTXHUwMDI2Z2w9VVNcdTAwMjYiLCJodHRwczovL2tobXMxLmdvb2dsZWFwaXMuY29tL2toP3Y9MTY5XHUwMDI2aGw9ZW4tVVNcdTAwMjZnbD1VU1x1MDAyNiJdLG51bGwsbnVsbCxudWxsLG51bGwsIjE2OSIsWyJodHRwczovL2tobXMwLmdvb2dsZS5jb20va2g/dj0xNjlcdTAwMjZobD1lbi1VU1x1MDAyNmdsPVVTXHUwMDI2IiwiaHR0cHM6Ly9raG1zMS5nb29nbGUuY29tL2toP3Y9MTY5XHUwMDI2aGw9ZW4tVVNcdTAwMjZnbD1VU1x1MDAyNiJdXSxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLFtbImh0dHBzOi8vc3RyZWV0dmlld3BpeGVscy1wYS5nb29nbGVhcGlzLmNvbS92MS90aHVtYm5haWw/aGw9ZW4tVVNcdTAwMjZnbD1VU1x1MDAyNiIsImh0dHBzOi8vc3RyZWV0dmlld3BpeGVscy1wYS5nb29nbGVhcGlzLmNvbS92MS90aHVtYm5haWw/aGw9ZW4tVVNcdTAwMjZnbD1VU1x1MDAyNiJdXV0sWyJlbi1VUyIsIlVTIixudWxsLDAsbnVsbCxudWxsLCJodHRwczovL21hcHMuZ3N0YXRpYy5jb20vbWFwZmlsZXMvIixudWxsLCJodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20iLCJodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20iLG51bGwsImh0dHBzOi8vbWFwcy5nb29nbGUuY29tIixudWxsLCJodHRwczovL21hcHMuZ3N0YXRpYy5jb20vbWFwcy1hcGktdjMvYXBpL2ltYWdlcy8iLCJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMiLG51bGwsImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLDEsImh0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzX2FwaV9qc19zbG8vbG9nP2hhc2Zhc3Q9dHJ1ZSIsMCwxXSxbImh0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzLWFwaS12My9hcGkvanMvNjUvMTBhIiwiMy42NS4xMGEiXSxbODgwNjI0ODYzXSxudWxsLG51bGwsbnVsbCxbMTEyXSxudWxsLG51bGwsIiIsbnVsbCxudWxsLDEsImh0dHBzOi8va2htcy5nb29nbGVhcGlzLmNvbS9tej92PTEwMTJcdTAwMjYiLCJBSXphU3lEZHVGMnRMWGljREVQRE1BdEM2LU5MT2VrWDBBNXZsblkiLCJodHRwczovL2VhcnRoYnVpbGRlci5nb29nbGVhcGlzLmNvbSIsImh0dHBzOi8vZWFydGhidWlsZGVyLmdvb2dsZWFwaXMuY29tIixudWxsLCJodHRwczovL210cy5nb29nbGVhcGlzLmNvbS9tYXBzL3Z0L2ljb24iLFtbImh0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzL3Z0Il0sWyJodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy92dCJdLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsWyJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvdnQiXSwiL21hcHMvdnQiLDc4NzAwMDAwMCw3ODcsNzg3NTUzNzExXSwyLDUwMCxbbnVsbCxudWxsLG51bGwsbnVsbCwiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL3ByZXZpZXcvbG9nMjA0IiwiIiwiaHR0cHM6Ly9zdGF0aWMucGFub3JhbWlvLmNvbS5zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3Bob3Rvcy8iLFsiaHR0cHM6Ly9nZW8wLmdncGh0LmNvbS9jYmsiLCJodHRwczovL2dlbzEuZ2dwaHQuY29tL2NiayIsImh0dHBzOi8vZ2VvMi5nZ3BodC5jb20vY2JrIiwiaHR0cHM6Ly9nZW8zLmdncGh0LmNvbS9jYmsiXSwiaHR0cHM6Ly9tYXBzLmdvb2dsZWFwaXMuY29tL21hcHMvYXBpL2pzL0dlb1Bob3RvU2VydmljZS5HZXRNZXRhZGF0YSIsImh0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzL2FwaS9qcy9HZW9QaG90b1NlcnZpY2UuU2luZ2xlSW1hZ2VTZWFyY2giLFsiaHR0cHM6Ly9saDMuZ2dwaHQuY29tL2pzYXBpMi9hL2IvYy8iLCJodHRwczovL2xoNC5nZ3BodC5jb20vanNhcGkyL2EvYi9jLyIsImh0dHBzOi8vbGg1LmdncGh0LmNvbS9qc2FwaTIvYS9iL2MvIiwiaHR0cHM6Ly9saDYuZ2dwaHQuY29tL2pzYXBpMi9hL2IvYy8iXSwiaHR0cHM6Ly9zdHJlZXR2aWV3cGl4ZWxzLXBhLmdvb2dsZWFwaXMuY29tL3YxL3RpbGUiLFsiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tLyIsImh0dHBzOi8vbGg0Lmdvb2dsZXVzZXJjb250ZW50LmNvbS8iLCJodHRwczovL2xoNS5nb29nbGV1c2VyY29udGVudC5jb20vIiwiaHR0cHM6Ly9saDYuZ29vZ2xldXNlcmNvbnRlbnQuY29tLyJdXSxudWxsLG51bGwsbnVsbCxudWxsLCIvbWFwcy9hcGkvanMvQXBwbGljYXRpb25TZXJ2aWNlLkdldEVudGl0eURldGFpbHMiLDAsbnVsbCxudWxsLG51bGwsbnVsbCxbXSxbIjY1LjEwYSJdLDEsMCxbMV0sIkNnQVNsamNJa3dZU2ZBZ0JFbmhvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhCVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZBZ0NFbmhvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhCVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZBZ0RFbmhvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhCVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2RnZ0VFbkpvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxVNWhkbWxuWVhScGIyNHRSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1NmZ2dGRW5wb2RIUndjem92TDNkM2R5NW5jM1JoZEdsakxtTnZiUzl0WVhCekwzSmxjeTlEYjIxd1lXTjBUR1ZuWlc1a1UyUnJMVTVoZG1sbllYUnBiMjVNYjNkTWFXZG9kQzFHWlhSamFHRmliR1ZUZEhsc1pWTmxkRk5rYXkwNFlqVmlNMll6TVRnNU1EQTJNVE01WlRrd1pUWXdNR0l6TURjMVpEVXdPUkovQ0FZU2UyaDBkSEJ6T2k4dmQzZDNMbWR6ZEdGMGFXTXVZMjl0TDIxaGNITXZjbVZ6TDBOdmJYQmhZM1JNWldkbGJtUlRaR3N0VG1GMmFXZGhkR2x2YmxOaGRHVnNiR2wwWlMxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JKekNBY1NiMmgwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFVtOWhaRzFoY0MxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JKekNBZ1NiMmgwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFVtOWhaRzFoY0MxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JKOUNBa1NlV2gwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFVtOWhaRzFoY0VGdFltbGhZM1JwZG1VdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2N3Z0tFbTlvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhBdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZBZ0xFbmhvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhCVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2N3Z01FbTlvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWUmxjbkpoYVc0dFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2RnZ05FbkpvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxVNWhkbWxuWVhScGIyNHRSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1NkZ2dPRW5Kb2RIUndjem92TDNkM2R5NW5jM1JoZEdsakxtTnZiUzl0WVhCekwzSmxjeTlEYjIxd1lXTjBUR1ZuWlc1a1UyUnJMVTVoZG1sbllYUnBiMjR0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTZlFnUEVubG9kSFJ3Y3pvdkwzZDNkeTVuYzNSaGRHbGpMbU52YlM5dFlYQnpMM0psY3k5RGIyMXdZV04wVEdWblpXNWtVMlJyTFZKdllXUnRZWEJCYldKcFlXTjBhWFpsTFVabGRHTm9ZV0pzWlZOMGVXeGxVMlYwVTJSckxUaGlOV0l6WmpNeE9Ea3dNRFl4TXpsbE9UQmxOakF3WWpNd056VmtOVEE1RW9NQkNCQVNmMmgwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFVtOWhaRzFoY0VGdFltbGhZM1JwZG1WTWIzZENhWFF0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTZmdnUkVucG9kSFJ3Y3pvdkwzZDNkeTVuYzNSaGRHbGpMbU52YlM5dFlYQnpMM0psY3k5RGIyMXdZV04wVEdWblpXNWtVMlJyTFU1aGRtbG5ZWFJwYjI1TWIzZE1hV2RvZEMxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JKNkNCSVNkbWgwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFZISmhibk5wZEVadlkzVnpaV1F0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTY3dnVEVtOW9kSFJ3Y3pvdkwzZDNkeTVuYzNSaGRHbGpMbU52YlM5dFlYQnpMM0psY3k5RGIyMXdZV04wVEdWblpXNWtVMlJyTFZKdllXUnRZWEF0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTZVFnVUVuVm9kSFJ3Y3pvdkwzZDNkeTVuYzNSaGRHbGpMbU52YlM5dFlYQnpMM0psY3k5RGIyMXdZV04wVEdWblpXNWtVMlJyTFZKdmRYUmxUM1psY25acFpYY3RSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1Njd2dWRW05b2RIUndjem92TDNkM2R5NW5jM1JoZEdsakxtTnZiUzl0WVhCekwzSmxjeTlEYjIxd1lXTjBUR1ZuWlc1a1UyUnJMVkp2WVdSdFlYQXRSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1NmUWdXRW5sb2RIUndjem92TDNkM2R5NW5jM1JoZEdsakxtTnZiUzl0WVhCekwzSmxjeTlEYjIxd1lXTjBUR1ZuWlc1a1UyUnJMVTVoZG1sbllYUnBiMjVCYldKcFpXNTBMVVpsZEdOb1lXSnNaVk4wZVd4bFUyVjBVMlJyTFRoaU5XSXpaak14T0Rrd01EWXhNemxsT1RCbE5qQXdZak13TnpWa05UQTVFb0VCQ0JjU2ZXaDBkSEJ6T2k4dmQzZDNMbWR6ZEdGMGFXTXVZMjl0TDIxaGNITXZjbVZ6TDBOdmJYQmhZM1JNWldkbGJtUlRaR3N0VG1GMmFXZGhkR2x2YmtGdFltbGxiblJFWVhKckxVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVvTUJDQmtTZjJoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RRbUZ6WlcxaGNFVmthWFJwYm1kVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2N3Z2FFbTlvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhBdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2R3Z2JFbk5vZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWSnZZV1J0WVhCRVlYSnJMVVpsZEdOb1lXSnNaVk4wZVd4bFUyVjBVMlJyTFRoaU5XSXpaak14T0Rrd01EWXhNemxsT1RCbE5qQXdZak13TnpWa05UQTVFbjBJSEJKNWFIUjBjSE02THk5M2QzY3VaM04wWVhScFl5NWpiMjB2YldGd2N5OXlaWE12UTI5dGNHRmpkRXhsWjJWdVpGTmtheTFTYjNWMFpVOTJaWEoyYVdWM1JHRnlheTFHWlhSamFHRmliR1ZUZEhsc1pWTmxkRk5rYXkwNFlqVmlNMll6TVRnNU1EQTJNVE01WlRrd1pUWXdNR0l6TURjMVpEVXdPUkozQ0IwU2MyaDBkSEJ6T2k4dmQzZDNMbWR6ZEdGMGFXTXVZMjl0TDIxaGNITXZjbVZ6TDBOdmJYQmhZM1JNWldkbGJtUlRaR3N0VkdWeWNtRnBia1JoY21zdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZnZ2VFbnBvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxWUnlZVzV6YVhSR2IyTjFjMlZrUkdGeWF5MUdaWFJqYUdGaWJHVlRkSGxzWlZObGRGTmtheTA0WWpWaU0yWXpNVGc1TURBMk1UTTVaVGt3WlRZd01HSXpNRGMxWkRVd09SSnpDQjhTYjJoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RVbTloWkcxaGNDMUdaWFJqYUdGaWJHVlRkSGxzWlZObGRGTmtheTA0WWpWaU0yWXpNVGc1TURBMk1UTTVaVGt3WlRZd01HSXpNRGMxWkRVd09SSjNDQ0FTYzJoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RVbTloWkcxaGNFUmhjbXN0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTZHdnaEVuTm9kSFJ3Y3pvdkwzZDNkeTVuYzNSaGRHbGpMbU52YlM5dFlYQnpMM0psY3k5RGIyMXdZV04wVEdWblpXNWtVMlJyTFZKdllXUnRZWEJFWVhKckxVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVvQUJDQ1VTZkdoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RUbUYyYVdkaGRHbHZia2hwWjJoRVpYUmhhV3d0Um1WMFkyaGhZbXhsVTNSNWJHVlRaWFJUWkdzdE9HSTFZak5tTXpFNE9UQXdOakV6T1dVNU1HVTJNREJpTXpBM05XUTFNRGtTaVFFSUpoS0VBV2gwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFRtRjJhV2RoZEdsdmJraHBaMmhFWlhSaGFXeE1iM2RNYVdkb2RDMUdaWFJqYUdGaWJHVlRkSGxzWlZObGRGTmtheTA0WWpWaU0yWXpNVGc1TURBMk1UTTVaVGt3WlRZd01HSXpNRGMxWkRVd09SSnlDQ2tTYm1oMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RWSEpoZG1Wc0xVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVuWUlLaEp5YUhSMGNITTZMeTkzZDNjdVozTjBZWFJwWXk1amIyMHZiV0Z3Y3k5eVpYTXZRMjl0Y0dGamRFeGxaMlZ1WkZOa2F5MVVjbUYyWld4RVlYSnJMVVpsZEdOb1lXSnNaVk4wZVd4bFUyVjBVMlJyTFRoaU5XSXpaak14T0Rrd01EWXhNemxsT1RCbE5qQXdZak13TnpWa05UQTVFbjhJS3hKN2FIUjBjSE02THk5M2QzY3VaM04wWVhScFl5NWpiMjB2YldGd2N5OXlaWE12UTI5dGNHRmpkRXhsWjJWdVpGTmtheTFPWVhacFoyRjBhVzl1VTJGMFpXeHNhWFJsTFVabGRHTm9ZV0pzWlZOMGVXeGxVMlYwVTJSckxUaGlOV0l6WmpNeE9Ea3dNRFl4TXpsbE9UQmxOakF3WWpNd056VmtOVEE1RW44SUxCSjdhSFIwY0hNNkx5OTNkM2N1WjNOMFlYUnBZeTVqYjIwdmJXRndjeTl5WlhNdlEyOXRjR0ZqZEV4bFoyVnVaRk5rYXkxVVpYSnlZV2x1Vm1WamRHOXlRMnhwWlc1MExVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVvTUJDQzBTZjJoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RWR1Z5Y21GcGJsWmxZM1J2Y2tOc2FXVnVkRVJoY21zdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZRZ3VFbmxvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxVNWhkbWxuWVhScGIyNUJiV0pwWlc1MExVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVvRUJDQzhTZldoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RUbUYyYVdkaGRHbHZia0Z0WW1sbGJuUkVZWEpyTFVabGRHTm9ZV0pzWlZOMGVXeGxVMlYwVTJSckxUaGlOV0l6WmpNeE9Ea3dNRFl4TXpsbE9UQmxOakF3WWpNd056VmtOVEE1RW4wSU1CSjVhSFIwY0hNNkx5OTNkM2N1WjNOMFlYUnBZeTVqYjIwdmJXRndjeTl5WlhNdlEyOXRjR0ZqZEV4bFoyVnVaRk5rYXkxQmFYSlJkV0ZzYVhSNVNHVmhkRzFoY0MxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JLQkFRZ3hFbjFvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxVRnBjbEYxWVd4cGRIbElaV0YwYldGd1JHRnlheTFHWlhSamFHRmliR1ZUZEhsc1pWTmxkRk5rYXkwNFlqVmlNMll6TVRnNU1EQTJNVE01WlRrd1pUWXdNR0l6TURjMVpEVXdPUko2Q0RJU2RtaDBkSEJ6T2k4dmQzZDNMbWR6ZEdGMGFXTXVZMjl0TDIxaGNITXZjbVZ6TDBOdmJYQmhZM1JNWldkbGJtUlRaR3N0VG1GMmFXZGhkR2x2YmtWbmJXMHRSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1NnZ0VJTXhKK2FIUjBjSE02THk5M2QzY3VaM04wWVhScFl5NWpiMjB2YldGd2N5OXlaWE12UTI5dGNHRmpkRXhsWjJWdVpGTmtheTFPWVhacFoyRjBhVzl1UldkdGJVeHZkMHhwWjJoMExVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVvTUJDRFFTZjJoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RUbUYyYVdkaGRHbHZia1ZuYlcxVFlYUmxiR3hwZEdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2ZBZzFFbmhvZEhSd2N6b3ZMM2QzZHk1bmMzUmhkR2xqTG1OdmJTOXRZWEJ6TDNKbGN5OURiMjF3WVdOMFRHVm5aVzVrVTJSckxVNWhkbWxuWVhScGIyNVVkVzV1Wld3dFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2hRRUlOaEtBQVdoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RUbUYyYVdkaGRHbHZibFIxYm01bGJFeHZkMHhwWjJoMExVWmxkR05vWVdKc1pWTjBlV3hsVTJWMFUyUnJMVGhpTldJelpqTXhPRGt3TURZeE16bGxPVEJsTmpBd1lqTXdOelZrTlRBNUVuMElOeEo1YUhSMGNITTZMeTkzZDNjdVozTjBZWFJwWXk1amIyMHZiV0Z3Y3k5eVpYTXZRMjl0Y0dGamRFeGxaMlZ1WkZOa2F5MU9ZWFpwWjJGMGFXOXVSMnhoYzNObGN5MUdaWFJqYUdGaWJHVlRkSGxzWlZObGRGTmtheTA0WWpWaU0yWXpNVGc1TURBMk1UTTVaVGt3WlRZd01HSXpNRGMxWkRVd09SSjVDRGdTZFdoMGRIQnpPaTh2ZDNkM0xtZHpkR0YwYVdNdVkyOXRMMjFoY0hNdmNtVnpMME52YlhCaFkzUk1aV2RsYm1SVFpHc3RTVzF0WlhKemFYWmxWbWxsZHkxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JKOUNEa1NlV2gwZEhCek9pOHZkM2QzTG1kemRHRjBhV011WTI5dEwyMWhjSE12Y21WekwwTnZiWEJoWTNSTVpXZGxibVJUWkdzdFRtRjJhV2RoZEdsdmJrMXBiazF2WkdVdFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURrU2d3RUlPaEovYUhSMGNITTZMeTkzZDNjdVozTjBZWFJwWXk1amIyMHZiV0Z3Y3k5eVpYTXZRMjl0Y0dGamRFeGxaMlZ1WkZOa2F5MU9ZWFpwWjJGMGFXOXVRVzFpYVdWdWRGUjFibTVsYkMxR1pYUmphR0ZpYkdWVGRIbHNaVk5sZEZOa2F5MDRZalZpTTJZek1UZzVNREEyTVRNNVpUa3daVFl3TUdJek1EYzFaRFV3T1JLSUFRZzdFb01CYUhSMGNITTZMeTkzZDNjdVozTjBZWFJwWXk1amIyMHZiV0Z3Y3k5eVpYTXZRMjl0Y0dGamRFeGxaMlZ1WkZOa2F5MU9ZWFpwWjJGMGFXOXVRVzFpYVdWdWRFUmhjbXRVZFc1dVpXd3RSbVYwWTJoaFlteGxVM1I1YkdWVFpYUlRaR3N0T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea1NnUUVJUEJKOWFIUjBjSE02THk5M2QzY3VaM04wWVhScFl5NWpiMjB2YldGd2N5OXlaWE12UTI5dGNHRmpkRXhsWjJWdVpGTmtheTFPWVhacFoyRjBhVzl1VFdsdVRXOWtaVUYxZEc4dFJtVjBZMmhoWW14bFUzUjViR1ZUWlhSVFpHc3RPR0kxWWpObU16RTRPVEF3TmpFek9XVTVNR1UyTURCaU16QTNOV1ExTURraUlEaGlOV0l6WmpNeE9Ea3dNRFl4TXpsbE9UQmxOakF3WWpNd056VmtOVEE1S0FFeWNtaDBkSEJ6T2k4dmQzZDNMbWR2YjJkc1pTNWpiMjB2YldGd2N5OTJkQzl6ZUdadmNtMXpQM1k5T0dJMVlqTm1NekU0T1RBd05qRXpPV1U1TUdVMk1EQmlNekEzTldRMU1Ea21jM1I1YkdWeVgzTjFZblI1Y0dVOVUxUlpURVZTWDB4RlIwVk9SRjlUVlVKVVdWQkZYMU5FU3pwZ0NpNkFmSUI0Z0hTQWNJQnNnR2lBWklCZ2dGeUFXSUJVZ0ZDQVRJQklnRVNBUUlBOGdEaUFOSUF3Z0N5QUtJQWtFZ1FJQUJBQUVnUUlBUkFCRWdRSUFoQUNFZzBJQXhELy8vLy8vLy8vLy84QkVnMElCQkQrLy8vLy8vLy8vLzhCUWdOelpHczQ2WTYwRmpqcmlMZ1dPTzdmdVJZNDZwRHpJZz09IixudWxsLDEsMC4wMDk5OTk5OTk3NzY0ODI1ODIsbnVsbCxbW1s2LCIxNzg0ODAyOTg2Il1dXSxudWxsLCIiLG51bGwsMSwwXSwgbG9hZFNjcmlwdFRpbWUpOwogIH07CiAgdmFyIGxvYWRTY3JpcHRUaW1lID0gKG5ldyBEYXRlKS5nZXRUaW1lKCk7Cn0pKCk7Ci8vIGlubGluZWQKKGZ1bmN0aW9uKF8pey8qCgogQ29weXJpZ2h0IFRoZSBDbG9zdXJlIExpYnJhcnkgQXV0aG9ycy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCi8qCgogQ29weXJpZ2h0IEdvb2dsZSBMTEMKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCi8qCgogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQoqLwovKgoKIENvcHlyaWdodCAyMDE3IEdvb2dsZSBMTEMKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKi8KLyoKCk1hdGgudXVpZC5qcyAodjEuNCkKaHR0cDovL3d3dy5icm9vZmEuY29tCm1haWx0bzpyb2JlcnRAYnJvb2ZhLmNvbQpDb3B5cmlnaHQgKGMpIDIwMTAgUm9iZXJ0IEtpZWZmZXIKRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMuCiovCi8qCgogQ29weXJpZ2h0IDIwMjEgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQoqLwp2YXIgYWFhLHJhLHFhLEJhLERhLEhhLEphLFNhLFJhLFhhLGNhYSxkYWEsdWIsemIsa2MsbGMsRmMsR2MsZmFhLG1kLHBkLGdhYSxzZCx5ZCxGZCxIZCxaZCxvZSx3ZSxNZSxOZSxPZSxlZixoZixqZixrYWEsb2FhLHNmLHVmLHZmLENmLHJhYSx0YWEsSGYsaWcsZGcsZmcsa2csb2cscGcscWcsRGcsaGcsdmFhLG9oLFhoLGJpLGNpLGdpLGhpLG5pLEFhYSxCYWEsdWksQ2FhLERhYSxVaSxWaSxIYWEsSWFhLHZqLEphYSxMYWEsSGosTWFhLE5hYSxPYWEsUGFhLFFhYSxSYWEsSmosU2FhLFdhYSxYYWEsYWJhLGRiYSxUaixTaixsYmEsbWJhLHBiYSxxayxyayxzayx0ayxyYmEsc2JhLHdiYSx0YmEsdmJhLHdrLHhiYSx5YmEsSGssemJhLEprLEJiYSxBYmEsQ2JhLExrLEViYSxGYmEsSmJhLE1iYSxRayxTayxUayxLYmEsTGJhLFFiYSxWayxVayxXayxYayxSYmEsWmssWWssVGJhLGNsLGRsLGVsLFZiYSxmbCxnbCxobCxpbCxXYmEsamwsa2wsWGJhLGxsLFliYSxiY2EsaGNhLG1jYSxuY2EsCnZsLHBjYSxxY2EscmNhLHVjYSx0Y2EsdmNhLHdjYSxGbCxzY2EseGNhLFVsLHpjYSxBY2EsQmNhLHFtLEVjYSx5bSxIY2EsSWNhLFFtLFJtLEtjYSxNY2EsY24sUGNhLFNjYSxubixBbixDbix6bixRbixZbixaY2EsJGNhLGFkYSxjZGEsY28saW8sam8sZGRhLGdkYSxpZGEsaGRhLGpkYSxvbyxrZGEscm8sc28sRG8sTW8sTm8scmRhLHNkYSxPbyxQbyx0ZGEsdWRhLFZvLHZkYSxZbyxBZGEsYnAsQ2RhLEVkYSxGZGEsZnAsSWRhLGxwLEpkYSxwcCxLZGEsc3AsTmRhLE9kYSxQZGEsUmRhLFNkYSxXZGEsWGRhLHZwLFlkYSxWZGEsVGRhLFVkYSwkZGEsWmRhLHhwLGJlYSxlZWEsZmVhLGhlYSxLcCxNcCxrZWEsbWVhLG5lYSxwZWEscmVhLHNlYSx0ZWEsdWVhLHZlYSx3ZWEseGVhLHllYSx6ZWEsQWVhLEJlYSxEZWEsRmVhLEdlYSxIZWEsTGVhLE1lYSxhcSxicSxjcSxQZWEsUWVhLFJlYSxTZWEsWGVhLFZlYSxiZmEsY2ZhLHpxLHlxLENxLHBmYSxzZmEsdGZhLHZmYSx4ZmEsQ2ZhLEdmYSwKQmZhLElmYSxIZmEsTGZhLE1mYSxOZmEsT2ZhLFpxLFFmYSxVZmEsVmZhLFhmYSxZZmEsaWdhLGhnYSwkZmEsYWdhLGZnYSxocix1byxlYSx6YSx4YSx5YSx0YSxsYSxuYTtfLmhhPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBlYVthXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fTtfLmthPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGVhW2FdPWJ9O18ubWE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXtjPWxhW2JdO2lmKGM9PW51bGwpcmV0dXJuIGFbYl07Yz1hW2NdO3JldHVybiBjIT09dm9pZCAwP2M6YVtiXX19O2FhYT1mdW5jdGlvbihhLGIsYyl7aWYoYilmb3IodmFyIGQ9MDtkPG5hLmxlbmd0aDtkKyspcWEobmFbZF0rIkFycmF5LnByb3RvdHlwZS4iK2EsYixjKX07cmE9ZnVuY3Rpb24oYSxiLGMpe2ImJnFhKGEsYixjKX07CnFhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLnNwbGl0KCIuIik7YT1kLmxlbmd0aD09PTE7dmFyIGU9ZFswXSxmOyFhJiZlIGluIHRhP2Y9dGE6Zj14YTtmb3IoZT0wO2U8ZC5sZW5ndGgtMTtlKyspe3ZhciBnPWRbZV07aWYoIShnIGluIGYpKXJldHVybjtmPWZbZ119ZD1kW2QubGVuZ3RoLTFdO2M9eWEmJmM9PT0iZXM2Ij9mW2RdOm51bGw7Yj1iKGMpO2IhPW51bGwmJihhP3phKHRhLGQse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSk6YiE9PWMmJihsYVtkXT09PXZvaWQgMCYmKGE9TWF0aC5yYW5kb20oKSoxRTk+Pj4wLGxhW2RdPXlhP3hhLlN5bWJvbChkKToiJGpzY3AkIithKyIkIitkKSx6YShmLGxhW2RdLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Yn0pKSl9O0JhPWZ1bmN0aW9uKGEpe2E9TWF0aC50cnVuYyhhKXx8MDthPDAmJihhKz10aGlzLmxlbmd0aCk7aWYoIShhPDB8fGE+PXRoaXMubGVuZ3RoKSlyZXR1cm4gdGhpc1thXX07CkRhPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im9iamVjdCJ8fGE9PT1udWxsfHx0eXBlb2YgYS5zaXplIT09Im51bWJlciJ8fGEuc2l6ZTwwfHx0eXBlb2YgYS5rZXlzIT09ImZ1bmN0aW9uInx8dHlwZW9mIGEuaGFzIT09ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCBtdXN0IGJlIHNldC1saWtlIik7fTtIYT1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbHx8dHlwZW9mIGEubmV4dCE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBpdGVyYXRvci4iKTtyZXR1cm4gYX07SmE9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgU2V0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJNZXRob2QgbXVzdCBiZSBjYWxsZWQgb24gYW4gaW5zdGFuY2Ugb2YgU2V0LiIpO307U2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1SYSgiQ0xPU1VSRV9GTEFHUyIpO2E9YyYmY1thXTtyZXR1cm4gYSE9bnVsbD9hOmJ9OwpSYT1mdW5jdGlvbihhLGIpe2E9YS5zcGxpdCgiLiIpO2I9Ynx8Xy5VYTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihiPWJbYVtjXV0sYj09bnVsbClyZXR1cm4gbnVsbDtyZXR1cm4gYn07WGE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGIhPSJvYmplY3QiP2I6YT9BcnJheS5pc0FycmF5KGEpPyJhcnJheSI6YjoibnVsbCJ9O18uWWE9ZnVuY3Rpb24oYSl7dmFyIGI9WGEoYSk7cmV0dXJuIGI9PSJhcnJheSJ8fGI9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIifTtfLlphPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO3JldHVybiBiPT0ib2JqZWN0IiYmYSE9bnVsbHx8Yj09ImZ1bmN0aW9uIn07Xy5oYj1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYmIpJiZhW2JiXXx8KGFbYmJdPSsrYmFhKX07CmNhYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuY2FsbC5hcHBseShhLmJpbmQsYXJndW1lbnRzKX07ZGFhPWZ1bmN0aW9uKGEsYixjKXtpZighYSl0aHJvdyBFcnJvcigpO2lmKGFyZ3VtZW50cy5sZW5ndGg+Mil7dmFyIGQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDIpO3JldHVybiBmdW5jdGlvbigpe3ZhciBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7QXJyYXkucHJvdG90eXBlLnVuc2hpZnQuYXBwbHkoZSxkKTtyZXR1cm4gYS5hcHBseShiLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYS5hcHBseShiLGFyZ3VtZW50cyl9fTtfLmliPWZ1bmN0aW9uKGEsYixjKXtfLmliPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kJiZGdW5jdGlvbi5wcm90b3R5cGUuYmluZC50b1N0cmluZygpLmluZGV4T2YoIm5hdGl2ZSBjb2RlIikhPS0xP2NhYTpkYWE7cmV0dXJuIF8uaWIuYXBwbHkobnVsbCxhcmd1bWVudHMpfTtfLm1iPWZ1bmN0aW9uKCl7cmV0dXJuIERhdGUubm93KCl9OwpfLm5iPWZ1bmN0aW9uKGEsYil7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBjPV8uVWEsZDthLmxlbmd0aCYmKGQ9YS5zaGlmdCgpKTspYS5sZW5ndGh8fGI9PT12b2lkIDA/Y1tkXSYmY1tkXSE9PU9iamVjdC5wcm90b3R5cGVbZF0/Yz1jW2RdOmM9Y1tkXT17fTpjW2RdPWJ9O18ucGI9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O18ucWI9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7fWMucHJvdG90eXBlPWIucHJvdG90eXBlO2EuaXI9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLmhBPWZ1bmN0aW9uKGQsZSxmKXtmb3IodmFyIGc9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0yKSxoPTI7aDxhcmd1bWVudHMubGVuZ3RoO2grKylnW2gtMl09YXJndW1lbnRzW2hdO3JldHVybiBiLnByb3RvdHlwZVtlXS5hcHBseShkLGcpfX07Cl8uRD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoLGY9ZTwzP2I6ZD09PW51bGw/ZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk6ZCxnO2lmKFJlZmxlY3QmJnR5cGVvZiBSZWZsZWN0PT09Im9iamVjdCImJnR5cGVvZiBSZWZsZWN0LmRlY29yYXRlPT09ImZ1bmN0aW9uIilmPVJlZmxlY3QuZGVjb3JhdGUoYSxiLGMsZCk7ZWxzZSBmb3IodmFyIGg9YS5sZW5ndGgtMTtoPj0wO2gtLSlpZihnPWFbaF0pZj0oZTwzP2coZik6ZT4zP2coYixjLGYpOmcoYixjKSl8fGY7ZT4zJiZmJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYixjLGYpfTtfLkY9ZnVuY3Rpb24oYSxiKXtpZihSZWZsZWN0JiZ0eXBlb2YgUmVmbGVjdD09PSJvYmplY3QiJiZ0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YT09PSJmdW5jdGlvbiIpcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEoYSxiKX07Cl8udGI9ZnVuY3Rpb24oYSxiKXtpZihFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSlFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLF8udGIpO2Vsc2V7bGV0IGM9RXJyb3IoKS5zdGFjaztjJiYodGhpcy5zdGFjaz1jKX1hJiYodGhpcy5tZXNzYWdlPVN0cmluZyhhKSk7YiE9PXZvaWQgMCYmKHRoaXMuY2F1c2U9Yil9O3ViPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy50Yi5jYWxsO2E9YS5zcGxpdCgiJXMiKTt2YXIgZD0iIixlPWEubGVuZ3RoLTE7Zm9yKGxldCBmPTA7ZjxlO2YrKylkKz1hW2ZdKyhmPGIubGVuZ3RoP2JbZl06IiVzIik7Yy5jYWxsKF8udGIsdGhpcyxkK2FbZV0pfTt6Yj1mdW5jdGlvbihhKXtyZXR1cm4oeWJ8fCh5Yj1uZXcgVGV4dEVuY29kZXIpKS5lbmNvZGUoYSl9O18uQmI9ZnVuY3Rpb24oYSl7Xy5VYS5zZXRUaW1lb3V0KCgpPT57dGhyb3cgYTt9LDApfTtfLkViPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEubGFzdEluZGV4T2YoYiwwKT09MH07Cl8uSGI9ZnVuY3Rpb24oKXtyZXR1cm4gXy5GYigpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigid2Via2l0IikhPS0xfTtfLkZiPWZ1bmN0aW9uKCl7dmFyIGE9Xy5VYS5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOiIifTtfLktiPWZ1bmN0aW9uKGEpe2lmKCFJYnx8IV8uSmIpcmV0dXJuITE7Zm9yKGxldCBiPTA7YjxfLkpiLmJyYW5kcy5sZW5ndGg7YisrKXtsZXQge2JyYW5kOmN9PV8uSmIuYnJhbmRzW2JdO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9O18uUmI9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uRmIoKS5pbmRleE9mKGEpIT0tMX07Xy5UYj1mdW5jdGlvbigpe3JldHVybiBJYj8hIV8uSmImJl8uSmIuYnJhbmRzLmxlbmd0aD4wOiExfTtfLlViPWZ1bmN0aW9uKCl7cmV0dXJuIF8uVGIoKT8hMTpfLlJiKCJPcGVyYSIpfTtfLlhiPWZ1bmN0aW9uKCl7cmV0dXJuIF8uVGIoKT8hMTpfLlJiKCJUcmlkZW50Iil8fF8uUmIoIk1TSUUiKX07Cl8uJGI9ZnVuY3Rpb24oKXtyZXR1cm4gXy5UYigpP18uS2IoIk1pY3Jvc29mdCBFZGdlIik6Xy5SYigiRWRnLyIpfTtfLmRjPWZ1bmN0aW9uKCl7cmV0dXJuIF8uUmIoIkZpcmVmb3giKXx8Xy5SYigiRnhpT1MiKX07Xy5qYz1mdW5jdGlvbigpe3JldHVybiBfLlJiKCJTYWZhcmkiKSYmIShfLmhjKCl8fChfLlRiKCk/MDpfLlJiKCJDb2FzdCIpKXx8Xy5VYigpfHwoXy5UYigpPzA6Xy5SYigiRWRnZSIpKXx8Xy4kYigpfHwoXy5UYigpP18uS2IoIk9wZXJhIik6Xy5SYigiT1BSIikpfHxfLmRjKCl8fF8uUmIoIlNpbGsiKXx8Xy5SYigiQW5kcm9pZCIpKX07Xy5oYz1mdW5jdGlvbigpe3JldHVybiBfLlRiKCk/Xy5LYigiQ2hyb21pdW0iKTooXy5SYigiQ2hyb21lIil8fF8uUmIoIkNyaU9TIikpJiYhKF8uVGIoKT8wOl8uUmIoIkVkZ2UiKSl8fF8uUmIoIlNpbGsiKX07a2M9ZnVuY3Rpb24oKXtyZXR1cm4gSWI/ISFfLkpiJiYhIV8uSmIucGxhdGZvcm06ITF9OwpsYz1mdW5jdGlvbigpe3JldHVybiBfLlJiKCJpUGhvbmUiKSYmIV8uUmIoImlQb2QiKSYmIV8uUmIoImlQYWQiKX07Xy5tYz1mdW5jdGlvbigpe3JldHVybiBrYygpP18uSmIucGxhdGZvcm09PT0ibWFjT1MiOl8uUmIoIk1hY2ludG9zaCIpfTtfLm5jPWZ1bmN0aW9uKCl7cmV0dXJuIGtjKCk/Xy5KYi5wbGF0Zm9ybT09PSJXaW5kb3dzIjpfLlJiKCJXaW5kb3dzIil9O18ucWM9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09bnVsbD8wOmM8MD9NYXRoLm1heCgwLGEubGVuZ3RoK2MpOmM7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gdHlwZW9mIGIhPT0ic3RyaW5nInx8Yi5sZW5ndGghPTE/LTE6YS5pbmRleE9mKGIsYyk7Zm9yKDtjPGEubGVuZ3RoO2MrKylpZihjIGluIGEmJmFbY109PT1iKXJldHVybiBjO3JldHVybi0xfTsKXy5yYz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5sZW5ndGgsZT10eXBlb2YgYT09PSJzdHJpbmciP2Euc3BsaXQoIiIpOmE7Zm9yKGxldCBmPTA7ZjxkO2YrKylmIGluIGUmJmIuY2FsbChjLGVbZl0sZixhKX07Xy52Yz1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFjKGEsYik+PTB9O18ueWM9ZnVuY3Rpb24oYSxiKXtiPV8ucWMoYSxiKTt2YXIgYzsoYz1iPj0wKSYmXy54YyhhLGIpO3JldHVybiBjfTtfLnhjPWZ1bmN0aW9uKGEsYil7QXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGEsYiwxKX07Xy5CYz1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aDtpZihiPjApe2xldCBjPUFycmF5KGIpO2ZvcihsZXQgZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTtGYz1mdW5jdGlvbihhKXtGY1siICJdKGEpO3JldHVybiBhfTsKXy5VYz1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPTApO0djKCk7Yj1IY1tiXTtmb3IodmFyIGM9QXJyYXkoTWF0aC5mbG9vcihhLmxlbmd0aC8zKSksZD1iWzY0XXx8IiIsZT0wLGY9MDtlPGEubGVuZ3RoLTI7ZSs9Myl7dmFyIGc9YVtlXSxoPWFbZSsxXSxrPWFbZSsyXSxtPWJbZz4+Ml07Zz1iWyhnJjMpPDw0fGg+PjRdO2g9YlsoaCYxNSk8PDJ8az4+Nl07az1iW2smNjNdO2NbZisrXT0iIittK2craCtrfW09MDtrPWQ7c3dpdGNoKGEubGVuZ3RoLWUpe2Nhc2UgMjptPWFbZSsxXSxrPWJbKG0mMTUpPDwyXXx8ZDtjYXNlIDE6YT1hW2VdLGNbZl09IiIrYlthPj4yXStiWyhhJjMpPDw0fG0+PjRdK2srZH1yZXR1cm4gYy5qb2luKCIiKX07Xy5XYz1mdW5jdGlvbihhKXt2YXIgYj1bXTtfLlZjKGEsZnVuY3Rpb24oYyl7Yi5wdXNoKGMpfSk7cmV0dXJuIGJ9OwpfLlZjPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYyhlKXtmb3IoO2Q8YS5sZW5ndGg7KXtsZXQgZj1hLmNoYXJBdChkKyspLGc9WGNbZl07aWYoZyE9bnVsbClyZXR1cm4gZztpZighL15bXHNceGEwXSokLy50ZXN0KGYpKXRocm93IEVycm9yKCJVbmtub3duIGJhc2U2NCBlbmNvZGluZyBhdCBjaGFyOiAiK2YpO31yZXR1cm4gZX1HYygpO2Zvcih2YXIgZD0wOzspe2xldCBlPWMoLTEpLGY9YygwKSxnPWMoNjQpLGg9Yyg2NCk7aWYoaD09PTY0JiZlPT09LTEpYnJlYWs7YihlPDwyfGY+PjQpO2chPTY0JiYoYihmPDw0JjI0MHxnPj4yKSxoIT02NCYmYihnPDw2JjE5MnxoKSl9fTsKR2M9ZnVuY3Rpb24oKXtpZighWGMpe1hjPXt9O3ZhciBhPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGI9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl07Zm9yKGxldCBjPTA7Yzw1O2MrKyl7bGV0IGQ9YS5jb25jYXQoYltjXS5zcGxpdCgiIikpO0hjW2NdPWQ7Zm9yKGxldCBlPTA7ZTxkLmxlbmd0aDtlKyspe2xldCBmPWRbZV07WGNbZl09PT12b2lkIDAmJihYY1tmXT1lKX19fX07ZmFhPWZ1bmN0aW9uKGEpe3JldHVybiBlYWFbYV18fCIifTtfLmFkPWZ1bmN0aW9uKGEpe2E9JGMudGVzdChhKT9hLnJlcGxhY2UoJGMsZmFhKTphO2E9YXRvYihhKTt2YXIgYj1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspYltjXT1hLmNoYXJDb2RlQXQoYyk7cmV0dXJuIGJ9O18uYmQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPW51bGwmJmEgaW5zdGFuY2VvZiBVaW50OEFycmF5fTsKXy5sZD1mdW5jdGlvbigpe3JldHVybiBjZHx8KGNkPW5ldyBfLmZkKG51bGwsXy5oZCkpfTttZD1mdW5jdGlvbihhKXt2YXIgYj1hLnFoO2lmKGI9PW51bGwpYT0iIjtlbHNlIGlmKHR5cGVvZiBiPT09InN0cmluZyIpYT1iO2Vsc2V7bGV0IGM9IiIsZD0wLGU9Yi5sZW5ndGgtMTAyNDA7Zm9yKDtkPGU7KWMrPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxiLnN1YmFycmF5KGQsZCs9MTAyNDApKTtjKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsZD9iLnN1YmFycmF5KGQpOmIpO2I9YnRvYShjKTthPWEucWg9Yn1yZXR1cm4gYX07Xy5xZD1mdW5jdGlvbihhKXtwZChfLmhkKTt2YXIgYj1hLnFoO2I9Yj09bnVsbHx8Xy5iZChiKT9iOnR5cGVvZiBiPT09InN0cmluZyI/Xy5hZChiKTpudWxsO3JldHVybiBiPT1udWxsP2I6YS5xaD1ifTtwZD1mdW5jdGlvbihhKXtpZihhIT09Xy5oZCl0aHJvdyBFcnJvcigiaWxsZWdhbCBleHRlcm5hbCBjYWxsZXIiKTt9OwpnYWE9YXN5bmMgZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IFByb21pc2UoKGMsZCk9Pnt2YXIgZT1uZXcgTWVzc2FnZUNoYW5uZWw7ZS5wb3J0Mi5vbm1lc3NhZ2U9Zj0+e2MoZi5kYXRhKX07dHJ5e2UucG9ydDEucG9zdE1lc3NhZ2UoYSxiKX1jYXRjaChmKXtkKGYpfX0pfTtfLnJkPWZ1bmN0aW9uKGEsYixjKXthLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mnx8KGEuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyPXt9KTthLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4MltiXT1jfTtzZD1mdW5jdGlvbigpe3ZhciBhPUVycm9yKCk7Xy5yZChhLCJzZXZlcml0eSIsImluY2lkZW50Iik7Xy5CYihhKX07Xy50ZD1mdW5jdGlvbihhKXthPUVycm9yKGEpO18ucmQoYSwic2V2ZXJpdHkiLCJ3YXJuaW5nIik7cmV0dXJuIGF9OwpfLnhkPWZ1bmN0aW9uKGEsYil7aWYoYSE9bnVsbCl7dmFyIGM9dWQ/Pyh1ZD17fSk7dmFyIGQ9Y1thXXx8MDtkPj1ifHwoY1thXT1kKzEsc2QoKSl9fTt5ZD1mdW5jdGlvbihhLGI9ITEpe3JldHVybiBiJiZTeW1ib2wuZm9yJiZhP1N5bWJvbC5mb3IoYSk6YSE9bnVsbD9TeW1ib2woYSk6U3ltYm9sKCl9O18uRGQ9ZnVuY3Rpb24oYSxiKXthW18uQ2RdfD1ifTtGZD1mdW5jdGlvbihhKXtpZig0JmEpcmV0dXJuIDUxMiZhPzUxMjoxMDI0JmE/MTAyNDowfTtfLkdkPWZ1bmN0aW9uKGEpe18uRGQoYSwzNCk7cmV0dXJuIGF9O0hkPWZ1bmN0aW9uKGEpe18uRGQoYSwzMik7cmV0dXJuIGF9O18uSWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGVuZ3RoPT0wP18ubGQoKTpuZXcgXy5mZChhLF8uaGQpfTtfLlFkPWZ1bmN0aW9uKGEpe3JldHVybiBhW0xkXT09PU1kfTsKXy5TZD1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09dm9pZCAwP2EuQWghPT1fLlJkJiYhISgyJihhLkxpW18uQ2RdfDApKTohISgyJmIpJiZhLkFoIT09Xy5SZH07Xy5WZD1mdW5jdGlvbihhLGIpe2EuQWg9Yj9fLlJkOnZvaWQgMH07Xy5XZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxiKX07Xy5YZD1mdW5jdGlvbihhLGIpe2lmKGEhPW51bGwpaWYodHlwZW9mIGE9PT0ic3RyaW5nIilhPWE/bmV3IF8uZmQoYSxfLmhkKTpfLmxkKCk7ZWxzZSBpZihhLmNvbnN0cnVjdG9yIT09Xy5mZClpZihfLmJkKGEpKWE9YS5sZW5ndGg/bmV3IF8uZmQobmV3IFVpbnQ4QXJyYXkoYSksXy5oZCk6Xy5sZCgpO2Vsc2V7aWYoIWIpdGhyb3cgRXJyb3IoKTthPXZvaWQgMH1yZXR1cm4gYX07Xy5ZZD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBiIT09Im51bWJlciJ8fGI8MHx8Yj49YS5sZW5ndGgpdGhyb3cgRXJyb3IoKTt9OwpaZD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBiIT09Im51bWJlciJ8fGI8MHx8Yj5hLmxlbmd0aCl0aHJvdyBFcnJvcigpO307Xy4kZD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YiYxMjg/MDotMSxlPWEubGVuZ3RoLGY7aWYoZj0hIWUpZj1hW2UtMV0sZj1mIT1udWxsJiZ0eXBlb2YgZj09PSJvYmplY3QiJiZmLmNvbnN0cnVjdG9yPT09T2JqZWN0O3ZhciBnPWUrKGY/LTE6MCk7Zm9yKGI9YiYxMjg/MTowO2I8ZztiKyspYyhiLWQsYVtiXSk7aWYoZil7YT1hW2UtMV07Zm9yKGxldCBoIGluIGEpXy5XZChhLGgpJiYhaXNOYU4oaCkmJmMoK2gsYVtoXSl9fTtfLmJlPWZ1bmN0aW9uKGEpe3JldHVybiBhJjEyOD9hZTp2b2lkIDB9O18uY2U9ZnVuY3Rpb24oYSl7YS5oVD0hMDtyZXR1cm4gYX07Cl8uZGU9ZnVuY3Rpb24oYSl7aWYoaGFhKGEpKXtpZighL15ccyooPzotP1sxLTldXGQqfDApP1xzKiQvLnRlc3QoYSkpdGhyb3cgRXJyb3IoU3RyaW5nKGEpKTt9ZWxzZSBpZihpYWEoYSkmJiFOdW1iZXIuaXNTYWZlSW50ZWdlcihhKSl0aHJvdyBFcnJvcihTdHJpbmcoYSkpO3JldHVybiBCaWdJbnQoYSl9O18uaGU9ZnVuY3Rpb24oYSl7dmFyIGI9YT4+PjA7Xy5lZT1iO18uZ2U9KGEtYikvNDI5NDk2NzI5Nj4+PjB9O18ua2U9ZnVuY3Rpb24oYSl7aWYoYTwwKXtfLmhlKDAtYSk7YT1fLmVlO3ZhciBiPV8uZ2U7Yj1+YjthP2E9fmErMTpiKz0xO2xldCBbYyxkXT1bYSxiXTtfLmVlPWM+Pj4wO18uZ2U9ZD4+PjB9ZWxzZSBfLmhlKGEpfTtfLm1lPWZ1bmN0aW9uKGEpe3ZhciBiPV8ubGV8fChfLmxlPW5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKTtiLnNldEZsb2F0NjQoMCwrYSwhMCk7Xy5lZT1iLmdldFVpbnQzMigwLCEwKTtfLmdlPWIuZ2V0VWludDMyKDQsITApfTsKb2U9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iKjQyOTQ5NjcyOTYrKGE+Pj4wKTtyZXR1cm4gTnVtYmVyLmlzU2FmZUludGVnZXIoYyk/YzpfLm5lKGEsYil9O18ucWU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5kZShCaWdJbnQuYXNJbnROKDY0LChCaWdJbnQuYXNVaW50TigzMixCaWdJbnQoYikpPDxCaWdJbnQoMzIpKStCaWdJbnQuYXNVaW50TigzMixCaWdJbnQoYSkpKSl9O18ubmU9ZnVuY3Rpb24oYSxiKXtiPj4+PTA7YT4+Pj0wO3ZhciBjO2I8PTIwOTcxNTE/Yz0iIisoNDI5NDk2NzI5NipiK2EpOmM9IiIrKEJpZ0ludChiKTw8QmlnSW50KDMyKXxCaWdJbnQoYSkpO3JldHVybiBjfTtfLnJlPWZ1bmN0aW9uKGEsYil7dmFyIGM7YiYyMTQ3NDgzNjQ4P2M9IiIrKEJpZ0ludChifDApPDxCaWdJbnQoMzIpfEJpZ0ludChhPj4+MCkpOmM9Xy5uZShhLGIpO3JldHVybiBjfTsKXy5zZT1mdW5jdGlvbihhKXthLmxlbmd0aDwxNj9fLmtlKE51bWJlcihhKSk6KGE9QmlnSW50KGEpLF8uZWU9TnVtYmVyKGEmQmlnSW50KDQyOTQ5NjcyOTUpKT4+PjAsXy5nZT1OdW1iZXIoYT4+QmlnSW50KDMyKSZCaWdJbnQoNDI5NDk2NzI5NSkpKX07Xy50ZT1mdW5jdGlvbihhLGI9YHVuZXhwZWN0ZWQgdmFsdWUgJHthfSFgKXt0aHJvdyBFcnJvcihiKTt9O18udWU9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ibnVtYmVyIil0aHJvdyBFcnJvcihgVmFsdWUgb2YgZmxvYXQvZG91YmxlIGZpZWxkIG11c3QgYmUgYSBudW1iZXIsIGZvdW5kICR7dHlwZW9mIGF9OiAke2F9YCk7cmV0dXJuIGF9O18udmU9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbHx8dHlwZW9mIGE9PT0ibnVtYmVyIilyZXR1cm4gYTtpZihhPT09Ik5hTiJ8fGE9PT0iSW5maW5pdHkifHxhPT09Ii1JbmZpbml0eSIpcmV0dXJuIE51bWJlcihhKX07CndlPWZ1bmN0aW9uKGEpe3JldHVybiBhLmRpc3BsYXlOYW1lfHxhLm5hbWV8fCJ1bmtub3duIHR5cGUgbmFtZSJ9O18uemU9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0iYm9vbGVhbiIpdGhyb3cgRXJyb3IoYEV4cGVjdGVkIGJvb2xlYW4gYnV0IGdvdCAke1hhKGEpfTogJHthfWApO3JldHVybiBhfTtfLkFlPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGx8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhO2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuISFhfTtfLkNlPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYmlnaW50IjpyZXR1cm4hMDtjYXNlICJudW1iZXIiOnJldHVybiBCZShhKTtjYXNlICJzdHJpbmciOnJldHVybiBqYWEudGVzdChhKTtkZWZhdWx0OnJldHVybiExfX07Xy5EZT1mdW5jdGlvbihhKXtpZighQmUoYSkpdGhyb3cgXy50ZCgiZW51bSIpO3JldHVybiBhfDB9OwpfLkVlPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsP2E6QmUoYSk/YXwwOnZvaWQgMH07Xy5GZT1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJudW1iZXIiKXRocm93IF8udGQoImludDMyIik7aWYoIUJlKGEpKXRocm93IF8udGQoImludDMyIik7cmV0dXJuIGF8MH07Xy5HZT1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBhO2lmKHR5cGVvZiBhPT09InN0cmluZyImJmEpYT0rYTtlbHNlIGlmKHR5cGVvZiBhIT09Im51bWJlciIpcmV0dXJuO3JldHVybiBCZShhKT9hfDA6dm9pZCAwfTtfLkhlPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciIpdGhyb3cgXy50ZCgidWludDMyIik7aWYoIUJlKGEpKXRocm93IF8udGQoInVpbnQzMiIpO3JldHVybiBhPj4+MH07Cl8uSmU9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4gQmUoYSk/YT4+PjA6dm9pZCAwfTsKXy5RZT1mdW5jdGlvbihhLGIpe2I/PyhiPTEwMjQpO2lmKCFfLkNlKGEpKXRocm93IF8udGQoImludDY0Iik7dmFyIGM9dHlwZW9mIGE7c3dpdGNoKGIpe2Nhc2UgNTEyOnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiBfLktlKGEpO2Nhc2UgImJpZ2ludCI6cmV0dXJuIFN0cmluZygoMCxfLkxlKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4gTWUoYSl9Y2FzZSAxMDI0OnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiBOZShhKTtjYXNlICJiaWdpbnQiOnJldHVybiBfLmRlKCgwLF8uTGUpKDY0LGEpKTtkZWZhdWx0OnJldHVybiBPZShhKX1jYXNlIDA6c3dpdGNoKGMpe2Nhc2UgInN0cmluZyI6cmV0dXJuIF8uS2UoYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gXy5kZSgoMCxfLkxlKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4gXy5QZShhKX1kZWZhdWx0OnJldHVybiBfLnRlKGIsIlVua25vd24gZm9ybWF0IHJlcXVlc3RlZCB0eXBlIGZvciBpbnQ2NCIpfX07Cl8uUGU9ZnVuY3Rpb24oYSl7Xy5DZShhKTthPSgwLF8uUmUpKGEpO2lmKCEoMCxfLlVlKShhKSl7Xy5rZShhKTt2YXIgYj1fLmVlLGM9Xy5nZTtpZihhPWMmMjE0NzQ4MzY0OCliPX5iKzE+Pj4wLGM9fmM+Pj4wLGI9PTAmJihjPWMrMT4+PjApO2I9b2UoYixjKTthPXR5cGVvZiBiPT09Im51bWJlciI/YT8tYjpiOmE/Ii0iK2I6Yn1yZXR1cm4gYX07Xy5WZT1mdW5jdGlvbihhKXtfLkNlKGEpO2E9KDAsXy5SZSkoYSk7YT49MCYmKDAsXy5VZSkoYSl8fChfLmtlKGEpLGE9b2UoXy5lZSxfLmdlKSk7cmV0dXJuIGF9O01lPWZ1bmN0aW9uKGEpe18uQ2UoYSk7YT0oMCxfLlJlKShhKTsoMCxfLlVlKShhKT9hPVN0cmluZyhhKTooXy5rZShhKSxhPV8ucmUoXy5lZSxfLmdlKSk7cmV0dXJuIGF9OwpfLktlPWZ1bmN0aW9uKGEpe18uQ2UoYSk7dmFyIGI9KDAsXy5SZSkoTnVtYmVyKGEpKTtpZigoMCxfLlVlKShiKSlyZXR1cm4gU3RyaW5nKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtiPWEubGVuZ3RoOyhhWzBdPT09Ii0iP2I8MjB8fGI9PT0yMCYmYTw9Ii05MjIzMzcyMDM2ODU0Nzc1ODA4IjpiPDE5fHxiPT09MTkmJmE8PSI5MjIzMzcyMDM2ODU0Nzc1ODA3Iil8fChfLnNlKGEpLGE9Xy5yZShfLmVlLF8uZ2UpKTtyZXR1cm4gYX07TmU9ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy5SZSkoTnVtYmVyKGEpKTtpZigoMCxfLlVlKShiKSlyZXR1cm4gXy5kZShiKTtiPWEuaW5kZXhPZigiLiIpO2IhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxiKSk7cmV0dXJuIF8uZGUoKDAsXy5MZSkoNjQsQmlnSW50KGEpKSl9O09lPWZ1bmN0aW9uKGEpe3JldHVybigwLF8uVWUpKGEpP18uZGUoXy5QZShhKSk6Xy5kZShNZShhKSl9OwpfLldlPWZ1bmN0aW9uKGEpe18uQ2UoYSk7dmFyIGI9KDAsXy5SZSkoTnVtYmVyKGEpKTtpZigoMCxfLlVlKShiKSYmYj49MClyZXR1cm4gU3RyaW5nKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTthWzBdPT09Ii0iP2I9ITE6KGI9YS5sZW5ndGgsYj1iPDIwPyEwOmI9PT0yMCYmYTw9IjE4NDQ2NzQ0MDczNzA5NTUxNjE1Iik7Ynx8KF8uc2UoYSksYT1fLm5lKF8uZWUsXy5nZSkpO3JldHVybiBhfTtfLlhlPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO2lmKGE9PW51bGwpcmV0dXJuIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBTdHJpbmcoKDAsXy5MZSkoNjQsYSkpO2lmKF8uQ2UoYSkpcmV0dXJuIGI9PT0ic3RyaW5nIj9fLktlKGEpOl8uUGUoYSl9OwpfLlllPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO2lmKGE9PW51bGwpcmV0dXJuIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBfLmRlKCgwLF8uTGUpKDY0LGEpKTtpZihfLkNlKGEpKXJldHVybiBiPT09InN0cmluZyI/TmUoYSk6T2UoYSl9O18uJGU9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7aWYoYT09bnVsbClyZXR1cm4gYTtpZihiPT09ImJpZ2ludCIpcmV0dXJuIFN0cmluZygoMCxfLlplKSg2NCxhKSk7aWYoXy5DZShhKSlyZXR1cm4gYj09PSJzdHJpbmciP18uV2UoYSk6Xy5WZShhKX07Xy5hZj1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBhO3ZhciBiPXR5cGVvZiBhO2lmKGI9PT0iYmlnaW50IilyZXR1cm4gU3RyaW5nKCgwLF8uTGUpKDY0LGEpKTtpZihfLkNlKGEpKXtpZihiPT09InN0cmluZyIpcmV0dXJuIF8uS2UoYSk7aWYoYj09PSJudW1iZXIiKXJldHVybiBfLlBlKGEpfX07Cl8uYmY9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigpO3JldHVybiBhfTtfLmNmPWZ1bmN0aW9uKGEpe2lmKGEhPW51bGwmJnR5cGVvZiBhIT09InN0cmluZyIpdGhyb3cgRXJyb3IoKTtyZXR1cm4gYX07Xy5kZj1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbHx8dHlwZW9mIGE9PT0ic3RyaW5nIj9hOnZvaWQgMH07ZWY9ZnVuY3Rpb24oYSxiKXtpZighKGEgaW5zdGFuY2VvZiBiKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWQgaW5zdGFuY2VvZiAke3dlKGIpfSBidXQgZ290ICR7YSYmd2UoYS5jb25zdHJ1Y3Rvcil9YCk7cmV0dXJuIGF9O2hmPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEhPW51bGwmJl8uUWQoYSkpcmV0dXJuIGE7aWYoIUFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGM/ZCYyP2JbXy5mZl18fChiW18uZmZdPV8uZ2YoYikpOm5ldyBiOnZvaWQgMDtjPWFbXy5DZF18MDtkPWN8ZCYzMnxkJjI7ZCE9PWMmJihhW18uQ2RdPWQpO3JldHVybiBuZXcgYihhKX07Cl8uZ2Y9ZnVuY3Rpb24oYSl7YT1uZXcgYTtfLkdkKGEuTGkpO3JldHVybiBhfTtqZj1mdW5jdGlvbihhKXtyZXR1cm4gYX07Xy5sZj1mdW5jdGlvbihhKXt2YXIgYj1fLnBiKF8ua2YpO3JldHVybiBiP2FbYl06dm9pZCAwfTtfLm1mPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIGluIGEpXy5XZChhLGMpJiYhaXNOYU4oYykmJmIoYSwrYyxhW2NdKX07a2FhPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLm5mO18ubWYoYSwoYyxkLGUpPT57YltkXT1bLi4uZV19KTtiLk9CPWEuT0I7cmV0dXJuIGJ9O18ucGY9ZnVuY3Rpb24oYSxiLGMpe2lmKF8ucGIoXy5vZikmJl8ucGIoXy5rZikmJmM9PT1fLm9mJiYoYT1hLkxpLGM9YVtfLmtmXSkmJihjPWMuT0IpKXRyeXtjKGEsYixsYWEpfWNhdGNoKGQpe18uQmIoZCl9fTtfLnFmPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5wYihfLmtmKTtjJiZhW2NdPy5bYl0hPW51bGwmJl8ueGQobWFhLDMpfTsKb2FhPWZ1bmN0aW9uKGEsYil7YjwxMDB8fF8ueGQobmFhLDEpfTsKc2Y9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZCE9PXZvaWQgMDtkPSEhZDt2YXIgZj1fLnBiKF8ua2YpLGc7IWUmJmYmJihnPWFbZl0pJiZfLm1mKGcsb2FhKTtmPVtdO3ZhciBoPWEubGVuZ3RoO2c9NDI5NDk2NzI5NTt2YXIgaz0hMSxtPSEhKGImNjQpLHA9bT9iJjEyOD8wOi0xOnZvaWQgMDtpZighKGImMSkpe3ZhciBxPWgmJmFbaC0xXTtxIT1udWxsJiZ0eXBlb2YgcT09PSJvYmplY3QiJiZxLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhoLS0sZz1oKTpxPXZvaWQgMDshbXx8YiYxMjh8fGV8fChrPSEwLGc9KHJmPz9qZikoZy1wLHAsYSxxLHZvaWQgMCkrcCl9Yj12b2lkIDA7Zm9yKHZhciB1PTA7dTxoO3UrKyl7bGV0IHg9YVt1XTtpZih4IT1udWxsJiYoeD1jKHgsZCkpIT1udWxsKWlmKG0mJnU+PWcpe2xldCB6PXUtcDsoYj8/KGI9e30pKVt6XT14fWVsc2UgZlt1XT14fWlmKHEpZm9yKGxldCB4IGluIHEpe2lmKCFfLldkKHEseCkpY29udGludWU7aD1xW3hdO2lmKGg9PW51bGx8fAooaD1jKGgsZCkpPT1udWxsKWNvbnRpbnVlO3U9K3g7bGV0IHo7bSYmIU51bWJlci5pc05hTih1KSYmKHo9dStwKTxnP2Zbel09aDooYj8/KGI9e30pKVt4XT1ofWImJihrP2YucHVzaChiKTpmW2ddPWIpO2UmJl8ucGIoXy5rZikmJihhPV8ubGYoYSkpJiZhIGluc3RhbmNlb2YgXy5uZiYmKGZbXy5rZl09a2FhKGEpKTtyZXR1cm4gZn07CnVmPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAibnVtYmVyIjpyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGEpP2E6IiIrYTtjYXNlICJiaWdpbnQiOnJldHVybigwLF8udGYpKGEpP051bWJlcihhKToiIithO2Nhc2UgImJvb2xlYW4iOnJldHVybiBhPzE6MDtjYXNlICJvYmplY3QiOmlmKEFycmF5LmlzQXJyYXkoYSkpe2xldCBiPWFbXy5DZF18MDtyZXR1cm4gYS5sZW5ndGg9PT0wJiZiJjE/dm9pZCAwOnNmKGEsYix1Zil9aWYoYSE9bnVsbCYmXy5RZChhKSlyZXR1cm4gdmYoYSk7aWYoYSBpbnN0YW5jZW9mIF8uZmQpcmV0dXJuIG1kKGEpO3JldHVybn1yZXR1cm4gYX07Xy53Zj1mdW5jdGlvbihhLGIpe2lmKGIpe3JmPWI9PW51bGx8fGI9PT1qZnx8YltwYWFdIT09cWFhP2pmOmI7dHJ5e3JldHVybiB2ZihhKX1maW5hbGx5e3JmPXZvaWQgMH19cmV0dXJuIHZmKGEpfTt2Zj1mdW5jdGlvbihhKXthPWEuTGk7cmV0dXJuIHNmKGEsYVtfLkNkXXwwLHVmKX07Cl8uemY9ZnVuY3Rpb24oYSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJib29sZWFuIjpyZXR1cm4gXy54Znx8KF8ueGY9WzAsdm9pZCAwLCEwXSk7Y2FzZSAibnVtYmVyIjpyZXR1cm4gYT4wP3ZvaWQgMDphPT09MD95Znx8KHlmPVswLHZvaWQgMF0pOlstYSx2b2lkIDBdO2Nhc2UgInN0cmluZyI6cmV0dXJuWzAsYV07Y2FzZSAib2JqZWN0IjpyZXR1cm4gYX19O18uRGY9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQ2YoYSxiWzBdLGJbMV0pfTsKQ2Y9ZnVuY3Rpb24oYSxiLGMsZD0wKXtpZihhPT1udWxsKXt2YXIgZT0zMjtjPyhhPVtjXSxlfD0xMjgpOmE9W107YiYmKGU9ZSYtMTY3NjA4MzN8KGImMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KGEpKXRocm93IEVycm9yKCJuYXJyIik7ZT1hW18uQ2RdfDA7aWYoRWYmJjEmZSl0aHJvdyBFcnJvcigicmZhcnIiKTsyMDQ4JmUmJiEoMiZlKSYmcmFhKCk7aWYoZSYyNTYpdGhyb3cgRXJyb3IoImZhcnIiKTtpZihlJjY0KXJldHVybihlfGQpIT09ZSYmKGFbXy5DZF09ZXxkKSxhO2lmKGMmJihlfD0xMjgsYyE9PWFbMF0pKXRocm93IEVycm9yKCJtaWQiKTthOntjPWE7ZXw9NjQ7dmFyIGY9Yy5sZW5ndGg7aWYoZil7dmFyIGc9Zi0xO2xldCBrPWNbZ107aWYoayE9bnVsbCYmdHlwZW9mIGs9PT0ib2JqZWN0IiYmay5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yj1lJjEyOD8wOi0xO2ctPWI7aWYoZz49MTAyNCl0aHJvdyBFcnJvcigicHZ0bG10Iik7Zm9yKHZhciBoIGluIGspe2lmKCFfLldkKGssCmgpKWNvbnRpbnVlO2Y9K2g7aWYoZjxnKWNbZitiXT1rW2hdLGRlbGV0ZSBrW2hdO2Vsc2UgYnJlYWt9ZT1lJi0xNjc2MDgzM3woZyYxMDIzKTw8MTQ7YnJlYWsgYX19aWYoYil7aD1NYXRoLm1heChiLGYtKGUmMTI4PzA6LTEpKTtpZihoPjEwMjQpdGhyb3cgRXJyb3IoInNwdnQiKTtlPWUmLTE2NzYwODMzfChoJjEwMjMpPDwxNH19fWFbXy5DZF09ZXw2NHxkO3JldHVybiBhfTtyYWE9ZnVuY3Rpb24oKXtpZihFZil0aHJvdyBFcnJvcigiY2FyciIpO18ueGQoc2FhLDUpfTsKdGFhPWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4gYTtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgYz1hW18uQ2RdfDA7YS5sZW5ndGg9PT0wJiZjJjE/YT12b2lkIDA6YyYyfHwoIWJ8fDQwOTYmY3x8MTYmYz9hPV8uRmYoYSxjLCExLGImJiEoYyYxNikpOihfLkRkKGEsMzQpLGMmNCYmT2JqZWN0LmZyZWV6ZShhKSkpO3JldHVybiBhfWlmKGEhPW51bGwmJl8uUWQoYSkpcmV0dXJuIGI9YS5MaSxjPWJbXy5DZF18MCxfLlNkKGEsYyk/YTpfLkdmKGEsYixjKT9IZihhLGIpOl8uRmYoYixjKTtpZihhIGluc3RhbmNlb2YgXy5mZClyZXR1cm4gYX07SGY9ZnVuY3Rpb24oYSxiLGMpe2E9bmV3IGEuY29uc3RydWN0b3IoYik7YyYmXy5WZChhLCEwKTthLnhCPV8uUmQ7cmV0dXJuIGF9O18uRmY9ZnVuY3Rpb24oYSxiLGMsZCl7ZD8/KGQ9ISEoMzQmYikpO2E9c2YoYSxiLHRhYSxkKTtkPTMyO2MmJihkfD0yKTtiPWImMTY3NjkyMTd8ZDthW18uQ2RdPWI7cmV0dXJuIGF9OwpfLklmPWZ1bmN0aW9uKGEpe3ZhciBiPWEuTGksYz1iW18uQ2RdfDA7cmV0dXJuIF8uU2QoYSxjKT9fLkdmKGEsYixjKT9IZihhLGIsITApOm5ldyBhLmNvbnN0cnVjdG9yKF8uRmYoYixjLCExKSk6YX07Xy5KZj1mdW5jdGlvbihhKXtpZihhLkFoIT09Xy5SZClyZXR1cm4hMTt2YXIgYj1hLkxpO2I9Xy5GZihiLGJbXy5DZF18MCk7Xy5EZChiLDIwNDgpO2EuTGk9YjtfLlZkKGEsITEpO2EueEI9dm9pZCAwO3JldHVybiEwfTtfLkxmPWZ1bmN0aW9uKGEpe2lmKCFfLkpmKGEpJiZfLlNkKGEsYS5MaVtfLkNkXXwwKSl0aHJvdyBFcnJvcigpO307Xy5NZj1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWFbXy5DZF18MCk7YiYzMiYmIShiJjQwOTYpJiYoYVtfLkNkXT1ifDQwOTYpfTtfLkdmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYyYyPyEwOmMmMzImJiEoYyY0MDk2KT8oYltfLkNkXT1jfDIsXy5WZChhLCEwKSwhMCk6ITF9OwpfLk9mPWZ1bmN0aW9uKGEsYixjLGQsZSl7T2JqZWN0LmlzRXh0ZW5zaWJsZShhKTtiPV8uTmYoYS5MaSxiLGMsZSk7aWYoYiE9PW51bGx8fGQmJmEueEIhPT1fLlJkKXJldHVybiBifTtfLk5mPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGI9PT0tMSlyZXR1cm4gbnVsbDt2YXIgZT1iKyhjPzA6LTEpLGY9YS5sZW5ndGgtMTtpZighKGY8MSsoYz8wOi0xKSkpe2lmKGU+PWYpe3ZhciBnPWFbZl07aWYoZyE9bnVsbCYmdHlwZW9mIGc9PT0ib2JqZWN0IiYmZy5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yz1nW2JdO3ZhciBoPSEwfWVsc2UgaWYoZT09PWYpYz1nO2Vsc2UgcmV0dXJufWVsc2UgYz1hW2VdO2lmKGQmJmMhPW51bGwpe2Q9ZChjKTtpZihkPT1udWxsKXJldHVybiBkO2lmKCFPYmplY3QuaXMoZCxjKSlyZXR1cm4gaD9nW2JdPWQ6YVtlXT1kLGR9cmV0dXJuIGN9fTtfLlFmPWZ1bmN0aW9uKGEsYixjLGQpe18uTGYoYSk7dmFyIGU9YS5MaTtfLlBmKGUsZVtfLkNkXXwwLGIsYyxkKTtyZXR1cm4gYX07Cl8uUGY9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1jKyhlPzA6LTEpLGc9YS5sZW5ndGgtMTtpZihnPj0xKyhlPzA6LTEpJiZmPj1nKXtsZXQgaD1hW2ddO2lmKGghPW51bGwmJnR5cGVvZiBoPT09Im9iamVjdCImJmguY29uc3RydWN0b3I9PT1PYmplY3QpcmV0dXJuIGhbY109ZCxifWlmKGY8PWcpcmV0dXJuIGFbZl09ZCxiO2QhPT12b2lkIDAmJihnPShiPz8oYj1hW18uQ2RdfDApKT4+MTQmMTAyM3x8NTM2ODcwOTEyLGM+PWc/ZCE9bnVsbCYmKGFbZysoZT8wOi0xKV09e1tjXTpkfSk6YVtmXT1kKTtyZXR1cm4gYn07Xy5TZj1mdW5jdGlvbihhLGIsYyxkKXthPWEuTGk7cmV0dXJuIF8uUmYoYSxhW18uQ2RdfDAsYixjLGQpIT09dm9pZCAwfTtfLldmPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uVmYoYSxhW18uQ2RdfDAsYil9O18uWWY9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuTGk7cmV0dXJuIF8uWGYoYSxkLGRbXy5DZF18MCxiLGMsMykubGVuZ3RofTsKXy4kZj1mdW5jdGlvbihhLGIsYyxkLGUpe18uWmYoYSxiLGMsdm9pZCAwLGUsZCwxKTtyZXR1cm4gYX07Xy5jZz1mdW5jdGlvbigpe3JldHVybiB2b2lkIDA9PT11YWE/Mjo0fTsKXy5qZz1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD1hLkxpLGs9aFtfLkNkXXwwO2Q9Xy5TZChhLGspPzE6ZDtlPSEhZXx8ZD09PTM7ZD09PTImJl8uSmYoYSkmJihoPWEuTGksaz1oW18uQ2RdfDApO3ZhciBtPWRnKGgsYixnKSxwPW09PT1fLmVnPzc6bVtfLkNkXXwwLHE9ZmcocCxrKTt2YXIgdT1xOzQmdT9mPT1udWxsP2E9ITE6KCFlJiZmPT09MCYmKDUxMiZ1fHwxMDI0JnUpJiYoYS5jb25zdHJ1Y3RvcltnZ109KGEuY29uc3RydWN0b3JbZ2ddfDApKzEpPDUmJnNkKCksYT1mPT09MD8hMTohKGYmdSkpOmE9ITA7aWYoYSl7NCZxJiYobT1bLi4ubV0scD0wLHE9aGcocSxrKSxrPV8uUGYoaCxrLGIsbSxnKSk7bGV0IHg9dT0wO2Zvcig7dTxtLmxlbmd0aDt1Kyspe2xldCB6PWMobVt1XSk7eiE9bnVsbCYmKG1beCsrXT16KX14PHUmJihtLmxlbmd0aD14KTtjPShxfDQpJi01MTM7cT1jJj0tMTAyNTtmJiYocXw9Zik7cSY9LTQwOTd9cSE9PXAmJihtW18uQ2RdPXEsMiZxJiZPYmplY3QuZnJlZXplKG0pKTsKcmV0dXJuIG09aWcobSxxLGgsayxiLGcsZCxhLGUpfTtpZz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayl7dmFyIG09YjtnPT09MXx8KGchPT00PzA6MiZifHwhKDE2JmIpJiYzMiZkKT9rZyhiKXx8KGJ8PSFhLmxlbmd0aHx8aCYmISg0MDk2JmIpfHwzMiZkJiYhKDQwOTYmYnx8MTYmYik/MjoyNTYsYiE9PW0mJihhW18uQ2RdPWIpLE9iamVjdC5mcmVlemUoYSkpOihnPT09MiYma2coYikmJihhPVsuLi5hXSxtPTAsYj1oZyhiLGQpLGQ9Xy5QZihjLGQsZSxhLGYpKSxrZyhiKXx8KGt8fChifD0xNiksYiE9PW0mJihhW18uQ2RdPWIpKSk7MiZifHwhKDQwOTYmYnx8MTYmYil8fF8uTWYoYyxkKTtyZXR1cm4gYX07ZGc9ZnVuY3Rpb24oYSxiLGMpe2E9Xy5OZihhLGIsYyk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpfLmVnfTtmZz1mdW5jdGlvbihhLGIpezImYiYmKGF8PTIpO3JldHVybiBhfDF9O2tnPWZ1bmN0aW9uKGEpe3JldHVybiEhKDImYSkmJiEhKDQmYSl8fCEhKDI1NiZhKX07Cl8ubGc9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uWGQoYSwhMCl9O18ubWc9ZnVuY3Rpb24oYSxiKXthPV8uT2YoYSxiLHZvaWQgMCx2b2lkIDAsXy5sZyk7cmV0dXJuIGE9PW51bGw/Xy5sZCgpOmF9OwpfLm5nPWZ1bmN0aW9uKGEsYixjLGQpe18uTGYoYSk7dmFyIGU9YS5MaSxmPWVbXy5DZF18MDtpZihjPT1udWxsKXJldHVybiBfLlBmKGUsZixiKSxhO2lmKCFBcnJheS5pc0FycmF5KGMpKXRocm93IF8udGQoKTt2YXIgZz1jPT09Xy5lZz83OmNbXy5DZF18MCxoPWcsaz1rZyhnKSxtPWt8fE9iamVjdC5pc0Zyb3plbihjKTtrfHwoZz0wKTttfHwoYz1bLi4uY10saD0wLGc9aGcoZyxmKSxtPSExKTtnfD01O2s9RmQoZyk/PzEwMjQ7Z3w9aztmb3IobGV0IHA9MDtwPGMubGVuZ3RoO3ArKyl7bGV0IHE9Y1twXSx1PWQocSxrKTtPYmplY3QuaXMocSx1KXx8KG0mJihjPVsuLi5jXSxoPTAsZz1oZyhnLGYpLG09ITEpLGNbcF09dSl9ZyE9PWgmJihtJiYoYz1bLi4uY10sZz1oZyhnLGYpKSxjW18uQ2RdPWcpO18uUGYoZSxmLGIsYyk7cmV0dXJuIGF9OwpvZz1mdW5jdGlvbihhLGIsYyxkKXtfLkxmKGEpO3ZhciBlPWEuTGk7Xy5QZihlLGVbXy5DZF18MCxiLChkPT09IjAiP051bWJlcihjKT09PTA6Yz09PWQpP3ZvaWQgMDpjKTtyZXR1cm4gYX07Xy5WZj1mdW5jdGlvbihhLGIsYyl7aWYoYiYyKXRocm93IEVycm9yKCk7dmFyIGQ9Xy5iZShiKSxlPWRnKGEsYyxkKSxmPWU9PT1fLmVnPzc6ZVtfLkNkXXwwLGc9ZmcoZixiKTtpZigyJmd8fGtnKGcpfHwxNiZnKWc9PT1mfHxrZyhnKXx8KGVbXy5DZF09ZyksZT1bLi4uZV0sZj0wLGc9aGcoZyxiKSxfLlBmKGEsYixjLGUsZCk7ZyY9LTEzO2chPT1mJiYoZVtfLkNkXT1nKTtyZXR1cm4gZX07Xy5zZz1mdW5jdGlvbihhLGIsYyxkKXtfLkxmKGEpO2E9YS5MaTt2YXIgZT1hW18uQ2RdfDA7aWYoZD09bnVsbCl7bGV0IGY9cGcoYSk7aWYocWcoZixhLGUsYyk9PT1iKWYuc2V0KGMsMCk7ZWxzZSByZXR1cm59ZWxzZSBlPV8ucmcoYSxlLGMsYik7Xy5QZihhLGUsYixkKX07Cl8udGc9ZnVuY3Rpb24oYSxiLGMpe2E9YS5MaTtyZXR1cm4gcWcocGcoYSksYSx2b2lkIDAsYik9PT1jP2M6LTF9O3BnPWZ1bmN0aW9uKGEpe3JldHVybiBhW3VnXT8/KGFbdWddPW5ldyBNYXApfTtfLnJnPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZD09PTB8fGMuaW5jbHVkZXMoZCk7dmFyIGY9cGcoYSksZz1xZyhmLGEsYixjLGUpO2chPT1kJiYoZyYmKGI9Xy5QZihhLGIsZyx2b2lkIDAsZSkpLGYuc2V0KGMsZCkpO3JldHVybiBifTtxZz1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPWEuZ2V0KGQpO2lmKGYhPW51bGwpcmV0dXJuIGY7Zj0wO2ZvcihsZXQgZz0wO2c8ZC5sZW5ndGg7ZysrKXtsZXQgaD1kW2ddO18uTmYoYixoLGUpIT1udWxsJiYoZiE9PTAmJihjPV8uUGYoYixjLGYsdm9pZCAwLGUpKSxmPWgpfWEuc2V0KGQsZik7cmV0dXJuIGZ9OwpfLndnPWZ1bmN0aW9uKGEsYixjLGQsZSl7Xy5MZihhKTthPWEuTGk7dmFyIGY9YVtfLkNkXXwwLGc9Xy5OZihhLGMsZSk7ZD1kPT09Xy52ZztiPWhmKGcsYiwhZCxmKTtpZighZHx8YilyZXR1cm4gYj1fLklmKGIpLGchPT1iJiYoZj1fLlBmKGEsZixjLGIsZSksXy5NZihhLGYpKSxifTtfLnpnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hW18uQ2RdfDAsZT1fLmJlKGQpLGY9Xy5OZihhLGMsZSk7aWYoZiE9bnVsbCYmXy5RZChmKSl7aWYoIV8uU2QoZikpcmV0dXJuIF8uSmYoZiksZi5MaTt2YXIgZz1mLkxpfWVsc2UgQXJyYXkuaXNBcnJheShmKSYmKGc9Zik7aWYoZyl7bGV0IGg9Z1tfLkNkXXwwO2gmMiYmKGc9Xy5GZihnLGgpKX1nPV8uRGYoZyxiKTtnIT09ZiYmXy5QZihhLGQsYyxnLGUpO3JldHVybiBnfTsKXy5SZj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSExO2Q9Xy5OZihhLGQsZSxnPT57dmFyIGg9aGYoZyxjLCExLGIpO2Y9aCE9PWcmJmghPW51bGw7cmV0dXJuIGh9KTtpZihkIT1udWxsKXJldHVybiBmJiYhXy5TZChkKSYmXy5NZihhLGIpLGR9O18uRz1mdW5jdGlvbihhLGIsYyxkKXthPWEuTGk7cmV0dXJuIF8uUmYoYSxhW18uQ2RdfDAsYixjLGQpfHxiW18uZmZdfHwoYltfLmZmXT1fLmdmKGIpKX07Xy5BZz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLkxpLGY9ZVtfLkNkXXwwO2I9Xy5SZihlLGYsYixjLGQpO2lmKGI9PW51bGwpcmV0dXJuIGI7Zj1lW18uQ2RdfDA7aWYoIV8uU2QoYSxmKSl7bGV0IGc9Xy5JZihiKTtnIT09YiYmKF8uSmYoYSkmJihlPWEuTGksZj1lW18uQ2RdfDApLGI9ZyxmPV8uUGYoZSxmLGMsYixkKSxfLk1mKGUsZikpfXJldHVybiBifTsKXy5CZz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLkxpO3JldHVybiBfLlhmKGEsZSxlW18uQ2RdfDAsYixjLDEsZCl9OwpfLlhmPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxrKXt2YXIgbT1fLlNkKGEsYyk7Zj1tPzE6ZjtoPSEhaHx8Zj09PTM7bT1rJiYhbTsoZj09PTJ8fG0pJiZfLkpmKGEpJiYoYj1hLkxpLGM9YltfLkNkXXwwKTthPWRnKGIsZSxnKTt2YXIgcD1hPT09Xy5lZz83OmFbXy5DZF18MCxxPWZnKHAsYyk7aWYoaz0hKDQmcSkpe3ZhciB1PWEseD1jO2xldCB6PSEhKDImcSk7eiYmKHh8PTIpO2xldCBCPSF6LEs9ITAsTz0wLEE9MDtmb3IoO088dS5sZW5ndGg7TysrKXtsZXQgUT1oZih1W09dLGQsITEseCk7aWYoUSBpbnN0YW5jZW9mIGQpe2lmKCF6KXtsZXQgY2E9Xy5TZChRKTtCJiYoQj0hY2EpO0smJihLPWNhKX11W0ErK109UX19QTxPJiYodS5sZW5ndGg9QSk7cXw9NDtxPUs/cSYtNDA5NzpxfDQwOTY7cT1CP3F8ODpxJi05fXEhPT1wJiYoYVtfLkNkXT1xLDImcSYmT2JqZWN0LmZyZWV6ZShhKSk7aWYobSYmISg4JnF8fCFhLmxlbmd0aCYmKGY9PT0xfHwoZiE9PTQ/MDoyJnF8fCEoMTYmCnEpJiYzMiZjKSkpKXtrZyhxKSYmKGE9Wy4uLmFdLHE9aGcocSxjKSxjPV8uUGYoYixjLGUsYSxnKSk7ZD1hO209cTtmb3IocD0wO3A8ZC5sZW5ndGg7cCsrKXU9ZFtwXSxxPV8uSWYodSksdSE9PXEmJihkW3BdPXEpO218PTg7cT1tPWQubGVuZ3RoP218NDA5NjptJi00MDk3O2FbXy5DZF09cX1yZXR1cm4gYT1pZyhhLHEsYixjLGUsZyxmLGssaCl9O18uQ2c9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuTGk7cmV0dXJuIF8uWGYoYSxkLGRbXy5DZF18MCxiLGMsXy5jZygpLHZvaWQgMCwhMSwhMCl9O0RnPWZ1bmN0aW9uKGEsYil7YSE9bnVsbD9lZihhLGIpOmE9dm9pZCAwO3JldHVybiBhfTtfLkVnPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZD1EZyhkLGIpO18uUWYoYSxjLGQsZSk7ZCYmIV8uU2QoZCkmJl8uTWYoYS5MaSk7cmV0dXJuIGF9O18uRmc9ZnVuY3Rpb24oYSxiLGMsZCxlKXtlPURnKGUsYik7Xy5zZyhhLGMsZCxlKTtlJiYhXy5TZChlKSYmXy5NZihhLkxpKTtyZXR1cm4gYX07Cl8uR2c9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5MZihhKTt2YXIgZT1hLkxpLGY9ZVtfLkNkXXwwO2lmKGQ9PW51bGwpcmV0dXJuIF8uUGYoZSxmLGMpLGE7aWYoIUFycmF5LmlzQXJyYXkoZCkpdGhyb3cgXy50ZCgpO3ZhciBnPWQ9PT1fLmVnPzc6ZFtfLkNkXXwwLGg9ZyxrPWtnKGcpLG09a3x8T2JqZWN0LmlzRnJvemVuKGQpLHA9ITAscT0hMDtmb3IobGV0IHg9MDt4PGQubGVuZ3RoO3grKyl7dmFyIHU9ZFt4XTtlZih1LGIpO2t8fCh1PV8uU2QodSkscCYmKHA9IXUpLHEmJihxPXUpKX1rfHwoZz1wPzEzOjUsZz1xP2cmLTQwOTc6Z3w0MDk2KTttJiZnPT09aHx8KGQ9Wy4uLmRdLGg9MCxnPWhnKGcsZikpO2chPT1oJiYoZFtfLkNkXT1nKTtmPV8uUGYoZSxmLGMsZCk7MiZnfHwhKDQwOTYmZ3x8MTYmZyl8fF8uTWYoZSxmKTtyZXR1cm4gYX07aGc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT0oMiZiP2F8MjphJi0zKSYtMjczfTsKXy5IZz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayxtKXtfLkxmKGEpO2I9Xy5qZyhhLGIsZiwyLCEwLHZvaWQgMCxnKTtmPUZkKGI9PT1fLmVnPzc6YltfLkNkXXwwKT8/MTAyNDtpZihrKWlmKEFycmF5LmlzQXJyYXkoZCkpZm9yKGU9ZC5sZW5ndGgsaD0wO2g8ZTtoKyspYi5wdXNoKGMoZFtoXSxmKSk7ZWxzZSBmb3IobGV0IHAgb2YgZCliLnB1c2goYyhwLGYpKTtlbHNlIGgmJm0/KGU/PyhlPWIubGVuZ3RoLTEpLF8uWWQoYixlKSxiLnNwbGljZShlLGgpKTooaCYmWmQoYixlKSxlIT12b2lkIDA/Yi5zcGxpY2UoZSxoLGMoZCxmKSk6Yi5wdXNoKGMoZCxmKSkpO3JldHVybiBhfTsKXy5aZj1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe18uTGYoYSk7dmFyIGs9YS5MaTthPV8uWGYoYSxrLGtbXy5DZF18MCxjLGIsMixkLCEwKTtpZihnJiZoKWY/PyhmPWEubGVuZ3RoLTEpLF8uWWQoYSxmKSxhLnNwbGljZShmLGcpLGEubGVuZ3RofHwoYVtfLkNkXSY9LTQwOTcpO2Vsc2UgcmV0dXJuIGc/KFpkKGEsZiksZWYoZSxjKSk6ZT1lIT1udWxsP2VmKGUsYyk6bmV3IGMsZiE9dm9pZCAwP2Euc3BsaWNlKGYsZyxlKTphLnB1c2goZSksZj1jPWE9PT1fLmVnPzc6YVtfLkNkXXwwLChnPV8uU2QoZSkpPyhjJj0tOSxhLmxlbmd0aD09PTEmJihjJj0tNDA5NykpOmN8PTQwOTYsYyE9PWYmJihhW18uQ2RdPWMpLGd8fF8uTWYoayksZX07Xy5JZz1mdW5jdGlvbihhLGIpe3JldHVybiBfLkVlKF8uT2YoYSxiKSl9O18uSmc9ZnVuY3Rpb24oYSxiLGM9ITEpe3JldHVybiBfLkFlKF8uT2YoYSxiKSk/P2N9OwpfLktnPWZ1bmN0aW9uKGEsYixjPTApe3JldHVybiBfLkdlKF8uT2YoYSxiKSk/P2N9O18uTGc9ZnVuY3Rpb24oYSxiLGM9MCl7cmV0dXJuIF8uSmUoXy5PZihhLGIpKT8/Y307Xy5OZz1mdW5jdGlvbihhLGIsYz1fLk1nKXtyZXR1cm4gXy5PZihhLGIsdm9pZCAwLHZvaWQgMCxfLlllKT8/Y307Xy5PZz1mdW5jdGlvbihhLGIsYz0wKXtyZXR1cm4gXy5PZihhLGIsdm9pZCAwLHZvaWQgMCxfLnZlKT8/Y307Xy5IPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uZGYoXy5PZihhLGIpKT8/IiJ9O18uUGc9ZnVuY3Rpb24oYSxiLGM9MCl7cmV0dXJuIF8uSWcoYSxiKT8/Y307Xy5RZz1mdW5jdGlvbihhKXtyZXR1cm4gXy5YZShfLk9mKGEsMSx2b2lkIDAsdm9pZCAwLF8uWWUpKT8/IjAifTtfLlJnPWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIF8uamcoYSxiLF8uR2UsYyxlLHZvaWQgMCxkKX07Xy5TZz1mdW5jdGlvbihhLGIsYyl7YT1fLlJnKGEsYiwzLHZvaWQgMCwhMCk7Xy5ZZChhLGMpO3JldHVybiBhW2NdfTsKXy5UZz1mdW5jdGlvbihhLGIpe3JldHVybiBfLlJnKGEsYiwzLHZvaWQgMCwhMCkubGVuZ3RofTtfLlVnPWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIF8uamcoYSxiLF8uZGYsYyxlLHZvaWQgMCxkKX07Xy5WZz1mdW5jdGlvbihhLGIsYyl7YT1fLlVnKGEsYiwzLHZvaWQgMCwhMCk7Xy5ZZChhLGMpO3JldHVybiBhW2NdfTtfLldnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uVWcoYSxiLDMsdm9pZCAwLCEwKS5sZW5ndGh9O18uWGc9ZnVuY3Rpb24oYSxiLGMpe2E9Xy5qZyhhLGIsXy5FZSwzLCEwKTtfLllkKGEsYyk7cmV0dXJuIGFbY119O18uWWc9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIF8uQWcoYSxiLF8udGcoYSxkLGMpLHZvaWQgMCl9O18uWmc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5kZihfLk9mKGEsYikpfTtfLiRnPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5RZihhLGIsYz09bnVsbD9jOl8uemUoYykpfTsKXy5haD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG9nKGEsYixjPT1udWxsP2M6Xy56ZShjKSwhMSl9O18uYmg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLlFmKGEsYixjPT1udWxsP2M6Xy5GZShjKSl9O18uY2g9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBvZyhhLGIsYz09bnVsbD9jOl8uRmUoYyksMCl9O18uZGg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLlFmKGEsYixjPT1udWxsP2M6Xy5IZShjKSl9O18uZWg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gb2coYSwxLGI9PW51bGw/YjpfLlFlKGIsdm9pZCAwKSwiMCIpfTtfLmhoPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gb2coYSxiLGM9PW51bGw/YzpfLnVlKGMpLDApfTtfLmloPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5RZihhLGIsXy5jZihjKSl9O18uamg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBvZyhhLGIsXy5jZihjKSwiIil9O18ua2g9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLlFmKGEsYixjPT1udWxsP2M6Xy5EZShjKSl9OwpfLmxoPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gb2coYSxiLGM9PW51bGw/YzpfLkRlKGMpLDApfTtfLm1oPWZ1bmN0aW9uKGEsYixjKXtfLkhnKGEsYixfLkZlLGMsdm9pZCAwLF8uR2UpfTtfLm5oPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uR2UoXy5PZihhLGIpKSE9bnVsbH07Xy5waD1mdW5jdGlvbihhLGIpe3ZhciBjPTAsZD0wLGU9MCxmPWEucmgsZz1hLnFoO2Rve3ZhciBoPWZbZysrXTtjfD0oaCYxMjcpPDxlO2UrPTd9d2hpbGUoZTwzMiYmaCYxMjgpO2lmKGU+MzIpZm9yKGR8PShoJjEyNyk+PjQsZT0zO2U8MzImJmgmMTI4O2UrPTcpaD1mW2crK10sZHw9KGgmMTI3KTw8ZTtvaChhLGcpO2lmKCEoaCYxMjgpKXJldHVybiBiKGM+Pj4wLGQ+Pj4wKTt0aHJvdyBFcnJvcigpO307Cl8ucWg9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1hLnFoLGQ9YysxMCxlPWEucmg7YzxkOyl7bGV0IGY9ZVtjKytdO2J8PWY7aWYoKGYmMTI4KT09PTApcmV0dXJuIG9oKGEsYyksISEoYiYxMjcpfXRocm93IEVycm9yKCk7fTtfLnJoPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmgsYz1hLnFoLGQ9YltjKytdLGU9ZCYxMjc7aWYoZCYxMjgmJihkPWJbYysrXSxlfD0oZCYxMjcpPDw3LGQmMTI4JiYoZD1iW2MrK10sZXw9KGQmMTI3KTw8MTQsZCYxMjgmJihkPWJbYysrXSxlfD0oZCYxMjcpPDwyMSxkJjEyOCYmKGQ9YltjKytdLGV8PWQ8PDI4LGQmMTI4JiZiW2MrK10mMTI4JiZiW2MrK10mMTI4JiZiW2MrK10mMTI4JiZiW2MrK10mMTI4JiZiW2MrK10mMTI4KSkpKSl0aHJvdyBFcnJvcigpO29oKGEsYyk7cmV0dXJuIGV9O18uc2g9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ucmgoYSk+Pj4wfTtfLnRoPWZ1bmN0aW9uKGEpe3JldHVybiBfLnBoKGEsXy5xZSl9OwpfLnZoPWZ1bmN0aW9uKGEpe3ZhciBiPWEueGg7Ynx8KGI9YS5yaCxiPWEueGg9bmV3IERhdGFWaWV3KGIuYnVmZmVyLGIuYnl0ZU9mZnNldCxiLmJ5dGVMZW5ndGgpKTtiPWIuZ2V0RmxvYXQ2NChhLnFoLCEwKTtfLnVoKGEsOCk7cmV0dXJuIGJ9O3ZhYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5yaChhKX07b2g9ZnVuY3Rpb24oYSxiKXthLnFoPWI7aWYoYj5hLnNoKXRocm93IEVycm9yKCk7fTtfLnVoPWZ1bmN0aW9uKGEsYil7b2goYSxhLnFoK2IpfTtfLndoPWZ1bmN0aW9uKGEsYil7aWYoYjwwKXRocm93IEVycm9yKCk7dmFyIGM9YS5xaDtiPWMrYjtpZihiPmEuc2gpdGhyb3cgRXJyb3IoKTthLnFoPWI7cmV0dXJuIGN9OwpfLnpoPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy53aChhLGIpO3ZhciBkPWEucmg7KGE9eGgpfHwoYT14aD1uZXcgVGV4dERlY29kZXIoInV0Zi04Iix7ZmF0YWw6ITB9KSk7Yj1jK2I7ZD1jPT09MCYmYj09PWQubGVuZ3RoP2Q6ZC5zdWJhcnJheShjLGIpO3RyeXt2YXIgZT1hLmRlY29kZShkKX1jYXRjaChmKXtpZih5aD09PXZvaWQgMCl7dHJ5e2EuZGVjb2RlKG5ldyBVaW50OEFycmF5KFsxMjhdKSl9Y2F0Y2goZyl7fXRyeXthLmRlY29kZShuZXcgVWludDhBcnJheShbOTddKSkseWg9ITB9Y2F0Y2goZyl7eWg9ITF9fSF5aCYmKHhoPXZvaWQgMCk7dGhyb3cgZjt9cmV0dXJuIGV9OwpfLkFoPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLnJoLnNoLGU9Xy5zaChhLnJoKTtlPWEucmguZ2V0Q3Vyc29yKCkrZTt2YXIgZj1lLWQ7Zjw9MCYmKGEucmguc2g9ZSxjKGIsYSx2b2lkIDAsdm9pZCAwLHZvaWQgMCksZj1lLWEucmguZ2V0Q3Vyc29yKCkpO2lmKGYpdGhyb3cgRXJyb3IoKTthLnJoLnNldEN1cnNvcihlKTthLnJoLnNoPWQ7cmV0dXJuIGJ9O18uQ2g9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zaChhLnJoKTtyZXR1cm4gXy56aChhLnJoLGIpfTtfLkRoPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLnNoKGEucmgpO2ZvcihkPWEucmguZ2V0Q3Vyc29yKCkrZDthLnJoLmdldEN1cnNvcigpPGQ7KWMucHVzaChiKGEucmgpKX07Xy5GaD1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uRWgoYSY0Mjk0OTY3Mjk1LE1hdGguZmxvb3IoYS80Mjk0OTY3Mjk2KSl9OwpfLkhoPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBHaHx8KEdoPW5ldyBfLkVoKDAsMCkpO2lmKCEvXi0/XGQrJC8udGVzdChhKSlyZXR1cm4gbnVsbDtfLnNlKGEpO3JldHVybiBuZXcgXy5FaChfLmVlLF8uZ2UpfTsKXy5QaD1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIEJpZ0ludDY0QXJyYXkhPT0idW5kZWZpbmVkIilyZXR1cm4gSWh8fChJaD1uZXcgQmlnSW50NjRBcnJheSgxKSxKaD1uZXcgVWludDMyQXJyYXkoSWguYnVmZmVyKSxJaFswXT1CaWdJbnQoMSksS2g9SmhbMF09PT0xKSxJaFswXT1hLGE9S2g/MDoxLG5ldyBiKEpoW2FdLEpoWzEtYV0pO0xofHwoTWg9QmlnSW50KE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKSxOaD1CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLE9oPUJpZ0ludCg0Mjk0OTY3Mjk1KSxMaD1CaWdJbnQoMzIpKTtpZihhPj1NaCYmYTw9TmgpcmV0dXJuIGMoTnVtYmVyKGEpKTthPUJpZ0ludC5hc1VpbnROKDY0LGEpO3JldHVybiBuZXcgYihOdW1iZXIoYSZPaCksTnVtYmVyKGE+PkxoKSl9O18uUWg9ZnVuY3Rpb24oYSxiLGMpe2Zvcig7Yz4wfHxiPjEyNzspYS5xaC5wdXNoKGImMTI3fDEyOCksYj0oYj4+Pjd8Yzw8MjUpPj4+MCxjPj4+PTc7YS5xaC5wdXNoKGIpfTsKXy5SaD1mdW5jdGlvbihhLGIpe2EucWgucHVzaChiPj4+MCYyNTUpO2EucWgucHVzaChiPj4+OCYyNTUpO2EucWgucHVzaChiPj4+MTYmMjU1KTthLnFoLnB1c2goYj4+PjI0JjI1NSl9O18uU2g9ZnVuY3Rpb24oYSxiKXtmb3IoO2I+MTI3OylhLnFoLnB1c2goYiYxMjd8MTI4KSxiPj4+PTc7YS5xaC5wdXNoKGIpfTtfLlRoPWZ1bmN0aW9uKGEsYil7aWYoYj49MClfLlNoKGEsYik7ZWxzZXtmb3IobGV0IGM9MDtjPDk7YysrKWEucWgucHVzaChiJjEyN3wxMjgpLGI+Pj03O2EucWgucHVzaCgxKX19O1hoPWZ1bmN0aW9uKGEsYil7Yi5sZW5ndGghPT0wJiYoYS5zaC5wdXNoKGIpLGEucmgrPWIubGVuZ3RoKX07Xy5ZaD1mdW5jdGlvbihhLGIsYyl7Xy5TaChhLnFoLGIqOCtjKX07Xy5aaD1mdW5jdGlvbihhLGIpe18uWWgoYSxiLDIpO2I9YS5xaC5lbmQoKTtYaChhLGIpO2IucHVzaChhLnJoKTtyZXR1cm4gYn07Cl8uJGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnBvcCgpO2ZvcihjPWEucmgrYS5xaC5sZW5ndGgoKS1jO2M+MTI3OyliLnB1c2goYyYxMjd8MTI4KSxjPj4+PTcsYS5yaCsrO2IucHVzaChjKTthLnJoKyt9O18uYWk9ZnVuY3Rpb24oYSl7WGgoYSxhLnFoLmVuZCgpKTt2YXIgYj1uZXcgVWludDhBcnJheShhLnJoKSxjPWEuc2gsZD1jLmxlbmd0aCxlPTA7Zm9yKGxldCBmPTA7ZjxkO2YrKyl7bGV0IGc9Y1tmXTtiLnNldChnLGUpO2UrPWcubGVuZ3RofWEuc2g9W2JdO3JldHVybiBifTtiaT1mdW5jdGlvbihhLGIsYyl7aWYoYyE9bnVsbClzd2l0Y2goXy5ZaChhLGIsMCksdHlwZW9mIGMpe2Nhc2UgIm51bWJlciI6YT1hLnFoO18ua2UoYyk7Xy5RaChhLF8uZWUsXy5nZSk7YnJlYWs7Y2FzZSAiYmlnaW50IjpjPV8uUGgoYyxfLkVoLF8uRmgpO18uUWgoYS5xaCxjLmxvLGMuaGkpO2JyZWFrO2RlZmF1bHQ6Yz1fLkhoKGMpLF8uUWgoYS5xaCxjLmxvLGMuaGkpfX07CmNpPWZ1bmN0aW9uKGEsYixjKXtjIT1udWxsJiYoYz1wYXJzZUludChjLDEwKSxfLlloKGEsYiwwKSxfLlRoKGEucWgsYykpfTtfLmRpPWZ1bmN0aW9uKGEsYixjKXtfLlloKGEsYiwyKTtfLlNoKGEucWgsYy5sZW5ndGgpO1hoKGEsYS5xaC5lbmQoKSk7WGgoYSxjKX07Xy5laT1mdW5jdGlvbihhLGIsYyxkKXtjIT1udWxsJiYoYj1fLlpoKGEsYiksZChjLGEpLF8uJGgoYSxiKSl9O18uZmk9ZnVuY3Rpb24oYSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJzdHJpbmciOl8uSGgoYSl9fTtnaT1mdW5jdGlvbigpe3ZhciBhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhyb3cgRXJyb3IoKTt9fTtPYmplY3Quc2V0UHJvdG90eXBlT2YoYSxhLnByb3RvdHlwZSk7cmV0dXJuIGF9O2hpPWZ1bmN0aW9uKGEpe3ZhciBiPXdhYTtfLnFmKGEuTGksYi5xaCk7Xy5wZihhLGIucWgsYi50aCk7cmV0dXJuIGIuZ3c/Xy5CZyhhLGIuV24sYi5xaCxiLnJoKTpfLkcoYSxiLlduLGIucWgsYi5yaCl9OwpfLmlpPWZ1bmN0aW9uKGEsYil7aWYoYj09bnVsbClyZXR1cm4gbmV3IGE7aWYoIUFycmF5LmlzQXJyYXkoYikpdGhyb3cgRXJyb3IoKTtpZihPYmplY3QuaXNGcm96ZW4oYil8fE9iamVjdC5pc1NlYWxlZChiKXx8IU9iamVjdC5pc0V4dGVuc2libGUoYikpdGhyb3cgRXJyb3IoKTtyZXR1cm4gbmV3IGEoSGQoYikpfTtfLmxpPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBqaShhLGIsITEsa2kpfTtuaT1mdW5jdGlvbihhLGIsYyxkLGUpe18uZWkoYSxjLF8ubWkoYixkKSxlKX07Cl8ucmk9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1lW2FdO2lmKGYpcmV0dXJuIGY7Yj1iP2IoKTp7fTtiLmlBPWU7Yi5mcT1fLnpmKGVbMF0pO3ZhciBnPWVbMV07Zj0xO2cmJmcuY29uc3RydWN0b3I9PT1PYmplY3QmJihiLm9sPWcsZz1lWysrZl0sdHlwZW9mIGc9PT0iZnVuY3Rpb24iJiYoYi5yST0hMCxfLm9pPz8oXy5vaT1nKSxwaT8/KHBpPWVbZisxXSksZz1lW2YrPTJdKSk7Zm9yKHZhciBoPXt9O2cmJkFycmF5LmlzQXJyYXkoZykmJmcubGVuZ3RoJiZ0eXBlb2YgZ1swXT09PSJudW1iZXIiJiZnWzBdPjA7KXtmb3IodmFyIGs9MDtrPGcubGVuZ3RoO2srKyloW2dba11dPWc7Zz1lWysrZl19Zm9yKGs9MTtnIT09dm9pZCAwOyl7dHlwZW9mIGc9PT0ibnVtYmVyIiYmKGsrPWcsZz1lWysrZl0pO2xldCBxO3ZhciBtPXZvaWQgMDtnIGluc3RhbmNlb2Ygamk/cT1nOihxPXhhYSxmLS0pO2lmKHE/LnJoKXtnPWVbKytmXTttPWU7dmFyIHA9Zjt0eXBlb2YgZz09PSJmdW5jdGlvbiImJgooZz1nKCksbVtwXT1nKTttPWd9Zz1lWysrZl07cD1rKzE7dHlwZW9mIGc9PT0ibnVtYmVyIiYmZzwwJiYocC09ZyxnPWVbKytmXSk7Zm9yKDtrPHA7aysrKXtsZXQgdT1oW2tdO20/ZChiLGsscSxtLHUpOmMoYixrLHEsdSl9fXJldHVybiBlW2FdPWJ9O18uc2k9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YVswXWluc3RhbmNlb2Ygamk/YTpbeWFhLGFdOlthLHZvaWQgMF19O18ubWk9ZnVuY3Rpb24oYSxiKXtpZihhIGluc3RhbmNlb2YgXy5JKXJldHVybiBhLkxpO2lmKEFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIF8uRGYoYSxiKX07Xy50aT1mdW5jdGlvbihhKXtyZXR1cm4gXy5yaSh6YWEsdm9pZCAwLEFhYSxCYWEsYSl9O0FhYT1mdW5jdGlvbihhLGIsYyl7YVtiXT1jLnZDfTtCYWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnPWMudkM7YVtiXT0oaCxrLG0pPT5nKGgsayxtLGZ8fChmPV8udGkoZCkuZnEpLGV8fChlPXVpKGQpKSl9Owp1aT1mdW5jdGlvbihhKXt2YXIgYj1hW3ZpXTtpZighYil7bGV0IGM9Xy50aShhKTtiPShkLGUpPT5fLndpKGQsZSxjKTthW3ZpXT1ifXJldHVybiBifTtfLndpPWZ1bmN0aW9uKGEsYixjKXtfLiRkKGEsYVtfLkNkXXwwLChkLGUpPT57aWYoZSE9bnVsbCl7dmFyIGY9Q2FhKGMsZCk7Zj9mKGIsZSxkKTpkPDUwMHx8Xy54ZChfLnhpLDMpfX0pOyhhPV8ubGYoYSkpJiZfLm1mKGEsKGQsZSxmKT0+e1hoKGIsYi5xaC5lbmQoKSk7Zm9yKGQ9MDtkPGYubGVuZ3RoO2QrKylYaChiLF8ucWQoZltkXSl8fG5ldyBVaW50OEFycmF5KDApKX0pfTtDYWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMpcmV0dXJuIGM7aWYoYz1hLm9sKWlmKGM9Y1tiXSl7Yz1fLnNpKGMpO3ZhciBkPWNbMF0udkM7aWYoYz1jWzFdKXtsZXQgZT11aShjKSxmPV8udGkoYykuZnE7Yz1hLnJJP3BpKGYsZSk6KGcsaCxrKT0+ZChnLGgsayxmLGUpfWVsc2UgYz1kO3JldHVybiBhW2JdPWN9fTsKXy55aT1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShiKSl7dmFyIGQ9YltfLkNkXXwwO2lmKGQmNClyZXR1cm4gYjtmb3IodmFyIGU9MCxmPTA7ZTxiLmxlbmd0aDtlKyspe2xldCBnPWEoYltlXSk7ZyE9bnVsbCYmKGJbZisrXT1nKX1mPGUmJihiLmxlbmd0aD1mKTthPWR8MTtjJiYoYT0oYXw0KSYtMTUzNyk7YSE9PWQmJihiW18uQ2RdPWEpO2MmJmEmMiYmT2JqZWN0LmZyZWV6ZShiKTtyZXR1cm4gYn19O18uemk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2lmKEFycmF5LmlzQXJyYXkoYikpe2ZvcihsZXQgZz0wO2c8Yi5sZW5ndGg7ZysrKWYoYSxiW2ddLGMsZCxlKTthPWJbXy5DZF18MDthJjF8fChiW18uQ2RdPWF8MSl9fTtfLkFpPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gbmV3IGppKGEsYiwhMSxjKX07Xy5DaT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG5ldyBqaShhLGIsQmksYyl9O18uRGk9ZnVuY3Rpb24oYSxiLGM9a2kpe3JldHVybiBuZXcgamkoYSxiLEJpLGMpfTsKXy5FaT1mdW5jdGlvbihhLGIsYyl7Xy5QZihhLGFbXy5DZF18MCxiLGMsXy5iZShhW18uQ2RdfDApKX07Xy5GaT1mdW5jdGlvbihhLGIsYyl7Yj1fLkRmKHZvaWQgMCxiKTtfLlZmKGEsYVtfLkNkXXwwLGMpLnB1c2goYik7cmV0dXJuIGJ9O18uR2k9ZnVuY3Rpb24oYSxiLGMpe2I9Xy52ZShiKTtiIT1udWxsJiYoXy5ZaChhLGMsMSksYT1hLnFoLF8ubWUoYiksXy5SaChhLF8uZWUpLF8uUmgoYSxfLmdlKSl9O18uSGk9ZnVuY3Rpb24oYSxiLGMpe2I9Xy5hZihiKTtiIT1udWxsJiYoXy5maShiKSxiaShhLGMsYikpfTtfLklpPWZ1bmN0aW9uKGEsYixjKXtiPV8uR2UoYik7YiE9bnVsbCYmYiE9bnVsbCYmKF8uWWgoYSxjLDApLF8uVGgoYS5xaCxiKSl9O18uSmk9ZnVuY3Rpb24oYSxiLGMpe2I9Xy5BZShiKTtiIT1udWxsJiYoXy5ZaChhLGMsMCksYS5xaC5xaC5wdXNoKGI/MTowKSl9O18uS2k9ZnVuY3Rpb24oYSxiLGMpe2I9Xy5kZihiKTtiIT1udWxsJiZfLmRpKGEsYyx6YihiKSl9OwpfLkxpPWZ1bmN0aW9uKGEsYixjLGQsZSl7Xy5laShhLGMsXy5taShiLGQpLGUpfTtfLk1pPWZ1bmN0aW9uKGEsYixjKXtiPV8uSmUoYik7YiE9bnVsbCYmYiE9bnVsbCYmKF8uWWgoYSxjLDApLF8uU2goYS5xaCxiKSl9O18uTmk9ZnVuY3Rpb24oYSxiLGMpe2NpKGEsYyxfLkdlKGIpKX07Xy5PaT1mdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTApcmV0dXJuITE7Xy5FaShiLGMsXy50aChhLnJoKSk7cmV0dXJuITB9O18uUGk9ZnVuY3Rpb24oYSxiLGMpe2EucWghPT0wJiZhLnFoIT09Mj9hPSExOihiPV8uV2YoYixjKSxhLnFoPT0yP18uRGgoYSxfLnRoLGIpOmIucHVzaChfLnRoKGEucmgpKSxhPSEwKTtyZXR1cm4gYX07Xy5RaT1mdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTAmJmEucWghPT0yKXJldHVybiExO2I9Xy5XZihiLGMpO2EucWg9PTI/Xy5EaChhLF8ucmgsYik6Yi5wdXNoKF8ucmgoYS5yaCkpO3JldHVybiEwfTsKXy5SaT1mdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTAmJmEucWghPT0yKXJldHVybiExO2I9Xy5XZihiLGMpO2EucWg9PTI/Xy5EaChhLHZhYSxiKTpiLnB1c2goXy5yaChhLnJoKSk7cmV0dXJuITB9O0RhYT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyBpbiBhKWlzTmFOKGMpfHxiKCtjLGFbY10sITEpO2M9YS53SD8/KGEud0g9e30pO2Zvcih2YXIgZCBpbiBhLm9sKXtsZXQgZT0rZDtpZihpc05hTihlKSljb250aW51ZTtpZihjW2VdKWNvbnRpbnVlO2xldCBbZixnXT1fLnNpKGEub2xbZV0pLGg9ZztoJiZ0eXBlb2YgaD09PSJmdW5jdGlvbiImJihoPWgoKSk7Y1tlXT1oP25ldyBTaShoLGYucWgsZi5YdCwhMSxoKTpuZXcgVGkoZi5xaCxmLlh0KX1hPWEud0g7Zm9yKGxldCBlIGluIGEpZD0rZSxpc05hTihkKXx8YihkLGFbZF0sITApfTtVaT1mdW5jdGlvbihhLGIsYyl7YVtiXT1uZXcgVGkoYy5xaCxjLlh0KX07ClZpPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPV8uemYoZFswXSk7ZT1lP2U9PT1fLnhmOiExO2FbYl09bmV3IFNpKGQsYy5xaCxlP0JpOmMuWHQsZT9FYWE6ITEsZCl9O18uV2k9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oKCk9Pnt2YXIgYz1uZXcgRmFhKGEsYik7cmV0dXJuKCk9PmN9KSgpfTtfLlhpPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBuZXcgR2FhKGEsYixjLGQpfTtfLiRpPWZ1bmN0aW9uKGEsYil7dmFyIGM7cmV0dXJuKCk9Pnt2YXIgZDtpZigoZD1jKT09bnVsbCl7aWYoIShhPy5wcm90b3R5cGUgaW5zdGFuY2VvZiBfLkkpKXRocm93IEVycm9yKCk7YVtfLmZmXXx8KGFbXy5mZl09Xy5nZihhKSk7bmV3IGE7ZD1jPXtbWWldOmIsW1ppXTphfX1yZXR1cm4gZH19OwpfLmFqPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJFeHBlY3RlZCBqc3BiIGRhdGEgdG8gYmUgYW4gYXJyYXksIGdvdCAiK1hhKGIpKyI6ICIrYik7Xy5HZChiKTtyZXR1cm4gbmV3IGEoYil9fTtfLmJqPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57aWYoYj09bnVsbHx8Yj09IiIpYj1uZXcgYTtlbHNle2I9SlNPTi5wYXJzZShiKTtpZighQXJyYXkuaXNBcnJheShiKSl0aHJvdyBFcnJvcigiZG5hcnIiKTtiPW5ldyBhKEhkKGIpKX1yZXR1cm4gYn19O18uY2o9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5oaChhLDEsYil9O18uZGo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5oaChhLDIsYil9O18uZWo9ZnVuY3Rpb24oYSxiKXtOdW1iZXIuaXNGaW5pdGUoYil8fChiPTApO2E9Xy5laChhLE1hdGguZmxvb3IoYi8xRTMpKTtyZXR1cm4gXy5jaChhLDIsKGIlMUUzKzFFMyklMUUzKjFFNil9OwpfLmZqPWZ1bmN0aW9uKGEsYixjKXtmb3IobGV0IGQgaW4gYSliLmNhbGwoYyxhW2RdLGQsYSl9O0hhYT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9O2ZvcihsZXQgZCBpbiBhKWNbZF09Yi5jYWxsKHZvaWQgMCxhW2RdLGQsYSk7cmV0dXJuIGN9O18uaWo9ZnVuY3Rpb24oYSl7dmFyIGI9W10sYz0wO2ZvcihsZXQgZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtfLmpqPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYiBpbiBhKXJldHVybiExO3JldHVybiEwfTtfLmxqPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGM9YXJndW1lbnRzW2VdO2ZvcihkIGluIGMpYVtkXT1jW2RdO2ZvcihsZXQgZj0wO2Y8a2oubGVuZ3RoO2YrKyl7dmFyIGQ9a2pbZl07T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGMsZCkmJihhW2RdPWNbZF0pfX19OwpJYWE9ZnVuY3Rpb24oKXt2YXIgYT1udWxsO2lmKCFtailyZXR1cm4gYTt0cnl7bGV0IGI9Yz0+YzthPW1qLmNyZWF0ZVBvbGljeSgiZ29vZ2xlLW1hcHMtYXBpI2h0bWwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChiKXt9cmV0dXJuIGF9O18ub2o9ZnVuY3Rpb24oKXtuaj09PXZvaWQgMCYmKG5qPUlhYSgpKTtyZXR1cm4gbmp9O18ucWo9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5vaigpO2E9Yj9iLmNyZWF0ZVNjcmlwdFVSTChhKTphO3JldHVybiBuZXcgXy5waihhKX07Xy5yaj1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5wailyZXR1cm4gYS5xaDt0aHJvdyBFcnJvcigiIik7fTtfLnRqPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5zaihhKX07dmo9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLnVqKGI9PmIuc3Vic3RyKDAsYS5sZW5ndGgrMSkudG9Mb3dlckNhc2UoKT09PWErIjoiKX07Cl8ueGo9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5vaigpO2E9Yj9iLmNyZWF0ZUhUTUwoYSk6YTtyZXR1cm4gbmV3IHdqKGEpfTtfLnlqPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiB3ailyZXR1cm4gYS5xaDt0aHJvdyBFcnJvcigiIik7fTtKYWE9ZnVuY3Rpb24oYSxiPWRvY3VtZW50KXthPWIucXVlcnlTZWxlY3Rvcj8uKGAke2F9W25vbmNlXWApO3JldHVybiBhPT1udWxsPyIiOmEubm9uY2V8fGEuZ2V0QXR0cmlidXRlKCJub25jZSIpfHwiIn07Xy5LYWE9ZnVuY3Rpb24oYSl7dmFyIGI9SmFhKCJzY3JpcHQiLGEub3duZXJEb2N1bWVudCk7YiYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixiKX07Xy56aj1mdW5jdGlvbihhLGIpe2lmKGEubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYS50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7YS5pbm5lckhUTUw9Xy55aihiKX07Cl8uQmo9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uQWopcmV0dXJuIGEucWg7dGhyb3cgRXJyb3IoIiIpO307Xy5Daj1mdW5jdGlvbihhKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhhKSl9O0xhYT1mdW5jdGlvbihhKXt2YXIgYj0xO2E9YS5zcGxpdCgiOiIpO2Zvcih2YXIgYz1bXTtiPjAmJmEubGVuZ3RoOyljLnB1c2goYS5zaGlmdCgpKSxiLS07YS5sZW5ndGgmJmMucHVzaChhLmpvaW4oIjoiKSk7cmV0dXJuIGN9O18uRWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5tYXRjaChfLkRqKVthXXx8bnVsbH07Cl8uRmo9ZnVuY3Rpb24oYSxiLGMpe2M9YyE9bnVsbD8iPSIrXy5DaihjKToiIjtpZihiKz1jKXtjPWEuaW5kZXhPZigiIyIpO2M8MCYmKGM9YS5sZW5ndGgpO2xldCBkPWEuaW5kZXhPZigiPyIpLGU7ZDwwfHxkPmM/KGQ9YyxlPSIiKTplPWEuc3Vic3RyaW5nKGQrMSxjKTthPVthLnNsaWNlKDAsZCksZSxhLnNsaWNlKGMpXTtjPWFbMV07YVsxXT1iP2M/YysiJiIrYjpiOmM7YT1hWzBdKyhhWzFdPyI/IithWzFdOiIiKSthWzJdfXJldHVybiBhfTtfLkdqPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5BaihhWzBdKX07SGo9ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBuZXcgVVJMKGEsd2luZG93LmRvY3VtZW50LmJhc2VVUkkpfWNhdGNoKGIpe3JldHVybiBuZXcgVVJMKCJhYm91dDppbnZhbGlkIil9fTtNYWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmNyZWF0ZVJhbmdlKCk7Yy5zZWxlY3ROb2RlKGIuYm9keSk7YT1fLnhqKGEpO3JldHVybiBjLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChfLnlqKGEpKX07Ck5hYT1mdW5jdGlvbihhKXthPWEubm9kZU5hbWU7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YToiRk9STSJ9O09hYT1mdW5jdGlvbihhKXthPWEubm9kZVR5cGU7cmV0dXJuIGE9PT0xfHx0eXBlb2YgYSE9PSJudW1iZXIifTtQYWE9ZnVuY3Rpb24oYSxiLGMpe2M9YS5xaC5nZXQoYyk7cmV0dXJuIGM/LmhhcyhiKT9jLmdldChiKTphLnRoLmhhcyhiKT97T206MX06KGM9YS53aC5nZXQoYikpP2M6YS5yaCYmWy4uLmEucmhdLnNvbWUoZD0+Yi5pbmRleE9mKGQpPT09MCk/e09tOjF9OntPbTowfX07Xy5Jaj1mdW5jdGlvbihhLGIpe3ZhciBjPWRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIik7YT1RYWEoYSxiLGMpO2M9Yy5ib2R5O2MuYXBwZW5kQ2hpbGQoYSk7Yz0obmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKGMpO2M9Yy5zbGljZShjLmluZGV4T2YoIj4iKSsxLGMubGFzdEluZGV4T2YoIjwvIikpO3JldHVybiBfLnhqKGMpfTsKUWFhPWZ1bmN0aW9uKGEsYixjKXtiPU1hYShiLGMpO2I9ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihiLDUsZz0+e2lmKGcubm9kZVR5cGU9PT0zKWc9MTtlbHNlIGlmKE9hYShnKSlpZihnPU5hYShnKSxnPT09bnVsbClnPTI7ZWxzZXt2YXIgaD1hLnNoO2c9ZyE9PSJGT1JNIiYmKGguc2guaGFzKGcpfHxoLnFoLmhhcyhnKSk/MToyfWVsc2UgZz0yO3JldHVybiBnfSk7Zm9yKHZhciBkPWIubmV4dE5vZGUoKSxlPWMuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLGY9ZTtkIT09bnVsbDspe2xldCBnO2lmKGQubm9kZVR5cGU9PT0zKWEud2gmJmYubm9kZU5hbWU9PT0iU1RZTEUiPyhkPWEud2goZC5kYXRhKSxnPWEuY3JlYXRlVGV4dE5vZGUoZCkpOmc9YS5jcmVhdGVUZXh0Tm9kZShkLmRhdGEpO2Vsc2UgaWYoT2FhKGQpKWc9UmFhKGEsZCxjKTtlbHNlIHRocm93IEVycm9yKCIiKTtmLmFwcGVuZENoaWxkKGcpO2lmKGQ9Yi5maXJzdENoaWxkKCkpZj1nO2Vsc2UgZm9yKDshKGQ9Yi5uZXh0U2libGluZygpKSYmCihkPWIucGFyZW50Tm9kZSgpKTspZj1mLnBhcmVudE5vZGV9cmV0dXJuIGV9OwpSYWE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU5hYShiKTtjPWMuY3JlYXRlRWxlbWVudChkKTtiPWIuYXR0cmlidXRlcztmb3IobGV0IHtuYW1lOmgsdmFsdWU6a31vZiBiKXt2YXIgZT1QYWEoYS5zaCxoLGQpLGY7YTp7aWYoZj1lLmNvbmRpdGlvbnMpZm9yKGxldCBbbSxwXW9mIGYpe2Y9cDt2YXIgZz1iLmdldE5hbWVkSXRlbShtKT8udmFsdWU7aWYoZyYmIWYuaGFzKGcpKXtmPSExO2JyZWFrIGF9fWY9ITB9aWYoZilzd2l0Y2goZS5PbSl7Y2FzZSAxOkpqKGMsaCxrKTticmVhaztjYXNlIDI6dGhyb3cgRXJyb3IoKTtjYXNlIDM6SmooYyxoLGsudG9Mb3dlckNhc2UoKSk7YnJlYWs7Y2FzZSA0OmEudGg/KGU9YS50aChrKSxKaihjLGgsZSkpOkpqKGMsaCxrKTticmVhaztjYXNlIDU6YS5xaD8oZT17dHlwZToyLGF0dHJpYnV0ZU5hbWU6aCxxSDpkfSxmPUhqKGspLChlPWEucWgoZixlKSkmJkpqKGMsaCxlLnRvU3RyaW5nKCkpKTpKaihjLGgsayk7YnJlYWs7Y2FzZSA2OmlmKGEucWgpe2U9Cnt0eXBlOjIsYXR0cmlidXRlTmFtZTpoLHFIOmR9O2Y9W107Zm9yKGxldCBtIG9mIGsuc3BsaXQoIiwiKSl7bGV0IFtwLHFdPW0udHJpbSgpLnNwbGl0KC9ccysvLDIpO2YucHVzaCh7dXJsOnAsVmg6cX0pfWc9ZjtmPXtjejpbXX07Zm9yKGxldCBtIG9mIGcpZz1IaihtLnVybCksKGc9YS5xaChnLGUpKSYmZi5jei5wdXNoKHt1cmw6Zy50b1N0cmluZygpLFZoOm0uVmh9KTtKaihjLGgsU2FhKGYpKX1lbHNlIEpqKGMsaCxrKTticmVhaztjYXNlIDc6ZT1rO2lmKGEucmgpe2U9e3R5cGU6MixhdHRyaWJ1dGVOYW1lOmgscUg6ZH07Zj1IaihrKTtlPWEucmgoZixlKTtpZihlPT09bnVsbClicmVhaztlPWUudG9TdHJpbmcoKX1hOntnPXZvaWQgMDtmPWU7dHJ5e2c9bmV3IFVSTChmKX1jYXRjaChtKXtmPSJodHRwczoiO2JyZWFrIGF9Zj1nLnByb3RvY29sfWU9ZiE9PXZvaWQgMCYmVGFhLmluZGV4T2YoZi50b0xvd2VyQ2FzZSgpKSE9PS0xP2U6ImFib3V0OmludmFsaWQjekNsb3N1cmV6IjsKSmooYyxoLGUpfX1yZXR1cm4gY307Smo9ZnVuY3Rpb24oYSxiLGMpe2Euc2V0QXR0cmlidXRlKGIsYyl9O1NhYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5jei5tYXAoYj0+e3ZhciBjPWIuVmg7cmV0dXJuYCR7Yi51cmx9JHtjP2AgJHtjfWA6IiJ9YH0pLmpvaW4oIiAsICIpfTtXYWE9ZnVuY3Rpb24oYSl7dmFyIGI7aWYoKGI9YVtVYWFdKSE9bnVsbClhPWI7ZWxzZXtpZihLaiE9PUtqKXRocm93IEVycm9yKCk7YT1hW1VhYV09VmFhKGEucWgpfXJldHVybiBhfTtfLk9qPWZ1bmN0aW9uKGEpe2lmKGFbTGpdKXJldHVybiBhW0xqXTt2YXIgYj1uZXcgTWFwLGM9V2FhKGEpO2ZvcihsZXQgZSBvZiBfLkJnKGMsTWosMikpe2M9Xy5LZyhlLDIpO3ZhciBkPWUuZ2V0TmFtZSgpO2Iuc2V0KGQsYyk7ZD1oaShfLkcoZSxOaiwzKSk7ZD1fLmRmKF8uT2YoZCwxKSk7ZCE9PXZvaWQgMCYmYi5zZXQoZCxjKX1yZXR1cm4gYVtMal09Yn07ClhhYT1mdW5jdGlvbihhKXtpZihhW1BqXSlyZXR1cm4gYVtQal07dmFyIGI9bmV3IE1hcCxjPVdhYShhKTtmb3IobGV0IGUgb2YgXy5CZyhjLE1qLDIpKXtjPV8uS2coZSwyKTt2YXIgZD1oaShfLkcoZSxOaiwzKSk7ZD1fLmRmKF8uT2YoZCwxKSk/P2UuZ2V0TmFtZSgpO2xldCBmPWIuZ2V0KGMpO2Z8fChmPVtdLGIuc2V0KGMsZikpO2YucHVzaChkKX1yZXR1cm4gYVtQal09Yn07Xy5Raj1mdW5jdGlvbihhKXtyZXR1cm4gYVtZYWFdPz8oYVtZYWFdPW5ldyBNYXAoWy4uLlhhYShhKS5lbnRyaWVzKCldLm1hcCgoW2IsY10pPT5bYixfLm1hKGMsImF0IikuY2FsbChjLC0xKV0pKSl9O18uJGFhPWZ1bmN0aW9uKGEpeygwLF8uWmFhKShhKTsoMCxfLnRmKShhKTtyZXR1cm4oMCxfLnRmKShhKT9OdW1iZXIoYSk6U3RyaW5nKGEpfTthYmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0iKyI/Ii0iOiJfIn07Xy5Saj1mdW5jdGlvbihhLGIpe3JldHVybiBfLmJiYShhLDEsYil9OwpfLmJiYT1mdW5jdGlvbihhLGIsYyl7dmFyIHtbWWldOmQsW1ppXTplfT1jO2M9Xy5yaShjYmEsdm9pZCAwLFVpLFZpLGQpO2MubWVzc2FnZVR5cGU/PyhjLm1lc3NhZ2VUeXBlPWUpO3ZhciBmPVNqKGEpO2E9QXJyYXkoNzY4KTtjPWRiYShmLGMsYixhLDApO2lmKGI9PT0wfHwhYylyZXR1cm4gYS5qb2luKCIiKTthLnNoaWZ0KCk7cmV0dXJuIGEuam9pbigiIikucmVwbGFjZShlYmEsIiUyNyIpfTsKZGJhPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9KGFbXy5DZF18MCkmNjQ/YTpfLkRmKGEsYi5mcSksZz1mW18uQ2RdfDA7RGFhKGIsKGgsayk9Pnt2YXIgbT1fLk5mKGYsaCxfLmJlKGcpKTtpZihtIT1udWxsKWlmKGsuaXNNYXAmJm0gaW5zdGFuY2VvZiBNYXApbS5mb3JFYWNoKChwLHEpPT57ZT1UaihjLGgsayxbcSxwXSxkLGUpfSk7ZWxzZSBpZihrLmd3KWZvcihsZXQgcD0wO3A8bS5sZW5ndGg7KytwKWU9VGooYyxoLGssbVtwXSxkLGUpO2Vsc2UgZT1UaihjLGgsayxtLGQsZSl9KTtyZXR1cm4gZX07ClRqPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtlW2YrK109YT09PTA/IiEiOiImIjtlW2YrK109YjtpZihjLmRDIGluc3RhbmNlb2Yga2l8fGMuZEMgaW5zdGFuY2VvZiBfLlVqKWI9U2ooZCksZD1jLmNRPz8oYy5jUT1fLnJpKGNiYSx2b2lkIDAsVWksVmksYy5iUSkpLGVbZisrXT0ibSIsZVtmKytdPTAsYz1mLGY9ZGJhKFNqKGIpLGQsYSxlLGYpLGVbYy0xXT1mLWM+PjI7ZWxzZXtjPWMuZEM7Yj1jLkFtO2lmKGMgaW5zdGFuY2VvZiBfLldqKWlmKGE9PT0xKWQ9ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSk7ZWxzZXthPXR5cGVvZiBkPT09InN0cmluZyI/ZDpgJHtkfWA7ZmJhLnRlc3QoYSk/ZD0hMTooZD1lbmNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvJTIwL2csIisiKSxjPWQubWF0Y2goLyVbODlBQl0vZ2kpLGM9YS5sZW5ndGgrKGM/Yy5sZW5ndGg6MCksZD00Kk1hdGguY2VpbChjLzMpLSgzLWMlMyklMzxkLmxlbmd0aCk7ZCYmKGI9InoiKTtpZihiPT09InoiKXtkPQpbXTtjPTA7Zm9yKGxldCBnPTA7ZzxhLmxlbmd0aDtnKyspe2xldCBoPWEuY2hhckNvZGVBdChnKTtoPDEyOD9kW2MrK109aDooaDwyMDQ4P2RbYysrXT1oPj42fDE5MjooKGgmNjQ1MTIpPT01NTI5NiYmZysxPGEubGVuZ3RoJiYoYS5jaGFyQ29kZUF0KGcrMSkmNjQ1MTIpPT01NjMyMD8oaD02NTUzNisoKGgmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZykmMTAyMyksZFtjKytdPWg+PjE4fDI0MCxkW2MrK109aD4+MTImNjN8MTI4KTpkW2MrK109aD4+MTJ8MjI0LGRbYysrXT1oPj42JjYzfDEyOCksZFtjKytdPWgmNjN8MTI4KX1hPV8uVWMoZCw0KX1lbHNlIGEuaW5kZXhPZigiKiIpIT09LTEmJihhPWEucmVwbGFjZShnYmEsIioyQSIpKSxhLmluZGV4T2YoIiEiKSE9PS0xJiYoYT1hLnJlcGxhY2UoaGJhLCIqMjEiKSk7ZD1hfWVsc2V7YT1kO2lmKCEoYyBpbnN0YW5jZW9mIF8uWGp8fGMgaW5zdGFuY2VvZiBfLllqKSlpZihjIGluc3RhbmNlb2YgXy5aailhPWE/MTowO2Vsc2UgaWYoYyBpbnN0YW5jZW9mCl8uV2opYT1TdHJpbmcoYSk7ZWxzZSBpZihjIGluc3RhbmNlb2YgXy5hayl7YSBpbnN0YW5jZW9mIF8uZmR8fGE9PW51bGx8fGEgaW5zdGFuY2VvZiBfLmZkfHwoYT10eXBlb2YgYT09PSJzdHJpbmciP2E/bmV3IF8uZmQoYSxfLmhkKTpfLmxkKCk6dm9pZCAwKTtpZihhPT1udWxsKXRocm93IEVycm9yKCk7YT1tZChhKS5yZXBsYWNlKGliYSxhYmEpLnJlcGxhY2UoamJhLCIiKX1lbHNlIGE9YyBpbnN0YW5jZW9mIF8uYmt8fGMgaW5zdGFuY2VvZiBfLmNrP18uSmUoYSk6YyBpbnN0YW5jZW9mIF8uZGt8fGMgaW5zdGFuY2VvZiBfLmVrfHxjIGluc3RhbmNlb2YgXy5ma3x8YyBpbnN0YW5jZW9mIF8uZ2s/Xy5HZShhKTpjIGluc3RhbmNlb2YgXy5oa3x8YyBpbnN0YW5jZW9mIF8uaWt8fGMgaW5zdGFuY2VvZiBrYmE/Xy5YZShhKTpjIGluc3RhbmNlb2YgXy5qa3x8YyBpbnN0YW5jZW9mIF8ua2s/Xy4kZShhKTphO2Q9YX1lW2YrK109YjtlW2YrK109ZH1yZXR1cm4gZn07ClNqPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkkpcmV0dXJuIGEuTGk7aWYoYSBpbnN0YW5jZW9mIE1hcClyZXR1cm5bLi4uYV07aWYoQXJyYXkuaXNBcnJheShhKSlyZXR1cm4gYTt0aHJvdyBFcnJvcigpO307bGJhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDIwMDpyZXR1cm4gMDtjYXNlIDQwMDpyZXR1cm4gMztjYXNlIDQwMTpyZXR1cm4gMTY7Y2FzZSA0MDM6cmV0dXJuIDc7Y2FzZSA0MDQ6cmV0dXJuIDU7Y2FzZSA0MDk6cmV0dXJuIDEwO2Nhc2UgNDEyOnJldHVybiA5O2Nhc2UgNDI5OnJldHVybiA4O2Nhc2UgNDk5OnJldHVybiAxO2Nhc2UgNTAwOnJldHVybiAyO2Nhc2UgNTAxOnJldHVybiAxMjtjYXNlIDUwMzpyZXR1cm4gMTQ7Y2FzZSA1MDQ6cmV0dXJuIDQ7ZGVmYXVsdDpyZXR1cm4gMn19OwptYmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMDpyZXR1cm4gMjAwO2Nhc2UgMzpjYXNlIDExOnJldHVybiA0MDA7Y2FzZSAxNjpyZXR1cm4gNDAxO2Nhc2UgNzpyZXR1cm4gNDAzO2Nhc2UgNTpyZXR1cm4gNDA0O2Nhc2UgNjpjYXNlIDEwOnJldHVybiA0MDk7Y2FzZSA5OnJldHVybiA0MTI7Y2FzZSA4OnJldHVybiA0Mjk7Y2FzZSAxOnJldHVybiA0OTk7Y2FzZSAxNTpjYXNlIDEzOmNhc2UgMjpyZXR1cm4gNTAwO2Nhc2UgMTI6cmV0dXJuIDUwMTtjYXNlIDE0OnJldHVybiA1MDM7Y2FzZSA0OnJldHVybiA1MDQ7ZGVmYXVsdDpyZXR1cm4gMH19OwpfLmxrPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDA6cmV0dXJuIk9LIjtjYXNlIDE6cmV0dXJuIkNBTkNFTExFRCI7Y2FzZSAyOnJldHVybiJVTktOT1dOIjtjYXNlIDM6cmV0dXJuIklOVkFMSURfQVJHVU1FTlQiO2Nhc2UgNDpyZXR1cm4iREVBRExJTkVfRVhDRUVERUQiO2Nhc2UgNTpyZXR1cm4iTk9UX0ZPVU5EIjtjYXNlIDY6cmV0dXJuIkFMUkVBRFlfRVhJU1RTIjtjYXNlIDc6cmV0dXJuIlBFUk1JU1NJT05fREVOSUVEIjtjYXNlIDE2OnJldHVybiJVTkFVVEhFTlRJQ0FURUQiO2Nhc2UgODpyZXR1cm4iUkVTT1VSQ0VfRVhIQVVTVEVEIjtjYXNlIDk6cmV0dXJuIkZBSUxFRF9QUkVDT05ESVRJT04iO2Nhc2UgMTA6cmV0dXJuIkFCT1JURUQiO2Nhc2UgMTE6cmV0dXJuIk9VVF9PRl9SQU5HRSI7Y2FzZSAxMjpyZXR1cm4iVU5JTVBMRU1FTlRFRCI7Y2FzZSAxMzpyZXR1cm4iSU5URVJOQUwiO2Nhc2UgMTQ6cmV0dXJuIlVOQVZBSUxBQkxFIjtjYXNlIDE1OnJldHVybiJEQVRBX0xPU1MiOwpkZWZhdWx0OnJldHVybiIifX07Xy5taz1mdW5jdGlvbigpe3RoaXMuTGg9dGhpcy5MaDt0aGlzLkpoPXRoaXMuSmh9O18ubms9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9Yjt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dGhpcy5yaD0hMX07Cl8ub2s9ZnVuY3Rpb24oYSxiKXtfLm5rLmNhbGwodGhpcyxhP2EudHlwZToiIik7dGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1udWxsO3RoaXMuYnV0dG9uPXRoaXMuc2NyZWVuWT10aGlzLnNjcmVlblg9dGhpcy5jbGllbnRZPXRoaXMuY2xpZW50WD10aGlzLm9mZnNldFk9dGhpcy5vZmZzZXRYPTA7dGhpcy5rZXk9IiI7dGhpcy5jaGFyQ29kZT10aGlzLmtleUNvZGU9MDt0aGlzLm1ldGFLZXk9dGhpcy5zaGlmdEtleT10aGlzLmFsdEtleT10aGlzLmN0cmxLZXk9ITE7dGhpcy5zdGF0ZT1udWxsO3RoaXMucG9pbnRlcklkPTA7dGhpcy5wb2ludGVyVHlwZT0iIjt0aGlzLnRpbWVTdGFtcD0wO3RoaXMucWg9bnVsbDthJiZ0aGlzLmluaXQoYSxiKX07Xy5waz1mdW5jdGlvbihhKXtyZXR1cm4hKCFhfHwhYVtuYmFdKX07CnBiYT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMubGlzdGVuZXI9YTt0aGlzLnByb3h5PW51bGw7dGhpcy5zcmM9Yjt0aGlzLnR5cGU9Yzt0aGlzLmNhcHR1cmU9ISFkO3RoaXMub3A9ZTt0aGlzLmtleT0rK29iYTt0aGlzLnFxPXRoaXMuakE9ITF9O3FrPWZ1bmN0aW9uKGEpe2EucXE9ITA7YS5saXN0ZW5lcj1udWxsO2EucHJveHk9bnVsbDthLnNyYz1udWxsO2Eub3A9bnVsbH07cms9ZnVuY3Rpb24oYSl7dGhpcy5zcmM9YTt0aGlzLmFpPXt9O3RoaXMucWg9MH07c2s9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnR5cGU7aWYoIShjIGluIGEuYWkpKXJldHVybiExO3ZhciBkPV8ueWMoYS5haVtjXSxiKTtkJiYocWsoYiksYS5haVtjXS5sZW5ndGg9PTAmJihkZWxldGUgYS5haVtjXSxhLnFoLS0pKTtyZXR1cm4gZH07Cl8ucWJhPWZ1bmN0aW9uKGEpe3ZhciBiPTA7Zm9yKGxldCBjIGluIGEuYWkpe2xldCBkPWEuYWlbY107Zm9yKGxldCBlPTA7ZTxkLmxlbmd0aDtlKyspKytiLHFrKGRbZV0pO2RlbGV0ZSBhLmFpW2NdO2EucWgtLX19O3RrPWZ1bmN0aW9uKGEsYixjLGQpe2ZvcihsZXQgZT0wO2U8YS5sZW5ndGg7KytlKXtsZXQgZj1hW2VdO2lmKCFmLnFxJiZmLmxpc3RlbmVyPT1iJiZmLmNhcHR1cmU9PSEhYyYmZi5vcD09ZClyZXR1cm4gZX1yZXR1cm4tMX07Xy52az1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKGQmJmQub25jZSlyZXR1cm4gXy51ayhhLGIsYyxkLGUpO2lmKEFycmF5LmlzQXJyYXkoYikpe2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8udmsoYSxiW2ZdLGMsZCxlKTtyZXR1cm4gbnVsbH1jPXdrKGMpO3JldHVybiBfLnBrKGEpP18ueGsoYSxiLGMsXy5aYShkKT8hIWQuY2FwdHVyZTohIWQsZSk6cmJhKGEsYixjLCExLGQsZSl9OwpyYmE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2lmKCFiKXRocm93IEVycm9yKCJJbnZhbGlkIGV2ZW50IHR5cGUiKTt2YXIgZz1fLlphKGUpPyEhZS5jYXB0dXJlOiEhZSxoPV8ueWsoYSk7aHx8KGFbemtdPWg9bmV3IHJrKGEpKTtjPWguYWRkKGIsYyxkLGcsZik7aWYoYy5wcm94eSlyZXR1cm4gYztkPXNiYSgpO2MucHJveHk9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpZT09PXZvaWQgMCYmKGU9ITEpLGEuYWRkRXZlbnRMaXN0ZW5lcihiLnRvU3RyaW5nKCksZCxlKTtlbHNlIGlmKGEuYXR0YWNoRXZlbnQpYS5hdHRhY2hFdmVudCh0YmEoYi50b1N0cmluZygpKSxkKTtlbHNlIGlmKGEuYWRkTGlzdGVuZXImJmEucmVtb3ZlTGlzdGVuZXIpYS5hZGRMaXN0ZW5lcihkKTtlbHNlIHRocm93IEVycm9yKCJhZGRFdmVudExpc3RlbmVyIGFuZCBhdHRhY2hFdmVudCBhcmUgdW5hdmFpbGFibGUuIik7dWJhKys7cmV0dXJuIGN9OwpzYmE9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGMpe3JldHVybiBiLmNhbGwoYS5zcmMsYS5saXN0ZW5lcixjKX12YXIgYj12YmE7cmV0dXJuIGF9O18udWs9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKylfLnVrKGEsYltmXSxjLGQsZSk7cmV0dXJuIG51bGx9Yz13ayhjKTtyZXR1cm4gXy5wayhhKT9hLlNwLmFkZChTdHJpbmcoYiksYywhMCxfLlphKGQpPyEhZC5jYXB0dXJlOiEhZCxlKTpyYmEoYSxiLGMsITAsZCxlKX07CndiYT1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKGxldCBmPTA7ZjxiLmxlbmd0aDtmKyspd2JhKGEsYltmXSxjLGQsZSk7ZWxzZShkPV8uWmEoZCk/ISFkLmNhcHR1cmU6ISFkLGM9d2soYyksXy5wayhhKSk/YS5TcC5yZW1vdmUoU3RyaW5nKGIpLGMsZCxlKTphJiYoYT1fLnlrKGEpKSYmKGI9YS5haVtiLnRvU3RyaW5nKCldLGE9LTEsYiYmKGE9dGsoYixjLGQsZSkpLChjPWE+LTE/YlthXTpudWxsKSYmXy5BayhjKSl9OwpfLkFrPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhPT09Im51bWJlciJ8fCFhfHxhLnFxKXJldHVybiExO3ZhciBiPWEuc3JjO2lmKF8ucGsoYikpcmV0dXJuIHNrKGIuU3AsYSk7dmFyIGM9YS50eXBlLGQ9YS5wcm94eTtiLnJlbW92ZUV2ZW50TGlzdGVuZXI/Yi5yZW1vdmVFdmVudExpc3RlbmVyKGMsZCxhLmNhcHR1cmUpOmIuZGV0YWNoRXZlbnQ/Yi5kZXRhY2hFdmVudCh0YmEoYyksZCk6Yi5hZGRMaXN0ZW5lciYmYi5yZW1vdmVMaXN0ZW5lciYmYi5yZW1vdmVMaXN0ZW5lcihkKTt1YmEtLTsoYz1fLnlrKGIpKT8oc2soYyxhKSxjLnFoPT0wJiYoYy5zcmM9bnVsbCxiW3prXT1udWxsKSk6cWsoYSk7cmV0dXJuITB9O3RiYT1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbiBDaz9Da1thXTpDa1thXT0ib24iK2F9Owp2YmE9ZnVuY3Rpb24oYSxiKXtpZihhLnFxKWE9ITA7ZWxzZXtiPW5ldyBfLm9rKGIsdGhpcyk7bGV0IGM9YS5saXN0ZW5lcixkPWEub3B8fGEuc3JjO2EuakEmJl8uQWsoYSk7YT1jLmNhbGwoZCxiKX1yZXR1cm4gYX07Xy55az1mdW5jdGlvbihhKXthPWFbemtdO3JldHVybiBhIGluc3RhbmNlb2Ygcms/YTpudWxsfTt3az1mdW5jdGlvbihhKXtpZih0eXBlb2YgYT09PSJmdW5jdGlvbiIpcmV0dXJuIGE7YVtEa118fChhW0RrXT1mdW5jdGlvbihiKXtyZXR1cm4gYS5oYW5kbGVFdmVudChiKX0pO3JldHVybiBhW0RrXX07CnhiYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAwOnJldHVybiJObyBFcnJvciI7Y2FzZSAxOnJldHVybiJBY2Nlc3MgZGVuaWVkIHRvIGNvbnRlbnQgZG9jdW1lbnQiO2Nhc2UgMjpyZXR1cm4iRmlsZSBub3QgZm91bmQiO2Nhc2UgMzpyZXR1cm4iRmlyZWZveCBzaWxlbnRseSBlcnJvcmVkIjtjYXNlIDQ6cmV0dXJuIkFwcGxpY2F0aW9uIGN1c3RvbSBlcnJvciI7Y2FzZSA1OnJldHVybiJBbiBleGNlcHRpb24gb2NjdXJyZWQiO2Nhc2UgNjpyZXR1cm4iSHR0cCByZXNwb25zZSBhdCA0MDAgb3IgNTAwIGxldmVsIjtjYXNlIDc6cmV0dXJuIlJlcXVlc3Qgd2FzIGFib3J0ZWQiO2Nhc2UgODpyZXR1cm4iUmVxdWVzdCB0aW1lZCBvdXQiO2Nhc2UgOTpyZXR1cm4iVGhlIHJlc291cmNlIGlzIG5vdCBhdmFpbGFibGUgb2ZmbGluZSI7ZGVmYXVsdDpyZXR1cm4iVW5yZWNvZ25pemVkIGVycm9yIGNvZGUifX07Cl8uRWs9ZnVuY3Rpb24oYSl7aWYoYS5KbSYmdHlwZW9mIGEuSm09PSJmdW5jdGlvbiIpcmV0dXJuIGEuSm0oKTtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXB8fHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFNldClyZXR1cm4gQXJyYXkuZnJvbShhLnZhbHVlcygpKTtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiBhLnNwbGl0KCIiKTtpZihfLllhKGEpKXtsZXQgYj1bXSxjPWEubGVuZ3RoO2ZvcihsZXQgZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifXJldHVybiBfLmlqKGEpfTsKXy5Gaz1mdW5jdGlvbihhKXtpZihhLlJzJiZ0eXBlb2YgYS5Scz09ImZ1bmN0aW9uIilyZXR1cm4gYS5ScygpO2lmKCFhLkptfHx0eXBlb2YgYS5KbSE9ImZ1bmN0aW9uIil7aWYodHlwZW9mIE1hcCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgTWFwKXJldHVybiBBcnJheS5mcm9tKGEua2V5cygpKTtpZighKHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFNldCkpe2lmKF8uWWEoYSl8fHR5cGVvZiBhPT09InN0cmluZyIpe3ZhciBiPVtdO2E9YS5sZW5ndGg7Zm9yKHZhciBjPTA7YzxhO2MrKyliLnB1c2goYyk7cmV0dXJuIGJ9Yj1bXTtjPTA7Zm9yKGxldCBkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9fX07eWJhPWZ1bmN0aW9uKGEpe3ZhciBiPSIiO18uZmooYSxmdW5jdGlvbihjLGQpe2IrPWQ7Yis9IjoiO2IrPWM7Yis9IlxyXG4ifSk7cmV0dXJuIGJ9OwpfLkdrPWZ1bmN0aW9uKCl7Xy5tay5jYWxsKHRoaXMpO3RoaXMuU3A9bmV3IHJrKHRoaXMpO3RoaXMuenY9dGhpczt0aGlzLndrPW51bGx9O18ueGs9ZnVuY3Rpb24oYSxiLGMsZCxlKXtyZXR1cm4gYS5TcC5hZGQoU3RyaW5nKGIpLGMsITEsZCxlKX07SGs9ZnVuY3Rpb24oYSxiLGMsZCl7Yj1hLlNwLmFpW1N0cmluZyhiKV07aWYoIWIpcmV0dXJuITA7Yj1iLmNvbmNhdCgpO3ZhciBlPSEwO2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7KytmKXtsZXQgZz1iW2ZdO2lmKGcmJiFnLnFxJiZnLmNhcHR1cmU9PWMpe2xldCBoPWcubGlzdGVuZXIsaz1nLm9wfHxnLnNyYztnLmpBJiZzayhhLlNwLGcpO2U9aC5jYWxsKGssZCkhPT0hMSYmZX19cmV0dXJuIGUmJiFkLmRlZmF1bHRQcmV2ZW50ZWR9O18uSWs9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMjAwOmNhc2UgMjAxOmNhc2UgMjAyOmNhc2UgMjA0OmNhc2UgMjA2OmNhc2UgMzA0OmNhc2UgMTIyMzpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX07CnpiYT1mdW5jdGlvbigpe307Sms9ZnVuY3Rpb24oKXt9O18uS2s9ZnVuY3Rpb24oYSl7Xy5Hay5jYWxsKHRoaXMpO3RoaXMuaGVhZGVycz1uZXcgTWFwO3RoaXMuSWg9YXx8bnVsbDt0aGlzLnJoPSExO3RoaXMucWg9bnVsbDt0aGlzLkFoPSIiO3RoaXMuc2g9MDt0aGlzLnhoPSIiO3RoaXMud2g9dGhpcy5HaD10aGlzLkNoPXRoaXMuRmg9ITE7dGhpcy5CaD0wO3RoaXMudGg9bnVsbDt0aGlzLkRoPSIiO3RoaXMueWg9ITF9O0JiYT1mdW5jdGlvbihhLGIpe2Eucmg9ITE7YS5xaCYmKGEud2g9ITAsYS5xaC5hYm9ydCgpLGEud2g9ITEpO2EueGg9YjthLnNoPTU7QWJhKGEpO0xrKGEpfTtBYmE9ZnVuY3Rpb24oYSl7YS5GaHx8KGEuRmg9ITAsYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9OwpDYmE9ZnVuY3Rpb24oYSl7aWYoYS5yaCYmdHlwZW9mIE1rIT0idW5kZWZpbmVkIilpZihhLkNoJiZfLk5rKGEpPT00KXNldFRpbWVvdXQoYS5ZSS5iaW5kKGEpLDApO2Vsc2UgaWYoYS5kaXNwYXRjaEV2ZW50KCJyZWFkeXN0YXRlY2hhbmdlIiksYS5NbSgpKXthLmdldFN0YXR1cygpO2Eucmg9ITE7dHJ5e2lmKF8uT2soYSkpYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgic3VjY2VzcyIpO2Vsc2V7YS5zaD02O3RyeXt2YXIgYj1fLk5rKGEpPjI/YS5xaC5zdGF0dXNUZXh0OiIifWNhdGNoKGMpe2I9IiJ9YS54aD1iKyIgWyIrYS5nZXRTdGF0dXMoKSsiXSI7QWJhKGEpfX1maW5hbGx5e0xrKGEpfX19O0xrPWZ1bmN0aW9uKGEsYil7aWYoYS5xaCl7YS50aCYmKGNsZWFyVGltZW91dChhLnRoKSxhLnRoPW51bGwpO2xldCBjPWEucWg7YS5xaD1udWxsO2J8fGEuZGlzcGF0Y2hFdmVudCgicmVhZHkiKTt0cnl7Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbH1jYXRjaChkKXt9fX07Cl8uT2s9ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXRTdGF0dXMoKSxjO2lmKCEoYz1fLklrKGIpKSl7aWYoYj1iPT09MClhPV8uRWooMSxTdHJpbmcoYS5BaCkpLCFhJiZfLlVhLnNlbGYmJl8uVWEuc2VsZi5sb2NhdGlvbiYmKGE9Xy5VYS5zZWxmLmxvY2F0aW9uLnByb3RvY29sLnNsaWNlKDAsLTEpKSxiPSFEYmEudGVzdChhP2EudG9Mb3dlckNhc2UoKToiIik7Yz1ifXJldHVybiBjfTtfLk5rPWZ1bmN0aW9uKGEpe3JldHVybiBhLnFoP2EucWgucmVhZHlTdGF0ZTowfTtfLlBrPWZ1bmN0aW9uKGEpe3RyeXtpZighYS5xaClyZXR1cm4gbnVsbDtpZigicmVzcG9uc2UiaW4gYS5xaClyZXR1cm4gYS5xaC5yZXNwb25zZTtzd2l0Y2goYS5EaCl7Y2FzZSAiIjpjYXNlICJ0ZXh0IjpyZXR1cm4gYS5xaC5yZXNwb25zZVRleHQ7Y2FzZSAiYXJyYXlidWZmZXIiOmlmKCJtb3pSZXNwb25zZUFycmF5QnVmZmVyImluIGEucWgpcmV0dXJuIGEucWgubW96UmVzcG9uc2VBcnJheUJ1ZmZlcn1yZXR1cm4gbnVsbH1jYXRjaChiKXtyZXR1cm4gbnVsbH19OwpFYmE9ZnVuY3Rpb24oYSl7dmFyIGI9e307YT1hLmdldEFsbFJlc3BvbnNlSGVhZGVycygpLnNwbGl0KCJcclxuIik7Zm9yKGxldCBkPTA7ZDxhLmxlbmd0aDtkKyspe2lmKC9eW1xzXHhhMF0qJC8udGVzdChhW2RdKSljb250aW51ZTt2YXIgYz1MYWEoYVtkXSk7bGV0IGU9Y1swXTtjPWNbMV07aWYodHlwZW9mIGMhPT0ic3RyaW5nIiljb250aW51ZTtjPWMudHJpbSgpO2xldCBmPWJbZV18fFtdO2JbZV09ZjtmLnB1c2goYyl9cmV0dXJuIEhhYShiLGZ1bmN0aW9uKGQpe3JldHVybiBkLmpvaW4oIiwgIil9KX07RmJhPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS54aD09PSJzdHJpbmciP2EueGg6U3RyaW5nKGEueGgpfTtfLkhiYT1mdW5jdGlvbihhLGIsYz17fSl7cmV0dXJuIG5ldyBHYmEoYixhLGMpfTtKYmE9ZnVuY3Rpb24oYSxiPXt9KXtyZXR1cm4gbmV3IEliYShhLGIpfTsKTWJhPWZ1bmN0aW9uKGEpe2EueGgucnAoImRhdGEiLGI9PntpZigiMSJpbiBiKXt2YXIgYz1iWyIxIl07bGV0IGQ7dHJ5e2Q9YS56aChjKX1jYXRjaChlKXtRayhhLG5ldyBfLlJrKDEzLGBFcnJvciB3aGVuIGRlc2VyaWFsaXppbmcgcmVzcG9uc2UgZGF0YTsgZXJyb3I6ICR7ZX0sIHJlc3BvbnNlOiAke2N9YCkpfWQmJktiYShhLGQpfWlmKCIyImluIGIpZm9yKGI9TGJhKGEsYlsiMiJdKSxjPTA7YzxhLndoLmxlbmd0aDtjKyspYS53aFtjXShiKX0pO2EueGgucnAoImVuZCIsKCk9PntTayhhLFRrKGEpKTtmb3IobGV0IGI9MDtiPGEuc2gubGVuZ3RoO2IrKylhLnNoW2JdKCl9KTthLnhoLnJwKCJlcnJvciIsKCk9PntpZihhLnFoLmxlbmd0aCE9PTApe3ZhciBiPWEuVGkuc2g7YiE9PTB8fF8uT2soYS5UaSl8fChiPTYpO3ZhciBjPS0xO3N3aXRjaChiKXtjYXNlIDA6dmFyIGQ9MjticmVhaztjYXNlIDc6ZD0xMDticmVhaztjYXNlIDg6ZD00O2JyZWFrO2Nhc2UgNjpjPWEuVGkuZ2V0U3RhdHVzKCk7CmQ9bGJhKGMpO2JyZWFrO2RlZmF1bHQ6ZD0xNH1TayhhLFRrKGEpKTtiPXhiYShiKSsiLCBlcnJvcjogIitGYmEoYS5UaSk7YyE9PS0xJiYoYis9YCwgaHR0cCBzdGF0dXMgY29kZTogJHtjfWApO1FrKGEsbmV3IF8uUmsoZCxiKSl9fSl9O1FrPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjPTA7YzxhLnFoLmxlbmd0aDtjKyspYS5xaFtjXShiKX07U2s9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGM9MDtjPGEudGgubGVuZ3RoO2MrKylhLnRoW2NdKGIpfTtUaz1mdW5jdGlvbihhKXt2YXIgYj17fSxjPUViYShhLlRpKTtPYmplY3Qua2V5cyhjKS5mb3JFYWNoKGQ9PntiW2RdPWNbZF19KTtyZXR1cm4gYn07S2JhPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjPTA7YzxhLnJoLmxlbmd0aDtjKyspYS5yaFtjXShiKX07CkxiYT1mdW5jdGlvbihhLGIpe3ZhciBjPTIsZD17fTt0cnl7bGV0IGY7Zj1OYmEoYik7Yz1fLktnKGYsMSk7dmFyIGU9Zi5nZXRNZXNzYWdlKCk7Xy5DZyhmLE9iYSwzKS5sZW5ndGgmJihkWyJncnBjLXdlYi1zdGF0dXMtZGV0YWlscy1iaW4iXT1iKX1jYXRjaChmKXthLlRpJiZhLlRpLmdldFN0YXR1cygpPT09NDA0PyhjPTUsZT0iTm90IEZvdW5kOiAiK1N0cmluZyhhLlRpLkFoKSk6KGM9MTQsZT1gVW5hYmxlIHRvIHBhcnNlIFJwY1N0YXR1czogJHtmfWApfXJldHVybntjb2RlOmMsZGV0YWlsczplLG1ldGFkYXRhOmR9fTsKUWJhPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IFBiYTtfLnZrKGEuVGksImNvbXBsZXRlIiwoKT0+e2lmKF8uT2soYS5UaSkpe3ZhciBkPWEuVGkuUnIoKTt2YXIgZTtpZihlPWIpZT1hLlRpLGUucWgmJmUuTW0oKT8oZT1lLnFoLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKSxlPWU9PT1udWxsP3ZvaWQgMDplKTplPXZvaWQgMCxlPWU9PT0idGV4dC9wbGFpbiI7aWYoZSl7aWYoIWF0b2IpdGhyb3cgRXJyb3IoIkNhbm5vdCBkZWNvZGUgQmFzZTY0IHJlc3BvbnNlIik7ZD1hdG9iKGQpfXRyeXt2YXIgZj1hLnpoKGQpfWNhdGNoKGgpe1FrKGEsVWsobmV3IF8uUmsoMTMsYEVycm9yIHdoZW4gZGVzZXJpYWxpemluZyByZXNwb25zZSBkYXRhOyBlcnJvcjogJHtofSwgcmVzcG9uc2U6ICR7ZH1gKSxjKSk7cmV0dXJufWQ9bGJhKGEuVGkuZ2V0U3RhdHVzKCkpO1NrKGEsVGsoYSkpO2Q9PT0wP0tiYShhLGYpOlFrKGEsVWsobmV3IF8uUmsoZCwiWGhyIHN1Y2NlZWRlZCBidXQgdGhlIHN0YXR1cyBjb2RlIGlzIG5vdCAyMDAiKSwKYykpfWVsc2V7ZD1hLlRpLlJyKCk7Zj1UayhhKTtpZihkKXt2YXIgZz1MYmEoYSxkKTtkPWcuY29kZTtlPWcuZGV0YWlscztnPWcubWV0YWRhdGF9ZWxzZSBkPTIsZT1gUnBjIGZhaWxlZCBkdWUgdG8geGhyIGVycm9yLiB1cmk6ICR7U3RyaW5nKGEuVGkuQWgpfSwgZXJyb3IgY29kZTogJHthLlRpLnNofSwgZXJyb3I6ICR7RmJhKGEuVGkpfWAsZz1mO1NrKGEsZik7UWsoYSxVayhuZXcgXy5SayhkLGUsZyksYykpfX0pfTtWaz1mdW5jdGlvbihhLGIpe2I9YS5pbmRleE9mKGIpO2I+LTEmJmEuc3BsaWNlKGIsMSl9O1VrPWZ1bmN0aW9uKGEsYil7Yi5zdGFjayYmKGEuc3RhY2srPSJcbiIrYi5zdGFjayk7cmV0dXJuIGF9O1drPWZ1bmN0aW9uKGEpe3RoaXMuc2g9YS5EcHx8bnVsbDt0aGlzLnJoPWEuWVB8fCExfTsKWGs9ZnVuY3Rpb24oYSxiKXtfLkdrLmNhbGwodGhpcyk7dGhpcy5GaD1hO3RoaXMueWg9Yjt0aGlzLnhoPXZvaWQgMDt0aGlzLnN0YXR1cz10aGlzLnJlYWR5U3RhdGU9MDt0aGlzLnJlc3BvbnNlVHlwZT10aGlzLnJlc3BvbnNlVGV4dD10aGlzLnJlc3BvbnNlPXRoaXMuc3RhdHVzVGV4dD0iIjt0aGlzLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsO3RoaXMuQ2g9bmV3IEhlYWRlcnM7dGhpcy5yaD1udWxsO3RoaXMuRGg9IkdFVCI7dGhpcy50aD0iIjt0aGlzLnFoPSExO3RoaXMuQWg9dGhpcy5zaD10aGlzLndoPW51bGw7dGhpcy5CaD1uZXcgQWJvcnRDb250cm9sbGVyfTtSYmE9ZnVuY3Rpb24oYSl7YS5zaC5yZWFkKCkudGhlbihhLm5OLmJpbmQoYSkpLmNhdGNoKGEuVkEuYmluZChhKSl9O1prPWZ1bmN0aW9uKGEpe2EucmVhZHlTdGF0ZT00O2Eud2g9bnVsbDthLnNoPW51bGw7YS5BaD1udWxsO1lrKGEpfTtZaz1mdW5jdGlvbihhKXthLm9ucmVhZHlzdGF0ZWNoYW5nZSYmYS5vbnJlYWR5c3RhdGVjaGFuZ2UuY2FsbChhKX07Cl8uJGs9ZnVuY3Rpb24oYSl7Xy5tay5jYWxsKHRoaXMpO3RoaXMud2g9YTt0aGlzLnFoPXt9fTtfLmFsPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtBcnJheS5pc0FycmF5KGMpfHwoYyYmKFNiYVswXT1jLnRvU3RyaW5nKCkpLGM9U2JhKTtmb3IobGV0IGc9MDtnPGMubGVuZ3RoO2crKyl7bGV0IGg9Xy52ayhiLGNbZ10sZHx8YS5oYW5kbGVFdmVudCxlfHwhMSxmfHxhLndofHxhKTtpZighaClicmVhazthLnFoW2gua2V5XT1ofX07Xy5ibD1mdW5jdGlvbihhKXtfLmZqKGEucWgsZnVuY3Rpb24oYixjKXt0aGlzLnFoLmhhc093blByb3BlcnR5KGMpJiZfLkFrKGIpfSxhKTthLnFoPXt9fTtUYmE9ZnVuY3Rpb24oYSxiLGMpe2Euc2g9ITE7dGhyb3cgRXJyb3IoIlRoZSBzdHJlYW0gaXMgYnJva2VuIEAiK2EucmgrIi4gRXJyb3I6ICIrYysiLiBXaXRoIGlucHV0OlxuIitiKTt9OwpjbD1mdW5jdGlvbigpe3RoaXMuQWg9bnVsbDt0aGlzLnpoPVtdO3RoaXMud2g9dGhpcy5xaD10aGlzLnRoPXRoaXMucmg9dGhpcy5DaD0wO3RoaXMueGg9bnVsbDt0aGlzLnloPTB9O2RsPWZ1bmN0aW9uKGEsYixjLGQpe2Eucmg9MzthLkFoPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIithLkNoKyIvIitjKyIuIEVycm9yOiAiK2QrIi4gV2l0aCBpbnB1dDpcbiIrYjt0aHJvdyBFcnJvcihhLkFoKTt9O2VsPWZ1bmN0aW9uKCl7dGhpcy5xaD1udWxsO3RoaXMucmg9MDt0aGlzLnRoPW5ldyBVYmE7dGhpcy53aD1uZXcgY2x9O1ZiYT1mdW5jdGlvbihhLGIsYyl7YS5xaD0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrYS5yaCsiLiBFcnJvcjogIitjKyIuIFdpdGggaW5wdXQ6XG4iK2I7dGhyb3cgRXJyb3IoYS5xaCk7fTtmbD1mdW5jdGlvbihhKXtyZXR1cm4gYT09IlxyInx8YT09IlxuInx8YT09IiAifHxhPT0iXHQifTsKZ2w9ZnVuY3Rpb24oYSl7dGhpcy5DaD1udWxsO3RoaXMueGg9W107dGhpcy53aD0iIjt0aGlzLkZoPVtdO3RoaXMudGg9dGhpcy5yaD0wO3RoaXMuemg9ITE7dGhpcy5BaD0wO3RoaXMuR2g9L1tcXCJdL2c7dGhpcy5xaD10aGlzLnloPTA7dGhpcy5EaD0hKCFhfHwhYS5qTSl9O2hsPWZ1bmN0aW9uKGEsYixjKXthLnloPTM7YS5DaD0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrYS50aCsiLyIrYysiLiBXaXRoIGlucHV0OlxuIitiO3Rocm93IEVycm9yKGEuQ2gpO307aWw9ZnVuY3Rpb24oKXt0aGlzLnhoPXRoaXMudGg9bnVsbDt0aGlzLnJoPXRoaXMucWg9MDt0aGlzLndoPVtdO3RoaXMuemg9ITF9OwpXYmE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5xaD9hLnFoLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKTpudWxsO2lmKCFiKXJldHVybiBudWxsO2I9Yi50b0xvd2VyQ2FzZSgpO3JldHVybiBiLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24iKT9iLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiKT9uZXcgaWw6bmV3IGdsOmIuc3RhcnRzV2l0aCgiYXBwbGljYXRpb24veC1wcm90b2J1ZiIpPyhhPWEucWg/YS5xaC5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZyIpOm51bGwpP2EudG9Mb3dlckNhc2UoKT09ImJhc2U2NCI/bmV3IGVsOm51bGw6bmV3IGNsOm51bGx9O2psPWZ1bmN0aW9uKGEsYil7YS53aCE9YiYmKGEud2g9YixhLnpoJiZhLnpoKCkpfTtrbD1mdW5jdGlvbihhKXtfLmJsKGEueWgpO2lmKGEucWgpe2xldCBiPWEucWg7YS5xaD1udWxsO2IuYWJvcnQoKTtiLmRpc3Bvc2UoKX19OwpYYmE9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGM9MDtjPGEubGVuZ3RoO2MrKyl7bGV0IGQ9YVtjXTtiLmZvckVhY2goZnVuY3Rpb24oZSl7dHJ5e2UoZCl9Y2F0Y2goZil7fX0pfX07bGw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnJoW2JdO2MmJmMuZm9yRWFjaChmdW5jdGlvbihkKXt0cnl7ZCgpfWNhdGNoKGUpe319KTsoYz1hLnFoW2JdKSYmYy5mb3JFYWNoKGZ1bmN0aW9uKGQpe2QoKX0pO2EucWhbYl09W119O1liYT1mdW5jdGlvbihhLGIpe3JldHVybiBiLnJlZHVjZSgoYyxkKT0+ZT0+ZC5pbnRlcmNlcHQoZSxjKSxhKX07CmJjYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yi5PSSxlPWIuZ2V0TWV0YWRhdGEoKSxmPV8uWmJhKGEsITApO2E9Xy4kYmEoYSxlLGYsYytkLmdldE5hbWUoKSk7Yz1fLmFjYShmLGQucWgsITEpO1FiYShjLGVbIlgtR29vZy1FbmNvZGUtUmVzcG9uc2UtSWYtRXhlY3V0YWJsZSJdPT09ImJhc2U2NCIpO2I9ZC5yaChiLlhFKTtmLnNlbmQoYSwiUE9TVCIsYik7cmV0dXJuIGN9O18uWmJhPWZ1bmN0aW9uKGEsYil7Yj1hLnNoJiYhYjtyZXR1cm4gYS5URnx8Yj9uZXcgXy5LayhuZXcgV2soe0RwOmEuVEYsWVA6Yn0pKTpuZXcgXy5La307Cl8uJGJhPWZ1bmN0aW9uKGEsYixjLGQpe2JbIkNvbnRlbnQtVHlwZSJdPSJhcHBsaWNhdGlvbi9qc29uK3Byb3RvYnVmIjtiWyJYLVVzZXItQWdlbnQiXT0iZ3JwYy13ZWItamF2YXNjcmlwdC8wLjEiO3ZhciBlPWIuQXV0aG9yaXphdGlvbjtpZihlJiZjY2EuaGFzKGUuc3BsaXQoIiAiKVswXSl8fGEud2l0aENyZWRlbnRpYWxzKWMueWg9ITA7aWYoYS54RilhPWQsXy5qaihiKT9kPWE6KGI9eWJhKGIpLHR5cGVvZiBhPT09InN0cmluZyI/ZD1fLkZqKGEsXy5DaigiJGh0dHBIZWFkZXJzIiksYik6KGEuaHYoIiRodHRwSGVhZGVycyIsYiksZD1hKSk7ZWxzZSBmb3IobGV0IGYgb2YgT2JqZWN0LmtleXMoYikpYy5oZWFkZXJzLnNldChmLGJbZl0pO3JldHVybiBkfTtfLmFjYT1mdW5jdGlvbihhLGIsYyl7aWYoYyl7YS5pc0FjdGl2ZSgpO2M9bmV3IGRjYShhKTt2YXIgZD1uZXcgZWNhKGMpfXJldHVybiBuZXcgZmNhKHtUaTphLHpPOmR9LGIpfTsKXy5tbD1mdW5jdGlvbihhKXtyZXR1cm4gXy5IKGEsMTApfTtfLmdjYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5IKGEsMTkpfTtfLnJsPWZ1bmN0aW9uKGEpe3JldHVybiBfLkgoYSwxKX07aGNhPWZ1bmN0aW9uKGEpe3JldHVybiBfLkxnKGEsMSl9O18uc2w9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uRyhhLGljYSw0KX07Xy5rY2E9ZnVuY3Rpb24oYSl7YT1hPz8iRk9MTE9XX1NZU1RFTSI7cmV0dXJuIGE9PT0iREFSSyJ8fGE9PT0iRk9MTE9XX1NZU1RFTSImJmpjYS5tYXRjaGVzfTtfLnRsPWZ1bmN0aW9uKGEpe3JldHVybiBhKk1hdGguUEkvMTgwfTtfLnVsPWZ1bmN0aW9uKGEpe3JldHVybiBhKjE4MC9NYXRoLlBJfTsKbWNhPWZ1bmN0aW9uKGEsYil7Xy5maihiLGZ1bmN0aW9uKGMsZCl7ZD09InN0eWxlIj9hLnN0eWxlLmNzc1RleHQ9YzpkPT0iY2xhc3MiP2EuY2xhc3NOYW1lPWM6ZD09ImZvciI/YS5odG1sRm9yPWM6bGNhLmhhc093blByb3BlcnR5KGQpP2Euc2V0QXR0cmlidXRlKGxjYVtkXSxjKTpfLkViKGQsImFyaWEtIil8fF8uRWIoZCwiZGF0YS0iKT9hLnNldEF0dHJpYnV0ZShkLGMpOmFbZF09Y30pfTtfLm9jYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YXJndW1lbnRzLGU9ZG9jdW1lbnQsZj1kWzFdLGc9dmwoZSxTdHJpbmcoZFswXSkpO2YmJih0eXBlb2YgZj09PSJzdHJpbmciP2cuY2xhc3NOYW1lPWY6QXJyYXkuaXNBcnJheShmKT9nLmNsYXNzTmFtZT1mLmpvaW4oIiAiKTptY2EoZyxmKSk7ZC5sZW5ndGg+MiYmbmNhKGUsZyxkLDIpO3JldHVybiBnfTsKbmNhPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoZil7ZiYmYi5hcHBlbmRDaGlsZCh0eXBlb2YgZj09PSJzdHJpbmciP2EuY3JlYXRlVGV4dE5vZGUoZik6Zil9Zm9yKDtkPGMubGVuZ3RoO2QrKyl7bGV0IGY9Y1tkXTshXy5ZYShmKXx8Xy5aYShmKSYmZi5ub2RlVHlwZT4wP2UoZik6Xy5yYyhmJiZ0eXBlb2YgZi5sZW5ndGg9PSJudW1iZXIiJiZ0eXBlb2YgZi5pdGVtPT0iZnVuY3Rpb24iP18uQmMoZik6ZixlKX19O18ud2w9ZnVuY3Rpb24oYSl7cmV0dXJuIHZsKGRvY3VtZW50LGEpfTt2bD1mdW5jdGlvbihhLGIpe2I9U3RyaW5nKGIpO2EuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKGI9Yi50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gYS5jcmVhdGVFbGVtZW50KGIpfTtfLnhsPWZ1bmN0aW9uKGEsYil7Yi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGEsYi5uZXh0U2libGluZyl9OwpfLnlsPWZ1bmN0aW9uKGEpe2EmJmEucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpfTtfLnpsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEmJmI/YT09Ynx8YS5jb250YWlucyhiKTohMX07Xy5BbD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH07Xy5CbD1mdW5jdGlvbihhKXt0aGlzLnFoPWF8fF8uVWEuZG9jdW1lbnR8fGRvY3VtZW50fTtfLkRsPWZ1bmN0aW9uKGEpe2E9Xy5DbChhKTtyZXR1cm4gXy54aihhKX07Xy5FbD1mdW5jdGlvbihhKXthPV8uQ2woYSk7cmV0dXJuIF8ucWooYSl9O18uQ2w9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmF9OwpwY2E9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5oZWFkO2E9KG5ldyBfLkJsKGEpKS5jcmVhdGVFbGVtZW50KCJTQ1JJUFQiKTthLnR5cGU9InRleHQvamF2YXNjcmlwdCI7YS5jaGFyc2V0PSJVVEYtOCI7YS5hc3luYz0hMTthLmRlZmVyPSExO2MmJihhLm9uZXJyb3I9Yyk7ZCYmKGEub25sb2FkPWQpO2Euc3JjPV8ucmooYik7Xy5LYWEoYSk7ZS5hcHBlbmRDaGlsZChhKX07cWNhPWZ1bmN0aW9uKGEsYil7dmFyIGM9IiI7Zm9yKGxldCBkIG9mIGEpZC5sZW5ndGgmJmRbMF09PT0iLyI/Yz1kOihjJiZjW2MubGVuZ3RoLTFdIT09Ii8iJiYoYys9Ii8iKSxjKz1kKTtyZXR1cm4gYysiLiIrYn07cmNhPWZ1bmN0aW9uKGEsYil7YS53aFtiXT1hLndoW2JdfHx7aU06IWEueWh9O3JldHVybiBhLndoW2JdfTsKdWNhPWZ1bmN0aW9uKGEsYil7dmFyIGM9cmNhKGEsYiksZD1jLnNPO2lmKGQmJmMuaU0mJihkZWxldGUgYS53aFtiXSwhYS5xaFtiXSkpe3ZhciBlPWEueGg7RmwoYS5zaCxmPT57dmFyIGc9Zi5xaFtiXXx8W10saD1lW2JdPXNjYShnLmxlbmd0aCwoKT0+e2RlbGV0ZSBlW2JdO2QoZi5yaCk7YS50aCYmYS50aChiKTthLnpoLmRlbGV0ZShiKTt0Y2EoYSxiKX0pO2ZvcihsZXQgayBvZiBnKWEucWhba10mJmgoKX0pfX07dGNhPWZ1bmN0aW9uKGEsYil7RmwoYS5zaCxjPT57Yz1jLnRoW2JdfHxbXTt2YXIgZD1hLnJoW2JdO2RlbGV0ZSBhLnJoW2JdO3ZhciBlPWQ/ZC5sZW5ndGg6MDtmb3IobGV0IGY9MDtmPGU7KytmKXRyeXtkW2ZdLk5pKGEucWhbYl0pfWNhdGNoKGcpe3NldFRpbWVvdXQoKCk9Pnt0aHJvdyBnO30pfWZvcihsZXQgZiBvZiBjKWEueGhbZl0mJmEueGhbZl0oKX0pfTsKdmNhPWZ1bmN0aW9uKGEsYil7YS5yZXF1ZXN0ZWRNb2R1bGVzW2JdfHwoYS5yZXF1ZXN0ZWRNb2R1bGVzW2JdPSEwLEZsKGEuc2gsYz0+e3ZhciBkPWMucWhbYl0sZT1kP2QubGVuZ3RoOjA7Zm9yKGxldCBmPTA7ZjxlOysrZil7bGV0IGc9ZFtmXTthLnFoW2ddfHx2Y2EoYSxnKX1jLnNoLlBBKGIsZj0+e3ZhciBnPWEucmhbYl18fFtdO2ZvcihsZXQgaCBvZiBnKShnPWguYnApJiZnKGYmJmYuZXJyb3J8fEVycm9yKGBDb3VsZCBub3QgbG9hZCAiJHtifSIuYCkpO2RlbGV0ZSBhLnJoW2JdO2EuTXMmJmEuTXMoYixmKX0sKCk9PnthLnpoLmhhcyhiKXx8dGNhKGEsYil9KX0pKX07d2NhPWZ1bmN0aW9uKGEsYixjLGQpe2EucWhbYl0/YyhhLnFoW2JdKTooKGEucmhbYl09YS5yaFtiXXx8W10pLnB1c2goe05pOmMsYnA6ZH0pLHZjYShhLGIpKX07Rmw9ZnVuY3Rpb24oYSxiKXthLmNvbmZpZz9iKGEuY29uZmlnKTphLnFoLnB1c2goYil9OwpzY2E9ZnVuY3Rpb24oYSxiKXtpZihhKXJldHVybigpPT57LS1hfHxiKCl9O2IoKTtyZXR1cm4oKT0+e319O18uSGw9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBQcm9taXNlKChiLGMpPT57d2NhKEdsLmdldEluc3RhbmNlKCksYCR7YX1gLGQ9PntiKGQpfSxjKX0pfTtfLklsPWZ1bmN0aW9uKGEsYil7dmFyIGM9R2wuZ2V0SW5zdGFuY2UoKTthPWAke2F9YDtpZihjLnFoW2FdKXRocm93IEVycm9yKGBNb2R1bGUgJHthfSBoYXMgYmVlbiBwcm92aWRlZCBtb3JlIHRoYW4gb25jZS5gKTtjLnFoW2FdPWJ9O18uTGw9ZnVuY3Rpb24oKXt2YXIgYT1fLkpsLGI7KGI9IWEpfHwoYj1hLnJoKCksYj0hXy5KZyhiLDE4KSk7aWYoYilyZXR1cm4hMTtiPV8uZ2NhKGEucmgoKSk7aWYoIWJ8fCFiLnN0YXJ0c1dpdGgoImh0dHAiKSlyZXR1cm4hMTthPV8uT2coYSw0NCwxKTtyZXR1cm4gS2w9PT12b2lkIDA/ITE6S2w8YX07Cl8uTmw9YXN5bmMgZnVuY3Rpb24oYSxiKXt0cnl7aWYoXy5NbD8wOl8uTGwoKSlyZXR1cm4oYXdhaXQgXy5IbCgibG9nIikpLkh3Lmh1KGEsYil9Y2F0Y2goYyl7fXJldHVybiBudWxsfTtfLk9sPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXtpZigoXy5NbD8wOl8uTGwoKSkmJmEpdHJ5e2xldCBkPWF3YWl0IGE7ZCYmKGF3YWl0IF8uSGwoImxvZyIpKS5Idy5abihkLGIsYyl9Y2F0Y2goZCl7fX07Xy5QbD1hc3luYyBmdW5jdGlvbihhKXtpZigoXy5NbD8wOl8uTGwoKSkmJmEpdHJ5e2xldCBiPWF3YWl0IGE7YiYmKGF3YWl0IF8uSGwoImxvZyIpKS5Idy5qdShiKX1jYXRjaChiKXt9fTtfLlFsPWZ1bmN0aW9uKCl7dmFyIGE7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGI9cGVyZm9ybWFuY2Uubm93KCk7aWYoYSYmYi1hPDZFNClyZXR1cm4hMDthPWI7cmV0dXJuITF9fTsKXy5NPWFzeW5jIGZ1bmN0aW9uKGEsYixjPXt9KXtpZihfLkxsKCl8fGMmJmMuZm9yY2UxMDBQZXJjZW50U2FtcGxlZExvZz09PSEwKXRyeXsoYXdhaXQgXy5IbCgibG9nIikpLnhILnhoKGEsYixjKX1jYXRjaChkKXt9fTt4Y2E9YXN5bmMgZnVuY3Rpb24oKXtyZXR1cm4oYXdhaXQgXy5IbCgibG9nIikpLnhKfTtfLlJsPWZ1bmN0aW9uKCl7fTtfLlNsPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtfLlRsPWZ1bmN0aW9uKGEpe3ZhciBiPSExLGM7cmV0dXJuIGZ1bmN0aW9uKCl7Ynx8KGM9YSgpLGI9ITApO3JldHVybiBjfX07VWw9ZnVuY3Rpb24oKXt9Owp6Y2E9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIFZsfHxhIGluc3RhbmNlb2YgeWNhfHxhIGluc3RhbmNlb2YgV2wpcmV0dXJuIGE7aWYodHlwZW9mIGEubmV4dD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IFZsKCgpPT5hKTtpZih0eXBlb2YgYVtTeW1ib2wuaXRlcmF0b3JdPT0iZnVuY3Rpb24iKXJldHVybiBuZXcgVmwoKCk9PmFbU3ltYm9sLml0ZXJhdG9yXSgpKTtpZih0eXBlb2YgYS54eD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IFZsKCgpPT5hLnh4KCkpO3Rocm93IEVycm9yKCJOb3QgYW4gaXRlcmF0b3Igb3IgaXRlcmFibGUuIik7fTtBY2E9ZnVuY3Rpb24oKXt9O18uWGw9ZnVuY3Rpb24oKXt9O18uWWw9ZnVuY3Rpb24oYSl7dGhpcy5xaD1hO3RoaXMucmg9bnVsbH07Xy5abD1mdW5jdGlvbihhKXtpZihhLnFoPT1udWxsKXRocm93IEVycm9yKCJTdG9yYWdlIG1lY2hhbmlzbTogU3RvcmFnZSB1bmF2YWlsYWJsZSIpO2EuaXNBdmFpbGFibGUoKXx8Xy5CYihFcnJvcigiU3RvcmFnZSBtZWNoYW5pc206IFN0b3JhZ2UgdW5hdmFpbGFibGUiKSl9OwpCY2E9ZnVuY3Rpb24oKXt2YXIgYT1udWxsO3RyeXthPV8uVWEuc2Vzc2lvblN0b3JhZ2V8fG51bGx9Y2F0Y2goYil7fV8uWWwuY2FsbCh0aGlzLGEpfTtfLiRsPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EubGVuZ3RoOjB9O18uYm09ZnVuY3Rpb24oYSxiKXtiJiZfLmFtKGIsYz0+e2FbY109YltjXX0pfTtfLmNtPWZ1bmN0aW9uKGEsYixjKXtiIT1udWxsJiYoYT1NYXRoLm1heChhLGIpKTtjIT1udWxsJiYoYT1NYXRoLm1pbihhLGMpKTtyZXR1cm4gYX07Xy5kbT1mdW5jdGlvbihhLGIsYyl7YT49YiYmYTxjfHwoYy09YixhPSgoYS1iKSVjK2MpJWMrYik7cmV0dXJuIGF9O18uaW09ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBNYXRoLmFicyhhLWIpPD0oY3x8MUUtOSl9O18uam09ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9O18ua209ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im9iamVjdCJ9OwpfLmxtPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PW51bGw/YjphfTtfLm1tPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifTtfLm5tPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09ISFhfTtfLmFtPWZ1bmN0aW9uKGEsYil7aWYoYSlmb3IobGV0IGMgaW4gYSlhLmhhc093blByb3BlcnR5KGMpJiZiKGMsYVtjXSl9O18ub209ZnVuY3Rpb24oYSxiKXthJiZfLkNjYShhLGM9PmI9PT1jKX07Xy5DY2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGEpe3ZhciBkPTA7Yz1jfHxfLiRsKGEpO2ZvcihsZXQgZT0wLGY9Xy4kbChhKTtlPGYmJihiKGFbZV0pJiYoYS5zcGxpY2UoZS0tLDEpLGQrKyksZCE9PWMpOysrZSk7fX07Xy5wbT1mdW5jdGlvbihhKXtyZXR1cm5gJHtNYXRoLnJvdW5kKGEpfXB4YH07cW09ZnVuY3Rpb24oYSxiKXtpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxiKSlyZXR1cm4gYVtiXX07Cl8ucm09ZnVuY3Rpb24oLi4uYSl7Xy5VYS5jb25zb2xlJiZfLlVhLmNvbnNvbGUuZXJyb3ImJl8uVWEuY29uc29sZS5lcnJvciguLi5hKX07Xy5zbT1mdW5jdGlvbihhKXtmb3IobGV0IFtiLGNdb2YgT2JqZWN0LmVudHJpZXMoYSkpe2xldCBkPWI7Yz09PXZvaWQgMCYmZGVsZXRlIGFbZF19fTtfLnRtPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIG9mIGIpYj1SZWZsZWN0LmdldChhLGMpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLGMse3ZhbHVlOmIsZW51bWVyYWJsZTohMX0pfTsKXy5EY2E9ZnVuY3Rpb24oYSl7aWYodW1bYV0pcmV0dXJuIHVtW2FdO3ZhciBiPU1hdGguY2VpbChhLmxlbmd0aC82KSxjPSIiO2ZvcihsZXQgZD0wO2Q8YS5sZW5ndGg7ZCs9Yil7bGV0IGU9MDtmb3IobGV0IGY9ZDtmLWQ8YiYmZjxhLmxlbmd0aDtmKyspZSs9YS5jaGFyQ29kZUF0KGYpO2UlPTUyO2MrPWU8MjY/U3RyaW5nLmZyb21DaGFyQ29kZSg2NStlKTpTdHJpbmcuZnJvbUNoYXJDb2RlKDcxK2UpfXJldHVybiB1bVthXT1jfTtfLnZtPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4obmV3IEJjYSkuZ2V0KGEpPz9udWxsfWNhdGNoKGIpe3JldHVybiBudWxsfX07CkVjYT1mdW5jdGlvbihhKXtpZihhJiZhLnByb3RvdHlwZSlmb3IobGV0IGIgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoYS5wcm90b3R5cGUpKXtsZXQgYz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGEucHJvdG90eXBlLGIpO2MmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLnByb3RvdHlwZSxiLHsuLi5jLGVudW1lcmFibGU6ITB9KX19OwpfLndtPWZ1bmN0aW9uKGEpe2lmKGEmJmEucHJvdG90eXBlKXt2YXIgYj0oYyxkKT0+e3ZhciBlPWEucHJvdG90eXBlLm5sO2lmKHR5cGVvZiBlPT09ImZ1bmN0aW9uIilyZXR1cm4gZS5hcHBseShjLGQpO3Rocm93IEVycm9yKCJ5b3UgbXVzdCBkZWZpbmUgYSBjb25zdHJ1Y3Rvcl8iKTt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJjYWxsIix7dmFsdWUoYywuLi5kKXtyZXR1cm4gdGhpcyE9PWE/RnVuY3Rpb24ucHJvdG90eXBlLmNhbGwuYXBwbHkodGhpcyxbYywuLi5kXSk6YihjLGQpfSxlbnVtZXJhYmxlOiExLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pO09iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJhcHBseSIse3ZhbHVlKGMsZCl7cmV0dXJuIHRoaXMhPT1hP0Z1bmN0aW9uLnByb3RvdHlwZS5hcHBseS5hcHBseSh0aGlzLFtjLGRdKTpiKGMsZCl9LGVudW1lcmFibGU6ITEsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSk7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsCiJiaW5kIix7dmFsdWUoYywuLi5kKXtmdW5jdGlvbiBlKC4uLmcpe2c9ZC5jb25jYXQoZyk7cmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBlP25ldyBmKC4uLmcpOmIoYyxnKX1pZih0aGlzIT09YSlyZXR1cm4gRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQuYXBwbHkodGhpcyxbYywuLi5kXSk7dmFyIGY9dGhpcztmLnByb3RvdHlwZSYmKGUucHJvdG90eXBlPWYucHJvdG90eXBlKTtyZXR1cm4gZX0sZW51bWVyYWJsZTohMSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KTtFY2EoYSl9fTtfLnhtPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gbmV3IFVSTChhLnN0YXJ0c1dpdGgoIi8vIik/YGh0dHBzOiR7YX1gOmEpfWNhdGNoKGIpe3JldHVybiBudWxsfX07Cl8uQW09ZnVuY3Rpb24oYSxiKXt2YXIgYz0iIjtpZihiIT1udWxsKXtpZigheW0oYikpcmV0dXJuIGIgaW5zdGFuY2VvZiBFcnJvcj9iOkVycm9yKFN0cmluZyhiKSk7Yz0iOiAiK2IubWVzc2FnZX1yZXR1cm4gem0/bmV3IEZjYShhK2MpOm5ldyBHY2EoYStjKX07Xy5CbT1mdW5jdGlvbihhKXtpZigheW0oYSkpdGhyb3cgYTtfLnJtKGEubmFtZSsiOiAiK2EubWVzc2FnZSl9O3ltPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgRmNhfHxhIGluc3RhbmNlb2YgR2NhfTsKXy5DbT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yz9jKyI6ICI6IiI7cmV0dXJuIGU9PntpZighZXx8dHlwZW9mIGUhPT0ib2JqZWN0Iil0aHJvdyBfLkFtKGQrIm5vdCBhbiBPYmplY3QiKTt2YXIgZj17fTtmb3IobGV0IGcgaW4gZSl7aWYoIShifHxnIGluIGEpKXRocm93IF8uQW0oYCR7ZH11bmtub3duIHByb3BlcnR5ICR7Z31gKTtmW2ddPWVbZ119Zm9yKGxldCBnIGluIGEpdHJ5e2xldCBoPWFbZ10oZltnXSk7aWYoaCE9PXZvaWQgMHx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsZykpZltnXT1ofWNhdGNoKGgpe3Rocm93IF8uQW0oYCR7ZH1pbiBwcm9wZXJ0eSAke2d9YCxoKTt9cmV0dXJuIGZ9fTtfLkRtPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gdHlwZW9mIGE9PT0ib2JqZWN0IiYmYSE9bnVsbCYmISEoImNsb25lTm9kZSJpbiBhKX1jYXRjaChiKXtyZXR1cm4hMX19OwpfLkVtPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYz9kPT57aWYoZCBpbnN0YW5jZW9mIGEpcmV0dXJuIGQ7dHJ5e3JldHVybiBuZXcgYShkKX1jYXRjaChlKXt0aHJvdyBfLkFtKCJ3aGVuIGNhbGxpbmcgbmV3ICIrYixlKTt9fTpkPT57aWYoZCBpbnN0YW5jZW9mIGEpcmV0dXJuIGQ7dGhyb3cgXy5BbSgibm90IGFuIGluc3RhbmNlIG9mICIrYik7fX07Xy5GbT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e2ZvcihsZXQgYyBpbiBhKWlmKGFbY109PT1iKXJldHVybiBiO3Rocm93IF8uQW0oYCR7Yn0gaXMgbm90IGFuIGFjY2VwdGVkIHZhbHVlYCk7fX07Xy5HbT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IF8uQW0oIm5vdCBhbiBBcnJheSIpO3JldHVybiBiLm1hcCgoYyxkKT0+e3RyeXtyZXR1cm4gYShjKX1jYXRjaChlKXt0aHJvdyBfLkFtKGBhdCBpbmRleCAke2R9YCxlKTt9fSl9fTsKXy5IbT1mdW5jdGlvbihhLGI9MCxjPSExKXtyZXR1cm4gZD0+e2lmKGQ9PW51bGx8fHR5cGVvZiBkW1N5bWJvbC5pdGVyYXRvcl0hPT0iZnVuY3Rpb24iKXRocm93IF8uQW0oIm5vdCBpdGVyYWJsZSIpO2lmKHR5cGVvZiBkPT09InN0cmluZyImJiFjKXRocm93IF8uQW0oImEgc3RyaW5nIGlzIG5vdCBhY2NlcHRlZCIpO2Q9QXJyYXkuZnJvbShkLChlLGYpPT57dHJ5e3JldHVybiBhKGUpfWNhdGNoKGcpe3Rocm93IF8uQW0oYGF0IGluZGV4ICR7Zn1gLGcpO319KTtpZihiPjAmJmQubGVuZ3RoPGIpe2lmKGQubGVuZ3RoPT09MCl0aHJvdyBfLkFtKCJlbXB0eSBpdGVyYWJsZSIpO3Rocm93IF8uQW0oYG11c3QgY29udGFpbiBhdCBsZWFzdCAke2J9IGl0ZW1zYCk7fXJldHVybiBkfX07Xy5JbT1mdW5jdGlvbihhLGI9IiIpe3JldHVybiBjPT57aWYoYShjKSlyZXR1cm4gYzt0aHJvdyBfLkFtKGJ8fGAke2N9YCk7fX07Cl8uSm09ZnVuY3Rpb24oYSxiPSIiKXtyZXR1cm4gYz0+e2lmKGEoYykpcmV0dXJuIGM7dGhyb3cgXy5BbShifHxgJHtjfWApO319O18uS209ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1bXTtmb3IobGV0IGQ9MCxlPWEubGVuZ3RoO2Q8ZTsrK2Qpe2xldCBmPWFbZF07dHJ5e3ptPSExLChmLmlDfHxmKShiKX1jYXRjaChnKXtpZigheW0oZykpdGhyb3cgZztjLnB1c2goZy5tZXNzYWdlKTtjb250aW51ZX1maW5hbGx5e3ptPSEwfXJldHVybihmLnRoZW58fGYpKGIpfXRocm93IF8uQW0oYy5qb2luKCI7IGFuZCAiKSk7fX07Xy5MbT1mdW5jdGlvbihhLGIpe3JldHVybiBjPT5iKGEoYykpfTtfLk1tPWZ1bmN0aW9uKGEpe3JldHVybiBiPT5iPT1udWxsP2I6YShiKX07Xy5ObT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e2lmKGImJmJbYV0hPW51bGwpcmV0dXJuIGI7dGhyb3cgXy5BbSgibm8gIithKyIgcHJvcGVydHkiKTt9fTsKSGNhPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIGE7dGhyb3cgXy5BbSgibXVzdCBiZSBudWxsIG9yIHVuZGVmaW5lZCIpO307SWNhPWZ1bmN0aW9uKGEpe2lmKGlzTmFOKGEpKXRocm93IF8uQW0oIk5hTiBpcyBub3QgYW4gYWNjZXB0ZWQgdmFsdWUiKTt9O18uUG09ZnVuY3Rpb24oYSxiPTApe3JldHVybiBfLkxtKF8uT20sYz0+e2lmKGM+PWEpcmV0dXJuIGM7aWYoYj4wJiZjPj1hLWIpcmV0dXJuIGE7dGhyb3cgXy5BbShgJHtjfSBpcyBub3QgZ3JlYXRlciB0aGFuICR7YX1gKTt9KX07UW09ZnVuY3Rpb24oYSxiLGMpe3RyeXtyZXR1cm4gYygpfWNhdGNoKGQpe3Rocm93IF8uQW0oYCR7YX06IFxgJHtifVxgIGludmFsaWRgLGQpO319O1JtPWZ1bmN0aW9uKGEsYixjKXtmb3IobGV0IGQgaW4gYSlpZighKGQgaW4gYikpdGhyb3cgXy5BbShgVW5rbm93biBwcm9wZXJ0eSAnJHtkfScgb2YgJHtjfWApO307S2NhPWZ1bmN0aW9uKCl7cmV0dXJuIEpjYXx8KEpjYT1uZXcgU20pfTsKXy5UbT1mdW5jdGlvbihhLGIsYz0hMSl7dmFyIGQ7YSBpbnN0YW5jZW9mIF8uVG0/ZD1hLnRvSlNPTigpOmQ9YTt2YXIgZT1OYU4sZj1OYU47aWYoIWR8fGQubGF0PT09dm9pZCAwJiZkLmxuZz09PXZvaWQgMCllPWQsZj1iO2Vsc2V7YXJndW1lbnRzLmxlbmd0aD4yP2NvbnNvbGUud2FybigiRXhwZWN0ZWQgMSBvciAyIGFyZ3VtZW50cyBpbiBuZXcgTGF0TG5nKCkgd2hlbiB0aGUgZmlyc3QgYXJndW1lbnQgaXMgYSBMYXRMbmcgaW5zdGFuY2Ugb3IgTGF0TG5nTGl0ZXJhbCBvYmplY3QsIGJ1dCBnb3QgbW9yZSB0aGFuIDIuIik6Xy5ubShhcmd1bWVudHNbMV0pfHxhcmd1bWVudHNbMV09PW51bGx8fGNvbnNvbGUud2FybigiRXhwZWN0ZWQgdGhlIHNlY29uZCBhcmd1bWVudCBpbiBuZXcgTGF0TG5nKCkgdG8gYmUgYm9vbGVhbiwgbnVsbCwgb3IgdW5kZWZpbmVkIHdoZW4gdGhlIGZpcnN0IGFyZ3VtZW50IGlzIGEgTGF0TG5nIGluc3RhbmNlIG9yIExhdExuZ0xpdGVyYWwgb2JqZWN0LiIpOwp0cnl7TGNhKGQpLGM9Y3x8ISFiLGY9ZC5sbmcsZT1kLmxhdH1jYXRjaChnKXtfLkJtKGcpfX1lPU51bWJlcihlKTtmPU51bWJlcihmKTtjfHwoZT1fLmNtKGUsLTkwLDkwKSxmIT0xODAmJihmPV8uZG0oZiwtMTgwLDE4MCkpKTt0aGlzLmxhdD1mdW5jdGlvbigpe3JldHVybiBlfTt0aGlzLmxuZz1mdW5jdGlvbigpe3JldHVybiBmfX07Xy5VbT1mdW5jdGlvbihhKXtyZXR1cm4gXy50bChhLmxhdCgpKX07Xy5WbT1mdW5jdGlvbihhKXtyZXR1cm4gXy50bChhLmxuZygpKX07TWNhPWZ1bmN0aW9uKGEsYil7Yj1NYXRoLnBvdygxMCxiKTtyZXR1cm4gTWF0aC5yb3VuZChhKmIpL2J9OwpfLlltPWZ1bmN0aW9uKGEpe3ZhciBiPWE7Xy5XbShhKSYmKGI9e2xhdDphLmxhdCgpLGxuZzphLmxuZygpfSk7dHJ5e2xldCBjPU5jYShiKTtyZXR1cm4gXy5XbShhKT9hOl8uWG0oYyl9Y2F0Y2goYyl7dGhyb3cgXy5BbSgibm90IGEgTGF0TG5nIG9yIExhdExuZ0xpdGVyYWwgd2l0aCBmaW5pdGUgY29vcmRpbmF0ZXMiLGMpO319O18uV209ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLlRtfTtfLlhtPWZ1bmN0aW9uKGEpe3RyeXtpZihfLldtKGEpKXJldHVybiBhO2xldCBiPUxjYShhKTtyZXR1cm4gbmV3IF8uVG0oYi5sYXQsYi5sbmcpfWNhdGNoKGIpe3Rocm93IF8uQW0oIm5vdCBhIExhdExuZyBvciBMYXRMbmdMaXRlcmFsIixiKTt9fTsKY249ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIFptKXJldHVybiBhO3RyeXtyZXR1cm4gbmV3IF8uJG0oXy5YbShhKSl9Y2F0Y2goYil7fXRocm93IF8uQW0oIm5vdCBhIEdlb21ldHJ5IG9yIExhdExuZyBvciBMYXRMbmdMaXRlcmFsIG9iamVjdCIpO307Xy5kbj1mdW5jdGlvbihhKXtPY2EuaGFzKGEpfHwoY29uc29sZS53YXJuKGEpLE9jYS5hZGQoYSkpfTtfLmduPWZ1bmN0aW9uKGEpe2E9YXx8d2luZG93LmV2ZW50O18uZW4oYSk7Xy5mbihhKX07Xy5lbj1mdW5jdGlvbihhKXthLnN0b3BQcm9wYWdhdGlvbigpfTtfLmZuPWZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKX07Xy5obj1mdW5jdGlvbihhKXthLmhhbmRsZWQ9ITB9O18ua249ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBuZXcgXy5qbihhLGIsYywwKX07Xy5sbj1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO2I9KGE9YS5fX2UzXykmJmFbYl07cmV0dXJuISFiJiYhXy5qaihiKX07Cl8ubW49ZnVuY3Rpb24oYSl7YSYmYS5yZW1vdmUoKX07Xy5vbj1mdW5jdGlvbihhLGIpe18uYW0obm4oYSxiKSwoYyxkKT0+e2QmJmQucmVtb3ZlKCl9KX07Xy5wbj1mdW5jdGlvbihhKXtfLmFtKG5uKGEpLChiLGMpPT57YyYmYy5yZW1vdmUoKX0pfTtQY2E9ZnVuY3Rpb24oYSl7aWYoIl9fZTNfImluIGEpdGhyb3cgRXJyb3IoInNldFVwTm9uRW51bWVyYWJsZUV2ZW50TGlzdGVuaW5nKCkgd2FzIGludm9rZWQgYWZ0ZXIgYW4gZXZlbnQgd2FzIHJlZ2lzdGVyZWQuIik7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsIl9fZTNfIix7dmFsdWU6e319KX07Xy5xbj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPWQ/NDoxO2EuYWRkRXZlbnRMaXN0ZW5lciYmKGQ9e2NhcHR1cmU6ISFkfSx0eXBlb2YgZT09PSJib29sZWFuIj9kLnBhc3NpdmU9ZTpRY2EuaGFzKGIpJiYoZC5wYXNzaXZlPSExKSxhLmFkZEV2ZW50TGlzdGVuZXIoYixjLGQpKTtyZXR1cm4gbmV3IF8uam4oYSxiLGMsZil9OwpfLnJuPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPV8ucW4oYSxiLGZ1bmN0aW9uKCl7ZS5yZW1vdmUoKTtyZXR1cm4gYy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGQpO3JldHVybiBlfTtfLnNuPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBfLmtuKGEsYiwoMCxfLmliKShkLGMpKX07Xy50bj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy5rbihhLGIsZnVuY3Rpb24oKXtkLnJlbW92ZSgpO3JldHVybiBjLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0pO3JldHVybiBkfTtfLnVuPWZ1bmN0aW9uKGEsYixjKXtiPV8ua24oYSxiLGMpO2MuY2FsbChhKTtyZXR1cm4gYn07Xy52bj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8ua24oYSxiLF8uUmNhKGIsYykpfTtfLnduPWZ1bmN0aW9uKGEsYiwuLi5jKXtpZihfLmxuKGEsYikpe2E9bm4oYSxiKTtmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoYSkpKGI9YVtkXSkmJmIub3AuYXBwbHkoYi5pbnN0YW5jZSxjKX19OwpTY2E9ZnVuY3Rpb24oYSxiKXthLl9fZTNffHwoYS5fX2UzXz17fSk7YT1hLl9fZTNfO2FbYl18fChhW2JdPXt9KTtyZXR1cm4gYVtiXX07bm49ZnVuY3Rpb24oYSxiKXthPWEuX19lM198fHt9O2lmKGIpYj1hW2JdfHx7fTtlbHNle2I9e307Zm9yKGxldCBjIG9mIE9iamVjdC52YWx1ZXMoYSkpXy5ibShiLGMpfXJldHVybiBifTtfLlJjYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe3ZhciBlPVtiLGEsLi4uYXJndW1lbnRzXTtfLnduLmFwcGx5KHRoaXMsZSk7YyYmXy5obi5hcHBseShudWxsLGFyZ3VtZW50cyl9fTtfLnhuPWZ1bmN0aW9uKGEpe3JldHVybiIiKyhfLlphKGEpP18uaGIoYSk6YSl9O18ueW49ZnVuY3Rpb24oKXt9OwpBbj1mdW5jdGlvbihhLGIpe3ZhciBjPWIrIl9jaGFuZ2VkIjtpZihhW2NdKWFbY10oKTtlbHNlIGEuY2hhbmdlZChiKTtjPXpuKGEsYik7Zm9yKGxldCBkIGluIGMpe2xldCBlPWNbZF07QW4oZS5sdyxlLmhxKX1fLnduKGEsYi50b0xvd2VyQ2FzZSgpKyJfY2hhbmdlZCIpfTtfLkJuPWZ1bmN0aW9uKGEpe3JldHVybiBUY2FbYV18fChUY2FbYV09YS5zdWJzdHJpbmcoMCwxKS50b1VwcGVyQ2FzZSgpK2Euc3Vic3RyaW5nKDEpKX07Q249ZnVuY3Rpb24oYSl7YS5nbV9hY2Nlc3NvcnNffHwoYS5nbV9hY2Nlc3NvcnNfPXt9KTtyZXR1cm4gYS5nbV9hY2Nlc3NvcnNffTt6bj1mdW5jdGlvbihhLGIpe2EuZ21fYmluZGluZ3NffHwoYS5nbV9iaW5kaW5nc189e30pO2EuZ21fYmluZGluZ3NfLmhhc093blByb3BlcnR5KGIpfHwoYS5nbV9iaW5kaW5nc19bYl09e30pO3JldHVybiBhLmdtX2JpbmRpbmdzX1tiXX07Cl8uVWNhPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKEIpe0I9ayhCKTtyZXR1cm4gXy5YbSh7bGF0OkJbMV0sbG5nOkJbMF19KX1mdW5jdGlvbiBlKEIpe3JldHVybiBuZXcgXy5EbihtKEIpKX1mdW5jdGlvbiBmKEIpe3JldHVybiBuZXcgXy5FbihxKEIpKX1mdW5jdGlvbiBnKEIpe2lmKEI9PW51bGwpdGhyb3cgXy5BbSgiaXMgbnVsbCIpO3ZhciBLPVN0cmluZyhCLnR5cGUpLnRvTG93ZXJDYXNlKCksTz1CLmNvb3JkaW5hdGVzO3RyeXtzd2l0Y2goSyl7Y2FzZSAicG9pbnQiOnJldHVybiBuZXcgXy4kbShkKE8pKTtjYXNlICJtdWx0aXBvaW50IjpyZXR1cm4gbmV3IF8uRm4obShPKSk7Y2FzZSAibGluZXN0cmluZyI6cmV0dXJuIGUoTyk7Y2FzZSAibXVsdGlsaW5lc3RyaW5nIjpyZXR1cm4gbmV3IF8uR24ocChPKSk7Y2FzZSAicG9seWdvbiI6cmV0dXJuIGYoTyk7Y2FzZSAibXVsdGlwb2x5Z29uIjpyZXR1cm4gbmV3IF8uSG4odShPKSl9fWNhdGNoKEEpe3Rocm93IF8uQW0oJ2luIHByb3BlcnR5ICJjb29yZGluYXRlcyInLApBKTt9aWYoSz09PSJnZW9tZXRyeWNvbGxlY3Rpb24iKXRyeXtyZXR1cm4gbmV3IF8uSW4oeChCLmdlb21ldHJpZXMpKX1jYXRjaChBKXt0aHJvdyBfLkFtKCdpbiBwcm9wZXJ0eSAiZ2VvbWV0cmllcyInLEEpO310aHJvdyBfLkFtKCJpbnZhbGlkIHR5cGUiKTt9ZnVuY3Rpb24gaChCKXtpZighQil0aHJvdyBfLkFtKCJub3QgYSBGZWF0dXJlIik7aWYoQi50eXBlIT09IkZlYXR1cmUiKXRocm93IF8uQW0oJ3R5cGUgIT0gIkZlYXR1cmUiJyk7dmFyIEs9bnVsbDt0cnl7Qi5nZW9tZXRyeSYmKEs9ZyhCLmdlb21ldHJ5KSl9Y2F0Y2goUSl7dGhyb3cgXy5BbSgnaW4gcHJvcGVydHkgImdlb21ldHJ5IicsUSk7fXZhciBPPUIucHJvcGVydGllc3x8e307aWYoIV8ua20oTykpdGhyb3cgXy5BbSgicHJvcGVydGllcyBpcyBub3QgYW4gT2JqZWN0Iik7dmFyIEE9Yy5pZFByb3BlcnR5TmFtZTtCPUE/T1tBXTpCLmlkO2lmKEIhPW51bGwmJiFfLmptKEIpJiYhXy5tbShCKSl0aHJvdyBfLkFtKGAke0F8fAoiaWQifSBpcyBub3QgYSBzdHJpbmcgb3IgbnVtYmVyYCk7cmV0dXJue2lkOkIsZ2VvbWV0cnk6Syxwcm9wZXJ0aWVzOk99fWlmKCFiKXJldHVybltdO2M9Y3x8e307dmFyIGs9Xy5HbShfLk9tKSxtPV8uR20oZCkscD1fLkdtKGUpLHE9Xy5HbShmdW5jdGlvbihCKXtCPW0oQik7aWYoIUIubGVuZ3RoKXRocm93IF8uQW0oImNvbnRhaW5zIG5vIGVsZW1lbnRzIik7aWYoIUJbMF0uZXF1YWxzKEJbQi5sZW5ndGgtMV0pKXRocm93IF8uQW0oImZpcnN0IGFuZCBsYXN0IHBvc2l0aW9ucyBhcmUgbm90IGVxdWFsIik7cmV0dXJuIG5ldyBfLkpuKEIuc2xpY2UoMCwtMSkpfSksdT1fLkdtKGYpLHg9Xy5HbShCPT5nKEIpKSx6PV8uR20oQj0+aChCKSk7aWYoYi50eXBlPT09IkZlYXR1cmVDb2xsZWN0aW9uIil7Yj1iLmZlYXR1cmVzO3RyeXtyZXR1cm4geihiKS5tYXAoQj0+YS5hZGQoQikpfWNhdGNoKEIpe3Rocm93IF8uQW0oJ2luIHByb3BlcnR5ICJmZWF0dXJlcyInLEIpO319aWYoYi50eXBlPT09CiJGZWF0dXJlIilyZXR1cm5bYS5hZGQoaChiKSldO3Rocm93IF8uQW0oIm5vdCBhIEZlYXR1cmUgb3IgRmVhdHVyZUNvbGxlY3Rpb24iKTt9O18uS249ZnVuY3Rpb24oKXtmb3IodmFyIGE9QXJyYXkoMzYpLGI9MCxjLGQ9MDtkPDM2O2QrKylkPT04fHxkPT0xM3x8ZD09MTh8fGQ9PTIzP2FbZF09Ii0iOmQ9PTE0P2FbZF09IjQiOihiPD0yJiYoYj0zMzU1NDQzMitNYXRoLnJhbmRvbSgpKjE2Nzc3MjE2fDApLGM9YiYxNSxiPj49NCxhW2RdPVZjYVtkPT0xOT9jJjN8ODpjXSk7cmV0dXJuIGEuam9pbigiIil9O18uTG49ZnVuY3Rpb24oYSl7dGhpcy5JUD10aGlzO3RoaXMuX19nbT1hfTsKXy5Nbj1mdW5jdGlvbihhKXthPWEuZ2V0RGl2KCk7dmFyIGI9YS5nZXRSb290Tm9kZSgpO2IgaW5zdGFuY2VvZiBTaGFkb3dSb290JiZiPT09YS5wYXJlbnROb2RlPyhhPWIuaG9zdCxhPWEgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmYS5sb2NhbE5hbWU9PT0iZ21wLW1hcCI/YTpudWxsKTphPW51bGw7cmV0dXJuIGF9O18uTm49ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLWE7cmV0dXJuIGM+PTA/YzpiKzE4MC0oYS0xODApfTtfLk9uPWZ1bmN0aW9uKGEpe3JldHVybiBhLmxvPmEuaGl9O18uUG49ZnVuY3Rpb24oYSl7cmV0dXJuIGEuaGktYS5sbz09PTM2MH07UW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmxvLGQ9YS5oaTtyZXR1cm4gXy5PbihhKT9fLk9uKGIpP2IubG8+PWMmJmIuaGk8PWQ6KGIubG8+PWN8fGIuaGk8PWQpJiYhYS5pc0VtcHR5KCk6Xy5PbihiKT9fLlBuKGEpfHxiLmlzRW1wdHkoKTpiLmxvPj1jJiZiLmhpPD1kfTsKXy5Tbj1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gbmV3IF8uUm4obmV3IF8uVG0oYSxiLCEwKSxuZXcgXy5UbShjLGQsITApKX07Xy5Ubj1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5SbilyZXR1cm4gYTt0cnl7bGV0IGI9V2NhKGEpO3JldHVybiBfLlNuKGIuc291dGgsYi53ZXN0LGIubm9ydGgsYi5lYXN0KX1jYXRjaChiKXt0aHJvdyBfLkFtKCJub3QgYSBMYXRMbmdCb3VuZHMgb3IgTGF0TG5nQm91bmRzTGl0ZXJhbCIsYik7fX07Xy5Vbj1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXQoYSl9fTtfLlZuPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/ZnVuY3Rpb24oYyl7dHJ5e3RoaXMuc2V0KGEsYihjKSl9Y2F0Y2goZCl7Xy5CbShfLkFtKCJzZXQiK18uQm4oYSksZCkpfX06ZnVuY3Rpb24oYyl7dGhpcy5zZXQoYSxjKX19OwpfLlduPWZ1bmN0aW9uKGEsYil7Xy5hbShiLChjLGQpPT57dmFyIGU9Xy5VbihjKTthWyJnZXQiK18uQm4oYyldPWU7ZCYmKGQ9Xy5WbihjLGQpLGFbInNldCIrXy5CbihjKV09ZCl9KX07WW49ZnVuY3Rpb24oYSl7YT1hfHx7fTt0aGlzLnNldFZhbHVlcyhhKTt0aGlzLnFoPW5ldyBYY2E7Xy52bih0aGlzLnFoLCJhZGRmZWF0dXJlIix0aGlzKTtfLnZuKHRoaXMucWgsInJlbW92ZWZlYXR1cmUiLHRoaXMpO18udm4odGhpcy5xaCwic2V0Z2VvbWV0cnkiLHRoaXMpO18udm4odGhpcy5xaCwic2V0cHJvcGVydHkiLHRoaXMpO18udm4odGhpcy5xaCwicmVtb3ZlcHJvcGVydHkiLHRoaXMpO3RoaXMucmg9bmV3IFljYSh0aGlzLnFoKTt0aGlzLnJoLmJpbmRUbygibWFwIix0aGlzKTt0aGlzLnJoLmJpbmRUbygic3R5bGUiLHRoaXMpO18uWG4uZm9yRWFjaChiPT57Xy52bih0aGlzLnJoLGIsdGhpcyl9KTt0aGlzLnNoPSExfTsKWmNhPWZ1bmN0aW9uKGEpe2Euc2h8fChhLnNoPSEwLF8uSGwoImRyYXdpbmdfaW1wbCIpLnRoZW4oYj0+e2IuSU4oYSl9KSl9O18uJG49ZnVuY3Rpb24oYSl7Xy5abiYmYSYmXy5abi5wdXNoKGEpfTsKXy5hbz1mdW5jdGlvbihhKXtjb25zb2xlLndhcm4oImdvb2dsZS5tYXBzLkRpcmVjdGlvbnNSZW5kZXJlciBpcyBkZXByZWNhdGVkIGFzIG9mIEZlYnJ1YXJ5IDI1dGgsIDIwMjYuIEF0IHRoaXMgdGltZSwgZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1JlbmRlcmVyIGlzIG5vdCBzY2hlZHVsZWQgdG8gYmUgZGlzY29udGludWVkLiBXaGlsZSBnb29nbGUubWFwcy5EaXJlY3Rpb25zUmVuZGVyZXIgd2lsbCBjb250aW51ZSB0byByZWNlaXZlIGJ1ZyBmaXhlcyBmb3IgYW55IG1ham9yIHJlZ3Jlc3Npb25zLCBleGlzdGluZyBidWdzIGluIGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNSZW5kZXJlciB3aWxsIG5vdCBiZSBhZGRyZXNzZWQuIEF0IGxlYXN0IDEyIG1vbnRocyBub3RpY2Ugd2lsbCBiZSBnaXZlbiBiZWZvcmUgc3VwcG9ydCBpcyBkaXNjb250aW51ZWQuIFBsZWFzZSBzZWUgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9sZWdhY3kgZm9yIGFkZGl0aW9uYWwgZGV0YWlscyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvcm91dGVzL3JvdXRlcy1taWdyYXRlLXJlbmRlcmluZyBmb3IgdGhlIG1pZ3JhdGlvbiBndWlkZS4iKTt0aGlzLnNldFZhbHVlcyhhKX07CiRjYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8uSGwoImVsZXZhdGlvbiIpLnRoZW4oZD0+ZC5nZXRFbGV2YXRpb25BbG9uZ1BhdGgoYSxiLHZvaWQgMCkpO2ImJmMuY2F0Y2goKCk9Pnt9KTtyZXR1cm4gY307YWRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5IbCgiZWxldmF0aW9uIikudGhlbihkPT5kLmdldEVsZXZhdGlvbkZvckxvY2F0aW9ucyhhLGIsdm9pZCAwKSk7YiYmYy5jYXRjaCgoKT0+e30pO3JldHVybiBjfTtjZGE9ZnVuY3Rpb24oYSxiKXt2YXIgYztiZGEoKXx8KGM9Xy5ObCgxNDU1NzApKTt2YXIgZD1fLkhsKCJnZW9jb2RlciIpLnRoZW4oZT0+ZS5nZW9jb2RlKGEsYixjLHZvaWQgMCksKCk9PntjJiZfLk9sKGMsMTMpfSk7YiYmZC5jYXRjaCgoKT0+e30pO3JldHVybiBkfTsKY289ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uYm8pcmV0dXJuIGE7dHJ5e2xldCBiPV8uQ20oe3g6Xy5PbSx5Ol8uT219LCEwKShhKTtyZXR1cm4gbmV3IF8uYm8oYi54LGIueSl9Y2F0Y2goYil7dGhyb3cgXy5BbSgibm90IGEgUG9pbnQiLGIpO319O18uZW89ZnVuY3Rpb24oYSl7cmV0dXJuYCR7YS53aWR0aH0ke2Eucmh8fCJweCJ9YH07Xy5mbz1mdW5jdGlvbihhKXtyZXR1cm5gJHthLmhlaWdodH0ke2EucWh8fCJweCJ9YH07aW89ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uZ28pcmV0dXJuIGE7dHJ5e3ZhciBiPV8uQ20oe2hlaWdodDpobyx3aWR0aDpob30sITApKGEpfWNhdGNoKGMpe3Rocm93IF8uQW0oIm5vdCBhIFNpemUiLGMpO31yZXR1cm4gbmV3IF8uZ28oYi53aWR0aCxiLmhlaWdodCl9O2pvPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EuY28gaW5zdGFuY2VvZiBfLnluOiExfTsKZGRhPWZ1bmN0aW9uKGEsYil7YS50aChiKTthLnJoPDEwMCYmKGEucmgrKyxiLm5leHQ9YS5xaCxhLnFoPWIpfTtnZGE9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT1lZGEucmVtb3ZlKCk7KXt0cnl7YS5Udi5jYWxsKGEuc2NvcGUpfWNhdGNoKGIpe18uQmIoYil9ZGRhKGZkYSxhKX1rbz0hMX07aWRhPWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZD97RUc6ITF9Om51bGw7dmFyIGU9IWEuYWkubGVuZ3RoLGY9YS5haS5maW5kKGhkYShiLGMpKTtmP2Yub25jZT1mLm9uY2UmJmQ6YS5haS5wdXNoKHtUdjpiLGNvbnRleHQ6Y3x8bnVsbCxvbmNlOmR9KTtlJiZhLnN0KCl9O2hkYT1mdW5jdGlvbihhLGIpe3JldHVybiBjPT5jLlR2PT09YSYmYy5jb250ZXh0PT09KGJ8fG51bGwpfTtfLm1vPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLmxvKGEsYil9O18ubm89ZnVuY3Rpb24oKXt0aGlzLl9fZ209bmV3IF8ueW47dGhpcy5yaD1udWxsfTsKamRhPWZ1bmN0aW9uKGEpe2EuX19nbXx8KGEuX19nbT17c2V0Om51bGwsY0I6bnVsbCx4dDp7bWFwOm51bGwsc3RyZWV0VmlldzpudWxsfSxMcjpudWxsLHpBOm51bGwsWHA6ITF9KX07b289ZnVuY3Rpb24oYSxiLGMsZCxlKXtjP2EuYmluZFRvKGIsYyxkLGUpOihhLnVuYmluZChiKSxhLnNldChiLHZvaWQgMCkpfTtrZGE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXQoImludGVybmFsQW5jaG9yUG9pbnQiKXx8Xy5wbyxjPWEuZ2V0KCJpbnRlcm5hbFBpeGVsT2Zmc2V0Iil8fF8ucW87YS5zZXQoInBpeGVsT2Zmc2V0IixuZXcgXy5nbyhjLndpZHRoK01hdGgucm91bmQoYi54KSxjLmhlaWdodCtNYXRoLnJvdW5kKGIueSkpKX07cm89ZnVuY3Rpb24oYT1udWxsKXtyZXR1cm4gam8oYSk/YS5jb3x8bnVsbDphIGluc3RhbmNlb2YgXy55bj9hOm51bGx9Owpzbz1mdW5jdGlvbihhKXtjb25zb2xlLndhcm4oIkFzIG9mIHZlcnNpb24gMy42NSwgZ29vZ2xlLm1hcHMuS21sTGF5ZXIgaXMgZGVwcmVjYXRlZC4gRm9yIGFsdGVybmF0aXZlIG1ldGhvZHMgb2YgZGlzcGxheWluZyBLTUwgZGF0YSBvbiB0aGUgbWFwLCBzZWUgaHR0cHM6Ly9kZXZlbG9wZXJzLmRldnNpdGUuY29ycC5nb29nbGUuY29tL21hcHMvZGVwcmVjYXRpb25zI2ttbF9sYXllcl9kZXByZWNhdGVkX2FzX29mX2FwcmlsXzMwXzIwMjYiKTtfLm1tKGEpPyh0aGlzLnNldCgidXJsIixhKSx0aGlzLnNldFZhbHVlcyhhcmd1bWVudHNbMV0pKTp0aGlzLnNldFZhbHVlcyhhKX07Xy50bz1mdW5jdGlvbihhKXt2YXIgYj1hLm1hdGNoKC9ecGxhY2VzXC8oLispJC8pO3JldHVybiBiP2JbMV06YX07Cl8ubGRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5tYShhLnRvVXBwZXJDYXNlKCksInJlcGxhY2VBbGwiKS5jYWxsKGEudG9VcHBlckNhc2UoKSwiLSIsIl8iKTtyZXR1cm4gYyBpbiBiP2JbY106KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgdmFsdWU6ICIrYSksbnVsbCl9O18ubWRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFN0cmluZygodW89dm8uZ2V0KGEpLmdldChiKT8udG9Mb3dlckNhc2UoKSxfLm1hKHVvLCJyZXBsYWNlQWxsIiwhMCkpPy5jYWxsKHVvLCJfIiwiLSIpfHxiKX07Xy5uZGE9ZnVuY3Rpb24oYSl7aWYoIXZvLmhhcyhhKSl7bGV0IGI9bmV3IE1hcDtmb3IobGV0IFtjLGRdb2YgT2JqZWN0LmVudHJpZXMoYSkpYi5zZXQoZCxjKTt2by5zZXQoYSxiKX19O18ud289ZnVuY3Rpb24oYSl7Xy5uZGEoYSk7cmV0dXJue2FrOmI9PmI9PT1udWxsP251bGw6Xy5sZGEoYixhKSxMajpiPT5iPT09bnVsbD9udWxsOl8ubWRhKGEsYil9fTsKXy54bz1mdW5jdGlvbihhLGIpe3ZhciBjPWE7aWYoY3VzdG9tRWxlbWVudHMuZ2V0KGMpKXtsZXQgZD0xO2Zvcig7Y3VzdG9tRWxlbWVudHMuZ2V0KGMpOyl7aWYoY3VzdG9tRWxlbWVudHMuZ2V0KGMpPT09YilyZXR1cm47Yz1gJHthfS1ub25kZXRlcm1pbmlzdGljLWR1cGxpY2F0ZSR7ZCsrfWB9Y29uc29sZS53YXJuKGBFbGVtZW50IHdpdGggbmFtZSAiJHthfSIgYWxyZWFkeSBkZWZpbmVkLmApfWN1c3RvbUVsZW1lbnRzLmRlZmluZShjLGIsdm9pZCAwKX07Xy56bz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgXy55bztlLm1pblg9YTtlLm1pblk9YjtlLm1heFg9YztlLm1heFk9ZDtyZXR1cm4gZX07Xy5Bbz1mdW5jdGlvbihhLGIpe3JldHVybiBhLm1pblg+PWIubWF4WHx8Yi5taW5YPj1hLm1heFh8fGEubWluWT49Yi5tYXhZfHxiLm1pblk+PWEubWF4WT8hMTohMH07Cl8uQm89ZnVuY3Rpb24oYSxiLGMpe2lmKGE9YS5mcm9tTGF0TG5nVG9Qb2ludChiKSljPU1hdGgucG93KDIsYyksYS54Kj1jLGEueSo9YztyZXR1cm4gYX07Xy5Dbz1mdW5jdGlvbihhLGIpe3ZhciBjPWEubGF0KCkrXy51bChiKTtjPjkwJiYoYz05MCk7dmFyIGQ9YS5sYXQoKS1fLnVsKGIpO2Q8LTkwJiYoZD0tOTApO2I9TWF0aC5zaW4oYik7dmFyIGU9TWF0aC5jb3MoXy50bChhLmxhdCgpKSk7aWYoYz09PTkwfHxkPT09LTkwfHxlPDFFLTYpcmV0dXJuIG5ldyBfLlJuKG5ldyBfLlRtKGQsLTE4MCksbmV3IF8uVG0oYywxODApKTtiPV8udWwoTWF0aC5hc2luKGIvZSkpO3JldHVybiBuZXcgXy5SbihuZXcgXy5UbShkLGEubG5nKCktYiksbmV3IF8uVG0oYyxhLmxuZygpK2IpKX07Xy5Fbz1mdW5jdGlvbihhKXt0aGlzLnFoPWF8fFtdO0RvKHRoaXMpfTtEbz1mdW5jdGlvbihhKXthLnNldCgibGVuZ3RoIixhLnFoLmxlbmd0aCl9OwpNbz1mdW5jdGlvbihhKXthPz8oYT17fSk7YS52aXNpYmxlPV8ubG0oYS52aXNpYmxlLCEwKTtyZXR1cm4gYX07Xy5vZGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEucmFkaXVzfHw2Mzc4MTM3fTtObz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uRW8/cGRhKGEpOm5ldyBfLkVvKHFkYShhKSl9O3JkYT1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7aWYoIShiIGluc3RhbmNlb2YgXy5FbykpdGhyb3cgXy5BbSgibm90IGFuIE1WQ0FycmF5Iik7Yi5mb3JFYWNoKChjLGQpPT57dHJ5e2EoYyl9Y2F0Y2goZSl7dGhyb3cgXy5BbShgYXQgaW5kZXggJHtkfWAsZSk7fX0pO3JldHVybiBifX07c2RhPWZ1bmN0aW9uKGEpe18uSGwoInBvbHkiKS50aGVuKGI9PntiLnZMKGEpfSl9OwpPbz1mdW5jdGlvbihhKXthPWEudHJpbSgpO2lmKCFhKXRocm93IEVycm9yKCJtaXNzaW5nIHZhbHVlIik7dmFyIGI9TnVtYmVyKGEpO2lmKGlzTmFOKGIpfHwhaXNGaW5pdGUoYikpdGhyb3cgRXJyb3IoYCIke2F9IiBpcyBub3QgYSBudW1iZXJgKTtyZXR1cm4gYn07UG89ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt0cnl7cmV0dXJuIGEoYil9Y2F0Y2goYyl7cmV0dXJuIGNvbnNvbGUuZXJyb3IoYyBpbnN0YW5jZW9mIEVycm9yP2MubWVzc2FnZTpgJHtjfWApLG51bGx9fX07Cl8uUm89ZnVuY3Rpb24oYSl7dHJ5e2xldCBiPWEuc3BsaXQoIiwiKS5tYXAoT28pO2lmKGIubGVuZ3RoPDIpdGhyb3cgRXJyb3IoInRvbyBmZXcgdmFsdWVzIik7aWYoYi5sZW5ndGg+Myl0aHJvdyBFcnJvcigidG9vIG1hbnkgdmFsdWVzIik7bGV0IFtjLGQsZV09YjtyZXR1cm4gbmV3IF8uUW8oe2xhdDpjLGxuZzpkLGFsdGl0dWRlOmV9KX1jYXRjaChiKXt0aHJvdyBFcnJvcihgQ291bGQgbm90IGludGVycHJldCAiJHthfSIgYXMgYSBMYXRMbmdBbHRpdHVkZTogYCsoYiBpbnN0YW5jZW9mIEVycm9yP2IubWVzc2FnZTpgJHtifWApKTt9fTsKdGRhPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBudWxsO3RyeXtsZXQgYj1hLnNwbGl0KCJAIik7aWYoYi5sZW5ndGghPT0yKXRocm93IEVycm9yKCJpbnZhbGlkIGNpcmNsZSBmb3JtYXQiKTtsZXQgW2MsZF09YixlPU9vKGMpLGY9Xy5SbyhkKTtyZXR1cm4gbmV3IF8uU28oe2NlbnRlcjpmLHJhZGl1czplfSl9Y2F0Y2goYil7dGhyb3cgRXJyb3IoYENvdWxkIG5vdCBpbnRlcnByZXQgIiR7YX0iIGFzIGEgQ2lyY2xlOiBgKyhiIGluc3RhbmNlb2YgRXJyb3I/Yi5tZXNzYWdlOmAke2J9YCkpO319O18uVG89ZnVuY3Rpb24oYSl7aWYoYSl7aWYoYSBpbnN0YW5jZW9mIF8uVG0pcmV0dXJuYCR7YS5sYXQoKX0sJHthLmxuZygpfWA7bGV0IGI9YCR7YS5sYXR9LCR7YS5sbmd9YDthLmFsdGl0dWRlIT09dm9pZCAwJiZhLmFsdGl0dWRlIT09MCYmKGIrPWAsJHthLmFsdGl0dWRlfWApO3JldHVybiBifXJldHVybiBudWxsfTsKXy5Vbz1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLm1hcChfLlRvKS5qb2luKCIgIik6bnVsbH07dWRhPWZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLmdldENlbnRlcigpP2Ake2EuZ2V0UmFkaXVzKCl9QCR7Vm8oYS5nZXRDZW50ZXIoKSl9YDpudWxsfTtWbz1mdW5jdGlvbihhKXtyZXR1cm4gYT9hIGluc3RhbmNlb2YgXy5UbT9gJHthLmxhdCgpfSwke2EubG5nKCl9YDpgJHthLmxhdH0sJHthLmxuZ31gOm51bGx9O3ZkYT1mdW5jdGlvbigpeyFXbyYmXy5VYS5kb2N1bWVudD8uY3JlYXRlRWxlbWVudCYmKFdvPV8uVWEuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCxfLlVhLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQ9KC4uLmEpPT57WG89YVswXTt0cnl7dmFyIGI9V28uYXBwbHkoZG9jdW1lbnQsYSl9ZmluYWxseXtYbz12b2lkIDB9cmV0dXJuIGJ9KX07CllvPWZ1bmN0aW9uKGEsYixjKXtpZihhLm5vZGVUeXBlIT09MSlyZXR1cm4gd2RhO2I9Yi50b0xvd2VyQ2FzZSgpO2lmKGI9PT0iaW5uZXJodG1sInx8Yj09PSJpbm5lcnRleHQifHxiPT09InRleHRjb250ZW50Inx8Yj09PSJvdXRlcmh0bWwiKXJldHVybigpPT5fLnlqKHhkYSk7dmFyIGQ9eWRhLmdldChgJHthLnRhZ05hbWV9ICR7Yn1gKTtyZXR1cm4gZCE9PXZvaWQgMD9kOi9eb24vLnRlc3QoYikmJmM9PT0iYXR0cmlidXRlIiYmKGE9YS50YWdOYW1lLmluY2x1ZGVzKCItIik/SFRNTEVsZW1lbnQucHJvdG90eXBlOmEsYiBpbiBhKT8oKT0+e3Rocm93IEVycm9yKCJpbnZhbGlkIGJpbmRpbmciKTt9OndkYX07QWRhPWZ1bmN0aW9uKGEsYil7aWYoIVpvKGEpfHwhYS5oYXNPd25Qcm9wZXJ0eSgicmF3IikpdGhyb3cgRXJyb3IoImludmFsaWQgdGVtcGxhdGUgc3RyaW5ncyBhcnJheSIpO3JldHVybiB6ZGEhPT12b2lkIDA/emRhLmNyZWF0ZUhUTUwoYik6Yn07CmJwPWZ1bmN0aW9uKGEsYixjPWEsZCl7aWYoYj09PSRvKXJldHVybiBiO3ZhciBlPWQhPT12b2lkIDA/Yy5yaD8uW2RdOmMuRmgsZj1hcChiKT92b2lkIDA6Yi5fJGxpdERpcmVjdGl2ZSQ7ZT8uY29uc3RydWN0b3IhPT1mJiYoZT8uXyRub3RpZnlEaXJlY3RpdmVDb25uZWN0aW9uQ2hhbmdlZD8uKCExKSxmPT09dm9pZCAwP2U9dm9pZCAwOihlPW5ldyBmKGEpLGUuZkwoYSxjLGQpKSxkIT09dm9pZCAwPyhjLnJoPz8oYy5yaD1bXSkpW2RdPWU6Yy5GaD1lKTtlIT09dm9pZCAwJiYoYj1icChhLGUuZ0woYSxiLnZhbHVlcyksZSxkKSk7cmV0dXJuIGJ9OwpDZGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVN5bWJvbCgpLHtnZXQ6ZSxzZXQ6Zn09QmRhKGEucHJvdG90eXBlLGIpPz97Z2V0KCl7cmV0dXJuIHRoaXNbZF19LHNldChnKXt0aGlzW2RdPWd9fTtyZXR1cm57Z2V0OmUsc2V0KGcpe3ZhciBoPWU/LmNhbGwodGhpcyk7Zj8uY2FsbCh0aGlzLGcpO18uY3AodGhpcyxiLGgsYyl9LGNvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwfX07RWRhPWZ1bmN0aW9uKGEsYixjPWRwKXtjLnN0YXRlJiYoYy5LaD0hMSk7YS5yaCgpO2EucHJvdG90eXBlLmhhc093blByb3BlcnR5KGIpJiYoYz1PYmplY3QuY3JlYXRlKGMpLGMuV3o9ITApO2EuUnAuc2V0KGIsYyk7Yy5BVHx8KGM9Q2RhKGEsYixjKSxjIT09dm9pZCAwJiZEZGEoYS5wcm90b3R5cGUsYixjKSl9OwpfLmNwPWZ1bmN0aW9uKGEsYixjLGQsZT0hMSxmKXtpZihiIT09dm9pZCAwKXtsZXQgZz1hLmNvbnN0cnVjdG9yO2U9PT0hMSYmKGY9YVtiXSk7ZD8/KGQ9Zy5ScC5nZXQoYik/P2RwKTtpZigoZC5uaj8/ZXApKGYsYyl8fGQub0smJmQuTmgmJmY9PT1hLldoPy5nZXQoYikmJiFhLmhhc0F0dHJpYnV0ZShnLkdDKGIsZCkpKWEuV2soYixjLGQpO2Vsc2UgcmV0dXJufWEuT2g9PT0hMSYmKGEuYWw9YS5xeCgpKX07CkZkYT1mdW5jdGlvbihhKXtpZihhLk9oKXtpZighYS5NaCl7YS5Qaz8/KGEuUGs9YS5zaSgpKTtpZihhLlpoKXtmb3IobGV0IFtkLGVdb2YgYS5aaClhW2RdPWU7YS5aaD12b2lkIDB9dmFyIGI9YS5jb25zdHJ1Y3Rvci5ScDtpZihiLnNpemU+MClmb3IobGV0IFtkLGVdb2YgYil7Yj1kO3ZhciBjPWU7bGV0IGY9YVtiXTtjLld6IT09ITB8fGEuSmguaGFzKGIpfHxmPT09dm9pZCAwfHxhLldrKGIsdm9pZCAwLGMsZil9fWI9ITE7Yz1hLkpoO3RyeXtiPSEwLGEuaG0oYyksYS5JaD8uZm9yRWFjaChkPT5kLmRUPy4oKSksYS51cGRhdGUoYyl9Y2F0Y2goZCl7dGhyb3cgYj0hMSxhLnNyKCksZDt9YiYmYS5veChjKX19O2ZwPWZ1bmN0aW9uKCl7cmV0dXJuITB9O18uZ3A9ZnVuY3Rpb24oYSxiKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxiLHtlbnVtZXJhYmxlOiEwLHdyaXRhYmxlOiExfSl9O18uaHA9ZnVuY3Rpb24oYSxiKXtyZXR1cm5gPCR7YS5jTH0+OiAke2J9YH07Cl8uaXA9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIF8uQW0oXy5ocChhLGBDYW5ub3Qgc2V0IHByb3BlcnR5ICIke2J9IiB0byAke2N9YCksZCl9O18uR2RhPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IF8uanA7Y29uc29sZS5lcnJvcihfLmhwKGEsYEVuY291bnRlcmVkIGEgbmV0d29yayByZXF1ZXN0IGVycm9yOiAke2IgaW5zdGFuY2VvZiBFcnJvcj9iLm1lc3NhZ2U6U3RyaW5nKGIpfWApKTthLmRpc3BhdGNoRXZlbnQoYyl9O18ua3A9ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpe3Rocm93IF8uQW0oXy5ocChhLGBDYW5ub3Qgc2V0IHByb3BlcnR5ICIke2J9IiB0byAke2R9YCksZSk7fX07CklkYT1mdW5jdGlvbihhKXt2YXIgYj1hLmdldCgibWFwSWQiKTtiPW5ldyBIZGEoYixhLm1hcFR5cGVzKTtiLmJpbmRUbygibWFwSGFzQmVlbkFibGVUb0JlRHJhd24iLGEuX19nbSk7Yi5iaW5kVG8oIm1hcElkIixhLCJtYXBJZCIsITApO2IuYmluZFRvKCJzdHlsZXMiLGEpO2IuYmluZFRvKCJtYXBUeXBlSWQiLGEpfTtscD1mdW5jdGlvbihhLGIpe2EuaXNBdmFpbGFibGU9ITE7YS5xaC5wdXNoKGIpfTsKXy5ucD1mdW5jdGlvbihhLGIpe3ZhciBjPV8ubXAoYS5fX2dtLnFoLCJEQVRBX0RSSVZFTl9TVFlMSU5HIik7aWYoIWIpcmV0dXJuIGM7dmFyIGQ9WyJUaGUgbWFwIGlzIGluaXRpYWxpemVkIHdpdGhvdXQgYSB2YWxpZCBtYXAgSUQsIHRoYXQgd2lsbCBwcmV2ZW50IHVzZSBvZiBkYXRhLWRyaXZlbiBzdHlsaW5nLiIsIlRoZSBNYXAgU3R5bGUgZG9lcyBub3QgaGF2ZSBhbnkgRmVhdHVyZUxheWVycyBjb25maWd1cmVkIGZvciBkYXRhLWRyaXZlbiBzdHlsaW5nLiIsIlRoZSBNYXAgU3R5bGUgZG9lcyBub3QgaGF2ZSBhbnkgRGF0YXNldHMgb3IgRmVhdHVyZUxheWVycyBjb25maWd1cmVkIGZvciBkYXRhLWRyaXZlbiBzdHlsaW5nLiJdLGU9Yy5xaC5tYXAoZj0+Zi5HcSk7ZT1lJiZlLnNvbWUoZj0+ZC5pbmNsdWRlcyhmKSk7KGMuaXNBdmFpbGFibGV8fCFlKSYmKGE9YS5fX2dtLnFoLll2KCkpJiYoYj1KZGEoYixhKSkmJmxwKGMse0dxOmJ9KTtyZXR1cm4gY307CkpkYT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZmVhdHVyZVR5cGU7aWYoYz09PSJEQVRBU0VUIil7aWYoIWIudGgoKS5tYXAoZD0+Xy5IKGQsMikpLmluY2x1ZGVzKGEuZGF0YXNldElkKSlyZXR1cm4iVGhlIE1hcCBTdHlsZSBkb2VzIG5vdCBoYXZlIHRoZSBmb2xsb3dpbmcgRGF0YXNldCBJRCBhc3NvY2lhdGVkIHdpdGggaXQ6ICIrYS5kYXRhc2V0SWR9ZWxzZSBpZighYi5zaCgpLmluY2x1ZGVzKGMpKXJldHVybiJUaGUgTWFwIFN0eWxlIGRvZXMgbm90IGhhdmUgdGhlIGZvbGxvd2luZyBGZWF0dXJlTGF5ZXIgY29uZmlndXJlZCBmb3IgZGF0YS1kcml2ZW4gc3R5bGluZzogIitjO3JldHVybiBudWxsfTtwcD1mdW5jdGlvbihhLGI9IiIsYyl7Yz1fLm5wKGEsYyk7Yy5pc0F2YWlsYWJsZXx8Xy5vcChhLGIsYyl9O0tkYT1mdW5jdGlvbihhKXthPWEuX19nbTtmb3IobGV0IGIgb2YgYS50aC5rZXlzKCkpYS50aC5nZXQoYikuaXNFbmFibGVkfHxfLnJtKGBUaGUgTWFwIFN0eWxlIGRvZXMgbm90IGhhdmUgdGhlIGZvbGxvd2luZyBGZWF0dXJlTGF5ZXIgY29uZmlndXJlZCBmb3IgZGF0YS1kcml2ZW4gc3R5bGluZzogICR7Yn1gKX07Cl8uTGRhPWZ1bmN0aW9uKGEsYj0hMSl7dmFyIGM9YS5fX2dtO2MudGguc2l6ZT4wJiZwcChhKTtiJiZLZGEoYSk7Yy50aC5mb3JFYWNoKGQ9PntkLmNJKCl9KX07Xy5vcD1mdW5jdGlvbihhLGIsYyl7aWYoYy5xaC5sZW5ndGghPT0wKXt2YXIgZD1iP2IrIjogIjoiIixlPWEuX19nbS5xaDtjLnFoLmZvckVhY2goZj0+e2UubG9nKGYsZCl9KX19O18ucXA9ZnVuY3Rpb24oKXt9O18ubXA9ZnVuY3Rpb24oYSxiKXthLmxvZyhNZGFbYl0pO2E6c3dpdGNoKGIpe2Nhc2UgIkFEVkFOQ0VEX01BUktFUlMiOmE9YS5jYWNoZS5yRzticmVhayBhO2Nhc2UgIkRBVEFfRFJJVkVOX1NUWUxJTkciOmE9YS5jYWNoZS5hSDticmVhayBhO2Nhc2UgIldFQkdMX09WRVJMQVlfVklFVyI6YT1hLmNhY2hlLnlxO2JyZWFrIGE7ZGVmYXVsdDp0aHJvdyBFcnJvcihgTm8gY2FwYWJpbGl0eSBpbmZvcm1hdGlvbiBmb3I6ICR7Yn1gKTt9cmV0dXJuIGEuY2xvbmUoKX07CnNwPWZ1bmN0aW9uKGEpe3ZhciBiPWEuY2FjaGUsYz1uZXcgcnA7YS5lbygpfHxscChjLHtHcToiVGhlIG1hcCBpcyBpbml0aWFsaXplZCB3aXRob3V0IGEgdmFsaWQgTWFwIElELCB3aGljaCB3aWxsIHByZXZlbnQgdXNlIG9mIEFkdmFuY2VkIE1hcmtlcnMuIn0pO2Iuckc9YztiPWEuY2FjaGU7Yz1uZXcgcnA7aWYoYS5lbygpKXt2YXIgZD1hLll2KCk7aWYoZCl7bGV0IGU9ZC5zaCgpO2Q9ZC50aCgpO2UubGVuZ3RofHxkLmxlbmd0aHx8bHAoYyx7R3E6IlRoZSBNYXAgU3R5bGUgZG9lcyBub3QgaGF2ZSBhbnkgRGF0YXNldHMgb3IgRmVhdHVyZUxheWVycyBjb25maWd1cmVkIGZvciBkYXRhLWRyaXZlbiBzdHlsaW5nLiJ9KX1hLmp3IT09IlVOS05PV04iJiZhLmp3IT09IlRSVUUiJiZscChjLHtHcToiVGhlIG1hcCBpcyBub3QgYSB2ZWN0b3IgbWFwLiBUaGF0IHdpbGwgcHJldmVudCB1c2Ugb2YgZGF0YS1kcml2ZW4gc3R5bGluZy4ifSl9ZWxzZSBscChjLHtHcToiVGhlIG1hcCBpcyBpbml0aWFsaXplZCB3aXRob3V0IGEgdmFsaWQgbWFwIElELCB0aGF0IHdpbGwgcHJldmVudCB1c2Ugb2YgZGF0YS1kcml2ZW4gc3R5bGluZy4ifSk7CmIuYUg9YztiPWEuY2FjaGU7Yz1uZXcgcnA7YS5lbygpP2EuanchPT0iVU5LTk9XTiImJmEuanchPT0iVFJVRSImJmxwKGMse0dxOiJUaGUgbWFwIGlzIG5vdCBhIHZlY3RvciBtYXAsIHdoaWNoIHdpbGwgcHJldmVudCB1c2Ugb2YgV2ViR0xPdmVybGF5Vmlldy4ifSk6bHAoYyx7R3E6IlRoZSBtYXAgaXMgaW5pdGlhbGl6ZWQgd2l0aG91dCBhIHZhbGlkIG1hcCBJRCwgd2hpY2ggd2lsbCBwcmV2ZW50IHVzZSBvZiBXZWJHTE92ZXJsYXlWaWV3LiJ9KTtiLnlxPWM7TmRhKGEpfTtOZGE9ZnVuY3Rpb24oYSl7YS5xaD0hMDt0cnl7YS5zZXQoIm1hcENhcGFiaWxpdGllcyIsYS5nZXRNYXBDYXBhYmlsaXRpZXMoKSl9ZmluYWxseXthLnFoPSExfX07T2RhPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5vcHRpb25zLmhELk1BUF9JTklUSUFMSVpBVElPTjtpZihjKWZvcihsZXQgZCBvZiBjKWEuaHUoZCxiKX07Cl8udHA9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEub3B0aW9ucy5oRC5NQVBfSU5JVElBTElaQVRJT047aWYoZClmb3IobGV0IGUgb2YgZClhLlpuKGUsYixjKX07Xy51cD1mdW5jdGlvbihhLGIpe2lmKGI9YS5vcHRpb25zLmhEW2JdKWZvcihsZXQgYyBvZiBiKWEuanUoYyl9O18ud3A9ZnVuY3Rpb24oYSl7dGhpcy5xaD0wO3RoaXMuemg9dm9pZCAwO3RoaXMudGg9dGhpcy5yaD10aGlzLnNoPW51bGw7dGhpcy53aD10aGlzLnhoPSExO2lmKGEhPV8uUmwpdHJ5e2xldCBiPXRoaXM7YS5jYWxsKHZvaWQgMCxmdW5jdGlvbihjKXt2cChiLDIsYyl9LGZ1bmN0aW9uKGMpe3ZwKGIsMyxjKX0pfWNhdGNoKGIpe3ZwKHRoaXMsMyxiKX19O1BkYT1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLmNvbnRleHQ9dGhpcy5yaD10aGlzLnNoPXRoaXMucWg9bnVsbDt0aGlzLnRoPSExfTtSZGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVFkYS5nZXQoKTtkLnNoPWE7ZC5yaD1iO2QuY29udGV4dD1jO3JldHVybiBkfTsKU2RhPWZ1bmN0aW9uKGEsYil7aWYoYS5xaD09MClpZihhLnNoKXt2YXIgYz1hLnNoO2lmKGMucmgpe3ZhciBkPTAsZT1udWxsLGY9bnVsbDtmb3IobGV0IGc9Yy5yaDtnJiYoZy50aHx8KGQrKyxnLnFoPT1hJiYoZT1nKSwhKGUmJmQ+MSkpKTtnPWcubmV4dCllfHwoZj1nKTtlJiYoYy5xaD09MCYmZD09MT9TZGEoYyxiKTooZj8oZD1mLGQubmV4dD09Yy50aCYmKGMudGg9ZCksZC5uZXh0PWQubmV4dC5uZXh0KTpUZGEoYyksVWRhKGMsZSwzLGIpKSl9YS5zaD1udWxsfWVsc2UgdnAoYSwzLGIpfTtXZGE9ZnVuY3Rpb24oYSxiKXthLnJofHxhLnFoIT0yJiZhLnFoIT0zfHxWZGEoYSk7YS50aD9hLnRoLm5leHQ9YjphLnJoPWI7YS50aD1ifTsKWGRhPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVJkYShudWxsLG51bGwsbnVsbCk7ZS5xaD1uZXcgXy53cChmdW5jdGlvbihmLGcpe2Uuc2g9Yj9mdW5jdGlvbihoKXt0cnl7bGV0IGs9Yi5jYWxsKGQsaCk7ZihrKX1jYXRjaChrKXtnKGspfX06ZjtlLnJoPWM/ZnVuY3Rpb24oaCl7dHJ5e2xldCBrPWMuY2FsbChkLGgpO2s9PT12b2lkIDAmJmggaW5zdGFuY2VvZiB4cD9nKGgpOmYoayl9Y2F0Y2goayl7ZyhrKX19Omd9KTtlLnFoLnNoPWE7V2RhKGEsZSk7cmV0dXJuIGUucWh9Owp2cD1mdW5jdGlvbihhLGIsYyl7aWYoYS5xaD09MCl7YT09PWMmJihiPTMsYz1uZXcgVHlwZUVycm9yKCJQcm9taXNlIGNhbm5vdCByZXNvbHZlIHRvIGl0c2VsZiIpKTthLnFoPTE7YTp7dmFyIGQ9YyxlPWEubVEsZj1hLm5RO2lmKGQgaW5zdGFuY2VvZiBfLndwKXtXZGEoZCxSZGEoZXx8Xy5SbCxmfHxudWxsLGEpKTt2YXIgZz0hMH1lbHNle2lmKGQpdHJ5e3ZhciBoPSEhZC4kZ29vZ19UaGVuYWJsZX1jYXRjaChrKXtoPSExfWVsc2UgaD0hMTtpZihoKWQudGhlbihlLGYsYSksZz0hMDtlbHNle2lmKF8uWmEoZCkpdHJ5e2xldCBrPWQudGhlbjtpZih0eXBlb2Ygaz09PSJmdW5jdGlvbiIpe1lkYShkLGssZSxmLGEpO2c9ITA7YnJlYWsgYX19Y2F0Y2goayl7Zi5jYWxsKGEsayk7Zz0hMDticmVhayBhfWc9ITF9fX1nfHwoYS56aD1jLGEucWg9YixhLnNoPW51bGwsVmRhKGEpLGIhPTN8fGMgaW5zdGFuY2VvZiB4cHx8WmRhKGEsYykpfX07CllkYT1mdW5jdGlvbihhLGIsYyxkLGUpe2Z1bmN0aW9uIGYoayl7aHx8KGg9ITAsZC5jYWxsKGUsaykpfWZ1bmN0aW9uIGcoayl7aHx8KGg9ITAsYy5jYWxsKGUsaykpfXZhciBoPSExO3RyeXtiLmNhbGwoYSxnLGYpfWNhdGNoKGspe2Yoayl9fTtWZGE9ZnVuY3Rpb24oYSl7YS54aHx8KGEueGg9ITAsXy55cChhLkJNLGEpKX07VGRhPWZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7YS5yaCYmKGI9YS5yaCxhLnJoPWIubmV4dCxiLm5leHQ9bnVsbCk7YS5yaHx8KGEudGg9bnVsbCk7cmV0dXJuIGJ9O1VkYT1mdW5jdGlvbihhLGIsYyxkKXtpZihjPT0zJiZiLnJoJiYhYi50aClmb3IoO2EmJmEud2g7YT1hLnNoKWEud2g9ITE7aWYoYi5xaCliLnFoLnNoPW51bGwsJGRhKGIsYyxkKTtlbHNlIHRyeXtiLnRoP2Iuc2guY2FsbChiLmNvbnRleHQpOiRkYShiLGMsZCl9Y2F0Y2goZSl7YWVhLmNhbGwobnVsbCxlKX1kZGEoUWRhLGIpfTsKJGRhPWZ1bmN0aW9uKGEsYixjKXtiPT0yP2Euc2guY2FsbChhLmNvbnRleHQsYyk6YS5yaCYmYS5yaC5jYWxsKGEuY29udGV4dCxjKX07WmRhPWZ1bmN0aW9uKGEsYil7YS53aD0hMDtfLnlwKGZ1bmN0aW9uKCl7YS53aCYmYWVhLmNhbGwobnVsbCxiKX0pfTt4cD1mdW5jdGlvbihhKXtfLnRiLmNhbGwodGhpcyxhKX07Xy56cD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhIT09ImZ1bmN0aW9uIilpZihhJiZ0eXBlb2YgYS5oYW5kbGVFdmVudD09ImZ1bmN0aW9uIilhPSgwLF8uaWIpKGEuaGFuZGxlRXZlbnQsYSk7ZWxzZSB0aHJvdyBFcnJvcigiSW52YWxpZCBsaXN0ZW5lciBhcmd1bWVudCIpO3JldHVybiBOdW1iZXIoYik+MjE0NzQ4MzY0Nz8tMTpfLlVhLnNldFRpbWVvdXQoYSxifHwwKX07Xy5BcD1mdW5jdGlvbihhLGIsYyl7Xy5tay5jYWxsKHRoaXMpO3RoaXMucWg9YTt0aGlzLnRoPWJ8fDA7dGhpcy5yaD1jO3RoaXMuc2g9KDAsXy5pYikodGhpcy5nRyx0aGlzKX07Cl8uQnA9ZnVuY3Rpb24oYSl7YS5zdG9wKCk7YS5nRygpfTtiZWE9ZnVuY3Rpb24oYSl7YS5xaCYmd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2lmKGEucWgpe2xldCBiPVsuLi5hLnJoLnZhbHVlcygpXS5mbGF0KCk7YS5xaChiKX19KX07Xy5jZWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLk5BKCk7YyYmKGEucmguc2V0KF8uaGIoYiksYyksYS5zaC5EaSgpKX07Xy5kZWE9ZnVuY3Rpb24oYSxiKXtiPV8uaGIoYik7YS5yaC5oYXMoYikmJihhLnJoLmRlbGV0ZShiKSxhLnNoLkRpKCkpfTtlZWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnpJbmRleCxkPWIuekluZGV4LGU9Xy5qbShjKSxmPV8uam0oZCksZz1hLnRsLGg9Yi50bDtpZihlJiZmJiZjIT09ZClyZXR1cm4gYz5kPy0xOjE7aWYoZSE9PWYpcmV0dXJuIGU/LTE6MTtpZihnLnkhPT1oLnkpcmV0dXJuIGgueS1nLnk7YT1fLmhiKGEpO2I9Xy5oYihiKTtyZXR1cm4gYT5iPy0xOjF9OwpmZWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5zb21lKGM9Pl8uQW8oYyxhKSl9O18uQ3A9ZnVuY3Rpb24oYSxiLGMpe18ubWsuY2FsbCh0aGlzKTt0aGlzLkFoPWMhPW51bGw/KDAsXy5pYikoYSxjKTphO3RoaXMueWg9Yjt0aGlzLnhoPSgwLF8uaWIpKHRoaXMuUUssdGhpcyk7dGhpcy5yaD0hMTt0aGlzLnNoPTA7dGhpcy50aD10aGlzLnFoPW51bGw7dGhpcy53aD1bXX07Xy5EcD1mdW5jdGlvbihhLGIpe3ZhciBjPV8ueG4oYik7YS5lbGVtZW50c1tjXXx8KGEuZWxlbWVudHNbY109YiwrK2Euc2l6ZSxfLnduKGEsImluc2VydCIsYiksYS5xaCYmYS5xaChiKSl9O18uZ2VhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5XcCgpO3JldHVybiBhLmVpLmZpbHRlcihkPT57ZD1kLldwKCk7cmV0dXJuIGMhPT1kfSl9O18uRXA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYS5tYXRjaGVzfHxhLm1zTWF0Y2hlc1NlbGVjdG9yfHxhLndlYmtpdE1hdGNoZXNTZWxlY3RvcikuY2FsbChhLGIpfTsKaGVhPWZ1bmN0aW9uKGEpe2EuY3VycmVudFRhcmdldC5zdHlsZS5vdXRsaW5lPSIifTsKXy5JcD1mdW5jdGlvbihhKXtpZihfLkVwKGEsJ3NlbGVjdCx0ZXh0YXJlYSxpbnB1dFt0eXBlPSJkYXRlIl0saW5wdXRbdHlwZT0iZGF0ZXRpbWUtbG9jYWwiXSxpbnB1dFt0eXBlPSJlbWFpbCJdLGlucHV0W3R5cGU9Im1vbnRoIl0saW5wdXRbdHlwZT0ibnVtYmVyIl0saW5wdXRbdHlwZT0icGFzc3dvcmQiXSxpbnB1dFt0eXBlPSJzZWFyY2giXSxpbnB1dFt0eXBlPSJ0ZWwiXSxpbnB1dFt0eXBlPSJ0ZXh0Il0saW5wdXRbdHlwZT0idGltZSJdLGlucHV0W3R5cGU9InVybCJdLGlucHV0W3R5cGU9IndlZWsiXSxpbnB1dDpub3QoW3R5cGVdKScpKXJldHVybltdO3ZhciBiPVtdO2IucHVzaChuZXcgXy5GcChhLCJmb2N1cyIsYz0+eyFfLkdwJiZfLkhwJiZfLkhwIT09IktFWUJPQVJEIiYmKGMuY3VycmVudFRhcmdldC5zdHlsZS5vdXRsaW5lPSJub25lIil9KSk7Yi5wdXNoKG5ldyBfLkZwKGEsImZvY3Vzb3V0IixoZWEpKTtyZXR1cm4gYn07CktwPWZ1bmN0aW9uKCl7cmV0dXJuIEpwP0pwOkpwPW5ldyBpZWF9O01wPWZ1bmN0aW9uKGEpe3JldHVybiBfLkxwWzQzXT8hMTphLkFoPyEwOiFfLlVhLmRldmljZVBpeGVsUmF0aW98fCFfLlVhLnJlcXVlc3RBbmltYXRpb25GcmFtZX07Xy5qZWE9ZnVuY3Rpb24oKXt2YXIgYT1fLk5wO3JldHVybiBfLkxwWzQzXT8hMTphLkFofHxNcChhKX07a2VhPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjPTAsZDtkPWJbY107KytjKWlmKHR5cGVvZiBhLmRvY3VtZW50RWxlbWVudC5zdHlsZVtkXT09PSJzdHJpbmciKXJldHVybiBkO3JldHVybiBudWxsfTtfLlBwPWZ1bmN0aW9uKCl7T3B8fChPcD1uZXcgbGVhKTtyZXR1cm4gT3B9O18uUXA9ZnVuY3Rpb24oYSxiKXthIT09bnVsbCYmKGE9YS5zdHlsZSxhLndpZHRoPV8uZW8oYiksYS5oZWlnaHQ9Xy5mbyhiKSl9O18uUnA9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLmdvKGEub2Zmc2V0V2lkdGgsYS5vZmZzZXRIZWlnaHQpfTsKXy5UcD1mdW5jdGlvbihhKXt2YXIgYj0hMTtfLlNwLnJoKCk/YS5kcmFnZ2FibGU9ITE6Yj0hMDt2YXIgYz1fLlBwKCkucmg7Yz9hLnN0eWxlW2NdPSJub25lIjpiPSEwO2ImJmEuc2V0QXR0cmlidXRlKCJ1bnNlbGVjdGFibGUiLCJvbiIpO2Eub25zZWxlY3RzdGFydD1kPT57Xy5nbihkKTtfLmhuKGQpfX07Cl8uVXA9ZnVuY3Rpb24oYSxiPSExKXtpZihkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09YSlyZXR1cm4hMDtpZighKGEgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpcmV0dXJuITE7dmFyIGM9ITE7Xy5JcChhKTtjdXN0b21FbGVtZW50cy5nZXQoYS5sb2NhbE5hbWUpfHwoYS50YWJJbmRleD1hLnRhYkluZGV4KTt2YXIgZD0oKT0+e2M9ITA7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1c2luIixkKX0sZT0oKT0+e2M9ITA7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsZSl9O2EuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGUpO2EuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsZCk7YS5mb2N1cyh7cHJldmVudFNjcm9sbDohIWJ9KTtyZXR1cm4gY307Cm1lYT1mdW5jdGlvbihhLGIpe2ImJihhLnNoPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsXy50bihhLl9fZ20sInBhbm9yYW1haGlkZGVuIiwoKT0+e2lmKGEucmg/LmdzPy5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSl7dmFyIGM9YS5zaD8ubm9kZU5hbWU9PT0iQk9EWSIsZD1hLl9fZ20uZ2V0KCJmb2N1c0ZhbGxiYWNrRWxlbWVudCIpO2Euc2gmJiFjPyFfLlVwKGEuc2gpJiZkJiZfLlVwKGQpOmQmJl8uVXAoZCl9fSkpfTtfLm9lYT1mdW5jdGlvbihhLGI9ZG9jdW1lbnQpe3JldHVybiBuZWEoYSxiKX07bmVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGI9YiYmKGIuZnVsbHNjcmVlbkVsZW1lbnR8fGIud2Via2l0RnVsbHNjcmVlbkVsZW1lbnR8fGIubW96RnVsbFNjcmVlbkVsZW1lbnR8fGIubXNGdWxsc2NyZWVuRWxlbWVudCkpP2I9PT1hPyEwOm5lYShhLGIuc2hhZG93Um9vdCk6ITF9OwpwZWE9ZnVuY3Rpb24oYSl7YS5xaD0hMDt0cnl7YS5zZXQoInJlbmRlcmluZ1R5cGUiLGEucmgpfWZpbmFsbHl7YS5xaD0hMX19O18ucWVhPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1fLlVhLmdvb2dsZSYmXy5VYS5nb29nbGUubWFwcyYmXy5VYS5nb29nbGUubWFwcy5maXNmZXRzejtiJiZBcnJheS5pc0FycmF5KGIpJiZfLkxwWzE1XSYmYi5mb3JFYWNoKGM9PntfLmptKGMpJiZhLnB1c2goYyl9KTtyZXR1cm4gYX07cmVhPWZ1bmN0aW9uKGEpe3JldHVybiBfLmtoKGEsMSwzMyl9O3NlYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5raChhLDIsMyl9O3RlYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLmtoKGEsMSxiKX07dWVhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uSmwucmgoKS5yaCgpO3JldHVybiBfLmloKGEsNSxiKX07dmVhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uSmwucmgoKS50aCgpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIF8uaWgoYSw2LGIpfTsKd2VhPWZ1bmN0aW9uKGEpe3JldHVybiBfLiRnKGEsMTAsITApfTt4ZWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5iaChhLDEsYil9O3llYT1mdW5jdGlvbihhLGIpe18uYmgoYSwyLGIpfTt6ZWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5kaChhLDEsYil9O0FlYT1mdW5jdGlvbihhLGIpe18uZGgoYSwyLGIpfTtCZWE9ZnVuY3Rpb24oYSxiKXtfLmtoKGEsOCxiKX07Xy5WcD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1NYXRoLnBvdygyLE1hdGgucm91bmQoYSkpLzI1NjtyZXR1cm4gbmV3IENlYShNYXRoLnJvdW5kKE1hdGgucG93KDIsYSkvZSkqZSxiLGMsZCl9O18uWHA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IF8uV3AoKGEubTIyKmIuWGgtYS5tMTIqYi5ZaCkvYS5zaCwoLWEubTIxKmIuWGgrYS5tMTEqYi5ZaCkvYS5zaCl9O0RlYT1mdW5jdGlvbihhKXthPWEuZ2V0KCJ6b29tIik7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciI/TWF0aC5mbG9vcihhKTphfTsKRmVhPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZ2V0KCJ0aWx0Iil8fCFhLndoJiZfLiRsKGEuZ2V0KCJzdHlsZXMiKSk7YT1hLmdldCgibWFwVHlwZUlkIik7cmV0dXJuIGI/bnVsbDpFZWFbYV19O0dlYT1mdW5jdGlvbihhLGIpe2EucWgub25sb2FkPW51bGw7YS5xaC5vbmVycm9yPW51bGw7dmFyIGM9YS54aCgpO2MmJihiJiYoYS5xaC5wYXJlbnROb2RlfHxhLnJoLmFwcGVuZENoaWxkKGEucWgpLGEuc2h8fF8uUXAoYS5xaCxjKSksYS5zZXQoImxvYWRpbmciLCExKSl9O0hlYT1mdW5jdGlvbihhLGIpe2IhPT1hLnFoLnNyYz8oYS5zaHx8YS5xaD8ucmVtb3ZlKCksYS5xaC5vbmxvYWQ9KCk9PntHZWEoYSwhMCl9LGEucWgub25lcnJvcj0oKT0+e0dlYShhLCExKX0sYS5xaC5zcmM9Yik6IWEucWgucGFyZW50Tm9kZSYmYiYmYS5yaC5hcHBlbmRDaGlsZChhLnFoKX07CkxlYT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPW5ldyBJZWE7eWVhKHhlYShfLndnKGYsSmVhLDEpLGIubWluWCksYi5taW5ZKTtfLmtoKGYsMixlKS5zZXRab29tKGMpO0FlYSh6ZWEoXy53ZyhmLF8uWXAsNCksYi5tYXhYLWIubWluWCksYi5tYXhZLWIubWluWSk7dmFyIGc9d2VhKHZlYSh1ZWEodGVhKF8ud2coZixfLlpwLDUpLGQpKSkpO2I9Xy5xZWEoKTthLndofHxiLnB1c2goNDcwODM1MDIpO2IuZm9yRWFjaChoPT57dmFyIGs9ITE7Zm9yKGxldCBtPTAscD1fLlRnKGcsMTQpO208cDttKyspaWYoXy5TZyhnLDE0LG0pPT09aCl7az0hMDticmVha31rfHxfLm1oKGcsMTQsaCl9KTtfLiRnKGcsMTIsITApO18uTHBbMTNdJiZzZWEocmVhKF8uWmYoZyw4LF8uJHApKSkuT2woMSk7YS53aCYmXy5paChmLDcsYS53aCk7QmVhKGYsYS5nZXQoImNvbG9yVGhlbWUiKSk7Zj1hLnRoK3VuZXNjYXBlKCIlM0YiKStfLlJqKGYsS2VhKCkpO3JldHVybiBhLkpoKGYpfTsKTWVhPWZ1bmN0aW9uKGEpe3ZhciBiPV8ubnAoYS5tYXAse2ZlYXR1cmVUeXBlOmEuZmVhdHVyZVR5cGUsZGF0YXNldElkOmEuZGF0YXNldElkLERzOmEuRHN9KTtpZighYi5pc0F2YWlsYWJsZSYmYi5xaC5sZW5ndGg+MCl7bGV0IGM9Yi5xaC5tYXAoZD0+ZC5HcSk7Yy5pbmNsdWRlcygiVGhlIG1hcCBpcyBpbml0aWFsaXplZCB3aXRob3V0IGEgdmFsaWQgbWFwIElELCB0aGF0IHdpbGwgcHJldmVudCB1c2Ugb2YgZGF0YS1kcml2ZW4gc3R5bGluZy4iKSYmKGEuZmVhdHVyZVR5cGU9PT0iREFUQVNFVCI/Xy5NKGEubWFwLDE3NzMxMSk6Xy5NKGEubWFwLDE0ODg0NCkpOyhjLmluY2x1ZGVzKCJUaGUgTWFwIFN0eWxlIGRvZXMgbm90IGhhdmUgYW55IEZlYXR1cmVMYXllcnMgY29uZmlndXJlZCBmb3IgZGF0YS1kcml2ZW4gc3R5bGluZy4iKXx8Yy5pbmNsdWRlcygiVGhlIE1hcCBTdHlsZSBkb2VzIG5vdCBoYXZlIHRoZSBmb2xsb3dpbmcgRmVhdHVyZUxheWVyIGNvbmZpZ3VyZWQgZm9yIGRhdGEtZHJpdmVuIHN0eWxpbmc6ICIrCmEuZmVhdHVyZVR5cGUpKSYmXy5NKGEubWFwLDE0ODg0Nik7Yy5pbmNsdWRlcygiVGhlIG1hcCBpcyBub3QgYSB2ZWN0b3IgbWFwLiBUaGF0IHdpbGwgcHJldmVudCB1c2Ugb2YgZGF0YS1kcml2ZW4gc3R5bGluZy4iKSYmKGEuZmVhdHVyZVR5cGU9PT0iREFUQVNFVCI/Xy5NKGEubWFwLDE3NzMxNSk6Xy5NKGEubWFwLDE0ODg0NSkpO2MuaW5jbHVkZXMoIlRoZSBNYXAgU3R5bGUgZG9lcyBub3QgaGF2ZSB0aGUgZm9sbG93aW5nIERhdGFzZXQgSUQgYXNzb2NpYXRlZCB3aXRoIGl0OiAiKSYmXy5NKGEubWFwLDE3ODI4MSl9cmV0dXJuIGJ9O2FxPWZ1bmN0aW9uKGEsYil7dmFyIGM9TWVhKGEpO18ub3AoYS5tYXAsYixjKTtyZXR1cm4gY307CmJxPWZ1bmN0aW9uKGEsYil7dmFyIGM9bnVsbDt0eXBlb2YgYj09PSJmdW5jdGlvbiI/Yz1iOmImJihjPSgpPT5iKTtQcm9taXNlLmFsbChbXy5IbCgid2ViZ2wiKSxhLm1hcC5fX2dtLnNpXSkudGhlbigoW2RdKT0+e2QuemgoYS5tYXAse2ZlYXR1cmVUeXBlOmEuZmVhdHVyZVR5cGUsZGF0YXNldElkOmEuZGF0YXNldElkLERzOmEuRHN9LGMpO2Euc2g9Yn0pfTtjcT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMucWg9ISFiO3RoaXMubm9kZT1udWxsO3RoaXMucmg9MDt0aGlzLnRoPSExO3RoaXMuc2g9IWM7YSYmdGhpcy5zZXRQb3NpdGlvbihhLGQpO3RoaXMuZGVwdGg9ZSE9dm9pZCAwP2U6dGhpcy5yaHx8MDt0aGlzLnFoJiYodGhpcy5kZXB0aCo9LTEpfTtfLmlxPWZ1bmN0aW9uKGEsYj0hMCl7Ynx8Xy5kcShhKTtmb3IoYj1hLmZpcnN0Q2hpbGQ7YjspXy5kcShiKSxhLnJlbW92ZUNoaWxkKGIpLGI9YS5maXJzdENoaWxkfTsKXy5kcT1mdW5jdGlvbihhKXtmb3IoYT1uZXcgTmVhKGEpOzspe3ZhciBiPWEubmV4dCgpO2lmKGIuZG9uZSlicmVhazsoYj1iLnZhbHVlKSYmXy5wbihiKX19O18uanE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPUFycmF5KGIubGVuZ3RoKTtmb3IobGV0IGU9MCxmPWIubGVuZ3RoO2U8ZjsrK2UpZFtlXT1iLmNoYXJDb2RlQXQoZSk7ZC51bnNoaWZ0KGMpO3JldHVybiBhLmhhc2goZCl9OwpQZWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9bmV3IF8ua3EoMTMxMDcxKSxmPXVuZXNjYXBlKCIlMjYlNzQlNkYlNkIlNjUlNkUlM0QiKSxnPXVuZXNjYXBlKCIlMjYlNkIlNjUlNzklM0QiKSxoPXVuZXNjYXBlKCIlMjYlNjMlNkMlNjklNjUlNkUlNzQlM0QiKSxrPXVuZXNjYXBlKCIlMjYlNjMlNjglNjElNkUlNkUlNjUlNkMlM0QiKTtyZXR1cm4obSxwKT0+e3ZhciBxPSIiLHU9cD8/Yjt1JiYocSs9ZytlbmNvZGVVUklDb21wb25lbnQodSkpO3B8fChjJiYocSs9aCtlbmNvZGVVUklDb21wb25lbnQoYykpLGQmJihxKz1rK2VuY29kZVVSSUNvbXBvbmVudChkKSkpO209bS5yZXBsYWNlKE9lYSwiJTI3IikrcTtwPW0rZjtxPVN0cmluZztscXx8KGxxPVJlZ0V4cCgiKD86aHR0cHM/Oi8vW14vXSspPyguKikiKSk7bT1scS5leGVjKG0pO2lmKCFtKXRocm93IEVycm9yKCJJbnZhbGlkIFVSTCB0byBzaWduLiIpO3JldHVybiBwK3EoXy5qcShlLG1bMV0sYSkpfX07ClFlYT1mdW5jdGlvbihhKXthPUFycmF5KGEudG9TdHJpbmcoKS5sZW5ndGgpO2ZvcihsZXQgYj0wO2I8YS5sZW5ndGg7KytiKWFbYl09IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjYyKSk7cmV0dXJuIGEuam9pbigiIil9O1JlYT1mdW5jdGlvbihhLGI9UWVhKGEpKXt2YXIgYz1uZXcgXy5rcSgxMzEwNzEpO3JldHVybigpPT5bYixfLmpxKGMsYixhKS50b1N0cmluZygpXX07U2VhPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IF8ua3EoMjE0NzQ4MzY0Nyk7cmV0dXJuIGI9Pl8uanEoYSxiLDApfTsKXy5ycT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt2YXIgUT17IjRnIjoyNTAwLCIzZyI6MzUwMCwiMmciOjZFMyx1bmtub3duOjRFM307cmV0dXJuIF8uVWEubmF2aWdhdG9yJiZfLlVhLm5hdmlnYXRvci5jb25uZWN0aW9uJiZfLlVhLm5hdmlnYXRvci5jb25uZWN0aW9uLmVmZmVjdGl2ZVR5cGU/UVtfLlVhLm5hdmlnYXRvci5jb25uZWN0aW9uLmVmZmVjdGl2ZVR5cGVdfHxRLnVua25vd246US51bmtub3dufXZhciBkPXBlcmZvcm1hbmNlLm5vdygpO2lmKCFhKXRocm93IF8uQW0oYE1hcDogRXhwZWN0ZWQgbWFwRGl2IG9mIHR5cGUgSFRNTEVsZW1lbnQgYnV0IHdhcyBwYXNzZWQgJHthfS5gKTtpZih0eXBlb2YgYT09PSJzdHJpbmciKXRocm93IF8uQW0oYE1hcDogRXhwZWN0ZWQgbWFwRGl2IG9mIHR5cGUgSFRNTEVsZW1lbnQgYnV0IHdhcyBwYXNzZWQgc3RyaW5nICcke2F9Jy5gKTt2YXIgZT1ifHx7fTtlLm5vQ2xlYXJ8fF8uaXEoYSwhMSk7dmFyIGY9dHlwZW9mIGRvY3VtZW50PT0KInVuZGVmaW5lZCI/bnVsbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtmJiZhLmFwcGVuZENoaWxkJiYoYS5hcHBlbmRDaGlsZChmKSxmLnN0eWxlLndpZHRoPWYuc3R5bGUuaGVpZ2h0PSIxMDAlIik7Xy5tcS5zZXQoZix0aGlzKTtpZihNcChfLk5wKSl0aHJvdyBfLkhsKCJjb250cm9scyIpLnRoZW4oUT0+e1Eub0YoYSl9KSxFcnJvcigiVGhlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIGRvZXMgbm90IHN1cHBvcnQgdGhpcyBicm93c2VyLiIpO18uSGwoInV0aWwiKS50aGVuKFE9PntfLkxwWzM1XSYmYiYmYi5kRSYmUS5lci50aChuZXcgXy5ucShiLmRFKSk7US5lci5xaChjYT0+e18uSGwoImNvbnRyb2xzIikudGhlbihpYT0+e3ZhciBHYT1fLkgoY2EsMil8fCJodHRwOi8vZy5jby9kZXYvbWFwcy1uby1hY2NvdW50IjtpYS5LSihhLEdhKX0pfSl9KTt2YXIgZyxoPW5ldyBQcm9taXNlKFE9PntnPVF9KTtfLkxuLmNhbGwodGhpcyxuZXcgVGVhKHRoaXMsYSxmLGgpKTsKdmFyIGs9dGhpcy5fX2dtO2g9dGhpcy5fX2dtLnFoO3RoaXMuc2V0KCJtYXBDYXBhYmlsaXRpZXMiLGguZ2V0TWFwQ2FwYWJpbGl0aWVzKCkpO2guYmluZFRvKCJtYXBDYXBhYmlsaXRpZXMiLHRoaXMsIm1hcENhcGFiaWxpdGllcyIsITApO2UubWFwVHlwZUlkPT09dm9pZCAwJiYoZS5tYXBUeXBlSWQ9InJvYWRtYXAiKTtrLmNvbG9yU2NoZW1lPWUuY29sb3JTY2hlbWV8fCJMSUdIVCI7ay5zZXQoImNsb3VkU3R5bGluZ0ZvclRlcnJhaW5WZWN0b3JNYXBCYXNlVGlsZXNEaXNhYmxlZCIsISFlLmNsb3VkU3R5bGluZ0ZvclRlcnJhaW5WZWN0b3JNYXBCYXNlVGlsZXNEaXNhYmxlZCk7ay5GaD1lLmJhY2tncm91bmRDb2xvcjshay5GaCYmay5NciYmKGsuRmg9ay5jb2xvclNjaGVtZT09PSJEQVJLIj8iIzIwMjEyNCI6IiNlNWUzZGYiKTt2YXIgbT1uZXcgVWVhO3RoaXMuc2V0KCJyZW5kZXJpbmdUeXBlIiwiVU5JTklUSUFMSVpFRCIpO20uYmluZFRvKCJyZW5kZXJpbmdUeXBlIix0aGlzLAoicmVuZGVyaW5nVHlwZSIsITApO20uYmluZFRvKCJtYXBIYXNCZWVuQWJsZVRvQmVEcmF3biIsaywibWFwSGFzQmVlbkFibGVUb0JlRHJhd24iLCEwKTt0aGlzLl9fZ20uc2gudGhlbihRPT57bS5yaD1RPyJWRUNUT1IiOiJSQVNURVIiO3BlYShtKX0pO3RoaXMuc2V0VmFsdWVzKGUpO2g9ZS5tYXBUeXBlSWQ7dmFyIHA9ay5jb2xvclNjaGVtZT09PSJEQVJLIjtpZihfLkxwWzE3MF0pc3dpdGNoKGsuc2V0KCJzdHlsZVRhYmxlQnl0ZXMiLGUuc3R5bGVUYWJsZUJ5dGVzKSxoKXtjYXNlICJoeWJyaWQiOmNhc2UgInNhdGVsbGl0ZSI6ay5zZXQoImNvbmZpZ1NldCIsMTEpO2JyZWFrO2Nhc2UgInRlcnJhaW4iOmsuc2V0KCJjb25maWdTZXQiLHA/Mjk6MTIpO2JyZWFrO2RlZmF1bHQ6ay5zZXQoImNvbmZpZ1NldCIscD8yNzo4KX12YXIgcT1rLkJoO09kYShxLHtWQjpkfSk7VmVhKGIpfHxfLnVwKHEsIk1BUF9JTklUSUFMSVpBVElPTiIpO3RoaXMudkU9Xy5McFsxNV0mJmUubm9Db250cm9sc09yTG9nZ2luZzsKdGhpcy5tYXBUeXBlcz1uZXcgb3E7SWRhKHRoaXMpO3RoaXMuZmVhdHVyZXM9bmV3IFdlYTtfLiRuKGYpO3RoaXMubm90aWZ5KCJzdHJlZXRWaWV3Iik7aD1fLlJwKGYpO3ZhciB1PW51bGw7WGVhKGUudXNlU3RhdGljTWFwLGgpJiYodT1uZXcgWWVhKGYpLHUuc2V0KCJzaXplIixoKSx1LnNldCgiY29sb3JUaGVtZSIsay5jb2xvclNjaGVtZT09PSJEQVJLIj8yOjEpLHUuYmluZFRvKCJtYXBJZCIsdGhpcyksdS5iaW5kVG8oImNlbnRlciIsdGhpcyksdS5iaW5kVG8oInpvb20iLHRoaXMpLHUuYmluZFRvKCJtYXBUeXBlSWQiLHRoaXMpLHUuYmluZFRvKCJzdHlsZXMiLHRoaXMpKTt0aGlzLm92ZXJsYXlNYXBUeXBlcz1uZXcgXy5Fbzt2YXIgeD10aGlzLmNvbnRyb2xzPVtdO18uYW0oXy5wcSwoUSxjYSk9Pnt4W2NhXT1uZXcgXy5Fbzt4W2NhXS5hZGRMaXN0ZW5lcigiaW5zZXJ0X2F0IiwoKT0+e18uTSh0aGlzLDE4MjExMSl9KX0pO3ZhciB6PSExLEI9Xy5VYS5JbnRlcnNlY3Rpb25PYnNlcnZlciYmCm5ldyBQcm9taXNlKFE9Pnt2YXIgY2E9YygpLGlhPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihHYT0+e2ZvcihsZXQgTGE9MDtMYTxHYS5sZW5ndGg7TGErKylHYVtMYV0uaXNJbnRlcnNlY3Rpbmc/KGlhLmRpc2Nvbm5lY3QoKSxRKCkpOno9ITB9LHtyb290TWFyZ2luOmAke2NhfXB4ICR7Y2F9cHggJHtjYX1weCAke2NhfXB4YH0pO2lhLm9ic2VydmUodGhpcy5nZXREaXYoKSl9KTtfLkhsKCJtYXAiKS50aGVuKGFzeW5jIFE9PntxcT1RO2lmKHRoaXMuZ2V0RGl2KCkmJmYpe2lmKEIpe18udXAocSwiTUFQX0lOSVRJQUxJWkFUSU9OIik7bGV0IGlhPXBlcmZvcm1hbmNlLm5vdygpLWQ7dmFyIGNhPXNldFRpbWVvdXQoKCk9PntfLk0odGhpcywxNjkxMDgpfSwxRTMpO2F3YWl0IEI7Y2xlYXJUaW1lb3V0KGNhKTtjYT12b2lkIDA7enx8KGNhPXtWQjpwZXJmb3JtYW5jZS5ub3coKS1pYX0pO1ZlYShiKSYmT2RhKHEsY2EpfVEuTVAodGhpcyxlLGYsdSxnKX1lbHNlIF8udXAocSwiTUFQX0lOSVRJQUxJWkFUSU9OIil9LAooKT0+e3RoaXMuZ2V0RGl2KCkmJmY/Xy50cChxLDgpOl8udXAocSwiTUFQX0lOSVRJQUxJWkFUSU9OIil9KTt0aGlzLmRhdGE9bmV3IFluKHttYXA6dGhpc30pO3RoaXMuYWRkTGlzdGVuZXIoInJlbmRlcmluZ3R5cGVfY2hhbmdlZCIsKCk9PntfLkxkYSh0aGlzKX0pO3ZhciBLPXRoaXMuYWRkTGlzdGVuZXIoInpvb21fY2hhbmdlZCIsKCk9PntfLm1uKEspO18udXAocSwiTUFQX0lOSVRJQUxJWkFUSU9OIil9KSxPPXRoaXMuYWRkTGlzdGVuZXIoImRyYWdzdGFydCIsKCk9PntfLm1uKE8pO18udXAocSwiTUFQX0lOSVRJQUxJWkFUSU9OIil9KTtfLnFuKGEsInNjcm9sbCIsKCk9PnthLnNjcm9sbExlZnQ9YS5zY3JvbGxUb3A9MH0pO18uVWEuTXV0YXRpb25PYnNlcnZlciYmdGhpcy5nZXREaXYoKSYmKChoPVplYS5nZXQodGhpcy5nZXREaXYoKSkpJiZoLmRpc2Nvbm5lY3QoKSxoPW5ldyBNdXRhdGlvbk9ic2VydmVyKFE9Pntmb3IobGV0IGNhIG9mIFEpY2EuYXR0cmlidXRlTmFtZT09PQoiZGlyIiYmXy53bih0aGlzLCJzaG91bGRVc2VSVExDb250cm9sc0NoYW5nZSIpfSksWmVhLnNldCh0aGlzLmdldERpdigpLGgpLGgub2JzZXJ2ZSh0aGlzLmdldERpdigpLHthdHRyaWJ1dGVzOiEwfSkpO0ImJihfLnVuKHRoaXMsInJlbmRlcmluZ3R5cGVfY2hhbmdlZCIsYXN5bmMoKT0+e3RoaXMuZ2V0KCJyZW5kZXJpbmdUeXBlIik9PT0iVkVDVE9SIiYmKGF3YWl0IEIsXy5IbCgid2ViZ2wiKSl9KSxfLmtuKGssIm1hcGhhc2JlZW5hYmxldG9iZWRyYXduX2NoYW5nZWQiLGFzeW5jKCk9PntrLmdldCgibWFwSGFzQmVlbkFibGVUb0JlRHJhd24iKSYmXy5Nbih0aGlzKSYmdGhpcy5nZXQoInJlbmRlcmluZ1R5cGUiKT09PSJVTklOSVRJQUxJWkVEIiYmKGF3YWl0IEIsXy5IbCgid2ViZ2wiKSl9KSk7dmFyIEE7Xy5rbihrLCJtYXBoYXNiZWVuYWJsZXRvYmVkcmF3bl9jaGFuZ2VkIixhc3luYygpPT57aWYoay5nZXQoIm1hcEhhc0JlZW5BYmxlVG9CZURyYXduIikpe0E9cGVyZm9ybWFuY2Uubm93KCk7CnZhciBRPXRoaXMuZ2V0SW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzKCk/P251bGw7USYmXy5NKHRoaXMsMTIyNDQ3LHtpbnRlcm5hbFVzYWdlQXR0cmlidXRpb25JZHM6QXJyYXkuZnJvbShuZXcgU2V0KFEpKX0pfX0pO2g9KCk9Pnt0aGlzLmdldCgicmVuZGVyaW5nVHlwZSIpPT09IlZFQ1RPUiImJnRoaXMuZ2V0KCJzdHlsZXMiKSYmKHRoaXMuc2V0KCJzdHlsZXMiLHZvaWQgMCksY29uc29sZS53YXJuKCJHb29nbGUgTWFwcyBKYXZhU2NyaXB0IEFQSTogQSBNYXAncyBzdHlsZXMgcHJvcGVydHkgY2Fubm90IGJlIHNldCB3aGVuIHRoZSBtYXAgaXMgYSB2ZWN0b3IgbWFwLiBQbGVhc2Ugc2VlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvc3R5bGluZyNjbG91ZF90b29saW5nIikpfTt0aGlzLmFkZExpc3RlbmVyKCJzdHlsZXNfY2hhbmdlZCIsaCk7dGhpcy5hZGRMaXN0ZW5lcigicmVuZGVyaW5ndHlwZV9jaGFuZ2VkIiwKaCk7dGhpcy5hZGRMaXN0ZW5lcigiYm91bmRzX2NoYW5nZWQiLCgpPT57QSYmdGhpcy5nZXRSZW5kZXJpbmdUeXBlKCkhPT0iVkVDVE9SIiYmcGVyZm9ybWFuY2Uubm93KCktQT44NjRFNSYmXy5NKHdpbmRvdywyNTY3MTcpfSk7aCgpfTtYZWE9ZnVuY3Rpb24oYSxiKXtpZighXy5KbHx8Xy5HKF8uSmwsXy5ucSw0MCkuZ2V0U3RhdHVzKCk9PTIpcmV0dXJuITE7aWYoYSE9PXZvaWQgMClyZXR1cm4hIWE7YT1iLndpZHRoO2I9Yi5oZWlnaHQ7cmV0dXJuIGEqYjw9Mzg0RTMmJmE8PTgwMCYmYjw9ODAwfTtWZWE9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuITE7dmFyIGI9T2JqZWN0LmtleXMoc3EpO2ZvcihsZXQgYyBvZiBiKXRyeXtpZih0eXBlb2Ygc3FbY109PT0iZnVuY3Rpb24iJiZhW2NdKXNxW2NdKGFbY10pfWNhdGNoKGQpe3JldHVybiExfXJldHVybiBhLmNlbnRlciYmYS56b29tPyEwOiExfTsKXy50cT1mdW5jdGlvbihhKXtyZXR1cm4oYixjKT0+e2lmKHR5cGVvZiBjPT09Im9iamVjdCIpYj0kZWEoYSxiLGMpO2Vsc2V7bGV0IGQ9Yi5oYXNPd25Qcm9wZXJ0eShjKTtFZGEoYi5jb25zdHJ1Y3RvcixjLGEpO2I9ZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk6dm9pZCAwfXJldHVybiBifX07Xy51cT1mdW5jdGlvbihhKXtyZXR1cm4oYixjKT0+Xy5hZmEoYixjLHtnZXQoKXtyZXR1cm4gdGhpcy5Qaz8ucXVlcnlTZWxlY3RvcihhKT8/bnVsbH19KX07Xy52cT1mdW5jdGlvbihhKXtyZXR1cm4gXy50cSh7Li4uYSxzdGF0ZTohMCxLaDohMX0pfTtiZmE9ZnVuY3Rpb24oYSl7Xy5IbCgicG9seSIpLnRoZW4oYj0+e2IueUwoYSl9KX07Y2ZhPWZ1bmN0aW9uKGEpe18uSGwoInBvbHkiKS50aGVuKGI9PntiLnpMKGEpfSl9OwpfLndxPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEucWh8fHZvaWQgMDthPV8uSGwoInN0cmVldHZpZXciKS50aGVuKGY9Pl8uSGwoImdlb21ldHJ5IikudGhlbihnPT5mLmROKGIsY3x8bnVsbCxnLnNwaGVyaWNhbC5jb21wdXRlSGVhZGluZyxnLnNwaGVyaWNhbC5jb21wdXRlT2Zmc2V0LGUsZCkpKTtjJiZhLmNhdGNoKCgpPT57fSk7cmV0dXJuIGF9Owp6cT1mdW5jdGlvbihhKXthPWF8fHt9O3RoaXMudGlsZVNpemU9YS50aWxlU2l6ZXx8bmV3IF8uZ28oMjU2LDI1Nik7dGhpcy5uYW1lPWEubmFtZTt0aGlzLmFsdD1hLmFsdDt0aGlzLm1pblpvb209YS5taW5ab29tO3RoaXMubWF4Wm9vbT1hLm1heFpvb207dGhpcy5zaD0oMCxfLmliKShhLmdldFRpbGVVcmwsYSk7dGhpcy5xaD1uZXcgXy54cTt0aGlzLnJoPW51bGw7dGhpcy5zZXQoIm9wYWNpdHkiLGEub3BhY2l0eSk7Xy5IbCgibWFwIikudGhlbihiPT57dmFyIGM9dGhpcy5yaD1iLm9PLmJpbmQoYiksZD10aGlzLnRpbGVTaXplfHxuZXcgXy5nbygyNTYsMjU2KTt0aGlzLnFoLmZvckVhY2goZT0+e3ZhciBmPWUuX19nbWltdCxnPWYucmosaD1mLnpvb20saz10aGlzLnNoKGcsaCk7KGYuRGo9Yyh7a2k6Zy54LGxpOmcueSx1aTpofSxkLGUsaywoKT0+Xy53bihlLCJsb2FkIikpKS5zZXRPcGFjaXR5KHlxKHRoaXMpKX0pfSl9Owp5cT1mdW5jdGlvbihhKXthPWEuZ2V0KCJvcGFjaXR5Iik7cmV0dXJuIHR5cGVvZiBhPT0ibnVtYmVyIj9hOjF9O18uQXE9ZnVuY3Rpb24oKXt9O18uQnE9ZnVuY3Rpb24oYSxiKXt0aGlzLnNldCgic3R5bGVzIixhKTthPWJ8fHt9O3RoaXMucmg9YS5iYXNlTWFwVHlwZUlkfHwicm9hZG1hcCI7dGhpcy5taW5ab29tPWEubWluWm9vbTt0aGlzLm1heFpvb209YS5tYXhab29tfHwyMDt0aGlzLm5hbWU9YS5uYW1lO3RoaXMuYWx0PWEuYWx0O3RoaXMucHJvamVjdGlvbj1udWxsO3RoaXMudGlsZVNpemU9bmV3IF8uZ28oMjU2LDI1Nil9O0NxPWZ1bmN0aW9uKGEsYil7dGhpcy5zZXRWYWx1ZXMoYil9OwpwZmE9ZnVuY3Rpb24oKXt2YXIgYT1PYmplY3QuYXNzaWduKHtEaXJlY3Rpb25zVHJhdmVsTW9kZTpfLkRxLERpcmVjdGlvbnNVbml0U3lzdGVtOl8uRXEsRnVzaW9uVGFibGVzTGF5ZXI6ZGZhLE1hcmtlckltYWdlOmVmYSxOYXZpZ2F0aW9uQ29udHJvbFN0eWxlOmZmYSxTYXZlV2lkZ2V0OkNxLFNjYWxlQ29udHJvbFN0eWxlOmdmYSxab29tQ29udHJvbFN0eWxlOmhmYX0saWZhLGpmYSxrZmEsbGZhLG1mYSxuZmEsb2ZhKTtfLmJtKFluLHtGZWF0dXJlOl8uRnEsR2VvbWV0cnk6Wm0sR2VvbWV0cnlDb2xsZWN0aW9uOl8uSW4sTGluZVN0cmluZzpfLkRuLExpbmVhclJpbmc6Xy5KbixNdWx0aUxpbmVTdHJpbmc6Xy5HbixNdWx0aVBvaW50Ol8uRm4sTXVsdGlQb2x5Z29uOl8uSG4sUG9pbnQ6Xy4kbSxQb2x5Z29uOl8uRW59KTtfLnNtKGEpO3JldHVybiBhfTsKc2ZhPWFzeW5jIGZ1bmN0aW9uKGEsYj0hMSxjPSExKXt2YXIgZD17Y29yZTppZmEsbWFwczpqZmEsZ2VvY29kaW5nOm1mYSxzdHJlZXRWaWV3Om5mYX1bYV07aWYoZClmb3IobGV0IFtlLGZdb2YgT2JqZWN0LmVudHJpZXMoZCkpZj09PXZvaWQgMCYmZGVsZXRlIGRbZV07aWYoZCliJiZfLk0oXy5VYSwxNTg1MzApO2Vsc2V7YiYmXy5NKF8uVWEsMTU3NTg0KTtpZighcWZhLmhhcyhhKSYmIXJmYS5oYXMoYSkpe2I9YFRoZSBsaWJyYXJ5ICR7YX0gaXMgdW5rbm93bi4gUGxlYXNlIHNlZSBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9saWJyYXJpZXNgO2lmKGMpdGhyb3cgRXJyb3IoYik7Y29uc29sZS5lcnJvcihiKX1kPWF3YWl0IF8uSGwoYSl9c3dpdGNoKGEpe2Nhc2UgImFkZHJlc3NWYWxpZGF0aW9uIjpkLmNvbm5lY3RGb3JFeHBsaWNpdFRoaXJkUGFydHlMb2FkKCk7YnJlYWs7Y2FzZSAibWFwcyI6Xy5IbCgibWFwIik7CmJyZWFrO2Nhc2UgImVsZXZhdGlvbiI6ZC5jb25uZWN0Rm9yRXhwbGljaXRUaGlyZFBhcnR5TG9hZCgpO2JyZWFrO2Nhc2UgImFpclF1YWxpdHkiOmQuY29ubmVjdEZvckV4cGxpY2l0VGhpcmRQYXJ0eUxvYWQoKTticmVhaztjYXNlICJnZW9jb2RpbmciOl8uSGwoImdlb2NvZGVyIik7YnJlYWs7Y2FzZSAic3RyZWV0VmlldyI6Xy5IbCgic3RyZWV0dmlldyIpO2JyZWFrO2Nhc2UgIm1hcHMzZCI6ZC5jb25uZWN0Rm9yRXhwbGljaXRUaGlyZFBhcnR5TG9hZCgpO2JyZWFrO2Nhc2UgIm1hcmtlciI6ZC5jb25uZWN0Rm9yRXhwbGljaXRUaGlyZFBhcnR5TG9hZCgpO2JyZWFrO2Nhc2UgInBsYWNlcyI6ZC5jb25uZWN0Rm9yRXhwbGljaXRUaGlyZFBhcnR5TG9hZCgpO2JyZWFrO2Nhc2UgInJvdXRlcyI6ZC5jb25uZWN0Rm9yRXhwbGljaXRUaGlyZFBhcnR5TG9hZCgpO2JyZWFrO2Nhc2UgIndlYXRoZXIiOmQuY29ubmVjdEZvckV4cGxpY2l0VGhpcmRQYXJ0eUxvYWQoKX1yZXR1cm4gT2JqZWN0LmZyZWV6ZSh7Li4uZH0pfTsKXy51ZmE9YXN5bmMgZnVuY3Rpb24oYSl7YXdhaXQgbmV3IFByb21pc2UoYj0+e3ZhciBjPW5ldyBSZXNpemVPYnNlcnZlcihkPT57YS5pc1Zpc2libGUoZFswXSk/KGMuZGlzY29ubmVjdCgpLGIoKSk6YS5xaC5yZXNvbHZlKCExKX0pO2Mub2JzZXJ2ZShhLmhvc3QpfSk7YXdhaXQgbmV3IFByb21pc2UoYj0+e3ZhciBjPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihkPT57aWYoZD1kLnNvbWUoZT0+ZS5pc0ludGVyc2VjdGluZykpYy5kaXNjb25uZWN0KCksYigpO2EucWgucmVzb2x2ZShkKX0se3Jvb3Q6ZG9jdW1lbnQscm9vdE1hcmdpbjpgJHt0ZmEoKX1weGB9KTtjLm9ic2VydmUoYS5ob3N0KX0pfTsKdGZhPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IE1hcChbWyI0ZyIsMjUwMF0sWyIzZyIsMzUwMF0sWyIyZyIsNkUzXSxbInNsb3ctMmciLDhFM10sWyJ1bmtub3duIiw0RTNdXSksYj13aW5kb3cubmF2aWdhdG9yPy5jb25uZWN0aW9uPy5lZmZlY3RpdmVUeXBlO3JldHVybihiJiZhLmdldChiKSk/P2EuZ2V0KCJ1bmtub3duIil9O3ZmYT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPSsrYS5xaCxkPWIuWkksZT1iLm9uRXJyb3I7Yj1iLk9PO3ZhciBmPWc9PntpZihhLnFoIT09Yyl0aHJvdyBuZXcgR3E7cmV0dXJuIGd9O3RyeXt0cnl7Zihhd2FpdCAwKSxmKGF3YWl0IGQoZikpfWNhdGNoKGcpe2lmKGcgaW5zdGFuY2VvZiBHcXx8IWUpdGhyb3cgZztmKGF3YWl0IGUoZyxmKSl9fWNhdGNoKGcpe2lmKCEoZyBpbnN0YW5jZW9mIEdxKSl0aHJvdyBnO2I/LigpfX07Xy5IcT1mdW5jdGlvbihhKXt2ZmEoYS5iSCx7Wkk6YXN5bmMgYj0+e2EudGs9MDtiKGF3YWl0IGEuQ3ApfX0pfTsKXy5JcT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuIHZmYShhLmJILHtaSTphc3luYyBlPT57YS50az0xO2EuWkR8fGUoYXdhaXQgXy51ZmEoYS56USkpO2MmJihkPV8uTmwoYykpO2UoYXdhaXQgYihlKSk7YS50az0yO2UoYXdhaXQgYS5DcCk7YS5kaXNwYXRjaEV2ZW50KG5ldyBfLndmYSk7Xy5PbChkLDApfSxvbkVycm9yOmFzeW5jKGUsZik9PnthLnRrPTM7Xy5PbChkLDEzKTtmKGF3YWl0IGEuQ3ApO18uR2RhKGEsZSl9LE9POigpPT57Xy5QbChkKX19KX07Xy5LcT1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uUW8/YTpuZXcgXy5RbygoMCxfLkpxKShhKSl9O3hmYT1mdW5jdGlvbihhLGIpe3ZhciBjPWEueCxkPWEueTtzd2l0Y2goYil7Y2FzZSA5MDphLng9ZDthLnk9MjU2LWM7YnJlYWs7Y2FzZSAxODA6YS54PTI1Ni1jO2EueT0yNTYtZDticmVhaztjYXNlIDI3MDphLng9MjU2LWQsYS55PWN9fTsKXy5NcT1mdW5jdGlvbihhKXtyZXR1cm4hYXx8YSBpbnN0YW5jZW9mIF8uTHE/eWZhOmF9O18uTnE9ZnVuY3Rpb24oYSxiLGM9ITEpe3JldHVybiBfLk1xKGIpLmZyb21Qb2ludFRvTGF0TG5nKG5ldyBfLmJvKGEucWgsYS5yaCksYyl9O0NmYT1mdW5jdGlvbihhKXt2YXIgYj16ZmEsYz1BZmEsZD1CZmE7R2wuZ2V0SW5zdGFuY2UoKS5pbml0KGEsYixjLHZvaWQgMCx2b2lkIDAsdm9pZCAwLGQpfTsKR2ZhPWZ1bmN0aW9uKCl7dmFyIGE9RGZhfHwoRGZhPUVmYSgnW1tbImFkZHJlc3NWYWxpZGF0aW9uIixbIm1haW4iXV0sWyJhaXJRdWFsaXR5IixbIm1haW4iXV0sWyJhZHNlbnNlIixbIm1haW4iXV0sWyJjb21tb24iLFsibWFpbiJdXSxbImNvbnRyb2xzIixbInV0aWwiXV0sWyJkYXRhIixbInV0aWwiXV0sWyJkaXJlY3Rpb25zIixbInV0aWwiLCJnZW9tZXRyeSJdXSxbImRpc3RhbmNlX21hdHJpeCIsWyJ1dGlsIl1dLFsiZHJhd2luZyIsWyJtYWluIl1dLFsiZHJhd2luZ19pbXBsIixbImNvbnRyb2xzIl1dLFsiZWxldmF0aW9uIixbInV0aWwiLCJnZW9tZXRyeSJdXSxbImdlb2NvZGVyIixbInV0aWwiXV0sWyJnZW9tZXRyeSIsWyJtYWluIl1dLFsiaW1hZ2VyeV92aWV3ZXIiLFsibWFpbiJdXSxbImluZm93aW5kb3ciLFsidXRpbCJdXSxbImpvdXJuZXlTaGFyaW5nIixbIm1haW4iXV0sWyJrbWwiLFsib25pb24iLCJ1dGlsIiwibWFwIl1dLFsibGF5ZXJzIixbIm1hcCJdXSxbImxvZyIsWyJ1dGlsIl1dLFsibWFpbiJdLFsibWFwIixbImNvbW1vbiJdXSxbIm1hcDNkX2xpdGVfd2FzbSIsWyJtYWluIl1dLFsibWFwM2Rfd2FzbSIsWyJtYWluIl1dLFsibWFwM2Rfd2FzbV9nZW94cCIsWyJtYWluIl1dLFsibWFwczNkIixbInV0aWwiXV0sWyJtYXJrZXIiLFsidXRpbCJdXSxbIm1heHpvb20iLFsidXRpbCJdXSxbIm9uaW9uIixbInV0aWwiLCJtYXAiXV0sWyJvdmVybGF5IixbImNvbW1vbiJdXSxbInBhbm9yYW1pbyIsWyJtYWluIl1dLFsicGxhY2VzIixbInBsYWNlc19pbXBsIl1dLFsicGxhY2VzX2ltcGwiLFsiY29udHJvbHMiXV0sWyJwb2x5IixbInV0aWwiLCJtYXAiLCJnZW9tZXRyeSJdXSxbInJvdXRlcyIsWyJtYWluIl1dLFsic2VhcmNoIixbIm1haW4iXV0sWyJzZWFyY2hfaW1wbCIsWyJvbmlvbiJdXSxbInN0cmVldHZpZXciLFsidXRpbCIsImdlb21ldHJ5Il1dLFsic3R5bGVFZGl0b3IiLFsiY29tbW9uIl1dLFsidXRpbCIsWyJjb21tb24iXV0sWyJ2aXN1YWxpemF0aW9uIixbIm1haW4iXV0sWyJ2aXN1YWxpemF0aW9uX2ltcGwiLFsib25pb24iXV0sWyJ3ZWF0aGVyIixbIm1haW4iXV0sWyJ3ZWJnbCIsWyJ1dGlsIiwibWFwIl1dXV0nKSk7cmV0dXJuIF8uQ2coYSwKRmZhLDEpfTtfLk9xPWZ1bmN0aW9uKGEpe3ZhciBiPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIik7aWYoIWIubGVuZ3RoKXJldHVybiAyO2I9Yi5maW5kKGQ9PmQubmFtZS5pbmNsdWRlcyhhKSk7aWYoIWIpcmV0dXJuIDI7aWYoYi5kZWxpdmVyeVR5cGU9PT0iY2FjaGUiKXJldHVybiAxO3ZhciBjPWIuZGVjb2RlZEJvZHlTaXplO3JldHVybiBiLnRyYW5zZmVyU2l6ZT09PTAmJmM+MD8xOmIuZHVyYXRpb248MzA/MTowfTtCZmE9ZnVuY3Rpb24oYSl7dmFyIGI9UHEuZ2V0KGEpO2lmKGIpe3ZhciBjPV8uSmw7YyYmKGM9Xy5ybChfLnNsKGMpKSxjPWMuZW5kc1dpdGgoIi8iKT9jOmAke2N9L2AsYz1gJHtjfSR7YX0uanNgLGE9Xy5PcShjKSxhIT09MiYmKGM9Xy5ObChiLmlqLHtKdzpjfSksXy5PbChjLDApKSxhPT09MT9fLk0oXy5VYSxiLmZqKTphPT09MCYmXy5NKF8uVWEsYi5naikpfX07CklmYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ9WzAsMF07Zm9yKGxldCBmPTAsZz1fLiRsKGEpO2Y8ZzsrK2Ype3ZhciBlPWI/YihhW2ZdKTpbYVtmXS5sYXQoKSxhW2ZdLmxuZygpXTtIZmEoZVswXS1kWzBdLGMpO0hmYShlWzFdLWRbMV0sYyk7ZD1lfXJldHVybiBjLmpvaW4oIiIpfTtIZmE9ZnVuY3Rpb24oYSxiKXtmb3IoYT1hPDA/fihhPDwxKTphPDwxO2E+PTMyOyliLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZSgoMzJ8YSYzMSkrNjMpKSxhPj49NTtiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShhKzYzKSl9OwpfLkpmYT1mdW5jdGlvbihhKXt2YXIgYj1fLiRsKGEpLGM9QXJyYXkoTWF0aC5mbG9vcihhLmxlbmd0aC8yKSksZD0wLGU9MCxmPTAsZztmb3IoZz0wO2Q8YjsrK2cpe2xldCBoPTEsaz0wLG07ZG8gbT1hLmNoYXJDb2RlQXQoZCsrKS02My0xLGgrPW08PGssays9NTt3aGlsZShtPj0zMSk7ZSs9aCYxP34oaD4+MSk6aD4+MTtoPTE7az0wO2RvIG09YS5jaGFyQ29kZUF0KGQrKyktNjMtMSxoKz1tPDxrLGsrPTU7d2hpbGUobT49MzEpO2YrPWgmMT9+KGg+PjEpOmg+PjE7Y1tnXT1uZXcgXy5UbShlKjFFLTUsZioxRS01LCEwKX1jLmxlbmd0aD1nO3JldHVybiBjfTtfLlFxPWZ1bmN0aW9uKGE9IiIpe3JldHVybiBhKyIgKG9wZW5zIGluIG5ldyB0YWIpIn07Cl8uUnE9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7Yi5zdHlsZS5iYWNrZ3JvdW5kPSJub25lIjtiLnN0eWxlLmRpc3BsYXk9ImJsb2NrIjtiLnN0eWxlLnBhZGRpbmc9Yi5zdHlsZS5tYXJnaW49Yi5zdHlsZS5ib3JkZXI9IjAiO2Iuc3R5bGUudGV4dFRyYW5zZm9ybT0ibm9uZSI7Yi5zdHlsZS53ZWJraXRBcHBlYXJhbmNlPSJub25lIjtiLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSI7Yi5zdHlsZS5jdXJzb3I9InBvaW50ZXIiO18uVHAoYik7Yi5zdHlsZS5vdXRsaW5lPSIiO2Iuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKTtiLnRpdGxlPWE7Yi50eXBlPSJidXR0b24iO25ldyBfLkZwKGIsImNvbnRleHRtZW51IixjPT57Xy5nbihjKTtfLmhuKGMpfSk7Xy5JcChiKTtyZXR1cm4gYn07Xy5UcT1mdW5jdGlvbihhLC4uLmIpe2EuY2xhc3NMaXN0LmFkZCguLi5iLm1hcChfLlNxKSl9OwpfLlNxPWZ1bmN0aW9uKGEpe3JldHVybiBLZmEuaGFzKGEpP2E6YCR7Xy5EY2EoYSl9LSR7YX1gfTtMZmE9ZnVuY3Rpb24oYSl7YS5yaC5wcmVwZW5kKGEucWgpO3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PnthLnFoLmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiEwfSl9KX07TWZhPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImgyIiksYz17WnM6bmV3IF8uYm8oMCwwKSxJdTpuZXcgXy5nbygyNCwyNCksbGFiZWw6IkNsb3NlIGRpYWxvZyIsb3duZXJFbGVtZW50OmF9O2M9bmV3IF8uVXEoYyk7Yi50ZXh0Q29udGVudD1hLm9wdGlvbnMudGl0bGU7Yi50cmFuc2xhdGU9YS5vcHRpb25zLmZLPz8hMDtjLmVsZW1lbnQuc3R5bGUucG9zaXRpb249InN0YXRpYyI7Yy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+dm9pZCBhLmJqLmNsb3NlKCkpO2EucmguYXBwZW5kQ2hpbGQoYik7YS5yaC5hcHBlbmRDaGlsZChjLmVsZW1lbnQpO3JldHVybiBhLnJofTsKXy5WcT1mdW5jdGlvbihhLGIpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz10eXBlb2YgYj09PSJmdW5jdGlvbiI7aWYoYSE9PXZvaWQgMCl7bGV0IGQ9LTE7Zm9yKGxldCBlIG9mIGEpZD4tMSYmKHlpZWxkIGM/YihkKTpiKSxkKysseWllbGQgZX19KCl9O05mYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5saW5rcy5sZW5ndGg9PT0wP251bGw6KDAsXy5XcSlgCiAgICAgICR7Xy5WcShhLmxpbmtzLm1hcCgoe3RleHQ6YixocmVmOmN9KT0+KDAsXy5XcSlgPGRpdiBjbGFzcz0ibGluay1pdGVtIj4KICAgICAgICAgICAgICA8YQogICAgICAgICAgICAgICAgLmhyZWY9JHtjfQogICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiCiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPSR7Xy5RcShiKX0KICAgICAgICAgICAgICAgID4ke2J9PGRpdiBjbGFzcz0iaWNvbi1jb250YWluZXIiPgogICAgICAgICAgICAgICAgICAke18uWHEoe2NsYXNzTmFtZToiIixhcmlhTGFiZWw6IiJ9KX0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+YCksIiIpfQogICAgYH07T2ZhPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2IuYXBwZW5kKGEucmgpO2I9bmV3IF8uWXEoe3RpdGxlOiJHb29nbGUgTWFwcyIsZks6ITEsY29udGVudDpifSk7Yi5hZGRFdmVudExpc3RlbmVyKCJjbG9zZSIsKCk9PnthLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJnbXAtaW50ZXJuYWwtY2xvc2UiKSl9KTtyZXR1cm4gYn07WnE9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0iIzAwMCJ8fGE9PT0iIzVlNWU1ZSI/IiNmZmYiOiIjNDc0NzQ3In07ClFmYT1mdW5jdGlvbihhLGIpe2lmKCFhLnNob3dJbmZvQnV0dG9uKXJldHVybigwLF8uV3EpYGA7dmFyIGM9YS5sb2dvQ29sb3JPcHRpb25zLkp5fHwiIzVlNWU1ZSIsZD1hLmxvZ29Db2xvck9wdGlvbnMuS3h8fCIjZmZmIixlPVpxKGMpLGY9WnEoZCk7Yz1hLmF0dHJpYnV0aW9uVHlwZT09PSJMT0dPX09VVExJTkUiP1BmYSh7ZmlsbDpgbGlnaHQtZGFyaygke2N9LCAke2R9KWAsb3V0bGluZTpgbGlnaHQtZGFyaygke2V9LCAke2Z9KWB9KTpfLiRxKHtmaWxsOmBsaWdodC1kYXJrKCR7Y30sICR7ZH0pYH0pO3JldHVybigwLF8uV3EpYCA8YnV0dG9uCiAgICAgIGNsYXNzPSR7KDAsXy5hcikoeyJpbmZvLWJ1dHRvbiI6ITAsInRhcC1hcmVhLWV4cGFuZGVkIjphLmluZm9CdXR0b25UYXBBcmVhRXhwYW5kZWR9KX0KICAgICAgdHlwZT0iYnV0dG9uIgogICAgICBhcmlhLWhhc3BvcHVwPSJkaWFsb2ciCiAgICAgIHRpdGxlPSR7YS5tb3JlSW5mb0J1dHRvblRpdGxlfQogICAgICBhcmlhLWxhYmVsPSR7YS5tb3JlSW5mb0J1dHRvblRpdGxlfQogICAgICBAY2xpY2s9JHtnPT57Zy5zdG9wUHJvcGFnYXRpb24oKTtiLmJqLnNob3dNb2RhbCgpfX0+CiAgICAgIDxkaXYgY2xhc3M9InRhcC1hcmVhIj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iaW5mby1pY29uLWNvbnRhaW5lciI+JHtjfTwvZGl2PgogICAgPC9idXR0b24+YH07VWZhPWZ1bmN0aW9uKGEsYixjLGQ9W10sZT1bXSl7dmFyIGY9bmV3IFJmYTthPV8uaWgoZiw1LGEpO2I/Xy5raChhLDEsOSk6Xy5raChhLDEsMik7Yj1uZXcgXy5icjtjPV8uZWooYixjLmdldFRpbWUoKSk7Yj1fLndnKGEsU2ZhLDExKTtfLkVnKGIsXy5iciwyLGMpO18ubmcoYSwxMyxkLF8uUWUpO2UubGVuZ3RoPjAmJl8ubmcoYSw2LGUsXy5iZik7cmV0dXJuIG1kKFRmYShhKSl9OwpWZmE9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IFtlLGZdb2YgT2JqZWN0LmVudHJpZXMoYS5oZWFkZXJzKSlhPWYsYSE9PSIiJiYoYi5tZXRhZGF0YVtlXT1hKTthPWIuZ2V0TWV0YWRhdGEoKTt2YXIgYz1hWyJYLUdvb2ctTWFwcy0tVG1wLUludGVybmFsLVVzYWdlLUF0dHJpYnV0aW9uLUlkcyJdLGQ9W107YyYmKGQ9Yy5zcGxpdCgiLCIpKTtkZWxldGUgYVsiWC1Hb29nLU1hcHMtLVRtcC1JbnRlcm5hbC1Vc2FnZS1BdHRyaWJ1dGlvbi1JZHMiXTtjPVVmYShfLkpsPy5DaCgpPy5yaCgpfHwiIiwhIV8uTHBbMzVdLG5ldyBEYXRlLF8uSmw/LnpoKCl8fFtdLGQpO2IubWV0YWRhdGFbIlgtR29vZy1HbXAtQ2xpZW50LVNpZ25hbHMiXT1jO2EuQXV0aG9yaXphdGlvbiYmKGIubWV0YWRhdGFbIlgtR29vZy1BcGktS2V5Il09IiIpfTsKWGZhPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPWF3YWl0IF8uV2ZhKCk7Zm9yKGxldCBbYyxkXW9mIE9iamVjdC5lbnRyaWVzKGIpKWI9ZCxiIT09IiImJihhLm1ldGFkYXRhW2NdPWIpfTtfLldmYT1hc3luYyBmdW5jdGlvbigpe3ZhciBhPXt9LFtiLGNdPWF3YWl0IFByb21pc2UuYWxsKFtZZmEoKSx4Y2EoKV0pO2ImJihhWyJYLUZpcmViYXNlLUFwcENoZWNrIl09Yik7YVsiWC1Hb29nLU1hcHMtU2Vzc2lvbi1JZCJdPWMudG9TdHJpbmcoKTtyZXR1cm4gYX07WWZhPWFzeW5jIGZ1bmN0aW9uKCl7dHJ5e3ZhciBhPWF3YWl0IEtjYSgpLmZldGNoQXBwQ2hlY2tUb2tlbigpO2E9Xy5DbSh7dG9rZW46Xy5jcn0pKGEpfWNhdGNoKGIpe3JldHVybiBjb25zb2xlLmVycm9yKGIpLGF3YWl0IF8uTSh3aW5kb3csMjI4NDUxKSwiZXlKbGNuSnZjaUk2SWxWT1MwNVBWMDVmUlZKU1QxSWlmUT09In1yZXR1cm4gYT8udG9rZW4/KGF3YWl0IF8uTSh3aW5kb3csMjI4NDUzKSxhLnRva2VuKToiIn07Cl8uWmZhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKigpe2lmKGEhPT12b2lkIDApe2xldCBjPTA7Zm9yKGxldCBkIG9mIGEpeWllbGQgYihkLGMrKyl9fSgpfTsKaWdhPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPV8uVWEuZ29vZ2xlLm1hcHMsYz0hIWIuX19pYl9fLGQ9JGZhKCksZT1hZ2EoYiksZj1fLkpsPV8uaWkoYmdhLCgwLF8uY2dhKShhfHxbXSkpO0tsPU1hdGgucmFuZG9tKCk7ZCYmKF8uTWw9ITApO18uTSh3aW5kb3csMjE4ODM4KTtmLnpoKCkubGVuZ3RoPjAmJmNvbnNvbGUubG9nKCJSdW5uaW5nIHdpdGggZXhwZXJpbWVudCBJRHM6IixmLnpoKCkubWFwKE51bWJlcikpO18uSChmLDQ4KT09PSJhc3luYyJ8fGM/KGF3YWl0IG5ldyBQcm9taXNlKHA9PnNldFRpbWVvdXQocCkpLF8uTShfLlVhLDIyMTE5MSkpOmNvbnNvbGUud2FybigiR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEkgaGFzIGJlZW4gbG9hZGVkIGRpcmVjdGx5IHdpdGhvdXQgbG9hZGluZz1hc3luYy4gVGhpcyBjYW4gcmVzdWx0IGluIHN1Ym9wdGltYWwgcGVyZm9ybWFuY2UuIEZvciBiZXN0LXByYWN0aWNlIGxvYWRpbmcgcGF0dGVybnMgcGxlYXNlIHNlZSBodHRwczovL2dvby5nbGUvanMtYXBpLWxvYWRpbmciKTtfLkgoZiwKNDgpJiZfLkgoZiw0OCkhPT0iYXN5bmMiJiZjb25zb2xlLndhcm4oYEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIGhhcyBiZWVuIGxvYWRlZCB3aXRoIGxvYWRpbmc9JHtfLkgoZiw0OCl9LiAiJHtfLkgoZiw0OCl9IiBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgbG9hZGluZyBpbiB0aGlzIHZlcnNpb24gb2YgdGhlIEFQSS5gKTt2YXIgZztfLldnKGYsMTMpPT09MCYmKGc9Xy5ObCgxNTMxNTcse0p3OiJtYXBzL2FwaS9qcz8ifSkpO3ZhciBoPV8uTmwoMjE4ODI0LHtKdzoibWFwcy9hcGkvanM/In0pO3N3aXRjaChfLk9xKCJtYXBzL2FwaS9qcz8iKSl7Y2FzZSAxOl8uTShfLlVhLDIzMzE3Nik7YnJlYWs7Y2FzZSAwOl8uTShfLlVhLDIzMzE3OCl9Xy5kcj1QZWEoaGNhKF8uRyhmLGRnYSw1KSksZi50aCgpLGYueGgoKSxmLnloKCkpO18uZWdhPVJlYShoY2EoXy5HKGYsZGdhLDUpKSk7Xy5lcj1TZWEoKTtmZ2EoZixwPT57cC5ibG9ja2VkVVJJJiZwLmJsb2NrZWRVUkkuaW5jbHVkZXMoIi9tYXBzL2FwaS9tYXBzanMvZ2VuXzIwND9jc3BfdGVzdD10cnVlIikmJgpfLk0oXy5VYSwxNDk1OTYpfSk7Zm9yKGE9MDthPF8uamcoZiw5LF8uRWUsMywhMCkubGVuZ3RoOysrYSlfLkxwW18uWGcoZiw5LGEpXT0hMDthPV8uc2woZik7Q2ZhKF8ucmwoYSkpO2Q9cGZhKCk7Xy5hbShkLChwLHEpPT57YltwXT1xfSk7Yi52ZXJzaW9uPWEucmgoKTtnZ2F8fChnZ2E9ITAsXy54bygiZ21wLW1hcCIsZnIpKTtfLkxsKCkmJnZkYSgpO3NldFRpbWVvdXQoKCk9PntfLkhsKCJ1dGlsIikudGhlbihwPT57Xy5KZyhmLDQzKXx8cC5NSi5xaCgpO3AuV0woKTtlJiZfLk0od2luZG93LDE1NTg0Nik7c3dpdGNoKF8uVWEubmF2aWdhdG9yLmNvbm5lY3Rpb24/LmVmZmVjdGl2ZVR5cGUpe2Nhc2UgInNsb3ctMmciOl8uTShfLlVhLDE2NjQ3Myk7YnJlYWs7Y2FzZSAiMmciOl8uTShfLlVhLDE2NjQ3NCk7YnJlYWs7Y2FzZSAiM2ciOl8uTShfLlVhLDE2NjQ3NSk7YnJlYWs7Y2FzZSAiNGciOl8uTShfLlVhLDE2NjQ3Nil9fSl9LDVFMyk7TXAoXy5OcCk/Y29uc29sZS5lcnJvcigiVGhlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIGRvZXMgbm90IHN1cHBvcnQgdGhpcyBicm93c2VyLiBTZWUgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy9kb2N1bWVudGF0aW9uL2phdmFzY3JpcHQvZXJyb3ItbWVzc2FnZXMjdW5zdXBwb3J0ZWQtYnJvd3NlcnMiKToKXy5qZWEoKSYmY29uc29sZS5lcnJvcigiVGhlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIGhhcyBkZXByZWNhdGVkIHN1cHBvcnQgZm9yIHRoaXMgYnJvd3Nlci4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L2Vycm9yLW1lc3NhZ2VzI3Vuc3VwcG9ydGVkLWJyb3dzZXJzIik7YyYmXy5NKF8uVWEsMTU3NTg1KTtiLmltcG9ydExpYnJhcnk9cD0+c2ZhKHAsITAsITApO18uTHBbMzVdJiYoYi5sb2dnZXI9e2JlZ2luQXZhaWxhYmlsaXR5RXZlbnQ6Xy5ObCxjYW5jZWxBdmFpbGFiaWxpdHlFdmVudDpfLlBsLGVuZEF2YWlsYWJpbGl0eUV2ZW50Ol8uT2wsbWF5YmVSZXBvcnRGZWF0dXJlT25jZTpfLk19LGIuZW1iZWRGZWF0dXJlcz17aXNWZXJ0aWNhbFBsYWNlQ2FyZExheW91dEVuYWJsZWQ6KCk9PiEhXy5KbD8uQmgoKSxpc0V4cGVyaW1lbnRhdGlvbkxvZ2dpbmdFbmFibGVkOigpPT4oXy5KbD8uemgoKT8ubGVuZ3RoPz8KMCk+MH0pO2E9W107aWYoIWMpZm9yKGM9Xy5XZyhmLDEzKSxkPTA7ZDxjO2QrKylhLnB1c2goc2ZhKF8uVmcoZiwxMyxkKSkpO3ZhciBrPV8uSChmLDEyKTtrP1Byb21pc2UuYWxsKGEpLnRoZW4oKCk9PntnJiZfLk9sKGcsMCk7Xy5PbChoLDApO2hnYShrKSgpfSk6KGcmJl8uT2woZywwKSxfLk9sKGgsMCkpO3ZhciBtPSgpPT57ZG9jdW1lbnQucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJyZWFkeXN0YXRlY2hhbmdlIixtKSxzZXRUaW1lb3V0KCgpPT57Wy4uLihuZXcgU2V0KFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIqIildLm1hcChwPT5wLmxvY2FsTmFtZSkpKV0uc29tZShwPT5wLmluY2x1ZGVzKCItIikmJiFwLm1hdGNoKC9eZ21weD8tLykpJiZfLk0oXy5VYSwxNzkxMTcpfSwxRTMpKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicmVhZHlzdGF0ZWNoYW5nZSIsbSk7bSgpfTsKaGdhPWZ1bmN0aW9uKGEpe3ZhciBiPWEuc3BsaXQoIi4iKSxjPV8uVWEsZD1fLlVhO2ZvcihsZXQgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGQ9YyxjPWNbYltlXV0sIWMpdGhyb3cgXy5BbShhKyIgaXMgbm90IGEgZnVuY3Rpb24iKTtyZXR1cm4gZnVuY3Rpb24oKXtjLmFwcGx5KGQpfX07CiRmYT1mdW5jdGlvbigpe3ZhciBhPSExLGI9ZD0+e3NldFRpbWVvdXQoKCk9PntfLk0oXy5VYSxkKX0sMCl9O2Zvcih2YXIgYyBpbiBPYmplY3QucHJvdG90eXBlKV8uVWEuY29uc29sZSYmXy5VYS5jb25zb2xlLmVycm9yKCJUaGlzIHNpdGUgYWRkcyBwcm9wZXJ0eSBgIitjKyJgIHRvIE9iamVjdC5wcm90b3R5cGUuIEV4dGVuZGluZyBPYmplY3QucHJvdG90eXBlIGJyZWFrcyBKYXZhU2NyaXB0IGZvci4uaW4gbG9vcHMsIHdoaWNoIGFyZSB1c2VkIGhlYXZpbHkgaW4gR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEkgdjMuIiksYT0hMCxiKDE0OTU5NCk7QXJyYXkuZnJvbShuZXcgU2V0KFs0Ml0pKVswXSE9PTQyJiYoXy5VYS5jb25zb2xlJiZfLlVhLmNvbnNvbGUuZXJyb3IoIlRoaXMgc2l0ZSBvdmVycmlkZXMgQXJyYXkuZnJvbSgpIHdpdGggYW4gaW1wbGVtZW50YXRpb24gdGhhdCBkb2Vzbid0IHN1cHBvcnQgaXRlcmFibGVzLCB3aGljaCBjb3VsZCBjYXVzZSBHb29nbGUgTWFwcyBKYXZhU2NyaXB0IEFQSSB2MyB0byBub3Qgd29yayBjb3JyZWN0bHkuIiksCmE9ITAsYigxNDk1OTApKTtfLlVhLlByb3RvdHlwZSYmKGIoMTQ5NTk1KSxhPSEwKTtfLlVhLk1vb1Rvb2xzJiYoYigxNDk1OTMpLGE9ITApO1sxLDJdLnZhbHVlcygpW1N5bWJvbC5pdGVyYXRvcl18fChiKDE0OTU5MSksYT0hMCk7dHlwZW9mIERhdGUubm93KCkhPT0ibnVtYmVyIiYmKF8uVWEuY29uc29sZSYmXy5VYS5jb25zb2xlLmVycm9yKCJUaGlzIHNpdGUgb3ZlcnJpZGVzIERhdGUubm93KCkgd2l0aCBhbiBpbXBsZW1lbnRhdGlvbiB0aGF0IGRvZXNuJ3QgcmV0dXJuIHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHNpbmNlIEphbnVhcnkgMSwgMTk3MCAwMDowMDowMCBVVEMsIHdoaWNoIGNvdWxkIGNhdXNlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIHYzIHRvIG5vdCB3b3JrIGNvcnJlY3RseS4iKSxhPSEwLGIoMTQ5NTkyKSk7dHJ5e2M9Y2xhc3MgZXh0ZW5kcyBIVE1MRWxlbWVudHt9LF8ueG8oImdtcC1pbnRlcm5hbC1lbGVtZW50LXN1cHBvcnQtdmVyaWZpY2F0aW9uIiwKYyksbmV3IGN9Y2F0Y2goZCl7Xy5VYS5jb25zb2xlJiZfLlVhLmNvbnNvbGUuZXJyb3IoIlRoaXMgc2l0ZSBjYW5ub3QgaW5zdGFudGlhdGUgY3VzdG9tIEhUTUxFbGVtZW50IHN1YmNsYXNzZXMsIHdoaWNoIGNvdWxkIGNhdXNlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIHYzIHRvIG5vdCB3b3JrIGNvcnJlY3RseS4iKSxhPSEwLGIoMjE5OTk1KX1yZXR1cm4gYX07YWdhPWZ1bmN0aW9uKGEpeyhhPSJ2ZXJzaW9uImluIGEpJiZfLlVhLmNvbnNvbGUmJl8uVWEuY29uc29sZS5lcnJvcigiWW91IGhhdmUgaW5jbHVkZWQgdGhlIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJIG11bHRpcGxlIHRpbWVzIG9uIHRoaXMgcGFnZS4gVGhpcyBtYXkgY2F1c2UgdW5leHBlY3RlZCBlcnJvcnMuIik7cmV0dXJuIGF9OwpmZ2E9ZnVuY3Rpb24oYSxiKXtpZihhLnJoKCkmJl8ubWwoYS5yaCgpKSl0cnl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLGIpLGpnYS5zZW5kKF8ubWwoYS5yaCgpKSsiL21hcHMvYXBpL21hcHNqcy9nZW5fMjA0P2NzcF90ZXN0PXRydWUiKX1jYXRjaChjKXt9fTtfLmtyPWZ1bmN0aW9uKGEsYixjKXtzd2l0Y2gobWJhKGMuY29kZSkudG9TdHJpbmcoKVswXSl7Y2FzZSAiMiI6cmV0dXJuIG51bGw7Y2FzZSAiMyI6cmV0dXJuIG5ldyBncihhLGIsaHIoYykpO2Nhc2UgIjQiOnJldHVybiBuZXcgXy5pcihhLGIsaHIoYykpO2Nhc2UgIjUiOnJldHVybiBuZXcgXy5qcihhLGIsaHIoYykpO2RlZmF1bHQ6cmV0dXJuIG5ldyBfLmpyKGEsYixocihjKSl9fTsKaHI9ZnVuY3Rpb24oYSl7c3dpdGNoKGEuY29kZSl7Y2FzZSAwOnJldHVybiJPSyI7Y2FzZSAxOnJldHVybiJDQU5DRUxMRUQiO2Nhc2UgMjpyZXR1cm4iVU5LTk9XTiI7Y2FzZSAzOnJldHVybiJJTlZBTElEX0FSR1VNRU5UIjtjYXNlIDQ6cmV0dXJuIkRFQURMSU5FX0VYQ0VFREVEIjtjYXNlIDU6cmV0dXJuIk5PVF9GT1VORCI7Y2FzZSA2OnJldHVybiJBTFJFQURZX0VYSVNUUyI7Y2FzZSA3OnJldHVybiJQRVJNSVNTSU9OX0RFTklFRCI7Y2FzZSAxNjpyZXR1cm4iVU5BVVRIRU5USUNBVEVEIjtjYXNlIDg6cmV0dXJuIlJFU09VUkNFX0VYSEFVU1RFRCI7Y2FzZSA5OnJldHVybiJGQUlMRURfUFJFQ09ORElUSU9OIjtjYXNlIDEwOnJldHVybiJBQk9SVEVEIjtjYXNlIDExOnJldHVybiJPVVRfT0ZfUkFOR0UiO2Nhc2UgMTI6cmV0dXJuIlVOSU1QTEVNRU5URUQiO2Nhc2UgMTM6cmV0dXJuIklOVEVSTkFMIjtjYXNlIDE0OnJldHVybiJVTkFWQUlMQUJMRSI7Y2FzZSAxNTpyZXR1cm4iREFUQV9MT1NTIjsKZGVmYXVsdDpyZXR1cm4iVU5LTk9XTiJ9fTtfLmtnYT1mdW5jdGlvbihhLGI9e30pe3ZhciBjPV8uSmw/LnJoKCksZD1iLmxhbmd1YWdlPz9jPy5yaCgpO2QmJmEuc2VhcmNoUGFyYW1zLnNldCgiaGwiLGQpOyhkPWIucmVnaW9uKT9hLnNlYXJjaFBhcmFtcy5zZXQoImdsIixkKTooZD1jPy50aCgpLGM9Yz8ueGgoKSxkJiYhYyYmYS5zZWFyY2hQYXJhbXMuc2V0KCJnbCIsZCkpO2Euc2VhcmNoUGFyYW1zLnNldCgic291cmNlIixiLnNvdXJjZT8/ISFfLkxwWzM1XT8iZW1iZWQiOiJhcGl2MyIpO3JldHVybiBhfTtlYT1bXTt6YT1PYmplY3QuZGVmaW5lUHJvcGVydHk7eGE9Z2xvYmFsVGhpczt5YT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCI7dGE9e307bGE9e307bmE9IkludDggVWludDggVWludDhDbGFtcGVkIEludDE2IFVpbnQxNiBJbnQzMiBVaW50MzIgRmxvYXQzMiBGbG9hdDY0Ii5zcGxpdCgiICIpOwp4YS5CaWdJbnQ2NEFycmF5JiYobmEucHVzaCgiQmlnSW50NjQiKSxuYS5wdXNoKCJCaWdVaW50NjQiKSk7cmEoIlN5bWJvbC5kaXNwb3NlIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOlN5bWJvbCgiU3ltYm9sLmRpc3Bvc2UiKX0sImVzX25leHQiKTtyYSgiU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7aWYoYiBpbnN0YW5jZW9mIFJlZ0V4cCYmIWIuZ2xvYmFsKXRocm93IG5ldyBUeXBlRXJyb3IoIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbCBjYWxsZWQgd2l0aCBhIG5vbi1nbG9iYWwgUmVnRXhwIGFyZ3VtZW50LiIpO3JldHVybiBiIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMucmVwbGFjZShiLGMpOnRoaXMucmVwbGFjZShuZXcgUmVnRXhwKFN0cmluZyhiKS5yZXBsYWNlKC8oWy0oKVxbXF17fSs/Ki4kXF58LDojPCFcXF0pL2csIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4IiksImciKSxjKX19LCJlc18yMDIxIik7CnJhKCJBcnJheS5wcm90b3R5cGUuYXQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6QmF9LCJlc19uZXh0Iik7YWFhKCJhdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpCYX0sImVzX25leHQiKTtyYSgiU3RyaW5nLnByb3RvdHlwZS5hdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpCYX0sImVzX25leHQiKTtyYSgiU2V0LnByb3RvdHlwZS51bmlvbiIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtKYSh0aGlzKTtEYShiKTt2YXIgYz1uZXcgU2V0KHRoaXMpO2I9SGEoYi5rZXlzKCkpO2Zvcih2YXIgZD1iLm5leHQoKTshZC5kb25lOyljLmFkZChkLnZhbHVlKSxkPWIubmV4dCgpO3JldHVybiBjfX0sImVzX25leHQiKTsKcmEoIlNldC5wcm90b3R5cGUuaXNEaXNqb2ludEZyb20iLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7SmEodGhpcyk7RGEoYik7dmFyIGM9dGhpcy5zaXplPD1iLnNpemU/e05KOnRoaXMua2V5cygpLHZJOmJ9OntOSjpIYShiLmtleXMoKSksdkk6dGhpc307Yj1jLk5KO2M9Yy52STtmb3IodmFyIGQ9Yi5uZXh0KCk7IWQuZG9uZTspe2lmKGMuaGFzKGQudmFsdWUpKXJldHVybiExO2Q9Yi5uZXh0KCl9cmV0dXJuITB9fSwiZXNfbmV4dCIpO3JhKCJQcm9taXNlLndpdGhSZXNvbHZlcnMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXt2YXIgYixjO3JldHVybntwcm9taXNlOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGQsZSl7Yj1kO2M9ZX0pLHJlc29sdmU6YixyZWplY3Q6Y319fSwiZXNfbmV4dCIpO3ZhciBNayxiYixiYWE7TWs9TWt8fHt9O18uVWE9dGhpc3x8c2VsZjtiYj0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTtiYWE9MDtfLnFiKF8udGIsRXJyb3IpO18udGIucHJvdG90eXBlLm5hbWU9IkN1c3RvbUVycm9yIjtfLnFiKHViLF8udGIpO3ViLnByb3RvdHlwZS5uYW1lPSJBc3NlcnRpb25FcnJvciI7dmFyIHloPSEwLHhoLHliO3ZhciBscj1TYSgxLCEwKSxJYj1TYSg2MTA0MDEzMDEsITEpO1NhKDg5OTU4ODQzNywhMSk7U2EoNzcyNjU3NzY4LCEwKTtTYSg1MTM2NTk1MjMsITEpO1NhKDU2ODMzMzk0NSwhMCk7U2EoMTMzMTc2MTQwMywhMCk7U2EoNjUxMTc1ODI4LCExKTtTYSg3MjI3NjQ1NDIsITEpO1NhKDc0ODQwMjE0NSwhMSk7U2EoNzQ4NDAyMTQ2LCExKTt2YXIgRWY9U2EoNzQ4NDAyMTQ3LCEwKTtTYSgxNjAyNjEzMTg1LCExKTtTYSg4NjEzNzc3MjMsITEpO1NhKDg2MTM3NzcyNCxscik7U2EoODY5MzM2OTAzLCExKTtTYSg4ODI2NzQ1MDcsITEpO1NhKDg2OTMzNjkwNCxscik7U2EoODY5MzM2OTA1LGxyKTtTYSgyODM5NTMxNTUsITEpO1NhKDkxOTQ0NDgyNCwhMSk7U2EoOTMxNDY4MDQ3LCExKTtTYSg5Mjg4NzUzOTgsITEpO1NhKDY4Mzc0OTIwMSwhMSk7U2EoMjE0NzQ4MzY0NCwhMSk7U2EoMjE0NzQ4MzY0NSwhMSk7U2EoMjE0NzQ4MzY0Nixscik7U2EoMjE0NzQ4MzY0NywhMCk7dmFyIGxnYTtsZ2E9Xy5VYS5uYXZpZ2F0b3I7Xy5KYj1sZ2E/bGdhLnVzZXJBZ2VudERhdGF8fG51bGw6bnVsbDtGY1siICJdPWZ1bmN0aW9uKCl7fTt2YXIgbmdhLHByO18ubWdhPV8uVWIoKTtfLm1yPV8uWGIoKTtuZ2E9Xy5SYigiRWRnZSIpO18ub2dhPV8uUmIoIkdlY2tvIikmJiEoXy5IYigpJiYhXy5SYigiRWRnZSIpKSYmIShfLlJiKCJUcmlkZW50Iil8fF8uUmIoIk1TSUUiKSkmJiFfLlJiKCJFZGdlIik7Xy5ucj1fLkhiKCkmJiFfLlJiKCJFZGdlIik7Xy5wZ2E9Xy5tYygpO18ub3I9Xy5uYygpO18ucWdhPWtjKCk/Xy5KYi5wbGF0Zm9ybT09PSJBbmRyb2lkIjpfLlJiKCJBbmRyb2lkIik7Xy5yZ2E9bGMoKTtfLnNnYT1fLlJiKCJpUGFkIik7Xy50Z2E9Xy5SYigiaVBvZCIpOwphOntsZXQgYT0iIixiPWZ1bmN0aW9uKCl7dmFyIGM9Xy5GYigpO2lmKF8ub2dhKXJldHVybi9ydjooW15cKTtdKykoXCl8OykvLmV4ZWMoYyk7aWYobmdhKXJldHVybi9FZGdlXC8oW1xkXC5dKykvLmV4ZWMoYyk7aWYoXy5tcilyZXR1cm4vXGIoPzpNU0lFfHJ2KVs6IF0oW15cKTtdKykoXCl8OykvLmV4ZWMoYyk7aWYoXy5ucilyZXR1cm4vV2ViS2l0XC8oXFMrKS8uZXhlYyhjKTtpZihfLm1nYSlyZXR1cm4vKD86VmVyc2lvbilbIFwvXT8oXFMrKS8uZXhlYyhjKX0oKTtiJiYoYT1iP2JbMV06IiIpO2lmKF8ubXIpe3ZhciBxcjtsZXQgYz1fLlVhLmRvY3VtZW50O3FyPWM/Yy5kb2N1bWVudE1vZGU6dm9pZCAwO2lmKHFyIT1udWxsJiZxcj5wYXJzZUZsb2F0KGEpKXtwcj1TdHJpbmcocXIpO2JyZWFrIGF9fXByPWF9Xy51Z2E9cHI7Xy52Z2E9Xy5kYygpO18ud2dhPWxjKCl8fF8uUmIoImlQb2QiKTtfLnhnYT1fLlJiKCJpUGFkIik7Xy55Z2E9Xy5oYygpO18uemdhPV8uamMoKSYmIShsYygpfHxfLlJiKCJpUGFkIil8fF8uUmIoImlQb2QiKSk7dmFyIEhjPXt9LFhjPW51bGw7dmFyICRjLGVhYSxBZ2E7JGM9L1stXy5dL2c7ZWFhPXsiLSI6IisiLF86Ii8iLCIuIjoiPSJ9O18uaGQ9e307QWdhPXR5cGVvZiBzdHJ1Y3R1cmVkQ2xvbmUhPSJ1bmRlZmluZWQiO3ZhciBjZDtfLmZkPWNsYXNze2lzRW1wdHkoKXtyZXR1cm4gdGhpcy5xaD09bnVsbH1jb25zdHJ1Y3RvcihhLGIpe3BkKGIpO3RoaXMucWg9YTtpZihhIT1udWxsJiZhLmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIkJ5dGVTdHJpbmcgc2hvdWxkIGJlIGNvbnN0cnVjdGVkIHdpdGggbm9uLWVtcHR5IHZhbHVlcyIpO319O18uQmdhPUFnYT8oYSxiKT0+UHJvbWlzZS5yZXNvbHZlKHN0cnVjdHVyZWRDbG9uZShhLHt0cmFuc2ZlcjpifSkpOmdhYTt2YXIgdWQ9dm9pZCAwO3ZhciB1ZyxnZyxtYWEsbmFhLHNhYSxMZCxwYWE7Xy5DZD15ZCgiamFzIiwhMCk7Xy5mZj15ZCgpO3VnPXlkKCk7Z2c9eWQoKTtfLkNnYT15ZCgpO18ua2Y9eWQoKTttYWE9eWQoKTtuYWE9eWQoKTtfLnhpPXlkKCk7c2FhPXlkKCk7TGQ9eWQoIm1fbSIsITApO3BhYT15ZCgpO18ub2Y9eWQoKTt2YXIgRGdhO1suLi5PYmplY3QudmFsdWVzKHtyUjoxLHFSOjIscFI6NCxEUjo4LGFTOjE2LHlSOjMyLE1ROjY0LGtSOjEyOCxnUjoyNTYsVFI6NTEyLGhSOjEwMjQsbFI6MjA0OCx6Ujo0MDk2LHVSOjgxOTJ9KV07RGdhPVtdO0RnYVtfLkNkXT03O18uZWc9T2JqZWN0LmZyZWV6ZShEZ2EpO3ZhciBNZCx1YWEsS2osYWU7TWQ9e307Xy5SZD17fTt1YWE9T2JqZWN0LmZyZWV6ZSh7fSk7Xy52Zz1PYmplY3QuZnJlZXplKHt9KTtLaj17fTthZT17fTt2YXIgaWFhLGhhYSxFZ2E7aWFhPV8uY2UoYT0+dHlwZW9mIGE9PT0ibnVtYmVyIik7aGFhPV8uY2UoYT0+dHlwZW9mIGE9PT0ic3RyaW5nIik7RWdhPV8uY2UoYT0+dHlwZW9mIGE9PT0iYmlnaW50Iik7Xy5ycj1fLmNlKGE9PmEhPW51bGwmJnR5cGVvZiBhPT09Im9iamVjdCImJnR5cGVvZiBhLnRoZW49PT0iZnVuY3Rpb24iKTtfLkZnYT1fLmNlKGE9PnR5cGVvZiBhPT09ImZ1bmN0aW9uIik7dmFyIEdnYSxIZ2E7Xy5aYWE9Xy5jZShhPT5FZ2EoYSkpO18udGY9Xy5jZShhPT5hPj1HZ2EmJmE8PUhnYSk7R2dhPUJpZ0ludChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUik7SGdhPUJpZ0ludChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7Xy5lZT0wO18uZ2U9MDt2YXIgQmUsamFhO18uTGU9dHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiI/QmlnSW50LmFzSW50Tjp2b2lkIDA7Xy5aZT10eXBlb2YgQmlnSW50PT09ImZ1bmN0aW9uIj9CaWdJbnQuYXNVaW50Tjp2b2lkIDA7Xy5VZT1OdW1iZXIuaXNTYWZlSW50ZWdlcjtCZT1OdW1iZXIuaXNGaW5pdGU7Xy5SZT1NYXRoLnRydW5jO2phYT0vXi0/KFsxLTldWzAtOV0qfDApKFwuWzAtOV0rKT8kLzt2YXIgcWFhPXt9O18uc3I9Xy5wYihfLkNnYSk7dmFyIGxhYTtfLm5mPWNsYXNze307bGFhPXtyUDohMH07dmFyIHJmO18uY2dhPUFnYT9zdHJ1Y3R1cmVkQ2xvbmU6YT0+c2YoYSwwLHVmKTt2YXIgeWY7Xy5NZz1fLmRlKDApO3ZhciBJZ2E9Y2xhc3N7Y29uc3RydWN0b3IoKXtpZihLaiE9PUtqKXRocm93IEVycm9yKCk7fX07dmFyIEdoLE1oLE5oLE9oLExoLEtoLEloLEpoO18uRWg9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLmxvPWE+Pj4wO3RoaXMuaGk9Yj4+PjB9fTtfLkpnYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucWg9W119bGVuZ3RoKCl7cmV0dXJuIHRoaXMucWgubGVuZ3RofWVuZCgpe3ZhciBhPXRoaXMucWg7dGhpcy5xaD1bXTtyZXR1cm4gYX19O18uS2dhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaD1bXTt0aGlzLnJoPTA7dGhpcy5xaD1uZXcgXy5KZ2F9fTt2YXIgQmksRWFhLGtpLGtiYTtCaT1naSgpO0VhYT1naSgpO2tpPWdpKCk7Xy5Vaj1naSgpO18uWmo9Z2koKTtfLldqPWdpKCk7Xy5kaz1naSgpO18uYms9Z2koKTtfLmZrPWdpKCk7Xy5jaz1naSgpO18uZWs9Z2koKTtfLmhrPWdpKCk7Xy5qaz1naSgpO18uaWs9Z2koKTtfLmtrPWdpKCk7a2JhPWdpKCk7Xy5Zaj1naSgpO18uWGo9Z2koKTtfLmFrPWdpKCk7Xy5naz1naSgpO18uST1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuTGk9Q2YoYSxiLHZvaWQgMCwyMDQ4KX10b0pTT04oKXtyZXR1cm4gXy53Zih0aGlzKX1qaihhKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoXy53Zih0aGlzLGEpKX1nZXRFeHRlbnNpb24oYSl7Xy5xZih0aGlzLkxpLGEucWgpO18ucGYodGhpcyxhLnFoLGEudGgpO3JldHVybiBhLlduP2EuZ3c/YS5zaCh0aGlzLGEuV24sYS5xaCxfLmNnKCksYS5yaCk6YS5zaCh0aGlzLGEuV24sYS5xaCxhLnJoKTphLmd3P2Euc2godGhpcyxhLnFoLF8uY2coKSxhLnJoKTphLnNoKHRoaXMsYS5xaCxhLmRlZmF1bHRWYWx1ZSxhLnJoKX1jbG9uZSgpe3ZhciBhPXRoaXMuTGksYj1hW18uQ2RdfDA7cmV0dXJuIF8uR2YodGhpcyxhLGIpP0hmKHRoaXMsYSwhMCk6bmV3IHRoaXMuY29uc3RydWN0b3IoXy5GZihhLGIsITEpKX13aCgpe3ZhciBhPXRoaXMuTGksYj1hW18uQ2RdfDA7cmV0dXJuIF8uU2QodGhpcyxiKT90aGlzOl8uR2YodGhpcyxhLGIpPwpIZih0aGlzLGEpOm5ldyB0aGlzLmNvbnN0cnVjdG9yKF8uRmYoYSxiLCEwKSl9fTtfLkkucHJvdG90eXBlLnNoPV8uaGEoMSk7Xy5JLnByb3RvdHlwZS5xaD1fLmhhKDApO18uSS5wcm90b3R5cGVbTGRdPU1kO18uSS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5MaS50b1N0cmluZygpfTt2YXIgamkseGFhLHlhYSx6YWEsdmksY2JhLHBpO2ppPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQpe3RoaXMudUM9YTt0aGlzLnZDPWI7dGhpcy5YdD1jO3RoaXMucWg9ZDthPV8ucGIoa2kpOyhhPSEhYSYmZD09PWEpfHwoYT1fLnBiKF8uVWopLGE9ISFhJiZkPT09YSk7dGhpcy5yaD1hfX07eGFhPV8ubGkoZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihhLnFoIT09MilyZXR1cm4hMTtfLkFoKGEsXy56ZyhiLGQsYyksZSk7cmV0dXJuITB9LG5pKTt5YWE9Xy5saShmdW5jdGlvbihhLGIsYyxkLGUpe2lmKGEucWghPT0yKXJldHVybiExO18uQWgoYSxfLnpnKGIsZCxjKSxlKTtyZXR1cm4hMH0sbmkpO3phYT1TeW1ib2woKTt2aT1TeW1ib2woKTtjYmE9U3ltYm9sKCk7Xy50cj1TeW1ib2woKTt2YXIgTGdhO0xnYT1fLmRlKDApO18uTWdhPVN5bWJvbCgpO18udXI9Xy5BaShmdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTEpcmV0dXJuITE7Xy5FaShiLGMsXy52aChhLnJoKSk7cmV0dXJuITB9LF8uR2ksXy5Yaik7Xy52cj1fLkFpKGZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5PaShhLGIsYyl9LF8uSGksXy5oayk7Xy53cj1fLkNpKF8uUGksZnVuY3Rpb24oYSxiLGMpe2I9Xy55aShfLmFmLGIsITEpO2lmKGIhPW51bGwpZm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspYmkoYSxjLGJbZF0pfSxfLmhrKTtfLnhyPV8uQWkoZnVuY3Rpb24oYSxiLGMpe2EucWghPT0wP2I9ITE6KGE9Xy50aChhLnJoKSxfLkVpKGIsYyxhPT09TGdhP3ZvaWQgMDphKSxiPSEwKTtyZXR1cm4gYn0sXy5IaSxfLmhrKTtfLlA9Xy5BaShmdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTApcmV0dXJuITE7Xy5FaShiLGMsXy5yaChhLnJoKSk7cmV0dXJuITB9LF8uSWksXy5kayk7Cl8ueXI9Xy5DaShfLlFpLGZ1bmN0aW9uKGEsYixjKXtiPV8ueWkoXy5HZSxiLCEwKTtpZihiIT1udWxsJiZiLmxlbmd0aCl7Yz1fLlpoKGEsYyk7Zm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspXy5UaChhLnFoLGJbZF0pO18uJGgoYSxjKX19LF8uZGspO18uenI9Xy5BaShmdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTApcmV0dXJuITE7YT1fLnJoKGEucmgpO18uRWkoYixjLGE9PT0wP3ZvaWQgMDphKTtyZXR1cm4hMH0sXy5JaSxfLmRrKTtfLlI9Xy5BaShmdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTApcmV0dXJuITE7Xy5FaShiLGMsXy5xaChhLnJoKSk7cmV0dXJuITB9LF8uSmksXy5aaik7Xy5VPV8uQWkoZnVuY3Rpb24oYSxiLGMpe2lmKGEucWghPT0yKXJldHVybiExO18uRWkoYixjLF8uQ2goYSkpO3JldHVybiEwfSxfLktpLF8uV2opOwpfLkFyPV8uQ2koZnVuY3Rpb24oYSxiLGMpe2lmKGEucWghPT0yKXJldHVybiExO2E9Xy5DaChhKTtfLlZmKGIsYltfLkNkXXwwLGMpLnB1c2goYSk7cmV0dXJuITB9LGZ1bmN0aW9uKGEsYixjKXtiPV8ueWkoXy5kZixiLCEwKTtpZihiIT1udWxsKWZvcihsZXQgZz0wO2c8Yi5sZW5ndGg7ZysrKXt2YXIgZD1hLGU9YyxmPWJbZ107ZiE9bnVsbCYmXy5kaShkLGUsemIoZikpfX0sXy5Xaik7Xy5ZPV8uRGkoZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihhLnFoIT09MilyZXR1cm4hMTtfLkFoKGEsXy5GaShiLGQsYyksZSk7cmV0dXJuITB9LGZ1bmN0aW9uKGEsYixjLGQsZSl7Xy56aShhLGIsYyxkLGUsXy5MaSl9KTtfLkJyPV8uQWkoZnVuY3Rpb24oYSxiLGMpe2lmKGEucWghPT0wKXJldHVybiExO18uRWkoYixjLF8uc2goYS5yaCkpO3JldHVybiEwfSxfLk1pLF8uYmspOwpfLlo9Xy5BaShmdW5jdGlvbihhLGIsYyl7aWYoYS5xaCE9PTApcmV0dXJuITE7Xy5FaShiLGMsXy5yaChhLnJoKSk7cmV0dXJuITB9LF8uTmksXy5nayk7Xy5Dcj1fLkNpKF8uUmksZnVuY3Rpb24oYSxiLGMpe2I9Xy55aShfLkdlLGIsITApO2lmKGIhPW51bGwpZm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspY2koYSxjLGJbZF0pfSxfLmdrKTt2YXIgWWk9U3ltYm9sKCksWmk9U3ltYm9sKCksVGk9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLmRDPWE7dGhpcy5ndz1iO3RoaXMuaXNNYXA9ITF9fSxTaT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkLGUpe3RoaXMuaUE9YTt0aGlzLmRDPWI7dGhpcy5ndz1jO3RoaXMuaXNNYXA9ZDt0aGlzLmJRPWV9fTt2YXIgTmdhPW5ldyBNYXAsRmFhPWNsYXNzIGV4dGVuZHMgSWdhe2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLnFoPWI7aWYoS2ohPT1Lail0aHJvdyBFcnJvcigpO05nYS5zZXQoYSx0aGlzKX19O3ZhciBHYWE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMsZCl7dGhpcy5xaD1hO3RoaXMuV249Yzt0aGlzLmd3PTA7dGhpcy5zaD1fLkFnO3RoaXMud2g9Xy5FZzt0aGlzLmRlZmF1bHRWYWx1ZT12b2lkIDA7dGhpcy5yaD1iLnZUIT1udWxsP2FlOnZvaWQgMDt0aGlzLnRoPWR9cmVnaXN0ZXIoKXtGYyh0aGlzKX19O18uRHI9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9cmgoKXtyZXR1cm4gXy5PZyh0aGlzLDEpfXRoKCl7cmV0dXJuIF8uT2codGhpcywyKX19O18uRXI9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9dGgoKXtyZXR1cm4gXy5BZyh0aGlzLF8uRHIsMSl9cmgoKXtyZXR1cm4gXy5BZyh0aGlzLF8uRHIsMil9fTt2YXIgT2JhPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfWdldFZhbHVlKCl7dmFyIGE9Xy5PZih0aGlzLDIpO2lmKEFycmF5LmlzQXJyYXkoYSl8fGEgaW5zdGFuY2VvZiBfLkkpdGhyb3cgRXJyb3IoIkNhbm5vdCBhY2Nlc3MgdGhlIEFueS52YWx1ZSBmaWVsZCBvbiBBbnkgcHJvdG9zIGVuY29kZWQgdXNpbmcgdGhlIGpzcGIgZm9ybWF0LCBjYWxsIHVucGFja0pzcGIgaW5zdGVhZCIpO3JldHVybiBfLm1nKHRoaXMsMil9c2V0VmFsdWUoYSl7aWYoYT09bnVsbClhPXRoaXM7ZWxzZSBpZihBcnJheS5pc0FycmF5KGEpKWE9Xy5RZih0aGlzLDIsc2YoYSwwLHVmKSk7ZWxzZSBpZih0eXBlb2YgYT09PSJzdHJpbmcifHxhIGluc3RhbmNlb2YgXy5mZHx8Xy5iZChhKSlhPW9nKHRoaXMsMixfLlhkKGEsITEpLF8ubGQoKSk7ZWxzZSB0aHJvdyBFcnJvcigiaW52YWxpZCB2YWx1ZSBpbiBBbnkudmFsdWUgZmllbGQ6ICIrYSsiIGV4cGVjdGVkIGEgQnl0ZVN0cmluZywgYSBiYXNlNjQgZW5jb2RlZCBzdHJpbmcsIGEgVWludDhBcnJheSBvciBhIGpzcGIgYXJyYXkiKTsKcmV0dXJuIGF9fTtfLkZyPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07Xy5Gci5wcm90b3R5cGUucmg9Xy5oYSgyKTtfLmJyPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfXJoKCl7dmFyIGE9TnVtYmVyKF8uUWcodGhpcykpLGI9Xy5LZyh0aGlzLDIpO3JldHVybiBuZXcgRGF0ZShhKjFFMytiLzFFNil9fTtfLkdyPVswLF8ueHIsXy56cl07dmFyIE5iYTtfLkhyPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfWdldE1lc3NhZ2UoKXtyZXR1cm4gXy5IKHRoaXMsMil9fTtOYmE9Xy5iaihfLkhyKTtfLklyPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfWNpKCl7cmV0dXJuIF8uSCh0aGlzLDEpfXJoKCl7cmV0dXJuIF8uSCh0aGlzLDIpfX07Xy5Kcj1jbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O18uS3I9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIga2o9ImNvbnN0cnVjdG9yIGhhc093blByb3BlcnR5IGlzUHJvdG90eXBlT2YgcHJvcGVydHlJc0VudW1lcmFibGUgdG9Mb2NhbGVTdHJpbmcgdG9TdHJpbmcgdmFsdWVPZiIuc3BsaXQoIiAiKTt2YXIgTHI9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsbWo9THIsbmo7Xy5waj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnFoPWF9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5xaCsiIn19O18uc2o9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMucWh9fTtfLk1yPV8udGooImFib3V0OmludmFsaWQjekNsb3N1cmV6Iik7dmFyIFRhYTtfLnVqPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuQWo9YX19O18uT2dhPVt2aigiZGF0YSIpLHZqKCJodHRwIiksdmooImh0dHBzIiksdmooIm1haWx0byIpLHZqKCJmdHAiKSxuZXcgXy51aihhPT4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpKV07VGFhPVsiZGF0YToiLCJodHRwOiIsImh0dHBzOiIsIm1haWx0bzoiLCJmdHA6Il07dmFyIHdqPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMucWg9YX10b1N0cmluZygpe3JldHVybiB0aGlzLnFoKyIifX0seGRhPW5ldyB3aihMcj9Mci5lbXB0eUhUTUw6IiIpO18uQWo9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMucWh9fTtfLkRqPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7Xy5Ocj1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkLGUpe3RoaXMuc2g9YTt0aGlzLnFoPWI7dGhpcy50aD1jO3RoaXMud2g9ZDt0aGlzLnJoPWV9fTtfLlBnYT1uZXcgXy5OcihuZXcgU2V0KCJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikpLApuZXcgTWFwKFtbIkEiLG5ldyBNYXAoW1siaHJlZiIse09tOjd9XV0pXSxbIkFSRUEiLG5ldyBNYXAoW1siaHJlZiIse09tOjd9XV0pXSxbIkxJTksiLG5ldyBNYXAoW1siaHJlZiIse09tOjUsY29uZGl0aW9uczpuZXcgTWFwKFtbInJlbCIsbmV3IFNldCgiYWx0ZXJuYXRlIGF1dGhvciBib29rbWFyayBjYW5vbmljYWwgY2l0ZSBoZWxwIGljb24gbGljZW5zZSBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlIi5zcGxpdCgiICIpKV1dKX1dXSldLFsiU09VUkNFIixuZXcgTWFwKFtbInNyYyIse09tOjV9XSxbInNyY3NldCIse09tOjZ9XV0pXSxbIklNRyIsbmV3IE1hcChbWyJzcmMiLHtPbTo1fV0sWyJzcmNzZXQiLHtPbTo2fV1dKV0sWyJWSURFTyIsbmV3IE1hcChbWyJzcmMiLHtPbTo1fV1dKV0sWyJBVURJTyIsbmV3IE1hcChbWyJzcmMiLHtPbTo1fV1dKV1dKSxuZXcgU2V0KCJ0aXRsZSBhcmlhLWF0b21pYyBhcmlhLWF1dG9jb21wbGV0ZSBhcmlhLWJ1c3kgYXJpYS1jaGVja2VkIGFyaWEtY3VycmVudCBhcmlhLWRpc2FibGVkIGFyaWEtZHJvcGVmZmVjdCBhcmlhLWV4cGFuZGVkIGFyaWEtaGFzcG9wdXAgYXJpYS1oaWRkZW4gYXJpYS1pbnZhbGlkIGFyaWEtbGFiZWwgYXJpYS1sZXZlbCBhcmlhLWxpdmUgYXJpYS1tdWx0aWxpbmUgYXJpYS1tdWx0aXNlbGVjdGFibGUgYXJpYS1vcmllbnRhdGlvbiBhcmlhLXBvc2luc2V0IGFyaWEtcHJlc3NlZCBhcmlhLXJlYWRvbmx5IGFyaWEtcmVsZXZhbnQgYXJpYS1yZXF1aXJlZCBhcmlhLXNlbGVjdGVkIGFyaWEtc2V0c2l6ZSBhcmlhLXNvcnQgYXJpYS12YWx1ZW1heCBhcmlhLXZhbHVlbWluIGFyaWEtdmFsdWVub3cgYXJpYS12YWx1ZXRleHQgYWx0IGFsaWduIGF1dG9jYXBpdGFsaXplIGF1dG9jb21wbGV0ZSBhdXRvY29ycmVjdCBhdXRvZm9jdXMgYXV0b3BsYXkgYmdjb2xvciBib3JkZXIgY2VsbHBhZGRpbmcgY2VsbHNwYWNpbmcgY2hlY2tlZCBjaXRlIGNvbG9yIGNvbHMgY29sc3BhbiBjb250cm9scyBjb250cm9sc2xpc3QgY29vcmRzIGNyb3Nzb3JpZ2luIGRhdGV0aW1lIGRpc2FibGVkIGRvd25sb2FkIGRyYWdnYWJsZSBlbmN0eXBlIGZhY2UgZm9ybWVuY3R5cGUgZnJhbWVib3JkZXIgaGVpZ2h0IGhyZWZsYW5nIGhpZGRlbiBpbmVydCBpc21hcCBsYWJlbCBsYW5nIGxvb3AgbWF4IG1heGxlbmd0aCBtZWRpYSBtaW5sZW5ndGggbWluIG11bHRpcGxlIG11dGVkIG5vbmNlIG9wZW4gcGxheXNpbmxpbmUgcGxhY2Vob2xkZXIgcHJlbG9hZCByZWwgcmVxdWlyZWQgcmV2ZXJzZWQgcm9sZSByb3dzIHJvd3NwYW4gc2VsZWN0ZWQgc2hhcGUgc2l6ZSBzaXplcyBzbG90IHNwYW4gc3BlbGxjaGVjayBzdGFydCBzdGVwIHN1bW1hcnkgdHJhbnNsYXRlIHR5cGUgdXNlbWFwIHZhbGlnbiB2YWx1ZSB3aWR0aCB3cmFwIGl0ZW1zY29wZSBpdGVtdHlwZSBpdGVtaWQgaXRlbXByb3AgaXRlbXJlZiIuc3BsaXQoIiAiKSksCm5ldyBNYXAoW1siZGlyIix7T206Myxjb25kaXRpb25zOm5ldyBNYXAoW1siZGlyIixuZXcgU2V0KFsiYXV0byIsImx0ciIsInJ0bCJdKV1dKX1dLFsiYXN5bmMiLHtPbTozLGNvbmRpdGlvbnM6bmV3IE1hcChbWyJhc3luYyIsbmV3IFNldChbImFzeW5jIl0pXV0pfV0sWyJsb2FkaW5nIix7T206Myxjb25kaXRpb25zOm5ldyBNYXAoW1sibG9hZGluZyIsbmV3IFNldChbImVhZ2VyIiwibGF6eSJdKV1dKX1dLFsicG9zdGVyIix7T206NX1dLFsidGFyZ2V0Iix7T206Myxjb25kaXRpb25zOm5ldyBNYXAoW1sidGFyZ2V0IixuZXcgU2V0KFsiX3NlbGYiLCJfYmxhbmsiXSldXSl9XV0pKTtfLlFnYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkLGUpe3RoaXMuc2g9YTt0aGlzLndoPWI7dGhpcy50aD1jO3RoaXMucWg9ZDt0aGlzLnJoPWV9c2FuaXRpemVBc3NlcnRVbmNoYW5nZWQoYSl7cmV0dXJuIF8uSWoodGhpcyxhKX1jcmVhdGVUZXh0Tm9kZShhKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYSl9fTtfLk9yPW5ldyBfLlFnYShfLlBnYSk7dmFyIFJnYT1jbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhLDUwMCl9fTt2YXIgTmo9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSw1MDApfX07dmFyIE1qPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfWdldE5hbWUoKXtyZXR1cm4gXy5IKHRoaXMsMSl9c2V0T3B0aW9ucyhhKXtyZXR1cm4gXy5FZyh0aGlzLE5qLDMsYSl9fTt2YXIgVmFhPV8uYWooY2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9Z2V0TmFtZSgpe3JldHVybiBfLkgodGhpcywxKX1zZXRWYWx1ZShhLGIpe3JldHVybiBfLiRmKHRoaXMsMixNaixhLGIpfXNldE9wdGlvbnMoYSl7cmV0dXJuIF8uRWcodGhpcyxSZ2EsMyxhKX1yaCgpe3JldHVybiBfLlBnKHRoaXMsNil9T2woYSl7cmV0dXJuIF8ua2godGhpcyw2LGEpfX0pO3ZhciBVYWE9U3ltYm9sKCk7dmFyIHdhYT1fLlhpKDk5OCxOaixjbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19KTt2YXIgTGo9U3ltYm9sKCksWWFhPVN5bWJvbCgpLFBqPVN5bWJvbCgpO18uWGouQW09ImQiO18uWWouQW09ImYiO18uZGsuQW09ImkiO18uaGsuQW09ImoiO18uYmsuQW09InUiO18uamsuQW09InYiO18uWmouQW09ImIiO18uZ2suQW09ImUiO18uV2ouQW09InMiO18uYWsuQW09IkIiO2tpLkFtPSJtIjtfLlVqLkFtPSJtIjtfLmNrLkFtPSJ4IjtfLmtrLkFtPSJ5IjtfLmVrLkFtPSJnIjtrYmEuQW09ImgiO18uZmsuQW09Im4iO18uaWsuQW09Im8iO3ZhciBpYmE9UmVnRXhwKCJbKy9dIiwiZyIpLGpiYT1SZWdFeHAoIlsuPV0rJCIpLGdiYT1SZWdFeHAoIihcXCopIiwiZyIpLGhiYT1SZWdFeHAoIighKSIsImciKSxmYmE9UmVnRXhwKCJeWy1BLVphLXowLTlfLiF+KigpIF0qJCIpO3ZhciBlYmE9UmVnRXhwKCInIiwiZyIpO18uUHI9dHlwZW9mIEFzeW5jQ29udGV4dCE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgQXN5bmNDb250ZXh0LlNuYXBzaG90PT09ImZ1bmN0aW9uIj9hPT5hJiZBc3luY0NvbnRleHQuU25hcHNob3Qud3JhcChhKTphPT5hO3ZhciBjY2E9bmV3IFNldChbIlNBUElTSURIQVNIIiwiQVBJU0lESEFTSCJdKTtfLlJrPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSxiLGM9e30pe3N1cGVyKGIpO3RoaXMuY29kZT1hO3RoaXMubWV0YWRhdGE9Yzt0aGlzLm5hbWU9IlJwY0Vycm9yIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9dG9TdHJpbmcoKXt2YXIgYT1gUnBjRXJyb3IoJHtfLmxrKHRoaXMuY29kZSl8fFN0cmluZyh0aGlzLmNvZGUpfSlgO3RoaXMubWVzc2FnZSYmKGErPSI6ICIrdGhpcy5tZXNzYWdlKTtyZXR1cm4gYX19O18ubWsucHJvdG90eXBlLkxoPSExO18ubWsucHJvdG90eXBlLnpoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTGh9O18ubWsucHJvdG90eXBlLmRpc3Bvc2U9ZnVuY3Rpb24oKXt0aGlzLkxofHwodGhpcy5MaD0hMCx0aGlzLkJrKCkpfTtfLm1rLnByb3RvdHlwZVtfLm1hKFN5bWJvbCwiZGlzcG9zZSIpXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtfLm1rLnByb3RvdHlwZS5Caz1mdW5jdGlvbigpe2lmKHRoaXMuSmgpZm9yKDt0aGlzLkpoLmxlbmd0aDspdGhpcy5KaC5zaGlmdCgpKCl9O18ubmsucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMucmg9ITB9O18ubmsucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwfTtfLnFiKF8ub2ssXy5uayk7Cl8ub2sucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLnR5cGU9YS50eXBlLGQ9YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg/YS5jaGFuZ2VkVG91Y2hlc1swXTpudWxsO3RoaXMudGFyZ2V0PWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7dGhpcy5jdXJyZW50VGFyZ2V0PWI7Yj1hLnJlbGF0ZWRUYXJnZXQ7Ynx8KGM9PSJtb3VzZW92ZXIiP2I9YS5mcm9tRWxlbWVudDpjPT0ibW91c2VvdXQiJiYoYj1hLnRvRWxlbWVudCkpO3RoaXMucmVsYXRlZFRhcmdldD1iO2Q/KHRoaXMuY2xpZW50WD1kLmNsaWVudFghPT12b2lkIDA/ZC5jbGllbnRYOmQucGFnZVgsdGhpcy5jbGllbnRZPWQuY2xpZW50WSE9PXZvaWQgMD9kLmNsaWVudFk6ZC5wYWdlWSx0aGlzLnNjcmVlblg9ZC5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1kLnNjcmVlbll8fDApOih0aGlzLm9mZnNldFg9Xy5ucnx8YS5vZmZzZXRYIT09dm9pZCAwP2Eub2Zmc2V0WDphLmxheWVyWCwKdGhpcy5vZmZzZXRZPV8ubnJ8fGEub2Zmc2V0WSE9PXZvaWQgMD9hLm9mZnNldFk6YS5sYXllclksdGhpcy5jbGllbnRYPWEuY2xpZW50WCE9PXZvaWQgMD9hLmNsaWVudFg6YS5wYWdlWCx0aGlzLmNsaWVudFk9YS5jbGllbnRZIT09dm9pZCAwP2EuY2xpZW50WTphLnBhZ2VZLHRoaXMuc2NyZWVuWD1hLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWEuc2NyZWVuWXx8MCk7dGhpcy5idXR0b249YS5idXR0b247dGhpcy5rZXlDb2RlPWEua2V5Q29kZXx8MDt0aGlzLmtleT1hLmtleXx8IiI7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwoYz09ImtleXByZXNzIj9hLmtleUNvZGU6MCk7dGhpcy5jdHJsS2V5PWEuY3RybEtleTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLnNoaWZ0S2V5PWEuc2hpZnRLZXk7dGhpcy5tZXRhS2V5PWEubWV0YUtleTt0aGlzLnBvaW50ZXJJZD1hLnBvaW50ZXJJZHx8MDt0aGlzLnBvaW50ZXJUeXBlPWEucG9pbnRlclR5cGU7dGhpcy5zdGF0ZT1hLnN0YXRlOwp0aGlzLnRpbWVTdGFtcD1hLnRpbWVTdGFtcDt0aGlzLnFoPWE7YS5kZWZhdWx0UHJldmVudGVkJiZfLm9rLmlyLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyl9O18ub2sucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe18ub2suaXIuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyk7dGhpcy5xaC5zdG9wUHJvcGFnYXRpb24/dGhpcy5xaC5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLnFoLmNhbmNlbEJ1YmJsZT0hMH07Xy5vay5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oKXtfLm9rLmlyLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyk7dmFyIGE9dGhpcy5xaDthLnByZXZlbnREZWZhdWx0P2EucHJldmVudERlZmF1bHQoKTphLnJldHVyblZhbHVlPSExfTt2YXIgbmJhPSJjbG9zdXJlX2xpc3RlbmFibGVfIisoTWF0aC5yYW5kb20oKSoxRTZ8MCk7dmFyIG9iYT0wO3JrLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1hLnRvU3RyaW5nKCk7YT10aGlzLmFpW2ZdO2F8fChhPXRoaXMuYWlbZl09W10sdGhpcy5xaCsrKTt2YXIgZz10ayhhLGIsZCxlKTtnPi0xPyhiPWFbZ10sY3x8KGIuakE9ITEpKTooYj1uZXcgcGJhKGIsdGhpcy5zcmMsZiwhIWQsZSksYi5qQT1jLGEucHVzaChiKSk7cmV0dXJuIGJ9O3JrLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSxiLGMsZCl7YT1hLnRvU3RyaW5nKCk7aWYoIShhIGluIHRoaXMuYWkpKXJldHVybiExO3ZhciBlPXRoaXMuYWlbYV07Yj10ayhlLGIsYyxkKTtyZXR1cm4gYj4tMT8ocWsoZVtiXSksXy54YyhlLGIpLGUubGVuZ3RoPT0wJiYoZGVsZXRlIHRoaXMuYWlbYV0sdGhpcy5xaC0tKSwhMCk6ITF9O3ZhciB6az0iY2xvc3VyZV9sbV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKSxDaz17fSx1YmE9MCxEaz0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApO18ucWIoXy5HayxfLm1rKTtfLkdrLnByb3RvdHlwZVtuYmFdPSEwO18uR2sucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy52ayh0aGlzLGEsYixjLGQpfTtfLkdrLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjLGQpe3diYSh0aGlzLGEsYixjLGQpfTsKXy5Hay5wcm90b3R5cGUuZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLndrO2lmKGIpe3ZhciBjPVtdO2Zvcih2YXIgZD0xO2I7Yj1iLndrKWMucHVzaChiKSwrK2R9Yj10aGlzLnp2O2Q9YS50eXBlfHxhO2lmKHR5cGVvZiBhPT09InN0cmluZyIpYT1uZXcgXy5uayhhLGIpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIF8ubmspYS50YXJnZXQ9YS50YXJnZXR8fGI7ZWxzZXt2YXIgZT1hO2E9bmV3IF8ubmsoZCxiKTtfLmxqKGEsZSl9ZT0hMDt2YXIgZjtpZihjKWZvcihmPWMubGVuZ3RoLTE7IWEucmgmJmY+PTA7Zi0tKXt2YXIgZz1hLmN1cnJlbnRUYXJnZXQ9Y1tmXTtlPUhrKGcsZCwhMCxhKSYmZX1hLnJofHwoZz1hLmN1cnJlbnRUYXJnZXQ9YixlPUhrKGcsZCwhMCxhKSYmZSxhLnJofHwoZT1IayhnLGQsITEsYSkmJmUpKTtpZihjKWZvcihmPTA7IWEucmgmJmY8Yy5sZW5ndGg7ZisrKWc9YS5jdXJyZW50VGFyZ2V0PWNbZl0sZT1IayhnLGQsITEsYSkmJmU7cmV0dXJuIGV9OwpfLkdrLnByb3RvdHlwZS5Caz1mdW5jdGlvbigpe18uR2suaXIuQmsuY2FsbCh0aGlzKTt0aGlzLlNwJiZfLnFiYSh0aGlzLlNwKTt0aGlzLndrPW51bGx9O3ZhciBTZ2E7Xy5xYihKayx6YmEpO0prLnByb3RvdHlwZS5xaD1mdW5jdGlvbigpe3JldHVybiBuZXcgWE1MSHR0cFJlcXVlc3R9O1NnYT1uZXcgSms7Xy5xYihfLktrLF8uR2spO3ZhciBEYmE9L15odHRwcz8kL2ksVGdhPVsiUE9TVCIsIlBVVCJdO18uYWE9Xy5Lay5wcm90b3R5cGU7Xy5hYS5JRz1fLmhhKDYpOwpfLmFhLnNlbmQ9ZnVuY3Rpb24oYSxiLGMsZCl7aWYodGhpcy5xaCl0aHJvdyBFcnJvcigiW2dvb2cubmV0LlhocklvXSBPYmplY3QgaXMgYWN0aXZlIHdpdGggYW5vdGhlciByZXF1ZXN0PSIrdGhpcy5BaCsiOyBuZXdVcmk9IithKTtiPWI/Yi50b1VwcGVyQ2FzZSgpOiJHRVQiO3RoaXMuQWg9YTt0aGlzLnhoPSIiO3RoaXMuc2g9MDt0aGlzLkZoPSExO3RoaXMucmg9ITA7dGhpcy5xaD10aGlzLkloP3RoaXMuSWgucWgoKTpTZ2EucWgoKTt0aGlzLnFoLm9ucmVhZHlzdGF0ZWNoYW5nZT0oMCxfLlByKSgoMCxfLmliKSh0aGlzLllJLHRoaXMpKTt0cnl7dGhpcy5nZXRTdGF0dXMoKSx0aGlzLkdoPSEwLHRoaXMucWgub3BlbihiLFN0cmluZyhhKSwhMCksdGhpcy5HaD0hMX1jYXRjaChmKXt0aGlzLmdldFN0YXR1cygpO0JiYSh0aGlzLGYpO3JldHVybn1hPWN8fCIiO2M9bmV3IE1hcCh0aGlzLmhlYWRlcnMpO2lmKGQpaWYoT2JqZWN0LmdldFByb3RvdHlwZU9mKGQpPT09T2JqZWN0LnByb3RvdHlwZSlmb3IodmFyIGUgaW4gZCljLnNldChlLApkW2VdKTtlbHNlIGlmKHR5cGVvZiBkLmtleXM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgZC5nZXQ9PT0iZnVuY3Rpb24iKWZvcihsZXQgZiBvZiBkLmtleXMoKSljLnNldChmLGQuZ2V0KGYpKTtlbHNlIHRocm93IEVycm9yKCJVbmtub3duIGlucHV0IHR5cGUgZm9yIG9wdF9oZWFkZXJzOiAiK1N0cmluZyhkKSk7ZD1BcnJheS5mcm9tKGMua2V5cygpKS5maW5kKGY9PiJjb250ZW50LXR5cGUiPT1mLnRvTG93ZXJDYXNlKCkpO2U9Xy5VYS5Gb3JtRGF0YSYmYSBpbnN0YW5jZW9mIF8uVWEuRm9ybURhdGE7IV8udmMoVGdhLGIpfHxkfHxlfHxjLnNldCgiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTgiKTtmb3IobGV0IFtmLGddb2YgYyl0aGlzLnFoLnNldFJlcXVlc3RIZWFkZXIoZixnKTt0aGlzLkRoJiYodGhpcy5xaC5yZXNwb25zZVR5cGU9dGhpcy5EaCk7IndpdGhDcmVkZW50aWFscyJpbiB0aGlzLnFoJiZ0aGlzLnFoLndpdGhDcmVkZW50aWFscyE9PQp0aGlzLnloJiYodGhpcy5xaC53aXRoQ3JlZGVudGlhbHM9dGhpcy55aCk7dHJ5e3RoaXMudGgmJihjbGVhclRpbWVvdXQodGhpcy50aCksdGhpcy50aD1udWxsKSx0aGlzLkJoPjAmJih0aGlzLmdldFN0YXR1cygpLHRoaXMudGg9c2V0VGltZW91dCh0aGlzLnR2LmJpbmQodGhpcyksdGhpcy5CaCkpLHRoaXMuZ2V0U3RhdHVzKCksdGhpcy5DaD0hMCx0aGlzLnFoLnNlbmQoYSksdGhpcy5DaD0hMX1jYXRjaChmKXt0aGlzLmdldFN0YXR1cygpLEJiYSh0aGlzLGYpfX07Xy5hYS50dj1mdW5jdGlvbigpe3R5cGVvZiBNayE9InVuZGVmaW5lZCImJnRoaXMucWgmJih0aGlzLnhoPSJUaW1lZCBvdXQgYWZ0ZXIgIit0aGlzLkJoKyJtcywgYWJvcnRpbmciLHRoaXMuc2g9OCx0aGlzLmdldFN0YXR1cygpLHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTsKXy5hYS5hYm9ydD1mdW5jdGlvbihhKXt0aGlzLnFoJiZ0aGlzLnJoJiYodGhpcy5nZXRTdGF0dXMoKSx0aGlzLnJoPSExLHRoaXMud2g9ITAsdGhpcy5xaC5hYm9ydCgpLHRoaXMud2g9ITEsdGhpcy5zaD1hfHw3LHRoaXMuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSx0aGlzLmRpc3BhdGNoRXZlbnQoImFib3J0IiksTGsodGhpcykpfTtfLmFhLkJrPWZ1bmN0aW9uKCl7dGhpcy5xaCYmKHRoaXMucmgmJih0aGlzLnJoPSExLHRoaXMud2g9ITAsdGhpcy5xaC5hYm9ydCgpLHRoaXMud2g9ITEpLExrKHRoaXMsITApKTtfLktrLmlyLkJrLmNhbGwodGhpcyl9O18uYWEuWUk9ZnVuY3Rpb24oKXt0aGlzLnpoKCl8fCh0aGlzLkdofHx0aGlzLkNofHx0aGlzLndoP0NiYSh0aGlzKTp0aGlzLlFPKCkpfTtfLmFhLlFPPWZ1bmN0aW9uKCl7Q2JhKHRoaXMpfTtfLmFhLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLnFofTsKXy5hYS5NbT1mdW5jdGlvbigpe3JldHVybiBfLk5rKHRoaXMpPT00fTtfLmFhLmdldFN0YXR1cz1mdW5jdGlvbigpe3RyeXtyZXR1cm4gXy5Oayh0aGlzKT4yP3RoaXMucWguc3RhdHVzOi0xfWNhdGNoKGEpe3JldHVybi0xfX07Xy5hYS5Scj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gdGhpcy5xaD90aGlzLnFoLnJlc3BvbnNlVGV4dDoiIn1jYXRjaChhKXtyZXR1cm4iIn19O18uYWEuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWgmJl8uTmsodGhpcyk+PTI/dGhpcy5xaC5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiI6IiJ9O3ZhciBHYmE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMpe3RoaXMuWEU9YTt0aGlzLk9JPWI7dGhpcy5tZXRhZGF0YT1jfWdldE1ldGFkYXRhKCl7cmV0dXJuIHRoaXMubWV0YWRhdGF9fTt2YXIgSWJhPWNsYXNze2NvbnN0cnVjdG9yKGEsYj17fSl7dGhpcy5wUD1hO3RoaXMubWV0YWRhdGE9Yjt0aGlzLnN0YXR1cz1udWxsfWdldE1ldGFkYXRhKCl7cmV0dXJuIHRoaXMubWV0YWRhdGF9Z2V0U3RhdHVzKCl7cmV0dXJuIHRoaXMuc3RhdHVzfX07Xy5Rcj1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkKXt0aGlzLm5hbWU9YTt0aGlzLkF3PWI7dGhpcy5yaD1jO3RoaXMucWg9ZH1nZXROYW1lKCl7cmV0dXJuIHRoaXMubmFtZX19O3ZhciBmY2E9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLnJoPVtdO3RoaXMudGg9W107dGhpcy53aD1bXTt0aGlzLnNoPVtdO3RoaXMucWg9W107dGhpcy54aD1hLnpPO3RoaXMuemg9Yjt0aGlzLlRpPWEuVGk7dGhpcy54aCYmTWJhKHRoaXMpfXJwKGEsYil7YT09PSJkYXRhIj90aGlzLnJoLnB1c2goYik6YT09PSJtZXRhZGF0YSI/dGhpcy50aC5wdXNoKGIpOmE9PT0ic3RhdHVzIj90aGlzLndoLnB1c2goYik6YT09PSJlbmQiP3RoaXMuc2gucHVzaChiKTphPT09ImVycm9yIiYmdGhpcy5xaC5wdXNoKGIpfXJlbW92ZUxpc3RlbmVyKGEsYil7YT09PSJkYXRhIj9Wayh0aGlzLnJoLGIpOmE9PT0ibWV0YWRhdGEiP1ZrKHRoaXMudGgsYik6YT09PSJzdGF0dXMiP1ZrKHRoaXMud2gsYik6YT09PSJlbmQiP1ZrKHRoaXMuc2gsYik6YT09PSJlcnJvciImJlZrKHRoaXMucWgsYik7cmV0dXJuIHRoaXN9Y2FuY2VsKCl7dGhpcy5UaS5hYm9ydCgpfX0sUGJhPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigpOwp0aGlzLm5hbWU9IkFzeW5jU3RhY2siO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O18ucWIoV2ssemJhKTtXay5wcm90b3R5cGUucWg9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFhrKHRoaXMuc2gsdGhpcy5yaCl9O18ucWIoWGssXy5Hayk7Xy5hYT1Yay5wcm90b3R5cGU7Xy5hYS5vcGVuPWZ1bmN0aW9uKGEsYil7aWYodGhpcy5yZWFkeVN0YXRlIT0wKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigiRXJyb3IgcmVvcGVuaW5nIGEgY29ubmVjdGlvbiIpO3RoaXMuRGg9YTt0aGlzLnRoPWI7dGhpcy5yZWFkeVN0YXRlPTE7WWsodGhpcyl9OwpfLmFhLnNlbmQ9ZnVuY3Rpb24oYSl7aWYodGhpcy5yZWFkeVN0YXRlIT0xKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigibmVlZCB0byBjYWxsIG9wZW4oKSBmaXJzdC4gIik7aWYodGhpcy5CaC5zaWduYWwuYWJvcnRlZCl0aHJvdyB0aGlzLmFib3J0KCksRXJyb3IoIlJlcXVlc3Qgd2FzIGFib3J0ZWQuIik7dGhpcy5xaD0hMDt2YXIgYj17aGVhZGVyczp0aGlzLkNoLG1ldGhvZDp0aGlzLkRoLGNyZWRlbnRpYWxzOnRoaXMueGgsY2FjaGU6dm9pZCAwLHNpZ25hbDp0aGlzLkJoLnNpZ25hbH07YSYmKGIuYm9keT1hKTsodGhpcy5GaHx8Xy5VYSkuZmV0Y2gobmV3IFJlcXVlc3QodGhpcy50aCxiKSkudGhlbih0aGlzLnFOLmJpbmQodGhpcyksdGhpcy5WQS5iaW5kKHRoaXMpKX07Cl8uYWEuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PSIiO3RoaXMuQ2g9bmV3IEhlYWRlcnM7dGhpcy5zdGF0dXM9MDt0aGlzLkJoLmFib3J0KCJSZXF1ZXN0IHdhcyBhYm9ydGVkLiIpO3RoaXMuc2gmJnRoaXMuc2guY2FuY2VsKCJSZXF1ZXN0IHdhcyBhYm9ydGVkLiIpLmNhdGNoKCgpPT57fSk7dGhpcy5yZWFkeVN0YXRlPj0xJiZ0aGlzLnFoJiZ0aGlzLnJlYWR5U3RhdGUhPTQmJih0aGlzLnFoPSExLFprKHRoaXMpKTt0aGlzLnJlYWR5U3RhdGU9MH07Cl8uYWEucU49ZnVuY3Rpb24oYSl7aWYodGhpcy5xaCYmKHRoaXMud2g9YSx0aGlzLnJofHwodGhpcy5zdGF0dXM9dGhpcy53aC5zdGF0dXMsdGhpcy5zdGF0dXNUZXh0PXRoaXMud2guc3RhdHVzVGV4dCx0aGlzLnJoPWEuaGVhZGVycyx0aGlzLnJlYWR5U3RhdGU9MixZayh0aGlzKSksdGhpcy5xaCYmKHRoaXMucmVhZHlTdGF0ZT0zLFlrKHRoaXMpLHRoaXMucWgpKSlpZih0aGlzLnJlc3BvbnNlVHlwZT09PSJhcnJheWJ1ZmZlciIpYS5hcnJheUJ1ZmZlcigpLnRoZW4odGhpcy5vTi5iaW5kKHRoaXMpLHRoaXMuVkEuYmluZCh0aGlzKSk7ZWxzZSBpZih0eXBlb2YgXy5VYS5SZWFkYWJsZVN0cmVhbSE9PSJ1bmRlZmluZWQiJiYiYm9keSJpbiBhKXt0aGlzLnNoPWEuYm9keS5nZXRSZWFkZXIoKTtpZih0aGlzLnloKXtpZih0aGlzLnJlc3BvbnNlVHlwZSl0aHJvdyBFcnJvcigncmVzcG9uc2VUeXBlIG11c3QgYmUgZW1wdHkgZm9yICJzdHJlYW1CaW5hcnlDaHVua3MiIG1vZGUgcmVzcG9uc2VzLicpOwp0aGlzLnJlc3BvbnNlPVtdfWVsc2UgdGhpcy5yZXNwb25zZT10aGlzLnJlc3BvbnNlVGV4dD0iIix0aGlzLkFoPW5ldyBUZXh0RGVjb2RlcjtSYmEodGhpcyl9ZWxzZSBhLnRleHQoKS50aGVuKHRoaXMucE4uYmluZCh0aGlzKSx0aGlzLlZBLmJpbmQodGhpcykpfTtfLmFhLm5OPWZ1bmN0aW9uKGEpe2lmKHRoaXMucWgpe2lmKHRoaXMueWgmJmEudmFsdWUpdGhpcy5yZXNwb25zZS5wdXNoKGEudmFsdWUpO2Vsc2UgaWYoIXRoaXMueWgpe3ZhciBiPWEudmFsdWU/YS52YWx1ZTpuZXcgVWludDhBcnJheSgwKTtpZihiPXRoaXMuQWguZGVjb2RlKGIse3N0cmVhbTohYS5kb25lfSkpdGhpcy5yZXNwb25zZT10aGlzLnJlc3BvbnNlVGV4dCs9Yn1hLmRvbmU/WmsodGhpcyk6WWsodGhpcyk7dGhpcy5yZWFkeVN0YXRlPT0zJiZSYmEodGhpcyl9fTtfLmFhLnBOPWZ1bmN0aW9uKGEpe3RoaXMucWgmJih0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PWEsWmsodGhpcykpfTsKXy5hYS5vTj1mdW5jdGlvbihhKXt0aGlzLnFoJiYodGhpcy5yZXNwb25zZT1hLFprKHRoaXMpKX07Xy5hYS5WQT1mdW5jdGlvbigpe3RoaXMucWgmJlprKHRoaXMpfTtfLmFhLnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkNoLmFwcGVuZChhLGIpfTtfLmFhLmdldFJlc3BvbnNlSGVhZGVyPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnJoP3RoaXMucmguZ2V0KGEudG9Mb3dlckNhc2UoKSl8fCIiOiIifTtfLmFhLmdldEFsbFJlc3BvbnNlSGVhZGVycz1mdW5jdGlvbigpe2lmKCF0aGlzLnJoKXJldHVybiIiO2Zvcih2YXIgYT1bXSxiPXRoaXMucmguZW50cmllcygpLGM9Yi5uZXh0KCk7IWMuZG9uZTspYz1jLnZhbHVlLGEucHVzaChjWzBdKyI6ICIrY1sxXSksYz1iLm5leHQoKTtyZXR1cm4gYS5qb2luKCJcclxuIil9OwpPYmplY3QuZGVmaW5lUHJvcGVydHkoWGsucHJvdG90eXBlLCJ3aXRoQ3JlZGVudGlhbHMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy54aD09PSJpbmNsdWRlIn0sc2V0OmZ1bmN0aW9uKGEpe3RoaXMueGg9YT8iaW5jbHVkZSI6InNhbWUtb3JpZ2luIn19KTtfLnFiKF8uJGssXy5tayk7dmFyIFNiYT1bXTtfLiRrLnByb3RvdHlwZS5Caz1mdW5jdGlvbigpe18uJGsuaXIuQmsuY2FsbCh0aGlzKTtfLmJsKHRoaXMpfTtfLiRrLnByb3RvdHlwZS5oYW5kbGVFdmVudD1mdW5jdGlvbigpe3Rocm93IEVycm9yKCJFdmVudEhhbmRsZXIuaGFuZGxlRXZlbnQgbm90IGltcGxlbWVudGVkIik7fTt2YXIgVWJhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaD0hMDt0aGlzLnJoPTA7dGhpcy5xaD0iIn19O2NsLnByb3RvdHlwZS5CaD1mdW5jdGlvbigpe3JldHVybiEwfTsKY2wucHJvdG90eXBlLnNoPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoayl7ayYxMjgmJmRsKGYsZyxoLCJpbnZhbGlkIHRhZyIpOyhrJjcpIT0yJiZkbChmLGcsaCwiaW52YWxpZCB3aXJlIHR5cGUiKTtmLnRoPWs+Pj4zO2YudGghPTEmJmYudGghPTImJmYudGghPTE1JiZkbChmLGcsaCwidW5leHBlY3RlZCB0YWciKTtmLnJoPTE7Zi5xaD0wO2Yud2g9MH1mdW5jdGlvbiBjKGspe2Yud2grKztmLndoPT01JiZrJjI0MCYmZGwoZixnLGgsIm1lc3NhZ2UgbGVuZ3RoIHRvbyBsb25nIik7Zi5xaHw9KGsmMTI3KTw8KGYud2gtMSkqNztrJjEyOHx8KGYucmg9MixmLnloPTAsdHlwZW9mIFVpbnQ4QXJyYXkhPT0idW5kZWZpbmVkIj9mLnhoPW5ldyBVaW50OEFycmF5KGYucWgpOmYueGg9QXJyYXkoZi5xaCksZi5xaD09MCYmZSgpKX1mdW5jdGlvbiBkKGspe2YueGhbZi55aCsrXT1rO2YueWg9PWYucWgmJmUoKX1mdW5jdGlvbiBlKCl7aWYoZi50aDwxNSl7bGV0IGs9e307a1tmLnRoXT1mLnhoOwpmLnpoLnB1c2goayl9Zi5yaD0wfWZvcih2YXIgZj10aGlzLGc9YSBpbnN0YW5jZW9mIEFycmF5P2E6bmV3IFVpbnQ4QXJyYXkoYSksaD0wO2g8Zy5sZW5ndGg7KXtzd2l0Y2goZi5yaCl7Y2FzZSAzOmRsKGYsZyxoLCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTticmVhaztjYXNlIDA6YihnW2hdKTticmVhaztjYXNlIDE6YyhnW2hdKTticmVhaztjYXNlIDI6ZChnW2hdKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJ1bmV4cGVjdGVkIHBhcnNlciBzdGF0ZTogIitmLnJoKTt9Zi5DaCsrO2grK31hPWYuemg7Zi56aD1bXTtyZXR1cm4gYS5sZW5ndGg+MD9hOm51bGx9O2VsLnByb3RvdHlwZS5CaD1mdW5jdGlvbigpe3JldHVybiExfTtlbC5wcm90b3R5cGUuc2g9ZnVuY3Rpb24oYSl7dGhpcy5xaCE9PW51bGwmJlZiYSh0aGlzLGEsInN0cmVhbSBhbHJlYWR5IGJyb2tlbiIpO3ZhciBiPW51bGw7dHJ5e3t2YXIgYz10aGlzLnRoO2Muc2h8fFRiYShjLGEsInN0cmVhbSBhbHJlYWR5IGJyb2tlbiIpO2MucWgrPWE7bGV0IGY9TWF0aC5mbG9vcihjLnFoLmxlbmd0aC80KTtpZihmPT0wKXZhciBkPW51bGw7ZWxzZXt0cnl7dmFyIGU9Xy5XYyhjLnFoLnNsaWNlKDAsZio0KSl9Y2F0Y2goZyl7VGJhKGMsYy5xaCxnLm1lc3NhZ2UpfWMucmgrPWYqNDtjLnFoPWMucWguc2xpY2UoZio0KTtkPWV9fWI9ZD09PW51bGw/bnVsbDp0aGlzLndoLnNoKGQpfWNhdGNoKGYpe1ZiYSh0aGlzLGEsZi5tZXNzYWdlKX10aGlzLnJoKz1hLmxlbmd0aDtyZXR1cm4gYn07Z2wucHJvdG90eXBlLmRvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy55aD09PTJ9O2dsLnByb3RvdHlwZS5CaD1mdW5jdGlvbigpe3JldHVybiExfTsKZ2wucHJvdG90eXBlLnNoPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtmb3IoO3E8YS5sZW5ndGg7KWlmKGZsKGFbcV0pKXErKyxmLnRoKys7ZWxzZSBicmVhaztyZXR1cm4gcTxrfWZ1bmN0aW9uIGMoKXtmb3IodmFyIHg7Oyl7eD1hW3ErK107aWYoIXgpYnJlYWs7Zi50aCsrO3N3aXRjaChmLnFoKXtjYXNlIDA6eD09PSJ7Ij9mLnFoPTI6eD09PSJbIj9mLnFoPTQ6ZmwoeCl8fGhsKGYsYSxxKTtjb250aW51ZTtjYXNlIDc6Y2FzZSAyOmlmKGZsKHgpKWNvbnRpbnVlO2lmKGYucWg9PT03KWcucHVzaCg4KTtlbHNlIGlmKHg9PT0ifSIpe2UoInt9Iik7Zi5xaD1kKCk7Y29udGludWV9ZWxzZSBnLnB1c2goMyk7eD09PSciJz9mLnFoPTY6aGwoZixhLHEpO2NvbnRpbnVlO2Nhc2UgODpjYXNlIDM6aWYoZmwoeCkpY29udGludWU7eD09PSI6Ij8oZi5xaD09PTMmJihnLnB1c2goMyksZi5yaCsrKSxmLnFoPTEpOng9PT0ifSI/KGYucmgtLSxlKCksZi5xaD1kKCkpOng9PT0iLCI/KGYucWg9PT0KMyYmZy5wdXNoKDMpLGYucWg9Nyk6aGwoZixhLHEpO2NvbnRpbnVlO2Nhc2UgNDpjYXNlIDE6aWYoZmwoeCkpY29udGludWU7aWYoZi5xaD09PTQpaWYoZi5yaCsrLGYucWg9MSx4PT09Il0iKXtmLnJoLS07aWYoZi5yaD09PTApe2YucWg9NTtyZXR1cm59ZSgiW10iKTtmLnFoPWQoKTtjb250aW51ZX1lbHNlIGcucHVzaCg1KTt4PT09JyInP2YucWg9Njp4PT09InsiP2YucWg9Mjp4PT09IlsiP2YucWg9NDp4PT09InQiP2YucWg9OTp4PT09ImYiP2YucWg9MTI6eD09PSJuIj9mLnFoPTE2OnghPT0iLSImJigiMDEyMzQ1Njc4OSIuaW5kZXhPZih4KSE9PS0xP2YucWg9MjA6aGwoZixhLHEpKTtjb250aW51ZTtjYXNlIDU6aWYoeD09PSIsIilnLnB1c2goNSksZi5xaD0xLGYucmg9PT0xJiYocD1xKTtlbHNlIGlmKHg9PT0iXSIpe2YucmgtLTtpZihmLnJoPT09MClyZXR1cm47ZSgpO2YucWg9ZCgpfWVsc2UgaWYoZmwoeCkpY29udGludWU7ZWxzZSBobChmLGEscSk7Y29udGludWU7Y2FzZSA2OmxldCB6PQpxO2E6Zm9yKDs7KXtmb3IoO2YuQWg+MDspaWYoeD1hW3ErK10sZi5BaD09PTQ/Zi5BaD0wOmYuQWgrKywheClicmVhayBhO2lmKHg9PT0nIicmJiFmLnpoKXtmLnFoPWQoKTticmVha31pZih4PT09IlxcIiYmIWYuemgmJihmLnpoPSEwLHg9YVtxKytdLCF4KSlicmVhaztpZihmLnpoKWlmKGYuemg9ITEseD09PSJ1IiYmKGYuQWg9MSkseD1hW3ErK10pY29udGludWU7ZWxzZSBicmVhaztoLmxhc3RJbmRleD1xO3g9aC5leGVjKGEpO2lmKCF4KXtxPWEubGVuZ3RoKzE7YnJlYWt9cT14LmluZGV4KzE7eD1hW3guaW5kZXhdO2lmKCF4KWJyZWFrfWYudGgrPXEtejtjb250aW51ZTtjYXNlIDk6aWYoIXgpY29udGludWU7eD09PSJyIj9mLnFoPTEwOmhsKGYsYSxxKTtjb250aW51ZTtjYXNlIDEwOmlmKCF4KWNvbnRpbnVlO3g9PT0idSI/Zi5xaD0xMTpobChmLGEscSk7Y29udGludWU7Y2FzZSAxMTppZigheCljb250aW51ZTt4PT09ImUiP2YucWg9ZCgpOmhsKGYsYSxxKTtjb250aW51ZTsKY2FzZSAxMjppZigheCljb250aW51ZTt4PT09ImEiP2YucWg9MTM6aGwoZixhLHEpO2NvbnRpbnVlO2Nhc2UgMTM6aWYoIXgpY29udGludWU7eD09PSJsIj9mLnFoPTE0OmhsKGYsYSxxKTtjb250aW51ZTtjYXNlIDE0OmlmKCF4KWNvbnRpbnVlO3g9PT0icyI/Zi5xaD0xNTpobChmLGEscSk7Y29udGludWU7Y2FzZSAxNTppZigheCljb250aW51ZTt4PT09ImUiP2YucWg9ZCgpOmhsKGYsYSxxKTtjb250aW51ZTtjYXNlIDE2OmlmKCF4KWNvbnRpbnVlO3g9PT0idSI/Zi5xaD0xNzpobChmLGEscSk7Y29udGludWU7Y2FzZSAxNzppZigheCljb250aW51ZTt4PT09ImwiP2YucWg9MTg6aGwoZixhLHEpO2NvbnRpbnVlO2Nhc2UgMTg6aWYoIXgpY29udGludWU7eD09PSJsIj9mLnFoPWQoKTpobChmLGEscSk7Y29udGludWU7Y2FzZSAxOTp4PT09Ii4iP2YucWg9MjA6aGwoZixhLHEpO2NvbnRpbnVlO2Nhc2UgMjA6aWYoIjAxMjM0NTY3ODkuZUUrLSIuaW5kZXhPZih4KSE9PS0xKWNvbnRpbnVlOwplbHNlIHEtLSxmLnRoLS0sZi5xaD1kKCk7Y29udGludWU7ZGVmYXVsdDpobChmLGEscSl9fX1mdW5jdGlvbiBkKCl7dmFyIHg9Zy5wb3AoKTtyZXR1cm4geCE9bnVsbD94OjF9ZnVuY3Rpb24gZSh4KXtmLnJoPjF8fCh4fHwoeD1wPT09LTE/Zi53aCthLnN1YnN0cmluZyhtLHEpOmEuc3Vic3RyaW5nKHAscSkpLGYuRGg/Zi54aC5wdXNoKHgpOmYueGgucHVzaChKU09OLnBhcnNlKHgpKSxwPXEpfWZvcih2YXIgZj10aGlzLGc9Zi5GaCxoPWYuR2gsaz1hLmxlbmd0aCxtPTAscD0tMSxxPTA7cTxrOylzd2l0Y2goZi55aCl7Y2FzZSAzOnJldHVybiBobChmLGEscSksbnVsbDtjYXNlIDI6cmV0dXJuIGIoKSYmaGwoZixhLHEpLG51bGw7Y2FzZSAwOmlmKGIoKSl7dmFyIHU9YVtxKytdO2YudGgrKztpZih1PT09IlsiKXtmLnloPTE7bT1xO2YucWg9NDtjb250aW51ZX1lbHNlIGhsKGYsYSxxKX1yZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIGMoKSxmLnJoPT09MCYmZi5xaD09NT8oZi55aD0KMixmLndoPWEuc3Vic3RyaW5nKHEpKTpmLndoPXA9PT0tMT9mLndoK2Euc3Vic3RyaW5nKG0pOmEuc3Vic3RyaW5nKHApLGYueGgubGVuZ3RoPjA/KHU9Zi54aCxmLnhoPVtdLHUpOm51bGx9cmV0dXJuIG51bGx9O2lsLnByb3RvdHlwZS5CaD1mdW5jdGlvbigpe3JldHVybiExfTsKaWwucHJvdG90eXBlLnNoPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoayl7Zi5yaD02O2YueGg9IlRoZSBzdHJlYW0gaXMgYnJva2VuIEAiK2YucWgrIi8iK2crIi4gRXJyb3I6ICIraysiLiBXaXRoIGlucHV0OlxuIjt0aHJvdyBFcnJvcihmLnhoKTt9ZnVuY3Rpb24gYygpe2YudGg9bmV3IGdsKHtxUzohMCxqTTohMH0pfWZ1bmN0aW9uIGQoayl7aWYoaylmb3IobGV0IG09MDttPGsubGVuZ3RoO20rKyl7bGV0IHA9e307cFsxXT1rW21dO2Yud2gucHVzaChwKX19ZnVuY3Rpb24gZShrKXtpZihrKXsoZi56aHx8ay5sZW5ndGg+MSkmJmIoImV4dHJhIHN0YXR1czogIitrKTtmLnpoPSEwO2xldCBtPXt9O21bMl09a1swXTtmLndoLnB1c2gobSl9fWZvcih2YXIgZj10aGlzLGc9MDtnPGEubGVuZ3RoOyl7dmFyIGg7aWYoaD1mLnJoIT09Mil7YTp7Zm9yKDtnPGEubGVuZ3RoOyl7aWYoIWZsKGFbZ10pKXtoPSEwO2JyZWFrIGF9ZysrO2YucWgrK31oPSExfWg9IWh9aWYoaClyZXR1cm4gbnVsbDsKc3dpdGNoKGYucmgpe2Nhc2UgNjpiKCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTticmVhaztjYXNlIDA6YVtnXT09PSJbIj8oZi5yaD0xLGcrKyxmLnFoKyspOmIoInVuZXhwZWN0ZWQgaW5wdXQgdG9rZW4iKTticmVhaztjYXNlIDE6YVtnXT09PSJbIj8oZi5yaD0yLGMoKSk6YVtnXT09PSIsInx8YS5zbGljZShnLGcrNSk9PSJudWxsLCI/Zi5yaD0zOmFbZ109PT0iXSI/KGYucmg9NSxnKyssZi5xaCsrKTpiKCJ1bmV4cGVjdGVkIGlucHV0IHRva2VuIik7YnJlYWs7Y2FzZSAyOmg9Zi50aC5zaChhLnN1YnN0cmluZyhnKSk7ZChoKTtmLnRoLmRvbmUoKT8oZi5yaD0zLGg9Zi50aC53aCxmLnFoKz1hLmxlbmd0aC1nLWgubGVuZ3RoLGE9aCxnPTApOihmLnFoKz1hLmxlbmd0aC1nLGc9YS5sZW5ndGgpO2JyZWFrO2Nhc2UgMzphW2ddPT09IiwifHxhLnNsaWNlKGcsZys1KT09Im51bGwsIj8oZi5yaD00LGMoKSxmLnRoLnNoKCJbIiksZys9YVtnXT09PSIsIj8xOjUsZi5xaCsrKTphW2ddPT09CiJdIiYmKGYucmg9NSxnKyssZi5xaCsrKTticmVhaztjYXNlIDQ6aD1mLnRoLnNoKGEuc3Vic3RyaW5nKGcpKTtlKGgpO2YudGguZG9uZSgpPyhmLnJoPTUsaD1mLnRoLndoLGYucWgrPWEubGVuZ3RoLWctaC5sZW5ndGgsYT1oLGc9MCk6KGYucWgrPWEubGVuZ3RoLWcsZz1hLmxlbmd0aCk7YnJlYWs7Y2FzZSA1OmIoImV4dHJhIGlucHV0IGFmdGVyIHN0cmVhbSBlbmQiKX19cmV0dXJuIGYud2gubGVuZ3RoPjA/KGE9Zi53aCxmLndoPVtdLGEpOm51bGx9O3ZhciBkY2E9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD1hO3RoaXMucmg9bnVsbDt0aGlzLndoPXRoaXMuc2g9MDt0aGlzLkFoPSExO3RoaXMudGg9dGhpcy56aD10aGlzLnhoPW51bGw7dGhpcy55aD1uZXcgXy4kayh0aGlzKTtfLmFsKHRoaXMueWgsdGhpcy5xaCwicmVhZHlzdGF0ZWNoYW5nZSIsdGhpcy5CaCl9Z2V0U3RhdHVzKCl7cmV0dXJuIHRoaXMud2h9QmgoYSl7YT1hLnRhcmdldDt0cnl7aWYoYT09dGhpcy5xaClhOntsZXQgZj1fLk5rKHRoaXMucWgpO3ZhciBiPXRoaXMucWguc2gsYz10aGlzLnFoLmdldFN0YXR1cygpO2xldCBnPXRoaXMucWguUnIoKTthPVtdO2lmKF8uUGsodGhpcy5xaClpbnN0YW5jZW9mIEFycmF5KXtsZXQgaD1fLlBrKHRoaXMucWgpO2gubGVuZ3RoPjAmJmhbMF1pbnN0YW5jZW9mIFVpbnQ4QXJyYXkmJih0aGlzLkFoPSEwLGE9aCl9aWYoIShmPDN8fGY9PTMmJiFnJiZhLmxlbmd0aD09MCkpaWYoYz1jPT0yMDB8fGM9PTIwNixmPT00JiYoYj09Cjg/amwodGhpcyw3KTpiPT03P2psKHRoaXMsOCk6Y3x8amwodGhpcywzKSksdGhpcy5yaHx8KHRoaXMucmg9V2JhKHRoaXMucWgpLHRoaXMucmg9PW51bGwmJmpsKHRoaXMsNSkpLHRoaXMud2g+MilrbCh0aGlzKTtlbHNle2lmKGEubGVuZ3RoPnRoaXMuc2gpe2xldCBoPWEubGVuZ3RoO2I9W107dHJ5e2lmKHRoaXMucmguQmgoKSlmb3IodmFyIGQ9MDtkPGg7ZCsrKXt2YXIgZT10aGlzLnJoLnNoKEFycmF5LmZyb20oYVtkXSkpO2UmJihiPWIuY29uY2F0KGUpKX1lbHNle2U9IiI7aWYoIXRoaXMueGgpe2lmKHR5cGVvZiBUZXh0RGVjb2Rlcj09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKCJUZXh0RGVjb2RlciBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgYnJvd3Nlci4iKTt0aGlzLnhoPW5ldyBUZXh0RGVjb2Rlcn1mb3IoZD0wO2Q8aDtkKyspZSs9dGhpcy54aC5kZWNvZGUoYVtkXSx7c3RyZWFtOmY9PTQmJmQ9PWgtMX0pO2I9dGhpcy5yaC5zaChlKX1hLnNwbGljZSgwLGgpO2ImJgp0aGlzLnRoKGIpfWNhdGNoKGspe2psKHRoaXMsNSk7a2wodGhpcyk7YnJlYWsgYX19ZWxzZSBpZihnLmxlbmd0aD50aGlzLnNoKXtkPWcuc2xpY2UodGhpcy5zaCk7dGhpcy5zaD1nLmxlbmd0aDt0cnl7bGV0IGg9dGhpcy5yaC5zaChkKTtoIT1udWxsJiZ0aGlzLnRoJiZ0aGlzLnRoKGgpfWNhdGNoKGgpe2psKHRoaXMsNSk7a2wodGhpcyk7YnJlYWsgYX19Zj09ND8oZy5sZW5ndGghPTB8fHRoaXMuQWg/amwodGhpcywyKTpqbCh0aGlzLDQpLGtsKHRoaXMpKTpqbCh0aGlzLDEpfX19Y2F0Y2goZil7amwodGhpcyw2KSxrbCh0aGlzKX19fTt2YXIgZWNhPWNsYXNze2NvbnN0cnVjdG9yKGEpe2E9dGhpcy5zaD1hO3ZhciBiPSgwLF8uaWIpKHRoaXMudGgsdGhpcyk7YS50aD1iO2E9dGhpcy5zaDtiPSgwLF8uaWIpKHRoaXMud2gsdGhpcyk7YS56aD1iO3RoaXMucmg9e307dGhpcy5xaD17fX1ycChhLGIpe3ZhciBjPXRoaXMucmhbYV07Y3x8KGM9W10sdGhpcy5yaFthXT1jKTtjLnB1c2goYil9YWRkTGlzdGVuZXIoYSxiKXt0aGlzLnJwKGEsYik7cmV0dXJuIHRoaXN9cmVtb3ZlTGlzdGVuZXIoYSxiKXt2YXIgYz10aGlzLnJoW2FdO2MmJl8ueWMoYyxiKTsoYT10aGlzLnFoW2FdKSYmXy55YyhhLGIpO3JldHVybiB0aGlzfW9uY2UoYSxiKXt2YXIgYz10aGlzLnFoW2FdO2N8fChjPVtdLHRoaXMucWhbYV09Yyk7Yy5wdXNoKGIpO3JldHVybiB0aGlzfXRoKGEpe3ZhciBiPXRoaXMucmguZGF0YTtiJiZYYmEoYSxiKTsoYj10aGlzLnFoLmRhdGEpJiZYYmEoYSxiKTt0aGlzLnFoLmRhdGE9W119d2goKXtzd2l0Y2godGhpcy5zaC5nZXRTdGF0dXMoKSl7Y2FzZSAxOmxsKHRoaXMsCiJyZWFkYWJsZSIpO2JyZWFrO2Nhc2UgNTpjYXNlIDY6Y2FzZSA0OmNhc2UgNzpjYXNlIDM6bGwodGhpcywiZXJyb3IiKTticmVhaztjYXNlIDg6bGwodGhpcywiY2xvc2UiKTticmVhaztjYXNlIDI6bGwodGhpcywiZW5kIil9fX07Xy5Scj1jbGFzc3tjb25zdHJ1Y3RvcihhPXt9KXt0aGlzLnhGPWEueEZ8fFJhKCJzdXBwcmVzc0NvcnNQcmVmbGlnaHQiLGEpfHwhMTt0aGlzLndpdGhDcmVkZW50aWFscz1hLndpdGhDcmVkZW50aWFsc3x8UmEoIndpdGhDcmVkZW50aWFscyIsYSl8fCExO3RoaXMudkY9YS52Rnx8W107dGhpcy5IRj1hLkhGfHxbXTt0aGlzLlRGPWEuVEY7dGhpcy5zaD1hLldUfHwhMX10aChhLGIsYyxkLGU9e30pe3ZhciBmPWEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtZC5uYW1lLmxlbmd0aCksZz1lPy5zaWduYWw7cmV0dXJuIFliYShoPT5uZXcgUHJvbWlzZSgoayxtKT0+e2lmKGc/LmFib3J0ZWQpe2xldCB1PW5ldyBfLlJrKDEsIkFib3J0ZWQiKTt1LmNhdXNlPWcucmVhc29uO20odSl9ZWxzZXt2YXIgcD17fSxxPWJjYSh0aGlzLGgsZik7cS5ycCgiZXJyb3IiLHU9PnZvaWQgbSh1KSk7cS5ycCgibWV0YWRhdGEiLHU9PntwPXV9KTtxLnJwKCJkYXRhIix1PT57ayhKYmEodSxwKSl9KTtnJiZnLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IiwKKCk9PntxLmNhbmNlbCgpO3ZhciB1PW5ldyBfLlJrKDEsIkFib3J0ZWQiKTt1LmNhdXNlPWcucmVhc29uO20odSl9KX19KSx0aGlzLkhGKS5jYWxsKHRoaXMsXy5IYmEoZCxiLGMpKS50aGVuKGg9PmgucFApfXFoKGEsYixjLGQsZT17fSl7cmV0dXJuIHRoaXMudGgoYSxiLGMsZCxlKX19O18uUnIucHJvdG90eXBlLnJoPV8uaGEoNyk7Xy5VZ2E9RXZlbnQ7Xy5Tcj1jbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1yaCgpe3JldHVybiBfLkgodGhpcywxKX10aCgpe3JldHVybiBfLkgodGhpcywyKX14aCgpe3JldHVybiBfLkpnKHRoaXMsMjEpfX07Xy5Tci5wcm90b3R5cGUucGw9Xy5oYSgxMyk7Xy5Tci5wcm90b3R5cGUua2o9Xy5oYSg4KTt2YXIgaWNhPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfXJoKCl7cmV0dXJuIF8uSCh0aGlzLDIpfX07dmFyIGRnYT1jbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O18ubnE9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9Z2V0U3RhdHVzKCl7cmV0dXJuIF8uUGcodGhpcywxKX19O18ubnEucHJvdG90eXBlLnJoPV8uaGEoMTQpO3ZhciBiZ2E9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9cmgoKXtyZXR1cm4gXy5HKHRoaXMsXy5TciwzKX1DaCgpe3JldHVybiBfLkFnKHRoaXMsaWNhLDQpfXhoKCl7cmV0dXJuIF8uSCh0aGlzLDcpfXloKCl7cmV0dXJuIF8uSCh0aGlzLDE0KX10aCgpe3JldHVybiBfLkgodGhpcywxNyl9QmgoKXtyZXR1cm4gXy5KZyh0aGlzLDUxKX16aCgpe3JldHVybiBfLmpnKHRoaXMsNTIsXy5ZZSwxLHZvaWQgMCwxMDI0KX19O3ZhciBTZmE9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgUmZhPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIFZnYT1bMCxfLlosLTEsXy5VLC0yLF8uQXIsWzAsXy52cl0sWzAsXy5VLC00XSxbMCxfLlpdLF8uWixbMCxfLlUsXy5HcixfLlJdLF8uVSxfLndyXTtfLlRyPXt9O3ZhciBUZmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1uZXcgXy5LZ2E7Xy53aShiLkxpLGMsXy50aShhKSk7cmV0dXJuIF8uSWQoXy5haShjKSl9fShWZ2EpO18uVHJbNTI1MDA0MTgwXT1WZ2E7dmFyIGpjYT13aW5kb3cubWF0Y2hNZWRpYSYmd2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKTtfLlVyPXtST0FETUFQOiJyb2FkbWFwIixTQVRFTExJVEU6InNhdGVsbGl0ZSIsSFlCUklEOiJoeWJyaWQiLFRFUlJBSU46InRlcnJhaW4ifTt2YXIgZ3I7Z3I9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYCR7Yn06ICR7Y306ICR7YX1gKTt0aGlzLmVuZHBvaW50PWI7dGhpcy5jb2RlPWM7dGhpcy5uYW1lPSJNYXBzTmV0d29ya0Vycm9yIn19O18uanI9Y2xhc3MgZXh0ZW5kcyBncntjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYSxiLGMpO3RoaXMubmFtZT0iTWFwc1NlcnZlckVycm9yIn19O18uaXI9Y2xhc3MgZXh0ZW5kcyBncntjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYSxiLGMpO3RoaXMubmFtZT0iTWFwc1JlcXVlc3RFcnJvciJ9fTt2YXIgbGNhPXtjZWxscGFkZGluZzoiY2VsbFBhZGRpbmciLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY29sc3BhbjoiY29sU3BhbiIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixoZWlnaHQ6ImhlaWdodCIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLG5vbmNlOiJub25jZSIscm9sZToicm9sZSIscm93c3Bhbjoicm93U3BhbiIsdHlwZToidHlwZSIsdXNlbWFwOiJ1c2VNYXAiLHZhbGlnbjoidkFsaWduIix3aWR0aDoid2lkdGgifTtfLmFhPV8uQmwucHJvdG90eXBlO18uYWEubms9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5xaDtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIj9iLmdldEVsZW1lbnRCeUlkKGEpOmF9O18uYWEuJD1fLkJsLnByb3RvdHlwZS5uaztfLmFhLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGJ8fHRoaXMucWgpLmdldEVsZW1lbnRzQnlUYWdOYW1lKFN0cmluZyhhKSl9OwpfLmFhLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHZsKHRoaXMucWgsYSl9O18uYWEuY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucWguY3JlYXRlVGV4dE5vZGUoU3RyaW5nKGEpKX07Xy5hYS5hcHBlbmRDaGlsZD1mdW5jdGlvbihhLGIpe2EuYXBwZW5kQ2hpbGQoYil9O18uYWEuYXBwZW5kPWZ1bmN0aW9uKGEsYil7bmNhKF8uQWwoYSksYSxhcmd1bWVudHMsMSl9O18uYWEuY2FuSGF2ZUNoaWxkcmVuPWZ1bmN0aW9uKGEpe2lmKGEubm9kZVR5cGUhPTEpcmV0dXJuITE7c3dpdGNoKGEudGFnTmFtZSl7Y2FzZSAiQVBQTEVUIjpjYXNlICJBUkVBIjpjYXNlICJCQVNFIjpjYXNlICJCUiI6Y2FzZSAiQ09MIjpjYXNlICJDT01NQU5EIjpjYXNlICJFTUJFRCI6Y2FzZSAiRlJBTUUiOmNhc2UgIkhSIjpjYXNlICJJTUciOmNhc2UgIklOUFVUIjpjYXNlICJJRlJBTUUiOmNhc2UgIklTSU5ERVgiOmNhc2UgIktFWUdFTiI6Y2FzZSAiTElOSyI6Y2FzZSAiTk9GUkFNRVMiOmNhc2UgIk5PU0NSSVBUIjpjYXNlICJNRVRBIjpjYXNlICJPQkpFQ1QiOmNhc2UgIlBBUkFNIjpjYXNlICJTQ1JJUFQiOmNhc2UgIlNPVVJDRSI6Y2FzZSAiU1RZTEUiOmNhc2UgIlRSQUNLIjpjYXNlICJXQlIiOnJldHVybiExfXJldHVybiEwfTsKXy5hYS5jb250YWlucz1fLnpsO3ZhciBXZ2E9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLnFoPV8uVWEuZG9jdW1lbnQ7dGhpcy5zaD1hLmluY2x1ZGVzKCIlcyIpP2E6cWNhKFthLCIlcyJdLCJqcyIpO3RoaXMucmg9IWJ8fGIuaW5jbHVkZXMoIiVzIik/YjpxY2EoW2IsIiVzIl0sImNzcy5qcyIpfVBBKGEsYixjKXtpZih0aGlzLnJoKXtsZXQgZD1fLkVsKHRoaXMucmgucmVwbGFjZSgiJXMiLGEpKTtwY2EodGhpcy5xaCxkKX1hPV8uRWwodGhpcy5zaC5yZXBsYWNlKCIlcyIsYSkpO3BjYSh0aGlzLnFoLGEsYixjKX19O18uVnI9YT0+e3ZhciBiPSJlQiI7aWYoYS5lQiYmYS5oYXNPd25Qcm9wZXJ0eShiKSlyZXR1cm4gYS5lQjt2YXIgYz1uZXcgYTthLmVCPWM7YS5oYXNPd25Qcm9wZXJ0eShiKTtyZXR1cm4gY307dmFyIEdsPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXF1ZXN0ZWRNb2R1bGVzPXt9O3RoaXMucmg9e307dGhpcy54aD17fTt0aGlzLnFoPXt9O3RoaXMuemg9bmV3IFNldDt0aGlzLnNoPW5ldyBYZ2E7dGhpcy55aD0hMTt0aGlzLndoPXt9fWluaXQoYSxiLGMsZD1udWxsLGU9KCk9Pnt9LGY9bmV3IFdnYShhLGQpLGcpe3RoaXMuTXM9ZTt0aGlzLnloPSEhZDt0aGlzLnNoLmluaXQoYixjLGYpO2lmKHRoaXMudGg9Zyl7YT1PYmplY3Qua2V5cyh0aGlzLnFoKTtmb3IobGV0IGggb2YgYSl0aGlzLnRoKGgpfX1sbihhLGIpe3JjYSh0aGlzLGEpLnNPPWI7dGhpcy56aC5hZGQoYSk7dWNhKHRoaXMsYSl9c3RhdGljIGdldEluc3RhbmNlKCl7cmV0dXJuIF8uVnIoR2wpfX0sWWdhPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLnNoPWE7dGhpcy5xaD1iO3RoaXMucmg9YzthPXt9O2ZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhiKSl7Yz1iW2RdO2xldCBlPWMubGVuZ3RoO2ZvcihsZXQgZj0KMDtmPGU7KytmKXtsZXQgZz1jW2ZdO2FbZ118fChhW2ddPVtdKTthW2ddLnB1c2goZCl9fXRoaXMudGg9YX19LFhnYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucWg9W119aW5pdChhLGIsYyl7YT10aGlzLmNvbmZpZz1uZXcgWWdhKGMsYSxiKTtiPXRoaXMucWgubGVuZ3RoO2ZvcihjPTA7YzxiOysrYyl0aGlzLnFoW2NdKGEpO3RoaXMucWgubGVuZ3RoPTB9fTtfLkxwPXt9O3ZhciBLbDtfLlpnYT1JbnRsLk51bWJlckZvcm1hdC5zdXBwb3J0ZWRMb2NhbGVzT2YoWyJlbiIucmVwbGFjZSgiXyIsIi0iKV0pLmxlbmd0aD4wO18uJGdhPSIwIi5jb2RlUG9pbnRBdCgwKTt2YXIgYWhhO2FoYT1mdW5jdGlvbihhKXtyZXR1cm4gYSUxMD09MSYmYSUxMDAhPTExPyJvbmUiOmElMTA9PTImJmElMTAwIT0xMj8idHdvIjphJTEwPT0zJiZhJTEwMCE9MTM/ImZldyI6Im90aGVyIn07Xy5iaGE9YWhhPWZ1bmN0aW9uKCl7dmFyIGE9e3plcm86Inplcm8iLG9uZToib25lIix0d286InR3byIsZmV3OiJmZXciLG1hbnk6Im1hbnkiLG90aGVyOiJvdGhlciJ9LGI9bnVsbCxjPW51bGw7cmV0dXJuIGZ1bmN0aW9uKGQsZSl7dmFyIGY9ZT09PXZvaWQgMD8tMTplO2M9PT1udWxsJiYoYz1uZXcgTWFwKTtiPWMuZ2V0KGYpO2lmKCFiKXtsZXQgZz0iIjtnPSJlbiIucmVwbGFjZSgiXyIsIi0iKTtiPWY9PT0tMT9uZXcgSW50bC5QbHVyYWxSdWxlcyhnLHt0eXBlOiJvcmRpbmFsIn0pOm5ldyBJbnRsLlBsdXJhbFJ1bGVzKGcse3R5cGU6Im9yZGluYWwiLG1pbmltdW1GcmFjdGlvbkRpZ2l0czplfSk7Yy5zZXQoZixiKX1kPWIuc2VsZWN0KGQpO3JldHVybiBhW2RdfX0oKTt2YXIgY2hhO2NoYT1mdW5jdGlvbihhLGIpe2lmKHZvaWQgMD09PWIpe2I9YSsiIjt2YXIgYz1iLmluZGV4T2YoIi4iKTtiPU1hdGgubWluKGM9PT0tMT8wOmIubGVuZ3RoLWMtMSwzKX1jPU1hdGgucG93KDEwLGIpO2I9e3Y6YixmOihhKmN8MCklY307cmV0dXJuKGF8MCk9PTEmJmIudj09MD8ib25lIjoib3RoZXIifTsKXy5kaGE9Y2hhPWZ1bmN0aW9uKCl7dmFyIGE9e3plcm86Inplcm8iLG9uZToib25lIix0d286InR3byIsZmV3OiJmZXciLG1hbnk6Im1hbnkiLG90aGVyOiJvdGhlciJ9LGI9bnVsbCxjPW51bGw7cmV0dXJuIGZ1bmN0aW9uKGQsZSl7dmFyIGY9ZT09PXZvaWQgMD8tMTplO2M9PT1udWxsJiYoYz1uZXcgTWFwKTtiPWMuZ2V0KGYpO2lmKCFiKXtsZXQgZz0iIjtnPSJlbiIucmVwbGFjZSgiXyIsIi0iKTtiPWY9PT0tMT9uZXcgSW50bC5QbHVyYWxSdWxlcyhnKTpuZXcgSW50bC5QbHVyYWxSdWxlcyhnLHttaW5pbXVtRnJhY3Rpb25EaWdpdHM6ZX0pO2Muc2V0KGYsYil9ZD1iLnNlbGVjdChkKTtyZXR1cm4gYVtkXX19KCk7Xy5laGE9UmVnRXhwKCInKFt7fSNdLio/KSciLCJnIik7Xy5maGE9UmVnRXhwKCInJyIsImciKTtVbC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiBXcn07dmFyIFdyPXtkb25lOiEwLHZhbHVlOnZvaWQgMH07VWwucHJvdG90eXBlLnh4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3ZhciBWbD1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnFoPWF9eHgoKXtyZXR1cm4gbmV3IHljYSh0aGlzLnFoKCkpfVtTeW1ib2wuaXRlcmF0b3JdKCl7cmV0dXJuIG5ldyBXbCh0aGlzLnFoKCkpfXJoKCl7cmV0dXJuIG5ldyBXbCh0aGlzLnFoKCkpfX0seWNhPWNsYXNzIGV4dGVuZHMgVWx7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnFoPWF9bmV4dCgpe3JldHVybiB0aGlzLnFoLm5leHQoKX1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiBuZXcgV2wodGhpcy5xaCl9cmgoKXtyZXR1cm4gbmV3IFdsKHRoaXMucWgpfX0sV2w9Y2xhc3MgZXh0ZW5kcyBWbHtjb25zdHJ1Y3RvcihhKXtzdXBlcigoKT0+YSk7dGhpcy5zaD1hfW5leHQoKXtyZXR1cm4gdGhpcy5zaC5uZXh0KCl9fTtfLnFiKF8uWGwsQWNhKTtfLlhsLnByb3RvdHlwZS5saz1fLmhhKDE3KTtfLlhsLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHpjYSh0aGlzLnh4KCEwKSkucmgoKX07Xy5YbC5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt2YXIgYT1BcnJheS5mcm9tKHRoaXMpO2ZvcihsZXQgYiBvZiBhKXRoaXMucmVtb3ZlKGIpfTtfLnFiKF8uWWwsXy5YbCk7Xy5hYT1fLllsLnByb3RvdHlwZTtfLmFhLmlzQXZhaWxhYmxlPWZ1bmN0aW9uKCl7aWYodGhpcy5yaD09PW51bGwpe3ZhciBhPXRoaXMucWg7aWYoYSl0cnl7YS5zZXRJdGVtKCJfX3NhayIsIjEiKTthLnJlbW92ZUl0ZW0oIl9fc2FrIik7dmFyIGI9ITB9Y2F0Y2goYyl7Yj1jIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uJiYoYy5uYW1lPT09IlF1b3RhRXhjZWVkZWRFcnJvciJ8fGMuY29kZT09PTIyfHxjLmNvZGU9PT0xMDE0fHxjLm5hbWU9PT0iTlNfRVJST1JfRE9NX1FVT1RBX1JFQUNIRUQiKSYmYSYmYS5sZW5ndGghPT0wfWVsc2UgYj0hMTt0aGlzLnJoPWJ9cmV0dXJuIHRoaXMucmh9OwpfLmFhLnNldD1mdW5jdGlvbihhLGIpe18uWmwodGhpcyk7dHJ5e3RoaXMucWguc2V0SXRlbShhLGIpfWNhdGNoKGMpe2lmKHRoaXMucWgubGVuZ3RoPT0wKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIGRpc2FibGVkIjt0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogUXVvdGEgZXhjZWVkZWQiO319O18uYWEuZ2V0PWZ1bmN0aW9uKGEpe18uWmwodGhpcyk7YT10aGlzLnFoLmdldEl0ZW0oYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIiYmYSE9PW51bGwpdGhyb3ciU3RvcmFnZSBtZWNoYW5pc206IEludmFsaWQgdmFsdWUgd2FzIGVuY291bnRlcmVkIjtyZXR1cm4gYX07Xy5hYS5yZW1vdmU9ZnVuY3Rpb24oYSl7Xy5abCh0aGlzKTt0aGlzLnFoLnJlbW92ZUl0ZW0oYSl9O18uYWEubGs9Xy5oYSgxNik7Cl8uYWEueHg9ZnVuY3Rpb24oYSl7Xy5abCh0aGlzKTt2YXIgYj0wLGM9dGhpcy5xaCxkPW5ldyBVbDtkLm5leHQ9ZnVuY3Rpb24oKXtpZihiPj1jLmxlbmd0aClyZXR1cm4gV3I7dmFyIGU9Yy5rZXkoYisrKTtpZihhKXJldHVybnt2YWx1ZTplLGRvbmU6ITF9O2U9Yy5nZXRJdGVtKGUpO2lmKHR5cGVvZiBlIT09InN0cmluZyIpdGhyb3ciU3RvcmFnZSBtZWNoYW5pc206IEludmFsaWQgdmFsdWUgd2FzIGVuY291bnRlcmVkIjtyZXR1cm57dmFsdWU6ZSxkb25lOiExfX07cmV0dXJuIGR9O18uYWEuY2xlYXI9ZnVuY3Rpb24oKXtfLlpsKHRoaXMpO3RoaXMucWguY2xlYXIoKX07Xy5hYS5rZXk9ZnVuY3Rpb24oYSl7Xy5abCh0aGlzKTtyZXR1cm4gdGhpcy5xaC5rZXkoYSl9O18ucWIoQmNhLF8uWWwpO3ZhciB1bT17fTt2YXIgRmNhPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLm1lc3NhZ2U9YTt0aGlzLm5hbWU9IkludmFsaWRWYWx1ZUVycm9yIn19LEdjYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm1lc3NhZ2U9YTt0aGlzLm5hbWU9IkxpZ2h0d2VpZ2h0SW52YWxpZFZhbHVlRXJyb3IifX0sem09ITA7dmFyIGhvLCRyLGloYTtfLk9tPV8uSm0oXy5qbSwibm90IGEgbnVtYmVyIik7Xy5naGE9Xy5MbShfLk9tLGE9PntpZighTnVtYmVyLmlzSW50ZWdlcihhKSl0aHJvdyBfLkFtKGAke2F9IGlzIG5vdCBhbiBpbnRlZ2VyYCk7cmV0dXJuIGF9KTtfLmhoYT1fLkxtKF8uZ2hhLGE9PntpZihhPD0wKXRocm93IF8uQW0oYCR7YX0gaXMgbm90IGEgcG9zaXRpdmUgaW50ZWdlcmApO3JldHVybiBhfSk7aG89Xy5MbShfLk9tLGE9PntJY2EoYSk7cmV0dXJuIGF9KTtfLlhyPV8uTG0oXy5PbSxhPT57aWYoaXNGaW5pdGUoYSkpcmV0dXJuIGE7dGhyb3cgXy5BbShgJHthfSBpcyBub3QgYW4gYWNjZXB0ZWQgdmFsdWVgKTt9KTtfLllyPV8uTG0oXy5PbSxhPT57aWYoYT49MClyZXR1cm4gYTtJY2EoYSk7dGhyb3cgXy5BbShgJHthfSBpcyBhIG5lZ2F0aXZlIG51bWJlciB2YWx1ZWApO30pO18uWnI9Xy5MbShfLllyLF8uWHIpO18uY3I9Xy5KbShfLm1tLCJub3QgYSBzdHJpbmciKTsKJHI9Xy5KbShfLm5tLCJub3QgYSBib29sZWFuIik7aWhhPV8uSm0oYT0+dHlwZW9mIGE9PT0iZnVuY3Rpb24iLCJub3QgYSBmdW5jdGlvbiIpO18uYXM9Xy5NbShfLk9tKTtfLmJzPV8uTW0oXy5jcik7Xy5jcz1fLk1tKCRyKTtfLmRzPV8uTG0oXy5jcixhPT57aWYoYS5sZW5ndGg+MClyZXR1cm4gYTt0aHJvdyBfLkFtKCJlbXB0eSBzdHJpbmcgaXMgbm90IGFuIGFjY2VwdGVkIHZhbHVlIik7fSk7Xy5qaGE9Xy5MbShfLkVtKERhdGUsIkRhdGUiKSxhPT57aWYoaXNOYU4oYS5nZXRUaW1lKCkpKXRocm93IF8uQW0oImludmFsaWQgZGF0ZSIpO3JldHVybiBhfSk7dmFyIEpjYT1udWxsLFNtPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5xaD1uZXcgU2V0O3RoaXMucmg9bnVsbH1nZXQgZXhwZXJpZW5jZUlkcygpe3JldHVybiBuZXcgU2V0KHRoaXMucWgpfXNldCBleHBlcmllbmNlSWRzKGEpe2lmKHR5cGVvZiBhW1N5bWJvbC5pdGVyYXRvcl0hPT0iZnVuY3Rpb24ifHx0eXBlb2YgYT09PSJzdHJpbmciKXRocm93IF8uQW0oImV4cGVyaWVuY2VJZHMgbXVzdCBiZSBzZXQgdG8gYW4gaW5zdGFuY2Ugb2YgSXRlcmFibGU8c3RyaW5nPi4iKTtmb3IobGV0IGMgb2YgYSl0cnl7KDAsXy5kcykoYyk7YTp7Zm9yKGxldCBkPTA7ZDxjLmxlbmd0aCsxO2QrKyl7bGV0IGU7ZG97aWYoZD09PWMubGVuZ3RoKXt2YXIgYj0hMDticmVhayBhfWU9Yy5jaGFyQXQoZCsrKX13aGlsZShlPCJcdWQ4MDAifHxlPiJcdWRmZmYiKTtpZihlPj0iXHVkYzAwInx8ZD09PWMubGVuZ3RofHwhKGMuY2hhckF0KGQpPj0iXHVkYzAwIiYmYy5jaGFyQXQoZCk8Ilx1ZTAwMCIpKXtiPQohMTticmVhayBhfX1iPSEwfWlmKCFiKXRocm93IF8uQW0oIm11c3QgYmUgYSB3ZWxsLWZvcm1lZCBVVEYtMTYgc3RyaW5nLiIpO2lmKFsuLi5jXS5sZW5ndGg+NjQpdGhyb3cgXy5BbSgibXVzdCBiZSA2NCBjb2RlIHBvaW50cyBvciBzaG9ydGVyLiIpO2lmKC9bLzo/I10vLnRlc3QoYykpdGhyb3cgXy5BbSgnbXVzdCBub3QgY29udGFpbiBhbnkgb2YgdGhlIGZvbGxvd2luZyBBU0NJSSBjaGFyYWN0ZXJzOiAiLyIsICI6IiwgIj8iIG9yICIjIicpO31jYXRjaChkKXt0aHJvdyBkLm1lc3NhZ2U9YEV4cGVyaWVuY2UgSUQgIiR7Y30iICR7ZC5tZXNzYWdlfWAsZDt9dGhpcy5xaC5jbGVhcigpO2ZvcihsZXQgYyBvZiBhKXRoaXMucWguYWRkKGMpfWdldCBmZXRjaEFwcENoZWNrVG9rZW4oKXtyZXR1cm4gdGhpcy5yaD09bnVsbD8oKT0+UHJvbWlzZS5yZXNvbHZlKHt0b2tlbjoiIn0pOnRoaXMucmh9c2V0IGZldGNoQXBwQ2hlY2tUb2tlbihhKXtfLk0od2luZG93LDIyODQ1Mik7dGhpcy5yaD0KYX19O1NtLmdldEluc3RhbmNlPUtjYTtfLnBxPXtUT1BfTEVGVDoxLFRPUF9DRU5URVI6MixUT1A6MixUT1BfUklHSFQ6MyxMRUZUX0NFTlRFUjo0LExFRlRfVE9QOjUsTEVGVDo1LExFRlRfQk9UVE9NOjYsUklHSFRfVE9QOjcsUklHSFQ6NyxSSUdIVF9DRU5URVI6OCxSSUdIVF9CT1RUT006OSxCT1RUT01fTEVGVDoxMCxCT1RUT01fQ0VOVEVSOjExLEJPVFRPTToxMSxCT1RUT01fUklHSFQ6MTIsQ0VOVEVSOjEzLEJMT0NLX1NUQVJUX0lOTElORV9TVEFSVDoxNCxCTE9DS19TVEFSVF9JTkxJTkVfQ0VOVEVSOjE1LEJMT0NLX1NUQVJUX0lOTElORV9FTkQ6MTYsSU5MSU5FX1NUQVJUX0JMT0NLX0NFTlRFUjoxNyxJTkxJTkVfU1RBUlRfQkxPQ0tfU1RBUlQ6MTgsSU5MSU5FX1NUQVJUX0JMT0NLX0VORDoxOSxJTkxJTkVfRU5EX0JMT0NLX1NUQVJUOjIwLElOTElORV9FTkRfQkxPQ0tfQ0VOVEVSOjIxLElOTElORV9FTkRfQkxPQ0tfRU5EOjIyLEJMT0NLX0VORF9JTkxJTkVfU1RBUlQ6MjMsQkxPQ0tfRU5EX0lOTElORV9DRU5URVI6MjQsCkJMT0NLX0VORF9JTkxJTkVfRU5EOjI1LDE6IlRPUF9MRUZUIiwyOiJUT1AiLDM6IlRPUF9SSUdIVCIsNDoiTEVGVF9DRU5URVIiLDU6IkxFRlQiLDY6IkxFRlRfQk9UVE9NIiw3OiJSSUdIVCIsODoiUklHSFRfQ0VOVEVSIiw5OiJSSUdIVF9CT1RUT00iLDEwOiJCT1RUT01fTEVGVCIsMTE6IkJPVFRPTSIsMTI6IkJPVFRPTV9SSUdIVCIsMTM6IkNFTlRFUiIsMTQ6IkJMT0NLX1NUQVJUX0lOTElORV9TVEFSVCIsMTU6IkJMT0NLX1NUQVJUX0lOTElORV9DRU5URVIiLDE2OiJCTE9DS19TVEFSVF9JTkxJTkVfRU5EIiwxNzoiSU5MSU5FX1NUQVJUX0JMT0NLX0NFTlRFUiIsMTg6IklOTElORV9TVEFSVF9CTE9DS19TVEFSVCIsMTk6IklOTElORV9TVEFSVF9CTE9DS19FTkQiLDIwOiJJTkxJTkVfRU5EX0JMT0NLX1NUQVJUIiwyMToiSU5MSU5FX0VORF9CTE9DS19DRU5URVIiLDIyOiJJTkxJTkVfRU5EX0JMT0NLX0VORCIsMjM6IkJMT0NLX0VORF9JTkxJTkVfU1RBUlQiLDI0OiJCTE9DS19FTkRfSU5MSU5FX0NFTlRFUiIsCjI1OiJCTE9DS19FTkRfSU5MSU5FX0VORCJ9O3ZhciBmZmE9e0RFRkFVTFQ6MCxTTUFMTDoxLEFORFJPSUQ6MixaT09NX1BBTjozLFBSOjQsYUw6NSwwOiJERUZBVUxUIiwxOiJTTUFMTCIsMjoiQU5EUk9JRCIsMzoiWk9PTV9QQU4iLDQ6IlJPVEFURV9PTkxZIiw1OiJUT1VDSCJ9O3ZhciBnZmE9e0RFRkFVTFQ6MH07dmFyIGhmYT17REVGQVVMVDowLFNNQUxMOjEsTEFSR0U6MixhTDozLDA6IkRFRkFVTFQiLDE6IlNNQUxMIiwyOiJMQVJHRSIsMzoiVE9VQ0gifTt2YXIgWm09Y2xhc3N7fTt2YXIga2hhPXtJUjoiUG9pbnQiLHZSOiJMaW5lU3RyaW5nIixQT0xZR09OOiJQb2x5Z29uIn07dmFyIExjYT1fLkNtKHtsYXQ6Xy5PbSxsbmc6Xy5PbX0sITApLE5jYT1fLkNtKHtsYXQ6Xy5Ycixsbmc6Xy5Ycn0sITApO18uVG0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIigiK3RoaXMubGF0KCkrIiwgIit0aGlzLmxuZygpKyIpIn07Xy5UbS5wcm90b3R5cGUudG9TdHJpbmc9Xy5UbS5wcm90b3R5cGUudG9TdHJpbmc7Xy5UbS5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJue2xhdDp0aGlzLmxhdCgpLGxuZzp0aGlzLmxuZygpfX07Xy5UbS5wcm90b3R5cGUudG9KU09OPV8uVG0ucHJvdG90eXBlLnRvSlNPTjtfLlRtLnByb3RvdHlwZS5lcXVhbHM9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuITE7dmFyIGI9YSBpbnN0YW5jZW9mIF8uVG0/YS5sYXQoKTphLmxhdDthPWEgaW5zdGFuY2VvZiBfLlRtP2EubG5nKCk6YS5sbmc7cmV0dXJuIHR5cGVvZiBiIT09Im51bWJlciJ8fHR5cGVvZiBhIT09Im51bWJlciI/ITE6Xy5pbSh0aGlzLmxhdCgpLGIpJiZfLmltKHRoaXMubG5nKCksYSl9O18uVG0ucHJvdG90eXBlLmVxdWFscz1fLlRtLnByb3RvdHlwZS5lcXVhbHM7Cl8uVG0ucHJvdG90eXBlLmVxdWFscz1fLlRtLnByb3RvdHlwZS5lcXVhbHM7Xy5UbS5wcm90b3R5cGUudG9VcmxWYWx1ZT1mdW5jdGlvbihhKXthPWEhPT12b2lkIDA/YTo2O3JldHVybiBNY2EodGhpcy5sYXQoKSxhKSsiLCIrTWNhKHRoaXMubG5nKCksYSl9O18uVG0ucHJvdG90eXBlLnRvVXJsVmFsdWU9Xy5UbS5wcm90b3R5cGUudG9VcmxWYWx1ZTt2YXIgcWRhO18uZXM9Xy5HbShfLlhtKTtxZGE9Xy5HbShfLlltKTtfLiRtPWNsYXNzIGV4dGVuZHMgWm17Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmVsZW1lbnRzPV8uWG0oYSl9Z2V0VHlwZSgpe3JldHVybiJQb2ludCJ9Zm9yRWFjaExhdExuZyhhKXthKHRoaXMuZWxlbWVudHMpfWdldCgpe3JldHVybiB0aGlzLmVsZW1lbnRzfX07Xy4kbS5wcm90b3R5cGUuZ2V0PV8uJG0ucHJvdG90eXBlLmdldDtfLiRtLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nPV8uJG0ucHJvdG90eXBlLmZvckVhY2hMYXRMbmc7Xy4kbS5wcm90b3R5cGUuZ2V0VHlwZT1fLiRtLnByb3RvdHlwZS5nZXRUeXBlO18uJG0ucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8uJG0ucHJvdG90eXBlLmNvbnN0cnVjdG9yO3ZhciBsaGE9Xy5HbShjbik7dmFyIE9jYT1uZXcgU2V0O3ZhciBRY2EsbWhhO1FjYT1uZXcgU2V0KFsidG91Y2hzdGFydCIsInRvdWNobW92ZSIsIndoZWVsIiwibW91c2V3aGVlbCJdKTtfLmZzPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiZ29vZ2xlLm1hcHMuZXZlbnQgaXMgbm90IGEgY29uc3RydWN0b3IiKTt9fTtfLmZzLnRyaWdnZXI9Xy53bjtfLmZzLmFkZExpc3RlbmVyT25jZT1fLnRuOwpfLmZzLmFkZERvbUxpc3RlbmVyT25jZT1mdW5jdGlvbihhLGIsYyxkKXtfLmRuKCJnb29nbGUubWFwcy5ldmVudC5hZGREb21MaXN0ZW5lck9uY2UoKSBpcyBkZXByZWNhdGVkLCB1c2UgdGhlXG5zdGFuZGFyZCBhZGRFdmVudExpc3RlbmVyKCkgbWV0aG9kIGluc3RlYWQ6XG5odHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvRXZlbnRUYXJnZXQvYWRkRXZlbnRMaXN0ZW5lclxuVGhlIGZlYXR1cmUgd2lsbCBjb250aW51ZSB0byB3b3JrIGFuZCB0aGVyZSBpcyBubyBwbGFuIHRvIGRlY29tbWlzc2lvblxuaXQuIik7cmV0dXJuIF8ucm4oYSxiLGMsZCl9OwpfLmZzLmFkZERvbUxpc3RlbmVyPWZ1bmN0aW9uKGEsYixjLGQpe18uZG4oImdvb2dsZS5tYXBzLmV2ZW50LmFkZERvbUxpc3RlbmVyKCkgaXMgZGVwcmVjYXRlZCwgdXNlIHRoZSBzdGFuZGFyZFxuYWRkRXZlbnRMaXN0ZW5lcigpIG1ldGhvZCBpbnN0ZWFkOlxuaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0V2ZW50VGFyZ2V0L2FkZEV2ZW50TGlzdGVuZXJcblRoZSBmZWF0dXJlIHdpbGwgY29udGludWUgdG8gd29yayBhbmQgdGhlcmUgaXMgbm8gcGxhbiB0byBkZWNvbW1pc3Npb25cbml0LiIpO3JldHVybiBfLnFuKGEsYixjLGQpfTtfLmZzLmNsZWFySW5zdGFuY2VMaXN0ZW5lcnM9Xy5wbjtfLmZzLmNsZWFyTGlzdGVuZXJzPV8ub247Xy5mcy5yZW1vdmVMaXN0ZW5lcj1fLm1uO18uZnMuaGFzTGlzdGVuZXJzPV8ubG47Xy5mcy5hZGRMaXN0ZW5lcj1fLmtuOwpfLmpuPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQsZT0hMCl7dGhpcy5uRj1lO3RoaXMuaW5zdGFuY2U9YTt0aGlzLnFoPWI7dGhpcy5vcD1jO3RoaXMucmg9ZDt0aGlzLmlkPSsrbWhhO1NjYShhLGIpW3RoaXMuaWRdPXRoaXM7dGhpcy5uRiYmXy53bih0aGlzLmluc3RhbmNlLGAke3RoaXMucWh9X2FkZGVkYCl9cmVtb3ZlKCl7aWYodGhpcy5pbnN0YW5jZSl7aWYodGhpcy5pbnN0YW5jZS5yZW1vdmVFdmVudExpc3RlbmVyJiYodGhpcy5yaD09PTF8fHRoaXMucmg9PT00KSl7bGV0IGE9e2NhcHR1cmU6dGhpcy5yaD09PTR9O1FjYS5oYXModGhpcy5xaCkmJihhLnBhc3NpdmU9ITEpO3RoaXMuaW5zdGFuY2UucmVtb3ZlRXZlbnRMaXN0ZW5lcih0aGlzLnFoLHRoaXMub3AsYSl9ZGVsZXRlIFNjYSh0aGlzLmluc3RhbmNlLHRoaXMucWgpW3RoaXMuaWRdO3RoaXMubkYmJl8ud24odGhpcy5pbnN0YW5jZSxgJHt0aGlzLnFofV9yZW1vdmVkYCk7dGhpcy5vcD10aGlzLmluc3RhbmNlPW51bGx9fX07Cm1oYT0wO18uRnE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD1udWxsO3RoaXMubmwoYSl9bmwoYSl7YT1hfHx7fTt0aGlzLnNoPWEuaWQ7dHJ5e3RoaXMucWg9YS5nZW9tZXRyeT9jbihhLmdlb21ldHJ5KTpudWxsfWNhdGNoKGIpe18uQm0oYil9dGhpcy5yaD1hLnByb3BlcnRpZXN8fHt9fWdldElkKCl7cmV0dXJuIHRoaXMuc2h9Z2V0R2VvbWV0cnkoKXtyZXR1cm4gdGhpcy5xaH1zZXRHZW9tZXRyeShhKXt2YXIgYj10aGlzLnFoO3RyeXt0aGlzLnFoPWE/Y24oYSk6bnVsbH1jYXRjaChjKXtfLkJtKGMpO3JldHVybn1fLnduKHRoaXMsInNldGdlb21ldHJ5Iix7ZmVhdHVyZTp0aGlzLG5ld0dlb21ldHJ5OnRoaXMucWgsb2xkR2VvbWV0cnk6Yn0pfWdldFByb3BlcnR5KGEpe3JldHVybiBxbSh0aGlzLnJoLGEpfXNldFByb3BlcnR5KGEsYil7aWYoYj09PXZvaWQgMCl0aGlzLnJlbW92ZVByb3BlcnR5KGEpO2Vsc2V7dmFyIGM9dGhpcy5nZXRQcm9wZXJ0eShhKTt0aGlzLnJoW2FdPWI7Xy53bih0aGlzLAoic2V0cHJvcGVydHkiLHtmZWF0dXJlOnRoaXMsbmFtZTphLG5ld1ZhbHVlOmIsb2xkVmFsdWU6Y30pfX1yZW1vdmVQcm9wZXJ0eShhKXt2YXIgYj10aGlzLmdldFByb3BlcnR5KGEpO2RlbGV0ZSB0aGlzLnJoW2FdO18ud24odGhpcywicmVtb3ZlcHJvcGVydHkiLHtmZWF0dXJlOnRoaXMsbmFtZTphLG9sZFZhbHVlOmJ9KX1mb3JFYWNoUHJvcGVydHkoYSl7Zm9yKGxldCBiIGluIHRoaXMucmgpYSh0aGlzLmdldFByb3BlcnR5KGIpLGIpfXRvR2VvSnNvbihhKXt2YXIgYj10aGlzO18uSGwoImRhdGEiKS50aGVuKGM9PntjLkVNKGIsYSl9KX19O18uRnEucHJvdG90eXBlLnRvR2VvSnNvbj1fLkZxLnByb3RvdHlwZS50b0dlb0pzb247Xy5GcS5wcm90b3R5cGUuZm9yRWFjaFByb3BlcnR5PV8uRnEucHJvdG90eXBlLmZvckVhY2hQcm9wZXJ0eTtfLkZxLnByb3RvdHlwZS5yZW1vdmVQcm9wZXJ0eT1fLkZxLnByb3RvdHlwZS5yZW1vdmVQcm9wZXJ0eTsKXy5GcS5wcm90b3R5cGUuc2V0UHJvcGVydHk9Xy5GcS5wcm90b3R5cGUuc2V0UHJvcGVydHk7Xy5GcS5wcm90b3R5cGUuZ2V0UHJvcGVydHk9Xy5GcS5wcm90b3R5cGUuZ2V0UHJvcGVydHk7Xy5GcS5wcm90b3R5cGUuc2V0R2VvbWV0cnk9Xy5GcS5wcm90b3R5cGUuc2V0R2VvbWV0cnk7Xy5GcS5wcm90b3R5cGUuZ2V0R2VvbWV0cnk9Xy5GcS5wcm90b3R5cGUuZ2V0R2VvbWV0cnk7Xy5GcS5wcm90b3R5cGUuZ2V0SWQ9Xy5GcS5wcm90b3R5cGUuZ2V0SWQ7Xy5GcS5wcm90b3R5cGUuY29uc3RydWN0b3I9Xy5GcS5wcm90b3R5cGUuY29uc3RydWN0b3I7Xy53bShfLkZxKTt2YXIgWGNhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5mZWF0dXJlcz17fTt0aGlzLnVucmVnaXN0ZXI9e307dGhpcy5xaD17fX1jb250YWlucyhhKXtyZXR1cm4gdGhpcy5mZWF0dXJlcy5oYXNPd25Qcm9wZXJ0eShfLnhuKGEpKX1nZXRGZWF0dXJlQnlJZChhKXtyZXR1cm4gcW0odGhpcy5xaCxhKX1hZGQoYSl7YT1hfHx7fTthPWEgaW5zdGFuY2VvZiBfLkZxP2E6bmV3IF8uRnEoYSk7aWYoIXRoaXMuY29udGFpbnMoYSkpe2xldCBjPWEuZ2V0SWQoKTtpZihjfHxjPT09MCl7dmFyIGI9dGhpcy5nZXRGZWF0dXJlQnlJZChjKTtiJiZ0aGlzLnJlbW92ZShiKX1iPV8ueG4oYSk7dGhpcy5mZWF0dXJlc1tiXT1hO2lmKGN8fGM9PT0wKXRoaXMucWhbY109YTtsZXQgZD1fLnZuKGEsInNldGdlb21ldHJ5Iix0aGlzKSxlPV8udm4oYSwic2V0cHJvcGVydHkiLHRoaXMpLGY9Xy52bihhLCJyZW1vdmVwcm9wZXJ0eSIsdGhpcyk7dGhpcy51bnJlZ2lzdGVyW2JdPSgpPT57Xy5tbihkKTtfLm1uKGUpOwpfLm1uKGYpfTtfLnduKHRoaXMsImFkZGZlYXR1cmUiLHtmZWF0dXJlOmF9KX1yZXR1cm4gYX1yZW1vdmUoYSl7dmFyIGI9Xy54bihhKSxjPWEuZ2V0SWQoKTtpZih0aGlzLmZlYXR1cmVzW2JdKXtkZWxldGUgdGhpcy5mZWF0dXJlc1tiXTtjJiZkZWxldGUgdGhpcy5xaFtjXTtpZihjPXRoaXMudW5yZWdpc3RlcltiXSlkZWxldGUgdGhpcy51bnJlZ2lzdGVyW2JdLGMoKTtfLnduKHRoaXMsInJlbW92ZWZlYXR1cmUiLHtmZWF0dXJlOmF9KX19Zm9yRWFjaChhKXtmb3IobGV0IGIgaW4gdGhpcy5mZWF0dXJlcyl0aGlzLmZlYXR1cmVzLmhhc093blByb3BlcnR5KGIpJiZhKHRoaXMuZmVhdHVyZXNbYl0pfX07Xy5Ybj0iY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNlbW92ZSBtb3VzZW91dCBtb3VzZW92ZXIgbW91c2V1cCByaWdodGNsaWNrIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpO3ZhciBuaGE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnFoPXt9fXRyaWdnZXIoYSl7Xy53bih0aGlzLCJjaGFuZ2VkIixhKX1nZXQoYSl7cmV0dXJuIHRoaXMucWhbYV19c2V0KGEsYil7dmFyIGM9dGhpcy5xaDtjW2FdfHwoY1thXT17fSk7Xy5ibShjW2FdLGIpO3RoaXMudHJpZ2dlcihhKX1yZXNldChhKXtkZWxldGUgdGhpcy5xaFthXTt0aGlzLnRyaWdnZXIoYSl9Zm9yRWFjaChhKXtfLmFtKHRoaXMucWgsYSl9fTtfLnluLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7dmFyIGI9Q24odGhpcyk7YSs9IiI7Yj1xbShiLGEpO2lmKGIhPT12b2lkIDApe2lmKGIpe2E9Yi5ocTtiPWIubHc7bGV0IGM9ImdldCIrXy5CbihhKTtyZXR1cm4gYltjXT9iW2NdKCk6Yi5nZXQoYSl9cmV0dXJuIHRoaXNbYV19fTtfLnluLnByb3RvdHlwZS5nZXQ9Xy55bi5wcm90b3R5cGUuZ2V0O18ueW4ucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPUNuKHRoaXMpO2ErPSIiO3ZhciBkPXFtKGMsYSk7aWYoZClpZihhPWQuaHEsZD1kLmx3LGM9InNldCIrXy5CbihhKSxkW2NdKWRbY10oYik7ZWxzZSBkLnNldChhLGIpO2Vsc2UgdGhpc1thXT1iLGNbYV09bnVsbCxBbih0aGlzLGEpfTtfLnluLnByb3RvdHlwZS5zZXQ9Xy55bi5wcm90b3R5cGUuc2V0OwpfLnluLnByb3RvdHlwZS5ub3RpZnk9ZnVuY3Rpb24oYSl7dmFyIGI9Q24odGhpcyk7YSs9IiI7KGI9cW0oYixhKSk/Yi5sdy5ub3RpZnkoYi5ocSk6QW4odGhpcyxhKX07Xy55bi5wcm90b3R5cGUubm90aWZ5PV8ueW4ucHJvdG90eXBlLm5vdGlmeTtfLnluLnByb3RvdHlwZS5zZXRWYWx1ZXM9ZnVuY3Rpb24oYSl7Zm9yKGxldCBiIGluIGEpe2xldCBjPWFbYl0sZD0ic2V0IitfLkJuKGIpO2lmKHRoaXNbZF0pdGhpc1tkXShjKTtlbHNlIHRoaXMuc2V0KGIsYyl9fTtfLnluLnByb3RvdHlwZS5zZXRWYWx1ZXM9Xy55bi5wcm90b3R5cGUuc2V0VmFsdWVzO18ueW4ucHJvdG90eXBlLnNldE9wdGlvbnM9Xy55bi5wcm90b3R5cGUuc2V0VmFsdWVzO18ueW4ucHJvdG90eXBlLmNoYW5nZWQ9ZnVuY3Rpb24oKXt9O3ZhciBUY2E9e307Cl8ueW4ucHJvdG90eXBlLmJpbmRUbz1mdW5jdGlvbihhLGIsYyxkKXthKz0iIjtjPShjfHxhKSsiIjt0aGlzLnVuYmluZChhKTt2YXIgZT17bHc6dGhpcyxocTphfSxmPXtsdzpiLGhxOmMsekc6ZX07Q24odGhpcylbYV09Zjt6bihiLGMpW18ueG4oZSldPWU7ZHx8QW4odGhpcyxhKX07Xy55bi5wcm90b3R5cGUuYmluZFRvPV8ueW4ucHJvdG90eXBlLmJpbmRUbztfLnluLnByb3RvdHlwZS51bmJpbmQ9ZnVuY3Rpb24oYSl7dmFyIGI9Q24odGhpcyksYz1iW2FdO2MmJihjLnpHJiZkZWxldGUgem4oYy5sdyxjLmhxKVtfLnhuKGMuekcpXSx0aGlzW2FdPXRoaXMuZ2V0KGEpLGJbYV09bnVsbCl9O18ueW4ucHJvdG90eXBlLnVuYmluZD1fLnluLnByb3RvdHlwZS51bmJpbmQ7Xy55bi5wcm90b3R5cGUudW5iaW5kQWxsPWZ1bmN0aW9uKCl7dmFyIGE9KDAsXy5pYikodGhpcy51bmJpbmQsdGhpcyksYj1Dbih0aGlzKTtmb3IobGV0IGMgaW4gYilhKGMpfTsKXy55bi5wcm90b3R5cGUudW5iaW5kQWxsPV8ueW4ucHJvdG90eXBlLnVuYmluZEFsbDtfLnluLnByb3RvdHlwZS5hZGRMaXN0ZW5lcj1mdW5jdGlvbihhLGIpe3JldHVybiBfLmtuKHRoaXMsYSxiKX07Xy55bi5wcm90b3R5cGUuYWRkTGlzdGVuZXI9Xy55bi5wcm90b3R5cGUuYWRkTGlzdGVuZXI7dmFyIFljYT1jbGFzcyBleHRlbmRzIF8ueW57Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnFoPW5ldyBuaGE7Xy50bihhLCJhZGRmZWF0dXJlIiwoKT0+e18uSGwoImRhdGEiKS50aGVuKGI9PntiLlFMKHRoaXMsYSx0aGlzLnFoKX0pfSl9b3ZlcnJpZGVTdHlsZShhLGIpe3RoaXMucWguc2V0KF8ueG4oYSksYil9cmV2ZXJ0U3R5bGUoYSl7YT90aGlzLnFoLnJlc2V0KF8ueG4oYSkpOnRoaXMucWguZm9yRWFjaCh0aGlzLnFoLnJlc2V0LmJpbmQodGhpcy5xaCkpfX07Xy5Jbj1jbGFzcyBleHRlbmRzIFpte2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5lbGVtZW50cz1bXTt0cnl7dGhpcy5lbGVtZW50cz1saGEoYSl9Y2F0Y2goYil7Xy5CbShiKX19Z2V0VHlwZSgpe3JldHVybiJHZW9tZXRyeUNvbGxlY3Rpb24ifWdldExlbmd0aCgpe3JldHVybiB0aGlzLmVsZW1lbnRzLmxlbmd0aH1nZXRBdChhKXtyZXR1cm4gdGhpcy5lbGVtZW50c1thXX1nZXRBcnJheSgpe3JldHVybiB0aGlzLmVsZW1lbnRzLnNsaWNlKCl9Zm9yRWFjaExhdExuZyhhKXt0aGlzLmVsZW1lbnRzLmZvckVhY2goYj0+e2IuZm9yRWFjaExhdExuZyhhKX0pfX07Xy5Jbi5wcm90b3R5cGUuZm9yRWFjaExhdExuZz1fLkluLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nO18uSW4ucHJvdG90eXBlLmdldEFycmF5PV8uSW4ucHJvdG90eXBlLmdldEFycmF5O18uSW4ucHJvdG90eXBlLmdldEF0PV8uSW4ucHJvdG90eXBlLmdldEF0O18uSW4ucHJvdG90eXBlLmdldExlbmd0aD1fLkluLnByb3RvdHlwZS5nZXRMZW5ndGg7Cl8uSW4ucHJvdG90eXBlLmdldFR5cGU9Xy5Jbi5wcm90b3R5cGUuZ2V0VHlwZTtfLkluLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLkluLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtfLkRuPWNsYXNzIGV4dGVuZHMgWm17Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnFoPSgwLF8uZXMpKGEpfWdldFR5cGUoKXtyZXR1cm4iTGluZVN0cmluZyJ9Z2V0TGVuZ3RoKCl7cmV0dXJuIHRoaXMucWgubGVuZ3RofWdldEF0KGEpe3JldHVybiB0aGlzLnFoW2FdfWdldEFycmF5KCl7cmV0dXJuIHRoaXMucWguc2xpY2UoKX1mb3JFYWNoTGF0TG5nKGEpe3RoaXMucWguZm9yRWFjaChhKX19O18uRG4ucHJvdG90eXBlLmZvckVhY2hMYXRMbmc9Xy5Ebi5wcm90b3R5cGUuZm9yRWFjaExhdExuZztfLkRuLnByb3RvdHlwZS5nZXRBcnJheT1fLkRuLnByb3RvdHlwZS5nZXRBcnJheTtfLkRuLnByb3RvdHlwZS5nZXRBdD1fLkRuLnByb3RvdHlwZS5nZXRBdDtfLkRuLnByb3RvdHlwZS5nZXRMZW5ndGg9Xy5Ebi5wcm90b3R5cGUuZ2V0TGVuZ3RoO18uRG4ucHJvdG90eXBlLmdldFR5cGU9Xy5Ebi5wcm90b3R5cGUuZ2V0VHlwZTtfLkRuLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLkRuLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjsKdmFyIG9oYT1fLkdtKF8uRW0oXy5EbiwiZ29vZ2xlLm1hcHMuRGF0YS5MaW5lU3RyaW5nIiwhMCkpO18uSm49Y2xhc3MgZXh0ZW5kcyBabXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMucWg9KDAsXy5lcykoYSl9Z2V0VHlwZSgpe3JldHVybiJMaW5lYXJSaW5nIn1nZXRMZW5ndGgoKXtyZXR1cm4gdGhpcy5xaC5sZW5ndGh9Z2V0QXQoYSl7cmV0dXJuIHRoaXMucWhbYV19Z2V0QXJyYXkoKXtyZXR1cm4gdGhpcy5xaC5zbGljZSgpfWZvckVhY2hMYXRMbmcoYSl7dGhpcy5xaC5mb3JFYWNoKGEpfX07Xy5Kbi5wcm90b3R5cGUuZm9yRWFjaExhdExuZz1fLkpuLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nO18uSm4ucHJvdG90eXBlLmdldEFycmF5PV8uSm4ucHJvdG90eXBlLmdldEFycmF5O18uSm4ucHJvdG90eXBlLmdldEF0PV8uSm4ucHJvdG90eXBlLmdldEF0O18uSm4ucHJvdG90eXBlLmdldExlbmd0aD1fLkpuLnByb3RvdHlwZS5nZXRMZW5ndGg7Xy5Kbi5wcm90b3R5cGUuZ2V0VHlwZT1fLkpuLnByb3RvdHlwZS5nZXRUeXBlO18uSm4ucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8uSm4ucHJvdG90eXBlLmNvbnN0cnVjdG9yOwp2YXIgcGhhPV8uR20oXy5FbShfLkpuLCJnb29nbGUubWFwcy5EYXRhLkxpbmVhclJpbmciLCEwKSk7Xy5Hbj1jbGFzcyBleHRlbmRzIFpte2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5xaD1vaGEoYSl9Z2V0VHlwZSgpe3JldHVybiJNdWx0aUxpbmVTdHJpbmcifWdldExlbmd0aCgpe3JldHVybiB0aGlzLnFoLmxlbmd0aH1nZXRBdChhKXtyZXR1cm4gdGhpcy5xaFthXX1nZXRBcnJheSgpe3JldHVybiB0aGlzLnFoLnNsaWNlKCl9Zm9yRWFjaExhdExuZyhhKXt0aGlzLnFoLmZvckVhY2goYj0+e2IuZm9yRWFjaExhdExuZyhhKX0pfX07Xy5Hbi5wcm90b3R5cGUuZm9yRWFjaExhdExuZz1fLkduLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nO18uR24ucHJvdG90eXBlLmdldEFycmF5PV8uR24ucHJvdG90eXBlLmdldEFycmF5O18uR24ucHJvdG90eXBlLmdldEF0PV8uR24ucHJvdG90eXBlLmdldEF0O18uR24ucHJvdG90eXBlLmdldExlbmd0aD1fLkduLnByb3RvdHlwZS5nZXRMZW5ndGg7Xy5Hbi5wcm90b3R5cGUuZ2V0VHlwZT1fLkduLnByb3RvdHlwZS5nZXRUeXBlO18uRm49Y2xhc3MgZXh0ZW5kcyBabXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMucWg9KDAsXy5lcykoYSl9Z2V0VHlwZSgpe3JldHVybiJNdWx0aVBvaW50In1nZXRMZW5ndGgoKXtyZXR1cm4gdGhpcy5xaC5sZW5ndGh9Z2V0QXQoYSl7cmV0dXJuIHRoaXMucWhbYV19Z2V0QXJyYXkoKXtyZXR1cm4gdGhpcy5xaC5zbGljZSgpfWZvckVhY2hMYXRMbmcoYSl7dGhpcy5xaC5mb3JFYWNoKGEpfX07Xy5Gbi5wcm90b3R5cGUuZm9yRWFjaExhdExuZz1fLkZuLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nO18uRm4ucHJvdG90eXBlLmdldEFycmF5PV8uRm4ucHJvdG90eXBlLmdldEFycmF5O18uRm4ucHJvdG90eXBlLmdldEF0PV8uRm4ucHJvdG90eXBlLmdldEF0O18uRm4ucHJvdG90eXBlLmdldExlbmd0aD1fLkZuLnByb3RvdHlwZS5nZXRMZW5ndGg7Xy5Gbi5wcm90b3R5cGUuZ2V0VHlwZT1fLkZuLnByb3RvdHlwZS5nZXRUeXBlO18uRm4ucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8uRm4ucHJvdG90eXBlLmNvbnN0cnVjdG9yO18uRW49Y2xhc3MgZXh0ZW5kcyBabXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMucWg9cGhhKGEpfWdldFR5cGUoKXtyZXR1cm4iUG9seWdvbiJ9Z2V0TGVuZ3RoKCl7cmV0dXJuIHRoaXMucWgubGVuZ3RofWdldEF0KGEpe3JldHVybiB0aGlzLnFoW2FdfWdldEFycmF5KCl7cmV0dXJuIHRoaXMucWguc2xpY2UoKX1mb3JFYWNoTGF0TG5nKGEpe3RoaXMucWguZm9yRWFjaChiPT57Yi5mb3JFYWNoTGF0TG5nKGEpfSl9fTtfLkVuLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nPV8uRW4ucHJvdG90eXBlLmZvckVhY2hMYXRMbmc7Xy5Fbi5wcm90b3R5cGUuZ2V0QXJyYXk9Xy5Fbi5wcm90b3R5cGUuZ2V0QXJyYXk7Xy5Fbi5wcm90b3R5cGUuZ2V0QXQ9Xy5Fbi5wcm90b3R5cGUuZ2V0QXQ7Xy5Fbi5wcm90b3R5cGUuZ2V0TGVuZ3RoPV8uRW4ucHJvdG90eXBlLmdldExlbmd0aDtfLkVuLnByb3RvdHlwZS5nZXRUeXBlPV8uRW4ucHJvdG90eXBlLmdldFR5cGU7CnZhciBxaGE9Xy5HbShfLkVtKF8uRW4sImdvb2dsZS5tYXBzLkRhdGEuUG9seWdvbiIsITApKTtfLkhuPWNsYXNzIGV4dGVuZHMgWm17Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnFoPXFoYShhKX1nZXRUeXBlKCl7cmV0dXJuIk11bHRpUG9seWdvbiJ9Z2V0TGVuZ3RoKCl7cmV0dXJuIHRoaXMucWgubGVuZ3RofWdldEF0KGEpe3JldHVybiB0aGlzLnFoW2FdfWdldEFycmF5KCl7cmV0dXJuIHRoaXMucWguc2xpY2UoKX1mb3JFYWNoTGF0TG5nKGEpe3RoaXMucWguZm9yRWFjaChiPT57Yi5mb3JFYWNoTGF0TG5nKGEpfSl9fTtfLkhuLnByb3RvdHlwZS5mb3JFYWNoTGF0TG5nPV8uSG4ucHJvdG90eXBlLmZvckVhY2hMYXRMbmc7Xy5Ibi5wcm90b3R5cGUuZ2V0QXJyYXk9Xy5Ibi5wcm90b3R5cGUuZ2V0QXJyYXk7Xy5Ibi5wcm90b3R5cGUuZ2V0QXQ9Xy5Ibi5wcm90b3R5cGUuZ2V0QXQ7Xy5Ibi5wcm90b3R5cGUuZ2V0TGVuZ3RoPV8uSG4ucHJvdG90eXBlLmdldExlbmd0aDtfLkhuLnByb3RvdHlwZS5nZXRUeXBlPV8uSG4ucHJvdG90eXBlLmdldFR5cGU7Cl8uSG4ucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8uSG4ucHJvdG90eXBlLmNvbnN0cnVjdG9yO3ZhciBWY2E9IjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii5zcGxpdCgiIik7Xy5tcT1uZXcgV2Vha01hcDtfLnFiKF8uTG4sXy55bik7Xy5Mbi5wcm90b3R5cGUuUXI9Xy5oYSgyMCk7Xy5yaGE9Xy5Mbi5ERU1PX01BUF9JRD0iREVNT19NQVBfSUQiO3ZhciBncz1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe2E9PT0tMTgwJiZiIT09MTgwJiYoYT0xODApO2I9PT0tMTgwJiZhIT09MTgwJiYoYj0xODApO3RoaXMubG89YTt0aGlzLmhpPWJ9aXNFbXB0eSgpe3JldHVybiB0aGlzLmxvLXRoaXMuaGk9PT0zNjB9aW50ZXJzZWN0cyhhKXt2YXIgYj10aGlzLmxvLGM9dGhpcy5oaTtyZXR1cm4gdGhpcy5pc0VtcHR5KCl8fGEuaXNFbXB0eSgpPyExOl8uT24odGhpcyk/Xy5PbihhKXx8YS5sbzw9dGhpcy5oaXx8YS5oaT49YjpfLk9uKGEpP2EubG88PWN8fGEuaGk+PWI6YS5sbzw9YyYmYS5oaT49Yn1jb250YWlucyhhKXthPT09LTE4MCYmKGE9MTgwKTt2YXIgYj10aGlzLmxvLGM9dGhpcy5oaTtyZXR1cm4gXy5Pbih0aGlzKT8oYT49Ynx8YTw9YykmJiF0aGlzLmlzRW1wdHkoKTphPj1iJiZhPD1jfWV4dGVuZChhKXt0aGlzLmNvbnRhaW5zKGEpfHwodGhpcy5pc0VtcHR5KCk/dGhpcy5sbz10aGlzLmhpPWE6Xy5ObihhLHRoaXMubG8pPF8uTm4odGhpcy5oaSwKYSk/dGhpcy5sbz1hOnRoaXMuaGk9YSl9ZXF1YWxzKGEpe3JldHVybiBNYXRoLmFicyhhLmxvLXRoaXMubG8pJTM2MCtNYXRoLmFicyhhLnNwYW4oKS10aGlzLnNwYW4oKSk8PTFFLTl9c3Bhbigpe3JldHVybiB0aGlzLmlzRW1wdHkoKT8wOl8uT24odGhpcyk/MzYwLSh0aGlzLmxvLXRoaXMuaGkpOnRoaXMuaGktdGhpcy5sb31jZW50ZXIoKXt2YXIgYT0odGhpcy5sbyt0aGlzLmhpKS8yO18uT24odGhpcykmJihhPV8uZG0oYSsxODAsLTE4MCwxODApKTtyZXR1cm4gYX19LHNoYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMubG89YTt0aGlzLmhpPWJ9aXNFbXB0eSgpe3JldHVybiB0aGlzLmxvPnRoaXMuaGl9aW50ZXJzZWN0cyhhKXt2YXIgYj10aGlzLmxvLGM9dGhpcy5oaTtyZXR1cm4gYjw9YS5sbz9hLmxvPD1jJiZhLmxvPD1hLmhpOmI8PWEuaGkmJmI8PWN9Y29udGFpbnMoYSl7cmV0dXJuIGE+PXRoaXMubG8mJmE8PXRoaXMuaGl9ZXh0ZW5kKGEpe3RoaXMuaXNFbXB0eSgpPwp0aGlzLmhpPXRoaXMubG89YTphPHRoaXMubG8/dGhpcy5sbz1hOmE+dGhpcy5oaSYmKHRoaXMuaGk9YSl9ZXF1YWxzKGEpe3JldHVybiB0aGlzLmlzRW1wdHkoKT9hLmlzRW1wdHkoKTpNYXRoLmFicyhhLmxvLXRoaXMubG8pK01hdGguYWJzKHRoaXMuaGktYS5oaSk8PTFFLTl9c3Bhbigpe3JldHVybiB0aGlzLmlzRW1wdHkoKT8wOnRoaXMuaGktdGhpcy5sb31jZW50ZXIoKXtyZXR1cm4odGhpcy5oaSt0aGlzLmxvKS8yfX07Xy5Sbj1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMubmwoYSxiKX1ubChhLGIpe3ZhciBjO2lmKChjPWEpJiZ0eXBlb2YgYz09PSJvYmplY3QiJiYic291dGgiaW4gYyYmIndlc3QiaW4gYyYmIm5vcnRoImluIGMmJiJlYXN0ImluIGMpdHJ5e2E9Xy5UbihhKX1jYXRjaChkKXt9YSBpbnN0YW5jZW9mIF8uUm4/KGM9YS5nZXRTb3V0aFdlc3QoKSxiPWEuZ2V0Tm9ydGhFYXN0KCkpOihjPWEmJl8uWG0oYSksYj1iJiZfLlhtKGIpKTtpZihjKXtiPWJ8fGM7YT1fLmNtKGMubGF0KCksLTkwLDkwKTtsZXQgZD1fLmNtKGIubGF0KCksLTkwLDkwKTt0aGlzLmxhdD1uZXcgc2hhKGEsZCk7Yz1jLmxuZygpO2I9Yi5sbmcoKTtiLWM+PTM2MD90aGlzLmxuZz1uZXcgZ3MoLTE4MCwxODApOihjPV8uZG0oYywtMTgwLDE4MCksYj1fLmRtKGIsLTE4MCwxODApLHRoaXMubG5nPW5ldyBncyhjLGIpKX1lbHNlIHRoaXMubGF0PW5ldyBzaGEoMSwtMSksdGhpcy5sbmc9bmV3IGdzKDE4MCwtMTgwKX1nZXRDZW50ZXIoKXtyZXR1cm4gbmV3IF8uVG0odGhpcy5sYXQuY2VudGVyKCksCnRoaXMubG5nLmNlbnRlcigpKX10b1N0cmluZygpe3JldHVybmAoJHt0aGlzLmdldFNvdXRoV2VzdCgpLnRvU3RyaW5nKCl9LCAke3RoaXMuZ2V0Tm9ydGhFYXN0KCkudG9TdHJpbmcoKX0pYH10b0pTT04oKXtyZXR1cm57c291dGg6dGhpcy5sYXQubG8sd2VzdDp0aGlzLmxuZy5sbyxub3J0aDp0aGlzLmxhdC5oaSxlYXN0OnRoaXMubG5nLmhpfX10b1VybFZhbHVlKGEpe3ZhciBiPXRoaXMuZ2V0U291dGhXZXN0KCksYz10aGlzLmdldE5vcnRoRWFzdCgpO3JldHVybltiLnRvVXJsVmFsdWUoYSksYy50b1VybFZhbHVlKGEpXS5qb2luKCl9ZXF1YWxzKGEpe2lmKCFhKXJldHVybiExO2E9Xy5UbihhKTtyZXR1cm4gdGhpcy5sYXQuZXF1YWxzKGEubGF0KSYmdGhpcy5sbmcuZXF1YWxzKGEubG5nKX1jb250YWlucyhhKXthPV8uWG0oYSk7cmV0dXJuIHRoaXMubGF0LmNvbnRhaW5zKGEubGF0KCkpJiZ0aGlzLmxuZy5jb250YWlucyhhLmxuZygpKX1pbnRlcnNlY3RzKGEpe2E9Xy5UbihhKTsKcmV0dXJuIHRoaXMubGF0LmludGVyc2VjdHMoYS5sYXQpJiZ0aGlzLmxuZy5pbnRlcnNlY3RzKGEubG5nKX1jb250YWluc0JvdW5kcyhhKXthPV8uVG4oYSk7dmFyIGI9dGhpcy5sYXQsYz1hLmxhdDtyZXR1cm4oYy5pc0VtcHR5KCk/ITA6Yy5sbz49Yi5sbyYmYy5oaTw9Yi5oaSkmJlFuKHRoaXMubG5nLGEubG5nKX1leHRlbmQoYSl7YT1fLlhtKGEpO3RoaXMubGF0LmV4dGVuZChhLmxhdCgpKTt0aGlzLmxuZy5leHRlbmQoYS5sbmcoKSk7cmV0dXJuIHRoaXN9dW5pb24oYSl7YT1fLlRuKGEpO2lmKCFhfHxhLmlzRW1wdHkoKSlyZXR1cm4gdGhpczt0aGlzLmxhdC5leHRlbmQoYS5nZXRTb3V0aFdlc3QoKS5sYXQoKSk7dGhpcy5sYXQuZXh0ZW5kKGEuZ2V0Tm9ydGhFYXN0KCkubGF0KCkpO2E9YS5sbmc7dmFyIGI9Xy5Obih0aGlzLmxuZy5sbyxhLmhpKSxjPV8uTm4oYS5sbyx0aGlzLmxuZy5oaSk7aWYoUW4odGhpcy5sbmcsYSkpcmV0dXJuIHRoaXM7aWYoUW4oYSx0aGlzLmxuZykpcmV0dXJuIHRoaXMubG5nPQpuZXcgZ3MoYS5sbyxhLmhpKSx0aGlzO3RoaXMubG5nLmludGVyc2VjdHMoYSk/dGhpcy5sbmc9Yj49Yz9uZXcgZ3ModGhpcy5sbmcubG8sYS5oaSk6bmV3IGdzKGEubG8sdGhpcy5sbmcuaGkpOnRoaXMubG5nPWI8PWM/bmV3IGdzKHRoaXMubG5nLmxvLGEuaGkpOm5ldyBncyhhLmxvLHRoaXMubG5nLmhpKTtyZXR1cm4gdGhpc31nZXRTb3V0aFdlc3QoKXtyZXR1cm4gbmV3IF8uVG0odGhpcy5sYXQubG8sdGhpcy5sbmcubG8sITApfWdldE5vcnRoRWFzdCgpe3JldHVybiBuZXcgXy5UbSh0aGlzLmxhdC5oaSx0aGlzLmxuZy5oaSwhMCl9dG9TcGFuKCl7cmV0dXJuIG5ldyBfLlRtKHRoaXMubGF0LnNwYW4oKSx0aGlzLmxuZy5zcGFuKCksITApfWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5sYXQuaXNFbXB0eSgpfHx0aGlzLmxuZy5pc0VtcHR5KCl9fTtfLlJuLnByb3RvdHlwZS5pc0VtcHR5PV8uUm4ucHJvdG90eXBlLmlzRW1wdHk7Xy5Sbi5wcm90b3R5cGUudG9TcGFuPV8uUm4ucHJvdG90eXBlLnRvU3BhbjsKXy5Sbi5wcm90b3R5cGUuZ2V0Tm9ydGhFYXN0PV8uUm4ucHJvdG90eXBlLmdldE5vcnRoRWFzdDtfLlJuLnByb3RvdHlwZS5nZXRTb3V0aFdlc3Q9Xy5Sbi5wcm90b3R5cGUuZ2V0U291dGhXZXN0O18uUm4ucHJvdG90eXBlLnVuaW9uPV8ubWEoXy5Sbi5wcm90b3R5cGUsInVuaW9uIik7Xy5Sbi5wcm90b3R5cGUuZXh0ZW5kPV8uUm4ucHJvdG90eXBlLmV4dGVuZDtfLlJuLnByb3RvdHlwZS5pbnRlcnNlY3RzPV8uUm4ucHJvdG90eXBlLmludGVyc2VjdHM7Xy5Sbi5wcm90b3R5cGUuY29udGFpbnM9Xy5Sbi5wcm90b3R5cGUuY29udGFpbnM7Xy5Sbi5wcm90b3R5cGUuZXF1YWxzPV8uUm4ucHJvdG90eXBlLmVxdWFscztfLlJuLnByb3RvdHlwZS50b1VybFZhbHVlPV8uUm4ucHJvdG90eXBlLnRvVXJsVmFsdWU7Xy5Sbi5wcm90b3R5cGUudG9KU09OPV8uUm4ucHJvdG90eXBlLnRvSlNPTjtfLlJuLnByb3RvdHlwZS50b1N0cmluZz1fLlJuLnByb3RvdHlwZS50b1N0cmluZzsKXy5Sbi5wcm90b3R5cGUuZ2V0Q2VudGVyPV8uUm4ucHJvdG90eXBlLmdldENlbnRlcjt2YXIgdGhhPV8uU24oLTkwLC0xODAsOTAsMTgwKTtfLm5iKCJtb2R1bGUkZXhwb3J0cyRnb29nbGUzJG1hcHMkYXBpJGphdmFzY3JpcHQkZ2VvbWV0cnkkbGF0X2xuZ19ib3VuZHMuTGF0TG5nQm91bmRzLk1BWF9CT1VORFMiLHRoYSk7Xy5Sbi5wcm90b3R5cGUuZXF1YWxzPV8uUm4ucHJvdG90eXBlLmVxdWFscztfLndtKF8uUm4pO3ZhciBXY2E9Xy5DbSh7c291dGg6Xy5PbSx3ZXN0Ol8uT20sbm9ydGg6Xy5PbSxlYXN0Ol8uT219LCExKTtfLlJuLk1BWF9CT1VORFM9dGhhO18udWhhPV8uRW0oXy5SbiwiTGF0TG5nQm91bmRzIik7Xy5ocz1fLk1tKF8uRW0oXy5MbiwiTWFwIikpO18ucWIoWW4sXy55bik7WW4ucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnFoLmNvbnRhaW5zKGEpfTtZbi5wcm90b3R5cGUuY29udGFpbnM9WW4ucHJvdG90eXBlLmNvbnRhaW5zO1luLnByb3RvdHlwZS5nZXRGZWF0dXJlQnlJZD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5xaC5nZXRGZWF0dXJlQnlJZChhKX07WW4ucHJvdG90eXBlLmdldEZlYXR1cmVCeUlkPVluLnByb3RvdHlwZS5nZXRGZWF0dXJlQnlJZDtZbi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnFoLmFkZChhKX07WW4ucHJvdG90eXBlLmFkZD1Zbi5wcm90b3R5cGUuYWRkO1luLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5xaC5yZW1vdmUoYSl9O1luLnByb3RvdHlwZS5yZW1vdmU9WW4ucHJvdG90eXBlLnJlbW92ZTtZbi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihhKXt0aGlzLnFoLmZvckVhY2goYSl9OwpZbi5wcm90b3R5cGUuZm9yRWFjaD1Zbi5wcm90b3R5cGUuZm9yRWFjaDtZbi5wcm90b3R5cGUuYWRkR2VvSnNvbj1mdW5jdGlvbihhLGIpe3JldHVybiBfLlVjYSh0aGlzLnFoLGEsYil9O1luLnByb3RvdHlwZS5hZGRHZW9Kc29uPVluLnByb3RvdHlwZS5hZGRHZW9Kc29uO1luLnByb3RvdHlwZS5sb2FkR2VvSnNvbj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5xaDtfLkhsKCJkYXRhIikudGhlbihlPT57ZS5ITShkLGEsYixjKX0pfTtZbi5wcm90b3R5cGUubG9hZEdlb0pzb249WW4ucHJvdG90eXBlLmxvYWRHZW9Kc29uO1luLnByb3RvdHlwZS50b0dlb0pzb249ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5xaDtfLkhsKCJkYXRhIikudGhlbihjPT57Yy5ETShiLGEpfSl9O1luLnByb3RvdHlwZS50b0dlb0pzb249WW4ucHJvdG90eXBlLnRvR2VvSnNvbjtZbi5wcm90b3R5cGUub3ZlcnJpZGVTdHlsZT1mdW5jdGlvbihhLGIpe3RoaXMucmgub3ZlcnJpZGVTdHlsZShhLGIpfTsKWW4ucHJvdG90eXBlLm92ZXJyaWRlU3R5bGU9WW4ucHJvdG90eXBlLm92ZXJyaWRlU3R5bGU7WW4ucHJvdG90eXBlLnJldmVydFN0eWxlPWZ1bmN0aW9uKGEpe3RoaXMucmgucmV2ZXJ0U3R5bGUoYSl9O1luLnByb3RvdHlwZS5yZXZlcnRTdHlsZT1Zbi5wcm90b3R5cGUucmV2ZXJ0U3R5bGU7WW4ucHJvdG90eXBlLmNvbnRyb2xzX2NoYW5nZWQ9ZnVuY3Rpb24oKXt0aGlzLmdldCgiY29udHJvbHMiKSYmWmNhKHRoaXMpfTtZbi5wcm90b3R5cGUuZHJhd2luZ01vZGVfY2hhbmdlZD1mdW5jdGlvbigpe3RoaXMuZ2V0KCJkcmF3aW5nTW9kZSIpJiZaY2EodGhpcyl9O18uV24oWW4ucHJvdG90eXBlLHttYXA6Xy5ocyxzdHlsZTpfLlNsLGNvbnRyb2xzOl8uTW0oXy5HbShfLkZtKGtoYSkpKSxjb250cm9sUG9zaXRpb246Xy5NbShfLkZtKF8ucHEpKSxkcmF3aW5nTW9kZTpfLk1tKF8uRm0oa2hhKSl9KTtfLkVxPXtNRVRSSUM6MCxJTVBFUklBTDoxLDA6Ik1FVFJJQyIsMToiSU1QRVJJQUwifTtfLkRxPXtEUklWSU5HOiJEUklWSU5HIixXQUxLSU5HOiJXQUxLSU5HIixCSUNZQ0xJTkc6IkJJQ1lDTElORyIsVFJBTlNJVDoiVFJBTlNJVCIsVFdPX1dIRUVMRVI6IlRXT19XSEVFTEVSIn07Xy5pcz1jbGFzc3tjb25zdHJ1Y3Rvcigpe2NvbnNvbGUud2FybigiZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1NlcnZpY2UgaXMgZGVwcmVjYXRlZCBhcyBvZiBGZWJydWFyeSAyNXRoLCAyMDI2LiBQbGVhc2UgdXNlIGdvb2dsZS5tYXBzLnJvdXRlcy5Sb3V0ZS5jb21wdXRlUm91dGVzIGluc3RlYWQuIEF0IHRoaXMgdGltZSwgZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1NlcnZpY2UgaXMgbm90IHNjaGVkdWxlZCB0byBiZSBkaXNjb250aW51ZWQsIGJ1dCBnb29nbGUubWFwcy5yb3V0ZXMuUm91dGUuY29tcHV0ZVJvdXRlcyBpcyByZWNvbW1lbmRlZCBvdmVyIGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNTZXJ2aWNlLnJvdXRlLiBXaGlsZSBnb29nbGUubWFwcy5EaXJlY3Rpb25zU2VydmljZSB3aWxsIGNvbnRpbnVlIHRvIHJlY2VpdmUgYnVnIGZpeGVzIGZvciBhbnkgbWFqb3IgcmVncmVzc2lvbnMsIGV4aXN0aW5nIGJ1Z3MgaW4gZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1NlcnZpY2Ugd2lsbCBub3QgYmUgYWRkcmVzc2VkLiBBdCBsZWFzdCAxMiBtb250aHMgbm90aWNlIHdpbGwgYmUgZ2l2ZW4gYmVmb3JlIHN1cHBvcnQgaXMgZGlzY29udGludWVkLiBQbGVhc2Ugc2VlIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvbGVnYWN5IGZvciBhZGRpdGlvbmFsIGRldGFpbHMgYW5kIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JvdXRlcy9yb3V0ZXMtanMtbWlncmF0aW9uIGZvciB0aGUgbWlncmF0aW9uIGd1aWRlLiIpOwp0aGlzLm5sKCl9bmwoKXt9cm91dGUoYSxiKXt2YXIgYz12b2lkIDA7dmhhKCl8fChjPV8uTmwoMTU4MDk0KSk7Xy5NKHdpbmRvdywxNTQzNDIpO3ZhciBkPV8uSGwoImRpcmVjdGlvbnMiKS50aGVuKGU9PmUucm91dGUoYSxiLCEwLGMpLCgpPT57YyYmXy5PbChjLDgpfSk7YiYmZC5jYXRjaCgoKT0+e30pO3JldHVybiBkfX07Xy5pcy5wcm90b3R5cGUucm91dGU9Xy5pcy5wcm90b3R5cGUucm91dGU7Xy5pcy5wcm90b3R5cGUuY29uc3RydWN0b3I9Xy5pcy5wcm90b3R5cGUuY29uc3RydWN0b3I7dmFyIHZoYT1fLlFsKCk7Xy53bShfLmlzKTtfLndoYT17T0s6Ik9LIixVTktOT1dOX0VSUk9SOiJVTktOT1dOX0VSUk9SIixPVkVSX1FVRVJZX0xJTUlUOiJPVkVSX1FVRVJZX0xJTUlUIixSRVFVRVNUX0RFTklFRDoiUkVRVUVTVF9ERU5JRUQiLElOVkFMSURfUkVRVUVTVDoiSU5WQUxJRF9SRVFVRVNUIixaRVJPX1JFU1VMVFM6IlpFUk9fUkVTVUxUUyIsTUFYX1dBWVBPSU5UU19FWENFRURFRDoiTUFYX1dBWVBPSU5UU19FWENFRURFRCIsTk9UX0ZPVU5EOiJOT1RfRk9VTkQifTtfLmpzPXtCRVNUX0dVRVNTOiJiZXN0Z3Vlc3MiLE9QVElNSVNUSUM6Im9wdGltaXN0aWMiLFBFU1NJTUlTVElDOiJwZXNzaW1pc3RpYyJ9O18ua3M9e0JVUzoiQlVTIixSQUlMOiJSQUlMIixTVUJXQVk6IlNVQldBWSIsVFJBSU46IlRSQUlOIixUUkFNOiJUUkFNIixMSUdIVF9SQUlMOiJMSUdIVF9SQUlMIn07Xy5scz17TEVTU19XQUxLSU5HOiJMRVNTX1dBTEtJTkciLEZFV0VSX1RSQU5TRkVSUzoiRkVXRVJfVFJBTlNGRVJTIn07Xy54aGE9e1JBSUw6IlJBSUwiLE1FVFJPX1JBSUw6Ik1FVFJPX1JBSUwiLFNVQldBWToiU1VCV0FZIixUUkFNOiJUUkFNIixNT05PUkFJTDoiTU9OT1JBSUwiLEhFQVZZX1JBSUw6IkhFQVZZX1JBSUwiLENPTU1VVEVSX1RSQUlOOiJDT01NVVRFUl9UUkFJTiIsSElHSF9TUEVFRF9UUkFJTjoiSElHSF9TUEVFRF9UUkFJTiIsQlVTOiJCVVMiLElOVEVSQ0lUWV9CVVM6IklOVEVSQ0lUWV9CVVMiLFRST0xMRVlCVVM6IlRST0xMRVlCVVMiLFNIQVJFX1RBWEk6IlNIQVJFX1RBWEkiLEZFUlJZOiJGRVJSWSIsQ0FCTEVfQ0FSOiJDQUJMRV9DQVIiLEdPTkRPTEFfTElGVDoiR09ORE9MQV9MSUZUIixGVU5JQ1VMQVI6IkZVTklDVUxBUiIsT1RIRVI6Ik9USEVSIn07Xy5abj1bXTtfLnFiKF8uYW8sXy55bik7Xy5hby5wcm90b3R5cGUuY2hhbmdlZD1mdW5jdGlvbihhKXthIT0ibWFwIiYmYSE9InBhbmVsInx8Xy5IbCgiZGlyZWN0aW9ucyIpLnRoZW4oYj0+e2IuSk4odGhpcyxhKX0pO2E9PSJwYW5lbCImJl8uJG4odGhpcy5nZXRQYW5lbCgpKX07Xy5XbihfLmFvLnByb3RvdHlwZSx7ZGlyZWN0aW9uczpmdW5jdGlvbihhKXtyZXR1cm4gXy5DbSh7cm91dGVzOl8uR20oXy5JbShfLmttKSl9LCEwKShhKX0sbWFwOl8uaHMscGFuZWw6Xy5NbShfLkltKF8uRG0pKSxyb3V0ZUluZGV4Ol8uYXN9KTtfLnloYT17T0s6Ik9LIixOT1RfRk9VTkQ6Ik5PVF9GT1VORCIsWkVST19SRVNVTFRTOiJaRVJPX1JFU1VMVFMifTtfLm1zPWNsYXNze2NvbnN0cnVjdG9yKCl7Y29uc29sZS53YXJuKCJnb29nbGUubWFwcy5EaXN0YW5jZU1hdHJpeCBpcyBkZXByZWNhdGVkIGFzIG9mIEZlYnJ1YXJ5IDI1dGgsIDIwMjYuIFBsZWFzZSB1c2UgZ29vZ2xlLm1hcHMucm91dGVzLlJvdXRlTWF0cml4LmNvbXB1dGVSb3V0ZU1hdHJpeCBpbnN0ZWFkLiBBdCB0aGlzIHRpbWUsIGdvb2dsZS5tYXBzLkRpc3RhbmNlTWF0cml4IGlzIG5vdCBzY2hlZHVsZWQgdG8gYmUgZGlzY29udGludWVkLCBidXQgZ29vZ2xlLm1hcHMucm91dGVzLlJvdXRlTWF0cml4LmNvbXB1dGVSb3V0ZU1hdHJpeCBpcyByZWNvbW1lbmRlZCBvdmVyIGdvb2dsZS5tYXBzLkRpc3RhbmNlTWF0cml4LmdldERpc3RhbmNlTWF0cml4LiBXaGlsZSBnb29nbGUubWFwcy5EaXN0YW5jZU1hdHJpeCB3aWxsIGNvbnRpbnVlIHRvIHJlY2VpdmUgYnVnIGZpeGVzIGZvciBhbnkgbWFqb3IgcmVncmVzc2lvbnMsIGV4aXN0aW5nIGJ1Z3MgaW4gZ29vZ2xlLm1hcHMuRGlzdGFuY2VNYXRyaXggd2lsbCBub3QgYmUgYWRkcmVzc2VkLiBBdCBsZWFzdCAxMiBtb250aHMgbm90aWNlIHdpbGwgYmUgZ2l2ZW4gYmVmb3JlIHN1cHBvcnQgaXMgZGlzY29udGludWVkLiBQbGVhc2Ugc2VlIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvbGVnYWN5IGZvciBhZGRpdGlvbmFsIGRldGFpbHMgYW5kIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3JvdXRlcy9yb3V0ZS1tYXRyaXgtanMtbWlncmF0aW9uIGZvciB0aGUgbWlncmF0aW9uIGd1aWRlLiIpOwp0aGlzLm5sKCl9bmwoKXt9Z2V0RGlzdGFuY2VNYXRyaXgoYSxiKXtfLk0od2luZG93LDE1NDM0NCk7dmFyIGM9Xy5IbCgiZGlzdGFuY2VfbWF0cml4IikudGhlbihkPT5kLmdldERpc3RhbmNlTWF0cml4KGEsYikpO2ImJmMuY2F0Y2goKCk9Pnt9KTtyZXR1cm4gY319O18ubXMucHJvdG90eXBlLmdldERpc3RhbmNlTWF0cml4PV8ubXMucHJvdG90eXBlLmdldERpc3RhbmNlTWF0cml4O18ubXMucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8ubXMucHJvdG90eXBlLmNvbnN0cnVjdG9yO18ud20oXy5tcyk7Xy56aGE9e09LOiJPSyIsSU5WQUxJRF9SRVFVRVNUOiJJTlZBTElEX1JFUVVFU1QiLE9WRVJfUVVFUllfTElNSVQ6Ik9WRVJfUVVFUllfTElNSVQiLFJFUVVFU1RfREVOSUVEOiJSRVFVRVNUX0RFTklFRCIsVU5LTk9XTl9FUlJPUjoiVU5LTk9XTl9FUlJPUiIsTUFYX0VMRU1FTlRTX0VYQ0VFREVEOiJNQVhfRUxFTUVOVFNfRVhDRUVERUQiLE1BWF9ESU1FTlNJT05TX0VYQ0VFREVEOiJNQVhfRElNRU5TSU9OU19FWENFRURFRCJ9O18ubnM9Y2xhc3N7Z2V0RWxldmF0aW9uQWxvbmdQYXRoKGEsYil7cmV0dXJuICRjYShhLGIpfWdldEVsZXZhdGlvbkZvckxvY2F0aW9ucyhhLGIpe3JldHVybiBhZGEoYSxiKX19O18ubnMucHJvdG90eXBlLmdldEVsZXZhdGlvbkZvckxvY2F0aW9ucz1fLm5zLnByb3RvdHlwZS5nZXRFbGV2YXRpb25Gb3JMb2NhdGlvbnM7Xy5ucy5wcm90b3R5cGUuZ2V0RWxldmF0aW9uQWxvbmdQYXRoPV8ubnMucHJvdG90eXBlLmdldEVsZXZhdGlvbkFsb25nUGF0aDtfLm5zLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLm5zLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtfLkFoYT17T0s6Ik9LIixVTktOT1dOX0VSUk9SOiJVTktOT1dOX0VSUk9SIixPVkVSX1FVRVJZX0xJTUlUOiJPVkVSX1FVRVJZX0xJTUlUIixSRVFVRVNUX0RFTklFRDoiUkVRVUVTVF9ERU5JRUQiLElOVkFMSURfUkVRVUVTVDoiSU5WQUxJRF9SRVFVRVNUIixPUToiREFUQV9OT1RfQVZBSUxBQkxFIn07dmFyIG9zPWNsYXNze2NvbnN0cnVjdG9yKCl7Xy5IbCgiZ2VvY29kZXIiKX1nZW9jb2RlKGEsYil7Xy5NKHdpbmRvdywxNTU0NjgpO3JldHVybiBjZGEoYSxiKX19O29zLnByb3RvdHlwZS5nZW9jb2RlPW9zLnByb3RvdHlwZS5nZW9jb2RlO29zLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1vcy5wcm90b3R5cGUuY29uc3RydWN0b3I7dmFyIGJkYT1fLlFsKCk7Xy5CaGE9e1JPT0ZUT1A6IlJPT0ZUT1AiLFJBTkdFX0lOVEVSUE9MQVRFRDoiUkFOR0VfSU5URVJQT0xBVEVEIixHRU9NRVRSSUNfQ0VOVEVSOiJHRU9NRVRSSUNfQ0VOVEVSIixBUFBST1hJTUFURToiQVBQUk9YSU1BVEUifTtfLlFvPWNsYXNze2NvbnN0cnVjdG9yKGEsYj0hMSl7dmFyIGM9Zj0+UW0oIkxhdExuZ0FsdGl0dWRlIiwibGF0IiwoKT0+KDAsXy5YcikoZikpLGQ9dHlwZW9mIGEubGF0PT09ImZ1bmN0aW9uIj9hLmxhdCgpOmEubGF0O2M9ZCYmYj9jKGQpOl8uY20oYyhkKSwtOTAsOTApO2Q9Zj0+UW0oIkxhdExuZ0FsdGl0dWRlIiwibG5nIiwoKT0+KDAsXy5YcikoZikpO3ZhciBlPXR5cGVvZiBhLmxuZz09PSJmdW5jdGlvbiI/YS5sbmcoKTphLmxuZztiPWUmJmI/ZChlKTpfLmRtKGQoZSksLTE4MCwxODApO2Q9Zj0+UW0oIkxhdExuZ0FsdGl0dWRlIiwiYWx0aXR1ZGUiLCgpPT4oMCxfLmFzKShmKSk7YT1hLmFsdGl0dWRlIT09dm9pZCAwP2QoYS5hbHRpdHVkZSl8fDA6MDt0aGlzLk5EPWM7dGhpcy5PRD1iO3RoaXMuTUQ9YX1nZXQgbGF0KCl7cmV0dXJuIHRoaXMuTkR9Z2V0IGxuZygpe3JldHVybiB0aGlzLk9EfWdldCBhbHRpdHVkZSgpe3JldHVybiB0aGlzLk1EfWVxdWFscyhhKXtyZXR1cm4gYT8KXy5pbSh0aGlzLk5ELGEubGF0KSYmXy5pbSh0aGlzLk9ELGEubG5nKSYmXy5pbSh0aGlzLk1ELGEuYWx0aXR1ZGUpOiExfXRvSlNPTigpe3JldHVybntsYXQ6dGhpcy5ORCxsbmc6dGhpcy5PRCxhbHRpdHVkZTp0aGlzLk1EfX19O18uUW8uZnJvbVByb3RvPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5Rbyh7bGF0OmEucmgoKSxsbmc6YS50aCgpfSl9O18uUW8ucHJvdG90eXBlLnRvSlNPTj1fLlFvLnByb3RvdHlwZS50b0pTT047Xy5Rby5wcm90b3R5cGUuZXF1YWxzPV8uUW8ucHJvdG90eXBlLmVxdWFscztfLlFvLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLlFvLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtPYmplY3QuZGVmaW5lUHJvcGVydGllcyhfLlFvLnByb3RvdHlwZSx7bGF0OntlbnVtZXJhYmxlOiEwfSxsbmc6e2VudW1lcmFibGU6ITB9LGFsdGl0dWRlOntlbnVtZXJhYmxlOiEwfX0pO18uQ2hhPV8uQ20oe2hlYWRpbmc6Xy5NbShfLlhyKSx0aWx0Ol8uTW0oXy5Ycikscm9sbDpfLk1tKF8uWHIpfSwhMSk7Xy5wcz1jbGFzc3tjb25zdHJ1Y3RvcihhKXt2YXIgYj0oYyxkKT0+UW0oIk9yaWVudGF0aW9uM0QiLGMsKCk9PigwLF8uWHIpKGQpKTt0aGlzLnFoPWEuaGVhZGluZyE9bnVsbD9fLmRtKGIoImhlYWRpbmciLGEuaGVhZGluZyksMCwzNjApOjA7dGhpcy5yaD1hLnRpbHQhPW51bGw/Xy5kbShiKCJ0aWx0IixhLnRpbHQpLDAsMzYwKTowO3RoaXMuc2g9YS5yb2xsIT1udWxsP18uZG0oYigicm9sbCIsYS5yb2xsKSwwLDM2MCk6MDthIGluc3RhbmNlb2YgXy5wc3x8Um0oYSx0aGlzLCJPcmllbnRhdGlvbjNEIil9Z2V0IGhlYWRpbmcoKXtyZXR1cm4gdGhpcy5xaH1nZXQgdGlsdCgpe3JldHVybiB0aGlzLnJofWdldCByb2xsKCl7cmV0dXJuIHRoaXMuc2h9ZXF1YWxzKGEpe2lmKCFhKXJldHVybiExO3ZhciBiPWE7aWYoYiBpbnN0YW5jZW9mIF8ucHMpYT1iO2Vsc2UgdHJ5e2I9KDAsXy5DaGEpKGIpLGE9bmV3IF8ucHMoYil9Y2F0Y2goYyl7dGhyb3cgXy5BbSgibm90IGFuIE9yaWVudGF0aW9uM0Qgb3IgT3JpZW50YXRpb24zRExpdGVyYWwiLApjKTt9cmV0dXJuIF8uaW0odGhpcy5oZWFkaW5nLGEuaGVhZGluZykmJl8uaW0odGhpcy50aWx0LGEudGlsdCkmJl8uaW0odGhpcy5yb2xsLGEucm9sbCl9dG9KU09OKCl7cmV0dXJue2hlYWRpbmc6dGhpcy5oZWFkaW5nLHRpbHQ6dGhpcy50aWx0LHJvbGw6dGhpcy5yb2xsfX19O18ucHMucHJvdG90eXBlLnRvSlNPTj1fLnBzLnByb3RvdHlwZS50b0pTT047Xy5wcy5wcm90b3R5cGUuZXF1YWxzPV8ucHMucHJvdG90eXBlLmVxdWFscztfLnBzLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLnBzLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtPYmplY3QuZGVmaW5lUHJvcGVydGllcyhfLnBzLnByb3RvdHlwZSx7aGVhZGluZzp7ZW51bWVyYWJsZTohMH0sdGlsdDp7ZW51bWVyYWJsZTohMH0scm9sbDp7ZW51bWVyYWJsZTohMH19KTtfLmJvPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy54PWE7dGhpcy55PWJ9dG9TdHJpbmcoKXtyZXR1cm5gKCR7dGhpcy54fSwgJHt0aGlzLnl9KWB9ZXF1YWxzKGEpe3JldHVybiBhP2EueD09dGhpcy54JiZhLnk9PXRoaXMueTohMX1yb3VuZCgpe3RoaXMueD1NYXRoLnJvdW5kKHRoaXMueCk7dGhpcy55PU1hdGgucm91bmQodGhpcy55KX19O18uYm8ucHJvdG90eXBlLnRCPV8uaGEoMjEpO18uYm8ucHJvdG90eXBlLmVxdWFscz1fLmJvLnByb3RvdHlwZS5lcXVhbHM7Xy5iby5wcm90b3R5cGUudG9TdHJpbmc9Xy5iby5wcm90b3R5cGUudG9TdHJpbmc7Xy5wbz1uZXcgXy5ibygwLDApO18uYm8ucHJvdG90eXBlLmVxdWFscz1fLmJvLnByb3RvdHlwZS5lcXVhbHM7Xy5nbz1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkKXt0aGlzLm5sKGEsYixjLGQpfW5sKGEsYixjLGQpe3RoaXMud2lkdGg9YTt0aGlzLmhlaWdodD1iO3RoaXMucmg9Yzt0aGlzLnFoPWR9dG9TdHJpbmcoKXtyZXR1cm5gKCR7dGhpcy53aWR0aH0sICR7dGhpcy5oZWlnaHR9KWB9ZXF1YWxzKGEpe3JldHVybiBhP2Eud2lkdGg9PT10aGlzLndpZHRoJiZhLmhlaWdodD09PXRoaXMuaGVpZ2h0OiExfX07Xy5nby5wcm90b3R5cGUuZXF1YWxzPV8uZ28ucHJvdG90eXBlLmVxdWFscztfLmdvLnByb3RvdHlwZS50b1N0cmluZz1fLmdvLnByb3RvdHlwZS50b1N0cmluZztfLmdvLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLmdvLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtfLnFvPW5ldyBfLmdvKDAsMCk7Xy53bShfLmdvKTtfLkRoYT1fLkNtKHt4Ol8uWHIseTpfLlhyLHo6Xy5Ycn0sITEpO18ucXM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dmFyIGI9KGMsZCk9PlFtKCJWZWN0b3IzRCIsYywoKT0+KDAsXy5YcikoZCkpO3RoaXMucWg9YigieCIsYS54KTt0aGlzLnJoPWIoInkiLGEueSk7dGhpcy5zaD1iKCJ6IixhLnopO2EgaW5zdGFuY2VvZiBfLnFzfHxSbShhLHRoaXMsIlZlY3RvcjNEIil9Z2V0IHgoKXtyZXR1cm4gdGhpcy5xaH1nZXQgeSgpe3JldHVybiB0aGlzLnJofWdldCB6KCl7cmV0dXJuIHRoaXMuc2h9ZXF1YWxzKGEpe2lmKCFhKXJldHVybiExO2lmKCEoYSBpbnN0YW5jZW9mIF8ucXMpKXRyeXtsZXQgYj0oMCxfLkRoYSkoYSk7YT1uZXcgXy5xcyhiKX1jYXRjaChiKXt0aHJvdyBfLkFtKCJub3QgYSBWZWN0b3IzRCBvciBWZWN0b3IzRExpdGVyYWwiLGIpO31yZXR1cm4gXy5pbSh0aGlzLnFoLGEueCkmJl8uaW0odGhpcy5yaCxhLnkpJiZfLmltKHRoaXMuc2gsYS56KX10b0pTT04oKXtyZXR1cm57eDp0aGlzLngseTp0aGlzLnksejp0aGlzLnp9fX07Cl8ucXMucHJvdG90eXBlLnRvSlNPTj1fLnFzLnByb3RvdHlwZS50b0pTT047Xy5xcy5wcm90b3R5cGUuZXF1YWxzPV8ucXMucHJvdG90eXBlLmVxdWFscztfLnFzLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLnFzLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtPYmplY3QuZGVmaW5lUHJvcGVydGllcyhfLnFzLnByb3RvdHlwZSx7eDp7ZW51bWVyYWJsZTohMH0seTp7ZW51bWVyYWJsZTohMH0sejp7ZW51bWVyYWJsZTohMH19KTt2YXIgRWhhPV8uSm0oam8sIm5vdCBhIHZhbGlkIEluZm9XaW5kb3cgYW5jaG9yIik7Xy5ycz17UkVRVUlSRUQ6IlJFUVVJUkVEIixSRVFVSVJFRF9BTkRfSElERVNfT1BUSU9OQUw6IlJFUVVJUkVEX0FORF9ISURFU19PUFRJT05BTCIsT1BUSU9OQUxfQU5EX0hJREVTX0xPV0VSX1BSSU9SSVRZOiJPUFRJT05BTF9BTkRfSElERVNfTE9XRVJfUFJJT1JJVFkifTt2YXIgRmhhPXtDSVJDTEU6MCxGT1JXQVJEX0NMT1NFRF9BUlJPVzoxLEZPUldBUkRfT1BFTl9BUlJPVzoyLEJBQ0tXQVJEX0NMT1NFRF9BUlJPVzozLEJBQ0tXQVJEX09QRU5fQVJST1c6NCwwOiJDSVJDTEUiLDE6IkZPUldBUkRfQ0xPU0VEX0FSUk9XIiwyOiJGT1JXQVJEX09QRU5fQVJST1ciLDM6IkJBQ0tXQVJEX0NMT1NFRF9BUlJPVyIsNDoiQkFDS1dBUkRfT1BFTl9BUlJPVyJ9O3ZhciBzcz1jbGFzcyBleHRlbmRzIF8ueW57Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLm5sKGEpfW5sKGEpe2E9YXx8e307YS5jbGlja2FibGU9Xy5sbShhLmNsaWNrYWJsZSwhMCk7YS52aXNpYmxlPV8ubG0oYS52aXNpYmxlLCEwKTt0aGlzLnNldFZhbHVlcyhhKTtfLkhsKCJtYXJrZXIiKX19OwpfLlduKHNzLnByb3RvdHlwZSx7cG9zaXRpb246Xy5NbShfLlhtKSx0aXRsZTpfLmJzLGljb246Xy5NbShfLkttKFtfLmNyLF8uSW0oYT0+YSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZhLmxvY2FsTmFtZT09PSJnbXAtcGluIiwic2hvdWxkIGJlIGEgUGluVmlldyIpLHtpQzpfLk5tKCJ1cmwiKSx0aGVuOl8uQ20oe3VybDpfLmNyLHNjYWxlZFNpemU6Xy5NbShpbyksc2l6ZTpfLk1tKGlvKSxvcmlnaW46Xy5NbShjbyksYW5jaG9yOl8uTW0oY28pLGxhYmVsT3JpZ2luOl8uTW0oY28pLHBhdGg6Xy5JbShhPT5hPT1udWxsKX0sITApfSx7aUM6Xy5ObSgicGF0aCIpLHRoZW46Xy5DbSh7cGF0aDpfLkttKFtfLmNyLF8uRm0oRmhhKV0pLGFuY2hvcjpfLk1tKGNvKSxsYWJlbE9yaWdpbjpfLk1tKGNvKSxmaWxsQ29sb3I6Xy5icyxmaWxsT3BhY2l0eTpfLmFzLHJvdGF0aW9uOl8uYXMsc2NhbGU6Xy5hcyxzdHJva2VDb2xvcjpfLmJzLHN0cm9rZU9wYWNpdHk6Xy5hcyxzdHJva2VXZWlnaHQ6Xy5hcywKdXJsOl8uSW0oYT0+YT09bnVsbCl9LCEwKX1dKSksbGFiZWw6Xy5NbShfLkttKFtfLmNyLHtpQzpfLk5tKCJ0ZXh0IiksdGhlbjpfLkNtKHt0ZXh0Ol8uY3IsZm9udFNpemU6Xy5icyxmb250V2VpZ2h0Ol8uYnMsZm9udEZhbWlseTpfLmJzLGNsYXNzTmFtZTpfLmJzfSwhMCl9XSkpLHNoYWRvdzpfLlNsLHNoYXBlOl8uU2wsY3Vyc29yOl8uYnMsY2xpY2thYmxlOl8uY3MsYW5pbWF0aW9uOl8uU2wsZHJhZ2dhYmxlOl8uY3MsdmlzaWJsZTpfLmNzLGZsYXQ6Xy5TbCx6SW5kZXg6Xy5hcyxvcGFjaXR5Ol8uYXMscGxhY2U6Xy5NbShfLkxtKF8uQ20oe3BsYWNlSWQ6Xy5icyxxdWVyeTpfLmJzLGxvY2F0aW9uOl8uWG19KSxmdW5jdGlvbihhKXtpZihhLnBsYWNlSWQmJmEucXVlcnkpdGhyb3cgXy5BbSgiY2Fubm90IHNldCBib3RoIHBsYWNlSWQgYW5kIHF1ZXJ5Iik7aWYoIWEucGxhY2VJZCYmIWEucXVlcnkpdGhyb3cgXy5BbSgibXVzdCBzZXQgb25lIG9mIHBsYWNlSWQgb3IgcXVlcnkiKTsKcmV0dXJuIGF9KSksYXR0cmlidXRpb246Xy5NbShfLkNtKHtzb3VyY2U6Xy5jcix3ZWJVcmw6Xy5icyxpb3NEZWVwTGlua0lkOl8uYnN9KSl9KTtfLndtKHNzKTt2YXIgR2hhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5zaD1hO3RoaXMudGg9Yjt0aGlzLnJoPTA7dGhpcy5xaD1udWxsfWdldCgpe2lmKHRoaXMucmg+MCl7dGhpcy5yaC0tO3ZhciBhPXRoaXMucWg7dGhpcy5xaD1hLm5leHQ7YS5uZXh0PW51bGx9ZWxzZSBhPXRoaXMuc2goKTtyZXR1cm4gYX19O3ZhciBIaGE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnJoPXRoaXMucWg9bnVsbH1hZGQoYSxiKXt2YXIgYz1mZGEuZ2V0KCk7Yy5zZXQoYSxiKTt0aGlzLnJoP3RoaXMucmgubmV4dD1jOnRoaXMucWg9Yzt0aGlzLnJoPWN9cmVtb3ZlKCl7dmFyIGE9bnVsbDt0aGlzLnFoJiYoYT10aGlzLnFoLHRoaXMucWg9dGhpcy5xaC5uZXh0LHRoaXMucWh8fCh0aGlzLnJoPW51bGwpLGEubmV4dD1udWxsKTtyZXR1cm4gYX19LGZkYT1uZXcgR2hhKCgpPT5uZXcgSWhhLGE9PmEucmVzZXQoKSksSWhhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5uZXh0PXRoaXMuc2NvcGU9dGhpcy5Udj1udWxsfXNldChhLGIpe3RoaXMuVHY9YTt0aGlzLnNjb3BlPWI7dGhpcy5uZXh0PW51bGx9cmVzZXQoKXt0aGlzLm5leHQ9dGhpcy5zY29wZT10aGlzLlR2PW51bGx9fTt2YXIgdnMsa28sZWRhLEpoYTtrbz0hMTtlZGE9bmV3IEhoYTtfLnlwPShhLGIpPT57dnN8fEpoYSgpO2tvfHwodnMoKSxrbz0hMCk7ZWRhLmFkZChhLGIpfTtKaGE9KCk9Pnt2YXIgYT1Qcm9taXNlLnJlc29sdmUodm9pZCAwKTt2cz0oKT0+e2EudGhlbihnZGEpfX07dmFyIEtoYTsKXy5MaGE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5haT1bXTt0aGlzLmRzPWEmJmEuZHM/YS5kczooKT0+e307dGhpcy5zdD1hJiZhLnN0P2Euc3Q6KCk9Pnt9fWFkZExpc3RlbmVyKGEsYil7aWRhKHRoaXMsYSxiLCExKX1hZGRMaXN0ZW5lck9uY2UoYSxiKXtpZGEodGhpcyxhLGIsITApfXJlbW92ZUxpc3RlbmVyKGEsYil7dGhpcy5haS5sZW5ndGgmJigoYT10aGlzLmFpLmZpbmQoaGRhKGEsYikpKSYmdGhpcy5haS5zcGxpY2UodGhpcy5haS5pbmRleE9mKGEpLDEpLHRoaXMuYWkubGVuZ3RofHx0aGlzLmRzKCkpfXR1KGEsYil7dmFyIGM9dGhpcy5haS5zbGljZSgwKSxkPSgpPT57Zm9yKGxldCBlIG9mIGMpYShmPT57aWYoZS5vbmNlKXtpZihlLm9uY2UuRUcpcmV0dXJuO2Uub25jZS5FRz0hMDt0aGlzLmFpLnNwbGljZSh0aGlzLmFpLmluZGV4T2YoZSksMSk7dGhpcy5haS5sZW5ndGh8fHRoaXMuZHMoKX1lLlR2LmNhbGwoZS5jb250ZXh0LGYpfSl9O2ImJmIuc3luYz9kKCk6CihLaGF8fF8ueXApKGQpfX07S2hhPW51bGw7Xy5NaGE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmFpPW5ldyBfLkxoYSh7ZHM6KCk9Pnt0aGlzLmRzKCl9LHN0OigpPT57dGhpcy5zdCgpfX0pfXN0KCl7fWRzKCl7fWFkZExpc3RlbmVyKGEsYil7dGhpcy5haS5hZGRMaXN0ZW5lcihhLGIpfWFkZExpc3RlbmVyT25jZShhLGIpe3RoaXMuYWkuYWRkTGlzdGVuZXJPbmNlKGEsYil9cmVtb3ZlTGlzdGVuZXIoYSxiKXt0aGlzLmFpLnJlbW92ZUxpc3RlbmVyKGEsYil9bm90aWZ5KGEpe3RoaXMuYWkudHUoYj0+e2IodGhpcy5nZXQoKSl9LGEpfX07Xy5OaGE9Y2xhc3MgZXh0ZW5kcyBfLk1oYXtjb25zdHJ1Y3RvcihhPSExKXtzdXBlcigpO3RoaXMuc2g9YX1zZXQoYSl7dGhpcy5zaCYmdGhpcy5nZXQoKT09PWF8fCh0aGlzLnJoKGEpLHRoaXMubm90aWZ5KCkpfX07Xy5sbz1jbGFzcyBleHRlbmRzIF8uTmhhe2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYik7dGhpcy52YWx1ZT1hfWdldCgpe3JldHVybiB0aGlzLnZhbHVlfXJoKGEpe3RoaXMudmFsdWU9YX19O18ucWIoXy5ubyxfLnluKTt2YXIgd3M9Xy5NbShfLkVtKF8ubm8sIlN0cmVldFZpZXdQYW5vcmFtYSIpKTt2YXIgT2hhO09oYT0hMTsKXy54cz1jbGFzcyBleHRlbmRzIHNze2dldE1hcCgpe3JldHVybiB0aGlzLmdldCgibWFwIil9c2V0TWFwKGEpe3RoaXMuc2V0KCJtYXAiLGEpfXNldE9wdGlvbnMoYSl7dGhpcy5zZXRWYWx1ZXMoYSl9Y29uc3RydWN0b3IoYSl7c3VwZXIoYSk7dGhpcy5ubChhKX1ubChhKXt2YXIgYj1hP2EuaW50ZXJuYWxNYXJrZXI6ITE7T2hhfHxifHwoT2hhPSEwLGNvbnNvbGUud2FybigiQXMgb2YgRmVicnVhcnkgMjFzdCwgMjAyNCwgZ29vZ2xlLm1hcHMuTWFya2VyIGlzIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgZ29vZ2xlLm1hcHMubWFya2VyLkFkdmFuY2VkTWFya2VyRWxlbWVudCBpbnN0ZWFkLiBBdCB0aGlzIHRpbWUsIGdvb2dsZS5tYXBzLk1hcmtlciBpcyBub3Qgc2NoZWR1bGVkIHRvIGJlIGRpc2NvbnRpbnVlZCwgYnV0IGdvb2dsZS5tYXBzLm1hcmtlci5BZHZhbmNlZE1hcmtlckVsZW1lbnQgaXMgcmVjb21tZW5kZWQgb3ZlciBnb29nbGUubWFwcy5NYXJrZXIuIFdoaWxlIGdvb2dsZS5tYXBzLk1hcmtlciB3aWxsIGNvbnRpbnVlIHRvIHJlY2VpdmUgYnVnIGZpeGVzIGZvciBhbnkgbWFqb3IgcmVncmVzc2lvbnMsIGV4aXN0aW5nIGJ1Z3MgaW4gZ29vZ2xlLm1hcHMuTWFya2VyIHdpbGwgbm90IGJlIGFkZHJlc3NlZC4gQXQgbGVhc3QgMTIgbW9udGhzIG5vdGljZSB3aWxsIGJlIGdpdmVuIGJlZm9yZSBzdXBwb3J0IGlzIGRpc2NvbnRpbnVlZC4gUGxlYXNlIHNlZSBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RlcHJlY2F0aW9ucyBmb3IgYWRkaXRpb25hbCBkZXRhaWxzIGFuZCBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9hZHZhbmNlZC1tYXJrZXJzL21pZ3JhdGlvbiBmb3IgdGhlIG1pZ3JhdGlvbiBndWlkZS4iKSk7amRhKHRoaXMpOwpzcy5jYWxsKHRoaXMsYSl9bWFwX2NoYW5nZWQoKXtqZGEodGhpcyk7dmFyIGE9dGhpcy5nZXQoIm1hcCIpO2E9YSYmYS5fX2dtLm1hcmtlcnM7dGhpcy5fX2dtJiZ0aGlzLl9fZ20uc2V0PT09YXx8KHRoaXMuX19nbSYmdGhpcy5fX2dtLnNldCYmdGhpcy5fX2dtLnNldC5yZW1vdmUodGhpcyksKHRoaXMuX19nbS5zZXQ9YSkmJl8uRHAoYSx0aGlzKSl9fTtfLnhzLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1fLnhzLnByb3RvdHlwZS5jb25zdHJ1Y3RvcjtfLnhzLnByb3RvdHlwZS5zZXRPcHRpb25zPV8ueHMucHJvdG90eXBlLnNldE9wdGlvbnM7Xy54cy5wcm90b3R5cGUuc2V0TWFwPV8ueHMucHJvdG90eXBlLnNldE1hcDtfLnhzLnByb3RvdHlwZS5nZXRNYXA9Xy54cy5wcm90b3R5cGUuZ2V0TWFwO18ueHMuTUFYX1pJTkRFWD0xRTY7Xy5uYigibW9kdWxlJGV4cG9ydHMkZ29vZ2xlMyRtYXBzJGFwaSRqYXZhc2NyaXB0JG1hcmtlciRtYXJrZXIuTWFya2VyLk1BWF9aSU5ERVgiLF8ueHMuTUFYX1pJTkRFWCk7Cl8uV24oXy54cy5wcm90b3R5cGUse21hcDpfLkttKFtfLmhzLHdzXSl9KTtfLndtKF8ueHMpO3ZhciBQaGE9Y2xhc3MgZXh0ZW5kcyBfLnlue2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLmluZm9XaW5kb3c9YTt0aGlzLmZ0PWI7dGhpcy5pbmZvV2luZG93LmFkZExpc3RlbmVyKCJtYXBfY2hhbmdlZCIsKCk9Pnt2YXIgYz10aGlzLmdldCgiaW50ZXJuYWxBbmNob3IiKSxkPXJvKGMpO2pvKGMpJiZkJiZkLnNldCgiaXNPcGVuIiwhIXRoaXMuaW5mb1dpbmRvdy5nZXQoIm1hcCIpKTshdGhpcy5pbmZvV2luZG93LmdldCgibWFwIikmJmQmJmQuZ2V0KCJtYXAiKSYmdGhpcy5zZXQoImludGVybmFsQW5jaG9yIixudWxsKX0pO3RoaXMuYmluZFRvKCJwZW5kaW5nRm9jdXMiLHRoaXMuaW5mb1dpbmRvdyk7dGhpcy5iaW5kVG8oIm1hcCIsdGhpcy5pbmZvV2luZG93KTt0aGlzLmJpbmRUbygiZGlzYWJsZUF1dG9QYW4iLHRoaXMuaW5mb1dpbmRvdyk7dGhpcy5iaW5kVG8oImhlYWRlckRpc2FibGVkIix0aGlzLmluZm9XaW5kb3cpO3RoaXMuYmluZFRvKCJtYXhXaWR0aCIsdGhpcy5pbmZvV2luZG93KTsKdGhpcy5iaW5kVG8oIm1pbldpZHRoIix0aGlzLmluZm9XaW5kb3cpO3RoaXMuYmluZFRvKCJwb3NpdGlvbiIsdGhpcy5pbmZvV2luZG93KTt0aGlzLmJpbmRUbygiekluZGV4Iix0aGlzLmluZm9XaW5kb3cpO3RoaXMuYmluZFRvKCJhcmlhTGFiZWwiLHRoaXMuaW5mb1dpbmRvdyk7dGhpcy5iaW5kVG8oImludGVybmFsQW5jaG9yIix0aGlzLmluZm9XaW5kb3csImFuY2hvciIpO3RoaXMuYmluZFRvKCJpbnRlcm5hbEhlYWRlckNvbnRlbnQiLHRoaXMuaW5mb1dpbmRvdywiaGVhZGVyQ29udGVudCIpO3RoaXMuYmluZFRvKCJpbnRlcm5hbENvbnRlbnQiLHRoaXMuaW5mb1dpbmRvdywiY29udGVudCIpO3RoaXMuYmluZFRvKCJpbnRlcm5hbFBpeGVsT2Zmc2V0Iix0aGlzLmluZm9XaW5kb3csInBpeGVsT2Zmc2V0Iik7dGhpcy5iaW5kVG8oInNob3VsZEZvY3VzIix0aGlzLmluZm9XaW5kb3cpfWludGVybmFsQW5jaG9yX2NoYW5nZWQoKXt2YXIgYT1ybyh0aGlzLmdldCgiaW50ZXJuYWxBbmNob3IiKSk7Cm9vKHRoaXMsImF0dHJpYnV0aW9uIixhKTtvbyh0aGlzLCJwbGFjZSIsYSk7b28odGhpcywicGl4ZWxQb3NpdGlvbiIsYSk7b28odGhpcywiaW50ZXJuYWxBbmNob3JNYXAiLGEsIm1hcCIsITApO3RoaXMuaW50ZXJuYWxBbmNob3JNYXBfY2hhbmdlZCghMCk7b28odGhpcywiaW50ZXJuYWxBbmNob3JQb2ludCIsYSwiYW5jaG9yUG9pbnQiKTthIGluc3RhbmNlb2YgXy54cz9vbyh0aGlzLCJpbnRlcm5hbEFuY2hvclBvc2l0aW9uIixhLCJpbnRlcm5hbFBvc2l0aW9uIik6b28odGhpcywiaW50ZXJuYWxBbmNob3JQb3NpdGlvbiIsYSwicG9zaXRpb24iKX1pbnRlcm5hbEFuY2hvclBvaW50X2NoYW5nZWQoKXtrZGEodGhpcyl9aW50ZXJuYWxQaXhlbE9mZnNldF9jaGFuZ2VkKCl7a2RhKHRoaXMpfWludGVybmFsQW5jaG9yUG9zaXRpb25fY2hhbmdlZCgpe3ZhciBhPXRoaXMuZ2V0KCJpbnRlcm5hbEFuY2hvclBvc2l0aW9uIik7YSYmdGhpcy5zZXQoInBvc2l0aW9uIixhKX1pbnRlcm5hbEFuY2hvck1hcF9jaGFuZ2VkKGE9CiExKXt0aGlzLmdldCgiaW50ZXJuYWxBbmNob3IiKSYmKGF8fHRoaXMuZ2V0KCJpbnRlcm5hbEFuY2hvck1hcCIpIT09dGhpcy5pbmZvV2luZG93LmdldCgibWFwIikpJiZ0aGlzLmluZm9XaW5kb3cuc2V0KCJtYXAiLHRoaXMuZ2V0KCJpbnRlcm5hbEFuY2hvck1hcCIpKX1pbnRlcm5hbEhlYWRlckNvbnRlbnRfY2hhbmdlZCgpe3ZhciBhPXRoaXMuZ2V0KCJpbnRlcm5hbEhlYWRlckNvbnRlbnQiKTtpZih0eXBlb2YgYT09PSJzdHJpbmciKXtsZXQgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7Yi50ZXh0Q29udGVudD1hO2E9Yn10aGlzLnNldCgiaGVhZGVyQ29udGVudCIsYSl9aW50ZXJuYWxDb250ZW50X2NoYW5nZWQoKXt2YXIgYT10aGlzLnNldCxiO2lmKGI9dGhpcy5nZXQoImludGVybmFsQ29udGVudCIpKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXt2YXIgYz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtfLnpqKGMsXy5EbChiKSl9ZWxzZSBiLm5vZGVUeXBlPT09Ck5vZGUuVEVYVF9OT0RFPyhjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGMuYXBwZW5kQ2hpbGQoYikpOmM9YjtiPWN9ZWxzZSBiPW51bGw7YS5jYWxsKHRoaXMsImNvbnRlbnQiLGIpfXRyaWdnZXIoYSl7Xy53bih0aGlzLmluZm9XaW5kb3csYSl9Y2xvc2UoKXt0aGlzLmluZm9XaW5kb3cuc2V0KCJtYXAiLG51bGwpfX07Xy55cz1jbGFzcyBleHRlbmRzIF8ueW57c2V0T3B0aW9ucyhhKXt0aGlzLnNldFZhbHVlcyhhKX1zZXRIZWFkZXJDb250ZW50KGEpe3RoaXMuc2V0KCJoZWFkZXJDb250ZW50IixhKX1nZXRIZWFkZXJDb250ZW50KCl7cmV0dXJuIHRoaXMuZ2V0KCJoZWFkZXJDb250ZW50Iil9c2V0SGVhZGVyRGlzYWJsZWQoYSl7dGhpcy5zZXQoImhlYWRlckRpc2FibGVkIixhKX1nZXRIZWFkZXJEaXNhYmxlZCgpe3JldHVybiB0aGlzLmdldCgiaGVhZGVyRGlzYWJsZWQiKX1zZXRDb250ZW50KGEpe3RoaXMuc2V0KCJjb250ZW50IixhKX1nZXRDb250ZW50KCl7cmV0dXJuIHRoaXMuZ2V0KCJjb250ZW50Iil9c2V0UG9zaXRpb24oYSl7dGhpcy5zZXQoInBvc2l0aW9uIixhKX1nZXRQb3NpdGlvbigpe3JldHVybiB0aGlzLmdldCgicG9zaXRpb24iKX1zZXRaSW5kZXgoYSl7dGhpcy5zZXQoInpJbmRleCIsYSl9Z2V0WkluZGV4KCl7cmV0dXJuIHRoaXMuZ2V0KCJ6SW5kZXgiKX1zZXRNYXAoYSl7dGhpcy5zZXQoIm1hcCIsCmEpfWdldE1hcCgpe3JldHVybiB0aGlzLmdldCgibWFwIil9c2V0QW5jaG9yKGEpe3RoaXMuc2V0KCJhbmNob3IiLGEpfWdldEFuY2hvcigpe3JldHVybiB0aGlzLmdldCgiYW5jaG9yIil9Y29uc3RydWN0b3IoYSl7ZnVuY3Rpb24gYigpe2V8fChlPSEwLF8uSGwoImluZm93aW5kb3ciKS50aGVuKGY9PntmLnVMKGQpfSkpfXN1cGVyKCk7d2luZG93LnNldFRpbWVvdXQoKCk9PntfLkhsKCJpbmZvd2luZG93Iil9LDEwMCk7YT1hfHx7fTt2YXIgYz0hIWEuZnQ7ZGVsZXRlIGEuZnQ7dmFyIGQ9bmV3IFBoYSh0aGlzLGMpLGU9ITE7Xy50bih0aGlzLCJhbmNob3JfY2hhbmdlZCIsYik7Xy50bih0aGlzLCJtYXBfY2hhbmdlZCIsYik7dGhpcy5zZXRWYWx1ZXMoYSl9b3BlbihhLGIpe3ZhciBjPWI7Yj17fTt0eXBlb2YgYSE9PSJvYmplY3QifHwhYXx8YSBpbnN0YW5jZW9mIF8ubm98fGEgaW5zdGFuY2VvZiBfLkxuPyhiLm1hcD1hLGIuYW5jaG9yPWMpOihiLm1hcD1hLm1hcCxiLnNob3VsZEZvY3VzPQphLnNob3VsZEZvY3VzLGIuYW5jaG9yPWN8fGEuYW5jaG9yKTthPShhPXJvKGIuYW5jaG9yKSkmJmEuZ2V0KCJtYXAiKTthPWEgaW5zdGFuY2VvZiBfLkxufHxhIGluc3RhbmNlb2YgXy5ubztiLm1hcHx8YXx8Y29uc29sZS53YXJuKCJJbmZvV2luZG93Lm9wZW4oKSB3YXMgY2FsbGVkIHdpdGhvdXQgYW4gYXNzb2NpYXRlZCBNYXAgb3IgU3RyZWV0Vmlld1Bhbm9yYW1hIGluc3RhbmNlLiIpO3ZhciBkPXsuLi5ifTthPWQubWFwO2I9ZC5hbmNob3I7Yz10aGlzLnNldDt7dmFyIGU9ZC5tYXA7bGV0IGY9ZC5zaG91bGRGb2N1cztlPXR5cGVvZiBmPT09ImJvb2xlYW4iP2Y6KGU9KGQ9cm8oZC5hbmNob3IpKSYmZC5nZXQoIm1hcCIpfHxlKT9lLl9fZ20uZ2V0KCJpc0luaXRpYWxpemVkIik6ITF9Yy5jYWxsKHRoaXMsInNob3VsZEZvY3VzIixlKTt0aGlzLnNldCgiYW5jaG9yIixiKTtiPyF0aGlzLmdldCgibWFwIikmJmEmJnRoaXMuc2V0KCJtYXAiLGEpOnRoaXMuc2V0KCJtYXAiLGEpfWdldCBpc09wZW4oKXtyZXR1cm4hIXRoaXMuZ2V0KCJtYXAiKX1jbG9zZSgpe3RoaXMuc2V0KCJtYXAiLApudWxsKX1mb2N1cygpe3RoaXMuZ2V0KCJtYXAiKSYmIXRoaXMuZ2V0KCJwZW5kaW5nRm9jdXMiKSYmdGhpcy5zZXQoInBlbmRpbmdGb2N1cyIsITApfX07Xy55cy5wcm90b3R5cGUuZm9jdXM9Xy55cy5wcm90b3R5cGUuZm9jdXM7Xy55cy5wcm90b3R5cGUuY2xvc2U9Xy55cy5wcm90b3R5cGUuY2xvc2U7Xy55cy5wcm90b3R5cGUub3Blbj1fLnlzLnByb3RvdHlwZS5vcGVuO18ueXMucHJvdG90eXBlLmNvbnN0cnVjdG9yPV8ueXMucHJvdG90eXBlLmNvbnN0cnVjdG9yO18ueXMucHJvdG90eXBlLmdldEFuY2hvcj1fLnlzLnByb3RvdHlwZS5nZXRBbmNob3I7Xy55cy5wcm90b3R5cGUuc2V0QW5jaG9yPV8ueXMucHJvdG90eXBlLnNldEFuY2hvcjtfLnlzLnByb3RvdHlwZS5nZXRNYXA9Xy55cy5wcm90b3R5cGUuZ2V0TWFwO18ueXMucHJvdG90eXBlLnNldE1hcD1fLnlzLnByb3RvdHlwZS5zZXRNYXA7Xy55cy5wcm90b3R5cGUuZ2V0WkluZGV4PV8ueXMucHJvdG90eXBlLmdldFpJbmRleDsKXy55cy5wcm90b3R5cGUuc2V0WkluZGV4PV8ueXMucHJvdG90eXBlLnNldFpJbmRleDtfLnlzLnByb3RvdHlwZS5nZXRQb3NpdGlvbj1fLnlzLnByb3RvdHlwZS5nZXRQb3NpdGlvbjtfLnlzLnByb3RvdHlwZS5zZXRQb3NpdGlvbj1fLnlzLnByb3RvdHlwZS5zZXRQb3NpdGlvbjtfLnlzLnByb3RvdHlwZS5nZXRDb250ZW50PV8ueXMucHJvdG90eXBlLmdldENvbnRlbnQ7Xy55cy5wcm90b3R5cGUuc2V0Q29udGVudD1fLnlzLnByb3RvdHlwZS5zZXRDb250ZW50O18ueXMucHJvdG90eXBlLmdldEhlYWRlckRpc2FibGVkPV8ueXMucHJvdG90eXBlLmdldEhlYWRlckRpc2FibGVkO18ueXMucHJvdG90eXBlLnNldEhlYWRlckRpc2FibGVkPV8ueXMucHJvdG90eXBlLnNldEhlYWRlckRpc2FibGVkO18ueXMucHJvdG90eXBlLmdldEhlYWRlckNvbnRlbnQ9Xy55cy5wcm90b3R5cGUuZ2V0SGVhZGVyQ29udGVudDtfLnlzLnByb3RvdHlwZS5zZXRIZWFkZXJDb250ZW50PV8ueXMucHJvdG90eXBlLnNldEhlYWRlckNvbnRlbnQ7Cl8ueXMucHJvdG90eXBlLnNldE9wdGlvbnM9Xy55cy5wcm90b3R5cGUuc2V0T3B0aW9ucztfLlduKF8ueXMucHJvdG90eXBlLHtoZWFkZXJDb250ZW50Ol8uS20oW18uYnMsXy5JbShfLkRtKV0pLGhlYWRlckRpc2FibGVkOl8uTW0oJHIpLGNvbnRlbnQ6Xy5LbShbXy5icyxfLkltKF8uRG0pXSkscG9zaXRpb246Xy5NbShfLlhtKSxzaXplOl8uTW0oaW8pLG1hcDpfLkttKFtfLmhzLHdzXSksYW5jaG9yOl8uTW0oXy5LbShbXy5FbShfLnluLCJNVkNPYmplY3QiKSxFaGFdKSksekluZGV4Ol8uYXN9KTtfLnpzPWNsYXNzIGV4dGVuZHMgXy55bntnZXRNYXAoKXtyZXR1cm4gdGhpcy5nZXQoIm1hcCIpfXNldE1hcChhKXt0aGlzLnNldCgibWFwIixhKX1nZXRVcmwoKXtyZXR1cm4gdGhpcy5nZXQoInVybCIpfWdldEJvdW5kcygpe3JldHVybiB0aGlzLmdldCgiYm91bmRzIil9c2V0T3B0aW9ucyhhKXt0aGlzLnNldFZhbHVlcyhhKX1nZXRPcGFjaXR5KCl7cmV0dXJuIHRoaXMuZ2V0KCJvcGFjaXR5Iil9c2V0T3BhY2l0eShhKXt0aGlzLnNldCgib3BhY2l0eSIsYSl9Y29uc3RydWN0b3IoYSxiLGMpe3N1cGVyKCk7dGhpcy5ubChhLGIsYyl9bmwoYSxiLGMpe3RoaXMuc2V0KCJ1cmwiLGEpO3RoaXMuc2V0KCJib3VuZHMiLF8uTW0oXy5UbikoYikpO3RoaXMuc2V0VmFsdWVzKGMpfW1hcF9jaGFuZ2VkKCl7Xy5IbCgia21sIikudGhlbihhPT57dGhpcy5nZXQoIm1hcCIpP3RoaXMuZ2V0KCJtYXAiKS5fX2dtLkdoLnRoZW4oKCk9PnthLnBHKHRoaXMpfSk6YS5wRyh0aGlzKX0pfX07Cl8uenMucHJvdG90eXBlLnNldE9wYWNpdHk9Xy56cy5wcm90b3R5cGUuc2V0T3BhY2l0eTtfLnpzLnByb3RvdHlwZS5nZXRPcGFjaXR5PV8uenMucHJvdG90eXBlLmdldE9wYWNpdHk7Xy56cy5wcm90b3R5cGUuZ2V0Qm91bmRzPV8uenMucHJvdG90eXBlLmdldEJvdW5kcztfLnpzLnByb3RvdHlwZS5nZXRVcmw9Xy56cy5wcm90b3R5cGUuZ2V0VXJsO18uenMucHJvdG90eXBlLnNldE1hcD1fLnpzLnByb3RvdHlwZS5zZXRNYXA7Xy56cy5wcm90b3R5cGUuZ2V0TWFwPV8uenMucHJvdG90eXBlLmdldE1hcDtfLndtKF8uenMpO18uV24oXy56cy5wcm90b3R5cGUse21hcDpfLmhzLHVybDpudWxsLGJvdW5kczpudWxsLG9wYWNpdHk6Xy5hc30pO18ucWIoc28sXy55bik7c28ucHJvdG90eXBlLnhoPWZ1bmN0aW9uKCl7Xy5IbCgia21sIikudGhlbihhPT57YS54TCh0aGlzKX0pfTtzby5wcm90b3R5cGUudXJsX2NoYW5nZWQ9c28ucHJvdG90eXBlLnhoO3NvLnByb3RvdHlwZS5tYXBfY2hhbmdlZD1zby5wcm90b3R5cGUueGg7c28ucHJvdG90eXBlLnpJbmRleF9jaGFuZ2VkPXNvLnByb3RvdHlwZS54aDtfLlduKHNvLnByb3RvdHlwZSx7bWFwOl8uaHMsZGVmYXVsdFZpZXdwb3J0Om51bGwsbWV0YWRhdGE6bnVsbCxzdGF0dXM6bnVsbCx1cmw6Xy5icyxzY3JlZW5PdmVybGF5czpfLmNzLHpJbmRleDpfLmFzfSk7Xy5Bcz1jbGFzcyBleHRlbmRzIF8ueW57Z2V0TWFwKCl7cmV0dXJuIHRoaXMuZ2V0KCJtYXAiKX1zZXRNYXAoYSl7dGhpcy5zZXQoIm1hcCIsYSl9Y29uc3RydWN0b3IoKXtzdXBlcigpO18uSGwoImxheWVycyIpLnRoZW4oYT0+e2EudEwodGhpcyl9KX19O18uQXMucHJvdG90eXBlLnNldE1hcD1fLkFzLnByb3RvdHlwZS5zZXRNYXA7Xy5Bcy5wcm90b3R5cGUuZ2V0TWFwPV8uQXMucHJvdG90eXBlLmdldE1hcDtfLlduKF8uQXMucHJvdG90eXBlLHttYXA6Xy5oc30pO3ZhciBCcz1jbGFzcyBleHRlbmRzIF8ueW57c2V0T3B0aW9ucyhhKXt0aGlzLnNldFZhbHVlcyhhKX1nZXRNYXAoKXtyZXR1cm4gdGhpcy5nZXQoIm1hcCIpfXNldE1hcChhKXt0aGlzLnNldCgibWFwIixhKX1jb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuc2V0VmFsdWVzKGEpO18uSGwoImxheWVycyIpLnRoZW4oYj0+e2IuQUwodGhpcyl9KX19O0JzLnByb3RvdHlwZS5zZXRNYXA9QnMucHJvdG90eXBlLnNldE1hcDtCcy5wcm90b3R5cGUuZ2V0TWFwPUJzLnByb3RvdHlwZS5nZXRNYXA7QnMucHJvdG90eXBlLnNldE9wdGlvbnM9QnMucHJvdG90eXBlLnNldE9wdGlvbnM7Xy5XbihCcy5wcm90b3R5cGUse21hcDpfLmhzfSk7dmFyIENzPWNsYXNzIGV4dGVuZHMgXy55bntnZXRNYXAoKXtyZXR1cm4gdGhpcy5nZXQoIm1hcCIpfXNldE1hcChhKXt0aGlzLnNldCgibWFwIixhKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKCk7Xy5IbCgibGF5ZXJzIikudGhlbihhPT57YS5CTCh0aGlzKX0pfX07Q3MucHJvdG90eXBlLnNldE1hcD1Dcy5wcm90b3R5cGUuc2V0TWFwO0NzLnByb3RvdHlwZS5nZXRNYXA9Q3MucHJvdG90eXBlLmdldE1hcDtfLlduKENzLnByb3RvdHlwZSx7bWFwOl8uaHN9KTt2YXIgdm87Xy5Ecz17YWs6YT0+YT8uc3BsaXQoL1xzKy8pLmZpbHRlcihCb29sZWFuKT8/bnVsbCxMajphPT5hPy5qb2luKCIgIik/P251bGx9O3ZvPW5ldyBNYXA7Xy55bz1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm1pblk9dGhpcy5taW5YPUluZmluaXR5O3RoaXMubWF4WT10aGlzLm1heFg9LUluZmluaXR5OyhhfHxbXSkuZm9yRWFjaChiPT52b2lkIHRoaXMuZXh0ZW5kKGIpKX1pc0VtcHR5KCl7cmV0dXJuISh0aGlzLm1pblg8dGhpcy5tYXhYJiZ0aGlzLm1pblk8dGhpcy5tYXhZKX10b1N0cmluZygpe3JldHVybmAoJHt0aGlzLm1pblh9LCAke3RoaXMubWluWX0sICR7dGhpcy5tYXhYfSwgJHt0aGlzLm1heFl9KWB9ZXh0ZW5kKGEpe2EmJih0aGlzLm1pblg9TWF0aC5taW4odGhpcy5taW5YLGEueCksdGhpcy5tYXhYPU1hdGgubWF4KHRoaXMubWF4WCxhLngpLHRoaXMubWluWT1NYXRoLm1pbih0aGlzLm1pblksYS55KSx0aGlzLm1heFk9TWF0aC5tYXgodGhpcy5tYXhZLGEueSkpfWV4dGVuZEJ5Qm91bmRzKGEpe2EmJih0aGlzLm1pblg9TWF0aC5taW4odGhpcy5taW5YLGEubWluWCksdGhpcy5tYXhYPU1hdGgubWF4KHRoaXMubWF4WCxhLm1heFgpLAp0aGlzLm1pblk9TWF0aC5taW4odGhpcy5taW5ZLGEubWluWSksdGhpcy5tYXhZPU1hdGgubWF4KHRoaXMubWF4WSxhLm1heFkpKX1nZXRTaXplKCl7cmV0dXJuIG5ldyBfLmdvKHRoaXMubWF4WC10aGlzLm1pblgsdGhpcy5tYXhZLXRoaXMubWluWSl9Z2V0Q2VudGVyKCl7cmV0dXJuIG5ldyBfLmJvKCh0aGlzLm1pblgrdGhpcy5tYXhYKS8yLCh0aGlzLm1pblkrdGhpcy5tYXhZKS8yKX1lcXVhbHMoYSl7cmV0dXJuIGE/dGhpcy5taW5YPT09YS5taW5YJiZ0aGlzLm1pblk9PT1hLm1pblkmJnRoaXMubWF4WD09PWEubWF4WCYmdGhpcy5tYXhZPT09YS5tYXhZOiExfWNvbnRhaW5zUG9pbnQoYSl7cmV0dXJuIHRoaXMubWluWDw9YS54JiZhLng8dGhpcy5tYXhYJiZ0aGlzLm1pblk8PWEueSYmYS55PHRoaXMubWF4WX1jb250YWluc0JvdW5kcyhhKXtyZXR1cm4gdGhpcy5taW5YPD1hLm1pblgmJnRoaXMubWF4WD49YS5tYXhYJiZ0aGlzLm1pblk8PWEubWluWSYmdGhpcy5tYXhZPj1hLm1heFl9fTsKXy5Fcz1fLnpvKC1JbmZpbml0eSwtSW5maW5pdHksSW5maW5pdHksSW5maW5pdHkpO18uem8oMCwwLDAsMCk7Xy5xYihfLkVvLF8ueW4pO18uRW8ucHJvdG90eXBlLmdldEF0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnFoW2FdfTtfLkVvLnByb3RvdHlwZS5nZXRBdD1fLkVvLnByb3RvdHlwZS5nZXRBdDtfLkVvLnByb3RvdHlwZS5pbmRleE9mPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wLGM9dGhpcy5xaC5sZW5ndGg7YjxjOysrYilpZihhPT09dGhpcy5xaFtiXSlyZXR1cm4gYjtyZXR1cm4tMX07Xy5Fby5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihhKXtmb3IobGV0IGI9MCxjPXRoaXMucWgubGVuZ3RoO2I8YzsrK2IpYSh0aGlzLnFoW2JdLGIpfTtfLkVvLnByb3RvdHlwZS5mb3JFYWNoPV8uRW8ucHJvdG90eXBlLmZvckVhY2g7Cl8uRW8ucHJvdG90eXBlLnNldEF0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5xaFthXSxkPXRoaXMucWgubGVuZ3RoO2lmKGE8ZCl0aGlzLnFoW2FdPWIsXy53bih0aGlzLCJzZXRfYXQiLGEsYyksdGhpcy50aCYmdGhpcy50aChhLGMpO2Vsc2V7Zm9yKGM9ZDtjPGE7KytjKXRoaXMuaW5zZXJ0QXQoYyx2b2lkIDApO3RoaXMuaW5zZXJ0QXQoYSxiKX19O18uRW8ucHJvdG90eXBlLnNldEF0PV8uRW8ucHJvdG90eXBlLnNldEF0O18uRW8ucHJvdG90eXBlLmluc2VydEF0PWZ1bmN0aW9uKGEsYil7dGhpcy5xaC5zcGxpY2UoYSwwLGIpO0RvKHRoaXMpO18ud24odGhpcywiaW5zZXJ0X2F0IixhKTt0aGlzLnJoJiZ0aGlzLnJoKGEpfTtfLkVvLnByb3RvdHlwZS5pbnNlcnRBdD1fLkVvLnByb3RvdHlwZS5pbnNlcnRBdDsKXy5Fby5wcm90b3R5cGUucmVtb3ZlQXQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5xaFthXTt0aGlzLnFoLnNwbGljZShhLDEpO0RvKHRoaXMpO18ud24odGhpcywicmVtb3ZlX2F0IixhLGIpO3RoaXMuc2gmJnRoaXMuc2goYSxiKTtyZXR1cm4gYn07Xy5Fby5wcm90b3R5cGUucmVtb3ZlQXQ9Xy5Fby5wcm90b3R5cGUucmVtb3ZlQXQ7Xy5Fby5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihhKXt0aGlzLmluc2VydEF0KHRoaXMucWgubGVuZ3RoLGEpO3JldHVybiB0aGlzLnFoLmxlbmd0aH07Xy5Fby5wcm90b3R5cGUucHVzaD1fLkVvLnByb3RvdHlwZS5wdXNoO18uRW8ucHJvdG90eXBlLnBvcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJlbW92ZUF0KHRoaXMucWgubGVuZ3RoLTEpfTtfLkVvLnByb3RvdHlwZS5wb3A9Xy5Fby5wcm90b3R5cGUucG9wO18uRW8ucHJvdG90eXBlLmdldEFycmF5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWh9O18uRW8ucHJvdG90eXBlLmdldEFycmF5PV8uRW8ucHJvdG90eXBlLmdldEFycmF5OwpfLkVvLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe2Zvcig7dGhpcy5nZXQoImxlbmd0aCIpOyl0aGlzLnBvcCgpfTtfLkVvLnByb3RvdHlwZS5jbGVhcj1fLkVvLnByb3RvdHlwZS5jbGVhcjtfLlduKF8uRW8ucHJvdG90eXBlLHtsZW5ndGg6bnVsbH0pO3ZhciBwZGE9cmRhKF8uRW0oXy5UbSwiTGF0TG5nIikpO18uU289Y2xhc3MgZXh0ZW5kcyBfLnlue2dldFJhZGl1cygpe3JldHVybiB0aGlzLmdldCgicmFkaXVzIil9c2V0UmFkaXVzKGEpe3RoaXMuc2V0KCJyYWRpdXMiLGEpfWdldENlbnRlcigpe3JldHVybiB0aGlzLmdldCgiY2VudGVyIil9c2V0Q2VudGVyKGEpe3RoaXMuc2V0KCJjZW50ZXIiLGEpfWdldE1hcCgpe3JldHVybiB0aGlzLmdldCgibWFwIil9c2V0TWFwKGEpe3RoaXMuc2V0KCJtYXAiLGEpfWdldERyYWdnYWJsZSgpe3JldHVybiB0aGlzLmdldCgiZHJhZ2dhYmxlIil9c2V0RHJhZ2dhYmxlKGEpe3RoaXMuc2V0KCJkcmFnZ2FibGUiLGEpfWdldEVkaXRhYmxlKCl7cmV0dXJuIHRoaXMuZ2V0KCJlZGl0YWJsZSIpfXNldEVkaXRhYmxlKGEpe3RoaXMuc2V0KCJlZGl0YWJsZSIsYSl9c2V0VmlzaWJsZShhKXt0aGlzLnNldCgidmlzaWJsZSIsYSl9Z2V0VmlzaWJsZSgpe3JldHVybiB0aGlzLmdldCgidmlzaWJsZSIpfXNldE9wdGlvbnMoYSl7dGhpcy5zZXRWYWx1ZXMoYSl9Y29uc3RydWN0b3IoYSl7c3VwZXIoKTsKaWYoYSBpbnN0YW5jZW9mIF8uU28pe2xldCBiPXt9LGM9Im1hcCByYWRpdXMgY2VudGVyIHN0cm9rZUNvbG9yIHN0cm9rZU9wYWNpdHkgc3Ryb2tlV2VpZ2h0IHN0cm9rZVBvc2l0aW9uIGZpbGxDb2xvciBmaWxsT3BhY2l0eSB6SW5kZXggY2xpY2thYmxlIGVkaXRhYmxlIGRyYWdnYWJsZSB2aXNpYmxlIi5zcGxpdCgiICIpO2ZvcihsZXQgZCBvZiBjKWJbZF09YS5nZXQoZCk7YT1ifXRoaXMuc2V0VmFsdWVzKE1vKGEpKTtfLkhsKCJwb2x5Iil9Z2V0Qm91bmRzKCl7dmFyIGE9dGhpcy5nZXQoInJhZGl1cyIpLGI9dGhpcy5nZXQoImNlbnRlciIpO2lmKGImJl8uam0oYSkpe3ZhciBjPXRoaXMuZ2V0KCJtYXAiKTtjPWMmJmMuX19nbS5nZXQoImJhc2VNYXBUeXBlIik7cmV0dXJuIF8uQ28oYixhL18ub2RhKGMpKX1yZXR1cm4gbnVsbH1tYXBfY2hhbmdlZCgpe3NkYSh0aGlzKX12aXNpYmxlX2NoYW5nZWQoKXtzZGEodGhpcyl9Y2VudGVyX2NoYW5nZWQoKXtfLnduKHRoaXMsImJvdW5kc19jaGFuZ2VkIil9cmFkaXVzX2NoYW5nZWQoKXtfLnduKHRoaXMsCiJib3VuZHNfY2hhbmdlZCIpfWVxdWFscyhhKXtpZih0aGlzPT09YSlyZXR1cm4hMDtpZighYSlyZXR1cm4hMTt2YXIgYj10aGlzLmdldENlbnRlcigpLGM9YS5nZXRDZW50ZXIoKTtyZXR1cm4gYiYmYz90aGlzLmdldFJhZGl1cygpPT09YS5nZXRSYWRpdXMoKSYmYi5lcXVhbHMoYyk6IWImJiFjJiZ0aGlzLmdldFJhZGl1cygpPT09YS5nZXRSYWRpdXMoKX19O18uU28ucHJvdG90eXBlLmdldEJvdW5kcz1fLlNvLnByb3RvdHlwZS5nZXRCb3VuZHM7Xy5Tby5wcm90b3R5cGUuc2V0T3B0aW9ucz1fLlNvLnByb3RvdHlwZS5zZXRPcHRpb25zO18uU28ucHJvdG90eXBlLmdldFZpc2libGU9Xy5Tby5wcm90b3R5cGUuZ2V0VmlzaWJsZTtfLlNvLnByb3RvdHlwZS5zZXRWaXNpYmxlPV8uU28ucHJvdG90eXBlLnNldFZpc2libGU7Xy5Tby5wcm90b3R5cGUuc2V0RWRpdGFibGU9Xy5Tby5wcm90b3R5cGUuc2V0RWRpdGFibGU7Xy5Tby5wcm90b3R5cGUuZ2V0RWRpdGFibGU9Xy5Tby5wcm90b3R5cGUuZ2V0RWRpdGFibGU7Cl8uU28ucHJvdG90eXBlLnNldERyYWdnYWJsZT1fLlNvLnByb3RvdHlwZS5zZXREcmFnZ2FibGU7Xy5Tby5wcm90b3R5cGUuZ2V0RHJhZ2dhYmxlPV8uU28ucHJvdG90eXBlLmdldERyYWdnYWJsZTtfLlNvLnByb3RvdHlwZS5zZXRNYXA9Xy5Tby5wcm90b3R5cGUuc2V0TWFwO18uU28ucHJvdG90eXBlLmdldE1hcD1fLlNvLnByb3RvdHlwZS5nZXRNYXA7Xy5Tby5wcm90b3R5cGUuc2V0Q2VudGVyPV8uU28ucHJvdG90eXBlLnNldENlbnRlcjtfLlNvLnByb3RvdHlwZS5nZXRDZW50ZXI9Xy5Tby5wcm90b3R5cGUuZ2V0Q2VudGVyO18uU28ucHJvdG90eXBlLnNldFJhZGl1cz1fLlNvLnByb3RvdHlwZS5zZXRSYWRpdXM7Xy5Tby5wcm90b3R5cGUuZ2V0UmFkaXVzPV8uU28ucHJvdG90eXBlLmdldFJhZGl1cztfLlduKF8uU28ucHJvdG90eXBlLHtjZW50ZXI6Xy5NbShfLlhtKSxkcmFnZ2FibGU6Xy5jcyxlZGl0YWJsZTpfLmNzLG1hcDpfLmhzLHJhZGl1czpfLmFzLHZpc2libGU6Xy5jc30pO3ZhciBSaGE7Cl8uRnM9e2FrOlBvKGZ1bmN0aW9uKGEpe3JldHVybiBiPT57aWYoIWIpcmV0dXJuIG51bGw7aWYoYS5oYXMoXy5SbikmJmIuaW5jbHVkZXMoInwiKSl7YTppZihiKXt0cnl7bGV0IGQ9Yi5zcGxpdCgifCIpO2lmKGQubGVuZ3RoPDIpdGhyb3cgRXJyb3IoInRvbyBmZXcgcG9pbnRzIik7aWYoZC5sZW5ndGg+Mil0aHJvdyBFcnJvcigidG9vIG1hbnkgcG9pbnRzIik7bGV0IFtlLGZdPWQubWFwKF8uUm8pO3ZhciBjPW5ldyBfLlJuKGUsZik7YnJlYWsgYX1jYXRjaChkKXt0aHJvdyBFcnJvcihgQ291bGQgbm90IGludGVycHJldCAiJHtifSIgYXMgYSBMYXRMbmdCb3VuZHM6IGArKGQgaW5zdGFuY2VvZiBFcnJvcj9kLm1lc3NhZ2U6YCR7ZH1gKSk7fWM9dm9pZCAwfWVsc2UgYz1udWxsO3JldHVybiBjfWlmKGEuaGFzKF8uU28pJiZiLmluY2x1ZGVzKCJAIikpcmV0dXJuIHRkYShiKTtpZihhLmhhcyhfLlFvKXx8YS5oYXMoXy5UbSkpcmV0dXJuIF8uUm8oYik7dGhyb3cgRXJyb3IoIlVuc3VwcG9ydGVkIGxvY2F0aW9uIGJpYXMvcmVzdHJpY3Rpb24gdHlwZS4iKTt9fShuZXcgU2V0KFtfLlRtLApfLlFvLF8uUm4sXy5Tb10pKSksTGo6ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uUW8pdmFyIGI9Xy5UbyhhKTtlbHNlIGEgaW5zdGFuY2VvZiBfLlRtP2I9Vm8oYSk6YSBpbnN0YW5jZW9mIF8uUm4/YT8oYj1hLmdldFNvdXRoV2VzdCgpLGE9YS5nZXROb3J0aEVhc3QoKSxiPWAke1ZvKGIpfXwke1ZvKGEpfWApOmI9bnVsbDpiPWEgaW5zdGFuY2VvZiBfLlNvP3VkYShhKTpudWxsO3JldHVybiBifX07Xy5RaGE9e2FrOlBvKHRkYSksTGo6dWRhfTtfLkdzPXthazpQbyhmdW5jdGlvbihhKXtyZXR1cm4gYT9fLlJvKGEpOm51bGx9KSxMajpfLlRvfTtfLkhzPXthazpQbyhmdW5jdGlvbihhKXtyZXR1cm4gYT9hLnRyaW0oKS5yZXBsYWNlKC9ccyosXHMqL2csIiwiKS5zcGxpdCgvXHMrL2cpLm1hcChfLlJvKTpudWxsfSksTGo6Xy5Vb307ClJoYT17YWs6UG8oZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIG51bGw7dHJ5e2xldCBiPWEuc3BsaXQoIiwiKS5tYXAoT28pO2lmKGIubGVuZ3RoPDIpdGhyb3cgRXJyb3IoInRvbyBmZXcgdmFsdWVzIik7aWYoYi5sZW5ndGg+Mil0aHJvdyBFcnJvcigidG9vIG1hbnkgdmFsdWVzIik7bGV0IFtjLGRdPWI7cmV0dXJuIF8uWW0oe2xhdDpjLGxuZzpkfSl9Y2F0Y2goYil7dGhyb3cgRXJyb3IoYENvdWxkIG5vdCBpbnRlcnByZXQgIiR7YX0iIGFzIGEgTGF0TG5nOiBgKyhiIGluc3RhbmNlb2YgRXJyb3I/Yi5tZXNzYWdlOmAke2J9YCkpO319KSxMajpWb307dmFyIFhvPXZvaWQgMCxXbz12b2lkIDA7dmFyIFNoYT0vXig/IWphdmFzY3JpcHQ6KSg/OlthLXowLTkrLi1dKzp8W14mOlwvPyNdKig/OltcLz8jXXwkKSkvaSxJcz1fLnJqKGZ1bmN0aW9uKGEsLi4uYil7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBfLnFqKGFbMF0pO3ZhciBjPWFbMF07Zm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspYys9ZW5jb2RlVVJJQ29tcG9uZW50KGJbZF0pK2FbZCsxXTtyZXR1cm4gXy5xaihjKX1gYWJvdXQ6aW52YWxpZCN6Q2xvc3VyZXpgKSx3ZGE9YT0+YSxKcz1hPT5TaGEudGVzdChTdHJpbmcoYSkpP2E6SXMsS3M9KCk9PklzLExzPWE9PmEgaW5zdGFuY2VvZiBfLnBqP18ucmooYSk6SXMseWRhPW5ldyBNYXAoW1siQSBocmVmIixKc10sWyJBUkVBIGhyZWYiLEpzXSxbIkJBU0UgaHJlZiIsS3NdLFsiQlVUVE9OIGZvcm1hY3Rpb24iLEpzXSxbIkVNQkVEIHNyYyIsS3NdLFsiRk9STSBhY3Rpb24iLEpzXSxbIkZSQU1FIHNyYyIsS3NdLFsiSUZSQU1FIHNyYyIsTHNdLFsiSUZSQU1FIHNyY2RvYyIsCmE9PmEgaW5zdGFuY2VvZiB3aj9fLnlqKGEpOl8ueWooeGRhKV0sWyJJTlBVVCBmb3JtYWN0aW9uIixKc10sWyJMSU5LIGhyZWYiLExzXSxbIk9CSkVDVCBjb2RlYmFzZSIsS3NdLFsiT0JKRUNUIGRhdGEiLEtzXSxbIlNDUklQVCBocmVmIixMc10sWyJTQ1JJUFQgc3JjIixMc10sWyJTQ1JJUFQgdGV4dCIsS3NdLFsiVVNFIGhyZWYiLExzXV0pO3ZhciBNcyxOcyx6ZGEsVGhhLFVoYSxPcyxWaGEsV2hhLFBzLGFwLFpvLFFzLFhoYSxZaGEsUnMsWmhhLCRoYSxhaWEsJG8sYmlhLFRzLFVzLGdpYSxXcyxWcyxjaWEsZGlhLGVpYSxmaWE7TXM9IV8uVWEuU2hhZHlET00/LmluVXNlfHxfLlVhLlNoYWR5RE9NPy5ub1BhdGNoIT09ITAmJl8uVWEuU2hhZHlET00/Lm5vUGF0Y2ghPT0ib24tZGVtYW5kIj9hPT5hOl8uVWEuU2hhZHlET00ud3JhcDtOcz1fLlVhLnRydXN0ZWRUeXBlczt6ZGE9TnM/TnMuY3JlYXRlUG9saWN5KCJsaXQtaHRtbCIse2NyZWF0ZUhUTUw6YT0+YX0pOnZvaWQgMDtUaGE9YT0+YTtVaGE9KCk9PlRoYTtPcz1gbGl0JCR7TWF0aC5yYW5kb20oKS50b0ZpeGVkKDkpLnNsaWNlKDIpfSRgO1ZoYT0iPyIrT3M7V2hhPWA8JHtWaGF9PmA7UHM9ZG9jdW1lbnQ7YXA9YT0+YT09PW51bGx8fHR5cGVvZiBhIT0ib2JqZWN0IiYmdHlwZW9mIGEhPSJmdW5jdGlvbiJ8fCExO1pvPUFycmF5LmlzQXJyYXk7UXM9LzwoPzooIS0tfFwvW15hLXpBLVpdKXwoXC8/W2EtekEtWl1bXj5cc10qKXwoXC8/JCkpL2c7ClhoYT0vLS1ceDNlL2c7WWhhPS8+L2c7UnM9UmVnRXhwKCI+fFsgXHRcblxmXHJdKD86KFteXFxzXCInPj0vXSspKFsgXHRcblxmXHJdKj1bIFx0XG5cZlxyXSooPzpbXiBcdFxuXGZcclwiJ2A8Pj1dfChcInwnKXwpKXwkKSIsImciKTtaaGE9LycvZzskaGE9LyIvZzthaWE9L14oPzpzY3JpcHR8c3R5bGV8dGV4dGFyZWF8dGl0bGUpJC9pO18uV3E9KGEsLi4uYik9Pih7XyRsaXRUeXBlJDoxLHdsOmEsdmFsdWVzOmJ9KTskbz1TeW1ib2wuZm9yP1N5bWJvbC5mb3IoImxpdC1ub0NoYW5nZSIpOlN5bWJvbCgibGl0LW5vQ2hhbmdlIik7Xy5Tcz1TeW1ib2wuZm9yP1N5bWJvbC5mb3IoImxpdC1ub3RoaW5nIik6U3ltYm9sKCJsaXQtbm90aGluZyIpO2JpYT1uZXcgV2Vha01hcDtUcz1Qcy5jcmVhdGVUcmVlV2Fsa2VyKFBzLDEyOSk7ClVzPWNsYXNze2NvbnN0cnVjdG9yKHt3bDphLF8kbGl0VHlwZSQ6Yn0sYyl7dGhpcy5jej1bXTt2YXIgZD0wLGU9MCxmPWEubGVuZ3RoLTEsZz10aGlzLmN6LGg9YS5sZW5ndGgtMSxrPVtdLG09Yj09PTI/Ijxzdmc+IjpiPT09Mz8iPG1hdGg+IjoiIixwLHE9UXM7Zm9yKGxldCBCPTA7QjxoO0IrKyl7bGV0IEs9YVtCXSxPPS0xLEE7dmFyIHU9MDtsZXQgUTtmb3IoO3U8Sy5sZW5ndGg7KXtxLmxhc3RJbmRleD11O1E9cS5leGVjKEspO2lmKFE9PT1udWxsKWJyZWFrO3U9cS5sYXN0SW5kZXg7cT09PVFzP1FbMV09PT0iIS0tIj9xPVhoYTpRWzFdIT09dm9pZCAwP3E9WWhhOlFbMl0hPT12b2lkIDA/KGFpYS50ZXN0KFFbMl0pJiYocD1uZXcgUmVnRXhwKGA8LyR7UVsyXX1gLCJnIikpLHE9UnMpOlFbM10hPT12b2lkIDAmJihxPVJzKTpxPT09UnM/UVswXT09PSI+Ij8ocT1wPz9RcyxPPS0xKTpRWzFdPT09dm9pZCAwP089LTI6KE89cS5sYXN0SW5kZXgtUVsyXS5sZW5ndGgsQT1RWzFdLApxPVFbM109PT12b2lkIDA/UnM6UVszXT09PSciJz8kaGE6WmhhKTpxPT09JGhhfHxxPT09WmhhP3E9UnM6cT09PVhoYXx8cT09PVloYT9xPVFzOihxPVJzLHA9dm9pZCAwKX11PXE9PT1ScyYmYVtCKzFdLnN0YXJ0c1dpdGgoIi8+Iik/IiAiOiIiO20rPXE9PT1Rcz9LK1doYTpPPj0wPyhrLnB1c2goQSksSy5zbGljZSgwLE8pKyIkbGl0JCIrSy5zbGljZShPKSkrT3MrdTpLK09zKyhPPT09LTI/Qjp1KX1hPVtBZGEoYSxtKyhhW2hdfHwiPD8+IikrKGI9PT0yPyI8L3N2Zz4iOmI9PT0zPyI8L21hdGg+IjoiIikpLGtdO3ZhciBbeCx6XT1hO3RoaXMuZWw9VXMuY3JlYXRlRWxlbWVudCh4LGMpO1RzLmN1cnJlbnROb2RlPXRoaXMuZWwuY29udGVudDtpZihiPT09Mnx8Yj09PTMpYj10aGlzLmVsLmNvbnRlbnQuZmlyc3RDaGlsZCxiLnJlcGxhY2VXaXRoKC4uLmIuY2hpbGROb2Rlcyk7Zm9yKDsoYj1Ucy5uZXh0Tm9kZSgpKSE9PW51bGwmJmcubGVuZ3RoPGY7KXtpZihiLm5vZGVUeXBlPT09CjEpe2lmKGIuaGFzQXR0cmlidXRlcygpKWZvcihsZXQgQiBvZiBiLmdldEF0dHJpYnV0ZU5hbWVzKCkpQi5lbmRzV2l0aCgiJGxpdCQiKT8oYT16W2UrK10sYz1iLmdldEF0dHJpYnV0ZShCKS5zcGxpdChPcyksYT0vKFsuP0BdKT8oLiopLy5leGVjKGEpLGcucHVzaCh7dHlwZToxLGluZGV4OmQsbmFtZTphWzJdLHdsOmMsV246YVsxXT09PSIuIj9jaWE6YVsxXT09PSI/Ij9kaWE6YVsxXT09PSJAIj9laWE6VnN9KSxiLnJlbW92ZUF0dHJpYnV0ZShCKSk6Qi5zdGFydHNXaXRoKE9zKSYmKGcucHVzaCh7dHlwZTo2LGluZGV4OmR9KSxiLnJlbW92ZUF0dHJpYnV0ZShCKSk7aWYoYWlhLnRlc3QoYi50YWdOYW1lKSYmKGM9Yi50ZXh0Q29udGVudC5zcGxpdChPcyksYT1jLmxlbmd0aC0xLGE+MCkpe2IudGV4dENvbnRlbnQ9TnM/TnMuZW1wdHlTY3JpcHQ6IiI7Zm9yKGg9MDtoPGE7aCsrKWIuYXBwZW5kKGNbaF0sUHMuY3JlYXRlQ29tbWVudCgiIikpLFRzLm5leHROb2RlKCksZy5wdXNoKHt0eXBlOjIsCmluZGV4OisrZH0pO2IuYXBwZW5kKGNbYV0sUHMuY3JlYXRlQ29tbWVudCgiIikpfX1lbHNlIGlmKGIubm9kZVR5cGU9PT04KWlmKGIuZGF0YT09PVZoYSlnLnB1c2goe3R5cGU6MixpbmRleDpkfSk7ZWxzZSBmb3IoYz0tMTsoYz1iLmRhdGEuaW5kZXhPZihPcyxjKzEpKSE9PS0xOylnLnB1c2goe3R5cGU6NyxpbmRleDpkfSksYys9T3MubGVuZ3RoLTE7ZCsrfX1zdGF0aWMgY3JlYXRlRWxlbWVudChhKXt2YXIgYj1Qcy5jcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIpO2IuaW5uZXJIVE1MPWE7cmV0dXJuIGJ9fTsKZ2lhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5zaD1bXTt0aGlzLndoPXZvaWQgMDt0aGlzLnJoPWE7dGhpcy5xaD1ifWdldCBwYXJlbnROb2RlKCl7cmV0dXJuIHRoaXMucWgucGFyZW50Tm9kZX1nZXQgeXIoKXtyZXR1cm4gdGhpcy5xaC55cn14aChhKXt2YXIgYj10aGlzLnJoLmN6LGM9KGE/LkNTPz9QcykuaW1wb3J0Tm9kZSh0aGlzLnJoLmVsLmNvbnRlbnQsITApO1RzLmN1cnJlbnROb2RlPWM7Zm9yKHZhciBkPVRzLm5leHROb2RlKCksZT0wLGY9MCxnPWJbMF07ZyE9PXZvaWQgMDspe2lmKGU9PT1nLmluZGV4KXtsZXQgaDtnLnR5cGU9PT0yP2g9bmV3IFdzKGQsZC5uZXh0U2libGluZyx0aGlzLGEpOmcudHlwZT09PTE/aD1uZXcgZy5XbihkLGcubmFtZSxnLndsLHRoaXMsYSk6Zy50eXBlPT09NiYmKGg9bmV3IGZpYShkLHRoaXMsYSkpO3RoaXMuc2gucHVzaChoKTtnPWJbKytmXX1lIT09Zz8uaW5kZXgmJihkPVRzLm5leHROb2RlKCksZSsrKX1Ucy5jdXJyZW50Tm9kZT0KUHM7cmV0dXJuIGN9dGgoYSl7dmFyIGI9MDtmb3IobGV0IGMgb2YgdGhpcy5zaCljIT09dm9pZCAwJiYoYy53bCE9PXZvaWQgMD8oYy5ldShhLGMsYiksYis9Yy53bC5sZW5ndGgtMik6Yy5ldShhW2JdKSksYisrfX07CldzPWNsYXNze2dldCB5cigpe3JldHVybiB0aGlzLnFoPy55cj8/dGhpcy5BaH1jb25zdHJ1Y3RvcihhLGIsYyxkKXt0aGlzLnR5cGU9Mjt0aGlzLmtrPV8uU3M7dGhpcy53aD12b2lkIDA7dGhpcy5zaD1hO3RoaXMueGg9Yjt0aGlzLnFoPWM7dGhpcy5vcHRpb25zPWQ7dGhpcy5BaD1kPy5pc0Nvbm5lY3RlZD8/ITA7dGhpcy5yaD12b2lkIDB9Z2V0IHBhcmVudE5vZGUoKXt2YXIgYT1Ncyh0aGlzLnNoKS5wYXJlbnROb2RlLGI9dGhpcy5xaDtiIT09dm9pZCAwJiZhPy5ub2RlVHlwZT09PTExJiYoYT1iLnBhcmVudE5vZGUpO3JldHVybiBhfWV1KGEsYj10aGlzKXthPWJwKHRoaXMsYSxiKTthcChhKT9hPT09Xy5Tc3x8YT09bnVsbHx8YT09PSIiPyh0aGlzLmtrIT09Xy5TcyYmdGhpcy50aCgpLHRoaXMua2s9Xy5Tcyk6YSE9PXRoaXMua2smJmEhPT0kbyYmdGhpcy5CaChhKTphLl8kbGl0VHlwZSQhPT12b2lkIDA/dGhpcy5KaChhKTphLm5vZGVUeXBlIT09dm9pZCAwP3RoaXMuemgoYSk6ClpvKGEpfHx0eXBlb2YgYT8uW1N5bWJvbC5pdGVyYXRvcl09PT0iZnVuY3Rpb24iP3RoaXMuR2goYSk6dGhpcy5CaChhKX15aChhKXtyZXR1cm4gTXMoTXModGhpcy5zaCkucGFyZW50Tm9kZSkuaW5zZXJ0QmVmb3JlKGEsdGhpcy54aCl9emgoYSl7aWYodGhpcy5rayE9PWEpe3RoaXMudGgoKTtpZihZbyE9PVVoYSl7bGV0IGI9dGhpcy5zaC5wYXJlbnROb2RlPy5ub2RlTmFtZTtpZihiPT09IlNUWUxFInx8Yj09PSJTQ1JJUFQiKXRocm93IEVycm9yKCJGb3JiaWRkZW4iKTt9dGhpcy5raz10aGlzLnloKGEpfX1CaChhKXtpZih0aGlzLmtrIT09Xy5TcyYmYXAodGhpcy5raykpe3ZhciBiPU1zKHRoaXMuc2gpLm5leHRTaWJsaW5nO3RoaXMucmg9PT12b2lkIDAmJih0aGlzLnJoPVlvKGIsImRhdGEiLCJwcm9wZXJ0eSIpKTthPXRoaXMucmgoYSk7Yi5kYXRhPWF9ZWxzZSBiPVBzLmNyZWF0ZVRleHROb2RlKCIiKSx0aGlzLnpoKGIpLHRoaXMucmg9PT12b2lkIDAmJih0aGlzLnJoPVlvKGIsCiJkYXRhIiwicHJvcGVydHkiKSksYT10aGlzLnJoKGEpLGIuZGF0YT1hO3RoaXMua2s9YX1KaChhKXt2YXIge3ZhbHVlczpiLF8kbGl0VHlwZSQ6Y309YTthPXR5cGVvZiBjPT09Im51bWJlciI/dGhpcy5DaChhKTooYy5lbD09PXZvaWQgMCYmKGMuZWw9VXMuY3JlYXRlRWxlbWVudChBZGEoYy5oLGMuaFswXSksdGhpcy5vcHRpb25zKSksYyk7aWYodGhpcy5raz8ucmg9PT1hKXRoaXMua2sudGgoYik7ZWxzZXthPW5ldyBnaWEoYSx0aGlzKTtsZXQgZD1hLnhoKHRoaXMub3B0aW9ucyk7YS50aChiKTt0aGlzLnpoKGQpO3RoaXMua2s9YX19Q2goYSl7dmFyIGI9YmlhLmdldChhLndsKTtiPT09dm9pZCAwJiZiaWEuc2V0KGEud2wsYj1uZXcgVXMoYSkpO3JldHVybiBifUdoKGEpe1pvKHRoaXMua2spfHwodGhpcy5raz1bXSx0aGlzLnRoKCkpO3ZhciBiPXRoaXMua2ssYz0wLGQ7Zm9yKGxldCBlIG9mIGEpYz09PWIubGVuZ3RoP2IucHVzaChkPW5ldyBXcyh0aGlzLnloKFBzLmNyZWF0ZUNvbW1lbnQoIiIpKSwKdGhpcy55aChQcy5jcmVhdGVDb21tZW50KCIiKSksdGhpcyx0aGlzLm9wdGlvbnMpKTpkPWJbY10sZC5ldShlKSxjKys7YzxiLmxlbmd0aCYmKHRoaXMudGgoZCYmTXMoZC54aCkubmV4dFNpYmxpbmcsYyksYi5sZW5ndGg9Yyl9dGgoYT1Ncyh0aGlzLnNoKS5uZXh0U2libGluZyxiKXtmb3IodGhpcy5EaD8uKCExLCEwLGIpO2EhPT10aGlzLnhoOyliPU1zKGEpLm5leHRTaWJsaW5nLE1zKGEpLnJlbW92ZSgpLGE9Yn1GSihhKXt0aGlzLnFoPT09dm9pZCAwJiYodGhpcy5BaD1hLHRoaXMuRGg/LihhKSl9fTsKVnM9Y2xhc3N7Z2V0IHRhZ05hbWUoKXtyZXR1cm4gdGhpcy5lbGVtZW50LnRhZ05hbWV9Z2V0IHlyKCl7cmV0dXJuIHRoaXMucWgueXJ9Y29uc3RydWN0b3IoYSxiLGMsZCxlKXt0aGlzLnR5cGU9MTt0aGlzLmtrPV8uU3M7dGhpcy53aD12b2lkIDA7dGhpcy5lbGVtZW50PWE7dGhpcy5uYW1lPWI7dGhpcy5xaD1kO3RoaXMub3B0aW9ucz1lO2MubGVuZ3RoPjJ8fGNbMF0hPT0iInx8Y1sxXSE9PSIiPyh0aGlzLmtrPUFycmF5KGMubGVuZ3RoLTEpLmZpbGwobmV3IFN0cmluZyksdGhpcy53bD1jKTp0aGlzLmtrPV8uU3M7dGhpcy5Ddj12b2lkIDB9ZXUoYSxiPXRoaXMsYyxkKXt2YXIgZT10aGlzLndsLGY9ITE7aWYoZT09PXZvaWQgMCl7aWYoYT1icCh0aGlzLGEsYiwwKSxmPSFhcChhKXx8YSE9PXRoaXMua2smJmEhPT0kbyl0aGlzLmtrPWF9ZWxzZXtsZXQgZz1hO2E9ZVswXTtsZXQgaCxrO2ZvcihoPTA7aDxlLmxlbmd0aC0xO2grKylrPWJwKHRoaXMsZ1tjK2hdLGIsaCksaz09PSRvJiYKKGs9dGhpcy5ra1toXSksZnx8KGY9IWFwKGspfHxrIT09dGhpcy5ra1toXSksaz09PV8uU3M/YT1fLlNzOmEhPT1fLlNzJiYoYSs9KGs/PyIiKStlW2grMV0pLHRoaXMua2tbaF09a31mJiYhZCYmdGhpcy5JQyhhKX1JQyhhKXthPT09Xy5Tcz9Ncyh0aGlzLmVsZW1lbnQpLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLm5hbWUpOih0aGlzLkN2PT09dm9pZCAwJiYodGhpcy5Ddj1Zbyh0aGlzLmVsZW1lbnQsdGhpcy5uYW1lLCJhdHRyaWJ1dGUiKSksYT10aGlzLkN2KGE/PyIiKSxNcyh0aGlzLmVsZW1lbnQpLnNldEF0dHJpYnV0ZSh0aGlzLm5hbWUsYT8/IiIpKX19OwpjaWE9Y2xhc3MgZXh0ZW5kcyBWc3tjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy50eXBlPTN9SUMoYSl7dGhpcy5Ddj09PXZvaWQgMCYmKHRoaXMuQ3Y9WW8odGhpcy5lbGVtZW50LHRoaXMubmFtZSwicHJvcGVydHkiKSk7YT10aGlzLkN2KGEpO3RoaXMuZWxlbWVudFt0aGlzLm5hbWVdPWE9PT1fLlNzP3ZvaWQgMDphfX07ZGlhPWNsYXNzIGV4dGVuZHMgVnN7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpO3RoaXMudHlwZT00fUlDKGEpe01zKHRoaXMuZWxlbWVudCkudG9nZ2xlQXR0cmlidXRlKHRoaXMubmFtZSwhIWEmJmEhPT1fLlNzKX19OwplaWE9Y2xhc3MgZXh0ZW5kcyBWc3tjb25zdHJ1Y3RvcihhLGIsYyxkLGUpe3N1cGVyKGEsYixjLGQsZSk7dGhpcy50eXBlPTV9ZXUoYSxiPXRoaXMpe2E9YnAodGhpcyxhLGIsMCk/P18uU3M7aWYoYSE9PSRvKXtiPXRoaXMua2s7dmFyIGM9YT09PV8uU3MmJmIhPT1fLlNzfHxhLmNhcHR1cmUhPT1iLmNhcHR1cmV8fGEub25jZSE9PWIub25jZXx8YS5wYXNzaXZlIT09Yi5wYXNzaXZlLGQ9YSE9PV8uU3MmJihiPT09Xy5Tc3x8Yyk7YyYmdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsYik7ZCYmdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsYSk7dGhpcy5raz1hfX1oYW5kbGVFdmVudChhKXt0eXBlb2YgdGhpcy5raz09PSJmdW5jdGlvbiI/dGhpcy5ray5jYWxsKHRoaXMub3B0aW9ucz8uaG9zdD8/dGhpcy5lbGVtZW50LGEpOnRoaXMua2suaGFuZGxlRXZlbnQoYSl9fTsKZmlhPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLmVsZW1lbnQ9YTt0aGlzLnR5cGU9Njt0aGlzLndoPXZvaWQgMDt0aGlzLnFoPWI7dGhpcy5vcHRpb25zPWN9Z2V0IHlyKCl7cmV0dXJuIHRoaXMucWgueXJ9ZXUoYSl7YnAodGhpcyxhKX19OyhfLlVhLmxpdEh0bWxWZXJzaW9ucz8/KF8uVWEubGl0SHRtbFZlcnNpb25zPVtdKSkucHVzaCgiMy4zLjMiKTtfLlhzPShhLGIsYyk9Pnt2YXIgZD1jPy5XRT8/YixlPWQuXyRsaXRQYXJ0JDtlPT09dm9pZCAwJiYoZT1jPy5XRT8/bnVsbCxkLl8kbGl0UGFydCQ9ZT1uZXcgV3MoYi5pbnNlcnRCZWZvcmUoUHMuY3JlYXRlQ29tbWVudCgiIiksZSksZSx2b2lkIDAsYz8/e30pKTtlLmV1KGEpO3JldHVybiBlfTt2YXIgWXMsaGlhLGlpYSxqaWEsa2lhO1lzPV8uVWEuU2hhZG93Um9vdCYmKF8uVWEuU2hhZHlDU1M9PT12b2lkIDB8fF8uVWEuU2hhZHlDU1MubmF0aXZlU2hhZG93KSYmImFkb3B0ZWRTdHlsZVNoZWV0cyJpbiBEb2N1bWVudC5wcm90b3R5cGUmJiJyZXBsYWNlImluIENTU1N0eWxlU2hlZXQucHJvdG90eXBlO2hpYT1TeW1ib2woKTtpaWE9bmV3IFdlYWtNYXA7Cl8uWnM9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLl8kY3NzUmVzdWx0JD0hMDtpZihoaWEhPT1oaWEpdGhyb3cgRXJyb3IoIkNTU1Jlc3VsdCBpcyBub3QgY29uc3RydWN0YWJsZS4gVXNlIGB1bnNhZmVDU1NgIG9yIGBjc3NgIGluc3RlYWQuIik7dGhpcy5jc3NUZXh0PWE7dGhpcy5xaD1ifWdldCBzdHlsZVNoZWV0KCl7dmFyIGE9dGhpcy5yaCxiPXRoaXMucWg7aWYoWXMmJmE9PT12b2lkIDApe2xldCBjPWIhPT12b2lkIDAmJmIubGVuZ3RoPT09MTtjJiYoYT1paWEuZ2V0KGIpKTthPT09dm9pZCAwJiYoKHRoaXMucmg9YT1uZXcgQ1NTU3R5bGVTaGVldCkucmVwbGFjZVN5bmModGhpcy5jc3NUZXh0KSxjJiZpaWEuc2V0KGIsYSkpfXJldHVybiBhfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuY3NzVGV4dH19OwpfLiRzPShhLC4uLmIpPT5mdW5jdGlvbigpe3ZhciBjPWEubGVuZ3RoPT09MT9hWzBdOmIucmVkdWNlKChkLGUsZik9PntpZihlLl8kY3NzUmVzdWx0JD09PSEwKWU9ZS5jc3NUZXh0O2Vsc2UgaWYodHlwZW9mIGUhPT0ibnVtYmVyIil0aHJvdyBFcnJvcihgVmFsdWUgcGFzc2VkIHRvICdjc3MnIGZ1bmN0aW9uIG11c3QgYmUgYSAnY3NzJyBmdW5jdGlvbiByZXN1bHQ6ICR7ZX0uIFVzZSAndW5zYWZlQ1NTJyB0byBwYXNzIG5vbi1saXRlcmFsIHZhbHVlcywgYnV0IHRha2UgY2FyZSB0byBlbnN1cmUgcGFnZSBzZWN1cml0eS5gKTtyZXR1cm4gZCtlK2FbZisxXX0sYVswXSk7cmV0dXJuIG5ldyBfLlpzKGMsYSl9KCk7CmppYT0oYSxiKT0+e2lmKFlzKWEuYWRvcHRlZFN0eWxlU2hlZXRzPWIubWFwKGM9PmMgaW5zdGFuY2VvZiBDU1NTdHlsZVNoZWV0P2M6Yy5zdHlsZVNoZWV0KTtlbHNlIGZvcihsZXQgYyBvZiBiKXtiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7bGV0IGQ9Xy5VYS5saXROb25jZTtkIT09dm9pZCAwJiZiLnNldEF0dHJpYnV0ZSgibm9uY2UiLGQpO2IudGV4dENvbnRlbnQ9Yy5jc3NUZXh0O2EuYXBwZW5kQ2hpbGQoYil9fTtraWE9WXM/YT0+YTphPT57aWYoYSBpbnN0YW5jZW9mIENTU1N0eWxlU2hlZXQpe2xldCBiPSIiO2ZvcihsZXQgYyBvZiBhLmNzc1J1bGVzKWIrPWMuY3NzVGV4dDthPW5ldyBfLlpzKHR5cGVvZiBiPT09InN0cmluZyI/YjpTdHJpbmcoYikpfXJldHVybiBhfTsvKgoKIENvcHlyaWdodCAyMDE2IEdvb2dsZSBMTEMKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKi8KdmFyIGxpYT1IVE1MRWxlbWVudCxtaWE9T2JqZWN0LmlzLERkYT1PYmplY3QuZGVmaW5lUHJvcGVydHksQmRhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsbmlhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzLG9pYT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLHBpYT1PYmplY3QuZ2V0UHJvdG90eXBlT2YscWlhPV8uVWEudHJ1c3RlZFR5cGVzLHJpYT1xaWE/cWlhLmVtcHR5U2NyaXB0OiIiLGF0PXtMaihhLGIpe3N3aXRjaChiKXtjYXNlIEJvb2xlYW46YT1hP3JpYTpudWxsO2JyZWFrO2Nhc2UgT2JqZWN0OmNhc2UgQXJyYXk6YT1hPT1udWxsP2E6SlNPTi5zdHJpbmdpZnkoYSl9cmV0dXJuIGF9LGFrKGEsYil7dmFyIGM9YTtzd2l0Y2goYil7Y2FzZSBCb29sZWFuOmM9YSE9PW51bGw7YnJlYWs7Y2FzZSBOdW1iZXI6Yz1hPT09bnVsbD9udWxsOk51bWJlcihhKTticmVhaztjYXNlIE9iamVjdDpjYXNlIEFycmF5OnRyeXtjPUpTT04ucGFyc2UoYSl9Y2F0Y2goZCl7Yz0KbnVsbH19cmV0dXJuIGN9fSxlcD0oYSxiKT0+IW1pYShhLGIpLGRwPXtLaDohMCx0eXBlOlN0cmluZyxmaTphdCxOaDohMSxvSzohMSxuajplcH0sc2lhLGJ0O1N5bWJvbC5tZXRhZGF0YT09bnVsbCYmKFN5bWJvbC5tZXRhZGF0YT1TeW1ib2woIm1ldGFkYXRhIikpO3NpYT1TeW1ib2wubWV0YWRhdGE7YnQ9bmV3IFdlYWtNYXA7Cl8uY3Q9Y2xhc3MgZXh0ZW5kcyBsaWF7c3RhdGljIGFkZEluaXRpYWxpemVyKGEpe3RoaXMucmgoKTsodGhpcy55eD8/KHRoaXMueXg9W10pKS5wdXNoKGEpfXN0YXRpYyBnZXQgb2JzZXJ2ZWRBdHRyaWJ1dGVzKCl7dGhpcy5lcCgpO3JldHVybiB0aGlzLmFBJiZbLi4udGhpcy5hQS5rZXlzKCldfXN0YXRpYyByaCgpe2lmKCF0aGlzLmhhc093blByb3BlcnR5KCJScCIpKXt2YXIgYT1waWEodGhpcyk7YS5lcCgpO2EueXghPT12b2lkIDAmJih0aGlzLnl4PVsuLi5hLnl4XSk7dGhpcy5ScD1uZXcgTWFwKGEuUnApfX1zdGF0aWMgZXAoKXt0aWEoKTtpZighdGhpcy5oYXNPd25Qcm9wZXJ0eSgia0QiKSl7dGhpcy5rRD0hMDt0aGlzLnJoKCk7aWYodGhpcy5oYXNPd25Qcm9wZXJ0eSgicHJvcGVydGllcyIpKXt2YXIgYT10aGlzLnByb3BlcnRpZXMsYj1bLi4ubmlhKGEpLC4uLm9pYShhKV07Zm9yKGxldCBjIG9mIGIpRWRhKHRoaXMsYyxhW2NdKX1hPXRoaXNbc2lhXTtpZihhIT09bnVsbCYmCihhPWJ0LmdldChhKSxhIT09dm9pZCAwKSlmb3IobGV0IFtjLGRdb2YgYSl0aGlzLlJwLnNldChjLGQpO3RoaXMuYUE9bmV3IE1hcDtmb3IobGV0IFtjLGRdb2YgdGhpcy5ScClhPWMsYj10aGlzLkdDKGEsZCksYiE9PXZvaWQgMCYmdGhpcy5hQS5zZXQoYixhKTtiPXRoaXMuc3R5bGVzO2E9W107aWYoQXJyYXkuaXNBcnJheShiKSl7Yj1uZXcgU2V0KGIuZmxhdChJbmZpbml0eSkucmV2ZXJzZSgpKTtmb3IobGV0IGMgb2YgYilhLnVuc2hpZnQoa2lhKGMpKX1lbHNlIGIhPT12b2lkIDAmJmEucHVzaChraWEoYikpO3RoaXMuckg9YX19c3RhdGljIEdDKGEsYil7Yj1iLktoO3JldHVybiBiPT09ITE/dm9pZCAwOnR5cGVvZiBiPT09InN0cmluZyI/Yjp0eXBlb2YgYT09PSJzdHJpbmciP2EudG9Mb3dlckNhc2UoKTp2b2lkIDB9Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMuWmg9dm9pZCAwO3RoaXMuTWg9dGhpcy5PaD0hMTt0aGlzLkFoPW51bGw7dGhpcy5EQygpfURDKCl7dGhpcy5hbD0KbmV3IFByb21pc2UoYT0+dGhpcy52cj1hKTt0aGlzLkpoPW5ldyBNYXA7dGhpcy5GQygpO18uY3AodGhpcyk7dGhpcy5jb25zdHJ1Y3Rvci55eD8uZm9yRWFjaChhPT5hKHRoaXMpKX1GQygpe3ZhciBhPW5ldyBNYXAsYj10aGlzLmNvbnN0cnVjdG9yLlJwO2ZvcihsZXQgYyBvZiBiLmtleXMoKSl0aGlzLmhhc093blByb3BlcnR5KGMpJiYoYS5zZXQoYyx0aGlzW2NdKSxkZWxldGUgdGhpc1tjXSk7YS5zaXplPjAmJih0aGlzLlpoPWEpfXNpKCl7dmFyIGE9dGhpcy5zaGFkb3dSb290Pz90aGlzLmF0dGFjaFNoYWRvdyh0aGlzLmNvbnN0cnVjdG9yLlBtKTtqaWEoYSx0aGlzLmNvbnN0cnVjdG9yLnJIKTtyZXR1cm4gYX1jb25uZWN0ZWRDYWxsYmFjaygpe3RoaXMuUGs/Pyh0aGlzLlBrPXRoaXMuc2koKSk7dGhpcy52cighMCk7dGhpcy5JaD8uZm9yRWFjaChhPT5hLnV5Py4oKSl9dnIoKXt9ZGlzY29ubmVjdGVkQ2FsbGJhY2soKXt0aGlzLkloPy5mb3JFYWNoKGE9PmEuRkQ/LigpKX1hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soYSwKYixjKXt0aGlzLm54KGEsYyl9RUMoYSxiKXt2YXIgYz10aGlzLmNvbnN0cnVjdG9yLlJwLmdldChhKSxkPXRoaXMuY29uc3RydWN0b3IuR0MoYSxjKTtkIT09dm9pZCAwJiZjLk5oPT09ITAmJihiPShjLmZpPy5MaiE9PXZvaWQgMD9jLmZpOmF0KS5MaihiLGMudHlwZSksdGhpcy5BaD1hLGI9PW51bGw/dGhpcy5yZW1vdmVBdHRyaWJ1dGUoZCk6dGhpcy5zZXRBdHRyaWJ1dGUoZCxiKSx0aGlzLkFoPW51bGwpfW54KGEsYil7dmFyIGM9dGhpcy5jb25zdHJ1Y3RvcjthPWMuYUEuZ2V0KGEpO2lmKGEhPT12b2lkIDAmJnRoaXMuQWghPT1hKXtjPWMuUnAuZ2V0KGEpPz9kcDtsZXQgZD10eXBlb2YgYy5maT09PSJmdW5jdGlvbiI/e2FrOmMuZml9OmMuZmk/LmFrIT09dm9pZCAwP2MuZmk6YXQ7dGhpcy5BaD1hO2I9ZC5hayhiLGMudHlwZSk7dGhpc1thXT1iPz90aGlzLldoPy5nZXQoYSk/P2I7dGhpcy5BaD1udWxsfX1XayhhLGIse29LOmMsTmg6ZCxXejplfSxmKXtpZihjJiYhKHRoaXMuV2g/PwoodGhpcy5XaD1uZXcgTWFwKSkuaGFzKGEpJiYodGhpcy5XaC5zZXQoYSxmPz9iPz90aGlzW2FdKSxlIT09ITB8fGYhPT12b2lkIDApKXJldHVybjt0aGlzLkpoLmhhcyhhKXx8KHRoaXMuTWh8fGN8fChiPXZvaWQgMCksdGhpcy5KaC5zZXQoYSxiKSk7ZD09PSEwJiZ0aGlzLkFoIT09YSYmKHRoaXMuYmk/Pyh0aGlzLmJpPW5ldyBTZXQpKS5hZGQoYSl9YXN5bmMgcXgoKXt0aGlzLk9oPSEwO3RyeXthd2FpdCB0aGlzLmFsfWNhdGNoKGIpe3RoaXMubFN8fFByb21pc2UucmVqZWN0KGIpfXZhciBhPUZkYSh0aGlzKTthIT1udWxsJiZhd2FpdCBhO3JldHVybiF0aGlzLk9ofWhtKCl7fW94KGEpe3RoaXMuSWg/LmZvckVhY2goYj0+Yi53Tj8uKCkpO3RoaXMuTWh8fCh0aGlzLk1oPSEwLHRoaXMuemgoKSk7dGhpcy5TaihhKX1zcigpe3RoaXMuSmg9bmV3IE1hcDt0aGlzLk9oPSExfWdldCBDcCgpe3JldHVybiB0aGlzLmFsfXVwZGF0ZSgpe3RoaXMuYmkmJih0aGlzLmJpPXRoaXMuYmkuZm9yRWFjaChhPT4KdGhpcy5FQyhhLHRoaXNbYV0pKSk7dGhpcy5zcigpfVNqKCl7fXpoKCl7fX07Xy5jdC5wcm90b3R5cGUueng9Xy5oYSgyMik7Xy5jdC5ySD1bXTtfLmN0LlBtPXttb2RlOiJvcGVuIn07Xy5jdC5ScD1uZXcgTWFwO18uY3Qua0Q9bmV3IE1hcDt2YXIgdGlhPSgpPT57KF8uVWEucmVhY3RpdmVFbGVtZW50VmVyc2lvbnM/PyhfLlVhLnJlYWN0aXZlRWxlbWVudFZlcnNpb25zPVtdKSkucHVzaCgiMi4xLjIiKTt0aWE9KCk9Pnt9fTtfLmR0PWNsYXNzIGV4dGVuZHMgXy5jdHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy5Qbj17aG9zdDp0aGlzfTt0aGlzLk9rPXZvaWQgMH1zaSgpe3ZhciBhPXN1cGVyLnNpKCksYjsoYj10aGlzLlBuKS5XRT8/KGIuV0U9YS5maXJzdENoaWxkKTtyZXR1cm4gYX11cGRhdGUoYSl7dmFyIGI9dGhpcy50aSgpO3RoaXMuTWh8fCh0aGlzLlBuLmlzQ29ubmVjdGVkPXRoaXMuaXNDb25uZWN0ZWQpO3N1cGVyLnVwZGF0ZShhKTt0aGlzLk9rPV8uWHMoYix0aGlzLlBrLHRoaXMuUG4pfWNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTt0aGlzLk9rPy5GSighMCl9ZGlzY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO3RoaXMuT2s/LkZKKCExKX10aSgpe3JldHVybiAkb31zdGF0aWMgZXAoKXt1aWEoKTtyZXR1cm4gXy5jdC5lcC5jYWxsKHRoaXMpfX07Xy5kdC5fJGxpdEVsZW1lbnQkPSEwOwpfLmR0LmtEPSEwO3ZhciB1aWE9KCk9PnsoXy5VYS5saXRFbGVtZW50VmVyc2lvbnM/PyhfLlVhLmxpdEVsZW1lbnRWZXJzaW9ucz1bXSkpLnB1c2goIjQuMi4yIik7dWlhPSgpPT57fX07Xy5ldD1jbGFzcyBleHRlbmRzIF8uZHR7c3RhdGljIGdldCBQbSgpe3JldHVybnsuLi5fLmR0LlBtLG1vZGU6Xy5McFsxNjZdPyJvcGVuIjoiY2xvc2VkIn19Y29uc3RydWN0b3IoYT17fSl7c3VwZXIoKTt0aGlzLndrPSExO3RoaXMuQnY9bmV3IFNldDt0aGlzLmNMPXRoaXMubG9jYWxOYW1lO3ZhciBiPXRoaXMuY29uc3RydWN0b3IuSWksYz13aW5kb3csZD10aGlzLmdldFJvb3ROb2RlKCkhPT10aGlzLGU9IWRvY3VtZW50LmN1cnJlbnRTY3JpcHQmJmRvY3VtZW50LnJlYWR5U3RhdGU9PT0ibG9hZGluZyI7KGQ9ZHx8ZSl8fChkPVhvJiZ0aGlzLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PVhvLnRvTG93ZXJDYXNlKCksWG89dm9pZCAwLGQ9ISFkKTtfLk0oYyxkP2IuS2k6Yi5KaSk7UGNhKHRoaXMpO3RoaXMueGkoYSxfLmV0LCJXZWJDb21wb25lbnRWaWV3Iil9YXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrKGEsYixjKXt0aGlzLndrPSEwO3N1cGVyLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhhLApiLGMpO3RoaXMud2s9ITF9YWRkRXZlbnRMaXN0ZW5lcihhLGIsYyl7c3VwZXIuYWRkRXZlbnRMaXN0ZW5lcihhLGIsYyl9cmVtb3ZlRXZlbnRMaXN0ZW5lcihhLGIsYyl7c3VwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLGIsYyl9eGkoYSxiLGMpe3RoaXMuY29uc3RydWN0b3I9PT1iJiZSbShhLHRoaXMsYyl9ZXJyb3IoYSl7Y29uc29sZS5lcnJvcihfLmhwKHRoaXMsYSkpfX07Xy5ldC5wcm90b3R5cGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1fLmV0LnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyO18uZXQucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9Xy5ldC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcjtfLmV0LnN0eWxlcz1bXTt2YXIgdmlhPV8uQ20oe2NlbnRlcjpfLk1tKF8uWW0pLHpvb206Xy5hcyxoZWFkaW5nOl8uYXMsdGlsdDpfLmFzfSk7dmFyIFdlYT1jbGFzcyBleHRlbmRzIF8ueW57Z2V0KGEpe3JldHVybiBzdXBlci5nZXQoYSl9fTt2YXIgSGRhPWNsYXNzIGV4dGVuZHMgXy55bntjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5tYXBJZD1hO3RoaXMubWFwVHlwZXM9Yjt0aGlzLnFoPSExfW1hcElkX2NoYW5nZWQoKXtpZighdGhpcy5xaCYmdGhpcy5nZXQoIm1hcElkIikhPT10aGlzLm1hcElkKWlmKHRoaXMuZ2V0KCJtYXBIYXNCZWVuQWJsZVRvQmVEcmF3biIpKXt0aGlzLnFoPSEwO3RyeXt0aGlzLnNldCgibWFwSWQiLHRoaXMubWFwSWQpfWZpbmFsbHl7dGhpcy5xaD0hMX1jb25zb2xlLndhcm4oIkdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJOiBBIE1hcCdzIG1hcElkIHByb3BlcnR5IGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIGluaXRpYWwgTWFwIHJlbmRlci4iKTtfLk0od2luZG93LDE0OTcyOSl9ZWxzZSB0aGlzLm1hcElkPXRoaXMuZ2V0KCJtYXBJZCIpLHRoaXMuc3R5bGVzX2NoYW5nZWQoKSx0aGlzLm1hcFR5cGVJZF9jaGFuZ2VkKCl9c3R5bGVzX2NoYW5nZWQoKXt2YXIgYT10aGlzLmdldCgic3R5bGVzIik7CnRoaXMubWFwSWQmJmEmJih0aGlzLnNldCgic3R5bGVzIix2b2lkIDApLGNvbnNvbGUud2FybigiR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEk6IEEgTWFwJ3Mgc3R5bGVzIHByb3BlcnR5IGNhbm5vdCBiZSBzZXQgd2hlbiBhIG1hcElkIGlzIHByZXNlbnQuIFdoZW4gYSBtYXBJZCBpcyBwcmVzZW50LCBtYXAgc3R5bGVzIGFyZSBjb250cm9sbGVkIHZpYSB0aGUgY2xvdWQgY29uc29sZS4gUGxlYXNlIHNlZSBkb2N1bWVudGF0aW9uIGF0IGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3N0eWxpbmcjY2xvdWRfdG9vbGluZyIpLF8uTSh3aW5kb3csMTQ5NzMxKSxhLmxlbmd0aHx8Xy5NKHdpbmRvdywxNDk3MzApKX1tYXBUeXBlSWRfY2hhbmdlZCgpe3ZhciBhPXRoaXMuZ2V0KCJtYXBUeXBlSWQiKTt0aGlzLm1hcElkJiZhJiZ0aGlzLm1hcFR5cGVzJiZ0aGlzLm1hcFR5cGVzLmdldChhKSYmKE9iamVjdC52YWx1ZXMoXy5VcikuaW5jbHVkZXMoYSk/CmE9PT0ic2F0ZWxsaXRlIiYmKGNvbnNvbGUud2FybigiR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEk6IEEgTWFwJ3MgcHJlcmVnaXN0ZXJlZCBtYXAgdHlwZSBtYXkgbm90IGFwcGx5IGFsbCBjdXN0b20gc3R5bGVzIHdoZW4gYSBtYXBJZCBpcyBwcmVzZW50LiBXaGVuIGEgbWFwSWQgaXMgcHJlc2VudCwgbWFwIHN0eWxlcyBhcmUgY29udHJvbGxlZCB2aWEgdGhlIGNsb3VkIGNvbnNvbGUgZm9yIGFsbCBkZWZhdWx0IG1hcCB0eXBlcyBleGNlcHQgZm9yIHNhdGVsbGl0ZS4gUGxlYXNlIHNlZSBkb2N1bWVudGF0aW9uIGF0IGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL21hcHMvZG9jdW1lbnRhdGlvbi9qYXZhc2NyaXB0L3N0eWxpbmcjY2xvdWRfdG9vbGluZyIpLF8uTSh3aW5kb3csMTQ5NzMxKSk6KGNvbnNvbGUud2FybigiR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEk6IEEgTWFwJ3MgY3VzdG9tIG1hcCB0eXBlcyBjYW5ub3QgYmUgc2V0IHdoZW4gYSBtYXBJZCBpcyBwcmVzZW50LiBXaGVuIGEgbWFwSWQgaXMgcHJlc2VudCwgbWFwIHN0eWxlcyBhcmUgY29udHJvbGxlZCB2aWEgdGhlIGNsb3VkIGNvbnNvbGUuIFBsZWFzZSBzZWUgZG9jdW1lbnRhdGlvbiBhdCBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzL2RvY3VtZW50YXRpb24vamF2YXNjcmlwdC9zdHlsaW5nI2Nsb3VkX3Rvb2xpbmciKSwKXy5NKHdpbmRvdywxNDk3MzEpKSl9fTt2YXIgcnA9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmlzQXZhaWxhYmxlPSEwO3RoaXMucWg9W119Y2xvbmUoKXt2YXIgYT1uZXcgcnA7YS5pc0F2YWlsYWJsZT10aGlzLmlzQXZhaWxhYmxlO3RoaXMucWguZm9yRWFjaChiPT57bHAoYSxiKX0pO3JldHVybiBhfX07dmFyIHdpYT17YlI6IkZFQVRVUkVfVFlQRV9VTlNQRUNJRklFRCIsQURNSU5JU1RSQVRJVkVfQVJFQV9MRVZFTF8xOiJBRE1JTklTVFJBVElWRV9BUkVBX0xFVkVMXzEiLEFETUlOSVNUUkFUSVZFX0FSRUFfTEVWRUxfMjoiQURNSU5JU1RSQVRJVkVfQVJFQV9MRVZFTF8yIixDT1VOVFJZOiJDT1VOVFJZIixMT0NBTElUWToiTE9DQUxJVFkiLFBPU1RBTF9DT0RFOiJQT1NUQUxfQ09ERSIsREFUQVNFVDoiREFUQVNFVCIsT1I6IlJPQURfUElMT1QiLEJSOiJORUlHSEJPUkhPT0RfUElMT1QiLEtROiJCVUlMRElORyIsU0NIT09MX0RJU1RSSUNUOiJTQ0hPT0xfRElTVFJJQ1QifTt2YXIgZnQ9bnVsbDtfLnFiKF8ucXAsXy55bik7Xy5xcC5wcm90b3R5cGUubWFwX2NoYW5nZWQ9ZnVuY3Rpb24oKXt2YXIgYT1hc3luYygpPT57dmFyIGI9dGhpcy5nZXRNYXAoKTtpZihiKWlmKGZ0LkZwKHRoaXMsYiksXy5ndC5oYXModGhpcykpXy5ndC5kZWxldGUodGhpcyk7ZWxzZXtsZXQgYz1iLl9fZ20ucWg7YXdhaXQgYy5zSjthd2FpdCBjLmtFO2xldCBkPV8ubXAoYywiV0VCR0xfT1ZFUkxBWV9WSUVXIik7aWYoIWQuaXNBdmFpbGFibGUmJnRoaXMuZ2V0TWFwKCk9PT1iKXtmb3IobGV0IGUgb2YgZC5xaCljLmxvZyhlKTtmdC5wcSh0aGlzKX19ZWxzZSBmdC5wcSh0aGlzKX07ZnQ/YSgpOl8uSGwoIndlYmdsIikudGhlbihiPT57ZnQ9YjthKCl9KX07Xy5xcC5wcm90b3R5cGUuWEk9ZnVuY3Rpb24oYSxiKXt0aGlzLnNoPSEwO3RoaXMub25EcmF3KHtnbDphLHRyYW5zZm9ybWVyOmJ9KTt0aGlzLnNoPSExfTtfLnFwLnByb3RvdHlwZS5vbkRyYXdXcmFwcGVyPV8ucXAucHJvdG90eXBlLlhJOwpfLnFwLnByb3RvdHlwZS5yZXF1ZXN0UmVkcmF3PWZ1bmN0aW9uKCl7dGhpcy5xaD0hMDtpZighdGhpcy5zaCYmZnQpe2xldCBhPXRoaXMuZ2V0TWFwKCk7YSYmZnQucmVxdWVzdFJlZHJhdyhhKX19O18ucXAucHJvdG90eXBlLnJlcXVlc3RSZWRyYXc9Xy5xcC5wcm90b3R5cGUucmVxdWVzdFJlZHJhdztfLnFwLnByb3RvdHlwZS5yZXF1ZXN0U3RhdGVVcGRhdGU9ZnVuY3Rpb24oKXt0aGlzLnRoPSEwO2lmKGZ0KXtsZXQgYT10aGlzLmdldE1hcCgpO2EmJmZ0LnhoKGEpfX07Xy5xcC5wcm90b3R5cGUucmVxdWVzdFN0YXRlVXBkYXRlPV8ucXAucHJvdG90eXBlLnJlcXVlc3RTdGF0ZVVwZGF0ZTtfLnFwLnByb3RvdHlwZS5yaD0tMTtfLnFwLnByb3RvdHlwZS5xaD0hMTtfLnFwLnByb3RvdHlwZS50aD0hMTtfLnFwLnByb3RvdHlwZS5zaD0hMTtfLlduKF8ucXAucHJvdG90eXBlLHttYXA6Xy5oc30pO18uZ3Q9bmV3IFNldDtfLmh0PWNsYXNzIGV4dGVuZHMgXy55bntjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5tYXA9YTt0aGlzLnFoPSExO3RoaXMud2g9bnVsbDt0aGlzLmNhY2hlPXt9O3RoaXMuanc9dGhpcy5yaD0iVU5LTk9XTiI7dGhpcy5zaD1uZXcgUHJvbWlzZShjPT57dGhpcy50aD1jfSk7dGhpcy5rRT1iLndoLnRoZW4oYz0+e3RoaXMud2g9Yzt0aGlzLnJoPWMuZW8oKT8iVFJVRSI6IkZBTFNFIjtzcCh0aGlzKX0pO3RoaXMuc0o9dGhpcy5zaC50aGVuKGM9Pnt0aGlzLmp3PWM/IlRSVUUiOiJGQUxTRSI7c3AodGhpcyl9KTtzcCh0aGlzKX1sb2coYSxiPSIiKXthLkdxJiZjb25zb2xlLmVycm9yKGIrYS5HcSk7YS5GdCYmXy5NKHRoaXMubWFwLGEuRnQpfWVvKCl7cmV0dXJuIHRoaXMucmg9PT0iVFJVRSJ8fHRoaXMucmg9PT0iVU5LTk9XTiJ9WXYoKXtyZXR1cm4gdGhpcy53aH1CeihhKXt0aGlzLnRoKGEpfWdldE1hcENhcGFiaWxpdGllcyhhPSExKXt2YXIgYj17fTtiLmlzQWR2YW5jZWRNYXJrZXJzQXZhaWxhYmxlPQp0aGlzLmNhY2hlLnJHLmlzQXZhaWxhYmxlO2IuaXNEYXRhRHJpdmVuU3R5bGluZ0F2YWlsYWJsZT10aGlzLmNhY2hlLmFILmlzQXZhaWxhYmxlO2IuaXNXZWJHTE92ZXJsYXlWaWV3QXZhaWxhYmxlPXRoaXMuY2FjaGUueXEuaXNBdmFpbGFibGU7Yj1PYmplY3QuZnJlZXplKGIpO2EmJnRoaXMubG9nKHtGdDoxNTMwMjd9KTtyZXR1cm4gYn1tYXBDYXBhYmlsaXRpZXNfY2hhbmdlZCgpe2lmKCF0aGlzLnFoKXRocm93IE5kYSh0aGlzKSxFcnJvcigiQXR0ZW1wdGVkIHRvIHNldCByZWFkLW9ubHkga2V5OiBtYXBDYXBhYmlsaXRpZXMiKTt9fTtfLmh0LnByb3RvdHlwZS5WRD1fLmhhKDIzKTt2YXIgTWRhPXtBRFZBTkNFRF9NQVJLRVJTOntGdDoxNTMwMjV9LERBVEFfRFJJVkVOX1NUWUxJTkc6e0Z0OjE1MzAyNn0sV0VCR0xfT1ZFUkxBWV9WSUVXOntGdDoyMDkxMTJ9fTt2YXIgeGlhPWNsYXNzIGV4dGVuZHMgXy55bnt9O3ZhciB5aWE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vcHRpb25zPWE7dGhpcy5xaD1uZXcgTWFwfWh1KGEsYil7YT10eXBlb2YgYT09PSJudW1iZXIiP1thXTphO2ZvcihsZXQgYyBvZiBhKXRoaXMucWguZ2V0KGMpLGE9dGhpcy5vcHRpb25zLmh1KGMsYiksdGhpcy5xaC5zZXQoYyxhKX1abihhLGIsYyl7YT10eXBlb2YgYT09PSJudW1iZXIiP1thXTphO2ZvcihsZXQgZCBvZiBhKWlmKGE9dGhpcy5xaC5nZXQoZCkpdGhpcy5vcHRpb25zLlpuKGEsYixjKSx0aGlzLnFoLmRlbGV0ZShkKX1qdShhKXthPXR5cGVvZiBhPT09Im51bWJlciI/W2FdOmE7Zm9yKGxldCBiIG9mIGEpaWYoYT10aGlzLnFoLmdldChiKSl0aGlzLm9wdGlvbnMuanUoYSksdGhpcy5xaC5kZWxldGUoYil9fTtQZGEucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5jb250ZXh0PXRoaXMucmg9dGhpcy5zaD10aGlzLnFoPW51bGw7dGhpcy50aD0hMX07dmFyIFFkYT1uZXcgR2hhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBQZGF9LGZ1bmN0aW9uKGEpe2EucmVzZXQoKX0pO18ud3AucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBYZGEodGhpcywoMCxfLlByKSh0eXBlb2YgYT09PSJmdW5jdGlvbiI/YTpudWxsKSwoMCxfLlByKSh0eXBlb2YgYj09PSJmdW5jdGlvbiI/YjpudWxsKSxjKX07Xy53cC5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7Xy5hYT1fLndwLnByb3RvdHlwZTtfLmFhLmlRPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFhkYSh0aGlzLG51bGwsKDAsXy5QcikoYSksYil9O18uYWEuY2F0Y2g9Xy53cC5wcm90b3R5cGUuaVE7Cl8uYWEuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMucWg9PTApe2xldCBiPW5ldyB4cChhKTtfLnlwKGZ1bmN0aW9uKCl7U2RhKHRoaXMsYil9LHRoaXMpfX07Xy5hYS5tUT1mdW5jdGlvbihhKXt0aGlzLnFoPTA7dnAodGhpcywyLGEpfTtfLmFhLm5RPWZ1bmN0aW9uKGEpe3RoaXMucWg9MDt2cCh0aGlzLDMsYSl9O18uYWEuQk09ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT1UZGEodGhpcyk7KVVkYSh0aGlzLGEsdGhpcy5xaCx0aGlzLnpoKTt0aGlzLnhoPSExfTt2YXIgYWVhPV8uQmI7Xy5xYih4cCxfLnRiKTt4cC5wcm90b3R5cGUubmFtZT0iY2FuY2VsIjtfLnFiKF8uQXAsXy5tayk7Xy5hYT1fLkFwLnByb3RvdHlwZTtfLmFhLmt4PTA7Xy5hYS5Caz1mdW5jdGlvbigpe18uQXAuaXIuQmsuY2FsbCh0aGlzKTt0aGlzLnN0b3AoKTtkZWxldGUgdGhpcy5xaDtkZWxldGUgdGhpcy5yaH07Xy5hYS5zdGFydD1mdW5jdGlvbihhKXt0aGlzLnN0b3AoKTt0aGlzLmt4PV8uenAodGhpcy5zaCxhIT09dm9pZCAwP2E6dGhpcy50aCl9O18uYWEuRGk9ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlKCl8fHRoaXMuc3RhcnQodm9pZCAwKX07Xy5hYS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5pc0FjdGl2ZSgpJiZfLlVhLmNsZWFyVGltZW91dCh0aGlzLmt4KTt0aGlzLmt4PTB9O18uYWEuaXNBY3RpdmU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5reCE9MH07Xy5hYS5nRz1mdW5jdGlvbigpe3RoaXMua3g9MDt0aGlzLnFoJiZ0aGlzLnFoLmNhbGwodGhpcy5yaCl9O3ZhciB6aWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnFoPW51bGw7dGhpcy5yaD1uZXcgTWFwO3RoaXMuc2g9bmV3IF8uQXAoKCk9PntiZWEodGhpcyl9KX19O3ZhciBBaWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnFoPW5ldyBNYXA7dGhpcy5yaD1uZXcgXy5BcCgoKT0+e3ZhciBhPVtdLGI9W107Zm9yKGxldCBjIG9mIHRoaXMucWgudmFsdWVzKCkpe2xldCBkPWMua3koKTtkJiYhZC5nZXRTaXplKCkuZXF1YWxzKF8ucW8pJiZjLnRsJiYoYy5jb2xsaXNpb25CZWhhdmlvcj09PSJSRVFVSVJFRF9BTkRfSElERVNfT1BUSU9OQUwiPyhhLnB1c2goYy5reSgpKSxjLlhwPSExKTpiLnB1c2goYykpfWIuc29ydChlZWEpO2ZvcihsZXQgYyBvZiBiKWZlYShjLmt5KCksYSk/Yy5YcD0hMDooYS5wdXNoKGMua3koKSksYy5YcD0hMSl9LDApfX07Xy5xYihfLkNwLF8ubWspO18uYWE9Xy5DcC5wcm90b3R5cGU7Xy5hYS55dj1fLmhhKDI0KTtfLmFhLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLnFoJiYoXy5VYS5jbGVhclRpbWVvdXQodGhpcy5xaCksdGhpcy5xaD1udWxsKTt0aGlzLnRoPW51bGw7dGhpcy5yaD0hMTt0aGlzLndoPVtdfTtfLmFhLnBhdXNlPWZ1bmN0aW9uKCl7Kyt0aGlzLnNofTtfLmFhLnJlc3VtZT1mdW5jdGlvbigpe3RoaXMuc2gmJigtLXRoaXMuc2gsIXRoaXMuc2gmJnRoaXMucmgmJih0aGlzLnJoPSExLHRoaXMuQWguYXBwbHkobnVsbCx0aGlzLndoKSkpfTtfLmFhLkJrPWZ1bmN0aW9uKCl7dGhpcy5zdG9wKCk7Xy5DcC5pci5Cay5jYWxsKHRoaXMpfTsKXy5hYS5RSz1mdW5jdGlvbigpe3RoaXMucWgmJihfLlVhLmNsZWFyVGltZW91dCh0aGlzLnFoKSx0aGlzLnFoPW51bGwpO3RoaXMudGg/KHRoaXMucWg9Xy56cCh0aGlzLnhoLHRoaXMudGgtXy5tYigpKSx0aGlzLnRoPW51bGwpOnRoaXMuc2g/dGhpcy5yaD0hMDoodGhpcy5yaD0hMSx0aGlzLkFoLmFwcGx5KG51bGwsdGhpcy53aCkpfTt2YXIgQmlhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaD1uZXcgQWlhO3RoaXMucWg9bmV3IHppYTt0aGlzLnRoPW5ldyBTZXQ7dGhpcy53aD1uZXcgXy5DcCgoKT0+e3RoaXMuc2gucmguRGkoKTt2YXIgYT10aGlzLnFoLGI9bmV3IFNldCh0aGlzLnRoKTtmb3IobGV0IGMgb2YgYiljLlhwP18uZGVhKGEsYyk6Xy5jZWEoYSxjKTt0aGlzLnRoLmNsZWFyKCl9LDUwKTt0aGlzLnJoPW5ldyBTZXR9fTtfLnhxPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5lbGVtZW50cz17fTt0aGlzLnNpemU9MH1yZW1vdmUoYSl7dmFyIGI9Xy54bihhKTt0aGlzLmVsZW1lbnRzW2JdJiYoZGVsZXRlIHRoaXMuZWxlbWVudHNbYl0sLS10aGlzLnNpemUsXy53bih0aGlzLCJyZW1vdmUiLGEpLHRoaXMub25SZW1vdmUmJnRoaXMub25SZW1vdmUoYSkpfWNvbnRhaW5zKGEpe3JldHVybiEhdGhpcy5lbGVtZW50c1tfLnhuKGEpXX1mb3JFYWNoKGEpe3ZhciBiPXRoaXMuZWxlbWVudHM7Zm9yKGxldCBjIGluIGIpYS5jYWxsKHRoaXMsYltjXSl9Z2V0U2l6ZSgpe3JldHVybiB0aGlzLnNpemV9fTtfLmp0PWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuZWk9YX1xcShhKXthPV8uZ2VhKHRoaXMsYSk7cmV0dXJuIGEubGVuZ3RoPHRoaXMuZWkubGVuZ3RoP25ldyBfLmp0KGEpOnRoaXN9Zm9yRWFjaChhLGIpe3RoaXMuZWkuZm9yRWFjaCgoYyxkKT0+e2EuY2FsbChiLGMsZCl9KX1zb21lKGEsYil7cmV0dXJuIHRoaXMuZWkuc29tZSgoYyxkKT0+YS5jYWxsKGIsYyxkKSl9c2l6ZSgpe3JldHVybiB0aGlzLmVpLmxlbmd0aH19O18uQ2lhPXtqYXBhbl9wcmVxdWFrZToyMCxqYXBhbl9wb3N0cXVha2UyMDEwOjI0fTt2YXIgRGlhPWNsYXNzIGV4dGVuZHMgXy55bntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMubWFya2Vycz1hfHxuZXcgXy54cX19O3ZhciBFaWE7Xy5rdD1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5oZWFkaW5nPWE7dGhpcy5waXRjaD1fLmNtKGIsLTkwLDkwKTt0aGlzLnpvb209TWF0aC5tYXgoMCxjKX19O0VpYT1fLkNtKHt6b29tOl8uTW0oaG8pLGhlYWRpbmc6aG8scGl0Y2g6aG99KTtfLkZpYT1uZXcgXy5nbyg2NiwyNik7dmFyIEdpYTtfLkZwPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLHtBbjpkPSExLHBhc3NpdmU6ZT0hMX09e30pe3RoaXMucWg9YTt0aGlzLnNoPWI7dGhpcy5yaD1jO3RoaXMudGg9R2lhP3twYXNzaXZlOmUsY2FwdHVyZTpkfTpkO2EuYWRkRXZlbnRMaXN0ZW5lcj9hLmFkZEV2ZW50TGlzdGVuZXIoYixjLHRoaXMudGgpOmEuYXR0YWNoRXZlbnQmJmEuYXR0YWNoRXZlbnQoIm9uIitiLGMpfXJlbW92ZSgpe2lmKHRoaXMucWgucmVtb3ZlRXZlbnRMaXN0ZW5lcil0aGlzLnFoLnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5zaCx0aGlzLnJoLHRoaXMudGgpO2Vsc2V7bGV0IGE9dGhpcy5xaDthLmRldGFjaEV2ZW50JiZhLmRldGFjaEV2ZW50KCJvbiIrdGhpcy5zaCx0aGlzLnJoKX19fTtHaWE9ITE7dHJ5e18uVWEuYWRkRXZlbnRMaXN0ZW5lcigidGVzdCIsbnVsbCxuZXcgY2xhc3N7Z2V0IHBhc3NpdmUoKXtHaWE9ITB9fSl9Y2F0Y2goYSl7fTt2YXIgSGlhLElpYTtIaWE9WyJtb3VzZWRvd24iLCJ0b3VjaHN0YXJ0IiwicG9pbnRlcmRvd24iLCJNU1BvaW50ZXJEb3duIl07SWlhPVsid2hlZWwiLCJtb3VzZXdoZWVsIl07Xy5IcD12b2lkIDA7Xy5HcD0hMTt0cnl7Xy5FcChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSwiOmZvY3VzLXZpc2libGUiKSxfLkdwPSEwfWNhdGNoKGEpe31pZih0eXBlb2YgZG9jdW1lbnQhPT0idW5kZWZpbmVkIil7Xy5xbihkb2N1bWVudCwia2V5ZG93biIsKCk9PntfLkhwPSJLRVlCT0FSRCJ9LCEwKTtmb3IobGV0IGEgb2YgSGlhKV8ucW4oZG9jdW1lbnQsYSwoKT0+e18uSHA9IlBPSU5URVIifSwhMCwhMCk7Zm9yKGxldCBhIG9mIElpYSlfLnFuKGRvY3VtZW50LGEsKCk9PntfLkhwPSJXSEVFTCJ9LCEwLCEwKX07dmFyIGx0PWNsYXNze2NvbnN0cnVjdG9yKGEsYj0wKXt0aGlzLm1ham9yPWE7dGhpcy5taW5vcj1ifX07dmFyIEppYSxLaWEsTGlhLE1pYSxKcCxpZWE7SmlhPW5ldyBNYXAoW1szLCJHb29nbGUgQ2hyb21lIl0sWzIsIk1pY3Jvc29mdCBFZGdlIl1dKTtLaWE9bmV3IE1hcChbWzEsWyJtc2llIl1dLFsyLFsiZWRnZSJdXSxbMyxbImNocm9tZSIsImNyaW9zIl1dLFs1LFsiZmlyZWZveCIsImZ4aW9zIl1dLFs0LFsiYXBwbGV3ZWJraXQiXV0sWzYsWyJ0cmlkZW50Il1dLFs3LFsibW96aWxsYSJdXV0pO0xpYT1uZXcgTWFwKFtbMSwieDExIl0sWzIsIm1hY2ludG9zaCJdLFszLCJ3aW5kb3dzIl0sWzQsImFuZHJvaWQiXSxbNiwiaXBob25lIl0sWzUsImlwYWQiXV0pO01pYT1bMSwyLDMsNCw1LDZdO0pwPW51bGw7CmllYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZhciBhPW5hdmlnYXRvci51c2VyQWdlbnQ7dGhpcy5xaD10aGlzLnR5cGU9MDt0aGlzLnZlcnNpb249bmV3IGx0KDApO3RoaXMudGg9bmV3IGx0KDApO3ZhciBiPWEudG9Mb3dlckNhc2UoKTtmb3IobGV0IFtlLGZdb2YgS2lhLmVudHJpZXMoKSl7dmFyIGM9ZTtsZXQgZz1mLmZpbmQoaD0+Yi5pbmNsdWRlcyhoKSk7aWYoZyl7dGhpcy50eXBlPWM7aWYoYz0obmV3IFJlZ0V4cChnKyJbIC9dPyhbMC05XSspLj8oWzAtOV0rKT8iKSkuZXhlYyhiKSl0aGlzLnZlcnNpb249bmV3IGx0KE1hdGgudHJ1bmMoTnVtYmVyKGNbMV0pKSxNYXRoLnRydW5jKE51bWJlcihjWzJdfHwiMCIpKSk7YnJlYWt9fXRoaXMudHlwZT09PTcmJihjPVJlZ0V4cCgiXk1vemlsbGEvLipHZWNrby8uKltNaW5lZmllbGR8U2hpcmV0b2tvXVsgL10/KFswLTldKykuPyhbMC05XSspPyIpLmV4ZWMoYSkpJiYodGhpcy50eXBlPTUsdGhpcy52ZXJzaW9uPW5ldyBsdChNYXRoLnRydW5jKE51bWJlcihjWzFdKSksCk1hdGgudHJ1bmMoTnVtYmVyKGNbMl18fCIwIikpKSk7dGhpcy50eXBlPT09NiYmKGM9UmVnRXhwKCJydjooWzAtOV17Mix9Lj9bMC05XSspIikuZXhlYyhhKSkmJih0aGlzLnR5cGU9MSx0aGlzLnZlcnNpb249bmV3IGx0KE1hdGgudHJ1bmMoTnVtYmVyKGNbMV0pKSkpO2Zvcih2YXIgZCBvZiBNaWEpaWYoKGM9TGlhLmdldChkKSkmJmIuaW5jbHVkZXMoYykpe3RoaXMucWg9ZDticmVha31pZih0aGlzLnFoPT09Nnx8dGhpcy5xaD09PTV8fHRoaXMucWg9PT0yKWlmKGQ9L09TICg/OlggKT8oXGQrKVtfLl0/KFxkKykvLmV4ZWMoYSkpdGhpcy50aD1uZXcgbHQoTWF0aC50cnVuYyhOdW1iZXIoZFsxXSkpLE1hdGgudHJ1bmMoTnVtYmVyKGRbMl18fCIwIikpKTt0aGlzLnFoPT09NCYmKGE9L0FuZHJvaWQgKFxkKylcLj8oXGQrKT8vLmV4ZWMoYSkpJiYodGhpcy50aD1uZXcgbHQoTWF0aC50cnVuYyhOdW1iZXIoYVsxXSkpLE1hdGgudHJ1bmMoTnVtYmVyKGFbMl18fCIwIikpKSk7dGhpcy5yaD0KdGhpcy5xaD09PTF8fHRoaXMucWg9PT0yfHx0aGlzLnFoPT09MyYmIWIuaW5jbHVkZXMoIm1vYmlsZSIpfX07Cl8uTnA9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaD10aGlzLnJoPW51bGx9Z2V0IHZlcnNpb24oKXtpZih0aGlzLnNoKXJldHVybiB0aGlzLnNoO2lmKG5hdmlnYXRvci51c2VyQWdlbnREYXRhJiZuYXZpZ2F0b3IudXNlckFnZW50RGF0YS5icmFuZHMpZm9yKGxldCBhIG9mIG5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kcylpZihhLmJyYW5kPT09SmlhLmdldCh0aGlzLnR5cGUpKXJldHVybiB0aGlzLnNoPW5ldyBsdCgrYS52ZXJzaW9uLDApO3JldHVybiB0aGlzLnNoPUtwKCkudmVyc2lvbn1nZXQgdGgoKXtyZXR1cm4gS3AoKS50aH1nZXQgdHlwZSgpe2lmKHRoaXMucmgpcmV0dXJuIHRoaXMucmg7aWYobmF2aWdhdG9yLnVzZXJBZ2VudERhdGEmJm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kcyl7bGV0IGE9bmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLm1hcChiPT5iLmJyYW5kKTtmb3IobGV0IFtiLGNdb2YgSmlhKXtsZXQgZD1iO2lmKGEuaW5jbHVkZXMoYykpcmV0dXJuIHRoaXMucmg9CmR9fXJldHVybiB0aGlzLnJoPUtwKCkudHlwZX1nZXQgd2goKXtyZXR1cm4gdGhpcy50eXBlPT09NXx8dGhpcy50eXBlPT09N31nZXQgcWgoKXtyZXR1cm4gdGhpcy50eXBlPT09NHx8dGhpcy50eXBlPT09M31nZXQgeWgoKXtyZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEmJiJtb2JpbGUiaW4gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGE/IW5hdmlnYXRvci51c2VyQWdlbnREYXRhLm1vYmlsZTpLcCgpLnJofWdldCBBaCgpe3JldHVybiB0aGlzLnR5cGU9PT0xfWdldCBGaCgpe3JldHVybiB0aGlzLnR5cGU9PT01fWdldCB4aCgpe3JldHVybiB0aGlzLnR5cGU9PT0zfWdldCBCaCgpe3JldHVybiB0aGlzLnR5cGU9PT00fWdldCB6aCgpe2lmKG5hdmlnYXRvci51c2VyQWdlbnREYXRhJiZuYXZpZ2F0b3IudXNlckFnZW50RGF0YS5wbGF0Zm9ybSlyZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm09PT0iaU9TIjt2YXIgYT1LcCgpO3JldHVybiBhLnFoPT09Nnx8YS5xaD09PQo1fWdldCBEaCgpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm0/bmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm09PT0ibWFjT1MiOktwKCkucWg9PT0yfWdldCBDaCgpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm0/bmF2aWdhdG9yLnVzZXJBZ2VudERhdGEucGxhdGZvcm09PT0iQW5kcm9pZCI6S3AoKS5xaD09PTR9fTtfLk5pYT1uZXcgU2V0KFsiVVMiLCJMUiIsIk1NIl0pO3ZhciBsZWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgYT1kb2N1bWVudDt0aGlzLnFoPV8uTnA7dGhpcy50cmFuc2Zvcm09a2VhKGEsWyJ0cmFuc2Zvcm0iLCJXZWJraXRUcmFuc2Zvcm0iLCJNb3pUcmFuc2Zvcm0iLCJtc1RyYW5zZm9ybSJdKTt0aGlzLnJoPWtlYShhLFsiV2Via2l0VXNlclNlbGVjdCIsIk1velVzZXJTZWxlY3QiLCJtc1VzZXJTZWxlY3QiXSl9fSxPcDtfLlNwPW5ldyBjbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnFoPWE7dGhpcy5yaD1fLlRsKCgpPT5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIikuZHJhZ2dhYmxlIT09dm9pZCAwKX19KF8uTnApO3ZhciBPaWE7T2lhPW5ldyBXZWFrTWFwOwpfLm10PWNsYXNzIGV4dGVuZHMgXy5ub3tjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5Jej10aGlzLndoPW51bGw7dGhpcy50aD0hMTt0aGlzLnNoPW51bGw7dGhpcy5ubChhLGIpfW5sKGEsYil7Xy4kbihhKTt0aGlzLl9fZ209bmV3IERpYShiJiZiLm1hcmtlcnMpO3RoaXMuX19nbS5zZXQoImlzSW5pdGlhbGl6ZWQiLCExKTt0aGlzLnFoPV8ubW8oITEsITApO3RoaXMucWguYWRkTGlzdGVuZXIoZT0+e2lmKHRoaXMuZ2V0KCJ2aXNpYmxlIikhPT1lKXtpZih0aGlzLnRoKXtsZXQgZj10aGlzLl9fZ207Zi5zZXQoInNob3VsZEF1dG9Gb2N1cyIsZSYmZi5nZXQoImlzTWFwSW5pdGlhbGl6ZWQiKSl9bWVhKHRoaXMsZSk7dGhpcy5zZXQoInZpc2libGUiLGUpfX0pO2ImJmIuY2xpZW50JiYodGhpcy5Jej1fLkNpYVtiLmNsaWVudF18fG51bGwpO3ZhciBjPXRoaXMuY29udHJvbHM9W107Xy5hbShfLnBxLChlLGYpPT57Y1tmXT1uZXcgXy5FbztjW2ZdLmFkZExpc3RlbmVyKCJpbnNlcnRfYXQiLAooKT0+e18uTSh0aGlzLDE4MjExMil9KX0pO3RoaXMuZ249YiYmYi5nbnx8Xy5tbyghMSk7dGhpcy5jb250YWluZXI9YTt0aGlzLlBwPWImJmIuUHB8fHRoaXMuY29udGFpbmVyO3RoaXMuX19nbS5zZXQoImRldmVsb3BlclByb3ZpZGVkRGl2Iix0aGlzLlBwKTtfLlVhLk11dGF0aW9uT2JzZXJ2ZXImJnRoaXMuUHAmJigoYT1PaWEuZ2V0KHRoaXMuUHApKSYmYS5kaXNjb25uZWN0KCksYT1uZXcgTXV0YXRpb25PYnNlcnZlcihlPT57Zm9yKGxldCBmIG9mIGUpZi5hdHRyaWJ1dGVOYW1lPT09ImRpciImJl8ud24odGhpcywic2hvdWxkVXNlUlRMQ29udHJvbHNDaGFuZ2UiKX0pLE9pYS5zZXQodGhpcy5QcCxhKSxhLm9ic2VydmUodGhpcy5QcCx7YXR0cmlidXRlczohMH0pKTt0aGlzLnNldCgic3RhbmRBbG9uZSIsITApO3RoaXMuc2V0UG92KG5ldyBfLmt0KDAsMCwxKSk7YiYmYi5wb3YmJihhPWIucG92LF8uam0oYS56b29tKXx8KGEuem9vbT10eXBlb2YgYi56b29tPT09Im51bWJlciI/CmIuem9vbToxKSk7dGhpcy5zZXRWYWx1ZXMoYik7dGhpcy5nZXRWaXNpYmxlKCk9PT12b2lkIDAmJnRoaXMuc2V0VmlzaWJsZSghMCk7dmFyIGQ9dGhpcy5fX2dtLm1hcmtlcnM7Xy50bih0aGlzLCJwYW5vX2NoYW5nZWQiLCgpPT57Xy5IbCgibWFya2VyIikudGhlbihlPT57ZS5NQyhkLHRoaXMsITEpfSl9KTtfLkxwWzM1XSYmYiYmYi5kRSYmXy5IbCgidXRpbCIpLnRoZW4oZT0+e2UuZXIudGgobmV3IF8ubnEoYi5kRSkpfSk7Xy5zbih0aGlzLCJrZXlkb3duIix0aGlzLHRoaXMueGgpfXZpc2libGVfY2hhbmdlZCgpe3ZhciBhPSEhdGhpcy5nZXQoInZpc2libGUiKSxiPSExO3RoaXMucWguZ2V0KCkhPT1hJiYodGhpcy50aCYmKGI9dGhpcy5fX2dtLGIuc2V0KCJzaG91bGRBdXRvRm9jdXMiLGEmJmIuZ2V0KCJpc01hcEluaXRpYWxpemVkIikpKSxtZWEodGhpcyxhKSx0aGlzLnFoLnNldChhKSxiPWEpO2EmJih0aGlzLndoPXRoaXMud2h8fG5ldyBQcm9taXNlKGM9PntfLkhsKCJzdHJlZXR2aWV3IikudGhlbihkPT4Ke2lmKHRoaXMuSXopdmFyIGU9dGhpcy5Jejt0aGlzLl9fZ20uc2V0KCJpc0luaXRpYWxpemVkIiwhMCk7YyhkLlZPKHRoaXMsdGhpcy5xaCx0aGlzLnRoLGUpKX0sKCk9PntfLk9sKHRoaXMuX19nbS5nZXQoInNsb1RyYWNraW5nSWQiKSwxMyl9KX0pLGImJnRoaXMud2gudGhlbihjPT57Yy5KUCgpfSkpfXhoKGEpe2Eua2V5PT09IkVzY2FwZSImJnRoaXMucmg/LmdzPy5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSYmdGhpcy5nZXQoImVuYWJsZUNsb3NlQnV0dG9uIikmJnRoaXMuZ2V0KCJ2aXNpYmxlIikmJihhLnN0b3BQcm9wYWdhdGlvbigpLF8ud24odGhpcywiY2xvc2VjbGljayIpLHRoaXMuc2V0KCJ2aXNpYmxlIiwhMSkpfXJlZ2lzdGVyUGFub1Byb3ZpZGVyKGEsYil7dGhpcy5zZXQoInBhbm9Qcm92aWRlciIse3Byb3ZpZGVyOmEsb3B0aW9uczpifHx7fX0pfWZvY3VzKCl7dmFyIGE9dGhpcy5fX2dtO3RoaXMuZ2V0VmlzaWJsZSgpJiYhYS5nZXQoInBlbmRpbmdGb2N1cyIpJiYKYS5zZXQoInBlbmRpbmdGb2N1cyIsITApfWdldFBhbm8oKXtyZXR1cm4gdGhpcy5nZXQoInBhbm8iKX1nZXRTdGF0dXMoKXtyZXR1cm4gdGhpcy5nZXQoInN0YXR1cyIpfXNldFBhbm8oYSl7dGhpcy5zZXQoInBhbm8iLGEpfWdldFBob3RvZ3JhcGhlclBvdigpe3JldHVybiB0aGlzLmdldCgicGhvdG9ncmFwaGVyUG92Iil9Z2V0UG9zaXRpb24oKXtyZXR1cm4gdGhpcy5nZXQoInBvc2l0aW9uIil9c2V0UG9zaXRpb24oYSl7dGhpcy5zZXQoInBvc2l0aW9uIixhKX1nZXRQb3YoKXtyZXR1cm4gdGhpcy5nZXQoInBvdiIpfXNldFBvdihhKXt0aGlzLnNldCgicG92IixhKX1nZXRMb2NhdGlvbigpe3JldHVybiB0aGlzLmdldCgibG9jYXRpb24iKX1nZXRMaW5rcygpe3JldHVybiB0aGlzLmdldCgibGlua3MiKX1zZXRMaW5rcyhhKXt0aGlzLnNldCgibGlua3MiLGEpfWdldE1vdGlvblRyYWNraW5nKCl7cmV0dXJuIHRoaXMuZ2V0KCJtb3Rpb25UcmFja2luZyIpfXNldE1vdGlvblRyYWNraW5nKGEpe3RoaXMuc2V0KCJtb3Rpb25UcmFja2luZyIsCmEpfWdldFZpc2libGUoKXtyZXR1cm4gdGhpcy5nZXQoInZpc2libGUiKX1zZXRWaXNpYmxlKGEpe3RoaXMuc2V0KCJ2aXNpYmxlIixhKX1nZXRab29tKCl7cmV0dXJuIHRoaXMuZ2V0KCJ6b29tIil9c2V0Wm9vbShhKXt0aGlzLnNldCgiem9vbSIsYSl9c2V0T3B0aW9ucyhhKXt0aGlzLnNldFZhbHVlcyhhKX19O18ubXQucHJvdG90eXBlLkh0PV8uaGEoMjcpO18ubXQucHJvdG90eXBlLkVuPV8uaGEoMjUpO18ubXQucHJvdG90eXBlLnNldE9wdGlvbnM9Xy5tdC5wcm90b3R5cGUuc2V0T3B0aW9ucztfLm10LnByb3RvdHlwZS5zZXRab29tPV8ubXQucHJvdG90eXBlLnNldFpvb207Xy5tdC5wcm90b3R5cGUuZ2V0Wm9vbT1fLm10LnByb3RvdHlwZS5nZXRab29tO18ubXQucHJvdG90eXBlLnNldFZpc2libGU9Xy5tdC5wcm90b3R5cGUuc2V0VmlzaWJsZTtfLm10LnByb3RvdHlwZS5nZXRWaXNpYmxlPV8ubXQucHJvdG90eXBlLmdldFZpc2libGU7Cl8ubXQucHJvdG90eXBlLnNldE1vdGlvblRyYWNraW5nPV8ubXQucHJvdG90eXBlLnNldE1vdGlvblRyYWNraW5nO18ubXQucHJvdG90eXBlLmdldE1vdGlvblRyYWNraW5nPV8ubXQucHJvdG90eXBlLmdldE1vdGlvblRyYWNraW5nO18ubXQucHJvdG90eXBlLnNldExpbmtzPV8ubXQucHJvdG90eXBlLnNldExpbmtzO18ubXQucHJvdG90eXBlLmdldExpbmtzPV8ubXQucHJvdG90eXBlLmdldExpbmtzO18ubXQucHJvdG90eXBlLmdldExvY2F0aW9uPV8ubXQucHJvdG90eXBlLmdldExvY2F0aW9uO18ubXQucHJvdG90eXBlLnNldFBvdj1fLm10LnByb3RvdHlwZS5zZXRQb3Y7Xy5tdC5wcm90b3R5cGUuZ2V0UG92PV8ubXQucHJvdG90eXBlLmdldFBvdjtfLm10LnByb3RvdHlwZS5zZXRQb3NpdGlvbj1fLm10LnByb3RvdHlwZS5zZXRQb3NpdGlvbjtfLm10LnByb3RvdHlwZS5nZXRQb3NpdGlvbj1fLm10LnByb3RvdHlwZS5nZXRQb3NpdGlvbjsKXy5tdC5wcm90b3R5cGUuZ2V0UGhvdG9ncmFwaGVyUG92PV8ubXQucHJvdG90eXBlLmdldFBob3RvZ3JhcGhlclBvdjtfLm10LnByb3RvdHlwZS5zZXRQYW5vPV8ubXQucHJvdG90eXBlLnNldFBhbm87Xy5tdC5wcm90b3R5cGUuZ2V0U3RhdHVzPV8ubXQucHJvdG90eXBlLmdldFN0YXR1cztfLm10LnByb3RvdHlwZS5nZXRQYW5vPV8ubXQucHJvdG90eXBlLmdldFBhbm87Xy5tdC5wcm90b3R5cGUuZm9jdXM9Xy5tdC5wcm90b3R5cGUuZm9jdXM7Xy5tdC5wcm90b3R5cGUucmVnaXN0ZXJQYW5vUHJvdmlkZXI9Xy5tdC5wcm90b3R5cGUucmVnaXN0ZXJQYW5vUHJvdmlkZXI7Xy5tdC5wcm90b3R5cGUuY29uc3RydWN0b3I9Xy5tdC5wcm90b3R5cGUuY29uc3RydWN0b3I7Cl8uV24oXy5tdC5wcm90b3R5cGUse3Zpc2libGU6Xy5jcyxwYW5vOl8uYnMscG9zaXRpb246Xy5NbShfLlhtKSxwb3Y6Xy5NbShFaWEpLG1vdGlvblRyYWNraW5nOiRyLHBob3RvZ3JhcGhlclBvdjpudWxsLGxvY2F0aW9uOm51bGwsbGlua3M6Xy5HbShfLkltKF8ua20pKSxzdGF0dXM6bnVsbCx6b29tOl8uYXMsZW5hYmxlQ2xvc2VCdXR0b246Xy5jc30pO18ud20oXy5tdCk7Xy5udD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMueWw9W107dGhpcy5yaD10aGlzLnFoPXRoaXMuc2g9bnVsbH1yZWdpc3RlcihhKXt2YXIgYj10aGlzLnlsO3ZhciBjPWIubGVuZ3RoO2lmKCFjfHxhLnpJbmRleD49YlswXS56SW5kZXgpdmFyIGQ9MDtlbHNlIGlmKGEuekluZGV4Pj1iW2MtMV0uekluZGV4KXtmb3IoZD0wO2MtZD4xOyl7bGV0IGU9ZCtjPj4xO2EuekluZGV4Pj1iW2VdLnpJbmRleD9jPWU6ZD1lfWQ9Y31lbHNlIGQ9YztiLnNwbGljZShkLDAsYSl9dW5yZWdpc3RlcihhKXtfLm9tKHRoaXMueWwsYSl9c2V0Q2FwdHVyZShhLGIpe3RoaXMucWg9YTt0aGlzLnJoPWJ9cmVsZWFzZUNhcHR1cmUoYSxiKXt0aGlzLnFoPT09YSYmdGhpcy5yaD09PWImJih0aGlzLnJoPXRoaXMucWg9bnVsbCl9fTtfLm50LnByb3RvdHlwZS50QT1fLmhhKDI4KTtfLlBpYT1PYmplY3QuZnJlZXplKFsiZXhpdEZ1bGxzY3JlZW4iLCJ3ZWJraXRFeGl0RnVsbHNjcmVlbiIsIm1vekNhbmNlbEZ1bGxTY3JlZW4iLCJtc0V4aXRGdWxsc2NyZWVuIl0pO18uUWlhPU9iamVjdC5mcmVlemUoWyJmdWxsc2NyZWVuY2hhbmdlIiwid2Via2l0ZnVsbHNjcmVlbmNoYW5nZSIsIm1vemZ1bGxzY3JlZW5jaGFuZ2UiLCJNU0Z1bGxzY3JlZW5DaGFuZ2UiXSk7Xy5SaWE9T2JqZWN0LmZyZWV6ZShbImZ1bGxzY3JlZW5FbmFibGVkIiwid2Via2l0RnVsbHNjcmVlbkVuYWJsZWQiLCJtb3pGdWxsU2NyZWVuRW5hYmxlZCIsIm1zRnVsbHNjcmVlbkVuYWJsZWQiXSk7Xy5TaWE9T2JqZWN0LmZyZWV6ZShbInJlcXVlc3RGdWxsc2NyZWVuIiwid2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4iLCJtb3pSZXF1ZXN0RnVsbFNjcmVlbiIsIm1zUmVxdWVzdEZ1bGxzY3JlZW4iXSk7dmFyIFRlYT1jbGFzcyBleHRlbmRzIHhpYXtjb25zdHJ1Y3RvcihhLGIsYyxkKXtzdXBlcigpO3RoaXMuTXI9Yzt0aGlzLnJoPWQ7dGhpcy5KaD10aGlzLkh2PXRoaXMuams9dGhpcy5vdmVybGF5TGF5ZXI9bnVsbDt0aGlzLkloPSExO3RoaXMuZGl2PWI7dGhpcy5zZXQoImRldmVsb3BlclByb3ZpZGVkRGl2Iix0aGlzLmRpdik7dGhpcy5SbD1fLm1vKG5ldyBfLmp0KFtdKSk7dGhpcy5MaD1uZXcgXy54cTt0aGlzLmNvcHlyaWdodHM9bmV3IF8uRW87dGhpcy5BaD1uZXcgXy54cTt0aGlzLkRoPW5ldyBfLnhxO3RoaXMuQ2g9bmV3IF8ueHE7dGhpcy5nbj1fLm1vKF8ub2VhKGMsdHlwZW9mIGRvY3VtZW50PT09InVuZGVmaW5lZCI/bnVsbDpkb2N1bWVudCkpO3RoaXMuWXI9bmV3IF8ubG8obnVsbCk7dmFyIGU9dGhpcy5tYXJrZXJzPW5ldyBfLnhxO2UucWg9KCk9PntlLnFoPSgpPT57fTtQcm9taXNlLmFsbChbXy5IbCgibWFya2VyIiksdGhpcy5zaF0pLnRoZW4oKFtmLGddKT0+e2YuTUMoZSwKYSxnKX0pfTt0aGlzLnhoPW5ldyBfLm10KGMse3Zpc2libGU6ITEsZW5hYmxlQ2xvc2VCdXR0b246ITAsbWFya2VyczplLGduOnRoaXMuZ24sUHA6dGhpcy5kaXZ9KTt0aGlzLnhoLmJpbmRUbygiY29udHJvbFNpemUiLGEpO3RoaXMueGguYmluZFRvKCJyZXBvcnRFcnJvckNvbnRyb2wiLGEpO3RoaXMueGgudGg9ITA7dGhpcy56aD1uZXcgXy5udDt0aGlzLndoPW5ldyBQcm9taXNlKGY9Pnt0aGlzLldoPWZ9KTt0aGlzLnNpPW5ldyBQcm9taXNlKGY9Pnt0aGlzLmRpPWZ9KTt0aGlzLnFoPW5ldyBfLmh0KGEsdGhpcyk7dGhpcy5QaD1uZXcgXy5Fbzt0aGlzLnNoPXRoaXMucWguc0oudGhlbigoKT0+dGhpcy5xaC5qdz09PSJUUlVFIik7dGhpcy5Cej1mdW5jdGlvbihmKXt0aGlzLnFoLkJ6KGYpfTt0aGlzLnNldCgiaXNJbml0aWFsaXplZCIsITEpO3RoaXMueGguX19nbS5iaW5kVG8oImlzTWFwSW5pdGlhbGl6ZWQiLHRoaXMsImlzSW5pdGlhbGl6ZWQiKTt0aGlzLnJoLnRoZW4oKCk9Pgp7dGhpcy5zZXQoImlzSW5pdGlhbGl6ZWQiLCEwKX0pO3RoaXMuc2V0KCJpc01hcEJpbmRpbmdDb21wbGV0ZSIsITEpO3RoaXMuR2g9bmV3IFByb21pc2UoZj0+e18udG4odGhpcywibWFwYmluZGluZ2NvbXBsZXRlIiwoKT0+e3RoaXMuc2V0KCJpc01hcEJpbmRpbmdDb21wbGV0ZSIsITApO2YoKX0pfSk7dGhpcy5PaD1uZXcgQmlhO3RoaXMuc2gudGhlbihmPT57ZiYmdGhpcy5qayYmdGhpcy5qay5DaCh0aGlzLk9oLnFoKX0pO3RoaXMudGg9bmV3IE1hcDt0aGlzLnloPW5ldyBNYXA7Yj1bMjEzMzM3LDIxMTI0MiwyMTMzMzgsMjExMjQzXTtjPVsxMjI0NDcsLi4uYl07dGhpcy5CaD1uZXcgeWlhKHtodTpfLk5sLGp1Ol8uUGwsWm46Xy5PbCxoRDp7TUFQX0lOSVRJQUxJWkFUSU9OOm5ldyBTZXQoYyksVkVDVE9SX01BUF9JTklUSUFMSVpBVElPTjpuZXcgU2V0KGIpfX0pfX07dmFyIG90PXtVTklOSVRJQUxJWkVEOiJVTklOSVRJQUxJWkVEIixSQVNURVI6IlJBU1RFUiIsVkVDVE9SOiJWRUNUT1IifTt2YXIgb3E9Y2xhc3MgZXh0ZW5kcyBfLnlue3NldChhLGIpe2lmKGIhPW51bGwmJiEoYiYmXy5qbShiLm1heFpvb20pJiZiLnRpbGVTaXplJiZiLnRpbGVTaXplLndpZHRoJiZiLnRpbGVTaXplLmhlaWdodCYmYi5nZXRUaWxlJiZiLmdldFRpbGUuYXBwbHkpKXRocm93IEVycm9yKCJFeHBlY3RlZCB2YWx1ZSBpbXBsZW1lbnRpbmcgZ29vZ2xlLm1hcHMuTWFwVHlwZSIpO3N1cGVyLnNldChhLGIpfX07b3EucHJvdG90eXBlLnNldD1vcS5wcm90b3R5cGUuc2V0O29xLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1vcS5wcm90b3R5cGUuY29uc3RydWN0b3I7dmFyIFVlYT1jbGFzcyBleHRlbmRzIF8ueW57Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMucWg9ITE7dGhpcy5yaD0iVU5JTklUSUFMSVpFRCJ9cmVuZGVyaW5nVHlwZV9jaGFuZ2VkKCl7aWYoIXRoaXMucWgmJnRoaXMuZ2V0KCJtYXBIYXNCZWVuQWJsZVRvQmVEcmF3biIpKXRocm93IHBlYSh0aGlzKSxFcnJvcigiU2V0dGluZyBtYXAgJ3JlbmRlcmluZ1R5cGUnIGFmdGVyIGluc3RhbnRpYXRpb24gaXMgbm90IHN1cHBvcnRlZC4iKTt9fTtfLnB0PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaD1uZXcgXy5ibygxMjgsMTI4KTt0aGlzLnFoPTI1Ni8zNjA7dGhpcy5yaD0yNTYvKDIqTWF0aC5QSSk7dGhpcy53Rj0hMH1mcm9tTGF0TG5nVG9Qb2ludChhLGI9bmV3IF8uYm8oMCwwKSl7YT1fLlhtKGEpO3ZhciBjPXRoaXMuc2g7Yi54PWMueCthLmxuZygpKnRoaXMucWg7YT1fLmNtKE1hdGguc2luKF8udGwoYS5sYXQoKSkpLC0oMS0xRS0xNSksMS0xRS0xNSk7Yi55PWMueSsuNSpNYXRoLmxvZygoMSthKS8oMS1hKSkqLXRoaXMucmg7cmV0dXJuIGJ9ZnJvbVBvaW50VG9MYXRMbmcoYSxiPSExKXt2YXIgYz10aGlzLnNoO3JldHVybiBuZXcgXy5UbShfLnVsKDIqTWF0aC5hdGFuKE1hdGguZXhwKChhLnktYy55KS8tdGhpcy5yaCkpLU1hdGguUEkvMiksKGEueC1jLngpL3RoaXMucWgsYil9fTt2YXIgVGlhPVswLF8uQnIsLTNdO18uJHA9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9T2woYSl7cmV0dXJuIF8ua2godGhpcyw4LGEpfWNsZWFyQ29sb3IoKXtyZXR1cm4gXy5RZih0aGlzLDkpfX07Xy4kcC5wcm90b3R5cGUua3A9Xy5oYSgyOSk7Xy4kcC5wcm90b3R5cGUucmg9Xy5oYSg1KTtfLlpwPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07Xy5acC5wcm90b3R5cGUucWs9Xy5oYSgzMik7dmFyIEplYT1jbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O18uWXA9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTtfLllwLnByb3RvdHlwZS5CaT1fLmhhKDM0KTtfLllwLnByb3RvdHlwZS5GaT1fLmhhKDMzKTt2YXIgSWVhPWNsYXNzIGV4dGVuZHMgXy5Je2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfWdldFpvb20oKXtyZXR1cm4gXy5MZyh0aGlzLDMpfXNldFpvb20oYSl7cmV0dXJuIF8uZGgodGhpcywzLGEpfX07dmFyIEtlYT1fLiRpKEllYSxbMCxbMCxfLlAsLTFdLF8uWixfLkJyLFswLF8uQnIsLTEsXy5aXSxbMCxfLlosXy5SLC0xLDEsXy5VLC0xLDEsXy5ZLFswLF8uWiwtMSxfLnVyLFRpYSxfLlIsXy51ciwtMSxfLlosVGlhLF8udXJdLFswLF8uQ3IsXy5SXSxfLlIsLTIsXy5DcixfLnlyLDIsXy5SLDgyLF8uUl0sMSxfLlUsXy5aXSk7Xy5XcD1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMucWg9YTt0aGlzLnJoPWJ9ZXF1YWxzKGEpe3JldHVybiBhP3RoaXMucWg9PT1hLnFoJiZ0aGlzLnJoPT09YS5yaDohMX19O18uVWlhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubWluPTA7dGhpcy5tYXg9YTt0aGlzLmxlbmd0aD1hLTB9d3JhcChhKXtyZXR1cm4gYS1NYXRoLmZsb29yKChhLXRoaXMubWluKS90aGlzLmxlbmd0aCkqdGhpcy5sZW5ndGh9fTtfLlZpYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnd2PWEud3Z8fG51bGw7dGhpcy5Zdz1hLll3fHxudWxsfXdyYXAoYSl7cmV0dXJuIG5ldyBfLldwKHRoaXMud3Y/dGhpcy53di53cmFwKGEucWgpOmEucWgsdGhpcy5Zdz90aGlzLll3LndyYXAoYS5yaCk6YS5yaCl9fTtfLldpYT1uZXcgXy5WaWEoe3d2Om5ldyBfLlVpYSgyNTYpfSk7dmFyIENlYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkKXt0aGlzLnJoPWE7dGhpcy50aWx0PWI7dGhpcy5oZWFkaW5nPWM7dGhpcy5xaD1kO2E9TWF0aC5jb3MoYipNYXRoLlBJLzE4MCk7Yj1NYXRoLmNvcyhjKk1hdGguUEkvMTgwKTtjPU1hdGguc2luKGMqTWF0aC5QSS8xODApO3RoaXMubTExPXRoaXMucmgqYjt0aGlzLm0xMj10aGlzLnJoKmM7dGhpcy5tMjE9LXRoaXMucmgqYSpjO3RoaXMubTIyPXRoaXMucmgqYSpiO3RoaXMuc2g9dGhpcy5tMTEqdGhpcy5tMjItdGhpcy5tMTIqdGhpcy5tMjF9ZXF1YWxzKGEpe3JldHVybiBhP3RoaXMubTExPT09YS5tMTEmJnRoaXMubTEyPT09YS5tMTImJnRoaXMubTIxPT09YS5tMjEmJnRoaXMubTIyPT09YS5tMjImJnRoaXMucWg9PT1hLnFoOiExfX07dmFyIFllYT1jbGFzcyBleHRlbmRzIF8ueW57Y29uc3RydWN0b3IoYSl7dmFyIGI9Xy5kcixjPV8ubWwoXy5KbC5yaCgpKTtzdXBlcigpO3RoaXMuQWg9Xy5VbigiY2VudGVyIik7dGhpcy54aD1fLlVuKCJzaXplIik7dGhpcy55aD10aGlzLnFoPXRoaXMucmg9dGhpcy53aD1udWxsO3RoaXMuQmg9dGhpcy5DaD0hMTt0aGlzLnpoPW5ldyBfLkFwKCgpPT57dmFyIGQ9RmVhKHRoaXMpO2lmKHRoaXMuc2gmJnRoaXMuQ2gpdGhpcy55aCE9PWQmJnRoaXMucWg/LnJlbW92ZSgpO2Vsc2V7dmFyIGU9IiIsZj10aGlzLkFoKCksZz1EZWEodGhpcyksaD10aGlzLnhoKCk7aWYoaCl7aWYoZiYmaXNGaW5pdGUoZi5sYXQoKSkmJmlzRmluaXRlKGYubG5nKCkpJiZnPjEmJmQhPW51bGwmJmgmJmgud2lkdGgmJmguaGVpZ2h0JiZ0aGlzLnJoKXtfLlFwKHRoaXMucmgsaCk7aWYoZj1fLkJvKHRoaXMuR2gsZixnKSl7dmFyIGs9bmV3IF8ueW87ay5taW5YPU1hdGgucm91bmQoZi54LWgud2lkdGgvMik7CmsubWF4WD1rLm1pblgraC53aWR0aDtrLm1pblk9TWF0aC5yb3VuZChmLnktaC5oZWlnaHQvMik7ay5tYXhZPWsubWluWStoLmhlaWdodDtmPWt9ZWxzZSBmPW51bGw7az1YaWFbZF07ZiYmKHRoaXMuQ2g9ITAsdGhpcy55aD1kLHRoaXMuc2gmJnRoaXMucWgmJihlPV8uVnAoZywwLDApLHRoaXMuc2guc2V0KHtpbWFnZTp0aGlzLnFoLGJvdW5kczp7bWluOl8uWHAoZSx7WGg6Zi5taW5YLFloOmYubWluWX0pLG1heDpfLlhwKGUse1hoOmYubWF4WCxZaDpmLm1heFl9KX0sc2l6ZTp7d2lkdGg6aC53aWR0aCxoZWlnaHQ6aC5oZWlnaHR9fSkpLGU9TGVhKHRoaXMsZixnLGQsaykpfXRoaXMucWgmJihfLlFwKHRoaXMucWgsaCksSGVhKHRoaXMsZSkpfX19LDApO3RoaXMuSmg9Yjt0aGlzLkdoPW5ldyBfLnB0O3RoaXMudGg9YysiL21hcHMvYXBpL2pzL1N0YXRpY01hcFNlcnZpY2UuR2V0TWFwSW1hZ2UiO3RoaXMuc2g9bmV3IF8ubG8obnVsbCk7dGhpcy5zZXQoImRpdiIsYSk7dGhpcy5zZXQoImxvYWRpbmciLAohMCk7dGhpcy5zZXQoImNvbG9yVGhlbWUiLDEpfWdldERpdigpe3JldHVybiBudWxsfWNoYW5nZWQoKXt2YXIgYT10aGlzLkFoKCksYj1EZWEodGhpcyksYz1GZWEodGhpcyksZD0hIXRoaXMueGgoKSxlPXRoaXMuZ2V0KCJtYXBJZCIpO2lmKGEmJiFhLmVxdWFscyh0aGlzLkRoKXx8dGhpcy5JaCE9PWJ8fHRoaXMuRmghPT1jfHx0aGlzLkJoIT09ZHx8dGhpcy53aCE9PWUpdGhpcy5JaD1iLHRoaXMuRmg9Yyx0aGlzLkJoPWQsdGhpcy53aD1lLHRoaXMuc2h8fHRoaXMucWg/LnJlbW92ZSgpLHRoaXMuemguRGkoKTt0aGlzLkRoPWF9ZGl2X2NoYW5nZWQoKXt2YXIgYT10aGlzLmdldCgiZGl2IiksYj10aGlzLnJoO2lmKGEpaWYoYilhLmFwcGVuZENoaWxkKGIpO2Vsc2V7Yj10aGlzLnJoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Iuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiI7bGV0IGM9dGhpcy5xaD1fLndsKCJJTUciKTtfLnFuKGIsImNvbnRleHRtZW51IixkPT57Xy5mbihkKTsKXy5obihkKX0pO2Mub250b3VjaHN0YXJ0PWMub250b3VjaG1vdmU9Yy5vbnRvdWNoZW5kPWMub250b3VjaGNhbmNlbD1kPT57Xy5nbihkKTtfLmhuKGQpfTtjLmFsdD0iIjtfLlFwKGMsXy5xbyk7YS5hcHBlbmRDaGlsZChiKTtfLkJwKHRoaXMuemgpfWVsc2UgYiYmKGIucmVtb3ZlKCksdGhpcy5yaD1udWxsKX19LEVlYT17cm9hZG1hcDowLHNhdGVsbGl0ZToyLGh5YnJpZDozLHRlcnJhaW46NH0sWGlhPXswOjEsMjoyLDM6Miw0OjJ9O3ZhciBZaWE9Y2xhc3N7Y29uc3RydWN0b3IoKXtQY2EodGhpcyl9YWRkTGlzdGVuZXIoYSxiKXtyZXR1cm4gXy5rbih0aGlzLGEsYil9eGkoYSxiLGMpe3RoaXMuY29uc3RydWN0b3I9PT1iJiZSbShhLHRoaXMsYyl9fTtfLlppYT1fLkNtKHtmaWxsQ29sb3I6Xy5NbShfLmRzKSxmaWxsT3BhY2l0eTpfLk1tKF8uWnIpLHN0cm9rZUNvbG9yOl8uTW0oXy5kcyksc3Ryb2tlT3BhY2l0eTpfLk1tKF8uWnIpLHN0cm9rZVdlaWdodDpfLk1tKF8uWnIpLHBvaW50UmFkaXVzOl8uTW0oXy5MbShfLllyLGE9PntpZihhPD0xMjgpcmV0dXJuIGE7dGhyb3cgXy5BbSgiVGhlIG1heCBhbGxvd2VkIHBvaW50UmFkaXVzIHZhbHVlIGlzIDEyOHB4LiIpO30pKX0sITEsIkZlYXR1cmVTdHlsZU9wdGlvbnMiKTtfLnF0PWNsYXNzIGV4dGVuZHMgWWlhe2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5zaD10aGlzLnFoPW51bGw7dGhpcy5yaD0hMDt0aGlzLm1hcD1hLm1hcDt0aGlzLndoPWEuZmVhdHVyZVR5cGU7dGhpcy54aD1hLmRhdGFzZXRJZDt0aGlzLnRoPWEuRHN9Z2V0IGZlYXR1cmVUeXBlKCl7cmV0dXJuIHRoaXMud2h9c2V0IGZlYXR1cmVUeXBlKGEpe3Rocm93IG5ldyBUeXBlRXJyb3IoJ2dvb2dsZS5tYXBzLkZlYXR1cmVMYXllciAiZmVhdHVyZVR5cGUiIGlzIHJlYWQtb25seS4nKTt9Z2V0IGlzQXZhaWxhYmxlKCl7cmV0dXJuIE1lYSh0aGlzKS5pc0F2YWlsYWJsZX1zZXQgaXNBdmFpbGFibGUoYSl7dGhyb3cgbmV3IFR5cGVFcnJvcignZ29vZ2xlLm1hcHMuRmVhdHVyZUxheWVyICJpc0F2YWlsYWJsZSIgaXMgcmVhZC1vbmx5LicpO31nZXQgc3R5bGUoKXthcSh0aGlzLCJnb29nbGUubWFwcy5GZWF0dXJlTGF5ZXIuc3R5bGUiKTtyZXR1cm4gdGhpcy5xaH1zZXQgc3R5bGUoYSl7aWYoYSl0cnl7dmFyIGI9Cl8uS20oW2loYSxfLlppYV0pKGEpfWNhdGNoKGMpe3Rocm93IF8uQW0oImdvb2dsZS5tYXBzLkZlYXR1cmVMYXllci5zdHlsZSIsYyk7fWVsc2UgYj1udWxsO3RoaXMucWg9YjthcSh0aGlzLCJnb29nbGUubWFwcy5GZWF0dXJlTGF5ZXIuc3R5bGUiKS5pc0F2YWlsYWJsZSYmKGJxKHRoaXMsdGhpcy5xaCksdGhpcy5mZWF0dXJlVHlwZT09PSJEQVRBU0VUIj9fLk0odGhpcy5tYXAsMTc3Mjk0KTpfLk0odGhpcy5tYXAsMTUxNTU1KSl9Z2V0IGlzRW5hYmxlZCgpe3JldHVybiB0aGlzLnJofXNldCBpc0VuYWJsZWQoYSl7dGhpcy5yaCE9PWEmJih0aGlzLnJoPWEsdGhpcy5jSSgpKX1nZXQgZGF0YXNldElkKCl7cmV0dXJuIHRoaXMueGh9c2V0IGRhdGFzZXRJZChhKXt0aHJvdyBuZXcgVHlwZUVycm9yKCdnb29nbGUubWFwcy5GZWF0dXJlTGF5ZXIgImRhdGFzZXRJZCIgaXMgcmVhZC1vbmx5LicpO31nZXQgRHMoKXtyZXR1cm4gdGhpcy50aH1zZXQgRHMoYSl7dGhpcy50aD1hfWFkZExpc3RlbmVyKGEsCmIpe2FxKHRoaXMsImdvb2dsZS5tYXBzLkZlYXR1cmVMYXllci5hZGRMaXN0ZW5lciIpO2E9PT0iY2xpY2siP3RoaXMuZmVhdHVyZVR5cGU9PT0iREFUQVNFVCI/Xy5NKHRoaXMubWFwLDE3NzgyMSk6Xy5NKHRoaXMubWFwLDE0ODgzNik6YT09PSJtb3VzZW1vdmUiJiYodGhpcy5mZWF0dXJlVHlwZT09PSJEQVRBU0VUIj9fLk0odGhpcy5tYXAsMTg2MzkxKTpfLk0odGhpcy5tYXAsMTg2MzkwKSk7cmV0dXJuIHN1cGVyLmFkZExpc3RlbmVyKGEsYil9Y0koKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMuc2ghPT10aGlzLnFoJiZicSh0aGlzLHRoaXMucWgpOnRoaXMuc2ghPT1udWxsJiZicSh0aGlzLG51bGwpfX07Xy5xYihjcSxVbCk7Xy5hYT1jcS5wcm90b3R5cGU7Xy5hYS5zZXRQb3NpdGlvbj1mdW5jdGlvbihhLGIsYyl7aWYodGhpcy5ub2RlPWEpdGhpcy5yaD10eXBlb2YgYj09PSJudW1iZXIiP2I6dGhpcy5ub2RlLm5vZGVUeXBlIT0xPzA6dGhpcy5xaD8tMToxO3R5cGVvZiBjPT09Im51bWJlciImJih0aGlzLmRlcHRoPWMpfTtfLmFhLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBjcSh0aGlzLm5vZGUsdGhpcy5xaCwhdGhpcy5zaCx0aGlzLnJoLHRoaXMuZGVwdGgpfTsKXy5hYS5uZXh0PWZ1bmN0aW9uKCl7aWYodGhpcy50aCl7aWYoIXRoaXMubm9kZXx8dGhpcy5zaCYmdGhpcy5kZXB0aD09MClyZXR1cm4gV3I7dmFyIGE9dGhpcy5ub2RlO2xldCBjPXRoaXMucWg/LTE6MTtpZih0aGlzLnJoPT1jKXt2YXIgYj10aGlzLnFoP2EubGFzdENoaWxkOmEuZmlyc3RDaGlsZDtiP3RoaXMuc2V0UG9zaXRpb24oYik6dGhpcy5zZXRQb3NpdGlvbihhLGMqLTEpfWVsc2UoYj10aGlzLnFoP2EucHJldmlvdXNTaWJsaW5nOmEubmV4dFNpYmxpbmcpP3RoaXMuc2V0UG9zaXRpb24oYik6dGhpcy5zZXRQb3NpdGlvbihhLnBhcmVudE5vZGUsYyotMSk7dGhpcy5kZXB0aCs9dGhpcy5yaCoodGhpcy5xaD8tMToxKX1lbHNlIHRoaXMudGg9ITA7cmV0dXJuKGE9dGhpcy5ub2RlKT97dmFsdWU6YSxkb25lOiExfTpXcn07Xy5hYS5lcXVhbHM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubm9kZT09dGhpcy5ub2RlJiYoIXRoaXMubm9kZXx8YS5yaD09dGhpcy5yaCl9OwpfLmFhLnNwbGljZT1mdW5jdGlvbihhKXt2YXIgYj10aGlzLm5vZGUsYz10aGlzLnFoPzE6LTE7dGhpcy5yaD09YyYmKHRoaXMucmg9YyotMSx0aGlzLmRlcHRoKz10aGlzLnJoKih0aGlzLnFoPy0xOjEpKTt0aGlzLnFoPSF0aGlzLnFoO2NxLnByb3RvdHlwZS5uZXh0LmNhbGwodGhpcyk7dGhpcy5xaD0hdGhpcy5xaDtjPV8uWWEoYXJndW1lbnRzWzBdKT9hcmd1bWVudHNbMF06YXJndW1lbnRzO2ZvcihsZXQgZD1jLmxlbmd0aC0xO2Q+PTA7ZC0tKV8ueGwoY1tkXSxiKTtfLnlsKGIpfTt2YXIgTmVhPWNsYXNzIGV4dGVuZHMgY3F7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSx2b2lkIDAsdm9pZCAwLG51bGwsdm9pZCAwKX1uZXh0KCl7ZG97bGV0IGE9c3VwZXIubmV4dCgpO2lmKGEuZG9uZSlyZXR1cm4gYX13aGlsZSh0aGlzLnJoPT0tMSk7cmV0dXJue3ZhbHVlOnRoaXMubm9kZSxkb25lOiExfX19O18ua3E9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5hPTE3Mjk7dGhpcy5tPWF9aGFzaChhKXt2YXIgYj10aGlzLmEsYz10aGlzLm0sZD0wO2ZvcihsZXQgZT0wLGY9YS5sZW5ndGg7ZTxmOysrZSlkKj1iLGQrPWFbZV0sZCU9YztyZXR1cm4gZH19O3ZhciBPZWE9UmVnRXhwKCInIiwiZyIpLGxxPW51bGw7dmFyIHFxPW51bGwsWmVhPW5ldyBXZWFrTWFwO18ucWIoXy5ycSxfLkxuKTtPYmplY3QuZnJlZXplKHtsYXRMbmdCb3VuZHM6bmV3IF8uUm4obmV3IF8uVG0oLTg1LC0xODApLG5ldyBfLlRtKDg1LDE4MCkpLHN0cmljdEJvdW5kczohMH0pO18ucnEucHJvdG90eXBlLnN0cmVldFZpZXdfY2hhbmdlZD1mdW5jdGlvbigpe3ZhciBhPXRoaXMuZ2V0KCJzdHJlZXRWaWV3Iik7YT9hLnNldCgic3RhbmRBbG9uZSIsITEpOnRoaXMuc2V0KCJzdHJlZXRWaWV3Iix0aGlzLl9fZ20ueGgpfTtfLnJxLnByb3RvdHlwZS5nZXREaXY9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX2dtLmRpdn07Xy5ycS5wcm90b3R5cGUuZ2V0RGl2PV8ucnEucHJvdG90eXBlLmdldERpdjtfLnJxLnByb3RvdHlwZS5wYW5CeT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuX19nbTtxcT9fLnduKGMsInBhbmJ5IixhLGIpOl8uSGwoIm1hcCIpLnRoZW4oKCk9PntfLnduKGMsInBhbmJ5IixhLGIpfSl9OwpfLnJxLnByb3RvdHlwZS5wYW5CeT1fLnJxLnByb3RvdHlwZS5wYW5CeTtfLnJxLnByb3RvdHlwZS5tb3ZlQ2FtZXJhPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuX19nbTt0cnl7YT12aWEoYSl9Y2F0Y2goYyl7dGhyb3cgXy5BbSgiaW52YWxpZCBDYW1lcmFPcHRpb25zIixjKTt9Yi5nZXQoImlzTWFwQmluZGluZ0NvbXBsZXRlIik/Xy53bihiLCJtb3ZlY2FtZXJhIixhKTpiLkdoLnRoZW4oKCk9PntfLnduKGIsIm1vdmVjYW1lcmEiLGEpfSl9O18ucnEucHJvdG90eXBlLm1vdmVDYW1lcmE9Xy5ycS5wcm90b3R5cGUubW92ZUNhbWVyYTsKXy5ycS5wcm90b3R5cGUuZ2V0RmVhdHVyZUxheWVyPWZ1bmN0aW9uKGEpe3RyeXthPV8uRm0od2lhKShhKX1jYXRjaChkKXt0aHJvdyBkLm1lc3NhZ2U9YGdvb2dsZS5tYXBzLk1hcC5nZXRGZWF0dXJlTGF5ZXI6IEV4cGVjdGVkIHZhbGlkIGdvb2dsZS5tYXBzLkZlYXR1cmVUeXBlLCBidXQgZ290ICcke2F9J2AsZDt9aWYoYT09PSJST0FEX1BJTE9UIil0aHJvdyBfLkFtKCJnb29nbGUubWFwcy5NYXAuZ2V0RmVhdHVyZUxheWVyOiBFeHBlY3RlZCB2YWxpZCBnb29nbGUubWFwcy5GZWF0dXJlVHlwZSwgYnV0IGdvdCAnUk9BRF9QSUxPVCciKTtpZihhPT09IkRBVEFTRVQiKXRocm93IF8uQW0oImdvb2dsZS5tYXBzLk1hcC5nZXRGZWF0dXJlTGF5ZXI6IEEgZGF0YXNldCBJRCBtdXN0IGJlIHNwZWNpZmllZCBmb3IgRmVhdHVyZUxheWVycyB0aGF0IGhhdmUgZmVhdHVyZVR5cGUgREFUQVNFVC4gUGxlYXNlIHVzZSBnb29nbGUubWFwcy5NYXAuZ2V0RGF0YXNldEZlYXR1cmVMYXllcigpIGluc3RlYWQuIik7CnBwKHRoaXMsImdvb2dsZS5tYXBzLk1hcC5nZXRGZWF0dXJlTGF5ZXIiLHtmZWF0dXJlVHlwZTphfSk7c3dpdGNoKGEpe2Nhc2UgIkFETUlOSVNUUkFUSVZFX0FSRUFfTEVWRUxfMSI6Xy5NKHRoaXMsMTQ4OTM2KTticmVhaztjYXNlICJBRE1JTklTVFJBVElWRV9BUkVBX0xFVkVMXzIiOl8uTSh0aGlzLDE0ODkzNyk7YnJlYWs7Y2FzZSAiQ09VTlRSWSI6Xy5NKHRoaXMsMTQ4OTM4KTticmVhaztjYXNlICJMT0NBTElUWSI6Xy5NKHRoaXMsMTQ4OTM5KTticmVhaztjYXNlICJQT1NUQUxfQ09ERSI6Xy5NKHRoaXMsMTQ4OTQxKTticmVhaztjYXNlICJST0FEX1BJTE9UIjpfLk0odGhpcywxNzg5MTQpO2JyZWFrO2Nhc2UgIlNDSE9PTF9ESVNUUklDVCI6Xy5NKHRoaXMsMTQ4OTQyKX12YXIgYj10aGlzLl9fZ207aWYoYi50aC5oYXMoYSkpcmV0dXJuIGIudGguZ2V0KGEpO3ZhciBjPW5ldyBfLnF0KHttYXA6dGhpcyxmZWF0dXJlVHlwZTphfSk7Yy5pc0VuYWJsZWQ9IWIuSWg7Yi50aC5zZXQoYSwKYyk7cmV0dXJuIGN9O18ucnEucHJvdG90eXBlLmdldERhdGFzZXRGZWF0dXJlTGF5ZXI9ZnVuY3Rpb24oYSl7dHJ5eygwLF8uZHMpKGEpfWNhdGNoKGQpe3Rocm93IGQubWVzc2FnZT1gZ29vZ2xlLm1hcHMuTWFwLmdldERhdGFzZXRGZWF0dXJlTGF5ZXI6IEV4cGVjdGVkIG5vbi1lbXB0eSBzdHJpbmcgZm9yIGRhdGFzZXRJZCwgYnV0IGdvdCAke2F9YCxkO31wcCh0aGlzLCJnb29nbGUubWFwcy5NYXAuZ2V0RGF0YXNldEZlYXR1cmVMYXllciIse2ZlYXR1cmVUeXBlOiJEQVRBU0VUIixkYXRhc2V0SWQ6YX0pO3ZhciBiPXRoaXMuX19nbTtpZihiLnloLmhhcyhhKSlyZXR1cm4gYi55aC5nZXQoYSk7dmFyIGM9bmV3IF8ucXQoe21hcDp0aGlzLGZlYXR1cmVUeXBlOiJEQVRBU0VUIixkYXRhc2V0SWQ6YX0pO2MuaXNFbmFibGVkPSFiLkloO2IueWguc2V0KGEsYyk7cmV0dXJuIGN9OwpfLnJxLnByb3RvdHlwZS5wYW5Ubz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLl9fZ207YT1fLlltKGEpO2IuZ2V0KCJpc01hcEJpbmRpbmdDb21wbGV0ZSIpP18ud24oYiwicGFudG8iLGEpOmIuR2gudGhlbigoKT0+e18ud24oYiwicGFudG8iLGEpfSl9O18ucnEucHJvdG90eXBlLnBhblRvPV8ucnEucHJvdG90eXBlLnBhblRvO18ucnEucHJvdG90eXBlLnBhblRvQm91bmRzPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5fX2dtLGQ9Xy5UbihhKTtjLmdldCgiaXNNYXBCaW5kaW5nQ29tcGxldGUiKT9fLnduKGMsInBhbnRvbGF0bG5nYm91bmRzIixkLGIpOmMuR2gudGhlbigoKT0+e18ud24oYywicGFudG9sYXRsbmdib3VuZHMiLGQsYil9KX07Xy5ycS5wcm90b3R5cGUucGFuVG9Cb3VuZHM9Xy5ycS5wcm90b3R5cGUucGFuVG9Cb3VuZHM7Cl8ucnEucHJvdG90eXBlLmZpdEJvdW5kcz1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuX19nbSxkPV8uVG4oYSk7Yy5nZXQoImlzTWFwQmluZGluZ0NvbXBsZXRlIik/cXEuZml0Qm91bmRzKHRoaXMsZCxiKTpjLkdoLnRoZW4oKCk9PntxcS5maXRCb3VuZHModGhpcyxkLGIpfSl9O18ucnEucHJvdG90eXBlLmZpdEJvdW5kcz1fLnJxLnByb3RvdHlwZS5maXRCb3VuZHM7Xy5ycS5wcm90b3R5cGUuSHQ9Xy5oYSgyNik7Xy5ycS5wcm90b3R5cGUuZ2V0TWFwQ2FwYWJpbGl0aWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX19nbS5xaC5nZXRNYXBDYXBhYmlsaXRpZXMoITApfTtfLnJxLnByb3RvdHlwZS5nZXRNYXBDYXBhYmlsaXRpZXM9Xy5ycS5wcm90b3R5cGUuZ2V0TWFwQ2FwYWJpbGl0aWVzOwp2YXIgc3E9e2JvdW5kczpudWxsLGNlbnRlcjpfLk1tKF8uWW0pLGNsaWNrYWJsZUljb25zOiRyLGhlYWRpbmc6Xy5hcyxtYXBUeXBlSWQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PW51bGw/InJvYWRtYXAiOigwLF8uY3IpKGEpfSxtYXBJZDpfLmJzLHByb2plY3Rpb246bnVsbCxyZW5kZXJpbmdUeXBlOl8uRm0ob3QpLHRpbHRJbnRlcmFjdGlvbkVuYWJsZWQ6JHIsaGVhZGluZ0ludGVyYWN0aW9uRW5hYmxlZDokcixyZXN0cmljdGlvbjpmdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBudWxsO2E9Xy5DbSh7c3RyaWN0Qm91bmRzOl8uY3MsbGF0TG5nQm91bmRzOl8uVG59KShhKTt2YXIgYj1hLmxhdExuZ0JvdW5kcztpZighKGIubGF0LmhpPmIubGF0LmxvKSl0aHJvdyBfLkFtKCJzb3V0aCBsYXRpdHVkZSBtdXN0IGJlIHNtYWxsZXIgdGhhbiBub3J0aCBsYXRpdHVkZSIpO2lmKChiLmxuZy5oaT09PS0xODA/MTgwOmIubG5nLmhpKT09PWIubG5nLmxvKXRocm93IF8uQW0oImVhc3Rlcm4gbG9uZ2l0dWRlIGNhbm5vdCBlcXVhbCB3ZXN0ZXJuIGxvbmdpdHVkZSIpOwpyZXR1cm4gYX0sc3RyZWV0Vmlldzp3cyx0aWx0Ol8uYXMsem9vbTpfLmFzLGludGVybmFsVXNhZ2VBdHRyaWJ1dGlvbklkczpfLk1tKF8uSG0oXy5kcywxKSl9O18uV24oXy5ycS5wcm90b3R5cGUsc3EpO3ZhciAkaWE9Y2xhc3MgZXh0ZW5kcyBFdmVudHtjb25zdHJ1Y3Rvcigpe3N1cGVyKCJnbXAtem9vbWNoYW5nZSIse2J1YmJsZXM6ITB9KX19O3ZhciBhamE9e0toOiEwLHR5cGU6U3RyaW5nLGZpOmF0LE5oOiExLG5qOmVwfSwkZWE9KGE9YWphLGIsYyk9Pnt2YXIgZD1jLmtpbmQsZT1jLm1ldGFkYXRhLGY9YnQuZ2V0KGUpO2Y9PT12b2lkIDAmJmJ0LnNldChlLGY9bmV3IE1hcCk7ZD09PSJzZXR0ZXIiJiYoYT1PYmplY3QuY3JlYXRlKGEpLGEuV3o9ITApO2Yuc2V0KGMubmFtZSxhKTtpZihkPT09ImFjY2Vzc29yIil7bGV0IGc9Yy5uYW1lO3JldHVybntzZXQoaCl7dmFyIGs9Yi5nZXQuY2FsbCh0aGlzKTtiLnNldC5jYWxsKHRoaXMsaCk7Xy5jcCh0aGlzLGcsayxhLCEwLGgpfSxpbml0KGgpe2ghPT12b2lkIDAmJnRoaXMuV2soZyx2b2lkIDAsYSxoKTtyZXR1cm4gaH19fWlmKGQ9PT0ic2V0dGVyIil7bGV0IGc9Yy5uYW1lO3JldHVybiBmdW5jdGlvbihoKXt2YXIgaz10aGlzW2ddO2IuY2FsbCh0aGlzLGgpO18uY3AodGhpcyxnLGssYSwhMCxoKX19dGhyb3cgRXJyb3IoYFVuc3VwcG9ydGVkIGRlY29yYXRvciBsb2NhdGlvbjogJHtkfWApOwp9O18uYWZhPShhLGIsYyk9PntjLmNvbmZpZ3VyYWJsZT0hMDtjLmVudW1lcmFibGU9ITA7UmVmbGVjdC5FUyYmdHlwZW9mIGIhPT0ib2JqZWN0IiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYixjKTtyZXR1cm4gY307dmFyIGZyPWNsYXNzIGV4dGVuZHMgXy5ldHtzdGF0aWMgZ2V0IFBtKCl7cmV0dXJuey4uLl8uZXQuUG0sZGVsZWdhdGVzRm9jdXM6ITB9fXNldCBjZW50ZXIoYSl7aWYoYSE9PW51bGx8fCF0aGlzLndrKXRyeXtsZXQgYj1fLlltKGEpO3RoaXMuaW5uZXJNYXAuc2V0Q2VudGVyKGIpfWNhdGNoKGIpe3Rocm93IF8uaXAodGhpcywiY2VudGVyIixhLGIpO319Z2V0IGNlbnRlcigpe3JldHVybiB0aGlzLmlubmVyTWFwLmdldENlbnRlcigpPz9udWxsfXNldCBtYXBJZChhKXt0cnl7dGhpcy5pbm5lck1hcC5zZXQoIm1hcElkIiwoMCxfLmJzKShhKT8/dm9pZCAwKX1jYXRjaChiKXt0aHJvdyBfLmlwKHRoaXMsIm1hcElkIixhLGIpO319Z2V0IG1hcElkKCl7cmV0dXJuIHRoaXMuaW5uZXJNYXAuZ2V0KCJtYXBJZCIpPz9udWxsfXNldCB6b29tKGEpe2lmKGEhPT1udWxsfHwhdGhpcy53ayl0cnl7dGhpcy5pbm5lck1hcC5zZXRab29tKGhvKGEpKX1jYXRjaChiKXt0aHJvdyBfLmlwKHRoaXMsCiJ6b29tIixhLGIpO319Z2V0IHpvb20oKXtyZXR1cm4gdGhpcy5pbm5lck1hcC5nZXRab29tKCk/P251bGx9c2V0IHJlbmRlcmluZ1R5cGUoYSl7dHJ5e3RoaXMuaW5uZXJNYXAuc2V0KCJyZW5kZXJpbmdUeXBlIixhPT1udWxsPyJVTklOSVRJQUxJWkVEIjpfLkZtKG90KShhKSl9Y2F0Y2goYil7dGhyb3cgXy5pcCh0aGlzLCJyZW5kZXJpbmdUeXBlIixhLGIpO319Z2V0IHJlbmRlcmluZ1R5cGUoKXtyZXR1cm4gdGhpcy5pbm5lck1hcC5nZXQoInJlbmRlcmluZ1R5cGUiKT8/bnVsbH1zZXQgdGlsdEludGVyYWN0aW9uRGlzYWJsZWQoYSl7dHJ5e3RoaXMuaW5uZXJNYXAuc2V0KCJ0aWx0SW50ZXJhY3Rpb25FbmFibGVkIixhPT1udWxsP251bGw6ISRyKGEpKX1jYXRjaChiKXt0aHJvdyBfLmlwKHRoaXMsInRpbHRJbnRlcmFjdGlvbkRpc2FibGVkIixhLGIpO319Z2V0IHRpbHRJbnRlcmFjdGlvbkRpc2FibGVkKCl7dmFyIGE9dGhpcy5pbm5lck1hcC5nZXQoInRpbHRJbnRlcmFjdGlvbkVuYWJsZWQiKTsKcmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4iPyFhOmF9c2V0IGhlYWRpbmdJbnRlcmFjdGlvbkRpc2FibGVkKGEpe3RyeXt0aGlzLmlubmVyTWFwLnNldCgiaGVhZGluZ0ludGVyYWN0aW9uRW5hYmxlZCIsYT09bnVsbD9udWxsOiEkcihhKSl9Y2F0Y2goYil7dGhyb3cgXy5pcCh0aGlzLCJoZWFkaW5nSW50ZXJhY3Rpb25EaXNhYmxlZCIsYSxiKTt9fWdldCBoZWFkaW5nSW50ZXJhY3Rpb25EaXNhYmxlZCgpe3ZhciBhPXRoaXMuaW5uZXJNYXAuZ2V0KCJoZWFkaW5nSW50ZXJhY3Rpb25FbmFibGVkIik7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4iPyFhOmF9c2V0IGludGVybmFsVXNhZ2VBdHRyaWJ1dGlvbklkcyhhKXt0aGlzLmlubmVyTWFwLnNldCgiaW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzIixfLmtwKHRoaXMsImludGVybmFsVXNhZ2VBdHRyaWJ1dGlvbklkcyIsXy5NbShfLkhtKF8uZHMsMSkpLGEpKX1nZXQgaW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzKCl7cmV0dXJuIHRoaXMuaW5uZXJNYXAuZ2V0SW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzKCk/PwpudWxsfWNvbnN0cnVjdG9yKGE9e30pe3N1cGVyKGEpO3RoaXMuWHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dGhpcy5Yci5kaXI9IiI7dGhpcy5pbm5lck1hcD1uZXcgXy5ycSh0aGlzLlhyKTtfLmdwKHRoaXMsImlubmVyTWFwIik7Xy5tcS5zZXQodGhpcyx0aGlzLmlubmVyTWFwKTt2YXIgYj0iY2VudGVyIHpvb20gbWFwSWQgcmVuZGVyaW5nVHlwZSB0aWx0SW50ZXJhY3Rpb25FbmFibGVkIGhlYWRpbmdJbnRlcmFjdGlvbkVuYWJsZWQgaW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzIi5zcGxpdCgiICIpO2ZvcihsZXQgYyBvZiBiKXRoaXMuaW5uZXJNYXAuYWRkTGlzdGVuZXIoYCR7Yy50b0xvd2VyQ2FzZSgpfV9jaGFuZ2VkYCwoKT0+e3N3aXRjaChjKXtjYXNlICJ0aWx0SW50ZXJhY3Rpb25FbmFibGVkIjpfLmNwKHRoaXMsInRpbHRJbnRlcmFjdGlvbkRpc2FibGVkIik7YnJlYWs7Y2FzZSAiaGVhZGluZ0ludGVyYWN0aW9uRW5hYmxlZCI6Xy5jcCh0aGlzLCJoZWFkaW5nSW50ZXJhY3Rpb25EaXNhYmxlZCIpOwpicmVhaztkZWZhdWx0Ol8uY3AodGhpcyxjKX1pZihjPT09Inpvb20iKXt2YXIgZD1uZXcgJGlhO3RoaXMuZGlzcGF0Y2hFdmVudChkKX19KTthLmNlbnRlciE9bnVsbCYmKHRoaXMuY2VudGVyPWEuY2VudGVyKTthLnpvb20hPW51bGwmJih0aGlzLnpvb209YS56b29tKTthLm1hcElkIT1udWxsJiYodGhpcy5tYXBJZD1hLm1hcElkKTthLnJlbmRlcmluZ1R5cGUhPW51bGwmJih0aGlzLnJlbmRlcmluZ1R5cGU9YS5yZW5kZXJpbmdUeXBlKTthLnRpbHRJbnRlcmFjdGlvbkRpc2FibGVkIT1udWxsJiYodGhpcy50aWx0SW50ZXJhY3Rpb25EaXNhYmxlZD1hLnRpbHRJbnRlcmFjdGlvbkRpc2FibGVkKTthLmhlYWRpbmdJbnRlcmFjdGlvbkRpc2FibGVkIT1udWxsJiYodGhpcy5oZWFkaW5nSW50ZXJhY3Rpb25EaXNhYmxlZD1hLmhlYWRpbmdJbnRlcmFjdGlvbkRpc2FibGVkKTthLmludGVybmFsVXNhZ2VBdHRyaWJ1dGlvbklkcyE9bnVsbCYmKHRoaXMuaW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzPQphLmludGVybmFsVXNhZ2VBdHRyaWJ1dGlvbklkcyk7dGhpcy5xaD1uZXcgTXV0YXRpb25PYnNlcnZlcihjPT57Zm9yKGxldCBkIG9mIGMpZC5hdHRyaWJ1dGVOYW1lPT09ImRpciImJihfLnduKHRoaXMuaW5uZXJNYXAsInNob3VsZFVzZVJUTENvbnRyb2xzQ2hhbmdlIiksXy53bih0aGlzLmlubmVyTWFwLl9fZ20ueGgsInNob3VsZFVzZVJUTENvbnRyb2xzQ2hhbmdlIikpfSk7dGhpcy54aShhLGZyLCJNYXBFbGVtZW50Iik7Xy5NKHdpbmRvdywxNzg5MjQpfXpoKCl7dGhpcy5Qaz8uYXBwZW5kKHRoaXMuWHIpfWNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTt0aGlzLnFoLm9ic2VydmUodGhpcyx7YXR0cmlidXRlczohMH0pO3RoaXMucWgub2JzZXJ2ZSh0aGlzLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHthdHRyaWJ1dGVzOiEwfSl9ZGlzY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO3RoaXMucWguZGlzY29ubmVjdCgpfX07CmZyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1mci5wcm90b3R5cGUuY29uc3RydWN0b3I7ZnIuc3R5bGVzPSgwLF8uJHMpYAogICAgOmhvc3QgewogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGhlaWdodDogMTAwJTsKICAgIH0KICAgIDpob3N0KFtoaWRkZW5dKSB7CiAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICB9CiAgICA6aG9zdCA+IGRpdiB7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICB9CiAgYDtmci5JaT17S2k6MTgxNTc1LEppOjE4MTU3NH07Xy5EKFtfLnRxKHtmaTp7Li4uUmhhLGFrOmE9PmE/UmhhLmFrKGEpOihjb25zb2xlLmVycm9yKGBDb3VsZCBub3QgaW50ZXJwcmV0ICIke2F9IiBhcyBhIExhdExuZy5gKSxudWxsKX0sbmo6ZnAsTmg6ITB9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpLF8uRigiZGVzaWduOnBhcmFtdHlwZXMiLFtPYmplY3RdKV0sZnIucHJvdG90eXBlLCJjZW50ZXIiLG51bGwpO18uRChbXy50cSh7S2g6Im1hcC1pZCIsbmo6ZnAsdHlwZTpTdHJpbmcsTmg6ITB9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpLF8uRigiZGVzaWduOnBhcmFtdHlwZXMiLFtPYmplY3RdKV0sZnIucHJvdG90eXBlLCJtYXBJZCIsbnVsbCk7Cl8uRChbXy50cSh7Zmk6e2FrOmE9Pnt2YXIgYj1OdW1iZXIoYSk7cmV0dXJuIGE9PT1udWxsfHxhPT09IiJ8fGlzTmFOKGIpPyhjb25zb2xlLmVycm9yKGBDb3VsZCBub3QgaW50ZXJwcmV0ICIke2F9IiBhcyBhIG51bWJlci5gKSxudWxsKTpifSxMajphPT5hPT09bnVsbD9udWxsOlN0cmluZyhhKX0sbmo6ZnAsTmg6ITB9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpLF8uRigiZGVzaWduOnBhcmFtdHlwZXMiLFtPYmplY3RdKV0sZnIucHJvdG90eXBlLCJ6b29tIixudWxsKTtfLkQoW18udHEoe0toOiJyZW5kZXJpbmctdHlwZSIsZmk6Xy53byhvdCksbmo6ZnAsTmg6ITB9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpLF8uRigiZGVzaWduOnBhcmFtdHlwZXMiLFtPYmplY3RdKV0sZnIucHJvdG90eXBlLCJyZW5kZXJpbmdUeXBlIixudWxsKTsKXy5EKFtfLnRxKHtLaDoidGlsdC1pbnRlcmFjdGlvbi1kaXNhYmxlZCIsdHlwZTpCb29sZWFuLG5qOmZwLE5oOiEwfSksXy5GKCJkZXNpZ246dHlwZSIsT2JqZWN0KSxfLkYoImRlc2lnbjpwYXJhbXR5cGVzIixbT2JqZWN0XSldLGZyLnByb3RvdHlwZSwidGlsdEludGVyYWN0aW9uRGlzYWJsZWQiLG51bGwpO18uRChbXy50cSh7S2g6ImhlYWRpbmctaW50ZXJhY3Rpb24tZGlzYWJsZWQiLHR5cGU6Qm9vbGVhbixuajpmcCxOaDohMH0pLF8uRigiZGVzaWduOnR5cGUiLE9iamVjdCksXy5GKCJkZXNpZ246cGFyYW10eXBlcyIsW09iamVjdF0pXSxmci5wcm90b3R5cGUsImhlYWRpbmdJbnRlcmFjdGlvbkRpc2FibGVkIixudWxsKTsKXy5EKFtfLnRxKHtLaDoiaW50ZXJuYWwtdXNhZ2UtYXR0cmlidXRpb24taWRzIixmaTpfLkRzLG5qOmZwLE5oOiEwfSksXy5GKCJkZXNpZ246dHlwZSIsT2JqZWN0KSxfLkYoImRlc2lnbjpwYXJhbXR5cGVzIixbT2JqZWN0XSldLGZyLnByb3RvdHlwZSwiaW50ZXJuYWxVc2FnZUF0dHJpYnV0aW9uSWRzIixudWxsKTt2YXIgZ2dhPSExO18uYmphPXtCT1VOQ0U6MSxEUk9QOjIsTFI6Myx4Ujo0LDE6IkJPVU5DRSIsMjoiRFJPUCIsMzoiUkFJU0UiLDQ6IkxPV0VSIn07dmFyIGVmYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyxkLGUpe3RoaXMudXJsPWE7dGhpcy5vcmlnaW49Yzt0aGlzLmFuY2hvcj1kO3RoaXMuc2NhbGVkU2l6ZT1lO3RoaXMubGFiZWxPcmlnaW49bnVsbDt0aGlzLnNpemU9Ynx8ZX19O3ZhciBydD1jbGFzc3tjb25zdHJ1Y3Rvcigpe18uSGwoIm1heHpvb20iKX1nZXRNYXhab29tQXRMYXRMbmcoYSxiKXtfLk0od2luZG93LDE1NDMzMik7dmFyIGM9Xy5IbCgibWF4em9vbSIpLnRoZW4oZD0+ZC5nZXRNYXhab29tQXRMYXRMbmcoYSxiKSk7YiYmYy5jYXRjaCgoKT0+e30pO3JldHVybiBjfX07cnQucHJvdG90eXBlLmdldE1heFpvb21BdExhdExuZz1ydC5wcm90b3R5cGUuZ2V0TWF4Wm9vbUF0TGF0TG5nO3J0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1ydC5wcm90b3R5cGUuY29uc3RydWN0b3I7dmFyIGRmYT1jbGFzcyBleHRlbmRzIF8ueW57Y29uc3RydWN0b3IoYSl7c3VwZXIoKTtfLnJtKCJUaGUgRnVzaW9uIFRhYmxlcyBzZXJ2aWNlIHdpbGwgYmUgdHVybmVkIGRvd24gaW4gRGVjZW1iZXIgMjAxOSAoc2VlIGh0dHBzOi8vc3VwcG9ydC5nb29nbGUuY29tL2Z1c2lvbnRhYmxlcy9hbnN3ZXIvOTE4NTQxNykuIE1hcHMgQVBJIHZlcnNpb24gMy4zNyBpcyB0aGUgbGFzdCB2ZXJzaW9uIHRoYXQgd2lsbCBzdXBwb3J0IEZ1c2lvblRhYmxlc0xheWVyLiIpO2lmKCFhfHxfLm1tKGEpfHxfLmptKGEpKXtsZXQgYj1hcmd1bWVudHNbMV07dGhpcy5zZXQoInRhYmxlSWQiLGEpO3RoaXMuc2V0VmFsdWVzKGIpfWVsc2UgdGhpcy5zZXRWYWx1ZXMoYSl9fTtfLlduKGRmYS5wcm90b3R5cGUse21hcDpfLmhzLHRhYmxlSWQ6Xy5hcyxxdWVyeTpfLk1tKF8uS20oW18uY3IsXy5JbShfLmttLCJub3QgYW4gT2JqZWN0IildKSl9KTt2YXIgc3Q7c3Q9bnVsbDtfLnR0PWNsYXNzIGV4dGVuZHMgXy55bntjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5ubCgpfW5sKCl7fWdldE1hcCgpe3JldHVybiB0aGlzLmdldCgibWFwIil9c2V0TWFwKGEpe3RoaXMuc2V0KCJtYXAiLGEpfWdldFBhbmVzKCl7cmV0dXJuIHRoaXMuZ2V0KCJwYW5lcyIpfWdldFByb2plY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXQoInByb2plY3Rpb24iKX1yZW1vdmUoKXt9bWFwX2NoYW5nZWQoKXtzdD9zdC5xRyh0aGlzKTpfLkhsKCJvdmVybGF5IikudGhlbihhPT57c3Q9YTthLnFHKHRoaXMpfSl9c3RhdGljIHByZXZlbnRNYXBIaXRzRnJvbShhKXtfLkhsKCJvdmVybGF5IikudGhlbihiPT57c3Q9YjtiLnByZXZlbnRNYXBIaXRzRnJvbShhKX0pfXN0YXRpYyBwcmV2ZW50TWFwSGl0c0FuZEdlc3R1cmVzRnJvbShhKXtfLkhsKCJvdmVybGF5IikudGhlbihiPT57c3Q9YjtiLnByZXZlbnRNYXBIaXRzQW5kR2VzdHVyZXNGcm9tKGEpfSl9fTsKXy50dC5wcmV2ZW50TWFwSGl0c0FuZEdlc3R1cmVzRnJvbT1fLnR0LnByZXZlbnRNYXBIaXRzQW5kR2VzdHVyZXNGcm9tO18udHQucHJldmVudE1hcEhpdHNGcm9tPV8udHQucHJldmVudE1hcEhpdHNGcm9tO18udHQucHJvdG90eXBlLmdldFByb2plY3Rpb249Xy50dC5wcm90b3R5cGUuZ2V0UHJvamVjdGlvbjtfLnR0LnByb3RvdHlwZS5nZXRQYW5lcz1fLnR0LnByb3RvdHlwZS5nZXRQYW5lcztfLnR0LnByb3RvdHlwZS5zZXRNYXA9Xy50dC5wcm90b3R5cGUuc2V0TWFwO18udHQucHJvdG90eXBlLmdldE1hcD1fLnR0LnByb3RvdHlwZS5nZXRNYXA7Xy50dC5wcm90b3R5cGUuY29uc3RydWN0b3I9Xy50dC5wcm90b3R5cGUuY29uc3RydWN0b3I7Xy5XbihfLnR0LnByb3RvdHlwZSx7cGFuZXM6bnVsbCxwcm9qZWN0aW9uOm51bGwsbWFwOl8uS20oW18uaHMsd3NdKX0pO18ud20oXy50dCk7dmFyIHV0PWNsYXNzIGV4dGVuZHMgXy55bntnZXRNYXAoKXtyZXR1cm4gdGhpcy5nZXQoIm1hcCIpfXNldE1hcChhKXt0aGlzLnNldCgibWFwIixhKX1nZXREcmFnZ2FibGUoKXtyZXR1cm4gdGhpcy5nZXQoImRyYWdnYWJsZSIpfXNldERyYWdnYWJsZShhKXt0aGlzLnNldCgiZHJhZ2dhYmxlIixhKX1nZXRFZGl0YWJsZSgpe3JldHVybiB0aGlzLmdldCgiZWRpdGFibGUiKX1zZXRFZGl0YWJsZShhKXt0aGlzLnNldCgiZWRpdGFibGUiLGEpfXNldFZpc2libGUoYSl7dGhpcy5zZXQoInZpc2libGUiLGEpfWdldFZpc2libGUoKXtyZXR1cm4gdGhpcy5nZXQoInZpc2libGUiKX1jb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMueGg9dGhpcy5SeD10aGlzLlVsPSExO3RoaXMuc2V0KCJsYXRMbmdzIixuZXcgXy5FbyhbbmV3IF8uRW9dKSk7dGhpcy5zZXRWYWx1ZXMoTW8oYSkpO18uSGwoInBvbHkiKX1nZXRQYXRoKCl7cmV0dXJuIHRoaXMuZ2V0KCJsYXRMbmdzIikuZ2V0QXQoMCl9c2V0UGF0aChhKXt0cnl7dGhpcy5nZXQoImxhdExuZ3MiKS5zZXRBdCgwLApObyhhKSl9Y2F0Y2goYil7Xy5CbShiKX19bWFwX2NoYW5nZWQoKXtiZmEodGhpcyl9dmlzaWJsZV9jaGFuZ2VkKCl7YmZhKHRoaXMpfX07dXQucHJvdG90eXBlLnNldFBhdGg9dXQucHJvdG90eXBlLnNldFBhdGg7dXQucHJvdG90eXBlLmdldFBhdGg9dXQucHJvdG90eXBlLmdldFBhdGg7dXQucHJvdG90eXBlLmdldFZpc2libGU9dXQucHJvdG90eXBlLmdldFZpc2libGU7dXQucHJvdG90eXBlLnNldFZpc2libGU9dXQucHJvdG90eXBlLnNldFZpc2libGU7dXQucHJvdG90eXBlLnNldEVkaXRhYmxlPXV0LnByb3RvdHlwZS5zZXRFZGl0YWJsZTt1dC5wcm90b3R5cGUuZ2V0RWRpdGFibGU9dXQucHJvdG90eXBlLmdldEVkaXRhYmxlO3V0LnByb3RvdHlwZS5zZXREcmFnZ2FibGU9dXQucHJvdG90eXBlLnNldERyYWdnYWJsZTt1dC5wcm90b3R5cGUuZ2V0RHJhZ2dhYmxlPXV0LnByb3RvdHlwZS5nZXREcmFnZ2FibGU7dXQucHJvdG90eXBlLnNldE1hcD11dC5wcm90b3R5cGUuc2V0TWFwOwp1dC5wcm90b3R5cGUuZ2V0TWFwPXV0LnByb3RvdHlwZS5nZXRNYXA7Xy5Xbih1dC5wcm90b3R5cGUse2RyYWdnYWJsZTpfLmNzLGVkaXRhYmxlOl8uY3MsbWFwOl8uaHMsdmlzaWJsZTpfLmNzfSk7Xy52dD1jbGFzcyBleHRlbmRzIHV0e2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpO3RoaXMuVWw9ITB9c2V0T3B0aW9ucyhhKXt0aGlzLnNldFZhbHVlcyhhKX1nZXRQYXRoKCl7cmV0dXJuIHN1cGVyLmdldFBhdGgoKX1zZXRQYXRoKGEpe3N1cGVyLnNldFBhdGgoYSl9Z2V0UGF0aHMoKXtyZXR1cm4gdGhpcy5nZXQoImxhdExuZ3MiKX1zZXRQYXRocyhhKXt0cnl7dmFyIGI9dGhpcy5zZXQ7aWYoQXJyYXkuaXNBcnJheShhKXx8YSBpbnN0YW5jZW9mIF8uRW8paWYoXy4kbChhKT09PTApdmFyIGM9ITA7ZWxzZXt2YXIgZD1hIGluc3RhbmNlb2YgXy5Fbz9hLmdldEF0KDApOmFbMF07Yz1BcnJheS5pc0FycmF5KGQpfHxkIGluc3RhbmNlb2YgXy5Fb31lbHNlIGM9ITE7dmFyIGU9Yz9hIGluc3RhbmNlb2YgXy5Fbz9yZGEocGRhKShhKTpuZXcgXy5FbyhfLkdtKE5vKShhKSk6bmV3IF8uRW8oW05vKGEpXSk7Yi5jYWxsKHRoaXMsImxhdExuZ3MiLGUpfWNhdGNoKGYpe18uQm0oZil9fX07Cl8udnQucHJvdG90eXBlLnNldFBhdGhzPV8udnQucHJvdG90eXBlLnNldFBhdGhzO18udnQucHJvdG90eXBlLmdldFBhdGhzPV8udnQucHJvdG90eXBlLmdldFBhdGhzO18udnQucHJvdG90eXBlLnNldFBhdGg9Xy52dC5wcm90b3R5cGUuc2V0UGF0aDtfLnZ0LnByb3RvdHlwZS5nZXRQYXRoPV8udnQucHJvdG90eXBlLmdldFBhdGg7Xy52dC5wcm90b3R5cGUuc2V0T3B0aW9ucz1fLnZ0LnByb3RvdHlwZS5zZXRPcHRpb25zO18ud3Q9Y2xhc3MgZXh0ZW5kcyB1dHtzZXRPcHRpb25zKGEpe3RoaXMuc2V0VmFsdWVzKGEpfX07Xy53dC5wcm90b3R5cGUuc2V0T3B0aW9ucz1fLnd0LnByb3RvdHlwZS5zZXRPcHRpb25zO18ueHQ9Y2xhc3MgZXh0ZW5kcyBfLnlue2dldEJvdW5kcygpe3JldHVybiB0aGlzLmdldCgiYm91bmRzIil9c2V0Qm91bmRzKGEpe3RoaXMuc2V0KCJib3VuZHMiLGEpfWdldE1hcCgpe3JldHVybiB0aGlzLmdldCgibWFwIil9c2V0TWFwKGEpe3RoaXMuc2V0KCJtYXAiLGEpfWdldERyYWdnYWJsZSgpe3JldHVybiB0aGlzLmdldCgiZHJhZ2dhYmxlIil9c2V0RHJhZ2dhYmxlKGEpe3RoaXMuc2V0KCJkcmFnZ2FibGUiLGEpfWdldEVkaXRhYmxlKCl7cmV0dXJuIHRoaXMuZ2V0KCJlZGl0YWJsZSIpfXNldEVkaXRhYmxlKGEpe3RoaXMuc2V0KCJlZGl0YWJsZSIsYSl9c2V0VmlzaWJsZShhKXt0aGlzLnNldCgidmlzaWJsZSIsYSl9Z2V0VmlzaWJsZSgpe3JldHVybiB0aGlzLmdldCgidmlzaWJsZSIpfXNldE9wdGlvbnMoYSl7dGhpcy5zZXRWYWx1ZXMoYSl9Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnNldFZhbHVlcyhNbyhhKSk7Xy5IbCgicG9seSIpfW1hcF9jaGFuZ2VkKCl7Y2ZhKHRoaXMpfXZpc2libGVfY2hhbmdlZCgpe2NmYSh0aGlzKX19OwpfLnh0LnByb3RvdHlwZS5zZXRPcHRpb25zPV8ueHQucHJvdG90eXBlLnNldE9wdGlvbnM7Xy54dC5wcm90b3R5cGUuZ2V0VmlzaWJsZT1fLnh0LnByb3RvdHlwZS5nZXRWaXNpYmxlO18ueHQucHJvdG90eXBlLnNldFZpc2libGU9Xy54dC5wcm90b3R5cGUuc2V0VmlzaWJsZTtfLnh0LnByb3RvdHlwZS5zZXRFZGl0YWJsZT1fLnh0LnByb3RvdHlwZS5zZXRFZGl0YWJsZTtfLnh0LnByb3RvdHlwZS5nZXRFZGl0YWJsZT1fLnh0LnByb3RvdHlwZS5nZXRFZGl0YWJsZTtfLnh0LnByb3RvdHlwZS5zZXREcmFnZ2FibGU9Xy54dC5wcm90b3R5cGUuc2V0RHJhZ2dhYmxlO18ueHQucHJvdG90eXBlLmdldERyYWdnYWJsZT1fLnh0LnByb3RvdHlwZS5nZXREcmFnZ2FibGU7Xy54dC5wcm90b3R5cGUuc2V0TWFwPV8ueHQucHJvdG90eXBlLnNldE1hcDtfLnh0LnByb3RvdHlwZS5nZXRNYXA9Xy54dC5wcm90b3R5cGUuZ2V0TWFwO18ueHQucHJvdG90eXBlLnNldEJvdW5kcz1fLnh0LnByb3RvdHlwZS5zZXRCb3VuZHM7Cl8ueHQucHJvdG90eXBlLmdldEJvdW5kcz1fLnh0LnByb3RvdHlwZS5nZXRCb3VuZHM7Xy5XbihfLnh0LnByb3RvdHlwZSx7ZHJhZ2dhYmxlOl8uY3MsZWRpdGFibGU6Xy5jcyxib3VuZHM6Xy5NbShfLlRuKSxtYXA6Xy5ocyx2aXNpYmxlOl8uY3N9KTt2YXIgeXQ9Y2xhc3MgZXh0ZW5kcyBfLnlue2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLnFoPW51bGx9Z2V0TWFwKCl7cmV0dXJuIHRoaXMuZ2V0KCJtYXAiKX1zZXRNYXAoYSl7dGhpcy5zZXQoIm1hcCIsYSl9bWFwX2NoYW5nZWQoKXtfLkhsKCJzdHJlZXR2aWV3IikudGhlbihhPT57YS53TCh0aGlzKX0pfX07eXQucHJvdG90eXBlLnNldE1hcD15dC5wcm90b3R5cGUuc2V0TWFwO3l0LnByb3RvdHlwZS5nZXRNYXA9eXQucHJvdG90eXBlLmdldE1hcDt5dC5wcm90b3R5cGUuY29uc3RydWN0b3I9eXQucHJvdG90eXBlLmNvbnN0cnVjdG9yO18uV24oeXQucHJvdG90eXBlLHttYXA6Xy5oc30pO18uY2phPXtORUFSRVNUOiJuZWFyZXN0IixCRVNUOiJiZXN0In07Xy56dD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucWg9bnVsbH1nZXRQYW5vcmFtYShhLGIpe3JldHVybiBfLndxKHRoaXMsYSxiKX1nZXRQYW5vcmFtYUJ5TG9jYXRpb24oYSxiLGMpe3JldHVybiB0aGlzLmdldFBhbm9yYW1hKHtsb2NhdGlvbjphLHJhZGl1czpiLHByZWZlcmVuY2U6KGJ8fDApPDUwPyJiZXN0IjoibmVhcmVzdCJ9LGMpfWdldFBhbm9yYW1hQnlJZChhLGIpe3JldHVybiB0aGlzLmdldFBhbm9yYW1hKHtwYW5vOmF9LGIpfX07Xy56dC5wcm90b3R5cGUuZ2V0UGFub3JhbWE9Xy56dC5wcm90b3R5cGUuZ2V0UGFub3JhbWE7Xy5BdD17REVGQVVMVDoiZGVmYXVsdCIsT1VURE9PUjoib3V0ZG9vciIsR09PR0xFOiJnb29nbGUifTtfLnFiKHpxLF8ueW4pO3pxLnByb3RvdHlwZS5nZXRUaWxlPWZ1bmN0aW9uKGEsYixjKXtpZighYXx8IWMpcmV0dXJuIG51bGw7dmFyIGQ9Xy53bCgiRElWIik7Yz17cmo6YSx6b29tOmIsRGo6bnVsbH07ZC5fX2dtaW10PWM7Xy5EcCh0aGlzLnFoLGQpO2lmKHRoaXMucmgpe2xldCBlPXRoaXMudGlsZVNpemV8fG5ldyBfLmdvKDI1NiwyNTYpLGY9dGhpcy5zaChhLGIpOyhjLkRqPXRoaXMucmgoe2tpOmEueCxsaTphLnksdWk6Yn0sZSxkLGYsZnVuY3Rpb24oKXtfLnduKGQsImxvYWQiKX0pKS5zZXRPcGFjaXR5KHlxKHRoaXMpKX1yZXR1cm4gZH07enEucHJvdG90eXBlLmdldFRpbGU9enEucHJvdG90eXBlLmdldFRpbGU7enEucHJvdG90eXBlLnJlbGVhc2VUaWxlPWZ1bmN0aW9uKGEpe2EmJnRoaXMucWguY29udGFpbnMoYSkmJih0aGlzLnFoLnJlbW92ZShhKSwoYT1hLl9fZ21pbXQuRGopJiZhLnJlbGVhc2UoKSl9O3pxLnByb3RvdHlwZS5yZWxlYXNlVGlsZT16cS5wcm90b3R5cGUucmVsZWFzZVRpbGU7CnpxLnByb3RvdHlwZS5vcGFjaXR5X2NoYW5nZWQ9ZnVuY3Rpb24oKXt2YXIgYT15cSh0aGlzKTt0aGlzLnFoLmZvckVhY2goYj0+e2IuX19nbWltdC5Eai5zZXRPcGFjaXR5KGEpfSl9O3pxLnByb3RvdHlwZS50cmlnZ2Vyc1RpbGVMb2FkRXZlbnQ9ITA7Xy5Xbih6cS5wcm90b3R5cGUse29wYWNpdHk6Xy5hc30pO18ucWIoXy5BcSxfLnluKTtfLkFxLnByb3RvdHlwZS5nZXRUaWxlPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O18uQXEucHJvdG90eXBlLnRpbGVTaXplPW5ldyBfLmdvKDI1NiwyNTYpO18uQXEucHJvdG90eXBlLnRyaWdnZXJzVGlsZUxvYWRFdmVudD0hMDtfLnFiKF8uQnEsXy5BcSk7dmFyIEJ0PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5sb2dzPVtdfWxvZygpe31jTigpe3JldHVybiB0aGlzLmxvZ3MubWFwKHRoaXMucWgpLmpvaW4oIlxuIil9cWgoYSl7cmV0dXJuYCR7YS50aW1lc3RhbXB9OiAke2EubWVzc2FnZX1gfX07QnQucHJvdG90eXBlLmdldExvZ3M9QnQucHJvdG90eXBlLmNOO18uZGphPW5ldyBCdDtfLmVqYT17T0s6Ik9LIixDQU5DRUxMRUQ6IkNBTkNFTExFRCIsVU5LTk9XTjoiVU5LTk9XTiIsSU5WQUxJRF9BUkdVTUVOVDoiSU5WQUxJRF9BUkdVTUVOVCIsREVBRExJTkVfRVhDRUVERUQ6IkRFQURMSU5FX0VYQ0VFREVEIixOT1RfRk9VTkQ6Ik5PVF9GT1VORCIsQUxSRUFEWV9FWElTVFM6IkFMUkVBRFlfRVhJU1RTIixQRVJNSVNTSU9OX0RFTklFRDoiUEVSTUlTU0lPTl9ERU5JRUQiLFVOQVVUSEVOVElDQVRFRDoiVU5BVVRIRU5USUNBVEVEIixSRVNPVVJDRV9FWEhBVVNURUQ6IlJFU09VUkNFX0VYSEFVU1RFRCIsRkFJTEVEX1BSRUNPTkRJVElPTjoiRkFJTEVEX1BSRUNPTkRJVElPTiIsQUJPUlRFRDoiQUJPUlRFRCIsT1VUX09GX1JBTkdFOiJPVVRfT0ZfUkFOR0UiLFVOSU1QTEVNRU5URUQ6IlVOSU1QTEVNRU5URUQiLElOVEVSTkFMOiJJTlRFUk5BTCIsVU5BVkFJTEFCTEU6IlVOQVZBSUxBQkxFIixEQVRBX0xPU1M6IkRBVEFfTE9TUyJ9O18ucWIoQ3EsXy55bik7Xy5XbihDcS5wcm90b3R5cGUse2F0dHJpYnV0aW9uOigpPT4hMCxwbGFjZTooKT0+ITB9KTt2YXIgaWZhPXtDb2xvclNjaGVtZTp7TElHSFQ6IkxJR0hUIixEQVJLOiJEQVJLIixGT0xMT1dfU1lTVEVNOiJGT0xMT1dfU1lTVEVNIn0sQ29udHJvbFBvc2l0aW9uOl8ucHEsTGF0TG5nOl8uVG0sTGF0TG5nQm91bmRzOl8uUm4sTVZDQXJyYXk6Xy5FbyxNVkNPYmplY3Q6Xy55bixNYXBzUmVxdWVzdEVycm9yOl8uaXIsTWFwc05ldHdvcmtFcnJvcjpncixNYXBzTmV0d29ya0Vycm9yRW5kcG9pbnQ6e1BMQUNFU19ORUFSQllfU0VBUkNIOiJQTEFDRVNfTkVBUkJZX1NFQVJDSCIsUExBQ0VTX0xPQ0FMX0NPTlRFWFRfU0VBUkNIOiJQTEFDRVNfTE9DQUxfQ09OVEVYVF9TRUFSQ0giLE1BUFNfTUFYX1pPT006Ik1BUFNfTUFYX1pPT00iLERJU1RBTkNFX01BVFJJWDoiRElTVEFOQ0VfTUFUUklYIixFTEVWQVRJT05fTE9DQVRJT05TOiJFTEVWQVRJT05fTE9DQVRJT05TIixFTEVWQVRJT05fQUxPTkdfUEFUSDoiRUxFVkFUSU9OX0FMT05HX1BBVEgiLEdFT0NPREVSX0dFT0NPREU6IkdFT0NPREVSX0dFT0NPREUiLApESVJFQ1RJT05TX1JPVVRFOiJESVJFQ1RJT05TX1JPVVRFIixQTEFDRVNfR0FURVdBWToiUExBQ0VTX0dBVEVXQVkiLFBMQUNFU19ERVRBSUxTOiJQTEFDRVNfREVUQUlMUyIsUExBQ0VTX0ZJTkRfUExBQ0VfRlJPTV9QSE9ORV9OVU1CRVI6IlBMQUNFU19GSU5EX1BMQUNFX0ZST01fUEhPTkVfTlVNQkVSIixQTEFDRVNfRklORF9QTEFDRV9GUk9NX1FVRVJZOiJQTEFDRVNfRklORF9QTEFDRV9GUk9NX1FVRVJZIixQTEFDRVNfR0VUX1BMQUNFOiJQTEFDRVNfR0VUX1BMQUNFIixQTEFDRVNfR0VUX1BIT1RPX01FRElBOiJQTEFDRVNfR0VUX1BIT1RPX01FRElBIixQTEFDRVNfU0VBUkNIX1RFWFQ6IlBMQUNFU19TRUFSQ0hfVEVYVCIsU1RSRUVUVklFV19HRVRfUEFOT1JBTUE6IlNUUkVFVFZJRVdfR0VUX1BBTk9SQU1BIixQTEFDRVNfQVVUT0NPTVBMRVRFOiJQTEFDRVNfQVVUT0NPTVBMRVRFIixGTEVFVF9FTkdJTkVfTElTVF9ERUxJVkVSWV9WRUhJQ0xFUzoiRkxFRVRfRU5HSU5FX0xJU1RfREVMSVZFUllfVkVISUNMRVMiLApGTEVFVF9FTkdJTkVfTElTVF9UQVNLUzoiRkxFRVRfRU5HSU5FX0xJU1RfVEFTS1MiLEZMRUVUX0VOR0lORV9MSVNUX1ZFSElDTEVTOiJGTEVFVF9FTkdJTkVfTElTVF9WRUhJQ0xFUyIsRkxFRVRfRU5HSU5FX0dFVF9ERUxJVkVSWV9WRUhJQ0xFOiJGTEVFVF9FTkdJTkVfR0VUX0RFTElWRVJZX1ZFSElDTEUiLEZMRUVUX0VOR0lORV9HRVRfVFJJUDoiRkxFRVRfRU5HSU5FX0dFVF9UUklQIixGTEVFVF9FTkdJTkVfR0VUX1ZFSElDTEU6IkZMRUVUX0VOR0lORV9HRVRfVkVISUNMRSIsRkxFRVRfRU5HSU5FX1NFQVJDSF9UQVNLUzoiRkxFRVRfRU5HSU5FX1NFQVJDSF9UQVNLUyIsZFI6IkZMRUVUX0VOR0lORV9HRVRfVEFTS19UUkFDS0lOR19JTkZPIixUSU1FX1pPTkU6IlRJTUVfWk9ORSIsUk9VVEVTX0NPTVBVVEVfUk9VVEVfTUFUUklYOiJST1VURVNfQ09NUFVURV9ST1VURV9NQVRSSVgiLFJPVVRFU19DT01QVVRFX1JPVVRFUzoiUk9VVEVTX0NPTVBVVEVfUk9VVEVTIixBRERSRVNTX1ZBTElEQVRJT05fRkVUQ0hfQUREUkVTU19WQUxJREFUSU9OOiJBRERSRVNTX1ZBTElEQVRJT05fRkVUQ0hfQUREUkVTU19WQUxJREFUSU9OIiwKV0VBVEhFUl9DVVJSRU5UX0NPTkRJVElPTlM6IldFQVRIRVJfQ1VSUkVOVF9DT05ESVRJT05TIixXRUFUSEVSX0hJU1RPUllfSE9VUlM6IldFQVRIRVJfSElTVE9SWV9IT1VSUyIsV0VBVEhFUl9GT1JFQ0FTVF9EQVlTOiJXRUFUSEVSX0ZPUkVDQVNUX0RBWVMiLFdFQVRIRVJfRk9SRUNBU1RfSE9VUlM6IldFQVRIRVJfRk9SRUNBU1RfSE9VUlMiLFBMQUNFU19SRVZJRVdTX1NFQVJDSDoiUExBQ0VTX1JFVklFV1NfU0VBUkNIIixQTEFDRVNfTUVESUFfU0VBUkNIOiJQTEFDRVNfTUVESUFfU0VBUkNIIn0sTWFwc1NlcnZlckVycm9yOl8uanIsUG9pbnQ6Xy5ibyxSUENTdGF0dXM6Xy5lamEsU2l6ZTpfLmdvLFVuaXRTeXN0ZW06Xy5FcSxTZXR0aW5nczpTbSxTeW1ib2xQYXRoOkZoYSxMYXRMbmdBbHRpdHVkZTpfLlFvLE9yaWVudGF0aW9uM0Q6Xy5wcyxWZWN0b3IzRDpfLnFzLGV2ZW50Ol8uZnN9LGpmYT17QmljeWNsaW5nTGF5ZXI6Xy5BcyxDaXJjbGU6Xy5TbyxEYXRhOlluLEdyb3VuZE92ZXJsYXk6Xy56cywKSW1hZ2VNYXBUeXBlOnpxLEttbExheWVyOnNvLEttbExheWVyU3RhdHVzOntVTktOT1dOOiJVTktOT1dOIixPSzoiT0siLElOVkFMSURfUkVRVUVTVDoiSU5WQUxJRF9SRVFVRVNUIixET0NVTUVOVF9OT1RfRk9VTkQ6IkRPQ1VNRU5UX05PVF9GT1VORCIsRkVUQ0hfRVJST1I6IkZFVENIX0VSUk9SIixJTlZBTElEX0RPQ1VNRU5UOiJJTlZBTElEX0RPQ1VNRU5UIixET0NVTUVOVF9UT09fTEFSR0U6IkRPQ1VNRU5UX1RPT19MQVJHRSIsTElNSVRTX0VYQ0VFREVEOiJMSU1JVFNfRVhDRUVERUQiLFRJTUVEX09VVDoiVElNRURfT1VUIn0sTWFwOl8ucnEsTWFwRWxlbWVudDpmcixab29tQ2hhbmdlRXZlbnQ6JGlhLE1hcFR5cGVDb250cm9sU3R5bGU6e0RFRkFVTFQ6MCxIT1JJWk9OVEFMX0JBUjoxLERST1BET1dOX01FTlU6MixJTlNFVDozLElOU0VUX0xBUkdFOjR9LE1hcFR5cGVJZDpfLlVyLE1hcFR5cGVSZWdpc3RyeTpvcSxNYXhab29tU2VydmljZTpydCxNYXhab29tU3RhdHVzOntPSzoiT0siLApFUlJPUjoiRVJST1IifSxPdmVybGF5VmlldzpfLnR0LFBvbHlnb246Xy52dCxQb2x5bGluZTpfLnd0LFJlY3RhbmdsZTpfLnh0LFJlbmRlcmluZ1R5cGU6b3QsU3Ryb2tlUG9zaXRpb246e0NFTlRFUjowLElOU0lERToxLE9VVFNJREU6MiwwOiJDRU5URVIiLDE6IklOU0lERSIsMjoiT1VUU0lERSJ9LFN0eWxlZE1hcFR5cGU6Xy5CcSxUcmFmZmljTGF5ZXI6QnMsVHJhbnNpdExheWVyOkNzLEZlYXR1cmVUeXBlOndpYSxJbmZvV2luZG93Ol8ueXMsV2ViR0xPdmVybGF5VmlldzpfLnFwfSxrZmE9e0RpcmVjdGlvbnNSZW5kZXJlcjpfLmFvLERpcmVjdGlvbnNTZXJ2aWNlOl8uaXMsRGlyZWN0aW9uc1N0YXR1czpfLndoYSxEaXN0YW5jZU1hdHJpeFNlcnZpY2U6Xy5tcyxEaXN0YW5jZU1hdHJpeFN0YXR1czpfLnpoYSxEaXN0YW5jZU1hdHJpeEVsZW1lbnRTdGF0dXM6Xy55aGEsVHJhZmZpY01vZGVsOl8uanMsVHJhbnNpdE1vZGU6Xy5rcyxUcmFuc2l0Um91dGVQcmVmZXJlbmNlOl8ubHMsClRyYXZlbE1vZGU6Xy5EcSxWZWhpY2xlVHlwZTpfLnhoYX0sbGZhPXtFbGV2YXRpb25TZXJ2aWNlOl8ubnMsRWxldmF0aW9uU3RhdHVzOl8uQWhhfSxtZmE9e0dlb2NvZGVyOm9zLEdlb2NvZGVyTG9jYXRpb25UeXBlOl8uQmhhLEV4dHJhR2VvY29kZUNvbXB1dGF0aW9uOnZvaWQgMCxDb250YWlubWVudDp2b2lkIDAsU3BhdGlhbFJlbGF0aW9uc2hpcDp2b2lkIDAsR2VvY29kZXJTdGF0dXM6e09LOiJPSyIsVU5LTk9XTl9FUlJPUjoiVU5LTk9XTl9FUlJPUiIsT1ZFUl9RVUVSWV9MSU1JVDoiT1ZFUl9RVUVSWV9MSU1JVCIsUkVRVUVTVF9ERU5JRUQ6IlJFUVVFU1RfREVOSUVEIixJTlZBTElEX1JFUVVFU1Q6IklOVkFMSURfUkVRVUVTVCIsWkVST19SRVNVTFRTOiJaRVJPX1JFU1VMVFMiLEVSUk9SOiJFUlJPUiJ9fSxuZmE9e1N0cmVldFZpZXdDb3ZlcmFnZUxheWVyOnl0LFN0cmVldFZpZXdQYW5vcmFtYTpfLm10LFN0cmVldFZpZXdQcmVmZXJlbmNlOl8uY2phLFN0cmVldFZpZXdTZXJ2aWNlOl8uenQsClN0cmVldFZpZXdTdGF0dXM6e09LOiJPSyIsVU5LTk9XTl9FUlJPUjoiVU5LTk9XTl9FUlJPUiIsWkVST19SRVNVTFRTOiJaRVJPX1JFU1VMVFMifSxTdHJlZXRWaWV3U291cmNlOl8uQXQsSW5mb1dpbmRvdzpfLnlzLE92ZXJsYXlWaWV3Ol8udHR9LG9mYT17QW5pbWF0aW9uOl8uYmphLE1hcmtlcjpfLnhzLENvbGxpc2lvbkJlaGF2aW9yOl8ucnN9LHFmYT1uZXcgU2V0KCJhZGRyZXNzVmFsaWRhdGlvbiBhaXJRdWFsaXR5IGRyYXdpbmcgZWxldmF0aW9uIGdlb21ldHJ5IGpvdXJuZXlTaGFyaW5nIG1hcHMzZCBtYXJrZXIgcGxhY2VzIHJvdXRlcyB2aXN1YWxpemF0aW9uIHdlYXRoZXIiLnNwbGl0KCIgIikpLHJmYT1uZXcgU2V0KFsic2VhcmNoIl0pO18uSWwoIm1haW4iLHt9KTt2YXIgZmphO18uQ3Q9Y2xhc3MgZXh0ZW5kcyBfLmV0e2Nvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTt0aGlzLmlzQ29ubmVjdGVkJiZ0aGlzLmRpc3BhdGNoRXZlbnQobmV3IGZqYSgoYSxiKT0+e3RoaXMucmgoYSxiKX0pKX19O2ZqYT1jbGFzcyBleHRlbmRzIEV2ZW50e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCJnbXAtaW50ZXJuYWwtY29ubmVjdCIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KTt0aGlzLnFoPWF9fTtfLmpwPWNsYXNzIGV4dGVuZHMgRXZlbnR7Y29uc3RydWN0b3IoKXtzdXBlcigiZ21wLWVycm9yIil9fTtfLndmYT1jbGFzcyBleHRlbmRzIEV2ZW50e2NvbnN0cnVjdG9yKCl7c3VwZXIoImdtcC1sb2FkIil9fTt2YXIgRHQ9Y2xhc3MgZXh0ZW5kcyBfLmR0e3RpKCl7cmV0dXJuKDAsXy5XcSlgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0ibWVzc2FnZSI+JHt0aGlzLm1lc3NhZ2V9PC9kaXY+CiAgICAgICR7dGhpcy5xaD09PXZvaWQgMD8iIjooMCxfLldxKWA8ZGl2IGNsYXNzPSJzdWItbWVzc2FnZSI+JHt0aGlzLnFofTwvZGl2PmB9CiAgICA8L2Rpdj5gfX07RHQuc3R5bGVzPVtfLiRzKFsiOmhvc3QoOm5vdChbaGlkZGVuXSkpe2Rpc3BsYXk6YmxvY2t9LmNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDtoZWlnaHQ6MTAwJTstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjEycHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1lc3NhZ2V7Y29sb3I6IzVlNWU1ZTtmb250LXNpemU6Ljg3NXJlbX0ubWVzc2FnZSwuc3ViLW1lc3NhZ2V7Zm9udC1mYW1pbHk6R29vZ2xlIFNhbnMsUm9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwfS5zdWItbWVzc2FnZXtjb2xvcjojOTk5O2ZvbnQtc2l6ZTouNzVyZW19Il0pXTtfLnhvKCJnbXAtaW50ZXJuYWwtbG9hZGluZy10ZXh0IixjbGFzcyBleHRlbmRzIER0e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLm1lc3NhZ2U9IkxvYWRpbmcuLi4ifX0pO18uRXQ9Y2xhc3MgZXh0ZW5kcyBEdHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy5tZXNzYWdlPSJPb3BzISBTb21ldGhpbmcgd2VudCB3cm9uZy4iO3RoaXMucWg9IlBsZWFzZSBzZWUgdGhlIGRldmVsb3BlciBjb25zb2xlIGZvciB0ZWNobmljYWwgZGV0YWlscy4ifX07Xy54bygiZ21wLWludGVybmFsLXJlcXVlc3QtZXJyb3ItdGV4dCIsXy5FdCk7Xy5namE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5ob3N0PWE7dGhpcy5vcHRpb25zPXt9O3RoaXMucWg9Xy5tYShQcm9taXNlLCJ3aXRoUmVzb2x2ZXJzIikuY2FsbChQcm9taXNlKX1pc1Zpc2libGUoYSl7dmFyIHtpbmxpbmVTaXplOmIsYmxvY2tTaXplOmN9PWEuY29udGVudEJveFNpemVbMF07cmV0dXJuIGI+PSh0aGlzLm9wdGlvbnMueFQ/PzEpJiZjPj0odGhpcy5vcHRpb25zLndUPz8xKX19O3ZhciBHcT1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLm5hbWU9IkFzeW5jUnVuUHJlZW1wdGVkRXJyb3IifX0saGphPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5xaD0wfX07Xy5GdD1jbGFzcyBleHRlbmRzIF8uZXR7Y29uc3RydWN0b3IoYT17fSl7c3VwZXIoYSk7dGhpcy50az0wO3RoaXMuWkQ9ITE7dGhpcy5iSD1uZXcgaGphO3RoaXMuelE9bmV3IF8uZ2phKHRoaXMpfWx6KGEpe3JldHVybiBhfXRpKCl7c3dpdGNoKHRoaXMudGspe2Nhc2UgMTp2YXIgYT10aGlzLm96KCk7YnJlYWs7Y2FzZSAzOmE9dGhpcy5teigpO2JyZWFrO2Nhc2UgMjphPXRoaXMueXcoKTticmVhaztkZWZhdWx0OmE9dGhpcy56dCgpfXJldHVybiB0aGlzLmx6KGEpfW96KCl7cmV0dXJuKDAsXy5XcSlgIDxnbXAtaW50ZXJuYWwtbG9hZGluZy10ZXh0PjwvZ21wLWludGVybmFsLWxvYWRpbmctdGV4dD4gYH1teigpe3JldHVybigwLF8uV3EpYAogICAgICA8Z21wLWludGVybmFsLXJlcXVlc3QtZXJyb3ItdGV4dD48L2dtcC1pbnRlcm5hbC1yZXF1ZXN0LWVycm9yLXRleHQ+CiAgICBgfXp0KCl7cmV0dXJuKDAsXy5XcSlgYH19O18uRChbXy52cSgpLF8uRigiZGVzaWduOnR5cGUiLE51bWJlcildLF8uRnQucHJvdG90eXBlLCJ0ayIsdm9pZCAwKTt2YXIgaWphO2lqYT1jbGFzcyBleHRlbmRzIFlpYXt9O18uR3Q9Y2xhc3MgZXh0ZW5kcyBpamF7Y29uc3RydWN0b3IoYT17fSl7c3VwZXIoKTt0aGlzLmVsZW1lbnQ9UW0oIlZpZXciLCJlbGVtZW50IiwoKT0+Xy5NbShfLkttKFtfLkVtKEhUTUxFbGVtZW50LCJIVE1MRWxlbWVudCIpLF8uRW0oU1ZHRWxlbWVudCwiU1ZHRWxlbWVudCIpXSkpKGEuZWxlbWVudCl8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKTt0aGlzLnhpKGEsXy5HdCwiVmlldyIpfX07Xy5qamE9Xy5DbSh7Y2VudGVyOmE9Pl8uWG0oYSkscmFkaXVzOl8uT219LCEwKTtfLkh0PV8uQ20oe2xhdDpfLlhyLGxuZzpfLlhyLGFsdGl0dWRlOl8uTW0oXy5Ycil9LCEwKTtfLmtqYT1fLkNtKHtsYXQ6Xy5Ycixsbmc6Xy5YcixhbHRpdHVkZTpfLk1tKF8uWHIpfSwhMCk7Xy5KcT1fLkttKFtfLkVtKF8uUW8sIkxhdExuZ0FsdGl0dWRlIiksXy5FbShfLlRtLCJMYXRMbmciKSxfLmtqYV0pO3ZhciBsamE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD1hfHwwfWhlYWRpbmcoKXtyZXR1cm4gdGhpcy5xaH10aWx0KCl7cmV0dXJuIDQ1fXRvU3RyaW5nKCl7cmV0dXJuYCR7dGhpcy5xaH0sNDVgfX07dmFyIG1qYTttamE9TWF0aC5zcXJ0KDIpO18uTHE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy53Rj0hMDt0aGlzLnJoPW5ldyBfLnB0O3RoaXMucWg9bmV3IGxqYShhJTM2MCk7dGhpcy5zaD1uZXcgXy5ibygwLDApfWZyb21MYXRMbmdUb1BvaW50KGEsYil7YT1fLlhtKGEpO2I9dGhpcy5yaC5mcm9tTGF0TG5nVG9Qb2ludChhLGIpO3hmYShiLHRoaXMucWguaGVhZGluZygpKTtiLnk9KGIueS0xMjgpL21qYSsxMjg7cmV0dXJuIGJ9ZnJvbVBvaW50VG9MYXRMbmcoYSxiPSExKXt2YXIgYz10aGlzLnNoO2MueD1hLng7Yy55PShhLnktMTI4KSptamErMTI4O3hmYShjLDM2MC10aGlzLnFoLmhlYWRpbmcoKSk7cmV0dXJuIHRoaXMucmguZnJvbVBvaW50VG9MYXRMbmcoYyxiKX1nZXRQb3YoKXtyZXR1cm4gdGhpcy5xaH19O3ZhciB5ZmE9bmV3IF8ucHQ7dmFyIEl0PV8uVWEuZ29vZ2xlLm1hcHMsbmphPUdsLmdldEluc3RhbmNlKCksb2phPW5qYS5sbi5iaW5kKG5qYSk7SXQuX19nanNsb2FkX189b2phO18uYW0oSXQubW9kdWxlcyxvamEpO2RlbGV0ZSBJdC5tb2R1bGVzO3ZhciBGZmE9Y2xhc3MgZXh0ZW5kcyBfLkl7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9Z2V0TmFtZSgpe3JldHVybiBfLkgodGhpcywxKX19O3ZhciBFZmE9Xy5haihjbGFzcyBleHRlbmRzIF8uSXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19KTt2YXIgRGZhO3ZhciB6ZmE9e307Zm9yKGxldCBhIG9mIEdmYSgpKXt2YXIgcGphPWEuZ2V0TmFtZSgpLHFqYTtxamE9Xy5VZyhhLDIsXy5jZygpKTt6ZmFbcGphXT1xamF9O3ZhciBQcT1uZXcgTWFwO1BxLnNldCgiYWRkcmVzc1ZhbGlkYXRpb24iLHtmajoyMzMwNDgsZ2o6MjMzMDQ5LGlqOjIzMzA0N30pO1BxLnNldCgiYWlyUXVhbGl0eSIse2ZqOjIzMzA1MSxnajoyMzMwNTIsaWo6MjMzMDUwfSk7UHEuc2V0KCJhZHNlbnNlIix7Zmo6MjMzMDU0LGdqOjIzMzA1NSxpajoyMzMwNTN9KTtQcS5zZXQoImNvbW1vbiIse2ZqOjIzMzA1NyxnajoyMzMwNTgsaWo6MjMzMDU2fSk7UHEuc2V0KCJjb250cm9scyIse2ZqOjIzMzA2MCxnajoyMzMwNjEsaWo6MjMzMDU5fSk7UHEuc2V0KCJkYXRhIix7Zmo6MjMzMDYzLGdqOjIzMzA2NCxpajoyMzMwNjJ9KTtQcS5zZXQoImRpcmVjdGlvbnMiLHtmajoyMzMwNjYsZ2o6MjMzMDY3LGlqOjIzMzA2NX0pO1BxLnNldCgiZGlzdGFuY2VfbWF0cml4Iix7Zmo6MjMzMDY5LGdqOjIzMzA3MCxpajoyMzMwNjh9KTtQcS5zZXQoImRyYXdpbmciLHtmajoyMzMwNzIsZ2o6MjMzMDczLGlqOjIzMzA3MX0pOwpQcS5zZXQoImRyYXdpbmdfaW1wbCIse2ZqOjIzMzA3NSxnajoyMzMwNzYsaWo6MjMzMDc0fSk7UHEuc2V0KCJlbGV2YXRpb24iLHtmajoyMzMwNzgsZ2o6MjMzMDc5LGlqOjIzMzA3N30pO1BxLnNldCgiZ2VvY29kZXIiLHtmajoyMzMwODEsZ2o6MjMzMDgyLGlqOjIzMzA4MH0pO1BxLnNldCgiZ2VvbWV0cnkiLHtmajoyMzMwODQsZ2o6MjMzMDg1LGlqOjIzMzA4M30pO1BxLnNldCgiaW1hZ2VyeV92aWV3ZXIiLHtmajoyMzMwODcsZ2o6MjMzMDg4LGlqOjIzMzA4Nn0pO1BxLnNldCgiaW5mb3dpbmRvdyIse2ZqOjIzMzA5MCxnajoyMzMwOTEsaWo6MjMzMDg5fSk7UHEuc2V0KCJqb3VybmV5U2hhcmluZyIse2ZqOjIzMzA5MyxnajoyMzMwOTQsaWo6MjMzMDkyfSk7UHEuc2V0KCJrbWwiLHtmajoyMzMwOTYsZ2o6MjMzMDk3LGlqOjIzMzA5NX0pO1BxLnNldCgibGF5ZXJzIix7Zmo6MjMzMDk5LGdqOjIzMzEwMCxpajoyMzMwOTh9KTsKUHEuc2V0KCJsb2ciLHtmajoyMzMxMDUsZ2o6MjMzMTA2LGlqOjIzMzEwNH0pO1BxLnNldCgibWFpbiIse2ZqOjIzMzEwOCxnajoyMzMxMDksaWo6MjMzMTA3fSk7UHEuc2V0KCJtYXAiLHtmajoyMzMxMTEsZ2o6MjMzMTEyLGlqOjIzMzExMH0pO1BxLnNldCgibWFwM2RfbGl0ZV93YXNtIix7Zmo6MjMzMTE0LGdqOjIzMzExNSxpajoyMzMxMTN9KTtQcS5zZXQoIm1hcDNkX3dhc20iLHtmajoyMzMxMTcsZ2o6MjMzMTE4LGlqOjIzMzExNn0pO1BxLnNldCgibWFwM2Rfd2FzbV9nZW94cCIse2ZqOjMzMTU1NyxnajozMzE1NTgsaWo6MzMxNTU5fSk7UHEuc2V0KCJtYXBzM2QiLHtmajoyMzMxMjAsZ2o6MjMzMTIxLGlqOjIzMzExOX0pO1BxLnNldCgibWFya2VyIix7Zmo6MjMzMTIzLGdqOjIzMzEyNCxpajoyMzMxMjJ9KTtQcS5zZXQoIm1heHpvb20iLHtmajoyMzMxMjYsZ2o6MjMzMTI3LGlqOjIzMzEyNX0pO1BxLnNldCgib25pb24iLHtmajoyMzMxMjksZ2o6MjMzMTMwLGlqOjIzMzEyOH0pOwpQcS5zZXQoIm92ZXJsYXkiLHtmajoyMzMxMzIsZ2o6MjMzMTMzLGlqOjIzMzEzMX0pO1BxLnNldCgicGFub3JhbWlvIix7Zmo6MjMzMTM1LGdqOjIzMzEzNixpajoyMzMxMzR9KTtQcS5zZXQoInBsYWNlcyIse2ZqOjIzMzEzOCxnajoyMzMxMzksaWo6MjMzMTM3fSk7UHEuc2V0KCJwbGFjZXNfaW1wbCIse2ZqOjIzMzE0MSxnajoyMzMxNDIsaWo6MjMzMTQwfSk7UHEuc2V0KCJwb2x5Iix7Zmo6MjMzMTQ0LGdqOjIzMzE0NSxpajoyMzMxNDN9KTtQcS5zZXQoInJvdXRlcyIse2ZqOjI1NjgzOSxnajoyNTY4NDAsaWo6MjU2ODQxfSk7UHEuc2V0KCJzZWFyY2giLHtmajoyMzMxNDcsZ2o6MjMzMTQ4LGlqOjIzMzE0Nn0pO1BxLnNldCgic2VhcmNoX2ltcGwiLHtmajoyMzMxNTAsZ2o6MjMzMTUxLGlqOjIzMzE0OX0pO1BxLnNldCgic3RyZWV0dmlldyIse2ZqOjIzMzE1NixnajoyMzMxNTcsaWo6MjMzMTU1fSk7UHEuc2V0KCJzdHlsZUVkaXRvciIse2ZqOjIzMzE1OSxnajoyMzMxNjAsaWo6MjMzMTU4fSk7ClBxLnNldCgidXRpbCIse2ZqOjIzMzE2MixnajoyMzMxNjMsaWo6MjMzMTYxfSk7UHEuc2V0KCJ2aXN1YWxpemF0aW9uIix7Zmo6MjMzMTY1LGdqOjIzMzE2NixpajoyMzMxNjR9KTtQcS5zZXQoInZpc3VhbGl6YXRpb25faW1wbCIse2ZqOjIzMzE2OCxnajoyMzMxNjksaWo6MjMzMTY3fSk7UHEuc2V0KCJ3ZWF0aGVyIix7Zmo6MjMzMTcxLGdqOjIzMzE3MixpajoyMzMxNzB9KTtQcS5zZXQoIndlYmdsIix7Zmo6MjMzMTc0LGdqOjIzMzE3NSxpajoyMzMxNzN9KTtfLkp0PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy50b2tlbj1gJHtfLktuKCkucmVwbGFjZSgvLS9nLCIiKX0ke01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMTQ3NDgzNjQ4KS50b1N0cmluZygzNikrTWF0aC5hYnMoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjIxNDc0ODM2NDgpXl8ubWIoKSkudG9TdHJpbmcoMzYpfWAuc3Vic3RyaW5nKDAsMzYpfX07Xy5KdC5wcm90b3R5cGUucWg9Xy5oYSgzNSk7Xy5KdC5wcm90b3R5cGUuY29uc3RydWN0b3I9Xy5KdC5wcm90b3R5cGUuY29uc3RydWN0b3I7Xy5LdD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuV2k9dGhpcy5EaD0iIn1nZXQgaWQoKXtyZXR1cm4gdGhpcy5EaH1nZXQgcmVzb3VyY2VOYW1lKCl7cmV0dXJuIHRoaXMuV2l9fTtfLkx0PWNsYXNze2NvbnN0cnVjdG9yKGEsYj17fSl7dGhpcy5vcHRpb25zPWI7dGhpcy5xaD17Y3VycmVuY3lDb2RlOl8uSChhLDEpLHVuaXRzOl8uJGFhKF8uTmcoYSwyKSksbmFub3M6Xy5LZyhhLDMpfX1nZXQgY3VycmVuY3lDb2RlKCl7cmV0dXJuIHRoaXMucWguY3VycmVuY3lDb2RlfWdldCB1bml0cygpe3JldHVybiB0aGlzLnFoLnVuaXRzfWdldCBuYW5vcygpe3JldHVybiB0aGlzLnFoLm5hbm9zfXRvU3RyaW5nKCl7cmV0dXJuKG5ldyBJbnRsLk51bWJlckZvcm1hdCh0aGlzLm9wdGlvbnMubGFuZ3VhZ2U/bmV3IEludGwuTG9jYWxlKHRoaXMub3B0aW9ucy5sYW5ndWFnZSx7cmVnaW9uOnRoaXMub3B0aW9ucy5yZWdpb24/P3ZvaWQgMH0pOnZvaWQgMCx7c3R5bGU6ImN1cnJlbmN5IixjdXJyZW5jeTp0aGlzLmN1cnJlbmN5Q29kZX0pKS5mb3JtYXQodGhpcy51bml0cyt0aGlzLm5hbm9zLzFFOSl9dG9KU09OKCl7cmV0dXJue2N1cnJlbmN5Q29kZTp0aGlzLmN1cnJlbmN5Q29kZSwKdW5pdHM6dGhpcy51bml0cyxuYW5vczp0aGlzLm5hbm9zfX19O18uTHQucHJvdG90eXBlLnRvU3RyaW5nPV8uTHQucHJvdG90eXBlLnRvU3RyaW5nO18uTXQ9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5xaD17Y29tcG91bmRDb2RlOmEuSUgoKXx8bnVsbCxnbG9iYWxDb2RlOmEuTUgoKXx8bnVsbH19Z2V0IGNvbXBvdW5kQ29kZSgpe3JldHVybiB0aGlzLnFoLmNvbXBvdW5kQ29kZX1nZXQgZ2xvYmFsQ29kZSgpe3JldHVybiB0aGlzLnFoLmdsb2JhbENvZGV9dG9KU09OKCl7cmV0dXJue2NvbXBvdW5kQ29kZTp0aGlzLmNvbXBvdW5kQ29kZSxnbG9iYWxDb2RlOnRoaXMuZ2xvYmFsQ29kZX19fTtfLk50PWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMucWg9W107dGhpcy5yaD1bXTt0aGlzLnloPV8uSChhLDIpPz8iIjt0aGlzLnRoPV8uSChhLDMpfHxudWxsO3RoaXMuemg9Xy5IKGEsNCl8fG51bGw7dGhpcy5BaD1fLkgoYSw1KXx8bnVsbDt0aGlzLnNoPV8uSChhLDYpfHxudWxsO3RoaXMud2g9Xy5IKGEsNyl8fG51bGw7dGhpcy5CaD1fLkgoYSw4KXx8bnVsbDt0aGlzLnhoPV8uSChhLDExKXx8bnVsbDt0aGlzLnFoPV8uVWcoYSw5LF8uY2coKSkuc2xpY2UoKTt0aGlzLnJoPV8uVWcoYSwxMCxfLmNnKCkpLnNsaWNlKCl9Z2V0IHJlZ2lvbkNvZGUoKXtyZXR1cm4gdGhpcy55aH1nZXQgbGFuZ3VhZ2VDb2RlKCl7cmV0dXJuIHRoaXMudGh9Z2V0IHBvc3RhbENvZGUoKXtyZXR1cm4gdGhpcy56aH1nZXQgc29ydGluZ0NvZGUoKXtyZXR1cm4gdGhpcy5BaH1nZXQgYWRtaW5pc3RyYXRpdmVBcmVhKCl7cmV0dXJuIHRoaXMuc2h9Z2V0IGxvY2FsaXR5KCl7cmV0dXJuIHRoaXMud2h9Z2V0IHN1YmxvY2FsaXR5KCl7cmV0dXJuIHRoaXMuQmh9Z2V0IGFkZHJlc3NMaW5lcygpe3JldHVybiB0aGlzLnFofWdldCByZWNpcGllbnRzKCl7cmV0dXJuIHRoaXMucmh9Z2V0IG9yZ2FuaXphdGlvbigpe3JldHVybiB0aGlzLnhofXRvSlNPTigpe3JldHVybntyZWdpb25Db2RlOnRoaXMueWgsCmxhbmd1YWdlQ29kZTp0aGlzLnRoLHBvc3RhbENvZGU6dGhpcy56aCxzb3J0aW5nQ29kZTp0aGlzLkFoLGFkbWluaXN0cmF0aXZlQXJlYTp0aGlzLnNoLGxvY2FsaXR5OnRoaXMud2gsc3VibG9jYWxpdHk6dGhpcy5CaCxhZGRyZXNzTGluZXM6dGhpcy5xaCxyZWNpcGllbnRzOnRoaXMucmgsb3JnYW5pemF0aW9uOnRoaXMueGh9fX07Xy5yamE9Xy5DbSh7cmVnaW9uQ29kZTpfLmNyLGxhbmd1YWdlQ29kZTpfLmJzLHBvc3RhbENvZGU6Xy5icyxzb3J0aW5nQ29kZTpfLmJzLGFkbWluaXN0cmF0aXZlQXJlYTpfLmJzLGxvY2FsaXR5Ol8uYnMsc3VibG9jYWxpdHk6Xy5icyxhZGRyZXNzTGluZXM6Xy5NbShfLkhtKF8uZHMpKSxyZWNpcGllbnRzOkhjYSxvcmdhbml6YXRpb246SGNhfSk7Xy5PdD1jbGFzc3t9O18uT3QuZW5jb2RlUGF0aD1mdW5jdGlvbihhKXthIGluc3RhbmNlb2YgXy5FbyYmKGE9YS5nZXRBcnJheSgpKTthPSgwLF8uZXMpKGEpO3JldHVybiBJZmEoYSxmdW5jdGlvbihiKXtyZXR1cm5bTWF0aC5yb3VuZChiLmxhdCgpKjFFNSksTWF0aC5yb3VuZChiLmxuZygpKjFFNSldfSl9O18uT3QuZGVjb2RlUGF0aD1fLkpmYTt2YXIgdGphLHVqYSxQZmE7Xy5zamE9KCk9PigwLF8uV3EpYDxzdmcgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHZpZXdCb3g9IjAgLTk2MCA5NjAgOTYwIj48cGF0aCBkPSJtMzEzLTQ0MCAyMjQgMjI0LTU3IDU2LTMyMC0zMjAgMzIwLTMyMCA1NyA1Ni0yMjQgMjI0aDQ4N3Y4MHoiLz48L3N2Zz5gO3RqYT0oe2NsYXNzTmFtZTphLGZpbGw6Yn0pPT4oMCxfLldxKWA8c3ZnIHdpZHRoPSI4OCIgaGVpZ2h0PSIxNiIgYXJpYS1sYWJlbD0iR29vZ2xlIE1hcHMiIGNsYXNzPSIke2F9IiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0IiB2aWV3Qm94PSIwIDAgOTggMTgiPjxwYXRoIGZpbGw9IiR7Yn0iIGQ9Ik03LjA4IDEzLjk2YTcgNyAwIDAxLTQuOTktMi4wNUE2LjcgNi43IDAgMDEwIDYuOThRMCA0LjEgMi4wOSAyLjA1QTcgNyAwIDAxNy4wOCAwYTYuNyA2LjcgMCAwMTQuNzkgMS45MmwtMS4zNSAxLjM1YTQuOCA0LjggMCAwMC0zLjQ0LTEuMzZxLTIuMSAwLTMuNTUgMS40OGE1IDUgMCAwMC0xLjQ1IDMuNTlxMCAyLjEyIDEuNDYgMy41OWE0LjggNC44IDAgMDAzLjU1IDEuNDggNC44IDQuOCAwIDAwMy41My0xLjRxLjg0LS44NCAxLjA0LTIuNEg3LjA4di0xLjloNi40MmE2IDYgMCAwMS4xIDEuMTlxMCAyLjgtMS42NSA0LjQ2YTYuNCA2LjQgMCAwMS00Ljg3IDEuOTZNMjIgMTIuNjhhNC40IDQuNCAwIDAxLTMuMiAxLjI5IDQuNCA0LjQgMCAwMS0zLjItMS4yOSA0LjMgNC4zIDAgMDEtMS4zMS0zLjIxcTAtMS45MiAxLjMxLTMuMjFhNC40IDQuNCAwIDAxMy4yLTEuMjlxMS45IDAgMy4yIDEuMjlhNC4zIDQuMyAwIDAxMS4zMSAzLjIxQTQuMyA0LjMgMCAwMTIyIDEyLjY4bS00Ljk5LTEuMjZxLjc1Ljc4IDEuNzkuNzcgMS4wNCAwIDEuNzktLjc3Ljc1LS43OC43NS0xLjk1IDAtMS4xOS0uNzQtMS45Ni0uNzUtLjc3LTEuOC0uNzd0LTEuOC43N2EyLjcgMi43IDAgMDAtLjc0IDEuOTZxMCAxLjE3Ljc1IDEuOTVtMTQuODQgMS4yNnEtMS4zIDEuMjktMy4yIDEuMjljLTEuOSAwLTIuMzMtLjQzLTMuMi0xLjI5YTQuMyA0LjMgMCAwMS0xLjMxLTMuMjFxMC0xLjkyIDEuMzEtMy4yMSAxLjMtMS4yOSAzLjItMS4yOWMxLjkgMCAyLjMzLjQzIDMuMiAxLjI5YTQuMyA0LjMgMCAwMTEuMzEgMy4yMXEwIDEuOTItMS4zMSAzLjIxbS00Ljk5LTEuMjZxLjc1Ljc4IDEuNzkuNzcgMS4wNCAwIDEuNzktLjc3Ljc1LS43OC43NS0xLjk1IDAtMS4xOS0uNzQtMS45NmMtLjc0LS43Ny0xLjA5LS43Ny0xLjgtLjc3cS0xLjA1IDAtMS44Ljc3YTIuNyAyLjcgMCAwMC0uNzQgMS45NnEwIDEuMTcuNzUgMS45NU0zOC4zMiAxOHEtMS41IDAtMi41Mi0uOGE0LjUgNC41IDAgMDEtMS40Ni0xLjg2bDEuNzItLjcycS4yNy42NS44NSAxLjEyLjU5LjQ4IDEuNDEuNDhhMi4zIDIuMyAwIDAwMS43Ni0uNjhxLjY0LS42OC42NC0xLjk2di0uNjVoLS4wN2EyLjkgMi45IDAgMDEtMi4zNyAxLjAyIDQgNCAwIDAxLTMuMDEtMS4zMSA0LjQgNC40IDAgMDEtMS4yOS0zLjE3IDQuNCA0LjQgMCAwMTEuMjktMy4xOSA0IDQgMCAwMTMuMDEtMS4zMnEuNzYgMCAxLjM5LjI5dC45OC43MmguMDd2LS43MmgxLjg3djguMDdxMCAyLjM1LTEuMiAzLjUyQTQuMiA0LjIgMCAwMTM4LjMyIDE4bS4xMy01LjgxcTEuMDIgMCAxLjcxLS43N2EyLjggMi44IDAgMDAuNjktMS45M3EwLTEuMTctLjY5LTEuOTZhMi4yIDIuMiAwIDAwLTEuNzEtLjc5cS0xLjAzIDAtMS43Ny43OGEyLjggMi44IDAgMDAtLjczIDEuOTZxMCAxLjE2LjczIDEuOTMuNzQuNzggMS43Ny43OE00NS45My40OHYxMy4yMWgtMS45OFYuNDh6bTUuNDEgMTMuNDhhNC40IDQuNCAwIDAxLTQuNDYtNC40OXEwLTEuOTggMS4yMy0zLjI0YTQgNCAwIDAxMy4wMS0xLjI2IDMuOCAzLjggMCAwMTIuNjggMS4wNyA1IDUgMCAwMTEuMTcgMS44bC4yLjUxLTYuMDEgMi40OWEyLjMgMi4zIDAgMDAyLjE4IDEuMzZxMS4zNyAwIDIuMjEtMS4yNGwxLjUzIDEuMDJxLS41Ljc2LTEuNDUgMS4zOC0uOTIuNi0yLjI5LjZtLTIuNS00LjYzIDQuMDItMS42N2ExLjQgMS40IDAgMDAtLjYzLS42OSAyIDIgMCAwMC0xLjA0LS4yNnEtLjg3IDAtMS42My43MmEyLjQgMi40IDAgMDAtLjcyIDEuOW0xMS4yMSA0LjM2VjEuNWgxLjU3bDQuMjQgNy40MmguMDdsNC4yNC03LjQyaDEuNTd2MTIuMTloLTEuNTdWNi40NWwuMDctMi4wNGgtLjA3bC0zLjgxIDYuNjloLS45MmwtMy44MS02LjY5aC0uMDdsLjA3IDIuMDR2Ny4yNHptMTYuMzEuMjdxLTEuMzMgMC0yLjIyLS43N2EyLjUgMi41IDAgMDEtLjg5LTIuMDNxMC0xLjM2IDEuMDYtMi4xNCAxLjA1LS43NyAyLjYxLS43NyAxLjM4IDAgMi4yNi41MXYtLjIzcTAtLjkxLS42My0xLjQ3QTIuMyAyLjMgMCAwMDc3IDYuNTFxLS42OCAwLTEuMjMuMzJhMS42IDEuNiAwIDAwLS43Ny44OGwtMS40My0uNjFxLjI4LS43NSAxLjE0LTEuMzlhMy42IDMuNiAwIDAxMi4yNS0uNjRxMS42IDAgMi42Ni45NCAxLjA1LjkzIDEuMDYgMi42NHY1LjA0aC0xLjV2LTEuMTZoLS4wOGEzIDMgMCAwMS0yLjc0IDEuNDNtLjI1LTEuNDNxLjk3IDAgMS43Ni0uNzIuOC0uNzIuNzktMS43MS0uNjctLjU0LTEuOTktLjU0LTEuMTQgMC0xLjcyLjQ5LS41OC41LS41OCAxLjE2IDAgLjYxLjUzLjk3LjU0LjM1IDEuMjEuMzVtOS45NyAxLjQzcS0uOTYgMC0xLjcxLS40MWEzIDMgMCAwMS0xLjEzLTEuMDJoLS4wN2wuMDcgMS4xNnYzLjY4aC0xLjU3VjUuMzVoMS41djEuMTZoLjA3YTMgMyAwIDAxMS4xMy0xLjAyIDMuNyAzLjcgMCAwMTQuNS44NyA0LjUgNC41IDAgMDExLjE4IDMuMTdxMCAxLjktMS4xOCAzLjE3YTMuNyAzLjcgMCAwMS0yLjc5IDEuMjZtLS4yNi0xLjQzcTEuMSAwIDEuODctLjgzLjc4LS44Mi43OC0yLjE5dC0uNzgtMi4xOWEyLjUgMi41IDAgMDAtMS44Ny0uODNxLTEuMTEgMC0xLjg4LjgyLS43OC44MS0uNzcgMi4yYy4wMSAxLjM5LjI2IDEuNjUuNzcgMi4ycS43OC44MiAxLjg4LjgybTguMzkgMS40M2EzLjggMy44IDAgMDEtMy42NS0yLjM4bDEuNC0uNThxLjY3IDEuNTcgMi4yNiAxLjU3LjczIDAgMS4yLS4zMmExIDEgMCAwMC40Ny0uODVxMC0uODEtMS4xNC0xLjExbC0xLjY5LS40MWE0IDQgMCAwMS0xLjUyLS43NyAxLjkgMS45IDAgMDEtLjcyLTEuNTRxMC0xLjExLjk4LTEuOGE0IDQgMCAwMTIuMzItLjY5cTEuMTEgMCAxLjk4LjV0MS4yNCAxLjQ0bC0xLjM0LjU2cS0uNDYtMS4xMS0xLjkxLTEuMTEtLjcgMC0xLjE4LjI5dC0uNDguNzhxMCAuNzIgMS4xMS45N2wxLjY1LjM5YTMgMyAwIDAxMS43NC45NHEuNTYuNjYuNTYgMS41IDAgMS4xMi0uOTIgMS44Ny0uOS43NS0yLjM2Ljc1Ii8+PC9zdmc+YDsKdWphPSh7Y2xhc3NOYW1lOmEsZmlsbDpiLG91dGxpbmU6Y30pPT4oMCxfLldxKWA8c3ZnIHdpZHRoPSIxMDYiIGhlaWdodD0iMjIiIGFyaWEtbGFiZWw9Ikdvb2dsZSBNYXBzIiBjbGFzcz0iJHthfSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgdmlld0JveD0iMCAwIDEwNiAyMiI+PGcgZmlsbD0iJHtjfSIgb3BhY2l0eT0iLjkiPjxwYXRoIGQ9Im01OS44NiAxMS40NC0uOTMtMi4zM3EtLjI0LS42LS42MS0xLjIyLS40LS42NC0xLjAxLTEuMjctLjc1LS43NS0xLjgtMS4yLTEuMDktLjQ2LTIuMy0uNDYtMS43NyAwLTMuMi44N1YuNDdoLTZ2NC43N2gtMS45NWE2LjEgNi4xIDAgMDAtNi40MyAxLjk0cS0uMTQtLjE4LS4zMy0uMzVhNi40IDYuNCAwIDAwLTQuNi0xLjg2IDYuNCA2LjQgMCAwMC00LjYxIDEuODZsLS4zMi4zNC0uMzItLjM0YTYuNCA2LjQgMCAwMC00LjYtMS44NnEtMi4zNCAwLTQuMDcgMS4zOEgxNC4zbDIuNDctMi40Ni0xLjQ5LTEuNEE4LjcgOC43IDAgMDA5LjEgMGE5IDkgMCAwMC02LjQgMi42MUE4LjYgOC42IDAgMDAwIDguOTdxMCAzLjczIDIuNyA2LjM3YTkgOSAwIDAwNi40IDIuNjJjMi40NyAwIDQuNy0uODcgNi4zLTIuNTRsLjExLS4xM3EuMzEuNDQuNy44YTYuNCA2LjQgMCAwMDQuNjEgMS44NyA2LjQgNi40IDAgMDA0LjkzLTIuMmwuMzIuMzRhNi40IDYuNCAwIDAwNC42IDEuODZxMS45IDAgMy40MS0uOTJsLjQ1IDEuMDdhNyA3IDAgMDAyLjA5IDIuNjZBNiA2IDAgMDA0MC4zNyAyMmE2LjIgNi4yIDAgMDA0LjQ4LTEuNzMgNS43IDUuNyAwIDAwMS41LTIuNThINTB2LS42N3ExLjUyLjk0IDMuNDIuOTRhNiA2IDAgMDAzLjQtLjk0IDcgNyAwIDAwMi4wMi0xLjk0bDEuMTEtMS42Ni0xLjg3LTEuMjV6TTEwNSAxMC4xbC0uNzQtMS44NGE1IDUgMCAwMC0yLjEtMi40M3EtMS4zNS0uNzYtMi45OS0uNzctMS45NyAwLTMuNDggMS4wNS0uMzUuMjYtLjY2LjU2YTUuNyA1LjcgMCAwMC01LjczLTEuMzRoLTQuNjR2LjZxLTEuNC0uODctMy4yMi0uODdhNiA2IDAgMDAtMy4yMi45VjEuNWgtNC43NGwtMy4xMSA1LjQ1LTMuMTItNS40NWgtNC43M3YxNi4yaDUuNTd2LTIuNmg0LjU2djIuNmg1LjU4di0uMzdxMS4xNi42NCAyLjYyLjY0Ljk2IDAgMS43OS0uMjdoMi4wM3YzLjY4aDUuNTh2LTMuNDZxLjQxLjA2Ljg0LjA2YzEuNSAwIDIuODctLjU3IDMuOTgtMS42NHEuMy4zLjY2LjU2YTUuNyA1LjcgMCAwMDMuNTEgMS4wOCA1LjcgNS43IDAgMDAzLjY0LTEuMiA0LjMgNC4zIDAgMDAuNzMtNi4wOGwxLjM5LS41OCIvPjwvZz48cGF0aCBmaWxsPSIke2J9IiBkPSJNOS4xIDE1Ljk2YTcgNyAwIDAxLTUtMi4wNSA2LjYgNi42IDAgMDEtMi4wOS00Ljk0cTAtMi44OCAyLjEtNC45M0E3IDcgMCAwMTkuMSAyYTYuNiA2LjYgMCAwMTQuOCAxLjkybC0xLjM2IDEuMzVBNSA1IDAgMDA5LjEgMy45UTcgMy45IDUuNTUgNS4zOGE1IDUgMCAwMC0xLjQ2IDMuNnEwIDIuMSAxLjQ2IDMuNTlRNyAxNC4wNSA5LjEgMTQuMDVxMi4xMiAwIDMuNTQtMS40Ljg0LS44NCAxLjA0LTIuNEg5LjExVjguMzJoNi40M2E2IDYgMCAwMS4xIDEuMnEwIDIuOC0xLjY1IDQuNDZhNi40IDYuNCAwIDAxLTQuODggMS45Nm0xNC45NC0xLjI4YTQuNCA0LjQgMCAwMS0zLjIgMS4yOSA0LjQgNC40IDAgMDEtMy4yMS0xLjMgNC4zIDQuMyAwIDAxLTEuMzItMy4ycTAtMS45MyAxLjMyLTMuMjJhNC40IDQuNCAwIDAxMy4yLTEuMjkgNC40IDQuNCAwIDAxMy4yIDEuMyA0LjMgNC4zIDAgMDExLjMyIDMuMnEwIDEuOTMtMS4zMSAzLjIybS01LTEuMjZxLjc1Ljc3IDEuOC43NyAxLjAzIDAgMS43OC0uNzcuNzYtLjc4Ljc2LTEuOTUgMC0xLjE5LS43NS0xLjk3YTIuNCAyLjQgMCAwMC0xLjgtLjc3cS0xLjA1IDAtMS44Ljc3LS43NC43Ny0uNzQgMS45NyAwIDEuMTkuNzUgMS45NW0xNC44NiAxLjI2YTQuNCA0LjQgMCAwMS0zLjIgMS4yOSA0LjQgNC40IDAgMDEtMy4yLTEuMyA0LjMgNC4zIDAgMDEtMS4zMi0zLjJxMC0xLjkzIDEuMzEtMy4yMmE0LjQgNC40IDAgMDEzLjItMS4yOSA0LjQgNC40IDAgMDEzLjIxIDEuMyA0LjMgNC4zIDAgMDExLjMxIDMuMnEwIDEuOTMtMS4zIDMuMjJtLTUtMS4yNnEuNzUuNzcgMS44Ljc3IDEuMDQgMCAxLjc5LS43Ny43NS0uNzguNzUtMS45NSAwLTEuMTktLjc0LTEuOTdhMi40IDIuNCAwIDAwLTEuOC0uNzdxLTEuMDYgMC0xLjguNzctLjc1Ljc3LS43NSAxLjk3IDAgMS4xOS43NSAxLjk1TTQwLjM4IDIwcS0xLjUgMC0yLjUyLS44YTQuNSA0LjUgMCAwMS0xLjQ2LTEuODZsMS43Mi0uNzJxLjI3LjY0Ljg1IDEuMTIuNTkuNDggMS40MS40OGEyLjMgMi4zIDAgMDAxLjc2LS42OHEuNjUtLjY4LjY1LTEuOTZ2LS42NWgtLjA3YTIuOSAyLjkgMCAwMS0yLjM4IDEuMDIgNCA0IDAgMDEtMy4wMS0xLjMxIDQuNCA0LjQgMCAwMS0xLjMtMy4xNyA0LjQgNC40IDAgMDExLjMtMy4yIDQgNCAwIDAxMy4wMS0xLjMycS43NiAwIDEuNC4zLjYuMjcuOTguNzFoLjA3di0uNzNoMS44N3Y4LjA4cTAgMi4zNS0xLjIgMy41MkE0LjIgNC4yIDAgMDE0MC4zOCAyMG0uMTMtNS44MXExLjAyIDAgMS43MS0uNzcuNy0uNzguNy0xLjkzIDAtMS4xNy0uNy0xLjk3YTIuMiAyLjIgMCAwMC0xLjctLjc4cS0xLjA0IDAtMS43OC43OC0uNzQuNzktLjczIDEuOTcgMCAxLjE3LjczIDEuOTMuNzQuNzcgMS43Ny43N203LjUtMTEuNzJWMTUuN2gtMS45OVYyLjQ3em01LjQyIDEzLjQ5YTQuNCA0LjQgMCAwMS00LjQ3LTQuNWMwLTEuMjcuNDItMi40IDEuMjQtMy4yNGE0IDQgMCAwMTMuMDEtMS4yNiAzLjggMy44IDAgMDEyLjY5IDEuMDcgNSA1IDAgMDExLjE3IDEuOGwuMi41MS02LjAyIDIuNWEyLjMgMi4zIDAgMDAyLjE4IDEuMzZxMS4zNyAwIDIuMjEtMS4yNGwxLjU0IDEuMDJxLS41Ljc2LTEuNDYgMS4zOGE0IDQgMCAwMS0yLjMuNnptLTIuNTEtNC42MyA0LjAyLTEuNjhhMS40IDEuNCAwIDAwLS42My0uNjkgMiAyIDAgMDAtMS4wNC0uMjZxLS44NyAwLTEuNjMuNzJhMi40IDIuNCAwIDAwLS43MiAxLjkyem0xMy42MiA0LjM2VjMuNDloMS41N2w0LjI1IDcuNDNoLjA3bDQuMjQtNy40M2gxLjU4djEyLjJoLTEuNThWOC40NGwuMDctMi4wNGgtLjA3bC0zLjgxIDYuN2gtLjkybC0zLjgyLTYuN2gtLjA3bC4wNyAyLjA0djcuMjV6bTE2LjMyLjI3cS0xLjM0IDAtMi4yMi0uNzctLjktLjc4LS45LTIuMDMgMC0xLjM2IDEuMDctMi4xNCAxLjA1LS43OSAyLjYxLS43OCAxLjM5IDAgMi4yNy41MXYtLjI0cTAtLjktLjYzLTEuNDdhMi4zIDIuMyAwIDAwLTEuNTYtLjU1cS0uNjggMC0xLjIzLjMyYTEuNyAxLjcgMCAwMC0uNzYuOWwtMS40My0uNjJxLjI4LS43NSAxLjE0LTEuMzlhMy43IDMuNyAwIDAxMi4yNS0uNjRxMS42MSAwIDIuNjcuOTR0MS4wNiAyLjY0djUuMDVoLTEuNXYtMS4xNmgtLjA3YTMuMSAzLjEgMCAwMS0yLjc1IDEuNDN6bS4yNi0xLjQzcS45OCAwIDEuNzctLjcyLjgtLjcyLjc5LTEuNzEtLjY2LS41NC0yLS41NC0xLjE0IDAtMS43Mi40OS0uNTguNS0uNTggMS4xNiAwIC42LjUzLjk3LjUyLjM2IDEuMjEuMzZ6bTkuOTggMS40M3EtLjk2IDAtMS43MS0uNDFhMyAzIDAgMDEtMS4xNC0xLjAyaC0uMDdsLjA3IDEuMTZ2My42OGgtMS41N1Y3LjM0aDEuNVY4LjVoLjA3YTMgMyAwIDAxMS4xNC0xLjAyIDMuNyAzLjcgMCAwMTQuNS44NyA0LjUgNC41IDAgMDExLjE4IDMuMThxMCAxLjktMS4xOCAzLjE3YTMuNyAzLjcgMCAwMS0yLjggMS4yOHptLS4yNi0xLjQzcTEuMSAwIDEuODctLjgzLjc4LS44Mi43OC0yLjIgMC0xLjM2LS43OC0yLjE5YTIuNSAyLjUgMCAwMC0xLjg3LS44MyAyLjUgMi41IDAgMDAtMS44OC44MiAzIDMgMCAwMC0uNzggMi4ycTAgMS40Ljc4IDIuMi43Ny44MyAxLjg4LjgzbTguNDEgMS40M2EzLjggMy44IDAgMDEtMy42NS0yLjM4TDk3IDEzcS42NyAxLjU3IDIuMjYgMS41Ny43NSAwIDEuMi0uMzJhMSAxIDAgMDAuNDctLjg1cTAtLjgxLTEuMTQtMS4xMWwtMS43LS40MWE0IDQgMCAwMS0xLjUxLS43NyAxLjkgMS45IDAgMDEtLjcyLTEuNTVxMC0xLjExLjk4LTEuOGE0IDQgMCAwMTIuMzItLjY5cTEuMTEgMCAxLjk4LjV0MS4yNSAxLjQ0bC0xLjM3LjU2cS0uNDUtMS4xLTEuOS0xLjEtLjcxIDAtMS4yLjI4LS40Ny4zLS40Ny43OCAwIC43MiAxLjExLjk4bDEuNjUuMzlxMS4xOC4yNyAxLjc1Ljk0LjU2LjY2LjU2IDEuNSAwIDEuMTItLjkyIDEuODd0LTIuMzguNzV6Ii8+PC9zdmc+YDsKXy4kcT0oe2ZpbGw6YX0pPT4oMCxfLldxKWA8c3ZnIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0iaW5mby1pY29uIiB2aWV3Qm94PSIwIC05NjAgOTYwIDk2MCI+PHBhdGggZmlsbD0iJHthfSIgZD0iTTQ0MC0yODBoODB2LTI0MGgtODB6bTQwLTMyMHExNyAwIDI4LjUtMTEuNVQ1MjAtNjQwdC0xMS41LTI4LjVUNDgwLTY4MHQtMjguNSAxMS41VDQ0MC02NDB0MTEuNSAyOC41VDQ4MC02MDBtMCA1MjBxLTgzIDAtMTU2LTMxLjVUMTk3LTE5N3QtODUuNS0xMjdUODAtNDgwdDMxLjUtMTU2VDE5Ny03NjN0MTI3LTg1LjVUNDgwLTg4MHQxNTYgMzEuNVQ3NjMtNzYzdDg1LjUgMTI3VDg4MC00ODB0LTMxLjUgMTU2VDc2My0xOTd0LTEyNyA4NS41VDQ4MC04MG0wLTgwcTEzNCAwIDIyNy05M3Q5My0yMjctOTMtMjI3LTIyNy05My0yMjcgOTMtOTMgMjI3IDkzIDIyNyAyMjcgOTNtMC0zMjAiLz48L3N2Zz5gO1BmYT0oe2ZpbGw6YSxvdXRsaW5lOmJ9KT0+KDAsXy5XcSlgPHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0iaW5mby1pY29uLS1vdXRsaW5lIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCBtZWV0IiB2aWV3Qm94PSIxMSAxMSAxOSAxOSI+PGNpcmNsZSBjeD0iMjAiIGN5PSIyMCIgcj0iOSIgZmlsbD0iJHtifSIgZmlsbC1vcGFjaXR5PSIuOSIvPjxwYXRoIGZpbGw9IiR7YX0iIGQ9Ik0xOS4yNSAyMy42OGgxLjVWMTkuMWgtMS41em0uNzUtNS44NHEuMzIgMCAuNTQtLjIyYS43LjcgMCAwMC4yMy0uNTVxMC0uMy0uMjMtLjU0YS43LjcgMCAwMC0uNTQtLjIycS0uMzIgMC0uNTQuMjJhLjcuNyAwIDAwLS4yMy41NHEwIC4zMy4yMy41NS4yMi4yMi41NC4yMm0wIDkuNTFhNy40IDcuNCAwIDAxLTUuMjEtMi4xNEE3LjQgNy40IDAgMDExMi42NSAyMGE3LjMgNy4zIDAgMDExMC4yMi02Ljc3cTEuMzMuNTcgMi4zMiAxLjU4IDEuMDIuOTkgMS41OCAyLjM0LjU4IDEuMzQuNTggMi44NSAwIDEuNTItLjU4IDIuODdBNy4zIDcuMyAwIDAxMjAgMjcuMzVtMC0xLjU2cTIuNDIgMCA0LjEtMS42OEE1LjYgNS42IDAgMDAyNS44IDIwcTAtMi40Mi0xLjctNC4xYTUuNiA1LjYgMCAwMC00LjEtMS43cS0yLjQyIDAtNC4xIDEuN2E1LjYgNS42IDAgMDAtMS43IDQuMXEwIDIuNDIgMS43IDQuMWE1LjYgNS42IDAgMDA0LjEgMS43Ii8+PC9zdmc+YDsKXy5YcT0oe2FyaWFMYWJlbDphLGNsYXNzTmFtZTpifSk9PigwLF8uV3EpYDxzdmcgZmlsbD0iY3VycmVudENvbG9yIiBhcmlhLWxhYmVsPSIke2F9IiBjbGFzcz0iJHtifSIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiPjxwYXRoIGlkPSJvcGVuLWluLW5ldyIgZD0iTTIwMC0xMjBxLTMzIDAtNTYuNS0yMy41VDEyMC0yMDB2LTU2MHEwLTMzIDIzLjUtNTYuNVQyMDAtODQwaDI4MHY4MEgyMDB2NTYwaDU2MHYtMjgwaDgwdjI4MHEwIDMzLTIzLjUgNTYuNVQ3NjAtMTIwem0xODgtMjEyLTU2LTU2IDM3Mi0zNzJINTYwdi04MGgyODB2MjgwaC04MHYtMTQ0eiIvPjwvc3ZnPmA7dmFyIHZqYT1fLiRzKFsiOmhvc3QoOm5vdChbaGlkZGVuXSkpe2Rpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6R29vZ2xlIFNhbnMgVGV4dCxSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZn0uYXR0cmlidXRpb24tdGV4dHtmb250LXdlaWdodDo0MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5hdHRyaWJ1dGlvbi10ZXh0LmZvbnQtLWJvZHktc21hbGx7Zm9udC1zaXplOjEycHg7bGV0dGVyLXNwYWNpbmc6LjJweDtsaW5lLWhlaWdodDoxLjMzMzMzMzMzMzN9LmF0dHJpYnV0aW9uLXRleHQuZm9udC0tYm9keS1tZWRpdW17Zm9udC1zaXplOjE0cHg7Zm9udC1zdHlsZTpub3JtYWw7bGV0dGVyLXNwYWNpbmc6LjFweDtsaW5lLWhlaWdodDoxLjE0Mjg1NzE0Mjl9LmNvbnRhaW5lcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2xpbmUtaGVpZ2h0OjB9LmNvbnRhaW5lcj5he3RleHQtZGVjb3JhdGlvbjpub25lfWdtcC1pbnRlcm5hbC1kaWFsb2cgZGlhbG9ney0tZ21wLWludGVybmFsLWRpYWxvZy1ib3JkZXItcmFkaXVzOnZhcigtLWdtcC1kaWFsb2ctYm9yZGVyLXJhZGl1cywyOHB4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWdtcC1tYXQtY29sb3Itc3VyZmFjZSxsaWdodC1kYXJrKCNmZmYsIzEzMTMxNCkpO21heC13aWR0aDo2MDBweH1nbXAtaW50ZXJuYWwtZGlhbG9nIGRpYWxvZyBoZWFkZXIgLmdtLXVpLWhvdmVyLWVmZmVjdD5zcGFue2JhY2tncm91bmQtY29sb3I6dmFyKC0tZ21wLW1hdC1jb2xvci1vbi1zdXJmYWNlLGxpZ2h0LWRhcmsoIzFmMWYxZiwjZTNlM2UzKSl9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Z21wLWludGVybmFsLWRpYWxvZyBkaWFsb2cgaGVhZGVyIC5nbS11aS1ob3Zlci1lZmZlY3Q+c3BhbntiYWNrZ3JvdW5kLWNvbG9yOkJ1dHRvblRleHR9fWltZ3t3aWR0aDoxMDAlfXN2Z3tzaGFwZS1yZW5kZXJpbmc6Z2VvbWV0cmljUHJlY2lzaW9ufS5pbmZvLWJ1dHRvbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LW1hcmdpbi1zdGFydDp2YXIoLS1nbXAtbWF0LXNwYWNpbmctc21hbGwsOHB4KTstbW96LW1hcmdpbi1zdGFydDp2YXIoLS1nbXAtbWF0LXNwYWNpbmctc21hbGwsOHB4KTttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLWdtcC1tYXQtc3BhY2luZy1zbWFsbCw4cHgpO3BhZGRpbmc6MDtwYWRkaW5nLWJsb2NrOjA7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MjRweH0uaW5mby1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9LmluZm8tYnV0dG9uIC50YXAtYXJlYXtjdXJzb3I6ZGVmYXVsdDtoZWlnaHQ6MzRweDtsZWZ0OjUwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt3aWR0aDo0OHB4O3otaW5kZXg6MH0uaW5mby1idXR0b24udGFwLWFyZWEtZXhwYW5kZWR7aGVpZ2h0OjQ4cHg7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6dW5zZXQ7LW1vei1tYXJnaW4tc3RhcnQ6dW5zZXQ7bWFyZ2luLWlubGluZS1zdGFydDp1bnNldDtwYWRkaW5nLWJsb2NrOjRweDt3aWR0aDo0OHB4fS5pbmZvLWJ1dHRvbi50YXAtYXJlYS1leHBhbmRlZCAudGFwLWFyZWF7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0uaW5mby1idXR0b24udGFwLWFyZWEtZXhwYW5kZWQgLmluZm8taWNvbi1jb250YWluZXJ7aGVpZ2h0OjM0cHg7d2lkdGg6MzRweH0uaW5mby1idXR0b24udGFwLWFyZWEtZXhwYW5kZWQgLmluZm8taWNvbi1jb250YWluZXIgc3Zne3dpZHRoOjE4cHh9LmluZm8taWNvbi1jb250YWluZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoyNHB4O3otaW5kZXg6MX0uaW5mby1pY29uLWNvbnRhaW5lciBzdmd7d2lkdGg6MTVweDt6LWluZGV4OjF9LmluZm8taWNvbi1jb250YWluZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1nbXAtaW50ZXJuYWwtYXR0cmlidXRpb24tY29sb3IsbGlnaHQtZGFyaygjNWU1ZTVlLCNmZmYpKSA4JSx0cmFuc3BhcmVudCl9LmluZm8tYnV0dG9uOmZvY3VzLXZpc2libGUgLmluZm8taWNvbi1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1nbXAtaW50ZXJuYWwtYXR0cmlidXRpb24tY29sb3IsbGlnaHQtZGFyaygjNWU1ZTVlLCNmZmYpKSAxMCUsdHJhbnNwYXJlbnQpfSJdKTt2YXIgUHQ9Y2xhc3MgZXh0ZW5kcyBfLmR0e3RpKCl7cmV0dXJuKDAsXy5XcSlgPGJ1dHRvbgogICAgICB0eXBlPSJidXR0b24iCiAgICAgIHRpdGxlPSIkeyJCYWNrIn0iCiAgICAgIGFyaWEtbGFiZWw9IiR7IkJhY2sifSIKICAgICAgPiR7Xy5zamEoKX08L2J1dHRvbgogICAgPmB9Zm9jdXMoYSl7dGhpcy5SSy5mb2N1cyhhKX19O1B0LnN0eWxlcz1fLiRzKFsiOmhvc3QgYnV0dG9uey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y29sb3I6bGlnaHQtZGFyaygjMWYxZjFmLCNlM2UzZTMpO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtvcGFjaXR5Oi42O3BhZGRpbmc6MH06aG9zdCBidXR0b246aG92ZXJ7Y29sb3I6bGlnaHQtZGFyaygjMDAwLCNmZmYpO29wYWNpdHk6MX06aG9zdCBidXR0b246ZGlyKHJ0bCkgc3Zney13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgtMSk7dHJhbnNmb3JtOnNjYWxlWCgtMSl9Il0pOwpfLkQoW18udXEoImJ1dHRvbiIpLF8uRigiZGVzaWduOnR5cGUiLEhUTUxCdXR0b25FbGVtZW50KV0sUHQucHJvdG90eXBlLCJSSyIsdm9pZCAwKTtfLnhvKCJnbXAtaW50ZXJuYWwtYmFjay1idXR0b24iLFB0KTt2YXIgd2phPSgwLF8uR2opYGRpYWxvZy56bERyVS1iYXNpYy1kaWFsb2ctZWxlbWVudDo6YmFja2Ryb3B7YmFja2dyb3VuZC1jb2xvcjojMjAyMTI0fUBzdXBwb3J0cyAoKC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoM3B4KSkgb3IgKGJhY2tkcm9wLWZpbHRlcjpibHVyKDNweCkpKXtkaWFsb2cuemxEclUtYmFzaWMtZGlhbG9nLWVsZW1lbnQ6OmJhY2tkcm9we2JhY2tncm91bmQtY29sb3I6cmdiYSgzMiwzMywzNiwuNyk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigzcHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDNweCl9fWRpYWxvZ1tvcGVuXS56bERyVS1iYXNpYy1kaWFsb2ctZWxlbWVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufWRpYWxvZy56bERyVS1iYXNpYy1kaWFsb2ctZWxlbWVudHtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOnZhcigtLWdtcC1pbnRlcm5hbC1kaWFsb2ctYm9yZGVyLXJhZGl1cywyOHB4KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoyMHB4IDhweCA4cHh9ZGlhbG9nLnpsRHJVLWJhc2ljLWRpYWxvZy1lbGVtZW50IGhlYWRlcnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2dhcDoxNnB4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbi1ib3R0b206MjBweDtwYWRkaW5nOjAgMTZweH1kaWFsb2cuemxEclUtYmFzaWMtZGlhbG9nLWVsZW1lbnQgaGVhZGVyIGgye2ZvbnQtZmFtaWx5Okdvb2dsZSBTYW5zLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjI4cHg7Zm9udC1zaXplOjIycHg7bGV0dGVyLXNwYWNpbmc6MDtmb250LXdlaWdodDo0MDA7Y29sb3I6bGlnaHQtZGFyaygjM2M0MDQzLCNlOGVhZWQpO2ZsZXg6MTttYXJnaW46MH1kaWFsb2cuemxEclUtYmFzaWMtZGlhbG9nLWVsZW1lbnQgLnVuQVJ1Yi1iYXNpYy1kaWFsb2ctZWxlbWVudC0tY29udGVudHtkaXNwbGF5OmZsZXg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEzcHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjAgMTZweCAxNnB4O292ZXJmbG93OmF1dG99XG5gO3ZhciB4amE9eyJjbG9zZS5zdmciOiJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIweG1sbnMlM0QlMjJodHRwJTNBLy93d3cudzMub3JnLzIwMDAvc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAyNCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTE5JTIwNi40MSUyMDE3LjU5JTIwNSUyMDEyJTIwMTAuNTklMjA2LjQxJTIwNSUyMDUlMjA2LjQxJTIwMTAuNTklMjAxMiUyMDUlMjAxNy41OSUyMDYuNDElMjAxOSUyMDEyJTIwMTMuNDElMjAxNy41OSUyMDE5JTIwMTklMjAxNy41OSUyMDEzLjQxJTIwMTJ6JTIyLyUzRSUzQ3BhdGglMjBmaWxsJTNEJTIybm9uZSUyMiUyMGQlM0QlMjJNMCUyMDBoMjR2MjRIMHolMjIvJTNFJTNDL3N2ZyUzRSJ9O3ZhciB5amE9KDAsXy5HailgLmdtLXVpLWhvdmVyLWVmZmVjdHtvcGFjaXR5Oi42fS5nbS11aS1ob3Zlci1lZmZlY3Q6aG92ZXJ7b3BhY2l0eToxfS5nbS11aS1ob3Zlci1lZmZlY3RcdTAwM2VzcGFue2JhY2tncm91bmQtY29sb3I6bGlnaHQtZGFyaygjMDAwLCNmZmYpfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpLChwcmVmZXJzLWNvbnRyYXN0Om1vcmUpey5nbS11aS1ob3Zlci1lZmZlY3RcdTAwM2VzcGFue2JhY2tncm91bmQtY29sb3I6QnV0dG9uVGV4dH19c2VudGluZWx7fVxuYDt2YXIgVHQ7Xy5RdD0oYSx7cm9vdDpiPWRvY3VtZW50LmhlYWQsSno6Y309e30pPT57YyYmKGE9YS5yZXBsYWNlKC8oXFcpbGVmdChcVykvZywiJDFgJDIiKS5yZXBsYWNlKC8oXFcpcmlnaHQoXFcpL2csIiQxbGVmdCQyIikucmVwbGFjZSgvKFxXKWAoXFcpL2csIiQxcmlnaHQkMiIpKTtjPV8ub2NhKCJTVFlMRSIpO2MuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYSkpOyhhPUphYSgic3R5bGUiLGRvY3VtZW50KSkmJmMuc2V0QXR0cmlidXRlKCJub25jZSIsYSk7Yi5pbnNlcnRCZWZvcmUoYyxiLmZpcnN0Q2hpbGQpO3JldHVybiBjfTtfLlJ0PShhLGI9e30pPT57YT1fLkJqKGEpO18uUXQoYSxiKX07Xy5TdD0oYSxiLGM9ITEpPT57Yj1iLmdldFJvb3ROb2RlP2IuZ2V0Um9vdE5vZGUoKTpkb2N1bWVudDtiPWIuaGVhZHx8Yjt2YXIgZD1fLnpqYShiKTtkLmhhcyhhKXx8KGQuYWRkKGEpLF8uUnQoYSx7cm9vdDpiLEp6OmN9KSl9O1R0PW5ldyBXZWFrTWFwOwpfLnpqYT1hPT57VHQuaGFzKGEpfHxUdC5zZXQoYSxuZXcgV2Vha1NldCk7cmV0dXJuIFR0LmdldChhKX07Xy5BamE9UmVnRXhwKCJbXHUwNTkxLVx1MDZlZlx1MDZmYS1cdTA4ZmZcdTIwMGZcdWQ4MDItXHVkODAzXHVkODNhLVx1ZDgzYlx1ZmIxZC1cdWZkZmZcdWZlNzAtXHVmZWZjXSIpO18uQmphPVJlZ0V4cCgiW0EtWmEtelx1MDBjMC1cdTAwZDZcdTAwZDgtXHUwMGY2XHUwMGY4LVx1MDJiOFx1MDMwMC1cdTA1OTBcdTA5MDAtXHUxZmZmXHUyMDBlXHUyYzAwLVx1ZDgwMVx1ZDgwNC1cdWQ4MzlcdWQ4M2MtXHVkYmZmXHVmOTAwLVx1ZmIxY1x1ZmUwMC1cdWZlNmZcdWZlZmQtXHVmZmZmXSIpO18uQ2phPVJlZ0V4cCgiXlteQS1aYS16XHUwMGMwLVx1MDBkNlx1MDBkOC1cdTAwZjZcdTAwZjgtXHUwMmI4XHUwMzAwLVx1MDU5MFx1MDkwMC1cdTFmZmZcdTIwMGVcdTJjMDAtXHVkODAxXHVkODA0LVx1ZDgzOVx1ZDgzYy1cdWRiZmZcdWY5MDAtXHVmYjFjXHVmZTAwLVx1ZmU2Zlx1ZmVmZC1cdWZmZmZdKltcdTA1OTEtXHUwNmVmXHUwNmZhLVx1MDhmZlx1MjAwZlx1ZDgwMi1cdWQ4MDNcdWQ4M2EtXHVkODNiXHVmYjFkLVx1ZmRmZlx1ZmU3MC1cdWZlZmNdIik7Cl8uRWphPVJlZ0V4cCgiW0EtWmEtelx1MDBjMC1cdTAwZDZcdTAwZDgtXHUwMGY2XHUwMGY4LVx1MDJiOFx1MDMwMC1cdTA1OTBcdTA5MDAtXHUxZmZmXHUyMDBlXHUyYzAwLVx1ZDgwMVx1ZDgwNC1cdWQ4MzlcdWQ4M2MtXHVkYmZmXHVmOTAwLVx1ZmIxY1x1ZmUwMC1cdWZlNmZcdWZlZmQtXHVmZmZmXVteXHUwNTkxLVx1MDZlZlx1MDZmYS1cdTA4ZmZcdTIwMGZcdWQ4MDItXHVkODAzXHVkODNhLVx1ZDgzYlx1ZmIxZC1cdWZkZmZcdWZlNzAtXHVmZWZjXSokIik7Xy5GamE9UmVnRXhwKCJbXHUwNTkxLVx1MDZlZlx1MDZmYS1cdTA4ZmZcdTIwMGZcdWQ4MDItXHVkODAzXHVkODNhLVx1ZDgzYlx1ZmIxZC1cdWZkZmZcdWZlNzAtXHVmZWZjXVteQS1aYS16XHUwMGMwLVx1MDBkNlx1MDBkOC1cdTAwZjZcdTAwZjgtXHUwMmI4XHUwMzAwLVx1MDU5MFx1MDkwMC1cdTFmZmZcdTIwMGVcdTJjMDAtXHVkODAxXHVkODA0LVx1ZDgzOVx1ZDgzYy1cdWRiZmZcdWY5MDAtXHVmYjFjXHVmZTAwLVx1ZmU2Zlx1ZmVmZC1cdWZmZmZdKiQiKTt2YXIgR2phLEhqYSxJamE7R2phPW5ldyBfLmJvKDEyLDEyKTtIamE9bmV3IF8uZ28oMTMsMTMpO0lqYT1uZXcgXy5ibygwLDApOwpfLlVxPWNsYXNzIGV4dGVuZHMgXy5HdHtjb25zdHJ1Y3RvcihhKXt2YXIgYj1RbSgiQ2xvc2VCdXR0b25WaWV3IiwiZWxlbWVudCIsKCk9Pl8uTW0oXy5FbShIVE1MQnV0dG9uRWxlbWVudCwiSFRNTEJ1dHRvbkVsZW1lbnQiKSkoYS5lbGVtZW50KXx8Xy5ScShhLmxhYmVsfHwiQ2xvc2UiKSk7YT17Li4uYSxlbGVtZW50OmJ9O3N1cGVyKGEpO3RoaXMuWnM9YS5ac3x8R2phO3RoaXMuSXU9YS5JdXx8SGphO3RoaXMubGFiZWw9YS5sYWJlbHx8IkNsb3NlIjt0aGlzLm93bmVyRWxlbWVudD1hLm93bmVyRWxlbWVudDt0aGlzLmxGPWEubEZ8fCExO3RoaXMub2Zmc2V0PWEub2Zmc2V0fHxJamE7YS5sRnx8KHRoaXMuZWxlbWVudC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLHRoaXMuZWxlbWVudC5zdHlsZS50b3A9Xy5wbSh0aGlzLm9mZnNldC55KSx0aGlzLmVsZW1lbnQuc3R5bGUucmlnaHQ9Xy5wbSh0aGlzLm9mZnNldC54KSk7Yj1uZXcgXy5nbyh0aGlzLkl1LndpZHRoKzIqdGhpcy5acy54LAp0aGlzLkl1LmhlaWdodCsyKnRoaXMuWnMueSk7Xy5RcCh0aGlzLmVsZW1lbnQsYik7Xy5TdCh5amEsdGhpcy5vd25lckVsZW1lbnQpO3RoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJnbS11aS1ob3Zlci1lZmZlY3QiKTtiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtiLnN0eWxlLnNldFByb3BlcnR5KCJtYXNrLWltYWdlIixgdXJsKCIke3hqYVsiY2xvc2Uuc3ZnIl19IilgKTtiLnN0eWxlLnBvaW50ZXJFdmVudHM9Im5vbmUiO2Iuc3R5bGUuZGlzcGxheT0iYmxvY2siO18uUXAoYix0aGlzLkl1KTtiLnN0eWxlLm1hcmdpbj1gJHt0aGlzLlpzLnl9cHggJHt0aGlzLlpzLnh9cHhgO3RoaXMuZWxlbWVudC5hcHBlbmRDaGlsZChiKTt0aGlzLnhpKGEsXy5VcSwiQ2xvc2VCdXR0b25WaWV3Iil9fTt2YXIgS2ZhPW5ldyBTZXQ7S2ZhLmFkZCgiZ20tc3R5bGUtaXctYSIpO18uWXE9Y2xhc3MgZXh0ZW5kcyBIVE1MRWxlbWVudHtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMub3B0aW9ucz1hO3RoaXMuc2g9ITE7dGhpcy5iaj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaWFsb2ciKTt0aGlzLnJoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWRlciIpO3RoaXMucWg9bmV3IFB0O3RoaXMuYmouYWRkRXZlbnRMaXN0ZW5lcigiY2xvc2UiLCgpPT57dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiY2xvc2UiKSk7dGhpcy5xaC5yZW1vdmUoKX0pO3RoaXMuYmouYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGI9PntpZihiLnRhcmdldD09PXRoaXMuYmope2xldCBjPXRoaXMuYmouZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7Yy50b3A8PWIuY2xpZW50WSYmYi5jbGllbnRZPD1jLmJvdHRvbSYmYy5sZWZ0PD1iLmNsaWVudFgmJmIuY2xpZW50WDw9Yy5yaWdodHx8dGhpcy5jbG9zZSgpfX0pO3RoaXMucWguYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT4Ke3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImdtcC1pbnRlcm5hbC1iYWNrIix7YnViYmxlczohMCxjb21wb3NlZDohMH0pKTt0aGlzLnFoLnJlbW92ZSgpfSk7dGhpcy5hZGRFdmVudExpc3RlbmVyKCJnbXAtaW50ZXJuYWwtbmV4dCIsYj0+e2Iuc3RvcFByb3BhZ2F0aW9uKCk7TGZhKHRoaXMpfSl9Y29ubmVjdGVkQ2FsbGJhY2soKXtpZighdGhpcy5zaCl7dGhpcy5iai5hcmlhTGFiZWw9dGhpcy5vcHRpb25zLnRpdGxlO3RoaXMuYmouYXBwZW5kKE1mYSh0aGlzKSk7dmFyIGE9dGhpcy5iaixiPWEuYXBwZW5kO2xldCBjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO18uVHEoYywiYmFzaWMtZGlhbG9nLWVsZW1lbnQtLWNvbnRlbnQiKTtjLmFwcGVuZENoaWxkKHRoaXMub3B0aW9ucy5jb250ZW50KTtiLmNhbGwoYSxjKTt0aGlzLmFwcGVuZCh0aGlzLmJqKTtfLlRxKHRoaXMuYmosImJhc2ljLWRpYWxvZy1lbGVtZW50Iik7Xy5TdCh3amEsdGhpcyk7dGhpcy5zaD0hMH19Y2xvc2UoKXt0aGlzLmJqLmNsb3NlKCl9fTsKXy54bygiZ21wLWludGVybmFsLWRpYWxvZyIsXy5ZcSk7dmFyIEpqYT1fLiRzKFsiLmRpc2Nsb3N1cmUtY29udGFpbmVye2ZvbnQtc2l6ZToxNnB4fS5zbG90LWNvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7LW1vei1ib3gtZmxleDoxOy1tcy1mbGV4OjE7ZmxleDoxO2dhcDp2YXIoLS1nbXAtbWF0LXNwYWNpbmctbWVkaXVtLDEycHgpfS5jb250ZW50LC5zbG90LWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNvbnRlbnR7Y29sb3I6dmFyKC0tZ21wLW1hdC1jb2xvci1vbi1zdXJmYWNlLGxpZ2h0LWRhcmsoIzFmMWYxZiwjZTNlM2UzKSl9LmNvbnRlbnQgLmRlc2NyaXB0aW9ue2ZvbnQ6dmFyKC0tZ21wLW1hdC1mb250LWJvZHktbWVkaXVtLG5vcm1hbCA0MDAgLjg3NWVtLzEuNDI4NTcxNDI4NiB2YXIoLS1nbXAtbWF0LWZvbnQtZmFtaWx5LEdvb2dsZSBTYW5zIFRleHQsc2Fucy1zZXJpZikpO2xldHRlci1zcGFjaW5nOi4wMDcxNDI4NTcxZW07bWFyZ2luLXRvcDp2YXIoLS1nbXAtbWF0LXNwYWNpbmctc21hbGwsOHB4KX0uY29udGVudCAuaGVhZGluZ3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7Zm9udDp2YXIoLS1nbXAtbWF0LWZvbnQtaGVhZGxpbmUtbWVkaXVtLG5vcm1hbCA1MDAgMS4xMjVlbS8xLjMzMzMzMzMzMzMgdmFyKC0tZ21wLW1hdC1mb250LWZhbWlseSxHb29nbGUgU2FucyBUZXh0LHNhbnMtc2VyaWYpKTtsZXR0ZXItc3BhY2luZzowOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uY29udGVudCAuaGVhZGluZyBzcGFuey13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTstbW96LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjF9LmNvbnRlbnQgLmhlYWRpbmc6ZGlyKHJ0bCkgc3Zney13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgtMSk7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LmNvbnRlbnQgLmhlYWRpbmcgc3ZnIHBhdGh7ZmlsbDp2YXIoLS1nbXAtbWF0LWNvbG9yLW9uLXN1cmZhY2UsbGlnaHQtZGFyaygjMWYxZjFmLCNlM2UzZTMpKX0uY29udGVudCAubGluay1pdGVte2ZvbnQ6dmFyKC0tZ21wLW1hdC1mb250LWxhYmVsLWxhcmdlLG5vcm1hbCA1MDAgLjg3NWVtLzEuNDI4NTcxNDI4NiB2YXIoLS1nbXAtbWF0LWZvbnQtZmFtaWx5LEdvb2dsZSBTYW5zIFRleHQsc2Fucy1zZXJpZikpO2xldHRlci1zcGFjaW5nOi4wMDcxNDI4NTcxZW07cGFkZGluZzp2YXIoLS1nbXAtbWF0LXNwYWNpbmctZXh0cmEtc21hbGwsNHB4KSAwO3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudH0uY29udGVudCAubGluay1pdGVtIGF7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWdtcC1tYXQtY29sb3ItcHJpbWFyeSxsaWdodC1kYXJrKCMwMDdiOGIsIzU4YjljYSkpO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtnYXA6dmFyKC0tZ21wLW1hdC1zcGFjaW5nLWV4dHJhLXNtYWxsLDRweCk7cGFkZGluZy1ibG9jazoxMHB4O3BhZGRpbmctaW5saW5lOjAgMTJweDt0ZXh0LWRlY29yYXRpb246bm9uZX0uY29udGVudCAubGluay1pdGVtIGEgLmljb24tY29udGFpbmVye2hlaWdodDoxZW07d2lkdGg6MWVtfS5jb250ZW50IC5saW5rLWl0ZW0gYSAuaWNvbi1jb250YWluZXIgc3ZnIHBhdGh7ZmlsbDp2YXIoLS1nbXAtbWF0LWNvbG9yLXByaW1hcnksbGlnaHQtZGFyaygjMDA3YjhiLCM1OGI5Y2EpKX0uY29udGVudCAubGlua3N7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2dhcDp2YXIoLS1nbXAtbWF0LXNwYWNpbmctc21hbGwsOHB4KX0uY29udGVudC5uby1saW5rc3ttYXJnaW4tYm90dG9tOnZhcigtLWdtcC1tYXQtc3BhY2luZy1zbWFsbCw4cHgpfSJdKTt2YXIgVXQ9YT0+KC4uLmIpPT4oe18kbGl0RGlyZWN0aXZlJDphLHZhbHVlczpifSksVnQ9Y2xhc3N7Z2V0IHlyKCl7cmV0dXJuIHRoaXMucWgueXJ9ZkwoYSxiLGMpe3RoaXMud2g9YTt0aGlzLnFoPWI7dGhpcy50aD1jfWdMKGEsYil7cmV0dXJuIHRoaXMudXBkYXRlKGEsYil9dXBkYXRlKGEsYil7cmV0dXJuIHRoaXMudGkoLi4uYil9fTsvKgoKIENvcHlyaWdodCAyMDE4IEdvb2dsZSBMTEMKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKi8KXy5hcj1VdChjbGFzcyBleHRlbmRzIFZ0e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7aWYoYS50eXBlIT09MXx8YS5uYW1lIT09ImNsYXNzInx8YS53bD8ubGVuZ3RoPjIpdGhyb3cgRXJyb3IoImBjbGFzc01hcCgpYCBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBgY2xhc3NgIGF0dHJpYnV0ZSBhbmQgbXVzdCBiZSB0aGUgb25seSBwYXJ0IGluIHRoZSBhdHRyaWJ1dGUuIik7fXRpKGEpe3JldHVybiIgIitPYmplY3Qua2V5cyhhKS5maWx0ZXIoYj0+YVtiXSkuam9pbigiICIpKyIgIn11cGRhdGUoYSxbYl0pe2lmKHRoaXMucmg9PT12b2lkIDApe3RoaXMucmg9bmV3IFNldDthLndsIT09dm9pZCAwJiYodGhpcy5zaD1uZXcgU2V0KGEud2wuam9pbigiICIpLnNwbGl0KC9ccy8pLmZpbHRlcihkPT5kIT09IiIpKSk7Zm9yKGxldCBkIGluIGIpYltkXSYmIXRoaXMuc2g/LmhhcyhkKSYmdGhpcy5yaC5hZGQoZCk7cmV0dXJuIHRoaXMudGkoYil9YT1hLmVsZW1lbnQuY2xhc3NMaXN0O2Zvcih2YXIgYyBvZiB0aGlzLnJoKWMgaW4KYnx8KGEucmVtb3ZlKGMpLHRoaXMucmguZGVsZXRlKGMpKTtmb3IobGV0IGQgaW4gYiljPSEhYltkXSxjPT09dGhpcy5yaC5oYXMoZCl8fHRoaXMuc2g/LmhhcyhkKXx8KGM/KGEuYWRkKGQpLHRoaXMucmguYWRkKGQpKTooYS5yZW1vdmUoZCksdGhpcy5yaC5kZWxldGUoZCkpKTtyZXR1cm4gJG99fSk7Xy5XdD1jbGFzcyBleHRlbmRzIF8uZHR7dGkoKXtyZXR1cm4oMCxfLldxKWAKICAgICAgPGRpdiBjbGFzcz0iZGlzY2xvc3VyZS1jb250YWluZXIiIGlkPSJub3RlIiByb2xlPSJub3RlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzbG90LWNvbnRhaW5lciI+CiAgICAgICAgICA8c2xvdD48L3Nsb3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH19O18uV3Quc3R5bGVzPUpqYTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsU3RyaW5nKV0sXy5XdC5wcm90b3R5cGUsImhlYWRpbmciLHZvaWQgMCk7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLFN0cmluZyldLF8uV3QucHJvdG90eXBlLCJkZXNjcmlwdGlvbiIsdm9pZCAwKTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsU3RyaW5nKV0sXy5XdC5wcm90b3R5cGUsImhyZWYiLHZvaWQgMCk7Xy5YdD1jbGFzcyBleHRlbmRzIF8uZHR7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpO3RoaXMubGlua3M9W107dGhpcy5zaG93QWNjZXNzb3J5SWNvbj0hMX10aSgpe3ZhciBhPU5mYSh0aGlzKSxiPSgwLF8uYXIpKHtjb250ZW50OiEwLCJuby1saW5rcyI6IWF9KTtyZXR1cm4oMCxfLldxKWAKICAgICAgPGRpdiBjbGFzcz0ke2J9PgogICAgICAgICR7dGhpcy5oZWFkaW5nPygwLF8uV3EpYCA8ZGl2IGNsYXNzPSJoZWFkaW5nIj4KICAgICAgICAgICAgICA8c3Bhbj4ke3RoaXMuaGVhZGluZ308L3NwYW4+CiAgICAgICAgICAgICAgJHt0aGlzLnNob3dBY2Nlc3NvcnlJY29uPygwLF8uV3EpYCR7KDAsXy5XcSlgPHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9ImN1cnJlbnRDb2xvciIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiPjxwYXRoIGQ9Ik00MDAtMjgwdi00MDBsMjAwIDIwMHoiLz48L3N2Zz5gfWA6IiJ9CiAgICAgICAgICAgIDwvZGl2PmA6IiJ9CiAgICAgICAgJHt0aGlzLmRlc2NyaXB0aW9uPygwLF8uV3EpYDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIgogICAgICAgICAgICAgID48c3Bhbj4ke3RoaXMuZGVzY3JpcHRpb259PC9zcGFuPjwvZGl2CiAgICAgICAgICAgID5gOiIifQogICAgICAgICR7YT8oMCxfLldxKWA8ZGl2IGNsYXNzPSJsaW5rcyI+JHthfTwvZGl2PmA6IiJ9CiAgICAgICAgPHNsb3Q+PC9zbG90PgogICAgICA8L2Rpdj4KICAgIGB9fTtfLlh0LnN0eWxlcz1KamE7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLFN0cmluZyldLF8uWHQucHJvdG90eXBlLCJoZWFkaW5nIix2b2lkIDApO18uRChbXy50cSh7S2g6ITF9KSxfLkYoImRlc2lnbjp0eXBlIixTdHJpbmcpXSxfLlh0LnByb3RvdHlwZSwiZGVzY3JpcHRpb24iLHZvaWQgMCk7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLEFycmF5KV0sXy5YdC5wcm90b3R5cGUsImxpbmtzIix2b2lkIDApO18uRChbXy50cSh7S2g6ITF9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpXSxfLlh0LnByb3RvdHlwZSwic2hvd0FjY2Vzc29yeUljb24iLHZvaWQgMCk7Xy54bygiZ21wLWludGVybmFsLWRpc2Nsb3N1cmUiLF8uV3QpO18ueG8oImdtcC1pbnRlcm5hbC1kaXNjbG9zdXJlLXNlY3Rpb24iLF8uWHQpO18uS2phPSgwLF8uV3EpYAogIDxnbXAtaW50ZXJuYWwtZGlzY2xvc3VyZS1zZWN0aW9uCiAgICAuaGVhZGluZz0keyJHb29nbGUgTWFwcyBUZXJtcyJ9CiAgICAubGlua3M9JHtbe3RleHQ6IlRlcm1zIixocmVmOiJodHRwczovL3d3dy5nb29nbGUuY29tL2hlbHAvdGVybXNfbWFwcy8ifSx7dGV4dDoiUHJpdmFjeSIsaHJlZjoiaHR0cHM6Ly9wb2xpY2llcy5nb29nbGUuY29tL3ByaXZhY3kifV19PgogIDwvZ21wLWludGVybmFsLWRpc2Nsb3N1cmUtc2VjdGlvbj4KYDtfLll0PVV0KGNsYXNzIGV4dGVuZHMgVnR7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTtpZihhLnR5cGUhPT0xfHxhLm5hbWUhPT0ic3R5bGUifHxhLndsPy5sZW5ndGg+Mil0aHJvdyBFcnJvcigiVGhlIGBzdHlsZU1hcGAgZGlyZWN0aXZlIG11c3QgYmUgdXNlZCBpbiB0aGUgYHN0eWxlYCBhdHRyaWJ1dGUgYW5kIG11c3QgYmUgdGhlIG9ubHkgcGFydCBpbiB0aGUgYXR0cmlidXRlLiIpO310aShhKXtyZXR1cm4gT2JqZWN0LmtleXMoYSkucmVkdWNlKChiLGMpPT57dmFyIGQ9YVtjXTtpZihkPT1udWxsKXJldHVybiBiO2M9Yy5pbmNsdWRlcygiLSIpP2M6Yy5yZXBsYWNlKC8oPzpeKHdlYmtpdHxtb3p8bXN8byl8KSg/PVtBLVpdKS9nLCItJCYiKS50b0xvd2VyQ2FzZSgpO3JldHVybiBiK2Ake2N9OiR7ZH07YH0sIiIpfXVwZGF0ZShhLFtiXSl7YT1hLmVsZW1lbnQuc3R5bGU7dGhpcy5yaD09PXZvaWQgMCYmKHRoaXMucmg9bmV3IFNldCk7Zm9yKHZhciBjIG9mIHRoaXMucmgpYltjXT09Cm51bGwmJih0aGlzLnJoLmRlbGV0ZShjKSxjLmluY2x1ZGVzKCItIik/YS5yZW1vdmVQcm9wZXJ0eShjKTphW2NdPW51bGwpO2ZvcihsZXQgZCBpbiBiKWlmKGM9YltkXSxjIT1udWxsKXt0aGlzLnJoLmFkZChkKTtsZXQgZT10eXBlb2YgYz09PSJzdHJpbmciJiZjLmVuZHNXaXRoKCIgIWltcG9ydGFudCIpO2QuaW5jbHVkZXMoIi0iKXx8ZT9hLnNldFByb3BlcnR5KGQsZT9jLnNsaWNlKDAsLTExKTpjLGU/ImltcG9ydGFudCI6IiIpOmFbZF09Y31yZXR1cm4gJG99fSk7Xy5adD1jbGFzcyBleHRlbmRzIF8uZHR7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMuYXR0cmlidXRpb25UeXBlPSJMT0dPIjt0aGlzLmluZm9CdXR0b25UYXBBcmVhRXhwYW5kZWQ9ITE7dGhpcy5sb2dvQ29sb3JPcHRpb25zPXtKeToiIzVlNWU1ZSIsS3g6IiNmZmYifTt0aGlzLnNob3dUZXJtc09mU2VydmljZT10aGlzLnNob3dJbmZvQnV0dG9uPSEwO3RoaXMuZGlzY2xvc3VyZUNvbnRlbnQ9W107dGhpcy5hdHRyaWJ1dGlvblRleHQ9Ikdvb2dsZSBNYXBzIjt0aGlzLmF0dHJpYnV0aW9uRm9udD0iQk9EWV9TTUFMTCI7dGhpcy5tb3JlSW5mb0J1dHRvblRpdGxlPSJBYm91dCBHb29nbGUgTWFwcyBjb250ZW50Ijt0aGlzLmxvZ29MaW5rT3B0aW9ucz12b2lkIDA7dGhpcy5yaD1uZXcgXy5XdDt0aGlzLnFoPU9mYSh0aGlzKTtfLkhsKCJ1dGlsIikudGhlbihhPT57YS5BcigpfSl9aG0oYSl7aWYoYS5oYXMoInNob3dUZXJtc09mU2VydmljZSIpfHxhLmhhcygiZGlzY2xvc3VyZUNvbnRlbnQiKSlhPQpbLi4udGhpcy5kaXNjbG9zdXJlQ29udGVudF0sdGhpcy5zaG93VGVybXNPZlNlcnZpY2UmJmEucHVzaChfLktqYSksXy5YcygoMCxfLldxKWAke2F9YCx0aGlzLnJoKX10aSgpe3ZhciBhPXRoaXMubG9nb0NvbG9yT3B0aW9ucy5KeXx8IiM1ZTVlNWUiLGI9dGhpcy5sb2dvQ29sb3JPcHRpb25zLkt4fHwiI2ZmZiIsYz1acShhKSxkPVpxKGIpLGU9dGhpcy5hdHRyaWJ1dGlvblRleHQhPT0iR29vZ2xlIE1hcHMiP3t9OnsiLS1nbXAtaW50ZXJuYWwtYXR0cmlidXRpb24tY29sb3IiOmBsaWdodC1kYXJrKCR7dGhpcy5sb2dvQ29sb3JPcHRpb25zLkp5fHwiIzVlNWU1ZSJ9LCAke3RoaXMubG9nb0NvbG9yT3B0aW9ucy5LeHx8IiNmZmYifSlgfTtzd2l0Y2godGhpcy5hdHRyaWJ1dGlvblR5cGUpe2Nhc2UgIkxPR08iOmE9dGphKHtjbGFzc05hbWU6ImF0dHJpYnV0aW9uX19sb2dvLS1kZWZhdWx0IixmaWxsOmBsaWdodC1kYXJrKCR7YX0sICR7Yn0pYH0pO2JyZWFrO2Nhc2UgIkxPR09fT1VUTElORSI6YT0KdWphKHtjbGFzc05hbWU6ImF0dHJpYnV0aW9uX19sb2dvLS1vdXRsaW5lIixmaWxsOmBsaWdodC1kYXJrKCR7YX0sICR7Yn0pYCxvdXRsaW5lOmBsaWdodC1kYXJrKCR7Y30sICR7ZH0pYH0pO2JyZWFrO2RlZmF1bHQ6YT0oMCxfLldxKWAgPHNwYW4KICAgICAgICAgIHRyYW5zbGF0ZT0ibm8iCiAgICAgICAgICBjbGFzcz0iJHsoMCxfLmFyKSh7ImF0dHJpYnV0aW9uLXRleHQiOiEwLCJmb250LS1ib2R5LXNtYWxsIjp0aGlzLmF0dHJpYnV0aW9uRm9udD09PSJCT0RZX1NNQUxMIiwiZm9udC0tYm9keS1tZWRpdW0iOnRoaXMuYXR0cmlidXRpb25Gb250PT09IkJPRFlfTUVESVVNIn0pfSIKICAgICAgICAgIHN0eWxlPSJjb2xvcjogbGlnaHQtZGFyaygke2F9LCAke2J9KSIKICAgICAgICAgID4ke3RoaXMuYXR0cmlidXRpb25UZXh0fTwvc3BhbgogICAgICAgID5gfXRoaXMubG9nb0xpbmtPcHRpb25zJiYoYT0oMCxfLldxKWAgPGEKICAgICAgICBhcmlhLWxhYmVsPSIke18uUXEodGhpcy5sb2dvTGlua09wdGlvbnMudGl0bGUpfSIKICAgICAgICBocmVmPSIke3RoaXMubG9nb0xpbmtPcHRpb25zLnVybC5ocmVmfSIKICAgICAgICByZWw9Im5vb3BlbmVyIgogICAgICAgIHRhcmdldD0iX2JsYW5rIgogICAgICAgIHRpdGxlPSIke18uUXEodGhpcy5sb2dvTGlua09wdGlvbnMudGl0bGUpfSI+CiAgICAgICAgJHthfQogICAgICA8L2E+YCk7Yj1RZmEodGhpcyx0aGlzLnFoKTtyZXR1cm4oMCxfLldxKWA8ZGl2IGNsYXNzPSJjb250YWluZXIiIHN0eWxlPSR7KDAsXy5ZdCkoZSl9PgogICAgICAgICR7YX0ke2J9IDwvZGl2CiAgICAgID4ke3RoaXMucWh9YH19O18uWnQuc3R5bGVzPXZqYTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsU3RyaW5nKV0sXy5adC5wcm90b3R5cGUsImF0dHJpYnV0aW9uVHlwZSIsdm9pZCAwKTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsT2JqZWN0KV0sXy5adC5wcm90b3R5cGUsImluZm9CdXR0b25UYXBBcmVhRXhwYW5kZWQiLHZvaWQgMCk7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLE9iamVjdCldLF8uWnQucHJvdG90eXBlLCJsb2dvQ29sb3JPcHRpb25zIix2b2lkIDApO18uRChbXy50cSh7S2g6ITF9KSxfLkYoImRlc2lnbjp0eXBlIixPYmplY3QpXSxfLlp0LnByb3RvdHlwZSwic2hvd0luZm9CdXR0b24iLHZvaWQgMCk7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLE9iamVjdCldLF8uWnQucHJvdG90eXBlLCJzaG93VGVybXNPZlNlcnZpY2UiLHZvaWQgMCk7Cl8uRChbXy50cSh7S2g6ITF9KSxfLkYoImRlc2lnbjp0eXBlIixBcnJheSldLF8uWnQucHJvdG90eXBlLCJkaXNjbG9zdXJlQ29udGVudCIsdm9pZCAwKTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsT2JqZWN0KV0sXy5adC5wcm90b3R5cGUsImF0dHJpYnV0aW9uVGV4dCIsdm9pZCAwKTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsT2JqZWN0KV0sXy5adC5wcm90b3R5cGUsImF0dHJpYnV0aW9uRm9udCIsdm9pZCAwKTtfLkQoW18udHEoe0toOiExfSksXy5GKCJkZXNpZ246dHlwZSIsU3RyaW5nKV0sXy5adC5wcm90b3R5cGUsIm1vcmVJbmZvQnV0dG9uVGl0bGUiLHZvaWQgMCk7Xy5EKFtfLnRxKHtLaDohMX0pLF8uRigiZGVzaWduOnR5cGUiLE9iamVjdCldLF8uWnQucHJvdG90eXBlLCJsb2dvTGlua09wdGlvbnMiLHZvaWQgMCk7Xy54bygiZ21wLWludGVybmFsLWF0dHJpYnV0aW9uIixfLlp0KTt2YXIgTGphPWNsYXNze2NvbnN0cnVjdG9yKGE9e30pe3RoaXMuaGVhZGVycz17WyJYLUdvb2ctQXBpLUtleSJdOl8uSmw/LnRoKCl8fCIiLFsiQ29udGVudC1UeXBlIl06ImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiLFsiWC1Hb29nLU1hcHMtQ2hhbm5lbC1JZCJdOl8uSmw/LnloKCl8fCIiLC4uLmF9fX07dmFyIE1qYT1jbGFzcyBleHRlbmRzIExqYXtjb25zdHJ1Y3Rvcigpe3N1cGVyKHt9KX1pbnRlcmNlcHQoYSxiKXtWZmEodGhpcyxhKTtyZXR1cm4gYihhKX19O18uJHQ9Y2xhc3MgZXh0ZW5kcyBMamF7Y29uc3RydWN0b3IoYT17fSl7c3VwZXIoYSl9YXN5bmMgaW50ZXJjZXB0KGEsYil7VmZhKHRoaXMsYSk7YXdhaXQgWGZhKGEpO3JldHVybiBiKGEpfX07Xy5hdT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucWg9bmV3ICh0aGlzLnRoKCkpKHRoaXMuc2goKSxudWxsLHt3aXRoQ3JlZGVudGlhbHM6ITEseEY6Xy52bSgiZ0ludGVybmFsTm9Db3JzUHJlZmxpZ2h0Rm9yVGVzdGluZyIpPT09InRydWUiLEhGOnRoaXMucmgoKSx2Rjp0aGlzLndoKCl9KX1yaCgpe3JldHVybltuZXcgXy4kdF19d2goKXtyZXR1cm5bbmV3IE1qYV19fTtfLmJ1PW5ldyBNYXA7Xy5jdT1uZXcgTWFwO18uZHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7LyoKCiBDb3B5cmlnaHQgMjAyMCBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCiovCnZhciBOamE9e307Xy5PamE9VXQoY2xhc3MgZXh0ZW5kcyBWdHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy5rZXk9Xy5Tc310aShhLGIpe3RoaXMua2V5PWE7cmV0dXJuIGJ9dXBkYXRlKGEsW2IsY10pe2IhPT10aGlzLmtleSYmKGEua2s9TmphLHRoaXMua2V5PWIpO3JldHVybiBjfX0pO1N5bWJvbC5mb3IoIiIpO3ZhciBBZmE9YXJndW1lbnRzWzBdLGpnYT1uZXcgXy5LaztfLlVhLmdvb2dsZS5tYXBzLkxvYWQmJl8uVWEuZ29vZ2xlLm1hcHMuTG9hZChpZ2EpO30pLmNhbGwodGhpcyx7fSk7Cgo="}},"time_used":107,"timings":{"blocked":-1,"dns":4,"connect":14,"send":0,"wait":42,"receive":19,"ssl":24},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.648Z","timestamp":1785154589648,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1459,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-27T14:18:32.432843Z","times_seen":144288,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"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":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/www-widgetapi.vflset/www-widgetapi.js","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.151.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:30.138Z","timestamp":1785154590138,"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-widgetapi.vflset/www-widgetapi.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://persimmontrades.com/\r\nCookie: __Secure-YNID=20.YT=QMQPWpcJ5Zym1dBy3VZSNoiYASB9AEElCp17Xfhq-M9qIhZOs5gBQZR0N8RbQV222G4en21q5yIbbSDaiWasrnFQKLA36k_4V6jKppKQxk_ApGeMsy7mpt2TBcdDofU1FLFX66G0APgKRjY_JkEda9qlnLsA0jartN2yjJfKYXqK6lq99Ds5mjsxFb51ezBtJOEoM0ONYo2_EF9blYX_7ittNY3cVQZ2mUIHSrJVZDuEQiECLJy1LTj5QrirgouLLm783tOTo3873w1odO5KhIF3UAxsnT4sI_K-4L2Fp_pPWjbpr0jMrOHk_0Il64LCSFxCHRrC3htHjL_tlsGXAg; YSC=jsHez48xcNY; __Secure-ROLLOUT_TOKEN=CL-QtY20lO-RGRDWitiJ6_KVAxjWitiJ6_KVAw%3D%3D; VISITOR_INFO1_LIVE=eWACQXheRmA; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D\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\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: 8842\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Sat, 25 Jul 2026 20:06:28 GMT\r\nexpires: Sun, 25 Jul 2027 20:06:28 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: 144602\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":26769,"size_decoded":9528,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (570)","md5":"f169a9e94953731cb0dd5faef429318c","sha1":"f45e6b6193cd71c1eb183c51bc65c84a8aeb6719","sha256":"3aeb791f41afb9d7500326010b8852214536360b695c2d0328f4fd265badb21f","sha512":"cd7412530b69607b86d4dff17990a998e2e471f38eda724d55e2886738a75ade824cfdf11e37f976ac63ac431297869dacf364df631987a52e23ef79e5b1ba70","ssdeep":"384:lavCc95Hmr6jQumbwoPtjJTfgX+pnB4yeCzwCzUB1lzh9nYi0PC0nX1IXwK:lrS5U9io1jhfayRSnnYi6FGgK","tlshash":"3dc2e9cd7bb1b471437366b5802f100fb23e58aeb408c698b288d8e16db55690677f7e","first_seen":"2026-06-15T12:26:58.098489Z","last_seen":"2026-07-27T14:22:09.487804Z","times_seen":8761,"resource_available":true,"data":"KGZ1bmN0aW9uKCl7J3VzZSBzdHJpY3QnO3ZhciBuLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe30KYi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9LHA9dHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzPT0iZnVuY3Rpb24iP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihhLGIsYyl7aWYoYT09QXJyYXkucHJvdG90eXBlfHxhPT1PYmplY3QucHJvdG90eXBlKXJldHVybiBhOwphW2JdPWMudmFsdWU7cmV0dXJuIGF9OwpmdW5jdGlvbiBiYShhKXthPVsib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsYSwib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93LCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiwib2JqZWN0Ij09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtmb3IodmFyIGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXTtpZihjJiZjLk1hdGg9PU1hdGgpcmV0dXJuIGN9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTt9CnZhciBxPWJhKHRoaXMpO2Z1bmN0aW9uIHIoYSxiKXtpZihiKWE6e3ZhciBjPXE7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBkPTA7ZDxhLmxlbmd0aC0xO2QrKyl7dmFyIGg9YVtkXTtpZighKGggaW4gYykpYnJlYWsgYTtjPWNbaF19YT1hW2EubGVuZ3RoLTFdO2Q9Y1thXTtiPWIoZCk7YiE9ZCYmYiE9bnVsbCYmcChjLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSl9fQp2YXIgdDtpZih0eXBlb2YgT2JqZWN0LnNldFByb3RvdHlwZU9mPT0iZnVuY3Rpb24iKXQ9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHY7YTp7dmFyIGNhPXthOiEwfSxkYT17fTt0cnl7ZGEuX19wcm90b19fPWNhO3Y9ZGEuYTticmVhayBhfWNhdGNoKGEpe312PSExfXQ9dj9mdW5jdGlvbihhLGIpe2EuX19wcm90b19fPWI7aWYoYS5fX3Byb3RvX18hPT1iKXRocm93IG5ldyBUeXBlRXJyb3IoYSsiIGlzIG5vdCBleHRlbnNpYmxlIik7cmV0dXJuIGF9Om51bGx9dmFyIGVhPXQ7CmZ1bmN0aW9uIGZhKGEpe3ZhciBiPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI8YS5sZW5ndGg/e2RvbmU6ITEsdmFsdWU6YVtiKytdfTp7ZG9uZTohMH19fQpmdW5jdGlvbiB4KGEpe3ZhciBiPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilyZXR1cm57bmV4dDpmYShhKX07dGhyb3cgRXJyb3IoU3RyaW5nKGEpKyIgaXMgbm90IGFuIGl0ZXJhYmxlIG9yIEFycmF5TGlrZSIpO30KcigiU3ltYm9sIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGspe2lmKHRoaXMgaW5zdGFuY2VvZiBiKXRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbCBpcyBub3QgYSBjb25zdHJ1Y3RvciIpO3JldHVybiBuZXcgYyhkKyhrfHwiIikrIl8iK2grKyxrKX0KZnVuY3Rpb24gYyhrLGYpe3RoaXMuZz1rO3AodGhpcywiZGVzY3JpcHRpb24iLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Zn0pfQppZihhKXJldHVybiBhO2MucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ307CnZhciBkPSJqc2NvbXBfc3ltYm9sXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCkrIl8iLGg9MDtyZXR1cm4gYn0pOwpyKCJTeW1ib2wuaXRlcmF0b3IiLGZ1bmN0aW9uKGEpe2lmKGEpcmV0dXJuIGE7YT1TeW1ib2woIlN5bWJvbC5pdGVyYXRvciIpO3AoQXJyYXkucHJvdG90eXBlLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBoYShmYSh0aGlzKSl9fSk7CnJldHVybiBhfSk7CmZ1bmN0aW9uIGhhKGEpe2E9e25leHQ6YX07YVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9OwpyZXR1cm4gYX0KcigiUHJvbWlzZSIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihmKXt0aGlzLmg9MDt0aGlzLmk9dm9pZCAwO3RoaXMuZz1bXTt0aGlzLnY9ITE7dmFyIGU9dGhpcy5qKCk7dHJ5e2YoZS5yZXNvbHZlLGUucmVqZWN0KX1jYXRjaChnKXtlLnJlamVjdChnKX19CmZ1bmN0aW9uIGMoKXt0aGlzLmc9bnVsbH0KZnVuY3Rpb24gZChmKXtyZXR1cm4gZiBpbnN0YW5jZW9mIGI/ZjpuZXcgYihmdW5jdGlvbihlKXtlKGYpfSl9CmlmKGEpcmV0dXJuIGE7Yy5wcm90b3R5cGUuaD1mdW5jdGlvbihmKXtpZih0aGlzLmc9PW51bGwpe3RoaXMuZz1bXTt2YXIgZT10aGlzO3RoaXMuaShmdW5jdGlvbigpe2UubCgpfSl9dGhpcy5nLnB1c2goZil9Owp2YXIgaD1xLnNldFRpbWVvdXQ7Yy5wcm90b3R5cGUuaT1mdW5jdGlvbihmKXtoKGYsMCl9OwpjLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmcmJnRoaXMuZy5sZW5ndGg7KXt2YXIgZj10aGlzLmc7dGhpcy5nPVtdO2Zvcih2YXIgZT0wO2U8Zi5sZW5ndGg7KytlKXt2YXIgZz1mW2VdO2ZbZV09bnVsbDt0cnl7ZygpfWNhdGNoKGwpe3RoaXMuaihsKX19fXRoaXMuZz1udWxsfTsKYy5wcm90b3R5cGUuaj1mdW5jdGlvbihmKXt0aGlzLmkoZnVuY3Rpb24oKXt0aHJvdyBmO30pfTsKYi5wcm90b3R5cGUuaj1mdW5jdGlvbigpe2Z1bmN0aW9uIGYobCl7cmV0dXJuIGZ1bmN0aW9uKG0pe2d8fChnPSEwLGwuY2FsbChlLG0pKX19CnZhciBlPXRoaXMsZz0hMTtyZXR1cm57cmVzb2x2ZTpmKHRoaXMuSykscmVqZWN0OmYodGhpcy5sKX19OwpiLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGYpe2lmKGY9PT10aGlzKXRoaXMubChuZXcgVHlwZUVycm9yKCJBIFByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmIikpO2Vsc2UgaWYoZiBpbnN0YW5jZW9mIGIpdGhpcy5NKGYpO2Vsc2V7YTpzd2l0Y2godHlwZW9mIGYpe2Nhc2UgIm9iamVjdCI6dmFyIGU9ZiE9bnVsbDticmVhayBhO2Nhc2UgImZ1bmN0aW9uIjplPSEwO2JyZWFrIGE7ZGVmYXVsdDplPSExfWU/dGhpcy5KKGYpOnRoaXMubyhmKX19OwpiLnByb3RvdHlwZS5KPWZ1bmN0aW9uKGYpe3ZhciBlPXZvaWQgMDt0cnl7ZT1mLnRoZW59Y2F0Y2goZyl7dGhpcy5sKGcpO3JldHVybn10eXBlb2YgZT09ImZ1bmN0aW9uIj90aGlzLk4oZSxmKTp0aGlzLm8oZil9OwpiLnByb3RvdHlwZS5sPWZ1bmN0aW9uKGYpe3RoaXMuQSgyLGYpfTsKYi5wcm90b3R5cGUubz1mdW5jdGlvbihmKXt0aGlzLkEoMSxmKX07CmIucHJvdG90eXBlLkE9ZnVuY3Rpb24oZixlKXtpZih0aGlzLmghPTApdGhyb3cgRXJyb3IoIkNhbm5vdCBzZXR0bGUoIitmKyIsICIrZSsiKTogUHJvbWlzZSBhbHJlYWR5IHNldHRsZWQgaW4gc3RhdGUiK3RoaXMuaCk7dGhpcy5oPWY7dGhpcy5pPWU7dGhpcy5oPT09MiYmdGhpcy5MKCk7dGhpcy5DKCl9OwpiLnByb3RvdHlwZS5MPWZ1bmN0aW9uKCl7dmFyIGY9dGhpcztoKGZ1bmN0aW9uKCl7aWYoZi5JKCkpe3ZhciBlPXEuY29uc29sZTt0eXBlb2YgZSE9PSJ1bmRlZmluZWQiJiZlLmVycm9yKGYuaSl9fSwxKX07CmIucHJvdG90eXBlLkk9ZnVuY3Rpb24oKXtpZih0aGlzLnYpcmV0dXJuITE7dmFyIGY9cS5DdXN0b21FdmVudCxlPXEuRXZlbnQsZz1xLmRpc3BhdGNoRXZlbnQ7aWYodHlwZW9mIGc9PT0idW5kZWZpbmVkIilyZXR1cm4hMDt0eXBlb2YgZj09PSJmdW5jdGlvbiI/Zj1uZXcgZigidW5oYW5kbGVkcmVqZWN0aW9uIix7Y2FuY2VsYWJsZTohMH0pOnR5cGVvZiBlPT09ImZ1bmN0aW9uIj9mPW5ldyBlKCJ1bmhhbmRsZWRyZWplY3Rpb24iLHtjYW5jZWxhYmxlOiEwfSk6KGY9cS5kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxmLmluaXRDdXN0b21FdmVudCgidW5oYW5kbGVkcmVqZWN0aW9uIiwhMSwhMCxmKSk7Zi5wcm9taXNlPXRoaXM7Zi5yZWFzb249dGhpcy5pO3JldHVybiBnKGYpfTsKYi5wcm90b3R5cGUuQz1mdW5jdGlvbigpe2lmKHRoaXMuZyE9bnVsbCl7Zm9yKHZhciBmPTA7Zjx0aGlzLmcubGVuZ3RoOysrZilrLmgodGhpcy5nW2ZdKTt0aGlzLmc9bnVsbH19Owp2YXIgaz1uZXcgYztiLnByb3RvdHlwZS5NPWZ1bmN0aW9uKGYpe3ZhciBlPXRoaXMuaigpO2YuQihlLnJlc29sdmUsZS5yZWplY3QpfTsKYi5wcm90b3R5cGUuTj1mdW5jdGlvbihmLGUpe3ZhciBnPXRoaXMuaigpO3RyeXtmLmNhbGwoZSxnLnJlc29sdmUsZy5yZWplY3QpfWNhdGNoKGwpe2cucmVqZWN0KGwpfX07CmIucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oZixlKXtmdW5jdGlvbiBnKHcseil7cmV0dXJuIHR5cGVvZiB3PT0iZnVuY3Rpb24iP2Z1bmN0aW9uKFApe3RyeXtsKHcoUCkpfWNhdGNoKFEpe20oUSl9fTp6fQp2YXIgbCxtLHU9bmV3IGIoZnVuY3Rpb24odyx6KXtsPXc7bT16fSk7CnRoaXMuQihnKGYsbCksZyhlLG0pKTtyZXR1cm4gdX07CmIucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKGYpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGYpfTsKYi5wcm90b3R5cGUuQj1mdW5jdGlvbihmLGUpe2Z1bmN0aW9uIGcoKXtzd2l0Y2gobC5oKXtjYXNlIDE6ZihsLmkpO2JyZWFrO2Nhc2UgMjplKGwuaSk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigiVW5leHBlY3RlZCBzdGF0ZTogIitsLmgpO319CnZhciBsPXRoaXM7dGhpcy5nPT1udWxsP2suaChnKTp0aGlzLmcucHVzaChnKTt0aGlzLnY9ITB9OwpiLnJlc29sdmU9ZDtiLnJlamVjdD1mdW5jdGlvbihmKXtyZXR1cm4gbmV3IGIoZnVuY3Rpb24oZSxnKXtnKGYpfSl9OwpiLnJhY2U9ZnVuY3Rpb24oZil7cmV0dXJuIG5ldyBiKGZ1bmN0aW9uKGUsZyl7Zm9yKHZhciBsPXgoZiksbT1sLm5leHQoKTshbS5kb25lO209bC5uZXh0KCkpZChtLnZhbHVlKS5CKGUsZyl9KX07CmIuYWxsPWZ1bmN0aW9uKGYpe3ZhciBlPXgoZiksZz1lLm5leHQoKTtyZXR1cm4gZy5kb25lP2QoW10pOm5ldyBiKGZ1bmN0aW9uKGwsbSl7ZnVuY3Rpb24gdShQKXtyZXR1cm4gZnVuY3Rpb24oUSl7d1tQXT1RO3otLTt6PT0wJiZsKHcpfX0KdmFyIHc9W10sej0wO2RvIHcucHVzaCh2b2lkIDApLHorKyxkKGcudmFsdWUpLkIodSh3Lmxlbmd0aC0xKSxtKSxnPWUubmV4dCgpO3doaWxlKCFnLmRvbmUpfSl9OwpyZXR1cm4gYn0pOwpmdW5jdGlvbiB5KGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLGIpfQp2YXIgaWE9dHlwZW9mIE9iamVjdC5hc3NpZ249PSJmdW5jdGlvbiI/T2JqZWN0LmFzc2lnbjpmdW5jdGlvbihhLGIpe2lmKGE9PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gbnVsbGlzaCBhcmciKTthPU9iamVjdChhKTtmb3IodmFyIGM9MTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKXt2YXIgZD1hcmd1bWVudHNbY107aWYoZClmb3IodmFyIGggaW4gZCl5KGQsaCkmJihhW2hdPWRbaF0pfXJldHVybiBhfTsKcigiT2JqZWN0LmFzc2lnbiIsZnVuY3Rpb24oYSl7cmV0dXJuIGF8fGlhfSk7CnIoIlN5bWJvbC5kaXNwb3NlIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOlN5bWJvbCgiU3ltYm9sLmRpc3Bvc2UiKX0pOwpyKCJXZWFrTWFwIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGcpe3RoaXMuZz0oZSs9TWF0aC5yYW5kb20oKSsxKS50b1N0cmluZygpO2lmKGcpe2c9eChnKTtmb3IodmFyIGw7IShsPWcubmV4dCgpKS5kb25lOylsPWwudmFsdWUsdGhpcy5zZXQobFswXSxsWzFdKX19CmZ1bmN0aW9uIGMoKXt9CmZ1bmN0aW9uIGQoZyl7dmFyIGw9dHlwZW9mIGc7cmV0dXJuIGw9PT0ib2JqZWN0IiYmZyE9PW51bGx8fGw9PT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBoKGcpe2lmKCF5KGcsZikpe3ZhciBsPW5ldyBjO3AoZyxmLHt2YWx1ZTpsfSl9fQpmdW5jdGlvbiBrKGcpe3ZhciBsPU9iamVjdFtnXTtsJiYoT2JqZWN0W2ddPWZ1bmN0aW9uKG0pe2lmKG0gaW5zdGFuY2VvZiBjKXJldHVybiBtO09iamVjdC5pc0V4dGVuc2libGUobSkmJmgobSk7cmV0dXJuIGwobSl9KX0KaWYoZnVuY3Rpb24oKXtpZighYXx8IU9iamVjdC5zZWFsKXJldHVybiExO3RyeXt2YXIgZz1PYmplY3Quc2VhbCh7fSksbD1PYmplY3Quc2VhbCh7fSksbT1uZXcgYShbW2csMl0sW2wsM11dKTtpZihtLmdldChnKSE9Mnx8bS5nZXQobCkhPTMpcmV0dXJuITE7bS5kZWxldGUoZyk7bS5zZXQobCw0KTtyZXR1cm4hbS5oYXMoZykmJm0uZ2V0KGwpPT00fWNhdGNoKHUpe3JldHVybiExfX0oKSlyZXR1cm4gYTsKdmFyIGY9IiRqc2NvbXBfaGlkZGVuXyIrTWF0aC5yYW5kb20oKTtrKCJmcmVlemUiKTtrKCJwcmV2ZW50RXh0ZW5zaW9ucyIpO2soInNlYWwiKTt2YXIgZT0wO2IucHJvdG90eXBlLnNldD1mdW5jdGlvbihnLGwpe2lmKCFkKGcpKXRocm93IEVycm9yKCJJbnZhbGlkIFdlYWtNYXAga2V5Iik7aChnKTtpZigheShnLGYpKXRocm93IEVycm9yKCJXZWFrTWFwIGtleSBmYWlsOiAiK2cpO2dbZl1bdGhpcy5nXT1sO3JldHVybiB0aGlzfTsKYi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGcpe3JldHVybiBkKGcpJiZ5KGcsZik/Z1tmXVt0aGlzLmddOnZvaWQgMH07CmIucHJvdG90eXBlLmhhcz1mdW5jdGlvbihnKXtyZXR1cm4gZChnKSYmeShnLGYpJiZ5KGdbZl0sdGhpcy5nKX07CmIucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbihnKXtyZXR1cm4gZChnKSYmeShnLGYpJiZ5KGdbZl0sdGhpcy5nKT9kZWxldGUgZ1tmXVt0aGlzLmddOiExfTsKcmV0dXJuIGJ9KTsKcigiTWFwIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7dmFyIGU9e307cmV0dXJuIGUucHJldmlvdXM9ZS5uZXh0PWUuaGVhZD1lfQpmdW5jdGlvbiBjKGUsZyl7dmFyIGw9ZVsxXTtyZXR1cm4gaGEoZnVuY3Rpb24oKXtpZihsKXtmb3IoO2wuaGVhZCE9ZVsxXTspbD1sLnByZXZpb3VzO2Zvcig7bC5uZXh0IT1sLmhlYWQ7KXJldHVybiBsPWwubmV4dCx7ZG9uZTohMSx2YWx1ZTpnKGwpfTtsPW51bGx9cmV0dXJue2RvbmU6ITAsdmFsdWU6dm9pZCAwfX0pfQpmdW5jdGlvbiBkKGUsZyl7dmFyIGw9ZyYmdHlwZW9mIGc7bD09Im9iamVjdCJ8fGw9PSJmdW5jdGlvbiI/ay5oYXMoZyk/bD1rLmdldChnKToobD0iIisgKytmLGsuc2V0KGcsbCkpOmw9InBfIitnO3ZhciBtPWVbMF1bbF07aWYobSYmeShlWzBdLGwpKWZvcihlPTA7ZTxtLmxlbmd0aDtlKyspe3ZhciB1PW1bZV07aWYoZyE9PWcmJnUua2V5IT09dS5rZXl8fGc9PT11LmtleSlyZXR1cm57aWQ6bCxsaXN0Om0saW5kZXg6ZSxlbnRyeTp1fX1yZXR1cm57aWQ6bCxsaXN0Om0saW5kZXg6LTEsZW50cnk6dm9pZCAwfX0KZnVuY3Rpb24gaChlKXt0aGlzWzBdPXt9O3RoaXNbMV09YigpO3RoaXMuc2l6ZT0wO2lmKGUpe2U9eChlKTtmb3IodmFyIGc7IShnPWUubmV4dCgpKS5kb25lOylnPWcudmFsdWUsdGhpcy5zZXQoZ1swXSxnWzFdKX19CmlmKGZ1bmN0aW9uKCl7aWYoIWF8fHR5cGVvZiBhIT0iZnVuY3Rpb24ifHwhYS5wcm90b3R5cGUuZW50cmllc3x8dHlwZW9mIE9iamVjdC5zZWFsIT0iZnVuY3Rpb24iKXJldHVybiExO3RyeXt2YXIgZT1PYmplY3Quc2VhbCh7eDo0fSksZz1uZXcgYSh4KFtbZSwicyJdXSkpO2lmKGcuZ2V0KGUpIT0icyJ8fGcuc2l6ZSE9MXx8Zy5nZXQoe3g6NH0pfHxnLnNldCh7eDo0fSwidCIpIT1nfHxnLnNpemUhPTIpcmV0dXJuITE7dmFyIGw9Zy5lbnRyaWVzKCksbT1sLm5leHQoKTtpZihtLmRvbmV8fG0udmFsdWVbMF0hPWV8fG0udmFsdWVbMV0hPSJzIilyZXR1cm4hMTttPWwubmV4dCgpO3JldHVybiBtLmRvbmV8fG0udmFsdWVbMF0ueCE9NHx8bS52YWx1ZVsxXSE9InQifHwhbC5uZXh0KCkuZG9uZT8hMTohMH1jYXRjaCh1KXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7CnZhciBrPW5ldyBXZWFrTWFwO2gucHJvdG90eXBlLnNldD1mdW5jdGlvbihlLGcpe2U9ZT09PTA/MDplO3ZhciBsPWQodGhpcyxlKTtsLmxpc3R8fChsLmxpc3Q9dGhpc1swXVtsLmlkXT1bXSk7bC5lbnRyeT9sLmVudHJ5LnZhbHVlPWc6KGwuZW50cnk9e25leHQ6dGhpc1sxXSxwcmV2aW91czp0aGlzWzFdLnByZXZpb3VzLGhlYWQ6dGhpc1sxXSxrZXk6ZSx2YWx1ZTpnfSxsLmxpc3QucHVzaChsLmVudHJ5KSx0aGlzWzFdLnByZXZpb3VzLm5leHQ9bC5lbnRyeSx0aGlzWzFdLnByZXZpb3VzPWwuZW50cnksdGhpcy5zaXplKyspO3JldHVybiB0aGlzfTsKaC5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGUpe2U9ZCh0aGlzLGUpO3JldHVybiBlLmVudHJ5JiZlLmxpc3Q/KGUubGlzdC5zcGxpY2UoZS5pbmRleCwxKSxlLmxpc3QubGVuZ3RofHxkZWxldGUgdGhpc1swXVtlLmlkXSxlLmVudHJ5LnByZXZpb3VzLm5leHQ9ZS5lbnRyeS5uZXh0LGUuZW50cnkubmV4dC5wcmV2aW91cz1lLmVudHJ5LnByZXZpb3VzLGUuZW50cnkuaGVhZD1udWxsLHRoaXMuc2l6ZS0tLCEwKTohMX07CmgucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpc1swXT17fTt0aGlzWzFdPXRoaXNbMV0ucHJldmlvdXM9YigpO3RoaXMuc2l6ZT0wfTsKaC5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGUpe3JldHVybiEhZCh0aGlzLGUpLmVudHJ5fTsKaC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybihlPWQodGhpcyxlKS5lbnRyeSkmJmUudmFsdWV9OwpoLnByb3RvdHlwZS5lbnRyaWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihlKXtyZXR1cm5bZS5rZXksZS52YWx1ZV19KX07CmgucHJvdG90eXBlLmtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGUpe3JldHVybiBlLmtleX0pfTsKaC5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gZS52YWx1ZX0pfTsKaC5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihlLGcpe2Zvcih2YXIgbD10aGlzLmVudHJpZXMoKSxtOyEobT1sLm5leHQoKSkuZG9uZTspbT1tLnZhbHVlLGUuY2FsbChnLG1bMV0sbVswXSx0aGlzKX07CmgucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09aC5wcm90b3R5cGUuZW50cmllczt2YXIgZj0wO3JldHVybiBofSk7CnIoIlNldCIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjKXt0aGlzLmc9bmV3IE1hcDtpZihjKXtjPXgoYyk7Zm9yKHZhciBkOyEoZD1jLm5leHQoKSkuZG9uZTspdGhpcy5hZGQoZC52YWx1ZSl9dGhpcy5zaXplPXRoaXMuZy5zaXplfQppZihmdW5jdGlvbigpe2lmKCFhfHx0eXBlb2YgYSE9ImZ1bmN0aW9uInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9ImZ1bmN0aW9uIilyZXR1cm4hMTt0cnl7dmFyIGM9T2JqZWN0LnNlYWwoe3g6NH0pLGQ9bmV3IGEoeChbY10pKTtpZighZC5oYXMoYyl8fGQuc2l6ZSE9MXx8ZC5hZGQoYykhPWR8fGQuc2l6ZSE9MXx8ZC5hZGQoe3g6NH0pIT1kfHxkLnNpemUhPTIpcmV0dXJuITE7dmFyIGg9ZC5lbnRyaWVzKCksaz1oLm5leHQoKTtpZihrLmRvbmV8fGsudmFsdWVbMF0hPWN8fGsudmFsdWVbMV0hPWMpcmV0dXJuITE7az1oLm5leHQoKTtyZXR1cm4gay5kb25lfHxrLnZhbHVlWzBdPT1jfHxrLnZhbHVlWzBdLnghPTR8fGsudmFsdWVbMV0hPWsudmFsdWVbMF0/ITE6aC5uZXh0KCkuZG9uZX1jYXRjaChmKXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7CmIucHJvdG90eXBlLmFkZD1mdW5jdGlvbihjKXtjPWM9PT0wPzA6Yzt0aGlzLmcuc2V0KGMsYyk7dGhpcy5zaXplPXRoaXMuZy5zaXplO3JldHVybiB0aGlzfTsKYi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGMpe2M9dGhpcy5nLmRlbGV0ZShjKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGN9OwpiLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuZy5jbGVhcigpO3RoaXMuc2l6ZT0wfTsKYi5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLmcuaGFzKGMpfTsKYi5wcm90b3R5cGUuZW50cmllcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuZW50cmllcygpfTsKYi5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy52YWx1ZXMoKX07CmIucHJvdG90eXBlLmtleXM9Yi5wcm90b3R5cGUudmFsdWVzO2IucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09Yi5wcm90b3R5cGUudmFsdWVzO2IucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oYyxkKXt2YXIgaD10aGlzO3RoaXMuZy5mb3JFYWNoKGZ1bmN0aW9uKGspe3JldHVybiBjLmNhbGwoZCxrLGssaCl9KX07CnJldHVybiBifSk7CnIoIkFycmF5LnByb3RvdHlwZS5maW5kIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7YTp7dmFyIGQ9dGhpcztkIGluc3RhbmNlb2YgU3RyaW5nJiYoZD1TdHJpbmcoZCkpO2Zvcih2YXIgaD1kLmxlbmd0aCxrPTA7azxoO2srKyl7dmFyIGY9ZFtrXTtpZihiLmNhbGwoYyxmLGssZCkpe2I9ZjticmVhayBhfX1iPXZvaWQgMH1yZXR1cm4gYn19KTsKcigiQXJyYXkuZnJvbSIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMsZCl7Yz1jIT1udWxsP2M6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9Owp2YXIgaD1bXSxrPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmJbU3ltYm9sLml0ZXJhdG9yXTtpZih0eXBlb2Ygaz09ImZ1bmN0aW9uIil7Yj1rLmNhbGwoYik7Zm9yKHZhciBmPTA7IShrPWIubmV4dCgpKS5kb25lOyloLnB1c2goYy5jYWxsKGQsay52YWx1ZSxmKyspKX1lbHNlIGZvcihrPWIubGVuZ3RoLGY9MDtmPGs7ZisrKWgucHVzaChjLmNhbGwoZCxiW2ZdLGYpKTtyZXR1cm4gaH19KTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgQT10aGlzfHxzZWxmO2Z1bmN0aW9uIEIoYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGI9PSJvYmplY3QiJiZhIT1udWxsfHxiPT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBqYShhKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsQykmJmFbQ118fChhW0NdPSsra2EpfQp2YXIgQz0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKSxrYT0wO2Z1bmN0aW9uIEQoYSxiKXthPWEuc3BsaXQoIi4iKTtmb3IodmFyIGM9QSxkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8Yj09PXZvaWQgMD9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn0KZnVuY3Rpb24gbGEoYSxiKXtmdW5jdGlvbiBjKCl7fQpjLnByb3RvdHlwZT1iLnByb3RvdHlwZTthLkg9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLlc9ZnVuY3Rpb24oZCxoLGspe2Zvcih2YXIgZj1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGU9MjtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKWZbZS0yXT1hcmd1bWVudHNbZV07cmV0dXJuIGIucHJvdG90eXBlW2hdLmFwcGx5KGQsZil9fQo7dmFyIG1hPUFycmF5LnByb3RvdHlwZS5pbmRleE9mP2Z1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYSxiLHZvaWQgMCl9OmZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gdHlwZW9mIGIhPT0ic3RyaW5nInx8Yi5sZW5ndGghPTE/LTE6YS5pbmRleE9mKGIsMCk7CmZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9LEU9QXJyYXkucHJvdG90eXBlLmZvckVhY2g/ZnVuY3Rpb24oYSxiLGMpe0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYSxiLGMpfTpmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWEubGVuZ3RoLGg9dHlwZW9mIGE9PT0ic3RyaW5nIj9hLnNwbGl0KCIiKTphLGs9MDtrPGQ7aysrKWsgaW4gaCYmYi5jYWxsKGMsaFtrXSxrLGEpfTsKZnVuY3Rpb24gbmEoYSxiKXtiPW1hKGEsYik7Yj49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGEsYiwxKX0KZnVuY3Rpb24gb2EoYSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sYXJndW1lbnRzKX0KZnVuY3Rpb24gcGEoYSl7dmFyIGI9YS5sZW5ndGg7aWYoYj4wKXtmb3IodmFyIGM9QXJyYXkoYiksZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfQo7ZnVuY3Rpb24gcWEoYSxiKXt0aGlzLmk9YTt0aGlzLmo9Yjt0aGlzLmg9MDt0aGlzLmc9bnVsbH0KcWEucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe2lmKHRoaXMuaD4wKXt0aGlzLmgtLTt2YXIgYT10aGlzLmc7dGhpcy5nPWEubmV4dDthLm5leHQ9bnVsbH1lbHNlIGE9dGhpcy5pKCk7cmV0dXJuIGF9O2Z1bmN0aW9uIHJhKGEpe0Euc2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGE7fSwwKX0KO2Z1bmN0aW9uIEYoKXt0aGlzLmg9dGhpcy5nPW51bGx9CkYucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe3ZhciBjPXNhLmdldCgpO2Muc2V0KGEsYik7dGhpcy5oP3RoaXMuaC5uZXh0PWM6dGhpcy5nPWM7dGhpcy5oPWN9OwpGLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oKXt2YXIgYT1udWxsO3RoaXMuZyYmKGE9dGhpcy5nLHRoaXMuZz10aGlzLmcubmV4dCx0aGlzLmd8fCh0aGlzLmg9bnVsbCksYS5uZXh0PW51bGwpO3JldHVybiBhfTsKdmFyIHNhPW5ldyBxYShmdW5jdGlvbigpe3JldHVybiBuZXcgR30sZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVzZXQoKX0pOwpmdW5jdGlvbiBHKCl7dGhpcy5uZXh0PXRoaXMuc2NvcGU9dGhpcy5nPW51bGx9CkcucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuZz1hO3RoaXMuc2NvcGU9Yjt0aGlzLm5leHQ9bnVsbH07CkcucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuc2NvcGU9dGhpcy5nPW51bGx9O3ZhciBILEk9ITEsdGE9bmV3IEY7ZnVuY3Rpb24gdWEoYSl7SHx8dmEoKTtJfHwoSCgpLEk9ITApO3RhLmFkZChhLHZvaWQgMCl9CmZ1bmN0aW9uIHZhKCl7dmFyIGE9UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCk7SD1mdW5jdGlvbigpe2EudGhlbih3YSl9fQpmdW5jdGlvbiB3YSgpe2Zvcih2YXIgYTthPXRhLnJlbW92ZSgpOyl7dHJ5e2EuZy5jYWxsKGEuc2NvcGUpfWNhdGNoKGMpe3JhKGMpfXZhciBiPXNhO2IuaihhKTtiLmg8MTAwJiYoYi5oKyssYS5uZXh0PWIuZyxiLmc9YSl9ST0hMX0KO2Z1bmN0aW9uIEooKXt0aGlzLmk9dGhpcy5pO3RoaXMuaj10aGlzLmp9CkoucHJvdG90eXBlLmk9ITE7Si5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbigpe3RoaXMuaXx8KHRoaXMuaT0hMCx0aGlzLkQoKSl9OwpKLnByb3RvdHlwZVtTeW1ib2wuZGlzcG9zZV09ZnVuY3Rpb24oKXt0aGlzLmRpc3Bvc2UoKX07CkoucHJvdG90eXBlLmFkZE9uRGlzcG9zZUNhbGxiYWNrPWZ1bmN0aW9uKGEsYil7dGhpcy5pP2IhPT12b2lkIDA/YS5jYWxsKGIpOmEoKToodGhpcy5qfHwodGhpcy5qPVtdKSxiJiYoYT1hLmJpbmQoYikpLHRoaXMuai5wdXNoKGEpKX07CkoucHJvdG90eXBlLkQ9ZnVuY3Rpb24oKXtpZih0aGlzLmopZm9yKDt0aGlzLmoubGVuZ3RoOyl0aGlzLmouc2hpZnQoKSgpfTtmdW5jdGlvbiB4YShhKXt2YXIgYj17fSxjO2ZvcihjIGluIGEpYltjXT1hW2NdO3JldHVybiBifQo7dmFyIHlhPS8mL2csemE9LzwvZyxBYT0vPi9nLEJhPS8iL2csQ2E9LycvZyxEYT0vXHgwMC9nLEVhPS9bXHgwMCY8PiInXS87LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KZnVuY3Rpb24gSyhhKXt0aGlzLmc9YX0KSy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTsKdmFyIEZhPW5ldyBLKCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO2Z1bmN0aW9uIEwoYSl7dGhpcy5QPWF9CmZ1bmN0aW9uIE0oYSl7cmV0dXJuIG5ldyBMKGZ1bmN0aW9uKGIpe3JldHVybiBiLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6In0pfQp2YXIgR2E9W00oImRhdGEiKSxNKCJodHRwIiksTSgiaHR0cHMiKSxNKCJtYWlsdG8iKSxNKCJmdHAiKSxuZXcgTChmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldLEhhPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7dmFyIElhPXtWOjAsVDoxLFU6MiwwOiJGT1JNQVRURURfSFRNTF9DT05URU5UIiwxOiJFTUJFRERFRF9JTlRFUk5BTF9DT05URU5UIiwyOiJFTUJFRERFRF9UUlVTVEVEX0VYVEVSTkFMX0NPTlRFTlQifTtmdW5jdGlvbiBOKGEsYil7Yj1FcnJvci5jYWxsKHRoaXMsYSsiIGNhbm5vdCBiZSB1c2VkIHdpdGggaW50ZW50ICIrSWFbYl0pO3RoaXMubWVzc2FnZT1iLm1lc3NhZ2U7InN0YWNrImluIGImJih0aGlzLnN0YWNrPWIuc3RhY2spO3RoaXMudHlwZT1hO3RoaXMubmFtZT0iVHlwZUNhbm5vdEJlVXNlZFdpdGhJZnJhbWVJbnRlbnRFcnJvciJ9CnZhciBPPUVycm9yO04ucHJvdG90eXBlPWFhKE8ucHJvdG90eXBlKTtOLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1OO2lmKGVhKWVhKE4sTyk7ZWxzZSBmb3IodmFyIFIgaW4gTylpZihSIT0icHJvdG90eXBlIilpZihPYmplY3QuZGVmaW5lUHJvcGVydGllcyl7dmFyIEphPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTyxSKTtKYSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KE4sUixKYSl9ZWxzZSBOW1JdPU9bUl07Ti5IPU8ucHJvdG90eXBlO2Z1bmN0aW9uIEthKGEpe0VhLnRlc3QoYSkmJihhLmluZGV4T2YoIiYiKSE9LTEmJihhPWEucmVwbGFjZSh5YSwiJmFtcDsiKSksYS5pbmRleE9mKCI8IikhPS0xJiYoYT1hLnJlcGxhY2UoemEsIiZsdDsiKSksYS5pbmRleE9mKCI+IikhPS0xJiYoYT1hLnJlcGxhY2UoQWEsIiZndDsiKSksYS5pbmRleE9mKCciJykhPS0xJiYoYT1hLnJlcGxhY2UoQmEsIiZxdW90OyIpKSxhLmluZGV4T2YoIiciKSE9LTEmJihhPWEucmVwbGFjZShDYSwiJiMzOTsiKSksYS5pbmRleE9mKCJceDAwIikhPS0xJiYoYT1hLnJlcGxhY2UoRGEsIiYjMDsiKSkpO3JldHVybiBhfQo7ZnVuY3Rpb24gUyhhKXtKLmNhbGwodGhpcyk7dGhpcy52PTE7dGhpcy5sPVtdO3RoaXMubz0wO3RoaXMuZz1bXTt0aGlzLmg9e307dGhpcy5BPSEhYX0KbGEoUyxKKTtuPVMucHJvdG90eXBlO24uc3Vic2NyaWJlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmhbYV07ZHx8KGQ9dGhpcy5oW2FdPVtdKTt2YXIgaD10aGlzLnY7dGhpcy5nW2hdPWE7dGhpcy5nW2grMV09Yjt0aGlzLmdbaCsyXT1jO3RoaXMudj1oKzM7ZC5wdXNoKGgpO3JldHVybiBofTsKbi51bnN1YnNjcmliZT1mdW5jdGlvbihhLGIsYyl7aWYoYT10aGlzLmhbYV0pe3ZhciBkPXRoaXMuZztpZihhPWEuZmluZChmdW5jdGlvbihoKXtyZXR1cm4gZFtoKzFdPT1iJiZkW2grMl09PWN9KSlyZXR1cm4gdGhpcy5GKGEpfXJldHVybiExfTsKbi5GPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuZ1thXTtpZihiKXt2YXIgYz10aGlzLmhbYl07dGhpcy5vIT0wPyh0aGlzLmwucHVzaChhKSx0aGlzLmdbYSsxXT1mdW5jdGlvbigpe30pOihjJiZuYShjLGEpLGRlbGV0ZSB0aGlzLmdbYV0sZGVsZXRlIHRoaXMuZ1thKzFdLGRlbGV0ZSB0aGlzLmdbYSsyXSl9cmV0dXJuISFifTsKbi5HPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5oW2FdO2lmKGMpe3ZhciBkPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSksaD1hcmd1bWVudHMubGVuZ3RoLGs7Zm9yKGs9MTtrPGg7aysrKWRbay0xXT1hcmd1bWVudHNba107aWYodGhpcy5BKWZvcihrPTA7azxjLmxlbmd0aDtrKyspaD1jW2tdLExhKHRoaXMuZ1toKzFdLHRoaXMuZ1toKzJdLGQpO2Vsc2V7dGhpcy5vKys7dHJ5e2ZvcihrPTAsaD1jLmxlbmd0aDtrPGgmJiF0aGlzLmk7aysrKXt2YXIgZj1jW2tdO3RoaXMuZ1tmKzFdLmFwcGx5KHRoaXMuZ1tmKzJdLGQpfX1maW5hbGx5e2lmKHRoaXMuby0tLHRoaXMubC5sZW5ndGg+MCYmdGhpcy5vPT0wKWZvcig7Yz10aGlzLmwucG9wKCk7KXRoaXMuRihjKX19cmV0dXJuIGshPTB9cmV0dXJuITF9OwpmdW5jdGlvbiBMYShhLGIsYyl7dWEoZnVuY3Rpb24oKXthLmFwcGx5KGIsYyl9KX0Kbi5jbGVhcj1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj10aGlzLmhbYV07YiYmKGIuZm9yRWFjaCh0aGlzLkYsdGhpcyksZGVsZXRlIHRoaXMuaFthXSl9ZWxzZSB0aGlzLmcubGVuZ3RoPTAsdGhpcy5oPXt9fTsKbi5EPWZ1bmN0aW9uKCl7Uy5ILkQuY2FsbCh0aGlzKTt0aGlzLmNsZWFyKCk7dGhpcy5sLmxlbmd0aD0wfTt2YXIgTWE9UmVnRXhwKCJeKD86KFteOi8/Iy5dKyk6KT8oPzovLyg/OihbXlxcXFwvPyNdKilAKT8oW15cXFxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcXFwvPyNdfCQpKT8oW14/I10rKT8oPzpcXD8oW14jXSopKT8oPzojKFtcXHNcXFNdKikpPyQiKTtmdW5jdGlvbiBOYShhKXt2YXIgYj1hLm1hdGNoKE1hKTthPWJbMV07dmFyIGM9YlsyXSxkPWJbM107Yj1iWzRdO3ZhciBoPSIiO2EmJihoKz1hKyI6Iik7ZCYmKGgrPSIvLyIsYyYmKGgrPWMrIkAiKSxoKz1kLGImJihoKz0iOiIrYikpO3JldHVybiBofQpmdW5jdGlvbiBPYShhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShiKSlmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKylPYShhLFN0cmluZyhiW2RdKSxjKTtlbHNlIGIhPW51bGwmJmMucHVzaChhKyhiPT09IiI/IiI6Ij0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYikpKSl9CnZhciBQYT0vI3wkLzt2YXIgVD17fSxRYT1bXSxVPW5ldyBTLFY9e307ZnVuY3Rpb24gUmEoKXtmb3IodmFyIGE9eChRYSksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpYj1iLnZhbHVlLGIoKX0KZnVuY3Rpb24gVyhhLGIpe3JldHVybiBhLnRhZ05hbWUudG9Mb3dlckNhc2UoKS5zdWJzdHJpbmcoMCwzKT09PSJ5dDoiP2EuZ2V0QXR0cmlidXRlKGIpOmEuZGF0YXNldD9hLmRhdGFzZXRbYl06YS5nZXRBdHRyaWJ1dGUoImRhdGEtIitiKX0KZnVuY3Rpb24gU2EoYSl7VS5HLmFwcGx5KFUsYXJndW1lbnRzKX0KO2Z1bmN0aW9uIFRhKGEpe3JldHVybihhLnNlYXJjaCgiY3VlIik9PT0wfHxhLnNlYXJjaCgibG9hZCIpPT09MCkmJmEhPT0ibG9hZE1vZHVsZSJ9CmZ1bmN0aW9uIFVhKGEpe3JldHVybiBhLnNlYXJjaCgiZ2V0Iik9PT0wfHxhLnNlYXJjaCgiaXMiKT09PTB9Cjt2YXIgVmE9d2luZG93OwpmdW5jdGlvbiBYKGEsYil7dGhpcy51PXt9O3RoaXMucGxheWVySW5mbz17fTt0aGlzLnZpZGVvVGl0bGU9IiI7dGhpcy5qPXRoaXMuZz1udWxsO3RoaXMuaD0wO3RoaXMubz0hMTt0aGlzLmw9W107dGhpcy5pPW51bGw7dGhpcy5DPXt9O3RoaXMub3B0aW9ucz1udWxsO3RoaXMuQT10aGlzLlIuYmluZCh0aGlzKTtpZighYSl0aHJvdyBFcnJvcigiWW91VHViZSBwbGF5ZXIgZWxlbWVudCBJRCByZXF1aXJlZC4iKTt0aGlzLmlkPWphKHRoaXMpO2I9T2JqZWN0LmFzc2lnbih7dGl0bGU6InZpZGVvIHBsYXllciIsdmlkZW9JZDoiIix3aWR0aDo2NDAsaGVpZ2h0OjM2MH0sYnx8e30pO3ZhciBjPWRvY3VtZW50O2lmKGE9dHlwZW9mIGE9PT0ic3RyaW5nIj9jLmdldEVsZW1lbnRCeUlkKGEpOmEpe2M9YS50YWdOYW1lLnRvTG93ZXJDYXNlKCk9PT0iaWZyYW1lIjtiLmhvc3R8fChiLmhvc3Q9Yz9OYShhLnNyYyk6Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIik7dGhpcy5vcHRpb25zPWJ8fHt9OwpiPVt0aGlzLm9wdGlvbnMsd2luZG93LllUQ29uZmlnfHx7fV07Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspYltkXS5ob3N0JiYoYltkXS5ob3N0PWJbZF0uaG9zdC50b1N0cmluZygpLnJlcGxhY2UoImh0dHA6Ly8iLCJodHRwczovLyIpKTtpZighYyl7Yj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtjPWEuYXR0cmlidXRlcztkPTA7Zm9yKHZhciBoPWMubGVuZ3RoO2Q8aDtkKyspe3ZhciBrPWNbZF0udmFsdWU7ayE9bnVsbCYmayE9PSIiJiZrIT09Im51bGwiJiZiLnNldEF0dHJpYnV0ZShjW2RdLm5hbWUsayl9Yi5zZXRBdHRyaWJ1dGUoImZyYW1lQm9yZGVyIiwiMCIpO2Iuc2V0QXR0cmlidXRlKCJhbGxvd2Z1bGxzY3JlZW4iLCIiKTtiLnNldEF0dHJpYnV0ZSgiYWxsb3ciLCJhY2NlbGVyb21ldGVyOyBhdXRvcGxheTsgY2xpcGJvYXJkLXdyaXRlOyBlbmNyeXB0ZWQtbWVkaWE7IGd5cm9zY29wZTsgcGljdHVyZS1pbi1waWN0dXJlOyB3ZWItc2hhcmUiKTtiLnNldEF0dHJpYnV0ZSgicmVmZXJyZXJQb2xpY3kiLAoic3RyaWN0LW9yaWdpbi13aGVuLWNyb3NzLW9yaWdpbiIpO2Iuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIllvdVR1YmUgIitZKHRoaXMsInRpdGxlIikpOyhjPVkodGhpcywid2lkdGgiKSkmJmIuc2V0QXR0cmlidXRlKCJ3aWR0aCIsYy50b1N0cmluZygpKTsoYz1ZKHRoaXMsImhlaWdodCIpKSYmYi5zZXRBdHRyaWJ1dGUoImhlaWdodCIsYy50b1N0cmluZygpKTt0aGlzLmo9YTsoYz1hLnBhcmVudE5vZGUpJiZjLnJlcGxhY2VDaGlsZChiLGEpO2E9V2EodGhpcyxiKTtjPSIiK1kodGhpcywiaG9zdCIpK1hhKHRoaXMpKyI/IjtkPVtdO2Zvcih2YXIgZiBpbiBhKU9hKGYsYVtmXSxkKTtmPWMrZC5qb2luKCImIik7aWYoVmEueXRfZW1iZWRzRW5hYmxlSWZyYW1lU3JjV2l0aEludGVudCl7dmFyIGU9ZT09PXZvaWQgMD9HYTplO2E6aWYoZT1lPT09dm9pZCAwP0dhOmUsZiBpbnN0YW5jZW9mIEspZT1mO2Vsc2V7Zm9yKGE9MDthPGUubGVuZ3RoOysrYSlpZihjPWVbYV0sYyBpbnN0YW5jZW9mCkwmJmMuUChmKSl7ZT1uZXcgSyhmKTticmVhayBhfWU9dm9pZCAwfWU9ZXx8RmE7Yi5yZW1vdmVBdHRyaWJ1dGUoInNyY2RvYyIpO2Y9ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctZm9ybXMgYWxsb3ctcG9wdXBzIGFsbG93LXBvcHVwcy10by1lc2NhcGUtc2FuZGJveCBhbGxvdy1zdG9yYWdlLWFjY2Vzcy1ieS11c2VyLWFjdGl2YXRpb24iLnNwbGl0KCIgIik7Yi5zZXRBdHRyaWJ1dGUoInNhbmRib3giLCIiKTtmb3IoYT0wO2E8Zi5sZW5ndGg7YSsrKWIuc2FuZGJveC5zdXBwb3J0cyYmIWIuc2FuZGJveC5zdXBwb3J0cyhmW2FdKXx8Yi5zYW5kYm94LmFkZChmW2FdKTtpZihlIGluc3RhbmNlb2YgSylpZihlIGluc3RhbmNlb2YgSyllPWUuZztlbHNlIHRocm93IEVycm9yKCIiKTtlbHNlIGU9SGEudGVzdChlKT9lOnZvaWQgMDtlIT09dm9pZCAwJiYoYi5zcmM9ZSk7Yi5zYW5kYm94LmFkZCgiYWxsb3ctcHJlc2VudGF0aW9uIiwiYWxsb3ctdG9wLW5hdmlnYXRpb24iKX1lbHNlIGIuc3JjPQpmO2E9Yn10aGlzLmc9YTt0aGlzLmcuaWR8fCh0aGlzLmcuaWQ9IndpZGdldCIramEodGhpcy5nKSk7VFt0aGlzLmcuaWRdPXRoaXM7aWYod2luZG93LnBvc3RNZXNzYWdlKXt0aGlzLmk9bmV3IFM7WWEodGhpcyk7Yj1ZKHRoaXMsImV2ZW50cyIpO2Zvcih2YXIgZyBpbiBiKWIuaGFzT3duUHJvcGVydHkoZykmJnRoaXMuYWRkRXZlbnRMaXN0ZW5lcihnLGJbZ10pO2Zvcih2YXIgbCBpbiBWKVYuaGFzT3duUHJvcGVydHkobCkmJlphKHRoaXMsbCl9fX0Kbj1YLnByb3RvdHlwZTtuLnNldFNpemU9ZnVuY3Rpb24oYSxiKXt0aGlzLmcud2lkdGg9YS50b1N0cmluZygpO3RoaXMuZy5oZWlnaHQ9Yi50b1N0cmluZygpO3JldHVybiB0aGlzfTsKbi5nZXRJZnJhbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTsKbi5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yjt0eXBlb2YgYj09PSJzdHJpbmciJiYoYz1mdW5jdGlvbigpe3dpbmRvd1tiXS5hcHBseSh3aW5kb3csYXJndW1lbnRzKX0pOwppZighYylyZXR1cm4gdGhpczt0aGlzLmkuc3Vic2NyaWJlKGEsYyk7JGEodGhpcyxhKTtyZXR1cm4gdGhpc307CmZ1bmN0aW9uIFphKGEsYil7Yj1iLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT0yKXt2YXIgYz1iWzFdOyJwbGF5ZXIiPT09YlswXSYmJGEoYSxjKX19Cm4uZGVzdHJveT1mdW5jdGlvbigpe3RoaXMuZyYmdGhpcy5nLmlkJiYoVFt0aGlzLmcuaWRdPW51bGwpO3ZhciBhPXRoaXMuaTthJiZ0eXBlb2YgYS5kaXNwb3NlPT0iZnVuY3Rpb24iJiZhLmRpc3Bvc2UoKTtpZih0aGlzLmope2E9dGhpcy5qO3ZhciBiPXRoaXMuZyxjPWIucGFyZW50Tm9kZTtjJiZjLnJlcGxhY2VDaGlsZChhLGIpfWVsc2UoYT10aGlzLmcpJiZhLnBhcmVudE5vZGUmJmEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTtaJiYoWlt0aGlzLmlkXT1udWxsKTt0aGlzLm9wdGlvbnM9bnVsbDt0aGlzLmcmJnRoaXMudiYmdGhpcy5nLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLHRoaXMudik7dGhpcy5qPXRoaXMuZz1udWxsfTsKZnVuY3Rpb24gYWIoYSxiLGMpe2M9Y3x8W107Yz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChjKTtiPXtldmVudDoiY29tbWFuZCIsZnVuYzpiLGFyZ3M6Y307YS5vP2Euc2VuZE1lc3NhZ2UoYik6YS5sLnB1c2goYil9Cm4uUj1mdW5jdGlvbigpe2JiKHRoaXMpfHxjbGVhckludGVydmFsKHRoaXMuaCl9OwpmdW5jdGlvbiBiYihhKXtpZighYS5nfHwhYS5nLmNvbnRlbnRXaW5kb3cpcmV0dXJuITE7YS5zZW5kTWVzc2FnZSh7ZXZlbnQ6Imxpc3RlbmluZyJ9KTtyZXR1cm4hMH0KZnVuY3Rpb24gWWEoYSl7Y2IoYSxhLmlkLFN0cmluZyhZKGEsImhvc3QiKSkpO3ZhciBiPU51bWJlcihWYS55dF9lbWJlZHNXaWRnZXRQb2xsSW50ZXJ2YWxNcyl8fDI1MDthLmg9c2V0SW50ZXJ2YWwoYS5BLGIpO2EuZyYmKGEudj1mdW5jdGlvbigpe2NsZWFySW50ZXJ2YWwoYS5oKTthLmg9c2V0SW50ZXJ2YWwoYS5BLGIpfSxhLmcuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsYS52KSl9CmZ1bmN0aW9uIGRiKGEpe3ZhciBiPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7YT1NYXRoLm1heCgwLE1hdGgubWluKGIuYm90dG9tLHdpbmRvdy5pbm5lckhlaWdodHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCktTWF0aC5tYXgoYi50b3AsMCkpKk1hdGgubWF4KDAsTWF0aC5taW4oYi5yaWdodCx3aW5kb3cuaW5uZXJXaWR0aHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKS1NYXRoLm1heChiLmxlZnQsMCkpO2E9KGI9Yi5oZWlnaHQqYi53aWR0aCk/YS9iOjA7cmV0dXJuIGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJoaWRkZW4ifHxhPC41PzE6YTwuNzU/MjphPC44NT8zOmE8Ljk1PzQ6YTwxPzU6Nn0KZnVuY3Rpb24gJGEoYSxiKXthLkNbYl18fChhLkNbYl09ITAsYWIoYSwiYWRkRXZlbnRMaXN0ZW5lciIsW2JdKSl9Cm4uc2VuZE1lc3NhZ2U9ZnVuY3Rpb24oYSl7YS5pZD10aGlzLmlkO2EuY2hhbm5lbD0id2lkZ2V0IjthPUpTT04uc3RyaW5naWZ5KGEpO3ZhciBiPU5hKHRoaXMuZy5zcmN8fCIiKS5yZXBsYWNlKCJodHRwOiIsImh0dHBzOiIpO2lmKHRoaXMuZy5jb250ZW50V2luZG93KXRyeXt0aGlzLmcuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZShhLGIpfWNhdGNoKGMpe2lmKGMubmFtZSYmYy5uYW1lPT09IlN5bnRheEVycm9yIiljLm1lc3NhZ2UmJmMubWVzc2FnZS5pbmRleE9mKCJ0YXJnZXQgb3JpZ2luICcnIik+MHx8Y29uc29sZSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oYyk7ZWxzZSB0aHJvdyBjO31lbHNlIGNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKCJUaGUgWW91VHViZSBwbGF5ZXIgaXMgbm90IGF0dGFjaGVkIHRvIHRoZSBET00uIEFQSSBjYWxscyBzaG91bGQgYmUgbWFkZSBhZnRlciB0aGUgb25SZWFkeSBldmVudC4gU2VlIG1vcmU6IGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3lvdXR1YmUvaWZyYW1lX2FwaV9yZWZlcmVuY2UjRXZlbnRzIil9OwpmdW5jdGlvbiBYYShhKXtpZigoYT1TdHJpbmcoWShhLCJ2aWRlb0lkIikpKSYmKGEubGVuZ3RoIT09MTF8fCFhLm1hdGNoKC9eW2EtekEtWjAtOVwtX10rJC8pKSl0aHJvdyBFcnJvcigiSW52YWxpZCB2aWRlbyBpZCIpO3JldHVybiIvZW1iZWQvIithfQpmdW5jdGlvbiBXYShhLGIpe3ZhciBjPVkoYSwicGxheWVyVmFycyIpO2M/Yz14YShjKTpjPXt9O3dpbmRvdyE9PXdpbmRvdy50b3AmJmRvY3VtZW50LnJlZmVycmVyJiYoYy53aWRnZXRfcmVmZXJyZXI9ZG9jdW1lbnQucmVmZXJyZXIuc3Vic3RyaW5nKDAsMjU2KSk7dmFyIGQ9WShhLCJlbWJlZENvbmZpZyIpO2lmKGQpe2lmKEIoZCkpdHJ5e2Q9SlNPTi5zdHJpbmdpZnkoZCl9Y2F0Y2goaCl7Y29uc29sZS5lcnJvcigiSW52YWxpZCBlbWJlZCBjb25maWcgSlNPTiIsaCl9Yy5lbWJlZF9jb25maWc9ZH1jLmVuYWJsZWpzYXBpPXdpbmRvdy5wb3N0TWVzc2FnZT8xOjA7d2luZG93LmxvY2F0aW9uLmhvc3QmJihjLm9yaWdpbj13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrIi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCk7Yy53aWRnZXRpZD1hLmlkO3dpbmRvdy5sb2NhdGlvbi5ocmVmJiZFKFsiZGVidWdqcyIsImRlYnVnY3NzIl0sZnVuY3Rpb24oaCl7dmFyIGs9d2luZG93LmxvY2F0aW9uLmhyZWY7CnZhciBmPWsuc2VhcmNoKFBhKTtiOnt2YXIgZT0wO2Zvcih2YXIgZz1oLmxlbmd0aDsoZT1rLmluZGV4T2YoaCxlKSk+PTAmJmU8Zjspe3ZhciBsPWsuY2hhckNvZGVBdChlLTEpO2lmKGw9PTM4fHxsPT02MylpZihsPWsuY2hhckNvZGVBdChlK2cpLCFsfHxsPT02MXx8bD09Mzh8fGw9PTM1KWJyZWFrIGI7ZSs9ZysxfWU9LTF9aWYoZTwwKWs9bnVsbDtlbHNle2c9ay5pbmRleE9mKCImIixlKTtpZihnPDB8fGc+ZilnPWY7ZSs9aC5sZW5ndGgrMTtrPWRlY29kZVVSSUNvbXBvbmVudChrLnNsaWNlKGUsZyE9PS0xP2c6MCkucmVwbGFjZSgvXCsvZywiICIpKX1rIT09bnVsbCYmKGNbaF09ayl9KTsKd2luZG93LmxvY2F0aW9uLmhyZWYmJihjLmZvcmlnaW49d2luZG93LmxvY2F0aW9uLmhyZWYpO2E9d2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztjLmFvcmlnaW5zdXA9YT09PXZvaWQgMD8wOjE7YSYmYS5sZW5ndGg+MCYmKGMuYW9yaWdpbnM9QXJyYXkuZnJvbShhKS5qb2luKCIsIikpO3dpbmRvdy5kb2N1bWVudC5yZWZlcnJlciYmKGMuZ3BvcmlnaW49d2luZG93LmRvY3VtZW50LnJlZmVycmVyKTtiJiYoYy52Zj1kYihiKSk7cmV0dXJuIGN9CmZ1bmN0aW9uIGViKGEsYil7aWYoQihiKSl7Zm9yKHZhciBjIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShjKSYmKGEucGxheWVySW5mb1tjXT1iW2NdKTthLnBsYXllckluZm8uaGFzT3duUHJvcGVydHkoInZpZGVvRGF0YSIpJiYoYj1hLnBsYXllckluZm8udmlkZW9EYXRhLGIuaGFzT3duUHJvcGVydHkoInRpdGxlIikmJmIudGl0bGU/KGI9Yi50aXRsZSxiIT09YS52aWRlb1RpdGxlJiYoYS52aWRlb1RpdGxlPWIsYS5nLnNldEF0dHJpYnV0ZSgidGl0bGUiLGIpKSk6KGEudmlkZW9UaXRsZT0iIixhLmcuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIllvdVR1YmUgIitZKGEsInRpdGxlIikpKSl9fQpmdW5jdGlvbiBmYihhLGIpe2I9eChiKTtmb3IodmFyIGM9Yi5uZXh0KCksZD17fTshYy5kb25lO2Q9e206dm9pZCAwfSxjPWIubmV4dCgpKWQubT1jLnZhbHVlLGFbZC5tXXx8KGQubT09PSJnZXRDdXJyZW50VGltZSI/YVtkLm1dPWZ1bmN0aW9uKCl7dmFyIGg9dGhpcy5wbGF5ZXJJbmZvLmN1cnJlbnRUaW1lO2lmKHRoaXMucGxheWVySW5mby5wbGF5ZXJTdGF0ZT09PTEpe3ZhciBrPShEYXRlLm5vdygpLzFFMy10aGlzLnBsYXllckluZm8uY3VycmVudFRpbWVMYXN0VXBkYXRlZF8pKnRoaXMucGxheWVySW5mby5wbGF5YmFja1JhdGU7az4wJiYoaCs9TWF0aC5taW4oaywxKSl9cmV0dXJuIGh9OlRhKGQubSk/YVtkLm1dPWZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe3RoaXMucGxheWVySW5mbz17fTsKdGhpcy51PXt9O2FiKHRoaXMsaC5tLGFyZ3VtZW50cyk7cmV0dXJuIHRoaXN9fShkKTpVYShkLm0pP2FbZC5tXT1mdW5jdGlvbihoKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgaz1oLm0sZj0wOwprLnNlYXJjaCgiZ2V0Iik9PT0wP2Y9MzprLnNlYXJjaCgiaXMiKT09PTAmJihmPTIpO3JldHVybiB0aGlzLnBsYXllckluZm9bay5jaGFyQXQoZikudG9Mb3dlckNhc2UoKStrLnN1YnN0cmluZyhmKzEpXX19KGQpOmFbZC5tXT1mdW5jdGlvbihoKXtyZXR1cm4gZnVuY3Rpb24oKXthYih0aGlzLGgubSxhcmd1bWVudHMpOwpyZXR1cm4gdGhpc319KGQpKX0Kbi5nZXRWaWRlb0VtYmVkQ29kZT1mdW5jdGlvbigpe3ZhciBhPSIiK1kodGhpcywiaG9zdCIpK1hhKHRoaXMpLGI9TnVtYmVyKFkodGhpcywid2lkdGgiKSksYz1OdW1iZXIoWSh0aGlzLCJoZWlnaHQiKSk7aWYoaXNOYU4oYil8fGlzTmFOKGMpKXRocm93IEVycm9yKCJJbnZhbGlkIHdpZHRoIG9yIGhlaWdodCBwcm9wZXJ0eSIpO2I9TWF0aC5mbG9vcihiKTtjPU1hdGguZmxvb3IoYyk7dmFyIGQ9dGhpcy52aWRlb1RpdGxlO2E9S2EoYSk7ZD1LYShkIT1udWxsP2Q6IllvdVR1YmUgdmlkZW8gcGxheWVyIik7cmV0dXJuJzxpZnJhbWUgd2lkdGg9IicrYisnIiBoZWlnaHQ9IicrYysnIiBzcmM9IicrYSsnIiB0aXRsZT0iJysoZCsnIiBmcmFtZWJvcmRlcj0iMCIgYWxsb3c9ImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmU7IHdlYi1zaGFyZSIgcmVmZXJyZXJwb2xpY3k9InN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4iIGFsbG93ZnVsbHNjcmVlbj48L2lmcmFtZT4nKX07Cm4uZ2V0T3B0aW9ucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51Lm5hbWVzcGFjZXM/YT90aGlzLnVbYV0/dGhpcy51W2FdLm9wdGlvbnN8fFtdOltdOnRoaXMudS5uYW1lc3BhY2VzfHxbXTpbXX07Cm4uZ2V0T3B0aW9uPWZ1bmN0aW9uKGEsYil7aWYodGhpcy51Lm5hbWVzcGFjZXMmJmEmJmImJnRoaXMudVthXSlyZXR1cm4gdGhpcy51W2FdW2JdfTsKZnVuY3Rpb24gWShhLGIpe2E9W2Eub3B0aW9ucyx3aW5kb3cuWVRDb25maWd8fHt9XTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXVtiXTtpZihkIT09dm9pZCAwKXJldHVybiBkfXJldHVybiBudWxsfQp2YXIgWj1udWxsLGdiPW51bGw7ZnVuY3Rpb24gaGIoYSl7aWYoYS50YWdOYW1lLnRvTG93ZXJDYXNlKCkhPT0iaWZyYW1lIil7dmFyIGI9VyhhLCJ2aWRlb2lkIik7YiYmKGI9e3ZpZGVvSWQ6Yix3aWR0aDpXKGEsIndpZHRoIiksaGVpZ2h0OlcoYSwiaGVpZ2h0Iil9LG5ldyBYKGEsYikpfX0KZnVuY3Rpb24gY2IoYSxiLGMpe1p8fChaPXt9LGdiPW5ldyBTZXQsaWIuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24oZCl7YTppZihnYi5oYXMoZC5vcmlnaW4pKXt0cnl7dmFyIGg9SlNPTi5wYXJzZShkLmRhdGEpfWNhdGNoKGUpe2JyZWFrIGF9dmFyIGs9WltoLmlkXTtpZihrJiZkLm9yaWdpbj09PWsuTylzd2l0Y2goZD1rLlMsZC5vPSEwLGQubyYmKEUoZC5sLGQuc2VuZE1lc3NhZ2UsZCksZC5sLmxlbmd0aD0wKSxrPWguZXZlbnQsaD1oLmluZm8sayl7Y2FzZSAiYXBpSW5mb0RlbGl2ZXJ5IjppZihCKGgpKWZvcih2YXIgZiBpbiBoKWguaGFzT3duUHJvcGVydHkoZikmJihkLnVbZl09aFtmXSk7YnJlYWs7Y2FzZSAiaW5mb0RlbGl2ZXJ5IjplYihkLGgpO2JyZWFrO2Nhc2UgImluaXRpYWxEZWxpdmVyeSI6QihoKSYmKGNsZWFySW50ZXJ2YWwoZC5oKSxkLnBsYXllckluZm89e30sZC51PXt9LGZiKGQsaC5hcGlJbnRlcmZhY2UpLGViKGQsaCkpO2JyZWFrO2Nhc2UgImFscmVhZHlJbml0aWFsaXplZCI6Y2xlYXJJbnRlcnZhbChkLmgpOwpicmVhaztjYXNlICJyZWFkeVRvTGlzdGVuIjpiYihkKTticmVhaztkZWZhdWx0OmQuaS5pfHwoZj17dGFyZ2V0OmQsZGF0YTpofSxkLmkuRyhrLGYpLFNhKCJwbGF5ZXIuIitrLGYpKX19fSkpOwpaW2JdPXtTOmEsTzpjfTtnYi5hZGQoYyl9CnZhciBpYj13aW5kb3c7RCgiWVQuUGxheWVyU3RhdGUuVU5TVEFSVEVEIiwtMSk7RCgiWVQuUGxheWVyU3RhdGUuRU5ERUQiLDApO0QoIllULlBsYXllclN0YXRlLlBMQVlJTkciLDEpO0QoIllULlBsYXllclN0YXRlLlBBVVNFRCIsMik7RCgiWVQuUGxheWVyU3RhdGUuQlVGRkVSSU5HIiwzKTtEKCJZVC5QbGF5ZXJTdGF0ZS5DVUVEIiw1KTtEKCJZVC5nZXQiLGZ1bmN0aW9uKGEpe3JldHVybiBUW2FdfSk7CkQoIllULnNjYW4iLFJhKTtEKCJZVC5zdWJzY3JpYmUiLGZ1bmN0aW9uKGEsYixjKXtVLnN1YnNjcmliZShhLGIsYyk7VlthXT0hMDtmb3IodmFyIGQgaW4gVClULmhhc093blByb3BlcnR5KGQpJiZaYShUW2RdLGEpfSk7CkQoIllULnVuc3Vic2NyaWJlIixmdW5jdGlvbihhLGIsYyl7VS51bnN1YnNjcmliZShhLGIsYyl9KTsKRCgiWVQuUGxheWVyIixYKTtYLnByb3RvdHlwZS5kZXN0cm95PVgucHJvdG90eXBlLmRlc3Ryb3k7WC5wcm90b3R5cGUuc2V0U2l6ZT1YLnByb3RvdHlwZS5zZXRTaXplO1gucHJvdG90eXBlLmdldElmcmFtZT1YLnByb3RvdHlwZS5nZXRJZnJhbWU7WC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1YLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyO1gucHJvdG90eXBlLmdldFZpZGVvRW1iZWRDb2RlPVgucHJvdG90eXBlLmdldFZpZGVvRW1iZWRDb2RlO1gucHJvdG90eXBlLmdldE9wdGlvbnM9WC5wcm90b3R5cGUuZ2V0T3B0aW9ucztYLnByb3RvdHlwZS5nZXRPcHRpb249WC5wcm90b3R5cGUuZ2V0T3B0aW9uO1FhLnB1c2goZnVuY3Rpb24oYSl7dmFyIGI9YTtifHwoYj1kb2N1bWVudCk7YT1wYShiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJ5dDpwbGF5ZXIiKSk7Yj1wYSgoYnx8ZG9jdW1lbnQpLnF1ZXJ5U2VsZWN0b3JBbGwoIi55dC1wbGF5ZXIiKSk7RShvYShhLGIpLGhiKX0pOwp0eXBlb2YgWVRDb25maWchPT0idW5kZWZpbmVkIiYmWVRDb25maWcucGFyc2V0YWdzJiZZVENvbmZpZy5wYXJzZXRhZ3MhPT0ib25sb2FkInx8UmEoKTt2YXIgamI9QS5vbllUUmVhZHk7amImJmpiKCk7dmFyIGtiPUEub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk7a2ImJmtiKCk7dmFyIGxiPUEub25Zb3VUdWJlUGxheWVyQVBJUmVhZHk7bGImJmxiKCk7fSkuY2FsbCh0aGlzKTsK"}},"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":"www.tradingview-widget.com/static/bundles/embed/26592.1c6123902bc88eba9d57.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.490Z","timestamp":1785154590490,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/26592.1c6123902bc88eba9d57.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-b8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:05:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 0ca77895c79649778db0704538d7f282\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":184,"size_decoded":907,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"1e35cc892131dc9a5005f6c33ce91793","sha1":"fa3cf716c89cbdd9464f06543e58af78db9bd878","sha256":"728a947152ebfdc18901fee9c68a7e71a41bf7db1d84cea3678ec4b42c3a0093","sha512":"a9dc2d65e4ccdda8745b25924d4526227e8fbd8c22be80d3215c60993155996d7f5910cf1ede7b6fe0a2624b72c20652b9cb784bce6ecb01538f73296453ee76","ssdeep":"","tlshash":"efc022107240002f7223803802281a9e43880192a82c8f7eb5b0307616422d90b11408","first_seen":"2026-07-17T06:02:50.721637Z","last_seen":"2026-07-27T14:14:25.365735Z","times_seen":147,"resource_available":false,"data":"LmNhcmQtZXh0ZXJpb3ItcExLU29FOVN7Ym9yZGVyLXJhZGl1czoxNnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjhweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmNhcmQtZXh0ZXJpb3ItcExLU29FOVM6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeSl9fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32816.355d75b21ae4b534a849.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.505Z","timestamp":1785154590505,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32816.355d75b21ae4b534a849.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-102a\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: dd3579dd2a725e683e96d3e7495f7ddb\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":4138,"size_decoded":1890,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4138), with no line terminators","md5":"1769fde9875fdbb634439ca894f9dbe9","sha1":"44ac405e2cfa40ef07cbca4bf97d2226e51258d3","sha256":"8b2250108bfd0dcb2848b28cd1bf2fec55df68d3105b3bf87664cfd86cf2ff10","sha512":"b537406a03c65c8c9859d1e4cb17c37e062cc846b9e763763bbbfa0670ed74ffd1a3f571e5e7654a7b809c6810990a95babd6183fced394492ae1095b4193bcf","ssdeep":"48:D+GIP+GI2LrVLjVQqpz5Cw83JJMeFtQSphXivmRE0r/VC5WNHC5mNVd:DaRLBLpQqpVv0JKOTphXiuREIVweHwmZ","tlshash":"f5814858835c4dafbb2647826762fc582164e3feb2324b6c534924fd46b4d6d39332c5","first_seen":"2026-07-16T11:36:17.974176Z","last_seen":"2026-07-27T14:18:36.41289Z","times_seen":1819,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtODRvdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLTg0b3Q6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnBhaXIteHdHc1NYUjB7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmV9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDoxNHB4O3dpZHRoOjE0cHh9LnBhaXIteHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ucGFpci14d0dzU1hSMC54eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9LnBhaXIteHdHc1NYUjAuc21hbGwteHdHc1NYUjB7aGVpZ2h0OjI4cHg7d2lkdGg6MjhweH0ucGFpci14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweH0ucGFpci14d0dzU1hSMC5sYXJnZS14d0dzU1hSMHtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS5wYWlyLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NTZweDt3aWR0aDo1NnB4fS5wYWlyLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjB7aGVpZ2h0OjExMnB4O3dpZHRoOjExMnB4fS5wYWlyLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxNjhweDt3aWR0aDoxNjhweH0ucGFpci14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjEycHh9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHh9LmxvZ28teHdHc1NYUjB7Ym9yZGVyLXJhZGl1czo1MCV9LmxvZ28teHdHc1NYUjA6bm90KGltZyl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC04NG90KX0ubG9nby14d0dzU1hSMDpmaXJzdC1jaGlsZCwubG9nby14d0dzU1hSMDpsYXN0LWNoaWxke3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHg7d2lkdGg6OHB4fS5sb2dvLXh3R3NTWFIwLnh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTZweCl9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtOHB4KX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNnB4LDZweCl9LmxvZ28teHdHc1NYUjAueHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMHtoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS5sb2dvLXh3R3NTWFIwLnNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTBweCwxMHB4KX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LDEycHgpfS5sb2dvLXh3R3NTWFIwLmxhcmdlLXh3R3NTWFIwe2hlaWdodDozMnB4O3dpZHRoOjMycHh9LmxvZ28teHdHc1NYUjAubGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xNnB4LDE2cHgpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6MzhweDt3aWR0aDozOHB4fS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTE4cHgsMThweCl9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NzZweDt3aWR0aDo3NnB4fS5sb2dvLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0zNnB4LDM2cHgpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxMTRweDt3aWR0aDoxMTRweH0ubG9nby14d0dzU1hSMC54eHhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTU0cHgsNTRweCl9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwOmxhc3QtY2hpbGR7b3V0bGluZToxcHggc29saWQgdmFyKC0tdWktbGliLWJhZGdlLWFjdHVhbC1iYWNrZ3JvdW5kKX0ubG9nby14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0zLjc0ODgyIDExLjU2MzRDNS4xNDIzOSAxMC4xMjM2IDYgOC4xNjE5OCA2IDZDNiAzLjgzODAyIDUuMTQyMzkgMS44NzYzNSAzLjc0ODgyIDAuNDM2NjE3QzQuNDQzOTYgMC4xNTUwNTYgNS4yMDM4NyAtNS45NDEzNmUtMDcgNiAtNS4yNDUzN2UtMDdDOS4zMTM3MSAtMi4zNDg0M2UtMDcgMTIgMi42ODYyOSAxMiA2QzEyIDkuMzEzNzEgOS4zMTM3MSAxMiA2IDEyQzUuMjAzODcgMTIgNC40NDM5NiAxMS44NDQ5IDMuNzQ4ODIgMTEuNTYzNFoiKX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTEyIDBIMHY0YTggOCAwIDAgMSA4IDhoNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0xMiAwSDB2Ni4yNTRBOCA4IDAgMCAxIDUuNzQ2IDEySDEyWiIpfS5sb2dvLXh3R3NTWFIwLnhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE2IDhBOCA4IDAgMCAwIC4zIDZhMTAgMTAgMCAwIDEgOS43IDkuN0E4IDggMCAwIDAgMTYgOFoiKX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE4IDBIMHY4LjA0QTExIDExIDAgMCAxIDkuOTYgMThIMThWMFoiKX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0yNCAwSDB2MTBjOCAwIDE0IDYgMTQgMTRoMTBWMFoiKX0ubG9nby14d0dzU1hSMC5sYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTMyIDBIMHYxNGExOCAxOCAwIDAgMSAxOCAxOGgxNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTM4IDBIMHYxNi4wMkwxIDE2YTIxIDIxIDAgMCAxIDIwLjk4IDIySDM4VjBaIil9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTc2IDBIMHYzMi4wNUE0MiA0MiAwIDAgMSA0My45NSA3Nkg3NlYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwOmZpcnN0LWNoaWxke2NsaXAtcGF0aDpwYXRoKCJNMTEzIDBIMFY0OGMzNS0xIDY2IDI2IDY2IDY2djBoNDhWMFoiKX0uc2tlbGV0b24teHdHc1NYUjB7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9LmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tbGlnaHQuNmQwYjczMWFjNmY0ODlmMDZlNjUuc3ZnKTtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbn1odG1sLnRoZW1lLWRhcmsgLmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tZGFyay5kNmQwN2JmZjkyZDdlNGRmZjVhZC5zdmcpfQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80207.3e5e7d68c875b367cad0.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.555Z","timestamp":1785154590555,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80207.3e5e7d68c875b367cad0.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a3a25bf-d2fc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 23 Jun 2026 06:20:47 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/23/2026 10:37:07\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5d98f9643dd8e341d1eb9a125616fd72\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":54012,"size_decoded":13968,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (51870)","md5":"efb45a2a5e9dedce76162279dc170b0e","sha1":"38843307f1bc14de893dfe253b89aa9ec4532bfa","sha256":"c4adc1700ca5f8538ca44843bf76da33e0bc360cdf11ff0ddafbd8856c5bad4d","sha512":"3ef5908b8c8ed8de392171a9c51bbea83f11fdb7542f8fb58439589ee43db4b6785bdb1a3e71993950d28351eb79c5548d8567cfb5f4a5991ab3488d323d675e","ssdeep":"1536:guE5AIu9J3vqcJNT6FuEckfLVnddIwc99EkRIWEEPk2SYHj28kxu:DGxu95vqcHT6gT8VnddPgTRCEgYDDkxu","tlshash":"7f33a56091880f44656183d0bcff24602d9c3d5b4ab665bcde9f0d5b4e99ac83e3bd3a","first_seen":"2026-06-24T00:20:51.960912Z","last_seen":"2026-07-27T14:22:59.685731Z","times_seen":415,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbODAyMDddLHszODAyMDcobCxpLG4pe24uZChpLHt0cmllc1RyYW5zbGF0ZVNjcmVlbmVyRGF0YTooKT0+dX0pO3ZhciB0PW4oMTg1MjcxKTtjb25zdCBlPW5ldyBNYXAoW1siQmFzaWMgTWF0ZXJpYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDAxMTY4KSldLFsiQ2FwaXRhbCBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4NjU4OSkpXSxbIkNvbW1lcmNpYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0Mzc3MDEpKV0sWyJDb21tdW5pY2F0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1ODE4KSldLFsiQ29uZ2xvbWVyYXRlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcyMTMzMykpXSxbIkNvbnN1bWVyIEN5Y2xpY2FsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTU5MjUyKSldLFsiQ29uc3VtZXIgQ3ljbGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ1Mzk1KSldLFsiQ29uc3VtZXIgRHVyYWJsZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTQ4NDMpKV0sWyJDb25zdW1lciBOb24tQ3ljbGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODMxODgyKSldLFsiQ29uc3VtZXIgTm9uLUR1cmFibGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU2NDc1KSldLFsiQ29uc3VtZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTI4MDgpKV0sWyJDb25zdW1lci9Ob24tQ3ljbGljYWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjQ5KSldLFsiRGlzdHJpYnV0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTcxMzQyKSldLFsiRWxlY3Ryb25pYyBUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU5NjE1KSldLFsiRW5lcmd5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI1NTQyKSldLFsiRW5lcmd5IE1pbmVyYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTYwMzg5KSldLFsiRmluYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MjE5MykpXSxbIkZpbmFuY2lhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyODQ3OSkpXSxbIkZpbmFuY2lhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjkzMjUpKV0sWyJHb3Zlcm5tZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgzMzE4KSldLFsiSGVhbHRoIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjIwNjAxKSldLFsiSGVhbHRoIFRlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTg0NTcpKV0sWyJIZWFsdGhjYXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODA2ODY3KSldLFsiSW5kdXN0cmlhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5OTU2MCkpXSxbIkluZHVzdHJpYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc4NTcyKSldLFsiTWlzY2VsbGFuZW91cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1NzAyMykpXSxbIk5vbi1FbmVyZ3kgTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTI1MzgpKV0sWyJQcm9jZXNzIEluZHVzdHJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjA2OTgpKV0sWyJQcm9kdWNlciBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI3NjQwKSldLFsiUmV0YWlsIFRyYWRlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTkwMDY2KSldLFsiU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzcwNTkpKV0sWyJUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjcxMDc5KSldLFsiVGVjaG5vbG9neSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0MDk1MykpXSxbIlRlbGVjb21tdW5pY2F0aW9ucyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MjU4NSkpXSxbIlRyYW5zcG9ydGF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY4MzkwKSldLFsiVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODkxMTM2KSldXSkKO2NvbnN0IG89bmV3IE1hcChbWyJFeG90aWMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODA4MzIpKV0sWyJNYWpvciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0Nzc1MykpXSxbIk1pbm9yIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA2OTgzKSldLFsiQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzkwMjcpKV0sWyJBY2NvdW50aW5nICYgVGF4IFByZXBhcmF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAzMjkyKSldLFsiQWRoZXNpdmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTgzMTApKV0sWyJBZHVsdCBFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gJiBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODcwNzUpKV0sWyJBZHVsdCBQcm9kdWN0cyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTA3ODQpKV0sWyJBZHZhbmNlZCBFbGVjdHJvbmljIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwOTkzKSldLFsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgJiBUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjI5NjQwKSldLFsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk0MDMzKSldLFsiQWR2YW5jZWQgUG9seW1lciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4MDM0MCkpXSxbIkFkdmVudHVyZSBTcG9ydHMgRmFjaWxpdGllcyAmIFNraSBSZXNvcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc1ODc2KSldLFsiQWR2ZXJ0aXNpbmcgJiBNYXJrZXRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjgzNjkpKV0sWyJBZHZlcnRpc2luZy9NYXJrZXRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODU2NzcpKV0sWyJBZHZlcnRpc2luZyBBZ2VuY3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY4NjkpKV0sWyJBZXJvc3BhY2UgJiBEZWZlbnNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMwOTY5KSldLFsiQWdyaWN1bHR1cmFsIEJpb3RlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODUxNTApKV0sWyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2Mjg3OCkpXSxbIkFncmljdWx0dXJhbCBDaGVtaWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTE2NzIpKV0sWyJBZ3JpY3VsdHVyYWwgQ29tbW9kaXRpZXMvTWlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwMjY4MCkpXSxbIkFncmljdWx0dXJhbCBNYWNoaW5lcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODIxMDEpKV0sWyJBZ3JpY3VsdHVyZSBTdXBwb3J0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg3MzkyKSldLFsiQWlyICYgR2FzIENvbXByZXNzb3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA4OTY0KSldLFsiQWlyIEZyZWlnaHQgJiBDb3VyaWVyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODA3MDQyKSldLFsiQWlyIEZyZWlnaHQgJiBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjQ4MTApKV0sWyJBaXIgRnJlaWdodCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwNDg0NikpXSxbIkFpciBGcmVpZ2h0L0NvdXJpZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkwNDkzKSldLFsiQWlyIEZyZWlnaHQvRGVsaXZlcnkgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NjgzMzYpKV0sWyJBaXJjcmFmdCBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ4MDkxKSldLFsiQWlyY3JhZnQgUGFydHMgTWFudWZhY3R1cmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwMjE3MSkpXSxbIkFpcmxpbmUgQ2F0ZXJpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDgyNzYpKV0sWyJBaXJsaW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MDQwMykpXSxbIkFpcnBvcnQgT3BlcmF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzg2NDcwKSldLFsiQWlycG9ydCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwMjMwMykpXSxbIkFsbCBPdGhlciBGb29kIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjIwMTYpKV0sWyJBbHRlcm5hdGl2ZSBNZWRpY2luZSBGYWNpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjEwMDgxKSldLFsiQWx0ZXJuYXRpdmUgTWVkaWNpbmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTQ1MDApKV0sWyJBbHRlcm5hdGl2ZSBQb3dlciBHZW5lcmF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk1NzQ1KSldLFsiQWx1bWludW0gUm9sbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIwNzc3MSkpXSxbIkFsdW1pbnVtIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY3OTkzKSldLFsiQW1idWxhbmNlICYgRW1lcmdlbmN5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgxMDg4KSldLFsiQW11c2VtZW50IFBhcmtzIGFuZCBab29zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE5NTMpKV0sWyJBbmltYWwgQnJlZWRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzM4MzQpKV0sWyJBbmltYWwgRmVlZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MDY4NCkpXSxbIkFuaW1hbCBTbGF1Z2h0ZXJpbmcgJiBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQzODY2KSldLFsiQW50aXF1ZSBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzgwMzUwKSldLFsiQXBwYXJlbCAmIEFjY2Vzc29yaWVzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NTcyNSkpXSxbIkFwcGFyZWwgJiBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MTc4NykpXSxbIkFwcGFyZWwgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTI4MDkpKV0sWyJBcHBhcmVsL0Zvb3R3ZWFyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI2NzM0KSldLFsiQXBwYXJlbC9Gb290d2VhciBSZXRhaWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDI5ODQpKV0sWyJBcHBsaWFuY2UgJiBIb3VzZXdhcmUgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzAyNDQ3KSldLFsiQXBwbGlhbmNlcywgVG9vbHMgJiBIb3VzZXdhcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE4NDApKV0sWyJBcHBsaWNhdGlvbiBTb2Z0d2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0MjE1NCkpXSxbIkFxdWFjdWx0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgxMjYwKSldLFsiQXJtcyAmIEFtbXVuaXRpb25zIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODY0NjUpKV0sWyJBdXRvICYgVHJ1Y2sgTWFudWZhY3R1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyNTY2MikpXSxbIkF1dG8gJiBUcnVjayBQYXJ0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzU1NzkpKV0sWyJBdXRvICYgVHJ1Y2sgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODc4NzIzKSldLFsiQXV0byBDbGVhbmluZyBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1ODIzNSkpXSxbIkF1dG8gUGFydHM6IE9FTSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MDEyKSldLFsiQXV0byBWZWhpY2xlcywgUGFydHMgJiBTZXJ2aWNlIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5Njk3MikpXSxbIkF1dG8sIFRydWNrICYgTW90b3JjeWNsZSBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MTk4MykpXSxbIkF1dG9tYXRpYyBWZW5kaW5nIE1hY2hpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY1MjIyKSldLFsiQXV0b21vdGl2ZSBBZnRlcm1hcmtldCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0MzE1NykpXSxbIkF1dG9tb2JpbGVzICYgTXVsdGkgVXRpbGl0eSBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5ODY2MikpXSxbIkF1dG9tb3RpdmUgQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjk2NDYpKV0sWyJBdXRvbW90aXZlIEJhdHRlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE3NTc0NCkpXSxbIkF1dG9tb3RpdmUgQm9keSBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NTU5MSkpXSxbIkF1dG9tb3RpdmUgUGFydHMgJiBBY2Nlc3NvcmllcyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NTcwODkpKV0sWyJBdXRvbW90aXZlIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTcyNTQpKV0sWyJCYWJ5IEZvb2QiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDg1NDkpKV0sWyJCYWxsICYgUm9sbGVyIEJlYXJpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg4OTY5KSldLFsiQmFua3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0OTc4MzcpKV0sWyJCYW5xdWV0IEhhbGxzICYgQ2F0ZXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjQ1OTUpKV0sWyJCYXRocm9vbSBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUzNTkwOCkpXSxbIkJhdHRlcmllcyAmIFVuaW50ZXJydXB0aWJsZSBQb3dlciBzdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4ODU1MikpXSxbIkJhdXhpdGUgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDk4Mjg4KSldLFsiQmVhdXR5IFN1cHBseSBTaG9wIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjczMTQyKSldLFsiQmVlZiAmIFZlYWwgRmFybWluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMTE2KSldLFsiQmVlciwgV2luZSAmIExpcXVvciBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDk2MzYpKV0sWyJCZXZlcmFnZXM6IEFsY29ob2xpYyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY1NzQ3MSkpXSxbIkJldmVyYWdlczogTm9uLUFsY29ob2xpYyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5Mzg4NSkpXSxbIkJldmVyYWdlcyAoUHJvZHVjdGlvbi9EaXN0cmlidXRpb24pIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkyODY2KSldLFsiQmljeWNsZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk0NzM4KSldLFsiQmlvIERpYWdub3N0aWNzICYgVGVzdGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNTE1NykpXSxbIkJpbyBNZWRpY2FsIERldmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzIzMTYpKV0sWyJCaW8gVGhlcmFwZXV0aWMgRHJ1Z3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NDgyNDkpKV0sWyJCaW9kaWVzZWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTYyNikpXSxbIkJpb21hc3MgJiBCaW9nYXMgRnVlbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTcyMzkpKV0sWyJCaW9tZXRyaWMgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2Mzc0MDkpKV0sWyJCaW9waGFybWFjZXV0aWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNDU3NTMpKV0sWyJCaW90ZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTc5NDEzKSldLFsiQmlvdGVjaG5vbG9neSAmIE1lZGljYWwgUmVzZWFyY2giLCgpPT50LnQobnVsbCx2b2lkIDAsbig4OTIxNDMpKV0sWyJCaXJ0aCBDb250cm9sIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA0NzU3KSldLFsiQm9vayAmIE1hZ2F6aW5lIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk3NjM0NikpXSxbIkJvb2sgUHJpbnRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDYyNDcpKV0sWyJCb29rIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTAxODIpKV0sWyJCb3R0bGVkIFdhdGVyICYgSWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk2NzAwKSldLFsiQnJhbmRpbmcgJiBOYW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjEzOTkpKV0sWyJCcmVhZCAmIEJha2VyeSBQcm9kdWN0IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODkxODApKV0sWyJCcmVha2Zhc3QgQ2VyZWFsIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDMwNDIpKV0sWyJCcmV3ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDgwNDEzKSldLFsiQnJvYWRjYXN0aW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1MTk2MykpXSxbIkJyb2FkY2FzdGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODYxNikpXSxbIkJyb2tlcmFnZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyODQ4MSkpXSxbIkJyb29tcywgQnJ1c2hlcyAmIER1c3RwYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU1MDc3KSldLFsiQnVpbGRlciBNZXJjaGFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjE3MTcpKV0sWyJCdWlsZGluZyBDb250cmFjdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NjcxOSkpXSxbIkJ1aWxkaW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU3MjM0KSldLFsiQnVzaW5lc3MgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzI2NDcpKV0sWyJCdXNpbmVzcyBTdXBwb3J0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTczNSkpXSxbIkJ1c2luZXNzIFN1cHBvcnQgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzAyOTkpKV0sWyJDYWJsZSBTZXJ2aWNlIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxMjgyNikpXSxbIkNhYmxlL1NhdGVsbGl0ZSBUViIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxMjg4NykpXSxbIkNhZmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzI5ODMwKSldLFsiQ2FsbCBDZW50ZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjQ4MzQpKV0sWyJDYXJib24gQ2FwdHVyZSAmIFN0b3JhZ2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzUxMjEpKV0sWyJDYXJib25hdGVkIFNvZnQgRHJpbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzMwNTczKSldLFsiQ2FycGV0cyAmIEN1cnRhaW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzkxNzYpKV0sWyJDYXNpbm9zICYgR2FtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU4MjU2KSldLFsiQ2FzaW5vcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwNjIwNykpXSxbIkNhc2lub3MvR2FtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODU3MzQ1KSldLFsiQ2FzdWFsdHkgSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTEwNDY4KSldLFsiQ2F0YWxvZy9TcGVjaWFsdHkgRGlzdHJpYnV0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE1NzA1KSldLFsiQ2VsbHVsYXIgRmliZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDM1MTgpKV0sWyJDZW1lbnQgJiBDb25jcmV0ZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA4NDU2KSldLFsiQ2hhcnRlciAmIFByaXZhdGUgQWlyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk1NDQxKSldLFsiQ2hhcnRlciBCdXMgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTg0OTYpKV0sWyJDaGVtaWNhbHM6IEFncmljdWx0dXJhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MDE5MSkpXSxbIkNoZW1pY2FsczogTWFqb3IgRGl2ZXJzaWZpZWQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzM3MikpXSxbIkNoZW1pY2FsczogU3BlY2lhbHR5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYzMDU1KSldLFsiQ2hpbGQgQ2FyZSAmIEZhbWlseSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0MTUyNikpXSxbIkNoaWxkcmVuICYgSW5mYW50cyBDbG90aGluZyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODY4NTgpKV0sWyJDaGlsZHJlbiAmIEluZmFudHMgQ2xvdGhpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3Mzg0MzIpKV0sWyJDaG9jb2xhdGUgJiBDb25mZWN0aW9uZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ4OTA5KSldLFsiQ2lnYXJzICYgQ2lnYXJldHRlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDM2ODcpKV0sWyJDaXZpbCBFbmdpbmVlcnMgJiBBcmNoaXRlY3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc0ODk1KSldLFsiQ2xlYW5pbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjUxOTgpKV0sWyJDbGVhcmluZywgU2V0dGxlbWVudCAmIEN1c3RvZGlhbCBTZXJ2aWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA0NDM3KSldLFsiQ2xvc2VkIEVuZCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4OTg0KSldLFsiQ2xvdWQgQ29tcHV0aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk3NTM0KSldLFsiQ29hbCBNaW5pbmcgU3VwcG9ydCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxMDQpKV0sWyJDb2FsIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgzNTg5NCkpXSxbIkNvYWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODM3NDApKV0sWyJDb2ZmZWUgJiBUZWEiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjcwODQpKV0sWyJDb2ZmZWUsIFRlYSAmIENvY29hIEZhcm1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTUwMikpXSxbIkNva2UgQ29hbCBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjM4MDkpKV0sWyJDb2xsZWN0aXZlIEludmVzdG1lbnQgRnVuZCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTg2NzMpKV0sWyJDb2xvcmluZyBBZ2VudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5MjY3OSkpXSxbIkNvbW1lcmNpYWwgQWlyY3JhZnQgTWFudWZhY3R1cmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQxNTY5KSldLFsiQ29tbWVyY2lhbCBCYW5rcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2NzU4MykpXSxbIkNvbW1lcmNpYWwgQnVpbGRpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg5MjM4KSldLFsiQ29tbWVyY2lhbCBEb2N1bWVudCBNYW5hZ2VtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODAyNTE5KSldLFsiQ29tbWVyY2lhbCBFcXVpcG1lbnQgUmVudGFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjkyNTE2KSldLFsiQ29tbWVyY2lhbCBGaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc5ODM1KSldLFsiQ29tbWVyY2lhbCBGb29kIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTM1MDcpKV0sWyJDb21tZXJjaWFsIExlYXNpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NDk1MTApKV0sWyJDb21tZXJjaWFsIExvYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU4OTc5KSldLFsiQ29tbWVyY2lhbCBOdXJzZXJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjUxNjMpKV0sWyJDb21tZXJjaWFsIFByaW50aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY2NDAyKSldLFsiQ29tbWVyY2lhbCBQcmludGluZy9Gb3JtcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1NzkzNSkpXSxbIkNvbW1lcmNpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NDcyMzIpKV0sWyJDb21tb2RpdHkgQ2hlbWljYWxzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1ODA4NSkpXSxbIkNvbW1vZGl0eSBDaGVtaWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTI5MTMpKV0sWyJDb21tdW5pY2F0aW9uICYgU2F0ZWxsaXRlIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4NzUyKSldLFsiQ29tbXVuaWNhdGlvbnMgJiBOZXR3b3JraW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg1Njg4KSldLFsiQ29tbXV0ZXIgRmVycnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDUyMDkpKV0sWyJDb21tdXRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTY2NjEpKV0sWyJDb21wdXRlciBDb21tdW5pY2F0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxNzI2MykpXSxbIkNvbXB1dGVyICYgRWxlY3Ryb25pY3MgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjI1MDI4KSldLFsiQ29tcHV0ZXIgSGFyZHdhcmUgJiBTb2Z0d2FyZSBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTI2NjUpKV0sWyJDb21wdXRlciBIYXJkd2FyZSBDb21wb25lbnQgQXNzZW1ibHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODIyMTcpKV0sWyJDb21wdXRlciBIYXJkd2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2NTQyMikpXSxbIkNvbXB1dGVyIFBlcmlwaGVyYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzk0OTQpKV0sWyJDb21wdXRlciBQcm9jZXNzaW5nIEhhcmR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzI1ODMwKSldLFsiQ29tcHV0ZXIgUHJvZ3JhbW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzA3NCkpXSxbIkNvbnN1bWVyIFN1bmRyaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODQ3Mzk4KSldLFsiQ29tcHV0ZXIgVHJhaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4OTY0NSkpXSxbIkNvbmZlcmVuY2luZyBUb29scyAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMzA4MzMpKV0sWyJDb250YWluZXJzL1BhY2thZ2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTM0OSkpXSxbIkNvbnRyYWN0IERyaWxsaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk2NTI1KSldLFsiQ29uc3RydWN0aW9uICYgRW5naW5lZXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzU5NDcpKV0sWyJDb25zdHJ1Y3Rpb24gTWFjaGluZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjYyODE0KSldLFsiQ29uc3RydWN0aW9uIE1hdGVyaWFsIFByb2Nlc3NpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzg1OTQpKV0sWyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWwgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTk2NykpXSxbIkNvbnN0cnVjdGlvbiBNYXRlcmlhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDE0ODIpKV0sWyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMgJiBGaXh0dXJlcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY4MzkpKV0sWyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMgJiBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNDI3MykpXSxbIkNvbnN0cnVjdGlvbiBTdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NzQ1NCkpXSxbIkNvbnN1bWVyIENyZWRpdCBDYXJkcyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NzkwOCkpXSxbIkNvbnN1bWVyIERvY3VtZW50IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzE5ODMpKV0sWyJDb25zdW1lciBFbGVjdHJvbmljIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkyNDM5MykpXSxbIkNvbnN1bWVyIEVsZWN0cm9uaWNzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1NTA4OCkpXSxbIkNvbnN1bWVyIEVsZWN0cm9uaWNzL0FwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjg0KSldLFsiQ29uc3VtZXIgR29vZHMgUmVudGFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkwNzE2KSldLFsiQ29uc3VtZXIgTGVhc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NDY2NikpXSxbIkNvbnN1bWVyIExlbmRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMTkzOTMpKV0sWyJDb25zdW1lciBQdWJsaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTY5MjkxKSldLFsiQ29uc3VtZXIgUmVwYWlyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIyNTI5KSldLFsiQ29udGFpbmVyICYgUGFja2FnaW5nIE1hdGVyaWFsIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2OTQzNikpXSxbIkNvbnRlbnQgJiBTaXRlIE1hbmFnZW1lbnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTc5MzQpKV0sWyJDb29raWUsIENyYWNrZXIgJiBQYXN0YSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzIzMjgyKSldLFsiQ29wcGVyIE9yZSAgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIyNzU5KSldLFsiQ29weXJpZ2h0IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjQ0MDYpKV0sWyJDb3Jwb3JhdGUgQWNjb3VudGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3MjIzOSkpXSxbIkNvcnBvcmF0ZSBGaW5hbmNpYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTA3NDMpKV0sWyJDb3NtZXRpY3MgJiBQZXJmdW1lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0Mzc3OCkpXSxbIkNvdXJpZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjUxNzgpKV0sWyJDcmFmdCAmIE1pY3JvIEJyZXdlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDk5ODIpKV0sWyJDcmVkaXQgVW5pb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc0NzI4KSldLFsiQ3J1aXNlIExpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzU5NTMwKSldLFsiQ3V0bGVyeSAmIEZsYXR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTY1ODgzKSldLFsiRGFpcnkgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODkwMTUpKV0sWyJEYXRhIFByb2Nlc3NpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODQ3ODApKV0sWyJEZWVwIFNlYSBGcmVpZ2h0IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI0NDAzKSldLFsiRGVwYXJ0bWVudCBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTUxMDUpKV0sWyJEZXBhcnRtZW50L1NwZWNpYWx0eSBSZXRhaWwgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM2OTcwKSldLFsiRGVzaWduIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzAyMjA2KSldLFsiRGlhZ25vc3RpYyAmIFRlc3RpbmcgU3Vic3RhbmNlcyBNYW51ZmFjdHVyZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTg4MTIxKSldLFsiRGlhZ25vc3RpYyAmIFRlc3RpbmcgU3Vic3RhbmNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3ODU3MSkpXSxbIkRpYW1vbmQgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTUyMDg5KSldLFsiRGlnaXRhbCBNZWRpYSBBZ2VuY2llcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzNzM3NykpXSxbIkRpZ2l0YWwgUHVibGlzaGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQzNjQ4MCkpXSxbIkRpcmVjdCBNYXJrZXRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTE0OTYpKV0sWyJEaXJlY3RvcnkgUHVibGlzaGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg2NTAzMSkpXSxbIkRpc2NvdW50IFN0b3JlcyB3aXRoIGdyb2NlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNzE4NCkpXSxbIkRpc2NvdW50IFN0b3JlcyB3aXRob3V0IGdyb2NlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5NTEyNCkpXSxbIkRpc2NvdW50IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUxODExNykpXSxbIkRpc3BsYXkgU2NyZWVucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5OTgyNCkpXSxbIkRpc3RpbGxlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzMDIwKSldLFsiRGlzdGlsbGVycyAmIFdpbmVyaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU4MDk1KSldLFsiRGl2ZXJzaWZpZWQgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODgyOTE5KSldLFsiRGl2ZXJzaWZpZWQgSW52ZXN0bWVudCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2OTE4NSkpXSxbIkRpdmVyc2lmaWVkIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYwMDYpKV0sWyJEaXZlcnNpZmllZCBUcmFkaW5nICYgRGlzdHJpYnV0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTAzNzMxKSldLFsiRG9jdG9yJ3MgT2ZmaWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODMyNTYyKSldLFsiRG9sbHMgJiBTdHVmZmVkIFRveXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjQ1NykpXSxbIkRvb3JzICYgV2luZG93IEZyYW1lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MjE0MykpXSxbIkRydWcgRGVsaXZlcnkgU3lzdGVtcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2MTA2MCkpXSxbIkRydWcgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU5MjA2KSldLFsiRHJ1Z3N0b3JlIENoYWlucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5Njc3MikpXSxbIkUtY29tbWVyY2UgJiBBdWN0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDcwMTA1KSldLFsiRWR1Y2F0aW9uICYgVHJhaW5pbmcgSW5mb3JtYXRpb24gUHJvdmlkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQzMDgyKSldLFsiRWR1Y2F0aW9uYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDQyNjApKV0sWyJFbGVjdHJpYyBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzQ3ODIpKV0sWyJFbGVjdHJpYyBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzg3MTcwKSldLFsiRWxlY3RyaWMgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODExODcwKSldLFsiRWxlY3RyaWMgVXRpbGl0aWVzOiBDZW50cmFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ2NzExKSldLFsiRWxlY3RyaWNhbCAoQWx0ZXJuYXRpdmUpIFZlaGljbGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTk5MDE0KSldLFsiRWxlY3RyaWNhbCBDb21wb25lbnRzICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDYxMjI3KSldLFsiRWxlY3RyaWNhbCBNZWFzdXJpbmcgJiBUZXN0aW5nIEluc3RydW1lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE2NTM3KSldLFsiRWxlY3RyaWNhbCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxNDQ0MCkpXSxbIkVsZWN0cm9uIFR1YmVzICYgSW5zdWxhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMTQ2NSkpXSxbIkVsZWN0cm9uaWMgQ29tcG9uZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY4NTYwKSldLFsiRWxlY3Ryb25pYyBDb21wb25lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDQ5NDE5KSldLFsiRWxlY3Ryb25pYyBFcXVpcG1lbnQgJiBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1NDA0NykpXSxbIkVsZWN0cm9uaWMgRXF1aXBtZW50cyAmIFBhcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzczMTQ0KSldLFsiRWxlY3Ryb25pYyBFcXVpcG1lbnQvSW5zdHJ1bWVudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTYzMTYpKV0sWyJFbGVjdHJvbmljIFByb2R1Y3Rpb24gRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk0NzM3KSldLFsiRWxlY3Ryb25pYyBSZXBhaXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NTQzMikpXSxbIkVsZWN0cm9uaWNzIERpc3RyaWJ1dG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwMjI0NykpXSxbIkVsZWN0cm9uaWNzL0FwcGxpYW5jZSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzcwMDkpKV0sWyJFbGVjdHJvbmljcy9BcHBsaWFuY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYwMDM3KSldLFsiRWxldmF0b3IgJiBDb252ZXlpbmcgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNDU5KSldLFsiRW1wbG95bWVudCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTc5MCkpXSxbIkVuZXJneSBEcmlua3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjc3NjApKV0sWyJFbmdpbmUgJiBQb3dlcnRyYWluIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTczMDQpKV0sWyJFbmdpbmVlcmluZyAmIENvbnN0cnVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMzI2MikpXSxbIkVudGVycHJpc2UgU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzQ0ODEpKV0sWyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gRXF1aXBtZW50ICYgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTg3NjcpKV0sWyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTgwMTEpKV0sWyJFbnZpcm9ubWVudGFsIEJpb3RlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMDUyMDkpKV0sWyJFbnZpcm9ubWVudGFsIENvbnN1bHRhbmN5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgwNjcyKSldLFsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwNzAxNykpXSxbIkVudmlyb25tZW50YWwgU2VydmljZXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTAwOTApKV0sWyJFcG94eSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg3MzQwMykpXSxbIkV0aGFub2wgRnVlbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTA2MjMpKV0sWyJFeGNoYW5nZSBUcmFkZWQgRnVuZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0ODc1MykpXSxbIkV4Y2hhbmdlIFRyYWRlZCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMjUzMikpXSxbIkV4ZWN1dGl2ZSBTZWFyY2ggU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTkzMTYpKV0sWyJFeGhpYml0aW9uICYgQ29uZmVyZW5jZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxOTE3NykpXSxbIkV4cGxvc2l2ZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTEyNTEpKV0sWyJGYWJyaWMgRHllaW5nICYgRmluaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgwNjU4KSldLFsiRmFjdG9yaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUyNDMwKSldLFsiRmFzaGlvbiBFeWV3ZWFyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQ1NTE2KSldLFsiRmVydGlsaXplciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNjA2NCkpXSxbIkZpYmVyIE9wdGljIENhYmxlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTQ4NSkpXSxbIkZpbmFuY2U6IENvbnN1bWVyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY1OTA1KSldLFsiRmluYW5jZS9SZW50YWwvTGVhc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5MjI5NikpXSxbIkZpbmFuY2lhbCBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTAwMjQ3KSldLFsiRmluYW5jaWFsICYgQ29tbW9kaXR5IE1hcmtldCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MjA2NDIpKV0sWyJGaW5hbmNpYWwgSW5mb3JtYXRpb24gUHJvdmlkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjE0NDMzKSldLFsiRmluYW5jaWFsIFB1Ymxpc2hpbmcvU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MzcyNjQpKV0sWyJGaW5hbmNpYWwgVGVjaG5vbG9neSAmIEluZnJhc3RydWN0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDQzNDk2KSldLFsiRmlzaGluZyAmIEZhcm1pbmcgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjE2MTg5KSldLFsiRmlzaGluZyAmIEZhcm1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDE2OTUpKV0sWyJGbG9vciBDb3ZlcmluZyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODU0MjkpKV0sWyJGbG9vcmluZyAmIEludGVyaW9yIFRpbGUgTWFudWZhY3R1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODYyOCkpXSxbIkZsb3Jpc3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg5NDg3KSldLFsiRmxvdXIgTWlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5ODIzNykpXSxbIkZsdWlkIFBvd2VyIEN5bGluZGVyICYgQWN0dWF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc1MjI1KSldLFsiRm9vZCBEaXN0cmlidXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MzI4NDcpKV0sWyJGb29kIEluZ3JlZGllbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDAzOTQzKSldLFsiRm9vZCBNYXJrZXRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTE0Mzg3KSldLFsiRm9vZCBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ2MDQzKSldLFsiRm9vZCBSZXRhaWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzE0MzQpKV0sWyJGb29kIFJldGFpbCAmIERpc3RyaWJ1dGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg2MzY2MSkpXSxbIkZvb2QgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc2ODIyKSldLFsiRm9vZDogTWFqb3IgRGl2ZXJzaWZpZWQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTc3MDkpKV0sWyJGb29kOiBNZWF0L0Zpc2gvRGFpcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MjQ2ODUpKV0sWyJGb29kOiBTcGVjaWFsdHkvQ2FuZHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MzE4ODMpKV0sWyJGb290d2VhciBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTUwMzcpKV0sWyJGb290d2VhciBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzMyOTUpKV0sWyJGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5ODA1NykpXSxbIkZvcmVzdCAmIFdvb2QgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDgwMDgpKV0sWyJGb3Jlc3QgTnVyc2VyaWVzICYgR2F0aGVyaW5nIG9mIEZvcmVzdCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2NDIzOSkpXSxbIkZvcmVzdCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM0NDY1MykpXSxbIkZvcmVzdCBTdXBwb3J0ICYgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzE4NzUpKV0sWyJGb3NzaWwgRnVlbCBFbGVjdHJpYyBVdGlsaXRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDk4MikpXSxbIkZvc3NpbCBGdWVsIElQUHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTM3MTEpKV0sWyJGcmVpZ2h0IExvZ2lzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk2OTIzNykpXSxbIkZyZWlnaHQgVHJ1Y2tpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNDI3MDYpKV0sWyJGcm96ZW4gRm9vZCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgyOTY0KSldLFsiRnJ1aXQgJiBWZWdldGFibGUgUHJvY2Vzc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxNjYyKSldLFsiRnJ1aXQgRHJpbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzc0MjE2KSldLFsiRnVuZXJhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4MTkxOSkpXSxbIkZ1cm5pdHVyZSBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4Mzg1KSldLFsiRnVybml0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjY2NjcxKSldLFsiR2FtYmxpbmcgJiBHYW1pbmcgTWFjaGluZSBNYW51ZmFjdHVyZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIwMTU2KSldLFsiR2FtZXMsIFRveXMgJiBDaGlsZHJlbiBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4NDg0MSkpXSxbIkdhbWluZyBNYWNoaW5lIE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTkzNSkpXSxbIkdhcyBEaXN0cmlidXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzc5OTYpKV0sWyJHYXMgRHJpbGxpbmcgLSBPbnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI1MTExKSldLFsiR2Fzb2xpbmUgc3RhdGlvbnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjczMTYpKV0sWyJHZW5lcmFsIEVkdWNhdGlvbiBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1NTE3NykpXSxbIkdlbmVyYWwgR292ZXJubWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MTk5NSkpXSxbIkdlbmVyaWMgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ2MTQ2KSldLFsiR2VvcGh5c2ljYWwgU3VydmV5aW5nICYgTWFwcGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNDEyMykpXSxbIkdpZnQsIE5vdmVsdHkgJiBTb3V2ZW5pciBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTMyNDEpKV0sWyJHbGFzcyBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjM2MjIxKSldLFsiR2xhc3NlcywgU3BlY3RhY2xlcyAmIENvbnRhY3QgbGVuc2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA5NDYxKSldLFsiR29sZCBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODM1KSldLFsiR29sZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2NTI5NCkpXSxbIkdvbGYgQ291cnNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5ODMyNSkpXSxbIkdyYWluIChDcm9wKSBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUwMjc3KSldLFsiR3JvdW5kIEZyZWlnaHQgJiBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjkyOTEpKV0sWyJHdWlkZWQgVG91ciBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODQzMykpXSxbIkd5bXMsIEZpdG5lc3MgYW5kIFNwYSBDZW50ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzE3NzgxKSldLFsiSGFpciBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzNjk0NikpXSxbIkhhbGFsIEFuaW1hbCBTbGF1Z2h0ZXJpbmcgJiBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI4NjQxKSldLFsiSGFuZGJhZ3MgJiBMdWdnYWdlIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0NDAxKSldLFsiSGFuZGJhZ3MgJiBMdWdnYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY2NDc5KSldLFsiSGVhbHRoIEZvb2QgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTAwOTU2KSldLFsiSGVhbHRoIEluc3VyYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MDA5MCkpXSxbIkhlYWx0aGNhcmUgRmFjaWxpdGllcyAmIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjkzMTg1KSldLFsiSGVhbHRoY2FyZSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE2ODcyOCkpXSxbIkhlYXRpbmcsIFZlbnRpbGF0aW9uICYgQWlyIENvbmRpdGlvbmluZyBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTM5OTIyKSldLFsiSGVhdnkgQnVzZXMgJiBDb2FjaGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyOTgzKSldLFsiSGVhdnkgRWxlY3RyaWNhbCBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTgxMjcpKV0sWyJIZWF2eSBNYWNoaW5lcnkgJiBWZWhpY2xlcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTgwNDQpKV0sWyJIZWF2eSBNYWNoaW5lcnkgJiBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4MTYwNCkpXSxbIkhlYXZ5IE1vdG9ycyAmIEdlbmVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTA1MikpXSxbIkhlYXZ5IFRydWNrcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5ODA2NykpXSxbIkhlZGdlIEZ1bmRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk4MzM2KSldLFsiSGlnaHdheSAmIEJyaWRnZSBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzM3NjIpKV0sWyJIaWdod2F5IE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3Mjg4NikpXSxbIkhpZ2h3YXlzICYgUmFpbCBUcmFja3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTM3NzYpKV0sWyJIb2xkaW5nIENvbXBhbmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczMDQ5NikpXSxbIkhvbWUgQXVkaW8iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzQxMDUpKV0sWyJIb21lIERlY29yIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI2NTQyKSldLFsiSG9tZSBGdXJuaXNoaW5ncyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTEyMDMpKV0sWyJIb21lIEZ1cm5pc2hpbmdzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MTQ1MikpXSxbIkhvbWUgRnVybmlzaGluZ3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc4NikpXSxbIkhvbWUgSGVhbHRoY2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5Njc4MSkpXSxbIkhvbWUgSW1wcm92ZW1lbnQgQ2hhaW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE2Mjg3KSldLFsiSG9tZSBJbXByb3ZlbWVudCBQcm9kdWN0cyAmIFNlcnZpY2VzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MTE0NykpXSxbIkhvbWVidWlsZGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MjcyNCkpXSxbIkhvcnNlICYgRG9nIFJhY2UgVHJhY2tzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ1OTI1KSldLFsiSG9zaWVyeSAmIFNvY2siLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjQ0MDIpKV0sWyJIb3NwaXRhbC9OdXJzaW5nIE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzODA5NDQpKV0sWyJIb3NwaXRhbGl0eSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0OTEzNykpXSxbIkhvc3BpdGFscywgQ2xpbmljcyAmIFByaW1hcnkgQ2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3MjU0OCkpXSxbIkhvdGVscyAmIE1vdGVscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4MzYyMCkpXSxbIkhvdGVscywgTW90ZWxzICYgQ3J1aXNlIExpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzk5NzkxKSldLFsiSG90ZWxzL1Jlc29ydHMvQ3J1aXNlIGxpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTY0Mjc3KSldLFsiSG91c2Vob2xkIEFwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTg2MDcpKV0sWyJIb3VzZWhvbGQgRWxlY3Ryb25pY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzU0OTgpKV0sWyJIb3VzZWhvbGQgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTkyODkpKV0sWyJIb3VzZWhvbGQvUGVyc29uYWwgQ2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5MzcwNykpXSxbIkh1bWFuIFJlc291cmNlcyBDb25zdWx0aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk1OTk2KSldLFsiSHlkcm9nZW4gRnVlbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM0NzI0OSkpXSxbIkh5ZHJvcG93ZXIgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg3ODM3KSldLFsiSVQgU2VydmljZXMgJiBDb25zdWx0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc0NTQzKSldLFsiSW5kZXBlbmRlbnQgUG93ZXIgUHJvZHVjZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTcyMjk1KSldLFsiSW5kdXN0cmlhbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTU4NzgpKV0sWyJJbmR1c3RyaWFsIEJpb3RlY2hub2xvZ3kgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjUwMTAzKSldLFsiSW5kdXN0cmlhbCBDbG90aGluZyAmIFVuaWZvcm1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODE3OTUxKSldLFsiSW5kdXN0cmlhbCBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTQ4MzEwKSldLFsiSW5kdXN0cmlhbCBFbGVjdHJpY2FsIFN3aXRjaGdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjI2NjgpKV0sWyJJbmR1c3RyaWFsIEdhcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyNjY3MCkpXSxbIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2Njc3NykpXSxbIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU3MzcxKSldLFsiSW5kdXN0cmlhbCBNYWNoaW5lcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0OTQ1ODgpKV0sWyJJbmR1c3RyaWFsIE1vdWxkcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NjI0NykpXSxbIkluZHVzdHJpYWwgUGFydHMgJiBDb21wb25lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQxNjkpKV0sWyJJbmR1c3RyaWFsIFBsYW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTE3MjY0KSldLFsiSW5kdXN0cmlhbCBQcm9jZXNzIEZ1cm5hY2UgJiBPdmVucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMjA4MikpXSxbIkluZHVzdHJpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDgzNjEpKV0sWyJJbmR1c3RyaWFsIFJ1YmJlciBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczNTcyMykpXSxbIkluZHVzdHJpYWwgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTQzOTYpKV0sWyJJbmR1c3RyaWFsIFZhbHZlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDkyNDkpKV0sWyJJbmZvcm1hdGlvbiBUZWNobm9sb2d5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk5MDgwKSldLFsiSW5sYW5kIFdhdGVyIEZyZWlnaHQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MjA4NCkpXSxbIklucHV0IERldmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDM0NzQpKV0sWyJJbnN1cmFuY2UgLSBBdXRvbW9iaWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY3NTUyKSldLFsiSW5zdXJhbmNlIEJyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzExNTYpKV0sWyJJbnN1cmFuY2UgQnJva2Vycy9TZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2NDY3MCkpXSxbIkludGVncmF0ZWQgIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcxNTEwNykpXSxbIkludGVncmF0ZWQgQ2lyY3VpdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODZlMykpXSxbIkludGVncmF0ZWQgTG9naXN0aWNzIE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQxNDg3MykpXSxbIkludGVncmF0ZWQgT2lsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyMDQ1KSldLFsiSW50ZWdyYXRlZCBPaWwgJiBHYXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5OTkxMzEpKV0sWyJJbnRlZ3JhdGVkIFRlbGVjb21tdW5pY2F0aW9ucyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0NTU5MCkpXSxbIkludGVyLWRlYWxlciBCcm9rZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTgwODMpKV0sWyJJbnRlcmlvciBEZXNpZ24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjc3MjIpKV0sWyJJbnRlcm5hdGlvbmFsIFRyYWRlIEZpbmFuY2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNzQ1NikpXSxbIkludGVybmV0ICYgTWFpbCBPcmRlciBEZXBhcnRtZW50IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyMDQ2NCkpXSxbIkludGVybmV0ICYgTWFpbCBPcmRlciBEaXNjb3VudCBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NzEyOTIpKV0sWyJJbnRlcm5ldCBHYW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDY4KSldLFsiSW50ZXJuZXQgUmV0YWlsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjc1MDEyKSldLFsiSW50ZXJuZXQgU2VjdXJpdHkgJiBUcmFuc2FjdGlvbnMgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc5OTcpKV0sWyJJbnRlcm5ldCBTZXJ2aWNlIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNTU5MykpXSxbIkludGVybmV0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjc0NzI5KSldLFsiSW50ZXJuZXQgU29mdHdhcmUvU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NjM1MjMpKV0sWyJJbnZlc3RtZW50IEJhbmtzL0Jyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzM3MjQpKV0sWyJJbnZlc3RtZW50IEJhbmtlcnMvQnJva2Vycy9TZXJ2aWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg2OTE0KSldLFsiSW52ZXN0bWVudCBCYW5raW5nICYgQnJva2VyYWdlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTEyNjU4KSldLFsiSW52ZXN0bWVudCBCYW5raW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc1MTc0KSldLFsiSW52ZXN0bWVudCBNYW5hZ2VtZW50ICYgRnVuZCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTE5NjIpKV0sWyJJbnZlc3RtZW50IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDkyNzIpKV0sWyJJbnZlc3RtZW50IE1hbmFnZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc5MDY1KSldLFsiSW52ZXN0bWVudCBTdXBwb3J0IFRvb2xzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU2MTM2KSldLFsiSW52ZXN0bWVudCBUcnVzdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODQzMzIpKV0sWyJJbnZlc3RtZW50IFRydXN0cy9NdXR1YWwgRnVuZHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTU5NzIpKV0sWyJJcm9uIE9yZSBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MDk3OTQpKV0sWyJJcm9uLCBTdGVlbCBNaWxscyAmIEZvdW5kcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI2MzQyMSkpXSxbIkplYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTYxODQwKSldLFsiSmV3ZWxyeSAmIFdhdGNoIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ1NDk4MykpXSxbIkpld2VscnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjAyOTQpKV0sWyJKdXZlbmlsZSBGdXJuaXR1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2Njk2OTEpKV0sWyJLaXRjaGVuIEFwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTcyNDIpKV0sWyJLaXRjaGVuIENhYmluZXRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDIyNjE5KSldLFsiS25pdHdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODE2NzkpKV0sWyJMTkcgVHJhbnNwb3J0YXRpb24gJiBTdG9yYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODYzOTE2KSldLFsiTGFuZCBEaXZpc2lvbiAmIFN1YmRpdmlzaW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU2NTM3KSldLFsiTGFwdG9wICYgRGVza3RvcCBDb21wdXRlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTIyNzMpKV0sWyJMYXNlciBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDk2NjYpKV0sWyJMYXVuZHJ5IFN1cHBsaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDcxOTgxKSldLFsiTGVhZCBPcmUgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU4ODg4KSldLFsiTGVhdGhlciBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwODA0MykpXSxbIkxlZ2FsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODY2MTc2KSldLFsiTGVpc3VyZSAmIFJlY3JlYXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTIyNikpXSxbIkxlaXN1cmUgUHJvZHVjdHMgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjE0MzMwKSldLFsiTGlmZSAmIEhlYWx0aCBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODc2NjApKV0sWyJMaWZlICYgSGVhbHRoIFJlaW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDkzMjY4KSldLFsiTGlmZS9IZWFsdGggSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQzMzY1KSldLFsiTGlmZSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5OTQxOTIpKV0sWyJMaWdodCBUcnVja3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3Mjg2NDkpKV0sWyJMaWdodGluZyBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTE2MzApKV0sWyJMaWdodGluZyBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ3OTA5MSkpXSxbIkxpbmdlcmllIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg0OTAxKSldLFsiTG9jYWwgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDM0MykpXSxbIkxvY29tb3RpdmUgRW5naW5lcyAmIFJvbGxpbmcgU3RvY2siLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTkxNzUpKV0sWyJMb2dnaW5nICYgU2F3bWlsbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5ODAyNDYpKV0sWyJMb3R0ZXJ5IE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczODQwNykpXSxbIkx1eHVyeSBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY3NTEwKSldLFsiTHV4dXJ5IENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA5MzU3KSldLFsiTWFjaGluZSBUb29scyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0NTAwMykpXSxbIk1hZ2F6aW5lIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjc2MzMpKV0sWyJNYWludGVuYW5jZSAmIFJlcGFpciBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4MDc4NikpXSxbIk1ham9yIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQzNzc0KSldLFsiTWFqb3IgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE3NTc4KSldLFsiTWFqb3IgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjczMTAzKSldLFsiTWFsdCBwcm9kdWNlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDIzMTIpKV0sWyJNYW5hZ2VkIEhlYWx0aCBjYXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI5MzQ3KSldLFsiTWFuYWdlZCBIZWFsdGggQ2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxMTQ4MykpXSxbIk1hbmFnZW1lbnQgQ29uc3VsdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyMjEwMikpXSxbIk1hcmluYXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzcxNTIpKV0sWyJNYXJpbmUgQ2FyZ28gSGFuZGxpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzU5OTQpKV0sWyJNYXJpbmUgRnJlaWdodCAmIExvZ2lzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5MDM4OCkpXSxbIk1hcmluZSBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NjQwOTkpKV0sWyJNYXJpbmUgUGFzc2VuZ2VyIFRyYW5zcG9ydGF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk0ODQ5KSldLFsiTWFyaW5lIFBvcnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTE0NTIpKV0sWyJNYXJpbmUgU2hpcHBpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDc1NjEpKV0sWyJNYXJrZXQgUmVzZWFyY2giLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDE3NjEpKV0sWyJNYXJrZXRpbmcgQ29uc3VsdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5NzM5MykpXSxbIk1lZGlhIEJ1eWluZyBBZ2VuY3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjYwMjApKV0sWyJNZWRpYSBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjUyMjAzKSldLFsiTWVkaWNhbCAmIERpYWdub3N0aWMgTGFib3JhdG9yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDMyNjYyKSldLFsiTWVkaWNhbCBEZXZpY2VzICYgSW1wbGFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzA1NTkpKV0sWyJNZWRpY2FsIERpYWdub3N0aWMgJiBUZXN0aW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY1OTk3MSkpXSxbIk1lZGljYWwgRGlzdHJpYnV0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTA3ODUpKV0sWyJNZWRpY2FsIEVxdWlwbWVudCBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzI4NTcpKV0sWyJNZWRpY2FsIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5MjIwMCkpXSxbIk1lZGljYWwgRXF1aXBtZW50LCBTdXBwbGllcyAmIERpc3RyaWJ1dGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcyMjU1NikpXSxbIk1lZGljYWwgSW1hZ2luZyBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzcxNDU3KSldLFsiTWVkaWNhbCBNb25pdG9yaW5nIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NjY3NDgpKV0sWyJNZWRpY2FsIFByb3N0aGV0aWNzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzc3NzgpKV0sWyJNZWRpY2FsIFNvZnR3YXJlICYgVGVjaG5vbG9neSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQzMzI2NCkpXSxbIk1lZGljYWwgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzYzMTYpKV0sWyJNZWRpY2FsIFN1cHBsaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYwNDMyKSldLFsiTWVkaWNhbC9OdXJzaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk5MTUwKSldLFsiTWVtb3J5IENoaXBzIChSQU0pIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAzODMpKV0sWyJNZW4ncyBBcHBhcmVsIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5NjY0OSkpXSxbIk1lbidzIENsb3RoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzk2MTApKV0sWyJNZW4ncyBGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5NjA4MikpXSxbIk1lcmNoYW50IEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2NjYpKV0sWyJNZXRhbCBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA5MzcyKSldLFsiTWV0YWwgRmFicmljYXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzY3OTUpKV0sWyJNZXRhbCBNZXJjaGFudCBXaG9sZXNhbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1OTc2MCkpXSxbIk1ldGFsIFNlcnZpY2UgQ2VudGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyOTU0MCkpXSxbIk1ldGFsbGljIFJvbGxpbmcgJiBEcmF3aW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYyNDI3KSldLFsiTWljcm9maW5hbmNpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDYyNjYpKV0sWyJNaW5pbmcgTWFjaGluZXJ5ICYgRXF1aXBtZW50IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzgzMzApKV0sWyJNaW5pbmcgU3VwcG9ydCBBY3Rpdml0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA0ODU2KSldLFsiTWluaW5nIFN1cHBvcnQgU2VydmljZXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTY4NDUpKV0sWyJNaXNjZWxsYW5lb3VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTU3MDIzKSldLFsiTWlzY2VsbGFuZW91cyBDb21tZXJjaWFsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMyOTg0KSldLFsiTWlzY2VsbGFuZW91cyBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTQ3NzE0KSldLFsiTW9iaWxlIEFwcGxpY2F0aW9uIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjgyNTU3KSldLFsiTW9iaWxlIFBob25lIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyNTQ1MykpXSxbIk1vYmlsZSBTeXN0ZW0gU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTAwMzMpKV0sWyJNb3J0Z2FnZSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5ODE1NCkpXSxbIk1vdG9yIFZlaGljbGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIwMDU4KSldLFsiTW90b3JjeWNsZSBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDgwMDQ1KSldLFsiTW90b3JjeWNsZSBQYXJ0cyAmIEFjY2Vzc29yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNjIpKV0sWyJNb3RvcmN5Y2xlcyAmIFNjb290ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQyNjgpKV0sWyJNb3ZpZSBUaGVhdGVycyAmIE1vdmllIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTg1ODQ1KSldLFsiTW92aWUsIFRWIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTI5MzEpKV0sWyJNb3ZpZXMvRW50ZXJ0YWlubWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MDEwKSldLFsiTXVsdGlsaW5lIEluc3VyYW5jZSAmIEJyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzY1MTgpKV0sWyJNdWx0aWxpbmUgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTczMDczKSldLFsiTXVsdGktTGluZSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTM1NjEpKV0sWyJNdW5pY2lwYWxpdHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDc2NTEpKV0sWyJNdXNldW1zICYgSGlzdG9yaWMgUGxhY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQ0NTQ1KSldLFsiTXVzaWMsIE11c2ljIFZpZGVvIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjczNDApKV0sWyJNdXNpY2FsIEluc3RydW1lbnQgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA4NzY5KSldLFsiTXVzaWNhbCBJbnN0cnVtZW50cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcxNjY2OSkpXSxbIk11dHVhbCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwMDAzKSldLFsiTmF0aW9uYWwgQWdlbmN5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTU2NDYyKSldLFsiTmF0aW9uYWwgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzEzMzQpKV0sWyJOYXR1cmFsIEZhYnJpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjgyMTEpKV0sWyJOYXR1cmFsIEdhcyBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDU1MzIpKV0sWyJOYXR1cmFsIEdhcyBFeHBsb3JhdGlvbiAmIFByb2R1Y3Rpb24gLSBPZmZzaG9yZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIzNzM0OSkpXSxbIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NTMwMzApKV0sWyJOYXR1cmFsIEdhcyBQaXBlbGluZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyNDk5OCkpXSxbIk5hdHVyYWwgR2FzIFV0aWxpdGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI1ODc4NSkpXSxbIk5ldHdvcmsgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYzMDgzKSldLFsiTmV3IENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjI5NTU2KSldLFsiTmV3cyBBZ2VuY2llcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MjI4NSkpXSxbIk5ld3NwYXBlciAmIE1hZ2F6aW5lIFByaW50aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIxMzcxKSldLFsiTmV3c3BhcGVyIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODY3KSldLFsiTmV3c3ByaW50IE1pbGxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODE5NDczKSldLFsiTmlja2VsIE9yZSBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDY4NTQpKV0sWyJOb24tQWxjb2hvbGljIEJldmVyYWdlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4NzcxNSkpXSxbIk5vbi1QYXBlciBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQyMjM1KSldLFsiTm9uLWZlcnJvdXMgTWV0YWwgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg5OTQwKSldLFsiTm9uLWZlcnJvdXMgTWV0YWwgUHJvY2Vzc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxOTU2NikpXSxbIk51Y2xlYXIgSVBQcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0MjQxMykpXSxbIk51Y2xlYXIgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ0ODU2KSldLFsiTnVyc2VyeSAmIEdhcmRlbiBDZW50ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2NjcxKSldLFsiT2ZmaWNlIEVxdWlwbWVudCAmIFN1cHBsaWVzIFJlbnRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQyNDg2MSkpXSxbIk9mZmljZSBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTM3NTI1KSldLFsiT2ZmaWNlIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyODc0KSldLFsiT2ZmaWNlIEVxdWlwbWVudC9TdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0OTExOCkpXSxbIk9mZmljZSBGdXJuaXR1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc3NDgpKV0sWyJPZmZpY2UgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5Mjc3MTIpKV0sWyJPZmZpY2UgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MzM5MTEpKV0sWyJPZmZpY2UgUmVhbCBFc3RhdGUgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MDYzNDkpKV0sWyJPZmZpY2UgU3VwcGxpZXMgJiBTdGF0aW9uZXJ5IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk0MDExNSkpXSxbIk9mZmljZSBTdXBwbGllcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzk1MDcpKV0sWyJPZmZpY2UgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTYzMikpXSxbIk9mZmljZSBUZWNobm9sb2d5IEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5MDM3MCkpXSxbIk9pbCAmIEdhcyBEcmlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0NzQzOSkpXSxbIk9pbCAmIEdhcyBFeHBsb3JhdGlvbiBhbmQgUHJvZHVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE5NDQ1MCkpXSxbIk9pbCAmIEdhcyBQaXBlbGluZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODM4ODUpKV0sWyJPaWwgJiBHYXMgUHJvZHVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5MTcpKV0sWyJPaWwgJiBHYXMgUmVmaW5pbmcgYW5kIE1hcmtldGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMzMxNykpXSxbIk9pbCAmIEdhcyBTdG9yYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNDkzKSldLFsiT2lsICYgR2FzIFRyYW5zcG9ydGF0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk2ODE5KSldLFsiT2lsIERyaWxsaW5nIC0gT2Zmc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzk0OTcpKV0sWyJPaWwgRHJpbGxpbmcgLSBPbnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk4MDUwKSldLFsiT2lsIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9mZnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODU3OTE4KSldLFsiT2lsIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzcyMzApKV0sWyJPaWwgUGlwZWxpbmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjg4NzkpKV0sWyJPaWwgUmVmaW5pbmcvTWFya2V0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkyMDMyKSldLFsiT2lsIFJlbGF0ZWQgLSBTdXJ2ZXlpbmcgJiBNYXBwaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY5MTU2KSldLFsiT2lsIFJlbGF0ZWQgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTYxNjE1KSldLFsiT2lsIFJlbGF0ZWQgU2VydmljZXMgYW5kIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMDUzKSldLFsiT2lsIFJlbGF0ZWQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzMxNjcpKV0sWyJPaWxmaWVsZCBTZXJ2aWNlcy9FcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODU1NDYpKV0sWyJPbmxpbmUgSm9iIHBvcnRhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDAyMikpXSxbIk9wdGljYWwgR29vZHMgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY4NDAxKSldLFsiT3JnYW5pYyAmIEVjb2xvZ2ljYWxseSBQcm9kdWNlZCBGYWJyaWMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTMyMTgpKV0sWyJPcmdhbmljIEZlcnRpbGl6ZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDE3MzEpKV0sWyJPdGhlciBDb25zdW1lciBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MzgwKSldLFsiT3RoZXIgQ29uc3VtZXIgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDc3NTApKV0sWyJPdGhlciBNZXRhbHMvTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDU4NzEpKV0sWyJPdGhlciBTcGVjaWFsdHkgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY2Nzg5KSldLFsiT3RoZXIgVHJhbnNwb3J0YXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTE1ODYpKV0sWyJPdXRkb29yIEFkdmVydGlzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDMwNzk4KSldLFsiT3V0c291cmNpbmcgJiBTdGFmZmluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3Nzk0MikpXSxbIlBhY2thZ2VkIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkxMjcxKSldLFsiUGFpbnQgJiBDb2F0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTYzODE3KSldLFsiUGFwZXIgTWlsbHMgJiBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4OTIzNSkpXSxbIlBhcGVyIFBhY2thZ2luZyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjY0NzcpKV0sWyJQYXBlciBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDM0NDYpKV0sWyJQYXBlciBQcm9kdWN0IFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU5Mjg0KSldLFsiUGFwZXIgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDk5NjApKV0sWyJQYXJraW5nIExvdCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTgzNTcpKV0sWyJQYXNzZW5nZXIgQ2FyIHJlbnRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4NDMzOCkpXSxbIlBhc3NlbmdlciBUcmFuc3BvcnRhdGlvbiwgR3JvdW5kICYgU2VhIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA3NDI3KSldLFsiUGVuc2lvbiBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4ODU2OCkpXSxbIlBlcnNvbmFsICYgQ2FyIExvYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTg3MzUyKSldLFsiUGVyc29uYWwgQ2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1OTMzOCkpXSxbIlBlcnNvbmFsIExlZ2FsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzA1NjA0KSldLFsiUGVyc29uYWwgTXVzaWMgUGxheWVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1NjA2MCkpXSxbIlBlcnNvbmFsIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjUyNjczKSldLFsiUGVyc29uYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzIzOTkpKV0sWyJQZXJzb25uZWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MjcyNikpXSxbIlBlc3QgQ29udHJvbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NjkwMCkpXSxbIlBlc3RpY2lkZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4NzYwMikpXSxbIlBldCAmIFBldCBTdXBwbGllcyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDIwMTMpKV0sWyJQZXQgRm9vZCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU5MDMxKSldLFsiUGV0cm9sZXVtIFByb2R1Y3QgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjcxOTIxKSldLFsiUGV0cm9sZXVtIFJlZmluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjg2Nzg3KSldLFsiUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk5NzIzKSldLFsiUGhhcm1hY2V1dGljYWxzOiBHZW5lcmljIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYxODQ5KSldLFsiUGhhcm1hY2V1dGljYWxzOiBNYWpvciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MjY0MykpXSxbIlBoYXJtYWNldXRpY2FsczogT3RoZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NDUxODApKV0sWyJQaG9uZXMgJiBIYW5kaGVsZCBEZXZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMzMzMyKSldLFsiUGhvbmVzICYgU21hcnQgUGhvbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTIzNzY0KSldLFsiUGhvdG9ncmFwaGljIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgzMDc5NykpXSxbIlBob3Rvdm9sdGFpYyBTb2xhciBTeXN0ZW1zICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ1NzYyKSldLFsiUGxhc3RpYyBDb250YWluZXIgJiBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODkzOTMpKV0sWyJQbGFzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNTkzNCkpXSxbIlBsYXRpbnVtIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkzNjI2MCkpXSxbIlBsYXlzICYgQ29uY2VydCBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQwMDMpKV0sWyJQbHVtYmluZyBGaXh0dXJlcyAmIEZpdHRpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg2NTYpKV0sWyJQb2ludCBvZiBTYWxlIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDkyKSldLFsiUG9ydCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTUxNjApKV0sWyJQb3J0IFdhcmVob3VzaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU3MDYwKSldLFsiUG9ydGFibGUgTW90b3JzICYgR2VuZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NzQ0MykpXSxbIlBvcnRhYmxlIFNhdGVsbGl0ZSBOYXZpZ2F0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyMjQzKSldLFsiUG91bHRyeSBGYXJtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjM1NDE1KSldLFsiUHJlY2lvdXMgTWV0YWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODY0MjEyKSldLFsiUHJlY2lvdXMgTWV0YWxzICYgTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzYwODkpKV0sWyJQcmVmYWJyaWNhdGVkIEhvbWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODcxMDg4KSldLFsiUHJpbWFyeSBBbHVtaW51bSBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU1MzcpKV0sWyJQcml2YXRlIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQzNzU2KSldLFsiUHJpdmF0ZSBFcXVpdHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5Nzk1MzIpKV0sWyJQcm9jZXNzb3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ4MzYpKV0sWyJQcm9mZXNzaW9uYWwgSW5mb3JtYXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTMzMzApKV0sWyJQcm9mZXNzaW9uYWwgU3BvcnRzIFZlbnVlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwNDAxNCkpXSxbIlByb2dyYW1taW5nIFNvZnR3YXJlICYgVGVzdGluZyBUb29scyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUzNDM5KSldLFsiUHJvcGVydHkgJiBDYXN1YWx0eSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzYwNjYpKV0sWyJQcm9wZXJ0eSAmIENhc3VhbHR5IFJlaW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk2MjMwKSldLFsiUHJvcGVydHkgSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY0ODc3KSldLFsiUHJvcGVydHktQ2FzdWFsdHkgSW5zdXJlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTE2MTQpKV0sWyJQcm9wZXJ0eS9DYXN1YWx0eSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTY0NzcpKV0sWyJQcm92aW5jZS9TdGF0ZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2NjkyKSldLFsiUHVibGljIFJlbGF0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2ODMwKSldLFsiUHVibGljIFNwb3J0IEZhY2lsaXRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODIwOTcpKV0sWyJQdWJsaXNoaW5nOiBCb29rcy9NYWdhemluZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMTMwNTYpKV0sWyJQdWJsaXNoaW5nOiBOZXdzcGFwZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzAwNDQyKSldLFsiUHVicywgQmFycyAmIE5pZ2h0IENsdWJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTMzNDYxKSldLFsiUHVscCBNaWxscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1Mjg1NikpXSxbIlB1bHAgJiBQYXBlciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2NzM2MSkpXSxbIlB1bXAgJiBQdW1waW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMTE3KSldLFsiUHVyaWZpY2F0aW9uICYgVHJlYXRtZW50IEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0MDM4NikpXSxbIlF1aWNrIFNlcnZpY2UgUmVzdGF1cmFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDcyOTkpKV0sWyJSRklEIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjcwMjMpKV0sWyJSYWRpbyBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMTk4OTIpKV0sWyJSYWlsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAwNTc2KSldLFsiUmFpbHJvYWRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY3MTQ3KSldLFsiUmFpbHdheSBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjY1NDcpKV0sWyJSYWlsd2F5IEZyZWlnaHQgT3BlcmF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzE5NzEzKSldLFsiUmFyZSBFYXJ0aCBNaW5lcmFscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxODQpKV0sWyJSYXRpbmcgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjc3NTQpKV0sWyJSZWFkeS1NYWRlIE1lYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjEzOTUxKSldLFsiUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDEwNDUpKV0sWyJSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCAmIE9wZXJhdGlvbnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTIwMDQpKV0sWyJSZWFsIEVzdGF0ZSBJbnZlc3RtZW50IFRydXN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0MjA4NikpXSxbIlJlYWwgRXN0YXRlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc2MzY1KSldLFsiUmVjcmVhdGlvbmFsIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA1NzEpKV0sWyJSZWdpb25hbCBBaXJsaW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2NjE2NSkpXSxbIlJlZ2lvbmFsIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzU4NjIzKSldLFsiUmVpbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzQ0NzcpKV0sWyJSZW5ld2FibGUgRW5lcmd5IEVxdWlwbWVudCAmIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc4OTMwKSldLFsiUmVuZXdhYmxlIEVuZXJneSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxOTYzOSkpXSxbIlJlbmV3YWJsZSBGdWVscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NDE3NCkpXSxbIlJlbmV3YWJsZSBJUFBzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg0OTkzKSldLFsiUmVuZXdhYmxlIFV0aWxpdGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MDA5MCkpXSxbIlJlc2lkZW50aWFsICBSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIwNjE0NCkpXSxbIlJlc2lkZW50aWFsICYgTG9uZyBUZXJtIENhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjIxODkpKV0sWyJSZXNpZGVudGlhbCBBcmNoaXRlY3R1cmFsICYgSW50ZXJpb3IgRGVzaWduIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA5MDA3KSldLFsiUmVzaWRlbnRpYWwgQnVpbGRlcnMgLSBNdWx0aWZhbWlseSBIb21lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3ODgxMikpXSxbIlJlc2lkZW50aWFsIEJ1aWxkZXJzIC0gU2luZ2xlIEhvbWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTgyNzk3KSldLFsiUmVzaWRlbnRpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjAyNjQpKV0sWyJSZXNpZGVudGlhbCBSZWFsIEVzdGF0ZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0NTI4MSkpXSxbIlJlc29ydCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDMxODEpKV0sWyJSZXN0YXVyYW50cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMzg4OSkpXSxbIlJlc3RhdXJhbnRzICYgQmFycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxNTIxMykpXSxbIlJldGFpbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTI2MjApKV0sWyJSZXRhaWwgJiBNb3J0Z2FnZSBCYW5rcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5MjkyNikpXSxbIlJldGFpbCAtIERlcGFydG1lbnQgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYxMjA1KSldLFsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aCBHcm9jZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU5NzYxKSldLFsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aG91dCBHcm9jZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA5NzI4KSldLFsiUmV0YWlsIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTAxMTQwKSldLFsiUmV0YWlsIFJlYWwgRXN0YXRlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA5NjI1KSldLFsiUmV0aXJlbWVudCBIb21lIEJ1aWxkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE4ODkpKV0sWyJSb2NrIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5MTM5OSkpXSxbIlJvb2ZpbmcgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTIxMzUpKV0sWyJSdWJiZXIgUGxhbnRhdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MTk3MikpXSxbIlNhaWxpbmcgWWFjaHRzICYgTW90b3Jib2F0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyNzg2MSkpXSxbIlNhbGVzIFByb21vdGlvbnMgJiBFdmVudHMgTWFuYWdlbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxOTcxNykpXSxbIlNhbml0YXJ5IFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjI3MzU1KSldLFsiU2F0ZWxsaXRlICBTeXN0ZW1zICYgQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzQwNzQpKV0sWyJTYXRlbGxpdGUgU2VydmljZSBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTkxMTYpKV0sWyJTYXZpbmdzIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzM0NTA3KSldLFsiU2NpZW50aWZpYyAmIFByZWNpc2lvbiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTg2MjgpKV0sWyJTY2llbnRpZmljICYgU3VwZXIgQ29tcHV0ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY2NzA0KSldLFsiU2VhLUJvcm5lIFRhbmtlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDQ0MTIpKV0sWyJTZWFmb29kIFByb2R1Y3QgUHJlcGFyYXRpb24gJiBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzI2NjkpKV0sWyJTZWFyY2ggRW5naW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5MjE2MikpXSxbIlNlY29uZGFyeSBTbWVsdGluZyAmIEFsbG95aW5nIG9mIEFsdW1pbnVtIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc4NzM4KSldLFsiU2VjdXJpdGllcyAmIENvbW1vZGl0eSBFeGNoYW5nZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODYwMTUpKV0sWyJTZWN1cml0eSAmIFN1cnZlaWxsYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk0OTI2NSkpXSxbIlNlY3VyaXR5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTI3MjUyKSldLFsiU2VsZi1TdG9yYWdlIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTkyMjYpKV0sWyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCAmIFRlc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTIzODEpKV0sWyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCBXaG9sZXNhbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MzIwOSkpXSxbIlNlbWljb25kdWN0b3IgTWFjaGluZXJ5IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NDk0NTkpKV0sWyJTZW1pY29uZHVjdG9yIFRlc3RpbmcgRXF1aXBtZW50ICYgU2VydmljZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxNjg0NSkpXSxbIlNlbWljb25kdWN0b3IgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTUxMzQ2KSldLFsiU2VtaWNvbmR1Y3RvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTUyODIpKV0sWyJTZW1pcHJlY2lvdXMgR2VtIFN0b25lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3MDc3NSkpXSxbIlNlcnZlciAmIERhdGFiYXNlIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjg2Mzg1KSldLFsiU2VydmVycyAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTUwOTYpKV0sWyJTZXJ2aWNlcyB0byB0aGUgSGVhbHRoIEluZHVzdHJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU0NDA4KSldLFsiU2V3YWdlIFRyZWF0bWVudCBGYWNpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA0MTM5KSldLFsiU2hlbGwgQ29tcGFuaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE4NjgpKV0sWyJTaGlwIFBhcnQgTWFudWZhY3R1cmVyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTExODM2KSldLFsiU2hpcCBSZXBhaXJpbmcgJiBNYWludGFuYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5NDg5MSkpXSxbIlNoaXBidWlsZGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5OTgzMSkpXSxbIlNpZ25zICYgQWR2ZXJ0aXNpbmcgU3BlY2lhbHR5IFByb2R1Y2VycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyNTA3NykpXSxbIlNpbHZlciBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTYxMDMpKV0sWyJTbWFydCBHcmlkICYgRWxlY3RyaWNhbCBUcmFuc21pc3Npb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzMzMTEpKV0sWyJTbWFydCBHcmlkICYgUG93ZXIgRGlzdHJpYnV0aW9uIENvbnN0cnVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4NDI3MCkpXSxbIlNuYWNrIEZvb2QgJiBOb24tY2hvY29sYXRlIENvbmZlY3Rpb25hcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDg0NSkpXSxbIlNvY2lhbCBNZWRpYSAmIE5ldHdvcmtpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTgyMjIpKV0sWyJTb2Z0IEZ1cm5pc2hpbmcgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI0NTc4KSldLFsiU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTcxMDMpKV0sWyJTb3ZlcmVpZ24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODE5MzIpKV0sWyJTcGFjZWNyYWZ0IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTk3NjEpKV0sWyJTcGVjaWFsIEZvb2RzICYgV2VsYmVpbmcgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjY1NzApKV0sWyJTcGVjaWFsIEZvb2RzICYgV2VsbGJlaW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA5NjEwKSldLFsiU3BlY2lhbGl6ZWQgQXZpYXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTc2MjkpKV0sWyJTcGVjaWFsaXplZCBQcmludGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY3ODEyNikpXSxbIlNwZWNpYWxpemVkIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzI0NTExKSldLFsiU3BlY2lhbHR5ICYgQWR2YW5jZWQgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM2NTQ5KSldLFsiU3BlY2lhbHR5IENoZW1pY2FscyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzE3ODYpKV0sWyJTcGVjaWFsdHkgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzkwOTY0KSldLFsiU3BlY2lhbHR5IEluc3VyYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxMTI4NykpXSxbIlNwZWNpYWx0eSBJbnN1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1NTk3OSkpXSxbIlNwZWNpYWx0eSBNaW5pbmcgJiBNZXRhbHMgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzA1NTQ2KSldLFsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODcwOCkpXSxbIlNwZWNpYWx0eSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTUyODEpKV0sWyJTcGVjaWFsdHkgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ1NjUzKSldLFsiU3BvcnRpbmcgJiBPdXRkb29yIEdvb2RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg1ODk5KSldLFsiU3BvcnRpbmcgR29vZHMgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ0NDk0KSldLFsiU3BvcnRzICYgT3V0ZG9vciBGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxMzk4NykpXSxbIlNwb3J0cyAmIE91dGRvb3JzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MjE3MykpXSxbIlNwb3J0c3dlYXIgJiBPdXRkb29ycyBDbG90aGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0NjE0NCkpXSxbIlN0YXJjaCwgVmVnZXRhYmxlIEZhdCAmIE9pbCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjkxNDU2KSldLFsiU3RhdGUgQWdlbmN5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQyMTg4KSldLFsiU3RhdGlvbmFyeSBGdWVsIENlbGxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUxMDc0KSldLFsiU3RlYW0gJiBBaXItQ29uZGl0aW9uaW5nIFN1cHBseSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5ODYzOCkpXSxbIlN0ZWVsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTcyNzUzKSldLFsiU3RvcmFnZSBEZXZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQ2MzMwKSldLFsiU3VnYXIgJiBBcnRpZmljaWFsIFN3ZWV0ZW5lcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjYxMDcpKV0sWyJTdWdhcmNhbmUgRmFybWluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMzNjk4OCkpXSxbIlN1cGVybWFya2V0cyAmIENvbnZlbmllbmNlIFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc4MDIyKSldLFsiU3VwcmFuYXRpb25hbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3NDM4NikpXSxbIlN3aXRjaGdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTYzMDcpKV0sWyJTeW50aGV0aWMgRmFicmljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ1NTU1MCkpXSxbIlN5c3RlbSBTb2Z0d2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3MTcyNykpXSxbIlRWICYgVmlkZW8iLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzc3NDgpKV0sWyJUYWJsZXQgJiBOZXRib29rIENvbXB1dGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5OTEyMikpXSxbIlRhbm5pbmcgJiBTb2Z0ZW5pbmcgYWdlbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk3MzQ4KSldLFsiVGF4aSAmIExpbW91c2luZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4OTQ4KSldLFsiVGVjaG5vbG9neSBDb25zdWx0aW5nICYgT3V0c291cmNpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NjA1MTMpKV0sWyJUZWxlY29tbXVuaWNhdGlvbiBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTYxODUpKV0sWyJUZWxlY29tbXVuaWNhdGlvbnMgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg5Njg5KSldLFsiVGVsZWNvbW11bmljYXRpb25zIE5ldHdvcmsgSW5mcmFzdHJ1Y3R1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODUxNjQpKV0sWyJUZWxlY29tbXVuaWNhdGlvbnMgUmVzZWxsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTczMjY3KSldLFsiVGVsZW1lZGljaW5lIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU1ODIwKSldLFsiVGVsZXZpc2lvbiBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4Mjc5ODApKV0sWyJUZXN0aW5nICYgTWVhc3VyaW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMTM1NSkpXSxbIlRlc3RpbmcgTGFib3JhdG9yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIxNzg2KSldLFsiVGVzdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5MjU3NykpXSxbIlRleHRpbGVzICYgTGVhdGhlciBHb29kcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjA2NDcpKV0sWyJUZXh0aWxlcyAmIExlYXRoZXIgR29vZHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjM2NDQpKV0sWyJUZXh0aWxlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MTk5MykpXSxbIlRoZWF0cmVzICYgUGVyZm9ybWluZyBBcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE1NDEpKV0sWyJUaGVybWFsIFNvbGFyIFN5c3RlbXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTg0MjEpKV0sWyJUaWxlICYgUGF2aW5nIE1hdGVyaWFsIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODE1MSkpXSxbIlRpbWJlciBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3NTc1NSkpXSxbIlRpbWJlciBUcmFjdCBPcGVyYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIwNykpXSxbIlRpcmUgJiBUdWJlIE1hbnVmYWN0dXJlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjAwNTMpKV0sWyJUaXJlIERlYWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMzUwMzMpKV0sWyJUaXJlIFJldHJlYWRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjYwMDEpKV0sWyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjIxMzMpKV0sWyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0Mjc3NSkpXSxbIlRvYmFjY28iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzI5NzEpKV0sWyJUb29scyAmIEhhcmR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ3MDgzKSldLFsiVG9vbHMgJiBIb3VzZXdhcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE4MDkyKSldLFsiVG95cyAmIEdhbWVzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1MjgzMykpXSxbIlRveXMgJiBKdXZlbmlsZSBQcm9kdWN0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjIzMjcpKV0sWyJUb3lzICYgSnV2ZW5pbGUgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTc4MDQpKV0sWyJUcmFkZSAmIEJ1c2luZXNzIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMzg4NjUpKV0sWyJUcmFuc2FjdGlvbiAmIFBheW1lbnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTg2MCkpXSxbIlRyYW5zbGF0aW9uICYgSW50ZXJwcmV0YXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzMyNjkpKV0sWyJUcmF2ZWwgQWdlbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTMzNTkxKSldLFsiVHJ1Y2tpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MjEyMjUpKV0sWyJUcnVja3MvQ29uc3RydWN0aW9uL0Zhcm0gTWFjaGluZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDIxNjQ3KSldLFsiVHVyYmluZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg3NzI1KSldLFsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIERyaWxsaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTM3ODg4KSldLFsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIFByb2R1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjE5NzYpKV0sWyJVcmFuaXVtIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwNzQwNSkpXSxbIlVyYW5pdW0iLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjMxMzIpKV0sWyJVc2VkIENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDg3MDA2KSldLFsiVXNlZCBNZXJjaGFuZGlzZSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTI2MjcpKV0sWyJWT0lQIEVxdWlwbWVudCAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzI1MjMpKV0sWyJWT0lQIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk4MTEzKSldLFsiVmVnZXRhYmxlLCBGcnVpdCAmIE51dCBGYXJtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjEwNjgwKSldLFsiVmVuZGluZyBNYWNoaW5lIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0OTY4NSkpXSxbIlZlbnR1cmUgQ2FwaXRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NjU4NikpXSxbIlZldGVyaW5hcnkgRHJ1Z3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY3NCkpXSxbIlZldGVyaW5hcnkgTWVkaWNhbCBFcXVpcG1lbnQgJiBTdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxOTQ5MCkpXSxbIlZldGVyaW5hcnkgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTEzODQpKV0sWyJXYWxscGFwZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTQxNzMpKV0sWyJXYXJlaG91c2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNjM3OSkpXSxbIldhc3RlIE1hbmFnZW1lbnQsIERpc3Bvc2FsICYgUmVjeWNsaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDkzMzMzKSldLFsiV2FzdGUgdG8gRW5lcmd5IFN5c3RlbXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjEzMDEpKV0sWyJXYXRjaGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjMxMDUyKSldLFsiV2F0ZXIgJiBTZXdhZ2UgQ29uc3RydWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODYxNjU1KSldLFsiV2F0ZXIgU3VwcGx5ICYgSXJyaWdhdGlvbiBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM1OTgwKSldLFsiV2F0ZXIgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY5OTQ0KSldLFsiV2F2ZSBQb3dlciBFbmVyZ3kgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA1Nzc5KSldLFsiV2VhbHRoIE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTU3NykpXSxbIldlbGRpbmcgJiBTb2xkZXJpbmcgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE0ODE2KSldLFsiV2hvbGVzYWxlIERpc3RyaWJ1dG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwOTQ1NSkpXSxbIldpLUZpICYgV2ktTWF4IFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyODk1KSldLFsiV2luZCBTeXN0ZW1zICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk5Nzg4KSldLFsiV2luZXJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MTM2NzUpKV0sWyJXaXJlZCBUZWxlY29tbXVuaWNhdGlvbnMgQ2FycmllcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDcxNjUpKV0sWyJXaXJlbGVzcyBUZWxlY29tIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTc4MzA1KSldLFsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODUzMTY0KSldLFsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTI1NzQzKSldLFsiV2lyZXMgJiBDYWJsZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDA4NDUpKV0sWyJXb21lbidzIEFwcGFyZWwgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQxNDA1KSldLFsiV29tZW4ncyBDbG90aGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMzcxMykpXSxbIldvbWVuJ3MgRm9vdHdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MzQwNzcpKV0sWyJXb29kIENvbnRhaW5lciAmIFBhY2thZ2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUyNDUzOSkpXSxbIldvb2QgUHJvZHVjdCBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDM2NDApKV0sWyJXb29kIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2MDY1KSldLFsiWWFybiBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwOTUyMykpXSxbIlppbmMgT3JlIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1MDIwNykpXV0pCjtmdW5jdGlvbiB1KGwpe2NvbnN0IGk9by5nZXQobCk7cmV0dXJuIHZvaWQgMCE9PWk/aSgpOmZ1bmN0aW9uKGwpe2NvbnN0IGk9ZS5nZXQobCk7cmV0dXJuIHZvaWQgMCE9PWk/aSgpOmx9KGwpfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-overview.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.319Z","timestamp":1785154589319,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-market-overview.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.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 12:16:29 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"4da1b674340092915d8702d72bbe37b0\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:24 GMT\r\nx-amz-id-2: rkxjDwVa+BZGcmw6UeRl0QCk6QrxrYZ5+G3Y8TMcbEasggoMjLV7hySaRDfZlrrrZV4fW63Zvco=\r\nx-amz-request-id: 0C15HPBP7X7NEA7R\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: OXuJOoplCN1LBLnAR5KiXPT6J2yxzvDE\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:29:58\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 42462a2583bc319bc58768708120b4ed\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":13439,"size_decoded":6122,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"4da1b674340092915d8702d72bbe37b0","sha1":"ce34f4674f2388596b084664c821b5250567b1b5","sha256":"1f6b07878dd267a707f5bb13e3a0134826e90cec748b3d157a5d5c825425d808","sha512":"3321f820f80a9e2c194db19056ee00ee2760604f76843711d9b6f1d2684cda9e54d923c356489f24bbd6cacf8990882c9228b4f66f2c9362a095be087c3448a5","ssdeep":"384:gf6uCWoofYkFdj9uA222tEVSdDmMasVBvSFTXu:uDluA222tEVSdDmMaEYJXu","tlshash":"da52e76af660dcbd51d946cfa07a2720b61e3944f203aca4b9acd4c450adccca431f7e","first_seen":"2026-07-16T22:06:47.054006Z","last_seen":"2026-07-27T14:14:27.12313Z","times_seen":919,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsbzshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KG98fChvPXt9KSk7Y29uc3Qgcz0iX19GQUlMX18iLG49Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpufWNhdGNoKHQpe3JldHVybiBzfX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBoPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGM9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxvPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e28uaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6cyxyYXdTZXR0aW5nczpuLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksYz1sfHxmdW5jdGlvbih0LGU9aCl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPXMucGFyZW50Tm9kZTtuJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihuLmxvY2FsZT0iZW4iKTtjb25zdCBnPXMubm9uY2V8fHMuZ2V0QXR0cmlidXRlKCJub25jZSIpLG09ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSx1PWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9bXx8dTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG4mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobikpLG4mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9dT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGMsYSxBLGspLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoYyksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgTD10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoTD8odChMLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxMKSxzPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLHM/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQocykpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIG8oZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsbywhMSl9KG8uTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLG0pe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9bS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09Yy5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLG8pe2NvbnN0IHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKHMuaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fHMuc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLHMuc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxzLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIikscy5zdHlsZS51c2VyU2VsZWN0PSJub25lIixzLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIscy5zdHlsZS5kaXNwbGF5PSJibG9jayIscy5zdHlsZS5oZWlnaHQ9dCxzLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBuPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobiksdGhpcy5fc2V0SGFzaFN0cmluZyhuLGkpLHMuc2V0QXR0cmlidXRlKCJzcmMiLG4udG9TdHJpbmcoKSkscy50aXRsZT1yLHMubGFuZz1vLHN9X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IG89ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihvKXRyeXtjb25zdCBzPW5ldyBVUkwobyk7cy5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxzLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLHMuc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIscy50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7b30iYCl9fSkpfX19bmV3IGNsYXNzIGV4dGVuZHMgZHtnZXQgd2lkZ2V0SWQoKXtyZXR1cm4ibWFya2V0LW92ZXJ2aWV3In1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Xb3JrV2l0aCgpewpyZXR1cm5bImJlbG93TGluZUZpbGxDb2xvckZhbGxpbmciLCJiZWxvd0xpbmVGaWxsQ29sb3JHcm93aW5nIiwiYmVsb3dMaW5lRmlsbENvbG9yRmFsbGluZ0JvdHRvbSIsImJlbG93TGluZUZpbGxDb2xvckdyb3dpbmdCb3R0b20iLCJjaGFuZ2VEb3duQ29sb3IiLCJjaGFuZ2VOZXV0cmFsQ29sb3IiLCJjaGFuZ2VVcENvbG9yIiwiY29sb3JUaGVtZSIsImN1c3RvbWVyIiwiZGlzYWJsZUxhc3RGYWxsaW5nRmxhc2giLCJkaXNhYmxlTGFzdEdyb3dpbmdGbGFzaCIsImdyaWRMaW5lQ29sb3IiLCJoZWlnaHQiLCJoaWRlQWJzb2x1dGVDaGFuZ2UiLCJpbmRleE5hbWVCb2xkIiwiZGF0ZVJhbmdlIiwiZGF0ZVJhbmdlT3B0aW9ucyIsImlzVHJhbnNwYXJlbnQiLCJsYXJnZUNoYXJ0VXJsIiwibGFzdENvbG9yIiwibGFzdEZhbGxpbmdGbGFzaENvbG9yIiwibGFzdEdyb3dpbmdGbGFzaENvbG9yIiwibG9jYWxlIiwib25seURlc2NyaXB0aW9uIiwicGFpbnRMYXN0V2l0aENoYW5nZUNvbG9ycyIsInBsb3RMaW5lQ29sb3JGYWxsaW5nIiwicGxvdExpbmVDb2xvckdyb3dpbmciLCJzY2FsZUZvbnRDb2xvciIsInNob3dDaGFydCIsInNob3dTeW1ib2xMb2dvIiwic2hvd0Zsb2F0aW5nVG9vbHRpcCIsInN5bWJvbEFjdGl2ZUNvbG9yIiwic3ltYm9sRGVzY3JpcHRpb25Db2xvciIsInN5bWJvbFNlcGFyYXRvckNvbG9yIiwic3ltYm9sU2hvcnROYW1lQ29sb3IiLCJ0YWJBY3RpdmVDb2xvciIsInRhYkluYWN0aXZlQ29sb3IiLCJ0YWJzIiwidGFiU2xpZGVyQ29sb3IiLCJ0aWNrZXJDb2xvckZhbGxpbmciLCJ0aWNrZXJDb2xvckdyb3dpbmciLCJ2YWx1ZUJvbGQiLCJ2YWx1ZVRpdGxlTWFya2VkIiwid2lkdGgiXX19fSkoKTs="}},"time_used":53,"timings":{"blocked":-1,"dns":0,"connect":6,"send":0,"wait":5,"receive":0,"ssl":36},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/44454.8894c4711989445f0d47.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.254Z","timestamp":1785154590254,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/44454.8894c4711989445f0d47.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b75-4870\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:17:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 488f0ef41c31a61099eacacfccc7cf36\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":18544,"size_decoded":4072,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (18544), with no line terminators","md5":"65a23b6f9c1009a02488cce285e668a9","sha1":"2a365b0a6a01a693645c7d796545f0ca9777fb74","sha256":"8e58445f3ade1a29795b766655112616ccfd3be049bcf73d7e39ce0aa31f0e12","sha512":"888379601ae3a33a6eab2a5edcff2658d1ca484ae7b234c1ef8f1e60d3d66f6aa567d768433bc77f60501eac6aa0748583674be1bc0ba6df920237bf2e864695","ssdeep":"192:ZePD+NPwMQt//eJxKji7OA/xZquuzouh3y2eJEM79eyfjXseYcKZ8e84e+gkmbB+:6+IIH3/5GKmOz9YckE+4hnIn","tlshash":"9e82fc21e306a87921a7c209c3e0ee041149c7abd2a75ffdea97ed954f852d7073a848","first_seen":"2026-04-20T12:30:34.866221Z","last_seen":"2026-07-27T14:22:59.612913Z","times_seen":1102,"resource_available":false,"data":"LnR2LXNpdGUtdGFibGV7ZGlzcGxheTp0YWJsZTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7d2lkdGg6MTAwJX0udHYtc2l0ZS10YWJsZS0tbGF5b3V0X2F1dG97dGFibGUtbGF5b3V0OmF1dG99LnR2LXNpdGUtdGFibGUtLW5vLXNpZGUtcGFkZGluZyAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmZpcnN0LWNoaWxkOmFmdGVye2luc2V0LWlubGluZS1zdGFydDowfS50di1zaXRlLXRhYmxlLS1uby1zaWRlLXBhZGRpbmcgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpsYXN0LWNoaWxkOmFmdGVye2luc2V0LWlubGluZS1lbmQ6MH0udHYtc2l0ZS10YWJsZS0tbm8tc2lkZS1wYWRkaW5nIC50di1zaXRlLXRhYmxlX19jb2x1bW46Zmlyc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zaXRlLXRhYmxlLS1uby1zaWRlLXBhZGRpbmcgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpmaXJzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1zdGFydDowfX0udHYtc2l0ZS10YWJsZS0tbm8tc2lkZS1wYWRkaW5nIC50di1zaXRlLXRhYmxlX19jb2x1bW46bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MDt0ZXh0LWFsaWduOmVuZH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zaXRlLXRhYmxlLS1uby1zaWRlLXBhZGRpbmcgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpsYXN0LWNoaWxke3BhZGRpbmctaW5saW5lLWVuZDowfX0udHYtc2l0ZS10YWJsZV9fcm93e2Rpc3BsYXk6dGFibGUtcm93O3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2V9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkOmhvdmVyLC50di1zaXRlLXRhYmxlX19yb3ctLWhvdmVyYWJsZTpob3ZlciwudHYtc2l0ZS10YWJsZV9fcm93LS1pbnRlcmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNpdGUtdGFibGVfX3Jvdy0taW50ZXJhY3RpdmV7Y3Vyc29yOnBvaW50ZXJ9LnR2LXNpdGUtdGFibGVfX3Jvdy0taW50ZXJhY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApfS50di1zaXRlLXRhYmxlX19yb3ctLWR1bW15e3Zpc2liaWxpdHk6aGlkZGVufS50di1zaXRlLXRhYmxlX19yb3ctLXVwZGF0ZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQpO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0udHYtc2l0ZS10YWJsZV9fY29sdW1ue2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OnRhYmxlLWNlbGw7bGluZS1oZWlnaHQ6MS41O3BhZGRpbmc6OHB4IDEwcHg7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXdpZGdldC1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MXB4O2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTFweDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS10YWJsZV9fY29sdW1uOmhvdmVyOmFmdGVye3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNpdGUtdGFibGVfX2NvbHVtbjpmaXJzdC1jaGlsZDphZnRlcntpbnNldC1pbmxpbmUtc3RhcnQ6MjBweH0udHYtc2l0ZS10YWJsZV9fY29sdW1uOmxhc3QtY2hpbGQ6YWZ0ZXJ7aW5zZXQtaW5saW5lLWVuZDoyMHB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNpdGUtdGFibGVfX2NvbHVtbjpmaXJzdC1jaGlsZDphZnRlcntpbnNldC1pbmxpbmUtc3RhcnQ6MTJweH0udHYtc2l0ZS10YWJsZV9fY29sdW1uOmxhc3QtY2hpbGQ6YWZ0ZXJ7aW5zZXQtaW5saW5lLWVuZDoxMnB4fX1AbWVkaWEgKG1heC13aWR0aDozMjlweCl7LnR2LXNpdGUtdGFibGVfX2NvbHVtbjpmaXJzdC1jaGlsZDphZnRlcntpbnNldC1pbmxpbmUtc3RhcnQ6MTBweH0udHYtc2l0ZS10YWJsZV9fY29sdW1uOmxhc3QtY2hpbGQ6YWZ0ZXJ7aW5zZXQtaW5saW5lLWVuZDoxMHB4fX0udHYtc2l0ZS10YWJsZV9fY29sdW1uOmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2l0ZS10YWJsZV9fY29sdW1uOmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjMyOXB4KXsudHYtc2l0ZS10YWJsZV9fY29sdW1uOmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjEwcHh9fS50di1zaXRlLXRhYmxlX19jb2x1bW46bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDt0ZXh0LWFsaWduOmVuZH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zaXRlLXRhYmxlX19jb2x1bW46bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MTJweH19QG1lZGlhIChtYXgtd2lkdGg6MzI5cHgpey50di1zaXRlLXRhYmxlX19jb2x1bW46bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MTBweH19LnR2LXNpdGUtdGFibGVfX2NvbHVtbi0tdHJ1bmNhdGV7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCV9LnR2LXNpdGUtdGFibGVfX2NvbHVtbi0tYWxpZ25fbGVmdHt0ZXh0LWFsaWduOnN0YXJ0fS50di1zaXRlLXRhYmxlX19jb2x1bW4tLWFsaWduX2xlZnQ6bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwYWRkaW5nLWlubGluZS1zdGFydDowO3RleHQtYWxpZ246c3RhcnR9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2l0ZS10YWJsZV9fY29sdW1uLS1hbGlnbl9sZWZ0Omxhc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtZW5kOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjMyOXB4KXsudHYtc2l0ZS10YWJsZV9fY29sdW1uLS1hbGlnbl9sZWZ0Omxhc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtZW5kOjEwcHh9fS50di1zaXRlLXRhYmxlX19jb2x1bW4tLWFsaWduX3JpZ2h0e3RleHQtYWxpZ246ZW5kfS50di1zaXRlLXRhYmxlX19jb2x1bW4tLWFsaWduX3JpZ2h0Omxhc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtZW5kOjIwcHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MDt0ZXh0LWFsaWduOmVuZH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zaXRlLXRhYmxlX19jb2x1bW4tLWFsaWduX3JpZ2h0Omxhc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtZW5kOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjMyOXB4KXsudHYtc2l0ZS10YWJsZV9fY29sdW1uLS1hbGlnbl9yaWdodDpsYXN0LWNoaWxke3BhZGRpbmctaW5saW5lLWVuZDoxMHB4fX0udHYtc2l0ZS10YWJsZV9fY29sdW1uLS1hbGlnbl90b3B7dmVydGljYWwtYWxpZ246dG9wfS50di1zaXRlLXRhYmxlX19jb2x1bW4tLW5vLXBhZGRpbmdfdG9we3BhZGRpbmctdG9wOjB9QG1lZGlhIChtYXgtd2lkdGg6NDc5cHgpey50di1zaXRlLXRhYmxlX19jb2x1bW4tLW5vLXBob25lLXZlcnRpY2Fse2Rpc3BsYXk6bm9uZX0udHYtc2l0ZS10YWJsZV9fY29sdW1uLS1sYXN0LXBob25lLXZlcnRpY2Fse3BhZGRpbmctaW5saW5lLWVuZDoxMnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjA7dGV4dC1hbGlnbjplbmR9LnR2LXNpdGUtdGFibGVfX2NvbHVtbi0tbGFzdC1waG9uZS12ZXJ0aWNhbDphZnRlcntpbnNldC1pbmxpbmUtZW5kOjEycHh9fS50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGVfX3Jvdy0taGlnaGxpZ2h0ZWQrLnR2LXNpdGUtdGFibGVfX3JvdwkJCQkJLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlciwudHYtc2l0ZS10YWJsZV9fcm93LS1uby1ib3JkZXIgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlciwudHYtc2l0ZS10YWJsZV9fcm93OmZpcnN0LWNoaWxkIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS10YWJsZV9fcm93LS1ob3ZlcmFibGU6aG92ZXIgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlciwudHYtc2l0ZS10YWJsZV9fcm93LS1ob3ZlcmFibGU6aG92ZXIrLnR2LXNpdGUtdGFibGVfX3Jvdy0taG92ZXJhYmxlIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGVfX3Jvdy0taW50ZXJhY3RpdmU6aG92ZXIgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlciwudHYtc2l0ZS10YWJsZV9fcm93LS1pbnRlcmFjdGl2ZTpob3ZlcisudHYtc2l0ZS10YWJsZV9fcm93LS1pbnRlcmFjdGl2ZSAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX19LnR2LXNpdGUtdGFibGVfX2lubGluZS1ibG9jay13cmFwcGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50di1zaXRlLXRhYmxlLS1zdGFydC1ib3JkZXIgLnR2LXNpdGUtdGFibGVfX3JvdzpmaXJzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itd2lkZ2V0LWJvcmRlcil9LnR2LXNpdGUtdGFibGUtLXN0YXJ0LWJvcmRlciAudHYtc2l0ZS10YWJsZV9fcm93LS1oaWdobGlnaHRlZDpmaXJzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNpdGUtdGFibGUtLXN0YXJ0LWJvcmRlciAudHYtc2l0ZS10YWJsZV9fcm93LS1ob3ZlcmFibGU6Zmlyc3QtY2hpbGQ6aG92ZXIgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCl9fS50di1zaXRlLXRhYmxlLS1uby1zdGFydC1ib3JkZXIgLnR2LXNpdGUtdGFibGVfX3JvdzpmaXJzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX0udHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20gLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlcntib3R0b206LTFweDt0b3A6YXV0b30udHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20gLnR2LXNpdGUtdGFibGVfX3JvdzpmaXJzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXdpZGdldC1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MXB4O2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTFweDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlfS50di1zaXRlLXRhYmxlLS1saW5lLWJvdHRvbSAudHYtc2l0ZS10YWJsZV9fcm93LS1oaWdobGlnaHRlZDpmaXJzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmJlZm9yZSwudHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20udHYtc2l0ZS10YWJsZS0tbm8tc3RhcnQtYm9yZGVyIC50di1zaXRlLXRhYmxlX19yb3c6Zmlyc3QtY2hpbGQgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20gLnR2LXNpdGUtdGFibGVfX3JvdzpmaXJzdC1jaGlsZDpob3ZlciAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCl9fS50di1zaXRlLXRhYmxlLS1saW5lLWJvdHRvbSAudHYtc2l0ZS10YWJsZV9fcm93LS1oaWdobGlnaHRlZCsudHYtc2l0ZS10YWJsZV9fcm93IC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tIC50di1zaXRlLXRhYmxlX19yb3c6Zmlyc3QtY2hpbGQgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjphZnRlciwudHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20udHYtc2l0ZS10YWJsZS0td2l0aC1lbmQtYm9yZGVyIC50di1zaXRlLXRhYmxlX19yb3c6bGFzdC1jaGlsZCAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itd2lkZ2V0LWJvcmRlcil9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zaXRlLXRhYmxlLS1saW5lLWJvdHRvbSAudHYtc2l0ZS10YWJsZV9fcm93LS1ob3ZlcmFibGU6aG92ZXIrLnR2LXNpdGUtdGFibGVfX3Jvdy0taG92ZXJhYmxlIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tIC50di1zaXRlLXRhYmxlX19yb3ctLWludGVyYWN0aXZlOmhvdmVyKy50di1zaXRlLXRhYmxlX19yb3ctLWludGVyYWN0aXZlIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci13aWRnZXQtYm9yZGVyKX19LnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tIC50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tIC50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkOmZpcnN0LWNoaWxkIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tLnR2LXNpdGUtdGFibGUtLXdpdGgtZW5kLWJvcmRlciAudHYtc2l0ZS10YWJsZV9fcm93LS1oaWdobGlnaHRlZDpsYXN0LWNoaWxkIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS10YWJsZS0tbGluZS1ib3R0b20gLnR2LXNpdGUtdGFibGVfX3Jvdy0taG92ZXJhYmxlOmhvdmVyIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tIC50di1zaXRlLXRhYmxlX19yb3ctLWludGVyYWN0aXZlOmhvdmVyIC50di1zaXRlLXRhYmxlX19jb2x1bW46YWZ0ZXIsLnR2LXNpdGUtdGFibGUtLWxpbmUtYm90dG9tLnR2LXNpdGUtdGFibGUtLXdpdGgtZW5kLWJvcmRlciAudHYtc2l0ZS10YWJsZV9fcm93LS1ob3ZlcmFibGU6bGFzdC1jaGlsZDpob3ZlciAudHYtc2l0ZS10YWJsZV9fY29sdW1uOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX19LnR2LXNpdGUtdGFibGUtLXdpdGgtZW5kLWJvcmRlciAudHYtc2l0ZS10YWJsZV9fcm93Omxhc3QtY2hpbGQgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci13aWRnZXQtYm9yZGVyKTtib3R0b206LTFweDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDtpbnNldC1pbmxpbmUtZW5kOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZX0udHYtc2l0ZS10YWJsZS0td2l0aC1lbmQtYm9yZGVyIC50di1zaXRlLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkOmxhc3QtY2hpbGQgLnR2LXNpdGUtdGFibGVfX2NvbHVtbjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2l0ZS10YWJsZS0td2l0aC1lbmQtYm9yZGVyIC50di1zaXRlLXRhYmxlX19yb3ctLWhvdmVyYWJsZTpsYXN0LWNoaWxkOmhvdmVyIC50di1zaXRlLXRhYmxlX19jb2x1bW46YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KX19W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtYkFFMzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1iQUUzOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCl9LnR2LXdpZGdldC13YXRjaC1saXN0e2ZvbnQtc2l6ZTowfS50di13aWRnZXQtd2F0Y2gtbGlzdC5pLWxvYWRpbmd7bWluLWhlaWdodDoyMDBweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYmxle2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjAgMTJweDtwYWRkaW5nLWlubGluZS1lbmQ6OHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweH1AbWVkaWEgKG1pbi13aWR0aDoxMDI0cHgpey50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGFibGV7cGFkZGluZy1pbmxpbmUtZW5kOjEycHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTJweH19LnR2LXdpZGdldC13YXRjaC1saXN0X19yb3d7Ym9yZGVyLXJhZGl1czo2cHg7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTpmbGV4O2hlaWdodDo2MHB4fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fcm93LS1oaWdobGlnaHRlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLWJBRTMpO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXdpZGdldC13YXRjaC1saXN0X19yb3ctLWludGVyYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcil9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbWFpbi1jb2x1bW4sLnR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW57ZGlzcGxheTpmbGV4IWltcG9ydGFudDtwYWRkaW5nLWlubGluZS1lbmQ6OHB4IWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo0ODBweCl7LnR2LXdpZGdldC13YXRjaC1saXN0X19tYWluLWNvbHVtbiwudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3F1b3RlLWNvbHVtbntwYWRkaW5nLWlubGluZS1lbmQ6NDVweCFpbXBvcnRhbnR9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbWFpbi1jb2x1bW46bGFzdC1jaGlsZCwudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3F1b3RlLWNvbHVtbjpsYXN0LWNoaWxke3BhZGRpbmctaW5saW5lLWVuZDo4cHghaW1wb3J0YW50fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbWFpbi1jb2x1bW46bGFzdC1jaGlsZDphZnRlciwudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX21haW4tY29sdW1uOmxhc3QtY2hpbGQ6YmVmb3JlLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fcXVvdGUtY29sdW1uOmxhc3QtY2hpbGQ6YWZ0ZXIsLnR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW46bGFzdC1jaGlsZDpiZWZvcmV7aW5zZXQtaW5saW5lLWVuZDo4cHghaW1wb3J0YW50fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbWFpbi1jb2x1bW46Zmlyc3QtY2hpbGQsLnR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW46Zmlyc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4IWltcG9ydGFudH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX21haW4tY29sdW1uOmZpcnN0LWNoaWxkOmFmdGVyLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fbWFpbi1jb2x1bW46Zmlyc3QtY2hpbGQ6YmVmb3JlLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fcXVvdGUtY29sdW1uOmZpcnN0LWNoaWxkOmFmdGVyLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fcXVvdGUtY29sdW1uOmZpcnN0LWNoaWxkOmJlZm9yZXtpbnNldC1pbmxpbmUtc3RhcnQ6OHB4IWltcG9ydGFudH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX21haW4tY29sdW1ue2JveC1zaXppbmc6Ym9yZGVyLWJveDtmbGV4LXNocmluazoxO21pbi13aWR0aDoxJTtwYWRkaW5nLWlubGluZS1lbmQ6MzJweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX21haW4tY29sdW1uLS10aXRsZXtwYWRkaW5nLWJvdHRvbTowO3BhZGRpbmctdG9wOjB9LnR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW57YWxpZ24taXRlbXM6ZmxleC1lbmQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZ3JvdzoxO2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOjE2cHg7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7dmVydGljYWwtYWxpZ246dG9wfUBtZWRpYSAobWluLXdpZHRoOjQ4MHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3F1b3RlLWNvbHVtbnthbGlnbi1pdGVtczpjZW50ZXI7ZmxleC1kaXJlY3Rpb246cm93O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19LnR2LXdpZGdldC13YXRjaC1saXN0X19xdW90ZS1jb2x1bW4tLXRpdGxle3BhZGRpbmctYm90dG9tOjA7cGFkZGluZy10b3A6MXB4fS50di13aWRnZXQtd2F0Y2gtbGlzdF9faWNvbnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LnR2LXdpZGdldC13YXRjaC1saXN0X190aWNrZXJ7ZGlzcGxheTpmbGV4fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbmFtZXttaW4td2lkdGg6NDBweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhcnR7Ym9yZGVyLXJhZGl1czo2cHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRhaW46c3RyaWN0O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE0MnB4O21hcmdpbi1pbmxpbmUtZW5kOjhweDttYXJnaW4taW5saW5lLXN0YXJ0OjhweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYXJ0e21hcmdpbi1pbmxpbmUtZW5kOjEycHg7bWFyZ2luLWlubGluZS1zdGFydDoxMnB4fX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYXJ0LW9ubHl7bWFyZ2luLWJvdHRvbToxMnB4fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGltZWZyYW1le2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjhweDttYXJnaW46OHB4IDAgMTJweDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjAgMTJweDtwYWRkaW5nLWlubGluZS1lbmQ6OHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweDt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpbWVmcmFtZXtwYWRkaW5nLWlubGluZS1lbmQ6MTJweDtwYWRkaW5nLWlubGluZS1zdGFydDoxMnB4fX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3N5bWJvbHMtd3JhcHBlcntvdmVyZmxvdy15OmF1dG99QHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6bm9uZSl7LnR2LXdpZGdldC13YXRjaC1saXN0X19zeW1ib2xzLXdyYXBwZXJ7c2Nyb2xsYmFyLWNvbG9yOnZhcigtLXR2LWNvbG9yLXNjcm9sbGJhci10aHVtYi1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXNjcm9sbC1iZykpICMwMDAwO3Njcm9sbGJhci13aWR0aDp0aGlufX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3N5bWJvbHMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHh9LnR2LXdpZGdldC13YXRjaC1saXN0X19zeW1ib2xzLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXNjcm9sbGJhci10aHVtYi1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXNjcm9sbC1iZykpO2JvcmRlcjoxcHggc29saWQgIzAwMDA7Ym9yZGVyLXJhZGl1czozcHh9LnR2LXdpZGdldC13YXRjaC1saXN0X19zeW1ib2xzLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOjNweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3N5bWJvbHMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2hlYWR7bWFyZ2luLWlubGluZS1lbmQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjA7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmctaW5saW5lLWVuZDo4cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4fUBtZWRpYSAobWluLXdpZHRoOjEwMjRweCl7LnR2LXdpZGdldC13YXRjaC1saXN0X19oZWFke3BhZGRpbmctaW5saW5lLWVuZDoxMnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9faGVhZC1lbWJlZHttYXJnaW46MTZweCAwIDA7cGFkZGluZy1pbmxpbmUtZW5kOjhweDtwYWRkaW5nLWlubGluZS1zdGFydDo4cHh9QG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2hlYWQtZW1iZWR7cGFkZGluZy1pbmxpbmUtZW5kOjEycHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTJweH19LnR2LXdpZGdldC13YXRjaC1saXN0X190YWJze2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MzhweDttYXJnaW4tdG9wOjE2cHh9LnR2LXdpZGdldC13YXRjaC1saXN0X190YWJzIC50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGFicy0tbGVmdCwudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYnMgLnR2LXdpZGdldC13YXRjaC1saXN0X190YWJzLS1yaWdodHtwYWRkaW5nOjB9QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGFicyAudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYnMtLWxlZnQsLnR2LXdpZGdldC13YXRjaC1saXN0X190YWJzIC50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGFicy0tcmlnaHR7cGFkZGluZzo1cHh9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fYmxhbmstdGFie2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjhweDtsaW5lLWhlaWdodDoyMXB4O3BhZGRpbmc6MCA2cHh9LnR2LXdpZGdldC13YXRjaC1saXN0X19ibGFuay10YWI6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1zdGFydDoxMnB4fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fYm9keS1lbWJlZHttYXJnaW46MDtwYWRkaW5nOjB9LnR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1le2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjE2cHg7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtb3ZlcmZsb3c6Y2xpcDt0cmFuc2l0aW9uOmNvbG9yIC4zNXMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lLS13aG9sZS1oZWlnaHR7bGluZS1oZWlnaHQ6NDRweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3Nob3J0LW5hbWUtLWJvbGR7Zm9udC13ZWlnaHQ6NzAwfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fc2hvcnQtbmFtZTpub3QoLnR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lLS1ub3QtY2xpY2thYmxlKTphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc31AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXdpZGdldC13YXRjaC1saXN0X19zaG9ydC1uYW1lOm5vdCgudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3Nob3J0LW5hbWUtLW5vdC1jbGlja2FibGUpOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmt7YmFja2dyb3VuZDp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgdmlld0JveD0nMCAwIDEwIDEwJyUzRSUzQ3BhdGggZmlsbD0nJTIzZmY0YTY4JyBkPSdNNSAxMEE1IDUgMCAxIDAgNSAwYTUgNSAwIDAgMCAwIDEwbS0uNS0zaDFjLjYgMCAuNiAxIDAgMWgtMWMtLjYgMC0uNi0xIDAtMU00IDJoMnYybC0uNSAyaC0xTDQgNHonLyUzRSUzQy9zdmclM0UiKSA1MCUgbm8tcmVwZWF0O2N1cnNvcjpkZWZhdWx0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxMHB4O3dpZHRoOjEwcHh9LnR2LXdpZGdldC13YXRjaC1saXN0X19kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJTstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE5cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEzcHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH1AbWVkaWEgKG1pbi13aWR0aDo0ODBweCl7LnR2LXdpZGdldC13YXRjaC1saXN0X19kZXNjcmlwdGlvbnstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE3cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwfX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2Rlc2NyaXB0aW9uLS11cHBlcmNhc2V7bGV0dGVyLXNwYWNpbmc6LjNweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0LXdyYXB7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTttYXJnaW4taW5saW5lLWVuZDoxcHg7cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhIChtaW4td2lkdGg6NDgwcHgpey50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdC13cmFwe21heC13aWR0aDpjYWxjKDEwMCUgLSAxMDBweCl9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2xhc3Qtd3JhcHttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMTI2cHgpfX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2xhc3Qtd3JhcDpkaXIocnRsKXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2xhc3R7cG9pbnRlci1ldmVudHM6YXV0bzt0ZXh0LWFsaWduOmVuZDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE2cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNpdGlvbjpjb2xvciAuMTE2NjY2NjdzIGVhc2U7d2hpdGUtc3BhY2U6bm93cmFwfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdDpkaXIocnRsKXtkaXJlY3Rpb246bHRyfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdC0tYm9sZHtmb250LXdlaWdodDo3MDB9LnR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0LS1pbmxpbmV7bWFyZ2luLXRvcDouMmVtfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdC5mYWxsaW5nLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdC5ncm93aW5ne2JhY2tncm91bmQ6IzAwMDA7dHJhbnNpdGlvbi1kdXJhdGlvbjo1OC4zMzMzM21zfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fbGFzdC5mYWxsaW5ne2NvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCl9LnR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0Lmdyb3dpbmd7Y29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2xhc3QuZmFsbGluZ3tjb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2xhc3QuZ3Jvd2luZ3tjb2xvcjp2YXIoLS1jb2xvci1ncm93aW5nKX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7bWFyZ2luLXRvcDowO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEwcHg7cG9pbnRlci1ldmVudHM6bm9uZTt0ZXh0LWFsaWduOmVuZDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApfUBtZWRpYSAobWluLXdpZHRoOjQ4MHB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2V7d2lkdGg6MTI2cHh9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlOmRpcihydGwpe2RpcmVjdGlvbjpsdHJ9LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtLWlubGluZXttYXJnaW4tdG9wOi4wNWVtfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZXtwb2ludGVyLWV2ZW50czphdXRvOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MTlweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTNweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDB9QG1lZGlhIChtaW4td2lkdGg6NDgwcHgpey50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZXtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNXB4O2xpbmUtaGVpZ2h0OjIwcHh9fS50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZTpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OjhweH1AbWVkaWEgKG1pbi13aWR0aDo0ODBweCl7LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5lOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6YXV0b319LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5lLS13aG9sZS1oZWlnaHR7bGluZS1oZWlnaHQ6NDRweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZSwudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS1pbmxpbmV7dHJhbnNpdGlvbjpjb2xvciAuMTE2NjY2NjdzIGVhc2V9LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5lLmZhbGxpbmcsLnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5lLmdyb3dpbmcsLnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UuZmFsbGluZywudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS5ncm93aW5ne2JhY2tncm91bmQ6IzAwMDA7dHJhbnNpdGlvbi1kdXJhdGlvbjo1OC4zMzMzM21zfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZS5mYWxsaW5nLC50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLmZhbGxpbmd7Y29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS1pbmxpbmUuZ3Jvd2luZywudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS5ncm93aW5ne2NvbG9yOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCl9LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UuZG93biAudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX2NoYW5nZS1pbmxpbmV7Y29sb3I6dmFyKC0tY29sb3ItZmFsbGluZyl9LnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UudXAgLnR2LXdpZGdldC13YXRjaC1saXN0X19jaGFuZ2UtaW5saW5le2NvbG9yOnZhcigtLWNvbG9yLWdyb3dpbmcpfS50di13aWRnZXQtd2F0Y2gtbGlzdF9fdGl0bGV7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7Zm9udC1zaXplOjE1cHg7bWFyZ2luLXRvcDowfUBtZWRpYSAobWF4LXdpZHRoOjQ3OXB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpdGxlLnR2LXdpZGdldC13YXRjaC1saXN0X19sYXN0e3RleHQtYWxpZ246Y2VudGVyfX0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RpdGxlIC50di13aWRnZXQtd2F0Y2gtbGlzdF9fY2hhbmdlLWlubGluZXtmb250LXNpemU6MTVweH0udHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYmxpbmV7bWFyZ2luLWlubGluZS1lbmQ6MjBweDttYXJnaW4taW5saW5lLXN0YXJ0OjIwcHg7cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtd2lkZ2V0LXdhdGNoLWxpc3RfX3RhYmxpbmV7bWFyZ2luLWlubGluZS1lbmQ6MTJweDttYXJnaW4taW5saW5lLXN0YXJ0OjEycHh9fQ=="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/38411.5db44eb39bd0bdc9a078.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.734Z","timestamp":1785154590734,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/38411.5db44eb39bd0bdc9a078.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 90\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"6a323c19-5a\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/17/2026 11:16:03\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 40170873f808eeac20277af9bcc6b315\r\ncdn-cache: HIT\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":90,"size_decoded":874,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"fc60edf251616c67af6375a5dfe63cab","sha1":"417cc7bbafcf180fe9f70639785a48072e8e4fe0","sha256":"648d4d8493db2723d3176a8585a637d1754f768fb18e1e37eb8c2ea2f03725e3","sha512":"e7026466d15a9a1d872225d0298cc01ec0d74c6d57415d93f5d1f9781288a8fb94c803173f9988fe1241a46e3cadbe0230a211472f58690d729461ef2fe0086b","ssdeep":"","tlshash":"05b012453b9220c876321550eb2ca0453282743200328c229103c2b030801043004075","first_seen":"2026-06-17T14:59:58.186978Z","last_seen":"2026-07-27T14:23:37.901533Z","times_seen":443,"resource_available":false,"data":"LnNxdWFyZVRhYnMtZHk2b05haTggLnNxdWFyZVRhYkJ1dHRvbi1keTZvTmFpODpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjEycHh9"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.998Z","timestamp":1785154589998,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /embed-widget/market-overview/?locale=en HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://persimmontrades.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\ncache-control: max-age=120\r\nexpires: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-security-policy: script-src https://static.tradingview.com/static/ blob: https://*.ampproject.org/ https://*.paypal.com/ https://platform.twitter.com https://platform.x.com https://songbird.cardinalcommerce.com/edge/v1/ https://checkout.razorpay.com/ https://cdn.razorpay.com/static/cx/ https://*.checkout.com/ https://*.revolut.com/ https://*.cardinaltrusted.com https://pay.google.com/gp/p/js/ https://applepay.cdn-apple.com/jsapi/ https://tradingview-gateway.com/ https://www.tradingview-widget.com/static/bundles/embed/ 'nonce-mH/OCKA0PTM3YMkugXtzoQ=='; default-src 'self' https: data: blob: wss: 'unsafe-inline'; base-uri 'none'; object-src 'none'\r\ncross-origin-opener-policy: same-origin-allow-popups\r\nreferrer-policy: origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/27/2026 12:14:55\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 98604de02b88e8940b757bd3fc7f78b4\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"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":55868,"size_decoded":18195,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (17729)","md5":"dae15c503d364f8bd9ab023ec79fb0d9","sha1":"e4490f894df09bcbf7d15e64bc19d83f6d98af0a","sha256":"875ebda4c2bd4c41d0780a9d099cca68071e592e075139d37e2e0e87ad7343cc","sha512":"20a709891836a8e4907616f262321357b087face79aa2f85e771494b9fcdb9bc13072e189de1cb5c86f1b927e81b48b223aea3577dc6f5f5ea01c49fa889492f","ssdeep":"1536:Yj8pteeAQKlNzfMOdo3TW8pNogdqh3OWn+66ceuvRMO:Yj8pteeAQKlNzfMOdo3TW8pNlxWe4MO","tlshash":"3043f79398098705ead64a447c33b103fa1903a8d55268d479e8e9dc159ffc2f0a7bfe","first_seen":"2026-07-27T12:17:15.206261Z","last_seen":"2026-07-27T12:17:29.210995Z","times_seen":2,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5NYXJrZXQgT3ZlcnZpZXcgd2lkZ2V0PC90aXRsZT4KCgk8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLyIgY3Jvc3NvcmlnaW4+CgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTUyNy4xNWM1YzI1ZDI3YTU2YTBkZjc3Mi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zOTA3MC41NWNiYzdhMWRhOTYzYjM4MjliMy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDY5MDcuYzVhZjhhYTdiNTA4MmIxODc1YTUuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzI4MTYuMzU1ZDc1YjIxYWU0YjUzNGE4NDkuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDMzMjUuMjU2ZmE1YTUyMTNiOWNiNzBmNWMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzkwNS42ODJlODllZjJkYzRjNzA0MjNjNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTkzMi4yYTcwZDM5N2MzNGYyZTlkZTk0Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81NDY4MS5hNzE3MTEwZTY3NDlmMzA3ZWQ2ZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MTUwOC43NjcyMTkyODNjNjVmNGQ0Y2E2ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjYzMi41OTZlNTM0OGExNTM4YTE4ZmQ0ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84NDA4LmRlNTM0NjYzZTA1MjA3NWJhMTJmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM4MDAyLjg2ZDI4MGZlZWFiYWI2OTgzNjBiLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzYyNjMwLjUzNzMyZGFlYTgxNzg0NDczOTNmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzYyNjgxLjY4ODNjNGIxN2U2YTg5ZTRiODdmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzU2OTk5LjQwNjI1YWI1Mjk0YjNlZTYyM2ZkLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQ0NDU0Ljg4OTRjNDcxMTk4OTQ0NWYwZDQ3LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoKPHNjcmlwdCBub25jZT0ibUgvT0NLQTBQVE0zWU1rdWdYdHpvUT09Ij4KCXdpbmRvdy5sb2NhbGUgPSAnZW4nOwoJd2luZG93Lmxhbmd1YWdlID0gJ2VuJzsKPC9zY3JpcHQ+Cgk8c2NyaXB0IG5vbmNlPSJtSC9PQ0tBMFBUTTNZTWt1Z1h0em9RPT0iPnZhciBlbnZpcm9ubWVudCA9ICJiYXR0bGUiOzwvc2NyaXB0PgoKCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF9tYXJrZXRfb3ZlcnZpZXdfd2lkZ2V0LmIzNzc4Y2Y1OWM3OTcyZmIyMTE3LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi41ODY2Ny5kMTVmYzRiNWM2MzFiYjVlY2U4ZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uNTYwOTMuYTQ3YTkwODA5NjYwZjgwMWMyYWMuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzEzMTQ4LjMyY2MwMWRjMDE3NTFiOTE2ODJjLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTI2NS5jMjA4ZWY4Mzc5ZTA3M2Y5NGQxNi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA3MDYuYTU5MTNhYTZhZDYyZDlkYmYwMzEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk5ODI3LmQzOTc2ZGMwYzVjZmEyYzIxNDBlLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81NjI1OC4yODJlNjE0MWZjMDJhYzg1ZDBkNS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNzE0MjQuZWFlZmFmNTY4ZGM4ZjFkMTYyMjguanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM4NjAuNWYxNjUzN2VhZjdlMjAwMjBiNGUuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzY1ODYyLjk1NzY0NzUyYzA5ZjNmMThmODkwLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MTAzMS41MzVmMjdiNzc2ZjM5NGM3ZTQzYS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQ3MDguNzNkMmJjYTM3MjA3YzY3YTQxZjQuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM1NTIuNGM1NTM1MTgzYjdhMDMzMGE4OWQuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNTk0LmU4NzQ0NGUyNmY5ZTEyNTQ1MjMxLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84Nzk5NS45MTFiMjYxODE3NzhmZWNjNGI0ZS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQ4MjUuOGE5MGMwYzNlYmQ0MTNlYjljODEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzcyNzguNzM4NzU5ZWYwYWMzMzQ2OTI1M2IuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzE1MDQ5LjA4ZTA4ODhlN2Q0NWYzNzE0MTdhLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83ODY4OC5iMjFlODY3ZGRjYzczODA2ZDFlYi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTE0NzEuYjI5OTc0ZmQwYzllMDgyYjY3NWYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX21hcmtldF9vdmVydmlld193aWRnZXQuOTY0Mjk1OTQ5NTRmMTc4NzJjNWEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL3J1bnRpbWUtZW1iZWRfbWFya2V0X292ZXJ2aWV3X3dpZGdldC5iMzc3OGNmNTljNzk3MmZiMjExNy5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU4NjY3LmQxNWZjNGI1YzYzMWJiNWVjZThkLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uNTYwOTMuYTQ3YTkwODA5NjYwZjgwMWMyYWMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xMzE0OC4zMmNjMDFkYzAxNzUxYjkxNjgyYy5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQ5MjY1LmMyMDhlZjgzNzllMDczZjk0ZDE2LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA3MDYuYTU5MTNhYTZhZDYyZDlkYmYwMzEuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTgyNy5kMzk3NmRjMGM1Y2ZhMmMyMTQwZS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzU2MjU4LjI4MmU2MTQxZmMwMmFjODVkMGQ1LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNzE0MjQuZWFlZmFmNTY4ZGM4ZjFkMTYyMjguanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zODYwLjVmMTY1MzdlYWY3ZTIwMDIwYjRlLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNjU4NjIuOTU3NjQ3NTJjMDlmM2YxOGY4OTAuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MTAzMS41MzVmMjdiNzc2ZjM5NGM3ZTQzYS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk0NzA4LjczZDJiY2EzNzIwN2M2N2E0MWY0LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzU1Mi40YzU1MzUxODNiN2EwMzMwYTg5ZC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNTk0LmU4NzQ0NGUyNmY5ZTEyNTQ1MjMxLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODc5OTUuOTExYjI2MTgxNzc4ZmVjYzRiNGUuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDgyNS44YTkwYzBjM2ViZDQxM2ViOWM4MS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzcyNzguNzM4NzU5ZWYwYWMzMzQ2OTI1M2IuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTA0OS4wOGUwODg4ZTdkNDVmMzcxNDE3YS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc4Njg4LmIyMWU4NjdkZGNjNzM4MDZkMWViLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTE0NzEuYjI5OTc0ZmQwYzllMDgyYjY3NWYuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbWJlZF9tYXJrZXRfb3ZlcnZpZXdfd2lkZ2V0Ljk2NDI5NTk0OTU0ZjE3ODcyYzVhLmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJtSC9PQ0tBMFBUTTNZTWt1Z1h0em9RPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjM1LCJjaGFydF9hdXRvc2F2ZV81bWluIjoxLjAsImNoYXJ0X2F1dG9zYXZlXzMwbWluIjoxLjAsInBlcmZvcm1hbmNlX3Rlc3RfbW9kZSI6MS4wLCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCI6MS4wLCJjaGFydF9zdG9yYWdlX2hpYmVybmF0aW9uX2RlbGF5XzYwbWluIjoxLjAsInN1cHBvcnRfcGVyc2lzdGVudF9sb2dzIjoxLjAsIm5ld19zdG9yYWdlX3N1YnNjcmlwdGlvbl91cmwiOjEuMCwicmVtb3ZlX2FuY2hvcmVkX3RleHQiOjEuMCwiZW5hYmxlX3N0ZXBfYnlfc3RlcF9oaW50c19mb3JfZHJhd2luZ3MiOjEuMCwicHVzaHN0cmVhbV9iYXNpY190ZWxlbWV0cnkiOjEuMCwiYWxsb3dfYnJhY2tldHNfcHJvZml0X2xvc3MiOjEuMCwiZW5hYmxlX3RyYWRlZF9jb250ZXh0X2xpbmtpbmciOjEuMCwib3JkZXJfY29udGV4dF92YWxpZGF0aW9uX2luX2luc3RhbnRfbW9kZSI6MS4wLCJhbGVydHMtb24tZnVuZGFtZW50YWwtbWV0cmljcyI6MS4wLCJhbGVydHMtbm90aWZpY2F0aW9uLXNjaGVkdWxlIjoxLjAsImFsZXJ0cy13YXRjaGxpc3QtZXh0ZW5kZWQtaG91cnMiOjEuMCwiZW5hYmxlX3N5bWJvbF9jaGFuZ2VfcmVzdHJpY3Rpb25fb25fd2lkZ2V0cyI6MS4wLCJlbmFibGVfYXN4X3N5bWJvbF9yZXN0cmljdGlvbiI6MS4wLCJzeW1waG9ueV9hbGxvd19ub25fcGFydGl0aW9uZWRfY29va2llX29uX29sZF9zeW1waG9ueSI6MS4wLCJzeW1waG9ueV9ub3RpZmljYXRpb25fYmFkZ2VzIjoxLjAsInN5bXBob255X3VzZV9hZGtfZm9yX3VwZ3JhZGVfcmVxdWVzdCI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF90cmFja2luZyI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF9zb2Z0X2xpbWl0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X2hhcmRfbGltaXQiOjEuMCwidGVsZWdyYW1fbWluaV9hcHBfcmVkdWNlX3NuYXBzaG90X3F1YWxpdHkiOjEuMCwibmV3c19zeW1ib2xfb3ZlcnZpZXdfa2V5X2ZhY3RzIjoxLjAsInRpbWVvdXRfZGphbmdvX2RiIjowLjE1LCJ0aW1lb3V0X2RqYW5nb191c2Vyc2V0dGluZ3NfZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX2NoYXJ0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fc3ltYm9sc19saXN0c19kYiI6MC4yNSwidGltZW91dF9kamFuZ29fbWluZHNfZGIiOjAuMDUsInRpbWVvdXRfZGphbmdvX2xvZ2dpbmdfZGIiOjAuMjUsImRpc2FibGVfc2VydmljZXNfbW9uaXRvcl9tZXRyaWNzIjoxLjAsImVuYWJsZV9zaWduaW5fcmVjYXB0Y2hhIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImVuYWJsZV9pZGVhX3NwYW1kZXRlY3Rvcm1sX2NvbW1lbnRzIjoxLjAsImVuYWJsZV9zcGFtZGV0ZWN0b3JtbF9jaGF0IjoxLjAsImVuYWJsZV9taW5kc19zcGFtZGV0ZWN0b3JtbCI6MS4wLCJiYWNrZW5kLWNvbm5lY3Rpb25zLWluLXRva2VuIjoxLjAsIm9uZV9jb25uZWN0aW9uX3dpdGhfZXhjaGFuZ2VzIjoxLjAsIm1vYmlsZS1hZHMtaW9zIjoxLjAsIm1vYmlsZS1hZHMtYW5kcm9pZCI6MS4wLCJnb29nbGUtb25lLXRhcC1zaWduaW4iOjEuMCwiYnJhaW50cmVlLWdvcHJvLWluLW9yZGVyLWRpYWxvZyI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5IjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5IjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktZnJvbS1pb3MtYXBwIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXktdHJpYWwiOjEuMCwidHJpcGxlYS1wYXltZW50cyI6MS4wLCJicmFpbnRyZWUtZ29vZ2xlLXBheS10cmlhbCI6MS4wLCJicmFpbnRyZWUtb25lLXVzZC12ZXJpZmljYXRpb24iOjEuMCwiYnJhaW50cmVlLTNkcy1lbmFibGVkIjoxLjAsImJyYWludHJlZS0zZHMtc3RhdHVzLWNoZWNrIjoxLjAsImJyYWludHJlZS1hZGRpdGlvbmFsLWNhcmQtY2hlY2tzLWZvci10cmlhbCI6MS4wLCJicmFpbnRyZWUtaW5zdGFudC1zZXR0bGVtZW50IjoxLjAsImJyYWludHJlZV9yZWN1cnJpbmdfYmlsbGluZ19zY2hlZHVsZXJfc3Vic2NyaXB0aW9uIjoxLjAsImNoZWNrb3V0X21hbnVhbF9jYXB0dXJlX3JlcXVpcmVkIjoxLjAsImNoZWNrb3V0LXN1YnNjcmlwdGlvbnMiOjEuMCwiY2hlY2tvdXRfYWRkaXRpb25hbF9jYXJkX2NoZWNrc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9wcmVwYWlkX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9jb3VudHJpZXNfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl9wcmVtaXVtX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jbG9zZV90b19leHBpcmF0aW9uX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fY29tbWVyY2lhbF9jYXJkX3RyaWFsIjoxLjAsImVuYWJsZV9wYXltZW50c18zZHNfb3B0aW1pemF0aW9uIjoxLjAsImNvdW50cnlfb2ZfaXNzdWFuY2VfdnNfYmlsbGluZ19jb3VudHJ5IjoxLjAsImNoZWNrb3V0X3Nob3dfaW5zdGVhZF9vZl9icmFpbnRyZWUiOjEuMCwiY2hlY2tvdXQtM2RzIjoxLjAsImNoZWNrb3V0LXBheXBhbCI6MS4wLCJjaGVja291dF9pbmNsdWRlX2FjY291bnRfaG9sZGVyIjoxLjAsImNoZWNrb3V0LXBheXBhbC10cmlhbCI6MS4wLCJhbm51YWxfdG9fbW9udGhseV9kb3duZ3JhZGVfYXR0ZW1wdCI6MS4wLCJyYXpvcnBheV90cmlhbF8xMF9pbnIiOjEuMCwicmF6b3JwYXktY2FyZC1vcmRlci10b2tlbi1zZWN0aW9uIjoxLjAsInJhem9ycGF5LWNhcmQtc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS11cGktc3Vic2NyaXB0aW9ucyI6MS4wLCJyYXpvcnBheS1zMy1pbnZvaWNlLXVwbG9hZCI6MS4wLCJyYXpvcnBheV9pbmNsdWRlX2RhdGVfb2ZfYmlydGgiOjEuMCwiZGxvY2FsLXBheW1lbnRzIjoxLjAsInJldm9sdXQtcGF5LXBheW1lbnRzIjoxLjAsInJldm9sdXQtY2FyZC1wYXltZW50cyI6MC41LCJkbG9jYWwtcGl4LWF1dG9tYXRpY28iOjEuMCwiYnJhaW50cmVlX3RyYW5zYWN0aW9uX3NvdXJjZSI6MS4wLCJ2ZXJ0ZXgtdGF4IjoxLjAsInZlcnRleC10YXgtZml4IjoxLjAsInJlY2VpcHRfaW5fZW1haWxzIjoxLjAsImFkd29yZHMtYW5hbHl0aWNzIjoxLjAsImNtMzYwLWFuYWx5dGljcyI6MS4wLCJkaXNhYmxlX21vYmlsZV91cHNlbGxfaW9zIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9hbmRyb2lkIjoxLjAsInJlcXVpcmVkX2FncmVlbWVudF9mb3JfcnQiOjEuMCwiY2hlY2tfbWFya2V0X2RhdGFfbGltaXRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2RhdGEiOjEuMCwiZm9yY2VfdG9fdXBncmFkZV90b19leHBlcnQiOjEuMCwic2VuZF90cmFkZXZhbl9pbnZvaWNlIjoxLjAsInNob3dfcGVwZV9hbmltYXRpb24iOjEuMCwic2VuZF9uZXh0X3BheW1lbnRfaW5mb19yZWNlaXB0IjoxLjAsInN1cHBvcnRfb3Zlcm5pZ2h0X3Nlc3Npb24iOjEuMCwic2NyZWVuZXItYWxlcnRzLXJlYWQtb25seSI6MS4wLCJzY3JlZW5lcl9ib25kX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9zdG9ja19haV9maWx0ZXJzX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfaXNfYWxsb3dlZF90b19jcmVhdGVfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JhdGluZ19jb2x1bW5zX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3NvcnRpbmdfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfZ3JvdXBfYnlfaXNpbl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9zeW1ib2xfc2VhcmNoX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3JlZ2lzdHJhdGlvbl9iYW5uZXJfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNlc190cmFja2luZyI6MS4wLCJzZW5kX2ZpbmFuY2lhbF9ub3RpZmljYXRpb25zIjoxLjAsInNwYXJrX3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya19jYXRlZ29yeV90cmFuc2xhdGlvbnMiOjEuMCwic3BhcmtfdGFnc190cmFuc2xhdGlvbnMiOjEuMCwicHJvX3BsYW5faW5pdGlhbF9yZWZ1bmRzX2Rpc2FibGVkIjoxLjAsInByZXZpb3VzX21vbm9wcm9kdWN0X3B1cmNoYXNlc19yZWZ1bmRzX2VuYWJsZWQiOjEuMCwiZW5hYmxlX2lkZWFzX3JlY29tbWVuZGF0aW9ucyI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zX2ZlZWQiOjEuMCwiZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJldGhvY2FfYWxlcnRfbm90aWZpY2F0aW9uX3dlYmhvb2siOjEuMCwiaGlkZV9zdXNwaWNpb3VzX3VzZXJzX2lkZWFzIjoxLjAsImRpc2FibGVfcHVibGlzaF9zdHJhdGVneV9yYW5nZV9iYXNlZF9jaGFydCI6MS4wLCJyZXN0cmljdF9zaW11bHRhbmVvdXNfcmVxdWVzdHMiOjEuMCwibG9naW5fZnJvbV9uZXdfZGV2aWNlX2VtYWlsIjoxLjAsInNzcl93b3JrZXJfbm93YWl0IjoxLjAsImJyb2tlcl9BMUNBUElUQUwiOjEuMCwiYnJva2VyX0FDVElWVFJBREVTIjoxLjAsImJyb2tlcl9BTENIRU1ZTUFSS0VUUyI6MS4wLCJicm9rZXJfQUxJQ0VCTFVFIjoxLjAsImhpZGVfQUxPUl9vbl9pb3MiOjEuMCwiaGlkZV9BTE9SX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9BTE9SX29uX21vYmlsZV93ZWIiOjEuMCwiYWxvci1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0FMUEFDQSI6MS4wLCJicm9rZXJfQUxSQU1aIjoxLjAsImJyb2tlcl9BTVAiOjEuMCwiYnJva2VyX0FOR0VMT05FIjoxLjAsImJyb2tlcl9BVkFfRlVUVVJFUyI6MS4wLCJBVkFfRlVUVVJFU19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9CMlBSSU1FIjoxLjAsImJyb2tlcl9CQUpBSiI6MS4wLCJicm9rZXJfQkVZT05EIjoxLjAsImJyb2tlcl9CSU5BTkNFIjoxLjAsImVuYWJsZV9iaW5hbmNlYXBpc19iYXNlX3VybCI6MS4wLCJicm9rZXJfQklOR0JPTiI6MS4wLCJicm9rZXJfQklUQVpaQSI6MS4wLCJicm9rZXJfQklUR0VUIjoxLjAsImJyb2tlcl9CSVRNRVgiOjEuMCwiYnJva2VyX0JJVFNUQU1QIjoxLjAsImJyb2tlcl9CTEFDS0JVTEwiOjEuMCwiYnJva2VyX0JMVUVCRVJSWU1BUktFVFMiOjEuMCwiYnJva2VyX0JUQ0MiOjEuMCwiYnJva2VyX0JZQklUIjoxLjAsImJyb2tlcl9DQVBJVEFMQ09NIjoxLjAsImJyb2tlcl9DQVBUUkFERVIiOjEuMCwiQ0FQVFJBREVSX3NlcGFyYXRlX2ludGVncmF0aW9uX21pZ3JhdGlvbl93YXJuaW5nIjoxLjAsImJyb2tlcl9DRkkiOjEuMCwiYnJva2VyX0NHU0kiOjEuMCwiYnJva2VyX0NJVFlJTkRFWCI6MS4wLCJjaXR5aW5kZXhfc3ByZWFkYmV0dGluZyI6MS4wLCJDTEVBUlNUUkVFVF9iZXRhIjoxLjAsImJyb2tlcl9DTUNNQVJLRVRTIjoxLjAsImJyb2tlcl9DT0JSQVRSQURJTkciOjEuMCwiYnJva2VyX0NPSU5CQVNFIjoxLjAsImNvaW5iYXNlX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJjb2luYmFzZV9jYW5jZWxfcG9zaXRpb25fYnJhY2tldHMiOjEuMCwiYnJva2VyX0NPSU5KQVIiOjEuMCwiQ09JTkpBUl9iZXRhIjoxLjAsImJyb2tlcl9DT0lOU1dJVENIIjoxLjAsImJyb2tlcl9DT0lOVyI6MS4wLCJicm9rZXJfQ09MTUVYIjoxLjAsImhpZGVfQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiY3FnLXJlYWx0aW1lLWJhbmR3aWR0aC1saW1pdCI6MS4wLCJicm9rZXJfQ1JZUFRPQ09NIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25faW9zIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fYW5kcm9pZCI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0NYTSI6MS4wLCJicm9rZXJfREFPTCI6MS4wLCJicm9rZXJfREFSV0lORVgiOjEuMCwiREFSV0lORVhfYmV0YSI6MS4wLCJicm9rZXJfREVMVEEiOjEuMCwiYnJva2VyX0RFUkFZQUgiOjEuMCwiYnJva2VyX0RFUklWIjoxLjAsImJyb2tlcl9ESEFOIjoxLjAsImJyb2tlcl9ETlNFIjoxLjAsImJyb2tlcl9ET1JNQU4iOjEuMCwiaGlkZV9EVU1NWV9vbl9pb3MiOjEuMCwiaGlkZV9EVU1NWV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRFVNTVlfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRUFTWU1BUktFVFMiOjEuMCwiYnJva2VyX0VDT1ZBTE9SRVMiOjEuMCwiYnJva2VyX0VER0VDTEVBUiI6MS4wLCJlZGdlY2xlYXJfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfRUlHSFRDQVAiOjEuMCwiYnJva2VyX0VSUkFOVEUiOjEuMCwiYnJva2VyX0VTQUZYIjoxLjAsIkZJREVMSVRZX2JldGEiOjEuMCwiRklERUxJVFlfdXNfcmVsZWFzZSI6MC4yNSwiZmlkZWxpdHlfc2VjdXJpdHlfdG9rZW4iOjEuMCwiYnJva2VyX0ZPUkVYQ09NIjoxLjAsImZvcmV4Y29tX3Nlc3Npb25fdjIiOjEuMCwiYnJva2VyX0ZQTUFSS0VUUyI6MS4wLCJoaWRlX0ZUWF9vbl9pb3MiOjEuMCwiaGlkZV9GVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0ZUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImZ0eF9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZVU0lPTk1BUktFVFMiOjEuMCwiZnhjbV9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9GWENNIjoxLjAsImhpZGVfRlhPUEVOX29uX2lvcyI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlhPUEVOX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0ZYUFJPIjoxLjAsImJyb2tlcl9GWFRGIjoxLjAsImJyb2tlcl9GWUVSUyI6MS4wLCJicm9rZXJfR0FURSI6MS4wLCJicm9rZXJfR0JFQlJPS0VSUyI6MS4wLCJnZW1pbmktYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HRU5JQUxJTlZFU1RJTUVOVE9TIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25faW9zIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX21vYmlsZV93ZWIiOjEuMCwiZ2xvYmFscHJpbWUtYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9HT01BUktFVFMiOjEuMCwiYnJva2VyX0dPVFJBREUiOjEuMCwiZ290cmFkZV9lbmFibGVfc3RyZWFtaW5nX2VuZHBvaW50cyI6MS4wLCJicm9rZXJfSEVSRU5ZQSI6MS4wLCJoaWRlX0hUWF9vbl9pb3MiOjEuMCwiaGlkZV9IVFhfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0hUWF9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9JQktSIjoxLjAsImNoZWNrX2lia3Jfc2lkZV9tYWludGVuYW5jZSI6MS4wLCJpYmtyX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3BhcmFsbGVsX3Byb3ZpZGVyX2luaXRpYWxpemF0aW9uIjoxLjAsImlia3Jfd3NfYWNjb3VudF9zdW1tYXJ5IjoxLjAsImlia3Jfd3Nfc2VydmVyX2xvZ2dlciI6MS4wLCJpYmtyX3N1YnNjcmliZV90b19vcmRlcl91cGRhdGVzX2ZpcnN0IjoxLjAsImlia3Jfd3NfYWNjb3VudF9sZWRnZXIiOjEuMCwiYnJva2VyX0lCUk9LRVIiOjEuMCwiYnJva2VyX0lDTUFSS0VUUyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0FTSUMiOjEuMCwiYnJva2VyX0lDTUFSS0VUU19FVSI6MS4wLCJicm9rZXJfSUciOjEuMCwiYnJva2VyX0lORFNUT0NLUyI6MS4wLCJicm9rZXJfSU5GT1lBVElSSU0iOjEuMCwiYnJva2VyX0lOTk9WRVNUWCI6MS4wLCJicm9rZXJfSU5URVJBQ1RJVkVJTCI6MS4wLCJicm9rZXJfSU5WRVNUUkFERSI6MS4wLCJJTlZFU1RSQURFX2JldGEiOjEuMCwiYnJva2VyX0lST05CRUFNIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2lvcyI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9hbmRyb2lkIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tJV09PTSI6MS4wLCJraXdvb21fdXNlX3NlcGFyYXRlX3N0cmVhbWluZ191cmwiOjEuMCwiYnJva2VyX0tPVEFLIjoxLjAsImhpZGVfS09UQUtfb25faW9zIjoxLjAsImhpZGVfS09UQUtfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0tPVEFLX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0tSQUtFTiI6MS4wLCJoaWRlX0tSQUtFTl9vbl9pb3MiOjEuMCwiaGlkZV9LUkFLRU5fb25fYW5kcm9pZCI6MS4wLCJLUkFLRU5fYmV0YSI6MS4wLCJrcmFrZW5fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9LU0VDVVJJVElFUyI6MS4wLCJicm9rZXJfTElCRVJBVE9SIjoxLjAsImJyb2tlcl9NRVhDIjoxLjAsImJyb2tlcl9NRVhFTSI6MS4wLCJicm9rZXJfTUlEQVMiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX01PT01PTyI6MS4wLCJicm9rZXJfTU9USUxBTE9TV0FMIjoxLjAsImJyb2tlcl9OSU5KQVRSQURFUiI6MS4wLCJicm9rZXJfT0FOREEiOjEuMCwib2FuZGFfc2VydmVyX2xvZ2dpbmciOjEuMCwib2FuZGFfb2F1dGhfbXVsdGlwbGV4aW5nIjoxLjAsImJyb2tlcl9PS1giOjEuMCwiYnJva2VyX09QT0ZJTkFOQ0UiOjEuMCwiYnJva2VyX09QVElNVVMiOjEuMCwiYnJva2VyX09TTUFOTEkiOjEuMCwiYnJva2VyX09TTUFOTElGWCI6MS4wLCJwYXBlcl9mb3JjZV9jb25uZWN0X3B1c2hzdHJlYW0iOjEuMCwicGFwZXJfc3ViYWNjb3VudF9jdXN0b21fY3VycmVuY3kiOjEuMCwicGFwZXJfb3V0c2lkZV9ydGgiOjEuMCwiYnJva2VyX1BBWVRNIjoxLjAsImJyb2tlcl9QRVBQRVJTVE9ORSI6MS4wLCJicm9rZXJfUEhFTUVYIjoxLjAsImJyb2tlcl9QSElMTElQQ0FQSVRBTF9UUiI6MS4wLCJicm9rZXJfUEhJTExJUE5PVkEiOjEuMCwiYnJva2VyX1BMVVM1MDAiOjEuMCwicGx1czUwMF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIlBMVVM1MDBVU19iZXRhIjoxLjAsImJyb2tlcl9QVVJQTEVUUkFESU5HIjoxLjAsImJyb2tlcl9RVUVTVFJBREUiOjEuMCwiYnJva2VyX1JBVkFCVVJTQVRJTCI6MS4wLCJSQVZBQlVSU0FUSUxfYmV0YSI6MS4wLCJicm9rZXJfUklZQURDQVBJVEFMIjoxLjAsImJyb2tlcl9ST0JPTUFSS0VUUyI6MS4wLCJicm9rZXJfUkVQTEFZQlJPS0VSIjoxLjAsImJyb2tlcl9TQU1VRUwiOjEuMCwiYnJva2VyX1NBWE9CQU5LIjoxLjAsImJyb2tlcl9TSEFSRU1BUktFVCI6MS4wLCJicm9rZXJfU0tJTExJTkciOjEuMCwiYnJva2VyX1NQUkVBREVYIjoxLjAsImJyb2tlcl9TV0lTU1FVT1RFIjoxLjAsImJyb2tlcl9TVE9ORVgiOjEuMCwiYnJva2VyX1RBU1RZRlgiOjEuMCwiYnJva2VyX1RBU1RZVFJBREUiOjEuMCwiYnJva2VyX1RISU5LTUFSS0VUUyI6MS4wLCJ0aGlua21hcmtldHNfYWNjb3VudF9kYXRhX3N0cmVhbWluZyI6MS4wLCJicm9rZXJfVElDS01JTEwiOjEuMCwiaGlkZV9USUdFUl9vbl9pb3MiOjEuMCwiaGlkZV9USUdFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVElHRVJfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfVFJBREVOQVRJT04iOjEuMCwiYnJva2VyX1RSQURFU1RBVElPTiI6MS4wLCJ0cmFkZXN0YXRpb25fcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInRyYWRlc3RhdGlvbl9hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsInRyYWRlc3RhdGlvbl9zdHJlYW1pbmdfc2VydmVyX2xvZ2dpbmciOjEuMCwiYnJva2VyX1RSQURFWkVSTyI6MS4wLCJicm9rZXJfVFJBRElFUiI6MS4wLCJicm9rZXJfVFJBRElFUl9GVVRVUkVTIjoxLjAsInRyYWRpZXJfZnV0dXJlc19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9UUkFET1ZBVEUiOjEuMCwiaGlkZV9UUkFEVV9vbl9pb3MiOjEuMCwiaGlkZV9UUkFEVV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfVFJBRFVfb25fbW9iaWxlX3dlYiI6MS4wLCJ0cmFkdV9zcHJlYWRfYmV0IjoxLjAsImJyb2tlcl9UUklWRSI6MS4wLCJicm9rZXJfVkFOVEFHRSI6MS4wLCJicm9rZXJfVkVMT0NJVFkiOjEuMCwiYnJva2VyX1dFQlVMTCI6MS4wLCJicm9rZXJfV0VCVUxMSkFQQU4iOjEuMCwiYnJva2VyX1dFQlVMTFBBWSI6MS4wLCJicm9rZXJfV0VCVUxMVUsiOjEuMCwiYnJva2VyX1dISVRFQklUIjoxLjAsImJyb2tlcl9XSFNFTEZJTlZFU1QiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVF9GVVRVUkVTIjoxLjAsIldIU0VMRklOVkVTVF9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1hDVUJFIjoxLjAsImJyb2tlcl9ZTEciOjEuMCwiYnJva2VyX2lkX3Nlc3Npb24iOjEuMCwiZGlzYWxsb3dfY29uY3VycmVudF9zZXNzaW9ucyI6MS4wLCJ1c2VfY29kZV9mbG93X3YyX3Byb3ZpZGVyIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXJfZm9yX3VudGVzdGVkX2Jyb2tlcnMiOjEuMCwibW9iaWxlX3RyYWRpbmdfd2ViIjoxLjAsIm1vYmlsZV90cmFkaW5nX2lvcyI6MS4wLCJtb2JpbGVfdHJhZGluZ19hbmRyb2lkIjoxLjAsImNvbnRpbnVvdXNfZnJvbnRfY29udHJhY3RfdHJhZGluZyI6MS4wLCJ0cmFkaW5nX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJvYXV0aDJfY29kZV9mbG93X3Byb3ZpZGVyX3NlcnZlcl9sb2dnZXIiOjEuMCwicmVzdF9vYXV0aDJfY29kZV9mbG93X211bHRpcGxleGluZyI6MS4wLCJyZXN0X2xvZ291dF9vbl80MjkiOjEuMCwicmV2aWV3X3BvcHVwX29uX2NoYXJ0IjoxLjAsInNob3dfY29uY3VycmVudF9jb25uZWN0aW9uX3dhcm5pbmciOjEuMCwiZW5hYmxlX3RyYWRpbmdfc2VydmVyX2xvZ2dlciI6MS4wLCJvcmRlcl9wcmVzZXRzIjoxLjAsIm9yZGVyX3RpY2tldF9yZXNpemFibGVfZHJhd2VyX29uIjoxLjAsInJlc3RfdXNlX2FzeW5jX21hcHBlciI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9iYW5uZXJfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2ciOjEuMCwicGFwZXJfY29tcGV0aXRpb25fc3RhcnRlZF9kaWFsb2dfc2hvd19wcm8iOjEuMCwicGFwZXJfY29tcGV0aXRpb25fbGVhZGVyYm9hcmQiOjEuMCwicGFwZXJfY29tcGV0aXRpb25fcHJldmlvdXNfY29tcGV0aXRpb25zIjoxLjAsImFtcF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJsdWVsaW5lX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiZG9ybWFuX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiaXJvbmJlYW1fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJvcHRpbXVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwic3RvbmV4X29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwieWxnX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwidHJhZGluZ19nZW5lcmFsX2V2ZW50c19nYV90cmFja2luZyI6MS4wLCJyZXBsYXlfcmVzdWx0X3NoYXJpbmciOjEuMCwicmVwbGF5X3RyYWRpbmdfYnJhY2tldHMiOjEuMCwiaGlkZV9hbGxfYnJva2Vyc19idXR0b25faW5faW9zX2FwcCI6MS4wLCJmb3JjZV9tYXhfYWxsb3dlZF9wdWxsaW5nX2ludGVydmFscyI6MS4wLCJwYXBlcl9kZWxheV90cmFkaW5nIjoxLjAsImVuYWJsZV9maXJzdF90b3VjaF9pc19zZWxlY3Rpb24iOjEuMCwiY2xlYXJfcHJvamVjdF9vcmRlcl9vbl9vcmRlcl90aWNrZXRfY2xvc2UiOjEuMCwiZW5hYmxlX25ld19iZWhhdmlvcl9vZl9jb25maXJtX2J1dHRvbnNfb25fbW9iaWxlIjoxLjAsInJlbmV3X3Rva2VuX3ByZWVtcHRpb25fMzAiOjEuMCwiZG9fbm90X29wZW5fb3RfZnJvbV9wbHVzX2J1dHRvbiI6MS4wLCJicm9rZXJfc2lkZV9wcm9tb3Rpb24iOjEuMCwiZW5hYmxlX25ld190cmFkaW5nX21lbnVfc3RydWN0dXJlIjoxLjAsInF1aWNrX3RyYWRpbmdfcGFuZWwiOjEuMCwicGFwZXJfb3JkZXJfY29uZmlybWF0aW9uX2RpYWxvZyI6MS4wLCJwYXBlcl9tdWx0aXBsZV9sZXZlbHNfZW5hYmxlZCI6MS4wLCJwYXBlcl9tYXJnaW5fY29udHJvbCI6MS4wLCJlbmFibGVfc2VnbWVudGF0aW9uX3BhcGVyX3RyYWRpbmciOjEuMCwiZW5hYmxlX2NoYXJ0X2FkYXB0aXZlX3Rwc2xfYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwiZW5hYmxlX21hcmtldF9wcm9qZWN0X29yZGVyIjoxLjAsImVuYWJsZV9zeW1ib2xzX3BvcHVsYXJpdHlfc2hvd2luZyI6MS4wLCJlbmFibGVfdHJhbnNsYXRpb25zX3MzX3VwbG9hZCI6MS4wLCJldGZfZnVuZF9mbG93c19vbmx5X2RheXNfcmVzb2x1dGlvbnMiOjEuMCwiZGlzYWJsZV9zbm93cGxvd19wbGF0Zm9ybV9ldmVudHMiOjEuMCwibm90aWZ5X2lkZWFfbW9kc19hYm91dF9maXJzdF9wdWJsaWNhdGlvbiI6MS4wLCJlbmFibGVfd2FmX3RyYWNraW5nIjoxLjAsIm5ld19lcnJvcnNfZmxvdyI6MS4wLCJxdW90ZS10b2tlbi1maWx0ZXItb3duLXNjcmlwdHMtYnktYWNjZXNzIjoxLjAsImtlZXBfaW5kaWNhdG9yc19zZWFyY2hfc3RhdGUiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3RhYl9zY3JvbGxfc3RhdGUiOjEuMCwiY29uZmlndXJhYmxlX3NlYXJjaF9hbmRfZmlsdHJhdGlvbiI6MS4wLCJwaW5lX2VkaXRvcl93cmFwX29uX2xpbmVfc3BsaXQiOjEuMCwic3ltYm9sX3NlYXJjaF9jb3VudHJ5X3NvdXJjZXMiOjEuMCwid2F0Y2hsaXN0c19kaWFsb2dfc2Nyb2xsX3RvX2FjdGl2ZSI6MS4wLCJib3R0b21fcGFuZWxfdHJhY2tfZXZlbnRzIjoxLjAsInNub3dwbG93X2JlYWNvbl9mZWF0dXJlIjoxLjAsInNob3dfZGF0YV9wcm9ibGVtc19pbl9oZWxwX2NlbnRlciI6MS4wLCJlbmFibGVfYXBwbGVfZGV2aWNlX2NoZWNrIjoxLjAsImVuYWJsZV9hcHBsZV9pbnRyb19vZmZlcl9zaWduYXR1cmUiOjEuMCwiZW5hYmxlX2FwcGxlX3Byb21vX29mZmVyX3NpZ25hdHVyZV92MiI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fc2lnbmF0dXJlIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfYW5kcm9pZCI6MS4wLCJlbmFibGVfcHVzaF9ub3RpZmljYXRpb25zX2lvcyI6MS4wLCJlbmFibGVfbWFudGljb3JlX2NsdXN0ZXIiOjEuMCwiZW5hYmxlX3B1c2hzdHJlYW1fYXV0aCI6MS4wLCJlbmFibGVfZW52b3lfcHJveHkiOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5X3BhcGVydHJhZGluZyI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfc2NyZWVuZXIiOjEuMCwib3B0aW9uc19yZWR1Y2VfcG9sbGluZ19pbnRlcnZhbCI6MS4wLCJvcHRpb25zX2J1aWxkZXJfZ3JvdXBfYWN0aW9ucyI6MS4wLCJvcHRpb25zX2NoYWluX3NpZ21hX2ZpbHRlciI6MS4wLCJvcHRpb25zX2Jyb2tlcl9zdHJhdGVnaWVzIjoxLjAsInNob3dfdG9hc3RfYWJvdXRfdW5yZWFkX21lc3NhZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcGF5b3V0IjoxLjAsImVuYWJsZV9lbWFpbF9jaGFuZ2VfbG9nZ2luZyI6MS4wLCJlbmFibGVfZW1haWxfb25fcGFydG5lcl9zdGF0dXNfY2hhbmdlIjoxLjAsImVuYWJsZV9wYXJ0bmVyX3Byb2dyYW1fYXBwbHkiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbSI6MS4wLCJjb21wcmVzc19jYWNoZV9kYXRhIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZyI6MS4wLCJuZXdzX3NjcmVlbmVyX3BhZ2VfY2xpZW50IjoxLjAsImVuYWJsZV9kZWNsYXJhdGlvbl9wb3B1cF9vbl9sb2FkIjoxLjAsInNob3dfZGF0YV9ib25kc19mcmVlX3VzZXJzIjoxLjAsImVuYWJsZV9tb2Rlcm5fcmVuZGVyX21vZGUiOjEuMCwiZW5hYmxlX3Byb2ZfcG9wdXBfZnJlZSI6MS4wLCJpb3NfYXBwX25ld3NfYW5kX21pbmRzIjoxLjAsImRvX25vdF9kaXNjbG9zZV9waG9uZV9vY2N1cGFuY3kiOjEuMCwiZW5hYmxlX3JlZGlyZWN0X3RvX3dpZGdldF9kb2N1bWVudGF0aW9uX29mX2FueV9sb2NhbGl6YXRpb24iOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nX2hpYmVybmF0aW9uIjoxLjAsIm5ld3Nfc3RyZWFtaW5nX2hpYmVybmF0aW9uX2RlbGF5XzEwbWluIjoxLjAsInBhc3NfcmVjb3Zlcnlfc2VhcmNoX2hpZGVfaW5mbyI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfb25fc2NyZWVuZXIiOjEuMCwiZW5hYmxlX2ZvcmNlZF9lbWFpbF9jb25maXJtYXRpb24iOjEuMCwic2hvd19naWZ0X2J1dHRvbiI6MS4wLCJhZGRyZXNzX3ZhbGlkYXRpb25fZW5hYmxlZCI6MS4wLCJkaXNhYmxlX3VudmVyaWZpZWRfYWRkcmVzcyI6MS4wLCJnZW5lcmF0ZV9pbnZvaWNlX251bWJlcl9ieV9jb3VudHJ5IjoxLjAsInNob3dfZmF2b3JpdGVfbGF5b3V0cyI6MS4wLCJlbmFibGVfc29jaWFsX2F1dGhfY29uZmlybWF0aW9uIjoxLjAsImVuYWJsZV9hZF9ibG9ja19kZXRlY3QiOjEuMCwidHZkX25ld190YWJfbGlua2luZyI6MS4wLCJ0dmRfdGltZV9hbmRfZGF0ZV9yYW5nZV9saW5raW5nIjoxLjAsInVzZV9icm93c2VyX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ1c2VfZGVza3RvcF9zZXNzaW9uX3N0b3JhZ2UiOjEuMCwid3JvbmdfYWNjb3VudF9kaWFsb2dfcHJpbWFyeV9zd2l0Y2giOjEuMCwiZW5hYmxlX2xpbmd1YV9sYW5nX2NoZWNrIjoxLjAsImdldF9zYXZlZF9hY3RpdmVfbGlzdF9iZWZvcmVfZ2V0dGluZ19hbGxfbGlzdHMiOjEuMCwid2F0Y2hsaXN0X2FkZF9zb3VyY2VfcGFyYW0iOjEuMCwic2hvd19yZWZlcnJhbF9ub3RpZmljYXRpb25fZGlhbG9nIjoxLjAsInNldF9uZXdfYmxhY2tfY29sb3IiOjEuMCwibmV3c191c2VfbmV3c19tZWRpYXRvciI6MS4wLCJhbGxvd190cmFpbGluZ193aGl0ZXNwYWNlX2luX251bWJlcl90b2tlbiI6MS4wLCJyZXN0cmljdF9wd25lZF9wYXNzd29yZF9zZXQiOjEuMCwibm90aWZfc2V0dGluZ3NfZW5hYmxlX25ld19zdG9yZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV93cml0ZSI6MS4wLCJub3RpZl9zZXR0aW5nc19kaXNhYmxlX29sZF9zdG9yZV9yZWFkIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrIjoxLjAsImNoZWNrb3V0LWVuYWJsZS1yaXNrc2RrLWZvci1pbml0aWFsLXB1cmNoYXNlIjoxLjAsImVuYWJsZV9tZXRhZGVmZW5kZXJfY2hlY2tfZm9yX2FncmVlbWVudCI6MS4wLCJzaG93X2Rvd25sb2FkX3lpZWxkX2N1cnZlc19kYXRhIjoxLjAsIm1vdmVfa2V5X3Rlbm9yc190b19zZXR0aW5ncyI6MS4wLCJzaG93X3lpZWxkX2N1cnZlc19tYXAiOjEuMCwiZGlzYWJsZV93aWRnZXRiYXJfaW5fYXBwcyI6MS4wLCJoaWRlX3B1YmxpY2F0aW9uc19vZl9iYW5uZWRfdXNlcnMiOjEuMCwiZW5hYmxlX3N1bW1hcnlfdXBkYXRlc19mcm9tX2NoYXJ0X3Nlc3Npb24iOjEuMCwic2hvd19uZXdzX2Zsb3dfdG9vbF9yaWdodF9iYXIiOjEuMCwiZW5hYmxlX2NoYXJ0X3NhdmluZ19zdGF0cyI6MS4wLCJlbmFibGVfc2F2aW5nX3NhbWVfY2hhcnRfcmF0ZV9saW1pdCI6MS4wLCJuZXdzX2FsZXJ0c19lbmFibGVkIjoxLjAsIm5ld3NfbXVsdGlwbGVfYWxlcnRzX2VuYWJsZWQiOjEuMCwicmVmdW5kX3Vudm9pZGFibGVfY291cG9uc19lbmFibGVkIjoxLjAsImVuYWJsZV9zbm93cGxvd19lbWFpbF90cmFja2luZyI6MS4wLCJuZXdzX2VuYWJsZV9zZW50aW1lbnQiOjEuMCwidXNlX2luX3N5bWJvbF9zZWFyY2hfb3B0aW9uc19tY3hfZXhjaGFuZ2UiOjEuMCwiZW5hYmxlX3VzZXJzZXR0aW5nc19zeW1ib2xzX3Blcl9yb3dfc29mdF9saW1pdCI6MC4xLCJmb3JiaWRfbG9naW5fd2l0aF9wd25lZF9wYXNzd29yZHMiOjEuMCwiZGVidWdfZ2V0X3Rlc3RfYmFyc19kYXRhIjoxLjAsIm5ld3NfdXNlX21lZGlhdG9yX3N0b3J5IjoxLjAsIm5ld3NfZmxvd19yZWNvbmZpZ3VyZV9maWx0ZXJzIjoxLjAsImJsYWNrX2ZyaWRheV9lbmFibGVfc2tpcF90b19wYXltZW50IjoxLjAsImhpZGVfdHJhZGluZ19idXR0b25fb25fYm90dG9tX3BhbmVsX2FuZF9yZXBsYXlfdGFiIjoxLjAsImhpZGVfdHJhZGVfYnV0dG9uX2hpbnRfaW5faGVhZGVyX3Rvb2xiYXIiOjEuMCwiaGlkZV9zZWVfb25fc3VwZXJfY2hhcnRzX2J1dHRvbiI6MS4wLCJoaWRlX3N5bWJvbF9wYWdlX2NoYXJ0X3R5cGVfc3dpdGNoZXIiOjEuMCwiZGlzYWJsZV9jaGF0X3NwYW1fcHJvdGVjdGlvbl9mb3JfcHJlbWl1bV91c2VycyI6MS4wLCJkaXNhYmxlX3B1YmxpY19waW5lX3NjcmlwdF9wdWJsaXNoX2xpbWl0cyI6MS4wLCJtYWtlX3RyYWRpbmdfcGFuZWxfY29udGV4dHVhbF90YWIiOjEuMCwicmVjb25uZWN0X2dhaW5fc2Vzc2lvbl9vbl9sc19lcnJvciI6MS4wLCJjaGVja291dC1mbG93LXBheW1lbnRzIjoxLjAsImZvcmNlX3RvX2NvbXBsZXRlX2t5YyI6MS4wLCJpbmRpYV9leGNsdWRlX2JyYWludHJlZV90YWIiOjEuMCwibWFjcm9fbWFwc19oaWRlX3Rvb2x0aXBfY2hhcnRfYnV0dG9uIjoxLjAsImZvcmNlX2t5Y19mb3Jfbm9ucHJvX3B1cmNoYXNlX2J5X2NvbW1lcmNpYWwiOjEuMCwic2hvd19zcGxpdF9wYW5lbF9mdWxsc2NyZWVuX2J1dHRvbiI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX21vdmVfYnV0dG9uX3RvX3RpdGxlIjoxLjAsIm9yZGVyX3ByZXNldHNfY3J1ZF9zdG9yYWdlIjoxLjAsIm9yZGVyX3ByZXNldHNfcmVtb3ZlX2Zyb21fdHZfc2V0dGluZ3MiOjEuMCwiY2hlY2tvdXQtZmxvdy10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LWdvb2dsZXBheSI6MS4wLCJjaGVja291dC1mbG93LWFwcGxlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5cGFsIjoxLjAsImZvcmJpZF9zaWdudXBfd2l0aF9mYWtlX2dtYWlsX2RvbWFpbnMiOjEuMCwic2hvd19pbXBvcnRfZnJvbV9wYXBlcl90cmFkaW5nX2J1dHRvbiI6MS4wLCJzeW1ib2xfc2VhcmNoX2dyb3VwaW5nIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwtdHJpYWwiOjEuMCwidm9pZF9ub3RfZm91bmRfY2tvX3BheW1lbnRfaW5fYXBwcm92ZWRfd2ViaG9vayI6MS4wLCJzaG93X3BhbmVsX2NvbGxhcHNlX2J1dHRvbiI6MS4wLCJkZWxheV9zdGF0dXNfb25fbGFzdF9iYXIiOjAuNX07CndpbmRvdy5pbml0RGF0YSA9IHt9OwoJCXdpbmRvdy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwgPSAiaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIjsKCndpbmRvdy5pbml0RGF0YSA9IHsid2lkZ2V0RGVmYXVsdHMiOnsidGl0bGUiOiJNYXJrZXQgc3VtbWFyeSIsImZvcmNlX2VuZF9ib3JkZXIiOnRydWUsImlzX2VtYmVkX3dpZGdldCI6dHJ1ZSwid2lkdGgiOjQwMCwiaGVpZ2h0Ijo2NjAsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkYXRlUmFuZ2UiOiIxMk0iLCJzaG93U3ltYm9sTG9nbyI6dHJ1ZSwiYXV0b3NpemUiOmZhbHNlLCJ0YWJzIjpbeyJ0aXRsZSI6IkluZGljZXMiLCJzeW1ib2xzIjpbeyJzIjoiRk9SRVhDT006U1BYVVNEIiwiZCI6IsONbmRpY2UgUyZQIDUwMCJ9LHsicyI6IkZPUkVYQ09NOk5TWFVTRCIsImQiOiJDRkQgVVMgMTAwIENhc2gifSx7InMiOiJGT1JFWENPTTpESkkiLCJkIjoiw41uZGljZSBEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIn0seyJzIjoiSU5ERVg6TktZIiwiZCI6IkphcGFuIDIyNSJ9LHsicyI6IklOREVYOkRFVTQwIiwiZCI6IsONbmRpY2UgREFYIn0seyJzIjoiRk9SRVhDT006VUtYR0JQIiwiZCI6IsONbmRpY2UgRlRTRTEwMCJ9XX0seyJ0aXRsZSI6IkZ1dHVyZXMiLCJzeW1ib2xzIjpbeyJzIjoiQk1GQk9WRVNQQTpJU1AxISIsImQiOiJTJlAgNTAwIEluZGV4IEZ1dHVyZXMifSx7InMiOiJCTUZCT1ZFU1BBOkVVUjEhIiwiZCI6IkV1cm8gRnV0dXJlcyJ9LHsicyI6IlRWQzpVU09JTCIsImQiOiJQZXRyw7NsZW8ifSx7InMiOiJCTUZCT1ZFU1BBOkVUSDEhIiwiZCI6IkV0YW5vbCBoaWRyYXRhZG8ifSx7InMiOiJCTUZCT1ZFU1BBOkNDTTEhIiwiZCI6Ik1hw616In1dfSx7InRpdGxlIjoiQm9uZHMiLCJzeW1ib2xzIjpbeyJzIjoiRVVSRVg6RkdCTDEhIiwiZCI6IkV1cm8gQnVuZCJ9LHsicyI6IkVVUkVYOkZCVFAxISIsImQiOiJFdXJvIEJUUCJ9LHsicyI6IkVVUkVYOkZHQk0xISIsImQiOiJFdXJvIEJPQkwifV19LHsidGl0bGUiOiJGb3JleCIsInN5bWJvbHMiOlt7InMiOiJGWDpFVVJVU0QiLCJkIjoiRVVSIGEgVVNEIn0seyJzIjoiRlg6R0JQVVNEIiwiZCI6IkdCUCBhIFVTRCJ9LHsicyI6IkZYOlVTREpQWSIsImQiOiJVU0QgYSBKUFkifSx7InMiOiJGWDpVU0RDSEYiLCJkIjoiVVNEIGEgQ0hGIn0seyJzIjoiRlg6QVVEVVNEIiwiZCI6IkFVRCBhIFVTRCJ9LHsicyI6IkZYOlVTRENBRCIsImQiOiJVU0QgYSBDQUQifV19XSwiYmVsb3dfbGluZV9maWxsX2NvbG9yX2ZhbGxpbmciOiJyZ2JhKDQxLCA5OCwgMjU1LCAwLjEyKSIsImJlbG93X2xpbmVfZmlsbF9jb2xvcl9ncm93aW5nIjoicmdiYSg0MSwgOTgsIDI1NSwgMC4xMikiLCJiZWxvd19saW5lX2ZpbGxfY29sb3JfZmFsbGluZ19ib3R0b20iOiJyZ2JhKDQxLCA5OCwgMjU1LCAwKSIsImJlbG93X2xpbmVfZmlsbF9jb2xvcl9ncm93aW5nX2JvdHRvbSI6InJnYmEoNDEsIDk4LCAyNTUsIDApIiwiZ3JpZF9saW5lX2NvbG9yIjoicmdiYSgyNDAsIDI0MywgMjUwLCAwKSIsInBsb3RfbGluZV9jb2xvcl9mYWxsaW5nIjoiIzI5NjJGRiIsInBsb3RfbGluZV9jb2xvcl9ncm93aW5nIjoiIzI5NjJGRiIsInNjYWxlX2ZvbnRfY29sb3IiOiIjMEYwRjBGIiwic2hvd19jaGFydCI6dHJ1ZSwic3ltYm9sX2FjdGl2ZV9jb2xvciI6InJnYmEoNDEsIDk4LCAyNTUsIDAuMTIpIiwic3ltYm9sX3Nob3J0X25hbWVfY29sb3IiOiIjMEYwRjBGIiwic3ltYm9sX2Rlc2NyaXB0aW9uX2NvbG9yIjoiIzcwNzA3MCIsInRpY2tlcl9jb2xvcl9ncm93aW5nIjoiIzA4OTk4MSIsInRpY2tlcl9jb2xvcl9mYWxsaW5nIjoiI0YyMzY0NSIsInN5bWJvbF9zZXBhcmF0b3JfY29sb3IiOiIjRjJGMkYyIiwiY29sb3JUaGVtZSI6ImxpZ2h0IiwibG9jYWxlIjoiZW4ifX07CgkJd2luZG93LmluaXREYXRhLmN1cnJlbnRMb2NhbGVJbmZvID0geyJsYW5ndWFnZSI6ImVuIiwibGFuZ3VhZ2VfbmFtZSI6IkVuZ2xpc2giLCJmbGFnIjoidXMiLCJnZW9pcF9jb2RlIjoidXMiLCJpc28iOiJlbiIsImlzb182MzlfMyI6ImVuZyIsImdsb2JhbF9uYW1lIjoiRW5nbGlzaCIsImlzX29ubHlfcmVjb21tZW5kZWRfdHdfYXV0b3JlcG9zdCI6dHJ1ZX07CgkJd2luZG93LmluaXREYXRhLnNldHRpbmdzID0geydTM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwnOiAnaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vJywgJ1MzX05FV1NfSU1BR0VfU0VSVklDRV9CQVNFX1VSTCc6ICdodHRwczovL3MzLnRyYWRpbmd2aWV3LmNvbS9uZXdzLycsICdXRUJQQUNLX1NUQVRJQ19QQVRIJzogJ2h0dHBzOi8vc3RhdGljLnRyYWRpbmd2aWV3LmNvbS9zdGF0aWMvYnVuZGxlcy8nLCAnVFJBRElOR19VUkxTJzogeydmcmVlJzogJ2h0dHBzOi8vcGFwZXJ0cmFkaW5nLWZyZWUudHJhZGluZ3ZpZXcuY29tJywgJ3Bybyc6ICdodHRwczovL3BhcGVydHJhZGluZy50cmFkaW5ndmlldy5jb20nfSwgJ0NPTlRFU1RTX1VSTCc6ICcvcGFwZXItdHJhZGluZycsICdDUlVEX1NUT1JBR0VfVVJMJzogJ2h0dHBzOi8vY3J1ZC1zdG9yYWdlLnRyYWRpbmd2aWV3LmNvbSd9Ozwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9Im1IL09DS0EwUFRNM1lNa3VnWHR6b1E9PSI+CgkJKCgpPT57InVzZSBzdHJpY3QiO2NvbnN0IGU9e3doaXRlbGFiZWw6ITAscGVybWlzc2lvbk92ZXJyaWRlczohMCxsaW5rQ2FwdHVyaW5nQWxsb3dlZDohMCxzeW1ib2xfc2VhcmNoX2RlZmF1bHRfZXhjaGFuZ2U6ITAsc3ltYm9sX3NlYXJjaF9hbGxvd2VkX2V4Y2hhbmdlczohMH07Y29uc3QgdD13aW5kb3c7dC5pbml0RGF0YT10LmluaXREYXRhfHx7fTtjb25zdCBhPS9cKy9nLG49LzxcLz9bXj5dKyg+fCQpL2cscz1lPT5kZWNvZGVVUklDb21wb25lbnQoZS5yZXBsYWNlKGEsIiAiKSkucmVwbGFjZShuLCIiKSxvPXQubG9jYXRpb24uc2VhcmNoLnN1YnN0cmluZygxKSxjPS8oW14mPV0rKT0/KFteJl0qKS9nLGk9e307bGV0IGwscj1jLmV4ZWMobyk7Zm9yKDtudWxsIT09cjspaVtzKHJbMV0pXT1zKHJbMl0pLHI9Yy5leGVjKG8pO3RyeXtsPUpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KHQubG9jYXRpb24uaGFzaC5zdWJzdHJpbmcoMSkpKSwib2JqZWN0Ij09dHlwZW9mIGwmJm51bGwhPT1sfHwobD17fSl9Y2F0Y2goZSl7bD17fX12YXIgaDt0LmluaXREYXRhLnF1ZXJ5U2V0dGluZ3M9aSx0LmluaXREYXRhLmhhc2hTZXR0aW5ncz0oaD1sLE9iamVjdC5rZXlzKGgpLmZvckVhY2goKHQ9PntlW3RdJiZkZWxldGUgaFt0XX0pKSxoKX0pKCk7Cgk8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJtSC9PQ0tBMFBUTTNZTWt1Z1h0em9RPT0iPndpbmRvdy5TU19IT1NUID0gInN5bWJvbC1zZWFyY2gudHJhZGluZ3ZpZXcuY29tIjsKCQl3aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVCA9ICJodHRwczovL3dpZGdldC1zaGVyaWZmLnRyYWRpbmd2aWV3LXdpZGdldC5jb20iOwoJCXdpbmRvdy5pc19hdXRoZW50aWNhdGVkID0gZmFsc2U7CgoKCQl3aW5kb3cubG9jYWxlX2RvbWFpbnMgPSB7ImVuIjoid3d3LnRyYWRpbmd2aWV3LmNvbSIsImFyX0FFIjoiYXIudHJhZGluZ3ZpZXcuY29tIiwiYnIiOiJici50cmFkaW5ndmlldy5jb20iLCJkZV9ERSI6ImRlLnRyYWRpbmd2aWV3LmNvbSIsImVzIjoiZXMudHJhZGluZ3ZpZXcuY29tIiwiZnIiOiJmci50cmFkaW5ndmlldy5jb20iLCJoZV9JTCI6ImlsLnRyYWRpbmd2aWV3LmNvbSIsImlkIjoiaWQudHJhZGluZ3ZpZXcuY29tIiwiaW4iOiJpbi50cmFkaW5ndmlldy5jb20iLCJpdCI6Iml0LnRyYWRpbmd2aWV3LmNvbSIsImphIjoianAudHJhZGluZ3ZpZXcuY29tIiwia3IiOiJrci50cmFkaW5ndmlldy5jb20iLCJtc19NWSI6Im15LnRyYWRpbmd2aWV3LmNvbSIsInBsIjoicGwudHJhZGluZ3ZpZXcuY29tIiwicnUiOiJydS50cmFkaW5ndmlldy5jb20iLCJ0aF9USCI6InRoLnRyYWRpbmd2aWV3LmNvbSIsInRyIjoidHIudHJhZGluZ3ZpZXcuY29tIiwidmlfVk4iOiJ2bi50cmFkaW5ndmlldy5jb20iLCJ6aF9DTiI6ImNuLnRyYWRpbmd2aWV3LmNvbSIsInpoX1RXIjoidHcudHJhZGluZ3ZpZXcuY29tIiwiY2FfRVMiOiJlcy50cmFkaW5ndmlldy5jb20ifTsKCgkJCXdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMgPSB3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzIHx8IFtdOwoJCQkJd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cy5wdXNoKCd3aWRnZXQnKTsKCgkJd2luZG93LlRyYWRpbmdWaWV3ID0gd2luZG93LlRyYWRpbmdWaWV3IHx8IHt9Owo8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJtSC9PQ0tBMFBUTTNZTWt1Z1h0em9RPT0iPnZhciBlbnZpcm9ubWVudCA9ICJiYXR0bGUiOwoJCXdpbmRvdy5CVUlMRF9USU1FID0gIjIwMjYtMDctMjRUMTE6NDA6MDgiOwoJCXdpbmRvdy5XRUJTT0NLRVRfSE9TVCA9ICJ3aWRnZXRkYXRhLnRyYWRpbmd2aWV3LmNvbSI7CgkJd2luZG93LldFQlNPQ0tFVF9IT1NUX0ZPUl9SRUNPTk5FQ1QgPSAid2lkZ2V0ZGF0YS1iYWNrdXAudHJhZGluZ3ZpZXcuY29tIjsKCQl3aW5kb3cudXNlciA9IHsndXNlcm5hbWUnOiAnR3Vlc3QnLCAnZm9sbG93aW5nJzogJzAnLCAnZm9sbG93ZXJzJzogJzAnLCAnaWdub3JlX2xpc3QnOiB7fSwgJ2RvX25vdF90cmFjayc6IHRydWV9Ozwvc2NyaXB0PgoJPHNjcmlwdCBub25jZT0ibUgvT0NLQTBQVE0zWU1rdWdYdHpvUT09Ij5sZXQgcGFyYW1zID0ge307CgkJCWNvbnN0IGh0dHBSZWcgPSBuZXcgUmVnRXhwKCdeaHR0cChzKT86Ly8nKTsKCgkJCXRyeSB7CgkJCQlwYXJhbXMgPSBKU09OLnBhcnNlKGRlY29kZVVSSUNvbXBvbmVudChsb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSkpOwoJCQl9IGNhdGNoIChlKSB7CgkJCQlwYXJhbXMgPSB7fTsKCQkJfQoKCQkJd2luZG93LldFQlNPQ0tFVF9QQVJBTVNfQU5BTFlUSUNTID0gewoJCQkJJ3dzX2FuY2VzdG9yX29yaWdpbic6IHdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMgJiYgd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGggPyB3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW3dpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoIC0gMV0ucmVwbGFjZShodHRwUmVnLCAnJykgOiBudWxsLAoJCQkJJ3dzX3BhZ2VfdXJpJzogcGFyYW1zWydwYWdlLXVyaSddLAoJCQl9OygoKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBlKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IHM9InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxvPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1mdW5jdGlvbihlKXtjb25zdCB0PWUrIj0iLG49ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2xldCBzPW5bZV07Zm9yKDsiICI9PT1zLmNoYXJBdCgwKTspcz1zLnN1YnN0cmluZygxLHMubGVuZ3RoKTtpZigwPT09cy5pbmRleE9mKHQpKXJldHVybiBzLnN1YnN0cmluZyh0Lmxlbmd0aCxzLmxlbmd0aCl9cmV0dXJuIG51bGx9KCJ0dl9hcHAiKXx8IiI7c3x8PVsiYW5kcm9pZCIsImFuZHJvaWRfbnBzIl0uaW5jbHVkZXMoZSksb3x8PSJpb3MiPT09ZX1yZXR1cm4hKCJuZXciIT09ZSYmImFueSIhPT1lfHwhcyl8fCEoIm5ldyI9PT1lfHwhbyl9Y29uc3QgdD0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmInVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3Isbj10JiYib250b3VjaHN0YXJ0ImluIHdpbmRvdyxzPSh0JiZuJiZ3aW5kb3csdCYmKG58fG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyksdCYmd2luZG93LmNocm9tZSYmd2luZG93LmNocm9tZS5ydW50aW1lLHQmJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpLHQmJi9cc0VkZ2VcL1xkXGRcYi8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSx0JiZCb29sZWFuKG5hdmlnYXRvci52ZW5kb3IpJiZuYXZpZ2F0b3IudmVuZG9yLmluZGV4T2YoIkFwcGxlIik+LTEmJi0xPT09bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJDcmlPUyIpJiZuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksdCYmL21hYy9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSx0JiYvV2luMzJ8V2luNjQvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksdCYmL0xpbnV4L2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHQmJi9BbmRyb2lkL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSksbz10JiYvQmxhY2tCZXJyeS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksaT10JiYvaVBob25lfGlQYWR8aVBvZC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHI9dCYmL09wZXJhIE1pbmkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGM9dCYmKCJNYWNJbnRlbCI9PT1uYXZpZ2F0b3IucGxhdGZvcm0mJm5hdmlnYXRvci5tYXhUb3VjaFBvaW50cz4xfHwvaVBhZC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pKSxhPXN8fG98fGl8fHI7Y29uc3QgXz1uZXcgTWFwO2Z1bmN0aW9uIGQoKXtjb25zdCBlPXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSx0PXdpbmRvdy5sb2NhdGlvbi5ob3N0LG49YCR7dH0ke2V9YDtyZXR1cm4gXy5oYXMobil8fF8uc2V0KG4sZnVuY3Rpb24oZSx0KXtjb25zdCBuPVsiXndpZGdldC1kb2NzIl07Zm9yKGNvbnN0IGUgb2YgbilpZihuZXcgUmVnRXhwKGUpLnRlc3QodCkpcmV0dXJuITA7Y29uc3Qgcz1bIl53aWRnZXRlbWJlZC8/JCIsIl5jbWV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldHN0YXRpYy8/JCIsIl4oWzAtOWEtekEtWi1dKyk/Lz9tZWRpdW13aWRnZXRlbWJlZC8/JCIsIl50d2l0dGVyLWNoYXJ0Lz8kIiwiXnRlbGVncmFtL2NoYXJ0Lz8kIiwiXmVtYmVkLyhbMC05YS16QS1aXXs4fSkvPyQiLCJed2lkZ2V0cG9wdXAvPyQiLCJeZXh0ZW5zaW9uLz8kIiwiXmlkZWEtcG9wdXAvPyQiLCJeaG90bGlzdHN3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvaG90bGlzdHN3aWRnZXRlbWJlZC8/JCIsIl5tYXJrZXRvdmVydmlld3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRvdmVydmlld3dpZGdldGVtYmVkLz8kIiwiXmV2ZW50c3dpZGdldGVtYmVkLz8kIiwiXnRpY2tlcnN3aWRnZXRlbWJlZC8/JCIsIl5mb3JleGNyb3NzcmF0ZXN3aWRnZXRlbWJlZC8/JCIsIl5mb3JleGhlYXRtYXB3aWRnZXRlbWJlZC8/JCIsIl5tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl5zY3JlZW5lcndpZGdldC8/JCIsIl5jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnRlY2huaWNhbC1hbmFseXNpcy13aWRnZXQtZW1iZWQvJCIsIl5zaW5nbGVxdW90ZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9zaW5nbGVxdW90ZXdpZGdldGVtYmVkLz8kIiwiXmVtYmVkLXdpZGdldC8oWzAtOWEtekEtWi1dKykvKChbMC05YS16QS1aLV0rKS8pPyQiLCJed2lkZ2V0LWRvY3MvKFswLTlhLXpBLVotXSspLyhbMC05YS16QS1aLS9dKyk/JCJdLG89ZS5yZXBsYWNlKC9eXC8vLCIiKTtsZXQgaTtmb3IobGV0IGU9cy5sZW5ndGgtMTtlPj0wO2UtLSlpZihpPW5ldyBSZWdFeHAoc1tlXSksaS50ZXN0KG8pKXJldHVybiEwO3JldHVybiExfShlLHQpKSxfLmdldChuKT8/ITF9Y29uc3QgaD13aW5kb3cuVHJhZGluZ1ZpZXc9d2luZG93LlRyYWRpbmdWaWV3fHx7fTtjb25zdCBsPXtBbmRyb2lkOigpPT5zLEJsYWNrQmVycnk6KCk9Pm8saU9TOigpPT5pLE9wZXJhOigpPT5yLGlzSVBhZDooKT0+Yyxhbnk6KCk9PmF9O2guaXNNb2JpbGU9bCxoLm9uV2lkZ2V0PWQ7Y29uc3QgdT0oKT0+e30sZz0ifm1+IjtjbGFzcyBte2NvbnN0cnVjdG9yKGUsdD17fSl7dGhpcy5zZXNzaW9uaWQ9bnVsbCx0aGlzLmNvbm5lY3RlZD0hMSx0aGlzLl90aW1lb3V0PW51bGwsdGhpcy5fYmFzZT1lLHRoaXMuX29wdGlvbnM9e3RpbWVvdXQ6dC50aW1lb3V0fHwyZTQsY29ubmVjdGlvblR5cGU6dC5jb25uZWN0aW9uVHlwZSxhcGlLZXk6dC5hcGlLZXl9fWNvbm5lY3QoKXt0aGlzLl9zb2NrZXQ9bmV3IFdlYlNvY2tldCh0aGlzLl9wcmVwYXJlVXJsKCkpLAp0aGlzLl9zb2NrZXQub25tZXNzYWdlPWU9PntpZigic3RyaW5nIiE9dHlwZW9mIGUuZGF0YSl0aHJvdyBuZXcgVHlwZUVycm9yKGBUaGUgV2ViU29ja2V0IG1lc3NhZ2Ugc2hvdWxkIGJlIGEgc3RyaW5nLiBSZWNpZXZlZCAke09iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlLmRhdGEpfWApO3RoaXMuX29uRGF0YShlLmRhdGEpfSx0aGlzLl9zb2NrZXQub25jbG9zZT10aGlzLl9vbkNsb3NlLmJpbmQodGhpcyksdGhpcy5fc29ja2V0Lm9uZXJyb3I9dGhpcy5fb25FcnJvci5iaW5kKHRoaXMpfXNlbmQoZSl7dGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQuc2VuZCh0aGlzLl9lbmNvZGUoZSkpfWRpc2Nvbm5lY3QoKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9ubWVzc2FnZT11LHRoaXMuX3NvY2tldC5vbmNsb3NlPXUsdGhpcy5fc29ja2V0Lm9uZXJyb3I9dSx0aGlzLl9zb2NrZXQuY2xvc2UoKSl9X2NsZWFySWRsZVRpbWVvdXQoKXtudWxsIT09dGhpcy5fdGltZW91dCYmKGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KSx0aGlzLl90aW1lb3V0PW51bGwpfV9lbmNvZGUoZSl7bGV0IHQsbj0iIjtjb25zdCBzPUFycmF5LmlzQXJyYXkoZSk/ZTpbZV0sbz1zLmxlbmd0aDtmb3IobGV0IGU9MDtlPG87ZSsrKXQ9bnVsbD09PXNbZV18fHZvaWQgMD09PXNbZV0/IiI6bS5fc3RyaW5naWZ5KHNbZV0pLG4rPWcrdC5sZW5ndGgrZyt0O3JldHVybiBufV9kZWNvZGUoZSl7Y29uc3QgdD1bXTtsZXQgbixzO2Rve2lmKGUuc3Vic3RyaW5nKDAsMykhPT1nKXJldHVybiB0O249IiIscz0iIjtjb25zdCBvPShlPWUuc3Vic3RyaW5nKDMpKS5sZW5ndGg7Zm9yKGxldCB0PTA7dDxvO3QrKyl7aWYocz1OdW1iZXIoZS5zdWJzdHJpbmcodCx0KzEpKSxOdW1iZXIoZS5zdWJzdHJpbmcodCx0KzEpKSE9PXMpe2U9ZS5zdWJzdHJpbmcobi5sZW5ndGgrMyksbj1OdW1iZXIobik7YnJlYWt9bis9c310LnB1c2goZS5zdWJzdHJpbmcoMCxuKSksZT1lLnN1YnN0cmluZyhuKX13aGlsZSgiIiE9PWUpO3JldHVybiB0fV9vbkRhdGEoZSl7dGhpcy5fc2V0VGltZW91dCgpO2NvbnN0IHQ9dGhpcy5fZGVjb2RlKGUpLG49dC5sZW5ndGg7Zm9yKGxldCBlPTA7ZTxuO2UrKyl0aGlzLl9vbk1lc3NhZ2UodFtlXSl9X3NldFRpbWVvdXQoKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX29uVGltZW91dC5iaW5kKHRoaXMpLHRoaXMuX29wdGlvbnMudGltZW91dCl9X29uVGltZW91dCgpe3RoaXMuZGlzY29ubmVjdCgpLHRoaXMuX29uRGlzY29ubmVjdCh7Y29kZTo0ZTMscmVhc29uOiJzb2NrZXQuaW8gdGltZW91dCIsd2FzQ2xlYW46ITF9KX1fb25NZXNzYWdlKGUpe3RoaXMuc2Vzc2lvbmlkP3RoaXMuX2NoZWNrSWZIZWFydGJlYXQoZSk/dGhpcy5fb25IZWFydGJlYXQoZS5zbGljZSgzKSk6dGhpcy5fY2hlY2tJZkpzb24oZSk/dGhpcy5fYmFzZS5vbk1lc3NhZ2UoSlNPTi5wYXJzZShlLnNsaWNlKDMpKSk6dGhpcy5fYmFzZS5vbk1lc3NhZ2UoZSk6KHRoaXMuc2Vzc2lvbmlkPWUsdGhpcy5fb25Db25uZWN0KCkpfV9jaGVja0lmSGVhcnRiZWF0KGUpe3JldHVybiB0aGlzLl9jaGVja01lc3NhZ2VUeXBlKGUsImgiKX1fY2hlY2tJZkpzb24oZSl7cmV0dXJuIHRoaXMuX2NoZWNrTWVzc2FnZVR5cGUoZSwiaiIpfV9jaGVja01lc3NhZ2VUeXBlKGUsdCl7cmV0dXJuIGUuc3Vic3RyaW5nKDAsMyk9PT0ifiIrdCsifiJ9X29uSGVhcnRiZWF0KGUpe3RoaXMuc2VuZCgifmh+IitlKX1fb25Db25uZWN0KCl7dGhpcy5jb25uZWN0ZWQ9ITAsdGhpcy5fYmFzZS5vbkNvbm5lY3QoKX1fb25EaXNjb25uZWN0KGUpe3RoaXMuX2NsZWFyKCksdGhpcy5fYmFzZS5vbkRpc2Nvbm5lY3QoZSksdGhpcy5zZXNzaW9uaWQ9bnVsbH1fY2xlYXIoKXt0aGlzLmNvbm5lY3RlZD0hMX1fcHJlcGFyZVVybCgpe2NvbnN0IHQ9ayh0aGlzLl9iYXNlLmhvc3QpO2lmKHQucGF0aG5hbWUrPSJzb2NrZXQuaW8vd2Vic29ja2V0Iix0LnByb3RvY29sPSJ3c3M6Iix0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImZyb20iLHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zbGljZSgxLDUwKSksdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJkYXRlIix3aW5kb3cuQlVJTERfVElNRXx8IiIpLGUoImFueSIpJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImNsaWVudCIsIm1vYmlsZSIpLHRoaXMuX29wdGlvbnMuY29ubmVjdGlvblR5cGUmJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgidHlwZSIsdGhpcy5fb3B0aW9ucy5jb25uZWN0aW9uVHlwZSksd2luZG93LldFQlNPQ0tFVF9QQVJBTVNfQU5BTFlUSUNTKXtjb25zdHt3c19wYWdlX3VyaTplLHdzX2FuY2VzdG9yX29yaWdpbjpufT13aW5kb3cuV0VCU09DS0VUX1BBUkFNU19BTkFMWVRJQ1M7ZSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJwYWdlLXVyaSIsZSksbiYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJhbmNlc3Rvci1vcmlnaW4iLG4pfWNvbnN0IG49d2luZG93LmxvY2F0aW9uLnNlYXJjaC5pbmNsdWRlcygid2lkZ2V0X3Rva2VuIil8fHdpbmRvdy5sb2NhdGlvbi5oYXNoLmluY2x1ZGVzKCJ3aWRnZXRfdG9rZW4iKTtyZXR1cm4gZCgpfHxufHx0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImF1dGgiLCJzZXNzaW9uaWQiKSx2b2lkIDAhPT10aGlzLl9vcHRpb25zLmFwaUtleSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJhcGlfa2V5Iix0aGlzLl9vcHRpb25zLmFwaUtleSksdC5ocmVmfV9vbkNsb3NlKGUpe3RoaXMuX2NsZWFySWRsZVRpbWVvdXQoKSx0aGlzLl9vbkRpc2Nvbm5lY3QoZSl9X29uRXJyb3IoZSl7dGhpcy5fY2xlYXJJZGxlVGltZW91dCgpLHRoaXMuX2NsZWFyKCksdGhpcy5fYmFzZS5lbWl0KCJlcnJvciIsW2VdKSx0aGlzLnNlc3Npb25pZD1udWxsfXN0YXRpYyBfc3RyaW5naWZ5KGUpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPyJ+an4iK0pTT04uc3RyaW5naWZ5KGUpOlN0cmluZyhlKX19Y2xhc3Mgd3tjb25zdHJ1Y3RvcihlLHQpe3RoaXMuaG9zdD1lLAp0aGlzLl9jb25uZWN0aW5nPSExLHRoaXMuX2V2ZW50cz17fSx0aGlzLnRyYW5zcG9ydD10aGlzLl9nZXRUcmFuc3BvcnQodCl9aXNDb25uZWN0ZWQoKXtyZXR1cm4hIXRoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5jb25uZWN0ZWR9aXNDb25uZWN0aW5nKCl7cmV0dXJuIHRoaXMuX2Nvbm5lY3Rpbmd9Y29ubmVjdCgpe3RoaXMuaXNDb25uZWN0ZWQoKXx8KHRoaXMuX2Nvbm5lY3RpbmcmJnRoaXMuZGlzY29ubmVjdCgpLHRoaXMuX2Nvbm5lY3Rpbmc9ITAsdGhpcy50cmFuc3BvcnQuY29ubmVjdCgpKX1zZW5kKGUpe3RoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5jb25uZWN0ZWQmJnRoaXMudHJhbnNwb3J0LnNlbmQoZSl9ZGlzY29ubmVjdCgpe3RoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5kaXNjb25uZWN0KCl9b24oZSx0KXtlIGluIHRoaXMuX2V2ZW50c3x8KHRoaXMuX2V2ZW50c1tlXT1bXSksdGhpcy5fZXZlbnRzW2VdLnB1c2godCl9b2ZmQWxsKCl7dGhpcy5fZXZlbnRzPXt9fW9uTWVzc2FnZShlKXt0aGlzLmVtaXQoIm1lc3NhZ2UiLFtlXSl9ZW1pdChlLHQ9W10pe2lmKGUgaW4gdGhpcy5fZXZlbnRzKXtjb25zdCBuPXRoaXMuX2V2ZW50c1tlXS5jb25jYXQoKSxzPW4ubGVuZ3RoO2ZvcihsZXQgZT0wO2U8cztlKyspbltlXS5hcHBseSh0aGlzLHQpfX1vbkNvbm5lY3QoKXt0aGlzLmNsZWFyKCksdGhpcy5lbWl0KCJjb25uZWN0Iil9b25EaXNjb25uZWN0KGUpe3RoaXMuZW1pdCgiZGlzY29ubmVjdCIsW2VdKX1jbGVhcigpe3RoaXMuX2Nvbm5lY3Rpbmc9ITF9X2dldFRyYW5zcG9ydChlKXtyZXR1cm4gbmV3IG0odGhpcyxlKX19ZnVuY3Rpb24gayhlKXtjb25zdCB0PS0xIT09ZS5pbmRleE9mKCIvIik/bmV3IFVSTChlKTpuZXcgVVJMKCJ3c3M6Ly8iK2UpO2lmKCJ3c3M6IiE9PXQucHJvdG9jb2wmJiJodHRwczoiIT09dC5wcm90b2NvbCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgd2Vic29ja2V0IGJhc2UgIitlKTtyZXR1cm4gdC5wYXRobmFtZS5lbmRzV2l0aCgiLyIpfHwodC5wYXRobmFtZSs9Ii8iKSx0LnNlYXJjaD0iIix0LnVzZXJuYW1lPSIiLHQucGFzc3dvcmQ9IiIsdH12YXIgcCxiOyFmdW5jdGlvbihlKXtlW2UuTm9ybWFsPTMwMF09Ik5vcm1hbCIsZVtlLkFmdGVyQ2xvc2VFdmVudD01ZTNdPSJBZnRlckNsb3NlRXZlbnQifShwfHwocD17fSkpLGZ1bmN0aW9uKGUpe2VbZS5JbmZvPTBdPSJJbmZvIixlW2UuTm9ybWFsPTFdPSJOb3JtYWwiLGVbZS5EZWJ1Zz0yXT0iRGVidWciLGVbZS5FcnJvcj0zXT0iRXJyb3IifShifHwoYj17fSkpO2NvbnN0IGY9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJk51bWJlcih3aW5kb3cuVEVMRU1FVFJZX1dTX0VSUk9SX0xPR1NfVEhSRVNIT0xEKXx8MDt2YXIgeTshZnVuY3Rpb24oZSl7ZVtlLlBpbmdJbnRlcnZhbD0xZTRdPSJQaW5nSW50ZXJ2YWwiLGVbZS5NYXhQaW5nc0NvdW50PTEwXT0iTWF4UGluZ3NDb3VudCIsZVtlLk1heFJlZGlyZWN0cz0yMF09Ik1heFJlZGlyZWN0cyIsZVtlLk1heFJlY29ubmVjdHM9MjBdPSJNYXhSZWNvbm5lY3RzIn0oeXx8KHk9e30pKTtjbGFzcyBUe2NvbnN0cnVjdG9yKGUsdD17fSl7dGhpcy5fcXVldWVTdGFjaz1bXSx0aGlzLl9sb2dzUXVldWU9W10sdGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlPVtdLHRoaXMuX3JlY29ubmVjdENvdW50PTAsdGhpcy5fcmVkaXJlY3RDb3VudD0wLHRoaXMuX2Vycm9yc0NvdW50PTAsdGhpcy5fZXJyb3JzSW5mb1NlbnQ9ITEsdGhpcy5fY29ubmVjdGlvblN0YXJ0PW51bGwsdGhpcy5fY29ubmVjdGlvbkVzdGFibGlzaGVkPW51bGwsdGhpcy5fcmVjb25uZWN0VGltZW91dD1udWxsLHRoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuPW51bGwsdGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuPSExLHRoaXMuX2luaXRpYWxIb3N0PXQuaW5pdGlhbEhvc3R8fG51bGwsdGhpcy5fc3VnZ2VzdGVkSG9zdD1lLHRoaXMuX3Byb0hvc3Q9dC5wcm9Ib3N0LHRoaXMuX3JlY29ubmVjdEhvc3Q9dC5yZWNvbm5lY3RIb3N0LHRoaXMuX25vUmVjb25uZWN0QWZ0ZXJUaW1lb3V0PSEwPT09dC5ub1JlY29ubmVjdEFmdGVyVGltZW91dCx0aGlzLl9kYXRhUmVxdWVzdFRpbWVvdXQ9dC5kYXRhUmVxdWVzdFRpbWVvdXQsdGhpcy5fY29ubmVjdGlvblR5cGU9dC5jb25uZWN0aW9uVHlwZSx0aGlzLl9hcGlLZXk9dC5hcGlLZXksdGhpcy5fZG9Db25uZWN0KCksdC5waW5nUmVxdWlyZWQmJi0xPT09d2luZG93LmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCJub3BpbmciKSYmdGhpcy5fc3RhcnRQaW5nKCl9Y29ubmVjdCgpe3RoaXMuX3RyeUNvbm5lY3QoKX1yZXNldENvdW50ZXJzKCl7dGhpcy5fcmVjb25uZWN0Q291bnQ9MCx0aGlzLl9yZWRpcmVjdENvdW50PTB9c2V0TG9nZ2VyKGUsdCl7dGhpcy5fbG9nZ2VyPWUsdGhpcy5fZ2V0TG9nSGlzdG9yeT10LHRoaXMuX2ZsdXNoTG9ncygpfXNldFRlbGVtZXRyeShlKXt0aGlzLl90ZWxlbWV0cnk9ZSx0aGlzLl90ZWxlbWV0cnkucmVwb3J0U2VudC5zdWJzY3JpYmUodGhpcyx0aGlzLl9vblRlbGVtZXRyeVNlbnQpLHRoaXMuX2ZsdXNoVGVsZW1ldHJ5KCl9b25SZWNvbm5lY3QoZSl7dGhpcy5fb25SZWNvbm5lY3Q9ZX1pc0Nvbm5lY3RlZCgpe3JldHVybiEhdGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQuaXNDb25uZWN0ZWQoKX1pc0Nvbm5lY3RpbmcoKXtyZXR1cm4hIXRoaXMuX3NvY2tldCYmdGhpcy5fc29ja2V0LmlzQ29ubmVjdGluZygpfW9uKGUsdCl7cmV0dXJuISF0aGlzLl9zb2NrZXQmJigiY29ubmVjdCI9PT1lJiZ0aGlzLl9zb2NrZXQuaXNDb25uZWN0ZWQoKT90KCk6ImRpc2Nvbm5lY3QiPT09ZT90aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzLnB1c2godCk6dGhpcy5fc29ja2V0Lm9uKGUsdCksITApfWdldFNlc3Npb25JZCgpe3JldHVybiB0aGlzLl9zb2NrZXQmJnRoaXMuX3NvY2tldC50cmFuc3BvcnQ/dGhpcy5fc29ja2V0LnRyYW5zcG9ydC5zZXNzaW9uaWQ6bnVsbH1zZW5kKGUpe3JldHVybiB0aGlzLmlzQ29ubmVjdGVkKCk/KHRoaXMuX3NvY2tldC5zZW5kKGUpLCEwKToodGhpcy5fcXVldWVNZXNzYWdlKGUpLCExKX0KZ2V0Q29ubmVjdGlvbkVzdGFibGlzaGVkKCl7cmV0dXJuIHRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZH1nZXRIb3N0KCl7Y29uc3QgZT10aGlzLl90cnlHZXRQcm9Ib3N0KCk7cmV0dXJuIG51bGwhPT1lP2U6dGhpcy5fcmVjb25uZWN0SG9zdCYmdGhpcy5fcmVjb25uZWN0Q291bnQ+Mz90aGlzLl9yZWNvbm5lY3RIb3N0OnRoaXMuX3N1Z2dlc3RlZEhvc3R9Z2V0UmVjb25uZWN0Q291bnQoKXtyZXR1cm4gdGhpcy5fcmVjb25uZWN0Q291bnR9Z2V0UmVkaXJlY3RDb3VudCgpe3JldHVybiB0aGlzLl9yZWRpcmVjdENvdW50fWdldENvbm5lY3Rpb25TdGFydCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uU3RhcnR9ZGlzY29ubmVjdCgpe3RoaXMuX2NsZWFyUmVjb25uZWN0VGltZW91dCgpLCh0aGlzLmlzQ29ubmVjdGVkKCl8fHRoaXMuaXNDb25uZWN0aW5nKCkpJiYodGhpcy5fcHJvcGFnYXRlRGlzY29ubmVjdCgpLHRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3M9W10sdGhpcy5fY2xvc2VTb2NrZXQoKSl9Zm9yYmlkQ29ubmVjdGlvbigpe3RoaXMuX2lzQ29ubmVjdGlvbkZvcmJpZGRlbj0hMCx0aGlzLmRpc2Nvbm5lY3QoKX1hbGxvd0Nvbm5lY3Rpb24oKXt0aGlzLl9pc0Nvbm5lY3Rpb25Gb3JiaWRkZW49ITEsdGhpcy5jb25uZWN0KCl9aXNNYXhSZWRpcmVjdHMoKXtyZXR1cm4gdGhpcy5fcmVkaXJlY3RDb3VudD49MjB9aXNNYXhSZWNvbm5lY3RzKCl7cmV0dXJuIHRoaXMuX3JlY29ubmVjdENvdW50Pj0yMH1nZXRQaW5nSW5mbygpe3JldHVybiB0aGlzLl9waW5nSW5mb3x8bnVsbH1nZXRBcGlLZXkoKXtyZXR1cm4gdGhpcy5fYXBpS2V5fV90cnlHZXRQcm9Ib3N0KCl7cmV0dXJuIHdpbmRvdy5UcmFkaW5nVmlldyYmd2luZG93LlRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlJiYiYmF0dGxlIj09PXdpbmRvdy5lbnZpcm9ubWVudCYmIXRoaXMuX3JlZGlyZWN0Q291bnQmJi0xPT09d2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZigid3NfaG9zdCIpP3RoaXMuX2luaXRpYWxIb3N0P3RoaXMuX2luaXRpYWxIb3N0OnZvaWQgMCE9PXdpbmRvdy51c2VyJiZ3aW5kb3cudXNlci5wcm9fcGxhbj90aGlzLl9wcm9Ib3N0fHx0aGlzLl9zdWdnZXN0ZWRIb3N0Om51bGw6bnVsbH1fcXVldWVNZXNzYWdlKGUpezA9PT10aGlzLl9xdWV1ZVN0YWNrLmxlbmd0aCYmdGhpcy5fbG9nTWVzc2FnZSgwLCJTb2NrZXQgaXMgbm90IGNvbm5lY3RlZC4gUXVldWVkIGEgbWVzc2FnZSIpLHRoaXMuX3F1ZXVlU3RhY2sucHVzaChlKX1fcHJvY2Vzc01lc3NhZ2VRdWV1ZSgpezAhPT10aGlzLl9xdWV1ZVN0YWNrLmxlbmd0aCYmKHRoaXMuX2xvZ01lc3NhZ2UoMCwiUHJvY2Vzc2luZyBxdWV1ZWQgbWVzc2FnZXMiKSx0aGlzLl9xdWV1ZVN0YWNrLmZvckVhY2godGhpcy5zZW5kLmJpbmQodGhpcykpLHRoaXMuX2xvZ01lc3NhZ2UoMCwiUHJvY2Vzc2VkICIrdGhpcy5fcXVldWVTdGFjay5sZW5ndGgrIiBtZXNzYWdlcyIpLHRoaXMuX3F1ZXVlU3RhY2s9W10pfV9vbkRpc2Nvbm5lY3QoZSl7dGhpcy5fbm9SZWNvbm5lY3RBZnRlclRpbWVvdXR8fG51bGwhPT10aGlzLl9yZWNvbm5lY3RUaW1lb3V0fHwodGhpcy5fcmVjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX3RyeVJlY29ubmVjdC5iaW5kKHRoaXMpLDVlMykpLHRoaXMuX2NsZWFyT25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKTtsZXQgdD0iZGlzY29ubmVjdCBzZXNzaW9uOiIrdGhpcy5nZXRTZXNzaW9uSWQoKTtlJiYodCs9IiwgY29kZToiK2UuY29kZSsiLCByZWFzb246IitlLnJlYXNvbiwxMDA1PT09ZS5jb2RlJiZ0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfY29kZV8xMDA1IikpLHRoaXMuX2xvZ01lc3NhZ2UoMCx0KSx0aGlzLl9wcm9wYWdhdGVEaXNjb25uZWN0KGUpLHRoaXMuX2Nsb3NlU29ja2V0KCksdGhpcy5fcXVldWVTdGFjaz1bXX1fY2xvc2VTb2NrZXQoKXtudWxsIT09dGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9mZkFsbCgpLHRoaXMuX3NvY2tldC5kaXNjb25uZWN0KCksdGhpcy5fc29ja2V0PW51bGwpfV9sb2dNZXNzYWdlKGUsdCl7Y29uc3Qgbj17bWV0aG9kOmUsbWVzc2FnZTp0fTt0aGlzLl9sb2dnZXI/dGhpcy5fZmx1c2hMb2dNZXNzYWdlKG4pOihuLm1lc3NhZ2U9YFskeyhuZXcgRGF0ZSkudG9JU09TdHJpbmcoKX1dICR7bi5tZXNzYWdlfWAsdGhpcy5fbG9nc1F1ZXVlLnB1c2gobikpfV9mbHVzaExvZ01lc3NhZ2UoZSl7c3dpdGNoKGUubWV0aG9kKXtjYXNlIDI6dGhpcy5fbG9nZ2VyLmxvZ0RlYnVnKGUubWVzc2FnZSk7YnJlYWs7Y2FzZSAzOnRoaXMuX2xvZ2dlci5sb2dFcnJvcihlLm1lc3NhZ2UpO2JyZWFrO2Nhc2UgMDp0aGlzLl9sb2dnZXIubG9nSW5mbyhlLm1lc3NhZ2UpO2JyZWFrO2Nhc2UgMTp0aGlzLl9sb2dnZXIubG9nTm9ybWFsKGUubWVzc2FnZSl9fV9mbHVzaExvZ3MoKXt0aGlzLl9mbHVzaExvZ01lc3NhZ2Uoe21ldGhvZDoxLG1lc3NhZ2U6Im1lc3NhZ2VzIGZyb20gcXVldWUuIFN0YXJ0LiJ9KSx0aGlzLl9sb2dzUXVldWUuZm9yRWFjaCgoZT0+e3RoaXMuX2ZsdXNoTG9nTWVzc2FnZShlKX0pKSx0aGlzLl9mbHVzaExvZ01lc3NhZ2Uoe21ldGhvZDoxLG1lc3NhZ2U6Im1lc3NhZ2VzIGZyb20gcXVldWUuIEVuZC4ifSksdGhpcy5fbG9nc1F1ZXVlPVtdfV9zZW5kVGVsZW1ldHJ5KGUsdCl7Y29uc3Qgbj17ZXZlbnQ6ZSxwYXJhbXM6dH07dGhpcy5fdGVsZW1ldHJ5P3RoaXMuX2ZsdXNoVGVsZW1ldHJ5T2JqZWN0KG4pOnRoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZS5wdXNoKG4pfV9mbHVzaFRlbGVtZXRyeU9iamVjdChlKXt0aGlzLl90ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KGUuZXZlbnQsZS5wYXJhbXMsITEpfV9mbHVzaFRlbGVtZXRyeSgpe3RoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZS5mb3JFYWNoKChlPT57dGhpcy5fZmx1c2hUZWxlbWV0cnlPYmplY3QoZSl9KSksdGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlPVtdfV9kb0Nvbm5lY3QoKXsKdGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0LmlzQ29ubmVjdGVkKCl8fHRoaXMuX3NvY2tldC5pc0Nvbm5lY3RpbmcoKSl8fCh0aGlzLl9jbGVhck9ubGluZUNhbmNlbGxhdGlvblRva2VuKCksdGhpcy5faG9zdD10aGlzLmdldEhvc3QoKSx0aGlzLl9zb2NrZXQ9bmV3IHcodGhpcy5faG9zdCx7dGltZW91dDp0aGlzLl9kYXRhUmVxdWVzdFRpbWVvdXQsY29ubmVjdGlvblR5cGU6dGhpcy5fY29ubmVjdGlvblR5cGUsYXBpS2V5OnRoaXMuX2FwaUtleX0pLHRoaXMuX2xvZ01lc3NhZ2UoMCwiQ29ubmVjdGluZyB0byAiK3RoaXMuX2hvc3QpLHRoaXMuX2JpbmRFdmVudHMoKSx0aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzPVtdLHRoaXMuX2Nvbm5lY3Rpb25TdGFydD1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9jb25uZWN0aW9uRXN0YWJsaXNoZWQ9bnVsbCx0aGlzLl9zb2NrZXQuY29ubmVjdCgpLHBlcmZvcm1hbmNlLm1hcmsoIlNXU0MiLHtkZXRhaWw6IlN0YXJ0IFdlYlNvY2tldCBjb25uZWN0aW9uIn0pLHRoaXMuX3NvY2tldC5vbigiY29ubmVjdCIsKCgpPT57cGVyZm9ybWFuY2UubWFyaygiRVdTQyIse2RldGFpbDoiRW5kIFdlYlNvY2tldCBjb25uZWN0aW9uIn0pLHBlcmZvcm1hbmNlLm1lYXN1cmUoIldlYlNvY2tldCBjb25uZWN0aW9uIGRlbGF5IiwiU1dTQyIsIkVXU0MiKX0pKSl9X3Byb3BhZ2F0ZURpc2Nvbm5lY3QoZSl7Y29uc3QgdD10aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzLmxlbmd0aDtmb3IobGV0IG49MDtuPHQ7bisrKXRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3Nbbl0oZXx8e30pfV9iaW5kRXZlbnRzKCl7dGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9uKCJjb25uZWN0IiwoKCk9Pntjb25zdCBlPXRoaXMuZ2V0U2Vzc2lvbklkKCk7aWYoInN0cmluZyI9PXR5cGVvZiBlKXtjb25zdCB0PUpTT04ucGFyc2UoZSk7aWYodC5yZWRpcmVjdClyZXR1cm4gdGhpcy5fcmVkaXJlY3RDb3VudCs9MSx0aGlzLl9zdWdnZXN0ZWRIb3N0PXQucmVkaXJlY3QsdGhpcy5pc01heFJlZGlyZWN0cygpJiZ0aGlzLl9zZW5kVGVsZW1ldHJ5KCJyZWRpcmVjdF9iYWlsb3V0Iiksdm9pZCB0aGlzLl9yZWRpcmVjdCgpfXRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZD1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9wcm9jZXNzTWVzc2FnZVF1ZXVlKCksdGhpcy5fbG9nTWVzc2FnZSgwLCJjb25uZWN0IHNlc3Npb246IitlKX0pKSx0aGlzLl9zb2NrZXQub24oImRpc2Nvbm5lY3QiLHRoaXMuX29uRGlzY29ubmVjdC5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQub24oImNsb3NlIix0aGlzLl9vbkRpc2Nvbm5lY3QuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0Lm9uKCJlcnJvciIsKGU9Pnt0aGlzLl9sb2dNZXNzYWdlKDAsbmV3IERhdGUrIiBzZXNzaW9uOiIrdGhpcy5nZXRTZXNzaW9uSWQoKSsiIHdlYnNvY2tldCBlcnJvcjoiK0pTT04uc3RyaW5naWZ5KGUpKSx0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfZXJyb3IiKSx0aGlzLl9lcnJvcnNDb3VudCsrLCF0aGlzLl9lcnJvcnNJbmZvU2VudCYmdGhpcy5fZXJyb3JzQ291bnQ+PWYmJih2b2lkIDAhPT10aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFjayYmKHRoaXMuX3NlbmRUZWxlbWV0cnkoIndlYnNvY2tldF9lcnJvcl9jb25uZWN0X3N0YWNrIix7dGV4dDp0aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFja30pLGRlbGV0ZSB0aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFjayksdm9pZCAwIT09dGhpcy5fZ2V0TG9nSGlzdG9yeSYmdGhpcy5fc2VuZFRlbGVtZXRyeSgid2Vic29ja2V0X2Vycm9yX2xvZyIse3RleHQ6dGhpcy5fZ2V0TG9nSGlzdG9yeSg1MCkuam9pbigiXG4iKX0pLHRoaXMuX2Vycm9yc0luZm9TZW50PSEwKX0pKSl9X3JlZGlyZWN0KCl7dGhpcy5kaXNjb25uZWN0KCksdGhpcy5fcmVjb25uZWN0V2hlbk9ubGluZSgpfV90cnlSZWNvbm5lY3QoKXt0aGlzLl90cnlDb25uZWN0KCkmJih0aGlzLl9yZWNvbm5lY3RDb3VudCs9MSl9X3RyeUNvbm5lY3QoKXtyZXR1cm4hdGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuJiYodGhpcy5fY2xlYXJSZWNvbm5lY3RUaW1lb3V0KCksdGhpcy5fbGFzdENvbm5lY3RDYWxsU3RhY2s9bmV3IEVycm9yKGBXZWJTb2NrZXQgY29ubmVjdCBzdGFjay4gSXMgY29ubmVjdGVkOiAke3RoaXMuaXNDb25uZWN0ZWQoKX0uYCkuc3RhY2t8fCIiLCF0aGlzLmlzQ29ubmVjdGVkKCkmJih0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9yZWNvbm5lY3RXaGVuT25saW5lKCksITApKX1fY2xlYXJPbmxpbmVDYW5jZWxsYXRpb25Ub2tlbigpe3RoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuJiYodGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKSx0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbj1udWxsKX1fY2xlYXJSZWNvbm5lY3RUaW1lb3V0KCl7bnVsbCE9PXRoaXMuX3JlY29ubmVjdFRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5fcmVjb25uZWN0VGltZW91dCksdGhpcy5fcmVjb25uZWN0VGltZW91dD1udWxsKX1fcmVjb25uZWN0V2hlbk9ubGluZSgpe2lmKG5hdmlnYXRvci5vbkxpbmUpcmV0dXJuIHRoaXMuX2xvZ01lc3NhZ2UoMCwiTmV0d29yayBzdGF0dXM6IG9ubGluZSAtIHRyeWluZyB0byBjb25uZWN0IiksdGhpcy5fZG9Db25uZWN0KCksdm9pZCh0aGlzLl9vblJlY29ubmVjdCYmdGhpcy5fb25SZWNvbm5lY3QoKSk7dGhpcy5fbG9nTWVzc2FnZSgwLCJOZXR3b3JrIHN0YXR1czogb2ZmbGluZSAtIHdhaXQgdW50aWwgb25saW5lIiksdGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW49ZnVuY3Rpb24oZSl7bGV0IHQ9ZTtjb25zdCBuPSgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbiksdCYmdCgpfTtyZXR1cm4gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbiksKCk9Pnt0PW51bGx9fSgoKCk9Pnt0aGlzLl9sb2dNZXNzYWdlKDAsIk5ldHdvcmsgc3RhdHVzIGNoYW5nZWQgdG8gb25saW5lIC0gdHJ5aW5nIHRvIGNvbm5lY3QiKSx0aGlzLl9kb0Nvbm5lY3QoKSx0aGlzLl9vblJlY29ubmVjdCYmdGhpcy5fb25SZWNvbm5lY3QoKX0pKX0KX29uVGVsZW1ldHJ5U2VudChlKXsid2Vic29ja2V0X2Vycm9yImluIGUmJih0aGlzLl9lcnJvcnNDb3VudD0wLHRoaXMuX2Vycm9yc0luZm9TZW50PSExKX1fc3RhcnRQaW5nKCl7aWYodGhpcy5fcGluZ0ludGVydmFsSWQpcmV0dXJuO2NvbnN0IGU9ayh0aGlzLmdldEhvc3QoKSk7ZS5wYXRobmFtZSs9InBpbmciLGUucHJvdG9jb2w9Imh0dHBzOiI7bGV0IHQ9MCxuPTA7Y29uc3Qgcz1lPT57dGhpcy5fcGluZ0luZm89dGhpcy5fcGluZ0luZm98fHttYXg6MCxtaW46MS8wLGF2ZzowfTtjb25zdCBzPShuZXcgRGF0ZSkuZ2V0VGltZSgpLWU7cz50aGlzLl9waW5nSW5mby5tYXgmJih0aGlzLl9waW5nSW5mby5tYXg9cyksczx0aGlzLl9waW5nSW5mby5taW4mJih0aGlzLl9waW5nSW5mby5taW49cyksdCs9cyxuKyssdGhpcy5fcGluZ0luZm8uYXZnPXQvbixuPj0xMCYmdGhpcy5fcGluZ0ludGVydmFsSWQmJihjbGVhckludGVydmFsKHRoaXMuX3BpbmdJbnRlcnZhbElkKSxkZWxldGUgdGhpcy5fcGluZ0ludGVydmFsSWQpfTt0aGlzLl9waW5nSW50ZXJ2YWxJZD1zZXRJbnRlcnZhbCgoKCk9Pntjb25zdCB0PShuZXcgRGF0ZSkuZ2V0VGltZSgpLG49bmV3IFhNTEh0dHBSZXF1ZXN0O24ub3BlbigiR0VUIixlLCEwKSxuLnNlbmQoKSxuLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e24ucmVhZHlTdGF0ZT09PVhNTEh0dHBSZXF1ZXN0LkRPTkUmJjIwMD09PW4uc3RhdHVzJiZzKHQpfX0pLDFlNCl9fQpjb25zdCBDPSJ3aWRnZXRfdXNlcl90b2tlbi0iLHY9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKVt3aW5kb3cuVHJhZGluZ1ZpZXcmJndpbmRvdy5UcmFkaW5nVmlldy53aWRnZXRDdXN0b21lcnx8IiJdfHwiIixTPXYuc3RhcnRzV2l0aChDKT92LnN1YnN0cmluZygxOCk6InRyYWRpbmd2aWV3Igo7d2luZG93LldTQmFja2VuZENvbm5lY3Rpb249bmV3IFQod2luZG93LldFQlNPQ0tFVF9IT1NULHtwaW5nUmVxdWlyZWQ6d2luZG93LldTX0hPU1RfUElOR19SRVFVSVJFRCxwcm9Ib3N0OndpbmRvdy5XRUJTT0NLRVRfUFJPX0hPU1QscmVjb25uZWN0SG9zdDp3aW5kb3cuV0VCU09DS0VUX0hPU1RfRk9SX1JFQ09OTkVDVCxpbml0aWFsSG9zdDp3aW5kb3cuV0VCU09DS0VUX0lOSVRJQUxfSE9TVCxjb25uZWN0aW9uVHlwZTp3aW5kb3cuV0VCU09DS0VUX0NPTk5FQ1RJT05fVFlQRSxhcGlLZXk6U30pLHdpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uQ3Rvcj1UfSkoKTsKCTwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5PgoJPHNjcmlwdCBub25jZT0ibUgvT0NLQTBQVE0zWU1rdWdYdHpvUT09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgdD0xMDE5O3ZhciBlLHMsbyxhLGQ7IWZ1bmN0aW9uKHQpe3QuQWRhcHRpdmU9ImFkYXB0aXZlIix0LlJlZ3VsYXI9InJlZ3VsYXIiLHQuQ29tcGFjdD0iY29tcGFjdCJ9KGV8fChlPXt9KSksZnVuY3Rpb24odCl7dC5BbGxTeW1ib2xzPSJhbGxfc3ltYm9scyIsdC5NYXJrZXQ9Im1hcmtldCIsdC5TeW1ib2w9InN5bWJvbCJ9KHN8fChzPXt9KSksZnVuY3Rpb24odCl7dC5DcnlwdG9jdXJyZW5jaWVzPSJjcnlwdG8iLHQuQ3VycmVuY2llcz0iZm9yZXgiLHQuU3RvY2tzPSJzdG9jayIsdC5JbmRpY2VzPSJpbmRleCIsdC5GdXR1cmVzPSJmdXR1cmVzIix0LkJvbmRzPSJjZmQifShvfHwobz17fSkpLGZ1bmN0aW9uKHQpe3QuSFRNTD0iaHRtbCIsdC5SZWFjdD0icmVhY3QifShhfHwoYT17fSkpLGZ1bmN0aW9uKHQpe3QuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oZHx8KGQ9e30pKTtjb25zdCBjPXdpbmRvdztjLmluaXREYXRhPWMuaW5pdERhdGF8fHt9O2xldCBpPWMuaW5pdERhdGEuaGFzaFNldHRpbmdzO2lmKGMuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMmJihpPXsuLi5jLmluaXREYXRhLndpZGdldERlZmF1bHRzLC4uLml9KSx2b2lkIDAhPT1pKXtpZih2b2lkIDAhPT1pLmNvbG9yVGhlbWUmJmZ1bmN0aW9uKHQsZT13aW5kb3cpe2NvbnN0IHM9InRoZW1lLSIrdCxvPWUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdDtmb3IoY29uc3QgdCBvZiBBcnJheS5mcm9tKG8pKXQuc3RhcnRzV2l0aCgidGhlbWUtIikmJnQhPT1zJiZvLnJlbW92ZSh0KTtvLmFkZChzKSxlLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LnRoZW1lPXR9KGkuY29sb3JUaGVtZSksKGkuaXNUcmFuc3BhcmVudHx8aS50cmFuc3BhcmVuY3kpJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXMtdHJhbnNwYXJlbnQiKSx2b2lkIDAhPT1pLmRpc3BsYXlNb2RlJiZmdW5jdGlvbihzLG8pe2lmKG89PT1lLkFkYXB0aXZlKXtjb25zdCBlPXdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke3R9cHgpYCksbz0oKT0+e3MuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIiLCFlLm1hdGNoZXMpLHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLWNvbXBhY3QiLGUubWF0Y2hlcyl9O28oKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsbyl9ZWxzZSBzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIixvPT09ZS5SZWd1bGFyKSxzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1jb21wYWN0IixvPT09ZS5Db21wYWN0KX0oZG9jdW1lbnQuYm9keSxpLmRpc3BsYXlNb2RlKSxpLmJvZHlDbGFzc2VzKWZvcihjb25zdCB0IG9mIGkuYm9keUNsYXNzZXMpZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKHQpO2kuYm9keV9jbGFzcyYmZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKGkuYm9keV9jbGFzcyksaS5ib2R5SWQmJihkb2N1bWVudC5ib2R5LmlkPWkuYm9keUlkKX19KSgpOwoJPC9zY3JpcHQ+CgoJPGRpdiBpZD0id2lkZ2V0LW1hcmtldC1vdmVydmlldy1jb250YWluZXIiIGNsYXNzPSJqcy13YXRjaGxpc3Qtd2lkZ2V0Ij48L2Rpdj4KCjxzY3JpcHQgbm9uY2U9Im1IL09DS0EwUFRNM1lNa3VnWHR6b1E9PSI+Cgl3aW5kb3cuaW5pdERhdGEgPSB3aW5kb3cuaW5pdERhdGEgfHwge307CgoJd2luZG93LmluaXREYXRhLnNub3dwbG93U2V0dGluZ3MgPSB7CgkJY29sbGVjdG9ySWQ6ICd0dl9jZicsCgkJdXJsOiAnc25vd3Bsb3ctcGl4ZWwudHJhZGluZ3ZpZXcuY29tJywKCQlwYXJhbXM6IHsKCQkJYXBwSWQ6ICd0cmFkaW5ndmlldycsCgkJCXBvc3RQYXRoOiAnL2NvbS50cmFkaW5ndmlldy90cmFjaycsCgkJfSwKCQllbmFibGVkOiB0cnVlLAoJfQo8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4="}},"time_used":42,"timings":{"blocked":-1,"dns":10,"connect":2,"send":0,"wait":2,"receive":0,"ssl":24},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/img/cl16.png","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.354Z","timestamp":1785154589354,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/img/cl16.png HTTP/1.1\r\nHost: persimmontrades.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 12:16:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-length: 1415\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1415,"size_decoded":1680,"mime_type":"image/png","magic":"PNG image data, 145 x 48, 8-bit colormap, non-interlaced","md5":"ccb69599cfbb4e7e5ef17c5ed4c77efb","sha1":"4a61a00d0c1cdb35301ba2c49981c479d089e818","sha256":"2e325f2847b7098cb88e6e4c8cfa6785a8c638cb1e898160b71e8c0318d14fec","sha512":"6894477b130d26ef3b39624cfbe94c7eb76a91faa3cb38e08b9567d283b16b8e1920bf314a2f433a0037c5fccda3ab4a34d78b849ef938d3c1581262c52a6dca","ssdeep":"","tlshash":"3021fbffd23c4b4fcf796879d7168351e33163217566c50018771b4f5079364d241241","first_seen":"2025-07-30T23:06:04.055869Z","last_seen":"2026-07-27T12:17:29.197798Z","times_seen":6,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAJEAAAAwCAMAAAAmRmhaAAAAgVBMVEUAAAB0hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp50hp4sgW3FAAAAKnRSTlMABO+isQ/e0Mq+gE8K6dWZjxR5WyX0QOQthm5DN8S3YmkZHqszVTuTSXKKFujRAAAEi0lEQVRYw82Y2XarMAxFhQEzz5AQyhDI7P//wGtJ5ELu2KeE/QBelNC9rCOFFn7jSwSwKYLK35ZSUAXb2qVAfFHhCtgIJIRK1UaUUIi5bmOXWMgYDH1st6A0C1mVtRGlp5A7ettQ+ilkQ7gJpaIioZMWgk0ozUImCm1C6S7aRWit9KnpXYv7IvSitNOqHyCUzUoou2UrpWGfwftJrJWQHct4rWSa8HbOYlwJuaaRrJUysYN34+WvQgAvSscOFlIrmaNnMQ0gpV5hFI+WNQGSWdYDcosZ9YWLJWV/tL+5ReEvQq9KRrTaJEdJXuwUw0YHvfKwZ5XKARmUKsBSRKUfeePl90KZHAD6V6FFqesA8tOfjTxfU4LGkEoz6YVQDiC9qmw0wluOAGctc7vF+offwBA1gOdki9BKyUajqQr/aOQvr+YKyfFjSqFjppQFaATMUSnc6OBb020Xo1YSTy9CrDQ6dMW9/8fI1NVTSi6XqWivRjl8Fz/hJOzbWaj06lmplSn/LP2j0SnQZFjbSgmjV6oFMPYq5qKFZIS3XAFqvYVOM8KMkbunGhjb7zuzxJN3KwGxCiBy1bPQ3or47pM6ABF4f0s2F6NQKuEDQKpUDZnWBTQiPIo+Ys5OhXP150hlMn4U+dmWzrGwqjNo4pZV3U7cSSiHIynthMfxhnr/R6PI0eAzPL09vFEArVIHLNqFjfCWhKLWo5LkRDYnCCTMtbGXk0WDphqfXXYXBQkBKQVV8Ow4W/0zR5NSSgihWEMqyUXjHC1kj0jHjZfR6TlS3HR1ChR+TNmzEH7TH1CIlHyxm+NN9/zLKFdPeq7PFxbtxcieaPJhYRG/EgU0ZCfZUT7weFW4PcrA0lmUoTvVnB924S6S/zeKdaF8jd6CkUK817v1apTvA6CK8laI8hqVHt3jzHt0w+OFZKoM87ivKUOHOCG1VPoRXZEJ9pIyFqMqRUpt5OJigJayy7vzYEEsGhvRzSNoR2maurBX8tP3D1EUrnLkR3jq6UHcWI24UoYy92SAYTojZekc5RSUapUjZvfsNQuH4sANoIM8F9EENmLO8LXnFTfvuUoHUznPVw3/6J/1KW88UcPdgy7ghhQDZSjsvbHvbMrSIAaukLNML5Mpy3nRQGqa9tw3pplpf331yi1lMpN+7GB2XXIFpk36tMz54eHD6m8ThI3VH0YdJROSHIiB0wjGqbK4RxPsDH4yvJPCAx6Mt+jBe+q23G8inUeldYR3MlY2D0YMNuZdJFVBWavnUWmIEt5KV7AQwBSbBs6hNkqNm9QarHRx4L0MHUCU8Cx1o3jCfdPnkcMqALwG3gq9I15EQGGKo47/po0kRehLDPSO+WYa16BfrQ85jaLMtcKHdtSid3oNfzdGfAQchiQBN7nTgxv1fBybUMgQ3s4Vm6muBPe6P0/WMqpagEl8wQfIY3tyu3h+qZ145xLpOVPoHOAjmK5ueLvrw6WUJycDX3QnAz6CkRTYYviFxtieh8uLGcJHMUweQ/wKsA1SGtWTTLYiBJBHZ6j3PmyIQTSigU0RfPi/xj8AbpJwhfxd2OAAAAAASUVORK5CYII="}},"time_used":93,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":35,"receive":58,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.57291.7208384210f7c33bcce4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.209Z","timestamp":1785154590209,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.57291.7208384210f7c33bcce4.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a7-9d1\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:07 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:19:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6f1ae1bdcba24d1d2cbf767fd6f5d396\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":2513,"size_decoded":1834,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (2511), with no line terminators","md5":"df08a1dd70ffac4f28fcc3d7dbbe08a4","sha1":"7ccdbd9c3c329f4aa7c79c73e2bb3943ea45ebef","sha256":"db9d406f4660f93fca8338121e3f490d121c0d8c145adf7b5255109dd254fc22","sha512":"ddbd2ec7971bce16527fb401f1a3a6162efc2a827a9684ba05c3c7a2453eac89da95cba33f9f32fce00d8e36547421b0446718bda2cf81251f62240f8a342978","ssdeep":"","tlshash":"3d512127d020d5f22f73ca08b792edd675f072a111f2e8da7b4a6f65c25bc5018395b4","first_seen":"2026-07-23T13:38:20.437954Z","last_seen":"2026-07-27T14:18:36.36027Z","times_seen":1166,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwzNzg2NSw0MDI0MCw0NzAzMCw1NzE4NCw1NzI5MSw5NDM4OF0sezU1ODQxMihlKXtlLmV4cG9ydHM9WyIlIG9mIEdEUCJdfSw0Njg0NjAoZSl7ZS5leHBvcnRzPVsiJSBvZiBwYXIiXX0sNDQ1MDUoZSl7ZS5leHBvcnRzPVsiRGlzYy4geWllbGQsICUiXX0sODU5OTk0KGUpe2UuZXhwb3J0cz1bIkMiXX0sODkyMzYzKGUpe2UuZXhwb3J0cz1bIkQiXX0sMzk0NTAxKGUpe2UuZXhwb3J0cz1bIkQiXX0sNTcwOTM5KGUpe2UuZXhwb3J0cz1bIkUiXX0sMzk0OTIxKGUpe2UuZXhwb3J0cz1bIkYiXX0sODY2NDQoZSl7ZS5leHBvcnRzPVsiUiJdfSw3NTY0NTcoZSl7ZS5leHBvcnRzPVsiUiJdfSwyNTczMjYoZSl7ZS5leHBvcnRzPVsiUyJdfSw1NTIxNShlKXtlLmV4cG9ydHM9WyJEZWxpc3RlZCJdfSw2ODUxMDQoZSl7ZS5leHBvcnRzPVsiSG9saWRheSJdfSw2Mzg0MDUoZSl7ZS5leHBvcnRzPVsiSW52YWxpZCBzeW1ib2wiXX0sODk3NTkxKGUpe2UuZXhwb3J0cz1bIk92ZXJuaWdodCB2aWEgQk9BVFMiXX0sMjc0NDE1KGUpe2UuZXhwb3J0cz1bIkxvYWRpbmciXX0sNzAyNzg4KGUpe2UuZXhwb3J0cz1bIk1hcmtldCBvcGVuIl19LDkxNDU3MihlKXtlLmV4cG9ydHM9WyJNYXJrZXQgY2xvc2VkIl19LDg2NzQ1NShlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCJdfSw5MTg4NDIoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCJdfSwzODQ1OTcoZSl7ZS5leHBvcnRzPVsiQ0ZEIl19LDY1NTIzNShlKXtlLmV4cG9ydHM9WyJDcnlwdG8iXX0sMzUwMTQ2KGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw3NjU0NDAoZSl7ZS5leHBvcnRzPVsiQm9uZHMiXX0sNTQ4MzIyKGUpe2UuZXhwb3J0cz1bIkVjb25vbXkiXX0sOTc5OTcoZSl7ZS5leHBvcnRzPVsiRm9yZXgiXX0sNTA1MDc5KGUpe2UuZXhwb3J0cz1bIkZ1dHVyZXMiXX0sNTY0OTE3KGUpe2UuZXhwb3J0cz1bIkZ1bmRzIl19LDkyNzQxMShlKXtlLmV4cG9ydHM9WyJJbmRpY2VzIl19LDc5NjAwKGUpe2UuZXhwb3J0cz1bIk9wdGlvbnMiXX0sNTU1NTEwKGUpe2UuZXhwb3J0cz1bIlN0b2NrcyJdfSw1NzA2MihlKXtlLmV4cG9ydHM9WyJOL0EiXX0sMTExOTc2KGUpe2UuZXhwb3J0cz1bIjEgeWVhciJdfSwzMjgwMzAoZSl7ZS5leHBvcnRzPVsiMyBtb250aHMiXX0sMTk0MTk0KGUpe2UuZXhwb3J0cz1bIkNvbm5lY3RpbmciXX0sODY4ODEwKGUpe2UuZXhwb3J0cz1bIkJpbGxlZCBldmVyeSBtb250aC4iXX0sOTEzOTU1KGUpe2UuZXhwb3J0cz1bIkJpbGxlZCBldmVyeSB5ZWFyLiJdfSwyMjk1MjUoZSl7ZS5leHBvcnRzPVsiRGVsYXllZCJdfSw2MDE3NjQoZSl7ZS5leHBvcnRzPVsiRW5kIG9mIERheSJdfSw5Njg4MTUoZSl7ZS5leHBvcnRzPVsiRnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSwzMjgzMTMoZSl7ZS5leHBvcnRzPVsiSW5zdHJ1bWVudCBpcyBub3QgYWxsb3dlZCJdfSw1NjIzOTUoZSl7ZS5leHBvcnRzPVsiU25hcHNob3QiXX0sODUwMjk4KGUpe2UuZXhwb3J0cz1bIlNlY29uZCBmcmFjdGlvbiBwYXJ0IGlzIGludmFsaWQuIl19LDk5MjM2MihlKXtlLmV4cG9ydHM9WyJTdHVkaWVzIGxpbWl0IGV4Y2VlZGVkOiB7bnVtYmVyfSBzdHVkaWVzIHBlciBsYXlvdXQuXG5QbGVhc2UsIHJlbW92ZSBzb21lIHN0dWRpZXMuIl19LDYxNjE4KGUpe2UuZXhwb3J0cz1bIlByaWNlIGZvcm1hdCBpcyBpbnZhbGlkLiJdfSw4MTQ2MShlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIl19LDc5MDUyNChlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIGFuZCB1cGRhdGVkIGV2ZXJ5IDMwIHNlY29uZHMiXX0sODgzOTI4KGUpe2UuZXhwb3J0cz1bIlJlYWwtdGltZSJdfSw5NzcyNyhlKXtlLmV4cG9ydHM9WyJSZXBsYXkgTW9kZSJdfSw5MzcwMTcoZSl7ZS5leHBvcnRzPVsiV2FybmluZyJdfSw3ODg0NDQoZSl7ZS5leHBvcnRzPVsiVGhpcyBzeW1ib2wgaXMgb25seSBhdmFpbGFibGUgb24gVHJhZGluZ1ZpZXciXX0sNTE3ODU5KGUpe2UuZXhwb3J0cz1bIlZpc2l0IFRyYWRpbmdWaWV3IOKAlCBmaW5hbmNpYWwgY2hhcnRpbmcgcGxhdGZvcm0gYW5kIHRyYWRpbmcgY29tbXVuaXR5Il19LDcyMTExOChlKXtlLmV4cG9ydHM9WyJhbm51YWxseSJdfSw2NTM2OShlKXtlLmV4cG9ydHM9WyJiaWxsZWQgbW9udGhseSJdfSwyNjAxOTMoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIGFubnVhbGx5Il19LDU1NjU2OChlKXtlLmV4cG9ydHM9WyJtb250aGx5Il19LDg2Mzg1MihlKXtlLmV4cG9ydHM9WyJ0aHJlZSBtb250aHMiXX0sODM1OChlKXtlLmV4cG9ydHM9WyJ0cmlhbCJdfSwxNTM3NjYoZSl7ZS5leHBvcnRzPVsie3Byb1BsYW5OYW1lfSBUcmlhbCJdfSwzMjM0ODUoZSl7ZS5leHBvcnRzPVsibW9udGgiLCJtb250aHMiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.542Z","timestamp":1785154590542,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32387.47ace83c61a884341cd6.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-205c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1bdcc4bcb7a1a1b8b0de059e1dc9f00e\r\ncdn-cache: HIT\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":132552,"size_decoded":45612,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-27T14:17:30.792424Z","times_seen":2594,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMzIzODddLHs1MzIzODcoZSxuLHQpe3ZhciByPXQoNzc5NDc0KSxsPXQoMTgyNjE0KTtmdW5jdGlvbiBhKGUpe2Zvcih2YXIgbj0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKW4rPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1t0XSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIituKyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIHU9bmV3IFNldCxvPXt9O2Z1bmN0aW9uIGkoZSxuKXtzKGUsbikscyhlKyJDYXB0dXJlIixuKX1mdW5jdGlvbiBzKGUsbil7Zm9yKG9bZV09bixlPTA7ZTxuLmxlbmd0aDtlKyspdS5hZGQobltlXSl9dmFyIGM9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksZj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LGQ9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxwPXt9LG09e307ZnVuY3Rpb24gaChlLG4sdCxyLGwsYSx1KXt0aGlzLmFjY2VwdHNCb29sZWFucz0yPT09bnx8Mz09PW58fDQ9PT1uLHRoaXMuYXR0cmlidXRlTmFtZT1yLHRoaXMuYXR0cmlidXRlTmFtZXNwYWNlPWwsdGhpcy5tdXN0VXNlUHJvcGVydHk9dCx0aGlzLnByb3BlcnR5TmFtZT1lLHRoaXMudHlwZT1uLHRoaXMuc2FuaXRpemVVUkw9YSx0aGlzLnJlbW92ZUVtcHR5U3RyaW5nPXV9dmFyIGc9e307ImNoaWxkcmVuIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIGRlZmF1bHRWYWx1ZSBkZWZhdWx0Q2hlY2tlZCBpbm5lckhUTUwgc3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZyBzdHlsZSIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMCwhMSxlLG51bGwsITEsITEpfSkpLFtbImFjY2VwdENoYXJzZXQiLCJhY2NlcHQtY2hhcnNldCJdLFsiY2xhc3NOYW1lIiwiY2xhc3MiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXV0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZVswXTtnW25dPW5ldyBoKG4sMSwhMSxlWzFdLG51bGwsITEsITEpfSkpLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDIsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiYXV0b1JldmVyc2UiLCJleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIiwiZm9jdXNhYmxlIiwicHJlc2VydmVBbHBoYSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwyLCExLGUsbnVsbCwhMSwhMSl9KSksImFsbG93RnVsbFNjcmVlbiBhc3luYyBhdXRvRm9jdXMgYXV0b1BsYXkgY29udHJvbHMgZGVmYXVsdCBkZWZlciBkaXNhYmxlZCBkaXNhYmxlUGljdHVyZUluUGljdHVyZSBkaXNhYmxlUmVtb3RlUGxheWJhY2sgZm9ybU5vVmFsaWRhdGUgaGlkZGVuIGxvb3Agbm9Nb2R1bGUgbm9WYWxpZGF0ZSBvcGVuIHBsYXlzSW5saW5lIHJlYWRPbmx5IHJlcXVpcmVkIHJldmVyc2VkIHNjb3BlZCBzZWFtbGVzcyBpdGVtU2NvcGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDMsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwzLCEwLGUsbnVsbCwhMSwhMSl9KSksWyJjYXB0dXJlIiwiZG93bmxvYWQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNCwhMSxlLG51bGwsITEsITEpfSkpLFsiY29scyIsInJvd3MiLCJzaXplIiwic3BhbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSw2LCExLGUsbnVsbCwhMSwhMSl9KSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSk7dmFyIHY9L1tcLTpdKFthLXpdKS9nO2Z1bmN0aW9uIHkoZSl7cmV0dXJuIGVbMV0udG9VcHBlckNhc2UoKX1mdW5jdGlvbiBiKGUsbix0LHIpe3ZhciBsPWcuaGFzT3duUHJvcGVydHkobik/Z1tuXTpudWxsOyhudWxsIT09bD8wIT09bC50eXBlOnJ8fCEoMjxuLmxlbmd0aCl8fCJvIiE9PW5bMF0mJiJPIiE9PW5bMF18fCJuIiE9PW5bMV0mJiJOIiE9PW5bMV0pJiYoZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbD09bnx8ZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbCE9PXQmJjA9PT10LnR5cGUpcmV0dXJuITE7c3dpdGNoKHR5cGVvZiBuKXtjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6cmV0dXJuITA7Y2FzZSJib29sZWFuIjpyZXR1cm4hciYmKG51bGwhPT10PyF0LmFjY2VwdHNCb29sZWFuczoiZGF0YS0iIT09KGU9ZS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSkpJiYiYXJpYS0iIT09ZSk7ZGVmYXVsdDpyZXR1cm4hMX19KGUsbix0LHIpKXJldHVybiEwCjtpZihyKXJldHVybiExO2lmKG51bGwhPT10KXN3aXRjaCh0LnR5cGUpe2Nhc2UgMzpyZXR1cm4hbjtjYXNlIDQ6cmV0dXJuITE9PT1uO2Nhc2UgNTpyZXR1cm4gaXNOYU4obik7Y2FzZSA2OnJldHVybiBpc05hTihuKXx8MT5ufXJldHVybiExfShuLHQsbCxyKSYmKHQ9bnVsbCkscnx8bnVsbD09PWw/ZnVuY3Rpb24oZSl7cmV0dXJuISFmLmNhbGwobSxlKXx8IWYuY2FsbChwLGUpJiYoZC50ZXN0KGUpP21bZV09ITA6KHBbZV09ITAsITEpKX0obikmJihudWxsPT09dD9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLCIiK3QpKTpsLm11c3RVc2VQcm9wZXJ0eT9lW2wucHJvcGVydHlOYW1lXT1udWxsPT09dD8zIT09bC50eXBlJiYiIjp0OihuPWwuYXR0cmlidXRlTmFtZSxyPWwuYXR0cmlidXRlTmFtZXNwYWNlLG51bGw9PT10P2UucmVtb3ZlQXR0cmlidXRlKG4pOih0PTM9PT0obD1sLnR5cGUpfHw0PT09bCYmITA9PT10PyIiOiIiK3Qscj9lLnNldEF0dHJpYnV0ZU5TKHIsbix0KTplLnNldEF0dHJpYnV0ZShuLHQpKSkpfSJhY2NlbnQtaGVpZ2h0IGFsaWdubWVudC1iYXNlbGluZSBhcmFiaWMtZm9ybSBiYXNlbGluZS1zaGlmdCBjYXAtaGVpZ2h0IGNsaXAtcGF0aCBjbGlwLXJ1bGUgY29sb3ItaW50ZXJwb2xhdGlvbiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnMgY29sb3ItcHJvZmlsZSBjb2xvci1yZW5kZXJpbmcgZG9taW5hbnQtYmFzZWxpbmUgZW5hYmxlLWJhY2tncm91bmQgZmlsbC1vcGFjaXR5IGZpbGwtcnVsZSBmbG9vZC1jb2xvciBmbG9vZC1vcGFjaXR5IGZvbnQtZmFtaWx5IGZvbnQtc2l6ZSBmb250LXNpemUtYWRqdXN0IGZvbnQtc3RyZXRjaCBmb250LXN0eWxlIGZvbnQtdmFyaWFudCBmb250LXdlaWdodCBnbHlwaC1uYW1lIGdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwgZ2x5cGgtb3JpZW50YXRpb24tdmVydGljYWwgaG9yaXotYWR2LXggaG9yaXotb3JpZ2luLXggaW1hZ2UtcmVuZGVyaW5nIGxldHRlci1zcGFjaW5nIGxpZ2h0aW5nLWNvbG9yIG1hcmtlci1lbmQgbWFya2VyLW1pZCBtYXJrZXItc3RhcnQgb3ZlcmxpbmUtcG9zaXRpb24gb3ZlcmxpbmUtdGhpY2tuZXNzIHBhaW50LW9yZGVyIHBhbm9zZS0xIHBvaW50ZXItZXZlbnRzIHJlbmRlcmluZy1pbnRlbnQgc2hhcGUtcmVuZGVyaW5nIHN0b3AtY29sb3Igc3RvcC1vcGFjaXR5IHN0cmlrZXRocm91Z2gtcG9zaXRpb24gc3RyaWtldGhyb3VnaC10aGlja25lc3Mgc3Ryb2tlLWRhc2hhcnJheSBzdHJva2UtZGFzaG9mZnNldCBzdHJva2UtbGluZWNhcCBzdHJva2UtbGluZWpvaW4gc3Ryb2tlLW1pdGVybGltaXQgc3Ryb2tlLW9wYWNpdHkgc3Ryb2tlLXdpZHRoIHRleHQtYW5jaG9yIHRleHQtZGVjb3JhdGlvbiB0ZXh0LXJlbmRlcmluZyB1bmRlcmxpbmUtcG9zaXRpb24gdW5kZXJsaW5lLXRoaWNrbmVzcyB1bmljb2RlLWJpZGkgdW5pY29kZS1yYW5nZSB1bml0cy1wZXItZW0gdi1hbHBoYWJldGljIHYtaGFuZ2luZyB2LWlkZW9ncmFwaGljIHYtbWF0aGVtYXRpY2FsIHZlY3Rvci1lZmZlY3QgdmVydC1hZHYteSB2ZXJ0LW9yaWdpbi14IHZlcnQtb3JpZ2luLXkgd29yZC1zcGFjaW5nIHdyaXRpbmctbW9kZSB4bWxuczp4bGluayB4LWhlaWdodCIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2Uodix5KTtnW25dPW5ldyBoKG4sMSwhMSxlLG51bGwsITEsITEpfSkpLCJ4bGluazphY3R1YXRlIHhsaW5rOmFyY3JvbGUgeGxpbms6cm9sZSB4bGluazpzaG93IHhsaW5rOnRpdGxlIHhsaW5rOnR5cGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHYseSk7Z1tuXT1uZXcgaChuLDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITEsITEpfSkpLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPWUucmVwbGFjZSh2LHkpO2dbbl09bmV3IGgobiwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsITEsITEpfSkpLFsidGFiSW5kZXgiLCJjcm9zc09yaWdpbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pKSxnLnhsaW5rSHJlZj1uZXcgaCgieGxpbmtIcmVmIiwxLCExLCJ4bGluazpocmVmIiwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITAsITEpLFsic3JjIiwiaHJlZiIsImFjdGlvbiIsImZvcm1BY3Rpb24iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMCwhMCl9KSk7dmFyIGs9ci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCx3PVN5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKSxTPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLHg9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxFPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksQz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxOPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxfPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksUD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLFQ9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEw9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLE09U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIiksU3ltYm9sLmZvcigicmVhY3QuZGVidWdfdHJhY2VfbW9kZSIpO3ZhciBGPVN5bWJvbC5mb3IoInJlYWN0Lm9mZnNjcmVlbiIpO1N5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIik7dmFyIFI9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEQoZSl7CnJldHVybiBudWxsPT09ZXx8Im9iamVjdCIhPXR5cGVvZiBlP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKGU9UiYmZVtSXXx8ZVsiQEBpdGVyYXRvciJdKT9lOm51bGx9dmFyIEksTz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIFUoZSl7aWYodm9pZCAwPT09SSl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgbj1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7ST1uJiZuWzFdfHwiIn1yZXR1cm4iXG4iK0krZX12YXIgVj0hMTtmdW5jdGlvbiBBKGUsbil7aWYoIWV8fFYpcmV0dXJuIiI7Vj0hMDt2YXIgdD1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e2lmKG4paWYobj1mdW5jdGlvbigpe3Rocm93IEVycm9yKCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLnByb3RvdHlwZSwicHJvcHMiLHtzZXQ6ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfX0pLCJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5jb25zdHJ1Y3Qpe3RyeXtSZWZsZWN0LmNvbnN0cnVjdChuLFtdKX1jYXRjaChlKXt2YXIgcj1lfVJlZmxlY3QuY29uc3RydWN0KGUsW10sbil9ZWxzZXt0cnl7bi5jYWxsKCl9Y2F0Y2goZSl7cj1lfWUuY2FsbChuLnByb3RvdHlwZSl9ZWxzZXt0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXtyPWV9ZSgpfX1jYXRjaChuKXtpZihuJiZyJiYic3RyaW5nIj09dHlwZW9mIG4uc3RhY2spe2Zvcih2YXIgbD1uLnN0YWNrLnNwbGl0KCJcbiIpLGE9ci5zdGFjay5zcGxpdCgiXG4iKSx1PWwubGVuZ3RoLTEsbz1hLmxlbmd0aC0xOzE8PXUmJjA8PW8mJmxbdV0hPT1hW29dOylvLS07Zm9yKDsxPD11JiYwPD1vO3UtLSxvLS0paWYobFt1XSE9PWFbb10pe2lmKDEhPT11fHwxIT09bylkb3tpZih1LS0sMD4tLW98fGxbdV0hPT1hW29dKXt2YXIgaT0iXG4iK2xbdV0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIik7cmV0dXJuIGUuZGlzcGxheU5hbWUmJmkuaW5jbHVkZXMoIjxhbm9ueW1vdXM+IikmJihpPWkucmVwbGFjZSgiPGFub255bW91cz4iLGUuZGlzcGxheU5hbWUpKSxpfX13aGlsZSgxPD11JiYwPD1vKTticmVha319fWZpbmFsbHl7Vj0hMSxFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT10fXJldHVybihlPWU/ZS5kaXNwbGF5TmFtZXx8ZS5uYW1lOiIiKT9VKGUpOiIifWZ1bmN0aW9uIEIoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDU6cmV0dXJuIFUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBVKCJMYXp5Iik7Y2FzZSAxMzpyZXR1cm4gVSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBVKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9QShlLnR5cGUsITEpO2Nhc2UgMTE6cmV0dXJuIGU9QShlLnR5cGUucmVuZGVyLCExKTtjYXNlIDE6cmV0dXJuIGU9QShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fWZ1bmN0aW9uIFcoZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTtzd2l0Y2goZSl7Y2FzZSB4OnJldHVybiJGcmFnbWVudCI7Y2FzZSBTOnJldHVybiJQb3J0YWwiO2Nhc2UgQzpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgRTpyZXR1cm4iU3RyaWN0TW9kZSI7Y2FzZSBQOnJldHVybiJTdXNwZW5zZSI7Y2FzZSBUOnJldHVybiJTdXNwZW5zZUxpc3QifWlmKCJvYmplY3QiPT10eXBlb2YgZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBOOnJldHVybihlLmRpc3BsYXlOYW1lfHwiQ29udGV4dCIpKyIuQ29uc3VtZXIiO2Nhc2UgejpyZXR1cm4oZS5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIF86dmFyIG49ZS5yZW5kZXI7cmV0dXJuKGU9ZS5kaXNwbGF5TmFtZSl8fChlPSIiIT09KGU9bi5kaXNwbGF5TmFtZXx8bi5uYW1lfHwiIik/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpLGU7Y2FzZSBMOnJldHVybiBudWxsIT09KG49ZS5kaXNwbGF5TmFtZXx8bnVsbCk/bjpXKGUudHlwZSl8fCJNZW1vIjtjYXNlIE06bj1lLl9wYXlsb2FkLGU9ZS5faW5pdDt0cnl7cmV0dXJuIFcoZShuKSl9Y2F0Y2goZSl7fX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBIKGUpe3ZhciBuPWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKG4uZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4obi5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9bi5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLG4uZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gbjtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIFcobik7Y2FzZSA4OnJldHVybiBuPT09RT8iU3RyaWN0TW9kZSI6Ik1vZGUiO2Nhc2UgMjI6cmV0dXJuIk9mZnNjcmVlbiI7Y2FzZSAxMjpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgMjE6cmV0dXJuIlNjb3BlIjtjYXNlIDEzOnJldHVybiJTdXNwZW5zZSI7Y2FzZSAxOTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIDI1OnJldHVybiJUcmFjaW5nTWFya2VyIjtjYXNlIDE6Y2FzZSAwOmNhc2UgMTc6Y2FzZSAyOmNhc2UgMTQ6Y2FzZSAxNTppZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm4gbi5kaXNwbGF5TmFtZXx8bi5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgbilyZXR1cm4gbn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBRKGUpe3N3aXRjaCh0eXBlb2YgZSl7Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gaihlKXt2YXIgbj1lLnR5cGUKO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW58fCJyYWRpbyI9PT1uKX1mdW5jdGlvbiAkKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgbj1qKGUpPyJjaGVja2VkIjoidmFsdWUiLHQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLmNvbnN0cnVjdG9yLnByb3RvdHlwZSxuKSxyPSIiK2Vbbl07aWYoIWUuaGFzT3duUHJvcGVydHkobikmJnZvaWQgMCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuc2V0KXt2YXIgbD10LmdldCxhPXQuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe3I9IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOnQuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiByfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtyPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW25dfX19fShlKSl9ZnVuY3Rpb24gcShlKXtpZighZSlyZXR1cm4hMTt2YXIgbj1lLl92YWx1ZVRyYWNrZXI7aWYoIW4pcmV0dXJuITA7dmFyIHQ9bi5nZXRWYWx1ZSgpLHI9IiI7cmV0dXJuIGUmJihyPWooZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09dCYmKG4uc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIEsoZSl7aWYodm9pZCAwPT09KGU9ZXx8KCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQ/ZG9jdW1lbnQ6dm9pZCAwKSkpcmV0dXJuIG51bGw7dHJ5e3JldHVybiBlLmFjdGl2ZUVsZW1lbnR8fGUuYm9keX1jYXRjaChuKXtyZXR1cm4gZS5ib2R5fX1mdW5jdGlvbiBZKGUsbil7dmFyIHQ9bi5jaGVja2VkO3JldHVybiBPKHt9LG4se2RlZmF1bHRDaGVja2VkOnZvaWQgMCxkZWZhdWx0VmFsdWU6dm9pZCAwLHZhbHVlOnZvaWQgMCxjaGVja2VkOm51bGwhPXQ/dDplLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWR9KX1mdW5jdGlvbiBYKGUsbil7dmFyIHQ9bnVsbD09bi5kZWZhdWx0VmFsdWU/IiI6bi5kZWZhdWx0VmFsdWUscj1udWxsIT1uLmNoZWNrZWQ/bi5jaGVja2VkOm4uZGVmYXVsdENoZWNrZWQ7dD1RKG51bGwhPW4udmFsdWU/bi52YWx1ZTp0KSxlLl93cmFwcGVyU3RhdGU9e2luaXRpYWxDaGVja2VkOnIsaW5pdGlhbFZhbHVlOnQsY29udHJvbGxlZDoiY2hlY2tib3giPT09bi50eXBlfHwicmFkaW8iPT09bi50eXBlP251bGwhPW4uY2hlY2tlZDpudWxsIT1uLnZhbHVlfX1mdW5jdGlvbiBHKGUsbil7bnVsbCE9KG49bi5jaGVja2VkKSYmYihlLCJjaGVja2VkIixuLCExKX1mdW5jdGlvbiBaKGUsbil7RyhlLG4pO3ZhciB0PVEobi52YWx1ZSkscj1uLnR5cGU7aWYobnVsbCE9dCkibnVtYmVyIj09PXI/KDA9PT10JiYiIj09PWUudmFsdWV8fGUudmFsdWUhPXQpJiYoZS52YWx1ZT0iIit0KTplLnZhbHVlIT09IiIrdCYmKGUudmFsdWU9IiIrdCk7ZWxzZSBpZigic3VibWl0Ij09PXJ8fCJyZXNldCI9PT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpO24uaGFzT3duUHJvcGVydHkoInZhbHVlIik/ZWUoZSxuLnR5cGUsdCk6bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikmJmVlKGUsbi50eXBlLFEobi5kZWZhdWx0VmFsdWUpKSxudWxsPT1uLmNoZWNrZWQmJm51bGwhPW4uZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhbi5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gSihlLG4sdCl7aWYobi5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKXx8bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikpe3ZhciByPW4udHlwZTtpZighKCJzdWJtaXQiIT09ciYmInJlc2V0IiE9PXJ8fHZvaWQgMCE9PW4udmFsdWUmJm51bGwhPT1uLnZhbHVlKSlyZXR1cm47bj0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlLHR8fG49PT1lLnZhbHVlfHwoZS52YWx1ZT1uKSxlLmRlZmF1bHRWYWx1ZT1ufSIiIT09KHQ9ZS5uYW1lKSYmKGUubmFtZT0iIiksZS5kZWZhdWx0Q2hlY2tlZD0hIWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZCwiIiE9PXQmJihlLm5hbWU9dCl9ZnVuY3Rpb24gZWUoZSxuLHQpeyJudW1iZXIiPT09biYmSyhlLm93bmVyRG9jdW1lbnQpPT09ZXx8KG51bGw9PXQ/ZS5kZWZhdWx0VmFsdWU9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZTplLmRlZmF1bHRWYWx1ZSE9PSIiK3QmJihlLmRlZmF1bHRWYWx1ZT0iIit0KSl9dmFyIG5lPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gdGUoZSxuLHQscil7aWYoZT1lLm9wdGlvbnMsbil7bj17fTtmb3IodmFyIGw9MDtsPHQubGVuZ3RoO2wrKyluWyIkIit0W2xdXT0hMDtmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKWw9bi5oYXNPd25Qcm9wZXJ0eSgiJCIrZVt0XS52YWx1ZSksZVt0XS5zZWxlY3RlZCE9PWwmJihlW3RdLnNlbGVjdGVkPWwpLGwmJnImJihlW3RdLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IodD0iIitRKHQpLG49bnVsbCxsPTA7bDxlLmxlbmd0aDtsKyspe2lmKGVbbF0udmFsdWU9PT10KXJldHVybiBlW2xdLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbbF0uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PW58fGVbbF0uZGlzYWJsZWR8fChuPWVbbF0pfW51bGwhPT1uJiYobi5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIHJlKGUsbil7aWYobnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihhKDkxKSk7cmV0dXJuIE8oe30sbix7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIGxlKGUsbil7dmFyIHQ9bi52YWx1ZTtpZihudWxsPT10KXtpZih0PW4uY2hpbGRyZW4sbj1uLmRlZmF1bHRWYWx1ZSxudWxsIT10KXtpZihudWxsIT1uKXRocm93IEVycm9yKGEoOTIpKTtpZihuZSh0KSl7CmlmKDE8dC5sZW5ndGgpdGhyb3cgRXJyb3IoYSg5MykpO3Q9dFswXX1uPXR9bnVsbD09biYmKG49IiIpLHQ9bn1lLl93cmFwcGVyU3RhdGU9e2luaXRpYWxWYWx1ZTpRKHQpfX1mdW5jdGlvbiBhZShlLG4pe3ZhciB0PVEobi52YWx1ZSkscj1RKG4uZGVmYXVsdFZhbHVlKTtudWxsIT10JiYoKHQ9IiIrdCkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uLmRlZmF1bHRWYWx1ZSYmZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCkpLG51bGwhPXImJihlLmRlZmF1bHRWYWx1ZT0iIityKX1mdW5jdGlvbiB1ZShlKXt2YXIgbj1lLnRleHRDb250ZW50O249PT1lLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlJiYiIiE9PW4mJm51bGwhPT1uJiYoZS52YWx1ZT1uKX1mdW5jdGlvbiBvZShlKXtzd2l0Y2goZSl7Y2FzZSJzdmciOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI7Y2FzZSJtYXRoIjpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI7ZGVmYXVsdDpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCJ9fWZ1bmN0aW9uIGllKGUsbil7cmV0dXJuIG51bGw9PWV8fCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/b2Uobik6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWUmJiJmb3JlaWduT2JqZWN0Ij09PW4/Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiOmV9dmFyIHNlLGNlLGZlPShjZT1mdW5jdGlvbihlLG4pe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPW47ZWxzZXtmb3IoKHNlPXNlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrbi52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+IixuPXNlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDtuLmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQobi5maXJzdENoaWxkKX19LCJ1bmRlZmluZWQiIT10eXBlb2YgTVNBcHAmJk1TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uP2Z1bmN0aW9uKGUsbix0LHIpe01TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uKChmdW5jdGlvbigpe3JldHVybiBjZShlLG4pfSkpfTpjZSk7ZnVuY3Rpb24gZGUoZSxuKXtpZihuKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7aWYodCYmdD09PWUubGFzdENoaWxkJiYzPT09dC5ub2RlVHlwZSlyZXR1cm4gdm9pZCh0Lm5vZGVWYWx1ZT1uKX1lLnRleHRDb250ZW50PW59dmFyIHBlPXthbmltYXRpb25JdGVyYXRpb25Db3VudDohMCxhc3BlY3RSYXRpbzohMCxib3JkZXJJbWFnZU91dHNldDohMCxib3JkZXJJbWFnZVNsaWNlOiEwLGJvcmRlckltYWdlV2lkdGg6ITAsYm94RmxleDohMCxib3hGbGV4R3JvdXA6ITAsYm94T3JkaW5hbEdyb3VwOiEwLGNvbHVtbkNvdW50OiEwLGNvbHVtbnM6ITAsZmxleDohMCxmbGV4R3JvdzohMCxmbGV4UG9zaXRpdmU6ITAsZmxleFNocmluazohMCxmbGV4TmVnYXRpdmU6ITAsZmxleE9yZGVyOiEwLGdyaWRBcmVhOiEwLGdyaWRSb3c6ITAsZ3JpZFJvd0VuZDohMCxncmlkUm93U3BhbjohMCxncmlkUm93U3RhcnQ6ITAsZ3JpZENvbHVtbjohMCxncmlkQ29sdW1uRW5kOiEwLGdyaWRDb2x1bW5TcGFuOiEwLGdyaWRDb2x1bW5TdGFydDohMCxmb250V2VpZ2h0OiEwLGxpbmVDbGFtcDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx0YWJTaXplOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMCxmaWxsT3BhY2l0eTohMCxmbG9vZE9wYWNpdHk6ITAsc3RvcE9wYWNpdHk6ITAsc3Ryb2tlRGFzaGFycmF5OiEwLHN0cm9rZURhc2hvZmZzZXQ6ITAsc3Ryb2tlTWl0ZXJsaW1pdDohMCxzdHJva2VPcGFjaXR5OiEwLHN0cm9rZVdpZHRoOiEwfSxtZT1bIldlYmtpdCIsIm1zIiwiTW96IiwiTyJdO2Z1bmN0aW9uIGhlKGUsbix0KXtyZXR1cm4gbnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbnx8IiI9PT1uPyIiOnR8fCJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHBlLmhhc093blByb3BlcnR5KGUpJiZwZVtlXT8oIiIrbikudHJpbSgpOm4rInB4In1mdW5jdGlvbiBnZShlLG4pe2Zvcih2YXIgdCBpbiBlPWUuc3R5bGUsbilpZihuLmhhc093blByb3BlcnR5KHQpKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpLGw9aGUodCxuW3RdLHIpOyJmbG9hdCI9PT10JiYodD0iY3NzRmxvYXQiKSxyP2Uuc2V0UHJvcGVydHkodCxsKTplW3RdPWx9fU9iamVjdC5rZXlzKHBlKS5mb3JFYWNoKChmdW5jdGlvbihlKXttZS5mb3JFYWNoKChmdW5jdGlvbihuKXtuPW4rZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStlLnN1YnN0cmluZygxKSxwZVtuXT1wZVtlXX0pKX0pKTt2YXIgdmU9Tyh7bWVudWl0ZW06ITB9LHthcmVhOiEwLGJhc2U6ITAsYnI6ITAsY29sOiEwLGVtYmVkOiEwLGhyOiEwLGltZzohMCxpbnB1dDohMCxrZXlnZW46ITAsbGluazohMCxtZXRhOiEwLHBhcmFtOiEwLHNvdXJjZTohMCx0cmFjazohMCx3YnI6ITB9KTtmdW5jdGlvbiB5ZShlLG4pe2lmKG4pe2lmKHZlW2VdJiYobnVsbCE9bi5jaGlsZHJlbnx8bnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCkpdGhyb3cgRXJyb3IoYSgxMzcsZSkpO2lmKG51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpe2lmKG51bGwhPW4uY2hpbGRyZW4pdGhyb3cgRXJyb3IoYSg2MCkpO2lmKCJvYmplY3QiIT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTHx8ISgiX19odG1sImluIG4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKGEoNjEpKX1pZihudWxsIT1uLnN0eWxlJiYib2JqZWN0IiE9dHlwZW9mIG4uc3R5bGUpdGhyb3cgRXJyb3IoYSg2MikpfX1mdW5jdGlvbiBiZShlLG4pe2lmKC0xPT09ZS5pbmRleE9mKCItIikpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLmlzO3N3aXRjaChlKXtjYXNlImFubm90YXRpb24teG1sIjpjYXNlImNvbG9yLXByb2ZpbGUiOmNhc2UiZm9udC1mYWNlIjpjYXNlImZvbnQtZmFjZS1zcmMiOgpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIga2U9bnVsbDtmdW5jdGlvbiB3ZShlKXtyZXR1cm4oZT1lLnRhcmdldHx8ZS5zcmNFbGVtZW50fHx3aW5kb3cpLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50JiYoZT1lLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50KSwzPT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgU2U9bnVsbCx4ZT1udWxsLEVlPW51bGw7ZnVuY3Rpb24gQ2UoZSl7aWYoZT1ibChlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFNlKXRocm93IEVycm9yKGEoMjgwKSk7dmFyIG49ZS5zdGF0ZU5vZGU7biYmKG49d2wobiksU2UoZS5zdGF0ZU5vZGUsZS50eXBlLG4pKX19ZnVuY3Rpb24gemUoZSl7eGU/RWU/RWUucHVzaChlKTpFZT1bZV06eGU9ZX1mdW5jdGlvbiBOZSgpe2lmKHhlKXt2YXIgZT14ZSxuPUVlO2lmKEVlPXhlPW51bGwsQ2UoZSksbilmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKUNlKG5bZV0pfX1mdW5jdGlvbiBfZShlLG4pe3JldHVybiBlKG4pfWZ1bmN0aW9uIFBlKCl7fXZhciBUZT0hMTtmdW5jdGlvbiBMZShlLG4sdCl7aWYoVGUpcmV0dXJuIGUobix0KTtUZT0hMDt0cnl7cmV0dXJuIF9lKGUsbix0KX1maW5hbGx5e1RlPSExLChudWxsIT09eGV8fG51bGwhPT1FZSkmJihQZSgpLE5lKCkpfX1mdW5jdGlvbiBNZShlLG4pe3ZhciB0PWUuc3RhdGVOb2RlO2lmKG51bGw9PT10KXJldHVybiBudWxsO3ZhciByPXdsKHQpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3Q9cltuXTtlOnN3aXRjaChuKXtjYXNlIm9uQ2xpY2siOmNhc2Uib25DbGlja0NhcHR1cmUiOmNhc2Uib25Eb3VibGVDbGljayI6Y2FzZSJvbkRvdWJsZUNsaWNrQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRG93biI6Y2FzZSJvbk1vdXNlRG93bkNhcHR1cmUiOmNhc2Uib25Nb3VzZU1vdmUiOmNhc2Uib25Nb3VzZU1vdmVDYXB0dXJlIjpjYXNlIm9uTW91c2VVcCI6Y2FzZSJvbk1vdXNlVXBDYXB0dXJlIjpjYXNlIm9uTW91c2VFbnRlciI6KHI9IXIuZGlzYWJsZWQpfHwocj0hKCJidXR0b24iPT09KGU9ZS50eXBlKXx8ImlucHV0Ij09PWV8fCJzZWxlY3QiPT09ZXx8InRleHRhcmVhIj09PWUpKSxlPSFyO2JyZWFrIGU7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYodCYmImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IoYSgyMzEsbix0eXBlb2YgdCkpO3JldHVybiB0fXZhciBGZT0hMTtpZihjKXRyeXt2YXIgUmU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KFJlLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7RmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLFJlLFJlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsUmUsUmUpfWNhdGNoKGNlKXtGZT0hMX1mdW5jdGlvbiBEZShlLG4sdCxyLGwsYSx1LG8saSl7dmFyIHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXtuLmFwcGx5KHQscyl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX12YXIgSWU9ITEsT2U9bnVsbCxVZT0hMSxWZT1udWxsLEFlPXtvbkVycm9yOmZ1bmN0aW9uKGUpe0llPSEwLE9lPWV9fTtmdW5jdGlvbiBCZShlLG4sdCxyLGwsYSx1LG8saSl7SWU9ITEsT2U9bnVsbCxEZS5hcHBseShBZSxhcmd1bWVudHMpfWZ1bmN0aW9uIFdlKGUpe3ZhciBuPWUsdD1lO2lmKGUuYWx0ZXJuYXRlKWZvcig7bi5yZXR1cm47KW49bi5yZXR1cm47ZWxzZXtlPW47ZG97ISEoNDA5OCYobj1lKS5mbGFncykmJih0PW4ucmV0dXJuKSxlPW4ucmV0dXJufXdoaWxlKGUpfXJldHVybiAzPT09bi50YWc/dDpudWxsfWZ1bmN0aW9uIEhlKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09biYmKG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihuPWUubWVtb2l6ZWRTdGF0ZSkpLG51bGwhPT1uKXJldHVybiBuLmRlaHlkcmF0ZWR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gUWUoZSl7aWYoV2UoZSkhPT1lKXRocm93IEVycm9yKGEoMTg4KSl9ZnVuY3Rpb24gamUoZSl7cmV0dXJuIG51bGwhPT0oZT1mdW5jdGlvbihlKXt2YXIgbj1lLmFsdGVybmF0ZTtpZighbil7aWYobnVsbD09PShuPVdlKGUpKSl0aHJvdyBFcnJvcihhKDE4OCkpO3JldHVybiBuIT09ZT9udWxsOmV9Zm9yKHZhciB0PWUscj1uOzspe3ZhciBsPXQucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciB1PWwuYWx0ZXJuYXRlO2lmKG51bGw9PT11KXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXt0PXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PXUuY2hpbGQpe2Zvcih1PWwuY2hpbGQ7dTspe2lmKHU9PT10KXJldHVybiBRZShsKSxlO2lmKHU9PT1yKXJldHVybiBRZShsKSxuO3U9dS5zaWJsaW5nfXRocm93IEVycm9yKGEoMTg4KSl9aWYodC5yZXR1cm4hPT1yLnJldHVybil0PWwscj11O2Vsc2V7Zm9yKHZhciBvPSExLGk9bC5jaGlsZDtpOyl7aWYoaT09PXQpe289ITAsdD1sLHI9dTticmVha31pZihpPT09cil7bz0hMCxyPWwsdD11O2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXtmb3IoaT11LmNoaWxkO2k7KXtpZihpPT09dCl7bz0hMCx0PXUscj1sO2JyZWFrfWlmKGk9PT1yKXtvPSEwLHI9dSx0PWw7YnJlYWt9aT1pLnNpYmxpbmd9aWYoIW8pdGhyb3cgRXJyb3IoYSgxODkpKX19aWYodC5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKGEoMTkwKSl9aWYoMyE9PXQudGFnKXRocm93IEVycm9yKGEoMTg4KSk7cmV0dXJuIHQuc3RhdGVOb2RlLmN1cnJlbnQ9PT10P2U6bn0oZSkpPyRlKGUpOm51bGx9ZnVuY3Rpb24gJGUoZSl7aWYoNT09PWUudGFnfHw2PT09ZS50YWcpcmV0dXJuIGU7Zm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe3ZhciBuPSRlKGUpO2lmKG51bGwhPT1uKXJldHVybiBuO2U9ZS5zaWJsaW5nfXJldHVybiBudWxsfQp2YXIgcWU9bC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrLEtlPWwudW5zdGFibGVfY2FuY2VsQ2FsbGJhY2ssWWU9bC51bnN0YWJsZV9zaG91bGRZaWVsZCxYZT1sLnVuc3RhYmxlX3JlcXVlc3RQYWludCxHZT1sLnVuc3RhYmxlX25vdyxaZT1sLnVuc3RhYmxlX2dldEN1cnJlbnRQcmlvcml0eUxldmVsLEplPWwudW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHksZW49bC51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eSxubj1sLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LHRuPWwudW5zdGFibGVfTG93UHJpb3JpdHkscm49bC51bnN0YWJsZV9JZGxlUHJpb3JpdHksbG49bnVsbCxhbj1udWxsO3ZhciB1bj1NYXRoLmNsejMyP01hdGguY2x6MzI6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+Pj49MCwwPT09ZT8zMjozMS0ob24oZSkvc258MCl8MH0sb249TWF0aC5sb2csc249TWF0aC5MTjI7dmFyIGNuPTY0LGZuPTQxOTQzMDQ7ZnVuY3Rpb24gZG4oZSl7c3dpdGNoKGUmLWUpe2Nhc2UgMTpyZXR1cm4gMTtjYXNlIDI6cmV0dXJuIDI7Y2FzZSA0OnJldHVybiA0O2Nhc2UgODpyZXR1cm4gODtjYXNlIDE2OnJldHVybiAxNjtjYXNlIDMyOnJldHVybiAzMjtjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiA0MTk0MjQwJmU7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4gMTMwMDIzNDI0JmU7Y2FzZSAxMzQyMTc3Mjg6cmV0dXJuIDEzNDIxNzcyODtjYXNlIDI2ODQzNTQ1NjpyZXR1cm4gMjY4NDM1NDU2O2Nhc2UgNTM2ODcwOTEyOnJldHVybiA1MzY4NzA5MTI7Y2FzZSAxMDczNzQxODI0OnJldHVybiAxMDczNzQxODI0O2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIHBuKGUsbil7dmFyIHQ9ZS5wZW5kaW5nTGFuZXM7aWYoMD09PXQpcmV0dXJuIDA7dmFyIHI9MCxsPWUuc3VzcGVuZGVkTGFuZXMsYT1lLnBpbmdlZExhbmVzLHU9MjY4NDM1NDU1JnQ7aWYoMCE9PXUpe3ZhciBvPXUmfmw7MCE9PW8/cj1kbihvKTowIT09KGEmPXUpJiYocj1kbihhKSl9ZWxzZSAwIT09KHU9dCZ+bCk/cj1kbih1KTowIT09YSYmKHI9ZG4oYSkpO2lmKDA9PT1yKXJldHVybiAwO2lmKDAhPT1uJiZuIT09ciYmIShuJmwpJiYoKGw9ciYtcik+PShhPW4mLW4pfHwxNj09PWwmJjQxOTQyNDAmYSkpcmV0dXJuIG47aWYoNCZyJiYocnw9MTYmdCksMCE9PShuPWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyxuJj1yOzA8bjspbD0xPDwodD0zMS11bihuKSkscnw9ZVt0XSxuJj1+bDtyZXR1cm4gcn1mdW5jdGlvbiBtbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpyZXR1cm4gbisyNTA7Y2FzZSA4OmNhc2UgMTY6Y2FzZSAzMjpjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiBuKzVlMztkZWZhdWx0OnJldHVybi0xfX1mdW5jdGlvbiBobihlKXtyZXR1cm4gMCE9PShlPS0xMDczNzQxODI1JmUucGVuZGluZ0xhbmVzKT9lOjEwNzM3NDE4MjQmZT8xMDczNzQxODI0OjB9ZnVuY3Rpb24gZ24oKXt2YXIgZT1jbjtyZXR1cm4hKDQxOTQyNDAmKGNuPDw9MSkpJiYoY249NjQpLGV9ZnVuY3Rpb24gdm4oZSl7Zm9yKHZhciBuPVtdLHQ9MDszMT50O3QrKyluLnB1c2goZSk7cmV0dXJuIG59ZnVuY3Rpb24geW4oZSxuLHQpe2UucGVuZGluZ0xhbmVzfD1uLDUzNjg3MDkxMiE9PW4mJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wKSwoZT1lLmV2ZW50VGltZXMpW249MzEtdW4obildPXR9ZnVuY3Rpb24gYm4oZSxuKXt2YXIgdD1lLmVudGFuZ2xlZExhbmVzfD1uO2ZvcihlPWUuZW50YW5nbGVtZW50czt0Oyl7dmFyIHI9MzEtdW4odCksbD0xPDxyO2wmbnxlW3JdJm4mJihlW3JdfD1uKSx0Jj1+bH19dmFyIGtuPTA7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MjY4NDM1NDU1JmU/MTY6NTM2ODcwOTEyOjQ6MX12YXIgU24seG4sRW4sQ24sem4sTm49ITEsX249W10sUG49bnVsbCxUbj1udWxsLExuPW51bGwsTW49bmV3IE1hcCxGbj1uZXcgTWFwLFJuPVtdLERuPSJtb3VzZWRvd24gbW91c2V1cCB0b3VjaGNhbmNlbCB0b3VjaGVuZCB0b3VjaHN0YXJ0IGF1eGNsaWNrIGRibGNsaWNrIHBvaW50ZXJjYW5jZWwgcG9pbnRlcmRvd24gcG9pbnRlcnVwIGRyYWdlbmQgZHJhZ3N0YXJ0IGRyb3AgY29tcG9zaXRpb25lbmQgY29tcG9zaXRpb25zdGFydCBrZXlkb3duIGtleXByZXNzIGtleXVwIGlucHV0IHRleHRJbnB1dCBjb3B5IGN1dCBwYXN0ZSBjbGljayBjaGFuZ2UgY29udGV4dG1lbnUgcmVzZXQgc3VibWl0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIEluKGUsbil7c3dpdGNoKGUpe2Nhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6UG49bnVsbDticmVhaztjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnbGVhdmUiOlRuPW51bGw7YnJlYWs7Y2FzZSJtb3VzZW92ZXIiOmNhc2UibW91c2VvdXQiOkxuPW51bGw7YnJlYWs7Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVyb3V0IjpNbi5kZWxldGUobi5wb2ludGVySWQpO2JyZWFrO2Nhc2UiZ290cG9pbnRlcmNhcHR1cmUiOmNhc2UibG9zdHBvaW50ZXJjYXB0dXJlIjpGbi5kZWxldGUobi5wb2ludGVySWQpfX1mdW5jdGlvbiBPbihlLG4sdCxyLGwsYSl7cmV0dXJuIG51bGw9PT1lfHxlLm5hdGl2ZUV2ZW50IT09YT8oZT17YmxvY2tlZE9uOm4sZG9tRXZlbnROYW1lOnQsZXZlbnRTeXN0ZW1GbGFnczpyLG5hdGl2ZUV2ZW50OmEsdGFyZ2V0Q29udGFpbmVyczpbbF19LG51bGwhPT1uJiYobnVsbCE9PShuPWJsKG4pKSYmeG4obikpLAplKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLG49ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1sJiYtMT09PW4uaW5kZXhPZihsKSYmbi5wdXNoKGwpLGUpfWZ1bmN0aW9uIFVuKGUpe3ZhciBuPXlsKGUudGFyZ2V0KTtpZihudWxsIT09bil7dmFyIHQ9V2Uobik7aWYobnVsbCE9PXQpaWYoMTM9PT0obj10LnRhZykpe2lmKG51bGwhPT0obj1IZSh0KSkpcmV0dXJuIGUuYmxvY2tlZE9uPW4sdm9pZCB6bihlLnByaW9yaXR5LChmdW5jdGlvbigpe0VuKHQpfSkpfWVsc2UgaWYoMz09PW4mJnQuc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpcmV0dXJuIHZvaWQoZS5ibG9ja2VkT249Mz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbCl9ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBWbihlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciBuPWUudGFyZ2V0Q29udGFpbmVyczswPG4ubGVuZ3RoOyl7dmFyIHQ9WG4oZS5kb21FdmVudE5hbWUsZS5ldmVudFN5c3RlbUZsYWdzLG5bMF0sZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PXQpcmV0dXJuIG51bGwhPT0obj1ibCh0KSkmJnhuKG4pLGUuYmxvY2tlZE9uPXQsITE7dmFyIHI9bmV3KHQ9ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3IodC50eXBlLHQpO2tlPXIsdC50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSxrZT1udWxsLG4uc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBBbihlLG4sdCl7Vm4oZSkmJnQuZGVsZXRlKG4pfWZ1bmN0aW9uIEJuKCl7Tm49ITEsbnVsbCE9PVBuJiZWbihQbikmJihQbj1udWxsKSxudWxsIT09VG4mJlZuKFRuKSYmKFRuPW51bGwpLG51bGwhPT1MbiYmVm4oTG4pJiYoTG49bnVsbCksTW4uZm9yRWFjaChBbiksRm4uZm9yRWFjaChBbil9ZnVuY3Rpb24gV24oZSxuKXtlLmJsb2NrZWRPbj09PW4mJihlLmJsb2NrZWRPbj1udWxsLE5ufHwoTm49ITAsbC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGwudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksQm4pKSl9ZnVuY3Rpb24gSG4oZSl7ZnVuY3Rpb24gbihuKXtyZXR1cm4gV24obixlKX1pZigwPF9uLmxlbmd0aCl7V24oX25bMF0sZSk7Zm9yKHZhciB0PTE7dDxfbi5sZW5ndGg7dCsrKXt2YXIgcj1fblt0XTtyLmJsb2NrZWRPbj09PWUmJihyLmJsb2NrZWRPbj1udWxsKX19Zm9yKG51bGwhPT1QbiYmV24oUG4sZSksbnVsbCE9PVRuJiZXbihUbixlKSxudWxsIT09TG4mJlduKExuLGUpLE1uLmZvckVhY2gobiksRm4uZm9yRWFjaChuKSx0PTA7dDxSbi5sZW5ndGg7dCsrKShyPVJuW3RdKS5ibG9ja2VkT249PT1lJiYoci5ibG9ja2VkT249bnVsbCk7Zm9yKDswPFJuLmxlbmd0aCYmbnVsbD09PSh0PVJuWzBdKS5ibG9ja2VkT247KVVuKHQpLG51bGw9PT10LmJsb2NrZWRPbiYmUm4uc2hpZnQoKX12YXIgUW49ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxqbj0hMDtmdW5jdGlvbiAkbihlLG4sdCxyKXt2YXIgbD1rbixhPVFuLnRyYW5zaXRpb247UW4udHJhbnNpdGlvbj1udWxsO3RyeXtrbj0xLEtuKGUsbix0LHIpfWZpbmFsbHl7a249bCxRbi50cmFuc2l0aW9uPWF9fWZ1bmN0aW9uIHFuKGUsbix0LHIpe3ZhciBsPWtuLGE9UW4udHJhbnNpdGlvbjtRbi50cmFuc2l0aW9uPW51bGw7dHJ5e2tuPTQsS24oZSxuLHQscil9ZmluYWxseXtrbj1sLFFuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24gS24oZSxuLHQscil7aWYoam4pe3ZhciBsPVhuKGUsbix0LHIpO2lmKG51bGw9PT1sKVFyKGUsbixyLFluLHQpLEluKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLG4sdCxyLGwpe3N3aXRjaChuKXtjYXNlImZvY3VzaW4iOnJldHVybiBQbj1PbihQbixlLG4sdCxyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gVG49T24oVG4sZSxuLHQscixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIExuPU9uKExuLGUsbix0LHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIE1uLnNldChhLE9uKE1uLmdldChhKXx8bnVsbCxlLG4sdCxyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxGbi5zZXQoYSxPbihGbi5nZXQoYSl8fG51bGwsZSxuLHQscixsKSksITB9cmV0dXJuITF9KGwsZSxuLHQscikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKEluKGUsciksNCZuJiYtMTxEbi5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9YmwobCk7aWYobnVsbCE9PWEmJlNuKGEpLG51bGw9PT0oYT1YbihlLG4sdCxyKSkmJlFyKGUsbixyLFluLHQpLGE9PT1sKWJyZWFrO2w9YX1udWxsIT09bCYmci5zdG9wUHJvcGFnYXRpb24oKX1lbHNlIFFyKGUsbixyLG51bGwsdCl9fXZhciBZbj1udWxsO2Z1bmN0aW9uIFhuKGUsbix0LHIpe2lmKFluPW51bGwsbnVsbCE9PShlPXlsKGU9d2UocikpKSlpZihudWxsPT09KG49V2UoZSkpKWU9bnVsbDtlbHNlIGlmKDEzPT09KHQ9bi50YWcpKXtpZihudWxsIT09KGU9SGUobikpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT10KXtpZihuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIG4hPT1lJiYoZT1udWxsKTtyZXR1cm4gWW49ZSxudWxsfWZ1bmN0aW9uIEduKGUpe3N3aXRjaChlKXtjYXNlImNhbmNlbCI6Y2FzZSJjbGljayI6Y2FzZSJjbG9zZSI6Y2FzZSJjb250ZXh0bWVudSI6Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdzdGFydCI6Y2FzZSJkcm9wIjpjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmNhc2UiaW5wdXQiOmNhc2UiaW52YWxpZCI6Y2FzZSJrZXlkb3duIjpjYXNlImtleXByZXNzIjpjYXNlImtleXVwIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZXVwIjpjYXNlInBhc3RlIjpjYXNlInBhdXNlIjpjYXNlInBsYXkiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVydXAiOmNhc2UicmF0ZWNoYW5nZSI6CmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goWmUoKSl7Y2FzZSBKZTpyZXR1cm4gMTtjYXNlIGVuOnJldHVybiA0O2Nhc2Ugbm46Y2FzZSB0bjpyZXR1cm4gMTY7Y2FzZSBybjpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgWm49bnVsbCxKbj1udWxsLGV0PW51bGw7ZnVuY3Rpb24gbnQoKXtpZihldClyZXR1cm4gZXQ7dmFyIGUsbix0PUpuLHI9dC5sZW5ndGgsbD0idmFsdWUiaW4gWm4/Wm4udmFsdWU6Wm4udGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmdFtlXT09PWxbZV07ZSsrKTt2YXIgdT1yLWU7Zm9yKG49MTtuPD11JiZ0W3Itbl09PT1sW2Etbl07bisrKTtyZXR1cm4gZXQ9bC5zbGljZShlLDE8bj8xLW46dm9pZCAwKX1mdW5jdGlvbiB0dChlKXt2YXIgbj1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PW4mJihlPTEzKTplPW4sMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gcnQoKXtyZXR1cm4hMH1mdW5jdGlvbiBsdCgpe3JldHVybiExfWZ1bmN0aW9uIGF0KGUpe2Z1bmN0aW9uIG4obix0LHIsbCxhKXtmb3IodmFyIHUgaW4gdGhpcy5fcmVhY3ROYW1lPW4sdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eSh1KSYmKG49ZVt1XSx0aGlzW3VdPW4/bihsKTpsW3VdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT9ydDpsdCx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWx0LHRoaXN9cmV0dXJuIE8obi5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1ydCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1ydCl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpydH0pLG59dmFyIHV0LG90LGl0LHN0PXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LGN0PWF0KHN0KSxmdD1PKHt9LHN0LHt2aWV3OjAsZGV0YWlsOjB9KSxkdD1hdChmdCkscHQ9Tyh7fSxmdCx7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT1pdCYmKGl0JiYibW91c2Vtb3ZlIj09PWUudHlwZT8odXQ9ZS5zY3JlZW5YLWl0LnNjcmVlblgsb3Q9ZS5zY3JlZW5ZLWl0LnNjcmVlblkpOm90PXV0PTAsaXQ9ZSksdXQpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOm90fX0pLG10PWF0KHB0KSxodD1hdChPKHt9LHB0LHtkYXRhVHJhbnNmZXI6MH0pKSxndD1hdChPKHt9LGZ0LHtyZWxhdGVkVGFyZ2V0OjB9KSksdnQ9YXQoTyh7fSxzdCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHl0PU8oe30sc3Qse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSksYnQ9YXQoeXQpLGt0PWF0KE8oe30sc3Qse2RhdGE6MH0pKSx3dD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLApVcDoiQXJyb3dVcCIsUmlnaHQ6IkFycm93UmlnaHQiLERvd246IkFycm93RG93biIsRGVsOiJEZWxldGUiLFdpbjoiT1MiLE1lbnU6IkNvbnRleHRNZW51IixBcHBzOiJDb250ZXh0TWVudSIsU2Nyb2xsOiJTY3JvbGxMb2NrIixNb3pQcmludGFibGVLZXk6IlVuaWRlbnRpZmllZCJ9LFN0PXs4OiJCYWNrc3BhY2UiLDk6IlRhYiIsMTI6IkNsZWFyIiwxMzoiRW50ZXIiLDE2OiJTaGlmdCIsMTc6IkNvbnRyb2wiLDE4OiJBbHQiLDE5OiJQYXVzZSIsMjA6IkNhcHNMb2NrIiwyNzoiRXNjYXBlIiwzMjoiICIsMzM6IlBhZ2VVcCIsMzQ6IlBhZ2VEb3duIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zZXJ0Iiw0NjoiRGVsZXRlIiwxMTI6IkYxIiwxMTM6IkYyIiwxMTQ6IkYzIiwxMTU6IkY0IiwxMTY6IkY1IiwxMTc6IkY2IiwxMTg6IkY3IiwxMTk6IkY4IiwxMjA6IkY5IiwxMjE6IkYxMCIsMTIyOiJGMTEiLDEyMzoiRjEyIiwxNDQ6Ik51bUxvY2siLDE0NToiU2Nyb2xsTG9jayIsMjI0OiJNZXRhIn0seHQ9e0FsdDoiYWx0S2V5IixDb250cm9sOiJjdHJsS2V5IixNZXRhOiJtZXRhS2V5IixTaGlmdDoic2hpZnRLZXkifTtmdW5jdGlvbiBFdChlKXt2YXIgbj10aGlzLm5hdGl2ZUV2ZW50O3JldHVybiBuLmdldE1vZGlmaWVyU3RhdGU/bi5nZXRNb2RpZmllclN0YXRlKGUpOiEhKGU9eHRbZV0pJiYhIW5bZV19ZnVuY3Rpb24gQ3QoKXtyZXR1cm4gRXR9dmFyIHp0PU8oe30sZnQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIG49d3RbZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PW4pcmV0dXJuIG59cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPXR0KGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1N0W2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSxOdD1hdCh6dCksX3Q9YXQoTyh7fSxwdCx7cG9pbnRlcklkOjAsd2lkdGg6MCxoZWlnaHQ6MCxwcmVzc3VyZTowLHRhbmdlbnRpYWxQcmVzc3VyZTowLHRpbHRYOjAsdGlsdFk6MCx0d2lzdDowLHBvaW50ZXJUeXBlOjAsaXNQcmltYXJ5OjB9KSksUHQ9YXQoTyh7fSxmdCx7dG91Y2hlczowLHRhcmdldFRvdWNoZXM6MCxjaGFuZ2VkVG91Y2hlczowLGFsdEtleTowLG1ldGFLZXk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxnZXRNb2RpZmllclN0YXRlOkN0fSkpLFR0PWF0KE8oe30sc3Qse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLEx0PU8oe30scHQse2RlbHRhWDpmdW5jdGlvbihlKXtyZXR1cm4iZGVsdGFYImluIGU/ZS5kZWx0YVg6IndoZWVsRGVsdGFYImluIGU/LWUud2hlZWxEZWx0YVg6MH0sZGVsdGFZOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVkiaW4gZT9lLmRlbHRhWToid2hlZWxEZWx0YVkiaW4gZT8tZS53aGVlbERlbHRhWToid2hlZWxEZWx0YSJpbiBlPy1lLndoZWVsRGVsdGE6MH0sZGVsdGFaOjAsZGVsdGFNb2RlOjB9KSxNdD1hdChMdCksRnQ9WzksMTMsMjcsMzJdLFJ0PWMmJiJDb21wb3NpdGlvbkV2ZW50ImluIHdpbmRvdyxEdD1udWxsO2MmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJihEdD1kb2N1bWVudC5kb2N1bWVudE1vZGUpO3ZhciBJdD1jJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIUR0LE90PWMmJighUnR8fER0JiY4PER0JiYxMT49RHQpLFV0PVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLFZ0PSExO2Z1bmN0aW9uIEF0KGUsbil7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09RnQuaW5kZXhPZihuLmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PW4ua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPWUuZGV0YWlsKSYmImRhdGEiaW4gZT9lLmRhdGE6bnVsbH12YXIgV3Q9ITE7dmFyIEh0PXtjb2xvcjohMCxkYXRlOiEwLGRhdGV0aW1lOiEwLCJkYXRldGltZS1sb2NhbCI6ITAsZW1haWw6ITAsbW9udGg6ITAsbnVtYmVyOiEwLHBhc3N3b3JkOiEwLHJhbmdlOiEwLHNlYXJjaDohMCx0ZWw6ITAsdGV4dDohMCx0aW1lOiEwLHVybDohMCx3ZWVrOiEwfTtmdW5jdGlvbiBRdChlKXt2YXIgbj1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PW4/ISFIdFtlLnR5cGVdOiJ0ZXh0YXJlYSI9PT1ufWZ1bmN0aW9uIGp0KGUsbix0LHIpe3plKHIpLDA8KG49JHIobiwib25DaGFuZ2UiKSkubGVuZ3RoJiYodD1uZXcgY3QoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLHQsciksZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczpufSkpfXZhciAkdD1udWxsLHF0PW51bGw7ZnVuY3Rpb24gS3QoZSl7VXIoZSwwKX1mdW5jdGlvbiBZdChlKXtpZihxKGtsKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBYdChlLG4pe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gbn12YXIgR3Q9ITE7aWYoYyl7dmFyIFp0O2lmKGMpe3ZhciBKdD0ib25pbnB1dCJpbiBkb2N1bWVudDtpZighSnQpe3ZhciBlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlci5zZXRBdHRyaWJ1dGUoIm9uaW5wdXQiLCJyZXR1cm47IiksSnQ9ImZ1bmN0aW9uIj09dHlwZW9mIGVyLm9uaW5wdXR9WnQ9SnQKfWVsc2UgWnQ9ITE7R3Q9WnQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSl9ZnVuY3Rpb24gbnIoKXskdCYmKCR0LmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikscXQ9JHQ9bnVsbCl9ZnVuY3Rpb24gdHIoZSl7aWYoInZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZZdChxdCkpe3ZhciBuPVtdO2p0KG4scXQsZSx3ZShlKSksTGUoS3Qsbil9fWZ1bmN0aW9uIHJyKGUsbix0KXsiZm9jdXNpbiI9PT1lPyhucigpLHF0PXQsKCR0PW4pLmF0dGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikpOiJmb2N1c291dCI9PT1lJiZucigpfWZ1bmN0aW9uIGxyKGUpe2lmKCJzZWxlY3Rpb25jaGFuZ2UiPT09ZXx8ImtleXVwIj09PWV8fCJrZXlkb3duIj09PWUpcmV0dXJuIFl0KHF0KX1mdW5jdGlvbiBhcihlLG4pe2lmKCJjbGljayI9PT1lKXJldHVybiBZdChuKX1mdW5jdGlvbiB1cihlLG4pe2lmKCJpbnB1dCI9PT1lfHwiY2hhbmdlIj09PWUpcmV0dXJuIFl0KG4pfXZhciBvcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLG4pe3JldHVybiBlPT09biYmKDAhPT1lfHwxL2U9PTEvbil8fGUhPWUmJm4hPW59O2Z1bmN0aW9uIGlyKGUsbil7aWYob3IoZSxuKSlyZXR1cm4hMDtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIG58fG51bGw9PT1uKXJldHVybiExO3ZhciB0PU9iamVjdC5rZXlzKGUpLHI9T2JqZWN0LmtleXMobik7aWYodC5sZW5ndGghPT1yLmxlbmd0aClyZXR1cm4hMTtmb3Iocj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO2lmKCFmLmNhbGwobixsKXx8IW9yKGVbbF0sbltsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gc3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIGNyKGUsbil7dmFyIHQscj1zcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYodD1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PW4mJnQ+PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6bi1lfTtlPXR9ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1zcihyKX19ZnVuY3Rpb24gZnIoZSxuKXtyZXR1cm4hKCFlfHwhbikmJihlPT09bnx8KCFlfHwzIT09ZS5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9mcihlLG4ucGFyZW50Tm9kZSk6ImNvbnRhaW5zImluIGU/ZS5jb250YWlucyhuKTohIWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24obikpKSl9ZnVuY3Rpb24gZHIoKXtmb3IodmFyIGU9d2luZG93LG49SygpO24gaW5zdGFuY2VvZiBlLkhUTUxJRnJhbWVFbGVtZW50Oyl7dHJ5e3ZhciB0PSJzdHJpbmciPT10eXBlb2Ygbi5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWZ9Y2F0Y2goZSl7dD0hMX1pZighdClicmVhaztuPUsoKGU9bi5jb250ZW50V2luZG93KS5kb2N1bWVudCl9cmV0dXJuIG59ZnVuY3Rpb24gcHIoZSl7dmFyIG49ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiBuJiYoImlucHV0Ij09PW4mJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09bnx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfWZ1bmN0aW9uIG1yKGUpe3ZhciBuPWRyKCksdD1lLmZvY3VzZWRFbGVtLHI9ZS5zZWxlY3Rpb25SYW5nZTtpZihuIT09dCYmdCYmdC5vd25lckRvY3VtZW50JiZmcih0Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHQpKXtpZihudWxsIT09ciYmcHIodCkpaWYobj1yLnN0YXJ0LHZvaWQgMD09PShlPXIuZW5kKSYmKGU9biksInNlbGVjdGlvblN0YXJ0ImluIHQpdC5zZWxlY3Rpb25TdGFydD1uLHQuc2VsZWN0aW9uRW5kPU1hdGgubWluKGUsdC52YWx1ZS5sZW5ndGgpO2Vsc2UgaWYoKGU9KG49dC5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm4uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKXtlPWUuZ2V0U2VsZWN0aW9uKCk7dmFyIGw9dC50ZXh0Q29udGVudC5sZW5ndGgsYT1NYXRoLm1pbihyLnN0YXJ0LGwpO3I9dm9pZCAwPT09ci5lbmQ/YTpNYXRoLm1pbihyLmVuZCxsKSwhZS5leHRlbmQmJmE+ciYmKGw9cixyPWEsYT1sKSxsPWNyKHQsYSk7dmFyIHU9Y3IodCxyKTtsJiZ1JiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bC5ub2RlfHxlLmFuY2hvck9mZnNldCE9PWwub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXUubm9kZXx8ZS5mb2N1c09mZnNldCE9PXUub2Zmc2V0KSYmKChuPW4uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobC5ub2RlLGwub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGE+cj8oZS5hZGRSYW5nZShuKSxlLmV4dGVuZCh1Lm5vZGUsdS5vZmZzZXQpKToobi5zZXRFbmQodS5ub2RlLHUub2Zmc2V0KSxlLmFkZFJhbmdlKG4pKSl9Zm9yKG49W10sZT10O2U9ZS5wYXJlbnROb2RlOykxPT09ZS5ub2RlVHlwZSYmbi5wdXNoKHtlbGVtZW50OmUsbGVmdDplLnNjcm9sbExlZnQsdG9wOmUuc2Nyb2xsVG9wfSk7Zm9yKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvY3VzJiZ0LmZvY3VzKCksdD0wO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pLmVsZW1lbnQuc2Nyb2xsTGVmdD1lLmxlZnQsZS5lbGVtZW50LnNjcm9sbFRvcD1lLnRvcH19dmFyIGhyPWMmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJjExPj1kb2N1bWVudC5kb2N1bWVudE1vZGUsZ3I9bnVsbCx2cj1udWxsLHlyPW51bGwsYnI9ITE7ZnVuY3Rpb24ga3IoZSxuLHQpe3ZhciByPXQud2luZG93PT09dD90LmRvY3VtZW50Ojk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O2JyfHxudWxsPT1ncnx8Z3IhPT1LKHIpfHwoInNlbGVjdGlvblN0YXJ0ImluKHI9Z3IpJiZwcihyKT9yPXtzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZAp9OnI9e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0seXImJmlyKHlyLHIpfHwoeXI9ciwwPChyPSRyKHZyLCJvblNlbGVjdCIpKS5sZW5ndGgmJihuPW5ldyBjdCgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsbix0KSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnJ9KSxuLnRhcmdldD1ncikpKX1mdW5jdGlvbiB3cihlLG4pe3ZhciB0PXt9O3JldHVybiB0W2UudG9Mb3dlckNhc2UoKV09bi50b0xvd2VyQ2FzZSgpLHRbIldlYmtpdCIrZV09IndlYmtpdCIrbix0WyJNb3oiK2VdPSJtb3oiK24sdH12YXIgU3I9e2FuaW1hdGlvbmVuZDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOndyKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9uZW5kOndyKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvbkVuZCIpfSx4cj17fSxFcj17fTtmdW5jdGlvbiBDcihlKXtpZih4cltlXSlyZXR1cm4geHJbZV07aWYoIVNyW2VdKXJldHVybiBlO3ZhciBuLHQ9U3JbZV07Zm9yKG4gaW4gdClpZih0Lmhhc093blByb3BlcnR5KG4pJiZuIGluIEVyKXJldHVybiB4cltlXT10W25dO3JldHVybiBlfWMmJihFcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKS5zdHlsZSwiQW5pbWF0aW9uRXZlbnQiaW4gd2luZG93fHwoZGVsZXRlIFNyLmFuaW1hdGlvbmVuZC5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbml0ZXJhdGlvbi5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbnN0YXJ0LmFuaW1hdGlvbiksIlRyYW5zaXRpb25FdmVudCJpbiB3aW5kb3d8fGRlbGV0ZSBTci50cmFuc2l0aW9uZW5kLnRyYW5zaXRpb24pO3ZhciB6cj1DcigiYW5pbWF0aW9uZW5kIiksTnI9Q3IoImFuaW1hdGlvbml0ZXJhdGlvbiIpLF9yPUNyKCJhbmltYXRpb25zdGFydCIpLFByPUNyKCJ0cmFuc2l0aW9uZW5kIiksVHI9bmV3IE1hcCxMcj0iYWJvcnQgYXV4Q2xpY2sgY2FuY2VsIGNhblBsYXkgY2FuUGxheVRocm91Z2ggY2xpY2sgY2xvc2UgY29udGV4dE1lbnUgY29weSBjdXQgZHJhZyBkcmFnRW5kIGRyYWdFbnRlciBkcmFnRXhpdCBkcmFnTGVhdmUgZHJhZ092ZXIgZHJhZ1N0YXJ0IGRyb3AgZHVyYXRpb25DaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgZ290UG9pbnRlckNhcHR1cmUgaW5wdXQgaW52YWxpZCBrZXlEb3duIGtleVByZXNzIGtleVVwIGxvYWQgbG9hZGVkRGF0YSBsb2FkZWRNZXRhZGF0YSBsb2FkU3RhcnQgbG9zdFBvaW50ZXJDYXB0dXJlIG1vdXNlRG93biBtb3VzZU1vdmUgbW91c2VPdXQgbW91c2VPdmVyIG1vdXNlVXAgcGFzdGUgcGF1c2UgcGxheSBwbGF5aW5nIHBvaW50ZXJDYW5jZWwgcG9pbnRlckRvd24gcG9pbnRlck1vdmUgcG9pbnRlck91dCBwb2ludGVyT3ZlciBwb2ludGVyVXAgcHJvZ3Jlc3MgcmF0ZUNoYW5nZSByZXNldCByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdWJtaXQgc3VzcGVuZCB0aW1lVXBkYXRlIHRvdWNoQ2FuY2VsIHRvdWNoRW5kIHRvdWNoU3RhcnQgdm9sdW1lQ2hhbmdlIHNjcm9sbCB0b2dnbGUgdG91Y2hNb3ZlIHdhaXRpbmcgd2hlZWwiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTXIoZSxuKXtUci5zZXQoZSxuKSxpKG4sW2VdKX1mb3IodmFyIEZyPTA7RnI8THIubGVuZ3RoO0ZyKyspe3ZhciBScj1McltGcl07TXIoUnIudG9Mb3dlckNhc2UoKSwib24iKyhSclswXS50b1VwcGVyQ2FzZSgpK1JyLnNsaWNlKDEpKSl9TXIoenIsIm9uQW5pbWF0aW9uRW5kIiksTXIoTnIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIiksTXIoX3IsIm9uQW5pbWF0aW9uU3RhcnQiKSxNcigiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIiksTXIoImZvY3VzaW4iLCJvbkZvY3VzIiksTXIoImZvY3Vzb3V0Iiwib25CbHVyIiksTXIoUHIsIm9uVHJhbnNpdGlvbkVuZCIpLHMoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxzKCJvbk1vdXNlTGVhdmUiLFsibW91c2VvdXQiLCJtb3VzZW92ZXIiXSkscygib25Qb2ludGVyRW50ZXIiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLHMoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxpKCJvbkNoYW5nZSIsImNoYW5nZSBjbGljayBmb2N1c2luIGZvY3Vzb3V0IGlucHV0IGtleWRvd24ga2V5dXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxpKCJvblNlbGVjdCIsImZvY3Vzb3V0IGNvbnRleHRtZW51IGRyYWdlbmQgZm9jdXNpbiBrZXlkb3duIGtleXVwIG1vdXNlZG93biBtb3VzZXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksaSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksaSgib25Db21wb3NpdGlvbkVuZCIsImNvbXBvc2l0aW9uZW5kIGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uU3RhcnQiLCJjb21wb3NpdGlvbnN0YXJ0IGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpCjt2YXIgRHI9ImFib3J0IGNhbnBsYXkgY2FucGxheXRocm91Z2ggZHVyYXRpb25jaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgbG9hZGVkZGF0YSBsb2FkZWRtZXRhZGF0YSBsb2Fkc3RhcnQgcGF1c2UgcGxheSBwbGF5aW5nIHByb2dyZXNzIHJhdGVjaGFuZ2UgcmVzaXplIHNlZWtlZCBzZWVraW5nIHN0YWxsZWQgc3VzcGVuZCB0aW1ldXBkYXRlIHZvbHVtZWNoYW5nZSB3YWl0aW5nIi5zcGxpdCgiICIpLElyPW5ldyBTZXQoImNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHRvZ2dsZSIuc3BsaXQoIiAiKS5jb25jYXQoRHIpKTtmdW5jdGlvbiBPcihlLG4sdCl7dmFyIHI9ZS50eXBlfHwidW5rbm93bi1ldmVudCI7ZS5jdXJyZW50VGFyZ2V0PXQsZnVuY3Rpb24oZSxuLHQscixsLHUsbyxpLHMpe2lmKEJlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxJZSl7aWYoIUllKXRocm93IEVycm9yKGEoMTk4KSk7dmFyIGM9T2U7SWU9ITEsT2U9bnVsbCxVZXx8KFVlPSEwLFZlPWMpfX0ocixuLHZvaWQgMCxlKSxlLmN1cnJlbnRUYXJnZXQ9bnVsbH1mdW5jdGlvbiBVcihlLG4pe249ISEoNCZuKTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIHI9ZVt0XSxsPXIuZXZlbnQ7cj1yLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYobilmb3IodmFyIHU9ci5sZW5ndGgtMTswPD11O3UtLSl7dmFyIG89clt1XSxpPW8uaW5zdGFuY2Uscz1vLmN1cnJlbnRUYXJnZXQ7aWYobz1vLmxpc3RlbmVyLGkhPT1hJiZsLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtPcihsLG8scyksYT1pfWVsc2UgZm9yKHU9MDt1PHIubGVuZ3RoO3UrKyl7aWYoaT0obz1yW3VdKS5pbnN0YW5jZSxzPW8uY3VycmVudFRhcmdldCxvPW8ubGlzdGVuZXIsaSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO09yKGwsbyxzKSxhPWl9fX1pZihVZSl0aHJvdyBlPVZlLFVlPSExLFZlPW51bGwsZX1mdW5jdGlvbiBWcihlLG4pe3ZhciB0PW5baGxdO3ZvaWQgMD09PXQmJih0PW5baGxdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjt0LmhhcyhyKXx8KEhyKG4sZSwyLCExKSx0LmFkZChyKSl9ZnVuY3Rpb24gQXIoZSxuLHQpe3ZhciByPTA7biYmKHJ8PTQpLEhyKHQsZSxyLG4pfXZhciBCcj0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBXcihlKXtpZighZVtCcl0pe2VbQnJdPSEwLHUuZm9yRWFjaCgoZnVuY3Rpb24obil7InNlbGVjdGlvbmNoYW5nZSIhPT1uJiYoSXIuaGFzKG4pfHxBcihuLCExLGUpLEFyKG4sITAsZSkpfSkpO3ZhciBuPTk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50O251bGw9PT1ufHxuW0JyXXx8KG5bQnJdPSEwLEFyKCJzZWxlY3Rpb25jaGFuZ2UiLCExLG4pKX19ZnVuY3Rpb24gSHIoZSxuLHQscil7c3dpdGNoKEduKG4pKXtjYXNlIDE6dmFyIGw9JG47YnJlYWs7Y2FzZSA0Omw9cW47YnJlYWs7ZGVmYXVsdDpsPUtufXQ9bC5iaW5kKG51bGwsbix0LGUpLGw9dm9pZCAwLCFGZXx8InRvdWNoc3RhcnQiIT09biYmInRvdWNobW92ZSIhPT1uJiYid2hlZWwiIT09bnx8KGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIobix0LHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcihuLHQsITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKG4sdCx7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKG4sdCwhMSl9ZnVuY3Rpb24gUXIoZSxuLHQscixsKXt2YXIgYT1yO2lmKCEoMSZufHwyJm58fG51bGw9PT1yKSllOmZvcig7Oyl7aWYobnVsbD09PXIpcmV0dXJuO3ZhciB1PXIudGFnO2lmKDM9PT11fHw0PT09dSl7dmFyIG89ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihvPT09bHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PWwpYnJlYWs7aWYoND09PXUpZm9yKHU9ci5yZXR1cm47bnVsbCE9PXU7KXt2YXIgaT11LnRhZztpZigoMz09PWl8fDQ9PT1pKSYmKChpPXUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09bHx8OD09PWkubm9kZVR5cGUmJmkucGFyZW50Tm9kZT09PWwpKXJldHVybjt1PXUucmV0dXJufWZvcig7bnVsbCE9PW87KXtpZihudWxsPT09KHU9eWwobykpKXJldHVybjtpZig1PT09KGk9dS50YWcpfHw2PT09aSl7cj1hPXU7Y29udGludWUgZX1vPW8ucGFyZW50Tm9kZX19cj1yLnJldHVybn1MZSgoZnVuY3Rpb24oKXt2YXIgcj1hLGw9d2UodCksdT1bXTtlOnt2YXIgbz1Uci5nZXQoZSk7aWYodm9pZCAwIT09byl7dmFyIGk9Y3Qscz1lO3N3aXRjaChlKXtjYXNlImtleXByZXNzIjppZigwPT09dHQodCkpYnJlYWsgZTtjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmk9TnQ7YnJlYWs7Y2FzZSJmb2N1c2luIjpzPSJmb2N1cyIsaT1ndDticmVhaztjYXNlImZvY3Vzb3V0IjpzPSJibHVyIixpPWd0O2JyZWFrO2Nhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmk9Z3Q7YnJlYWs7Y2FzZSJjbGljayI6aWYoMj09PXQuYnV0dG9uKWJyZWFrIGU7Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2Vtb3ZlIjpjYXNlIm1vdXNldXAiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlImNvbnRleHRtZW51IjppPW10O2JyZWFrO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnZXhpdCI6Y2FzZSJkcmFnbGVhdmUiOmNhc2UiZHJhZ292ZXIiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmk9aHQ7YnJlYWs7Y2FzZSJ0b3VjaGNhbmNlbCI6Y2FzZSJ0b3VjaGVuZCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2UidG91Y2hzdGFydCI6aT1QdDticmVhaztjYXNlIHpyOmNhc2UgTnI6Y2FzZSBfcjppPXZ0O2JyZWFrO2Nhc2UgUHI6aT1UdDticmVhaztjYXNlInNjcm9sbCI6aT1kdDticmVhaztjYXNlIndoZWVsIjppPU10O2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOmk9YnQ7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOgpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVydXAiOmk9X3R9dmFyIGM9ISEoNCZuKSxmPSFjJiYic2Nyb2xsIj09PWUsZD1jP251bGwhPT1vP28rIkNhcHR1cmUiOm51bGw6bztjPVtdO2Zvcih2YXIgcCxtPXI7bnVsbCE9PW07KXt2YXIgaD0ocD1tKS5zdGF0ZU5vZGU7aWYoNT09PXAudGFnJiZudWxsIT09aCYmKHA9aCxudWxsIT09ZCYmKG51bGwhPShoPU1lKG0sZCkpJiZjLnB1c2goanIobSxoLHApKSkpLGYpYnJlYWs7bT1tLnJldHVybn0wPGMubGVuZ3RoJiYobz1uZXcgaShvLHMsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6Y30pKX19aWYoISg3Jm4pKXtpZihpPSJtb3VzZW91dCI9PT1lfHwicG9pbnRlcm91dCI9PT1lLCghKG89Im1vdXNlb3ZlciI9PT1lfHwicG9pbnRlcm92ZXIiPT09ZSl8fHQ9PT1rZXx8IShzPXQucmVsYXRlZFRhcmdldHx8dC5mcm9tRWxlbWVudCl8fCF5bChzKSYmIXNbbWxdKSYmKGl8fG8pJiYobz1sLndpbmRvdz09PWw/bDoobz1sLm93bmVyRG9jdW1lbnQpP28uZGVmYXVsdFZpZXd8fG8ucGFyZW50V2luZG93OndpbmRvdyxpPyhpPXIsbnVsbCE9PShzPShzPXQucmVsYXRlZFRhcmdldHx8dC50b0VsZW1lbnQpP3lsKHMpOm51bGwpJiYocyE9PShmPVdlKHMpKXx8NSE9PXMudGFnJiY2IT09cy50YWcpJiYocz1udWxsKSk6KGk9bnVsbCxzPXIpLGkhPT1zKSl7aWYoYz1tdCxoPSJvbk1vdXNlTGVhdmUiLGQ9Im9uTW91c2VFbnRlciIsbT0ibW91c2UiLCJwb2ludGVyb3V0IiE9PWUmJiJwb2ludGVyb3ZlciIhPT1lfHwoYz1fdCxoPSJvblBvaW50ZXJMZWF2ZSIsZD0ib25Qb2ludGVyRW50ZXIiLG09InBvaW50ZXIiKSxmPW51bGw9PWk/bzprbChpKSxwPW51bGw9PXM/bzprbChzKSwobz1uZXcgYyhoLG0rImxlYXZlIixpLHQsbCkpLnRhcmdldD1mLG8ucmVsYXRlZFRhcmdldD1wLGg9bnVsbCx5bChsKT09PXImJigoYz1uZXcgYyhkLG0rImVudGVyIixzLHQsbCkpLnRhcmdldD1wLGMucmVsYXRlZFRhcmdldD1mLGg9YyksZj1oLGkmJnMpZTp7Zm9yKGQ9cyxtPTAscD1jPWk7cDtwPXFyKHApKW0rKztmb3IocD0wLGg9ZDtoO2g9cXIoaCkpcCsrO2Zvcig7MDxtLXA7KWM9cXIoYyksbS0tO2Zvcig7MDxwLW07KWQ9cXIoZCkscC0tO2Zvcig7bS0tOyl7aWYoYz09PWR8fG51bGwhPT1kJiZjPT09ZC5hbHRlcm5hdGUpYnJlYWsgZTtjPXFyKGMpLGQ9cXIoZCl9Yz1udWxsfWVsc2UgYz1udWxsO251bGwhPT1pJiZLcih1LG8saSxjLCExKSxudWxsIT09cyYmbnVsbCE9PWYmJktyKHUsZixzLGMsITApfWlmKCJzZWxlY3QiPT09KGk9KG89cj9rbChyKTp3aW5kb3cpLm5vZGVOYW1lJiZvLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09aSYmImZpbGUiPT09by50eXBlKXZhciBnPVh0O2Vsc2UgaWYoUXQobykpaWYoR3QpZz11cjtlbHNle2c9bHI7dmFyIHY9cnJ9ZWxzZShpPW8ubm9kZU5hbWUpJiYiaW5wdXQiPT09aS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW8udHlwZXx8InJhZGlvIj09PW8udHlwZSkmJihnPWFyKTtzd2l0Y2goZyYmKGc9ZyhlLHIpKT9qdCh1LGcsdCxsKToodiYmdihlLG8sciksImZvY3Vzb3V0Ij09PWUmJih2PW8uX3dyYXBwZXJTdGF0ZSkmJnYuY29udHJvbGxlZCYmIm51bWJlciI9PT1vLnR5cGUmJmVlKG8sIm51bWJlciIsby52YWx1ZSkpLHY9cj9rbChyKTp3aW5kb3csZSl7Y2FzZSJmb2N1c2luIjooUXQodil8fCJ0cnVlIj09PXYuY29udGVudEVkaXRhYmxlKSYmKGdyPXYsdnI9cix5cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp5cj12cj1ncj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpicj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6YnI9ITEsa3IodSx0LGwpO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihocilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmtyKHUsdCxsKX12YXIgeTtpZihSdCllOntzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgYj0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmI9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Yj0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1iPXZvaWQgMH1lbHNlIFd0P0F0KGUsdCkmJihiPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZSYmMjI5PT09dC5rZXlDb2RlJiYoYj0ib25Db21wb3NpdGlvblN0YXJ0Iik7YiYmKE90JiYia28iIT09dC5sb2NhbGUmJihXdHx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1iPyJvbkNvbXBvc2l0aW9uRW5kIj09PWImJld0JiYoeT1udCgpKTooSm49InZhbHVlImluKFpuPWwpP1puLnZhbHVlOlpuLnRleHRDb250ZW50LFd0PSEwKSksMDwodj0kcihyLGIpKS5sZW5ndGgmJihiPW5ldyBrdChiLGUsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6YixsaXN0ZW5lcnM6dn0pLHk/Yi5kYXRhPXk6bnVsbCE9PSh5PUJ0KHQpKSYmKGIuZGF0YT15KSkpLCh5PUl0P2Z1bmN0aW9uKGUsbil7c3dpdGNoKGUpe2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBCdChuKTtjYXNlImtleXByZXNzIjpyZXR1cm4gMzIhPT1uLndoaWNoP251bGw6KFZ0PSEwLFV0KTtjYXNlInRleHRJbnB1dCI6cmV0dXJuKGU9bi5kYXRhKT09PVV0JiZWdD9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsdCk6ZnVuY3Rpb24oZSxuKXtpZihXdClyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IVJ0JiZBdChlLG4pPyhlPW50KCksZXQ9Sm49Wm49bnVsbCxXdD0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEobi5jdHJsS2V5fHxuLmFsdEtleXx8bi5tZXRhS2V5KXx8bi5jdHJsS2V5JiZuLmFsdEtleSl7aWYobi5jaGFyJiYxPG4uY2hhci5sZW5ndGgpcmV0dXJuIG4uY2hhcgo7aWYobi53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShuLndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gT3QmJiJrbyIhPT1uLmxvY2FsZT9udWxsOm4uZGF0YX19KGUsdCkpJiYoMDwocj0kcihyLCJvbkJlZm9yZUlucHV0IikpLmxlbmd0aCYmKGw9bmV3IGt0KCJvbkJlZm9yZUlucHV0IiwiYmVmb3JlaW5wdXQiLG51bGwsdCxsKSx1LnB1c2goe2V2ZW50OmwsbGlzdGVuZXJzOnJ9KSxsLmRhdGE9eSkpfVVyKHUsbil9KSl9ZnVuY3Rpb24ganIoZSxuLHQpe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOm4sY3VycmVudFRhcmdldDp0fX1mdW5jdGlvbiAkcihlLG4pe2Zvcih2YXIgdD1uKyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIGw9ZSxhPWwuc3RhdGVOb2RlOzU9PT1sLnRhZyYmbnVsbCE9PWEmJihsPWEsbnVsbCE9KGE9TWUoZSx0KSkmJnIudW5zaGlmdChqcihlLGEsbCkpLG51bGwhPShhPU1lKGUsbikpJiZyLnB1c2goanIoZSxhLGwpKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBxcihlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtkb3tlPWUucmV0dXJufXdoaWxlKGUmJjUhPT1lLnRhZyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gS3IoZSxuLHQscixsKXtmb3IodmFyIGE9bi5fcmVhY3ROYW1lLHU9W107bnVsbCE9PXQmJnQhPT1yOyl7dmFyIG89dCxpPW8uYWx0ZXJuYXRlLHM9by5zdGF0ZU5vZGU7aWYobnVsbCE9PWkmJmk9PT1yKWJyZWFrOzU9PT1vLnRhZyYmbnVsbCE9PXMmJihvPXMsbD9udWxsIT0oaT1NZSh0LGEpKSYmdS51bnNoaWZ0KGpyKHQsaSxvKSk6bHx8bnVsbCE9KGk9TWUodCxhKSkmJnUucHVzaChqcih0LGksbykpKSx0PXQucmV0dXJufTAhPT11Lmxlbmd0aCYmZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp1fSl9dmFyIFlyPS9cclxuPy9nLFhyPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gR3IoZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoWXIsIlxuIikucmVwbGFjZShYciwiIil9ZnVuY3Rpb24gWnIoZSxuLHQpe2lmKG49R3IobiksR3IoZSkhPT1uJiZ0KXRocm93IEVycm9yKGEoNDI1KSl9ZnVuY3Rpb24gSnIoKXt9dmFyIGVsPW51bGwsbmw9bnVsbDtmdW5jdGlvbiB0bChlLG4pe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiBuLmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIG4uY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBybD0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCxsbD0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsYWw9ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsdWw9ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PWFsP2Z1bmN0aW9uKGUpe3JldHVybiBhbC5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2gob2wpfTpybDtmdW5jdGlvbiBvbChlKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Rocm93IGV9KSl9ZnVuY3Rpb24gaWwoZSxuKXt2YXIgdD1uLHI9MDtkb3t2YXIgbD10Lm5leHRTaWJsaW5nO2lmKGUucmVtb3ZlQ2hpbGQodCksbCYmOD09PWwubm9kZVR5cGUpaWYoIi8kIj09PSh0PWwuZGF0YSkpe2lmKDA9PT1yKXJldHVybiBlLnJlbW92ZUNoaWxkKGwpLHZvaWQgSG4obik7ci0tfWVsc2UiJCIhPT10JiYiJD8iIT09dCYmIiQhIiE9PXR8fHIrKzt0PWx9d2hpbGUodCk7SG4obil9ZnVuY3Rpb24gc2woZSl7Zm9yKDtudWxsIT1lO2U9ZS5uZXh0U2libGluZyl7dmFyIG49ZS5ub2RlVHlwZTtpZigxPT09bnx8Mz09PW4pYnJlYWs7aWYoOD09PW4pe2lmKCIkIj09PShuPWUuZGF0YSl8fCIkISI9PT1ufHwiJD8iPT09bilicmVhaztpZigiLyQiPT09bilyZXR1cm4gbnVsbH19cmV0dXJuIGV9ZnVuY3Rpb24gY2woZSl7ZT1lLnByZXZpb3VzU2libGluZztmb3IodmFyIG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiJCI9PT10fHwiJCEiPT09dHx8IiQ/Ij09PXQpe2lmKDA9PT1uKXJldHVybiBlO24tLX1lbHNlIi8kIj09PXQmJm4rK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfXZhciBmbD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSxkbD0iX19yZWFjdEZpYmVyJCIrZmwscGw9Il9fcmVhY3RQcm9wcyQiK2ZsLG1sPSJfX3JlYWN0Q29udGFpbmVyJCIrZmwsaGw9Il9fcmVhY3RFdmVudHMkIitmbCxnbD0iX19yZWFjdExpc3RlbmVycyQiK2ZsLHZsPSJfX3JlYWN0SGFuZGxlcyQiK2ZsO2Z1bmN0aW9uIHlsKGUpe3ZhciBuPWVbZGxdO2lmKG4pcmV0dXJuIG47Zm9yKHZhciB0PWUucGFyZW50Tm9kZTt0Oyl7aWYobj10W21sXXx8dFtkbF0pe2lmKHQ9bi5hbHRlcm5hdGUsbnVsbCE9PW4uY2hpbGR8fG51bGwhPT10JiZudWxsIT09dC5jaGlsZClmb3IoZT1jbChlKTtudWxsIT09ZTspe2lmKHQ9ZVtkbF0pcmV0dXJuIHQ7ZT1jbChlKX1yZXR1cm4gbn10PShlPXQpLnBhcmVudE5vZGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYmwoZSl7cmV0dXJuIShlPWVbZGxdfHxlW21sXSl8fDUhPT1lLnRhZyYmNiE9PWUudGFnJiYxMyE9PWUudGFnJiYzIT09ZS50YWc/bnVsbDplfWZ1bmN0aW9uIGtsKGUpe2lmKDU9PT1lLnRhZ3x8Nj09PWUudGFnKXJldHVybiBlLnN0YXRlTm9kZTt0aHJvdyBFcnJvcihhKDMzKSl9ZnVuY3Rpb24gd2woZSl7cmV0dXJuIGVbcGxdfHxudWxsfXZhciBTbD1bXSx4bD0tMTtmdW5jdGlvbiBFbChlKXtyZXR1cm57Y3VycmVudDplfX1mdW5jdGlvbiBDbChlKXswPnhsfHwoZS5jdXJyZW50PVNsW3hsXSxTbFt4bF09bnVsbCx4bC0tKX1mdW5jdGlvbiB6bChlLG4pe3hsKyssU2xbeGxdPWUuY3VycmVudCxlLmN1cnJlbnQ9bn0KdmFyIE5sPXt9LF9sPUVsKE5sKSxQbD1FbCghMSksVGw9Tmw7ZnVuY3Rpb24gTGwoZSxuKXt2YXIgdD1lLnR5cGUuY29udGV4dFR5cGVzO2lmKCF0KXJldHVybiBObDt2YXIgcj1lLnN0YXRlTm9kZTtpZihyJiZyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkVW5tYXNrZWRDaGlsZENvbnRleHQ9PT1uKXJldHVybiByLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWFza2VkQ2hpbGRDb250ZXh0O3ZhciBsLGE9e307Zm9yKGwgaW4gdClhW2xdPW5bbF07cmV0dXJuIHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1uLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksYX1mdW5jdGlvbiBNbChlKXtyZXR1cm4gbnVsbCE9KGU9ZS5jaGlsZENvbnRleHRUeXBlcyl9ZnVuY3Rpb24gRmwoKXtDbChQbCksQ2woX2wpfWZ1bmN0aW9uIFJsKGUsbix0KXtpZihfbC5jdXJyZW50IT09TmwpdGhyb3cgRXJyb3IoYSgxNjgpKTt6bChfbCxuKSx6bChQbCx0KX1mdW5jdGlvbiBEbChlLG4sdCl7dmFyIHI9ZS5zdGF0ZU5vZGU7aWYobj1uLmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiByLmdldENoaWxkQ29udGV4dClyZXR1cm4gdDtmb3IodmFyIGwgaW4gcj1yLmdldENoaWxkQ29udGV4dCgpKWlmKCEobCBpbiBuKSl0aHJvdyBFcnJvcihhKDEwOCxIKGUpfHwiVW5rbm93biIsbCkpO3JldHVybiBPKHt9LHQscil9ZnVuY3Rpb24gSWwoZSl7cmV0dXJuIGU9KGU9ZS5zdGF0ZU5vZGUpJiZlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0fHxObCxUbD1fbC5jdXJyZW50LHpsKF9sLGUpLHpsKFBsLFBsLmN1cnJlbnQpLCEwfWZ1bmN0aW9uIE9sKGUsbix0KXt2YXIgcj1lLnN0YXRlTm9kZTtpZighcil0aHJvdyBFcnJvcihhKDE2OSkpO3Q/KGU9RGwoZSxuLFRsKSxyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0PWUsQ2woUGwpLENsKF9sKSx6bChfbCxlKSk6Q2woUGwpLHpsKFBsLHQpfXZhciBVbD1udWxsLFZsPSExLEFsPSExO2Z1bmN0aW9uIEJsKGUpe251bGw9PT1VbD9VbD1bZV06VWwucHVzaChlKX1mdW5jdGlvbiBXbCgpe2lmKCFBbCYmbnVsbCE9PVVsKXtBbD0hMDt2YXIgZT0wLG49a247dHJ5e3ZhciB0PVVsO2Zvcihrbj0xO2U8dC5sZW5ndGg7ZSsrKXt2YXIgcj10W2VdO2Rve3I9cighMCl9d2hpbGUobnVsbCE9PXIpfVVsPW51bGwsVmw9ITF9Y2F0Y2gobil7dGhyb3cgbnVsbCE9PVVsJiYoVWw9VWwuc2xpY2UoZSsxKSkscWUoSmUsV2wpLG59ZmluYWxseXtrbj1uLEFsPSExfX1yZXR1cm4gbnVsbH12YXIgSGw9W10sUWw9MCxqbD1udWxsLCRsPTAscWw9W10sS2w9MCxZbD1udWxsLFhsPTEsR2w9IiI7ZnVuY3Rpb24gWmwoZSxuKXtIbFtRbCsrXT0kbCxIbFtRbCsrXT1qbCxqbD1lLCRsPW59ZnVuY3Rpb24gSmwoZSxuLHQpe3FsW0tsKytdPVhsLHFsW0tsKytdPUdsLHFsW0tsKytdPVlsLFlsPWU7dmFyIHI9WGw7ZT1HbDt2YXIgbD0zMi11bihyKS0xO3ImPX4oMTw8bCksdCs9MTt2YXIgYT0zMi11bihuKStsO2lmKDMwPGEpe3ZhciB1PWwtbCU1O2E9KHImKDE8PHUpLTEpLnRvU3RyaW5nKDMyKSxyPj49dSxsLT11LFhsPTE8PDMyLXVuKG4pK2x8dDw8bHxyLEdsPWErZX1lbHNlIFhsPTE8PGF8dDw8bHxyLEdsPWV9ZnVuY3Rpb24gZWEoZSl7bnVsbCE9PWUucmV0dXJuJiYoWmwoZSwxKSxKbChlLDEsMCkpfWZ1bmN0aW9uIG5hKGUpe2Zvcig7ZT09PWpsOylqbD1IbFstLVFsXSxIbFtRbF09bnVsbCwkbD1IbFstLVFsXSxIbFtRbF09bnVsbDtmb3IoO2U9PT1ZbDspWWw9cWxbLS1LbF0scWxbS2xdPW51bGwsR2w9cWxbLS1LbF0scWxbS2xdPW51bGwsWGw9cWxbLS1LbF0scWxbS2xdPW51bGx9dmFyIHRhPW51bGwscmE9bnVsbCxsYT0hMSxhYT1udWxsO2Z1bmN0aW9uIHVhKGUsbil7dmFyIHQ9THMoNSxudWxsLG51bGwsMCk7dC5lbGVtZW50VHlwZT0iREVMRVRFRCIsdC5zdGF0ZU5vZGU9bix0LnJldHVybj1lLG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpfWZ1bmN0aW9uIG9hKGUsbil7c3dpdGNoKGUudGFnKXtjYXNlIDU6dmFyIHQ9ZS50eXBlO3JldHVybiBudWxsIT09KG49MSE9PW4ubm9kZVR5cGV8fHQudG9Mb3dlckNhc2UoKSE9PW4ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT9udWxsOm4pJiYoZS5zdGF0ZU5vZGU9bix0YT1lLHJhPXNsKG4uZmlyc3RDaGlsZCksITApO2Nhc2UgNjpyZXR1cm4gbnVsbCE9PShuPSIiPT09ZS5wZW5kaW5nUHJvcHN8fDMhPT1uLm5vZGVUeXBlP251bGw6bikmJihlLnN0YXRlTm9kZT1uLHRhPWUscmE9bnVsbCwhMCk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PShuPTghPT1uLm5vZGVUeXBlP251bGw6bikmJih0PW51bGwhPT1ZbD97aWQ6WGwsb3ZlcmZsb3c6R2x9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOm4sdHJlZUNvbnRleHQ6dCxyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKHQ9THMoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9bix0LnJldHVybj1lLGUuY2hpbGQ9dCx0YT1lLHJhPW51bGwsITApO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGlhKGUpe3JldHVybiEoISgxJmUubW9kZSl8fDEyOCZlLmZsYWdzKX1mdW5jdGlvbiBzYShlKXtpZihsYSl7dmFyIG49cmE7aWYobil7dmFyIHQ9bjtpZighb2EoZSxuKSl7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtuPXNsKHQubmV4dFNpYmxpbmcpO3ZhciByPXRhO24mJm9hKGUsbik/dWEocix0KTooZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsbGE9ITEsdGE9ZSl9fWVsc2V7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixsYT0hMSx0YT1lfX19ZnVuY3Rpb24gY2EoZSl7Zm9yKGU9ZS5yZXR1cm47bnVsbCE9PWUmJjUhPT1lLnRhZyYmMyE9PWUudGFnJiYxMyE9PWUudGFnOyllPWUucmV0dXJuO3RhPWV9ZnVuY3Rpb24gZmEoZSl7aWYoZSE9PXRhKXJldHVybiExO2lmKCFsYSlyZXR1cm4gY2EoZSksbGE9ITAsITE7dmFyIG4KO2lmKChuPTMhPT1lLnRhZykmJiEobj01IT09ZS50YWcpJiYobj0iaGVhZCIhPT0obj1lLnR5cGUpJiYiYm9keSIhPT1uJiYhdGwoZS50eXBlLGUubWVtb2l6ZWRQcm9wcykpLG4mJihuPXJhKSl7aWYoaWEoZSkpdGhyb3cgZGEoKSxFcnJvcihhKDQxOCkpO2Zvcig7bjspdWEoZSxuKSxuPXNsKG4ubmV4dFNpYmxpbmcpfWlmKGNhKGUpLDEzPT09ZS50YWcpe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IoYSgzMTcpKTtlOntmb3IoZT1lLm5leHRTaWJsaW5nLG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiLyQiPT09dCl7aWYoMD09PW4pe3JhPXNsKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9bi0tfWVsc2UiJCIhPT10JiYiJCEiIT09dCYmIiQ/IiE9PXR8fG4rK31lPWUubmV4dFNpYmxpbmd9cmE9bnVsbH19ZWxzZSByYT10YT9zbChlLnN0YXRlTm9kZS5uZXh0U2libGluZyk6bnVsbDtyZXR1cm4hMH1mdW5jdGlvbiBkYSgpe2Zvcih2YXIgZT1yYTtlOyllPXNsKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHBhKCl7cmE9dGE9bnVsbCxsYT0hMX1mdW5jdGlvbiBtYShlKXtudWxsPT09YWE/YWE9W2VdOmFhLnB1c2goZSl9dmFyIGhhPWsuUmVhY3RDdXJyZW50QmF0Y2hDb25maWc7ZnVuY3Rpb24gZ2EoZSxuKXtpZihlJiZlLmRlZmF1bHRQcm9wcyl7Zm9yKHZhciB0IGluIG49Tyh7fSxuKSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW5bdF0mJihuW3RdPWVbdF0pO3JldHVybiBufXJldHVybiBufXZhciB2YT1FbChudWxsKSx5YT1udWxsLGJhPW51bGwsa2E9bnVsbDtmdW5jdGlvbiB3YSgpe2thPWJhPXlhPW51bGx9ZnVuY3Rpb24gU2EoZSl7dmFyIG49dmEuY3VycmVudDtDbCh2YSksZS5fY3VycmVudFZhbHVlPW59ZnVuY3Rpb24geGEoZSxuLHQpe2Zvcig7bnVsbCE9PWU7KXt2YXIgcj1lLmFsdGVybmF0ZTtpZigoZS5jaGlsZExhbmVzJm4pIT09bj8oZS5jaGlsZExhbmVzfD1uLG51bGwhPT1yJiYoci5jaGlsZExhbmVzfD1uKSk6bnVsbCE9PXImJihyLmNoaWxkTGFuZXMmbikhPT1uJiYoci5jaGlsZExhbmVzfD1uKSxlPT09dClicmVhaztlPWUucmV0dXJufX1mdW5jdGlvbiBFYShlLG4pe3lhPWUsa2E9YmE9bnVsbCxudWxsIT09KGU9ZS5kZXBlbmRlbmNpZXMpJiZudWxsIT09ZS5maXJzdENvbnRleHQmJighIShlLmxhbmVzJm4pJiYoa289ITApLGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIENhKGUpe3ZhciBuPWUuX2N1cnJlbnRWYWx1ZTtpZihrYSE9PWUpaWYoZT17Y29udGV4dDplLG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1iYSl7aWYobnVsbD09PXlhKXRocm93IEVycm9yKGEoMzA4KSk7YmE9ZSx5YS5kZXBlbmRlbmNpZXM9e2xhbmVzOjAsZmlyc3RDb250ZXh0OmV9fWVsc2UgYmE9YmEubmV4dD1lO3JldHVybiBufXZhciB6YT1udWxsO2Z1bmN0aW9uIE5hKGUpe251bGw9PT16YT96YT1bZV06emEucHVzaChlKX1mdW5jdGlvbiBfYShlLG4sdCxyKXt2YXIgbD1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09bD8odC5uZXh0PXQsTmEobikpOih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxuLmludGVybGVhdmVkPXQsUGEoZSxyKX1mdW5jdGlvbiBQYShlLG4pe2UubGFuZXN8PW47dmFyIHQ9ZS5hbHRlcm5hdGU7Zm9yKG51bGwhPT10JiYodC5sYW5lc3w9biksdD1lLGU9ZS5yZXR1cm47bnVsbCE9PWU7KWUuY2hpbGRMYW5lc3w9bixudWxsIT09KHQ9ZS5hbHRlcm5hdGUpJiYodC5jaGlsZExhbmVzfD1uKSx0PWUsZT1lLnJldHVybjtyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlOm51bGx9dmFyIFRhPSExO2Z1bmN0aW9uIExhKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxpbnRlcmxlYXZlZDpudWxsLGxhbmVzOjB9LGVmZmVjdHM6bnVsbH19ZnVuY3Rpb24gTWEoZSxuKXtlPWUudXBkYXRlUXVldWUsbi51cGRhdGVRdWV1ZT09PWUmJihuLnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGVmZmVjdHM6ZS5lZmZlY3RzfSl9ZnVuY3Rpb24gRmEoZSxuKXtyZXR1cm57ZXZlbnRUaW1lOmUsbGFuZTpuLHRhZzowLHBheWxvYWQ6bnVsbCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH19ZnVuY3Rpb24gUmEoZSxuLHQpe3ZhciByPWUudXBkYXRlUXVldWU7aWYobnVsbD09PXIpcmV0dXJuIG51bGw7aWYocj1yLnNoYXJlZCwyJl9pKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP24ubmV4dD1uOihuLm5leHQ9bC5uZXh0LGwubmV4dD1uKSxyLnBlbmRpbmc9bixQYShlLHQpfXJldHVybiBudWxsPT09KGw9ci5pbnRlcmxlYXZlZCk/KG4ubmV4dD1uLE5hKHIpKToobi5uZXh0PWwubmV4dCxsLm5leHQ9biksci5pbnRlcmxlYXZlZD1uLFBhKGUsdCl9ZnVuY3Rpb24gRGEoZSxuLHQpe2lmKG51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKSYmKG49bi5zaGFyZWQsNDE5NDI0MCZ0KSl7dmFyIHI9bi5sYW5lczt0fD1yJj1lLnBlbmRpbmdMYW5lcyxuLmxhbmVzPXQsYm4oZSx0KX19ZnVuY3Rpb24gSWEoZSxuKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJnQ9PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PSh0PXQuZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIHU9e2V2ZW50VGltZTp0LmV2ZW50VGltZSxsYW5lOnQubGFuZSx0YWc6dC50YWcscGF5bG9hZDp0LnBheWxvYWQsY2FsbGJhY2s6dC5jYWxsYmFjayxuZXh0Om51bGx9O251bGw9PT1hP2w9YT11OmE9YS5uZXh0PXUsdD10Lm5leHR9d2hpbGUobnVsbCE9PXQpO251bGw9PT1hP2w9YT1uOmE9YS5uZXh0PW59ZWxzZSBsPWE9bjtyZXR1cm4gdD17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsCnNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sdm9pZChlLnVwZGF0ZVF1ZXVlPXQpfW51bGw9PT0oZT10Lmxhc3RCYXNlVXBkYXRlKT90LmZpcnN0QmFzZVVwZGF0ZT1uOmUubmV4dD1uLHQubGFzdEJhc2VVcGRhdGU9bn1mdW5jdGlvbiBPYShlLG4sdCxyKXt2YXIgbD1lLnVwZGF0ZVF1ZXVlO1RhPSExO3ZhciBhPWwuZmlyc3RCYXNlVXBkYXRlLHU9bC5sYXN0QmFzZVVwZGF0ZSxvPWwuc2hhcmVkLnBlbmRpbmc7aWYobnVsbCE9PW8pe2wuc2hhcmVkLnBlbmRpbmc9bnVsbDt2YXIgaT1vLHM9aS5uZXh0O2kubmV4dD1udWxsLG51bGw9PT11P2E9czp1Lm5leHQ9cyx1PWk7dmFyIGM9ZS5hbHRlcm5hdGU7bnVsbCE9PWMmJigobz0oYz1jLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT11JiYobnVsbD09PW8/Yy5maXJzdEJhc2VVcGRhdGU9czpvLm5leHQ9cyxjLmxhc3RCYXNlVXBkYXRlPWkpKX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKHU9MCxjPXM9aT1udWxsLG89YTs7KXt2YXIgZD1vLmxhbmUscD1vLmV2ZW50VGltZTtpZigociZkKT09PWQpe251bGwhPT1jJiYoYz1jLm5leHQ9e2V2ZW50VGltZTpwLGxhbmU6MCx0YWc6by50YWcscGF5bG9hZDpvLnBheWxvYWQsY2FsbGJhY2s6by5jYWxsYmFjayxuZXh0Om51bGx9KTtlOnt2YXIgbT1lLGg9bztzd2l0Y2goZD1uLHA9dCxoLnRhZyl7Y2FzZSAxOmlmKCJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCkpe2Y9bS5jYWxsKHAsZixkKTticmVhayBlfWY9bTticmVhayBlO2Nhc2UgMzptLmZsYWdzPS02NTUzNyZtLmZsYWdzfDEyODtjYXNlIDA6aWYobnVsbD09KGQ9ImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKT9tLmNhbGwocCxmLGQpOm0pKWJyZWFrIGU7Zj1PKHt9LGYsZCk7YnJlYWsgZTtjYXNlIDI6VGE9ITB9fW51bGwhPT1vLmNhbGxiYWNrJiYwIT09by5sYW5lJiYoZS5mbGFnc3w9NjQsbnVsbD09PShkPWwuZWZmZWN0cyk/bC5lZmZlY3RzPVtvXTpkLnB1c2gobykpfWVsc2UgcD17ZXZlbnRUaW1lOnAsbGFuZTpkLHRhZzpvLnRhZyxwYXlsb2FkOm8ucGF5bG9hZCxjYWxsYmFjazpvLmNhbGxiYWNrLG5leHQ6bnVsbH0sbnVsbD09PWM/KHM9Yz1wLGk9Zik6Yz1jLm5leHQ9cCx1fD1kO2lmKG51bGw9PT0obz1vLm5leHQpKXtpZihudWxsPT09KG89bC5zaGFyZWQucGVuZGluZykpYnJlYWs7bz0oZD1vKS5uZXh0LGQubmV4dD1udWxsLGwubGFzdEJhc2VVcGRhdGU9ZCxsLnNoYXJlZC5wZW5kaW5nPW51bGx9fWlmKG51bGw9PT1jJiYoaT1mKSxsLmJhc2VTdGF0ZT1pLGwuZmlyc3RCYXNlVXBkYXRlPXMsbC5sYXN0QmFzZVVwZGF0ZT1jLG51bGwhPT0obj1sLnNoYXJlZC5pbnRlcmxlYXZlZCkpe2w9bjtkb3t1fD1sLmxhbmUsbD1sLm5leHR9d2hpbGUobCE9PW4pfWVsc2UgbnVsbD09PWEmJihsLnNoYXJlZC5sYW5lcz0wKTtJaXw9dSxlLmxhbmVzPXUsZS5tZW1vaXplZFN0YXRlPWZ9fWZ1bmN0aW9uIFVhKGUsbix0KXtpZihlPW4uZWZmZWN0cyxuLmVmZmVjdHM9bnVsbCxudWxsIT09ZSlmb3Iobj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5jYWxsYmFjaztpZihudWxsIT09bCl7aWYoci5jYWxsYmFjaz1udWxsLHI9dCwiZnVuY3Rpb24iIT10eXBlb2YgbCl0aHJvdyBFcnJvcihhKDE5MSxsKSk7bC5jYWxsKHIpfX19dmFyIFZhPShuZXcgci5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gQWEoZSxuLHQscil7dD1udWxsPT0odD10KHIsbj1lLm1lbW9pemVkU3RhdGUpKT9uOk8oe30sbix0KSxlLm1lbW9pemVkU3RhdGU9dCwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPXQpfXZhciBCYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZXZShlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EucGF5bG9hZD1uLG51bGwhPXQmJihhLmNhbGxiYWNrPXQpLG51bGwhPT0obj1SYShlLGEsbCkpJiYodHMobixlLGwsciksRGEobixlLGwpKX0sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EudGFnPTEsYS5wYXlsb2FkPW4sbnVsbCE9dCYmKGEuY2FsbGJhY2s9dCksbnVsbCE9PShuPVJhKGUsYSxsKSkmJih0cyhuLGUsbCxyKSxEYShuLGUsbCkpfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oZSxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciB0PWVzKCkscj1ucyhlKSxsPUZhKHQscik7bC50YWc9MixudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KG49UmEoZSxsLHIpKSYmKHRzKG4sZSxyLHQpLERhKG4sZSxyKSl9fTtmdW5jdGlvbiBXYShlLG4sdCxyLGwsYSx1KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSx1KTohbi5wcm90b3R5cGV8fCFuLnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudHx8KCFpcih0LHIpfHwhaXIobCxhKSl9ZnVuY3Rpb24gSGEoZSxuLHQpe3ZhciByPSExLGw9TmwsYT1uLmNvbnRleHRUeXBlO3JldHVybiJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/YT1DYShhKToobD1NbChuKT9UbDpfbC5jdXJyZW50LGE9KHI9bnVsbCE9KHI9bi5jb250ZXh0VHlwZXMpKT9MbChlLGwpOk5sKSxuPW5ldyBuKHQsYSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT1uLnN0YXRlJiZ2b2lkIDAhPT1uLnN0YXRlP24uc3RhdGU6bnVsbCxuLnVwZGF0ZXI9QmEsZS5zdGF0ZU5vZGU9bixuLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1sLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksbn1mdW5jdGlvbiBRYShlLG4sdCxyKXtlPW4uc3RhdGUsCiJmdW5jdGlvbiI9PXR5cGVvZiBuLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJm4uY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyh0LHIpLCJmdW5jdGlvbiI9PXR5cGVvZiBuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKHQsciksbi5zdGF0ZSE9PWUmJkJhLmVucXVldWVSZXBsYWNlU3RhdGUobixuLnN0YXRlLG51bGwpfWZ1bmN0aW9uIGphKGUsbix0LHIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucHJvcHM9dCxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxsLnJlZnM9VmEsTGEoZSk7dmFyIGE9bi5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2wuY29udGV4dD1DYShhKTooYT1NbChuKT9UbDpfbC5jdXJyZW50LGwuY29udGV4dD1MbChlLGEpKSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2YoYT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihBYShlLG4sYSx0KSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgbC5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGwuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwuY29tcG9uZW50V2lsbE1vdW50fHwobj1sLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudFdpbGxNb3VudCYmbC5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgbC5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZsLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxuIT09bC5zdGF0ZSYmQmEuZW5xdWV1ZVJlcGxhY2VTdGF0ZShsLGwuc3RhdGUsbnVsbCksT2EoZSx0LGwsciksbC5zdGF0ZT1lLm1lbW9pemVkU3RhdGUpLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudERpZE1vdW50JiYoZS5mbGFnc3w9NDE5NDMwOCl9ZnVuY3Rpb24gJGEoZSxuLHQpe2lmKG51bGwhPT0oZT10LnJlZikmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIGUpe2lmKHQuX293bmVyKXtpZih0PXQuX293bmVyKXtpZigxIT09dC50YWcpdGhyb3cgRXJyb3IoYSgzMDkpKTt2YXIgcj10LnN0YXRlTm9kZX1pZighcil0aHJvdyBFcnJvcihhKDE0NyxlKSk7dmFyIGw9cix1PSIiK2U7cmV0dXJuIG51bGwhPT1uJiZudWxsIT09bi5yZWYmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnJlZiYmbi5yZWYuX3N0cmluZ1JlZj09PXU/bi5yZWY6KG49ZnVuY3Rpb24oZSl7dmFyIG49bC5yZWZzO249PT1WYSYmKG49bC5yZWZzPXt9KSxudWxsPT09ZT9kZWxldGUgblt1XTpuW3VdPWV9LG4uX3N0cmluZ1JlZj11LG4pfWlmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBFcnJvcihhKDI4NCkpO2lmKCF0Ll9vd25lcil0aHJvdyBFcnJvcihhKDI5MCxlKSl9cmV0dXJuIGV9ZnVuY3Rpb24gcWEoZSxuKXt0aHJvdyBlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChuKSxFcnJvcihhKDMxLCJbb2JqZWN0IE9iamVjdF0iPT09ZT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyhuKS5qb2luKCIsICIpKyJ9IjplKSl9ZnVuY3Rpb24gS2EoZSl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9ZnVuY3Rpb24gWWEoZSl7ZnVuY3Rpb24gbihuLHQpe2lmKGUpe3ZhciByPW4uZGVsZXRpb25zO251bGw9PT1yPyhuLmRlbGV0aW9ucz1bdF0sbi5mbGFnc3w9MTYpOnIucHVzaCh0KX19ZnVuY3Rpb24gdCh0LHIpe2lmKCFlKXJldHVybiBudWxsO2Zvcig7bnVsbCE9PXI7KW4odCxyKSxyPXIuc2libGluZztyZXR1cm4gbnVsbH1mdW5jdGlvbiByKGUsbil7Zm9yKGU9bmV3IE1hcDtudWxsIT09bjspbnVsbCE9PW4ua2V5P2Uuc2V0KG4ua2V5LG4pOmUuc2V0KG4uaW5kZXgsbiksbj1uLnNpYmxpbmc7cmV0dXJuIGV9ZnVuY3Rpb24gbChlLG4pe3JldHVybihlPUZzKGUsbikpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiB1KG4sdCxyKXtyZXR1cm4gbi5pbmRleD1yLGU/bnVsbCE9PShyPW4uYWx0ZXJuYXRlKT8ocj1yLmluZGV4KTx0PyhuLmZsYWdzfD0yLHQpOnI6KG4uZmxhZ3N8PTIsdCk6KG4uZmxhZ3N8PTEwNDg1NzYsdCl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gZSYmbnVsbD09PW4uYWx0ZXJuYXRlJiYobi5mbGFnc3w9Miksbn1mdW5jdGlvbiBpKGUsbix0LHIpe3JldHVybiBudWxsPT09bnx8NiE9PW4udGFnPygobj1Pcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gcyhlLG4sdCxyKXt2YXIgYT10LnR5cGU7cmV0dXJuIGE9PT14P2YoZSxuLHQucHJvcHMuY2hpbGRyZW4scix0LmtleSk6bnVsbCE9PW4mJihuLmVsZW1lbnRUeXBlPT09YXx8Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmYS4kJHR5cGVvZj09PU0mJkthKGEpPT09bi50eXBlKT8oKHI9bChuLHQucHJvcHMpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscik6KChyPVJzKHQudHlwZSx0LmtleSx0LnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gYyhlLG4sdCxyKXtyZXR1cm4gbnVsbD09PW58fDQhPT1uLnRhZ3x8bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PXQuY29udGFpbmVySW5mb3x8bi5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT10LmltcGxlbWVudGF0aW9uPygobj1Vcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0LmNoaWxkcmVufHxbXSkpLnJldHVybj1lLG4pfWZ1bmN0aW9uIGYoZSxuLHQscixhKXtyZXR1cm4gbnVsbD09PW58fDchPT1uLnRhZz8oKG49RHModCxlLm1vZGUscixhKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gZChlLG4sdCl7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4obj1PcygiIituLGUubW9kZSx0KSkucmV0dXJuPWUsbjtpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXsKc3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4odD1ScyhuLnR5cGUsbi5rZXksbi5wcm9wcyxudWxsLGUubW9kZSx0KSkucmVmPSRhKGUsbnVsbCxuKSx0LnJldHVybj1lLHQ7Y2FzZSBTOnJldHVybihuPVVzKG4sZS5tb2RlLHQpKS5yZXR1cm49ZSxuO2Nhc2UgTTpyZXR1cm4gZChlLCgwLG4uX2luaXQpKG4uX3BheWxvYWQpLHQpfWlmKG5lKG4pfHxEKG4pKXJldHVybihuPURzKG4sZS5tb2RlLHQsbnVsbCkpLnJldHVybj1lLG47cWEoZSxuKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsbix0LHIpe3ZhciBsPW51bGwhPT1uP24ua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gbnVsbCE9PWw/bnVsbDppKGUsbiwiIit0LHIpO2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe3N3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIHc6cmV0dXJuIHQua2V5PT09bD9zKGUsbix0LHIpOm51bGw7Y2FzZSBTOnJldHVybiB0LmtleT09PWw/YyhlLG4sdCxyKTpudWxsO2Nhc2UgTTpyZXR1cm4gcChlLG4sKGw9dC5faW5pdCkodC5fcGF5bG9hZCkscil9aWYobmUodCl8fEQodCkpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLG4sdCxyLG51bGwpO3FhKGUsdCl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLG4sdCxyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHIpcmV0dXJuIGkobixlPWUuZ2V0KHQpfHxudWxsLCIiK3IsbCk7aWYoIm9iamVjdCI9PXR5cGVvZiByJiZudWxsIT09cil7c3dpdGNoKHIuJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4gcyhuLGU9ZS5nZXQobnVsbD09PXIua2V5P3Q6ci5rZXkpfHxudWxsLHIsbCk7Y2FzZSBTOnJldHVybiBjKG4sZT1lLmdldChudWxsPT09ci5rZXk/dDpyLmtleSl8fG51bGwscixsKTtjYXNlIE06cmV0dXJuIG0oZSxuLHQsKDAsci5faW5pdCkoci5fcGF5bG9hZCksbCl9aWYobmUocil8fEQocikpcmV0dXJuIGYobixlPWUuZ2V0KHQpfHxudWxsLHIsbCxudWxsKTtxYShuLHIpfXJldHVybiBudWxsfWZ1bmN0aW9uIGgobCxhLG8saSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9YSxoPWE9MCxnPW51bGw7bnVsbCE9PWYmJmg8by5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLG9baF0saSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJm4obCxmKSxhPXUodixhLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1vLmxlbmd0aClyZXR1cm4gdChsLGYpLGxhJiZabChsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxvLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxvW2hdLGkpKSYmKGE9dShmLGEsaCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIGxhJiZabChsLGgpLHN9Zm9yKGY9cihsLGYpO2g8by5sZW5ndGg7aCsrKW51bGwhPT0oZz1tKGYsbCxoLG9baF0saSkpJiYoZSYmbnVsbCE9PWcuYWx0ZXJuYXRlJiZmLmRlbGV0ZShudWxsPT09Zy5rZXk/aDpnLmtleSksYT11KGcsYSxoKSxudWxsPT09Yz9zPWc6Yy5zaWJsaW5nPWcsYz1nKTtyZXR1cm4gZSYmZi5mb3JFYWNoKChmdW5jdGlvbihlKXtyZXR1cm4gbihsLGUpfSkpLGxhJiZabChsLGgpLHN9ZnVuY3Rpb24gZyhsLG8saSxzKXt2YXIgYz1EKGkpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBjKXRocm93IEVycm9yKGEoMTUwKSk7aWYobnVsbD09KGk9Yy5jYWxsKGkpKSl0aHJvdyBFcnJvcihhKDE1MSkpO2Zvcih2YXIgZj1jPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJm4obCxoKSxvPXUoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gdChsLGgpLGxhJiZabChsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz11KHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gbGEmJlpsKGwsZyksY31mb3IoaD1yKGwsaCk7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9bShoLGwsZyx5LnZhbHVlLHMpKSYmKGUmJm51bGwhPT15LmFsdGVybmF0ZSYmaC5kZWxldGUobnVsbD09PXkua2V5P2c6eS5rZXkpLG89dSh5LG8sZyksbnVsbD09PWY/Yz15OmYuc2libGluZz15LGY9eSk7cmV0dXJuIGUmJmguZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIG4obCxlKX0pKSxsYSYmWmwobCxnKSxjfXJldHVybiBmdW5jdGlvbiBlKHIsYSx1LGkpe2lmKCJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJnUudHlwZT09PXgmJm51bGw9PT11LmtleSYmKHU9dS5wcm9wcy5jaGlsZHJlbiksIm9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSl7c3dpdGNoKHUuJCR0eXBlb2Ype2Nhc2UgdzplOntmb3IodmFyIHM9dS5rZXksYz1hO251bGwhPT1jOyl7aWYoYy5rZXk9PT1zKXtpZigocz11LnR5cGUpPT09eCl7aWYoNz09PWMudGFnKXt0KHIsYy5zaWJsaW5nKSwoYT1sKGMsdS5wcm9wcy5jaGlsZHJlbikpLnJldHVybj1yLHI9YTticmVhayBlfX1lbHNlIGlmKGMuZWxlbWVudFR5cGU9PT1zfHwib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zJiZzLiQkdHlwZW9mPT09TSYmS2Eocyk9PT1jLnR5cGUpe3QocixjLnNpYmxpbmcpLChhPWwoYyx1LnByb3BzKSkucmVmPSRhKHIsYyx1KSxhLnJldHVybj1yLHI9YTticmVhayBlfXQocixjKTticmVha31uKHIsYyksYz1jLnNpYmxpbmd9dS50eXBlPT09eD8oKGE9RHModS5wcm9wcy5jaGlsZHJlbixyLm1vZGUsaSx1LmtleSkpLnJldHVybj1yLHI9YSk6KChpPVJzKHUudHlwZSx1LmtleSx1LnByb3BzLG51bGwsci5tb2RlLGkpKS5yZWY9JGEocixhLHUpLAppLnJldHVybj1yLHI9aSl9cmV0dXJuIG8ocik7Y2FzZSBTOmU6e2ZvcihjPXUua2V5O251bGwhPT1hOyl7aWYoYS5rZXk9PT1jKXtpZig0PT09YS50YWcmJmEuc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT11LmNvbnRhaW5lckluZm8mJmEuc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09dS5pbXBsZW1lbnRhdGlvbil7dChyLGEuc2libGluZyksKGE9bChhLHUuY2hpbGRyZW58fFtdKSkucmV0dXJuPXIscj1hO2JyZWFrIGV9dChyLGEpO2JyZWFrfW4ocixhKSxhPWEuc2libGluZ30oYT1Vcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hfXJldHVybiBvKHIpO2Nhc2UgTTpyZXR1cm4gZShyLGEsKGM9dS5faW5pdCkodS5fcGF5bG9hZCksaSl9aWYobmUodSkpcmV0dXJuIGgocixhLHUsaSk7aWYoRCh1KSlyZXR1cm4gZyhyLGEsdSxpKTtxYShyLHUpfXJldHVybiJzdHJpbmciPT10eXBlb2YgdSYmIiIhPT11fHwibnVtYmVyIj09dHlwZW9mIHU/KHU9IiIrdSxudWxsIT09YSYmNj09PWEudGFnPyh0KHIsYS5zaWJsaW5nKSwoYT1sKGEsdSkpLnJldHVybj1yLHI9YSk6KHQocixhKSwoYT1Pcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hKSxvKHIpKTp0KHIsYSl9fXZhciBYYT1ZYSghMCksR2E9WWEoITEpLFphPXt9LEphPUVsKFphKSxldT1FbChaYSksbnU9RWwoWmEpO2Z1bmN0aW9uIHR1KGUpe2lmKGU9PT1aYSl0aHJvdyBFcnJvcihhKDE3NCkpO3JldHVybiBlfWZ1bmN0aW9uIHJ1KGUsbil7c3dpdGNoKHpsKG51LG4pLHpsKGV1LGUpLHpsKEphLFphKSxlPW4ubm9kZVR5cGUpe2Nhc2UgOTpjYXNlIDExOm49KG49bi5kb2N1bWVudEVsZW1lbnQpP24ubmFtZXNwYWNlVVJJOmllKG51bGwsIiIpO2JyZWFrO2RlZmF1bHQ6bj1pZShuPShlPTg9PT1lP24ucGFyZW50Tm9kZTpuKS5uYW1lc3BhY2VVUkl8fG51bGwsZT1lLnRhZ05hbWUpfUNsKEphKSx6bChKYSxuKX1mdW5jdGlvbiBsdSgpe0NsKEphKSxDbChldSksQ2wobnUpfWZ1bmN0aW9uIGF1KGUpe3R1KG51LmN1cnJlbnQpO3ZhciBuPXR1KEphLmN1cnJlbnQpLHQ9aWUobixlLnR5cGUpO24hPT10JiYoemwoZXUsZSksemwoSmEsdCkpfWZ1bmN0aW9uIHV1KGUpe2V1LmN1cnJlbnQ9PT1lJiYoQ2woSmEpLENsKGV1KSl9dmFyIG91PUVsKDApO2Z1bmN0aW9uIGl1KGUpe2Zvcih2YXIgbj1lO251bGwhPT1uOyl7aWYoMTM9PT1uLnRhZyl7dmFyIHQ9bi5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10JiYobnVsbD09PSh0PXQuZGVoeWRyYXRlZCl8fCIkPyI9PT10LmRhdGF8fCIkISI9PT10LmRhdGEpKXJldHVybiBufWVsc2UgaWYoMTk9PT1uLnRhZyYmdm9pZCAwIT09bi5tZW1vaXplZFByb3BzLnJldmVhbE9yZGVyKXtpZigxMjgmbi5mbGFncylyZXR1cm4gbn1lbHNlIGlmKG51bGwhPT1uLmNoaWxkKXtuLmNoaWxkLnJldHVybj1uLG49bi5jaGlsZDtjb250aW51ZX1pZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHN1PVtdO2Z1bmN0aW9uIGN1KCl7Zm9yKHZhciBlPTA7ZTxzdS5sZW5ndGg7ZSsrKXN1W2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7c3UubGVuZ3RoPTB9dmFyIGZ1PWsuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixkdT1rLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHB1PTAsbXU9bnVsbCxodT1udWxsLGd1PW51bGwsdnU9ITEseXU9ITEsYnU9MCxrdT0wO2Z1bmN0aW9uIHd1KCl7dGhyb3cgRXJyb3IoYSgzMjEpKX1mdW5jdGlvbiBTdShlLG4pe2lmKG51bGw9PT1uKXJldHVybiExO2Zvcih2YXIgdD0wO3Q8bi5sZW5ndGgmJnQ8ZS5sZW5ndGg7dCsrKWlmKCFvcihlW3RdLG5bdF0pKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIHh1KGUsbix0LHIsbCx1KXtpZihwdT11LG11PW4sbi5tZW1vaXplZFN0YXRlPW51bGwsbi51cGRhdGVRdWV1ZT1udWxsLG4ubGFuZXM9MCxmdS5jdXJyZW50PW51bGw9PT1lfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlP3VvOm9vLGU9dChyLGwpLHl1KXt1PTA7ZG97aWYoeXU9ITEsYnU9MCwyNTw9dSl0aHJvdyBFcnJvcihhKDMwMSkpO3UrPTEsZ3U9aHU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsZnUuY3VycmVudD1pbyxlPXQocixsKX13aGlsZSh5dSl9aWYoZnUuY3VycmVudD1hbyxuPW51bGwhPT1odSYmbnVsbCE9PWh1Lm5leHQscHU9MCxndT1odT1tdT1udWxsLHZ1PSExLG4pdGhyb3cgRXJyb3IoYSgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFdSgpe3ZhciBlPTAhPT1idTtyZXR1cm4gYnU9MCxlfWZ1bmN0aW9uIEN1KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1ndT9tdS5tZW1vaXplZFN0YXRlPWd1PWU6Z3U9Z3UubmV4dD1lLGd1fWZ1bmN0aW9uIHp1KCl7aWYobnVsbD09PWh1KXt2YXIgZT1tdS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9aHUubmV4dDt2YXIgbj1udWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZTpndS5uZXh0O2lmKG51bGwhPT1uKWd1PW4saHU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKGEoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooaHU9ZSkubWVtb2l6ZWRTdGF0ZSxiYXNlU3RhdGU6aHUuYmFzZVN0YXRlLGJhc2VRdWV1ZTpodS5iYXNlUXVldWUscXVldWU6aHUucXVldWUsbmV4dDpudWxsfSxudWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZT1ndT1lOmd1PWd1Lm5leHQ9ZX1yZXR1cm4gZ3V9ZnVuY3Rpb24gTnUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uKGUpOm59ZnVuY3Rpb24gX3UoZSl7dmFyIG49enUoKSx0PW4ucXVldWU7aWYobnVsbD09PXQpdGhyb3cgRXJyb3IoYSgzMTEpKTt0Lmxhc3RSZW5kZXJlZFJlZHVjZXI9ZTt2YXIgcj1odSxsPXIuYmFzZVF1ZXVlLHU9dC5wZW5kaW5nO2lmKG51bGwhPT11KXtpZihudWxsIT09bCl7dmFyIG89bC5uZXh0CjtsLm5leHQ9dS5uZXh0LHUubmV4dD1vfXIuYmFzZVF1ZXVlPWw9dSx0LnBlbmRpbmc9bnVsbH1pZihudWxsIT09bCl7dT1sLm5leHQscj1yLmJhc2VTdGF0ZTt2YXIgaT1vPW51bGwscz1udWxsLGM9dTtkb3t2YXIgZj1jLmxhbmU7aWYoKHB1JmYpPT09ZiludWxsIT09cyYmKHM9cy5uZXh0PXtsYW5lOjAsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLHI9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTplKHIsYy5hY3Rpb24pO2Vsc2V7dmFyIGQ9e2xhbmU6ZixhY3Rpb246Yy5hY3Rpb24saGFzRWFnZXJTdGF0ZTpjLmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTpjLmVhZ2VyU3RhdGUsbmV4dDpudWxsfTtudWxsPT09cz8oaT1zPWQsbz1yKTpzPXMubmV4dD1kLG11LmxhbmVzfD1mLElpfD1mfWM9Yy5uZXh0fXdoaWxlKG51bGwhPT1jJiZjIT09dSk7bnVsbD09PXM/bz1yOnMubmV4dD1pLG9yKHIsbi5tZW1vaXplZFN0YXRlKXx8KGtvPSEwKSxuLm1lbW9pemVkU3RhdGU9cixuLmJhc2VTdGF0ZT1vLG4uYmFzZVF1ZXVlPXMsdC5sYXN0UmVuZGVyZWRTdGF0ZT1yfWlmKG51bGwhPT0oZT10LmludGVybGVhdmVkKSl7bD1lO2Rve3U9bC5sYW5lLG11LmxhbmVzfD11LElpfD11LGw9bC5uZXh0fXdoaWxlKGwhPT1lKX1lbHNlIG51bGw9PT1sJiYodC5sYW5lcz0wKTtyZXR1cm5bbi5tZW1vaXplZFN0YXRlLHQuZGlzcGF0Y2hdfWZ1bmN0aW9uIFB1KGUpe3ZhciBuPXp1KCksdD1uLnF1ZXVlO2lmKG51bGw9PT10KXRocm93IEVycm9yKGEoMzExKSk7dC5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9dC5kaXNwYXRjaCxsPXQucGVuZGluZyx1PW4ubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7dC5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG97dT1lKHUsby5hY3Rpb24pLG89by5uZXh0fXdoaWxlKG8hPT1sKTtvcih1LG4ubWVtb2l6ZWRTdGF0ZSl8fChrbz0hMCksbi5tZW1vaXplZFN0YXRlPXUsbnVsbD09PW4uYmFzZVF1ZXVlJiYobi5iYXNlU3RhdGU9dSksdC5sYXN0UmVuZGVyZWRTdGF0ZT11fXJldHVyblt1LHJdfWZ1bmN0aW9uIFR1KCl7fWZ1bmN0aW9uIEx1KGUsbil7dmFyIHQ9bXUscj16dSgpLGw9bigpLHU9IW9yKHIubWVtb2l6ZWRTdGF0ZSxsKTtpZih1JiYoci5tZW1vaXplZFN0YXRlPWwsa289ITApLHI9ci5xdWV1ZSxIdShSdS5iaW5kKG51bGwsdCxyLGUpLFtlXSksci5nZXRTbmFwc2hvdCE9PW58fHV8fG51bGwhPT1ndSYmMSZndS5tZW1vaXplZFN0YXRlLnRhZyl7aWYodC5mbGFnc3w9MjA0OCxVdSg5LEZ1LmJpbmQobnVsbCx0LHIsbCxuKSx2b2lkIDAsbnVsbCksbnVsbD09PVBpKXRocm93IEVycm9yKGEoMzQ5KSk7MzAmcHV8fE11KHQsbixsKX1yZXR1cm4gbH1mdW5jdGlvbiBNdShlLG4sdCl7ZS5mbGFnc3w9MTYzODQsZT17Z2V0U25hcHNob3Q6bix2YWx1ZTp0fSxudWxsPT09KG49bXUudXBkYXRlUXVldWUpPyhuPXtsYXN0RWZmZWN0Om51bGwsc3RvcmVzOm51bGx9LG11LnVwZGF0ZVF1ZXVlPW4sbi5zdG9yZXM9W2VdKTpudWxsPT09KHQ9bi5zdG9yZXMpP24uc3RvcmVzPVtlXTp0LnB1c2goZSl9ZnVuY3Rpb24gRnUoZSxuLHQscil7bi52YWx1ZT10LG4uZ2V0U25hcHNob3Q9cixEdShuKSYmSXUoZSl9ZnVuY3Rpb24gUnUoZSxuLHQpe3JldHVybiB0KChmdW5jdGlvbigpe0R1KG4pJiZJdShlKX0pKX1mdW5jdGlvbiBEdShlKXt2YXIgbj1lLmdldFNuYXBzaG90O2U9ZS52YWx1ZTt0cnl7dmFyIHQ9bigpO3JldHVybiFvcihlLHQpfWNhdGNoKGUpe3JldHVybiEwfX1mdW5jdGlvbiBJdShlKXt2YXIgbj1QYShlLDEpO251bGwhPT1uJiZ0cyhuLGUsMSwtMSl9ZnVuY3Rpb24gT3UoZSl7dmFyIG49Q3UoKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKGU9ZSgpKSxuLm1lbW9pemVkU3RhdGU9bi5iYXNlU3RhdGU9ZSxlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjpOdSxsYXN0UmVuZGVyZWRTdGF0ZTplfSxuLnF1ZXVlPWUsZT1lLmRpc3BhdGNoPW5vLmJpbmQobnVsbCxtdSxlKSxbbi5tZW1vaXplZFN0YXRlLGVdfWZ1bmN0aW9uIFV1KGUsbix0LHIpe3JldHVybiBlPXt0YWc6ZSxjcmVhdGU6bixkZXN0cm95OnQsZGVwczpyLG5leHQ6bnVsbH0sbnVsbD09PShuPW11LnVwZGF0ZVF1ZXVlKT8obj17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSxtdS51cGRhdGVRdWV1ZT1uLG4ubGFzdEVmZmVjdD1lLm5leHQ9ZSk6bnVsbD09PSh0PW4ubGFzdEVmZmVjdCk/bi5sYXN0RWZmZWN0PWUubmV4dD1lOihyPXQubmV4dCx0Lm5leHQ9ZSxlLm5leHQ9cixuLmxhc3RFZmZlY3Q9ZSksZX1mdW5jdGlvbiBWdSgpe3JldHVybiB6dSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gQXUoZSxuLHQscil7dmFyIGw9Q3UoKTttdS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9VXUoMXxuLHQsdm9pZCAwLHZvaWQgMD09PXI/bnVsbDpyKX1mdW5jdGlvbiBCdShlLG4sdCxyKXt2YXIgbD16dSgpO3I9dm9pZCAwPT09cj9udWxsOnI7dmFyIGE9dm9pZCAwO2lmKG51bGwhPT1odSl7dmFyIHU9aHUubWVtb2l6ZWRTdGF0ZTtpZihhPXUuZGVzdHJveSxudWxsIT09ciYmU3Uocix1LmRlcHMpKXJldHVybiB2b2lkKGwubWVtb2l6ZWRTdGF0ZT1VdShuLHQsYSxyKSl9bXUuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPVV1KDF8bix0LGEscil9ZnVuY3Rpb24gV3UoZSxuKXtyZXR1cm4gQXUoODM5MDY1Niw4LGUsbil9ZnVuY3Rpb24gSHUoZSxuKXtyZXR1cm4gQnUoMjA0OCw4LGUsbil9ZnVuY3Rpb24gUXUoZSxuKXtyZXR1cm4gQnUoNCwyLGUsbil9ZnVuY3Rpb24ganUoZSxuKXtyZXR1cm4gQnUoNCw0LGUsbil9ZnVuY3Rpb24gJHUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj8oZT1lKCksbihlKSxmdW5jdGlvbigpe24obnVsbCl9KTpudWxsIT1uPyhlPWUoKSxuLmN1cnJlbnQ9ZSxmdW5jdGlvbigpe24uY3VycmVudD1udWxsfSk6dm9pZCAwfWZ1bmN0aW9uIHF1KGUsbix0KXsKcmV0dXJuIHQ9bnVsbCE9dD90LmNvbmNhdChbZV0pOm51bGwsQnUoNCw0LCR1LmJpbmQobnVsbCxuLGUpLHQpfWZ1bmN0aW9uIEt1KCl7fWZ1bmN0aW9uIFl1KGUsbil7dmFyIHQ9enUoKTtuPXZvaWQgMD09PW4/bnVsbDpuO3ZhciByPXQubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXImJm51bGwhPT1uJiZTdShuLHJbMV0pP3JbMF06KHQubWVtb2l6ZWRTdGF0ZT1bZSxuXSxlKX1mdW5jdGlvbiBYdShlLG4pe3ZhciB0PXp1KCk7bj12b2lkIDA9PT1uP251bGw6bjt2YXIgcj10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09biYmU3UobixyWzFdKT9yWzBdOihlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZSl9ZnVuY3Rpb24gR3UoZSxuLHQpe3JldHVybiAyMSZwdT8ob3IodCxuKXx8KHQ9Z24oKSxtdS5sYW5lc3w9dCxJaXw9dCxlLmJhc2VTdGF0ZT0hMCksbik6KGUuYmFzZVN0YXRlJiYoZS5iYXNlU3RhdGU9ITEsa289ITApLGUubWVtb2l6ZWRTdGF0ZT10KX1mdW5jdGlvbiBadShlLG4pe3ZhciB0PWtuO2tuPTAhPT10JiY0PnQ/dDo0LGUoITApO3ZhciByPWR1LnRyYW5zaXRpb247ZHUudHJhbnNpdGlvbj17fTt0cnl7ZSghMSksbigpfWZpbmFsbHl7a249dCxkdS50cmFuc2l0aW9uPXJ9fWZ1bmN0aW9uIEp1KCl7cmV0dXJuIHp1KCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBlbyhlLG4sdCl7dmFyIHI9bnMoZSk7aWYodD17bGFuZTpyLGFjdGlvbjp0LGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sdG8oZSkpcm8obix0KTtlbHNlIGlmKG51bGwhPT0odD1fYShlLG4sdCxyKSkpe3RzKHQsZSxyLGVzKCkpLGxvKHQsbixyKX19ZnVuY3Rpb24gbm8oZSxuLHQpe3ZhciByPW5zKGUpLGw9e2xhbmU6cixhY3Rpb246dCxoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9O2lmKHRvKGUpKXJvKG4sbCk7ZWxzZXt2YXIgYT1lLmFsdGVybmF0ZTtpZigwPT09ZS5sYW5lcyYmKG51bGw9PT1hfHwwPT09YS5sYW5lcykmJm51bGwhPT0oYT1uLmxhc3RSZW5kZXJlZFJlZHVjZXIpKXRyeXt2YXIgdT1uLmxhc3RSZW5kZXJlZFN0YXRlLG89YSh1LHQpO2lmKGwuaGFzRWFnZXJTdGF0ZT0hMCxsLmVhZ2VyU3RhdGU9byxvcihvLHUpKXt2YXIgaT1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09aT8obC5uZXh0PWwsTmEobikpOihsLm5leHQ9aS5uZXh0LGkubmV4dD1sKSx2b2lkKG4uaW50ZXJsZWF2ZWQ9bCl9fWNhdGNoKGUpe31udWxsIT09KHQ9X2EoZSxuLGwscikpJiYodHModCxlLHIsbD1lcygpKSxsbyh0LG4scikpfX1mdW5jdGlvbiB0byhlKXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gZT09PW11fHxudWxsIT09biYmbj09PW11fWZ1bmN0aW9uIHJvKGUsbil7eXU9dnU9ITA7dmFyIHQ9ZS5wZW5kaW5nO251bGw9PT10P24ubmV4dD1uOihuLm5leHQ9dC5uZXh0LHQubmV4dD1uKSxlLnBlbmRpbmc9bn1mdW5jdGlvbiBsbyhlLG4sdCl7aWYoNDE5NDI0MCZ0KXt2YXIgcj1uLmxhbmVzO3R8PXImPWUucGVuZGluZ0xhbmVzLG4ubGFuZXM9dCxibihlLHQpfX12YXIgYW89e3JlYWRDb250ZXh0OkNhLHVzZUNhbGxiYWNrOnd1LHVzZUNvbnRleHQ6d3UsdXNlRWZmZWN0Ond1LHVzZUltcGVyYXRpdmVIYW5kbGU6d3UsdXNlSW5zZXJ0aW9uRWZmZWN0Ond1LHVzZUxheW91dEVmZmVjdDp3dSx1c2VNZW1vOnd1LHVzZVJlZHVjZXI6d3UsdXNlUmVmOnd1LHVzZVN0YXRlOnd1LHVzZURlYnVnVmFsdWU6d3UsdXNlRGVmZXJyZWRWYWx1ZTp3dSx1c2VUcmFuc2l0aW9uOnd1LHVzZU11dGFibGVTb3VyY2U6d3UsdXNlU3luY0V4dGVybmFsU3RvcmU6d3UsdXNlSWQ6d3UsdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSx1bz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6ZnVuY3Rpb24oZSxuKXtyZXR1cm4gQ3UoKS5tZW1vaXplZFN0YXRlPVtlLHZvaWQgMD09PW4/bnVsbDpuXSxlfSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpXdSx1c2VJbXBlcmF0aXZlSGFuZGxlOmZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gdD1udWxsIT10P3QuY29uY2F0KFtlXSk6bnVsbCxBdSg0MTk0MzA4LDQsJHUuYmluZChudWxsLG4sZSksdCl9LHVzZUxheW91dEVmZmVjdDpmdW5jdGlvbihlLG4pe3JldHVybiBBdSg0MTk0MzA4LDQsZSxuKX0sdXNlSW5zZXJ0aW9uRWZmZWN0OmZ1bmN0aW9uKGUsbil7cmV0dXJuIEF1KDQsMixlLG4pfSx1c2VNZW1vOmZ1bmN0aW9uKGUsbil7dmFyIHQ9Q3UoKTtyZXR1cm4gbj12b2lkIDA9PT1uP251bGw6bixlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZX0sdXNlUmVkdWNlcjpmdW5jdGlvbihlLG4sdCl7dmFyIHI9Q3UoKTtyZXR1cm4gbj12b2lkIDAhPT10P3Qobik6bixyLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bixlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOm59LHIucXVldWU9ZSxlPWUuZGlzcGF0Y2g9ZW8uYmluZChudWxsLG11LGUpLFtyLm1lbW9pemVkU3RhdGUsZV19LHVzZVJlZjpmdW5jdGlvbihlKXtyZXR1cm4gZT17Y3VycmVudDplfSxDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlU3RhdGU6T3UsdXNlRGVidWdWYWx1ZTpLdSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3JldHVybiBDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3ZhciBlPU91KCExKSxuPWVbMF07cmV0dXJuIGU9WnUuYmluZChudWxsLGVbMV0pLEN1KCkubWVtb2l6ZWRTdGF0ZT1lLFtuLGVdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLG4sdCl7dmFyIHI9bXUsbD1DdSgpO2lmKGxhKXtpZih2b2lkIDA9PT10KXRocm93IEVycm9yKGEoNDA3KSk7dD10KCl9ZWxzZXtpZih0PW4oKSxudWxsPT09UGkpdGhyb3cgRXJyb3IoYSgzNDkpKTszMCZwdXx8TXUocixuLHQpfWwubWVtb2l6ZWRTdGF0ZT10O3ZhciB1PXt2YWx1ZTp0LGdldFNuYXBzaG90Om59O3JldHVybiBsLnF1ZXVlPXUsCld1KFJ1LmJpbmQobnVsbCxyLHUsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LFV1KDksRnUuYmluZChudWxsLHIsdSx0LG4pLHZvaWQgMCxudWxsKSx0fSx1c2VJZDpmdW5jdGlvbigpe3ZhciBlPUN1KCksbj1QaS5pZGVudGlmaWVyUHJlZml4O2lmKGxhKXt2YXIgdD1HbDtuPSI6IituKyJSIisodD0oWGwmfigxPDwzMi11bihYbCktMSkpLnRvU3RyaW5nKDMyKSt0KSwwPCh0PWJ1KyspJiYobis9IkgiK3QudG9TdHJpbmcoMzIpKSxuKz0iOiJ9ZWxzZSBuPSI6IituKyJyIisodD1rdSsrKS50b1N0cmluZygzMikrIjoiO3JldHVybiBlLm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxvbz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6WXUsdXNlQ29udGV4dDpDYSx1c2VFZmZlY3Q6SHUsdXNlSW1wZXJhdGl2ZUhhbmRsZTpxdSx1c2VJbnNlcnRpb25FZmZlY3Q6UXUsdXNlTGF5b3V0RWZmZWN0Omp1LHVzZU1lbW86WHUsdXNlUmVkdWNlcjpfdSx1c2VSZWY6VnUsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gX3UoTnUpfSx1c2VEZWJ1Z1ZhbHVlOkt1LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEd1KHp1KCksaHUubWVtb2l6ZWRTdGF0ZSxlKX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3JldHVybltfdShOdSlbMF0senUoKS5tZW1vaXplZFN0YXRlXX0sdXNlTXV0YWJsZVNvdXJjZTpUdSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpMdSx1c2VJZDpKdSx1bnN0YWJsZV9pc05ld1JlY29uY2lsZXI6ITF9LGlvPXtyZWFkQ29udGV4dDpDYSx1c2VDYWxsYmFjazpZdSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpIdSx1c2VJbXBlcmF0aXZlSGFuZGxlOnF1LHVzZUluc2VydGlvbkVmZmVjdDpRdSx1c2VMYXlvdXRFZmZlY3Q6anUsdXNlTWVtbzpYdSx1c2VSZWR1Y2VyOlB1LHVzZVJlZjpWdSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQdShOdSl9LHVzZURlYnVnVmFsdWU6S3UsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlKXt2YXIgbj16dSgpO3JldHVybiBudWxsPT09aHU/bi5tZW1vaXplZFN0YXRlPWU6R3UobixodS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1B1KE51KVswXSx6dSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOlR1LHVzZVN5bmNFeHRlcm5hbFN0b3JlOkx1LHVzZUlkOkp1LHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gc28oZSxuKXt0cnl7dmFyIHQ9IiIscj1uO2Rve3QrPUIocikscj1yLnJldHVybn13aGlsZShyKTt2YXIgbD10fWNhdGNoKGUpe2w9IlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfXJldHVybnt2YWx1ZTplLHNvdXJjZTpuLHN0YWNrOmwsZGlnZXN0Om51bGx9fWZ1bmN0aW9uIGNvKGUsbix0KXtyZXR1cm57dmFsdWU6ZSxzb3VyY2U6bnVsbCxzdGFjazpudWxsIT10P3Q6bnVsbCxkaWdlc3Q6bnVsbCE9bj9uOm51bGx9fWZ1bmN0aW9uIGZvKGUsbil7dHJ5e2NvbnNvbGUuZXJyb3Iobi52YWx1ZSl9Y2F0Y2goZSl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0aHJvdyBlfSkpfX12YXIgcG89ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtNYXA/V2Vha01hcDpNYXA7ZnVuY3Rpb24gbW8oZSxuLHQpeyh0PUZhKC0xLHQpKS50YWc9Myx0LnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH07dmFyIHI9bi52YWx1ZTtyZXR1cm4gdC5jYWxsYmFjaz1mdW5jdGlvbigpe1FpfHwoUWk9ITAsamk9ciksZm8oMCxuKX0sdH1mdW5jdGlvbiBobyhlLG4sdCl7KHQ9RmEoLTEsdCkpLnRhZz0zO3ZhciByPWUudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBsPW4udmFsdWU7dC5wYXlsb2FkPWZ1bmN0aW9uKCl7cmV0dXJuIHIobCl9LHQuY2FsbGJhY2s9ZnVuY3Rpb24oKXtmbygwLG4pfX12YXIgYT1lLnN0YXRlTm9kZTtyZXR1cm4gbnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYodC5jYWxsYmFjaz1mdW5jdGlvbigpe2ZvKDAsbiksImZ1bmN0aW9uIiE9dHlwZW9mIHImJihudWxsPT09JGk/JGk9bmV3IFNldChbdGhpc10pOiRpLmFkZCh0aGlzKSk7dmFyIGU9bi5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKG4udmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLHR9ZnVuY3Rpb24gZ28oZSxuLHQpe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyBwbzt2YXIgbD1uZXcgU2V0O3Iuc2V0KG4sbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldChuKSkmJihsPW5ldyBTZXQsci5zZXQobixsKSk7bC5oYXModCl8fChsLmFkZCh0KSxlPUNzLmJpbmQobnVsbCxlLG4sdCksbi50aGVuKGUsZSkpfWZ1bmN0aW9uIHZvKGUpe2Rve3ZhciBuO2lmKChuPTEzPT09ZS50YWcpJiYobj1udWxsPT09KG49ZS5tZW1vaXplZFN0YXRlKXx8bnVsbCE9PW4uZGVoeWRyYXRlZCksbilyZXR1cm4gZTtlPWUucmV0dXJufXdoaWxlKG51bGwhPT1lKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiB5byhlLG4sdCxyLGwpe3JldHVybiAxJmUubW9kZT8oZS5mbGFnc3w9NjU1MzYsZS5sYW5lcz1sLGUpOihlPT09bj9lLmZsYWdzfD02NTUzNjooZS5mbGFnc3w9MTI4LHQuZmxhZ3N8PTEzMTA3Mix0LmZsYWdzJj0tNTI4MDUsMT09PXQudGFnJiYobnVsbD09PXQuYWx0ZXJuYXRlP3QudGFnPTE3Oigobj1GYSgtMSwxKSkudGFnPTIsUmEodCxuLDEpKSksdC5sYW5lc3w9MSksZSl9dmFyIGJvPWsuUmVhY3RDdXJyZW50T3duZXIsa289ITE7ZnVuY3Rpb24gd28oZSxuLHQscil7bi5jaGlsZD1udWxsPT09ZT9HYShuLG51bGwsdCxyKTpYYShuLGUuY2hpbGQsdCxyKX1mdW5jdGlvbiBTbyhlLG4sdCxyLGwpe3Q9dC5yZW5kZXI7dmFyIGE9bi5yZWY7cmV0dXJuIEVhKG4sbCkscj14dShlLG4sdCxyLGEsbCksdD1FdSgpLG51bGw9PT1lfHxrbz8obGEmJnQmJmVhKG4pLG4uZmxhZ3N8PTEsd28oZSxuLHIsbCksbi5jaGlsZCk6KG4udXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSxuLmZsYWdzJj0tMjA1MywKZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiB4byhlLG4sdCxyLGwpe2lmKG51bGw9PT1lKXt2YXIgYT10LnR5cGU7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIGF8fE1zKGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PXQuY29tcGFyZXx8dm9pZCAwIT09dC5kZWZhdWx0UHJvcHM/KChlPVJzKHQudHlwZSxudWxsLHIsbixuLm1vZGUsbCkpLnJlZj1uLnJlZixlLnJldHVybj1uLG4uY2hpbGQ9ZSk6KG4udGFnPTE1LG4udHlwZT1hLEVvKGUsbixhLHIsbCkpfWlmKGE9ZS5jaGlsZCwhKGUubGFuZXMmbCkpe3ZhciB1PWEubWVtb2l6ZWRQcm9wcztpZigodD1udWxsIT09KHQ9dC5jb21wYXJlKT90OmlyKSh1LHIpJiZlLnJlZj09PW4ucmVmKXJldHVybiBRbyhlLG4sbCl9cmV0dXJuIG4uZmxhZ3N8PTEsKGU9RnMoYSxyKSkucmVmPW4ucmVmLGUucmV0dXJuPW4sbi5jaGlsZD1lfWZ1bmN0aW9uIEVvKGUsbix0LHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihpcihhLHIpJiZlLnJlZj09PW4ucmVmKXtpZihrbz0hMSxuLnBlbmRpbmdQcm9wcz1yPWEsIShlLmxhbmVzJmwpKXJldHVybiBuLmxhbmVzPWUubGFuZXMsUW8oZSxuLGwpOzEzMTA3MiZlLmZsYWdzJiYoa289ITApfX1yZXR1cm4gTm8oZSxuLHQscixsKX1mdW5jdGlvbiBDbyhlLG4sdCl7dmFyIHI9bi5wZW5kaW5nUHJvcHMsbD1yLmNoaWxkcmVuLGE9bnVsbCE9PWU/ZS5tZW1vaXplZFN0YXRlOm51bGw7aWYoImhpZGRlbiI9PT1yLm1vZGUpaWYoMSZuLm1vZGUpe2lmKCEoMTA3Mzc0MTgyNCZ0KSlyZXR1cm4gZT1udWxsIT09YT9hLmJhc2VMYW5lc3x0OnQsbi5sYW5lcz1uLmNoaWxkTGFuZXM9MTA3Mzc0MTgyNCxuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczplLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LG4udXBkYXRlUXVldWU9bnVsbCx6bChGaSxNaSksTWl8PWUsbnVsbDtuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHI9bnVsbCE9PWE/YS5iYXNlTGFuZXM6dCx6bChGaSxNaSksTWl8PXJ9ZWxzZSBuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHpsKEZpLE1pKSxNaXw9dDtlbHNlIG51bGwhPT1hPyhyPWEuYmFzZUxhbmVzfHQsbi5tZW1vaXplZFN0YXRlPW51bGwpOnI9dCx6bChGaSxNaSksTWl8PXI7cmV0dXJuIHdvKGUsbixsLHQpLG4uY2hpbGR9ZnVuY3Rpb24gem8oZSxuKXt2YXIgdD1uLnJlZjsobnVsbD09PWUmJm51bGwhPT10fHxudWxsIT09ZSYmZS5yZWYhPT10KSYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKX1mdW5jdGlvbiBObyhlLG4sdCxyLGwpe3ZhciBhPU1sKHQpP1RsOl9sLmN1cnJlbnQ7cmV0dXJuIGE9TGwobixhKSxFYShuLGwpLHQ9eHUoZSxuLHQscixhLGwpLHI9RXUoKSxudWxsPT09ZXx8a28/KGxhJiZyJiZlYShuKSxuLmZsYWdzfD0xLHdvKGUsbix0LGwpLG4uY2hpbGQpOihuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbi5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiBfbyhlLG4sdCxyLGwpe2lmKE1sKHQpKXt2YXIgYT0hMDtJbChuKX1lbHNlIGE9ITE7aWYoRWEobixsKSxudWxsPT09bi5zdGF0ZU5vZGUpSG8oZSxuKSxIYShuLHQsciksamEobix0LHIsbCkscj0hMDtlbHNlIGlmKG51bGw9PT1lKXt2YXIgdT1uLnN0YXRlTm9kZSxvPW4ubWVtb2l6ZWRQcm9wczt1LnByb3BzPW87dmFyIGk9dS5jb250ZXh0LHM9dC5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zP3M9Q2Eocyk6cz1MbChuLHM9TWwodCk/VGw6X2wuY3VycmVudCk7dmFyIGM9dC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMsZj0iZnVuY3Rpb24iPT10eXBlb2YgY3x8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGU7Znx8ImZ1bmN0aW9uIiE9dHlwZW9mIHUuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fChvIT09cnx8aSE9PXMpJiZRYShuLHUscixzKSxUYT0hMTt2YXIgZD1uLm1lbW9pemVkU3RhdGU7dS5zdGF0ZT1kLE9hKG4scix1LGwpLGk9bi5tZW1vaXplZFN0YXRlLG8hPT1yfHxkIT09aXx8UGwuY3VycmVudHx8VGE/KCJmdW5jdGlvbiI9PXR5cGVvZiBjJiYoQWEobix0LGMsciksaT1uLm1lbW9pemVkU3RhdGUpLChvPVRhfHxXYShuLHQsbyxyLGQsaSxzKSk/KGZ8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudHx8KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudCYmdS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZ1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSksImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSk6KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZE1vdW50JiYobi5mbGFnc3w9NDE5NDMwOCksbi5tZW1vaXplZFByb3BzPXIsbi5tZW1vaXplZFN0YXRlPWkpLHUucHJvcHM9cix1LnN0YXRlPWksdS5jb250ZXh0PXMscj1vKTooImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSxyPSExKX1lbHNle3U9bi5zdGF0ZU5vZGUsTWEoZSxuKSxvPW4ubWVtb2l6ZWRQcm9wcyxzPW4udHlwZT09PW4uZWxlbWVudFR5cGU/bzpnYShuLnR5cGUsbyksdS5wcm9wcz1zLGY9bi5wZW5kaW5nUHJvcHMsZD11LmNvbnRleHQsIm9iamVjdCI9PXR5cGVvZihpPXQuY29udGV4dFR5cGUpJiZudWxsIT09aT9pPUNhKGkpOmk9TGwobixpPU1sKHQpP1RsOl9sLmN1cnJlbnQpO3ZhciBwPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzCjsoYz0iZnVuY3Rpb24iPT10eXBlb2YgcHx8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIHUuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09aSkmJlFhKG4sdSxyLGkpLFRhPSExLGQ9bi5tZW1vaXplZFN0YXRlLHUuc3RhdGU9ZCxPYShuLHIsdSxsKTt2YXIgbT1uLm1lbW9pemVkU3RhdGU7byE9PWZ8fGQhPT1tfHxQbC5jdXJyZW50fHxUYT8oImZ1bmN0aW9uIj09dHlwZW9mIHAmJihBYShuLHQscCxyKSxtPW4ubWVtb2l6ZWRTdGF0ZSksKHM9VGF8fFdhKG4sdCxzLHIsZCxtLGkpfHwhMSk/KGN8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiYiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnRXaWxsVXBkYXRlfHwoImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxpKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZShyLG0saSkpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZSYmKG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlJiYobi5mbGFnc3w9MTAyNCkpOigiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnREaWRVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fChuLmZsYWdzfD00KSwiZnVuY3Rpb24iIT10eXBlb2YgdS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTEwMjQpLG4ubWVtb2l6ZWRQcm9wcz1yLG4ubWVtb2l6ZWRTdGF0ZT1tKSx1LnByb3BzPXIsdS5zdGF0ZT1tLHUuY29udGV4dD1pLHI9cyk6KCJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwobi5mbGFnc3w9MTAyNCkscj0hMSl9cmV0dXJuIFBvKGUsbix0LHIsYSxsKX1mdW5jdGlvbiBQbyhlLG4sdCxyLGwsYSl7em8oZSxuKTt2YXIgdT0hISgxMjgmbi5mbGFncyk7aWYoIXImJiF1KXJldHVybiBsJiZPbChuLHQsITEpLFFvKGUsbixhKTtyPW4uc3RhdGVOb2RlLGJvLmN1cnJlbnQ9bjt2YXIgbz11JiYiZnVuY3Rpb24iIT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDpyLnJlbmRlcigpO3JldHVybiBuLmZsYWdzfD0xLG51bGwhPT1lJiZ1PyhuLmNoaWxkPVhhKG4sZS5jaGlsZCxudWxsLGEpLG4uY2hpbGQ9WGEobixudWxsLG8sYSkpOndvKGUsbixvLGEpLG4ubWVtb2l6ZWRTdGF0ZT1yLnN0YXRlLGwmJk9sKG4sdCwhMCksbi5jaGlsZH1mdW5jdGlvbiBUbyhlKXt2YXIgbj1lLnN0YXRlTm9kZTtuLnBlbmRpbmdDb250ZXh0P1JsKDAsbi5wZW5kaW5nQ29udGV4dCxuLnBlbmRpbmdDb250ZXh0IT09bi5jb250ZXh0KTpuLmNvbnRleHQmJlJsKDAsbi5jb250ZXh0LCExKSxydShlLG4uY29udGFpbmVySW5mbyl9ZnVuY3Rpb24gTG8oZSxuLHQscixsKXtyZXR1cm4gcGEoKSxtYShsKSxuLmZsYWdzfD0yNTYsd28oZSxuLHQsciksbi5jaGlsZH12YXIgTW8sRm8sUm8sRG89e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBJbyhlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gT28oZSxuLHQpe3ZhciByLGw9bi5wZW5kaW5nUHJvcHMsdT1vdS5jdXJyZW50LG89ITEsaT0hISgxMjgmbi5mbGFncyk7aWYoKHI9aSl8fChyPShudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSkmJiEhKDImdSkpLHI/KG89ITAsbi5mbGFncyY9LTEyOSk6bnVsbCE9PWUmJm51bGw9PT1lLm1lbW9pemVkU3RhdGV8fCh1fD0xKSx6bChvdSwxJnUpLG51bGw9PT1lKXJldHVybiBzYShuKSxudWxsIT09KGU9bi5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShlPWUuZGVoeWRyYXRlZCk/KDEmbi5tb2RlPyIkISI9PT1lLmRhdGE/bi5sYW5lcz04Om4ubGFuZXM9MTA3Mzc0MTgyNDpuLmxhbmVzPTEsbnVsbCk6KGk9bC5jaGlsZHJlbixlPWwuZmFsbGJhY2ssbz8obD1uLm1vZGUsbz1uLmNoaWxkLGk9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46aX0sMSZsfHxudWxsPT09bz9vPUlzKGksbCwwLG51bGwpOihvLmNoaWxkTGFuZXM9MCxvLnBlbmRpbmdQcm9wcz1pKSxlPURzKGUsbCx0LG51bGwpLG8ucmV0dXJuPW4sZS5yZXR1cm49bixvLnNpYmxpbmc9ZSxuLmNoaWxkPW8sbi5jaGlsZC5tZW1vaXplZFN0YXRlPUlvKHQpLG4ubWVtb2l6ZWRTdGF0ZT1EbyxlKTpVbyhuLGkpKTtpZihudWxsIT09KHU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShyPXUuZGVoeWRyYXRlZCkpcmV0dXJuIGZ1bmN0aW9uKGUsbix0LHIsbCx1LG8pe2lmKHQpcmV0dXJuIDI1NiZuLmZsYWdzPyhuLmZsYWdzJj0tMjU3LFZvKGUsbixvLHI9Y28oRXJyb3IoYSg0MjIpKSkpKTpudWxsIT09bi5tZW1vaXplZFN0YXRlPyhuLmNoaWxkPWUuY2hpbGQsbi5mbGFnc3w9MTI4LG51bGwpOih1PXIuZmFsbGJhY2ssbD1uLm1vZGUscj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46ci5jaGlsZHJlbn0sbCwwLG51bGwpLCh1PURzKHUsbCxvLG51bGwpKS5mbGFnc3w9MixyLnJldHVybj1uLHUucmV0dXJuPW4sci5zaWJsaW5nPXUsbi5jaGlsZD1yLDEmbi5tb2RlJiZYYShuLGUuY2hpbGQsbnVsbCxvKSxuLmNoaWxkLm1lbW9pemVkU3RhdGU9SW8obyksbi5tZW1vaXplZFN0YXRlPURvLHUpO2lmKCEoMSZuLm1vZGUpKXJldHVybiBWbyhlLG4sbyxudWxsKTtpZigiJCEiPT09bC5kYXRhKXsKaWYocj1sLm5leHRTaWJsaW5nJiZsLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGk9ci5kZ3N0O3JldHVybiByPWksVm8oZSxuLG8scj1jbyh1PUVycm9yKGEoNDE5KSkscix2b2lkIDApKX1pZihpPSEhKG8mZS5jaGlsZExhbmVzKSxrb3x8aSl7aWYobnVsbCE9PShyPVBpKSl7c3dpdGNoKG8mLW8pe2Nhc2UgNDpsPTI7YnJlYWs7Y2FzZSAxNjpsPTg7YnJlYWs7Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0Omw9MzI7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6bD0yNjg0MzU0NTY7YnJlYWs7ZGVmYXVsdDpsPTB9MCE9PShsPWwmKHIuc3VzcGVuZGVkTGFuZXN8byk/MDpsKSYmbCE9PXUucmV0cnlMYW5lJiYodS5yZXRyeUxhbmU9bCxQYShlLGwpLHRzKHIsZSxsLC0xKSl9cmV0dXJuIGhzKCksVm8oZSxuLG8scj1jbyhFcnJvcihhKDQyMSkpKSl9cmV0dXJuIiQ/Ij09PWwuZGF0YT8obi5mbGFnc3w9MTI4LG4uY2hpbGQ9ZS5jaGlsZCxuPU5zLmJpbmQobnVsbCxlKSxsLl9yZWFjdFJldHJ5PW4sbnVsbCk6KGU9dS50cmVlQ29udGV4dCxyYT1zbChsLm5leHRTaWJsaW5nKSx0YT1uLGxhPSEwLGFhPW51bGwsbnVsbCE9PWUmJihxbFtLbCsrXT1YbCxxbFtLbCsrXT1HbCxxbFtLbCsrXT1ZbCxYbD1lLmlkLEdsPWUub3ZlcmZsb3csWWw9biksbj1VbyhuLHIuY2hpbGRyZW4pLG4uZmxhZ3N8PTQwOTYsbil9KGUsbixpLGwscix1LHQpO2lmKG8pe289bC5mYWxsYmFjayxpPW4ubW9kZSxyPSh1PWUuY2hpbGQpLnNpYmxpbmc7dmFyIHM9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46bC5jaGlsZHJlbn07cmV0dXJuIDEmaXx8bi5jaGlsZD09PXU/KGw9RnModSxzKSkuc3VidHJlZUZsYWdzPTE0NjgwMDY0JnUuc3VidHJlZUZsYWdzOigobD1uLmNoaWxkKS5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9cyxuLmRlbGV0aW9ucz1udWxsKSxudWxsIT09cj9vPUZzKHIsbyk6KG89RHMobyxpLHQsbnVsbCkpLmZsYWdzfD0yLG8ucmV0dXJuPW4sbC5yZXR1cm49bixsLnNpYmxpbmc9byxuLmNoaWxkPWwsbD1vLG89bi5jaGlsZCxpPW51bGw9PT0oaT1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0lvKHQpOntiYXNlTGFuZXM6aS5iYXNlTGFuZXN8dCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczppLnRyYW5zaXRpb25zfSxvLm1lbW9pemVkU3RhdGU9aSxvLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn50LG4ubWVtb2l6ZWRTdGF0ZT1EbyxsfXJldHVybiBlPShvPWUuY2hpbGQpLnNpYmxpbmcsbD1GcyhvLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSksISgxJm4ubW9kZSkmJihsLmxhbmVzPXQpLGwucmV0dXJuPW4sbC5zaWJsaW5nPW51bGwsbnVsbCE9PWUmJihudWxsPT09KHQ9bi5kZWxldGlvbnMpPyhuLmRlbGV0aW9ucz1bZV0sbi5mbGFnc3w9MTYpOnQucHVzaChlKSksbi5jaGlsZD1sLG4ubWVtb2l6ZWRTdGF0ZT1udWxsLGx9ZnVuY3Rpb24gVW8oZSxuKXtyZXR1cm4obj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46bn0sZS5tb2RlLDAsbnVsbCkpLnJldHVybj1lLGUuY2hpbGQ9bn1mdW5jdGlvbiBWbyhlLG4sdCxyKXtyZXR1cm4gbnVsbCE9PXImJm1hKHIpLFhhKG4sZS5jaGlsZCxudWxsLHQpLChlPVVvKG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4pKS5mbGFnc3w9MixuLm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIEFvKGUsbix0KXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bikseGEoZS5yZXR1cm4sbix0KX1mdW5jdGlvbiBCbyhlLG4sdCxyLGwpe3ZhciBhPWUubWVtb2l6ZWRTdGF0ZTtudWxsPT09YT9lLm1lbW9pemVkU3RhdGU9e2lzQmFja3dhcmRzOm4scmVuZGVyaW5nOm51bGwscmVuZGVyaW5nU3RhcnRUaW1lOjAsbGFzdDpyLHRhaWw6dCx0YWlsTW9kZTpsfTooYS5pc0JhY2t3YXJkcz1uLGEucmVuZGVyaW5nPW51bGwsYS5yZW5kZXJpbmdTdGFydFRpbWU9MCxhLmxhc3Q9cixhLnRhaWw9dCxhLnRhaWxNb2RlPWwpfWZ1bmN0aW9uIFdvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7aWYod28oZSxuLHIuY2hpbGRyZW4sdCksMiYocj1vdS5jdXJyZW50KSlyPTEmcnwyLG4uZmxhZ3N8PTEyODtlbHNle2lmKG51bGwhPT1lJiYxMjgmZS5mbGFncyllOmZvcihlPW4uY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJkFvKGUsdCxuKTtlbHNlIGlmKDE5PT09ZS50YWcpQW8oZSx0LG4pO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT1uKWJyZWFrIGU7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PW4pYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9ciY9MX1pZih6bChvdSxyKSwxJm4ubW9kZSlzd2l0Y2gobCl7Y2FzZSJmb3J3YXJkcyI6Zm9yKHQ9bi5jaGlsZCxsPW51bGw7bnVsbCE9PXQ7KW51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGw9PT1pdShlKSYmKGw9dCksdD10LnNpYmxpbmc7bnVsbD09PSh0PWwpPyhsPW4uY2hpbGQsbi5jaGlsZD1udWxsKToobD10LnNpYmxpbmcsdC5zaWJsaW5nPW51bGwpLEJvKG4sITEsbCx0LGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3IodD1udWxsLGw9bi5jaGlsZCxuLmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09aXUoZSkpe24uY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9dCx0PWwsbD1lfUJvKG4sITAsdCxudWxsLGEpO2JyZWFrO2Nhc2UidG9nZXRoZXIiOgpCbyhuLCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6bi5tZW1vaXplZFN0YXRlPW51bGx9ZWxzZSBuLm1lbW9pemVkU3RhdGU9bnVsbDtyZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBIbyhlLG4peyEoMSZuLm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsbi5hbHRlcm5hdGU9bnVsbCxuLmZsYWdzfD0yKX1mdW5jdGlvbiBRbyhlLG4sdCl7aWYobnVsbCE9PWUmJihuLmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksSWl8PW4ubGFuZXMsISh0Jm4uY2hpbGRMYW5lcykpcmV0dXJuIG51bGw7aWYobnVsbCE9PWUmJm4uY2hpbGQhPT1lLmNoaWxkKXRocm93IEVycm9yKGEoMTUzKSk7aWYobnVsbCE9PW4uY2hpbGQpe2Zvcih0PUZzKGU9bi5jaGlsZCxlLnBlbmRpbmdQcm9wcyksbi5jaGlsZD10LHQucmV0dXJuPW47bnVsbCE9PWUuc2libGluZzspZT1lLnNpYmxpbmcsKHQ9dC5zaWJsaW5nPUZzKGUsZS5wZW5kaW5nUHJvcHMpKS5yZXR1cm49bjt0LnNpYmxpbmc9bnVsbH1yZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBqbyhlLG4pe2lmKCFsYSlzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJoaWRkZW4iOm49ZS50YWlsO2Zvcih2YXIgdD1udWxsO251bGwhPT1uOyludWxsIT09bi5hbHRlcm5hdGUmJih0PW4pLG49bi5zaWJsaW5nO251bGw9PT10P2UudGFpbD1udWxsOnQuc2libGluZz1udWxsO2JyZWFrO2Nhc2UiY29sbGFwc2VkIjp0PWUudGFpbDtmb3IodmFyIHI9bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYocj10KSx0PXQuc2libGluZztudWxsPT09cj9ufHxudWxsPT09ZS50YWlsP2UudGFpbD1udWxsOmUudGFpbC5zaWJsaW5nPW51bGw6ci5zaWJsaW5nPW51bGx9fWZ1bmN0aW9uICRvKGUpe3ZhciBuPW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLHQ9MCxyPTA7aWYobilmb3IodmFyIGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9MTQ2ODAwNjQmbC5zdWJ0cmVlRmxhZ3Mscnw9MTQ2ODAwNjQmbC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO2Vsc2UgZm9yKGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9bC5zdWJ0cmVlRmxhZ3Mscnw9bC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO3JldHVybiBlLnN1YnRyZWVGbGFnc3w9cixlLmNoaWxkTGFuZXM9dCxufWZ1bmN0aW9uIHFvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcztzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiAkbyhuKSxudWxsO2Nhc2UgMTpjYXNlIDE3OnJldHVybiBNbChuLnR5cGUpJiZGbCgpLCRvKG4pLG51bGw7Y2FzZSAzOnJldHVybiByPW4uc3RhdGVOb2RlLGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGZhKG4pP24uZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJiEoMjU2Jm4uZmxhZ3MpfHwobi5mbGFnc3w9MTAyNCxudWxsIT09YWEmJih1cyhhYSksYWE9bnVsbCkpKSwkbyhuKSxudWxsO2Nhc2UgNTp1dShuKTt2YXIgbD10dShudS5jdXJyZW50KTtpZih0PW4udHlwZSxudWxsIT09ZSYmbnVsbCE9bi5zdGF0ZU5vZGUpRm8oZSxuLHQsciksZS5yZWYhPT1uLnJlZiYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtyZXR1cm4gJG8obiksbnVsbH1pZihlPXR1KEphLmN1cnJlbnQpLGZhKG4pKXtyPW4uc3RhdGVOb2RlLHQ9bi50eXBlO3ZhciB1PW4ubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltkbF09bixyW3BsXT11LGU9ISEoMSZuLm1vZGUpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixyKSxWcigiY2xvc2UiLHIpO2JyZWFrO2Nhc2UiaWZyYW1lIjpjYXNlIm9iamVjdCI6Y2FzZSJlbWJlZCI6VnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UidmlkZW8iOmNhc2UiYXVkaW8iOmZvcihsPTA7bDxEci5sZW5ndGg7bCsrKVZyKERyW2xdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLHIpO2JyZWFrO2Nhc2UiaW1nIjpjYXNlImltYWdlIjpjYXNlImxpbmsiOlZyKCJlcnJvciIsciksVnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6VnIoInRvZ2dsZSIscik7YnJlYWs7Y2FzZSJpbnB1dCI6WChyLHUpLFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInNlbGVjdCI6ci5fd3JhcHBlclN0YXRlPXt3YXNNdWx0aXBsZTohIXUubXVsdGlwbGV9LFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInRleHRhcmVhIjpsZShyLHUpLFZyKCJpbnZhbGlkIixyKX1mb3IodmFyIGkgaW4geWUodCx1KSxsPW51bGwsdSlpZih1Lmhhc093blByb3BlcnR5KGkpKXt2YXIgcz11W2ldOyJjaGlsZHJlbiI9PT1pPyJzdHJpbmciPT10eXBlb2Ygcz9yLnRleHRDb250ZW50IT09cyYmKCEwIT09dS5zdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcmJlpyKHIudGV4dENvbnRlbnQscyxlKSxsPVsiY2hpbGRyZW4iLHNdKToibnVtYmVyIj09dHlwZW9mIHMmJnIudGV4dENvbnRlbnQhPT0iIitzJiYoITAhPT11LnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci50ZXh0Q29udGVudCxzLGUpLGw9WyJjaGlsZHJlbiIsIiIrc10pOm8uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPXMmJiJvblNjcm9sbCI9PT1pJiZWcigic2Nyb2xsIixyKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChyKSxKKHIsdSwhMCk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChyKSx1ZShyKTticmVhaztjYXNlInNlbGVjdCI6Y2FzZSJvcHRpb24iOmJyZWFrO2RlZmF1bHQ6ImZ1bmN0aW9uIj09dHlwZW9mIHUub25DbGljayYmKHIub25jbGljaz1Kcil9cj1sLG4udXBkYXRlUXVldWU9cixudWxsIT09ciYmKG4uZmxhZ3N8PTQpfWVsc2V7Cmk9OT09PWwubm9kZVR5cGU/bDpsLm93bmVyRG9jdW1lbnQsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZSYmKGU9b2UodCkpLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/InNjcmlwdCI9PT10PygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudCh0LHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KHQpLCJzZWxlY3QiPT09dCYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsdCksZVtkbF09bixlW3BsXT1yLE1vKGUsbiksbi5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1iZSh0LHIpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixlKSxWcigiY2xvc2UiLGUpLGw9cjticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOlZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGw9MDtsPERyLmxlbmd0aDtsKyspVnIoRHJbbF0sZSk7bD1yO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLGUpLGw9cjticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpWcigiZXJyb3IiLGUpLFZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJkZXRhaWxzIjpWcigidG9nZ2xlIixlKSxsPXI7YnJlYWs7Y2FzZSJpbnB1dCI6WChlLHIpLGw9WShlLHIpLFZyKCJpbnZhbGlkIixlKTticmVhaztjYXNlIm9wdGlvbiI6ZGVmYXVsdDpsPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxsPU8oe30scix7dmFsdWU6dm9pZCAwfSksVnIoImludmFsaWQiLGUpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmxlKGUsciksbD1yZShlLHIpLFZyKCJpbnZhbGlkIixlKX1mb3IodSBpbiB5ZSh0LGwpLHM9bClpZihzLmhhc093blByb3BlcnR5KHUpKXt2YXIgYz1zW3VdOyJzdHlsZSI9PT11P2dlKGUsYyk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/bnVsbCE9KGM9Yz9jLl9faHRtbDp2b2lkIDApJiZmZShlLGMpOiJjaGlsZHJlbiI9PT11PyJzdHJpbmciPT10eXBlb2YgYz8oInRleHRhcmVhIiE9PXR8fCIiIT09YykmJmRlKGUsYyk6Im51bWJlciI9PXR5cGVvZiBjJiZkZShlLCIiK2MpOiJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciIT09dSYmInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIhPT11JiYiYXV0b0ZvY3VzIiE9PXUmJihvLmhhc093blByb3BlcnR5KHUpP251bGwhPWMmJiJvblNjcm9sbCI9PT11JiZWcigic2Nyb2xsIixlKTpudWxsIT1jJiZiKGUsdSxjLGkpKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChlKSxKKGUsciwhMSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChlKSx1ZShlKTticmVhaztjYXNlIm9wdGlvbiI6bnVsbCE9ci52YWx1ZSYmZS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIitRKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KHU9ci52YWx1ZSk/dGUoZSwhIXIubXVsdGlwbGUsdSwhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnRlKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBsLm9uQ2xpY2smJihlLm9uY2xpY2s9SnIpfXN3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYobi5mbGFnc3w9NCl9bnVsbCE9PW4ucmVmJiYobi5mbGFnc3w9NTEyLG4uZmxhZ3N8PTIwOTcxNTIpfXJldHVybiAkbyhuKSxudWxsO2Nhc2UgNjppZihlJiZudWxsIT1uLnN0YXRlTm9kZSlSbygwLG4sZS5tZW1vaXplZFByb3BzLHIpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiByJiZudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtpZih0PXR1KG51LmN1cnJlbnQpLHR1KEphLmN1cnJlbnQpLGZhKG4pKXtpZihyPW4uc3RhdGVOb2RlLHQ9bi5tZW1vaXplZFByb3BzLHJbZGxdPW4sKHU9ci5ub2RlVmFsdWUhPT10KSYmbnVsbCE9PShlPXRhKSlzd2l0Y2goZS50YWcpe2Nhc2UgMzpacihyLm5vZGVWYWx1ZSx0LCEhKDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci5ub2RlVmFsdWUsdCwhISgxJmUubW9kZSkpfXUmJihuLmZsYWdzfD00KX1lbHNlKHI9KDk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50KS5jcmVhdGVUZXh0Tm9kZShyKSlbZGxdPW4sbi5zdGF0ZU5vZGU9cn1yZXR1cm4gJG8obiksbnVsbDtjYXNlIDEzOmlmKENsKG91KSxyPW4ubWVtb2l6ZWRTdGF0ZSxudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5kZWh5ZHJhdGVkKXtpZihsYSYmbnVsbCE9PXJhJiYxJm4ubW9kZSYmISgxMjgmbi5mbGFncykpZGEoKSxwYSgpLG4uZmxhZ3N8PTk4NTYwLHU9ITE7ZWxzZSBpZih1PWZhKG4pLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIXUpdGhyb3cgRXJyb3IoYSgzMTgpKTtpZighKHU9bnVsbCE9PSh1PW4ubWVtb2l6ZWRTdGF0ZSk/dS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKGEoMzE3KSk7dVtkbF09bn1lbHNlIHBhKCksISgxMjgmbi5mbGFncykmJihuLm1lbW9pemVkU3RhdGU9bnVsbCksbi5mbGFnc3w9NDskbyhuKSx1PSExfWVsc2UgbnVsbCE9PWFhJiYodXMoYWEpLGFhPW51bGwpLHU9ITA7aWYoIXUpcmV0dXJuIDY1NTM2Jm4uZmxhZ3M/bjpudWxsfXJldHVybiAxMjgmbi5mbGFncz8obi5sYW5lcz10LG4pOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYobi5jaGlsZC5mbGFnc3w9ODE5MiwKMSZuLm1vZGUmJihudWxsPT09ZXx8MSZvdS5jdXJyZW50PzA9PT1SaSYmKFJpPTMpOmhzKCkpKSxudWxsIT09bi51cGRhdGVRdWV1ZSYmKG4uZmxhZ3N8PTQpLCRvKG4pLG51bGwpO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsPT09ZSYmV3Iobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksJG8obiksbnVsbDtjYXNlIDEwOnJldHVybiBTYShuLnR5cGUuX2NvbnRleHQpLCRvKG4pLG51bGw7Y2FzZSAxOTppZihDbChvdSksbnVsbD09PSh1PW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuICRvKG4pLG51bGw7aWYocj0hISgxMjgmbi5mbGFncyksbnVsbD09PShpPXUucmVuZGVyaW5nKSlpZihyKWpvKHUsITEpO2Vsc2V7aWYoMCE9PVJpfHxudWxsIT09ZSYmMTI4JmUuZmxhZ3MpZm9yKGU9bi5jaGlsZDtudWxsIT09ZTspe2lmKG51bGwhPT0oaT1pdShlKSkpe2ZvcihuLmZsYWdzfD0xMjgsam8odSwhMSksbnVsbCE9PShyPWkudXBkYXRlUXVldWUpJiYobi51cGRhdGVRdWV1ZT1yLG4uZmxhZ3N8PTQpLG4uc3VidHJlZUZsYWdzPTAscj10LHQ9bi5jaGlsZDtudWxsIT09dDspZT1yLCh1PXQpLmZsYWdzJj0xNDY4MDA2NixudWxsPT09KGk9dS5hbHRlcm5hdGUpPyh1LmNoaWxkTGFuZXM9MCx1LmxhbmVzPWUsdS5jaGlsZD1udWxsLHUuc3VidHJlZUZsYWdzPTAsdS5tZW1vaXplZFByb3BzPW51bGwsdS5tZW1vaXplZFN0YXRlPW51bGwsdS51cGRhdGVRdWV1ZT1udWxsLHUuZGVwZW5kZW5jaWVzPW51bGwsdS5zdGF0ZU5vZGU9bnVsbCk6KHUuY2hpbGRMYW5lcz1pLmNoaWxkTGFuZXMsdS5sYW5lcz1pLmxhbmVzLHUuY2hpbGQ9aS5jaGlsZCx1LnN1YnRyZWVGbGFncz0wLHUuZGVsZXRpb25zPW51bGwsdS5tZW1vaXplZFByb3BzPWkubWVtb2l6ZWRQcm9wcyx1Lm1lbW9pemVkU3RhdGU9aS5tZW1vaXplZFN0YXRlLHUudXBkYXRlUXVldWU9aS51cGRhdGVRdWV1ZSx1LnR5cGU9aS50eXBlLGU9aS5kZXBlbmRlbmNpZXMsdS5kZXBlbmRlbmNpZXM9bnVsbD09PWU/bnVsbDp7bGFuZXM6ZS5sYW5lcyxmaXJzdENvbnRleHQ6ZS5maXJzdENvbnRleHR9KSx0PXQuc2libGluZztyZXR1cm4gemwob3UsMSZvdS5jdXJyZW50fDIpLG4uY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXUudGFpbCYmR2UoKT5XaSYmKG4uZmxhZ3N8PTEyOCxyPSEwLGpvKHUsITEpLG4ubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighcilpZihudWxsIT09KGU9aXUoaSkpKXtpZihuLmZsYWdzfD0xMjgscj0hMCxudWxsIT09KHQ9ZS51cGRhdGVRdWV1ZSkmJihuLnVwZGF0ZVF1ZXVlPXQsbi5mbGFnc3w9NCksam8odSwhMCksbnVsbD09PXUudGFpbCYmImhpZGRlbiI9PT11LnRhaWxNb2RlJiYhaS5hbHRlcm5hdGUmJiFsYSlyZXR1cm4gJG8obiksbnVsbH1lbHNlIDIqR2UoKS11LnJlbmRlcmluZ1N0YXJ0VGltZT5XaSYmMTA3Mzc0MTgyNCE9PXQmJihuLmZsYWdzfD0xMjgscj0hMCxqbyh1LCExKSxuLmxhbmVzPTQxOTQzMDQpO3UuaXNCYWNrd2FyZHM/KGkuc2libGluZz1uLmNoaWxkLG4uY2hpbGQ9aSk6KG51bGwhPT0odD11Lmxhc3QpP3Quc2libGluZz1pOm4uY2hpbGQ9aSx1Lmxhc3Q9aSl9cmV0dXJuIG51bGwhPT11LnRhaWw/KG49dS50YWlsLHUucmVuZGVyaW5nPW4sdS50YWlsPW4uc2libGluZyx1LnJlbmRlcmluZ1N0YXJ0VGltZT1HZSgpLG4uc2libGluZz1udWxsLHQ9b3UuY3VycmVudCx6bChvdSxyPzEmdHwyOjEmdCksbik6KCRvKG4pLG51bGwpO2Nhc2UgMjI6Y2FzZSAyMzpyZXR1cm4gZnMoKSxyPW51bGwhPT1uLm1lbW9pemVkU3RhdGUsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPT1yJiYobi5mbGFnc3w9ODE5MiksciYmMSZuLm1vZGU/ISEoMTA3Mzc0MTgyNCZNaSkmJigkbyhuKSw2Jm4uc3VidHJlZUZsYWdzJiYobi5mbGFnc3w9ODE5MikpOiRvKG4pLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKGEoMTU2LG4udGFnKSl9ZnVuY3Rpb24gS28oZSxuKXtzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMTpyZXR1cm4gTWwobi50eXBlKSYmRmwoKSw2NTUzNiYoZT1uLmZsYWdzKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDM6cmV0dXJuIGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLDY1NTM2JihlPW4uZmxhZ3MpJiYhKDEyOCZlKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDU6cmV0dXJuIHV1KG4pLG51bGw7Y2FzZSAxMzppZihDbChvdSksbnVsbCE9PShlPW4ubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT1uLmFsdGVybmF0ZSl0aHJvdyBFcnJvcihhKDM0MCkpO3BhKCl9cmV0dXJuIDY1NTM2JihlPW4uZmxhZ3MpPyhuLmZsYWdzPS02NTUzNyZlfDEyOCxuKTpudWxsO2Nhc2UgMTk6cmV0dXJuIENsKG91KSxudWxsO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIFNhKG4udHlwZS5fY29udGV4dCksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGZzKCksbnVsbDtkZWZhdWx0OnJldHVybiBudWxsfX1Nbz1mdW5jdGlvbihlLG4pe2Zvcih2YXIgdD1uLmNoaWxkO251bGwhPT10Oyl7aWYoNT09PXQudGFnfHw2PT09dC50YWcpZS5hcHBlbmRDaGlsZCh0LnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09dC50YWcmJm51bGwhPT10LmNoaWxkKXt0LmNoaWxkLnJldHVybj10LHQ9dC5jaGlsZDtjb250aW51ZX1pZih0PT09bilicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09bilyZXR1cm47dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX0sRm89ZnVuY3Rpb24oZSxuLHQscil7dmFyIGw9ZS5tZW1vaXplZFByb3BzO2lmKGwhPT1yKXtlPW4uc3RhdGVOb2RlLHR1KEphLmN1cnJlbnQpO3ZhciBhLHU9bnVsbDtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6bD1ZKGUsbCkscj1ZKGUsciksdT1bXTticmVhaztjYXNlInNlbGVjdCI6bD1PKHt9LGwse3ZhbHVlOnZvaWQgMH0pLHI9Tyh7fSxyLHt2YWx1ZTp2b2lkIDB9KSx1PVtdO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmw9cmUoZSxsKSxyPXJlKGUsciksdT1bXTticmVhawo7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2YgbC5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPUpyKX1mb3IoYyBpbiB5ZSh0LHIpLHQ9bnVsbCxsKWlmKCFyLmhhc093blByb3BlcnR5KGMpJiZsLmhhc093blByb3BlcnR5KGMpJiZudWxsIT1sW2NdKWlmKCJzdHlsZSI9PT1jKXt2YXIgaT1sW2NdO2ZvcihhIGluIGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKHR8fCh0PXt9KSx0W2FdPSIiKX1lbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiE9PWMmJiJjaGlsZHJlbiIhPT1jJiYic3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIiE9PWMmJiJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciIT09YyYmImF1dG9Gb2N1cyIhPT1jJiYoby5oYXNPd25Qcm9wZXJ0eShjKT91fHwodT1bXSk6KHU9dXx8W10pLnB1c2goYyxudWxsKSk7Zm9yKGMgaW4gcil7dmFyIHM9cltjXTtpZihpPW51bGwhPWw/bFtjXTp2b2lkIDAsci5oYXNPd25Qcm9wZXJ0eShjKSYmcyE9PWkmJihudWxsIT1zfHxudWxsIT1pKSlpZigic3R5bGUiPT09YylpZihpKXtmb3IoYSBpbiBpKSFpLmhhc093blByb3BlcnR5KGEpfHxzJiZzLmhhc093blByb3BlcnR5KGEpfHwodHx8KHQ9e30pLHRbYV09IiIpO2ZvcihhIGluIHMpcy5oYXNPd25Qcm9wZXJ0eShhKSYmaVthXSE9PXNbYV0mJih0fHwodD17fSksdFthXT1zW2FdKX1lbHNlIHR8fCh1fHwodT1bXSksdS5wdXNoKGMsdCkpLHQ9cztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWM/KHM9cz9zLl9faHRtbDp2b2lkIDAsaT1pP2kuX19odG1sOnZvaWQgMCxudWxsIT1zJiZpIT09cyYmKHU9dXx8W10pLnB1c2goYyxzKSk6ImNoaWxkcmVuIj09PWM/InN0cmluZyIhPXR5cGVvZiBzJiYibnVtYmVyIiE9dHlwZW9mIHN8fCh1PXV8fFtdKS5wdXNoKGMsIiIrcyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJihvLmhhc093blByb3BlcnR5KGMpPyhudWxsIT1zJiYib25TY3JvbGwiPT09YyYmVnIoInNjcm9sbCIsZSksdXx8aT09PXN8fCh1PVtdKSk6KHU9dXx8W10pLnB1c2goYyxzKSl9dCYmKHU9dXx8W10pLnB1c2goInN0eWxlIix0KTt2YXIgYz11OyhuLnVwZGF0ZVF1ZXVlPWMpJiYobi5mbGFnc3w9NCl9fSxSbz1mdW5jdGlvbihlLG4sdCxyKXt0IT09ciYmKG4uZmxhZ3N8PTQpfTt2YXIgWW89ITEsWG89ITEsR289ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsWm89bnVsbDtmdW5jdGlvbiBKbyhlLG4pe3ZhciB0PWUucmVmO2lmKG51bGwhPT10KWlmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRyeXt0KG51bGwpfWNhdGNoKHQpe0VzKGUsbix0KX1lbHNlIHQuY3VycmVudD1udWxsfWZ1bmN0aW9uIGVpKGUsbix0KXt0cnl7dCgpfWNhdGNoKHQpe0VzKGUsbix0KX19dmFyIG5pPSExO2Z1bmN0aW9uIHRpKGUsbix0KXt2YXIgcj1uLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBsPXI9ci5uZXh0O2Rve2lmKChsLnRhZyZlKT09PWUpe3ZhciBhPWwuZGVzdHJveTtsLmRlc3Ryb3k9dm9pZCAwLHZvaWQgMCE9PWEmJmVpKG4sdCxhKX1sPWwubmV4dH13aGlsZShsIT09cil9fWZ1bmN0aW9uIHJpKGUsbil7aWYobnVsbCE9PShuPW51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKT9uLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciB0PW49bi5uZXh0O2Rve2lmKCh0LnRhZyZlKT09PWUpe3ZhciByPXQuY3JlYXRlO3QuZGVzdHJveT1yKCl9dD10Lm5leHR9d2hpbGUodCE9PW4pfX1mdW5jdGlvbiBsaShlKXt2YXIgbj1lLnJlZjtpZihudWxsIT09bil7dmFyIHQ9ZS5zdGF0ZU5vZGU7ZS50YWcsZT10LCJmdW5jdGlvbiI9PXR5cGVvZiBuP24oZSk6bi5jdXJyZW50PWV9fWZ1bmN0aW9uIGFpKGUpe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiYoZS5hbHRlcm5hdGU9bnVsbCxhaShuKSksZS5jaGlsZD1udWxsLGUuZGVsZXRpb25zPW51bGwsZS5zaWJsaW5nPW51bGwsNT09PWUudGFnJiYobnVsbCE9PShuPWUuc3RhdGVOb2RlKSYmKGRlbGV0ZSBuW2RsXSxkZWxldGUgbltwbF0sZGVsZXRlIG5baGxdLGRlbGV0ZSBuW2dsXSxkZWxldGUgblt2bF0pKSxlLnN0YXRlTm9kZT1udWxsLGUucmV0dXJuPW51bGwsZS5kZXBlbmRlbmNpZXM9bnVsbCxlLm1lbW9pemVkUHJvcHM9bnVsbCxlLm1lbW9pemVkU3RhdGU9bnVsbCxlLnBlbmRpbmdQcm9wcz1udWxsLGUuc3RhdGVOb2RlPW51bGwsZS51cGRhdGVRdWV1ZT1udWxsfWZ1bmN0aW9uIHVpKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8ND09PWUudGFnfWZ1bmN0aW9uIG9pKGUpe2U6Zm9yKDs7KXtmb3IoO251bGw9PT1lLnNpYmxpbmc7KXtpZihudWxsPT09ZS5yZXR1cm58fHVpKGUucmV0dXJuKSlyZXR1cm4gbnVsbDtlPWUucmV0dXJufWZvcihlLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nOzUhPT1lLnRhZyYmNiE9PWUudGFnJiYxOCE9PWUudGFnOyl7aWYoMiZlLmZsYWdzKWNvbnRpbnVlIGU7aWYobnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSxuPzg9PT10Lm5vZGVUeXBlP3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxuKTp0Lmluc2VydEJlZm9yZShlLG4pOig4PT09dC5ub2RlVHlwZT8obj10LnBhcmVudE5vZGUpLmluc2VydEJlZm9yZShlLHQpOihuPXQpLmFwcGVuZENoaWxkKGUpLG51bGwhPSh0PXQuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9SnIpKTtlbHNlIGlmKDQhPT1yJiZudWxsIT09KGU9ZS5jaGlsZCkpZm9yKGlpKGUsbix0KSxlPWUuc2libGluZztudWxsIT09ZTspaWkoZSxuLHQpLGU9ZS5zaWJsaW5nfWZ1bmN0aW9uIHNpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSwKbj90Lmluc2VydEJlZm9yZShlLG4pOnQuYXBwZW5kQ2hpbGQoZSk7ZWxzZSBpZig0IT09ciYmbnVsbCE9PShlPWUuY2hpbGQpKWZvcihzaShlLG4sdCksZT1lLnNpYmxpbmc7bnVsbCE9PWU7KXNpKGUsbix0KSxlPWUuc2libGluZ312YXIgY2k9bnVsbCxmaT0hMTtmdW5jdGlvbiBkaShlLG4sdCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspcGkoZSxuLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHBpKGUsbix0KXtpZihhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXthbi5vbkNvbW1pdEZpYmVyVW5tb3VudChsbix0KX1jYXRjaChlKXt9c3dpdGNoKHQudGFnKXtjYXNlIDU6WG98fEpvKHQsbik7Y2FzZSA2OnZhciByPWNpLGw9Zmk7Y2k9bnVsbCxkaShlLG4sdCksZmk9bCxudWxsIT09KGNpPXIpJiYoZmk/KGU9Y2ksdD10LnN0YXRlTm9kZSw4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk6ZS5yZW1vdmVDaGlsZCh0KSk6Y2kucmVtb3ZlQ2hpbGQodC5zdGF0ZU5vZGUpKTticmVhaztjYXNlIDE4Om51bGwhPT1jaSYmKGZpPyhlPWNpLHQ9dC5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/aWwoZS5wYXJlbnROb2RlLHQpOjE9PT1lLm5vZGVUeXBlJiZpbChlLHQpLEhuKGUpKTppbChjaSx0LnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWNpLGw9ZmksY2k9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxmaT0hMCxkaShlLG4sdCksY2k9cixmaT1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZighWG8mJihudWxsIT09KHI9dC51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKSl7bD1yPXIubmV4dDtkb3t2YXIgYT1sLHU9YS5kZXN0cm95O2E9YS50YWcsdm9pZCAwIT09dSYmKDImYXx8NCZhKSYmZWkodCxuLHUpLGw9bC5uZXh0fXdoaWxlKGwhPT1yKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAxOmlmKCFYbyYmKEpvKHQsbiksImZ1bmN0aW9uIj09dHlwZW9mKHI9dC5zdGF0ZU5vZGUpLmNvbXBvbmVudFdpbGxVbm1vdW50KSl0cnl7ci5wcm9wcz10Lm1lbW9pemVkUHJvcHMsci5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsci5jb21wb25lbnRXaWxsVW5tb3VudCgpfWNhdGNoKGUpe0VzKHQsbixlKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAyMTpkaShlLG4sdCk7YnJlYWs7Y2FzZSAyMjoxJnQubW9kZT8oWG89KHI9WG8pfHxudWxsIT09dC5tZW1vaXplZFN0YXRlLGRpKGUsbix0KSxYbz1yKTpkaShlLG4sdCk7YnJlYWs7ZGVmYXVsdDpkaShlLG4sdCl9fWZ1bmN0aW9uIG1pKGUpe3ZhciBuPWUudXBkYXRlUXVldWU7aWYobnVsbCE9PW4pe2UudXBkYXRlUXVldWU9bnVsbDt2YXIgdD1lLnN0YXRlTm9kZTtudWxsPT09dCYmKHQ9ZS5zdGF0ZU5vZGU9bmV3IEdvKSxuLmZvckVhY2goKGZ1bmN0aW9uKG4pe3ZhciByPV9zLmJpbmQobnVsbCxlLG4pO3QuaGFzKG4pfHwodC5hZGQobiksbi50aGVuKHIscikpfSkpfX1mdW5jdGlvbiBoaShlLG4pe3ZhciB0PW4uZGVsZXRpb25zO2lmKG51bGwhPT10KWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO3RyeXt2YXIgdT1lLG89bixpPW87ZTpmb3IoO251bGwhPT1pOyl7c3dpdGNoKGkudGFnKXtjYXNlIDU6Y2k9aS5zdGF0ZU5vZGUsZmk9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0OmNpPWkuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sZmk9ITA7YnJlYWsgZX1pPWkucmV0dXJufWlmKG51bGw9PT1jaSl0aHJvdyBFcnJvcihhKDE2MCkpO3BpKHUsbyxsKSxjaT1udWxsLGZpPSExO3ZhciBzPWwuYWx0ZXJuYXRlO251bGwhPT1zJiYocy5yZXR1cm49bnVsbCksbC5yZXR1cm49bnVsbH1jYXRjaChlKXtFcyhsLG4sZSl9fWlmKDEyODU0Jm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWdpKG4sZSksbj1uLnNpYmxpbmd9ZnVuY3Rpb24gZ2koZSxuKXt2YXIgdD1lLmFsdGVybmF0ZSxyPWUuZmxhZ3M7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYoaGkobixlKSx2aShlKSw0JnIpe3RyeXt0aSgzLGUsZS5yZXR1cm4pLHJpKDMsZSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX10cnl7dGkoNSxlLGUucmV0dXJuKX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDE6aGkobixlKSx2aShlKSw1MTImciYmbnVsbCE9PXQmJkpvKHQsdC5yZXR1cm4pO2JyZWFrO2Nhc2UgNTppZihoaShuLGUpLHZpKGUpLDUxMiZyJiZudWxsIT09dCYmSm8odCx0LnJldHVybiksMzImZS5mbGFncyl7dmFyIGw9ZS5zdGF0ZU5vZGU7dHJ5e2RlKGwsIiIpfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWlmKDQmciYmbnVsbCE9KGw9ZS5zdGF0ZU5vZGUpKXt2YXIgdT1lLm1lbW9pemVkUHJvcHMsbz1udWxsIT09dD90Lm1lbW9pemVkUHJvcHM6dSxpPWUudHlwZSxzPWUudXBkYXRlUXVldWU7aWYoZS51cGRhdGVRdWV1ZT1udWxsLG51bGwhPT1zKXRyeXsiaW5wdXQiPT09aSYmInJhZGlvIj09PXUudHlwZSYmbnVsbCE9dS5uYW1lJiZHKGwsdSksYmUoaSxvKTt2YXIgYz1iZShpLHUpO2ZvcihvPTA7bzxzLmxlbmd0aDtvKz0yKXt2YXIgZj1zW29dLGQ9c1tvKzFdOyJzdHlsZSI9PT1mP2dlKGwsZCk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWY/ZmUobCxkKToiY2hpbGRyZW4iPT09Zj9kZShsLGQpOmIobCxmLGQsYyl9c3dpdGNoKGkpe2Nhc2UiaW5wdXQiOloobCx1KTticmVhaztjYXNlInRleHRhcmVhIjphZShsLHUpO2JyZWFrO2Nhc2Uic2VsZWN0Ijp2YXIgcD1sLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU7bC5fd3JhcHBlclN0YXRlLndhc011bHRpcGxlPSEhdS5tdWx0aXBsZTt2YXIgbT11LnZhbHVlO251bGwhPW0/dGUobCwhIXUubXVsdGlwbGUsbSwhMSk6cCE9PSEhdS5tdWx0aXBsZSYmKG51bGwhPXUuZGVmYXVsdFZhbHVlP3RlKGwsISF1Lm11bHRpcGxlLHUuZGVmYXVsdFZhbHVlLCEwKTp0ZShsLCEhdS5tdWx0aXBsZSx1Lm11bHRpcGxlP1tdOiIiLCExKSl9bFtwbF09dX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDY6aWYoaGkobixlKSx2aShlKSw0JnIpewppZihudWxsPT09ZS5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjIpKTtsPWUuc3RhdGVOb2RlLHU9ZS5tZW1vaXplZFByb3BzO3RyeXtsLm5vZGVWYWx1ZT11fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWJyZWFrO2Nhc2UgMzppZihoaShuLGUpLHZpKGUpLDQmciYmbnVsbCE9PXQmJnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e0huKG4uY29udGFpbmVySW5mbyl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX1icmVhaztjYXNlIDQ6ZGVmYXVsdDpoaShuLGUpLHZpKGUpO2JyZWFrO2Nhc2UgMTM6aGkobixlKSx2aShlKSw4MTkyJihsPWUuY2hpbGQpLmZsYWdzJiYodT1udWxsIT09bC5tZW1vaXplZFN0YXRlLGwuc3RhdGVOb2RlLmlzSGlkZGVuPXUsIXV8fG51bGwhPT1sLmFsdGVybmF0ZSYmbnVsbCE9PWwuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fChCaT1HZSgpKSksNCZyJiZtaShlKTticmVhaztjYXNlIDIyOmlmKGY9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUsMSZlLm1vZGU/KFhvPShjPVhvKXx8ZixoaShuLGUpLFhvPWMpOmhpKG4sZSksdmkoZSksODE5MiZyKXtpZihjPW51bGwhPT1lLm1lbW9pemVkU3RhdGUsKGUuc3RhdGVOb2RlLmlzSGlkZGVuPWMpJiYhZiYmMSZlLm1vZGUpZm9yKFpvPWUsZj1lLmNoaWxkO251bGwhPT1mOyl7Zm9yKGQ9Wm89ZjtudWxsIT09Wm87KXtzd2l0Y2gobT0ocD1abykuY2hpbGQscC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTp0aSg0LHAscC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpKbyhwLHAucmV0dXJuKTt2YXIgaD1wLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgaC5jb21wb25lbnRXaWxsVW5tb3VudCl7cj1wLHQ9cC5yZXR1cm47dHJ5e249cixoLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxoLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxoLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7RXMocix0LGUpfX1icmVhaztjYXNlIDU6Sm8ocCxwLnJldHVybik7YnJlYWs7Y2FzZSAyMjppZihudWxsIT09cC5tZW1vaXplZFN0YXRlKXt3aShkKTtjb250aW51ZX19bnVsbCE9PW0/KG0ucmV0dXJuPXAsWm89bSk6d2koZCl9Zj1mLnNpYmxpbmd9ZTpmb3IoZj1udWxsLGQ9ZTs7KXtpZig1PT09ZC50YWcpe2lmKG51bGw9PT1mKXtmPWQ7dHJ5e2w9ZC5zdGF0ZU5vZGUsYz8iZnVuY3Rpb24iPT10eXBlb2YodT1sLnN0eWxlKS5zZXRQcm9wZXJ0eT91LnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOnUuZGlzcGxheT0ibm9uZSI6KGk9ZC5zdGF0ZU5vZGUsbz1udWxsIT0ocz1kLm1lbW9pemVkUHJvcHMuc3R5bGUpJiZzLmhhc093blByb3BlcnR5KCJkaXNwbGF5Iik/cy5kaXNwbGF5Om51bGwsaS5zdHlsZS5kaXNwbGF5PWhlKCJkaXNwbGF5IixvKSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX19fWVsc2UgaWYoNj09PWQudGFnKXtpZihudWxsPT09Zil0cnl7ZC5zdGF0ZU5vZGUubm9kZVZhbHVlPWM/IiI6ZC5tZW1vaXplZFByb3BzfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWVsc2UgaWYoKDIyIT09ZC50YWcmJjIzIT09ZC50YWd8fG51bGw9PT1kLm1lbW9pemVkU3RhdGV8fGQ9PT1lKSYmbnVsbCE9PWQuY2hpbGQpe2QuY2hpbGQucmV0dXJuPWQsZD1kLmNoaWxkO2NvbnRpbnVlfWlmKGQ9PT1lKWJyZWFrIGU7Zm9yKDtudWxsPT09ZC5zaWJsaW5nOyl7aWYobnVsbD09PWQucmV0dXJufHxkLnJldHVybj09PWUpYnJlYWsgZTtmPT09ZCYmKGY9bnVsbCksZD1kLnJldHVybn1mPT09ZCYmKGY9bnVsbCksZC5zaWJsaW5nLnJldHVybj1kLnJldHVybixkPWQuc2libGluZ319YnJlYWs7Y2FzZSAxOTpoaShuLGUpLHZpKGUpLDQmciYmbWkoZSk7Y2FzZSAyMTp9fWZ1bmN0aW9uIHZpKGUpe3ZhciBuPWUuZmxhZ3M7aWYoMiZuKXt0cnl7ZTp7Zm9yKHZhciB0PWUucmV0dXJuO251bGwhPT10Oyl7aWYodWkodCkpe3ZhciByPXQ7YnJlYWsgZX10PXQucmV0dXJufXRocm93IEVycm9yKGEoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIGw9ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKGRlKGwsIiIpLHIuZmxhZ3MmPS0zMyksc2koZSxvaShlKSxsKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciB1PXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWkoZSxvaShlKSx1KTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMTYxKSl9fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9ZS5mbGFncyY9LTN9NDA5NiZuJiYoZS5mbGFncyY9LTQwOTcpfWZ1bmN0aW9uIHlpKGUsbix0KXtabz1lLGJpKGUsbix0KX1mdW5jdGlvbiBiaShlLG4sdCl7Zm9yKHZhciByPSEhKDEmZS5tb2RlKTtudWxsIT09Wm87KXt2YXIgbD1abyxhPWwuY2hpbGQ7aWYoMjI9PT1sLnRhZyYmcil7dmFyIHU9bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZXx8WW87aWYoIXUpe3ZhciBvPWwuYWx0ZXJuYXRlLGk9bnVsbCE9PW8mJm51bGwhPT1vLm1lbW9pemVkU3RhdGV8fFhvO289WW87dmFyIHM9WG87aWYoWW89dSwoWG89aSkmJiFzKWZvcihabz1sO251bGwhPT1abzspaT0odT1abykuY2hpbGQsMjI9PT11LnRhZyYmbnVsbCE9PXUubWVtb2l6ZWRTdGF0ZT9TaShsKTpudWxsIT09aT8oaS5yZXR1cm49dSxabz1pKTpTaShsKTtmb3IoO251bGwhPT1hOylabz1hLGJpKGEsbix0KSxhPWEuc2libGluZztabz1sLFlvPW8sWG89c31raShlKX1lbHNlIDg3NzImbC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1hPyhhLnJldHVybj1sLFpvPWEpOmtpKGUpfX1mdW5jdGlvbiBraShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKDg3NzImbi5mbGFncyl7dmFyIHQ9bi5hbHRlcm5hdGU7dHJ5e2lmKDg3NzImbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6WG98fHJpKDUsbik7YnJlYWs7Y2FzZSAxOnZhciByPW4uc3RhdGVOb2RlO2lmKDQmbi5mbGFncyYmIVhvKWlmKG51bGw9PT10KXIuY29tcG9uZW50RGlkTW91bnQoKTtlbHNle3ZhciBsPW4uZWxlbWVudFR5cGU9PT1uLnR5cGU/dC5tZW1vaXplZFByb3BzOmdhKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpCjtyLmNvbXBvbmVudERpZFVwZGF0ZShsLHQubWVtb2l6ZWRTdGF0ZSxyLl9fcmVhY3RJbnRlcm5hbFNuYXBzaG90QmVmb3JlVXBkYXRlKX12YXIgdT1uLnVwZGF0ZVF1ZXVlO251bGwhPT11JiZVYShuLHUscik7YnJlYWs7Y2FzZSAzOnZhciBvPW4udXBkYXRlUXVldWU7aWYobnVsbCE9PW8pe2lmKHQ9bnVsbCxudWxsIT09bi5jaGlsZClzd2l0Y2gobi5jaGlsZC50YWcpe2Nhc2UgNTpjYXNlIDE6dD1uLmNoaWxkLnN0YXRlTm9kZX1VYShuLG8sdCl9YnJlYWs7Y2FzZSA1OnZhciBpPW4uc3RhdGVOb2RlO2lmKG51bGw9PT10JiY0Jm4uZmxhZ3Mpe3Q9aTt2YXIgcz1uLm1lbW9pemVkUHJvcHM7c3dpdGNoKG4udHlwZSl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpzLmF1dG9Gb2N1cyYmdC5mb2N1cygpO2JyZWFrO2Nhc2UiaW1nIjpzLnNyYyYmKHQuc3JjPXMuc3JjKX19YnJlYWs7Y2FzZSA2OmNhc2UgNDpjYXNlIDEyOmNhc2UgMTk6Y2FzZSAxNzpjYXNlIDIxOmNhc2UgMjI6Y2FzZSAyMzpjYXNlIDI1OmJyZWFrO2Nhc2UgMTM6aWYobnVsbD09PW4ubWVtb2l6ZWRTdGF0ZSl7dmFyIGM9bi5hbHRlcm5hdGU7aWYobnVsbCE9PWMpe3ZhciBmPWMubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09Zil7dmFyIGQ9Zi5kZWh5ZHJhdGVkO251bGwhPT1kJiZIbihkKX19fWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoYSgxNjMpKX1Yb3x8NTEyJm4uZmxhZ3MmJmxpKG4pfWNhdGNoKGUpe0VzKG4sbi5yZXR1cm4sZSl9fWlmKG49PT1lKXtabz1udWxsO2JyZWFrfWlmKG51bGwhPT0odD1uLnNpYmxpbmcpKXt0LnJldHVybj1uLnJldHVybixabz10O2JyZWFrfVpvPW4ucmV0dXJufX1mdW5jdGlvbiB3aShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKG49PT1lKXtabz1udWxsO2JyZWFrfXZhciB0PW4uc2libGluZztpZihudWxsIT09dCl7dC5yZXR1cm49bi5yZXR1cm4sWm89dDticmVha31abz1uLnJldHVybn19ZnVuY3Rpb24gU2koZSl7Zm9yKDtudWxsIT09Wm87KXt2YXIgbj1abzt0cnl7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnZhciB0PW4ucmV0dXJuO3RyeXtyaSg0LG4pfWNhdGNoKGUpe0VzKG4sdCxlKX1icmVhaztjYXNlIDE6dmFyIHI9bi5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkTW91bnQpe3ZhciBsPW4ucmV0dXJuO3RyeXtyLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7RXMobixsLGUpfX12YXIgYT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobixhLGUpfWJyZWFrO2Nhc2UgNTp2YXIgdT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobix1LGUpfX19Y2F0Y2goZSl7RXMobixuLnJldHVybixlKX1pZihuPT09ZSl7Wm89bnVsbDticmVha312YXIgbz1uLnNpYmxpbmc7aWYobnVsbCE9PW8pe28ucmV0dXJuPW4ucmV0dXJuLFpvPW87YnJlYWt9Wm89bi5yZXR1cm59fXZhciB4aSxFaT1NYXRoLmNlaWwsQ2k9ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHppPWsuUmVhY3RDdXJyZW50T3duZXIsTmk9ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfaT0wLFBpPW51bGwsVGk9bnVsbCxMaT0wLE1pPTAsRmk9RWwoMCksUmk9MCxEaT1udWxsLElpPTAsT2k9MCxVaT0wLFZpPW51bGwsQWk9bnVsbCxCaT0wLFdpPTEvMCxIaT1udWxsLFFpPSExLGppPW51bGwsJGk9bnVsbCxxaT0hMSxLaT1udWxsLFlpPTAsWGk9MCxHaT1udWxsLFppPS0xLEppPTA7ZnVuY3Rpb24gZXMoKXtyZXR1cm4gNiZfaT9HZSgpOi0xIT09Wmk/Wmk6Wmk9R2UoKX1mdW5jdGlvbiBucyhlKXtyZXR1cm4gMSZlLm1vZGU/MiZfaSYmMCE9PUxpP0xpJi1MaTpudWxsIT09aGEudHJhbnNpdGlvbj8oMD09PUppJiYoSmk9Z24oKSksSmkpOjAhPT0oZT1rbik/ZTplPXZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MTY6R24oZS50eXBlKToxfWZ1bmN0aW9uIHRzKGUsbix0LHIpe2lmKDUwPFhpKXRocm93IFhpPTAsR2k9bnVsbCxFcnJvcihhKDE4NSkpO3luKGUsdCxyKSwyJl9pJiZlPT09UGl8fChlPT09UGkmJighKDImX2kpJiYoT2l8PXQpLDQ9PT1SaSYmb3MoZSxMaSkpLHJzKGUsciksMT09PXQmJjA9PT1faSYmISgxJm4ubW9kZSkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSkpfWZ1bmN0aW9uIHJzKGUsbil7dmFyIHQ9ZS5jYWxsYmFja05vZGU7IWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT1lLnBlbmRpbmdMYW5lczswPGE7KXt2YXIgdT0zMS11bihhKSxvPTE8PHUsaT1sW3VdOy0xPT09aT9vJnQmJiEobyZyKXx8KGxbdV09bW4obyxuKSk6aTw9biYmKGUuZXhwaXJlZExhbmVzfD1vKSxhJj1+b319KGUsbik7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpbnVsbCE9PXQmJktlKHQpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihuPXImLXIsZS5jYWxsYmFja1ByaW9yaXR5IT09bil7aWYobnVsbCE9dCYmS2UodCksMT09PW4pMD09PWUudGFnP2Z1bmN0aW9uKGUpe1ZsPSEwLEJsKGUpfShpcy5iaW5kKG51bGwsZSkpOkJsKGlzLmJpbmQobnVsbCxlKSksdWwoKGZ1bmN0aW9uKCl7ISg2Jl9pKSYmV2woKX0pKSx0PW51bGw7ZWxzZXtzd2l0Y2god24ocikpe2Nhc2UgMTp0PUplO2JyZWFrO2Nhc2UgNDp0PWVuO2JyZWFrO2Nhc2UgMTY6ZGVmYXVsdDp0PW5uO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnQ9cm59dD1Qcyh0LGxzLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PW4sZS5jYWxsYmFja05vZGU9dH19ZnVuY3Rpb24gbHMoZSxuKXtpZihaaT0tMSxKaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTt2YXIgdD1lLmNhbGxiYWNrTm9kZTtpZihTcygpJiZlLmNhbGxiYWNrTm9kZSE9PXQpcmV0dXJuIG51bGw7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpcmV0dXJuIG51bGw7aWYoMzAmcnx8ciZlLmV4cGlyZWRMYW5lc3x8biluPWdzKGUscik7ZWxzZXtuPXI7dmFyIGw9X2k7X2l8PTI7dmFyIHU9bXMoKQo7Zm9yKFBpPT09ZSYmTGk9PT1ufHwoSGk9bnVsbCxXaT1HZSgpKzUwMCxkcyhlLG4pKTs7KXRyeXt5cygpO2JyZWFrfWNhdGNoKG4pe3BzKGUsbil9d2EoKSxDaS5jdXJyZW50PXUsX2k9bCxudWxsIT09VGk/bj0wOihQaT1udWxsLExpPTAsbj1SaSl9aWYoMCE9PW4pe2lmKDI9PT1uJiYoMCE9PShsPWhuKGUpKSYmKHI9bCxuPWFzKGUsbCkpKSwxPT09bil0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7aWYoNj09PW4pb3MoZSxyKTtlbHNle2lmKGw9ZS5jdXJyZW50LmFsdGVybmF0ZSwhKDMwJnJ8fGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1lOzspe2lmKDE2Mzg0Jm4uZmxhZ3Mpe3ZhciB0PW4udXBkYXRlUXVldWU7aWYobnVsbCE9PXQmJm51bGwhPT0odD10LnN0b3JlcykpZm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBsPXRbcl0sYT1sLmdldFNuYXBzaG90O2w9bC52YWx1ZTt0cnl7aWYoIW9yKGEoKSxsKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX19fWlmKHQ9bi5jaGlsZCwxNjM4NCZuLnN1YnRyZWVGbGFncyYmbnVsbCE9PXQpdC5yZXR1cm49bixuPXQ7ZWxzZXtpZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4hMDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fXJldHVybiEwfShsKXx8KG49Z3MoZSxyKSwyPT09biYmKHU9aG4oZSksMCE9PXUmJihyPXUsbj1hcyhlLHUpKSksMSE9PW4pKSl0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7c3dpdGNoKGUuZmluaXNoZWRXb3JrPWwsZS5maW5pc2hlZExhbmVzPXIsbil7Y2FzZSAwOmNhc2UgMTp0aHJvdyBFcnJvcihhKDM0NSkpO2Nhc2UgMjpjYXNlIDU6d3MoZSxBaSxIaSk7YnJlYWs7Y2FzZSAzOmlmKG9zKGUsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChuPUJpKzUwMC1HZSgpKSl7aWYoMCE9PXBuKGUsMCkpYnJlYWs7aWYoKChsPWUuc3VzcGVuZGVkTGFuZXMpJnIpIT09cil7ZXMoKSxlLnBpbmdlZExhbmVzfD1lLnN1c3BlbmRlZExhbmVzJmw7YnJlYWt9ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxuKTticmVha313cyhlLEFpLEhpKTticmVhaztjYXNlIDQ6aWYob3MoZSxyKSwoNDE5NDI0MCZyKT09PXIpYnJlYWs7Zm9yKG49ZS5ldmVudFRpbWVzLGw9LTE7MDxyOyl7dmFyIG89MzEtdW4ocik7dT0xPDxvLChvPW5bb10pPmwmJihsPW8pLHImPX51fWlmKHI9bCwxMDwocj0oMTIwPihyPUdlKCktcik/MTIwOjQ4MD5yPzQ4MDoxMDgwPnI/MTA4MDoxOTIwPnI/MTkyMDozZTM+cj8zZTM6NDMyMD5yPzQzMjA6MTk2MCpFaShyLzE5NjApKS1yKSl7ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxyKTticmVha313cyhlLEFpLEhpKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzI5KSl9fX1yZXR1cm4gcnMoZSxHZSgpKSxlLmNhbGxiYWNrTm9kZT09PXQ/bHMuYmluZChudWxsLGUpOm51bGx9ZnVuY3Rpb24gYXMoZSxuKXt2YXIgdD1WaTtyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoZHMoZSxuKS5mbGFnc3w9MjU2KSwyIT09KGU9Z3MoZSxuKSkmJihuPUFpLEFpPXQsbnVsbCE9PW4mJnVzKG4pKSxlfWZ1bmN0aW9uIHVzKGUpe251bGw9PT1BaT9BaT1lOkFpLnB1c2guYXBwbHkoQWksZSl9ZnVuY3Rpb24gb3MoZSxuKXtmb3IobiY9flVpLG4mPX5PaSxlLnN1c3BlbmRlZExhbmVzfD1uLGUucGluZ2VkTGFuZXMmPX5uLGU9ZS5leHBpcmF0aW9uVGltZXM7MDxuOyl7dmFyIHQ9MzEtdW4obikscj0xPDx0O2VbdF09LTEsbiY9fnJ9fWZ1bmN0aW9uIGlzKGUpe2lmKDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTtTcygpO3ZhciBuPXBuKGUsMCk7aWYoISgxJm4pKXJldHVybiBycyhlLEdlKCkpLG51bGw7dmFyIHQ9Z3MoZSxuKTtpZigwIT09ZS50YWcmJjI9PT10KXt2YXIgcj1obihlKTswIT09ciYmKG49cix0PWFzKGUscikpfWlmKDE9PT10KXRocm93IHQ9RGksZHMoZSwwKSxvcyhlLG4pLHJzKGUsR2UoKSksdDtpZig2PT09dCl0aHJvdyBFcnJvcihhKDM0NSkpO3JldHVybiBlLmZpbmlzaGVkV29yaz1lLmN1cnJlbnQuYWx0ZXJuYXRlLGUuZmluaXNoZWRMYW5lcz1uLHdzKGUsQWksSGkpLHJzKGUsR2UoKSksbnVsbH1mdW5jdGlvbiBzcyhlLG4pe3ZhciB0PV9pO19pfD0xO3RyeXtyZXR1cm4gZShuKX1maW5hbGx5ezA9PT0oX2k9dCkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSl9fWZ1bmN0aW9uIGNzKGUpe251bGwhPT1LaSYmMD09PUtpLnRhZyYmISg2Jl9pKSYmU3MoKTt2YXIgbj1faTtfaXw9MTt2YXIgdD1OaS50cmFuc2l0aW9uLHI9a247dHJ5e2lmKE5pLnRyYW5zaXRpb249bnVsbCxrbj0xLGUpcmV0dXJuIGUoKX1maW5hbGx5e2tuPXIsTmkudHJhbnNpdGlvbj10LCEoNiYoX2k9bikpJiZXbCgpfX1mdW5jdGlvbiBmcygpe01pPUZpLmN1cnJlbnQsQ2woRmkpfWZ1bmN0aW9uIGRzKGUsbil7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgdD1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT10JiYoZS50aW1lb3V0SGFuZGxlPS0xLGxsKHQpKSxudWxsIT09VGkpZm9yKHQ9VGkucmV0dXJuO251bGwhPT10Oyl7dmFyIHI9dDtzd2l0Y2gobmEociksci50YWcpe2Nhc2UgMTpudWxsIT0ocj1yLnR5cGUuY2hpbGRDb250ZXh0VHlwZXMpJiZGbCgpO2JyZWFrO2Nhc2UgMzpsdSgpLENsKFBsKSxDbChfbCksY3UoKTticmVhaztjYXNlIDU6dXUocik7YnJlYWs7Y2FzZSA0Omx1KCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OkNsKG91KTticmVhaztjYXNlIDEwOlNhKHIudHlwZS5fY29udGV4dCk7YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOmZzKCl9dD10LnJldHVybn1pZihQaT1lLFRpPWU9RnMoZS5jdXJyZW50LG51bGwpLExpPU1pPW4sUmk9MCxEaT1udWxsLFVpPU9pPUlpPTAsQWk9Vmk9bnVsbCxudWxsIT09emEpe2ZvcihuPTA7bjx6YS5sZW5ndGg7bisrKWlmKG51bGwhPT0ocj0odD16YVtuXSkuaW50ZXJsZWF2ZWQpKXt0LmludGVybGVhdmVkPW51bGwKO3ZhciBsPXIubmV4dCxhPXQucGVuZGluZztpZihudWxsIT09YSl7dmFyIHU9YS5uZXh0O2EubmV4dD1sLHIubmV4dD11fXQucGVuZGluZz1yfXphPW51bGx9cmV0dXJuIGV9ZnVuY3Rpb24gcHMoZSxuKXtmb3IoOzspe3ZhciB0PVRpO3RyeXtpZih3YSgpLGZ1LmN1cnJlbnQ9YW8sdnUpe2Zvcih2YXIgcj1tdS5tZW1vaXplZFN0YXRlO251bGwhPT1yOyl7dmFyIGw9ci5xdWV1ZTtudWxsIT09bCYmKGwucGVuZGluZz1udWxsKSxyPXIubmV4dH12dT0hMX1pZihwdT0wLGd1PWh1PW11PW51bGwseXU9ITEsYnU9MCx6aS5jdXJyZW50PW51bGwsbnVsbD09PXR8fG51bGw9PT10LnJldHVybil7Umk9MSxEaT1uLFRpPW51bGw7YnJlYWt9ZTp7dmFyIHU9ZSxvPXQucmV0dXJuLGk9dCxzPW47aWYobj1MaSxpLmZsYWdzfD0zMjc2OCxudWxsIT09cyYmIm9iamVjdCI9PXR5cGVvZiBzJiYiZnVuY3Rpb24iPT10eXBlb2Ygcy50aGVuKXt2YXIgYz1zLGY9aSxkPWYudGFnO2lmKCEoMSZmLm1vZGV8fDAhPT1kJiYxMSE9PWQmJjE1IT09ZCkpe3ZhciBwPWYuYWx0ZXJuYXRlO3A/KGYudXBkYXRlUXVldWU9cC51cGRhdGVRdWV1ZSxmLm1lbW9pemVkU3RhdGU9cC5tZW1vaXplZFN0YXRlLGYubGFuZXM9cC5sYW5lcyk6KGYudXBkYXRlUXVldWU9bnVsbCxmLm1lbW9pemVkU3RhdGU9bnVsbCl9dmFyIG09dm8obyk7aWYobnVsbCE9PW0pe20uZmxhZ3MmPS0yNTcseW8obSxvLGksMCxuKSwxJm0ubW9kZSYmZ28odSxjLG4pLHM9Yzt2YXIgaD0obj1tKS51cGRhdGVRdWV1ZTtpZihudWxsPT09aCl7dmFyIGc9bmV3IFNldDtnLmFkZChzKSxuLnVwZGF0ZVF1ZXVlPWd9ZWxzZSBoLmFkZChzKTticmVhayBlfWlmKCEoMSZuKSl7Z28odSxjLG4pLGhzKCk7YnJlYWsgZX1zPUVycm9yKGEoNDI2KSl9ZWxzZSBpZihsYSYmMSZpLm1vZGUpe3ZhciB2PXZvKG8pO2lmKG51bGwhPT12KXshKDY1NTM2JnYuZmxhZ3MpJiYodi5mbGFnc3w9MjU2KSx5byh2LG8saSwwLG4pLG1hKHNvKHMsaSkpO2JyZWFrIGV9fXU9cz1zbyhzLGkpLDQhPT1SaSYmKFJpPTIpLG51bGw9PT1WaT9WaT1bdV06VmkucHVzaCh1KSx1PW87ZG97c3dpdGNoKHUudGFnKXtjYXNlIDM6dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LG1vKDAscyxuKSk7YnJlYWsgZTtjYXNlIDE6aT1zO3ZhciB5PXUudHlwZSxiPXUuc3RhdGVOb2RlO2lmKCEoMTI4JnUuZmxhZ3N8fCJmdW5jdGlvbiIhPXR5cGVvZiB5LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvciYmKG51bGw9PT1ifHwiZnVuY3Rpb24iIT10eXBlb2YgYi5jb21wb25lbnREaWRDYXRjaHx8bnVsbCE9PSRpJiYkaS5oYXMoYikpKSl7dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LGhvKHUsaSxuKSk7YnJlYWsgZX19dT11LnJldHVybn13aGlsZShudWxsIT09dSl9a3ModCl9Y2F0Y2goZSl7bj1lLFRpPT09dCYmbnVsbCE9PXQmJihUaT10PXQucmV0dXJuKTtjb250aW51ZX1icmVha319ZnVuY3Rpb24gbXMoKXt2YXIgZT1DaS5jdXJyZW50O3JldHVybiBDaS5jdXJyZW50PWFvLG51bGw9PT1lP2FvOmV9ZnVuY3Rpb24gaHMoKXswIT09UmkmJjMhPT1SaSYmMiE9PVJpfHwoUmk9NCksbnVsbD09PVBpfHwhKDI2ODQzNTQ1NSZJaSkmJiEoMjY4NDM1NDU1Jk9pKXx8b3MoUGksTGkpfWZ1bmN0aW9uIGdzKGUsbil7dmFyIHQ9X2k7X2l8PTI7dmFyIHI9bXMoKTtmb3IoUGk9PT1lJiZMaT09PW58fChIaT1udWxsLGRzKGUsbikpOzspdHJ5e3ZzKCk7YnJlYWt9Y2F0Y2gobil7cHMoZSxuKX1pZih3YSgpLF9pPXQsQ2kuY3VycmVudD1yLG51bGwhPT1UaSl0aHJvdyBFcnJvcihhKDI2MSkpO3JldHVybiBQaT1udWxsLExpPTAsUml9ZnVuY3Rpb24gdnMoKXtmb3IoO251bGwhPT1UaTspYnMoVGkpfWZ1bmN0aW9uIHlzKCl7Zm9yKDtudWxsIT09VGkmJiFZZSgpOylicyhUaSl9ZnVuY3Rpb24gYnMoZSl7dmFyIG49eGkoZS5hbHRlcm5hdGUsZSxNaSk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT1uP2tzKGUpOlRpPW4semkuY3VycmVudD1udWxsfWZ1bmN0aW9uIGtzKGUpe3ZhciBuPWU7ZG97dmFyIHQ9bi5hbHRlcm5hdGU7aWYoZT1uLnJldHVybiwzMjc2OCZuLmZsYWdzKXtpZihudWxsIT09KHQ9S28odCxuKSkpcmV0dXJuIHQuZmxhZ3MmPTMyNzY3LHZvaWQoVGk9dCk7aWYobnVsbD09PWUpcmV0dXJuIFJpPTYsdm9pZChUaT1udWxsKTtlLmZsYWdzfD0zMjc2OCxlLnN1YnRyZWVGbGFncz0wLGUuZGVsZXRpb25zPW51bGx9ZWxzZSBpZihudWxsIT09KHQ9cW8odCxuLE1pKSkpcmV0dXJuIHZvaWQoVGk9dCk7aWYobnVsbCE9PShuPW4uc2libGluZykpcmV0dXJuIHZvaWQoVGk9bik7VGk9bj1lfXdoaWxlKG51bGwhPT1uKTswPT09UmkmJihSaT01KX1mdW5jdGlvbiB3cyhlLG4sdCl7dmFyIHI9a24sbD1OaS50cmFuc2l0aW9uO3RyeXtOaS50cmFuc2l0aW9uPW51bGwsa249MSxmdW5jdGlvbihlLG4sdCxyKXtkb3tTcygpfXdoaWxlKG51bGwhPT1LaSk7aWYoNiZfaSl0aHJvdyBFcnJvcihhKDMyNykpO3Q9ZS5maW5pc2hlZFdvcms7dmFyIGw9ZS5maW5pc2hlZExhbmVzO2lmKG51bGw9PT10KXJldHVybiBudWxsO2lmKGUuZmluaXNoZWRXb3JrPW51bGwsZS5maW5pc2hlZExhbmVzPTAsdD09PWUuY3VycmVudCl0aHJvdyBFcnJvcihhKDE3NykpO2UuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7dmFyIHU9dC5sYW5lc3x0LmNoaWxkTGFuZXM7aWYoZnVuY3Rpb24oZSxuKXt2YXIgdD1lLnBlbmRpbmdMYW5lcyZ+bjtlLnBlbmRpbmdMYW5lcz1uLGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPW4sZS5tdXRhYmxlUmVhZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sbj1lLmVudGFuZ2xlbWVudHM7dmFyIHI9ZS5ldmVudFRpbWVzO2ZvcihlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBsPTMxLXVuKHQpLGE9MTw8bDtuW2xdPTAscltsXT0tMSxlW2xdPS0xLHQmPX5hfX0oZSx1KSxlPT09UGkmJihUaT1QaT1udWxsLExpPTApLAohKDIwNjQmdC5zdWJ0cmVlRmxhZ3MpJiYhKDIwNjQmdC5mbGFncyl8fHFpfHwocWk9ITAsUHMobm4sKGZ1bmN0aW9uKCl7cmV0dXJuIFNzKCksbnVsbH0pKSksdT0hISgxNTk5MCZ0LmZsYWdzKSwhISgxNTk5MCZ0LnN1YnRyZWVGbGFncyl8fHUpe3U9TmkudHJhbnNpdGlvbixOaS50cmFuc2l0aW9uPW51bGw7dmFyIG89a247a249MTt2YXIgaT1faTtfaXw9NCx6aS5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSxuKXtpZihlbD1qbixwcihlPWRyKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgdD17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTp7dmFyIHI9KHQ9KHQ9ZS5vd25lckRvY3VtZW50KSYmdC5kZWZhdWx0Vmlld3x8d2luZG93KS5nZXRTZWxlY3Rpb24mJnQuZ2V0U2VsZWN0aW9uKCk7aWYociYmMCE9PXIucmFuZ2VDb3VudCl7dD1yLmFuY2hvck5vZGU7dmFyIGw9ci5hbmNob3JPZmZzZXQsdT1yLmZvY3VzTm9kZTtyPXIuZm9jdXNPZmZzZXQ7dHJ5e3Qubm9kZVR5cGUsdS5ub2RlVHlwZX1jYXRjaChlKXt0PW51bGw7YnJlYWsgZX12YXIgbz0wLGk9LTEscz0tMSxjPTAsZj0wLGQ9ZSxwPW51bGw7bjpmb3IoOzspe2Zvcih2YXIgbTtkIT09dHx8MCE9PWwmJjMhPT1kLm5vZGVUeXBlfHwoaT1vK2wpLGQhPT11fHwwIT09ciYmMyE9PWQubm9kZVR5cGV8fChzPW8rciksMz09PWQubm9kZVR5cGUmJihvKz1kLm5vZGVWYWx1ZS5sZW5ndGgpLG51bGwhPT0obT1kLmZpcnN0Q2hpbGQpOylwPWQsZD1tO2Zvcig7Oyl7aWYoZD09PWUpYnJlYWsgbjtpZihwPT09dCYmKytjPT09bCYmKGk9bykscD09PXUmJisrZj09PXImJihzPW8pLG51bGwhPT0obT1kLm5leHRTaWJsaW5nKSlicmVhaztwPShkPXApLnBhcmVudE5vZGV9ZD1tfXQ9LTE9PT1pfHwtMT09PXM/bnVsbDp7c3RhcnQ6aSxlbmQ6c319ZWxzZSB0PW51bGx9dD10fHx7c3RhcnQ6MCxlbmQ6MH19ZWxzZSB0PW51bGw7Zm9yKG5sPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOnR9LGpuPSExLFpvPW47bnVsbCE9PVpvOylpZihlPShuPVpvKS5jaGlsZCwxMDI4Jm4uc3VidHJlZUZsYWdzJiZudWxsIT09ZSllLnJldHVybj1uLFpvPWU7ZWxzZSBmb3IoO251bGwhPT1abzspe249Wm87dHJ5e3ZhciBoPW4uYWx0ZXJuYXRlO2lmKDEwMjQmbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztjYXNlIDE6aWYobnVsbCE9PWgpe3ZhciBnPWgubWVtb2l6ZWRQcm9wcyx2PWgubWVtb2l6ZWRTdGF0ZSx5PW4uc3RhdGVOb2RlLGI9eS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZShuLmVsZW1lbnRUeXBlPT09bi50eXBlP2c6Z2Eobi50eXBlLGcpLHYpO3kuX19yZWFjdEludGVybmFsU25hcHNob3RCZWZvcmVVcGRhdGU9Yn1icmVhaztjYXNlIDM6dmFyIGs9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09ay5ub2RlVHlwZT9rLnRleHRDb250ZW50PSIiOjk9PT1rLm5vZGVUeXBlJiZrLmRvY3VtZW50RWxlbWVudCYmay5yZW1vdmVDaGlsZChrLmRvY3VtZW50RWxlbWVudCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihhKDE2MykpfX1jYXRjaChlKXtFcyhuLG4ucmV0dXJuLGUpfWlmKG51bGwhPT0oZT1uLnNpYmxpbmcpKXtlLnJldHVybj1uLnJldHVybixabz1lO2JyZWFrfVpvPW4ucmV0dXJufWg9bmksbmk9ITF9KGUsdCksZ2kodCxlKSxtcihubCksam49ISFlbCxubD1lbD1udWxsLGUuY3VycmVudD10LHlpKHQsZSxsKSxYZSgpLF9pPWksa249byxOaS50cmFuc2l0aW9uPXV9ZWxzZSBlLmN1cnJlbnQ9dDtpZihxaSYmKHFpPSExLEtpPWUsWWk9bCksdT1lLnBlbmRpbmdMYW5lcywwPT09dSYmKCRpPW51bGwpLGZ1bmN0aW9uKGUpe2lmKGFuJiYiZnVuY3Rpb24iPT10eXBlb2YgYW4ub25Db21taXRGaWJlclJvb3QpdHJ5e2FuLm9uQ29tbWl0RmliZXJSb290KGxuLGUsdm9pZCAwLCEoMTI4Jn5lLmN1cnJlbnQuZmxhZ3MpKX1jYXRjaChlKXt9fSh0LnN0YXRlTm9kZSkscnMoZSxHZSgpKSxudWxsIT09bilmb3Iocj1lLm9uUmVjb3ZlcmFibGVFcnJvcix0PTA7dDxuLmxlbmd0aDt0KyspbD1uW3RdLHIobC52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bC5zdGFjayxkaWdlc3Q6bC5kaWdlc3R9KTtpZihRaSl0aHJvdyBRaT0hMSxlPWppLGppPW51bGwsZTshISgxJllpKSYmMCE9PWUudGFnJiZTcygpLHU9ZS5wZW5kaW5nTGFuZXMsMSZ1P2U9PT1HaT9YaSsrOihYaT0wLEdpPWUpOlhpPTAsV2woKX0oZSxuLHQscil9ZmluYWxseXtOaS50cmFuc2l0aW9uPWwsa249cn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBTcygpe2lmKG51bGwhPT1LaSl7dmFyIGU9d24oWWkpLG49TmkudHJhbnNpdGlvbix0PWtuO3RyeXtpZihOaS50cmFuc2l0aW9uPW51bGwsa249MTY+ZT8xNjplLG51bGw9PT1LaSl2YXIgcj0hMTtlbHNle2lmKGU9S2ksS2k9bnVsbCxZaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMzEpKTt2YXIgbD1faTtmb3IoX2l8PTQsWm89ZS5jdXJyZW50O251bGwhPT1abzspe3ZhciB1PVpvLG89dS5jaGlsZDtpZigxNiZaby5mbGFncyl7dmFyIGk9dS5kZWxldGlvbnM7aWYobnVsbCE9PWkpe2Zvcih2YXIgcz0wO3M8aS5sZW5ndGg7cysrKXt2YXIgYz1pW3NdO2Zvcihabz1jO251bGwhPT1abzspe3ZhciBmPVpvO3N3aXRjaChmLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTp0aSg4LGYsdSl9dmFyIGQ9Zi5jaGlsZDtpZihudWxsIT09ZClkLnJldHVybj1mLFpvPWQ7ZWxzZSBmb3IoO251bGwhPT1abzspe3ZhciBwPShmPVpvKS5zaWJsaW5nLG09Zi5yZXR1cm47aWYoYWkoZiksZj09PWMpe1pvPW51bGw7YnJlYWt9aWYobnVsbCE9PXApe3AucmV0dXJuPW0sWm89cDticmVha31abz1tfX19dmFyIGg9dS5hbHRlcm5hdGU7aWYobnVsbCE9PWgpe3ZhciBnPWguY2hpbGQ7aWYobnVsbCE9PWcpe2guY2hpbGQ9bnVsbDtkb3t2YXIgdj1nLnNpYmxpbmc7Zy5zaWJsaW5nPW51bGwsZz12fXdoaWxlKG51bGwhPT1nKX19Wm89dX19aWYoMjA2NCZ1LnN1YnRyZWVGbGFncyYmbnVsbCE9PW8pby5yZXR1cm49dSwKWm89bztlbHNlIGU6Zm9yKDtudWxsIT09Wm87KXtpZigyMDQ4Jih1PVpvKS5mbGFncylzd2l0Y2godS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dGkoOSx1LHUucmV0dXJuKX12YXIgeT11LnNpYmxpbmc7aWYobnVsbCE9PXkpe3kucmV0dXJuPXUucmV0dXJuLFpvPXk7YnJlYWsgZX1abz11LnJldHVybn19dmFyIGI9ZS5jdXJyZW50O2Zvcihabz1iO251bGwhPT1abzspe3ZhciBrPShvPVpvKS5jaGlsZDtpZigyMDY0Jm8uc3VidHJlZUZsYWdzJiZudWxsIT09aylrLnJldHVybj1vLFpvPWs7ZWxzZSBlOmZvcihvPWI7bnVsbCE9PVpvOyl7aWYoMjA0OCYoaT1abykuZmxhZ3MpdHJ5e3N3aXRjaChpLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpyaSg5LGkpfX1jYXRjaChlKXtFcyhpLGkucmV0dXJuLGUpfWlmKGk9PT1vKXtabz1udWxsO2JyZWFrIGV9dmFyIHc9aS5zaWJsaW5nO2lmKG51bGwhPT13KXt3LnJldHVybj1pLnJldHVybixabz13O2JyZWFrIGV9Wm89aS5yZXR1cm59fWlmKF9pPWwsV2woKSxhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7YW4ub25Qb3N0Q29tbWl0RmliZXJSb290KGxuLGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7a249dCxOaS50cmFuc2l0aW9uPW59fXJldHVybiExfWZ1bmN0aW9uIHhzKGUsbix0KXtlPVJhKGUsbj1tbygwLG49c28odCxuKSwxKSwxKSxuPWVzKCksbnVsbCE9PWUmJih5bihlLDEsbikscnMoZSxuKSl9ZnVuY3Rpb24gRXMoZSxuLHQpe2lmKDM9PT1lLnRhZyl4cyhlLGUsdCk7ZWxzZSBmb3IoO251bGwhPT1uOyl7aWYoMz09PW4udGFnKXt4cyhuLGUsdCk7YnJlYWt9aWYoMT09PW4udGFnKXt2YXIgcj1uLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygbi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09JGl8fCEkaS5oYXMocikpKXtuPVJhKG4sZT1obyhuLGU9c28odCxlKSwxKSwxKSxlPWVzKCksbnVsbCE9PW4mJih5bihuLDEsZSkscnMobixlKSk7YnJlYWt9fW49bi5yZXR1cm59fWZ1bmN0aW9uIENzKGUsbix0KXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUobiksbj1lcygpLGUucGluZ2VkTGFuZXN8PWUuc3VzcGVuZGVkTGFuZXMmdCxQaT09PWUmJihMaSZ0KT09PXQmJig0PT09Uml8fDM9PT1SaSYmKDEzMDAyMzQyNCZMaSk9PT1MaSYmNTAwPkdlKCktQmk/ZHMoZSwwKTpVaXw9dCkscnMoZSxuKX1mdW5jdGlvbiB6cyhlLG4pezA9PT1uJiYoMSZlLm1vZGU/KG49Zm4sISgxMzAwMjM0MjQmKGZuPDw9MSkpJiYoZm49NDE5NDMwNCkpOm49MSk7dmFyIHQ9ZXMoKTtudWxsIT09KGU9UGEoZSxuKSkmJih5bihlLG4sdCkscnMoZSx0KSl9ZnVuY3Rpb24gTnMoZSl7dmFyIG49ZS5tZW1vaXplZFN0YXRlLHQ9MDtudWxsIT09biYmKHQ9bi5yZXRyeUxhbmUpLHpzKGUsdCl9ZnVuY3Rpb24gX3MoZSxuKXt2YXIgdD0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxsPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09bCYmKHQ9bC5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKG4pLHpzKGUsdCl9ZnVuY3Rpb24gUHMoZSxuKXtyZXR1cm4gcWUoZSxuKX1mdW5jdGlvbiBUcyhlLG4sdCxyKXt0aGlzLnRhZz1lLHRoaXMua2V5PXQsdGhpcy5zaWJsaW5nPXRoaXMuY2hpbGQ9dGhpcy5yZXR1cm49dGhpcy5zdGF0ZU5vZGU9dGhpcy50eXBlPXRoaXMuZWxlbWVudFR5cGU9bnVsbCx0aGlzLmluZGV4PTAsdGhpcy5yZWY9bnVsbCx0aGlzLnBlbmRpbmdQcm9wcz1uLHRoaXMuZGVwZW5kZW5jaWVzPXRoaXMubWVtb2l6ZWRTdGF0ZT10aGlzLnVwZGF0ZVF1ZXVlPXRoaXMubWVtb2l6ZWRQcm9wcz1udWxsLHRoaXMubW9kZT1yLHRoaXMuc3VidHJlZUZsYWdzPXRoaXMuZmxhZ3M9MCx0aGlzLmRlbGV0aW9ucz1udWxsLHRoaXMuY2hpbGRMYW5lcz10aGlzLmxhbmVzPTAsdGhpcy5hbHRlcm5hdGU9bnVsbH1mdW5jdGlvbiBMcyhlLG4sdCxyKXtyZXR1cm4gbmV3IFRzKGUsbix0LHIpfWZ1bmN0aW9uIE1zKGUpe3JldHVybiEoIShlPWUucHJvdG90eXBlKXx8IWUuaXNSZWFjdENvbXBvbmVudCl9ZnVuY3Rpb24gRnMoZSxuKXt2YXIgdD1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PXQ/KCh0PUxzKGUudGFnLG4sZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSx0LnR5cGU9ZS50eXBlLHQuc3RhdGVOb2RlPWUuc3RhdGVOb2RlLHQuYWx0ZXJuYXRlPWUsZS5hbHRlcm5hdGU9dCk6KHQucGVuZGluZ1Byb3BzPW4sdC50eXBlPWUudHlwZSx0LmZsYWdzPTAsdC5zdWJ0cmVlRmxhZ3M9MCx0LmRlbGV0aW9ucz1udWxsKSx0LmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3MsdC5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyx0LmxhbmVzPWUubGFuZXMsdC5jaGlsZD1lLmNoaWxkLHQubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsdC5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSx0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbj1lLmRlcGVuZGVuY2llcyx0LmRlcGVuZGVuY2llcz1udWxsPT09bj9udWxsOntsYW5lczpuLmxhbmVzLGZpcnN0Q29udGV4dDpuLmZpcnN0Q29udGV4dH0sdC5zaWJsaW5nPWUuc2libGluZyx0LmluZGV4PWUuaW5kZXgsdC5yZWY9ZS5yZWYsdH1mdW5jdGlvbiBScyhlLG4sdCxyLGwsdSl7dmFyIG89MjtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpTXMoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89NTtlbHNlIGU6c3dpdGNoKGUpe2Nhc2UgeDpyZXR1cm4gRHModC5jaGlsZHJlbixsLHUsbik7Y2FzZSBFOm89OCxsfD04O2JyZWFrO2Nhc2UgQzpyZXR1cm4oZT1McygxMix0LG4sMnxsKSkuZWxlbWVudFR5cGU9QyxlLmxhbmVzPXUsZTtjYXNlIFA6cmV0dXJuKGU9THMoMTMsdCxuLGwpKS5lbGVtZW50VHlwZT1QLGUubGFuZXM9dSxlO2Nhc2UgVDoKcmV0dXJuKGU9THMoMTksdCxuLGwpKS5lbGVtZW50VHlwZT1ULGUubGFuZXM9dSxlO2Nhc2UgRjpyZXR1cm4gSXModCxsLHUsbik7ZGVmYXVsdDppZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXN3aXRjaChlLiQkdHlwZW9mKXtjYXNlIHo6bz0xMDticmVhayBlO2Nhc2UgTjpvPTk7YnJlYWsgZTtjYXNlIF86bz0xMTticmVhayBlO2Nhc2UgTDpvPTE0O2JyZWFrIGU7Y2FzZSBNOm89MTYscj1udWxsO2JyZWFrIGV9dGhyb3cgRXJyb3IoYSgxMzAsbnVsbD09ZT9lOnR5cGVvZiBlLCIiKSl9cmV0dXJuKG49THMobyx0LG4sbCkpLmVsZW1lbnRUeXBlPWUsbi50eXBlPXIsbi5sYW5lcz11LG59ZnVuY3Rpb24gRHMoZSxuLHQscil7cmV0dXJuKGU9THMoNyxlLHIsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBJcyhlLG4sdCxyKXtyZXR1cm4oZT1McygyMixlLHIsbikpLmVsZW1lbnRUeXBlPUYsZS5sYW5lcz10LGUuc3RhdGVOb2RlPXtpc0hpZGRlbjohMX0sZX1mdW5jdGlvbiBPcyhlLG4sdCl7cmV0dXJuKGU9THMoNixlLG51bGwsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBVcyhlLG4sdCl7cmV0dXJuKG49THMoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LG4pKS5sYW5lcz10LG4uc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSxufWZ1bmN0aW9uIFZzKGUsbix0LHIsbCl7dGhpcy50YWc9bix0aGlzLmNvbnRhaW5lckluZm89ZSx0aGlzLmZpbmlzaGVkV29yaz10aGlzLnBpbmdDYWNoZT10aGlzLmN1cnJlbnQ9dGhpcy5wZW5kaW5nQ2hpbGRyZW49bnVsbCx0aGlzLnRpbWVvdXRIYW5kbGU9LTEsdGhpcy5jYWxsYmFja05vZGU9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9bnVsbCx0aGlzLmNhbGxiYWNrUHJpb3JpdHk9MCx0aGlzLmV2ZW50VGltZXM9dm4oMCksdGhpcy5leHBpcmF0aW9uVGltZXM9dm4oLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5maW5pc2hlZExhbmVzPXRoaXMubXV0YWJsZVJlYWRMYW5lcz10aGlzLmV4cGlyZWRMYW5lcz10aGlzLnBpbmdlZExhbmVzPXRoaXMuc3VzcGVuZGVkTGFuZXM9dGhpcy5wZW5kaW5nTGFuZXM9MCx0aGlzLmVudGFuZ2xlbWVudHM9dm4oMCksdGhpcy5pZGVudGlmaWVyUHJlZml4PXIsdGhpcy5vblJlY292ZXJhYmxlRXJyb3I9bCx0aGlzLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGE9bnVsbH1mdW5jdGlvbiBBcyhlLG4sdCxyLGwsYSx1LG8saSl7cmV0dXJuIGU9bmV3IFZzKGUsbix0LG8saSksMT09PW4/KG49MSwhMD09PWEmJihufD04KSk6bj0wLGE9THMoMyxudWxsLG51bGwsbiksZS5jdXJyZW50PWEsYS5zdGF0ZU5vZGU9ZSxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6dCxjYWNoZTpudWxsLHRyYW5zaXRpb25zOm51bGwscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpudWxsfSxMYShhKSxlfWZ1bmN0aW9uIEJzKGUpe2lmKCFlKXJldHVybiBObDtlOntpZihXZShlPWUuX3JlYWN0SW50ZXJuYWxzKSE9PWV8fDEhPT1lLnRhZyl0aHJvdyBFcnJvcihhKDE3MCkpO3ZhciBuPWU7ZG97c3dpdGNoKG4udGFnKXtjYXNlIDM6bj1uLnN0YXRlTm9kZS5jb250ZXh0O2JyZWFrIGU7Y2FzZSAxOmlmKE1sKG4udHlwZSkpe249bi5zdGF0ZU5vZGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ7YnJlYWsgZX19bj1uLnJldHVybn13aGlsZShudWxsIT09bik7dGhyb3cgRXJyb3IoYSgxNzEpKX1pZigxPT09ZS50YWcpe3ZhciB0PWUudHlwZTtpZihNbCh0KSlyZXR1cm4gRGwoZSx0LG4pfXJldHVybiBufWZ1bmN0aW9uIFdzKGUsbix0LHIsbCxhLHUsbyxpKXtyZXR1cm4oZT1Bcyh0LHIsITAsZSwwLGEsMCxvLGkpKS5jb250ZXh0PUJzKG51bGwpLHQ9ZS5jdXJyZW50LChhPUZhKHI9ZXMoKSxsPW5zKHQpKSkuY2FsbGJhY2s9bnVsbCE9bj9uOm51bGwsUmEodCxhLGwpLGUuY3VycmVudC5sYW5lcz1sLHluKGUsbCxyKSxycyhlLHIpLGV9ZnVuY3Rpb24gSHMoZSxuLHQscil7dmFyIGw9bi5jdXJyZW50LGE9ZXMoKSx1PW5zKGwpO3JldHVybiB0PUJzKHQpLG51bGw9PT1uLmNvbnRleHQ/bi5jb250ZXh0PXQ6bi5wZW5kaW5nQ29udGV4dD10LChuPUZhKGEsdSkpLnBheWxvYWQ9e2VsZW1lbnQ6ZX0sbnVsbCE9PShyPXZvaWQgMD09PXI/bnVsbDpyKSYmKG4uY2FsbGJhY2s9ciksbnVsbCE9PShlPVJhKGwsbix1KSkmJih0cyhlLGwsdSxhKSxEYShlLGwsdSkpLHV9ZnVuY3Rpb24gUXMoZSl7cmV0dXJuKGU9ZS5jdXJyZW50KS5jaGlsZD8oZS5jaGlsZC50YWcsZS5jaGlsZC5zdGF0ZU5vZGUpOm51bGx9ZnVuY3Rpb24ganMoZSxuKXtpZihudWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7dmFyIHQ9ZS5yZXRyeUxhbmU7ZS5yZXRyeUxhbmU9MCE9PXQmJnQ8bj90Om59fWZ1bmN0aW9uICRzKGUsbil7anMoZSxuKSwoZT1lLmFsdGVybmF0ZSkmJmpzKGUsbil9eGk9ZnVuY3Rpb24oZSxuLHQpe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PW4ucGVuZGluZ1Byb3BzfHxQbC5jdXJyZW50KWtvPSEwO2Vsc2V7aWYoIShlLmxhbmVzJnR8fDEyOCZuLmZsYWdzKSlyZXR1cm4ga289ITEsZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuLnRhZyl7Y2FzZSAzOlRvKG4pLHBhKCk7YnJlYWs7Y2FzZSA1OmF1KG4pO2JyZWFrO2Nhc2UgMTpNbChuLnR5cGUpJiZJbChuKTticmVhaztjYXNlIDQ6cnUobixuLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciByPW4udHlwZS5fY29udGV4dCxsPW4ubWVtb2l6ZWRQcm9wcy52YWx1ZTt6bCh2YSxyLl9jdXJyZW50VmFsdWUpLHIuX2N1cnJlbnRWYWx1ZT1sO2JyZWFrO2Nhc2UgMTM6aWYobnVsbCE9PShyPW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuIG51bGwhPT1yLmRlaHlkcmF0ZWQ/KHpsKG91LDEmb3UuY3VycmVudCksbi5mbGFnc3w9MTI4LG51bGwpOnQmbi5jaGlsZC5jaGlsZExhbmVzP09vKGUsbix0KTooemwob3UsMSZvdS5jdXJyZW50KSwKbnVsbCE9PShlPVFvKGUsbix0KSk/ZS5zaWJsaW5nOm51bGwpO3psKG91LDEmb3UuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihyPSEhKHQmbi5jaGlsZExhbmVzKSwxMjgmZS5mbGFncyl7aWYocilyZXR1cm4gV28oZSxuLHQpO24uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9bi5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLHpsKG91LG91LmN1cnJlbnQpLHIpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBuLmxhbmVzPTAsQ28oZSxuLHQpfXJldHVybiBRbyhlLG4sdCl9KGUsbix0KTtrbz0hISgxMzEwNzImZS5mbGFncyl9ZWxzZSBrbz0hMSxsYSYmMTA0ODU3NiZuLmZsYWdzJiZKbChuLCRsLG4uaW5kZXgpO3N3aXRjaChuLmxhbmVzPTAsbi50YWcpe2Nhc2UgMjp2YXIgcj1uLnR5cGU7SG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzO3ZhciBsPUxsKG4sX2wuY3VycmVudCk7RWEobix0KSxsPXh1KG51bGwsbixyLGUsbCx0KTt2YXIgdT1FdSgpO3JldHVybiBuLmZsYWdzfD0xLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnJlbmRlciYmdm9pZCAwPT09bC4kJHR5cGVvZj8obi50YWc9MSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsTWwocik/KHU9ITAsSWwobikpOnU9ITEsbi5tZW1vaXplZFN0YXRlPW51bGwhPT1sLnN0YXRlJiZ2b2lkIDAhPT1sLnN0YXRlP2wuc3RhdGU6bnVsbCxMYShuKSxsLnVwZGF0ZXI9QmEsbi5zdGF0ZU5vZGU9bCxsLl9yZWFjdEludGVybmFscz1uLGphKG4scixlLHQpLG49UG8obnVsbCxuLHIsITAsdSx0KSk6KG4udGFnPTAsbGEmJnUmJmVhKG4pLHdvKG51bGwsbixsLHQpLG49bi5jaGlsZCksbjtjYXNlIDE2OnI9bi5lbGVtZW50VHlwZTtlOntzd2l0Y2goSG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzLHI9KGw9ci5faW5pdCkoci5fcGF5bG9hZCksbi50eXBlPXIsbD1uLnRhZz1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gTXMoZSk/MTowO2lmKG51bGwhPWUpe2lmKChlPWUuJCR0eXBlb2YpPT09XylyZXR1cm4gMTE7aWYoZT09PUwpcmV0dXJuIDE0fXJldHVybiAyfShyKSxlPWdhKHIsZSksbCl7Y2FzZSAwOm49Tm8obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTpuPV9vKG51bGwsbixyLGUsdCk7YnJlYWsgZTtjYXNlIDExOm49U28obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTQ6bj14byhudWxsLG4scixnYShyLnR5cGUsZSksdCk7YnJlYWsgZX10aHJvdyBFcnJvcihhKDMwNixyLCIiKSl9cmV0dXJuIG47Y2FzZSAwOnJldHVybiByPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLE5vKGUsbixyLGw9bi5lbGVtZW50VHlwZT09PXI/bDpnYShyLGwpLHQpO2Nhc2UgMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxfbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDM6ZTp7aWYoVG8obiksbnVsbD09PWUpdGhyb3cgRXJyb3IoYSgzODcpKTtyPW4ucGVuZGluZ1Byb3BzLGw9KHU9bi5tZW1vaXplZFN0YXRlKS5lbGVtZW50LE1hKGUsbiksT2EobixyLG51bGwsdCk7dmFyIG89bi5tZW1vaXplZFN0YXRlO2lmKHI9by5lbGVtZW50LHUuaXNEZWh5ZHJhdGVkKXtpZih1PXtlbGVtZW50OnIsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOm8uY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpvLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6by50cmFuc2l0aW9uc30sbi51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9dSxuLm1lbW9pemVkU3RhdGU9dSwyNTYmbi5mbGFncyl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjMpKSxuKSk7YnJlYWsgZX1pZihyIT09bCl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjQpKSxuKSk7YnJlYWsgZX1mb3IocmE9c2wobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mby5maXJzdENoaWxkKSx0YT1uLGxhPSEwLGFhPW51bGwsdD1HYShuLG51bGwscix0KSxuLmNoaWxkPXQ7dDspdC5mbGFncz0tMyZ0LmZsYWdzfDQwOTYsdD10LnNpYmxpbmd9ZWxzZXtpZihwYSgpLHI9PT1sKXtuPVFvKGUsbix0KTticmVhayBlfXdvKGUsbixyLHQpfW49bi5jaGlsZH1yZXR1cm4gbjtjYXNlIDU6cmV0dXJuIGF1KG4pLG51bGw9PT1lJiZzYShuKSxyPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLHU9bnVsbCE9PWU/ZS5tZW1vaXplZFByb3BzOm51bGwsbz1sLmNoaWxkcmVuLHRsKHIsbCk/bz1udWxsOm51bGwhPT11JiZ0bChyLHUpJiYobi5mbGFnc3w9MzIpLHpvKGUsbiksd28oZSxuLG8sdCksbi5jaGlsZDtjYXNlIDY6cmV0dXJuIG51bGw9PT1lJiZzYShuKSxudWxsO2Nhc2UgMTM6cmV0dXJuIE9vKGUsbix0KTtjYXNlIDQ6cmV0dXJuIHJ1KG4sbi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscj1uLnBlbmRpbmdQcm9wcyxudWxsPT09ZT9uLmNoaWxkPVhhKG4sbnVsbCxyLHQpOndvKGUsbixyLHQpLG4uY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxTbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDc6cmV0dXJuIHdvKGUsbixuLnBlbmRpbmdQcm9wcyx0KSxuLmNoaWxkO2Nhc2UgODpjYXNlIDEyOnJldHVybiB3byhlLG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sdCksbi5jaGlsZDtjYXNlIDEwOmU6e2lmKHI9bi50eXBlLl9jb250ZXh0LGw9bi5wZW5kaW5nUHJvcHMsdT1uLm1lbW9pemVkUHJvcHMsbz1sLnZhbHVlLHpsKHZhLHIuX2N1cnJlbnRWYWx1ZSksci5fY3VycmVudFZhbHVlPW8sbnVsbCE9PXUpaWYob3IodS52YWx1ZSxvKSl7aWYodS5jaGlsZHJlbj09PWwuY2hpbGRyZW4mJiFQbC5jdXJyZW50KXtuPVFvKGUsbix0KTticmVhayBlfX1lbHNlIGZvcihudWxsIT09KHU9bi5jaGlsZCkmJih1LnJldHVybj1uKTtudWxsIT09dTspe3ZhciBpPXUuZGVwZW5kZW5jaWVzO2lmKG51bGwhPT1pKXtvPXUuY2hpbGQ7Zm9yKHZhciBzPWkuZmlyc3RDb250ZXh0O251bGwhPT1zOyl7aWYocy5jb250ZXh0PT09cil7CmlmKDE9PT11LnRhZyl7KHM9RmEoLTEsdCYtdCkpLnRhZz0yO3ZhciBjPXUudXBkYXRlUXVldWU7aWYobnVsbCE9PWMpe3ZhciBmPShjPWMuc2hhcmVkKS5wZW5kaW5nO251bGw9PT1mP3MubmV4dD1zOihzLm5leHQ9Zi5uZXh0LGYubmV4dD1zKSxjLnBlbmRpbmc9c319dS5sYW5lc3w9dCxudWxsIT09KHM9dS5hbHRlcm5hdGUpJiYocy5sYW5lc3w9dCkseGEodS5yZXR1cm4sdCxuKSxpLmxhbmVzfD10O2JyZWFrfXM9cy5uZXh0fX1lbHNlIGlmKDEwPT09dS50YWcpbz11LnR5cGU9PT1uLnR5cGU/bnVsbDp1LmNoaWxkO2Vsc2UgaWYoMTg9PT11LnRhZyl7aWYobnVsbD09PShvPXUucmV0dXJuKSl0aHJvdyBFcnJvcihhKDM0MSkpO28ubGFuZXN8PXQsbnVsbCE9PShpPW8uYWx0ZXJuYXRlKSYmKGkubGFuZXN8PXQpLHhhKG8sdCxuKSxvPXUuc2libGluZ31lbHNlIG89dS5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj11O2Vsc2UgZm9yKG89dTtudWxsIT09bzspe2lmKG89PT1uKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PSh1PW8uc2libGluZykpe3UucmV0dXJuPW8ucmV0dXJuLG89dTticmVha31vPW8ucmV0dXJufXU9b313byhlLG4sbC5jaGlsZHJlbix0KSxuPW4uY2hpbGR9cmV0dXJuIG47Y2FzZSA5OnJldHVybiBsPW4udHlwZSxyPW4ucGVuZGluZ1Byb3BzLmNoaWxkcmVuLEVhKG4sdCkscj1yKGw9Q2EobCkpLG4uZmxhZ3N8PTEsd28oZSxuLHIsdCksbi5jaGlsZDtjYXNlIDE0OnJldHVybiBsPWdhKHI9bi50eXBlLG4ucGVuZGluZ1Byb3BzKSx4byhlLG4scixsPWdhKHIudHlwZSxsKSx0KTtjYXNlIDE1OnJldHVybiBFbyhlLG4sbi50eXBlLG4ucGVuZGluZ1Byb3BzLHQpO2Nhc2UgMTc6cmV0dXJuIHI9bi50eXBlLGw9bi5wZW5kaW5nUHJvcHMsbD1uLmVsZW1lbnRUeXBlPT09cj9sOmdhKHIsbCksSG8oZSxuKSxuLnRhZz0xLE1sKHIpPyhlPSEwLElsKG4pKTplPSExLEVhKG4sdCksSGEobixyLGwpLGphKG4scixsLHQpLFBvKG51bGwsbixyLCEwLGUsdCk7Y2FzZSAxOTpyZXR1cm4gV28oZSxuLHQpO2Nhc2UgMjI6cmV0dXJuIENvKGUsbix0KX10aHJvdyBFcnJvcihhKDE1NixuLnRhZykpfTt2YXIgcXM9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIEtzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFlzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFhzKGUpe3JldHVybiEoIWV8fDEhPT1lLm5vZGVUeXBlJiY5IT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlKX1mdW5jdGlvbiBHcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSYmKDghPT1lLm5vZGVUeXBlfHwiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICIhPT1lLm5vZGVWYWx1ZSkpfWZ1bmN0aW9uIFpzKCl7fWZ1bmN0aW9uIEpzKGUsbix0LHIsbCl7dmFyIGE9dC5fcmVhY3RSb290Q29udGFpbmVyO2lmKGEpe3ZhciB1PWE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGwpe3ZhciBvPWw7bD1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO28uY2FsbChlKX19SHMobix1LGUsbCl9ZWxzZSB1PWZ1bmN0aW9uKGUsbix0LHIsbCl7aWYobCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBhPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO2EuY2FsbChlKX19dmFyIHU9V3MobixyLGUsMCxudWxsLCExLDAsIiIsWnMpO3JldHVybiBlLl9yZWFjdFJvb3RDb250YWluZXI9dSxlW21sXT11LmN1cnJlbnQsV3IoOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLGNzKCksdX1mb3IoO2w9ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBvPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKGkpO28uY2FsbChlKX19dmFyIGk9QXMoZSwwLCExLG51bGwsMCwhMSwwLCIiLFpzKTtyZXR1cm4gZS5fcmVhY3RSb290Q29udGFpbmVyPWksZVttbF09aS5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxjcygoZnVuY3Rpb24oKXtIcyhuLGksdCxyKX0pKSxpfSh0LG4sZSxsLHIpO3JldHVybiBRcyh1KX1Zcy5wcm90b3R5cGUucmVuZGVyPUtzLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGw9PT1uKXRocm93IEVycm9yKGEoNDA5KSk7SHMoZSxuLG51bGwsbnVsbCl9LFlzLnByb3RvdHlwZS51bm1vdW50PUtzLnByb3RvdHlwZS51bm1vdW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGwhPT1lKXt0aGlzLl9pbnRlcm5hbFJvb3Q9bnVsbDt2YXIgbj1lLmNvbnRhaW5lckluZm87Y3MoKGZ1bmN0aW9uKCl7SHMobnVsbCxlLG51bGwsbnVsbCl9KSksblttbF09bnVsbH19LFlzLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgbj1DbigpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5Om59O2Zvcih2YXIgdD0wO3Q8Um4ubGVuZ3RoJiYwIT09biYmbjxSblt0XS5wcmlvcml0eTt0KyspO1JuLnNwbGljZSh0LDAsZSksMD09PXQmJlVuKGUpfX0sU249ZnVuY3Rpb24oZSl7c3dpdGNoKGUudGFnKXtjYXNlIDM6dmFyIG49ZS5zdGF0ZU5vZGU7aWYobi5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXt2YXIgdD1kbihuLnBlbmRpbmdMYW5lcyk7MCE9PXQmJihibihuLDF8dCkscnMobixHZSgpKSwhKDYmX2kpJiYoV2k9R2UoKSs1MDAsV2woKSkpfWJyZWFrO2Nhc2UgMTM6Y3MoKGZ1bmN0aW9uKCl7dmFyIG49UGEoZSwxKTtpZihudWxsIT09bil7dmFyIHQ9ZXMoKTt0cyhuLGUsMSx0KX19KSksJHMoZSwxKX19LHhuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPVBhKGUsMTM0MjE3NzI4KTtpZihudWxsIT09bil0cyhuLGUsMTM0MjE3NzI4LGVzKCkpOyRzKGUsMTM0MjE3NzI4KX19LEVuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPW5zKGUpLHQ9UGEoZSxuKQo7aWYobnVsbCE9PXQpdHModCxlLG4sZXMoKSk7JHMoZSxuKX19LENuPWZ1bmN0aW9uKCl7cmV0dXJuIGtufSx6bj1mdW5jdGlvbihlLG4pe3ZhciB0PWtuO3RyeXtyZXR1cm4ga249ZSxuKCl9ZmluYWxseXtrbj10fX0sU2U9ZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuKXtjYXNlImlucHV0IjppZihaKGUsdCksbj10Lm5hbWUsInJhZGlvIj09PXQudHlwZSYmbnVsbCE9bil7Zm9yKHQ9ZTt0LnBhcmVudE5vZGU7KXQ9dC5wYXJlbnROb2RlO2Zvcih0PXQucXVlcnlTZWxlY3RvckFsbCgiaW5wdXRbbmFtZT0iK0pTT04uc3RyaW5naWZ5KCIiK24pKyddW3R5cGU9InJhZGlvIl0nKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9d2wocik7aWYoIWwpdGhyb3cgRXJyb3IoYSg5MCkpO3EociksWihyLGwpfX19YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6YWUoZSx0KTticmVhaztjYXNlInNlbGVjdCI6bnVsbCE9KG49dC52YWx1ZSkmJnRlKGUsISF0Lm11bHRpcGxlLG4sITEpfX0sX2U9c3MsUGU9Y3M7dmFyIGVjPXt1c2luZ0NsaWVudEVudHJ5UG9pbnQ6ITEsRXZlbnRzOltibCxrbCx3bCx6ZSxOZSxzc119LG5jPXtmaW5kRmliZXJCeUhvc3RJbnN0YW5jZTp5bCxidW5kbGVUeXBlOjAsdmVyc2lvbjoiMTguMi4wIixyZW5kZXJlclBhY2thZ2VOYW1lOiJyZWFjdC1kb20ifSx0Yz17YnVuZGxlVHlwZTpuYy5idW5kbGVUeXBlLHZlcnNpb246bmMudmVyc2lvbixyZW5kZXJlclBhY2thZ2VOYW1lOm5jLnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6bmMucmVuZGVyZXJDb25maWcsb3ZlcnJpZGVIb29rU3RhdGU6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZURlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZVJlbmFtZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzOm51bGwsb3ZlcnJpZGVQcm9wc0RlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzUmVuYW1lUGF0aDpudWxsLHNldEVycm9ySGFuZGxlcjpudWxsLHNldFN1c3BlbnNlSGFuZGxlcjpudWxsLHNjaGVkdWxlVXBkYXRlOm51bGwsY3VycmVudERpc3BhdGNoZXJSZWY6ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLGZpbmRIb3N0SW5zdGFuY2VCeUZpYmVyOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09KGU9amUoZSkpP251bGw6ZS5zdGF0ZU5vZGV9LGZpbmRGaWJlckJ5SG9zdEluc3RhbmNlOm5jLmZpbmRGaWJlckJ5SG9zdEluc3RhbmNlfHxmdW5jdGlvbigpe3JldHVybiBudWxsfSxmaW5kSG9zdEluc3RhbmNlc0ZvclJlZnJlc2g6bnVsbCxzY2hlZHVsZVJlZnJlc2g6bnVsbCxzY2hlZHVsZVJvb3Q6bnVsbCxzZXRSZWZyZXNoSGFuZGxlcjpudWxsLGdldEN1cnJlbnRGaWJlcjpudWxsLHJlY29uY2lsZXJWZXJzaW9uOiIxOC4yLjAtbmV4dC05ZTNiNzcyYjgtMjAyMjA2MDgifTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIF9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyl7dmFyIHJjPV9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztpZighcmMuaXNEaXNhYmxlZCYmcmMuc3VwcG9ydHNGaWJlcil0cnl7bG49cmMuaW5qZWN0KHRjKSxhbj1yY31jYXRjaChjZSl7fX1uLl9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPWVjLG4uY3JlYXRlUG9ydGFsPWZ1bmN0aW9uKGUsbil7dmFyIHQ9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGw7aWYoIVhzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIGZ1bmN0aW9uKGUsbix0KXt2YXIgcj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbDtyZXR1cm57JCR0eXBlb2Y6UyxrZXk6bnVsbD09cj9udWxsOiIiK3IsY2hpbGRyZW46ZSxjb250YWluZXJJbmZvOm4saW1wbGVtZW50YXRpb246dH19KGUsbixudWxsLHQpfSxuLmNyZWF0ZVJvb3Q9ZnVuY3Rpb24oZSxuKXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSgyOTkpKTt2YXIgdD0hMSxyPSIiLGw9cXM7cmV0dXJuIG51bGwhPW4mJighMD09PW4udW5zdGFibGVfc3RyaWN0TW9kZSYmKHQ9ITApLHZvaWQgMCE9PW4uaWRlbnRpZmllclByZWZpeCYmKHI9bi5pZGVudGlmaWVyUHJlZml4KSx2b2lkIDAhPT1uLm9uUmVjb3ZlcmFibGVFcnJvciYmKGw9bi5vblJlY292ZXJhYmxlRXJyb3IpKSxuPUFzKGUsMSwhMSxudWxsLDAsdCwwLHIsbCksZVttbF09bi5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxuZXcgS3Mobil9LG4uZmluZERPTU5vZGU9ZnVuY3Rpb24oZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigxPT09ZS5ub2RlVHlwZSlyZXR1cm4gZTt2YXIgbj1lLl9yZWFjdEludGVybmFscztpZih2b2lkIDA9PT1uKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5yZW5kZXIpdGhyb3cgRXJyb3IoYSgxODgpKTt0aHJvdyBlPU9iamVjdC5rZXlzKGUpLmpvaW4oIiwiKSxFcnJvcihhKDI2OCxlKSl9cmV0dXJuIGU9bnVsbD09PShlPWplKG4pKT9udWxsOmUuc3RhdGVOb2RlfSxuLmZsdXNoU3luYz1mdW5jdGlvbihlKXtyZXR1cm4gY3MoZSl9LG4uaHlkcmF0ZT1mdW5jdGlvbihlLG4sdCl7aWYoIUdzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIEpzKG51bGwsZSxuLCEwLHQpfSxuLmh5ZHJhdGVSb290PWZ1bmN0aW9uKGUsbix0KXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSg0MDUpKTt2YXIgcj1udWxsIT10JiZ0Lmh5ZHJhdGVkU291cmNlc3x8bnVsbCxsPSExLHU9IiIsbz1xcztpZihudWxsIT10JiYoITA9PT10LnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT10LmlkZW50aWZpZXJQcmVmaXgmJih1PXQuaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09dC5vblJlY292ZXJhYmxlRXJyb3ImJihvPXQub25SZWNvdmVyYWJsZUVycm9yKSksbj1XcyhuLG51bGwsZSwxLG51bGwhPXQ/dDpudWxsLGwsMCx1LG8pLGVbbWxdPW4uY3VycmVudCxXcihlKSxyKWZvcihlPTA7ZTxyLmxlbmd0aDtlKyspbD0obD0odD1yW2VdKS5fZ2V0VmVyc2lvbikodC5fc291cmNlKSwKbnVsbD09bi5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP24ubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bdCxsXTpuLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaCh0LGwpO3JldHVybiBuZXcgWXMobil9LG4ucmVuZGVyPWZ1bmN0aW9uKGUsbix0KXtpZighR3MobikpdGhyb3cgRXJyb3IoYSgyMDApKTtyZXR1cm4gSnMobnVsbCxlLG4sITEsdCl9LG4udW5tb3VudENvbXBvbmVudEF0Tm9kZT1mdW5jdGlvbihlKXtpZighR3MoZSkpdGhyb3cgRXJyb3IoYSg0MCkpO3JldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoY3MoKGZ1bmN0aW9uKCl7SnMobnVsbCxudWxsLGUsITEsKGZ1bmN0aW9uKCl7ZS5fcmVhY3RSb290Q29udGFpbmVyPW51bGwsZVttbF09bnVsbH0pKX0pKSwhMCl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9c3Msbi51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLG4sdCxyKXtpZighR3ModCkpdGhyb3cgRXJyb3IoYSgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihhKDM4KSk7cmV0dXJuIEpzKGUsbix0LCExLHIpfSxuLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LDUwODIwNyhlLG4pe2Z1bmN0aW9uIHQoZSxuKXt2YXIgdD1lLmxlbmd0aDtlLnB1c2gobik7ZTpmb3IoOzA8dDspe3ZhciByPXQtMT4+PjEsbD1lW3JdO2lmKCEoMDxhKGwsbikpKWJyZWFrIGU7ZVtyXT1uLGVbdF09bCx0PXJ9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD9udWxsOmVbMF19ZnVuY3Rpb24gbChlKXtpZigwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7dmFyIG49ZVswXSx0PWUucG9wKCk7aWYodCE9PW4pe2VbMF09dDtlOmZvcih2YXIgcj0wLGw9ZS5sZW5ndGgsdT1sPj4+MTtyPHU7KXt2YXIgbz0yKihyKzEpLTEsaT1lW29dLHM9bysxLGM9ZVtzXTtpZigwPmEoaSx0KSlzPGwmJjA+YShjLGkpPyhlW3JdPWMsZVtzXT10LHI9cyk6KGVbcl09aSxlW29dPXQscj1vKTtlbHNle2lmKCEoczxsJiYwPmEoYyx0KSkpYnJlYWsgZTtlW3JdPWMsZVtzXT10LHI9c319fXJldHVybiBufWZ1bmN0aW9uIGEoZSxuKXt2YXIgdD1lLnNvcnRJbmRleC1uLnNvcnRJbmRleDtyZXR1cm4gMCE9PXQ/dDplLmlkLW4uaWR9aWYoIm9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdyl7dmFyIHU9cGVyZm9ybWFuY2U7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gdS5ub3coKX19ZWxzZXt2YXIgbz1EYXRlLGk9by5ub3coKTtuLnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiBvLm5vdygpLWl9fXZhciBzPVtdLGM9W10sZj0xLGQ9bnVsbCxwPTMsbT0hMSxoPSExLGc9ITEsdj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwseT0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLGI9InVuZGVmaW5lZCIhPXR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gayhlKXtmb3IodmFyIG49cihjKTtudWxsIT09bjspe2lmKG51bGw9PT1uLmNhbGxiYWNrKWwoYyk7ZWxzZXtpZighKG4uc3RhcnRUaW1lPD1lKSlicmVhaztsKGMpLG4uc29ydEluZGV4PW4uZXhwaXJhdGlvblRpbWUsdChzLG4pfW49cihjKX19ZnVuY3Rpb24gdyhlKXtpZihnPSExLGsoZSksIWgpaWYobnVsbCE9PXIocykpaD0hMCxGKFMpO2Vsc2V7dmFyIG49cihjKTtudWxsIT09biYmUih3LG4uc3RhcnRUaW1lLWUpfX1mdW5jdGlvbiBTKGUsdCl7aD0hMSxnJiYoZz0hMSx5KHopLHo9LTEpLG09ITA7dmFyIGE9cDt0cnl7Zm9yKGsodCksZD1yKHMpO251bGwhPT1kJiYoIShkLmV4cGlyYXRpb25UaW1lPnQpfHxlJiYhUCgpKTspe3ZhciB1PWQuY2FsbGJhY2s7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHUpe2QuY2FsbGJhY2s9bnVsbCxwPWQucHJpb3JpdHlMZXZlbDt2YXIgbz11KGQuZXhwaXJhdGlvblRpbWU8PXQpO3Q9bi51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygbz9kLmNhbGxiYWNrPW86ZD09PXIocykmJmwocyksayh0KX1lbHNlIGwocyk7ZD1yKHMpfWlmKG51bGwhPT1kKXZhciBpPSEwO2Vsc2V7dmFyIGY9cihjKTtudWxsIT09ZiYmUih3LGYuc3RhcnRUaW1lLXQpLGk9ITF9cmV0dXJuIGl9ZmluYWxseXtkPW51bGwscD1hLG09ITF9fSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZyYmdm9pZCAwIT09bmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcmJm5hdmlnYXRvci5zY2hlZHVsaW5nLmlzSW5wdXRQZW5kaW5nLmJpbmQobmF2aWdhdG9yLnNjaGVkdWxpbmcpO3ZhciB4LEU9ITEsQz1udWxsLHo9LTEsTj01LF89LTE7ZnVuY3Rpb24gUCgpe3JldHVybiEobi51bnN0YWJsZV9ub3coKS1fPE4pfWZ1bmN0aW9uIFQoKXtpZihudWxsIT09Qyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtfPWU7dmFyIHQ9ITA7dHJ5e3Q9QyghMCxlKX1maW5hbGx5e3Q/eCgpOihFPSExLEM9bnVsbCl9fWVsc2UgRT0hMX1pZigiZnVuY3Rpb24iPT10eXBlb2YgYil4PWZ1bmN0aW9uKCl7YihUKX07ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsKXt2YXIgTD1uZXcgTWVzc2FnZUNoYW5uZWwsTT1MLnBvcnQyO0wucG9ydDEub25tZXNzYWdlPVQseD1mdW5jdGlvbigpe00ucG9zdE1lc3NhZ2UobnVsbCl9fWVsc2UgeD1mdW5jdGlvbigpe3YoVCwwKX07ZnVuY3Rpb24gRihlKXtDPWUsRXx8KEU9ITAseCgpKX1mdW5jdGlvbiBSKGUsdCl7ej12KChmdW5jdGlvbigpe2Uobi51bnN0YWJsZV9ub3coKSl9KSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLApuLnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sbi51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLEYoUykpfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxuLnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHIocyl9LG4udW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIG49MzticmVhaztkZWZhdWx0Om49cH12YXIgdD1wO3A9bjt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9dH19LG4udW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LG4udW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxuLnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciB0PXA7cD1lO3RyeXtyZXR1cm4gbigpfWZpbmFsbHl7cD10fX0sbi51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsbCxhKXt2YXIgdT1uLnVuc3RhYmxlX25vdygpO3N3aXRjaCgib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2E9Im51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/dSthOnU6YT11LGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6ZisrLGNhbGxiYWNrOmwscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTphLGV4cGlyYXRpb25UaW1lOm89YStvLHNvcnRJbmRleDotMX0sYT51PyhlLnNvcnRJbmRleD1hLHQoYyxlKSxudWxsPT09cihzKSYmZT09PXIoYykmJihnPyh5KHopLHo9LTEpOmc9ITAsUih3LGEtdSkpKTooZS5zb3J0SW5kZXg9byx0KHMsZSksaHx8bXx8KGg9ITAsRihTKSkpLGV9LG4udW5zdGFibGVfc2hvdWxkWWllbGQ9UCxuLnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbihlKXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciB0PXA7cD1uO3RyeXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPXR9fX19LDE4MjYxNChlLG4sdCl7ZS5leHBvcnRzPXQoNTA4MjA3KX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.546Z","timestamp":1785154590546,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/49265.c208ef8379e073f94d16.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a435fcb-4ddf\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 30 Jun 2026 06:18:51 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/30/2026 11:55:09\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f02f775c3a9223268af775f8f31a0c20\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":19935,"size_decoded":7323,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-27T14:18:36.366377Z","times_seen":2987,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0OTI2NV0sezc1Njg1MSh0KXsidXNlIHN0cmljdCI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxyPXQubGVuZ3RoLG49MDtuPHI7bisrKXt2YXIgdT10LmNoYXJDb2RlQXQobik7aWYodT49NTUyOTYmJnU8PTU2MzE5JiZyPm4rMSl7dmFyIGE9dC5jaGFyQ29kZUF0KG4rMSk7YT49NTYzMjAmJmE8PTU3MzQzJiYodT0xMDI0Kih1LTU1Mjk2KSthLTU2MzIwKzY1NTM2LG4rPTEpfXU8MTI4P2UucHVzaCh1KTp1PDIwNDg/KGUucHVzaCh1Pj42fDE5MiksZS5wdXNoKDYzJnV8MTI4KSk6dTw1NTI5Nnx8dT49NTczNDQmJnU8NjU1MzY/KGUucHVzaCh1Pj4xMnwyMjQpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6dT49NjU1MzYmJnU8PTExMTQxMTE/KGUucHVzaCh1Pj4xOHwyNDApLGUucHVzaCh1Pj4xMiY2M3wxMjgpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6ZS5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZSkuYnVmZmVyfX0sNTA0NDAyKHQsZSxyKXt2YXIgbj1yKDYzODIyMSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0PW4odF49dD4+PjE2LDIyNDY4MjI1MDcpLHQ9bih0Xj10Pj4+MTMsMzI2NjQ4OTkwOSksKHRePXQ+Pj4xNik+Pj4wfX0sNjM4MjIxKHQpeyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbih0LGUpe3ZhciByPTY1NTM1JnQsbj02NTUzNSZlO3JldHVybiByKm4rKCh0Pj4+MTYmNjU1MzUpKm4rciooZT4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KHQsZSxyKXt2YXIgbj1yKDYzODIyMSksdT1yKDUwNDQwMiksYT1yKDc1Njg1MSksbz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYyh0LGUpe3JldHVybiB0PDxlfHQ+Pj4zMi1lfXQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGU9ZT8wfGU6MCwic3RyaW5nIj09dHlwZW9mIHQmJih0PWEodCkpLCEodCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIHI9bmV3IFVpbnQzMkFycmF5KFtlXSk7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT1uZXcgVWludDMyQXJyYXkodCwwLHIpLGE9MDthPHI7YSsrKXVbYV09bih1W2FdLG9bMF0pLHVbYV09Yyh1W2FdLDE1KSx1W2FdPW4odVthXSxvWzFdKSxlWzBdPWVbMF1edVthXSxlWzBdPWMoZVswXSwxMyksZVswXT1uKGVbMF0sNSkrMzg2NDI5MjE5Nn0odCxyKSxmdW5jdGlvbih0LGUpe3ZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT10LmJ5dGVMZW5ndGglNCxhPTAsZj1uZXcgVWludDhBcnJheSh0LDQqcix1KTtzd2l0Y2godSl7Y2FzZSAzOmFePWZbMl08PDE2O2Nhc2UgMjphXj1mWzFdPDw4O2Nhc2UgMTphXj1mWzBdLGE9YyhhPW4oYSxvWzBdKSwxNSksYT1uKGEsb1sxXSksZVswXT1lWzBdXmF9fSh0LHIpLGZ1bmN0aW9uKHQsZSl7ZVswXT1lWzBdXnQuYnl0ZUxlbmd0aCxlWzBdPXUoZVswXSl9KHQsciksci5idWZmZXJ9fSw0MTQxMjModCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoMTYyMzE2KSx1PXIoOTgxNTIzKTtjb25zdCBhPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJTZXQiKX0sMjY5MzY2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDcxMzE0OCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5zZXQodCwiX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIpLHRoaXN9O2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBvKHQpe3ZhciBlPS0xLHI9bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQ7KytlPHI7KXRoaXMuYWRkKHRbZV0pfW8ucHJvdG90eXBlLmFkZD1vLnByb3RvdHlwZS5wdXNoPXUsby5wcm90b3R5cGUuaGFzPWE7Y29uc3QgYz1vfSw4ODY1MTQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoNzM1OTgzKTtjb25zdCB1PWZ1bmN0aW9uKCl7dGhpcy5fX2RhdGFfXz1uZXcgbi5kZWZhdWx0LHRoaXMuc2l6ZT0wfTtjb25zdCBhPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18scj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxyfTtjb25zdCBvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX07Y29uc3QgYz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBmPXIoNjk0MjEpLHM9cig3MTMxNDgpO2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKHIgaW5zdGFuY2VvZiBuLmRlZmF1bHQpe3ZhciB1PXIuX19kYXRhX187aWYoIWYuZGVmYXVsdHx8dS5sZW5ndGg8MTk5KXJldHVybiB1LnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK3Iuc2l6ZSx0aGlzO3I9dGhpcy5fX2RhdGFfXz1uZXcgcy5kZWZhdWx0KHUpfXJldHVybiByLnNldCh0LGUpLHRoaXMuc2l6ZT1yLnNpemUsdGhpc307ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQodCk7dGhpcy5zaXplPWUuc2l6ZX1sLnByb3RvdHlwZS5jbGVhcj11LGwucHJvdG90eXBlLmRlbGV0ZT1hLGwucHJvdG90eXBlLmdldD1vLGwucHJvdG90eXBlLmhhcz1jLGwucHJvdG90eXBlLnNldD1pO2NvbnN0IGQ9bH0sODY1MzMwKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPXIoOTgxNTIzKS5kZWZhdWx0LlVpbnQ4QXJyYXl9LDkyODQ1Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjIzMTYpLHU9cig5ODE1MjMpO2NvbnN0IGE9KDAsbi5kZWZhdWx0KSh1LmRlZmF1bHQsIldlYWtNYXAiKX0sCjk4NDEzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK3I8biYmITEhPT1lKHRbcl0scix0KTspO3JldHVybiB0fX0sMjI0NDE2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDY4ODk2NSk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH07Y29uc3QgYT1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPXItMSx1PXQubGVuZ3RoOysrbjx1OylpZih0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX07Y29uc3Qgbz1mdW5jdGlvbih0LGUscil7cmV0dXJuIGU9PWU/YSh0LGUscik6KDAsbi5kZWZhdWx0KSh0LHUscil9O2NvbnN0IGM9ZnVuY3Rpb24odCxlKXtyZXR1cm4hIShudWxsPT10PzA6dC5sZW5ndGgpJiZvKHQsZSwwKT4tMX19LDgyNTAzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPS0xLHU9bnVsbD09dD8wOnQubGVuZ3RoOysrbjx1OylpZihyKGUsdFtuXSkpcmV0dXJuITA7cmV0dXJuITF9fSw4MjA5NzUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1BcnJheSh0KTsrK3I8dDspbltyXT1lKHIpO3JldHVybiBufTt2YXIgdT1yKDUzMTU1NyksYT1yKDI5NTYzNSksbz1yKDY1OTAxOCksYz1yKDkyMTE0MyksZj1yKDE2NTI2Nykscz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj0oMCxhLmRlZmF1bHQpKHQpLGk9IXImJigwLHUuZGVmYXVsdCkodCksbD0hciYmIWkmJigwLG8uZGVmYXVsdCkodCksZD0hciYmIWkmJiFsJiYoMCxmLmRlZmF1bHQpKHQpLHY9cnx8aXx8bHx8ZCxwPXY/bih0Lmxlbmd0aCxTdHJpbmcpOltdLGI9cC5sZW5ndGg7Zm9yKHZhciB5IGluIHQpIWUmJiFzLmNhbGwodCx5KXx8diYmKCJsZW5ndGgiPT15fHxsJiYoIm9mZnNldCI9PXl8fCJwYXJlbnQiPT15KXx8ZCYmKCJidWZmZXIiPT15fHwiYnl0ZUxlbmd0aCI9PXl8fCJieXRlT2Zmc2V0Ij09eSl8fCgwLGMuZGVmYXVsdCkoeSxiKSl8fHAucHVzaCh5KTtyZXR1cm4gcH19LDQ0ODYyNih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPWUubGVuZ3RoLHU9dC5sZW5ndGg7KytyPG47KXRbdStyXT1lW3JdO3JldHVybiB0fX0sMTY4NTMzKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDI1NDczOCksdT1yKDkxMDc3OCksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IG89ZnVuY3Rpb24odCxlLHIpe3ZhciBvPXRbZV07YS5jYWxsKHQsZSkmJigwLHUuZGVmYXVsdCkobyxyKSYmKHZvaWQgMCE9PXJ8fGUgaW4gdCl8fCgwLG4uZGVmYXVsdCkodCxlLHIpfX0sMjU0NzM4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDM2MDQ5KTtjb25zdCB1PWZ1bmN0aW9uKHQsZSxyKXsiX19wcm90b19fIj09ZSYmbi5kZWZhdWx0PygwLG4uZGVmYXVsdCkodCxlLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTpyLHdyaXRhYmxlOiEwfSk6dFtlXT1yfX0sNDkzMDE4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pkh9KTt2YXIgbj1yKDg4NjUxNCksdT1yKDk4NDEzOSksYT1yKDE2ODUzMyksbz1yKDYxODU3KSxjPXIoMzA5MDgwKTtjb25zdCBmPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQmJigwLG8uZGVmYXVsdCkoZSwoMCxjLmRlZmF1bHQpKGUpLHQpfTt2YXIgcz1yKDIxNzQ1Nyk7Y29uc3QgaT1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYoMCxvLmRlZmF1bHQpKGUsKDAscy5kZWZhdWx0KShlKSx0KX07dmFyIGw9cig0ODcwNjApLGQ9cig3MDU3NDkpLHY9cigyMzA5NTEpO2NvbnN0IHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsdi5kZWZhdWx0KSh0KSxlKX07dmFyIGI9cigxMTY2NDEpO2NvbnN0IHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsYi5kZWZhdWx0KSh0KSxlKX07dmFyIGg9cig4MDYyNDApLGo9cig5OTE1OTkpLGc9cig5Njk3ODUpLHc9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBfPWZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLHI9bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIGUmJiJzdHJpbmciPT10eXBlb2YgdFswXSYmdy5jYWxsKHQsImluZGV4IikmJihyLmluZGV4PXQuaW5kZXgsci5pbnB1dD10LmlucHV0KSxyfTt2YXIgQT1yKDM3NzI1MSk7Y29uc3QgbT1mdW5jdGlvbih0LGUpe3ZhciByPWU/KDAsQS5kZWZhdWx0KSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKHIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9O3ZhciBPPS9cdyokLztjb25zdCB4PWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyB0LmNvbnN0cnVjdG9yKHQuc291cmNlLE8uZXhlYyh0KSk7cmV0dXJuIGUubGFzdEluZGV4PXQubGFzdEluZGV4LGV9O3ZhciBVPXIoODcyOTk5KSxFPVUuZGVmYXVsdD9VLmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxUPUU/RS52YWx1ZU9mOnZvaWQgMDtjb25zdCBTPWZ1bmN0aW9uKHQpe3JldHVybiBUP09iamVjdChULmNhbGwodCkpOnt9fTt2YXIgST1yKDEzOTA3KTtjb25zdCBNPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj10LmNvbnN0cnVjdG9yO3N3aXRjaChlKXtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4oMCxBLmRlZmF1bHQpKHQpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpyZXR1cm4gbmV3IG4oK3QpO2Nhc2UiW29iamVjdCBEYXRhVmlld10iOnJldHVybiBtKHQscik7Y2FzZSJbb2JqZWN0IEZsb2F0MzJBcnJheV0iOmNhc2UiW29iamVjdCBGbG9hdDY0QXJyYXldIjoKY2FzZSJbb2JqZWN0IEludDhBcnJheV0iOmNhc2UiW29iamVjdCBJbnQxNkFycmF5XSI6Y2FzZSJbb2JqZWN0IEludDMyQXJyYXldIjpjYXNlIltvYmplY3QgVWludDhBcnJheV0iOmNhc2UiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MzJBcnJheV0iOnJldHVybigwLEkuZGVmYXVsdCkodCxyKTtjYXNlIltvYmplY3QgTWFwXSI6Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgTnVtYmVyXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiBuZXcgbih0KTtjYXNlIltvYmplY3QgUmVnRXhwXSI6cmV0dXJuIHgodCk7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOnJldHVybiBTKHQpfX07dmFyIEI9cig4MDc1NzUpLFA9cigyOTU2MzUpLGs9cig2NTkwMTgpLHo9cig2NzI1MTEpLEM9cig4ODAxMTUpLEQ9cigzNjA2MjApO2NvbnN0IEY9ZnVuY3Rpb24odCl7cmV0dXJuKDAsRC5kZWZhdWx0KSh0KSYmIltvYmplY3QgU2V0XSI9PSgwLGcuZGVmYXVsdCkodCl9O3ZhciBMPXIoODk5MzM5KSxOPXIoMzY5ODk5KSxXPU4uZGVmYXVsdCYmTi5kZWZhdWx0LmlzU2V0O2NvbnN0IFY9Vz8oMCxMLmRlZmF1bHQpKFcpOkY7dmFyICQ9IltvYmplY3QgQXJndW1lbnRzXSIsUj0iW29iamVjdCBGdW5jdGlvbl0iLHE9IltvYmplY3QgT2JqZWN0XSIsRz17fTtHWyRdPUdbIltvYmplY3QgQXJyYXldIl09R1siW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1HWyJbb2JqZWN0IERhdGFWaWV3XSJdPUdbIltvYmplY3QgQm9vbGVhbl0iXT1HWyJbb2JqZWN0IERhdGVdIl09R1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09R1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09R1siW29iamVjdCBJbnQ4QXJyYXldIl09R1siW29iamVjdCBJbnQxNkFycmF5XSJdPUdbIltvYmplY3QgSW50MzJBcnJheV0iXT1HWyJbb2JqZWN0IE1hcF0iXT1HWyJbb2JqZWN0IE51bWJlcl0iXT1HW3FdPUdbIltvYmplY3QgUmVnRXhwXSJdPUdbIltvYmplY3QgU2V0XSJdPUdbIltvYmplY3QgU3RyaW5nXSJdPUdbIltvYmplY3QgU3ltYm9sXSJdPUdbIltvYmplY3QgVWludDhBcnJheV0iXT1HWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUdbIltvYmplY3QgVWludDE2QXJyYXldIl09R1siW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxHWyJbb2JqZWN0IEVycm9yXSJdPUdbUl09R1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IEg9ZnVuY3Rpb24gdChlLHIsbyx2LGIsdyl7dmFyIEEsbT0xJnIsTz0yJnIseD00JnI7aWYobyYmKEE9Yj9vKGUsdixiLHcpOm8oZSkpLHZvaWQgMCE9PUEpcmV0dXJuIEE7aWYoISgwLEMuZGVmYXVsdCkoZSkpcmV0dXJuIGU7dmFyIFU9KDAsUC5kZWZhdWx0KShlKTtpZihVKXtpZihBPV8oZSksIW0pcmV0dXJuKDAsZC5kZWZhdWx0KShlLEEpfWVsc2V7dmFyIEU9KDAsZy5kZWZhdWx0KShlKSxUPUU9PVJ8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PUU7aWYoKDAsay5kZWZhdWx0KShlKSlyZXR1cm4oMCxsLmRlZmF1bHQpKGUsbSk7aWYoRT09cXx8RT09JHx8VCYmIWIpe2lmKEE9T3x8VD97fTooMCxCLmRlZmF1bHQpKGUpLCFtKXJldHVybiBPP3koZSxpKEEsZSkpOnAoZSxmKEEsZSkpfWVsc2V7aWYoIUdbRV0pcmV0dXJuIGI/ZTp7fTtBPU0oZSxFLG0pfX13fHwodz1uZXcgbi5kZWZhdWx0KTt2YXIgUz13LmdldChlKTtpZihTKXJldHVybiBTO3cuc2V0KGUsQSksVihlKT9lLmZvckVhY2goKGZ1bmN0aW9uKG4pe0EuYWRkKHQobixyLG8sbixlLHcpKX0pKTooMCx6LmRlZmF1bHQpKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKG4sdSl7QS5zZXQodSx0KG4scixvLHUsZSx3KSl9KSk7dmFyIEk9eD9PP2ouZGVmYXVsdDpoLmRlZmF1bHQ6Tz9zLmRlZmF1bHQ6Yy5kZWZhdWx0LEQ9VT92b2lkIDA6SShlKTtyZXR1cm4oMCx1LmRlZmF1bHQpKER8fGUsKGZ1bmN0aW9uKG4sdSl7RCYmKG49ZVt1PW5dKSwoMCxhLmRlZmF1bHQpKEEsdSx0KG4scixvLHUsZSx3KSl9KSksQX19LDg1MTA4Mih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig4ODAxMTUpLHU9T2JqZWN0LmNyZWF0ZTtjb25zdCBhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gZnVuY3Rpb24oZSl7aWYoISgwLG4uZGVmYXVsdCkoZSkpcmV0dXJue307aWYodSlyZXR1cm4gdShlKTt0LnByb3RvdHlwZT1lO3ZhciByPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAscn19KCl9LDY4ODk2NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscixuKXtmb3IodmFyIHU9dC5sZW5ndGgsYT1yKyhuPzE6LTEpO24/YS0tOisrYTx1OylpZihlKHRbYV0sYSx0KSlyZXR1cm4gYTtyZXR1cm4tMX19LDkxNjA4NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig0NDg2MjYpLHU9cigyOTU2MzUpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIpe3ZhciBhPWUodCk7cmV0dXJuKDAsdS5kZWZhdWx0KSh0KT9hOigwLG4uZGVmYXVsdCkoYSxyKHQpKX19LDgzMDg3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig2OTM5NDEpO2NvbnN0IHU9KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5rZXlzLE9iamVjdCk7dmFyIGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBvPWZ1bmN0aW9uKHQpe2lmKCEoMCxuLmRlZmF1bHQpKHQpKXJldHVybiB1KHQpO3ZhciBlPVtdO2Zvcih2YXIgciBpbiBPYmplY3QodCkpYS5jYWxsKHQscikmJiJjb25zdHJ1Y3RvciIhPXImJmUucHVzaChyKTtyZXR1cm4gZX19LDg5OTMzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX0sNzEyODAxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzKGUpfX0sCjM3NzI1MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49cig4NjUzMzApO2NvbnN0IHU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IHQuY29uc3RydWN0b3IodC5ieXRlTGVuZ3RoKTtyZXR1cm4gbmV3IG4uZGVmYXVsdChlKS5zZXQobmV3IG4uZGVmYXVsdCh0KSksZX19LDQ4NzA2MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5mfSk7dmFyIG49cig5ODE1MjMpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXU/bi5kZWZhdWx0LkJ1ZmZlcjp2b2lkIDAsYz1vP28uYWxsb2NVbnNhZmU6dm9pZCAwO2NvbnN0IGY9ZnVuY3Rpb24odCxlKXtpZihlKXJldHVybiB0LnNsaWNlKCk7dmFyIHI9dC5sZW5ndGgsbj1jP2Mocik6bmV3IHQuY29uc3RydWN0b3Iocik7cmV0dXJuIHQuY29weShuKSxufX0sMTM5MDcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMzc3MjUxKTtjb25zdCB1PWZ1bmN0aW9uKHQsZSl7dmFyIHI9ZT8oMCxuLmRlZmF1bHQpKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3Iocix0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfX0sNzA1NzQ5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7dmFyIHI9LTEsbj10Lmxlbmd0aDtmb3IoZXx8KGU9QXJyYXkobikpOysrcjxuOyllW3JdPXRbcl07cmV0dXJuIGV9fSw2MTg1Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjg1MzMpLHU9cigyNTQ3MzgpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIsYSl7dmFyIG89IXI7cnx8KHI9e30pO2Zvcih2YXIgYz0tMSxmPWUubGVuZ3RoOysrYzxmOyl7dmFyIHM9ZVtjXSxpPWE/YShyW3NdLHRbc10scyxyLHQpOnZvaWQgMDt2b2lkIDA9PT1pJiYoaT10W3NdKSxvPygwLHUuZGVmYXVsdCkocixzLGkpOigwLG4uZGVmYXVsdCkocixzLGkpfXJldHVybiByfX0sMzYwNDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMTYyMzE2KTtjb25zdCB1PWZ1bmN0aW9uKCl7dHJ5e3ZhciB0PSgwLG4uZGVmYXVsdCkoT2JqZWN0LCJkZWZpbmVQcm9wZXJ0eSIpO3JldHVybiB0KHt9LCIiLHt9KSx0fWNhdGNoKHQpe319KCl9LDgwNjI0MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig5MTYwODUpLHU9cigyMzA5NTEpLGE9cigzMDkwODApO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsbi5kZWZhdWx0KSh0LGEuZGVmYXVsdCx1LmRlZmF1bHQpfX0sOTkxNTk5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDkxNjA4NSksdT1yKDExNjY0MSksYT1yKDIxNzQ1Nyk7Y29uc3Qgbz1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsYS5kZWZhdWx0LHUuZGVmYXVsdCl9fSwzOTI1NDUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpfSwyMzA5NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsdT0wLGE9W107KytyPG47KXt2YXIgbz10W3JdO2UobyxyLHQpJiYoYVt1KytdPW8pfXJldHVybiBhfTt2YXIgdT1yKDE3NzY1NSksYT1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztjb25zdCBjPW8/ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/W106KHQ9T2JqZWN0KHQpLG4obyh0KSwoZnVuY3Rpb24oZSl7cmV0dXJuIGEuY2FsbCh0LGUpfSkpKX06dS5kZWZhdWx0fSwxMTY2NDEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO3ZhciBuPXIoNDQ4NjI2KSx1PXIoMzkyNTQ1KSxhPXIoMjMwOTUxKSxvPXIoMTc3NjU1KTtjb25zdCBjPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdO3Q7KSgwLG4uZGVmYXVsdCkoZSwoMCxhLmRlZmF1bHQpKHQpKSx0PSgwLHUuZGVmYXVsdCkodCk7cmV0dXJuIGV9Om8uZGVmYXVsdH0sOTY5Nzg1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm19KTt2YXIgbj1yKDE2MjMxNiksdT1yKDk4MTUyMyk7Y29uc3QgYT0oMCxuLmRlZmF1bHQpKHUuZGVmYXVsdCwiRGF0YVZpZXciKTt2YXIgbz1yKDY5NDIxKTtjb25zdCBjPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJQcm9taXNlIik7dmFyIGY9cig0MTQxMjMpLHM9cig5Mjg0NTMpLGk9cigxNzg0OTcpLGw9cig3MzA1MDMpLGQ9IltvYmplY3QgTWFwXSIsdj0iW29iamVjdCBQcm9taXNlXSIscD0iW29iamVjdCBTZXRdIixiPSJbb2JqZWN0IFdlYWtNYXBdIix5PSJbb2JqZWN0IERhdGFWaWV3XSIsaD0oMCxsLmRlZmF1bHQpKGEpLGo9KDAsbC5kZWZhdWx0KShvLmRlZmF1bHQpLGc9KDAsbC5kZWZhdWx0KShjKSx3PSgwLGwuZGVmYXVsdCkoZi5kZWZhdWx0KSxfPSgwLGwuZGVmYXVsdCkocy5kZWZhdWx0KSxBPWkuZGVmYXVsdDsoYSYmQShuZXcgYShuZXcgQXJyYXlCdWZmZXIoMSkpKSE9eXx8by5kZWZhdWx0JiZBKG5ldyBvLmRlZmF1bHQpIT1kfHxjJiZBKGMucmVzb2x2ZSgpKSE9dnx8Zi5kZWZhdWx0JiZBKG5ldyBmLmRlZmF1bHQpIT1wfHxzLmRlZmF1bHQmJkEobmV3IHMuZGVmYXVsdCkhPWIpJiYoQT1mdW5jdGlvbih0KXt2YXIgZT0oMCxpLmRlZmF1bHQpKHQpLHI9IltvYmplY3QgT2JqZWN0XSI9PWU/dC5jb25zdHJ1Y3Rvcjp2b2lkIDAsbj1yPygwLGwuZGVmYXVsdCkocik6IiI7aWYobilzd2l0Y2gobil7Y2FzZSBoOgpyZXR1cm4geTtjYXNlIGo6cmV0dXJuIGQ7Y2FzZSBnOnJldHVybiB2O2Nhc2UgdzpyZXR1cm4gcDtjYXNlIF86cmV0dXJuIGJ9cmV0dXJuIGV9KTtjb25zdCBtPUF9LDgwNzU3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4NTEwODIpLHU9cigzOTI1NDUpLGE9cig2OTM5NDEpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIHQuY29uc3RydWN0b3J8fCgwLGEuZGVmYXVsdCkodCk/e306KDAsbi5kZWZhdWx0KSgoMCx1LmRlZmF1bHQpKHQpKX19LDkyMTE0Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49L14oPzowfFsxLTldXGQqKSQvO2NvbnN0IHU9ZnVuY3Rpb24odCxlKXt2YXIgcj10eXBlb2YgdDtyZXR1cm4hIShlPWU/PzkwMDcxOTkyNTQ3NDA5OTEpJiYoIm51bWJlciI9PXJ8fCJzeW1ib2wiIT1yJiZuLnRlc3QodCkpJiZ0Pi0xJiZ0JTE9PTAmJnQ8ZX19LDY5Mzk0MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49T2JqZWN0LnByb3RvdHlwZTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUucHJvdG90eXBlfHxuKX19LDM2OTg5OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5jfSk7dmFyIG49cig2MDI5NDIpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXUmJm4uZGVmYXVsdC5wcm9jZXNzO2NvbnN0IGM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9YSYmYS5yZXF1aXJlJiZhLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8byYmby5iaW5kaW5nJiZvLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpfSwxMzk4NDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIHQoZShyKSl9fX0sOTcyMDE3KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQpe3ZhciBlPS0xLHI9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtyWysrZV09dH0pKSxyfX0sMjAzNjgxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDQ5MzAxOCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsNSl9fSw1NDc4NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoODgwMTE1KSx1PXIoOTgxNTIzKTtjb25zdCBhPWZ1bmN0aW9uKCl7cmV0dXJuIHUuZGVmYXVsdC5EYXRlLm5vdygpfTt2YXIgbz1yKDQwNjQ0OSksYz1NYXRoLm1heCxmPU1hdGgubWluO2NvbnN0IHM9ZnVuY3Rpb24odCxlLHIpe3ZhciB1LHMsaSxsLGQsdixwPTAsYj0hMSx5PSExLGg9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO2Z1bmN0aW9uIGooZSl7dmFyIHI9dSxuPXM7cmV0dXJuIHU9cz12b2lkIDAscD1lLGw9dC5hcHBseShuLHIpfWZ1bmN0aW9uIGcodCl7dmFyIHI9dC12O3JldHVybiB2b2lkIDA9PT12fHxyPj1lfHxyPDB8fHkmJnQtcD49aX1mdW5jdGlvbiB3KCl7dmFyIHQ9YSgpO2lmKGcodCkpcmV0dXJuIF8odCk7ZD1zZXRUaW1lb3V0KHcsZnVuY3Rpb24odCl7dmFyIHI9ZS0odC12KTtyZXR1cm4geT9mKHIsaS0odC1wKSk6cn0odCkpfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGQ9dm9pZCAwLGgmJnU/aih0KToodT1zPXZvaWQgMCxsKX1mdW5jdGlvbiBBKCl7dmFyIHQ9YSgpLHI9Zyh0KTtpZih1PWFyZ3VtZW50cyxzPXRoaXMsdj10LHIpe2lmKHZvaWQgMD09PWQpcmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBwPXQsZD1zZXRUaW1lb3V0KHcsZSksYj9qKHQpOmx9KHYpO2lmKHkpcmV0dXJuIGNsZWFyVGltZW91dChkKSxkPXNldFRpbWVvdXQodyxlKSxqKHYpfXJldHVybiB2b2lkIDA9PT1kJiYoZD1zZXRUaW1lb3V0KHcsZSkpLGx9cmV0dXJuIGU9KDAsby5kZWZhdWx0KShlKXx8MCwoMCxuLmRlZmF1bHQpKHIpJiYoYj0hIXIubGVhZGluZyxpPSh5PSJtYXhXYWl0ImluIHIpP2MoKDAsby5kZWZhdWx0KShyLm1heFdhaXQpfHwwLGUpOmksaD0idHJhaWxpbmciaW4gcj8hIXIudHJhaWxpbmc6aCksQS5jYW5jZWw9ZnVuY3Rpb24oKXt2b2lkIDAhPT1kJiZjbGVhclRpbWVvdXQoZCkscD0wLHU9dj1zPWQ9dm9pZCAwfSxBLmZsdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PWQ/bDpfKGEoKSl9LEF9fSw1MzE1NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoMTc4NDk3KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1PYmplY3QucHJvdG90eXBlLGM9by5oYXNPd25Qcm9wZXJ0eSxmPW8ucHJvcGVydHlJc0VudW1lcmFibGUscz1hKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/YTpmdW5jdGlvbih0KXtyZXR1cm4oMCx1LmRlZmF1bHQpKHQpJiZjLmNhbGwodCwiY2FsbGVlIikmJiFmLmNhbGwodCwiY2FsbGVlIil9O2NvbnN0IGk9c30sMjk1NjM1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPUFycmF5LmlzQXJyYXl9LDM5MjkwOCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig5MjgxMzIpLHU9cig5OTA2MDQpO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJigwLHUuZGVmYXVsdCkodC5sZW5ndGgpJiYhKDAsbi5kZWZhdWx0KSh0KX19LDY1OTAxOCh0LGUscil7CiJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Zn0pO3ZhciBuPXIoOTgxNTIzKTtjb25zdCB1PWZ1bmN0aW9uKCl7cmV0dXJuITF9O3ZhciBhPSJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmZXhwb3J0cyYmIWV4cG9ydHMubm9kZVR5cGUmJmV4cG9ydHMsbz1hJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsYz1vJiZvLmV4cG9ydHM9PT1hP24uZGVmYXVsdC5CdWZmZXI6dm9pZCAwO2NvbnN0IGY9KGM/Yy5pc0J1ZmZlcjp2b2lkIDApfHx1fSw5OTA2MDQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiZ0Pi0xJiZ0JTE9PTAmJnQ8PTkwMDcxOTkyNTQ3NDA5OTF9fSw2NzI1MTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoOTY5Nzg1KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IE1hcF0iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1yKDg5OTMzOSksYz1yKDM2OTg5OSksZj1jLmRlZmF1bHQmJmMuZGVmYXVsdC5pc01hcDtjb25zdCBzPWY/KDAsby5kZWZhdWx0KShmKTphfSwzNjA2MjAodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdH19LDcxNzMzMih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNzg0OTcpLHU9cigzNjA2MjApO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fHwoMCx1LmRlZmF1bHQpKHQpJiYiW29iamVjdCBTeW1ib2xdIj09KDAsbi5kZWZhdWx0KSh0KX19LDE2NTI2Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5sfSk7dmFyIG49cigxNzg0OTcpLHU9cig5OTA2MDQpLGE9cigzNjA2MjApLG89e307b1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09b1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09b1siW29iamVjdCBJbnQ4QXJyYXldIl09b1siW29iamVjdCBJbnQxNkFycmF5XSJdPW9bIltvYmplY3QgSW50MzJBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09b1siW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPW9bIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsb1siW29iamVjdCBBcmd1bWVudHNdIl09b1siW29iamVjdCBBcnJheV0iXT1vWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPW9bIltvYmplY3QgQm9vbGVhbl0iXT1vWyJbb2JqZWN0IERhdGFWaWV3XSJdPW9bIltvYmplY3QgRGF0ZV0iXT1vWyJbb2JqZWN0IEVycm9yXSJdPW9bIltvYmplY3QgRnVuY3Rpb25dIl09b1siW29iamVjdCBNYXBdIl09b1siW29iamVjdCBOdW1iZXJdIl09b1siW29iamVjdCBPYmplY3RdIl09b1siW29iamVjdCBSZWdFeHBdIl09b1siW29iamVjdCBTZXRdIl09b1siW29iamVjdCBTdHJpbmddIl09b1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IGM9ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KSYmKDAsdS5kZWZhdWx0KSh0Lmxlbmd0aCkmJiEhb1soMCxuLmRlZmF1bHQpKHQpXX07dmFyIGY9cig4OTkzMzkpLHM9cigzNjk4OTkpLGk9cy5kZWZhdWx0JiZzLmRlZmF1bHQuaXNUeXBlZEFycmF5O2NvbnN0IGw9aT8oMCxmLmRlZmF1bHQpKGkpOmN9LDMwOTA4MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4MjA5NzUpLHU9cig4MzA4NzUpLGE9cigzOTI5MDgpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQpOigwLHUuZGVmYXVsdCkodCl9fSwyMTc0NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoODIwOTc1KSx1PXIoODgwMTE1KSxhPXIoNjkzOTQxKTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO2lmKG51bGwhPXQpZm9yKHZhciByIGluIE9iamVjdCh0KSllLnB1c2gocik7cmV0dXJuIGV9O3ZhciBjPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7Y29uc3QgZj1mdW5jdGlvbih0KXtpZighKDAsdS5kZWZhdWx0KSh0KSlyZXR1cm4gbyh0KTt2YXIgZT0oMCxhLmRlZmF1bHQpKHQpLHI9W107Zm9yKHZhciBuIGluIHQpKCJjb25zdHJ1Y3RvciIhPW58fCFlJiZjLmNhbGwodCxuKSkmJnIucHVzaChuKTtyZXR1cm4gcn07dmFyIHM9cigzOTI5MDgpO2NvbnN0IGk9ZnVuY3Rpb24odCl7cmV0dXJuKDAscy5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQsITApOmYodCl9fSw2NjMwNDYodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNzEzMTQ4KTtmdW5jdGlvbiB1KHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHR8fG51bGwhPWUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZnVuY3Rpb24iKTt2YXIgcj1mdW5jdGlvbigpe3ZhciBuPWFyZ3VtZW50cyx1PWU/ZS5hcHBseSh0aGlzLG4pOm5bMF0sYT1yLmNhY2hlO2lmKGEuaGFzKHUpKXJldHVybiBhLmdldCh1KTt2YXIgbz10LmFwcGx5KHRoaXMsbik7cmV0dXJuIHIuY2FjaGU9YS5zZXQodSxvKXx8YSxvfTtyZXR1cm4gci5jYWNoZT1uZXcodS5DYWNoZXx8bi5kZWZhdWx0KSxyfXUuQ2FjaGU9bi5kZWZhdWx0O2NvbnN0IGE9dX0sODYyMzg4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7fX0sMTc3NjU1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7cmV0dXJuW119fSw1ODcxNjgodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNTQ3ODUxKSx1PXIoODgwMTE1KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxyKXsKdmFyIGE9ITAsbz0hMDtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuKDAsdS5kZWZhdWx0KShyKSYmKGE9ImxlYWRpbmciaW4gcj8hIXIubGVhZGluZzphLG89InRyYWlsaW5nImluIHI/ISFyLnRyYWlsaW5nOm8pLCgwLG4uZGVmYXVsdCkodCxlLHtsZWFkaW5nOmEsbWF4V2FpdDplLHRyYWlsaW5nOm99KX19LDQwNjQ0OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT52fSk7dmFyIG49L1xzLztjb25zdCB1PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS0mJm4udGVzdCh0LmNoYXJBdChlKSk7KTtyZXR1cm4gZX07dmFyIGE9L15ccysvO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLHUodCkrMSkucmVwbGFjZShhLCIiKTp0fTt2YXIgYz1yKDg4MDExNSksZj1yKDcxNzMzMikscz0vXlstK10weFswLTlhLWZdKyQvaSxpPS9eMGJbMDFdKyQvaSxsPS9eMG9bMC03XSskL2ksZD1wYXJzZUludDtjb25zdCB2PWZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gdDtpZigoMCxmLmRlZmF1bHQpKHQpKXJldHVybiBOYU47aWYoKDAsYy5kZWZhdWx0KSh0KSl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQudmFsdWVPZj90LnZhbHVlT2YoKTp0O3Q9KDAsYy5kZWZhdWx0KShlKT9lKyIiOmV9aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiAwPT09dD90Oit0O3Q9byh0KTt2YXIgcj1pLnRlc3QodCk7cmV0dXJuIHJ8fGwudGVzdCh0KT9kKHQuc2xpY2UoMikscj8yOjgpOnMudGVzdCh0KT9OYU46K3R9fSwzNTI4MzcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoMjY5MzY2KSx1PXIoMjI0NDE2KSxhPXIoODI1MDM5KSxvPXIoNzEyODAxKSxjPXIoNDE0MTIzKSxmPXIoODYyMzg4KSxzPXIoOTcyMDE3KTtjb25zdCBpPWMuZGVmYXVsdCYmMS8oMCxzLmRlZmF1bHQpKG5ldyBjLmRlZmF1bHQoWywtMF0pKVsxXT09MS8wP2Z1bmN0aW9uKHQpe3JldHVybiBuZXcgYy5kZWZhdWx0KHQpfTpmLmRlZmF1bHQ7Y29uc3QgbD1mdW5jdGlvbih0LGUscil7dmFyIGM9LTEsZj11LmRlZmF1bHQsbD10Lmxlbmd0aCxkPSEwLHY9W10scD12O2lmKHIpZD0hMSxmPWEuZGVmYXVsdDtlbHNlIGlmKGw+PTIwMCl7dmFyIGI9ZT9udWxsOmkodCk7aWYoYilyZXR1cm4oMCxzLmRlZmF1bHQpKGIpO2Q9ITEsZj1vLmRlZmF1bHQscD1uZXcgbi5kZWZhdWx0fWVsc2UgcD1lP1tdOnY7dDpmb3IoOysrYzxsOyl7dmFyIHk9dFtjXSxoPWU/ZSh5KTp5O2lmKHk9cnx8MCE9PXk/eTowLGQmJmg9PWgpe2Zvcih2YXIgaj1wLmxlbmd0aDtqLS07KWlmKHBbal09PT1oKWNvbnRpbnVlIHQ7ZSYmcC5wdXNoKGgpLHYucHVzaCh5KX1lbHNlIGYocCxoLHIpfHwocCE9PXYmJnAucHVzaChoKSx2LnB1c2goeSkpfXJldHVybiB2fTtjb25zdCBkPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lmxlbmd0aD9sKHQpOltdfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80706.a5913aa6ad62d9dbf031.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.268Z","timestamp":1785154590268,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80706.a5913aa6ad62d9dbf031.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1be6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e6ffea90a0779527f44b8949e292be0d\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":7142,"size_decoded":4236,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"7d7a3ddeb844a1fdfe8b024f9df9f0b6","sha1":"b3afece36b14fafc7889e9b954f9736c892a2849","sha256":"0752584a0f2ad3bba4f44bbd6a44bf08a76726c524b79367996ab9b20e03bfba","sha512":"c0b04bf9ca52fee536a54ae9fcb3fcac9ee210f95be1205e4fe48f0cbb1f25a4db788a4ae10cd4b5ee13e1dc5159c2a4d48516d50bf1ee07d2da1a00fa95ac38","ssdeep":"96:VI23hKdh7P1lIbeWL9aqfMbFNriK6Vizc/MuomCA9P0LX4BYyCnsI6T:n3wT9lIbeWJaqfvXQcEA0LHxnf6T","tlshash":"c4e1c6c832b1f0eaa3e325e480ab5806e13a6d5a558e60b6e34557d37874fc540ffec5","first_seen":"2026-07-23T13:38:20.481503Z","last_seen":"2026-07-27T14:18:36.416149Z","times_seen":1483,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s4MDcwNl0sezcxMjc0NShyLGUsdCl7dmFyIG47IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBpLG89MWU2LHM9MWU2LGM9IltiaWcuanNdICIsZj1jKyJJbnZhbGlkICIsdT1mKyJkZWNpbWFsIHBsYWNlcyIsaD1mKyJyb3VuZGluZyBtb2RlIixsPWMrIkRpdmlzaW9uIGJ5IHplcm8iLGE9e30sZz12b2lkIDAsdj0vXi0/KFxkKyhcLlxkKik/fFwuXGQrKShlWystXT9cZCspPyQvaTtmdW5jdGlvbiB3KHIsZSx0LG4pe3ZhciBpPXIuYztpZih0PT09ZyYmKHQ9ci5jb25zdHJ1Y3Rvci5STSksMCE9PXQmJjEhPT10JiYyIT09dCYmMyE9PXQpdGhyb3cgRXJyb3IoaCk7aWYoZTwxKW49Mz09PXQmJihufHwhIWlbMF0pfHwwPT09ZSYmKDE9PT10JiZpWzBdPj01fHwyPT09dCYmKGlbMF0+NXx8NT09PWlbMF0mJihufHxpWzFdIT09ZykpKSxpLmxlbmd0aD0xLG4/KHIuZT1yLmUtZSsxLGlbMF09MSk6aVswXT1yLmU9MDtlbHNlIGlmKGU8aS5sZW5ndGgpe2lmKG49MT09PXQmJmlbZV0+PTV8fDI9PT10JiYoaVtlXT41fHw1PT09aVtlXSYmKG58fGlbZSsxXSE9PWd8fDEmaVtlLTFdKSl8fDM9PT10JiYobnx8ISFpWzBdKSxpLmxlbmd0aD1lLS0sbilmb3IoOysraVtlXT45OylpW2VdPTAsZS0tfHwoKytyLmUsaS51bnNoaWZ0KDEpKTtmb3IoZT1pLmxlbmd0aDshaVstLWVdOylpLnBvcCgpfXJldHVybiByfWZ1bmN0aW9uIHAocixlLHQpe3ZhciBuPXIuZSxpPXIuYy5qb2luKCIiKSxvPWkubGVuZ3RoO2lmKGUpaT1pLmNoYXJBdCgwKSsobz4xPyIuIitpLnNsaWNlKDEpOiIiKSsobjwwPyJlIjoiZSsiKStuO2Vsc2UgaWYobjwwKXtmb3IoOysrbjspaT0iMCIraTtpPSIwLiIraX1lbHNlIGlmKG4+MClpZigrK24+bylmb3Iobi09bztuLS07KWkrPSIwIjtlbHNlIG48byYmKGk9aS5zbGljZSgwLG4pKyIuIitpLnNsaWNlKG4pKTtlbHNlIG8+MSYmKGk9aS5jaGFyQXQoMCkrIi4iK2kuc2xpY2UoMSkpO3JldHVybiByLnM8MCYmdD8iLSIraTppfWEuYWJzPWZ1bmN0aW9uKCl7dmFyIHI9bmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyk7cmV0dXJuIHIucz0xLHJ9LGEuY21wPWZ1bmN0aW9uKHIpe3ZhciBlLHQ9dGhpcyxuPXQuYyxpPShyPW5ldyB0LmNvbnN0cnVjdG9yKHIpKS5jLG89dC5zLHM9ci5zLGM9dC5lLGY9ci5lO2lmKCFuWzBdfHwhaVswXSlyZXR1cm4gblswXT9vOmlbMF0/LXM6MDtpZihvIT1zKXJldHVybiBvO2lmKGU9bzwwLGMhPWYpcmV0dXJuIGM+Zl5lPzE6LTE7Zm9yKHM9KGM9bi5sZW5ndGgpPChmPWkubGVuZ3RoKT9jOmYsbz0tMTsrK288czspaWYobltvXSE9aVtvXSlyZXR1cm4gbltvXT5pW29dXmU/MTotMTtyZXR1cm4gYz09Zj8wOmM+Zl5lPzE6LTF9LGEuZGl2PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1lLmNvbnN0cnVjdG9yLG49ZS5jLGk9KHI9bmV3IHQocikpLmMscz1lLnM9PXIucz8xOi0xLGM9dC5EUDtpZihjIT09fn5jfHxjPDB8fGM+byl0aHJvdyBFcnJvcih1KTtpZighaVswXSl0aHJvdyBFcnJvcihsKTtpZighblswXSlyZXR1cm4gci5zPXMsci5jPVtyLmU9MF0scjt2YXIgZixoLGEsdixwLGQ9aS5zbGljZSgpLEU9Zj1pLmxlbmd0aCxtPW4ubGVuZ3RoLGI9bi5zbGljZSgwLGYpLFA9Yi5sZW5ndGgsXz1yLEQ9Xy5jPVtdLGs9MCxNPWMrKF8uZT1lLmUtci5lKSsxO2ZvcihfLnM9cyxzPU08MD8wOk0sZC51bnNoaWZ0KDApO1ArKzxmOyliLnB1c2goMCk7ZG97Zm9yKGE9MDthPDEwO2ErKyl7aWYoZiE9KFA9Yi5sZW5ndGgpKXY9Zj5QPzE6LTE7ZWxzZSBmb3IocD0tMSx2PTA7KytwPGY7KWlmKGlbcF0hPWJbcF0pe3Y9aVtwXT5iW3BdPzE6LTE7YnJlYWt9aWYoISh2PDApKWJyZWFrO2ZvcihoPVA9PWY/aTpkO1A7KXtpZihiWy0tUF08aFtQXSl7Zm9yKHA9UDtwJiYhYlstLXBdOyliW3BdPTk7LS1iW3BdLGJbUF0rPTEwfWJbUF0tPWhbUF19Zm9yKDshYlswXTspYi5zaGlmdCgpfURbaysrXT12P2E6KythLGJbMF0mJnY/YltQXT1uW0VdfHwwOmI9W25bRV1dfXdoaWxlKChFKys8bXx8YlswXSE9PWcpJiZzLS0pO3JldHVybiBEWzBdfHwxPT1rfHwoRC5zaGlmdCgpLF8uZS0tLE0tLSksaz5NJiZ3KF8sTSx0LlJNLGJbMF0hPT1nKSxffSxhLmVxPWZ1bmN0aW9uKHIpe3JldHVybiAwPT09dGhpcy5jbXAocil9LGEuZ3Q9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPjB9LGEuZ3RlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLmNtcChyKT4tMX0sYS5sdD1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy5jbXAocik8MH0sYS5sdGU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPDF9LGEubWludXM9YS5zdWI9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGksbz10aGlzLHM9by5jb25zdHJ1Y3RvcixjPW8ucyxmPShyPW5ldyBzKHIpKS5zO2lmKGMhPWYpcmV0dXJuIHIucz0tZixvLnBsdXMocik7dmFyIHU9by5jLnNsaWNlKCksaD1vLmUsbD1yLmMsYT1yLmU7aWYoIXVbMF18fCFsWzBdKXJldHVybiBsWzBdP3Iucz0tZjp1WzBdP3I9bmV3IHMobyk6ci5zPTEscjtpZihjPWgtYSl7Zm9yKChpPWM8MCk/KGM9LWMsbj11KTooYT1oLG49bCksbi5yZXZlcnNlKCksZj1jO2YtLTspbi5wdXNoKDApO24ucmV2ZXJzZSgpfWVsc2UgZm9yKHQ9KChpPXUubGVuZ3RoPGwubGVuZ3RoKT91OmwpLmxlbmd0aCxjPWY9MDtmPHQ7ZisrKWlmKHVbZl0hPWxbZl0pe2k9dVtmXTxsW2ZdO2JyZWFrfWlmKGkmJihuPXUsdT1sLGw9bixyLnM9LXIucyksKGY9KHQ9bC5sZW5ndGgpLShlPXUubGVuZ3RoKSk+MClmb3IoO2YtLTspdVtlKytdPTA7Zm9yKGY9ZTt0PmM7KXtpZih1Wy0tdF08bFt0XSl7Zm9yKGU9dDtlJiYhdVstLWVdOyl1W2VdPTk7LS11W2VdLHVbdF0rPTEwfXVbdF0tPWxbdF19Zm9yKDswPT09dVstLWZdOyl1LnBvcCgpO2Zvcig7MD09PXVbMF07KXUuc2hpZnQoKSwtLWE7cmV0dXJuIHVbMF18fChyLnM9MSx1PVthPTBdKSxyLmM9dSxyLmU9YSxyfSxhLm1vZD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5zLG89KHI9bmV3IG4ocikpLnMKO2lmKCFyLmNbMF0pdGhyb3cgRXJyb3IobCk7cmV0dXJuIHQucz1yLnM9MSxlPTE9PXIuY21wKHQpLHQucz1pLHIucz1vLGU/bmV3IG4odCk6KGk9bi5EUCxvPW4uUk0sbi5EUD1uLlJNPTAsdD10LmRpdihyKSxuLkRQPWksbi5STT1vLHRoaXMubWludXModC50aW1lcyhyKSkpfSxhLnBsdXM9YS5hZGQ9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGk9dGhpcyxvPWkuY29uc3RydWN0b3I7aWYocj1uZXcgbyhyKSxpLnMhPXIucylyZXR1cm4gci5zPS1yLnMsaS5taW51cyhyKTt2YXIgcz1pLmUsYz1pLmMsZj1yLmUsdT1yLmM7aWYoIWNbMF18fCF1WzBdKXJldHVybiB1WzBdfHwoY1swXT9yPW5ldyBvKGkpOnIucz1pLnMpLHI7aWYoYz1jLnNsaWNlKCksZT1zLWYpe2ZvcihlPjA/KGY9cyxuPXUpOihlPS1lLG49Yyksbi5yZXZlcnNlKCk7ZS0tOyluLnB1c2goMCk7bi5yZXZlcnNlKCl9Zm9yKGMubGVuZ3RoLXUubGVuZ3RoPDAmJihuPXUsdT1jLGM9biksZT11Lmxlbmd0aCx0PTA7ZTtjW2VdJT0xMCl0PShjWy0tZV09Y1tlXSt1W2VdK3QpLzEwfDA7Zm9yKHQmJihjLnVuc2hpZnQodCksKytmKSxlPWMubGVuZ3RoOzA9PT1jWy0tZV07KWMucG9wKCk7cmV0dXJuIHIuYz1jLHIuZT1mLHJ9LGEucG93PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1uZXcgZS5jb25zdHJ1Y3RvcigiMSIpLG49dCxpPXI8MDtpZihyIT09fn5yfHxyPC0xZTZ8fHI+cyl0aHJvdyBFcnJvcihmKyJleHBvbmVudCIpO2ZvcihpJiYocj0tcik7MSZyJiYobj1uLnRpbWVzKGUpKSxyPj49MTspZT1lLnRpbWVzKGUpO3JldHVybiBpP3QuZGl2KG4pOm59LGEucHJlYz1mdW5jdGlvbihyLGUpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO3JldHVybiB3KG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpLHIsZSl9LGEucm91bmQ9ZnVuY3Rpb24ocixlKXtpZihyPT09ZylyPTA7ZWxzZSBpZihyIT09fn5yfHxyPC1vfHxyPm8pdGhyb3cgRXJyb3IodSk7cmV0dXJuIHcobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcykscit0aGlzLmUrMSxlKX0sYS5zcXJ0PWZ1bmN0aW9uKCl7dmFyIHIsZSx0LG49dGhpcyxpPW4uY29uc3RydWN0b3Isbz1uLnMscz1uLmUsZj1uZXcgaSgiMC41Iik7aWYoIW4uY1swXSlyZXR1cm4gbmV3IGkobik7aWYobzwwKXRocm93IEVycm9yKGMrIk5vIHNxdWFyZSByb290Iik7MD09PShvPU1hdGguc3FydChuKyIiKSl8fG89PT0xLzA/KChlPW4uYy5qb2luKCIiKSkubGVuZ3RoK3MmMXx8KGUrPSIwIikscz0oKHMrMSkvMnwwKS0oczwwfHwxJnMpLHI9bmV3IGkoKChvPU1hdGguc3FydChlKSk9PTEvMD8iNWUiOihvPW8udG9FeHBvbmVudGlhbCgpKS5zbGljZSgwLG8uaW5kZXhPZigiZSIpKzEpKStzKSk6cj1uZXcgaShvKyIiKSxzPXIuZSsoaS5EUCs9NCk7ZG97dD1yLHI9Zi50aW1lcyh0LnBsdXMobi5kaXYodCkpKX13aGlsZSh0LmMuc2xpY2UoMCxzKS5qb2luKCIiKSE9PXIuYy5zbGljZSgwLHMpLmpvaW4oIiIpKTtyZXR1cm4gdyhyLChpLkRQLT00KStyLmUrMSxpLlJNKX0sYS50aW1lcz1hLm11bD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5jLG89KHI9bmV3IG4ocikpLmMscz1pLmxlbmd0aCxjPW8ubGVuZ3RoLGY9dC5lLHU9ci5lO2lmKHIucz10LnM9PXIucz8xOi0xLCFpWzBdfHwhb1swXSlyZXR1cm4gci5jPVtyLmU9MF0scjtmb3Ioci5lPWYrdSxzPGMmJihlPWksaT1vLG89ZSx1PXMscz1jLGM9dSksZT1uZXcgQXJyYXkodT1zK2MpO3UtLTspZVt1XT0wO2ZvcihmPWM7Zi0tOyl7Zm9yKGM9MCx1PXMrZjt1PmY7KWM9ZVt1XStvW2ZdKmlbdS1mLTFdK2MsZVt1LS1dPWMlMTAsYz1jLzEwfDA7ZVt1XT1jfWZvcihjPysrci5lOmUuc2hpZnQoKSxmPWUubGVuZ3RoOyFlWy0tZl07KWUucG9wKCk7cmV0dXJuIHIuYz1lLHJ9LGEudG9FeHBvbmVudGlhbD1mdW5jdGlvbihyLGUpe3ZhciB0PXRoaXMsbj10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MHx8cj5vKXRocm93IEVycm9yKHUpO2Zvcih0PXcobmV3IHQuY29uc3RydWN0b3IodCksKytyLGUpO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMCwhIW4pfSxhLnRvRml4ZWQ9ZnVuY3Rpb24ocixlKXt2YXIgdD10aGlzLG49dC5jWzBdO2lmKHIhPT1nKXtpZihyIT09fn5yfHxyPDB8fHI+byl0aHJvdyBFcnJvcih1KTtmb3Iocj1yKyh0PXcobmV3IHQuY29uc3RydWN0b3IodCkscit0LmUrMSxlKSkuZSsxO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMSwhIW4pfSxhLnRvSlNPTj1hLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxlPXIuY29uc3RydWN0b3I7cmV0dXJuIHAocixyLmU8PWUuTkV8fHIuZT49ZS5QRSwhIXIuY1swXSl9LGEudG9OdW1iZXI9ZnVuY3Rpb24oKXt2YXIgcj1OdW1iZXIocCh0aGlzLCEwLCEwKSk7aWYoITA9PT10aGlzLmNvbnN0cnVjdG9yLnN0cmljdCYmIXRoaXMuZXEoci50b1N0cmluZygpKSl0aHJvdyBFcnJvcihjKyJJbXByZWNpc2UgY29udmVyc2lvbiIpO3JldHVybiByfSxhLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKHIsZSl7dmFyIHQ9dGhpcyxuPXQuY29uc3RydWN0b3IsaT10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO2Zvcih0PXcobmV3IG4odCkscixlKTt0LmMubGVuZ3RoPHI7KXQuYy5wdXNoKDApfXJldHVybiBwKHQscjw9dC5lfHx0LmU8PW4uTkV8fHQuZT49bi5QRSwhIWkpfSxhLnZhbHVlT2Y9ZnVuY3Rpb24oKXt2YXIgcj10aGlzLGU9ci5jb25zdHJ1Y3RvcjtpZighMD09PWUuc3RyaWN0KXRocm93IEVycm9yKGMrInZhbHVlT2YgZGlzYWxsb3dlZCIpO3JldHVybiBwKHIsci5lPD1lLk5FfHxyLmU+PWUuUEUsITApfSxpPWZ1bmN0aW9uIHIoKXtmdW5jdGlvbiBlKHQpe3ZhciBuPXRoaXM7aWYoIShuIGluc3RhbmNlb2YgZSkpcmV0dXJuIHQ9PT1nP3IoKTpuZXcgZSh0KTtpZih0IGluc3RhbmNlb2YgZSluLnM9dC5zLG4uZT10LmUsbi5jPXQuYy5zbGljZSgpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiB0KXsKaWYoITA9PT1lLnN0cmljdCl0aHJvdyBUeXBlRXJyb3IoZisibnVtYmVyIik7dD0wPT09dCYmMS90PDA/Ii0wIjpTdHJpbmcodCl9IWZ1bmN0aW9uKHIsZSl7dmFyIHQsbixpO2lmKCF2LnRlc3QoZSkpdGhyb3cgRXJyb3IoZisibnVtYmVyIik7ci5zPSItIj09ZS5jaGFyQXQoMCk/KGU9ZS5zbGljZSgxKSwtMSk6MSwodD1lLmluZGV4T2YoIi4iKSk+LTEmJihlPWUucmVwbGFjZSgiLiIsIiIpKTsobj1lLnNlYXJjaCgvZS9pKSk+MD8odDwwJiYodD1uKSx0Kz0rZS5zbGljZShuKzEpLGU9ZS5zdWJzdHJpbmcoMCxuKSk6dDwwJiYodD1lLmxlbmd0aCk7Zm9yKGk9ZS5sZW5ndGgsbj0wO248aSYmIjAiPT1lLmNoYXJBdChuKTspKytuO2lmKG49PWkpci5jPVtyLmU9MF07ZWxzZXtmb3IoO2k+MCYmIjAiPT1lLmNoYXJBdCgtLWkpOyk7Zm9yKHIuZT10LW4tMSxyLmM9W10sdD0wO248PWk7KXIuY1t0KytdPStlLmNoYXJBdChuKyspfX0obix0KX1uLmNvbnN0cnVjdG9yPWV9cmV0dXJuIGUucHJvdG90eXBlPWEsZS5EUD0yMCxlLlJNPTEsZS5ORT0tNyxlLlBFPTIxLGUuc3RyaWN0PWZhbHNlLGUucm91bmREb3duPTAsZS5yb3VuZEhhbGZVcD0xLGUucm91bmRIYWxmRXZlbj0yLGUucm91bmRVcD0zLGV9KCksaS5kZWZhdWx0PWkuQmlnPWksdm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gaX0uY2FsbChlLHQsZSxyKSl8fChyLmV4cG9ydHM9bil9KCl9LDk2MzA5OChyLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2U6KCk9Pml9KTtjb25zdCBuPXthcl9BRToiYXIiLGJyOiJwdCIsZGVfREU6ImRlIixjYV9FUzoiY2EiLGhlX0lMOiJoZSIsaWRfSUQ6ImlkIixpbjoiZW4iLGtyOiJrbyIsbXNfTVk6Im1zIixzdl9TRToic3YiLHRoX1RIOiJ0aCIsdWs6ImVuIix2aV9WTjoidmkiLHpoX0NOOiJ6aC1IYW5zIix6aF9UVzoiemgtSGFudCIsemg6InpoLUhhbnMiLGh1X0hVOiJodS1IVSJ9O2Z1bmN0aW9uIGkocil7cmV0dXJuIG5bcl18fHJ9fX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.160Z","timestamp":1785154591160,"http_version":"","security_state":"","security_info":null,"request":{"raw":"OPTIONS /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-type\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.166Z","timestamp":1785154591166,"http_version":"","security_state":"","security_info":null,"request":{"raw":"POST /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/json\r\nContent-Length: 1470\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\n\r\n","headers":null,"cookies":null,"method":"POST","post_data":{"size":1470,"data":"{\"schema\":\"iglu:com.snowplowanalytics.snowplow/payload_data/jsonschema/1-0-4\",\"data\":[{\"e\":\"ue\",\"eid\":\"207a2fc5-cd28-4a55-8488-1e740f7e4a5b\",\"tv\":\"js-3.24.1\",\"tna\":\"tv_cf\",\"aid\":\"tradingview\",\"p\":\"web\",\"cookie\":\"1\",\"cs\":\"UTF-8\",\"lang\":\"en-US\",\"res\":\"1280x1024\",\"cd\":\"24\",\"dtm\":\"1785154591137\",\"vp\":\"400x798\",\"ds\":\"400x798\",\"vid\":\"1\",\"sid\":\"b177bc9a-34b2-4836-9972-6f558777cbde\",\"refr\":\"https://persimmontrades.com/\",\"url\":\"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D\",\"ue_px\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy91bnN0cnVjdF9ldmVudC9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6eyJzY2hlbWEiOiJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRzX3dpdGhvdXRfd2Vic29ja2V0L2pzb25zY2hlbWEvMS0wLTAiLCJkYXRhIjp7Imhvc3QiOiJwZXJzaW1tb250cmFkZXMuY29tIiwicGF0aCI6Ii8iLCJ3aWRnZXRfaWQiOiJ0aW1lbGluZSIsImV2ZW50X25hbWUiOiJwYWdlX3ZpZXcifX19\",\"cx\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6W3sic2NoZW1hIjoiaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsImRhdGEiOnsiaWQiOiJmNmQ1M2U3YS1iZTYzLTRlOTEtYjc2Ni1mZTJlNmNhNTFlZWMifX1dfQ\",\"stm\":\"1785154591139\"}]}"}},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T14:18:36.3294Z","times_seen":17564547,"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBTC.svg","fqdn":"s3-symbol-logo.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/market-overview/?locale=en#%7B%22colorTheme%22%3A%22light%22%2C%22dateRange%22%3A%2212m%22%2C%22showChart%22%3Atrue%2C%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22largeChartUrl%22%3A%22%22%2C%22isTransparent%22%3Afalse%2C%22plotLineColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22plotLineColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%201)%22%2C%22gridLineColor%22%3A%22rgba(240%2C%20243%2C%20250%2C%201)%22%2C%22scaleFontColor%22%3A%22rgba(120%2C%20123%2C%20134%2C%201)%22%2C%22belowLineFillColorGrowing%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22belowLineFillColorFalling%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22symbolActiveColor%22%3A%22rgba(33%2C%20150%2C%20243%2C%200.12)%22%2C%22tabs%22%3A%5B%7B%22title%22%3A%22Cryptocurrency%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22BITBAY%3ABTCUSD%22%7D%2C%7B%22s%22%3A%22BITPANDAPRO%3ABTCEUR%22%7D%2C%7B%22s%22%3A%22BITBAY%3ABTCPLN%22%7D%2C%7B%22s%22%3A%22COINBASE%3ABTCGBP%22%7D%2C%7B%22s%22%3A%22BITBAY%3AETHBTC%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHUSD%22%7D%2C%7B%22s%22%3A%22KRAKEN%3AETHEUR%22%7D%5D%2C%22originalTitle%22%3A%22Commodities%22%7D%2C%7B%22title%22%3A%22Bonds%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22CME%3AGE1!%22%2C%22d%22%3A%22Eurodollar%22%7D%2C%7B%22s%22%3A%22CBOT%3AZB1!%22%2C%22d%22%3A%22T-Bond%22%7D%2C%7B%22s%22%3A%22CBOT%3AUB1!%22%2C%22d%22%3A%22Ultra%20T-Bond%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBL1!%22%2C%22d%22%3A%22Euro%20Bund%22%7D%2C%7B%22s%22%3A%22EUREX%3AFBTP1!%22%2C%22d%22%3A%22Euro%20BTP%22%7D%2C%7B%22s%22%3A%22EUREX%3AFGBM1!%22%2C%22d%22%3A%22Euro%20BOBL%22%7D%5D%2C%22originalTitle%22%3A%22Bonds%22%7D%2C%7B%22title%22%3A%22Forex%22%2C%22symbols%22%3A%5B%7B%22s%22%3A%22FX%3AEURUSD%22%7D%2C%7B%22s%22%3A%22FX%3AGBPUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDJPY%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCHF%22%7D%2C%7B%22s%22%3A%22FX%3AAUDUSD%22%7D%2C%7B%22s%22%3A%22FX%3AUSDCAD%22%7D%5D%2C%22originalTitle%22%3A%22Forex%22%7D%5D%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22market-overview%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:31.258Z","timestamp":1785154591258,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /crypto/XTVCBTC.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:31 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"107060b925841745f310697bd9f1f83d\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:52 GMT\r\ncdn-cachedat: 08/09/2025 14:29:15\r\nx-amz-id-2: mS6txdd/WwgLrAcd/6no+TxP/dPK7pUj8E19SG87xGMdnJzq7GTFUtT6mRz2dzI97J9VRTiSHig=\r\nx-amz-request-id: 7A2W5B1DC5DG6A3C\r\nx-amz-meta-hash: 107060b925841745f310697bd9f1f83d\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 907297c616dd16af415c9736c943e7e6\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":801,"size_decoded":1365,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (801), with no line terminators","md5":"107060b925841745f310697bd9f1f83d","sha1":"40a2e01da20c164a3c3f774a72f3feadf17cafa2","sha256":"4dfca512e957e14f05da07751a96061cf4bfd5df438504f65287fa0a8c3cadb6","sha512":"fb7b987074d4701281c49fee08b1d44f2be2b3aa9ecffd0a88a6cc682aac06a6cd823598c8c8ba5ad43f8f1430a73c814148dea60d5740162cc41af7da324c76","ssdeep":"","tlshash":"24011ec55310f6046ec7c09dbf74a9e4110f60ae14a6c7dcf2c89f0835aae8ba614d48","first_seen":"2023-04-21T01:30:48Z","last_seen":"2026-07-27T14:17:30.859056Z","times_seen":6226,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRjc5MzFBIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjgzNiA3Ljk0Yy4xNjYtMS4xMjMtLjY4NC0xLjcyMS0xLjg1NS0yLjEyOGwuMzgtMS41MTMtLjkyNi0uMjMtLjM2OSAxLjQ3Ni0uNzM4LS4xNzcuMzc1LTEuNDg2LS45MjUtLjIzLS4zOCAxLjUxOC0uNTg4LS4xMzl2LS4wMDVsLTEuMjc4LS4zMi0uMjQ2Ljk4OHMuNjg0LjE2LjY3NC4xNjZjLjM3NC4wOTYuNDM4LjM0Mi40MjcuNTM1TDYuOTYgOC4xMjhsLjA5Ni4wMzItLjEwMi0uMDIyLS42MDQgMi40MjNjLS4wNDMuMTEyLS4xNi4yODMtLjQyMy4yMTQuMDExLjAxNi0uNjY4LS4xNi0uNjY4LS4xNmwtLjQ2IDEuMDUzIDEuMjAzLjMuNjU4LjE3LS4zODUgMS41MzUuOTI1LjIzLjM3NC0xLjUxOS43NDQuMTkzLS4zOCAxLjUxMy45MjUuMjMuMzgtMS41MzVjMS41NzcuMyAyLjc2NS4xODIgMy4yNjItMS4yNDYuNDAxLTEuMTUtLjAyMS0xLjgwNy0uODUtMi4yNDYuNjA0LS4xMzMgMS4wNTktLjUzNCAxLjE3Ni0xLjM1M2guMDA1em0tMi4xMTIgMi45NjNjLS4yODMgMS4xNS0yLjIxOS41MjQtMi44NDUuMzc0bC41MDgtMi4wMzdjLjYyNi4xNiAyLjYzNy40NjUgMi4zMzcgMS42NTh2LjAwNXptLjI4NC0yLjk3OWMtLjI1NyAxLjA0My0xLjg3Mi41MTQtMi4zOS4zODVsLjQ2LTEuODQ0Yy41MjMuMTI4IDIuMjAyLjM3NCAxLjkzIDEuNDZ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"persimmontrades.com/frontmain/js/plugins.min.js","fqdn":"persimmontrades.com","domain":"persimmontrades.com","tld":"com"},"ip":{"addr":"5.182.208.206","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://persimmontrades.com/","date":"2026-07-27T12:16:29.328Z","timestamp":1785154589328,"http_version":"HTTP/3","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":"*.persimmontrades.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 18:23:50 GMT","end":"Sat, 10 Oct 2026 18:23:49 GMT"},"fingerprint":{"sha1":"E4:C5:F9:47:39:84:0C:11:F9:B1:DF:2B:C4:A3:D0:A2:48:80:1C:96","sha256":"47:38:80:02:FB:53:31:68:DD:4A:67:C3:66:B7:2C:40:A4:C9:DF:97:61:D6:95:48:B8:DB:9C:EC:B4:D2:09:1F"}}},"request":{"raw":"GET /frontmain/js/plugins.min.js HTTP/1.1\r\nHost: persimmontrades.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://persimmontrades.com/\r\nCookie: PHPSESSID=e7d78a33e76e39fc11aa0f314447e9fc\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\ncontent-type: text/javascript\r\nlast-modified: Sat, 15 Oct 2022 18:04:14 GMT\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding\r\ncontent-length: 387851\r\ndate: Mon, 27 Jul 2026 12:16:29 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2070825,"size_decoded":388090,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (574)","md5":"e53991cd467f1430fba30ab39aa4a374","sha1":"14638e190d18c4f89d2f36ea7b78f4717e063b6c","sha256":"f9f61d011ab3bde0e21232a93fd85808614b7b04110293eaf27f11851929c860","sha512":"38482ed8ff8fd418d5fa6ab03b46bd18bb9e49c132a31370f2af28133ba8b32112814f023acbc4ebfdddaeb32ae4d2cdd0800a2d01cbd7db7439f21992642ce8","ssdeep":"24576:v5qgEhCd/X9zYw0rRSt3FK7Y7sionSzQpe8s8PEp/gkMe4926r:v5qgEhCd/X9zYw0rRSt3FK7Y7sionSzg","tlshash":"0b25944a7be124359257f03a9d6fcc087236a45b2b4aad057a4c52e41f1887c53faff8","first_seen":"2025-09-22T10:43:48.559737Z","last_seen":"2026-07-27T12:17:29.252168Z","times_seen":27,"resource_available":false,"data":"ISBmdW5jdGlvbihlLCB0KSB7CiAgICAib2JqZWN0IiA9PSB0eXBlb2YgbW9kdWxlICYmICJvYmplY3QiID09IHR5cGVvZiBtb2R1bGUuZXhwb3J0cyA/IG1vZHVsZS5leHBvcnRzID0gZS5kb2N1bWVudCA/IHQoZSwgITApIDogZnVuY3Rpb24oZSkgewogICAgICAgIGlmICghZS5kb2N1bWVudCkgdGhyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7CiAgICAgICAgcmV0dXJuIHQoZSkKICAgIH0gOiB0KGUpCn0oInVuZGVmaW5lZCIgIT0gdHlwZW9mIHdpbmRvdyA/IHdpbmRvdyA6IHRoaXMsIGZ1bmN0aW9uKEMsIGUpIHsKICAgIHZhciBkID0gW10sCiAgICAgICAgaCA9IEMuZG9jdW1lbnQsCiAgICAgICAgYyA9IGQuc2xpY2UsCiAgICAgICAgZyA9IGQuY29uY2F0LAogICAgICAgIHMgPSBkLnB1c2gsCiAgICAgICAgaSA9IGQuaW5kZXhPZiwKICAgICAgICBuID0ge30sCiAgICAgICAgdCA9IG4udG9TdHJpbmcsCiAgICAgICAgbSA9IG4uaGFzT3duUHJvcGVydHksCiAgICAgICAgdiA9IHt9LAogICAgICAgIHIgPSAiMS4xMi4zIiwKICAgICAgICBFID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICByZXR1cm4gbmV3IEUuZm4uaW5pdChlLCB0KQogICAgICAgIH0sCiAgICAgICAgbyA9IC9eW1xzXHVGRUZGXHhBMF0rfFtcc1x1RkVGRlx4QTBdKyQvZywKICAgICAgICBhID0gL14tbXMtLywKICAgICAgICB1ID0gLy0oW1xkYS16XSkvZ2ksCiAgICAgICAgbCA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIHQudG9VcHBlckNhc2UoKQogICAgICAgIH07CgogICAgZnVuY3Rpb24gZihlKSB7CiAgICAgICAgdmFyIHQgPSAhIWUgJiYgImxlbmd0aCIgaW4gZSAmJiBlLmxlbmd0aCwKICAgICAgICAgICAgbiA9IEUudHlwZShlKTsKICAgICAgICByZXR1cm4gImZ1bmN0aW9uIiAhPT0gbiAmJiAhRS5pc1dpbmRvdyhlKSAmJiAoImFycmF5IiA9PT0gbiB8fCAwID09PSB0IHx8ICJudW1iZXIiID09IHR5cGVvZiB0ICYmIDAgPCB0ICYmIHQgLSAxIGluIGUpCiAgICB9CiAgICBFLmZuID0gRS5wcm90b3R5cGUgPSB7CiAgICAgICAganF1ZXJ5OiByLAogICAgICAgIGNvbnN0cnVjdG9yOiBFLAogICAgICAgIHNlbGVjdG9yOiAiIiwKICAgICAgICBsZW5ndGg6IDAsCiAgICAgICAgdG9BcnJheTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBjLmNhbGwodGhpcykKICAgICAgICB9LAogICAgICAgIGdldDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gbnVsbCAhPSBlID8gZSA8IDAgPyB0aGlzW2UgKyB0aGlzLmxlbmd0aF0gOiB0aGlzW2VdIDogYy5jYWxsKHRoaXMpCiAgICAgICAgfSwKICAgICAgICBwdXNoU3RhY2s6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSBFLm1lcmdlKHRoaXMuY29uc3RydWN0b3IoKSwgZSk7CiAgICAgICAgICAgIHJldHVybiB0LnByZXZPYmplY3QgPSB0aGlzLCB0LmNvbnRleHQgPSB0aGlzLmNvbnRleHQsIHQKICAgICAgICB9LAogICAgICAgIGVhY2g6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIEUuZWFjaCh0aGlzLCBlKQogICAgICAgIH0sCiAgICAgICAgbWFwOiBmdW5jdGlvbihuKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1c2hTdGFjayhFLm1hcCh0aGlzLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbi5jYWxsKGUsIHQsIGUpCiAgICAgICAgICAgIH0pKQogICAgICAgIH0sCiAgICAgICAgc2xpY2U6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5wdXNoU3RhY2soYy5hcHBseSh0aGlzLCBhcmd1bWVudHMpKQogICAgICAgIH0sCiAgICAgICAgZmlyc3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5lcSgwKQogICAgICAgIH0sCiAgICAgICAgbGFzdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVxKC0xKQogICAgICAgIH0sCiAgICAgICAgZXE6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmxlbmd0aCwKICAgICAgICAgICAgICAgIG4gPSArZSArIChlIDwgMCA/IHQgOiAwKTsKICAgICAgICAgICAgcmV0dXJuIHRoaXMucHVzaFN0YWNrKDAgPD0gbiAmJiBuIDwgdCA/IFt0aGlzW25dXSA6IFtdKQogICAgICAgIH0sCiAgICAgICAgZW5kOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJldk9iamVjdCB8fCB0aGlzLmNvbnN0cnVjdG9yKCkKICAgICAgICB9LAogICAgICAgIHB1c2g6IHMsCiAgICAgICAgc29ydDogZC5zb3J0LAogICAgICAgIHNwbGljZTogZC5zcGxpY2UKICAgIH0sIEUuZXh0ZW5kID0gRS5mbi5leHRlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgZSwgdCwgbiwgciwgaSwgbywgYSA9IGFyZ3VtZW50c1swXSB8fCB7fSwKICAgICAgICAgICAgcyA9IDEsCiAgICAgICAgICAgIHUgPSBhcmd1bWVudHMubGVuZ3RoLAogICAgICAgICAgICBsID0gITE7CiAgICAgICAgZm9yICgiYm9vbGVhbiIgPT0gdHlwZW9mIGEgJiYgKGwgPSBhLCBhID0gYXJndW1lbnRzW3NdIHx8IHt9LCBzKyspLCAib2JqZWN0IiA9PSB0eXBlb2YgYSB8fCBFLmlzRnVuY3Rpb24oYSkgfHwgKGEgPSB7fSksIHMgPT09IHUgJiYgKGEgPSB0aGlzLCBzLS0pOyBzIDwgdTsgcysrKQogICAgICAgICAgICBpZiAobnVsbCAhPSAoaSA9IGFyZ3VtZW50c1tzXSkpCiAgICAgICAgICAgICAgICBmb3IgKHIgaW4gaSkgZSA9IGFbcl0sIGEgIT09IChuID0gaVtyXSkgJiYgKGwgJiYgbiAmJiAoRS5pc1BsYWluT2JqZWN0KG4pIHx8ICh0ID0gRS5pc0FycmF5KG4pKSkgPyAobyA9IHQgPyAodCA9ICExLCBlICYmIEUuaXNBcnJheShlKSA/IGUgOiBbXSkgOiBlICYmIEUuaXNQbGFpbk9iamVjdChlKSA/IGUgOiB7fSwgYVtyXSA9IEUuZXh0ZW5kKGwsIG8sIG4pKSA6IHZvaWQgMCAhPT0gbiAmJiAoYVtyXSA9IG4pKTsKICAgICAgICByZXR1cm4gYQogICAgfSwgRS5leHRlbmQoewogICAgICAgIGV4cGFuZG86ICJqUXVlcnkiICsgKHIgKyBNYXRoLnJhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCAiIiksCiAgICAgICAgaXNSZWFkeTogITAsCiAgICAgICAgZXJyb3I6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGUpCiAgICAgICAgfSwKICAgICAgICBub29wOiBmdW5jdGlvbigpIHt9LAogICAgICAgIGlzRnVuY3Rpb246IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuICJmdW5jdGlvbiIgPT09IEUudHlwZShlKQogICAgICAgIH0sCiAgICAgICAgaXNBcnJheTogQXJyYXkuaXNBcnJheSB8fCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiAiYXJyYXkiID09PSBFLnR5cGUoZSkKICAgICAgICB9LAogICAgICAgIGlzV2luZG93OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsICE9IGUgJiYgZSA9PSBlLndpbmRvdwogICAgICAgIH0sCiAgICAgICAgaXNOdW1lcmljOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gZSAmJiBlLnRvU3RyaW5nKCk7CiAgICAgICAgICAgIHJldHVybiAhRS5pc0FycmF5KGUpICYmIDAgPD0gdCAtIHBhcnNlRmxvYXQodCkgKyAxCiAgICAgICAgfSwKICAgICAgICBpc0VtcHR5T2JqZWN0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0OwogICAgICAgICAgICBmb3IgKHQgaW4gZSkgcmV0dXJuICExOwogICAgICAgICAgICByZXR1cm4gITAKICAgICAgICB9LAogICAgICAgIGlzUGxhaW5PYmplY3Q6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQ7CiAgICAgICAgICAgIGlmICghZSB8fCAib2JqZWN0IiAhPT0gRS50eXBlKGUpIHx8IGUubm9kZVR5cGUgfHwgRS5pc1dpbmRvdyhlKSkgcmV0dXJuICExOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKGUuY29uc3RydWN0b3IgJiYgIW0uY2FsbChlLCAiY29uc3RydWN0b3IiKSAmJiAhbS5jYWxsKGUuY29uc3RydWN0b3IucHJvdG90eXBlLCAiaXNQcm90b3R5cGVPZiIpKSByZXR1cm4gITEKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCF2Lm93bkZpcnN0KQogICAgICAgICAgICAgICAgZm9yICh0IGluIGUpIHJldHVybiBtLmNhbGwoZSwgdCk7CiAgICAgICAgICAgIGZvciAodCBpbiBlKTsKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdCB8fCBtLmNhbGwoZSwgdCkKICAgICAgICB9LAogICAgICAgIHR5cGU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gZSA/IGUgKyAiIiA6ICJvYmplY3QiID09IHR5cGVvZiBlIHx8ICJmdW5jdGlvbiIgPT0gdHlwZW9mIGUgPyBuW3QuY2FsbChlKV0gfHwgIm9iamVjdCIgOiB0eXBlb2YgZQogICAgICAgIH0sCiAgICAgICAgZ2xvYmFsRXZhbDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlICYmIEUudHJpbShlKSAmJiAoQy5leGVjU2NyaXB0IHx8IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIEMuZXZhbC5jYWxsKEMsIGUpCiAgICAgICAgICAgIH0pKGUpCiAgICAgICAgfSwKICAgICAgICBjYW1lbENhc2U6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGUucmVwbGFjZShhLCAibXMtIikucmVwbGFjZSh1LCBsKQogICAgICAgIH0sCiAgICAgICAgbm9kZU5hbWU6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIGUubm9kZU5hbWUgJiYgZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSB0LnRvTG93ZXJDYXNlKCkKICAgICAgICB9LAogICAgICAgIGVhY2g6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4sIHIgPSAwOwogICAgICAgICAgICBpZiAoZihlKSkKICAgICAgICAgICAgICAgIGZvciAobiA9IGUubGVuZ3RoOyByIDwgbiAmJiAhMSAhPT0gdC5jYWxsKGVbcl0sIHIsIGVbcl0pOyByKyspOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBmb3IgKHIgaW4gZSkKICAgICAgICAgICAgICAgICAgICBpZiAoITEgPT09IHQuY2FsbChlW3JdLCByLCBlW3JdKSkgYnJlYWs7CiAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgfSwKICAgICAgICB0cmltOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsID09IGUgPyAiIiA6IChlICsgIiIpLnJlcGxhY2UobywgIiIpCiAgICAgICAgfSwKICAgICAgICBtYWtlQXJyYXk6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4gPSB0IHx8IFtdOwogICAgICAgICAgICByZXR1cm4gbnVsbCAhPSBlICYmIChmKE9iamVjdChlKSkgPyBFLm1lcmdlKG4sICJzdHJpbmciID09IHR5cGVvZiBlID8gW2VdIDogZSkgOiBzLmNhbGwobiwgZSkpLCBuCiAgICAgICAgfSwKICAgICAgICBpbkFycmF5OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByOwogICAgICAgICAgICBpZiAodCkgewogICAgICAgICAgICAgICAgaWYgKGkpIHJldHVybiBpLmNhbGwodCwgZSwgbik7CiAgICAgICAgICAgICAgICBmb3IgKHIgPSB0Lmxlbmd0aCwgbiA9IG4gPyBuIDwgMCA/IE1hdGgubWF4KDAsIHIgKyBuKSA6IG4gOiAwOyBuIDwgcjsgbisrKQogICAgICAgICAgICAgICAgICAgIGlmIChuIGluIHQgJiYgdFtuXSA9PT0gZSkgcmV0dXJuIG4KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gLTEKICAgICAgICB9LAogICAgICAgIG1lcmdlOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIGZvciAodmFyIG4gPSArdC5sZW5ndGgsIHIgPSAwLCBpID0gZS5sZW5ndGg7IHIgPCBuOykgZVtpKytdID0gdFtyKytdOwogICAgICAgICAgICBpZiAobiAhPSBuKQogICAgICAgICAgICAgICAgZm9yICg7IHZvaWQgMCAhPT0gdFtyXTspIGVbaSsrXSA9IHRbcisrXTsKICAgICAgICAgICAgcmV0dXJuIGUubGVuZ3RoID0gaSwgZQogICAgICAgIH0sCiAgICAgICAgZ3JlcDogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICBmb3IgKHZhciByID0gW10sIGkgPSAwLCBvID0gZS5sZW5ndGgsIGEgPSAhbjsgaSA8IG87IGkrKykgIXQoZVtpXSwgaSkgIT09IGEgJiYgci5wdXNoKGVbaV0pOwogICAgICAgICAgICByZXR1cm4gcgogICAgICAgIH0sCiAgICAgICAgbWFwOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByLCBpLCBvID0gMCwKICAgICAgICAgICAgICAgIGEgPSBbXTsKICAgICAgICAgICAgaWYgKGYoZSkpCiAgICAgICAgICAgICAgICBmb3IgKHIgPSBlLmxlbmd0aDsgbyA8IHI7IG8rKykgbnVsbCAhPSAoaSA9IHQoZVtvXSwgbywgbikpICYmIGEucHVzaChpKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgZm9yIChvIGluIGUpIG51bGwgIT0gKGkgPSB0KGVbb10sIG8sIG4pKSAmJiBhLnB1c2goaSk7CiAgICAgICAgICAgIHJldHVybiBnLmFwcGx5KFtdLCBhKQogICAgICAgIH0sCiAgICAgICAgZ3VpZDogMSwKICAgICAgICBwcm94eTogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgbiwgciwgaTsKICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciID09IHR5cGVvZiB0ICYmIChpID0gZVt0XSwgdCA9IGUsIGUgPSBpKSwgRS5pc0Z1bmN0aW9uKGUpID8gKG4gPSBjLmNhbGwoYXJndW1lbnRzLCAyKSwgKHIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBlLmFwcGx5KHQgfHwgdGhpcywgbi5jb25jYXQoYy5jYWxsKGFyZ3VtZW50cykpKQogICAgICAgICAgICB9KS5ndWlkID0gZS5ndWlkID0gZS5ndWlkIHx8IEUuZ3VpZCsrLCByKSA6IHZvaWQgMAogICAgICAgIH0sCiAgICAgICAgbm93OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuICtuZXcgRGF0ZQogICAgICAgIH0sCiAgICAgICAgc3VwcG9ydDogdgogICAgfSksICJmdW5jdGlvbiIgPT0gdHlwZW9mIFN5bWJvbCAmJiAoRS5mbltTeW1ib2wuaXRlcmF0b3JdID0gZFtTeW1ib2wuaXRlcmF0b3JdKSwgRS5lYWNoKCJCb29sZWFuIE51bWJlciBTdHJpbmcgRnVuY3Rpb24gQXJyYXkgRGF0ZSBSZWdFeHAgT2JqZWN0IEVycm9yIFN5bWJvbCIuc3BsaXQoIiAiKSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgIG5bIltvYmplY3QgIiArIHQgKyAiXSJdID0gdC50b0xvd2VyQ2FzZSgpCiAgICB9KTsKICAgIHZhciBwID0gZnVuY3Rpb24obikgewogICAgICAgIHZhciBlLCBoLCBiLCBvLCBpLCBnLCBkLCBtLCB3LCB1LCBsLCBULCBDLCBhLCBFLCB2LCBzLCBjLCB5LCBOID0gInNpenpsZSIgKyAxICogbmV3IERhdGUsCiAgICAgICAgICAgIHggPSBuLmRvY3VtZW50LAogICAgICAgICAgICBrID0gMCwKICAgICAgICAgICAgciA9IDAsCiAgICAgICAgICAgIGYgPSBpZSgpLAogICAgICAgICAgICBwID0gaWUoKSwKICAgICAgICAgICAgUyA9IGllKCksCiAgICAgICAgICAgIEEgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZSA9PT0gdCAmJiAobCA9ICEwKSwgMAogICAgICAgICAgICB9LAogICAgICAgICAgICBEID0ge30uaGFzT3duUHJvcGVydHksCiAgICAgICAgICAgIHQgPSBbXSwKICAgICAgICAgICAgaiA9IHQucG9wLAogICAgICAgICAgICBMID0gdC5wdXNoLAogICAgICAgICAgICBIID0gdC5wdXNoLAogICAgICAgICAgICBxID0gdC5zbGljZSwKICAgICAgICAgICAgXyA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIG4gPSAwLCByID0gZS5sZW5ndGg7IG4gPCByOyBuKyspCiAgICAgICAgICAgICAgICAgICAgaWYgKGVbbl0gPT09IHQpIHJldHVybiBuOwogICAgICAgICAgICAgICAgcmV0dXJuIC0xCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIEYgPSAiY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLAogICAgICAgICAgICBNID0gIltcXHgyMFxcdFxcclxcblxcZl0iLAogICAgICAgICAgICBPID0gIig/OlxcXFwufFtcXHctXXxbXlxceDAwLVxceGEwXSkrIiwKICAgICAgICAgICAgUiA9ICJcXFsiICsgTSArICIqKCIgKyBPICsgIikoPzoiICsgTSArICIqKFsqXiR8IX5dPz0pIiArIE0gKyAiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwifCgiICsgTyArICIpKXwpIiArIE0gKyAiKlxcXSIsCiAgICAgICAgICAgIFAgPSAiOigiICsgTyArICIpKD86XFwoKCgnKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/OlxcXFwufFteXFxcXCgpW1xcXV18IiArIFIgKyAiKSopfC4qKVxcKXwpIiwKICAgICAgICAgICAgQiA9IG5ldyBSZWdFeHAoTSArICIrIiwgImciKSwKICAgICAgICAgICAgVyA9IG5ldyBSZWdFeHAoIl4iICsgTSArICIrfCgoPzpefFteXFxcXF0pKD86XFxcXC4pKikiICsgTSArICIrJCIsICJnIiksCiAgICAgICAgICAgIEkgPSBuZXcgUmVnRXhwKCJeIiArIE0gKyAiKiwiICsgTSArICIqIiksCiAgICAgICAgICAgICQgPSBuZXcgUmVnRXhwKCJeIiArIE0gKyAiKihbPit+XXwiICsgTSArICIpIiArIE0gKyAiKiIpLAogICAgICAgICAgICB6ID0gbmV3IFJlZ0V4cCgiPSIgKyBNICsgIiooW15cXF0nXCJdKj8pIiArIE0gKyAiKlxcXSIsICJnIiksCiAgICAgICAgICAgIFggPSBuZXcgUmVnRXhwKFApLAogICAgICAgICAgICBVID0gbmV3IFJlZ0V4cCgiXiIgKyBPICsgIiQiKSwKICAgICAgICAgICAgViA9IHsKICAgICAgICAgICAgICAgIElEOiBuZXcgUmVnRXhwKCJeIygiICsgTyArICIpIiksCiAgICAgICAgICAgICAgICBDTEFTUzogbmV3IFJlZ0V4cCgiXlxcLigiICsgTyArICIpIiksCiAgICAgICAgICAgICAgICBUQUc6IG5ldyBSZWdFeHAoIl4oIiArIE8gKyAifFsqXSkiKSwKICAgICAgICAgICAgICAgIEFUVFI6IG5ldyBSZWdFeHAoIl4iICsgUiksCiAgICAgICAgICAgICAgICBQU0VVRE86IG5ldyBSZWdFeHAoIl4iICsgUCksCiAgICAgICAgICAgICAgICBDSElMRDogbmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIiArIE0gKyAiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIgKyBNICsgIiooPzooWystXXwpIiArIE0gKyAiKihcXGQrKXwpKSIgKyBNICsgIipcXCl8KSIsICJpIiksCiAgICAgICAgICAgICAgICBib29sOiBuZXcgUmVnRXhwKCJeKD86IiArIEYgKyAiKSQiLCAiaSIpLAogICAgICAgICAgICAgICAgbmVlZHNDb250ZXh0OiBuZXcgUmVnRXhwKCJeIiArIE0gKyAiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3QpKD86XFwoIiArIE0gKyAiKigoPzotXFxkKT9cXGQqKSIgKyBNICsgIipcXCl8KSg/PVteLV18JCkiLCAiaSIpCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIFkgPSAvXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLAogICAgICAgICAgICBKID0gL15oXGQkL2ksCiAgICAgICAgICAgIEcgPSAvXltee10rXHtccypcW25hdGl2ZSBcdy8sCiAgICAgICAgICAgIFEgPSAvXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLAogICAgICAgICAgICBLID0gL1srfl0vLAogICAgICAgICAgICBaID0gLyd8XFwvZywKICAgICAgICAgICAgZWUgPSBuZXcgUmVnRXhwKCJcXFxcKFtcXGRhLWZdezEsNn0iICsgTSArICI/fCgiICsgTSArICIpfC4pIiwgImlnIiksCiAgICAgICAgICAgIHRlID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICAgICAgdmFyIHIgPSAiMHgiICsgdCAtIDY1NTM2OwogICAgICAgICAgICAgICAgcmV0dXJuIHIgIT0gciB8fCBuID8gdCA6IHIgPCAwID8gU3RyaW5nLmZyb21DaGFyQ29kZShyICsgNjU1MzYpIDogU3RyaW5nLmZyb21DaGFyQ29kZShyID4+IDEwIHwgNTUyOTYsIDEwMjMgJiByIHwgNTYzMjApCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG5lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBUKCkKICAgICAgICAgICAgfTsKICAgICAgICB0cnkgewogICAgICAgICAgICBILmFwcGx5KHQgPSBxLmNhbGwoeC5jaGlsZE5vZGVzKSwgeC5jaGlsZE5vZGVzKSwgdFt4LmNoaWxkTm9kZXMubGVuZ3RoXS5ub2RlVHlwZQogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgSCA9IHsKICAgICAgICAgICAgICAgIGFwcGx5OiB0Lmxlbmd0aCA/IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICBMLmFwcGx5KGUsIHEuY2FsbCh0KSkKICAgICAgICAgICAgICAgIH0gOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IGUubGVuZ3RoLCByID0gMDsgZVtuKytdID0gdFtyKytdOyk7CiAgICAgICAgICAgICAgICAgICAgZS5sZW5ndGggPSBuIC0gMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiByZShlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIHZhciBpLCBvLCBhLCBzLCB1LCBsLCBjLCBkLCBmID0gdCAmJiB0Lm93bmVyRG9jdW1lbnQsCiAgICAgICAgICAgICAgICBwID0gdCA/IHQubm9kZVR5cGUgOiA5OwogICAgICAgICAgICBpZiAobiA9IG4gfHwgW10sICJzdHJpbmciICE9IHR5cGVvZiBlIHx8ICFlIHx8IDEgIT09IHAgJiYgOSAhPT0gcCAmJiAxMSAhPT0gcCkgcmV0dXJuIG47CiAgICAgICAgICAgIGlmICghciAmJiAoKHQgPyB0Lm93bmVyRG9jdW1lbnQgfHwgdCA6IHgpICE9PSBDICYmIFQodCksIHQgPSB0IHx8IEMsIEUpKSB7CiAgICAgICAgICAgICAgICBpZiAoMTEgIT09IHAgJiYgKGwgPSBRLmV4ZWMoZSkpKQogICAgICAgICAgICAgICAgICAgIGlmIChpID0gbFsxXSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoOSA9PT0gcCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEoYSA9IHQuZ2V0RWxlbWVudEJ5SWQoaSkpKSByZXR1cm4gbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhLmlkID09PSBpKSByZXR1cm4gbi5wdXNoKGEpLCBuCiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZiAmJiAoYSA9IGYuZ2V0RWxlbWVudEJ5SWQoaSkpICYmIHkodCwgYSkgJiYgYS5pZCA9PT0gaSkgcmV0dXJuIG4ucHVzaChhKSwgbgogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsWzJdKSByZXR1cm4gSC5hcHBseShuLCB0LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpKSwgbjsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChpID0gbFszXSkgJiYgaC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lICYmIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSkgcmV0dXJuIEguYXBwbHkobiwgdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGkpKSwgbgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChoLnFzYSAmJiAhU1tlICsgIiAiXSAmJiAoIXYgfHwgIXYudGVzdChlKSkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoMSAhPT0gcCkgZiA9IHQsIGQgPSBlOwogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCJvYmplY3QiICE9PSB0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICgocyA9IHQuZ2V0QXR0cmlidXRlKCJpZCIpKSA/IHMgPSBzLnJlcGxhY2UoWiwgIlxcJCYiKSA6IHQuc2V0QXR0cmlidXRlKCJpZCIsIHMgPSBOKSwgbyA9IChjID0gZyhlKSkubGVuZ3RoLCB1ID0gVS50ZXN0KHMpID8gIiMiICsgcyA6ICJbaWQ9JyIgKyBzICsgIiddIjsgby0tOykgY1tvXSA9IHUgKyAiICIgKyBoZShjW29dKTsKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGMuam9pbigiLCIpLCBmID0gSy50ZXN0KGUpICYmIGZlKHQucGFyZW50Tm9kZSkgfHwgdAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBpZiAoZCkgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEguYXBwbHkobiwgZi5xdWVyeVNlbGVjdG9yQWxsKGQpKSwgbgogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9IGZpbmFsbHkgewogICAgICAgICAgICAgICAgICAgICAgICBzID09PSBOICYmIHQucmVtb3ZlQXR0cmlidXRlKCJpZCIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBtKGUucmVwbGFjZShXLCAiJDEiKSwgdCwgbiwgcikKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGllKCkgewogICAgICAgICAgICB2YXIgciA9IFtdOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gZSh0LCBuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gci5wdXNoKHQgKyAiICIpID4gYi5jYWNoZUxlbmd0aCAmJiBkZWxldGUgZVtyLnNoaWZ0KCldLCBlW3QgKyAiICJdID0gbgogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBvZShlKSB7CiAgICAgICAgICAgIHJldHVybiBlW05dID0gITAsIGUKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGFlKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSBDLmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgcmV0dXJuICEhZSh0KQogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gITEKICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgIHQucGFyZW50Tm9kZSAmJiB0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksIHQgPSBudWxsCiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIHNlKGUsIHQpIHsKICAgICAgICAgICAgZm9yICh2YXIgbiA9IGUuc3BsaXQoInwiKSwgciA9IG4ubGVuZ3RoOyByLS07KSBiLmF0dHJIYW5kbGVbbltyXV0gPSB0CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiB1ZShlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gdCAmJiBlLAogICAgICAgICAgICAgICAgciA9IG4gJiYgMSA9PT0gZS5ub2RlVHlwZSAmJiAxID09PSB0Lm5vZGVUeXBlICYmICh+dC5zb3VyY2VJbmRleCB8fCAxIDw8IDMxKSAtICh+ZS5zb3VyY2VJbmRleCB8fCAxIDw8IDMxKTsKICAgICAgICAgICAgaWYgKHIpIHJldHVybiByOwogICAgICAgICAgICBpZiAobikKICAgICAgICAgICAgICAgIGZvciAoOyBuID0gbi5uZXh0U2libGluZzspCiAgICAgICAgICAgICAgICAgICAgaWYgKG4gPT09IHQpIHJldHVybiAtMTsKICAgICAgICAgICAgcmV0dXJuIGUgPyAxIDogLTEKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGxlKHQpIHsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiAiaW5wdXQiID09PSBlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgJiYgZS50eXBlID09PSB0CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGNlKG4pIHsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOwogICAgICAgICAgICAgICAgcmV0dXJuICgiaW5wdXQiID09PSB0IHx8ICJidXR0b24iID09PSB0KSAmJiBlLnR5cGUgPT09IG4KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gZGUoYSkgewogICAgICAgICAgICByZXR1cm4gb2UoZnVuY3Rpb24obykgewogICAgICAgICAgICAgICAgcmV0dXJuIG8gPSArbywgb2UoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIG4sIHIgPSBhKFtdLCBlLmxlbmd0aCwgbyksIGkgPSByLmxlbmd0aDsgaS0tOykgZVtuID0gcltpXV0gJiYgKGVbbl0gPSAhKHRbbl0gPSBlW25dKSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBmZShlKSB7CiAgICAgICAgICAgIHJldHVybiBlICYmIHZvaWQgMCAhPT0gZS5nZXRFbGVtZW50c0J5VGFnTmFtZSAmJiBlCiAgICAgICAgfQogICAgICAgIGZvciAoZSBpbiBoID0gcmUuc3VwcG9ydCA9IHt9LCBpID0gcmUuaXNYTUwgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGUgJiYgKGUub3duZXJEb2N1bWVudCB8fCBlKS5kb2N1bWVudEVsZW1lbnQ7CiAgICAgICAgICAgICAgICByZXR1cm4gISF0ICYmICJIVE1MIiAhPT0gdC5ub2RlTmFtZQogICAgICAgICAgICB9LCBUID0gcmUuc2V0RG9jdW1lbnQgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgbiwgciA9IGUgPyBlLm93bmVyRG9jdW1lbnQgfHwgZSA6IHg7CiAgICAgICAgICAgICAgICByZXR1cm4gciAhPT0gQyAmJiA5ID09PSByLm5vZGVUeXBlICYmIHIuZG9jdW1lbnRFbGVtZW50ICYmIChhID0gKEMgPSByKS5kb2N1bWVudEVsZW1lbnQsIEUgPSAhaShDKSwgKG4gPSBDLmRlZmF1bHRWaWV3KSAmJiBuLnRvcCAhPT0gbiAmJiAobi5hZGRFdmVudExpc3RlbmVyID8gbi5hZGRFdmVudExpc3RlbmVyKCJ1bmxvYWQiLCBuZSwgITEpIDogbi5hdHRhY2hFdmVudCAmJiBuLmF0dGFjaEV2ZW50KCJvbnVubG9hZCIsIG5lKSksIGguYXR0cmlidXRlcyA9IGFlKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5jbGFzc05hbWUgPSAiaSIsICFlLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIikKICAgICAgICAgICAgICAgIH0pLCBoLmdldEVsZW1lbnRzQnlUYWdOYW1lID0gYWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmFwcGVuZENoaWxkKEMuY3JlYXRlQ29tbWVudCgiIikpLCAhZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aAogICAgICAgICAgICAgICAgfSksIGguZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSA9IEcudGVzdChDLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLCBoLmdldEJ5SWQgPSBhZShmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuaWQgPSBOLCAhQy5nZXRFbGVtZW50c0J5TmFtZSB8fCAhQy5nZXRFbGVtZW50c0J5TmFtZShOKS5sZW5ndGgKICAgICAgICAgICAgICAgIH0pLCBoLmdldEJ5SWQgPyAoYi5maW5kLklEID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IHQuZ2V0RWxlbWVudEJ5SWQgJiYgRSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHQuZ2V0RWxlbWVudEJ5SWQoZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuID8gW25dIDogW10KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LCBiLmZpbHRlci5JRCA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUucmVwbGFjZShlZSwgdGUpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmdldEF0dHJpYnV0ZSgiaWQiKSA9PT0gdAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pIDogKGRlbGV0ZSBiLmZpbmQuSUQsIGIuZmlsdGVyLklEID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gZS5yZXBsYWNlKGVlLCB0ZSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSB2b2lkIDAgIT09IGUuZ2V0QXR0cmlidXRlTm9kZSAmJiBlLmdldEF0dHJpYnV0ZU5vZGUoImlkIik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0ICYmIHQudmFsdWUgPT09IG4KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSwgYi5maW5kLlRBRyA9IGguZ2V0RWxlbWVudHNCeVRhZ05hbWUgPyBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCAhPT0gdC5nZXRFbGVtZW50c0J5VGFnTmFtZSA/IHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSkgOiBoLnFzYSA/IHQucXVlcnlTZWxlY3RvckFsbChlKSA6IHZvaWQgMAogICAgICAgICAgICAgICAgfSA6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiwgciA9IFtdLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCIqIiAhPT0gZSkgcmV0dXJuIG87CiAgICAgICAgICAgICAgICAgICAgZm9yICg7IG4gPSBvW2krK107KSAxID09PSBuLm5vZGVUeXBlICYmIHIucHVzaChuKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcgogICAgICAgICAgICAgICAgfSwgYi5maW5kLkNMQVNTID0gaC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lICYmIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwICE9PSB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgJiYgRSA/IHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKSA6IHZvaWQgMAogICAgICAgICAgICAgICAgfSwgcyA9IFtdLCB2ID0gW10sIChoLnFzYSA9IEcudGVzdChDLnF1ZXJ5U2VsZWN0b3JBbGwpKSAmJiAoYWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIGEuYXBwZW5kQ2hpbGQoZSkuaW5uZXJIVE1MID0gIjxhIGlkPSciICsgTiArICInPjwvYT48c2VsZWN0IGlkPSciICsgTiArICItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLCBlLnF1ZXJ5U2VsZWN0b3JBbGwoIlttc2FsbG93Y2FwdHVyZV49JyddIikubGVuZ3RoICYmIHYucHVzaCgiWypeJF09IiArIE0gKyAiKig/OicnfFwiXCIpIiksIGUucXVlcnlTZWxlY3RvckFsbCgiW3NlbGVjdGVkXSIpLmxlbmd0aCB8fCB2LnB1c2goIlxcWyIgKyBNICsgIiooPzp2YWx1ZXwiICsgRiArICIpIiksIGUucXVlcnlTZWxlY3RvckFsbCgiW2lkfj0iICsgTiArICItXSIpLmxlbmd0aCB8fCB2LnB1c2goIn49IiksIGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGggfHwgdi5wdXNoKCI6Y2hlY2tlZCIpLCBlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIiArIE4gKyAiKyoiKS5sZW5ndGggfHwgdi5wdXNoKCIuIy4rWyt+XSIpCiAgICAgICAgICAgICAgICB9KSwgYWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gQy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOwogICAgICAgICAgICAgICAgICAgIHQuc2V0QXR0cmlidXRlKCJ0eXBlIiwgImhpZGRlbiIpLCBlLmFwcGVuZENoaWxkKHQpLnNldEF0dHJpYnV0ZSgibmFtZSIsICJEIiksIGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGggJiYgdi5wdXNoKCJuYW1lIiArIE0gKyAiKlsqXiR8IX5dPz0iKSwgZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCB8fCB2LnB1c2goIjplbmFibGVkIiwgIjpkaXNhYmxlZCIpLCBlLnF1ZXJ5U2VsZWN0b3JBbGwoIiosOngiKSwgdi5wdXNoKCIsLio6IikKICAgICAgICAgICAgICAgIH0pKSwgKGgubWF0Y2hlc1NlbGVjdG9yID0gRy50ZXN0KGMgPSBhLm1hdGNoZXMgfHwgYS53ZWJraXRNYXRjaGVzU2VsZWN0b3IgfHwgYS5tb3pNYXRjaGVzU2VsZWN0b3IgfHwgYS5vTWF0Y2hlc1NlbGVjdG9yIHx8IGEubXNNYXRjaGVzU2VsZWN0b3IpKSAmJiBhZShmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgaC5kaXNjb25uZWN0ZWRNYXRjaCA9IGMuY2FsbChlLCAiZGl2IiksIGMuY2FsbChlLCAiW3MhPScnXTp4IiksIHMucHVzaCgiIT0iLCBQKQogICAgICAgICAgICAgICAgfSksIHYgPSB2Lmxlbmd0aCAmJiBuZXcgUmVnRXhwKHYuam9pbigifCIpKSwgcyA9IHMubGVuZ3RoICYmIG5ldyBSZWdFeHAocy5qb2luKCJ8IikpLCB0ID0gRy50ZXN0KGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24pLCB5ID0gdCB8fCBHLnRlc3QoYS5jb250YWlucykgPyBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSA5ID09PSBlLm5vZGVUeXBlID8gZS5kb2N1bWVudEVsZW1lbnQgOiBlLAogICAgICAgICAgICAgICAgICAgICAgICByID0gdCAmJiB0LnBhcmVudE5vZGU7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPT09IHIgfHwgISghciB8fCAxICE9PSByLm5vZGVUeXBlIHx8ICEobi5jb250YWlucyA/IG4uY29udGFpbnMocikgOiBlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uICYmIDE2ICYgZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihyKSkpCiAgICAgICAgICAgICAgICB9IDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGlmICh0KQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgdCA9IHQucGFyZW50Tm9kZTspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodCA9PT0gZSkgcmV0dXJuICEwOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAhMQogICAgICAgICAgICAgICAgfSwgQSA9IHQgPyBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUgPT09IHQpIHJldHVybiBsID0gITAsIDA7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSAhZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiAtICF0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuIHx8ICgxICYgKG4gPSAoZS5vd25lckRvY3VtZW50IHx8IGUpID09PSAodC5vd25lckRvY3VtZW50IHx8IHQpID8gZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KSA6IDEpIHx8ICFoLnNvcnREZXRhY2hlZCAmJiB0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGUpID09PSBuID8gZSA9PT0gQyB8fCBlLm93bmVyRG9jdW1lbnQgPT09IHggJiYgeSh4LCBlKSA/IC0xIDogdCA9PT0gQyB8fCB0Lm93bmVyRG9jdW1lbnQgPT09IHggJiYgeSh4LCB0KSA/IDEgOiB1ID8gXyh1LCBlKSAtIF8odSwgdCkgOiAwIDogNCAmIG4gPyAtMSA6IDEpCiAgICAgICAgICAgICAgICB9IDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGlmIChlID09PSB0KSByZXR1cm4gbCA9ICEwLCAwOwogICAgICAgICAgICAgICAgICAgIHZhciBuLCByID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUucGFyZW50Tm9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHQucGFyZW50Tm9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IFtlXSwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IFt0XTsKICAgICAgICAgICAgICAgICAgICBpZiAoIWkgfHwgIW8pIHJldHVybiBlID09PSBDID8gLTEgOiB0ID09PSBDID8gMSA6IGkgPyAtMSA6IG8gPyAxIDogdSA/IF8odSwgZSkgLSBfKHUsIHQpIDogMDsKICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PT0gbykgcmV0dXJuIHVlKGUsIHQpOwogICAgICAgICAgICAgICAgICAgIGZvciAobiA9IGU7IG4gPSBuLnBhcmVudE5vZGU7KSBhLnVuc2hpZnQobik7CiAgICAgICAgICAgICAgICAgICAgZm9yIChuID0gdDsgbiA9IG4ucGFyZW50Tm9kZTspIHMudW5zaGlmdChuKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKDsgYVtyXSA9PT0gc1tyXTspIHIrKzsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gciA/IHVlKGFbcl0sIHNbcl0pIDogYVtyXSA9PT0geCA/IC0xIDogc1tyXSA9PT0geCA/IDEgOiAwCiAgICAgICAgICAgICAgICB9KSwgQwogICAgICAgICAgICB9LCByZS5tYXRjaGVzID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHJlKGUsIG51bGwsIG51bGwsIHQpCiAgICAgICAgICAgIH0sIHJlLm1hdGNoZXNTZWxlY3RvciA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIGlmICgoZS5vd25lckRvY3VtZW50IHx8IGUpICE9PSBDICYmIFQoZSksIHQgPSB0LnJlcGxhY2UoeiwgIj0nJDEnXSIpLCBoLm1hdGNoZXNTZWxlY3RvciAmJiBFICYmICFTW3QgKyAiICJdICYmICghcyB8fCAhcy50ZXN0KHQpKSAmJiAoIXYgfHwgIXYudGVzdCh0KSkpIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBjLmNhbGwoZSwgdCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKG4gfHwgaC5kaXNjb25uZWN0ZWRNYXRjaCB8fCBlLmRvY3VtZW50ICYmIDExICE9PSBlLmRvY3VtZW50Lm5vZGVUeXBlKSByZXR1cm4gbgogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgIHJldHVybiAwIDwgcmUodCwgQywgbnVsbCwgW2VdKS5sZW5ndGgKICAgICAgICAgICAgfSwgcmUuY29udGFpbnMgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKGUub3duZXJEb2N1bWVudCB8fCBlKSAhPT0gQyAmJiBUKGUpLCB5KGUsIHQpCiAgICAgICAgICAgIH0sIHJlLmF0dHIgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAoZS5vd25lckRvY3VtZW50IHx8IGUpICE9PSBDICYmIFQoZSk7CiAgICAgICAgICAgICAgICB2YXIgbiA9IGIuYXR0ckhhbmRsZVt0LnRvTG93ZXJDYXNlKCldLAogICAgICAgICAgICAgICAgICAgIHIgPSBuICYmIEQuY2FsbChiLmF0dHJIYW5kbGUsIHQudG9Mb3dlckNhc2UoKSkgPyBuKGUsIHQsICFFKSA6IHZvaWQgMDsKICAgICAgICAgICAgICAgIHJldHVybiB2b2lkIDAgIT09IHIgPyByIDogaC5hdHRyaWJ1dGVzIHx8ICFFID8gZS5nZXRBdHRyaWJ1dGUodCkgOiAociA9IGUuZ2V0QXR0cmlidXRlTm9kZSh0KSkgJiYgci5zcGVjaWZpZWQgPyByLnZhbHVlIDogbnVsbAogICAgICAgICAgICB9LCByZS5lcnJvciA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIiArIGUpCiAgICAgICAgICAgIH0sIHJlLnVuaXF1ZVNvcnQgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgbiA9IFtdLAogICAgICAgICAgICAgICAgICAgIHIgPSAwLAogICAgICAgICAgICAgICAgICAgIGkgPSAwOwogICAgICAgICAgICAgICAgaWYgKGwgPSAhaC5kZXRlY3REdXBsaWNhdGVzLCB1ID0gIWguc29ydFN0YWJsZSAmJiBlLnNsaWNlKDApLCBlLnNvcnQoQSksIGwpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKDsgdCA9IGVbaSsrXTspIHQgPT09IGVbaV0gJiYgKHIgPSBuLnB1c2goaSkpOwogICAgICAgICAgICAgICAgICAgIGZvciAoOyByLS07KSBlLnNwbGljZShuW3JdLCAxKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHUgPSBudWxsLCBlCiAgICAgICAgICAgIH0sIG8gPSByZS5nZXRUZXh0ID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQsIG4gPSAiIiwKICAgICAgICAgICAgICAgICAgICByID0gMCwKICAgICAgICAgICAgICAgICAgICBpID0gZS5ub2RlVHlwZTsKICAgICAgICAgICAgICAgIGlmIChpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKDEgPT09IGkgfHwgOSA9PT0gaSB8fCAxMSA9PT0gaSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoInN0cmluZyIgPT0gdHlwZW9mIGUudGV4dENvbnRlbnQpIHJldHVybiBlLnRleHRDb250ZW50OwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGUgPSBlLmZpcnN0Q2hpbGQ7IGU7IGUgPSBlLm5leHRTaWJsaW5nKSBuICs9IG8oZSkKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKDMgPT09IGkgfHwgNCA9PT0gaSkgcmV0dXJuIGUubm9kZVZhbHVlCiAgICAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICAgICBmb3IgKDsgdCA9IGVbcisrXTspIG4gKz0gbyh0KTsKICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgIH0sIChiID0gcmUuc2VsZWN0b3JzID0gewogICAgICAgICAgICAgICAgY2FjaGVMZW5ndGg6IDUwLAogICAgICAgICAgICAgICAgY3JlYXRlUHNldWRvOiBvZSwKICAgICAgICAgICAgICAgIG1hdGNoOiBWLAogICAgICAgICAgICAgICAgYXR0ckhhbmRsZToge30sCiAgICAgICAgICAgICAgICBmaW5kOiB7fSwKICAgICAgICAgICAgICAgIHJlbGF0aXZlOiB7CiAgICAgICAgICAgICAgICAgICAgIj4iOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRpcjogInBhcmVudE5vZGUiLAogICAgICAgICAgICAgICAgICAgICAgICBmaXJzdDogITAKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICIgIjogewogICAgICAgICAgICAgICAgICAgICAgICBkaXI6ICJwYXJlbnROb2RlIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIisiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRpcjogInByZXZpb3VzU2libGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0OiAhMAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIn4iOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRpcjogInByZXZpb3VzU2libGluZyIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcHJlRmlsdGVyOiB7CiAgICAgICAgICAgICAgICAgICAgQVRUUjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVsxXSA9IGVbMV0ucmVwbGFjZShlZSwgdGUpLCBlWzNdID0gKGVbM10gfHwgZVs0XSB8fCBlWzVdIHx8ICIiKS5yZXBsYWNlKGVlLCB0ZSksICJ+PSIgPT09IGVbMl0gJiYgKGVbM10gPSAiICIgKyBlWzNdICsgIiAiKSwgZS5zbGljZSgwLCA0KQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgQ0hJTEQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGVbMV0gPSBlWzFdLnRvTG93ZXJDYXNlKCksICJudGgiID09PSBlWzFdLnNsaWNlKDAsIDMpID8gKGVbM10gfHwgcmUuZXJyb3IoZVswXSksIGVbNF0gPSArKGVbNF0gPyBlWzVdICsgKGVbNl0gfHwgMSkgOiAyICogKCJldmVuIiA9PT0gZVszXSB8fCAib2RkIiA9PT0gZVszXSkpLCBlWzVdID0gKyhlWzddICsgZVs4XSB8fCAib2RkIiA9PT0gZVszXSkpIDogZVszXSAmJiByZS5lcnJvcihlWzBdKSwgZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgUFNFVURPOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0LCBuID0gIWVbNl0gJiYgZVsyXTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFYuQ0hJTEQudGVzdChlWzBdKSA/IG51bGwgOiAoZVszXSA/IGVbMl0gPSBlWzRdIHx8IGVbNV0gfHwgIiIgOiBuICYmIFgudGVzdChuKSAmJiAodCA9IGcobiwgITApKSAmJiAodCA9IG4uaW5kZXhPZigiKSIsIG4ubGVuZ3RoIC0gdCkgLSBuLmxlbmd0aCkgJiYgKGVbMF0gPSBlWzBdLnNsaWNlKDAsIHQpLCBlWzJdID0gbi5zbGljZSgwLCB0KSksIGUuc2xpY2UoMCwgMykpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGZpbHRlcjogewogICAgICAgICAgICAgICAgICAgIFRBRzogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUucmVwbGFjZShlZSwgdGUpLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiKiIgPT09IGUgPyBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgICAgICAgICAgICAgICAgICB9IDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUubm9kZU5hbWUgJiYgZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSB0CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIENMQVNTOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gZltlICsgIiAiXTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgfHwgKHQgPSBuZXcgUmVnRXhwKCIoXnwiICsgTSArICIpIiArIGUgKyAiKCIgKyBNICsgInwkKSIpKSAmJiBmKGUsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0LnRlc3QoInN0cmluZyIgPT0gdHlwZW9mIGUuY2xhc3NOYW1lICYmIGUuY2xhc3NOYW1lIHx8IHZvaWQgMCAhPT0gZS5nZXRBdHRyaWJ1dGUgJiYgZS5nZXRBdHRyaWJ1dGUoImNsYXNzIikgfHwgIiIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBBVFRSOiBmdW5jdGlvbihuLCByLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHJlLmF0dHIoZSwgbik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCA9PSB0ID8gIiE9IiA9PT0gciA6ICFyIHx8ICh0ICs9ICIiLCAiPSIgPT09IHIgPyB0ID09PSBpIDogIiE9IiA9PT0gciA/IHQgIT09IGkgOiAiXj0iID09PSByID8gaSAmJiAwID09PSB0LmluZGV4T2YoaSkgOiAiKj0iID09PSByID8gaSAmJiAtMSA8IHQuaW5kZXhPZihpKSA6ICIkPSIgPT09IHIgPyBpICYmIHQuc2xpY2UoLWkubGVuZ3RoKSA9PT0gaSA6ICJ+PSIgPT09IHIgPyAtMSA8ICgiICIgKyB0LnJlcGxhY2UoQiwgIiAiKSArICIgIikuaW5kZXhPZihpKSA6ICJ8PSIgPT09IHIgJiYgKHQgPT09IGkgfHwgdC5zbGljZSgwLCBpLmxlbmd0aCArIDEpID09PSBpICsgIi0iKSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgQ0hJTEQ6IGZ1bmN0aW9uKGgsIGUsIHQsIGcsIG0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHYgPSAibnRoIiAhPT0gaC5zbGljZSgwLCAzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgPSAibGFzdCIgIT09IGguc2xpY2UoLTQpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgeCA9ICJvZi10eXBlIiA9PT0gZTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEgPT09IGcgJiYgMCA9PT0gbSA/IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhIWUucGFyZW50Tm9kZQogICAgICAgICAgICAgICAgICAgICAgICB9IDogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHIsIGksIG8sIGEsIHMsIHUsIGwgPSB2ICE9PSB5ID8gIm5leHRTaWJsaW5nIiA6ICJwcmV2aW91c1NpYmxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBlLnBhcmVudE5vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZCA9IHggJiYgZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGYgPSAhbiAmJiAheCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwID0gITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoOyBsOykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gZTsgYSA9IGFbbF07KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh4ID8gYS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSBkIDogMSA9PT0gYS5ub2RlVHlwZSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdSA9IGwgPSAib25seSIgPT09IGggJiYgIXUgJiYgIm5leHRTaWJsaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodSA9IFt5ID8gYy5maXJzdENoaWxkIDogYy5sYXN0Q2hpbGRdLCB5ICYmIGYpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChwID0gKHMgPSAociA9IChpID0gKG8gPSAoYSA9IGMpW05dIHx8IChhW05dID0ge30pKVthLnVuaXF1ZUlEXSB8fCAob1thLnVuaXF1ZUlEXSA9IHt9KSlbaF0gfHwgW10pWzBdID09PSBrICYmIHJbMV0pICYmIHJbMl0sIGEgPSBzICYmIGMuY2hpbGROb2Rlc1tzXTsgYSA9ICsrcyAmJiBhICYmIGFbbF0gfHwgKHAgPSBzID0gMCkgfHwgdS5wb3AoKTspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoMSA9PT0gYS5ub2RlVHlwZSAmJiArK3AgJiYgYSA9PT0gZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlbaF0gPSBbaywgcywgcF07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGYgJiYgKHAgPSBzID0gKHIgPSAoaSA9IChvID0gKGEgPSBlKVtOXSB8fCAoYVtOXSA9IHt9KSlbYS51bmlxdWVJRF0gfHwgKG9bYS51bmlxdWVJRF0gPSB7fSkpW2hdIHx8IFtdKVswXSA9PT0gayAmJiByWzFdKSwgITEgPT09IHApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGEgPSArK3MgJiYgYSAmJiBhW2xdIHx8IChwID0gcyA9IDApIHx8IHUucG9wKCkpICYmICgoeCA/IGEubm9kZU5hbWUudG9Mb3dlckNhc2UoKSAhPT0gZCA6IDEgIT09IGEubm9kZVR5cGUpIHx8ICErK3AgfHwgKGYgJiYgKChpID0gKG8gPSBhW05dIHx8IChhW05dID0ge30pKVthLnVuaXF1ZUlEXSB8fCAob1thLnVuaXF1ZUlEXSA9IHt9KSlbaF0gPSBbaywgcF0pLCBhICE9PSBlKSk7KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKHAgLT0gbSkgPT09IGcgfHwgcCAlIGcgPT0gMCAmJiAwIDw9IHAgLyBnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIFBTRVVETzogZnVuY3Rpb24oZSwgbykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCwgYSA9IGIucHNldWRvc1tlXSB8fCBiLnNldEZpbHRlcnNbZS50b0xvd2VyQ2FzZSgpXSB8fCByZS5lcnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiICsgZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhW05dID8gYShvKSA6IDEgPCBhLmxlbmd0aCA/ICh0ID0gW2UsIGUsICIiLCBvXSwgYi5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9Mb3dlckNhc2UoKSkgPyBvZShmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBuLCByID0gYShlLCBvKSwgaSA9IHIubGVuZ3RoOyBpLS07KSBlW24gPSBfKGUsIHJbaV0pXSA9ICEodFtuXSA9IHJbaV0pCiAgICAgICAgICAgICAgICAgICAgICAgIH0pIDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEoZSwgMCwgdCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkgOiBhCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHBzZXVkb3M6IHsKICAgICAgICAgICAgICAgICAgICBub3Q6IG9lKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHIgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBkKGUucmVwbGFjZShXLCAiJDEiKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzW05dID8gb2UoZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSwgbyA9IHMoZSwgbnVsbCwgciwgW10pLCBhID0gZS5sZW5ndGg7IGEtLTspKGkgPSBvW2FdKSAmJiAoZVthXSA9ICEodFthXSA9IGkpKQogICAgICAgICAgICAgICAgICAgICAgICB9KSA6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByWzBdID0gZSwgcyhyLCBudWxsLCBuLCBpKSwgclswXSA9IG51bGwsICFpLnBvcCgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICBoYXM6IG9lKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAwIDwgcmUodCwgZSkubGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICBjb250YWluczogb2UoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdCA9IHQucmVwbGFjZShlZSwgdGUpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMSA8IChlLnRleHRDb250ZW50IHx8IGUuaW5uZXJUZXh0IHx8IG8oZSkpLmluZGV4T2YodCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICBsYW5nOiBvZShmdW5jdGlvbihuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBVLnRlc3QobiB8fCAiIikgfHwgcmUuZXJyb3IoInVuc3VwcG9ydGVkIGxhbmc6ICIgKyBuKSwgbiA9IG4ucmVwbGFjZShlZSwgdGUpLnRvTG93ZXJDYXNlKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG8gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodCA9IEUgPyBlLmxhbmcgOiBlLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKSB8fCBlLmdldEF0dHJpYnV0ZSgibGFuZyIpKSByZXR1cm4gKHQgPSB0LnRvTG93ZXJDYXNlKCkpID09PSBuIHx8IDAgPT09IHQuaW5kZXhPZihuICsgIi0iKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gd2hpbGUgKChlID0gZS5wYXJlbnROb2RlKSAmJiAxID09PSBlLm5vZGVUeXBlKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gITEKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBuLmxvY2F0aW9uICYmIG4ubG9jYXRpb24uaGFzaDsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgJiYgdC5zbGljZSgxKSA9PT0gZS5pZAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgcm9vdDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSA9PT0gYQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZm9jdXM6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPT09IEMuYWN0aXZlRWxlbWVudCAmJiAoIUMuaGFzRm9jdXMgfHwgQy5oYXNGb2N1cygpKSAmJiAhIShlLnR5cGUgfHwgZS5ocmVmIHx8IH5lLnRhYkluZGV4KQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gITEgPT09IGUuZGlzYWJsZWQKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhMCA9PT0gZS5kaXNhYmxlZAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgY2hlY2tlZDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJpbnB1dCIgPT09IHQgJiYgISFlLmNoZWNrZWQgfHwgIm9wdGlvbiIgPT09IHQgJiYgISFlLnNlbGVjdGVkCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5wYXJlbnROb2RlICYmIGUucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LCAhMCA9PT0gZS5zZWxlY3RlZAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZW1wdHk6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChlID0gZS5maXJzdENoaWxkOyBlOyBlID0gZS5uZXh0U2libGluZykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlLm5vZGVUeXBlIDwgNikgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gITAKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHBhcmVudDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIWIucHNldWRvcy5lbXB0eShlKQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgaGVhZGVyOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBKLnRlc3QoZS5ub2RlTmFtZSkKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBZLnRlc3QoZS5ub2RlTmFtZSkKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGJ1dHRvbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJpbnB1dCIgPT09IHQgJiYgImJ1dHRvbiIgPT09IGUudHlwZSB8fCAiYnV0dG9uIiA9PT0gdAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgdGV4dDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdDsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJpbnB1dCIgPT09IGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSAmJiAidGV4dCIgPT09IGUudHlwZSAmJiAobnVsbCA9PSAodCA9IGUuZ2V0QXR0cmlidXRlKCJ0eXBlIikpIHx8ICJ0ZXh0IiA9PT0gdC50b0xvd2VyQ2FzZSgpKQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZmlyc3Q6IGRlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gWzBdCiAgICAgICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICAgICAgbGFzdDogZGUoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3QgLSAxXQogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgIGVxOiBkZShmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbbiA8IDAgPyBuICsgdCA6IG5dCiAgICAgICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICAgICAgZXZlbjogZGUoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBuID0gMDsgbiA8IHQ7IG4gKz0gMikgZS5wdXNoKG4pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgIG9kZDogZGUoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBuID0gMTsgbiA8IHQ7IG4gKz0gMikgZS5wdXNoKG4pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgIGx0OiBkZShmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHIgPSBuIDwgMCA/IG4gKyB0IDogbjsgMCA8PSAtLXI7KSBlLnB1c2gocik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICAgICAgZ3Q6IGRlKGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgciA9IG4gPCAwID8gbiArIHQgOiBuOyArK3IgPCB0OykgZS5wdXNoKHIpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLnBzZXVkb3MubnRoID0gYi5wc2V1ZG9zLmVxLCB7CiAgICAgICAgICAgICAgICByYWRpbzogITAsCiAgICAgICAgICAgICAgICBjaGVja2JveDogITAsCiAgICAgICAgICAgICAgICBmaWxlOiAhMCwKICAgICAgICAgICAgICAgIHBhc3N3b3JkOiAhMCwKICAgICAgICAgICAgICAgIGltYWdlOiAhMAogICAgICAgICAgICB9KSBiLnBzZXVkb3NbZV0gPSBsZShlKTsKICAgICAgICBmb3IgKGUgaW4gewogICAgICAgICAgICAgICAgc3VibWl0OiAhMCwKICAgICAgICAgICAgICAgIHJlc2V0OiAhMAogICAgICAgICAgICB9KSBiLnBzZXVkb3NbZV0gPSBjZShlKTsKCiAgICAgICAgZnVuY3Rpb24gcGUoKSB7fQoKICAgICAgICBmdW5jdGlvbiBoZShlKSB7CiAgICAgICAgICAgIGZvciAodmFyIHQgPSAwLCBuID0gZS5sZW5ndGgsIHIgPSAiIjsgdCA8IG47IHQrKykgciArPSBlW3RdLnZhbHVlOwogICAgICAgICAgICByZXR1cm4gcgogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gZ2UocywgZSwgdCkgewogICAgICAgICAgICB2YXIgdSA9IGUuZGlyLAogICAgICAgICAgICAgICAgbCA9IHQgJiYgInBhcmVudE5vZGUiID09PSB1LAogICAgICAgICAgICAgICAgYyA9IHIrKzsKICAgICAgICAgICAgcmV0dXJuIGUuZmlyc3QgPyBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICBmb3IgKDsgZSA9IGVbdV07KQogICAgICAgICAgICAgICAgICAgIGlmICgxID09PSBlLm5vZGVUeXBlIHx8IGwpIHJldHVybiBzKGUsIHQsIG4pCiAgICAgICAgICAgIH0gOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgciwgaSwgbywgYSA9IFtrLCBjXTsKICAgICAgICAgICAgICAgIGlmIChuKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICg7IGUgPSBlW3VdOykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCgxID09PSBlLm5vZGVUeXBlIHx8IGwpICYmIHMoZSwgdCwgbikpIHJldHVybiAhMAogICAgICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICAgICAgICAgZm9yICg7IGUgPSBlW3VdOykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDEgPT09IGUubm9kZVR5cGUgfHwgbCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChyID0gKGkgPSAobyA9IGVbTl0gfHwgKGVbTl0gPSB7fSkpW2UudW5pcXVlSURdIHx8IChvW2UudW5pcXVlSURdID0ge30pKVt1XSkgJiYgclswXSA9PT0gayAmJiByWzFdID09PSBjKSByZXR1cm4gYVsyXSA9IHJbMl07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoKGlbdV0gPSBhKVsyXSA9IHMoZSwgdCwgbikpIHJldHVybiAhMAogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIG1lKGkpIHsKICAgICAgICAgICAgcmV0dXJuIDEgPCBpLmxlbmd0aCA/IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIHIgPSBpLmxlbmd0aDsgci0tOykKICAgICAgICAgICAgICAgICAgICBpZiAoIWlbcl0oZSwgdCwgbikpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgICAgICB9IDogaVswXQogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gdmUoZSwgdCwgbiwgciwgaSkgewogICAgICAgICAgICBmb3IgKHZhciBvLCBhID0gW10sIHMgPSAwLCB1ID0gZS5sZW5ndGgsIGwgPSBudWxsICE9IHQ7IHMgPCB1OyBzKyspKG8gPSBlW3NdKSAmJiAobiAmJiAhbihvLCByLCBpKSB8fCAoYS5wdXNoKG8pLCBsICYmIHQucHVzaChzKSkpOwogICAgICAgICAgICByZXR1cm4gYQogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24geWUocCwgaCwgZywgbSwgdiwgZSkgewogICAgICAgICAgICByZXR1cm4gbSAmJiAhbVtOXSAmJiAobSA9IHllKG0pKSwgdiAmJiAhdltOXSAmJiAodiA9IHllKHYsIGUpKSwgb2UoZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICAgICAgdmFyIGksIG8sIGEsIHMgPSBbXSwKICAgICAgICAgICAgICAgICAgICB1ID0gW10sCiAgICAgICAgICAgICAgICAgICAgbCA9IHQubGVuZ3RoLAogICAgICAgICAgICAgICAgICAgIGMgPSBlIHx8IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgciA9IDAsIGkgPSB0Lmxlbmd0aDsgciA8IGk7IHIrKykgcmUoZSwgdFtyXSwgbik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgICAgICAgICAgfShoIHx8ICIqIiwgbi5ub2RlVHlwZSA/IFtuXSA6IG4sIFtdKSwKICAgICAgICAgICAgICAgICAgICBkID0gIXAgfHwgIWUgJiYgaCA/IGMgOiB2ZShjLCBzLCBwLCBuLCByKSwKICAgICAgICAgICAgICAgICAgICBmID0gZyA/IHYgfHwgKGUgPyBwIDogbCB8fCBtKSA/IFtdIDogdCA6IGQ7CiAgICAgICAgICAgICAgICBpZiAoZyAmJiBnKGQsIGYsIG4sIHIpLCBtKQogICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IHZlKGYsIHUpLCBtKGksIFtdLCBuLCByKSwgbyA9IGkubGVuZ3RoOyBvLS07KShhID0gaVtvXSkgJiYgKGZbdVtvXV0gPSAhKGRbdVtvXV0gPSBhKSk7CiAgICAgICAgICAgICAgICBpZiAoZSkgewogICAgICAgICAgICAgICAgICAgIGlmICh2IHx8IHApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHYpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IFtdLCBvID0gZi5sZW5ndGg7IG8tLTspKGEgPSBmW29dKSAmJiBpLnB1c2goZFtvXSA9IGEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdihudWxsLCBmID0gW10sIGksIHIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChvID0gZi5sZW5ndGg7IG8tLTspKGEgPSBmW29dKSAmJiAtMSA8IChpID0gdiA/IF8oZSwgYSkgOiBzW29dKSAmJiAoZVtpXSA9ICEodFtpXSA9IGEpKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSBmID0gdmUoZiA9PT0gdCA/IGYuc3BsaWNlKGwsIGYubGVuZ3RoKSA6IGYpLCB2ID8gdihudWxsLCB0LCBmLCByKSA6IEguYXBwbHkodCwgZikKICAgICAgICAgICAgfSkKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIHhlKGUpIHsKICAgICAgICAgICAgZm9yICh2YXIgaSwgdCwgbiwgciA9IGUubGVuZ3RoLCBvID0gYi5yZWxhdGl2ZVtlWzBdLnR5cGVdLCBhID0gbyB8fCBiLnJlbGF0aXZlWyIgIl0sIHMgPSBvID8gMSA6IDAsIHUgPSBnZShmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPT09IGkKICAgICAgICAgICAgICAgIH0sIGEsICEwKSwgbCA9IGdlKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTEgPCBfKGksIGUpCiAgICAgICAgICAgICAgICB9LCBhLCAhMCksIGMgPSBbZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICAgICAgICAgIHZhciByID0gIW8gJiYgKG4gfHwgdCAhPT0gdykgfHwgKChpID0gdCkubm9kZVR5cGUgPyB1KGUsIHQsIG4pIDogbChlLCB0LCBuKSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkgPSBudWxsLCByCiAgICAgICAgICAgICAgICB9XTsgcyA8IHI7IHMrKykKICAgICAgICAgICAgICAgIGlmICh0ID0gYi5yZWxhdGl2ZVtlW3NdLnR5cGVdKSBjID0gW2dlKG1lKGMpLCB0KV07CiAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBpZiAoKHQgPSBiLmZpbHRlcltlW3NdLnR5cGVdLmFwcGx5KG51bGwsIGVbc10ubWF0Y2hlcykpW05dKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9ICsrczsgbiA8IHIgJiYgIWIucmVsYXRpdmVbZVtuXS50eXBlXTsgbisrKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHllKDEgPCBzICYmIG1lKGMpLCAxIDwgcyAmJiBoZShlLnNsaWNlKDAsIHMgLSAxKS5jb25jYXQoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICIgIiA9PT0gZVtzIC0gMl0udHlwZSA/ICIqIiA6ICIiCiAgICAgICAgICAgICAgICAgICAgICAgIH0pKS5yZXBsYWNlKFcsICIkMSIpLCB0LCBzIDwgbiAmJiB4ZShlLnNsaWNlKHMsIG4pKSwgbiA8IHIgJiYgeGUoZSA9IGUuc2xpY2UobikpLCBuIDwgciAmJiBoZShlKSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgYy5wdXNoKHQpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBtZShjKQogICAgICAgIH0KICAgICAgICByZXR1cm4gcGUucHJvdG90eXBlID0gYi5maWx0ZXJzID0gYi5wc2V1ZG9zLCBiLnNldEZpbHRlcnMgPSBuZXcgcGUsIGcgPSByZS50b2tlbml6ZSA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4sIHIsIGksIG8sIGEsIHMsIHUsIGwgPSBwW2UgKyAiICJdOwogICAgICAgICAgICBpZiAobCkgcmV0dXJuIHQgPyAwIDogbC5zbGljZSgwKTsKICAgICAgICAgICAgZm9yIChhID0gZSwgcyA9IFtdLCB1ID0gYi5wcmVGaWx0ZXI7IGE7KSB7CiAgICAgICAgICAgICAgICBmb3IgKG8gaW4gbiAmJiAhKHIgPSBJLmV4ZWMoYSkpIHx8IChyICYmIChhID0gYS5zbGljZShyWzBdLmxlbmd0aCkgfHwgYSksIHMucHVzaChpID0gW10pKSwgbiA9ICExLCAociA9ICQuZXhlYyhhKSkgJiYgKG4gPSByLnNoaWZ0KCksIGkucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBuLAogICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiByWzBdLnJlcGxhY2UoVywgIiAiKQogICAgICAgICAgICAgICAgICAgIH0pLCBhID0gYS5zbGljZShuLmxlbmd0aCkpLCBiLmZpbHRlcikgIShyID0gVltvXS5leGVjKGEpKSB8fCB1W29dICYmICEociA9IHVbb10ocikpIHx8IChuID0gci5zaGlmdCgpLCBpLnB1c2goewogICAgICAgICAgICAgICAgICAgIHZhbHVlOiBuLAogICAgICAgICAgICAgICAgICAgIHR5cGU6IG8sCiAgICAgICAgICAgICAgICAgICAgbWF0Y2hlczogcgogICAgICAgICAgICAgICAgfSksIGEgPSBhLnNsaWNlKG4ubGVuZ3RoKSk7CiAgICAgICAgICAgICAgICBpZiAoIW4pIGJyZWFrCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHQgPyBhLmxlbmd0aCA6IGEgPyByZS5lcnJvcihlKSA6IHAoZSwgcykuc2xpY2UoMCkKICAgICAgICB9LCBkID0gcmUuY29tcGlsZSA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4sIG0sIHYsIHksIHgsIHIsIGkgPSBbXSwKICAgICAgICAgICAgICAgIG8gPSBbXSwKICAgICAgICAgICAgICAgIGEgPSBTW2UgKyAiICJdOwogICAgICAgICAgICBpZiAoIWEpIHsKICAgICAgICAgICAgICAgIGZvciAodCB8fCAodCA9IGcoZSkpLCBuID0gdC5sZW5ndGg7IG4tLTspKGEgPSB4ZSh0W25dKSlbTl0gPyBpLnB1c2goYSkgOiBvLnB1c2goYSk7CiAgICAgICAgICAgICAgICAoYSA9IFMoZSwgKG0gPSBvLCB5ID0gMCA8ICh2ID0gaSkubGVuZ3RoLCB4ID0gMCA8IG0ubGVuZ3RoLCByID0gZnVuY3Rpb24oZSwgdCwgbiwgciwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBvLCBhLCBzLCB1ID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9IGUgJiYgW10sCiAgICAgICAgICAgICAgICAgICAgICAgIGQgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgZiA9IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBlIHx8IHggJiYgYi5maW5kLlRBRygiKiIsIGkpLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gayArPSBudWxsID09IGYgPyAxIDogTWF0aC5yYW5kb20oKSB8fCAuMSwKICAgICAgICAgICAgICAgICAgICAgICAgZyA9IHAubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIGZvciAoaSAmJiAodyA9IHQgPT09IEMgfHwgdCB8fCBpKTsgbCAhPT0gZyAmJiBudWxsICE9IChvID0gcFtsXSk7IGwrKykgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoeCAmJiBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgPSAwLCB0IHx8IG8ub3duZXJEb2N1bWVudCA9PT0gQyB8fCAoVChvKSwgbiA9ICFFKTsgcyA9IG1bYSsrXTspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHMobywgdCB8fCBDLCBuKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByLnB1c2gobyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAmJiAoayA9IGgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgeSAmJiAoKG8gPSAhcyAmJiBvKSAmJiB1LS0sIGUgJiYgYy5wdXNoKG8pKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBpZiAodSArPSBsLCB5ICYmIGwgIT09IHUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gMDsgcyA9IHZbYSsrXTspIHMoYywgZCwgdCwgbik7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA8IHUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IGwtLTspIGNbbF0gfHwgZFtsXSB8fCAoZFtsXSA9IGouY2FsbChyKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkID0gdmUoZCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBILmFwcGx5KHIsIGQpLCBpICYmICFlICYmIDAgPCBkLmxlbmd0aCAmJiAxIDwgdSArIHYubGVuZ3RoICYmIHJlLnVuaXF1ZVNvcnQocikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkgJiYgKGsgPSBoLCB3ID0gZiksIGMKICAgICAgICAgICAgICAgIH0sIHkgPyBvZShyKSA6IHIpKSkuc2VsZWN0b3IgPSBlCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGEKICAgICAgICB9LCBtID0gcmUuc2VsZWN0ID0gZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICB2YXIgaSwgbywgYSwgcywgdSwgbCA9ICJmdW5jdGlvbiIgPT0gdHlwZW9mIGUgJiYgZSwKICAgICAgICAgICAgICAgIGMgPSAhciAmJiBnKGUgPSBsLnNlbGVjdG9yIHx8IGUpOwogICAgICAgICAgICBpZiAobiA9IG4gfHwgW10sIDEgPT09IGMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICBpZiAoMiA8IChvID0gY1swXSA9IGNbMF0uc2xpY2UoMCkpLmxlbmd0aCAmJiAiSUQiID09PSAoYSA9IG9bMF0pLnR5cGUgJiYgaC5nZXRCeUlkICYmIDkgPT09IHQubm9kZVR5cGUgJiYgRSAmJiBiLnJlbGF0aXZlW29bMV0udHlwZV0pIHsKICAgICAgICAgICAgICAgICAgICBpZiAoISh0ID0gKGIuZmluZC5JRChhLm1hdGNoZXNbMF0ucmVwbGFjZShlZSwgdGUpLCB0KSB8fCBbXSlbMF0pKSByZXR1cm4gbjsKICAgICAgICAgICAgICAgICAgICBsICYmICh0ID0gdC5wYXJlbnROb2RlKSwgZSA9IGUuc2xpY2Uoby5zaGlmdCgpLnZhbHVlLmxlbmd0aCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGZvciAoaSA9IFYubmVlZHNDb250ZXh0LnRlc3QoZSkgPyAwIDogby5sZW5ndGg7IGktLSAmJiAoYSA9IG9baV0sICFiLnJlbGF0aXZlW3MgPSBhLnR5cGVdKTspCiAgICAgICAgICAgICAgICAgICAgaWYgKCh1ID0gYi5maW5kW3NdKSAmJiAociA9IHUoYS5tYXRjaGVzWzBdLnJlcGxhY2UoZWUsIHRlKSwgSy50ZXN0KG9bMF0udHlwZSkgJiYgZmUodC5wYXJlbnROb2RlKSB8fCB0KSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG8uc3BsaWNlKGksIDEpLCAhKGUgPSByLmxlbmd0aCAmJiBoZShvKSkpIHJldHVybiBILmFwcGx5KG4sIHIpLCBuOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gKGwgfHwgZChlLCBjKSkociwgdCwgIUUsIG4sICF0IHx8IEsudGVzdChlKSAmJiBmZSh0LnBhcmVudE5vZGUpIHx8IHQpLCBuCiAgICAgICAgfSwgaC5zb3J0U3RhYmxlID0gTi5zcGxpdCgiIikuc29ydChBKS5qb2luKCIiKSA9PT0gTiwgaC5kZXRlY3REdXBsaWNhdGVzID0gISFsLCBUKCksIGguc29ydERldGFjaGVkID0gYWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gMSAmIGUuY29tcGFyZURvY3VtZW50UG9zaXRpb24oQy5jcmVhdGVFbGVtZW50KCJkaXYiKSkKICAgICAgICB9KSwgYWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gZS5pbm5lckhUTUwgPSAiPGEgaHJlZj0nIyc+PC9hPiIsICIjIiA9PT0gZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpCiAgICAgICAgfSkgfHwgc2UoInR5cGV8aHJlZnxoZWlnaHR8d2lkdGgiLCBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHJldHVybiBuID8gdm9pZCAwIDogZS5nZXRBdHRyaWJ1dGUodCwgInR5cGUiID09PSB0LnRvTG93ZXJDYXNlKCkgPyAxIDogMikKICAgICAgICB9KSwgaC5hdHRyaWJ1dGVzICYmIGFlKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGUuaW5uZXJIVE1MID0gIjxpbnB1dC8+IiwgZS5maXJzdENoaWxkLnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiIiksICIiID09PSBlLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpCiAgICAgICAgfSkgfHwgc2UoInZhbHVlIiwgZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gbiB8fCAiaW5wdXQiICE9PSBlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPyB2b2lkIDAgOiBlLmRlZmF1bHRWYWx1ZQogICAgICAgIH0pLCBhZShmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsID09IGUuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpCiAgICAgICAgfSkgfHwgc2UoRiwgZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICB2YXIgcjsKICAgICAgICAgICAgcmV0dXJuIG4gPyB2b2lkIDAgOiAhMCA9PT0gZVt0XSA/IHQudG9Mb3dlckNhc2UoKSA6IChyID0gZS5nZXRBdHRyaWJ1dGVOb2RlKHQpKSAmJiByLnNwZWNpZmllZCA/IHIudmFsdWUgOiBudWxsCiAgICAgICAgfSksIHJlCiAgICB9KEMpOwogICAgRS5maW5kID0gcCwgRS5leHByID0gcC5zZWxlY3RvcnMsIEUuZXhwclsiOiJdID0gRS5leHByLnBzZXVkb3MsIEUudW5pcXVlU29ydCA9IEUudW5pcXVlID0gcC51bmlxdWVTb3J0LCBFLnRleHQgPSBwLmdldFRleHQsIEUuaXNYTUxEb2MgPSBwLmlzWE1MLCBFLmNvbnRhaW5zID0gcC5jb250YWluczsKICAgIHZhciB5ID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICBmb3IgKHZhciByID0gW10sIGkgPSB2b2lkIDAgIT09IG47CiAgICAgICAgICAgICAgICAoZSA9IGVbdF0pICYmIDkgIT09IGUubm9kZVR5cGU7KQogICAgICAgICAgICAgICAgaWYgKDEgPT09IGUubm9kZVR5cGUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoaSAmJiBFKGUpLmlzKG4pKSBicmVhazsKICAgICAgICAgICAgICAgICAgICByLnB1c2goZSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHIKICAgICAgICB9LAogICAgICAgIHggPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIGZvciAodmFyIG4gPSBbXTsgZTsgZSA9IGUubmV4dFNpYmxpbmcpIDEgPT09IGUubm9kZVR5cGUgJiYgZSAhPT0gdCAmJiBuLnB1c2goZSk7CiAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgfSwKICAgICAgICBiID0gRS5leHByLm1hdGNoLm5lZWRzQ29udGV4dCwKICAgICAgICB3ID0gL148KFtcdy1dKylccypcLz8+KD86PFwvXDE+fCkkLywKICAgICAgICBUID0gL14uW146I1xbXC4sXSokLzsKCiAgICBmdW5jdGlvbiBOKGUsIG4sIHIpIHsKICAgICAgICBpZiAoRS5pc0Z1bmN0aW9uKG4pKSByZXR1cm4gRS5ncmVwKGUsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuICEhbi5jYWxsKGUsIHQsIGUpICE9PSByCiAgICAgICAgfSk7CiAgICAgICAgaWYgKG4ubm9kZVR5cGUpIHJldHVybiBFLmdyZXAoZSwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gZSA9PT0gbiAhPT0gcgogICAgICAgIH0pOwogICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgbikgewogICAgICAgICAgICBpZiAoVC50ZXN0KG4pKSByZXR1cm4gRS5maWx0ZXIobiwgZSwgcik7CiAgICAgICAgICAgIG4gPSBFLmZpbHRlcihuLCBlKQogICAgICAgIH0KICAgICAgICByZXR1cm4gRS5ncmVwKGUsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIC0xIDwgRS5pbkFycmF5KGUsIG4pICE9PSByCiAgICAgICAgfSkKICAgIH0KICAgIEUuZmlsdGVyID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIHZhciByID0gdFswXTsKICAgICAgICByZXR1cm4gbiAmJiAoZSA9ICI6bm90KCIgKyBlICsgIikiKSwgMSA9PT0gdC5sZW5ndGggJiYgMSA9PT0gci5ub2RlVHlwZSA/IEUuZmluZC5tYXRjaGVzU2VsZWN0b3IociwgZSkgPyBbcl0gOiBbXSA6IEUuZmluZC5tYXRjaGVzKGUsIEUuZ3JlcCh0LCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiAxID09PSBlLm5vZGVUeXBlCiAgICAgICAgfSkpCiAgICB9LCBFLmZuLmV4dGVuZCh7CiAgICAgICAgZmluZDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCwgbiA9IFtdLAogICAgICAgICAgICAgICAgciA9IHRoaXMsCiAgICAgICAgICAgICAgICBpID0gci5sZW5ndGg7CiAgICAgICAgICAgIGlmICgic3RyaW5nIiAhPSB0eXBlb2YgZSkgcmV0dXJuIHRoaXMucHVzaFN0YWNrKEUoZSkuZmlsdGVyKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZm9yICh0ID0gMDsgdCA8IGk7IHQrKykKICAgICAgICAgICAgICAgICAgICBpZiAoRS5jb250YWlucyhyW3RdLCB0aGlzKSkgcmV0dXJuICEwCiAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgZm9yICh0ID0gMDsgdCA8IGk7IHQrKykgRS5maW5kKGUsIHJbdF0sIG4pOwogICAgICAgICAgICByZXR1cm4gKG4gPSB0aGlzLnB1c2hTdGFjaygxIDwgaSA/IEUudW5pcXVlKG4pIDogbikpLnNlbGVjdG9yID0gdGhpcy5zZWxlY3RvciA/IHRoaXMuc2VsZWN0b3IgKyAiICIgKyBlIDogZSwgbgogICAgICAgIH0sCiAgICAgICAgZmlsdGVyOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1c2hTdGFjayhOKHRoaXMsIGUgfHwgW10sICExKSkKICAgICAgICB9LAogICAgICAgIG5vdDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5wdXNoU3RhY2soTih0aGlzLCBlIHx8IFtdLCAhMCkpCiAgICAgICAgfSwKICAgICAgICBpczogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gISFOKHRoaXMsICJzdHJpbmciID09IHR5cGVvZiBlICYmIGIudGVzdChlKSA/IEUoZSkgOiBlIHx8IFtdLCAhMSkubGVuZ3RoCiAgICAgICAgfQogICAgfSk7CiAgICB2YXIgaywgUyA9IC9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKikpJC87CiAgICAoRS5mbi5pbml0ID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIHZhciByLCBpOwogICAgICAgIGlmICghZSkgcmV0dXJuIHRoaXM7CiAgICAgICAgaWYgKG4gPSBuIHx8IGssICJzdHJpbmciICE9IHR5cGVvZiBlKSByZXR1cm4gZS5ub2RlVHlwZSA/ICh0aGlzLmNvbnRleHQgPSB0aGlzWzBdID0gZSwgdGhpcy5sZW5ndGggPSAxLCB0aGlzKSA6IEUuaXNGdW5jdGlvbihlKSA/IHZvaWQgMCAhPT0gbi5yZWFkeSA/IG4ucmVhZHkoZSkgOiBlKEUpIDogKHZvaWQgMCAhPT0gZS5zZWxlY3RvciAmJiAodGhpcy5zZWxlY3RvciA9IGUuc2VsZWN0b3IsIHRoaXMuY29udGV4dCA9IGUuY29udGV4dCksIEUubWFrZUFycmF5KGUsIHRoaXMpKTsKICAgICAgICBpZiAoIShyID0gIjwiID09PSBlLmNoYXJBdCgwKSAmJiAiPiIgPT09IGUuY2hhckF0KGUubGVuZ3RoIC0gMSkgJiYgMyA8PSBlLmxlbmd0aCA/IFtudWxsLCBlLCBudWxsXSA6IFMuZXhlYyhlKSkgfHwgIXJbMV0gJiYgdCkgcmV0dXJuICF0IHx8IHQuanF1ZXJ5ID8gKHQgfHwgbikuZmluZChlKSA6IHRoaXMuY29uc3RydWN0b3IodCkuZmluZChlKTsKICAgICAgICBpZiAoclsxXSkgewogICAgICAgICAgICBpZiAodCA9IHQgaW5zdGFuY2VvZiBFID8gdFswXSA6IHQsIEUubWVyZ2UodGhpcywgRS5wYXJzZUhUTUwoclsxXSwgdCAmJiB0Lm5vZGVUeXBlID8gdC5vd25lckRvY3VtZW50IHx8IHQgOiBoLCAhMCkpLCB3LnRlc3QoclsxXSkgJiYgRS5pc1BsYWluT2JqZWN0KHQpKQogICAgICAgICAgICAgICAgZm9yIChyIGluIHQpIEUuaXNGdW5jdGlvbih0aGlzW3JdKSA/IHRoaXNbcl0odFtyXSkgOiB0aGlzLmF0dHIociwgdFtyXSk7CiAgICAgICAgICAgIHJldHVybiB0aGlzCiAgICAgICAgfQogICAgICAgIGlmICgoaSA9IGguZ2V0RWxlbWVudEJ5SWQoclsyXSkpICYmIGkucGFyZW50Tm9kZSkgewogICAgICAgICAgICBpZiAoaS5pZCAhPT0gclsyXSkgcmV0dXJuIGsuZmluZChlKTsKICAgICAgICAgICAgdGhpcy5sZW5ndGggPSAxLCB0aGlzWzBdID0gaQogICAgICAgIH0KICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0ID0gaCwgdGhpcy5zZWxlY3RvciA9IGUsIHRoaXMKICAgIH0pLnByb3RvdHlwZSA9IEUuZm4sIGsgPSBFKGgpOwogICAgdmFyIEEgPSAvXig/OnBhcmVudHN8cHJldig/OlVudGlsfEFsbCkpLywKICAgICAgICBEID0gewogICAgICAgICAgICBjaGlsZHJlbjogITAsCiAgICAgICAgICAgIGNvbnRlbnRzOiAhMCwKICAgICAgICAgICAgbmV4dDogITAsCiAgICAgICAgICAgIHByZXY6ICEwCiAgICAgICAgfTsKCiAgICBmdW5jdGlvbiBqKGUsIHQpIHsKICAgICAgICBmb3IgKDsKICAgICAgICAgICAgKGUgPSBlW3RdKSAmJiAxICE9PSBlLm5vZGVUeXBlOyk7CiAgICAgICAgcmV0dXJuIGUKICAgIH0KICAgIEUuZm4uZXh0ZW5kKHsKICAgICAgICBoYXM6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQsIG4gPSBFKGUsIHRoaXMpLAogICAgICAgICAgICAgICAgciA9IG4ubGVuZ3RoOwogICAgICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBmb3IgKHQgPSAwOyB0IDwgcjsgdCsrKQogICAgICAgICAgICAgICAgICAgIGlmIChFLmNvbnRhaW5zKHRoaXMsIG5bdF0pKSByZXR1cm4gITAKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGNsb3Nlc3Q6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgZm9yICh2YXIgbiwgciA9IDAsIGkgPSB0aGlzLmxlbmd0aCwgbyA9IFtdLCBhID0gYi50ZXN0KGUpIHx8ICJzdHJpbmciICE9IHR5cGVvZiBlID8gRShlLCB0IHx8IHRoaXMuY29udGV4dCkgOiAwOyByIDwgaTsgcisrKQogICAgICAgICAgICAgICAgZm9yIChuID0gdGhpc1tyXTsgbiAmJiBuICE9PSB0OyBuID0gbi5wYXJlbnROb2RlKQogICAgICAgICAgICAgICAgICAgIGlmIChuLm5vZGVUeXBlIDwgMTEgJiYgKGEgPyAtMSA8IGEuaW5kZXgobikgOiAxID09PSBuLm5vZGVUeXBlICYmIEUuZmluZC5tYXRjaGVzU2VsZWN0b3IobiwgZSkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG8ucHVzaChuKTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1c2hTdGFjaygxIDwgby5sZW5ndGggPyBFLnVuaXF1ZVNvcnQobykgOiBvKQogICAgICAgIH0sCiAgICAgICAgaW5kZXg6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGUgPyAic3RyaW5nIiA9PSB0eXBlb2YgZSA/IEUuaW5BcnJheSh0aGlzWzBdLCBFKGUpKSA6IEUuaW5BcnJheShlLmpxdWVyeSA/IGVbMF0gOiBlLCB0aGlzKSA6IHRoaXNbMF0gJiYgdGhpc1swXS5wYXJlbnROb2RlID8gdGhpcy5maXJzdCgpLnByZXZBbGwoKS5sZW5ndGggOiAtMQogICAgICAgIH0sCiAgICAgICAgYWRkOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1c2hTdGFjayhFLnVuaXF1ZVNvcnQoRS5tZXJnZSh0aGlzLmdldCgpLCBFKGUsIHQpKSkpCiAgICAgICAgfSwKICAgICAgICBhZGRCYWNrOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmFkZChudWxsID09IGUgPyB0aGlzLnByZXZPYmplY3QgOiB0aGlzLnByZXZPYmplY3QuZmlsdGVyKGUpKQogICAgICAgIH0KICAgIH0pLCBFLmVhY2goewogICAgICAgIHBhcmVudDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCA9IGUucGFyZW50Tm9kZTsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgMTEgIT09IHQubm9kZVR5cGUgPyB0IDogbnVsbAogICAgICAgIH0sCiAgICAgICAgcGFyZW50czogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4geShlLCAicGFyZW50Tm9kZSIpCiAgICAgICAgfSwKICAgICAgICBwYXJlbnRzVW50aWw6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgcmV0dXJuIHkoZSwgInBhcmVudE5vZGUiLCBuKQogICAgICAgIH0sCiAgICAgICAgbmV4dDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gaihlLCAibmV4dFNpYmxpbmciKQogICAgICAgIH0sCiAgICAgICAgcHJldjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gaihlLCAicHJldmlvdXNTaWJsaW5nIikKICAgICAgICB9LAogICAgICAgIG5leHRBbGw6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIHkoZSwgIm5leHRTaWJsaW5nIikKICAgICAgICB9LAogICAgICAgIHByZXZBbGw6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIHkoZSwgInByZXZpb3VzU2libGluZyIpCiAgICAgICAgfSwKICAgICAgICBuZXh0VW50aWw6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgcmV0dXJuIHkoZSwgIm5leHRTaWJsaW5nIiwgbikKICAgICAgICB9LAogICAgICAgIHByZXZVbnRpbDogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4geShlLCAicHJldmlvdXNTaWJsaW5nIiwgbikKICAgICAgICB9LAogICAgICAgIHNpYmxpbmdzOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB4KChlLnBhcmVudE5vZGUgfHwge30pLmZpcnN0Q2hpbGQsIGUpCiAgICAgICAgfSwKICAgICAgICBjaGlsZHJlbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4geChlLmZpcnN0Q2hpbGQpCiAgICAgICAgfSwKICAgICAgICBjb250ZW50czogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gRS5ub2RlTmFtZShlLCAiaWZyYW1lIikgPyBlLmNvbnRlbnREb2N1bWVudCB8fCBlLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQgOiBFLm1lcmdlKFtdLCBlLmNoaWxkTm9kZXMpCiAgICAgICAgfQogICAgfSwgZnVuY3Rpb24ociwgaSkgewogICAgICAgIEUuZm5bcl0gPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gRS5tYXAodGhpcywgaSwgZSk7CiAgICAgICAgICAgIHJldHVybiAiVW50aWwiICE9PSByLnNsaWNlKC01KSAmJiAodCA9IGUpLCB0ICYmICJzdHJpbmciID09IHR5cGVvZiB0ICYmIChuID0gRS5maWx0ZXIodCwgbikpLCAxIDwgdGhpcy5sZW5ndGggJiYgKERbcl0gfHwgKG4gPSBFLnVuaXF1ZVNvcnQobikpLCBBLnRlc3QocikgJiYgKG4gPSBuLnJldmVyc2UoKSkpLCB0aGlzLnB1c2hTdGFjayhuKQogICAgICAgIH0KICAgIH0pOwogICAgdmFyIEwsIEgsIHEgPSAvXFMrL2c7CgogICAgZnVuY3Rpb24gXygpIHsKICAgICAgICBoLmFkZEV2ZW50TGlzdGVuZXIgPyAoaC5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwgRiksIEMucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsIEYpKSA6IChoLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLCBGKSwgQy5kZXRhY2hFdmVudCgib25sb2FkIiwgRikpCiAgICB9CgogICAgZnVuY3Rpb24gRigpIHsKICAgICAgICAoaC5hZGRFdmVudExpc3RlbmVyIHx8ICJsb2FkIiA9PT0gQy5ldmVudC50eXBlIHx8ICJjb21wbGV0ZSIgPT09IGgucmVhZHlTdGF0ZSkgJiYgKF8oKSwgRS5yZWFkeSgpKQogICAgfQogICAgZm9yIChIIGluIEUuQ2FsbGJhY2tzID0gZnVuY3Rpb24ocikgewogICAgICAgICAgICB2YXIgZSwgbjsKICAgICAgICAgICAgciA9ICJzdHJpbmciID09IHR5cGVvZiByID8gKGUgPSByLCBuID0ge30sIEUuZWFjaChlLm1hdGNoKHEpIHx8IFtdLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICBuW3RdID0gITAKICAgICAgICAgICAgfSksIG4pIDogRS5leHRlbmQoe30sIHIpOwogICAgICAgICAgICB2YXIgaSwgdCwgbywgYSwgcyA9IFtdLAogICAgICAgICAgICAgICAgdSA9IFtdLAogICAgICAgICAgICAgICAgbCA9IC0xLAogICAgICAgICAgICAgICAgYyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IHIub25jZSwgbyA9IGkgPSAhMDsgdS5sZW5ndGg7IGwgPSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh0ID0gdS5zaGlmdCgpOyArK2wgPCBzLmxlbmd0aDspICExID09PSBzW2xdLmFwcGx5KHRbMF0sIHRbMV0pICYmIHIuc3RvcE9uRmFsc2UgJiYgKGwgPSBzLmxlbmd0aCwgdCA9ICExKTsKICAgICAgICAgICAgICAgICAgICByLm1lbW9yeSB8fCAodCA9ICExKSwgaSA9ICExLCBhICYmIChzID0gdCA/IFtdIDogIiIpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZCA9IHsKICAgICAgICAgICAgICAgICAgICBhZGQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcyAmJiAodCAmJiAhaSAmJiAobCA9IHMubGVuZ3RoIC0gMSwgdS5wdXNoKHQpKSwgZnVuY3Rpb24gbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFLmVhY2goZSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEUuaXNGdW5jdGlvbih0KSA/IHIudW5pcXVlICYmIGQuaGFzKHQpIHx8IHMucHVzaCh0KSA6IHQgJiYgdC5sZW5ndGggJiYgInN0cmluZyIgIT09IEUudHlwZSh0KSAmJiBuKHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9KGFyZ3VtZW50cyksIHQgJiYgIWkgJiYgYygpKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEUuZWFjaChhcmd1bWVudHMsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIG47IC0gMSA8IChuID0gRS5pbkFycmF5KHQsIHMsIG4pKTspIHMuc3BsaWNlKG4sIDEpLCBuIDw9IGwgJiYgbC0tCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCB0aGlzCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBoYXM6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPyAtMSA8IEUuaW5BcnJheShlLCBzKSA6IDAgPCBzLmxlbmd0aAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZW1wdHk6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcyAmJiAocyA9IFtdKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhID0gdSA9IFtdLCBzID0gdCA9ICIiLCB0aGlzCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhcwogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgbG9jazogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhID0gITAsIHQgfHwgZC5kaXNhYmxlKCksIHRoaXMKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGxvY2tlZDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhIWEKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGZpcmVXaXRoOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhIHx8ICh0ID0gW2UsICh0ID0gdCB8fCBbXSkuc2xpY2UgPyB0LnNsaWNlKCkgOiB0XSwgdS5wdXNoKHQpLCBpIHx8IGMoKSksIHRoaXMKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGZpcmU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZC5maXJlV2l0aCh0aGlzLCBhcmd1bWVudHMpLCB0aGlzCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBmaXJlZDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhIW8KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gZAogICAgICAgIH0sIEUuZXh0ZW5kKHsKICAgICAgICAgICAgRGVmZXJyZWQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHZhciBvID0gWwogICAgICAgICAgICAgICAgICAgICAgICBbInJlc29sdmUiLCAiZG9uZSIsIEUuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCAicmVzb2x2ZWQiXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJyZWplY3QiLCAiZmFpbCIsIEUuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCAicmVqZWN0ZWQiXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJub3RpZnkiLCAicHJvZ3Jlc3MiLCBFLkNhbGxiYWNrcygibWVtb3J5IildCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICBpID0gInBlbmRpbmciLAogICAgICAgICAgICAgICAgICAgIGEgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIGFsd2F5czogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcy5kb25lKGFyZ3VtZW50cykuZmFpbChhcmd1bWVudHMpLCB0aGlzCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHRoZW46IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBhcmd1bWVudHM7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRS5EZWZlcnJlZChmdW5jdGlvbihyKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRS5lYWNoKG8sIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBFLmlzRnVuY3Rpb24oaVtlXSkgJiYgaVtlXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc1t0WzFdXShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0gbiAmJiBuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlICYmIEUuaXNGdW5jdGlvbihlLnByb21pc2UpID8gZS5wcm9taXNlKCkucHJvZ3Jlc3Moci5ub3RpZnkpLmRvbmUoci5yZXNvbHZlKS5mYWlsKHIucmVqZWN0KSA6IHJbdFswXSArICJXaXRoIl0odGhpcyA9PT0gYSA/IHIucHJvbWlzZSgpIDogdGhpcywgbiA/IFtlXSA6IGFyZ3VtZW50cykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSwgaSA9IG51bGwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLnByb21pc2UoKQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICBwcm9taXNlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSBlID8gRS5leHRlbmQoZSwgYSkgOiBhCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHMgPSB7fTsKICAgICAgICAgICAgICAgIHJldHVybiBhLnBpcGUgPSBhLnRoZW4sIEUuZWFjaChvLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSB0WzJdLAogICAgICAgICAgICAgICAgICAgICAgICByID0gdFszXTsKICAgICAgICAgICAgICAgICAgICBhW3RbMV1dID0gbi5hZGQsIHIgJiYgbi5hZGQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSByCiAgICAgICAgICAgICAgICAgICAgfSwgb1sxIF4gZV1bMl0uZGlzYWJsZSwgb1syXVsyXS5sb2NrKSwgc1t0WzBdXSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc1t0WzBdICsgIldpdGgiXSh0aGlzID09PSBzID8gYSA6IHRoaXMsIGFyZ3VtZW50cyksIHRoaXMKICAgICAgICAgICAgICAgICAgICB9LCBzW3RbMF0gKyAiV2l0aCJdID0gbi5maXJlV2l0aAogICAgICAgICAgICAgICAgfSksIGEucHJvbWlzZShzKSwgZSAmJiBlLmNhbGwocywgcyksIHMKICAgICAgICAgICAgfSwKICAgICAgICAgICAgd2hlbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIGksIHQsIG4sIHIgPSAwLAogICAgICAgICAgICAgICAgICAgIG8gPSBjLmNhbGwoYXJndW1lbnRzKSwKICAgICAgICAgICAgICAgICAgICBhID0gby5sZW5ndGgsCiAgICAgICAgICAgICAgICAgICAgcyA9IDEgIT09IGEgfHwgZSAmJiBFLmlzRnVuY3Rpb24oZS5wcm9taXNlKSA/IGEgOiAwLAogICAgICAgICAgICAgICAgICAgIHUgPSAxID09PSBzID8gZSA6IEUuRGVmZXJyZWQoKSwKICAgICAgICAgICAgICAgICAgICBsID0gZnVuY3Rpb24odCwgbiwgcikgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgblt0XSA9IHRoaXMsIHJbdF0gPSAxIDwgYXJndW1lbnRzLmxlbmd0aCA/IGMuY2FsbChhcmd1bWVudHMpIDogZSwgciA9PT0gaSA/IHUubm90aWZ5V2l0aChuLCByKSA6IC0tcyB8fCB1LnJlc29sdmVXaXRoKG4sIHIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgaWYgKDEgPCBhKQogICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IG5ldyBBcnJheShhKSwgdCA9IG5ldyBBcnJheShhKSwgbiA9IG5ldyBBcnJheShhKTsgciA8IGE7IHIrKykgb1tyXSAmJiBFLmlzRnVuY3Rpb24ob1tyXS5wcm9taXNlKSA/IG9bcl0ucHJvbWlzZSgpLnByb2dyZXNzKGwociwgdCwgaSkpLmRvbmUobChyLCBuLCBvKSkuZmFpbCh1LnJlamVjdCkgOiAtLXM7CiAgICAgICAgICAgICAgICByZXR1cm4gcyB8fCB1LnJlc29sdmVXaXRoKG4sIG8pLCB1LnByb21pc2UoKQogICAgICAgICAgICB9CiAgICAgICAgfSksIEUuZm4ucmVhZHkgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBFLnJlYWR5LnByb21pc2UoKS5kb25lKGUpLCB0aGlzCiAgICAgICAgfSwgRS5leHRlbmQoewogICAgICAgICAgICBpc1JlYWR5OiAhMSwKICAgICAgICAgICAgcmVhZHlXYWl0OiAxLAogICAgICAgICAgICBob2xkUmVhZHk6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIGUgPyBFLnJlYWR5V2FpdCsrIDogRS5yZWFkeSghMCkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgcmVhZHk6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICghMCA9PT0gZSA/IC0tRS5yZWFkeVdhaXQgOiBFLmlzUmVhZHkpIHx8ICgoRS5pc1JlYWR5ID0gITApICE9PSBlICYmIDAgPCAtLUUucmVhZHlXYWl0IHx8IChMLnJlc29sdmVXaXRoKGgsIFtFXSksIEUuZm4udHJpZ2dlckhhbmRsZXIgJiYgKEUoaCkudHJpZ2dlckhhbmRsZXIoInJlYWR5IiksIEUoaCkub2ZmKCJyZWFkeSIpKSkpCiAgICAgICAgICAgIH0KICAgICAgICB9KSwgRS5yZWFkeS5wcm9taXNlID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICBpZiAoIUwpCiAgICAgICAgICAgICAgICBpZiAoTCA9IEUuRGVmZXJyZWQoKSwgImNvbXBsZXRlIiA9PT0gaC5yZWFkeVN0YXRlIHx8ICJsb2FkaW5nIiAhPT0gaC5yZWFkeVN0YXRlICYmICFoLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbCkgQy5zZXRUaW1lb3V0KEUucmVhZHkpOwogICAgICAgICAgICAgICAgZWxzZSBpZiAoaC5hZGRFdmVudExpc3RlbmVyKSBoLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLCBGKSwgQy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgRik7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgaC5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIiwgRiksIEMuYXR0YWNoRXZlbnQoIm9ubG9hZCIsIEYpOwogICAgICAgICAgICAgICAgdmFyIG4gPSAhMTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgbiA9IG51bGwgPT0gQy5mcmFtZUVsZW1lbnQgJiYgaC5kb2N1bWVudEVsZW1lbnQKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICBuICYmIG4uZG9TY3JvbGwgJiYgZnVuY3Rpb24gdCgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIUUuaXNSZWFkeSkgewogICAgICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbi5kb1Njcm9sbCgibGVmdCIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDLnNldFRpbWVvdXQodCwgNTApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgXygpLCBFLnJlYWR5KCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KCkKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gTC5wcm9taXNlKGUpCiAgICAgICAgfSwgRS5yZWFkeS5wcm9taXNlKCksIEUodikpIGJyZWFrOwogICAgdi5vd25GaXJzdCA9ICIwIiA9PT0gSCwgdi5pbmxpbmVCbG9ja05lZWRzTGF5b3V0ID0gITEsIEUoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlLCB0LCBuLCByOwogICAgICAgICAgICAobiA9IGguZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXSkgJiYgbi5zdHlsZSAmJiAodCA9IGguY3JlYXRlRWxlbWVudCgiZGl2IiksIChyID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc3R5bGUuY3NzVGV4dCA9ICJwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MDt3aWR0aDowO2hlaWdodDowO3RvcDowO2xlZnQ6LTk5OTlweCIsIG4uYXBwZW5kQ2hpbGQocikuYXBwZW5kQ2hpbGQodCksIHZvaWQgMCAhPT0gdC5zdHlsZS56b29tICYmICh0LnN0eWxlLmNzc1RleHQgPSAiZGlzcGxheTppbmxpbmU7bWFyZ2luOjA7Ym9yZGVyOjA7cGFkZGluZzoxcHg7d2lkdGg6MXB4O3pvb206MSIsIHYuaW5saW5lQmxvY2tOZWVkc0xheW91dCA9IGUgPSAzID09PSB0Lm9mZnNldFdpZHRoLCBlICYmIChuLnN0eWxlLnpvb20gPSAxKSksIG4ucmVtb3ZlQ2hpbGQocikpCiAgICAgICAgfSksCiAgICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgICAgICAgdi5kZWxldGVFeHBhbmRvID0gITA7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBkZWxldGUgZS50ZXN0CiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgIHYuZGVsZXRlRXhwYW5kbyA9ICExCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZSA9IG51bGwKICAgICAgICB9KCk7CiAgICB2YXIgTSwgTyA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSBFLm5vRGF0YVsoZS5ub2RlTmFtZSArICIgIikudG9Mb3dlckNhc2UoKV0sCiAgICAgICAgICAgICAgICBuID0gK2Uubm9kZVR5cGUgfHwgMTsKICAgICAgICAgICAgcmV0dXJuICgxID09PSBuIHx8IDkgPT09IG4pICYmICghdCB8fCAhMCAhPT0gdCAmJiBlLmdldEF0dHJpYnV0ZSgiY2xhc3NpZCIpID09PSB0KQogICAgICAgIH0sCiAgICAgICAgUiA9IC9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8sCiAgICAgICAgUCA9IC8oW0EtWl0pL2c7CgogICAgZnVuY3Rpb24gQihlLCB0LCBuKSB7CiAgICAgICAgaWYgKHZvaWQgMCA9PT0gbiAmJiAxID09PSBlLm5vZGVUeXBlKSB7CiAgICAgICAgICAgIHZhciByID0gImRhdGEtIiArIHQucmVwbGFjZShQLCAiLSQxIikudG9Mb3dlckNhc2UoKTsKICAgICAgICAgICAgaWYgKCJzdHJpbmciID09IHR5cGVvZihuID0gZS5nZXRBdHRyaWJ1dGUocikpKSB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIG4gPSAidHJ1ZSIgPT09IG4gfHwgImZhbHNlIiAhPT0gbiAmJiAoIm51bGwiID09PSBuID8gbnVsbCA6ICtuICsgIiIgPT09IG4gPyArbiA6IFIudGVzdChuKSA/IEUucGFyc2VKU09OKG4pIDogbikKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICBFLmRhdGEoZSwgdCwgbikKICAgICAgICAgICAgfSBlbHNlIG4gPSB2b2lkIDAKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG4KICAgIH0KCiAgICBmdW5jdGlvbiBXKGUpIHsKICAgICAgICB2YXIgdDsKICAgICAgICBmb3IgKHQgaW4gZSkKICAgICAgICAgICAgaWYgKCgiZGF0YSIgIT09IHQgfHwgIUUuaXNFbXB0eU9iamVjdChlW3RdKSkgJiYgInRvSlNPTiIgIT09IHQpIHJldHVybiAhMTsKICAgICAgICByZXR1cm4gITAKICAgIH0KCiAgICBmdW5jdGlvbiBJKGUsIHQsIG4sIHIpIHsKICAgICAgICBpZiAoTyhlKSkgewogICAgICAgICAgICB2YXIgaSwgbywgYSA9IEUuZXhwYW5kbywKICAgICAgICAgICAgICAgIHMgPSBlLm5vZGVUeXBlLAogICAgICAgICAgICAgICAgdSA9IHMgPyBFLmNhY2hlIDogZSwKICAgICAgICAgICAgICAgIGwgPSBzID8gZVthXSA6IGVbYV0gJiYgYTsKICAgICAgICAgICAgaWYgKGwgJiYgdVtsXSAmJiAociB8fCB1W2xdLmRhdGEpIHx8IHZvaWQgMCAhPT0gbiB8fCAic3RyaW5nIiAhPSB0eXBlb2YgdCkgcmV0dXJuIGwgfHwgKGwgPSBzID8gZVthXSA9IGQucG9wKCkgfHwgRS5ndWlkKysgOiBhKSwgdVtsXSB8fCAodVtsXSA9IHMgPyB7fSA6IHsKICAgICAgICAgICAgICAgIHRvSlNPTjogRS5ub29wCiAgICAgICAgICAgIH0pLCAib2JqZWN0IiAhPSB0eXBlb2YgdCAmJiAiZnVuY3Rpb24iICE9IHR5cGVvZiB0IHx8IChyID8gdVtsXSA9IEUuZXh0ZW5kKHVbbF0sIHQpIDogdVtsXS5kYXRhID0gRS5leHRlbmQodVtsXS5kYXRhLCB0KSksIG8gPSB1W2xdLCByIHx8IChvLmRhdGEgfHwgKG8uZGF0YSA9IHt9KSwgbyA9IG8uZGF0YSksIHZvaWQgMCAhPT0gbiAmJiAob1tFLmNhbWVsQ2FzZSh0KV0gPSBuKSwgInN0cmluZyIgPT0gdHlwZW9mIHQgPyBudWxsID09IChpID0gb1t0XSkgJiYgKGkgPSBvW0UuY2FtZWxDYXNlKHQpXSkgOiBpID0gbywgaQogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiAkKGUsIHQsIG4pIHsKICAgICAgICBpZiAoTyhlKSkgewogICAgICAgICAgICB2YXIgciwgaSwgbyA9IGUubm9kZVR5cGUsCiAgICAgICAgICAgICAgICBhID0gbyA/IEUuY2FjaGUgOiBlLAogICAgICAgICAgICAgICAgcyA9IG8gPyBlW0UuZXhwYW5kb10gOiBFLmV4cGFuZG87CiAgICAgICAgICAgIGlmIChhW3NdKSB7CiAgICAgICAgICAgICAgICBpZiAodCAmJiAociA9IG4gPyBhW3NdIDogYVtzXS5kYXRhKSkgewogICAgICAgICAgICAgICAgICAgIGkgPSAodCA9IEUuaXNBcnJheSh0KSA/IHQuY29uY2F0KEUubWFwKHQsIEUuY2FtZWxDYXNlKSkgOiB0IGluIHIgPyBbdF0gOiAodCA9IEUuY2FtZWxDYXNlKHQpKSBpbiByID8gW3RdIDogdC5zcGxpdCgiICIpKS5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgZm9yICg7IGktLTspIGRlbGV0ZSByW3RbaV1dOwogICAgICAgICAgICAgICAgICAgIGlmIChuID8gIVcocikgOiAhRS5pc0VtcHR5T2JqZWN0KHIpKSByZXR1cm4KICAgICAgICAgICAgICAgIH0obiB8fCAoZGVsZXRlIGFbc10uZGF0YSwgVyhhW3NdKSkpICYmIChvID8gRS5jbGVhbkRhdGEoW2VdLCAhMCkgOiB2LmRlbGV0ZUV4cGFuZG8gfHwgYSAhPSBhLndpbmRvdyA/IGRlbGV0ZSBhW3NdIDogYVtzXSA9IHZvaWQgMCkKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIEUuZXh0ZW5kKHsKICAgICAgICBjYWNoZToge30sCiAgICAgICAgbm9EYXRhOiB7CiAgICAgICAgICAgICJhcHBsZXQgIjogITAsCiAgICAgICAgICAgICJlbWJlZCAiOiAhMCwKICAgICAgICAgICAgIm9iamVjdCAiOiAiY2xzaWQ6RDI3Q0RCNkUtQUU2RC0xMWNmLTk2QjgtNDQ0NTUzNTQwMDAwIgogICAgICAgIH0sCiAgICAgICAgaGFzRGF0YTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gISEoZSA9IGUubm9kZVR5cGUgPyBFLmNhY2hlW2VbRS5leHBhbmRvXV0gOiBlW0UuZXhwYW5kb10pICYmICFXKGUpCiAgICAgICAgfSwKICAgICAgICBkYXRhOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHJldHVybiBJKGUsIHQsIG4pCiAgICAgICAgfSwKICAgICAgICByZW1vdmVEYXRhOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiAkKGUsIHQpCiAgICAgICAgfSwKICAgICAgICBfZGF0YTogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gSShlLCB0LCBuLCAhMCkKICAgICAgICB9LAogICAgICAgIF9yZW1vdmVEYXRhOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiAkKGUsIHQsICEwKQogICAgICAgIH0KICAgIH0pLCBFLmZuLmV4dGVuZCh7CiAgICAgICAgZGF0YTogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgbiwgciwgaSwgbyA9IHRoaXNbMF0sCiAgICAgICAgICAgICAgICBhID0gbyAmJiBvLmF0dHJpYnV0ZXM7CiAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IGUpIHJldHVybiAib2JqZWN0IiA9PSB0eXBlb2YgZSA/IHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEUuZGF0YSh0aGlzLCBlKQogICAgICAgICAgICB9KSA6IDEgPCBhcmd1bWVudHMubGVuZ3RoID8gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgRS5kYXRhKHRoaXMsIGUsIHQpCiAgICAgICAgICAgIH0pIDogbyA/IEIobywgZSwgRS5kYXRhKG8sIGUpKSA6IHZvaWQgMDsKICAgICAgICAgICAgaWYgKHRoaXMubGVuZ3RoICYmIChpID0gRS5kYXRhKG8pLCAxID09PSBvLm5vZGVUeXBlICYmICFFLl9kYXRhKG8sICJwYXJzZWRBdHRycyIpKSkgewogICAgICAgICAgICAgICAgZm9yIChuID0gYS5sZW5ndGg7IG4tLTspIGFbbl0gJiYgKDAgPT09IChyID0gYVtuXS5uYW1lKS5pbmRleE9mKCJkYXRhLSIpICYmIEIobywgciA9IEUuY2FtZWxDYXNlKHIuc2xpY2UoNSkpLCBpW3JdKSk7CiAgICAgICAgICAgICAgICBFLl9kYXRhKG8sICJwYXJzZWRBdHRycyIsICEwKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgfSwKICAgICAgICByZW1vdmVEYXRhOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBFLnJlbW92ZURhdGEodGhpcywgZSkKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KSwgRS5leHRlbmQoewogICAgICAgIHF1ZXVlOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByOwogICAgICAgICAgICByZXR1cm4gZSA/ICh0ID0gKHQgfHwgImZ4IikgKyAicXVldWUiLCByID0gRS5fZGF0YShlLCB0KSwgbiAmJiAoIXIgfHwgRS5pc0FycmF5KG4pID8gciA9IEUuX2RhdGEoZSwgdCwgRS5tYWtlQXJyYXkobikpIDogci5wdXNoKG4pKSwgciB8fCBbXSkgOiB2b2lkIDAKICAgICAgICB9LAogICAgICAgIGRlcXVldWU6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdCA9IHQgfHwgImZ4IjsKICAgICAgICAgICAgdmFyIG4gPSBFLnF1ZXVlKGUsIHQpLAogICAgICAgICAgICAgICAgciA9IG4ubGVuZ3RoLAogICAgICAgICAgICAgICAgaSA9IG4uc2hpZnQoKSwKICAgICAgICAgICAgICAgIG8gPSBFLl9xdWV1ZUhvb2tzKGUsIHQpOwogICAgICAgICAgICAiaW5wcm9ncmVzcyIgPT09IGkgJiYgKGkgPSBuLnNoaWZ0KCksIHItLSksIGkgJiYgKCJmeCIgPT09IHQgJiYgbi51bnNoaWZ0KCJpbnByb2dyZXNzIiksIGRlbGV0ZSBvLnN0b3AsIGkuY2FsbChlLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEUuZGVxdWV1ZShlLCB0KQogICAgICAgICAgICB9LCBvKSksICFyICYmIG8gJiYgby5lbXB0eS5maXJlKCkKICAgICAgICB9LAogICAgICAgIF9xdWV1ZUhvb2tzOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gdCArICJxdWV1ZUhvb2tzIjsKICAgICAgICAgICAgcmV0dXJuIEUuX2RhdGEoZSwgbikgfHwgRS5fZGF0YShlLCBuLCB7CiAgICAgICAgICAgICAgICBlbXB0eTogRS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIEUuX3JlbW92ZURhdGEoZSwgdCArICJxdWV1ZSIpLCBFLl9yZW1vdmVEYXRhKGUsIG4pCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgIH0pLCBFLmZuLmV4dGVuZCh7CiAgICAgICAgcXVldWU6IGZ1bmN0aW9uKHQsIG4pIHsKICAgICAgICAgICAgdmFyIGUgPSAyOwogICAgICAgICAgICByZXR1cm4gInN0cmluZyIgIT0gdHlwZW9mIHQgJiYgKG4gPSB0LCB0ID0gImZ4IiwgZS0tKSwgYXJndW1lbnRzLmxlbmd0aCA8IGUgPyBFLnF1ZXVlKHRoaXNbMF0sIHQpIDogdm9pZCAwID09PSBuID8gdGhpcyA6IHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gRS5xdWV1ZSh0aGlzLCB0LCBuKTsKICAgICAgICAgICAgICAgIEUuX3F1ZXVlSG9va3ModGhpcywgdCksICJmeCIgPT09IHQgJiYgImlucHJvZ3Jlc3MiICE9PSBlWzBdICYmIEUuZGVxdWV1ZSh0aGlzLCB0KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgZGVxdWV1ZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgRS5kZXF1ZXVlKHRoaXMsIGUpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBjbGVhclF1ZXVlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnF1ZXVlKGUgfHwgImZ4IiwgW10pCiAgICAgICAgfSwKICAgICAgICBwcm9taXNlOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuLCByID0gMSwKICAgICAgICAgICAgICAgIGkgPSBFLkRlZmVycmVkKCksCiAgICAgICAgICAgICAgICBvID0gdGhpcywKICAgICAgICAgICAgICAgIGEgPSB0aGlzLmxlbmd0aCwKICAgICAgICAgICAgICAgIHMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAtLXIgfHwgaS5yZXNvbHZlV2l0aChvLCBbb10pCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBmb3IgKCJzdHJpbmciICE9IHR5cGVvZiBlICYmICh0ID0gZSwgZSA9IHZvaWQgMCksIGUgPSBlIHx8ICJmeCI7IGEtLTspKG4gPSBFLl9kYXRhKG9bYV0sIGUgKyAicXVldWVIb29rcyIpKSAmJiBuLmVtcHR5ICYmIChyKyssIG4uZW1wdHkuYWRkKHMpKTsKICAgICAgICAgICAgcmV0dXJuIHMoKSwgaS5wcm9taXNlKHQpCiAgICAgICAgfQogICAgfSksIHYuc2hyaW5rV3JhcEJsb2NrcyA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBudWxsICE9IE0gPyBNIDogKE0gPSAhMSwgKHQgPSBoLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF0pICYmIHQuc3R5bGUgPyAoZSA9IGguY3JlYXRlRWxlbWVudCgiZGl2IiksIChuID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc3R5bGUuY3NzVGV4dCA9ICJwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MDt3aWR0aDowO2hlaWdodDowO3RvcDowO2xlZnQ6LTk5OTlweCIsIHQuYXBwZW5kQ2hpbGQobikuYXBwZW5kQ2hpbGQoZSksIHZvaWQgMCAhPT0gZS5zdHlsZS56b29tICYmIChlLnN0eWxlLmNzc1RleHQgPSAiLXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjA7Ym9yZGVyOjA7cGFkZGluZzoxcHg7d2lkdGg6MXB4O3pvb206MSIsIGUuYXBwZW5kQ2hpbGQoaC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc3R5bGUud2lkdGggPSAiNXB4IiwgTSA9IDMgIT09IGUub2Zmc2V0V2lkdGgpLCB0LnJlbW92ZUNoaWxkKG4pLCBNKSA6IHZvaWQgMCk7CiAgICAgICAgdmFyIGUsIHQsIG4KICAgIH07CiAgICB2YXIgeiA9IC9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLAogICAgICAgIFggPSBuZXcgUmVnRXhwKCJeKD86KFsrLV0pPXwpKCIgKyB6ICsgIikoW2EteiVdKikkIiwgImkiKSwKICAgICAgICBVID0gWyJUb3AiLCAiUmlnaHQiLCAiQm90dG9tIiwgIkxlZnQiXSwKICAgICAgICBWID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICByZXR1cm4gZSA9IHQgfHwgZSwgIm5vbmUiID09PSBFLmNzcyhlLCAiZGlzcGxheSIpIHx8ICFFLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCwgZSkKICAgICAgICB9OwoKICAgIGZ1bmN0aW9uIFkoZSwgdCwgbiwgcikgewogICAgICAgIHZhciBpLCBvID0gMSwKICAgICAgICAgICAgYSA9IDIwLAogICAgICAgICAgICBzID0gciA/IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHIuY3VyKCkKICAgICAgICAgICAgfSA6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIEUuY3NzKGUsIHQsICIiKQogICAgICAgICAgICB9LAogICAgICAgICAgICB1ID0gcygpLAogICAgICAgICAgICBsID0gbiAmJiBuWzNdIHx8IChFLmNzc051bWJlclt0XSA/ICIiIDogInB4IiksCiAgICAgICAgICAgIGMgPSAoRS5jc3NOdW1iZXJbdF0gfHwgInB4IiAhPT0gbCAmJiArdSkgJiYgWC5leGVjKEUuY3NzKGUsIHQpKTsKICAgICAgICBpZiAoYyAmJiBjWzNdICE9PSBsKQogICAgICAgICAgICBmb3IgKGwgPSBsIHx8IGNbM10sIG4gPSBuIHx8IFtdLCBjID0gK3UgfHwgMTsgYyAvPSBvID0gbyB8fCAiLjUiLCBFLnN0eWxlKGUsIHQsIGMgKyBsKSwgbyAhPT0gKG8gPSBzKCkgLyB1KSAmJiAxICE9PSBvICYmIC0tYTspOwogICAgICAgIHJldHVybiBuICYmIChjID0gK2MgfHwgK3UgfHwgMCwgaSA9IG5bMV0gPyBjICsgKG5bMV0gKyAxKSAqIG5bMl0gOiArblsyXSwgciAmJiAoci51bml0ID0gbCwgci5zdGFydCA9IGMsIHIuZW5kID0gaSkpLCBpCiAgICB9CiAgICB2YXIgSiwgRywgUSwgSyA9IGZ1bmN0aW9uKGUsIHQsIG4sIHIsIGksIG8sIGEpIHsKICAgICAgICAgICAgdmFyIHMgPSAwLAogICAgICAgICAgICAgICAgdSA9IGUubGVuZ3RoLAogICAgICAgICAgICAgICAgbCA9IG51bGwgPT0gbjsKICAgICAgICAgICAgaWYgKCJvYmplY3QiID09PSBFLnR5cGUobikpCiAgICAgICAgICAgICAgICBmb3IgKHMgaW4gaSA9ICEwLCBuKSBLKGUsIHQsIHMsIG5bc10sICEwLCBvLCBhKTsKICAgICAgICAgICAgZWxzZSBpZiAodm9pZCAwICE9PSByICYmIChpID0gITAsIEUuaXNGdW5jdGlvbihyKSB8fCAoYSA9ICEwKSwgbCAmJiAodCA9IGEgPyAodC5jYWxsKGUsIHIpLCBudWxsKSA6IChsID0gdCwgZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBsLmNhbGwoRShlKSwgbikKICAgICAgICAgICAgICAgIH0pKSwgdCkpCiAgICAgICAgICAgICAgICBmb3IgKDsgcyA8IHU7IHMrKykgdChlW3NdLCBuLCBhID8gciA6IHIuY2FsbChlW3NdLCBzLCB0KGVbc10sIG4pKSk7CiAgICAgICAgICAgIHJldHVybiBpID8gZSA6IGwgPyB0LmNhbGwoZSkgOiB1ID8gdChlWzBdLCBuKSA6IG8KICAgICAgICB9LAogICAgICAgIFogPSAvXig/OmNoZWNrYm94fHJhZGlvKSQvaSwKICAgICAgICBlZSA9IC88KFtcdzotXSspLywKICAgICAgICB0ZSA9IC9eJHxcLyg/OmphdmF8ZWNtYSlzY3JpcHQvaSwKICAgICAgICBuZSA9IC9eXHMrLywKICAgICAgICByZSA9ICJhYmJyfGFydGljbGV8YXNpZGV8YXVkaW98YmRpfGNhbnZhc3xkYXRhfGRhdGFsaXN0fGRldGFpbHN8ZGlhbG9nfGZpZ2NhcHRpb258ZmlndXJlfGZvb3RlcnxoZWFkZXJ8aGdyb3VwfG1haW58bWFya3xtZXRlcnxuYXZ8b3V0cHV0fHBpY3R1cmV8cHJvZ3Jlc3N8c2VjdGlvbnxzdW1tYXJ5fHRlbXBsYXRlfHRpbWV8dmlkZW8iOwoKICAgIGZ1bmN0aW9uIGllKGUpIHsKICAgICAgICB2YXIgdCA9IHJlLnNwbGl0KCJ8IiksCiAgICAgICAgICAgIG4gPSBlLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKICAgICAgICBpZiAobi5jcmVhdGVFbGVtZW50KQogICAgICAgICAgICBmb3IgKDsgdC5sZW5ndGg7KSBuLmNyZWF0ZUVsZW1lbnQodC5wb3AoKSk7CiAgICAgICAgcmV0dXJuIG4KICAgIH0KICAgIEogPSBoLmNyZWF0ZUVsZW1lbnQoImRpdiIpLCBHID0gaC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksIFEgPSBoLmNyZWF0ZUVsZW1lbnQoImlucHV0IiksIEouaW5uZXJIVE1MID0gIiAgPGxpbmsvPjx0YWJsZT48L3RhYmxlPjxhIGhyZWY9Jy9hJz5hPC9hPjxpbnB1dCB0eXBlPSdjaGVja2JveCcvPiIsIHYubGVhZGluZ1doaXRlc3BhY2UgPSAzID09PSBKLmZpcnN0Q2hpbGQubm9kZVR5cGUsIHYudGJvZHkgPSAhSi5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKS5sZW5ndGgsIHYuaHRtbFNlcmlhbGl6ZSA9ICEhSi5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLmxlbmd0aCwgdi5odG1sNUNsb25lID0gIjw6bmF2PjwvOm5hdj4iICE9PSBoLmNyZWF0ZUVsZW1lbnQoIm5hdiIpLmNsb25lTm9kZSghMCkub3V0ZXJIVE1MLCBRLnR5cGUgPSAiY2hlY2tib3giLCBRLmNoZWNrZWQgPSAhMCwgRy5hcHBlbmRDaGlsZChRKSwgdi5hcHBlbmRDaGVja2VkID0gUS5jaGVja2VkLCBKLmlubmVySFRNTCA9ICI8dGV4dGFyZWE+eDwvdGV4dGFyZWE+Iiwgdi5ub0Nsb25lQ2hlY2tlZCA9ICEhSi5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWUsIEcuYXBwZW5kQ2hpbGQoSiksIChRID0gaC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS5zZXRBdHRyaWJ1dGUoInR5cGUiLCAicmFkaW8iKSwgUS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCAiY2hlY2tlZCIpLCBRLnNldEF0dHJpYnV0ZSgibmFtZSIsICJ0IiksIEouYXBwZW5kQ2hpbGQoUSksIHYuY2hlY2tDbG9uZSA9IEouY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLCB2Lm5vQ2xvbmVFdmVudCA9ICEhSi5hZGRFdmVudExpc3RlbmVyLCBKW0UuZXhwYW5kb10gPSAxLCB2LmF0dHJpYnV0ZXMgPSAhSi5nZXRBdHRyaWJ1dGUoRS5leHBhbmRvKTsKICAgIHZhciBvZSA9IHsKICAgICAgICBvcHRpb246IFsxLCAiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsICI8L3NlbGVjdD4iXSwKICAgICAgICBsZWdlbmQ6IFsxLCAiPGZpZWxkc2V0PiIsICI8L2ZpZWxkc2V0PiJdLAogICAgICAgIGFyZWE6IFsxLCAiPG1hcD4iLCAiPC9tYXA+Il0sCiAgICAgICAgcGFyYW06IFsxLCAiPG9iamVjdD4iLCAiPC9vYmplY3Q+Il0sCiAgICAgICAgdGhlYWQ6IFsxLCAiPHRhYmxlPiIsICI8L3RhYmxlPiJdLAogICAgICAgIHRyOiBbMiwgIjx0YWJsZT48dGJvZHk+IiwgIjwvdGJvZHk+PC90YWJsZT4iXSwKICAgICAgICBjb2w6IFsyLCAiPHRhYmxlPjx0Ym9keT48L3Rib2R5Pjxjb2xncm91cD4iLCAiPC9jb2xncm91cD48L3RhYmxlPiJdLAogICAgICAgIHRkOiBbMywgIjx0YWJsZT48dGJvZHk+PHRyPiIsICI8L3RyPjwvdGJvZHk+PC90YWJsZT4iXSwKICAgICAgICBfZGVmYXVsdDogdi5odG1sU2VyaWFsaXplID8gWzAsICIiLCAiIl0gOiBbMSwgIlg8ZGl2PiIsICI8L2Rpdj4iXQogICAgfTsKCiAgICBmdW5jdGlvbiBhZShlLCB0KSB7CiAgICAgICAgdmFyIG4sIHIsIGkgPSAwLAogICAgICAgICAgICBvID0gdm9pZCAwICE9PSBlLmdldEVsZW1lbnRzQnlUYWdOYW1lID8gZS5nZXRFbGVtZW50c0J5VGFnTmFtZSh0IHx8ICIqIikgOiB2b2lkIDAgIT09IGUucXVlcnlTZWxlY3RvckFsbCA/IGUucXVlcnlTZWxlY3RvckFsbCh0IHx8ICIqIikgOiB2b2lkIDA7CiAgICAgICAgaWYgKCFvKQogICAgICAgICAgICBmb3IgKG8gPSBbXSwgbiA9IGUuY2hpbGROb2RlcyB8fCBlOyBudWxsICE9IChyID0gbltpXSk7IGkrKykgIXQgfHwgRS5ub2RlTmFtZShyLCB0KSA/IG8ucHVzaChyKSA6IEUubWVyZ2UobywgYWUociwgdCkpOwogICAgICAgIHJldHVybiB2b2lkIDAgPT09IHQgfHwgdCAmJiBFLm5vZGVOYW1lKGUsIHQpID8gRS5tZXJnZShbZV0sIG8pIDogbwogICAgfQoKICAgIGZ1bmN0aW9uIHNlKGUsIHQpIHsKICAgICAgICBmb3IgKHZhciBuLCByID0gMDsgbnVsbCAhPSAobiA9IGVbcl0pOyByKyspIEUuX2RhdGEobiwgImdsb2JhbEV2YWwiLCAhdCB8fCBFLl9kYXRhKHRbcl0sICJnbG9iYWxFdmFsIikpCiAgICB9CiAgICBvZS5vcHRncm91cCA9IG9lLm9wdGlvbiwgb2UudGJvZHkgPSBvZS50Zm9vdCA9IG9lLmNvbGdyb3VwID0gb2UuY2FwdGlvbiA9IG9lLnRoZWFkLCBvZS50aCA9IG9lLnRkOwogICAgdmFyIHVlID0gLzx8JiM/XHcrOy8sCiAgICAgICAgbGUgPSAvPHRib2R5L2k7CgogICAgZnVuY3Rpb24gY2UoZSkgewogICAgICAgIFoudGVzdChlLnR5cGUpICYmIChlLmRlZmF1bHRDaGVja2VkID0gZS5jaGVja2VkKQogICAgfQoKICAgIGZ1bmN0aW9uIGRlKGUsIHQsIG4sIHIsIGkpIHsKICAgICAgICBmb3IgKHZhciBvLCBhLCBzLCB1LCBsLCBjLCBkLCBmID0gZS5sZW5ndGgsIHAgPSBpZSh0KSwgaCA9IFtdLCBnID0gMDsgZyA8IGY7IGcrKykKICAgICAgICAgICAgaWYgKChhID0gZVtnXSkgfHwgMCA9PT0gYSkKICAgICAgICAgICAgICAgIGlmICgib2JqZWN0IiA9PT0gRS50eXBlKGEpKSBFLm1lcmdlKGgsIGEubm9kZVR5cGUgPyBbYV0gOiBhKTsKICAgICAgICAgICAgICAgIGVsc2UgaWYgKHVlLnRlc3QoYSkpIHsKICAgICAgICAgICAgZm9yICh1ID0gdSB8fCBwLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCgiZGl2IikpLCBsID0gKGVlLmV4ZWMoYSkgfHwgWyIiLCAiIl0pWzFdLnRvTG93ZXJDYXNlKCksIGQgPSBvZVtsXSB8fCBvZS5fZGVmYXVsdCwgdS5pbm5lckhUTUwgPSBkWzFdICsgRS5odG1sUHJlZmlsdGVyKGEpICsgZFsyXSwgbyA9IGRbMF07IG8tLTspIHUgPSB1Lmxhc3RDaGlsZDsKICAgICAgICAgICAgaWYgKCF2LmxlYWRpbmdXaGl0ZXNwYWNlICYmIG5lLnRlc3QoYSkgJiYgaC5wdXNoKHQuY3JlYXRlVGV4dE5vZGUobmUuZXhlYyhhKVswXSkpLCAhdi50Ym9keSkKICAgICAgICAgICAgICAgIGZvciAobyA9IChhID0gInRhYmxlIiAhPT0gbCB8fCBsZS50ZXN0KGEpID8gIjx0YWJsZT4iICE9PSBkWzFdIHx8IGxlLnRlc3QoYSkgPyAwIDogdSA6IHUuZmlyc3RDaGlsZCkgJiYgYS5jaGlsZE5vZGVzLmxlbmd0aDsgby0tOykgRS5ub2RlTmFtZShjID0gYS5jaGlsZE5vZGVzW29dLCAidGJvZHkiKSAmJiAhYy5jaGlsZE5vZGVzLmxlbmd0aCAmJiBhLnJlbW92ZUNoaWxkKGMpOwogICAgICAgICAgICBmb3IgKEUubWVyZ2UoaCwgdS5jaGlsZE5vZGVzKSwgdS50ZXh0Q29udGVudCA9ICIiOyB1LmZpcnN0Q2hpbGQ7KSB1LnJlbW92ZUNoaWxkKHUuZmlyc3RDaGlsZCk7CiAgICAgICAgICAgIHUgPSBwLmxhc3RDaGlsZAogICAgICAgIH0gZWxzZSBoLnB1c2godC5jcmVhdGVUZXh0Tm9kZShhKSk7CiAgICAgICAgZm9yICh1ICYmIHAucmVtb3ZlQ2hpbGQodSksIHYuYXBwZW5kQ2hlY2tlZCB8fCBFLmdyZXAoYWUoaCwgImlucHV0IiksIGNlKSwgZyA9IDA7IGEgPSBoW2crK107KQogICAgICAgICAgICBpZiAociAmJiAtMSA8IEUuaW5BcnJheShhLCByKSkgaSAmJiBpLnB1c2goYSk7CiAgICAgICAgICAgIGVsc2UgaWYgKHMgPSBFLmNvbnRhaW5zKGEub3duZXJEb2N1bWVudCwgYSksIHUgPSBhZShwLmFwcGVuZENoaWxkKGEpLCAic2NyaXB0IiksIHMgJiYgc2UodSksIG4pCiAgICAgICAgICAgIGZvciAobyA9IDA7IGEgPSB1W28rK107KSB0ZS50ZXN0KGEudHlwZSB8fCAiIikgJiYgbi5wdXNoKGEpOwogICAgICAgIHJldHVybiB1ID0gbnVsbCwgcAogICAgfSEgZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGUsIHQsIG4gPSBoLmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgICAgIGZvciAoZSBpbiB7CiAgICAgICAgICAgICAgICBzdWJtaXQ6ICEwLAogICAgICAgICAgICAgICAgY2hhbmdlOiAhMCwKICAgICAgICAgICAgICAgIGZvY3VzaW46ICEwCiAgICAgICAgICAgIH0pIHQgPSAib24iICsgZSwgKHZbZV0gPSB0IGluIEMpIHx8IChuLnNldEF0dHJpYnV0ZSh0LCAidCIpLCB2W2VdID0gITEgPT09IG4uYXR0cmlidXRlc1t0XS5leHBhbmRvKTsKICAgICAgICBuID0gbnVsbAogICAgfSgpOwogICAgdmFyIGZlID0gL14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWEpJC9pLAogICAgICAgIHBlID0gL15rZXkvLAogICAgICAgIGhlID0gL14oPzptb3VzZXxwb2ludGVyfGNvbnRleHRtZW51fGRyYWd8ZHJvcCl8Y2xpY2svLAogICAgICAgIGdlID0gL14oPzpmb2N1c2luZm9jdXN8Zm9jdXNvdXRibHVyKSQvLAogICAgICAgIG1lID0gL14oW14uXSopKD86XC4oLispfCkvOwoKICAgIGZ1bmN0aW9uIHZlKCkgewogICAgICAgIHJldHVybiAhMAogICAgfQoKICAgIGZ1bmN0aW9uIHllKCkgewogICAgICAgIHJldHVybiAhMQogICAgfQoKICAgIGZ1bmN0aW9uIHhlKCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBoLmFjdGl2ZUVsZW1lbnQKICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgfQoKICAgIGZ1bmN0aW9uIGJlKGUsIHQsIG4sIHIsIGksIG8pIHsKICAgICAgICB2YXIgYSwgczsKICAgICAgICBpZiAoIm9iamVjdCIgPT0gdHlwZW9mIHQpIHsKICAgICAgICAgICAgZm9yIChzIGluICJzdHJpbmciICE9IHR5cGVvZiBuICYmIChyID0gciB8fCBuLCBuID0gdm9pZCAwKSwgdCkgYmUoZSwgcywgbiwgciwgdFtzXSwgbyk7CiAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgfQogICAgICAgIGlmIChudWxsID09IHIgJiYgbnVsbCA9PSBpID8gKGkgPSBuLCByID0gbiA9IHZvaWQgMCkgOiBudWxsID09IGkgJiYgKCJzdHJpbmciID09IHR5cGVvZiBuID8gKGkgPSByLCByID0gdm9pZCAwKSA6IChpID0gciwgciA9IG4sIG4gPSB2b2lkIDApKSwgITEgPT09IGkpIGkgPSB5ZTsKICAgICAgICBlbHNlIGlmICghaSkgcmV0dXJuIGU7CiAgICAgICAgcmV0dXJuIDEgPT09IG8gJiYgKGEgPSBpLCAoaSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIEUoKS5vZmYoZSksIGEuYXBwbHkodGhpcywgYXJndW1lbnRzKQogICAgICAgIH0pLmd1aWQgPSBhLmd1aWQgfHwgKGEuZ3VpZCA9IEUuZ3VpZCsrKSksIGUuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgRS5ldmVudC5hZGQodGhpcywgdCwgaSwgciwgbikKICAgICAgICB9KQogICAgfQogICAgRS5ldmVudCA9IHsKICAgICAgICBnbG9iYWw6IHt9LAogICAgICAgIGFkZDogZnVuY3Rpb24oZSwgdCwgbiwgciwgaSkgewogICAgICAgICAgICB2YXIgbywgYSwgcywgdSwgbCwgYywgZCwgZiwgcCwgaCwgZywgbSA9IEUuX2RhdGEoZSk7CiAgICAgICAgICAgIGlmIChtKSB7CiAgICAgICAgICAgICAgICBmb3IgKG4uaGFuZGxlciAmJiAobiA9ICh1ID0gbikuaGFuZGxlciwgaSA9IHUuc2VsZWN0b3IpLCBuLmd1aWQgfHwgKG4uZ3VpZCA9IEUuZ3VpZCsrKSwgKGEgPSBtLmV2ZW50cykgfHwgKGEgPSBtLmV2ZW50cyA9IHt9KSwgKGMgPSBtLmhhbmRsZSkgfHwgKChjID0gbS5oYW5kbGUgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2b2lkIDAgPT09IEUgfHwgZSAmJiBFLmV2ZW50LnRyaWdnZXJlZCA9PT0gZS50eXBlID8gdm9pZCAwIDogRS5ldmVudC5kaXNwYXRjaC5hcHBseShjLmVsZW0sIGFyZ3VtZW50cykKICAgICAgICAgICAgICAgICAgICB9KS5lbGVtID0gZSksIHMgPSAodCA9ICh0IHx8ICIiKS5tYXRjaChxKSB8fCBbIiJdKS5sZW5ndGg7IHMtLTspIHAgPSBnID0gKG8gPSBtZS5leGVjKHRbc10pIHx8IFtdKVsxXSwgaCA9IChvWzJdIHx8ICIiKS5zcGxpdCgiLiIpLnNvcnQoKSwgcCAmJiAobCA9IEUuZXZlbnQuc3BlY2lhbFtwXSB8fCB7fSwgcCA9IChpID8gbC5kZWxlZ2F0ZVR5cGUgOiBsLmJpbmRUeXBlKSB8fCBwLCBsID0gRS5ldmVudC5zcGVjaWFsW3BdIHx8IHt9LCBkID0gRS5leHRlbmQoewogICAgICAgICAgICAgICAgICAgIHR5cGU6IHAsCiAgICAgICAgICAgICAgICAgICAgb3JpZ1R5cGU6IGcsCiAgICAgICAgICAgICAgICAgICAgZGF0YTogciwKICAgICAgICAgICAgICAgICAgICBoYW5kbGVyOiBuLAogICAgICAgICAgICAgICAgICAgIGd1aWQ6IG4uZ3VpZCwKICAgICAgICAgICAgICAgICAgICBzZWxlY3RvcjogaSwKICAgICAgICAgICAgICAgICAgICBuZWVkc0NvbnRleHQ6IGkgJiYgRS5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGkpLAogICAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZTogaC5qb2luKCIuIikKICAgICAgICAgICAgICAgIH0sIHUpLCAoZiA9IGFbcF0pIHx8ICgoZiA9IGFbcF0gPSBbXSkuZGVsZWdhdGVDb3VudCA9IDAsIGwuc2V0dXAgJiYgITEgIT09IGwuc2V0dXAuY2FsbChlLCByLCBoLCBjKSB8fCAoZS5hZGRFdmVudExpc3RlbmVyID8gZS5hZGRFdmVudExpc3RlbmVyKHAsIGMsICExKSA6IGUuYXR0YWNoRXZlbnQgJiYgZS5hdHRhY2hFdmVudCgib24iICsgcCwgYykpKSwgbC5hZGQgJiYgKGwuYWRkLmNhbGwoZSwgZCksIGQuaGFuZGxlci5ndWlkIHx8IChkLmhhbmRsZXIuZ3VpZCA9IG4uZ3VpZCkpLCBpID8gZi5zcGxpY2UoZi5kZWxlZ2F0ZUNvdW50KyssIDAsIGQpIDogZi5wdXNoKGQpLCBFLmV2ZW50Lmdsb2JhbFtwXSA9ICEwKTsKICAgICAgICAgICAgICAgIGUgPSBudWxsCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHJlbW92ZTogZnVuY3Rpb24oZSwgdCwgbiwgciwgaSkgewogICAgICAgICAgICB2YXIgbywgYSwgcywgdSwgbCwgYywgZCwgZiwgcCwgaCwgZywgbSA9IEUuaGFzRGF0YShlKSAmJiBFLl9kYXRhKGUpOwogICAgICAgICAgICBpZiAobSAmJiAoYyA9IG0uZXZlbnRzKSkgewogICAgICAgICAgICAgICAgZm9yIChsID0gKHQgPSAodCB8fCAiIikubWF0Y2gocSkgfHwgWyIiXSkubGVuZ3RoOyBsLS07KQogICAgICAgICAgICAgICAgICAgIGlmIChwID0gZyA9IChzID0gbWUuZXhlYyh0W2xdKSB8fCBbXSlbMV0sIGggPSAoc1syXSB8fCAiIikuc3BsaXQoIi4iKS5zb3J0KCksIHApIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChkID0gRS5ldmVudC5zcGVjaWFsW3BdIHx8IHt9LCBmID0gY1twID0gKHIgPyBkLmRlbGVnYXRlVHlwZSA6IGQuYmluZFR5cGUpIHx8IHBdIHx8IFtdLCBzID0gc1syXSAmJiBuZXcgUmVnRXhwKCIoXnxcXC4pIiArIGguam9pbigiXFwuKD86LipcXC58KSIpICsgIihcXC58JCkiKSwgdSA9IG8gPSBmLmxlbmd0aDsgby0tOykgYSA9IGZbb10sICFpICYmIGcgIT09IGEub3JpZ1R5cGUgfHwgbiAmJiBuLmd1aWQgIT09IGEuZ3VpZCB8fCBzICYmICFzLnRlc3QoYS5uYW1lc3BhY2UpIHx8IHIgJiYgciAhPT0gYS5zZWxlY3RvciAmJiAoIioqIiAhPT0gciB8fCAhYS5zZWxlY3RvcikgfHwgKGYuc3BsaWNlKG8sIDEpLCBhLnNlbGVjdG9yICYmIGYuZGVsZWdhdGVDb3VudC0tLCBkLnJlbW92ZSAmJiBkLnJlbW92ZS5jYWxsKGUsIGEpKTsKICAgICAgICAgICAgICAgICAgICAgICAgdSAmJiAhZi5sZW5ndGggJiYgKGQudGVhcmRvd24gJiYgITEgIT09IGQudGVhcmRvd24uY2FsbChlLCBoLCBtLmhhbmRsZSkgfHwgRS5yZW1vdmVFdmVudChlLCBwLCBtLmhhbmRsZSksIGRlbGV0ZSBjW3BdKQogICAgICAgICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHAgaW4gYykgRS5ldmVudC5yZW1vdmUoZSwgcCArIHRbbF0sIG4sIHIsICEwKTsKICAgICAgICAgICAgICAgIEUuaXNFbXB0eU9iamVjdChjKSAmJiAoZGVsZXRlIG0uaGFuZGxlLCBFLl9yZW1vdmVEYXRhKGUsICJldmVudHMiKSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgdHJpZ2dlcjogZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICB2YXIgaSwgbywgYSwgcywgdSwgbCwgYywgZCA9IFtuIHx8IGhdLAogICAgICAgICAgICAgICAgZiA9IG0uY2FsbChlLCAidHlwZSIpID8gZS50eXBlIDogZSwKICAgICAgICAgICAgICAgIHAgPSBtLmNhbGwoZSwgIm5hbWVzcGFjZSIpID8gZS5uYW1lc3BhY2Uuc3BsaXQoIi4iKSA6IFtdOwogICAgICAgICAgICBpZiAoYSA9IGwgPSBuID0gbiB8fCBoLCAzICE9PSBuLm5vZGVUeXBlICYmIDggIT09IG4ubm9kZVR5cGUgJiYgIWdlLnRlc3QoZiArIEUuZXZlbnQudHJpZ2dlcmVkKSAmJiAoLTEgPCBmLmluZGV4T2YoIi4iKSAmJiAoZiA9IChwID0gZi5zcGxpdCgiLiIpKS5zaGlmdCgpLCBwLnNvcnQoKSksIG8gPSBmLmluZGV4T2YoIjoiKSA8IDAgJiYgIm9uIiArIGYsIChlID0gZVtFLmV4cGFuZG9dID8gZSA6IG5ldyBFLkV2ZW50KGYsICJvYmplY3QiID09IHR5cGVvZiBlICYmIGUpKS5pc1RyaWdnZXIgPSByID8gMiA6IDMsIGUubmFtZXNwYWNlID0gcC5qb2luKCIuIiksIGUucm5hbWVzcGFjZSA9IGUubmFtZXNwYWNlID8gbmV3IFJlZ0V4cCgiKF58XFwuKSIgKyBwLmpvaW4oIlxcLig/Oi4qXFwufCkiKSArICIoXFwufCQpIikgOiBudWxsLCBlLnJlc3VsdCA9IHZvaWQgMCwgZS50YXJnZXQgfHwgKGUudGFyZ2V0ID0gbiksIHQgPSBudWxsID09IHQgPyBbZV0gOiBFLm1ha2VBcnJheSh0LCBbZV0pLCB1ID0gRS5ldmVudC5zcGVjaWFsW2ZdIHx8IHt9LCByIHx8ICF1LnRyaWdnZXIgfHwgITEgIT09IHUudHJpZ2dlci5hcHBseShuLCB0KSkpIHsKICAgICAgICAgICAgICAgIGlmICghciAmJiAhdS5ub0J1YmJsZSAmJiAhRS5pc1dpbmRvdyhuKSkgewogICAgICAgICAgICAgICAgICAgIGZvciAocyA9IHUuZGVsZWdhdGVUeXBlIHx8IGYsIGdlLnRlc3QocyArIGYpIHx8IChhID0gYS5wYXJlbnROb2RlKTsgYTsgYSA9IGEucGFyZW50Tm9kZSkgZC5wdXNoKGEpLCBsID0gYTsKICAgICAgICAgICAgICAgICAgICBsID09PSAobi5vd25lckRvY3VtZW50IHx8IGgpICYmIGQucHVzaChsLmRlZmF1bHRWaWV3IHx8IGwucGFyZW50V2luZG93IHx8IEMpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBmb3IgKGMgPSAwOwogICAgICAgICAgICAgICAgICAgIChhID0gZFtjKytdKSAmJiAhZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpOykgZS50eXBlID0gMSA8IGMgPyBzIDogdS5iaW5kVHlwZSB8fCBmLCAoaSA9IChFLl9kYXRhKGEsICJldmVudHMiKSB8fCB7fSlbZS50eXBlXSAmJiBFLl9kYXRhKGEsICJoYW5kbGUiKSkgJiYgaS5hcHBseShhLCB0KSwgKGkgPSBvICYmIGFbb10pICYmIGkuYXBwbHkgJiYgTyhhKSAmJiAoZS5yZXN1bHQgPSBpLmFwcGx5KGEsIHQpLCAhMSA9PT0gZS5yZXN1bHQgJiYgZS5wcmV2ZW50RGVmYXVsdCgpKTsKICAgICAgICAgICAgICAgIGlmIChlLnR5cGUgPSBmLCAhciAmJiAhZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSAmJiAoIXUuX2RlZmF1bHQgfHwgITEgPT09IHUuX2RlZmF1bHQuYXBwbHkoZC5wb3AoKSwgdCkpICYmIE8obikgJiYgbyAmJiBuW2ZdICYmICFFLmlzV2luZG93KG4pKSB7CiAgICAgICAgICAgICAgICAgICAgKGwgPSBuW29dKSAmJiAobltvXSA9IG51bGwpLCBFLmV2ZW50LnRyaWdnZXJlZCA9IGY7CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgbltmXSgpCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgICAgICBFLmV2ZW50LnRyaWdnZXJlZCA9IHZvaWQgMCwgbCAmJiAobltvXSA9IGwpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZS5yZXN1bHQKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgZGlzcGF0Y2g6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgZSA9IEUuZXZlbnQuZml4KGUpOwogICAgICAgICAgICB2YXIgdCwgbiwgciwgaSwgbywgYSA9IFtdLAogICAgICAgICAgICAgICAgcyA9IGMuY2FsbChhcmd1bWVudHMpLAogICAgICAgICAgICAgICAgdSA9IChFLl9kYXRhKHRoaXMsICJldmVudHMiKSB8fCB7fSlbZS50eXBlXSB8fCBbXSwKICAgICAgICAgICAgICAgIGwgPSBFLmV2ZW50LnNwZWNpYWxbZS50eXBlXSB8fCB7fTsKICAgICAgICAgICAgaWYgKChzWzBdID0gZSkuZGVsZWdhdGVUYXJnZXQgPSB0aGlzLCAhbC5wcmVEaXNwYXRjaCB8fCAhMSAhPT0gbC5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsIGUpKSB7CiAgICAgICAgICAgICAgICBmb3IgKGEgPSBFLmV2ZW50LmhhbmRsZXJzLmNhbGwodGhpcywgZSwgdSksIHQgPSAwOwogICAgICAgICAgICAgICAgICAgIChpID0gYVt0KytdKSAmJiAhZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpOykKICAgICAgICAgICAgICAgICAgICBmb3IgKGUuY3VycmVudFRhcmdldCA9IGkuZWxlbSwgbiA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIChvID0gaS5oYW5kbGVyc1tuKytdKSAmJiAhZS5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpOykgZS5ybmFtZXNwYWNlICYmICFlLnJuYW1lc3BhY2UudGVzdChvLm5hbWVzcGFjZSkgfHwgKGUuaGFuZGxlT2JqID0gbywgZS5kYXRhID0gby5kYXRhLCB2b2lkIDAgIT09IChyID0gKChFLmV2ZW50LnNwZWNpYWxbby5vcmlnVHlwZV0gfHwge30pLmhhbmRsZSB8fCBvLmhhbmRsZXIpLmFwcGx5KGkuZWxlbSwgcykpICYmICExID09PSAoZS5yZXN1bHQgPSByKSAmJiAoZS5wcmV2ZW50RGVmYXVsdCgpLCBlLnN0b3BQcm9wYWdhdGlvbigpKSk7CiAgICAgICAgICAgICAgICByZXR1cm4gbC5wb3N0RGlzcGF0Y2ggJiYgbC5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLCBlKSwgZS5yZXN1bHQKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgaGFuZGxlcnM6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4sIHIsIGksIG8sIGEgPSBbXSwKICAgICAgICAgICAgICAgIHMgPSB0LmRlbGVnYXRlQ291bnQsCiAgICAgICAgICAgICAgICB1ID0gZS50YXJnZXQ7CiAgICAgICAgICAgIGlmIChzICYmIHUubm9kZVR5cGUgJiYgKCJjbGljayIgIT09IGUudHlwZSB8fCBpc05hTihlLmJ1dHRvbikgfHwgZS5idXR0b24gPCAxKSkKICAgICAgICAgICAgICAgIGZvciAoOyB1ICE9IHRoaXM7IHUgPSB1LnBhcmVudE5vZGUgfHwgdGhpcykKICAgICAgICAgICAgICAgICAgICBpZiAoMSA9PT0gdS5ub2RlVHlwZSAmJiAoITAgIT09IHUuZGlzYWJsZWQgfHwgImNsaWNrIiAhPT0gZS50eXBlKSkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSBbXSwgbiA9IDA7IG4gPCBzOyBuKyspIHZvaWQgMCA9PT0gcltpID0gKG8gPSB0W25dKS5zZWxlY3RvciArICIgIl0gJiYgKHJbaV0gPSBvLm5lZWRzQ29udGV4dCA/IC0xIDwgRShpLCB0aGlzKS5pbmRleCh1KSA6IEUuZmluZChpLCB0aGlzLCBudWxsLCBbdV0pLmxlbmd0aCksIHJbaV0gJiYgci5wdXNoKG8pOwogICAgICAgICAgICAgICAgICAgICAgICByLmxlbmd0aCAmJiBhLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbTogdSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJzOiByCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gcyA8IHQubGVuZ3RoICYmIGEucHVzaCh7CiAgICAgICAgICAgICAgICBlbGVtOiB0aGlzLAogICAgICAgICAgICAgICAgaGFuZGxlcnM6IHQuc2xpY2UocykKICAgICAgICAgICAgfSksIGEKICAgICAgICB9LAogICAgICAgIGZpeDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBpZiAoZVtFLmV4cGFuZG9dKSByZXR1cm4gZTsKICAgICAgICAgICAgdmFyIHQsIG4sIHIsIGkgPSBlLnR5cGUsCiAgICAgICAgICAgICAgICBvID0gZSwKICAgICAgICAgICAgICAgIGEgPSB0aGlzLmZpeEhvb2tzW2ldOwogICAgICAgICAgICBmb3IgKGEgfHwgKHRoaXMuZml4SG9va3NbaV0gPSBhID0gaGUudGVzdChpKSA/IHRoaXMubW91c2VIb29rcyA6IHBlLnRlc3QoaSkgPyB0aGlzLmtleUhvb2tzIDoge30pLCByID0gYS5wcm9wcyA/IHRoaXMucHJvcHMuY29uY2F0KGEucHJvcHMpIDogdGhpcy5wcm9wcywgZSA9IG5ldyBFLkV2ZW50KG8pLCB0ID0gci5sZW5ndGg7IHQtLTspIGVbbiA9IHJbdF1dID0gb1tuXTsKICAgICAgICAgICAgcmV0dXJuIGUudGFyZ2V0IHx8IChlLnRhcmdldCA9IG8uc3JjRWxlbWVudCB8fCBoKSwgMyA9PT0gZS50YXJnZXQubm9kZVR5cGUgJiYgKGUudGFyZ2V0ID0gZS50YXJnZXQucGFyZW50Tm9kZSksIGUubWV0YUtleSA9ICEhZS5tZXRhS2V5LCBhLmZpbHRlciA/IGEuZmlsdGVyKGUsIG8pIDogZQogICAgICAgIH0sCiAgICAgICAgcHJvcHM6ICJhbHRLZXkgYnViYmxlcyBjYW5jZWxhYmxlIGN0cmxLZXkgY3VycmVudFRhcmdldCBkZXRhaWwgZXZlbnRQaGFzZSBtZXRhS2V5IHJlbGF0ZWRUYXJnZXQgc2hpZnRLZXkgdGFyZ2V0IHRpbWVTdGFtcCB2aWV3IHdoaWNoIi5zcGxpdCgiICIpLAogICAgICAgIGZpeEhvb2tzOiB7fSwKICAgICAgICBrZXlIb29rczogewogICAgICAgICAgICBwcm9wczogImNoYXIgY2hhckNvZGUga2V5IGtleUNvZGUiLnNwbGl0KCIgIiksCiAgICAgICAgICAgIGZpbHRlcjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gZS53aGljaCAmJiAoZS53aGljaCA9IG51bGwgIT0gdC5jaGFyQ29kZSA/IHQuY2hhckNvZGUgOiB0LmtleUNvZGUpLCBlCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIG1vdXNlSG9va3M6IHsKICAgICAgICAgICAgcHJvcHM6ICJidXR0b24gYnV0dG9ucyBjbGllbnRYIGNsaWVudFkgZnJvbUVsZW1lbnQgb2Zmc2V0WCBvZmZzZXRZIHBhZ2VYIHBhZ2VZIHNjcmVlblggc2NyZWVuWSB0b0VsZW1lbnQiLnNwbGl0KCIgIiksCiAgICAgICAgICAgIGZpbHRlcjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgdmFyIG4sIHIsIGksIG8gPSB0LmJ1dHRvbiwKICAgICAgICAgICAgICAgICAgICBhID0gdC5mcm9tRWxlbWVudDsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IGUucGFnZVggJiYgbnVsbCAhPSB0LmNsaWVudFggJiYgKGkgPSAociA9IGUudGFyZ2V0Lm93bmVyRG9jdW1lbnQgfHwgaCkuZG9jdW1lbnRFbGVtZW50LCBuID0gci5ib2R5LCBlLnBhZ2VYID0gdC5jbGllbnRYICsgKGkgJiYgaS5zY3JvbGxMZWZ0IHx8IG4gJiYgbi5zY3JvbGxMZWZ0IHx8IDApIC0gKGkgJiYgaS5jbGllbnRMZWZ0IHx8IG4gJiYgbi5jbGllbnRMZWZ0IHx8IDApLCBlLnBhZ2VZID0gdC5jbGllbnRZICsgKGkgJiYgaS5zY3JvbGxUb3AgfHwgbiAmJiBuLnNjcm9sbFRvcCB8fCAwKSAtIChpICYmIGkuY2xpZW50VG9wIHx8IG4gJiYgbi5jbGllbnRUb3AgfHwgMCkpLCAhZS5yZWxhdGVkVGFyZ2V0ICYmIGEgJiYgKGUucmVsYXRlZFRhcmdldCA9IGEgPT09IGUudGFyZ2V0ID8gdC50b0VsZW1lbnQgOiBhKSwgZS53aGljaCB8fCB2b2lkIDAgPT09IG8gfHwgKGUud2hpY2ggPSAxICYgbyA/IDEgOiAyICYgbyA/IDMgOiA0ICYgbyA/IDIgOiAwKSwgZQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBzcGVjaWFsOiB7CiAgICAgICAgICAgIGxvYWQ6IHsKICAgICAgICAgICAgICAgIG5vQnViYmxlOiAhMAogICAgICAgICAgICB9LAogICAgICAgICAgICBmb2N1czogewogICAgICAgICAgICAgICAgdHJpZ2dlcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMgIT09IHhlKCkgJiYgdGhpcy5mb2N1cykgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZm9jdXMoKSwgITEKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGRlbGVnYXRlVHlwZTogImZvY3VzaW4iCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGJsdXI6IHsKICAgICAgICAgICAgICAgIHRyaWdnZXI6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzID09PSB4ZSgpICYmIHRoaXMuYmx1ciA/ICh0aGlzLmJsdXIoKSwgITEpIDogdm9pZCAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZGVsZWdhdGVUeXBlOiAiZm9jdXNvdXQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGNsaWNrOiB7CiAgICAgICAgICAgICAgICB0cmlnZ2VyOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gRS5ub2RlTmFtZSh0aGlzLCAiaW5wdXQiKSAmJiAiY2hlY2tib3giID09PSB0aGlzLnR5cGUgJiYgdGhpcy5jbGljayA/ICh0aGlzLmNsaWNrKCksICExKSA6IHZvaWQgMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIF9kZWZhdWx0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEUubm9kZU5hbWUoZS50YXJnZXQsICJhIikKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgYmVmb3JldW5sb2FkOiB7CiAgICAgICAgICAgICAgICBwb3N0RGlzcGF0Y2g6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICB2b2lkIDAgIT09IGUucmVzdWx0ICYmIGUub3JpZ2luYWxFdmVudCAmJiAoZS5vcmlnaW5hbEV2ZW50LnJldHVyblZhbHVlID0gZS5yZXN1bHQpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNpbXVsYXRlOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByID0gRS5leHRlbmQobmV3IEUuRXZlbnQsIG4sIHsKICAgICAgICAgICAgICAgIHR5cGU6IGUsCiAgICAgICAgICAgICAgICBpc1NpbXVsYXRlZDogITAKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIEUuZXZlbnQudHJpZ2dlcihyLCBudWxsLCB0KSwgci5pc0RlZmF1bHRQcmV2ZW50ZWQoKSAmJiBuLnByZXZlbnREZWZhdWx0KCkKICAgICAgICB9CiAgICB9LCBFLnJlbW92ZUV2ZW50ID0gaC5yZW1vdmVFdmVudExpc3RlbmVyID8gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIGUucmVtb3ZlRXZlbnRMaXN0ZW5lciAmJiBlLnJlbW92ZUV2ZW50TGlzdGVuZXIodCwgbikKICAgIH0gOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgdmFyIHIgPSAib24iICsgdDsKICAgICAgICBlLmRldGFjaEV2ZW50ICYmICh2b2lkIDAgPT09IGVbcl0gJiYgKGVbcl0gPSBudWxsKSwgZS5kZXRhY2hFdmVudChyLCBuKSkKICAgIH0sIEUuRXZlbnQgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgcmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBFLkV2ZW50ID8gKGUgJiYgZS50eXBlID8gKHRoaXMub3JpZ2luYWxFdmVudCA9IGUsIHRoaXMudHlwZSA9IGUudHlwZSwgdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQgPSBlLmRlZmF1bHRQcmV2ZW50ZWQgfHwgdm9pZCAwID09PSBlLmRlZmF1bHRQcmV2ZW50ZWQgJiYgITEgPT09IGUucmV0dXJuVmFsdWUgPyB2ZSA6IHllKSA6IHRoaXMudHlwZSA9IGUsIHQgJiYgRS5leHRlbmQodGhpcywgdCksIHRoaXMudGltZVN0YW1wID0gZSAmJiBlLnRpbWVTdGFtcCB8fCBFLm5vdygpLCB2b2lkKHRoaXNbRS5leHBhbmRvXSA9ICEwKSkgOiBuZXcgRS5FdmVudChlLCB0KQogICAgfSwgRS5FdmVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgY29uc3RydWN0b3I6IEUuRXZlbnQsCiAgICAgICAgaXNEZWZhdWx0UHJldmVudGVkOiB5ZSwKICAgICAgICBpc1Byb3BhZ2F0aW9uU3RvcHBlZDogeWUsCiAgICAgICAgaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ6IHllLAogICAgICAgIHByZXZlbnREZWZhdWx0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzLm9yaWdpbmFsRXZlbnQ7CiAgICAgICAgICAgIHRoaXMuaXNEZWZhdWx0UHJldmVudGVkID0gdmUsIGUgJiYgKGUucHJldmVudERlZmF1bHQgPyBlLnByZXZlbnREZWZhdWx0KCkgOiBlLnJldHVyblZhbHVlID0gITEpCiAgICAgICAgfSwKICAgICAgICBzdG9wUHJvcGFnYXRpb246IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IHRoaXMub3JpZ2luYWxFdmVudDsKICAgICAgICAgICAgdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZCA9IHZlLCBlICYmICF0aGlzLmlzU2ltdWxhdGVkICYmIChlLnN0b3BQcm9wYWdhdGlvbiAmJiBlLnN0b3BQcm9wYWdhdGlvbigpLCBlLmNhbmNlbEJ1YmJsZSA9ICEwKQogICAgICAgIH0sCiAgICAgICAgc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzLm9yaWdpbmFsRXZlbnQ7CiAgICAgICAgICAgIHRoaXMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQgPSB2ZSwgZSAmJiBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiAmJiBlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLCB0aGlzLnN0b3BQcm9wYWdhdGlvbigpCiAgICAgICAgfQogICAgfSwgRS5lYWNoKHsKICAgICAgICBtb3VzZWVudGVyOiAibW91c2VvdmVyIiwKICAgICAgICBtb3VzZWxlYXZlOiAibW91c2VvdXQiLAogICAgICAgIHBvaW50ZXJlbnRlcjogInBvaW50ZXJvdmVyIiwKICAgICAgICBwb2ludGVybGVhdmU6ICJwb2ludGVyb3V0IgogICAgfSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgIEUuZXZlbnQuc3BlY2lhbFtlXSA9IHsKICAgICAgICAgICAgZGVsZWdhdGVUeXBlOiBpLAogICAgICAgICAgICBiaW5kVHlwZTogaSwKICAgICAgICAgICAgaGFuZGxlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgbiA9IGUucmVsYXRlZFRhcmdldCwKICAgICAgICAgICAgICAgICAgICByID0gZS5oYW5kbGVPYmo7CiAgICAgICAgICAgICAgICByZXR1cm4gbiAmJiAobiA9PT0gdGhpcyB8fCBFLmNvbnRhaW5zKHRoaXMsIG4pKSB8fCAoZS50eXBlID0gci5vcmlnVHlwZSwgdCA9IHIuaGFuZGxlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpLCBlLnR5cGUgPSBpKSwgdAogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIHYuc3VibWl0IHx8IChFLmV2ZW50LnNwZWNpYWwuc3VibWl0ID0gewogICAgICAgIHNldHVwOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuICFFLm5vZGVOYW1lKHRoaXMsICJmb3JtIikgJiYgdm9pZCBFLmV2ZW50LmFkZCh0aGlzLCAiY2xpY2suX3N1Ym1pdCBrZXlwcmVzcy5fc3VibWl0IiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBlLnRhcmdldCwKICAgICAgICAgICAgICAgICAgICBuID0gRS5ub2RlTmFtZSh0LCAiaW5wdXQiKSB8fCBFLm5vZGVOYW1lKHQsICJidXR0b24iKSA/IEUucHJvcCh0LCAiZm9ybSIpIDogdm9pZCAwOwogICAgICAgICAgICAgICAgbiAmJiAhRS5fZGF0YShuLCAic3VibWl0IikgJiYgKEUuZXZlbnQuYWRkKG4sICJzdWJtaXQuX3N1Ym1pdCIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICBlLl9zdWJtaXRCdWJibGUgPSAhMAogICAgICAgICAgICAgICAgfSksIEUuX2RhdGEobiwgInN1Ym1pdCIsICEwKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHBvc3REaXNwYXRjaDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlLl9zdWJtaXRCdWJibGUgJiYgKGRlbGV0ZSBlLl9zdWJtaXRCdWJibGUsIHRoaXMucGFyZW50Tm9kZSAmJiAhZS5pc1RyaWdnZXIgJiYgRS5ldmVudC5zaW11bGF0ZSgic3VibWl0IiwgdGhpcy5wYXJlbnROb2RlLCBlKSkKICAgICAgICB9LAogICAgICAgIHRlYXJkb3duOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuICFFLm5vZGVOYW1lKHRoaXMsICJmb3JtIikgJiYgdm9pZCBFLmV2ZW50LnJlbW92ZSh0aGlzLCAiLl9zdWJtaXQiKQogICAgICAgIH0KICAgIH0pLCB2LmNoYW5nZSB8fCAoRS5ldmVudC5zcGVjaWFsLmNoYW5nZSA9IHsKICAgICAgICBzZXR1cDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBmZS50ZXN0KHRoaXMubm9kZU5hbWUpID8gKCJjaGVja2JveCIgIT09IHRoaXMudHlwZSAmJiAicmFkaW8iICE9PSB0aGlzLnR5cGUgfHwgKEUuZXZlbnQuYWRkKHRoaXMsICJwcm9wZXJ0eWNoYW5nZS5fY2hhbmdlIiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgImNoZWNrZWQiID09PSBlLm9yaWdpbmFsRXZlbnQucHJvcGVydHlOYW1lICYmICh0aGlzLl9qdXN0Q2hhbmdlZCA9ICEwKQogICAgICAgICAgICB9KSwgRS5ldmVudC5hZGQodGhpcywgImNsaWNrLl9jaGFuZ2UiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9qdXN0Q2hhbmdlZCAmJiAhZS5pc1RyaWdnZXIgJiYgKHRoaXMuX2p1c3RDaGFuZ2VkID0gITEpLCBFLmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLCB0aGlzLCBlKQogICAgICAgICAgICB9KSksICExKSA6IHZvaWQgRS5ldmVudC5hZGQodGhpcywgImJlZm9yZWFjdGl2YXRlLl9jaGFuZ2UiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGUudGFyZ2V0OwogICAgICAgICAgICAgICAgZmUudGVzdCh0Lm5vZGVOYW1lKSAmJiAhRS5fZGF0YSh0LCAiY2hhbmdlIikgJiYgKEUuZXZlbnQuYWRkKHQsICJjaGFuZ2UuX2NoYW5nZSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAhdGhpcy5wYXJlbnROb2RlIHx8IGUuaXNTaW11bGF0ZWQgfHwgZS5pc1RyaWdnZXIgfHwgRS5ldmVudC5zaW11bGF0ZSgiY2hhbmdlIiwgdGhpcy5wYXJlbnROb2RlLCBlKQogICAgICAgICAgICAgICAgfSksIEUuX2RhdGEodCwgImNoYW5nZSIsICEwKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGhhbmRsZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCA9IGUudGFyZ2V0OwogICAgICAgICAgICByZXR1cm4gdGhpcyAhPT0gdCB8fCBlLmlzU2ltdWxhdGVkIHx8IGUuaXNUcmlnZ2VyIHx8ICJyYWRpbyIgIT09IHQudHlwZSAmJiAiY2hlY2tib3giICE9PSB0LnR5cGUgPyBlLmhhbmRsZU9iai5oYW5kbGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgOiB2b2lkIDAKICAgICAgICB9LAogICAgICAgIHRlYXJkb3duOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIEUuZXZlbnQucmVtb3ZlKHRoaXMsICIuX2NoYW5nZSIpLCAhZmUudGVzdCh0aGlzLm5vZGVOYW1lKQogICAgICAgIH0KICAgIH0pLCB2LmZvY3VzaW4gfHwgRS5lYWNoKHsKICAgICAgICBmb2N1czogImZvY3VzaW4iLAogICAgICAgIGJsdXI6ICJmb2N1c291dCIKICAgIH0sIGZ1bmN0aW9uKG4sIHIpIHsKICAgICAgICB2YXIgaSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgRS5ldmVudC5zaW11bGF0ZShyLCBlLnRhcmdldCwgRS5ldmVudC5maXgoZSkpCiAgICAgICAgfTsKICAgICAgICBFLmV2ZW50LnNwZWNpYWxbcl0gPSB7CiAgICAgICAgICAgIHNldHVwOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy5vd25lckRvY3VtZW50IHx8IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgdCA9IEUuX2RhdGEoZSwgcik7CiAgICAgICAgICAgICAgICB0IHx8IGUuYWRkRXZlbnRMaXN0ZW5lcihuLCBpLCAhMCksIEUuX2RhdGEoZSwgciwgKHQgfHwgMCkgKyAxKQogICAgICAgICAgICB9LAogICAgICAgICAgICB0ZWFyZG93bjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMub3duZXJEb2N1bWVudCB8fCB0aGlzLAogICAgICAgICAgICAgICAgICAgIHQgPSBFLl9kYXRhKGUsIHIpIC0gMTsKICAgICAgICAgICAgICAgIHQgPyBFLl9kYXRhKGUsIHIsIHQpIDogKGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLCBpLCAhMCksIEUuX3JlbW92ZURhdGEoZSwgcikpCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgRS5mbi5leHRlbmQoewogICAgICAgIG9uOiBmdW5jdGlvbihlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIHJldHVybiBiZSh0aGlzLCBlLCB0LCBuLCByKQogICAgICAgIH0sCiAgICAgICAgb25lOiBmdW5jdGlvbihlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIHJldHVybiBiZSh0aGlzLCBlLCB0LCBuLCByLCAxKQogICAgICAgIH0sCiAgICAgICAgb2ZmOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByLCBpOwogICAgICAgICAgICBpZiAoZSAmJiBlLnByZXZlbnREZWZhdWx0ICYmIGUuaGFuZGxlT2JqKSByZXR1cm4gciA9IGUuaGFuZGxlT2JqLCBFKGUuZGVsZWdhdGVUYXJnZXQpLm9mZihyLm5hbWVzcGFjZSA/IHIub3JpZ1R5cGUgKyAiLiIgKyByLm5hbWVzcGFjZSA6IHIub3JpZ1R5cGUsIHIuc2VsZWN0b3IsIHIuaGFuZGxlciksIHRoaXM7CiAgICAgICAgICAgIGlmICgib2JqZWN0IiAhPSB0eXBlb2YgZSkgcmV0dXJuICExICE9PSB0ICYmICJmdW5jdGlvbiIgIT0gdHlwZW9mIHQgfHwgKG4gPSB0LCB0ID0gdm9pZCAwKSwgITEgPT09IG4gJiYgKG4gPSB5ZSksIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEUuZXZlbnQucmVtb3ZlKHRoaXMsIGUsIG4sIHQpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBmb3IgKGkgaW4gZSkgdGhpcy5vZmYoaSwgdCwgZVtpXSk7CiAgICAgICAgICAgIHJldHVybiB0aGlzCiAgICAgICAgfSwKICAgICAgICB0cmlnZ2VyOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBFLmV2ZW50LnRyaWdnZXIoZSwgdCwgdGhpcykKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHRyaWdnZXJIYW5kbGVyOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gdGhpc1swXTsKICAgICAgICAgICAgcmV0dXJuIG4gPyBFLmV2ZW50LnRyaWdnZXIoZSwgdCwgbiwgITApIDogdm9pZCAwCiAgICAgICAgfQogICAgfSk7CiAgICB2YXIgd2UgPSAvIGpRdWVyeVxkKz0iKD86bnVsbHxcZCspIi9nLAogICAgICAgIFRlID0gbmV3IFJlZ0V4cCgiPCg/OiIgKyByZSArICIpW1xccy8+XSIsICJpIiksCiAgICAgICAgQ2UgPSAvPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6LV0rKVtePl0qKVwvPi9naSwKICAgICAgICBFZSA9IC88c2NyaXB0fDxzdHlsZXw8bGluay9pLAogICAgICAgIE5lID0gL2NoZWNrZWRccyooPzpbXj1dfD1ccyouY2hlY2tlZC4pL2ksCiAgICAgICAga2UgPSAvXnRydWVcLyguKikvLAogICAgICAgIFNlID0gL15ccyo8ISg/OlxbQ0RBVEFcW3wtLSl8KD86XF1cXXwtLSk+XHMqJC9nLAogICAgICAgIEFlID0gaWUoaCkuYXBwZW5kQ2hpbGQoaC5jcmVhdGVFbGVtZW50KCJkaXYiKSk7CgogICAgZnVuY3Rpb24gRGUoZSwgdCkgewogICAgICAgIHJldHVybiBFLm5vZGVOYW1lKGUsICJ0YWJsZSIpICYmIEUubm9kZU5hbWUoMTEgIT09IHQubm9kZVR5cGUgPyB0IDogdC5maXJzdENoaWxkLCAidHIiKSA/IGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRib2R5IilbMF0gfHwgZS5hcHBlbmRDaGlsZChlLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGJvZHkiKSkgOiBlCiAgICB9CgogICAgZnVuY3Rpb24gamUoZSkgewogICAgICAgIHJldHVybiBlLnR5cGUgPSAobnVsbCAhPT0gRS5maW5kLmF0dHIoZSwgInR5cGUiKSkgKyAiLyIgKyBlLnR5cGUsIGUKICAgIH0KCiAgICBmdW5jdGlvbiBMZShlKSB7CiAgICAgICAgdmFyIHQgPSBrZS5leGVjKGUudHlwZSk7CiAgICAgICAgcmV0dXJuIHQgPyBlLnR5cGUgPSB0WzFdIDogZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSwgZQogICAgfQoKICAgIGZ1bmN0aW9uIEhlKGUsIHQpIHsKICAgICAgICBpZiAoMSA9PT0gdC5ub2RlVHlwZSAmJiBFLmhhc0RhdGEoZSkpIHsKICAgICAgICAgICAgdmFyIG4sIHIsIGksIG8gPSBFLl9kYXRhKGUpLAogICAgICAgICAgICAgICAgYSA9IEUuX2RhdGEodCwgbyksCiAgICAgICAgICAgICAgICBzID0gby5ldmVudHM7CiAgICAgICAgICAgIGlmIChzKQogICAgICAgICAgICAgICAgZm9yIChuIGluIGRlbGV0ZSBhLmhhbmRsZSwgYS5ldmVudHMgPSB7fSwgcykKICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSAwLCBpID0gc1tuXS5sZW5ndGg7IHIgPCBpOyByKyspIEUuZXZlbnQuYWRkKHQsIG4sIHNbbl1bcl0pOwogICAgICAgICAgICBhLmRhdGEgJiYgKGEuZGF0YSA9IEUuZXh0ZW5kKHt9LCBhLmRhdGEpKQogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBxZShlLCB0KSB7CiAgICAgICAgdmFyIG4sIHIsIGk7CiAgICAgICAgaWYgKDEgPT09IHQubm9kZVR5cGUpIHsKICAgICAgICAgICAgaWYgKG4gPSB0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksICF2Lm5vQ2xvbmVFdmVudCAmJiB0W0UuZXhwYW5kb10pIHsKICAgICAgICAgICAgICAgIGZvciAociBpbiAoaSA9IEUuX2RhdGEodCkpLmV2ZW50cykgRS5yZW1vdmVFdmVudCh0LCByLCBpLmhhbmRsZSk7CiAgICAgICAgICAgICAgICB0LnJlbW92ZUF0dHJpYnV0ZShFLmV4cGFuZG8pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgInNjcmlwdCIgPT09IG4gJiYgdC50ZXh0ICE9PSBlLnRleHQgPyAoamUodCkudGV4dCA9IGUudGV4dCwgTGUodCkpIDogIm9iamVjdCIgPT09IG4gPyAodC5wYXJlbnROb2RlICYmICh0Lm91dGVySFRNTCA9IGUub3V0ZXJIVE1MKSwgdi5odG1sNUNsb25lICYmIGUuaW5uZXJIVE1MICYmICFFLnRyaW0odC5pbm5lckhUTUwpICYmICh0LmlubmVySFRNTCA9IGUuaW5uZXJIVE1MKSkgOiAiaW5wdXQiID09PSBuICYmIFoudGVzdChlLnR5cGUpID8gKHQuZGVmYXVsdENoZWNrZWQgPSB0LmNoZWNrZWQgPSBlLmNoZWNrZWQsIHQudmFsdWUgIT09IGUudmFsdWUgJiYgKHQudmFsdWUgPSBlLnZhbHVlKSkgOiAib3B0aW9uIiA9PT0gbiA/IHQuZGVmYXVsdFNlbGVjdGVkID0gdC5zZWxlY3RlZCA9IGUuZGVmYXVsdFNlbGVjdGVkIDogImlucHV0IiAhPT0gbiAmJiAidGV4dGFyZWEiICE9PSBuIHx8ICh0LmRlZmF1bHRWYWx1ZSA9IGUuZGVmYXVsdFZhbHVlKQogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBfZShuLCByLCBpLCBvKSB7CiAgICAgICAgciA9IGcuYXBwbHkoW10sIHIpOwogICAgICAgIHZhciBlLCB0LCBhLCBzLCB1LCBsLCBjID0gMCwKICAgICAgICAgICAgZCA9IG4ubGVuZ3RoLAogICAgICAgICAgICBmID0gZCAtIDEsCiAgICAgICAgICAgIHAgPSByWzBdLAogICAgICAgICAgICBoID0gRS5pc0Z1bmN0aW9uKHApOwogICAgICAgIGlmIChoIHx8IDEgPCBkICYmICJzdHJpbmciID09IHR5cGVvZiBwICYmICF2LmNoZWNrQ2xvbmUgJiYgTmUudGVzdChwKSkgcmV0dXJuIG4uZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gbi5lcShlKTsKICAgICAgICAgICAgaCAmJiAoclswXSA9IHAuY2FsbCh0aGlzLCBlLCB0Lmh0bWwoKSkpLCBfZSh0LCByLCBpLCBvKQogICAgICAgIH0pOwogICAgICAgIGlmIChkICYmIChlID0gKGwgPSBkZShyLCBuWzBdLm93bmVyRG9jdW1lbnQsICExLCBuLCBvKSkuZmlyc3RDaGlsZCwgMSA9PT0gbC5jaGlsZE5vZGVzLmxlbmd0aCAmJiAobCA9IGUpLCBlIHx8IG8pKSB7CiAgICAgICAgICAgIGZvciAoYSA9IChzID0gRS5tYXAoYWUobCwgInNjcmlwdCIpLCBqZSkpLmxlbmd0aDsgYyA8IGQ7IGMrKykgdCA9IGwsIGMgIT09IGYgJiYgKHQgPSBFLmNsb25lKHQsICEwLCAhMCksIGEgJiYgRS5tZXJnZShzLCBhZSh0LCAic2NyaXB0IikpKSwgaS5jYWxsKG5bY10sIHQsIGMpOwogICAgICAgICAgICBpZiAoYSkKICAgICAgICAgICAgICAgIGZvciAodSA9IHNbcy5sZW5ndGggLSAxXS5vd25lckRvY3VtZW50LCBFLm1hcChzLCBMZSksIGMgPSAwOyBjIDwgYTsgYysrKSB0ID0gc1tjXSwgdGUudGVzdCh0LnR5cGUgfHwgIiIpICYmICFFLl9kYXRhKHQsICJnbG9iYWxFdmFsIikgJiYgRS5jb250YWlucyh1LCB0KSAmJiAodC5zcmMgPyBFLl9ldmFsVXJsICYmIEUuX2V2YWxVcmwodC5zcmMpIDogRS5nbG9iYWxFdmFsKCh0LnRleHQgfHwgdC50ZXh0Q29udGVudCB8fCB0LmlubmVySFRNTCB8fCAiIikucmVwbGFjZShTZSwgIiIpKSk7CiAgICAgICAgICAgIGwgPSBlID0gbnVsbAogICAgICAgIH0KICAgICAgICByZXR1cm4gbgogICAgfQoKICAgIGZ1bmN0aW9uIEZlKGUsIHQsIG4pIHsKICAgICAgICBmb3IgKHZhciByLCBpID0gdCA/IEUuZmlsdGVyKHQsIGUpIDogZSwgbyA9IDA7IG51bGwgIT0gKHIgPSBpW29dKTsgbysrKSBuIHx8IDEgIT09IHIubm9kZVR5cGUgfHwgRS5jbGVhbkRhdGEoYWUocikpLCByLnBhcmVudE5vZGUgJiYgKG4gJiYgRS5jb250YWlucyhyLm93bmVyRG9jdW1lbnQsIHIpICYmIHNlKGFlKHIsICJzY3JpcHQiKSksIHIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7CiAgICAgICAgcmV0dXJuIGUKICAgIH0KICAgIEUuZXh0ZW5kKHsKICAgICAgICBodG1sUHJlZmlsdGVyOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBlLnJlcGxhY2UoQ2UsICI8JDE+PC8kMj4iKQogICAgICAgIH0sCiAgICAgICAgY2xvbmU6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgdmFyIHIsIGksIG8sIGEsIHMsIHUgPSBFLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCwgZSk7CiAgICAgICAgICAgIGlmICh2Lmh0bWw1Q2xvbmUgfHwgRS5pc1hNTERvYyhlKSB8fCAhVGUudGVzdCgiPCIgKyBlLm5vZGVOYW1lICsgIj4iKSA/IG8gPSBlLmNsb25lTm9kZSghMCkgOiAoQWUuaW5uZXJIVE1MID0gZS5vdXRlckhUTUwsIEFlLnJlbW92ZUNoaWxkKG8gPSBBZS5maXJzdENoaWxkKSksICEodi5ub0Nsb25lRXZlbnQgJiYgdi5ub0Nsb25lQ2hlY2tlZCB8fCAxICE9PSBlLm5vZGVUeXBlICYmIDExICE9PSBlLm5vZGVUeXBlIHx8IEUuaXNYTUxEb2MoZSkpKQogICAgICAgICAgICAgICAgZm9yIChyID0gYWUobyksIHMgPSBhZShlKSwgYSA9IDA7IG51bGwgIT0gKGkgPSBzW2FdKTsgKythKSByW2FdICYmIHFlKGksIHJbYV0pOwogICAgICAgICAgICBpZiAodCkKICAgICAgICAgICAgICAgIGlmIChuKQogICAgICAgICAgICAgICAgICAgIGZvciAocyA9IHMgfHwgYWUoZSksIHIgPSByIHx8IGFlKG8pLCBhID0gMDsgbnVsbCAhPSAoaSA9IHNbYV0pOyBhKyspIEhlKGksIHJbYV0pOwogICAgICAgICAgICAgICAgZWxzZSBIZShlLCBvKTsKICAgICAgICAgICAgcmV0dXJuIDAgPCAociA9IGFlKG8sICJzY3JpcHQiKSkubGVuZ3RoICYmIHNlKHIsICF1ICYmIGFlKGUsICJzY3JpcHQiKSksIHIgPSBzID0gaSA9IG51bGwsIG8KICAgICAgICB9LAogICAgICAgIGNsZWFuRGF0YTogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICBmb3IgKHZhciBuLCByLCBpLCBvLCBhID0gMCwgcyA9IEUuZXhwYW5kbywgdSA9IEUuY2FjaGUsIGwgPSB2LmF0dHJpYnV0ZXMsIGMgPSBFLmV2ZW50LnNwZWNpYWw7IG51bGwgIT0gKG4gPSBlW2FdKTsgYSsrKQogICAgICAgICAgICAgICAgaWYgKCh0IHx8IE8obikpICYmIChvID0gKGkgPSBuW3NdKSAmJiB1W2ldKSkgewogICAgICAgICAgICAgICAgICAgIGlmIChvLmV2ZW50cykKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChyIGluIG8uZXZlbnRzKSBjW3JdID8gRS5ldmVudC5yZW1vdmUobiwgcikgOiBFLnJlbW92ZUV2ZW50KG4sIHIsIG8uaGFuZGxlKTsKICAgICAgICAgICAgICAgICAgICB1W2ldICYmIChkZWxldGUgdVtpXSwgbCB8fCB2b2lkIDAgPT09IG4ucmVtb3ZlQXR0cmlidXRlID8gbltzXSA9IHZvaWQgMCA6IG4ucmVtb3ZlQXR0cmlidXRlKHMpLCBkLnB1c2goaSkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIEUuZm4uZXh0ZW5kKHsKICAgICAgICBkb21NYW5pcDogX2UsCiAgICAgICAgZGV0YWNoOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBGZSh0aGlzLCBlLCAhMCkKICAgICAgICB9LAogICAgICAgIHJlbW92ZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gRmUodGhpcywgZSkKICAgICAgICB9LAogICAgICAgIHRleHQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIEsodGhpcywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gZSA/IEUudGV4dCh0aGlzKSA6IHRoaXMuZW1wdHkoKS5hcHBlbmQoKHRoaXNbMF0gJiYgdGhpc1swXS5vd25lckRvY3VtZW50IHx8IGgpLmNyZWF0ZVRleHROb2RlKGUpKQogICAgICAgICAgICB9LCBudWxsLCBlLCBhcmd1bWVudHMubGVuZ3RoKQogICAgICAgIH0sCiAgICAgICAgYXBwZW5kOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF9lKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgMSAhPT0gdGhpcy5ub2RlVHlwZSAmJiAxMSAhPT0gdGhpcy5ub2RlVHlwZSAmJiA5ICE9PSB0aGlzLm5vZGVUeXBlIHx8IERlKHRoaXMsIGUpLmFwcGVuZENoaWxkKGUpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBwcmVwZW5kOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF9lKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgaWYgKDEgPT09IHRoaXMubm9kZVR5cGUgfHwgMTEgPT09IHRoaXMubm9kZVR5cGUgfHwgOSA9PT0gdGhpcy5ub2RlVHlwZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gRGUodGhpcywgZSk7CiAgICAgICAgICAgICAgICAgICAgdC5pbnNlcnRCZWZvcmUoZSwgdC5maXJzdENoaWxkKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgYmVmb3JlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF9lKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdGhpcy5wYXJlbnROb2RlICYmIHRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSwgdGhpcykKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGFmdGVyOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF9lKHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdGhpcy5wYXJlbnROb2RlICYmIHRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSwgdGhpcy5uZXh0U2libGluZykKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGVtcHR5OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZm9yICh2YXIgZSwgdCA9IDA7IG51bGwgIT0gKGUgPSB0aGlzW3RdKTsgdCsrKSB7CiAgICAgICAgICAgICAgICBmb3IgKDEgPT09IGUubm9kZVR5cGUgJiYgRS5jbGVhbkRhdGEoYWUoZSwgITEpKTsgZS5maXJzdENoaWxkOykgZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpOwogICAgICAgICAgICAgICAgZS5vcHRpb25zICYmIEUubm9kZU5hbWUoZSwgInNlbGVjdCIpICYmIChlLm9wdGlvbnMubGVuZ3RoID0gMCkKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdGhpcwogICAgICAgIH0sCiAgICAgICAgY2xvbmU6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIGUgPSBudWxsICE9IGUgJiYgZSwgdCA9IG51bGwgPT0gdCA/IGUgOiB0LCB0aGlzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBFLmNsb25lKHRoaXMsIGUsIHQpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBodG1sOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBLKHRoaXMsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpc1swXSB8fCB7fSwKICAgICAgICAgICAgICAgICAgICBuID0gMCwKICAgICAgICAgICAgICAgICAgICByID0gdGhpcy5sZW5ndGg7CiAgICAgICAgICAgICAgICBpZiAodm9pZCAwID09PSBlKSByZXR1cm4gMSA9PT0gdC5ub2RlVHlwZSA/IHQuaW5uZXJIVE1MLnJlcGxhY2Uod2UsICIiKSA6IHZvaWQgMDsKICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgZSAmJiAhRWUudGVzdChlKSAmJiAodi5odG1sU2VyaWFsaXplIHx8ICFUZS50ZXN0KGUpKSAmJiAodi5sZWFkaW5nV2hpdGVzcGFjZSB8fCAhbmUudGVzdChlKSkgJiYgIW9lWyhlZS5leGVjKGUpIHx8IFsiIiwgIiJdKVsxXS50b0xvd2VyQ2FzZSgpXSkgewogICAgICAgICAgICAgICAgICAgIGUgPSBFLmh0bWxQcmVmaWx0ZXIoZSk7CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IG4gPCByOyBuKyspIDEgPT09ICh0ID0gdGhpc1tuXSB8fCB7fSkubm9kZVR5cGUgJiYgKEUuY2xlYW5EYXRhKGFlKHQsICExKSksIHQuaW5uZXJIVE1MID0gZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHQgPSAwCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHQgJiYgdGhpcy5lbXB0eSgpLmFwcGVuZChlKQogICAgICAgICAgICB9LCBudWxsLCBlLCBhcmd1bWVudHMubGVuZ3RoKQogICAgICAgIH0sCiAgICAgICAgcmVwbGFjZVdpdGg6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgbiA9IFtdOwogICAgICAgICAgICByZXR1cm4gX2UodGhpcywgYXJndW1lbnRzLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMucGFyZW50Tm9kZTsKICAgICAgICAgICAgICAgIEUuaW5BcnJheSh0aGlzLCBuKSA8IDAgJiYgKEUuY2xlYW5EYXRhKGFlKHRoaXMpKSwgdCAmJiB0LnJlcGxhY2VDaGlsZChlLCB0aGlzKSkKICAgICAgICAgICAgfSwgbikKICAgICAgICB9CiAgICB9KSwgRS5lYWNoKHsKICAgICAgICBhcHBlbmRUbzogImFwcGVuZCIsCiAgICAgICAgcHJlcGVuZFRvOiAicHJlcGVuZCIsCiAgICAgICAgaW5zZXJ0QmVmb3JlOiAiYmVmb3JlIiwKICAgICAgICBpbnNlcnRBZnRlcjogImFmdGVyIiwKICAgICAgICByZXBsYWNlQWxsOiAicmVwbGFjZVdpdGgiCiAgICB9LCBmdW5jdGlvbihlLCBhKSB7CiAgICAgICAgRS5mbltlXSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgZm9yICh2YXIgdCwgbiA9IDAsIHIgPSBbXSwgaSA9IEUoZSksIG8gPSBpLmxlbmd0aCAtIDE7IG4gPD0gbzsgbisrKSB0ID0gbiA9PT0gbyA/IHRoaXMgOiB0aGlzLmNsb25lKCEwKSwgRShpW25dKVthXSh0KSwgcy5hcHBseShyLCB0LmdldCgpKTsKICAgICAgICAgICAgcmV0dXJuIHRoaXMucHVzaFN0YWNrKHIpCiAgICAgICAgfQogICAgfSk7CiAgICB2YXIgTWUsIE9lID0gewogICAgICAgIEhUTUw6ICJibG9jayIsCiAgICAgICAgQk9EWTogImJsb2NrIgogICAgfTsKCiAgICBmdW5jdGlvbiBSZShlLCB0KSB7CiAgICAgICAgdmFyIG4gPSBFKHQuY3JlYXRlRWxlbWVudChlKSkuYXBwZW5kVG8odC5ib2R5KSwKICAgICAgICAgICAgciA9IEUuY3NzKG5bMF0sICJkaXNwbGF5Iik7CiAgICAgICAgcmV0dXJuIG4uZGV0YWNoKCksIHIKICAgIH0KCiAgICBmdW5jdGlvbiBQZShlKSB7CiAgICAgICAgdmFyIHQgPSBoLAogICAgICAgICAgICBuID0gT2VbZV07CiAgICAgICAgcmV0dXJuIG4gfHwgKCJub25lIiAhPT0gKG4gPSBSZShlLCB0KSkgJiYgbiB8fCAoKHQgPSAoKE1lID0gKE1lIHx8IEUoIjxpZnJhbWUgZnJhbWVib3JkZXI9JzAnIHdpZHRoPScwJyBoZWlnaHQ9JzAnLz4iKSkuYXBwZW5kVG8odC5kb2N1bWVudEVsZW1lbnQpKVswXS5jb250ZW50V2luZG93IHx8IE1lWzBdLmNvbnRlbnREb2N1bWVudCkuZG9jdW1lbnQpLndyaXRlKCksIHQuY2xvc2UoKSwgbiA9IFJlKGUsIHQpLCBNZS5kZXRhY2goKSksIE9lW2VdID0gbiksIG4KICAgIH0KICAgIHZhciBCZSA9IC9ebWFyZ2luLywKICAgICAgICBXZSA9IG5ldyBSZWdFeHAoIl4oIiArIHogKyAiKSg/IXB4KVthLXolXSskIiwgImkiKSwKICAgICAgICBJZSA9IGZ1bmN0aW9uKGUsIHQsIG4sIHIpIHsKICAgICAgICAgICAgdmFyIGksIG8sIGEgPSB7fTsKICAgICAgICAgICAgZm9yIChvIGluIHQpIGFbb10gPSBlLnN0eWxlW29dLCBlLnN0eWxlW29dID0gdFtvXTsKICAgICAgICAgICAgZm9yIChvIGluIGkgPSBuLmFwcGx5KGUsIHIgfHwgW10pLCB0KSBlLnN0eWxlW29dID0gYVtvXTsKICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICB9LAogICAgICAgICRlID0gaC5kb2N1bWVudEVsZW1lbnQ7CiAgICAhIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciByLCBpLCBvLCBhLCBzLCB1LCBsID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKSwKICAgICAgICAgICAgYyA9IGguY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgICAgaWYgKGMuc3R5bGUpIHsKICAgICAgICAgICAgZnVuY3Rpb24gZSgpIHsKICAgICAgICAgICAgICAgIHZhciBlLCB0LCBuID0gaC5kb2N1bWVudEVsZW1lbnQ7CiAgICAgICAgICAgICAgICBuLmFwcGVuZENoaWxkKGwpLCBjLnN0eWxlLmNzc1RleHQgPSAiLXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87Ym9yZGVyOjFweDtwYWRkaW5nOjFweDt0b3A6MSU7d2lkdGg6NTAlIiwgciA9IG8gPSB1ID0gITEsIGkgPSBzID0gITAsIEMuZ2V0Q29tcHV0ZWRTdHlsZSAmJiAodCA9IEMuZ2V0Q29tcHV0ZWRTdHlsZShjKSwgciA9ICIxJSIgIT09ICh0IHx8IHt9KS50b3AsIHUgPSAiMnB4IiA9PT0gKHQgfHwge30pLm1hcmdpbkxlZnQsIG8gPSAiNHB4IiA9PT0gKHQgfHwgewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiAiNHB4IgogICAgICAgICAgICAgICAgfSkud2lkdGgsIGMuc3R5bGUubWFyZ2luUmlnaHQgPSAiNTAlIiwgaSA9ICI0cHgiID09PSAodCB8fCB7CiAgICAgICAgICAgICAgICAgICAgbWFyZ2luUmlnaHQ6ICI0cHgiCiAgICAgICAgICAgICAgICB9KS5tYXJnaW5SaWdodCwgKGUgPSBjLmFwcGVuZENoaWxkKGguY3JlYXRlRWxlbWVudCgiZGl2IikpKS5zdHlsZS5jc3NUZXh0ID0gYy5zdHlsZS5jc3NUZXh0ID0gIi13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDtkaXNwbGF5OmJsb2NrO21hcmdpbjowO2JvcmRlcjowO3BhZGRpbmc6MCIsIGUuc3R5bGUubWFyZ2luUmlnaHQgPSBlLnN0eWxlLndpZHRoID0gIjAiLCBjLnN0eWxlLndpZHRoID0gIjFweCIsIHMgPSAhcGFyc2VGbG9hdCgoQy5nZXRDb21wdXRlZFN0eWxlKGUpIHx8IHt9KS5tYXJnaW5SaWdodCksIGMucmVtb3ZlQ2hpbGQoZSkpLCBjLnN0eWxlLmRpc3BsYXkgPSAibm9uZSIsIChhID0gMCA9PT0gYy5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCkgJiYgKGMuc3R5bGUuZGlzcGxheSA9ICIiLCBjLmlubmVySFRNTCA9ICI8dGFibGU+PHRyPjx0ZD48L3RkPjx0ZD50PC90ZD48L3RyPjwvdGFibGU+IiwgKGUgPSBjLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJ0ZCIpKVswXS5zdHlsZS5jc3NUZXh0ID0gIm1hcmdpbjowO2JvcmRlcjowO3BhZGRpbmc6MDtkaXNwbGF5Om5vbmUiLCAoYSA9IDAgPT09IGVbMF0ub2Zmc2V0SGVpZ2h0KSAmJiAoZVswXS5zdHlsZS5kaXNwbGF5ID0gIiIsIGVbMV0uc3R5bGUuZGlzcGxheSA9ICJub25lIiwgYSA9IDAgPT09IGVbMF0ub2Zmc2V0SGVpZ2h0KSksIG4ucmVtb3ZlQ2hpbGQobCkKICAgICAgICAgICAgfQogICAgICAgICAgICBjLnN0eWxlLmNzc1RleHQgPSAiZmxvYXQ6bGVmdDtvcGFjaXR5Oi41Iiwgdi5vcGFjaXR5ID0gIjAuNSIgPT09IGMuc3R5bGUub3BhY2l0eSwgdi5jc3NGbG9hdCA9ICEhYy5zdHlsZS5jc3NGbG9hdCwgYy5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCA9ICJjb250ZW50LWJveCIsIGMuY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCA9ICIiLCB2LmNsZWFyQ2xvbmVTdHlsZSA9ICJjb250ZW50LWJveCIgPT09IGMuc3R5bGUuYmFja2dyb3VuZENsaXAsIChsID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc3R5bGUuY3NzVGV4dCA9ICJib3JkZXI6MDt3aWR0aDo4cHg7aGVpZ2h0OjA7dG9wOjA7bGVmdDotOTk5OXB4O3BhZGRpbmc6MDttYXJnaW4tdG9wOjFweDtwb3NpdGlvbjphYnNvbHV0ZSIsIGMuaW5uZXJIVE1MID0gIiIsIGwuYXBwZW5kQ2hpbGQoYyksIHYuYm94U2l6aW5nID0gIiIgPT09IGMuc3R5bGUuYm94U2l6aW5nIHx8ICIiID09PSBjLnN0eWxlLk1vekJveFNpemluZyB8fCAiIiA9PT0gYy5zdHlsZS5XZWJraXRCb3hTaXppbmcsIEUuZXh0ZW5kKHYsIHsKICAgICAgICAgICAgICAgIHJlbGlhYmxlSGlkZGVuT2Zmc2V0czogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gciAmJiBlKCksIGEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBib3hTaXppbmdSZWxpYWJsZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gciAmJiBlKCksIG8KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBwaXhlbE1hcmdpblJpZ2h0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCA9PSByICYmIGUoKSwgaQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHBpeGVsUG9zaXRpb246IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IHIgJiYgZSgpLCByCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcmVsaWFibGVNYXJnaW5SaWdodDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gciAmJiBlKCksIHMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByZWxpYWJsZU1hcmdpbkxlZnQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IHIgJiYgZSgpLCB1CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfQogICAgfSgpOwogICAgdmFyIHplLCBYZSwgVWUgPSAvXih0b3B8cmlnaHR8Ym90dG9tfGxlZnQpJC87CgogICAgZnVuY3Rpb24gVmUoZSwgdCkgewogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZSgpID8gdm9pZCBkZWxldGUgdGhpcy5nZXQgOiAodGhpcy5nZXQgPSB0KS5hcHBseSh0aGlzLCBhcmd1bWVudHMpCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICBDLmdldENvbXB1dGVkU3R5bGUgPyAoemUgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgdmFyIHQgPSBlLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXc7CiAgICAgICAgcmV0dXJuIHQgJiYgdC5vcGVuZXIgfHwgKHQgPSBDKSwgdC5nZXRDb21wdXRlZFN0eWxlKGUpCiAgICB9LCBYZSA9IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICB2YXIgciwgaSwgbywgYSwgcyA9IGUuc3R5bGU7CiAgICAgICAgcmV0dXJuICIiICE9PSAoYSA9IChuID0gbiB8fCB6ZShlKSkgPyBuLmdldFByb3BlcnR5VmFsdWUodCkgfHwgblt0XSA6IHZvaWQgMCkgJiYgdm9pZCAwICE9PSBhIHx8IEUuY29udGFpbnMoZS5vd25lckRvY3VtZW50LCBlKSB8fCAoYSA9IEUuc3R5bGUoZSwgdCkpLCBuICYmICF2LnBpeGVsTWFyZ2luUmlnaHQoKSAmJiBXZS50ZXN0KGEpICYmIEJlLnRlc3QodCkgJiYgKHIgPSBzLndpZHRoLCBpID0gcy5taW5XaWR0aCwgbyA9IHMubWF4V2lkdGgsIHMubWluV2lkdGggPSBzLm1heFdpZHRoID0gcy53aWR0aCA9IGEsIGEgPSBuLndpZHRoLCBzLndpZHRoID0gciwgcy5taW5XaWR0aCA9IGksIHMubWF4V2lkdGggPSBvKSwgdm9pZCAwID09PSBhID8gYSA6IGEgKyAiIgogICAgfSkgOiAkZS5jdXJyZW50U3R5bGUgJiYgKHplID0gZnVuY3Rpb24oZSkgewogICAgICAgIHJldHVybiBlLmN1cnJlbnRTdHlsZQogICAgfSwgWGUgPSBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgdmFyIHIsIGksIG8sIGEsIHMgPSBlLnN0eWxlOwogICAgICAgIHJldHVybiBudWxsID09IChhID0gKG4gPSBuIHx8IHplKGUpKSA/IG5bdF0gOiB2b2lkIDApICYmIHMgJiYgc1t0XSAmJiAoYSA9IHNbdF0pLCBXZS50ZXN0KGEpICYmICFVZS50ZXN0KHQpICYmIChyID0gcy5sZWZ0LCAobyA9IChpID0gZS5ydW50aW1lU3R5bGUpICYmIGkubGVmdCkgJiYgKGkubGVmdCA9IGUuY3VycmVudFN0eWxlLmxlZnQpLCBzLmxlZnQgPSAiZm9udFNpemUiID09PSB0ID8gIjFlbSIgOiBhLCBhID0gcy5waXhlbExlZnQgKyAicHgiLCBzLmxlZnQgPSByLCBvICYmIChpLmxlZnQgPSBvKSksIHZvaWQgMCA9PT0gYSA/IGEgOiBhICsgIiIgfHwgImF1dG8iCiAgICB9KTsKICAgIHZhciBZZSA9IC9hbHBoYVwoW14pXSpcKS9pLAogICAgICAgIEplID0gL29wYWNpdHlccyo9XHMqKFteKV0qKS9pLAogICAgICAgIEdlID0gL14obm9uZXx0YWJsZSg/IS1jW2VhXSkuKykvLAogICAgICAgIFFlID0gbmV3IFJlZ0V4cCgiXigiICsgeiArICIpKC4qKSQiLCAiaSIpLAogICAgICAgIEtlID0gewogICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIsCiAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIKICAgICAgICB9LAogICAgICAgIFplID0gewogICAgICAgICAgICBsZXR0ZXJTcGFjaW5nOiAiMCIsCiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICI0MDAiCiAgICAgICAgfSwKICAgICAgICBldCA9IFsiV2Via2l0IiwgIk8iLCAiTW96IiwgIm1zIl0sCiAgICAgICAgdHQgPSBoLmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlOwoKICAgIGZ1bmN0aW9uIG50KGUpIHsKICAgICAgICBpZiAoZSBpbiB0dCkgcmV0dXJuIGU7CiAgICAgICAgZm9yICh2YXIgdCA9IGUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBlLnNsaWNlKDEpLCBuID0gZXQubGVuZ3RoOyBuLS07KQogICAgICAgICAgICBpZiAoKGUgPSBldFtuXSArIHQpIGluIHR0KSByZXR1cm4gZQogICAgfQoKICAgIGZ1bmN0aW9uIHJ0KGUsIHQpIHsKICAgICAgICBmb3IgKHZhciBuLCByLCBpLCBvID0gW10sIGEgPSAwLCBzID0gZS5sZW5ndGg7IGEgPCBzOyBhKyspKHIgPSBlW2FdKS5zdHlsZSAmJiAob1thXSA9IEUuX2RhdGEociwgIm9sZGRpc3BsYXkiKSwgbiA9IHIuc3R5bGUuZGlzcGxheSwgdCA/IChvW2FdIHx8ICJub25lIiAhPT0gbiB8fCAoci5zdHlsZS5kaXNwbGF5ID0gIiIpLCAiIiA9PT0gci5zdHlsZS5kaXNwbGF5ICYmIFYocikgJiYgKG9bYV0gPSBFLl9kYXRhKHIsICJvbGRkaXNwbGF5IiwgUGUoci5ub2RlTmFtZSkpKSkgOiAoaSA9IFYociksIChuICYmICJub25lIiAhPT0gbiB8fCAhaSkgJiYgRS5fZGF0YShyLCAib2xkZGlzcGxheSIsIGkgPyBuIDogRS5jc3MociwgImRpc3BsYXkiKSkpKTsKICAgICAgICBmb3IgKGEgPSAwOyBhIDwgczsgYSsrKShyID0gZVthXSkuc3R5bGUgJiYgKHQgJiYgIm5vbmUiICE9PSByLnN0eWxlLmRpc3BsYXkgJiYgIiIgIT09IHIuc3R5bGUuZGlzcGxheSB8fCAoci5zdHlsZS5kaXNwbGF5ID0gdCA/IG9bYV0gfHwgIiIgOiAibm9uZSIpKTsKICAgICAgICByZXR1cm4gZQogICAgfQoKICAgIGZ1bmN0aW9uIGl0KGUsIHQsIG4pIHsKICAgICAgICB2YXIgciA9IFFlLmV4ZWModCk7CiAgICAgICAgcmV0dXJuIHIgPyBNYXRoLm1heCgwLCByWzFdIC0gKG4gfHwgMCkpICsgKHJbMl0gfHwgInB4IikgOiB0CiAgICB9CgogICAgZnVuY3Rpb24gb3QoZSwgdCwgbiwgciwgaSkgewogICAgICAgIGZvciAodmFyIG8gPSBuID09PSAociA/ICJib3JkZXIiIDogImNvbnRlbnQiKSA/IDQgOiAid2lkdGgiID09PSB0ID8gMSA6IDAsIGEgPSAwOyBvIDwgNDsgbyArPSAyKSAibWFyZ2luIiA9PT0gbiAmJiAoYSArPSBFLmNzcyhlLCBuICsgVVtvXSwgITAsIGkpKSwgciA/ICgiY29udGVudCIgPT09IG4gJiYgKGEgLT0gRS5jc3MoZSwgInBhZGRpbmciICsgVVtvXSwgITAsIGkpKSwgIm1hcmdpbiIgIT09IG4gJiYgKGEgLT0gRS5jc3MoZSwgImJvcmRlciIgKyBVW29dICsgIldpZHRoIiwgITAsIGkpKSkgOiAoYSArPSBFLmNzcyhlLCAicGFkZGluZyIgKyBVW29dLCAhMCwgaSksICJwYWRkaW5nIiAhPT0gbiAmJiAoYSArPSBFLmNzcyhlLCAiYm9yZGVyIiArIFVbb10gKyAiV2lkdGgiLCAhMCwgaSkpKTsKICAgICAgICByZXR1cm4gYQogICAgfQoKICAgIGZ1bmN0aW9uIGF0KGUsIHQsIG4pIHsKICAgICAgICB2YXIgciA9ICEwLAogICAgICAgICAgICBpID0gIndpZHRoIiA9PT0gdCA/IGUub2Zmc2V0V2lkdGggOiBlLm9mZnNldEhlaWdodCwKICAgICAgICAgICAgbyA9IHplKGUpLAogICAgICAgICAgICBhID0gdi5ib3hTaXppbmcgJiYgImJvcmRlci1ib3giID09PSBFLmNzcyhlLCAiYm94U2l6aW5nIiwgITEsIG8pOwogICAgICAgIGlmIChoLm1zRnVsbHNjcmVlbkVsZW1lbnQgJiYgQy50b3AgIT09IEMgJiYgZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCAmJiAoaSA9IE1hdGgucm91bmQoMTAwICogZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVt0XSkpLCBpIDw9IDAgfHwgbnVsbCA9PSBpKSB7CiAgICAgICAgICAgIGlmICgoKGkgPSBYZShlLCB0LCBvKSkgPCAwIHx8IG51bGwgPT0gaSkgJiYgKGkgPSBlLnN0eWxlW3RdKSwgV2UudGVzdChpKSkgcmV0dXJuIGk7CiAgICAgICAgICAgIHIgPSBhICYmICh2LmJveFNpemluZ1JlbGlhYmxlKCkgfHwgaSA9PT0gZS5zdHlsZVt0XSksIGkgPSBwYXJzZUZsb2F0KGkpIHx8IDAKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGkgKyBvdChlLCB0LCBuIHx8IChhID8gImJvcmRlciIgOiAiY29udGVudCIpLCByLCBvKSArICJweCIKICAgIH0KCiAgICBmdW5jdGlvbiBzdChlLCB0LCBuLCByLCBpKSB7CiAgICAgICAgcmV0dXJuIG5ldyBzdC5wcm90b3R5cGUuaW5pdChlLCB0LCBuLCByLCBpKQogICAgfQogICAgRS5leHRlbmQoewogICAgICAgIGNzc0hvb2tzOiB7CiAgICAgICAgICAgIG9wYWNpdHk6IHsKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGlmICh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBuID0gWGUoZSwgIm9wYWNpdHkiKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICIiID09PSBuID8gIjEiIDogbgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgY3NzTnVtYmVyOiB7CiAgICAgICAgICAgIGFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OiAhMCwKICAgICAgICAgICAgY29sdW1uQ291bnQ6ICEwLAogICAgICAgICAgICBmaWxsT3BhY2l0eTogITAsCiAgICAgICAgICAgIGZsZXhHcm93OiAhMCwKICAgICAgICAgICAgZmxleFNocmluazogITAsCiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICEwLAogICAgICAgICAgICBsaW5lSGVpZ2h0OiAhMCwKICAgICAgICAgICAgb3BhY2l0eTogITAsCiAgICAgICAgICAgIG9yZGVyOiAhMCwKICAgICAgICAgICAgb3JwaGFuczogITAsCiAgICAgICAgICAgIHdpZG93czogITAsCiAgICAgICAgICAgIHpJbmRleDogITAsCiAgICAgICAgICAgIHpvb206ICEwCiAgICAgICAgfSwKICAgICAgICBjc3NQcm9wczogewogICAgICAgICAgICBmbG9hdDogdi5jc3NGbG9hdCA/ICJjc3NGbG9hdCIgOiAic3R5bGVGbG9hdCIKICAgICAgICB9LAogICAgICAgIHN0eWxlOiBmdW5jdGlvbihlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIGlmIChlICYmIDMgIT09IGUubm9kZVR5cGUgJiYgOCAhPT0gZS5ub2RlVHlwZSAmJiBlLnN0eWxlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSwgbywgYSwgcyA9IEUuY2FtZWxDYXNlKHQpLAogICAgICAgICAgICAgICAgICAgIHUgPSBlLnN0eWxlOwogICAgICAgICAgICAgICAgaWYgKHQgPSBFLmNzc1Byb3BzW3NdIHx8IChFLmNzc1Byb3BzW3NdID0gbnQocykgfHwgcyksIGEgPSBFLmNzc0hvb2tzW3RdIHx8IEUuY3NzSG9va3Nbc10sIHZvaWQgMCA9PT0gbikgcmV0dXJuIGEgJiYgImdldCIgaW4gYSAmJiB2b2lkIDAgIT09IChpID0gYS5nZXQoZSwgITEsIHIpKSA/IGkgOiB1W3RdOwogICAgICAgICAgICAgICAgaWYgKCJzdHJpbmciID09PSAobyA9IHR5cGVvZiBuKSAmJiAoaSA9IFguZXhlYyhuKSkgJiYgaVsxXSAmJiAobiA9IFkoZSwgdCwgaSksIG8gPSAibnVtYmVyIiksIG51bGwgIT0gbiAmJiBuID09IG4gJiYgKCJudW1iZXIiID09PSBvICYmIChuICs9IGkgJiYgaVszXSB8fCAoRS5jc3NOdW1iZXJbc10gPyAiIiA6ICJweCIpKSwgdi5jbGVhckNsb25lU3R5bGUgfHwgIiIgIT09IG4gfHwgMCAhPT0gdC5pbmRleE9mKCJiYWNrZ3JvdW5kIikgfHwgKHVbdF0gPSAiaW5oZXJpdCIpLCAhKGEgJiYgInNldCIgaW4gYSAmJiB2b2lkIDAgPT09IChuID0gYS5zZXQoZSwgbiwgcikpKSkpIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdVt0XSA9IG4KICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGNzczogZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICB2YXIgaSwgbywgYSwgcyA9IEUuY2FtZWxDYXNlKHQpOwogICAgICAgICAgICByZXR1cm4gdCA9IEUuY3NzUHJvcHNbc10gfHwgKEUuY3NzUHJvcHNbc10gPSBudChzKSB8fCBzKSwgKGEgPSBFLmNzc0hvb2tzW3RdIHx8IEUuY3NzSG9va3Nbc10pICYmICJnZXQiIGluIGEgJiYgKG8gPSBhLmdldChlLCAhMCwgbikpLCB2b2lkIDAgPT09IG8gJiYgKG8gPSBYZShlLCB0LCByKSksICJub3JtYWwiID09PSBvICYmIHQgaW4gWmUgJiYgKG8gPSBaZVt0XSksICIiID09PSBuIHx8IG4gPyAoaSA9IHBhcnNlRmxvYXQobyksICEwID09PSBuIHx8IGlzRmluaXRlKGkpID8gaSB8fCAwIDogbykgOiBvCiAgICAgICAgfQogICAgfSksIEUuZWFjaChbImhlaWdodCIsICJ3aWR0aCJdLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgRS5jc3NIb29rc1tpXSA9IHsKICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdCA/IEdlLnRlc3QoRS5jc3MoZSwgImRpc3BsYXkiKSkgJiYgMCA9PT0gZS5vZmZzZXRXaWR0aCA/IEllKGUsIEtlLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXQoZSwgaSwgbikKICAgICAgICAgICAgICAgIH0pIDogYXQoZSwgaSwgbikgOiB2b2lkIDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgciA9IG4gJiYgemUoZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gaXQoMCwgdCwgbiA/IG90KGUsIGksIG4sIHYuYm94U2l6aW5nICYmICJib3JkZXItYm94IiA9PT0gRS5jc3MoZSwgImJveFNpemluZyIsICExLCByKSwgcikgOiAwKQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIHYub3BhY2l0eSB8fCAoRS5jc3NIb29rcy5vcGFjaXR5ID0gewogICAgICAgIGdldDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICByZXR1cm4gSmUudGVzdCgodCAmJiBlLmN1cnJlbnRTdHlsZSA/IGUuY3VycmVudFN0eWxlLmZpbHRlciA6IGUuc3R5bGUuZmlsdGVyKSB8fCAiIikgPyAuMDEgKiBwYXJzZUZsb2F0KFJlZ0V4cC4kMSkgKyAiIiA6IHQgPyAiMSIgOiAiIgogICAgICAgIH0sCiAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gZS5zdHlsZSwKICAgICAgICAgICAgICAgIHIgPSBlLmN1cnJlbnRTdHlsZSwKICAgICAgICAgICAgICAgIGkgPSBFLmlzTnVtZXJpYyh0KSA/ICJhbHBoYShvcGFjaXR5PSIgKyAxMDAgKiB0ICsgIikiIDogIiIsCiAgICAgICAgICAgICAgICBvID0gciAmJiByLmZpbHRlciB8fCBuLmZpbHRlciB8fCAiIjsKICAgICAgICAgICAgKChuLnpvb20gPSAxKSA8PSB0IHx8ICIiID09PSB0KSAmJiAiIiA9PT0gRS50cmltKG8ucmVwbGFjZShZZSwgIiIpKSAmJiBuLnJlbW92ZUF0dHJpYnV0ZSAmJiAobi5yZW1vdmVBdHRyaWJ1dGUoImZpbHRlciIpLCAiIiA9PT0gdCB8fCByICYmICFyLmZpbHRlcikgfHwgKG4uZmlsdGVyID0gWWUudGVzdChvKSA/IG8ucmVwbGFjZShZZSwgaSkgOiBvICsgIiAiICsgaSkKICAgICAgICB9CiAgICB9KSwgRS5jc3NIb29rcy5tYXJnaW5SaWdodCA9IFZlKHYucmVsaWFibGVNYXJnaW5SaWdodCwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgIHJldHVybiB0ID8gSWUoZSwgewogICAgICAgICAgICBkaXNwbGF5OiAiaW5saW5lLWJsb2NrIgogICAgICAgIH0sIFhlLCBbZSwgIm1hcmdpblJpZ2h0Il0pIDogdm9pZCAwCiAgICB9KSwgRS5jc3NIb29rcy5tYXJnaW5MZWZ0ID0gVmUodi5yZWxpYWJsZU1hcmdpbkxlZnQsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICByZXR1cm4gdCA/IChwYXJzZUZsb2F0KFhlKGUsICJtYXJnaW5MZWZ0IikpIHx8IChFLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCwgZSkgPyBlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQgLSBJZShlLCB7CiAgICAgICAgICAgIG1hcmdpbkxlZnQ6IDAKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdAogICAgICAgIH0pIDogMCkpICsgInB4IiA6IHZvaWQgMAogICAgfSksIEUuZWFjaCh7CiAgICAgICAgbWFyZ2luOiAiIiwKICAgICAgICBwYWRkaW5nOiAiIiwKICAgICAgICBib3JkZXI6ICJXaWR0aCIKICAgIH0sIGZ1bmN0aW9uKGksIG8pIHsKICAgICAgICBFLmNzc0hvb2tzW2kgKyBvXSA9IHsKICAgICAgICAgICAgZXhwYW5kOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciB0ID0gMCwgbiA9IHt9LCByID0gInN0cmluZyIgPT0gdHlwZW9mIGUgPyBlLnNwbGl0KCIgIikgOiBbZV07IHQgPCA0OyB0KyspIG5baSArIFVbdF0gKyBvXSA9IHJbdF0gfHwgclt0IC0gMl0gfHwgclswXTsKICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgIH0KICAgICAgICB9LCBCZS50ZXN0KGkpIHx8IChFLmNzc0hvb2tzW2kgKyBvXS5zZXQgPSBpdCkKICAgIH0pLCBFLmZuLmV4dGVuZCh7CiAgICAgICAgY3NzOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiBLKHRoaXMsIGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgIHZhciByLCBpLCBvID0ge30sCiAgICAgICAgICAgICAgICAgICAgYSA9IDA7CiAgICAgICAgICAgICAgICBpZiAoRS5pc0FycmF5KHQpKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yIChyID0gemUoZSksIGkgPSB0Lmxlbmd0aDsgYSA8IGk7IGErKykgb1t0W2FdXSA9IEUuY3NzKGUsIHRbYV0sICExLCByKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCAhPT0gbiA/IEUuc3R5bGUoZSwgdCwgbikgOiBFLmNzcyhlLCB0KQogICAgICAgICAgICB9LCBlLCB0LCAxIDwgYXJndW1lbnRzLmxlbmd0aCkKICAgICAgICB9LAogICAgICAgIHNob3c6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcnQodGhpcywgITApCiAgICAgICAgfSwKICAgICAgICBoaWRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHJ0KHRoaXMpCiAgICAgICAgfSwKICAgICAgICB0b2dnbGU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuICJib29sZWFuIiA9PSB0eXBlb2YgZSA/IGUgPyB0aGlzLnNob3coKSA6IHRoaXMuaGlkZSgpIDogdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgVih0aGlzKSA/IEUodGhpcykuc2hvdygpIDogRSh0aGlzKS5oaWRlKCkKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KSwgKChFLlR3ZWVuID0gc3QpLnByb3RvdHlwZSA9IHsKICAgICAgICBjb25zdHJ1Y3Rvcjogc3QsCiAgICAgICAgaW5pdDogZnVuY3Rpb24oZSwgdCwgbiwgciwgaSwgbykgewogICAgICAgICAgICB0aGlzLmVsZW0gPSBlLCB0aGlzLnByb3AgPSBuLCB0aGlzLmVhc2luZyA9IGkgfHwgRS5lYXNpbmcuX2RlZmF1bHQsIHRoaXMub3B0aW9ucyA9IHQsIHRoaXMuc3RhcnQgPSB0aGlzLm5vdyA9IHRoaXMuY3VyKCksIHRoaXMuZW5kID0gciwgdGhpcy51bml0ID0gbyB8fCAoRS5jc3NOdW1iZXJbbl0gPyAiIiA6ICJweCIpCiAgICAgICAgfSwKICAgICAgICBjdXI6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IHN0LnByb3BIb29rc1t0aGlzLnByb3BdOwogICAgICAgICAgICByZXR1cm4gZSAmJiBlLmdldCA/IGUuZ2V0KHRoaXMpIDogc3QucHJvcEhvb2tzLl9kZWZhdWx0LmdldCh0aGlzKQogICAgICAgIH0sCiAgICAgICAgcnVuOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0LCBuID0gc3QucHJvcEhvb2tzW3RoaXMucHJvcF07CiAgICAgICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRpb24gPyB0aGlzLnBvcyA9IHQgPSBFLmVhc2luZ1t0aGlzLmVhc2luZ10oZSwgdGhpcy5vcHRpb25zLmR1cmF0aW9uICogZSwgMCwgMSwgdGhpcy5vcHRpb25zLmR1cmF0aW9uKSA6IHRoaXMucG9zID0gdCA9IGUsIHRoaXMubm93ID0gKHRoaXMuZW5kIC0gdGhpcy5zdGFydCkgKiB0ICsgdGhpcy5zdGFydCwgdGhpcy5vcHRpb25zLnN0ZXAgJiYgdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sIHRoaXMubm93LCB0aGlzKSwgbiAmJiBuLnNldCA/IG4uc2V0KHRoaXMpIDogc3QucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSwgdGhpcwogICAgICAgIH0KICAgIH0pLmluaXQucHJvdG90eXBlID0gc3QucHJvdG90eXBlLCAoc3QucHJvcEhvb2tzID0gewogICAgICAgIF9kZWZhdWx0OiB7CiAgICAgICAgICAgIGdldDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQ7CiAgICAgICAgICAgICAgICByZXR1cm4gMSAhPT0gZS5lbGVtLm5vZGVUeXBlIHx8IG51bGwgIT0gZS5lbGVtW2UucHJvcF0gJiYgbnVsbCA9PSBlLmVsZW0uc3R5bGVbZS5wcm9wXSA/IGUuZWxlbVtlLnByb3BdIDogKHQgPSBFLmNzcyhlLmVsZW0sIGUucHJvcCwgIiIpKSAmJiAiYXV0byIgIT09IHQgPyB0IDogMAogICAgICAgICAgICB9LAogICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIEUuZnguc3RlcFtlLnByb3BdID8gRS5meC5zdGVwW2UucHJvcF0oZSkgOiAxICE9PSBlLmVsZW0ubm9kZVR5cGUgfHwgbnVsbCA9PSBlLmVsZW0uc3R5bGVbRS5jc3NQcm9wc1tlLnByb3BdXSAmJiAhRS5jc3NIb29rc1tlLnByb3BdID8gZS5lbGVtW2UucHJvcF0gPSBlLm5vdyA6IEUuc3R5bGUoZS5lbGVtLCBlLnByb3AsIGUubm93ICsgZS51bml0KQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSkuc2Nyb2xsVG9wID0gc3QucHJvcEhvb2tzLnNjcm9sbExlZnQgPSB7CiAgICAgICAgc2V0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGUuZWxlbS5ub2RlVHlwZSAmJiBlLmVsZW0ucGFyZW50Tm9kZSAmJiAoZS5lbGVtW2UucHJvcF0gPSBlLm5vdykKICAgICAgICB9CiAgICB9LCBFLmVhc2luZyA9IHsKICAgICAgICBsaW5lYXI6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGUKICAgICAgICB9LAogICAgICAgIHN3aW5nOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiAuNSAtIE1hdGguY29zKGUgKiBNYXRoLlBJKSAvIDIKICAgICAgICB9LAogICAgICAgIF9kZWZhdWx0OiAic3dpbmciCiAgICB9LCBFLmZ4ID0gc3QucHJvdG90eXBlLmluaXQsIEUuZnguc3RlcCA9IHt9OwogICAgdmFyIHV0LCBsdCwgY3QsIGR0LCBmdCwgcHQsIGh0LCBndCA9IC9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLywKICAgICAgICBtdCA9IC9xdWV1ZUhvb2tzJC87CgogICAgZnVuY3Rpb24gdnQoKSB7CiAgICAgICAgcmV0dXJuIEMuc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgdXQgPSB2b2lkIDAKICAgICAgICB9KSwgdXQgPSBFLm5vdygpCiAgICB9CgogICAgZnVuY3Rpb24geXQoZSwgdCkgewogICAgICAgIHZhciBuLCByID0gewogICAgICAgICAgICAgICAgaGVpZ2h0OiBlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGkgPSAwOwogICAgICAgIGZvciAodCA9IHQgPyAxIDogMDsgaSA8IDQ7IGkgKz0gMiAtIHQpIHJbIm1hcmdpbiIgKyAobiA9IFVbaV0pXSA9IHJbInBhZGRpbmciICsgbl0gPSBlOwogICAgICAgIHJldHVybiB0ICYmIChyLm9wYWNpdHkgPSByLndpZHRoID0gZSksIHIKICAgIH0KCiAgICBmdW5jdGlvbiB4dChlLCB0LCBuKSB7CiAgICAgICAgZm9yICh2YXIgciwgaSA9IChidC50d2VlbmVyc1t0XSB8fCBbXSkuY29uY2F0KGJ0LnR3ZWVuZXJzWyIqIl0pLCBvID0gMCwgYSA9IGkubGVuZ3RoOyBvIDwgYTsgbysrKQogICAgICAgICAgICBpZiAociA9IGlbb10uY2FsbChuLCB0LCBlKSkgcmV0dXJuIHIKICAgIH0KCiAgICBmdW5jdGlvbiBidChvLCBlLCB0KSB7CiAgICAgICAgdmFyIG4sIGEsIHIgPSAwLAogICAgICAgICAgICBpID0gYnQucHJlZmlsdGVycy5sZW5ndGgsCiAgICAgICAgICAgIHMgPSBFLkRlZmVycmVkKCkuYWx3YXlzKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZGVsZXRlIHUuZWxlbQogICAgICAgICAgICB9KSwKICAgICAgICAgICAgdSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYgKGEpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB1dCB8fCB2dCgpLCB0ID0gTWF0aC5tYXgoMCwgbC5zdGFydFRpbWUgKyBsLmR1cmF0aW9uIC0gZSksIG4gPSAxIC0gKHQgLyBsLmR1cmF0aW9uIHx8IDApLCByID0gMCwgaSA9IGwudHdlZW5zLmxlbmd0aDsgciA8IGk7IHIrKykgbC50d2VlbnNbcl0ucnVuKG4pOwogICAgICAgICAgICAgICAgcmV0dXJuIHMubm90aWZ5V2l0aChvLCBbbCwgbiwgdF0pLCBuIDwgMSAmJiBpID8gdCA6IChzLnJlc29sdmVXaXRoKG8sIFtsXSksICExKQogICAgICAgICAgICB9LAogICAgICAgICAgICBsID0gcy5wcm9taXNlKHsKICAgICAgICAgICAgICAgIGVsZW06IG8sCiAgICAgICAgICAgICAgICBwcm9wczogRS5leHRlbmQoe30sIGUpLAogICAgICAgICAgICAgICAgb3B0czogRS5leHRlbmQoITAsIHsKICAgICAgICAgICAgICAgICAgICBzcGVjaWFsRWFzaW5nOiB7fSwKICAgICAgICAgICAgICAgICAgICBlYXNpbmc6IEUuZWFzaW5nLl9kZWZhdWx0CiAgICAgICAgICAgICAgICB9LCB0KSwKICAgICAgICAgICAgICAgIG9yaWdpbmFsUHJvcGVydGllczogZSwKICAgICAgICAgICAgICAgIG9yaWdpbmFsT3B0aW9uczogdCwKICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogdXQgfHwgdnQoKSwKICAgICAgICAgICAgICAgIGR1cmF0aW9uOiB0LmR1cmF0aW9uLAogICAgICAgICAgICAgICAgdHdlZW5zOiBbXSwKICAgICAgICAgICAgICAgIGNyZWF0ZVR3ZWVuOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBFLlR3ZWVuKG8sIGwub3B0cywgZSwgdCwgbC5vcHRzLnNwZWNpYWxFYXNpbmdbZV0gfHwgbC5vcHRzLmVhc2luZyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGwudHdlZW5zLnB1c2gobiksIG4KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBzdG9wOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSAwLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gZSA/IGwudHdlZW5zLmxlbmd0aCA6IDA7CiAgICAgICAgICAgICAgICAgICAgaWYgKGEpIHJldHVybiB0aGlzOwogICAgICAgICAgICAgICAgICAgIGZvciAoYSA9ICEwOyB0IDwgbjsgdCsrKSBsLnR3ZWVuc1t0XS5ydW4oMSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPyAocy5ub3RpZnlXaXRoKG8sIFtsLCAxLCAwXSksIHMucmVzb2x2ZVdpdGgobywgW2wsIGVdKSkgOiBzLnJlamVjdFdpdGgobywgW2wsIGVdKSwgdGhpcwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwKICAgICAgICAgICAgYyA9IGwucHJvcHM7CiAgICAgICAgZm9yIChmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICB2YXIgbiwgciwgaSwgbywgYTsKICAgICAgICAgICAgICAgIGZvciAobiBpbiBlKQogICAgICAgICAgICAgICAgICAgIGlmIChpID0gdFtyID0gRS5jYW1lbENhc2UobildLCBvID0gZVtuXSwgRS5pc0FycmF5KG8pICYmIChpID0gb1sxXSwgbyA9IGVbbl0gPSBvWzBdKSwgbiAhPT0gciAmJiAoZVtyXSA9IG8sIGRlbGV0ZSBlW25dKSwgKGEgPSBFLmNzc0hvb2tzW3JdKSAmJiAiZXhwYW5kIiBpbiBhKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKG4gaW4gbyA9IGEuZXhwYW5kKG8pLCBkZWxldGUgZVtyXSwgbykgbiBpbiBlIHx8IChlW25dID0gb1tuXSwgdFtuXSA9IGkpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgdFtyXSA9IGkKICAgICAgICAgICAgfShjLCBsLm9wdHMuc3BlY2lhbEVhc2luZyk7IHIgPCBpOyByKyspCiAgICAgICAgICAgIGlmIChuID0gYnQucHJlZmlsdGVyc1tyXS5jYWxsKGwsIG8sIGMsIGwub3B0cykpIHJldHVybiBFLmlzRnVuY3Rpb24obi5zdG9wKSAmJiAoRS5fcXVldWVIb29rcyhsLmVsZW0sIGwub3B0cy5xdWV1ZSkuc3RvcCA9IEUucHJveHkobi5zdG9wLCBuKSksIG47CiAgICAgICAgcmV0dXJuIEUubWFwKGMsIHh0LCBsKSwgRS5pc0Z1bmN0aW9uKGwub3B0cy5zdGFydCkgJiYgbC5vcHRzLnN0YXJ0LmNhbGwobywgbCksIEUuZngudGltZXIoRS5leHRlbmQodSwgewogICAgICAgICAgICBlbGVtOiBvLAogICAgICAgICAgICBhbmltOiBsLAogICAgICAgICAgICBxdWV1ZTogbC5vcHRzLnF1ZXVlCiAgICAgICAgfSkpLCBsLnByb2dyZXNzKGwub3B0cy5wcm9ncmVzcykuZG9uZShsLm9wdHMuZG9uZSwgbC5vcHRzLmNvbXBsZXRlKS5mYWlsKGwub3B0cy5mYWlsKS5hbHdheXMobC5vcHRzLmFsd2F5cykKICAgIH0KICAgIEUuQW5pbWF0aW9uID0gRS5leHRlbmQoYnQsIHsKICAgICAgICB0d2VlbmVyczogewogICAgICAgICAgICAiKiI6IFtmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IHRoaXMuY3JlYXRlVHdlZW4oZSwgdCk7CiAgICAgICAgICAgICAgICByZXR1cm4gWShuLmVsZW0sIGUsIFguZXhlYyh0KSwgbiksIG4KICAgICAgICAgICAgfV0KICAgICAgICB9LAogICAgICAgIHR3ZWVuZXI6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgZm9yICh2YXIgbiwgciA9IDAsIGkgPSAoZSA9IEUuaXNGdW5jdGlvbihlKSA/ICh0ID0gZSwgWyIqIl0pIDogZS5tYXRjaChxKSkubGVuZ3RoOyByIDwgaTsgcisrKSBuID0gZVtyXSwgYnQudHdlZW5lcnNbbl0gPSBidC50d2VlbmVyc1tuXSB8fCBbXSwgYnQudHdlZW5lcnNbbl0udW5zaGlmdCh0KQogICAgICAgIH0sCiAgICAgICAgcHJlZmlsdGVyczogW2Z1bmN0aW9uKHQsIGUsIG4pIHsKICAgICAgICAgICAgdmFyIHIsIGksIG8sIGEsIHMsIHUsIGwsIGMgPSB0aGlzLAogICAgICAgICAgICAgICAgZCA9IHt9LAogICAgICAgICAgICAgICAgZiA9IHQuc3R5bGUsCiAgICAgICAgICAgICAgICBwID0gdC5ub2RlVHlwZSAmJiBWKHQpLAogICAgICAgICAgICAgICAgaCA9IEUuX2RhdGEodCwgImZ4c2hvdyIpOwogICAgICAgICAgICBmb3IgKHIgaW4gbi5xdWV1ZSB8fCAobnVsbCA9PSAocyA9IEUuX3F1ZXVlSG9va3ModCwgImZ4IikpLnVucXVldWVkICYmIChzLnVucXVldWVkID0gMCwgdSA9IHMuZW1wdHkuZmlyZSwgcy5lbXB0eS5maXJlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcy51bnF1ZXVlZCB8fCB1KCkKICAgICAgICAgICAgICAgIH0pLCBzLnVucXVldWVkKyssIGMuYWx3YXlzKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGMuYWx3YXlzKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBzLnVucXVldWVkLS0sIEUucXVldWUodCwgImZ4IikubGVuZ3RoIHx8IHMuZW1wdHkuZmlyZSgpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pKSwgMSA9PT0gdC5ub2RlVHlwZSAmJiAoImhlaWdodCIgaW4gZSB8fCAid2lkdGgiIGluIGUpICYmIChuLm92ZXJmbG93ID0gW2Yub3ZlcmZsb3csIGYub3ZlcmZsb3dYLCBmLm92ZXJmbG93WV0sICJpbmxpbmUiID09PSAoIm5vbmUiID09PSAobCA9IEUuY3NzKHQsICJkaXNwbGF5IikpID8gRS5fZGF0YSh0LCAib2xkZGlzcGxheSIpIHx8IFBlKHQubm9kZU5hbWUpIDogbCkgJiYgIm5vbmUiID09PSBFLmNzcyh0LCAiZmxvYXQiKSAmJiAodi5pbmxpbmVCbG9ja05lZWRzTGF5b3V0ICYmICJpbmxpbmUiICE9PSBQZSh0Lm5vZGVOYW1lKSA/IGYuem9vbSA9IDEgOiBmLmRpc3BsYXkgPSAiaW5saW5lLWJsb2NrIikpLCBuLm92ZXJmbG93ICYmIChmLm92ZXJmbG93ID0gImhpZGRlbiIsIHYuc2hyaW5rV3JhcEJsb2NrcygpIHx8IGMuYWx3YXlzKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGYub3ZlcmZsb3cgPSBuLm92ZXJmbG93WzBdLCBmLm92ZXJmbG93WCA9IG4ub3ZlcmZsb3dbMV0sIGYub3ZlcmZsb3dZID0gbi5vdmVyZmxvd1syXQogICAgICAgICAgICAgICAgfSkpLCBlKQogICAgICAgICAgICAgICAgaWYgKGkgPSBlW3JdLCBndC5leGVjKGkpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGRlbGV0ZSBlW3JdLCBvID0gbyB8fCAidG9nZ2xlIiA9PT0gaSwgaSA9PT0gKHAgPyAiaGlkZSIgOiAic2hvdyIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgic2hvdyIgIT09IGkgfHwgIWggfHwgdm9pZCAwID09PSBoW3JdKSBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgICAgcCA9ICEwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGRbcl0gPSBoICYmIGhbcl0gfHwgRS5zdHlsZSh0LCByKQogICAgICAgICAgICAgICAgfSBlbHNlIGwgPSB2b2lkIDA7CiAgICAgICAgICAgIGlmIChFLmlzRW1wdHlPYmplY3QoZCkpICJpbmxpbmUiID09PSAoIm5vbmUiID09PSBsID8gUGUodC5ub2RlTmFtZSkgOiBsKSAmJiAoZi5kaXNwbGF5ID0gbCk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIGZvciAociBpbiBoID8gImhpZGRlbiIgaW4gaCAmJiAocCA9IGguaGlkZGVuKSA6IGggPSBFLl9kYXRhKHQsICJmeHNob3ciLCB7fSksIG8gJiYgKGguaGlkZGVuID0gIXApLCBwID8gRSh0KS5zaG93KCkgOiBjLmRvbmUoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIEUodCkuaGlkZSgpCiAgICAgICAgICAgICAgICAgICAgfSksIGMuZG9uZShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGU7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoZSBpbiBFLl9yZW1vdmVEYXRhKHQsICJmeHNob3ciKSwgZCkgRS5zdHlsZSh0LCBlLCBkW2VdKQogICAgICAgICAgICAgICAgICAgIH0pLCBkKSBhID0geHQocCA/IGhbcl0gOiAwLCByLCBjKSwgciBpbiBoIHx8IChoW3JdID0gYS5zdGFydCwgcCAmJiAoYS5lbmQgPSBhLnN0YXJ0LCBhLnN0YXJ0ID0gIndpZHRoIiA9PT0gciB8fCAiaGVpZ2h0IiA9PT0gciA/IDEgOiAwKSkKICAgICAgICB9XSwKICAgICAgICBwcmVmaWx0ZXI6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdCA/IGJ0LnByZWZpbHRlcnMudW5zaGlmdChlKSA6IGJ0LnByZWZpbHRlcnMucHVzaChlKQogICAgICAgIH0KICAgIH0pLCBFLnNwZWVkID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIHZhciByID0gZSAmJiAib2JqZWN0IiA9PSB0eXBlb2YgZSA/IEUuZXh0ZW5kKHt9LCBlKSA6IHsKICAgICAgICAgICAgY29tcGxldGU6IG4gfHwgIW4gJiYgdCB8fCBFLmlzRnVuY3Rpb24oZSkgJiYgZSwKICAgICAgICAgICAgZHVyYXRpb246IGUsCiAgICAgICAgICAgIGVhc2luZzogbiAmJiB0IHx8IHQgJiYgIUUuaXNGdW5jdGlvbih0KSAmJiB0CiAgICAgICAgfTsKICAgICAgICByZXR1cm4gci5kdXJhdGlvbiA9IEUuZngub2ZmID8gMCA6ICJudW1iZXIiID09IHR5cGVvZiByLmR1cmF0aW9uID8gci5kdXJhdGlvbiA6IHIuZHVyYXRpb24gaW4gRS5meC5zcGVlZHMgPyBFLmZ4LnNwZWVkc1tyLmR1cmF0aW9uXSA6IEUuZnguc3BlZWRzLl9kZWZhdWx0LCBudWxsICE9IHIucXVldWUgJiYgITAgIT09IHIucXVldWUgfHwgKHIucXVldWUgPSAiZngiKSwgci5vbGQgPSByLmNvbXBsZXRlLCByLmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIEUuaXNGdW5jdGlvbihyLm9sZCkgJiYgci5vbGQuY2FsbCh0aGlzKSwgci5xdWV1ZSAmJiBFLmRlcXVldWUodGhpcywgci5xdWV1ZSkKICAgICAgICB9LCByCiAgICB9LCBFLmZuLmV4dGVuZCh7CiAgICAgICAgZmFkZVRvOiBmdW5jdGlvbihlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmZpbHRlcihWKS5jc3MoIm9wYWNpdHkiLCAwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiB0CiAgICAgICAgICAgIH0sIGUsIG4sIHIpCiAgICAgICAgfSwKICAgICAgICBhbmltYXRlOiBmdW5jdGlvbih0LCBlLCBuLCByKSB7CiAgICAgICAgICAgIHZhciBpID0gRS5pc0VtcHR5T2JqZWN0KHQpLAogICAgICAgICAgICAgICAgbyA9IEUuc3BlZWQoZSwgbiwgciksCiAgICAgICAgICAgICAgICBhID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBidCh0aGlzLCBFLmV4dGVuZCh7fSwgdCksIG8pOwogICAgICAgICAgICAgICAgICAgIChpIHx8IEUuX2RhdGEodGhpcywgImZpbmlzaCIpKSAmJiBlLnN0b3AoITApCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gYS5maW5pc2ggPSBhLCBpIHx8ICExID09PSBvLnF1ZXVlID8gdGhpcy5lYWNoKGEpIDogdGhpcy5xdWV1ZShvLnF1ZXVlLCBhKQogICAgICAgIH0sCiAgICAgICAgc3RvcDogZnVuY3Rpb24oaSwgZSwgbykgewogICAgICAgICAgICB2YXIgYSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gZS5zdG9wOwogICAgICAgICAgICAgICAgZGVsZXRlIGUuc3RvcCwgdChvKQogICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gInN0cmluZyIgIT0gdHlwZW9mIGkgJiYgKG8gPSBlLCBlID0gaSwgaSA9IHZvaWQgMCksIGUgJiYgITEgIT09IGkgJiYgdGhpcy5xdWV1ZShpIHx8ICJmeCIsIFtdKSwgdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSAhMCwKICAgICAgICAgICAgICAgICAgICB0ID0gbnVsbCAhPSBpICYmIGkgKyAicXVldWVIb29rcyIsCiAgICAgICAgICAgICAgICAgICAgbiA9IEUudGltZXJzLAogICAgICAgICAgICAgICAgICAgIHIgPSBFLl9kYXRhKHRoaXMpOwogICAgICAgICAgICAgICAgaWYgKHQpIHJbdF0gJiYgclt0XS5zdG9wICYmIGEoclt0XSk7CiAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgZm9yICh0IGluIHIpIHJbdF0gJiYgclt0XS5zdG9wICYmIG10LnRlc3QodCkgJiYgYShyW3RdKTsKICAgICAgICAgICAgICAgIGZvciAodCA9IG4ubGVuZ3RoOyB0LS07KSBuW3RdLmVsZW0gIT09IHRoaXMgfHwgbnVsbCAhPSBpICYmIG5bdF0ucXVldWUgIT09IGkgfHwgKG5bdF0uYW5pbS5zdG9wKG8pLCBlID0gITEsIG4uc3BsaWNlKHQsIDEpKTsKICAgICAgICAgICAgICAgICFlICYmIG8gfHwgRS5kZXF1ZXVlKHRoaXMsIGkpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBmaW5pc2g6IGZ1bmN0aW9uKGEpIHsKICAgICAgICAgICAgcmV0dXJuICExICE9PSBhICYmIChhID0gYSB8fCAiZngiKSwgdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUsIHQgPSBFLl9kYXRhKHRoaXMpLAogICAgICAgICAgICAgICAgICAgIG4gPSB0W2EgKyAicXVldWUiXSwKICAgICAgICAgICAgICAgICAgICByID0gdFthICsgInF1ZXVlSG9va3MiXSwKICAgICAgICAgICAgICAgICAgICBpID0gRS50aW1lcnMsCiAgICAgICAgICAgICAgICAgICAgbyA9IG4gPyBuLmxlbmd0aCA6IDA7CiAgICAgICAgICAgICAgICBmb3IgKHQuZmluaXNoID0gITAsIEUucXVldWUodGhpcywgYSwgW10pLCByICYmIHIuc3RvcCAmJiByLnN0b3AuY2FsbCh0aGlzLCAhMCksIGUgPSBpLmxlbmd0aDsgZS0tOykgaVtlXS5lbGVtID09PSB0aGlzICYmIGlbZV0ucXVldWUgPT09IGEgJiYgKGlbZV0uYW5pbS5zdG9wKCEwKSwgaS5zcGxpY2UoZSwgMSkpOwogICAgICAgICAgICAgICAgZm9yIChlID0gMDsgZSA8IG87IGUrKykgbltlXSAmJiBuW2VdLmZpbmlzaCAmJiBuW2VdLmZpbmlzaC5jYWxsKHRoaXMpOwogICAgICAgICAgICAgICAgZGVsZXRlIHQuZmluaXNoCiAgICAgICAgICAgIH0pCiAgICAgICAgfQogICAgfSksIEUuZWFjaChbInRvZ2dsZSIsICJzaG93IiwgImhpZGUiXSwgZnVuY3Rpb24oZSwgcikgewogICAgICAgIHZhciBpID0gRS5mbltyXTsKICAgICAgICBFLmZuW3JdID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gbnVsbCA9PSBlIHx8ICJib29sZWFuIiA9PSB0eXBlb2YgZSA/IGkuYXBwbHkodGhpcywgYXJndW1lbnRzKSA6IHRoaXMuYW5pbWF0ZSh5dChyLCAhMCksIGUsIHQsIG4pCiAgICAgICAgfQogICAgfSksIEUuZWFjaCh7CiAgICAgICAgc2xpZGVEb3duOiB5dCgic2hvdyIpLAogICAgICAgIHNsaWRlVXA6IHl0KCJoaWRlIiksCiAgICAgICAgc2xpZGVUb2dnbGU6IHl0KCJ0b2dnbGUiKSwKICAgICAgICBmYWRlSW46IHsKICAgICAgICAgICAgb3BhY2l0eTogInNob3ciCiAgICAgICAgfSwKICAgICAgICBmYWRlT3V0OiB7CiAgICAgICAgICAgIG9wYWNpdHk6ICJoaWRlIgogICAgICAgIH0sCiAgICAgICAgZmFkZVRvZ2dsZTogewogICAgICAgICAgICBvcGFjaXR5OiAidG9nZ2xlIgogICAgICAgIH0KICAgIH0sIGZ1bmN0aW9uKGUsIHIpIHsKICAgICAgICBFLmZuW2VdID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gdGhpcy5hbmltYXRlKHIsIGUsIHQsIG4pCiAgICAgICAgfQogICAgfSksIEUudGltZXJzID0gW10sIEUuZngudGljayA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBlLCB0ID0gRS50aW1lcnMsCiAgICAgICAgICAgIG4gPSAwOwogICAgICAgIGZvciAodXQgPSBFLm5vdygpOyBuIDwgdC5sZW5ndGg7IG4rKykoZSA9IHRbbl0pKCkgfHwgdFtuXSAhPT0gZSB8fCB0LnNwbGljZShuLS0sIDEpOwogICAgICAgIHQubGVuZ3RoIHx8IEUuZnguc3RvcCgpLCB1dCA9IHZvaWQgMAogICAgfSwgRS5meC50aW1lciA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICBFLnRpbWVycy5wdXNoKGUpLCBlKCkgPyBFLmZ4LnN0YXJ0KCkgOiBFLnRpbWVycy5wb3AoKQogICAgfSwgRS5meC5pbnRlcnZhbCA9IDEzLCBFLmZ4LnN0YXJ0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgbHQgfHwgKGx0ID0gQy5zZXRJbnRlcnZhbChFLmZ4LnRpY2ssIEUuZnguaW50ZXJ2YWwpKQogICAgfSwgRS5meC5zdG9wID0gZnVuY3Rpb24oKSB7CiAgICAgICAgQy5jbGVhckludGVydmFsKGx0KSwgbHQgPSBudWxsCiAgICB9LCBFLmZ4LnNwZWVkcyA9IHsKICAgICAgICBzbG93OiA2MDAsCiAgICAgICAgZmFzdDogMjAwLAogICAgICAgIF9kZWZhdWx0OiA0MDAKICAgIH0sIEUuZm4uZGVsYXkgPSBmdW5jdGlvbihyLCBlKSB7CiAgICAgICAgcmV0dXJuIHIgPSBFLmZ4ICYmIEUuZnguc3BlZWRzW3JdIHx8IHIsIGUgPSBlIHx8ICJmeCIsIHRoaXMucXVldWUoZSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgbiA9IEMuc2V0VGltZW91dChlLCByKTsKICAgICAgICAgICAgdC5zdG9wID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBDLmNsZWFyVGltZW91dChuKQogICAgICAgICAgICB9CiAgICAgICAgfSkKICAgIH0sIGR0ID0gaC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLCBmdCA9IGguY3JlYXRlRWxlbWVudCgiZGl2IiksIHB0ID0gaC5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKSwgaHQgPSBwdC5hcHBlbmRDaGlsZChoLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKSwgKGZ0ID0gaC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuc2V0QXR0cmlidXRlKCJjbGFzc05hbWUiLCAidCIpLCBmdC5pbm5lckhUTUwgPSAiICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0nL2EnPmE8L2E+PGlucHV0IHR5cGU9J2NoZWNrYm94Jy8+IiwgY3QgPSBmdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYSIpWzBdLCBkdC5zZXRBdHRyaWJ1dGUoInR5cGUiLCAiY2hlY2tib3giKSwgZnQuYXBwZW5kQ2hpbGQoZHQpLCAoY3QgPSBmdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYSIpWzBdKS5zdHlsZS5jc3NUZXh0ID0gInRvcDoxcHgiLCB2LmdldFNldEF0dHJpYnV0ZSA9ICJ0IiAhPT0gZnQuY2xhc3NOYW1lLCB2LnN0eWxlID0gL3RvcC8udGVzdChjdC5nZXRBdHRyaWJ1dGUoInN0eWxlIikpLCB2LmhyZWZOb3JtYWxpemVkID0gIi9hIiA9PT0gY3QuZ2V0QXR0cmlidXRlKCJocmVmIiksIHYuY2hlY2tPbiA9ICEhZHQudmFsdWUsIHYub3B0U2VsZWN0ZWQgPSBodC5zZWxlY3RlZCwgdi5lbmN0eXBlID0gISFoLmNyZWF0ZUVsZW1lbnQoImZvcm0iKS5lbmN0eXBlLCBwdC5kaXNhYmxlZCA9ICEwLCB2Lm9wdERpc2FibGVkID0gIWh0LmRpc2FibGVkLCAoZHQgPSBoLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiIiksIHYuaW5wdXQgPSAiIiA9PT0gZHQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpLCBkdC52YWx1ZSA9ICJ0IiwgZHQuc2V0QXR0cmlidXRlKCJ0eXBlIiwgInJhZGlvIiksIHYucmFkaW9WYWx1ZSA9ICJ0IiA9PT0gZHQudmFsdWU7CiAgICB2YXIgd3QgPSAvXHIvZywKICAgICAgICBUdCA9IC9bXHgyMFx0XHJcblxmXSsvZzsKICAgIEUuZm4uZXh0ZW5kKHsKICAgICAgICB2YWw6IGZ1bmN0aW9uKG4pIHsKICAgICAgICAgICAgdmFyIHIsIGUsIGksIHQgPSB0aGlzWzBdOwogICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzLmxlbmd0aCA/IChpID0gRS5pc0Z1bmN0aW9uKG4pLCB0aGlzLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQ7CiAgICAgICAgICAgICAgICAxID09PSB0aGlzLm5vZGVUeXBlICYmIChudWxsID09ICh0ID0gaSA/IG4uY2FsbCh0aGlzLCBlLCBFKHRoaXMpLnZhbCgpKSA6IG4pID8gdCA9ICIiIDogIm51bWJlciIgPT0gdHlwZW9mIHQgPyB0ICs9ICIiIDogRS5pc0FycmF5KHQpICYmICh0ID0gRS5tYXAodCwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IGUgPyAiIiA6IGUgKyAiIgogICAgICAgICAgICAgICAgfSkpLCAociA9IEUudmFsSG9va3NbdGhpcy50eXBlXSB8fCBFLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pICYmICJzZXQiIGluIHIgJiYgdm9pZCAwICE9PSByLnNldCh0aGlzLCB0LCAidmFsdWUiKSB8fCAodGhpcy52YWx1ZSA9IHQpKQogICAgICAgICAgICB9KSkgOiB0ID8gKHIgPSBFLnZhbEhvb2tzW3QudHlwZV0gfHwgRS52YWxIb29rc1t0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSAmJiAiZ2V0IiBpbiByICYmIHZvaWQgMCAhPT0gKGUgPSByLmdldCh0LCAidmFsdWUiKSkgPyBlIDogInN0cmluZyIgPT0gdHlwZW9mKGUgPSB0LnZhbHVlKSA/IGUucmVwbGFjZSh3dCwgIiIpIDogbnVsbCA9PSBlID8gIiIgOiBlIDogdm9pZCAwCiAgICAgICAgfQogICAgfSksIEUuZXh0ZW5kKHsKICAgICAgICB2YWxIb29rczogewogICAgICAgICAgICBvcHRpb246IHsKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gRS5maW5kLmF0dHIoZSwgInZhbHVlIik7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgIT0gdCA/IHQgOiBFLnRyaW0oRS50ZXh0KGUpKS5yZXBsYWNlKFR0LCAiICIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHNlbGVjdDogewogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCwgbiwgciA9IGUub3B0aW9ucywgaSA9IGUuc2VsZWN0ZWRJbmRleCwgbyA9ICJzZWxlY3Qtb25lIiA9PT0gZS50eXBlIHx8IGkgPCAwLCBhID0gbyA/IG51bGwgOiBbXSwgcyA9IG8gPyBpICsgMSA6IHIubGVuZ3RoLCB1ID0gaSA8IDAgPyBzIDogbyA/IGkgOiAwOyB1IDwgczsgdSsrKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoKChuID0gclt1XSkuc2VsZWN0ZWQgfHwgdSA9PT0gaSkgJiYgKHYub3B0RGlzYWJsZWQgPyAhbi5kaXNhYmxlZCA6IG51bGwgPT09IG4uZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKSAmJiAoIW4ucGFyZW50Tm9kZS5kaXNhYmxlZCB8fCAhRS5ub2RlTmFtZShuLnBhcmVudE5vZGUsICJvcHRncm91cCIpKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHQgPSBFKG4pLnZhbCgpLCBvKSByZXR1cm4gdDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEucHVzaCh0KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBuLCByLCBpID0gZS5vcHRpb25zLCBvID0gRS5tYWtlQXJyYXkodCksIGEgPSBpLmxlbmd0aDsgYS0tOykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHIgPSBpW2FdLCAtMSA8IEUuaW5BcnJheShFLnZhbEhvb2tzLm9wdGlvbi5nZXQociksIG8pKSB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgci5zZWxlY3RlZCA9IG4gPSAhMAogICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByLnNjcm9sbEhlaWdodAogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Ugci5zZWxlY3RlZCA9ICExOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuIHx8IChlLnNlbGVjdGVkSW5kZXggPSAtMSksIGkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLCBFLmVhY2goWyJyYWRpbyIsICJjaGVja2JveCJdLCBmdW5jdGlvbigpIHsKICAgICAgICBFLnZhbEhvb2tzW3RoaXNdID0gewogICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBFLmlzQXJyYXkodCkgPyBlLmNoZWNrZWQgPSAtMSA8IEUuaW5BcnJheShFKGUpLnZhbCgpLCB0KSA6IHZvaWQgMAogICAgICAgICAgICB9CiAgICAgICAgfSwgdi5jaGVja09uIHx8IChFLnZhbEhvb2tzW3RoaXNdLmdldCA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIG51bGwgPT09IGUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpID8gIm9uIiA6IGUudmFsdWUKICAgICAgICB9KQogICAgfSk7CiAgICB2YXIgQ3QsIEV0LCBOdCA9IEUuZXhwci5hdHRySGFuZGxlLAogICAgICAgIGt0ID0gL14oPzpjaGVja2VkfHNlbGVjdGVkKSQvaSwKICAgICAgICBTdCA9IHYuZ2V0U2V0QXR0cmlidXRlLAogICAgICAgIEF0ID0gdi5pbnB1dDsKICAgIEUuZm4uZXh0ZW5kKHsKICAgICAgICBhdHRyOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiBLKHRoaXMsIEUuYXR0ciwgZSwgdCwgMSA8IGFyZ3VtZW50cy5sZW5ndGgpCiAgICAgICAgfSwKICAgICAgICByZW1vdmVBdHRyOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBFLnJlbW92ZUF0dHIodGhpcywgZSkKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KSwgRS5leHRlbmQoewogICAgICAgIGF0dHI6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgdmFyIHIsIGksIG8gPSBlLm5vZGVUeXBlOwogICAgICAgICAgICBpZiAoMyAhPT0gbyAmJiA4ICE9PSBvICYmIDIgIT09IG8pIHJldHVybiB2b2lkIDAgPT09IGUuZ2V0QXR0cmlidXRlID8gRS5wcm9wKGUsIHQsIG4pIDogKDEgPT09IG8gJiYgRS5pc1hNTERvYyhlKSB8fCAodCA9IHQudG9Mb3dlckNhc2UoKSwgaSA9IEUuYXR0ckhvb2tzW3RdIHx8IChFLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpID8gRXQgOiBDdCkpLCB2b2lkIDAgIT09IG4gPyBudWxsID09PSBuID8gdm9pZCBFLnJlbW92ZUF0dHIoZSwgdCkgOiBpICYmICJzZXQiIGluIGkgJiYgdm9pZCAwICE9PSAociA9IGkuc2V0KGUsIG4sIHQpKSA/IHIgOiAoZS5zZXRBdHRyaWJ1dGUodCwgbiArICIiKSwgbikgOiBpICYmICJnZXQiIGluIGkgJiYgbnVsbCAhPT0gKHIgPSBpLmdldChlLCB0KSkgPyByIDogbnVsbCA9PSAociA9IEUuZmluZC5hdHRyKGUsIHQpKSA/IHZvaWQgMCA6IHIpCiAgICAgICAgfSwKICAgICAgICBhdHRySG9va3M6IHsKICAgICAgICAgICAgdHlwZTogewogICAgICAgICAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF2LnJhZGlvVmFsdWUgJiYgInJhZGlvIiA9PT0gdCAmJiBFLm5vZGVOYW1lKGUsICJpbnB1dCIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBuID0gZS52YWx1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuc2V0QXR0cmlidXRlKCJ0eXBlIiwgdCksIG4gJiYgKGUudmFsdWUgPSBuKSwgdAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcmVtb3ZlQXR0cjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgbiwgciwgaSA9IDAsCiAgICAgICAgICAgICAgICBvID0gdCAmJiB0Lm1hdGNoKHEpOwogICAgICAgICAgICBpZiAobyAmJiAxID09PSBlLm5vZGVUeXBlKQogICAgICAgICAgICAgICAgZm9yICg7IG4gPSBvW2krK107KSByID0gRS5wcm9wRml4W25dIHx8IG4sIEUuZXhwci5tYXRjaC5ib29sLnRlc3QobikgPyBBdCAmJiBTdCB8fCAha3QudGVzdChuKSA/IGVbcl0gPSAhMSA6IGVbRS5jYW1lbENhc2UoImRlZmF1bHQtIiArIG4pXSA9IGVbcl0gPSAhMSA6IEUuYXR0cihlLCBuLCAiIiksIGUucmVtb3ZlQXR0cmlidXRlKFN0ID8gbiA6IHIpCiAgICAgICAgfQogICAgfSksIEV0ID0gewogICAgICAgIHNldDogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gITEgPT09IHQgPyBFLnJlbW92ZUF0dHIoZSwgbikgOiBBdCAmJiBTdCB8fCAha3QudGVzdChuKSA/IGUuc2V0QXR0cmlidXRlKCFTdCAmJiBFLnByb3BGaXhbbl0gfHwgbiwgbikgOiBlW0UuY2FtZWxDYXNlKCJkZWZhdWx0LSIgKyBuKV0gPSBlW25dID0gITAsIG4KICAgICAgICB9CiAgICB9LCBFLmVhY2goRS5leHByLm1hdGNoLmJvb2wuc291cmNlLm1hdGNoKC9cdysvZyksIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICB2YXIgbyA9IE50W3RdIHx8IEUuZmluZC5hdHRyOwogICAgICAgIEF0ICYmIFN0IHx8ICFrdC50ZXN0KHQpID8gTnRbdF0gPSBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByLCBpOwogICAgICAgICAgICByZXR1cm4gbiB8fCAoaSA9IE50W3RdLCBOdFt0XSA9IHIsIHIgPSBudWxsICE9IG8oZSwgdCwgbikgPyB0LnRvTG93ZXJDYXNlKCkgOiBudWxsLCBOdFt0XSA9IGkpLCByCiAgICAgICAgfSA6IE50W3RdID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gbiA/IHZvaWQgMCA6IGVbRS5jYW1lbENhc2UoImRlZmF1bHQtIiArIHQpXSA/IHQudG9Mb3dlckNhc2UoKSA6IG51bGwKICAgICAgICB9CiAgICB9KSwgQXQgJiYgU3QgfHwgKEUuYXR0ckhvb2tzLnZhbHVlID0gewogICAgICAgIHNldDogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gRS5ub2RlTmFtZShlLCAiaW5wdXQiKSA/IHZvaWQoZS5kZWZhdWx0VmFsdWUgPSB0KSA6IEN0ICYmIEN0LnNldChlLCB0LCBuKQogICAgICAgIH0KICAgIH0pLCBTdCB8fCAoQ3QgPSB7CiAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByID0gZS5nZXRBdHRyaWJ1dGVOb2RlKG4pOwogICAgICAgICAgICByZXR1cm4gciB8fCBlLnNldEF0dHJpYnV0ZU5vZGUociA9IGUub3duZXJEb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUobikpLCByLnZhbHVlID0gdCArPSAiIiwgInZhbHVlIiA9PT0gbiB8fCB0ID09PSBlLmdldEF0dHJpYnV0ZShuKSA/IHQgOiB2b2lkIDAKICAgICAgICB9CiAgICB9LCBOdC5pZCA9IE50Lm5hbWUgPSBOdC5jb29yZHMgPSBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgdmFyIHI7CiAgICAgICAgcmV0dXJuIG4gPyB2b2lkIDAgOiAociA9IGUuZ2V0QXR0cmlidXRlTm9kZSh0KSkgJiYgIiIgIT09IHIudmFsdWUgPyByLnZhbHVlIDogbnVsbAogICAgfSwgRS52YWxIb29rcy5idXR0b24gPSB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gZS5nZXRBdHRyaWJ1dGVOb2RlKHQpOwogICAgICAgICAgICByZXR1cm4gbiAmJiBuLnNwZWNpZmllZCA/IG4udmFsdWUgOiB2b2lkIDAKICAgICAgICB9LAogICAgICAgIHNldDogQ3Quc2V0CiAgICB9LCBFLmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGUgPSB7CiAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIEN0LnNldChlLCAiIiAhPT0gdCAmJiB0LCBuKQogICAgICAgIH0KICAgIH0sIEUuZWFjaChbIndpZHRoIiwgImhlaWdodCJdLCBmdW5jdGlvbihlLCBuKSB7CiAgICAgICAgRS5hdHRySG9va3Nbbl0gPSB7CiAgICAgICAgICAgIHNldDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgcmV0dXJuICIiID09PSB0ID8gKGUuc2V0QXR0cmlidXRlKG4sICJhdXRvIiksIHQpIDogdm9pZCAwCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSksIHYuc3R5bGUgfHwgKEUuYXR0ckhvb2tzLnN0eWxlID0gewogICAgICAgIGdldDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gZS5zdHlsZS5jc3NUZXh0IHx8IHZvaWQgMAogICAgICAgIH0sCiAgICAgICAgc2V0OiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiBlLnN0eWxlLmNzc1RleHQgPSB0ICsgIiIKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBEdCA9IC9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbnxvYmplY3QpJC9pLAogICAgICAgIGp0ID0gL14oPzphfGFyZWEpJC9pOwogICAgRS5mbi5leHRlbmQoewogICAgICAgIHByb3A6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIEsodGhpcywgRS5wcm9wLCBlLCB0LCAxIDwgYXJndW1lbnRzLmxlbmd0aCkKICAgICAgICB9LAogICAgICAgIHJlbW92ZVByb3A6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGUgPSBFLnByb3BGaXhbZV0gfHwgZSwgdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICB0aGlzW2VdID0gdm9pZCAwLCBkZWxldGUgdGhpc1tlXQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KSwgRS5leHRlbmQoewogICAgICAgIHByb3A6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgdmFyIHIsIGksIG8gPSBlLm5vZGVUeXBlOwogICAgICAgICAgICBpZiAoMyAhPT0gbyAmJiA4ICE9PSBvICYmIDIgIT09IG8pIHJldHVybiAxID09PSBvICYmIEUuaXNYTUxEb2MoZSkgfHwgKHQgPSBFLnByb3BGaXhbdF0gfHwgdCwgaSA9IEUucHJvcEhvb2tzW3RdKSwgdm9pZCAwICE9PSBuID8gaSAmJiAic2V0IiBpbiBpICYmIHZvaWQgMCAhPT0gKHIgPSBpLnNldChlLCBuLCB0KSkgPyByIDogZVt0XSA9IG4gOiBpICYmICJnZXQiIGluIGkgJiYgbnVsbCAhPT0gKHIgPSBpLmdldChlLCB0KSkgPyByIDogZVt0XQogICAgICAgIH0sCiAgICAgICAgcHJvcEhvb2tzOiB7CiAgICAgICAgICAgIHRhYkluZGV4OiB7CiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IEUuZmluZC5hdHRyKGUsICJ0YWJpbmRleCIpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0ID8gcGFyc2VJbnQodCwgMTApIDogRHQudGVzdChlLm5vZGVOYW1lKSB8fCBqdC50ZXN0KGUubm9kZU5hbWUpICYmIGUuaHJlZiA/IDAgOiAtMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBwcm9wRml4OiB7CiAgICAgICAgICAgIGZvcjogImh0bWxGb3IiLAogICAgICAgICAgICBjbGFzczogImNsYXNzTmFtZSIKICAgICAgICB9CiAgICB9KSwgdi5ocmVmTm9ybWFsaXplZCB8fCBFLmVhY2goWyJocmVmIiwgInNyYyJdLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgRS5wcm9wSG9va3NbdF0gPSB7CiAgICAgICAgICAgIGdldDogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGUuZ2V0QXR0cmlidXRlKHQsIDQpCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgdi5vcHRTZWxlY3RlZCB8fCAoRS5wcm9wSG9va3Muc2VsZWN0ZWQgPSB7CiAgICAgICAgZ2V0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gZS5wYXJlbnROb2RlOwogICAgICAgICAgICByZXR1cm4gdCAmJiAodC5zZWxlY3RlZEluZGV4LCB0LnBhcmVudE5vZGUgJiYgdC5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgpLCBudWxsCiAgICAgICAgfSwKICAgICAgICBzZXQ6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSBlLnBhcmVudE5vZGU7CiAgICAgICAgICAgIHQgJiYgKHQuc2VsZWN0ZWRJbmRleCwgdC5wYXJlbnROb2RlICYmIHQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KQogICAgICAgIH0KICAgIH0pLCBFLmVhY2goWyJ0YWJJbmRleCIsICJyZWFkT25seSIsICJtYXhMZW5ndGgiLCAiY2VsbFNwYWNpbmciLCAiY2VsbFBhZGRpbmciLCAicm93U3BhbiIsICJjb2xTcGFuIiwgInVzZU1hcCIsICJmcmFtZUJvcmRlciIsICJjb250ZW50RWRpdGFibGUiXSwgZnVuY3Rpb24oKSB7CiAgICAgICAgRS5wcm9wRml4W3RoaXMudG9Mb3dlckNhc2UoKV0gPSB0aGlzCiAgICB9KSwgdi5lbmN0eXBlIHx8IChFLnByb3BGaXguZW5jdHlwZSA9ICJlbmNvZGluZyIpOwogICAgdmFyIEx0ID0gL1tcdFxyXG5cZl0vZzsKCiAgICBmdW5jdGlvbiBIdChlKSB7CiAgICAgICAgcmV0dXJuIEUuYXR0cihlLCAiY2xhc3MiKSB8fCAiIgogICAgfQogICAgRS5mbi5leHRlbmQoewogICAgICAgIGFkZENsYXNzOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBlLCBuLCByLCBpLCBvLCBhLCBzLCB1ID0gMDsKICAgICAgICAgICAgaWYgKEUuaXNGdW5jdGlvbih0KSkgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBFKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLCBlLCBIdCh0aGlzKSkpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBpZiAoInN0cmluZyIgPT0gdHlwZW9mIHQgJiYgdCkKICAgICAgICAgICAgICAgIGZvciAoZSA9IHQubWF0Y2gocSkgfHwgW107IG4gPSB0aGlzW3UrK107KQogICAgICAgICAgICAgICAgICAgIGlmIChpID0gSHQobiksIHIgPSAxID09PSBuLm5vZGVUeXBlICYmICgiICIgKyBpICsgIiAiKS5yZXBsYWNlKEx0LCAiICIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IDA7IG8gPSBlW2ErK107KSByLmluZGV4T2YoIiAiICsgbyArICIgIikgPCAwICYmIChyICs9IG8gKyAiICIpOwogICAgICAgICAgICAgICAgICAgICAgICBpICE9PSAocyA9IEUudHJpbShyKSkgJiYgRS5hdHRyKG4sICJjbGFzcyIsIHMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdGhpcwogICAgICAgIH0sCiAgICAgICAgcmVtb3ZlQ2xhc3M6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdmFyIGUsIG4sIHIsIGksIG8sIGEsIHMsIHUgPSAwOwogICAgICAgICAgICBpZiAoRS5pc0Z1bmN0aW9uKHQpKSByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIEUodGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsIGUsIEh0KHRoaXMpKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlmICghYXJndW1lbnRzLmxlbmd0aCkgcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCAiIik7CiAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgdCAmJiB0KQogICAgICAgICAgICAgICAgZm9yIChlID0gdC5tYXRjaChxKSB8fCBbXTsgbiA9IHRoaXNbdSsrXTspCiAgICAgICAgICAgICAgICAgICAgaWYgKGkgPSBIdChuKSwgciA9IDEgPT09IG4ubm9kZVR5cGUgJiYgKCIgIiArIGkgKyAiICIpLnJlcGxhY2UoTHQsICIgIikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gMDsgbyA9IGVbYSsrXTspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgLSAxIDwgci5pbmRleE9mKCIgIiArIG8gKyAiICIpOykgciA9IHIucmVwbGFjZSgiICIgKyBvICsgIiAiLCAiICIpOwogICAgICAgICAgICAgICAgICAgICAgICBpICE9PSAocyA9IEUudHJpbShyKSkgJiYgRS5hdHRyKG4sICJjbGFzcyIsIHMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdGhpcwogICAgICAgIH0sCiAgICAgICAgdG9nZ2xlQ2xhc3M6IGZ1bmN0aW9uKGksIHQpIHsKICAgICAgICAgICAgdmFyIG8gPSB0eXBlb2YgaTsKICAgICAgICAgICAgcmV0dXJuICJib29sZWFuIiA9PSB0eXBlb2YgdCAmJiAic3RyaW5nIiA9PT0gbyA/IHQgPyB0aGlzLmFkZENsYXNzKGkpIDogdGhpcy5yZW1vdmVDbGFzcyhpKSA6IEUuaXNGdW5jdGlvbihpKSA/IHRoaXMuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBFKHRoaXMpLnRvZ2dsZUNsYXNzKGkuY2FsbCh0aGlzLCBlLCBIdCh0aGlzKSwgdCksIHQpCiAgICAgICAgICAgIH0pIDogdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUsIHQsIG4sIHI7CiAgICAgICAgICAgICAgICBpZiAoInN0cmluZyIgPT09IG8pCiAgICAgICAgICAgICAgICAgICAgZm9yICh0ID0gMCwgbiA9IEUodGhpcyksIHIgPSBpLm1hdGNoKHEpIHx8IFtdOyBlID0gclt0KytdOykgbi5oYXNDbGFzcyhlKSA/IG4ucmVtb3ZlQ2xhc3MoZSkgOiBuLmFkZENsYXNzKGUpOwogICAgICAgICAgICAgICAgZWxzZSB2b2lkIDAgIT09IGkgJiYgImJvb2xlYW4iICE9PSBvIHx8ICgoZSA9IEh0KHRoaXMpKSAmJiBFLl9kYXRhKHRoaXMsICJfX2NsYXNzTmFtZV9fIiwgZSksIEUuYXR0cih0aGlzLCAiY2xhc3MiLCBlIHx8ICExID09PSBpID8gIiIgOiBFLl9kYXRhKHRoaXMsICJfX2NsYXNzTmFtZV9fIikgfHwgIiIpKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaGFzQ2xhc3M6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQsIG4sIHIgPSAwOwogICAgICAgICAgICBmb3IgKHQgPSAiICIgKyBlICsgIiAiOyBuID0gdGhpc1tyKytdOykKICAgICAgICAgICAgICAgIGlmICgxID09PSBuLm5vZGVUeXBlICYmIC0xIDwgKCIgIiArIEh0KG4pICsgIiAiKS5yZXBsYWNlKEx0LCAiICIpLmluZGV4T2YodCkpIHJldHVybiAhMDsKICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgfQogICAgfSksIEUuZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IGxvYWQgcmVzaXplIHNjcm9sbCB1bmxvYWQgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBlcnJvciBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSwgZnVuY3Rpb24oZSwgbikgewogICAgICAgIEUuZm5bbl0gPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiAwIDwgYXJndW1lbnRzLmxlbmd0aCA/IHRoaXMub24obiwgbnVsbCwgZSwgdCkgOiB0aGlzLnRyaWdnZXIobikKICAgICAgICB9CiAgICB9KSwgRS5mbi5leHRlbmQoewogICAgICAgIGhvdmVyOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLm1vdXNlZW50ZXIoZSkubW91c2VsZWF2ZSh0IHx8IGUpCiAgICAgICAgfQogICAgfSk7CiAgICB2YXIgcXQgPSBDLmxvY2F0aW9uLAogICAgICAgIF90ID0gRS5ub3coKSwKICAgICAgICBGdCA9IC9cPy8sCiAgICAgICAgTXQgPSAvKCwpfChcW3x7KXwofXxdKXwiKD86W14iXFxcclxuXXxcXFsiXFxcL2JmbnJ0XXxcXHVbXGRhLWZBLUZdezR9KSoiXHMqOj98dHJ1ZXxmYWxzZXxudWxsfC0/KD8hMFxkKVxkKyg/OlwuXGQrfCkoPzpbZUVdWystXT9cZCt8KS9nOwogICAgRS5wYXJzZUpTT04gPSBmdW5jdGlvbihlKSB7CiAgICAgICAgaWYgKEMuSlNPTiAmJiBDLkpTT04ucGFyc2UpIHJldHVybiBDLkpTT04ucGFyc2UoZSArICIiKTsKICAgICAgICB2YXIgaSwgbyA9IG51bGwsCiAgICAgICAgICAgIHQgPSBFLnRyaW0oZSArICIiKTsKICAgICAgICByZXR1cm4gdCAmJiAhRS50cmltKHQucmVwbGFjZShNdCwgZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICByZXR1cm4gaSAmJiB0ICYmIChvID0gMCksIDAgPT09IG8gPyBlIDogKGkgPSBuIHx8IHQsIG8gKz0gIXIgLSAhbiwgIiIpCiAgICAgICAgfSkpID8gRnVuY3Rpb24oInJldHVybiAiICsgdCkoKSA6IEUuZXJyb3IoIkludmFsaWQgSlNPTjogIiArIGUpCiAgICB9LCBFLnBhcnNlWE1MID0gZnVuY3Rpb24oZSkgewogICAgICAgIHZhciB0OwogICAgICAgIGlmICghZSB8fCAic3RyaW5nIiAhPSB0eXBlb2YgZSkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgQy5ET01QYXJzZXIgPyB0ID0gKG5ldyBDLkRPTVBhcnNlcikucGFyc2VGcm9tU3RyaW5nKGUsICJ0ZXh0L3htbCIpIDogKCh0ID0gbmV3IEMuQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTERPTSIpKS5hc3luYyA9ICJmYWxzZSIsIHQubG9hZFhNTChlKSkKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHQgPSB2b2lkIDAKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHQgJiYgdC5kb2N1bWVudEVsZW1lbnQgJiYgIXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RoIHx8IEUuZXJyb3IoIkludmFsaWQgWE1MOiAiICsgZSksIHQKICAgIH07CiAgICB2YXIgT3QgPSAvIy4qJC8sCiAgICAgICAgUnQgPSAvKFs/Jl0pXz1bXiZdKi8sCiAgICAgICAgUHQgPSAvXiguKj8pOlsgXHRdKihbXlxyXG5dKilccj8kL2dtLAogICAgICAgIEJ0ID0gL14oPzpHRVR8SEVBRCkkLywKICAgICAgICBXdCA9IC9eXC9cLy8sCiAgICAgICAgSXQgPSAvXihbXHcuKy1dKzopKD86XC9cLyg/OlteXC8/I10qQHwpKFteXC8/IzpdKikoPzo6KFxkKyl8KXwpLywKICAgICAgICAkdCA9IHt9LAogICAgICAgIHp0ID0ge30sCiAgICAgICAgWHQgPSAiKi8iLmNvbmNhdCgiKiIpLAogICAgICAgIFV0ID0gcXQuaHJlZiwKICAgICAgICBWdCA9IEl0LmV4ZWMoVXQudG9Mb3dlckNhc2UoKSkgfHwgW107CgogICAgZnVuY3Rpb24gWXQobykgewogICAgICAgIHJldHVybiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICJzdHJpbmciICE9IHR5cGVvZiBlICYmICh0ID0gZSwgZSA9ICIqIik7CiAgICAgICAgICAgIHZhciBuLCByID0gMCwKICAgICAgICAgICAgICAgIGkgPSBlLnRvTG93ZXJDYXNlKCkubWF0Y2gocSkgfHwgW107CiAgICAgICAgICAgIGlmIChFLmlzRnVuY3Rpb24odCkpCiAgICAgICAgICAgICAgICBmb3IgKDsgbiA9IGlbcisrXTspICIrIiA9PT0gbi5jaGFyQXQoMCkgPyAobiA9IG4uc2xpY2UoMSkgfHwgIioiLCAob1tuXSA9IG9bbl0gfHwgW10pLnVuc2hpZnQodCkpIDogKG9bbl0gPSBvW25dIHx8IFtdKS5wdXNoKHQpCiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIEp0KHQsIGksIG8sIGEpIHsKICAgICAgICB2YXIgcyA9IHt9LAogICAgICAgICAgICB1ID0gdCA9PT0genQ7CgogICAgICAgIGZ1bmN0aW9uIGwoZSkgewogICAgICAgICAgICB2YXIgcjsKICAgICAgICAgICAgcmV0dXJuIHNbZV0gPSAhMCwgRS5lYWNoKHRbZV0gfHwgW10sIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdChpLCBvLCBhKTsKICAgICAgICAgICAgICAgIHJldHVybiAic3RyaW5nIiAhPSB0eXBlb2YgbiB8fCB1IHx8IHNbbl0gPyB1ID8gIShyID0gbikgOiB2b2lkIDAgOiAoaS5kYXRhVHlwZXMudW5zaGlmdChuKSwgbChuKSwgITEpCiAgICAgICAgICAgIH0pLCByCiAgICAgICAgfQogICAgICAgIHJldHVybiBsKGkuZGF0YVR5cGVzWzBdKSB8fCAhc1siKiJdICYmIGwoIioiKQogICAgfQoKICAgIGZ1bmN0aW9uIEd0KGUsIHQpIHsKICAgICAgICB2YXIgbiwgciwgaSA9IEUuYWpheFNldHRpbmdzLmZsYXRPcHRpb25zIHx8IHt9OwogICAgICAgIGZvciAociBpbiB0KSB2b2lkIDAgIT09IHRbcl0gJiYgKChpW3JdID8gZSA6IG4gfHwgKG4gPSB7fSkpW3JdID0gdFtyXSk7CiAgICAgICAgcmV0dXJuIG4gJiYgRS5leHRlbmQoITAsIGUsIG4pLCBlCiAgICB9CiAgICBFLmV4dGVuZCh7CiAgICAgICAgYWN0aXZlOiAwLAogICAgICAgIGxhc3RNb2RpZmllZDoge30sCiAgICAgICAgZXRhZzoge30sCiAgICAgICAgYWpheFNldHRpbmdzOiB7CiAgICAgICAgICAgIHVybDogVXQsCiAgICAgICAgICAgIHR5cGU6ICJHRVQiLAogICAgICAgICAgICBpc0xvY2FsOiAvXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLy50ZXN0KFZ0WzFdKSwKICAgICAgICAgICAgZ2xvYmFsOiAhMCwKICAgICAgICAgICAgcHJvY2Vzc0RhdGE6ICEwLAogICAgICAgICAgICBhc3luYzogITAsCiAgICAgICAgICAgIGNvbnRlbnRUeXBlOiAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkOyBjaGFyc2V0PVVURi04IiwKICAgICAgICAgICAgYWNjZXB0czogewogICAgICAgICAgICAgICAgIioiOiBYdCwKICAgICAgICAgICAgICAgIHRleHQ6ICJ0ZXh0L3BsYWluIiwKICAgICAgICAgICAgICAgIGh0bWw6ICJ0ZXh0L2h0bWwiLAogICAgICAgICAgICAgICAgeG1sOiAiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsCiAgICAgICAgICAgICAgICBqc29uOiAiYXBwbGljYXRpb24vanNvbiwgdGV4dC9qYXZhc2NyaXB0IgogICAgICAgICAgICB9LAogICAgICAgICAgICBjb250ZW50czogewogICAgICAgICAgICAgICAgeG1sOiAvXGJ4bWxcYi8sCiAgICAgICAgICAgICAgICBodG1sOiAvXGJodG1sLywKICAgICAgICAgICAgICAgIGpzb246IC9cYmpzb25cYi8KICAgICAgICAgICAgfSwKICAgICAgICAgICAgcmVzcG9uc2VGaWVsZHM6IHsKICAgICAgICAgICAgICAgIHhtbDogInJlc3BvbnNlWE1MIiwKICAgICAgICAgICAgICAgIHRleHQ6ICJyZXNwb25zZVRleHQiLAogICAgICAgICAgICAgICAganNvbjogInJlc3BvbnNlSlNPTiIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY29udmVydGVyczogewogICAgICAgICAgICAgICAgIiogdGV4dCI6IFN0cmluZywKICAgICAgICAgICAgICAgICJ0ZXh0IGh0bWwiOiAhMCwKICAgICAgICAgICAgICAgICJ0ZXh0IGpzb24iOiBFLnBhcnNlSlNPTiwKICAgICAgICAgICAgICAgICJ0ZXh0IHhtbCI6IEUucGFyc2VYTUwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZmxhdE9wdGlvbnM6IHsKICAgICAgICAgICAgICAgIHVybDogITAsCiAgICAgICAgICAgICAgICBjb250ZXh0OiAhMAogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBhamF4U2V0dXA6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIHQgPyBHdChHdChlLCBFLmFqYXhTZXR0aW5ncyksIHQpIDogR3QoRS5hamF4U2V0dGluZ3MsIGUpCiAgICAgICAgfSwKICAgICAgICBhamF4UHJlZmlsdGVyOiBZdCgkdCksCiAgICAgICAgYWpheFRyYW5zcG9ydDogWXQoenQpLAogICAgICAgIGFqYXg6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgIm9iamVjdCIgPT0gdHlwZW9mIGUgJiYgKHQgPSBlLCBlID0gdm9pZCAwKSwgdCA9IHQgfHwge307CiAgICAgICAgICAgIHZhciBuLCByLCBjLCBkLCBmLCBwLCBoLCBpLCBnID0gRS5hamF4U2V0dXAoe30sIHQpLAogICAgICAgICAgICAgICAgbSA9IGcuY29udGV4dCB8fCBnLAogICAgICAgICAgICAgICAgdiA9IGcuY29udGV4dCAmJiAobS5ub2RlVHlwZSB8fCBtLmpxdWVyeSkgPyBFKG0pIDogRS5ldmVudCwKICAgICAgICAgICAgICAgIHkgPSBFLkRlZmVycmVkKCksCiAgICAgICAgICAgICAgICB4ID0gRS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksCiAgICAgICAgICAgICAgICBiID0gZy5zdGF0dXNDb2RlIHx8IHt9LAogICAgICAgICAgICAgICAgbyA9IHt9LAogICAgICAgICAgICAgICAgYSA9IHt9LAogICAgICAgICAgICAgICAgdyA9IDAsCiAgICAgICAgICAgICAgICBzID0gImNhbmNlbGVkIiwKICAgICAgICAgICAgICAgIFQgPSB7CiAgICAgICAgICAgICAgICAgICAgcmVhZHlTdGF0ZTogMCwKICAgICAgICAgICAgICAgICAgICBnZXRSZXNwb25zZUhlYWRlcjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdDsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDIgPT09IHcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSB7fTsgdCA9IFB0LmV4ZWMoZCk7KSBpW3RbMV0udG9Mb3dlckNhc2UoKV0gPSB0WzJdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdCA9IGlbZS50b0xvd2VyQ2FzZSgpXQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IHQgPyBudWxsIDogdAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDIgPT09IHcgPyBkIDogbnVsbAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgc2V0UmVxdWVzdEhlYWRlcjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IGUudG9Mb3dlckNhc2UoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHcgfHwgKGUgPSBhW25dID0gYVtuXSB8fCBlLCBvW2VdID0gdCksIHRoaXMKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIG92ZXJyaWRlTWltZVR5cGU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHcgfHwgKGcubWltZVR5cGUgPSBlKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgc3RhdHVzQ29kZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdDsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodyA8IDIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh0IGluIGUpIGJbdF0gPSBbYlt0XSwgZVt0XV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIFQuYWx3YXlzKGVbVC5zdGF0dXNdKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGFib3J0OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gZSB8fCBzOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaCAmJiBoLmFib3J0KHQpLCB1KDAsIHQpLCB0aGlzCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgaWYgKHkucHJvbWlzZShUKS5jb21wbGV0ZSA9IHguYWRkLCBULnN1Y2Nlc3MgPSBULmRvbmUsIFQuZXJyb3IgPSBULmZhaWwsIGcudXJsID0gKChlIHx8IGcudXJsIHx8IFV0KSArICIiKS5yZXBsYWNlKE90LCAiIikucmVwbGFjZShXdCwgVnRbMV0gKyAiLy8iKSwgZy50eXBlID0gdC5tZXRob2QgfHwgdC50eXBlIHx8IGcubWV0aG9kIHx8IGcudHlwZSwgZy5kYXRhVHlwZXMgPSBFLnRyaW0oZy5kYXRhVHlwZSB8fCAiKiIpLnRvTG93ZXJDYXNlKCkubWF0Y2gocSkgfHwgWyIiXSwgbnVsbCA9PSBnLmNyb3NzRG9tYWluICYmIChuID0gSXQuZXhlYyhnLnVybC50b0xvd2VyQ2FzZSgpKSwgZy5jcm9zc0RvbWFpbiA9ICEoIW4gfHwgblsxXSA9PT0gVnRbMV0gJiYgblsyXSA9PT0gVnRbMl0gJiYgKG5bM10gfHwgKCJodHRwOiIgPT09IG5bMV0gPyAiODAiIDogIjQ0MyIpKSA9PT0gKFZ0WzNdIHx8ICgiaHR0cDoiID09PSBWdFsxXSA/ICI4MCIgOiAiNDQzIikpKSksIGcuZGF0YSAmJiBnLnByb2Nlc3NEYXRhICYmICJzdHJpbmciICE9IHR5cGVvZiBnLmRhdGEgJiYgKGcuZGF0YSA9IEUucGFyYW0oZy5kYXRhLCBnLnRyYWRpdGlvbmFsKSksIEp0KCR0LCBnLCB0LCBUKSwgMiA9PT0gdykgcmV0dXJuIFQ7CiAgICAgICAgICAgIGZvciAociBpbiAocCA9IEUuZXZlbnQgJiYgZy5nbG9iYWwpICYmIDAgPT0gRS5hY3RpdmUrKyAmJiBFLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLCBnLnR5cGUgPSBnLnR5cGUudG9VcHBlckNhc2UoKSwgZy5oYXNDb250ZW50ID0gIUJ0LnRlc3QoZy50eXBlKSwgYyA9IGcudXJsLCBnLmhhc0NvbnRlbnQgfHwgKGcuZGF0YSAmJiAoYyA9IGcudXJsICs9IChGdC50ZXN0KGMpID8gIiYiIDogIj8iKSArIGcuZGF0YSwgZGVsZXRlIGcuZGF0YSksICExID09PSBnLmNhY2hlICYmIChnLnVybCA9IFJ0LnRlc3QoYykgPyBjLnJlcGxhY2UoUnQsICIkMV89IiArIF90KyspIDogYyArIChGdC50ZXN0KGMpID8gIiYiIDogIj8iKSArICJfPSIgKyBfdCsrKSksIGcuaWZNb2RpZmllZCAmJiAoRS5sYXN0TW9kaWZpZWRbY10gJiYgVC5zZXRSZXF1ZXN0SGVhZGVyKCJJZi1Nb2RpZmllZC1TaW5jZSIsIEUubGFzdE1vZGlmaWVkW2NdKSwgRS5ldGFnW2NdICYmIFQuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsIEUuZXRhZ1tjXSkpLCAoZy5kYXRhICYmIGcuaGFzQ29udGVudCAmJiAhMSAhPT0gZy5jb250ZW50VHlwZSB8fCB0LmNvbnRlbnRUeXBlKSAmJiBULnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsIGcuY29udGVudFR5cGUpLCBULnNldFJlcXVlc3RIZWFkZXIoIkFjY2VwdCIsIGcuZGF0YVR5cGVzWzBdICYmIGcuYWNjZXB0c1tnLmRhdGFUeXBlc1swXV0gPyBnLmFjY2VwdHNbZy5kYXRhVHlwZXNbMF1dICsgKCIqIiAhPT0gZy5kYXRhVHlwZXNbMF0gPyAiLCAiICsgWHQgKyAiOyBxPTAuMDEiIDogIiIpIDogZy5hY2NlcHRzWyIqIl0pLCBnLmhlYWRlcnMpIFQuc2V0UmVxdWVzdEhlYWRlcihyLCBnLmhlYWRlcnNbcl0pOwogICAgICAgICAgICBpZiAoZy5iZWZvcmVTZW5kICYmICghMSA9PT0gZy5iZWZvcmVTZW5kLmNhbGwobSwgVCwgZykgfHwgMiA9PT0gdykpIHJldHVybiBULmFib3J0KCk7CiAgICAgICAgICAgIGZvciAociBpbiBzID0gImFib3J0IiwgewogICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IDEsCiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IDEsCiAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IDEKICAgICAgICAgICAgICAgIH0pIFRbcl0oZ1tyXSk7CiAgICAgICAgICAgIGlmIChoID0gSnQoenQsIGcsIHQsIFQpKSB7CiAgICAgICAgICAgICAgICBpZiAoVC5yZWFkeVN0YXRlID0gMSwgcCAmJiB2LnRyaWdnZXIoImFqYXhTZW5kIiwgW1QsIGddKSwgMiA9PT0gdykgcmV0dXJuIFQ7CiAgICAgICAgICAgICAgICBnLmFzeW5jICYmIDAgPCBnLnRpbWVvdXQgJiYgKGYgPSBDLnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgVC5hYm9ydCgidGltZW91dCIpCiAgICAgICAgICAgICAgICB9LCBnLnRpbWVvdXQpKTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdyA9IDEsIGguc2VuZChvLCB1KQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgIGlmICghKHcgPCAyKSkgdGhyb3cgZTsKICAgICAgICAgICAgICAgICAgICB1KC0xLCBlKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgdSgtMSwgIk5vIFRyYW5zcG9ydCIpOwoKICAgICAgICAgICAgZnVuY3Rpb24gdShlLCB0LCBuLCByKSB7CiAgICAgICAgICAgICAgICB2YXIgaSwgbywgYSwgcywgdSwgbCA9IHQ7CiAgICAgICAgICAgICAgICAyICE9PSB3ICYmICh3ID0gMiwgZiAmJiBDLmNsZWFyVGltZW91dChmKSwgaCA9IHZvaWQgMCwgZCA9IHIgfHwgIiIsIFQucmVhZHlTdGF0ZSA9IDAgPCBlID8gNCA6IDAsIGkgPSAyMDAgPD0gZSAmJiBlIDwgMzAwIHx8IDMwNCA9PT0gZSwgbiAmJiAocyA9IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciByLCBpLCBvLCBhLCBzID0gZS5jb250ZW50cywgdSA9IGUuZGF0YVR5cGVzOwogICAgICAgICAgICAgICAgICAgICAgICAiKiIgPT09IHVbMF07KSB1LnNoaWZ0KCksIHZvaWQgMCA9PT0gaSAmJiAoaSA9IGUubWltZVR5cGUgfHwgdC5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIikpOwogICAgICAgICAgICAgICAgICAgIGlmIChpKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgaW4gcykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzW2FdICYmIHNbYV0udGVzdChpKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUudW5zaGlmdChhKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmICh1WzBdIGluIG4pIG8gPSB1WzBdOwogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgaW4gbikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF1WzBdIHx8IGUuY29udmVydGVyc1thICsgIiAiICsgdVswXV0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvID0gYTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgciB8fCAociA9IGEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgbyA9IG8gfHwgcgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gbyA/IChvICE9PSB1WzBdICYmIHUudW5zaGlmdChvKSwgbltvXSkgOiB2b2lkIDAKICAgICAgICAgICAgICAgIH0oZywgVCwgbikpLCBzID0gZnVuY3Rpb24oZSwgdCwgbiwgcikgewogICAgICAgICAgICAgICAgICAgIHZhciBpLCBvLCBhLCBzLCB1LCBsID0ge30sCiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBlLmRhdGFUeXBlcy5zbGljZSgpOwogICAgICAgICAgICAgICAgICAgIGlmIChjWzFdKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgaW4gZS5jb252ZXJ0ZXJzKSBsW2EudG9Mb3dlckNhc2UoKV0gPSBlLmNvbnZlcnRlcnNbYV07CiAgICAgICAgICAgICAgICAgICAgZm9yIChvID0gYy5zaGlmdCgpOyBvOykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUucmVzcG9uc2VGaWVsZHNbb10gJiYgKG5bZS5yZXNwb25zZUZpZWxkc1tvXV0gPSB0KSwgIXUgJiYgciAmJiBlLmRhdGFGaWx0ZXIgJiYgKHQgPSBlLmRhdGFGaWx0ZXIodCwgZS5kYXRhVHlwZSkpLCB1ID0gbywgbyA9IGMuc2hpZnQoKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgiKiIgPT09IG8pIG8gPSB1OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoIioiICE9PSB1ICYmIHUgIT09IG8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEoYSA9IGxbdSArICIgIiArIG9dIHx8IGxbIiogIiArIG9dKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoaSBpbiBsKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgocyA9IGkuc3BsaXQoIiAiKSlbMV0gPT09IG8gJiYgKGEgPSBsW3UgKyAiICIgKyBzWzBdXSB8fCBsWyIqICIgKyBzWzBdXSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgITAgPT09IGEgPyBhID0gbFtpXSA6ICEwICE9PSBsW2ldICYmIChvID0gc1swXSwgYy51bnNoaWZ0KHNbMV0pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghMCAhPT0gYSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhICYmIGUudGhyb3dzKSB0ID0gYSh0KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ID0gYSh0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlOiAicGFyc2VyZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcjogYSA/IGUgOiAiTm8gY29udmVyc2lvbiBmcm9tICIgKyB1ICsgIiB0byAiICsgbwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGU6ICJzdWNjZXNzIiwKICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogdAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0oZywgcywgVCwgaSksIGkgPyAoZy5pZk1vZGlmaWVkICYmICgodSA9IFQuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKSkgJiYgKEUubGFzdE1vZGlmaWVkW2NdID0gdSksICh1ID0gVC5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpKSAmJiAoRS5ldGFnW2NdID0gdSkpLCAyMDQgPT09IGUgfHwgIkhFQUQiID09PSBnLnR5cGUgPyBsID0gIm5vY29udGVudCIgOiAzMDQgPT09IGUgPyBsID0gIm5vdG1vZGlmaWVkIiA6IChsID0gcy5zdGF0ZSwgbyA9IHMuZGF0YSwgaSA9ICEoYSA9IHMuZXJyb3IpKSkgOiAoYSA9IGwsICFlICYmIGwgfHwgKGwgPSAiZXJyb3IiLCBlIDwgMCAmJiAoZSA9IDApKSksIFQuc3RhdHVzID0gZSwgVC5zdGF0dXNUZXh0ID0gKHQgfHwgbCkgKyAiIiwgaSA/IHkucmVzb2x2ZVdpdGgobSwgW28sIGwsIFRdKSA6IHkucmVqZWN0V2l0aChtLCBbVCwgbCwgYV0pLCBULnN0YXR1c0NvZGUoYiksIGIgPSB2b2lkIDAsIHAgJiYgdi50cmlnZ2VyKGkgPyAiYWpheFN1Y2Nlc3MiIDogImFqYXhFcnJvciIsIFtULCBnLCBpID8gbyA6IGFdKSwgeC5maXJlV2l0aChtLCBbVCwgbF0pLCBwICYmICh2LnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsIFtULCBnXSksIC0tRS5hY3RpdmUgfHwgRS5ldmVudC50cmlnZ2VyKCJhamF4U3RvcCIpKSkKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gVAogICAgICAgIH0sCiAgICAgICAgZ2V0SlNPTjogZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgICAgICByZXR1cm4gRS5nZXQoZSwgdCwgbiwgImpzb24iKQogICAgICAgIH0sCiAgICAgICAgZ2V0U2NyaXB0OiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHJldHVybiBFLmdldChlLCB2b2lkIDAsIHQsICJzY3JpcHQiKQogICAgICAgIH0KICAgIH0pLCBFLmVhY2goWyJnZXQiLCAicG9zdCJdLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgRVtpXSA9IGZ1bmN0aW9uKGUsIHQsIG4sIHIpIHsKICAgICAgICAgICAgcmV0dXJuIEUuaXNGdW5jdGlvbih0KSAmJiAociA9IHIgfHwgbiwgbiA9IHQsIHQgPSB2b2lkIDApLCBFLmFqYXgoRS5leHRlbmQoewogICAgICAgICAgICAgICAgdXJsOiBlLAogICAgICAgICAgICAgICAgdHlwZTogaSwKICAgICAgICAgICAgICAgIGRhdGFUeXBlOiByLAogICAgICAgICAgICAgICAgZGF0YTogdCwKICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IG4KICAgICAgICAgICAgfSwgRS5pc1BsYWluT2JqZWN0KGUpICYmIGUpKQogICAgICAgIH0KICAgIH0pLCBFLl9ldmFsVXJsID0gZnVuY3Rpb24oZSkgewogICAgICAgIHJldHVybiBFLmFqYXgoewogICAgICAgICAgICB1cmw6IGUsCiAgICAgICAgICAgIHR5cGU6ICJHRVQiLAogICAgICAgICAgICBkYXRhVHlwZTogInNjcmlwdCIsCiAgICAgICAgICAgIGNhY2hlOiAhMCwKICAgICAgICAgICAgYXN5bmM6ICExLAogICAgICAgICAgICBnbG9iYWw6ICExLAogICAgICAgICAgICB0aHJvd3M6ICEwCiAgICAgICAgfSkKICAgIH0sIEUuZm4uZXh0ZW5kKHsKICAgICAgICB3cmFwQWxsOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIGlmIChFLmlzRnVuY3Rpb24odCkpIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgRSh0aGlzKS53cmFwQWxsKHQuY2FsbCh0aGlzLCBlKSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlmICh0aGlzWzBdKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IEUodCwgdGhpc1swXS5vd25lckRvY3VtZW50KS5lcSgwKS5jbG9uZSghMCk7CiAgICAgICAgICAgICAgICB0aGlzWzBdLnBhcmVudE5vZGUgJiYgZS5pbnNlcnRCZWZvcmUodGhpc1swXSksIGUubWFwKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0aGlzOyBlLmZpcnN0Q2hpbGQgJiYgMSA9PT0gZS5maXJzdENoaWxkLm5vZGVUeXBlOykgZSA9IGUuZmlyc3RDaGlsZDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgfSkuYXBwZW5kKHRoaXMpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRoaXMKICAgICAgICB9LAogICAgICAgIHdyYXBJbm5lcjogZnVuY3Rpb24obikgewogICAgICAgICAgICByZXR1cm4gRS5pc0Z1bmN0aW9uKG4pID8gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIEUodGhpcykud3JhcElubmVyKG4uY2FsbCh0aGlzLCBlKSkKICAgICAgICAgICAgfSkgOiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IEUodGhpcyksCiAgICAgICAgICAgICAgICAgICAgdCA9IGUuY29udGVudHMoKTsKICAgICAgICAgICAgICAgIHQubGVuZ3RoID8gdC53cmFwQWxsKG4pIDogZS5hcHBlbmQobikKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHdyYXA6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdmFyIG4gPSBFLmlzRnVuY3Rpb24odCk7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgRSh0aGlzKS53cmFwQWxsKG4gPyB0LmNhbGwodGhpcywgZSkgOiB0KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgdW53cmFwOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50KCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEUubm9kZU5hbWUodGhpcywgImJvZHkiKSB8fCBFKHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2hpbGROb2RlcykKICAgICAgICAgICAgfSkuZW5kKCkKICAgICAgICB9CiAgICB9KSwgRS5leHByLmZpbHRlcnMuaGlkZGVuID0gZnVuY3Rpb24oZSkgewogICAgICAgIHJldHVybiB2LnJlbGlhYmxlSGlkZGVuT2Zmc2V0cygpID8gZS5vZmZzZXRXaWR0aCA8PSAwICYmIGUub2Zmc2V0SGVpZ2h0IDw9IDAgJiYgIWUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGggOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGZvciAoOyBlICYmIDEgPT09IGUubm9kZVR5cGU7KSB7CiAgICAgICAgICAgICAgICBpZiAoIm5vbmUiID09PSAoKHQgPSBlKS5zdHlsZSAmJiB0LnN0eWxlLmRpc3BsYXkgfHwgRS5jc3ModCwgImRpc3BsYXkiKSkgfHwgImhpZGRlbiIgPT09IGUudHlwZSkgcmV0dXJuICEwOwogICAgICAgICAgICAgICAgZSA9IGUucGFyZW50Tm9kZQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB0OwogICAgICAgICAgICByZXR1cm4gITEKICAgICAgICB9KGUpCiAgICB9LCBFLmV4cHIuZmlsdGVycy52aXNpYmxlID0gZnVuY3Rpb24oZSkgewogICAgICAgIHJldHVybiAhRS5leHByLmZpbHRlcnMuaGlkZGVuKGUpCiAgICB9OwogICAgdmFyIFF0ID0gLyUyMC9nLAogICAgICAgIEt0ID0gL1xbXF0kLywKICAgICAgICBadCA9IC9ccj9cbi9nLAogICAgICAgIGVuID0gL14oPzpzdWJtaXR8YnV0dG9ufGltYWdlfHJlc2V0fGZpbGUpJC9pLAogICAgICAgIHRuID0gL14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8a2V5Z2VuKS9pOwoKICAgIGZ1bmN0aW9uIG5uKG4sIGUsIHIsIGkpIHsKICAgICAgICB2YXIgdDsKICAgICAgICBpZiAoRS5pc0FycmF5KGUpKSBFLmVhY2goZSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICByIHx8IEt0LnRlc3QobikgPyBpKG4sIHQpIDogbm4obiArICJbIiArICgib2JqZWN0IiA9PSB0eXBlb2YgdCAmJiBudWxsICE9IHQgPyBlIDogIiIpICsgIl0iLCB0LCByLCBpKQogICAgICAgIH0pOwogICAgICAgIGVsc2UgaWYgKHIgfHwgIm9iamVjdCIgIT09IEUudHlwZShlKSkgaShuLCBlKTsKICAgICAgICBlbHNlCiAgICAgICAgICAgIGZvciAodCBpbiBlKSBubihuICsgIlsiICsgdCArICJdIiwgZVt0XSwgciwgaSkKICAgIH0KICAgIEUucGFyYW0gPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgdmFyIG4sIHIgPSBbXSwKICAgICAgICAgICAgaSA9IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHQgPSBFLmlzRnVuY3Rpb24odCkgPyB0KCkgOiBudWxsID09IHQgPyAiIiA6IHQsIHJbci5sZW5ndGhdID0gZW5jb2RlVVJJQ29tcG9uZW50KGUpICsgIj0iICsgZW5jb2RlVVJJQ29tcG9uZW50KHQpCiAgICAgICAgICAgIH07CiAgICAgICAgaWYgKHZvaWQgMCA9PT0gdCAmJiAodCA9IEUuYWpheFNldHRpbmdzICYmIEUuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSwgRS5pc0FycmF5KGUpIHx8IGUuanF1ZXJ5ICYmICFFLmlzUGxhaW5PYmplY3QoZSkpIEUuZWFjaChlLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaSh0aGlzLm5hbWUsIHRoaXMudmFsdWUpCiAgICAgICAgfSk7CiAgICAgICAgZWxzZQogICAgICAgICAgICBmb3IgKG4gaW4gZSkgbm4obiwgZVtuXSwgdCwgaSk7CiAgICAgICAgcmV0dXJuIHIuam9pbigiJiIpLnJlcGxhY2UoUXQsICIrIikKICAgIH0sIEUuZm4uZXh0ZW5kKHsKICAgICAgICBzZXJpYWxpemU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gRS5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpCiAgICAgICAgfSwKICAgICAgICBzZXJpYWxpemVBcnJheTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gRS5wcm9wKHRoaXMsICJlbGVtZW50cyIpOwogICAgICAgICAgICAgICAgcmV0dXJuIGUgPyBFLm1ha2VBcnJheShlKSA6IHRoaXMKICAgICAgICAgICAgfSkuZmlsdGVyKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLnR5cGU7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5uYW1lICYmICFFKHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSAmJiB0bi50ZXN0KHRoaXMubm9kZU5hbWUpICYmICFlbi50ZXN0KGUpICYmICh0aGlzLmNoZWNrZWQgfHwgIVoudGVzdChlKSkKICAgICAgICAgICAgfSkubWFwKGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gRSh0aGlzKS52YWwoKTsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IG4gPyBudWxsIDogRS5pc0FycmF5KG4pID8gRS5tYXAobiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHQubmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGUucmVwbGFjZShadCwgIlxyXG4iKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pIDogewogICAgICAgICAgICAgICAgICAgIG5hbWU6IHQubmFtZSwKICAgICAgICAgICAgICAgICAgICB2YWx1ZTogbi5yZXBsYWNlKFp0LCAiXHJcbiIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLmdldCgpCiAgICAgICAgfQogICAgfSksIEUuYWpheFNldHRpbmdzLnhociA9IHZvaWQgMCAhPT0gQy5BY3RpdmVYT2JqZWN0ID8gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXMuaXNMb2NhbCA/IHVuKCkgOiA4IDwgaC5kb2N1bWVudE1vZGUgPyBzbigpIDogL14oZ2V0fHBvc3R8aGVhZHxwdXR8ZGVsZXRlfG9wdGlvbnMpJC9pLnRlc3QodGhpcy50eXBlKSAmJiBzbigpIHx8IHVuKCkKICAgIH0gOiBzbjsKICAgIHZhciBybiA9IDAsCiAgICAgICAgb24gPSB7fSwKICAgICAgICBhbiA9IEUuYWpheFNldHRpbmdzLnhocigpOwoKICAgIGZ1bmN0aW9uIHNuKCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBuZXcgQy5YTUxIdHRwUmVxdWVzdAogICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICB9CgogICAgZnVuY3Rpb24gdW4oKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcmV0dXJuIG5ldyBDLkFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxIVFRQIikKICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgfQogICAgQy5hdHRhY2hFdmVudCAmJiBDLmF0dGFjaEV2ZW50KCJvbnVubG9hZCIsIGZ1bmN0aW9uKCkgewogICAgICAgIGZvciAodmFyIGUgaW4gb24pIG9uW2VdKHZvaWQgMCwgITApCiAgICB9KSwgdi5jb3JzID0gISFhbiAmJiAid2l0aENyZWRlbnRpYWxzIiBpbiBhbiwgKGFuID0gdi5hamF4ID0gISFhbikgJiYgRS5hamF4VHJhbnNwb3J0KGZ1bmN0aW9uKHUpIHsKICAgICAgICB2YXIgbDsKICAgICAgICBpZiAoIXUuY3Jvc3NEb21haW4gfHwgdi5jb3JzKSByZXR1cm4gewogICAgICAgICAgICBzZW5kOiBmdW5jdGlvbihlLCBvKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgYSA9IHUueGhyKCksCiAgICAgICAgICAgICAgICAgICAgcyA9ICsrcm47CiAgICAgICAgICAgICAgICBpZiAoYS5vcGVuKHUudHlwZSwgdS51cmwsIHUuYXN5bmMsIHUudXNlcm5hbWUsIHUucGFzc3dvcmQpLCB1LnhockZpZWxkcykKICAgICAgICAgICAgICAgICAgICBmb3IgKHQgaW4gdS54aHJGaWVsZHMpIGFbdF0gPSB1LnhockZpZWxkc1t0XTsKICAgICAgICAgICAgICAgIGZvciAodCBpbiB1Lm1pbWVUeXBlICYmIGEub3ZlcnJpZGVNaW1lVHlwZSAmJiBhLm92ZXJyaWRlTWltZVR5cGUodS5taW1lVHlwZSksIHUuY3Jvc3NEb21haW4gfHwgZVsiWC1SZXF1ZXN0ZWQtV2l0aCJdIHx8IChlWyJYLVJlcXVlc3RlZC1XaXRoIl0gPSAiWE1MSHR0cFJlcXVlc3QiKSwgZSkgdm9pZCAwICE9PSBlW3RdICYmIGEuc2V0UmVxdWVzdEhlYWRlcih0LCBlW3RdICsgIiIpOwogICAgICAgICAgICAgICAgYS5zZW5kKHUuaGFzQ29udGVudCAmJiB1LmRhdGEgfHwgbnVsbCksIGwgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIHIsIGk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGwgJiYgKHQgfHwgNCA9PT0gYS5yZWFkeVN0YXRlKSkKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRlbGV0ZSBvbltzXSwgbCA9IHZvaWQgMCwgYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBFLm5vb3AsIHQpIDQgIT09IGEucmVhZHlTdGF0ZSAmJiBhLmFib3J0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHt9LCBuID0gYS5zdGF0dXMsICJzdHJpbmciID09IHR5cGVvZiBhLnJlc3BvbnNlVGV4dCAmJiAoaS50ZXh0ID0gYS5yZXNwb25zZVRleHQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByID0gYS5zdGF0dXNUZXh0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9ICIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuIHx8ICF1LmlzTG9jYWwgfHwgdS5jcm9zc0RvbWFpbiA/IDEyMjMgPT09IG4gJiYgKG4gPSAyMDQpIDogbiA9IGkudGV4dCA/IDIwMCA6IDQwNAogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaSAmJiBvKG4sIHIsIGksIGEuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkpCiAgICAgICAgICAgICAgICB9LCB1LmFzeW5jID8gNCA9PT0gYS5yZWFkeVN0YXRlID8gQy5zZXRUaW1lb3V0KGwpIDogYS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBvbltzXSA9IGwgOiBsKCkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgYWJvcnQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbCAmJiBsKHZvaWQgMCwgITApCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KSwgRS5hamF4U2V0dXAoewogICAgICAgIGFjY2VwdHM6IHsKICAgICAgICAgICAgc2NyaXB0OiAidGV4dC9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9lY21hc2NyaXB0LCBhcHBsaWNhdGlvbi94LWVjbWFzY3JpcHQiCiAgICAgICAgfSwKICAgICAgICBjb250ZW50czogewogICAgICAgICAgICBzY3JpcHQ6IC9cYig/OmphdmF8ZWNtYSlzY3JpcHRcYi8KICAgICAgICB9LAogICAgICAgIGNvbnZlcnRlcnM6IHsKICAgICAgICAgICAgInRleHQgc2NyaXB0IjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIEUuZ2xvYmFsRXZhbChlKSwgZQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIEUuYWpheFByZWZpbHRlcigic2NyaXB0IiwgZnVuY3Rpb24oZSkgewogICAgICAgIHZvaWQgMCA9PT0gZS5jYWNoZSAmJiAoZS5jYWNoZSA9ICExKSwgZS5jcm9zc0RvbWFpbiAmJiAoZS50eXBlID0gIkdFVCIsIGUuZ2xvYmFsID0gITEpCiAgICB9KSwgRS5hamF4VHJhbnNwb3J0KCJzY3JpcHQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgaWYgKHQuY3Jvc3NEb21haW4pIHsKICAgICAgICAgICAgdmFyIHIsIGkgPSBoLmhlYWQgfHwgRSgiaGVhZCIpWzBdIHx8IGguZG9jdW1lbnRFbGVtZW50OwogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgc2VuZDogZnVuY3Rpb24oZSwgbikgewogICAgICAgICAgICAgICAgICAgIChyID0gaC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuYXN5bmMgPSAhMCwgdC5zY3JpcHRDaGFyc2V0ICYmIChyLmNoYXJzZXQgPSB0LnNjcmlwdENoYXJzZXQpLCByLnNyYyA9IHQudXJsLCByLm9ubG9hZCA9IHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICAodCB8fCAhci5yZWFkeVN0YXRlIHx8IC9sb2FkZWR8Y29tcGxldGUvLnRlc3Qoci5yZWFkeVN0YXRlKSkgJiYgKHIub25sb2FkID0gci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsLCByLnBhcmVudE5vZGUgJiYgci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHIpLCByID0gbnVsbCwgdCB8fCBuKDIwMCwgInN1Y2Nlc3MiKSkKICAgICAgICAgICAgICAgICAgICB9LCBpLmluc2VydEJlZm9yZShyLCBpLmZpcnN0Q2hpbGQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYWJvcnQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHIgJiYgci5vbmxvYWQodm9pZCAwLCAhMCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pOwogICAgdmFyIGxuID0gW10sCiAgICAgICAgY24gPSAvKD0pXD8oPz0mfCQpfFw/XD8vOwogICAgRS5hamF4U2V0dXAoewogICAgICAgIGpzb25wOiAiY2FsbGJhY2siLAogICAgICAgIGpzb25wQ2FsbGJhY2s6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IGxuLnBvcCgpIHx8IEUuZXhwYW5kbyArICJfIiArIF90Kys7CiAgICAgICAgICAgIHJldHVybiB0aGlzW2VdID0gITAsIGUKICAgICAgICB9CiAgICB9KSwgRS5hamF4UHJlZmlsdGVyKCJqc29uIGpzb25wIiwgZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIHZhciByLCBpLCBvLCBhID0gITEgIT09IGUuanNvbnAgJiYgKGNuLnRlc3QoZS51cmwpID8gInVybCIgOiAic3RyaW5nIiA9PSB0eXBlb2YgZS5kYXRhICYmIDAgPT09IChlLmNvbnRlbnRUeXBlIHx8ICIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSAmJiBjbi50ZXN0KGUuZGF0YSkgJiYgImRhdGEiKTsKICAgICAgICByZXR1cm4gYSB8fCAianNvbnAiID09PSBlLmRhdGFUeXBlc1swXSA/IChyID0gZS5qc29ucENhbGxiYWNrID0gRS5pc0Z1bmN0aW9uKGUuanNvbnBDYWxsYmFjaykgPyBlLmpzb25wQ2FsbGJhY2soKSA6IGUuanNvbnBDYWxsYmFjaywgYSA/IGVbYV0gPSBlW2FdLnJlcGxhY2UoY24sICIkMSIgKyByKSA6ICExICE9PSBlLmpzb25wICYmIChlLnVybCArPSAoRnQudGVzdChlLnVybCkgPyAiJiIgOiAiPyIpICsgZS5qc29ucCArICI9IiArIHIpLCBlLmNvbnZlcnRlcnNbInNjcmlwdCBqc29uIl0gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIG8gfHwgRS5lcnJvcihyICsgIiB3YXMgbm90IGNhbGxlZCIpLCBvWzBdCiAgICAgICAgfSwgZS5kYXRhVHlwZXNbMF0gPSAianNvbiIsIGkgPSBDW3JdLCBDW3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIG8gPSBhcmd1bWVudHMKICAgICAgICB9LCBuLmFsd2F5cyhmdW5jdGlvbigpIHsKICAgICAgICAgICAgdm9pZCAwID09PSBpID8gRShDKS5yZW1vdmVQcm9wKHIpIDogQ1tyXSA9IGksIGVbcl0gJiYgKGUuanNvbnBDYWxsYmFjayA9IHQuanNvbnBDYWxsYmFjaywgbG4ucHVzaChyKSksIG8gJiYgRS5pc0Z1bmN0aW9uKGkpICYmIGkob1swXSksIG8gPSBpID0gdm9pZCAwCiAgICAgICAgfSksICJzY3JpcHQiKSA6IHZvaWQgMAogICAgfSksIEUucGFyc2VIVE1MID0gZnVuY3Rpb24oZSwgdCwgbikgewogICAgICAgIGlmICghZSB8fCAic3RyaW5nIiAhPSB0eXBlb2YgZSkgcmV0dXJuIG51bGw7CiAgICAgICAgImJvb2xlYW4iID09IHR5cGVvZiB0ICYmIChuID0gdCwgdCA9ICExKSwgdCA9IHQgfHwgaDsKICAgICAgICB2YXIgciA9IHcuZXhlYyhlKSwKICAgICAgICAgICAgaSA9ICFuICYmIFtdOwogICAgICAgIHJldHVybiByID8gW3QuY3JlYXRlRWxlbWVudChyWzFdKV0gOiAociA9IGRlKFtlXSwgdCwgaSksIGkgJiYgaS5sZW5ndGggJiYgRShpKS5yZW1vdmUoKSwgRS5tZXJnZShbXSwgci5jaGlsZE5vZGVzKSkKICAgIH07CiAgICB2YXIgZG4gPSBFLmZuLmxvYWQ7CgogICAgZnVuY3Rpb24gZm4oZSkgewogICAgICAgIHJldHVybiBFLmlzV2luZG93KGUpID8gZSA6IDkgPT09IGUubm9kZVR5cGUgJiYgKGUuZGVmYXVsdFZpZXcgfHwgZS5wYXJlbnRXaW5kb3cpCiAgICB9CiAgICBFLmZuLmxvYWQgPSBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgaWYgKCJzdHJpbmciICE9IHR5cGVvZiBlICYmIGRuKSByZXR1cm4gZG4uYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICB2YXIgciwgaSwgbywgYSA9IHRoaXMsCiAgICAgICAgICAgIHMgPSBlLmluZGV4T2YoIiAiKTsKICAgICAgICByZXR1cm4gLTEgPCBzICYmIChyID0gRS50cmltKGUuc2xpY2UocywgZS5sZW5ndGgpKSwgZSA9IGUuc2xpY2UoMCwgcykpLCBFLmlzRnVuY3Rpb24odCkgPyAobiA9IHQsIHQgPSB2b2lkIDApIDogdCAmJiAib2JqZWN0IiA9PSB0eXBlb2YgdCAmJiAoaSA9ICJQT1NUIiksIDAgPCBhLmxlbmd0aCAmJiBFLmFqYXgoewogICAgICAgICAgICB1cmw6IGUsCiAgICAgICAgICAgIHR5cGU6IGkgfHwgIkdFVCIsCiAgICAgICAgICAgIGRhdGFUeXBlOiAiaHRtbCIsCiAgICAgICAgICAgIGRhdGE6IHQKICAgICAgICB9KS5kb25lKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgbyA9IGFyZ3VtZW50cywgYS5odG1sKHIgPyBFKCI8ZGl2PiIpLmFwcGVuZChFLnBhcnNlSFRNTChlKSkuZmluZChyKSA6IGUpCiAgICAgICAgfSkuYWx3YXlzKG4gJiYgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICBhLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBuLmFwcGx5KHRoaXMsIG8gfHwgW2UucmVzcG9uc2VUZXh0LCB0LCBlXSkKICAgICAgICAgICAgfSkKICAgICAgICB9KSwgdGhpcwogICAgfSwgRS5lYWNoKFsiYWpheFN0YXJ0IiwgImFqYXhTdG9wIiwgImFqYXhDb21wbGV0ZSIsICJhamF4RXJyb3IiLCAiYWpheFN1Y2Nlc3MiLCAiYWpheFNlbmQiXSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgIEUuZm5bdF0gPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLm9uKHQsIGUpCiAgICAgICAgfQogICAgfSksIEUuZXhwci5maWx0ZXJzLmFuaW1hdGVkID0gZnVuY3Rpb24odCkgewogICAgICAgIHJldHVybiBFLmdyZXAoRS50aW1lcnMsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIHQgPT09IGUuZWxlbQogICAgICAgIH0pLmxlbmd0aAogICAgfSwgRS5vZmZzZXQgPSB7CiAgICAgICAgc2V0T2Zmc2V0OiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHZhciByLCBpLCBvLCBhLCBzLCB1LCBsID0gRS5jc3MoZSwgInBvc2l0aW9uIiksCiAgICAgICAgICAgICAgICBjID0gRShlKSwKICAgICAgICAgICAgICAgIGQgPSB7fTsKICAgICAgICAgICAgInN0YXRpYyIgPT09IGwgJiYgKGUuc3R5bGUucG9zaXRpb24gPSAicmVsYXRpdmUiKSwgcyA9IGMub2Zmc2V0KCksIG8gPSBFLmNzcyhlLCAidG9wIiksIHUgPSBFLmNzcyhlLCAibGVmdCIpLCBpID0gKCJhYnNvbHV0ZSIgPT09IGwgfHwgImZpeGVkIiA9PT0gbCkgJiYgLTEgPCBFLmluQXJyYXkoImF1dG8iLCBbbywgdV0pID8gKGEgPSAociA9IGMucG9zaXRpb24oKSkudG9wLCByLmxlZnQpIDogKGEgPSBwYXJzZUZsb2F0KG8pIHx8IDAsIHBhcnNlRmxvYXQodSkgfHwgMCksIEUuaXNGdW5jdGlvbih0KSAmJiAodCA9IHQuY2FsbChlLCBuLCBFLmV4dGVuZCh7fSwgcykpKSwgbnVsbCAhPSB0LnRvcCAmJiAoZC50b3AgPSB0LnRvcCAtIHMudG9wICsgYSksIG51bGwgIT0gdC5sZWZ0ICYmIChkLmxlZnQgPSB0LmxlZnQgLSBzLmxlZnQgKyBpKSwgInVzaW5nIiBpbiB0ID8gdC51c2luZy5jYWxsKGUsIGQpIDogYy5jc3MoZCkKICAgICAgICB9CiAgICB9LCBFLmZuLmV4dGVuZCh7CiAgICAgICAgb2Zmc2V0OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoKSByZXR1cm4gdm9pZCAwID09PSB0ID8gdGhpcyA6IHRoaXMuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBFLm9mZnNldC5zZXRPZmZzZXQodGhpcywgdCwgZSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciBlLCBuLCByID0gewogICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaSA9IHRoaXNbMF0sCiAgICAgICAgICAgICAgICBvID0gaSAmJiBpLm93bmVyRG9jdW1lbnQ7CiAgICAgICAgICAgIHJldHVybiBvID8gKGUgPSBvLmRvY3VtZW50RWxlbWVudCwgRS5jb250YWlucyhlLCBpKSA/ICh2b2lkIDAgIT09IGkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICYmIChyID0gaS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSksIG4gPSBmbihvKSwgewogICAgICAgICAgICAgICAgdG9wOiByLnRvcCArIChuLnBhZ2VZT2Zmc2V0IHx8IGUuc2Nyb2xsVG9wKSAtIChlLmNsaWVudFRvcCB8fCAwKSwKICAgICAgICAgICAgICAgIGxlZnQ6IHIubGVmdCArIChuLnBhZ2VYT2Zmc2V0IHx8IGUuc2Nyb2xsTGVmdCkgLSAoZS5jbGllbnRMZWZ0IHx8IDApCiAgICAgICAgICAgIH0pIDogcikgOiB2b2lkIDAKICAgICAgICB9LAogICAgICAgIHBvc2l0aW9uOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKHRoaXNbMF0pIHsKICAgICAgICAgICAgICAgIHZhciBlLCB0LCBuID0gewogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzWzBdOwogICAgICAgICAgICAgICAgcmV0dXJuICJmaXhlZCIgPT09IEUuY3NzKHIsICJwb3NpdGlvbiIpID8gdCA9IHIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkgOiAoZSA9IHRoaXMub2Zmc2V0UGFyZW50KCksIHQgPSB0aGlzLm9mZnNldCgpLCBFLm5vZGVOYW1lKGVbMF0sICJodG1sIikgfHwgKG4gPSBlLm9mZnNldCgpKSwgbi50b3AgKz0gRS5jc3MoZVswXSwgImJvcmRlclRvcFdpZHRoIiwgITApLCBuLmxlZnQgKz0gRS5jc3MoZVswXSwgImJvcmRlckxlZnRXaWR0aCIsICEwKSksIHsKICAgICAgICAgICAgICAgICAgICB0b3A6IHQudG9wIC0gbi50b3AgLSBFLmNzcyhyLCAibWFyZ2luVG9wIiwgITApLAogICAgICAgICAgICAgICAgICAgIGxlZnQ6IHQubGVmdCAtIG4ubGVmdCAtIEUuY3NzKHIsICJtYXJnaW5MZWZ0IiwgITApCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIG9mZnNldFBhcmVudDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLm1hcChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0aGlzLm9mZnNldFBhcmVudDsgZSAmJiAhRS5ub2RlTmFtZShlLCAiaHRtbCIpICYmICJzdGF0aWMiID09PSBFLmNzcyhlLCAicG9zaXRpb24iKTspIGUgPSBlLm9mZnNldFBhcmVudDsKICAgICAgICAgICAgICAgIHJldHVybiBlIHx8ICRlCiAgICAgICAgICAgIH0pCiAgICAgICAgfQogICAgfSksIEUuZWFjaCh7CiAgICAgICAgc2Nyb2xsTGVmdDogInBhZ2VYT2Zmc2V0IiwKICAgICAgICBzY3JvbGxUb3A6ICJwYWdlWU9mZnNldCIKICAgIH0sIGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICB2YXIgbyA9IC9ZLy50ZXN0KGkpOwogICAgICAgIEUuZm5bdF0gPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHJldHVybiBLKHRoaXMsIGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgICAgIHZhciByID0gZm4oZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSBuID8gciA/IGkgaW4gciA/IHJbaV0gOiByLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFt0XSA6IGVbdF0gOiB2b2lkKHIgPyByLnNjcm9sbFRvKG8gPyBFKHIpLnNjcm9sbExlZnQoKSA6IG4sIG8gPyBuIDogRShyKS5zY3JvbGxUb3AoKSkgOiBlW3RdID0gbikKICAgICAgICAgICAgfSwgdCwgZSwgYXJndW1lbnRzLmxlbmd0aCwgbnVsbCkKICAgICAgICB9CiAgICB9KSwgRS5lYWNoKFsidG9wIiwgImxlZnQiXSwgZnVuY3Rpb24oZSwgbikgewogICAgICAgIEUuY3NzSG9va3Nbbl0gPSBWZSh2LnBpeGVsUG9zaXRpb24sIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgcmV0dXJuIHQgPyAodCA9IFhlKGUsIG4pLCBXZS50ZXN0KHQpID8gRShlKS5wb3NpdGlvbigpW25dICsgInB4IiA6IHQpIDogdm9pZCAwCiAgICAgICAgfSkKICAgIH0pLCBFLmVhY2goewogICAgICAgIEhlaWdodDogImhlaWdodCIsCiAgICAgICAgV2lkdGg6ICJ3aWR0aCIKICAgIH0sIGZ1bmN0aW9uKG8sIGEpIHsKICAgICAgICBFLmVhY2goewogICAgICAgICAgICBwYWRkaW5nOiAiaW5uZXIiICsgbywKICAgICAgICAgICAgY29udGVudDogYSwKICAgICAgICAgICAgIiI6ICJvdXRlciIgKyBvCiAgICAgICAgfSwgZnVuY3Rpb24ociwgZSkgewogICAgICAgICAgICBFLmZuW2VdID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgdmFyIG4gPSBhcmd1bWVudHMubGVuZ3RoICYmIChyIHx8ICJib29sZWFuIiAhPSB0eXBlb2YgZSksCiAgICAgICAgICAgICAgICAgICAgaSA9IHIgfHwgKCEwID09PSBlIHx8ICEwID09PSB0ID8gIm1hcmdpbiIgOiAiYm9yZGVyIik7CiAgICAgICAgICAgICAgICByZXR1cm4gSyh0aGlzLCBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHI7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEUuaXNXaW5kb3coZSkgPyBlLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFsiY2xpZW50IiArIG9dIDogOSA9PT0gZS5ub2RlVHlwZSA/IChyID0gZS5kb2N1bWVudEVsZW1lbnQsIE1hdGgubWF4KGUuYm9keVsic2Nyb2xsIiArIG9dLCByWyJzY3JvbGwiICsgb10sIGUuYm9keVsib2Zmc2V0IiArIG9dLCByWyJvZmZzZXQiICsgb10sIHJbImNsaWVudCIgKyBvXSkpIDogdm9pZCAwID09PSBuID8gRS5jc3MoZSwgdCwgaSkgOiBFLnN0eWxlKGUsIHQsIG4sIGkpCiAgICAgICAgICAgICAgICB9LCBhLCBuID8gZSA6IHZvaWQgMCwgbiwgbnVsbCkKICAgICAgICAgICAgfQogICAgICAgIH0pCiAgICB9KSwgRS5mbi5leHRlbmQoewogICAgICAgIGJpbmQ6IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMub24oZSwgbnVsbCwgdCwgbikKICAgICAgICB9LAogICAgICAgIHVuYmluZDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5vZmYoZSwgbnVsbCwgdCkKICAgICAgICB9LAogICAgICAgIGRlbGVnYXRlOiBmdW5jdGlvbihlLCB0LCBuLCByKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLm9uKHQsIGUsIG4sIHIpCiAgICAgICAgfSwKICAgICAgICB1bmRlbGVnYXRlOiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgIHJldHVybiAxID09PSBhcmd1bWVudHMubGVuZ3RoID8gdGhpcy5vZmYoZSwgIioqIikgOiB0aGlzLm9mZih0LCBlIHx8ICIqKiIsIG4pCiAgICAgICAgfQogICAgfSksIEUuZm4uc2l6ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiB0aGlzLmxlbmd0aAogICAgfSwgRS5mbi5hbmRTZWxmID0gRS5mbi5hZGRCYWNrLCAiZnVuY3Rpb24iID09IHR5cGVvZiBkZWZpbmUgJiYgZGVmaW5lLmFtZCAmJiBkZWZpbmUoImpxdWVyeSIsIFtdLCBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gRQogICAgfSk7CiAgICB2YXIgcG4gPSBDLmpRdWVyeSwKICAgICAgICBobiA9IEMuJDsKICAgIHJldHVybiBFLm5vQ29uZmxpY3QgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgcmV0dXJuIEMuJCA9PT0gRSAmJiAoQy4kID0gaG4pLCBlICYmIEMualF1ZXJ5ID09PSBFICYmIChDLmpRdWVyeSA9IHBuKSwgRQogICAgfSwgZSB8fCAoQy5qUXVlcnkgPSBDLiQgPSBFKSwgRQp9KTsKISBmdW5jdGlvbih0KSB7CiAgICBpZiAoImZ1bmN0aW9uIiA9PSB0eXBlb2YgZGVmaW5lICYmIGRlZmluZS5hbWQgJiYgZGVmaW5lKCJ1aWtpdCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYyA9IHdpbmRvdy5VSWtpdCB8fCB0KHdpbmRvdywgd2luZG93LmpRdWVyeSwgd2luZG93LmRvY3VtZW50KTsKICAgICAgICAgICAgcmV0dXJuIGMubG9hZCA9IGZ1bmN0aW9uKHQsIGksIGUsIG4pIHsKICAgICAgICAgICAgICAgIHZhciBvLCBzID0gdC5zcGxpdCgiLCIpLAogICAgICAgICAgICAgICAgICAgIGEgPSBbXSwKICAgICAgICAgICAgICAgICAgICByID0gKG4uY29uZmlnICYmIG4uY29uZmlnLnVpa2l0ICYmIG4uY29uZmlnLnVpa2l0LmJhc2UgPyBuLmNvbmZpZy51aWtpdC5iYXNlIDogIiIpLnJlcGxhY2UoL1wvKyQvZywgIiIpOwogICAgICAgICAgICAgICAgaWYgKCFyKSB0aHJvdyBuZXcgRXJyb3IoIlBsZWFzZSBkZWZpbmUgYmFzZSBwYXRoIHRvIFVJa2l0IGluIHRoZSByZXF1aXJlanMgY29uZmlnLiIpOwogICAgICAgICAgICAgICAgZm9yIChvID0gMDsgbyA8IHMubGVuZ3RoOyBvICs9IDEpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbCA9IHNbb10ucmVwbGFjZSgvXC4vZywgIi8iKTsKICAgICAgICAgICAgICAgICAgICBhLnB1c2gociArICIvY29tcG9uZW50cy8iICsgbCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGkoYSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZShjKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgYwogICAgICAgIH0pLCAhd2luZG93LmpRdWVyeSkgdGhyb3cgbmV3IEVycm9yKCJVSWtpdCByZXF1aXJlcyBqUXVlcnkiKTsKICAgIHdpbmRvdyAmJiB3aW5kb3cualF1ZXJ5ICYmIHQod2luZG93LCB3aW5kb3cualF1ZXJ5LCB3aW5kb3cuZG9jdW1lbnQpCn0oZnVuY3Rpb24odCwgbCwgbikgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIGksIGUsIG8sIGMgPSB7fSwKICAgICAgICBzID0gdC5VSWtpdCA/IE9iamVjdC5jcmVhdGUodC5VSWtpdCkgOiB2b2lkIDA7CiAgICBpZiAoYy52ZXJzaW9uID0gIjIuMjcuMiIsIGMubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gcyAmJiAodC5VSWtpdCA9IHMsIGwuVUlraXQgPSBzLCBsLmZuLnVrID0gcy5mbiksIGMKICAgICAgICB9LCBjLnByZWZpeCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICB9LCBjLiQgPSBsLCBjLiRkb2MgPSBjLiQoZG9jdW1lbnQpLCBjLiR3aW4gPSBjLiQod2luZG93KSwgYy4kaHRtbCA9IGMuJCgiaHRtbCIpLCBjLnN1cHBvcnQgPSB7fSwgYy5zdXBwb3J0LnRyYW5zaXRpb24gPSAobyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgdCwgaSA9IG4uYm9keSB8fCBuLmRvY3VtZW50RWxlbWVudCwKICAgICAgICAgICAgICAgIGUgPSB7CiAgICAgICAgICAgICAgICAgICAgV2Via2l0VHJhbnNpdGlvbjogIndlYmtpdFRyYW5zaXRpb25FbmQiLAogICAgICAgICAgICAgICAgICAgIE1velRyYW5zaXRpb246ICJ0cmFuc2l0aW9uZW5kIiwKICAgICAgICAgICAgICAgICAgICBPVHJhbnNpdGlvbjogIm9UcmFuc2l0aW9uRW5kIG90cmFuc2l0aW9uZW5kIiwKICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAidHJhbnNpdGlvbmVuZCIKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZvciAodCBpbiBlKQogICAgICAgICAgICAgICAgaWYgKHZvaWQgMCAhPT0gaS5zdHlsZVt0XSkgcmV0dXJuIGVbdF0KICAgICAgICB9KCkpICYmIHsKICAgICAgICAgICAgZW5kOiBvCiAgICAgICAgfSwgYy5zdXBwb3J0LmFuaW1hdGlvbiA9IChlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciB0LCBpID0gbi5ib2R5IHx8IG4uZG9jdW1lbnRFbGVtZW50LAogICAgICAgICAgICAgICAgZSA9IHsKICAgICAgICAgICAgICAgICAgICBXZWJraXRBbmltYXRpb246ICJ3ZWJraXRBbmltYXRpb25FbmQiLAogICAgICAgICAgICAgICAgICAgIE1vekFuaW1hdGlvbjogImFuaW1hdGlvbmVuZCIsCiAgICAgICAgICAgICAgICAgICAgT0FuaW1hdGlvbjogIm9BbmltYXRpb25FbmQgb2FuaW1hdGlvbmVuZCIsCiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiAiYW5pbWF0aW9uZW5kIgogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgZm9yICh0IGluIGUpCiAgICAgICAgICAgICAgICBpZiAodm9pZCAwICE9PSBpLnN0eWxlW3RdKSByZXR1cm4gZVt0XQogICAgICAgIH0oKSkgJiYgewogICAgICAgICAgICBlbmQ6IGUKICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgRGF0ZS5ub3cgPSBEYXRlLm5vdyB8fCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiAobmV3IERhdGUpLmdldFRpbWUoKQogICAgICAgICAgICB9OwogICAgICAgICAgICBmb3IgKHZhciB0ID0gWyJ3ZWJraXQiLCAibW96Il0sIGkgPSAwOyBpIDwgdC5sZW5ndGggJiYgIXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU7ICsraSkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0W2ldOwogICAgICAgICAgICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSA9IHdpbmRvd1tlICsgIlJlcXVlc3RBbmltYXRpb25GcmFtZSJdLCB3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUgPSB3aW5kb3dbZSArICJDYW5jZWxBbmltYXRpb25GcmFtZSJdIHx8IHdpbmRvd1tlICsgIkNhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZSJdCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKC9pUChhZHxob25lfG9kKS4qT1MgNi8udGVzdCh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCkgfHwgIXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUgfHwgIXdpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZSkgewogICAgICAgICAgICAgICAgdmFyIG4gPSAwOwogICAgICAgICAgICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IERhdGUubm93KCksCiAgICAgICAgICAgICAgICAgICAgICAgIGUgPSBNYXRoLm1heChuICsgMTYsIGkpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB0KG4gPSBlKQogICAgICAgICAgICAgICAgICAgIH0sIGUgLSBpKQogICAgICAgICAgICAgICAgfSwgd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lID0gY2xlYXJUaW1lb3V0CiAgICAgICAgICAgIH0KICAgICAgICB9KCksIGMuc3VwcG9ydC50b3VjaCA9ICJvbnRvdWNoc3RhcnQiIGluIGRvY3VtZW50IHx8IHQuRG9jdW1lbnRUb3VjaCAmJiBkb2N1bWVudCBpbnN0YW5jZW9mIHQuRG9jdW1lbnRUb3VjaCB8fCB0Lm5hdmlnYXRvci5tc1BvaW50ZXJFbmFibGVkICYmIDAgPCB0Lm5hdmlnYXRvci5tc01heFRvdWNoUG9pbnRzIHx8IHQubmF2aWdhdG9yLnBvaW50ZXJFbmFibGVkICYmIDAgPCB0Lm5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyB8fCAhMSwgYy5zdXBwb3J0Lm11dGF0aW9ub2JzZXJ2ZXIgPSB0Lk11dGF0aW9uT2JzZXJ2ZXIgfHwgdC5XZWJLaXRNdXRhdGlvbk9ic2VydmVyIHx8IG51bGwsIGMuVXRpbHMgPSB7fSwgYy5VdGlscy5pc0Z1bGxzY3JlZW4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50IHx8IGRvY3VtZW50Lm1vekZ1bGxTY3JlZW5FbGVtZW50IHx8IGRvY3VtZW50Lm1zRnVsbHNjcmVlbkVsZW1lbnQgfHwgZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnQgfHwgITEKICAgICAgICB9LCBjLlV0aWxzLnN0cjJqc29uID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgcmV0dXJuIGkgPyBKU09OLnBhcnNlKHQucmVwbGFjZSgvKFtcJFx3XSspXHMqOi9nLCBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICciJyArIGkgKyAnIjonCiAgICAgICAgICAgICAgICB9KS5yZXBsYWNlKC8nKFteJ10rKScvZywgZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAnIicgKyBpICsgJyInCiAgICAgICAgICAgICAgICB9KSkgOiBuZXcgRnVuY3Rpb24oIiIsICJ2YXIganNvbiA9ICIgKyB0ICsgIjsgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoanNvbikpOyIpKCkKICAgICAgICAgICAgfSBjYXRjaCAodCkgewogICAgICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgICAgIH0KICAgICAgICB9LCBjLlV0aWxzLmRlYm91bmNlID0gZnVuY3Rpb24obiwgbywgcykgewogICAgICAgICAgICB2YXIgYTsKICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLAogICAgICAgICAgICAgICAgICAgIGkgPSBhcmd1bWVudHMsCiAgICAgICAgICAgICAgICAgICAgZSA9IHMgJiYgIWE7CiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoYSksIGEgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGEgPSBudWxsLCBzIHx8IG4uYXBwbHkodCwgaSkKICAgICAgICAgICAgICAgIH0sIG8pLCBlICYmIG4uYXBwbHkodCwgaSkKICAgICAgICAgICAgfQogICAgICAgIH0sIGMuVXRpbHMudGhyb3R0bGUgPSBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgIHZhciBlID0gITE7CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGUgfHwgKHQuY2FsbCgpLCBlID0gITAsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZSA9ICExCiAgICAgICAgICAgICAgICB9LCBpKSkKICAgICAgICAgICAgfQogICAgICAgIH0sIGMuVXRpbHMucmVtb3ZlQ3NzUnVsZXMgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBpLCBlLCBuLCBvLCBzLCBhLCByLCBsLCBjLCBkOwogICAgICAgICAgICB0ICYmIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGZvciAoZCA9IGRvY3VtZW50LnN0eWxlU2hlZXRzLCBvID0gMCwgciA9IGQubGVuZ3RoOyBvIDwgcjsgbysrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IGRbb10sIGUgPSBbXSwgbi5jc3NSdWxlcyA9IG4uY3NzUnVsZXMsIGkgPSBzID0gMCwgbCA9IG4uY3NzUnVsZXMubGVuZ3RoOyBzIDwgbDsgaSA9ICsrcykgbi5jc3NSdWxlc1tpXS50eXBlID09PSBDU1NSdWxlLlNUWUxFX1JVTEUgJiYgdC50ZXN0KG4uY3NzUnVsZXNbaV0uc2VsZWN0b3JUZXh0KSAmJiBlLnVuc2hpZnQoaSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IDAsIGMgPSBlLmxlbmd0aDsgYSA8IGM7IGErKykgbi5kZWxldGVSdWxlKGVbYV0pCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBjYXRjaCAodCkge30KICAgICAgICAgICAgfSwgMCkKICAgICAgICB9LCBjLlV0aWxzLmlzSW5WaWV3ID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICB2YXIgZSA9IGwodCk7CiAgICAgICAgICAgIGlmICghZS5pcygiOnZpc2libGUiKSkgcmV0dXJuICExOwogICAgICAgICAgICB2YXIgbiA9IGMuJHdpbi5zY3JvbGxMZWZ0KCksCiAgICAgICAgICAgICAgICBvID0gYy4kd2luLnNjcm9sbFRvcCgpLAogICAgICAgICAgICAgICAgcyA9IGUub2Zmc2V0KCksCiAgICAgICAgICAgICAgICBhID0gcy5sZWZ0LAogICAgICAgICAgICAgICAgciA9IHMudG9wOwogICAgICAgICAgICByZXR1cm4gaSA9IGwuZXh0ZW5kKHsKICAgICAgICAgICAgICAgIHRvcG9mZnNldDogMCwKICAgICAgICAgICAgICAgIGxlZnRvZmZzZXQ6IDAKICAgICAgICAgICAgfSwgaSksIHIgKyBlLmhlaWdodCgpID49IG8gJiYgciAtIGkudG9wb2Zmc2V0IDw9IG8gKyBjLiR3aW4uaGVpZ2h0KCkgJiYgYSArIGUud2lkdGgoKSA+PSBuICYmIGEgLSBpLmxlZnRvZmZzZXQgPD0gbiArIGMuJHdpbi53aWR0aCgpCiAgICAgICAgfSwgYy5VdGlscy5jaGVja0Rpc3BsYXkgPSBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgIHZhciBlID0gYy4kKCJbZGF0YS11ay1tYXJnaW5dLCBbZGF0YS11ay1ncmlkLW1hdGNoXSwgW2RhdGEtdWstZ3JpZC1tYXJnaW5dLCBbZGF0YS11ay1jaGVjay1kaXNwbGF5XSIsIHQgfHwgZG9jdW1lbnQpOwogICAgICAgICAgICByZXR1cm4gdCAmJiAhZS5sZW5ndGggJiYgKGUgPSBsKHQpKSwgZS50cmlnZ2VyKCJkaXNwbGF5LnVrLmNoZWNrIiksIGkgJiYgKCJzdHJpbmciICE9IHR5cGVvZiBpICYmIChpID0gJ1tjbGFzcyo9InVrLWFuaW1hdGlvbi0iXScpLCBlLmZpbmQoaSkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gYy4kKHRoaXMpLAogICAgICAgICAgICAgICAgICAgIGkgPSB0LmF0dHIoImNsYXNzIikubWF0Y2goL3VrLWFuaW1hdGlvbi0oLispLyk7CiAgICAgICAgICAgICAgICB0LnJlbW92ZUNsYXNzKGlbMF0pLndpZHRoKCksIHQuYWRkQ2xhc3MoaVswXSkKICAgICAgICAgICAgfSkpLCBlCiAgICAgICAgfSwgYy5VdGlscy5vcHRpb25zID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICBpZiAoInN0cmluZyIgIT0gbC50eXBlKHQpKSByZXR1cm4gdDsgLSAxICE9IHQuaW5kZXhPZigiOiIpICYmICJ9IiAhPSB0LnRyaW0oKS5zdWJzdHIoLTEpICYmICh0ID0gInsiICsgdCArICJ9Iik7CiAgICAgICAgICAgIHZhciBpID0gdCA/IHQuaW5kZXhPZigieyIpIDogLTEsCiAgICAgICAgICAgICAgICBlID0ge307CiAgICAgICAgICAgIGlmICgtMSAhPSBpKSB0cnkgewogICAgICAgICAgICAgICAgZSA9IGMuVXRpbHMuc3RyMmpzb24odC5zdWJzdHIoaSkpCiAgICAgICAgICAgIH0gY2F0Y2ggKHQpIHt9CiAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgfSwgYy5VdGlscy5hbmltYXRlID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICB2YXIgZSA9IGwuRGVmZXJyZWQoKTsKICAgICAgICAgICAgcmV0dXJuICh0ID0gYy4kKHQpKS5jc3MoImRpc3BsYXkiLCAibm9uZSIpLmFkZENsYXNzKGkpLm9uZShjLnN1cHBvcnQuYW5pbWF0aW9uLmVuZCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0LnJlbW92ZUNsYXNzKGkpLCBlLnJlc29sdmUoKQogICAgICAgICAgICB9KSwgdC5jc3MoImRpc3BsYXkiLCAiIiksIGUucHJvbWlzZSgpCiAgICAgICAgfSwgYy5VdGlscy51aWQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHJldHVybiAodCB8fCAiaWQiKSArIChuZXcgRGF0ZSkuZ2V0VGltZSgpICsgIlJBTkQiICsgTWF0aC5jZWlsKDFlNSAqIE1hdGgucmFuZG9tKCkpCiAgICAgICAgfSwgYy5VdGlscy50ZW1wbGF0ZSA9IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgZm9yICh2YXIgZSwgbiwgbywgcywgYSA9IHQucmVwbGFjZSgvXG4vZywgIlxcbiIpLnJlcGxhY2UoL1x7XHtce1xzKiguKz8pXHMqXH1cfVx9L2csICJ7eyEkMX19Iikuc3BsaXQoLyhce1x7XHMqKC4rPylccypcfVx9KS9nKSwgciA9IDAsIGwgPSBbXSwgYyA9IDA7IHIgPCBhLmxlbmd0aDspIHsKICAgICAgICAgICAgICAgIGlmICgoZSA9IGFbcl0pLm1hdGNoKC9ce1x7XHMqKC4rPylccypcfVx9LykpIHN3aXRjaCAociArPSAxLCBlID0gYVtyXSwgbiA9IGVbMF0sIG8gPSBlLnN1YnN0cmluZyhlLm1hdGNoKC9eKFxefFwjfFwhfFx+fFw6KS8pID8gMSA6IDApLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAifiI6CiAgICAgICAgICAgICAgICAgICAgICAgIGwucHVzaCgiZm9yKHZhciAkaT0wOyRpPCIgKyBvICsgIi5sZW5ndGg7JGkrKykgeyB2YXIgJGl0ZW0gPSAiICsgbyArICJbJGldOyIpLCBjKys7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgIjoiOgogICAgICAgICAgICAgICAgICAgICAgICBsLnB1c2goImZvcih2YXIgJGtleSBpbiAiICsgbyArICIpIHsgdmFyICR2YWwgPSAiICsgbyArICJbJGtleV07IiksIGMrKzsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiIyI6CiAgICAgICAgICAgICAgICAgICAgICAgIGwucHVzaCgiaWYoIiArIG8gKyAiKSB7IiksIGMrKzsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiXiI6CiAgICAgICAgICAgICAgICAgICAgICAgIGwucHVzaCgiaWYoISIgKyBvICsgIikgeyIpLCBjKys7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgIi8iOgogICAgICAgICAgICAgICAgICAgICAgICBsLnB1c2goIn0iKSwgYy0tOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICIhIjoKICAgICAgICAgICAgICAgICAgICAgICAgbC5wdXNoKCJfX3JldC5wdXNoKCIgKyBvICsgIik7Iik7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAgICAgIGwucHVzaCgiX19yZXQucHVzaChlc2NhcGUoIiArIG8gKyAiKSk7IikKICAgICAgICAgICAgICAgIH0gZWxzZSBsLnB1c2goIl9fcmV0LnB1c2goJyIgKyBlLnJlcGxhY2UoL1wnL2csICJcXCciKSArICInKTsiKTsKICAgICAgICAgICAgICAgIHIgKz0gMQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBzID0gbmV3IEZ1bmN0aW9uKCIkZGF0YSIsIFsidmFyIF9fcmV0ID0gW107IiwgInRyeSB7IiwgIndpdGgoJGRhdGEpeyIsIGMgPyAnX19yZXQgPSBbIk5vdCBhbGwgYmxvY2tzIGFyZSBjbG9zZWQgY29ycmVjdGx5LiJdJyA6IGwuam9pbigiIiksICJ9OyIsICJ9Y2F0Y2goZSl7X19yZXQgPSBbZS5tZXNzYWdlXTt9IiwgJ3JldHVybiBfX3JldC5qb2luKCIiKS5yZXBsYWNlKC9cXG5cXG4vZywgIlxcbiIpOycsICJmdW5jdGlvbiBlc2NhcGUoaHRtbCkgeyByZXR1cm4gU3RyaW5nKGh0bWwpLnJlcGxhY2UoLyYvZywgJyZhbXA7JykucmVwbGFjZSgvXCIvZywgJyZxdW90OycpLnJlcGxhY2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7Jyk7fSJdLmpvaW4oIlxuIikpLCBpID8gcyhpKSA6IHMKICAgICAgICB9LCBjLlV0aWxzLmZvY3VzID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICBpZiAoISh0ID0gbCh0KSkubGVuZ3RoKSByZXR1cm4gdDsKICAgICAgICAgICAgdmFyIGUsIG4gPSB0LmZpbmQoIlthdXRvZm9jdXNdOmZpcnN0Iik7CiAgICAgICAgICAgIHJldHVybiBuLmxlbmd0aCA/IG4uZm9jdXMoKSA6IChuID0gdC5maW5kKCI6aW5wdXQiICsgKGkgJiYgIiwiICsgaSB8fCAiIikpLmZpcnN0KCkpLmxlbmd0aCA/IG4uZm9jdXMoKSA6ICh0LmF0dHIoInRhYmluZGV4IikgfHwgKGUgPSAxZTMsIHQuYXR0cigidGFiaW5kZXgiLCBlKSksIHRbMF0uZm9jdXMoKSwgZSAmJiB0LmF0dHIoInRhYmluZGV4IiwgIiIpLCB0KQogICAgICAgIH0sIGMuVXRpbHMuZXZlbnRzID0ge30sIGMuVXRpbHMuZXZlbnRzLmNsaWNrID0gYy5zdXBwb3J0LnRvdWNoID8gInRhcCIgOiAiY2xpY2siLCAodC5VSWtpdCA9IGMpLmZuID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICB2YXIgbiA9IGFyZ3VtZW50cywKICAgICAgICAgICAgICAgIGkgPSB0Lm1hdGNoKC9eKFthLXpcLV0rKSg/OlwuKFthLXpdKykpPy9pKSwKICAgICAgICAgICAgICAgIG8gPSBpWzFdLAogICAgICAgICAgICAgICAgcyA9IGlbMl07CiAgICAgICAgICAgIHJldHVybiBjW29dID8gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBsKHRoaXMpLAogICAgICAgICAgICAgICAgICAgIGkgPSB0LmRhdGEobyk7CiAgICAgICAgICAgICAgICBpIHx8IHQuZGF0YShvLCBpID0gY1tvXSh0aGlzLCBzID8gdm9pZCAwIDogZSkpLCBzICYmIGlbc10uYXBwbHkoaSwgQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobiwgMSkpCiAgICAgICAgICAgIH0pIDogKGwuZXJyb3IoIlVJa2l0IGNvbXBvbmVudCBbIiArIG8gKyAiXSBkb2VzIG5vdCBleGlzdC4iKSwgdGhpcykKICAgICAgICB9LCBsLlVJa2l0ID0gYywgbC5mbi51ayA9IGMuZm4sIGMubGFuZ2RpcmVjdGlvbiA9ICJydGwiID09IGMuJGh0bWwuYXR0cigiZGlyIikgPyAicmlnaHQiIDogImxlZnQiLCBjLmNvbXBvbmVudHMgPSB7fSwgYy5jb21wb25lbnQgPSBmdW5jdGlvbihuLCB0KSB7CiAgICAgICAgICAgIHZhciBvID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuVUlraXQgPSBjLCB0aGlzLmVsZW1lbnQgPSB0ID8gYy4kKHQpIDogbnVsbCwgdGhpcy5vcHRpb25zID0gbC5leHRlbmQoITAsIHt9LCB0aGlzLmRlZmF1bHRzLCBpKSwgdGhpcy5wbHVnaW5zID0ge30sIHRoaXMuZWxlbWVudCAmJiB0aGlzLmVsZW1lbnQuZGF0YShuLCB0aGlzKSwgdGhpcy5pbml0KCksICh0aGlzLm9wdGlvbnMucGx1Z2lucy5sZW5ndGggPyB0aGlzLm9wdGlvbnMucGx1Z2lucyA6IE9iamVjdC5rZXlzKG8ucGx1Z2lucykpLmZvckVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIG8ucGx1Z2luc1t0XS5pbml0ICYmIChvLnBsdWdpbnNbdF0uaW5pdChlKSwgZS5wbHVnaW5zW3RdID0gITApCiAgICAgICAgICAgICAgICB9KSwgdGhpcy50cmlnZ2VyKCJpbml0LnVrLmNvbXBvbmVudCIsIFtuLCB0aGlzXSksIHRoaXMKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcmV0dXJuIG8ucGx1Z2lucyA9IHt9LCBsLmV4dGVuZCghMCwgby5wcm90b3R5cGUsIHsKICAgICAgICAgICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgICAgICAgICAgcGx1Z2luczogW10KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBib290OiBmdW5jdGlvbigpIHt9LAogICAgICAgICAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7fSwKICAgICAgICAgICAgICAgIG9uOiBmdW5jdGlvbih0LCBpLCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGMuJCh0aGlzLmVsZW1lbnQgfHwgdGhpcykub24odCwgaSwgZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvbmU6IGZ1bmN0aW9uKHQsIGksIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYy4kKHRoaXMuZWxlbWVudCB8fCB0aGlzKS5vbmUodCwgaSwgZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvZmY6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYy4kKHRoaXMuZWxlbWVudCB8fCB0aGlzKS5vZmYodCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB0cmlnZ2VyOiBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGMuJCh0aGlzLmVsZW1lbnQgfHwgdGhpcykudHJpZ2dlcih0LCBpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGZpbmQ6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYy4kKHRoaXMuZWxlbWVudCA/IHRoaXMuZWxlbWVudCA6IFtdKS5maW5kKHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcHJveHk6IGZ1bmN0aW9uKGksIHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXM7CiAgICAgICAgICAgICAgICAgICAgdC5zcGxpdCgiICIpLmZvckVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICBlW3RdIHx8IChlW3RdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaVt0XS5hcHBseShpLCBhcmd1bWVudHMpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBtaXhpbjogZnVuY3Rpb24oaSwgdCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgICAgICB0LnNwbGl0KCIgIikuZm9yRWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVbdF0gfHwgKGVbdF0gPSBpW3RdLmJpbmQoZSkpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcHRpb246IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAxID09IGFyZ3VtZW50cy5sZW5ndGggPyB0aGlzLm9wdGlvbnNbYXJndW1lbnRzWzBdXSB8fCB2b2lkIDAgOiB2b2lkKDIgPT0gYXJndW1lbnRzLmxlbmd0aCAmJiAodGhpcy5vcHRpb25zW2FyZ3VtZW50c1swXV0gPSBhcmd1bWVudHNbMV0pKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0KSwgdGhpcy5jb21wb25lbnRzW25dID0gbywgdGhpc1tuXSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQsIGk7CiAgICAgICAgICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCkgc3dpdGNoIChhcmd1bWVudHMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5nIiA9PSB0eXBlb2YgYXJndW1lbnRzWzBdIHx8IGFyZ3VtZW50c1swXS5ub2RlVHlwZSB8fCBhcmd1bWVudHNbMF0gaW5zdGFuY2VvZiBqUXVlcnkgPyB0ID0gbChhcmd1bWVudHNbMF0pIDogaSA9IGFyZ3VtZW50c1swXTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgICAgICAgICAgICB0ID0gbChhcmd1bWVudHNbMF0pLCBpID0gYXJndW1lbnRzWzFdCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdCAmJiB0LmRhdGEobikgPyB0LmRhdGEobikgOiBuZXcgYy5jb21wb25lbnRzW25dKHQsIGkpCiAgICAgICAgICAgIH0sIGMuZG9tcmVhZHkgJiYgYy5jb21wb25lbnQuYm9vdChuKSwgbwogICAgICAgIH0sIGMucGx1Z2luID0gZnVuY3Rpb24odCwgaSwgZSkgewogICAgICAgICAgICB0aGlzLmNvbXBvbmVudHNbdF0ucGx1Z2luc1tpXSA9IGUKICAgICAgICB9LCBjLmNvbXBvbmVudC5ib290ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICBjLmNvbXBvbmVudHNbdF0ucHJvdG90eXBlICYmIGMuY29tcG9uZW50c1t0XS5wcm90b3R5cGUuYm9vdCAmJiAhYy5jb21wb25lbnRzW3RdLmJvb3RlZCAmJiAoYy5jb21wb25lbnRzW3RdLnByb3RvdHlwZS5ib290LmFwcGx5KGMsIFtdKSwgYy5jb21wb25lbnRzW3RdLmJvb3RlZCA9ICEwKQogICAgICAgIH0sIGMuY29tcG9uZW50LmJvb3RDb21wb25lbnRzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZvciAodmFyIHQgaW4gYy5jb21wb25lbnRzKSBjLmNvbXBvbmVudC5ib290KHQpCiAgICAgICAgfSwgYy5kb21PYnNlcnZlcnMgPSBbXSwgYy5kb21yZWFkeSA9ICExLCBjLnJlYWR5ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICBjLmRvbU9ic2VydmVycy5wdXNoKHQpLCBjLmRvbXJlYWR5ICYmIHQoZG9jdW1lbnQpCiAgICAgICAgfSwgYy5vbiA9IGZ1bmN0aW9uKHQsIGksIGUpIHsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgLTEgPCB0LmluZGV4T2YoInJlYWR5LnVrLmRvbSIpICYmIGMuZG9tcmVhZHkgJiYgaS5hcHBseShjLiRkb2MpLCBjLiRkb2Mub24odCwgaSwgZSkKICAgICAgICB9LCBjLm9uZSA9IGZ1bmN0aW9uKHQsIGksIGUpIHsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgLTEgPCB0LmluZGV4T2YoInJlYWR5LnVrLmRvbSIpICYmIGMuZG9tcmVhZHkgPyAoaS5hcHBseShjLiRkb2MpLCBjLiRkb2MpIDogYy4kZG9jLm9uZSh0LCBpLCBlKQogICAgICAgIH0sIGMudHJpZ2dlciA9IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGMuJGRvYy50cmlnZ2VyKHQsIGkpCiAgICAgICAgfSwgYy5kb21PYnNlcnZlID0gZnVuY3Rpb24odCwgbikgewogICAgICAgICAgICBjLnN1cHBvcnQubXV0YXRpb25vYnNlcnZlciAmJiAobiA9IG4gfHwgZnVuY3Rpb24oKSB7fSwgYy4kKHQpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgaSA9IGMuJCh0KTsKICAgICAgICAgICAgICAgIGlmICghaS5kYXRhKCJvYnNlcnZlciIpKSB0cnkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gbmV3IGMuc3VwcG9ydC5tdXRhdGlvbm9ic2VydmVyKGMuVXRpbHMuZGVib3VuY2UoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG4uYXBwbHkodCwgW2ldKSwgaS50cmlnZ2VyKCJjaGFuZ2VkLnVrLmRvbSIpCiAgICAgICAgICAgICAgICAgICAgfSwgNTApLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkTGlzdDogITAsCiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnRyZWU6ICEwCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgZS5vYnNlcnZlKHQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRMaXN0OiAhMCwKICAgICAgICAgICAgICAgICAgICAgICAgc3VidHJlZTogITAKICAgICAgICAgICAgICAgICAgICB9KSwgaS5kYXRhKCJvYnNlcnZlciIsIGUpCiAgICAgICAgICAgICAgICB9IGNhdGNoICh0KSB7fQogICAgICAgICAgICB9KSkKICAgICAgICB9LCBjLmluaXQgPSBmdW5jdGlvbihpKSB7CiAgICAgICAgICAgIGkgPSBpIHx8IGRvY3VtZW50LCBjLmRvbU9ic2VydmVycy5mb3JFYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQoaSkKICAgICAgICAgICAgfSkKICAgICAgICB9LCBjLm9uKCJkb21yZWFkeS51ay5kb20iLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYy5pbml0KCksIGMuZG9tcmVhZHkgJiYgYy5VdGlscy5jaGVja0Rpc3BsYXkoKQogICAgICAgIH0pLCBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwgKGkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYy4kYm9keSA9IGMuJCgiYm9keSIpLCBjLnRyaWdnZXIoImJlZm9yZXJlYWR5LnVrLmRvbSIpLCBjLmNvbXBvbmVudC5ib290Q29tcG9uZW50cygpOwogICAgICAgICAgICB2YXIgZSwgbiwgdCwgbyA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoZSA9IHsKICAgICAgICAgICAgICAgIGRpcjogewogICAgICAgICAgICAgICAgICAgIHg6IDAsCiAgICAgICAgICAgICAgICAgICAgeTogMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHg6IHdpbmRvdy5wYWdlWE9mZnNldCwKICAgICAgICAgICAgICAgIHk6IHdpbmRvdy5wYWdlWU9mZnNldAogICAgICAgICAgICB9LCBuID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHdpbmRvdy5wYWdlWE9mZnNldCwKICAgICAgICAgICAgICAgICAgICBpID0gd2luZG93LnBhZ2VZT2Zmc2V0OwogICAgICAgICAgICAgICAgKGUueCAhPSB0IHx8IGUueSAhPSBpKSAmJiAoZS5kaXIueCA9IHQgIT0gZS54ID8gdCA+IGUueCA/IDEgOiAtMSA6IDAsIGUuZGlyLnkgPSBpICE9IGUueSA/IGkgPiBlLnkgPyAxIDogLTEgOiAwLCBlLnggPSB0LCBlLnkgPSBpLCBjLiRkb2MudHJpZ2dlcigic2Nyb2xsaW5nLnVrLmRvY3VtZW50IiwgW3sKICAgICAgICAgICAgICAgICAgICBkaXI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgeDogZS5kaXIueCwKICAgICAgICAgICAgICAgICAgICAgICAgeTogZS5kaXIueQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgeDogdCwKICAgICAgICAgICAgICAgICAgICB5OiBpCiAgICAgICAgICAgICAgICB9XSkpLCBjYW5jZWxBbmltYXRpb25GcmFtZShvKSwgbyA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShuKQogICAgICAgICAgICB9LCBjLnN1cHBvcnQudG91Y2ggJiYgYy4kaHRtbC5vbigidG91Y2htb3ZlIHRvdWNoZW5kIE1TUG9pbnRlck1vdmUgTVNQb2ludGVyVXAgcG9pbnRlcm1vdmUgcG9pbnRlcnVwIiwgbiksIChlLnggfHwgZS55KSAmJiBuKCksIG4pKTsKICAgICAgICAgICAgaWYgKGMudHJpZ2dlcigiZG9tcmVhZHkudWsuZG9tIiksIGMuc3VwcG9ydC50b3VjaCAmJiBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC8oaVBhZHxpUGhvbmV8aVBvZCkvZykgJiYgYy4kd2luLm9uKCJsb2FkIG9yaWVudGF0aW9uY2hhbmdlIHJlc2l6ZSIsIGMuVXRpbHMuZGVib3VuY2UoKHQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbCgiLnVrLWhlaWdodC12aWV3cG9ydCIpLmNzcygiaGVpZ2h0Iiwgd2luZG93LmlubmVySGVpZ2h0KSwgdAogICAgICAgICAgICAgICAgfSkoKSwgMTAwKSksIGMudHJpZ2dlcigiYWZ0ZXJyZWFkeS51ay5kb20iKSwgYy5kb21yZWFkeSA9ICEwLCBjLnN1cHBvcnQubXV0YXRpb25vYnNlcnZlcikgewogICAgICAgICAgICAgICAgdmFyIGkgPSBjLlV0aWxzLmRlYm91bmNlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgYy5pbml0KGRvY3VtZW50LmJvZHkpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIDEwKTsKICAgICAgICAgICAgICAgIG5ldyBjLnN1cHBvcnQubXV0YXRpb25vYnNlcnZlcihmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSAhMTsKICAgICAgICAgICAgICAgICAgICB0LmV2ZXJ5KGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCJjaGlsZExpc3QiICE9IHQudHlwZSkgcmV0dXJuICEwOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpLCBlID0gMDsgZSA8IHQuYWRkZWROb2Rlcy5sZW5ndGg7ICsrZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoaSA9IHQuYWRkZWROb2Rlc1tlXSkub3V0ZXJIVE1MICYmIC0xICE9PSBpLm91dGVySFRNTC5pbmRleE9mKCJkYXRhLXVrLSIpKSByZXR1cm4gKG4gPSAhMCkgJiYgITE7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgICAgICAgICAgICAgIH0pLCBuICYmIGkoKQogICAgICAgICAgICAgICAgfSkub2JzZXJ2ZShkb2N1bWVudC5ib2R5LCB7CiAgICAgICAgICAgICAgICAgICAgY2hpbGRMaXN0OiAhMCwKICAgICAgICAgICAgICAgICAgICBzdWJ0cmVlOiAhMAogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgIH0sICgiY29tcGxldGUiID09IGRvY3VtZW50LnJlYWR5U3RhdGUgfHwgImludGVyYWN0aXZlIiA9PSBkb2N1bWVudC5yZWFkeVN0YXRlKSAmJiBzZXRUaW1lb3V0KGkpLCBpKSksIGMuJGh0bWwuYWRkQ2xhc3MoYy5zdXBwb3J0LnRvdWNoID8gInVrLXRvdWNoIiA6ICJ1ay1ub3RvdWNoIiksIGMuc3VwcG9ydC50b3VjaCkgewogICAgICAgIHZhciBhLCByID0gITEsCiAgICAgICAgICAgIGQgPSAidWstaG92ZXIiLAogICAgICAgICAgICBoID0gIi51ay1vdmVybGF5LCAudWstb3ZlcmxheS1ob3ZlciwgLnVrLW92ZXJsYXktdG9nZ2xlLCAudWstYW5pbWF0aW9uLWhvdmVyLCAudWstaGFzLWhvdmVyIjsKICAgICAgICBjLiRodG1sLm9uKCJtb3VzZWVudGVyIHRvdWNoc3RhcnQgTVNQb2ludGVyRG93biBwb2ludGVyZG93biIsIGgsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICByICYmIGwoIi4iICsgZCkucmVtb3ZlQ2xhc3MoZCksIHIgPSBsKHRoaXMpLmFkZENsYXNzKGQpCiAgICAgICAgfSkub24oIm1vdXNlbGVhdmUgdG91Y2hlbmQgTVNQb2ludGVyVXAgcG9pbnRlcnVwIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICBhID0gbCh0LnRhcmdldCkucGFyZW50cyhoKSwgciAmJiByLm5vdChhKS5yZW1vdmVDbGFzcyhkKQogICAgICAgIH0pCiAgICB9CiAgICByZXR1cm4gYwp9KSwKZnVuY3Rpb24oYSkgewogICAgZnVuY3Rpb24gcigpIHsKICAgICAgICBmID0gbnVsbCwgZy5sYXN0ICYmICh2b2lkIDAgIT09IGcuZWwgJiYgZy5lbC50cmlnZ2VyKCJsb25nVGFwIiksIGcgPSB7fSkKICAgIH0KCiAgICBmdW5jdGlvbiBsKCkgewogICAgICAgIGYgJiYgY2xlYXJUaW1lb3V0KGYpLCBmID0gbnVsbAogICAgfQoKICAgIGZ1bmN0aW9uIGMoKSB7CiAgICAgICAgaCAmJiBjbGVhclRpbWVvdXQoaCksIHUgJiYgY2xlYXJUaW1lb3V0KHUpLCBwICYmIGNsZWFyVGltZW91dChwKSwgZiAmJiBjbGVhclRpbWVvdXQoZiksIGggPSB1ID0gcCA9IGYgPSBudWxsLCBnID0ge30KICAgIH0KCiAgICBmdW5jdGlvbiBkKHQpIHsKICAgICAgICByZXR1cm4gdC5wb2ludGVyVHlwZSA9PSB0Lk1TUE9JTlRFUl9UWVBFX1RPVUNIICYmIHQuaXNQcmltYXJ5CiAgICB9CiAgICBpZiAoIWEuZm4uc3dpcGVMZWZ0KSB7CiAgICAgICAgdmFyIGgsIHUsIHAsIGYsIG0sIGcgPSB7fTsKICAgICAgICBhKGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgaSwgZSwgbiwgbyA9IDAsCiAgICAgICAgICAgICAgICBzID0gMDsKICAgICAgICAgICAgIk1TR2VzdHVyZSIgaW4gd2luZG93ICYmICgobSA9IG5ldyBNU0dlc3R1cmUpLnRhcmdldCA9IGRvY3VtZW50LmJvZHkpLCBhKGRvY3VtZW50KS5vbigiTVNHZXN0dXJlRW5kIGdlc3R1cmVlbmQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IDEgPCB0Lm9yaWdpbmFsRXZlbnQudmVsb2NpdHlYID8gIlJpZ2h0IiA6IHQub3JpZ2luYWxFdmVudC52ZWxvY2l0eVggPCAtMSA/ICJMZWZ0IiA6IDEgPCB0Lm9yaWdpbmFsRXZlbnQudmVsb2NpdHlZID8gIkRvd24iIDogdC5vcmlnaW5hbEV2ZW50LnZlbG9jaXR5WSA8IC0xID8gIlVwIiA6IG51bGw7CiAgICAgICAgICAgICAgICBpICYmIHZvaWQgMCAhPT0gZy5lbCAmJiAoZy5lbC50cmlnZ2VyKCJzd2lwZSIpLCBnLmVsLnRyaWdnZXIoInN3aXBlIiArIGkpKQogICAgICAgICAgICB9KS5vbigidG91Y2hzdGFydCBNU1BvaW50ZXJEb3duIHBvaW50ZXJkb3duIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgKCJNU1BvaW50ZXJEb3duIiAhPSB0LnR5cGUgfHwgZCh0Lm9yaWdpbmFsRXZlbnQpKSAmJiAobiA9ICJNU1BvaW50ZXJEb3duIiA9PSB0LnR5cGUgfHwgInBvaW50ZXJkb3duIiA9PSB0LnR5cGUgPyB0IDogdC5vcmlnaW5hbEV2ZW50LnRvdWNoZXNbMF0sIGkgPSBEYXRlLm5vdygpLCBlID0gaSAtIChnLmxhc3QgfHwgaSksIGcuZWwgPSBhKCJ0YWdOYW1lIiBpbiBuLnRhcmdldCA/IG4udGFyZ2V0IDogbi50YXJnZXQucGFyZW50Tm9kZSksIGggJiYgY2xlYXJUaW1lb3V0KGgpLCBnLngxID0gbi5wYWdlWCwgZy55MSA9IG4ucGFnZVksIDAgPCBlICYmIGUgPD0gMjUwICYmIChnLmlzRG91YmxlVGFwID0gITApLCBnLmxhc3QgPSBpLCBmID0gc2V0VGltZW91dChyLCA3NTApLCB0Lm9yaWdpbmFsRXZlbnQgJiYgdC5vcmlnaW5hbEV2ZW50LnBvaW50ZXJJZCAmJiBtICYmICgiTVNQb2ludGVyRG93biIgPT0gdC50eXBlIHx8ICJwb2ludGVyZG93biIgPT0gdC50eXBlIHx8ICJ0b3VjaHN0YXJ0IiA9PSB0LnR5cGUpICYmIG0uYWRkUG9pbnRlcih0Lm9yaWdpbmFsRXZlbnQucG9pbnRlcklkKSkKICAgICAgICAgICAgfSkub24oInRvdWNobW92ZSBNU1BvaW50ZXJNb3ZlIHBvaW50ZXJtb3ZlIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgKCJNU1BvaW50ZXJNb3ZlIiAhPSB0LnR5cGUgfHwgZCh0Lm9yaWdpbmFsRXZlbnQpKSAmJiAobiA9ICJNU1BvaW50ZXJNb3ZlIiA9PSB0LnR5cGUgfHwgInBvaW50ZXJtb3ZlIiA9PSB0LnR5cGUgPyB0IDogdC5vcmlnaW5hbEV2ZW50LnRvdWNoZXNbMF0sIGwoKSwgZy54MiA9IG4ucGFnZVgsIGcueTIgPSBuLnBhZ2VZLCBvICs9IE1hdGguYWJzKGcueDEgLSBnLngyKSwgcyArPSBNYXRoLmFicyhnLnkxIC0gZy55MikpCiAgICAgICAgICAgIH0pLm9uKCJ0b3VjaGVuZCBNU1BvaW50ZXJVcCBwb2ludGVydXAiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAoIk1TUG9pbnRlclVwIiAhPSB0LnR5cGUgfHwgZCh0Lm9yaWdpbmFsRXZlbnQpKSAmJiAobCgpLCBnLngyICYmIDMwIDwgTWF0aC5hYnMoZy54MSAtIGcueDIpIHx8IGcueTIgJiYgMzAgPCBNYXRoLmFicyhnLnkxIC0gZy55MikgPyBwID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCwgaSwgZSwgbjsKICAgICAgICAgICAgICAgICAgICB2b2lkIDAgIT09IGcuZWwgJiYgKGcuZWwudHJpZ2dlcigic3dpcGUiKSwgZy5lbC50cmlnZ2VyKCJzd2lwZSIgKyAodCA9IGcueDEsIGkgPSBnLngyLCBlID0gZy55MSwgbiA9IGcueTIsIE1hdGguYWJzKHQgLSBpKSA+PSBNYXRoLmFicyhlIC0gbikgPyAwIDwgdCAtIGkgPyAiTGVmdCIgOiAiUmlnaHQiIDogMCA8IGUgLSBuID8gIlVwIiA6ICJEb3duIikpKSwgZyA9IHt9CiAgICAgICAgICAgICAgICB9LCAwKSA6ICJsYXN0IiBpbiBnICYmIChpc05hTihvKSB8fCBvIDwgMzAgJiYgcyA8IDMwID8gdSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBhLkV2ZW50KCJ0YXAiKTsKICAgICAgICAgICAgICAgICAgICB0LmNhbmNlbFRvdWNoID0gYywgdm9pZCAwICE9PSBnLmVsICYmIGcuZWwudHJpZ2dlcih0KSwgZy5pc0RvdWJsZVRhcCA/ICh2b2lkIDAgIT09IGcuZWwgJiYgZy5lbC50cmlnZ2VyKCJkb3VibGVUYXAiKSwgZyA9IHt9KSA6IGggPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBoID0gbnVsbCwgdm9pZCAwICE9PSBnLmVsICYmIGcuZWwudHJpZ2dlcigic2luZ2xlVGFwIiksIGcgPSB7fQogICAgICAgICAgICAgICAgICAgIH0sIDI1MCkKICAgICAgICAgICAgICAgIH0sIDApIDogZyA9IHt9LCBvID0gcyA9IDApKQogICAgICAgICAgICB9KS5vbigidG91Y2hjYW5jZWwgTVNQb2ludGVyQ2FuY2VsIHBvaW50ZXJjYW5jZWwiLCBjKSwgYSh3aW5kb3cpLm9uKCJzY3JvbGwiLCBjKQogICAgICAgIH0pLCBbInN3aXBlIiwgInN3aXBlTGVmdCIsICJzd2lwZVJpZ2h0IiwgInN3aXBlVXAiLCAic3dpcGVEb3duIiwgImRvdWJsZVRhcCIsICJ0YXAiLCAic2luZ2xlVGFwIiwgImxvbmdUYXAiXS5mb3JFYWNoKGZ1bmN0aW9uKGkpIHsKICAgICAgICAgICAgYS5mbltpXSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhKHRoaXMpLm9uKGksIHQpCiAgICAgICAgICAgIH0KICAgICAgICB9KQogICAgfQp9KGpRdWVyeSksCmZ1bmN0aW9uKHMpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBuLCBpLCBlLCBvID0gW107CiAgICBzLmNvbXBvbmVudCgic3RhY2tNYXJnaW4iLCB7CiAgICAgICAgZGVmYXVsdHM6IHsKICAgICAgICAgICAgY2xzOiAidWstbWFyZ2luLXNtYWxsLXRvcCIsCiAgICAgICAgICAgIHJvd2ZpcnN0OiAhMSwKICAgICAgICAgICAgb2JzZXJ2ZTogITEKICAgICAgICB9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzLnJlYWR5KGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHMuJCgiW2RhdGEtdWstbWFyZ2luXSIsIHQpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBzLiQodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJzdGFja01hcmdpbiIpIHx8IHMuc3RhY2tNYXJnaW4odCwgcy5VdGlscy5vcHRpb25zKHQuYXR0cigiZGF0YS11ay1tYXJnaW4iKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciB0LCBpID0gdGhpczsKICAgICAgICAgICAgcy4kd2luLm9uKCJyZXNpemUgb3JpZW50YXRpb25jaGFuZ2UiLCAodCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5wcm9jZXNzKCkKICAgICAgICAgICAgfSwgcy4kKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdCgpLCBzLiR3aW4ub24oImxvYWQiLCB0KQogICAgICAgICAgICB9KSwgcy5VdGlscy5kZWJvdW5jZSh0LCAyMCkpKSwgdGhpcy5vbigiZGlzcGxheS51ay5jaGVjayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIHRoaXMucHJvY2VzcygpCiAgICAgICAgICAgIH0uYmluZCh0aGlzKSksIHRoaXMub3B0aW9ucy5vYnNlcnZlICYmIHMuZG9tT2JzZXJ2ZSh0aGlzLmVsZW1lbnQsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIGkucHJvY2VzcygpCiAgICAgICAgICAgIH0pLCBvLnB1c2godGhpcykKICAgICAgICB9LAogICAgICAgIHByb2Nlc3M6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgdCA9IHRoaXMuZWxlbWVudC5jaGlsZHJlbigpOwogICAgICAgICAgICBpZiAocy5VdGlscy5zdGFja01hcmdpbih0LCB0aGlzLm9wdGlvbnMpLCAhdGhpcy5vcHRpb25zLnJvd2ZpcnN0IHx8ICF0Lmxlbmd0aCkgcmV0dXJuIHRoaXM7CiAgICAgICAgICAgIHZhciBlID0ge30sCiAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgIHJldHVybiB0LnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5yb3dmaXJzdCkuZWFjaChmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgICAgICBpID0gcy4kKHRoaXMpLCAibm9uZSIgIT0gdGhpcy5zdHlsZS5kaXNwbGF5ICYmICh0ID0gaS5vZmZzZXQoKS5sZWZ0LCAoKGVbdF0gPSBlW3RdIHx8IFtdKSAmJiBlW3RdKS5wdXNoKHRoaXMpLCBuID0gITEgPT09IG4gPyB0IDogTWF0aC5taW4obiwgdCkpCiAgICAgICAgICAgIH0pLCBzLiQoZVtuXSkuYWRkQ2xhc3ModGhpcy5vcHRpb25zLnJvd2ZpcnN0KSwgdGhpcwogICAgICAgIH0KICAgIH0pLCBpID0gW10sIGUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgaWYgKHQuaXMoIjp2aXNpYmxlIikpIHsKICAgICAgICAgICAgdmFyIGkgPSB0LnBhcmVudCgpLndpZHRoKCksCiAgICAgICAgICAgICAgICBlID0gdC5kYXRhKCJ3aWR0aCIpLAogICAgICAgICAgICAgICAgbiA9IGkgLyBlLAogICAgICAgICAgICAgICAgbyA9IE1hdGguZmxvb3IobiAqIHQuZGF0YSgiaGVpZ2h0IikpOwogICAgICAgICAgICB0LmNzcyh7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IGkgPCBlID8gbyA6IHQuZGF0YSgiaGVpZ2h0IikKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9LCBzLmNvbXBvbmVudCgicmVzcG9uc2l2ZUVsZW1lbnQiLCB7CiAgICAgICAgZGVmYXVsdHM6IHt9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzLnJlYWR5KGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHMuJCgiaWZyYW1lLnVrLXJlc3BvbnNpdmUtd2lkdGgsIFtkYXRhLXVrLXJlc3BvbnNpdmVdIiwgdCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHMuJCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoInJlc3BvbnNpdmVFbGVtZW50IikgfHwgcy5yZXNwb25zaXZlRWxlbWVudCh0LCB7fSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmVsZW1lbnQ7CiAgICAgICAgICAgIHQuYXR0cigid2lkdGgiKSAmJiB0LmF0dHIoImhlaWdodCIpICYmICh0LmRhdGEoewogICAgICAgICAgICAgICAgd2lkdGg6IHQuYXR0cigid2lkdGgiKSwKICAgICAgICAgICAgICAgIGhlaWdodDogdC5hdHRyKCJoZWlnaHQiKQogICAgICAgICAgICB9KS5vbigiZGlzcGxheS51ay5jaGVjayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZSh0KQogICAgICAgICAgICB9KSwgZSh0KSwgaS5wdXNoKHQpKQogICAgICAgIH0KICAgIH0pLCBzLiR3aW4ub24oInJlc2l6ZSBsb2FkIiwgcy5VdGlscy5kZWJvdW5jZShmdW5jdGlvbigpIHsKICAgICAgICBpLmZvckVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICBlKHQpCiAgICAgICAgfSkKICAgIH0sIDE1KSksIHMuVXRpbHMuc3RhY2tNYXJnaW4gPSBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgaSA9IHMuJC5leHRlbmQoewogICAgICAgICAgICBjbHM6ICJ1ay1tYXJnaW4tc21hbGwtdG9wIgogICAgICAgIH0sIGkpLCB0ID0gcy4kKHQpLnJlbW92ZUNsYXNzKGkuY2xzKTsKICAgICAgICB2YXIgbyA9ICExOwogICAgICAgIHQuZWFjaChmdW5jdGlvbih0LCBpLCBlLCBuKSB7CiAgICAgICAgICAgICJub25lIiAhPSAobiA9IHMuJCh0aGlzKSkuY3NzKCJkaXNwbGF5IikgJiYgKHQgPSBuLm9mZnNldCgpLCBpID0gbi5vdXRlckhlaWdodCgpLCBlID0gdC50b3AgKyBpLCBuLmRhdGEoewogICAgICAgICAgICAgICAgdWtNYXJnaW5Qb3M6IGUsCiAgICAgICAgICAgICAgICB1a01hcmdpblRvcDogdC50b3AKICAgICAgICAgICAgfSksICghMSA9PT0gbyB8fCB0LnRvcCA8IG8udG9wKSAmJiAobyA9IHsKICAgICAgICAgICAgICAgIHRvcDogdC50b3AsCiAgICAgICAgICAgICAgICBsZWZ0OiB0LmxlZnQsCiAgICAgICAgICAgICAgICBwb3M6IGUKICAgICAgICAgICAgfSkpCiAgICAgICAgfSkuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICJub25lIiAhPSAodCA9IHMuJCh0aGlzKSkuY3NzKCJkaXNwbGF5IikgJiYgdC5kYXRhKCJ1a01hcmdpblRvcCIpID4gby50b3AgJiYgdC5kYXRhKCJ1a01hcmdpblBvcyIpID4gby5wb3MgJiYgdC5hZGRDbGFzcyhpLmNscykKICAgICAgICB9KQogICAgfSwgcy5VdGlscy5tYXRjaEhlaWdodHMgPSBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgdCA9IHMuJCh0KS5jc3MoIm1pbi1oZWlnaHQiLCAiIiksIGkgPSBzLiQuZXh0ZW5kKHsKICAgICAgICAgICAgcm93OiAhMAogICAgICAgIH0sIGkpOwogICAgICAgIHZhciBvID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICBpZiAoISh0Lmxlbmd0aCA8IDIpKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IDA7CiAgICAgICAgICAgICAgICB0LmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZSA9IE1hdGgubWF4KGUsIHMuJCh0aGlzKS5vdXRlckhlaWdodCgpKQogICAgICAgICAgICAgICAgfSkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHMuJCh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUgLSAoImJvcmRlci1ib3giID09IHQuY3NzKCJib3gtc2l6aW5nIikgPyAwIDogdC5vdXRlckhlaWdodCgpIC0gdC5oZWlnaHQoKSk7CiAgICAgICAgICAgICAgICAgICAgdC5jc3MoIm1pbi1oZWlnaHQiLCBpICsgInB4IikKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGkucm93ID8gKHQuZmlyc3QoKS53aWR0aCgpLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9ICExLAogICAgICAgICAgICAgICAgbiA9IFtdOwogICAgICAgICAgICB0LmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHMuJCh0aGlzKSwKICAgICAgICAgICAgICAgICAgICBpID0gdC5vZmZzZXQoKS50b3A7CiAgICAgICAgICAgICAgICBpICE9IGUgJiYgbi5sZW5ndGggJiYgKG8ocy4kKG4pKSwgbiA9IFtdLCBpID0gdC5vZmZzZXQoKS50b3ApLCBuLnB1c2godCksIGUgPSBpCiAgICAgICAgICAgIH0pLCBuLmxlbmd0aCAmJiBvKHMuJChuKSkKICAgICAgICB9LCAwKSkgOiBvKHQpCiAgICB9LCBuID0ge30sIHMuVXRpbHMuaW5saW5lU3ZnID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgIHMuJCh0IHx8ICdpbWdbc3JjJD0iLnN2ZyJdJywgaSB8fCBkb2N1bWVudCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSBzLiQodGhpcyksCiAgICAgICAgICAgICAgICB0ID0gZS5hdHRyKCJzcmMiKTsKICAgICAgICAgICAgaWYgKCFuW3RdKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHMuJC5EZWZlcnJlZCgpOwogICAgICAgICAgICAgICAgcy4kLmdldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgbmM6IE1hdGgucmFuZG9tKCkKICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBpLnJlc29sdmUocy4kKHQpLmZpbmQoInN2ZyIpKQogICAgICAgICAgICAgICAgfSksIG5bdF0gPSBpLnByb21pc2UoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIG5bdF0udGhlbihmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHMuJCh0KS5jbG9uZSgpOwogICAgICAgICAgICAgICAgZS5hdHRyKCJpZCIpICYmIGkuYXR0cigiaWQiLCBlLmF0dHIoImlkIikpLCBlLmF0dHIoImNsYXNzIikgJiYgaS5hdHRyKCJjbGFzcyIsIGUuYXR0cigiY2xhc3MiKSksIGUuYXR0cigic3R5bGUiKSAmJiBpLmF0dHIoInN0eWxlIiwgZS5hdHRyKCJzdHlsZSIpKSwgZS5hdHRyKCJ3aWR0aCIpICYmIChpLmF0dHIoIndpZHRoIiwgZS5hdHRyKCJ3aWR0aCIpKSwgZS5hdHRyKCJoZWlnaHQiKSB8fCBpLnJlbW92ZUF0dHIoImhlaWdodCIpKSwgZS5hdHRyKCJoZWlnaHQiKSAmJiAoaS5hdHRyKCJoZWlnaHQiLCBlLmF0dHIoImhlaWdodCIpKSwgZS5hdHRyKCJ3aWR0aCIpIHx8IGkucmVtb3ZlQXR0cigid2lkdGgiKSksIGUucmVwbGFjZVdpdGgoaSkKICAgICAgICAgICAgfSkKICAgICAgICB9KQogICAgfSwgcy5yZWFkeShmdW5jdGlvbih0KSB7CiAgICAgICAgcy5VdGlscy5pbmxpbmVTdmcoIltkYXRhLXVrLXN2Z10iLCB0KQogICAgfSksIHMuVXRpbHMuZ2V0Q3NzVmFyID0gZnVuY3Rpb24odCkgewogICAgICAgIHZhciBpLCBlID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LAogICAgICAgICAgICBuID0gZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSk7CiAgICAgICAgbi5jbGFzc0xpc3QuYWRkKCJ2YXItIiArIHQpOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGkgPSBKU09OLnBhcnNlKGkgPSBnZXRDb21wdXRlZFN0eWxlKG4sICI6YmVmb3JlIikuY29udGVudC5yZXBsYWNlKC9eWyInXSguKilbIiddJC8sICIkMSIpKQogICAgICAgIH0gY2F0Y2ggKHQpIHsKICAgICAgICAgICAgaSA9IHZvaWQgMAogICAgICAgIH0KICAgICAgICByZXR1cm4gZS5yZW1vdmVDaGlsZChuKSwgaQogICAgfQp9KFVJa2l0KSwKZnVuY3Rpb24ocykgewogICAgInVzZSBzdHJpY3QiOwoKICAgIGZ1bmN0aW9uIGUodCwgaSkgewogICAgICAgIGkgPSBzLiQuZXh0ZW5kKHsKICAgICAgICAgICAgZHVyYXRpb246IDFlMywKICAgICAgICAgICAgdHJhbnNpdGlvbjogImVhc2VPdXRFeHBvIiwKICAgICAgICAgICAgb2Zmc2V0OiAwLAogICAgICAgICAgICBjb21wbGV0ZTogZnVuY3Rpb24oKSB7fQogICAgICAgIH0sIGkpOwogICAgICAgIHZhciBlID0gdC5vZmZzZXQoKS50b3AgLSBpLm9mZnNldCwKICAgICAgICAgICAgbiA9IHMuJGRvYy5oZWlnaHQoKSwKICAgICAgICAgICAgbyA9IHdpbmRvdy5pbm5lckhlaWdodDsKICAgICAgICBuIDwgZSArIG8gJiYgKGUgPSBuIC0gbyksIHMuJCgiaHRtbCxib2R5Iikuc3RvcCgpLmFuaW1hdGUoewogICAgICAgICAgICBzY3JvbGxUb3A6IGUKICAgICAgICB9LCBpLmR1cmF0aW9uLCBpLnRyYW5zaXRpb24pLnByb21pc2UoKS5kb25lKGkuY29tcGxldGUpCiAgICB9CiAgICBzLmNvbXBvbmVudCgic21vb3RoU2Nyb2xsIiwgewogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzLiRodG1sLm9uKCJjbGljay5zbW9vdGgtc2Nyb2xsLnVpa2l0IiwgIltkYXRhLXVrLXNtb290aC1zY3JvbGxdIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHMuJCh0aGlzKTsKICAgICAgICAgICAgICAgIHJldHVybiB0LmRhdGEoInNtb290aFNjcm9sbCIpIHx8IChzLnNtb290aFNjcm9sbCh0LCBzLlV0aWxzLm9wdGlvbnModC5hdHRyKCJkYXRhLXVrLXNtb290aC1zY3JvbGwiKSkpLCB0LnRyaWdnZXIoImNsaWNrIikpLCAhMQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBpID0gdGhpczsKICAgICAgICAgICAgdGhpcy5vbigiY2xpY2siLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCksIGUocy4kKHRoaXMuaGFzaCkubGVuZ3RoID8gcy4kKHRoaXMuaGFzaCkgOiBzLiQoImJvZHkiKSwgaS5vcHRpb25zKQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgIH0pLCBzLlV0aWxzLnNjcm9sbFRvRWxlbWVudCA9IGUsIHMuJC5lYXNpbmcuZWFzZU91dEV4cG8gfHwgKHMuJC5lYXNpbmcuZWFzZU91dEV4cG8gPSBmdW5jdGlvbih0LCBpLCBlLCBuLCBvKSB7CiAgICAgICAgcmV0dXJuIGkgPT0gbyA/IGUgKyBuIDogbiAqICgxIC0gTWF0aC5wb3coMiwgLTEwICogaSAvIG8pKSArIGUKICAgIH0pCn0oVUlraXQpLApmdW5jdGlvbihkKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICB2YXIgaCA9IGQuJHdpbiwKICAgICAgICB0ID0gZC4kZG9jLAogICAgICAgIGkgPSBbXSwKICAgICAgICBlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZvciAodmFyIHQgPSAwOyB0IDwgaS5sZW5ndGg7IHQrKykgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZS5hcHBseSh3aW5kb3csIFtpW3RdLmNoZWNrXSkKICAgICAgICB9OwogICAgZC5jb21wb25lbnQoInNjcm9sbHNweSIsIHsKICAgICAgICBkZWZhdWx0czogewogICAgICAgICAgICB0YXJnZXQ6ICExLAogICAgICAgICAgICBjbHM6ICJ1ay1zY3JvbGxzcHktaW52aWV3IiwKICAgICAgICAgICAgaW5pdGNsczogInVrLXNjcm9sbHNweS1pbml0LWludmlldyIsCiAgICAgICAgICAgIHRvcG9mZnNldDogMCwKICAgICAgICAgICAgbGVmdG9mZnNldDogMCwKICAgICAgICAgICAgcmVwZWF0OiAhMSwKICAgICAgICAgICAgZGVsYXk6IDAKICAgICAgICB9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0Lm9uKCJzY3JvbGxpbmcudWsuZG9jdW1lbnQiLCBlKSwgaC5vbigibG9hZCByZXNpemUgb3JpZW50YXRpb25jaGFuZ2UiLCBkLlV0aWxzLmRlYm91bmNlKGUsIDUwKSksIGQucmVhZHkoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgZC4kKCJbZGF0YS11ay1zY3JvbGxzcHldIiwgdCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGQuJCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoInNjcm9sbHNweSIpIHx8IGQuc2Nyb2xsc3B5KHQsIGQuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstc2Nyb2xsc3B5IikpKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgYSwgciA9IHRoaXMsCiAgICAgICAgICAgICAgICBsID0gdGhpcy5vcHRpb25zLmNscy5zcGxpdCgvLC8pLAogICAgICAgICAgICAgICAgdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gci5vcHRpb25zLnRhcmdldCA/IHIuZWxlbWVudC5maW5kKHIub3B0aW9ucy50YXJnZXQpIDogci5lbGVtZW50LAogICAgICAgICAgICAgICAgICAgICAgICBvID0gMSA9PT0gdC5sZW5ndGggPyAxIDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IDA7CiAgICAgICAgICAgICAgICAgICAgdC5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGQuJCh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSB0LmRhdGEoImludmlld3N0YXRlIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlID0gZC5VdGlscy5pc0luVmlldyh0LCByLm9wdGlvbnMpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQuZGF0YSgidWtTY3JvbGxzcHlDbHMiKSB8fCBsW3NdLnRyaW0oKTsKICAgICAgICAgICAgICAgICAgICAgICAgIWUgfHwgaSB8fCB0LmRhdGEoInNjcm9sbHNweS1pZGxlIikgfHwgKGEgfHwgKHQuYWRkQ2xhc3Moci5vcHRpb25zLmluaXRjbHMpLCByLm9mZnNldCA9IHQub2Zmc2V0KCksIGEgPSAhMCwgdC50cmlnZ2VyKCJpbml0LnVrLnNjcm9sbHNweSIpKSwgdC5kYXRhKCJzY3JvbGxzcHktaWRsZSIsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0LmFkZENsYXNzKCJ1ay1zY3JvbGxzcHktaW52aWV3IikudG9nZ2xlQ2xhc3Mobikud2lkdGgoKSwgdC50cmlnZ2VyKCJpbnZpZXcudWsuc2Nyb2xsc3B5IiksIHQuZGF0YSgic2Nyb2xsc3B5LWlkbGUiLCAhMSksIHQuZGF0YSgiaW52aWV3c3RhdGUiLCAhMCkKICAgICAgICAgICAgICAgICAgICAgICAgfSwgci5vcHRpb25zLmRlbGF5ICogbykpLCBvKyspLCAhZSAmJiBpICYmIHIub3B0aW9ucy5yZXBlYXQgJiYgKHQuZGF0YSgic2Nyb2xsc3B5LWlkbGUiKSAmJiAoY2xlYXJUaW1lb3V0KHQuZGF0YSgic2Nyb2xsc3B5LWlkbGUiKSksIHQuZGF0YSgic2Nyb2xsc3B5LWlkbGUiLCAhMSkpLCB0LnJlbW92ZUNsYXNzKCJ1ay1zY3JvbGxzcHktaW52aWV3IikudG9nZ2xlQ2xhc3MobiksIHQuZGF0YSgiaW52aWV3c3RhdGUiLCAhMSksIHQudHJpZ2dlcigib3V0dmlldy51ay5zY3JvbGxzcHkiKSksIHMgPSBsW3MgKyAxXSA/IHMgKyAxIDogMAogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB0KCksIHRoaXMuY2hlY2sgPSB0LCBpLnB1c2godGhpcykKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBuID0gW10sCiAgICAgICAgbyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBmb3IgKHZhciB0ID0gMDsgdCA8IG4ubGVuZ3RoOyB0KyspIHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUuYXBwbHkod2luZG93LCBbblt0XS5jaGVja10pCiAgICAgICAgfTsKICAgIGQuY29tcG9uZW50KCJzY3JvbGxzcHluYXYiLCB7CiAgICAgICAgZGVmYXVsdHM6IHsKICAgICAgICAgICAgY2xzOiAidWstYWN0aXZlIiwKICAgICAgICAgICAgY2xvc2VzdDogITEsCiAgICAgICAgICAgIHRvcG9mZnNldDogMCwKICAgICAgICAgICAgbGVmdG9mZnNldDogMCwKICAgICAgICAgICAgc21vb3Roc2Nyb2xsOiAhMQogICAgICAgIH0sCiAgICAgICAgYm9vdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHQub24oInNjcm9sbGluZy51ay5kb2N1bWVudCIsIG8pLCBoLm9uKCJyZXNpemUgb3JpZW50YXRpb25jaGFuZ2UiLCBkLlV0aWxzLmRlYm91bmNlKG8sIDUwKSksIGQucmVhZHkoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgZC4kKCJbZGF0YS11ay1zY3JvbGxzcHktbmF2XSIsIHQpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBkLiQodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJzY3JvbGxzcHluYXYiKSB8fCBkLnNjcm9sbHNweW5hdih0LCBkLlV0aWxzLm9wdGlvbnModC5hdHRyKCJkYXRhLXVrLXNjcm9sbHNweS1uYXYiKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBvLCB0ID0gW10sCiAgICAgICAgICAgICAgICBzID0gdGhpcy5maW5kKCJhW2hyZWZePScjJ10iKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICIjIiAhPT0gdGhpcy5nZXRBdHRyaWJ1dGUoImhyZWYiKS50cmltKCkgJiYgdC5wdXNoKHRoaXMuZ2V0QXR0cmlidXRlKCJocmVmIikpCiAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgIGEgPSBkLiQodC5qb2luKCIsIikpLAogICAgICAgICAgICAgICAgciA9IHRoaXMub3B0aW9ucy5jbHMsCiAgICAgICAgICAgICAgICBsID0gdGhpcy5vcHRpb25zLmNsb3Nlc3QgfHwgdGhpcy5vcHRpb25zLmNsb3Nlc3QsCiAgICAgICAgICAgICAgICBjID0gdGhpcywKICAgICAgICAgICAgICAgIGkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBvID0gW107CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCBhLmxlbmd0aDsgdCsrKSBkLlV0aWxzLmlzSW5WaWV3KGEuZXEodCksIGMub3B0aW9ucykgJiYgby5wdXNoKGEuZXEodCkpOwogICAgICAgICAgICAgICAgICAgIGlmIChvLmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSwgZSA9IGguc2Nyb2xsVG9wKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IDA7IHQgPCBvLmxlbmd0aDsgdCsrKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAob1t0XS5vZmZzZXQoKS50b3AgLSBjLm9wdGlvbnMudG9wb2Zmc2V0ID49IGUpIHJldHVybiBvW3RdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghbikgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICBpID0gYy5vcHRpb25zLmNsb3Nlc3QgPyAocy5ibHVyKCkuY2xvc2VzdChsKS5yZW1vdmVDbGFzcyhyKSwgcy5maWx0ZXIoImFbaHJlZj0nIyIgKyBuLmF0dHIoImlkIikgKyAiJ10iKS5jbG9zZXN0KGwpLmFkZENsYXNzKHIpKSA6IHMucmVtb3ZlQ2xhc3MocikuZmlsdGVyKCJhW2hyZWY9JyMiICsgbi5hdHRyKCJpZCIpICsgIiddIikuYWRkQ2xhc3MociksIGMuZWxlbWVudC50cmlnZ2VyKCJpbnZpZXcudWsuc2Nyb2xsc3B5bmF2IiwgW24sIGldKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5zbW9vdGhzY3JvbGwgJiYgZC5zbW9vdGhTY3JvbGwgJiYgcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZC5zbW9vdGhTY3JvbGwodGhpcywgYy5vcHRpb25zLnNtb290aHNjcm9sbCkKICAgICAgICAgICAgfSksIGkoKSwgdGhpcy5lbGVtZW50LmRhdGEoInNjcm9sbHNweW5hdiIsIHRoaXMpLCB0aGlzLmNoZWNrID0gaSwgbi5wdXNoKHRoaXMpCiAgICAgICAgfQogICAgfSkKfShVSWtpdCksCmZ1bmN0aW9uKG4pIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBlID0gW107CiAgICBuLmNvbXBvbmVudCgidG9nZ2xlIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIHRhcmdldDogITEsCiAgICAgICAgICAgIGNsczogInVrLWhpZGRlbiIsCiAgICAgICAgICAgIGFuaW1hdGlvbjogITEsCiAgICAgICAgICAgIGR1cmF0aW9uOiAyMDAKICAgICAgICB9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBuLnJlYWR5KGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIG4uJCgiW2RhdGEtdWstdG9nZ2xlXSIsIHQpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBuLiQodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJ0b2dnbGUiKSB8fCBuLnRvZ2dsZSh0LCBuLlV0aWxzLm9wdGlvbnModC5hdHRyKCJkYXRhLXVrLXRvZ2dsZSIpKSkKICAgICAgICAgICAgICAgIH0pLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGUuZm9yRWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHQuZ2V0VG9nZ2xlcygpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIDApCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGkgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmFyaWEgPSAtMSAhPT0gdGhpcy5vcHRpb25zLmNscy5pbmRleE9mKCJ1ay1oaWRkZW4iKSwgdGhpcy5vbigiY2xpY2siLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpLmVsZW1lbnQuaXMoJ2FbaHJlZj0iIyJdJykgJiYgdC5wcmV2ZW50RGVmYXVsdCgpLCBpLnRvZ2dsZSgpCiAgICAgICAgICAgIH0pLCBlLnB1c2godGhpcykKICAgICAgICB9LAogICAgICAgIHRvZ2dsZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmdldFRvZ2dsZXMoKSwgdGhpcy50b3RvZ2dsZS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIGlmICh0aGlzLm9wdGlvbnMuYW5pbWF0aW9uICYmIG4uc3VwcG9ydC5hbmltYXRpb24pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgICAgIGUgPSB0aGlzLm9wdGlvbnMuYW5pbWF0aW9uLnNwbGl0KCIsIik7CiAgICAgICAgICAgICAgICAgICAgMSA9PSBlLmxlbmd0aCAmJiAoZVsxXSA9IGVbMF0pLCBlWzBdID0gZVswXS50cmltKCksIGVbMV0gPSBlWzFdLnRyaW0oKSwgdGhpcy50b3RvZ2dsZS5jc3MoImFuaW1hdGlvbi1kdXJhdGlvbiIsIHRoaXMub3B0aW9ucy5kdXJhdGlvbiArICJtcyIpLCB0aGlzLnRvdG9nZ2xlLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gbi4kKHRoaXMpOwogICAgICAgICAgICAgICAgICAgICAgICB0Lmhhc0NsYXNzKGkub3B0aW9ucy5jbHMpID8gKHQudG9nZ2xlQ2xhc3MoaS5vcHRpb25zLmNscyksIG4uVXRpbHMuYW5pbWF0ZSh0LCBlWzBdKS50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdC5jc3MoImFuaW1hdGlvbi1kdXJhdGlvbiIsICIiKSwgbi5VdGlscy5jaGVja0Rpc3BsYXkodCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkpIDogbi5VdGlscy5hbmltYXRlKHRoaXMsIGVbMV0gKyAiIHVrLWFuaW1hdGlvbi1yZXZlcnNlIikudGhlbihmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQudG9nZ2xlQ2xhc3MoaS5vcHRpb25zLmNscykuY3NzKCJhbmltYXRpb24tZHVyYXRpb24iLCAiIiksIG4uVXRpbHMuY2hlY2tEaXNwbGF5KHQpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLnRvdG9nZ2xlLnRvZ2dsZUNsYXNzKHRoaXMub3B0aW9ucy5jbHMpLCBuLlV0aWxzLmNoZWNrRGlzcGxheSh0aGlzLnRvdG9nZ2xlKTsKICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQXJpYSgpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGdldFRvZ2dsZXM6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB0aGlzLnRvdG9nZ2xlID0gdGhpcy5vcHRpb25zLnRhcmdldCA/IG4uJCh0aGlzLm9wdGlvbnMudGFyZ2V0KSA6IFtdLCB0aGlzLnVwZGF0ZUFyaWEoKQogICAgICAgIH0sCiAgICAgICAgdXBkYXRlQXJpYTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHRoaXMuYXJpYSAmJiB0aGlzLnRvdG9nZ2xlLmxlbmd0aCAmJiB0aGlzLnRvdG9nZ2xlLm5vdCgiW2FyaWEtaGlkZGVuXSIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBuLiQodGhpcykuYXR0cigiYXJpYS1oaWRkZW4iLCBuLiQodGhpcykuaGFzQ2xhc3MoInVrLWhpZGRlbiIpKQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgIH0pCn0oVUlraXQpLApmdW5jdGlvbihuKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBuLmNvbXBvbmVudCgiYWxlcnQiLCB7CiAgICAgICAgZGVmYXVsdHM6IHsKICAgICAgICAgICAgZmFkZTogITAsCiAgICAgICAgICAgIGR1cmF0aW9uOiAyMDAsCiAgICAgICAgICAgIHRyaWdnZXI6ICIudWstYWxlcnQtY2xvc2UiCiAgICAgICAgfSwKICAgICAgICBib290OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgbi4kaHRtbC5vbigiY2xpY2suYWxlcnQudWlraXQiLCAiW2RhdGEtdWstYWxlcnRdIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBuLiQodGhpcyk7CiAgICAgICAgICAgICAgICBpZiAoIWkuZGF0YSgiYWxlcnQiKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gbi5hbGVydChpLCBuLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLWFsZXJ0IikpKTsKICAgICAgICAgICAgICAgICAgICBuLiQodC50YXJnZXQpLmlzKGUub3B0aW9ucy50cmlnZ2VyKSAmJiAodC5wcmV2ZW50RGVmYXVsdCgpLCBlLmNsb3NlKCkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGkgPSB0aGlzOwogICAgICAgICAgICB0aGlzLm9uKCJjbGljayIsIHRoaXMub3B0aW9ucy50cmlnZ2VyLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCksIGkuY2xvc2UoKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgY2xvc2U6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgdCA9IHRoaXMudHJpZ2dlcigiY2xvc2UudWsuYWxlcnQiKSwKICAgICAgICAgICAgICAgIGkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnRyaWdnZXIoImNsb3NlZC51ay5hbGVydCIpLnJlbW92ZSgpCiAgICAgICAgICAgICAgICB9LmJpbmQodGhpcyk7CiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5mYWRlID8gdC5jc3MoIm92ZXJmbG93IiwgImhpZGRlbiIpLmNzcygibWF4LWhlaWdodCIsIHQuaGVpZ2h0KCkpLmFuaW1hdGUoewogICAgICAgICAgICAgICAgaGVpZ2h0OiAwLAogICAgICAgICAgICAgICAgb3BhY2l0eTogMCwKICAgICAgICAgICAgICAgIHBhZGRpbmdUb3A6IDAsCiAgICAgICAgICAgICAgICBwYWRkaW5nQm90dG9tOiAwLAogICAgICAgICAgICAgICAgbWFyZ2luVG9wOiAwLAogICAgICAgICAgICAgICAgbWFyZ2luQm90dG9tOiAwCiAgICAgICAgICAgIH0sIHRoaXMub3B0aW9ucy5kdXJhdGlvbiwgaSkgOiBpKCkKICAgICAgICB9CiAgICB9KQp9KFVJa2l0KSwKZnVuY3Rpb24obykgewogICAgInVzZSBzdHJpY3QiOwogICAgby5jb21wb25lbnQoImJ1dHRvblJhZGlvIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGFjdGl2ZUNsYXNzOiAidWstYWN0aXZlIiwKICAgICAgICAgICAgdGFyZ2V0OiAiLnVrLWJ1dHRvbiIKICAgICAgICB9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBvLiRodG1sLm9uKCJjbGljay5idXR0b25yYWRpby51aWtpdCIsICJbZGF0YS11ay1idXR0b24tcmFkaW9dIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBvLiQodGhpcyk7CiAgICAgICAgICAgICAgICBpZiAoIWkuZGF0YSgiYnV0dG9uUmFkaW8iKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gby5idXR0b25SYWRpbyhpLCBvLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLWJ1dHRvbi1yYWRpbyIpKSksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBvLiQodC50YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIG4uaXMoZS5vcHRpb25zLnRhcmdldCkgJiYgbi50cmlnZ2VyKCJjbGljayIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmZpbmQoZS5vcHRpb25zLnRhcmdldCkuYXR0cigiYXJpYS1jaGVja2VkIiwgImZhbHNlIikuZmlsdGVyKCIuIiArIGUub3B0aW9ucy5hY3RpdmVDbGFzcykuYXR0cigiYXJpYS1jaGVja2VkIiwgInRydWUiKSwgdGhpcy5vbigiY2xpY2siLCB0aGlzLm9wdGlvbnMudGFyZ2V0LCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IG8uJCh0aGlzKTsKICAgICAgICAgICAgICAgIGkuaXMoJ2FbaHJlZj0iIyJdJykgJiYgdC5wcmV2ZW50RGVmYXVsdCgpLCBlLmZpbmQoZS5vcHRpb25zLnRhcmdldCkubm90KGkpLnJlbW92ZUNsYXNzKGUub3B0aW9ucy5hY3RpdmVDbGFzcykuYmx1cigpLCBpLmFkZENsYXNzKGUub3B0aW9ucy5hY3RpdmVDbGFzcyksIGUuZmluZChlLm9wdGlvbnMudGFyZ2V0KS5ub3QoaSkuYXR0cigiYXJpYS1jaGVja2VkIiwgImZhbHNlIiksIGkuYXR0cigiYXJpYS1jaGVja2VkIiwgInRydWUiKSwgZS50cmlnZ2VyKCJjaGFuZ2UudWsuYnV0dG9uIiwgW2ldKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgZ2V0U2VsZWN0ZWQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5maW5kKCIuIiArIHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcykKICAgICAgICB9CiAgICB9KSwgby5jb21wb25lbnQoImJ1dHRvbkNoZWNrYm94IiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGFjdGl2ZUNsYXNzOiAidWstYWN0aXZlIiwKICAgICAgICAgICAgdGFyZ2V0OiAiLnVrLWJ1dHRvbiIKICAgICAgICB9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBvLiRodG1sLm9uKCJjbGljay5idXR0b25jaGVja2JveC51aWtpdCIsICJbZGF0YS11ay1idXR0b24tY2hlY2tib3hdIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBvLiQodGhpcyk7CiAgICAgICAgICAgICAgICBpZiAoIWkuZGF0YSgiYnV0dG9uQ2hlY2tib3giKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gby5idXR0b25DaGVja2JveChpLCBvLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLWJ1dHRvbi1jaGVja2JveCIpKSksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBvLiQodC50YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIG4uaXMoZS5vcHRpb25zLnRhcmdldCkgJiYgbi50cmlnZ2VyKCJjbGljayIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmZpbmQoZS5vcHRpb25zLnRhcmdldCkuYXR0cigiYXJpYS1jaGVja2VkIiwgImZhbHNlIikuZmlsdGVyKCIuIiArIGUub3B0aW9ucy5hY3RpdmVDbGFzcykuYXR0cigiYXJpYS1jaGVja2VkIiwgInRydWUiKSwgdGhpcy5vbigiY2xpY2siLCB0aGlzLm9wdGlvbnMudGFyZ2V0LCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IG8uJCh0aGlzKTsKICAgICAgICAgICAgICAgIGkuaXMoJ2FbaHJlZj0iIyJdJykgJiYgdC5wcmV2ZW50RGVmYXVsdCgpLCBpLnRvZ2dsZUNsYXNzKGUub3B0aW9ucy5hY3RpdmVDbGFzcykuYmx1cigpLCBpLmF0dHIoImFyaWEtY2hlY2tlZCIsIGkuaGFzQ2xhc3MoZS5vcHRpb25zLmFjdGl2ZUNsYXNzKSksIGUudHJpZ2dlcigiY2hhbmdlLnVrLmJ1dHRvbiIsIFtpXSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGdldFNlbGVjdGVkOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmluZCgiLiIgKyB0aGlzLm9wdGlvbnMuYWN0aXZlQ2xhc3MpCiAgICAgICAgfQogICAgfSksIG8uY29tcG9uZW50KCJidXR0b24iLCB7CiAgICAgICAgZGVmYXVsdHM6IHt9LAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBvLiRodG1sLm9uKCJjbGljay5idXR0b24udWlraXQiLCAiW2RhdGEtdWstYnV0dG9uXSIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBvLiQodGhpcyk7CiAgICAgICAgICAgICAgICB0LmRhdGEoImJ1dHRvbiIpIHx8IChvLmJ1dHRvbih0LCBvLlV0aWxzLm9wdGlvbnModC5hdHRyKCJkYXRhLXVrLWJ1dHRvbiIpKSksIHQudHJpZ2dlcigiY2xpY2siKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgaSA9IHRoaXM7CiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hdHRyKCJhcmlhLXByZXNzZWQiLCB0aGlzLmVsZW1lbnQuaGFzQ2xhc3MoInVrLWFjdGl2ZSIpKSwgdGhpcy5vbigiY2xpY2siLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpLmVsZW1lbnQuaXMoJ2FbaHJlZj0iIyJdJykgJiYgdC5wcmV2ZW50RGVmYXVsdCgpLCBpLnRvZ2dsZSgpLCBpLnRyaWdnZXIoImNoYW5nZS51ay5idXR0b24iLCBbaS5lbGVtZW50LmJsdXIoKS5oYXNDbGFzcygidWstYWN0aXZlIildKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgdG9nZ2xlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdGhpcy5lbGVtZW50LnRvZ2dsZUNsYXNzKCJ1ay1hY3RpdmUiKSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtcHJlc3NlZCIsIHRoaXMuZWxlbWVudC5oYXNDbGFzcygidWstYWN0aXZlIikpCiAgICAgICAgfQogICAgfSkKfShVSWtpdCksCmZ1bmN0aW9uKGgpIHsKICAgICJ1c2Ugc3RyaWN0IjsKCiAgICBmdW5jdGlvbiB1KHQsIGksIGUsIG4pIHsKICAgICAgICBpZiAodCA9IGguJCh0KSwgaSA9IGguJChpKSwgZSA9IGUgfHwgd2luZG93LmlubmVyV2lkdGgsIG4gPSBuIHx8IHQub2Zmc2V0KCksIGkubGVuZ3RoKSB7CiAgICAgICAgICAgIHZhciBvID0gaS5vdXRlcldpZHRoKCk7CiAgICAgICAgICAgIGlmICh0LmNzcygibWluLXdpZHRoIiwgbyksICJyaWdodCIgPT0gaC5sYW5nZGlyZWN0aW9uKSB7CiAgICAgICAgICAgICAgICB2YXIgcyA9IGUgLSAoaS5vZmZzZXQoKS5sZWZ0ICsgbyksCiAgICAgICAgICAgICAgICAgICAgYSA9IGUgLSAodC5vZmZzZXQoKS5sZWZ0ICsgdC5vdXRlcldpZHRoKCkpOwogICAgICAgICAgICAgICAgdC5jc3MoIm1hcmdpbi1yaWdodCIsIHMgLSBhKQogICAgICAgICAgICB9IGVsc2UgdC5jc3MoIm1hcmdpbi1sZWZ0IiwgaS5vZmZzZXQoKS5sZWZ0IC0gbi5sZWZ0KQogICAgICAgIH0KICAgIH0KICAgIHZhciBuLCBvID0gITEsCiAgICAgICAgcCA9IHsKICAgICAgICAgICAgeDogewogICAgICAgICAgICAgICAgImJvdHRvbS1sZWZ0IjogImJvdHRvbS1yaWdodCIsCiAgICAgICAgICAgICAgICAiYm90dG9tLXJpZ2h0IjogImJvdHRvbS1sZWZ0IiwKICAgICAgICAgICAgICAgICJib3R0b20tY2VudGVyIjogImJvdHRvbS1jZW50ZXIiLAogICAgICAgICAgICAgICAgInRvcC1sZWZ0IjogInRvcC1yaWdodCIsCiAgICAgICAgICAgICAgICAidG9wLXJpZ2h0IjogInRvcC1sZWZ0IiwKICAgICAgICAgICAgICAgICJ0b3AtY2VudGVyIjogInRvcC1jZW50ZXIiLAogICAgICAgICAgICAgICAgImxlZnQtdG9wIjogInJpZ2h0LXRvcCIsCiAgICAgICAgICAgICAgICAibGVmdC1ib3R0b20iOiAicmlnaHQtYm90dG9tIiwKICAgICAgICAgICAgICAgICJsZWZ0LWNlbnRlciI6ICJyaWdodC1jZW50ZXIiLAogICAgICAgICAgICAgICAgInJpZ2h0LXRvcCI6ICJsZWZ0LXRvcCIsCiAgICAgICAgICAgICAgICAicmlnaHQtYm90dG9tIjogImxlZnQtYm90dG9tIiwKICAgICAgICAgICAgICAgICJyaWdodC1jZW50ZXIiOiAibGVmdC1jZW50ZXIiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHk6IHsKICAgICAgICAgICAgICAgICJib3R0b20tbGVmdCI6ICJ0b3AtbGVmdCIsCiAgICAgICAgICAgICAgICAiYm90dG9tLXJpZ2h0IjogInRvcC1yaWdodCIsCiAgICAgICAgICAgICAgICAiYm90dG9tLWNlbnRlciI6ICJ0b3AtY2VudGVyIiwKICAgICAgICAgICAgICAgICJ0b3AtbGVmdCI6ICJib3R0b20tbGVmdCIsCiAgICAgICAgICAgICAgICAidG9wLXJpZ2h0IjogImJvdHRvbS1yaWdodCIsCiAgICAgICAgICAgICAgICAidG9wLWNlbnRlciI6ICJib3R0b20tY2VudGVyIiwKICAgICAgICAgICAgICAgICJsZWZ0LXRvcCI6ICJsZWZ0LWJvdHRvbSIsCiAgICAgICAgICAgICAgICAibGVmdC1ib3R0b20iOiAibGVmdC10b3AiLAogICAgICAgICAgICAgICAgImxlZnQtY2VudGVyIjogImxlZnQtY2VudGVyIiwKICAgICAgICAgICAgICAgICJyaWdodC10b3AiOiAicmlnaHQtYm90dG9tIiwKICAgICAgICAgICAgICAgICJyaWdodC1ib3R0b20iOiAicmlnaHQtdG9wIiwKICAgICAgICAgICAgICAgICJyaWdodC1jZW50ZXIiOiAicmlnaHQtY2VudGVyIgogICAgICAgICAgICB9LAogICAgICAgICAgICB4eTogewogICAgICAgICAgICAgICAgImJvdHRvbS1sZWZ0IjogInRvcC1yaWdodCIsCiAgICAgICAgICAgICAgICAiYm90dG9tLXJpZ2h0IjogInRvcC1sZWZ0IiwKICAgICAgICAgICAgICAgICJib3R0b20tY2VudGVyIjogInRvcC1jZW50ZXIiLAogICAgICAgICAgICAgICAgInRvcC1sZWZ0IjogImJvdHRvbS1yaWdodCIsCiAgICAgICAgICAgICAgICAidG9wLXJpZ2h0IjogImJvdHRvbS1sZWZ0IiwKICAgICAgICAgICAgICAgICJ0b3AtY2VudGVyIjogImJvdHRvbS1jZW50ZXIiLAogICAgICAgICAgICAgICAgImxlZnQtdG9wIjogInJpZ2h0LWJvdHRvbSIsCiAgICAgICAgICAgICAgICAibGVmdC1ib3R0b20iOiAicmlnaHQtdG9wIiwKICAgICAgICAgICAgICAgICJsZWZ0LWNlbnRlciI6ICJyaWdodC1jZW50ZXIiLAogICAgICAgICAgICAgICAgInJpZ2h0LXRvcCI6ICJsZWZ0LWJvdHRvbSIsCiAgICAgICAgICAgICAgICAicmlnaHQtYm90dG9tIjogImxlZnQtdG9wIiwKICAgICAgICAgICAgICAgICJyaWdodC1jZW50ZXIiOiAibGVmdC1jZW50ZXIiCiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgaC5jb21wb25lbnQoImRyb3Bkb3duIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIG1vZGU6ICJob3ZlciIsCiAgICAgICAgICAgIHBvczogImJvdHRvbS1sZWZ0IiwKICAgICAgICAgICAgb2Zmc2V0OiAwLAogICAgICAgICAgICByZW1haW50aW1lOiA4MDAsCiAgICAgICAgICAgIGp1c3RpZnk6ICExLAogICAgICAgICAgICBib3VuZGFyeTogaC4kd2luLAogICAgICAgICAgICBkZWxheTogMCwKICAgICAgICAgICAgZHJvcGRvd25TZWxlY3RvcjogIi51ay1kcm9wZG93biwudWstZHJvcGRvd24tYmxhbmsiLAogICAgICAgICAgICBob3ZlckRlbGF5SWRsZTogMjUwLAogICAgICAgICAgICBwcmV2ZW50ZmxpcDogITEKICAgICAgICB9LAogICAgICAgIHJlbWFpbklkbGU6ICExLAogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgbiA9IGguc3VwcG9ydC50b3VjaCA/ICJjbGljayIgOiAibW91c2VlbnRlciI7CiAgICAgICAgICAgIGguJGh0bWwub24obiArICIuZHJvcGRvd24udWlraXQgZm9jdXMgcG9pbnRlcmRvd24iLCAiW2RhdGEtdWstZHJvcGRvd25dIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBoLiQodGhpcyk7CiAgICAgICAgICAgICAgICBpZiAoIWkuZGF0YSgiZHJvcGRvd24iKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gaC5kcm9wZG93bihpLCBoLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLWRyb3Bkb3duIikpKTsKICAgICAgICAgICAgICAgICAgICAoImNsaWNrIiA9PSB0LnR5cGUgfHwgIm1vdXNlZW50ZXIiID09IHQudHlwZSAmJiAiaG92ZXIiID09IGUub3B0aW9ucy5tb2RlKSAmJiBlLmVsZW1lbnQudHJpZ2dlcihuKSwgZS5kcm9wZG93bi5sZW5ndGggJiYgdC5wcmV2ZW50RGVmYXVsdCgpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmRyb3Bkb3duID0gdGhpcy5maW5kKHRoaXMub3B0aW9ucy5kcm9wZG93blNlbGVjdG9yKSwgdGhpcy5vZmZzZXRQYXJlbnQgPSB0aGlzLmRyb3Bkb3duLnBhcmVudHMoKS5maWx0ZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gLTEgIT09IGguJC5pbkFycmF5KGguJCh0aGlzKS5jc3MoInBvc2l0aW9uIiksIFsicmVsYXRpdmUiLCAiZml4ZWQiLCAiYWJzb2x1dGUiXSkKICAgICAgICAgICAgfSkuc2xpY2UoMCwgMSksIHRoaXMub2Zmc2V0UGFyZW50Lmxlbmd0aCB8fCAodGhpcy5vZmZzZXRQYXJlbnQgPSB0aGlzLmVsZW1lbnQpLCB0aGlzLmNlbnRlcmVkID0gdGhpcy5kcm9wZG93bi5oYXNDbGFzcygidWstZHJvcGRvd24tY2VudGVyIiksIHRoaXMuanVzdGlmaWVkID0gISF0aGlzLm9wdGlvbnMuanVzdGlmeSAmJiBoLiQodGhpcy5vcHRpb25zLmp1c3RpZnkpLCB0aGlzLmJvdW5kYXJ5ID0gaC4kKHRoaXMub3B0aW9ucy5ib3VuZGFyeSksIHRoaXMuYm91bmRhcnkubGVuZ3RoIHx8ICh0aGlzLmJvdW5kYXJ5ID0gaC4kd2luKSwgdGhpcy5kcm9wZG93bi5oYXNDbGFzcygidWstZHJvcGRvd24tdXAiKSAmJiAodGhpcy5vcHRpb25zLnBvcyA9ICJ0b3AtbGVmdCIpLCB0aGlzLmRyb3Bkb3duLmhhc0NsYXNzKCJ1ay1kcm9wZG93bi1mbGlwIikgJiYgKHRoaXMub3B0aW9ucy5wb3MgPSB0aGlzLm9wdGlvbnMucG9zLnJlcGxhY2UoImxlZnQiLCAicmlnaHQiKSksIHRoaXMuZHJvcGRvd24uaGFzQ2xhc3MoInVrLWRyb3Bkb3duLWNlbnRlciIpICYmICh0aGlzLm9wdGlvbnMucG9zID0gdGhpcy5vcHRpb25zLnBvcy5yZXBsYWNlKC8obGVmdHxyaWdodCkvLCAiY2VudGVyIikpLCB0aGlzLmVsZW1lbnQuYXR0cigiYXJpYS1oYXNwb3B1cCIsICJ0cnVlIiksIHRoaXMuZWxlbWVudC5hdHRyKCJhcmlhLWV4cGFuZGVkIiwgdGhpcy5lbGVtZW50Lmhhc0NsYXNzKCJ1ay1vcGVuIikpLCB0aGlzLmRyb3Bkb3duLmF0dHIoImFyaWEtaGlkZGVuIiwgInRydWUiKSwgImNsaWNrIiA9PSB0aGlzLm9wdGlvbnMubW9kZSB8fCBoLnN1cHBvcnQudG91Y2ggPyB0aGlzLm9uKCJjbGljay51ay5kcm9wZG93biIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gaC4kKHQudGFyZ2V0KTsKICAgICAgICAgICAgICAgIGkucGFyZW50cyhlLm9wdGlvbnMuZHJvcGRvd25TZWxlY3RvcikubGVuZ3RoIHx8ICgoaS5pcygiYVtocmVmPScjJ10iKSB8fCBpLnBhcmVudCgpLmlzKCJhW2hyZWY9JyMnXSIpIHx8IGUuZHJvcGRvd24ubGVuZ3RoICYmICFlLmRyb3Bkb3duLmlzKCI6dmlzaWJsZSIpKSAmJiB0LnByZXZlbnREZWZhdWx0KCksIGkuYmx1cigpKSwgZS5lbGVtZW50Lmhhc0NsYXNzKCJ1ay1vcGVuIikgPyAoIWUuZHJvcGRvd24uZmluZCh0LnRhcmdldCkubGVuZ3RoIHx8IGkuaXMoIi51ay1kcm9wZG93bi1jbG9zZSIpIHx8IGkucGFyZW50cygiLnVrLWRyb3Bkb3duLWNsb3NlIikubGVuZ3RoKSAmJiBlLmhpZGUoKSA6IGUuc2hvdygpCiAgICAgICAgICAgIH0pIDogdGhpcy5vbigibW91c2VlbnRlciIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZS50cmlnZ2VyKCJwb2ludGVyZW50ZXIudWsuZHJvcGRvd24iLCBbZV0pLCBlLnJlbWFpbklkbGUgJiYgY2xlYXJUaW1lb3V0KGUucmVtYWluSWRsZSksIG4gJiYgY2xlYXJUaW1lb3V0KG4pLCBvICYmIG8gPT0gZSB8fCAobiA9IG8gJiYgbyAhPSBlID8gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBuID0gc2V0VGltZW91dChlLnNob3cuYmluZChlKSwgZS5vcHRpb25zLmRlbGF5KQogICAgICAgICAgICAgICAgfSwgZS5vcHRpb25zLmhvdmVyRGVsYXlJZGxlKSA6IHNldFRpbWVvdXQoZS5zaG93LmJpbmQoZSksIGUub3B0aW9ucy5kZWxheSkpCiAgICAgICAgICAgIH0pLm9uKCJtb3VzZWxlYXZlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBuICYmIGNsZWFyVGltZW91dChuKSwgZS5yZW1haW5JZGxlID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBvICYmIG8gPT0gZSAmJiBlLmhpZGUoKQogICAgICAgICAgICAgICAgfSwgZS5vcHRpb25zLnJlbWFpbnRpbWUpLCBlLnRyaWdnZXIoInBvaW50ZXJsZWF2ZS51ay5kcm9wZG93biIsIFtlXSkKICAgICAgICAgICAgfSkub24oImNsaWNrIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBoLiQodC50YXJnZXQpOwogICAgICAgICAgICAgICAgcmV0dXJuIGUucmVtYWluSWRsZSAmJiBjbGVhclRpbWVvdXQoZS5yZW1haW5JZGxlKSwgbyAmJiBvID09IGUgPyB2b2lkKCghZS5kcm9wZG93bi5maW5kKHQudGFyZ2V0KS5sZW5ndGggfHwgaS5pcygiLnVrLWRyb3Bkb3duLWNsb3NlIikgfHwgaS5wYXJlbnRzKCIudWstZHJvcGRvd24tY2xvc2UiKS5sZW5ndGgpICYmIGUuaGlkZSgpKSA6ICgoaS5pcygiYVtocmVmPScjJ10iKSB8fCBpLnBhcmVudCgpLmlzKCJhW2hyZWY9JyMnXSIpKSAmJiB0LnByZXZlbnREZWZhdWx0KCksIHZvaWQgZS5zaG93KCkpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBzaG93OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaC4kaHRtbC5vZmYoImNsaWNrLm91dGVyLmRyb3Bkb3duIiksIG8gJiYgbyAhPSB0aGlzICYmIG8uaGlkZSghMCksIG4gJiYgY2xlYXJUaW1lb3V0KG4pLCB0aGlzLnRyaWdnZXIoImJlZm9yZXNob3cudWsuZHJvcGRvd24iLCBbdGhpc10pLCB0aGlzLmNoZWNrRGltZW5zaW9ucygpLCB0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVrLW9wZW4iKSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtZXhwYW5kZWQiLCAidHJ1ZSIpLCB0aGlzLmRyb3Bkb3duLmF0dHIoImFyaWEtaGlkZGVuIiwgImZhbHNlIiksIHRoaXMudHJpZ2dlcigic2hvdy51ay5kcm9wZG93biIsIFt0aGlzXSksIGguVXRpbHMuY2hlY2tEaXNwbGF5KHRoaXMuZHJvcGRvd24sICEwKSwgaC5VdGlscy5mb2N1cyh0aGlzLmRyb3Bkb3duKSwgKG8gPSB0aGlzKS5yZWdpc3Rlck91dGVyQ2xpY2soKQogICAgICAgIH0sCiAgICAgICAgaGlkZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICB0aGlzLnRyaWdnZXIoImJlZm9yZWhpZGUudWsuZHJvcGRvd24iLCBbdGhpcywgdF0pLCB0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3MoInVrLW9wZW4iKSwgdGhpcy5yZW1haW5JZGxlICYmIGNsZWFyVGltZW91dCh0aGlzLnJlbWFpbklkbGUpLCB0aGlzLnJlbWFpbklkbGUgPSAhMSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtZXhwYW5kZWQiLCAiZmFsc2UiKSwgdGhpcy5kcm9wZG93bi5hdHRyKCJhcmlhLWhpZGRlbiIsICJ0cnVlIiksIHRoaXMudHJpZ2dlcigiaGlkZS51ay5kcm9wZG93biIsIFt0aGlzLCB0XSksIG8gPT0gdGhpcyAmJiAobyA9ICExKQogICAgICAgIH0sCiAgICAgICAgcmVnaXN0ZXJPdXRlckNsaWNrOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGkgPSB0aGlzOwogICAgICAgICAgICBoLiRodG1sLm9mZigiY2xpY2sub3V0ZXIuZHJvcGRvd24iKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGguJGh0bWwub24oImNsaWNrLm91dGVyLmRyb3Bkb3duIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIG4gJiYgY2xlYXJUaW1lb3V0KG4pLCBoLiQodC50YXJnZXQpLCBvICE9IGkgfHwgaS5lbGVtZW50LmZpbmQodC50YXJnZXQpLmxlbmd0aCB8fCAoaS5oaWRlKCEwKSwgaC4kaHRtbC5vZmYoImNsaWNrLm91dGVyLmRyb3Bkb3duIikpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCAxMCkKICAgICAgICB9LAogICAgICAgIGNoZWNrRGltZW5zaW9uczogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmRyb3Bkb3duLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdGhpcy5kcm9wZG93bi5yZW1vdmVDbGFzcygidWstZHJvcGRvd24tdG9wIHVrLWRyb3Bkb3duLWJvdHRvbSB1ay1kcm9wZG93bi1sZWZ0IHVrLWRyb3Bkb3duLXJpZ2h0IHVrLWRyb3Bkb3duLXN0YWNrIHVrLWRyb3Bkb3duLWF1dG9mbGlwIikuY3NzKHsKICAgICAgICAgICAgICAgICAgICB0b3BMZWZ0OiAiIiwKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiIiwKICAgICAgICAgICAgICAgICAgICBtYXJnaW5MZWZ0OiAiIiwKICAgICAgICAgICAgICAgICAgICBtYXJnaW5SaWdodDogIiIKICAgICAgICAgICAgICAgIH0pLCB0aGlzLmp1c3RpZmllZCAmJiB0aGlzLmp1c3RpZmllZC5sZW5ndGggJiYgdGhpcy5kcm9wZG93bi5jc3MoIm1pbi13aWR0aCIsICIiKTsKICAgICAgICAgICAgICAgIHZhciB0LCBpID0gaC4kLmV4dGVuZCh7fSwgdGhpcy5vZmZzZXRQYXJlbnQub2Zmc2V0KCksIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHRoaXMub2Zmc2V0UGFyZW50WzBdLm9mZnNldFdpZHRoLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHRoaXMub2Zmc2V0UGFyZW50WzBdLm9mZnNldEhlaWdodAogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgIGUgPSB0aGlzLm9wdGlvbnMub2Zmc2V0LAogICAgICAgICAgICAgICAgICAgIG4gPSB0aGlzLmRyb3Bkb3duLAogICAgICAgICAgICAgICAgICAgIG8gPSAobi5zaG93KCkub2Zmc2V0KCksIG4ub3V0ZXJXaWR0aCgpKSwKICAgICAgICAgICAgICAgICAgICBzID0gbi5vdXRlckhlaWdodCgpLAogICAgICAgICAgICAgICAgICAgIGEgPSB0aGlzLmJvdW5kYXJ5LndpZHRoKCksCiAgICAgICAgICAgICAgICAgICAgciA9ICh0aGlzLmJvdW5kYXJ5WzBdICE9PSB3aW5kb3cgJiYgdGhpcy5ib3VuZGFyeS5vZmZzZXQoKSAmJiB0aGlzLmJvdW5kYXJ5Lm9mZnNldCgpLCB0aGlzLm9wdGlvbnMucG9zKSwKICAgICAgICAgICAgICAgICAgICBsID0gewogICAgICAgICAgICAgICAgICAgICAgICAiYm90dG9tLWxlZnQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgKyBpLmhlaWdodCArIGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJib3R0b20tcmlnaHQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgKyBpLmhlaWdodCArIGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwICsgaS53aWR0aCAtIG8KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgImJvdHRvbS1jZW50ZXIiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgKyBpLmhlaWdodCArIGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwICsgaS53aWR0aCAvIDIgLSBvIC8gMgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAidG9wLWxlZnQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgLSBzIC0gZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInRvcC1yaWdodCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCAtIHMgLSBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCArIGkud2lkdGggLSBvCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b3AtY2VudGVyIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwIC0gcyAtIGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwICsgaS53aWR0aCAvIDIgLSBvIC8gMgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAibGVmdC10b3AiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwIC0gbyAtIGUKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgImxlZnQtYm90dG9tIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwICsgaS5oZWlnaHQgLSBzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIG8gLSBlCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJsZWZ0LWNlbnRlciI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCArIGkuaGVpZ2h0IC8gMiAtIHMgLyAyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIG8gLSBlCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJyaWdodC10b3AiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwICsgaS53aWR0aCArIGUKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInJpZ2h0LWJvdHRvbSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCArIGkuaGVpZ2h0IC0gcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAgKyBpLndpZHRoICsgZQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicmlnaHQtY2VudGVyIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwICsgaS5oZWlnaHQgLyAyIC0gcyAvIDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwICsgaS53aWR0aCArIGUKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgYyA9IHt9OwogICAgICAgICAgICAgICAgaWYgKHQgPSByLnNwbGl0KCItIiksIGMgPSBsW3JdID8gbFtyXSA6IGxbImJvdHRvbS1sZWZ0Il0sIHRoaXMuanVzdGlmaWVkICYmIHRoaXMuanVzdGlmaWVkLmxlbmd0aCkgdShuLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMAogICAgICAgICAgICAgICAgfSksIHRoaXMuanVzdGlmaWVkLCBhKTsKICAgICAgICAgICAgICAgIGVsc2UgaWYgKCEwICE9PSB0aGlzLm9wdGlvbnMucHJldmVudGZsaXApIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZDsKICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKHRoaXMuY2hlY2tCb3VuZGFyeShpLmxlZnQgKyBjLmxlZnQsIGkudG9wICsgYy50b3AsIG8sIHMsIGEpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIngiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIngiICE9PSB0aGlzLm9wdGlvbnMucHJldmVudGZsaXAgJiYgKGQgPSBwLnhbcl0gfHwgInJpZ2h0LXRvcCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgInkiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgInkiICE9PSB0aGlzLm9wdGlvbnMucHJldmVudGZsaXAgJiYgKGQgPSBwLnlbcl0gfHwgInRvcC1sZWZ0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAieHkiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zLnByZXZlbnRmbGlwIHx8IChkID0gcC54eVtyXSB8fCAicmlnaHQtYm90dG9tIikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZCAmJiAodCA9IGQuc3BsaXQoIi0iKSwgYyA9IGxbZF0gPyBsW2RdIDogbFsiYm90dG9tLWxlZnQiXSwgbi5hZGRDbGFzcygidWstZHJvcGRvd24tYXV0b2ZsaXAiKSwgdGhpcy5jaGVja0JvdW5kYXJ5KGkubGVmdCArIGMubGVmdCwgaS50b3AgKyBjLnRvcCwgbywgcywgYSkgJiYgKHQgPSByLnNwbGl0KCItIiksIGMgPSBsW3JdID8gbFtyXSA6IGxbImJvdHRvbS1sZWZ0Il0pKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYSA8IG8gJiYgKG4uYWRkQ2xhc3MoInVrLWRyb3Bkb3duLXN0YWNrIiksIHRoaXMudHJpZ2dlcigic3RhY2sudWsuZHJvcGRvd24iLCBbdGhpc10pKSwgbi5jc3MoYykuY3NzKCJkaXNwbGF5IiwgIiIpLmFkZENsYXNzKCJ1ay1kcm9wZG93bi0iICsgdFswXSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgY2hlY2tCb3VuZGFyeTogZnVuY3Rpb24odCwgaSwgZSwgbiwgbykgewogICAgICAgICAgICB2YXIgcyA9ICIiOwogICAgICAgICAgICByZXR1cm4gKHQgPCAwIHx8IHQgLSBoLiR3aW4uc2Nyb2xsTGVmdCgpICsgZSA+IG8pICYmIChzICs9ICJ4IiksIChpIC0gaC4kd2luLnNjcm9sbFRvcCgpIDwgMCB8fCBpIC0gaC4kd2luLnNjcm9sbFRvcCgpICsgbiA+IHdpbmRvdy5pbm5lckhlaWdodCkgJiYgKHMgKz0gInkiKSwgcwogICAgICAgIH0KICAgIH0pLCBoLmNvbXBvbmVudCgiZHJvcGRvd25PdmVybGF5IiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGp1c3RpZnk6ICExLAogICAgICAgICAgICBjbHM6ICIiLAogICAgICAgICAgICBkdXJhdGlvbjogMjAwCiAgICAgICAgfSwKICAgICAgICBib290OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaC5yZWFkeShmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBoLiQoIltkYXRhLXVrLWRyb3Bkb3duLW92ZXJsYXldIiwgdCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGguJCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoImRyb3Bkb3duT3ZlcmxheSIpIHx8IGguZHJvcGRvd25PdmVybGF5KHQsIGguVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstZHJvcGRvd24tb3ZlcmxheSIpKSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmp1c3RpZmllZCA9ICEhdGhpcy5vcHRpb25zLmp1c3RpZnkgJiYgaC4kKHRoaXMub3B0aW9ucy5qdXN0aWZ5KSwgdGhpcy5vdmVybGF5ID0gdGhpcy5lbGVtZW50LmZpbmQoInVrLWRyb3Bkb3duLW92ZXJsYXkiKSwgdGhpcy5vdmVybGF5Lmxlbmd0aCB8fCAodGhpcy5vdmVybGF5ID0gaC4kKCc8ZGl2IGNsYXNzPSJ1ay1kcm9wZG93bi1vdmVybGF5Ij48L2Rpdj4nKS5hcHBlbmRUbyh0aGlzLmVsZW1lbnQpKSwgdGhpcy5vdmVybGF5LmFkZENsYXNzKHRoaXMub3B0aW9ucy5jbHMpLCB0aGlzLm9uKHsKICAgICAgICAgICAgICAgICJiZWZvcmVzaG93LnVrLmRyb3Bkb3duIjogZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICAgICAgICAgIGUuZHJvcGRvd24gPSBpLCBlLmp1c3RpZmllZCAmJiBlLmp1c3RpZmllZC5sZW5ndGggJiYgdShlLm92ZXJsYXkuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogImJsb2NrIiwKICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luTGVmdDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpblJpZ2h0OiAiIgogICAgICAgICAgICAgICAgICAgIH0pLCBlLmp1c3RpZmllZCwgZS5qdXN0aWZpZWQub3V0ZXJXaWR0aCgpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJzaG93LnVrLmRyb3Bkb3duIjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBlLmRyb3Bkb3duLmRyb3Bkb3duLm91dGVySGVpZ2h0KCEwKTsKICAgICAgICAgICAgICAgICAgICBlLmRyb3Bkb3duLmVsZW1lbnQucmVtb3ZlQ2xhc3MoInVrLW9wZW4iKSwgZS5vdmVybGF5LnN0b3AoKS5jc3MoImRpc3BsYXkiLCAiYmxvY2siKS5hbmltYXRlKHsKICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB0CiAgICAgICAgICAgICAgICAgICAgfSwgZS5vcHRpb25zLmR1cmF0aW9uLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZS5kcm9wZG93bi5kcm9wZG93bi5jc3MoInZpc2liaWxpdHkiLCAiIiksIGUuZHJvcGRvd24uZWxlbWVudC5hZGRDbGFzcygidWstb3BlbiIpLCBoLlV0aWxzLmNoZWNrRGlzcGxheShlLmRyb3Bkb3duLmRyb3Bkb3duLCAhMCkKICAgICAgICAgICAgICAgICAgICB9KSwgZS5wb2ludGVybGVhdmUgPSAhMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJoaWRlLnVrLmRyb3Bkb3duIjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZS5vdmVybGF5LnN0b3AoKS5hbmltYXRlKHsKICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwCiAgICAgICAgICAgICAgICAgICAgfSwgZS5vcHRpb25zLmR1cmF0aW9uKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb2ludGVyZW50ZXIudWsuZHJvcGRvd24iOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoZS5yZW1haW5JZGxlKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb2ludGVybGVhdmUudWsuZHJvcGRvd24iOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBlLnBvaW50ZXJsZWF2ZSA9ICEwCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCB0aGlzLm92ZXJsYXkub24oewogICAgICAgICAgICAgICAgbW91c2VlbnRlcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZS5yZW1haW5JZGxlICYmIChjbGVhclRpbWVvdXQoZS5kcm9wZG93bi5yZW1haW5JZGxlKSwgY2xlYXJUaW1lb3V0KGUucmVtYWluSWRsZSkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbW91c2VsZWF2ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZS5wb2ludGVybGVhdmUgJiYgbyAmJiAoZS5yZW1haW5JZGxlID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbyAmJiBvLmhpZGUoKQogICAgICAgICAgICAgICAgICAgIH0sIG8ub3B0aW9ucy5yZW1haW50aW1lKSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KQp9KFVJa2l0KSwKZnVuY3Rpb24oZSkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIG4gPSBbXTsKICAgIGUuY29tcG9uZW50KCJncmlkTWF0Y2hIZWlnaHQiLCB7CiAgICAgICAgZGVmYXVsdHM6IHsKICAgICAgICAgICAgdGFyZ2V0OiAhMSwKICAgICAgICAgICAgcm93OiAhMCwKICAgICAgICAgICAgaWdub3Jlc3RhY2tlZDogITEsCiAgICAgICAgICAgIG9ic2VydmU6ICExCiAgICAgICAgfSwKICAgICAgICBib290OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZS5yZWFkeShmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBlLiQoIltkYXRhLXVrLWdyaWQtbWF0Y2hdIiwgdCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUuJCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoImdyaWRNYXRjaEhlaWdodCIpIHx8IGUuZ3JpZE1hdGNoSGVpZ2h0KHQsIGUuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstZ3JpZC1tYXRjaCIpKSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBpbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIHQsIGkgPSB0aGlzOwogICAgICAgICAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLmVsZW1lbnQuY2hpbGRyZW4oKSwgdGhpcy5lbGVtZW50cyA9IHRoaXMub3B0aW9ucy50YXJnZXQgPyB0aGlzLmZpbmQodGhpcy5vcHRpb25zLnRhcmdldCkgOiB0aGlzLmNvbHVtbnMsIHRoaXMuY29sdW1ucy5sZW5ndGggJiYgKGUuJHdpbi5vbigibG9hZCByZXNpemUgb3JpZW50YXRpb25jaGFuZ2UiLCAodCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIGkubWF0Y2goKQogICAgICAgICAgICB9LCBlLiQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0KCkKICAgICAgICAgICAgfSksIGUuVXRpbHMuZGVib3VuY2UodCwgNTApKSksIHRoaXMub3B0aW9ucy5vYnNlcnZlICYmIGUuZG9tT2JzZXJ2ZSh0aGlzLmVsZW1lbnQsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIGkubWF0Y2goKQogICAgICAgICAgICB9KSwgdGhpcy5vbigiZGlzcGxheS51ay5jaGVjayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIHRoaXMubWF0Y2goKQogICAgICAgICAgICB9LmJpbmQodGhpcykpLCBuLnB1c2godGhpcykpCiAgICAgICAgfSwKICAgICAgICBtYXRjaDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciB0ID0gdGhpcy5jb2x1bW5zLmZpbHRlcigiOnZpc2libGU6Zmlyc3QiKTsKICAgICAgICAgICAgaWYgKHQubGVuZ3RoKSByZXR1cm4gMTAwIDw9IE1hdGguY2VpbCgxMDAgKiBwYXJzZUZsb2F0KHQuY3NzKCJ3aWR0aCIpKSAvIHBhcnNlRmxvYXQodC5wYXJlbnQoKS5jc3MoIndpZHRoIikpKSAmJiAhdGhpcy5vcHRpb25zLmlnbm9yZXN0YWNrZWQgPyB0aGlzLnJldmVydCgpIDogZS5VdGlscy5tYXRjaEhlaWdodHModGhpcy5lbGVtZW50cywgdGhpcy5vcHRpb25zKSwgdGhpcwogICAgICAgIH0sCiAgICAgICAgcmV2ZXJ0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudHMuY3NzKCJtaW4taGVpZ2h0IiwgIiIpLCB0aGlzCiAgICAgICAgfQogICAgfSksIGUuY29tcG9uZW50KCJncmlkTWFyZ2luIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGNsczogInVrLWdyaWQtbWFyZ2luIiwKICAgICAgICAgICAgcm93Zmlyc3Q6ICJ1ay1yb3ctZmlyc3QiCiAgICAgICAgfSwKICAgICAgICBib290OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZS5yZWFkeShmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBlLiQoIltkYXRhLXVrLWdyaWQtbWFyZ2luXSIsIHQpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBlLiQodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJncmlkTWFyZ2luIikgfHwgZS5ncmlkTWFyZ2luKHQsIGUuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstZ3JpZC1tYXJnaW4iKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGUuc3RhY2tNYXJnaW4odGhpcy5lbGVtZW50LCB0aGlzLm9wdGlvbnMpCiAgICAgICAgfQogICAgfSkKfShVSWtpdCksCmZ1bmN0aW9uKGEpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBvLCBpID0gITEsCiAgICAgICAgZSA9IDAsCiAgICAgICAgbiA9IGEuJGh0bWw7CiAgICBhLiR3aW4ub24oInJlc2l6ZSBvcmllbnRhdGlvbmNoYW5nZSIsIGEuVXRpbHMuZGVib3VuY2UoZnVuY3Rpb24oKSB7CiAgICAgICAgYS4kKCIudWstbW9kYWwudWstb3BlbiIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBhLiQodGhpcykuZGF0YSgibW9kYWwiKSAmJiBhLiQodGhpcykuZGF0YSgibW9kYWwiKS5yZXNpemUoKQogICAgICAgIH0pCiAgICB9LCAxNTApKSwgYS5jb21wb25lbnQoIm1vZGFsIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGtleWJvYXJkOiAhMCwKICAgICAgICAgICAgYmdjbG9zZTogITAsCiAgICAgICAgICAgIG1pblNjcm9sbEhlaWdodDogMTUwLAogICAgICAgICAgICBjZW50ZXI6ICExLAogICAgICAgICAgICBtb2RhbDogITAKICAgICAgICB9LAogICAgICAgIHNjcm9sbGFibGU6ICExLAogICAgICAgIHRyYW5zaXRpb246ICExLAogICAgICAgIGhhc1RyYW5zaXRpb25lZDogITAsCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChvIHx8IChvID0gYS4kKCJib2R5IikpLCB0aGlzLmVsZW1lbnQubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHRoaXM7CiAgICAgICAgICAgICAgICB0aGlzLnBhZGRpbmdkaXIgPSAicGFkZGluZy0iICsgKCJsZWZ0IiA9PSBhLmxhbmdkaXJlY3Rpb24gPyAicmlnaHQiIDogImxlZnQiKSwgdGhpcy5kaWFsb2cgPSB0aGlzLmZpbmQoIi51ay1tb2RhbC1kaWFsb2ciKSwgdGhpcy5hY3RpdmUgPSAhMSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtaGlkZGVuIiwgdGhpcy5lbGVtZW50Lmhhc0NsYXNzKCJ1ay1vcGVuIikpLCB0aGlzLm9uKCJjbGljayIsICIudWstbW9kYWwtY2xvc2UiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpLCBpLmhpZGUoKQogICAgICAgICAgICAgICAgfSkub24oImNsaWNrIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIGEuJCh0LnRhcmdldClbMF0gPT0gaS5lbGVtZW50WzBdICYmIGkub3B0aW9ucy5iZ2Nsb3NlICYmIGkuaGlkZSgpCiAgICAgICAgICAgICAgICB9KSwgYS5kb21PYnNlcnZlKHRoaXMuZWxlbWVudCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaS5yZXNpemUoKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgdG9nZ2xlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXNbdGhpcy5pc0FjdGl2ZSgpID8gImhpZGUiIDogInNob3ciXSgpCiAgICAgICAgfSwKICAgICAgICBzaG93OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKHRoaXMuZWxlbWVudC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpczsKICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSgpKSByZXR1cm4gdGhpcy5vcHRpb25zLm1vZGFsICYmIGkgJiYgaS5oaWRlKCEwKSwgdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1ay1vcGVuIikuc2hvdygpLCB0aGlzLnJlc2l6ZSghMCksIHRoaXMub3B0aW9ucy5tb2RhbCAmJiAoaSA9IHRoaXMpLCB0aGlzLmFjdGl2ZSA9ICEwLCBlKyssIGEuc3VwcG9ydC50cmFuc2l0aW9uID8gKHRoaXMuaGFzVHJhbnNpdGlvbmVkID0gITEsIHRoaXMuZWxlbWVudC5vbmUoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB0Lmhhc1RyYW5zaXRpb25lZCA9ICEwLCBhLlV0aWxzLmZvY3VzKHQuZGlhbG9nLCAiYVtocmVmXSIpCiAgICAgICAgICAgICAgICB9KS5hZGRDbGFzcygidWstb3BlbiIpKSA6ICh0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVrLW9wZW4iKSwgYS5VdGlscy5mb2N1cyh0aGlzLmRpYWxvZywgImFbaHJlZl0iKSksIG4uYWRkQ2xhc3MoInVrLW1vZGFsLXBhZ2UiKS5oZWlnaHQoKSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtaGlkZGVuIiwgImZhbHNlIiksIHRoaXMuZWxlbWVudC50cmlnZ2VyKCJzaG93LnVrLm1vZGFsIiksIGEuVXRpbHMuY2hlY2tEaXNwbGF5KHRoaXMuZGlhbG9nLCAhMCksIHRoaXMKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgaGlkZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICBpZiAoIXQgJiYgYS5zdXBwb3J0LnRyYW5zaXRpb24gJiYgdGhpcy5oYXNUcmFuc2l0aW9uZWQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMub25lKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaS5faGlkZSgpCiAgICAgICAgICAgICAgICB9KS5yZW1vdmVDbGFzcygidWstb3BlbiIpCiAgICAgICAgICAgIH0gZWxzZSB0aGlzLl9oaWRlKCk7CiAgICAgICAgICAgIHJldHVybiB0aGlzCiAgICAgICAgfSwKICAgICAgICByZXNpemU6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgaWYgKHRoaXMuaXNBY3RpdmUoKSB8fCB0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IG8ud2lkdGgoKTsKICAgICAgICAgICAgICAgIGlmICh0aGlzLnNjcm9sbGJhcndpZHRoID0gd2luZG93LmlubmVyV2lkdGggLSBpLCBvLmNzcyh0aGlzLnBhZGRpbmdkaXIsIHRoaXMuc2Nyb2xsYmFyd2lkdGgpLCB0aGlzLmVsZW1lbnQuY3NzKCJvdmVyZmxvdy15IiwgdGhpcy5zY3JvbGxiYXJ3aWR0aCA/ICJzY3JvbGwiIDogImF1dG8iKSwgIXRoaXMudXBkYXRlU2Nyb2xsYWJsZSgpICYmIHRoaXMub3B0aW9ucy5jZW50ZXIpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMuZGlhbG9nLm91dGVySGVpZ2h0KCksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBwYXJzZUludCh0aGlzLmRpYWxvZy5jc3MoIm1hcmdpbi10b3AiKSwgMTApICsgcGFyc2VJbnQodGhpcy5kaWFsb2cuY3NzKCJtYXJnaW4tYm90dG9tIiksIDEwKTsKICAgICAgICAgICAgICAgICAgICBlICsgbiA8IHdpbmRvdy5pbm5lckhlaWdodCA/IHRoaXMuZGlhbG9nLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogd2luZG93LmlubmVySGVpZ2h0IC8gMiAtIGUgLyAyIC0gbgogICAgICAgICAgICAgICAgICAgIH0pIDogdGhpcy5kaWFsb2cuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAiIgogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHVwZGF0ZVNjcm9sbGFibGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgdCA9IHRoaXMuZGlhbG9nLmZpbmQoIi51ay1vdmVyZmxvdy1jb250YWluZXI6dmlzaWJsZTpmaXJzdCIpOwogICAgICAgICAgICBpZiAodC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHQuY3NzKCJoZWlnaHQiLCAwKTsKICAgICAgICAgICAgICAgIHZhciBpID0gTWF0aC5hYnMocGFyc2VJbnQodGhpcy5kaWFsb2cuY3NzKCJtYXJnaW4tdG9wIiksIDEwKSksCiAgICAgICAgICAgICAgICAgICAgZSA9IHRoaXMuZGlhbG9nLm91dGVySGVpZ2h0KCksCiAgICAgICAgICAgICAgICAgICAgbiA9IHdpbmRvdy5pbm5lckhlaWdodCAtIDIgKiAoaSA8IDIwID8gMjAgOiBpKSAtIGU7CiAgICAgICAgICAgICAgICByZXR1cm4gdC5jc3MoewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogbiA8IHRoaXMub3B0aW9ucy5taW5TY3JvbGxIZWlnaHQgPyAiIiA6IG4sCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAiIgogICAgICAgICAgICAgICAgfSksICEwCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgfSwKICAgICAgICBfaGlkZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gITEsIDAgPCBlID8gZS0tIDogZSA9IDAsIHRoaXMuZWxlbWVudC5oaWRlKCkucmVtb3ZlQ2xhc3MoInVrLW9wZW4iKSwgdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtaGlkZGVuIiwgInRydWUiKSwgZSB8fCAobi5yZW1vdmVDbGFzcygidWstbW9kYWwtcGFnZSIpLCBvLmNzcyh0aGlzLnBhZGRpbmdkaXIsICIiKSksIGkgPT09IHRoaXMgJiYgKGkgPSAhMSksIHRoaXMudHJpZ2dlcigiaGlkZS51ay5tb2RhbCIpCiAgICAgICAgfSwKICAgICAgICBpc0FjdGl2ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnQuaGFzQ2xhc3MoInVrLW9wZW4iKQogICAgICAgIH0KICAgIH0pLCBhLmNvbXBvbmVudCgibW9kYWxUcmlnZ2VyIiwgewogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhLiRodG1sLm9uKCJjbGljay5tb2RhbC51aWtpdCIsICJbZGF0YS11ay1tb2RhbF0iLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IGEuJCh0aGlzKTsKICAgICAgICAgICAgICAgIChpLmlzKCJhIikgJiYgdC5wcmV2ZW50RGVmYXVsdCgpLCBpLmRhdGEoIm1vZGFsVHJpZ2dlciIpKSB8fCBhLm1vZGFsVHJpZ2dlcihpLCBhLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLW1vZGFsIikpKS5zaG93KCkKICAgICAgICAgICAgfSksIGEuJGh0bWwub24oImtleWRvd24ubW9kYWwudWlraXQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpICYmIDI3ID09PSB0LmtleUNvZGUgJiYgaS5vcHRpb25zLmtleWJvYXJkICYmICh0LnByZXZlbnREZWZhdWx0KCksIGkuaGlkZSgpKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBpID0gdGhpczsKICAgICAgICAgICAgdGhpcy5vcHRpb25zID0gYS4kLmV4dGVuZCh7CiAgICAgICAgICAgICAgICB0YXJnZXQ6ICEhaS5lbGVtZW50LmlzKCJhIikgJiYgaS5lbGVtZW50LmF0dHIoImhyZWYiKQogICAgICAgICAgICB9LCB0aGlzLm9wdGlvbnMpLCB0aGlzLm1vZGFsID0gYS5tb2RhbCh0aGlzLm9wdGlvbnMudGFyZ2V0LCB0aGlzLm9wdGlvbnMpLCB0aGlzLm9uKCJjbGljayIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQucHJldmVudERlZmF1bHQoKSwgaS5zaG93KCkKICAgICAgICAgICAgfSksIHRoaXMucHJveHkodGhpcy5tb2RhbCwgInNob3cgaGlkZSBpc0FjdGl2ZSIpCiAgICAgICAgfQogICAgfSksIGEubW9kYWwuZGlhbG9nID0gZnVuY3Rpb24odCwgaSkgewogICAgICAgIHZhciBlLCBuLCBvID0gYS5tb2RhbChhLiQoYS5tb2RhbC5kaWFsb2cudGVtcGxhdGUpLmFwcGVuZFRvKCJib2R5IiksIGkpOwogICAgICAgIHJldHVybiBvLm9uKCJoaWRlLnVrLm1vZGFsIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIG8ucGVyc2lzdCAmJiAoby5wZXJzaXN0LmFwcGVuZFRvKG8ucGVyc2lzdC5kYXRhKCJtb2RhbFBlcnNpc3RQYXJlbnQiKSksIG8ucGVyc2lzdCA9ICExKSwgby5lbGVtZW50LnJlbW92ZSgpCiAgICAgICAgfSksIGUgPSB0LCAobiA9IG8pICYmICgib2JqZWN0IiA9PSB0eXBlb2YgZSA/IChlID0gZSBpbnN0YW5jZW9mIGpRdWVyeSA/IGUgOiBhLiQoZSkpLnBhcmVudCgpLmxlbmd0aCAmJiAobi5wZXJzaXN0ID0gZSwgbi5wZXJzaXN0LmRhdGEoIm1vZGFsUGVyc2lzdFBhcmVudCIsIGUucGFyZW50KCkpKSA6IGUgPSAic3RyaW5nIiA9PSB0eXBlb2YgZSB8fCAibnVtYmVyIiA9PSB0eXBlb2YgZSA/IGEuJCgiPGRpdj48L2Rpdj4iKS5odG1sKGUpIDogYS4kKCI8ZGl2PjwvZGl2PiIpLmh0bWwoIlVJa2l0Lm1vZGFsIEVycm9yOiBVbnN1cHBvcnRlZCBkYXRhIHR5cGU6ICIgKyB0eXBlb2YgZSksIGUuYXBwZW5kVG8obi5lbGVtZW50LmZpbmQoIi51ay1tb2RhbC1kaWFsb2ciKSkpLCBvCiAgICB9LCBhLm1vZGFsLmRpYWxvZy50ZW1wbGF0ZSA9ICc8ZGl2IGNsYXNzPSJ1ay1tb2RhbCI+PGRpdiBjbGFzcz0idWstbW9kYWwtZGlhbG9nIiBzdHlsZT0ibWluLWhlaWdodDowOyI+PC9kaXY+PC9kaXY+JywgYS5tb2RhbC5hbGVydCA9IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICBpID0gYS4kLmV4dGVuZCghMCwgewogICAgICAgICAgICBiZ2Nsb3NlOiAhMSwKICAgICAgICAgICAga2V5Ym9hcmQ6ICExLAogICAgICAgICAgICBtb2RhbDogITEsCiAgICAgICAgICAgIGxhYmVsczogYS5tb2RhbC5sYWJlbHMKICAgICAgICB9LCBpKTsKICAgICAgICB2YXIgZSA9IGEubW9kYWwuZGlhbG9nKFsnPGRpdiBjbGFzcz0idWstbWFyZ2luIHVrLW1vZGFsLWNvbnRlbnQiPicgKyBTdHJpbmcodCkgKyAiPC9kaXY+IiwgJzxkaXYgY2xhc3M9InVrLW1vZGFsLWZvb3RlciB1ay10ZXh0LXJpZ2h0Ij48YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24gdWstYnV0dG9uLXByaW1hcnkgdWstbW9kYWwtY2xvc2UiPicgKyBpLmxhYmVscy5PayArICI8L2J1dHRvbj48L2Rpdj4iXS5qb2luKCIiKSwgaSk7CiAgICAgICAgcmV0dXJuIGUub24oInNob3cudWsubW9kYWwiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGUuZWxlbWVudC5maW5kKCJidXR0b246Zmlyc3QiKS5mb2N1cygpCiAgICAgICAgICAgIH0sIDUwKQogICAgICAgIH0pLCBlLnNob3coKQogICAgfSwgYS5tb2RhbC5jb25maXJtID0gZnVuY3Rpb24odCwgaSwgZSkgewogICAgICAgIHZhciBuID0gMSA8IGFyZ3VtZW50cy5sZW5ndGggJiYgYXJndW1lbnRzW2FyZ3VtZW50cy5sZW5ndGggLSAxXSA/IGFyZ3VtZW50c1thcmd1bWVudHMubGVuZ3RoIC0gMV0gOiB7fTsKICAgICAgICBpID0gYS4kLmlzRnVuY3Rpb24oaSkgPyBpIDogZnVuY3Rpb24oKSB7fSwgZSA9IGEuJC5pc0Z1bmN0aW9uKGUpID8gZSA6IGZ1bmN0aW9uKCkge30sIG4gPSBhLiQuZXh0ZW5kKCEwLCB7CiAgICAgICAgICAgIGJnY2xvc2U6ICExLAogICAgICAgICAgICBrZXlib2FyZDogITEsCiAgICAgICAgICAgIG1vZGFsOiAhMSwKICAgICAgICAgICAgbGFiZWxzOiBhLm1vZGFsLmxhYmVscwogICAgICAgIH0sIGEuJC5pc0Z1bmN0aW9uKG4pID8ge30gOiBuKTsKICAgICAgICB2YXIgbyA9IGEubW9kYWwuZGlhbG9nKFsnPGRpdiBjbGFzcz0idWstbWFyZ2luIHVrLW1vZGFsLWNvbnRlbnQiPicgKyBTdHJpbmcodCkgKyAiPC9kaXY+IiwgJzxkaXYgY2xhc3M9InVrLW1vZGFsLWZvb3RlciB1ay10ZXh0LXJpZ2h0Ij48YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24ganMtbW9kYWwtY29uZmlybS1jYW5jZWwiPicgKyBuLmxhYmVscy5DYW5jZWwgKyAnPC9idXR0b24+IDxidXR0b24gY2xhc3M9InVrLWJ1dHRvbiB1ay1idXR0b24tcHJpbWFyeSBqcy1tb2RhbC1jb25maXJtIj4nICsgbi5sYWJlbHMuT2sgKyAiPC9idXR0b24+PC9kaXY+Il0uam9pbigiIiksIG4pOwogICAgICAgIHJldHVybiBvLmVsZW1lbnQuZmluZCgiLmpzLW1vZGFsLWNvbmZpcm0sIC5qcy1tb2RhbC1jb25maXJtLWNhbmNlbCIpLm9uKCJjbGljayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBhLiQodGhpcykuaXMoIi5qcy1tb2RhbC1jb25maXJtIikgPyBpKCkgOiBlKCksIG8uaGlkZSgpCiAgICAgICAgfSksIG8ub24oInNob3cudWsubW9kYWwiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG8uZWxlbWVudC5maW5kKCIuanMtbW9kYWwtY29uZmlybSIpLmZvY3VzKCkKICAgICAgICAgICAgfSwgNTApCiAgICAgICAgfSksIG8uc2hvdygpCiAgICB9LCBhLm1vZGFsLnByb21wdCA9IGZ1bmN0aW9uKHQsIGksIGUsIG4pIHsKICAgICAgICBlID0gYS4kLmlzRnVuY3Rpb24oZSkgPyBlIDogZnVuY3Rpb24oKSB7fSwgbiA9IGEuJC5leHRlbmQoITAsIHsKICAgICAgICAgICAgYmdjbG9zZTogITEsCiAgICAgICAgICAgIGtleWJvYXJkOiAhMSwKICAgICAgICAgICAgbW9kYWw6ICExLAogICAgICAgICAgICBsYWJlbHM6IGEubW9kYWwubGFiZWxzCiAgICAgICAgfSwgbik7CiAgICAgICAgdmFyIG8gPSBhLm1vZGFsLmRpYWxvZyhbdCA/ICc8ZGl2IGNsYXNzPSJ1ay1tb2RhbC1jb250ZW50IHVrLWZvcm0iPicgKyBTdHJpbmcodCkgKyAiPC9kaXY+IiA6ICIiLCAnPGRpdiBjbGFzcz0idWstbWFyZ2luLXNtYWxsLXRvcCB1ay1tb2RhbC1jb250ZW50IHVrLWZvcm0iPjxwPjxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0idWstd2lkdGgtMS0xIj48L3A+PC9kaXY+JywgJzxkaXYgY2xhc3M9InVrLW1vZGFsLWZvb3RlciB1ay10ZXh0LXJpZ2h0Ij48YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24gdWstbW9kYWwtY2xvc2UiPicgKyBuLmxhYmVscy5DYW5jZWwgKyAnPC9idXR0b24+IDxidXR0b24gY2xhc3M9InVrLWJ1dHRvbiB1ay1idXR0b24tcHJpbWFyeSBqcy1tb2RhbC1vayI+JyArIG4ubGFiZWxzLk9rICsgIjwvYnV0dG9uPjwvZGl2PiJdLmpvaW4oIiIpLCBuKSwKICAgICAgICAgICAgcyA9IG8uZWxlbWVudC5maW5kKCJpbnB1dFt0eXBlPSd0ZXh0J10iKS52YWwoaSB8fCAiIikub24oImtleXVwIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgMTMgPT0gdC5rZXlDb2RlICYmIG8uZWxlbWVudC5maW5kKCIuanMtbW9kYWwtb2siKS50cmlnZ2VyKCJjbGljayIpCiAgICAgICAgICAgIH0pOwogICAgICAgIHJldHVybiBvLmVsZW1lbnQuZmluZCgiLmpzLW1vZGFsLW9rIikub24oImNsaWNrIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICExICE9PSBlKHMudmFsKCkpICYmIG8uaGlkZSgpCiAgICAgICAgfSksIG8uc2hvdygpCiAgICB9LCBhLm1vZGFsLmJsb2NrVUkgPSBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgdmFyIGUgPSBhLm1vZGFsLmRpYWxvZyhbJzxkaXYgY2xhc3M9InVrLW1hcmdpbiB1ay1tb2RhbC1jb250ZW50Ij4nICsgU3RyaW5nKHQgfHwgJzxkaXYgY2xhc3M9InVrLXRleHQtY2VudGVyIj4uLi48L2Rpdj4nKSArICI8L2Rpdj4iXS5qb2luKCIiKSwgYS4kLmV4dGVuZCh7CiAgICAgICAgICAgIGJnY2xvc2U6ICExLAogICAgICAgICAgICBrZXlib2FyZDogITEsCiAgICAgICAgICAgIG1vZGFsOiAhMQogICAgICAgIH0sIGkpKTsKICAgICAgICByZXR1cm4gZS5jb250ZW50ID0gZS5lbGVtZW50LmZpbmQoIi51ay1tb2RhbC1jb250ZW50OmZpcnN0IiksIGUuc2hvdygpCiAgICB9LCBhLm1vZGFsLmxhYmVscyA9IHsKICAgICAgICBPazogIk9rIiwKICAgICAgICBDYW5jZWw6ICJDYW5jZWwiCiAgICB9Cn0oVUlraXQpLApmdW5jdGlvbihhKSB7CiAgICAidXNlIHN0cmljdCI7CiAgICBhLmNvbXBvbmVudCgibmF2IiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIHRvZ2dsZTogJz5saS51ay1wYXJlbnQgPiBhW2hyZWY9IiMiXScsCiAgICAgICAgICAgIGxpc3RzOiAiPmxpLnVrLXBhcmVudCA+IHVsIiwKICAgICAgICAgICAgbXVsdGlwbGU6ICExCiAgICAgICAgfSwKICAgICAgICBib290OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYS5yZWFkeShmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBhLiQoIltkYXRhLXVrLW5hdl0iLCB0KS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gYS4kKHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHQuZGF0YSgibmF2IikgfHwgYS5uYXYodCwgYS5VdGlscy5vcHRpb25zKHQuYXR0cigiZGF0YS11ay1uYXYiKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgdGhpcy5vbigiY2xpY2sudWsubmF2IiwgdGhpcy5vcHRpb25zLnRvZ2dsZSwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICAgICAgdmFyIGkgPSBhLiQodGhpcyk7CiAgICAgICAgICAgICAgICBlLm9wZW4oaS5wYXJlbnQoKVswXSA9PSBlLmVsZW1lbnRbMF0gPyBpIDogaS5wYXJlbnQoImxpIikpCiAgICAgICAgICAgIH0pLCB0aGlzLnVwZGF0ZSgpLCBhLmRvbU9ic2VydmUodGhpcy5lbGVtZW50LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGUuZWxlbWVudC5maW5kKGUub3B0aW9ucy5saXN0cykubm90KCJbcm9sZV0iKS5sZW5ndGggJiYgZS51cGRhdGUoKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgdXBkYXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIG4gPSB0aGlzOwogICAgICAgICAgICB0aGlzLmZpbmQodGhpcy5vcHRpb25zLmxpc3RzKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBhLiQodGhpcykuYXR0cigicm9sZSIsICJtZW51IiksCiAgICAgICAgICAgICAgICAgICAgaSA9IHQuY2xvc2VzdCgibGkiKSwKICAgICAgICAgICAgICAgICAgICBlID0gaS5oYXNDbGFzcygidWstYWN0aXZlIik7CiAgICAgICAgICAgICAgICBpLmRhdGEoImxpc3QtY29udGFpbmVyIikgfHwgKHQud3JhcCgnPGRpdiBzdHlsZT0ib3ZlcmZsb3c6aGlkZGVuO2hlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlOyI+PC9kaXY+JyksIGkuZGF0YSgibGlzdC1jb250YWluZXIiLCB0LnBhcmVudCgpW2UgPyAicmVtb3ZlQ2xhc3MiIDogImFkZENsYXNzIl0oInVrLWhpZGRlbiIpKSksIGkuYXR0cigiYXJpYS1leHBhbmRlZCIsIGkuaGFzQ2xhc3MoInVrLW9wZW4iKSksIGUgJiYgbi5vcGVuKGksICEwKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgb3BlbjogZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICB2YXIgZSA9IHRoaXMsCiAgICAgICAgICAgICAgICBuID0gdGhpcy5lbGVtZW50LAogICAgICAgICAgICAgICAgbyA9IGEuJCh0KSwKICAgICAgICAgICAgICAgIHMgPSBvLmRhdGEoImxpc3QtY29udGFpbmVyIik7CiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5tdWx0aXBsZSB8fCBuLmNoaWxkcmVuKCIudWstb3BlbiIpLm5vdCh0KS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBhLiQodGhpcyk7CiAgICAgICAgICAgICAgICB0LmRhdGEoImxpc3QtY29udGFpbmVyIikgJiYgdC5kYXRhKCJsaXN0LWNvbnRhaW5lciIpLnN0b3AoKS5hbmltYXRlKHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAKICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGEuJCh0aGlzKS5wYXJlbnQoKS5yZW1vdmVDbGFzcygidWstb3BlbiIpLmVuZCgpLmFkZENsYXNzKCJ1ay1oaWRkZW4iKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSksIG8udG9nZ2xlQ2xhc3MoInVrLW9wZW4iKSwgby5hdHRyKCJhcmlhLWV4cGFuZGVkIiwgby5oYXNDbGFzcygidWstb3BlbiIpKSwgcyAmJiAoby5oYXNDbGFzcygidWstb3BlbiIpICYmIHMucmVtb3ZlQ2xhc3MoInVrLWhpZGRlbiIpLCBpID8gKHMuc3RvcCgpLmhlaWdodChvLmhhc0NsYXNzKCJ1ay1vcGVuIikgPyAiYXV0byIgOiAwKSwgby5oYXNDbGFzcygidWstb3BlbiIpIHx8IHMuYWRkQ2xhc3MoInVrLWhpZGRlbiIpLCB0aGlzLnRyaWdnZXIoImRpc3BsYXkudWsuY2hlY2siKSkgOiBzLnN0b3AoKS5hbmltYXRlKHsKICAgICAgICAgICAgICAgIGhlaWdodDogby5oYXNDbGFzcygidWstb3BlbiIpID8gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0gYS4kKHQpLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gImF1dG8iOwogICAgICAgICAgICAgICAgICAgIGlmIChpLmlzKCI6dmlzaWJsZSIpKSBlID0gaS5vdXRlckhlaWdodCgpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpLmNzcygicG9zaXRpb24iKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGkuY3NzKCJ2aXNpYmlsaXR5IiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpLmNzcygiZGlzcGxheSIpCiAgICAgICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgICAgIGUgPSBpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJoaWRkZW4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogImJsb2NrIgogICAgICAgICAgICAgICAgICAgICAgICB9KS5vdXRlckhlaWdodCgpLCBpLmNzcyhuKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgfShzLmZpbmQoInVsOmZpcnN0IikpIDogMAogICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG8uaGFzQ2xhc3MoInVrLW9wZW4iKSA/IHMuY3NzKCJoZWlnaHQiLCAiIikgOiBzLmFkZENsYXNzKCJ1ay1oaWRkZW4iKSwgZS50cmlnZ2VyKCJkaXNwbGF5LnVrLmNoZWNrIikKICAgICAgICAgICAgfSkpCiAgICAgICAgfQogICAgfSkKfShVSWtpdCksCmZ1bmN0aW9uKHIpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBsID0gewogICAgICAgICAgICB4OiB3aW5kb3cuc2Nyb2xsWCwKICAgICAgICAgICAgeTogd2luZG93LnNjcm9sbFkKICAgICAgICB9LAogICAgICAgIGMgPSAoci4kd2luLCByLiRkb2MsIHIuJGh0bWwpLAogICAgICAgIG4gPSB7CiAgICAgICAgICAgIHNob3c6IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgICAgIGlmICgodCA9IHIuJCh0KSkubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgaSA9IHIuJC5leHRlbmQoewogICAgICAgICAgICAgICAgICAgICAgICBtb2RlOiAicHVzaCIKICAgICAgICAgICAgICAgICAgICB9LCBpKTsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHIuJCgiYm9keSIpLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gdC5maW5kKCIudWstb2ZmY2FudmFzLWJhcjpmaXJzdCIpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gInJpZ2h0IiA9PSByLmxhbmdkaXJlY3Rpb24sCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSAobi5oYXNDbGFzcygidWstb2ZmY2FudmFzLWJhci1mbGlwIikgPyAtMSA6IDEpICogKG8gPyAtMSA6IDEpLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gd2luZG93LmlubmVyV2lkdGggLSBlLndpZHRoKCk7CiAgICAgICAgICAgICAgICAgICAgbCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgeDogd2luZG93LnBhZ2VYT2Zmc2V0LAogICAgICAgICAgICAgICAgICAgICAgICB5OiB3aW5kb3cucGFnZVlPZmZzZXQKICAgICAgICAgICAgICAgICAgICB9LCBuLmF0dHIoIm1vZGUiLCBpLm1vZGUpLCB0LmFkZENsYXNzKCJ1ay1hY3RpdmUiKSwgZS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogd2luZG93LmlubmVyV2lkdGggLSBhLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHdpbmRvdy5pbm5lckhlaWdodAogICAgICAgICAgICAgICAgICAgIH0pLmFkZENsYXNzKCJ1ay1vZmZjYW52YXMtcGFnZSIpLCAoInB1c2giID09IGkubW9kZSB8fCAicmV2ZWFsIiA9PSBpLm1vZGUpICYmIGUuY3NzKG8gPyAibWFyZ2luLXJpZ2h0IiA6ICJtYXJnaW4tbGVmdCIsIChvID8gLTEgOiAxKSAqIG4ub3V0ZXJXaWR0aCgpICogcyksICJyZXZlYWwiID09IGkubW9kZSAmJiBuLmNzcygiY2xpcCIsICJyZWN0KDAsICIgKyBuLm91dGVyV2lkdGgoKSArICJweCwgMTAwdmgsIDApIiksIGMuY3NzKCJtYXJnaW4tdG9wIiwgLTEgKiBsLnkpLndpZHRoKCksIG4uYWRkQ2xhc3MoInVrLW9mZmNhbnZhcy1iYXItc2hvdyIpLCB0aGlzLl9pbml0RWxlbWVudCh0KSwgbi50cmlnZ2VyKCJzaG93LnVrLm9mZmNhbnZhcyIsIFt0LCBuXSksIHQuYXR0cigiYXJpYS1oaWRkZW4iLCAiZmFsc2UiKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBoaWRlOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHIuJCgiYm9keSIpLAogICAgICAgICAgICAgICAgICAgIGUgPSByLiQoIi51ay1vZmZjYW52YXMudWstYWN0aXZlIiksCiAgICAgICAgICAgICAgICAgICAgbiA9ICJyaWdodCIgPT0gci5sYW5nZGlyZWN0aW9uLAogICAgICAgICAgICAgICAgICAgIG8gPSBlLmZpbmQoIi51ay1vZmZjYW52YXMtYmFyOmZpcnN0IiksCiAgICAgICAgICAgICAgICAgICAgcyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBpLnJlbW92ZUNsYXNzKCJ1ay1vZmZjYW52YXMtcGFnZSIpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luTGVmdDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW5SaWdodDogIiIKICAgICAgICAgICAgICAgICAgICAgICAgfSksIGUucmVtb3ZlQ2xhc3MoInVrLWFjdGl2ZSIpLCBvLnJlbW92ZUNsYXNzKCJ1ay1vZmZjYW52YXMtYmFyLXNob3ciKSwgYy5jc3MoIm1hcmdpbi10b3AiLCAiIiksIHdpbmRvdy5zY3JvbGxUbyhsLngsIGwueSksIG8udHJpZ2dlcigiaGlkZS51ay5vZmZjYW52YXMiLCBbZSwgb10pLCBlLmF0dHIoImFyaWEtaGlkZGVuIiwgInRydWUiKQogICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICBlLmxlbmd0aCAmJiAoIm5vbmUiID09IG8uYXR0cigibW9kZSIpICYmICh0ID0gITApLCByLnN1cHBvcnQudHJhbnNpdGlvbiAmJiAhdCA/IChpLm9uZShyLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHMoKQogICAgICAgICAgICAgICAgfSkuY3NzKG4gPyAibWFyZ2luLXJpZ2h0IiA6ICJtYXJnaW4tbGVmdCIsICIiKSwgInJldmVhbCIgPT0gby5hdHRyKCJtb2RlIikgJiYgby5jc3MoImNsaXAiLCAiIiksIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgby5yZW1vdmVDbGFzcygidWstb2ZmY2FudmFzLWJhci1zaG93IikKICAgICAgICAgICAgICAgIH0sIDApKSA6IHMoKSkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgX2luaXRFbGVtZW50OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LmRhdGEoIk9mZmNhbnZhc0luaXQiKSB8fCAodC5vbigiY2xpY2sudWsub2ZmY2FudmFzIHN3aXBlUmlnaHQudWsub2ZmY2FudmFzIHN3aXBlTGVmdC51ay5vZmZjYW52YXMiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSByLiQodC50YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIGlmICghdC50eXBlLm1hdGNoKC9zd2lwZS8pICYmICFpLmhhc0NsYXNzKCJ1ay1vZmZjYW52YXMtY2xvc2UiKSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoaS5oYXNDbGFzcygidWstb2ZmY2FudmFzLWJhciIpKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpLnBhcmVudHMoIi51ay1vZmZjYW52YXMtYmFyOmZpcnN0IikubGVuZ3RoKSByZXR1cm4KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgdC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSwgbi5oaWRlKCkKICAgICAgICAgICAgICAgIH0pLCB0Lm9uKCJjbGljayIsICdhW2hyZWYqPSIjIl0nLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHIuJCh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHQuYXR0cigiaHJlZiIpOwogICAgICAgICAgICAgICAgICAgICIjIiAhPSBlICYmIChyLiRkb2Mub25lKCJoaWRlLnVrLm9mZmNhbnZhcyIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaTsKICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSByLiQodFswXS5oYXNoKQogICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoICh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gIiIKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpLmxlbmd0aCB8fCAoaSA9IHIuJCgnW25hbWU9IicgKyB0WzBdLmhhc2gucmVwbGFjZSgiIyIsICIiKSArICciXScpKSwgaS5sZW5ndGggJiYgci5VdGlscy5zY3JvbGxUb0VsZW1lbnQgPyByLlV0aWxzLnNjcm9sbFRvRWxlbWVudChpLCByLlV0aWxzLm9wdGlvbnModC5hdHRyKCJkYXRhLXVrLXNtb290aC1zY3JvbGwiKSB8fCAie30iKSkgOiB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGUKICAgICAgICAgICAgICAgICAgICB9KSwgbi5oaWRlKCkpCiAgICAgICAgICAgICAgICB9KSwgdC5kYXRhKCJPZmZjYW52YXNJbml0IiwgITApKQogICAgICAgICAgICB9CiAgICAgICAgfTsKICAgIHIuY29tcG9uZW50KCJvZmZjYW52YXNUcmlnZ2VyIiwgewogICAgICAgIGJvb3Q6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBjLm9uKCJjbGljay5vZmZjYW52YXMudWlraXQiLCAiW2RhdGEtdWstb2ZmY2FudmFzXSIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgIHZhciBpID0gci4kKHRoaXMpOwogICAgICAgICAgICAgICAgaS5kYXRhKCJvZmZjYW52YXNUcmlnZ2VyIikgfHwgKHIub2ZmY2FudmFzVHJpZ2dlcihpLCByLlV0aWxzLm9wdGlvbnMoaS5hdHRyKCJkYXRhLXVrLW9mZmNhbnZhcyIpKSksIGkudHJpZ2dlcigiY2xpY2siKSkKICAgICAgICAgICAgfSksIGMub24oImtleWRvd24udWsub2ZmY2FudmFzIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgMjcgPT09IHQua2V5Q29kZSAmJiBuLmhpZGUoKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBpID0gdGhpczsKICAgICAgICAgICAgdGhpcy5vcHRpb25zID0gci4kLmV4dGVuZCh7CiAgICAgICAgICAgICAgICB0YXJnZXQ6ICEhaS5lbGVtZW50LmlzKCJhIikgJiYgaS5lbGVtZW50LmF0dHIoImhyZWYiKSwKICAgICAgICAgICAgICAgIG1vZGU6ICJwdXNoIgogICAgICAgICAgICB9LCB0aGlzLm9wdGlvbnMpLCB0aGlzLm9uKCJjbGljayIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQucHJldmVudERlZmF1bHQoKSwgbi5zaG93KGkub3B0aW9ucy50YXJnZXQsIGkub3B0aW9ucykKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KSwgci5vZmZjYW52YXMgPSBuCn0oVUlraXQpLApmdW5jdGlvbihyKSB7CiAgICAidXNlIHN0cmljdCI7CgogICAgZnVuY3Rpb24gYSh0LCBpLCBlKSB7CiAgICAgICAgdmFyIG4sIG8gPSByLiQuRGVmZXJyZWQoKSwKICAgICAgICAgICAgcyA9IHQsCiAgICAgICAgICAgIGEgPSB0OwogICAgICAgIHJldHVybiBlWzBdID09PSBpWzBdID8gby5yZXNvbHZlKCkgOiAoIm9iamVjdCIgPT0gdHlwZW9mIHQgJiYgKHMgPSB0WzBdLCBhID0gdFsxXSB8fCB0WzBdKSwgci4kYm9keS5jc3MoIm92ZXJmbG93LXgiLCAiaGlkZGVuIiksIG4gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaSAmJiBpLmhpZGUoKS5yZW1vdmVDbGFzcygidWstYWN0aXZlICIgKyBhICsgIiB1ay1hbmltYXRpb24tcmV2ZXJzZSIpLCBlLmFkZENsYXNzKHMpLm9uZShyLnN1cHBvcnQuYW5pbWF0aW9uLmVuZCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGUucmVtb3ZlQ2xhc3MoIiIgKyBzKS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogIiIKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSwgMCksIG8ucmVzb2x2ZSgpLCByLiRib2R5LmNzcygib3ZlcmZsb3cteCIsICIiKSwgaSAmJiBpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogIiIsCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogIiIKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0uYmluZCh0aGlzKSkuc2hvdygpCiAgICAgICAgfSwgZS5jc3MoImFuaW1hdGlvbi1kdXJhdGlvbiIsIHRoaXMub3B0aW9ucy5kdXJhdGlvbiArICJtcyIpLCBpICYmIGkubGVuZ3RoID8gKGkuY3NzKCJhbmltYXRpb24tZHVyYXRpb24iLCB0aGlzLm9wdGlvbnMuZHVyYXRpb24gKyAibXMiKSwgaS5jc3MoImRpc3BsYXkiLCAibm9uZSIpLmFkZENsYXNzKGEgKyAiIHVrLWFuaW1hdGlvbi1yZXZlcnNlIikub25lKHIuc3VwcG9ydC5hbmltYXRpb24uZW5kLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgbigpCiAgICAgICAgfS5iaW5kKHRoaXMpKS5jc3MoImRpc3BsYXkiLCAiIikpIDogKGUuYWRkQ2xhc3MoInVrLWFjdGl2ZSIpLCBuKCkpKSwgby5wcm9taXNlKCkKICAgIH0KICAgIHZhciBsOwogICAgci5jb21wb25lbnQoInN3aXRjaGVyIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGNvbm5lY3Q6ICExLAogICAgICAgICAgICB0b2dnbGU6ICI+KiIsCiAgICAgICAgICAgIGFjdGl2ZTogMCwKICAgICAgICAgICAgYW5pbWF0aW9uOiAhMSwKICAgICAgICAgICAgZHVyYXRpb246IDIwMCwKICAgICAgICAgICAgc3dpcGluZzogITAKICAgICAgICB9LAogICAgICAgIGFuaW1hdGluZzogITEsCiAgICAgICAgYm9vdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHIucmVhZHkoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgci4kKCJbZGF0YS11ay1zd2l0Y2hlcl0iLCB0KS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gci4kKHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHQuZGF0YSgic3dpdGNoZXIiKSB8fCByLnN3aXRjaGVyKHQsIHIuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstc3dpdGNoZXIiKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgdGhpcy5vbigiY2xpY2sudWsuc3dpdGNoZXIiLCB0aGlzLm9wdGlvbnMudG9nZ2xlLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCksIGUuc2hvdyh0aGlzKQogICAgICAgICAgICB9KSwgdGhpcy5vcHRpb25zLmNvbm5lY3QgJiYgKHRoaXMuY29ubmVjdCA9IHIuJCh0aGlzLm9wdGlvbnMuY29ubmVjdCksIHRoaXMuY29ubmVjdC5sZW5ndGggJiYgKHRoaXMuY29ubmVjdC5vbigiY2xpY2sudWsuc3dpdGNoZXIiLCAiW2RhdGEtdWstc3dpdGNoZXItaXRlbV0iLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHIuJCh0aGlzKS5hdHRyKCJkYXRhLXVrLXN3aXRjaGVyLWl0ZW0iKTsKICAgICAgICAgICAgICAgIGlmIChlLmluZGV4ICE9IGkpIHN3aXRjaCAoaSkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgIm5leHQiOgogICAgICAgICAgICAgICAgICAgIGNhc2UgInByZXZpb3VzIjoKICAgICAgICAgICAgICAgICAgICAgICAgZS5zaG93KGUuaW5kZXggKyAoIm5leHQiID09IGkgPyAxIDogLTEpKTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgICAgICAgZS5zaG93KHBhcnNlSW50KGksIDEwKSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIHRoaXMub3B0aW9ucy5zd2lwaW5nICYmIHRoaXMuY29ubmVjdC5vbigic3dpcGVSaWdodCBzd2lwZUxlZnQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCksIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpIHx8IGUuc2hvdyhlLmluZGV4ICsgKCJzd2lwZUxlZnQiID09IHQudHlwZSA/IDEgOiAtMSkpCiAgICAgICAgICAgIH0pLCB0aGlzLnVwZGF0ZSgpKSkKICAgICAgICB9LAogICAgICAgIHVwZGF0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHRoaXMuY29ubmVjdC5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKCJ1ay1hY3RpdmUiKS5hdHRyKCJhcmlhLWhpZGRlbiIsICJ0cnVlIik7CiAgICAgICAgICAgIHZhciB0ID0gdGhpcy5maW5kKHRoaXMub3B0aW9ucy50b2dnbGUpLAogICAgICAgICAgICAgICAgaSA9IHQuZmlsdGVyKCIudWstYWN0aXZlIik7CiAgICAgICAgICAgIGlmIChpLmxlbmd0aCkgdGhpcy5zaG93KGksICExKTsKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICBpZiAoITEgPT09IHRoaXMub3B0aW9ucy5hY3RpdmUpIHJldHVybjsKICAgICAgICAgICAgICAgIGkgPSB0LmVxKHRoaXMub3B0aW9ucy5hY3RpdmUpLCB0aGlzLnNob3coaS5sZW5ndGggPyBpIDogdC5lcSgwKSwgITEpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdC5ub3QoaSkuYXR0cigiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIpLCBpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCAidHJ1ZSIpCiAgICAgICAgfSwKICAgICAgICBzaG93OiBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgIGlmICghdGhpcy5hbmltYXRpbmcpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy5maW5kKHRoaXMub3B0aW9ucy50b2dnbGUpOwogICAgICAgICAgICAgICAgdCA9IGlzTmFOKHQpID8gci4kKHQpIDogKHQgPSB0IDwgMCA/IGUubGVuZ3RoIC0gMSA6IHQsIGUuZXEoZVt0XSA/IHQgOiAwKSk7CiAgICAgICAgICAgICAgICB2YXIgbyA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgbiA9IHIuJCh0KSwKICAgICAgICAgICAgICAgICAgICBzID0gbFt0aGlzLm9wdGlvbnMuYW5pbWF0aW9uXSB8fCBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghby5vcHRpb25zLmFuaW1hdGlvbikgcmV0dXJuIGwubm9uZS5hcHBseShvKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBvLm9wdGlvbnMuYW5pbWF0aW9uLnNwbGl0KCIsIik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxID09IGUubGVuZ3RoICYmIChlWzFdID0gZVswXSksIGVbMF0gPSBlWzBdLnRyaW0oKSwgZVsxXSA9IGVbMV0udHJpbSgpLCBhLmFwcGx5KG8sIFtlLCB0LCBpXSkKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgITEgIT09IGkgJiYgci5zdXBwb3J0LmFuaW1hdGlvbiB8fCAocyA9IGwubm9uZSksIG4uaGFzQ2xhc3MoInVrLWRpc2FibGVkIikgfHwgKGUuYXR0cigiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIpLCBuLmF0dHIoImFyaWEtZXhwYW5kZWQiLCAidHJ1ZSIpLCBlLmZpbHRlcigiLnVrLWFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJ1ay1hY3RpdmUiKSwgbi5hZGRDbGFzcygidWstYWN0aXZlIiksIHRoaXMub3B0aW9ucy5jb25uZWN0ICYmIHRoaXMuY29ubmVjdC5sZW5ndGggJiYgKHRoaXMuaW5kZXggPSB0aGlzLmZpbmQodGhpcy5vcHRpb25zLnRvZ2dsZSkuaW5kZXgobiksIC0xID09IHRoaXMuaW5kZXggJiYgKHRoaXMuaW5kZXggPSAwKSwgdGhpcy5jb25uZWN0LmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSByLiQodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSByLiQodC5jaGlsZHJlbigpKSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHIuJChpLmZpbHRlcigiLnVrLWFjdGl2ZSIpKSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHIuJChpLmVxKG8uaW5kZXgpKTsKICAgICAgICAgICAgICAgICAgICBvLmFuaW1hdGluZyA9ICEwLCBzLmFwcGx5KG8sIFtlLCBuXSkudGhlbihmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZS5yZW1vdmVDbGFzcygidWstYWN0aXZlIiksIG4uYWRkQ2xhc3MoInVrLWFjdGl2ZSIpLCBlLmF0dHIoImFyaWEtaGlkZGVuIiwgInRydWUiKSwgbi5hdHRyKCJhcmlhLWhpZGRlbiIsICJmYWxzZSIpLCByLlV0aWxzLmNoZWNrRGlzcGxheShuLCAhMCksIG8uYW5pbWF0aW5nID0gITEKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSkpLCB0aGlzLnRyaWdnZXIoInNob3cudWsuc3dpdGNoZXIiLCBbbl0pKQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksIGwgPSB7CiAgICAgICAgbm9uZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciB0ID0gci4kLkRlZmVycmVkKCk7CiAgICAgICAgICAgIHJldHVybiB0LnJlc29sdmUoKSwgdC5wcm9taXNlKCkKICAgICAgICB9LAogICAgICAgIGZhZGU6IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGEuYXBwbHkodGhpcywgWyJ1ay1hbmltYXRpb24tZmFkZSIsIHQsIGldKQogICAgICAgIH0sCiAgICAgICAgInNsaWRlLWJvdHRvbSI6IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGEuYXBwbHkodGhpcywgWyJ1ay1hbmltYXRpb24tc2xpZGUtYm90dG9tIiwgdCwgaV0pCiAgICAgICAgfSwKICAgICAgICAic2xpZGUtdG9wIjogZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICByZXR1cm4gYS5hcHBseSh0aGlzLCBbInVrLWFuaW1hdGlvbi1zbGlkZS10b3AiLCB0LCBpXSkKICAgICAgICB9LAogICAgICAgICJzbGlkZS12ZXJ0aWNhbCI6IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgdmFyIGUgPSBbInVrLWFuaW1hdGlvbi1zbGlkZS10b3AiLCAidWstYW5pbWF0aW9uLXNsaWRlLWJvdHRvbSJdOwogICAgICAgICAgICByZXR1cm4gdCAmJiB0LmluZGV4KCkgPiBpLmluZGV4KCkgJiYgZS5yZXZlcnNlKCksIGEuYXBwbHkodGhpcywgW2UsIHQsIGldKQogICAgICAgIH0sCiAgICAgICAgInNsaWRlLWxlZnQiOiBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgIHJldHVybiBhLmFwcGx5KHRoaXMsIFsidWstYW5pbWF0aW9uLXNsaWRlLWxlZnQiLCB0LCBpXSkKICAgICAgICB9LAogICAgICAgICJzbGlkZS1yaWdodCI6IGZ1bmN0aW9uKHQsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGEuYXBwbHkodGhpcywgWyJ1ay1hbmltYXRpb24tc2xpZGUtcmlnaHQiLCB0LCBpXSkKICAgICAgICB9LAogICAgICAgICJzbGlkZS1ob3Jpem9udGFsIjogZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICB2YXIgZSA9IFsidWstYW5pbWF0aW9uLXNsaWRlLXJpZ2h0IiwgInVrLWFuaW1hdGlvbi1zbGlkZS1sZWZ0Il07CiAgICAgICAgICAgIHJldHVybiB0ICYmIHQuaW5kZXgoKSA+IGkuaW5kZXgoKSAmJiBlLnJldmVyc2UoKSwgYS5hcHBseSh0aGlzLCBbZSwgdCwgaV0pCiAgICAgICAgfSwKICAgICAgICBzY2FsZTogZnVuY3Rpb24odCwgaSkgewogICAgICAgICAgICByZXR1cm4gYS5hcHBseSh0aGlzLCBbInVrLWFuaW1hdGlvbi1zY2FsZS11cCIsIHQsIGldKQogICAgICAgIH0KICAgIH0sIHIuc3dpdGNoZXIuYW5pbWF0aW9ucyA9IGwKfShVSWtpdCksCmZ1bmN0aW9uKGEpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIGEuY29tcG9uZW50KCJ0YWIiLCB7CiAgICAgICAgZGVmYXVsdHM6IHsKICAgICAgICAgICAgdGFyZ2V0OiAiPmxpOm5vdCgudWstdGFiLXJlc3BvbnNpdmUsIC51ay1kaXNhYmxlZCkiLAogICAgICAgICAgICBjb25uZWN0OiAhMSwKICAgICAgICAgICAgYWN0aXZlOiAwLAogICAgICAgICAgICBhbmltYXRpb246ICExLAogICAgICAgICAgICBkdXJhdGlvbjogMjAwLAogICAgICAgICAgICBzd2lwaW5nOiAhMAogICAgICAgIH0sCiAgICAgICAgYm9vdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGEucmVhZHkoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgYS4kKCJbZGF0YS11ay10YWJdIiwgdCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGEuJCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoInRhYiIpIHx8IGEudGFiKHQsIGEuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstdGFiIikpKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IHRoaXM7CiAgICAgICAgICAgIHRoaXMuY3VycmVudCA9ICExLCB0aGlzLm9uKCJjbGljay51ay50YWIiLCB0aGlzLm9wdGlvbnMudGFyZ2V0LCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAodC5wcmV2ZW50RGVmYXVsdCgpLCAhZS5zd2l0Y2hlciB8fCAhZS5zd2l0Y2hlci5hbmltYXRpbmcpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IGUuZmluZChlLm9wdGlvbnMudGFyZ2V0KS5ub3QodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgaS5yZW1vdmVDbGFzcygidWstYWN0aXZlIikuYmx1cigpLCBlLnRyaWdnZXIoImNoYW5nZS51ay50YWIiLCBbYS4kKHRoaXMpLmFkZENsYXNzKCJ1ay1hY3RpdmUiKSwgZS5jdXJyZW50XSksIGUuY3VycmVudCA9IGEuJCh0aGlzKSwgZS5vcHRpb25zLmNvbm5lY3QgfHwgKGkuYXR0cigiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIpLCBhLiQodGhpcykuYXR0cigiYXJpYS1leHBhbmRlZCIsICJ0cnVlIikpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCB0aGlzLm9wdGlvbnMuY29ubmVjdCAmJiAodGhpcy5jb25uZWN0ID0gYS4kKHRoaXMub3B0aW9ucy5jb25uZWN0KSksIHRoaXMucmVzcG9uc2l2ZXRhYiA9IGEuJCgnPGxpIGNsYXNzPSJ1ay10YWItcmVzcG9uc2l2ZSB1ay1hY3RpdmUiPjxhPjwvYT48L2xpPicpLmFwcGVuZCgnPGRpdiBjbGFzcz0idWstZHJvcGRvd24gdWstZHJvcGRvd24tc21hbGwiPjx1bCBjbGFzcz0idWstbmF2IHVrLW5hdi1kcm9wZG93biI+PC91bD48ZGl2PicpLCB0aGlzLnJlc3BvbnNpdmV0YWIuZHJvcGRvd24gPSB0aGlzLnJlc3BvbnNpdmV0YWIuZmluZCgiLnVrLWRyb3Bkb3duIiksIHRoaXMucmVzcG9uc2l2ZXRhYi5sc3QgPSB0aGlzLnJlc3BvbnNpdmV0YWIuZHJvcGRvd24uZmluZCgidWwiKSwgdGhpcy5yZXNwb25zaXZldGFiLmNhcHRpb24gPSB0aGlzLnJlc3BvbnNpdmV0YWIuZmluZCgiYTpmaXJzdCIpLCB0aGlzLmVsZW1lbnQuaGFzQ2xhc3MoInVrLXRhYi1ib3R0b20iKSAmJiB0aGlzLnJlc3BvbnNpdmV0YWIuZHJvcGRvd24uYWRkQ2xhc3MoInVrLWRyb3Bkb3duLXVwIiksIHRoaXMucmVzcG9uc2l2ZXRhYi5sc3Qub24oImNsaWNrLnVrLnRhYiIsICJhIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpLCB0LnN0b3BQcm9wYWdhdGlvbigpOwogICAgICAgICAgICAgICAgdmFyIGkgPSBhLiQodGhpcyk7CiAgICAgICAgICAgICAgICBlLmVsZW1lbnQuY2hpbGRyZW4oImxpOm5vdCgudWstdGFiLXJlc3BvbnNpdmUpIikuZXEoaS5kYXRhKCJpbmRleCIpKS50cmlnZ2VyKCJjbGljayIpCiAgICAgICAgICAgIH0pLCB0aGlzLm9uKCJzaG93LnVrLnN3aXRjaGVyIGNoYW5nZS51ay50YWIiLCBmdW5jdGlvbih0LCBpKSB7CiAgICAgICAgICAgICAgICBlLnJlc3BvbnNpdmV0YWIuY2FwdGlvbi5odG1sKGkudGV4dCgpKQogICAgICAgICAgICB9KSwgdGhpcy5lbGVtZW50LmFwcGVuZCh0aGlzLnJlc3BvbnNpdmV0YWIpLCB0aGlzLm9wdGlvbnMuY29ubmVjdCAmJiAodGhpcy5zd2l0Y2hlciA9IGEuc3dpdGNoZXIodGhpcy5lbGVtZW50LCB7CiAgICAgICAgICAgICAgICB0b2dnbGU6ICI+bGk6bm90KC51ay10YWItcmVzcG9uc2l2ZSkiLAogICAgICAgICAgICAgICAgY29ubmVjdDogdGhpcy5vcHRpb25zLmNvbm5lY3QsCiAgICAgICAgICAgICAgICBhY3RpdmU6IHRoaXMub3B0aW9ucy5hY3RpdmUsCiAgICAgICAgICAgICAgICBhbmltYXRpb246IHRoaXMub3B0aW9ucy5hbmltYXRpb24sCiAgICAgICAgICAgICAgICBkdXJhdGlvbjogdGhpcy5vcHRpb25zLmR1cmF0aW9uLAogICAgICAgICAgICAgICAgc3dpcGluZzogdGhpcy5vcHRpb25zLnN3aXBpbmcKICAgICAgICAgICAgfSkpLCBhLmRyb3Bkb3duKHRoaXMucmVzcG9uc2l2ZXRhYiwgewogICAgICAgICAgICAgICAgbW9kZTogImNsaWNrIiwKICAgICAgICAgICAgICAgIHByZXZlbnRmbGlwOiAieSIKICAgICAgICAgICAgfSksIGUudHJpZ2dlcigiY2hhbmdlLnVrLnRhYiIsIFt0aGlzLmVsZW1lbnQuZmluZCh0aGlzLm9wdGlvbnMudGFyZ2V0KS5ub3QoIi51ay10YWItcmVzcG9uc2l2ZSIpLmZpbHRlcigiLnVrLWFjdGl2ZSIpXSksIHRoaXMuY2hlY2soKSwgYS4kd2luLm9uKCJyZXNpemUgb3JpZW50YXRpb25jaGFuZ2UiLCBhLlV0aWxzLmRlYm91bmNlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIGUuY2hlY2soKQogICAgICAgICAgICB9LCAxMDApKSwgdGhpcy5vbigiZGlzcGxheS51ay5jaGVjayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIGUuY2hlY2soKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgY2hlY2s6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgdCA9IHRoaXMuZWxlbWVudC5jaGlsZHJlbigibGk6bm90KC51ay10YWItcmVzcG9uc2l2ZSkiKS5yZW1vdmVDbGFzcygidWstaGlkZGVuIik7CiAgICAgICAgICAgIGlmICh0Lmxlbmd0aCkgewogICAgICAgICAgICAgICAgdmFyIGksIGUsIG4gPSB0LmVxKDApLm9mZnNldCgpLnRvcCArIE1hdGguY2VpbCh0LmVxKDApLmhlaWdodCgpIC8gMiksCiAgICAgICAgICAgICAgICAgICAgbyA9ICExOwogICAgICAgICAgICAgICAgaWYgKHRoaXMucmVzcG9uc2l2ZXRhYi5sc3QuZW1wdHkoKSwgdC5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBhLiQodGhpcykub2Zmc2V0KCkudG9wID4gbiAmJiAobyA9ICEwKQogICAgICAgICAgICAgICAgICAgIH0pLCBvKQogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHMgPSAwOyBzIDwgdC5sZW5ndGg7IHMrKykoaSA9IGEuJCh0LmVxKHMpKSkuZmluZCgiYSIpLCAibm9uZSIgPT0gaS5jc3MoImZsb2F0IikgfHwgaS5hdHRyKCJ1ay1kcm9wZG93biIpIHx8IChpLmhhc0NsYXNzKCJ1ay1kaXNhYmxlZCIpIHx8ICgoZSA9IGEuJChpWzBdLm91dGVySFRNTCkpLmZpbmQoImEiKS5kYXRhKCJpbmRleCIsIHMpLCB0aGlzLnJlc3BvbnNpdmV0YWIubHN0LmFwcGVuZChlKSksIGkuYWRkQ2xhc3MoInVrLWhpZGRlbiIpKTsKICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2l2ZXRhYlt0aGlzLnJlc3BvbnNpdmV0YWIubHN0LmNoaWxkcmVuKCJsaSIpLmxlbmd0aCA/ICJyZW1vdmVDbGFzcyIgOiAiYWRkQ2xhc3MiXSgidWstaGlkZGVuIikKICAgICAgICAgICAgfSBlbHNlIHRoaXMucmVzcG9uc2l2ZXRhYi5hZGRDbGFzcygidWstaGlkZGVuIikKICAgICAgICB9CiAgICB9KQp9KFVJa2l0KSwKZnVuY3Rpb24oaSkgewogICAgInVzZSBzdHJpY3QiOwogICAgaS5jb21wb25lbnQoImNvdmVyIiwgewogICAgICAgIGRlZmF1bHRzOiB7CiAgICAgICAgICAgIGF1dG9tdXRlOiAhMAogICAgICAgIH0sCiAgICAgICAgYm9vdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGkucmVhZHkoZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgaS4kKCJbZGF0YS11ay1jb3Zlcl0iLCB0KS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gaS4kKHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHQuZGF0YSgiY292ZXIiKSB8fCBpLmNvdmVyKHQsIGkuVXRpbHMub3B0aW9ucyh0LmF0dHIoImRhdGEtdWstY292ZXIiKSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgaW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmICh0aGlzLnBhcmVudCA9IHRoaXMuZWxlbWVudC5wYXJlbnQoKSwgaS4kd2luLm9uKCJsb2FkIHJlc2l6ZSBvcmllbnRhdGlvbmNoYW5nZSIsIGkuVXRpbHMuZGVib3VuY2UoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGVjaygpCiAgICAgICAgICAgICAgICB9LmJpbmQodGhpcyksIDEwMCkpLCB0aGlzLm9uKCJkaXNwbGF5LnVrLmNoZWNrIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LmlzKCI6dmlzaWJsZSIpICYmIHRoaXMuY2hlY2soKQogICAgICAgICAgICAgICAgfS5iaW5kKHRoaXMpKSwgdGhpcy5jaGVjaygpLCB0aGlzLmVsZW1lbnQuaXMoImlmcmFtZSIpICYmIHRoaXMub3B0aW9ucy5hdXRvbXV0ZSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmVsZW1lbnQuYXR0cigic3JjIik7CiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXR0cigic3JjIiwgIiIpLm9uKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKCd7ICJldmVudCI6ICJjb21tYW5kIiwgImZ1bmMiOiAibXV0ZSIsICJtZXRob2QiOiJzZXRWb2x1bWUiLCAidmFsdWUiOjB9JywgIioiKQogICAgICAgICAgICAgICAgfSkuYXR0cigic3JjIiwgW3QsIC0xIDwgdC5pbmRleE9mKCI/IikgPyAiJiIgOiAiPyIsICJlbmFibGVqc2FwaT0xJmFwaT0xIl0uam9pbigiIikpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGNoZWNrOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdGhpcy5lbGVtZW50LmNzcyh7CiAgICAgICAgICAgICAgICB3aWR0aDogIiIsCiAgICAgICAgICAgICAgICBoZWlnaHQ6ICIiCiAgICAgICAgICAgIH0pLCB0aGlzLmRpbWVuc2lvbiA9IHsKICAgICAgICAgICAgICAgIHc6IHRoaXMuZWxlbWVudC53aWR0aCgpLAogICAgICAgICAgICAgICAgaDogdGhpcy5lbGVtZW50LmhlaWdodCgpCiAgICAgICAgICAgIH0sIHRoaXMuZWxlbWVudC5hdHRyKCJ3aWR0aCIpICYmICFpc05hTih0aGlzLmVsZW1lbnQuYXR0cigid2lkdGgiKSkgJiYgKHRoaXMuZGltZW5zaW9uLncgPSB0aGlzLmVsZW1lbnQuYXR0cigid2lkdGgiKSksIHRoaXMuZWxlbWVudC5hdHRyKCJoZWlnaHQiKSAmJiAhaXNOYU4odGhpcy5lbGVtZW50LmF0dHIoImhlaWdodCIpKSAmJiAodGhpcy5kaW1lbnNpb24uaCA9IHRoaXMuZWxlbWVudC5hdHRyKCJoZWlnaHQiKSksIHRoaXMucmF0aW8gPSB0aGlzLmRpbWVuc2lvbi53IC8gdGhpcy5kaW1lbnNpb24uaDsKICAgICAgICAgICAgdmFyIHQsIGksIGUgPSB0aGlzLnBhcmVudC53aWR0aCgpLAogICAgICAgICAgICAgICAgbiA9IHRoaXMucGFyZW50LmhlaWdodCgpOwogICAgICAgICAgICBpID0gZSAvIHRoaXMucmF0aW8gPCBuID8gKHQgPSBNYXRoLmNlaWwobiAqIHRoaXMucmF0aW8pLCBuKSA6ICh0ID0gZSwgTWF0aC5jZWlsKGUgLyB0aGlzLnJhdGlvKSksIHRoaXMuZWxlbWVudC5jc3MoewogICAgICAgICAgICAgICAgd2lkdGg6IHQsCiAgICAgICAgICAgICAgICBoZWlnaHQ6IGkKICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9KQp9KFVJa2l0KTsKISBmdW5jdGlvbihlLCB0KSB7CiAgICAib2JqZWN0IiA9PSB0eXBlb2YgZXhwb3J0cyAmJiAidW5kZWZpbmVkIiAhPSB0eXBlb2YgbW9kdWxlID8gbW9kdWxlLmV4cG9ydHMgPSB0KCkgOiAiZnVuY3Rpb24iID09IHR5cGVvZiBkZWZpbmUgJiYgZGVmaW5lLmFtZCA/IGRlZmluZSh0KSA6IGUuUG9wcGVyID0gdCgpCn0odGhpcywgZnVuY3Rpb24oKSB7CiAgICAidXNlIHN0cmljdCI7CgogICAgZnVuY3Rpb24gcyhlKSB7CiAgICAgICAgcmV0dXJuIGUgJiYgIltvYmplY3QgRnVuY3Rpb25dIiA9PT0ge30udG9TdHJpbmcuY2FsbChlKQogICAgfQoKICAgIGZ1bmN0aW9uIHkoZSwgdCkgewogICAgICAgIGlmICgxICE9PSBlLm5vZGVUeXBlKSByZXR1cm4gW107CiAgICAgICAgdmFyIG4gPSBnZXRDb21wdXRlZFN0eWxlKGUsIG51bGwpOwogICAgICAgIHJldHVybiB0ID8gblt0XSA6IG4KICAgIH0KCiAgICBmdW5jdGlvbiBkKGUpIHsKICAgICAgICByZXR1cm4gIkhUTUwiID09PSBlLm5vZGVOYW1lID8gZSA6IGUucGFyZW50Tm9kZSB8fCBlLmhvc3QKICAgIH0KCiAgICBmdW5jdGlvbiBoKGUpIHsKICAgICAgICBpZiAoIWUpIHJldHVybiBkb2N1bWVudC5ib2R5OwogICAgICAgIHN3aXRjaCAoZS5ub2RlTmFtZSkgewogICAgICAgICAgICBjYXNlICJIVE1MIjoKICAgICAgICAgICAgY2FzZSAiQk9EWSI6CiAgICAgICAgICAgICAgICByZXR1cm4gZS5vd25lckRvY3VtZW50LmJvZHk7CiAgICAgICAgICAgIGNhc2UgIiNkb2N1bWVudCI6CiAgICAgICAgICAgICAgICByZXR1cm4gZS5ib2R5CiAgICAgICAgfQogICAgICAgIHZhciB0ID0geShlKSwKICAgICAgICAgICAgbiA9IHQub3ZlcmZsb3csCiAgICAgICAgICAgIG8gPSB0Lm92ZXJmbG93WCwKICAgICAgICAgICAgciA9IHQub3ZlcmZsb3dZOwogICAgICAgIHJldHVybiAvKGF1dG98c2Nyb2xsfG92ZXJsYXkpLy50ZXN0KG4gKyByICsgbykgPyBlIDogaChkKGUpKQogICAgfQoKICAgIGZ1bmN0aW9uIGIoZSkgewogICAgICAgIGlmICghZSkgcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDsKICAgICAgICBmb3IgKHZhciB0ID0gWSgxMCkgPyBkb2N1bWVudC5ib2R5IDogbnVsbCwgbiA9IGUub2Zmc2V0UGFyZW50OyBuID09PSB0ICYmIGUubmV4dEVsZW1lbnRTaWJsaW5nOykgbiA9IChlID0gZS5uZXh0RWxlbWVudFNpYmxpbmcpLm9mZnNldFBhcmVudDsKICAgICAgICB2YXIgbyA9IG4gJiYgbi5ub2RlTmFtZTsKICAgICAgICByZXR1cm4gbyAmJiAiQk9EWSIgIT09IG8gJiYgIkhUTUwiICE9PSBvID8gLTEgIT09IFsiVEQiLCAiVEFCTEUiXS5pbmRleE9mKG4ubm9kZU5hbWUpICYmICJzdGF0aWMiID09PSB5KG4sICJwb3NpdGlvbiIpID8gYihuKSA6IG4gOiBlID8gZS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCA6IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudAogICAgfQoKICAgIGZ1bmN0aW9uIGwoZSkgewogICAgICAgIHJldHVybiBudWxsID09PSBlLnBhcmVudE5vZGUgPyBlIDogbChlLnBhcmVudE5vZGUpCiAgICB9CgogICAgZnVuY3Rpb24gYyhlLCB0KSB7CiAgICAgICAgaWYgKCEoZSAmJiBlLm5vZGVUeXBlICYmIHQgJiYgdC5ub2RlVHlwZSkpIHJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7CiAgICAgICAgdmFyIG4gPSBlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpICYgTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkcsCiAgICAgICAgICAgIG8gPSBuID8gZSA6IHQsCiAgICAgICAgICAgIHIgPSBuID8gdCA6IGUsCiAgICAgICAgICAgIGkgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOwogICAgICAgIGkuc2V0U3RhcnQobywgMCksIGkuc2V0RW5kKHIsIDApOwogICAgICAgIHZhciBzLCBhLCBmID0gaS5jb21tb25BbmNlc3RvckNvbnRhaW5lcjsKICAgICAgICBpZiAoZSAhPT0gZiAmJiB0ICE9PSBmIHx8IG8uY29udGFpbnMocikpIHJldHVybiAiQk9EWSIgPT09IChhID0gKHMgPSBmKS5ub2RlTmFtZSkgfHwgIkhUTUwiICE9PSBhICYmIGIocy5maXJzdEVsZW1lbnRDaGlsZCkgIT09IHMgPyBiKGYpIDogZjsKICAgICAgICB2YXIgcCA9IGwoZSk7CiAgICAgICAgcmV0dXJuIHAuaG9zdCA/IGMocC5ob3N0LCB0KSA6IGMoZSwgbCh0KS5ob3N0KQogICAgfQoKICAgIGZ1bmN0aW9uIG0oZSkgewogICAgICAgIHZhciB0ID0gInRvcCIgPT09ICgxIDwgYXJndW1lbnRzLmxlbmd0aCAmJiB2b2lkIDAgIT09IGFyZ3VtZW50c1sxXSA/IGFyZ3VtZW50c1sxXSA6ICJ0b3AiKSA/ICJzY3JvbGxUb3AiIDogInNjcm9sbExlZnQiLAogICAgICAgICAgICBuID0gZS5ub2RlTmFtZTsKICAgICAgICBpZiAoIkJPRFkiICE9PSBuICYmICJIVE1MIiAhPT0gbikgcmV0dXJuIGVbdF07CiAgICAgICAgdmFyIG8gPSBlLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwogICAgICAgIHJldHVybiAoZS5vd25lckRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQgfHwgbylbdF0KICAgIH0KCiAgICBmdW5jdGlvbiB1KGUsIHQpIHsKICAgICAgICB2YXIgbiA9ICJ4IiA9PT0gdCA/ICJMZWZ0IiA6ICJUb3AiLAogICAgICAgICAgICBvID0gIkxlZnQiID09IG4gPyAiUmlnaHQiIDogIkJvdHRvbSI7CiAgICAgICAgcmV0dXJuIHBhcnNlRmxvYXQoZVsiYm9yZGVyIiArIG4gKyAiV2lkdGgiXSwgMTApICsgcGFyc2VGbG9hdChlWyJib3JkZXIiICsgbyArICJXaWR0aCJdLCAxMCkKICAgIH0KCiAgICBmdW5jdGlvbiBvKGUsIHQsIG4sIG8pIHsKICAgICAgICByZXR1cm4gQyh0WyJvZmZzZXQiICsgZV0sIHRbInNjcm9sbCIgKyBlXSwgblsiY2xpZW50IiArIGVdLCBuWyJvZmZzZXQiICsgZV0sIG5bInNjcm9sbCIgKyBlXSwgWSgxMCkgPyBuWyJvZmZzZXQiICsgZV0gKyBvWyJtYXJnaW4iICsgKCJIZWlnaHQiID09PSBlID8gIlRvcCIgOiAiTGVmdCIpXSArIG9bIm1hcmdpbiIgKyAoIkhlaWdodCIgPT09IGUgPyAiQm90dG9tIiA6ICJSaWdodCIpXSA6IDApCiAgICB9CgogICAgZnVuY3Rpb24gZygpIHsKICAgICAgICB2YXIgZSA9IGRvY3VtZW50LmJvZHksCiAgICAgICAgICAgIHQgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsCiAgICAgICAgICAgIG4gPSBZKDEwKSAmJiBnZXRDb21wdXRlZFN0eWxlKHQpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIGhlaWdodDogbygiSGVpZ2h0IiwgZSwgdCwgbiksCiAgICAgICAgICAgIHdpZHRoOiBvKCJXaWR0aCIsIGUsIHQsIG4pCiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIEUoZSkgewogICAgICAgIHJldHVybiB6KHt9LCBlLCB7CiAgICAgICAgICAgIHJpZ2h0OiBlLmxlZnQgKyBlLndpZHRoLAogICAgICAgICAgICBib3R0b206IGUudG9wICsgZS5oZWlnaHQKICAgICAgICB9KQogICAgfQoKICAgIGZ1bmN0aW9uIHcoZSkgewogICAgICAgIHZhciB0ID0ge307CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgaWYgKFkoMTApKSB7CiAgICAgICAgICAgICAgICB0ID0gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKICAgICAgICAgICAgICAgIHZhciBuID0gbShlLCAidG9wIiksCiAgICAgICAgICAgICAgICAgICAgbyA9IG0oZSwgImxlZnQiKTsKICAgICAgICAgICAgICAgIHQudG9wICs9IG4sIHQubGVmdCArPSBvLCB0LmJvdHRvbSArPSBuLCB0LnJpZ2h0ICs9IG8KICAgICAgICAgICAgfSBlbHNlIHQgPSBlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpCiAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICB2YXIgciA9IHsKICAgICAgICAgICAgICAgIGxlZnQ6IHQubGVmdCwKICAgICAgICAgICAgICAgIHRvcDogdC50b3AsCiAgICAgICAgICAgICAgICB3aWR0aDogdC5yaWdodCAtIHQubGVmdCwKICAgICAgICAgICAgICAgIGhlaWdodDogdC5ib3R0b20gLSB0LnRvcAogICAgICAgICAgICB9LAogICAgICAgICAgICBpID0gIkhUTUwiID09PSBlLm5vZGVOYW1lID8gZygpIDoge30sCiAgICAgICAgICAgIHMgPSBpLndpZHRoIHx8IGUuY2xpZW50V2lkdGggfHwgci5yaWdodCAtIHIubGVmdCwKICAgICAgICAgICAgYSA9IGkuaGVpZ2h0IHx8IGUuY2xpZW50SGVpZ2h0IHx8IHIuYm90dG9tIC0gci50b3AsCiAgICAgICAgICAgIGYgPSBlLm9mZnNldFdpZHRoIC0gcywKICAgICAgICAgICAgcCA9IGUub2Zmc2V0SGVpZ2h0IC0gYTsKICAgICAgICBpZiAoZiB8fCBwKSB7CiAgICAgICAgICAgIHZhciBsID0geShlKTsKICAgICAgICAgICAgZiAtPSB1KGwsICJ4IiksIHAgLT0gdShsLCAieSIpLCByLndpZHRoIC09IGYsIHIuaGVpZ2h0IC09IHAKICAgICAgICB9CiAgICAgICAgcmV0dXJuIEUocikKICAgIH0KCiAgICBmdW5jdGlvbiB2KGUsIHQpIHsKICAgICAgICB2YXIgbiA9IDIgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzJdICYmIGFyZ3VtZW50c1syXSwKICAgICAgICAgICAgbyA9IFkoMTApLAogICAgICAgICAgICByID0gIkhUTUwiID09PSB0Lm5vZGVOYW1lLAogICAgICAgICAgICBpID0gdyhlKSwKICAgICAgICAgICAgcyA9IHcodCksCiAgICAgICAgICAgIGEgPSBoKGUpLAogICAgICAgICAgICBmID0geSh0KSwKICAgICAgICAgICAgcCA9IHBhcnNlRmxvYXQoZi5ib3JkZXJUb3BXaWR0aCwgMTApLAogICAgICAgICAgICBsID0gcGFyc2VGbG9hdChmLmJvcmRlckxlZnRXaWR0aCwgMTApOwogICAgICAgIG4gJiYgIkhUTUwiID09PSB0Lm5vZGVOYW1lICYmIChzLnRvcCA9IEMocy50b3AsIDApLCBzLmxlZnQgPSBDKHMubGVmdCwgMCkpOwogICAgICAgIHZhciB1ID0gRSh7CiAgICAgICAgICAgIHRvcDogaS50b3AgLSBzLnRvcCAtIHAsCiAgICAgICAgICAgIGxlZnQ6IGkubGVmdCAtIHMubGVmdCAtIGwsCiAgICAgICAgICAgIHdpZHRoOiBpLndpZHRoLAogICAgICAgICAgICBoZWlnaHQ6IGkuaGVpZ2h0CiAgICAgICAgfSk7CiAgICAgICAgaWYgKHUubWFyZ2luVG9wID0gMCwgdS5tYXJnaW5MZWZ0ID0gMCwgIW8gJiYgcikgewogICAgICAgICAgICB2YXIgZCA9IHBhcnNlRmxvYXQoZi5tYXJnaW5Ub3AsIDEwKSwKICAgICAgICAgICAgICAgIGMgPSBwYXJzZUZsb2F0KGYubWFyZ2luTGVmdCwgMTApOwogICAgICAgICAgICB1LnRvcCAtPSBwIC0gZCwgdS5ib3R0b20gLT0gcCAtIGQsIHUubGVmdCAtPSBsIC0gYywgdS5yaWdodCAtPSBsIC0gYywgdS5tYXJnaW5Ub3AgPSBkLCB1Lm1hcmdpbkxlZnQgPSBjCiAgICAgICAgfQogICAgICAgIHJldHVybiAobyAmJiAhbiA/IHQuY29udGFpbnMoYSkgOiB0ID09PSBhICYmICJCT0RZIiAhPT0gYS5ub2RlTmFtZSkgJiYgKHUgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBuID0gMiA8IGFyZ3VtZW50cy5sZW5ndGggJiYgdm9pZCAwICE9PSBhcmd1bWVudHNbMl0gJiYgYXJndW1lbnRzWzJdLAogICAgICAgICAgICAgICAgbyA9IG0odCwgInRvcCIpLAogICAgICAgICAgICAgICAgciA9IG0odCwgImxlZnQiKSwKICAgICAgICAgICAgICAgIGkgPSBuID8gLTEgOiAxOwogICAgICAgICAgICByZXR1cm4gZS50b3AgKz0gbyAqIGksIGUuYm90dG9tICs9IG8gKiBpLCBlLmxlZnQgKz0gciAqIGksIGUucmlnaHQgKz0gciAqIGksIGUKICAgICAgICB9KHUsIHQpKSwgdQogICAgfQoKICAgIGZ1bmN0aW9uIHgoZSkgewogICAgICAgIGlmICghZSB8fCAhZS5wYXJlbnRFbGVtZW50IHx8IFkoKSkgcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDsKICAgICAgICBmb3IgKHZhciB0ID0gZS5wYXJlbnRFbGVtZW50OyB0ICYmICJub25lIiA9PT0geSh0LCAidHJhbnNmb3JtIik7KSB0ID0gdC5wYXJlbnRFbGVtZW50OwogICAgICAgIHJldHVybiB0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudAogICAgfQoKICAgIGZ1bmN0aW9uIE8oZSwgdCwgbiwgbykgewogICAgICAgIHZhciByID0gNCA8IGFyZ3VtZW50cy5sZW5ndGggJiYgdm9pZCAwICE9PSBhcmd1bWVudHNbNF0gJiYgYXJndW1lbnRzWzRdLAogICAgICAgICAgICBpID0gewogICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgbGVmdDogMAogICAgICAgICAgICB9LAogICAgICAgICAgICBzID0gciA/IHgoZSkgOiBjKGUsIHQpOwogICAgICAgIGlmICgidmlld3BvcnQiID09PSBvKSBpID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCA9IDEgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzFdICYmIGFyZ3VtZW50c1sxXSwKICAgICAgICAgICAgICAgIG4gPSBlLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LAogICAgICAgICAgICAgICAgbyA9IHYoZSwgbiksCiAgICAgICAgICAgICAgICByID0gQyhuLmNsaWVudFdpZHRoLCB3aW5kb3cuaW5uZXJXaWR0aCB8fCAwKSwKICAgICAgICAgICAgICAgIGkgPSBDKG4uY2xpZW50SGVpZ2h0LCB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgMCksCiAgICAgICAgICAgICAgICBzID0gdCA/IDAgOiBtKG4pLAogICAgICAgICAgICAgICAgYSA9IHQgPyAwIDogbShuLCAibGVmdCIpOwogICAgICAgICAgICByZXR1cm4gRSh7CiAgICAgICAgICAgICAgICB0b3A6IHMgLSBvLnRvcCArIG8ubWFyZ2luVG9wLAogICAgICAgICAgICAgICAgbGVmdDogYSAtIG8ubGVmdCArIG8ubWFyZ2luTGVmdCwKICAgICAgICAgICAgICAgIHdpZHRoOiByLAogICAgICAgICAgICAgICAgaGVpZ2h0OiBpCiAgICAgICAgICAgIH0pCiAgICAgICAgfShzLCByKTsKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgdmFyIGE7CiAgICAgICAgICAgICJzY3JvbGxQYXJlbnQiID09PSBvID8gIkJPRFkiID09PSAoYSA9IGgoZCh0KSkpLm5vZGVOYW1lICYmIChhID0gZS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkgOiBhID0gIndpbmRvdyIgPT09IG8gPyBlLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50IDogbzsKICAgICAgICAgICAgdmFyIGYgPSB2KGEsIHMsIHIpOwogICAgICAgICAgICBpZiAoIkhUTUwiICE9PSBhLm5vZGVOYW1lIHx8IGZ1bmN0aW9uIGUodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gdC5ub2RlTmFtZTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIkJPRFkiICE9PSBuICYmICJIVE1MIiAhPT0gbiAmJiAoImZpeGVkIiA9PT0geSh0LCAicG9zaXRpb24iKSB8fCBlKGQodCkpKQogICAgICAgICAgICAgICAgfShzKSkgaSA9IGY7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIHAgPSBnKCksCiAgICAgICAgICAgICAgICAgICAgbCA9IHAuaGVpZ2h0LAogICAgICAgICAgICAgICAgICAgIHUgPSBwLndpZHRoOwogICAgICAgICAgICAgICAgaS50b3AgKz0gZi50b3AgLSBmLm1hcmdpblRvcCwgaS5ib3R0b20gPSBsICsgZi50b3AsIGkubGVmdCArPSBmLmxlZnQgLSBmLm1hcmdpbkxlZnQsIGkucmlnaHQgPSB1ICsgZi5sZWZ0CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGkubGVmdCArPSBuLCBpLnRvcCArPSBuLCBpLnJpZ2h0IC09IG4sIGkuYm90dG9tIC09IG4sIGkKICAgIH0KCiAgICBmdW5jdGlvbiBhKGUsIHQsIG8sIG4sIHIpIHsKICAgICAgICB2YXIgaSA9IDUgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzVdID8gYXJndW1lbnRzWzVdIDogMDsKICAgICAgICBpZiAoLTEgPT09IGUuaW5kZXhPZigiYXV0byIpKSByZXR1cm4gZTsKICAgICAgICB2YXIgcyA9IE8obywgbiwgaSwgciksCiAgICAgICAgICAgIGEgPSB7CiAgICAgICAgICAgICAgICB0b3A6IHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogcy53aWR0aCwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHQudG9wIC0gcy50b3AKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByaWdodDogewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBzLnJpZ2h0IC0gdC5yaWdodCwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHMuaGVpZ2h0CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYm90dG9tOiB7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHMud2lkdGgsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzLmJvdHRvbSAtIHQuYm90dG9tCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbGVmdDogewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiB0LmxlZnQgLSBzLmxlZnQsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzLmhlaWdodAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBmID0gT2JqZWN0LmtleXMoYSkubWFwKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiB6KHsKICAgICAgICAgICAgICAgICAgICBrZXk6IGUKICAgICAgICAgICAgICAgIH0sIGFbZV0sIHsKICAgICAgICAgICAgICAgICAgICBhcmVhOiAodCA9IGFbZV0sIHQud2lkdGggKiB0LmhlaWdodCkKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmFyIHQKICAgICAgICAgICAgfSkuc29ydChmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdC5hcmVhIC0gZS5hcmVhCiAgICAgICAgICAgIH0pLAogICAgICAgICAgICBwID0gZi5maWx0ZXIoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBlLndpZHRoLAogICAgICAgICAgICAgICAgICAgIG4gPSBlLmhlaWdodDsKICAgICAgICAgICAgICAgIHJldHVybiB0ID49IG8uY2xpZW50V2lkdGggJiYgbiA+PSBvLmNsaWVudEhlaWdodAogICAgICAgICAgICB9KSwKICAgICAgICAgICAgbCA9IDAgPCBwLmxlbmd0aCA/IHBbMF0ua2V5IDogZlswXS5rZXksCiAgICAgICAgICAgIHUgPSBlLnNwbGl0KCItIilbMV07CiAgICAgICAgcmV0dXJuIGwgKyAodSA/ICItIiArIHUgOiAiIikKICAgIH0KCiAgICBmdW5jdGlvbiBmKGUsIHQsIG4pIHsKICAgICAgICB2YXIgbyA9IDMgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzNdID8gYXJndW1lbnRzWzNdIDogbnVsbDsKICAgICAgICByZXR1cm4gdihuLCBvID8geCh0KSA6IGModCwgbiksIG8pCiAgICB9CgogICAgZnVuY3Rpb24gTChlKSB7CiAgICAgICAgdmFyIHQgPSBnZXRDb21wdXRlZFN0eWxlKGUpLAogICAgICAgICAgICBuID0gcGFyc2VGbG9hdCh0Lm1hcmdpblRvcCkgKyBwYXJzZUZsb2F0KHQubWFyZ2luQm90dG9tKSwKICAgICAgICAgICAgbyA9IHBhcnNlRmxvYXQodC5tYXJnaW5MZWZ0KSArIHBhcnNlRmxvYXQodC5tYXJnaW5SaWdodCk7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgd2lkdGg6IGUub2Zmc2V0V2lkdGggKyBvLAogICAgICAgICAgICBoZWlnaHQ6IGUub2Zmc2V0SGVpZ2h0ICsgbgogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBUKGUpIHsKICAgICAgICB2YXIgdCA9IHsKICAgICAgICAgICAgbGVmdDogInJpZ2h0IiwKICAgICAgICAgICAgcmlnaHQ6ICJsZWZ0IiwKICAgICAgICAgICAgYm90dG9tOiAidG9wIiwKICAgICAgICAgICAgdG9wOiAiYm90dG9tIgogICAgICAgIH07CiAgICAgICAgcmV0dXJuIGUucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIHRbZV0KICAgICAgICB9KQogICAgfQoKICAgIGZ1bmN0aW9uIEQoZSwgdCwgbikgewogICAgICAgIG4gPSBuLnNwbGl0KCItIilbMF07CiAgICAgICAgdmFyIG8gPSBMKGUpLAogICAgICAgICAgICByID0gewogICAgICAgICAgICAgICAgd2lkdGg6IG8ud2lkdGgsCiAgICAgICAgICAgICAgICBoZWlnaHQ6IG8uaGVpZ2h0CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGkgPSAtMSAhPT0gWyJyaWdodCIsICJsZWZ0Il0uaW5kZXhPZihuKSwKICAgICAgICAgICAgcyA9IGkgPyAidG9wIiA6ICJsZWZ0IiwKICAgICAgICAgICAgYSA9IGkgPyAibGVmdCIgOiAidG9wIiwKICAgICAgICAgICAgZiA9IGkgPyAiaGVpZ2h0IiA6ICJ3aWR0aCIsCiAgICAgICAgICAgIHAgPSBpID8gIndpZHRoIiA6ICJoZWlnaHQiOwogICAgICAgIHJldHVybiByW3NdID0gdFtzXSArIHRbZl0gLyAyIC0gb1tmXSAvIDIsIHJbYV0gPSBuID09PSBhID8gdFthXSAtIG9bcF0gOiB0W1QoYSldLCByCiAgICB9CgogICAgZnVuY3Rpb24gTihlLCB0KSB7CiAgICAgICAgcmV0dXJuIEFycmF5LnByb3RvdHlwZS5maW5kID8gZS5maW5kKHQpIDogZS5maWx0ZXIodClbMF0KICAgIH0KCiAgICBmdW5jdGlvbiBGKGUsIG4sIHQpIHsKICAgICAgICByZXR1cm4gKHZvaWQgMCA9PT0gdCA/IGUgOiBlLnNsaWNlKDAsIGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgaWYgKEFycmF5LnByb3RvdHlwZS5maW5kSW5kZXgpIHJldHVybiBlLmZpbmRJbmRleChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZVt0XSA9PT0gbgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgdmFyIG8gPSBOKGUsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBlW3RdID09PSBuCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICByZXR1cm4gZS5pbmRleE9mKG8pCiAgICAgICAgfShlLCAibmFtZSIsIHQpKSkuZm9yRWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGUuZnVuY3Rpb24gJiYgY29uc29sZS53YXJuKCJgbW9kaWZpZXIuZnVuY3Rpb25gIGlzIGRlcHJlY2F0ZWQsIHVzZSBgbW9kaWZpZXIuZm5gISIpOwogICAgICAgICAgICB2YXIgdCA9IGUuZnVuY3Rpb24gfHwgZS5mbjsKICAgICAgICAgICAgZS5lbmFibGVkICYmIHModCkgJiYgKG4ub2Zmc2V0cy5wb3BwZXIgPSBFKG4ub2Zmc2V0cy5wb3BwZXIpLCBuLm9mZnNldHMucmVmZXJlbmNlID0gRShuLm9mZnNldHMucmVmZXJlbmNlKSwgbiA9IHQobiwgZSkpCiAgICAgICAgfSksIG4KICAgIH0KCiAgICBmdW5jdGlvbiBlKGUsIG4pIHsKICAgICAgICByZXR1cm4gZS5zb21lKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSBlLm5hbWU7CiAgICAgICAgICAgIHJldHVybiBlLmVuYWJsZWQgJiYgdCA9PT0gbgogICAgICAgIH0pCiAgICB9CgogICAgZnVuY3Rpb24gayhlKSB7CiAgICAgICAgZm9yICh2YXIgdCA9IFshMSwgIm1zIiwgIldlYmtpdCIsICJNb3oiLCAiTyJdLCBuID0gZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGUuc2xpY2UoMSksIG8gPSAwOyBvIDwgdC5sZW5ndGg7IG8rKykgewogICAgICAgICAgICB2YXIgciA9IHRbb10sCiAgICAgICAgICAgICAgICBpID0gciA/ICIiICsgciArIG4gOiBlOwogICAgICAgICAgICBpZiAodm9pZCAwICE9PSBkb2N1bWVudC5ib2R5LnN0eWxlW2ldKSByZXR1cm4gaQogICAgICAgIH0KICAgICAgICByZXR1cm4gbnVsbAogICAgfQoKICAgIGZ1bmN0aW9uIGkoZSkgewogICAgICAgIHZhciB0ID0gZS5vd25lckRvY3VtZW50OwogICAgICAgIHJldHVybiB0ID8gdC5kZWZhdWx0VmlldyA6IHdpbmRvdwogICAgfQoKICAgIGZ1bmN0aW9uIHQoZSwgdCwgbiwgbykgewogICAgICAgIG4udXBkYXRlQm91bmQgPSBvLCBpKGUpLmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsIG4udXBkYXRlQm91bmQsIHsKICAgICAgICAgICAgcGFzc2l2ZTogITAKICAgICAgICB9KTsKICAgICAgICB2YXIgciA9IGgoZSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIGUodCwgbiwgbywgcikgewogICAgICAgICAgICB2YXIgaSA9ICJCT0RZIiA9PT0gdC5ub2RlTmFtZSwKICAgICAgICAgICAgICAgIHMgPSBpID8gdC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3IDogdDsKICAgICAgICAgICAgcy5hZGRFdmVudExpc3RlbmVyKG4sIG8sIHsKICAgICAgICAgICAgICAgIHBhc3NpdmU6ICEwCiAgICAgICAgICAgIH0pLCBpIHx8IGUoaChzLnBhcmVudE5vZGUpLCBuLCBvLCByKSwgci5wdXNoKHMpCiAgICAgICAgfShyLCAic2Nyb2xsIiwgbi51cGRhdGVCb3VuZCwgbi5zY3JvbGxQYXJlbnRzKSwgbi5zY3JvbGxFbGVtZW50ID0gciwgbi5ldmVudHNFbmFibGVkID0gITAsIG4KICAgIH0KCiAgICBmdW5jdGlvbiBuKCkgewogICAgICAgIHZhciBlLCB0OwogICAgICAgIHRoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZCAmJiAoY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5zY2hlZHVsZVVwZGF0ZSksIHRoaXMuc3RhdGUgPSAoZSA9IHRoaXMucmVmZXJlbmNlLCB0ID0gdGhpcy5zdGF0ZSwgaShlKS5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLCB0LnVwZGF0ZUJvdW5kKSwgdC5zY3JvbGxQYXJlbnRzLmZvckVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIHQudXBkYXRlQm91bmQpCiAgICAgICAgfSksIHQudXBkYXRlQm91bmQgPSBudWxsLCB0LnNjcm9sbFBhcmVudHMgPSBbXSwgdC5zY3JvbGxFbGVtZW50ID0gbnVsbCwgdC5ldmVudHNFbmFibGVkID0gITEsIHQpKQogICAgfQoKICAgIGZ1bmN0aW9uIEEoZSkgewogICAgICAgIHJldHVybiAiIiAhPT0gZSAmJiAhaXNOYU4ocGFyc2VGbG9hdChlKSkgJiYgaXNGaW5pdGUoZSkKICAgIH0KCiAgICBmdW5jdGlvbiBwKG4sIG8pIHsKICAgICAgICBPYmplY3Qua2V5cyhvKS5mb3JFYWNoKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSAiIjsgLSAxICE9PSBbIndpZHRoIiwgImhlaWdodCIsICJ0b3AiLCAicmlnaHQiLCAiYm90dG9tIiwgImxlZnQiXS5pbmRleE9mKGUpICYmIEEob1tlXSkgJiYgKHQgPSAicHgiKSwgbi5zdHlsZVtlXSA9IG9bZV0gKyB0CiAgICAgICAgfSkKICAgIH0KCiAgICBmdW5jdGlvbiBTKGUsIHQsIG4pIHsKICAgICAgICB2YXIgbyA9IE4oZSwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGUubmFtZSA9PT0gdAogICAgICAgICAgICB9KSwKICAgICAgICAgICAgciA9ICEhbyAmJiBlLnNvbWUoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGUubmFtZSA9PT0gbiAmJiBlLmVuYWJsZWQgJiYgZS5vcmRlciA8IG8ub3JkZXIKICAgICAgICAgICAgfSk7CiAgICAgICAgaWYgKCFyKSB7CiAgICAgICAgICAgIHZhciBpID0gImAiICsgdCArICJgIjsKICAgICAgICAgICAgY29uc29sZS53YXJuKCJgIiArIG4gKyAiYCBtb2RpZmllciBpcyByZXF1aXJlZCBieSAiICsgaSArICIgbW9kaWZpZXIgaW4gb3JkZXIgdG8gd29yaywgYmUgc3VyZSB0byBpbmNsdWRlIGl0IGJlZm9yZSAiICsgaSArICIhIikKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHIKICAgIH0KCiAgICBmdW5jdGlvbiByKGUpIHsKICAgICAgICB2YXIgdCA9IDEgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzFdICYmIGFyZ3VtZW50c1sxXSwKICAgICAgICAgICAgbiA9IF8uaW5kZXhPZihlKSwKICAgICAgICAgICAgbyA9IF8uc2xpY2UobiArIDEpLmNvbmNhdChfLnNsaWNlKDAsIG4pKTsKICAgICAgICByZXR1cm4gdCA/IG8ucmV2ZXJzZSgpIDogbwogICAgfQoKICAgIGZ1bmN0aW9uIEgoZSwgciwgaSwgdCkgewogICAgICAgIHZhciBzID0gWzAsIDBdLAogICAgICAgICAgICBhID0gLTEgIT09IFsicmlnaHQiLCAibGVmdCJdLmluZGV4T2YodCksCiAgICAgICAgICAgIG4gPSBlLnNwbGl0KC8oXCt8XC0pLykubWFwKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBlLnRyaW0oKQogICAgICAgICAgICB9KSwKICAgICAgICAgICAgbyA9IG4uaW5kZXhPZihOKG4sIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiAtMSAhPT0gZS5zZWFyY2goLyx8XHMvKQogICAgICAgICAgICB9KSk7CiAgICAgICAgbltvXSAmJiAtMSA9PT0gbltvXS5pbmRleE9mKCIsIikgJiYgY29uc29sZS53YXJuKCJPZmZzZXRzIHNlcGFyYXRlZCBieSB3aGl0ZSBzcGFjZShzKSBhcmUgZGVwcmVjYXRlZCwgdXNlIGEgY29tbWEgKCwpIGluc3RlYWQuIik7CiAgICAgICAgdmFyIGYgPSAvXHMqLFxzKnxccysvLAogICAgICAgICAgICBwID0gLTEgPT09IG8gPyBbbl0gOiBbbi5zbGljZSgwLCBvKS5jb25jYXQoW25bb10uc3BsaXQoZilbMF1dKSwgW25bb10uc3BsaXQoZilbMV1dLmNvbmNhdChuLnNsaWNlKG8gKyAxKSldOwogICAgICAgIHJldHVybiAocCA9IHAubWFwKGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIG4gPSAoMSA9PT0gdCA/ICFhIDogYSkgPyAiaGVpZ2h0IiA6ICJ3aWR0aCIsCiAgICAgICAgICAgICAgICBvID0gITE7CiAgICAgICAgICAgIHJldHVybiBlLnJlZHVjZShmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gIiIgPT09IGVbZS5sZW5ndGggLSAxXSAmJiAtMSAhPT0gWyIrIiwgIi0iXS5pbmRleE9mKHQpID8gKGVbZS5sZW5ndGggLSAxXSA9IHQsIG8gPSAhMCwgZSkgOiBvID8gKGVbZS5sZW5ndGggLSAxXSArPSB0LCBvID0gITEsIGUpIDogZS5jb25jYXQodCkKICAgICAgICAgICAgfSwgW10pLm1hcChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oZSwgdCwgbiwgbykgewogICAgICAgICAgICAgICAgICAgIHZhciByLCBpID0gZS5tYXRjaCgvKCg/OlwtfFwrKT9cZCpcLj9cZCopKC4qKS8pLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gK2lbMV0sCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBpWzJdOwogICAgICAgICAgICAgICAgICAgIGlmICghcykgcmV0dXJuIGU7CiAgICAgICAgICAgICAgICAgICAgaWYgKDAgIT09IGEuaW5kZXhPZigiJSIpKSByZXR1cm4gInZoIiAhPT0gYSAmJiAidnciICE9PSBhID8gcyA6ICgidmgiID09PSBhID8gQyhkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0LCB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgMCkgOiBDKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCwgd2luZG93LmlubmVyV2lkdGggfHwgMCkpIC8gMTAwICogczsKICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiJXAiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IG47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiJSI6CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIiVyIjoKICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBvCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJldHVybiBFKHIpW3RdIC8gMTAwICogcwogICAgICAgICAgICAgICAgfShlLCBuLCByLCBpKQogICAgICAgICAgICB9KQogICAgICAgIH0pKS5mb3JFYWNoKGZ1bmN0aW9uKG4sIG8pIHsKICAgICAgICAgICAgbi5mb3JFYWNoKGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIEEoZSkgJiYgKHNbb10gKz0gZSAqICgiLSIgPT09IG5bdCAtIDFdID8gLTEgOiAxKSkKICAgICAgICAgICAgfSkKICAgICAgICB9KSwgcwogICAgfQogICAgZm9yICh2YXIgUCA9IE1hdGgubWluLCBCID0gTWF0aC5mbG9vciwgQyA9IE1hdGgubWF4LCBXID0gInVuZGVmaW5lZCIgIT0gdHlwZW9mIHdpbmRvdyAmJiAidW5kZWZpbmVkIiAhPSB0eXBlb2YgZG9jdW1lbnQsIE0gPSBbIkVkZ2UiLCAiVHJpZGVudCIsICJGaXJlZm94Il0sIGogPSAwLCBSID0gMDsgUiA8IE0ubGVuZ3RoOyBSICs9IDEpCiAgICAgICAgaWYgKFcgJiYgMCA8PSBuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoTVtSXSkpIHsKICAgICAgICAgICAgaiA9IDE7CiAgICAgICAgICAgIGJyZWFrCiAgICAgICAgfQogICAgdmFyIEkgPSBXICYmIHdpbmRvdy5Qcm9taXNlID8gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCA9ICExOwogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0IHx8ICh0ID0gITAsIHdpbmRvdy5Qcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHQgPSAhMSwgZSgpCiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfQogICAgICAgIH0gOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gITE7CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHQgfHwgKHQgPSAhMCwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB0ID0gITEsIGUoKQogICAgICAgICAgICAgICAgfSwgaikpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIFUgPSB7fSwKICAgICAgICBZID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gMCA8IGFyZ3VtZW50cy5sZW5ndGggJiYgdm9pZCAwICE9PSBhcmd1bWVudHNbMF0gPyBhcmd1bWVudHNbMF0gOiAiYWxsIjsKICAgICAgICAgICAgcmV0dXJuIGUgPSBlLnRvU3RyaW5nKCksIFUuaGFzT3duUHJvcGVydHkoZSkgfHwgKCIxMSIgPT09IGUgPyBVW2VdID0gLTEgIT09IG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiVHJpZGVudCIpIDogIjEwIiA9PT0gZSA/IFVbZV0gPSAtMSAhPT0gbmF2aWdhdG9yLmFwcFZlcnNpb24uaW5kZXhPZigiTVNJRSAxMCIpIDogImFsbCIgPT09IGUgJiYgKFVbZV0gPSAtMSAhPT0gbmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJUcmlkZW50IikgfHwgLTEgIT09IG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiTVNJRSIpKSwgVS5hbGwgPSBVLmFsbCB8fCBPYmplY3Qua2V5cyhVKS5zb21lKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBVW2VdCiAgICAgICAgICAgIH0pKSwgVVtlXQogICAgICAgIH0sCiAgICAgICAgcSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBmdW5jdGlvbiBvKGUsIHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIG4sIG8gPSAwOyBvIDwgdC5sZW5ndGg7IG8rKykobiA9IHRbb10pLmVudW1lcmFibGUgPSBuLmVudW1lcmFibGUgfHwgITEsIG4uY29uZmlndXJhYmxlID0gITAsICJ2YWx1ZSIgaW4gbiAmJiAobi53cml0YWJsZSA9ICEwKSwgT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIG4ua2V5LCBuKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbihlLCB0LCBuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdCAmJiBvKGUucHJvdG90eXBlLCB0KSwgbiAmJiBvKGUsIG4pLCBlCiAgICAgICAgICAgIH0KICAgICAgICB9KCksCiAgICAgICAgViA9IGZ1bmN0aW9uKGUsIHQsIG4pIHsKICAgICAgICAgICAgcmV0dXJuIHQgaW4gZSA/IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCB0LCB7CiAgICAgICAgICAgICAgICB2YWx1ZTogbiwKICAgICAgICAgICAgICAgIGVudW1lcmFibGU6ICEwLAogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiAhMCwKICAgICAgICAgICAgICAgIHdyaXRhYmxlOiAhMAogICAgICAgICAgICB9KSA6IGVbdF0gPSBuLCBlCiAgICAgICAgfSwKICAgICAgICB6ID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGZvciAodmFyIHQsIG4gPSAxOyBuIDwgYXJndW1lbnRzLmxlbmd0aDsgbisrKQogICAgICAgICAgICAgICAgZm9yICh2YXIgbyBpbiB0ID0gYXJndW1lbnRzW25dKSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCwgbykgJiYgKGVbb10gPSB0W29dKTsKICAgICAgICAgICAgcmV0dXJuIGUKICAgICAgICB9LAogICAgICAgIEcgPSBbImF1dG8tc3RhcnQiLCAiYXV0byIsICJhdXRvLWVuZCIsICJ0b3Atc3RhcnQiLCAidG9wIiwgInRvcC1lbmQiLCAicmlnaHQtc3RhcnQiLCAicmlnaHQiLCAicmlnaHQtZW5kIiwgImJvdHRvbS1lbmQiLCAiYm90dG9tIiwgImJvdHRvbS1zdGFydCIsICJsZWZ0LWVuZCIsICJsZWZ0IiwgImxlZnQtc3RhcnQiXSwKICAgICAgICBfID0gRy5zbGljZSgzKSwKICAgICAgICBYID0gImZsaXAiLAogICAgICAgIEogPSAiY2xvY2t3aXNlIiwKICAgICAgICBLID0gImNvdW50ZXJjbG9ja3dpc2UiLAogICAgICAgIFEgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZnVuY3Rpb24gaShlLCB0KSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgbyA9IDIgPCBhcmd1bWVudHMubGVuZ3RoICYmIHZvaWQgMCAhPT0gYXJndW1lbnRzWzJdID8gYXJndW1lbnRzWzJdIDoge307CiAgICAgICAgICAgICAgICAoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiB0KSkgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIikKICAgICAgICAgICAgICAgIH0pKHRoaXMsIGkpLCB0aGlzLnNjaGVkdWxlVXBkYXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3RBbmltYXRpb25GcmFtZShuLnVwZGF0ZSkKICAgICAgICAgICAgICAgIH0sIHRoaXMudXBkYXRlID0gSSh0aGlzLnVwZGF0ZS5iaW5kKHRoaXMpKSwgdGhpcy5vcHRpb25zID0geih7fSwgaS5EZWZhdWx0cywgbyksIHRoaXMuc3RhdGUgPSB7CiAgICAgICAgICAgICAgICAgICAgaXNEZXN0cm95ZWQ6ICExLAogICAgICAgICAgICAgICAgICAgIGlzQ3JlYXRlZDogITEsCiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsUGFyZW50czogW10KICAgICAgICAgICAgICAgIH0sIHRoaXMucmVmZXJlbmNlID0gZSAmJiBlLmpxdWVyeSA/IGVbMF0gOiBlLCB0aGlzLnBvcHBlciA9IHQgJiYgdC5qcXVlcnkgPyB0WzBdIDogdCwgdGhpcy5vcHRpb25zLm1vZGlmaWVycyA9IHt9LCBPYmplY3Qua2V5cyh6KHt9LCBpLkRlZmF1bHRzLm1vZGlmaWVycywgby5tb2RpZmllcnMpKS5mb3JFYWNoKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICBuLm9wdGlvbnMubW9kaWZpZXJzW2VdID0geih7fSwgaS5EZWZhdWx0cy5tb2RpZmllcnNbZV0gfHwge30sIG8ubW9kaWZpZXJzID8gby5tb2RpZmllcnNbZV0gOiB7fSkKICAgICAgICAgICAgICAgIH0pLCB0aGlzLm1vZGlmaWVycyA9IE9iamVjdC5rZXlzKHRoaXMub3B0aW9ucy5tb2RpZmllcnMpLm1hcChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHooewogICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBlCiAgICAgICAgICAgICAgICAgICAgfSwgbi5vcHRpb25zLm1vZGlmaWVyc1tlXSkKICAgICAgICAgICAgICAgIH0pLnNvcnQoZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLm9yZGVyIC0gdC5vcmRlcgogICAgICAgICAgICAgICAgfSksIHRoaXMubW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIGUuZW5hYmxlZCAmJiBzKGUub25Mb2FkKSAmJiBlLm9uTG9hZChuLnJlZmVyZW5jZSwgbi5wb3BwZXIsIG4ub3B0aW9ucywgZSwgbi5zdGF0ZSkKICAgICAgICAgICAgICAgIH0pLCB0aGlzLnVwZGF0ZSgpOwogICAgICAgICAgICAgICAgdmFyIHIgPSB0aGlzLm9wdGlvbnMuZXZlbnRzRW5hYmxlZDsKICAgICAgICAgICAgICAgIHIgJiYgdGhpcy5lbmFibGVFdmVudExpc3RlbmVycygpLCB0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQgPSByCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHEoaSwgW3sKICAgICAgICAgICAgICAgIGtleTogInVwZGF0ZSIsCiAgICAgICAgICAgICAgICB2YWx1ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuc3RhdGUuaXNEZXN0cm95ZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlOiB0aGlzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlczoge30sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyb3dTdHlsZXM6IHt9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IHt9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsaXBwZWQ6ICExLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldHM6IHt9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5vZmZzZXRzLnJlZmVyZW5jZSA9IGYodGhpcy5zdGF0ZSwgdGhpcy5wb3BwZXIsIHRoaXMucmVmZXJlbmNlLCB0aGlzLm9wdGlvbnMucG9zaXRpb25GaXhlZCksIGUucGxhY2VtZW50ID0gYSh0aGlzLm9wdGlvbnMucGxhY2VtZW50LCBlLm9mZnNldHMucmVmZXJlbmNlLCB0aGlzLnBvcHBlciwgdGhpcy5yZWZlcmVuY2UsIHRoaXMub3B0aW9ucy5tb2RpZmllcnMuZmxpcC5ib3VuZGFyaWVzRWxlbWVudCwgdGhpcy5vcHRpb25zLm1vZGlmaWVycy5mbGlwLnBhZGRpbmcpLCBlLm9yaWdpbmFsUGxhY2VtZW50ID0gZS5wbGFjZW1lbnQsIGUucG9zaXRpb25GaXhlZCA9IHRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkLCBlLm9mZnNldHMucG9wcGVyID0gRCh0aGlzLnBvcHBlciwgZS5vZmZzZXRzLnJlZmVyZW5jZSwgZS5wbGFjZW1lbnQpLCBlLm9mZnNldHMucG9wcGVyLnBvc2l0aW9uID0gdGhpcy5vcHRpb25zLnBvc2l0aW9uRml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIiwgZSA9IEYodGhpcy5tb2RpZmllcnMsIGUpLCB0aGlzLnN0YXRlLmlzQ3JlYXRlZCA/IHRoaXMub3B0aW9ucy5vblVwZGF0ZShlKSA6ICh0aGlzLnN0YXRlLmlzQ3JlYXRlZCA9ICEwLCB0aGlzLm9wdGlvbnMub25DcmVhdGUoZSkpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9LmNhbGwodGhpcykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAga2V5OiAiZGVzdHJveSIsCiAgICAgICAgICAgICAgICB2YWx1ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc0Rlc3Ryb3llZCA9ICEwLCBlKHRoaXMubW9kaWZpZXJzLCAiYXBwbHlTdHlsZSIpICYmICh0aGlzLnBvcHBlci5yZW1vdmVBdHRyaWJ1dGUoIngtcGxhY2VtZW50IiksIHRoaXMucG9wcGVyLnN0eWxlLnBvc2l0aW9uID0gIiIsIHRoaXMucG9wcGVyLnN0eWxlLnRvcCA9ICIiLCB0aGlzLnBvcHBlci5zdHlsZS5sZWZ0ID0gIiIsIHRoaXMucG9wcGVyLnN0eWxlLnJpZ2h0ID0gIiIsIHRoaXMucG9wcGVyLnN0eWxlLmJvdHRvbSA9ICIiLCB0aGlzLnBvcHBlci5zdHlsZS53aWxsQ2hhbmdlID0gIiIsIHRoaXMucG9wcGVyLnN0eWxlW2soInRyYW5zZm9ybSIpXSA9ICIiKSwgdGhpcy5kaXNhYmxlRXZlbnRMaXN0ZW5lcnMoKSwgdGhpcy5vcHRpb25zLnJlbW92ZU9uRGVzdHJveSAmJiB0aGlzLnBvcHBlci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMucG9wcGVyKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0uY2FsbCh0aGlzKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJlbmFibGVFdmVudExpc3RlbmVycyIsCiAgICAgICAgICAgICAgICB2YWx1ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQgfHwgKHRoaXMuc3RhdGUgPSB0KHRoaXMucmVmZXJlbmNlLCB0aGlzLm9wdGlvbnMsIHRoaXMuc3RhdGUsIHRoaXMuc2NoZWR1bGVVcGRhdGUpKQogICAgICAgICAgICAgICAgICAgIH0uY2FsbCh0aGlzKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJkaXNhYmxlRXZlbnRMaXN0ZW5lcnMiLAogICAgICAgICAgICAgICAgdmFsdWU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuLmNhbGwodGhpcykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfV0pLCBpCiAgICAgICAgfSgpOwogICAgcmV0dXJuIFEuVXRpbHMgPSAoInVuZGVmaW5lZCIgPT0gdHlwZW9mIHdpbmRvdyA/IGdsb2JhbCA6IHdpbmRvdykuUG9wcGVyVXRpbHMsIFEucGxhY2VtZW50cyA9IEcsIFEuRGVmYXVsdHMgPSB7CiAgICAgICAgcGxhY2VtZW50OiAiYm90dG9tIiwKICAgICAgICBwb3NpdGlvbkZpeGVkOiAhMSwKICAgICAgICBldmVudHNFbmFibGVkOiAhMCwKICAgICAgICByZW1vdmVPbkRlc3Ryb3k6ICExLAogICAgICAgIG9uQ3JlYXRlOiBmdW5jdGlvbigpIHt9LAogICAgICAgIG9uVXBkYXRlOiBmdW5jdGlvbigpIHt9LAogICAgICAgIG1vZGlmaWVyczogewogICAgICAgICAgICBzaGlmdDogewogICAgICAgICAgICAgICAgb3JkZXI6IDEwMCwKICAgICAgICAgICAgICAgIGVuYWJsZWQ6ICEwLAogICAgICAgICAgICAgICAgZm46IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUucGxhY2VtZW50LAogICAgICAgICAgICAgICAgICAgICAgICBuID0gdC5zcGxpdCgiLSIpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gdC5zcGxpdCgiLSIpWzFdOwogICAgICAgICAgICAgICAgICAgIGlmIChvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByID0gZS5vZmZzZXRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHIucmVmZXJlbmNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcyA9IHIucG9wcGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA9IC0xICE9PSBbImJvdHRvbSIsICJ0b3AiXS5pbmRleE9mKG4pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZiA9IGEgPyAibGVmdCIgOiAidG9wIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBhID8gIndpZHRoIiA6ICJoZWlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydDogVih7fSwgZiwgaVtmXSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kOiBWKHt9LCBmLCBpW2ZdICsgaVtwXSAtIHNbcF0pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICBlLm9mZnNldHMucG9wcGVyID0geih7fSwgcywgbFtvXSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgb2Zmc2V0OiB7CiAgICAgICAgICAgICAgICBvcmRlcjogMjAwLAogICAgICAgICAgICAgICAgZW5hYmxlZDogITAsCiAgICAgICAgICAgICAgICBmbjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIHZhciBuLCBvID0gdC5vZmZzZXQsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBlLnBsYWNlbWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUub2Zmc2V0cywKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IGkucG9wcGVyLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gaS5yZWZlcmVuY2UsCiAgICAgICAgICAgICAgICAgICAgICAgIGYgPSByLnNwbGl0KCItIilbMF07CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4gPSBBKCtvKSA/IFsrbywgMF0gOiBIKG8sIHMsIGEsIGYpLCAibGVmdCIgPT09IGYgPyAocy50b3AgKz0gblswXSwgcy5sZWZ0IC09IG5bMV0pIDogInJpZ2h0IiA9PT0gZiA/IChzLnRvcCArPSBuWzBdLCBzLmxlZnQgKz0gblsxXSkgOiAidG9wIiA9PT0gZiA/IChzLmxlZnQgKz0gblswXSwgcy50b3AgLT0gblsxXSkgOiAiYm90dG9tIiA9PT0gZiAmJiAocy5sZWZ0ICs9IG5bMF0sIHMudG9wICs9IG5bMV0pLCBlLnBvcHBlciA9IHMsIGUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvZmZzZXQ6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgcHJldmVudE92ZXJmbG93OiB7CiAgICAgICAgICAgICAgICBvcmRlcjogMzAwLAogICAgICAgICAgICAgICAgZW5hYmxlZDogITAsCiAgICAgICAgICAgICAgICBmbjogZnVuY3Rpb24oZSwgbykgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gby5ib3VuZGFyaWVzRWxlbWVudCB8fCBiKGUuaW5zdGFuY2UucG9wcGVyKTsKICAgICAgICAgICAgICAgICAgICBlLmluc3RhbmNlLnJlZmVyZW5jZSA9PT0gdCAmJiAodCA9IGIodCkpOwogICAgICAgICAgICAgICAgICAgIHZhciByID0gTyhlLmluc3RhbmNlLnBvcHBlciwgZS5pbnN0YW5jZS5yZWZlcmVuY2UsIG8ucGFkZGluZywgdCwgZS5wb3NpdGlvbkZpeGVkKTsKICAgICAgICAgICAgICAgICAgICBvLmJvdW5kYXJpZXMgPSByOwogICAgICAgICAgICAgICAgICAgIHZhciBuID0gby5wcmlvcml0eSwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUub2Zmc2V0cy5wb3BwZXIsCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmltYXJ5OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBpW2VdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpW2VdIDwgcltlXSAmJiAhby5lc2NhcGVXaXRoUmVmZXJlbmNlICYmICh0ID0gQyhpW2VdLCByW2VdKSksIFYoe30sIGUsIHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5OiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSAicmlnaHQiID09PSBlID8gImxlZnQiIDogInRvcCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBpW3RdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpW2VdID4gcltlXSAmJiAhby5lc2NhcGVXaXRoUmVmZXJlbmNlICYmIChuID0gUChpW3RdLCByW2VdIC0gKCJyaWdodCIgPT09IGUgPyBpLndpZHRoIDogaS5oZWlnaHQpKSksIFYoe30sIHQsIG4pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gLTEgPT09IFsibGVmdCIsICJ0b3AiXS5pbmRleE9mKGUpID8gInNlY29uZGFyeSIgOiAicHJpbWFyeSI7CiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSB6KHt9LCBpLCBzW3RdKGUpKQogICAgICAgICAgICAgICAgICAgIH0pLCBlLm9mZnNldHMucG9wcGVyID0gaSwgZQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHByaW9yaXR5OiBbImxlZnQiLCAicmlnaHQiLCAidG9wIiwgImJvdHRvbSJdLAogICAgICAgICAgICAgICAgcGFkZGluZzogNSwKICAgICAgICAgICAgICAgIGJvdW5kYXJpZXNFbGVtZW50OiAic2Nyb2xsUGFyZW50IgogICAgICAgICAgICB9LAogICAgICAgICAgICBrZWVwVG9nZXRoZXI6IHsKICAgICAgICAgICAgICAgIG9yZGVyOiA0MDAsCiAgICAgICAgICAgICAgICBlbmFibGVkOiAhMCwKICAgICAgICAgICAgICAgIGZuOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBlLm9mZnNldHMsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSB0LnBvcHBlciwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHQucmVmZXJlbmNlLAogICAgICAgICAgICAgICAgICAgICAgICByID0gZS5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IEIsCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSAtMSAhPT0gWyJ0b3AiLCAiYm90dG9tIl0uaW5kZXhPZihyKSwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IHMgPyAicmlnaHQiIDogImJvdHRvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGYgPSBzID8gImxlZnQiIDogInRvcCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBzID8gIndpZHRoIiA6ICJoZWlnaHQiOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuW2FdIDwgaShvW2ZdKSAmJiAoZS5vZmZzZXRzLnBvcHBlcltmXSA9IGkob1tmXSkgLSBuW3BdKSwgbltmXSA+IGkob1thXSkgJiYgKGUub2Zmc2V0cy5wb3BwZXJbZl0gPSBpKG9bYV0pKSwgZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBhcnJvdzogewogICAgICAgICAgICAgICAgb3JkZXI6IDUwMCwKICAgICAgICAgICAgICAgIGVuYWJsZWQ6ICEwLAogICAgICAgICAgICAgICAgZm46IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbjsKICAgICAgICAgICAgICAgICAgICBpZiAoIVMoZS5pbnN0YW5jZS5tb2RpZmllcnMsICJhcnJvdyIsICJrZWVwVG9nZXRoZXIiKSkgcmV0dXJuIGU7CiAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSB0LmVsZW1lbnQ7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJzdHJpbmciID09IHR5cGVvZiBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghKG8gPSBlLmluc3RhbmNlLnBvcHBlci5xdWVyeVNlbGVjdG9yKG8pKSkgcmV0dXJuIGUKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFlLmluc3RhbmNlLnBvcHBlci5jb250YWlucyhvKSkgcmV0dXJuIGNvbnNvbGUud2FybigiV0FSTklORzogYGFycm93LmVsZW1lbnRgIG11c3QgYmUgY2hpbGQgb2YgaXRzIHBvcHBlciBlbGVtZW50ISIpLCBlOwogICAgICAgICAgICAgICAgICAgIHZhciByID0gZS5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUub2Zmc2V0cywKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IGkucG9wcGVyLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gaS5yZWZlcmVuY2UsCiAgICAgICAgICAgICAgICAgICAgICAgIGYgPSAtMSAhPT0gWyJsZWZ0IiwgInJpZ2h0Il0uaW5kZXhPZihyKSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IGYgPyAiaGVpZ2h0IiA6ICJ3aWR0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGwgPSBmID8gIlRvcCIgOiAiTGVmdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBsLnRvTG93ZXJDYXNlKCksCiAgICAgICAgICAgICAgICAgICAgICAgIGQgPSBmID8gImxlZnQiIDogInRvcCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBmID8gImJvdHRvbSIgOiAicmlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gTChvKVtwXTsKICAgICAgICAgICAgICAgICAgICBhW2NdIC0gaCA8IHNbdV0gJiYgKGUub2Zmc2V0cy5wb3BwZXJbdV0gLT0gc1t1XSAtIChhW2NdIC0gaCkpLCBhW3VdICsgaCA+IHNbY10gJiYgKGUub2Zmc2V0cy5wb3BwZXJbdV0gKz0gYVt1XSArIGggLSBzW2NdKSwgZS5vZmZzZXRzLnBvcHBlciA9IEUoZS5vZmZzZXRzLnBvcHBlcik7CiAgICAgICAgICAgICAgICAgICAgdmFyIG0gPSBhW3VdICsgYVtwXSAvIDIgLSBoIC8gMiwKICAgICAgICAgICAgICAgICAgICAgICAgZyA9IHkoZS5pbnN0YW5jZS5wb3BwZXIpLAogICAgICAgICAgICAgICAgICAgICAgICB2ID0gcGFyc2VGbG9hdChnWyJtYXJnaW4iICsgbF0sIDEwKSwKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IHBhcnNlRmxvYXQoZ1siYm9yZGVyIiArIGwgKyAiV2lkdGgiXSwgMTApLAogICAgICAgICAgICAgICAgICAgICAgICB3ID0gbSAtIGUub2Zmc2V0cy5wb3BwZXJbdV0gLSB2IC0gYjsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdyA9IEMoUChzW3BdIC0gaCwgdyksIDApLCBlLmFycm93RWxlbWVudCA9IG8sIGUub2Zmc2V0cy5hcnJvdyA9IChWKG4gPSB7fSwgdSwgTWF0aC5yb3VuZCh3KSksIFYobiwgZCwgIiIpLCBuKSwgZQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGVsZW1lbnQ6ICJbeC1hcnJvd10iCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGZsaXA6IHsKICAgICAgICAgICAgICAgIG9yZGVyOiA2MDAsCiAgICAgICAgICAgICAgICBlbmFibGVkOiAhMCwKICAgICAgICAgICAgICAgIGZuOiBmdW5jdGlvbihoLCBtKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUoaC5pbnN0YW5jZS5tb2RpZmllcnMsICJpbm5lciIpKSByZXR1cm4gaDsKICAgICAgICAgICAgICAgICAgICBpZiAoaC5mbGlwcGVkICYmIGgucGxhY2VtZW50ID09PSBoLm9yaWdpbmFsUGxhY2VtZW50KSByZXR1cm4gaDsKICAgICAgICAgICAgICAgICAgICB2YXIgZyA9IE8oaC5pbnN0YW5jZS5wb3BwZXIsIGguaW5zdGFuY2UucmVmZXJlbmNlLCBtLnBhZGRpbmcsIG0uYm91bmRhcmllc0VsZW1lbnQsIGgucG9zaXRpb25GaXhlZCksCiAgICAgICAgICAgICAgICAgICAgICAgIHYgPSBoLnBsYWNlbWVudC5zcGxpdCgiLSIpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICBiID0gVCh2KSwKICAgICAgICAgICAgICAgICAgICAgICAgdyA9IGgucGxhY2VtZW50LnNwbGl0KCItIilbMV0gfHwgIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIHkgPSBbXTsKICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKG0uYmVoYXZpb3IpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBYOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgeSA9IFt2LCBiXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlIEo6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ID0gcih2KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlIEs6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ID0gcih2LCAhMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgPSBtLmJlaGF2aW9yCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJldHVybiB5LmZvckVhY2goZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAodiAhPT0gZSB8fCB5Lmxlbmd0aCA9PT0gdCArIDEpIHJldHVybiBoOwogICAgICAgICAgICAgICAgICAgICAgICB2ID0gaC5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSwgYiA9IFQodik7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBuLCBvID0gaC5vZmZzZXRzLnBvcHBlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBoLm9mZnNldHMucmVmZXJlbmNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IEIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gImxlZnQiID09PSB2ICYmIGkoby5yaWdodCkgPiBpKHIubGVmdCkgfHwgInJpZ2h0IiA9PT0gdiAmJiBpKG8ubGVmdCkgPCBpKHIucmlnaHQpIHx8ICJ0b3AiID09PSB2ICYmIGkoby5ib3R0b20pID4gaShyLnRvcCkgfHwgImJvdHRvbSIgPT09IHYgJiYgaShvLnRvcCkgPCBpKHIuYm90dG9tKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBpKG8ubGVmdCkgPCBpKGcubGVmdCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmID0gaShvLnJpZ2h0KSA+IGkoZy5yaWdodCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwID0gaShvLnRvcCkgPCBpKGcudG9wKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGwgPSBpKG8uYm90dG9tKSA+IGkoZy5ib3R0b20pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdSA9ICJsZWZ0IiA9PT0gdiAmJiBhIHx8ICJyaWdodCIgPT09IHYgJiYgZiB8fCAidG9wIiA9PT0gdiAmJiBwIHx8ICJib3R0b20iID09PSB2ICYmIGwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkID0gLTEgIT09IFsidG9wIiwgImJvdHRvbSJdLmluZGV4T2YodiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjID0gISFtLmZsaXBWYXJpYXRpb25zICYmIChkICYmICJzdGFydCIgPT09IHcgJiYgYSB8fCBkICYmICJlbmQiID09PSB3ICYmIGYgfHwgIWQgJiYgInN0YXJ0IiA9PT0gdyAmJiBwIHx8ICFkICYmICJlbmQiID09PSB3ICYmIGwpOwogICAgICAgICAgICAgICAgICAgICAgICAocyB8fCB1IHx8IGMpICYmIChoLmZsaXBwZWQgPSAhMCwgKHMgfHwgdSkgJiYgKHYgPSB5W3QgKyAxXSksIGMgJiYgKHcgPSAiZW5kIiA9PT0gKG4gPSB3KSA/ICJzdGFydCIgOiAic3RhcnQiID09PSBuID8gImVuZCIgOiBuKSwgaC5wbGFjZW1lbnQgPSB2ICsgKHcgPyAiLSIgKyB3IDogIiIpLCBoLm9mZnNldHMucG9wcGVyID0geih7fSwgaC5vZmZzZXRzLnBvcHBlciwgRChoLmluc3RhbmNlLnBvcHBlciwgaC5vZmZzZXRzLnJlZmVyZW5jZSwgaC5wbGFjZW1lbnQpKSwgaCA9IEYoaC5pbnN0YW5jZS5tb2RpZmllcnMsIGgsICJmbGlwIikpCiAgICAgICAgICAgICAgICAgICAgfSksIGgKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBiZWhhdmlvcjogImZsaXAiLAogICAgICAgICAgICAgICAgcGFkZGluZzogNSwKICAgICAgICAgICAgICAgIGJvdW5kYXJpZXNFbGVtZW50OiAidmlld3BvcnQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGlubmVyOiB7CiAgICAgICAgICAgICAgICBvcmRlcjogNzAwLAogICAgICAgICAgICAgICAgZW5hYmxlZDogITEsCiAgICAgICAgICAgICAgICBmbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gZS5wbGFjZW1lbnQsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSB0LnNwbGl0KCItIilbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBlLm9mZnNldHMsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBvLnBvcHBlciwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IG8ucmVmZXJlbmNlLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gLTEgIT09IFsibGVmdCIsICJyaWdodCJdLmluZGV4T2YobiksCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSAtMSA9PT0gWyJ0b3AiLCAibGVmdCJdLmluZGV4T2Yobik7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJbcyA/ICJsZWZ0IiA6ICJ0b3AiXSA9IGlbbl0gLSAoYSA/IHJbcyA/ICJ3aWR0aCIgOiAiaGVpZ2h0Il0gOiAwKSwgZS5wbGFjZW1lbnQgPSBUKHQpLCBlLm9mZnNldHMucG9wcGVyID0gRShyKSwgZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBoaWRlOiB7CiAgICAgICAgICAgICAgICBvcmRlcjogODAwLAogICAgICAgICAgICAgICAgZW5hYmxlZDogITAsCiAgICAgICAgICAgICAgICBmbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIGlmICghUyhlLmluc3RhbmNlLm1vZGlmaWVycywgImhpZGUiLCAicHJldmVudE92ZXJmbG93IikpIHJldHVybiBlOwogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gZS5vZmZzZXRzLnJlZmVyZW5jZSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IE4oZS5pbnN0YW5jZS5tb2RpZmllcnMsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAicHJldmVudE92ZXJmbG93IiA9PT0gZS5uYW1lCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLmJvdW5kYXJpZXM7CiAgICAgICAgICAgICAgICAgICAgaWYgKHQuYm90dG9tIDwgbi50b3AgfHwgdC5sZWZ0ID4gbi5yaWdodCB8fCB0LnRvcCA+IG4uYm90dG9tIHx8IHQucmlnaHQgPCBuLmxlZnQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEwID09PSBlLmhpZGUpIHJldHVybiBlOwogICAgICAgICAgICAgICAgICAgICAgICBlLmhpZGUgPSAhMCwgZS5hdHRyaWJ1dGVzWyJ4LW91dC1vZi1ib3VuZGFyaWVzIl0gPSAiIgogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghMSA9PT0gZS5oaWRlKSByZXR1cm4gZTsKICAgICAgICAgICAgICAgICAgICAgICAgZS5oaWRlID0gITEsIGUuYXR0cmlidXRlc1sieC1vdXQtb2YtYm91bmRhcmllcyJdID0gITEKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgY29tcHV0ZVN0eWxlOiB7CiAgICAgICAgICAgICAgICBvcmRlcjogODUwLAogICAgICAgICAgICAgICAgZW5hYmxlZDogITAsCiAgICAgICAgICAgICAgICBmbjogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gdC54LAogICAgICAgICAgICAgICAgICAgICAgICBvID0gdC55LAogICAgICAgICAgICAgICAgICAgICAgICByID0gZS5vZmZzZXRzLnBvcHBlciwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IE4oZS5pbnN0YW5jZS5tb2RpZmllcnMsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiYXBwbHlTdHlsZSIgPT09IGUubmFtZQogICAgICAgICAgICAgICAgICAgICAgICB9KS5ncHVBY2NlbGVyYXRpb247CiAgICAgICAgICAgICAgICAgICAgdm9pZCAwICE9PSBpICYmIGNvbnNvbGUud2FybigiV0FSTklORzogYGdwdUFjY2VsZXJhdGlvbmAgb3B0aW9uIG1vdmVkIHRvIGBjb21wdXRlU3R5bGVgIG1vZGlmaWVyIGFuZCB3aWxsIG5vdCBiZSBzdXBwb3J0ZWQgaW4gZnV0dXJlIHZlcnNpb25zIG9mIFBvcHBlci5qcyEiKTsKICAgICAgICAgICAgICAgICAgICB2YXIgcywgYSwgZiA9IHZvaWQgMCA9PT0gaSA/IHQuZ3B1QWNjZWxlcmF0aW9uIDogaSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IHcoYihlLmluc3RhbmNlLnBvcHBlcikpLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHIucG9zaXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgdSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IEIoci5sZWZ0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogQihyLnRvcCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IEIoci5ib3R0b20pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IEIoci5yaWdodCkKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9ICJib3R0b20iID09PSBuID8gInRvcCIgOiAiYm90dG9tIiwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9ICJyaWdodCIgPT09IG8gPyAibGVmdCIgOiAicmlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gaygidHJhbnNmb3JtIik7CiAgICAgICAgICAgICAgICAgICAgaWYgKGEgPSAiYm90dG9tIiA9PSBkID8gLXAuaGVpZ2h0ICsgdS5ib3R0b20gOiB1LnRvcCwgcyA9ICJyaWdodCIgPT0gYyA/IC1wLndpZHRoICsgdS5yaWdodCA6IHUubGVmdCwgZiAmJiBoKSBsW2hdID0gInRyYW5zbGF0ZTNkKCIgKyBzICsgInB4LCAiICsgYSArICJweCwgMCkiLCBsW2RdID0gMCwgbFtjXSA9IDAsIGwud2lsbENoYW5nZSA9ICJ0cmFuc2Zvcm0iOwogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbSA9ICJib3R0b20iID09IGQgPyAtMSA6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnID0gInJpZ2h0IiA9PSBjID8gLTEgOiAxOwogICAgICAgICAgICAgICAgICAgICAgICBsW2RdID0gYSAqIG0sIGxbY10gPSBzICogZywgbC53aWxsQ2hhbmdlID0gZCArICIsICIgKyBjCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHZhciB2ID0gewogICAgICAgICAgICAgICAgICAgICAgICAieC1wbGFjZW1lbnQiOiBlLnBsYWNlbWVudAogICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuYXR0cmlidXRlcyA9IHooe30sIHYsIGUuYXR0cmlidXRlcyksIGUuc3R5bGVzID0geih7fSwgbCwgZS5zdHlsZXMpLCBlLmFycm93U3R5bGVzID0geih7fSwgZS5vZmZzZXRzLmFycm93LCBlLmFycm93U3R5bGVzKSwgZQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGdwdUFjY2VsZXJhdGlvbjogITAsCiAgICAgICAgICAgICAgICB4OiAiYm90dG9tIiwKICAgICAgICAgICAgICAgIHk6ICJyaWdodCIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgYXBwbHlTdHlsZTogewogICAgICAgICAgICAgICAgb3JkZXI6IDkwMCwKICAgICAgICAgICAgICAgIGVuYWJsZWQ6ICEwLAogICAgICAgICAgICAgICAgZm46IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcChlLmluc3RhbmNlLnBvcHBlciwgZS5zdHlsZXMpLCB0ID0gZS5pbnN0YW5jZS5wb3BwZXIsIG4gPSBlLmF0dHJpYnV0ZXMsIE9iamVjdC5rZXlzKG4pLmZvckVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAhMSA9PT0gbltlXSA/IHQucmVtb3ZlQXR0cmlidXRlKGUpIDogdC5zZXRBdHRyaWJ1dGUoZSwgbltlXSkKICAgICAgICAgICAgICAgICAgICB9KSwgZS5hcnJvd0VsZW1lbnQgJiYgT2JqZWN0LmtleXMoZS5hcnJvd1N0eWxlcykubGVuZ3RoICYmIHAoZS5hcnJvd0VsZW1lbnQsIGUuYXJyb3dTdHlsZXMpLCBlOwogICAgICAgICAgICAgICAgICAgIHZhciB0LCBuCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb25Mb2FkOiBmdW5jdGlvbihlLCB0LCBuLCBvLCByKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBmKHIsIHQsIGUsIG4ucG9zaXRpb25GaXhlZCksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBhKG4ucGxhY2VtZW50LCBpLCB0LCBlLCBuLm1vZGlmaWVycy5mbGlwLmJvdW5kYXJpZXNFbGVtZW50LCBuLm1vZGlmaWVycy5mbGlwLnBhZGRpbmcpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0LnNldEF0dHJpYnV0ZSgieC1wbGFjZW1lbnQiLCBzKSwgcCh0LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBuLnBvc2l0aW9uRml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIgogICAgICAgICAgICAgICAgICAgIH0pLCBuCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZ3B1QWNjZWxlcmF0aW9uOiB2b2lkIDAKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0sIFEKfSk7CiEgZnVuY3Rpb24odCwgZSkgewogICAgIm9iamVjdCIgPT0gdHlwZW9mIGV4cG9ydHMgJiYgInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSA/IGUoZXhwb3J0cywgcmVxdWlyZSgianF1ZXJ5IiksIHJlcXVpcmUoInBvcHBlci5qcyIpKSA6ICJmdW5jdGlvbiIgPT0gdHlwZW9mIGRlZmluZSAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKFsiZXhwb3J0cyIsICJqcXVlcnkiLCAicG9wcGVyLmpzIl0sIGUpIDogZSh0LmJvb3RzdHJhcCA9IHt9LCB0LmpRdWVyeSwgdC5Qb3BwZXIpCn0odGhpcywgZnVuY3Rpb24odCwgZSwgYykgewogICAgInVzZSBzdHJpY3QiOwoKICAgIGZ1bmN0aW9uIGkodCwgZSkgewogICAgICAgIGZvciAodmFyIG4gPSAwOyBuIDwgZS5sZW5ndGg7IG4rKykgewogICAgICAgICAgICB2YXIgaSA9IGVbbl07CiAgICAgICAgICAgIGkuZW51bWVyYWJsZSA9IGkuZW51bWVyYWJsZSB8fCAhMSwgaS5jb25maWd1cmFibGUgPSAhMCwgInZhbHVlIiBpbiBpICYmIChpLndyaXRhYmxlID0gITApLCBPYmplY3QuZGVmaW5lUHJvcGVydHkodCwgaS5rZXksIGkpCiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIG8odCwgZSwgbikgewogICAgICAgIHJldHVybiBlICYmIGkodC5wcm90b3R5cGUsIGUpLCBuICYmIGkodCwgbiksIHQKICAgIH0KCiAgICBmdW5jdGlvbiB1KCkgewogICAgICAgIHJldHVybiAodSA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24odCkgewogICAgICAgICAgICBmb3IgKHZhciBlID0gMTsgZSA8IGFyZ3VtZW50cy5sZW5ndGg7IGUrKykgewogICAgICAgICAgICAgICAgdmFyIG4gPSBhcmd1bWVudHNbZV07CiAgICAgICAgICAgICAgICBmb3IgKHZhciBpIGluIG4pIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCBpKSAmJiAodFtpXSA9IG5baV0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICB9KS5hcHBseSh0aGlzLCBhcmd1bWVudHMpCiAgICB9CiAgICBlID0gZSAmJiBlLmhhc093blByb3BlcnR5KCJkZWZhdWx0IikgPyBlLmRlZmF1bHQgOiBlLCBjID0gYyAmJiBjLmhhc093blByb3BlcnR5KCJkZWZhdWx0IikgPyBjLmRlZmF1bHQgOiBjOwogICAgdmFyIHMsIG4sIHIsIGEsIGwsIGgsIGQsIGYsIGcsIF8sIG0sIHAsIHYsIEUsIHksIEMsIFQsIGIsIEksIHcsIEEsIEQsIFMsIE4sIE8sIGssIFAsIGosIEgsIEwsIFIsIHgsIFUsIFcsIEssIE0sIFEsIEIsIEYsIFYsIFksIHEsIHosIFosIEosICQsIEcsIFgsIHR0LCBldCwgbnQsIGl0LCBzdCwgcnQsIG90LCBhdCwgbHQsIGh0LCBjdCwgdXQsIGR0LCBmdCwgZ3QsIF90LCBtdCwgcHQsIHZ0LCBFdCwgeXQsIEN0LCBUdCwgYnQsIEl0LCB3dCwgQXQsIER0LCBTdCwgTnQsIE90LCBrdCwgUHQsIGp0LCBIdCwgTHQsIFJ0LCB4dCwgVXQsIFd0LCBLdCwgTXQsIFF0LCBCdCwgRnQsIFZ0LCBZdCwgcXQsIHp0LCBadCwgSnQsICR0LCBHdCwgWHQsIHRlLCBlZSwgbmUsIGllLCBzZSwgcmUsIG9lLCBhZSwgbGUsIGhlLCBjZSwgdWUsIGRlLCBmZSwgZ2UsIF9lLCBtZSwgcGUsIHZlLCBFZSwgeWUsIENlLCBUZSwgYmUsIEllLCB3ZSwgQWUsIERlLCBTZSwgTmUsIE9lLCBrZSwgUGUsIGplLCBIZSwgTGUsIFJlLCB4ZSwgVWUsIFdlLCBLZSwgTWUgPSAoVWUgPSBlLCBXZSA9ICExLCBLZSA9IHsKICAgICAgICAgICAgVFJBTlNJVElPTl9FTkQ6ICJic1RyYW5zaXRpb25FbmQiLAogICAgICAgICAgICBnZXRVSUQ6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGZvciAoOyB0ICs9IH5+KDFlNiAqIE1hdGgucmFuZG9tKCkpLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0KTspOwogICAgICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZ2V0U2VsZWN0b3JGcm9tRWxlbWVudDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUsIG4gPSB0LmdldEF0dHJpYnV0ZSgiZGF0YS10YXJnZXQiKTsKICAgICAgICAgICAgICAgIG4gJiYgIiMiICE9PSBuIHx8IChuID0gdC5nZXRBdHRyaWJ1dGUoImhyZWYiKSB8fCAiIiksICIjIiA9PT0gbi5jaGFyQXQoMCkgJiYgKGUgPSBuLCBuID0gZSA9ICJmdW5jdGlvbiIgPT0gdHlwZW9mIFVlLmVzY2FwZVNlbGVjdG9yID8gVWUuZXNjYXBlU2VsZWN0b3IoZSkuc3Vic3RyKDEpIDogZS5yZXBsYWNlKC8oOnxcLnxcW3xcXXwsfD18QCkvZywgIlxcJDEiKSk7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAwIDwgVWUoZG9jdW1lbnQpLmZpbmQobikubGVuZ3RoID8gbiA6IG51bGwKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICByZWZsb3c6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0Lm9mZnNldEhlaWdodAogICAgICAgICAgICB9LAogICAgICAgICAgICB0cmlnZ2VyVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgVWUodCkudHJpZ2dlcihXZS5lbmQpCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHN1cHBvcnRzVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gQm9vbGVhbihXZSkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgaXNFbGVtZW50OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKHRbMF0gfHwgdCkubm9kZVR5cGUKICAgICAgICAgICAgfSwKICAgICAgICAgICAgdHlwZUNoZWNrQ29uZmlnOiBmdW5jdGlvbih0LCBlLCBuKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBpIGluIG4pCiAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCBpKSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IG5baV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICByID0gZVtpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPSByICYmIEtlLmlzRWxlbWVudChyKSA/ICJlbGVtZW50IiA6IChhID0gciwge30udG9TdHJpbmcuY2FsbChhKS5tYXRjaCgvXHMoW2EtekEtWl0rKS8pWzFdLnRvTG93ZXJDYXNlKCkpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW5ldyBSZWdFeHAocykudGVzdChvKSkgdGhyb3cgbmV3IEVycm9yKHQudG9VcHBlckNhc2UoKSArICc6IE9wdGlvbiAiJyArIGkgKyAnIiBwcm92aWRlZCB0eXBlICInICsgbyArICciIGJ1dCBleHBlY3RlZCB0eXBlICInICsgcyArICciLicpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFyIGEKICAgICAgICAgICAgfQogICAgICAgIH0sIFdlID0gKCJ1bmRlZmluZWQiID09IHR5cGVvZiB3aW5kb3cgfHwgIXdpbmRvdy5RVW5pdCkgJiYgewogICAgICAgICAgICBlbmQ6ICJ0cmFuc2l0aW9uZW5kIgogICAgICAgIH0sIFVlLmZuLmVtdWxhdGVUcmFuc2l0aW9uRW5kID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSA9IHRoaXMsCiAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgIHJldHVybiBVZSh0aGlzKS5vbmUoS2UuVFJBTlNJVElPTl9FTkQsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbiA9ICEwCiAgICAgICAgICAgIH0pLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbiB8fCBLZS50cmlnZ2VyVHJhbnNpdGlvbkVuZChlKQogICAgICAgICAgICB9LCB0KSwgdGhpcwogICAgICAgIH0sIEtlLnN1cHBvcnRzVHJhbnNpdGlvbkVuZCgpICYmIChVZS5ldmVudC5zcGVjaWFsW0tlLlRSQU5TSVRJT05fRU5EXSA9IHsKICAgICAgICAgICAgYmluZFR5cGU6IFdlLmVuZCwKICAgICAgICAgICAgZGVsZWdhdGVUeXBlOiBXZS5lbmQsCiAgICAgICAgICAgIGhhbmRsZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgaWYgKFVlKHQudGFyZ2V0KS5pcyh0aGlzKSkgcmV0dXJuIHQuaGFuZGxlT2JqLmhhbmRsZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKQogICAgICAgICAgICB9CiAgICAgICAgfSksIEtlKSwKICAgICAgICBRZSA9IChuID0gImFsZXJ0IiwgYSA9ICIuIiArIChyID0gImJzLmFsZXJ0IiksIGwgPSAocyA9IGUpLmZuW25dLCBoID0gewogICAgICAgICAgICBDTE9TRTogImNsb3NlIiArIGEsCiAgICAgICAgICAgIENMT1NFRDogImNsb3NlZCIgKyBhLAogICAgICAgICAgICBDTElDS19EQVRBX0FQSTogImNsaWNrIiArIGEgKyAiLmRhdGEtYXBpIgogICAgICAgIH0sICJhbGVydCIsICJmYWRlIiwgInNob3ciLCBkID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIGkodCkgewogICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudCA9IHQKICAgICAgICAgICAgfQogICAgICAgICAgICB2YXIgdCA9IGkucHJvdG90eXBlOwogICAgICAgICAgICByZXR1cm4gdC5jbG9zZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQgPSB0IHx8IHRoaXMuX2VsZW1lbnQ7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMuX2dldFJvb3RFbGVtZW50KHQpOwogICAgICAgICAgICAgICAgdGhpcy5fdHJpZ2dlckNsb3NlRXZlbnQoZSkuaXNEZWZhdWx0UHJldmVudGVkKCkgfHwgdGhpcy5fcmVtb3ZlRWxlbWVudChlKQogICAgICAgICAgICB9LCB0LmRpc3Bvc2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHMucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCByKSwgdGhpcy5fZWxlbWVudCA9IG51bGwKICAgICAgICAgICAgfSwgdC5fZ2V0Um9vdEVsZW1lbnQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IE1lLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCksCiAgICAgICAgICAgICAgICAgICAgbiA9ICExOwogICAgICAgICAgICAgICAgcmV0dXJuIGUgJiYgKG4gPSBzKGUpWzBdKSwgbiB8fCAobiA9IHModCkuY2xvc2VzdCgiLmFsZXJ0IilbMF0pLCBuCiAgICAgICAgICAgIH0sIHQuX3RyaWdnZXJDbG9zZUV2ZW50ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBzLkV2ZW50KGguQ0xPU0UpOwogICAgICAgICAgICAgICAgcmV0dXJuIHModCkudHJpZ2dlcihlKSwgZQogICAgICAgICAgICB9LCB0Ll9yZW1vdmVFbGVtZW50ID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIG4gPSB0aGlzOwogICAgICAgICAgICAgICAgcyhlKS5yZW1vdmVDbGFzcygic2hvdyIpLCBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiBzKGUpLmhhc0NsYXNzKCJmYWRlIikgPyBzKGUpLm9uZShNZS5UUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuLl9kZXN0cm95RWxlbWVudChlLCB0KQogICAgICAgICAgICAgICAgfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoMTUwKSA6IHRoaXMuX2Rlc3Ryb3lFbGVtZW50KGUpCiAgICAgICAgICAgIH0sIHQuX2Rlc3Ryb3lFbGVtZW50ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcyh0KS5kZXRhY2goKS50cmlnZ2VyKGguQ0xPU0VEKS5yZW1vdmUoKQogICAgICAgICAgICB9LCBpLl9qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbihuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gcyh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHQuZGF0YShyKTsKICAgICAgICAgICAgICAgICAgICBlIHx8IChlID0gbmV3IGkodGhpcyksIHQuZGF0YShyLCBlKSksICJjbG9zZSIgPT09IG4gJiYgZVtuXSh0aGlzKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgaS5faGFuZGxlRGlzbWlzcyA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdCAmJiB0LnByZXZlbnREZWZhdWx0KCksIGUuY2xvc2UodGhpcykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgbyhpLCBudWxsLCBbewogICAgICAgICAgICAgICAga2V5OiAiVkVSU0lPTiIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAiNC4wLjAiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH1dKSwgaQogICAgICAgIH0oKSwgcyhkb2N1bWVudCkub24oaC5DTElDS19EQVRBX0FQSSwgJ1tkYXRhLWRpc21pc3M9ImFsZXJ0Il0nLCBkLl9oYW5kbGVEaXNtaXNzKG5ldyBkKSksIHMuZm5bbl0gPSBkLl9qUXVlcnlJbnRlcmZhY2UsIHMuZm5bbl0uQ29uc3RydWN0b3IgPSBkLCBzLmZuW25dLm5vQ29uZmxpY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHMuZm5bbl0gPSBsLCBkLl9qUXVlcnlJbnRlcmZhY2UKICAgICAgICB9LCBkKSwKICAgICAgICBCZSA9IChnID0gImJ1dHRvbiIsIG0gPSAiLiIgKyAoXyA9ICJicy5idXR0b24iKSwgcCA9ICIuZGF0YS1hcGkiLCB2ID0gKGYgPSBlKS5mbltnXSwgRSA9ICJhY3RpdmUiLCAiYnRuIiwgeSA9ICdbZGF0YS10b2dnbGVePSJidXR0b24iXScsICdbZGF0YS10b2dnbGU9ImJ1dHRvbnMiXScsICJpbnB1dCIsICIuYWN0aXZlIiwgQyA9ICIuYnRuIiwgVCA9IHsKICAgICAgICAgICAgQ0xJQ0tfREFUQV9BUEk6ICJjbGljayIgKyBtICsgcCwKICAgICAgICAgICAgRk9DVVNfQkxVUl9EQVRBX0FQSTogImZvY3VzIiArIG0gKyBwICsgIiBibHVyIiArIG0gKyBwCiAgICAgICAgfSwgYiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBmdW5jdGlvbiBuKHQpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSB0CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIHQgPSBuLnByb3RvdHlwZTsKICAgICAgICAgICAgcmV0dXJuIHQudG9nZ2xlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9ICEwLAogICAgICAgICAgICAgICAgICAgIGUgPSAhMCwKICAgICAgICAgICAgICAgICAgICBuID0gZih0aGlzLl9lbGVtZW50KS5jbG9zZXN0KCdbZGF0YS10b2dnbGU9ImJ1dHRvbnMiXScpWzBdOwogICAgICAgICAgICAgICAgaWYgKG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IGYodGhpcy5fZWxlbWVudCkuZmluZCgiaW5wdXQiKVswXTsKICAgICAgICAgICAgICAgICAgICBpZiAoaSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoInJhZGlvIiA9PT0gaS50eXBlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGkuY2hlY2tlZCAmJiBmKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKEUpKSB0ID0gITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IGYobikuZmluZCgiLmFjdGl2ZSIpWzBdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMgJiYgZihzKS5yZW1vdmVDbGFzcyhFKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGkuaGFzQXR0cmlidXRlKCJkaXNhYmxlZCIpIHx8IG4uaGFzQXR0cmlidXRlKCJkaXNhYmxlZCIpIHx8IGkuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpIHx8IG4uY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLmNoZWNrZWQgPSAhZih0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhFKSwgZihpKS50cmlnZ2VyKCJjaGFuZ2UiKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGkuZm9jdXMoKSwgZSA9ICExCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZSAmJiB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwgIWYodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoRSkpLCB0ICYmIGYodGhpcy5fZWxlbWVudCkudG9nZ2xlQ2xhc3MoRSkKICAgICAgICAgICAgfSwgdC5kaXNwb3NlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBmLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgXyksIHRoaXMuX2VsZW1lbnQgPSBudWxsCiAgICAgICAgICAgIH0sIG4uX2pRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBmKHRoaXMpLmRhdGEoXyk7CiAgICAgICAgICAgICAgICAgICAgdCB8fCAodCA9IG5ldyBuKHRoaXMpLCBmKHRoaXMpLmRhdGEoXywgdCkpLCAidG9nZ2xlIiA9PT0gZSAmJiB0W2VdKCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIG8obiwgbnVsbCwgW3sKICAgICAgICAgICAgICAgIGtleTogIlZFUlNJT04iLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIjQuMC4wIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9XSksIG4KICAgICAgICB9KCksIGYoZG9jdW1lbnQpLm9uKFQuQ0xJQ0tfREFUQV9BUEksIHksIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICB2YXIgZSA9IHQudGFyZ2V0OwogICAgICAgICAgICBmKGUpLmhhc0NsYXNzKCJidG4iKSB8fCAoZSA9IGYoZSkuY2xvc2VzdChDKSksIGIuX2pRdWVyeUludGVyZmFjZS5jYWxsKGYoZSksICJ0b2dnbGUiKQogICAgICAgIH0pLm9uKFQuRk9DVVNfQkxVUl9EQVRBX0FQSSwgeSwgZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSA9IGYodC50YXJnZXQpLmNsb3Nlc3QoQylbMF07CiAgICAgICAgICAgIGYoZSkudG9nZ2xlQ2xhc3MoImZvY3VzIiwgL15mb2N1cyhpbik/JC8udGVzdCh0LnR5cGUpKQogICAgICAgIH0pLCBmLmZuW2ddID0gYi5falF1ZXJ5SW50ZXJmYWNlLCBmLmZuW2ddLkNvbnN0cnVjdG9yID0gYiwgZi5mbltnXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBmLmZuW2ddID0gdiwgYi5falF1ZXJ5SW50ZXJmYWNlCiAgICAgICAgfSwgYiksCiAgICAgICAgRmUgPSAoeWUgPSAiY2Fyb3VzZWwiLCBUZSA9ICIuIiArIChDZSA9ICJicy5jYXJvdXNlbCIpLCBiZSA9IChFZSA9IGUpLmZuW3llXSwgSWUgPSB7CiAgICAgICAgICAgIGludGVydmFsOiA1ZTMsCiAgICAgICAgICAgIGtleWJvYXJkOiAhMCwKICAgICAgICAgICAgc2xpZGU6ICExLAogICAgICAgICAgICBwYXVzZTogImhvdmVyIiwKICAgICAgICAgICAgd3JhcDogITAKICAgICAgICB9LCB3ZSA9IHsKICAgICAgICAgICAgaW50ZXJ2YWw6ICIobnVtYmVyfGJvb2xlYW4pIiwKICAgICAgICAgICAga2V5Ym9hcmQ6ICJib29sZWFuIiwKICAgICAgICAgICAgc2xpZGU6ICIoYm9vbGVhbnxzdHJpbmcpIiwKICAgICAgICAgICAgcGF1c2U6ICIoc3RyaW5nfGJvb2xlYW4pIiwKICAgICAgICAgICAgd3JhcDogImJvb2xlYW4iCiAgICAgICAgfSwgQWUgPSAibmV4dCIsIERlID0gInByZXYiLCBTZSA9IHsKICAgICAgICAgICAgU0xJREU6ICJzbGlkZSIgKyBUZSwKICAgICAgICAgICAgU0xJRDogInNsaWQiICsgVGUsCiAgICAgICAgICAgIEtFWURPV046ICJrZXlkb3duIiArIFRlLAogICAgICAgICAgICBNT1VTRUVOVEVSOiAibW91c2VlbnRlciIgKyBUZSwKICAgICAgICAgICAgTU9VU0VMRUFWRTogIm1vdXNlbGVhdmUiICsgVGUsCiAgICAgICAgICAgIFRPVUNIRU5EOiAidG91Y2hlbmQiICsgVGUsCiAgICAgICAgICAgIExPQURfREFUQV9BUEk6ICJsb2FkIiArIFRlICsgIi5kYXRhLWFwaSIsCiAgICAgICAgICAgIENMSUNLX0RBVEFfQVBJOiAiY2xpY2siICsgVGUgKyAiLmRhdGEtYXBpIgogICAgICAgIH0sIE5lID0gImFjdGl2ZSIsIE9lID0gIi5hY3RpdmUiLCBrZSA9ICIuYWN0aXZlLmNhcm91c2VsLWl0ZW0iLCBQZSA9ICIuY2Fyb3VzZWwtaXRlbSIsIGplID0gIi5jYXJvdXNlbC1pdGVtLW5leHQsIC5jYXJvdXNlbC1pdGVtLXByZXYiLCBIZSA9ICIuY2Fyb3VzZWwtaW5kaWNhdG9ycyIsIExlID0gIltkYXRhLXNsaWRlXSwgW2RhdGEtc2xpZGUtdG9dIiwgUmUgPSAnW2RhdGEtcmlkZT0iY2Fyb3VzZWwiXScsIHhlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIHIodCwgZSkgewogICAgICAgICAgICAgICAgdGhpcy5faXRlbXMgPSBudWxsLCB0aGlzLl9pbnRlcnZhbCA9IG51bGwsIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBudWxsLCB0aGlzLl9pc1BhdXNlZCA9ICExLCB0aGlzLl9pc1NsaWRpbmcgPSAhMSwgdGhpcy50b3VjaFRpbWVvdXQgPSBudWxsLCB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoZSksIHRoaXMuX2VsZW1lbnQgPSBFZSh0KVswXSwgdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQgPSBFZSh0aGlzLl9lbGVtZW50KS5maW5kKEhlKVswXSwgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB0ID0gci5wcm90b3R5cGU7CiAgICAgICAgICAgIHJldHVybiB0Lm5leHQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2lzU2xpZGluZyB8fCB0aGlzLl9zbGlkZShBZSkKICAgICAgICAgICAgfSwgdC5uZXh0V2hlblZpc2libGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICFkb2N1bWVudC5oaWRkZW4gJiYgRWUodGhpcy5fZWxlbWVudCkuaXMoIjp2aXNpYmxlIikgJiYgImhpZGRlbiIgIT09IEVlKHRoaXMuX2VsZW1lbnQpLmNzcygidmlzaWJpbGl0eSIpICYmIHRoaXMubmV4dCgpCiAgICAgICAgICAgIH0sIHQucHJldiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5faXNTbGlkaW5nIHx8IHRoaXMuX3NsaWRlKERlKQogICAgICAgICAgICB9LCB0LnBhdXNlID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdCB8fCAodGhpcy5faXNQYXVzZWQgPSAhMCksIEVlKHRoaXMuX2VsZW1lbnQpLmZpbmQoamUpWzBdICYmIE1lLnN1cHBvcnRzVHJhbnNpdGlvbkVuZCgpICYmIChNZS50cmlnZ2VyVHJhbnNpdGlvbkVuZCh0aGlzLl9lbGVtZW50KSwgdGhpcy5jeWNsZSghMCkpLCBjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSwgdGhpcy5faW50ZXJ2YWwgPSBudWxsCiAgICAgICAgICAgIH0sIHQuY3ljbGUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0IHx8ICh0aGlzLl9pc1BhdXNlZCA9ICExKSwgdGhpcy5faW50ZXJ2YWwgJiYgKGNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpLCB0aGlzLl9pbnRlcnZhbCA9IG51bGwpLCB0aGlzLl9jb25maWcuaW50ZXJ2YWwgJiYgIXRoaXMuX2lzUGF1c2VkICYmICh0aGlzLl9pbnRlcnZhbCA9IHNldEludGVydmFsKChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPyB0aGlzLm5leHRXaGVuVmlzaWJsZSA6IHRoaXMubmV4dCkuYmluZCh0aGlzKSwgdGhpcy5fY29uZmlnLmludGVydmFsKSkKICAgICAgICAgICAgfSwgdC50byA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSBFZSh0aGlzLl9lbGVtZW50KS5maW5kKGtlKVswXTsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcy5fZ2V0SXRlbUluZGV4KHRoaXMuX2FjdGl2ZUVsZW1lbnQpOwogICAgICAgICAgICAgICAgaWYgKCEodCA+IHRoaXMuX2l0ZW1zLmxlbmd0aCAtIDEgfHwgdCA8IDApKQogICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pc1NsaWRpbmcpIEVlKHRoaXMuX2VsZW1lbnQpLm9uZShTZS5TTElELCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUudG8odCkKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG4gPT09IHQpIHJldHVybiB0aGlzLnBhdXNlKCksIHZvaWQgdGhpcy5jeWNsZSgpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IG4gPCB0ID8gQWUgOiBEZTsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2xpZGUoaSwgdGhpcy5faXRlbXNbdF0pCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0LmRpc3Bvc2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEVlKHRoaXMuX2VsZW1lbnQpLm9mZihUZSksIEVlLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgQ2UpLCB0aGlzLl9pdGVtcyA9IG51bGwsIHRoaXMuX2NvbmZpZyA9IG51bGwsIHRoaXMuX2VsZW1lbnQgPSBudWxsLCB0aGlzLl9pbnRlcnZhbCA9IG51bGwsIHRoaXMuX2lzUGF1c2VkID0gbnVsbCwgdGhpcy5faXNTbGlkaW5nID0gbnVsbCwgdGhpcy5fYWN0aXZlRWxlbWVudCA9IG51bGwsIHRoaXMuX2luZGljYXRvcnNFbGVtZW50ID0gbnVsbAogICAgICAgICAgICB9LCB0Ll9nZXRDb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdCA9IHUoe30sIEllLCB0KSwgTWUudHlwZUNoZWNrQ29uZmlnKHllLCB0LCB3ZSksIHQKICAgICAgICAgICAgfSwgdC5fYWRkRXZlbnRMaXN0ZW5lcnMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5rZXlib2FyZCAmJiBFZSh0aGlzLl9lbGVtZW50KS5vbihTZS5LRVlET1dOLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuX2tleWRvd24odCkKICAgICAgICAgICAgICAgIH0pLCAiaG92ZXIiID09PSB0aGlzLl9jb25maWcucGF1c2UgJiYgKEVlKHRoaXMuX2VsZW1lbnQpLm9uKFNlLk1PVVNFRU5URVIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5wYXVzZSh0KQogICAgICAgICAgICAgICAgfSkub24oU2UuTU9VU0VMRUFWRSwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmN5Y2xlKHQpCiAgICAgICAgICAgICAgICB9KSwgIm9udG91Y2hzdGFydCIgaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ICYmIEVlKHRoaXMuX2VsZW1lbnQpLm9uKFNlLlRPVUNIRU5ELCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBlLnBhdXNlKCksIGUudG91Y2hUaW1lb3V0ICYmIGNsZWFyVGltZW91dChlLnRvdWNoVGltZW91dCksIGUudG91Y2hUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmN5Y2xlKHQpCiAgICAgICAgICAgICAgICAgICAgfSwgNTAwICsgZS5fY29uZmlnLmludGVydmFsKQogICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgIH0sIHQuX2tleWRvd24gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAoIS9pbnB1dHx0ZXh0YXJlYS9pLnRlc3QodC50YXJnZXQudGFnTmFtZSkpIHN3aXRjaCAodC53aGljaCkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgMzc6CiAgICAgICAgICAgICAgICAgICAgICAgIHQucHJldmVudERlZmF1bHQoKSwgdGhpcy5wcmV2KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMzk6CiAgICAgICAgICAgICAgICAgICAgICAgIHQucHJldmVudERlZmF1bHQoKSwgdGhpcy5uZXh0KCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgdC5fZ2V0SXRlbUluZGV4ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zID0gRWUubWFrZUFycmF5KEVlKHQpLnBhcmVudCgpLmZpbmQoUGUpKSwgdGhpcy5faXRlbXMuaW5kZXhPZih0KQogICAgICAgICAgICB9LCB0Ll9nZXRJdGVtQnlEaXJlY3Rpb24gPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IHQgPT09IEFlLAogICAgICAgICAgICAgICAgICAgIGkgPSB0ID09PSBEZSwKICAgICAgICAgICAgICAgICAgICBzID0gdGhpcy5fZ2V0SXRlbUluZGV4KGUpLAogICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzLl9pdGVtcy5sZW5ndGggLSAxOwogICAgICAgICAgICAgICAgaWYgKChpICYmIDAgPT09IHMgfHwgbiAmJiBzID09PSByKSAmJiAhdGhpcy5fY29uZmlnLndyYXApIHJldHVybiBlOwogICAgICAgICAgICAgICAgdmFyIG8gPSAocyArICh0ID09PSBEZSA/IC0xIDogMSkpICUgdGhpcy5faXRlbXMubGVuZ3RoOwogICAgICAgICAgICAgICAgcmV0dXJuIC0xID09PSBvID8gdGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoIC0gMV0gOiB0aGlzLl9pdGVtc1tvXQogICAgICAgICAgICB9LCB0Ll90cmlnZ2VyU2xpZGVFdmVudCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcy5fZ2V0SXRlbUluZGV4KHQpLAogICAgICAgICAgICAgICAgICAgIGkgPSB0aGlzLl9nZXRJdGVtSW5kZXgoRWUodGhpcy5fZWxlbWVudCkuZmluZChrZSlbMF0pLAogICAgICAgICAgICAgICAgICAgIHMgPSBFZS5FdmVudChTZS5TTElERSwgewogICAgICAgICAgICAgICAgICAgICAgICByZWxhdGVkVGFyZ2V0OiB0LAogICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246IGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IGksCiAgICAgICAgICAgICAgICAgICAgICAgIHRvOiBuCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICByZXR1cm4gRWUodGhpcy5fZWxlbWVudCkudHJpZ2dlcihzKSwgcwogICAgICAgICAgICB9LCB0Ll9zZXRBY3RpdmVJbmRpY2F0b3JFbGVtZW50ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2luZGljYXRvcnNFbGVtZW50KSB7CiAgICAgICAgICAgICAgICAgICAgRWUodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpLmZpbmQoT2UpLnJlbW92ZUNsYXNzKE5lKTsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMuX2luZGljYXRvcnNFbGVtZW50LmNoaWxkcmVuW3RoaXMuX2dldEl0ZW1JbmRleCh0KV07CiAgICAgICAgICAgICAgICAgICAgZSAmJiBFZShlKS5hZGRDbGFzcyhOZSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgdC5fc2xpZGUgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgbiwgaSwgcywgciA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgbyA9IEVlKHRoaXMuX2VsZW1lbnQpLmZpbmQoa2UpWzBdLAogICAgICAgICAgICAgICAgICAgIGEgPSB0aGlzLl9nZXRJdGVtSW5kZXgobyksCiAgICAgICAgICAgICAgICAgICAgbCA9IGUgfHwgbyAmJiB0aGlzLl9nZXRJdGVtQnlEaXJlY3Rpb24odCwgbyksCiAgICAgICAgICAgICAgICAgICAgaCA9IHRoaXMuX2dldEl0ZW1JbmRleChsKSwKICAgICAgICAgICAgICAgICAgICBjID0gQm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7CiAgICAgICAgICAgICAgICBpZiAocyA9IHQgPT09IEFlID8gKG4gPSAiY2Fyb3VzZWwtaXRlbS1sZWZ0IiwgaSA9ICJjYXJvdXNlbC1pdGVtLW5leHQiLCAibGVmdCIpIDogKG4gPSAiY2Fyb3VzZWwtaXRlbS1yaWdodCIsIGkgPSAiY2Fyb3VzZWwtaXRlbS1wcmV2IiwgInJpZ2h0IiksIGwgJiYgRWUobCkuaGFzQ2xhc3MoTmUpKSB0aGlzLl9pc1NsaWRpbmcgPSAhMTsKICAgICAgICAgICAgICAgIGVsc2UgaWYgKCF0aGlzLl90cmlnZ2VyU2xpZGVFdmVudChsLCBzKS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSAmJiBvICYmIGwpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9pc1NsaWRpbmcgPSAhMCwgYyAmJiB0aGlzLnBhdXNlKCksIHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQobCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIHUgPSBFZS5FdmVudChTZS5TTElELCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRUYXJnZXQ6IGwsCiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogcywKICAgICAgICAgICAgICAgICAgICAgICAgZnJvbTogYSwKICAgICAgICAgICAgICAgICAgICAgICAgdG86IGgKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiBFZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcygic2xpZGUiKSA/IChFZShsKS5hZGRDbGFzcyhpKSwgTWUucmVmbG93KGwpLCBFZShvKS5hZGRDbGFzcyhuKSwgRWUobCkuYWRkQ2xhc3MobiksIEVlKG8pLm9uZShNZS5UUkFOU0lUSU9OX0VORCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVlKGwpLnJlbW92ZUNsYXNzKG4gKyAiICIgKyBpKS5hZGRDbGFzcyhOZSksIEVlKG8pLnJlbW92ZUNsYXNzKE5lICsgIiAiICsgaSArICIgIiArIG4pLCByLl9pc1NsaWRpbmcgPSAhMSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBFZShyLl9lbGVtZW50KS50cmlnZ2VyKHUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIDApCiAgICAgICAgICAgICAgICAgICAgfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoNjAwKSkgOiAoRWUobykucmVtb3ZlQ2xhc3MoTmUpLCBFZShsKS5hZGRDbGFzcyhOZSksIHRoaXMuX2lzU2xpZGluZyA9ICExLCBFZSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKHUpKSwgYyAmJiB0aGlzLmN5Y2xlKCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgci5falF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24oaSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IEVlKHRoaXMpLmRhdGEoQ2UpLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gdSh7fSwgSWUsIEVlKHRoaXMpLmRhdGEoKSk7CiAgICAgICAgICAgICAgICAgICAgIm9iamVjdCIgPT0gdHlwZW9mIGkgJiYgKGUgPSB1KHt9LCBlLCBpKSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSAic3RyaW5nIiA9PSB0eXBlb2YgaSA/IGkgOiBlLnNsaWRlOwogICAgICAgICAgICAgICAgICAgIGlmICh0IHx8ICh0ID0gbmV3IHIodGhpcywgZSksIEVlKHRoaXMpLmRhdGEoQ2UsIHQpKSwgIm51bWJlciIgPT0gdHlwZW9mIGkpIHQudG8oaSk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoInN0cmluZyIgPT0gdHlwZW9mIG4pIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZvaWQgMCA9PT0gdFtuXSkgdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInICsgbiArICciJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHRbbl0oKQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBlLmludGVydmFsICYmICh0LnBhdXNlKCksIHQuY3ljbGUoKSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIHIuX2RhdGFBcGlDbGlja0hhbmRsZXIgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IE1lLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyk7CiAgICAgICAgICAgICAgICBpZiAoZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gRWUoZSlbMF07CiAgICAgICAgICAgICAgICAgICAgaWYgKG4gJiYgRWUobikuaGFzQ2xhc3MoImNhcm91c2VsIikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSB1KHt9LCBFZShuKS5kYXRhKCksIEVlKHRoaXMpLmRhdGEoKSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gdGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtc2xpZGUtdG8iKTsKICAgICAgICAgICAgICAgICAgICAgICAgcyAmJiAoaS5pbnRlcnZhbCA9ICExKSwgci5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoRWUobiksIGkpLCBzICYmIEVlKG4pLmRhdGEoQ2UpLnRvKHMpLCB0LnByZXZlbnREZWZhdWx0KCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIG8ociwgbnVsbCwgW3sKICAgICAgICAgICAgICAgIGtleTogIlZFUlNJT04iLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIjQuMC4wIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEllCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH1dKSwgcgogICAgICAgIH0oKSwgRWUoZG9jdW1lbnQpLm9uKFNlLkNMSUNLX0RBVEFfQVBJLCBMZSwgeGUuX2RhdGFBcGlDbGlja0hhbmRsZXIpLCBFZSh3aW5kb3cpLm9uKFNlLkxPQURfREFUQV9BUEksIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBFZShSZSkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gRWUodGhpcyk7CiAgICAgICAgICAgICAgICB4ZS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwodCwgdC5kYXRhKCkpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSksIEVlLmZuW3llXSA9IHhlLl9qUXVlcnlJbnRlcmZhY2UsIEVlLmZuW3llXS5Db25zdHJ1Y3RvciA9IHhlLCBFZS5mblt5ZV0ubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gRWUuZm5beWVdID0gYmUsIHhlLl9qUXVlcnlJbnRlcmZhY2UKICAgICAgICB9LCB4ZSksCiAgICAgICAgVmUgPSAocmUgPSAiY29sbGFwc2UiLCBhZSA9ICIuIiArIChvZSA9ICJicy5jb2xsYXBzZSIpLCBsZSA9IChzZSA9IGUpLmZuW3JlXSwgaGUgPSB7CiAgICAgICAgICAgIHRvZ2dsZTogITAsCiAgICAgICAgICAgIHBhcmVudDogIiIKICAgICAgICB9LCBjZSA9IHsKICAgICAgICAgICAgdG9nZ2xlOiAiYm9vbGVhbiIsCiAgICAgICAgICAgIHBhcmVudDogIihzdHJpbmd8ZWxlbWVudCkiCiAgICAgICAgfSwgdWUgPSB7CiAgICAgICAgICAgIFNIT1c6ICJzaG93IiArIGFlLAogICAgICAgICAgICBTSE9XTjogInNob3duIiArIGFlLAogICAgICAgICAgICBISURFOiAiaGlkZSIgKyBhZSwKICAgICAgICAgICAgSElEREVOOiAiaGlkZGVuIiArIGFlLAogICAgICAgICAgICBDTElDS19EQVRBX0FQSTogImNsaWNrIiArIGFlICsgIi5kYXRhLWFwaSIKICAgICAgICB9LCBkZSA9ICJzaG93IiwgZmUgPSAiY29sbGFwc2UiLCBnZSA9ICJjb2xsYXBzaW5nIiwgX2UgPSAiY29sbGFwc2VkIiwgbWUgPSAiLnNob3csIC5jb2xsYXBzaW5nIiwgcGUgPSAnW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdJywgdmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZnVuY3Rpb24gYSh0LCBlKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSAhMSwgdGhpcy5fZWxlbWVudCA9IHQsIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhlKSwgdGhpcy5fdHJpZ2dlckFycmF5ID0gc2UubWFrZUFycmF5KHNlKCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1baHJlZj0iIycgKyB0LmlkICsgJyJdLFtkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXRhcmdldD0iIycgKyB0LmlkICsgJyJdJykpOwogICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IHNlKHBlKSwgaSA9IDA7IGkgPCBuLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSBuW2ldLAogICAgICAgICAgICAgICAgICAgICAgICByID0gTWUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudChzKTsKICAgICAgICAgICAgICAgICAgICBudWxsICE9PSByICYmIDAgPCBzZShyKS5maWx0ZXIodCkubGVuZ3RoICYmICh0aGlzLl9zZWxlY3RvciA9IHIsIHRoaXMuX3RyaWdnZXJBcnJheS5wdXNoKHMpKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGhpcy5fcGFyZW50ID0gdGhpcy5fY29uZmlnLnBhcmVudCA/IHRoaXMuX2dldFBhcmVudCgpIDogbnVsbCwgdGhpcy5fY29uZmlnLnBhcmVudCB8fCB0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fZWxlbWVudCwgdGhpcy5fdHJpZ2dlckFycmF5KSwgdGhpcy5fY29uZmlnLnRvZ2dsZSAmJiB0aGlzLnRvZ2dsZSgpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIHQgPSBhLnByb3RvdHlwZTsKICAgICAgICAgICAgcmV0dXJuIHQudG9nZ2xlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBzZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhkZSkgPyB0aGlzLmhpZGUoKSA6IHRoaXMuc2hvdygpCiAgICAgICAgICAgIH0sIHQuc2hvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQsIGUsIG4gPSB0aGlzOwogICAgICAgICAgICAgICAgaWYgKCEodGhpcy5faXNUcmFuc2l0aW9uaW5nIHx8IHNlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGRlKSB8fCAodGhpcy5fcGFyZW50ICYmIDAgPT09ICh0ID0gc2UubWFrZUFycmF5KHNlKHRoaXMuX3BhcmVudCkuZmluZChtZSkuZmlsdGVyKCdbZGF0YS1wYXJlbnQ9IicgKyB0aGlzLl9jb25maWcucGFyZW50ICsgJyJdJykpKS5sZW5ndGggJiYgKHQgPSBudWxsKSwgdCAmJiAoZSA9IHNlKHQpLm5vdCh0aGlzLl9zZWxlY3RvcikuZGF0YShvZSkpICYmIGUuX2lzVHJhbnNpdGlvbmluZykpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBzZS5FdmVudCh1ZS5TSE9XKTsKICAgICAgICAgICAgICAgICAgICBpZiAoc2UodGhpcy5fZWxlbWVudCkudHJpZ2dlcihpKSwgIWkuaXNEZWZhdWx0UHJldmVudGVkKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdCAmJiAoYS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoc2UodCkubm90KHRoaXMuX3NlbGVjdG9yKSwgImhpZGUiKSwgZSB8fCBzZSh0KS5kYXRhKG9lLCBudWxsKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzID0gdGhpcy5fZ2V0RGltZW5zaW9uKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHNlKHRoaXMuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGZlKS5hZGRDbGFzcyhnZSksICh0aGlzLl9lbGVtZW50LnN0eWxlW3NdID0gMCkgPCB0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoICYmIHNlKHRoaXMuX3RyaWdnZXJBcnJheSkucmVtb3ZlQ2xhc3MoX2UpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCAhMCksIHRoaXMuc2V0VHJhbnNpdGlvbmluZyghMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZShuLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhnZSkuYWRkQ2xhc3MoZmUpLmFkZENsYXNzKGRlKSwgbi5fZWxlbWVudC5zdHlsZVtzXSA9ICIiLCBuLnNldFRyYW5zaXRpb25pbmcoITEpLCBzZShuLl9lbGVtZW50KS50cmlnZ2VyKHVlLlNIT1dOKQogICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoTWUuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gInNjcm9sbCIgKyAoc1swXS50b1VwcGVyQ2FzZSgpICsgcy5zbGljZSgxKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZSh0aGlzLl9lbGVtZW50KS5vbmUoTWUuVFJBTlNJVElPTl9FTkQsIHIpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKDYwMCksIHRoaXMuX2VsZW1lbnQuc3R5bGVbc10gPSB0aGlzLl9lbGVtZW50W29dICsgInB4IgogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgcigpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0LmhpZGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpczsKICAgICAgICAgICAgICAgIGlmICghdGhpcy5faXNUcmFuc2l0aW9uaW5nICYmIHNlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGRlKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gc2UuRXZlbnQodWUuSElERSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHNlKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoZSksICFlLmlzRGVmYXVsdFByZXZlbnRlZCgpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcy5fZ2V0RGltZW5zaW9uKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9lbGVtZW50LnN0eWxlW25dID0gdGhpcy5fZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVtuXSArICJweCIsIE1lLnJlZmxvdyh0aGlzLl9lbGVtZW50KSwgc2UodGhpcy5fZWxlbWVudCkuYWRkQ2xhc3MoZ2UpLnJlbW92ZUNsYXNzKGZlKS5yZW1vdmVDbGFzcyhkZSksIDAgPCB0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IHRoaXMuX3RyaWdnZXJBcnJheVtpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IE1lLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQocyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhPT0gciAmJiAoc2UocikuaGFzQ2xhc3MoZGUpIHx8IHNlKHMpLmFkZENsYXNzKF9lKS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwgITEpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFRyYW5zaXRpb25pbmcoITApOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdC5zZXRUcmFuc2l0aW9uaW5nKCExKSwgc2UodC5fZWxlbWVudCkucmVtb3ZlQ2xhc3MoZ2UpLmFkZENsYXNzKGZlKS50cmlnZ2VyKHVlLkhJRERFTikKICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZVtuXSA9ICIiLCBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSA/IHNlKHRoaXMuX2VsZW1lbnQpLm9uZShNZS5UUkFOU0lUSU9OX0VORCwgbykuZW11bGF0ZVRyYW5zaXRpb25FbmQoNjAwKSA6IG8oKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgdC5zZXRUcmFuc2l0aW9uaW5nID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gdAogICAgICAgICAgICB9LCB0LmRpc3Bvc2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHNlLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgb2UpLCB0aGlzLl9jb25maWcgPSBudWxsLCB0aGlzLl9wYXJlbnQgPSBudWxsLCB0aGlzLl9lbGVtZW50ID0gbnVsbCwgdGhpcy5fdHJpZ2dlckFycmF5ID0gbnVsbCwgdGhpcy5faXNUcmFuc2l0aW9uaW5nID0gbnVsbAogICAgICAgICAgICB9LCB0Ll9nZXRDb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKHQgPSB1KHt9LCBoZSwgdCkpLnRvZ2dsZSA9IEJvb2xlYW4odC50b2dnbGUpLCBNZS50eXBlQ2hlY2tDb25maWcocmUsIHQsIGNlKSwgdAogICAgICAgICAgICB9LCB0Ll9nZXREaW1lbnNpb24gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBzZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcygid2lkdGgiKSA/ICJ3aWR0aCIgOiAiaGVpZ2h0IgogICAgICAgICAgICB9LCB0Ll9nZXRQYXJlbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcywKICAgICAgICAgICAgICAgICAgICB0ID0gbnVsbDsKICAgICAgICAgICAgICAgIE1lLmlzRWxlbWVudCh0aGlzLl9jb25maWcucGFyZW50KSA/ICh0ID0gdGhpcy5fY29uZmlnLnBhcmVudCwgdm9pZCAwICE9PSB0aGlzLl9jb25maWcucGFyZW50LmpxdWVyeSAmJiAodCA9IHRoaXMuX2NvbmZpZy5wYXJlbnRbMF0pKSA6IHQgPSBzZSh0aGlzLl9jb25maWcucGFyZW50KVswXTsKICAgICAgICAgICAgICAgIHZhciBlID0gJ1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXBhcmVudD0iJyArIHRoaXMuX2NvbmZpZy5wYXJlbnQgKyAnIl0nOwogICAgICAgICAgICAgICAgcmV0dXJuIHNlKHQpLmZpbmQoZSkuZWFjaChmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgbi5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzKGEuX2dldFRhcmdldEZyb21FbGVtZW50KGUpLCBbZV0pCiAgICAgICAgICAgICAgICB9KSwgdAogICAgICAgICAgICB9LCB0Ll9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3MgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBpZiAodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gc2UodCkuaGFzQ2xhc3MoZGUpOwogICAgICAgICAgICAgICAgICAgIDAgPCBlLmxlbmd0aCAmJiBzZShlKS50b2dnbGVDbGFzcyhfZSwgIW4pLmF0dHIoImFyaWEtZXhwYW5kZWQiLCBuKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBhLl9nZXRUYXJnZXRGcm9tRWxlbWVudCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gTWUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTsKICAgICAgICAgICAgICAgIHJldHVybiBlID8gc2UoZSlbMF0gOiBudWxsCiAgICAgICAgICAgIH0sIGEuX2pRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uKGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBzZSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHQuZGF0YShvZSksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSB1KHt9LCBoZSwgdC5kYXRhKCksICJvYmplY3QiID09IHR5cGVvZiBpICYmIGkpOwogICAgICAgICAgICAgICAgICAgIGlmICghZSAmJiBuLnRvZ2dsZSAmJiAvc2hvd3xoaWRlLy50ZXN0KGkpICYmIChuLnRvZ2dsZSA9ICExKSwgZSB8fCAoZSA9IG5ldyBhKHRoaXMsIG4pLCB0LmRhdGEob2UsIGUpKSwgInN0cmluZyIgPT0gdHlwZW9mIGkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZvaWQgMCA9PT0gZVtpXSkgdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInICsgaSArICciJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIGVbaV0oKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIG8oYSwgbnVsbCwgW3sKICAgICAgICAgICAgICAgIGtleTogIlZFUlNJT04iLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIjQuMC4wIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGhlCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH1dKSwgYQogICAgICAgIH0oKSwgc2UoZG9jdW1lbnQpLm9uKHVlLkNMSUNLX0RBVEFfQVBJLCBwZSwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAiQSIgPT09IHQuY3VycmVudFRhcmdldC50YWdOYW1lICYmIHQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgdmFyIG4gPSBzZSh0aGlzKSwKICAgICAgICAgICAgICAgIGUgPSBNZS5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpOwogICAgICAgICAgICBzZShlKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBzZSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICBlID0gdC5kYXRhKG9lKSA/ICJ0b2dnbGUiIDogbi5kYXRhKCk7CiAgICAgICAgICAgICAgICB2ZS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwodCwgZSkKICAgICAgICAgICAgfSkKICAgICAgICB9KSwgc2UuZm5bcmVdID0gdmUuX2pRdWVyeUludGVyZmFjZSwgc2UuZm5bcmVdLkNvbnN0cnVjdG9yID0gdmUsIHNlLmZuW3JlXS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBzZS5mbltyZV0gPSBsZSwgdmUuX2pRdWVyeUludGVyZmFjZQogICAgICAgIH0sIHZlKSwKICAgICAgICBZZSA9IChCdCA9ICJkcm9wZG93biIsIFZ0ID0gIi4iICsgKEZ0ID0gImJzLmRyb3Bkb3duIiksIFl0ID0gIi5kYXRhLWFwaSIsIHF0ID0gKFF0ID0gZSkuZm5bQnRdLCB6dCA9IG5ldyBSZWdFeHAoIjM4fDQwfDI3IiksIFp0ID0gewogICAgICAgICAgICBISURFOiAiaGlkZSIgKyBWdCwKICAgICAgICAgICAgSElEREVOOiAiaGlkZGVuIiArIFZ0LAogICAgICAgICAgICBTSE9XOiAic2hvdyIgKyBWdCwKICAgICAgICAgICAgU0hPV046ICJzaG93biIgKyBWdCwKICAgICAgICAgICAgQ0xJQ0s6ICJjbGljayIgKyBWdCwKICAgICAgICAgICAgQ0xJQ0tfREFUQV9BUEk6ICJjbGljayIgKyBWdCArIFl0LAogICAgICAgICAgICBLRVlET1dOX0RBVEFfQVBJOiAia2V5ZG93biIgKyBWdCArIFl0LAogICAgICAgICAgICBLRVlVUF9EQVRBX0FQSTogImtleXVwIiArIFZ0ICsgWXQKICAgICAgICB9LCBKdCA9ICJkaXNhYmxlZCIsICR0ID0gInNob3ciLCBHdCA9ICJkcm9wZG93bi1tZW51LXJpZ2h0IiwgWHQgPSAnW2RhdGEtdG9nZ2xlPSJkcm9wZG93biJdJywgdGUgPSAiLmRyb3Bkb3duLW1lbnUiLCBlZSA9IHsKICAgICAgICAgICAgb2Zmc2V0OiAwLAogICAgICAgICAgICBmbGlwOiAhMCwKICAgICAgICAgICAgYm91bmRhcnk6ICJzY3JvbGxQYXJlbnQiCiAgICAgICAgfSwgbmUgPSB7CiAgICAgICAgICAgIG9mZnNldDogIihudW1iZXJ8c3RyaW5nfGZ1bmN0aW9uKSIsCiAgICAgICAgICAgIGZsaXA6ICJib29sZWFuIiwKICAgICAgICAgICAgYm91bmRhcnk6ICIoc3RyaW5nfGVsZW1lbnQpIgogICAgICAgIH0sIGllID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIGwodCwgZSkgewogICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudCA9IHQsIHRoaXMuX3BvcHBlciA9IG51bGwsIHRoaXMuX2NvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhlKSwgdGhpcy5fbWVudSA9IHRoaXMuX2dldE1lbnVFbGVtZW50KCksIHRoaXMuX2luTmF2YmFyID0gdGhpcy5fZGV0ZWN0TmF2YmFyKCksIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCkKICAgICAgICAgICAgfQogICAgICAgICAgICB2YXIgdCA9IGwucHJvdG90eXBlOwogICAgICAgICAgICByZXR1cm4gdC50b2dnbGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZWxlbWVudC5kaXNhYmxlZCAmJiAhUXQodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoSnQpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBsLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IFF0KHRoaXMuX21lbnUpLmhhc0NsYXNzKCR0KTsKICAgICAgICAgICAgICAgICAgICBpZiAobC5fY2xlYXJNZW51cygpLCAhZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IFF0LkV2ZW50KFp0LlNIT1csIG4pOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoUXQodCkudHJpZ2dlcihpKSwgIWkuaXNEZWZhdWx0UHJldmVudGVkKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5faW5OYXZiYXIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodm9pZCAwID09PSBjKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJCb290c3RyYXAgZHJvcGRvd24gcmVxdWlyZSBQb3BwZXIuanMgKGh0dHBzOi8vcG9wcGVyLmpzLm9yZykiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IHRoaXMuX2VsZW1lbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUXQodCkuaGFzQ2xhc3MoImRyb3B1cCIpICYmIChRdCh0aGlzLl9tZW51KS5oYXNDbGFzcygiZHJvcGRvd24tbWVudS1sZWZ0IikgfHwgUXQodGhpcy5fbWVudSkuaGFzQ2xhc3MoR3QpKSAmJiAocyA9IHQpLCAic2Nyb2xsUGFyZW50IiAhPT0gdGhpcy5fY29uZmlnLmJvdW5kYXJ5ICYmIFF0KHQpLmFkZENsYXNzKCJwb3NpdGlvbi1zdGF0aWMiKSwgdGhpcy5fcG9wcGVyID0gbmV3IGMocywgdGhpcy5fbWVudSwgdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAib250b3VjaHN0YXJ0IiBpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgJiYgMCA9PT0gUXQodCkuY2xvc2VzdCgiLm5hdmJhci1uYXYiKS5sZW5ndGggJiYgUXQoImJvZHkiKS5jaGlsZHJlbigpLm9uKCJtb3VzZW92ZXIiLCBudWxsLCBRdC5ub29wKSwgdGhpcy5fZWxlbWVudC5mb2N1cygpLCB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsICEwKSwgUXQodGhpcy5fbWVudSkudG9nZ2xlQ2xhc3MoJHQpLCBRdCh0KS50b2dnbGVDbGFzcygkdCkudHJpZ2dlcihRdC5FdmVudChadC5TSE9XTiwgbikpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuZGlzcG9zZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgUXQucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCBGdCksIFF0KHRoaXMuX2VsZW1lbnQpLm9mZihWdCksIHRoaXMuX2VsZW1lbnQgPSBudWxsLCAodGhpcy5fbWVudSA9IG51bGwpICE9PSB0aGlzLl9wb3BwZXIgJiYgKHRoaXMuX3BvcHBlci5kZXN0cm95KCksIHRoaXMuX3BvcHBlciA9IG51bGwpCiAgICAgICAgICAgIH0sIHQudXBkYXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9pbk5hdmJhciA9IHRoaXMuX2RldGVjdE5hdmJhcigpLCBudWxsICE9PSB0aGlzLl9wb3BwZXIgJiYgdGhpcy5fcG9wcGVyLnNjaGVkdWxlVXBkYXRlKCkKICAgICAgICAgICAgfSwgdC5fYWRkRXZlbnRMaXN0ZW5lcnMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIFF0KHRoaXMuX2VsZW1lbnQpLm9uKFp0LkNMSUNLLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpLCB0LnN0b3BQcm9wYWdhdGlvbigpLCBlLnRvZ2dsZSgpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCB0Ll9nZXRDb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdCA9IHUoe30sIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCwgUXQodGhpcy5fZWxlbWVudCkuZGF0YSgpLCB0KSwgTWUudHlwZUNoZWNrQ29uZmlnKEJ0LCB0LCB0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSwgdAogICAgICAgICAgICB9LCB0Ll9nZXRNZW51RWxlbWVudCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9tZW51KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBsLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9tZW51ID0gUXQodCkuZmluZCh0ZSlbMF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9tZW51CiAgICAgICAgICAgIH0sIHQuX2dldFBsYWNlbWVudCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBRdCh0aGlzLl9lbGVtZW50KS5wYXJlbnQoKSwKICAgICAgICAgICAgICAgICAgICBlID0gImJvdHRvbS1zdGFydCI7CiAgICAgICAgICAgICAgICByZXR1cm4gdC5oYXNDbGFzcygiZHJvcHVwIikgPyAoZSA9ICJ0b3Atc3RhcnQiLCBRdCh0aGlzLl9tZW51KS5oYXNDbGFzcyhHdCkgJiYgKGUgPSAidG9wLWVuZCIpKSA6IHQuaGFzQ2xhc3MoImRyb3ByaWdodCIpID8gZSA9ICJyaWdodC1zdGFydCIgOiB0Lmhhc0NsYXNzKCJkcm9wbGVmdCIpID8gZSA9ICJsZWZ0LXN0YXJ0IiA6IFF0KHRoaXMuX21lbnUpLmhhc0NsYXNzKEd0KSAmJiAoZSA9ICJib3R0b20tZW5kIiksIGUKICAgICAgICAgICAgfSwgdC5fZGV0ZWN0TmF2YmFyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gMCA8IFF0KHRoaXMuX2VsZW1lbnQpLmNsb3Nlc3QoIi5uYXZiYXIiKS5sZW5ndGgKICAgICAgICAgICAgfSwgdC5fZ2V0UG9wcGVyQ29uZmlnID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgdCA9IHt9OwogICAgICAgICAgICAgICAgcmV0dXJuICJmdW5jdGlvbiIgPT0gdHlwZW9mIHRoaXMuX2NvbmZpZy5vZmZzZXQgPyB0LmZuID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0Lm9mZnNldHMgPSB1KHt9LCB0Lm9mZnNldHMsIGUuX2NvbmZpZy5vZmZzZXQodC5vZmZzZXRzKSB8fCB7fSksIHQKICAgICAgICAgICAgICAgIH0gOiB0Lm9mZnNldCA9IHRoaXMuX2NvbmZpZy5vZmZzZXQsIHsKICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6IHRoaXMuX2dldFBsYWNlbWVudCgpLAogICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyczogewogICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHQsCiAgICAgICAgICAgICAgICAgICAgICAgIGZsaXA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRoaXMuX2NvbmZpZy5mbGlwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHByZXZlbnRPdmVyZmxvdzogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm91bmRhcmllc0VsZW1lbnQ6IHRoaXMuX2NvbmZpZy5ib3VuZGFyeQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBsLl9qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gUXQodGhpcykuZGF0YShGdCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHQgfHwgKHQgPSBuZXcgbCh0aGlzLCAib2JqZWN0IiA9PSB0eXBlb2YgZSA/IGUgOiBudWxsKSwgUXQodGhpcykuZGF0YShGdCwgdCkpLCAic3RyaW5nIiA9PSB0eXBlb2YgZSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAodm9pZCAwID09PSB0W2VdKSB0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicgKyBlICsgJyInKTsKICAgICAgICAgICAgICAgICAgICAgICAgdFtlXSgpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgbC5fY2xlYXJNZW51cyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGlmICghdCB8fCAzICE9PSB0LndoaWNoICYmICgia2V5dXAiICE9PSB0LnR5cGUgfHwgOSA9PT0gdC53aGljaCkpCiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSA9IFF0Lm1ha2VBcnJheShRdChYdCkpLCBuID0gMDsgbiA8IGUubGVuZ3RoOyBuKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBsLl9nZXRQYXJlbnRGcm9tRWxlbWVudChlW25dKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBRdChlW25dKS5kYXRhKEZ0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogZVtuXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gcy5fbWVudTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChRdChpKS5oYXNDbGFzcygkdCkgJiYgISh0ICYmICgiY2xpY2siID09PSB0LnR5cGUgJiYgL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKSB8fCAia2V5dXAiID09PSB0LnR5cGUgJiYgOSA9PT0gdC53aGljaCkgJiYgUXQuY29udGFpbnMoaSwgdC50YXJnZXQpKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBhID0gUXQuRXZlbnQoWnQuSElERSwgcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUXQoaSkudHJpZ2dlcihhKSwgYS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSB8fCAoIm9udG91Y2hzdGFydCIgaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ICYmIFF0KCJib2R5IikuY2hpbGRyZW4oKS5vZmYoIm1vdXNlb3ZlciIsIG51bGwsIFF0Lm5vb3ApLCBlW25dLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIpLCBRdChvKS5yZW1vdmVDbGFzcygkdCksIFF0KGkpLnJlbW92ZUNsYXNzKCR0KS50cmlnZ2VyKFF0LkV2ZW50KFp0LkhJRERFTiwgcikpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBsLl9nZXRQYXJlbnRGcm9tRWxlbWVudCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBuID0gTWUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTsKICAgICAgICAgICAgICAgIHJldHVybiBuICYmIChlID0gUXQobilbMF0pLCBlIHx8IHQucGFyZW50Tm9kZQogICAgICAgICAgICB9LCBsLl9kYXRhQXBpS2V5ZG93bkhhbmRsZXIgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAoKC9pbnB1dHx0ZXh0YXJlYS9pLnRlc3QodC50YXJnZXQudGFnTmFtZSkgPyAhKDMyID09PSB0LndoaWNoIHx8IDI3ICE9PSB0LndoaWNoICYmICg0MCAhPT0gdC53aGljaCAmJiAzOCAhPT0gdC53aGljaCB8fCBRdCh0LnRhcmdldCkuY2xvc2VzdCh0ZSkubGVuZ3RoKSkgOiB6dC50ZXN0KHQud2hpY2gpKSAmJiAodC5wcmV2ZW50RGVmYXVsdCgpLCB0LnN0b3BQcm9wYWdhdGlvbigpLCAhdGhpcy5kaXNhYmxlZCAmJiAhUXQodGhpcykuaGFzQ2xhc3MoSnQpKSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gbC5fZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBRdChlKS5oYXNDbGFzcygkdCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKChuIHx8IDI3ID09PSB0LndoaWNoICYmIDMyID09PSB0LndoaWNoKSAmJiAoIW4gfHwgMjcgIT09IHQud2hpY2ggJiYgMzIgIT09IHQud2hpY2gpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0gUXQoZSkuZmluZCgiLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCkiKS5nZXQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDAgIT09IGkubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IGkuaW5kZXhPZih0LnRhcmdldCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzOCA9PT0gdC53aGljaCAmJiAwIDwgcyAmJiBzLS0sIDQwID09PSB0LndoaWNoICYmIHMgPCBpLmxlbmd0aCAtIDEgJiYgcysrLCBzIDwgMCAmJiAocyA9IDApLCBpW3NdLmZvY3VzKCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgyNyA9PT0gdC53aGljaCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHIgPSBRdChlKS5maW5kKFh0KVswXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFF0KHIpLnRyaWdnZXIoImZvY3VzIikKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBRdCh0aGlzKS50cmlnZ2VyKCJjbGljayIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBvKGwsIG51bGwsIFt7CiAgICAgICAgICAgICAgICBrZXk6ICJWRVJTSU9OIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICI0LjAuMCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAga2V5OiAiRGVmYXVsdCIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0VHlwZSIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9XSksIGwKICAgICAgICB9KCksIFF0KGRvY3VtZW50KS5vbihadC5LRVlET1dOX0RBVEFfQVBJLCBYdCwgaWUuX2RhdGFBcGlLZXlkb3duSGFuZGxlcikub24oWnQuS0VZRE9XTl9EQVRBX0FQSSwgdGUsIGllLl9kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLm9uKFp0LkNMSUNLX0RBVEFfQVBJICsgIiAiICsgWnQuS0VZVVBfREFUQV9BUEksIGllLl9jbGVhck1lbnVzKS5vbihadC5DTElDS19EQVRBX0FQSSwgWHQsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdC5wcmV2ZW50RGVmYXVsdCgpLCB0LnN0b3BQcm9wYWdhdGlvbigpLCBpZS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoUXQodGhpcyksICJ0b2dnbGUiKQogICAgICAgIH0pLm9uKFp0LkNMSUNLX0RBVEFfQVBJLCAiLmRyb3Bkb3duIGZvcm0iLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHQuc3RvcFByb3BhZ2F0aW9uKCkKICAgICAgICB9KSwgUXQuZm5bQnRdID0gaWUuX2pRdWVyeUludGVyZmFjZSwgUXQuZm5bQnRdLkNvbnN0cnVjdG9yID0gaWUsIFF0LmZuW0J0XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBRdC5mbltCdF0gPSBxdCwgaWUuX2pRdWVyeUludGVyZmFjZQogICAgICAgIH0sIGllKSwKICAgICAgICBxZSA9IChEdCA9ICIuIiArIChBdCA9ICJicy5tb2RhbCIpLCBTdCA9ICh3dCA9IGUpLmZuLm1vZGFsLCBOdCA9IHsKICAgICAgICAgICAgYmFja2Ryb3A6ICEwLAogICAgICAgICAgICBrZXlib2FyZDogITAsCiAgICAgICAgICAgIGZvY3VzOiAhMCwKICAgICAgICAgICAgc2hvdzogITAKICAgICAgICB9LCBPdCA9IHsKICAgICAgICAgICAgYmFja2Ryb3A6ICIoYm9vbGVhbnxzdHJpbmcpIiwKICAgICAgICAgICAga2V5Ym9hcmQ6ICJib29sZWFuIiwKICAgICAgICAgICAgZm9jdXM6ICJib29sZWFuIiwKICAgICAgICAgICAgc2hvdzogImJvb2xlYW4iCiAgICAgICAgfSwga3QgPSB7CiAgICAgICAgICAgIEhJREU6ICJoaWRlIiArIER0LAogICAgICAgICAgICBISURERU46ICJoaWRkZW4iICsgRHQsCiAgICAgICAgICAgIFNIT1c6ICJzaG93IiArIER0LAogICAgICAgICAgICBTSE9XTjogInNob3duIiArIER0LAogICAgICAgICAgICBGT0NVU0lOOiAiZm9jdXNpbiIgKyBEdCwKICAgICAgICAgICAgUkVTSVpFOiAicmVzaXplIiArIER0LAogICAgICAgICAgICBDTElDS19ESVNNSVNTOiAiY2xpY2suZGlzbWlzcyIgKyBEdCwKICAgICAgICAgICAgS0VZRE9XTl9ESVNNSVNTOiAia2V5ZG93bi5kaXNtaXNzIiArIER0LAogICAgICAgICAgICBNT1VTRVVQX0RJU01JU1M6ICJtb3VzZXVwLmRpc21pc3MiICsgRHQsCiAgICAgICAgICAgIE1PVVNFRE9XTl9ESVNNSVNTOiAibW91c2Vkb3duLmRpc21pc3MiICsgRHQsCiAgICAgICAgICAgIENMSUNLX0RBVEFfQVBJOiAiY2xpY2siICsgRHQgKyAiLmRhdGEtYXBpIgogICAgICAgIH0sIFB0ID0gIm1vZGFsLW9wZW4iLCBqdCA9ICJmYWRlIiwgSHQgPSAic2hvdyIsIEx0ID0gIi5tb2RhbC1kaWFsb2ciLCBSdCA9ICdbZGF0YS10b2dnbGU9Im1vZGFsIl0nLCB4dCA9ICdbZGF0YS1kaXNtaXNzPSJtb2RhbCJdJywgVXQgPSAiLmZpeGVkLXRvcCwgLmZpeGVkLWJvdHRvbSwgLmlzLWZpeGVkLCAuc3RpY2t5LXRvcCIsIFd0ID0gIi5zdGlja3ktdG9wIiwgS3QgPSAiLm5hdmJhci10b2dnbGVyIiwgTXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZnVuY3Rpb24gcyh0LCBlKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoZSksIHRoaXMuX2VsZW1lbnQgPSB0LCB0aGlzLl9kaWFsb2cgPSB3dCh0KS5maW5kKEx0KVswXSwgdGhpcy5fYmFja2Ryb3AgPSBudWxsLCB0aGlzLl9pc1Nob3duID0gITEsIHRoaXMuX2lzQm9keU92ZXJmbG93aW5nID0gITEsIHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2sgPSAhMSwgdGhpcy5fb3JpZ2luYWxCb2R5UGFkZGluZyA9IDAsIHRoaXMuX3Njcm9sbGJhcldpZHRoID0gMAogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB0ID0gcy5wcm90b3R5cGU7CiAgICAgICAgICAgIHJldHVybiB0LnRvZ2dsZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3duID8gdGhpcy5oaWRlKCkgOiB0aGlzLnNob3codCkKICAgICAgICAgICAgfSwgdC5zaG93ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9pc1RyYW5zaXRpb25pbmcgJiYgIXRoaXMuX2lzU2hvd24pIHsKICAgICAgICAgICAgICAgICAgICBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiB3dCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhqdCkgJiYgKHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9ICEwKTsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHd0LkV2ZW50KGt0LlNIT1csIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogdAogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIHd0KHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIobiksIHRoaXMuX2lzU2hvd24gfHwgbi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSB8fCAodGhpcy5faXNTaG93biA9ICEwLCB0aGlzLl9jaGVja1Njcm9sbGJhcigpLCB0aGlzLl9zZXRTY3JvbGxiYXIoKSwgdGhpcy5fYWRqdXN0RGlhbG9nKCksIHd0KGRvY3VtZW50LmJvZHkpLmFkZENsYXNzKFB0KSwgdGhpcy5fc2V0RXNjYXBlRXZlbnQoKSwgdGhpcy5fc2V0UmVzaXplRXZlbnQoKSwgd3QodGhpcy5fZWxlbWVudCkub24oa3QuQ0xJQ0tfRElTTUlTUywgeHQsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuaGlkZSh0KQogICAgICAgICAgICAgICAgICAgIH0pLCB3dCh0aGlzLl9kaWFsb2cpLm9uKGt0Lk1PVVNFRE9XTl9ESVNNSVNTLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgd3QoZS5fZWxlbWVudCkub25lKGt0Lk1PVVNFVVBfRElTTUlTUywgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgd3QodC50YXJnZXQpLmlzKGUuX2VsZW1lbnQpICYmIChlLl9pZ25vcmVCYWNrZHJvcENsaWNrID0gITApCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSksIHRoaXMuX3Nob3dCYWNrZHJvcChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuX3Nob3dFbGVtZW50KHQpCiAgICAgICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuaGlkZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIGlmICh0ICYmIHQucHJldmVudERlZmF1bHQoKSwgIXRoaXMuX2lzVHJhbnNpdGlvbmluZyAmJiB0aGlzLl9pc1Nob3duKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSB3dC5FdmVudChrdC5ISURFKTsKICAgICAgICAgICAgICAgICAgICBpZiAod3QodGhpcy5fZWxlbWVudCkudHJpZ2dlcihuKSwgdGhpcy5faXNTaG93biAmJiAhbi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSkgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9pc1Nob3duID0gITE7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0gTWUuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkgJiYgd3QodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoanQpOwogICAgICAgICAgICAgICAgICAgICAgICBpICYmICh0aGlzLl9pc1RyYW5zaXRpb25pbmcgPSAhMCksIHRoaXMuX3NldEVzY2FwZUV2ZW50KCksIHRoaXMuX3NldFJlc2l6ZUV2ZW50KCksIHd0KGRvY3VtZW50KS5vZmYoa3QuRk9DVVNJTiksIHd0KHRoaXMuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKEh0KSwgd3QodGhpcy5fZWxlbWVudCkub2ZmKGt0LkNMSUNLX0RJU01JU1MpLCB3dCh0aGlzLl9kaWFsb2cpLm9mZihrdC5NT1VTRURPV05fRElTTUlTUyksIGkgPyB3dCh0aGlzLl9lbGVtZW50KS5vbmUoTWUuVFJBTlNJVElPTl9FTkQsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLl9oaWRlTW9kYWwodCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoMzAwKSA6IHRoaXMuX2hpZGVNb2RhbCgpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0LmRpc3Bvc2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHd0LnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgQXQpLCB3dCh3aW5kb3csIGRvY3VtZW50LCB0aGlzLl9lbGVtZW50LCB0aGlzLl9iYWNrZHJvcCkub2ZmKER0KSwgdGhpcy5fY29uZmlnID0gbnVsbCwgdGhpcy5fZWxlbWVudCA9IG51bGwsIHRoaXMuX2RpYWxvZyA9IG51bGwsIHRoaXMuX2JhY2tkcm9wID0gbnVsbCwgdGhpcy5faXNTaG93biA9IG51bGwsIHRoaXMuX2lzQm9keU92ZXJmbG93aW5nID0gbnVsbCwgdGhpcy5faWdub3JlQmFja2Ryb3BDbGljayA9IG51bGwsIHRoaXMuX3Njcm9sbGJhcldpZHRoID0gbnVsbAogICAgICAgICAgICB9LCB0LmhhbmRsZVVwZGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5fYWRqdXN0RGlhbG9nKCkKICAgICAgICAgICAgfSwgdC5fZ2V0Q29uZmlnID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHQgPSB1KHt9LCBOdCwgdCksIE1lLnR5cGVDaGVja0NvbmZpZygibW9kYWwiLCB0LCBPdCksIHQKICAgICAgICAgICAgfSwgdC5fc2hvd0VsZW1lbnQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgbiA9IE1lLnN1cHBvcnRzVHJhbnNpdGlvbkVuZCgpICYmIHd0KHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGp0KTsKICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSAmJiB0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFIHx8IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudCksIHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICJibG9jayIsIHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWhpZGRlbiIpLCB0aGlzLl9lbGVtZW50LnNjcm9sbFRvcCA9IDAsIG4gJiYgTWUucmVmbG93KHRoaXMuX2VsZW1lbnQpLCB3dCh0aGlzLl9lbGVtZW50KS5hZGRDbGFzcyhIdCksIHRoaXMuX2NvbmZpZy5mb2N1cyAmJiB0aGlzLl9lbmZvcmNlRm9jdXMoKTsKICAgICAgICAgICAgICAgIHZhciBpID0gd3QuRXZlbnQoa3QuU0hPV04sIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogdAogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgIHMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZS5fY29uZmlnLmZvY3VzICYmIGUuX2VsZW1lbnQuZm9jdXMoKSwgZS5faXNUcmFuc2l0aW9uaW5nID0gITEsIHd0KGUuX2VsZW1lbnQpLnRyaWdnZXIoaSkKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgbiA/IHd0KHRoaXMuX2RpYWxvZykub25lKE1lLlRSQU5TSVRJT05fRU5ELCBzKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCgzMDApIDogcygpCiAgICAgICAgICAgIH0sIHQuX2VuZm9yY2VGb2N1cyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzOwogICAgICAgICAgICAgICAgd3QoZG9jdW1lbnQpLm9mZihrdC5GT0NVU0lOKS5vbihrdC5GT0NVU0lOLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQgIT09IHQudGFyZ2V0ICYmIGUuX2VsZW1lbnQgIT09IHQudGFyZ2V0ICYmIDAgPT09IHd0KGUuX2VsZW1lbnQpLmhhcyh0LnRhcmdldCkubGVuZ3RoICYmIGUuX2VsZW1lbnQuZm9jdXMoKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgdC5fc2V0RXNjYXBlRXZlbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuX2lzU2hvd24gJiYgdGhpcy5fY29uZmlnLmtleWJvYXJkID8gd3QodGhpcy5fZWxlbWVudCkub24oa3QuS0VZRE9XTl9ESVNNSVNTLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgMjcgPT09IHQud2hpY2ggJiYgKHQucHJldmVudERlZmF1bHQoKSwgZS5oaWRlKCkpCiAgICAgICAgICAgICAgICB9KSA6IHRoaXMuX2lzU2hvd24gfHwgd3QodGhpcy5fZWxlbWVudCkub2ZmKGt0LktFWURPV05fRElTTUlTUykKICAgICAgICAgICAgfSwgdC5fc2V0UmVzaXplRXZlbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuX2lzU2hvd24gPyB3dCh3aW5kb3cpLm9uKGt0LlJFU0laRSwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmhhbmRsZVVwZGF0ZSh0KQogICAgICAgICAgICAgICAgfSkgOiB3dCh3aW5kb3cpLm9mZihrdC5SRVNJWkUpCiAgICAgICAgICAgIH0sIHQuX2hpZGVNb2RhbCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzOwogICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiLCB0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iLCAhMCksIHRoaXMuX2lzVHJhbnNpdGlvbmluZyA9ICExLCB0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgd3QoZG9jdW1lbnQuYm9keSkucmVtb3ZlQ2xhc3MoUHQpLCB0Ll9yZXNldEFkanVzdG1lbnRzKCksIHQuX3Jlc2V0U2Nyb2xsYmFyKCksIHd0KHQuX2VsZW1lbnQpLnRyaWdnZXIoa3QuSElEREVOKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgdC5fcmVtb3ZlQmFja2Ryb3AgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2JhY2tkcm9wICYmICh3dCh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlKCksIHRoaXMuX2JhY2tkcm9wID0gbnVsbCkKICAgICAgICAgICAgfSwgdC5fc2hvd0JhY2tkcm9wID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLAogICAgICAgICAgICAgICAgICAgIG4gPSB3dCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhqdCkgPyBqdCA6ICIiOwogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzU2hvd24gJiYgdGhpcy5fY29uZmlnLmJhY2tkcm9wKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiBuOwogICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9iYWNrZHJvcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLCB0aGlzLl9iYWNrZHJvcC5jbGFzc05hbWUgPSAibW9kYWwtYmFja2Ryb3AiLCBuICYmIHd0KHRoaXMuX2JhY2tkcm9wKS5hZGRDbGFzcyhuKSwgd3QodGhpcy5fYmFja2Ryb3ApLmFwcGVuZFRvKGRvY3VtZW50LmJvZHkpLCB3dCh0aGlzLl9lbGVtZW50KS5vbihrdC5DTElDS19ESVNNSVNTLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLl9pZ25vcmVCYWNrZHJvcENsaWNrID8gZS5faWdub3JlQmFja2Ryb3BDbGljayA9ICExIDogdC50YXJnZXQgPT09IHQuY3VycmVudFRhcmdldCAmJiAoInN0YXRpYyIgPT09IGUuX2NvbmZpZy5iYWNrZHJvcCA/IGUuX2VsZW1lbnQuZm9jdXMoKSA6IGUuaGlkZSgpKQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgaSAmJiBNZS5yZWZsb3codGhpcy5fYmFja2Ryb3ApLCB3dCh0aGlzLl9iYWNrZHJvcCkuYWRkQ2xhc3MoSHQpLCAhdCkgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIGlmICghaSkgcmV0dXJuIHZvaWQgdCgpOwogICAgICAgICAgICAgICAgICAgIHd0KHRoaXMuX2JhY2tkcm9wKS5vbmUoTWUuVFJBTlNJVElPTl9FTkQsIHQpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKDE1MCkKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuX2lzU2hvd24gJiYgdGhpcy5fYmFja2Ryb3ApIHsKICAgICAgICAgICAgICAgICAgICB3dCh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlQ2xhc3MoSHQpOwogICAgICAgICAgICAgICAgICAgIHZhciBzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGUuX3JlbW92ZUJhY2tkcm9wKCksIHQgJiYgdCgpCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiB3dCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhqdCkgPyB3dCh0aGlzLl9iYWNrZHJvcCkub25lKE1lLlRSQU5TSVRJT05fRU5ELCBzKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCgxNTApIDogcygpCiAgICAgICAgICAgICAgICB9IGVsc2UgdCAmJiB0KCkKICAgICAgICAgICAgfSwgdC5fYWRqdXN0RGlhbG9nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMuX2VsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDsKICAgICAgICAgICAgICAgICF0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyAmJiB0ICYmICh0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0ID0gdGhpcy5fc2Nyb2xsYmFyV2lkdGggKyAicHgiKSwgdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcgJiYgIXQgJiYgKHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gdGhpcy5fc2Nyb2xsYmFyV2lkdGggKyAicHgiKQogICAgICAgICAgICB9LCB0Ll9yZXNldEFkanVzdG1lbnRzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0ID0gIiIsIHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0ID0gIiIKICAgICAgICAgICAgfSwgdC5fY2hlY2tTY3JvbGxiYXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKICAgICAgICAgICAgICAgIHRoaXMuX2lzQm9keU92ZXJmbG93aW5nID0gdC5sZWZ0ICsgdC5yaWdodCA8IHdpbmRvdy5pbm5lcldpZHRoLCB0aGlzLl9zY3JvbGxiYXJXaWR0aCA9IHRoaXMuX2dldFNjcm9sbGJhcldpZHRoKCkKICAgICAgICAgICAgfSwgdC5fc2V0U2Nyb2xsYmFyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgcyA9IHRoaXM7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5faXNCb2R5T3ZlcmZsb3dpbmcpIHsKICAgICAgICAgICAgICAgICAgICB3dChVdCkuZWFjaChmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBuID0gd3QoZSlbMF0uc3R5bGUucGFkZGluZ1JpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHd0KGUpLmNzcygicGFkZGluZy1yaWdodCIpOwogICAgICAgICAgICAgICAgICAgICAgICB3dChlKS5kYXRhKCJwYWRkaW5nLXJpZ2h0IiwgbikuY3NzKCJwYWRkaW5nLXJpZ2h0IiwgcGFyc2VGbG9hdChpKSArIHMuX3Njcm9sbGJhcldpZHRoICsgInB4IikKICAgICAgICAgICAgICAgICAgICB9KSwgd3QoV3QpLmVhY2goZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHd0KGUpWzBdLnN0eWxlLm1hcmdpblJpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHd0KGUpLmNzcygibWFyZ2luLXJpZ2h0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgIHd0KGUpLmRhdGEoIm1hcmdpbi1yaWdodCIsIG4pLmNzcygibWFyZ2luLXJpZ2h0IiwgcGFyc2VGbG9hdChpKSAtIHMuX3Njcm9sbGJhcldpZHRoICsgInB4IikKICAgICAgICAgICAgICAgICAgICB9KSwgd3QoS3QpLmVhY2goZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHd0KGUpWzBdLnN0eWxlLm1hcmdpblJpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHd0KGUpLmNzcygibWFyZ2luLXJpZ2h0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgIHd0KGUpLmRhdGEoIm1hcmdpbi1yaWdodCIsIG4pLmNzcygibWFyZ2luLXJpZ2h0IiwgcGFyc2VGbG9hdChpKSArIHMuX3Njcm9sbGJhcldpZHRoICsgInB4IikKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1JpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICBlID0gd3QoImJvZHkiKS5jc3MoInBhZGRpbmctcmlnaHQiKTsKICAgICAgICAgICAgICAgICAgICB3dCgiYm9keSIpLmRhdGEoInBhZGRpbmctcmlnaHQiLCB0KS5jc3MoInBhZGRpbmctcmlnaHQiLCBwYXJzZUZsb2F0KGUpICsgdGhpcy5fc2Nyb2xsYmFyV2lkdGggKyAicHgiKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0Ll9yZXNldFNjcm9sbGJhciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgd3QoVXQpLmVhY2goZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gd3QoZSkuZGF0YSgicGFkZGluZy1yaWdodCIpOwogICAgICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gbiAmJiB3dChlKS5jc3MoInBhZGRpbmctcmlnaHQiLCBuKS5yZW1vdmVEYXRhKCJwYWRkaW5nLXJpZ2h0IikKICAgICAgICAgICAgICAgIH0pLCB3dChXdCArICIsICIgKyBLdCkuZWFjaChmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSB3dChlKS5kYXRhKCJtYXJnaW4tcmlnaHQiKTsKICAgICAgICAgICAgICAgICAgICB2b2lkIDAgIT09IG4gJiYgd3QoZSkuY3NzKCJtYXJnaW4tcmlnaHQiLCBuKS5yZW1vdmVEYXRhKCJtYXJnaW4tcmlnaHQiKQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHd0KCJib2R5IikuZGF0YSgicGFkZGluZy1yaWdodCIpOwogICAgICAgICAgICAgICAgdm9pZCAwICE9PSB0ICYmIHd0KCJib2R5IikuY3NzKCJwYWRkaW5nLXJpZ2h0IiwgdCkucmVtb3ZlRGF0YSgicGFkZGluZy1yaWdodCIpCiAgICAgICAgICAgIH0sIHQuX2dldFNjcm9sbGJhcldpZHRoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgICAgICAgICAgICAgdC5jbGFzc05hbWUgPSAibW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUiLCBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpOwogICAgICAgICAgICAgICAgdmFyIGUgPSB0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoIC0gdC5jbGllbnRXaWR0aDsKICAgICAgICAgICAgICAgIHJldHVybiBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHQpLCBlCiAgICAgICAgICAgIH0sIHMuX2pRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uKG4sIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSB3dCh0aGlzKS5kYXRhKEF0KSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHUoe30sIHMuRGVmYXVsdCwgd3QodGhpcykuZGF0YSgpLCAib2JqZWN0IiA9PSB0eXBlb2YgbiAmJiBuKTsKICAgICAgICAgICAgICAgICAgICBpZiAodCB8fCAodCA9IG5ldyBzKHRoaXMsIGUpLCB3dCh0aGlzKS5kYXRhKEF0LCB0KSksICJzdHJpbmciID09IHR5cGVvZiBuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IHRbbl0pIHRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyArIG4gKyAnIicpOwogICAgICAgICAgICAgICAgICAgICAgICB0W25dKGkpCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGUuc2hvdyAmJiB0LnNob3coaSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIG8ocywgbnVsbCwgW3sKICAgICAgICAgICAgICAgIGtleTogIlZFUlNJT04iLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIjQuMC4wIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE50CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH1dKSwgcwogICAgICAgIH0oKSwgd3QoZG9jdW1lbnQpLm9uKGt0LkNMSUNLX0RBVEFfQVBJLCBSdCwgZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSwgbiA9IHRoaXMsCiAgICAgICAgICAgICAgICBpID0gTWUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0aGlzKTsKICAgICAgICAgICAgaSAmJiAoZSA9IHd0KGkpWzBdKTsKICAgICAgICAgICAgdmFyIHMgPSB3dChlKS5kYXRhKEF0KSA/ICJ0b2dnbGUiIDogdSh7fSwgd3QoZSkuZGF0YSgpLCB3dCh0aGlzKS5kYXRhKCkpOwogICAgICAgICAgICAiQSIgIT09IHRoaXMudGFnTmFtZSAmJiAiQVJFQSIgIT09IHRoaXMudGFnTmFtZSB8fCB0LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgIHZhciByID0gd3QoZSkub25lKGt0LlNIT1csIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQuaXNEZWZhdWx0UHJldmVudGVkKCkgfHwgci5vbmUoa3QuSElEREVOLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB3dChuKS5pcygiOnZpc2libGUiKSAmJiBuLmZvY3VzKCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBNdC5falF1ZXJ5SW50ZXJmYWNlLmNhbGwod3QoZSksIHMsIHRoaXMpCiAgICAgICAgfSksIHd0LmZuLm1vZGFsID0gTXQuX2pRdWVyeUludGVyZmFjZSwgd3QuZm4ubW9kYWwuQ29uc3RydWN0b3IgPSBNdCwgd3QuZm4ubW9kYWwubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gd3QuZm4ubW9kYWwgPSBTdCwgTXQuX2pRdWVyeUludGVyZmFjZQogICAgICAgIH0sIE10KSwKICAgICAgICB6ZSA9IChjdCA9ICJ0b29sdGlwIiwgZHQgPSAiLiIgKyAodXQgPSAiYnMudG9vbHRpcCIpLCBmdCA9IChodCA9IGUpLmZuW2N0XSwgZ3QgPSBuZXcgUmVnRXhwKCIoXnxcXHMpYnMtdG9vbHRpcFxcUysiLCAiZyIpLCBwdCA9IHsKICAgICAgICAgICAgYW5pbWF0aW9uOiAhMCwKICAgICAgICAgICAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPSJ0b29sdGlwIiByb2xlPSJ0b29sdGlwIj48ZGl2IGNsYXNzPSJhcnJvdyI+PC9kaXY+PGRpdiBjbGFzcz0idG9vbHRpcC1pbm5lciI+PC9kaXY+PC9kaXY+JywKICAgICAgICAgICAgdHJpZ2dlcjogImhvdmVyIGZvY3VzIiwKICAgICAgICAgICAgdGl0bGU6ICIiLAogICAgICAgICAgICBkZWxheTogMCwKICAgICAgICAgICAgaHRtbDogIShtdCA9IHsKICAgICAgICAgICAgICAgIEFVVE86ICJhdXRvIiwKICAgICAgICAgICAgICAgIFRPUDogInRvcCIsCiAgICAgICAgICAgICAgICBSSUdIVDogInJpZ2h0IiwKICAgICAgICAgICAgICAgIEJPVFRPTTogImJvdHRvbSIsCiAgICAgICAgICAgICAgICBMRUZUOiAibGVmdCIKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIHNlbGVjdG9yOiAhKF90ID0gewogICAgICAgICAgICAgICAgYW5pbWF0aW9uOiAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogInN0cmluZyIsCiAgICAgICAgICAgICAgICB0aXRsZTogIihzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbikiLAogICAgICAgICAgICAgICAgdHJpZ2dlcjogInN0cmluZyIsCiAgICAgICAgICAgICAgICBkZWxheTogIihudW1iZXJ8b2JqZWN0KSIsCiAgICAgICAgICAgICAgICBodG1sOiAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICBzZWxlY3RvcjogIihzdHJpbmd8Ym9vbGVhbikiLAogICAgICAgICAgICAgICAgcGxhY2VtZW50OiAiKHN0cmluZ3xmdW5jdGlvbikiLAogICAgICAgICAgICAgICAgb2Zmc2V0OiAiKG51bWJlcnxzdHJpbmcpIiwKICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogIihzdHJpbmd8ZWxlbWVudHxib29sZWFuKSIsCiAgICAgICAgICAgICAgICBmYWxsYmFja1BsYWNlbWVudDogIihzdHJpbmd8YXJyYXkpIiwKICAgICAgICAgICAgICAgIGJvdW5kYXJ5OiAiKHN0cmluZ3xlbGVtZW50KSIKICAgICAgICAgICAgfSksCiAgICAgICAgICAgIHBsYWNlbWVudDogInRvcCIsCiAgICAgICAgICAgIG9mZnNldDogMCwKICAgICAgICAgICAgY29udGFpbmVyOiAhMSwKICAgICAgICAgICAgZmFsbGJhY2tQbGFjZW1lbnQ6ICJmbGlwIiwKICAgICAgICAgICAgYm91bmRhcnk6ICJzY3JvbGxQYXJlbnQiCiAgICAgICAgfSwgRXQgPSB7CiAgICAgICAgICAgIEhJREU6ICJoaWRlIiArIGR0LAogICAgICAgICAgICBISURERU46ICJoaWRkZW4iICsgZHQsCiAgICAgICAgICAgIFNIT1c6ICh2dCA9ICJzaG93IikgKyBkdCwKICAgICAgICAgICAgU0hPV046ICJzaG93biIgKyBkdCwKICAgICAgICAgICAgSU5TRVJURUQ6ICJpbnNlcnRlZCIgKyBkdCwKICAgICAgICAgICAgQ0xJQ0s6ICJjbGljayIgKyBkdCwKICAgICAgICAgICAgRk9DVVNJTjogImZvY3VzaW4iICsgZHQsCiAgICAgICAgICAgIEZPQ1VTT1VUOiAiZm9jdXNvdXQiICsgZHQsCiAgICAgICAgICAgIE1PVVNFRU5URVI6ICJtb3VzZWVudGVyIiArIGR0LAogICAgICAgICAgICBNT1VTRUxFQVZFOiAibW91c2VsZWF2ZSIgKyBkdAogICAgICAgIH0sIHl0ID0gImZhZGUiLCBDdCA9ICJzaG93IiwgVHQgPSAiaG92ZXIiLCBidCA9ICJmb2N1cyIsIEl0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIGgodCwgZSkgewogICAgICAgICAgICAgICAgaWYgKHZvaWQgMCA9PT0gYykgdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyLmpzIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7CiAgICAgICAgICAgICAgICB0aGlzLl9pc0VuYWJsZWQgPSAhMCwgdGhpcy5fdGltZW91dCA9IDAsIHRoaXMuX2hvdmVyU3RhdGUgPSAiIiwgdGhpcy5fYWN0aXZlVHJpZ2dlciA9IHt9LCB0aGlzLl9wb3BwZXIgPSBudWxsLCB0aGlzLmVsZW1lbnQgPSB0LCB0aGlzLmNvbmZpZyA9IHRoaXMuX2dldENvbmZpZyhlKSwgdGhpcy50aXAgPSBudWxsLCB0aGlzLl9zZXRMaXN0ZW5lcnMoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB0ID0gaC5wcm90b3R5cGU7CiAgICAgICAgICAgIHJldHVybiB0LmVuYWJsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5faXNFbmFibGVkID0gITAKICAgICAgICAgICAgfSwgdC5kaXNhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9pc0VuYWJsZWQgPSAhMQogICAgICAgICAgICB9LCB0LnRvZ2dsZUVuYWJsZWQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2lzRW5hYmxlZCA9ICF0aGlzLl9pc0VuYWJsZWQKICAgICAgICAgICAgfSwgdC50b2dnbGUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5faXNFbmFibGVkKQogICAgICAgICAgICAgICAgICAgIGlmICh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBodCh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIG4gfHwgKG4gPSBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsIHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpLCBodCh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoZSwgbikpLCBuLl9hY3RpdmVUcmlnZ2VyLmNsaWNrID0gIW4uX2FjdGl2ZVRyaWdnZXIuY2xpY2ssIG4uX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSA/IG4uX2VudGVyKG51bGwsIG4pIDogbi5fbGVhdmUobnVsbCwgbikKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoaHQodGhpcy5nZXRUaXBFbGVtZW50KCkpLmhhc0NsYXNzKEN0KSkgcmV0dXJuIHZvaWQgdGhpcy5fbGVhdmUobnVsbCwgdGhpcyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2VudGVyKG51bGwsIHRoaXMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB0LmRpc3Bvc2UgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KSwgaHQucmVtb3ZlRGF0YSh0aGlzLmVsZW1lbnQsIHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpLCBodCh0aGlzLmVsZW1lbnQpLm9mZih0aGlzLmNvbnN0cnVjdG9yLkVWRU5UX0tFWSksIGh0KHRoaXMuZWxlbWVudCkuY2xvc2VzdCgiLm1vZGFsIikub2ZmKCJoaWRlLmJzLm1vZGFsIiksIHRoaXMudGlwICYmIGh0KHRoaXMudGlwKS5yZW1vdmUoKSwgdGhpcy5faXNFbmFibGVkID0gbnVsbCwgdGhpcy5fdGltZW91dCA9IG51bGwsIHRoaXMuX2hvdmVyU3RhdGUgPSBudWxsLCAodGhpcy5fYWN0aXZlVHJpZ2dlciA9IG51bGwpICE9PSB0aGlzLl9wb3BwZXIgJiYgdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSwgdGhpcy5fcG9wcGVyID0gbnVsbCwgdGhpcy5lbGVtZW50ID0gbnVsbCwgdGhpcy5jb25maWcgPSBudWxsLCB0aGlzLnRpcCA9IG51bGwKICAgICAgICAgICAgfSwgdC5zaG93ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXM7CiAgICAgICAgICAgICAgICBpZiAoIm5vbmUiID09PSBodCh0aGlzLmVsZW1lbnQpLmNzcygiZGlzcGxheSIpKSB0aHJvdyBuZXcgRXJyb3IoIlBsZWFzZSB1c2Ugc2hvdyBvbiB2aXNpYmxlIGVsZW1lbnRzIik7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGh0LkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuU0hPVyk7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1dpdGhDb250ZW50KCkgJiYgdGhpcy5faXNFbmFibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgaHQodGhpcy5lbGVtZW50KS50cmlnZ2VyKHQpOwogICAgICAgICAgICAgICAgICAgIHZhciBuID0gaHQuY29udGFpbnModGhpcy5lbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCB0aGlzLmVsZW1lbnQpOwogICAgICAgICAgICAgICAgICAgIGlmICh0LmlzRGVmYXVsdFByZXZlbnRlZCgpIHx8ICFuKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSB0aGlzLmdldFRpcEVsZW1lbnQoKSwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IE1lLmdldFVJRCh0aGlzLmNvbnN0cnVjdG9yLk5BTUUpOwogICAgICAgICAgICAgICAgICAgIGkuc2V0QXR0cmlidXRlKCJpZCIsIHMpLCB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiwgcyksIHRoaXMuc2V0Q29udGVudCgpLCB0aGlzLmNvbmZpZy5hbmltYXRpb24gJiYgaHQoaSkuYWRkQ2xhc3MoeXQpOwogICAgICAgICAgICAgICAgICAgIHZhciByID0gImZ1bmN0aW9uIiA9PSB0eXBlb2YgdGhpcy5jb25maWcucGxhY2VtZW50ID8gdGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcywgaSwgdGhpcy5lbGVtZW50KSA6IHRoaXMuY29uZmlnLnBsYWNlbWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHRoaXMuX2dldEF0dGFjaG1lbnQocik7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRBdHRhY2htZW50Q2xhc3Mobyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSAhMSA9PT0gdGhpcy5jb25maWcuY29udGFpbmVyID8gZG9jdW1lbnQuYm9keSA6IGh0KHRoaXMuY29uZmlnLmNvbnRhaW5lcik7CiAgICAgICAgICAgICAgICAgICAgaHQoaSkuZGF0YSh0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZLCB0aGlzKSwgaHQuY29udGFpbnModGhpcy5lbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCB0aGlzLnRpcCkgfHwgaHQoaSkuYXBwZW5kVG8oYSksIGh0KHRoaXMuZWxlbWVudCkudHJpZ2dlcih0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LklOU0VSVEVEKSwgdGhpcy5fcG9wcGVyID0gbmV3IGModGhpcy5lbGVtZW50LCBpLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogbywKICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuY29uZmlnLm9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsaXA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogdGhpcy5jb25maWcuZmFsbGJhY2tQbGFjZW1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJvdzogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ6ICIuYXJyb3ciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldmVudE92ZXJmbG93OiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm91bmRhcmllc0VsZW1lbnQ6IHRoaXMuY29uZmlnLmJvdW5kYXJ5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ3JlYXRlOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0Lm9yaWdpbmFsUGxhY2VtZW50ICE9PSB0LnBsYWNlbWVudCAmJiBlLl9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UodCkKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgb25VcGRhdGU6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUuX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZSh0KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSksIGh0KGkpLmFkZENsYXNzKEN0KSwgIm9udG91Y2hzdGFydCIgaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ICYmIGh0KCJib2R5IikuY2hpbGRyZW4oKS5vbigibW91c2VvdmVyIiwgbnVsbCwgaHQubm9vcCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGwgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZS5jb25maWcuYW5pbWF0aW9uICYmIGUuX2ZpeFRyYW5zaXRpb24oKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBlLl9ob3ZlclN0YXRlOwogICAgICAgICAgICAgICAgICAgICAgICBlLl9ob3ZlclN0YXRlID0gbnVsbCwgaHQoZS5lbGVtZW50KS50cmlnZ2VyKGUuY29uc3RydWN0b3IuRXZlbnQuU0hPV04pLCAib3V0IiA9PT0gdCAmJiBlLl9sZWF2ZShudWxsLCBlKQogICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgTWUuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkgJiYgaHQodGhpcy50aXApLmhhc0NsYXNzKHl0KSA/IGh0KHRoaXMudGlwKS5vbmUoTWUuVFJBTlNJVElPTl9FTkQsIGwpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGguX1RSQU5TSVRJT05fRFVSQVRJT04pIDogbCgpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuaGlkZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcywKICAgICAgICAgICAgICAgICAgICBuID0gdGhpcy5nZXRUaXBFbGVtZW50KCksCiAgICAgICAgICAgICAgICAgICAgaSA9IGh0LkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSksCiAgICAgICAgICAgICAgICAgICAgcyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBlLl9ob3ZlclN0YXRlICE9PSB2dCAmJiBuLnBhcmVudE5vZGUgJiYgbi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4pLCBlLl9jbGVhblRpcENsYXNzKCksIGUuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiKSwgaHQoZS5lbGVtZW50KS50cmlnZ2VyKGUuY29uc3RydWN0b3IuRXZlbnQuSElEREVOKSwgbnVsbCAhPT0gZS5fcG9wcGVyICYmIGUuX3BvcHBlci5kZXN0cm95KCksIHQgJiYgdCgpCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIGh0KHRoaXMuZWxlbWVudCkudHJpZ2dlcihpKSwgaS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSB8fCAoaHQobikucmVtb3ZlQ2xhc3MoQ3QpLCAib250b3VjaHN0YXJ0IiBpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgJiYgaHQoImJvZHkiKS5jaGlsZHJlbigpLm9mZigibW91c2VvdmVyIiwgbnVsbCwgaHQubm9vcCksIHRoaXMuX2FjdGl2ZVRyaWdnZXIuY2xpY2sgPSAhMSwgdGhpcy5fYWN0aXZlVHJpZ2dlcltidF0gPSAhMSwgdGhpcy5fYWN0aXZlVHJpZ2dlcltUdF0gPSAhMSwgTWUuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkgJiYgaHQodGhpcy50aXApLmhhc0NsYXNzKHl0KSA/IGh0KG4pLm9uZShNZS5UUkFOU0lUSU9OX0VORCwgcykuZW11bGF0ZVRyYW5zaXRpb25FbmQoMTUwKSA6IHMoKSwgdGhpcy5faG92ZXJTdGF0ZSA9ICIiKQogICAgICAgICAgICB9LCB0LnVwZGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVsbCAhPT0gdGhpcy5fcG9wcGVyICYmIHRoaXMuX3BvcHBlci5zY2hlZHVsZVVwZGF0ZSgpCiAgICAgICAgICAgIH0sIHQuaXNXaXRoQ29udGVudCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5nZXRUaXRsZSgpKQogICAgICAgICAgICB9LCB0LmFkZEF0dGFjaG1lbnRDbGFzcyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGh0KHRoaXMuZ2V0VGlwRWxlbWVudCgpKS5hZGRDbGFzcygiYnMtdG9vbHRpcC0iICsgdCkKICAgICAgICAgICAgfSwgdC5nZXRUaXBFbGVtZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50aXAgPSB0aGlzLnRpcCB8fCBodCh0aGlzLmNvbmZpZy50ZW1wbGF0ZSlbMF0sIHRoaXMudGlwCiAgICAgICAgICAgIH0sIHQuc2V0Q29udGVudCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBodCh0aGlzLmdldFRpcEVsZW1lbnQoKSk7CiAgICAgICAgICAgICAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZCgiLnRvb2x0aXAtaW5uZXIiKSwgdGhpcy5nZXRUaXRsZSgpKSwgdC5yZW1vdmVDbGFzcyh5dCArICIgIiArIEN0KQogICAgICAgICAgICB9LCB0LnNldEVsZW1lbnRDb250ZW50ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgdmFyIG4gPSB0aGlzLmNvbmZpZy5odG1sOwogICAgICAgICAgICAgICAgIm9iamVjdCIgPT0gdHlwZW9mIGUgJiYgKGUubm9kZVR5cGUgfHwgZS5qcXVlcnkpID8gbiA/IGh0KGUpLnBhcmVudCgpLmlzKHQpIHx8IHQuZW1wdHkoKS5hcHBlbmQoZSkgOiB0LnRleHQoaHQoZSkudGV4dCgpKSA6IHRbbiA/ICJodG1sIiA6ICJ0ZXh0Il0oZSkKICAgICAgICAgICAgfSwgdC5nZXRUaXRsZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLW9yaWdpbmFsLXRpdGxlIik7CiAgICAgICAgICAgICAgICByZXR1cm4gdCB8fCAodCA9ICJmdW5jdGlvbiIgPT0gdHlwZW9mIHRoaXMuY29uZmlnLnRpdGxlID8gdGhpcy5jb25maWcudGl0bGUuY2FsbCh0aGlzLmVsZW1lbnQpIDogdGhpcy5jb25maWcudGl0bGUpLCB0CiAgICAgICAgICAgIH0sIHQuX2dldEF0dGFjaG1lbnQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbXRbdC50b1VwcGVyQ2FzZSgpXQogICAgICAgICAgICB9LCB0Ll9zZXRMaXN0ZW5lcnMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLnRyaWdnZXIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoImNsaWNrIiA9PT0gdCkgaHQoaS5lbGVtZW50KS5vbihpLmNvbnN0cnVjdG9yLkV2ZW50LkNMSUNLLCBpLmNvbmZpZy5zZWxlY3RvciwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaS50b2dnbGUodCkKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgibWFudWFsIiAhPT0gdCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHQgPT09IFR0ID8gaS5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUVOVEVSIDogaS5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU0lOLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQgPT09IFR0ID8gaS5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUxFQVZFIDogaS5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU09VVDsKICAgICAgICAgICAgICAgICAgICAgICAgaHQoaS5lbGVtZW50KS5vbihlLCBpLmNvbmZpZy5zZWxlY3RvciwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkuX2VudGVyKHQpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLm9uKG4sIGkuY29uZmlnLnNlbGVjdG9yLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaS5fbGVhdmUodCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaHQoaS5lbGVtZW50KS5jbG9zZXN0KCIubW9kYWwiKS5vbigiaGlkZS5icy5tb2RhbCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaS5oaWRlKCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSksIHRoaXMuY29uZmlnLnNlbGVjdG9yID8gdGhpcy5jb25maWcgPSB1KHt9LCB0aGlzLmNvbmZpZywgewogICAgICAgICAgICAgICAgICAgIHRyaWdnZXI6ICJtYW51YWwiLAogICAgICAgICAgICAgICAgICAgIHNlbGVjdG9yOiAiIgogICAgICAgICAgICAgICAgfSkgOiB0aGlzLl9maXhUaXRsZSgpCiAgICAgICAgICAgIH0sIHQuX2ZpeFRpdGxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHR5cGVvZiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLW9yaWdpbmFsLXRpdGxlIik7CiAgICAgICAgICAgICAgICAodGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgidGl0bGUiKSB8fCAic3RyaW5nIiAhPT0gdCkgJiYgKHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImRhdGEtb3JpZ2luYWwtdGl0bGUiLCB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpIHx8ICIiKSwgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgidGl0bGUiLCAiIikpCiAgICAgICAgICAgIH0sIHQuX2VudGVyID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgdmFyIG4gPSB0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZOwogICAgICAgICAgICAgICAgKGUgPSBlIHx8IGh0KHQuY3VycmVudFRhcmdldCkuZGF0YShuKSkgfHwgKGUgPSBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsIHRoaXMuX2dldERlbGVnYXRlQ29uZmlnKCkpLCBodCh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobiwgZSkpLCB0ICYmIChlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c2luIiA9PT0gdC50eXBlID8gYnQgOiBUdF0gPSAhMCksIGh0KGUuZ2V0VGlwRWxlbWVudCgpKS5oYXNDbGFzcyhDdCkgfHwgZS5faG92ZXJTdGF0ZSA9PT0gdnQgPyBlLl9ob3ZlclN0YXRlID0gdnQgOiAoY2xlYXJUaW1lb3V0KGUuX3RpbWVvdXQpLCBlLl9ob3ZlclN0YXRlID0gdnQsIGUuY29uZmlnLmRlbGF5ICYmIGUuY29uZmlnLmRlbGF5LnNob3cgPyBlLl90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBlLl9ob3ZlclN0YXRlID09PSB2dCAmJiBlLnNob3coKQogICAgICAgICAgICAgICAgfSwgZS5jb25maWcuZGVsYXkuc2hvdykgOiBlLnNob3coKSkKICAgICAgICAgICAgfSwgdC5fbGVhdmUgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVk7CiAgICAgICAgICAgICAgICAoZSA9IGUgfHwgaHQodC5jdXJyZW50VGFyZ2V0KS5kYXRhKG4pKSB8fCAoZSA9IG5ldyB0aGlzLmNvbnN0cnVjdG9yKHQuY3VycmVudFRhcmdldCwgdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksIGh0KHQuY3VycmVudFRhcmdldCkuZGF0YShuLCBlKSksIHQgJiYgKGUuX2FjdGl2ZVRyaWdnZXJbImZvY3Vzb3V0IiA9PT0gdC50eXBlID8gYnQgOiBUdF0gPSAhMSksIGUuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKSB8fCAoY2xlYXJUaW1lb3V0KGUuX3RpbWVvdXQpLCBlLl9ob3ZlclN0YXRlID0gIm91dCIsIGUuY29uZmlnLmRlbGF5ICYmIGUuY29uZmlnLmRlbGF5LmhpZGUgPyBlLl90aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAib3V0IiA9PT0gZS5faG92ZXJTdGF0ZSAmJiBlLmhpZGUoKQogICAgICAgICAgICAgICAgfSwgZS5jb25maWcuZGVsYXkuaGlkZSkgOiBlLmhpZGUoKSkKICAgICAgICAgICAgfSwgdC5faXNXaXRoQWN0aXZlVHJpZ2dlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZm9yICh2YXIgdCBpbiB0aGlzLl9hY3RpdmVUcmlnZ2VyKQogICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9hY3RpdmVUcmlnZ2VyW3RdKSByZXR1cm4gITA7CiAgICAgICAgICAgICAgICByZXR1cm4gITEKICAgICAgICAgICAgfSwgdC5fZ2V0Q29uZmlnID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuICJudW1iZXIiID09IHR5cGVvZih0ID0gdSh7fSwgdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0LCBodCh0aGlzLmVsZW1lbnQpLmRhdGEoKSwgdCkpLmRlbGF5ICYmICh0LmRlbGF5ID0gewogICAgICAgICAgICAgICAgICAgIHNob3c6IHQuZGVsYXksCiAgICAgICAgICAgICAgICAgICAgaGlkZTogdC5kZWxheQogICAgICAgICAgICAgICAgfSksICJudW1iZXIiID09IHR5cGVvZiB0LnRpdGxlICYmICh0LnRpdGxlID0gdC50aXRsZS50b1N0cmluZygpKSwgIm51bWJlciIgPT0gdHlwZW9mIHQuY29udGVudCAmJiAodC5jb250ZW50ID0gdC5jb250ZW50LnRvU3RyaW5nKCkpLCBNZS50eXBlQ2hlY2tDb25maWcoY3QsIHQsIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpLCB0CiAgICAgICAgICAgIH0sIHQuX2dldERlbGVnYXRlQ29uZmlnID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IHt9OwogICAgICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlnKQogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUgaW4gdGhpcy5jb25maWcpIHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFtlXSAhPT0gdGhpcy5jb25maWdbZV0gJiYgKHRbZV0gPSB0aGlzLmNvbmZpZ1tlXSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdAogICAgICAgICAgICB9LCB0Ll9jbGVhblRpcENsYXNzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGh0KHRoaXMuZ2V0VGlwRWxlbWVudCgpKSwKICAgICAgICAgICAgICAgICAgICBlID0gdC5hdHRyKCJjbGFzcyIpLm1hdGNoKGd0KTsKICAgICAgICAgICAgICAgIG51bGwgIT09IGUgJiYgMCA8IGUubGVuZ3RoICYmIHQucmVtb3ZlQ2xhc3MoZS5qb2luKCIiKSkKICAgICAgICAgICAgfSwgdC5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdGhpcy5fY2xlYW5UaXBDbGFzcygpLCB0aGlzLmFkZEF0dGFjaG1lbnRDbGFzcyh0aGlzLl9nZXRBdHRhY2htZW50KHQucGxhY2VtZW50KSkKICAgICAgICAgICAgfSwgdC5fZml4VHJhbnNpdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmdldFRpcEVsZW1lbnQoKSwKICAgICAgICAgICAgICAgICAgICBlID0gdGhpcy5jb25maWcuYW5pbWF0aW9uOwogICAgICAgICAgICAgICAgbnVsbCA9PT0gdC5nZXRBdHRyaWJ1dGUoIngtcGxhY2VtZW50IikgJiYgKGh0KHQpLnJlbW92ZUNsYXNzKHl0KSwgdGhpcy5jb25maWcuYW5pbWF0aW9uID0gITEsIHRoaXMuaGlkZSgpLCB0aGlzLnNob3coKSwgdGhpcy5jb25maWcuYW5pbWF0aW9uID0gZSkKICAgICAgICAgICAgfSwgaC5falF1ZXJ5SW50ZXJmYWNlID0gZnVuY3Rpb24obikgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGh0KHRoaXMpLmRhdGEodXQpLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gIm9iamVjdCIgPT0gdHlwZW9mIG4gJiYgbjsKICAgICAgICAgICAgICAgICAgICBpZiAoKHQgfHwgIS9kaXNwb3NlfGhpZGUvLnRlc3QobikpICYmICh0IHx8ICh0ID0gbmV3IGgodGhpcywgZSksIGh0KHRoaXMpLmRhdGEodXQsIHQpKSwgInN0cmluZyIgPT0gdHlwZW9mIG4pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IHRbbl0pIHRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyArIG4gKyAnIicpOwogICAgICAgICAgICAgICAgICAgICAgICB0W25dKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCBvKGgsIG51bGwsIFt7CiAgICAgICAgICAgICAgICBrZXk6ICJWRVJTSU9OIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICI0LjAuMCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAga2V5OiAiRGVmYXVsdCIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBwdAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJOQU1FIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkRBVEFfS0VZIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHV0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkV2ZW50IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEV0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkVWRU5UX0tFWSIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkdAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0VHlwZSIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBfdAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9XSksIGgKICAgICAgICB9KCksIGh0LmZuW2N0XSA9IEl0Ll9qUXVlcnlJbnRlcmZhY2UsIGh0LmZuW2N0XS5Db25zdHJ1Y3RvciA9IEl0LCBodC5mbltjdF0ubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gaHQuZm5bY3RdID0gZnQsIEl0Ll9qUXVlcnlJbnRlcmZhY2UKICAgICAgICB9LCBJdCksCiAgICAgICAgWmUgPSAodHQgPSAicG9wb3ZlciIsIG50ID0gIi4iICsgKGV0ID0gImJzLnBvcG92ZXIiKSwgaXQgPSAoWCA9IGUpLmZuW3R0XSwgc3QgPSBuZXcgUmVnRXhwKCIoXnxcXHMpYnMtcG9wb3ZlclxcUysiLCAiZyIpLCBydCA9IHUoe30sIHplLkRlZmF1bHQsIHsKICAgICAgICAgICAgcGxhY2VtZW50OiAicmlnaHQiLAogICAgICAgICAgICB0cmlnZ2VyOiAiY2xpY2siLAogICAgICAgICAgICBjb250ZW50OiAiIiwKICAgICAgICAgICAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPSJwb3BvdmVyIiByb2xlPSJ0b29sdGlwIj48ZGl2IGNsYXNzPSJhcnJvdyI+PC9kaXY+PGgzIGNsYXNzPSJwb3BvdmVyLWhlYWRlciI+PC9oMz48ZGl2IGNsYXNzPSJwb3BvdmVyLWJvZHkiPjwvZGl2PjwvZGl2PicKICAgICAgICB9KSwgb3QgPSB1KHt9LCB6ZS5EZWZhdWx0VHlwZSwgewogICAgICAgICAgICBjb250ZW50OiAiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSIKICAgICAgICB9KSwgYXQgPSB7CiAgICAgICAgICAgIEhJREU6ICJoaWRlIiArIG50LAogICAgICAgICAgICBISURERU46ICJoaWRkZW4iICsgbnQsCiAgICAgICAgICAgIFNIT1c6ICJzaG93IiArIG50LAogICAgICAgICAgICBTSE9XTjogInNob3duIiArIG50LAogICAgICAgICAgICBJTlNFUlRFRDogImluc2VydGVkIiArIG50LAogICAgICAgICAgICBDTElDSzogImNsaWNrIiArIG50LAogICAgICAgICAgICBGT0NVU0lOOiAiZm9jdXNpbiIgKyBudCwKICAgICAgICAgICAgRk9DVVNPVVQ6ICJmb2N1c291dCIgKyBudCwKICAgICAgICAgICAgTU9VU0VFTlRFUjogIm1vdXNlZW50ZXIiICsgbnQsCiAgICAgICAgICAgIE1PVVNFTEVBVkU6ICJtb3VzZWxlYXZlIiArIG50CiAgICAgICAgfSwgbHQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBlLCBuOwoKICAgICAgICAgICAgZnVuY3Rpb24gaSgpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0LmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfHwgdGhpcwogICAgICAgICAgICB9CiAgICAgICAgICAgIG4gPSB0LCAoZSA9IGkpLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUobi5wcm90b3R5cGUpLCAoZS5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBlKS5fX3Byb3RvX18gPSBuOwogICAgICAgICAgICB2YXIgcyA9IGkucHJvdG90eXBlOwogICAgICAgICAgICByZXR1cm4gcy5pc1dpdGhDb250ZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUaXRsZSgpIHx8IHRoaXMuX2dldENvbnRlbnQoKQogICAgICAgICAgICB9LCBzLmFkZEF0dGFjaG1lbnRDbGFzcyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIFgodGhpcy5nZXRUaXBFbGVtZW50KCkpLmFkZENsYXNzKCJicy1wb3BvdmVyLSIgKyB0KQogICAgICAgICAgICB9LCBzLmdldFRpcEVsZW1lbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnRpcCA9IHRoaXMudGlwIHx8IFgodGhpcy5jb25maWcudGVtcGxhdGUpWzBdLCB0aGlzLnRpcAogICAgICAgICAgICB9LCBzLnNldENvbnRlbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gWCh0aGlzLmdldFRpcEVsZW1lbnQoKSk7CiAgICAgICAgICAgICAgICB0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZCgiLnBvcG92ZXItaGVhZGVyIiksIHRoaXMuZ2V0VGl0bGUoKSk7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMuX2dldENvbnRlbnQoKTsKICAgICAgICAgICAgICAgICJmdW5jdGlvbiIgPT0gdHlwZW9mIGUgJiYgKGUgPSBlLmNhbGwodGhpcy5lbGVtZW50KSksIHRoaXMuc2V0RWxlbWVudENvbnRlbnQodC5maW5kKCIucG9wb3Zlci1ib2R5IiksIGUpLCB0LnJlbW92ZUNsYXNzKCJmYWRlIHNob3ciKQogICAgICAgICAgICB9LCBzLl9nZXRDb250ZW50ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1jb250ZW50IikgfHwgdGhpcy5jb25maWcuY29udGVudAogICAgICAgICAgICB9LCBzLl9jbGVhblRpcENsYXNzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IFgodGhpcy5nZXRUaXBFbGVtZW50KCkpLAogICAgICAgICAgICAgICAgICAgIGUgPSB0LmF0dHIoImNsYXNzIikubWF0Y2goc3QpOwogICAgICAgICAgICAgICAgbnVsbCAhPT0gZSAmJiAwIDwgZS5sZW5ndGggJiYgdC5yZW1vdmVDbGFzcyhlLmpvaW4oIiIpKQogICAgICAgICAgICB9LCBpLl9qUXVlcnlJbnRlcmZhY2UgPSBmdW5jdGlvbihuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gWCh0aGlzKS5kYXRhKGV0KSwKICAgICAgICAgICAgICAgICAgICAgICAgZSA9ICJvYmplY3QiID09IHR5cGVvZiBuID8gbiA6IG51bGw7CiAgICAgICAgICAgICAgICAgICAgaWYgKCh0IHx8ICEvZGVzdHJveXxoaWRlLy50ZXN0KG4pKSAmJiAodCB8fCAodCA9IG5ldyBpKHRoaXMsIGUpLCBYKHRoaXMpLmRhdGEoZXQsIHQpKSwgInN0cmluZyIgPT0gdHlwZW9mIG4pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IHRbbl0pIHRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyArIG4gKyAnIicpOwogICAgICAgICAgICAgICAgICAgICAgICB0W25dKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCBvKGksIG51bGwsIFt7CiAgICAgICAgICAgICAgICBrZXk6ICJWRVJTSU9OIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICI0LjAuMCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAga2V5OiAiRGVmYXVsdCIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBydAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJOQU1FIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHR0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkRBVEFfS0VZIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkV2ZW50IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGF0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGtleTogIkVWRU5UX0tFWSIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0VHlwZSIsCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBvdAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9XSksIGkKICAgICAgICB9KHplKSwgWC5mblt0dF0gPSBsdC5falF1ZXJ5SW50ZXJmYWNlLCBYLmZuW3R0XS5Db25zdHJ1Y3RvciA9IGx0LCBYLmZuW3R0XS5ub0NvbmZsaWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBYLmZuW3R0XSA9IGl0LCBsdC5falF1ZXJ5SW50ZXJmYWNlCiAgICAgICAgfSwgbHQpLAogICAgICAgIEplID0gKEggPSAic2Nyb2xsc3B5IiwgUiA9ICIuIiArIChMID0gImJzLnNjcm9sbHNweSIpLCB4ID0gKGogPSBlKS5mbltIXSwgVSA9IHsKICAgICAgICAgICAgb2Zmc2V0OiAxMCwKICAgICAgICAgICAgbWV0aG9kOiAiYXV0byIsCiAgICAgICAgICAgIHRhcmdldDogIiIKICAgICAgICB9LCBXID0gewogICAgICAgICAgICBvZmZzZXQ6ICJudW1iZXIiLAogICAgICAgICAgICBtZXRob2Q6ICJzdHJpbmciLAogICAgICAgICAgICB0YXJnZXQ6ICIoc3RyaW5nfGVsZW1lbnQpIgogICAgICAgIH0sIEsgPSB7CiAgICAgICAgICAgIEFDVElWQVRFOiAiYWN0aXZhdGUiICsgUiwKICAgICAgICAgICAgU0NST0xMOiAic2Nyb2xsIiArIFIsCiAgICAgICAgICAgIExPQURfREFUQV9BUEk6ICJsb2FkIiArIFIgKyAiLmRhdGEtYXBpIgogICAgICAgIH0sIE0gPSAiYWN0aXZlIiwgUSA9ICdbZGF0YS1zcHk9InNjcm9sbCJdJywgQiA9ICIuYWN0aXZlIiwgRiA9ICIubmF2LCAubGlzdC1ncm91cCIsIFYgPSAiLm5hdi1saW5rIiwgWSA9ICIubmF2LWl0ZW0iLCBxID0gIi5saXN0LWdyb3VwLWl0ZW0iLCB6ID0gIi5kcm9wZG93biIsIFogPSAiLmRyb3Bkb3duLWl0ZW0iLCBKID0gIi5kcm9wZG93bi10b2dnbGUiLCAkID0gInBvc2l0aW9uIiwgRyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBmdW5jdGlvbiBuKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpczsKICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSB0LCB0aGlzLl9zY3JvbGxFbGVtZW50ID0gIkJPRFkiID09PSB0LnRhZ05hbWUgPyB3aW5kb3cgOiB0LCB0aGlzLl9jb25maWcgPSB0aGlzLl9nZXRDb25maWcoZSksIHRoaXMuX3NlbGVjdG9yID0gdGhpcy5fY29uZmlnLnRhcmdldCArICIgIiArIFYgKyAiLCIgKyB0aGlzLl9jb25maWcudGFyZ2V0ICsgIiAiICsgcSArICIsIiArIHRoaXMuX2NvbmZpZy50YXJnZXQgKyAiICIgKyBaLCB0aGlzLl9vZmZzZXRzID0gW10sIHRoaXMuX3RhcmdldHMgPSBbXSwgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbCwgdGhpcy5fc2Nyb2xsSGVpZ2h0ID0gMCwgaih0aGlzLl9zY3JvbGxFbGVtZW50KS5vbihLLlNDUk9MTCwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuLl9wcm9jZXNzKHQpCiAgICAgICAgICAgICAgICB9KSwgdGhpcy5yZWZyZXNoKCksIHRoaXMuX3Byb2Nlc3MoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB0ID0gbi5wcm90b3R5cGU7CiAgICAgICAgICAgIHJldHVybiB0LnJlZnJlc2ggPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcywKICAgICAgICAgICAgICAgICAgICB0ID0gdGhpcy5fc2Nyb2xsRWxlbWVudCA9PT0gdGhpcy5fc2Nyb2xsRWxlbWVudC53aW5kb3cgPyAib2Zmc2V0IiA6ICQsCiAgICAgICAgICAgICAgICAgICAgcyA9ICJhdXRvIiA9PT0gdGhpcy5fY29uZmlnLm1ldGhvZCA/IHQgOiB0aGlzLl9jb25maWcubWV0aG9kLAogICAgICAgICAgICAgICAgICAgIHIgPSBzID09PSAkID8gdGhpcy5fZ2V0U2Nyb2xsVG9wKCkgOiAwOwogICAgICAgICAgICAgICAgdGhpcy5fb2Zmc2V0cyA9IFtdLCB0aGlzLl90YXJnZXRzID0gW10sIHRoaXMuX3Njcm9sbEhlaWdodCA9IHRoaXMuX2dldFNjcm9sbEhlaWdodCgpLCBqLm1ha2VBcnJheShqKHRoaXMuX3NlbGVjdG9yKSkubWFwKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgbiA9IE1lLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKG4gJiYgKGUgPSBqKG4pWzBdKSwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpLndpZHRoIHx8IGkuaGVpZ2h0KSByZXR1cm4gW2ooZSlbc10oKS50b3AgKyByLCBuXQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbAogICAgICAgICAgICAgICAgfSkuZmlsdGVyKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdAogICAgICAgICAgICAgICAgfSkuc29ydChmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRbMF0gLSBlWzBdCiAgICAgICAgICAgICAgICB9KS5mb3JFYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBlLl9vZmZzZXRzLnB1c2godFswXSksIGUuX3RhcmdldHMucHVzaCh0WzFdKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgdC5kaXNwb3NlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBqLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwgTCksIGoodGhpcy5fc2Nyb2xsRWxlbWVudCkub2ZmKFIpLCB0aGlzLl9lbGVtZW50ID0gbnVsbCwgdGhpcy5fc2Nyb2xsRWxlbWVudCA9IG51bGwsIHRoaXMuX2NvbmZpZyA9IG51bGwsIHRoaXMuX3NlbGVjdG9yID0gbnVsbCwgdGhpcy5fb2Zmc2V0cyA9IG51bGwsIHRoaXMuX3RhcmdldHMgPSBudWxsLCB0aGlzLl9hY3RpdmVUYXJnZXQgPSBudWxsLCB0aGlzLl9zY3JvbGxIZWlnaHQgPSBudWxsCiAgICAgICAgICAgIH0sIHQuX2dldENvbmZpZyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiAhPSB0eXBlb2YodCA9IHUoe30sIFUsIHQpKS50YXJnZXQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGoodC50YXJnZXQpLmF0dHIoImlkIik7CiAgICAgICAgICAgICAgICAgICAgZSB8fCAoZSA9IE1lLmdldFVJRChIKSwgaih0LnRhcmdldCkuYXR0cigiaWQiLCBlKSksIHQudGFyZ2V0ID0gIiMiICsgZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIE1lLnR5cGVDaGVja0NvbmZpZyhILCB0LCBXKSwgdAogICAgICAgICAgICB9LCB0Ll9nZXRTY3JvbGxUb3AgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50ID09PSB3aW5kb3cgPyB0aGlzLl9zY3JvbGxFbGVtZW50LnBhZ2VZT2Zmc2V0IDogdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3AKICAgICAgICAgICAgfSwgdC5fZ2V0U2Nyb2xsSGVpZ2h0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxIZWlnaHQgfHwgTWF0aC5tYXgoZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQsIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpCiAgICAgICAgICAgIH0sIHQuX2dldE9mZnNldEhlaWdodCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3Njcm9sbEVsZW1lbnQgPT09IHdpbmRvdyA/IHdpbmRvdy5pbm5lckhlaWdodCA6IHRoaXMuX3Njcm9sbEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0CiAgICAgICAgICAgIH0sIHQuX3Byb2Nlc3MgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy5fZ2V0U2Nyb2xsVG9wKCkgKyB0aGlzLl9jb25maWcub2Zmc2V0LAogICAgICAgICAgICAgICAgICAgIGUgPSB0aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSwKICAgICAgICAgICAgICAgICAgICBuID0gdGhpcy5fY29uZmlnLm9mZnNldCArIGUgLSB0aGlzLl9nZXRPZmZzZXRIZWlnaHQoKTsKICAgICAgICAgICAgICAgIGlmICh0aGlzLl9zY3JvbGxIZWlnaHQgIT09IGUgJiYgdGhpcy5yZWZyZXNoKCksIG4gPD0gdCkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0gdGhpcy5fdGFyZ2V0c1t0aGlzLl90YXJnZXRzLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZVRhcmdldCAhPT0gaSAmJiB0aGlzLl9hY3RpdmF0ZShpKQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fYWN0aXZlVGFyZ2V0ICYmIHQgPCB0aGlzLl9vZmZzZXRzWzBdICYmIDAgPCB0aGlzLl9vZmZzZXRzWzBdKSByZXR1cm4gdGhpcy5fYWN0aXZlVGFyZ2V0ID0gbnVsbCwgdm9pZCB0aGlzLl9jbGVhcigpOwogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHMgPSB0aGlzLl9vZmZzZXRzLmxlbmd0aDsgcy0tOykgdGhpcy5fYWN0aXZlVGFyZ2V0ICE9PSB0aGlzLl90YXJnZXRzW3NdICYmIHQgPj0gdGhpcy5fb2Zmc2V0c1tzXSAmJiAodm9pZCAwID09PSB0aGlzLl9vZmZzZXRzW3MgKyAxXSB8fCB0IDwgdGhpcy5fb2Zmc2V0c1tzICsgMV0pICYmIHRoaXMuX2FjdGl2YXRlKHRoaXMuX3RhcmdldHNbc10pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuX2FjdGl2YXRlID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdGhpcy5fYWN0aXZlVGFyZ2V0ID0gZSwgdGhpcy5fY2xlYXIoKTsKICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy5fc2VsZWN0b3Iuc3BsaXQoIiwiKTsKICAgICAgICAgICAgICAgIHQgPSB0Lm1hcChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgKyAnW2RhdGEtdGFyZ2V0PSInICsgZSArICciXSwnICsgdCArICdbaHJlZj0iJyArIGUgKyAnIl0nCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciBuID0gaih0LmpvaW4oIiwiKSk7CiAgICAgICAgICAgICAgICBuLmhhc0NsYXNzKCJkcm9wZG93bi1pdGVtIikgPyAobi5jbG9zZXN0KHopLmZpbmQoSikuYWRkQ2xhc3MoTSksIG4uYWRkQ2xhc3MoTSkpIDogKG4uYWRkQ2xhc3MoTSksIG4ucGFyZW50cyhGKS5wcmV2KFYgKyAiLCAiICsgcSkuYWRkQ2xhc3MoTSksIG4ucGFyZW50cyhGKS5wcmV2KFkpLmNoaWxkcmVuKFYpLmFkZENsYXNzKE0pKSwgaih0aGlzLl9zY3JvbGxFbGVtZW50KS50cmlnZ2VyKEsuQUNUSVZBVEUsIHsKICAgICAgICAgICAgICAgICAgICByZWxhdGVkVGFyZ2V0OiBlCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCB0Ll9jbGVhciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaih0aGlzLl9zZWxlY3RvcikuZmlsdGVyKEIpLnJlbW92ZUNsYXNzKE0pCiAgICAgICAgICAgIH0sIG4uX2pRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqKHRoaXMpLmRhdGEoTCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHQgfHwgKHQgPSBuZXcgbih0aGlzLCAib2JqZWN0IiA9PSB0eXBlb2YgZSAmJiBlKSwgaih0aGlzKS5kYXRhKEwsIHQpKSwgInN0cmluZyIgPT0gdHlwZW9mIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZvaWQgMCA9PT0gdFtlXSkgdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInICsgZSArICciJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHRbZV0oKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIG8obiwgbnVsbCwgW3sKICAgICAgICAgICAgICAgIGtleTogIlZFUlNJT04iLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIjQuMC4wIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBrZXk6ICJEZWZhdWx0IiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfV0pLCBuCiAgICAgICAgfSgpLCBqKHdpbmRvdykub24oSy5MT0FEX0RBVEFfQVBJLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZm9yICh2YXIgdCA9IGoubWFrZUFycmF5KGooUSkpLCBlID0gdC5sZW5ndGg7IGUtLTspIHsKICAgICAgICAgICAgICAgIHZhciBuID0gaih0W2VdKTsKICAgICAgICAgICAgICAgIEcuX2pRdWVyeUludGVyZmFjZS5jYWxsKG4sIG4uZGF0YSgpKQogICAgICAgICAgICB9CiAgICAgICAgfSksIGouZm5bSF0gPSBHLl9qUXVlcnlJbnRlcmZhY2UsIGouZm5bSF0uQ29uc3RydWN0b3IgPSBHLCBqLmZuW0hdLm5vQ29uZmxpY3QgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIGouZm5bSF0gPSB4LCBHLl9qUXVlcnlJbnRlcmZhY2UKICAgICAgICB9LCBHKSwKICAgICAgICAkZSA9IChBID0gIi4iICsgKHcgPSAiYnMudGFiIiksIEQgPSAoSSA9IGUpLmZuLnRhYiwgUyA9IHsKICAgICAgICAgICAgSElERTogImhpZGUiICsgQSwKICAgICAgICAgICAgSElEREVOOiAiaGlkZGVuIiArIEEsCiAgICAgICAgICAgIFNIT1c6ICJzaG93IiArIEEsCiAgICAgICAgICAgIFNIT1dOOiAic2hvd24iICsgQSwKICAgICAgICAgICAgQ0xJQ0tfREFUQV9BUEk6ICJjbGljay5icy50YWIuZGF0YS1hcGkiCiAgICAgICAgfSwgTiA9ICJhY3RpdmUiLCBPID0gIi5hY3RpdmUiLCBrID0gIj4gbGkgPiAuYWN0aXZlIiwgUCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBmdW5jdGlvbiBpKHQpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSB0CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIHQgPSBpLnByb3RvdHlwZTsKICAgICAgICAgICAgcmV0dXJuIHQuc2hvdyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIG4gPSB0aGlzOwogICAgICAgICAgICAgICAgaWYgKCEodGhpcy5fZWxlbWVudC5wYXJlbnROb2RlICYmIHRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUgJiYgSSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhOKSB8fCBJKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKCJkaXNhYmxlZCIpKSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0LCBpLCBlID0gSSh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KCIubmF2LCAubGlzdC1ncm91cCIpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gTWUuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTsKICAgICAgICAgICAgICAgICAgICBpZiAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgciA9ICJVTCIgPT09IGUubm9kZU5hbWUgPyBrIDogTzsKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IChpID0gSS5tYWtlQXJyYXkoSShlKS5maW5kKHIpKSlbaS5sZW5ndGggLSAxXQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB2YXIgbyA9IEkuRXZlbnQoUy5ISURFLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGVkVGFyZ2V0OiB0aGlzLl9lbGVtZW50CiAgICAgICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gSS5FdmVudChTLlNIT1csIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRUYXJnZXQ6IGkKICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGkgJiYgSShpKS50cmlnZ2VyKG8pLCBJKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoYSksICFhLmlzRGVmYXVsdFByZXZlbnRlZCgpICYmICFvLmlzRGVmYXVsdFByZXZlbnRlZCgpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHMgJiYgKHQgPSBJKHMpWzBdKSwgdGhpcy5fYWN0aXZhdGUodGhpcy5fZWxlbWVudCwgZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IEkuRXZlbnQoUy5ISURERU4sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogbi5fZWxlbWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUgPSBJLkV2ZW50KFMuU0hPV04sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogaQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgSShpKS50cmlnZ2VyKHQpLCBJKG4uX2VsZW1lbnQpLnRyaWdnZXIoZSkKICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgdCA/IHRoaXMuX2FjdGl2YXRlKHQsIHQucGFyZW50Tm9kZSwgbCkgOiBsKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuZGlzcG9zZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgSS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsIHcpLCB0aGlzLl9lbGVtZW50ID0gbnVsbAogICAgICAgICAgICB9LCB0Ll9hY3RpdmF0ZSA9IGZ1bmN0aW9uKHQsIGUsIG4pIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdGhpcywKICAgICAgICAgICAgICAgICAgICBzID0gKCJVTCIgPT09IGUubm9kZU5hbWUgPyBJKGUpLmZpbmQoaykgOiBJKGUpLmNoaWxkcmVuKE8pKVswXSwKICAgICAgICAgICAgICAgICAgICByID0gbiAmJiBNZS5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSAmJiBzICYmIEkocykuaGFzQ2xhc3MoImZhZGUiKSwKICAgICAgICAgICAgICAgICAgICBvID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpLl90cmFuc2l0aW9uQ29tcGxldGUodCwgcywgbikKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgcyAmJiByID8gSShzKS5vbmUoTWUuVFJBTlNJVElPTl9FTkQsIG8pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKDE1MCkgOiBvKCkKICAgICAgICAgICAgfSwgdC5fdHJhbnNpdGlvbkNvbXBsZXRlID0gZnVuY3Rpb24odCwgZSwgbikgewogICAgICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgICAgICBJKGUpLnJlbW92ZUNsYXNzKCJzaG93ICIgKyBOKTsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IEkoZS5wYXJlbnROb2RlKS5maW5kKCI+IC5kcm9wZG93bi1tZW51IC5hY3RpdmUiKVswXTsKICAgICAgICAgICAgICAgICAgICBpICYmIEkoaSkucmVtb3ZlQ2xhc3MoTiksICJ0YWIiID09PSBlLmdldEF0dHJpYnV0ZSgicm9sZSIpICYmIGUuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwgITEpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoSSh0KS5hZGRDbGFzcyhOKSwgInRhYiIgPT09IHQuZ2V0QXR0cmlidXRlKCJyb2xlIikgJiYgdC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCAhMCksIE1lLnJlZmxvdyh0KSwgSSh0KS5hZGRDbGFzcygic2hvdyIpLCB0LnBhcmVudE5vZGUgJiYgSSh0LnBhcmVudE5vZGUpLmhhc0NsYXNzKCJkcm9wZG93bi1tZW51IikpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IEkodCkuY2xvc2VzdCgiLmRyb3Bkb3duIilbMF07CiAgICAgICAgICAgICAgICAgICAgcyAmJiBJKHMpLmZpbmQoIi5kcm9wZG93bi10b2dnbGUiKS5hZGRDbGFzcyhOKSwgdC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCAhMCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIG4gJiYgbigpCiAgICAgICAgICAgIH0sIGkuX2pRdWVyeUludGVyZmFjZSA9IGZ1bmN0aW9uKG4pIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBJKHRoaXMpLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gdC5kYXRhKHcpOwogICAgICAgICAgICAgICAgICAgIGlmIChlIHx8IChlID0gbmV3IGkodGhpcyksIHQuZGF0YSh3LCBlKSksICJzdHJpbmciID09IHR5cGVvZiBuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IGVbbl0pIHRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyArIG4gKyAnIicpOwogICAgICAgICAgICAgICAgICAgICAgICBlW25dKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LCBvKGksIG51bGwsIFt7CiAgICAgICAgICAgICAgICBrZXk6ICJWRVJTSU9OIiwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICI0LjAuMCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfV0pLCBpCiAgICAgICAgfSgpLCBJKGRvY3VtZW50KS5vbihTLkNMSUNLX0RBVEFfQVBJLCAnW2RhdGEtdG9nZ2xlPSJ0YWIiXSwgW2RhdGEtdG9nZ2xlPSJwaWxsIl0sIFtkYXRhLXRvZ2dsZT0ibGlzdCJdJywgZnVuY3Rpb24odCkgewogICAgICAgICAgICB0LnByZXZlbnREZWZhdWx0KCksIFAuX2pRdWVyeUludGVyZmFjZS5jYWxsKEkodGhpcyksICJzaG93IikKICAgICAgICB9KSwgSS5mbi50YWIgPSBQLl9qUXVlcnlJbnRlcmZhY2UsIEkuZm4udGFiLkNvbnN0cnVjdG9yID0gUCwgSS5mbi50YWIubm9Db25mbGljdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gSS5mbi50YWIgPSBELCBQLl9qUXVlcnlJbnRlcmZhY2UKICAgICAgICB9LCBQKTsKICAgICEgZnVuY3Rpb24odCkgewogICAgICAgIGlmICh2b2lkIDAgPT09IHQpIHRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIEphdmFTY3JpcHQgcmVxdWlyZXMgalF1ZXJ5LiBqUXVlcnkgbXVzdCBiZSBpbmNsdWRlZCBiZWZvcmUgQm9vdHN0cmFwJ3MgSmF2YVNjcmlwdC4iKTsKICAgICAgICB2YXIgZSA9IHQuZm4uanF1ZXJ5LnNwbGl0KCIgIilbMF0uc3BsaXQoIi4iKTsKICAgICAgICBpZiAoZVswXSA8IDIgJiYgZVsxXSA8IDkgfHwgMSA9PT0gZVswXSAmJiA5ID09PSBlWzFdICYmIGVbMl0gPCAxIHx8IDQgPD0gZVswXSkgdGhyb3cgbmV3IEVycm9yKCJCb290c3RyYXAncyBKYXZhU2NyaXB0IHJlcXVpcmVzIGF0IGxlYXN0IGpRdWVyeSB2MS45LjEgYnV0IGxlc3MgdGhhbiB2NC4wLjAiKQogICAgfShlKSwgdC5VdGlsID0gTWUsIHQuQWxlcnQgPSBRZSwgdC5CdXR0b24gPSBCZSwgdC5DYXJvdXNlbCA9IEZlLCB0LkNvbGxhcHNlID0gVmUsIHQuRHJvcGRvd24gPSBZZSwgdC5Nb2RhbCA9IHFlLCB0LlBvcG92ZXIgPSBaZSwgdC5TY3JvbGxzcHkgPSBKZSwgdC5UYWIgPSAkZSwgdC5Ub29sdGlwID0gemUsIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCAiX19lc01vZHVsZSIsIHsKICAgICAgICB2YWx1ZTogITAKICAgIH0pCn0pOwppZiAoZnVuY3Rpb24odCkgewogICAgICAgICJmdW5jdGlvbiIgPT0gdHlwZW9mIGRlZmluZSAmJiBkZWZpbmUuYW1kICYmIGRlZmluZS5hbWQualF1ZXJ5ID8gZGVmaW5lKFsianF1ZXJ5Il0sIHQpIDogdChqUXVlcnkpCiAgICB9KGZ1bmN0aW9uKG90KSB7CiAgICAgICAgdmFyIGx0ID0gImxlZnQiLAogICAgICAgICAgICBodCA9ICJyaWdodCIsCiAgICAgICAgICAgIHV0ID0gInVwIiwKICAgICAgICAgICAgcHQgPSAiZG93biIsCiAgICAgICAgICAgIGZ0ID0gImluIiwKICAgICAgICAgICAgY3QgPSAib3V0IiwKICAgICAgICAgICAgZHQgPSAibm9uZSIsCiAgICAgICAgICAgIF90ID0gImF1dG8iLAogICAgICAgICAgICBndCA9ICJzd2lwZSIsCiAgICAgICAgICAgIG10ID0gInBpbmNoIiwKICAgICAgICAgICAgdnQgPSAidGFwIiwKICAgICAgICAgICAgeXQgPSAiZG91YmxldGFwIiwKICAgICAgICAgICAgeHQgPSAibG9uZ3RhcCIsCiAgICAgICAgICAgIHd0ID0gImhvcml6b250YWwiLAogICAgICAgICAgICBUdCA9ICJ2ZXJ0aWNhbCIsCiAgICAgICAgICAgIGJ0ID0gImFsbCIsCiAgICAgICAgICAgIFB0ID0gMTAsCiAgICAgICAgICAgIFN0ID0gInN0YXJ0IiwKICAgICAgICAgICAgT3QgPSAibW92ZSIsCiAgICAgICAgICAgIGt0ID0gImVuZCIsCiAgICAgICAgICAgIEN0ID0gImNhbmNlbCIsCiAgICAgICAgICAgIEF0ID0gIm9udG91Y2hzdGFydCIgaW4gd2luZG93LAogICAgICAgICAgICBSdCA9IHdpbmRvdy5uYXZpZ2F0b3IubXNQb2ludGVyRW5hYmxlZCAmJiAhd2luZG93Lm5hdmlnYXRvci5wb2ludGVyRW5hYmxlZCwKICAgICAgICAgICAgTXQgPSB3aW5kb3cubmF2aWdhdG9yLnBvaW50ZXJFbmFibGVkIHx8IHdpbmRvdy5uYXZpZ2F0b3IubXNQb2ludGVyRW5hYmxlZCwKICAgICAgICAgICAgRXQgPSAiVG91Y2hTd2lwZSI7CgogICAgICAgIGZ1bmN0aW9uIG4odCwgdikgewogICAgICAgICAgICB2YXIgZSA9IEF0IHx8IE10IHx8ICF2LmZhbGxiYWNrVG9Nb3VzZUV2ZW50cywKICAgICAgICAgICAgICAgIGkgPSBlID8gTXQgPyBSdCA/ICJNU1BvaW50ZXJEb3duIiA6ICJwb2ludGVyZG93biIgOiAidG91Y2hzdGFydCIgOiAibW91c2Vkb3duIiwKICAgICAgICAgICAgICAgIG4gPSBlID8gTXQgPyBSdCA/ICJNU1BvaW50ZXJNb3ZlIiA6ICJwb2ludGVybW92ZSIgOiAidG91Y2htb3ZlIiA6ICJtb3VzZW1vdmUiLAogICAgICAgICAgICAgICAgciA9IGUgPyBNdCA/IFJ0ID8gIk1TUG9pbnRlclVwIiA6ICJwb2ludGVydXAiIDogInRvdWNoZW5kIiA6ICJtb3VzZXVwIiwKICAgICAgICAgICAgICAgIHMgPSBlID8gbnVsbCA6ICJtb3VzZWxlYXZlIiwKICAgICAgICAgICAgICAgIGEgPSBNdCA/IFJ0ID8gIk1TUG9pbnRlckNhbmNlbCIgOiAicG9pbnRlcmNhbmNlbCIgOiAidG91Y2hjYW5jZWwiLAogICAgICAgICAgICAgICAgeSA9IDAsCiAgICAgICAgICAgICAgICB4ID0gbnVsbCwKICAgICAgICAgICAgICAgIHcgPSAwLAogICAgICAgICAgICAgICAgVCA9IDAsCiAgICAgICAgICAgICAgICBiID0gMCwKICAgICAgICAgICAgICAgIFAgPSAxLAogICAgICAgICAgICAgICAgUyA9IDAsCiAgICAgICAgICAgICAgICBPID0gMCwKICAgICAgICAgICAgICAgIGsgPSBudWxsLAogICAgICAgICAgICAgICAgbyA9IG90KHQpLAogICAgICAgICAgICAgICAgQyA9ICJzdGFydCIsCiAgICAgICAgICAgICAgICBBID0gMCwKICAgICAgICAgICAgICAgIFIgPSBudWxsLAogICAgICAgICAgICAgICAgbCA9IDAsCiAgICAgICAgICAgICAgICBNID0gMCwKICAgICAgICAgICAgICAgIGggPSAwLAogICAgICAgICAgICAgICAgdSA9IDAsCiAgICAgICAgICAgICAgICBwID0gMCwKICAgICAgICAgICAgICAgIGYgPSBudWxsLAogICAgICAgICAgICAgICAgRSA9IG51bGw7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBvLmJpbmQoaSwgYyksIG8uYmluZChhLCBnKQogICAgICAgICAgICB9IGNhdGNoICh0KSB7CiAgICAgICAgICAgICAgICBvdC5lcnJvcigiZXZlbnRzIG5vdCBzdXBwb3J0ZWQgIiArIGkgKyAiLCIgKyBhICsgIiBvbiBqUXVlcnkuc3dpcGV0cCIpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGModCkgewogICAgICAgICAgICAgICAgaWYgKCEwICE9PSBvLmRhdGEoRXQgKyAiX2ludG91Y2giKSAmJiAhKDAgPCBvdCh0LnRhcmdldCkuY2xvc2VzdCh2LmV4Y2x1ZGVkRWxlbWVudHMsIG8pLmxlbmd0aCkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiA9IHQub3JpZ2luYWxFdmVudCA/IHQub3JpZ2luYWxFdmVudCA6IHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBuLnRvdWNoZXMsCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSByID8gclswXSA6IG47CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEMgPSBTdCwgciA/IEEgPSByLmxlbmd0aCA6IHQucHJldmVudERlZmF1bHQoKSwgTyA9IHggPSBudWxsLCBQID0gMSwgUyA9IGIgPSBUID0gdyA9IHkgPSAwLCBSID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHQgPSBbXSwgZSA9IDA7IGUgPD0gNTsgZSsrKSB0LnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4OiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4OiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdAogICAgICAgICAgICAgICAgICAgIH0oKSwgKGkgPSB7fSlbbHRdID0gbnQobHQpLCBpW2h0XSA9IG50KGh0KSwgaVt1dF0gPSBudCh1dCksIGlbcHRdID0gbnQocHQpLCBrID0gaSwgJCgpLCAhciB8fCBBID09PSB2LmZpbmdlcnMgfHwgdi5maW5nZXJzID09PSBidCB8fCBqKCkgPyAodHQoMCwgcyksIGwgPSBhdCgpLCAyID09IEEgJiYgKHR0KDEsIHJbMV0pLCBUID0gYiA9IHN0KFJbMF0uc3RhcnQsIFJbMV0uc3RhcnQpKSwgKHYuc3dpcGVTdGF0dXMgfHwgdi5waW5jaFN0YXR1cykgJiYgKGUgPSBOKG4sIEMpKSkgOiBlID0gITEsICExID09PSBlID8gKE4obiwgQyA9IEN0KSwgZSkgOiAodi5ob2xkICYmIChFID0gc2V0VGltZW91dChvdC5wcm94eShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgby50cmlnZ2VyKCJob2xkIiwgW24udGFyZ2V0XSksIHYuaG9sZCAmJiAoZSA9IHYuaG9sZC5jYWxsKG8sIG4sIG4udGFyZ2V0KSkKICAgICAgICAgICAgICAgICAgICB9LCB0aGlzKSwgdi5sb25nVGFwVGhyZXNob2xkKSksIEooITApLCBudWxsKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBkKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdC5vcmlnaW5hbEV2ZW50ID8gdC5vcmlnaW5hbEV2ZW50IDogdDsKICAgICAgICAgICAgICAgIGlmIChDICE9PSBrdCAmJiBDICE9PSBDdCAmJiAhSygpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4sIHIsIHMsIGEsIG8sIGwsIGgsIHUsIHAsIGYsIGMsIGQgPSBlLnRvdWNoZXMsCiAgICAgICAgICAgICAgICAgICAgICAgIF8gPSBldChkID8gZFswXSA6IGUpOwogICAgICAgICAgICAgICAgICAgIGlmIChNID0gYXQoKSwgZCAmJiAoQSA9IGQubGVuZ3RoKSwgdi5ob2xkICYmIGNsZWFyVGltZW91dChFKSwgQyA9IE90LCAyID09IEEgJiYgKDAgPT0gVCA/ICh0dCgxLCBkWzFdKSwgVCA9IGIgPSBzdChSWzBdLnN0YXJ0LCBSWzFdLnN0YXJ0KSkgOiAoZXQoZFsxXSksIGIgPSBzdChSWzBdLmVuZCwgUlsxXS5lbmQpLCBSWzBdLmVuZCwgUlsxXS5lbmQsIE8gPSBQIDwgMSA/IGN0IDogZnQpLCBQID0gKGIgLyBUICogMSkudG9GaXhlZCgyKSwgUyA9IE1hdGguYWJzKFQgLSBiKSksIEEgPT09IHYuZmluZ2VycyB8fCB2LmZpbmdlcnMgPT09IGJ0IHx8ICFkIHx8IGooKSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAocCA9IF8uc3RhcnQsIGYgPSBfLmVuZCwgYyA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHQueCAtIGUueCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IGUueSAtIHQueSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IE1hdGguYXRhbjIobiwgaSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBNYXRoLnJvdW5kKDE4MCAqIHIgLyBNYXRoLlBJKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzIDwgMCAmJiAocyA9IDM2MCAtIE1hdGguYWJzKHMpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfShwLCBmKSwgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghMSA9PT0gdi5wcmV2ZW50RGVmYXVsdEV2ZW50cykgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2LmFsbG93UGFnZVNjcm9sbCA9PT0gZHQpIHQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSB2LmFsbG93UGFnZVNjcm9sbCA9PT0gX3Q7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBsdDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodi5zd2lwZUxlZnQgJiYgaSB8fCAhaSAmJiB2LmFsbG93UGFnZVNjcm9sbCAhPSB3dCkgJiYgdC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBodDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodi5zd2lwZVJpZ2h0ICYmIGkgfHwgIWkgJiYgdi5hbGxvd1BhZ2VTY3JvbGwgIT0gd3QpICYmIHQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgdXQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHYuc3dpcGVVcCAmJiBpIHx8ICFpICYmIHYuYWxsb3dQYWdlU2Nyb2xsICE9IFR0KSAmJiB0LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIHB0OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2LnN3aXBlRG93biAmJiBpIHx8ICFpICYmIHYuYWxsb3dQYWdlU2Nyb2xsICE9IFR0KSAmJiB0LnByZXZlbnREZWZhdWx0KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0odCwgeCA9IGMgPD0gNDUgJiYgMCA8PSBjID8gbHQgOiBjIDw9IDM2MCAmJiAzMTUgPD0gYyA/IGx0IDogMTM1IDw9IGMgJiYgYyA8PSAyMjUgPyBodCA6IDQ1IDwgYyAmJiBjIDwgMTM1ID8gcHQgOiB1dCksIGggPSBfLnN0YXJ0LCB1ID0gXy5lbmQsIHkgPSBNYXRoLnJvdW5kKE1hdGguc3FydChNYXRoLnBvdyh1LnggLSBoLngsIDIpICsgTWF0aC5wb3codS55IC0gaC55LCAyKSkpLCB3ID0gcnQoKSwgbyA9IHgsIGwgPSB5LCBsID0gTWF0aC5tYXgobCwgaXQobykpLCBrW29dLmRpc3RhbmNlID0gbCwgKHYuc3dpcGVTdGF0dXMgfHwgdi5waW5jaFN0YXR1cykgJiYgKGkgPSBOKGUsIEMpKSwgIXYudHJpZ2dlck9uVG91Y2hFbmQgfHwgdi50cmlnZ2VyT25Ub3VjaExlYXZlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZyA9ICEwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHYudHJpZ2dlck9uVG91Y2hMZWF2ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAoYSA9IChzID0gb3QocyA9IHRoaXMpKS5vZmZzZXQoKSkubGVmdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGEubGVmdCArIHMub3V0ZXJXaWR0aCgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGEudG9wLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IGEudG9wICsgcy5vdXRlckhlaWdodCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gXy5lbmQsIHIgPSBtLCBnID0gbi54ID4gci5sZWZ0ICYmIG4ueCA8IHIucmlnaHQgJiYgbi55ID4gci50b3AgJiYgbi55IDwgci5ib3R0b20KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0hdi50cmlnZ2VyT25Ub3VjaEVuZCAmJiBnID8gQyA9IEwoT3QpIDogdi50cmlnZ2VyT25Ub3VjaExlYXZlICYmICFnICYmIChDID0gTChrdCkpLCBDICE9IEN0ICYmIEMgIT0ga3QgfHwgTihlLCBDKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIE4oZSwgQyA9IEN0KTsKICAgICAgICAgICAgICAgICAgICAhMSA9PT0gaSAmJiBOKGUsIEMgPSBDdCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gXyh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHQub3JpZ2luYWxFdmVudCA/IHQub3JpZ2luYWxFdmVudCA6IHQsCiAgICAgICAgICAgICAgICAgICAgaSA9IGUudG91Y2hlczsKICAgICAgICAgICAgICAgIHJldHVybiBpICYmIGkubGVuZ3RoID8gKGggPSBhdCgpLCB1ID0gZXZlbnQudG91Y2hlcy5sZW5ndGggKyAxLCAhMCkgOiAoSygpICYmIChBID0gdSksIE0gPSBhdCgpLCB3ID0gcnQoKSwgWCgpIHx8ICFJKCkgPyBOKGUsIEMgPSBDdCkgOiB2LnRyaWdnZXJPblRvdWNoRW5kIHx8IDAgPT0gdi50cmlnZ2VyT25Ub3VjaEVuZCAmJiBDID09PSBPdCA/ICh0LnByZXZlbnREZWZhdWx0KCksIE4oZSwgQyA9IGt0KSkgOiAhdi50cmlnZ2VyT25Ub3VjaEVuZCAmJiBRKCkgPyBGKGUsIEMgPSBrdCwgdnQpIDogQyA9PT0gT3QgJiYgTihlLCBDID0gQ3QpLCBKKCExKSwgbnVsbCkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gZygpIHsKICAgICAgICAgICAgICAgIGIgPSBUID0gbCA9IE0gPSBBID0gMCwgUCA9IDEsICQoKSwgSighMSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gbSh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHQub3JpZ2luYWxFdmVudCA/IHQub3JpZ2luYWxFdmVudCA6IHQ7CiAgICAgICAgICAgICAgICB2LnRyaWdnZXJPblRvdWNoTGVhdmUgJiYgTihlLCBDID0gTChrdCkpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIEQoKSB7CiAgICAgICAgICAgICAgICBvLnVuYmluZChpLCBjKSwgby51bmJpbmQoYSwgZyksIG8udW5iaW5kKG4sIGQpLCBvLnVuYmluZChyLCBfKSwgcyAmJiBvLnVuYmluZChzLCBtKSwgSighMSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gTCh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHQsCiAgICAgICAgICAgICAgICAgICAgaSA9IHooKSwKICAgICAgICAgICAgICAgICAgICBuID0gSSgpLAogICAgICAgICAgICAgICAgICAgIHIgPSBYKCk7CiAgICAgICAgICAgICAgICByZXR1cm4gIWkgfHwgciA/IGUgPSBDdCA6ICFuIHx8IHQgIT0gT3QgfHwgdi50cmlnZ2VyT25Ub3VjaEVuZCAmJiAhdi50cmlnZ2VyT25Ub3VjaExlYXZlID8gIW4gJiYgdCA9PSBrdCAmJiB2LnRyaWdnZXJPblRvdWNoTGVhdmUgJiYgKGUgPSBDdCkgOiBlID0ga3QsIGUKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gTih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSwgbiA9IHQudG91Y2hlczsKICAgICAgICAgICAgICAgIHJldHVybiBXKCkgfHwgRygpIHx8IFkoKSB8fCBqKCkgPyAoKFcoKSB8fCBHKCkpICYmIChpID0gRih0LCBlLCBndCkpLCAoWSgpIHx8IGooKSkgJiYgITEgIT09IGkgJiYgKGkgPSBGKHQsIGUsIG10KSkpIDogWigpICYmIEgoKSAmJiAhMSAhPT0gaSA/IGkgPSBGKHQsIGUsIHl0KSA6IHcgPiB2LmxvbmdUYXBUaHJlc2hvbGQgJiYgeSA8IFB0ICYmIHYubG9uZ1RhcCAmJiAhMSAhPT0gaSA/IGkgPSBGKHQsIGUsIHh0KSA6IDEgIT09IEEgJiYgQXQgfHwgIShpc05hTih5KSB8fCB5IDwgdi50aHJlc2hvbGQpIHx8ICFRKCkgfHwgITEgPT09IGkgfHwgKGkgPSBGKHQsIGUsIHZ0KSksIGUgPT09IEN0ICYmIGcoKSwgZSA9PT0ga3QgJiYgKG4gJiYgbi5sZW5ndGggfHwgZygpKSwgaQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBGKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgIHZhciBuOwogICAgICAgICAgICAgICAgaWYgKGkgPT0gZ3QpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoby50cmlnZ2VyKCJzd2lwZVN0YXR1cyIsIFtlLCB4IHx8IG51bGwsIHkgfHwgMCwgdyB8fCAwLCBBLCBSXSksIHYuc3dpcGVTdGF0dXMgJiYgITEgPT09IChuID0gdi5zd2lwZVN0YXR1cy5jYWxsKG8sIHQsIGUsIHggfHwgbnVsbCwgeSB8fCAwLCB3IHx8IDAsIEEsIFIpKSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgIGlmIChlID09IGt0ICYmIFYoKSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoby50cmlnZ2VyKCJzd2lwZSIsIFt4LCB5LCB3LCBBLCBSXSksIHYuc3dpcGUgJiYgITEgPT09IChuID0gdi5zd2lwZS5jYWxsKG8sIHQsIHgsIHksIHcsIEEsIFIpKSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgbHQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgby50cmlnZ2VyKCJzd2lwZUxlZnQiLCBbeCwgeSwgdywgQSwgUl0pLCB2LnN3aXBlTGVmdCAmJiAobiA9IHYuc3dpcGVMZWZ0LmNhbGwobywgdCwgeCwgeSwgdywgQSwgUikpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBodDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvLnRyaWdnZXIoInN3aXBlUmlnaHQiLCBbeCwgeSwgdywgQSwgUl0pLCB2LnN3aXBlUmlnaHQgJiYgKG4gPSB2LnN3aXBlUmlnaHQuY2FsbChvLCB0LCB4LCB5LCB3LCBBLCBSKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIHV0OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8udHJpZ2dlcigic3dpcGVVcCIsIFt4LCB5LCB3LCBBLCBSXSksIHYuc3dpcGVVcCAmJiAobiA9IHYuc3dpcGVVcC5jYWxsKG8sIHQsIHgsIHksIHcsIEEsIFIpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgcHQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgby50cmlnZ2VyKCJzd2lwZURvd24iLCBbeCwgeSwgdywgQSwgUl0pLCB2LnN3aXBlRG93biAmJiAobiA9IHYuc3dpcGVEb3duLmNhbGwobywgdCwgeCwgeSwgdywgQSwgUikpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoaSA9PSBtdCkgewogICAgICAgICAgICAgICAgICAgIGlmIChvLnRyaWdnZXIoInBpbmNoU3RhdHVzIiwgW2UsIE8gfHwgbnVsbCwgUyB8fCAwLCB3IHx8IDAsIEEsIFAsIFJdKSwgdi5waW5jaFN0YXR1cyAmJiAhMSA9PT0gKG4gPSB2LnBpbmNoU3RhdHVzLmNhbGwobywgdCwgZSwgTyB8fCBudWxsLCBTIHx8IDAsIHcgfHwgMCwgQSwgUCwgUikpKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUgPT0ga3QgJiYgQigpKSBzd2l0Y2ggKE8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBmdDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8udHJpZ2dlcigicGluY2hJbiIsIFtPIHx8IG51bGwsIFMgfHwgMCwgdyB8fCAwLCBBLCBQLCBSXSksIHYucGluY2hJbiAmJiAobiA9IHYucGluY2hJbi5jYWxsKG8sIHQsIE8gfHwgbnVsbCwgUyB8fCAwLCB3IHx8IDAsIEEsIFAsIFIpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlIGN0OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgby50cmlnZ2VyKCJwaW5jaE91dCIsIFtPIHx8IG51bGwsIFMgfHwgMCwgdyB8fCAwLCBBLCBQLCBSXSksIHYucGluY2hPdXQgJiYgKG4gPSB2LnBpbmNoT3V0LmNhbGwobywgdCwgTyB8fCBudWxsLCBTIHx8IDAsIHcgfHwgMCwgQSwgUCwgUikpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGkgPT0gdnQgPyBlICE9PSBDdCAmJiBlICE9PSBrdCB8fCAoY2xlYXJUaW1lb3V0KGYpLCBjbGVhclRpbWVvdXQoRSksIEgoKSAmJiAhWigpID8gKHAgPSBhdCgpLCBmID0gc2V0VGltZW91dChvdC5wcm94eShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBwID0gbnVsbCwgby50cmlnZ2VyKCJ0YXAiLCBbdC50YXJnZXRdKSwgdi50YXAgJiYgKG4gPSB2LnRhcC5jYWxsKG8sIHQsIHQudGFyZ2V0KSkKICAgICAgICAgICAgICAgIH0sIHRoaXMpLCB2LmRvdWJsZVRhcFRocmVzaG9sZCkpIDogKHAgPSBudWxsLCBvLnRyaWdnZXIoInRhcCIsIFt0LnRhcmdldF0pLCB2LnRhcCAmJiAobiA9IHYudGFwLmNhbGwobywgdCwgdC50YXJnZXQpKSkpIDogaSA9PSB5dCA/IGUgIT09IEN0ICYmIGUgIT09IGt0IHx8IChjbGVhclRpbWVvdXQoZiksIHAgPSBudWxsLCBvLnRyaWdnZXIoImRvdWJsZXRhcCIsIFt0LnRhcmdldF0pLCB2LmRvdWJsZVRhcCAmJiAobiA9IHYuZG91YmxlVGFwLmNhbGwobywgdCwgdC50YXJnZXQpKSkgOiBpID09IHh0ICYmIChlICE9PSBDdCAmJiBlICE9PSBrdCB8fCAoY2xlYXJUaW1lb3V0KGYpLCBwID0gbnVsbCwgby50cmlnZ2VyKCJsb25ndGFwIiwgW3QudGFyZ2V0XSksIHYubG9uZ1RhcCAmJiAobiA9IHYubG9uZ1RhcC5jYWxsKG8sIHQsIHQudGFyZ2V0KSkpKSwgbgogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBJKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSAhMDsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9PSB2LnRocmVzaG9sZCAmJiAodCA9IHkgPj0gdi50aHJlc2hvbGQpLCB0CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIFgoKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9ICExOwogICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgIT09IHYuY2FuY2VsVGhyZXNob2xkICYmIG51bGwgIT09IHggJiYgKHQgPSBpdCh4KSAtIHkgPj0gdi5jYW5jZWxUaHJlc2hvbGQpLCB0CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHooKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gIXYubWF4VGltZVRocmVzaG9sZCB8fCAhKHcgPj0gdi5tYXhUaW1lVGhyZXNob2xkKQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBCKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBVKCksCiAgICAgICAgICAgICAgICAgICAgZSA9IHEoKSwKICAgICAgICAgICAgICAgICAgICBpID0gbnVsbCA9PT0gdi5waW5jaFRocmVzaG9sZCB8fCBTID49IHYucGluY2hUaHJlc2hvbGQ7CiAgICAgICAgICAgICAgICByZXR1cm4gdCAmJiBlICYmIGkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gaigpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhISh2LnBpbmNoU3RhdHVzIHx8IHYucGluY2hJbiB8fCB2LnBpbmNoT3V0KQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBZKCkgewogICAgICAgICAgICAgICAgcmV0dXJuICEoIUIoKSB8fCAhaigpKQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBWKCkgewogICAgICAgICAgICAgICAgdmFyIHQgPSB6KCksCiAgICAgICAgICAgICAgICAgICAgZSA9IEkoKSwKICAgICAgICAgICAgICAgICAgICBpID0gVSgpLAogICAgICAgICAgICAgICAgICAgIG4gPSBxKCk7CiAgICAgICAgICAgICAgICByZXR1cm4gIVgoKSAmJiBuICYmIGkgJiYgZSAmJiB0CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIEcoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gISEodi5zd2lwZSB8fCB2LnN3aXBlU3RhdHVzIHx8IHYuc3dpcGVMZWZ0IHx8IHYuc3dpcGVSaWdodCB8fCB2LnN3aXBlVXAgfHwgdi5zd2lwZURvd24pCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIFcoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gISghVigpIHx8ICFHKCkpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIFUoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gQSA9PT0gdi5maW5nZXJzIHx8IHYuZmluZ2VycyA9PT0gYnQgfHwgIUF0CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHEoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gMCAhPT0gUlswXS5lbmQueAogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBRKCkgewogICAgICAgICAgICAgICAgcmV0dXJuICEhdi50YXAKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gSCgpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhIXYuZG91YmxlVGFwCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIFooKSB7CiAgICAgICAgICAgICAgICBpZiAobnVsbCA9PSBwKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGF0KCk7CiAgICAgICAgICAgICAgICByZXR1cm4gSCgpICYmIHQgLSBwIDw9IHYuZG91YmxlVGFwVGhyZXNob2xkCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uICQoKSB7CiAgICAgICAgICAgICAgICB1ID0gaCA9IDAKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gSygpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gITE7CiAgICAgICAgICAgICAgICBoICYmIChhdCgpIC0gaCA8PSB2LmZpbmdlclJlbGVhc2VUaHJlc2hvbGQgJiYgKHQgPSAhMCkpOwogICAgICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gSih0KSB7CiAgICAgICAgICAgICAgICAhMCA9PT0gdCA/IChvLmJpbmQobiwgZCksIG8uYmluZChyLCBfKSwgcyAmJiBvLmJpbmQocywgbSkpIDogKG8udW5iaW5kKG4sIGQsICExKSwgby51bmJpbmQociwgXywgITEpLCBzICYmIG8udW5iaW5kKHMsIG0sICExKSksIG8uZGF0YShFdCArICJfaW50b3VjaCIsICEwID09PSB0KQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiB0dCh0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHZvaWQgMCAhPT0gZS5pZGVudGlmaWVyID8gZS5pZGVudGlmaWVyIDogMDsKICAgICAgICAgICAgICAgIHJldHVybiBSW3RdLmlkZW50aWZpZXIgPSBpLCBSW3RdLnN0YXJ0LnggPSBSW3RdLmVuZC54ID0gZS5wYWdlWCB8fCBlLmNsaWVudFgsIFJbdF0uc3RhcnQueSA9IFJbdF0uZW5kLnkgPSBlLnBhZ2VZIHx8IGUuY2xpZW50WSwgUlt0XQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBldCh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBlID0gMDsgZSA8IFIubGVuZ3RoOyBlKyspCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChSW2VdLmlkZW50aWZpZXIgPT0gdCkgcmV0dXJuIFJbZV0KICAgICAgICAgICAgICAgIH0odm9pZCAwICE9PSB0LmlkZW50aWZpZXIgPyB0LmlkZW50aWZpZXIgOiAwKTsKICAgICAgICAgICAgICAgIHJldHVybiBlLmVuZC54ID0gdC5wYWdlWCB8fCB0LmNsaWVudFgsIGUuZW5kLnkgPSB0LnBhZ2VZIHx8IHQuY2xpZW50WSwgZQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBpdCh0KSB7CiAgICAgICAgICAgICAgICBpZiAoa1t0XSkgcmV0dXJuIGtbdF0uZGlzdGFuY2UKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gbnQodCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246IHQsCiAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2U6IDAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gcnQoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gTSAtIGwKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gc3QodCwgZSkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBNYXRoLmFicyh0LnggLSBlLngpLAogICAgICAgICAgICAgICAgICAgIG4gPSBNYXRoLmFicyh0LnkgLSBlLnkpOwogICAgICAgICAgICAgICAgcmV0dXJuIE1hdGgucm91bmQoTWF0aC5zcXJ0KGkgKiBpICsgbiAqIG4pKQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBhdCgpIHsKICAgICAgICAgICAgICAgIHJldHVybiAobmV3IERhdGUpLmdldFRpbWUoKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuZW5hYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gby5iaW5kKGksIGMpLCBvLmJpbmQoYSwgZyksIG8KICAgICAgICAgICAgfSwgdGhpcy5kaXNhYmxlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gRCgpLCBvCiAgICAgICAgICAgIH0sIHRoaXMuZGVzdHJveSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgRCgpLCBvLmRhdGEoRXQsIG51bGwpLCBvID0gbnVsbAogICAgICAgICAgICB9LCB0aGlzLm9wdGlvbiA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IHZbdF0pIHsKICAgICAgICAgICAgICAgICAgICBpZiAodm9pZCAwID09PSBlKSByZXR1cm4gdlt0XTsKICAgICAgICAgICAgICAgICAgICB2W3RdID0gZQogICAgICAgICAgICAgICAgfSBlbHNlIG90LmVycm9yKCJPcHRpb24gIiArIHQgKyAiIGRvZXMgbm90IGV4aXN0IG9uIGpRdWVyeS5zd2lwZXRwLm9wdGlvbnMiKTsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgb3QuZm4uc3dpcGV0cCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdmFyIGUgPSBvdCh0aGlzKSwKICAgICAgICAgICAgICAgIGkgPSBlLmRhdGEoRXQpOwogICAgICAgICAgICBpZiAoaSAmJiAic3RyaW5nIiA9PSB0eXBlb2YgdCkgewogICAgICAgICAgICAgICAgaWYgKGlbdF0pIHJldHVybiBpW3RdLmFwcGx5KHRoaXMsIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMSkpOwogICAgICAgICAgICAgICAgb3QuZXJyb3IoIk1ldGhvZCAiICsgdCArICIgZG9lcyBub3QgZXhpc3Qgb24galF1ZXJ5LnN3aXBldHAiKQogICAgICAgICAgICB9IGVsc2UgaWYgKCEoaSB8fCAib2JqZWN0IiAhPSB0eXBlb2YgdCAmJiB0KSkgcmV0dXJuIGZ1bmN0aW9uKGkpIHsKICAgICAgICAgICAgICAgICFpIHx8IHZvaWQgMCAhPT0gaS5hbGxvd1BhZ2VTY3JvbGwgfHwgdm9pZCAwID09PSBpLnN3aXBlICYmIHZvaWQgMCA9PT0gaS5zd2lwZVN0YXR1cyB8fCAoaS5hbGxvd1BhZ2VTY3JvbGwgPSBkdCk7CiAgICAgICAgICAgICAgICB2b2lkIDAgIT09IGkuY2xpY2sgJiYgdm9pZCAwID09PSBpLnRhcCAmJiAoaS50YXAgPSBpLmNsaWNrKTsKICAgICAgICAgICAgICAgIGkgfHwgKGkgPSB7fSk7CiAgICAgICAgICAgICAgICByZXR1cm4gaSA9IG90LmV4dGVuZCh7fSwgb3QuZm4uc3dpcGV0cC5kZWZhdWx0cywgaSksIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IG90KHRoaXMpLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gdC5kYXRhKEV0KTsKICAgICAgICAgICAgICAgICAgICBlIHx8IChlID0gbmV3IG4odGhpcywgaSksIHQuZGF0YShFdCwgZSkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgfSwgb3QuZm4uc3dpcGV0cC52ZXJzaW9uID0gIjEuNi45Iiwgb3QuZm4uc3dpcGV0cC5kZWZhdWx0cyA9IHsKICAgICAgICAgICAgZmluZ2VyczogMSwKICAgICAgICAgICAgdGhyZXNob2xkOiA3NSwKICAgICAgICAgICAgY2FuY2VsVGhyZXNob2xkOiBudWxsLAogICAgICAgICAgICBwaW5jaFRocmVzaG9sZDogMjAsCiAgICAgICAgICAgIG1heFRpbWVUaHJlc2hvbGQ6IG51bGwsCiAgICAgICAgICAgIGZpbmdlclJlbGVhc2VUaHJlc2hvbGQ6IDI1MCwKICAgICAgICAgICAgbG9uZ1RhcFRocmVzaG9sZDogNTAwLAogICAgICAgICAgICBkb3VibGVUYXBUaHJlc2hvbGQ6IDIwMCwKICAgICAgICAgICAgc3dpcGU6IG51bGwsCiAgICAgICAgICAgIHN3aXBlTGVmdDogbnVsbCwKICAgICAgICAgICAgc3dpcGVSaWdodDogbnVsbCwKICAgICAgICAgICAgc3dpcGVVcDogbnVsbCwKICAgICAgICAgICAgc3dpcGVEb3duOiBudWxsLAogICAgICAgICAgICBzd2lwZVN0YXR1czogbnVsbCwKICAgICAgICAgICAgcGluY2hJbjogbnVsbCwKICAgICAgICAgICAgcGluY2hPdXQ6IG51bGwsCiAgICAgICAgICAgIHBpbmNoU3RhdHVzOiBudWxsLAogICAgICAgICAgICBjbGljazogbnVsbCwKICAgICAgICAgICAgdGFwOiBudWxsLAogICAgICAgICAgICBkb3VibGVUYXA6IG51bGwsCiAgICAgICAgICAgIGxvbmdUYXA6IG51bGwsCiAgICAgICAgICAgIGhvbGQ6IG51bGwsCiAgICAgICAgICAgIHRyaWdnZXJPblRvdWNoRW5kOiAhMCwKICAgICAgICAgICAgdHJpZ2dlck9uVG91Y2hMZWF2ZTogITEsCiAgICAgICAgICAgIGFsbG93UGFnZVNjcm9sbDogImF1dG8iLAogICAgICAgICAgICBmYWxsYmFja1RvTW91c2VFdmVudHM6ICEwLAogICAgICAgICAgICBleGNsdWRlZEVsZW1lbnRzOiAibGFiZWwsIGJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIGEsIC5ub1N3aXBlIiwKICAgICAgICAgICAgcHJldmVudERlZmF1bHRFdmVudHM6ICEwCiAgICAgICAgfSwgb3QuZm4uc3dpcGV0cC5waGFzZXMgPSB7CiAgICAgICAgICAgIFBIQVNFX1NUQVJUOiBTdCwKICAgICAgICAgICAgUEhBU0VfTU9WRTogT3QsCiAgICAgICAgICAgIFBIQVNFX0VORDoga3QsCiAgICAgICAgICAgIFBIQVNFX0NBTkNFTDogQ3QKICAgICAgICB9LCBvdC5mbi5zd2lwZXRwLmRpcmVjdGlvbnMgPSB7CiAgICAgICAgICAgIExFRlQ6IGx0LAogICAgICAgICAgICBSSUdIVDogaHQsCiAgICAgICAgICAgIFVQOiB1dCwKICAgICAgICAgICAgRE9XTjogcHQsCiAgICAgICAgICAgIElOOiBmdCwKICAgICAgICAgICAgT1VUOiBjdAogICAgICAgIH0sIG90LmZuLnN3aXBldHAucGFnZVNjcm9sbCA9IHsKICAgICAgICAgICAgTk9ORTogZHQsCiAgICAgICAgICAgIEhPUklaT05UQUw6IHd0LAogICAgICAgICAgICBWRVJUSUNBTDogVHQsCiAgICAgICAgICAgIEFVVE86IF90CiAgICAgICAgfSwgb3QuZm4uc3dpcGV0cC5maW5nZXJzID0gewogICAgICAgICAgICBPTkU6IDEsCiAgICAgICAgICAgIFRXTzogMiwKICAgICAgICAgICAgVEhSRUU6IDMsCiAgICAgICAgICAgIEFMTDogYnQKICAgICAgICB9CiAgICB9KSwgdm9pZCAwID09PSBjb25zb2xlKSB7CiAgICB2YXIgY29uc29sZSA9IHt9OwogICAgY29uc29sZS5sb2cgPSBjb25zb2xlLmVycm9yID0gY29uc29sZS5pbmZvID0gY29uc29sZS5kZWJ1ZyA9IGNvbnNvbGUud2FybiA9IGNvbnNvbGUudHJhY2UgPSBjb25zb2xlLmRpciA9IGNvbnNvbGUuZGlyeG1sID0gY29uc29sZS5ncm91cCA9IGNvbnNvbGUuZ3JvdXBFbmQgPSBjb25zb2xlLnRpbWUgPSBjb25zb2xlLnRpbWVFbmQgPSBjb25zb2xlLmFzc2VydCA9IGNvbnNvbGUucHJvZmlsZSA9IGNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQgPSBmdW5jdGlvbigpIHt9Cn0KaWYgKDEgPT0gd2luZG93LnRwbG9ncykgdHJ5IHsKICAgIGNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQoIlRoZW1lUHVuY2ggR3JlZW5Tb2NrcyBMb2dzIikKfSBjYXRjaCAodCkge30KdmFyIG9sZGdzID0gd2luZG93LkdyZWVuU29ja0dsb2JhbHM7Cm9sZGdzX3F1ZXVlID0gd2luZG93Ll9nc1F1ZXVlOwp2YXIgX2dzU2NvcGUsIHB1bmNoZ3MgPSB3aW5kb3cuR3JlZW5Tb2NrR2xvYmFscyA9IHt9OwppZiAoMSA9PSB3aW5kb3cudHBsb2dzKSB0cnkgewogICAgICAgIGNvbnNvbGUuaW5mbygiQnVpbGQgR3JlZW5Tb2NrIFNhbmRCb3ggZm9yIFRoZW1lUHVuY2ggUGx1Z2lucyIpLCBjb25zb2xlLmluZm8oIkdyZWVuU29jayBUd2VlbkxpdGUgRW5naW5lIEluaXRhbGlzZWQgYnkgVGhlbWVQdW5jaCBQbHVnaW4iKQogICAgfSBjYXRjaCAodCkge30hIGZ1bmN0aW9uKGMsIGQpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgdmFyIGUsIGksIF8gPSB7fSwKICAgICAgICAgICAgbiA9IGMuZG9jdW1lbnQsCiAgICAgICAgICAgIGcgPSBjLkdyZWVuU29ja0dsb2JhbHMgPSBjLkdyZWVuU29ja0dsb2JhbHMgfHwgYzsKICAgICAgICBpZiAoIWcuVHdlZW5MaXRlKSB7CiAgICAgICAgICAgIHZhciB0LCByLCBzLCBtLCB2LCB5ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpID0gdC5zcGxpdCgiLiIpLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gZzsKICAgICAgICAgICAgICAgICAgICBmb3IgKGUgPSAwOyBlIDwgaS5sZW5ndGg7IGUrKykgbltpW2VdXSA9IG4gPSBuW2lbZV1dIHx8IHt9OwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcCA9IHkoImNvbS5ncmVlbnNvY2siKSwKICAgICAgICAgICAgICAgIHggPSAxZS0xMCwKICAgICAgICAgICAgICAgIGwgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGkgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIGZvciAoZSA9IDA7IGUgIT09IG47IGkucHVzaCh0W2UrK10pKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHcgPSBmdW5jdGlvbigpIHt9LAogICAgICAgICAgICAgICAgVCA9IChlID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZywgaSA9IGUuY2FsbChbXSksIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSB0ICYmICh0IGluc3RhbmNlb2YgQXJyYXkgfHwgIm9iamVjdCIgPT0gdHlwZW9mIHQgJiYgISF0LnB1c2ggJiYgZS5jYWxsKHQpID09PSBpKQogICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICBiID0ge30sCiAgICAgICAgICAgICAgICBQID0gZnVuY3Rpb24obCwgaCwgdSwgcCkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuc2MgPSBiW2xdID8gYltsXS5zYyA6IFtdLCAoYltsXSA9IHRoaXMpLmdzQ2xhc3MgPSBudWxsLCB0aGlzLmZ1bmMgPSB1OwogICAgICAgICAgICAgICAgICAgIHZhciBmID0gW107CiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGVjayA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSwgaSwgbiwgciwgcywgYSA9IGgubGVuZ3RoLCBvID0gYTsgLSAxIDwgLS1hOykoZSA9IGJbaFthXV0gfHwgbmV3IFAoaFthXSwgW10pKS5nc0NsYXNzID8gKGZbYV0gPSBlLmdzQ2xhc3MsIG8tLSkgOiB0ICYmIGUuc2MucHVzaCh0aGlzKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDAgPT09IG8gJiYgdSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG4gPSAoaSA9ICgiY29tLmdyZWVuc29jay4iICsgbCkuc3BsaXQoIi4iKSkucG9wKCksIHIgPSB5KGkuam9pbigiLiIpKVtuXSA9IHRoaXMuZ3NDbGFzcyA9IHUuYXBwbHkodSwgZiksIHApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGdbbl0gPSBfW25dID0gciwgIShzID0gInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cykgJiYgImZ1bmN0aW9uIiA9PSB0eXBlb2YgZGVmaW5lICYmIGRlZmluZS5hbWQpIGRlZmluZSgoYy5HcmVlblNvY2tBTURQYXRoID8gYy5HcmVlblNvY2tBTURQYXRoICsgIi8iIDogIiIpICsgbC5zcGxpdCgiLiIpLnBvcCgpLCBbXSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobCA9PT0gZCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhIGluIG1vZHVsZS5leHBvcnRzID0gX1tkXSA9IHIsIF8pIHJbYV0gPSBfW2FdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgX1tkXSAmJiAoX1tkXVtuXSA9IHIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gMDsgYSA8IHRoaXMuc2MubGVuZ3RoOyBhKyspIHRoaXMuc2NbYV0uY2hlY2soKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSwgdGhpcy5jaGVjayghMCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBhID0gYy5fZ3NEZWZpbmUgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQKHQsIGUsIGksIG4pCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZiA9IHAuX2NsYXNzID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlID0gZSB8fCBmdW5jdGlvbigpIHt9LCBhKHQsIFtdLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUKICAgICAgICAgICAgICAgICAgICB9LCBpKSwgZQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgYS5nbG9iYWxzID0gZzsKICAgICAgICAgICAgdmFyIG8gPSBbMCwgMCwgMSwgMV0sCiAgICAgICAgICAgICAgICBTID0gZigiZWFzaW5nLkVhc2UiLCBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuYyA9IHQsIHRoaXMuX3R5cGUgPSBpIHx8IDAsIHRoaXMuX3Bvd2VyID0gbiB8fCAwLCB0aGlzLl9wYXJhbXMgPSBlID8gby5jb25jYXQoZSkgOiBvCiAgICAgICAgICAgICAgICB9LCAhMCksCiAgICAgICAgICAgICAgICBPID0gUy5tYXAgPSB7fSwKICAgICAgICAgICAgICAgIGggPSBTLnJlZ2lzdGVyID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHIsIHMsIGEsIG8sIGwgPSBlLnNwbGl0KCIsIiksIGggPSBsLmxlbmd0aCwgdSA9IChpIHx8ICJlYXNlSW4sZWFzZU91dCxlYXNlSW5PdXQiKS5zcGxpdCgiLCIpOyAtIDEgPCAtLWg7KQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHMgPSBsW2hdLCByID0gbiA/IGYoImVhc2luZy4iICsgcywgbnVsbCwgITApIDogcC5lYXNpbmdbc10gfHwge30sIGEgPSB1Lmxlbmd0aDsgLSAxIDwgLS1hOykgbyA9IHVbYV0sIE9bcyArICIuIiArIG9dID0gT1tvICsgc10gPSByW29dID0gdC5nZXRSYXRpbyA/IHQgOiB0W29dIHx8IG5ldyB0CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBmb3IgKChzID0gUy5wcm90b3R5cGUpLl9jYWxjRW5kID0gITEsIHMuZ2V0UmF0aW8gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2Z1bmMpIHJldHVybiB0aGlzLl9wYXJhbXNbMF0gPSB0LCB0aGlzLl9mdW5jLmFwcGx5KG51bGwsIHRoaXMuX3BhcmFtcyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLl90eXBlLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gdGhpcy5fcG93ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSAxID09PSBlID8gMSAtIHQgOiAyID09PSBlID8gdCA6IHQgPCAuNSA/IDIgKiB0IDogMiAqICgxIC0gdCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEgPT09IGkgPyBuICo9IG4gOiAyID09PSBpID8gbiAqPSBuICogbiA6IDMgPT09IGkgPyBuICo9IG4gKiBuICogbiA6IDQgPT09IGkgJiYgKG4gKj0gbiAqIG4gKiBuICogbiksIDEgPT09IGUgPyAxIC0gbiA6IDIgPT09IGUgPyBuIDogdCA8IC41ID8gbiAvIDIgOiAxIC0gbiAvIDIKICAgICAgICAgICAgICAgIH0sIHIgPSAodCA9IFsiTGluZWFyIiwgIlF1YWQiLCAiQ3ViaWMiLCAiUXVhcnQiLCAiUXVpbnQsU3Ryb25nIl0pLmxlbmd0aDsgLSAxIDwgLS1yOykgcyA9IHRbcl0gKyAiLFBvd2VyIiArIHIsIGgobmV3IFMobnVsbCwgbnVsbCwgMSwgciksIHMsICJlYXNlT3V0IiwgITApLCBoKG5ldyBTKG51bGwsIG51bGwsIDIsIHIpLCBzLCAiZWFzZUluIiArICgwID09PSByID8gIixlYXNlTm9uZSIgOiAiIikpLCBoKG5ldyBTKG51bGwsIG51bGwsIDMsIHIpLCBzLCAiZWFzZUluT3V0Iik7CiAgICAgICAgICAgIE8ubGluZWFyID0gcC5lYXNpbmcuTGluZWFyLmVhc2VJbiwgTy5zd2luZyA9IHAuZWFzaW5nLlF1YWQuZWFzZUluT3V0OwogICAgICAgICAgICB2YXIgayA9IGYoImV2ZW50cy5FdmVudERpc3BhdGNoZXIiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0aGlzLl9saXN0ZW5lcnMgPSB7fSwgdGhpcy5fZXZlbnRUYXJnZXQgPSB0IHx8IHRoaXMKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIChzID0gay5wcm90b3R5cGUpLmFkZEV2ZW50TGlzdGVuZXIgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICByID0gciB8fCAwOwogICAgICAgICAgICAgICAgdmFyIHMsIGEsIG8gPSB0aGlzLl9saXN0ZW5lcnNbdF0sCiAgICAgICAgICAgICAgICAgICAgbCA9IDA7CiAgICAgICAgICAgICAgICBmb3IgKHRoaXMgIT09IG0gfHwgdiB8fCBtLndha2UoKSwgbnVsbCA9PSBvICYmICh0aGlzLl9saXN0ZW5lcnNbdF0gPSBvID0gW10pLCBhID0gby5sZW5ndGg7IC0gMSA8IC0tYTspKHMgPSBvW2FdKS5jID09PSBlICYmIHMucyA9PT0gaSA/IG8uc3BsaWNlKGEsIDEpIDogMCA9PT0gbCAmJiBzLnByIDwgciAmJiAobCA9IGEgKyAxKTsKICAgICAgICAgICAgICAgIG8uc3BsaWNlKGwsIDAsIHsKICAgICAgICAgICAgICAgICAgICBjOiBlLAogICAgICAgICAgICAgICAgICAgIHM6IGksCiAgICAgICAgICAgICAgICAgICAgdXA6IG4sCiAgICAgICAgICAgICAgICAgICAgcHI6IHIKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIHMucmVtb3ZlRXZlbnRMaXN0ZW5lciA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBpLCBuID0gdGhpcy5fbGlzdGVuZXJzW3RdOwogICAgICAgICAgICAgICAgaWYgKG4pCiAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gbi5sZW5ndGg7IC0gMSA8IC0taTspCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuW2ldLmMgPT09IGUpIHJldHVybiB2b2lkIG4uc3BsaWNlKGksIDEpCiAgICAgICAgICAgIH0sIHMuZGlzcGF0Y2hFdmVudCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCByID0gdGhpcy5fbGlzdGVuZXJzW3RdOwogICAgICAgICAgICAgICAgaWYgKHIpCiAgICAgICAgICAgICAgICAgICAgZm9yICgxIDwgKGUgPSByLmxlbmd0aCkgJiYgKHIgPSByLnNsaWNlKDApKSwgaSA9IHRoaXMuX2V2ZW50VGFyZ2V0OyAtIDEgPCAtLWU7KShuID0gcltlXSkgJiYgKG4udXAgPyBuLmMuY2FsbChuLnMgfHwgaSwgewogICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiB0LAogICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ6IGkKICAgICAgICAgICAgICAgICAgICB9KSA6IG4uYy5jYWxsKG4ucyB8fCBpKSkKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdmFyIEMgPSBjLnJlcXVlc3RBbmltYXRpb25GcmFtZSwKICAgICAgICAgICAgICAgIEEgPSBjLmNhbmNlbEFuaW1hdGlvbkZyYW1lLAogICAgICAgICAgICAgICAgUiA9IERhdGUubm93IHx8IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAobmV3IERhdGUpLmdldFRpbWUoKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIE0gPSBSKCk7CiAgICAgICAgICAgIGZvciAociA9ICh0ID0gWyJtcyIsICJtb3oiLCAid2Via2l0IiwgIm8iXSkubGVuZ3RoOyAtIDEgPCAtLXIgJiYgIUM7KSBDID0gY1t0W3JdICsgIlJlcXVlc3RBbmltYXRpb25GcmFtZSJdLCBBID0gY1t0W3JdICsgIkNhbmNlbEFuaW1hdGlvbkZyYW1lIl0gfHwgY1t0W3JdICsgIkNhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZSJdOwogICAgICAgICAgICBmKCJUaWNrZXIiLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgciwgcywgYSwgbywgbCwgaCA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgdSA9IFIoKSwKICAgICAgICAgICAgICAgICAgICBpID0gISghMSA9PT0gZSB8fCAhQykgJiYgImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHAgPSA1MDAsCiAgICAgICAgICAgICAgICAgICAgZiA9IDMzLAogICAgICAgICAgICAgICAgICAgIGMgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gUigpIC0gTTsKICAgICAgICAgICAgICAgICAgICAgICAgcCA8IG4gJiYgKHUgKz0gbiAtIGYpLCBNICs9IG4sIGgudGltZSA9IChNIC0gdSkgLyAxZTMsIGUgPSBoLnRpbWUgLSBsLCAoIXIgfHwgMCA8IGUgfHwgITAgPT09IHQpICYmIChoLmZyYW1lKyssIGwgKz0gZSArIChvIDw9IGUgPyAuMDA0IDogbyAtIGUpLCBpID0gITApLCAhMCAhPT0gdCAmJiAoYSA9IHMoYykpLCBpICYmIGguZGlzcGF0Y2hFdmVudCgidGljayIpCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIGsuY2FsbChoKSwgaC50aW1lID0gaC5mcmFtZSA9IDAsIGgudGljayA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGMoITApCiAgICAgICAgICAgICAgICB9LCBoLmxhZ1Ntb290aGluZyA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBwID0gdCB8fCAxZTEwLCBmID0gTWF0aC5taW4oZSwgcCwgMCkKICAgICAgICAgICAgICAgIH0sIGguc2xlZXAgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBudWxsICE9IGEgJiYgKGkgJiYgQSA/IEEoYSkgOiBjbGVhclRpbWVvdXQoYSksIHMgPSB3LCBhID0gbnVsbCwgaCA9PT0gbSAmJiAodiA9ICExKSkKICAgICAgICAgICAgICAgIH0sIGgud2FrZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBudWxsICE9PSBhID8gaC5zbGVlcCgpIDogdCA/IHUgKz0gLU0gKyAoTSA9IFIoKSkgOiAxMCA8IGguZnJhbWUgJiYgKE0gPSBSKCkgLSBwICsgNSksIHMgPSAwID09PSByID8gdyA6IGkgJiYgQyA/IEMgOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZXRUaW1lb3V0KHQsIDFlMyAqIChsIC0gaC50aW1lKSArIDEgfCAwKQogICAgICAgICAgICAgICAgICAgIH0sIGggPT09IG0gJiYgKHYgPSAhMCksIGMoMikKICAgICAgICAgICAgICAgIH0sIGguZnBzID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gKG8gPSAxIC8gKChyID0gdCkgfHwgNjApLCBsID0gdGhpcy50aW1lICsgbywgdm9pZCBoLndha2UoKSkgOiByCiAgICAgICAgICAgICAgICB9LCBoLnVzZVJBRiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzLmxlbmd0aCA/IChoLnNsZWVwKCksIGkgPSB0LCB2b2lkIGguZnBzKHIpKSA6IGkKICAgICAgICAgICAgICAgIH0sIGguZnBzKHQpLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICJhdXRvIiA9PT0gaSAmJiBoLmZyYW1lIDwgNSAmJiAiaGlkZGVuIiAhPT0gbi52aXNpYmlsaXR5U3RhdGUgJiYgaC51c2VSQUYoITEpCiAgICAgICAgICAgICAgICB9LCAxNTAwKQogICAgICAgICAgICB9KSwgKHMgPSBwLlRpY2tlci5wcm90b3R5cGUgPSBuZXcgcC5ldmVudHMuRXZlbnREaXNwYXRjaGVyKS5jb25zdHJ1Y3RvciA9IHAuVGlja2VyOwogICAgICAgICAgICB2YXIgdSA9IGYoImNvcmUuQW5pbWF0aW9uIiwgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgaWYgKHRoaXMudmFycyA9IGUgPSBlIHx8IHt9LCB0aGlzLl9kdXJhdGlvbiA9IHRoaXMuX3RvdGFsRHVyYXRpb24gPSB0IHx8IDAsIHRoaXMuX2RlbGF5ID0gTnVtYmVyKGUuZGVsYXkpIHx8IDAsIHRoaXMuX3RpbWVTY2FsZSA9IDEsIHRoaXMuX2FjdGl2ZSA9ICEwID09PSBlLmltbWVkaWF0ZVJlbmRlciwgdGhpcy5kYXRhID0gZS5kYXRhLCB0aGlzLl9yZXZlcnNlZCA9ICEwID09PSBlLnJldmVyc2VkLCBIKSB7CiAgICAgICAgICAgICAgICAgICAgdiB8fCBtLndha2UoKTsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHRoaXMudmFycy51c2VGcmFtZXMgPyBRIDogSDsKICAgICAgICAgICAgICAgICAgICBpLmFkZCh0aGlzLCBpLl90aW1lKSwgdGhpcy52YXJzLnBhdXNlZCAmJiB0aGlzLnBhdXNlZCghMCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIG0gPSB1LnRpY2tlciA9IG5ldyBwLlRpY2tlciwgKHMgPSB1LnByb3RvdHlwZSkuX2RpcnR5ID0gcy5fZ2MgPSBzLl9pbml0dGVkID0gcy5fcGF1c2VkID0gITEsIHMuX3RvdGFsVGltZSA9IHMuX3RpbWUgPSAwLCBzLl9yYXdQcmV2VGltZSA9IC0xLCBzLl9uZXh0ID0gcy5fbGFzdCA9IHMuX29uVXBkYXRlID0gcy5fdGltZWxpbmUgPSBzLnRpbWVsaW5lID0gbnVsbCwgcy5fcGF1c2VkID0gITE7CiAgICAgICAgICAgIHZhciBFID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2ICYmIDJlMyA8IFIoKSAtIE0gJiYgbS53YWtlKCksIHNldFRpbWVvdXQoRSwgMmUzKQogICAgICAgICAgICB9OwogICAgICAgICAgICBFKCksIHMucGxheSA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHQgJiYgdGhpcy5zZWVrKHQsIGUpLCB0aGlzLnJldmVyc2VkKCExKS5wYXVzZWQoITEpCiAgICAgICAgICAgIH0sIHMucGF1c2UgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSB0ICYmIHRoaXMuc2Vlayh0LCBlKSwgdGhpcy5wYXVzZWQoITApCiAgICAgICAgICAgIH0sIHMucmVzdW1lID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgIT0gdCAmJiB0aGlzLnNlZWsodCwgZSksIHRoaXMucGF1c2VkKCExKQogICAgICAgICAgICB9LCBzLnNlZWsgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50b3RhbFRpbWUoTnVtYmVyKHQpLCAhMSAhPT0gZSkKICAgICAgICAgICAgfSwgcy5yZXN0YXJ0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmV2ZXJzZWQoITEpLnBhdXNlZCghMSkudG90YWxUaW1lKHQgPyAtdGhpcy5fZGVsYXkgOiAwLCAhMSAhPT0gZSwgITApCiAgICAgICAgICAgIH0sIHMucmV2ZXJzZSA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHQgJiYgdGhpcy5zZWVrKHQgfHwgdGhpcy50b3RhbER1cmF0aW9uKCksIGUpLCB0aGlzLnJldmVyc2VkKCEwKS5wYXVzZWQoITEpCiAgICAgICAgICAgIH0sIHMucmVuZGVyID0gZnVuY3Rpb24odCwgZSwgaSkge30sIHMuaW52YWxpZGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3RpbWUgPSB0aGlzLl90b3RhbFRpbWUgPSAwLCB0aGlzLl9pbml0dGVkID0gdGhpcy5fZ2MgPSAhMSwgdGhpcy5fcmF3UHJldlRpbWUgPSAtMSwgKHRoaXMuX2djIHx8ICF0aGlzLnRpbWVsaW5lKSAmJiB0aGlzLl9lbmFibGVkKCEwKSwgdGhpcwogICAgICAgICAgICB9LCBzLmlzQWN0aXZlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgZSA9IHRoaXMuX3RpbWVsaW5lLAogICAgICAgICAgICAgICAgICAgIGkgPSB0aGlzLl9zdGFydFRpbWU7CiAgICAgICAgICAgICAgICByZXR1cm4gIWUgfHwgIXRoaXMuX2djICYmICF0aGlzLl9wYXVzZWQgJiYgZS5pc0FjdGl2ZSgpICYmICh0ID0gZS5yYXdUaW1lKCEwKSkgPj0gaSAmJiB0IDwgaSArIHRoaXMudG90YWxEdXJhdGlvbigpIC8gdGhpcy5fdGltZVNjYWxlCiAgICAgICAgICAgIH0sIHMuX2VuYWJsZWQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdiB8fCBtLndha2UoKSwgdGhpcy5fZ2MgPSAhdCwgdGhpcy5fYWN0aXZlID0gdGhpcy5pc0FjdGl2ZSgpLCAhMCAhPT0gZSAmJiAodCAmJiAhdGhpcy50aW1lbGluZSA/IHRoaXMuX3RpbWVsaW5lLmFkZCh0aGlzLCB0aGlzLl9zdGFydFRpbWUgLSB0aGlzLl9kZWxheSkgOiAhdCAmJiB0aGlzLnRpbWVsaW5lICYmIHRoaXMuX3RpbWVsaW5lLl9yZW1vdmUodGhpcywgITApKSwgITEKICAgICAgICAgICAgfSwgcy5fa2lsbCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9lbmFibGVkKCExLCAhMSkKICAgICAgICAgICAgfSwgcy5raWxsID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2tpbGwodCwgZSksIHRoaXMKICAgICAgICAgICAgfSwgcy5fdW5jYWNoZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0ID8gdGhpcyA6IHRoaXMudGltZWxpbmU7IGU7KSBlLl9kaXJ0eSA9ICEwLCBlID0gZS50aW1lbGluZTsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzCiAgICAgICAgICAgIH0sIHMuX3N3YXBTZWxmSW5QYXJhbXMgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBlID0gdC5sZW5ndGgsIGkgPSB0LmNvbmNhdCgpOyAtIDEgPCAtLWU7KSAie3NlbGZ9IiA9PT0gdFtlXSAmJiAoaVtlXSA9IHRoaXMpOwogICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgICAgfSwgcy5fY2FsbGJhY2sgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMudmFycywKICAgICAgICAgICAgICAgICAgICBpID0gZVt0XSwKICAgICAgICAgICAgICAgICAgICBuID0gZVt0ICsgIlBhcmFtcyJdLAogICAgICAgICAgICAgICAgICAgIHIgPSBlW3QgKyAiU2NvcGUiXSB8fCBlLmNhbGxiYWNrU2NvcGUgfHwgdGhpczsKICAgICAgICAgICAgICAgIHN3aXRjaCAobiA/IG4ubGVuZ3RoIDogMCkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgICAgICAgICAgaS5jYWxsKHIpOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICAgICAgICAgIGkuY2FsbChyLCBuWzBdKTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgICAgICAgICAgICBpLmNhbGwociwgblswXSwgblsxXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAgICAgIGkuYXBwbHkociwgbikKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgcy5ldmVudENhbGxiYWNrID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgaWYgKCJvbiIgPT09ICh0IHx8ICIiKS5zdWJzdHIoMCwgMikpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciA9IHRoaXMudmFyczsKICAgICAgICAgICAgICAgICAgICBpZiAoMSA9PT0gYXJndW1lbnRzLmxlbmd0aCkgcmV0dXJuIHJbdF07CiAgICAgICAgICAgICAgICAgICAgbnVsbCA9PSBlID8gZGVsZXRlIHJbdF0gOiAoclt0XSA9IGUsIHJbdCArICJQYXJhbXMiXSA9IFQoaSkgJiYgLTEgIT09IGkuam9pbigiIikuaW5kZXhPZigie3NlbGZ9IikgPyB0aGlzLl9zd2FwU2VsZkluUGFyYW1zKGkpIDogaSwgclt0ICsgIlNjb3BlIl0gPSBuKSwgIm9uVXBkYXRlIiA9PT0gdCAmJiAodGhpcy5fb25VcGRhdGUgPSBlKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMKICAgICAgICAgICAgfSwgcy5kZWxheSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gKHRoaXMuX3RpbWVsaW5lLnNtb290aENoaWxkVGltaW5nICYmIHRoaXMuc3RhcnRUaW1lKHRoaXMuX3N0YXJ0VGltZSArIHQgLSB0aGlzLl9kZWxheSksIHRoaXMuX2RlbGF5ID0gdCwgdGhpcykgOiB0aGlzLl9kZWxheQogICAgICAgICAgICB9LCBzLmR1cmF0aW9uID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPyAodGhpcy5fZHVyYXRpb24gPSB0aGlzLl90b3RhbER1cmF0aW9uID0gdCwgdGhpcy5fdW5jYWNoZSghMCksIHRoaXMuX3RpbWVsaW5lLnNtb290aENoaWxkVGltaW5nICYmIDAgPCB0aGlzLl90aW1lICYmIHRoaXMuX3RpbWUgPCB0aGlzLl9kdXJhdGlvbiAmJiAwICE9PSB0ICYmIHRoaXMudG90YWxUaW1lKHRoaXMuX3RvdGFsVGltZSAqICh0IC8gdGhpcy5fZHVyYXRpb24pLCAhMCksIHRoaXMpIDogKHRoaXMuX2RpcnR5ID0gITEsIHRoaXMuX2R1cmF0aW9uKQogICAgICAgICAgICB9LCBzLnRvdGFsRHVyYXRpb24gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fZGlydHkgPSAhMSwgYXJndW1lbnRzLmxlbmd0aCA/IHRoaXMuZHVyYXRpb24odCkgOiB0aGlzLl90b3RhbER1cmF0aW9uCiAgICAgICAgICAgIH0sIHMudGltZSA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gKHRoaXMuX2RpcnR5ICYmIHRoaXMudG90YWxEdXJhdGlvbigpLCB0aGlzLnRvdGFsVGltZSh0ID4gdGhpcy5fZHVyYXRpb24gPyB0aGlzLl9kdXJhdGlvbiA6IHQsIGUpKSA6IHRoaXMuX3RpbWUKICAgICAgICAgICAgfSwgcy50b3RhbFRpbWUgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICBpZiAodiB8fCBtLndha2UoKSwgIWFyZ3VtZW50cy5sZW5ndGgpIHJldHVybiB0aGlzLl90b3RhbFRpbWU7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGltZWxpbmUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAodCA8IDAgJiYgIWkgJiYgKHQgKz0gdGhpcy50b3RhbER1cmF0aW9uKCkpLCB0aGlzLl90aW1lbGluZS5zbW9vdGhDaGlsZFRpbWluZykgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9kaXJ0eSAmJiB0aGlzLnRvdGFsRHVyYXRpb24oKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSB0aGlzLl90b3RhbER1cmF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IHRoaXMuX3RpbWVsaW5lOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAobiA8IHQgJiYgIWkgJiYgKHQgPSBuKSwgdGhpcy5fc3RhcnRUaW1lID0gKHRoaXMuX3BhdXNlZCA/IHRoaXMuX3BhdXNlVGltZSA6IHIuX3RpbWUpIC0gKHRoaXMuX3JldmVyc2VkID8gbiAtIHQgOiB0KSAvIHRoaXMuX3RpbWVTY2FsZSwgci5fZGlydHkgfHwgdGhpcy5fdW5jYWNoZSghMSksIHIuX3RpbWVsaW5lKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IHIuX3RpbWVsaW5lOykgci5fdGltZWxpbmUuX3RpbWUgIT09IChyLl9zdGFydFRpbWUgKyByLl90b3RhbFRpbWUpIC8gci5fdGltZVNjYWxlICYmIHIudG90YWxUaW1lKHIuX3RvdGFsVGltZSwgITApLCByID0gci5fdGltZWxpbmUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2MgJiYgdGhpcy5fZW5hYmxlZCghMCwgITEpLCAodGhpcy5fdG90YWxUaW1lICE9PSB0IHx8IDAgPT09IHRoaXMuX2R1cmF0aW9uKSAmJiAoRi5sZW5ndGggJiYgJCgpLCB0aGlzLnJlbmRlcih0LCBlLCAhMSksIEYubGVuZ3RoICYmICQoKSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0aGlzCiAgICAgICAgICAgIH0sIHMucHJvZ3Jlc3MgPSBzLnRvdGFsUHJvZ3Jlc3MgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHRoaXMuZHVyYXRpb24oKTsKICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gdGhpcy50b3RhbFRpbWUoaSAqIHQsIGUpIDogaSA/IHRoaXMuX3RpbWUgLyBpIDogdGhpcy5yYXRpbwogICAgICAgICAgICB9LCBzLnN0YXJ0VGltZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gKHQgIT09IHRoaXMuX3N0YXJ0VGltZSAmJiAodGhpcy5fc3RhcnRUaW1lID0gdCwgdGhpcy50aW1lbGluZSAmJiB0aGlzLnRpbWVsaW5lLl9zb3J0Q2hpbGRyZW4gJiYgdGhpcy50aW1lbGluZS5hZGQodGhpcywgdCAtIHRoaXMuX2RlbGF5KSksIHRoaXMpIDogdGhpcy5fc3RhcnRUaW1lCiAgICAgICAgICAgIH0sIHMuZW5kVGltZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9zdGFydFRpbWUgKyAoMCAhPSB0ID8gdGhpcy50b3RhbER1cmF0aW9uKCkgOiB0aGlzLmR1cmF0aW9uKCkpIC8gdGhpcy5fdGltZVNjYWxlCiAgICAgICAgICAgIH0sIHMudGltZVNjYWxlID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgaWYgKCFhcmd1bWVudHMubGVuZ3RoKSByZXR1cm4gdGhpcy5fdGltZVNjYWxlOwogICAgICAgICAgICAgICAgaWYgKHQgPSB0IHx8IHgsIHRoaXMuX3RpbWVsaW5lICYmIHRoaXMuX3RpbWVsaW5lLnNtb290aENoaWxkVGltaW5nKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLl9wYXVzZVRpbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlIHx8IDAgPT09IGUgPyBlIDogdGhpcy5fdGltZWxpbmUudG90YWxUaW1lKCk7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc3RhcnRUaW1lID0gaSAtIChpIC0gdGhpcy5fc3RhcnRUaW1lKSAqIHRoaXMuX3RpbWVTY2FsZSAvIHQKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl90aW1lU2NhbGUgPSB0LCB0aGlzLl91bmNhY2hlKCExKQogICAgICAgICAgICB9LCBzLnJldmVyc2VkID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPyAodCAhPSB0aGlzLl9yZXZlcnNlZCAmJiAodGhpcy5fcmV2ZXJzZWQgPSB0LCB0aGlzLnRvdGFsVGltZSh0aGlzLl90aW1lbGluZSAmJiAhdGhpcy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcgPyB0aGlzLnRvdGFsRHVyYXRpb24oKSAtIHRoaXMuX3RvdGFsVGltZSA6IHRoaXMuX3RvdGFsVGltZSwgITApKSwgdGhpcykgOiB0aGlzLl9yZXZlcnNlZAogICAgICAgICAgICB9LCBzLnBhdXNlZCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGlmICghYXJndW1lbnRzLmxlbmd0aCkgcmV0dXJuIHRoaXMuX3BhdXNlZDsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gdGhpcy5fdGltZWxpbmU7CiAgICAgICAgICAgICAgICByZXR1cm4gdCAhPSB0aGlzLl9wYXVzZWQgJiYgbiAmJiAodiB8fCB0IHx8IG0ud2FrZSgpLCBpID0gKGUgPSBuLnJhd1RpbWUoKSkgLSB0aGlzLl9wYXVzZVRpbWUsICF0ICYmIG4uc21vb3RoQ2hpbGRUaW1pbmcgJiYgKHRoaXMuX3N0YXJ0VGltZSArPSBpLCB0aGlzLl91bmNhY2hlKCExKSksIHRoaXMuX3BhdXNlVGltZSA9IHQgPyBlIDogbnVsbCwgdGhpcy5fcGF1c2VkID0gdCwgdGhpcy5fYWN0aXZlID0gdGhpcy5pc0FjdGl2ZSgpLCAhdCAmJiAwICE9PSBpICYmIHRoaXMuX2luaXR0ZWQgJiYgdGhpcy5kdXJhdGlvbigpICYmIChlID0gbi5zbW9vdGhDaGlsZFRpbWluZyA/IHRoaXMuX3RvdGFsVGltZSA6IChlIC0gdGhpcy5fc3RhcnRUaW1lKSAvIHRoaXMuX3RpbWVTY2FsZSwgdGhpcy5yZW5kZXIoZSwgZSA9PT0gdGhpcy5fdG90YWxUaW1lLCAhMCkpKSwgdGhpcy5fZ2MgJiYgIXQgJiYgdGhpcy5fZW5hYmxlZCghMCwgITEpLCB0aGlzCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHZhciBEID0gZigiY29yZS5TaW1wbGVUaW1lbGluZSIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHUuY2FsbCh0aGlzLCAwLCB0KSwgdGhpcy5hdXRvUmVtb3ZlQ2hpbGRyZW4gPSB0aGlzLnNtb290aENoaWxkVGltaW5nID0gITAKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIChzID0gRC5wcm90b3R5cGUgPSBuZXcgdSkuY29uc3RydWN0b3IgPSBELCBzLmtpbGwoKS5fZ2MgPSAhMSwgcy5fZmlyc3QgPSBzLl9sYXN0ID0gcy5fcmVjZW50ID0gbnVsbCwgcy5fc29ydENoaWxkcmVuID0gITEsIHMuYWRkID0gcy5pbnNlcnQgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgciwgczsKICAgICAgICAgICAgICAgIGlmICh0Ll9zdGFydFRpbWUgPSBOdW1iZXIoZSB8fCAwKSArIHQuX2RlbGF5LCB0Ll9wYXVzZWQgJiYgdGhpcyAhPT0gdC5fdGltZWxpbmUgJiYgKHQuX3BhdXNlVGltZSA9IHQuX3N0YXJ0VGltZSArICh0aGlzLnJhd1RpbWUoKSAtIHQuX3N0YXJ0VGltZSkgLyB0Ll90aW1lU2NhbGUpLCB0LnRpbWVsaW5lICYmIHQudGltZWxpbmUuX3JlbW92ZSh0LCAhMCksIHQudGltZWxpbmUgPSB0Ll90aW1lbGluZSA9IHRoaXMsIHQuX2djICYmIHQuX2VuYWJsZWQoITAsICEwKSwgciA9IHRoaXMuX2xhc3QsIHRoaXMuX3NvcnRDaGlsZHJlbikKICAgICAgICAgICAgICAgICAgICBmb3IgKHMgPSB0Ll9zdGFydFRpbWU7IHIgJiYgci5fc3RhcnRUaW1lID4gczspIHIgPSByLl9wcmV2OwogICAgICAgICAgICAgICAgcmV0dXJuIHIgPyAodC5fbmV4dCA9IHIuX25leHQsIHIuX25leHQgPSB0KSA6ICh0Ll9uZXh0ID0gdGhpcy5fZmlyc3QsIHRoaXMuX2ZpcnN0ID0gdCksIHQuX25leHQgPyB0Ll9uZXh0Ll9wcmV2ID0gdCA6IHRoaXMuX2xhc3QgPSB0LCB0Ll9wcmV2ID0gciwgdGhpcy5fcmVjZW50ID0gdCwgdGhpcy5fdGltZWxpbmUgJiYgdGhpcy5fdW5jYWNoZSghMCksIHRoaXMKICAgICAgICAgICAgfSwgcy5fcmVtb3ZlID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHQudGltZWxpbmUgPT09IHRoaXMgJiYgKGUgfHwgdC5fZW5hYmxlZCghMSwgITApLCB0Ll9wcmV2ID8gdC5fcHJldi5fbmV4dCA9IHQuX25leHQgOiB0aGlzLl9maXJzdCA9PT0gdCAmJiAodGhpcy5fZmlyc3QgPSB0Ll9uZXh0KSwgdC5fbmV4dCA/IHQuX25leHQuX3ByZXYgPSB0Ll9wcmV2IDogdGhpcy5fbGFzdCA9PT0gdCAmJiAodGhpcy5fbGFzdCA9IHQuX3ByZXYpLCB0Ll9uZXh0ID0gdC5fcHJldiA9IHQudGltZWxpbmUgPSBudWxsLCB0ID09PSB0aGlzLl9yZWNlbnQgJiYgKHRoaXMuX3JlY2VudCA9IHRoaXMuX2xhc3QpLCB0aGlzLl90aW1lbGluZSAmJiB0aGlzLl91bmNhY2hlKCEwKSksIHRoaXMKICAgICAgICAgICAgfSwgcy5yZW5kZXIgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbiwgciA9IHRoaXMuX2ZpcnN0OwogICAgICAgICAgICAgICAgZm9yICh0aGlzLl90b3RhbFRpbWUgPSB0aGlzLl90aW1lID0gdGhpcy5fcmF3UHJldlRpbWUgPSB0OyByOykgbiA9IHIuX25leHQsIChyLl9hY3RpdmUgfHwgdCA+PSByLl9zdGFydFRpbWUgJiYgIXIuX3BhdXNlZCkgJiYgKHIuX3JldmVyc2VkID8gci5yZW5kZXIoKHIuX2RpcnR5ID8gci50b3RhbER1cmF0aW9uKCkgOiByLl90b3RhbER1cmF0aW9uKSAtICh0IC0gci5fc3RhcnRUaW1lKSAqIHIuX3RpbWVTY2FsZSwgZSwgaSkgOiByLnJlbmRlcigodCAtIHIuX3N0YXJ0VGltZSkgKiByLl90aW1lU2NhbGUsIGUsIGkpKSwgciA9IG4KICAgICAgICAgICAgfSwgcy5yYXdUaW1lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdiB8fCBtLndha2UoKSwgdGhpcy5fdG90YWxUaW1lCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHZhciBMID0gZigiVHdlZW5MaXRlIiwgZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIGlmICh1LmNhbGwodGhpcywgZSwgaSksIHRoaXMucmVuZGVyID0gTC5wcm90b3R5cGUucmVuZGVyLCBudWxsID09IHQpIHRocm93ICJDYW5ub3QgdHdlZW4gYSBudWxsIHRhcmdldC4iOwogICAgICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0ID0gdCA9ICJzdHJpbmciICE9IHR5cGVvZiB0ID8gdCA6IEwuc2VsZWN0b3IodCkgfHwgdDsKICAgICAgICAgICAgICAgICAgICB2YXIgbiwgciwgcywgYSA9IHQuanF1ZXJ5IHx8IHQubGVuZ3RoICYmIHQgIT09IGMgJiYgdFswXSAmJiAodFswXSA9PT0gYyB8fCB0WzBdLm5vZGVUeXBlICYmIHRbMF0uc3R5bGUgJiYgIXQubm9kZVR5cGUpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gdGhpcy52YXJzLm92ZXJ3cml0ZTsKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fb3ZlcndyaXRlID0gbyA9IG51bGwgPT0gbyA/IHFbTC5kZWZhdWx0T3ZlcndyaXRlXSA6ICJudW1iZXIiID09IHR5cGVvZiBvID8gbyA+PiAwIDogcVtvXSwgKGEgfHwgdCBpbnN0YW5jZW9mIEFycmF5IHx8IHQucHVzaCAmJiBUKHQpKSAmJiAibnVtYmVyIiAhPSB0eXBlb2YgdFswXSkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh0aGlzLl90YXJnZXRzID0gcyA9IGwodCksIHRoaXMuX3Byb3BMb29rdXAgPSBbXSwgdGhpcy5fc2libGluZ3MgPSBbXSwgbiA9IDA7IG4gPCBzLmxlbmd0aDsgbisrKShyID0gc1tuXSkgPyAic3RyaW5nIiAhPSB0eXBlb2YgciA/IHIubGVuZ3RoICYmIHIgIT09IGMgJiYgclswXSAmJiAoclswXSA9PT0gYyB8fCByWzBdLm5vZGVUeXBlICYmIHJbMF0uc3R5bGUgJiYgIXIubm9kZVR5cGUpID8gKHMuc3BsaWNlKG4tLSwgMSksIHRoaXMuX3RhcmdldHMgPSBzID0gcy5jb25jYXQobChyKSkpIDogKHRoaXMuX3NpYmxpbmdzW25dID0gSyhyLCB0aGlzLCAhMSksIDEgPT09IG8gJiYgMSA8IHRoaXMuX3NpYmxpbmdzW25dLmxlbmd0aCAmJiB0dChyLCB0aGlzLCBudWxsLCAxLCB0aGlzLl9zaWJsaW5nc1tuXSkpIDogInN0cmluZyIgPT0gdHlwZW9mKHIgPSBzW24tLV0gPSBMLnNlbGVjdG9yKHIpKSAmJiBzLnNwbGljZShuICsgMSwgMSkgOiBzLnNwbGljZShuLS0sIDEpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgdGhpcy5fcHJvcExvb2t1cCA9IHt9LCB0aGlzLl9zaWJsaW5ncyA9IEsodCwgdGhpcywgITEpLCAxID09PSBvICYmIDEgPCB0aGlzLl9zaWJsaW5ncy5sZW5ndGggJiYgdHQodCwgdGhpcywgbnVsbCwgMSwgdGhpcy5fc2libGluZ3MpOwogICAgICAgICAgICAgICAgICAgICh0aGlzLnZhcnMuaW1tZWRpYXRlUmVuZGVyIHx8IDAgPT09IGUgJiYgMCA9PT0gdGhpcy5fZGVsYXkgJiYgITEgIT09IHRoaXMudmFycy5pbW1lZGlhdGVSZW5kZXIpICYmICh0aGlzLl90aW1lID0gLXgsIHRoaXMucmVuZGVyKE1hdGgubWluKDAsIC10aGlzLl9kZWxheSkpKQogICAgICAgICAgICAgICAgfSwgITApLAogICAgICAgICAgICAgICAgTiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdCAmJiB0Lmxlbmd0aCAmJiB0ICE9PSBjICYmIHRbMF0gJiYgKHRbMF0gPT09IGMgfHwgdFswXS5ub2RlVHlwZSAmJiB0WzBdLnN0eWxlICYmICF0Lm5vZGVUeXBlKQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgKHMgPSBMLnByb3RvdHlwZSA9IG5ldyB1KS5jb25zdHJ1Y3RvciA9IEwsIHMua2lsbCgpLl9nYyA9ICExLCBzLnJhdGlvID0gMCwgcy5fZmlyc3RQVCA9IHMuX3RhcmdldHMgPSBzLl9vdmVyd3JpdHRlblByb3BzID0gcy5fc3RhcnRBdCA9IG51bGwsIHMuX25vdGlmeVBsdWdpbnNPZkVuYWJsZWQgPSBzLl9sYXp5ID0gITEsIEwudmVyc2lvbiA9ICIxLjE5LjEiLCBMLmRlZmF1bHRFYXNlID0gcy5fZWFzZSA9IG5ldyBTKG51bGwsIG51bGwsIDEsIDEpLCBMLmRlZmF1bHRPdmVyd3JpdGUgPSAiYXV0byIsIEwudGlja2VyID0gbSwgTC5hdXRvU2xlZXAgPSAxMjAsIEwubGFnU21vb3RoaW5nID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgbS5sYWdTbW9vdGhpbmcodCwgZSkKICAgICAgICAgICAgfSwgTC5zZWxlY3RvciA9IGMuJCB8fCBjLmpRdWVyeSB8fCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGMuJCB8fCBjLmpRdWVyeTsKICAgICAgICAgICAgICAgIHJldHVybiBlID8gKEwuc2VsZWN0b3IgPSBlKSh0KSA6IHZvaWQgMCA9PT0gbiA/IHQgOiBuLnF1ZXJ5U2VsZWN0b3JBbGwgPyBuLnF1ZXJ5U2VsZWN0b3JBbGwodCkgOiBuLmdldEVsZW1lbnRCeUlkKCIjIiA9PT0gdC5jaGFyQXQoMCkgPyB0LnN1YnN0cigxKSA6IHQpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHZhciBGID0gW10sCiAgICAgICAgICAgICAgICBJID0ge30sCiAgICAgICAgICAgICAgICBYID0gLyg/OigtfC09fFwrPSk/XGQqXC4/XGQqKD86ZVtcLStdP1xkKyk/KVswLTldL2dpLAogICAgICAgICAgICAgICAgeiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBlLCBpID0gdGhpcy5fZmlyc3RQVDsgaTspIGUgPSBpLmJsb2IgPyAxID09PSB0ID8gdGhpcy5lbmQgOiB0ID8gdGhpcy5qb2luKCIiKSA6IHRoaXMuc3RhcnQgOiBpLmMgKiB0ICsgaS5zLCBpLm0gPyBlID0gaS5tKGUsIHRoaXMuX3RhcmdldCB8fCBpLnQpIDogZSA8IDFlLTYgJiYgLTFlLTYgPCBlICYmICFpLmJsb2IgJiYgKGUgPSAwKSwgaS5mID8gaS5mcCA/IGkudFtpLnBdKGkuZnAsIGUpIDogaS50W2kucF0oZSkgOiBpLnRbaS5wXSA9IGUsIGkgPSBpLl9uZXh0CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgQiA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciwgcywgYSwgbywgbCwgaCwgdSwgcCA9IFtdLAogICAgICAgICAgICAgICAgICAgICAgICBmID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9ICIiLAogICAgICAgICAgICAgICAgICAgICAgICBkID0gMDsKICAgICAgICAgICAgICAgICAgICBmb3IgKHAuc3RhcnQgPSB0LCBwLmVuZCA9IGUsIHQgPSBwWzBdID0gdCArICIiLCBlID0gcFsxXSA9IGUgKyAiIiwgaSAmJiAoaShwKSwgdCA9IHBbMF0sIGUgPSBwWzFdKSwgcC5sZW5ndGggPSAwLCByID0gdC5tYXRjaChYKSB8fCBbXSwgcyA9IGUubWF0Y2goWCkgfHwgW10sIG4gJiYgKG4uX25leHQgPSBudWxsLCBuLmJsb2IgPSAxLCBwLl9maXJzdFBUID0gcC5fYXBwbHlQVCA9IG4pLCBsID0gcy5sZW5ndGgsIG8gPSAwOyBvIDwgbDsgbysrKSB1ID0gc1tvXSwgYyArPSAoaCA9IGUuc3Vic3RyKGYsIGUuaW5kZXhPZih1LCBmKSAtIGYpKSB8fCAhbyA/IGggOiAiLCIsIGYgKz0gaC5sZW5ndGgsIGQgPyBkID0gKGQgKyAxKSAlIDUgOiAicmdiYSgiID09PSBoLnN1YnN0cigtNSkgJiYgKGQgPSAxKSwgdSA9PT0gcltvXSB8fCByLmxlbmd0aCA8PSBvID8gYyArPSB1IDogKGMgJiYgKHAucHVzaChjKSwgYyA9ICIiKSwgYSA9IHBhcnNlRmxvYXQocltvXSksIHAucHVzaChhKSwgcC5fZmlyc3RQVCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgX25leHQ6IHAuX2ZpcnN0UFQsCiAgICAgICAgICAgICAgICAgICAgICAgIHQ6IHAsCiAgICAgICAgICAgICAgICAgICAgICAgIHA6IHAubGVuZ3RoIC0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgczogYSwKICAgICAgICAgICAgICAgICAgICAgICAgYzogKCI9IiA9PT0gdS5jaGFyQXQoMSkgPyBwYXJzZUludCh1LmNoYXJBdCgwKSArICIxIiwgMTApICogcGFyc2VGbG9hdCh1LnN1YnN0cigyKSkgOiBwYXJzZUZsb2F0KHUpIC0gYSkgfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgZjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgbTogZCAmJiBkIDwgNCA/IE1hdGgucm91bmQgOiAwCiAgICAgICAgICAgICAgICAgICAgfSksIGYgKz0gdS5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChjICs9IGUuc3Vic3RyKGYpKSAmJiBwLnB1c2goYyksIHAuc2V0UmF0aW8gPSB6LCBwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaiA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMsIGEsIG8sIGwpIHsKICAgICAgICAgICAgICAgICAgICAiZnVuY3Rpb24iID09IHR5cGVvZiBuICYmIChuID0gbihsIHx8IDAsIHQpKTsKICAgICAgICAgICAgICAgICAgICB2YXIgaCA9IHR5cGVvZiB0W2VdLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gImZ1bmN0aW9uIiAhPT0gaCA/ICIiIDogZS5pbmRleE9mKCJzZXQiKSB8fCAiZnVuY3Rpb24iICE9IHR5cGVvZiB0WyJnZXQiICsgZS5zdWJzdHIoMyldID8gZSA6ICJnZXQiICsgZS5zdWJzdHIoMyksCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSAiZ2V0IiAhPT0gaSA/IGkgOiB1ID8gYSA/IHRbdV0oYSkgOiB0W3VdKCkgOiB0W2VdLAogICAgICAgICAgICAgICAgICAgICAgICBmID0gInN0cmluZyIgPT0gdHlwZW9mIG4gJiYgIj0iID09PSBuLmNoYXJBdCgxKSwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQ6IHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwOiBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgczogcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGY6ICJmdW5jdGlvbiIgPT09IGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZzogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG46IHIgfHwgZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG06IHMgPyAiZnVuY3Rpb24iID09IHR5cGVvZiBzID8gcyA6IE1hdGgucm91bmQgOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjOiBmID8gcGFyc2VJbnQobi5jaGFyQXQoMCkgKyAiMSIsIDEwKSAqIHBhcnNlRmxvYXQobi5zdWJzdHIoMikpIDogcGFyc2VGbG9hdChuKSAtIHAgfHwgMAogICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgIHJldHVybiAoIm51bWJlciIgIT0gdHlwZW9mIHAgfHwgIm51bWJlciIgIT0gdHlwZW9mIG4gJiYgIWYpICYmIChhIHx8IGlzTmFOKHApIHx8ICFmICYmIGlzTmFOKG4pIHx8ICJib29sZWFuIiA9PSB0eXBlb2YgcCB8fCAiYm9vbGVhbiIgPT0gdHlwZW9mIG4gPyAoYy5mcCA9IGEsIGMgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHQ6IEIocCwgZiA/IGMucyArIGMuYyA6IG4sIG8gfHwgTC5kZWZhdWx0U3RyaW5nRmlsdGVyLCBjKSwKICAgICAgICAgICAgICAgICAgICAgICAgcDogInNldFJhdGlvIiwKICAgICAgICAgICAgICAgICAgICAgICAgczogMCwKICAgICAgICAgICAgICAgICAgICAgICAgYzogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZjogMiwKICAgICAgICAgICAgICAgICAgICAgICAgcGc6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG46IHIgfHwgZSwKICAgICAgICAgICAgICAgICAgICAgICAgcHI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG06IDAKICAgICAgICAgICAgICAgICAgICB9KSA6IChjLnMgPSBwYXJzZUZsb2F0KHApLCBmIHx8IChjLmMgPSBwYXJzZUZsb2F0KG4pIC0gYy5zIHx8IDApKSksIGMuYyA/ICgoYy5fbmV4dCA9IHRoaXMuX2ZpcnN0UFQpICYmIChjLl9uZXh0Ll9wcmV2ID0gYyksIHRoaXMuX2ZpcnN0UFQgPSBjKSA6IHZvaWQgMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFkgPSBMLl9pbnRlcm5hbHMgPSB7CiAgICAgICAgICAgICAgICAgICAgaXNBcnJheTogVCwKICAgICAgICAgICAgICAgICAgICBpc1NlbGVjdG9yOiBOLAogICAgICAgICAgICAgICAgICAgIGxhenlUd2VlbnM6IEYsCiAgICAgICAgICAgICAgICAgICAgYmxvYkRpZjogQgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFYgPSBMLl9wbHVnaW5zID0ge30sCiAgICAgICAgICAgICAgICBHID0gWS50d2Vlbkxvb2t1cCA9IHt9LAogICAgICAgICAgICAgICAgVyA9IDAsCiAgICAgICAgICAgICAgICBVID0gWS5yZXNlcnZlZFByb3BzID0gewogICAgICAgICAgICAgICAgICAgIGVhc2U6IDEsCiAgICAgICAgICAgICAgICAgICAgZGVsYXk6IDEsCiAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAxLAogICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGU6IDEsCiAgICAgICAgICAgICAgICAgICAgb25Db21wbGV0ZVBhcmFtczogMSwKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlU2NvcGU6IDEsCiAgICAgICAgICAgICAgICAgICAgdXNlRnJhbWVzOiAxLAogICAgICAgICAgICAgICAgICAgIHJ1bkJhY2t3YXJkczogMSwKICAgICAgICAgICAgICAgICAgICBzdGFydEF0OiAxLAogICAgICAgICAgICAgICAgICAgIG9uVXBkYXRlOiAxLAogICAgICAgICAgICAgICAgICAgIG9uVXBkYXRlUGFyYW1zOiAxLAogICAgICAgICAgICAgICAgICAgIG9uVXBkYXRlU2NvcGU6IDEsCiAgICAgICAgICAgICAgICAgICAgb25TdGFydDogMSwKICAgICAgICAgICAgICAgICAgICBvblN0YXJ0UGFyYW1zOiAxLAogICAgICAgICAgICAgICAgICAgIG9uU3RhcnRTY29wZTogMSwKICAgICAgICAgICAgICAgICAgICBvblJldmVyc2VDb21wbGV0ZTogMSwKICAgICAgICAgICAgICAgICAgICBvblJldmVyc2VDb21wbGV0ZVBhcmFtczogMSwKICAgICAgICAgICAgICAgICAgICBvblJldmVyc2VDb21wbGV0ZVNjb3BlOiAxLAogICAgICAgICAgICAgICAgICAgIG9uUmVwZWF0OiAxLAogICAgICAgICAgICAgICAgICAgIG9uUmVwZWF0UGFyYW1zOiAxLAogICAgICAgICAgICAgICAgICAgIG9uUmVwZWF0U2NvcGU6IDEsCiAgICAgICAgICAgICAgICAgICAgZWFzZVBhcmFtczogMSwKICAgICAgICAgICAgICAgICAgICB5b3lvOiAxLAogICAgICAgICAgICAgICAgICAgIGltbWVkaWF0ZVJlbmRlcjogMSwKICAgICAgICAgICAgICAgICAgICByZXBlYXQ6IDEsCiAgICAgICAgICAgICAgICAgICAgcmVwZWF0RGVsYXk6IDEsCiAgICAgICAgICAgICAgICAgICAgZGF0YTogMSwKICAgICAgICAgICAgICAgICAgICBwYXVzZWQ6IDEsCiAgICAgICAgICAgICAgICAgICAgcmV2ZXJzZWQ6IDEsCiAgICAgICAgICAgICAgICAgICAgYXV0b0NTUzogMSwKICAgICAgICAgICAgICAgICAgICBsYXp5OiAxLAogICAgICAgICAgICAgICAgICAgIG9uT3ZlcndyaXRlOiAxLAogICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrU2NvcGU6IDEsCiAgICAgICAgICAgICAgICAgICAgc3RyaW5nRmlsdGVyOiAxLAogICAgICAgICAgICAgICAgICAgIGlkOiAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcSA9IHsKICAgICAgICAgICAgICAgICAgICBub25lOiAwLAogICAgICAgICAgICAgICAgICAgIGFsbDogMSwKICAgICAgICAgICAgICAgICAgICBhdXRvOiAyLAogICAgICAgICAgICAgICAgICAgIGNvbmN1cnJlbnQ6IDMsCiAgICAgICAgICAgICAgICAgICAgYWxsT25TdGFydDogNCwKICAgICAgICAgICAgICAgICAgICBwcmVleGlzdGluZzogNSwKICAgICAgICAgICAgICAgICAgICB0cnVlOiAxLAogICAgICAgICAgICAgICAgICAgIGZhbHNlOiAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgUSA9IHUuX3Jvb3RGcmFtZXNUaW1lbGluZSA9IG5ldyBELAogICAgICAgICAgICAgICAgSCA9IHUuX3Jvb3RUaW1lbGluZSA9IG5ldyBELAogICAgICAgICAgICAgICAgWiA9IDMwLAogICAgICAgICAgICAgICAgJCA9IFkubGF6eVJlbmRlciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0LCBlID0gRi5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgZm9yIChJID0ge307IC0gMSA8IC0tZTspKHQgPSBGW2VdKSAmJiAhMSAhPT0gdC5fbGF6eSAmJiAodC5yZW5kZXIodC5fbGF6eVswXSwgdC5fbGF6eVsxXSwgITApLCB0Ll9sYXp5ID0gITEpOwogICAgICAgICAgICAgICAgICAgIEYubGVuZ3RoID0gMAogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgSC5fc3RhcnRUaW1lID0gbS50aW1lLCBRLl9zdGFydFRpbWUgPSBtLmZyYW1lLCBILl9hY3RpdmUgPSBRLl9hY3RpdmUgPSAhMCwgc2V0VGltZW91dCgkLCAxKSwgdS5fdXBkYXRlUm9vdCA9IEwucmVuZGVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgZSwgaTsKICAgICAgICAgICAgICAgIGlmIChGLmxlbmd0aCAmJiAkKCksIEgucmVuZGVyKChtLnRpbWUgLSBILl9zdGFydFRpbWUpICogSC5fdGltZVNjYWxlLCAhMSwgITEpLCBRLnJlbmRlcigobS5mcmFtZSAtIFEuX3N0YXJ0VGltZSkgKiBRLl90aW1lU2NhbGUsICExLCAhMSksIEYubGVuZ3RoICYmICQoKSwgbS5mcmFtZSA+PSBaKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpIGluIFogPSBtLmZyYW1lICsgKHBhcnNlSW50KEwuYXV0b1NsZWVwLCAxMCkgfHwgMTIwKSwgRykgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHQgPSAoZSA9IEdbaV0udHdlZW5zKS5sZW5ndGg7IC0gMSA8IC0tdDspIGVbdF0uX2djICYmIGUuc3BsaWNlKHQsIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAwID09PSBlLmxlbmd0aCAmJiBkZWxldGUgR1tpXQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBpZiAoKCEoaSA9IEguX2ZpcnN0KSB8fCBpLl9wYXVzZWQpICYmIEwuYXV0b1NsZWVwICYmICFRLl9maXJzdCAmJiAxID09PSBtLl9saXN0ZW5lcnMudGljay5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IGkgJiYgaS5fcGF1c2VkOykgaSA9IGkuX25leHQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGkgfHwgbS5zbGVlcCgpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBtLmFkZEV2ZW50TGlzdGVuZXIoInRpY2siLCB1Ll91cGRhdGVSb290KTsKICAgICAgICAgICAgdmFyIEsgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIHIsIHMgPSB0Ll9nc1R3ZWVuSUQ7CiAgICAgICAgICAgICAgICAgICAgaWYgKEdbcyB8fCAodC5fZ3NUd2VlbklEID0gcyA9ICJ0IiArIFcrKyldIHx8IChHW3NdID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0OiB0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHdlZW5zOiBbXQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgZSAmJiAoKG4gPSBHW3NdLnR3ZWVucylbciA9IG4ubGVuZ3RoXSA9IGUsIGkpKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgLSAxIDwgLS1yOykgbltyXSA9PT0gZSAmJiBuLnNwbGljZShyLCAxKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gR1tzXS50d2VlbnMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBKID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIHZhciByLCBzLCBhID0gdC52YXJzLm9uT3ZlcndyaXRlOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBhICYmIChyID0gYSh0LCBlLCBpLCBuKSksIChhID0gTC5vbk92ZXJ3cml0ZSkgJiYgKHMgPSBhKHQsIGUsIGksIG4pKSwgITEgIT09IHIgJiYgITEgIT09IHMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB0dCA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcywgYSwgbywgbDsKICAgICAgICAgICAgICAgICAgICBpZiAoMSA9PT0gbiB8fCA0IDw9IG4pIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsID0gci5sZW5ndGgsIHMgPSAwOyBzIDwgbDsgcysrKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChvID0gcltzXSkgIT09IGUpIG8uX2djIHx8IG8uX2tpbGwobnVsbCwgdCwgZSkgJiYgKGEgPSAhMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICg1ID09PSBuKSBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgdmFyIGgsIHUgPSBlLl9zdGFydFRpbWUgKyB4LAogICAgICAgICAgICAgICAgICAgICAgICBwID0gW10sCiAgICAgICAgICAgICAgICAgICAgICAgIGYgPSAwLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gMCA9PT0gZS5fZHVyYXRpb247CiAgICAgICAgICAgICAgICAgICAgZm9yIChzID0gci5sZW5ndGg7IC0gMSA8IC0tczspKG8gPSByW3NdKSA9PT0gZSB8fCBvLl9nYyB8fCBvLl9wYXVzZWQgfHwgKG8uX3RpbWVsaW5lICE9PSBlLl90aW1lbGluZSA/IChoID0gaCB8fCBldChlLCAwLCBjKSwgMCA9PT0gZXQobywgaCwgYykgJiYgKHBbZisrXSA9IG8pKSA6IG8uX3N0YXJ0VGltZSA8PSB1ICYmIG8uX3N0YXJ0VGltZSArIG8udG90YWxEdXJhdGlvbigpIC8gby5fdGltZVNjYWxlID4gdSAmJiAoKGMgfHwgIW8uX2luaXR0ZWQpICYmIHUgLSBvLl9zdGFydFRpbWUgPD0gMmUtMTAgfHwgKHBbZisrXSA9IG8pKSk7CiAgICAgICAgICAgICAgICAgICAgZm9yIChzID0gZjsgLSAxIDwgLS1zOykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG8gPSBwW3NdLCAyID09PSBuICYmIG8uX2tpbGwoaSwgdCwgZSkgJiYgKGEgPSAhMCksIDIgIT09IG4gfHwgIW8uX2ZpcnN0UFQgJiYgby5faW5pdHRlZCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDIgIT09IG4gJiYgIUoobywgZSkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgby5fZW5hYmxlZCghMSwgITEpICYmIChhID0gITApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gYQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGV0ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIG4gPSB0Ll90aW1lbGluZSwgciA9IG4uX3RpbWVTY2FsZSwgcyA9IHQuX3N0YXJ0VGltZTsgbi5fdGltZWxpbmU7KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzICs9IG4uX3N0YXJ0VGltZSwgciAqPSBuLl90aW1lU2NhbGUsIG4uX3BhdXNlZCkgcmV0dXJuIC0xMDA7CiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBuLl90aW1lbGluZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSA8IChzIC89IHIpID8gcyAtIGUgOiBpICYmIHMgPT09IGUgfHwgIXQuX2luaXR0ZWQgJiYgcyAtIGUgPCAyICogeCA/IHggOiAocyArPSB0LnRvdGFsRHVyYXRpb24oKSAvIHQuX3RpbWVTY2FsZSAvIHIpID4gZSArIHggPyAwIDogcyAtIGUgLSB4CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBzLl9pbml0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgdCwgZSwgaSwgbiwgciwgcywgYSA9IHRoaXMudmFycywKICAgICAgICAgICAgICAgICAgICBvID0gdGhpcy5fb3ZlcndyaXR0ZW5Qcm9wcywKICAgICAgICAgICAgICAgICAgICBsID0gdGhpcy5fZHVyYXRpb24sCiAgICAgICAgICAgICAgICAgICAgaCA9ICEhYS5pbW1lZGlhdGVSZW5kZXIsCiAgICAgICAgICAgICAgICAgICAgdSA9IGEuZWFzZTsKICAgICAgICAgICAgICAgIGlmIChhLnN0YXJ0QXQpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKG4gaW4gdGhpcy5fc3RhcnRBdCAmJiAodGhpcy5fc3RhcnRBdC5yZW5kZXIoLTEsICEwKSwgdGhpcy5fc3RhcnRBdC5raWxsKCkpLCByID0ge30sIGEuc3RhcnRBdCkgcltuXSA9IGEuc3RhcnRBdFtuXTsKICAgICAgICAgICAgICAgICAgICBpZiAoci5vdmVyd3JpdGUgPSAhMSwgci5pbW1lZGlhdGVSZW5kZXIgPSAhMCwgci5sYXp5ID0gaCAmJiAhMSAhPT0gYS5sYXp5LCByLnN0YXJ0QXQgPSByLmRlbGF5ID0gbnVsbCwgdGhpcy5fc3RhcnRBdCA9IEwudG8odGhpcy50YXJnZXQsIDAsIHIpLCBoKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA8IHRoaXMuX3RpbWUpIHRoaXMuX3N0YXJ0QXQgPSBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgwICE9PSBsKSByZXR1cm4KICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYS5ydW5CYWNrd2FyZHMgJiYgMCAhPT0gbCkKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fc3RhcnRBdCkgdGhpcy5fc3RhcnRBdC5yZW5kZXIoLTEsICEwKSwgdGhpcy5fc3RhcnRBdC5raWxsKCksIHRoaXMuX3N0YXJ0QXQgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKG4gaW4gMCAhPT0gdGhpcy5fdGltZSAmJiAoaCA9ICExKSwgaSA9IHt9LCBhKSBVW25dICYmICJhdXRvQ1NTIiAhPT0gbiB8fCAoaVtuXSA9IGFbbl0pOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoaS5vdmVyd3JpdGUgPSAwLCBpLmRhdGEgPSAiaXNGcm9tU3RhcnQiLCBpLmxhenkgPSBoICYmICExICE9PSBhLmxhenksIGkuaW1tZWRpYXRlUmVuZGVyID0gaCwgdGhpcy5fc3RhcnRBdCA9IEwudG8odGhpcy50YXJnZXQsIDAsIGkpLCBoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA9PT0gdGhpcy5fdGltZSkgcmV0dXJuCiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLl9zdGFydEF0Ll9pbml0KCksIHRoaXMuX3N0YXJ0QXQuX2VuYWJsZWQoITEpLCB0aGlzLnZhcnMuaW1tZWRpYXRlUmVuZGVyICYmICh0aGlzLl9zdGFydEF0ID0gbnVsbCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWFzZSA9IHUgPSB1ID8gdSBpbnN0YW5jZW9mIFMgPyB1IDogImZ1bmN0aW9uIiA9PSB0eXBlb2YgdSA/IG5ldyBTKHUsIGEuZWFzZVBhcmFtcykgOiBPW3VdIHx8IEwuZGVmYXVsdEVhc2UgOiBMLmRlZmF1bHRFYXNlLCBhLmVhc2VQYXJhbXMgaW5zdGFuY2VvZiBBcnJheSAmJiB1LmNvbmZpZyAmJiAodGhpcy5fZWFzZSA9IHUuY29uZmlnLmFwcGx5KHUsIGEuZWFzZVBhcmFtcykpLCB0aGlzLl9lYXNlVHlwZSA9IHRoaXMuX2Vhc2UuX3R5cGUsIHRoaXMuX2Vhc2VQb3dlciA9IHRoaXMuX2Vhc2UuX3Bvd2VyLCB0aGlzLl9maXJzdFBUID0gbnVsbCwgdGhpcy5fdGFyZ2V0cykKICAgICAgICAgICAgICAgICAgICBmb3IgKHMgPSB0aGlzLl90YXJnZXRzLmxlbmd0aCwgdCA9IDA7IHQgPCBzOyB0KyspIHRoaXMuX2luaXRQcm9wcyh0aGlzLl90YXJnZXRzW3RdLCB0aGlzLl9wcm9wTG9va3VwW3RdID0ge30sIHRoaXMuX3NpYmxpbmdzW3RdLCBvID8gb1t0XSA6IG51bGwsIHQpICYmIChlID0gITApOwogICAgICAgICAgICAgICAgZWxzZSBlID0gdGhpcy5faW5pdFByb3BzKHRoaXMudGFyZ2V0LCB0aGlzLl9wcm9wTG9va3VwLCB0aGlzLl9zaWJsaW5ncywgbywgMCk7CiAgICAgICAgICAgICAgICBpZiAoZSAmJiBMLl9vblBsdWdpbkV2ZW50KCJfb25Jbml0QWxsUHJvcHMiLCB0aGlzKSwgbyAmJiAodGhpcy5fZmlyc3RQVCB8fCAiZnVuY3Rpb24iICE9IHR5cGVvZiB0aGlzLnRhcmdldCAmJiB0aGlzLl9lbmFibGVkKCExLCAhMSkpLCBhLnJ1bkJhY2t3YXJkcykKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSB0aGlzLl9maXJzdFBUOyBpOykgaS5zICs9IGkuYywgaS5jID0gLWkuYywgaSA9IGkuX25leHQ7CiAgICAgICAgICAgICAgICB0aGlzLl9vblVwZGF0ZSA9IGEub25VcGRhdGUsIHRoaXMuX2luaXR0ZWQgPSAhMAogICAgICAgICAgICB9LCBzLl9pbml0UHJvcHMgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICB2YXIgcywgYSwgbywgbCwgaCwgdTsKICAgICAgICAgICAgICAgIGlmIChudWxsID09IHQpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgIGZvciAocyBpbiBJW3QuX2dzVHdlZW5JRF0gJiYgJCgpLCB0aGlzLnZhcnMuY3NzIHx8IHQuc3R5bGUgJiYgdCAhPT0gYyAmJiB0Lm5vZGVUeXBlICYmIFYuY3NzICYmICExICE9PSB0aGlzLnZhcnMuYXV0b0NTUyAmJiBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpLCBuID0ge307CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoaSBpbiB0KSBVW2ldIHx8IGkgaW4gZSAmJiAidHJhbnNmb3JtIiAhPT0gaSAmJiAieCIgIT09IGkgJiYgInkiICE9PSBpICYmICJ3aWR0aCIgIT09IGkgJiYgImhlaWdodCIgIT09IGkgJiYgImNsYXNzTmFtZSIgIT09IGkgJiYgImJvcmRlciIgIT09IGkgfHwgISghVltpXSB8fCBWW2ldICYmIFZbaV0uX2F1dG9DU1MpIHx8IChuW2ldID0gdFtpXSwgZGVsZXRlIHRbaV0pOwogICAgICAgICAgICAgICAgICAgICAgICB0LmNzcyA9IG4KICAgICAgICAgICAgICAgICAgICB9KHRoaXMudmFycywgdCksIHRoaXMudmFycykKICAgICAgICAgICAgICAgICAgICBpZiAodSA9IHRoaXMudmFyc1tzXSwgVVtzXSkgdSAmJiAodSBpbnN0YW5jZW9mIEFycmF5IHx8IHUucHVzaCAmJiBUKHUpKSAmJiAtMSAhPT0gdS5qb2luKCIiKS5pbmRleE9mKCJ7c2VsZn0iKSAmJiAodGhpcy52YXJzW3NdID0gdSA9IHRoaXMuX3N3YXBTZWxmSW5QYXJhbXModSwgdGhpcykpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKFZbc10gJiYgKGwgPSBuZXcgVltzXSkuX29uSW5pdFR3ZWVuKHQsIHRoaXMudmFyc1tzXSwgdGhpcywgcikpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHRoaXMuX2ZpcnN0UFQgPSBoID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgX25leHQ6IHRoaXMuX2ZpcnN0UFQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0OiBsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcDogInNldFJhdGlvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHM6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG46IHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZzogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByOiBsLl9wcmlvcml0eSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG06IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwgYSA9IGwuX292ZXJ3cml0ZVByb3BzLmxlbmd0aDsgLSAxIDwgLS1hOykgZVtsLl9vdmVyd3JpdGVQcm9wc1thXV0gPSB0aGlzLl9maXJzdFBUOwogICAgICAgICAgICAgICAgICAgIChsLl9wcmlvcml0eSB8fCBsLl9vbkluaXRBbGxQcm9wcykgJiYgKG8gPSAhMCksIChsLl9vbkRpc2FibGUgfHwgbC5fb25FbmFibGUpICYmICh0aGlzLl9ub3RpZnlQbHVnaW5zT2ZFbmFibGVkID0gITApLCBoLl9uZXh0ICYmIChoLl9uZXh0Ll9wcmV2ID0gaCkKICAgICAgICAgICAgICAgIH0gZWxzZSBlW3NdID0gai5jYWxsKHRoaXMsIHQsIHMsICJnZXQiLCB1LCBzLCAwLCBudWxsLCB0aGlzLnZhcnMuc3RyaW5nRmlsdGVyLCByKTsKICAgICAgICAgICAgICAgIHJldHVybiBuICYmIHRoaXMuX2tpbGwobiwgdCkgPyB0aGlzLl9pbml0UHJvcHModCwgZSwgaSwgbiwgcikgOiAxIDwgdGhpcy5fb3ZlcndyaXRlICYmIHRoaXMuX2ZpcnN0UFQgJiYgMSA8IGkubGVuZ3RoICYmIHR0KHQsIHRoaXMsIGUsIHRoaXMuX292ZXJ3cml0ZSwgaSkgPyAodGhpcy5fa2lsbChlLCB0KSwgdGhpcy5faW5pdFByb3BzKHQsIGUsIGksIG4sIHIpKSA6ICh0aGlzLl9maXJzdFBUICYmICghMSAhPT0gdGhpcy52YXJzLmxhenkgJiYgdGhpcy5fZHVyYXRpb24gfHwgdGhpcy52YXJzLmxhenkgJiYgIXRoaXMuX2R1cmF0aW9uKSAmJiAoSVt0Ll9nc1R3ZWVuSURdID0gITApLCBvKQogICAgICAgICAgICB9LCBzLnJlbmRlciA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgIHZhciBuLCByLCBzLCBhLCBvID0gdGhpcy5fdGltZSwKICAgICAgICAgICAgICAgICAgICBsID0gdGhpcy5fZHVyYXRpb24sCiAgICAgICAgICAgICAgICAgICAgaCA9IHRoaXMuX3Jhd1ByZXZUaW1lOwogICAgICAgICAgICAgICAgaWYgKGwgLSAxZS03IDw9IHQgJiYgMCA8PSB0KSB0aGlzLl90b3RhbFRpbWUgPSB0aGlzLl90aW1lID0gbCwgdGhpcy5yYXRpbyA9IHRoaXMuX2Vhc2UuX2NhbGNFbmQgPyB0aGlzLl9lYXNlLmdldFJhdGlvKDEpIDogMSwgdGhpcy5fcmV2ZXJzZWQgfHwgKG4gPSAhMCwgciA9ICJvbkNvbXBsZXRlIiwgaSA9IGkgfHwgdGhpcy5fdGltZWxpbmUuYXV0b1JlbW92ZUNoaWxkcmVuKSwgMCA9PT0gbCAmJiAodGhpcy5faW5pdHRlZCB8fCAhdGhpcy52YXJzLmxhenkgfHwgaSkgJiYgKHRoaXMuX3N0YXJ0VGltZSA9PT0gdGhpcy5fdGltZWxpbmUuX2R1cmF0aW9uICYmICh0ID0gMCksIChoIDwgMCB8fCB0IDw9IDAgJiYgLTFlLTcgPD0gdCB8fCBoID09PSB4ICYmICJpc1BhdXNlIiAhPT0gdGhpcy5kYXRhKSAmJiBoICE9PSB0ICYmIChpID0gITAsIHggPCBoICYmIChyID0gIm9uUmV2ZXJzZUNvbXBsZXRlIikpLCB0aGlzLl9yYXdQcmV2VGltZSA9IGEgPSAhZSB8fCB0IHx8IGggPT09IHQgPyB0IDogeCk7CiAgICAgICAgICAgICAgICBlbHNlIGlmICh0IDwgMWUtNykgdGhpcy5fdG90YWxUaW1lID0gdGhpcy5fdGltZSA9IDAsIHRoaXMucmF0aW8gPSB0aGlzLl9lYXNlLl9jYWxjRW5kID8gdGhpcy5fZWFzZS5nZXRSYXRpbygwKSA6IDAsICgwICE9PSBvIHx8IDAgPT09IGwgJiYgMCA8IGgpICYmIChyID0gIm9uUmV2ZXJzZUNvbXBsZXRlIiwgbiA9IHRoaXMuX3JldmVyc2VkKSwgdCA8IDAgJiYgKHRoaXMuX2FjdGl2ZSA9ICExLCAwID09PSBsICYmICh0aGlzLl9pbml0dGVkIHx8ICF0aGlzLnZhcnMubGF6eSB8fCBpKSAmJiAoMCA8PSBoICYmIChoICE9PSB4IHx8ICJpc1BhdXNlIiAhPT0gdGhpcy5kYXRhKSAmJiAoaSA9ICEwKSwgdGhpcy5fcmF3UHJldlRpbWUgPSBhID0gIWUgfHwgdCB8fCBoID09PSB0ID8gdCA6IHgpKSwgdGhpcy5faW5pdHRlZCB8fCAoaSA9ICEwKTsKICAgICAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuX3RvdGFsVGltZSA9IHRoaXMuX3RpbWUgPSB0LCB0aGlzLl9lYXNlVHlwZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB1ID0gdCAvIGwsCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSB0aGlzLl9lYXNlVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgZiA9IHRoaXMuX2Vhc2VQb3dlcjsKICAgICAgICAgICAgICAgICAgICAoMSA9PT0gcCB8fCAzID09PSBwICYmIC41IDw9IHUpICYmICh1ID0gMSAtIHUpLCAzID09PSBwICYmICh1ICo9IDIpLCAxID09PSBmID8gdSAqPSB1IDogMiA9PT0gZiA/IHUgKj0gdSAqIHUgOiAzID09PSBmID8gdSAqPSB1ICogdSAqIHUgOiA0ID09PSBmICYmICh1ICo9IHUgKiB1ICogdSAqIHUpLCB0aGlzLnJhdGlvID0gMSA9PT0gcCA/IDEgLSB1IDogMiA9PT0gcCA/IHUgOiB0IC8gbCA8IC41ID8gdSAvIDIgOiAxIC0gdSAvIDIKICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLnJhdGlvID0gdGhpcy5fZWFzZS5nZXRSYXRpbyh0IC8gbCk7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGltZSAhPT0gbyB8fCBpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9pbml0dGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pbml0KCksICF0aGlzLl9pbml0dGVkIHx8IHRoaXMuX2djKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaSAmJiB0aGlzLl9maXJzdFBUICYmICghMSAhPT0gdGhpcy52YXJzLmxhenkgJiYgdGhpcy5fZHVyYXRpb24gfHwgdGhpcy52YXJzLmxhenkgJiYgIXRoaXMuX2R1cmF0aW9uKSkgcmV0dXJuIHRoaXMuX3RpbWUgPSB0aGlzLl90b3RhbFRpbWUgPSBvLCB0aGlzLl9yYXdQcmV2VGltZSA9IGgsIEYucHVzaCh0aGlzKSwgdm9pZCh0aGlzLl9sYXp5ID0gW3QsIGVdKTsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGltZSAmJiAhbiA/IHRoaXMucmF0aW8gPSB0aGlzLl9lYXNlLmdldFJhdGlvKHRoaXMuX3RpbWUgLyBsKSA6IG4gJiYgdGhpcy5fZWFzZS5fY2FsY0VuZCAmJiAodGhpcy5yYXRpbyA9IHRoaXMuX2Vhc2UuZ2V0UmF0aW8oMCA9PT0gdGhpcy5fdGltZSA/IDAgOiAxKSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZm9yICghMSAhPT0gdGhpcy5fbGF6eSAmJiAodGhpcy5fbGF6eSA9ICExKSwgdGhpcy5fYWN0aXZlIHx8ICF0aGlzLl9wYXVzZWQgJiYgdGhpcy5fdGltZSAhPT0gbyAmJiAwIDw9IHQgJiYgKHRoaXMuX2FjdGl2ZSA9ICEwKSwgMCA9PT0gbyAmJiAodGhpcy5fc3RhcnRBdCAmJiAoMCA8PSB0ID8gdGhpcy5fc3RhcnRBdC5yZW5kZXIodCwgZSwgaSkgOiByIHx8IChyID0gIl9kdW1teUdTIikpLCB0aGlzLnZhcnMub25TdGFydCAmJiAoMCAhPT0gdGhpcy5fdGltZSB8fCAwID09PSBsKSAmJiAoZSB8fCB0aGlzLl9jYWxsYmFjaygib25TdGFydCIpKSksIHMgPSB0aGlzLl9maXJzdFBUOyBzOykgcy5mID8gcy50W3MucF0ocy5jICogdGhpcy5yYXRpbyArIHMucykgOiBzLnRbcy5wXSA9IHMuYyAqIHRoaXMucmF0aW8gKyBzLnMsIHMgPSBzLl9uZXh0OwogICAgICAgICAgICAgICAgICAgIHRoaXMuX29uVXBkYXRlICYmICh0IDwgMCAmJiB0aGlzLl9zdGFydEF0ICYmIC0xZS00ICE9PSB0ICYmIHRoaXMuX3N0YXJ0QXQucmVuZGVyKHQsIGUsIGkpLCBlIHx8ICh0aGlzLl90aW1lICE9PSBvIHx8IG4gfHwgaSkgJiYgdGhpcy5fY2FsbGJhY2soIm9uVXBkYXRlIikpLCByICYmICghdGhpcy5fZ2MgfHwgaSkgJiYgKHQgPCAwICYmIHRoaXMuX3N0YXJ0QXQgJiYgIXRoaXMuX29uVXBkYXRlICYmIC0xZS00ICE9PSB0ICYmIHRoaXMuX3N0YXJ0QXQucmVuZGVyKHQsIGUsIGkpLCBuICYmICh0aGlzLl90aW1lbGluZS5hdXRvUmVtb3ZlQ2hpbGRyZW4gJiYgdGhpcy5fZW5hYmxlZCghMSwgITEpLCB0aGlzLl9hY3RpdmUgPSAhMSksICFlICYmIHRoaXMudmFyc1tyXSAmJiB0aGlzLl9jYWxsYmFjayhyKSwgMCA9PT0gbCAmJiB0aGlzLl9yYXdQcmV2VGltZSA9PT0geCAmJiBhICE9PSB4ICYmICh0aGlzLl9yYXdQcmV2VGltZSA9IDApKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBzLl9raWxsID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgaWYgKCJhbGwiID09PSB0ICYmICh0ID0gbnVsbCksIG51bGwgPT0gdCAmJiAobnVsbCA9PSBlIHx8IGUgPT09IHRoaXMudGFyZ2V0KSkgcmV0dXJuIHRoaXMuX2xhenkgPSAhMSwgdGhpcy5fZW5hYmxlZCghMSwgITEpOwogICAgICAgICAgICAgICAgZSA9ICJzdHJpbmciICE9IHR5cGVvZiBlID8gZSB8fCB0aGlzLl90YXJnZXRzIHx8IHRoaXMudGFyZ2V0IDogTC5zZWxlY3RvcihlKSB8fCBlOwogICAgICAgICAgICAgICAgdmFyIG4sIHIsIHMsIGEsIG8sIGwsIGgsIHUsIHAsIGYgPSBpICYmIHRoaXMuX3RpbWUgJiYgaS5fc3RhcnRUaW1lID09PSB0aGlzLl9zdGFydFRpbWUgJiYgdGhpcy5fdGltZWxpbmUgPT09IGkuX3RpbWVsaW5lOwogICAgICAgICAgICAgICAgaWYgKChUKGUpIHx8IE4oZSkpICYmICJudW1iZXIiICE9IHR5cGVvZiBlWzBdKQogICAgICAgICAgICAgICAgICAgIGZvciAobiA9IGUubGVuZ3RoOyAtIDEgPCAtLW47KSB0aGlzLl9raWxsKHQsIGVbbl0sIGkpICYmIChsID0gITApOwogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX3RhcmdldHMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChuID0gdGhpcy5fdGFyZ2V0cy5sZW5ndGg7IC0gMSA8IC0tbjspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZSA9PT0gdGhpcy5fdGFyZ2V0c1tuXSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPSB0aGlzLl9wcm9wTG9va3VwW25dIHx8IHt9LCB0aGlzLl9vdmVyd3JpdHRlblByb3BzID0gdGhpcy5fb3ZlcndyaXR0ZW5Qcm9wcyB8fCBbXSwgciA9IHRoaXMuX292ZXJ3cml0dGVuUHJvcHNbbl0gPSB0ID8gdGhpcy5fb3ZlcndyaXR0ZW5Qcm9wc1tuXSB8fCB7fSA6ICJhbGwiOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUgIT09IHRoaXMudGFyZ2V0KSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSB0aGlzLl9wcm9wTG9va3VwLCByID0gdGhpcy5fb3ZlcndyaXR0ZW5Qcm9wcyA9IHQgPyB0aGlzLl9vdmVyd3JpdHRlblByb3BzIHx8IHt9IDogImFsbCIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKG8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGggPSB0IHx8IG8sIHUgPSB0ICE9PSByICYmICJhbGwiICE9PSByICYmIHQgIT09IG8gJiYgKCJvYmplY3QiICE9IHR5cGVvZiB0IHx8ICF0Ll90ZW1wS2lsbCksIGkgJiYgKEwub25PdmVyd3JpdGUgfHwgdGhpcy52YXJzLm9uT3ZlcndyaXRlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChzIGluIGgpIG9bc10gJiYgKHAgfHwgKHAgPSBbXSksIHAucHVzaChzKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoKHAgfHwgIXQpICYmICFKKHRoaXMsIGksIGUsIHApKSByZXR1cm4gITEKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHMgaW4gaCkoYSA9IG9bc10pICYmIChmICYmIChhLmYgPyBhLnRbYS5wXShhLnMpIDogYS50W2EucF0gPSBhLnMsIGwgPSAhMCksIGEucGcgJiYgYS50Ll9raWxsKGgpICYmIChsID0gITApLCBhLnBnICYmIDAgIT09IGEudC5fb3ZlcndyaXRlUHJvcHMubGVuZ3RoIHx8IChhLl9wcmV2ID8gYS5fcHJldi5fbmV4dCA9IGEuX25leHQgOiBhID09PSB0aGlzLl9maXJzdFBUICYmICh0aGlzLl9maXJzdFBUID0gYS5fbmV4dCksIGEuX25leHQgJiYgKGEuX25leHQuX3ByZXYgPSBhLl9wcmV2KSwgYS5fbmV4dCA9IGEuX3ByZXYgPSBudWxsKSwgZGVsZXRlIG9bc10pLCB1ICYmIChyW3NdID0gMSk7CiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzLl9maXJzdFBUICYmIHRoaXMuX2luaXR0ZWQgJiYgdGhpcy5fZW5hYmxlZCghMSwgITEpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGwKICAgICAgICAgICAgfSwgcy5pbnZhbGlkYXRlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fbm90aWZ5UGx1Z2luc09mRW5hYmxlZCAmJiBMLl9vblBsdWdpbkV2ZW50KCJfb25EaXNhYmxlIiwgdGhpcyksIHRoaXMuX2ZpcnN0UFQgPSB0aGlzLl9vdmVyd3JpdHRlblByb3BzID0gdGhpcy5fc3RhcnRBdCA9IHRoaXMuX29uVXBkYXRlID0gbnVsbCwgdGhpcy5fbm90aWZ5UGx1Z2luc09mRW5hYmxlZCA9IHRoaXMuX2FjdGl2ZSA9IHRoaXMuX2xhenkgPSAhMSwgdGhpcy5fcHJvcExvb2t1cCA9IHRoaXMuX3RhcmdldHMgPyB7fSA6IFtdLCB1LnByb3RvdHlwZS5pbnZhbGlkYXRlLmNhbGwodGhpcyksIHRoaXMudmFycy5pbW1lZGlhdGVSZW5kZXIgJiYgKHRoaXMuX3RpbWUgPSAteCwgdGhpcy5yZW5kZXIoTWF0aC5taW4oMCwgLXRoaXMuX2RlbGF5KSkpLCB0aGlzCiAgICAgICAgICAgIH0sIHMuX2VuYWJsZWQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBpZiAodiB8fCBtLndha2UoKSwgdCAmJiB0aGlzLl9nYykgewogICAgICAgICAgICAgICAgICAgIHZhciBpLCBuID0gdGhpcy5fdGFyZ2V0czsKICAgICAgICAgICAgICAgICAgICBpZiAobikKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gbi5sZW5ndGg7IC0gMSA8IC0taTspIHRoaXMuX3NpYmxpbmdzW2ldID0gSyhuW2ldLCB0aGlzLCAhMCk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSB0aGlzLl9zaWJsaW5ncyA9IEsodGhpcy50YXJnZXQsIHRoaXMsICEwKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHUucHJvdG90eXBlLl9lbmFibGVkLmNhbGwodGhpcywgdCwgZSksICEoIXRoaXMuX25vdGlmeVBsdWdpbnNPZkVuYWJsZWQgfHwgIXRoaXMuX2ZpcnN0UFQpICYmIEwuX29uUGx1Z2luRXZlbnQodCA/ICJfb25FbmFibGUiIDogIl9vbkRpc2FibGUiLCB0aGlzKQogICAgICAgICAgICB9LCBMLnRvID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMKHQsIGUsIGkpCiAgICAgICAgICAgIH0sIEwuZnJvbSA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgIHJldHVybiBpLnJ1bkJhY2t3YXJkcyA9ICEwLCBpLmltbWVkaWF0ZVJlbmRlciA9IDAgIT0gaS5pbW1lZGlhdGVSZW5kZXIsIG5ldyBMKHQsIGUsIGkpCiAgICAgICAgICAgIH0sIEwuZnJvbVRvID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgcmV0dXJuIG4uc3RhcnRBdCA9IGksIG4uaW1tZWRpYXRlUmVuZGVyID0gMCAhPSBuLmltbWVkaWF0ZVJlbmRlciAmJiAwICE9IGkuaW1tZWRpYXRlUmVuZGVyLCBuZXcgTCh0LCBlLCBuKQogICAgICAgICAgICB9LCBMLmRlbGF5ZWRDYWxsID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgcikgewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMKGUsIDAsIHsKICAgICAgICAgICAgICAgICAgICBkZWxheTogdCwKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBlLAogICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGVQYXJhbXM6IGksCiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tTY29wZTogbiwKICAgICAgICAgICAgICAgICAgICBvblJldmVyc2VDb21wbGV0ZTogZSwKICAgICAgICAgICAgICAgICAgICBvblJldmVyc2VDb21wbGV0ZVBhcmFtczogaSwKICAgICAgICAgICAgICAgICAgICBpbW1lZGlhdGVSZW5kZXI6ICExLAogICAgICAgICAgICAgICAgICAgIGxhenk6ICExLAogICAgICAgICAgICAgICAgICAgIHVzZUZyYW1lczogciwKICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6IDAKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIEwuc2V0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMKHQsIDAsIGUpCiAgICAgICAgICAgIH0sIEwuZ2V0VHdlZW5zT2YgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBpZiAobnVsbCA9PSB0KSByZXR1cm4gW107CiAgICAgICAgICAgICAgICB2YXIgaSwgbiwgciwgczsKICAgICAgICAgICAgICAgIGlmICh0ID0gInN0cmluZyIgIT0gdHlwZW9mIHQgPyB0IDogTC5zZWxlY3Rvcih0KSB8fCB0LCAoVCh0KSB8fCBOKHQpKSAmJiAibnVtYmVyIiAhPSB0eXBlb2YgdFswXSkgewogICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IHQubGVuZ3RoLCBuID0gW107IC0gMSA8IC0taTspIG4gPSBuLmNvbmNhdChMLmdldFR3ZWVuc09mKHRbaV0sIGUpKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSBuLmxlbmd0aDsgLSAxIDwgLS1pOykKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChzID0gbltpXSwgciA9IGk7IC0gMSA8IC0tcjspIHMgPT09IG5bcl0gJiYgbi5zcGxpY2UoaSwgMSkKICAgICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IChuID0gSyh0KS5jb25jYXQoKSkubGVuZ3RoOyAtIDEgPCAtLWk7KShuW2ldLl9nYyB8fCBlICYmICFuW2ldLmlzQWN0aXZlKCkpICYmIG4uc3BsaWNlKGksIDEpOwogICAgICAgICAgICAgICAgcmV0dXJuIG4KICAgICAgICAgICAgfSwgTC5raWxsVHdlZW5zT2YgPSBMLmtpbGxEZWxheWVkQ2FsbHNUbyA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICJvYmplY3QiID09IHR5cGVvZiBlICYmIChpID0gZSwgZSA9ICExKTsKICAgICAgICAgICAgICAgIGZvciAodmFyIG4gPSBMLmdldFR3ZWVuc09mKHQsIGUpLCByID0gbi5sZW5ndGg7IC0gMSA8IC0tcjspIG5bcl0uX2tpbGwoaSwgdCkKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdmFyIGl0ID0gZigicGx1Z2lucy5Ud2VlblBsdWdpbiIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHRoaXMuX292ZXJ3cml0ZVByb3BzID0gKHQgfHwgIiIpLnNwbGl0KCIsIiksIHRoaXMuX3Byb3BOYW1lID0gdGhpcy5fb3ZlcndyaXRlUHJvcHNbMF0sIHRoaXMuX3ByaW9yaXR5ID0gZSB8fCAwLCB0aGlzLl9zdXBlciA9IGl0LnByb3RvdHlwZQogICAgICAgICAgICB9LCAhMCk7CiAgICAgICAgICAgIGlmIChzID0gaXQucHJvdG90eXBlLCBpdC52ZXJzaW9uID0gIjEuMTkuMCIsIGl0LkFQSSA9IDIsIHMuX2ZpcnN0UFQgPSBudWxsLCBzLl9hZGRUd2VlbiA9IGosIHMuc2V0UmF0aW8gPSB6LCBzLl9raWxsID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpID0gdGhpcy5fb3ZlcndyaXRlUHJvcHMsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSB0aGlzLl9maXJzdFBUOwogICAgICAgICAgICAgICAgICAgIGlmIChudWxsICE9IHRbdGhpcy5fcHJvcE5hbWVdKSB0aGlzLl9vdmVyd3JpdGVQcm9wcyA9IFtdOwogICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChlID0gaS5sZW5ndGg7IC0gMSA8IC0tZTspIG51bGwgIT0gdFtpW2VdXSAmJiBpLnNwbGljZShlLCAxKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKDsgbjspIG51bGwgIT0gdFtuLm5dICYmIChuLl9uZXh0ICYmIChuLl9uZXh0Ll9wcmV2ID0gbi5fcHJldiksIG4uX3ByZXYgPyAobi5fcHJldi5fbmV4dCA9IG4uX25leHQsIG4uX3ByZXYgPSBudWxsKSA6IHRoaXMuX2ZpcnN0UFQgPT09IG4gJiYgKHRoaXMuX2ZpcnN0UFQgPSBuLl9uZXh0KSksIG4gPSBuLl9uZXh0OwogICAgICAgICAgICAgICAgICAgIHJldHVybiAhMQogICAgICAgICAgICAgICAgfSwgcy5fbW9kID0gcy5fcm91bmRQcm9wcyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBlLCBpID0gdGhpcy5fZmlyc3RQVDsgaTspKGUgPSB0W3RoaXMuX3Byb3BOYW1lXSB8fCBudWxsICE9IGkubiAmJiB0W2kubi5zcGxpdCh0aGlzLl9wcm9wTmFtZSArICJfIikuam9pbigiIildKSAmJiAiZnVuY3Rpb24iID09IHR5cGVvZiBlICYmICgyID09PSBpLmYgPyBpLnQuX2FwcGx5UFQubSA9IGUgOiBpLm0gPSBlKSwgaSA9IGkuX25leHQKICAgICAgICAgICAgICAgIH0sIEwuX29uUGx1Z2luRXZlbnQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4sIHIsIHMsIGEsIG8gPSBlLl9maXJzdFBUOwogICAgICAgICAgICAgICAgICAgIGlmICgiX29uSW5pdEFsbFByb3BzIiA9PT0gdCkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgbzspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IG8uX25leHQsIG4gPSByOyBuICYmIG4ucHIgPiBvLnByOykgbiA9IG4uX25leHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoby5fcHJldiA9IG4gPyBuLl9wcmV2IDogcykgPyBvLl9wcmV2Ll9uZXh0ID0gbzogciA9IG8sIChvLl9uZXh0ID0gbikgPyBuLl9wcmV2ID0gbyA6IHMgPSBvLCBvID0gYQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBlLl9maXJzdFBUID0gcgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmb3IgKDsgbzspIG8ucGcgJiYgImZ1bmN0aW9uIiA9PSB0eXBlb2Ygby50W3RdICYmIG8udFt0XSgpICYmIChpID0gITApLCBvID0gby5fbmV4dDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaQogICAgICAgICAgICAgICAgfSwgaXQuYWN0aXZhdGUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSA9IHQubGVuZ3RoOyAtIDEgPCAtLWU7KSB0W2VdLkFQSSA9PT0gaXQuQVBJICYmIChWWyhuZXcgdFtlXSkuX3Byb3BOYW1lXSA9IHRbZV0pOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgICAgICAgICAgfSwgYS5wbHVnaW4gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCAmJiB0LnByb3BOYW1lICYmIHQuaW5pdCAmJiB0LkFQSSkpIHRocm93ICJpbGxlZ2FsIHBsdWdpbiBkZWZpbml0aW9uLiI7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGkgPSB0LnByb3BOYW1lLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gdC5wcmlvcml0eSB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICByID0gdC5vdmVyd3JpdGVQcm9wcywKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXQ6ICJfb25Jbml0VHdlZW4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0OiAic2V0UmF0aW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAga2lsbDogIl9raWxsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kOiAiX21vZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2Q6ICJfbW9kIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRBbGw6ICJfb25Jbml0QWxsUHJvcHMiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBmKCJwbHVnaW5zLiIgKyBpLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgaS5zdWJzdHIoMSkgKyAiUGx1Z2luIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdC5jYWxsKHRoaXMsIGksIG4pLCB0aGlzLl9vdmVyd3JpdGVQcm9wcyA9IHIgfHwgW10KICAgICAgICAgICAgICAgICAgICAgICAgfSwgITAgPT09IHQuZ2xvYmFsKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IGEucHJvdG90eXBlID0gbmV3IGl0KGkpOwogICAgICAgICAgICAgICAgICAgIGZvciAoZSBpbiAoby5jb25zdHJ1Y3RvciA9IGEpLkFQSSA9IHQuQVBJLCBzKSAiZnVuY3Rpb24iID09IHR5cGVvZiB0W2VdICYmIChvW3NbZV1dID0gdFtlXSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEudmVyc2lvbiA9IHQudmVyc2lvbiwgaXQuYWN0aXZhdGUoW2FdKSwgYQogICAgICAgICAgICAgICAgfSwgdCA9IGMuX2dzUXVldWUpIHsKICAgICAgICAgICAgICAgIGZvciAociA9IDA7IHIgPCB0Lmxlbmd0aDsgcisrKSB0W3JdKCk7CiAgICAgICAgICAgICAgICBmb3IgKHMgaW4gYikgYltzXS5mdW5jIHx8IGMuY29uc29sZS5sb2coIkdTQVAgZW5jb3VudGVyZWQgbWlzc2luZyBkZXBlbmRlbmN5OiAiICsgcykKICAgICAgICAgICAgfQogICAgICAgICAgICB2ID0gITEKICAgICAgICB9CiAgICB9KCJ1bmRlZmluZWQiICE9IHR5cGVvZiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMgJiYgInVuZGVmaW5lZCIgIT0gdHlwZW9mIGdsb2JhbCA/IGdsb2JhbCA6IHRoaXMgfHwgd2luZG93LCAiVHdlZW5MaXRlIiksICgoX2dzU2NvcGUgPSAidW5kZWZpbmVkIiAhPSB0eXBlb2YgbW9kdWxlICYmIG1vZHVsZS5leHBvcnRzICYmICJ1bmRlZmluZWQiICE9IHR5cGVvZiBnbG9iYWwgPyBnbG9iYWwgOiB0aGlzIHx8IHdpbmRvdykuX2dzUXVldWUgfHwgKF9nc1Njb3BlLl9nc1F1ZXVlID0gW10pKS5wdXNoKGZ1bmN0aW9uKCkgewogICAgICAgICJ1c2Ugc3RyaWN0IjsKICAgICAgICBfZ3NTY29wZS5fZ3NEZWZpbmUoIlRpbWVsaW5lTGl0ZSIsIFsiY29yZS5BbmltYXRpb24iLCAiY29yZS5TaW1wbGVUaW1lbGluZSIsICJUd2VlbkxpdGUiXSwgZnVuY3Rpb24odSwgcCwgZikgewogICAgICAgICAgICB2YXIgYyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBwLmNhbGwodGhpcywgdCksIHRoaXMuX2xhYmVscyA9IHt9LCB0aGlzLmF1dG9SZW1vdmVDaGlsZHJlbiA9ICEwID09PSB0aGlzLnZhcnMuYXV0b1JlbW92ZUNoaWxkcmVuLCB0aGlzLnNtb290aENoaWxkVGltaW5nID0gITAgPT09IHRoaXMudmFycy5zbW9vdGhDaGlsZFRpbWluZywgdGhpcy5fc29ydENoaWxkcmVuID0gITAsIHRoaXMuX29uVXBkYXRlID0gdGhpcy52YXJzLm9uVXBkYXRlOwogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gdGhpcy52YXJzOwogICAgICAgICAgICAgICAgICAgIGZvciAoaSBpbiBuKSBlID0gbltpXSwgZyhlKSAmJiAtMSAhPT0gZS5qb2luKCIiKS5pbmRleE9mKCJ7c2VsZn0iKSAmJiAobltpXSA9IHRoaXMuX3N3YXBTZWxmSW5QYXJhbXMoZSkpOwogICAgICAgICAgICAgICAgICAgIGcobi50d2VlbnMpICYmIHRoaXMuYWRkKG4udHdlZW5zLCAwLCBuLmFsaWduLCBuLnN0YWdnZXIpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZCA9IDFlLTEwLAogICAgICAgICAgICAgICAgdCA9IGYuX2ludGVybmFscywKICAgICAgICAgICAgICAgIGUgPSBjLl9pbnRlcm5hbHMgPSB7fSwKICAgICAgICAgICAgICAgIF8gPSB0LmlzU2VsZWN0b3IsCiAgICAgICAgICAgICAgICBnID0gdC5pc0FycmF5LAogICAgICAgICAgICAgICAgbSA9IHQubGF6eVR3ZWVucywKICAgICAgICAgICAgICAgIHYgPSB0LmxhenlSZW5kZXIsCiAgICAgICAgICAgICAgICB5ID0gW10sCiAgICAgICAgICAgICAgICBhID0gX2dzU2NvcGUuX2dzRGVmaW5lLmdsb2JhbHMsCiAgICAgICAgICAgICAgICB4ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpID0ge307CiAgICAgICAgICAgICAgICAgICAgZm9yIChlIGluIHQpIGlbZV0gPSB0W2VdOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcyA9IGUucGF1c2VDYWxsYmFjayA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciwgcyA9IHQuX3RpbWVsaW5lLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gcy5fdG90YWxUaW1lLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gdC5fc3RhcnRUaW1lLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gdC5fcmF3UHJldlRpbWUgPCAwIHx8IDAgPT09IHQuX3Jhd1ByZXZUaW1lICYmIHMuX3JldmVyc2VkLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gbCA/IDAgOiBkLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gbCA/IGQgOiAwOwogICAgICAgICAgICAgICAgICAgIGlmIChlIHx8ICF0aGlzLl9mb3JjaW5nUGxheWhlYWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChzLnBhdXNlKG8pLCByID0gdC5fcHJldjsgciAmJiByLl9zdGFydFRpbWUgPT09IG87KSByLl9yYXdQcmV2VGltZSA9IHUsIHIgPSByLl9wcmV2OwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSB0Ll9uZXh0OyByICYmIHIuX3N0YXJ0VGltZSA9PT0gbzspIHIuX3Jhd1ByZXZUaW1lID0gaCwgciA9IHIuX25leHQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGUgJiYgZS5hcHBseShuIHx8IHMudmFycy5jYWxsYmFja1Njb3BlIHx8IHMsIGkgfHwgeSksICh0aGlzLl9mb3JjaW5nUGxheWhlYWQgfHwgIXMuX3BhdXNlZCkgJiYgcy5zZWVrKGEpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGkgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIGZvciAoZSA9IDA7IGUgIT09IG47IGkucHVzaCh0W2UrK10pKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGkgPSBjLnByb3RvdHlwZSA9IG5ldyBwOwogICAgICAgICAgICByZXR1cm4gYy52ZXJzaW9uID0gIjEuMTcuMCIsIGkuY29uc3RydWN0b3IgPSBjLCBpLmtpbGwoKS5fZ2MgPSBpLl9mb3JjaW5nUGxheWhlYWQgPSAhMSwgaS50byA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgIHZhciByID0gaS5yZXBlYXQgJiYgYS5Ud2Vlbk1heCB8fCBmOwogICAgICAgICAgICAgICAgcmV0dXJuIGUgPyB0aGlzLmFkZChuZXcgcih0LCBlLCBpKSwgbikgOiB0aGlzLnNldCh0LCBpLCBuKQogICAgICAgICAgICB9LCBpLmZyb20gPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hZGQoKGkucmVwZWF0ICYmIGEuVHdlZW5NYXggfHwgZikuZnJvbSh0LCBlLCBpKSwgbikKICAgICAgICAgICAgfSwgaS5mcm9tVG8gPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICB2YXIgcyA9IG4ucmVwZWF0ICYmIGEuVHdlZW5NYXggfHwgZjsKICAgICAgICAgICAgICAgIHJldHVybiBlID8gdGhpcy5hZGQocy5mcm9tVG8odCwgZSwgaSwgbiksIHIpIDogdGhpcy5zZXQodCwgbiwgcikKICAgICAgICAgICAgfSwgaS5zdGFnZ2VyVG8gPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhLCBvKSB7CiAgICAgICAgICAgICAgICB2YXIgbCwgaCA9IG5ldyBjKHsKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBzLAogICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGVQYXJhbXM6IGEsCiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tTY29wZTogbywKICAgICAgICAgICAgICAgICAgICBzbW9vdGhDaGlsZFRpbWluZzogdGhpcy5zbW9vdGhDaGlsZFRpbWluZwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBmb3IgKCJzdHJpbmciID09IHR5cGVvZiB0ICYmICh0ID0gZi5zZWxlY3Rvcih0KSB8fCB0KSwgXyh0ID0gdCB8fCBbXSkgJiYgKHQgPSB3KHQpKSwgKG4gPSBuIHx8IDApIDwgMCAmJiAoKHQgPSB3KHQpKS5yZXZlcnNlKCksIG4gKj0gLTEpLCBsID0gMDsgdC5sZW5ndGggPiBsOyBsKyspIGkuc3RhcnRBdCAmJiAoaS5zdGFydEF0ID0geChpLnN0YXJ0QXQpKSwgaC50byh0W2xdLCBlLCB4KGkpLCBsICogbik7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hZGQoaCwgcikKICAgICAgICAgICAgfSwgaS5zdGFnZ2VyRnJvbSA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMsIGEsIG8pIHsKICAgICAgICAgICAgICAgIHJldHVybiBpLmltbWVkaWF0ZVJlbmRlciA9IDAgIT0gaS5pbW1lZGlhdGVSZW5kZXIsIGkucnVuQmFja3dhcmRzID0gITAsIHRoaXMuc3RhZ2dlclRvKHQsIGUsIGksIG4sIHIsIHMsIGEsIG8pCiAgICAgICAgICAgIH0sIGkuc3RhZ2dlckZyb21UbyA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMsIGEsIG8sIGwpIHsKICAgICAgICAgICAgICAgIHJldHVybiBuLnN0YXJ0QXQgPSBpLCBuLmltbWVkaWF0ZVJlbmRlciA9IDAgIT0gbi5pbW1lZGlhdGVSZW5kZXIgJiYgMCAhPSBpLmltbWVkaWF0ZVJlbmRlciwgdGhpcy5zdGFnZ2VyVG8odCwgZSwgbiwgciwgcywgYSwgbywgbCkKICAgICAgICAgICAgfSwgaS5jYWxsID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWRkKGYuZGVsYXllZENhbGwoMCwgdCwgZSwgaSksIG4pCiAgICAgICAgICAgIH0sIGkuc2V0ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGkgPSB0aGlzLl9wYXJzZVRpbWVPckxhYmVsKGksIDAsICEwKSwgbnVsbCA9PSBlLmltbWVkaWF0ZVJlbmRlciAmJiAoZS5pbW1lZGlhdGVSZW5kZXIgPSBpID09PSB0aGlzLl90aW1lICYmICF0aGlzLl9wYXVzZWQpLCB0aGlzLmFkZChuZXcgZih0LCAwLCBlKSwgaSkKICAgICAgICAgICAgfSwgYy5leHBvcnRSb290ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgbnVsbCA9PSAodCA9IHQgfHwge30pLnNtb290aENoaWxkVGltaW5nICYmICh0LnNtb290aENoaWxkVGltaW5nID0gITApOwogICAgICAgICAgICAgICAgdmFyIGksIG4sIHIgPSBuZXcgYyh0KSwKICAgICAgICAgICAgICAgICAgICBzID0gci5fdGltZWxpbmU7CiAgICAgICAgICAgICAgICBmb3IgKG51bGwgPT0gZSAmJiAoZSA9ICEwKSwgcy5fcmVtb3ZlKHIsICEwKSwgci5fc3RhcnRUaW1lID0gMCwgci5fcmF3UHJldlRpbWUgPSByLl90aW1lID0gci5fdG90YWxUaW1lID0gcy5fdGltZSwgaSA9IHMuX2ZpcnN0OyBpOykgbiA9IGkuX25leHQsIGUgJiYgaSBpbnN0YW5jZW9mIGYgJiYgaS50YXJnZXQgPT09IGkudmFycy5vbkNvbXBsZXRlIHx8IHIuYWRkKGksIGkuX3N0YXJ0VGltZSAtIGkuX2RlbGF5KSwgaSA9IG47CiAgICAgICAgICAgICAgICByZXR1cm4gcy5hZGQociwgMCksIHIKICAgICAgICAgICAgfSwgaS5hZGQgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgciwgcywgYSwgbywgbCwgaDsKICAgICAgICAgICAgICAgIGlmICgibnVtYmVyIiAhPSB0eXBlb2YgZSAmJiAoZSA9IHRoaXMuX3BhcnNlVGltZU9yTGFiZWwoZSwgMCwgITAsIHQpKSwgISh0IGluc3RhbmNlb2YgdSkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAodCBpbnN0YW5jZW9mIEFycmF5IHx8IHQgJiYgdC5wdXNoICYmIGcodCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gaSB8fCAibm9ybWFsIiwgbiA9IG4gfHwgMCwgciA9IGUsIHMgPSB0Lmxlbmd0aCwgYSA9IDA7IGEgPCBzOyBhKyspIGcobyA9IHRbYV0pICYmIChvID0gbmV3IGMoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHdlZW5zOiBvCiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSwgdGhpcy5hZGQobywgciksICJzdHJpbmciICE9IHR5cGVvZiBvICYmICJmdW5jdGlvbiIgIT0gdHlwZW9mIG8gJiYgKCJzZXF1ZW5jZSIgPT09IGkgPyByID0gby5fc3RhcnRUaW1lICsgby50b3RhbER1cmF0aW9uKCkgLyBvLl90aW1lU2NhbGUgOiAic3RhcnQiID09PSBpICYmIChvLl9zdGFydFRpbWUgLT0gby5kZWxheSgpKSksIHIgKz0gbjsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3VuY2FjaGUoITApCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgdCkgcmV0dXJuIHRoaXMuYWRkTGFiZWwodCwgZSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJmdW5jdGlvbiIgIT0gdHlwZW9mIHQpIHRocm93ICJDYW5ub3QgYWRkICIgKyB0ICsgIiBpbnRvIHRoZSB0aW1lbGluZTsgaXQgaXMgbm90IGEgdHdlZW4sIHRpbWVsaW5lLCBmdW5jdGlvbiwgb3Igc3RyaW5nLiI7CiAgICAgICAgICAgICAgICAgICAgdCA9IGYuZGVsYXllZENhbGwoMCwgdCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChwLnByb3RvdHlwZS5hZGQuY2FsbCh0aGlzLCB0LCBlKSwgKHRoaXMuX2djIHx8IHRoaXMuX3RpbWUgPT09IHRoaXMuX2R1cmF0aW9uKSAmJiAhdGhpcy5fcGF1c2VkICYmIHRoaXMuX2R1cmF0aW9uIDwgdGhpcy5kdXJhdGlvbigpKQogICAgICAgICAgICAgICAgICAgIGZvciAoaCA9IChsID0gdGhpcykucmF3VGltZSgpID4gdC5fc3RhcnRUaW1lOyBsLl90aW1lbGluZTspIGggJiYgbC5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcgPyBsLnRvdGFsVGltZShsLl90b3RhbFRpbWUsICEwKSA6IGwuX2djICYmIGwuX2VuYWJsZWQoITAsICExKSwgbCA9IGwuX3RpbWVsaW5lOwogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMKICAgICAgICAgICAgfSwgaS5yZW1vdmUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAodCBpbnN0YW5jZW9mIHUpIHJldHVybiB0aGlzLl9yZW1vdmUodCwgITEpOwogICAgICAgICAgICAgICAgaWYgKHQgaW5zdGFuY2VvZiBBcnJheSB8fCB0ICYmIHQucHVzaCAmJiBnKHQpKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSA9IHQubGVuZ3RoOyAtIDEgPCAtLWU7KSB0aGlzLnJlbW92ZSh0W2VdKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciID09IHR5cGVvZiB0ID8gdGhpcy5yZW1vdmVMYWJlbCh0KSA6IHRoaXMua2lsbChudWxsLCB0KQogICAgICAgICAgICB9LCBpLl9yZW1vdmUgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBwLnByb3RvdHlwZS5fcmVtb3ZlLmNhbGwodGhpcywgdCwgZSk7CiAgICAgICAgICAgICAgICB2YXIgaSA9IHRoaXMuX2xhc3Q7CiAgICAgICAgICAgICAgICByZXR1cm4gaSA/IHRoaXMuX3RpbWUgPiBpLl9zdGFydFRpbWUgKyBpLl90b3RhbER1cmF0aW9uIC8gaS5fdGltZVNjYWxlICYmICh0aGlzLl90aW1lID0gdGhpcy5kdXJhdGlvbigpLCB0aGlzLl90b3RhbFRpbWUgPSB0aGlzLl90b3RhbER1cmF0aW9uKSA6IHRoaXMuX3RpbWUgPSB0aGlzLl90b3RhbFRpbWUgPSB0aGlzLl9kdXJhdGlvbiA9IHRoaXMuX3RvdGFsRHVyYXRpb24gPSAwLCB0aGlzCiAgICAgICAgICAgIH0sIGkuYXBwZW5kID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWRkKHQsIHRoaXMuX3BhcnNlVGltZU9yTGFiZWwobnVsbCwgZSwgITAsIHQpKQogICAgICAgICAgICB9LCBpLmluc2VydCA9IGkuaW5zZXJ0TXVsdGlwbGUgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hZGQodCwgZSB8fCAwLCBpLCBuKQogICAgICAgICAgICB9LCBpLmFwcGVuZE11bHRpcGxlID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWRkKHQsIHRoaXMuX3BhcnNlVGltZU9yTGFiZWwobnVsbCwgZSwgITAsIHQpLCBpLCBuKQogICAgICAgICAgICB9LCBpLmFkZExhYmVsID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsc1t0XSA9IHRoaXMuX3BhcnNlVGltZU9yTGFiZWwoZSksIHRoaXMKICAgICAgICAgICAgfSwgaS5hZGRQYXVzZSA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgIHZhciByID0gZi5kZWxheWVkQ2FsbCgwLCBzLCBbIntzZWxmfSIsIGUsIGksIG5dLCB0aGlzKTsKICAgICAgICAgICAgICAgIHJldHVybiByLmRhdGEgPSAiaXNQYXVzZSIsIHRoaXMuYWRkKHIsIHQpCiAgICAgICAgICAgIH0sIGkucmVtb3ZlTGFiZWwgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZGVsZXRlIHRoaXMuX2xhYmVsc1t0XSwgdGhpcwogICAgICAgICAgICB9LCBpLmdldExhYmVsVGltZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHRoaXMuX2xhYmVsc1t0XSA/IHRoaXMuX2xhYmVsc1t0XSA6IC0xCiAgICAgICAgICAgIH0sIGkuX3BhcnNlVGltZU9yTGFiZWwgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgcjsKICAgICAgICAgICAgICAgIGlmIChuIGluc3RhbmNlb2YgdSAmJiBuLnRpbWVsaW5lID09PSB0aGlzKSB0aGlzLnJlbW92ZShuKTsKICAgICAgICAgICAgICAgIGVsc2UgaWYgKG4gJiYgKG4gaW5zdGFuY2VvZiBBcnJheSB8fCBuLnB1c2ggJiYgZyhuKSkpCiAgICAgICAgICAgICAgICAgICAgZm9yIChyID0gbi5sZW5ndGg7IC0gMSA8IC0tcjspIG5bcl0gaW5zdGFuY2VvZiB1ICYmIG5bcl0udGltZWxpbmUgPT09IHRoaXMgJiYgdGhpcy5yZW1vdmUobltyXSk7CiAgICAgICAgICAgICAgICBpZiAoInN0cmluZyIgPT0gdHlwZW9mIGUpIHJldHVybiB0aGlzLl9wYXJzZVRpbWVPckxhYmVsKGUsIGkgJiYgIm51bWJlciIgPT0gdHlwZW9mIHQgJiYgbnVsbCA9PSB0aGlzLl9sYWJlbHNbZV0gPyB0IC0gdGhpcy5kdXJhdGlvbigpIDogMCwgaSk7CiAgICAgICAgICAgICAgICBpZiAoZSA9IGUgfHwgMCwgInN0cmluZyIgIT0gdHlwZW9mIHQgfHwgIWlzTmFOKHQpICYmIG51bGwgPT0gdGhpcy5fbGFiZWxzW3RdKSBudWxsID09IHQgJiYgKHQgPSB0aGlzLmR1cmF0aW9uKCkpOwogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKC0xID09PSAociA9IHQuaW5kZXhPZigiPSIpKSkgcmV0dXJuIG51bGwgPT0gdGhpcy5fbGFiZWxzW3RdID8gaSA/IHRoaXMuX2xhYmVsc1t0XSA9IHRoaXMuZHVyYXRpb24oKSArIGUgOiBlIDogdGhpcy5fbGFiZWxzW3RdICsgZTsKICAgICAgICAgICAgICAgICAgICBlID0gcGFyc2VJbnQodC5jaGFyQXQociAtIDEpICsgIjEiLCAxMCkgKiBOdW1iZXIodC5zdWJzdHIociArIDEpKSwgdCA9IDEgPCByID8gdGhpcy5fcGFyc2VUaW1lT3JMYWJlbCh0LnN1YnN0cigwLCByIC0gMSksIDAsIGkpIDogdGhpcy5kdXJhdGlvbigpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyKHQpICsgZQogICAgICAgICAgICB9LCBpLnNlZWsgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50b3RhbFRpbWUoIm51bWJlciIgPT0gdHlwZW9mIHQgPyB0IDogdGhpcy5fcGFyc2VUaW1lT3JMYWJlbCh0KSwgITEgIT09IGUpCiAgICAgICAgICAgIH0sIGkuc3RvcCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucGF1c2VkKCEwKQogICAgICAgICAgICB9LCBpLmdvdG9BbmRQbGF5ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucGxheSh0LCBlKQogICAgICAgICAgICB9LCBpLmdvdG9BbmRTdG9wID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucGF1c2UodCwgZSkKICAgICAgICAgICAgfSwgaS5yZW5kZXIgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9nYyAmJiB0aGlzLl9lbmFibGVkKCEwLCAhMSk7CiAgICAgICAgICAgICAgICB2YXIgbiwgciwgcywgYSwgbywgbCA9IHRoaXMuX2RpcnR5ID8gdGhpcy50b3RhbER1cmF0aW9uKCkgOiB0aGlzLl90b3RhbER1cmF0aW9uLAogICAgICAgICAgICAgICAgICAgIGggPSB0aGlzLl90aW1lLAogICAgICAgICAgICAgICAgICAgIHUgPSB0aGlzLl9zdGFydFRpbWUsCiAgICAgICAgICAgICAgICAgICAgcCA9IHRoaXMuX3RpbWVTY2FsZSwKICAgICAgICAgICAgICAgICAgICBmID0gdGhpcy5fcGF1c2VkOwogICAgICAgICAgICAgICAgaWYgKGwgPD0gdCkgdGhpcy5fdG90YWxUaW1lID0gdGhpcy5fdGltZSA9IGwsIHRoaXMuX3JldmVyc2VkIHx8IHRoaXMuX2hhc1BhdXNlZENoaWxkKCkgfHwgKHIgPSAhMCwgYSA9ICJvbkNvbXBsZXRlIiwgbyA9ICEhdGhpcy5fdGltZWxpbmUuYXV0b1JlbW92ZUNoaWxkcmVuLCAwID09PSB0aGlzLl9kdXJhdGlvbiAmJiAoMCA9PT0gdCB8fCB0aGlzLl9yYXdQcmV2VGltZSA8IDAgfHwgdGhpcy5fcmF3UHJldlRpbWUgPT09IGQpICYmIHRoaXMuX3Jhd1ByZXZUaW1lICE9PSB0ICYmIHRoaXMuX2ZpcnN0ICYmIChvID0gITAsIHRoaXMuX3Jhd1ByZXZUaW1lID4gZCAmJiAoYSA9ICJvblJldmVyc2VDb21wbGV0ZSIpKSksIHRoaXMuX3Jhd1ByZXZUaW1lID0gdGhpcy5fZHVyYXRpb24gfHwgIWUgfHwgdCB8fCB0aGlzLl9yYXdQcmV2VGltZSA9PT0gdCA/IHQgOiBkLCB0ID0gbCArIDFlLTQ7CiAgICAgICAgICAgICAgICBlbHNlIGlmICh0IDwgMWUtNykKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fdG90YWxUaW1lID0gdGhpcy5fdGltZSA9IDAsICgwICE9PSBoIHx8IDAgPT09IHRoaXMuX2R1cmF0aW9uICYmIHRoaXMuX3Jhd1ByZXZUaW1lICE9PSBkICYmICgwIDwgdGhpcy5fcmF3UHJldlRpbWUgfHwgdCA8IDAgJiYgMCA8PSB0aGlzLl9yYXdQcmV2VGltZSkpICYmIChhID0gIm9uUmV2ZXJzZUNvbXBsZXRlIiwgciA9IHRoaXMuX3JldmVyc2VkKSwgdCA8IDApIHRoaXMuX2FjdGl2ZSA9ICExLCB0aGlzLl90aW1lbGluZS5hdXRvUmVtb3ZlQ2hpbGRyZW4gJiYgdGhpcy5fcmV2ZXJzZWQgPyAobyA9IHIgPSAhMCwgYSA9ICJvblJldmVyc2VDb21wbGV0ZSIpIDogMCA8PSB0aGlzLl9yYXdQcmV2VGltZSAmJiB0aGlzLl9maXJzdCAmJiAobyA9ICEwKSwgdGhpcy5fcmF3UHJldlRpbWUgPSB0OwogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fcmF3UHJldlRpbWUgPSB0aGlzLl9kdXJhdGlvbiB8fCAhZSB8fCB0IHx8IHRoaXMuX3Jhd1ByZXZUaW1lID09PSB0ID8gdCA6IGQsIDAgPT09IHQgJiYgcikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IHRoaXMuX2ZpcnN0OyBuICYmIDAgPT09IG4uX3N0YXJ0VGltZTspIG4uX2R1cmF0aW9uIHx8IChyID0gITEpLCBuID0gbi5fbmV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgdCA9IDAsIHRoaXMuX2luaXR0ZWQgfHwgKG8gPSAhMCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHRoaXMuX3RvdGFsVGltZSA9IHRoaXMuX3RpbWUgPSB0aGlzLl9yYXdQcmV2VGltZSA9IHQ7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGltZSAhPT0gaCAmJiB0aGlzLl9maXJzdCB8fCBpIHx8IG8pIHsKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5faW5pdHRlZCB8fCAodGhpcy5faW5pdHRlZCA9ICEwKSwgdGhpcy5fYWN0aXZlIHx8ICF0aGlzLl9wYXVzZWQgJiYgdGhpcy5fdGltZSAhPT0gaCAmJiAwIDwgdCAmJiAodGhpcy5fYWN0aXZlID0gITApLCAwID09PSBoICYmIHRoaXMudmFycy5vblN0YXJ0ICYmIDAgIT09IHRoaXMuX3RpbWUgJiYgKGUgfHwgdGhpcy5fY2FsbGJhY2soIm9uU3RhcnQiKSksIHRoaXMuX3RpbWUgPj0gaCkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChuID0gdGhpcy5fZmlyc3Q7IG4gJiYgKHMgPSBuLl9uZXh0LCAhdGhpcy5fcGF1c2VkIHx8IGYpOykobi5fYWN0aXZlIHx8IG4uX3N0YXJ0VGltZSA8PSB0aGlzLl90aW1lICYmICFuLl9wYXVzZWQgJiYgIW4uX2djKSAmJiAobi5fcmV2ZXJzZWQgPyBuLnJlbmRlcigobi5fZGlydHkgPyBuLnRvdGFsRHVyYXRpb24oKSA6IG4uX3RvdGFsRHVyYXRpb24pIC0gKHQgLSBuLl9zdGFydFRpbWUpICogbi5fdGltZVNjYWxlLCBlLCBpKSA6IG4ucmVuZGVyKCh0IC0gbi5fc3RhcnRUaW1lKSAqIG4uX3RpbWVTY2FsZSwgZSwgaSkpLCBuID0gczsKICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IHRoaXMuX2xhc3Q7IG4gJiYgKHMgPSBuLl9wcmV2LCAhdGhpcy5fcGF1c2VkIHx8IGYpOykobi5fYWN0aXZlIHx8IGggPj0gbi5fc3RhcnRUaW1lICYmICFuLl9wYXVzZWQgJiYgIW4uX2djKSAmJiAobi5fcmV2ZXJzZWQgPyBuLnJlbmRlcigobi5fZGlydHkgPyBuLnRvdGFsRHVyYXRpb24oKSA6IG4uX3RvdGFsRHVyYXRpb24pIC0gKHQgLSBuLl9zdGFydFRpbWUpICogbi5fdGltZVNjYWxlLCBlLCBpKSA6IG4ucmVuZGVyKCh0IC0gbi5fc3RhcnRUaW1lKSAqIG4uX3RpbWVTY2FsZSwgZSwgaSkpLCBuID0gczsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9vblVwZGF0ZSAmJiAoZSB8fCAobS5sZW5ndGggJiYgdigpLCB0aGlzLl9jYWxsYmFjaygib25VcGRhdGUiKSkpLCBhICYmICh0aGlzLl9nYyB8fCAodSA9PT0gdGhpcy5fc3RhcnRUaW1lIHx8IHAgIT09IHRoaXMuX3RpbWVTY2FsZSkgJiYgKDAgPT09IHRoaXMuX3RpbWUgfHwgbCA+PSB0aGlzLnRvdGFsRHVyYXRpb24oKSkgJiYgKHIgJiYgKG0ubGVuZ3RoICYmIHYoKSwgdGhpcy5fdGltZWxpbmUuYXV0b1JlbW92ZUNoaWxkcmVuICYmIHRoaXMuX2VuYWJsZWQoITEsICExKSwgdGhpcy5fYWN0aXZlID0gITEpLCAhZSAmJiB0aGlzLnZhcnNbYV0gJiYgdGhpcy5fY2FsbGJhY2soYSkpKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBpLl9oYXNQYXVzZWRDaGlsZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IHRoaXMuX2ZpcnN0OyB0OykgewogICAgICAgICAgICAgICAgICAgIGlmICh0Ll9wYXVzZWQgfHwgdCBpbnN0YW5jZW9mIGMgJiYgdC5faGFzUGF1c2VkQ2hpbGQoKSkgcmV0dXJuICEwOwogICAgICAgICAgICAgICAgICAgIHQgPSB0Ll9uZXh0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gITEKICAgICAgICAgICAgfSwgaS5nZXRDaGlsZHJlbiA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgIG4gPSBuIHx8IC05OTk5OTk5OTk5OwogICAgICAgICAgICAgICAgZm9yICh2YXIgciA9IFtdLCBzID0gdGhpcy5fZmlyc3QsIGEgPSAwOyBzOykgbiA+IHMuX3N0YXJ0VGltZSB8fCAocyBpbnN0YW5jZW9mIGYgPyAhMSAhPT0gZSAmJiAoclthKytdID0gcykgOiAoITEgIT09IGkgJiYgKHJbYSsrXSA9IHMpLCAhMSAhPT0gdCAmJiAoYSA9IChyID0gci5jb25jYXQocy5nZXRDaGlsZHJlbighMCwgZSwgaSkpKS5sZW5ndGgpKSksIHMgPSBzLl9uZXh0OwogICAgICAgICAgICAgICAgcmV0dXJuIHIKICAgICAgICAgICAgfSwgaS5nZXRUd2VlbnNPZiA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBpLCBuLCByID0gdGhpcy5fZ2MsCiAgICAgICAgICAgICAgICAgICAgcyA9IFtdLAogICAgICAgICAgICAgICAgICAgIGEgPSAwOwogICAgICAgICAgICAgICAgZm9yIChyICYmIHRoaXMuX2VuYWJsZWQoITAsICEwKSwgbiA9IChpID0gZi5nZXRUd2VlbnNPZih0KSkubGVuZ3RoOyAtIDEgPCAtLW47KShpW25dLnRpbWVsaW5lID09PSB0aGlzIHx8IGUgJiYgdGhpcy5fY29udGFpbnMoaVtuXSkpICYmIChzW2ErK10gPSBpW25dKTsKICAgICAgICAgICAgICAgIHJldHVybiByICYmIHRoaXMuX2VuYWJsZWQoITEsICEwKSwgcwogICAgICAgICAgICB9LCBpLnJlY2VudCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3JlY2VudAogICAgICAgICAgICB9LCBpLl9jb250YWlucyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0LnRpbWVsaW5lOyBlOykgewogICAgICAgICAgICAgICAgICAgIGlmIChlID09PSB0aGlzKSByZXR1cm4gITA7CiAgICAgICAgICAgICAgICAgICAgZSA9IGUudGltZWxpbmUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiAhMQogICAgICAgICAgICB9LCBpLnNoaWZ0Q2hpbGRyZW4gPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICBpID0gaSB8fCAwOwogICAgICAgICAgICAgICAgZm9yICh2YXIgbiwgciA9IHRoaXMuX2ZpcnN0LCBzID0gdGhpcy5fbGFiZWxzOyByOykgci5fc3RhcnRUaW1lID49IGkgJiYgKHIuX3N0YXJ0VGltZSArPSB0KSwgciA9IHIuX25leHQ7CiAgICAgICAgICAgICAgICBpZiAoZSkKICAgICAgICAgICAgICAgICAgICBmb3IgKG4gaW4gcykgc1tuXSA+PSBpICYmIChzW25dICs9IHQpOwogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3VuY2FjaGUoITApCiAgICAgICAgICAgIH0sIGkuX2tpbGwgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBpZiAoIXQgJiYgIWUpIHJldHVybiB0aGlzLl9lbmFibGVkKCExLCAhMSk7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gZSA/IHRoaXMuZ2V0VHdlZW5zT2YoZSkgOiB0aGlzLmdldENoaWxkcmVuKCEwLCAhMCwgITEpLCBuID0gaS5sZW5ndGgsIHIgPSAhMTsgLSAxIDwgLS1uOykgaVtuXS5fa2lsbCh0LCBlKSAmJiAociA9ICEwKTsKICAgICAgICAgICAgICAgIHJldHVybiByCiAgICAgICAgICAgIH0sIGkuY2xlYXIgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMuZ2V0Q2hpbGRyZW4oITEsICEwLCAhMCksCiAgICAgICAgICAgICAgICAgICAgaSA9IGUubGVuZ3RoOwogICAgICAgICAgICAgICAgZm9yICh0aGlzLl90aW1lID0gdGhpcy5fdG90YWxUaW1lID0gMDsgLSAxIDwgLS1pOykgZVtpXS5fZW5hYmxlZCghMSwgITEpOwogICAgICAgICAgICAgICAgcmV0dXJuICExICE9PSB0ICYmICh0aGlzLl9sYWJlbHMgPSB7fSksIHRoaXMuX3VuY2FjaGUoITApCiAgICAgICAgICAgIH0sIGkuaW52YWxpZGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IHRoaXMuX2ZpcnN0OyB0OykgdC5pbnZhbGlkYXRlKCksIHQgPSB0Ll9uZXh0OwogICAgICAgICAgICAgICAgcmV0dXJuIHUucHJvdG90eXBlLmludmFsaWRhdGUuY2FsbCh0aGlzKQogICAgICAgICAgICB9LCBpLl9lbmFibGVkID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgaWYgKHQgPT09IHRoaXMuX2djKQogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSB0aGlzLl9maXJzdDsgaTspIGkuX2VuYWJsZWQodCwgITApLCBpID0gaS5fbmV4dDsKICAgICAgICAgICAgICAgIHJldHVybiBwLnByb3RvdHlwZS5fZW5hYmxlZC5jYWxsKHRoaXMsIHQsIGUpCiAgICAgICAgICAgIH0sIGkudG90YWxUaW1lID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0aGlzLl9mb3JjaW5nUGxheWhlYWQgPSAhMDsKICAgICAgICAgICAgICAgIHZhciB0ID0gdS5wcm90b3R5cGUudG90YWxUaW1lLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fZm9yY2luZ1BsYXloZWFkID0gITEsIHQKICAgICAgICAgICAgfSwgaS5kdXJhdGlvbiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID8gKDAgIT09IHRoaXMuZHVyYXRpb24oKSAmJiAwICE9PSB0ICYmIHRoaXMudGltZVNjYWxlKHRoaXMuX2R1cmF0aW9uIC8gdCksIHRoaXMpIDogKHRoaXMuX2RpcnR5ICYmIHRoaXMudG90YWxEdXJhdGlvbigpLCB0aGlzLl9kdXJhdGlvbikKICAgICAgICAgICAgfSwgaS50b3RhbER1cmF0aW9uID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGgpIHJldHVybiAwICE9PSB0aGlzLnRvdGFsRHVyYXRpb24oKSAmJiAwICE9PSB0ICYmIHRoaXMudGltZVNjYWxlKHRoaXMuX3RvdGFsRHVyYXRpb24gLyB0KSwgdGhpczsKICAgICAgICAgICAgICAgIGlmICh0aGlzLl9kaXJ0eSkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUsIGksIG4gPSAwLCByID0gdGhpcy5fbGFzdCwgcyA9IDk5OTk5OTk5OTk5OTsgcjspIGUgPSByLl9wcmV2LCByLl9kaXJ0eSAmJiByLnRvdGFsRHVyYXRpb24oKSwgci5fc3RhcnRUaW1lID4gcyAmJiB0aGlzLl9zb3J0Q2hpbGRyZW4gJiYgIXIuX3BhdXNlZCA/IHRoaXMuYWRkKHIsIHIuX3N0YXJ0VGltZSAtIHIuX2RlbGF5KSA6IHMgPSByLl9zdGFydFRpbWUsIHIuX3N0YXJ0VGltZSA8IDAgJiYgIXIuX3BhdXNlZCAmJiAobiAtPSByLl9zdGFydFRpbWUsIHRoaXMuX3RpbWVsaW5lLnNtb290aENoaWxkVGltaW5nICYmICh0aGlzLl9zdGFydFRpbWUgKz0gci5fc3RhcnRUaW1lIC8gdGhpcy5fdGltZVNjYWxlKSwgdGhpcy5zaGlmdENoaWxkcmVuKC1yLl9zdGFydFRpbWUsICExLCAtOTk5OTk5OTk5OSksIHMgPSAwKSwgbiA8IChpID0gci5fc3RhcnRUaW1lICsgci5fdG90YWxEdXJhdGlvbiAvIHIuX3RpbWVTY2FsZSkgJiYgKG4gPSBpKSwgciA9IGU7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZHVyYXRpb24gPSB0aGlzLl90b3RhbER1cmF0aW9uID0gbiwgdGhpcy5fZGlydHkgPSAhMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3RvdGFsRHVyYXRpb24KICAgICAgICAgICAgfSwgaS5wYXVzZWQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBpZiAoIXQpCiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSA9IHRoaXMuX2ZpcnN0LCBpID0gdGhpcy5fdGltZTsgZTspIGUuX3N0YXJ0VGltZSA9PT0gaSAmJiAiaXNQYXVzZSIgPT09IGUuZGF0YSAmJiAoZS5fcmF3UHJldlRpbWUgPSAwKSwgZSA9IGUuX25leHQ7CiAgICAgICAgICAgICAgICByZXR1cm4gdS5wcm90b3R5cGUucGF1c2VkLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykKICAgICAgICAgICAgfSwgaS51c2VzRnJhbWVzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciB0ID0gdGhpcy5fdGltZWxpbmU7IHQuX3RpbWVsaW5lOykgdCA9IHQuX3RpbWVsaW5lOwogICAgICAgICAgICAgICAgcmV0dXJuIHQgPT09IHUuX3Jvb3RGcmFtZXNUaW1lbGluZQogICAgICAgICAgICB9LCBpLnJhd1RpbWUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9wYXVzZWQgPyB0aGlzLl90b3RhbFRpbWUgOiAodGhpcy5fdGltZWxpbmUucmF3VGltZSgpIC0gdGhpcy5fc3RhcnRUaW1lKSAqIHRoaXMuX3RpbWVTY2FsZQogICAgICAgICAgICB9LCBjCiAgICAgICAgfSwgITApCiAgICB9KSwgX2dzU2NvcGUuX2dzRGVmaW5lICYmIF9nc1Njb3BlLl9nc1F1ZXVlLnBvcCgpKCksCiAgICBmdW5jdGlvbih0KSB7CiAgICAgICAgInVzZSBzdHJpY3QiOwogICAgICAgIHZhciBlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiAoX2dzU2NvcGUuR3JlZW5Tb2NrR2xvYmFscyB8fCBfZ3NTY29wZSkuVGltZWxpbmVMaXRlCiAgICAgICAgfTsKICAgICAgICAiZnVuY3Rpb24iID09IHR5cGVvZiBkZWZpbmUgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbIlR3ZWVuTGl0ZSJdLCBlKSA6ICJ1bmRlZmluZWQiICE9IHR5cGVvZiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMgJiYgKHJlcXVpcmUoIi4vVHdlZW5MaXRlLmpzIiksIG1vZHVsZS5leHBvcnRzID0gZSgpKQogICAgfSgpLCAoKF9nc1Njb3BlID0gInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cyAmJiAidW5kZWZpbmVkIiAhPSB0eXBlb2YgZ2xvYmFsID8gZ2xvYmFsIDogdGhpcyB8fCB3aW5kb3cpLl9nc1F1ZXVlIHx8IChfZ3NTY29wZS5fZ3NRdWV1ZSA9IFtdKSkucHVzaChmdW5jdGlvbigpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgX2dzU2NvcGUuX2dzRGVmaW5lKCJlYXNpbmcuQmFjayIsIFsiZWFzaW5nLkVhc2UiXSwgZnVuY3Rpb24oZykgewogICAgICAgICAgICB2YXIgZSwgaSwgdCwgbiA9IF9nc1Njb3BlLkdyZWVuU29ja0dsb2JhbHMgfHwgX2dzU2NvcGUsCiAgICAgICAgICAgICAgICByID0gbi5jb20uZ3JlZW5zb2NrLAogICAgICAgICAgICAgICAgcyA9IDIgKiBNYXRoLlBJLAogICAgICAgICAgICAgICAgYSA9IE1hdGguUEkgLyAyLAogICAgICAgICAgICAgICAgbyA9IHIuX2NsYXNzLAogICAgICAgICAgICAgICAgbCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IG8oImVhc2luZy4iICsgdCwgZnVuY3Rpb24oKSB7fSwgITApLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gaS5wcm90b3R5cGUgPSBuZXcgZzsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbi5jb25zdHJ1Y3RvciA9IGksIG4uZ2V0UmF0aW8gPSBlLCBpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaCA9IGcucmVnaXN0ZXIgfHwgZnVuY3Rpb24oKSB7fSwKICAgICAgICAgICAgICAgIHUgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSBvKCJlYXNpbmcuIiArIHQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZU91dDogbmV3IGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2VJbjogbmV3IGksCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2VJbk91dDogbmV3IG4KICAgICAgICAgICAgICAgICAgICB9LCAhMCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGgocywgdCksIHMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBtID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMudCA9IHQsIHRoaXMudiA9IGUsIGkgJiYgKCgodGhpcy5uZXh0ID0gaSkucHJldiA9IHRoaXMpLmMgPSBpLnYgLSBlLCB0aGlzLmdhcCA9IGkudCAtIHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IG8oImVhc2luZy4iICsgdCwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fcDEgPSB0IHx8IDAgPT09IHQgPyB0IDogMS43MDE1OCwgdGhpcy5fcDIgPSAxLjUyNSAqIHRoaXMuX3AxCiAgICAgICAgICAgICAgICAgICAgICAgIH0sICEwKSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IGkucHJvdG90eXBlID0gbmV3IGc7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4uY29uc3RydWN0b3IgPSBpLCBuLmdldFJhdGlvID0gZSwgbi5jb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgaSh0KQogICAgICAgICAgICAgICAgICAgIH0sIGkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBmID0gdSgiQmFjayIsIHAoIkJhY2tPdXQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICh0IC09IDEpICogdCAqICgodGhpcy5fcDEgKyAxKSAqIHQgKyB0aGlzLl9wMSkgKyAxCiAgICAgICAgICAgICAgICB9KSwgcCgiQmFja0luIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0ICogdCAqICgodGhpcy5fcDEgKyAxKSAqIHQgLSB0aGlzLl9wMSkKICAgICAgICAgICAgICAgIH0pLCBwKCJCYWNrSW5PdXQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICh0ICo9IDIpIDwgMSA/IC41ICogdCAqIHQgKiAoKHRoaXMuX3AyICsgMSkgKiB0IC0gdGhpcy5fcDIpIDogLjUgKiAoKHQgLT0gMikgKiB0ICogKCh0aGlzLl9wMiArIDEpICogdCArIHRoaXMuX3AyKSArIDIpCiAgICAgICAgICAgICAgICB9KSksCiAgICAgICAgICAgICAgICBjID0gbygiZWFzaW5nLlNsb3dNbyIsIGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICBlID0gZSB8fCAwID09PSBlID8gZSA6IC43LCBudWxsID09IHQgPyB0ID0gLjcgOiAxIDwgdCAmJiAodCA9IDEpLCB0aGlzLl9wID0gMSAhPT0gdCA/IGUgOiAwLCB0aGlzLl9wMSA9ICgxIC0gdCkgLyAyLCB0aGlzLl9wMiA9IHQsIHRoaXMuX3AzID0gdGhpcy5fcDEgKyB0aGlzLl9wMiwgdGhpcy5fY2FsY0VuZCA9ICEwID09PSBpCiAgICAgICAgICAgICAgICB9LCAhMCksCiAgICAgICAgICAgICAgICBkID0gYy5wcm90b3R5cGUgPSBuZXcgZzsKICAgICAgICAgICAgcmV0dXJuIGQuY29uc3RydWN0b3IgPSBjLCBkLmdldFJhdGlvID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0ICsgKC41IC0gdCkgKiB0aGlzLl9wOwogICAgICAgICAgICAgICAgcmV0dXJuIHQgPCB0aGlzLl9wMSA/IHRoaXMuX2NhbGNFbmQgPyAxIC0gKHQgPSAxIC0gdCAvIHRoaXMuX3AxKSAqIHQgOiBlIC0gKHQgPSAxIC0gdCAvIHRoaXMuX3AxKSAqIHQgKiB0ICogdCAqIGUgOiB0ID4gdGhpcy5fcDMgPyB0aGlzLl9jYWxjRW5kID8gMSAtICh0ID0gKHQgLSB0aGlzLl9wMykgLyB0aGlzLl9wMSkgKiB0IDogZSArICh0IC0gZSkgKiAodCA9ICh0IC0gdGhpcy5fcDMpIC8gdGhpcy5fcDEpICogdCAqIHQgKiB0IDogdGhpcy5fY2FsY0VuZCA/IDEgOiBlCiAgICAgICAgICAgIH0sIGMuZWFzZSA9IG5ldyBjKC43LCAuNyksIGQuY29uZmlnID0gYy5jb25maWcgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IGModCwgZSwgaSkKICAgICAgICAgICAgfSwgKGQgPSAoZSA9IG8oImVhc2luZy5TdGVwcGVkRWFzZSIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHQgPSB0IHx8IDEsIHRoaXMuX3AxID0gMSAvIHQsIHRoaXMuX3AyID0gdCArIDEKICAgICAgICAgICAgfSwgITApKS5wcm90b3R5cGUgPSBuZXcgZykuY29uc3RydWN0b3IgPSBlLCBkLmdldFJhdGlvID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHQgPCAwID8gdCA9IDAgOiAxIDw9IHQgJiYgKHQgPSAuOTk5OTk5OTk5KSwgKHRoaXMuX3AyICogdCA+PiAwKSAqIHRoaXMuX3AxCiAgICAgICAgICAgIH0sIGQuY29uZmlnID0gZS5jb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IGUodCkKICAgICAgICAgICAgfSwgKGQgPSAoaSA9IG8oImVhc2luZy5Sb3VnaEVhc2UiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBlLCBpLCBuLCByLCBzLCBhLCBvID0gKHQgPSB0IHx8IHt9KS50YXBlciB8fCAibm9uZSIsIGwgPSBbXSwgaCA9IDAsIHUgPSAwIHwgKHQucG9pbnRzIHx8IDIwKSwgcCA9IHUsIGYgPSAhMSAhPT0gdC5yYW5kb21pemUsIGMgPSAhMCA9PT0gdC5jbGFtcCwgZCA9IHQudGVtcGxhdGUgaW5zdGFuY2VvZiBnID8gdC50ZW1wbGF0ZSA6IG51bGwsIF8gPSAibnVtYmVyIiA9PSB0eXBlb2YgdC5zdHJlbmd0aCA/IC40ICogdC5zdHJlbmd0aCA6IC40OyAtIDEgPCAtLXA7KSBlID0gZiA/IE1hdGgucmFuZG9tKCkgOiAxIC8gdSAqIHAsIGkgPSBkID8gZC5nZXRSYXRpbyhlKSA6IGUsIG4gPSAibm9uZSIgPT09IG8gPyBfIDogIm91dCIgPT09IG8gPyAociA9IDEgLSBlKSAqIHIgKiBfIDogImluIiA9PT0gbyA/IGUgKiBlICogXyA6IChyID0gZSA8IC41ID8gMiAqIGUgOiAyICogKDEgLSBlKSkgKiByICogLjUgKiBfLCBmID8gaSArPSBNYXRoLnJhbmRvbSgpICogbiAtIC41ICogbiA6IHAgJSAyID8gaSArPSAuNSAqIG4gOiBpIC09IC41ICogbiwgYyAmJiAoMSA8IGkgPyBpID0gMSA6IGkgPCAwICYmIChpID0gMCkpLCBsW2grK10gPSB7CiAgICAgICAgICAgICAgICAgICAgeDogZSwKICAgICAgICAgICAgICAgICAgICB5OiBpCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgZm9yIChsLnNvcnQoZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdC54IC0gZS54CiAgICAgICAgICAgICAgICAgICAgfSksIGEgPSBuZXcgbSgxLCAxLCBudWxsKSwgcCA9IHU7IC0gMSA8IC0tcDspIHMgPSBsW3BdLCBhID0gbmV3IG0ocy54LCBzLnksIGEpOwogICAgICAgICAgICAgICAgdGhpcy5fcHJldiA9IG5ldyBtKDAsIDAsIDAgIT09IGEudCA/IGEgOiBhLm5leHQpCiAgICAgICAgICAgIH0sICEwKSkucHJvdG90eXBlID0gbmV3IGcpLmNvbnN0cnVjdG9yID0gaSwgZC5nZXRSYXRpbyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy5fcHJldjsKICAgICAgICAgICAgICAgIGlmICh0ID4gZS50KSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICg7IGUubmV4dCAmJiB0ID49IGUudDspIGUgPSBlLm5leHQ7CiAgICAgICAgICAgICAgICAgICAgZSA9IGUucHJldgogICAgICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICAgICAgICAgZm9yICg7IGUucHJldiAmJiB0IDw9IGUudDspIGUgPSBlLnByZXY7CiAgICAgICAgICAgICAgICByZXR1cm4gKHRoaXMuX3ByZXYgPSBlKS52ICsgKHQgLSBlLnQpIC8gZS5nYXAgKiBlLmMKICAgICAgICAgICAgfSwgZC5jb25maWcgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IGkodCkKICAgICAgICAgICAgfSwgaS5lYXNlID0gbmV3IGksIHUoIkJvdW5jZSIsIGwoIkJvdW5jZU91dCIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0IDwgMSAvIDIuNzUgPyA3LjU2MjUgKiB0ICogdCA6IHQgPCAyIC8gMi43NSA/IDcuNTYyNSAqICh0IC09IDEuNSAvIDIuNzUpICogdCArIC43NSA6IHQgPCAyLjUgLyAyLjc1ID8gNy41NjI1ICogKHQgLT0gMi4yNSAvIDIuNzUpICogdCArIC45Mzc1IDogNy41NjI1ICogKHQgLT0gMi42MjUgLyAyLjc1KSAqIHQgKyAuOTg0Mzc1CiAgICAgICAgICAgIH0pLCBsKCJCb3VuY2VJbiIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiAodCA9IDEgLSB0KSA8IDEgLyAyLjc1ID8gMSAtIDcuNTYyNSAqIHQgKiB0IDogdCA8IDIgLyAyLjc1ID8gMSAtICg3LjU2MjUgKiAodCAtPSAxLjUgLyAyLjc1KSAqIHQgKyAuNzUpIDogdCA8IDIuNSAvIDIuNzUgPyAxIC0gKDcuNTYyNSAqICh0IC09IDIuMjUgLyAyLjc1KSAqIHQgKyAuOTM3NSkgOiAxIC0gKDcuNTYyNSAqICh0IC09IDIuNjI1IC8gMi43NSkgKiB0ICsgLjk4NDM3NSkKICAgICAgICAgICAgfSksIGwoIkJvdW5jZUluT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0IDwgLjU7CiAgICAgICAgICAgICAgICByZXR1cm4gdCA9ICh0ID0gZSA/IDEgLSAyICogdCA6IDIgKiB0IC0gMSkgPCAxIC8gMi43NSA/IDcuNTYyNSAqIHQgKiB0IDogdCA8IDIgLyAyLjc1ID8gNy41NjI1ICogKHQgLT0gMS41IC8gMi43NSkgKiB0ICsgLjc1IDogdCA8IDIuNSAvIDIuNzUgPyA3LjU2MjUgKiAodCAtPSAyLjI1IC8gMi43NSkgKiB0ICsgLjkzNzUgOiA3LjU2MjUgKiAodCAtPSAyLjYyNSAvIDIuNzUpICogdCArIC45ODQzNzUsIGUgPyAuNSAqICgxIC0gdCkgOiAuNSAqIHQgKyAuNQogICAgICAgICAgICB9KSksIHUoIkNpcmMiLCBsKCJDaXJjT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIE1hdGguc3FydCgxIC0gKHQgLT0gMSkgKiB0KQogICAgICAgICAgICB9KSwgbCgiQ2lyY0luIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIC0oTWF0aC5zcXJ0KDEgLSB0ICogdCkgLSAxKQogICAgICAgICAgICB9KSwgbCgiQ2lyY0luT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuICh0ICo9IDIpIDwgMSA/IC0uNSAqIChNYXRoLnNxcnQoMSAtIHQgKiB0KSAtIDEpIDogLjUgKiAoTWF0aC5zcXJ0KDEgLSAodCAtPSAyKSAqIHQpICsgMSkKICAgICAgICAgICAgfSkpLCB1KCJFbGFzdGljIiwgKHQgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IG8oImVhc2luZy4iICsgdCwgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9wMSA9IDEgPD0gdCA/IHQgOiAxLCB0aGlzLl9wMiA9IChlIHx8IGkpIC8gKHQgPCAxID8gdCA6IDEpLCB0aGlzLl9wMyA9IHRoaXMuX3AyIC8gcyAqIChNYXRoLmFzaW4oMSAvIHRoaXMuX3AxKSB8fCAwKSwgdGhpcy5fcDIgPSBzIC8gdGhpcy5fcDIKICAgICAgICAgICAgICAgICAgICB9LCAhMCksCiAgICAgICAgICAgICAgICAgICAgciA9IG4ucHJvdG90eXBlID0gbmV3IGc7CiAgICAgICAgICAgICAgICByZXR1cm4gci5jb25zdHJ1Y3RvciA9IG4sIHIuZ2V0UmF0aW8gPSBlLCByLmNvbmZpZyA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IG4odCwgZSkKICAgICAgICAgICAgICAgIH0sIG4KICAgICAgICAgICAgfSkoIkVsYXN0aWNPdXQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fcDEgKiBNYXRoLnBvdygyLCAtMTAgKiB0KSAqIE1hdGguc2luKCh0IC0gdGhpcy5fcDMpICogdGhpcy5fcDIpICsgMQogICAgICAgICAgICB9LCAuMyksIHQoIkVsYXN0aWNJbiIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiAtdGhpcy5fcDEgKiBNYXRoLnBvdygyLCAxMCAqICh0IC09IDEpKSAqIE1hdGguc2luKCh0IC0gdGhpcy5fcDMpICogdGhpcy5fcDIpCiAgICAgICAgICAgIH0sIC4zKSwgdCgiRWxhc3RpY0luT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuICh0ICo9IDIpIDwgMSA/IHRoaXMuX3AxICogTWF0aC5wb3coMiwgMTAgKiAodCAtPSAxKSkgKiBNYXRoLnNpbigodCAtIHRoaXMuX3AzKSAqIHRoaXMuX3AyKSAqIC0uNSA6IHRoaXMuX3AxICogTWF0aC5wb3coMiwgLTEwICogKHQgLT0gMSkpICogTWF0aC5zaW4oKHQgLSB0aGlzLl9wMykgKiB0aGlzLl9wMikgKiAuNSArIDEKICAgICAgICAgICAgfSwgLjQ1KSksIHUoIkV4cG8iLCBsKCJFeHBvT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIDEgLSBNYXRoLnBvdygyLCAtMTAgKiB0KQogICAgICAgICAgICB9KSwgbCgiRXhwb0luIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIE1hdGgucG93KDIsIDEwICogKHQgLSAxKSkgLSAuMDAxCiAgICAgICAgICAgIH0pLCBsKCJFeHBvSW5PdXQiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKHQgKj0gMikgPCAxID8gLjUgKiBNYXRoLnBvdygyLCAxMCAqICh0IC0gMSkpIDogLjUgKiAoMiAtIE1hdGgucG93KDIsIC0xMCAqICh0IC0gMSkpKQogICAgICAgICAgICB9KSksIHUoIlNpbmUiLCBsKCJTaW5lT3V0IiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIE1hdGguc2luKHQgKiBhKQogICAgICAgICAgICB9KSwgbCgiU2luZUluIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgcmV0dXJuIDEgLSBNYXRoLmNvcyh0ICogYSkKICAgICAgICAgICAgfSksIGwoIlNpbmVJbk91dCIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiAtLjUgKiAoTWF0aC5jb3MoTWF0aC5QSSAqIHQpIC0gMSkKICAgICAgICAgICAgfSkpLCBvKCJlYXNpbmcuRWFzZUxvb2t1cCIsIHsKICAgICAgICAgICAgICAgIGZpbmQ6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZy5tYXBbdF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgITApLCBoKG4uU2xvd01vLCAiU2xvd01vIiwgImVhc2UsIiksIGgoaSwgIlJvdWdoRWFzZSIsICJlYXNlLCIpLCBoKGUsICJTdGVwcGVkRWFzZSIsICJlYXNlLCIpLCBmCiAgICAgICAgfSwgITApCiAgICB9KSwgX2dzU2NvcGUuX2dzRGVmaW5lICYmIF9nc1Njb3BlLl9nc1F1ZXVlLnBvcCgpKCksCiAgICBmdW5jdGlvbigpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgdmFyIHQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIF9nc1Njb3BlLkdyZWVuU29ja0dsb2JhbHMgfHwgX2dzU2NvcGUKICAgICAgICB9OwogICAgICAgICJmdW5jdGlvbiIgPT0gdHlwZW9mIGRlZmluZSAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKFsiVHdlZW5MaXRlIl0sIHQpIDogInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cyAmJiAocmVxdWlyZSgiLi4vVHdlZW5MaXRlLmpzIiksIG1vZHVsZS5leHBvcnRzID0gdCgpKQogICAgfSgpLCAoKF9nc1Njb3BlID0gInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cyAmJiAidW5kZWZpbmVkIiAhPSB0eXBlb2YgZ2xvYmFsID8gZ2xvYmFsIDogdGhpcyB8fCB3aW5kb3cpLl9nc1F1ZXVlIHx8IChfZ3NTY29wZS5fZ3NRdWV1ZSA9IFtdKSkucHVzaChmdW5jdGlvbigpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgX2dzU2NvcGUuX2dzRGVmaW5lKCJwbHVnaW5zLkNTU1BsdWdpbiIsIFsicGx1Z2lucy5Ud2VlblBsdWdpbiIsICJUd2VlbkxpdGUiXSwgZnVuY3Rpb24ocywgQikgewogICAgICAgICAgICB2YXIgZCwgUCwgTywgXywgaiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHMuY2FsbCh0aGlzLCAiY3NzIiksIHRoaXMuX292ZXJ3cml0ZVByb3BzLmxlbmd0aCA9IDAsIHRoaXMuc2V0UmF0aW8gPSBqLnByb3RvdHlwZS5zZXRSYXRpbwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGggPSBfZ3NTY29wZS5fZ3NEZWZpbmUuZ2xvYmFscywKICAgICAgICAgICAgICAgIGcgPSB7fSwKICAgICAgICAgICAgICAgIHQgPSBqLnByb3RvdHlwZSA9IG5ldyBzKCJjc3MiKTsKICAgICAgICAgICAgKHQuY29uc3RydWN0b3IgPSBqKS52ZXJzaW9uID0gIjEuMTkuMSIsIGouQVBJID0gMiwgai5kZWZhdWx0VHJhbnNmb3JtUGVyc3BlY3RpdmUgPSAwLCBqLmRlZmF1bHRTa2V3VHlwZSA9ICJjb21wZW5zYXRlZCIsIGouZGVmYXVsdFNtb290aE9yaWdpbiA9ICEwLCB0ID0gInB4Iiwgai5zdWZmaXhNYXAgPSB7CiAgICAgICAgICAgICAgICB0b3A6IHQsCiAgICAgICAgICAgICAgICByaWdodDogdCwKICAgICAgICAgICAgICAgIGJvdHRvbTogdCwKICAgICAgICAgICAgICAgIGxlZnQ6IHQsCiAgICAgICAgICAgICAgICB3aWR0aDogdCwKICAgICAgICAgICAgICAgIGhlaWdodDogdCwKICAgICAgICAgICAgICAgIGZvbnRTaXplOiB0LAogICAgICAgICAgICAgICAgcGFkZGluZzogdCwKICAgICAgICAgICAgICAgIG1hcmdpbjogdCwKICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlOiB0LAogICAgICAgICAgICAgICAgbGluZUhlaWdodDogIiIKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdmFyIGssIG0sIHYsIFksIHksIFMsIEMsIEEsIGUsIGksIFIgPSAvKD86XC18XC58XGIpKFxkfFwufGVcLSkrL2csCiAgICAgICAgICAgICAgICBNID0gLyg/OlxkfFwtXGR8XC5cZHxcLVwuXGR8XCs9XGR8XC09XGR8XCs9LlxkfFwtPVwuXGQpKy9nLAogICAgICAgICAgICAgICAgeCA9IC8oPzpcKz18XC09fFwtfFxiKVtcZFwtXC5dK1thLXpBLVowLTldKig/OiV8XGIpL2dpLAogICAgICAgICAgICAgICAgdSA9IC8oPyFbKy1dP1xkKlwuP1xkK3xbKy1dfGVbKy1dXGQrKVteMC05XS9nLAogICAgICAgICAgICAgICAgRSA9IC8oPzpcZHxcLXxcK3w9fCN8XC4pKi9nLAogICAgICAgICAgICAgICAgRCA9IC9vcGFjaXR5ICo9ICooW14pXSopL2ksCiAgICAgICAgICAgICAgICB3ID0gL29wYWNpdHk6KFteO10qKS9pLAogICAgICAgICAgICAgICAgYSA9IC9hbHBoYVwob3BhY2l0eSAqPS4rP1wpL2ksCiAgICAgICAgICAgICAgICBUID0gL14ocmdifGhzbCkvLAogICAgICAgICAgICAgICAgbyA9IC8oW0EtWl0pL2csCiAgICAgICAgICAgICAgICBsID0gLy0oW2Etel0pL2dpLAogICAgICAgICAgICAgICAgYiA9IC8oXig/OnVybFwoXCJ8dXJsXCgpKXwoPzooXCJcKSkkfFwpJCkvZ2ksCiAgICAgICAgICAgICAgICBwID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLnRvVXBwZXJDYXNlKCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjID0gLyg/OkxlZnR8UmlnaHR8V2lkdGgpL2ksCiAgICAgICAgICAgICAgICBmID0gLyhNMTF8TTEyfE0yMXxNMjIpPVtcZFwtXC5lXSsvZ2ksCiAgICAgICAgICAgICAgICBMID0gL3Byb2dpZFw6RFhJbWFnZVRyYW5zZm9ybVwuTWljcm9zb2Z0XC5NYXRyaXhcKC4rP1wpL2ksCiAgICAgICAgICAgICAgICBOID0gLywoPz1bXlwpXSooPzpcKHwkKSkvZ2ksCiAgICAgICAgICAgICAgICBGID0gL1tccyxcKF0vaSwKICAgICAgICAgICAgICAgIFYgPSBNYXRoLlBJIC8gMTgwLAogICAgICAgICAgICAgICAgRyA9IDE4MCAvIE1hdGguUEksCiAgICAgICAgICAgICAgICBJID0ge30sCiAgICAgICAgICAgICAgICBuID0gewogICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7fQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFggPSBfZ3NTY29wZS5kb2N1bWVudCB8fCB7CiAgICAgICAgICAgICAgICAgICAgY3JlYXRlRWxlbWVudDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHogPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFguY3JlYXRlRWxlbWVudE5TID8gWC5jcmVhdGVFbGVtZW50TlMoZSB8fCAiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsIHQpIDogWC5jcmVhdGVFbGVtZW50KHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgVyA9IHooImRpdiIpLAogICAgICAgICAgICAgICAgVSA9IHooImltZyIpLAogICAgICAgICAgICAgICAgciA9IGouX2ludGVybmFscyA9IHsKICAgICAgICAgICAgICAgICAgICBfc3BlY2lhbFByb3BzOiBnCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcSA9IChfZ3NTY29wZS5uYXZpZ2F0b3IgfHwge30pLnVzZXJBZ2VudCB8fCAiIiwKICAgICAgICAgICAgICAgIFEgPSAoZSA9IHEuaW5kZXhPZigiQW5kcm9pZCIpLCBpID0geigiYSIpLCB2ID0gLTEgIT09IHEuaW5kZXhPZigiU2FmYXJpIikgJiYgLTEgPT09IHEuaW5kZXhPZigiQ2hyb21lIikgJiYgKC0xID09PSBlIHx8IDMgPCBwYXJzZUZsb2F0KHEuc3Vic3RyKGUgKyA4LCAyKSkpLCB5ID0gdiAmJiBwYXJzZUZsb2F0KHEuc3Vic3RyKHEuaW5kZXhPZigiVmVyc2lvbi8iKSArIDgsIDIpKSA8IDYsIFkgPSAtMSAhPT0gcS5pbmRleE9mKCJGaXJlZm94IiksICgvTVNJRSAoWzAtOV17MSx9W1wuMC05XXswLH0pLy5leGVjKHEpIHx8IC9UcmlkZW50XC8uKnJ2OihbMC05XXsxLH1bXC4wLTldezAsfSkvLmV4ZWMocSkpICYmIChTID0gcGFyc2VGbG9hdChSZWdFeHAuJDEpKSwgISFpICYmIChpLnN0eWxlLmNzc1RleHQgPSAidG9wOjFweDtvcGFjaXR5Oi41NTsiLCAvXjAuNTUvLnRlc3QoaS5zdHlsZS5vcGFjaXR5KSkpLAogICAgICAgICAgICAgICAgSCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gRC50ZXN0KCJzdHJpbmciID09IHR5cGVvZiB0ID8gdCA6ICh0LmN1cnJlbnRTdHlsZSA/IHQuY3VycmVudFN0eWxlLmZpbHRlciA6IHQuc3R5bGUuZmlsdGVyKSB8fCAiIikgPyBwYXJzZUZsb2F0KFJlZ0V4cC4kMSkgLyAxMDAgOiAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgWiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBfZ3NTY29wZS5jb25zb2xlICYmIGNvbnNvbGUubG9nKHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgJCA9ICIiLAogICAgICAgICAgICAgICAgSyA9ICIiLAogICAgICAgICAgICAgICAgSiA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSwgbiwgciA9IChlID0gZSB8fCBXKS5zdHlsZTsKICAgICAgICAgICAgICAgICAgICBpZiAodm9pZCAwICE9PSByW3RdKSByZXR1cm4gdDsKICAgICAgICAgICAgICAgICAgICBmb3IgKHQgPSB0LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdC5zdWJzdHIoMSksIGkgPSBbIk8iLCAiTW96IiwgIm1zIiwgIk1zIiwgIldlYmtpdCJdLCBuID0gNTsgLSAxIDwgLS1uICYmIHZvaWQgMCA9PT0gcltpW25dICsgdF07KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gMCA8PSBuID8gKCQgPSAiLSIgKyAoSyA9IDMgPT09IG4gPyAibXMiIDogaVtuXSkudG9Mb3dlckNhc2UoKSArICItIiwgSyArIHQpIDogbnVsbAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHR0ID0gWC5kZWZhdWx0VmlldyA/IFguZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZSA6IGZ1bmN0aW9uKCkge30sCiAgICAgICAgICAgICAgICBldCA9IGouZ2V0U3R5bGUgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHM7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFEgfHwgIm9wYWNpdHkiICE9PSBlID8gKCFuICYmIHQuc3R5bGVbZV0gPyBzID0gdC5zdHlsZVtlXSA6IChpID0gaSB8fCB0dCh0KSkgPyBzID0gaVtlXSB8fCBpLmdldFByb3BlcnR5VmFsdWUoZSkgfHwgaS5nZXRQcm9wZXJ0eVZhbHVlKGUucmVwbGFjZShvLCAiLSQxIikudG9Mb3dlckNhc2UoKSkgOiB0LmN1cnJlbnRTdHlsZSAmJiAocyA9IHQuY3VycmVudFN0eWxlW2VdKSwgbnVsbCA9PSByIHx8IHMgJiYgIm5vbmUiICE9PSBzICYmICJhdXRvIiAhPT0gcyAmJiAiYXV0byBhdXRvIiAhPT0gcyA/IHMgOiByKSA6IEgodCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBpdCA9IHIuY29udmVydFRvUGl4ZWxzID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgcikgewogICAgICAgICAgICAgICAgICAgIGlmICgicHgiID09PSBuIHx8ICFuKSByZXR1cm4gaTsKICAgICAgICAgICAgICAgICAgICBpZiAoImF1dG8iID09PSBuIHx8ICFpKSByZXR1cm4gMDsKICAgICAgICAgICAgICAgICAgICB2YXIgcywgYSwgbywgbCA9IGMudGVzdChlKSwKICAgICAgICAgICAgICAgICAgICAgICAgaCA9IHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBXLnN0eWxlLAogICAgICAgICAgICAgICAgICAgICAgICBwID0gaSA8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGYgPSAxID09PSBpOwogICAgICAgICAgICAgICAgICAgIGlmIChwICYmIChpID0gLWkpLCBmICYmIChpICo9IDEwMCksICIlIiA9PT0gbiAmJiAtMSAhPT0gZS5pbmRleE9mKCJib3JkZXIiKSkgcyA9IGkgLyAxMDAgKiAobCA/IHQuY2xpZW50V2lkdGggOiB0LmNsaWVudEhlaWdodCk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh1LmNzc1RleHQgPSAiYm9yZGVyOjAgc29saWQgcmVkO3Bvc2l0aW9uOiIgKyBldCh0LCAicG9zaXRpb24iKSArICI7bGluZS1oZWlnaHQ6MDsiLCAiJSIgIT09IG4gJiYgaC5hcHBlbmRDaGlsZCAmJiAidiIgIT09IG4uY2hhckF0KDApICYmICJyZW0iICE9PSBuKSB1W2wgPyAiYm9yZGVyTGVmdFdpZHRoIiA6ICJib3JkZXJUb3BXaWR0aCJdID0gaSArIG47CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGEgPSAoaCA9IHQucGFyZW50Tm9kZSB8fCBYLmJvZHkpLl9nc0NhY2hlLCBvID0gQi50aWNrZXIuZnJhbWUsIGEgJiYgbCAmJiBhLnRpbWUgPT09IG8pIHJldHVybiBhLndpZHRoICogaSAvIDEwMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVbbCA/ICJ3aWR0aCIgOiAiaGVpZ2h0Il0gPSBpICsgbgogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGguYXBwZW5kQ2hpbGQoVyksIHMgPSBwYXJzZUZsb2F0KFdbbCA/ICJvZmZzZXRXaWR0aCIgOiAib2Zmc2V0SGVpZ2h0Il0pLCBoLnJlbW92ZUNoaWxkKFcpLCBsICYmICIlIiA9PT0gbiAmJiAhMSAhPT0gai5jYWNoZVdpZHRocyAmJiAoKGEgPSBoLl9nc0NhY2hlID0gaC5fZ3NDYWNoZSB8fCB7fSkudGltZSA9IG8sIGEud2lkdGggPSBzIC8gaSAqIDEwMCksIDAgIT09IHMgfHwgciB8fCAocyA9IGl0KHQsIGUsIGksIG4sICEwKSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGYgJiYgKHMgLz0gMTAwKSwgcCA/IC1zIDogcwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG50ID0gci5jYWxjdWxhdGVPZmZzZXQgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJhYnNvbHV0ZSIgIT09IGV0KHQsICJwb3NpdGlvbiIsIGkpKSByZXR1cm4gMDsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9ICJsZWZ0IiA9PT0gZSA/ICJMZWZ0IiA6ICJUb3AiLAogICAgICAgICAgICAgICAgICAgICAgICByID0gZXQodCwgIm1hcmdpbiIgKyBuLCBpKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdFsib2Zmc2V0IiArIG5dIC0gKGl0KHQsIGUsIHBhcnNlRmxvYXQociksIHIucmVwbGFjZShFLCAiIikpIHx8IDApCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcnQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4sIHIsIHMgPSB7fTsKICAgICAgICAgICAgICAgICAgICBpZiAoZSA9IGUgfHwgdHQodCwgbnVsbCkpCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpID0gZS5sZW5ndGgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgLSAxIDwgLS1pOykoLTEgPT09IChyID0gZVtpXSkuaW5kZXhPZigiLXRyYW5zZm9ybSIpIHx8IE50ID09PSByKSAmJiAoc1tyLnJlcGxhY2UobCwgcCldID0gZS5nZXRQcm9wZXJ0eVZhbHVlKHIpKTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpIGluIGUpKC0xID09PSBpLmluZGV4T2YoIlRyYW5zZm9ybSIpIHx8IEx0ID09PSBpKSAmJiAoc1tpXSA9IGVbaV0pOwogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGUgPSB0LmN1cnJlbnRTdHlsZSB8fCB0LnN0eWxlKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGkgaW4gZSkgInN0cmluZyIgPT0gdHlwZW9mIGkgJiYgdm9pZCAwID09PSBzW2ldICYmIChzW2kucmVwbGFjZShsLCBwKV0gPSBlW2ldKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gUSB8fCAocy5vcGFjaXR5ID0gSCh0KSksIG4gPSBRdCh0LCBlLCAhMSksIHMucm90YXRpb24gPSBuLnJvdGF0aW9uLCBzLnNrZXdYID0gbi5za2V3WCwgcy5zY2FsZVggPSBuLnNjYWxlWCwgcy5zY2FsZVkgPSBuLnNjYWxlWSwgcy54ID0gbi54LCBzLnkgPSBuLnksIEl0ICYmIChzLnogPSBuLnosIHMucm90YXRpb25YID0gbi5yb3RhdGlvblgsIHMucm90YXRpb25ZID0gbi5yb3RhdGlvblksIHMuc2NhbGVaID0gbi5zY2FsZVopLCBzLmZpbHRlcnMgJiYgZGVsZXRlIHMuZmlsdGVycywgcwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHN0ID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgcikgewogICAgICAgICAgICAgICAgICAgIHZhciBzLCBhLCBvLCBsID0ge30sCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSB0LnN0eWxlOwogICAgICAgICAgICAgICAgICAgIGZvciAoYSBpbiBpKSAiY3NzVGV4dCIgIT09IGEgJiYgImxlbmd0aCIgIT09IGEgJiYgaXNOYU4oYSkgJiYgKGVbYV0gIT09IChzID0gaVthXSkgfHwgciAmJiByW2FdKSAmJiAtMSA9PT0gYS5pbmRleE9mKCJPcmlnaW4iKSAmJiAoIm51bWJlciIgPT0gdHlwZW9mIHMgfHwgInN0cmluZyIgPT0gdHlwZW9mIHMpICYmIChsW2FdID0gImF1dG8iICE9PSBzIHx8ICJsZWZ0IiAhPT0gYSAmJiAidG9wIiAhPT0gYSA/ICIiICE9PSBzICYmICJhdXRvIiAhPT0gcyAmJiAibm9uZSIgIT09IHMgfHwgInN0cmluZyIgIT0gdHlwZW9mIGVbYV0gfHwgIiIgPT09IGVbYV0ucmVwbGFjZSh1LCAiIikgPyBzIDogMCA6IG50KHQsIGEpLCB2b2lkIDAgIT09IGhbYV0gJiYgKG8gPSBuZXcgeHQoaCwgYSwgaFthXSwgbykpKTsKICAgICAgICAgICAgICAgICAgICBpZiAobikKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhIGluIG4pICJjbGFzc05hbWUiICE9PSBhICYmIChsW2FdID0gblthXSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgZGlmczogbCwKICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RNUFQ6IG8KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYXQgPSB7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IFsiTGVmdCIsICJSaWdodCJdLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogWyJUb3AiLCAiQm90dG9tIl0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvdCA9IFsibWFyZ2luTGVmdCIsICJtYXJnaW5SaWdodCIsICJtYXJnaW5Ub3AiLCAibWFyZ2luQm90dG9tIl0sCiAgICAgICAgICAgICAgICBsdCA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoInN2ZyIgPT09ICh0Lm5vZGVOYW1lICsgIiIpLnRvTG93ZXJDYXNlKCkpIHJldHVybiAoaSB8fCB0dCh0KSlbZV0gfHwgMDsKICAgICAgICAgICAgICAgICAgICBpZiAodC5nZXRDVE0gJiYgV3QodCkpIHJldHVybiB0LmdldEJCb3goKVtlXSB8fCAwOwogICAgICAgICAgICAgICAgICAgIHZhciBuID0gcGFyc2VGbG9hdCgid2lkdGgiID09PSBlID8gdC5vZmZzZXRXaWR0aCA6IHQub2Zmc2V0SGVpZ2h0KSwKICAgICAgICAgICAgICAgICAgICAgICAgciA9IGF0W2VdLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gci5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gaSB8fCB0dCh0LCBudWxsKTsgLSAxIDwgLS1zOykgbiAtPSBwYXJzZUZsb2F0KGV0KHQsICJwYWRkaW5nIiArIHJbc10sIGksICEwKSkgfHwgMCwgbiAtPSBwYXJzZUZsb2F0KGV0KHQsICJib3JkZXIiICsgcltzXSArICJXaWR0aCIsIGksICEwKSkgfHwgMDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGh0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIGlmICgiY29udGFpbiIgPT09IHQgfHwgImF1dG8iID09PSB0IHx8ICJhdXRvIGF1dG8iID09PSB0KSByZXR1cm4gdCArICIgIjsKICAgICAgICAgICAgICAgICAgICAobnVsbCA9PSB0IHx8ICIiID09PSB0KSAmJiAodCA9ICIwIDAiKTsKICAgICAgICAgICAgICAgICAgICB2YXIgaSwgbiA9IHQuc3BsaXQoIiAiKSwKICAgICAgICAgICAgICAgICAgICAgICAgciA9IC0xICE9PSB0LmluZGV4T2YoImxlZnQiKSA/ICIwJSIgOiAtMSAhPT0gdC5pbmRleE9mKCJyaWdodCIpID8gIjEwMCUiIDogblswXSwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IC0xICE9PSB0LmluZGV4T2YoInRvcCIpID8gIjAlIiA6IC0xICE9PSB0LmluZGV4T2YoImJvdHRvbSIpID8gIjEwMCUiIDogblsxXTsKICAgICAgICAgICAgICAgICAgICBpZiAoMyA8IG4ubGVuZ3RoICYmICFlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IHQuc3BsaXQoIiwgIikuam9pbigiLCIpLnNwbGl0KCIsIiksIHQgPSBbXSwgaSA9IDA7IGkgPCBuLmxlbmd0aDsgaSsrKSB0LnB1c2goaHQobltpXSkpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdC5qb2luKCIsIikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gcyA/IHMgPSAiY2VudGVyIiA9PT0gciA/ICI1MCUiIDogIjAiIDogImNlbnRlciIgPT09IHMgJiYgKHMgPSAiNTAlIiksICgiY2VudGVyIiA9PT0gciB8fCBpc05hTihwYXJzZUZsb2F0KHIpKSAmJiAtMSA9PT0gKHIgKyAiIikuaW5kZXhPZigiPSIpKSAmJiAociA9ICI1MCUiKSwgdCA9IHIgKyAiICIgKyBzICsgKDIgPCBuLmxlbmd0aCA/ICIgIiArIG5bMl0gOiAiIiksIGUgJiYgKGUub3hwID0gLTEgIT09IHIuaW5kZXhPZigiJSIpLCBlLm95cCA9IC0xICE9PSBzLmluZGV4T2YoIiUiKSwgZS5veHIgPSAiPSIgPT09IHIuY2hhckF0KDEpLCBlLm95ciA9ICI9IiA9PT0gcy5jaGFyQXQoMSksIGUub3ggPSBwYXJzZUZsb2F0KHIucmVwbGFjZSh1LCAiIikpLCBlLm95ID0gcGFyc2VGbG9hdChzLnJlcGxhY2UodSwgIiIpKSwgZS52ID0gdCksIGUgfHwgdAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHV0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAiZnVuY3Rpb24iID09IHR5cGVvZiB0ICYmICh0ID0gdChBLCBDKSksICJzdHJpbmciID09IHR5cGVvZiB0ICYmICI9IiA9PT0gdC5jaGFyQXQoMSkgPyBwYXJzZUludCh0LmNoYXJBdCgwKSArICIxIiwgMTApICogcGFyc2VGbG9hdCh0LnN1YnN0cigyKSkgOiBwYXJzZUZsb2F0KHQpIC0gcGFyc2VGbG9hdChlKSB8fCAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcHQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJmdW5jdGlvbiIgPT0gdHlwZW9mIHQgJiYgKHQgPSB0KEEsIEMpKSwgbnVsbCA9PSB0ID8gZSA6ICJzdHJpbmciID09IHR5cGVvZiB0ICYmICI9IiA9PT0gdC5jaGFyQXQoMSkgPyBwYXJzZUludCh0LmNoYXJBdCgwKSArICIxIiwgMTApICogcGFyc2VGbG9hdCh0LnN1YnN0cigyKSkgKyBlIDogcGFyc2VGbG9hdCh0KSB8fCAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZnQgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIsIHMsIGEsIG8sIGw7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJmdW5jdGlvbiIgPT0gdHlwZW9mIHQgJiYgKHQgPSB0KEEsIEMpKSwgKG8gPSBudWxsID09IHQgPyBlIDogIm51bWJlciIgPT0gdHlwZW9mIHQgPyB0IDogKHIgPSAzNjAsIHMgPSB0LnNwbGl0KCJfIiksIGEgPSAoKGwgPSAiPSIgPT09IHQuY2hhckF0KDEpKSA/IHBhcnNlSW50KHQuY2hhckF0KDApICsgIjEiLCAxMCkgKiBwYXJzZUZsb2F0KHNbMF0uc3Vic3RyKDIpKSA6IHBhcnNlRmxvYXQoc1swXSkpICogKC0xID09PSB0LmluZGV4T2YoInJhZCIpID8gMSA6IEcpIC0gKGwgPyAwIDogZSksIHMubGVuZ3RoICYmIChuICYmIChuW2ldID0gZSArIGEpLCAtMSAhPT0gdC5pbmRleE9mKCJzaG9ydCIpICYmICgoYSAlPSByKSAhPT0gYSAlIDE4MCAmJiAoYSA9IGEgPCAwID8gYSArIHIgOiBhIC0gcikpLCAtMSAhPT0gdC5pbmRleE9mKCJfY3ciKSAmJiBhIDwgMCA/IGEgPSAoYSArIDM1OTk5OTk5OTk2NDApICUgciAtIChhIC8gciB8IDApICogciA6IC0xICE9PSB0LmluZGV4T2YoImNjdyIpICYmIDAgPCBhICYmIChhID0gKGEgLSAzNTk5OTk5OTk5NjQwKSAlIHIgLSAoYSAvIHIgfCAwKSAqIHIpKSwgZSArIGEpKSA8IDFlLTYgJiYgLTFlLTYgPCBvICYmIChvID0gMCksIG8KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjdCA9IHsKICAgICAgICAgICAgICAgICAgICBhcXVhOiBbMCwgMjU1LCAyNTVdLAogICAgICAgICAgICAgICAgICAgIGxpbWU6IFswLCAyNTUsIDBdLAogICAgICAgICAgICAgICAgICAgIHNpbHZlcjogWzE5MiwgMTkyLCAxOTJdLAogICAgICAgICAgICAgICAgICAgIGJsYWNrOiBbMCwgMCwgMF0sCiAgICAgICAgICAgICAgICAgICAgbWFyb29uOiBbMTI4LCAwLCAwXSwKICAgICAgICAgICAgICAgICAgICB0ZWFsOiBbMCwgMTI4LCAxMjhdLAogICAgICAgICAgICAgICAgICAgIGJsdWU6IFswLCAwLCAyNTVdLAogICAgICAgICAgICAgICAgICAgIG5hdnk6IFswLCAwLCAxMjhdLAogICAgICAgICAgICAgICAgICAgIHdoaXRlOiBbMjU1LCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgZnVjaHNpYTogWzI1NSwgMCwgMjU1XSwKICAgICAgICAgICAgICAgICAgICBvbGl2ZTogWzEyOCwgMTI4LCAwXSwKICAgICAgICAgICAgICAgICAgICB5ZWxsb3c6IFsyNTUsIDI1NSwgMF0sCiAgICAgICAgICAgICAgICAgICAgb3JhbmdlOiBbMjU1LCAxNjUsIDBdLAogICAgICAgICAgICAgICAgICAgIGdyYXk6IFsxMjgsIDEyOCwgMTI4XSwKICAgICAgICAgICAgICAgICAgICBwdXJwbGU6IFsxMjgsIDAsIDEyOF0sCiAgICAgICAgICAgICAgICAgICAgZ3JlZW46IFswLCAxMjgsIDBdLAogICAgICAgICAgICAgICAgICAgIHJlZDogWzI1NSwgMCwgMF0sCiAgICAgICAgICAgICAgICAgICAgcGluazogWzI1NSwgMTkyLCAyMDNdLAogICAgICAgICAgICAgICAgICAgIGN5YW46IFswLCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ6IFsyNTUsIDI1NSwgMjU1LCAwXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGR0ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAyNTUgKiAoNiAqICh0ID0gdCA8IDAgPyB0ICsgMSA6IDEgPCB0ID8gdCAtIDEgOiB0KSA8IDEgPyBlICsgKGkgLSBlKSAqIHQgKiA2IDogdCA8IC41ID8gaSA6IDMgKiB0IDwgMiA/IGUgKyAoaSAtIGUpICogKDIgLyAzIC0gdCkgKiA2IDogZSkgKyAuNSB8IDAKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBfdCA9IGoucGFyc2VDb2xvciA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSwgbiwgciwgcywgYSwgbywgbCwgaCwgdSwgcCwgZjsKICAgICAgICAgICAgICAgICAgICBpZiAodCkKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCJudW1iZXIiID09IHR5cGVvZiB0KSBpID0gW3QgPj4gMTYsIHQgPj4gOCAmIDI1NSwgMjU1ICYgdF07CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCIsIiA9PT0gdC5jaGFyQXQodC5sZW5ndGggLSAxKSAmJiAodCA9IHQuc3Vic3RyKDAsIHQubGVuZ3RoIC0gMSkpLCBjdFt0XSkgaSA9IGN0W3RdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoIiMiID09PSB0LmNoYXJBdCgwKSkgNCA9PT0gdC5sZW5ndGggJiYgKHQgPSAiIyIgKyAobiA9IHQuY2hhckF0KDEpKSArIG4gKyAociA9IHQuY2hhckF0KDIpKSArIHIgKyAocyA9IHQuY2hhckF0KDMpKSArIHMpLCBpID0gWyh0ID0gcGFyc2VJbnQodC5zdWJzdHIoMSksIDE2KSkgPj4gMTYsIHQgPj4gOCAmIDI1NSwgMjU1ICYgdF07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgiaHNsIiA9PT0gdC5zdWJzdHIoMCwgMykpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPSBmID0gdC5tYXRjaChSKSwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoLTEgIT09IHQuaW5kZXhPZigiPSIpKSByZXR1cm4gdC5tYXRjaChNKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBhID0gTnVtYmVyKGlbMF0pICUgMzYwIC8gMzYwLCBvID0gTnVtYmVyKGlbMV0pIC8gMTAwLCBuID0gMiAqIChsID0gTnVtYmVyKGlbMl0pIC8gMTAwKSAtIChyID0gbCA8PSAuNSA/IGwgKiAobyArIDEpIDogbCArIG8gLSBsICogbyksIDMgPCBpLmxlbmd0aCAmJiAoaVszXSA9IE51bWJlcih0WzNdKSksIGlbMF0gPSBkdChhICsgMSAvIDMsIG4sIHIpLCBpWzFdID0gZHQoYSwgbiwgciksIGlbMl0gPSBkdChhIC0gMSAvIDMsIG4sIHIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpID0gdC5tYXRjaChSKSB8fCBjdC50cmFuc3BhcmVudDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlbMF0gPSBOdW1iZXIoaVswXSksIGlbMV0gPSBOdW1iZXIoaVsxXSksIGlbMl0gPSBOdW1iZXIoaVsyXSksIDMgPCBpLmxlbmd0aCAmJiAoaVszXSA9IE51bWJlcihpWzNdKSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaSA9IGN0LmJsYWNrOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlICYmICFmICYmIChuID0gaVswXSAvIDI1NSwgciA9IGlbMV0gLyAyNTUsIHMgPSBpWzJdIC8gMjU1LCBsID0gKChoID0gTWF0aC5tYXgobiwgciwgcykpICsgKHUgPSBNYXRoLm1pbihuLCByLCBzKSkpIC8gMiwgaCA9PT0gdSA/IGEgPSBvID0gMCA6IChwID0gaCAtIHUsIG8gPSAuNSA8IGwgPyBwIC8gKDIgLSBoIC0gdSkgOiBwIC8gKGggKyB1KSwgYSA9IGggPT09IG4gPyAociAtIHMpIC8gcCArIChyIDwgcyA/IDYgOiAwKSA6IGggPT09IHIgPyAocyAtIG4pIC8gcCArIDIgOiAobiAtIHIpIC8gcCArIDQsIGEgKj0gNjApLCBpWzBdID0gYSArIC41IHwgMCwgaVsxXSA9IDEwMCAqIG8gKyAuNSB8IDAsIGlbMl0gPSAxMDAgKiBsICsgLjUgfCAwKSwgaQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGd0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpLCBuLCByLCBzID0gdC5tYXRjaChtdCkgfHwgW10sCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSAwLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gcy5sZW5ndGggPyAiIiA6IHQ7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHMubGVuZ3RoOyBpKyspIG4gPSBzW2ldLCBhICs9IChyID0gdC5zdWJzdHIoYSwgdC5pbmRleE9mKG4sIGEpIC0gYSkpLmxlbmd0aCArIG4ubGVuZ3RoLCAzID09PSAobiA9IF90KG4sIGUpKS5sZW5ndGggJiYgbi5wdXNoKDEpLCBvICs9IHIgKyAoZSA/ICJoc2xhKCIgKyBuWzBdICsgIiwiICsgblsxXSArICIlLCIgKyBuWzJdICsgIiUsIiArIG5bM10gOiAicmdiYSgiICsgbi5qb2luKCIsIikpICsgIikiOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBvICsgdC5zdWJzdHIoYSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBtdCA9ICIoPzpcXGIoPzooPzpyZ2J8cmdiYXxoc2x8aHNsYSlcXCguKz9cXCkpfFxcQiMoPzpbMC05YS1mXXszfSl7MSwyfVxcYiI7CiAgICAgICAgICAgIGZvciAodCBpbiBjdCkgbXQgKz0gInwiICsgdCArICJcXGIiOwogICAgICAgICAgICBtdCA9IG5ldyBSZWdFeHAobXQgKyAiKSIsICJnaSIpLCBqLmNvbG9yU3RyaW5nRmlsdGVyID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUsIGkgPSB0WzBdICsgdFsxXTsKICAgICAgICAgICAgICAgIG10LnRlc3QoaSkgJiYgKGUgPSAtMSAhPT0gaS5pbmRleE9mKCJoc2woIikgfHwgLTEgIT09IGkuaW5kZXhPZigiaHNsYSgiKSwgdFswXSA9IGd0KHRbMF0sIGUpLCB0WzFdID0gZ3QodFsxXSwgZSkpLCBtdC5sYXN0SW5kZXggPSAwCiAgICAgICAgICAgIH0sIEIuZGVmYXVsdFN0cmluZ0ZpbHRlciB8fCAoQi5kZWZhdWx0U3RyaW5nRmlsdGVyID0gai5jb2xvclN0cmluZ0ZpbHRlcik7CiAgICAgICAgICAgIHZhciB2dCA9IGZ1bmN0aW9uKHQsIGUsIHMsIGEpIHsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCA9PSB0KSByZXR1cm4gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdAogICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgdmFyIG8sIGwgPSBlID8gKHQubWF0Y2gobXQpIHx8IFsiIl0pWzBdIDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSB0LnNwbGl0KGwpLmpvaW4oIiIpLm1hdGNoKHgpIHx8IFtdLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gdC5zdWJzdHIoMCwgdC5pbmRleE9mKGhbMF0pKSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9ICIpIiA9PT0gdC5jaGFyQXQodC5sZW5ndGggLSAxKSA/ICIpIiA6ICIiLAogICAgICAgICAgICAgICAgICAgICAgICBmID0gLTEgIT09IHQuaW5kZXhPZigiICIpID8gIiAiIDogIiwiLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gaC5sZW5ndGgsCiAgICAgICAgICAgICAgICAgICAgICAgIGQgPSAwIDwgYyA/IGhbMF0ucmVwbGFjZShSLCAiIikgOiAiIjsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYyA/IG8gPSBlID8gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgcjsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCJudW1iZXIiID09IHR5cGVvZiB0KSB0ICs9IGQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGEgJiYgTi50ZXN0KHQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSB0LnJlcGxhY2UoTiwgInwiKS5zcGxpdCgifCIpLCBuID0gMDsgbiA8IHIubGVuZ3RoOyBuKyspIHJbbl0gPSBvKHJbbl0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHIuam9pbigiLCIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUgPSAodC5tYXRjaChtdCkgfHwgW2xdKVswXSwgbiA9IChpID0gdC5zcGxpdChlKS5qb2luKCIiKS5tYXRjaCh4KSB8fCBbXSkubGVuZ3RoLCBjID4gbi0tKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7ICsrbiA8IGM7KSBpW25dID0gcyA/IGlbKG4gLSAxKSAvIDIgfCAwXSA6IGhbbl07CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1ICsgaS5qb2luKGYpICsgZiArIGUgKyBwICsgKC0xICE9PSB0LmluZGV4T2YoImluc2V0IikgPyAiIGluc2V0IiA6ICIiKQogICAgICAgICAgICAgICAgICAgIH0gOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIm51bWJlciIgPT0gdHlwZW9mIHQpIHQgKz0gZDsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYSAmJiBOLnRlc3QodCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IHQucmVwbGFjZShOLCAifCIpLnNwbGl0KCJ8IiksIG4gPSAwOyBuIDwgaS5sZW5ndGg7IG4rKykgaVtuXSA9IG8oaVtuXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaS5qb2luKCIsIikKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAobiA9IChlID0gdC5tYXRjaCh4KSB8fCBbXSkubGVuZ3RoLCBjID4gbi0tKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7ICsrbiA8IGM7KSBlW25dID0gcyA/IGVbKG4gLSAxKSAvIDIgfCAwXSA6IGhbbl07CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1ICsgZS5qb2luKGYpICsgcAogICAgICAgICAgICAgICAgICAgIH0gOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHl0ID0gZnVuY3Rpb24oaCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBoID0gaC5zcGxpdCgiLCIpLAogICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbywgbCA9IChlICsgIiIpLnNwbGl0KCIgIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgPSB7fSwgbyA9IDA7IG8gPCA0OyBvKyspIGFbaFtvXV0gPSBsW29dID0gbFtvXSB8fCBsWyhvIC0gMSkgLyAyID4+IDBdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4ucGFyc2UodCwgYSwgciwgcykKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHh0ID0gKHIuX3NldFBsdWdpblJhdGlvID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHRoaXMucGx1Z2luLnNldFJhdGlvKHQpOwogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUsIGksIG4sIHIsIHMsIGEgPSB0aGlzLmRhdGEsIG8gPSBhLnByb3h5LCBsID0gYS5maXJzdE1QVDsgbDspIGUgPSBvW2wudl0sIGwuciA/IGUgPSBNYXRoLnJvdW5kKGUpIDogZSA8IDFlLTYgJiYgLTFlLTYgPCBlICYmIChlID0gMCksIGwudFtsLnBdID0gZSwgbCA9IGwuX25leHQ7CiAgICAgICAgICAgICAgICAgICAgaWYgKGEuYXV0b1JvdGF0ZSAmJiAoYS5hdXRvUm90YXRlLnJvdGF0aW9uID0gYS5tb2QgPyBhLm1vZChvLnJvdGF0aW9uLCB0aGlzLnQpIDogby5yb3RhdGlvbiksIDEgPT09IHQgfHwgMCA9PT0gdCkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsID0gYS5maXJzdE1QVCwgcyA9IDEgPT09IHQgPyAiZSIgOiAiYiI7IGw7KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoKGkgPSBsLnQpLnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoMSA9PT0gaS50eXBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAociA9IGkueHMwICsgaS5zICsgaS54czEsIG4gPSAxOyBuIDwgaS5sOyBuKyspIHIgKz0gaVsieG4iICsgbl0gKyBpWyJ4cyIgKyAobiArIDEpXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaVtzXSA9IHIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaVtzXSA9IGkucyArIGkueHMwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IGwuX25leHQKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24odCwgZSwgaSwgbiwgcikgewogICAgICAgICAgICAgICAgICAgIHRoaXMudCA9IHQsIHRoaXMucCA9IGUsIHRoaXMudiA9IGksIHRoaXMuciA9IHIsIG4gJiYgKChuLl9wcmV2ID0gdGhpcykuX25leHQgPSBuKQogICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICB3dCA9IChyLl9wYXJzZVRvUHJveHkgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEsIG8sIGwsIGgsIHUsIHAgPSBuLAogICAgICAgICAgICAgICAgICAgICAgICBmID0ge30sCiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSB7fSwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGkuX3RyYW5zZm9ybSwKICAgICAgICAgICAgICAgICAgICAgICAgXyA9IEk7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpLl90cmFuc2Zvcm0gPSBudWxsLCBJID0gZSwgbiA9IHUgPSBpLnBhcnNlKHQsIGUsIG4sIHIpLCBJID0gXywgcyAmJiAoaS5fdHJhbnNmb3JtID0gZCwgcCAmJiAocC5fcHJldiA9IG51bGwsIHAuX3ByZXYgJiYgKHAuX3ByZXYuX25leHQgPSBudWxsKSkpOyBuICYmIG4gIT09IHA7KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuLnR5cGUgPD0gMSAmJiAoY1tvID0gbi5wXSA9IG4ucyArIG4uYywgZltvXSA9IG4ucywgcyB8fCAoaCA9IG5ldyB4dChuLCAicyIsIG8sIGgsIG4uciksIG4uYyA9IDApLCAxID09PSBuLnR5cGUpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gbi5sOyAwIDwgLS1hOykgbCA9ICJ4biIgKyBhLCBjW28gPSBuLnAgKyAiXyIgKyBsXSA9IG4uZGF0YVtsXSwgZltvXSA9IG5bbF0sIHMgfHwgKGggPSBuZXcgeHQobiwgbCwgbywgaCwgbi5yeHBbbF0pKTsKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IG4uX25leHQKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgcHJveHk6IGYsCiAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogYywKICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RNUFQ6IGgsCiAgICAgICAgICAgICAgICAgICAgICAgIHB0OiB1CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgci5DU1NQcm9wVHdlZW4gPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhLCBvLCBsLCBoLCB1KSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy50ID0gdCwgdGhpcy5wID0gZSwgdGhpcy5zID0gaSwgdGhpcy5jID0gbiwgdGhpcy5uID0gYSB8fCBlLCB0IGluc3RhbmNlb2Ygd3QgfHwgXy5wdXNoKHRoaXMubiksIHRoaXMuciA9IG8sIHRoaXMudHlwZSA9IHMgfHwgMCwgbCAmJiAodGhpcy5wciA9IGwsIGQgPSAhMCksIHRoaXMuYiA9IHZvaWQgMCA9PT0gaCA/IGkgOiBoLCB0aGlzLmUgPSB2b2lkIDAgPT09IHUgPyBpICsgbiA6IHUsIHIgJiYgKCh0aGlzLl9uZXh0ID0gcikuX3ByZXYgPSB0aGlzKQogICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICBUdCA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IG5ldyB3dCh0LCBlLCBpLCBuIC0gaSwgciwgLTEsIHMpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBhLmIgPSBpLCBhLmUgPSBhLnhzMCA9IG4sIGEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBidCA9IGoucGFyc2VDb21wbGV4ID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgciwgcywgYSwgbywgbCwgaCkgewogICAgICAgICAgICAgICAgICAgIGkgPSBpIHx8IHMgfHwgIiIsICJmdW5jdGlvbiIgPT0gdHlwZW9mIG4gJiYgKG4gPSBuKEEsIEMpKSwgYSA9IG5ldyB3dCh0LCBlLCAwLCAwLCBhLCBoID8gMiA6IDEsIG51bGwsICExLCBvLCBpLCBuKSwgbiArPSAiIiwgciAmJiBtdC50ZXN0KG4gKyBpKSAmJiAobiA9IFtpLCBuXSwgai5jb2xvclN0cmluZ0ZpbHRlcihuKSwgaSA9IG5bMF0sIG4gPSBuWzFdKTsKICAgICAgICAgICAgICAgICAgICB2YXIgdSwgcCwgZiwgYywgZCwgXywgZywgbSwgdiwgeSwgeCwgdywgVCwgYiA9IGkuc3BsaXQoIiwgIikuam9pbigiLCIpLnNwbGl0KCIgIiksCiAgICAgICAgICAgICAgICAgICAgICAgIFAgPSBuLnNwbGl0KCIsICIpLmpvaW4oIiwiKS5zcGxpdCgiICIpLAogICAgICAgICAgICAgICAgICAgICAgICBTID0gYi5sZW5ndGgsCiAgICAgICAgICAgICAgICAgICAgICAgIE8gPSAhMSAhPT0gazsKICAgICAgICAgICAgICAgICAgICBmb3IgKCgtMSAhPT0gbi5pbmRleE9mKCIsIikgfHwgLTEgIT09IGkuaW5kZXhPZigiLCIpKSAmJiAoYiA9IGIuam9pbigiICIpLnJlcGxhY2UoTiwgIiwgIikuc3BsaXQoIiAiKSwgUCA9IFAuam9pbigiICIpLnJlcGxhY2UoTiwgIiwgIikuc3BsaXQoIiAiKSwgUyA9IGIubGVuZ3RoKSwgUyAhPT0gUC5sZW5ndGggJiYgKFMgPSAoYiA9IChzIHx8ICIiKS5zcGxpdCgiICIpKS5sZW5ndGgpLCBhLnBsdWdpbiA9IGwsIGEuc2V0UmF0aW8gPSBoLCB1ID0gbXQubGFzdEluZGV4ID0gMDsgdSA8IFM7IHUrKykKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGMgPSBiW3VdLCBkID0gUFt1XSwgKG0gPSBwYXJzZUZsb2F0KGMpKSB8fCAwID09PSBtKSBhLmFwcGVuZFh0cmEoIiIsIG0sIHV0KGQsIG0pLCBkLnJlcGxhY2UoTSwgIiIpLCBPICYmIC0xICE9PSBkLmluZGV4T2YoInB4IiksICEwKTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAociAmJiBtdC50ZXN0KGMpKSB3ID0gIikiICsgKCh3ID0gZC5pbmRleE9mKCIpIikgKyAxKSA/IGQuc3Vic3RyKHcpIDogIiIpLCBUID0gLTEgIT09IGQuaW5kZXhPZigiaHNsIikgJiYgUSwgYyA9IF90KGMsIFQpLCBkID0gX3QoZCwgVCksICh2ID0gNiA8IGMubGVuZ3RoICsgZC5sZW5ndGgpICYmICFRICYmIDAgPT09IGRbM10gPyAoYVsieHMiICsgYS5sXSArPSBhLmwgPyAiIHRyYW5zcGFyZW50IiA6ICJ0cmFuc3BhcmVudCIsIGEuZSA9IGEuZS5zcGxpdChQW3VdKS5qb2luKCJ0cmFuc3BhcmVudCIpKSA6IChRIHx8ICh2ID0gITEpLCBUID8gYS5hcHBlbmRYdHJhKHYgPyAiaHNsYSgiIDogImhzbCgiLCBjWzBdLCB1dChkWzBdLCBjWzBdKSwgIiwiLCAhMSwgITApLmFwcGVuZFh0cmEoIiIsIGNbMV0sIHV0KGRbMV0sIGNbMV0pLCAiJSwiLCAhMSkuYXBwZW5kWHRyYSgiIiwgY1syXSwgdXQoZFsyXSwgY1syXSksIHYgPyAiJSwiIDogIiUiICsgdywgITEpIDogYS5hcHBlbmRYdHJhKHYgPyAicmdiYSgiIDogInJnYigiLCBjWzBdLCBkWzBdIC0gY1swXSwgIiwiLCAhMCwgITApLmFwcGVuZFh0cmEoIiIsIGNbMV0sIGRbMV0gLSBjWzFdLCAiLCIsICEwKS5hcHBlbmRYdHJhKCIiLCBjWzJdLCBkWzJdIC0gY1syXSwgdiA/ICIsIiA6IHcsICEwKSwgdiAmJiAoYyA9IGMubGVuZ3RoIDwgNCA/IDEgOiBjWzNdLCBhLmFwcGVuZFh0cmEoIiIsIGMsIChkLmxlbmd0aCA8IDQgPyAxIDogZFszXSkgLSBjLCB3LCAhMSkpKSwgbXQubGFzdEluZGV4ID0gMDsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChfID0gYy5tYXRjaChSKSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIShnID0gZC5tYXRjaChNKSkgfHwgZy5sZW5ndGggIT09IF8ubGVuZ3RoKSByZXR1cm4gYTsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChwID0gZiA9IDA7IHAgPCBfLmxlbmd0aDsgcCsrKSB4ID0gX1twXSwgeSA9IGMuaW5kZXhPZih4LCBmKSwgYS5hcHBlbmRYdHJhKGMuc3Vic3RyKGYsIHkgLSBmKSwgTnVtYmVyKHgpLCB1dChnW3BdLCB4KSwgIiIsIE8gJiYgInB4IiA9PT0gYy5zdWJzdHIoeSArIHgubGVuZ3RoLCAyKSwgMCA9PT0gcCksIGYgPSB5ICsgeC5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgICAgIGFbInhzIiArIGEubF0gKz0gYy5zdWJzdHIoZikKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgYVsieHMiICsgYS5sXSArPSBhLmwgfHwgYVsieHMiICsgYS5sXSA/ICIgIiArIGQgOiBkOwogICAgICAgICAgICAgICAgICAgIGlmICgtMSAhPT0gbi5pbmRleE9mKCI9IikgJiYgYS5kYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodyA9IGEueHMwICsgYS5kYXRhLnMsIHUgPSAxOyB1IDwgYS5sOyB1KyspIHcgKz0gYVsieHMiICsgdV0gKyBhLmRhdGFbInhuIiArIHVdOwogICAgICAgICAgICAgICAgICAgICAgICBhLmUgPSB3ICsgYVsieHMiICsgdV0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEubCB8fCAoYS50eXBlID0gLTEsIGEueHMwID0gYS5lKSwgYS54Zmlyc3QgfHwgYQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFB0ID0gOTsKICAgICAgICAgICAgZm9yICgodCA9IHd0LnByb3RvdHlwZSkubCA9IHQucHIgPSAwOyAwIDwgLS1QdDspIHRbInhuIiArIFB0XSA9IDAsIHRbInhzIiArIFB0XSA9ICIiOwogICAgICAgICAgICB0LnhzMCA9ICIiLCB0Ll9uZXh0ID0gdC5fcHJldiA9IHQueGZpcnN0ID0gdC5kYXRhID0gdC5wbHVnaW4gPSB0LnNldFJhdGlvID0gdC5yeHAgPSBudWxsLCB0LmFwcGVuZFh0cmEgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzKSB7CiAgICAgICAgICAgICAgICB2YXIgYSA9IHRoaXMsCiAgICAgICAgICAgICAgICAgICAgbyA9IGEubDsKICAgICAgICAgICAgICAgIHJldHVybiBhWyJ4cyIgKyBvXSArPSBzICYmIChvIHx8IGFbInhzIiArIG9dKSA/ICIgIiArIHQgOiB0IHx8ICIiLCBpIHx8IDAgPT09IG8gfHwgYS5wbHVnaW4gPyAoYS5sKyssIGEudHlwZSA9IGEuc2V0UmF0aW8gPyAyIDogMSwgYVsieHMiICsgYS5sXSA9IG4gfHwgIiIsIDAgPCBvID8gKGEuZGF0YVsieG4iICsgb10gPSBlICsgaSwgYS5yeHBbInhuIiArIG9dID0gciwgYVsieG4iICsgb10gPSBlLCBhLnBsdWdpbiB8fCAoYS54Zmlyc3QgPSBuZXcgd3QoYSwgInhuIiArIG8sIGUsIGksIGEueGZpcnN0IHx8IGEsIDAsIGEubiwgciwgYS5wciksIGEueGZpcnN0LnhzMCA9IDApKSA6IChhLmRhdGEgPSB7CiAgICAgICAgICAgICAgICAgICAgczogZSArIGkKICAgICAgICAgICAgICAgIH0sIGEucnhwID0ge30sIGEucyA9IGUsIGEuYyA9IGksIGEuciA9IHIpKSA6IGFbInhzIiArIG9dICs9IGUgKyAobiB8fCAiIiksIGEKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdmFyIFN0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIGUgPSBlIHx8IHt9LCB0aGlzLnAgPSBlLnByZWZpeCAmJiBKKHQpIHx8IHQsIGdbdF0gPSBnW3RoaXMucF0gPSB0aGlzLCB0aGlzLmZvcm1hdCA9IGUuZm9ybWF0dGVyIHx8IHZ0KGUuZGVmYXVsdFZhbHVlLCBlLmNvbG9yLCBlLmNvbGxhcHNpYmxlLCBlLm11bHRpKSwgZS5wYXJzZXIgJiYgKHRoaXMucGFyc2UgPSBlLnBhcnNlciksIHRoaXMuY2xycyA9IGUuY29sb3IsIHRoaXMubXVsdGkgPSBlLm11bHRpLCB0aGlzLmtleXdvcmQgPSBlLmtleXdvcmQsIHRoaXMuZGZsdCA9IGUuZGVmYXVsdFZhbHVlLCB0aGlzLnByID0gZS5wcmlvcml0eSB8fCAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgT3QgPSByLl9yZWdpc3RlckNvbXBsZXhTcGVjaWFsUHJvcCA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICAib2JqZWN0IiAhPSB0eXBlb2YgZSAmJiAoZSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgcGFyc2VyOiBpCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIHIgPSB0LnNwbGl0KCIsIiksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBlLmRlZmF1bHRWYWx1ZTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSBpIHx8IFtzXSwgbiA9IDA7IG4gPCByLmxlbmd0aDsgbisrKSBlLnByZWZpeCA9IDAgPT09IG4gJiYgZS5wcmVmaXgsIGUuZGVmYXVsdFZhbHVlID0gaVtuXSB8fCBzLCBuZXcgU3QocltuXSwgZSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBrdCA9IHIuX3JlZ2lzdGVyUGx1Z2luUHJvcCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIWdbdF0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGwgPSB0LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdC5zdWJzdHIoMSkgKyAiUGx1Z2luIjsKICAgICAgICAgICAgICAgICAgICAgICAgT3QodCwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSBoLmNvbS5ncmVlbnNvY2sucGx1Z2luc1tsXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbyA/IChvLl9jc3NSZWdpc3RlcigpLCBnW2ldLnBhcnNlKHQsIGUsIGksIG4sIHIsIHMsIGEpKSA6IChaKCJFcnJvcjogIiArIGwgKyAiIGpzIGZpbGUgbm90IGxvYWRlZC4iKSwgcikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAodCA9IFN0LnByb3RvdHlwZSkucGFyc2VDb21wbGV4ID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgciwgcykgewogICAgICAgICAgICAgICAgdmFyIGEsIG8sIGwsIGgsIHUsIHAsIGYgPSB0aGlzLmtleXdvcmQ7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5tdWx0aSAmJiAoTi50ZXN0KGkpIHx8IE4udGVzdChlKSA/IChvID0gZS5yZXBsYWNlKE4sICJ8Iikuc3BsaXQoInwiKSwgbCA9IGkucmVwbGFjZShOLCAifCIpLnNwbGl0KCJ8IikpIDogZiAmJiAobyA9IFtlXSwgbCA9IFtpXSkpLCBsKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yIChoID0gbC5sZW5ndGggPiBvLmxlbmd0aCA/IGwubGVuZ3RoIDogby5sZW5ndGgsIGEgPSAwOyBhIDwgaDsgYSsrKSBlID0gb1thXSA9IG9bYV0gfHwgdGhpcy5kZmx0LCBpID0gbFthXSA9IGxbYV0gfHwgdGhpcy5kZmx0LCBmICYmICgodSA9IGUuaW5kZXhPZihmKSkgIT09IChwID0gaS5pbmRleE9mKGYpKSAmJiAoLTEgPT09IHAgPyBvW2FdID0gb1thXS5zcGxpdChmKS5qb2luKCIiKSA6IC0xID09PSB1ICYmIChvW2FdICs9ICIgIiArIGYpKSk7CiAgICAgICAgICAgICAgICAgICAgZSA9IG8uam9pbigiLCAiKSwgaSA9IGwuam9pbigiLCAiKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGJ0KHQsIHRoaXMucCwgZSwgaSwgdGhpcy5jbHJzLCB0aGlzLmRmbHQsIG4sIHRoaXMucHIsIHIsIHMpCiAgICAgICAgICAgIH0sIHQucGFyc2UgPSBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZUNvbXBsZXgodC5zdHlsZSwgdGhpcy5mb3JtYXQoZXQodCwgdGhpcy5wLCBPLCAhMSwgdGhpcy5kZmx0KSksIHRoaXMuZm9ybWF0KGUpLCByLCBzKQogICAgICAgICAgICB9LCBqLnJlZ2lzdGVyU3BlY2lhbFByb3AgPSBmdW5jdGlvbih0LCBsLCBoKSB7CiAgICAgICAgICAgICAgICBPdCh0LCB7CiAgICAgICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gbmV3IHd0KHQsIGksIDAsIDAsIHIsIDIsIGksICExLCBoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8ucGx1Z2luID0gcywgby5zZXRSYXRpbyA9IGwodCwgZSwgbi5fdHdlZW4sIGkpLCBvCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogaAogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSwgai51c2VTVkdUcmFuc2Zvcm1BdHRyID0gITA7CiAgICAgICAgICAgIHZhciBDdCwgQXQsIFJ0LCBNdCwgRXQsIER0ID0gInNjYWxlWCxzY2FsZVksc2NhbGVaLHgseSx6LHNrZXdYLHNrZXdZLHJvdGF0aW9uLHJvdGF0aW9uWCxyb3RhdGlvblkscGVyc3BlY3RpdmUseFBlcmNlbnQseVBlcmNlbnQiLnNwbGl0KCIsIiksCiAgICAgICAgICAgICAgICBMdCA9IEooInRyYW5zZm9ybSIpLAogICAgICAgICAgICAgICAgTnQgPSAkICsgInRyYW5zZm9ybSIsCiAgICAgICAgICAgICAgICBGdCA9IEooInRyYW5zZm9ybU9yaWdpbiIpLAogICAgICAgICAgICAgICAgSXQgPSBudWxsICE9PSBKKCJwZXJzcGVjdGl2ZSIpLAogICAgICAgICAgICAgICAgWHQgPSByLlRyYW5zZm9ybSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHRoaXMucGVyc3BlY3RpdmUgPSBwYXJzZUZsb2F0KGouZGVmYXVsdFRyYW5zZm9ybVBlcnNwZWN0aXZlKSB8fCAwLCB0aGlzLmZvcmNlM0QgPSAhKCExID09PSBqLmRlZmF1bHRGb3JjZTNEIHx8ICFJdCkgJiYgKGouZGVmYXVsdEZvcmNlM0QgfHwgImF1dG8iKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHp0ID0gX2dzU2NvcGUuU1ZHRWxlbWVudCwKICAgICAgICAgICAgICAgIEJ0ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuLCByID0gWC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwgdCksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSAvKFthLXpdKShbQS1aXSkvZzsKICAgICAgICAgICAgICAgICAgICBmb3IgKG4gaW4gaSkgci5zZXRBdHRyaWJ1dGVOUyhudWxsLCBuLnJlcGxhY2UocywgIiQxLSQyIikudG9Mb3dlckNhc2UoKSwgaVtuXSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuYXBwZW5kQ2hpbGQociksIHIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBqdCA9IFguZG9jdW1lbnRFbGVtZW50IHx8IHt9LAogICAgICAgICAgICAgICAgWXQgPSAoRXQgPSBTIHx8IC9BbmRyb2lkL2kudGVzdChxKSAmJiAhX2dzU2NvcGUuY2hyb21lLCBYLmNyZWF0ZUVsZW1lbnROUyAmJiAhRXQgJiYgKEF0ID0gQnQoInN2ZyIsIGp0KSwgTXQgPSAoUnQgPSBCdCgicmVjdCIsIEF0LCB7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwLAogICAgICAgICAgICAgICAgICAgIHg6IDEwMAogICAgICAgICAgICAgICAgfSkpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLCBSdC5zdHlsZVtGdF0gPSAiNTAlIDUwJSIsIFJ0LnN0eWxlW0x0XSA9ICJzY2FsZVgoMC41KSIsIEV0ID0gTXQgPT09IFJ0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICYmICEoWSAmJiBJdCksIGp0LnJlbW92ZUNoaWxkKEF0KSksIEV0KSwKICAgICAgICAgICAgICAgIFZ0ID0gZnVuY3Rpb24odCwgZSwgaSwgbiwgciwgcykgewogICAgICAgICAgICAgICAgICAgIHZhciBhLCBvLCBsLCBoLCB1LCBwLCBmLCBjLCBkLCBfLCBnLCBtLCB2LCB5LCB4ID0gdC5fZ3NUcmFuc2Zvcm0sCiAgICAgICAgICAgICAgICAgICAgICAgIHcgPSBxdCh0LCAhMCk7CiAgICAgICAgICAgICAgICAgICAgeCAmJiAodiA9IHgueE9yaWdpbiwgeSA9IHgueU9yaWdpbiksICghbiB8fCAoYSA9IG4uc3BsaXQoIiAiKSkubGVuZ3RoIDwgMikgJiYgKDAgPT09IChmID0gdC5nZXRCQm94KCkpLnggJiYgMCA9PT0gZi55ICYmIGYud2lkdGggKyBmLmhlaWdodCA9PT0gMCAmJiAoZiA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgeDogcGFyc2VGbG9hdCh0Lmhhc0F0dHJpYnV0ZSgieCIpID8gdC5nZXRBdHRyaWJ1dGUoIngiKSA6IHQuaGFzQXR0cmlidXRlKCJjeCIpID8gdC5nZXRBdHRyaWJ1dGUoImN4IikgOiAwKSB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICB5OiBwYXJzZUZsb2F0KHQuaGFzQXR0cmlidXRlKCJ5IikgPyB0LmdldEF0dHJpYnV0ZSgieSIpIDogdC5oYXNBdHRyaWJ1dGUoImN5IikgPyB0LmdldEF0dHJpYnV0ZSgiY3kiKSA6IDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAKICAgICAgICAgICAgICAgICAgICB9KSwgYSA9IFsoLTEgIT09IChlID0gaHQoZSkuc3BsaXQoIiAiKSlbMF0uaW5kZXhPZigiJSIpID8gcGFyc2VGbG9hdChlWzBdKSAvIDEwMCAqIGYud2lkdGggOiBwYXJzZUZsb2F0KGVbMF0pKSArIGYueCwgKC0xICE9PSBlWzFdLmluZGV4T2YoIiUiKSA/IHBhcnNlRmxvYXQoZVsxXSkgLyAxMDAgKiBmLmhlaWdodCA6IHBhcnNlRmxvYXQoZVsxXSkpICsgZi55XSksIGkueE9yaWdpbiA9IGggPSBwYXJzZUZsb2F0KGFbMF0pLCBpLnlPcmlnaW4gPSB1ID0gcGFyc2VGbG9hdChhWzFdKSwgbiAmJiB3ICE9PSBVdCAmJiAocCA9IHdbMF0sIGYgPSB3WzFdLCBjID0gd1syXSwgZCA9IHdbM10sIF8gPSB3WzRdLCBnID0gd1s1XSwgKG0gPSBwICogZCAtIGYgKiBjKSAmJiAobyA9IGggKiAoZCAvIG0pICsgdSAqICgtYyAvIG0pICsgKGMgKiBnIC0gZCAqIF8pIC8gbSwgbCA9IGggKiAoLWYgLyBtKSArIHUgKiAocCAvIG0pIC0gKHAgKiBnIC0gZiAqIF8pIC8gbSwgaCA9IGkueE9yaWdpbiA9IGFbMF0gPSBvLCB1ID0gaS55T3JpZ2luID0gYVsxXSA9IGwpKSwgeCAmJiAocyAmJiAoaS54T2Zmc2V0ID0geC54T2Zmc2V0LCBpLnlPZmZzZXQgPSB4LnlPZmZzZXQsIHggPSBpKSwgciB8fCAhMSAhPT0gciAmJiAhMSAhPT0gai5kZWZhdWx0U21vb3RoT3JpZ2luID8gKG8gPSBoIC0gdiwgbCA9IHUgLSB5LCB4LnhPZmZzZXQgKz0gbyAqIHdbMF0gKyBsICogd1syXSAtIG8sIHgueU9mZnNldCArPSBvICogd1sxXSArIGwgKiB3WzNdIC0gbCkgOiB4LnhPZmZzZXQgPSB4LnlPZmZzZXQgPSAwKSwgcyB8fCB0LnNldEF0dHJpYnV0ZSgiZGF0YS1zdmctb3JpZ2luIiwgYS5qb2luKCIgIikpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgR3QgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGkgPSB6KCJzdmciLCB0aGlzLm93bmVyU1ZHRWxlbWVudC5nZXRBdHRyaWJ1dGUoInhtbG5zIikgfHwgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiksCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSB0aGlzLnBhcmVudE5vZGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzLm5leHRTaWJsaW5nLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gdGhpcy5zdHlsZS5jc3NUZXh0OwogICAgICAgICAgICAgICAgICAgIGlmIChqdC5hcHBlbmRDaGlsZChpKSwgaS5hcHBlbmRDaGlsZCh0aGlzKSwgdGhpcy5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIiwgdCkgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgZSA9IHRoaXMuZ2V0QkJveCgpLCB0aGlzLl9vcmlnaW5hbEdldEJCb3ggPSB0aGlzLmdldEJCb3gsIHRoaXMuZ2V0QkJveCA9IEd0CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAodCkge30gZWxzZSB0aGlzLl9vcmlnaW5hbEdldEJCb3ggJiYgKGUgPSB0aGlzLl9vcmlnaW5hbEdldEJCb3goKSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHIgPyBuLmluc2VydEJlZm9yZSh0aGlzLCByKSA6IG4uYXBwZW5kQ2hpbGQodGhpcyksIGp0LnJlbW92ZUNoaWxkKGkpLCB0aGlzLnN0eWxlLmNzc1RleHQgPSBzLCBlCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgV3QgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICEoISh6dCAmJiB0LmdldENUTSAmJiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5nZXRCQm94KCkKICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAodCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEd0LmNhbGwoZSwgITApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KHQpKSB8fCB0LnBhcmVudE5vZGUgJiYgIXQub3duZXJTVkdFbGVtZW50KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFV0ID0gWzEsIDAsIDAsIDEsIDAsIDBdLAogICAgICAgICAgICAgICAgcXQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4sIHIsIHMsIGEsIG8sIGwgPSB0Ll9nc1RyYW5zZm9ybSB8fCBuZXcgWHQsCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSB0LnN0eWxlOwogICAgICAgICAgICAgICAgICAgIGlmIChMdCA/IG4gPSBldCh0LCBOdCwgbnVsbCwgITApIDogdC5jdXJyZW50U3R5bGUgJiYgKG4gPSAobiA9IHQuY3VycmVudFN0eWxlLmZpbHRlci5tYXRjaChmKSkgJiYgNCA9PT0gbi5sZW5ndGggPyBbblswXS5zdWJzdHIoNCksIE51bWJlcihuWzJdLnN1YnN0cig0KSksIE51bWJlcihuWzFdLnN1YnN0cig0KSksIG5bM10uc3Vic3RyKDQpLCBsLnggfHwgMCwgbC55IHx8IDBdLmpvaW4oIiwiKSA6ICIiKSwgKGkgPSAhbiB8fCAibm9uZSIgPT09IG4gfHwgIm1hdHJpeCgxLCAwLCAwLCAxLCAwLCAwKSIgPT09IG4pICYmIEx0ICYmICgobyA9ICJub25lIiA9PT0gdHQodCkuZGlzcGxheSkgfHwgIXQucGFyZW50Tm9kZSkgJiYgKG8gJiYgKHMgPSBoLmRpc3BsYXksIGguZGlzcGxheSA9ICJibG9jayIpLCB0LnBhcmVudE5vZGUgfHwgKGEgPSAxLCBqdC5hcHBlbmRDaGlsZCh0KSksIGkgPSAhKG4gPSBldCh0LCBOdCwgbnVsbCwgITApKSB8fCAibm9uZSIgPT09IG4gfHwgIm1hdHJpeCgxLCAwLCAwLCAxLCAwLCAwKSIgPT09IG4sIHMgPyBoLmRpc3BsYXkgPSBzIDogbyAmJiBLdChoLCAiZGlzcGxheSIpLCBhICYmIGp0LnJlbW92ZUNoaWxkKHQpKSwgKGwuc3ZnIHx8IHQuZ2V0Q1RNICYmIFd0KHQpKSAmJiAoaSAmJiAtMSAhPT0gKGhbTHRdICsgIiIpLmluZGV4T2YoIm1hdHJpeCIpICYmIChuID0gaFtMdF0sIGkgPSAwKSwgciA9IHQuZ2V0QXR0cmlidXRlKCJ0cmFuc2Zvcm0iKSwgaSAmJiByICYmICgtMSAhPT0gci5pbmRleE9mKCJtYXRyaXgiKSA/IChuID0gciwgaSA9IDApIDogLTEgIT09IHIuaW5kZXhPZigidHJhbnNsYXRlIikgJiYgKG4gPSAibWF0cml4KDEsMCwwLDEsIiArIHIubWF0Y2goLyg/OlwtfFxiKVtcZFwtXC5lXStcYi9naSkuam9pbigiLCIpICsgIikiLCBpID0gMCkpKSwgaSkgcmV0dXJuIFV0OwogICAgICAgICAgICAgICAgICAgIGZvciAociA9IChuIHx8ICIiKS5tYXRjaChSKSB8fCBbXSwgUHQgPSByLmxlbmd0aDsgLSAxIDwgLS1QdDspIHMgPSBOdW1iZXIocltQdF0pLCByW1B0XSA9IChhID0gcyAtIChzIHw9IDApKSA/ICgxZTUgKiBhICsgKGEgPCAwID8gLS41IDogLjUpIHwgMCkgLyAxZTUgKyBzIDogczsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSAmJiA2IDwgci5sZW5ndGggPyBbclswXSwgclsxXSwgcls0XSwgcls1XSwgclsxMl0sIHJbMTNdXSA6IHIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBRdCA9IHIuZ2V0VHJhbnNmb3JtID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIGlmICh0Ll9nc1RyYW5zZm9ybSAmJiBpICYmICFuKSByZXR1cm4gdC5fZ3NUcmFuc2Zvcm07CiAgICAgICAgICAgICAgICAgICAgdmFyIHIsIHMsIGEsIG8sIGwsIGgsIHUgPSBpICYmIHQuX2dzVHJhbnNmb3JtIHx8IG5ldyBYdCwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IHUuc2NhbGVYIDwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgZiA9IEl0ICYmIChwYXJzZUZsb2F0KGV0KHQsIEZ0LCBlLCAhMSwgIjAgMCAwIikuc3BsaXQoIiAiKVsyXSkgfHwgdS56T3JpZ2luKSB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gcGFyc2VGbG9hdChqLmRlZmF1bHRUcmFuc2Zvcm1QZXJzcGVjdGl2ZSkgfHwgMDsKICAgICAgICAgICAgICAgICAgICBpZiAodS5zdmcgPSAhKCF0LmdldENUTSB8fCAhV3QodCkpLCB1LnN2ZyAmJiAoVnQodCwgZXQodCwgRnQsIGUsICExLCAiNTAlIDUwJSIpICsgIiIsIHUsIHQuZ2V0QXR0cmlidXRlKCJkYXRhLXN2Zy1vcmlnaW4iKSksIEN0ID0gai51c2VTVkdUcmFuc2Zvcm1BdHRyIHx8IFl0KSwgKHIgPSBxdCh0KSkgIT09IFV0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgxNiA9PT0gci5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkLCBfLCBnLCBtLCB2LCB5ID0gclswXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4ID0gclsxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ID0gclsyXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUID0gclszXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiID0gcls0XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQID0gcls1XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTID0gcls2XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPID0gcls3XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrID0gcls4XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gcls5XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID0gclsxMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUiA9IHJbMTJdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE0gPSByWzEzXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFID0gclsxNF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRCA9IHJbMTFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEwgPSBNYXRoLmF0YW4yKFMsIEEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdS56T3JpZ2luICYmIChSID0gayAqIChFID0gLXUuek9yaWdpbikgLSByWzEyXSwgTSA9IEMgKiBFIC0gclsxM10sIEUgPSBBICogRSArIHUuek9yaWdpbiAtIHJbMTRdKSwgdS5yb3RhdGlvblggPSBMICogRywgTCAmJiAoZCA9IGIgKiAobSA9IE1hdGguY29zKC1MKSkgKyBrICogKHYgPSBNYXRoLnNpbigtTCkpLCBfID0gUCAqIG0gKyBDICogdiwgZyA9IFMgKiBtICsgQSAqIHYsIGsgPSBiICogLXYgKyBrICogbSwgQyA9IFAgKiAtdiArIEMgKiBtLCBBID0gUyAqIC12ICsgQSAqIG0sIEQgPSBPICogLXYgKyBEICogbSwgYiA9IGQsIFAgPSBfLCBTID0gZyksIEwgPSBNYXRoLmF0YW4yKC13LCBBKSwgdS5yb3RhdGlvblkgPSBMICogRywgTCAmJiAoXyA9IHggKiAobSA9IE1hdGguY29zKC1MKSkgLSBDICogKHYgPSBNYXRoLnNpbigtTCkpLCBnID0gdyAqIG0gLSBBICogdiwgQyA9IHggKiB2ICsgQyAqIG0sIEEgPSB3ICogdiArIEEgKiBtLCBEID0gVCAqIHYgKyBEICogbSwgeSA9IGQgPSB5ICogbSAtIGsgKiB2LCB4ID0gXywgdyA9IGcpLCBMID0gTWF0aC5hdGFuMih4LCB5KSwgdS5yb3RhdGlvbiA9IEwgKiBHLCBMICYmICh5ID0geSAqIChtID0gTWF0aC5jb3MoLUwpKSArIGIgKiAodiA9IE1hdGguc2luKC1MKSksIF8gPSB4ICogbSArIFAgKiB2LCBQID0geCAqIC12ICsgUCAqIG0sIFMgPSB3ICogLXYgKyBTICogbSwgeCA9IF8pLCB1LnJvdGF0aW9uWCAmJiAzNTkuOSA8IE1hdGguYWJzKHUucm90YXRpb25YKSArIE1hdGguYWJzKHUucm90YXRpb24pICYmICh1LnJvdGF0aW9uWCA9IHUucm90YXRpb24gPSAwLCB1LnJvdGF0aW9uWSA9IDE4MCAtIHUucm90YXRpb25ZKSwgdS5zY2FsZVggPSAoMWU1ICogTWF0aC5zcXJ0KHkgKiB5ICsgeCAqIHgpICsgLjUgfCAwKSAvIDFlNSwgdS5zY2FsZVkgPSAoMWU1ICogTWF0aC5zcXJ0KFAgKiBQICsgQyAqIEMpICsgLjUgfCAwKSAvIDFlNSwgdS5zY2FsZVogPSAoMWU1ICogTWF0aC5zcXJ0KFMgKiBTICsgQSAqIEEpICsgLjUgfCAwKSAvIDFlNSwgdS5yb3RhdGlvblggfHwgdS5yb3RhdGlvblkgPyB1LnNrZXdYID0gMCA6ICh1LnNrZXdYID0gYiB8fCBQID8gTWF0aC5hdGFuMihiLCBQKSAqIEcgKyB1LnJvdGF0aW9uIDogdS5za2V3WCB8fCAwLCA5MCA8IE1hdGguYWJzKHUuc2tld1gpICYmIE1hdGguYWJzKHUuc2tld1gpIDwgMjcwICYmIChwID8gKHUuc2NhbGVYICo9IC0xLCB1LnNrZXdYICs9IHUucm90YXRpb24gPD0gMCA/IDE4MCA6IC0xODAsIHUucm90YXRpb24gKz0gdS5yb3RhdGlvbiA8PSAwID8gMTgwIDogLTE4MCkgOiAodS5zY2FsZVkgKj0gLTEsIHUuc2tld1ggKz0gdS5za2V3WCA8PSAwID8gMTgwIDogLTE4MCkpKSwgdS5wZXJzcGVjdGl2ZSA9IEQgPyAxIC8gKEQgPCAwID8gLUQgOiBEKSA6IDAsIHUueCA9IFIsIHUueSA9IE0sIHUueiA9IEUsIHUuc3ZnICYmICh1LnggLT0gdS54T3JpZ2luIC0gKHUueE9yaWdpbiAqIHkgLSB1LnlPcmlnaW4gKiBiKSwgdS55IC09IHUueU9yaWdpbiAtICh1LnlPcmlnaW4gKiB4IC0gdS54T3JpZ2luICogUCkpCiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIUl0IHx8IG4gfHwgIXIubGVuZ3RoIHx8IHUueCAhPT0gcls0XSB8fCB1LnkgIT09IHJbNV0gfHwgIXUucm90YXRpb25YICYmICF1LnJvdGF0aW9uWSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIE4gPSA2IDw9IHIubGVuZ3RoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEYgPSBOID8gclswXSA6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSSA9IHJbMV0gfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYID0gclsyXSB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSBOID8gclszXSA6IDE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1LnggPSByWzRdIHx8IDAsIHUueSA9IHJbNV0gfHwgMCwgYSA9IE1hdGguc3FydChGICogRiArIEkgKiBJKSwgbyA9IE1hdGguc3FydCh6ICogeiArIFggKiBYKSwgbCA9IEYgfHwgSSA/IE1hdGguYXRhbjIoSSwgRikgKiBHIDogdS5yb3RhdGlvbiB8fCAwLCBoID0gWCB8fCB6ID8gTWF0aC5hdGFuMihYLCB6KSAqIEcgKyBsIDogdS5za2V3WCB8fCAwLCA5MCA8IE1hdGguYWJzKGgpICYmIE1hdGguYWJzKGgpIDwgMjcwICYmIChwID8gKGEgKj0gLTEsIGggKz0gbCA8PSAwID8gMTgwIDogLTE4MCwgbCArPSBsIDw9IDAgPyAxODAgOiAtMTgwKSA6IChvICo9IC0xLCBoICs9IGggPD0gMCA/IDE4MCA6IC0xODApKSwgdS5zY2FsZVggPSBhLCB1LnNjYWxlWSA9IG8sIHUucm90YXRpb24gPSBsLCB1LnNrZXdYID0gaCwgSXQgJiYgKHUucm90YXRpb25YID0gdS5yb3RhdGlvblkgPSB1LnogPSAwLCB1LnBlcnNwZWN0aXZlID0gYywgdS5zY2FsZVogPSAxKSwgdS5zdmcgJiYgKHUueCAtPSB1LnhPcmlnaW4gLSAodS54T3JpZ2luICogRiArIHUueU9yaWdpbiAqIFgpLCB1LnkgLT0gdS55T3JpZ2luIC0gKHUueE9yaWdpbiAqIEkgKyB1LnlPcmlnaW4gKiB6KSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHMgaW4gdS56T3JpZ2luID0gZiwgdSkgdVtzXSA8IDJlLTUgJiYgLTJlLTUgPCB1W3NdICYmICh1W3NdID0gMCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkgJiYgKCh0Ll9nc1RyYW5zZm9ybSA9IHUpLnN2ZyAmJiAoQ3QgJiYgdC5zdHlsZVtMdF0gPyBCLmRlbGF5ZWRDYWxsKC4wMDEsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBLdCh0LnN0eWxlLCBMdCkKICAgICAgICAgICAgICAgICAgICB9KSA6ICFDdCAmJiB0LmdldEF0dHJpYnV0ZSgidHJhbnNmb3JtIikgJiYgQi5kZWxheWVkQ2FsbCguMDAxLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdC5yZW1vdmVBdHRyaWJ1dGUoInRyYW5zZm9ybSIpCiAgICAgICAgICAgICAgICAgICAgfSkpKSwgdQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIEh0ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gdGhpcy5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgICByID0gLW4ucm90YXRpb24gKiBWLAogICAgICAgICAgICAgICAgICAgICAgICBzID0gciArIG4uc2tld1ggKiBWLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gMWU1LAogICAgICAgICAgICAgICAgICAgICAgICBvID0gKE1hdGguY29zKHIpICogbi5zY2FsZVggKiBhIHwgMCkgLyBhLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gKE1hdGguc2luKHIpICogbi5zY2FsZVggKiBhIHwgMCkgLyBhLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gKE1hdGguc2luKHMpICogLW4uc2NhbGVZICogYSB8IDApIC8gYSwKICAgICAgICAgICAgICAgICAgICAgICAgdSA9IChNYXRoLmNvcyhzKSAqIG4uc2NhbGVZICogYSB8IDApIC8gYSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IHRoaXMudC5zdHlsZSwKICAgICAgICAgICAgICAgICAgICAgICAgZiA9IHRoaXMudC5jdXJyZW50U3R5bGU7CiAgICAgICAgICAgICAgICAgICAgaWYgKGYpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGwsIGwgPSAtaCwgaCA9IC1pLCBlID0gZi5maWx0ZXIsIHAuZmlsdGVyID0gIiI7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjLCBkLCBfID0gdGhpcy50Lm9mZnNldFdpZHRoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZyA9IHRoaXMudC5vZmZzZXRIZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtID0gImFic29sdXRlIiAhPT0gZi5wb3NpdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYgPSAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9IiArIG8gKyAiLCBNMTI9IiArIGwgKyAiLCBNMjE9IiArIGggKyAiLCBNMjI9IiArIHUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ID0gbi54ICsgXyAqIG4ueFBlcmNlbnQgLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4ID0gbi55ICsgZyAqIG4ueVBlcmNlbnQgLyAxMDA7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChudWxsICE9IG4ub3ggJiYgKHkgKz0gKGMgPSAobi5veHAgPyBfICogbi5veCAqIC4wMSA6IG4ub3gpIC0gXyAvIDIpIC0gKGMgKiBvICsgKGQgPSAobi5veXAgPyBnICogbi5veSAqIC4wMSA6IG4ub3kpIC0gZyAvIDIpICogbCksIHggKz0gZCAtIChjICogaCArIGQgKiB1KSksIG0gPyB2ICs9ICIsIER4PSIgKyAoKGMgPSBfIC8gMikgLSAoYyAqIG8gKyAoZCA9IGcgLyAyKSAqIGwpICsgeSkgKyAiLCBEeT0iICsgKGQgLSAoYyAqIGggKyBkICogdSkgKyB4KSArICIpIiA6IHYgKz0gIiwgc2l6aW5nTWV0aG9kPSdhdXRvIGV4cGFuZCcpIiwgLTEgIT09IGUuaW5kZXhPZigiRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KCIpID8gcC5maWx0ZXIgPSBlLnJlcGxhY2UoTCwgdikgOiBwLmZpbHRlciA9IHYgKyAiICIgKyBlLCAoMCA9PT0gdCB8fCAxID09PSB0KSAmJiAxID09PSBvICYmIDAgPT09IGwgJiYgMCA9PT0gaCAmJiAxID09PSB1ICYmIChtICYmIC0xID09PSB2LmluZGV4T2YoIkR4PTAsIER5PTAiKSB8fCBELnRlc3QoZSkgJiYgMTAwICE9PSBwYXJzZUZsb2F0KFJlZ0V4cC4kMSkgfHwgLTEgPT09IGUuaW5kZXhPZihlLmluZGV4T2YoIkFscGhhIikpICYmIHAucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKSksICFtKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdywgVCwgYiwgUCA9IFMgPCA4ID8gMSA6IC0xOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjID0gbi5pZU9mZnNldFggfHwgMCwgZCA9IG4uaWVPZmZzZXRZIHx8IDAsIG4uaWVPZmZzZXRYID0gTWF0aC5yb3VuZCgoXyAtICgobyA8IDAgPyAtbyA6IG8pICogXyArIChsIDwgMCA/IC1sIDogbCkgKiBnKSkgLyAyICsgeSksIG4uaWVPZmZzZXRZID0gTWF0aC5yb3VuZCgoZyAtICgodSA8IDAgPyAtdSA6IHUpICogZyArIChoIDwgMCA/IC1oIDogaCkgKiBfKSkgLyAyICsgeCksIFB0ID0gMDsgUHQgPCA0OyBQdCsrKSBiID0gKGkgPSAtMSAhPT0gKHcgPSBmW1QgPSBvdFtQdF1dKS5pbmRleE9mKCJweCIpID8gcGFyc2VGbG9hdCh3KSA6IGl0KHRoaXMudCwgVCwgcGFyc2VGbG9hdCh3KSwgdy5yZXBsYWNlKEUsICIiKSkgfHwgMCkgIT09IG5bVF0gPyBQdCA8IDIgPyAtbi5pZU9mZnNldFggOiAtbi5pZU9mZnNldFkgOiBQdCA8IDIgPyBjIC0gbi5pZU9mZnNldFggOiBkIC0gbi5pZU9mZnNldFksIHBbVF0gPSAobltUXSA9IE1hdGgucm91bmQoaSAtIGIgKiAoMCA9PT0gUHQgfHwgMiA9PT0gUHQgPyAxIDogUCkpKSArICJweCIKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBadCA9IHIuc2V0M0RUcmFuc2Zvcm1SYXRpbyA9IHIuc2V0VHJhbnNmb3JtUmF0aW8gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGksIG4sIHIsIHMsIGEsIG8sIGwsIGgsIHUsIHAsIGYsIGMsIGQsIF8sIGcsIG0sIHYsIHksIHgsIHcsIFQsIGIsIFAgPSB0aGlzLmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgIFMgPSB0aGlzLnQuc3R5bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIE8gPSBQLnJvdGF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICBrID0gUC5yb3RhdGlvblgsCiAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBQLnJvdGF0aW9uWSwKICAgICAgICAgICAgICAgICAgICAgICAgQSA9IFAuc2NhbGVYLAogICAgICAgICAgICAgICAgICAgICAgICBSID0gUC5zY2FsZVksCiAgICAgICAgICAgICAgICAgICAgICAgIE0gPSBQLnNjYWxlWiwKICAgICAgICAgICAgICAgICAgICAgICAgRSA9IFAueCwKICAgICAgICAgICAgICAgICAgICAgICAgRCA9IFAueSwKICAgICAgICAgICAgICAgICAgICAgICAgTCA9IFAueiwKICAgICAgICAgICAgICAgICAgICAgICAgTiA9IFAuc3ZnLAogICAgICAgICAgICAgICAgICAgICAgICBGID0gUC5wZXJzcGVjdGl2ZSwKICAgICAgICAgICAgICAgICAgICAgICAgSSA9IFAuZm9yY2UzRCwKICAgICAgICAgICAgICAgICAgICAgICAgWCA9IFAuc2tld1ksCiAgICAgICAgICAgICAgICAgICAgICAgIHogPSBQLnNrZXdYOwogICAgICAgICAgICAgICAgICAgIGlmIChYICYmICh6ICs9IFgsIE8gKz0gWCksICEoKDEgIT09IHQgJiYgMCAhPT0gdCB8fCAiYXV0byIgIT09IEkgfHwgdGhpcy50d2Vlbi5fdG90YWxUaW1lICE9PSB0aGlzLnR3ZWVuLl90b3RhbER1cmF0aW9uICYmIHRoaXMudHdlZW4uX3RvdGFsVGltZSkgJiYgSSB8fCBMIHx8IEYgfHwgQyB8fCBrIHx8IDEgIT09IE0pIHx8IEN0ICYmIE4gfHwgIUl0KSBPIHx8IHogfHwgTiA/IChPICo9IFYsIFQgPSB6ICogViwgYiA9IDFlNSwgaSA9IE1hdGguY29zKE8pICogQSwgcyA9IE1hdGguc2luKE8pICogQSwgbiA9IE1hdGguc2luKE8gLSBUKSAqIC1SLCBhID0gTWF0aC5jb3MoTyAtIFQpICogUiwgVCAmJiAic2ltcGxlIiA9PT0gUC5za2V3VHlwZSAmJiAoZSA9IE1hdGgudGFuKFQgLSBYICogViksIG4gKj0gZSA9IE1hdGguc3FydCgxICsgZSAqIGUpLCBhICo9IGUsIFggJiYgKGUgPSBNYXRoLnRhbihYICogViksIGkgKj0gZSA9IE1hdGguc3FydCgxICsgZSAqIGUpLCBzICo9IGUpKSwgTiAmJiAoRSArPSBQLnhPcmlnaW4gLSAoUC54T3JpZ2luICogaSArIFAueU9yaWdpbiAqIG4pICsgUC54T2Zmc2V0LCBEICs9IFAueU9yaWdpbiAtIChQLnhPcmlnaW4gKiBzICsgUC55T3JpZ2luICogYSkgKyBQLnlPZmZzZXQsIEN0ICYmIChQLnhQZXJjZW50IHx8IFAueVBlcmNlbnQpICYmIChfID0gdGhpcy50LmdldEJCb3goKSwgRSArPSAuMDEgKiBQLnhQZXJjZW50ICogXy53aWR0aCwgRCArPSAuMDEgKiBQLnlQZXJjZW50ICogXy5oZWlnaHQpLCBFIDwgKF8gPSAxZS02KSAmJiAtXyA8IEUgJiYgKEUgPSAwKSwgRCA8IF8gJiYgLV8gPCBEICYmIChEID0gMCkpLCB5ID0gKGkgKiBiIHwgMCkgLyBiICsgIiwiICsgKHMgKiBiIHwgMCkgLyBiICsgIiwiICsgKG4gKiBiIHwgMCkgLyBiICsgIiwiICsgKGEgKiBiIHwgMCkgLyBiICsgIiwiICsgRSArICIsIiArIEQgKyAiKSIsIE4gJiYgQ3QgPyB0aGlzLnQuc2V0QXR0cmlidXRlKCJ0cmFuc2Zvcm0iLCAibWF0cml4KCIgKyB5KSA6IFNbTHRdID0gKFAueFBlcmNlbnQgfHwgUC55UGVyY2VudCA/ICJ0cmFuc2xhdGUoIiArIFAueFBlcmNlbnQgKyAiJSwiICsgUC55UGVyY2VudCArICIlKSBtYXRyaXgoIiA6ICJtYXRyaXgoIikgKyB5KSA6IFNbTHRdID0gKFAueFBlcmNlbnQgfHwgUC55UGVyY2VudCA/ICJ0cmFuc2xhdGUoIiArIFAueFBlcmNlbnQgKyAiJSwiICsgUC55UGVyY2VudCArICIlKSBtYXRyaXgoIiA6ICJtYXRyaXgoIikgKyBBICsgIiwwLDAsIiArIFIgKyAiLCIgKyBFICsgIiwiICsgRCArICIpIjsKICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFkgJiYgKEEgPCAoXyA9IDFlLTQpICYmIC1fIDwgQSAmJiAoQSA9IE0gPSAyZS01KSwgUiA8IF8gJiYgLV8gPCBSICYmIChSID0gTSA9IDJlLTUpLCAhRiB8fCBQLnogfHwgUC5yb3RhdGlvblggfHwgUC5yb3RhdGlvblkgfHwgKEYgPSAwKSksIE8gfHwgeikgTyAqPSBWLCBnID0gaSA9IE1hdGguY29zKE8pLCBtID0gcyA9IE1hdGguc2luKE8pLCB6ICYmIChPIC09IHogKiBWLCBnID0gTWF0aC5jb3MoTyksIG0gPSBNYXRoLnNpbihPKSwgInNpbXBsZSIgPT09IFAuc2tld1R5cGUgJiYgKGUgPSBNYXRoLnRhbigoeiAtIFgpICogViksIGcgKj0gZSA9IE1hdGguc3FydCgxICsgZSAqIGUpLCBtICo9IGUsIFAuc2tld1kgJiYgKGUgPSBNYXRoLnRhbihYICogViksIGkgKj0gZSA9IE1hdGguc3FydCgxICsgZSAqIGUpLCBzICo9IGUpKSksIG4gPSAtbSwgYSA9IGc7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEoQyB8fCBrIHx8IDEgIT09IE0gfHwgRiB8fCBOKSkgcmV0dXJuIHZvaWQoU1tMdF0gPSAoUC54UGVyY2VudCB8fCBQLnlQZXJjZW50ID8gInRyYW5zbGF0ZSgiICsgUC54UGVyY2VudCArICIlLCIgKyBQLnlQZXJjZW50ICsgIiUpIHRyYW5zbGF0ZTNkKCIgOiAidHJhbnNsYXRlM2QoIikgKyBFICsgInB4LCIgKyBEICsgInB4LCIgKyBMICsgInB4KSIgKyAoMSAhPT0gQSB8fCAxICE9PSBSID8gIiBzY2FsZSgiICsgQSArICIsIiArIFIgKyAiKSIgOiAiIikpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGEgPSAxLCBuID0gcyA9IDAKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB1ID0gMSwgciA9IG8gPSBsID0gaCA9IHAgPSBmID0gMCwgYyA9IEYgPyAtMSAvIEYgOiAwLCBkID0gUC56T3JpZ2luLCBfID0gMWUtNiwgeCA9ICIsIiwgdyA9ICIwIiwgKE8gPSBDICogVikgJiYgKGcgPSBNYXRoLmNvcyhPKSwgcCA9IGMgKiAobCA9IC0obSA9IE1hdGguc2luKE8pKSksIHIgPSBpICogbSwgbyA9IHMgKiBtLCBjICo9IHUgPSBnLCBpICo9IGcsIHMgKj0gZyksIChPID0gayAqIFYpICYmIChlID0gbiAqIChnID0gTWF0aC5jb3MoTykpICsgciAqIChtID0gTWF0aC5zaW4oTykpLCB2ID0gYSAqIGcgKyBvICogbSwgaCA9IHUgKiBtLCBmID0gYyAqIG0sIHIgPSBuICogLW0gKyByICogZywgbyA9IGEgKiAtbSArIG8gKiBnLCB1ICo9IGcsIGMgKj0gZywgbiA9IGUsIGEgPSB2KSwgMSAhPT0gTSAmJiAociAqPSBNLCBvICo9IE0sIHUgKj0gTSwgYyAqPSBNKSwgMSAhPT0gUiAmJiAobiAqPSBSLCBhICo9IFIsIGggKj0gUiwgZiAqPSBSKSwgMSAhPT0gQSAmJiAoaSAqPSBBLCBzICo9IEEsIGwgKj0gQSwgcCAqPSBBKSwgKGQgfHwgTikgJiYgKGQgJiYgKEUgKz0gciAqIC1kLCBEICs9IG8gKiAtZCwgTCArPSB1ICogLWQgKyBkKSwgTiAmJiAoRSArPSBQLnhPcmlnaW4gLSAoUC54T3JpZ2luICogaSArIFAueU9yaWdpbiAqIG4pICsgUC54T2Zmc2V0LCBEICs9IFAueU9yaWdpbiAtIChQLnhPcmlnaW4gKiBzICsgUC55T3JpZ2luICogYSkgKyBQLnlPZmZzZXQpLCBFIDwgXyAmJiAtXyA8IEUgJiYgKEUgPSB3KSwgRCA8IF8gJiYgLV8gPCBEICYmIChEID0gdyksIEwgPCBfICYmIC1fIDwgTCAmJiAoTCA9IDApKSwgeSA9IFAueFBlcmNlbnQgfHwgUC55UGVyY2VudCA/ICJ0cmFuc2xhdGUoIiArIFAueFBlcmNlbnQgKyAiJSwiICsgUC55UGVyY2VudCArICIlKSBtYXRyaXgzZCgiIDogIm1hdHJpeDNkKCIsIHkgKz0gKGkgPCBfICYmIC1fIDwgaSA/IHcgOiBpKSArIHggKyAocyA8IF8gJiYgLV8gPCBzID8gdyA6IHMpICsgeCArIChsIDwgXyAmJiAtXyA8IGwgPyB3IDogbCksIHkgKz0geCArIChwIDwgXyAmJiAtXyA8IHAgPyB3IDogcCkgKyB4ICsgKG4gPCBfICYmIC1fIDwgbiA/IHcgOiBuKSArIHggKyAoYSA8IF8gJiYgLV8gPCBhID8gdyA6IGEpLCBrIHx8IEMgfHwgMSAhPT0gTSA/ICh5ICs9IHggKyAoaCA8IF8gJiYgLV8gPCBoID8gdyA6IGgpICsgeCArIChmIDwgXyAmJiAtXyA8IGYgPyB3IDogZikgKyB4ICsgKHIgPCBfICYmIC1fIDwgciA/IHcgOiByKSwgeSArPSB4ICsgKG8gPCBfICYmIC1fIDwgbyA/IHcgOiBvKSArIHggKyAodSA8IF8gJiYgLV8gPCB1ID8gdyA6IHUpICsgeCArIChjIDwgXyAmJiAtXyA8IGMgPyB3IDogYykgKyB4KSA6IHkgKz0gIiwwLDAsMCwwLDEsMCwiLCB5ICs9IEUgKyB4ICsgRCArIHggKyBMICsgeCArIChGID8gMSArIC1MIC8gRiA6IDEpICsgIikiLCBTW0x0XSA9IHkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAodCA9IFh0LnByb3RvdHlwZSkueCA9IHQueSA9IHQueiA9IHQuc2tld1ggPSB0LnNrZXdZID0gdC5yb3RhdGlvbiA9IHQucm90YXRpb25YID0gdC5yb3RhdGlvblkgPSB0LnpPcmlnaW4gPSB0LnhQZXJjZW50ID0gdC55UGVyY2VudCA9IHQueE9mZnNldCA9IHQueU9mZnNldCA9IDAsIHQuc2NhbGVYID0gdC5zY2FsZVkgPSB0LnNjYWxlWiA9IDEsIE90KCJ0cmFuc2Zvcm0sc2NhbGUsc2NhbGVYLHNjYWxlWSxzY2FsZVoseCx5LHoscm90YXRpb24scm90YXRpb25YLHJvdGF0aW9uWSxyb3RhdGlvblosc2tld1gsc2tld1ksc2hvcnRSb3RhdGlvbixzaG9ydFJvdGF0aW9uWCxzaG9ydFJvdGF0aW9uWSxzaG9ydFJvdGF0aW9uWix0cmFuc2Zvcm1PcmlnaW4sc3ZnT3JpZ2luLHRyYW5zZm9ybVBlcnNwZWN0aXZlLGRpcmVjdGlvbmFsUm90YXRpb24scGFyc2VUcmFuc2Zvcm0sZm9yY2UzRCxza2V3VHlwZSx4UGVyY2VudCx5UGVyY2VudCxzbW9vdGhPcmlnaW4iLCB7CiAgICAgICAgICAgICAgICBwYXJzZXI6IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMsIGEpIHsKICAgICAgICAgICAgICAgICAgICBpZiAobi5fbGFzdFBhcnNlZFRyYW5zZm9ybSA9PT0gYSkgcmV0dXJuIHI7CiAgICAgICAgICAgICAgICAgICAgdmFyIG8sIGwgPSAobi5fbGFzdFBhcnNlZFRyYW5zZm9ybSA9IGEpLnNjYWxlICYmICJmdW5jdGlvbiIgPT0gdHlwZW9mIGEuc2NhbGUgPyBhLnNjYWxlIDogMDsKICAgICAgICAgICAgICAgICAgICAiZnVuY3Rpb24iID09IHR5cGVvZiBhW2ldICYmIChvID0gYVtpXSwgYVtpXSA9IGUpLCBsICYmIChhLnNjYWxlID0gbChBLCB0KSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGgsIHUsIHAsIGYsIGMsIGQsIF8sIGcsIG0sIHYgPSB0Ll9nc1RyYW5zZm9ybSwKICAgICAgICAgICAgICAgICAgICAgICAgeSA9IHQuc3R5bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHggPSBEdC5sZW5ndGgsCiAgICAgICAgICAgICAgICAgICAgICAgIHcgPSBhLAogICAgICAgICAgICAgICAgICAgICAgICBUID0ge30sCiAgICAgICAgICAgICAgICAgICAgICAgIGIgPSAidHJhbnNmb3JtT3JpZ2luIiwKICAgICAgICAgICAgICAgICAgICAgICAgUCA9IFF0KHQsIE8sICEwLCB3LnBhcnNlVHJhbnNmb3JtKSwKICAgICAgICAgICAgICAgICAgICAgICAgUyA9IHcudHJhbnNmb3JtICYmICgiZnVuY3Rpb24iID09IHR5cGVvZiB3LnRyYW5zZm9ybSA/IHcudHJhbnNmb3JtKEEsIEMpIDogdy50cmFuc2Zvcm0pOwogICAgICAgICAgICAgICAgICAgIGlmIChuLl90cmFuc2Zvcm0gPSBQLCBTICYmICJzdHJpbmciID09IHR5cGVvZiBTICYmIEx0KSh1ID0gVy5zdHlsZSlbTHRdID0gUywgdS5kaXNwbGF5ID0gImJsb2NrIiwgdS5wb3NpdGlvbiA9ICJhYnNvbHV0ZSIsIFguYm9keS5hcHBlbmRDaGlsZChXKSwgaCA9IFF0KFcsIG51bGwsICExKSwgUC5zdmcgJiYgKGQgPSBQLnhPcmlnaW4sIF8gPSBQLnlPcmlnaW4sIGgueCAtPSBQLnhPZmZzZXQsIGgueSAtPSBQLnlPZmZzZXQsICh3LnRyYW5zZm9ybU9yaWdpbiB8fCB3LnN2Z09yaWdpbikgJiYgKFMgPSB7fSwgVnQodCwgaHQody50cmFuc2Zvcm1PcmlnaW4pLCBTLCB3LnN2Z09yaWdpbiwgdy5zbW9vdGhPcmlnaW4sICEwKSwgZCA9IFMueE9yaWdpbiwgXyA9IFMueU9yaWdpbiwgaC54IC09IFMueE9mZnNldCAtIFAueE9mZnNldCwgaC55IC09IFMueU9mZnNldCAtIFAueU9mZnNldCksIChkIHx8IF8pICYmIChnID0gcXQoVywgITApLCBoLnggLT0gZCAtIChkICogZ1swXSArIF8gKiBnWzJdKSwgaC55IC09IF8gLSAoZCAqIGdbMV0gKyBfICogZ1szXSkpKSwgWC5ib2R5LnJlbW92ZUNoaWxkKFcpLCBoLnBlcnNwZWN0aXZlIHx8IChoLnBlcnNwZWN0aXZlID0gUC5wZXJzcGVjdGl2ZSksIG51bGwgIT0gdy54UGVyY2VudCAmJiAoaC54UGVyY2VudCA9IHB0KHcueFBlcmNlbnQsIFAueFBlcmNlbnQpKSwgbnVsbCAhPSB3LnlQZXJjZW50ICYmIChoLnlQZXJjZW50ID0gcHQody55UGVyY2VudCwgUC55UGVyY2VudCkpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCJvYmplY3QiID09IHR5cGVvZiB3KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWDogcHQobnVsbCAhPSB3LnNjYWxlWCA/IHcuc2NhbGVYIDogdy5zY2FsZSwgUC5zY2FsZVgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWTogcHQobnVsbCAhPSB3LnNjYWxlWSA/IHcuc2NhbGVZIDogdy5zY2FsZSwgUC5zY2FsZVkpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWjogcHQody5zY2FsZVosIFAuc2NhbGVaKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4OiBwdCh3LngsIFAueCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeTogcHQody55LCBQLnkpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHo6IHB0KHcueiwgUC56KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4UGVyY2VudDogcHQody54UGVyY2VudCwgUC54UGVyY2VudCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeVBlcmNlbnQ6IHB0KHcueVBlcmNlbnQsIFAueVBlcmNlbnQpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlOiBwdCh3LnRyYW5zZm9ybVBlcnNwZWN0aXZlLCBQLnBlcnNwZWN0aXZlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgbnVsbCAhPSAoYyA9IHcuZGlyZWN0aW9uYWxSb3RhdGlvbikpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIm9iamVjdCIgPT0gdHlwZW9mIGMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh1IGluIGMpIHdbdV0gPSBjW3VdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB3LnJvdGF0aW9uID0gYzsKICAgICAgICAgICAgICAgICAgICAgICAgInN0cmluZyIgPT0gdHlwZW9mIHcueCAmJiAtMSAhPT0gdy54LmluZGV4T2YoIiUiKSAmJiAoaC54ID0gMCwgaC54UGVyY2VudCA9IHB0KHcueCwgUC54UGVyY2VudCkpLCAic3RyaW5nIiA9PSB0eXBlb2Ygdy55ICYmIC0xICE9PSB3LnkuaW5kZXhPZigiJSIpICYmIChoLnkgPSAwLCBoLnlQZXJjZW50ID0gcHQody55LCBQLnlQZXJjZW50KSksIGgucm90YXRpb24gPSBmdCgicm90YXRpb24iIGluIHcgPyB3LnJvdGF0aW9uIDogInNob3J0Um90YXRpb24iIGluIHcgPyB3LnNob3J0Um90YXRpb24gKyAiX3Nob3J0IiA6ICJyb3RhdGlvbloiIGluIHcgPyB3LnJvdGF0aW9uWiA6IFAucm90YXRpb24sIFAucm90YXRpb24sICJyb3RhdGlvbiIsIFQpLCBJdCAmJiAoaC5yb3RhdGlvblggPSBmdCgicm90YXRpb25YIiBpbiB3ID8gdy5yb3RhdGlvblggOiAic2hvcnRSb3RhdGlvblgiIGluIHcgPyB3LnNob3J0Um90YXRpb25YICsgIl9zaG9ydCIgOiBQLnJvdGF0aW9uWCB8fCAwLCBQLnJvdGF0aW9uWCwgInJvdGF0aW9uWCIsIFQpLCBoLnJvdGF0aW9uWSA9IGZ0KCJyb3RhdGlvblkiIGluIHcgPyB3LnJvdGF0aW9uWSA6ICJzaG9ydFJvdGF0aW9uWSIgaW4gdyA/IHcuc2hvcnRSb3RhdGlvblkgKyAiX3Nob3J0IiA6IFAucm90YXRpb25ZIHx8IDAsIFAucm90YXRpb25ZLCAicm90YXRpb25ZIiwgVCkpLCBoLnNrZXdYID0gZnQody5za2V3WCwgUC5za2V3WCksIGguc2tld1kgPSBmdCh3LnNrZXdZLCBQLnNrZXdZKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmb3IgKEl0ICYmIG51bGwgIT0gdy5mb3JjZTNEICYmIChQLmZvcmNlM0QgPSB3LmZvcmNlM0QsIGYgPSAhMCksIFAuc2tld1R5cGUgPSB3LnNrZXdUeXBlIHx8IFAuc2tld1R5cGUgfHwgai5kZWZhdWx0U2tld1R5cGUsIChwID0gUC5mb3JjZTNEIHx8IFAueiB8fCBQLnJvdGF0aW9uWCB8fCBQLnJvdGF0aW9uWSB8fCBoLnogfHwgaC5yb3RhdGlvblggfHwgaC5yb3RhdGlvblkgfHwgaC5wZXJzcGVjdGl2ZSkgfHwgbnVsbCA9PSB3LnNjYWxlIHx8IChoLnNjYWxlWiA9IDEpOyAtIDEgPCAtLXg7KSgxZS02IDwgKFMgPSBoW20gPSBEdFt4XV0gLSBQW21dKSB8fCBTIDwgLTFlLTYgfHwgbnVsbCAhPSB3W21dIHx8IG51bGwgIT0gSVttXSkgJiYgKGYgPSAhMCwgciA9IG5ldyB3dChQLCBtLCBQW21dLCBTLCByKSwgbSBpbiBUICYmIChyLmUgPSBUW21dKSwgci54czAgPSAwLCByLnBsdWdpbiA9IHMsIG4uX292ZXJ3cml0ZVByb3BzLnB1c2goci5uKSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFMgPSB3LnRyYW5zZm9ybU9yaWdpbiwgUC5zdmcgJiYgKFMgfHwgdy5zdmdPcmlnaW4pICYmIChkID0gUC54T2Zmc2V0LCBfID0gUC55T2Zmc2V0LCBWdCh0LCBodChTKSwgaCwgdy5zdmdPcmlnaW4sIHcuc21vb3RoT3JpZ2luKSwgciA9IFR0KFAsICJ4T3JpZ2luIiwgKHYgPyBQIDogaCkueE9yaWdpbiwgaC54T3JpZ2luLCByLCBiKSwgciA9IFR0KFAsICJ5T3JpZ2luIiwgKHYgPyBQIDogaCkueU9yaWdpbiwgaC55T3JpZ2luLCByLCBiKSwgKGQgIT09IFAueE9mZnNldCB8fCBfICE9PSBQLnlPZmZzZXQpICYmIChyID0gVHQoUCwgInhPZmZzZXQiLCB2ID8gZCA6IFAueE9mZnNldCwgUC54T2Zmc2V0LCByLCBiKSwgciA9IFR0KFAsICJ5T2Zmc2V0IiwgdiA/IF8gOiBQLnlPZmZzZXQsIFAueU9mZnNldCwgciwgYikpLCBTID0gIjBweCAwcHgiKSwgKFMgfHwgSXQgJiYgcCAmJiBQLnpPcmlnaW4pICYmIChMdCA/IChmID0gITAsIG0gPSBGdCwgUyA9IChTIHx8IGV0KHQsIG0sIE8sICExLCAiNTAlIDUwJSIpKSArICIiLCAociA9IG5ldyB3dCh5LCBtLCAwLCAwLCByLCAtMSwgYikpLmIgPSB5W21dLCByLnBsdWdpbiA9IHMsIHIueHMwID0gci5lID0gSXQgPyAodSA9IFAuek9yaWdpbiwgUyA9IFMuc3BsaXQoIiAiKSwgUC56T3JpZ2luID0gKDIgPCBTLmxlbmd0aCAmJiAoMCA9PT0gdSB8fCAiMHB4IiAhPT0gU1syXSkgPyBwYXJzZUZsb2F0KFNbMl0pIDogdSkgfHwgMCwgci54czAgPSByLmUgPSBTWzBdICsgIiAiICsgKFNbMV0gfHwgIjUwJSIpICsgIiAwcHgiLCAociA9IG5ldyB3dChQLCAiek9yaWdpbiIsIDAsIDAsIHIsIC0xLCByLm4pKS5iID0gdSwgUC56T3JpZ2luKSA6IFMpIDogaHQoUyArICIiLCBQKSksIGYgJiYgKG4uX3RyYW5zZm9ybVR5cGUgPSBQLnN2ZyAmJiBDdCB8fCAhcCAmJiAzICE9PSB0aGlzLl90cmFuc2Zvcm1UeXBlID8gMiA6IDMpLCBvICYmIChhW2ldID0gbyksIGwgJiYgKGEuc2NhbGUgPSBsKSwgcgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHByZWZpeDogITAKICAgICAgICAgICAgfSksIE90KCJib3hTaGFkb3ciLCB7CiAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICIwcHggMHB4IDBweCAwcHggIzk5OSIsCiAgICAgICAgICAgICAgICBwcmVmaXg6ICEwLAogICAgICAgICAgICAgICAgY29sb3I6ICEwLAogICAgICAgICAgICAgICAgbXVsdGk6ICEwLAogICAgICAgICAgICAgICAga2V5d29yZDogImluc2V0IgogICAgICAgICAgICB9KSwgT3QoImJvcmRlclJhZGl1cyIsIHsKICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogIjBweCIsCiAgICAgICAgICAgICAgICBwYXJzZXI6IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMpIHsKICAgICAgICAgICAgICAgICAgICBlID0gdGhpcy5mb3JtYXQoZSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEsIG8sIGwsIGgsIHUsIHAsIGYsIGMsIGQsIF8sIGcsIG0sIHYsIHksIHgsIHcsIFQgPSBbImJvcmRlclRvcExlZnRSYWRpdXMiLCAiYm9yZGVyVG9wUmlnaHRSYWRpdXMiLCAiYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMiLCAiYm9yZGVyQm90dG9tTGVmdFJhZGl1cyJdLAogICAgICAgICAgICAgICAgICAgICAgICBiID0gdC5zdHlsZTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGQgPSBwYXJzZUZsb2F0KHQub2Zmc2V0V2lkdGgpLCBfID0gcGFyc2VGbG9hdCh0Lm9mZnNldEhlaWdodCksIGEgPSBlLnNwbGl0KCIgIiksIG8gPSAwOyBvIDwgVC5sZW5ndGg7IG8rKykgdGhpcy5wLmluZGV4T2YoImJvcmRlciIpICYmIChUW29dID0gSihUW29dKSksIC0xICE9PSAodSA9IGggPSBldCh0LCBUW29dLCBPLCAhMSwgIjBweCIpKS5pbmRleE9mKCIgIikgJiYgKHUgPSAoaCA9IHUuc3BsaXQoIiAiKSlbMF0sIGggPSBoWzFdKSwgcCA9IGwgPSBhW29dLCBmID0gcGFyc2VGbG9hdCh1KSwgbSA9IHUuc3Vic3RyKChmICsgIiIpLmxlbmd0aCksICIiID09PSAoZyA9ICh2ID0gIj0iID09PSBwLmNoYXJBdCgxKSkgPyAoYyA9IHBhcnNlSW50KHAuY2hhckF0KDApICsgIjEiLCAxMCksIHAgPSBwLnN1YnN0cigyKSwgYyAqPSBwYXJzZUZsb2F0KHApLCBwLnN1YnN0cigoYyArICIiKS5sZW5ndGggLSAoYyA8IDAgPyAxIDogMCkpIHx8ICIiKSA6IChjID0gcGFyc2VGbG9hdChwKSwgcC5zdWJzdHIoKGMgKyAiIikubGVuZ3RoKSkpICYmIChnID0gUFtpXSB8fCBtKSwgZyAhPT0gbSAmJiAoeSA9IGl0KHQsICJib3JkZXJMZWZ0IiwgZiwgbSksIHggPSBpdCh0LCAiYm9yZGVyVG9wIiwgZiwgbSksIGggPSAiJSIgPT09IGcgPyAodSA9IHkgLyBkICogMTAwICsgIiUiLCB4IC8gXyAqIDEwMCArICIlIikgOiAiZW0iID09PSBnID8gKHUgPSB5IC8gKHcgPSBpdCh0LCAiYm9yZGVyTGVmdCIsIDEsICJlbSIpKSArICJlbSIsIHggLyB3ICsgImVtIikgOiAodSA9IHkgKyAicHgiLCB4ICsgInB4IiksIHYgJiYgKHAgPSBwYXJzZUZsb2F0KHUpICsgYyArIGcsIGwgPSBwYXJzZUZsb2F0KGgpICsgYyArIGcpKSwgciA9IGJ0KGIsIFRbb10sIHUgKyAiICIgKyBoLCBwICsgIiAiICsgbCwgITEsICIwcHgiLCByKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHByZWZpeDogITAsCiAgICAgICAgICAgICAgICBmb3JtYXR0ZXI6IHZ0KCIwcHggMHB4IDBweCAwcHgiLCAhMSwgITApCiAgICAgICAgICAgIH0pLCBPdCgiYm9yZGVyQm90dG9tTGVmdFJhZGl1cyxib3JkZXJCb3R0b21SaWdodFJhZGl1cyxib3JkZXJUb3BMZWZ0UmFkaXVzLGJvcmRlclRvcFJpZ2h0UmFkaXVzIiwgewogICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAiMHB4IiwKICAgICAgICAgICAgICAgIHBhcnNlcjogZnVuY3Rpb24odCwgZSwgaSwgbiwgciwgcykgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBidCh0LnN0eWxlLCBpLCB0aGlzLmZvcm1hdChldCh0LCBpLCBPLCAhMSwgIjBweCAwcHgiKSksIHRoaXMuZm9ybWF0KGUpLCAhMSwgIjBweCIsIHIpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcHJlZml4OiAhMCwKICAgICAgICAgICAgICAgIGZvcm1hdHRlcjogdnQoIjBweCAwcHgiLCAhMSwgITApCiAgICAgICAgICAgIH0pLCBPdCgiYmFja2dyb3VuZFBvc2l0aW9uIiwgewogICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAiMCAwIiwKICAgICAgICAgICAgICAgIHBhcnNlcjogZnVuY3Rpb24odCwgZSwgaSwgbiwgciwgcykgewogICAgICAgICAgICAgICAgICAgIHZhciBhLCBvLCBsLCBoLCB1LCBwLCBmID0gImJhY2tncm91bmQtcG9zaXRpb24iLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gTyB8fCB0dCh0LCBudWxsKSwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IHRoaXMuZm9ybWF0KChjID8gUyA/IGMuZ2V0UHJvcGVydHlWYWx1ZShmICsgIi14IikgKyAiICIgKyBjLmdldFByb3BlcnR5VmFsdWUoZiArICIteSIpIDogYy5nZXRQcm9wZXJ0eVZhbHVlKGYpIDogdC5jdXJyZW50U3R5bGUuYmFja2dyb3VuZFBvc2l0aW9uWCArICIgIiArIHQuY3VycmVudFN0eWxlLmJhY2tncm91bmRQb3NpdGlvblkpIHx8ICIwIDAiKSwKICAgICAgICAgICAgICAgICAgICAgICAgXyA9IHRoaXMuZm9ybWF0KGUpOwogICAgICAgICAgICAgICAgICAgIGlmICgtMSAhPT0gZC5pbmRleE9mKCIlIikgIT0gKC0xICE9PSBfLmluZGV4T2YoIiUiKSkgJiYgXy5zcGxpdCgiLCIpLmxlbmd0aCA8IDIgJiYgKChwID0gZXQodCwgImJhY2tncm91bmRJbWFnZSIpLnJlcGxhY2UoYiwgIiIpKSAmJiAibm9uZSIgIT09IHApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IGQuc3BsaXQoIiAiKSwgbyA9IF8uc3BsaXQoIiAiKSwgVS5zZXRBdHRyaWJ1dGUoInNyYyIsIHApLCBsID0gMjsgLSAxIDwgLS1sOykoaCA9IC0xICE9PSAoZCA9IGFbbF0pLmluZGV4T2YoIiUiKSkgIT09ICgtMSAhPT0gb1tsXS5pbmRleE9mKCIlIikpICYmICh1ID0gMCA9PT0gbCA/IHQub2Zmc2V0V2lkdGggLSBVLndpZHRoIDogdC5vZmZzZXRIZWlnaHQgLSBVLmhlaWdodCwgYVtsXSA9IGggPyBwYXJzZUZsb2F0KGQpIC8gMTAwICogdSArICJweCIgOiBwYXJzZUZsb2F0KGQpIC8gdSAqIDEwMCArICIlIik7CiAgICAgICAgICAgICAgICAgICAgICAgIGQgPSBhLmpvaW4oIiAiKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZUNvbXBsZXgodC5zdHlsZSwgZCwgXywgciwgcykKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBmb3JtYXR0ZXI6IGh0CiAgICAgICAgICAgIH0pLCBPdCgiYmFja2dyb3VuZFNpemUiLCB7CiAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICIwIDAiLAogICAgICAgICAgICAgICAgZm9ybWF0dGVyOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGh0KC0xID09PSAodCArPSAiIikuaW5kZXhPZigiICIpID8gdCArICIgIiArIHQgOiB0KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgT3QoInBlcnNwZWN0aXZlIiwgewogICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAiMHB4IiwKICAgICAgICAgICAgICAgIHByZWZpeDogITAKICAgICAgICAgICAgfSksIE90KCJwZXJzcGVjdGl2ZU9yaWdpbiIsIHsKICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogIjUwJSA1MCUiLAogICAgICAgICAgICAgICAgcHJlZml4OiAhMAogICAgICAgICAgICB9KSwgT3QoInRyYW5zZm9ybVN0eWxlIiwgewogICAgICAgICAgICAgICAgcHJlZml4OiAhMAogICAgICAgICAgICB9KSwgT3QoImJhY2tmYWNlVmlzaWJpbGl0eSIsIHsKICAgICAgICAgICAgICAgIHByZWZpeDogITAKICAgICAgICAgICAgfSksIE90KCJ1c2VyU2VsZWN0IiwgewogICAgICAgICAgICAgICAgcHJlZml4OiAhMAogICAgICAgICAgICB9KSwgT3QoIm1hcmdpbiIsIHsKICAgICAgICAgICAgICAgIHBhcnNlcjogeXQoIm1hcmdpblRvcCxtYXJnaW5SaWdodCxtYXJnaW5Cb3R0b20sbWFyZ2luTGVmdCIpCiAgICAgICAgICAgIH0pLCBPdCgicGFkZGluZyIsIHsKICAgICAgICAgICAgICAgIHBhcnNlcjogeXQoInBhZGRpbmdUb3AscGFkZGluZ1JpZ2h0LHBhZGRpbmdCb3R0b20scGFkZGluZ0xlZnQiKQogICAgICAgICAgICB9KSwgT3QoImNsaXAiLCB7CiAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICJyZWN0KDBweCwwcHgsMHB4LDBweCkiLAogICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEsIG8sIGw7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPSBTIDwgOSA/IChvID0gdC5jdXJyZW50U3R5bGUsIGwgPSBTIDwgOCA/ICIgIiA6ICIsIiwgYSA9ICJyZWN0KCIgKyBvLmNsaXBUb3AgKyBsICsgby5jbGlwUmlnaHQgKyBsICsgby5jbGlwQm90dG9tICsgbCArIG8uY2xpcExlZnQgKyAiKSIsIHRoaXMuZm9ybWF0KGUpLnNwbGl0KCIsIikuam9pbihsKSkgOiAoYSA9IHRoaXMuZm9ybWF0KGV0KHQsIHRoaXMucCwgTywgITEsIHRoaXMuZGZsdCkpLCB0aGlzLmZvcm1hdChlKSksIHRoaXMucGFyc2VDb21wbGV4KHQuc3R5bGUsIGEsIGUsIHIsIHMpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBPdCgidGV4dFNoYWRvdyIsIHsKICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogIjBweCAwcHggMHB4ICM5OTkiLAogICAgICAgICAgICAgICAgY29sb3I6ICEwLAogICAgICAgICAgICAgICAgbXVsdGk6ICEwCiAgICAgICAgICAgIH0pLCBPdCgiYXV0b1JvdW5kLHN0cmljdFVuaXRzIiwgewogICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIE90KCJib3JkZXIiLCB7CiAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU6ICIwcHggc29saWQgIzAwMCIsCiAgICAgICAgICAgICAgICBwYXJzZXI6IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IGV0KHQsICJib3JkZXJUb3BXaWR0aCIsIE8sICExLCAiMHB4IiksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSB0aGlzLmZvcm1hdChlKS5zcGxpdCgiICIpLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gb1swXS5yZXBsYWNlKEUsICIiKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gInB4IiAhPT0gbCAmJiAoYSA9IHBhcnNlRmxvYXQoYSkgLyBpdCh0LCAiYm9yZGVyVG9wV2lkdGgiLCAxLCBsKSArIGwpLCB0aGlzLnBhcnNlQ29tcGxleCh0LnN0eWxlLCB0aGlzLmZvcm1hdChhICsgIiAiICsgZXQodCwgImJvcmRlclRvcFN0eWxlIiwgTywgITEsICJzb2xpZCIpICsgIiAiICsgZXQodCwgImJvcmRlclRvcENvbG9yIiwgTywgITEsICIjMDAwIikpLCBvLmpvaW4oIiAiKSwgciwgcykKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjb2xvcjogITAsCiAgICAgICAgICAgICAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHQuc3BsaXQoIiAiKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVswXSArICIgIiArIChlWzFdIHx8ICJzb2xpZCIpICsgIiAiICsgKHQubWF0Y2gobXQpIHx8IFsiIzAwMCJdKVswXQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgT3QoImJvcmRlcldpZHRoIiwgewogICAgICAgICAgICAgICAgcGFyc2VyOiB5dCgiYm9yZGVyVG9wV2lkdGgsYm9yZGVyUmlnaHRXaWR0aCxib3JkZXJCb3R0b21XaWR0aCxib3JkZXJMZWZ0V2lkdGgiKQogICAgICAgICAgICB9KSwgT3QoImZsb2F0LGNzc0Zsb2F0LHN0eWxlRmxvYXQiLCB7CiAgICAgICAgICAgICAgICBwYXJzZXI6IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IHQuc3R5bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSAiY3NzRmxvYXQiIGluIGEgPyAiY3NzRmxvYXQiIDogInN0eWxlRmxvYXQiOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgd3QoYSwgbywgMCwgMCwgciwgLTEsIGksICExLCAwLCBhW29dLCBlKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgdmFyICR0ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUsIGkgPSB0aGlzLnQsCiAgICAgICAgICAgICAgICAgICAgbiA9IGkuZmlsdGVyIHx8IGV0KHRoaXMuZGF0YSwgImZpbHRlciIpIHx8ICIiLAogICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzLnMgKyB0aGlzLmMgKiB0IHwgMDsKICAgICAgICAgICAgICAgIDEwMCA9PT0gciAmJiAoZSA9IC0xID09PSBuLmluZGV4T2YoImF0cml4KCIpICYmIC0xID09PSBuLmluZGV4T2YoInJhZGllbnQoIikgJiYgLTEgPT09IG4uaW5kZXhPZigib2FkZXIoIikgPyAoaS5yZW1vdmVBdHRyaWJ1dGUoImZpbHRlciIpLCAhZXQodGhpcy5kYXRhLCAiZmlsdGVyIikpIDogKGkuZmlsdGVyID0gbi5yZXBsYWNlKGEsICIiKSwgITApKSwgZSB8fCAodGhpcy54bjEgJiYgKGkuZmlsdGVyID0gbiA9IG4gfHwgImFscGhhKG9wYWNpdHk9IiArIHIgKyAiKSIpLCAtMSA9PT0gbi5pbmRleE9mKCJwYWNpdHkiKSA/IDAgPT09IHIgJiYgdGhpcy54bjEgfHwgKGkuZmlsdGVyID0gbiArICIgYWxwaGEob3BhY2l0eT0iICsgciArICIpIikgOiBpLmZpbHRlciA9IG4ucmVwbGFjZShELCAib3BhY2l0eT0iICsgcikpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIE90KCJvcGFjaXR5LGFscGhhLGF1dG9BbHBoYSIsIHsKICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogIjEiLAogICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSBwYXJzZUZsb2F0KGV0KHQsICJvcGFjaXR5IiwgTywgITEsICIxIikpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gdC5zdHlsZSwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9ICJhdXRvQWxwaGEiID09PSBpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAic3RyaW5nIiA9PSB0eXBlb2YgZSAmJiAiPSIgPT09IGUuY2hhckF0KDEpICYmIChlID0gKCItIiA9PT0gZS5jaGFyQXQoMCkgPyAtMSA6IDEpICogcGFyc2VGbG9hdChlLnN1YnN0cigyKSkgKyBhKSwgbCAmJiAxID09PSBhICYmICJoaWRkZW4iID09PSBldCh0LCAidmlzaWJpbGl0eSIsIE8pICYmIDAgIT09IGUgJiYgKGEgPSAwKSwgUSA/IHIgPSBuZXcgd3QobywgIm9wYWNpdHkiLCBhLCBlIC0gYSwgcikgOiAoKHIgPSBuZXcgd3QobywgIm9wYWNpdHkiLCAxMDAgKiBhLCAxMDAgKiAoZSAtIGEpLCByKSkueG4xID0gbCA/IDEgOiAwLCBvLnpvb20gPSAxLCByLnR5cGUgPSAyLCByLmIgPSAiYWxwaGEob3BhY2l0eT0iICsgci5zICsgIikiLCByLmUgPSAiYWxwaGEob3BhY2l0eT0iICsgKHIucyArIHIuYykgKyAiKSIsIHIuZGF0YSA9IHQsIHIucGx1Z2luID0gcywgci5zZXRSYXRpbyA9ICR0KSwgbCAmJiAoKHIgPSBuZXcgd3QobywgInZpc2liaWxpdHkiLCAwLCAwLCByLCAtMSwgbnVsbCwgITEsIDAsIDAgIT09IGEgPyAiaW5oZXJpdCIgOiAiaGlkZGVuIiwgMCA9PT0gZSA/ICJoaWRkZW4iIDogImluaGVyaXQiKSkueHMwID0gImluaGVyaXQiLCBuLl9vdmVyd3JpdGVQcm9wcy5wdXNoKHIubiksIG4uX292ZXJ3cml0ZVByb3BzLnB1c2goaSkpLCByCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgS3QgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgZSAmJiAodC5yZW1vdmVQcm9wZXJ0eSA/ICgoIm1zIiA9PT0gZS5zdWJzdHIoMCwgMikgfHwgIndlYmtpdCIgPT09IGUuc3Vic3RyKDAsIDYpKSAmJiAoZSA9ICItIiArIGUpLCB0LnJlbW92ZVByb3BlcnR5KGUucmVwbGFjZShvLCAiLSQxIikudG9Mb3dlckNhc2UoKSkpIDogdC5yZW1vdmVBdHRyaWJ1dGUoZSkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgSnQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMudC5fZ3NDbGFzc1BUID0gdGhpcywgMSA9PT0gdCB8fCAwID09PSB0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudC5zZXRBdHRyaWJ1dGUoImNsYXNzIiwgMCA9PT0gdCA/IHRoaXMuYiA6IHRoaXMuZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0aGlzLmRhdGEsIGkgPSB0aGlzLnQuc3R5bGU7IGU7KSBlLnYgPyBpW2UucF0gPSBlLnYgOiBLdChpLCBlLnApLCBlID0gZS5fbmV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgMSA9PT0gdCAmJiB0aGlzLnQuX2dzQ2xhc3NQVCA9PT0gdGhpcyAmJiAodGhpcy50Ll9nc0NsYXNzUFQgPSBudWxsKQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLnQuZ2V0QXR0cmlidXRlKCJjbGFzcyIpICE9PSB0aGlzLmUgJiYgdGhpcy50LnNldEF0dHJpYnV0ZSgiY2xhc3MiLCB0aGlzLmUpCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBPdCgiY2xhc3NOYW1lIiwgewogICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByLCBzLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG8sIGwsIGgsIHUsIHAsIGYgPSB0LmdldEF0dHJpYnV0ZSgiY2xhc3MiKSB8fCAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9IHQuc3R5bGUuY3NzVGV4dDsKICAgICAgICAgICAgICAgICAgICBpZiAoKHIgPSBuLl9jbGFzc05hbWVQVCA9IG5ldyB3dCh0LCBpLCAwLCAwLCByLCAyKSkuc2V0UmF0aW8gPSBKdCwgci5wciA9IC0xMSwgZCA9ICEwLCByLmIgPSBmLCBsID0gcnQodCwgTyksIGggPSB0Ll9nc0NsYXNzUFQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh1ID0ge30sIHAgPSBoLmRhdGE7IHA7KSB1W3AucF0gPSAxLCBwID0gcC5fbmV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgaC5zZXRSYXRpbygxKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gKHQuX2dzQ2xhc3NQVCA9IHIpLmUgPSAiPSIgIT09IGUuY2hhckF0KDEpID8gZSA6IGYucmVwbGFjZShuZXcgUmVnRXhwKCIoPzpcXHN8XikiICsgZS5zdWJzdHIoMikgKyAiKD8hW1xcdy1dKSIpLCAiIikgKyAoIisiID09PSBlLmNoYXJBdCgwKSA/ICIgIiArIGUuc3Vic3RyKDIpIDogIiIpLCB0LnNldEF0dHJpYnV0ZSgiY2xhc3MiLCByLmUpLCBvID0gc3QodCwgbCwgcnQodCksIGEsIHUpLCB0LnNldEF0dHJpYnV0ZSgiY2xhc3MiLCBmKSwgci5kYXRhID0gby5maXJzdE1QVCwgdC5zdHlsZS5jc3NUZXh0ID0gYywgci54Zmlyc3QgPSBuLnBhcnNlKHQsIG8uZGlmcywgciwgcykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciB0ZSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGlmICgoMSA9PT0gdCB8fCAwID09PSB0KSAmJiB0aGlzLmRhdGEuX3RvdGFsVGltZSA9PT0gdGhpcy5kYXRhLl90b3RhbER1cmF0aW9uICYmICJpc0Zyb21TdGFydCIgIT09IHRoaXMuZGF0YS5kYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGksIG4sIHIsIHMsIGEgPSB0aGlzLnQuc3R5bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBnLnRyYW5zZm9ybS5wYXJzZTsKICAgICAgICAgICAgICAgICAgICBpZiAoImFsbCIgPT09IHRoaXMuZSkgciA9ICEoYS5jc3NUZXh0ID0gIiIpOwogICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChuID0gKGUgPSB0aGlzLmUuc3BsaXQoIiAiKS5qb2luKCIiKS5zcGxpdCgiLCIpKS5sZW5ndGg7IC0gMSA8IC0tbjspIGkgPSBlW25dLCBnW2ldICYmIChnW2ldLnBhcnNlID09PSBvID8gciA9ICEwIDogaSA9ICJ0cmFuc2Zvcm1PcmlnaW4iID09PSBpID8gRnQgOiBnW2ldLnApLCBLdChhLCBpKTsKICAgICAgICAgICAgICAgICAgICByICYmIChLdChhLCBMdCksIChzID0gdGhpcy50Ll9nc1RyYW5zZm9ybSkgJiYgKHMuc3ZnICYmICh0aGlzLnQucmVtb3ZlQXR0cmlidXRlKCJkYXRhLXN2Zy1vcmlnaW4iKSwgdGhpcy50LnJlbW92ZUF0dHJpYnV0ZSgidHJhbnNmb3JtIikpLCBkZWxldGUgdGhpcy50Ll9nc1RyYW5zZm9ybSkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZvciAoT3QoImNsZWFyUHJvcHMiLCB7CiAgICAgICAgICAgICAgICAgICAgcGFyc2VyOiBmdW5jdGlvbih0LCBlLCBpLCBuLCByKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAociA9IG5ldyB3dCh0LCBpLCAwLCAwLCByLCAyKSkuc2V0UmF0aW8gPSB0ZSwgci5lID0gZSwgci5wciA9IC0xMCwgci5kYXRhID0gbi5fdHdlZW4sIGQgPSAhMCwgcgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pLCB0ID0gImJlemllcix0aHJvd1Byb3BzLHBoeXNpY3NQcm9wcyxwaHlzaWNzMkQiLnNwbGl0KCIsIiksIFB0ID0gdC5sZW5ndGg7IFB0LS07KSBrdCh0W1B0XSk7CiAgICAgICAgICAgICh0ID0gai5wcm90b3R5cGUpLl9maXJzdFBUID0gdC5fbGFzdFBhcnNlZFRyYW5zZm9ybSA9IHQuX3RyYW5zZm9ybSA9IG51bGwsIHQuX29uSW5pdFR3ZWVuID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgaWYgKCF0Lm5vZGVUeXBlKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICB0aGlzLl90YXJnZXQgPSBDID0gdCwgdGhpcy5fdHdlZW4gPSBpLCB0aGlzLl92YXJzID0gZSwgQSA9IG4sIGsgPSBlLmF1dG9Sb3VuZCwgZCA9ICExLCBQID0gZS5zdWZmaXhNYXAgfHwgai5zdWZmaXhNYXAsIE8gPSB0dCh0LCAiIiksIF8gPSB0aGlzLl9vdmVyd3JpdGVQcm9wczsKICAgICAgICAgICAgICAgIHZhciByLCBzLCBhLCBvLCBsLCBoLCB1LCBwLCBmLCBjID0gdC5zdHlsZTsKICAgICAgICAgICAgICAgIGlmIChtICYmICIiID09PSBjLnpJbmRleCAmJiAoKCJhdXRvIiA9PT0gKHIgPSBldCh0LCAiekluZGV4IiwgTykpIHx8ICIiID09PSByKSAmJiB0aGlzLl9hZGRMYXp5U2V0KGMsICJ6SW5kZXgiLCAwKSksICJzdHJpbmciID09IHR5cGVvZiBlICYmIChvID0gYy5jc3NUZXh0LCByID0gcnQodCwgTyksIGMuY3NzVGV4dCA9IG8gKyAiOyIgKyBlLCByID0gc3QodCwgciwgcnQodCkpLmRpZnMsICFRICYmIHcudGVzdChlKSAmJiAoci5vcGFjaXR5ID0gcGFyc2VGbG9hdChSZWdFeHAuJDEpKSwgZSA9IHIsIGMuY3NzVGV4dCA9IG8pLCBlLmNsYXNzTmFtZSA/IHRoaXMuX2ZpcnN0UFQgPSBzID0gZy5jbGFzc05hbWUucGFyc2UodCwgZS5jbGFzc05hbWUsICJjbGFzc05hbWUiLCB0aGlzLCBudWxsLCBudWxsLCBlKSA6IHRoaXMuX2ZpcnN0UFQgPSBzID0gdGhpcy5wYXJzZSh0LCBlLCBudWxsKSwgdGhpcy5fdHJhbnNmb3JtVHlwZSkgewogICAgICAgICAgICAgICAgICAgIGZvciAoZiA9IDMgPT09IHRoaXMuX3RyYW5zZm9ybVR5cGUsIEx0ID8gdiAmJiAobSA9ICEwLCAiIiA9PT0gYy56SW5kZXggJiYgKCgiYXV0byIgPT09ICh1ID0gZXQodCwgInpJbmRleCIsIE8pKSB8fCAiIiA9PT0gdSkgJiYgdGhpcy5fYWRkTGF6eVNldChjLCAiekluZGV4IiwgMCkpLCB5ICYmIHRoaXMuX2FkZExhenlTZXQoYywgIldlYmtpdEJhY2tmYWNlVmlzaWJpbGl0eSIsIHRoaXMuX3ZhcnMuV2Via2l0QmFja2ZhY2VWaXNpYmlsaXR5IHx8IChmID8gInZpc2libGUiIDogImhpZGRlbiIpKSkgOiBjLnpvb20gPSAxLCBhID0gczsgYSAmJiBhLl9uZXh0OykgYSA9IGEuX25leHQ7CiAgICAgICAgICAgICAgICAgICAgcCA9IG5ldyB3dCh0LCAidHJhbnNmb3JtIiwgMCwgMCwgbnVsbCwgMiksIHRoaXMuX2xpbmtDU1NQKHAsIG51bGwsIGEpLCBwLnNldFJhdGlvID0gTHQgPyBadCA6IEh0LCBwLmRhdGEgPSB0aGlzLl90cmFuc2Zvcm0gfHwgUXQodCwgTywgITApLCBwLnR3ZWVuID0gaSwgcC5wciA9IC0xLCBfLnBvcCgpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoZCkgewogICAgICAgICAgICAgICAgICAgIGZvciAoOyBzOykgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGggPSBzLl9uZXh0LCBhID0gbzsgYSAmJiBhLnByID4gcy5wcjspIGEgPSBhLl9uZXh0OwogICAgICAgICAgICAgICAgICAgICAgICAocy5fcHJldiA9IGEgPyBhLl9wcmV2IDogbCkgPyBzLl9wcmV2Ll9uZXh0ID0gczogbyA9IHMsIChzLl9uZXh0ID0gYSkgPyBhLl9wcmV2ID0gcyA6IGwgPSBzLCBzID0gaAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB0aGlzLl9maXJzdFBUID0gbwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuICEwCiAgICAgICAgICAgIH0sIHQucGFyc2UgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgciwgcywgYSwgbywgbCwgaCwgdSwgcCwgZiwgYywgZCA9IHQuc3R5bGU7CiAgICAgICAgICAgICAgICBmb3IgKHIgaW4gZSkgImZ1bmN0aW9uIiA9PSB0eXBlb2YoaCA9IGVbcl0pICYmIChoID0gaChBLCBDKSksIChzID0gZ1tyXSkgPyBpID0gcy5wYXJzZSh0LCBoLCByLCB0aGlzLCBpLCBuLCBlKSA6IChsID0gZXQodCwgciwgTykgKyAiIiwgZiA9ICJzdHJpbmciID09IHR5cGVvZiBoLCAiY29sb3IiID09PSByIHx8ICJmaWxsIiA9PT0gciB8fCAic3Ryb2tlIiA9PT0gciB8fCAtMSAhPT0gci5pbmRleE9mKCJDb2xvciIpIHx8IGYgJiYgVC50ZXN0KGgpID8gKGYgfHwgKGggPSAoMyA8IChoID0gX3QoaCkpLmxlbmd0aCA/ICJyZ2JhKCIgOiAicmdiKCIpICsgaC5qb2luKCIsIikgKyAiKSIpLCBpID0gYnQoZCwgciwgbCwgaCwgITAsICJ0cmFuc3BhcmVudCIsIGksIDAsIG4pKSA6IGYgJiYgRi50ZXN0KGgpID8gaSA9IGJ0KGQsIHIsIGwsIGgsICEwLCBudWxsLCBpLCAwLCBuKSA6ICh1ID0gKGEgPSBwYXJzZUZsb2F0KGwpKSB8fCAwID09PSBhID8gbC5zdWJzdHIoKGEgKyAiIikubGVuZ3RoKSA6ICIiLCAoIiIgPT09IGwgfHwgImF1dG8iID09PSBsKSAmJiAodSA9ICJ3aWR0aCIgPT09IHIgfHwgImhlaWdodCIgPT09IHIgPyAoYSA9IGx0KHQsIHIsIE8pLCAicHgiKSA6ICJsZWZ0IiA9PT0gciB8fCAidG9wIiA9PT0gciA/IChhID0gbnQodCwgciwgTyksICJweCIpIDogKGEgPSAib3BhY2l0eSIgIT09IHIgPyAwIDogMSwgIiIpKSwgIiIgPT09IChwID0gKGMgPSBmICYmICI9IiA9PT0gaC5jaGFyQXQoMSkpID8gKG8gPSBwYXJzZUludChoLmNoYXJBdCgwKSArICIxIiwgMTApLCBoID0gaC5zdWJzdHIoMiksIG8gKj0gcGFyc2VGbG9hdChoKSwgaC5yZXBsYWNlKEUsICIiKSkgOiAobyA9IHBhcnNlRmxvYXQoaCksIGYgPyBoLnJlcGxhY2UoRSwgIiIpIDogIiIpKSAmJiAocCA9IHIgaW4gUCA/IFBbcl0gOiB1KSwgaCA9IG8gfHwgMCA9PT0gbyA/IChjID8gbyArIGEgOiBvKSArIHAgOiBlW3JdLCB1ICE9PSBwICYmICIiICE9PSBwICYmIChvIHx8IDAgPT09IG8pICYmIGEgJiYgKGEgPSBpdCh0LCByLCBhLCB1KSwgIiUiID09PSBwID8gKGEgLz0gaXQodCwgciwgMTAwLCAiJSIpIC8gMTAwLCAhMCAhPT0gZS5zdHJpY3RVbml0cyAmJiAobCA9IGEgKyAiJSIpKSA6ICJlbSIgPT09IHAgfHwgInJlbSIgPT09IHAgfHwgInZ3IiA9PT0gcCB8fCAidmgiID09PSBwID8gYSAvPSBpdCh0LCByLCAxLCBwKSA6ICJweCIgIT09IHAgJiYgKG8gPSBpdCh0LCByLCBvLCBwKSwgcCA9ICJweCIpLCBjICYmIChvIHx8IDAgPT09IG8pICYmIChoID0gbyArIGEgKyBwKSksIGMgJiYgKG8gKz0gYSksICFhICYmIDAgIT09IGEgfHwgIW8gJiYgMCAhPT0gbyA/IHZvaWQgMCAhPT0gZFtyXSAmJiAoaCB8fCBoICsgIiIgIT0gIk5hTiIgJiYgbnVsbCAhPSBoKSA/IChpID0gbmV3IHd0KGQsIHIsIG8gfHwgYSB8fCAwLCAwLCBpLCAtMSwgciwgITEsIDAsIGwsIGgpKS54czAgPSAibm9uZSIgIT09IGggfHwgImRpc3BsYXkiICE9PSByICYmIC0xID09PSByLmluZGV4T2YoIlN0eWxlIikgPyBoIDogbCA6IFooImludmFsaWQgIiArIHIgKyAiIHR3ZWVuIHZhbHVlOiAiICsgZVtyXSkgOiAoaSA9IG5ldyB3dChkLCByLCBhLCBvIC0gYSwgaSwgMCwgciwgITEgIT09IGsgJiYgKCJweCIgPT09IHAgfHwgInpJbmRleCIgPT09IHIpLCAwLCBsLCBoKSkueHMwID0gcCkpLCBuICYmIGkgJiYgIWkucGx1Z2luICYmIChpLnBsdWdpbiA9IG4pOwogICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgICAgfSwgdC5zZXRSYXRpbyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCByID0gdGhpcy5fZmlyc3RQVDsKICAgICAgICAgICAgICAgIGlmICgxICE9PSB0IHx8IHRoaXMuX3R3ZWVuLl90aW1lICE9PSB0aGlzLl90d2Vlbi5fZHVyYXRpb24gJiYgMCAhPT0gdGhpcy5fdHdlZW4uX3RpbWUpCiAgICAgICAgICAgICAgICAgICAgaWYgKHQgfHwgdGhpcy5fdHdlZW4uX3RpbWUgIT09IHRoaXMuX3R3ZWVuLl9kdXJhdGlvbiAmJiAwICE9PSB0aGlzLl90d2Vlbi5fdGltZSB8fCAtMWUtNiA9PT0gdGhpcy5fdHdlZW4uX3Jhd1ByZXZUaW1lKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgcjspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlID0gci5jICogdCArIHIucywgci5yID8gZSA9IE1hdGgucm91bmQoZSkgOiBlIDwgMWUtNiAmJiAtMWUtNiA8IGUgJiYgKGUgPSAwKSwgci50eXBlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgxID09PSByLnR5cGUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgyID09PSAobiA9IHIubCkpIHIudFtyLnBdID0gci54czAgKyBlICsgci54czEgKyByLnhuMSArIHIueHMyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgzID09PSBuKSByLnRbci5wXSA9IHIueHMwICsgZSArIHIueHMxICsgci54bjEgKyByLnhzMiArIHIueG4yICsgci54czM7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICg0ID09PSBuKSByLnRbci5wXSA9IHIueHMwICsgZSArIHIueHMxICsgci54bjEgKyByLnhzMiArIHIueG4yICsgci54czMgKyByLnhuMyArIHIueHM0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoNSA9PT0gbikgci50W3IucF0gPSByLnhzMCArIGUgKyByLnhzMSArIHIueG4xICsgci54czIgKyByLnhuMiArIHIueHMzICsgci54bjMgKyByLnhzNCArIHIueG40ICsgci54czU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSByLnhzMCArIGUgKyByLnhzMSwgbiA9IDE7IG4gPCByLmw7IG4rKykgaSArPSByWyJ4biIgKyBuXSArIHJbInhzIiArIChuICsgMSldOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIudFtyLnBdID0gaQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIC0xID09PSByLnR5cGUgPyByLnRbci5wXSA9IHIueHMwIDogci5zZXRSYXRpbyAmJiByLnNldFJhdGlvKHQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSByLnRbci5wXSA9IGUgKyByLnhzMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSByLl9uZXh0CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IHI7KSAyICE9PSByLnR5cGUgPyByLnRbci5wXSA9IHIuYiA6IHIuc2V0UmF0aW8odCksIHIgPSByLl9uZXh0OwogICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICg7IHI7KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoMiAhPT0gci50eXBlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyLnIgJiYgLTEgIT09IHIudHlwZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUgPSBNYXRoLnJvdW5kKHIucyArIHIuYyksIHIudHlwZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDEgPT09IHIudHlwZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IHIubCwgaSA9IHIueHMwICsgZSArIHIueHMxLCBuID0gMTsgbiA8IHIubDsgbisrKSBpICs9IHJbInhuIiArIG5dICsgclsieHMiICsgKG4gKyAxKV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgci50W3IucF0gPSBpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSByLnRbci5wXSA9IGUgKyByLnhzMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Ugci50W3IucF0gPSByLmU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHIuc2V0UmF0aW8odCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByID0gci5fbmV4dAogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIHQuX2VuYWJsZVRyYW5zZm9ybXMgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0aGlzLl90cmFuc2Zvcm0gPSB0aGlzLl90cmFuc2Zvcm0gfHwgUXQodGhpcy5fdGFyZ2V0LCBPLCAhMCksIHRoaXMuX3RyYW5zZm9ybVR5cGUgPSB0aGlzLl90cmFuc2Zvcm0uc3ZnICYmIEN0IHx8ICF0ICYmIDMgIT09IHRoaXMuX3RyYW5zZm9ybVR5cGUgPyAyIDogMwogICAgICAgICAgICB9OwogICAgICAgICAgICB2YXIgZWUgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB0aGlzLnRbdGhpcy5wXSA9IHRoaXMuZSwgdGhpcy5kYXRhLl9saW5rQ1NTUCh0aGlzLCB0aGlzLl9uZXh0LCBudWxsLCAhMCkKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdC5fYWRkTGF6eVNldCA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcy5fZmlyc3RQVCA9IG5ldyB3dCh0LCBlLCAwLCAwLCB0aGlzLl9maXJzdFBULCAyKTsKICAgICAgICAgICAgICAgIG4uZSA9IGksIG4uc2V0UmF0aW8gPSBlZSwgbi5kYXRhID0gdGhpcwogICAgICAgICAgICB9LCB0Ll9saW5rQ1NTUCA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgIHJldHVybiB0ICYmIChlICYmIChlLl9wcmV2ID0gdCksIHQuX25leHQgJiYgKHQuX25leHQuX3ByZXYgPSB0Ll9wcmV2KSwgdC5fcHJldiA/IHQuX3ByZXYuX25leHQgPSB0Ll9uZXh0IDogdGhpcy5fZmlyc3RQVCA9PT0gdCAmJiAodGhpcy5fZmlyc3RQVCA9IHQuX25leHQsIG4gPSAhMCksIGkgPyBpLl9uZXh0ID0gdCA6IG4gfHwgbnVsbCAhPT0gdGhpcy5fZmlyc3RQVCB8fCAodGhpcy5fZmlyc3RQVCA9IHQpLCB0Ll9uZXh0ID0gZSwgdC5fcHJldiA9IGkpLCB0CiAgICAgICAgICAgIH0sIHQuX21vZCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0aGlzLl9maXJzdFBUOyBlOykgImZ1bmN0aW9uIiA9PSB0eXBlb2YgdFtlLnBdICYmIHRbZS5wXSA9PT0gTWF0aC5yb3VuZCAmJiAoZS5yID0gMSksIGUgPSBlLl9uZXh0CiAgICAgICAgICAgIH0sIHQuX2tpbGwgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgciA9IHQ7CiAgICAgICAgICAgICAgICBpZiAodC5hdXRvQWxwaGEgfHwgdC5hbHBoYSkgewogICAgICAgICAgICAgICAgICAgIGZvciAoaSBpbiByID0ge30sIHQpIHJbaV0gPSB0W2ldOwogICAgICAgICAgICAgICAgICAgIHIub3BhY2l0eSA9IDEsIHIuYXV0b0FscGhhICYmIChyLnZpc2liaWxpdHkgPSAxKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZm9yICh0LmNsYXNzTmFtZSAmJiAoZSA9IHRoaXMuX2NsYXNzTmFtZVBUKSAmJiAoKG4gPSBlLnhmaXJzdCkgJiYgbi5fcHJldiA/IHRoaXMuX2xpbmtDU1NQKG4uX3ByZXYsIGUuX25leHQsIG4uX3ByZXYuX3ByZXYpIDogbiA9PT0gdGhpcy5fZmlyc3RQVCAmJiAodGhpcy5fZmlyc3RQVCA9IGUuX25leHQpLCBlLl9uZXh0ICYmIHRoaXMuX2xpbmtDU1NQKGUuX25leHQsIGUuX25leHQuX25leHQsIG4uX3ByZXYpLCB0aGlzLl9jbGFzc05hbWVQVCA9IG51bGwpLCBlID0gdGhpcy5fZmlyc3RQVDsgZTspIGUucGx1Z2luICYmIGUucGx1Z2luICE9PSBpICYmIGUucGx1Z2luLl9raWxsICYmIChlLnBsdWdpbi5fa2lsbCh0KSwgaSA9IGUucGx1Z2luKSwgZSA9IGUuX25leHQ7CiAgICAgICAgICAgICAgICByZXR1cm4gcy5wcm90b3R5cGUuX2tpbGwuY2FsbCh0aGlzLCByKQogICAgICAgICAgICB9OwogICAgICAgICAgICB2YXIgaWUgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbiwgciwgcywgYTsKICAgICAgICAgICAgICAgIGlmICh0LnNsaWNlKQogICAgICAgICAgICAgICAgICAgIGZvciAociA9IHQubGVuZ3RoOyAtIDEgPCAtLXI7KSBpZSh0W3JdLCBlLCBpKTsKICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSAobiA9IHQuY2hpbGROb2RlcykubGVuZ3RoOyAtIDEgPCAtLXI7KSBhID0gKHMgPSBuW3JdKS50eXBlLCBzLnN0eWxlICYmIChlLnB1c2gocnQocykpLCBpICYmIGkucHVzaChzKSksIDEgIT09IGEgJiYgOSAhPT0gYSAmJiAxMSAhPT0gYSB8fCAhcy5jaGlsZE5vZGVzLmxlbmd0aCB8fCBpZShzLCBlLCBpKQogICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gai5jYXNjYWRlVG8gPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbiwgciwgcywgYSwgbyA9IEIudG8odCwgZSwgaSksCiAgICAgICAgICAgICAgICAgICAgbCA9IFtvXSwKICAgICAgICAgICAgICAgICAgICBoID0gW10sCiAgICAgICAgICAgICAgICAgICAgdSA9IFtdLAogICAgICAgICAgICAgICAgICAgIHAgPSBbXSwKICAgICAgICAgICAgICAgICAgICBmID0gQi5faW50ZXJuYWxzLnJlc2VydmVkUHJvcHM7CiAgICAgICAgICAgICAgICBmb3IgKHQgPSBvLl90YXJnZXRzIHx8IG8udGFyZ2V0LCBpZSh0LCBoLCBwKSwgby5yZW5kZXIoZSwgITAsICEwKSwgaWUodCwgdSksIG8ucmVuZGVyKDAsICEwLCAhMCksIG8uX2VuYWJsZWQoITApLCBuID0gcC5sZW5ndGg7IC0gMSA8IC0tbjspCiAgICAgICAgICAgICAgICAgICAgaWYgKChyID0gc3QocFtuXSwgaFtuXSwgdVtuXSkpLmZpcnN0TVBUKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAocyBpbiByID0gci5kaWZzLCBpKSBmW3NdICYmIChyW3NdID0gaVtzXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAocyBpbiBhID0ge30sIHIpIGFbc10gPSBoW25dW3NdOwogICAgICAgICAgICAgICAgICAgICAgICBsLnB1c2goQi5mcm9tVG8ocFtuXSwgZSwgYSwgcikpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGwKICAgICAgICAgICAgfSwgcy5hY3RpdmF0ZShbal0pLCBqCiAgICAgICAgfSwgITApCiAgICB9KSwgX2dzU2NvcGUuX2dzRGVmaW5lICYmIF9nc1Njb3BlLl9nc1F1ZXVlLnBvcCgpKCksCiAgICBmdW5jdGlvbih0KSB7CiAgICAgICAgInVzZSBzdHJpY3QiOwogICAgICAgIHZhciBlID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiAoX2dzU2NvcGUuR3JlZW5Tb2NrR2xvYmFscyB8fCBfZ3NTY29wZSkuQ1NTUGx1Z2luCiAgICAgICAgfTsKICAgICAgICAiZnVuY3Rpb24iID09IHR5cGVvZiBkZWZpbmUgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbIlR3ZWVuTGl0ZSJdLCBlKSA6ICJ1bmRlZmluZWQiICE9IHR5cGVvZiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMgJiYgKHJlcXVpcmUoIi4uL1R3ZWVuTGl0ZS5qcyIpLCBtb2R1bGUuZXhwb3J0cyA9IGUoKSkKICAgIH0oKSwKICAgIGZ1bmN0aW9uKGkpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgdmFyIHIgPSBpLkdyZWVuU29ja0dsb2JhbHMgfHwgaSwKICAgICAgICAgICAgdCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpID0gdC5zcGxpdCgiLiIpLAogICAgICAgICAgICAgICAgICAgIG4gPSByOwogICAgICAgICAgICAgICAgZm9yIChlID0gMDsgZSA8IGkubGVuZ3RoOyBlKyspIG5baVtlXV0gPSBuID0gbltpW2VdXSB8fCB7fTsKICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgIH0oImNvbS5ncmVlbnNvY2sudXRpbHMiKSwKICAgICAgICAgICAgYiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdC5ub2RlVHlwZSwKICAgICAgICAgICAgICAgICAgICBpID0gIiI7CiAgICAgICAgICAgICAgICBpZiAoMSA9PT0gZSB8fCA5ID09PSBlIHx8IDExID09PSBlKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJzdHJpbmciID09IHR5cGVvZiB0LnRleHRDb250ZW50KSByZXR1cm4gdC50ZXh0Q29udGVudDsKICAgICAgICAgICAgICAgICAgICBmb3IgKHQgPSB0LmZpcnN0Q2hpbGQ7IHQ7IHQgPSB0Lm5leHRTaWJsaW5nKSBpICs9IGIodCkKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoMyA9PT0gZSB8fCA0ID09PSBlKSByZXR1cm4gdC5ub2RlVmFsdWU7CiAgICAgICAgICAgICAgICByZXR1cm4gaQogICAgICAgICAgICB9LAogICAgICAgICAgICBqID0gZG9jdW1lbnQsCiAgICAgICAgICAgIFkgPSBqLmRlZmF1bHRWaWV3ID8gai5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlIDogZnVuY3Rpb24oKSB7fSwKICAgICAgICAgICAgcyA9IC8oW0EtWl0pL2csCiAgICAgICAgICAgIFYgPSBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICB2YXIgcjsKICAgICAgICAgICAgICAgIHJldHVybiAoaSA9IGkgfHwgWSh0LCBudWxsKSkgPyByID0gKHQgPSBpLmdldFByb3BlcnR5VmFsdWUoZS5yZXBsYWNlKHMsICItJDEiKS50b0xvd2VyQ2FzZSgpKSkgfHwgaS5sZW5ndGggPyB0IDogaVtlXSA6IHQuY3VycmVudFN0eWxlICYmIChyID0gKGkgPSB0LmN1cnJlbnRTdHlsZSlbZV0pLCBuID8gciA6IHBhcnNlSW50KHIsIDEwKSB8fCAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGEgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gISEodC5sZW5ndGggJiYgdFswXSAmJiAodFswXS5ub2RlVHlwZSAmJiB0WzBdLnN0eWxlICYmICF0Lm5vZGVUeXBlIHx8IHRbMF0ubGVuZ3RoICYmIHRbMF1bMF0pKQogICAgICAgICAgICB9LAogICAgICAgICAgICBQID0gLyg/OlxyfFxufFx0XHQpL2csCiAgICAgICAgICAgIFMgPSAvKD86XHNccyspL2csCiAgICAgICAgICAgIE8gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKHQuY2hhckNvZGVBdCgwKSAtIDU1Mjk2IDw8IDEwKSArICh0LmNoYXJDb2RlQXQoMSkgLSA1NjMyMCkgKyA2NTUzNgogICAgICAgICAgICB9LAogICAgICAgICAgICBvID0gIiBzdHlsZT0ncG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7IiArIChqLmFsbCAmJiAhai5hZGRFdmVudExpc3RlbmVyID8gIipkaXNwbGF5OmlubGluZTsqem9vbToxOyciIDogIiciKSwKICAgICAgICAgICAgbCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gLTEgIT09ICh0ID0gdCB8fCAiIikuaW5kZXhPZigiKysiKSwKICAgICAgICAgICAgICAgICAgICBuID0gMTsKICAgICAgICAgICAgICAgIHJldHVybiBpICYmICh0ID0gdC5zcGxpdCgiKysiKS5qb2luKCIiKSksCiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAiPCIgKyBlICsgbyArICh0ID8gIiBjbGFzcz0nIiArIHQgKyAoaSA/IG4rKyA6ICIiKSArICInPiIgOiAiPiIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBuID0gdC5TcGxpdFRleHQgPSByLlNwbGl0VGV4dCA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgdCAmJiAodCA9IG4uc2VsZWN0b3IodCkpLCAhdCkgdGhyb3cgImNhbm5vdCBzcGxpdCBhIG51bGwgZWxlbWVudC4iOwogICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50cyA9IGEodCkgPyBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUsIGksIG4sIHIgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IHQubGVuZ3RoOwogICAgICAgICAgICAgICAgICAgIGZvciAoZSA9IDA7IGUgPCBzOyBlKyspCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpID0gdFtlXSwgYShpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IGkubGVuZ3RoLCBuID0gMDsgbiA8IGkubGVuZ3RoOyBuKyspIHIucHVzaChpW25dKTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSByLnB1c2goaSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHIKICAgICAgICAgICAgICAgIH0odCkgOiBbdF0sIHRoaXMuY2hhcnMgPSBbXSwgdGhpcy53b3JkcyA9IFtdLCB0aGlzLmxpbmVzID0gW10sIHRoaXMuX29yaWdpbmFscyA9IFtdLCB0aGlzLnZhcnMgPSBlIHx8IHt9LCB0aGlzLnNwbGl0KGUpCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIEcgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbiA9IHQubm9kZVR5cGU7CiAgICAgICAgICAgICAgICBpZiAoMSA9PT0gbiB8fCA5ID09PSBuIHx8IDExID09PSBuKQogICAgICAgICAgICAgICAgICAgIGZvciAodCA9IHQuZmlyc3RDaGlsZDsgdDsgdCA9IHQubmV4dFNpYmxpbmcpIEcodCwgZSwgaSk7CiAgICAgICAgICAgICAgICBlbHNlKDMgPT09IG4gfHwgNCA9PT0gbikgJiYgKHQubm9kZVZhbHVlID0gdC5ub2RlVmFsdWUuc3BsaXQoZSkuam9pbihpKSkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgVyA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSBlLmxlbmd0aDsgLSAxIDwgLS1pOykgdC5wdXNoKGVbaV0pCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGggPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSwgaSA9IFtdLAogICAgICAgICAgICAgICAgICAgIG4gPSB0Lmxlbmd0aDsKICAgICAgICAgICAgICAgIGZvciAoZSA9IDA7IGUgIT09IG47IGkucHVzaCh0W2UrK10pKTsKICAgICAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIFUgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBuOyB0ICYmIHQgIT09IGU7KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKG4gPSB0Ll9uZXh0IHx8IHQubmV4dFNpYmxpbmcpIHJldHVybiBuLnRleHRDb250ZW50LmNoYXJBdCgwKSA9PT0gaTsKICAgICAgICAgICAgICAgICAgICB0ID0gdC5wYXJlbnROb2RlIHx8IHQuX3BhcmVudAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHEgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiA9IGgodC5jaGlsZE5vZGVzKSwKICAgICAgICAgICAgICAgICAgICByID0gbi5sZW5ndGg7CiAgICAgICAgICAgICAgICBmb3IgKGUgPSAwOyBlIDwgcjsgZSsrKShpID0gbltlXSkuX2lzU3BsaXQgPyBxKGkpIDogKGUgJiYgMyA9PT0gaS5wcmV2aW91c1NpYmxpbmcubm9kZVR5cGUgPyBpLnByZXZpb3VzU2libGluZy5ub2RlVmFsdWUgKz0gMyA9PT0gaS5ub2RlVHlwZSA/IGkubm9kZVZhbHVlIDogaS5maXJzdENoaWxkLm5vZGVWYWx1ZSA6IDMgIT09IGkubm9kZVR5cGUgJiYgdC5pbnNlcnRCZWZvcmUoaS5maXJzdENoaWxkLCBpKSwgdC5yZW1vdmVDaGlsZChpKSkKICAgICAgICAgICAgfSwKICAgICAgICAgICAgdSA9IGZ1bmN0aW9uKHQsIGUsIGksIG4sIHIsIHMsIGEpIHsKICAgICAgICAgICAgICAgIHZhciBvLCBsLCBoLCB1LCBwLCBmLCBjLCBkLCBfLCBnLCBtLCB2LCB5ID0gWSh0KSwKICAgICAgICAgICAgICAgICAgICB4ID0gVih0LCAicGFkZGluZ0xlZnQiLCB5KSwKICAgICAgICAgICAgICAgICAgICB3ID0gLTk5OSwKICAgICAgICAgICAgICAgICAgICBUID0gVih0LCAiYm9yZGVyQm90dG9tV2lkdGgiLCB5KSArIFYodCwgImJvcmRlclRvcFdpZHRoIiwgeSksCiAgICAgICAgICAgICAgICAgICAgYiA9IFYodCwgImJvcmRlckxlZnRXaWR0aCIsIHkpICsgVih0LCAiYm9yZGVyUmlnaHRXaWR0aCIsIHkpLAogICAgICAgICAgICAgICAgICAgIFAgPSBWKHQsICJwYWRkaW5nVG9wIiwgeSkgKyBWKHQsICJwYWRkaW5nQm90dG9tIiwgeSksCiAgICAgICAgICAgICAgICAgICAgUyA9IFYodCwgInBhZGRpbmdMZWZ0IiwgeSkgKyBWKHQsICJwYWRkaW5nUmlnaHQiLCB5KSwKICAgICAgICAgICAgICAgICAgICBPID0gLjIgKiBWKHQsICJmb250U2l6ZSIpLAogICAgICAgICAgICAgICAgICAgIGsgPSBWKHQsICJ0ZXh0QWxpZ24iLCB5LCAhMCksCiAgICAgICAgICAgICAgICAgICAgQyA9IFtdLAogICAgICAgICAgICAgICAgICAgIEEgPSBbXSwKICAgICAgICAgICAgICAgICAgICBSID0gW10sCiAgICAgICAgICAgICAgICAgICAgTSA9IGUud29yZERlbGltaXRlciB8fCAiICIsCiAgICAgICAgICAgICAgICAgICAgRSA9IGUuc3BhbiA/ICJzcGFuIiA6ICJkaXYiLAogICAgICAgICAgICAgICAgICAgIEQgPSBlLnR5cGUgfHwgZS5zcGxpdCB8fCAiY2hhcnMsd29yZHMsbGluZXMiLAogICAgICAgICAgICAgICAgICAgIEwgPSByICYmIC0xICE9PSBELmluZGV4T2YoImxpbmVzIikgPyBbXSA6IG51bGwsCiAgICAgICAgICAgICAgICAgICAgTiA9IC0xICE9PSBELmluZGV4T2YoIndvcmRzIiksCiAgICAgICAgICAgICAgICAgICAgRiA9IC0xICE9PSBELmluZGV4T2YoImNoYXJzIiksCiAgICAgICAgICAgICAgICAgICAgSSA9ICJhYnNvbHV0ZSIgPT09IGUucG9zaXRpb24gfHwgITAgPT09IGUuYWJzb2x1dGUsCiAgICAgICAgICAgICAgICAgICAgWCA9IGUubGluZXNDbGFzcywKICAgICAgICAgICAgICAgICAgICB6ID0gLTEgIT09IChYIHx8ICIiKS5pbmRleE9mKCIrKyIpLAogICAgICAgICAgICAgICAgICAgIEIgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAoTCAmJiAxID09PSB0LmNoaWxkcmVuLmxlbmd0aCAmJiB0LmNoaWxkcmVuWzBdLl9pc1NwbGl0ICYmICh0ID0gdC5jaGlsZHJlblswXSksIHogJiYgKFggPSBYLnNwbGl0KCIrKyIpLmpvaW4oIiIpKSwgaCA9IChsID0gdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpKS5sZW5ndGgsIHAgPSBbXSwgbyA9IDA7IG8gPCBoOyBvKyspIHBbb10gPSBsW29dOwogICAgICAgICAgICAgICAgaWYgKEwgfHwgSSkKICAgICAgICAgICAgICAgICAgICBmb3IgKG8gPSAwOyBvIDwgaDsgbysrKSgoZiA9ICh1ID0gcFtvXSkucGFyZW50Tm9kZSA9PT0gdCkgfHwgSSB8fCBGICYmICFOKSAmJiAodiA9IHUub2Zmc2V0VG9wLCBMICYmIGYgJiYgTWF0aC5hYnModiAtIHcpID4gTyAmJiAiQlIiICE9PSB1Lm5vZGVOYW1lICYmIChjID0gW10sIEwucHVzaChjKSwgdyA9IHYpLCBJICYmICh1Ll94ID0gdS5vZmZzZXRMZWZ0LCB1Ll95ID0gdiwgdS5fdyA9IHUub2Zmc2V0V2lkdGgsIHUuX2ggPSB1Lm9mZnNldEhlaWdodCksIEwgJiYgKCh1Ll9pc1NwbGl0ICYmIGYgfHwgIUYgJiYgZiB8fCBOICYmIGYgfHwgIU4gJiYgdS5wYXJlbnROb2RlLnBhcmVudE5vZGUgPT09IHQgJiYgIXUucGFyZW50Tm9kZS5faXNTcGxpdCkgJiYgKGMucHVzaCh1KSwgdS5feCAtPSB4LCBVKHUsIHQsIE0pICYmICh1Ll93b3JkRW5kID0gITApKSwgIkJSIiA9PT0gdS5ub2RlTmFtZSAmJiB1Lm5leHRTaWJsaW5nICYmICJCUiIgPT09IHUubmV4dFNpYmxpbmcubm9kZU5hbWUgJiYgTC5wdXNoKFtdKSkpOwogICAgICAgICAgICAgICAgZm9yIChvID0gMDsgbyA8IGg7IG8rKykgZiA9ICh1ID0gcFtvXSkucGFyZW50Tm9kZSA9PT0gdCwgIkJSIiAhPT0gdS5ub2RlTmFtZSA/IChJICYmIChfID0gdS5zdHlsZSwgTiB8fCBmIHx8ICh1Ll94ICs9IHUucGFyZW50Tm9kZS5feCwgdS5feSArPSB1LnBhcmVudE5vZGUuX3kpLCBfLmxlZnQgPSB1Ll94ICsgInB4IiwgXy50b3AgPSB1Ll95ICsgInB4IiwgXy5wb3NpdGlvbiA9ICJhYnNvbHV0ZSIsIF8uZGlzcGxheSA9ICJibG9jayIsIF8ud2lkdGggPSB1Ll93ICsgMSArICJweCIsIF8uaGVpZ2h0ID0gdS5faCArICJweCIpLCAhTiAmJiBGID8gdS5faXNTcGxpdCA/ICh1Ll9uZXh0ID0gdS5uZXh0U2libGluZywgdS5wYXJlbnROb2RlLmFwcGVuZENoaWxkKHUpKSA6IHUucGFyZW50Tm9kZS5faXNTcGxpdCA/ICh1Ll9wYXJlbnQgPSB1LnBhcmVudE5vZGUsICF1LnByZXZpb3VzU2libGluZyAmJiB1LmZpcnN0Q2hpbGQgJiYgKHUuZmlyc3RDaGlsZC5faXNGaXJzdCA9ICEwKSwgdS5uZXh0U2libGluZyAmJiAiICIgPT09IHUubmV4dFNpYmxpbmcudGV4dENvbnRlbnQgJiYgIXUubmV4dFNpYmxpbmcubmV4dFNpYmxpbmcgJiYgQi5wdXNoKHUubmV4dFNpYmxpbmcpLCB1Ll9uZXh0ID0gdS5uZXh0U2libGluZyAmJiB1Lm5leHRTaWJsaW5nLl9pc0ZpcnN0ID8gbnVsbCA6IHUubmV4dFNpYmxpbmcsIHUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh1KSwgcC5zcGxpY2Uoby0tLCAxKSwgaC0tKSA6IGYgfHwgKHYgPSAhdS5uZXh0U2libGluZyAmJiBVKHUucGFyZW50Tm9kZSwgdCwgTSksIHUucGFyZW50Tm9kZS5fcGFyZW50ICYmIHUucGFyZW50Tm9kZS5fcGFyZW50LmFwcGVuZENoaWxkKHUpLCB2ICYmIHUucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChqLmNyZWF0ZVRleHROb2RlKCIgIikpLCBlLnNwYW4gJiYgKHUuc3R5bGUuZGlzcGxheSA9ICJpbmxpbmUiKSwgQy5wdXNoKHUpKSA6IHUucGFyZW50Tm9kZS5faXNTcGxpdCAmJiAhdS5faXNTcGxpdCAmJiAiIiAhPT0gdS5pbm5lckhUTUwgPyBBLnB1c2godSkgOiBGICYmICF1Ll9pc1NwbGl0ICYmIChlLnNwYW4gJiYgKHUuc3R5bGUuZGlzcGxheSA9ICJpbmxpbmUiKSwgQy5wdXNoKHUpKSkgOiBMIHx8IEkgPyAodS5wYXJlbnROb2RlICYmIHUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh1KSwgcC5zcGxpY2Uoby0tLCAxKSwgaC0tKSA6IE4gfHwgdC5hcHBlbmRDaGlsZCh1KTsKICAgICAgICAgICAgICAgIGZvciAobyA9IEIubGVuZ3RoOyAtIDEgPCAtLW87KSBCW29dLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoQltvXSk7CiAgICAgICAgICAgICAgICBpZiAoTCkgewogICAgICAgICAgICAgICAgICAgIGZvciAoSSAmJiAoZyA9IGouY3JlYXRlRWxlbWVudChFKSwgdC5hcHBlbmRDaGlsZChnKSwgbSA9IGcub2Zmc2V0V2lkdGggKyAicHgiLCB2ID0gZy5vZmZzZXRQYXJlbnQgPT09IHQgPyAwIDogdC5vZmZzZXRMZWZ0LCB0LnJlbW92ZUNoaWxkKGcpKSwgXyA9IHQuc3R5bGUuY3NzVGV4dCwgdC5zdHlsZS5jc3NUZXh0ID0gImRpc3BsYXk6bm9uZTsiOyB0LmZpcnN0Q2hpbGQ7KSB0LnJlbW92ZUNoaWxkKHQuZmlyc3RDaGlsZCk7CiAgICAgICAgICAgICAgICAgICAgZm9yIChkID0gIiAiID09PSBNICYmICghSSB8fCAhTiAmJiAhRiksIG8gPSAwOyBvIDwgTC5sZW5ndGg7IG8rKykgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGMgPSBMW29dLCAoZyA9IGouY3JlYXRlRWxlbWVudChFKSkuc3R5bGUuY3NzVGV4dCA9ICJkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246IiArIGsgKyAiO3Bvc2l0aW9uOiIgKyAoSSA/ICJhYnNvbHV0ZTsiIDogInJlbGF0aXZlOyIpLCBYICYmIChnLmNsYXNzTmFtZSA9IFggKyAoeiA/IG8gKyAxIDogIiIpKSwgUi5wdXNoKGcpLCBoID0gYy5sZW5ndGgsIGwgPSAwOyBsIDwgaDsgbCsrKSAiQlIiICE9PSBjW2xdLm5vZGVOYW1lICYmICh1ID0gY1tsXSwgZy5hcHBlbmRDaGlsZCh1KSwgZCAmJiB1Ll93b3JkRW5kICYmIGcuYXBwZW5kQ2hpbGQoai5jcmVhdGVUZXh0Tm9kZSgiICIpKSwgSSAmJiAoMCA9PT0gbCAmJiAoZy5zdHlsZS50b3AgPSB1Ll95ICsgInB4IiwgZy5zdHlsZS5sZWZ0ID0geCArIHYgKyAicHgiKSwgdS5zdHlsZS50b3AgPSAiMHB4IiwgdiAmJiAodS5zdHlsZS5sZWZ0ID0gdS5feCAtIHYgKyAicHgiKSkpOwogICAgICAgICAgICAgICAgICAgICAgICAwID09PSBoID8gZy5pbm5lckhUTUwgPSAiJm5ic3A7IiA6IE4gfHwgRiB8fCAocShnKSwgRyhnLCBTdHJpbmcuZnJvbUNoYXJDb2RlKDE2MCksICIgIikpLCBJICYmIChnLnN0eWxlLndpZHRoID0gbSwgZy5zdHlsZS5oZWlnaHQgPSB1Ll9oICsgInB4IiksIHQuYXBwZW5kQ2hpbGQoZykKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgdC5zdHlsZS5jc3NUZXh0ID0gXwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgSSAmJiAoYSA+IHQuY2xpZW50SGVpZ2h0ICYmICh0LnN0eWxlLmhlaWdodCA9IGEgLSBQICsgInB4IiwgdC5jbGllbnRIZWlnaHQgPCBhICYmICh0LnN0eWxlLmhlaWdodCA9IGEgKyBUICsgInB4IikpLCBzID4gdC5jbGllbnRXaWR0aCAmJiAodC5zdHlsZS53aWR0aCA9IHMgLSBTICsgInB4IiwgdC5jbGllbnRXaWR0aCA8IHMgJiYgKHQuc3R5bGUud2lkdGggPSBzICsgYiArICJweCIpKSksIFcoaSwgQyksIFcobiwgQSksIFcociwgUikKICAgICAgICAgICAgfSwKICAgICAgICAgICAgcCA9IGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgIHZhciByLCBzLCBhID0gaCh0LmNoaWxkTm9kZXMpLAogICAgICAgICAgICAgICAgICAgIG8gPSBhLmxlbmd0aCwKICAgICAgICAgICAgICAgICAgICBsID0gImFic29sdXRlIiA9PT0gZS5wb3NpdGlvbiB8fCAhMCA9PT0gZS5hYnNvbHV0ZTsKICAgICAgICAgICAgICAgIGlmICgzICE9PSB0Lm5vZGVUeXBlIHx8IDEgPCBvKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yIChlLmFic29sdXRlID0gITEsIHIgPSAwOyByIDwgbzsgcisrKSgzICE9PSAocyA9IGFbcl0pLm5vZGVUeXBlIHx8IC9cUysvLnRlc3Qocy5ub2RlVmFsdWUpKSAmJiAobCAmJiAzICE9PSBzLm5vZGVUeXBlICYmICJpbmxpbmUiID09PSBWKHMsICJkaXNwbGF5IiwgbnVsbCwgITApICYmIChzLnN0eWxlLmRpc3BsYXkgPSAiaW5saW5lLWJsb2NrIiwgcy5zdHlsZS5wb3NpdGlvbiA9ICJyZWxhdGl2ZSIpLCBzLl9pc1NwbGl0ID0gITAsIHAocywgZSwgaSwgbikpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmFic29sdXRlID0gbCwgdm9pZCh0Ll9pc1NwbGl0ID0gITApCiAgICAgICAgICAgICAgICB9ISBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIsIHMsIGEsIG8sIGwsIGgsIHUsIHAsIGYsIGMgPSBlLnNwYW4gPyAic3BhbiIgOiAiZGl2IiwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGUudHlwZSB8fCBlLnNwbGl0IHx8ICJjaGFycyx3b3JkcyxsaW5lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgIF8gPSAoZC5pbmRleE9mKCJ3b3JkcyIpLCAtMSAhPT0gZC5pbmRleE9mKCJjaGFycyIpKSwKICAgICAgICAgICAgICAgICAgICAgICAgZyA9ICJhYnNvbHV0ZSIgPT09IGUucG9zaXRpb24gfHwgITAgPT09IGUuYWJzb2x1dGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG0gPSBlLndvcmREZWxpbWl0ZXIgfHwgIiAiLAogICAgICAgICAgICAgICAgICAgICAgICB2ID0gIiAiICE9PSBtID8gIiIgOiBnID8gIiYjMTczOyAiIDogIiAiLAogICAgICAgICAgICAgICAgICAgICAgICB5ID0gZS5zcGFuID8gIjwvc3Bhbj4iIDogIjwvZGl2PiIsCiAgICAgICAgICAgICAgICAgICAgICAgIHggPSAhMCwKICAgICAgICAgICAgICAgICAgICAgICAgdyA9IGouY3JlYXRlRWxlbWVudCgiZGl2IiksCiAgICAgICAgICAgICAgICAgICAgICAgIFQgPSB0LnBhcmVudE5vZGU7CiAgICAgICAgICAgICAgICAgICAgZm9yIChULmluc2VydEJlZm9yZSh3LCB0KSwgdy50ZXh0Q29udGVudCA9IHQubm9kZVZhbHVlLCBULnJlbW92ZUNoaWxkKHQpLCB1ID0gLTEgIT09IChyID0gYih0ID0gdykpLmluZGV4T2YoIjwiKSwgITEgIT09IGUucmVkdWNlV2hpdGVTcGFjZSAmJiAociA9IHIucmVwbGFjZShTLCAiICIpLnJlcGxhY2UoUCwgIiIpKSwgdSAmJiAociA9IHIuc3BsaXQoIjwiKS5qb2luKCJ7e0xUfX0iKSksIGwgPSByLmxlbmd0aCwgcyA9ICgiICIgPT09IHIuY2hhckF0KDApID8gdiA6ICIiKSArIGkoKSwgYSA9IDA7IGEgPCBsOyBhKyspCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoaCA9IHIuY2hhckF0KGEpKSA9PT0gbSAmJiByLmNoYXJBdChhIC0gMSkgIT09IG0gJiYgYSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChzICs9IHggPyB5IDogIiIsIHggPSAhMTsgci5jaGFyQXQoYSArIDEpID09PSBtOykgcyArPSB2LCBhKys7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID09PSBsIC0gMSA/IHMgKz0gdiA6ICIpIiAhPT0gci5jaGFyQXQoYSArIDEpICYmIChzICs9IHYgKyBpKCksIHggPSAhMCkKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlICJ7IiA9PT0gaCAmJiAie3tMVH19IiA9PT0gci5zdWJzdHIoYSwgNikgPyAocyArPSBfID8gbigpICsgInt7TFR9fTwvIiArIGMgKyAiPiIgOiAie3tMVH19IiwgYSArPSA1KSA6IDU1Mjk2IDw9IGguY2hhckNvZGVBdCgwKSAmJiBoLmNoYXJDb2RlQXQoMCkgPD0gNTYzMTkgfHwgNjUwMjQgPD0gci5jaGFyQ29kZUF0KGEgKyAxKSAmJiByLmNoYXJDb2RlQXQoYSArIDEpIDw9IDY1MDM5ID8gKHAgPSBPKHIuc3Vic3RyKGEsIDIpKSwgZiA9IE8oci5zdWJzdHIoYSArIDIsIDIpKSwgbyA9IDEyNzQ2MiA8PSBwICYmIHAgPD0gMTI3NDg3ICYmIDEyNzQ2MiA8PSBmICYmIGYgPD0gMTI3NDg3IHx8IDEyNzk5NSA8PSBmICYmIGYgPD0gMTI3OTk5ID8gNCA6IDIsIHMgKz0gXyAmJiAiICIgIT09IGggPyBuKCkgKyByLnN1YnN0cihhLCBvKSArICI8LyIgKyBjICsgIj4iIDogci5zdWJzdHIoYSwgbyksIGEgKz0gbyAtIDEpIDogcyArPSBfICYmICIgIiAhPT0gaCA/IG4oKSArIGggKyAiPC8iICsgYyArICI+IiA6IGg7CiAgICAgICAgICAgICAgICAgICAgdC5vdXRlckhUTUwgPSBzICsgKHggPyB5IDogIiIpLCB1ICYmIEcoVCwgInt7TFR9fSIsICI8IikKICAgICAgICAgICAgICAgIH0odCwgZSwgaSwgbikKICAgICAgICAgICAgfSwKICAgICAgICAgICAgZSA9IG4ucHJvdG90eXBlOwogICAgICAgIGUuc3BsaXQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHRoaXMuaXNTcGxpdCAmJiB0aGlzLnJldmVydCgpLCB0aGlzLnZhcnMgPSB0ID0gdCB8fCB0aGlzLnZhcnMsIHRoaXMuX29yaWdpbmFscy5sZW5ndGggPSB0aGlzLmNoYXJzLmxlbmd0aCA9IHRoaXMud29yZHMubGVuZ3RoID0gdGhpcy5saW5lcy5sZW5ndGggPSAwOwogICAgICAgICAgICBmb3IgKHZhciBlLCBpLCBuLCByID0gdGhpcy5lbGVtZW50cy5sZW5ndGgsIHMgPSB0LnNwYW4gPyAic3BhbiIgOiAiZGl2IiwgYSA9ICgiYWJzb2x1dGUiID09PSB0LnBvc2l0aW9uIHx8IHQuYWJzb2x1dGUsIGwodC53b3Jkc0NsYXNzLCBzKSksIG8gPSBsKHQuY2hhcnNDbGFzcywgcyk7IC0gMSA8IC0tcjspIG4gPSB0aGlzLmVsZW1lbnRzW3JdLCB0aGlzLl9vcmlnaW5hbHNbcl0gPSBuLmlubmVySFRNTCwgZSA9IG4uY2xpZW50SGVpZ2h0LCBpID0gbi5jbGllbnRXaWR0aCwgcChuLCB0LCBhLCBvKSwgdShuLCB0LCB0aGlzLmNoYXJzLCB0aGlzLndvcmRzLCB0aGlzLmxpbmVzLCBpLCBlKTsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2hhcnMucmV2ZXJzZSgpLCB0aGlzLndvcmRzLnJldmVyc2UoKSwgdGhpcy5saW5lcy5yZXZlcnNlKCksIHRoaXMuaXNTcGxpdCA9ICEwLCB0aGlzCiAgICAgICAgfSwgZS5yZXZlcnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCF0aGlzLl9vcmlnaW5hbHMpIHRocm93ICJyZXZlcnQoKSBjYWxsIHdhc24ndCBzY29wZWQgcHJvcGVybHkuIjsKICAgICAgICAgICAgZm9yICh2YXIgdCA9IHRoaXMuX29yaWdpbmFscy5sZW5ndGg7IC0gMSA8IC0tdDspIHRoaXMuZWxlbWVudHNbdF0uaW5uZXJIVE1MID0gdGhpcy5fb3JpZ2luYWxzW3RdOwogICAgICAgICAgICByZXR1cm4gdGhpcy5jaGFycyA9IFtdLCB0aGlzLndvcmRzID0gW10sIHRoaXMubGluZXMgPSBbXSwgdGhpcy5pc1NwbGl0ID0gITEsIHRoaXMKICAgICAgICB9LCBuLnNlbGVjdG9yID0gaS4kIHx8IGkualF1ZXJ5IHx8IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdmFyIGUgPSBpLiQgfHwgaS5qUXVlcnk7CiAgICAgICAgICAgIHJldHVybiBlID8gKG4uc2VsZWN0b3IgPSBlKSh0KSA6ICJ1bmRlZmluZWQiID09IHR5cGVvZiBkb2N1bWVudCA/IHQgOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsID8gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh0KSA6IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCIjIiA9PT0gdC5jaGFyQXQoMCkgPyB0LnN1YnN0cigxKSA6IHQpCiAgICAgICAgfSwgbi52ZXJzaW9uID0gIjAuNS42IgogICAgfShfZ3NTY29wZSA9ICJ1bmRlZmluZWQiICE9IHR5cGVvZiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMgJiYgInVuZGVmaW5lZCIgIT0gdHlwZW9mIGdsb2JhbCA/IGdsb2JhbCA6IHRoaXMgfHwgd2luZG93KSwKICAgIGZ1bmN0aW9uKHQpIHsKICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgdmFyIGUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIChfZ3NTY29wZS5HcmVlblNvY2tHbG9iYWxzIHx8IF9nc1Njb3BlKS5TcGxpdFRleHQKICAgICAgICB9OwogICAgICAgICJmdW5jdGlvbiIgPT0gdHlwZW9mIGRlZmluZSAmJiBkZWZpbmUuYW1kID8gZGVmaW5lKFtdLCBlKSA6ICJ1bmRlZmluZWQiICE9IHR5cGVvZiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMgJiYgKG1vZHVsZS5leHBvcnRzID0gZSgpKQogICAgfSgpOwp0cnkgewogICAgd2luZG93LkdyZWVuU29ja0dsb2JhbHMgPSBudWxsLCB3aW5kb3cuX2dzUXVldWUgPSBudWxsLCB3aW5kb3cuX2dzRGVmaW5lID0gbnVsbCwgZGVsZXRlIHdpbmRvdy5HcmVlblNvY2tHbG9iYWxzLCBkZWxldGUgd2luZG93Ll9nc1F1ZXVlLCBkZWxldGUgd2luZG93Ll9nc0RlZmluZQp9IGNhdGNoICh0KSB7fQp0cnkgewogICAgd2luZG93LkdyZWVuU29ja0dsb2JhbHMgPSBvbGRncywgd2luZG93Ll9nc1F1ZXVlID0gb2xkZ3NfcXVldWUKfSBjYXRjaCAodCkge30KaWYgKDEgPT0gd2luZG93LnRwbG9ncykgdHJ5IHsKICAgIGNvbnNvbGUuZ3JvdXBFbmQoKQp9IGNhdGNoICh0KSB7fSEgZnVuY3Rpb24odSwgdCkgewogICAgdS53YWl0Rm9ySW1hZ2VzID0gewogICAgICAgIGhhc0ltYWdlUHJvcGVydGllczogWyJiYWNrZ3JvdW5kSW1hZ2UiLCAibGlzdFN0eWxlSW1hZ2UiLCAiYm9yZGVySW1hZ2UiLCAiYm9yZGVyQ29ybmVySW1hZ2UiXQogICAgfSwgdS5leHByWyI6Il0udW5jYWNoZWQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTsKICAgICAgICByZXR1cm4gZS5zcmMgPSB0LnNyYywgdSh0KS5pcygnaW1nW3NyYyE9IiJdJykgJiYgIWUuY29tcGxldGUKICAgIH0sIHUuZm4ud2FpdEZvckltYWdlcyA9IGZ1bmN0aW9uKGwsIGgsIGUpIHsKICAgICAgICBpZiAodS5pc1BsYWluT2JqZWN0KGwpICYmIChoID0gbC5lYWNoLCBlID0gbC53YWl0Rm9yQWxsLCBsID0gbC5maW5pc2hlZCksIGwgPSBsIHx8IHUubm9vcCwgaCA9IGggfHwgdS5ub29wLCBlID0gISFlLCAhdS5pc0Z1bmN0aW9uKGwpIHx8ICF1LmlzRnVuY3Rpb24oaCkpIHRocm93IG5ldyBUeXBlRXJyb3IoIkFuIGludmFsaWQgY2FsbGJhY2sgd2FzIHN1cHBsaWVkLiIpOwogICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBuID0gdSh0aGlzKSwKICAgICAgICAgICAgICAgIHMgPSBbXTsKICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gdS53YWl0Rm9ySW1hZ2VzLmhhc0ltYWdlUHJvcGVydGllcyB8fCBbXSwKICAgICAgICAgICAgICAgICAgICBhID0gL3VybFwoKFsnIl0/KSguKj8pXDFcKS9nOwogICAgICAgICAgICAgICAgbi5maW5kKCIqIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciA9IHUodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgci5pcygiaW1nOnVuY2FjaGVkIikgJiYgcy5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgc3JjOiByLmF0dHIoInNyYyIpLAogICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiByWzBdCiAgICAgICAgICAgICAgICAgICAgfSksIHUuZWFjaCh0LCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpLCBuID0gci5jc3MoZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghbikgcmV0dXJuICEwOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKDsgaSA9IGEuZXhlYyhuKTspIHMucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM6IGlbMl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiByWzBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0gZWxzZSBuLmZpbmQoImltZzp1bmNhY2hlZCIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBzLnB1c2goewogICAgICAgICAgICAgICAgICAgIHNyYzogdGhpcy5zcmMsCiAgICAgICAgICAgICAgICAgICAgZWxlbWVudDogdGhpcwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciByID0gcy5sZW5ndGgsCiAgICAgICAgICAgICAgICBvID0gMDsKICAgICAgICAgICAgMCA9PSByICYmIGwuY2FsbChuWzBdKSwgdS5lYWNoKHMsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gbmV3IEltYWdlOwogICAgICAgICAgICAgICAgdShpKS5iaW5kKCJsb2FkIGVycm9yIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIGlmIChvKyssIGguY2FsbChlLmVsZW1lbnQsIG8sIHIsICJsb2FkIiA9PSB0LnR5cGUpLCBvID09IHIpIHJldHVybiBsLmNhbGwoblswXSksICExCiAgICAgICAgICAgICAgICB9KSwgaS5zcmMgPSBlLnNyYwogICAgICAgICAgICB9KQogICAgICAgIH0pCiAgICB9Cn0oalF1ZXJ5KTsKISBmdW5jdGlvbihqUXVlcnksIHVuZGVmaW5lZCkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIHZlcnNpb24gPSB7CiAgICAgICAgY29yZTogIjUuNC44IiwKICAgICAgICAicmV2b2x1dGlvbi5leHRlbnNpb25zLmFjdGlvbnMubWluLmpzIjogIjIuMS4wIiwKICAgICAgICAicmV2b2x1dGlvbi5leHRlbnNpb25zLmNhcm91c2VsLm1pbi5qcyI6ICIxLjIuMSIsCiAgICAgICAgInJldm9sdXRpb24uZXh0ZW5zaW9ucy5rZW5idXJuLm1pbi5qcyI6ICIxLjMuMSIsCiAgICAgICAgInJldm9sdXRpb24uZXh0ZW5zaW9ucy5sYXllcmFuaW1hdGlvbi5taW4uanMiOiAiMy42LjUiLAogICAgICAgICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMubmF2aWdhdGlvbi5taW4uanMiOiAiMS4zLjUiLAogICAgICAgICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMucGFyYWxsYXgubWluLmpzIjogIjIuMi4zIiwKICAgICAgICAicmV2b2x1dGlvbi5leHRlbnNpb25zLnNsaWRlYW5pbXMubWluLmpzIjogIjEuOCIsCiAgICAgICAgInJldm9sdXRpb24uZXh0ZW5zaW9ucy52aWRlby5taW4uanMiOiAiMi4yLjIiCiAgICB9OwogICAgalF1ZXJ5LmZuLmV4dGVuZCh7CiAgICAgICAgcmV2b2x1dGlvbjogZnVuY3Rpb24oaSkgewogICAgICAgICAgICB2YXIgZSA9IHsKICAgICAgICAgICAgICAgIGRlbGF5OiA5ZTMsCiAgICAgICAgICAgICAgICByZXNwb25zaXZlTGV2ZWxzOiA0MDY0LAogICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzIwNDgsIDEwMjQsIDc3OCwgNDgwXSwKICAgICAgICAgICAgICAgIGdyaWR3aWR0aDogOTYwLAogICAgICAgICAgICAgICAgZ3JpZGhlaWdodDogNTAwLAogICAgICAgICAgICAgICAgbWluSGVpZ2h0OiAwLAogICAgICAgICAgICAgICAgYXV0b0hlaWdodDogIm9mZiIsCiAgICAgICAgICAgICAgICBzbGlkZXJUeXBlOiAic3RhbmRhcmQiLAogICAgICAgICAgICAgICAgc2xpZGVyTGF5b3V0OiAiYXV0byIsCiAgICAgICAgICAgICAgICBmdWxsU2NyZWVuQXV0b1dpZHRoOiAib2ZmIiwKICAgICAgICAgICAgICAgIGZ1bGxTY3JlZW5BbGlnbkZvcmNlOiAib2ZmIiwKICAgICAgICAgICAgICAgIGZ1bGxTY3JlZW5PZmZzZXRDb250YWluZXI6ICIiLAogICAgICAgICAgICAgICAgZnVsbFNjcmVlbk9mZnNldDogIjAiLAogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbWl0OiAwLAogICAgICAgICAgICAgICAgaGlkZVNsaWRlckF0TGltaXQ6IDAsCiAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvZmYiLAogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6IC0xLAogICAgICAgICAgICAgICAgc3RvcEFmdGVyTG9vcHM6IC0xLAogICAgICAgICAgICAgICAgc2hhZG93OiAwLAogICAgICAgICAgICAgICAgZG90dGVkT3ZlcmxheTogIm5vbmUiLAogICAgICAgICAgICAgICAgc3RhcnREZWxheTogMCwKICAgICAgICAgICAgICAgIGxhenlUeXBlOiAic21hcnQiLAogICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwKICAgICAgICAgICAgICAgIHNodWZmbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgdmlld1BvcnQ6IHsKICAgICAgICAgICAgICAgICAgICBlbmFibGU6ICExLAogICAgICAgICAgICAgICAgICAgIG91dG9mOiAid2FpdCIsCiAgICAgICAgICAgICAgICAgICAgdmlzaWJsZV9hcmVhOiAiNjAlIiwKICAgICAgICAgICAgICAgICAgICBwcmVzaXplOiAhMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGZhbGxiYWNrczogewogICAgICAgICAgICAgICAgICAgIGlzSm9vbWxhOiAhMSwKICAgICAgICAgICAgICAgICAgICBwYW5ab29tRGlzYWJsZU9uTW9iaWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDogIm9uIiwKICAgICAgICAgICAgICAgICAgICBuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlRm9jdXNMaXN0ZW5lcjogITAsCiAgICAgICAgICAgICAgICAgICAgaWdub3JlSGVpZ2h0Q2hhbmdlczogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgaWdub3JlSGVpZ2h0Q2hhbmdlc1NpemU6IDAsCiAgICAgICAgICAgICAgICAgICAgYWxsb3dIVE1MNUF1dG9QbGF5T25BbmRyb2lkOiAhMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHBhcmFsbGF4OiB7CiAgICAgICAgICAgICAgICAgICAgdHlwZTogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOiBbMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA1MCwgNTUsIDYwLCA2NSwgNzAsIDc1LCA4MCwgODVdLAogICAgICAgICAgICAgICAgICAgIG9yaWdvOiAiZW50ZXJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDQwMCwKICAgICAgICAgICAgICAgICAgICBiZ3BhcmFsbGF4OiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAib24iLAogICAgICAgICAgICAgICAgICAgIGRpc2FibGVfb25tb2JpbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGRkZF9zaGFkb3c6ICJvbiIsCiAgICAgICAgICAgICAgICAgICAgZGRkX2JnZnJlZXplOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkZGRfb3ZlcmZsb3c6ICJ2aXNpYmxlIiwKICAgICAgICAgICAgICAgICAgICBkZGRfbGF5ZXJfb3ZlcmZsb3c6ICJ2aXNpYmxlIiwKICAgICAgICAgICAgICAgICAgICBkZGRfel9jb3JyZWN0aW9uOiA2NSwKICAgICAgICAgICAgICAgICAgICBkZGRfcGF0aDogIm1vdXNlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNjcm9sbGVmZmVjdDogewogICAgICAgICAgICAgICAgICAgIGZhZGU6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGJsdXI6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIHNjYWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBncmF5c2NhbGU6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIG1heGJsdXI6IDEwLAogICAgICAgICAgICAgICAgICAgIG9uX2xheWVyczogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgb25fc2xpZGViZzogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgb25fc3RhdGljX2xheWVyczogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgb25fcGFyYWxsYXhfbGF5ZXJzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBvbl9wYXJhbGxheF9zdGF0aWNfbGF5ZXJzOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246ICJib3RoIiwKICAgICAgICAgICAgICAgICAgICBtdWx0aXBsaWNhdG9yOiAxLjM1LAogICAgICAgICAgICAgICAgICAgIG11bHRpcGxpY2F0b3JfbGF5ZXJzOiAuNSwKICAgICAgICAgICAgICAgICAgICB0aWx0OiAzMCwKICAgICAgICAgICAgICAgICAgICBkaXNhYmxlX29uX21vYmlsZTogIm9uIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNhcm91c2VsOiB7CiAgICAgICAgICAgICAgICAgICAgZWFzaW5nOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDgwMCwKICAgICAgICAgICAgICAgICAgICBzaG93TGF5ZXJzQWxsVGltZTogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbF9hbGlnbjogImNlbnRlciIsCiAgICAgICAgICAgICAgICAgICAgdmVydGljYWxfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgIGluZmluaXR5OiAib24iLAogICAgICAgICAgICAgICAgICAgIHNwYWNlOiAwLAogICAgICAgICAgICAgICAgICAgIG1heFZpc2libGVJdGVtczogMywKICAgICAgICAgICAgICAgICAgICBzdHJldGNoOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBmYWRlb3V0OiAib24iLAogICAgICAgICAgICAgICAgICAgIG1heFJvdGF0aW9uOiAwLAogICAgICAgICAgICAgICAgICAgIG1pblNjYWxlOiAwLAogICAgICAgICAgICAgICAgICAgIHZhcnlfZmFkZTogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgdmFyeV9yb3RhdGlvbjogIm9uIiwKICAgICAgICAgICAgICAgICAgICB2YXJ5X3NjYWxlOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICBib3JkZXJfcmFkaXVzOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nX3RvcDogMCwKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nX2JvdHRvbTogMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgICAgICAgICAgICBrZXlib2FyZE5hdmlnYXRpb246ICJvZmYiLAogICAgICAgICAgICAgICAgICAgIGtleWJvYXJkX2RpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgIG1vdXNlU2Nyb2xsTmF2aWdhdGlvbjogIm9mZiIsCiAgICAgICAgICAgICAgICAgICAgb25Ib3ZlclN0b3A6ICJvbiIsCiAgICAgICAgICAgICAgICAgICAgdG91Y2g6IHsKICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hlbmFibGVkOiAib2ZmIiwKICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hPbkRlc2t0b3A6ICJvZmYiLAogICAgICAgICAgICAgICAgICAgICAgICBzd2lwZV90cmVzaG9sZDogNzUsCiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXBlX21pbl90b3VjaGVzOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBkcmFnX2Jsb2NrX3ZlcnRpY2FsOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgc3dpcGVfZGlyZWN0aW9uOiAiaG9yaXpvbnRhbCIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGFycm93czogewogICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25tb2JpbGU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6ICEwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX2RlbGF5OiAyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfZGVsYXlfbW9iaWxlOiAxMjAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX3VuZGVyOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX292ZXI6IDk5OTksCiAgICAgICAgICAgICAgICAgICAgICAgIHRtcDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIHJ0bDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDIwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXI6ICJzbGlkZXIiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoX2FsaWduOiAicmlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9hbGlnbjogImNlbnRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoX29mZnNldDogMjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X29mZnNldDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogInNsaWRlciIKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgYnVsbGV0czogewogICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXI6ICJzbGlkZXIiLAogICAgICAgICAgICAgICAgICAgICAgICBydGw6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25tb2JpbGU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6ICEwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX2RlbGF5OiAyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfZGVsYXlfbW9iaWxlOiAxMjAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX3VuZGVyOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX292ZXI6IDk5OTksCiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgICAgICBoX2FsaWduOiAibGVmdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICBzcGFjZTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDIwLAogICAgICAgICAgICAgICAgICAgICAgICB2X29mZnNldDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG1wOiAnPHNwYW4gY2xhc3M9InRwLWJ1bGxldC1pbWFnZSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0cC1idWxsZXQtdGl0bGUiPjwvc3Bhbj4nCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB0aHVtYm5haWxzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogInNsaWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgIHJ0bDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCwKICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCwKICAgICAgICAgICAgICAgICAgICAgICAgbWluX3dpZHRoOiAxMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJfcGFkZGluZzogMiwKICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBlcl9jb2xvcjogIiNmNWY1ZjUiLAogICAgICAgICAgICAgICAgICAgICAgICB3cmFwcGVyX29wYWNpdHk6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHRtcDogJzxzcGFuIGNsYXNzPSJ0cC10aHVtYi1pbWFnZSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0cC10aHVtYi10aXRsZSI+PC9zcGFuPicsCiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2libGVBbW91bnQ6IDUsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25tb2JpbGU6ICExLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6ICEwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX2RlbGF5OiAyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfZGVsYXlfbW9iaWxlOiAxMjAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX3VuZGVyOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX292ZXI6IDk5OTksCiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogImhvcml6b250YWwiLAogICAgICAgICAgICAgICAgICAgICAgICBzcGFuOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJpbm5lciIsCiAgICAgICAgICAgICAgICAgICAgICAgIHNwYWNlOiAyLAogICAgICAgICAgICAgICAgICAgICAgICBoX2FsaWduOiAibGVmdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICBoX29mZnNldDogMjAsCiAgICAgICAgICAgICAgICAgICAgICAgIHZfb2Zmc2V0OiAwCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB0YWJzOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogInNsaWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgIHJ0bDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCwKICAgICAgICAgICAgICAgICAgICAgICAgbWluX3dpZHRoOiAxMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTAsCiAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJfcGFkZGluZzogMTAsCiAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJfY29sb3I6ICIjZjVmNWY1IiwKICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBlcl9vcGFjaXR5OiAxLAogICAgICAgICAgICAgICAgICAgICAgICB0bXA6ICc8c3BhbiBjbGFzcz0idHAtdGFiLWltYWdlIj48L3NwYW4+JywKICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJsZUFtb3VudDogNSwKICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9vbm1vYmlsZTogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogITAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfZGVsYXk6IDIwMCwKICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9kZWxheV9tb2JpbGU6IDEyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfdW5kZXI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb3ZlcjogOTk5OSwKICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uOiAiaG9yaXpvbnRhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW46ICExLAogICAgICAgICAgICAgICAgICAgICAgICBzcGFjZTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJpbm5lciIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwKICAgICAgICAgICAgICAgICAgICAgICAgdl9hbGlnbjogImNlbnRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAyMCwKICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZXh0ZW5zaW9uczogImV4dGVuc2lvbnMvIiwKICAgICAgICAgICAgICAgIGV4dGVuc2lvbnNfc3VmZml4OiAiLm1pbi5qcyIsCiAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6ICExCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiBpID0galF1ZXJ5LmV4dGVuZCghMCwge30sIGUsIGkpLCB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGkubWluSGVpZ2h0ID0gaS5taW5IZWlnaHQgIT0gdW5kZWZpbmVkID8gcGFyc2VJbnQoaS5taW5IZWlnaHQsIDApIDogaS5taW5IZWlnaHQsIGkuc2Nyb2xsZWZmZWN0Lm9uID0gIm9uIiA9PT0gaS5zY3JvbGxlZmZlY3QuZmFkZSB8fCAib24iID09PSBpLnNjcm9sbGVmZmVjdC5zY2FsZSB8fCAib24iID09PSBpLnNjcm9sbGVmZmVjdC5ibHVyIHx8ICJvbiIgPT09IGkuc2Nyb2xsZWZmZWN0LmdyYXlzY2FsZSwgImhlcm8iID09IGkuc2xpZGVyVHlwZSAmJiBlLmZpbmQoIj51bD5saSIpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIDAgPCBlICYmIGpRdWVyeSh0aGlzKS5yZW1vdmUoKQogICAgICAgICAgICAgICAgfSksIGkuanNGaWxlTG9jYXRpb24gPSBpLmpzRmlsZUxvY2F0aW9uIHx8IGdldFNjcmlwdExvY2F0aW9uKCJ0aGVtZXB1bmNoLnJldm9sdXRpb24ubWluLmpzIiksIGkuanNGaWxlTG9jYXRpb24gPSBpLmpzRmlsZUxvY2F0aW9uICsgaS5leHRlbnNpb25zLCBpLnNjcmlwdHNuZWVkZWQgPSBnZXROZWVkZWRTY3JpcHRzKGksIGUpLCBpLmN1cldpblJhbmdlID0gMCwgaS5ydGwgPSAhMCwgaS5uYXZpZ2F0aW9uICE9IHVuZGVmaW5lZCAmJiBpLm5hdmlnYXRpb24udG91Y2ggIT0gdW5kZWZpbmVkICYmIChpLm5hdmlnYXRpb24udG91Y2guc3dpcGVfbWluX3RvdWNoZXMgPSA1IDwgaS5uYXZpZ2F0aW9uLnRvdWNoLnN3aXBlX21pbl90b3VjaGVzID8gMSA6IGkubmF2aWdhdGlvbi50b3VjaC5zd2lwZV9taW5fdG91Y2hlcyksIGpRdWVyeSh0aGlzKS5vbigic2NyaXB0c2xvYWRlZCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGlmIChpLm1vZHVsZXNmYWlsaW5nKSByZXR1cm4gZS5odG1sKCc8ZGl2IHN0eWxlPSJtYXJnaW46YXV0bztsaW5lLWhlaWdodDo0MHB4O2ZvbnQtc2l6ZToxNHB4O2NvbG9yOiNmZmY7cGFkZGluZzoxNXB4O2JhY2tncm91bmQ6I2U3NGMzYzttYXJnaW46MjBweCAwcHg7Ij4hISBFcnJvciBhdCBsb2FkaW5nIFNsaWRlciBSZXZvbHV0aW9uIDUuMCBFeHRyZW5zaW9ucy4nICsgaS5lcnJvcm0gKyAiPC9kaXY+Iikuc2hvdygpLCAhMTsKICAgICAgICAgICAgICAgICAgICBfUi5taWdyYXRpb24gIT0gdW5kZWZpbmVkICYmIChpID0gX1IubWlncmF0aW9uKGUsIGkpKSwgcHVuY2hncy5mb3JjZTNEID0gITAsICJvbiIgIT09IGkuc2ltcGxpZnlBbGwgJiYgcHVuY2hncy5Ud2VlbkxpdGUubGFnU21vb3RoaW5nKDFlMywgMTYpLCBwcmVwYXJlT3B0aW9ucyhlLCBpKSwgaW5pdFNsaWRlcihlLCBpKQogICAgICAgICAgICAgICAgfSksIGVbMF0ub3B0ID0gaSwgd2FpdEZvclNjcmlwdHMoZSwgaSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGdldFJTVmVyc2lvbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBpZiAoITAgPT09IGUpIHJldHVybiBqUXVlcnkoImJvZHkiKS5kYXRhKCJ0cF9yc192ZXJzaW9uIik7CiAgICAgICAgICAgIHZhciBpID0galF1ZXJ5KCJib2R5IikuZGF0YSgidHBfcnNfdmVyc2lvbiIpLAogICAgICAgICAgICAgICAgdCA9ICIiOwogICAgICAgICAgICBmb3IgKHZhciBhIGluIHQgKz0gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIiwgdCArPSAiICAgIEN1cnJlbnRseSBMb2FkZWQgU2xpZGVyIFJldm9sdXRpb24gJiBTUiBNb2R1bGVzIDpcbiIsIHQgKz0gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIiwgaSkgdCArPSBpW2FdLmFsaWFzICsgIjogIiArIGlbYV0udmVyICsgIlxuIjsKICAgICAgICAgICAgcmV0dXJuIHQgKyAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCiAgICAgICAgfSwKICAgICAgICByZXZyZW1vdmVzbGlkZTogZnVuY3Rpb24ocikgewogICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgaSA9IGVbMF0ub3B0OwogICAgICAgICAgICAgICAgaWYgKCEociA8IDAgfHwgciA+IGkuc2xpZGVhbW91bnQpICYmIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiAwIDwgalF1ZXJ5KCJib2R5IikuZmluZCgiIyIgKyBlLmF0dHIoImlkIikpLmxlbmd0aCAmJiBpICYmIDAgPCBpLmxpLmxlbmd0aCAmJiAoMCA8IHIgfHwgciA8PSBpLmxpLmxlbmd0aCkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGpRdWVyeShpLmxpW3JdKSwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IHQuZGF0YSgiaW5kZXgiKSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9ICExOwogICAgICAgICAgICAgICAgICAgIGkuc2xpZGVhbW91bnQgPSBpLnNsaWRlYW1vdW50IC0gMSwgaS5yZWFsc2xpZGVhbW91bnQgPSBpLnJlYWxzbGlkZWFtb3VudCAtIDEsIHJlbW92ZU5hdldpdGhMaXJlZigiLnRwLWJ1bGxldCIsIGEsIGkpLCByZW1vdmVOYXZXaXRoTGlyZWYoIi50cC10YWIiLCBhLCBpKSwgcmVtb3ZlTmF2V2l0aExpcmVmKCIudHAtdGh1bWIiLCBhLCBpKSwgdC5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIikgJiYgKG4gPSAhMCksIHQucmVtb3ZlKCksIGkubGkgPSByZW1vdmVBcnJheShpLmxpLCByKSwgaS5jYXJvdXNlbCAmJiBpLmNhcm91c2VsLnNsaWRlcyAmJiAoaS5jYXJvdXNlbC5zbGlkZXMgPSByZW1vdmVBcnJheShpLmNhcm91c2VsLnNsaWRlcywgcikpLCBpLnRodW1icyA9IHJlbW92ZUFycmF5KGkudGh1bWJzLCByKSwgX1IudXBkYXRlTmF2SW5kZXhlcyAmJiBfUi51cGRhdGVOYXZJbmRleGVzKGkpLCBuICYmIGUucmV2bmV4dCgpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5saSwgewogICAgICAgICAgICAgICAgICAgICAgICBtaW5XaWR0aDogIjk5JSIKICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkubGksIHsKICAgICAgICAgICAgICAgICAgICAgICAgbWluV2lkdGg6ICIxMDAlIgogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXZhZGRjYWxsYmFjazogZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5vcHQgJiYgKHRoaXMub3B0LmNhbGxCYWNrQXJyYXkgPT09IHVuZGVmaW5lZCAmJiAodGhpcy5vcHQuY2FsbEJhY2tBcnJheSA9IG5ldyBBcnJheSksIHRoaXMub3B0LmNhbGxCYWNrQXJyYXkucHVzaChlKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHJldmdldHBhcmFsbGF4cHJvYzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBqUXVlcnkodGhpcylbMF0ub3B0LnNjcm9sbHByb2MKICAgICAgICB9LAogICAgICAgIHJldmRlYnVnbW9kZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGVbMF0ub3B0LmRlYnVnTW9kZSA9ICEwLCBjb250YWluZXJSZXNpemVkKGUsIGVbMF0ub3B0KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgcmV2c2Nyb2xsOiBmdW5jdGlvbihpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGpRdWVyeSgiYm9keSxodG1sIikuYW5pbWF0ZSh7CiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVG9wOiBlLm9mZnNldCgpLnRvcCArIGUuaGVpZ2h0KCkgLSBpICsgInB4IgogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA0MDAKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXZyZWRyYXc6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgY29udGFpbmVyUmVzaXplZChlLCBlWzBdLm9wdCkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHJldmtpbGw6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIGkgPSB0aGlzLAogICAgICAgICAgICAgICAgdCA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgaWYgKHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxEZWxheWVkQ2FsbHNUbyhfUi5zaG93SGlkZU5hdkVsZW1lbnRzKSwgdCAhPSB1bmRlZmluZWQgJiYgMCA8IHQubGVuZ3RoICYmIDAgPCBqUXVlcnkoImJvZHkiKS5maW5kKCIjIiArIHQuYXR0cigiaWQiKSkubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0LmRhdGEoImNvbnRob3ZlciIsIDEpLCB0LmRhdGEoImNvbnRob3Zlci1jaGFuZ2VkIiwgMSksIHQudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnBhdXNlIik7CiAgICAgICAgICAgICAgICB2YXIgYSA9IHQucGFyZW50KCkuZmluZCgiLnRwLWJhbm5lcnRpbWVyIiksCiAgICAgICAgICAgICAgICAgICAgbiA9IHRbMF0ub3B0OwogICAgICAgICAgICAgICAgbi50b25wYXVzZSA9ICEwLCB0LnRyaWdnZXIoInN0b3B0aW1lciIpOwogICAgICAgICAgICAgICAgdmFyIHIgPSAicmVzaXplLnJldnNsaWRlci0iICsgdC5hdHRyKCJpZCIpOwogICAgICAgICAgICAgICAgalF1ZXJ5KHdpbmRvdykudW5iaW5kKHIpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5raWxsVHdlZW5zT2YodC5maW5kKCIqIiksICExKSwgcHVuY2hncy5Ud2VlbkxpdGUua2lsbFR3ZWVuc09mKHQsICExKSwgdC51bmJpbmQoImhvdmVyLCBtb3VzZW92ZXIsIG1vdXNlZW50ZXIsbW91c2VsZWF2ZSwgcmVzaXplIiksIHIgPSAicmVzaXplLnJldnNsaWRlci0iICsgdC5hdHRyKCJpZCIpLCBqUXVlcnkod2luZG93KS5vZmYociksIHQuZmluZCgiKiIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgZS51bmJpbmQoIm9uLCBob3ZlciwgbW91c2VlbnRlcixtb3VzZWxlYXZlLG1vdXNlb3ZlciwgcmVzaXplLHJlc3RhcnR0aW1lciwgc3RvcHRpbWVyIiksIGUub2ZmKCJvbiwgaG92ZXIsIG1vdXNlZW50ZXIsbW91c2VsZWF2ZSxtb3VzZW92ZXIsIHJlc2l6ZSIpLCBlLmRhdGEoIm15U3BsaXRUZXh0IiwgbnVsbCksIGUuZGF0YSgiY3RsIiwgbnVsbCksIGUuZGF0YSgidHdlZW4iKSAhPSB1bmRlZmluZWQgJiYgZS5kYXRhKCJ0d2VlbiIpLmtpbGwoKSwgZS5kYXRhKCJrZW5idXJuIikgIT0gdW5kZWZpbmVkICYmIGUuZGF0YSgia2VuYnVybiIpLmtpbGwoKSwgZS5kYXRhKCJ0aW1lbGluZV9vdXQiKSAhPSB1bmRlZmluZWQgJiYgZS5kYXRhKCJ0aW1lbGluZV9vdXQiKS5raWxsKCksIGUuZGF0YSgidGltZWxpbmUiKSAhPSB1bmRlZmluZWQgJiYgZS5kYXRhKCJ0aW1lbGluZSIpLmtpbGwoKSwgZS5yZW1vdmUoKSwgZS5lbXB0eSgpLCBlID0gbnVsbAogICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxUd2VlbnNPZih0LmZpbmQoIioiKSwgITEpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5raWxsVHdlZW5zT2YodCwgITEpLCBhLnJlbW92ZSgpOwogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICB0LmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLnJlbW92ZSgpCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICB0LmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKS5yZW1vdmUoKQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdC5yZW1vdmUoKQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgIHJldHVybiB0LmVtcHR5KCksIHQuaHRtbCgpLCBuID0gdCA9IG51bGwsIGRlbGV0ZSBpLmMsIGRlbGV0ZSBpLm9wdCwgZGVsZXRlIGkuY29udGFpbmVyLCAhMAogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAhMQogICAgICAgIH0sCiAgICAgICAgcmV2cGF1c2U6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICBlICE9IHVuZGVmaW5lZCAmJiAwIDwgZS5sZW5ndGggJiYgMCA8IGpRdWVyeSgiYm9keSIpLmZpbmQoIiMiICsgZS5hdHRyKCJpZCIpKS5sZW5ndGggJiYgKGUuZGF0YSgiY29udGhvdmVyIiwgMSksIGUuZGF0YSgiY29udGhvdmVyLWNoYW5nZWQiLCAxKSwgZS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9ucGF1c2UiKSwgZVswXS5vcHQudG9ucGF1c2UgPSAhMCwgZS50cmlnZ2VyKCJzdG9wdGltZXIiKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHJldnJlc3VtZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiAwIDwgalF1ZXJ5KCJib2R5IikuZmluZCgiIyIgKyBlLmF0dHIoImlkIikpLmxlbmd0aCAmJiAoZS5kYXRhKCJjb250aG92ZXIiLCAwKSwgZS5kYXRhKCJjb250aG92ZXItY2hhbmdlZCIsIDEpLCBlLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25yZXN1bWUiKSwgZVswXS5vcHQudG9ucGF1c2UgPSAhMSwgZS50cmlnZ2VyKCJzdGFydHRpbWVyIikpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXZzdGFydDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICBpZiAoZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIDAgPCBqUXVlcnkoImJvZHkiKS5maW5kKCIjIiArIGUuYXR0cigiaWQiKSkubGVuZ3RoICYmIGVbMF0ub3B0ICE9PSB1bmRlZmluZWQpIHJldHVybiBlWzBdLm9wdC5zbGlkZXJpc3J1bm5pbmcgPyAoY29uc29sZS5sb2coIlNsaWRlciBJcyBSdW5uaW5nIEFscmVhZHkiKSwgITEpIDogKChlWzBdLm9wdC5jID0gZSlbMF0ub3B0LnVsID0gZS5maW5kKCI+dWwiKSwgcnVuU2xpZGVyKGUsIGVbMF0ub3B0KSwgITApCiAgICAgICAgfSwKICAgICAgICByZXZuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIDAgPCBqUXVlcnkoImJvZHkiKS5maW5kKCIjIiArIGUuYXR0cigiaWQiKSkubGVuZ3RoICYmIF9SLmNhbGxpbmdOZXdTbGlkZShlLCAxKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgcmV2cHJldjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiAwIDwgalF1ZXJ5KCJib2R5IikuZmluZCgiIyIgKyBlLmF0dHIoImlkIikpLmxlbmd0aCAmJiBfUi5jYWxsaW5nTmV3U2xpZGUoZSwgLTEpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXZtYXhzbGlkZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiBqUXVlcnkodGhpcykuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwgPmxpIikubGVuZ3RoCiAgICAgICAgfSwKICAgICAgICByZXZjdXJyZW50c2xpZGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgaWYgKGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiAwIDwgalF1ZXJ5KCJib2R5IikuZmluZCgiIyIgKyBlLmF0dHIoImlkIikpLmxlbmd0aCkgcmV0dXJuIHBhcnNlSW50KGVbMF0ub3B0LmFjdCwgMCkgKyAxCiAgICAgICAgfSwKICAgICAgICByZXZsYXN0c2xpZGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4galF1ZXJ5KHRoaXMpLmZpbmQoIi50cC1yZXZzbGlkZXItbWFpbnVsID5saSIpLmxlbmd0aAogICAgICAgIH0sCiAgICAgICAgcmV2c2hvd3NsaWRlOiBmdW5jdGlvbihpKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiAwIDwgalF1ZXJ5KCJib2R5IikuZmluZCgiIyIgKyBlLmF0dHIoImlkIikpLmxlbmd0aCAmJiBfUi5jYWxsaW5nTmV3U2xpZGUoZSwgInRvIiArIChpIC0gMSkpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXZjYWxsc2xpZGV3aXRoaWQ6IGZ1bmN0aW9uKGkpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIDAgPCBqUXVlcnkoImJvZHkiKS5maW5kKCIjIiArIGUuYXR0cigiaWQiKSkubGVuZ3RoICYmIF9SLmNhbGxpbmdOZXdTbGlkZShlLCBpKQogICAgICAgICAgICB9KQogICAgICAgIH0KICAgIH0pOwogICAgdmFyIF9SID0galF1ZXJ5LmZuLnJldm9sdXRpb247CiAgICBqUXVlcnkuZXh0ZW5kKCEwLCBfUiwgewogICAgICAgIGdldHZlcnNpb246IGZ1bmN0aW9uKCkgewogICAgICAgICAgICByZXR1cm4gdmVyc2lvbgogICAgICAgIH0sCiAgICAgICAgY29tcGFyZV92ZXJzaW9uOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciBpID0galF1ZXJ5KCJib2R5IikuZGF0YSgidHBfcnNfdmVyc2lvbiIpOwogICAgICAgICAgICByZXR1cm4gKGkgPSBpID09PSB1bmRlZmluZWQgPyBuZXcgT2JqZWN0IDogaSkuQ29yZSA9PT0gdW5kZWZpbmVkICYmIChpLkNvcmUgPSBuZXcgT2JqZWN0LCBpLkNvcmUuYWxpYXMgPSAiU2xpZGVyIFJldm9sdXRpb24gQ29yZSIsIGkuQ29yZS5uYW1lID0gImpxdWVyeS50aGVtZXB1bmNoLnJldm9sdXRpb24ubWluLmpzIiwgaS5Db3JlLnZlciA9IF9SLmdldHZlcnNpb24oKS5jb3JlKSwgInN0b3AiICE9IGUuY2hlY2sgJiYgKF9SLmdldHZlcnNpb24oKS5jb3JlIDwgZS5taW5fY29yZSA/IChlLmNoZWNrID09PSB1bmRlZmluZWQgJiYgKGNvbnNvbGUubG9nKCIlY1NsaWRlciBSZXZvbHV0aW9uIFdhcm5pbmcgKENvcmU6IiArIF9SLmdldHZlcnNpb24oKS5jb3JlICsgIikiLCAiY29sb3I6I2MwMzkyYjtmb250LXdlaWdodDpib2xkOyIpLCBjb25zb2xlLmxvZygiJWMgICAgIENvcmUgaXMgb2xkZXIgdGhhbiBleHBlY3RlZCAoIiArIGUubWluX2NvcmUgKyAiKSBmcm9tICIgKyBlLmFsaWFzLCAiY29sb3I6IzMzMyIpLCBjb25zb2xlLmxvZygiJWMgICAgIFBsZWFzZSB1cGRhdGUgU2xpZGVyIFJldm9sdXRpb24gdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLiIsICJjb2xvcjojMzMzIiksIGNvbnNvbGUubG9nKCIlYyAgICAgSXQgbWlnaHQgYmUgcmVxdWlyZWQgdG8gcHVyZ2UgYW5kIGNsZWFyIFNlcnZlci9DbGllbnQgc2lkZSBDYWNoZXMuIiwgImNvbG9yOiMzMzMiKSksIGUuY2hlY2sgPSAic3RvcCIpIDogX1IuZ2V0dmVyc2lvbigpW2UubmFtZV0gIT0gdW5kZWZpbmVkICYmIGUudmVyc2lvbiA8IF9SLmdldHZlcnNpb24oKVtlLm5hbWVdICYmIChlLmNoZWNrID09PSB1bmRlZmluZWQgJiYgKGNvbnNvbGUubG9nKCIlY1NsaWRlciBSZXZvbHV0aW9uIFdhcm5pbmcgKENvcmU6IiArIF9SLmdldHZlcnNpb24oKS5jb3JlICsgIikiLCAiY29sb3I6I2MwMzkyYjtmb250LXdlaWdodDpib2xkOyIpLCBjb25zb2xlLmxvZygiJWMgICAgICIgKyBlLmFsaWFzICsgIiAoIiArIGUudmVyc2lvbiArICIpIGlzIG9sZGVyIHRoYW4gcmVxdWllcmVkICgiICsgX1IuZ2V0dmVyc2lvbigpW2UubmFtZV0gKyAiKSIsICJjb2xvcjojMzMzIiksIGNvbnNvbGUubG9nKCIlYyAgICAgUGxlYXNlIHVwZGF0ZSBTbGlkZXIgUmV2b2x1dGlvbiB0byB0aGUgbGF0ZXN0IHZlcnNpb24uIiwgImNvbG9yOiMzMzMiKSwgY29uc29sZS5sb2coIiVjICAgICBJdCBtaWdodCBiZSByZXF1aXJlZCB0byBwdXJnZSBhbmQgY2xlYXIgU2VydmVyL0NsaWVudCBzaWRlIENhY2hlcy4iLCAiY29sb3I6IzMzMyIpKSwgZS5jaGVjayA9ICJzdG9wIikpLCBpW2UuYWxpYXNdID09PSB1bmRlZmluZWQgJiYgKGlbZS5hbGlhc10gPSBuZXcgT2JqZWN0LCBpW2UuYWxpYXNdLmFsaWFzID0gZS5hbGlhcywgaVtlLmFsaWFzXS52ZXIgPSBlLnZlcnNpb24sIGlbZS5hbGlhc10ubmFtZSA9IGUubmFtZSksIGpRdWVyeSgiYm9keSIpLmRhdGEoInRwX3JzX3ZlcnNpb24iLCBpKSwgZQogICAgICAgIH0sCiAgICAgICAgY3VycmVudFNsaWRlSW5kZXg6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIGkgPSBlLmMuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmluZGV4KCk7CiAgICAgICAgICAgIHJldHVybiAtMSA9PSBpID8gMCA6IGkKICAgICAgICB9LAogICAgICAgIHNpbXA6IGZ1bmN0aW9uKGUsIGksIHQpIHsKICAgICAgICAgICAgdmFyIGEgPSBNYXRoLmFicyhlKSAtIE1hdGguZmxvb3IoTWF0aC5hYnMoZSAvIGkpKSAqIGk7CiAgICAgICAgICAgIHJldHVybiB0ID8gYSA6IGUgPCAwID8gLTEgKiBhIDogYQogICAgICAgIH0sCiAgICAgICAgaU9TVmVyc2lvbjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gITE7CiAgICAgICAgICAgIHJldHVybiBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGhvbmUvaSkgfHwgbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvaVBvZC9pKSB8fCBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGFkL2kpID8gbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvT1MgNF9cZCBsaWtlIE1hYyBPUyBYL2kpICYmIChlID0gITApIDogZSA9ICExLCBlCiAgICAgICAgfSwKICAgICAgICBpc0lFOiBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIHZhciB0ID0galF1ZXJ5KCc8ZGl2IHN0eWxlPSJkaXNwbGF5Om5vbmU7Ii8+JykuYXBwZW5kVG8oalF1ZXJ5KCJib2R5IikpOwogICAgICAgICAgICB0Lmh0bWwoIlx4M2MhLS1baWYgIiArIChpIHx8ICIiKSArICIgSUUgIiArIChlIHx8ICIiKSArICJdPjxhPiZuYnNwOzwvYT48IVtlbmRpZl0tLVx4M2UiKTsKICAgICAgICAgICAgdmFyIGEgPSB0LmZpbmQoImEiKS5sZW5ndGg7CiAgICAgICAgICAgIHJldHVybiB0LnJlbW92ZSgpLCBhCiAgICAgICAgfSwKICAgICAgICBpc19tb2JpbGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IFsiYW5kcm9pZCIsICJ3ZWJvcyIsICJpcGhvbmUiLCAiaXBhZCIsICJibGFja2JlcnJ5IiwgIkFuZHJvaWQiLCAid2Vib3MiLCAsICJpUG9kIiwgImlQaG9uZSIsICJpUGFkIiwgIkJsYWNrYmVycnkiLCAiQmxhY2tCZXJyeSJdLAogICAgICAgICAgICAgICAgaSA9ICExOwogICAgICAgICAgICBmb3IgKHZhciB0IGluIGUpIDEgPCBuYXZpZ2F0b3IudXNlckFnZW50LnNwbGl0KGVbdF0pLmxlbmd0aCAmJiAoaSA9ICEwKTsKICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICB9LAogICAgICAgIGlzX2FuZHJvaWQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IFsiYW5kcm9pZCIsICJBbmRyb2lkIl0sCiAgICAgICAgICAgICAgICBpID0gITE7CiAgICAgICAgICAgIGZvciAodmFyIHQgaW4gZSkgMSA8IG5hdmlnYXRvci51c2VyQWdlbnQuc3BsaXQoZVt0XSkubGVuZ3RoICYmIChpID0gITApOwogICAgICAgICAgICByZXR1cm4gaQogICAgICAgIH0sCiAgICAgICAgY2FsbEJhY2tIYW5kbGluZzogZnVuY3Rpb24oZSwgdCwgYSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgZS5jYWxsQmFja0FycmF5ICYmIGpRdWVyeS5lYWNoKGUuY2FsbEJhY2tBcnJheSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgICAgIGkgJiYgaS5pbm1vZHVsZSAmJiBpLmlubW9kdWxlID09PSB0ICYmIGkuYXRwb3NpdGlvbiAmJiBpLmF0cG9zaXRpb24gPT09IGEgJiYgaS5jYWxsYmFjayAmJiBpLmNhbGxiYWNrLmNhbGwoKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgY29uc29sZS5sb2coIkNhbGwgQmFjayBGYWlsZWQiKQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBnZXRfYnJvd3NlcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlLCBpID0gbmF2aWdhdG9yLmFwcE5hbWUsCiAgICAgICAgICAgICAgICB0ID0gbmF2aWdhdG9yLnVzZXJBZ2VudCwKICAgICAgICAgICAgICAgIGEgPSB0Lm1hdGNoKC8ob3BlcmF8Y2hyb21lfHNhZmFyaXxmaXJlZm94fG1zaWUpXC8/XHMqKFwuP1xkKyhcLlxkKykqKS9pKTsKICAgICAgICAgICAgcmV0dXJuIGEgJiYgbnVsbCAhPSAoZSA9IHQubWF0Y2goL3ZlcnNpb25cLyhbXC5cZF0rKS9pKSkgJiYgKGFbMl0gPSBlWzFdKSwgKGEgPSBhID8gW2FbMV0sIGFbMl1dIDogW2ksIG5hdmlnYXRvci5hcHBWZXJzaW9uLCAiLT8iXSlbMF0KICAgICAgICB9LAogICAgICAgIGdldF9icm93c2VyX3ZlcnNpb246IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSwgaSA9IG5hdmlnYXRvci5hcHBOYW1lLAogICAgICAgICAgICAgICAgdCA9IG5hdmlnYXRvci51c2VyQWdlbnQsCiAgICAgICAgICAgICAgICBhID0gdC5tYXRjaCgvKG9wZXJhfGNocm9tZXxzYWZhcml8ZmlyZWZveHxtc2llKVwvP1xzKihcLj9cZCsoXC5cZCspKikvaSk7CiAgICAgICAgICAgIHJldHVybiBhICYmIG51bGwgIT0gKGUgPSB0Lm1hdGNoKC92ZXJzaW9uXC8oW1wuXGRdKykvaSkpICYmIChhWzJdID0gZVsxXSksIChhID0gYSA/IFthWzFdLCBhWzJdXSA6IFtpLCBuYXZpZ2F0b3IuYXBwVmVyc2lvbiwgIi0/Il0pWzFdCiAgICAgICAgfSwKICAgICAgICBpc1NhZmFyaTExOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkudHJpbShfUi5nZXRfYnJvd3NlcigpLnRvTG93ZXJDYXNlKCkpOwogICAgICAgICAgICByZXR1cm4gLTEgPT09IGpRdWVyeS50cmltKG5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKSkuc2VhcmNoKCJlZGdlIikgJiYgIm1zaWUiICE9PSBlICYmIGUubWF0Y2goL3NhZmFyaXxjaHJvbWUvKQogICAgICAgIH0sCiAgICAgICAgZ2V0SG9yaXpvbnRhbE9mZnNldDogZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICB2YXIgdCA9IGdXaWRlck91dChlLCAiLm91dGVyLWxlZnQiKSwKICAgICAgICAgICAgICAgIGEgPSBnV2lkZXJPdXQoZSwgIi5vdXRlci1yaWdodCIpOwogICAgICAgICAgICBzd2l0Y2ggKGkpIHsKICAgICAgICAgICAgICAgIGNhc2UgImxlZnQiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiB0OwogICAgICAgICAgICAgICAgY2FzZSAicmlnaHQiOgogICAgICAgICAgICAgICAgICAgIHJldHVybiBhOwogICAgICAgICAgICAgICAgY2FzZSAiYm90aCI6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgKyBhCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGNhbGxpbmdOZXdTbGlkZTogZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICB2YXIgdCA9IDAgPCBlLmZpbmQoIi5uZXh0LXJldnNsaWRlIikubGVuZ3RoID8gZS5maW5kKCIubmV4dC1yZXZzbGlkZSIpLmluZGV4KCkgOiAwIDwgZS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLmxlbmd0aCA/IGUuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5pbmRleCgpIDogZS5maW5kKCIuYWN0aXZlLXJldnNsaWRlIikuaW5kZXgoKSwKICAgICAgICAgICAgICAgIGEgPSAwLAogICAgICAgICAgICAgICAgbiA9IGVbMF0ub3B0OwogICAgICAgICAgICBlLmZpbmQoIi5uZXh0LXJldnNsaWRlIikucmVtb3ZlQ2xhc3MoIm5leHQtcmV2c2xpZGUiKSwgZS5maW5kKCIuYWN0aXZlLXJldnNsaWRlIikuaGFzQ2xhc3MoInRwLWludmlzaWJsZS1zbGlkZSIpICYmICh0ID0gbi5sYXN0X3Nob3duX3NsaWRlKSwgaSAmJiBqUXVlcnkuaXNOdW1lcmljKGkpIHx8IGkubWF0Y2goL3RvL2cpID8gKGEgPSAxID09PSBpIHx8IC0xID09PSBpID8gKGEgPSB0ICsgaSkgPCAwID8gbi5zbGlkZWFtb3VudCAtIDEgOiBhID49IG4uc2xpZGVhbW91bnQgPyAwIDogYSA6IChpID0galF1ZXJ5LmlzTnVtZXJpYyhpKSA/IGkgOiBwYXJzZUludChpLnNwbGl0KCJ0byIpWzFdLCAwKSkgPCAwID8gMCA6IGkgPiBuLnNsaWRlYW1vdW50IC0gMSA/IG4uc2xpZGVhbW91bnQgLSAxIDogaSwgZS5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpOmVxKCIgKyBhICsgIikiKS5hZGRDbGFzcygibmV4dC1yZXZzbGlkZSIpKSA6IGkgJiYgZS5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgZS5kYXRhKCJpbmRleCIpID09PSBpICYmIGUuYWRkQ2xhc3MoIm5leHQtcmV2c2xpZGUiKQogICAgICAgICAgICB9KSwgYSA9IGUuZmluZCgiLm5leHQtcmV2c2xpZGUiKS5pbmRleCgpLCBlLnRyaWdnZXIoInJldm9sdXRpb24ubmV4dHNsaWRlLndhaXRpbmciKSwgdCA9PT0gYSAmJiB0ID09PSBuLmxhc3Rfc2hvd25fc2xpZGUgfHwgYSAhPT0gdCAmJiAtMSAhPSBhID8gc3dhcFNsaWRlKGUpIDogZS5maW5kKCIubmV4dC1yZXZzbGlkZSIpLnJlbW92ZUNsYXNzKCJuZXh0LXJldnNsaWRlIikKICAgICAgICB9LAogICAgICAgIHNsb3RTaXplOiBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIGkuc2xvdHcgPSBNYXRoLmNlaWwoaS53aWR0aCAvIGkuc2xvdHMpLCAiZnVsbHNjcmVlbiIgPT0gaS5zbGlkZXJMYXlvdXQgPyBpLnNsb3RoID0gTWF0aC5jZWlsKGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpIC8gaS5zbG90cykgOiBpLnNsb3RoID0gTWF0aC5jZWlsKGkuaGVpZ2h0IC8gaS5zbG90cyksICJvbiIgPT0gaS5hdXRvSGVpZ2h0ICYmIGUgIT09IHVuZGVmaW5lZCAmJiAiIiAhPT0gZSAmJiAoaS5zbG90aCA9IE1hdGguY2VpbChlLmhlaWdodCgpIC8gaS5zbG90cykpCiAgICAgICAgfSwKICAgICAgICBzZXRTaXplOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciBpID0gKGUudG9wX291dGVyIHx8IDApICsgKGUuYm90dG9tX291dGVyIHx8IDApLAogICAgICAgICAgICAgICAgdCA9IHBhcnNlSW50KGUuY2Fyb3VzZWwucGFkZGluZ190b3AgfHwgMCwgMCksCiAgICAgICAgICAgICAgICBhID0gcGFyc2VJbnQoZS5jYXJvdXNlbC5wYWRkaW5nX2JvdHRvbSB8fCAwLCAwKSwKICAgICAgICAgICAgICAgIG4gPSBlLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0sCiAgICAgICAgICAgICAgICByID0gMCwKICAgICAgICAgICAgICAgIG8gPSAtMSA9PT0gZS5uZXh0U2xpZGUgfHwgZS5uZXh0U2xpZGUgPT09IHVuZGVmaW5lZCA/IDAgOiBlLm5leHRTbGlkZTsKICAgICAgICAgICAgaWYgKGUucGFkZGluZ3MgPSBlLnBhZGRpbmdzID09PSB1bmRlZmluZWQgPyB7CiAgICAgICAgICAgICAgICAgICAgdG9wOiBwYXJzZUludChlLmMucGFyZW50KCkuY3NzKCJwYWRkaW5nVG9wIiksIDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiBwYXJzZUludChlLmMucGFyZW50KCkuY3NzKCJwYWRkaW5nQm90dG9tIiksIDApIHx8IDAKICAgICAgICAgICAgICAgIH0gOiBlLnBhZGRpbmdzLCBlLnJvd3pvbmVzICYmIDAgPCBlLnJvd3pvbmVzLmxlbmd0aCkKICAgICAgICAgICAgICAgIGZvciAodmFyIHMgPSAwOyBzIDwgZS5yb3d6b25lc1tvXS5sZW5ndGg7IHMrKykgciArPSBlLnJvd3pvbmVzW29dW3NdWzBdLm9mZnNldEhlaWdodDsKICAgICAgICAgICAgaWYgKG4gPSAobiA9IG4gPCBlLm1pbkhlaWdodCA/IGUubWluSGVpZ2h0IDogbikgPCByID8gciA6IG4sICJmdWxsd2lkdGgiID09IGUuc2xpZGVyTGF5b3V0ICYmICJvZmYiID09IGUuYXV0b0hlaWdodCAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5jLCB7CiAgICAgICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiBuICsgInB4IgogICAgICAgICAgICAgICAgfSksIGUuYy5jc3MoewogICAgICAgICAgICAgICAgICAgIG1hcmdpblRvcDogdCwKICAgICAgICAgICAgICAgICAgICBtYXJnaW5Cb3R0b206IGEKICAgICAgICAgICAgICAgIH0pLCBlLndpZHRoID0gZS51bC53aWR0aCgpLCBlLmhlaWdodCA9IGUudWwuaGVpZ2h0KCksIHNldFNjYWxlKGUpLCBlLmhlaWdodCA9IE1hdGgucm91bmQoZS5ncmlkaGVpZ2h0W2UuY3VyV2luUmFuZ2VdICogKGUud2lkdGggLyBlLmdyaWR3aWR0aFtlLmN1cldpblJhbmdlXSkpLCBlLmhlaWdodCA+IGUuZ3JpZGhlaWdodFtlLmN1cldpblJhbmdlXSAmJiAib24iICE9IGUuYXV0b0hlaWdodCAmJiAoZS5oZWlnaHQgPSBlLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0pLCAiZnVsbHNjcmVlbiIgPT0gZS5zbGlkZXJMYXlvdXQgfHwgZS5pbmZ1bGxzY3JlZW5tb2RlKSB7CiAgICAgICAgICAgICAgICBlLmhlaWdodCA9IGUuYncgKiBlLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0sIGUuYy5wYXJlbnQoKS53aWR0aCgpOwogICAgICAgICAgICAgICAgdmFyIGwgPSBqUXVlcnkod2luZG93KS5oZWlnaHQoKTsKICAgICAgICAgICAgICAgIGlmIChlLmZ1bGxTY3JlZW5PZmZzZXRDb250YWluZXIgIT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGQgPSBlLmZ1bGxTY3JlZW5PZmZzZXRDb250YWluZXIuc3BsaXQoIiwiKTsKICAgICAgICAgICAgICAgICAgICAgICAgZCAmJiBqUXVlcnkuZWFjaChkLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsID0gMCA8IGpRdWVyeShpKS5sZW5ndGggPyBsIC0galF1ZXJ5KGkpLm91dGVySGVpZ2h0KCEwKSA6IGwKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIDEgPCBlLmZ1bGxTY3JlZW5PZmZzZXQuc3BsaXQoIiUiKS5sZW5ndGggJiYgZS5mdWxsU2NyZWVuT2Zmc2V0ICE9IHVuZGVmaW5lZCAmJiAwIDwgZS5mdWxsU2NyZWVuT2Zmc2V0Lmxlbmd0aCA/IGwgLT0galF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkgKiBwYXJzZUludChlLmZ1bGxTY3JlZW5PZmZzZXQsIDApIC8gMTAwIDogZS5mdWxsU2NyZWVuT2Zmc2V0ICE9IHVuZGVmaW5lZCAmJiAwIDwgZS5mdWxsU2NyZWVuT2Zmc2V0Lmxlbmd0aCAmJiAobCAtPSBwYXJzZUludChlLmZ1bGxTY3JlZW5PZmZzZXQsIDApKQogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBsID0gbCA8IGUubWluSGVpZ2h0ID8gZS5taW5IZWlnaHQgOiBsLCBsIC09IGksIGUuYy5wYXJlbnQoKS5oZWlnaHQobCksIGUuYy5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIikuaGVpZ2h0KGwpLCBlLmMuY3NzKHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICIxMDAlIgogICAgICAgICAgICAgICAgfSksIGUuaGVpZ2h0ID0gbCwgZS5taW5IZWlnaHQgIT0gdW5kZWZpbmVkICYmIGUuaGVpZ2h0IDwgZS5taW5IZWlnaHQgJiYgKGUuaGVpZ2h0ID0gZS5taW5IZWlnaHQpLCBlLmhlaWdodCA9IHBhcnNlSW50KHIsIDApID4gcGFyc2VJbnQoZS5oZWlnaHQsIDApID8gciA6IGUuaGVpZ2h0CiAgICAgICAgICAgIH0gZWxzZSBlLm1pbkhlaWdodCAhPSB1bmRlZmluZWQgJiYgZS5oZWlnaHQgPCBlLm1pbkhlaWdodCAmJiAoZS5oZWlnaHQgPSBlLm1pbkhlaWdodCksIGUuaGVpZ2h0ID0gcGFyc2VJbnQociwgMCkgPiBwYXJzZUludChlLmhlaWdodCwgMCkgPyByIDogZS5oZWlnaHQsIGUuYy5oZWlnaHQoZS5oZWlnaHQpOwogICAgICAgICAgICB2YXIgYyA9IHsKICAgICAgICAgICAgICAgIGhlaWdodDogdCArIGEgKyBpICsgZS5oZWlnaHQgKyBlLnBhZGRpbmdzLnRvcCArIGUucGFkZGluZ3MuYm90dG9tCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGUuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5maW5kKCIudHAtZnVsbHdpZHRoLWZvcmNlciIpLmNzcyhjKSwgZS5jLmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKS5jc3MoYyksIHNldFNjYWxlKGUpCiAgICAgICAgfSwKICAgICAgICBlbnRlckluVmlld1BvcnQ6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdC53YWl0Rm9yQ291bnREb3duICYmIChjb3VudERvd24odC5jLCB0KSwgdC53YWl0Rm9yQ291bnREb3duID0gITEpLCB0LndhaXRGb3JGaXJzdFNsaWRlICYmIChzd2FwU2xpZGUodC5jKSwgdC53YWl0Rm9yRmlyc3RTbGlkZSA9ICExLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdC5jLnJlbW92ZUNsYXNzKCJ0cC13YWl0Zm9yZmlyc3RzdGFydCIpCiAgICAgICAgICAgIH0sIDUwMCkpLCAicGxheWluZyIgIT0gdC5zbGlkZXJsYXN0c3RhdHVzICYmIHQuc2xpZGVybGFzdHN0YXR1cyAhPSB1bmRlZmluZWQgfHwgdC5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSwgdC5sYXN0cGxheWVkdmlkZW9zICE9IHVuZGVmaW5lZCAmJiAwIDwgdC5sYXN0cGxheWVkdmlkZW9zLmxlbmd0aCAmJiBqUXVlcnkuZWFjaCh0Lmxhc3RwbGF5ZWR2aWRlb3MsIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgIF9SLnBsYXlWaWRlbyhpLCB0KQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgbGVhdmVWaWV3UG9ydDogZnVuY3Rpb24odCkgewogICAgICAgICAgICB0LnNsaWRlcmxhc3RzdGF0dXMgPSB0LnNsaWRlcnN0YXR1cywgdC5jLnRyaWdnZXIoInN0b3B0aW1lciIpLCB0LnBsYXlpbmd2aWRlb3MgIT0gdW5kZWZpbmVkICYmIDAgPCB0LnBsYXlpbmd2aWRlb3MubGVuZ3RoICYmICh0Lmxhc3RwbGF5ZWR2aWRlb3MgPSBqUXVlcnkuZXh0ZW5kKCEwLCBbXSwgdC5wbGF5aW5ndmlkZW9zKSwgdC5wbGF5aW5ndmlkZW9zICYmIGpRdWVyeS5lYWNoKHQucGxheWluZ3ZpZGVvcywgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgdC5sZWF2ZVZpZXdQb3J0QmFzZWRTdG9wID0gITAsIF9SLnN0b3BWaWRlbyAmJiBfUi5zdG9wVmlkZW8oaSwgdCkKICAgICAgICAgICAgfSkpCiAgICAgICAgfSwKICAgICAgICB1blRvZ2dsZVN0YXRlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiBqUXVlcnkuZWFjaChlLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICBpLnJlbW92ZUNsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgdG9nZ2xlU3RhdGU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIGpRdWVyeS5lYWNoKGUsIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgIGkuYWRkQ2xhc3MoInJzLXRvZ2dsZS1jb250ZW50LWFjdGl2ZSIpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBzd2FwdG9nZ2xlU3RhdGU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIGpRdWVyeS5lYWNoKGUsIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgIGpRdWVyeShpKS5oYXNDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIikgPyBqUXVlcnkoaSkucmVtb3ZlQ2xhc3MoInJzLXRvZ2dsZS1jb250ZW50LWFjdGl2ZSIpIDogalF1ZXJ5KGkpLmFkZENsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgbGFzdFRvZ2dsZVN0YXRlOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gMDsKICAgICAgICAgICAgcmV0dXJuIGUgIT0gdW5kZWZpbmVkICYmIDAgPCBlLmxlbmd0aCAmJiBqUXVlcnkuZWFjaChlLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICB0ID0gaS5oYXNDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIikKICAgICAgICAgICAgfSksIHQKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBfSVNNID0gX1IuaXNfbW9iaWxlKCksCiAgICAgICAgX0FORFJPSUQgPSBfUi5pc19hbmRyb2lkKCksCiAgICAgICAgY2hlY2tJRFMgPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIGlmIChlLmFueWlkID0gZS5hbnlpZCA9PT0gdW5kZWZpbmVkID8gW10gOiBlLmFueWlkLCAtMSAhPSBqUXVlcnkuaW5BcnJheShpLmF0dHIoImlkIiksIGUuYW55aWQpKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGkuYXR0cigiaWQiKSArICJfIiArIE1hdGgucm91bmQoOTk5OSAqIE1hdGgucmFuZG9tKCkpOwogICAgICAgICAgICAgICAgaS5hdHRyKCJpZCIsIHQpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZS5hbnlpZC5wdXNoKGkuYXR0cigiaWQiKSkKICAgICAgICB9LAogICAgICAgIHJlbW92ZUFycmF5ID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgYSA9IFtdOwogICAgICAgICAgICByZXR1cm4galF1ZXJ5LmVhY2goZSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgZSAhPSB0ICYmIGEucHVzaChpKQogICAgICAgICAgICB9KSwgYQogICAgICAgIH0sCiAgICAgICAgcmVtb3ZlTmF2V2l0aExpcmVmID0gZnVuY3Rpb24oZSwgaSwgdCkgewogICAgICAgICAgICB0LmMuZmluZChlKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICBlLmRhdGEoImxpcmVmIikgPT09IGkgJiYgZS5yZW1vdmUoKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgbEFqYXggPSBmdW5jdGlvbihpLCB0KSB7CiAgICAgICAgICAgIHJldHVybiAhalF1ZXJ5KCJib2R5IikuZGF0YShpKSAmJiAodC5maWxlc3lzdGVtID8gKHQuZXJyb3JtID09PSB1bmRlZmluZWQgJiYgKHQuZXJyb3JtID0gIjxicj5Mb2NhbCBGaWxlc3lzdGVtIERldGVjdGVkICE8YnI+UHV0IHRoaXMgdG8geW91ciBoZWFkZXI6IiksIGNvbnNvbGUud2FybigiTG9jYWwgRmlsZXN5c3RlbSBkZXRlY3RlZCAhIiksIHQuZXJyb3JtID0gdC5lcnJvcm0gKyAnPGJyPiZsdDtzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IicgKyB0LmpzRmlsZUxvY2F0aW9uICsgaSArIHQuZXh0ZW5zaW9uc19zdWZmaXggKyAnIiZndDsmbHQ7L3NjcmlwdCZndDsnLCBjb25zb2xlLndhcm4odC5qc0ZpbGVMb2NhdGlvbiArIGkgKyB0LmV4dGVuc2lvbnNfc3VmZml4ICsgIiBjb3VsZCBub3QgYmUgbG9hZGVkICEiKSwgY29uc29sZS53YXJuKCJQbGVhc2UgdXNlIGEgbG9jYWwgU2VydmVyIG9yIHdvcmsgb25saW5lIG9yIG1ha2Ugc3VyZSB0aGF0IHlvdSBsb2FkIGFsbCBuZWVkZWQgTGlicmFyaWVzIG1hbnVhbGx5IGluIHlvdXIgRG9jdW1lbnQuIiksIGNvbnNvbGUubG9nKCIgIiksICEodC5tb2R1bGVzZmFpbGluZyA9ICEwKSkgOiAoalF1ZXJ5LmFqYXgoewogICAgICAgICAgICAgICAgdXJsOiB0LmpzRmlsZUxvY2F0aW9uICsgaSArIHQuZXh0ZW5zaW9uc19zdWZmaXggKyAiP3ZlcnNpb249IiArIHZlcnNpb24uY29yZSwKICAgICAgICAgICAgICAgIGRhdGFUeXBlOiAic2NyaXB0IiwKICAgICAgICAgICAgICAgIGNhY2hlOiAhMCwKICAgICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCJTbGlkZXIgUmV2b2x1dGlvbiA1LjAgRXJyb3IgISIpLCBjb25zb2xlLmVycm9yKCJGYWlsdXJlIGF0IExvYWRpbmc6IiArIGkgKyB0LmV4dGVuc2lvbnNfc3VmZml4ICsgIiBvbiBQYXRoOiIgKyB0LmpzRmlsZUxvY2F0aW9uKSwgY29uc29sZS5pbmZvKGUpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCB2b2lkIGpRdWVyeSgiYm9keSIpLmRhdGEoaSwgITApKSkKICAgICAgICB9LAogICAgICAgIGdldE5lZWRlZFNjcmlwdHMgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgIHZhciBpID0gbmV3IE9iamVjdCwKICAgICAgICAgICAgICAgIGEgPSB0Lm5hdmlnYXRpb247CiAgICAgICAgICAgIHJldHVybiBpLmtlbmJ1cm5zID0gITEsIGkucGFyYWxsYXggPSAhMSwgaS5jYXJvdXNlbCA9ICExLCBpLm5hdmlnYXRpb24gPSAhMSwgaS52aWRlb3MgPSAhMSwgaS5hY3Rpb25zID0gITEsIGkubGF5ZXJhbmltID0gITEsIGkubWlncmF0aW9uID0gITEsIGUuZGF0YSgidmVyc2lvbiIpICYmIGUuZGF0YSgidmVyc2lvbiIpLnRvU3RyaW5nKCkubWF0Y2goLzUuL2dpKSA/IChlLmZpbmQoImltZyIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAib24iID09IGpRdWVyeSh0aGlzKS5kYXRhKCJrZW5idXJucyIpICYmIChpLmtlbmJ1cm5zID0gITApCiAgICAgICAgICAgIH0pLCAoImNhcm91c2VsIiA9PSB0LnNsaWRlclR5cGUgfHwgIm9uIiA9PSBhLmtleWJvYXJkTmF2aWdhdGlvbiB8fCAib24iID09IGEubW91c2VTY3JvbGxOYXZpZ2F0aW9uIHx8ICJvbiIgPT0gYS50b3VjaC50b3VjaGVuYWJsZWQgfHwgYS5hcnJvd3MuZW5hYmxlIHx8IGEuYnVsbGV0cy5lbmFibGUgfHwgYS50aHVtYm5haWxzLmVuYWJsZSB8fCBhLnRhYnMuZW5hYmxlKSAmJiAoaS5uYXZpZ2F0aW9uID0gITApLCBlLmZpbmQoIi50cC1jYXB0aW9uLCAudHAtc3RhdGljLWxheWVyLCAucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIChlLmRhdGEoInl0aWQiKSAhPSB1bmRlZmluZWQgfHwgMCA8IGUuZmluZCgiaWZyYW1lIikubGVuZ3RoICYmIDAgPCBlLmZpbmQoImlmcmFtZSIpLmF0dHIoInNyYyIpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigieW91dHViZSIpKSAmJiAoaS52aWRlb3MgPSAhMCksIChlLmRhdGEoInZpbWVvaWQiKSAhPSB1bmRlZmluZWQgfHwgMCA8IGUuZmluZCgiaWZyYW1lIikubGVuZ3RoICYmIDAgPCBlLmZpbmQoImlmcmFtZSIpLmF0dHIoInNyYyIpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigidmltZW8iKSkgJiYgKGkudmlkZW9zID0gITApLCBlLmRhdGEoImFjdGlvbnMiKSAhPT0gdW5kZWZpbmVkICYmIChpLmFjdGlvbnMgPSAhMCksIGkubGF5ZXJhbmltID0gITAKICAgICAgICAgICAgfSksIGUuZmluZCgibGkiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgalF1ZXJ5KHRoaXMpLmRhdGEoImxpbmsiKSAmJiBqUXVlcnkodGhpcykuZGF0YSgibGluayIpICE9IHVuZGVmaW5lZCAmJiAoaS5sYXllcmFuaW0gPSAhMCwgaS5hY3Rpb25zID0gITApCiAgICAgICAgICAgIH0pLCAhaS52aWRlb3MgJiYgKDAgPCBlLmZpbmQoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikubGVuZ3RoIHx8IDAgPCBlLmZpbmQoIi50cC12aWRlb2xheWVyIikubGVuZ3RoIHx8IDAgPCBlLmZpbmQoIi50cC1hdWRpb2xheWVyIikubGVuZ3RoIHx8IDAgPCBlLmZpbmQoImlmcmFtZSIpLmxlbmd0aCB8fCAwIDwgZS5maW5kKCJ2aWRlbyIpLmxlbmd0aCkgJiYgKGkudmlkZW9zID0gITApLCAiY2Fyb3VzZWwiID09IHQuc2xpZGVyVHlwZSAmJiAoaS5jYXJvdXNlbCA9ICEwKSwgKCJvZmYiICE9PSB0LnBhcmFsbGF4LnR5cGUgfHwgdC52aWV3UG9ydC5lbmFibGUgfHwgInRydWUiID09IHQudmlld1BvcnQuZW5hYmxlIHx8ICJ0cnVlIiA9PT0gdC5zY3JvbGxlZmZlY3Qub24gfHwgdC5zY3JvbGxlZmZlY3Qub24pICYmIChpLnBhcmFsbGF4ID0gITApKSA6IChpLmtlbmJ1cm5zID0gITAsIGkucGFyYWxsYXggPSAhMCwgaS5jYXJvdXNlbCA9ICExLCBpLm5hdmlnYXRpb24gPSAhMCwgaS52aWRlb3MgPSAhMCwgaS5hY3Rpb25zID0gITAsIGkubGF5ZXJhbmltID0gITAsIGkubWlncmF0aW9uID0gITApLCAiaGVybyIgPT0gdC5zbGlkZXJUeXBlICYmIChpLmNhcm91c2VsID0gITEsIGkubmF2aWdhdGlvbiA9ICExKSwgd2luZG93LmxvY2F0aW9uLmhyZWYubWF0Y2goL2ZpbGU6L2dpKSAmJiAoaS5maWxlc3lzdGVtID0gITAsIHQuZmlsZXN5c3RlbSA9ICEwKSwgaS52aWRlb3MgJiYgdm9pZCAwID09PSBfUi5pc1ZpZGVvUGxheWluZyAmJiBsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24udmlkZW8iLCB0KSwgaS5jYXJvdXNlbCAmJiB2b2lkIDAgPT09IF9SLnByZXBhcmVDYXJvdXNlbCAmJiBsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24uY2Fyb3VzZWwiLCB0KSwgaS5jYXJvdXNlbCB8fCB2b2lkIDAgIT09IF9SLmFuaW1hdGVTbGlkZSB8fCBsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24uc2xpZGVhbmltcyIsIHQpLCBpLmFjdGlvbnMgJiYgdm9pZCAwID09PSBfUi5jaGVja0FjdGlvbnMgJiYgbEFqYXgoInJldm9sdXRpb24uZXh0ZW5zaW9uLmFjdGlvbnMiLCB0KSwgaS5sYXllcmFuaW0gJiYgdm9pZCAwID09PSBfUi5oYW5kbGVTdGF0aWNMYXllcnMgJiYgbEFqYXgoInJldm9sdXRpb24uZXh0ZW5zaW9uLmxheWVyYW5pbWF0aW9uIiwgdCksIGkua2VuYnVybnMgJiYgdm9pZCAwID09PSBfUi5zdG9wS2VuQnVybiAmJiBsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24ua2VuYnVybiIsIHQpLCBpLm5hdmlnYXRpb24gJiYgdm9pZCAwID09PSBfUi5jcmVhdGVOYXZpZ2F0aW9uICYmIGxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi5uYXZpZ2F0aW9uIiwgdCksIGkubWlncmF0aW9uICYmIHZvaWQgMCA9PT0gX1IubWlncmF0aW9uICYmIGxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi5taWdyYXRpb24iLCB0KSwgaS5wYXJhbGxheCAmJiB2b2lkIDAgPT09IF9SLmNoZWNrRm9yUGFyYWxsYXggJiYgbEFqYXgoInJldm9sdXRpb24uZXh0ZW5zaW9uLnBhcmFsbGF4IiwgdCksIHQuYWRkb25zICE9IHVuZGVmaW5lZCAmJiAwIDwgdC5hZGRvbnMubGVuZ3RoICYmIGpRdWVyeS5lYWNoKHQuYWRkb25zLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICAib2JqZWN0IiA9PSB0eXBlb2YgaSAmJiBpLmZpbGVwcmVmaXggIT0gdW5kZWZpbmVkICYmIGxBamF4KGkuZmlsZXByZWZpeCwgdCkKICAgICAgICAgICAgfSksIGkKICAgICAgICB9LAogICAgICAgIHdhaXRGb3JTY3JpcHRzID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICB2YXIgdCA9ICEwLAogICAgICAgICAgICAgICAgYSA9IGkuc2NyaXB0c25lZWRlZDsKICAgICAgICAgICAgaS5hZGRvbnMgIT0gdW5kZWZpbmVkICYmIDAgPCBpLmFkZG9ucy5sZW5ndGggJiYgalF1ZXJ5LmVhY2goaS5hZGRvbnMsIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgICJvYmplY3QiID09IHR5cGVvZiBpICYmIGkuaW5pdCAhPSB1bmRlZmluZWQgJiYgX1JbaS5pbml0XSA9PT0gdW5kZWZpbmVkICYmICh0ID0gITEpCiAgICAgICAgICAgIH0pLCBhLmZpbGVzeXN0ZW0gfHwgInVuZGVmaW5lZCIgIT0gdHlwZW9mIHB1bmNoZ3MgJiYgdCAmJiAoIWEua2VuYnVybnMgfHwgYS5rZW5idXJucyAmJiB2b2lkIDAgIT09IF9SLnN0b3BLZW5CdXJuKSAmJiAoIWEubmF2aWdhdGlvbiB8fCBhLm5hdmlnYXRpb24gJiYgdm9pZCAwICE9PSBfUi5jcmVhdGVOYXZpZ2F0aW9uKSAmJiAoIWEuY2Fyb3VzZWwgfHwgYS5jYXJvdXNlbCAmJiB2b2lkIDAgIT09IF9SLnByZXBhcmVDYXJvdXNlbCkgJiYgKCFhLnZpZGVvcyB8fCBhLnZpZGVvcyAmJiB2b2lkIDAgIT09IF9SLnJlc2V0VmlkZW8pICYmICghYS5hY3Rpb25zIHx8IGEuYWN0aW9ucyAmJiB2b2lkIDAgIT09IF9SLmNoZWNrQWN0aW9ucykgJiYgKCFhLmxheWVyYW5pbSB8fCBhLmxheWVyYW5pbSAmJiB2b2lkIDAgIT09IF9SLmhhbmRsZVN0YXRpY0xheWVycykgJiYgKCFhLm1pZ3JhdGlvbiB8fCBhLm1pZ3JhdGlvbiAmJiB2b2lkIDAgIT09IF9SLm1pZ3JhdGlvbikgJiYgKCFhLnBhcmFsbGF4IHx8IGEucGFyYWxsYXggJiYgdm9pZCAwICE9PSBfUi5jaGVja0ZvclBhcmFsbGF4KSAmJiAoYS5jYXJvdXNlbCB8fCAhYS5jYXJvdXNlbCAmJiB2b2lkIDAgIT09IF9SLmFuaW1hdGVTbGlkZSkgPyBlLnRyaWdnZXIoInNjcmlwdHNsb2FkZWQiKSA6IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB3YWl0Rm9yU2NyaXB0cyhlLCBpKQogICAgICAgICAgICB9LCA1MCkKICAgICAgICB9LAogICAgICAgIGdldFNjcmlwdExvY2F0aW9uID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgaSA9IG5ldyBSZWdFeHAoInRoZW1lcHVuY2gucmV2b2x1dGlvbi5taW4uanMiLCAiZ2kiKSwKICAgICAgICAgICAgICAgIHQgPSAiIjsKICAgICAgICAgICAgcmV0dXJuIGpRdWVyeSgic2NyaXB0IikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLmF0dHIoInNyYyIpOwogICAgICAgICAgICAgICAgZSAmJiBlLm1hdGNoKGkpICYmICh0ID0gZSkKICAgICAgICAgICAgfSksIHQgPSAodCA9ICh0ID0gdC5yZXBsYWNlKCJqcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLm1pbi5qcyIsICIiKSkucmVwbGFjZSgianF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcyIsICIiKSkuc3BsaXQoIj8iKVswXQogICAgICAgIH0sCiAgICAgICAgc2V0Q3VyV2luUmFuZ2UgPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIHZhciB0ID0gOTk5OSwKICAgICAgICAgICAgICAgIGEgPSAwLAogICAgICAgICAgICAgICAgbiA9IDAsCiAgICAgICAgICAgICAgICByID0gMCwKICAgICAgICAgICAgICAgIG8gPSBqUXVlcnkod2luZG93KS53aWR0aCgpLAogICAgICAgICAgICAgICAgcyA9IGkgJiYgOTk5OSA9PSBlLnJlc3BvbnNpdmVMZXZlbHMgPyBlLnZpc2liaWxpdHlMZXZlbHMgOiBlLnJlc3BvbnNpdmVMZXZlbHM7CiAgICAgICAgICAgIHMgJiYgcy5sZW5ndGggJiYgalF1ZXJ5LmVhY2gocywgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgbyA8IGkgJiYgKDAgPT0gYSB8fCBpIDwgYSkgJiYgKHIgPSBlLCBhID0gdCA9IGkpLCBpIDwgbyAmJiBhIDwgaSAmJiAoYSA9IGksIG4gPSBlKQogICAgICAgICAgICB9KSwgYSA8IHQgJiYgKHIgPSBuKSwgaSA/IGUuZm9yY2VkV2luUmFuZ2UgPSByIDogZS5jdXJXaW5SYW5nZSA9IHIKICAgICAgICB9LAogICAgICAgIHByZXBhcmVPcHRpb25zID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICBpLmNhcm91c2VsLm1heFZpc2libGVJdGVtcyA9IGkuY2Fyb3VzZWwubWF4VmlzaWJsZUl0ZW1zIDwgMSA/IDk5OSA6IGkuY2Fyb3VzZWwubWF4VmlzaWJsZUl0ZW1zLCBpLmNhcm91c2VsLnZlcnRpY2FsX2FsaWduID0gInRvcCIgPT09IGkuY2Fyb3VzZWwudmVydGljYWxfYWxpZ24gPyAiMCUiIDogImJvdHRvbSIgPT09IGkuY2Fyb3VzZWwudmVydGljYWxfYWxpZ24gPyAiMTAwJSIgOiAiNTAlIgogICAgICAgIH0sCiAgICAgICAgZ1dpZGVyT3V0ID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICB2YXIgdCA9IDA7CiAgICAgICAgICAgIHJldHVybiBlLmZpbmQoaSkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgIWUuaGFzQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpICYmIHQgPCBlLm91dGVyV2lkdGgoKSAmJiAodCA9IGUub3V0ZXJXaWR0aCgpKQogICAgICAgICAgICB9KSwgdAogICAgICAgIH0sCiAgICAgICAgaW5pdFNsaWRlciA9IGZ1bmN0aW9uKGNvbnRhaW5lciwgb3B0KSB7CiAgICAgICAgICAgIGlmIChjb250YWluZXIgPT0gdW5kZWZpbmVkKSByZXR1cm4gITE7CiAgICAgICAgICAgIGNvbnRhaW5lci5kYXRhKCJhaW1nIikgIT0gdW5kZWZpbmVkICYmICgiZW5hYmxlZCIgPT0gY29udGFpbmVyLmRhdGEoImFpZTgiKSAmJiBfUi5pc0lFKDgpIHx8ICJlbmFibGVkIiA9PSBjb250YWluZXIuZGF0YSgiYW1vYmlsZSIpICYmIF9JU00pICYmIGNvbnRhaW5lci5odG1sKCc8aW1nIGNsYXNzPSJ0cC1zbGlkZXItYWx0ZXJuYXRpdmUtaW1hZ2UiIHNyYz0iJyArIGNvbnRhaW5lci5kYXRhKCJhaW1nIikgKyAnIj4nKSwgY29udGFpbmVyLmZpbmQoIj51bCIpLmFkZENsYXNzKCJ0cC1yZXZzbGlkZXItbWFpbnVsIiksIG9wdC5jID0gY29udGFpbmVyLCBvcHQudWwgPSBjb250YWluZXIuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwiKSwgb3B0LnVsLmZpbmQoIj5saSIpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAib24iID09IGkuZGF0YSgiaGlkZXNsaWRlb25tb2JpbGUiKSAmJiBfSVNNICYmIGkucmVtb3ZlKCksIChpLmRhdGEoImludmlzaWJsZSIpIHx8ICEwID09PSBpLmRhdGEoImludmlzaWJsZSIpKSAmJiAoaS5hZGRDbGFzcygidHAtaW52aXNpYmxlLXNsaWRlIiksIGkuYXBwZW5kVG8ob3B0LnVsKSkKICAgICAgICAgICAgfSksIG9wdC5hZGRvbnMgIT0gdW5kZWZpbmVkICYmIDAgPCBvcHQuYWRkb25zLmxlbmd0aCAmJiBqUXVlcnkuZWFjaChvcHQuYWRkb25zLCBmdW5jdGlvbihpLCBvYmopIHsKICAgICAgICAgICAgICAgICJvYmplY3QiID09IHR5cGVvZiBvYmogJiYgb2JqLmluaXQgIT0gdW5kZWZpbmVkICYmIF9SW29iai5pbml0XShldmFsKG9iai5wYXJhbXMpKQogICAgICAgICAgICB9KSwgb3B0LmNpZCA9IGNvbnRhaW5lci5hdHRyKCJpZCIpLCBvcHQudWwuY3NzKHsKICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJ2aXNpYmxlIgogICAgICAgICAgICB9KSwgb3B0LnNsaWRlYW1vdW50ID0gb3B0LnVsLmZpbmQoIj5saSIpLm5vdCgiLnRwLWludmlzaWJsZS1zbGlkZSIpLmxlbmd0aCwgb3B0LnJlYWxzbGlkZWFtb3VudCA9IG9wdC51bC5maW5kKCI+bGkiKS5sZW5ndGgsIG9wdC5zbGF5ZXJzID0gY29udGFpbmVyLmZpbmQoIi50cC1zdGF0aWMtbGF5ZXJzIiksIG9wdC5zbGF5ZXJzLmRhdGEoImluZGV4IiwgInN0YXRpY2xheWVycyIpLCAxICE9IG9wdC53YWl0Rm9ySW5pdCAmJiAoY29udGFpbmVyWzBdLm9wdCA9IG9wdCwgcnVuU2xpZGVyKGNvbnRhaW5lciwgb3B0KSkKICAgICAgICB9LAogICAgICAgIG9uRnVsbFNjcmVlbkNoYW5nZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBqUXVlcnkoImJvZHkiKS5kYXRhKCJycy1mdWxsU2NyZWVuTW9kZSIsICFqUXVlcnkoImJvZHkiKS5kYXRhKCJycy1mdWxsU2NyZWVuTW9kZSIpKSwgalF1ZXJ5KCJib2R5IikuZGF0YSgicnMtZnVsbFNjcmVlbk1vZGUiKSAmJiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgalF1ZXJ5KHdpbmRvdykudHJpZ2dlcigicmVzaXplIikKICAgICAgICAgICAgfSwgMjAwKQogICAgICAgIH0sCiAgICAgICAgcnVuU2xpZGVyID0gZnVuY3Rpb24odCwgeCkgewogICAgICAgICAgICBpZiAoeC5zbGlkZXJpc3J1bm5pbmcgPSAhMCwgeC51bC5maW5kKCI+bGkiKS5lYWNoKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICBqUXVlcnkodGhpcykuZGF0YSgib3JpZ2luYWxpbmRleCIsIGUpCiAgICAgICAgICAgICAgICB9KSwgeC5hbGxsaSA9IHgudWwuZmluZCgiPmxpIiksIGpRdWVyeS5lYWNoKHguYWxsbGksIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICAoaSA9IGpRdWVyeShpKSkuZGF0YSgib3JpZ2luZGV4IiwgaS5pbmRleCgpKQogICAgICAgICAgICAgICAgfSksIHgubGkgPSB4LnVsLmZpbmQoIj5saSIpLm5vdCgiLnRwLWludmlzaWJsZS1zbGlkZSIpLCAib24iID09IHguc2h1ZmZsZSkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBuZXcgT2JqZWN0LAogICAgICAgICAgICAgICAgICAgIGkgPSB4LnVsLmZpbmQoIj5saTpmaXJzdC1jaGlsZCIpOwogICAgICAgICAgICAgICAgZS5mc3RyYW5zaXRpb24gPSBpLmRhdGEoImZzdHJhbnNpdGlvbiIpLCBlLmZzbWFzdGVyc3BlZWQgPSBpLmRhdGEoImZzbWFzdGVyc3BlZWQiKSwgZS5mc3Nsb3RhbW91bnQgPSBpLmRhdGEoImZzc2xvdGFtb3VudCIpOwogICAgICAgICAgICAgICAgZm9yICh2YXIgYSA9IDA7IGEgPCB4LnNsaWRlYW1vdW50OyBhKyspIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IE1hdGgucm91bmQoTWF0aC5yYW5kb20oKSAqIHguc2xpZGVhbW91bnQpOwogICAgICAgICAgICAgICAgICAgIHgudWwuZmluZCgiPmxpOmVxKCIgKyBuICsgIikiKS5wcmVwZW5kVG8oeC51bCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhciByID0geC51bC5maW5kKCI+bGk6Zmlyc3QtY2hpbGQiKTsKICAgICAgICAgICAgICAgIHIuZGF0YSgiZnN0cmFuc2l0aW9uIiwgZS5mc3RyYW5zaXRpb24pLCByLmRhdGEoImZzbWFzdGVyc3BlZWQiLCBlLmZzbWFzdGVyc3BlZWQpLCByLmRhdGEoImZzc2xvdGFtb3VudCIsIGUuZnNzbG90YW1vdW50KSwgeC5hbGxsaSA9IHgudWwuZmluZCgiPmxpIiksIHgubGkgPSB4LnVsLmZpbmQoIj5saSIpLm5vdCgiLnRwLWludmlzaWJsZS1zbGlkZSIpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHguaW5saSA9IHgudWwuZmluZCgiPmxpLnRwLWludmlzaWJsZS1zbGlkZSIpLCB4LnRodW1icyA9IG5ldyBBcnJheSwgeC5zbG90cyA9IDQsIHguYWN0ID0gLTEsIHguZmlyc3RzdGFydCA9IDEsIHgubG9hZHF1ZXVlID0gbmV3IEFycmF5LCB4LnN5bmNsb2FkID0gMCwgeC5jb253ID0gdC53aWR0aCgpLCB4LmNvbmggPSB0LmhlaWdodCgpLCAxIDwgeC5yZXNwb25zaXZlTGV2ZWxzLmxlbmd0aCA/IHgucmVzcG9uc2l2ZUxldmVsc1swXSA9IDk5OTkgOiB4LnJlc3BvbnNpdmVMZXZlbHMgPSA5OTk5LCBqUXVlcnkuZWFjaCh4LmFsbGxpLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSAoaSA9IGpRdWVyeShpKSkuZmluZCgiLnJldi1zbGlkZWJnIikgfHwgaS5maW5kKCJpbWciKS5maXJzdCgpLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gMDsKICAgICAgICAgICAgICAgICAgICBpLmFkZENsYXNzKCJ0cC1yZXZzbGlkZXItc2xpZGVzbGkiKSwgaS5kYXRhKCJpbmRleCIpID09PSB1bmRlZmluZWQgJiYgaS5kYXRhKCJpbmRleCIsICJycy0iICsgTWF0aC5yb3VuZCg5OTk5OTkgKiBNYXRoLnJhbmRvbSgpKSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBuZXcgT2JqZWN0OwogICAgICAgICAgICAgICAgICAgIGZvciAobi5wYXJhbXMgPSBuZXcgQXJyYXksIG4uaWQgPSBpLmRhdGEoImluZGV4IiksIG4uc3JjID0gaS5kYXRhKCJ0aHVtYiIpICE9PSB1bmRlZmluZWQgPyBpLmRhdGEoInRodW1iIikgOiB0LmRhdGEoImxhenlsb2FkIikgIT09IHVuZGVmaW5lZCA/IHQuZGF0YSgibGF6eWxvYWQiKSA6IHQuYXR0cigic3JjIiksIGkuZGF0YSgidGl0bGUiKSAhPT0gdW5kZWZpbmVkICYmIG4ucGFyYW1zLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbTogUmVnRXhwKCJcXHtcXHt0aXRsZVxcfVxcfSIsICJnIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bzogaS5kYXRhKCJ0aXRsZSIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBpLmRhdGEoImRlc2NyaXB0aW9uIikgIT09IHVuZGVmaW5lZCAmJiBuLnBhcmFtcy5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb206IFJlZ0V4cCgiXFx7XFx7ZGVzY3JpcHRpb25cXH1cXH0iLCAiZyIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdG86IGkuZGF0YSgiZGVzY3JpcHRpb24iKQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgYSA9IDE7IGEgPD0gMTA7IGErKykgaS5kYXRhKCJwYXJhbSIgKyBhKSAhPT0gdW5kZWZpbmVkICYmIG4ucGFyYW1zLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiBSZWdFeHAoIlxce1xce3BhcmFtIiArIGEgKyAiXFx9XFx9IiwgImciKSwKICAgICAgICAgICAgICAgICAgICAgICAgdG86IGkuZGF0YSgicGFyYW0iICsgYSkKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBpZiAoeC50aHVtYnMucHVzaChuKSwgaS5kYXRhKCJsaW5rIikgIT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByID0gaS5kYXRhKCJsaW5rIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvID0gaS5kYXRhKCJ0YXJnZXQiKSB8fCAiX3NlbGYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcyA9ICJiYWNrIiA9PT0gaS5kYXRhKCJzbGlkZWluZGV4IikgPyAwIDogNjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsID0gaS5kYXRhKCJsaW5rdG9zbGlkZSIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGw7CiAgICAgICAgICAgICAgICAgICAgICAgIGwgIT0gdW5kZWZpbmVkICYmICJuZXh0IiAhPSBsICYmICJwcmV2IiAhPSBsICYmIHguYWxsbGkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5kYXRhKCJvcmlnaW5kZXgiKSArIDEgPT0gZCAmJiAobCA9IGUuZGF0YSgiaW5kZXgiKSkKICAgICAgICAgICAgICAgICAgICAgICAgfSksICJzbGlkZSIgIT0gciAmJiAobCA9ICJubyIpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgYyA9ICc8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHNsaWRlbGluayIgc3R5bGU9ImN1cnNvcjpwb2ludGVyO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDonICsgcyArICc7IiBkYXRhLXg9ImNlbnRlciIgZGF0YS15PSJjZW50ZXIiIGRhdGEtYmFzZWFsaWduPSJzbGlkZSIgJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUgPSAnIGRhdGEtZnJhbWVzPVwnW3siZGVsYXkiOjAsInNwZWVkIjoxMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ImRlbGF5Ijoid2FpdCIsInNwZWVkIjozMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifV1cJyc7CiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSAibm8iID09IGwgPyBjICsgdSArICIgPiIgOiBjICsgImRhdGEtYWN0aW9ucz0nIiArICgic2Nyb2xsX3VuZGVyIiA9PT0gbCA/ICdbeyJldmVudCI6ImNsaWNrIiwiYWN0aW9uIjoic2Nyb2xsYmVsb3ciLCJvZmZzZXQiOiIxMDBweCIsImRlbGF5IjoiMCJ9XScgOiAicHJldiIgPT09IGwgPyAnW3siZXZlbnQiOiJjbGljayIsImFjdGlvbiI6Imp1bXB0b3NsaWRlIiwic2xpZGUiOiJwcmV2IiwiZGVsYXkiOiIwLjIifV0nIDogIm5leHQiID09PSBsID8gJ1t7ImV2ZW50IjoiY2xpY2siLCJhY3Rpb24iOiJqdW1wdG9zbGlkZSIsInNsaWRlIjoibmV4dCIsImRlbGF5IjoiMC4yIn1dJyA6ICdbeyJldmVudCI6ImNsaWNrIiwiYWN0aW9uIjoianVtcHRvc2xpZGUiLCJzbGlkZSI6IicgKyBsICsgJyIsImRlbGF5IjoiMC4yIn1dJykgKyAiJyIgKyB1ICsgIiA+IiwgYyArPSAnPGEgc3R5bGU9IndpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jayInLCBjID0gInNsaWRlIiAhPSByID8gYyArICcgdGFyZ2V0PSInICsgbyArICciIGhyZWY9IicgKyByICsgJyInIDogYywgYyArPSAnPjxzcGFuIHN0eWxlPSJ3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6YmxvY2siPjwvc3Bhbj48L2E+PC9kaXY+JywgaS5hcHBlbmQoYykKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSwgeC5ybGUgPSB4LnJlc3BvbnNpdmVMZXZlbHMubGVuZ3RoIHx8IDEsIHguZ3JpZHdpZHRoID0gY0FycmF5KHguZ3JpZHdpZHRoLCB4LnJsZSksIHguZ3JpZGhlaWdodCA9IGNBcnJheSh4LmdyaWRoZWlnaHQsIHgucmxlKSwgIm9uIiA9PSB4LnNpbXBsaWZ5QWxsICYmIChfUi5pc0lFKDgpIHx8IF9SLmlPU1ZlcnNpb24oKSkgJiYgKHQuZmluZCgiLnRwLWNhcHRpb24iKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGUucmVtb3ZlQ2xhc3MoImN1c3RvbWluIGN1c3RvbW91dCIpLmFkZENsYXNzKCJmYWRlaW4gZmFkZW91dCIpLCBlLmRhdGEoInNwbGl0aW4iLCAiIiksIGUuZGF0YSgic3BlZWQiLCA0MDApCiAgICAgICAgICAgICAgICB9KSwgeC5hbGxsaS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGUuZGF0YSgidHJhbnNpdGlvbiIsICJmYWRlIiksIGUuZGF0YSgibWFzdGVyc3BlZWQiLCA1MDApLCBlLmRhdGEoInNsb3RhbW91bnQiLCAxKSwgKGUuZmluZCgiLnJldi1zbGlkZWJnIikgfHwgZS5maW5kKCI+aW1nIikuZmlyc3QoKSkuZGF0YSgia2VuYnVybnMiLCAib2ZmIikKICAgICAgICAgICAgICAgIH0pKSwgeC5kZXNrdG9wID0gIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goLyhpUGhvbmV8aVBvZHxpUGFkfEFuZHJvaWR8QmxhY2tCZXJyeXxCQjEwfG1vYml8dGFibGV0fG9wZXJhIG1pbml8bmV4dXMgNykvaSksIHguYXV0b0hlaWdodCA9ICJmdWxsc2NyZWVuIiA9PSB4LnNsaWRlckxheW91dCA/ICJvbiIgOiB4LmF1dG9IZWlnaHQsICJmdWxsd2lkdGgiID09IHguc2xpZGVyTGF5b3V0ICYmICJvZmYiID09IHguYXV0b0hlaWdodCAmJiB0LmNzcyh7CiAgICAgICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiB4LmdyaWRoZWlnaHRbeC5jdXJXaW5SYW5nZV0gKyAicHgiCiAgICAgICAgICAgICAgICB9KSwgImF1dG8iICE9IHguc2xpZGVyTGF5b3V0ICYmIDAgPT0gdC5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5sZW5ndGggJiYgKCJmdWxsc2NyZWVuIiAhPT0geC5zbGlkZXJMYXlvdXQgfHwgIm9uIiAhPSB4LmZ1bGxTY3JlZW5BdXRvV2lkdGgpKSB7CiAgICAgICAgICAgICAgICB2YXIgbyA9IHQucGFyZW50KCksCiAgICAgICAgICAgICAgICAgICAgcyA9IG8uY3NzKCJtYXJnaW5Cb3R0b20iKSwKICAgICAgICAgICAgICAgICAgICBsID0gby5jc3MoIm1hcmdpblRvcCIpLAogICAgICAgICAgICAgICAgICAgIGQgPSB0LmF0dHIoImlkIikgKyAiX2ZvcmNlZnVsbHdpZHRoIjsKICAgICAgICAgICAgICAgIHMgPSBzID09PSB1bmRlZmluZWQgPyAwIDogcywgbCA9IGwgPT09IHVuZGVmaW5lZCA/IDAgOiBsLCBvLndyYXAoJzxkaXYgY2xhc3M9ImZvcmNlZnVsbHdpZHRoX3dyYXBwZXJfdHBfYmFubmVyIiBpZD0iJyArIGQgKyAnIiBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzttYXJnaW4tdG9wOicgKyBsICsgIjttYXJnaW4tYm90dG9tOiIgKyBzICsgJyI+PC9kaXY+JyksIHQuY2xvc2VzdCgiLmZvcmNlZnVsbHdpZHRoX3dyYXBwZXJfdHBfYmFubmVyIikuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1mdWxsd2lkdGgtZm9yY2VyIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6JyArIHQuaGVpZ2h0KCkgKyAncHgiPjwvZGl2PicpLCB0LnBhcmVudCgpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgbWFyZ2luVG9wOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICBtYXJnaW5Cb3R0b206ICIwcHgiCiAgICAgICAgICAgICAgICB9KSwgdC5wYXJlbnQoKS5jc3MoewogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh4LnNoYWRvdyAhPT0gdW5kZWZpbmVkICYmIDAgPCB4LnNoYWRvdyAmJiAodC5wYXJlbnQoKS5hZGRDbGFzcygidHAtc2hhZG93IiArIHguc2hhZG93KSwgdC5wYXJlbnQoKS5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLXNoYWRvd2NvdmVyIj48L2Rpdj4nKSwgdC5wYXJlbnQoKS5maW5kKCIudHAtc2hhZG93Y292ZXIiKS5jc3MoewogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdC5wYXJlbnQoKS5jc3MoImJhY2tncm91bmRDb2xvciIpLAogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogdC5wYXJlbnQoKS5jc3MoImJhY2tncm91bmRJbWFnZSIpCiAgICAgICAgICAgICAgICB9KSksIHNldEN1cldpblJhbmdlKHgpLCBzZXRDdXJXaW5SYW5nZSh4LCAhMCksICF0Lmhhc0NsYXNzKCJyZXZzbGlkZXItaW5pdGlhbGlzZWQiKSkgewogICAgICAgICAgICAgICAgdC5hZGRDbGFzcygicmV2c2xpZGVyLWluaXRpYWxpc2VkIiksIHQuYWRkQ2xhc3MoInRwLXNpbXBsZXJlc3BvbnNpdmUiKSwgdC5hdHRyKCJpZCIpID09IHVuZGVmaW5lZCAmJiB0LmF0dHIoImlkIiwgInJldnNsaWRlci0iICsgTWF0aC5yb3VuZCgxZTMgKiBNYXRoLnJhbmRvbSgpICsgNSkpLCBjaGVja0lEUyh4LCB0KSwgeC5maXJlZm94MTMgPSAhMSwgeC5pZSA9ICFqUXVlcnkuc3VwcG9ydC5vcGFjaXR5LCB4LmllOSA9IDkgPT0gZG9jdW1lbnQuZG9jdW1lbnRNb2RlLCB4Lm9yaWdjZCA9IHguZGVsYXk7CiAgICAgICAgICAgICAgICB2YXIgYyA9IGpRdWVyeS5mbi5qcXVlcnkuc3BsaXQoIi4iKSwKICAgICAgICAgICAgICAgICAgICB1ID0gcGFyc2VGbG9hdChjWzBdKSwKICAgICAgICAgICAgICAgICAgICBwID0gcGFyc2VGbG9hdChjWzFdKTsKICAgICAgICAgICAgICAgIHBhcnNlRmxvYXQoY1syXSB8fCAiMCIpLCAxID09IHUgJiYgcCA8IDcgJiYgdC5odG1sKCc8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsgcGFkZGluZzo0MHB4IDBweDsgZm9udC1zaXplOjIwcHg7IGNvbG9yOiM5OTIyMjI7Ij4gVGhlIEN1cnJlbnQgVmVyc2lvbiBvZiBqUXVlcnk6JyArIGMgKyAiIDxicj5QbGVhc2UgdXBkYXRlIHlvdXIgalF1ZXJ5IFZlcnNpb24gdG8gbWluLiAxLjcgaW4gQ2FzZSB5b3Ugd2lzaCB0byB1c2UgdGhlIFJldm9sdXRpb24gU2xpZGVyIFBsdWdpbjwvZGl2PiIpLCAxIDwgdSAmJiAoeC5pZSA9ICExKTsKICAgICAgICAgICAgICAgIHZhciBqID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgICAgIGouYWRkZWR5dCA9IDAsIGouYWRkZWR2aW0gPSAwLCBqLmFkZGVkdmlkID0gMCwgeC5zY3JvbGxlZmZlY3Qub24gJiYgKHguc2Nyb2xsZWZmZWN0LmxheWVycyA9IG5ldyBBcnJheSksIHQuZmluZCgiLnRwLWNhcHRpb24sIC5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBuLmRhdGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAgdCA9IGkuYXV0b3BsYXlvbmx5Zmlyc3R0aW1lLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gaS5hdXRvcGxheSwKICAgICAgICAgICAgICAgICAgICAgICAgciA9IChpLnZpZGVvbXA0ICE9PSB1bmRlZmluZWQgfHwgaS52aWRlb3dlYm0gIT09IHVuZGVmaW5lZCB8fCBpLnZpZGVvb2d2LCBuLmhhc0NsYXNzKCJ0cC1hdWRpb2xheWVyIikpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gaS52aWRlb2xvb3AsCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSAhMCwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9ICExOwogICAgICAgICAgICAgICAgICAgIGkuc3RhcnRjbGFzc2VzID0gbi5hdHRyKCJjbGFzcyIpLCBpLmlzcGFyYWxsYXhsYXllciA9IDAgPD0gaS5zdGFydGNsYXNzZXMuaW5kZXhPZigicnMtcGFyYWxsYXgiKSwgbi5oYXNDbGFzcygidHAtc3RhdGljLWxheWVyIikgJiYgX1IuaGFuZGxlU3RhdGljTGF5ZXJzICYmIChfUi5oYW5kbGVTdGF0aWNMYXllcnMobiwgeCksIHguc2Nyb2xsZWZmZWN0Lm9uICYmICgib24iID09PSB4LnNjcm9sbGVmZmVjdC5vbl9wYXJhbGxheF9zdGF0aWNfbGF5ZXJzICYmIGkuaXNwYXJhbGxheGxheWVyIHx8ICJvbiIgPT09IHguc2Nyb2xsZWZmZWN0Lm9uX3N0YXRpY19sYXllcnMgJiYgIWkuaXNwYXJhbGxheGxheWVyKSAmJiAobCA9ICEwKSwgcyA9ICExKTsKICAgICAgICAgICAgICAgICAgICB2YXIgZCA9IG4uZGF0YSgibm9wb3N0ZXJvbm1vYmlsZSIpIHx8IG4uZGF0YSgibm9Qb3N0ZXJPbk1vYmlsZSIpIHx8IG4uZGF0YSgicG9zdGVyb25tb2JpbGUiKSB8fCBuLmRhdGEoInBvc3Rlck9uTW9iaWxlIikgfHwgbi5kYXRhKCJwb3N0ZXJPbk1PYmlsZSIpOwogICAgICAgICAgICAgICAgICAgIG4uZGF0YSgibm9wb3N0ZXJvbm1vYmlsZSIsIGQpOwogICAgICAgICAgICAgICAgICAgIHZhciBjID0gMDsKICAgICAgICAgICAgICAgICAgICBpZiAobi5maW5kKCJpZnJhbWUiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGpRdWVyeSh0aGlzKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIGMrKwogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCA8IGMgJiYgbi5kYXRhKCJpZnJhbWVzIiwgITApLCBuLmhhc0NsYXNzKCJ0cC1jYXB0aW9uIikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHUgPSBuLmhhc0NsYXNzKCJzbGlkZWxpbmsiKSA/ICJ3aWR0aDoxMDAlICFpbXBvcnRhbnQ7aGVpZ2h0OjEwMCUgIWltcG9ydGFudDsiIDogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwID0gbi5kYXRhKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmID0gIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoID0gcC50eXBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZyA9ICJyb3ciID09PSBoIHx8ICJjb2x1bW4iID09PSBoID8gInJlbGF0aXZlIiA6ICJhYnNvbHV0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ID0gIiI7CiAgICAgICAgICAgICAgICAgICAgICAgICJyb3ciID09PSBoID8gKG4uYWRkQ2xhc3MoInJldl9yb3ciKS5yZW1vdmVDbGFzcygidHAtcmVzaXplbWUiKSwgdiA9ICJyZXZfcm93X3dyYXAiKSA6ICJjb2x1bW4iID09PSBoID8gKGYgPSBwLnZlcnRpY2FsYWxpZ24gPT09IHVuZGVmaW5lZCA/ICIgdmVydGljYWwtYWxpZ246Ym90dG9tOyIgOiAiIHZlcnRpY2FsLWFsaWduOiIgKyBwLnZlcnRpY2FsYWxpZ24gKyAiOyIsIHYgPSAicmV2X2NvbHVtbiIsIG4uYWRkQ2xhc3MoInJldl9jb2x1bW5faW5uZXIiKS5yZW1vdmVDbGFzcygidHAtcmVzaXplbWUiKSwgbi5kYXRhKCJ3aWR0aCIsICJhdXRvIiksIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogImF1dG8iCiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSA6ICJncm91cCIgPT09IGggJiYgbi5yZW1vdmVDbGFzcygidHAtcmVzaXplbWUiKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG0gPSAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgInJvdyIgIT09IGggJiYgImdyb3VwIiAhPT0gaCAmJiAiY29sdW1uIiAhPT0gaCA/IChtID0gImRpc3BsYXk6IiArIG4uY3NzKCJkaXNwbGF5IikgKyAiOyIsIDAgPCBuLmNsb3Nlc3QoIi5yZXZfY29sdW1uIikubGVuZ3RoID8gKG4uYWRkQ2xhc3MoInJldl9sYXllcl9pbl9jb2x1bW4iKSwgcyA9ICExKSA6IDAgPCBuLmNsb3Nlc3QoIi5yZXZfZ3JvdXAiKS5sZW5ndGggJiYgKG4uYWRkQ2xhc3MoInJldl9sYXllcl9pbl9ncm91cCIpLCBzID0gITEpKSA6ICJjb2x1bW4iID09PSBoICYmIChzID0gITEpLCBwLndyYXBwZXJfY2xhc3MgIT09IHVuZGVmaW5lZCAmJiAodiA9IHYgKyAiICIgKyBwLndyYXBwZXJfY2xhc3MpLCBwLndyYXBwZXJfaWQgIT09IHVuZGVmaW5lZCAmJiAoeSA9ICdpZD0iJyArIHAud3JhcHBlcl9pZCArICciJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB3ID0gIiI7CiAgICAgICAgICAgICAgICAgICAgICAgIG4uaGFzQ2xhc3MoInRwLW5vLWV2ZW50cyIpICYmICh3ID0gIjtwb2ludGVyLWV2ZW50czpub25lIiksIG4ud3JhcCgiPGRpdiAiICsgeSArICcgY2xhc3M9InRwLXBhcmFsbGF4LXdyYXAgJyArIHYgKyAnIiBzdHlsZT0iJyArIGYgKyAiICIgKyB1ICsgInBvc2l0aW9uOiIgKyBnICsgIjsiICsgbSArICI7dmlzaWJpbGl0eTpoaWRkZW4iICsgdyArICciPjxkaXYgY2xhc3M9InRwLWxvb3Atd3JhcCIgc3R5bGU9IicgKyB1ICsgInBvc2l0aW9uOiIgKyBnICsgIjsiICsgbSArICc7Ij48ZGl2IGNsYXNzPSJ0cC1tYXNrLXdyYXAiIHN0eWxlPSInICsgdSArICJwb3NpdGlvbjoiICsgZyArICI7IiArIG0gKyAnOyIgPjwvZGl2PjwvZGl2PjwvZGl2PicpLCBzICYmIHguc2Nyb2xsZWZmZWN0Lm9uICYmICgib24iID09PSB4LnNjcm9sbGVmZmVjdC5vbl9wYXJhbGxheF9sYXllcnMgJiYgaS5pc3BhcmFsbGF4bGF5ZXIgfHwgIm9uIiA9PT0geC5zY3JvbGxlZmZlY3Qub25fbGF5ZXJzICYmICFpLmlzcGFyYWxsYXhsYXllcikgJiYgeC5zY3JvbGxlZmZlY3QubGF5ZXJzLnB1c2gobi5wYXJlbnQoKSksIGwgJiYgeC5zY3JvbGxlZmZlY3QubGF5ZXJzLnB1c2gobi5wYXJlbnQoKSksICJjb2x1bW4iID09PSBoICYmIChuLmFwcGVuZCgnPGRpdiBjbGFzcz0icmV2X2NvbHVtbl9iZyByZXZfY29sdW1uX2JnX21hbl9zaXplZCIgc3R5bGU9InZpc2liaWxpdHk6aGlkZGVuIj48L2Rpdj4nKSwgbi5jbG9zZXN0KCIudHAtcGFyYWxsYXgtd3JhcCIpLmFwcGVuZCgnPGRpdiBjbGFzcz0icmV2X2NvbHVtbl9iZyByZXZfY29sdW1uX2JnX2F1dG9fc2l6ZWQiPjwvZGl2PicpKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGIgPSBuLmNsb3Nlc3QoIi50cC1sb29wLXdyYXAiKTsKICAgICAgICAgICAgICAgICAgICAgICAgalF1ZXJ5LmVhY2goWyJwZW5kdWx1bSIsICJyb3RhdGUiLCAic2xpZGVsb29wIiwgInB1bHNlIiwgIndhdmUiXSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBuLmZpbmQoIi5ycy0iICsgaSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA9IHQuZGF0YSgpIHx8ICIiOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIgIT0gYSAmJiAoYi5kYXRhKGEpLCBiLmFkZENsYXNzKCJycy0iICsgaSksIHQuY2hpbGRyZW4oMCkudW53cmFwKCksIG4uZGF0YSgibG9vcGFuaW1hdGlvbiIsICJvbiIpKQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgbi5hdHRyKCJpZCIpID09PSB1bmRlZmluZWQgJiYgbi5hdHRyKCJpZCIsICJsYXllci0iICsgTWF0aC5yb3VuZCg5OTk5OTk5OTkgKiBNYXRoLnJhbmRvbSgpKSksIGNoZWNrSURTKHgsIG4pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobiwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgdmFyIF8gPSBuLmRhdGEoImFjdGlvbnMiKTsKICAgICAgICAgICAgICAgICAgICBfICE9PSB1bmRlZmluZWQgJiYgX1IuY2hlY2tBY3Rpb25zKG4sIHgsIF8pLCBjaGVja0hvdmVyRGVwZW5kZW5jaWVzKG4sIHgpLCBfUi5jaGVja1ZpZGVvQXBpcyAmJiAoaiA9IF9SLmNoZWNrVmlkZW9BcGlzKG4sIHgsIGopKSwgciB8fCAxICE9IHQgJiYgInRydWUiICE9IHQgJiYgIjFzdHRpbWUiICE9IGEgfHwgImxvb3BhbmRub3NsaWRlc3RvcCIgPT0gbyB8fCBuLmNsb3Nlc3QoImxpLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmFkZENsYXNzKCJycy1wYXVzZS10aW1lci1vbmNlIiksIHIgfHwgMSAhPSBhICYmICJ0cnVlIiAhPSBhICYmICJvbiIgIT0gYSAmJiAibm8xc3R0aW1lIiAhPSBhIHx8ICJsb29wYW5kbm9zbGlkZXN0b3AiID09IG8gfHwgbi5jbG9zZXN0KCJsaS50cC1yZXZzbGlkZXItc2xpZGVzbGkiKS5hZGRDbGFzcygicnMtcGF1c2UtdGltZXItYWx3YXlzIikKICAgICAgICAgICAgICAgIH0pLCB0WzBdLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB0LnRyaWdnZXIoInRwLW1vdXNlZW50ZXIiKSwgeC5vdmVyY29udGFpbmVyID0gITAKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICAgICAgfSksIHRbMF0uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdC50cmlnZ2VyKCJ0cC1tb3VzZW92ZXIiKSwgeC5vdmVyY29udGFpbmVyID0gITAKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICAgICAgfSksIHRbMF0uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHQudHJpZ2dlcigidHAtbW91c2VsZWZ0IiksIHgub3ZlcmNvbnRhaW5lciA9ICExCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgcGFzc2l2ZTogITAKICAgICAgICAgICAgICAgIH0pLCB0LmZpbmQoIi50cC1jYXB0aW9uIHZpZGVvIikuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgaS5yZW1vdmVDbGFzcygidmlkZW8tanMgdmpzLWRlZmF1bHQtc2tpbiIpLCBpLmF0dHIoInByZWxvYWQiLCAiIiksIGkuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogIm5vbmUiCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pLCAic3RhbmRhcmQiICE9PSB4LnNsaWRlclR5cGUgJiYgKHgubGF6eVR5cGUgPSAiYWxsIiksIGxvYWRJbWFnZXModC5maW5kKCIudHAtc3RhdGljLWxheWVycyIpLCB4LCAwLCAhMCksIHdhaXRGb3JDdXJyZW50SW1hZ2VzKHQuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKSwgeCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdC5maW5kKCIudHAtc3RhdGljLWxheWVycyBpbWciKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlLmRhdGEoImxhenlsb2FkIikgIT0gdW5kZWZpbmVkID8gZS5kYXRhKCJsYXp5bG9hZCIpIDogZS5hdHRyKCJzcmMiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQgPSBnZXRMb2FkT2JqKHgsIGkpOwogICAgICAgICAgICAgICAgICAgICAgICBlLmF0dHIoInNyYyIsIHQuc3JjKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9KSwgeC5yb3d6b25lcyA9IFtdLCB4LmFsbGxpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0aGlzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlOiA2ZTMKICAgICAgICAgICAgICAgICAgICB9KSwgeC5yb3d6b25lc1tlXSA9IFtdLCBpLmZpbmQoIi5yZXZfcm93X3pvbmUiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB4LnJvd3pvbmVzW2VdLnB1c2goalF1ZXJ5KHRoaXMpKQogICAgICAgICAgICAgICAgICAgIH0pLCAiYWxsIiAhPSB4LmxhenlUeXBlICYmICgic21hcnQiICE9IHgubGF6eVR5cGUgfHwgMCAhPSBlICYmIDEgIT0gZSAmJiBlICE9IHguc2xpZGVhbW91bnQgJiYgZSAhPSB4LnNsaWRlYW1vdW50IC0gMSkgfHwgKGxvYWRJbWFnZXMoaSwgeCwgZSksIHdhaXRGb3JDdXJyZW50SW1hZ2VzKGksIHgsIGZ1bmN0aW9uKCkge30pKQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgZiA9IGdldFVybFZhcnMoIiMiKVswXTsKICAgICAgICAgICAgICAgIGlmIChmLmxlbmd0aCA8IDkgJiYgMSA8IGYuc3BsaXQoInNsaWRlIikubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGggPSBwYXJzZUludChmLnNwbGl0KCJzbGlkZSIpWzFdLCAwKTsKICAgICAgICAgICAgICAgICAgICBoIDwgMSAmJiAoaCA9IDEpLCBoID4geC5zbGlkZWFtb3VudCAmJiAoaCA9IHguc2xpZGVhbW91bnQpLCB4LnN0YXJ0V2l0aFNsaWRlID0gaCAtIDEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHQuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1sb2FkZXIgJyArIHguc3Bpbm5lciArICciPjxkaXYgY2xhc3M9ImRvdDEiPjwvZGl2PjxkaXYgY2xhc3M9ImRvdDIiPjwvZGl2PjxkaXYgY2xhc3M9ImJvdW5jZTEiPjwvZGl2PjxkaXYgY2xhc3M9ImJvdW5jZTIiPjwvZGl2PjxkaXYgY2xhc3M9ImJvdW5jZTMiPjwvZGl2PjwvZGl2PicpLCB4LmxvYWRlciA9IHQuZmluZCgiLnRwLWxvYWRlciIpLCAwID09PSB0LmZpbmQoIi50cC1iYW5uZXJ0aW1lciIpLmxlbmd0aCAmJiB0LmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtYmFubmVydGltZXIiIHN0eWxlPSJ2aXNpYmlsaXR5OmhpZGRlbiI+PC9kaXY+JyksIHQuZmluZCgiLnRwLWJhbm5lcnRpbWVyIikuY3NzKHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogIjAlIgogICAgICAgICAgICAgICAgfSksIHgudWwuY3NzKHsKICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAiYmxvY2siCiAgICAgICAgICAgICAgICB9KSwgcHJlcGFyZVNsaWRlcyh0LCB4KSwgKCJvZmYiICE9PSB4LnBhcmFsbGF4LnR5cGUgfHwgeC5zY3JvbGxlZmZlY3Qub24pICYmIF9SLmNoZWNrRm9yUGFyYWxsYXggJiYgX1IuY2hlY2tGb3JQYXJhbGxheCh0LCB4KSwgX1Iuc2V0U2l6ZSh4KSwgImhlcm8iICE9PSB4LnNsaWRlclR5cGUgJiYgX1IuY3JlYXRlTmF2aWdhdGlvbiAmJiBfUi5jcmVhdGVOYXZpZ2F0aW9uKHQsIHgpLCBfUi5yZXNpemVUaHVtYnNUYWJzICYmIF9SLnJlc2l6ZVRodW1ic1RhYnMgJiYgX1IucmVzaXplVGh1bWJzVGFicyh4KSwgY29udFdpZHRoTWFuYWdlcih4KTsKICAgICAgICAgICAgICAgIHZhciBnID0geC52aWV3UG9ydDsKICAgICAgICAgICAgICAgIHguaW52aWV3cG9ydCA9ICExLCBnICE9IHVuZGVmaW5lZCAmJiBnLmVuYWJsZSAmJiAoalF1ZXJ5LmlzTnVtZXJpYyhnLnZpc2libGVfYXJlYSkgfHwgLTEgIT09IGcudmlzaWJsZV9hcmVhLmluZGV4T2YoIiUiKSAmJiAoZy52aXNpYmxlX2FyZWEgPSBwYXJzZUludChnLnZpc2libGVfYXJlYSkgLyAxMDApLCBfUi5zY3JvbGxUaWNrZXIgJiYgX1Iuc2Nyb2xsVGlja2VyKHgsIHQpKSwgImNhcm91c2VsIiA9PT0geC5zbGlkZXJUeXBlICYmIF9SLnByZXBhcmVDYXJvdXNlbCAmJiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHgudWwsIHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwCiAgICAgICAgICAgICAgICB9KSwgX1IucHJlcGFyZUNhcm91c2VsKHgsIG5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSwgdW5kZWZpbmVkLCAwKSwgeC5vbmx5UHJlcGFyZWRTbGlkZSA9ICEwKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIWcuZW5hYmxlIHx8IGcuZW5hYmxlICYmIHguaW52aWV3cG9ydCB8fCBnLmVuYWJsZSAmJiAheC5pbnZpZXdwb3J0ICYmICJ3YWl0IiA9PSAhZy5vdXRvZikgc3dhcFNsaWRlKHQpOwogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHguYy5hZGRDbGFzcygidHAtd2FpdGZvcmZpcnN0c3RhcnQiKSwgeC53YWl0Rm9yRmlyc3RTbGlkZSA9ICEwLCBnLnByZXNpemUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkoeC5saVswXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRJbWFnZXMoZSwgeCwgMCwgITApLCB3YWl0Rm9yQ3VycmVudEltYWdlcyhlLmZpbmQoIi50cC1sYXllcnMiKSwgeCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUi5hbmltYXRlVGhlQ2FwdGlvbnMoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNsaWRlOiBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdDogeCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXQ6ICEwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBfUi5tYW5hZ2VOYXZpZ2F0aW9uICYmIF9SLm1hbmFnZU5hdmlnYXRpb24oeCksIDEgPCB4LnNsaWRlYW1vdW50ICYmICghZy5lbmFibGUgfHwgZy5lbmFibGUgJiYgeC5pbnZpZXdwb3J0ID8gY291bnREb3duKHQsIHgpIDogeC53YWl0Rm9yQ291bnREb3duID0gITApLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB0LnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25sb2FkZWQiKQogICAgICAgICAgICAgICAgICAgIH0sIDEwMCkKICAgICAgICAgICAgICAgIH0sIHguc3RhcnREZWxheSksIHguc3RhcnREZWxheSA9IDAsIGpRdWVyeSgiYm9keSIpLmRhdGEoInJzLWZ1bGxTY3JlZW5Nb2RlIiwgITEpLCB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbmNoYW5nZSIsIG9uRnVsbFNjcmVlbkNoYW5nZSwgewogICAgICAgICAgICAgICAgICAgIHBhc3NpdmU6ICEwCiAgICAgICAgICAgICAgICB9KSwgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1vemZ1bGxzY3JlZW5jaGFuZ2UiLCBvbkZ1bGxTY3JlZW5DaGFuZ2UsIHsKICAgICAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICAgICAgfSksIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRmdWxsc2NyZWVuY2hhbmdlIiwgb25GdWxsU2NyZWVuQ2hhbmdlLCB7CiAgICAgICAgICAgICAgICAgICAgcGFzc2l2ZTogITAKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmFyIHYgPSAicmVzaXplLnJldnNsaWRlci0iICsgdC5hdHRyKCJpZCIpOwogICAgICAgICAgICAgICAgalF1ZXJ5KHdpbmRvdykub24odiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHQgPT0gdW5kZWZpbmVkKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgMCAhPSBqUXVlcnkoImJvZHkiKS5maW5kKHQpICYmIGNvbnRXaWR0aE1hbmFnZXIoeCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSAhMTsKICAgICAgICAgICAgICAgICAgICBpZiAoImZ1bGxzY3JlZW4iID09IHguc2xpZGVyTGF5b3V0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0galF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGUgPSAibW9iaWxlIiA9PSB4LmZhbGxiYWNrcy5pZ25vcmVIZWlnaHRDaGFuZ2VzICYmIF9JU00gfHwgImFsd2F5cyIgPT0geC5mYWxsYmFja3MuaWdub3JlSGVpZ2h0Q2hhbmdlcyA/ICh4LmZhbGxiYWNrcy5pZ25vcmVIZWlnaHRDaGFuZ2VzU2l6ZSA9IHguZmFsbGJhY2tzLmlnbm9yZUhlaWdodENoYW5nZXNTaXplID09IHVuZGVmaW5lZCA/IDAgOiB4LmZhbGxiYWNrcy5pZ25vcmVIZWlnaHRDaGFuZ2VzU2l6ZSwgaSAhPSB4Lmxhc3R3aW5kb3doZWlnaHQgJiYgTWF0aC5hYnMoaSAtIHgubGFzdHdpbmRvd2hlaWdodCkgPiB4LmZhbGxiYWNrcy5pZ25vcmVIZWlnaHRDaGFuZ2VzU2l6ZSkgOiBpICE9IHgubGFzdHdpbmRvd2hlaWdodAogICAgICAgICAgICAgICAgICAgIH0odC5vdXRlcldpZHRoKCEwKSAhPSB4LndpZHRoIHx8IHQuaXMoIjpoaWRkZW4iKSB8fCBlKSAmJiAoeC5sYXN0d2luZG93aGVpZ2h0ID0galF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCksIGNvbnRhaW5lclJlc2l6ZWQodCwgeCkpCiAgICAgICAgICAgICAgICB9KSwgaGlkZVNsaWRlclVuZGVyKHQsIHgpLCBjb250V2lkdGhNYW5hZ2VyKHgpLCB4LmZhbGxiYWNrcy5kaXNhYmxlRm9jdXNMaXN0ZW5lciB8fCAidHJ1ZSIgPT0geC5mYWxsYmFja3MuZGlzYWJsZUZvY3VzTGlzdGVuZXIgfHwgITAgPT09IHguZmFsbGJhY2tzLmRpc2FibGVGb2N1c0xpc3RlbmVyIHx8ICh0LmFkZENsYXNzKCJyZXZfcmVkcmF3X29uX2JsdXJmb2N1cyIpLCB0YWJCbHVycmluZ0NoZWNrKCkpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGNBcnJheSA9IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgaWYgKCFqUXVlcnkuaXNBcnJheShlKSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBlOwogICAgICAgICAgICAgICAgKGUgPSBuZXcgQXJyYXkpLnB1c2godCkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZS5sZW5ndGggPCBpKSB7CiAgICAgICAgICAgICAgICB0ID0gZVtlLmxlbmd0aCAtIDFdOwogICAgICAgICAgICAgICAgZm9yICh2YXIgYSA9IDA7IGEgPCBpIC0gZS5sZW5ndGggKyAyOyBhKyspIGUucHVzaCh0KQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgfSwKICAgICAgICBjaGVja0hvdmVyRGVwZW5kZW5jaWVzID0gZnVuY3Rpb24oZSwgbikgewogICAgICAgICAgICB2YXIgaSA9IGUuZGF0YSgpOwogICAgICAgICAgICAoInNsaWRlcmVudGVyIiA9PT0gaS5zdGFydCB8fCBpLmZyYW1lcyAhPT0gdW5kZWZpbmVkICYmIGkuZnJhbWVzWzBdICE9IHVuZGVmaW5lZCAmJiAic2xpZGVyZW50ZXIiID09PSBpLmZyYW1lc1swXS5kZWxheSkgJiYgKG4ubGF5ZXJzb25ob3ZlciA9PT0gdW5kZWZpbmVkICYmIChuLmMub24oInRwLW1vdXNlZW50ZXIiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG4ubGF5ZXJzb25ob3ZlciAmJiBqUXVlcnkuZWFjaChuLmxheWVyc29uaG92ZXIsIGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGkuZGF0YSgiY2xvc2VzdGxpIikgfHwgaS5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIiksCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBpLmRhdGEoInN0YXRpY2xpIikgfHwgaS5jbG9zZXN0KCIudHAtc3RhdGljLWxheWVycyIpOwogICAgICAgICAgICAgICAgICAgIGkuZGF0YSgiY2xvc2VzdGxpIikgPT09IHVuZGVmaW5lZCAmJiAoaS5kYXRhKCJjbG9zZXN0bGkiLCB0KSwgaS5kYXRhKCJzdGF0aWNsaSIsIGEpKSwgKDAgPCB0Lmxlbmd0aCAmJiB0Lmhhc0NsYXNzKCJhY3RpdmUtcmV2c2xpZGUiKSB8fCB0Lmhhc0NsYXNzKCJwcm9jZXNzaW5nLXJldnNsaWRlIikgfHwgMCA8IGEubGVuZ3RoKSAmJiAoaS5kYXRhKCJhbmltZGlyZWN0aW9uIiwgImluIiksIF9SLnBsYXlBbmltYXRpb25GcmFtZSAmJiBfUi5wbGF5QW5pbWF0aW9uRnJhbWUoewogICAgICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBpLAogICAgICAgICAgICAgICAgICAgICAgICBvcHQ6IG4sCiAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJkaXJlY3Rpb246ICJpbiIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJmcmFtZWluOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJmcmFtZW91dDogImZyYW1lXzk5OSIKICAgICAgICAgICAgICAgICAgICB9KSwgaS5kYXRhKCJ0cmlnZ2Vyc3RhdGUiLCAib24iKSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pLCBuLmMub24oInRwLW1vdXNlbGVmdCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbi5sYXllcnNvbmhvdmVyICYmIGpRdWVyeS5lYWNoKG4ubGF5ZXJzb25ob3ZlciwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgICAgIGkuZGF0YSgiYW5pbWRpcmVjdGlvbiIsICJvdXQiKSwgaS5kYXRhKCJ0cmlnZ2VyZWQiLCAhMCksIGkuZGF0YSgidHJpZ2dlcnN0YXRlIiwgIm9mZiIpLCBfUi5zdG9wVmlkZW8gJiYgX1Iuc3RvcFZpZGVvKGksIG4pLCBfUi5wbGF5QW5pbWF0aW9uRnJhbWUgJiYgX1IucGxheUFuaW1hdGlvbkZyYW1lKHsKICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogaSwKICAgICAgICAgICAgICAgICAgICAgICAgb3B0OiBuLAogICAgICAgICAgICAgICAgICAgICAgICBmcmFtZTogImZyYW1lXzk5OSIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJkaXJlY3Rpb246ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVpbjogImZyYW1lXzAiLAogICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVvdXQ6ICJmcmFtZV85OTkiCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pLCBuLmxheWVyc29uaG92ZXIgPSBuZXcgQXJyYXkpLCBuLmxheWVyc29uaG92ZXIucHVzaChlKSkKICAgICAgICB9LAogICAgICAgIGNvbnRXaWR0aE1hbmFnZXIgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciBpID0gX1IuZ2V0SG9yaXpvbnRhbE9mZnNldChlLmMsICJsZWZ0Iik7CiAgICAgICAgICAgIGlmICgiYXV0byIgPT0gZS5zbGlkZXJMYXlvdXQgfHwgImZ1bGxzY3JlZW4iID09PSBlLnNsaWRlckxheW91dCAmJiAib24iID09IGUuZnVsbFNjcmVlbkF1dG9XaWR0aCkgImZ1bGxzY3JlZW4iID09IGUuc2xpZGVyTGF5b3V0ICYmICJvbiIgPT0gZS5mdWxsU2NyZWVuQXV0b1dpZHRoID8gcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUudWwsIHsKICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICB3aWR0aDogZS5jLndpZHRoKCkKICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS51bCwgewogICAgICAgICAgICAgICAgbGVmdDogaSwKICAgICAgICAgICAgICAgIHdpZHRoOiBlLmMud2lkdGgoKSAtIF9SLmdldEhvcml6b250YWxPZmZzZXQoZS5jLCAiYm90aCIpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gTWF0aC5jZWlsKGUuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5vZmZzZXQoKS5sZWZ0IC0gaSk7CiAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5jLnBhcmVudCgpLCB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIHQgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBqUXVlcnkod2luZG93KS53aWR0aCgpIC0gX1IuZ2V0SG9yaXpvbnRhbE9mZnNldChlLmMsICJib3RoIikKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZS5zbGF5ZXJzICYmICJmdWxsd2lkdGgiICE9IGUuc2xpZGVyTGF5b3V0ICYmICJmdWxsc2NyZWVuIiAhPSBlLnNsaWRlckxheW91dCAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5zbGF5ZXJzLCB7CiAgICAgICAgICAgICAgICBsZWZ0OiBpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBjdiA9IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIGUgPT09IHVuZGVmaW5lZCA/IGkgOiBlCiAgICAgICAgfSwKICAgICAgICBoaWRlU2xpZGVyVW5kZXIgPSBmdW5jdGlvbihlLCBpLCB0KSB7CiAgICAgICAgICAgIHZhciBhID0gZS5wYXJlbnQoKTsKICAgICAgICAgICAgalF1ZXJ5KHdpbmRvdykud2lkdGgoKSA8IGkuaGlkZVNsaWRlckF0TGltaXQgPyAoZS50cmlnZ2VyKCJzdG9wdGltZXIiKSwgIm5vbmUiICE9IGEuY3NzKCJkaXNwbGF5IikgJiYgYS5kYXRhKCJvbGRkaXNwbGF5IiwgYS5jc3MoImRpc3BsYXkiKSksIGEuY3NzKHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJub25lIgogICAgICAgICAgICB9KSkgOiBlLmlzKCI6aGlkZGVuIikgJiYgdCAmJiAoYS5kYXRhKCJvbGRkaXNwbGF5IikgIT0gdW5kZWZpbmVkICYmICJ1bmRlZmluZWQiICE9IGEuZGF0YSgib2xkZGlzcGxheSIpICYmICJub25lIiAhPSBhLmRhdGEoIm9sZGRpc3BsYXkiKSA/IGEuY3NzKHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6IGEuZGF0YSgib2xkZGlzcGxheSIpCiAgICAgICAgICAgIH0pIDogYS5jc3MoewogICAgICAgICAgICAgICAgZGlzcGxheTogImJsb2NrIgogICAgICAgICAgICB9KSwgZS50cmlnZ2VyKCJyZXN0YXJ0dGltZXIiKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGNvbnRhaW5lclJlc2l6ZWQoZSwgaSkKICAgICAgICAgICAgfSwgMTUwKSksIF9SLmhpZGVVbkhpZGVOYXYgJiYgX1IuaGlkZVVuSGlkZU5hdihpKQogICAgICAgIH0sCiAgICAgICAgY29udGFpbmVyUmVzaXplZCA9IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgaWYgKGUudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5iZWZvcmVyZWRyYXciKSwgMSA9PSBpLmluZnVsbHNjcmVlbm1vZGUgJiYgKGkubWluSGVpZ2h0ID0galF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkpLCBzZXRDdXJXaW5SYW5nZShpKSwgc2V0Q3VyV2luUmFuZ2UoaSwgITApLCAhX1IucmVzaXplVGh1bWJzVGFicyB8fCAhMCA9PT0gX1IucmVzaXplVGh1bWJzVGFicyhpKSkgewogICAgICAgICAgICAgICAgaWYgKGhpZGVTbGlkZXJVbmRlcihlLCBpLCAhMCksIGNvbnRXaWR0aE1hbmFnZXIoaSksICJjYXJvdXNlbCIgPT0gaS5zbGlkZXJUeXBlICYmIF9SLnByZXBhcmVDYXJvdXNlbChpLCAhMCksIGUgPT09IHVuZGVmaW5lZCkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgX1Iuc2V0U2l6ZShpKSwgaS5jb253ID0gaS5jLndpZHRoKCksIGkuY29uaCA9IGkuaW5mdWxsc2NyZWVubW9kZSA/IGkubWluSGVpZ2h0IDogaS5jLmhlaWdodCgpOwogICAgICAgICAgICAgICAgdmFyIHQgPSBlLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUgLnNsb3Rob2xkZXIiKSwKICAgICAgICAgICAgICAgICAgICBhID0gZS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSAuc2xvdGhvbGRlciIpOwogICAgICAgICAgICAgICAgcmVtb3ZlU2xvdHMoZSwgaSwgZSwgMiksICJzdGFuZGFyZCIgPT09IGkuc2xpZGVyVHlwZSAmJiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEuZmluZCgiLmRlZmF1bHRpbWciKSwgewogICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgICAgIH0pLCB0LmZpbmQoIi5kZWZhdWx0aW1nIikuY3NzKHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxCiAgICAgICAgICAgICAgICB9KSksICJjYXJvdXNlbCIgPT09IGkuc2xpZGVyVHlwZSAmJiBpLmxhc3Rjb253ICE9IGkuY29udyAmJiAoY2xlYXJUaW1lb3V0KGkucGNhcnRpbWVyKSwgaS5wY2FydGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIF9SLnByZXBhcmVDYXJvdXNlbChpLCAhMCksICJjYXJvdXNlbCIgPT0gaS5zbGlkZXJUeXBlICYmICJvbiIgPT09IGkuY2Fyb3VzZWwuc2hvd0xheWVyc0FsbFRpbWUgJiYgalF1ZXJ5LmVhY2goaS5saSwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICBfUi5hbmltYXRlVGhlQ2FwdGlvbnMoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2xpZGU6IGpRdWVyeShpLmxpW2VdKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdDogaSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY2FsbDogITAKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSwgMTAwKSwgaS5sYXN0Y29udyA9IGkuY29udyksIF9SLm1hbmFnZU5hdmlnYXRpb24gJiYgX1IubWFuYWdlTmF2aWdhdGlvbihpKSwgX1IuYW5pbWF0ZVRoZUNhcHRpb25zICYmIDAgPCBlLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKS5sZW5ndGggJiYgX1IuYW5pbWF0ZVRoZUNhcHRpb25zKHsKICAgICAgICAgICAgICAgICAgICBzbGlkZTogZS5maW5kKCIuYWN0aXZlLXJldnNsaWRlIiksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBpLAogICAgICAgICAgICAgICAgICAgIHJlY2FsbDogITAKICAgICAgICAgICAgICAgIH0pLCAib24iID09IGEuZGF0YSgia2VuYnVybnMiKSAmJiBfUi5zdGFydEtlbkJ1cm4oYSwgaSwgYS5kYXRhKCJrYnRsIikgIT09IHVuZGVmaW5lZCA/IGEuZGF0YSgia2J0bCIpLnByb2dyZXNzKCkgOiAwKSwgIm9uIiA9PSB0LmRhdGEoImtlbmJ1cm5zIikgJiYgX1Iuc3RhcnRLZW5CdXJuKHQsIGksIHQuZGF0YSgia2J0bCIpICE9PSB1bmRlZmluZWQgPyB0LmRhdGEoImtidGwiKS5wcm9ncmVzcygpIDogMCksIF9SLmFuaW1hdGVUaGVDYXB0aW9ucyAmJiAwIDwgZS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLmxlbmd0aCAmJiBfUi5hbmltYXRlVGhlQ2FwdGlvbnMoewogICAgICAgICAgICAgICAgICAgIHNsaWRlOiBlLmZpbmQoIi5wcm9jZXNzaW5nLXJldnNsaWRlIiksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBpLAogICAgICAgICAgICAgICAgICAgIHJlY2FsbDogITAKICAgICAgICAgICAgICAgIH0pLCBfUi5tYW5hZ2VOYXZpZ2F0aW9uICYmIF9SLm1hbmFnZU5hdmlnYXRpb24oaSkKICAgICAgICAgICAgfQogICAgICAgICAgICBlLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUuYWZ0ZXJkcmF3IikKICAgICAgICB9LAogICAgICAgIHNldFNjYWxlID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlLmJ3ID0gZS53aWR0aCAvIGUuZ3JpZHdpZHRoW2UuY3VyV2luUmFuZ2VdLCBlLmJoID0gZS5oZWlnaHQgLyBlLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0sIGUuYmggPiBlLmJ3ID8gZS5iaCA9IGUuYncgOiBlLmJ3ID0gZS5iaCwgKDEgPCBlLmJoIHx8IDEgPCBlLmJ3KSAmJiAoZS5idyA9IDEsIGUuYmggPSAxKQogICAgICAgIH0sCiAgICAgICAgcHJlcGFyZVNsaWRlcyA9IGZ1bmN0aW9uKGUsIHUpIHsKICAgICAgICAgICAgaWYgKGUuZmluZCgiLnRwLWNhcHRpb24iKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGUuZGF0YSgidHJhbnNpdGlvbiIpICE9PSB1bmRlZmluZWQgJiYgZS5hZGRDbGFzcyhlLmRhdGEoInRyYW5zaXRpb24iKSkKICAgICAgICAgICAgICAgIH0pLCB1LnVsLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJoaWRkZW4iLAogICAgICAgICAgICAgICAgICAgIHdpZHRoOiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiBlLnBhcmVudCgpLmNzcygibWF4SGVpZ2h0IikKICAgICAgICAgICAgICAgIH0pLCAib24iID09IHUuYXV0b0hlaWdodCAmJiAodS51bC5jc3MoewogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiAiaGlkZGVuIiwKICAgICAgICAgICAgICAgICAgICB3aWR0aDogIjEwMCUiLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogIjEwMCUiLAogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogIm5vbmUiCiAgICAgICAgICAgICAgICB9KSwgZS5jc3MoewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogIm5vbmUiCiAgICAgICAgICAgICAgICB9KSwgZS5wYXJlbnQoKS5jc3MoewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogIm5vbmUiCiAgICAgICAgICAgICAgICB9KSksIHUuYWxsbGkuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIHQgPSBpLmRhdGEoIm9yaWdpbmFsaW5kZXgiKTsKICAgICAgICAgICAgICAgICAgICAodS5zdGFydFdpdGhTbGlkZSAhPSB1bmRlZmluZWQgJiYgdCA9PSB1LnN0YXJ0V2l0aFNsaWRlIHx8IHUuc3RhcnRXaXRoU2xpZGUgPT09IHVuZGVmaW5lZCAmJiAwID09IGUpICYmIGkuYWRkQ2xhc3MoIm5leHQtcmV2c2xpZGUiKSwgaS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogIjEwMCUiLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJoaWRkZW4iCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pLCAiY2Fyb3VzZWwiID09PSB1LnNsaWRlclR5cGUpIHsKICAgICAgICAgICAgICAgIHUudWwuY3NzKHsKICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogInZpc2libGUiCiAgICAgICAgICAgICAgICB9KS53cmFwKCc8ZGl2IGNsYXNzPSJ0cC1jYXJvdXNlbC13cmFwcGVyIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6MHB4O292ZXJmbG93OmhpZGRlbjsiPjwvZGl2PicpOwogICAgICAgICAgICAgICAgdmFyIGkgPSAnPGRpdiBzdHlsZT0iY2xlYXI6Ym90aDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjFweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tYm90dG9tOi0xcHgiPjwvZGl2Pic7CiAgICAgICAgICAgICAgICB1LmMucGFyZW50KCkucHJlcGVuZChpKSwgdS5jLnBhcmVudCgpLmFwcGVuZChpKSwgX1IucHJlcGFyZUNhcm91c2VsKHUpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZS5wYXJlbnQoKS5jc3MoewogICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJ2aXNpYmxlIgogICAgICAgICAgICB9KSwgdS5hbGxsaS5maW5kKCI+aW1nIikuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICB0ID0gaS5jbG9zZXN0KCJsaSIpLAogICAgICAgICAgICAgICAgICAgIGEgPSB0LmZpbmQoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIik7CiAgICAgICAgICAgICAgICBhLmFkZENsYXNzKCJkZWZhdWx0dmlkIikuY3NzKHsKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDMwCiAgICAgICAgICAgICAgICB9KSwgaS5hZGRDbGFzcygiZGVmYXVsdGltZyIpLCAib24iID09IHUuZmFsbGJhY2tzLnBhblpvb21EaXNhYmxlT25Nb2JpbGUgJiYgX0lTTSAmJiAoaS5kYXRhKCJrZW5idXJucyIsICJvZmYiKSwgaS5kYXRhKCJiZ2ZpdCIsICJjb3ZlciIpKTsKICAgICAgICAgICAgICAgIHZhciBuID0gdC5kYXRhKCJtZWRpYWZpbHRlciIpOwogICAgICAgICAgICAgICAgbiA9ICJub25lIiA9PT0gbiB8fCBuID09PSB1bmRlZmluZWQgPyAiIiA6IG4sIGkud3JhcCgnPGRpdiBjbGFzcz0ic2xvdGhvbGRlciIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB0b3A6MHB4OyBsZWZ0OjBweDsgei1pbmRleDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ij48L2Rpdj4nKSwgYS5hcHBlbmRUbyh0LmZpbmQoIi5zbG90aG9sZGVyIikpOwogICAgICAgICAgICAgICAgdmFyIHIgPSBpLmRhdGEoKTsKICAgICAgICAgICAgICAgIGkuY2xvc2VzdCgiLnNsb3Rob2xkZXIiKS5kYXRhKHIpLCAwIDwgYS5sZW5ndGggJiYgci5iZ3BhcmFsbGF4ICE9IHVuZGVmaW5lZCAmJiAoYS5kYXRhKCJiZ3BhcmFsbGF4Iiwgci5iZ3BhcmFsbGF4KSwgYS5kYXRhKCJzaG93Y292ZXJvbnBhdXNlIiwgIm9uIikpLCAibm9uZSIgIT0gdS5kb3R0ZWRPdmVybGF5ICYmIHUuZG90dGVkT3ZlcmxheSAhPSB1bmRlZmluZWQgJiYgaS5jbG9zZXN0KCIuc2xvdGhvbGRlciIpLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtZG90dGVkb3ZlcmxheSAnICsgdS5kb3R0ZWRPdmVybGF5ICsgJyI+PC9kaXY+Jyk7CiAgICAgICAgICAgICAgICB2YXIgbyA9IGkuYXR0cigic3JjIik7CiAgICAgICAgICAgICAgICByLnNyYyA9IG8sIHIuYmdmaXQgPSByLmJnZml0IHx8ICJjb3ZlciIsIHIuYmdyZXBlYXQgPSByLmJncmVwZWF0IHx8ICJuby1yZXBlYXQiLCByLmJncG9zaXRpb24gPSByLmJncG9zaXRpb24gfHwgImNlbnRlciBjZW50ZXIiLCBpLmNsb3Nlc3QoIi5zbG90aG9sZGVyIik7CiAgICAgICAgICAgICAgICB2YXIgcywgbCA9IGkuZGF0YSgiYmdjb2xvciIpOwogICAgICAgICAgICAgICAgcyA9IGwgIT09IHVuZGVmaW5lZCAmJiAwIDw9IGwuaW5kZXhPZigiZ3JhZGllbnQiKSA/ICciYmFja2dyb3VuZDonICsgbCArICc7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTsiJyA6ICciYmFja2dyb3VuZC1jb2xvcjonICsgbCArICI7YmFja2dyb3VuZC1yZXBlYXQ6IiArIHIuYmdyZXBlYXQgKyAiO2JhY2tncm91bmQtaW1hZ2U6dXJsKCIgKyBvICsgIik7YmFja2dyb3VuZC1zaXplOiIgKyByLmJnZml0ICsgIjtiYWNrZ3JvdW5kLXBvc2l0aW9uOiIgKyByLmJncG9zaXRpb24gKyAnO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7IicsIGkuZGF0YSgibWVkaWFmaWx0ZXIiLCBuKSwgbiA9ICJvbiIgPT09IGkuZGF0YSgia2VuYnVybnMiKSA/ICIiIDogbjsKICAgICAgICAgICAgICAgIHZhciBkID0galF1ZXJ5KCc8ZGl2IGNsYXNzPSJ0cC1iZ2ltZyBkZWZhdWx0aW1nICcgKyBuICsgJyIgZGF0YS1iZ2NvbG9yPSInICsgbCArICciIHN0eWxlPScgKyBzICsgIj48L2Rpdj4iKTsKICAgICAgICAgICAgICAgIGkucGFyZW50KCkuYXBwZW5kKGQpOwogICAgICAgICAgICAgICAgdmFyIGMgPSBkb2N1bWVudC5jcmVhdGVDb21tZW50KCJSdW50aW1lIE1vZGlmaWNhdGlvbiAtIEltZyB0YWcgaXMgU3RpbGwgQXZhaWxhYmxlIGZvciBTRU8gR29hbHMgaW4gU291cmNlIC0gIiArIGkuZ2V0KDApLm91dGVySFRNTCk7CiAgICAgICAgICAgICAgICBpLnJlcGxhY2VXaXRoKGMpLCBkLmRhdGEociksIGQuYXR0cigic3JjIiwgbyksICJzdGFuZGFyZCIgIT09IHUuc2xpZGVyVHlwZSAmJiAidW5kZWZpbmVkIiAhPT0gdS5zbGlkZXJUeXBlIHx8IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KSwgdS5zY3JvbGxlZmZlY3Qub24gJiYgIm9uIiA9PT0gdS5zY3JvbGxlZmZlY3Qub25fc2xpZGViZyAmJiAodS5hbGxzbG90aG9sZGVyID0gbmV3IEFycmF5LCB1LmFsbGxpLmZpbmQoIi5zbG90aG9sZGVyIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGpRdWVyeSh0aGlzKS53cmFwKCc8ZGl2IHN0eWxlPSJkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDowcHg7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJSIgY2xhc3M9InNsb3Rob2xkZXJfZmFkZW91dHdyYXAiPjwvZGl2PicpCiAgICAgICAgICAgIH0pLCB1LmFsbHNsb3Rob2xkZXIgPSB1LmMuZmluZCgiLnNsb3Rob2xkZXJfZmFkZW91dHdyYXAiKSkKICAgICAgICB9LAogICAgICAgIHJlbW92ZVNsb3RzID0gZnVuY3Rpb24oZSwgaSwgdCwgYSkgewogICAgICAgICAgICBpLnJlbW92ZVByZXBhcmUgPSBpLnJlbW92ZVByZXBhcmUgKyBhLCB0LmZpbmQoIi5zbG90LCAuc2xvdC1jaXJjbGUtd3JhcHBlciIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBqUXVlcnkodGhpcykucmVtb3ZlKCkKICAgICAgICAgICAgfSksIGkudHJhbnNpdGlvbiA9IDAsIGkucmVtb3ZlUHJlcGFyZSA9IDAKICAgICAgICB9LAogICAgICAgIGN1dFBhcmFtcyA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIGkgPSBlOwogICAgICAgICAgICByZXR1cm4gZSAhPSB1bmRlZmluZWQgJiYgMCA8IGUubGVuZ3RoICYmIChpID0gZS5zcGxpdCgiPyIpWzBdKSwgaQogICAgICAgIH0sCiAgICAgICAgcmVsYXRpdmVSZWRpciA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgcmV0dXJuIGxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoLyguKilcL1teL10qLywgIiQxLyIgKyBlKQogICAgICAgIH0sCiAgICAgICAgYWJzdG9yZWwgPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIHZhciB0ID0gZS5zcGxpdCgiLyIpLAogICAgICAgICAgICAgICAgYSA9IGkuc3BsaXQoIi8iKTsKICAgICAgICAgICAgdC5wb3AoKTsKICAgICAgICAgICAgZm9yICh2YXIgbiA9IDA7IG4gPCBhLmxlbmd0aDsgbisrKSAiLiIgIT0gYVtuXSAmJiAoIi4uIiA9PSBhW25dID8gdC5wb3AoKSA6IHQucHVzaChhW25dKSk7CiAgICAgICAgICAgIHJldHVybiB0LmpvaW4oIi8iKQogICAgICAgIH0sCiAgICAgICAgaW1nTG9hZGVkID0gZnVuY3Rpb24obCwgZSwgZCkgewogICAgICAgICAgICBlLnN5bmNsb2FkLS0sIGUubG9hZHF1ZXVlICYmIGpRdWVyeS5lYWNoKGUubG9hZHF1ZXVlLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGkuc3JjLnJlcGxhY2UoL1wuXC5cL1wuXC5cLy9naSwgIiIpLAogICAgICAgICAgICAgICAgICAgIGEgPSBzZWxmLmxvY2F0aW9uLmhyZWYsCiAgICAgICAgICAgICAgICAgICAgbiA9IGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbiwKICAgICAgICAgICAgICAgICAgICByID0gYS5zdWJzdHJpbmcoMCwgYS5sZW5ndGggLSAxKSArICIvIiArIHQsCiAgICAgICAgICAgICAgICAgICAgbyA9IG4gKyAiLyIgKyB0LAogICAgICAgICAgICAgICAgICAgIHMgPSBhYnN0b3JlbChzZWxmLmxvY2F0aW9uLmhyZWYsIGkuc3JjKTsKICAgICAgICAgICAgICAgIGEgPSBhLnN1YnN0cmluZygwLCBhLmxlbmd0aCAtIDEpICsgdCwgKGN1dFBhcmFtcyhuICs9IHQpID09PSBjdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGwuc3JjKSkgfHwgY3V0UGFyYW1zKGEpID09PSBjdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGwuc3JjKSkgfHwgY3V0UGFyYW1zKHMpID09PSBjdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGwuc3JjKSkgfHwgY3V0UGFyYW1zKG8pID09PSBjdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGwuc3JjKSkgfHwgY3V0UGFyYW1zKHIpID09PSBjdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGwuc3JjKSkgfHwgY3V0UGFyYW1zKGkuc3JjKSA9PT0gY3V0UGFyYW1zKGRlY29kZVVSSUNvbXBvbmVudChsLnNyYykpIHx8IGN1dFBhcmFtcyhpLnNyYykucmVwbGFjZSgvXi4qXC9cL1teXC9dKy8sICIiKSA9PT0gY3V0UGFyYW1zKGRlY29kZVVSSUNvbXBvbmVudChsLnNyYykpLnJlcGxhY2UoL14uKlwvXC9bXlwvXSsvLCAiIikgfHwgImZpbGU6Ly8iID09PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luICYmIGN1dFBhcmFtcyhsLnNyYykubWF0Y2gobmV3IFJlZ0V4cCh0KSkpICYmIChpLnByb2dyZXNzID0gZCwgaS53aWR0aCA9IGwud2lkdGgsIGkuaGVpZ2h0ID0gbC5oZWlnaHQpCiAgICAgICAgICAgIH0pLCBwcm9ncmVzc0ltYWdlTG9hZChlKQogICAgICAgIH0sCiAgICAgICAgcHJvZ3Jlc3NJbWFnZUxvYWQgPSBmdW5jdGlvbihhKSB7CiAgICAgICAgICAgIDMgIT0gYS5zeW5jbG9hZCAmJiBhLmxvYWRxdWV1ZSAmJiBqUXVlcnkuZWFjaChhLmxvYWRxdWV1ZSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgaWYgKGkucHJvZ3Jlc3MubWF0Y2goL3ByZXBhcmVkL2cpICYmIGEuc3luY2xvYWQgPD0gMykgewogICAgICAgICAgICAgICAgICAgIGlmIChhLnN5bmNsb2FkKyssICJpbWciID09IGkudHlwZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IG5ldyBJbWFnZTsKICAgICAgICAgICAgICAgICAgICAgICAgdC5vbmxvYWQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ0xvYWRlZCh0aGlzLCBhLCAibG9hZGVkIiksIGkuZXJyb3IgPSAhMQogICAgICAgICAgICAgICAgICAgICAgICB9LCB0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ0xvYWRlZCh0aGlzLCBhLCAiZmFpbGVkIiksIGkuZXJyb3IgPSAhMAogICAgICAgICAgICAgICAgICAgICAgICB9LCB0LnNyYyA9IGkuc3JjCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGpRdWVyeS5nZXQoaS5zcmMsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaS5pbm5lckhUTUwgPSAobmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKGUuZG9jdW1lbnRFbGVtZW50KSwgaS5wcm9ncmVzcyA9ICJsb2FkZWQiLCBhLnN5bmNsb2FkLS0sIHByb2dyZXNzSW1hZ2VMb2FkKGEpCiAgICAgICAgICAgICAgICAgICAgfSkuZmFpbChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaS5wcm9ncmVzcyA9ICJmYWlsZWQiLCBhLnN5bmNsb2FkLS0sIHByb2dyZXNzSW1hZ2VMb2FkKGEpCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgaS5wcm9ncmVzcyA9ICJpbmxvYWQiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBhZGRUb0xvYWRRdWV1ZSA9IGZ1bmN0aW9uKHQsIGUsIGksIGEsIG4pIHsKICAgICAgICAgICAgdmFyIHIgPSAhMTsKICAgICAgICAgICAgaWYgKGUubG9hZHF1ZXVlICYmIGpRdWVyeS5lYWNoKGUubG9hZHF1ZXVlLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgaS5zcmMgPT09IHQgJiYgKHIgPSAhMCkKICAgICAgICAgICAgICAgIH0pLCAhcikgewogICAgICAgICAgICAgICAgdmFyIG8gPSBuZXcgT2JqZWN0OwogICAgICAgICAgICAgICAgby5zcmMgPSB0LCBvLnN0YXJ0dG9sb2FkID0galF1ZXJ5Lm5vdygpLCBvLnR5cGUgPSBhIHx8ICJpbWciLCBvLnByaW8gPSBpLCBvLnByb2dyZXNzID0gInByZXBhcmVkIiwgby5zdGF0aWMgPSBuLCBlLmxvYWRxdWV1ZS5wdXNoKG8pCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGxvYWRJbWFnZXMgPSBmdW5jdGlvbihlLCBhLCBuLCByKSB7CiAgICAgICAgICAgIGUuZmluZCgiaW1nLC5kZWZhdWx0aW1nLCAudHAtc3ZnLWxheWVyIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgIGkgPSBlLmRhdGEoImxhenlsb2FkIikgIT09IHVuZGVmaW5lZCAmJiAidW5kZWZpbmVkIiAhPT0gZS5kYXRhKCJsYXp5bG9hZCIpID8gZS5kYXRhKCJsYXp5bG9hZCIpIDogZS5kYXRhKCJzdmdfc3JjIikgIT0gdW5kZWZpbmVkID8gZS5kYXRhKCJzdmdfc3JjIikgOiBlLmF0dHIoInNyYyIpLAogICAgICAgICAgICAgICAgICAgIHQgPSBlLmRhdGEoInN2Z19zcmMiKSAhPSB1bmRlZmluZWQgPyAic3ZnIiA6ICJpbWciOwogICAgICAgICAgICAgICAgZS5kYXRhKCJzdGFydC10by1sb2FkIiwgalF1ZXJ5Lm5vdygpKSwgYWRkVG9Mb2FkUXVldWUoaSwgYSwgbiwgdCwgcikKICAgICAgICAgICAgfSksIHByb2dyZXNzSW1hZ2VMb2FkKGEpCiAgICAgICAgfSwKICAgICAgICBnZXRMb2FkT2JqID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgYSA9IG5ldyBPYmplY3Q7CiAgICAgICAgICAgIHJldHVybiBlLmxvYWRxdWV1ZSAmJiBqUXVlcnkuZWFjaChlLmxvYWRxdWV1ZSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgaS5zcmMgPT0gdCAmJiAoYSA9IGkpCiAgICAgICAgICAgIH0pLCBhCiAgICAgICAgfSwKICAgICAgICB3YWl0Rm9yQ3VycmVudEltYWdlcyA9IGZ1bmN0aW9uKG8sIHMsIGUpIHsKICAgICAgICAgICAgdmFyIGwgPSAhMTsKICAgICAgICAgICAgby5maW5kKCJpbWcsLmRlZmF1bHRpbWcsIC50cC1zdmctbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgaSA9IGUuZGF0YSgibGF6eWxvYWQiKSAhPSB1bmRlZmluZWQgPyBlLmRhdGEoImxhenlsb2FkIikgOiBlLmRhdGEoInN2Z19zcmMiKSAhPSB1bmRlZmluZWQgPyBlLmRhdGEoInN2Z19zcmMiKSA6IGUuYXR0cigic3JjIiksCiAgICAgICAgICAgICAgICAgICAgdCA9IGdldExvYWRPYmoocywgaSk7CiAgICAgICAgICAgICAgICBpZiAoZS5kYXRhKCJsb2FkZWQiKSA9PT0gdW5kZWZpbmVkICYmIHQgIT09IHVuZGVmaW5lZCAmJiB0LnByb2dyZXNzICYmIHQucHJvZ3Jlc3MubWF0Y2goL2xvYWRlZC9nKSkgewogICAgICAgICAgICAgICAgICAgIGlmIChlLmF0dHIoInNyYyIsIHQuc3JjKSwgImltZyIgPT0gdC50eXBlKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoZS5oYXNDbGFzcygiZGVmYXVsdGltZyIpKSBfUi5pc0lFKDgpID8gZGVmaW1nLmF0dHIoInNyYyIsIHQuc3JjKSA6IC0xID09IHQuc3JjLmluZGV4T2YoImltYWdlcy90cmFuc3BhcmVudC5wbmciKSAmJiAtMSA9PSB0LnNyYy5pbmRleE9mKCJhc3NldHMvdHJhbnNwYXJlbnQucG5nIikgfHwgZS5kYXRhKCJiZ2NvbG9yIikgPT09IHVuZGVmaW5lZCA/IGUuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogJ3VybCgiJyArIHQuc3JjICsgJyIpJwogICAgICAgICAgICAgICAgICAgICAgICB9KSA6IGUuZGF0YSgiYmdjb2xvciIpICE9PSB1bmRlZmluZWQgJiYgZS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZS5kYXRhKCJiZ2NvbG9yIikKICAgICAgICAgICAgICAgICAgICAgICAgfSksIG8uZGF0YSgib3dpZHRoIiwgdC53aWR0aCksIG8uZGF0YSgib2hlaWdodCIsIHQuaGVpZ2h0KSwgby5maW5kKCIuc2xvdGhvbGRlciIpLmRhdGEoIm93aWR0aCIsIHQud2lkdGgpLCBvLmZpbmQoIi5zbG90aG9sZGVyIikuZGF0YSgib2hlaWdodCIsIHQuaGVpZ2h0KTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IGUuZGF0YSgid3ciKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gZS5kYXRhKCJoaCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5kYXRhKCJvd2lkdGgiLCB0LndpZHRoKSwgZS5kYXRhKCJvaGVpZ2h0IiwgdC5oZWlnaHQpLCBhID0gYSA9PSB1bmRlZmluZWQgfHwgImF1dG8iID09IGEgfHwgIiIgPT0gYSA/IHQud2lkdGggOiBhLCBuID0gbiA9PSB1bmRlZmluZWQgfHwgImF1dG8iID09IG4gfHwgIiIgPT0gbiA/IHQuaGVpZ2h0IDogbiwgIWpRdWVyeS5pc051bWVyaWMoYSkgJiYgMCA8IGEuaW5kZXhPZigiJSIpICYmIChuID0gYSksIGUuZGF0YSgid3ciLCBhKSwgZS5kYXRhKCJoaCIsIG4pCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlICJzdmciID09IHQudHlwZSAmJiAibG9hZGVkIiA9PSB0LnByb2dyZXNzICYmIChlLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtc3ZnLWlubmVyY29udGFpbmVyIj48L2Rpdj4nKSwgZS5maW5kKCIudHAtc3ZnLWlubmVyY29udGFpbmVyIikuYXBwZW5kKHQuaW5uZXJIVE1MKSk7CiAgICAgICAgICAgICAgICAgICAgZS5kYXRhKCJsb2FkZWQiLCAhMCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICh0ICYmIHQucHJvZ3Jlc3MgJiYgdC5wcm9ncmVzcy5tYXRjaCgvaW5wcm9ncmVzc3xpbmxvYWR8cHJlcGFyZWQvZykgJiYgKCF0LmVycm9yICYmIGpRdWVyeS5ub3coKSAtIGUuZGF0YSgic3RhcnQtdG8tbG9hZCIpIDwgNWUzID8gbCA9ICEwIDogKHQucHJvZ3Jlc3MgPSAiZmFpbGVkIiwgdC5yZXBvcnRlZF9pbWcgfHwgKHQucmVwb3J0ZWRfaW1nID0gITAsIGNvbnNvbGUud2FybihpICsgIiAgQ291bGQgbm90IGJlIGxvYWRlZCAhIikpKSksIDEgPT0gcy55b3V0dWJlYXBpbmVlZGVkICYmICghd2luZG93LllUIHx8IFlULlBsYXllciA9PSB1bmRlZmluZWQpICYmIChsID0gITAsIDVlMyA8IGpRdWVyeS5ub3coKSAtIHMueW91dHViZXN0YXJ0dGltZSAmJiAxICE9IHMueW91dHViZXdhcm5pbmcpKSB7CiAgICAgICAgICAgICAgICAgICAgcy55b3V0dWJld2FybmluZyA9ICEwOwogICAgICAgICAgICAgICAgICAgIHZhciByID0gIllvdVR1YmUgQXBpIENvdWxkIG5vdCBiZSBsb2FkZWQgISI7CiAgICAgICAgICAgICAgICAgICAgImh0dHBzOiIgPT09IGxvY2F0aW9uLnByb3RvY29sICYmIChyICs9ICIgUGxlYXNlIENoZWNrIGFuZCBSZW5ldyBTU0wgQ2VydGlmaWNhdGUgISIpLCBjb25zb2xlLmVycm9yKHIpLCBzLmMuYXBwZW5kKCc8ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwMCU7Y29sb3I6I2U3NGMzYzsgIGZvbnQtc2l6ZToxNnB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgcGFkZGluZzoxNXB4O2JhY2tncm91bmQ6IzAwMDsgZGlzcGxheTpibG9jazsiPjxzdHJvbmc+JyArIHIgKyAiPC9zdHJvbmc+PC9kaXY+IikKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDEgPT0gcy52aW1lb2FwaW5lZWRlZCAmJiAhd2luZG93LlZpbWVvICYmIChsID0gITAsIDVlMyA8IGpRdWVyeS5ub3coKSAtIHMudmltZW9zdGFydHRpbWUgJiYgMSAhPSBzLnZpbWVvd2FybmluZykgJiYgKHMudmltZW93YXJuaW5nID0gITAsIHIgPSAiVmltZW8gQXBpIENvdWxkIG5vdCBiZSBsb2FkZWQgISIsICJodHRwczoiID09PSBsb2NhdGlvbi5wcm90b2NvbCAmJiAociArPSAiIFBsZWFzZSBDaGVjayBhbmQgUmVuZXcgU1NMIENlcnRpZmljYXRlICEiKSwgY29uc29sZS5lcnJvcihyKSwgcy5jLmFwcGVuZCgnPGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMDAlO2NvbG9yOiNlNzRjM2M7ICBmb250LXNpemU6MTZweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmc6MTVweDtiYWNrZ3JvdW5kOiMwMDA7IGRpc3BsYXk6YmxvY2s7Ij48c3Ryb25nPicgKyByICsgIjwvc3Ryb25nPjwvZGl2PiIpKQogICAgICAgICAgICB9KSwgIV9JU00gJiYgcy5hdWRpb3F1ZXVlICYmIDAgPCBzLmF1ZGlvcXVldWUubGVuZ3RoICYmIGpRdWVyeS5lYWNoKHMuYXVkaW9xdWV1ZSwgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgaS5zdGF0dXMgJiYgInByZXBhcmVkIiA9PT0gaS5zdGF0dXMgJiYgalF1ZXJ5Lm5vdygpIC0gaS5zdGFydCA8IGkud2FpdHRpbWUgJiYgKGwgPSAhMCkKICAgICAgICAgICAgfSksIGpRdWVyeS5lYWNoKHMubG9hZHF1ZXVlLCBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICAgICAhMCAhPT0gaS5zdGF0aWMgfHwgImxvYWRlZCIgPT0gaS5wcm9ncmVzcyAmJiAiZmFpbGVkIiAhPT0gaS5wcm9ncmVzcyB8fCAoImZhaWxlZCIgPT0gaS5wcm9ncmVzcyA/IGkucmVwb3J0ZWQgfHwgKGkucmVwb3J0ZWQgPSAhMCwgY29uc29sZS53YXJuKCJTdGF0aWMgSW1hZ2UgIiArIGkuc3JjICsgIiAgQ291bGQgbm90IGJlIGxvYWRlZCBpbiB0aW1lLiBFcnJvciBFeGlzdHM6IiArIGkuZXJyb3IpKSA6ICFpLmVycm9yICYmIGpRdWVyeS5ub3coKSAtIGkuc3RhcnR0b2xvYWQgPCA1ZTMgPyBsID0gITAgOiBpLnJlcG9ydGVkIHx8IChpLnJlcG9ydGVkID0gITAsIGNvbnNvbGUud2FybigiU3RhdGljIEltYWdlICIgKyBpLnNyYyArICIgIENvdWxkIG5vdCBiZSBsb2FkZWQgd2l0aGluIDVzISBFcnJvciBFeGlzdHM6IiArIGkuZXJyb3IpKSkKICAgICAgICAgICAgfSksIGwgPyBwdW5jaGdzLlR3ZWVuTGl0ZS5kZWxheWVkQ2FsbCguMTgsIHdhaXRGb3JDdXJyZW50SW1hZ2VzLCBbbywgcywgZV0pIDogcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoLjE4LCBlKQogICAgICAgIH0sCiAgICAgICAgc3dhcFNsaWRlID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgaSA9IGVbMF0ub3B0OwogICAgICAgICAgICBpZiAoY2xlYXJUaW1lb3V0KGkud2FpdFdpdGhTd2FwU2xpZGUpLCAwIDwgZS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLmxlbmd0aCkgcmV0dXJuIGkud2FpdFdpdGhTd2FwU2xpZGUgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgc3dhcFNsaWRlKGUpCiAgICAgICAgICAgIH0sIDE1MCksICExOwogICAgICAgICAgICB2YXIgdCA9IGUuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLAogICAgICAgICAgICAgICAgYSA9IGUuZmluZCgiLm5leHQtcmV2c2xpZGUiKSwKICAgICAgICAgICAgICAgIG4gPSBhLmZpbmQoIi5kZWZhdWx0aW1nIik7CiAgICAgICAgICAgIGlmICgiY2Fyb3VzZWwiICE9PSBpLnNsaWRlclR5cGUgfHwgaS5jYXJvdXNlbC5mYWRlaW4gfHwgKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGkudWwsIDEsIHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxCiAgICAgICAgICAgICAgICB9KSwgaS5jYXJvdXNlbC5mYWRlaW4gPSAhMCksIGEuaW5kZXgoKSA9PT0gdC5pbmRleCgpICYmICEwICE9PSBpLm9ubHlQcmVwYXJlZFNsaWRlKSByZXR1cm4gYS5yZW1vdmVDbGFzcygibmV4dC1yZXZzbGlkZSIpLCAhMTsKICAgICAgICAgICAgITAgPT09IGkub25seVByZXBhcmVkU2xpZGUgJiYgKGkub25seVByZXBhcmVkU2xpZGUgPSAhMSwgalF1ZXJ5KGkubGlbMF0pLmFkZENsYXNzKCJwcm9jZXNzaW5nLXJldnNsaWRlIikpLCBhLnJlbW92ZUNsYXNzKCJuZXh0LXJldnNsaWRlIikuYWRkQ2xhc3MoInByb2Nlc3NpbmctcmV2c2xpZGUiKSwgLTEgPT09IGEuaW5kZXgoKSAmJiAiY2Fyb3VzZWwiID09PSBpLnNsaWRlclR5cGUgJiYgKGEgPSBqUXVlcnkoaS5saVswXSkpLCBhLmRhdGEoInNsaWRlX29uX2ZvY3VzX2Ftb3VudCIsIGEuZGF0YSgic2xpZGVfb25fZm9jdXNfYW1vdW50IikgKyAxIHx8IDEpLCAib24iID09IGkuc3RvcExvb3AgJiYgYS5pbmRleCgpID09IGkubGFzdHNsaWRldG9zaG93IC0gMSAmJiAoZS5maW5kKCIudHAtYmFubmVydGltZXIiKS5jc3MoewogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIKICAgICAgICAgICAgfSksIGUudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnN0b3AiKSwgaS5ub2xvb3Bhbnltb3JlID0gMSksIGEuaW5kZXgoKSA9PT0gaS5zbGlkZWFtb3VudCAtIDEgJiYgKGkubG9vcHRvZ28gPSBpLmxvb3B0b2dvIC0gMSwgaS5sb29wdG9nbyA8PSAwICYmIChpLnN0b3BMb29wID0gIm9uIikpLCBpLnRvbnBhdXNlID0gITAsIGUudHJpZ2dlcigic3RvcHRpbWVyIiksIGkuY2QgPSAwLCAib2ZmIiA9PT0gaS5zcGlubmVyICYmIChpLmxvYWRlciAhPT0gdW5kZWZpbmVkID8gaS5sb2FkZXIuY3NzKHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJub25lIgogICAgICAgICAgICB9KSA6IGkubG9hZGVydGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5sb2FkZXIgIT09IHVuZGVmaW5lZCAmJiBpLmxvYWRlci5jc3MoewogICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIDUwKSksIGxvYWRJbWFnZXMoYSwgaSwgMSksIF9SLnByZUxvYWRBdWRpbyAmJiBfUi5wcmVMb2FkQXVkaW8oYSwgaSwgMSksIHdhaXRGb3JDdXJyZW50SW1hZ2VzKGEsIGksIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgYS5maW5kKCIucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgZS5oYXNDbGFzcygiSGFzTGlzdGVuZXIiKSB8fCAoZS5kYXRhKCJiZ3ZpZGVvIiwgMSksIF9SLm1hbmFnZVZpZGVvTGF5ZXIgJiYgX1IubWFuYWdlVmlkZW9MYXllcihlLCBpKSksIDAgPT0gZS5maW5kKCIucnMtZnVsbHZpZGVvLWNvdmVyIikubGVuZ3RoICYmIGUuYXBwZW5kKCc8ZGl2IGNsYXNzPSJycy1mdWxsdmlkZW8tY292ZXIiPjwvZGl2PicpCiAgICAgICAgICAgICAgICB9KSwgc3dhcFNsaWRlUHJvZ3Jlc3MobiwgZSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHN3YXBTbGlkZVByb2dyZXNzID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICB2YXIgdCA9IGkuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLAogICAgICAgICAgICAgICAgYSA9IGkuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKSwKICAgICAgICAgICAgICAgIG4gPSB0LmZpbmQoIi5zbG90aG9sZGVyIiksCiAgICAgICAgICAgICAgICByID0gYS5maW5kKCIuc2xvdGhvbGRlciIpLAogICAgICAgICAgICAgICAgbyA9IGlbMF0ub3B0OwogICAgICAgICAgICBvLnRvbnBhdXNlID0gITEsIG8uY2QgPSAwLCBjbGVhclRpbWVvdXQoby5sb2FkZXJ0aW1lciksIG8ubG9hZGVyICE9PSB1bmRlZmluZWQgJiYgby5sb2FkZXIuY3NzKHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJub25lIgogICAgICAgICAgICB9KSwgX1Iuc2V0U2l6ZShvKSwgX1Iuc2xvdFNpemUoZSwgbyksIF9SLm1hbmFnZU5hdmlnYXRpb24gJiYgX1IubWFuYWdlTmF2aWdhdGlvbihvKTsKICAgICAgICAgICAgdmFyIHMgPSB7fTsKICAgICAgICAgICAgcy5uZXh0c2xpZGUgPSBhLCBzLmN1cnJlbnRzbGlkZSA9IHQsIGkudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbmJlZm9yZXN3YXAiLCBzKSwgby50cmFuc2l0aW9uID0gMSwgby52aWRlb3BsYXlpbmcgPSAhMSwgYS5kYXRhKCJkZWxheSIpICE9IHVuZGVmaW5lZCA/IChvLmNkID0gMCwgby5kZWxheSA9IGEuZGF0YSgiZGVsYXkiKSkgOiBvLmRlbGF5ID0gby5vcmlnY2QsICJ0cnVlIiA9PSBhLmRhdGEoInNzb3AiKSB8fCAhMCA9PT0gYS5kYXRhKCJzc29wIikgPyBvLnNzb3AgPSAhMCA6IG8uc3NvcCA9ICExLCBpLnRyaWdnZXIoIm51bGx0aW1lciIpOwogICAgICAgICAgICB2YXIgbCwgZCA9IHQuaW5kZXgoKSwKICAgICAgICAgICAgICAgIGMgPSBhLmluZGV4KCk7CiAgICAgICAgICAgIGlmIChvLnNkaXIgPSBjIDwgZCA/IDEgOiAwLCAiYXJyb3ciID09IG8uc2NfaW5kaWNhdG9yICYmICgwID09IGQgJiYgYyA9PSBvLnNsaWRlYW1vdW50IC0gMSAmJiAoby5zZGlyID0gMSksIGQgPT0gby5zbGlkZWFtb3VudCAtIDEgJiYgMCA9PSBjICYmIChvLnNkaXIgPSAwKSksIG8ubHNkaXIgPSBvLmxzZGlyID09PSB1bmRlZmluZWQgPyBvLnNkaXIgOiBvLmxzZGlyLCBvLmRpcmMgPSBvLmxzZGlyICE9IG8uc2Rpciwgby5sc2RpciA9IG8uc2RpciwgdC5pbmRleCgpICE9IGEuaW5kZXgoKSAmJiAxICE9IG8uZmlyc3RzdGFydCAmJiBfUi5yZW1vdmVUaGVDYXB0aW9ucyAmJiBfUi5yZW1vdmVUaGVDYXB0aW9ucyh0LCBvKSwgYS5oYXNDbGFzcygicnMtcGF1c2UtdGltZXItb25jZSIpIHx8IGEuaGFzQ2xhc3MoInJzLXBhdXNlLXRpbWVyLWFsd2F5cyIpID8gby52aWRlb3BsYXlpbmcgPSAhMCA6IGkudHJpZ2dlcigicmVzdGFydHRpbWVyIiksIGEucmVtb3ZlQ2xhc3MoInJzLXBhdXNlLXRpbWVyLW9uY2UiKSwgby5jdXJyZW50U2xpZGUgPSB0LmluZGV4KCksIG8ubmV4dFNsaWRlID0gYS5pbmRleCgpLCAiY2Fyb3VzZWwiID09IG8uc2xpZGVyVHlwZSkgbCA9IG5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSwgX1IucHJlcGFyZUNhcm91c2VsKG8sIGwpLCBsZXRJdEZyZWUoaSwgciwgbiwgYSwgdCwgbCksIG8udHJhbnNpdGlvbiA9IDAsIG8uZmlyc3RzdGFydCA9IDA7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgKGwgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGUoewogICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBsZXRJdEZyZWUoaSwgciwgbiwgYSwgdCwgbCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSkuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChyLmZpbmQoIi5kZWZhdWx0aW1nIiksIHsKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwCiAgICAgICAgICAgICAgICB9KSksIGwucGF1c2UoKSwgX1IuYW5pbWF0ZVRoZUNhcHRpb25zICYmIF9SLmFuaW1hdGVUaGVDYXB0aW9ucyh7CiAgICAgICAgICAgICAgICAgICAgc2xpZGU6IGEsCiAgICAgICAgICAgICAgICAgICAgb3B0OiBvLAogICAgICAgICAgICAgICAgICAgIHByZXNldDogITAKICAgICAgICAgICAgICAgIH0pLCAxID09IG8uZmlyc3RzdGFydCAmJiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAKICAgICAgICAgICAgICAgIH0pLCBvLmZpcnN0c3RhcnQgPSAwKSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDE4CiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgekluZGV4OiAyMAogICAgICAgICAgICAgICAgfSksICJwcmVwYXJlZCIgPT0gYS5kYXRhKCJkaWZmZXJlbnRpc3NwbGF5ZWQiKSAmJiAoYS5kYXRhKCJkaWZmZXJlbnRpc3NwbGF5ZWQiLCAiZG9uZSIpLCBhLmRhdGEoInRyYW5zaXRpb24iLCBhLmRhdGEoInNhdmVkdHJhbnNpdGlvbiIpKSwgYS5kYXRhKCJzbG90YW1vdW50IiwgYS5kYXRhKCJzYXZlZHNsb3RhbW91bnQiKSksIGEuZGF0YSgibWFzdGVyc3BlZWQiLCBhLmRhdGEoInNhdmVkbWFzdGVyc3BlZWQiKSkpLCBhLmRhdGEoImZzdHJhbnNpdGlvbiIpICE9IHVuZGVmaW5lZCAmJiAiZG9uZSIgIT0gYS5kYXRhKCJkaWZmZXJlbnRpc3NwbGF5ZWQiKSAmJiAoYS5kYXRhKCJzYXZlZHRyYW5zaXRpb24iLCBhLmRhdGEoInRyYW5zaXRpb24iKSksIGEuZGF0YSgic2F2ZWRzbG90YW1vdW50IiwgYS5kYXRhKCJzbG90YW1vdW50IikpLCBhLmRhdGEoInNhdmVkbWFzdGVyc3BlZWQiLCBhLmRhdGEoIm1hc3RlcnNwZWVkIikpLCBhLmRhdGEoInRyYW5zaXRpb24iLCBhLmRhdGEoImZzdHJhbnNpdGlvbiIpKSwgYS5kYXRhKCJzbG90YW1vdW50IiwgYS5kYXRhKCJmc3Nsb3RhbW91bnQiKSksIGEuZGF0YSgibWFzdGVyc3BlZWQiLCBhLmRhdGEoImZzbWFzdGVyc3BlZWQiKSksIGEuZGF0YSgiZGlmZmVyZW50aXNzcGxheWVkIiwgInByZXBhcmVkIikpLCBhLmRhdGEoInRyYW5zaXRpb24iKSA9PSB1bmRlZmluZWQgJiYgYS5kYXRhKCJ0cmFuc2l0aW9uIiwgInJhbmRvbSIpOwogICAgICAgICAgICAgICAgdmFyIHUgPSBhLmRhdGEoInRyYW5zaXRpb24iKSAhPT0gdW5kZWZpbmVkID8gYS5kYXRhKCJ0cmFuc2l0aW9uIikuc3BsaXQoIiwiKSA6ICJmYWRlIiwKICAgICAgICAgICAgICAgICAgICBwID0gYS5kYXRhKCJuZXh0dHJhbnNpZCIpID09IHVuZGVmaW5lZCA/IC0xIDogYS5kYXRhKCJuZXh0dHJhbnNpZCIpOwogICAgICAgICAgICAgICAgIm9uIiA9PSBhLmRhdGEoInJhbmRvbXRyYW5zaXRpb24iKSA/IHAgPSBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiB1Lmxlbmd0aCkgOiBwICs9IDEsIHAgPT0gdS5sZW5ndGggJiYgKHAgPSAwKSwgYS5kYXRhKCJuZXh0dHJhbnNpZCIsIHApOwogICAgICAgICAgICAgICAgdmFyIGYgPSB1W3BdOwogICAgICAgICAgICAgICAgby5pZSAmJiAoImJveGZhZGUiID09IGYgJiYgKGYgPSAiYm94c2xpZGUiKSwgInNsb3RmYWRlLXZlcnRpY2FsIiA9PSBmICYmIChmID0gInNsb3R6b29tLXZlcnRpY2FsIiksICJzbG90ZmFkZS1ob3Jpem9udGFsIiA9PSBmICYmIChmID0gInNsb3R6b29tLWhvcml6b250YWwiKSksIF9SLmlzSUUoOCkgJiYgKGYgPSAxMSksIGwgPSBfUi5hbmltYXRlU2xpZGUoMCwgZiwgaSwgYSwgdCwgciwgbiwgbCksICJvbiIgPT0gci5kYXRhKCJrZW5idXJucyIpICYmIChfUi5zdGFydEtlbkJ1cm4ociwgbyksIGwuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChyLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgICAgICB9KSkpLCBsLnBhdXNlKCkKICAgICAgICAgICAgfQogICAgICAgICAgICBfUi5zY3JvbGxIYW5kbGluZyAmJiAoX1Iuc2Nyb2xsSGFuZGxpbmcobywgITAsIDApLCBsLmV2ZW50Q2FsbGJhY2soIm9uVXBkYXRlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBfUi5zY3JvbGxIYW5kbGluZyhvLCAhMCwgMCkKICAgICAgICAgICAgfSkpLCAib2ZmIiAhPSBvLnBhcmFsbGF4LnR5cGUgJiYgby5wYXJhbGxheC5maXJzdGdvID09IHVuZGVmaW5lZCAmJiBfUi5zY3JvbGxIYW5kbGluZyAmJiAoby5wYXJhbGxheC5maXJzdGdvID0gITAsIG8ubGFzdHNjcm9sbHRvcCA9IC05OTksIF9SLnNjcm9sbEhhbmRsaW5nKG8sICEwLCAwKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG8ubGFzdHNjcm9sbHRvcCA9IC05OTksIF9SLnNjcm9sbEhhbmRsaW5nKG8sICEwLCAwKQogICAgICAgICAgICB9LCAyMTApLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgby5sYXN0c2Nyb2xsdG9wID0gLTk5OSwgX1Iuc2Nyb2xsSGFuZGxpbmcobywgITAsIDApCiAgICAgICAgICAgIH0sIDQyMCkpLCBfUi5hbmltYXRlVGhlQ2FwdGlvbnMgPyAiY2Fyb3VzZWwiID09PSBvLnNsaWRlclR5cGUgJiYgIm9uIiA9PT0gby5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZSA/IChqUXVlcnkuZWFjaChvLmxpLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBvLmNhcm91c2VsLmFsbExheWVyc1N0YXJ0ZWQgPyBfUi5hbmltYXRlVGhlQ2FwdGlvbnMoewogICAgICAgICAgICAgICAgICAgIHNsaWRlOiBqUXVlcnkoby5saVtlXSksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBvLAogICAgICAgICAgICAgICAgICAgIHJlY2FsbDogITAKICAgICAgICAgICAgICAgIH0pIDogby5saVtlXSA9PT0gYSA/IF9SLmFuaW1hdGVUaGVDYXB0aW9ucyh7CiAgICAgICAgICAgICAgICAgICAgc2xpZGU6IGpRdWVyeShvLmxpW2VdKSwKICAgICAgICAgICAgICAgICAgICBtYWludGltZWxpbmU6IGwsCiAgICAgICAgICAgICAgICAgICAgb3B0OiBvLAogICAgICAgICAgICAgICAgICAgIHN0YXJ0c2xpZGVhbmltYXQ6IDAKICAgICAgICAgICAgICAgIH0pIDogX1IuYW5pbWF0ZVRoZUNhcHRpb25zKHsKICAgICAgICAgICAgICAgICAgICBzbGlkZTogalF1ZXJ5KG8ubGlbZV0pLAogICAgICAgICAgICAgICAgICAgIG9wdDogbywKICAgICAgICAgICAgICAgICAgICBzdGFydHNsaWRlYW5pbWF0OiAwCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KSwgby5jYXJvdXNlbC5hbGxMYXllcnNTdGFydGVkID0gITApIDogX1IuYW5pbWF0ZVRoZUNhcHRpb25zKHsKICAgICAgICAgICAgICAgIHNsaWRlOiBhLAogICAgICAgICAgICAgICAgb3B0OiBvLAogICAgICAgICAgICAgICAgbWFpbnRpbWVsaW5lOiBsLAogICAgICAgICAgICAgICAgc3RhcnRzbGlkZWFuaW1hdDogMAogICAgICAgICAgICB9KSA6IGwgIT0gdW5kZWZpbmVkICYmIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBsLnJlc3VtZSgpCiAgICAgICAgICAgIH0sIDMwKSwgcHVuY2hncy5Ud2VlbkxpdGUudG8oYSwgLjAwMSwgewogICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBsZXRJdEZyZWUgPSBmdW5jdGlvbihlLCBpLCB0LCBhLCBuLCByKSB7CiAgICAgICAgICAgIHZhciBvID0gZVswXS5vcHQ7CiAgICAgICAgICAgICJjYXJvdXNlbCIgPT09IG8uc2xpZGVyVHlwZSB8fCAoby5yZW1vdmVQcmVwYXJlID0gMCwgcHVuY2hncy5Ud2VlbkxpdGUudG8oaS5maW5kKCIuZGVmYXVsdGltZyIpLCAuMDAxLCB7CiAgICAgICAgICAgICAgICB6SW5kZXg6IDIwLAogICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlU2xvdHMoZSwgbywgYSwgMSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIGEuaW5kZXgoKSAhPSBuLmluZGV4KCkgJiYgcHVuY2hncy5Ud2VlbkxpdGUudG8obiwgLjIsIHsKICAgICAgICAgICAgICAgIHpJbmRleDogMTgsCiAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZW1vdmVTbG90cyhlLCBvLCBuLCAxKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSksIGUuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUtcmV2c2xpZGUiKSwgZS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLnJlbW92ZUNsYXNzKCJwcm9jZXNzaW5nLXJldnNsaWRlIikuYWRkQ2xhc3MoImFjdGl2ZS1yZXZzbGlkZSIpLCBvLmFjdCA9IGEuaW5kZXgoKSwgby5jLmF0dHIoImRhdGEtc2xpZGVhY3RpdmUiLCBlLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKS5kYXRhKCJpbmRleCIpKSwgInNjcm9sbCIgIT0gby5wYXJhbGxheC50eXBlICYmICJzY3JvbGwrbW91c2UiICE9IG8ucGFyYWxsYXgudHlwZSAmJiAibW91c2Urc2Nyb2xsIiAhPSBvLnBhcmFsbGF4LnR5cGUgfHwgKG8ubGFzdHNjcm9sbHRvcCA9IC05OTksIF9SLnNjcm9sbEhhbmRsaW5nKG8pKSwgci5jbGVhcigpLCB0LmRhdGEoImtidGwiKSAhPSB1bmRlZmluZWQgJiYgKHQuZGF0YSgia2J0bCIpLnJldmVyc2UoKSwgdC5kYXRhKCJrYnRsIikudGltZVNjYWxlKDI1KSksICJvbiIgPT0gaS5kYXRhKCJrZW5idXJucyIpICYmIChpLmRhdGEoImtidGwiKSAhPSB1bmRlZmluZWQgPyAoaS5kYXRhKCJrYnRsIikudGltZVNjYWxlKDEpLCBpLmRhdGEoImtidGwiKS5wbGF5KCkpIDogX1Iuc3RhcnRLZW5CdXJuKGksIG8pKSwgYS5maW5kKCIucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgaWYgKF9JU00gJiYgIW8uZmFsbGJhY2tzLmFsbG93SFRNTDVBdXRvUGxheU9uQW5kcm9pZCkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgdmFyIGkgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICBfUi5yZXNldFZpZGVvKGksIG8sICExLCAhMCksIHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhpLCAxLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dCwKICAgICAgICAgICAgICAgICAgICBkZWxheTogLjIsCiAgICAgICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIF9SLmFuaW1jb21wbGV0ZWQgJiYgX1IuYW5pbWNvbXBsZXRlZChpLCBvKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pLCBuLmZpbmQoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBpZiAoX0lTTSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgdmFyIGkgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICBfUi5zdG9wVmlkZW8gJiYgKF9SLnJlc2V0VmlkZW8oaSwgbyksIF9SLnN0b3BWaWRlbyhpLCBvKSksIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGksIDEsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0LAogICAgICAgICAgICAgICAgICAgIGRlbGF5OiAuMgogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciBzID0ge307CiAgICAgICAgICAgIGlmIChzLnNsaWRlSW5kZXggPSBhLmluZGV4KCkgKyAxLCBzLnNsaWRlTElJbmRleCA9IGEuaW5kZXgoKSwgcy5zbGlkZSA9IGEsIHMuY3VycmVudHNsaWRlID0gYSwgcy5wcmV2c2xpZGUgPSBuLCBvLmxhc3Rfc2hvd25fc2xpZGUgPSBuLmluZGV4KCksIGUudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbmNoYW5nZSIsIHMpLCBlLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25hZnRlcnN3YXAiLCBzKSwgby5zdGFydFdpdGhTbGlkZSAhPT0gdW5kZWZpbmVkICYmICJkb25lIiAhPT0gby5zdGFydFdpdGhTbGlkZSAmJiAiY2Fyb3VzZWwiID09PSBvLnNsaWRlclR5cGUpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGwgPSBvLnN0YXJ0V2l0aFNsaWRlLCBkID0gMDsgZCA8PSBvLmxpLmxlbmd0aCAtIDE7IGQrKykgalF1ZXJ5KG8ubGlbZF0pLmRhdGEoIm9yaWdpbmFsaW5kZXgiKSA9PT0gby5zdGFydFdpdGhTbGlkZSAmJiAobCA9IGQpOwogICAgICAgICAgICAgICAgMCAhPT0gbCAmJiBfUi5jYWxsaW5nTmV3U2xpZGUoby5jLCBsKSwgby5zdGFydFdpdGhTbGlkZSA9ICJkb25lIgogICAgICAgICAgICB9CiAgICAgICAgICAgIG8uZHVyaW5nc2xpZGVjaGFuZ2UgPSAhMTsKICAgICAgICAgICAgdmFyIGMgPSBuLmRhdGEoInNsaWRlX29uX2ZvY3VzX2Ftb3VudCIpLAogICAgICAgICAgICAgICAgdSA9IG4uZGF0YSgiaGlkZWFmdGVybG9vcCIpOwogICAgICAgICAgICAwICE9IHUgJiYgdSA8PSBjICYmIG8uYy5yZXZyZW1vdmVzbGlkZShuLmluZGV4KCkpOwogICAgICAgICAgICB2YXIgcCA9IC0xID09PSBvLm5leHRTbGlkZSB8fCBvLm5leHRTbGlkZSA9PT0gdW5kZWZpbmVkID8gMCA6IG8ubmV4dFNsaWRlOwogICAgICAgICAgICBvLnJvd3pvbmVzICE9IHVuZGVmaW5lZCAmJiAocCA9IHAgPiBvLnJvd3pvbmVzLmxlbmd0aCA/IG8ucm93em9uZXMubGVuZ3RoIDogcCksIG8ucm93em9uZXMgIT0gdW5kZWZpbmVkICYmIDAgPCBvLnJvd3pvbmVzLmxlbmd0aCAmJiBvLnJvd3pvbmVzW3BdICE9IHVuZGVmaW5lZCAmJiAwIDw9IHAgJiYgcCA8PSBvLnJvd3pvbmVzLmxlbmd0aCAmJiAwIDwgby5yb3d6b25lc1twXS5sZW5ndGggJiYgX1Iuc2V0U2l6ZShvKQogICAgICAgIH0sCiAgICAgICAgcmVtb3ZlQWxsTGlzdGVuZXJzID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICBlLmNoaWxkcmVuKCkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5KHRoaXMpLmRpZSgiY2xpY2siKQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5KHRoaXMpLmRpZSgibW91c2VlbnRlciIpCiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICBqUXVlcnkodGhpcykuZGllKCJtb3VzZWxlYXZlIikKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGpRdWVyeSh0aGlzKS51bmJpbmQoImhvdmVyIikKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgZS5kaWUoImNsaWNrIiwgIm1vdXNlZW50ZXIiLCAibW91c2VsZWF2ZSIpCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaS5jZGludCksIGUgPSBudWxsCiAgICAgICAgfSwKICAgICAgICBjb3VudERvd24gPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIGkuY2QgPSAwLCBpLmxvb3AgPSAwLCBpLnN0b3BBZnRlckxvb3BzICE9IHVuZGVmaW5lZCAmJiAtMSA8IGkuc3RvcEFmdGVyTG9vcHMgPyBpLmxvb3B0b2dvID0gaS5zdG9wQWZ0ZXJMb29wcyA6IGkubG9vcHRvZ28gPSA5OTk5OTk5LCBpLnN0b3BBdFNsaWRlICE9IHVuZGVmaW5lZCAmJiAtMSA8IGkuc3RvcEF0U2xpZGUgPyBpLmxhc3RzbGlkZXRvc2hvdyA9IGkuc3RvcEF0U2xpZGUgOiBpLmxhc3RzbGlkZXRvc2hvdyA9IDk5OSwgaS5zdG9wTG9vcCA9ICJvZmYiLCAwID09IGkubG9vcHRvZ28gJiYgKGkuc3RvcExvb3AgPSAib24iKTsKICAgICAgICAgICAgdmFyIHQgPSBlLmZpbmQoIi50cC1iYW5uZXJ0aW1lciIpOwogICAgICAgICAgICBlLm9uKCJzdG9wdGltZXIiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLmZpbmQoIi50cC1iYW5uZXJ0aW1lciIpOwogICAgICAgICAgICAgICAgZVswXS50d2Vlbi5wYXVzZSgpLCAib24iID09IGkuZGlzYWJsZVByb2dyZXNzQmFyICYmIGUuY3NzKHsKICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiAiaGlkZGVuIgogICAgICAgICAgICAgICAgfSksIGkuc2xpZGVyc3RhdHVzID0gInBhdXNlZCIsIF9SLnVuVG9nZ2xlU3RhdGUoaS5zbGlkZXJ0b2dnbGVkYnkpCiAgICAgICAgICAgIH0pLCBlLm9uKCJzdGFydHRpbWVyIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpLmZvcmNlcGF1c2VfdmlhdG9nZ2xlIHx8ICgxICE9IGkuY29udGhvdmVyICYmIDEgIT0gaS52aWRlb3BsYXlpbmcgJiYgaS53aWR0aCA+IGkuaGlkZVNsaWRlckF0TGltaXQgJiYgMSAhPSBpLnRvbnBhdXNlICYmIDEgIT0gaS5vdmVybmF2ICYmIDEgIT0gaS5zc29wICYmICgxID09PSBpLm5vbG9vcGFueW1vcmUgfHwgaS52aWV3UG9ydC5lbmFibGUgJiYgIWkuaW52aWV3cG9ydCB8fCAodC5jc3MoewogICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJ2aXNpYmxlIgogICAgICAgICAgICAgICAgfSksIHRbMF0udHdlZW4ucmVzdW1lKCksIGkuc2xpZGVyc3RhdHVzID0gInBsYXlpbmciKSksICJvbiIgPT0gaS5kaXNhYmxlUHJvZ3Jlc3NCYXIgJiYgdC5jc3MoewogICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJoaWRkZW4iCiAgICAgICAgICAgICAgICB9KSwgX1IudG9nZ2xlU3RhdGUoaS5zbGlkZXJ0b2dnbGVkYnkpKQogICAgICAgICAgICB9KSwgZS5vbigicmVzdGFydHRpbWVyIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpZiAoIWkuZm9yY2VwYXVzZV92aWF0b2dnbGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKS5maW5kKCIudHAtYmFubmVydGltZXIiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoaS5tb3VzZW9uY29udGFpbmVyICYmICJvbiIgPT0gaS5uYXZpZ2F0aW9uLm9uSG92ZXJTdG9wICYmICFfSVNNKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgMSA9PT0gaS5ub2xvb3Bhbnltb3JlIHx8IGkudmlld1BvcnQuZW5hYmxlICYmICFpLmludmlld3BvcnQgfHwgMSA9PSBpLnNzb3AgfHwgKGUuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogInZpc2libGUiCiAgICAgICAgICAgICAgICAgICAgfSksIGVbMF0udHdlZW4ua2lsbCgpLCBlWzBdLnR3ZWVuID0gcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIGkuZGVsYXkgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIwJSIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5MaW5lYXIuZWFzZU5vbmUsCiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGU6IGEsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiAxCiAgICAgICAgICAgICAgICAgICAgfSksIGkuc2xpZGVyc3RhdHVzID0gInBsYXlpbmciKSwgIm9uIiA9PSBpLmRpc2FibGVQcm9ncmVzc0JhciAmJiBlLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJoaWRkZW4iCiAgICAgICAgICAgICAgICAgICAgfSksIF9SLnRvZ2dsZVN0YXRlKGkuc2xpZGVydG9nZ2xlZGJ5KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSwgZS5vbigibnVsbHRpbWVyIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB0WzBdLnR3ZWVuLmtpbGwoKSwgdFswXS50d2VlbiA9IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21Ubyh0LCBpLmRlbGF5IC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIwJSIKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLkxpbmVhci5lYXNlTm9uZSwKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBhLAogICAgICAgICAgICAgICAgICAgIGRlbGF5OiAxCiAgICAgICAgICAgICAgICB9KSwgdFswXS50d2Vlbi5wYXVzZSgwKSwgIm9uIiA9PSBpLmRpc2FibGVQcm9ncmVzc0JhciAmJiB0LmNzcyh7CiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIKICAgICAgICAgICAgICAgIH0pLCBpLnNsaWRlcnN0YXR1cyA9ICJwYXVzZWQiCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgYSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgMCA9PSBqUXVlcnkoImJvZHkiKS5maW5kKGUpLmxlbmd0aCAmJiAocmVtb3ZlQWxsTGlzdGVuZXJzKGUsIGkpLCBjbGVhckludGVydmFsKGkuY2RpbnQpKSwgZS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLnNsaWRlYXRlbmQiKSwgMSA9PSBlLmRhdGEoImNvbnRob3Zlci1jaGFuZ2VkIikgJiYgKGkuY29udGhvdmVyID0gZS5kYXRhKCJjb250aG92ZXIiKSwgZS5kYXRhKCJjb250aG92ZXItY2hhbmdlZCIsIDApKSwgX1IuY2FsbGluZ05ld1NsaWRlKGUsIDEpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHRbMF0udHdlZW4gPSBwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8odCwgaS5kZWxheSAvIDFlMywgewogICAgICAgICAgICAgICAgd2lkdGg6ICIwJSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuTGluZWFyLmVhc2VOb25lLAogICAgICAgICAgICAgICAgb25Db21wbGV0ZTogYSwKICAgICAgICAgICAgICAgIGRlbGF5OiAxCiAgICAgICAgICAgIH0pLCAxIDwgaS5zbGlkZWFtb3VudCAmJiAoMCAhPSBpLnN0b3BBZnRlckxvb3BzIHx8IDEgIT0gaS5zdG9wQXRTbGlkZSkgPyBlLnRyaWdnZXIoInN0YXJ0dGltZXIiKSA6IChpLm5vbG9vcGFueW1vcmUgPSAxLCBlLnRyaWdnZXIoIm51bGx0aW1lciIpKSwgZS5vbigidHAtbW91c2VlbnRlciIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5tb3VzZW9uY29udGFpbmVyID0gITAsICJvbiIgIT0gaS5uYXZpZ2F0aW9uLm9uSG92ZXJTdG9wIHx8IF9JU00gfHwgKGUudHJpZ2dlcigic3RvcHRpbWVyIiksIGUudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnBhdXNlIikpCiAgICAgICAgICAgIH0pLCBlLm9uKCJ0cC1tb3VzZWxlZnQiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGkubW91c2VvbmNvbnRhaW5lciA9ICExLCAxICE9IGUuZGF0YSgiY29udGhvdmVyIikgJiYgIm9uIiA9PSBpLm5hdmlnYXRpb24ub25Ib3ZlclN0b3AgJiYgKDEgPT0gaS52aWV3UG9ydC5lbmFibGUgJiYgaS5pbnZpZXdwb3J0IHx8IDAgPT0gaS52aWV3UG9ydC5lbmFibGUpICYmIChlLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25yZXN1bWUiKSwgZS50cmlnZ2VyKCJzdGFydHRpbWVyIikpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICB2aXMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIGksIHQsIGUgPSB7CiAgICAgICAgICAgICAgICBoaWRkZW46ICJ2aXNpYmlsaXR5Y2hhbmdlIiwKICAgICAgICAgICAgICAgIHdlYmtpdEhpZGRlbjogIndlYmtpdHZpc2liaWxpdHljaGFuZ2UiLAogICAgICAgICAgICAgICAgbW96SGlkZGVuOiAibW96dmlzaWJpbGl0eWNoYW5nZSIsCiAgICAgICAgICAgICAgICBtc0hpZGRlbjogIm1zdmlzaWJpbGl0eWNoYW5nZSIKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZm9yIChpIGluIGUpCiAgICAgICAgICAgICAgICBpZiAoaSBpbiBkb2N1bWVudCkgewogICAgICAgICAgICAgICAgICAgIHQgPSBlW2ldOwogICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZSAmJiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKHQsIGUsIHsKICAgICAgICAgICAgICAgICAgICBwYXNpdmU6ICEwCiAgICAgICAgICAgICAgICB9KSwgIWRvY3VtZW50W2ldCiAgICAgICAgICAgIH0KICAgICAgICB9KCksCiAgICAgICAgcmVzdGFydE9uRm9jdXMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgalF1ZXJ5KCIucmV2X3JlZHJhd19vbl9ibHVyZm9jdXMiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcylbMF0ub3B0OwogICAgICAgICAgICAgICAgaWYgKGUgPT0gdW5kZWZpbmVkIHx8IGUuYyA9PSB1bmRlZmluZWQgfHwgMCA9PT0gZS5jLmxlbmd0aCkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgMSAhPSBlLndpbmRvd2ZvY3VzZWQgJiYgKGUud2luZG93Zm9jdXNlZCA9ICEwLCBwdW5jaGdzLlR3ZWVuTGl0ZS5kZWxheWVkQ2FsbCguMywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgIm9uIiA9PSBlLmZhbGxiYWNrcy5uZXh0U2xpZGVPbldpbmRvd0ZvY3VzICYmIGUuYy5yZXZuZXh0KCksIGUuYy5yZXZyZWRyYXcoKSwgInBsYXlpbmciID09IGUubGFzdHNsaWRlcnN0YXR1cyAmJiBlLmMucmV2cmVzdW1lKCkKICAgICAgICAgICAgICAgIH0pKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgbGFzdFN0YXRCbHVyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGpRdWVyeSgiLnJldl9yZWRyYXdfb25fYmx1cmZvY3VzIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpWzBdLm9wdDsKICAgICAgICAgICAgICAgIGUud2luZG93Zm9jdXNlZCA9ICExLCBlLmxhc3RzbGlkZXJzdGF0dXMgPSBlLnNsaWRlcnN0YXR1cywgZS5jLnJldnBhdXNlKCk7CiAgICAgICAgICAgICAgICB2YXIgaSA9IGUuYy5maW5kKCIuYWN0aXZlLXJldnNsaWRlIC5zbG90aG9sZGVyIiksCiAgICAgICAgICAgICAgICAgICAgdCA9IGUuYy5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSAuc2xvdGhvbGRlciIpOwogICAgICAgICAgICAgICAgIm9uIiA9PSB0LmRhdGEoImtlbmJ1cm5zIikgJiYgX1Iuc3RvcEtlbkJ1cm4odCwgZSksICJvbiIgPT0gaS5kYXRhKCJrZW5idXJucyIpICYmIF9SLnN0b3BLZW5CdXJuKGksIGUpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICB0YWJCbHVycmluZ0NoZWNrID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gZG9jdW1lbnQuZG9jdW1lbnRNb2RlID09PSB1bmRlZmluZWQsCiAgICAgICAgICAgICAgICBpID0gd2luZG93LmNocm9tZTsKICAgICAgICAgICAgMSAhPT0galF1ZXJ5KCJib2R5IikuZGF0YSgicmV2c2xpZGVyX2ZvY3VzX2JsdXJfbGlzdGVuZXIiKSAmJiAoalF1ZXJ5KCJib2R5IikuZGF0YSgicmV2c2xpZGVyX2ZvY3VzX2JsdXJfbGlzdGVuZXIiLCAxKSwgZSAmJiAhaSA/IGpRdWVyeSh3aW5kb3cpLm9uKCJmb2N1c2luIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXN0YXJ0T25Gb2N1cygpCiAgICAgICAgICAgIH0pLm9uKCJmb2N1c291dCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbGFzdFN0YXRCbHVyKCkKICAgICAgICAgICAgfSkgOiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciA/ICh3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICByZXN0YXJ0T25Gb2N1cygpCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIGNhcHR1cmU6ICExLAogICAgICAgICAgICAgICAgcGFzc2l2ZTogITAKICAgICAgICAgICAgfSksIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgbGFzdFN0YXRCbHVyKCkKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgY2FwdHVyZTogITEsCiAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICB9KSkgOiAod2luZG93LmF0dGFjaEV2ZW50KCJmb2N1cyIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIHJlc3RhcnRPbkZvY3VzKCkKICAgICAgICAgICAgfSksIHdpbmRvdy5hdHRhY2hFdmVudCgiYmx1ciIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIGxhc3RTdGF0Qmx1cigpCiAgICAgICAgICAgIH0pKSkKICAgICAgICB9LAogICAgICAgIGdldFVybFZhcnMgPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGZvciAodmFyIGksIHQgPSBbXSwgYSA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNsaWNlKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoZSkgKyAxKS5zcGxpdCgiXyIpLCBuID0gMDsgbiA8IGEubGVuZ3RoOyBuKyspIGFbbl0gPSBhW25dLnJlcGxhY2UoIiUzRCIsICI9IiksIGkgPSBhW25dLnNwbGl0KCI9IiksIHQucHVzaChpWzBdKSwgdFtpWzBdXSA9IGlbMV07CiAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgfQp9KGpRdWVyeSk7CiEgZnVuY3Rpb24oJCkgewogICAgInVzZSBzdHJpY3QiOwoKICAgIGZ1bmN0aW9uIGdldFNjcm9sbFJvb3QoKSB7CiAgICAgICAgdmFyIGUsIHQgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsCiAgICAgICAgICAgIG8gPSBkb2N1bWVudC5ib2R5LAogICAgICAgICAgICBhID0gKHZvaWQgMCAhPT0gd2luZG93LnBhZ2VZT2Zmc2V0ID8gd2luZG93LnBhZ2VZT2Zmc2V0IDogbnVsbCkgfHwgby5zY3JvbGxUb3AgfHwgdC5zY3JvbGxUb3A7CiAgICAgICAgcmV0dXJuIHQuc2Nyb2xsVG9wID0gby5zY3JvbGxUb3AgPSBhICsgKDAgPCBhKSA/IC0xIDogMSwgKGUgPSB0LnNjcm9sbFRvcCAhPT0gYSA/IHQgOiBvKS5zY3JvbGxUb3AgPSBhLCBlCiAgICB9CiAgICB2YXIgX1IgPSBqUXVlcnkuZm4ucmV2b2x1dGlvbiwKICAgICAgICBfSVNNID0gX1IuaXNfbW9iaWxlKCksCiAgICAgICAgZXh0ZW5zaW9uID0gewogICAgICAgICAgICBhbGlhczogIkFjdGlvbnMgTWluIEpTIiwKICAgICAgICAgICAgbmFtZTogInJldm9sdXRpb24uZXh0ZW5zaW9ucy5hY3Rpb25zLm1pbi5qcyIsCiAgICAgICAgICAgIG1pbl9jb3JlOiAiNS40LjUiLAogICAgICAgICAgICB2ZXJzaW9uOiAiMi4xLjAiCiAgICAgICAgfTsKICAgIGpRdWVyeS5leHRlbmQoITAsIF9SLCB7CiAgICAgICAgY2hlY2tBY3Rpb25zOiBmdW5jdGlvbihlLCB0LCBvKSB7CiAgICAgICAgICAgIGlmICgic3RvcCIgPT09IF9SLmNvbXBhcmVfdmVyc2lvbihleHRlbnNpb24pLmNoZWNrKSByZXR1cm4gITE7CiAgICAgICAgICAgIGNoZWNrQWN0aW9uc19pbnRlcm4oZSwgdCwgbykKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBjaGVja0FjdGlvbnNfaW50ZXJuID0gZnVuY3Rpb24obCwgciwgZSkgewogICAgICAgICAgICBlICYmIGpRdWVyeS5lYWNoKGUsIGZ1bmN0aW9uKGUsIGEpIHsKICAgICAgICAgICAgICAgIGEuZGVsYXkgPSBwYXJzZUludChhLmRlbGF5LCAwKSAvIDFlMywgbC5hZGRDbGFzcygidHAtd2l0aGFjdGlvbiIpLCByLmZ1bGxzY3JlZW5fZXNjbGlzdGVuZXIgfHwgImV4aXRmdWxsc2NyZWVuIiAhPSBhLmFjdGlvbiAmJiAidG9nZ2xlZnVsbHNjcmVlbiIgIT0gYS5hY3Rpb24gfHwgKGpRdWVyeShkb2N1bWVudCkua2V5dXAoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIDI3ID09IGUua2V5Q29kZSAmJiAwIDwgalF1ZXJ5KCIjcnMtZ28tZnVsbHNjcmVlbiIpLmxlbmd0aCAmJiBsLnRyaWdnZXIoYS5ldmVudCkKICAgICAgICAgICAgICAgIH0pLCByLmZ1bGxzY3JlZW5fZXNjbGlzdGVuZXIgPSAhMCk7CiAgICAgICAgICAgICAgICB2YXIgdCA9ICJiYWNrZ3JvdW5kdmlkZW8iID09IGEubGF5ZXIgPyBqUXVlcnkoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikgOiAiZmlyc3R2aWRlbyIgPT0gYS5sYXllciA/IGpRdWVyeSgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmZpbmQoIi50cC12aWRlb2xheWVyIikgOiBqUXVlcnkoIiMiICsgYS5sYXllcik7CiAgICAgICAgICAgICAgICBzd2l0Y2ggKC0xICE9IGpRdWVyeS5pbkFycmF5KGEuYWN0aW9uLCBbInRvZ2dsZXNsaWRlciIsICJ0b2dnbGVfbXV0ZV92aWRlbyIsICJ0b2dnbGVfZ2xvYmFsX211dGVfdmlkZW8iLCAidG9nZ2xlZnVsbHNjcmVlbiJdKSAmJiBsLmRhdGEoInRvZ2dsZWxpc3RlbmVycyIsICEwKSwgYS5hY3Rpb24pIHsKICAgICAgICAgICAgICAgICAgICBjYXNlICJ0b2dnbGV2aWRlbyI6CiAgICAgICAgICAgICAgICAgICAgICAgIGpRdWVyeS5lYWNoKHQsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gKHQgPSBqUXVlcnkodCkpLmRhdGEoInZpZGVvdG9nZ2xlZGJ5Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsID09IG8gJiYgKG8gPSBuZXcgQXJyYXkpLCBvLnB1c2gobCksIHQuZGF0YSgidmlkZW90b2dnbGVkYnkiLCBvKQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAidG9nZ2xlbGF5ZXIiOgogICAgICAgICAgICAgICAgICAgICAgICBqUXVlcnkuZWFjaCh0LCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbyA9ICh0ID0galF1ZXJ5KHQpKS5kYXRhKCJsYXllcnRvZ2dsZWRieSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCA9PSBvICYmIChvID0gbmV3IEFycmF5KSwgby5wdXNoKGwpLCB0LmRhdGEoImxheWVydG9nZ2xlZGJ5IiwgbyksIHQuZGF0YSgidHJpZ2dlcmVkX3N0YXJ0c3RhdHVzIiwgYS5sYXllcnN0YXR1cykKICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgInRvZ2dsZV9tdXRlX3ZpZGVvIjoKICAgICAgICAgICAgICAgICAgICBjYXNlICJ0b2dnbGVfZ2xvYmFsX211dGVfdmlkZW8iOgogICAgICAgICAgICAgICAgICAgICAgICBqUXVlcnkuZWFjaCh0LCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbyA9ICh0ID0galF1ZXJ5KHQpKS5kYXRhKCJ2aWRlb211dGV0b2dnbGVkYnkiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgPT0gbyAmJiAobyA9IG5ldyBBcnJheSksIG8ucHVzaChsKSwgdC5kYXRhKCJ2aWRlb211dGV0b2dnbGVkYnkiLCBvKQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAidG9nZ2xlc2xpZGVyIjoKICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCA9PSByLnNsaWRlcnRvZ2dsZWRieSAmJiAoci5zbGlkZXJ0b2dnbGVkYnkgPSBuZXcgQXJyYXkpLCByLnNsaWRlcnRvZ2dsZWRieS5wdXNoKGwpOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICJ0b2dnbGVmdWxsc2NyZWVuIjoKICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCA9PSByLmZ1bGxzY3JlZW50b2dnbGVkYnkgJiYgKHIuZnVsbHNjcmVlbnRvZ2dsZWRieSA9IG5ldyBBcnJheSksIHIuZnVsbHNjcmVlbnRvZ2dsZWRieS5wdXNoKGwpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBzd2l0Y2ggKGwub24oYS5ldmVudCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJjbGljayIgPT09IGEuZXZlbnQgJiYgbC5oYXNDbGFzcygidHAtdGVtcG9yYXJ5ZGlzYWJsZWQiKSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgIHZhciBlID0gImJhY2tncm91bmR2aWRlbyIgPT0gYS5sYXllciA/IGpRdWVyeSgiLmFjdGl2ZS1yZXZzbGlkZSAuc2xvdGhvbGRlciAucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpIDogImZpcnN0dmlkZW8iID09IGEubGF5ZXIgPyBqUXVlcnkoIi5hY3RpdmUtcmV2c2xpZGUgLnRwLXZpZGVvbGF5ZXIiKS5maXJzdCgpIDogalF1ZXJ5KCIjIiArIGEubGF5ZXIpOwogICAgICAgICAgICAgICAgICAgIGlmICgic3RvcGxheWVyIiA9PSBhLmFjdGlvbiB8fCAidG9nZ2xlbGF5ZXIiID09IGEuYWN0aW9uIHx8ICJzdGFydGxheWVyIiA9PSBhLmFjdGlvbikgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA8IGUubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGUuZGF0YSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAwICE9PSB0LmNsaWNrZWRfdGltZV9zdGFtcCAmJiAxNTAgPCAobmV3IERhdGUpLmdldFRpbWUoKSAtIHQuY2xpY2tlZF90aW1lX3N0YW1wICYmIChjbGVhclRpbWVvdXQodC50cmlnZ2VyZGVsYXlJbiksIGNsZWFyVGltZW91dCh0LnRyaWdnZXJkZWxheU91dCkpLCB0LmNsaWNrZWRfdGltZV9zdGFtcCA9IChuZXcgRGF0ZSkuZ2V0VGltZSgpLCAic3RhcnRsYXllciIgPT0gYS5hY3Rpb24gfHwgInRvZ2dsZWxheWVyIiA9PSBhLmFjdGlvbiAmJiAiaW4iICE9IGUuZGF0YSgiYW5pbWRpcmVjdGlvbiIpID8gKHQuYW5pbWRpcmVjdGlvbiA9ICJpbiIsIHQudHJpZ2dlcnN0YXRlID0gIm9uIiwgX1IudG9nZ2xlU3RhdGUodC5sYXllcnRvZ2dsZWRieSksIF9SLnBsYXlBbmltYXRpb25GcmFtZSAmJiAoY2xlYXJUaW1lb3V0KHQudHJpZ2dlcmRlbGF5SW4pLCB0LnRyaWdnZXJkZWxheUluID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUi5wbGF5QW5pbWF0aW9uRnJhbWUoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHQ6IHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJkaXJlY3Rpb246ICJpbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJmcmFtZWluOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJmcmFtZW91dDogImZyYW1lXzk5OSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMWUzICogYS5kZWxheSkpKSA6ICgic3RvcGxheWVyIiA9PSBhLmFjdGlvbiB8fCAidG9nZ2xlbGF5ZXIiID09IGEuYWN0aW9uICYmICJvdXQiICE9IGUuZGF0YSgiYW5pbWRpcmVjdGlvbiIpKSAmJiAodC5hbmltZGlyZWN0aW9uID0gIm91dCIsIHQudHJpZ2dlcmVkID0gITAsIHQudHJpZ2dlcnN0YXRlID0gIm9mZiIsIF9SLnN0b3BWaWRlbyAmJiBfUi5zdG9wVmlkZW8oZSwgciksIF9SLnVuVG9nZ2xlU3RhdGUodC5sYXllcnRvZ2dsZWRieSksIF9SLmVuZE1vdmVDYXB0aW9uICYmIChjbGVhclRpbWVvdXQodC50cmlnZ2VyZGVsYXlPdXQpLCB0LnRyaWdnZXJkZWxheU91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1IucGxheUFuaW1hdGlvbkZyYW1lKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0OiByLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZTogImZyYW1lXzk5OSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXJkaXJlY3Rpb246ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVpbjogImZyYW1lXzAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVvdXQ6ICJmcmFtZV85OTkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDFlMyAqIGEuZGVsYXkpKSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSAhX0lTTSB8fCAicGxheXZpZGVvIiAhPSBhLmFjdGlvbiAmJiAic3RvcHZpZGVvIiAhPSBhLmFjdGlvbiAmJiAidG9nZ2xldmlkZW8iICE9IGEuYWN0aW9uICYmICJtdXRldmlkZW8iICE9IGEuYWN0aW9uICYmICJ1bm11dGV2aWRlbyIgIT0gYS5hY3Rpb24gJiYgInRvZ2dsZV9tdXRlX3ZpZGVvIiAhPSBhLmFjdGlvbiAmJiAidG9nZ2xlX2dsb2JhbF9tdXRlX3ZpZGVvIiAhPSBhLmFjdGlvbiA/IChhLmRlbGF5ID0gIk5hTiIgPT09IGEuZGVsYXkgfHwgTmFOID09PSBhLmRlbGF5ID8gMCA6IGEuZGVsYXksIF9SLmlzU2FmYXJpMTEoKSA/IGFjdGlvblN3aXRjaGVzKGUsIHIsIGEsIGwpIDogcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoYS5kZWxheSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvblN3aXRjaGVzKGUsIHIsIGEsIGwpCiAgICAgICAgICAgICAgICAgICAgfSwgW2UsIHIsIGEsIGxdKSkgOiBhY3Rpb25Td2l0Y2hlcyhlLCByLCBhLCBsKQogICAgICAgICAgICAgICAgfSksIGEuYWN0aW9uKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAidG9nZ2xlbGF5ZXIiOgogICAgICAgICAgICAgICAgICAgIGNhc2UgInN0YXJ0bGF5ZXIiOgogICAgICAgICAgICAgICAgICAgIGNhc2UgInBsYXlsYXllciI6CiAgICAgICAgICAgICAgICAgICAgY2FzZSAic3RvcGxheWVyIjoKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSAodCA9IGpRdWVyeSgiIyIgKyBhLmxheWVyKSkuZGF0YSgpOwogICAgICAgICAgICAgICAgICAgICAgICAwIDwgdC5sZW5ndGggJiYgdm9pZCAwICE9PSBvICYmICh2b2lkIDAgIT09IG8uZnJhbWVzICYmICJieXRyaWdnZXIiICE9IG8uZnJhbWVzWzBdLmRlbGF5IHx8IHZvaWQgMCA9PT0gby5mcmFtZXMgJiYgImJ5dHJpZ2dlciIgIT09IG8uc3RhcnQpICYmIChvLnRyaWdnZXJzdGF0ZSA9ICJvbiIpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBhY3Rpb25Td2l0Y2hlcyA9IGZ1bmN0aW9uKHRuYywgb3B0LCBhLCBfbmMpIHsKICAgICAgICAgICAgc3dpdGNoIChhLmFjdGlvbikgewogICAgICAgICAgICAgICAgY2FzZSAic2Nyb2xsYmVsb3ciOgogICAgICAgICAgICAgICAgICAgIGEuc3BlZWQgPSB2b2lkIDAgIT09IGEuc3BlZWQgPyBhLnNwZWVkIDogNDAwLCBhLmVhc2UgPSB2b2lkIDAgIT09IGEuZWFzZSA/IGEuZWFzZSA6IHB1bmNoZ3MuUG93ZXIyLmVhc2VPdXQsIF9uYy5hZGRDbGFzcygidHAtc2Nyb2xsYmVsb3dzbGlkZXIiKSwgX25jLmRhdGEoInNjcm9sbG9mZnNldCIsIGEub2Zmc2V0KSwgX25jLmRhdGEoInNjcm9sbGRlbGF5IiwgYS5kZWxheSksIF9uYy5kYXRhKCJzY3JvbGxzcGVlZCIsIGEuc3BlZWQpLCBfbmMuZGF0YSgic2Nyb2xsZWFzZSIsIGEuZWFzZSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG9mZiA9IGdldE9mZkNvbnRIKG9wdC5mdWxsU2NyZWVuT2Zmc2V0Q29udGFpbmVyKSB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICBhb2YgPSBwYXJzZUludChhLm9mZnNldCwgMCkgfHwgMDsKICAgICAgICAgICAgICAgICAgICBvZmYgPSBvZmYgLSBhb2YgfHwgMCwgb3B0LnNjcm9sbFJvb3QgPSBqUXVlcnkoZG9jdW1lbnQpOwogICAgICAgICAgICAgICAgICAgIHZhciBzb2JqID0gewogICAgICAgICAgICAgICAgICAgICAgICBfeTogb3B0LnNjcm9sbFJvb3Quc2Nyb2xsVG9wKCkKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHNvYmosIGEuc3BlZWQgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgX3k6IG9wdC5jLm9mZnNldCgpLnRvcCArIGpRdWVyeShvcHQubGlbMF0pLmhlaWdodCgpIC0gb2ZmLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBhLmVhc2UsCiAgICAgICAgICAgICAgICAgICAgICAgIG9uVXBkYXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdC5zY3JvbGxSb290LnNjcm9sbFRvcChzb2JqLl95KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJjYWxsYmFjayI6CiAgICAgICAgICAgICAgICAgICAgZXZhbChhLmNhbGxiYWNrKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgImp1bXB0b3NsaWRlIjoKICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGEuc2xpZGUudG9Mb3dlckNhc2UoKSkgewogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICIrMSI6CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIm5leHQiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0LnNjX2luZGljYXRvciA9ICJhcnJvdyIsIF9SLmNhbGxpbmdOZXdTbGlkZShvcHQuYywgMSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAicHJldmlvdXMiOgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJwcmV2IjoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiLTEiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0LnNjX2luZGljYXRvciA9ICJhcnJvdyIsIF9SLmNhbGxpbmdOZXdTbGlkZShvcHQuYywgLTEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdHMgPSBqUXVlcnkuaXNOdW1lcmljKGEuc2xpZGUpID8gcGFyc2VJbnQoYS5zbGlkZSwgMCkgOiBhLnNsaWRlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgX1IuY2FsbGluZ05ld1NsaWRlKG9wdC5jLCB0cykKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJzaW1wbGVsaW5rIjoKICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihhLnVybCwgYS50YXJnZXQpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidG9nZ2xlc2xpZGVyIjoKICAgICAgICAgICAgICAgICAgICBvcHQubm9sb29wYW55bW9yZSA9IDAsICJwbGF5aW5nIiA9PSBvcHQuc2xpZGVyc3RhdHVzID8gKG9wdC5jLnJldnBhdXNlKCksIG9wdC5mb3JjZXBhdXNlX3ZpYXRvZ2dsZSA9ICEwLCBfUi51blRvZ2dsZVN0YXRlKG9wdC5zbGlkZXJ0b2dnbGVkYnkpKSA6IChvcHQuZm9yY2VwYXVzZV92aWF0b2dnbGUgPSAhMSwgb3B0LmMucmV2cmVzdW1lKCksIF9SLnRvZ2dsZVN0YXRlKG9wdC5zbGlkZXJ0b2dnbGVkYnkpKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInBhdXNlc2xpZGVyIjoKICAgICAgICAgICAgICAgICAgICBvcHQuYy5yZXZwYXVzZSgpLCBfUi51blRvZ2dsZVN0YXRlKG9wdC5zbGlkZXJ0b2dnbGVkYnkpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAicGxheXNsaWRlciI6CiAgICAgICAgICAgICAgICAgICAgb3B0Lm5vbG9vcGFueW1vcmUgPSAwLCBvcHQuYy5yZXZyZXN1bWUoKSwgX1IudG9nZ2xlU3RhdGUob3B0LnNsaWRlcnRvZ2dsZWRieSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJwbGF5dmlkZW8iOgogICAgICAgICAgICAgICAgICAgIDAgPCB0bmMubGVuZ3RoICYmIF9SLnBsYXlWaWRlbyh0bmMsIG9wdCk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJzdG9wdmlkZW8iOgogICAgICAgICAgICAgICAgICAgIDAgPCB0bmMubGVuZ3RoICYmIF9SLnN0b3BWaWRlbyAmJiBfUi5zdG9wVmlkZW8odG5jLCBvcHQpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidG9nZ2xldmlkZW8iOgogICAgICAgICAgICAgICAgICAgIDAgPCB0bmMubGVuZ3RoICYmIChfUi5pc1ZpZGVvUGxheWluZyh0bmMsIG9wdCkgPyBfUi5zdG9wVmlkZW8gJiYgX1Iuc3RvcFZpZGVvKHRuYywgb3B0KSA6IF9SLnBsYXlWaWRlbyh0bmMsIG9wdCkpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAibXV0ZXZpZGVvIjoKICAgICAgICAgICAgICAgICAgICAwIDwgdG5jLmxlbmd0aCAmJiBfUi5tdXRlVmlkZW8odG5jLCBvcHQpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidW5tdXRldmlkZW8iOgogICAgICAgICAgICAgICAgICAgIDAgPCB0bmMubGVuZ3RoICYmIF9SLnVuTXV0ZVZpZGVvICYmIF9SLnVuTXV0ZVZpZGVvKHRuYywgb3B0KTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInRvZ2dsZV9tdXRlX3ZpZGVvIjoKICAgICAgICAgICAgICAgICAgICAwIDwgdG5jLmxlbmd0aCAmJiAoX1IuaXNWaWRlb011dGVkKHRuYywgb3B0KSA/IF9SLnVuTXV0ZVZpZGVvKHRuYywgb3B0KSA6IF9SLm11dGVWaWRlbyAmJiBfUi5tdXRlVmlkZW8odG5jLCBvcHQpKSwgX25jLnRvZ2dsZUNsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInRvZ2dsZV9nbG9iYWxfbXV0ZV92aWRlbyI6CiAgICAgICAgICAgICAgICAgICAgITAgPT09IG9wdC5nbG9iYWxtdXRlID8gKG9wdC5nbG9iYWxtdXRlID0gITEsIG51bGwgIT0gb3B0LnBsYXlpbmd2aWRlb3MgJiYgMCA8IG9wdC5wbGF5aW5ndmlkZW9zLmxlbmd0aCAmJiBqUXVlcnkuZWFjaChvcHQucGxheWluZ3ZpZGVvcywgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBfUi51bk11dGVWaWRlbyAmJiBfUi51bk11dGVWaWRlbyh0LCBvcHQpCiAgICAgICAgICAgICAgICAgICAgfSkpIDogKG9wdC5nbG9iYWxtdXRlID0gITAsIG51bGwgIT0gb3B0LnBsYXlpbmd2aWRlb3MgJiYgMCA8IG9wdC5wbGF5aW5ndmlkZW9zLmxlbmd0aCAmJiBqUXVlcnkuZWFjaChvcHQucGxheWluZ3ZpZGVvcywgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBfUi5tdXRlVmlkZW8gJiYgX1IubXV0ZVZpZGVvKHQsIG9wdCkKICAgICAgICAgICAgICAgICAgICB9KSksIF9uYy50b2dnbGVDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIik7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJzaW11bGF0ZWNsaWNrIjoKICAgICAgICAgICAgICAgICAgICAwIDwgdG5jLmxlbmd0aCAmJiB0bmMuY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInRvZ2dsZWNsYXNzIjoKICAgICAgICAgICAgICAgICAgICAwIDwgdG5jLmxlbmd0aCAmJiAodG5jLmhhc0NsYXNzKGEuY2xhc3NuYW1lKSA/IHRuYy5yZW1vdmVDbGFzcyhhLmNsYXNzbmFtZSkgOiB0bmMuYWRkQ2xhc3MoYS5jbGFzc25hbWUpKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgImdvZnVsbHNjcmVlbiI6CiAgICAgICAgICAgICAgICBjYXNlICJleGl0ZnVsbHNjcmVlbiI6CiAgICAgICAgICAgICAgICBjYXNlICJ0b2dnbGVmdWxsc2NyZWVuIjoKICAgICAgICAgICAgICAgICAgICBpZiAoMCA8IGpRdWVyeSgiLnJzLWdvLWZ1bGxzY3JlZW4iKS5sZW5ndGggJiYgKCJ0b2dnbGVmdWxsc2NyZWVuIiA9PSBhLmFjdGlvbiB8fCAiZXhpdGZ1bGxzY3JlZW4iID09IGEuYWN0aW9uKSkgewogICAgICAgICAgICAgICAgICAgICAgICBqUXVlcnkoIi5ycy1nby1mdWxsc2NyZWVuIikucmVtb3ZlQ2xhc3MoInJzLWdvLWZ1bGxzY3JlZW4iKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGdmID0gMCA8IG9wdC5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLmxlbmd0aCA/IG9wdC5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpIDogb3B0LmMuY2xvc2VzdCgiLnJldl9zbGlkZXJfd3JhcHBlciIpOwogICAgICAgICAgICAgICAgICAgICAgICBvcHQubWluSGVpZ2h0ID0gb3B0Lm9sZG1pbmhlaWdodCwgb3B0LmluZnVsbHNjcmVlbm1vZGUgPSAhMSwgb3B0LmMucmV2cmVkcmF3KCksIGpRdWVyeSh3aW5kb3cpLnRyaWdnZXIoInJlc2l6ZSIpLCBfUi51blRvZ2dsZVN0YXRlKG9wdC5mdWxsc2NyZWVudG9nZ2xlZGJ5KQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoMCA9PSBqUXVlcnkoIi5ycy1nby1mdWxsc2NyZWVuIikubGVuZ3RoICYmICgidG9nZ2xlZnVsbHNjcmVlbiIgPT0gYS5hY3Rpb24gfHwgImdvZnVsbHNjcmVlbiIgPT0gYS5hY3Rpb24pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBnZiA9IDAgPCBvcHQuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5sZW5ndGggPyBvcHQuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKSA6IG9wdC5jLmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKTsKICAgICAgICAgICAgICAgICAgICAgICAgZ2YuYWRkQ2xhc3MoInJzLWdvLWZ1bGxzY3JlZW4iKSwgb3B0Lm9sZG1pbmhlaWdodCA9IG9wdC5taW5IZWlnaHQsIG9wdC5taW5IZWlnaHQgPSBqUXVlcnkod2luZG93KS5oZWlnaHQoKSwgb3B0LmluZnVsbHNjcmVlbm1vZGUgPSAhMCwgb3B0LmMucmV2cmVkcmF3KCksIGpRdWVyeSh3aW5kb3cpLnRyaWdnZXIoInJlc2l6ZSIpLCBfUi50b2dnbGVTdGF0ZShvcHQuZnVsbHNjcmVlbnRvZ2dsZWRieSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICAgIHZhciBvYmogPSB7fTsKICAgICAgICAgICAgICAgICAgICBvYmouZXZlbnQgPSBhLCBvYmoubGF5ZXIgPSBfbmMsIG9wdC5jLnRyaWdnZXIoImxheWVyYWN0aW9uIiwgW29ial0pCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGdldE9mZkNvbnRIID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICBpZiAobnVsbCA9PSBlKSByZXR1cm4gMDsKICAgICAgICAgICAgaWYgKDEgPCBlLnNwbGl0KCIsIikubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGUuc3BsaXQoIiwiKSwKICAgICAgICAgICAgICAgICAgICBvID0gMDsKICAgICAgICAgICAgICAgIHJldHVybiB0ICYmIGpRdWVyeS5lYWNoKHQsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICAwIDwgalF1ZXJ5KHQpLmxlbmd0aCAmJiAobyArPSBqUXVlcnkodCkub3V0ZXJIZWlnaHQoITApKQogICAgICAgICAgICAgICAgfSksIG8KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4galF1ZXJ5KGUpLmhlaWdodCgpCiAgICAgICAgfQp9KGpRdWVyeSk7CiEgZnVuY3Rpb24oZSkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIGYgPSBqUXVlcnkuZm4ucmV2b2x1dGlvbiwKICAgICAgICBzID0gewogICAgICAgICAgICBhbGlhczogIkNhcm91c2VsIE1pbiBKUyIsCiAgICAgICAgICAgIG5hbWU6ICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMuY2Fyb3VzZWwubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjMuMCIsCiAgICAgICAgICAgIHZlcnNpb246ICIxLjIuMSIKICAgICAgICB9OwogICAgalF1ZXJ5LmV4dGVuZCghMCwgZiwgewogICAgICAgIHByZXBhcmVDYXJvdXNlbDogZnVuY3Rpb24oZSwgaSwgdCwgYSkgewogICAgICAgICAgICByZXR1cm4gInN0b3AiICE9PSBmLmNvbXBhcmVfdmVyc2lvbihzKS5jaGVjayAmJiAodCA9IGUuY2Fyb3VzZWwubGFzdGRpcmVjdGlvbiA9IGQodCwgZS5jYXJvdXNlbC5sYXN0ZGlyZWN0aW9uKSwgbChlKSwgZS5jYXJvdXNlbC5zbGlkZV9vZmZzZXRfdGFyZ2V0ID0gbyhlKSwgdm9pZCh2b2lkIDAgIT09IGEgPyBoKGUsIHQsICExLCAwKSA6IG51bGwgPT0gaSA/IGYuY2Fyb3VzZWxUb0V2YWxQb3NpdGlvbihlLCB0KSA6IGgoZSwgdCwgITEpKSkKICAgICAgICB9LAogICAgICAgIGNhcm91c2VsVG9FdmFsUG9zaXRpb246IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgdmFyIHQgPSBlLmNhcm91c2VsOwogICAgICAgICAgICBpID0gdC5sYXN0ZGlyZWN0aW9uID0gZChpLCB0Lmxhc3RkaXJlY3Rpb24pOwogICAgICAgICAgICB2YXIgYSA9ICJjZW50ZXIiID09PSB0Lmhvcml6b250YWxfYWxpZ24gPyAodC53cmFwd2lkdGggLyAyIC0gdC5zbGlkZV93aWR0aCAvIDIgLSB0LnNsaWRlX2dsb2JhbG9mZnNldCkgLyB0LnNsaWRlX3dpZHRoIDogKDAgLSB0LnNsaWRlX2dsb2JhbG9mZnNldCkgLyB0LnNsaWRlX3dpZHRoLAogICAgICAgICAgICAgICAgcyA9IGYuc2ltcChhLCBlLnNsaWRlYW1vdW50LCAhMSksCiAgICAgICAgICAgICAgICBsID0gcyAtIE1hdGguZmxvb3IocyksCiAgICAgICAgICAgICAgICBvID0gMCwKICAgICAgICAgICAgICAgIHIgPSAtMSAqIChNYXRoLmNlaWwocykgLSBzKSwKICAgICAgICAgICAgICAgIG4gPSAtMSAqIChNYXRoLmZsb29yKHMpIC0gcyk7CiAgICAgICAgICAgIG8gPSAuMyA8PSBsICYmICJsZWZ0IiA9PT0gaSB8fCAuNyA8PSBsICYmICJyaWdodCIgPT09IGkgPyByIDogbCA8IC4zICYmICJsZWZ0IiA9PT0gaSB8fCBsIDwgLjcgJiYgInJpZ2h0IiA9PT0gaSA/IG4gOiBvLCBvID0gIm9mZiIgPT09IHQuaW5maW5pdHkgPyBzIDwgMCA/IHMgOiBhID4gZS5zbGlkZWFtb3VudCAtIDEgPyBhIC0gKGUuc2xpZGVhbW91bnQgLSAxKSA6IG8gOiBvLCB0LnNsaWRlX29mZnNldF90YXJnZXQgPSBvICogdC5zbGlkZV93aWR0aCwgMCAhPT0gTWF0aC5hYnModC5zbGlkZV9vZmZzZXRfdGFyZ2V0KSA/IGgoZSwgaSwgITApIDogZi5vcmdhbmlzZUNhcm91c2VsKGUsIGkpCiAgICAgICAgfSwKICAgICAgICBvcmdhbmlzZUNhcm91c2VsOiBmdW5jdGlvbihvLCByLCBuLCBlKSB7CiAgICAgICAgICAgIHIgPSB2b2lkIDAgPT09IHIgfHwgImRvd24iID09IHIgfHwgInVwIiA9PSByIHx8IG51bGwgPT09IHIgfHwgalF1ZXJ5LmlzRW1wdHlPYmplY3QocikgPyAibGVmdCIgOiByOwogICAgICAgICAgICBmb3IgKHZhciBkID0gby5jYXJvdXNlbCwgZiA9IG5ldyBBcnJheSwgaCA9IGQuc2xpZGVzLmxlbmd0aCwgaSA9ICgicmlnaHQiID09PSBkLmhvcml6b250YWxfYWxpZ24gJiYgby53aWR0aCwgMCk7IGkgPCBoOyBpKyspIHsKICAgICAgICAgICAgICAgIHZhciB0ID0gaSAqIGQuc2xpZGVfd2lkdGggKyBkLnNsaWRlX29mZnNldDsKICAgICAgICAgICAgICAgICJvbiIgPT09IGQuaW5maW5pdHkgJiYgKHQgPSAodCA9IHQgPiBkLndyYXB3aWR0aCAtIGQuaW5uZXJvZmZzZXQgJiYgInJpZ2h0IiA9PSByID8gZC5zbGlkZV9vZmZzZXQgLSAoZC5zbGlkZXMubGVuZ3RoIC0gaSkgKiBkLnNsaWRlX3dpZHRoIDogdCkgPCAwIC0gZC5pbm5lcm9mZnNldCAtIGQuc2xpZGVfd2lkdGggJiYgImxlZnQiID09IHIgPyB0ICsgZC5tYXh3aWR0aCA6IHQpLCBmW2ldID0gdAogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciB3ID0gOTk5OwogICAgICAgICAgICBkLnNsaWRlcyAmJiBqUXVlcnkuZWFjaChkLnNsaWRlcywgZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBmW2VdOwogICAgICAgICAgICAgICAgIm9uIiA9PT0gZC5pbmZpbml0eSAmJiAodCA9ICh0ID0gdCA+IGQud3JhcHdpZHRoIC0gZC5pbm5lcm9mZnNldCAmJiAibGVmdCIgPT09IHIgPyBmWzBdIC0gKGggLSBlKSAqIGQuc2xpZGVfd2lkdGggOiB0KSA8IDAgLSBkLmlubmVyb2Zmc2V0IC0gZC5zbGlkZV93aWR0aCA/ICJsZWZ0IiA9PSByID8gdCArIGQubWF4d2lkdGggOiAicmlnaHQiID09PSByID8gZltoIC0gMV0gKyAoZSArIDEpICogZC5zbGlkZV93aWR0aCA6IHQgOiB0KTsKICAgICAgICAgICAgICAgIHZhciBhID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgICAgIGEubGVmdCA9IHQgKyBkLmlubmVyb2Zmc2V0OwogICAgICAgICAgICAgICAgdmFyIHMgPSAiY2VudGVyIiA9PT0gZC5ob3Jpem9udGFsX2FsaWduID8gKE1hdGguYWJzKGQud3JhcHdpZHRoIC8gMikgLSAoYS5sZWZ0ICsgZC5zbGlkZV93aWR0aCAvIDIpKSAvIGQuc2xpZGVfd2lkdGggOiAoZC5pbm5lcm9mZnNldCAtIGEubGVmdCkgLyBkLnNsaWRlX3dpZHRoLAogICAgICAgICAgICAgICAgICAgIGwgPSAiY2VudGVyIiA9PT0gZC5ob3Jpem9udGFsX2FsaWduID8gMiA6IDE7CiAgICAgICAgICAgICAgICBpZiAoKG4gJiYgTWF0aC5hYnMocykgPCB3IHx8IDAgPT09IHMpICYmICh3ID0gTWF0aC5hYnMocyksIGQuZm9jdXNlZCA9IGUpLCBhLndpZHRoID0gZC5zbGlkZV93aWR0aCwgYS54ID0gMCwgYS50cmFuc2Zvcm1QZXJzcGVjdGl2ZSA9IDEyMDAsIGEudHJhbnNmb3JtT3JpZ2luID0gIjUwJSAiICsgZC52ZXJ0aWNhbF9hbGlnbiwgIm9uIiA9PT0gZC5mYWRlb3V0KQogICAgICAgICAgICAgICAgICAgIGlmICgib24iID09PSBkLnZhcnlfZmFkZSkgYS5hdXRvQWxwaGEgPSAxIC0gTWF0aC5hYnMoMSAvIE1hdGguY2VpbChkLm1heFZpc2libGVJdGVtcyAvIGwpICogcyk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBzd2l0Y2ggKGQuaG9yaXpvbnRhbF9hbGlnbikgewogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJjZW50ZXIiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYS5hdXRvQWxwaGEgPSBNYXRoLmFicyhzKSA8IE1hdGguY2VpbChkLm1heFZpc2libGVJdGVtcyAvIGwgLSAxKSA/IDEgOiAxIC0gKE1hdGguYWJzKHMpIC0gTWF0aC5mbG9vcihNYXRoLmFicyhzKSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgImxlZnQiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYS5hdXRvQWxwaGEgPSBzIDwgMSAmJiAwIDwgcyA/IDEgLSBzIDogTWF0aC5hYnMocykgPiBkLm1heFZpc2libGVJdGVtcyAtIDEgPyAxIC0gKE1hdGguYWJzKHMpIC0gKGQubWF4VmlzaWJsZUl0ZW1zIC0gMSkpIDogMTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJyaWdodCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLmF1dG9BbHBoYSA9IC0xIDwgcyAmJiBzIDwgMCA/IDEgLSBNYXRoLmFicyhzKSA6IHMgPiBkLm1heFZpc2libGVJdGVtcyAtIDEgPyAxIC0gKE1hdGguYWJzKHMpIC0gKGQubWF4VmlzaWJsZUl0ZW1zIC0gMSkpIDogMQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBhLmF1dG9BbHBoYSA9IE1hdGguYWJzKHMpIDwgTWF0aC5jZWlsKGQubWF4VmlzaWJsZUl0ZW1zIC8gbCkgPyAxIDogMDsKICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IGQubWluU2NhbGUgJiYgMCA8IGQubWluU2NhbGUpCiAgICAgICAgICAgICAgICAgICAgaWYgKCJvbiIgPT09IGQudmFyeV9zY2FsZSkgewogICAgICAgICAgICAgICAgICAgICAgICBhLnNjYWxlID0gMSAtIE1hdGguYWJzKGQubWluU2NhbGUgLyAxMDAgLyBNYXRoLmNlaWwoZC5tYXhWaXNpYmxlSXRlbXMgLyBsKSAqIHMpOwogICAgICAgICAgICAgICAgICAgICAgICBkLnNsaWRlX3dpZHRoLCBkLnNsaWRlX3dpZHRoLCBhLnNjYWxlLCBNYXRoLmFicyhzKQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGEuc2NhbGUgPSAxIDw9IHMgfHwgcyA8PSAtMSA/IDEgLSBkLm1pblNjYWxlIC8gMTAwIDogKDEwMCAtIGQubWluU2NhbGUgKiBNYXRoLmFicyhzKSkgLyAxMDA7CiAgICAgICAgICAgICAgICAgICAgICAgIGQuc2xpZGVfd2lkdGgsIGQuc2xpZGVfd2lkdGgsIGQubWluU2NhbGUsIE1hdGguYWJzKHMpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdm9pZCAwICE9PSBkLm1heFJvdGF0aW9uICYmIDAgIT0gTWF0aC5hYnMoZC5tYXhSb3RhdGlvbikgJiYgKCJvbiIgPT09IGQudmFyeV9yb3RhdGlvbiA/IChhLnJvdGF0aW9uWSA9IE1hdGguYWJzKGQubWF4Um90YXRpb24pIC0gTWF0aC5hYnMoKDEgLSBNYXRoLmFicygxIC8gTWF0aC5jZWlsKGQubWF4VmlzaWJsZUl0ZW1zIC8gbCkgKiBzKSkgKiBkLm1heFJvdGF0aW9uKSwgYS5hdXRvQWxwaGEgPSA5MCA8IE1hdGguYWJzKGEucm90YXRpb25ZKSA/IDAgOiBhLmF1dG9BbHBoYSkgOiBhLnJvdGF0aW9uWSA9IDEgPD0gcyB8fCBzIDw9IC0xID8gZC5tYXhSb3RhdGlvbiA6IE1hdGguYWJzKHMpICogZC5tYXhSb3RhdGlvbiwgYS5yb3RhdGlvblkgPSBzIDwgMCA/IC0xICogYS5yb3RhdGlvblkgOiBhLnJvdGF0aW9uWSksIGEueCA9IC0xICogZC5zcGFjZSAqIHMsIGEubGVmdCA9IE1hdGguZmxvb3IoYS5sZWZ0KSwgYS54ID0gTWF0aC5mbG9vcihhLngpLCBhLnNjYWxlLCBhLngsIGEuekluZGV4ID0gTWF0aC5yb3VuZCgxMDAgLSBNYXRoLmFicyg1ICogcykpLCBhLnRyYW5zZm9ybVN0eWxlID0gIjNEIiAhPSBvLnBhcmFsbGF4LnR5cGUgJiYgIjNkIiAhPSBvLnBhcmFsbGF4LnR5cGUgPyAiZmxhdCIgOiAicHJlc2VydmUtM2QiLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaSwgYSkKICAgICAgICAgICAgfSksIGUgJiYgKG8uYy5maW5kKCIubmV4dC1yZXZzbGlkZSIpLnJlbW92ZUNsYXNzKCJuZXh0LXJldnNsaWRlIiksIGpRdWVyeShkLnNsaWRlc1tkLmZvY3VzZWRdKS5hZGRDbGFzcygibmV4dC1yZXZzbGlkZSIpLCBvLmMudHJpZ2dlcigicmV2b2x1dGlvbi5uZXh0c2xpZGUud2FpdGluZyIpKSwgZC53cmFwd2lkdGgsIGQuc2xpZGVfb2Zmc2V0LCBkLm1heHdpZHRoLCBkLnNsaWRlX29mZnNldCwgZC53cmFwd2lkdGgKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBsID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2b2lkIDAgPT09IGUuYncgJiYgZi5zZXRTaXplKGUpOwogICAgICAgICAgICB2YXIgaSwgdCwgYSA9IGUuY2Fyb3VzZWwsCiAgICAgICAgICAgICAgICBzID0gZi5nZXRIb3Jpem9udGFsT2Zmc2V0KGUuYywgImxlZnQiKSwKICAgICAgICAgICAgICAgIGwgPSBmLmdldEhvcml6b250YWxPZmZzZXQoZS5jLCAicmlnaHQiKTsKICAgICAgICAgICAgdm9pZCAwID09PSBhLndyYXAgJiYgKCh0ID0gKGkgPSBlKS5jYXJvdXNlbCkuaW5mYmFja3VwID0gdC5pbmZpbml0eSwgdC5tYXhWaXNpYmxlYmFja3VwID0gdC5tYXhWaXNpYmxlSXRlbXMsIHQuc2xpZGVfZ2xvYmFsb2Zmc2V0ID0gIm5vbmUiLCB0LnNsaWRlX29mZnNldCA9IDAsIHQud3JhcCA9IGkuYy5maW5kKCIudHAtY2Fyb3VzZWwtd3JhcHBlciIpLCB0LnNsaWRlcyA9IGkuYy5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIiksIDAgIT09IHQubWF4Um90YXRpb24gJiYgKCIzRCIgIT0gaS5wYXJhbGxheC50eXBlICYmICIzZCIgIT0gaS5wYXJhbGxheC50eXBlID8gcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQud3JhcCwgewogICAgICAgICAgICAgICAgcGVyc3BlY3RpdmU6IDEyMDAsCiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogImZsYXQiCiAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQud3JhcCwgewogICAgICAgICAgICAgICAgcGVyc3BlY3RpdmU6IDE2MDAsCiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogInByZXNlcnZlLTNkIgogICAgICAgICAgICB9KSksIHZvaWQgMCAhPT0gdC5ib3JkZXJfcmFkaXVzICYmIDAgPCBwYXJzZUludCh0LmJvcmRlcl9yYWRpdXMsIDApICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLmMuZmluZCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLCB7CiAgICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6IHQuYm9yZGVyX3JhZGl1cwogICAgICAgICAgICB9KSksIGEuc2xpZGVfd2lkdGggPSAib24iICE9PSBhLnN0cmV0Y2ggPyBlLmdyaWR3aWR0aFtlLmN1cldpblJhbmdlXSAqIGUuYncgOiBlLmMud2lkdGgoKSwgYS5tYXh3aWR0aCA9IGUuc2xpZGVhbW91bnQgKiBhLnNsaWRlX3dpZHRoLCBhLm1heFZpc2libGViYWNrdXAgPiBhLnNsaWRlcy5sZW5ndGggKyAxICYmIChhLm1heFZpc2libGVJdGVtcyA9IGEuc2xpZGVzLmxlbmd0aCArIDIpLCBhLndyYXB3aWR0aCA9IGEubWF4VmlzaWJsZUl0ZW1zICogYS5zbGlkZV93aWR0aCArIChhLm1heFZpc2libGVJdGVtcyAtIDEpICogYS5zcGFjZSwgYS53cmFwd2lkdGggPSAiYXV0byIgIT0gZS5zbGlkZXJMYXlvdXQgPyBhLndyYXB3aWR0aCA+IGUuYy5jbG9zZXN0KCIudHAtc2ltcGxlcmVzcG9uc2l2ZSIpLndpZHRoKCkgPyBlLmMuY2xvc2VzdCgiLnRwLXNpbXBsZXJlc3BvbnNpdmUiKS53aWR0aCgpIDogYS53cmFwd2lkdGggOiBhLndyYXB3aWR0aCA+IGUudWwud2lkdGgoKSA/IGUudWwud2lkdGgoKSA6IGEud3JhcHdpZHRoLCBhLmluZmluaXR5ID0gYS53cmFwd2lkdGggPj0gYS5tYXh3aWR0aCA/ICJvZmYiIDogYS5pbmZiYWNrdXAsIGEud3JhcG9mZnNldCA9ICJjZW50ZXIiID09PSBhLmhvcml6b250YWxfYWxpZ24gPyAoZS5jLndpZHRoKCkgLSBsIC0gcyAtIGEud3JhcHdpZHRoKSAvIDIgOiAwLCBhLndyYXBvZmZzZXQgPSAiYXV0byIgIT0gZS5zbGlkZXJMYXlvdXQgJiYgZS5vdXRlcm5hdiA/IDAgOiBhLndyYXBvZmZzZXQgPCBzID8gcyA6IGEud3JhcG9mZnNldDsKICAgICAgICAgICAgdmFyIG8gPSAiaGlkZGVuIjsKICAgICAgICAgICAgIjNEIiAhPSBlLnBhcmFsbGF4LnR5cGUgJiYgIjNkIiAhPSBlLnBhcmFsbGF4LnR5cGUgfHwgKG8gPSAidmlzaWJsZSIpLCAicmlnaHQiID09PSBhLmhvcml6b250YWxfYWxpZ24gPyBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS53cmFwLCB7CiAgICAgICAgICAgICAgICBsZWZ0OiAiYXV0byIsCiAgICAgICAgICAgICAgICByaWdodDogYS53cmFwb2Zmc2V0ICsgInB4IiwKICAgICAgICAgICAgICAgIHdpZHRoOiBhLndyYXB3aWR0aCwKICAgICAgICAgICAgICAgIG92ZXJmbG93OiBvCiAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEud3JhcCwgewogICAgICAgICAgICAgICAgcmlnaHQ6ICJhdXRvIiwKICAgICAgICAgICAgICAgIGxlZnQ6IGEud3JhcG9mZnNldCArICJweCIsCiAgICAgICAgICAgICAgICB3aWR0aDogYS53cmFwd2lkdGgsCiAgICAgICAgICAgICAgICBvdmVyZmxvdzogbwogICAgICAgICAgICB9KSwgYS5pbm5lcm9mZnNldCA9ICJyaWdodCIgPT09IGEuaG9yaXpvbnRhbF9hbGlnbiA/IGEud3JhcHdpZHRoIC0gYS5zbGlkZV93aWR0aCA6IDAsIGEucmVhbG9mZnNldCA9IE1hdGguYWJzKGEud3JhcC5wb3NpdGlvbigpLmxlZnQpLCBhLndpbmRoYWxmID0galF1ZXJ5KHdpbmRvdykud2lkdGgoKSAvIDIKICAgICAgICB9LAogICAgICAgIGQgPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsID09PSBlIHx8IGpRdWVyeS5pc0VtcHR5T2JqZWN0KGUpID8gaSA6IHZvaWQgMCA9PT0gZSA/ICJyaWdodCIgOiBlCiAgICAgICAgfSwKICAgICAgICBoID0gZnVuY3Rpb24oaSwgdCwgYSwgZSkgewogICAgICAgICAgICB2YXIgcyA9IGkuY2Fyb3VzZWw7CiAgICAgICAgICAgIHQgPSBzLmxhc3RkaXJlY3Rpb24gPSBkKHQsIHMubGFzdGRpcmVjdGlvbik7CiAgICAgICAgICAgIHZhciBsID0gbmV3IE9iamVjdCwKICAgICAgICAgICAgICAgIG8gPSBhID8gcHVuY2hncy5Qb3dlcjIuZWFzZU91dCA6IHMuZWFzaW5nOwogICAgICAgICAgICBsLmZyb20gPSAwLCBsLnRvID0gcy5zbGlkZV9vZmZzZXRfdGFyZ2V0LCBlID0gdm9pZCAwID09PSBlID8gcy5zcGVlZCAvIDFlMyA6IGUsIGUgPSBhID8gLjQgOiBlLCB2b2lkIDAgIT09IHMucG9zaXRpb25hbmltICYmIHMucG9zaXRpb25hbmltLnBhdXNlKCksIHMucG9zaXRpb25hbmltID0gcHVuY2hncy5Ud2VlbkxpdGUudG8obCwgZSwgewogICAgICAgICAgICAgICAgZnJvbTogbC50bywKICAgICAgICAgICAgICAgIG9uVXBkYXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBzLnNsaWRlX29mZnNldCA9IHMuc2xpZGVfZ2xvYmFsb2Zmc2V0ICsgbC5mcm9tLCBzLnNsaWRlX29mZnNldCA9IGYuc2ltcChzLnNsaWRlX29mZnNldCwgcy5tYXh3aWR0aCksIGYub3JnYW5pc2VDYXJvdXNlbChpLCB0LCAhMSwgITEpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcy5zbGlkZV9nbG9iYWxvZmZzZXQgPSAib2ZmIiA9PT0gcy5pbmZpbml0eSA/IHMuc2xpZGVfZ2xvYmFsb2Zmc2V0ICsgcy5zbGlkZV9vZmZzZXRfdGFyZ2V0IDogZi5zaW1wKHMuc2xpZGVfZ2xvYmFsb2Zmc2V0ICsgcy5zbGlkZV9vZmZzZXRfdGFyZ2V0LCBzLm1heHdpZHRoKSwgcy5zbGlkZV9vZmZzZXQgPSBmLnNpbXAocy5zbGlkZV9vZmZzZXQsIHMubWF4d2lkdGgpLCBmLm9yZ2FuaXNlQ2Fyb3VzZWwoaSwgdCwgITEsICEwKTsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeShpLmxpW3MuZm9jdXNlZF0pOwogICAgICAgICAgICAgICAgICAgIGkuYy5maW5kKCIubmV4dC1yZXZzbGlkZSIpLnJlbW92ZUNsYXNzKCJuZXh0LXJldnNsaWRlIiksIGEgJiYgZi5jYWxsaW5nTmV3U2xpZGUoaS5jLCBlLmRhdGEoImluZGV4IikpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZWFzZTogbwogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgdyA9IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgcmV0dXJuIE1hdGguYWJzKGUpID4gTWF0aC5hYnMoaSkgPyAwIDwgZSA/IGUgLSBNYXRoLmFicyhNYXRoLmZsb29yKGUgLyBpKSAqIGkpIDogZSArIE1hdGguYWJzKE1hdGguZmxvb3IoZSAvIGkpICogaSkgOiBlCiAgICAgICAgfSwKICAgICAgICBvID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgaSwgdCwgYSwgcywgbCwgbyA9IDAsCiAgICAgICAgICAgICAgICByID0gZS5jYXJvdXNlbDsKICAgICAgICAgICAgaWYgKHZvaWQgMCAhPT0gci5wb3NpdGlvbmFuaW0gJiYgci5wb3NpdGlvbmFuaW0ua2lsbCgpLCAibm9uZSIgPT0gci5zbGlkZV9nbG9iYWxvZmZzZXQpIHIuc2xpZGVfZ2xvYmFsb2Zmc2V0ID0gbyA9ICJjZW50ZXIiID09PSByLmhvcml6b250YWxfYWxpZ24gPyByLndyYXB3aWR0aCAvIDIgLSByLnNsaWRlX3dpZHRoIC8gMiA6IDA7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgci5zbGlkZV9nbG9iYWxvZmZzZXQgPSByLnNsaWRlX29mZnNldCwgci5zbGlkZV9vZmZzZXQgPSAwOwogICAgICAgICAgICAgICAgdmFyIG4gPSBlLmMuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5pbmRleCgpLAogICAgICAgICAgICAgICAgICAgIGQgPSAiY2VudGVyIiA9PT0gci5ob3Jpem9udGFsX2FsaWduID8gKHIud3JhcHdpZHRoIC8gMiAtIHIuc2xpZGVfd2lkdGggLyAyIC0gci5zbGlkZV9nbG9iYWxvZmZzZXQpIC8gci5zbGlkZV93aWR0aCA6ICgwIC0gci5zbGlkZV9nbG9iYWxvZmZzZXQpIC8gci5zbGlkZV93aWR0aDsKICAgICAgICAgICAgICAgIGQgPSBmLnNpbXAoZCwgZS5zbGlkZWFtb3VudCwgITEpLCBuID0gMCA8PSAobiA9IDAgPD0gbiA/IG4gOiBlLmMuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmluZGV4KCkpID8gbiA6IDAsIG8gPSAib2ZmIiA9PT0gci5pbmZpbml0eSA/IGQgLSBuIDogKGkgPSBkLCB0ID0gbiwgYSA9IGUuc2xpZGVhbW91bnQsIGwgPSB0IC0gYSAtIGksIHMgPSB3KHMgPSB0IC0gaSwgYSksIGwgPSB3KGwsIGEpLCAtKE1hdGguYWJzKHMpID4gTWF0aC5hYnMobCkgPyBsIDogcykpLCBvICo9IHIuc2xpZGVfd2lkdGgKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gbwogICAgICAgIH0KfShqUXVlcnkpOwohIGZ1bmN0aW9uKHQpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciB3ID0galF1ZXJ5LmZuLnJldm9sdXRpb24sCiAgICAgICAgdiA9IHsKICAgICAgICAgICAgYWxpYXM6ICJLZW5CdXJucyBNaW4gSlMiLAogICAgICAgICAgICBuYW1lOiAicmV2b2x1dGlvbi5leHRlbnNpb25zLmtlbmJ1cm4ubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjQiLAogICAgICAgICAgICB2ZXJzaW9uOiAiMS4zLjEiCiAgICAgICAgfTsKICAgIGpRdWVyeS5leHRlbmQoITAsIHcsIHsKICAgICAgICBzdG9wS2VuQnVybjogZnVuY3Rpb24odCkgewogICAgICAgICAgICBpZiAoInN0b3AiID09PSB3LmNvbXBhcmVfdmVyc2lvbih2KS5jaGVjaykgcmV0dXJuICExOwogICAgICAgICAgICBudWxsICE9IHQuZGF0YSgia2J0bCIpICYmIHQuZGF0YSgia2J0bCIpLnBhdXNlKCkKICAgICAgICB9LAogICAgICAgIHN0YXJ0S2VuQnVybjogZnVuY3Rpb24odCwgZSwgYSkgewogICAgICAgICAgICBpZiAoInN0b3AiID09PSB3LmNvbXBhcmVfdmVyc2lvbih2KS5jaGVjaykgcmV0dXJuICExOwogICAgICAgICAgICB2YXIgciA9IHQuZGF0YSgpLAogICAgICAgICAgICAgICAgbiA9IHQuZmluZCgiLmRlZmF1bHRpbWciKSwKICAgICAgICAgICAgICAgIHMgPSBuLmRhdGEoImxhenlsb2FkIikgfHwgbi5kYXRhKCJzcmMiKSwKICAgICAgICAgICAgICAgIGkgPSAoci5vd2lkdGgsIHIub2hlaWdodCwgImNhcm91c2VsIiA9PT0gZS5zbGlkZXJUeXBlID8gZS5jYXJvdXNlbC5zbGlkZV93aWR0aCA6IGUudWwud2lkdGgoKSksCiAgICAgICAgICAgICAgICBvID0gZS51bC5oZWlnaHQoKTsKICAgICAgICAgICAgaWYgKHQuZGF0YSgia2J0bCIpICYmIHQuZGF0YSgia2J0bCIpLmtpbGwoKSwgYSA9IGEgfHwgMCwgMCA9PSB0LmZpbmQoIi50cC1rYmltZyIpLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdmFyIGQgPSBuLmRhdGEoIm1lZGlhZmlsdGVyIik7CiAgICAgICAgICAgICAgICBkID0gdm9pZCAwID09PSBkID8gIiIgOiBkLCB0LmFwcGVuZCgnPGRpdiBjbGFzcz0idHAta2JpbWctd3JhcCAnICsgZCArICciIHN0eWxlPSJ6LWluZGV4OjI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0b3A6MHB4O2xlZnQ6MHB4O3Bvc2l0aW9uOmFic29sdXRlOyI+PGltZyBjbGFzcz0idHAta2JpbWciIHNyYz0iJyArIHMgKyAnIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IiB3aWR0aD0iJyArIHIub3dpZHRoICsgJyIgaGVpZ2h0PSInICsgci5vaGVpZ2h0ICsgJyI+PC9kaXY+JyksIHQuZGF0YSgia2VuYnVybiIsIHQuZmluZCgiLnRwLWtiaW1nIikpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGIgPSBmdW5jdGlvbih0LCBlLCBhLCByLCBuLCBzLCBpKSB7CiAgICAgICAgICAgICAgICB2YXIgbyA9IHQgKiBhLAogICAgICAgICAgICAgICAgICAgIGQgPSBlICogYSwKICAgICAgICAgICAgICAgICAgICBsID0gTWF0aC5hYnMociAtIG8pLAogICAgICAgICAgICAgICAgICAgIGggPSBNYXRoLmFicyhuIC0gZCksCiAgICAgICAgICAgICAgICAgICAgdSA9IG5ldyBPYmplY3Q7CiAgICAgICAgICAgICAgICByZXR1cm4gdS5sID0gKDAgLSBzKSAqIGwsIHUuciA9IHUubCArIG8sIHUudCA9ICgwIC0gaSkgKiBoLCB1LmIgPSB1LnQgKyBkLCB1LmggPSBzLCB1LnYgPSBpLCB1CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIG51bGwgIT0gdC5kYXRhKCJrYnRsIikgJiYgKHQuZGF0YSgia2J0bCIpLmtpbGwoKSwgdC5yZW1vdmVEYXRhKCJrYnRsIikpOwogICAgICAgICAgICB2YXIgbCA9IHQuZGF0YSgia2VuYnVybiIpLAogICAgICAgICAgICAgICAgaCA9IGwucGFyZW50KCksCiAgICAgICAgICAgICAgICB1ID0gZnVuY3Rpb24odCwgZSwgYSkgewogICAgICAgICAgICAgICAgICAgIHZhciByID0gYS5zY2FsZXN0YXJ0IC8gMTAwLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gYS5zY2FsZWVuZCAvIDEwMCwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IG51bGwgIT0gYS5vZmZzZXRzdGFydCAmJiBhLm9mZnNldHN0YXJ0LnNwbGl0KCIgIikgfHwgWzAsIDBdLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gbnVsbCAhPSBhLm9mZnNldGVuZCAmJiBhLm9mZnNldGVuZC5zcGxpdCgiICIpIHx8IFswLCAwXTsKICAgICAgICAgICAgICAgICAgICBhLmJncG9zaXRpb24gPSAiY2VudGVyIGNlbnRlciIgPT0gYS5iZ3Bvc2l0aW9uID8gIjUwJSA1MCUiIDogYS5iZ3Bvc2l0aW9uOwogICAgICAgICAgICAgICAgICAgIHZhciBvID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgICAgICAgICBhLm93aWR0aCwgYS5vaGVpZ2h0OwogICAgICAgICAgICAgICAgICAgIGlmIChhLm93aWR0aCwgYS5vaGVpZ2h0LCBvLnN0YXJ0ID0gbmV3IE9iamVjdCwgby5zdGFydG8gPSBuZXcgT2JqZWN0LCBvLmVuZCA9IG5ldyBPYmplY3QsIG8uZW5kbyA9IG5ldyBPYmplY3QsIG8uc3RhcnQud2lkdGggPSB0LCBvLnN0YXJ0LmhlaWdodCA9IG8uc3RhcnQud2lkdGggLyBhLm93aWR0aCAqIGEub2hlaWdodCwgby5zdGFydC5oZWlnaHQgPCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkID0gZSAvIG8uc3RhcnQuaGVpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICBvLnN0YXJ0LmhlaWdodCA9IGUsIG8uc3RhcnQud2lkdGggPSBvLnN0YXJ0LndpZHRoICogZAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBvLnN0YXJ0LnRyYW5zZm9ybU9yaWdpbiA9IGEuYmdwb3NpdGlvbiwgby5zdGFydC5zY2FsZSA9IHIsIG8uZW5kLnNjYWxlID0gbiwgYS5yb3RhdGVzdGFydCA9IDAgPT09IGEucm90YXRlc3RhcnQgPyAuMDEgOiBhLnJvdGF0ZXN0YXJ0LCBvLnN0YXJ0LnJvdGF0aW9uID0gYS5yb3RhdGVzdGFydCArICJkZWciLCBvLmVuZC5yb3RhdGlvbiA9IGEucm90YXRlZW5kICsgImRlZyI7CiAgICAgICAgICAgICAgICAgICAgdmFyIGwgPSBmdW5jdGlvbih0LCBlLCBhLCByLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBzID0gdC5iZ3Bvc2l0aW9uLnNwbGl0KCIgIikgfHwgImNlbnRlciBjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9ICJjZW50ZXIiID09IHNbMF0gPyAiNTAlIiA6ICJsZWZ0IiA9PSBzWzBdIHx8ICJsZWZ0IiA9PSBzWzFdID8gIjAlIiA6ICJyaWdodCIgPT0gc1swXSB8fCAicmlnaHQiID09IHNbMV0gPyAiMTAwJSIgOiBzWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbyA9ICJjZW50ZXIiID09IHNbMV0gPyAiNTAlIiA6ICJ0b3AiID09IHNbMF0gfHwgInRvcCIgPT0gc1sxXSA/ICIwJSIgOiAiYm90dG9tIiA9PSBzWzBdIHx8ICJib3R0b20iID09IHNbMV0gPyAiMTAwJSIgOiBzWzFdOwogICAgICAgICAgICAgICAgICAgICAgICBpID0gcGFyc2VJbnQoaSwgMCkgLyAxMDAgfHwgMCwgbyA9IHBhcnNlSW50KG8sIDApIC8gMTAwIHx8IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGQuc3RhcnQgPSBiKG4uc3RhcnQud2lkdGgsIG4uc3RhcnQuaGVpZ2h0LCBuLnN0YXJ0LnNjYWxlLCBlLCBhLCBpLCBvKSwgZC5lbmQgPSBiKG4uc3RhcnQud2lkdGgsIG4uc3RhcnQuaGVpZ2h0LCBuLmVuZC5zY2FsZSwgZSwgYSwgaSwgbyksIGQKICAgICAgICAgICAgICAgICAgICB9KGEsIHQsIGUsIDAsIG8pOwogICAgICAgICAgICAgICAgICAgIHNbMF0gPSBwYXJzZUZsb2F0KHNbMF0pICsgbC5zdGFydC5sLCBpWzBdID0gcGFyc2VGbG9hdChpWzBdKSArIGwuZW5kLmwsIHNbMV0gPSBwYXJzZUZsb2F0KHNbMV0pICsgbC5zdGFydC50LCBpWzFdID0gcGFyc2VGbG9hdChpWzFdKSArIGwuZW5kLnQ7CiAgICAgICAgICAgICAgICAgICAgdmFyIGggPSBsLnN0YXJ0LnIgLSBsLnN0YXJ0LmwsCiAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBsLnN0YXJ0LmIgLSBsLnN0YXJ0LnQsCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBsLmVuZC5yIC0gbC5lbmQubCwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9IGwuZW5kLmIgLSBsLmVuZC50OwogICAgICAgICAgICAgICAgICAgIHJldHVybiBzWzBdID0gMCA8IHNbMF0gPyAwIDogaCArIHNbMF0gPCB0ID8gdCAtIGggOiBzWzBdLCBpWzBdID0gMCA8IGlbMF0gPyAwIDogcCArIGlbMF0gPCB0ID8gdCAtIHAgOiBpWzBdLCBzWzFdID0gMCA8IHNbMV0gPyAwIDogdSArIHNbMV0gPCBlID8gZSAtIHUgOiBzWzFdLCBpWzFdID0gMCA8IGlbMV0gPyAwIDogYyArIGlbMV0gPCBlID8gZSAtIGMgOiBpWzFdLCBvLnN0YXJ0by54ID0gc1swXSArICJweCIsIG8uc3RhcnRvLnkgPSBzWzFdICsgInB4Iiwgby5lbmRvLnggPSBpWzBdICsgInB4Iiwgby5lbmRvLnkgPSBpWzFdICsgInB4Iiwgby5lbmQuZWFzZSA9IG8uZW5kby5lYXNlID0gYS5lYXNlLCBvLmVuZC5mb3JjZTNEID0gby5lbmRvLmZvcmNlM0QgPSAhMCwgbwogICAgICAgICAgICAgICAgfShpLCBvLCByKSwKICAgICAgICAgICAgICAgIHAgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7CiAgICAgICAgICAgIGlmIChwLnBhdXNlKCksIHUuc3RhcnQudHJhbnNmb3JtT3JpZ2luID0gIjAlIDAlIiwgdS5zdGFydG8udHJhbnNmb3JtT3JpZ2luID0gIjAlIDAlIiwgcC5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGwsIHIuZHVyYXRpb24gLyAxZTMsIHUuc3RhcnQsIHUuZW5kKSwgMCksIHAuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhoLCByLmR1cmF0aW9uIC8gMWUzLCB1LnN0YXJ0bywgdS5lbmRvKSwgMCksIHZvaWQgMCAhPT0gci5ibHVyc3RhcnQgJiYgdm9pZCAwICE9PSByLmJsdXJlbmQgJiYgKDAgIT09IHIuYmx1cnN0YXJ0IHx8IDAgIT09IHIuYmx1cmVuZCkpIHsKICAgICAgICAgICAgICAgIHZhciBjID0gewogICAgICAgICAgICAgICAgICAgICAgICBhOiByLmJsdXJzdGFydAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgYTogci5ibHVyZW5kLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB1LmVuZG8uZWFzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZiA9IG5ldyBwdW5jaGdzLlR3ZWVuTGl0ZShjLCByLmR1cmF0aW9uIC8gMWUzLCBnKTsKICAgICAgICAgICAgICAgIGYuZXZlbnRDYWxsYmFjaygib25VcGRhdGUiLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiAiYmx1cigiICsgYy5hICsgInB4KSIsCiAgICAgICAgICAgICAgICAgICAgICAgIHdlYmtpdEZpbHRlcjogImJsdXIoIiArIGMuYSArICJweCkiCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIFtoXSksIHAuYWRkKGYsIDApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcC5wcm9ncmVzcyhhKSwgcC5wbGF5KCksIHQuZGF0YSgia2J0bCIsIHApCiAgICAgICAgfQogICAgfSkKfShqUXVlcnkpOwohIGZ1bmN0aW9uKGUpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBBID0galF1ZXJ5LmZuLnJldm9sdXRpb24sCiAgICAgICAgbCA9IChBLmlzX21vYmlsZSgpLCBBLmlzX2FuZHJvaWQoKSwgewogICAgICAgICAgICBhbGlhczogIkxheWVyQW5pbWF0aW9uIE1pbiBKUyIsCiAgICAgICAgICAgIG5hbWU6ICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMubGF5ZXJhbmltYXRpb24ubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjQuNi40IiwKICAgICAgICAgICAgdmVyc2lvbjogIjMuNi41IgogICAgICAgIH0pOwogICAgalF1ZXJ5LmV4dGVuZCghMCwgQSwgewogICAgICAgIHVwZGF0ZU1hcmt1cDogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgaSA9IGpRdWVyeShlKS5kYXRhKCk7CiAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IGkuc3RhcnQgJiYgIWkuZnJhbWVzX2FkZGVkICYmIHZvaWQgMCA9PT0gaS5mcmFtZXMpIHsKICAgICAgICAgICAgICAgIHZhciBhID0gbmV3IEFycmF5LAogICAgICAgICAgICAgICAgICAgIG4gPSBGKEIoKSwgaS50cmFuc2Zvcm1faW4sIHZvaWQgMCwgITEpLAogICAgICAgICAgICAgICAgICAgIHIgPSBGKEIoKSwgaS50cmFuc2Zvcm1fb3V0LCB2b2lkIDAsICExKSwKICAgICAgICAgICAgICAgICAgICBvID0gRihCKCksIGkudHJhbnNmb3JtX2hvdmVyLCB2b2lkIDAsICExKTsKICAgICAgICAgICAgICAgIGpRdWVyeS5pc051bWVyaWMoaS5lbmQpICYmIGpRdWVyeS5pc051bWVyaWMoaS5zdGFydCkgJiYgalF1ZXJ5LmlzTnVtZXJpYyhuLnNwZWVkKSAmJiAoaS5lbmQgPSBwYXJzZUludChpLmVuZCwgMCkgLSAocGFyc2VJbnQoaS5zdGFydCwgMCkgKyBwYXJzZUZsb2F0KG4uc3BlZWQsIDApKSksIGEucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgZnJhbWU6ICIwIiwKICAgICAgICAgICAgICAgICAgICBkZWxheTogaS5zdGFydCwKICAgICAgICAgICAgICAgICAgICBmcm9tOiBpLnRyYW5zZm9ybV9pbiwKICAgICAgICAgICAgICAgICAgICB0bzogaS50cmFuc2Zvcm1faWRsZSwKICAgICAgICAgICAgICAgICAgICBzcGxpdDogaS5zcGxpdGluLAogICAgICAgICAgICAgICAgICAgIHNwZWVkOiBuLnNwZWVkLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IG4uYW5pbS5lYXNlLAogICAgICAgICAgICAgICAgICAgIG1hc2s6IGkubWFza19pbiwKICAgICAgICAgICAgICAgICAgICBzcGxpdGRlbGF5OiBpLmVsZW1lbnRkZWxheQogICAgICAgICAgICAgICAgfSksIGEucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgZnJhbWU6ICI1IiwKICAgICAgICAgICAgICAgICAgICBkZWxheTogaS5lbmQsCiAgICAgICAgICAgICAgICAgICAgdG86IGkudHJhbnNmb3JtX291dCwKICAgICAgICAgICAgICAgICAgICBzcGxpdDogaS5zcGxpdG91dCwKICAgICAgICAgICAgICAgICAgICBzcGVlZDogci5zcGVlZCwKICAgICAgICAgICAgICAgICAgICBlYXNlOiByLmFuaW0uZWFzZSwKICAgICAgICAgICAgICAgICAgICBtYXNrOiBpLm1hc2tfb3V0LAogICAgICAgICAgICAgICAgICAgIHNwbGl0ZGVsYXk6IGkuZWxlbWVudGRlbGF5CiAgICAgICAgICAgICAgICB9KSwgaS50cmFuc2Zvcm1faG92ZXIgJiYgYS5wdXNoKHsKICAgICAgICAgICAgICAgICAgICBmcmFtZTogImhvdmVyIiwKICAgICAgICAgICAgICAgICAgICB0bzogaS50cmFuc2Zvcm1faG92ZXIsCiAgICAgICAgICAgICAgICAgICAgc3R5bGU6IGkuc3R5bGVfaG92ZXIsCiAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IG8uc3BlZWQsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogby5hbmltLmVhc2UsCiAgICAgICAgICAgICAgICAgICAgc3BsaXRkZWxheTogaS5lbGVtZW50ZGVsYXkKICAgICAgICAgICAgICAgIH0pLCBpLmZyYW1lcyA9IGEKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoIWkuZnJhbWVzX2FkZGVkKSB7CiAgICAgICAgICAgICAgICBpZiAoaS5pbmZyYW1laW5kZXggPSAwLCBpLm91dGZyYW1laW5kZXggPSAtMSwgaS5ob3ZlcmZyYW1laW5kZXggPSAtMSwgdm9pZCAwICE9PSBpLmZyYW1lcykKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBzID0gMDsgcyA8IGkuZnJhbWVzLmxlbmd0aDsgcysrKSB2b2lkIDAgIT09IGkuZnJhbWVzW3NdLnNmeF9lZmZlY3QgJiYgMCA8PSBpLmZyYW1lc1tzXS5zZnhfZWZmZWN0LmluZGV4T2YoImJsb2NrIikgJiYgKGkuZnJhbWVzW3NdLnRvID0gMCA9PT0gcyA/IChpLmZyYW1lc1tzXS5mcm9tID0gIm86MCIsICJvOjEiKSA6ICJvOjAiLCBpLl9zZnggPSAiYmxvY2siKSwgdm9pZCAwID09PSBpLmZyYW1lc1swXS5mcm9tICYmIChpLmZyYW1lc1swXS5mcm9tID0gIm86aW5oZXJpdCIpLCAwID09PSBpLmZyYW1lc1swXS5kZWxheSAmJiAoaS5mcmFtZXNbMF0uZGVsYXkgPSAyMCksICJob3ZlciIgPT09IGkuZnJhbWVzW3NdLmZyYW1lID8gaS5ob3ZlcmZyYW1laW5kZXggPSBzIDogImZyYW1lXzk5OSIgIT09IGkuZnJhbWVzW3NdLmZyYW1lICYmICJmcmFtZV9vdXQiICE9PSBpLmZyYW1lc1tzXS5mcmFtZSAmJiAibGFzdCIgIT09IGkuZnJhbWVzW3NdLmZyYW1lICYmICJlbmQiICE9PSBpLmZyYW1lc1tzXS5mcmFtZSB8fCAoaS5vdXRmcmFtZWluZGV4ID0gcyksIHZvaWQgMCAhPT0gaS5mcmFtZXNbc10uc3BsaXQgJiYgaS5mcmFtZXNbc10uc3BsaXQubWF0Y2goL2NoYXJzfHdvcmRzfGxpbmVzL2cpICYmIChpLnNwbGl0dGV4dCA9ICEwKTsKICAgICAgICAgICAgICAgIGkub3V0ZnJhbWVpbmRleCA9IC0xID09PSBpLm91dGZyYW1laW5kZXggPyAtMSA9PT0gaS5ob3ZlcmZyYW1laW5kZXggPyBpLmZyYW1lcy5sZW5ndGggLSAxIDogaS5mcmFtZXMubGVuZ3RoIC0gMiA6IGkub3V0ZnJhbWVpbmRleCwgaS5mcmFtZXNfYWRkZWQgPSAhMAogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBhbmltY29tcGxldGVkOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBpID0gZS5kYXRhKCksCiAgICAgICAgICAgICAgICBhID0gaS52aWRlb3R5cGUsCiAgICAgICAgICAgICAgICBuID0gaS5hdXRvcGxheSwKICAgICAgICAgICAgICAgIHIgPSBpLmF1dG9wbGF5b25seWZpcnN0dGltZTsKICAgICAgICAgICAgbnVsbCAhPSBhICYmICJub25lIiAhPSBhICYmICgxID09IG4gfHwgInRydWUiID09IG4gfHwgIm9uIiA9PSBuIHx8ICIxc3R0aW1lIiA9PSBuIHx8IHIgPyAoKCJjYXJvdXNlbCIgIT09IHQuc2xpZGVyVHlwZSB8fCAiY2Fyb3VzZWwiID09PSB0LnNsaWRlclR5cGUgJiYgIm9uIiA9PT0gdC5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZSAmJiBlLmNsb3Nlc3QoImxpIikuaGFzQ2xhc3MoImFjdGl2ZS1yZXZzbGlkZSIpIHx8ICJjYXJvdXNlbCIgPT09IHQuc2xpZGVyVHlwZSAmJiAib24iICE9PSB0LmNhcm91c2VsLnNob3dMYXllcnNBbGxUaW1lICYmIGUuY2xvc2VzdCgibGkiKS5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIikpICYmIEEucGxheVZpZGVvKGUsIHQpLCBBLnRvZ2dsZVN0YXRlKGUuZGF0YSgidmlkZW90b2dnbGVkYnkiKSksIChyIHx8ICIxc3R0aW1lIiA9PSBuKSAmJiAoaS5hdXRvcGxheW9ubHlmaXJzdHRpbWUgPSAhMSwgaS5hdXRvcGxheSA9ICJvZmYiKSkgOiAoIm5vMXN0dGltZSIgPT0gbiAmJiAoaS5kYXRhc2V0YXV0b3BsYXkgPSAib24iKSwgQS51blRvZ2dsZVN0YXRlKGUuZGF0YSgidmlkZW90b2dnbGVkYnkiKSkpKQogICAgICAgIH0sCiAgICAgICAgaGFuZGxlU3RhdGljTGF5ZXJzOiBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBpID0gcGFyc2VJbnQoZS5kYXRhKCJzdGFydHNsaWRlIiksIDApLAogICAgICAgICAgICAgICAgYSA9IHBhcnNlSW50KGUuZGF0YSgiZW5kc2xpZGUiKSwgMCk7CiAgICAgICAgICAgIGkgPCAwICYmIChpID0gMCksIGEgPCAwICYmIChhID0gdC5yZWFsc2xpZGVhbW91bnQpLCAwID09PSBpICYmIGEgPT09IHQucmVhbHNsaWRlYW1vdW50IC0gMSAmJiAoYSA9IHQucmVhbHNsaWRlYW1vdW50ICsgMSksIGUuZGF0YSgic3RhcnRzbGlkZSIsIGkpLCBlLmRhdGEoImVuZHNsaWRlIiwgYSkKICAgICAgICB9LAogICAgICAgIGFuaW1hdGVUaGVDYXB0aW9uczogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBpZiAoInN0b3AiID09PSBBLmNvbXBhcmVfdmVyc2lvbihsKS5jaGVjaykgcmV0dXJuICExOwogICAgICAgICAgICB2YXIgcCA9IGUub3B0LAogICAgICAgICAgICAgICAgdCA9IGUuc2xpZGUsCiAgICAgICAgICAgICAgICBuID0gZS5yZWNhbGwsCiAgICAgICAgICAgICAgICBpID0gZS5tYWludGltZWxpbmUsCiAgICAgICAgICAgICAgICByID0gZS5wcmVzZXQsCiAgICAgICAgICAgICAgICBvID0gZS5zdGFydHNsaWRlYW5pbWF0LAogICAgICAgICAgICAgICAgcyA9ICJjYXJvdXNlbCIgPT09IHAuc2xpZGVyVHlwZSA/IDAgOiBwLndpZHRoIC8gMiAtIHAuZ3JpZHdpZHRoW3AuY3VyV2luUmFuZ2VdICogcC5idyAvIDIsCiAgICAgICAgICAgICAgICBhID0gdC5kYXRhKCJpbmRleCIpOwogICAgICAgICAgICBpZiAocC5sYXllcnMgPSBwLmxheWVycyB8fCBuZXcgT2JqZWN0LCBwLmxheWVyc1thXSA9IHAubGF5ZXJzW2FdIHx8IHQuZmluZCgiLnRwLWNhcHRpb24iKSwgcC5sYXllcnMuc3RhdGljID0gcC5sYXllcnMuc3RhdGljIHx8IHAuYy5maW5kKCIudHAtc3RhdGljLWxheWVycyIpLmZpbmQoIi50cC1jYXB0aW9uIiksIHZvaWQgMCA9PT0gcC50aW1lbGluZXMgJiYgQS5jcmVhdGVUaW1lbGluZVN0cnVjdHVyZShwKSwgcC5jb25oID0gcC5jLmhlaWdodCgpLCBwLmNvbncgPSBwLmMud2lkdGgoKSwgcC51bHcgPSBwLnVsLndpZHRoKCksIHAudWxoID0gcC51bC5oZWlnaHQoKSwgcC5kZWJ1Z01vZGUpIHsKICAgICAgICAgICAgICAgIHQuYWRkQ2xhc3MoImluZGVidWdtb2RlIiksIHQuZmluZCgiLmhlbHBncmlkIikucmVtb3ZlKCksIHAuYy5maW5kKCIuaGdsYXllcmluZm8iKS5yZW1vdmUoKSwgdC5hcHBlbmQoJzxkaXYgY2xhc3M9ImhlbHBncmlkIiBzdHlsZT0id2lkdGg6JyArIHAuZ3JpZHdpZHRoW3AuY3VyV2luUmFuZ2VdICogcC5idyArICJweDtoZWlnaHQ6IiArIHAuZ3JpZGhlaWdodFtwLmN1cldpblJhbmdlXSAqIHAuYncgKyAncHg7Ij48L2Rpdj4nKTsKICAgICAgICAgICAgICAgIHZhciBkID0gdC5maW5kKCIuaGVscGdyaWQiKTsKICAgICAgICAgICAgICAgIGQuYXBwZW5kKCc8ZGl2IGNsYXNzPSJoZ2luZm8iPlpvb206JyArIE1hdGgucm91bmQoMTAwICogcC5idykgKyAiJSAmbmJzcDsmbmJzcDsmbmJzcDsgRGV2aWNlIExldmVsOiIgKyBwLmN1cldpblJhbmdlICsgIiZuYnNwOyZuYnNwOyZuYnNwOyBHcmlkIFByZXNldDoiICsgcC5ncmlkd2lkdGhbcC5jdXJXaW5SYW5nZV0gKyAieCIgKyBwLmdyaWRoZWlnaHRbcC5jdXJXaW5SYW5nZV0gKyAiPC9kaXY+IiksIHAuYy5hcHBlbmQoJzxkaXYgY2xhc3M9ImhnbGF5ZXJpbmZvIj48L2Rpdj4nKSwgZC5hcHBlbmQoJzxkaXYgY2xhc3M9InRsaGciPjwvZGl2PicpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdm9pZCAwICE9PSBhICYmIHAubGF5ZXJzW2FdICYmIGpRdWVyeS5lYWNoKHAubGF5ZXJzW2FdLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIEEudXBkYXRlTWFya3VwKHRoaXMsIHApLCBBLnByZXBhcmVTaW5nbGVDYXB0aW9uKHsKICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBpLAogICAgICAgICAgICAgICAgICAgIG9wdDogcCwKICAgICAgICAgICAgICAgICAgICBvZmZzZXR4OiBzLAogICAgICAgICAgICAgICAgICAgIG9mZnNldHk6IDAsCiAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGUsCiAgICAgICAgICAgICAgICAgICAgcmVjYWxsOiBuLAogICAgICAgICAgICAgICAgICAgIHByZXNldDogcgogICAgICAgICAgICAgICAgfSksIHIgJiYgMCAhPT0gbyB8fCBBLmJ1aWxkRnVsbFRpbWVMaW5lKHsKICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBpLAogICAgICAgICAgICAgICAgICAgIG9wdDogcCwKICAgICAgICAgICAgICAgICAgICBvZmZzZXR4OiBzLAogICAgICAgICAgICAgICAgICAgIG9mZnNldHk6IDAsCiAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGUsCiAgICAgICAgICAgICAgICAgICAgcmVjYWxsOiBuLAogICAgICAgICAgICAgICAgICAgIHByZXNldDogciwKICAgICAgICAgICAgICAgICAgICByZWdlbmVyYXRlOiAwID09PSBvCiAgICAgICAgICAgICAgICB9KSwgbiAmJiAiY2Fyb3VzZWwiID09PSBwLnNsaWRlclR5cGUgJiYgIm9uIiA9PT0gcC5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZSAmJiBBLmFuaW1jb21wbGV0ZWQoaSwgcCkKICAgICAgICAgICAgfSksIHAubGF5ZXJzLnN0YXRpYyAmJiBqUXVlcnkuZWFjaChwLmxheWVycy5zdGF0aWMsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgIGEgPSBpLmRhdGEoKTsKICAgICAgICAgICAgICAgICEwICE9PSBhLmhvdmVyZWRzdGF0dXMgJiYgITAgIT09IGEuaW5ob3Zlcm91dGFuaW1hdGlvbiA/IChBLnVwZGF0ZU1hcmt1cCh0aGlzLCBwKSwgQS5wcmVwYXJlU2luZ2xlQ2FwdGlvbih7CiAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogaSwKICAgICAgICAgICAgICAgICAgICBvcHQ6IHAsCiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0eDogcywKICAgICAgICAgICAgICAgICAgICBvZmZzZXR5OiAwLAogICAgICAgICAgICAgICAgICAgIGluZGV4OiBlLAogICAgICAgICAgICAgICAgICAgIHJlY2FsbDogbiwKICAgICAgICAgICAgICAgICAgICBwcmVzZXQ6IHIKICAgICAgICAgICAgICAgIH0pLCByICYmIDAgIT09IG8gfHwgITAgPT09IGEudmVyeWZpcnN0c3RzdGljIHx8IChBLmJ1aWxkRnVsbFRpbWVMaW5lKHsKICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBpLAogICAgICAgICAgICAgICAgICAgIG9wdDogcCwKICAgICAgICAgICAgICAgICAgICBvZmZzZXR4OiBzLAogICAgICAgICAgICAgICAgICAgIG9mZnNldHk6IDAsCiAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGUsCiAgICAgICAgICAgICAgICAgICAgcmVjYWxsOiBuLAogICAgICAgICAgICAgICAgICAgIHByZXNldDogciwKICAgICAgICAgICAgICAgICAgICByZWdlbmVyYXRlOiAwID09PSBvCiAgICAgICAgICAgICAgICB9KSwgYS52ZXJ5Zmlyc3RzdHN0aWMgPSAhMCksIG4gJiYgImNhcm91c2VsIiA9PT0gcC5zbGlkZXJUeXBlICYmICJvbiIgPT09IHAuY2Fyb3VzZWwuc2hvd0xheWVyc0FsbFRpbWUgJiYgQS5hbmltY29tcGxldGVkKGksIHApKSA6IEEucHJlcGFyZVNpbmdsZUNhcHRpb24oewogICAgICAgICAgICAgICAgICAgIGNhcHRpb246IGksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBwLAogICAgICAgICAgICAgICAgICAgIG9mZnNldHg6IHMsCiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0eTogMCwKICAgICAgICAgICAgICAgICAgICBpbmRleDogZSwKICAgICAgICAgICAgICAgICAgICByZWNhbGw6IG4sCiAgICAgICAgICAgICAgICAgICAgcHJlc2V0OiByCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgdmFyIGcgPSAtMSA9PT0gcC5uZXh0U2xpZGUgfHwgdm9pZCAwID09PSBwLm5leHRTbGlkZSA/IDAgOiBwLm5leHRTbGlkZTsKICAgICAgICAgICAgdm9pZCAwICE9PSBwLnJvd3pvbmVzICYmIChnID0gZyA+IHAucm93em9uZXMubGVuZ3RoID8gcC5yb3d6b25lcy5sZW5ndGggOiBnKSwgbnVsbCAhPSBwLnJvd3pvbmVzICYmIDAgPCBwLnJvd3pvbmVzLmxlbmd0aCAmJiBudWxsICE9IHAucm93em9uZXNbZ10gJiYgMCA8PSBnICYmIGcgPD0gcC5yb3d6b25lcy5sZW5ndGggJiYgMCA8IHAucm93em9uZXNbZ10ubGVuZ3RoICYmIEEuc2V0U2l6ZShwKSwgciB8fCB2b2lkIDAgIT09IG8gJiYgKHZvaWQgMCAhPT0gYSAmJiBqUXVlcnkuZWFjaChwLnRpbWVsaW5lc1thXS5sYXllcnMsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdC5sYXllci5kYXRhKCk7CiAgICAgICAgICAgICAgICAibm9uZSIgIT09IHQud3JhcHBlciAmJiB2b2lkIDAgIT09IHQud3JhcHBlciB8fCAoImtlZXAiID09IHQudHJpZ2dlcnN0YXRlICYmICJvbiIgPT09IGkudHJpZ2dlcnN0YXRlID8gQS5wbGF5QW5pbWF0aW9uRnJhbWUoewogICAgICAgICAgICAgICAgICAgIGNhcHRpb246IHQubGF5ZXIsCiAgICAgICAgICAgICAgICAgICAgb3B0OiBwLAogICAgICAgICAgICAgICAgICAgIGZyYW1lOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcmRpcmVjdGlvbjogImluIiwKICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVpbjogImZyYW1lXzAiLAogICAgICAgICAgICAgICAgICAgIHRyaWdnZXJmcmFtZW91dDogImZyYW1lXzk5OSIKICAgICAgICAgICAgICAgIH0pIDogdC50aW1lbGluZS5yZXN0YXJ0KCkpCiAgICAgICAgICAgIH0pLCBwLnRpbWVsaW5lcy5zdGF0aWNsYXllcnMgJiYgalF1ZXJ5LmVhY2gocC50aW1lbGluZXMuc3RhdGljbGF5ZXJzLmxheWVycywgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSB0LmxheWVyLmRhdGEoKSwKICAgICAgICAgICAgICAgICAgICBhID0gZyA+PSB0LmZpcnN0c2xpZGUgJiYgZyA8PSB0Lmxhc3RzbGlkZSwKICAgICAgICAgICAgICAgICAgICBuID0gZyA8IHQuZmlyc3RzbGlkZSB8fCBnID4gdC5sYXN0c2xpZGUsCiAgICAgICAgICAgICAgICAgICAgciA9IHQudGltZWxpbmUuZ2V0TGFiZWxUaW1lKCJzbGlkZV8iICsgdC5maXJzdHNsaWRlKSwKICAgICAgICAgICAgICAgICAgICBvID0gdC50aW1lbGluZS5nZXRMYWJlbFRpbWUoInNsaWRlXyIgKyB0Lmxhc3RzbGlkZSksCiAgICAgICAgICAgICAgICAgICAgcyA9IGkuc3RhdGljX2xheWVyX3RpbWVsaW5lX3RpbWUsCiAgICAgICAgICAgICAgICAgICAgZCA9ICJpbiIgPT09IGkuYW5pbWRpcmVjdGlvbiB8fCAib3V0IiAhPT0gaS5hbmltZGlyZWN0aW9uICYmIHZvaWQgMCwKICAgICAgICAgICAgICAgICAgICBsID0gImJ5dHJpZ2dlciIgPT09IGkuZnJhbWVzWzBdLmRlbGF5LAogICAgICAgICAgICAgICAgICAgIG0gPSAoaS5mcmFtZXNbaS5mcmFtZXMubGVuZ3RoIC0gMV0uZGVsYXksIGkudHJpZ2dlcmVkX3N0YXJ0c3RhdHVzKSwKICAgICAgICAgICAgICAgICAgICBjID0gaS5sYXN0dHJpZ2dlcnN0YXRlOwogICAgICAgICAgICAgICAgITAgIT09IGkuaG92ZXJlZHN0YXR1cyAmJiAxICE9IGkuaW5ob3Zlcm91dGFuaW1hdGlvbiAmJiAodm9pZCAwICE9PSBzICYmIGQgJiYgKCJrZWVwIiA9PSBjID8gKEEucGxheUFuaW1hdGlvbkZyYW1lKHsKICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiB0LmxheWVyLAogICAgICAgICAgICAgICAgICAgIG9wdDogcCwKICAgICAgICAgICAgICAgICAgICBmcmFtZTogImZyYW1lXzAiLAogICAgICAgICAgICAgICAgICAgIHRyaWdnZXJkaXJlY3Rpb246ICJpbiIsCiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcmZyYW1laW46ICJmcmFtZV8wIiwKICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyZnJhbWVvdXQ6ICJmcmFtZV85OTkiCiAgICAgICAgICAgICAgICB9KSwgaS50cmlnZ2VyZWR0aW1lbGluZS50aW1lKHMpKSA6ICEwICE9PSBpLmhvdmVyZWRzdGF0dXMgJiYgdC50aW1lbGluZS50aW1lKHMpKSwgInJlc2V0IiA9PT0gYyAmJiAiaGlkZGVuIiA9PT0gbSAmJiAodC50aW1lbGluZS50aW1lKDApLCBpLmFuaW1kaXJlY3Rpb24gPSAib3V0IiksIGEgPyBkID8gZyA9PT0gdC5sYXN0c2xpZGUgJiYgKHQudGltZWxpbmUucGxheShvKSwgaS5hbmltZGlyZWN0aW9uID0gImluIikgOiAobCB8fCAiaW4iID09PSBpLmFuaW1kaXJlY3Rpb24gfHwgdC50aW1lbGluZS5wbGF5KHIpLCAoInZpc2libGUiID09IG0gJiYgImtlZXAiICE9PSBjIHx8ICJrZWVwIiA9PT0gYyAmJiAhMCA9PT0gZCB8fCAidmlzaWJsZSIgPT0gbSAmJiB2b2lkIDAgPT09IGQpICYmICh0LnRpbWVsaW5lLnBsYXkociArIC4wMSksIGkuYW5pbWRpcmVjdGlvbiA9ICJpbiIpKSA6IG4gJiYgZCAmJiB0LnRpbWVsaW5lLnBsYXkoImZyYW1lXzk5OSIpKQogICAgICAgICAgICB9KSksIG51bGwgIT0gaSAmJiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5yZXN1bWUoKQogICAgICAgICAgICB9LCAzMCkKICAgICAgICB9LAogICAgICAgIHByZXBhcmVTaW5nbGVDYXB0aW9uOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gZS5jYXB0aW9uLAogICAgICAgICAgICAgICAgaSA9IHQuZGF0YSgpLAogICAgICAgICAgICAgICAgYSA9IGUub3B0LAogICAgICAgICAgICAgICAgbiA9IGUucmVjYWxsLAogICAgICAgICAgICAgICAgciA9IGUucmVjYWxsLAogICAgICAgICAgICAgICAgbyA9IChlLnByZXNldCwgalF1ZXJ5KCJib2R5IikuaGFzQ2xhc3MoInJ0bCIpKTsKICAgICAgICAgICAgaWYgKGkuX3B3ID0gdm9pZCAwID09PSBpLl9wdyA/IHQuY2xvc2VzdCgiLnRwLXBhcmFsbGF4LXdyYXAiKSA6IGkuX3B3LCBpLl9sdyA9IHZvaWQgMCA9PT0gaS5fbHcgPyB0LmNsb3Nlc3QoIi50cC1sb29wLXdyYXAiKSA6IGkuX2x3LCBpLl9tdyA9IHZvaWQgMCA9PT0gaS5fbXcgPyB0LmNsb3Nlc3QoIi50cC1tYXNrLXdyYXAiKSA6IGkuX213LCBpLl9yZXNwb25zaXZlID0gaS5yZXNwb25zaXZlIHx8ICJvbiIsIGkuX3Jlc3BvZmZzZXQgPSBpLnJlc3BvbnNpdmVfb2Zmc2V0IHx8ICJvbiIsIGkuX2JhID0gaS5iYXNlYWxpZ24gfHwgImdyaWQiLCBpLl9ndyA9ICJncmlkIiA9PT0gaS5fYmEgPyBhLndpZHRoIDogYS51bHcsIGkuX2doID0gImdyaWQiID09PSBpLl9iYSA/IGEuaGVpZ2h0IDogYS51bGgsIGkuX2xpZyA9IHZvaWQgMCA9PT0gaS5fbGlnID8gdC5oYXNDbGFzcygicmV2X2xheWVyX2luX2dyb3VwIikgPyB0LmNsb3Nlc3QoIi5yZXZfZ3JvdXAiKSA6IHQuaGFzQ2xhc3MoInJldl9sYXllcl9pbl9jb2x1bW4iKSA/IHQuY2xvc2VzdCgiLnJldl9jb2x1bW5faW5uZXIiKSA6IHQuaGFzQ2xhc3MoInJldl9jb2x1bW5faW5uZXIiKSA/IHQuY2xvc2VzdCgiLnJldl9yb3ciKSA6ICJub25lIiA6IGkuX2xpZywgaS5fY29sdW1uID0gdm9pZCAwID09PSBpLl9jb2x1bW4gPyB0Lmhhc0NsYXNzKCJyZXZfY29sdW1uX2lubmVyIikgPyB0LmNsb3Nlc3QoIi5yZXZfY29sdW1uIikgOiAibm9uZSIgOiBpLl9jb2x1bW4sIGkuX3JvdyA9IHZvaWQgMCA9PT0gaS5fcm93ID8gdC5oYXNDbGFzcygicmV2X2NvbHVtbl9pbm5lciIpID8gdC5jbG9zZXN0KCIucmV2X3JvdyIpIDogIm5vbmUiIDogaS5fcm93LCBpLl9pbmdyb3VwID0gdm9pZCAwID09PSBpLl9pbmdyb3VwID8gISh0Lmhhc0NsYXNzKCJyZXZfZ3JvdXAiKSB8fCAhdC5jbG9zZXN0KCIucmV2X2dyb3VwIikpIDogaS5faW5ncm91cCwgaS5faXNncm91cCA9IHZvaWQgMCA9PT0gaS5faXNncm91cCA/ICEhdC5oYXNDbGFzcygicmV2X2dyb3VwIikgOiBpLl9pc2dyb3VwLCBpLl9uY3R5cGUgPSBpLnR5cGUgfHwgIm5vbmUiLCBpLl9jYmdjX2F1dG8gPSB2b2lkIDAgPT09IGkuX2NiZ2NfYXV0byA/ICJjb2x1bW4iID09PSBpLl9uY3R5cGUgJiYgaS5fcHcuZmluZCgiLnJldl9jb2x1bW5fYmdfYXV0b19zaXplZCIpIDogaS5fY2JnY19hdXRvLCBpLl9jYmdjX21hbiA9IHZvaWQgMCA9PT0gaS5fY2JnY19tYW4gPyAiY29sdW1uIiA9PT0gaS5fbmN0eXBlICYmIGkuX3B3LmZpbmQoIi5yZXZfY29sdW1uX2JnX21hbl9zaXplZCIpIDogaS5fY2JnY19tYW4sIGkuX3NsaWRlaWQgPSBpLl9zbGlkZWlkIHx8IHQuY2xvc2VzdCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmRhdGEoImluZGV4IiksIGkuX2lkID0gdm9pZCAwID09PSBpLl9pZCA/IHQuZGF0YSgiaWQiKSB8fCB0LmF0dHIoImlkIikgOiBpLl9pZCwgaS5fc2xpZGVsaW5rID0gdm9pZCAwID09PSBpLl9zbGlkZWxpbmsgPyB2b2lkIDAgIT09IHQuaGFzQ2xhc3MoInNsaWRlbGluayIpICYmIHQuaGFzQ2xhc3MoInNsaWRlbGluayIpIDogaS5fc2xpZGVsaW5rLCB2b2lkIDAgPT09IGkuX2xpICYmICh0Lmhhc0NsYXNzKCJ0cC1zdGF0aWMtbGF5ZXIiKSA/IChpLl9pc3N0YXRpYyA9ICEwLCBpLl9saSA9IHQuY2xvc2VzdCgiLnRwLXN0YXRpYy1sYXllcnMiKSwgaS5fc2xpZGVpZCA9ICJzdGF0aWNsYXllcnMiKSA6IGkuX2xpID0gdC5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIikpLCBpLl9yb3cgPSB2b2lkIDAgPT09IGkuX3JvdyA/ICJjb2x1bW4iID09PSBpLl9uY3R5cGUgJiYgaS5fcHcuY2xvc2VzdCgiLnJldl9yb3ciKSA6IGkuX3Jvdywgdm9pZCAwID09PSBpLl90b2dnbGVsaXN0ZW5lcnMgJiYgdC5maW5kKCIucnMtdG9nZ2xlZC1jb250ZW50IikgPyAoaS5fdG9nZ2xlbGlzdGVuZXJzID0gITAsIHZvaWQgMCA9PT0gaS5hY3Rpb25zICYmIHQuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgQS5zd2FwdG9nZ2xlU3RhdGUodCkKICAgICAgICAgICAgICAgIH0pKSA6IGkuX3RvZ2dsZWxpc3RlbmVycyA9ICExLCAiZnVsbHNjcmVlbiIgPT0gYS5zbGlkZXJMYXlvdXQgJiYgKGUub2Zmc2V0eSA9IGkuX2doIC8gMiAtIGEuZ3JpZGhlaWdodFthLmN1cldpblJhbmdlXSAqIGEuYmggLyAyKSwgKCJvbiIgPT0gYS5hdXRvSGVpZ2h0IHx8IG51bGwgIT0gYS5taW5IZWlnaHQgJiYgMCA8IGEubWluSGVpZ2h0KSAmJiAoZS5vZmZzZXR5ID0gYS5jb25oIC8gMiAtIGEuZ3JpZGhlaWdodFthLmN1cldpblJhbmdlXSAqIGEuYmggLyAyKSwgZS5vZmZzZXR5IDwgMCAmJiAoZS5vZmZzZXR5ID0gMCksIGEuZGVidWdNb2RlKSB7CiAgICAgICAgICAgICAgICB0LmNsb3Nlc3QoImxpIikuZmluZCgiLmhlbHBncmlkIikuY3NzKHsKICAgICAgICAgICAgICAgICAgICB0b3A6IGUub2Zmc2V0eSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogZS5vZmZzZXR4ICsgInB4IgogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgcyA9IGEuYy5maW5kKCIuaGdsYXllcmluZm8iKTsKICAgICAgICAgICAgICAgIHQub24oImhvdmVyLCBtb3VzZWVudGVyIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSAiIjsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoKSAmJiBqUXVlcnkuZWFjaCh0LmRhdGEoKSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgICAgICAgICAib2JqZWN0IiAhPSB0eXBlb2YgdCAmJiAoaSA9IGkgKyAnPHNwYW4gc3R5bGU9IndoaXRlLXNwYWNlOm5vd3JhcCI+PHNwYW4gc3R5bGU9ImNvbG9yOiMyN2FlNjAiPicgKyBlICsgIjo8L3NwYW4+IiArIHQgKyAiPC9zcGFuPiZuYnNwOyAmbmJzcDsgIikKICAgICAgICAgICAgICAgICAgICB9KSwgcy5odG1sKGkpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgib2ZmIiA9PT0gKHZvaWQgMCA9PT0gaS52aXNpYmlsaXR5ID8gIm9vbiIgOiBOKGkudmlzaWJpbGl0eSwgYSlbYS5mb3JjZWRXaW5SYW5nZV0gfHwgTihpLnZpc2liaWxpdHksIGEpIHx8ICJvb29uIikgfHwgaS5fZ3cgPCBhLmhpZGVDYXB0aW9uQXRMaW1pdCAmJiAib24iID09IGkuY2FwdGlvbmhpZGRlbiB8fCBpLl9ndyA8IGEuaGlkZUFsbENhcHRpb25BdExpbWl0ID8gaS5fcHcuYWRkQ2xhc3MoInRwLWhpZGRlbi1jYXB0aW9uIikgOiBpLl9wdy5yZW1vdmVDbGFzcygidHAtaGlkZGVuLWNhcHRpb24iKSwgaS5sYXllcnR5cGUgPSAiaHRtbCIsIGUub2Zmc2V0eCA8IDAgJiYgKGUub2Zmc2V0eCA9IDApLCBudWxsICE9IGkudGh1bWJpbWFnZSAmJiBudWxsID09IGkudmlkZW9wb3N0ZXIgJiYgKGkudmlkZW9wb3N0ZXIgPSBpLnRodW1iaW1hZ2UpLCAwIDwgdC5maW5kKCJpbWciKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHZhciBkID0gdC5maW5kKCJpbWciKTsKICAgICAgICAgICAgICAgIGkubGF5ZXJ0eXBlID0gImltYWdlIiwgMCA9PSBkLndpZHRoKCkgJiYgZC5jc3MoewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiAiYXV0byIKICAgICAgICAgICAgICAgIH0pLCAwID09IGQuaGVpZ2h0KCkgJiYgZC5jc3MoewogICAgICAgICAgICAgICAgICAgIGhlaWdodDogImF1dG8iCiAgICAgICAgICAgICAgICB9KSwgbnVsbCA9PSBkLmRhdGEoInd3IikgJiYgMCA8IGQud2lkdGgoKSAmJiBkLmRhdGEoInd3IiwgZC53aWR0aCgpKSwgbnVsbCA9PSBkLmRhdGEoImhoIikgJiYgMCA8IGQuaGVpZ2h0KCkgJiYgZC5kYXRhKCJoaCIsIGQuaGVpZ2h0KCkpOwogICAgICAgICAgICAgICAgdmFyIGwgPSBkLmRhdGEoInd3IiksCiAgICAgICAgICAgICAgICAgICAgbSA9IGQuZGF0YSgiaGgiKSwKICAgICAgICAgICAgICAgICAgICBjID0gInNsaWRlIiA9PSBpLl9iYSA/IGEudWx3IDogYS5ncmlkd2lkdGhbYS5jdXJXaW5SYW5nZV0sCiAgICAgICAgICAgICAgICAgICAgcCA9ICJzbGlkZSIgPT0gaS5fYmEgPyBhLnVsaCA6IGEuZ3JpZGhlaWdodFthLmN1cldpblJhbmdlXSwKICAgICAgICAgICAgICAgICAgICBnID0gImZ1bGwiID09PSAobCA9IE4oZC5kYXRhKCJ3dyIpLCBhKVthLmN1cldpblJhbmdlXSB8fCBOKGQuZGF0YSgid3ciKSwgYSkgfHwgImF1dG8iKSB8fCAiZnVsbC1wcm9wb3J0aW9uYWwiID09PSBsLAogICAgICAgICAgICAgICAgICAgIHUgPSAiZnVsbCIgPT09IChtID0gTihkLmRhdGEoImhoIiksIGEpW2EuY3VyV2luUmFuZ2VdIHx8IE4oZC5kYXRhKCJoaCIpLCBhKSB8fCAiYXV0byIpIHx8ICJmdWxsLXByb3BvcnRpb25hbCIgPT09IG07CiAgICAgICAgICAgICAgICBpZiAoImZ1bGwtcHJvcG9ydGlvbmFsIiA9PT0gbCkgewogICAgICAgICAgICAgICAgICAgIHZhciBmID0gZC5kYXRhKCJvd2lkdGgiKSwKICAgICAgICAgICAgICAgICAgICAgICAgaCA9IGQuZGF0YSgib2hlaWdodCIpOwogICAgICAgICAgICAgICAgICAgIGYgLyBjIDwgaCAvIHAgPyBtID0gaCAqICgobCA9IGMpIC8gZikgOiBsID0gZiAqICgobSA9IHApIC8gaCkKICAgICAgICAgICAgICAgIH0gZWxzZSBsID0gZyA/IGMgOiAhalF1ZXJ5LmlzTnVtZXJpYyhsKSAmJiAwIDwgbC5pbmRleE9mKCIlIikgPyBsIDogcGFyc2VGbG9hdChsKSwgbSA9IHUgPyBwIDogIWpRdWVyeS5pc051bWVyaWMobSkgJiYgMCA8IG0uaW5kZXhPZigiJSIpID8gbSA6IHBhcnNlRmxvYXQobSk7CiAgICAgICAgICAgICAgICBsID0gdm9pZCAwID09PSBsID8gMCA6IGwsIG0gPSB2b2lkIDAgPT09IG0gPyAwIDogbSwgIm9mZiIgIT09IGkuX3Jlc3BvbnNpdmUgPyAoImdyaWQiICE9IGkuX2JhICYmIGcgPyBqUXVlcnkuaXNOdW1lcmljKGwpID8gZC5jc3MoewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBsICsgInB4IgogICAgICAgICAgICAgICAgfSkgOiBkLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGwKICAgICAgICAgICAgICAgIH0pIDogalF1ZXJ5LmlzTnVtZXJpYyhsKSA/IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbCAqIGEuYncgKyAicHgiCiAgICAgICAgICAgICAgICB9KSA6IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbAogICAgICAgICAgICAgICAgfSksICJncmlkIiAhPSBpLl9iYSAmJiB1ID8galF1ZXJ5LmlzTnVtZXJpYyhtKSA/IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG0gKyAicHgiCiAgICAgICAgICAgICAgICB9KSA6IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG0KICAgICAgICAgICAgICAgIH0pIDogalF1ZXJ5LmlzTnVtZXJpYyhtKSA/IGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG0gKiBhLmJoICsgInB4IgogICAgICAgICAgICAgICAgfSkgOiBkLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBtCiAgICAgICAgICAgICAgICB9KSkgOiBkLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGwsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBtCiAgICAgICAgICAgICAgICB9KSwgaS5faW5ncm91cCAmJiAicm93IiAhPT0gaS5fbmN0eXBlICYmICh2b2lkIDAgIT09IGwgJiYgIWpRdWVyeS5pc051bWVyaWMobCkgJiYgInN0cmluZyIgPT09IGpRdWVyeS50eXBlKGwpICYmIDAgPCBsLmluZGV4T2YoIiUiKSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoW2kuX2x3LCBpLl9wdywgaS5fbXddLCB7CiAgICAgICAgICAgICAgICAgICAgbWluV2lkdGg6IGwKICAgICAgICAgICAgICAgIH0pLCB2b2lkIDAgIT09IG0gJiYgIWpRdWVyeS5pc051bWVyaWMobSkgJiYgInN0cmluZyIgPT09IGpRdWVyeS50eXBlKG0pICYmIDAgPCBtLmluZGV4T2YoIiUiKSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoW2kuX2x3LCBpLl9wdywgaS5fbXddLCB7CiAgICAgICAgICAgICAgICAgICAgbWluSGVpZ2h0OiBtCiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoInNsaWRlIiA9PT0gaS5fYmEpIGUub2Zmc2V0eCA9IDAsIGUub2Zmc2V0eSA9IDA7CiAgICAgICAgICAgIGVsc2UgaWYgKGkuX2lzc3RhdGljICYmIHZvaWQgMCAhPT0gYS5jYXJvdXNlbCAmJiB2b2lkIDAgIT09IGEuY2Fyb3VzZWwuaG9yaXpvbnRhbF9hbGlnbiAmJiAiY2Fyb3VzZWwiID09PSBhLnNsaWRlclR5cGUpIHsKICAgICAgICAgICAgICAgIHN3aXRjaCAoYS5jYXJvdXNlbC5ob3Jpem9udGFsX2FsaWduKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiY2VudGVyIjoKICAgICAgICAgICAgICAgICAgICAgICAgZS5vZmZzZXR4ID0gMCArIChhLnVsdyAtIGEuZ3JpZHdpZHRoW2EuY3VyV2luUmFuZ2VdICogYS5idykgLyAyOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICJsZWZ0IjoKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAicmlnaHQiOgogICAgICAgICAgICAgICAgICAgICAgICBlLm9mZnNldHggPSBhLnVsdyAtIGEuZ3JpZHdpZHRoW2EuY3VyV2luUmFuZ2VdICogYS5idwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZS5vZmZzZXR4ID0gZS5vZmZzZXR4IDwgMCA/IDAgOiBlLm9mZnNldHgKICAgICAgICAgICAgfQogICAgICAgICAgICB2YXIgdiA9ICJodG1sNSIgPT0gaS5hdWRpbyA/ICJhdWRpbyIgOiAidmlkZW8iOwogICAgICAgICAgICBpZiAodC5oYXNDbGFzcygidHAtdmlkZW9sYXllciIpIHx8IHQuaGFzQ2xhc3MoInRwLWF1ZGlvbGF5ZXIiKSB8fCAwIDwgdC5maW5kKCJpZnJhbWUiKS5sZW5ndGggfHwgMCA8IHQuZmluZCh2KS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIGkubGF5ZXJ0eXBlID0gInZpZGVvIiwgQS5tYW5hZ2VWaWRlb0xheWVyICYmIEEubWFuYWdlVmlkZW9MYXllcih0LCBhLCBuLCByKSwgbiB8fCByIHx8IChpLnZpZGVvdHlwZSwgQS5yZXNldFZpZGVvICYmIEEucmVzZXRWaWRlbyh0LCBhLCBlLnByZXNldCkpOwogICAgICAgICAgICAgICAgdmFyIF8gPSBpLmFzcGVjdHJhdGlvOwogICAgICAgICAgICAgICAgbnVsbCAhPSBfICYmIDEgPCBfLnNwbGl0KCI6IikubGVuZ3RoICYmIEEucHJlcGFyZUNvdmVyZWRWaWRlbyhhLCB0KSwgZCA9IHQuZmluZCgiaWZyYW1lIikgPyB0LmZpbmQoImlmcmFtZSIpIDogZCA9IHQuZmluZCh2KTsKICAgICAgICAgICAgICAgIHZhciBiID0gIXQuZmluZCgiaWZyYW1lIiksCiAgICAgICAgICAgICAgICAgICAgeSA9IHQuaGFzQ2xhc3MoImNvdmVyc2NyZWVudmlkZW8iKTsKICAgICAgICAgICAgICAgIGQuY3NzKHsKICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAiYmxvY2siCiAgICAgICAgICAgICAgICB9KSwgbnVsbCA9PSB0LmRhdGEoInZpZGVvd2lkdGgiKSAmJiAodC5kYXRhKCJ2aWRlb3dpZHRoIiwgZC53aWR0aCgpKSwgdC5kYXRhKCJ2aWRlb2hlaWdodCIsIGQuaGVpZ2h0KCkpKSwgbCA9IE4odC5kYXRhKCJ2aWRlb3dpZHRoIiksIGEpW2EuY3VyV2luUmFuZ2VdIHx8IE4odC5kYXRhKCJ2aWRlb3dpZHRoIiksIGEpIHx8ICJhdXRvIiwgbSA9IE4odC5kYXRhKCJ2aWRlb2hlaWdodCIpLCBhKVthLmN1cldpblJhbmdlXSB8fCBOKHQuZGF0YSgidmlkZW9oZWlnaHQiKSwgYSkgfHwgImF1dG8iLCBsID0gImF1dG8iID09PSBsIHx8ICFqUXVlcnkuaXNOdW1lcmljKGwpICYmIDAgPCBsLmluZGV4T2YoIiUiKSA/ICJhdXRvIiA9PT0gbCA/ICJhdXRvIiA6ICJncmlkIiA9PT0gaS5fYmEgPyBhLmdyaWR3aWR0aFthLmN1cldpblJhbmdlXSAqIGEuYncgOiBpLl9ndyA6IHBhcnNlRmxvYXQobCkgKiBhLmJ3ICsgInB4IiwgbSA9ICJhdXRvIiA9PT0gbSB8fCAhalF1ZXJ5LmlzTnVtZXJpYyhtKSAmJiAwIDwgbS5pbmRleE9mKCIlIikgPyAiYXV0byIgPT09IG0gPyAiYXV0byIgOiAiZ3JpZCIgPT09IGkuX2JhID8gYS5ncmlkaGVpZ2h0W2EuY3VyV2luUmFuZ2VdICogYS5idyA6IGkuX2doIDogcGFyc2VGbG9hdChtKSAqIGEuYmggKyAicHgiLCBpLmNzc29iaiA9IHZvaWQgMCA9PT0gaS5jc3NvYmogPyBWKHQsIDApIDogaS5jc3NvYmo7CiAgICAgICAgICAgICAgICB2YXIgdyA9IFooaS5jc3NvYmosIGEpOwogICAgICAgICAgICAgICAgaWYgKCJhdXRvIiA9PSB3LmxpbmVIZWlnaHQgJiYgKHcubGluZUhlaWdodCA9IHcuZm9udFNpemUgKyA0KSwgdC5oYXNDbGFzcygiZnVsbHNjcmVlbnZpZGVvIikgfHwgeSkgewogICAgICAgICAgICAgICAgICAgIGUub2Zmc2V0eCA9IDAsIGUub2Zmc2V0eSA9IDAsIHQuZGF0YSgieCIsIDApLCB0LmRhdGEoInkiLCAwKTsKICAgICAgICAgICAgICAgICAgICB2YXIgeCA9IGkuX2doOwogICAgICAgICAgICAgICAgICAgICJvbiIgPT0gYS5hdXRvSGVpZ2h0ICYmICh4ID0gYS5jb25oKSwgdC5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogaS5fZ3csCiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogeAogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9IGVsc2UgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nVG9wOiBNYXRoLnJvdW5kKHcucGFkZGluZ1RvcCAqIGEuYmgpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nQm90dG9tOiBNYXRoLnJvdW5kKHcucGFkZGluZ0JvdHRvbSAqIGEuYmgpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nTGVmdDogTWF0aC5yb3VuZCh3LnBhZGRpbmdMZWZ0ICogYS5idykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIHBhZGRpbmdSaWdodDogTWF0aC5yb3VuZCh3LnBhZGRpbmdSaWdodCAqIGEuYncpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBtYXJnaW5Ub3A6IHcubWFyZ2luVG9wICogYS5iaCArICJweCIsCiAgICAgICAgICAgICAgICAgICAgbWFyZ2luQm90dG9tOiB3Lm1hcmdpbkJvdHRvbSAqIGEuYmggKyAicHgiLAogICAgICAgICAgICAgICAgICAgIG1hcmdpbkxlZnQ6IHcubWFyZ2luTGVmdCAqIGEuYncgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIG1hcmdpblJpZ2h0OiB3Lm1hcmdpblJpZ2h0ICogYS5idyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wV2lkdGg6IE1hdGgucm91bmQody5ib3JkZXJUb3BXaWR0aCAqIGEuYmgpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b21XaWR0aDogTWF0aC5yb3VuZCh3LmJvcmRlckJvdHRvbVdpZHRoICogYS5iaCkgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGJvcmRlckxlZnRXaWR0aDogTWF0aC5yb3VuZCh3LmJvcmRlckxlZnRXaWR0aCAqIGEuYncpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBib3JkZXJSaWdodFdpZHRoOiBNYXRoLnJvdW5kKHcuYm9yZGVyUmlnaHRXaWR0aCAqIGEuYncpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbCwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgKDAgPT0gYiAmJiAheSB8fCAxICE9IGkuZm9yY2Vjb3ZlciAmJiAhdC5oYXNDbGFzcygiZnVsbHNjcmVlbnZpZGVvIikgJiYgIXkpICYmIChkLndpZHRoKGwpLCBkLmhlaWdodChtKSksIGkuX2luZ3JvdXAgJiYgbnVsbCAhPT0gaS52aWRlb3dpZHRoICYmIHZvaWQgMCAhPT0gaS52aWRlb3dpZHRoICYmICFqUXVlcnkuaXNOdW1lcmljKGkudmlkZW93aWR0aCkgJiYgMCA8IGkudmlkZW93aWR0aC5pbmRleE9mKCIlIikgJiYgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KFtpLl9sdywgaS5fcHcsIGkuX213XSwgewogICAgICAgICAgICAgICAgICAgIG1pbldpZHRoOiBpLnZpZGVvd2lkdGgKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgRSh0LCBhLCAwLCBpLl9yZXNwb25zaXZlKSwgdC5oYXNDbGFzcygidHAtcmVzaXplbWUiKSAmJiB0LmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgRShqUXVlcnkodGhpcyksIGEsICJyZWt1cnNpdmUiLCBpLl9yZXNwb25zaXZlKQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgdmFyIFQgPSB0Lm91dGVySGVpZ2h0KCksCiAgICAgICAgICAgICAgICBrID0gdC5jc3MoImJhY2tncm91bmRDb2xvciIpOwogICAgICAgICAgICBEKHQsICIuZnJvbnRjb3JuZXIiLCAibGVmdCIsICJib3JkZXJSaWdodCIsICJib3JkZXJUb3BDb2xvciIsIFQsIGspLCBEKHQsICIuZnJvbnRjb3JuZXJ0b3AiLCAibGVmdCIsICJib3JkZXJSaWdodCIsICJib3JkZXJCb3R0b21Db2xvciIsIFQsIGspLCBEKHQsICIuYmFja2Nvcm5lciIsICJyaWdodCIsICJib3JkZXJMZWZ0IiwgImJvcmRlckJvdHRvbUNvbG9yIiwgVCwgayksIEQodCwgIi5iYWNrY29ybmVydG9wIiwgInJpZ2h0IiwgImJvcmRlckxlZnQiLCAiYm9yZGVyVG9wQ29sb3IiLCBULCBrKSwgIm9uIiA9PSBhLmZ1bGxTY3JlZW5BbGlnbkZvcmNlICYmIChlLm9mZnNldHggPSAwLCBlLm9mZnNldHkgPSAwKSwgImJsb2NrIiA9PT0gaS5fc2Z4ICYmIHZvaWQgMCA9PT0gaS5fYm1hc2sgJiYgKGkuX2JtYXNrID0galF1ZXJ5KCc8ZGl2IGNsYXNzPSJ0cC1ibG9ja21hc2siPjwvZGl2PicpLCBpLl9tdy5hcHBlbmQoaS5fYm1hc2spKSwgaS5hcnJvYmogPSBuZXcgT2JqZWN0LCBpLmFycm9iai52b2EgPSBOKGkudm9mZnNldCwgYSlbYS5jdXJXaW5SYW5nZV0gfHwgTihpLnZvZmZzZXQsIGEpWzBdLCBpLmFycm9iai5ob2EgPSBOKGkuaG9mZnNldCwgYSlbYS5jdXJXaW5SYW5nZV0gfHwgTihpLmhvZmZzZXQsIGEpWzBdLCBpLmFycm9iai5lbHggPSBOKGkueCwgYSlbYS5jdXJXaW5SYW5nZV0gfHwgTihpLngsIGEpWzBdLCBpLmFycm9iai5lbHkgPSBOKGkueSwgYSlbYS5jdXJXaW5SYW5nZV0gfHwgTihpLnksIGEpWzBdOwogICAgICAgICAgICB2YXIgaiA9IDAgPT0gaS5hcnJvYmoudm9hLmxlbmd0aCA/IDAgOiBpLmFycm9iai52b2EsCiAgICAgICAgICAgICAgICBMID0gMCA9PSBpLmFycm9iai5ob2EubGVuZ3RoID8gMCA6IGkuYXJyb2JqLmhvYSwKICAgICAgICAgICAgICAgIEkgPSAwID09IGkuYXJyb2JqLmVseC5sZW5ndGggPyAwIDogaS5hcnJvYmouZWx4LAogICAgICAgICAgICAgICAgVyA9IDAgPT0gaS5hcnJvYmouZWx5Lmxlbmd0aCA/IDAgOiBpLmFycm9iai5lbHk7CiAgICAgICAgICAgIGkuZW93ID0gdC5vdXRlcldpZHRoKCEwKSwgaS5lb2ggPSB0Lm91dGVySGVpZ2h0KCEwKSwgMCA9PSBpLmVvdyAmJiAwID09IGkuZW9oICYmIChpLmVvdyA9IGEudWx3LCBpLmVvaCA9IGEudWxoKTsKICAgICAgICAgICAgdmFyIFIgPSAib2ZmIiAhPT0gaS5fcmVzcG9mZnNldCA/IHBhcnNlSW50KGosIDApICogYS5idyA6IHBhcnNlSW50KGosIDApLAogICAgICAgICAgICAgICAgQyA9ICJvZmYiICE9PSBpLl9yZXNwb2Zmc2V0ID8gcGFyc2VJbnQoTCwgMCkgKiBhLmJ3IDogcGFyc2VJbnQoTCwgMCksCiAgICAgICAgICAgICAgICB6ID0gImdyaWQiID09PSBpLl9iYSA/IGEuZ3JpZHdpZHRoW2EuY3VyV2luUmFuZ2VdICogYS5idyA6IGkuX2d3LAogICAgICAgICAgICAgICAgTyA9ICJncmlkIiA9PT0gaS5fYmEgPyBhLmdyaWRoZWlnaHRbYS5jdXJXaW5SYW5nZV0gKiBhLmJ3IDogaS5fZ2g7CiAgICAgICAgICAgICJvbiIgPT0gYS5mdWxsU2NyZWVuQWxpZ25Gb3JjZSAmJiAoeiA9IGEudWx3LCBPID0gYS51bGgpLCAibm9uZSIgIT09IGkuX2xpZyAmJiBudWxsICE9IGkuX2xpZyAmJiAoeiA9IGkuX2xpZy53aWR0aCgpLCBPID0gaS5fbGlnLmhlaWdodCgpLCBlLm9mZnNldHggPSAwLCBlLm9mZnNldHkgPSAwKSwgSSA9ICJjZW50ZXIiID09PSBJIHx8ICJtaWRkbGUiID09PSBJID8geiAvIDIgLSBpLmVvdyAvIDIgKyBDIDogImxlZnQiID09PSBJID8gQyA6ICJyaWdodCIgPT09IEkgPyB6IC0gaS5lb3cgLSBDIDogIm9mZiIgIT09IGkuX3Jlc3BvZmZzZXQgPyBJICogYS5idyA6IEksIFcgPSAiY2VudGVyIiA9PSBXIHx8ICJtaWRkbGUiID09IFcgPyBPIC8gMiAtIGkuZW9oIC8gMiArIFIgOiAidG9wIiA9PSBXID8gUiA6ICJib3R0b20iID09IFcgPyBPIC0gaS5lb2ggLSBSIDogIm9mZiIgIT09IGkuX3Jlc3BvZmZzZXQgPyBXICogYS5idyA6IFcsIG8gJiYgIWkuX3NsaWRlbGluayAmJiAoSSArPSBpLmVvdyksIGkuX3NsaWRlbGluayAmJiAoSSA9IDApLCBpLmNhbGN4ID0gcGFyc2VJbnQoSSwgMCkgKyBlLm9mZnNldHgsIGkuY2FsY3kgPSBwYXJzZUludChXLCAwKSArIGUub2Zmc2V0eTsKICAgICAgICAgICAgdmFyIFEgPSB0LmNzcygiei1JbmRleCIpOwogICAgICAgICAgICBpZiAoInJvdyIgIT09IGkuX25jdHlwZSAmJiAiY29sdW1uIiAhPT0gaS5fbmN0eXBlKSBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fcHcsIHsKICAgICAgICAgICAgICAgIHpJbmRleDogUSwKICAgICAgICAgICAgICAgIHRvcDogaS5jYWxjeSwKICAgICAgICAgICAgICAgIGxlZnQ6IGkuY2FsY3gsCiAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgZWxzZSBpZiAoInJvdyIgIT09IGkuX25jdHlwZSkgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuX3B3LCB7CiAgICAgICAgICAgICAgICB6SW5kZXg6IFEsCiAgICAgICAgICAgICAgICB3aWR0aDogaS5jb2x1bW53aWR0aCwKICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgZWxzZSBpZiAoInJvdyIgPT09IGkuX25jdHlwZSkgewogICAgICAgICAgICAgICAgdmFyIFMgPSAiZ3JpZCIgPT09IGkuX2JhID8geiArICJweCIgOiAiMTAwJSI7CiAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fcHcsIHsKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IFEsCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IFMsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgIGxlZnQ6IGUub2Zmc2V0eCwKICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodm9pZCAwICE9PSBpLmJsZW5kbW9kZSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fcHcsIHsKICAgICAgICAgICAgICAgICAgICBtaXhCbGVuZE1vZGU6IGkuYmxlbmRtb2RlCiAgICAgICAgICAgICAgICB9KSwgInJvdyIgPT09IGkuX25jdHlwZSAmJiAoaS5jb2x1bW5icmVhayA8PSBhLmN1cldpblJhbmdlID8gdC5hZGRDbGFzcygicmV2X2JyZWFrX2NvbHVtbnMiKSA6IHQucmVtb3ZlQ2xhc3MoInJldl9icmVha19jb2x1bW5zIikpLCAib24iID09IGkubG9vcGFuaW1hdGlvbiAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fbHcsIHsKICAgICAgICAgICAgICAgICAgICBtaW5XaWR0aDogaS5lb3csCiAgICAgICAgICAgICAgICAgICAgbWluSGVpZ2h0OiBpLmVvaAogICAgICAgICAgICAgICAgfSksICJjb2x1bW4iID09PSBpLl9uY3R5cGUpIHsKICAgICAgICAgICAgICAgIHZhciBNID0gdm9pZCAwICE9PSB0WzBdLl9nc1RyYW5zZm9ybSA/IHRbMF0uX2dzVHJhbnNmb3JtLnkgOiAwLAogICAgICAgICAgICAgICAgICAgIFAgPSBwYXJzZUludChpLl9jb2x1bW5bMF0uc3R5bGUucGFkZGluZ1RvcCwgMCk7CiAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIHk6IDAKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fY2JnY19tYW4sIHsKICAgICAgICAgICAgICAgICAgICB5OiBwYXJzZUludChQICsgaS5fY29sdW1uLm9mZnNldCgpLnRvcCAtIHQub2Zmc2V0KCkudG9wLCAwKQogICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgeTogTQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpLl9pbmdyb3VwICYmICJyb3ciICE9PSBpLl9uY3R5cGUgJiYgKHZvaWQgMCAhPT0gaS5fZ3JvdXB3ICYmICFqUXVlcnkuaXNOdW1lcmljKGkuX2dyb3VwdykgJiYgMCA8IGkuX2dyb3Vwdy5pbmRleE9mKCIlIikgJiYgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KFtpLl9sdywgaS5fcHcsIGkuX213XSwgewogICAgICAgICAgICAgICAgbWluV2lkdGg6IGkuX2dyb3VwdwogICAgICAgICAgICB9KSwgdm9pZCAwICE9PSBpLl9ncm91cGggJiYgIWpRdWVyeS5pc051bWVyaWMoaS5fZ3JvdXBoKSAmJiAwIDwgaS5fZ3JvdXBoLmluZGV4T2YoIiUiKSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoW2kuX2x3LCBpLl9wdywgaS5fbXddLCB7CiAgICAgICAgICAgICAgICBtaW5IZWlnaHQ6IGkuX2dyb3VwaAogICAgICAgICAgICB9KSkKICAgICAgICB9LAogICAgICAgIGNyZWF0ZVRpbWVsaW5lU3RydWN0dXJlOiBmdW5jdGlvbihzKSB7CiAgICAgICAgICAgIHMudGltZWxpbmVzID0gcy50aW1lbGluZXMgfHwgbmV3IE9iamVjdCwgcy5jLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGksIC50cC1zdGF0aWMtbGF5ZXJzIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgIG8gPSBlLmRhdGEoImluZGV4Iik7CiAgICAgICAgICAgICAgICBzLnRpbWVsaW5lc1tvXSA9IHMudGltZWxpbmVzW29dIHx8IHt9LCBzLnRpbWVsaW5lc1tvXS5sYXllcnMgPSBzLnRpbWVsaW5lc1tvXS5sYXllcnMgfHwgbmV3IE9iamVjdCwgZS5maW5kKCIudHAtY2FwdGlvbiIpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciB0LCBpLCBhLCBuLCByOwogICAgICAgICAgICAgICAgICAgIHQgPSBqUXVlcnkodGhpcyksIGkgPSBzLnRpbWVsaW5lc1tvXS5sYXllcnMsIGEgPSBvLCByID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlKHsKICAgICAgICAgICAgICAgICAgICAgICAgcGF1c2VkOiAhMAogICAgICAgICAgICAgICAgICAgIH0pLCAoaSA9IGkgfHwgbmV3IE9iamVjdClbdC5hdHRyKCJpZCIpXSA9IGlbdC5hdHRyKCJpZCIpXSB8fCBuZXcgT2JqZWN0LCAic3RhdGljbGF5ZXJzIiA9PT0gYSAmJiAoaVt0LmF0dHIoImlkIildLmZpcnN0c2xpZGUgPSB0LmRhdGEoInN0YXJ0c2xpZGUiKSwgaVt0LmF0dHIoImlkIildLmxhc3RzbGlkZSA9IHQuZGF0YSgiZW5kc2xpZGUiKSksIHQuZGF0YSgic2xpZGVpZCIsIGEpLCBpW3QuYXR0cigiaWQiKV0uZGVmY2xhc3NlcyA9IG4gPSB0WzBdLmNsYXNzTmFtZSwgaVt0LmF0dHIoImlkIildLndyYXBwZXIgPSAwIDw9IG4uaW5kZXhPZigicmV2X2xheWVyX2luX2NvbHVtbiIpID8gdC5jbG9zZXN0KCIucmV2X2NvbHVtbl9pbm5lciIpIDogMCA8PSBuLmluZGV4T2YoInJldl9jb2x1bW5faW5uZXIiKSA/IHQuY2xvc2VzdCgiLnJldl9yb3ciKSA6IDAgPD0gbi5pbmRleE9mKCJyZXZfbGF5ZXJfaW5fZ3JvdXAiKSA/IHQuY2xvc2VzdCgiLnJldl9ncm91cCIpIDogIm5vbmUiLCBpW3QuYXR0cigiaWQiKV0udGltZWxpbmUgPSByLCBpW3QuYXR0cigiaWQiKV0ubGF5ZXIgPSB0LCBpW3QuYXR0cigiaWQiKV0udHJpZ2dlcnN0YXRlID0gdC5kYXRhKCJsYXN0dHJpZ2dlcnN0YXRlIiksIGlbdC5hdHRyKCJpZCIpXS5kY2hpbGRyZW4gPSAwIDw9IG4uaW5kZXhPZigicmV2X3JvdyIpID8gdFswXS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJyZXZfY29sdW1uX2lubmVyIikgOiAwIDw9IG4uaW5kZXhPZigicmV2X2NvbHVtbl9pbm5lciIpID8gdFswXS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJ0cC1jYXB0aW9uIikgOiAwIDw9IG4uaW5kZXhPZigicmV2X2dyb3VwIikgPyB0WzBdLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoInJldl9sYXllcl9pbl9ncm91cCIpIDogIm5vbmUiLCB0LmRhdGEoInRpbWVsaW5lIiwgcikKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBidWlsZEZ1bGxUaW1lTGluZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCwgaSwgYSA9IGUuY2FwdGlvbiwKICAgICAgICAgICAgICAgIG4gPSBhLmRhdGEoKSwKICAgICAgICAgICAgICAgIHIgPSBlLm9wdCwKICAgICAgICAgICAgICAgIG8gPSB7fSwKICAgICAgICAgICAgICAgIHMgPSBoKCk7CiAgICAgICAgICAgIGlmICghKHQgPSByLnRpbWVsaW5lc1tuLl9zbGlkZWlkXS5sYXllcnNbbi5faWRdKS5nZW5lcmF0ZWQgfHwgITAgPT09IGUucmVnZW5lcmF0ZSkgewogICAgICAgICAgICAgICAgaWYgKGkgPSB0LnRpbWVsaW5lLCB0LmdlbmVyYXRlZCA9ICEwLCB2b2lkIDAgIT09IG4uY3VycmVudF90aW1lbGluZSAmJiAhMCAhPT0gZS5yZWdlbmVyYXRlID8gKG4uY3VycmVudF90aW1lbGluZV9wYXVzZSA9IG4uY3VycmVudF90aW1lbGluZS5wYXVzZWQoKSwgbi5jdXJyZW50X3RpbWVsaW5lX3RpbWUgPSBuLmN1cnJlbnRfdGltZWxpbmUudGltZSgpLCBuLmN1cnJlbnRfaXNfbmNfdGltZWxpbmUgPSBpID09PSBuLmN1cnJlbnRfdGltZWxpbmUsIG4uc3RhdGljX2xheWVyX3RpbWVsaW5lX3RpbWUgPSBuLmN1cnJlbnRfdGltZWxpbmVfdGltZSkgOiAobi5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZSA9IG4uY3VycmVudF90aW1lbGluZV90aW1lLCBuLmN1cnJlbnRfdGltZWxpbmVfdGltZSA9IDAsIG4uY3VycmVudF90aW1lbGluZSAmJiBuLmN1cnJlbnRfdGltZWxpbmUuY2xlYXIoKSksIGkuY2xlYXIoKSwgby5zdmcgPSBudWxsICE9IG4uc3ZnX3NyYyAmJiBhLmZpbmQoInN2ZyIpLCBvLnN2ZyAmJiAobi5pZGxlc3ZnID0gZihuLnN2Z19pZGxlLCB1KCkpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoby5zdmcsIG4uaWRsZXN2Zy5hbmltKSksIC0xICE9PSBuLmhvdmVyZnJhbWVpbmRleCAmJiB2b2lkIDAgIT09IG4uaG92ZXJmcmFtZWluZGV4ICYmICFhLmhhc0NsYXNzKCJycy1ob3Zlci1yZWFkeSIpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGEuYWRkQ2xhc3MoInJzLWhvdmVyLXJlYWR5IiksIG4uaG92ZXJ0aW1lbGluZXMgPSB7fSwgbi5ob3ZlcmFuaW0gPSBGKHMsIG4uZnJhbWVzW24uaG92ZXJmcmFtZWluZGV4XS50byksIG4uaG92ZXJhbmltID0gdihuLmhvdmVyYW5pbSwgbi5mcmFtZXNbbi5ob3ZlcmZyYW1laW5kZXhdLnN0eWxlKSwgby5zdmcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGQgPSBmKG4uc3ZnX2hvdmVyLCB1KCkpOwogICAgICAgICAgICAgICAgICAgICAgICBudWxsICE9IG4uaG92ZXJhbmltLmFuaW0uY29sb3IgJiYgKGQuYW5pbS5maWxsID0gbi5ob3ZlcmFuaW0uYW5pbS5jb2xvciwgbi5pZGxlc3ZnLmFuaW0uY3NzLmZpbGwgPSBvLnN2Zy5jc3MoImZpbGwiKSksIG4uaG92ZXJzdmcgPSBkCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGEuaG92ZXIoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXB0aW9uOiBqUXVlcnkoZS5jdXJyZW50VGFyZ2V0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHQ6IHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RmcmFtZTogImZyYW1lXzAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RmcmFtZTogImZyYW1lXzk5OSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gKGcodCksIHQuY2FwdGlvbiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gaS5kYXRhKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gYS5mcmFtZXNbYS5ob3ZlcmZyYW1laW5kZXhdOwogICAgICAgICAgICAgICAgICAgICAgICBhLmZvcmNlaG92ZXIgPSBuLmZvcmNlLCBhLmhvdmVydGltZWxpbmVzLml0ZW0gPSBwdW5jaGdzLlR3ZWVuTGl0ZS50byhpLCBuLnNwZWVkIC8gMWUzLCBhLmhvdmVyYW5pbS5hbmltKSwgKGEuaG92ZXJ6SW5kZXggfHwgYS5ob3ZlcmFuaW0uYW5pbSAmJiBhLmhvdmVyYW5pbS5hbmltLnpJbmRleCkgJiYgKGEuYmFzaWN6aW5kZXggPSB2b2lkIDAgPT09IGEuYmFzaWN6aW5kZXggPyBhLmNzc29iai56SW5kZXggOiBhLmJhc2ljemluZGV4LCBhLmhvdmVyekluZGV4ID0gdm9pZCAwID09PSBhLmhvdmVyekluZGV4ID8gYS5ob3ZlcmFuaW0uYW5pbS56SW5kZXggOiBhLmhvdmVyekluZGV4LCBhLmluaG92ZXJpbmFuaW1hdGlvbiA9ICEwLCAwID09PSBuLnNwZWVkICYmIChhLmluaG92ZXJpbmFuaW1hdGlvbiA9ICExKSwgYS5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbSA9IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEuX3B3LCBuLnNwZWVkIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogYS5ob3ZlcnpJbmRleAogICAgICAgICAgICAgICAgICAgICAgICB9KSwgYS5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbS5ldmVudENhbGxiYWNrKCJvbkNvbXBsZXRlIiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5pbmhvdmVyaW5hbmltYXRpb24gPSAhMQogICAgICAgICAgICAgICAgICAgICAgICB9LCBbYV0pKSwgby5zdmcgJiYgKGEuaG92ZXJ0aW1lbGluZXMuc3ZnaG92ZXJhbmltID0gcHVuY2hncy5Ud2VlbkxpdGUudG8oW28uc3ZnLCBvLnN2Zy5maW5kKCJwYXRoIildLCBuLnNwZWVkIC8gMWUzLCBhLmhvdmVyc3ZnLmFuaW0pKSwgYS5ob3ZlcmVkc3RhdHVzID0gITAKICAgICAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcHRpb246IGpRdWVyeShlLmN1cnJlbnRUYXJnZXQpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdDogciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdGZyYW1lOiAiZnJhbWVfMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdGZyYW1lOiAiZnJhbWVfOTk5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSAoZyh0KSwgdC5jYXB0aW9uKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBpLmRhdGEoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBhLmZyYW1lc1thLmhvdmVyZnJhbWVpbmRleF07CiAgICAgICAgICAgICAgICAgICAgICAgIGEuaG92ZXJlZHN0YXR1cyA9ICExLCBhLmluaG92ZXJvdXRhbmltYXRpb24gPSAhMCwgYS5ob3ZlcnRpbWVsaW5lcy5pdGVtLnBhdXNlKCksIGEuaG92ZXJ0aW1lbGluZXMuaXRlbSA9IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGksIG4uc3BlZWQgLyAxZTMsIGpRdWVyeS5leHRlbmQoITAsIHt9LCBhLl9nc1RyYW5zZm9ybVRvKSksIDAgPT0gbi5zcGVlZCAmJiAoYS5pbmhvdmVyb3V0YW5pbWF0aW9uID0gITEpLCBhLmhvdmVydGltZWxpbmVzLml0ZW0uZXZlbnRDYWxsYmFjaygib25Db21wbGV0ZSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUuaW5ob3Zlcm91dGFuaW1hdGlvbiA9ICExCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIFthXSksIHZvaWQgMCAhPT0gYS5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbSAmJiAoYS5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbSA9IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEuX3B3LCBuLnNwZWVkIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogYS5iYXNpY3ppbmRleAogICAgICAgICAgICAgICAgICAgICAgICB9KSksIG8uc3ZnICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKFtvLnN2Zywgby5zdmcuZmluZCgicGF0aCIpXSwgbi5zcGVlZCAvIDFlMywgYS5pZGxlc3ZnLmFuaW0pCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGZvciAodmFyIGwgPSAwOyBsIDwgbi5mcmFtZXMubGVuZ3RoOyBsKyspCiAgICAgICAgICAgICAgICAgICAgaWYgKGwgIT09IG4uaG92ZXJmcmFtZWluZGV4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBtID0gbCA9PT0gbi5pbmZyYW1laW5kZXggPyAiZnJhbWVfMCIgOiBsID09PSBuLm91dGZyYW1laW5kZXggfHwgImZyYW1lXzk5OSIgPT09IG4uZnJhbWVzW2xdLmZyYW1lID8gImZyYW1lXzk5OSIgOiAiZnJhbWVfIiArIGw7CiAgICAgICAgICAgICAgICAgICAgICAgIHRbbi5mcmFtZXNbbF0uZnJhbWVuYW1lID0gbV0gPSB7fSwgdFttXS50aW1lbGluZSA9IG5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbjogIm5vcm1hbCIKICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjID0gbi5mcmFtZXNbbF0uZGVsYXksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwID0gKG4udHJpZ2dlcmVkX3N0YXJ0c3RhdHVzLCB2b2lkIDAgIT09IGMgPyAwIDw9IGpRdWVyeS5pbkFycmF5KGMsIFsic2xpZGVlbnRlciIsICJieXRyaWdnZXIiLCAid2FpdCJdKSA/IGMgOiBwYXJzZUludChjLCAwKSAvIDFlMyA6ICJ3YWl0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gdC5maXJzdHNsaWRlICYmICJmcmFtZV8wIiA9PT0gbSAmJiAoaS5hZGRMYWJlbCgic2xpZGVfIiArIHQuZmlyc3RzbGlkZSArICJfcGF1c2UiLCAwKSwgaS5hZGRQYXVzZSgic2xpZGVfIiArIHQuZmlyc3RzbGlkZSArICJfcGF1c2UiKSwgaS5hZGRMYWJlbCgic2xpZGVfIiArIHQuZmlyc3RzbGlkZSwgIis9MC4wMDUiKSksIHZvaWQgMCAhPT0gdC5sYXN0c2xpZGUgJiYgImZyYW1lXzk5OSIgPT09IG0gJiYgKGkuYWRkTGFiZWwoInNsaWRlXyIgKyB0Lmxhc3RzbGlkZSArICJfcGF1c2UiLCAiKz0wLjAxIiksIGkuYWRkUGF1c2UoInNsaWRlXyIgKyB0Lmxhc3RzbGlkZSArICJfcGF1c2UiKSwgaS5hZGRMYWJlbCgic2xpZGVfIiArIHQubGFzdHNsaWRlLCAiKz0wLjAwNSIpKSwgalF1ZXJ5LmlzTnVtZXJpYyhwKSA/IGkuYWRkTGFiZWwobSwgIis9IiArIHApIDogKGkuYWRkTGFiZWwoInBhdXNlXyIgKyBsLCAiKz0wLjAxIiksIGkuYWRkUGF1c2UoInBhdXNlXyIgKyBsKSwgaS5hZGRMYWJlbChtLCAiKz0wLjAxIikpLCBpID0gQS5jcmVhdGVGcmFtZU9uVGltZWxpbmUoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogZS5jYXB0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZWxpbmU6IGksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogbSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1laW5kZXg6IGwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHQ6IHIKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlLnJlZ2VuZXJhdGUgfHwgKG4uY3VycmVudF9pc19uY190aW1lbGluZSAmJiAobi5jdXJyZW50X3RpbWVsaW5lID0gaSksIG4uY3VycmVudF90aW1lbGluZV9wYXVzZSA/IGkucGF1c2Uobi5jdXJyZW50X3RpbWVsaW5lX3RpbWUpIDogaS50aW1lKG4uY3VycmVudF90aW1lbGluZV90aW1lKSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgY3JlYXRlRnJhbWVPblRpbWVsaW5lOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIHZhciB0ID0gZS5jYXB0aW9uLAogICAgICAgICAgICAgICAgaSA9IHQuZGF0YSgpLAogICAgICAgICAgICAgICAgYSA9IGUubGFiZWwsCiAgICAgICAgICAgICAgICBuID0gZS50aW1lbGluZSwKICAgICAgICAgICAgICAgIHIgPSBlLmZyYW1laW5kZXgsCiAgICAgICAgICAgICAgICBvID0gZS5vcHQsCiAgICAgICAgICAgICAgICBzID0gdCwKICAgICAgICAgICAgICAgIGQgPSB7fSwKICAgICAgICAgICAgICAgIGwgPSBvLnRpbWVsaW5lc1tpLl9zbGlkZWlkXS5sYXllcnNbaS5faWRdLAogICAgICAgICAgICAgICAgbSA9IGkuZnJhbWVzLmxlbmd0aCAtIDEsCiAgICAgICAgICAgICAgICBjID0gaS5mcmFtZXNbcl0uc3BsaXQsCiAgICAgICAgICAgICAgICBwID0gaS5mcmFtZXNbcl0uc3BsaXRfZGlyZWN0aW9uLAogICAgICAgICAgICAgICAgZyA9IGkuZnJhbWVzW3JdLnNmeF9lZmZlY3QsCiAgICAgICAgICAgICAgICB1ID0gITE7CiAgICAgICAgICAgIGlmIChwID0gdm9pZCAwID09PSBwID8gImZvcndhcmQiIDogcCwgLTEgIT09IGkuaG92ZXJmcmFtZWluZGV4ICYmIGkuaG92ZXJmcmFtZWluZGV4ID09IG0gJiYgKG0gLT0gMSksIGQuY29udGVudCA9IG5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSh7CiAgICAgICAgICAgICAgICAgICAgYWxpZ246ICJub3JtYWwiCiAgICAgICAgICAgICAgICB9KSwgZC5tYXNrID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlKHsKICAgICAgICAgICAgICAgICAgICBhbGlnbjogIm5vcm1hbCIKICAgICAgICAgICAgICAgIH0pLCB2b2lkIDAgPT09IG4udmFycy5pZCAmJiAobi52YXJzLmlkID0gTWF0aC5yb3VuZCgxZTUgKiBNYXRoLnJhbmRvbSgpKSksICJjb2x1bW4iID09PSBpLl9uY3R5cGUgJiYgKG4uYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLl9jYmdjX21hbiwgewogICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6ICJ2aXNpYmxlIgogICAgICAgICAgICAgICAgfSksIGEpLCBuLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5fY2JnY19hdXRvLCB7CiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIKICAgICAgICAgICAgICAgIH0pLCBhKSksIGkuc3BsaXR0ZXh0ICYmIDAgPT09IHIpIHsKICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gaS5teVNwbGl0VGV4dCAmJiBpLm15U3BsaXRUZXh0LnJldmVydCgpOwogICAgICAgICAgICAgICAgdmFyIGYgPSAwIDwgdC5maW5kKCJhIikubGVuZ3RoID8gdC5maW5kKCJhIikgOiB0OwogICAgICAgICAgICAgICAgaS5teVNwbGl0VGV4dCA9IG5ldyBwdW5jaGdzLlNwbGl0VGV4dChmLCB7CiAgICAgICAgICAgICAgICAgICAgdHlwZTogImNoYXJzLHdvcmRzLGxpbmVzIiwKICAgICAgICAgICAgICAgICAgICBjaGFyc0NsYXNzOiAidHAtc3BsaXR0ZWQgdHAtY2hhcnNwbGl0IiwKICAgICAgICAgICAgICAgICAgICB3b3Jkc0NsYXNzOiAidHAtc3BsaXR0ZWQgdHAtd29yZHNwbGl0IiwKICAgICAgICAgICAgICAgICAgICBsaW5lc0NsYXNzOiAidHAtc3BsaXR0ZWQgdHAtbGluZXNwbGl0IgogICAgICAgICAgICAgICAgfSksIHQuYWRkQ2xhc3MoInNwbGl0dGVkIikKICAgICAgICAgICAgfQogICAgICAgICAgICB2b2lkIDAgIT09IGkubXlTcGxpdFRleHQgJiYgYyAmJiBjLm1hdGNoKC9jaGFyc3x3b3Jkc3xsaW5lcy9nKSAmJiAocyA9IGkubXlTcGxpdFRleHRbY10sIHUgPSAhMCk7CiAgICAgICAgICAgIHZhciBoLCB2LCBfID0gciAhPT0gaS5vdXRmcmFtZWluZGV4ID8gRihCKCksIGkuZnJhbWVzW3JdLnRvLCB2b2lkIDAsIHUsIHMubGVuZ3RoIC0gMSkgOiB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLnRvICYmIG51bGwgPT09IGkuZnJhbWVzW3JdLnRvLm1hdGNoKC9hdXRvOmF1dG8vZykgPyBGKFgoKSwgaS5mcmFtZXNbcl0udG8sIDEgPT0gby5zZGlyLCB1LCBzLmxlbmd0aCAtIDEpIDogRihYKCksIGkuZnJhbWVzW2kuaW5mcmFtZWluZGV4XS5mcm9tLCAwID09IG8uc2RpciwgdSwgcy5sZW5ndGggLSAxKSwKICAgICAgICAgICAgICAgIGIgPSB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLmZyb20gPyBGKF8sIGkuZnJhbWVzW2kuaW5mcmFtZWluZGV4XS5mcm9tLCAxID09IG8uc2RpciwgdSwgcy5sZW5ndGggLSAxKSA6IHZvaWQgMCwKICAgICAgICAgICAgICAgIHkgPSBpLmZyYW1lc1tyXS5zcGxpdGRlbGF5OwogICAgICAgICAgICBpZiAoMCAhPT0gciB8fCBlLmZyb21jdXJyZW50c3RhdGUgPyB2ID0gSChpLmZyYW1lc1tyXS5tYXNrKSA6IGggPSBIKGkuZnJhbWVzW3JdLm1hc2spLCBfLmFuaW0uZWFzZSA9IHZvaWQgMCA9PT0gaS5mcmFtZXNbcl0uZWFzZSA/IHB1bmNoZ3MuUG93ZXIxLmVhc2VJbk91dCA6IGkuZnJhbWVzW3JdLmVhc2UsIHZvaWQgMCAhPT0gYiAmJiAoYi5hbmltLmVhc2UgPSB2b2lkIDAgPT09IGkuZnJhbWVzW3JdLmVhc2UgPyBwdW5jaGdzLlBvd2VyMS5lYXNlSW5PdXQgOiBpLmZyYW1lc1tyXS5lYXNlLCBiLnNwZWVkID0gdm9pZCAwID09PSBpLmZyYW1lc1tyXS5zcGVlZCA/IGIuc3BlZWQgOiBpLmZyYW1lc1tyXS5zcGVlZCwgYi5hbmltLnggPSBiLmFuaW0ueCAqIG8uYncgfHwgWShiLmFuaW0ueCwgbywgaS5lb3csIGkuZW9oLCBpLmNhbGN5LCBpLmNhbGN4LCAiaG9yaXpvbnRhbCIpLCBiLmFuaW0ueSA9IGIuYW5pbS55ICogby5idyB8fCBZKGIuYW5pbS55LCBvLCBpLmVvdywgaS5lb2gsIGkuY2FsY3ksIGkuY2FsY3gsICJ2ZXJ0aWNhbCIpKSwgdm9pZCAwICE9PSBfICYmIChfLmFuaW0uZWFzZSA9IHZvaWQgMCA9PT0gaS5mcmFtZXNbcl0uZWFzZSA/IHB1bmNoZ3MuUG93ZXIxLmVhc2VJbk91dCA6IGkuZnJhbWVzW3JdLmVhc2UsIF8uc3BlZWQgPSB2b2lkIDAgPT09IGkuZnJhbWVzW3JdLnNwZWVkID8gXy5zcGVlZCA6IGkuZnJhbWVzW3JdLnNwZWVkLCBfLmFuaW0ueCA9IF8uYW5pbS54ICogby5idyB8fCBZKF8uYW5pbS54LCBvLCBpLmVvdywgaS5lb2gsIGkuY2FsY3ksIGkuY2FsY3gsICJob3Jpem9udGFsIiksIF8uYW5pbS55ID0gXy5hbmltLnkgKiBvLmJ3IHx8IFkoXy5hbmltLnksIG8sIGkuZW93LCBpLmVvaCwgaS5jYWxjeSwgaS5jYWxjeCwgInZlcnRpY2FsIikpLCB0LmRhdGEoImlmcmFtZXMiKSAmJiBuLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodC5maW5kKCJpZnJhbWUiKSwgewogICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMQogICAgICAgICAgICAgICAgfSksIGEgKyAiKz0wLjAwMSIpLCByID09PSBpLm91dGZyYW1laW5kZXggJiYgKGkuZnJhbWVzW3JdLnRvICYmIGkuZnJhbWVzW3JdLnRvLm1hdGNoKC9hdXRvOmF1dG8vZyksIF8uc3BlZWQgPSB2b2lkIDAgPT09IGkuZnJhbWVzW3JdLnNwZWVkIHx8ICJpbmhlcml0IiA9PT0gaS5mcmFtZXNbcl0uc3BlZWQgPyBpLmZyYW1lc1tpLmluZnJhbWVpbmRleF0uc3BlZWQgOiBpLmZyYW1lc1tyXS5zcGVlZCwgXy5hbmltLmVhc2UgPSB2b2lkIDAgPT09IGkuZnJhbWVzW3JdLmVhc2UgfHwgImluaGVyaXQiID09PSBpLmZyYW1lc1tyXS5lYXNlID8gaS5mcmFtZXNbaS5pbmZyYW1laW5kZXhdLmVhc2UgOiBpLmZyYW1lc1tyXS5lYXNlLCBfLmFuaW0ub3ZlcndyaXRlID0gImF1dG8iKSwgMCAhPT0gciB8fCBlLmZyb21jdXJyZW50c3RhdGUpIDAgPT09IHIgJiYgZS5mcm9tY3VycmVudHN0YXRlICYmIChfLnNwZWVkID0gYi5zcGVlZCk7CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgaWYgKHMgIT0gdCkgewogICAgICAgICAgICAgICAgICAgIHZhciB3ID0galF1ZXJ5LmV4dGVuZCh7fSwgXy5hbmltLCAhMCk7CiAgICAgICAgICAgICAgICAgICAgbi5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIF8uYW5pbSksIGEpLCAoXyA9IEIoKSkuZWFzZSA9IHcuZWFzZSwgdm9pZCAwICE9PSB3LmZpbHRlciAmJiAoXy5hbmltLmZpbHRlciA9IHcuZmlsdGVyKSwgdm9pZCAwICE9PSB3WyItd2Via2l0LWZpbHRlciJdICYmIChfLmFuaW1bIi13ZWJraXQtZmlsdGVyIl0gPSB3WyItd2Via2l0LWZpbHRlciJdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYi5hbmltLnZpc2liaWxpdHkgPSAiaGlkZGVuIiwgYi5hbmltLmltbWVkaWF0ZVJlbmRlciA9ICEwLCBfLmFuaW0udmlzaWJpbGl0eSA9ICJ2aXNpYmxlIgogICAgICAgICAgICB9CiAgICAgICAgICAgIGUuZnJvbWN1cnJlbnRzdGF0ZSAmJiAoXy5hbmltLmltbWVkaWF0ZVJlbmRlciA9ICEwKTsKICAgICAgICAgICAgdmFyIHggPSAtMTsKICAgICAgICAgICAgaWYgKDAgPT09IHIgJiYgIWUuZnJvbWN1cnJlbnRzdGF0ZSAmJiB2b2lkIDAgIT09IGkuX2JtYXNrICYmIHZvaWQgMCAhPT0gZyAmJiAwIDw9IGcuaW5kZXhPZigiYmxvY2siKSB8fCByID09PSBpLm91dGZyYW1laW5kZXggJiYgIWUuZnJvbWN1cnJlbnRzdGF0ZSAmJiB2b2lkIDAgIT09IGkuX2JtYXNrICYmIHZvaWQgMCAhPT0gZyAmJiAwIDw9IGcuaW5kZXhPZigiYmxvY2siKSkgewogICAgICAgICAgICAgICAgdmFyIFQgPSAwID09PSByID8gYi5zcGVlZCAvIDFlMyAvIDIgOiBfLnNwZWVkIC8gMWUzIC8gMiwKICAgICAgICAgICAgICAgICAgICBrID0gW3sKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVZOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogIjAlIDUwJSIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVYOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBfLmFuaW0uZWFzZQogICAgICAgICAgICAgICAgICAgIH1dLAogICAgICAgICAgICAgICAgICAgIGogPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVYOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICIxMDAlIDUwJSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IF8uYW5pbS5lYXNlCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIHN3aXRjaCAoeCA9IHZvaWQgMCA9PT0geSA/IFQgOiB5ICsgVCwgZykgewogICAgICAgICAgICAgICAgICAgIGNhc2UgImJsb2NrdG9sZWZ0IjoKICAgICAgICAgICAgICAgICAgICBjYXNlICJibG9ja2Zyb21yaWdodCI6CiAgICAgICAgICAgICAgICAgICAgICAgIGtbMF0udHJhbnNmb3JtT3JpZ2luID0gIjEwMCUgNTAlIiwgai50cmFuc2Zvcm1PcmlnaW4gPSAiMCUgNTAlIjsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiYmxvY2tmcm9tdG9wIjoKICAgICAgICAgICAgICAgICAgICBjYXNlICJibG9ja3RvYm90dG9tIjoKICAgICAgICAgICAgICAgICAgICAgICAgayA9IFt7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVg6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICI1MCUgMCUiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWDogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlWTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IF8uYW5pbS5lYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIH1dLCBqID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVYOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVZOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAiNTAlIDEwMCUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogXy5hbmltLmVhc2UKICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiYmxvY2t0b3RvcCI6CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiYmxvY2tmcm9tYm90dG9tIjoKICAgICAgICAgICAgICAgICAgICAgICAgayA9IFt7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVg6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICI1MCUgMTAwJSIKICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVYOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVZOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogXy5hbmltLmVhc2UKICAgICAgICAgICAgICAgICAgICAgICAgfV0sIGogPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVg6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZVk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICI1MCUgMCUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogXy5hbmltLmVhc2UKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAga1swXS5iYWNrZ3JvdW5kID0gaS5mcmFtZXNbcl0uc2Z4Y29sb3IsIG4uYWRkKGQubWFzay5mcm9tVG8oaS5fYm1hc2ssIFQsIGtbMF0sIGtbMV0sIHkpLCBhKSwgbi5hZGQoZC5tYXNrLnRvKGkuX2JtYXNrLCBULCBqLCB4KSwgYSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodSkgdmFyIEwgPSBNKHMubGVuZ3RoIC0gMSwgcCk7CiAgICAgICAgICAgIGlmICgwICE9PSByIHx8IGUuZnJvbWN1cnJlbnRzdGF0ZSkKICAgICAgICAgICAgICAgIGlmICgiYmxvY2siID09PSBpLl9zZnhfb3V0ICYmIHIgPT09IGkub3V0ZnJhbWVpbmRleCkgbi5hZGQoZC5jb250ZW50LnN0YWdnZXJUbyhzLCAuMDAxLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgIGRlbGF5OiB4CiAgICAgICAgICAgICAgICB9KSwgYSksIG4uYWRkKGQuY29udGVudC5zdGFnZ2VyVG8ocywgXy5zcGVlZCAvIDFlMyAvIDIgLSAuMDAxLCB7CiAgICAgICAgICAgICAgICAgICAgeDogMCwKICAgICAgICAgICAgICAgICAgICBkZWxheTogeAogICAgICAgICAgICAgICAgfSksIGEgKyAiKz0wLjAwMSIpOwogICAgICAgICAgICAgICAgZWxzZSBpZiAodSAmJiB2b2lkIDAgIT09IEwpCiAgICAgICAgICAgICAgICBmb3IgKHZhciBJIGluIFIgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRvOiBQKF8uYW5pbSkKICAgICAgICAgICAgICAgICAgICB9LCBzKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgVyBpbiB6ID0galF1ZXJ5LmV4dGVuZCh7fSwgXy5hbmltKSwgUi50bykgeltXXSA9IHBhcnNlSW50KFIudG9bV10udmFsdWVzW1IudG9bV10uaW5kZXhdLCAwKSwgUi50b1tXXS5pbmRleCA9IFIudG9bV10uaW5kZXggPCBSLnRvW1ddLmxlbiA/IFIudG9bV10uaW5kZXggKyAxIDogMDsKICAgICAgICAgICAgICAgICAgICB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLmNvbG9yICYmICh6LmNvbG9yID0gaS5mcmFtZXNbcl0uY29sb3IpLCB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLmJnY29sb3IgJiYgKHouYmFja2dyb3VuZENvbG9yID0gaS5mcmFtZXNbcl0uYmdjb2xvciksIG4uYWRkKGQuY29udGVudC50byhzW0xbSV1dLCBfLnNwZWVkIC8gMWUzLCB6LCB5ICogSSksIGEpCiAgICAgICAgICAgICAgICB9IGVsc2Ugdm9pZCAwICE9PSBpLmZyYW1lc1tyXS5jb2xvciAmJiAoXy5hbmltLmNvbG9yID0gaS5mcmFtZXNbcl0uY29sb3IpLCB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLmJnY29sb3IgJiYgKF8uYW5pbS5iYWNrZ3JvdW5kQ29sb3IgPSBpLmZyYW1lc1tyXS5iZ2NvbG9yKSwgbi5hZGQoZC5jb250ZW50LnN0YWdnZXJUbyhzLCBfLnNwZWVkIC8gMWUzLCBfLmFuaW0sIHkpLCBhKTsKICAgICAgICAgICAgZWxzZSBpZiAoImJsb2NrIiA9PT0gaS5fc2Z4X2luKSBuLmFkZChkLmNvbnRlbnQuc3RhZ2dlckZyb21UbyhzLCAuMDUsIHsKICAgICAgICAgICAgICAgIHg6IDAsCiAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIHg6IDAsCiAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgZGVsYXk6IHgKICAgICAgICAgICAgfSksIGEpOwogICAgICAgICAgICBlbHNlIGlmICh1ICYmIHZvaWQgMCAhPT0gTCkgewogICAgICAgICAgICAgICAgdmFyIFIgPSB7CiAgICAgICAgICAgICAgICAgICAgZnJvbTogUChiLmFuaW0pLAogICAgICAgICAgICAgICAgICAgIHRvOiBQKF8uYW5pbSkKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICBmb3IgKHZhciBJIGluIHMpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgQyA9IGpRdWVyeS5leHRlbmQoe30sIGIuYW5pbSksCiAgICAgICAgICAgICAgICAgICAgICAgIHogPSBqUXVlcnkuZXh0ZW5kKHt9LCBfLmFuaW0pOwogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIFcgaW4gUi5mcm9tKSBDW1ddID0gcGFyc2VJbnQoUi5mcm9tW1ddLnZhbHVlc1tSLmZyb21bV10uaW5kZXhdLCAwKSwgUi5mcm9tW1ddLmluZGV4ID0gUi5mcm9tW1ddLmluZGV4IDwgUi5mcm9tW1ddLmxlbiA/IFIuZnJvbVtXXS5pbmRleCArIDEgOiAwOwogICAgICAgICAgICAgICAgICAgIHouZWFzZSA9IEMuZWFzZSwgdm9pZCAwICE9PSBpLmZyYW1lc1tyXS5jb2xvciAmJiAoQy5jb2xvciA9IGkuZnJhbWVzW3JdLmNvbG9yLCB6LmNvbG9yID0gaS5jc3NvYmouc3R5bGVQcm9wcy5jb2xvciksIHZvaWQgMCAhPT0gaS5mcmFtZXNbcl0uYmdjb2xvciAmJiAoQy5iYWNrZ3JvdW5kQ29sb3IgPSBpLmZyYW1lc1tyXS5iZ2NvbG9yLCB6LmJhY2tncm91bmRDb2xvciA9IGkuY3Nzb2JqLnN0eWxlUHJvcHNbImJhY2tncm91bmQtY29sb3IiXSksIG4uYWRkKGQuY29udGVudC5mcm9tVG8oc1tMW0ldXSwgYi5zcGVlZCAvIDFlMywgQywgeiwgeSAqIEkpLCBhKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2Ugdm9pZCAwICE9PSBpLmZyYW1lc1tyXS5jb2xvciAmJiAoYi5hbmltLmNvbG9yID0gaS5mcmFtZXNbcl0uY29sb3IsIF8uYW5pbS5jb2xvciA9IGkuY3Nzb2JqLnN0eWxlUHJvcHMuY29sb3IpLCB2b2lkIDAgIT09IGkuZnJhbWVzW3JdLmJnY29sb3IgJiYgKGIuYW5pbS5iYWNrZ3JvdW5kQ29sb3IgPSBpLmZyYW1lc1tyXS5iZ2NvbG9yLCBfLmFuaW0uYmFja2dyb3VuZENvbG9yID0gaS5jc3NvYmouc3R5bGVQcm9wc1siYmFja2dyb3VuZC1jb2xvciJdKSwgbi5hZGQoZC5jb250ZW50LnN0YWdnZXJGcm9tVG8ocywgYi5zcGVlZCAvIDFlMywgYi5hbmltLCBfLmFuaW0sIHkpLCBhKTsKICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdiB8fCAhMSA9PT0gdiB8fCAwID09PSByICYmIGUuaWdub3JlZmlyc3RmcmFtZSB8fCAodi5hbmltLmVhc2UgPSB2b2lkIDAgPT09IHYuYW5pbS5lYXNlIHx8ICJpbmhlcml0IiA9PT0gdi5hbmltLmVhc2UgPyBpLmZyYW1lc1swXS5lYXNlIDogdi5hbmltLmVhc2UsIHYuYW5pbS5vdmVyZmxvdyA9ICJoaWRkZW4iLCB2LmFuaW0ueCA9IHYuYW5pbS54ICogby5idyB8fCBZKHYuYW5pbS54LCBvLCBpLmVvdywgaS5lb2gsIGkuY2FsY3ksIGkuY2FsY3gsICJob3Jpem9udGFsIiksIHYuYW5pbS55ID0gdi5hbmltLnkgKiBvLmJ3IHx8IFkodi5hbmltLnksIG8sIGkuZW93LCBpLmVvaCwgaS5jYWxjeSwgaS5jYWxjeCwgInZlcnRpY2FsIikpLCAwID09PSByICYmIGggJiYgITEgIT09IGggJiYgIWUuZnJvbWN1cnJlbnRzdGF0ZSB8fCAwID09PSByICYmIGUuaWdub3JlZmlyc3RmcmFtZSA/ICgodiA9IG5ldyBPYmplY3QpLmFuaW0gPSBuZXcgT2JqZWN0LCB2LmFuaW0ub3ZlcndyaXRlID0gImF1dG8iLCB2LmFuaW0uZWFzZSA9IF8uYW5pbS5lYXNlLCB2LmFuaW0ueCA9IHYuYW5pbS55ID0gMCwgaCAmJiAhMSAhPT0gaCAmJiAoaC5hbmltLnggPSBoLmFuaW0ueCAqIG8uYncgfHwgWShoLmFuaW0ueCwgbywgaS5lb3csIGkuZW9oLCBpLmNhbGN5LCBpLmNhbGN4LCAiaG9yaXpvbnRhbCIpLCBoLmFuaW0ueSA9IGguYW5pbS55ICogby5idyB8fCBZKGguYW5pbS55LCBvLCBpLmVvdywgaS5lb2gsIGkuY2FsY3ksIGkuY2FsY3gsICJ2ZXJ0aWNhbCIpLCBoLmFuaW0ub3ZlcmZsb3cgPSAiaGlkZGVuIikpIDogMCA9PT0gciAmJiBuLmFkZChkLm1hc2suc2V0KGkuX213LCB7CiAgICAgICAgICAgICAgICBvdmVyZmxvdzogInZpc2libGUiCiAgICAgICAgICAgIH0pLCBhKSwgdm9pZCAwICE9PSBoICYmIHZvaWQgMCAhPT0gdiAmJiAhMSAhPT0gaCAmJiAhMSAhPT0gdiA/IG4uYWRkKGQubWFzay5mcm9tVG8oaS5fbXcsIGIuc3BlZWQgLyAxZTMsIGguYW5pbSwgdi5hbmltLCB5KSwgYSkgOiB2b2lkIDAgIT09IHYgJiYgITEgIT09IHYgJiYgbi5hZGQoZC5tYXNrLnRvKGkuX213LCBfLnNwZWVkIC8gMWUzLCB2LmFuaW0sIHkpLCBhKSwgbi5hZGRMYWJlbChhICsgIl9lbmQiKSwgaS5fZ3NUcmFuc2Zvcm1UbyAmJiByID09PSBtICYmIGkuaG92ZXJlZHN0YXR1cyAmJiAoaS5ob3ZlcnRpbWVsaW5lcy5pdGVtID0gcHVuY2hncy5Ud2VlbkxpdGUudG8odCwgMCwgaS5fZ3NUcmFuc2Zvcm1UbykpLCBpLl9nc1RyYW5zZm9ybVRvID0gITEsIGQuY29udGVudC5ldmVudENhbGxiYWNrKCJvblN0YXJ0IiwgTywgW3IsIGwsIGkuX3B3LCBpLCBuLCBfLmFuaW0sIHQsIGUudXBkYXRlU3RhdGljVGltZWxpbmUsIG9dKSwgZC5jb250ZW50LmV2ZW50Q2FsbGJhY2soIm9uVXBkYXRlIiwgUSwgW2EsIGkuX2lkLCBpLl9wdywgaSwgbiwgciwgalF1ZXJ5LmV4dGVuZCghMCwge30sIF8uYW5pbSksIGUudXBkYXRlU3RhdGljVGltZWxpbmUsIHQsIG9dKSwgZC5jb250ZW50LmV2ZW50Q2FsbGJhY2soIm9uQ29tcGxldGUiLCBTLCBbciwgaS5mcmFtZXMubGVuZ3RoLCBtLCBpLl9wdywgaSwgbiwgZS51cGRhdGVTdGF0aWNUaW1lbGluZSwgdCwgb10pLCBuCiAgICAgICAgfSwKICAgICAgICBlbmRNb3ZlQ2FwdGlvbjogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlLmZpcnN0ZnJhbWUgPSAiZnJhbWVfMCIsIGUubGFzdGZyYW1lID0gImZyYW1lXzk5OSI7CiAgICAgICAgICAgIHZhciB0ID0gZyhlKSwKICAgICAgICAgICAgICAgIGkgPSBlLmNhcHRpb24uZGF0YSgpOwogICAgICAgICAgICBpZiAodm9pZCAwICE9PSBlLmZyYW1lID8gdC50aW1lbGluZS5wbGF5KGUuZnJhbWUpIDogKCF0LnN0YXRpYyB8fCBlLmN1cnJlbnRzbGlkZSA+PSB0LnJlbW92ZW9uc2xpZGUgfHwgZS5jdXJyZW50c2xpZGUgPCB0LnNob3dvbnNsaWRlKSAmJiAodC5vdXRub3cgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGUsIHQudGltZWxpbmUucGF1c2UoKSwgITAgPT09IGkudmlzaWJsZWVsZW1lbnQgJiYgQS5jcmVhdGVGcmFtZU9uVGltZWxpbmUoewogICAgICAgICAgICAgICAgICAgIGNhcHRpb246IGUuY2FwdGlvbiwKICAgICAgICAgICAgICAgICAgICB0aW1lbGluZTogdC5vdXRub3csCiAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICJvdXRub3ciLAogICAgICAgICAgICAgICAgICAgIGZyYW1laW5kZXg6IGUuY2FwdGlvbi5kYXRhKCJvdXRmcmFtZWluZGV4IiksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBlLm9wdCwKICAgICAgICAgICAgICAgICAgICBmcm9tY3VycmVudHN0YXRlOiAhMAogICAgICAgICAgICAgICAgfSkucGxheSgpKSwgZS5jaGVja2NoaWxkcmVucyAmJiB0LnRpbWVsaW5lX29iaiAmJiB0LnRpbWVsaW5lX29iai5kY2hpbGRyZW4gJiYgIm5vbmUiICE9PSB0LnRpbWVsaW5lX29iai5kY2hpbGRyZW4gJiYgMCA8IHQudGltZWxpbmVfb2JqLmRjaGlsZHJlbi5sZW5ndGgpCiAgICAgICAgICAgICAgICBmb3IgKHZhciBhID0gMDsgYSA8IHQudGltZWxpbmVfb2JqLmRjaGlsZHJlbi5sZW5ndGg7IGErKykgQS5lbmRNb3ZlQ2FwdGlvbih7CiAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogalF1ZXJ5KHQudGltZWxpbmVfb2JqLmRjaGlsZHJlblthXSksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBlLm9wdAogICAgICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHBsYXlBbmltYXRpb25GcmFtZTogZnVuY3Rpb24oZSkgewogICAgICAgICAgICBlLmZpcnN0ZnJhbWUgPSBlLnRyaWdnZXJmcmFtZWluLCBlLmxhc3RmcmFtZSA9IGUudHJpZ2dlcmZyYW1lb3V0OwogICAgICAgICAgICB2YXIgdCwgaSA9IGcoZSksCiAgICAgICAgICAgICAgICBhID0gZS5jYXB0aW9uLmRhdGEoKSwKICAgICAgICAgICAgICAgIG4gPSAwOwogICAgICAgICAgICBmb3IgKHZhciByIGluIGEuZnJhbWVzKSBhLmZyYW1lc1tyXS5mcmFtZW5hbWUgPT09IGUuZnJhbWUgJiYgKHQgPSBuKSwgbisrOwogICAgICAgICAgICB2b2lkIDAgIT09IGEudHJpZ2dlcmVkdGltZWxpbmUgJiYgYS50cmlnZ2VyZWR0aW1lbGluZS5wYXVzZSgpLCBhLnRyaWdnZXJlZHRpbWVsaW5lID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCBpLnRpbWVsaW5lLnBhdXNlKCk7CiAgICAgICAgICAgIHZhciBvID0gITAgPT09IGEudmlzaWJsZWVsZW1lbnQ7CiAgICAgICAgICAgIGEudHJpZ2dlcmVkdGltZWxpbmUgPSBBLmNyZWF0ZUZyYW1lT25UaW1lbGluZSh7CiAgICAgICAgICAgICAgICBjYXB0aW9uOiBlLmNhcHRpb24sCiAgICAgICAgICAgICAgICB0aW1lbGluZTogYS50cmlnZ2VyZWR0aW1lbGluZSwKICAgICAgICAgICAgICAgIGxhYmVsOiAidHJpZ2dlcmVkIiwKICAgICAgICAgICAgICAgIGZyYW1laW5kZXg6IHQsCiAgICAgICAgICAgICAgICB1cGRhdGVTdGF0aWNUaW1lbGluZTogITAsCiAgICAgICAgICAgICAgICBvcHQ6IGUub3B0LAogICAgICAgICAgICAgICAgaWdub3JlZmlyc3RmcmFtZTogITAsCiAgICAgICAgICAgICAgICBmcm9tY3VycmVudHN0YXRlOiBvCiAgICAgICAgICAgIH0pLnBsYXkoKQogICAgICAgIH0sCiAgICAgICAgcmVtb3ZlVGhlQ2FwdGlvbnM6IGZ1bmN0aW9uKGUsIGkpIHsKICAgICAgICAgICAgaWYgKCJzdG9wIiA9PT0gQS5jb21wYXJlX3ZlcnNpb24obCkuY2hlY2spIHJldHVybiAhMTsKICAgICAgICAgICAgdmFyIHQgPSBlLmRhdGEoImluZGV4IiksCiAgICAgICAgICAgICAgICBhID0gbmV3IEFycmF5OwogICAgICAgICAgICBpLmxheWVyc1t0XSAmJiBqUXVlcnkuZWFjaChpLmxheWVyc1t0XSwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgYS5wdXNoKHQpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgbiA9IEEuY3VycmVudFNsaWRlSW5kZXgoaSk7CiAgICAgICAgICAgIGEgJiYgalF1ZXJ5LmVhY2goYSwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAiY2Fyb3VzZWwiID09PSBpLnNsaWRlclR5cGUgJiYgIm9uIiA9PT0gaS5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZSA/IChjbGVhclRpbWVvdXQodC5kYXRhKCJ2aWRlb3BsYXl3YWl0IikpLCBBLnN0b3BWaWRlbyAmJiBBLnN0b3BWaWRlbyh0LCBpKSkgOiAocih0KSwgY2xlYXJUaW1lb3V0KHQuZGF0YSgidmlkZW9wbGF5d2FpdCIpKSwgQS5lbmRNb3ZlQ2FwdGlvbih7CiAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogdCwKICAgICAgICAgICAgICAgICAgICBvcHQ6IGksCiAgICAgICAgICAgICAgICAgICAgY3VycmVudHNsaWRlOiBuCiAgICAgICAgICAgICAgICB9KSksIEEucmVtb3ZlTWVkaWFGcm9tTGlzdCAmJiBBLnJlbW92ZU1lZGlhRnJvbUxpc3QodCwgaSksIGkubGFzdHBsYXllZHZpZGVvcyA9IFtdCiAgICAgICAgICAgIH0pCiAgICAgICAgfQogICAgfSk7CiAgICB2YXIgTyA9IGZ1bmN0aW9uKGUsIHQsIGksIGEsIG4sIHIsIG8sIHMsIGQpIHsKICAgICAgICAgICAgdmFyIGwgPSB7fTsKICAgICAgICAgICAgaWYgKGwubGF5ZXIgPSBvLCBsLmV2ZW50dHlwZSA9IDAgPT09IGUgPyAiZW50ZXJzdGFnZSIgOiBlID09PSBhLm91dGZyYW1laW5kZXggPyAibGVhdmVzdGFnZSIgOiAiZnJhbWVzdGFydGVkIiwgbC5sYXllcnR5cGUgPSBvLmRhdGEoImxheWVydHlwZSIpLCBhLmFjdGl2ZSA9ICEwLCBsLmZyYW1lX2luZGV4ID0gZSwgbC5sYXllcnNldHRpbmdzID0gby5kYXRhKCksIGQuYy50cmlnZ2VyKCJyZXZvbHV0aW9uLmxheWVyYWN0aW9uIiwgW2xdKSwgIm9uIiA9PSBhLmxvb3BhbmltYXRpb24gJiYgYyhhLl9sdywgZC5idyksICJlbnRlcnN0YWdlIiA9PT0gbC5ldmVudHR5cGUgJiYgKGEuYW5pbWRpcmVjdGlvbiA9ICJpbiIsIGEudmlzaWJsZWVsZW1lbnQgPSAhMCwgQS50b2dnbGVTdGF0ZShhLmxheWVydG9nZ2xlZGJ5KSksICJub25lIiAhPT0gdC5kY2hpbGRyZW4gJiYgdm9pZCAwICE9PSB0LmRjaGlsZHJlbiAmJiAwIDwgdC5kY2hpbGRyZW4ubGVuZ3RoKQogICAgICAgICAgICAgICAgaWYgKDAgPT09IGUpCiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgbSA9IDA7IG0gPCB0LmRjaGlsZHJlbi5sZW5ndGg7IG0rKykgalF1ZXJ5KHQuZGNoaWxkcmVuW21dKS5kYXRhKCJ0aW1lbGluZSIpLnBsYXkoMCk7CiAgICAgICAgICAgICAgICBlbHNlIGlmIChlID09PSBhLm91dGZyYW1laW5kZXgpCiAgICAgICAgICAgICAgICBmb3IgKG0gPSAwOyBtIDwgdC5kY2hpbGRyZW4ubGVuZ3RoOyBtKyspIEEuZW5kTW92ZUNhcHRpb24oewogICAgICAgICAgICAgICAgICAgIGNhcHRpb246IGpRdWVyeSh0LmRjaGlsZHJlblttXSksCiAgICAgICAgICAgICAgICAgICAgb3B0OiBkLAogICAgICAgICAgICAgICAgICAgIGNoZWNrY2hpbGRyZW5zOiAhMAogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLCB7CiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiAidmlzaWJsZSIKICAgICAgICAgICAgfSksIGEuY3VycmVudF9mcmFtZSA9IGUsIGEuY3VycmVudF90aW1lbGluZSA9IG4sIGEuY3VycmVudF90aW1lbGluZV90aW1lID0gbi50aW1lKCksIHMgJiYgKGEuc3RhdGljX2xheWVyX3RpbWVsaW5lX3RpbWUgPSBhLmN1cnJlbnRfdGltZWxpbmVfdGltZSksIGEubGFzdF9mcmFtZV9zdGFydGVkID0gZQogICAgICAgIH0sCiAgICAgICAgUSA9IGZ1bmN0aW9uKGUsIHQsIGksIGEsIG4sIHIsIG8sIHMsIGQsIGwpIHsKICAgICAgICAgICAgImNvbHVtbiIgPT09IGEuX25jdHlwZSAmJiBiKGQsIGwpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaSwgewogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogInZpc2libGUiCiAgICAgICAgICAgIH0pLCBhLmN1cnJlbnRfZnJhbWUgPSByLCBhLmN1cnJlbnRfdGltZWxpbmUgPSBuLCBhLmN1cnJlbnRfdGltZWxpbmVfdGltZSA9IG4udGltZSgpLCBzICYmIChhLnN0YXRpY19sYXllcl90aW1lbGluZV90aW1lID0gYS5jdXJyZW50X3RpbWVsaW5lX3RpbWUpLCB2b2lkIDAgIT09IGEuaG92ZXJhbmltICYmICExID09PSBhLl9nc1RyYW5zZm9ybVRvICYmIChhLl9nc1RyYW5zZm9ybVRvID0gbywgYS5fZ3NUcmFuc2Zvcm1UbyAmJiBhLl9nc1RyYW5zZm9ybVRvLnN0YXJ0QXQgJiYgZGVsZXRlIGEuX2dzVHJhbnNmb3JtVG8uc3RhcnRBdCwgdm9pZCAwID09PSBhLmNzc29iai5zdHlsZVByb3BzLmNzcyA/IGEuX2dzVHJhbnNmb3JtVG8gPSBqUXVlcnkuZXh0ZW5kKCEwLCB7fSwgYS5jc3NvYmouc3R5bGVQcm9wcywgYS5fZ3NUcmFuc2Zvcm1UbykgOiBhLl9nc1RyYW5zZm9ybVRvID0galF1ZXJ5LmV4dGVuZCghMCwge30sIGEuY3Nzb2JqLnN0eWxlUHJvcHMuY3NzLCBhLl9nc1RyYW5zZm9ybVRvKSksIGEudmlzaWJsZWVsZW1lbnQgPSAhMAogICAgICAgIH0sCiAgICAgICAgUyA9IGZ1bmN0aW9uKGUsIHQsIGksIGEsIG4sIHIsIG8sIHMsIGQpIHsKICAgICAgICAgICAgdmFyIGwgPSB7fTsKICAgICAgICAgICAgbC5sYXllciA9IHMsIGwuZXZlbnR0eXBlID0gMCA9PT0gZSA/ICJlbnRlcmVkc3RhZ2UiIDogZSA9PT0gdCAtIDEgfHwgZSA9PT0gaSA/ICJsZWZ0c3RhZ2UiIDogImZyYW1lZW5kZWQiLCBsLmxheWVydHlwZSA9IHMuZGF0YSgibGF5ZXJ0eXBlIiksIGwubGF5ZXJzZXR0aW5ncyA9IHMuZGF0YSgpLCBkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5sYXllcmFjdGlvbiIsIFtsXSksICJsZWZ0c3RhZ2UiICE9PSBsLmV2ZW50dHlwZSAmJiBBLmFuaW1jb21wbGV0ZWQocywgZCksICJsZWZ0c3RhZ2UiID09PSBsLmV2ZW50dHlwZSAmJiBBLnN0b3BWaWRlbyAmJiBBLnN0b3BWaWRlbyhzLCBkKSwgImNvbHVtbiIgPT09IG4uX25jdHlwZSAmJiAocHVuY2hncy5Ud2VlbkxpdGUudG8obi5fY2JnY19tYW4sIC4wMSwgewogICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogImhpZGRlbiIKICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKG4uX2NiZ2NfYXV0bywgLjAxLCB7CiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiAidmlzaWJsZSIKICAgICAgICAgICAgfSkpLCAibGVmdHN0YWdlIiA9PT0gbC5ldmVudHR5cGUgJiYgKG4uYWN0aXZlID0gITEsIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLCB7CiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiAiaGlkZGVuIiwKICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImF1dG8iCiAgICAgICAgICAgIH0pLCBuLmFuaW1kaXJlY3Rpb24gPSAib3V0Iiwgbi52aXNpYmxlZWxlbWVudCA9ICExLCBBLnVuVG9nZ2xlU3RhdGUobi5sYXllcnRvZ2dsZWRieSksICJ2aWRlbyIgPT09IG4uX25jdHlwZSAmJiBBLnJlc2V0VmlkZW8gJiYgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEEucmVzZXRWaWRlbyhzLCBkKQogICAgICAgICAgICB9LCAxMDApKSwgbi5jdXJyZW50X2ZyYW1lID0gZSwgbi5jdXJyZW50X3RpbWVsaW5lID0gciwgbi5jdXJyZW50X3RpbWVsaW5lX3RpbWUgPSByLnRpbWUoKSwgbyAmJiAobi5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZSA9IG4uY3VycmVudF90aW1lbGluZV90aW1lKQogICAgICAgIH0sCiAgICAgICAgZyA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgdmFyIHQgPSB7fTsKICAgICAgICAgICAgcmV0dXJuIGUuZmlyc3RmcmFtZSA9IHZvaWQgMCA9PT0gZS5maXJzdGZyYW1lID8gImZyYW1lXzAiIDogZS5maXJzdGZyYW1lLCBlLmxhc3RmcmFtZSA9IHZvaWQgMCA9PT0gZS5sYXN0ZnJhbWUgPyAiZnJhbWVfOTk5IiA6IGUubGFzdGZyYW1lLCB0LmlkID0gZS5jYXB0aW9uLmRhdGEoImlkIikgfHwgZS5jYXB0aW9uLmF0dHIoImlkIiksIHQuc2xpZGVpZCA9IGUuY2FwdGlvbi5kYXRhKCJzbGlkZWlkIikgfHwgZS5jYXB0aW9uLmNsb3Nlc3QoIi50cC1yZXZzbGlkZXItc2xpZGVzbGkiKS5kYXRhKCJpbmRleCIpLCB0LnRpbWVsaW5lX29iaiA9IGUub3B0LnRpbWVsaW5lc1t0LnNsaWRlaWRdLmxheWVyc1t0LmlkXSwgdC50aW1lbGluZSA9IHQudGltZWxpbmVfb2JqLnRpbWVsaW5lLCB0LmZmcyA9IHQudGltZWxpbmUuZ2V0TGFiZWxUaW1lKGUuZmlyc3RmcmFtZSksIHQuZmZlID0gdC50aW1lbGluZS5nZXRMYWJlbFRpbWUoZS5maXJzdGZyYW1lICsgIl9lbmQiKSwgdC5sZnMgPSB0LnRpbWVsaW5lLmdldExhYmVsVGltZShlLmxhc3RmcmFtZSksIHQubGZlID0gdC50aW1lbGluZS5nZXRMYWJlbFRpbWUoZS5sYXN0ZnJhbWUgKyAiX2VuZCIpLCB0LmN0ID0gdC50aW1lbGluZS50aW1lKCksIHQuc3RhdGljID0gbnVsbCAhPSB0LnRpbWVsaW5lX29iai5maXJzdHNsaWRlIHx8IG51bGwgIT0gdC50aW1lbGluZV9vYmoubGFzdHNsaWRlLCB0LnN0YXRpYyAmJiAodC5zaG93b25zbGlkZSA9IHQudGltZWxpbmVfb2JqLmZpcnN0c2xpZGUsIHQucmVtb3Zlb25zbGlkZSA9IHQudGltZWxpbmVfb2JqLmxhc3RzbGlkZSksIHQKICAgICAgICB9LAogICAgICAgIE0gPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIHZhciBpID0gbmV3IEFycmF5OwogICAgICAgICAgICBzd2l0Y2ggKHQpIHsKICAgICAgICAgICAgICAgIGNhc2UgImZvcndhcmQiOgogICAgICAgICAgICAgICAgY2FzZSAicmFuZG9tIjoKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBhID0gMDsgYSA8PSBlOyBhKyspIGkucHVzaChhKTsKICAgICAgICAgICAgICAgICAgICAicmFuZG9tIiA9PT0gdCAmJiAoaSA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCwgaSwgYSA9IGUubGVuZ3RoOyAwICE9PSBhOykgaSA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGEpLCB0ID0gZVthIC09IDFdLCBlW2FdID0gZVtpXSwgZVtpXSA9IHQ7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgICAgICAgICAgICAgfShpKSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJiYWNrd2FyZCI6CiAgICAgICAgICAgICAgICAgICAgZm9yIChhID0gMDsgYSA8PSBlOyBhKyspIGkucHVzaChlIC0gYSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJtaWRkbGV0b2VkZ2UiOgogICAgICAgICAgICAgICAgICAgIHZhciBuID0gTWF0aC5jZWlsKGUgLyAyKSwKICAgICAgICAgICAgICAgICAgICAgICAgciA9IG4gLSAxLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gbiArIDE7CiAgICAgICAgICAgICAgICAgICAgZm9yIChpLnB1c2gobiksIGEgPSAwOyBhIDwgbjsgYSsrKSAwIDw9IHIgJiYgaS5wdXNoKHIpLCBvIDw9IGUgJiYgaS5wdXNoKG8pLCByLS0sIG8rKzsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgImVkZ2V0b21pZGRsZSI6CiAgICAgICAgICAgICAgICAgICAgZm9yIChyID0gZSwgYSA9IG8gPSAwOyBhIDw9IE1hdGguZmxvb3IoZSAvIDIpOyBhKyspIGkucHVzaChyKSwgbyA8IHIgJiYgaS5wdXNoKG8pLCByLS0sIG8rKwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgfSwKICAgICAgICBQID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICB2YXIgdCA9IHt9OwogICAgICAgICAgICBmb3IgKHZhciBpIGluIGUpICJzdHJpbmciID09IHR5cGVvZiBlW2ldICYmIDAgPD0gZVtpXS5pbmRleE9mKCJ8IikgJiYgKHZvaWQgMCA9PT0gdFtpXSAmJiAodFtpXSA9IHsKICAgICAgICAgICAgICAgIGluZGV4OiAwCiAgICAgICAgICAgIH0pLCB0W2ldLnZhbHVlcyA9IGVbaV0ucmVwbGFjZSgiWyIsICIiKS5yZXBsYWNlKCJdIiwgIiIpLnNwbGl0KCJ8IiksIHRbaV0ubGVuID0gdFtpXS52YWx1ZXMubGVuZ3RoIC0gMSk7CiAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgfSwKICAgICAgICBCID0gZnVuY3Rpb24oZSkgewogICAgICAgICAgICByZXR1cm4gKGUgPSB2b2lkIDAgPT09IGUgPyBuZXcgT2JqZWN0IDogZSkuYW5pbSA9IHZvaWQgMCA9PT0gZS5hbmltID8gbmV3IE9iamVjdCA6IGUuYW5pbSwgZS5hbmltLnggPSB2b2lkIDAgPT09IGUuYW5pbS54ID8gMCA6IGUuYW5pbS54LCBlLmFuaW0ueSA9IHZvaWQgMCA9PT0gZS5hbmltLnkgPyAwIDogZS5hbmltLnksIGUuYW5pbS56ID0gdm9pZCAwID09PSBlLmFuaW0ueiA/IDAgOiBlLmFuaW0ueiwgZS5hbmltLnJvdGF0aW9uWCA9IHZvaWQgMCA9PT0gZS5hbmltLnJvdGF0aW9uWCA/IDAgOiBlLmFuaW0ucm90YXRpb25YLCBlLmFuaW0ucm90YXRpb25ZID0gdm9pZCAwID09PSBlLmFuaW0ucm90YXRpb25ZID8gMCA6IGUuYW5pbS5yb3RhdGlvblksIGUuYW5pbS5yb3RhdGlvblogPSB2b2lkIDAgPT09IGUuYW5pbS5yb3RhdGlvblogPyAwIDogZS5hbmltLnJvdGF0aW9uWiwgZS5hbmltLnNjYWxlWCA9IHZvaWQgMCA9PT0gZS5hbmltLnNjYWxlWCA/IDEgOiBlLmFuaW0uc2NhbGVYLCBlLmFuaW0uc2NhbGVZID0gdm9pZCAwID09PSBlLmFuaW0uc2NhbGVZID8gMSA6IGUuYW5pbS5zY2FsZVksIGUuYW5pbS5za2V3WCA9IHZvaWQgMCA9PT0gZS5hbmltLnNrZXdYID8gMCA6IGUuYW5pbS5za2V3WCwgZS5hbmltLnNrZXdZID0gdm9pZCAwID09PSBlLmFuaW0uc2tld1kgPyAwIDogZS5hbmltLnNrZXdZLCBlLmFuaW0ub3BhY2l0eSA9IHZvaWQgMCA9PT0gZS5hbmltLm9wYWNpdHkgPyAxIDogZS5hbmltLm9wYWNpdHksIGUuYW5pbS50cmFuc2Zvcm1PcmlnaW4gPSB2b2lkIDAgPT09IGUuYW5pbS50cmFuc2Zvcm1PcmlnaW4gPyAiNTAlIDUwJSIgOiBlLmFuaW0udHJhbnNmb3JtT3JpZ2luLCBlLmFuaW0udHJhbnNmb3JtUGVyc3BlY3RpdmUgPSB2b2lkIDAgPT09IGUuYW5pbS50cmFuc2Zvcm1QZXJzcGVjdGl2ZSA/IDYwMCA6IGUuYW5pbS50cmFuc2Zvcm1QZXJzcGVjdGl2ZSwgZS5hbmltLnJvdGF0aW9uID0gdm9pZCAwID09PSBlLmFuaW0ucm90YXRpb24gPyAwIDogZS5hbmltLnJvdGF0aW9uLCBlLmFuaW0uZm9yY2UzRCA9IHZvaWQgMCA9PT0gZS5hbmltLmZvcmNlM0QgPyAiYXV0byIgOiBlLmFuaW0uZm9yY2UzRCwgZS5hbmltLmF1dG9BbHBoYSA9IHZvaWQgMCA9PT0gZS5hbmltLmF1dG9BbHBoYSA/IDEgOiBlLmFuaW0uYXV0b0FscGhhLCBlLmFuaW0udmlzaWJpbGl0eSA9IHZvaWQgMCA9PT0gZS5hbmltLnZpc2liaWxpdHkgPyAidmlzaWJsZSIgOiBlLmFuaW0udmlzaWJpbGl0eSwgZS5hbmltLm92ZXJ3cml0ZSA9IHZvaWQgMCA9PT0gZS5hbmltLm92ZXJ3cml0ZSA/ICJhdXRvIiA6IGUuYW5pbS5vdmVyd3JpdGUsIGUuc3BlZWQgPSB2b2lkIDAgPT09IGUuc3BlZWQgPyAuMyA6IGUuc3BlZWQsIGUuZmlsdGVyID0gdm9pZCAwID09PSBlLmZpbHRlciA/ICJibHVyKDBweCkgZ3JheXNjYWxlKDAlKSBicmlnaHRuZXNzKDEwMCUpIiA6IGUuZmlsdGVyLCBlWyItd2Via2l0LWZpbHRlciJdID0gdm9pZCAwID09PSBlWyItd2Via2l0LWZpbHRlciJdID8gImJsdXIoMHB4KSBncmF5c2NhbGUoMCUpIGJyaWdodG5lc3MoMTAwJSkiIDogZVsiLXdlYmtpdC1maWx0ZXIiXSwgZQogICAgICAgIH0sCiAgICAgICAgdSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IG5ldyBPYmplY3Q7CiAgICAgICAgICAgIHJldHVybiBlLmFuaW0gPSBuZXcgT2JqZWN0LCBlLmFuaW0uc3Ryb2tlID0gIm5vbmUiLCBlLmFuaW0uc3Ryb2tlV2lkdGggPSAwLCBlLmFuaW0uc3Ryb2tlRGFzaGFycmF5ID0gIm5vbmUiLCBlLmFuaW0uc3Ryb2tlRGFzaG9mZnNldCA9ICIwIiwgZQogICAgICAgIH0sCiAgICAgICAgZiA9IGZ1bmN0aW9uKGUsIHIpIHsKICAgICAgICAgICAgdmFyIHQgPSBlLnNwbGl0KCI7Iik7CiAgICAgICAgICAgIHJldHVybiB0ICYmIGpRdWVyeS5lYWNoKHQsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdC5zcGxpdCgiOiIpLAogICAgICAgICAgICAgICAgICAgIGEgPSBpWzBdLAogICAgICAgICAgICAgICAgICAgIG4gPSBpWzFdOwogICAgICAgICAgICAgICAgInNjIiA9PSBhICYmIChyLmFuaW0uc3Ryb2tlID0gbiksICJzdyIgPT0gYSAmJiAoci5hbmltLnN0cm9rZVdpZHRoID0gbiksICJzZGEiID09IGEgJiYgKHIuYW5pbS5zdHJva2VEYXNoYXJyYXkgPSBuKSwgInNkbyIgPT0gYSAmJiAoci5hbmltLnN0cm9rZURhc2hvZmZzZXQgPSBuKQogICAgICAgICAgICB9KSwgcgogICAgICAgIH0sCiAgICAgICAgWCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgZSA9IG5ldyBPYmplY3Q7CiAgICAgICAgICAgIHJldHVybiBlLmFuaW0gPSBuZXcgT2JqZWN0LCBlLmFuaW0ueCA9IDAsIGUuYW5pbS55ID0gMCwgZS5hbmltLnogPSAwLCBlCiAgICAgICAgfSwKICAgICAgICBoID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBlID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgcmV0dXJuIGUuYW5pbSA9IG5ldyBPYmplY3QsIGUuc3BlZWQgPSAuMiwgZQogICAgICAgIH0sCiAgICAgICAgbSA9IGZ1bmN0aW9uKGUsIHQsIGksIGEsIG4pIHsKICAgICAgICAgICAgaWYgKG4gPSB2b2lkIDAgPT09IG4gPyAiIiA6IG4sIGpRdWVyeS5pc051bWVyaWMocGFyc2VGbG9hdChlKSkpIHJldHVybiBwYXJzZUZsb2F0KGUpICsgbjsKICAgICAgICAgICAgaWYgKHZvaWQgMCA9PT0gZSB8fCAiaW5oZXJpdCIgPT09IGUpIHJldHVybiB0ICsgImV4dCI7CiAgICAgICAgICAgIGlmICgxIDwgZS5zcGxpdCgieyIpLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdmFyIHIgPSBlLnNwbGl0KCIsIiksCiAgICAgICAgICAgICAgICAgICAgbyA9IHBhcnNlRmxvYXQoclsxXS5zcGxpdCgifSIpWzBdKTsKICAgICAgICAgICAgICAgIGlmIChyID0gcGFyc2VGbG9hdChyWzBdLnNwbGl0KCJ7IilbMV0pLCB2b2lkIDAgIT09IGkgJiYgdm9pZCAwICE9PSBhKSB7CiAgICAgICAgICAgICAgICAgICAgcGFyc2VJbnQoTWF0aC5yYW5kb20oKSAqIChvIC0gciksIDApLCBwYXJzZUludChyLCAwKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBzID0gMDsgcyA8IGE7IHMrKykgZSA9IGUgKyAifCIgKyAocGFyc2VJbnQoTWF0aC5yYW5kb20oKSAqIChvIC0gciksIDApICsgcGFyc2VJbnQociwgMCkpICsgbjsKICAgICAgICAgICAgICAgICAgICBlICs9ICJdIgogICAgICAgICAgICAgICAgfSBlbHNlIGUgPSBNYXRoLnJhbmRvbSgpICogKG8gLSByKSArIHIKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gZQogICAgICAgIH0sCiAgICAgICAgWSA9IGZ1bmN0aW9uKGUsIHQsIGksIGEsIG4sIHIsIG8pIHsKICAgICAgICAgICAgcmV0dXJuICFqUXVlcnkuaXNOdW1lcmljKGUpICYmIGUubWF0Y2goLyVdL2cpID8gKGUgPSBlLnNwbGl0KCJbIilbMV0uc3BsaXQoIl0iKVswXSwgImhvcml6b250YWwiID09IG8gPyBlID0gKGkgKyAyKSAqIHBhcnNlSW50KGUsIDApIC8gMTAwIDogInZlcnRpY2FsIiA9PSBvICYmIChlID0gKGEgKyAyKSAqIHBhcnNlSW50KGUsIDApIC8gMTAwKSkgOiBlID0gInRvcCIgPT09IChlID0gImxlZnQiID09PSAoZSA9ICJsYXllcl90b3AiID09PSAoZSA9ICJsYXllcl9sZWZ0IiA9PT0gZSA/IDAgLSBpIDogImxheWVyX3JpZ2h0IiA9PT0gZSA/IGkgOiBlKSA/IDAgLSBhIDogImxheWVyX2JvdHRvbSIgPT09IGUgPyBhIDogZSkgfHwgInN0YWdlX2xlZnQiID09PSBlID8gMCAtIGkgLSByIDogInJpZ2h0IiA9PT0gZSB8fCAic3RhZ2VfcmlnaHQiID09PSBlID8gdC5jb253IC0gciA6ICJjZW50ZXIiID09PSBlIHx8ICJzdGFnZV9jZW50ZXIiID09PSBlID8gdC5jb253IC8gMiAtIGkgLyAyIC0gciA6IGUpIHx8ICJzdGFnZV90b3AiID09PSBlID8gMCAtIGEgLSBuIDogImJvdHRvbSIgPT09IGUgfHwgInN0YWdlX2JvdHRvbSIgPT09IGUgPyB0LmNvbmggLSBuIDogIm1pZGRsZSIgPT09IGUgfHwgInN0YWdlX21pZGRsZSIgPT09IGUgPyB0LmNvbmggLyAyIC0gYSAvIDIgLSBuIDogZSwgZQogICAgICAgIH0sCiAgICAgICAgRiA9IGZ1bmN0aW9uKGUsIHQsIHIsIG8sIHMpIHsKICAgICAgICAgICAgdmFyIGQgPSBuZXcgT2JqZWN0OwogICAgICAgICAgICBpZiAoZCA9IGpRdWVyeS5leHRlbmQoITAsIHt9LCBkLCBlKSwgdm9pZCAwID09PSB0KSByZXR1cm4gZDsKICAgICAgICAgICAgdmFyIGkgPSB0LnNwbGl0KCI7IiksCiAgICAgICAgICAgICAgICBsID0gIiI7CiAgICAgICAgICAgIHJldHVybiBpICYmIGpRdWVyeS5lYWNoKGksIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gdC5zcGxpdCgiOiIpLAogICAgICAgICAgICAgICAgICAgIGEgPSBpWzBdLAogICAgICAgICAgICAgICAgICAgIG4gPSBpWzFdOwogICAgICAgICAgICAgICAgciAmJiAibm9uZSIgIT09IHIgJiYgbnVsbCAhPSBuICYmIDAgPCBuLmxlbmd0aCAmJiBuLm1hdGNoKC9cKFJcKS8pICYmICgiWyIgPT09IChuID0gInJpZ2h0IiA9PT0gKG4gPSBuLnJlcGxhY2UoIihSKSIsICIiKSkgPyAibGVmdCIgOiAibGVmdCIgPT09IG4gPyAicmlnaHQiIDogInRvcCIgPT09IG4gPyAiYm90dG9tIiA6ICJib3R0b20iID09PSBuID8gInRvcCIgOiBuKVswXSAmJiAiLSIgPT09IG5bMV0gPyBuID0gbi5yZXBsYWNlKCJbLSIsICJbIikgOiAiWyIgPT09IG5bMF0gJiYgIi0iICE9PSBuWzFdID8gbiA9IG4ucmVwbGFjZSgiWyIsICJbLSIpIDogIi0iID09PSBuWzBdID8gbiA9IG4ucmVwbGFjZSgiLSIsICIiKSA6IG5bMF0ubWF0Y2goL1sxLTldLykgJiYgKG4gPSAiLSIgKyBuKSksIG51bGwgIT0gbiAmJiAobiA9IG4ucmVwbGFjZSgvXChSXCkvLCAiIiksICJyb3RhdGlvblgiICE9IGEgJiYgInJYIiAhPSBhIHx8IChkLmFuaW0ucm90YXRpb25YID0gbShuLCBkLmFuaW0ucm90YXRpb25YLCBvLCBzLCAiZGVnIikpLCAicm90YXRpb25ZIiAhPSBhICYmICJyWSIgIT0gYSB8fCAoZC5hbmltLnJvdGF0aW9uWSA9IG0obiwgZC5hbmltLnJvdGF0aW9uWSwgbywgcywgImRlZyIpKSwgInJvdGF0aW9uWiIgIT0gYSAmJiAicloiICE9IGEgfHwgKGQuYW5pbS5yb3RhdGlvbiA9IG0obiwgZC5hbmltLnJvdGF0aW9uWiwgbywgcywgImRlZyIpKSwgInNjYWxlWCIgIT0gYSAmJiAic1giICE9IGEgfHwgKGQuYW5pbS5zY2FsZVggPSBtKG4sIGQuYW5pbS5zY2FsZVgsIG8sIHMpKSwgInNjYWxlWSIgIT0gYSAmJiAic1kiICE9IGEgfHwgKGQuYW5pbS5zY2FsZVkgPSBtKG4sIGQuYW5pbS5zY2FsZVksIG8sIHMpKSwgIm9wYWNpdHkiICE9IGEgJiYgIm8iICE9IGEgfHwgKGQuYW5pbS5vcGFjaXR5ID0gbShuLCBkLmFuaW0ub3BhY2l0eSwgbywgcykpLCAiZmIiID09IGEgJiYgKGwgPSAiIiA9PT0gbCA/ICJibHVyKCIgKyBwYXJzZUludChuLCAwKSArICJweCkiIDogbCArICIgYmx1cigiICsgcGFyc2VJbnQobiwgMCkgKyAicHgpIiksICJmZyIgPT0gYSAmJiAobCA9ICIiID09PSBsID8gImdyYXlzY2FsZSgiICsgcGFyc2VJbnQobiwgMCkgKyAiJSkiIDogbCArICIgZ3JheXNjYWxlKCIgKyBwYXJzZUludChuLCAwKSArICIlKSIpLCAiZmJyIiA9PSBhICYmIChsID0gIiIgPT09IGwgPyAiYnJpZ2h0bmVzcygiICsgcGFyc2VJbnQobiwgMCkgKyAiJSkiIDogbCArICIgYnJpZ2h0bmVzcygiICsgcGFyc2VJbnQobiwgMCkgKyAiJSkiKSwgMCA9PT0gZC5hbmltLm9wYWNpdHkgJiYgKGQuYW5pbS5hdXRvQWxwaGEgPSAwKSwgZC5hbmltLm9wYWNpdHkgPSAwID09IGQuYW5pbS5vcGFjaXR5ID8gMWUtNCA6IGQuYW5pbS5vcGFjaXR5LCAic2tld1giICE9IGEgJiYgInNrWCIgIT0gYSB8fCAoZC5hbmltLnNrZXdYID0gbShuLCBkLmFuaW0uc2tld1gsIG8sIHMpKSwgInNrZXdZIiAhPSBhICYmICJza1kiICE9IGEgfHwgKGQuYW5pbS5za2V3WSA9IG0obiwgZC5hbmltLnNrZXdZLCBvLCBzKSksICJ4IiA9PSBhICYmIChkLmFuaW0ueCA9IG0obiwgZC5hbmltLngsIG8sIHMpKSwgInkiID09IGEgJiYgKGQuYW5pbS55ID0gbShuLCBkLmFuaW0ueSwgbywgcykpLCAieiIgPT0gYSAmJiAoZC5hbmltLnogPSBtKG4sIGQuYW5pbS56LCBvLCBzKSksICJ0cmFuc2Zvcm1PcmlnaW4iICE9IGEgJiYgInRPIiAhPSBhIHx8IChkLmFuaW0udHJhbnNmb3JtT3JpZ2luID0gbi50b1N0cmluZygpKSwgInRyYW5zZm9ybVBlcnNwZWN0aXZlIiAhPSBhICYmICJ0UCIgIT0gYSB8fCAoZC5hbmltLnRyYW5zZm9ybVBlcnNwZWN0aXZlID0gcGFyc2VJbnQobiwgMCkpLCAic3BlZWQiICE9IGEgJiYgInMiICE9IGEgfHwgKGQuc3BlZWQgPSBwYXJzZUZsb2F0KG4pKSkKICAgICAgICAgICAgfSksICIiICE9PSBsICYmIChkLmFuaW1bIi13ZWJraXQtZmlsdGVyIl0gPSBsLCBkLmFuaW0uZmlsdGVyID0gbCksIGQKICAgICAgICB9LAogICAgICAgIEggPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IGUpIHJldHVybiAhMTsKICAgICAgICAgICAgdmFyIG4gPSBuZXcgT2JqZWN0OwogICAgICAgICAgICBuLmFuaW0gPSBuZXcgT2JqZWN0OwogICAgICAgICAgICB2YXIgdCA9IGUuc3BsaXQoIjsiKTsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgalF1ZXJ5LmVhY2godCwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSAodCA9IHQuc3BsaXQoIjoiKSlbMF0sCiAgICAgICAgICAgICAgICAgICAgYSA9IHRbMV07CiAgICAgICAgICAgICAgICAieCIgPT0gaSAmJiAobi5hbmltLnggPSBhKSwgInkiID09IGkgJiYgKG4uYW5pbS55ID0gYSksICJzIiA9PSBpICYmIChuLnNwZWVkID0gcGFyc2VGbG9hdChhKSksICJlIiAhPSBpICYmICJlYXNlIiAhPSBpIHx8IChuLmFuaW0uZWFzZSA9IGEpCiAgICAgICAgICAgIH0pLCBuCiAgICAgICAgfSwKICAgICAgICBOID0gZnVuY3Rpb24oaSwgZSwgdCkgewogICAgICAgICAgICBpZiAobnVsbCA9PSBpICYmIChpID0gMCksICFqUXVlcnkuaXNBcnJheShpKSAmJiAic3RyaW5nIiA9PT0galF1ZXJ5LnR5cGUoaSkgJiYgKDEgPCBpLnNwbGl0KCIsIikubGVuZ3RoIHx8IDEgPCBpLnNwbGl0KCJbIikubGVuZ3RoKSkgewogICAgICAgICAgICAgICAgdmFyIGEgPSAoaSA9IChpID0gaS5yZXBsYWNlKCJbIiwgIiIpKS5yZXBsYWNlKCJdIiwgIiIpKS5tYXRjaCgvJy9nKSA/IGkuc3BsaXQoIicsIikgOiBpLnNwbGl0KCIsIik7CiAgICAgICAgICAgICAgICBpID0gbmV3IEFycmF5LCBhICYmIGpRdWVyeS5lYWNoKGEsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgICAgICB0ID0gKHQgPSB0LnJlcGxhY2UoIiciLCAiIikpLnJlcGxhY2UoIiciLCAiIiksIGkucHVzaCh0KQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciBuID0gaTsKICAgICAgICAgICAgICAgIGpRdWVyeS5pc0FycmF5KGkpIHx8IChpID0gbmV3IEFycmF5KS5wdXNoKG4pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKG4gPSBpW2kubGVuZ3RoIC0gMV0sIGkubGVuZ3RoIDwgZS5ybGUpCiAgICAgICAgICAgICAgICBmb3IgKHZhciByID0gMTsgciA8PSBlLmN1cldpblJhbmdlOyByKyspIGkucHVzaChuKTsKICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICB9OwoKICAgIGZ1bmN0aW9uIEQoZSwgdCwgaSwgYSwgbiwgciwgbykgewogICAgICAgIHZhciBzID0gZS5maW5kKHQpOwogICAgICAgIHMuY3NzKCJib3JkZXJXaWR0aCIsIHIgKyAicHgiKSwgcy5jc3MoaSwgMCAtIHIgKyAicHgiKSwgcy5jc3MoYSwgIjBweCBzb2xpZCB0cmFuc3BhcmVudCIpLCBzLmNzcyhuLCBvKQogICAgfQogICAgdmFyIHYgPSBmdW5jdGlvbihhLCBlKSB7CiAgICAgICAgICAgIGlmICh2b2lkIDAgPT09IGUpIHJldHVybiBhOwogICAgICAgICAgICB2YXIgdCA9IChlID0gKGUgPSAoZSA9IChlID0gKGUgPSAoZSA9IChlID0gKGUgPSBlLnJlcGxhY2UoImM6IiwgImNvbG9yOiIpKS5yZXBsYWNlKCJiZzoiLCAiYmFja2dyb3VuZC1jb2xvcjoiKSkucmVwbGFjZSgiYnc6IiwgImJvcmRlci13aWR0aDoiKSkucmVwbGFjZSgiYmM6IiwgImJvcmRlci1jb2xvcjoiKSkucmVwbGFjZSgiYnI6IiwgImJvcmRlclJhZGl1czoiKSkucmVwbGFjZSgiYnM6IiwgImJvcmRlci1zdHlsZToiKSkucmVwbGFjZSgidGQ6IiwgInRleHQtZGVjb3JhdGlvbjoiKSkucmVwbGFjZSgiemk6IiwgInpJbmRleDoiKSkuc3BsaXQoIjsiKTsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgalF1ZXJ5LmVhY2godCwgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgdmFyIGkgPSB0LnNwbGl0KCI6Iik7CiAgICAgICAgICAgICAgICAwIDwgaVswXS5sZW5ndGggJiYgKCJiYWNrZ3JvdW5kLWNvbG9yIiA9PT0gaVswXSAmJiAwIDw9IGlbMV0uaW5kZXhPZigiZ3JhZGllbnQiKSAmJiAoaVswXSA9ICJiYWNrZ3JvdW5kIiksIGEuYW5pbVtpWzBdXSA9IGlbMV0pCiAgICAgICAgICAgIH0pLCBhCiAgICAgICAgfSwKICAgICAgICBWID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgaSwgYSA9IG5ldyBPYmplY3QsCiAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgIGlmICgicmVrdXJzaXZlIiA9PSB0ICYmIChpID0gZS5jbG9zZXN0KCIudHAtY2FwdGlvbiIpKSAmJiBlLmNzcygiZm9udFNpemUiKSA9PT0gaS5jc3MoImZvbnRTaXplIikgJiYgZS5jc3MoImZvbnRXZWlnaHQiKSA9PT0gaS5jc3MoImZvbnRXZWlnaHQiKSAmJiBlLmNzcygibGluZUhlaWdodCIpID09PSBpLmNzcygibGluZUhlaWdodCIpICYmIChuID0gITApLCBhLmJhc2VhbGlnbiA9IGUuZGF0YSgiYmFzZWFsaWduIikgfHwgImdyaWQiLCBhLmZvbnRTaXplID0gbiA/IHZvaWQgMCA9PT0gaS5kYXRhKCJmb250c2l6ZSIpID8gcGFyc2VJbnQoaS5jc3MoImZvbnRTaXplIiksIDApIHx8IDAgOiBpLmRhdGEoImZvbnRzaXplIikgOiB2b2lkIDAgPT09IGUuZGF0YSgiZm9udHNpemUiKSA/IHBhcnNlSW50KGUuY3NzKCJmb250U2l6ZSIpLCAwKSB8fCAwIDogZS5kYXRhKCJmb250c2l6ZSIpLCBhLmZvbnRXZWlnaHQgPSBuID8gdm9pZCAwID09PSBpLmRhdGEoImZvbnR3ZWlnaHQiKSA/IHBhcnNlSW50KGkuY3NzKCJmb250V2VpZ2h0IiksIDApIHx8IDAgOiBpLmRhdGEoImZvbnR3ZWlnaHQiKSA6IHZvaWQgMCA9PT0gZS5kYXRhKCJmb250d2VpZ2h0IikgPyBwYXJzZUludChlLmNzcygiZm9udFdlaWdodCIpLCAwKSB8fCAwIDogZS5kYXRhKCJmb250d2VpZ2h0IiksIGEud2hpdGVTcGFjZSA9IG4gPyB2b2lkIDAgPT09IGkuZGF0YSgid2hpdGVzcGFjZSIpID8gaS5jc3MoIndoaXRlc3BhY2UiKSB8fCAibm9ybWFsIiA6IGkuZGF0YSgid2hpdGVzcGFjZSIpIDogdm9pZCAwID09PSBlLmRhdGEoIndoaXRlc3BhY2UiKSA/IGUuY3NzKCJ3aGl0ZXNwYWNlIikgfHwgIm5vcm1hbCIgOiBlLmRhdGEoIndoaXRlc3BhY2UiKSwgYS50ZXh0QWxpZ24gPSBuID8gdm9pZCAwID09PSBpLmRhdGEoInRleHRhbGlnbiIpID8gaS5jc3MoInRleHRhbGlnbiIpIHx8ICJpbmhlcml0IiA6IGkuZGF0YSgidGV4dGFsaWduIikgOiB2b2lkIDAgPT09IGUuZGF0YSgidGV4dGFsaWduIikgPyBlLmNzcygidGV4dGFsaWduIikgfHwgImluaGVyaXQiIDogZS5kYXRhKCJ0ZXh0YWxpZ24iKSwgYS56SW5kZXggPSBuID8gdm9pZCAwID09PSBpLmRhdGEoInpJbmRleCIpID8gaS5jc3MoInpJbmRleCIpIHx8ICJpbmhlcml0IiA6IGkuZGF0YSgiekluZGV4IikgOiB2b2lkIDAgPT09IGUuZGF0YSgiekluZGV4IikgPyBlLmNzcygiekluZGV4IikgfHwgImluaGVyaXQiIDogZS5kYXRhKCJ6SW5kZXgiKSwgLTEgIT09IGpRdWVyeS5pbkFycmF5KGUuZGF0YSgibGF5ZXJ0eXBlIiksIFsidmlkZW8iLCAiaW1hZ2UiLCAiYXVkaW8iXSkgfHwgZS5pcygiaW1nIikgPyBhLmxpbmVIZWlnaHQgPSAwIDogYS5saW5lSGVpZ2h0ID0gbiA/IHZvaWQgMCA9PT0gaS5kYXRhKCJsaW5laGVpZ2h0IikgPyBwYXJzZUludChpLmNzcygibGluZUhlaWdodCIpLCAwKSB8fCAwIDogaS5kYXRhKCJsaW5laGVpZ2h0IikgOiB2b2lkIDAgPT09IGUuZGF0YSgibGluZWhlaWdodCIpID8gcGFyc2VJbnQoZS5jc3MoImxpbmVIZWlnaHQiKSwgMCkgfHwgMCA6IGUuZGF0YSgibGluZWhlaWdodCIpLCBhLmxldHRlclNwYWNpbmcgPSBuID8gdm9pZCAwID09PSBpLmRhdGEoImxldHRlcnNwYWNpbmciKSA/IHBhcnNlRmxvYXQoaS5jc3MoImxldHRlclNwYWNpbmciKSwgMCkgfHwgMCA6IGkuZGF0YSgibGV0dGVyc3BhY2luZyIpIDogdm9pZCAwID09PSBlLmRhdGEoImxldHRlcnNwYWNpbmciKSA/IHBhcnNlRmxvYXQoZS5jc3MoImxldHRlclNwYWNpbmciKSkgfHwgMCA6IGUuZGF0YSgibGV0dGVyc3BhY2luZyIpLCBhLnBhZGRpbmdUb3AgPSB2b2lkIDAgPT09IGUuZGF0YSgicGFkZGluZ3RvcCIpID8gcGFyc2VJbnQoZS5jc3MoInBhZGRpbmdUb3AiKSwgMCkgfHwgMCA6IGUuZGF0YSgicGFkZGluZ3RvcCIpLCBhLnBhZGRpbmdCb3R0b20gPSB2b2lkIDAgPT09IGUuZGF0YSgicGFkZGluZ2JvdHRvbSIpID8gcGFyc2VJbnQoZS5jc3MoInBhZGRpbmdCb3R0b20iKSwgMCkgfHwgMCA6IGUuZGF0YSgicGFkZGluZ2JvdHRvbSIpLCBhLnBhZGRpbmdMZWZ0ID0gdm9pZCAwID09PSBlLmRhdGEoInBhZGRpbmdsZWZ0IikgPyBwYXJzZUludChlLmNzcygicGFkZGluZ0xlZnQiKSwgMCkgfHwgMCA6IGUuZGF0YSgicGFkZGluZ2xlZnQiKSwgYS5wYWRkaW5nUmlnaHQgPSB2b2lkIDAgPT09IGUuZGF0YSgicGFkZGluZ3JpZ2h0IikgPyBwYXJzZUludChlLmNzcygicGFkZGluZ1JpZ2h0IiksIDApIHx8IDAgOiBlLmRhdGEoInBhZGRpbmdyaWdodCIpLCBhLm1hcmdpblRvcCA9IHZvaWQgMCA9PT0gZS5kYXRhKCJtYXJnaW50b3AiKSA/IHBhcnNlSW50KGUuY3NzKCJtYXJnaW5Ub3AiKSwgMCkgfHwgMCA6IGUuZGF0YSgibWFyZ2ludG9wIiksIGEubWFyZ2luQm90dG9tID0gdm9pZCAwID09PSBlLmRhdGEoIm1hcmdpbmJvdHRvbSIpID8gcGFyc2VJbnQoZS5jc3MoIm1hcmdpbkJvdHRvbSIpLCAwKSB8fCAwIDogZS5kYXRhKCJtYXJnaW5ib3R0b20iKSwgYS5tYXJnaW5MZWZ0ID0gdm9pZCAwID09PSBlLmRhdGEoIm1hcmdpbmxlZnQiKSA/IHBhcnNlSW50KGUuY3NzKCJtYXJnaW5MZWZ0IiksIDApIHx8IDAgOiBlLmRhdGEoIm1hcmdpbmxlZnQiKSwgYS5tYXJnaW5SaWdodCA9IHZvaWQgMCA9PT0gZS5kYXRhKCJtYXJnaW5yaWdodCIpID8gcGFyc2VJbnQoZS5jc3MoIm1hcmdpblJpZ2h0IiksIDApIHx8IDAgOiBlLmRhdGEoIm1hcmdpbnJpZ2h0IiksIGEuYm9yZGVyVG9wV2lkdGggPSB2b2lkIDAgPT09IGUuZGF0YSgiYm9yZGVydG9wd2lkdGgiKSA/IHBhcnNlSW50KGUuY3NzKCJib3JkZXJUb3BXaWR0aCIpLCAwKSB8fCAwIDogZS5kYXRhKCJib3JkZXJ0b3B3aWR0aCIpLCBhLmJvcmRlckJvdHRvbVdpZHRoID0gdm9pZCAwID09PSBlLmRhdGEoImJvcmRlcmJvdHRvbXdpZHRoIikgPyBwYXJzZUludChlLmNzcygiYm9yZGVyQm90dG9tV2lkdGgiKSwgMCkgfHwgMCA6IGUuZGF0YSgiYm9yZGVyYm90dG9td2lkdGgiKSwgYS5ib3JkZXJMZWZ0V2lkdGggPSB2b2lkIDAgPT09IGUuZGF0YSgiYm9yZGVybGVmdHdpZHRoIikgPyBwYXJzZUludChlLmNzcygiYm9yZGVyTGVmdFdpZHRoIiksIDApIHx8IDAgOiBlLmRhdGEoImJvcmRlcmxlZnR3aWR0aCIpLCBhLmJvcmRlclJpZ2h0V2lkdGggPSB2b2lkIDAgPT09IGUuZGF0YSgiYm9yZGVycmlnaHR3aWR0aCIpID8gcGFyc2VJbnQoZS5jc3MoImJvcmRlclJpZ2h0V2lkdGgiKSwgMCkgfHwgMCA6IGUuZGF0YSgiYm9yZGVycmlnaHR3aWR0aCIpLCAicmVrdXJzaXZlIiAhPSB0KSB7CiAgICAgICAgICAgICAgICBpZiAoYS5jb2xvciA9IHZvaWQgMCA9PT0gZS5kYXRhKCJjb2xvciIpID8gIm5vcHJlZGVmaW5lZGNvbG9yIiA6IGUuZGF0YSgiY29sb3IiKSwgYS53aGl0ZVNwYWNlID0gbiA/IHZvaWQgMCA9PT0gaS5kYXRhKCJ3aGl0ZXNwYWNlIikgPyBpLmNzcygid2hpdGVTcGFjZSIpIHx8ICJub3dyYXAiIDogaS5kYXRhKCJ3aGl0ZXNwYWNlIikgOiB2b2lkIDAgPT09IGUuZGF0YSgid2hpdGVzcGFjZSIpID8gZS5jc3MoIndoaXRlU3BhY2UiKSB8fCAibm93cmFwIiA6IGUuZGF0YSgid2hpdGVzcGFjZSIpLCBhLnRleHRBbGlnbiA9IG4gPyB2b2lkIDAgPT09IGkuZGF0YSgidGV4dGFsaWduIikgPyBpLmNzcygidGV4dGFsaWduIikgfHwgImluaGVyaXQiIDogaS5kYXRhKCJ0ZXh0YWxpZ24iKSA6IHZvaWQgMCA9PT0gZS5kYXRhKCJ0ZXh0YWxpZ24iKSA/IGUuY3NzKCJ0ZXh0YWxpZ24iKSB8fCAiaW5oZXJpdCIgOiBlLmRhdGEoInRleHRhbGlnbiIpLCBhLmZvbnRXZWlnaHQgPSBuID8gdm9pZCAwID09PSBpLmRhdGEoImZvbnR3ZWlnaHQiKSA/IHBhcnNlSW50KGkuY3NzKCJmb250V2VpZ2h0IiksIDApIHx8IDAgOiBpLmRhdGEoImZvbnR3ZWlnaHQiKSA6IHZvaWQgMCA9PT0gZS5kYXRhKCJmb250d2VpZ2h0IikgPyBwYXJzZUludChlLmNzcygiZm9udFdlaWdodCIpLCAwKSB8fCAwIDogZS5kYXRhKCJmb250d2VpZ2h0IiksIGEubWluV2lkdGggPSB2b2lkIDAgPT09IGUuZGF0YSgid2lkdGgiKSA/IHBhcnNlSW50KGUuY3NzKCJtaW5XaWR0aCIpLCAwKSB8fCAwIDogZS5kYXRhKCJ3aWR0aCIpLCBhLm1pbkhlaWdodCA9IHZvaWQgMCA9PT0gZS5kYXRhKCJoZWlnaHQiKSA/IHBhcnNlSW50KGUuY3NzKCJtaW5IZWlnaHQiKSwgMCkgfHwgMCA6IGUuZGF0YSgiaGVpZ2h0IiksIG51bGwgIT0gZS5kYXRhKCJ2aWRlb3dpZHRoIikgJiYgbnVsbCAhPSBlLmRhdGEoInZpZGVvaGVpZ2h0IikpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciA9IGUuZGF0YSgidmlkZW93aWR0aCIpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gZS5kYXRhKCJ2aWRlb2hlaWdodCIpOwogICAgICAgICAgICAgICAgICAgIHIgPSAiMTAwJSIgPT09IHIgPyAibm9uZSIgOiByLCBvID0gIjEwMCUiID09PSBvID8gIm5vbmUiIDogbywgZS5kYXRhKCJ3aWR0aCIsIHIpLCBlLmRhdGEoImhlaWdodCIsIG8pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBhLm1heFdpZHRoID0gdm9pZCAwID09PSBlLmRhdGEoIndpZHRoIikgPyBwYXJzZUludChlLmNzcygibWF4V2lkdGgiKSwgMCkgfHwgIm5vbmUiIDogZS5kYXRhKCJ3aWR0aCIpLCBhLm1heEhlaWdodCA9IC0xICE9PSBqUXVlcnkuaW5BcnJheShlLmRhdGEoInR5cGUiKSwgWyJjb2x1bW4iLCAicm93Il0pID8gIm5vbmUiIDogdm9pZCAwID09PSBlLmRhdGEoImhlaWdodCIpID8gcGFyc2VJbnQoZS5jc3MoIm1heEhlaWdodCIpLCAwKSB8fCAibm9uZSIgOiBlLmRhdGEoImhlaWdodCIpLCBhLndhbiA9IHZvaWQgMCA9PT0gZS5kYXRhKCJ3YW4iKSA/IHBhcnNlSW50KGUuY3NzKCItd2Via2l0LXRyYW5zaXRpb24iKSwgMCkgfHwgIm5vbmUiIDogZS5kYXRhKCJ3YW4iKSwgYS5tb2FuID0gdm9pZCAwID09PSBlLmRhdGEoIm1vYW4iKSA/IHBhcnNlSW50KGUuY3NzKCItbW96LWFuaW1hdGlvbi10cmFuc2l0aW9uIiksIDApIHx8ICJub25lIiA6IGUuZGF0YSgibW9hbiIpLCBhLm1hbiA9IHZvaWQgMCA9PT0gZS5kYXRhKCJtYW4iKSA/IHBhcnNlSW50KGUuY3NzKCItbXMtYW5pbWF0aW9uLXRyYW5zaXRpb24iKSwgMCkgfHwgIm5vbmUiIDogZS5kYXRhKCJtYW4iKSwgYS5hbmkgPSB2b2lkIDAgPT09IGUuZGF0YSgiYW5pIikgPyBwYXJzZUludChlLmNzcygidHJhbnNpdGlvbiIpLCAwKSB8fCAibm9uZSIgOiBlLmRhdGEoImFuaSIpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGEuc3R5bGVQcm9wcyA9IHsKICAgICAgICAgICAgICAgIGJvcmRlclRvcExlZnRSYWRpdXM6IGVbMF0uc3R5bGUuYm9yZGVyVG9wTGVmdFJhZGl1cywKICAgICAgICAgICAgICAgIGJvcmRlclRvcFJpZ2h0UmFkaXVzOiBlWzBdLnN0eWxlLmJvcmRlclRvcFJpZ2h0UmFkaXVzLAogICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IGVbMF0uc3R5bGUuYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMsCiAgICAgICAgICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiBlWzBdLnN0eWxlLmJvcmRlckJvdHRvbUxlZnRSYWRpdXMsCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBlWzBdLnN0eWxlLmJhY2tncm91bmQsCiAgICAgICAgICAgICAgICBib3hTaGFkb3c6IGVbMF0uc3R5bGUuYm94U2hhZG93LAogICAgICAgICAgICAgICAgImJhY2tncm91bmQtY29sb3IiOiBlWzBdLnN0eWxlWyJiYWNrZ3JvdW5kLWNvbG9yIl0sCiAgICAgICAgICAgICAgICAiYm9yZGVyLXRvcC1jb2xvciI6IGVbMF0uc3R5bGVbImJvcmRlci10b3AtY29sb3IiXSwKICAgICAgICAgICAgICAgICJib3JkZXItYm90dG9tLWNvbG9yIjogZVswXS5zdHlsZVsiYm9yZGVyLWJvdHRvbS1jb2xvciJdLAogICAgICAgICAgICAgICAgImJvcmRlci1yaWdodC1jb2xvciI6IGVbMF0uc3R5bGVbImJvcmRlci1yaWdodC1jb2xvciJdLAogICAgICAgICAgICAgICAgImJvcmRlci1sZWZ0LWNvbG9yIjogZVswXS5zdHlsZVsiYm9yZGVyLWxlZnQtY29sb3IiXSwKICAgICAgICAgICAgICAgICJib3JkZXItdG9wLXN0eWxlIjogZVswXS5zdHlsZVsiYm9yZGVyLXRvcC1zdHlsZSJdLAogICAgICAgICAgICAgICAgImJvcmRlci1ib3R0b20tc3R5bGUiOiBlWzBdLnN0eWxlWyJib3JkZXItYm90dG9tLXN0eWxlIl0sCiAgICAgICAgICAgICAgICAiYm9yZGVyLWxlZnQtc3R5bGUiOiBlWzBdLnN0eWxlWyJib3JkZXItbGVmdC1zdHlsZSJdLAogICAgICAgICAgICAgICAgImJvcmRlci1yaWdodC1zdHlsZSI6IGVbMF0uc3R5bGVbImJvcmRlci1yaWdodC1zdHlsZSJdLAogICAgICAgICAgICAgICAgImJvcmRlci1sZWZ0LXdpZHRoIjogZVswXS5zdHlsZVsiYm9yZGVyLWxlZnQtd2lkdGgiXSwKICAgICAgICAgICAgICAgICJib3JkZXItcmlnaHQtd2lkdGgiOiBlWzBdLnN0eWxlWyJib3JkZXItcmlnaHQtd2lkdGgiXSwKICAgICAgICAgICAgICAgICJib3JkZXItYm90dG9tLXdpZHRoIjogZVswXS5zdHlsZVsiYm9yZGVyLWJvdHRvbS13aWR0aCJdLAogICAgICAgICAgICAgICAgImJvcmRlci10b3Atd2lkdGgiOiBlWzBdLnN0eWxlWyJib3JkZXItdG9wLXdpZHRoIl0sCiAgICAgICAgICAgICAgICBjb2xvcjogZVswXS5zdHlsZS5jb2xvciwKICAgICAgICAgICAgICAgICJ0ZXh0LWRlY29yYXRpb24iOiBlWzBdLnN0eWxlWyJ0ZXh0LWRlY29yYXRpb24iXSwKICAgICAgICAgICAgICAgICJmb250LXN0eWxlIjogZVswXS5zdHlsZVsiZm9udC1zdHlsZSJdCiAgICAgICAgICAgIH0sICIiICE9PSBhLnN0eWxlUHJvcHMuYmFja2dyb3VuZCAmJiB2b2lkIDAgIT09IGEuc3R5bGVQcm9wcy5iYWNrZ3JvdW5kICYmIGEuc3R5bGVQcm9wcy5iYWNrZ3JvdW5kICE9PSBhLnN0eWxlUHJvcHNbImJhY2tncm91bmQtY29sb3IiXSB8fCBkZWxldGUgYS5zdHlsZVByb3BzLmJhY2tncm91bmQsICIiID09IGEuc3R5bGVQcm9wcy5jb2xvciAmJiAoYS5zdHlsZVByb3BzLmNvbG9yID0gZS5jc3MoImNvbG9yIikpLCBhCiAgICAgICAgfSwKICAgICAgICBaID0gZnVuY3Rpb24oYSwgbikgewogICAgICAgICAgICB2YXIgciA9IG5ldyBPYmplY3Q7CiAgICAgICAgICAgIHJldHVybiBhICYmIGpRdWVyeS5lYWNoKGEsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gTih0LCBuKVtuLmN1cldpblJhbmdlXTsKICAgICAgICAgICAgICAgIHJbZV0gPSB2b2lkIDAgIT09IGkgPyBpIDogYVtlXQogICAgICAgICAgICB9KSwgcgogICAgICAgIH0sCiAgICAgICAgXyA9IGZ1bmN0aW9uKGUsIHQsIGksIGEpIHsKICAgICAgICAgICAgcmV0dXJuICJmdWxsIiA9PT0gKGUgPSBqUXVlcnkuaXNOdW1lcmljKGUpID8gZSAqIHQgKyAicHgiIDogZSkgPyBhIDogImF1dG8iID09PSBlIHx8ICJub25lIiA9PT0gZSA/IGkgOiBlCiAgICAgICAgfSwKICAgICAgICBFID0gZnVuY3Rpb24oZSwgdCwgaSwgYSkgewogICAgICAgICAgICB2YXIgbiA9IGUuZGF0YSgpOwogICAgICAgICAgICBuID0gdm9pZCAwID09PSBuID8ge30gOiBuOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKCJCUiIgPT0gZVswXS5ub2RlTmFtZSB8fCAiYnIiID09IGVbMF0udGFnTmFtZSkgcmV0dXJuICExCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgIG4uY3Nzb2JqID0gdm9pZCAwID09PSBuLmNzc29iaiA/IFYoZSwgaSkgOiBuLmNzc29iajsKICAgICAgICAgICAgdmFyIHIgPSBaKG4uY3Nzb2JqLCB0KSwKICAgICAgICAgICAgICAgIG8gPSB0LmJ3LAogICAgICAgICAgICAgICAgcyA9IHQuYmg7CiAgICAgICAgICAgICJvZmYiID09PSBhICYmIChzID0gbyA9IDEpLCAiYXV0byIgPT0gci5saW5lSGVpZ2h0ICYmIChyLmxpbmVIZWlnaHQgPSByLmZvbnRTaXplICsgNCk7CiAgICAgICAgICAgIHZhciBkID0gewogICAgICAgICAgICAgICAgVG9wOiByLm1hcmdpblRvcCwKICAgICAgICAgICAgICAgIEJvdHRvbTogci5tYXJnaW5Cb3R0b20sCiAgICAgICAgICAgICAgICBMZWZ0OiByLm1hcmdpbkxlZnQsCiAgICAgICAgICAgICAgICBSaWdodDogci5tYXJnaW5SaWdodAogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAoImNvbHVtbiIgPT09IG4uX25jdHlwZSAmJiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KG4uX2NvbHVtbiwgewogICAgICAgICAgICAgICAgICAgIHBhZGRpbmdUb3A6IE1hdGgucm91bmQoci5tYXJnaW5Ub3AgKiBzKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZ0JvdHRvbTogTWF0aC5yb3VuZChyLm1hcmdpbkJvdHRvbSAqIHMpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBwYWRkaW5nTGVmdDogTWF0aC5yb3VuZChyLm1hcmdpbkxlZnQgKiBvKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgcGFkZGluZ1JpZ2h0OiBNYXRoLnJvdW5kKHIubWFyZ2luUmlnaHQgKiBvKSArICJweCIKICAgICAgICAgICAgICAgIH0pLCBkID0gewogICAgICAgICAgICAgICAgICAgIFRvcDogMCwKICAgICAgICAgICAgICAgICAgICBCb3R0b206IDAsCiAgICAgICAgICAgICAgICAgICAgTGVmdDogMCwKICAgICAgICAgICAgICAgICAgICBSaWdodDogMAogICAgICAgICAgICAgICAgfSksICFlLmhhc0NsYXNzKCJ0cC1zcGxpdHRlZCIpKSB7CiAgICAgICAgICAgICAgICBpZiAoZS5jc3MoIi13ZWJraXQtdHJhbnNpdGlvbiIsICJub25lIiksIGUuY3NzKCItbW96LXRyYW5zaXRpb24iLCAibm9uZSIpLCBlLmNzcygiLW1zLXRyYW5zaXRpb24iLCAibm9uZSIpLCBlLmNzcygidHJhbnNpdGlvbiIsICJub25lIiksICh2b2lkIDAgIT09IGUuZGF0YSgidHJhbnNmb3JtX2hvdmVyIikgfHwgdm9pZCAwICE9PSBlLmRhdGEoInN0eWxlX2hvdmVyIikpICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChlLCByLnN0eWxlUHJvcHMpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZSwgewogICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogTWF0aC5yb3VuZChyLmZvbnRTaXplICogbykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiByLmZvbnRXZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6IE1hdGguZmxvb3Ioci5sZXR0ZXJTcGFjaW5nICogbykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nVG9wOiBNYXRoLnJvdW5kKHIucGFkZGluZ1RvcCAqIHMpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZ0JvdHRvbTogTWF0aC5yb3VuZChyLnBhZGRpbmdCb3R0b20gKiBzKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiBNYXRoLnJvdW5kKHIucGFkZGluZ0xlZnQgKiBvKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmdSaWdodDogTWF0aC5yb3VuZChyLnBhZGRpbmdSaWdodCAqIG8pICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luVG9wOiBkLlRvcCAqIHMgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW5Cb3R0b206IGQuQm90dG9tICogcyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbkxlZnQ6IGQuTGVmdCAqIG8gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW5SaWdodDogZC5SaWdodCAqIG8gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJUb3BXaWR0aDogTWF0aC5yb3VuZChyLmJvcmRlclRvcFdpZHRoICogcykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b21XaWR0aDogTWF0aC5yb3VuZChyLmJvcmRlckJvdHRvbVdpZHRoICogcykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJMZWZ0V2lkdGg6IE1hdGgucm91bmQoci5ib3JkZXJMZWZ0V2lkdGggKiBvKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlclJpZ2h0V2lkdGg6IE1hdGgucm91bmQoci5ib3JkZXJSaWdodFdpZHRoICogbykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiBNYXRoLnJvdW5kKHIubGluZUhlaWdodCAqIHMpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgdGV4dEFsaWduOiByLnRleHRBbGlnbiwKICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYXV0byIKICAgICAgICAgICAgICAgICAgICB9KSwgInJla3Vyc2l2ZSIgIT0gaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBsID0gInNsaWRlIiA9PSByLmJhc2VhbGlnbiA/IHQudWx3IDogdC5ncmlkd2lkdGhbdC5jdXJXaW5SYW5nZV0sCiAgICAgICAgICAgICAgICAgICAgICAgIG0gPSAic2xpZGUiID09IHIuYmFzZWFsaWduID8gdC51bGggOiB0LmdyaWRoZWlnaHRbdC5jdXJXaW5SYW5nZV0sCiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBfKHIubWF4V2lkdGgsIG8sICJub25lIiwgbCksCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBfKHIubWF4SGVpZ2h0LCBzLCAibm9uZSIsIG0pLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gXyhyLm1pbldpZHRoLCBvLCAiMHB4IiwgbCksCiAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBfKHIubWluSGVpZ2h0LCBzLCAiMHB4IiwgbSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGcgPSB2b2lkIDAgPT09IGcgPyAwIDogZywgdSA9IHZvaWQgMCA9PT0gdSA/IDAgOiB1LCBjID0gdm9pZCAwID09PSBjID8gIm5vbmUiIDogYywgcCA9IHZvaWQgMCA9PT0gcCA/ICJub25lIiA6IHAsIG4uX2lzZ3JvdXAgJiYgKCIjMS8xIyIgPT09IGcgJiYgKGcgPSBjID0gbCksICIjMS8yIyIgPT09IGcgJiYgKGcgPSBjID0gbCAvIDIpLCAiIzEvMyMiID09PSBnICYmIChnID0gYyA9IGwgLyAzKSwgIiMxLzQjIiA9PT0gZyAmJiAoZyA9IGMgPSBsIC8gNCksICIjMS81IyIgPT09IGcgJiYgKGcgPSBjID0gbCAvIDUpLCAiIzEvNiMiID09PSBnICYmIChnID0gYyA9IGwgLyA2KSwgIiMyLzMjIiA9PT0gZyAmJiAoZyA9IGMgPSBsIC8gMyAqIDIpLCAiIzMvNCMiID09PSBnICYmIChnID0gYyA9IGwgLyA0ICogMyksICIjMi81IyIgPT09IGcgJiYgKGcgPSBjID0gbCAvIDUgKiAyKSwgIiMzLzUjIiA9PT0gZyAmJiAoZyA9IGMgPSBsIC8gNSAqIDMpLCAiIzQvNSMiID09PSBnICYmIChnID0gYyA9IGwgLyA1ICogNCksICIjMy82IyIgPT09IGcgJiYgKGcgPSBjID0gbCAvIDYgKiAzKSwgIiM0LzYjIiA9PT0gZyAmJiAoZyA9IGMgPSBsIC8gNiAqIDQpLCAiIzUvNiMiID09PSBnICYmIChnID0gYyA9IGwgLyA2ICogNSkpLCBuLl9pbmdyb3VwICYmIChuLl9ncm91cHcgPSBnLCBuLl9ncm91cGggPSB1KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiBjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiBwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluV2lkdGg6IGcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5IZWlnaHQ6IHUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZVNwYWNlOiByLndoaXRlU3BhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0QWxpZ246IHIudGV4dEFsaWduLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYXV0byIKICAgICAgICAgICAgICAgICAgICAgICAgfSksICJub3ByZWRlZmluZWRjb2xvciIgIT0gci5jb2xvciAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHIuY29sb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICAgICAgICAgICAgICB9KSwgbnVsbCAhPSBuLnN2Z19zcmMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGYgPSAibm9wcmVkZWZpbmVkY29sb3IiICE9IHIuY29sb3IgJiYgbnVsbCAhPSByLmNvbG9yID8gci5jb2xvciA6IG51bGwgIT0gci5jc3MgJiYgIm5vcHJlZGVmaW5lZGNvbG9yIiAhPSByLmNzcy5jb2xvciAmJiBudWxsICE9IHIuY3NzLmNvbG9yID8gci5jc3MuY29sb3IgOiBudWxsICE9IHIuc3R5bGVQcm9wcy5jb2xvciA/IHIuc3R5bGVQcm9wcy5jb2xvciA6IG51bGwgIT0gci5zdHlsZVByb3BzLmNzcyAmJiBudWxsICE9IHIuc3R5bGVQcm9wcy5jc3MuY29sb3IgJiYgci5zdHlsZVByb3BzLmNzcy5jb2xvcjsKICAgICAgICAgICAgICAgICAgICAgICAgMCAhPSBmICYmIChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5maW5kKCJzdmciKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImF1dG8iCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5maW5kKCJzdmcgcGF0aCIpLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBmLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYXV0byIKICAgICAgICAgICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgImNvbHVtbiIgPT09IG4uX25jdHlwZSAmJiAodm9pZCAwID09PSBuLl9jb2x1bW5fYmdfc2V0ICYmIChuLl9jb2x1bW5fYmdfc2V0ID0gZS5jc3MoImJhY2tncm91bmRDb2xvciIpLCBuLl9jb2x1bW5fYmdfaW1hZ2UgPSBlLmNzcygiYmFja2dyb3VuZEltYWdlIiksIG4uX2NvbHVtbl9iZ19pbWFnZV9yZXBlYXQgPSBlLmNzcygiYmFja2dyb3VuZFJlcGVhdCIpLCBuLl9jb2x1bW5fYmdfaW1hZ2VfcG9zaXRpb24gPSBlLmNzcygiYmFja2dyb3VuZFBvc2l0aW9uIiksIG4uX2NvbHVtbl9iZ19pbWFnZV9zaXplID0gZS5jc3MoImJhY2tncm91bmRTaXplIiksIG4uX2NvbHVtbl9iZ19vcGFjaXR5ID0gZS5kYXRhKCJiZ29wYWNpdHkiKSwgbi5fY29sdW1uX2JnX29wYWNpdHkgPSB2b2lkIDAgPT09IG4uX2NvbHVtbl9iZ19vcGFjaXR5ID8gMSA6IG4uX2NvbHVtbl9iZ19vcGFjaXR5LCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZSwgewogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogInRyYW5zcGFyZW50IiwKICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICIiCiAgICAgICAgICAgICAgICB9KSksIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgYihlLCB0KQogICAgICAgICAgICAgICAgfSwgMSksIG4uX2NiZ2NfYXV0byAmJiAwIDwgbi5fY2JnY19hdXRvLmxlbmd0aCAmJiAobi5fY2JnY19hdXRvWzBdLnN0eWxlLmJhY2tncm91bmRTaXplID0gbi5fY29sdW1uX2JnX2ltYWdlX3NpemUsIGpRdWVyeS5pc0FycmF5KHIubWFyZ2luTGVmdCkgPyBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobi5fY2JnY19hdXRvLCB7CiAgICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wV2lkdGg6IHIubWFyZ2luVG9wW3QuY3VyV2luUmFuZ2VdICogcyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyTGVmdFdpZHRoOiByLm1hcmdpbkxlZnRbdC5jdXJXaW5SYW5nZV0gKiBvICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBib3JkZXJSaWdodFdpZHRoOiByLm1hcmdpblJpZ2h0W3QuY3VyV2luUmFuZ2VdICogbyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tV2lkdGg6IHIubWFyZ2luQm90dG9tW3QuY3VyV2luUmFuZ2VdICogcyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBuLl9jb2x1bW5fYmdfc2V0LAogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogbi5fY29sdW1uX2JnX2ltYWdlLAogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQ6IG4uX2NvbHVtbl9iZ19pbWFnZV9yZXBlYXQsCiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiBuLl9jb2x1bW5fYmdfaW1hZ2VfcG9zaXRpb24sCiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogbi5fY29sdW1uX2JnX29wYWNpdHkKICAgICAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUuc2V0KG4uX2NiZ2NfYXV0bywgewogICAgICAgICAgICAgICAgICAgIGJvcmRlclRvcFdpZHRoOiByLm1hcmdpblRvcCAqIHMgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGJvcmRlckxlZnRXaWR0aDogci5tYXJnaW5MZWZ0ICogbyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgYm9yZGVyUmlnaHRXaWR0aDogci5tYXJnaW5SaWdodCAqIG8gKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbVdpZHRoOiByLm1hcmdpbkJvdHRvbSAqIHMgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogbi5fY29sdW1uX2JnX3NldCwKICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6IG4uX2NvbHVtbl9iZ19pbWFnZSwKICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUmVwZWF0OiBuLl9jb2x1bW5fYmdfaW1hZ2VfcmVwZWF0LAogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRQb3NpdGlvbjogbi5fY29sdW1uX2JnX2ltYWdlX3Bvc2l0aW9uLAogICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IG4uX2NvbHVtbl9iZ19vcGFjaXR5CiAgICAgICAgICAgICAgICB9KSkpLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGUuY3NzKCItd2Via2l0LXRyYW5zaXRpb24iLCBlLmRhdGEoIndhbiIpKSwgZS5jc3MoIi1tb3otdHJhbnNpdGlvbiIsIGUuZGF0YSgibW9hbiIpKSwgZS5jc3MoIi1tcy10cmFuc2l0aW9uIiwgZS5kYXRhKCJtYW4iKSksIGUuY3NzKCJ0cmFuc2l0aW9uIiwgZS5kYXRhKCJhbmkiKSkKICAgICAgICAgICAgICAgIH0sIDMwKQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBiID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgaSwgYSwgbiwgciA9IGUuZGF0YSgpOwogICAgICAgICAgICByLl9jYmdjX21hbiAmJiAwIDwgci5fY2JnY19tYW4ubGVuZ3RoICYmIChqUXVlcnkuaXNBcnJheShyLmNzc29iai5tYXJnaW5MZWZ0KSA/IChyLmNzc29iai5tYXJnaW5MZWZ0W3QuY3VyV2luUmFuZ2VdLCB0LmJ3LCBpID0gci5jc3NvYmoubWFyZ2luVG9wW3QuY3VyV2luUmFuZ2VdICogdC5iaCwgYSA9IHIuY3Nzb2JqLm1hcmdpbkJvdHRvbVt0LmN1cldpblJhbmdlXSAqIHQuYmgsIHIuY3Nzb2JqLm1hcmdpblJpZ2h0W3QuY3VyV2luUmFuZ2VdKSA6IChyLmNzc29iai5tYXJnaW5MZWZ0LCB0LmJ3LCBpID0gci5jc3NvYmoubWFyZ2luVG9wICogdC5iaCwgYSA9IHIuY3Nzb2JqLm1hcmdpbkJvdHRvbSAqIHQuYmgsIHIuY3Nzb2JqLm1hcmdpblJpZ2h0KSwgdC5idywgbiA9IHIuX3Jvdy5oYXNDbGFzcygicmV2X2JyZWFrX2NvbHVtbnMiKSA/ICIxMDAlIiA6IHIuX3Jvdy5oZWlnaHQoKSAtIChpICsgYSkgKyAicHgiLCByLl9jYmdjX21hblswXS5zdHlsZS5iYWNrZ3JvdW5kU2l6ZSA9IHIuX2NvbHVtbl9iZ19pbWFnZV9zaXplLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoci5fY2JnY19tYW4sIHsKICAgICAgICAgICAgICAgIHdpZHRoOiAiMTAwJSIsCiAgICAgICAgICAgICAgICBoZWlnaHQ6IG4sCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHIuX2NvbHVtbl9iZ19zZXQsCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6IHIuX2NvbHVtbl9iZ19pbWFnZSwKICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQ6IHIuX2NvbHVtbl9iZ19pbWFnZV9yZXBlYXQsCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb246IHIuX2NvbHVtbl9iZ19pbWFnZV9wb3NpdGlvbiwKICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImF1dG8iLAogICAgICAgICAgICAgICAgb3BhY2l0eTogci5fY29sdW1uX2JnX29wYWNpdHkKICAgICAgICAgICAgfSkpCiAgICAgICAgfSwKICAgICAgICBjID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgaSA9IGUuZGF0YSgpOwogICAgICAgICAgICBpZiAoZS5oYXNDbGFzcygicnMtcGVuZHVsdW0iKSAmJiBudWxsID09IGkuX2xvb3BfdGltZWxpbmUpIHsKICAgICAgICAgICAgICAgIGkuX2xvb3BfdGltZWxpbmUgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7CiAgICAgICAgICAgICAgICB2YXIgYSA9IG51bGwgPT0gZS5kYXRhKCJzdGFydGRlZyIpID8gLTIwIDogZS5kYXRhKCJzdGFydGRlZyIpLAogICAgICAgICAgICAgICAgICAgIG4gPSBudWxsID09IGUuZGF0YSgiZW5kZGVnIikgPyAyMCA6IGUuZGF0YSgiZW5kZGVnIiksCiAgICAgICAgICAgICAgICAgICAgciA9IG51bGwgPT0gZS5kYXRhKCJzcGVlZCIpID8gMiA6IGUuZGF0YSgic3BlZWQiKSwKICAgICAgICAgICAgICAgICAgICBvID0gbnVsbCA9PSBlLmRhdGEoIm9yaWdpbiIpID8gIjUwJSA1MCUiIDogZS5kYXRhKCJvcmlnaW4iKSwKICAgICAgICAgICAgICAgICAgICBzID0gbnVsbCA9PSBlLmRhdGEoImVhc2luZyIpID8gcHVuY2hncy5Qb3dlcjIuZWFzZUluT3V0IDogZS5kYXRhKCJlYXNpbmciKTsKICAgICAgICAgICAgICAgIGEgKj0gdCwgbiAqPSB0LCBpLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHIsIHsKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IGEsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiBvCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IG4sCiAgICAgICAgICAgICAgICAgICAgZWFzZTogcwogICAgICAgICAgICAgICAgfSkpLCBpLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHIsIHsKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IG4sCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiBvCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IGEsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogcywKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaS5fbG9vcF90aW1lbGluZS5yZXN0YXJ0KCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZS5oYXNDbGFzcygicnMtcm90YXRlIikgJiYgbnVsbCA9PSBpLl9sb29wX3RpbWVsaW5lICYmIChpLl9sb29wX3RpbWVsaW5lID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCBhID0gbnVsbCA9PSBlLmRhdGEoInN0YXJ0ZGVnIikgPyAwIDogZS5kYXRhKCJzdGFydGRlZyIpLCBuID0gbnVsbCA9PSBlLmRhdGEoImVuZGRlZyIpID8gMzYwIDogZS5kYXRhKCJlbmRkZWciKSwgciA9IG51bGwgPT0gZS5kYXRhKCJzcGVlZCIpID8gMiA6IGUuZGF0YSgic3BlZWQiKSwgbyA9IG51bGwgPT0gZS5kYXRhKCJvcmlnaW4iKSA/ICI1MCUgNTAlIiA6IGUuZGF0YSgib3JpZ2luIiksIHMgPSBudWxsID09IGUuZGF0YSgiZWFzaW5nIikgPyBwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQgOiBlLmRhdGEoImVhc2luZyIpLCBhICo9IHQsIG4gKj0gdCwgaS5fbG9vcF90aW1lbGluZS5hcHBlbmQobmV3IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCByLCB7CiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBhLAogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogbwogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBuLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHMsCiAgICAgICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGkuX2xvb3BfdGltZWxpbmUucmVzdGFydCgpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkpKSwgZS5oYXNDbGFzcygicnMtc2xpZGVsb29wIikgJiYgbnVsbCA9PSBpLl9sb29wX3RpbWVsaW5lKSB7CiAgICAgICAgICAgICAgICBpLl9sb29wX3RpbWVsaW5lID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlOwogICAgICAgICAgICAgICAgdmFyIGQgPSBudWxsID09IGUuZGF0YSgieHMiKSA/IDAgOiBlLmRhdGEoInhzIiksCiAgICAgICAgICAgICAgICAgICAgbCA9IG51bGwgPT0gZS5kYXRhKCJ5cyIpID8gMCA6IGUuZGF0YSgieXMiKSwKICAgICAgICAgICAgICAgICAgICBtID0gbnVsbCA9PSBlLmRhdGEoInhlIikgPyAwIDogZS5kYXRhKCJ4ZSIpLAogICAgICAgICAgICAgICAgICAgIGMgPSBudWxsID09IGUuZGF0YSgieWUiKSA/IDAgOiBlLmRhdGEoInllIik7CiAgICAgICAgICAgICAgICByID0gbnVsbCA9PSBlLmRhdGEoInNwZWVkIikgPyAyIDogZS5kYXRhKCJzcGVlZCIpLCBzID0gbnVsbCA9PSBlLmRhdGEoImVhc2luZyIpID8gcHVuY2hncy5Qb3dlcjIuZWFzZUluT3V0IDogZS5kYXRhKCJlYXNpbmciKSwgZCAqPSB0LCBsICo9IHQsIG0gKj0gdCwgYyAqPSB0LCBpLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHIsIHsKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgeDogZCwKICAgICAgICAgICAgICAgICAgICB5OiBsCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgeDogbSwKICAgICAgICAgICAgICAgICAgICB5OiBjLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHMKICAgICAgICAgICAgICAgIH0pKSwgaS5fbG9vcF90aW1lbGluZS5hcHBlbmQobmV3IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCByLCB7CiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHg6IG0sCiAgICAgICAgICAgICAgICAgICAgeTogYwogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIHg6IGQsCiAgICAgICAgICAgICAgICAgICAgeTogbCwKICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaS5fbG9vcF90aW1lbGluZS5yZXN0YXJ0KCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZS5oYXNDbGFzcygicnMtcHVsc2UiKSAmJiBudWxsID09IGkuX2xvb3BfdGltZWxpbmUpIHsKICAgICAgICAgICAgICAgIGkuX2xvb3BfdGltZWxpbmUgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7CiAgICAgICAgICAgICAgICB2YXIgcCA9IG51bGwgPT0gZS5kYXRhKCJ6b29tc3RhcnQiKSA/IDAgOiBlLmRhdGEoInpvb21zdGFydCIpLAogICAgICAgICAgICAgICAgICAgIGcgPSBudWxsID09IGUuZGF0YSgiem9vbWVuZCIpID8gMCA6IGUuZGF0YSgiem9vbWVuZCIpOwogICAgICAgICAgICAgICAgciA9IG51bGwgPT0gZS5kYXRhKCJzcGVlZCIpID8gMiA6IGUuZGF0YSgic3BlZWQiKSwgcyA9IG51bGwgPT0gZS5kYXRhKCJlYXNpbmciKSA/IHB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dCA6IGUuZGF0YSgiZWFzaW5nIiksIGkuX2xvb3BfdGltZWxpbmUuYXBwZW5kKG5ldyBwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oZSwgciwgewogICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICBzY2FsZTogcAogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIHNjYWxlOiBnLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHMKICAgICAgICAgICAgICAgIH0pKSwgaS5fbG9vcF90aW1lbGluZS5hcHBlbmQobmV3IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCByLCB7CiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHNjYWxlOiBnCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IHAsCiAgICAgICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGkuX2xvb3BfdGltZWxpbmUucmVzdGFydCgpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGUuaGFzQ2xhc3MoInJzLXdhdmUiKSAmJiBudWxsID09IGkuX2xvb3BfdGltZWxpbmUpIHsKICAgICAgICAgICAgICAgIGkuX2xvb3BfdGltZWxpbmUgPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7CiAgICAgICAgICAgICAgICB2YXIgdSA9IG51bGwgPT0gZS5kYXRhKCJhbmdsZSIpID8gMTAgOiBwYXJzZUludChlLmRhdGEoImFuZ2xlIiksIDApLAogICAgICAgICAgICAgICAgICAgIGYgPSBudWxsID09IGUuZGF0YSgicmFkaXVzIikgPyAxMCA6IHBhcnNlSW50KGUuZGF0YSgicmFkaXVzIiksIDApLAogICAgICAgICAgICAgICAgICAgIGggPSAociA9IG51bGwgPT0gZS5kYXRhKCJzcGVlZCIpID8gLTIwIDogZS5kYXRhKCJzcGVlZCIpLCAobyA9IG51bGwgPT0gZS5kYXRhKCJvcmlnaW4iKSA/ICI1MCUgNTAlIiA6IGUuZGF0YSgib3JpZ2luIikpLnNwbGl0KCIgIikpLAogICAgICAgICAgICAgICAgICAgIHYgPSBuZXcgT2JqZWN0OwogICAgICAgICAgICAgICAgMSA8PSBoLmxlbmd0aCA/ICh2LnggPSBoWzBdLCB2LnkgPSBoWzFdKSA6ICh2LnggPSAiNTAlIiwgdi55ID0gIjUwJSIpLCBmICo9IHQ7CiAgICAgICAgICAgICAgICB2YXIgXyA9IChwYXJzZUludCh2LngsIDApIC8gMTAwIC0gLjUpICogZS53aWR0aCgpLAogICAgICAgICAgICAgICAgICAgIGIgPSAocGFyc2VJbnQodi55LCAwKSAvIDEwMCAtIC41KSAqIGUuaGVpZ2h0KCksCiAgICAgICAgICAgICAgICAgICAgeSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgYW5nOiB1LAogICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiBlLAogICAgICAgICAgICAgICAgICAgICAgICB1bml0OiBmLAogICAgICAgICAgICAgICAgICAgICAgICB4b2Zmc2V0OiAwICsgXywKICAgICAgICAgICAgICAgICAgICAgICAgeW9mZnNldDogLTEgKiBmICsgYgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgdyA9IHBhcnNlSW50KHUsIDApLAogICAgICAgICAgICAgICAgICAgIHggPSBuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKHksIHIsIHsKICAgICAgICAgICAgICAgICAgICAgICAgYTogMCArIHcKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGE6IDM2MCArIHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5MaW5lYXIuZWFzZU5vbmUKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHguZXZlbnRDYWxsYmFjaygib25VcGRhdGUiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBlLmEgKiAoTWF0aC5QSSAvIDE4MCksCiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlLnlvZmZzZXQgKyBlLnVuaXQgKiAoMSAtIE1hdGguc2luKHQpKSwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IGUueG9mZnNldCArIE1hdGguY29zKHQpICogZS51bml0OwogICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGUuZWxlbWVudCwgLjEsIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB4OiBhLAogICAgICAgICAgICAgICAgICAgICAgICB5OiBpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIFt5XSksIHguZXZlbnRDYWxsYmFjaygib25Db21wbGV0ZSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICBlLl9sb29wX3RpbWVsaW5lLnJlc3RhcnQoKQogICAgICAgICAgICAgICAgfSwgW2ldKSwgaS5fbG9vcF90aW1lbGluZS5hcHBlbmQoeCkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgciA9IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgZS5jbG9zZXN0KCIucnMtcGVuZHVsdW0sIC5ycy1zbGlkZWxvb3AsIC5ycy1wdWxzZSwgLnJzLXdhdmUiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVsbCAhPSB0aGlzLl9sb29wX3RpbWVsaW5lICYmICh0aGlzLl9sb29wX3RpbWVsaW5lLnBhdXNlKCksIHRoaXMuX2xvb3BfdGltZWxpbmUgPSBudWxsKQogICAgICAgICAgICB9KQogICAgICAgIH0KfShqUXVlcnkpOwohIGZ1bmN0aW9uKHQpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBPID0galF1ZXJ5LmZuLnJldm9sdXRpb24sCiAgICAgICAgSSA9IE8uaXNfbW9iaWxlKCksCiAgICAgICAgZSA9IHsKICAgICAgICAgICAgYWxpYXM6ICJOYXZpZ2F0aW9uIE1pbiBKUyIsCiAgICAgICAgICAgIG5hbWU6ICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMubmF2aWdhdGlvbi5taW4uanMiLAogICAgICAgICAgICBtaW5fY29yZTogIjUuNC4wIiwKICAgICAgICAgICAgdmVyc2lvbjogIjEuMy41IgogICAgICAgIH07CiAgICBqUXVlcnkuZXh0ZW5kKCEwLCBPLCB7CiAgICAgICAgaGlkZVVuSGlkZU5hdjogZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSA9IHQuYy53aWR0aCgpLAogICAgICAgICAgICAgICAgaSA9IHQubmF2aWdhdGlvbi5hcnJvd3MsCiAgICAgICAgICAgICAgICBhID0gdC5uYXZpZ2F0aW9uLmJ1bGxldHMsCiAgICAgICAgICAgICAgICBuID0gdC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMsCiAgICAgICAgICAgICAgICByID0gdC5uYXZpZ2F0aW9uLnRhYnM7CiAgICAgICAgICAgIG0oaSkgJiYgbyh0LmMuZmluZCgiLnRwYXJyb3dzIiksIGkuaGlkZV91bmRlciwgZSwgaS5oaWRlX292ZXIpLCBtKGEpICYmIG8odC5jLmZpbmQoIi50cC1idWxsZXRzIiksIGEuaGlkZV91bmRlciwgZSwgYS5oaWRlX292ZXIpLCBtKG4pICYmIG8odC5jLnBhcmVudCgpLmZpbmQoIi50cC10aHVtYnMiKSwgbi5oaWRlX3VuZGVyLCBlLCBuLmhpZGVfb3ZlciksIG0ocikgJiYgbyh0LmMucGFyZW50KCkuZmluZCgiLnRwLXRhYnMiKSwgci5oaWRlX3VuZGVyLCBlLCByLmhpZGVfb3ZlciksIGwodCkKICAgICAgICB9LAogICAgICAgIHJlc2l6ZVRodW1ic1RhYnM6IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgaWYgKHQubmF2aWdhdGlvbiAmJiB0Lm5hdmlnYXRpb24udGFicy5lbmFibGUgfHwgdC5uYXZpZ2F0aW9uICYmIHQubmF2aWdhdGlvbi50aHVtYm5haWxzLmVuYWJsZSkgewogICAgICAgICAgICAgICAgdmFyIGkgPSAoalF1ZXJ5KHdpbmRvdykud2lkdGgoKSAtIDQ4MCkgLyA1MDAsCiAgICAgICAgICAgICAgICAgICAgYSA9IG5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSwKICAgICAgICAgICAgICAgICAgICBuID0gdC5uYXZpZ2F0aW9uLnRhYnMsCiAgICAgICAgICAgICAgICAgICAgciA9IHQubmF2aWdhdGlvbi50aHVtYm5haWxzLAogICAgICAgICAgICAgICAgICAgIG8gPSB0Lm5hdmlnYXRpb24uYnVsbGV0czsKICAgICAgICAgICAgICAgIGlmIChhLnBhdXNlKCksIGkgPSAxIDwgaSA/IDEgOiBpIDwgMCA/IDAgOiBpLCBtKG4pICYmIChlIHx8IG4ud2lkdGggPiBuLm1pbl93aWR0aCkgJiYgZChpLCBhLCB0LmMsIG4sIHQuc2xpZGVhbW91bnQsICJ0YWIiKSwgbShyKSAmJiAoZSB8fCByLndpZHRoID4gci5taW5fd2lkdGgpICYmIGQoaSwgYSwgdC5jLCByLCB0LnNsaWRlYW1vdW50LCAidGh1bWIiKSwgbShvKSAmJiBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSB0LmMuZmluZCgiLnRwLWJ1bGxldHMiKTsKICAgICAgICAgICAgICAgICAgICBzLmZpbmQoIi50cC1idWxsZXQiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gdCArIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gZS5vdXRlcldpZHRoKCkgKyBwYXJzZUludCh2b2lkIDAgPT09IG8uc3BhY2UgPyAwIDogby5zcGFjZSwgMCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gZS5vdXRlckhlaWdodCgpICsgcGFyc2VJbnQodm9pZCAwID09PSBvLnNwYWNlID8gMCA6IG8uc3BhY2UsIDApOwogICAgICAgICAgICAgICAgICAgICAgICAidmVydGljYWwiID09PSBvLmRpcmVjdGlvbiA/IChlLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IChpIC0gMSkgKiBuICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBzLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IChpIC0gMSkgKiBuICsgZS5vdXRlckhlaWdodCgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGUub3V0ZXJXaWR0aCgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSA6IChlLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAoaSAtIDEpICogYSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6ICIwcHgiCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBzLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogKGkgLSAxKSAqIGEgKyBlLm91dGVyV2lkdGgoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogZS5vdXRlckhlaWdodCgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBhLnBsYXkoKSwgbCh0KQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAhMAogICAgICAgIH0sCiAgICAgICAgdXBkYXRlTmF2SW5kZXhlczogZnVuY3Rpb24odCkgewogICAgICAgICAgICBmdW5jdGlvbiBlKHQpIHsKICAgICAgICAgICAgICAgIDAgPCBpLmZpbmQodCkubGVuZ2h0ICYmIGkuZmluZCh0KS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBqUXVlcnkodGhpcykuZGF0YSgibGlpbmRleCIsIHQpCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBpID0gdC5jOwogICAgICAgICAgICBlKCIudHAtdGFiIiksIGUoIi50cC1idWxsZXQiKSwgZSgiLnRwLXRodW1iIiksIE8ucmVzaXplVGh1bWJzVGFicyh0LCAhMCksIE8ubWFuYWdlTmF2aWdhdGlvbih0KQogICAgICAgIH0sCiAgICAgICAgbWFuYWdlTmF2aWdhdGlvbjogZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSA9IE8uZ2V0SG9yaXpvbnRhbE9mZnNldCh0LmMucGFyZW50KCksICJsZWZ0IiksCiAgICAgICAgICAgICAgICBpID0gTy5nZXRIb3Jpem9udGFsT2Zmc2V0KHQuYy5wYXJlbnQoKSwgInJpZ2h0Iik7CiAgICAgICAgICAgIG0odC5uYXZpZ2F0aW9uLmJ1bGxldHMpICYmICgiZnVsbHNjcmVlbiIgIT0gdC5zbGlkZXJMYXlvdXQgJiYgImZ1bGx3aWR0aCIgIT0gdC5zbGlkZXJMYXlvdXQgJiYgKHQubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0X29sZCA9IHZvaWQgMCA9PT0gdC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXRfb2xkID8gdC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXQgOiB0Lm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQsIHQubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0ID0gImNlbnRlciIgPT09IHQubmF2aWdhdGlvbi5idWxsZXRzLmhfYWxpZ24gPyB0Lm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQgKyBlIC8gMiAtIGkgLyAyIDogdC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXRfb2xkICsgZSAtIGkpLCBUKHQuYy5maW5kKCIudHAtYnVsbGV0cyIpLCB0Lm5hdmlnYXRpb24uYnVsbGV0cywgdCkpLCBtKHQubmF2aWdhdGlvbi50aHVtYm5haWxzKSAmJiBUKHQuYy5wYXJlbnQoKS5maW5kKCIudHAtdGh1bWJzIiksIHQubmF2aWdhdGlvbi50aHVtYm5haWxzLCB0KSwgbSh0Lm5hdmlnYXRpb24udGFicykgJiYgVCh0LmMucGFyZW50KCkuZmluZCgiLnRwLXRhYnMiKSwgdC5uYXZpZ2F0aW9uLnRhYnMsIHQpLCBtKHQubmF2aWdhdGlvbi5hcnJvd3MpICYmICgiZnVsbHNjcmVlbiIgIT0gdC5zbGlkZXJMYXlvdXQgJiYgImZ1bGx3aWR0aCIgIT0gdC5zbGlkZXJMYXlvdXQgJiYgKHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQgPSB2b2lkIDAgPT09IHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQgPyB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXQgOiB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXRfb2xkLCB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXQgPSAicmlnaHQiID09PSB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9hbGlnbiA/IHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQgKyBpIDogdC5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0X29sZCArIGUsIHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkID0gdm9pZCAwID09PSB0Lm5hdmlnYXRpb24uYXJyb3dzLnJpZ2h0Lmhfb2Zmc2V0X29sZCA/IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXQgOiB0Lm5hdmlnYXRpb24uYXJyb3dzLnJpZ2h0Lmhfb2Zmc2V0X29sZCwgdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldCA9ICJyaWdodCIgPT09IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9hbGlnbiA/IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkICsgaSA6IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkICsgZSksIFQodC5jLmZpbmQoIi50cC1sZWZ0YXJyb3cudHBhcnJvd3MiKSwgdC5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0LCB0KSwgVCh0LmMuZmluZCgiLnRwLXJpZ2h0YXJyb3cudHBhcnJvd3MiKSwgdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodCwgdCkpLCBtKHQubmF2aWdhdGlvbi50aHVtYm5haWxzKSAmJiBjKHQuYy5wYXJlbnQoKS5maW5kKCIudHAtdGh1bWJzIiksIHQubmF2aWdhdGlvbi50aHVtYm5haWxzKSwgbSh0Lm5hdmlnYXRpb24udGFicykgJiYgYyh0LmMucGFyZW50KCkuZmluZCgiLnRwLXRhYnMiKSwgdC5uYXZpZ2F0aW9uLnRhYnMpCiAgICAgICAgfSwKICAgICAgICBjcmVhdGVOYXZpZ2F0aW9uOiBmdW5jdGlvbihvLCBzKSB7CiAgICAgICAgICAgIGlmICgic3RvcCIgPT09IE8uY29tcGFyZV92ZXJzaW9uKGUpLmNoZWNrKSByZXR1cm4gITE7CiAgICAgICAgICAgIHZhciBkID0gby5wYXJlbnQoKSwKICAgICAgICAgICAgICAgIGwgPSBzLm5hdmlnYXRpb24uYXJyb3dzLAogICAgICAgICAgICAgICAgYSA9IHMubmF2aWdhdGlvbi5idWxsZXRzLAogICAgICAgICAgICAgICAgaCA9IHMubmF2aWdhdGlvbi50aHVtYm5haWxzLAogICAgICAgICAgICAgICAgcCA9IHMubmF2aWdhdGlvbi50YWJzLAogICAgICAgICAgICAgICAgdCA9IG0obCksCiAgICAgICAgICAgICAgICBuID0gbShhKSwKICAgICAgICAgICAgICAgIHIgPSBtKGgpLAogICAgICAgICAgICAgICAgdSA9IG0ocCk7CiAgICAgICAgICAgIGkobywgcyksIGcobywgcyksIHQgJiYgXyhvLCBsLCBzKSwgcy5saS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHMubGlbcy5saS5sZW5ndGggLSAxIC0gdF0pLAogICAgICAgICAgICAgICAgICAgIGkgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICBuICYmIChzLm5hdmlnYXRpb24uYnVsbGV0cy5ydGwgPyB5KG8sIGEsIGUsIHMpIDogeShvLCBhLCBpLCBzKSksIHIgJiYgKHMubmF2aWdhdGlvbi50aHVtYm5haWxzLnJ0bCA/IFMobywgaCwgZSwgInRwLXRodW1iIiwgcykgOiBTKG8sIGgsIGksICJ0cC10aHVtYiIsIHMpKSwgdSAmJiAocy5uYXZpZ2F0aW9uLnRhYnMucnRsID8gUyhvLCBwLCBlLCAidHAtdGFiIiwgcykgOiBTKG8sIHAsIGksICJ0cC10YWIiLCBzKSkKICAgICAgICAgICAgfSksIG8uYmluZCgicmV2b2x1dGlvbi5zbGlkZS5vbmFmdGVyc3dhcCByZXZvbHV0aW9uLm5leHRzbGlkZS53YWl0aW5nIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IDAgPT0gby5maW5kKCIubmV4dC1yZXZzbGlkZSIpLmxlbmd0aCA/IG8uZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmRhdGEoImluZGV4IikgOiBvLmZpbmQoIi5uZXh0LXJldnNsaWRlIikuZGF0YSgiaW5kZXgiKTsKICAgICAgICAgICAgICAgIG8uZmluZCgiLnRwLWJ1bGxldCIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJsaXJlZiIpID09PSBpID8gdC5hZGRDbGFzcygic2VsZWN0ZWQiKSA6IHQucmVtb3ZlQ2xhc3MoInNlbGVjdGVkIikKICAgICAgICAgICAgICAgIH0pLCBkLmZpbmQoIi50cC10aHVtYiwgLnRwLXRhYiIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgdC5kYXRhKCJsaXJlZiIpID09PSBpID8gKHQuYWRkQ2xhc3MoInNlbGVjdGVkIiksIHQuaGFzQ2xhc3MoInRwLXRhYiIpID8gYyhkLmZpbmQoIi50cC10YWJzIiksIHApIDogYyhkLmZpbmQoIi50cC10aHVtYnMiKSwgaCkpIDogdC5yZW1vdmVDbGFzcygic2VsZWN0ZWQiKQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgYSA9IDAsCiAgICAgICAgICAgICAgICAgICAgbiA9ICExOwogICAgICAgICAgICAgICAgcy50aHVtYnMgJiYgalF1ZXJ5LmVhY2gocy50aHVtYnMsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBhID0gITEgPT09IG4gPyB0IDogYSwgbiA9IGUuaWQgPT09IGkgfHwgdCA9PT0gaSB8fCBuCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciB0ID0gMCA8IGEgPyBhIC0gMSA6IHMuc2xpZGVhbW91bnQgLSAxLAogICAgICAgICAgICAgICAgICAgIGUgPSBhICsgMSA9PSBzLnNsaWRlYW1vdW50ID8gMCA6IGEgKyAxOwogICAgICAgICAgICAgICAgaWYgKCEwID09PSBsLmVuYWJsZSkgewogICAgICAgICAgICAgICAgICAgIHZhciByID0gbC50bXA7CiAgICAgICAgICAgICAgICAgICAgaWYgKG51bGwgIT0gcy50aHVtYnNbdF0gJiYgalF1ZXJ5LmVhY2gocy50aHVtYnNbdF0ucGFyYW1zLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByID0gci5yZXBsYWNlKGUuZnJvbSwgZS50bykKICAgICAgICAgICAgICAgICAgICAgICAgfSksIGwubGVmdC5qLmh0bWwociksIHIgPSBsLnRtcCwgZSA+IHMuc2xpZGVhbW91bnQpIHJldHVybjsKICAgICAgICAgICAgICAgICAgICBqUXVlcnkuZWFjaChzLnRodW1ic1tlXS5wYXJhbXMsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgciA9IHIucmVwbGFjZShlLmZyb20sIGUudG8pCiAgICAgICAgICAgICAgICAgICAgfSksIGwucmlnaHQuai5odG1sKHIpLCBsLnJ0bCA/IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobC5sZWZ0LmouZmluZCgiLnRwLWFyci1pbWdob2xkZXIiKSwgewogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICJ1cmwoIiArIHMudGh1bWJzW2VdLnNyYyArICIpIgogICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobC5yaWdodC5qLmZpbmQoIi50cC1hcnItaW1naG9sZGVyIiksIHsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiAidXJsKCIgKyBzLnRodW1ic1t0XS5zcmMgKyAiKSIKICAgICAgICAgICAgICAgICAgICB9KSkgOiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwubGVmdC5qLmZpbmQoIi50cC1hcnItaW1naG9sZGVyIiksIHsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiAidXJsKCIgKyBzLnRodW1ic1t0XS5zcmMgKyAiKSIKICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwucmlnaHQuai5maW5kKCIudHAtYXJyLWltZ2hvbGRlciIpLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogInVybCgiICsgcy50aHVtYnNbZV0uc3JjICsgIikiCiAgICAgICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pLCBmKGwpLCBmKGEpLCBmKGgpLCBmKHApLCBkLm9uKCJtb3VzZWVudGVyIG1vdXNlbW92ZSIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZC5oYXNDbGFzcygidHAtbW91c2VvdmVyIikgfHwgKGQuYWRkQ2xhc3MoInRwLW1vdXNlb3ZlciIpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5raWxsRGVsYXllZENhbGxzVG8odyksIHQgJiYgbC5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cGFycm93cyIpLCBsLCAic2hvdyIpLCBuICYmIGEuaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHAtYnVsbGV0cyIpLCBhLCAic2hvdyIpLCByICYmIGguaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHAtdGh1bWJzIiksIGgsICJzaG93IiksIHUgJiYgcC5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cC10YWJzIiksIHAsICJzaG93IiksIEkgJiYgKGQucmVtb3ZlQ2xhc3MoInRwLW1vdXNlb3ZlciIpLCBiKG8sIHMpKSkKICAgICAgICAgICAgfSksIGQub24oIm1vdXNlbGVhdmUiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGQucmVtb3ZlQ2xhc3MoInRwLW1vdXNlb3ZlciIpLCBiKG8sIHMpCiAgICAgICAgICAgIH0pLCB0ICYmIGwuaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHBhcnJvd3MiKSwgbCwgImhpZGUiLCAwKSwgbiAmJiBhLmhpZGVfb25sZWF2ZSAmJiB3KGQuZmluZCgiLnRwLWJ1bGxldHMiKSwgYSwgImhpZGUiLCAwKSwgciAmJiBoLmhpZGVfb25sZWF2ZSAmJiB3KGQuZmluZCgiLnRwLXRodW1icyIpLCBoLCAiaGlkZSIsIDApLCB1ICYmIHAuaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHAtdGFicyIpLCBwLCAiaGlkZSIsIDApLCByICYmIHYoZC5maW5kKCIudHAtdGh1bWJzIiksIHMpLCB1ICYmIHYoZC5maW5kKCIudHAtdGFicyIpLCBzKSwgImNhcm91c2VsIiA9PT0gcy5zbGlkZXJUeXBlICYmIHYobywgcywgITApLCAoIm9uIiA9PT0gcy5uYXZpZ2F0aW9uLnRvdWNoLnRvdWNoT25EZXNrdG9wIHx8ICJvbiIgPT0gcy5uYXZpZ2F0aW9uLnRvdWNoLnRvdWNoZW5hYmxlZCAmJiBJKSAmJiB2KG8sIHMsICJzd2lwZWJhc2VkIikKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBjID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICB2YXIgaSA9ICh0Lmhhc0NsYXNzKCJ0cC10aHVtYnMiKSwgdC5oYXNDbGFzcygidHAtdGh1bWJzIikgPyAiLnRwLXRodW1iLW1hc2siIDogIi50cC10YWItbWFzayIpLAogICAgICAgICAgICAgICAgYSA9IHQuaGFzQ2xhc3MoInRwLXRodW1icyIpID8gIi50cC10aHVtYnMtaW5uZXItd3JhcHBlciIgOiAiLnRwLXRhYnMtaW5uZXItd3JhcHBlciIsCiAgICAgICAgICAgICAgICBuID0gdC5oYXNDbGFzcygidHAtdGh1bWJzIikgPyAiLnRwLXRodW1iIiA6ICIudHAtdGFiIiwKICAgICAgICAgICAgICAgIHIgPSB0LmZpbmQoaSksCiAgICAgICAgICAgICAgICBvID0gci5maW5kKGEpLAogICAgICAgICAgICAgICAgcyA9IGUuZGlyZWN0aW9uLAogICAgICAgICAgICAgICAgZCA9ICJ2ZXJ0aWNhbCIgPT09IHMgPyByLmZpbmQobikuZmlyc3QoKS5vdXRlckhlaWdodCghMCkgKyBlLnNwYWNlIDogci5maW5kKG4pLmZpcnN0KCkub3V0ZXJXaWR0aCghMCkgKyBlLnNwYWNlLAogICAgICAgICAgICAgICAgbCA9ICJ2ZXJ0aWNhbCIgPT09IHMgPyByLmhlaWdodCgpIDogci53aWR0aCgpLAogICAgICAgICAgICAgICAgaCA9IHBhcnNlSW50KHIuZmluZChuICsgIi5zZWxlY3RlZCIpLmRhdGEoImxpaW5kZXgiKSwgMCksCiAgICAgICAgICAgICAgICBwID0gbCAvIGQsCiAgICAgICAgICAgICAgICB1ID0gInZlcnRpY2FsIiA9PT0gcyA/IHIuaGVpZ2h0KCkgOiByLndpZHRoKCksCiAgICAgICAgICAgICAgICBjID0gMCAtIGggKiBkLAogICAgICAgICAgICAgICAgZyA9ICJ2ZXJ0aWNhbCIgPT09IHMgPyBvLmhlaWdodCgpIDogby53aWR0aCgpLAogICAgICAgICAgICAgICAgdiA9IGMgPCAwIC0gKGcgLSB1KSA/IDAgLSAoZyAtIHUpIDogMCA8IHYgPyAwIDogYywKICAgICAgICAgICAgICAgIGYgPSBvLmRhdGEoIm9mZnNldCIpOwogICAgICAgICAgICAyIDwgcCAmJiAodiA9IGMgLSAoZiArIGQpIDw9IDAgPyBjIC0gKGYgKyBkKSA8IDAgLSBkID8gZiA6IHYgKyBkIDogdiwgdiA9IGMgLSBkICsgZiArIGwgPCBkICYmIGMgKyAoTWF0aC5yb3VuZChwKSAtIDIpICogZCA8IGYgPyBjICsgKE1hdGgucm91bmQocCkgLSAyKSAqIGQgOiB2KSwgdiA9IHYgPCAwIC0gKGcgLSB1KSA/IDAgLSAoZyAtIHUpIDogMCA8IHYgPyAwIDogdiwgInZlcnRpY2FsIiAhPT0gcyAmJiByLndpZHRoKCkgPj0gby53aWR0aCgpICYmICh2ID0gMCksICJ2ZXJ0aWNhbCIgPT09IHMgJiYgci5oZWlnaHQoKSA+PSBvLmhlaWdodCgpICYmICh2ID0gMCksIHQuaGFzQ2xhc3MoImRyYWdnZWQiKSB8fCAoInZlcnRpY2FsIiA9PT0gcyA/IG8uZGF0YSgidG1tb3ZlIiwgcHVuY2hncy5Ud2VlbkxpdGUudG8obywgLjUsIHsKICAgICAgICAgICAgICAgIHRvcDogdiArICJweCIsCiAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgfSkpIDogby5kYXRhKCJ0bW1vdmUiLCBwdW5jaGdzLlR3ZWVuTGl0ZS50byhvLCAuNSwgewogICAgICAgICAgICAgICAgbGVmdDogdiArICJweCIsCiAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgfSkpLCBvLmRhdGEoIm9mZnNldCIsIHYpKQogICAgICAgIH0sCiAgICAgICAgZCA9IGZ1bmN0aW9uKHQsIGksIGUsIGEsIG4sIHIpIHsKICAgICAgICAgICAgdmFyIG8gPSBlLnBhcmVudCgpLmZpbmQoIi50cC0iICsgciArICJzIiksCiAgICAgICAgICAgICAgICBzID0gby5maW5kKCIudHAtIiArIHIgKyAicy1pbm5lci13cmFwcGVyIiksCiAgICAgICAgICAgICAgICBkID0gby5maW5kKCIudHAtIiArIHIgKyAiLW1hc2siKSwKICAgICAgICAgICAgICAgIGwgPSBhLndpZHRoICogdCA8IGEubWluX3dpZHRoID8gYS5taW5fd2lkdGggOiBNYXRoLnJvdW5kKGEud2lkdGggKiB0KSwKICAgICAgICAgICAgICAgIGggPSBNYXRoLnJvdW5kKGwgLyBhLndpZHRoICogYS5oZWlnaHQpLAogICAgICAgICAgICAgICAgcCA9ICJ2ZXJ0aWNhbCIgPT09IGEuZGlyZWN0aW9uID8gbCA6IGwgKiBuICsgYS5zcGFjZSAqIChuIC0gMSksCiAgICAgICAgICAgICAgICB1ID0gInZlcnRpY2FsIiA9PT0gYS5kaXJlY3Rpb24gPyBoICogbiArIGEuc3BhY2UgKiAobiAtIDEpIDogaCwKICAgICAgICAgICAgICAgIGMgPSAidmVydGljYWwiID09PSBhLmRpcmVjdGlvbiA/IHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbCArICJweCIKICAgICAgICAgICAgICAgIH0gOiB7CiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBoICsgInB4IgogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgaS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KG8sIGMpKSwgaS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHMsIHsKICAgICAgICAgICAgICAgIHdpZHRoOiBwICsgInB4IiwKICAgICAgICAgICAgICAgIGhlaWdodDogdSArICJweCIKICAgICAgICAgICAgfSkpLCBpLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZCwgewogICAgICAgICAgICAgICAgd2lkdGg6IHAgKyAicHgiLAogICAgICAgICAgICAgICAgaGVpZ2h0OiB1ICsgInB4IgogICAgICAgICAgICB9KSk7CiAgICAgICAgICAgIHZhciBnID0gcy5maW5kKCIudHAtIiArIHIpOwogICAgICAgICAgICByZXR1cm4gZyAmJiBqUXVlcnkuZWFjaChnLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAidmVydGljYWwiID09PSBhLmRpcmVjdGlvbiA/IGkuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChlLCB7CiAgICAgICAgICAgICAgICAgICAgdG9wOiB0ICogKGggKyBwYXJzZUludCh2b2lkIDAgPT09IGEuc3BhY2UgPyAwIDogYS5zcGFjZSwgMCkpLAogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBsICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGggKyAicHgiCiAgICAgICAgICAgICAgICB9KSkgOiAiaG9yaXpvbnRhbCIgPT09IGEuZGlyZWN0aW9uICYmIGkuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChlLCB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogdCAqIChsICsgcGFyc2VJbnQodm9pZCAwID09PSBhLnNwYWNlID8gMCA6IGEuc3BhY2UsIDApKSwKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbCArICJweCIsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBoICsgInB4IgogICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgIH0pLCBpCiAgICAgICAgfSwKICAgICAgICBpID0gZnVuY3Rpb24oZSwgaSkgewogICAgICAgICAgICAib24iID09PSBpLm5hdmlnYXRpb24ua2V5Ym9hcmROYXZpZ2F0aW9uICYmIGpRdWVyeShkb2N1bWVudCkua2V5ZG93bihmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAoImhvcml6b250YWwiID09IGkubmF2aWdhdGlvbi5rZXlib2FyZF9kaXJlY3Rpb24gJiYgMzkgPT0gdC5rZXlDb2RlIHx8ICJ2ZXJ0aWNhbCIgPT0gaS5uYXZpZ2F0aW9uLmtleWJvYXJkX2RpcmVjdGlvbiAmJiA0MCA9PSB0LmtleUNvZGUpICYmIChpLnNjX2luZGljYXRvciA9ICJhcnJvdyIsIGkuc2NfaW5kaWNhdG9yX2RpciA9IDAsIE8uY2FsbGluZ05ld1NsaWRlKGUsIDEpKSwgKCJob3Jpem9udGFsIiA9PSBpLm5hdmlnYXRpb24ua2V5Ym9hcmRfZGlyZWN0aW9uICYmIDM3ID09IHQua2V5Q29kZSB8fCAidmVydGljYWwiID09IGkubmF2aWdhdGlvbi5rZXlib2FyZF9kaXJlY3Rpb24gJiYgMzggPT0gdC5rZXlDb2RlKSAmJiAoaS5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCBpLnNjX2luZGljYXRvcl9kaXIgPSAxLCBPLmNhbGxpbmdOZXdTbGlkZShlLCAtMSkpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICBnID0gZnVuY3Rpb24oZywgdikgewogICAgICAgICAgICBpZiAoIm9uIiA9PT0gdi5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsTmF2aWdhdGlvbiB8fCAiY2Fyb3VzZWwiID09PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uKSB7CiAgICAgICAgICAgICAgICB2LmlzSUVFbGV2ZW4gPSAhIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1RyaWRlbnQuKnJ2XDoxMVwuLyksIHYuaXNTYWZhcmkgPSAhIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL3NhZmFyaS9pKSwgdi5pc2Nocm9tZSA9ICEhbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvY2hyb21lL2kpOwogICAgICAgICAgICAgICAgdmFyIGYgPSB2LmlzY2hyb21lID8gLTQ5IDogdi5pc0lFRWxldmVuIHx8IHYuaXNTYWZhcmkgPyAtOSA6IG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL21vemlsbGEvaSkgPyAtMjkgOiAtNDksCiAgICAgICAgICAgICAgICAgICAgbSA9IHYuaXNjaHJvbWUgPyA0OSA6IHYuaXNJRUVsZXZlbiB8fCB2LmlzU2FmYXJpID8gOSA6IG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL21vemlsbGEvaSkgPyAyOSA6IDQ5OwogICAgICAgICAgICAgICAgZy5vbigibW91c2V3aGVlbCBET01Nb3VzZVNjcm9sbCIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgYSwgbiwgciwgbyA9IChlID0gdC5vcmlnaW5hbEV2ZW50LCByID0gbiA9IGEgPSBpID0gMCwgImRldGFpbCIgaW4gZSAmJiAoYSA9IGUuZGV0YWlsKSwgIndoZWVsRGVsdGEiIGluIGUgJiYgKGEgPSAtZS53aGVlbERlbHRhIC8gMTIwKSwgIndoZWVsRGVsdGFZIiBpbiBlICYmIChhID0gLWUud2hlZWxEZWx0YVkgLyAxMjApLCAid2hlZWxEZWx0YVgiIGluIGUgJiYgKGkgPSAtZS53aGVlbERlbHRhWCAvIDEyMCksICJheGlzIiBpbiBlICYmIGUuYXhpcyA9PT0gZS5IT1JJWk9OVEFMX0FYSVMgJiYgKGkgPSBhLCBhID0gMCksIG4gPSAxICogaSwgciA9IDEgKiBhLCAiZGVsdGFZIiBpbiBlICYmIChyID0gZS5kZWx0YVkpLCAiZGVsdGFYIiBpbiBlICYmIChuID0gZS5kZWx0YVgpLCAobiB8fCByKSAmJiBlLmRlbHRhTW9kZSAmJiAoZS5kZWx0YU1vZGUsIG4gKj0gMSwgciAqPSAxKSwgbiAmJiAhaSAmJiAoaSA9IG4gPCAxID8gLTEgOiAxKSwgciAmJiAhYSAmJiAoYSA9IHIgPCAxID8gLTEgOiAxKSwgKDMwMCA8IChyID0gbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvbW96aWxsYS9pKSA/IDEwICogciA6IHIpIHx8IHIgPCAtMzAwKSAmJiAociAvPSAxMCksIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwaW5YOiBpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Bpblk6IGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXhlbFg6IG4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaXhlbFk6IHIKICAgICAgICAgICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBnLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGkuYWN0aXZlLXJldnNsaWRlIikuaW5kZXgoKSwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGcuZmluZCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaS5wcm9jZXNzaW5nLXJldnNsaWRlIikuaW5kZXgoKSwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9IC0xICE9IHMgJiYgMCA9PSBzIHx8IC0xICE9IGQgJiYgMCA9PSBkLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gLTEgIT0gcyAmJiBzID09IHYuc2xpZGVhbW91bnQgLSAxIHx8IDEgIT0gZCAmJiBkID09IHYuc2xpZGVhbW91bnQgLSAxLAogICAgICAgICAgICAgICAgICAgICAgICBwID0gITA7CiAgICAgICAgICAgICAgICAgICAgImNhcm91c2VsIiA9PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uICYmIChsID0gaCA9ICExKSwgLTEgPT0gZCA/IG8ucGl4ZWxZIDwgZiA/IChsIHx8ICh2LnNjX2luZGljYXRvciA9ICJhcnJvdyIsICJyZXZlcnNlIiAhPT0gdi5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsUmV2ZXJzZSAmJiAodi5zY19pbmRpY2F0b3JfZGlyID0gMSwgTy5jYWxsaW5nTmV3U2xpZGUoZywgLTEpKSwgcCA9ICExKSwgaCB8fCAodi5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCAicmV2ZXJzZSIgPT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UgJiYgKHYuc2NfaW5kaWNhdG9yX2RpciA9IDAsIE8uY2FsbGluZ05ld1NsaWRlKGcsIDEpKSwgcCA9ICExKSkgOiBtIDwgby5waXhlbFkgJiYgKGggfHwgKHYuc2NfaW5kaWNhdG9yID0gImFycm93IiwgInJldmVyc2UiICE9PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlICYmICh2LnNjX2luZGljYXRvcl9kaXIgPSAwLCBPLmNhbGxpbmdOZXdTbGlkZShnLCAxKSksIHAgPSAhMSksIGwgfHwgKHYuc2NfaW5kaWNhdG9yID0gImFycm93IiwgInJldmVyc2UiID09PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlICYmICh2LnNjX2luZGljYXRvcl9kaXIgPSAxLCBPLmNhbGxpbmdOZXdTbGlkZShnLCAtMSkpLCBwID0gITEpKSA6IHAgPSAhMTsKICAgICAgICAgICAgICAgICAgICB2YXIgdSA9IHYuYy5vZmZzZXQoKS50b3AgLSBqUXVlcnkoImJvZHkiKS5zY3JvbGxUb3AoKSwKICAgICAgICAgICAgICAgICAgICAgICAgYyA9IHUgKyB2LmMuaGVpZ2h0KCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJjYXJvdXNlbCIgIT0gdi5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsTmF2aWdhdGlvbiA/ICgicmV2ZXJzZSIgIT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UgJiYgKDAgPCB1ICYmIDAgPCBvLnBpeGVsWSB8fCBjIDwgalF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkgJiYgby5waXhlbFkgPCAwKSAmJiAocCA9ICEwKSwgInJldmVyc2UiID09PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlICYmICh1IDwgMCAmJiBvLnBpeGVsWSA8IDAgfHwgYyA+IGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpICYmIDAgPCBvLnBpeGVsWSkgJiYgKHAgPSAhMCkpIDogcCA9ICExLCAwID09IHAgPyAodC5wcmV2ZW50RGVmYXVsdCh0KSwgITEpIDogdm9pZCAwCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBIID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICByZXR1cm4gITAgPT09ICh0ID0gSSA/IGpRdWVyeShpLnRhcmdldCkuY2xvc2VzdCgiLiIgKyB0KS5sZW5ndGggfHwgalF1ZXJ5KGkuc3JjRWxlbWVudCkuY2xvc2VzdCgiLiIgKyB0KS5sZW5ndGggOiBqUXVlcnkoaS50b0VsZW1lbnQpLmNsb3Nlc3QoIi4iICsgdCkubGVuZ3RoIHx8IGpRdWVyeShpLm9yaWdpbmFsVGFyZ2V0KS5jbG9zZXN0KCIuIiArIHQpLmxlbmd0aCkgfHwgMSA9PT0gdCA/IDEgOiAwCiAgICAgICAgfSwKICAgICAgICB2ID0gZnVuY3Rpb24oQywgTCwgdCkgewogICAgICAgICAgICB2YXIgayA9IEwuY2Fyb3VzZWw7CiAgICAgICAgICAgIGpRdWVyeSgiLmJ1bGxldCwgLmJ1bGxldHMsIC50cC1idWxsZXRzLCAudHBhcnJvd3MiKS5hZGRDbGFzcygibm9Td2lwZSIpLCBrLkxpbWl0ID0gImVuZGxlc3MiOwogICAgICAgICAgICB2YXIgZSA9IChJIHx8IE8uZ2V0X2Jyb3dzZXIoKSwgQyksCiAgICAgICAgICAgICAgICBpID0gInZlcnRpY2FsIiA9PT0gTC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuZGlyZWN0aW9uIHx8ICJ2ZXJ0aWNhbCIgPT09IEwubmF2aWdhdGlvbi50YWJzLmRpcmVjdGlvbiA/ICJub25lIiA6ICJ2ZXJ0aWNhbCIsCiAgICAgICAgICAgICAgICBRID0gTC5uYXZpZ2F0aW9uLnRvdWNoLnN3aXBlX2RpcmVjdGlvbiB8fCAiaG9yaXpvbnRhbCI7CiAgICAgICAgICAgIGkgPSAic3dpcGViYXNlZCIgPT0gdCAmJiAidmVydGljYWwiID09IFEgPyAibm9uZSIgOiB0ID8gInZlcnRpY2FsIiA6IGksIGpRdWVyeS5mbi5zd2lwZXRwIHx8IChqUXVlcnkuZm4uc3dpcGV0cCA9IGpRdWVyeS5mbi5zd2lwZSksIGpRdWVyeS5mbi5zd2lwZXRwLmRlZmF1bHRzICYmIGpRdWVyeS5mbi5zd2lwZXRwLmRlZmF1bHRzLmV4Y2x1ZGVkRWxlbWVudHMgfHwgalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMgfHwgKGpRdWVyeS5mbi5zd2lwZXRwLmRlZmF1bHRzID0gbmV3IE9iamVjdCksIGpRdWVyeS5mbi5zd2lwZXRwLmRlZmF1bHRzLmV4Y2x1ZGVkRWxlbWVudHMgPSAibGFiZWwsIGJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIC5ub1N3aXBlIiwgZS5zd2lwZXRwKHsKICAgICAgICAgICAgICAgIGFsbG93UGFnZVNjcm9sbDogaSwKICAgICAgICAgICAgICAgIHRyaWdnZXJPblRvdWNoTGVhdmU6ICEwLAogICAgICAgICAgICAgICAgdHJlc2hvbGQ6IEwubmF2aWdhdGlvbi50b3VjaC5zd2lwZV90cmVzaG9sZCwKICAgICAgICAgICAgICAgIGZpbmdlcnM6IEwubmF2aWdhdGlvbi50b3VjaC5zd2lwZV9taW5fdG91Y2hlcywKICAgICAgICAgICAgICAgIGV4Y2x1ZGVFbGVtZW50czogalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMuZXhjbHVkZWRFbGVtZW50cywKICAgICAgICAgICAgICAgIHN3aXBlU3RhdHVzOiBmdW5jdGlvbih0LCBlLCBpLCBhLCBuLCByLCBvKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSBIKCJyZXZfc2xpZGVyX3dyYXBwZXIiLCAwLCB0KSwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IEgoInRwLXRodW1icyIsIDAsIHQpLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gSCgidHAtdGFicyIsIDAsIHQpLAogICAgICAgICAgICAgICAgICAgICAgICBoID0gISFqUXVlcnkodGhpcykuYXR0cigiY2xhc3MiKS5tYXRjaCgvdHAtdGFic3x0cC10aHVtYi9naSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJjYXJvdXNlbCIgPT09IEwuc2xpZGVyVHlwZSAmJiAoKCJtb3ZlIiA9PT0gZSB8fCAiZW5kIiA9PT0gZSB8fCAiY2FuY2VsIiA9PSBlKSAmJiBMLmRyYWdTdGFydGVkT3ZlclNsaWRlciAmJiAhTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgJiYgIUwuZHJhZ1N0YXJ0ZWRPdmVyVGFicyB8fCAic3RhcnQiID09PSBlICYmIDAgPCBzICYmIDAgPT09IGQgJiYgMCA9PT0gbCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEkgJiYgKCJ1cCIgPT09IGkgfHwgImRvd24iID09PSBpKSkgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKEwuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyID0gITAsIGEgPSBpICYmIGkubWF0Y2goL2xlZnR8dXAvZykgPyBNYXRoLnJvdW5kKC0xICogYSkgOiBhID0gTWF0aC5yb3VuZCgxICogYSksIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgInN0YXJ0IjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkIDAgIT09IGsucG9zaXRpb25hbmltICYmIChrLnBvc2l0aW9uYW5pbS5raWxsKCksIGsuc2xpZGVfZ2xvYmFsb2Zmc2V0ID0gIm9mZiIgPT09IGsuaW5maW5pdHkgPyBrLnNsaWRlX29mZnNldCA6IE8uc2ltcChrLnNsaWRlX29mZnNldCwgay5tYXh3aWR0aCkpLCBrLm92ZXJwdWxsID0gIm5vbmUiLCBrLndyYXAuYWRkQ2xhc3MoImRyYWdnZWQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIm1vdmUiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChMLmMuZmluZCgiLnRwLXdpdGhhY3Rpb24iKS5hZGRDbGFzcygidHAtdGVtcG9yYXJ5ZGlzYWJsZWQiKSwgay5zbGlkZV9vZmZzZXQgPSAib2ZmIiA9PT0gay5pbmZpbml0eSA/IGsuc2xpZGVfZ2xvYmFsb2Zmc2V0ICsgYSA6IE8uc2ltcChrLnNsaWRlX2dsb2JhbG9mZnNldCArIGEsIGsubWF4d2lkdGgpLCAib2ZmIiA9PT0gay5pbmZpbml0eSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcCA9ICJjZW50ZXIiID09PSBrLmhvcml6b250YWxfYWxpZ24gPyAoay53cmFwd2lkdGggLyAyIC0gay5zbGlkZV93aWR0aCAvIDIgLSBrLnNsaWRlX29mZnNldCkgLyBrLnNsaWRlX3dpZHRoIDogKDAgLSBrLnNsaWRlX29mZnNldCkgLyBrLnNsaWRlX3dpZHRoOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibm9uZSIgIT09IGsub3ZlcnB1bGwgJiYgMCAhPT0gay5vdmVycHVsbCB8fCAhKHAgPCAwIHx8IHAgPiBMLnNsaWRlYW1vdW50IC0gMSkgPyAwIDw9IHAgJiYgcCA8PSBMLnNsaWRlYW1vdW50IC0gMSAmJiAoMCA8PSBwICYmIGEgPiBrLm92ZXJwdWxsIHx8IHAgPD0gTC5zbGlkZWFtb3VudCAtIDEgJiYgYSA8IGsub3ZlcnB1bGwpICYmIChrLm92ZXJwdWxsID0gMCkgOiBrLm92ZXJwdWxsID0gYSwgay5zbGlkZV9vZmZzZXQgPSBwIDwgMCA/IGsuc2xpZGVfb2Zmc2V0ICsgKGsub3ZlcnB1bGwgLSBhKSAvIDEuMSArIE1hdGguc3FydChNYXRoLmFicygoay5vdmVycHVsbCAtIGEpIC8gMS4xKSkgOiBwID4gTC5zbGlkZWFtb3VudCAtIDEgPyBrLnNsaWRlX29mZnNldCArIChrLm92ZXJwdWxsIC0gYSkgLyAxLjEgLSBNYXRoLnNxcnQoTWF0aC5hYnMoKGsub3ZlcnB1bGwgLSBhKSAvIDEuMSkpIDogay5zbGlkZV9vZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTy5vcmdhbmlzZUNhcm91c2VsKEwsIGksICEwLCAhMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiY2FuY2VsIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrLnNsaWRlX2dsb2JhbG9mZnNldCA9IGsuc2xpZGVfb2Zmc2V0LCBrLndyYXAucmVtb3ZlQ2xhc3MoImRyYWdnZWQiKSwgTy5jYXJvdXNlbFRvRXZhbFBvc2l0aW9uKEwsIGkpLCBMLmRyYWdTdGFydGVkT3ZlclNsaWRlciA9ICExLCBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA9ICExLCBMLmRyYWdTdGFydGVkT3ZlclRhYnMgPSAhMSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTC5jLmZpbmQoIi50cC13aXRoYWN0aW9uIikucmVtb3ZlQ2xhc3MoInRwLXRlbXBvcmFyeWRpc2FibGVkIikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxOSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoIm1vdmUiICE9PSBlICYmICJlbmQiICE9PSBlICYmICJjYW5jZWwiICE9IGUgfHwgTC5kcmFnU3RhcnRlZE92ZXJTbGlkZXIgfHwgIUwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzICYmICFMLmRyYWdTdGFydGVkT3ZlclRhYnMpICYmICEoInN0YXJ0IiA9PT0gZSAmJiAwIDwgcyAmJiAoMCA8IGQgfHwgMCA8IGwpKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCJlbmQiID09IGUgJiYgIWgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoTC5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCAiaG9yaXpvbnRhbCIgPT0gUSAmJiAibGVmdCIgPT0gaSB8fCAidmVydGljYWwiID09IFEgJiYgInVwIiA9PSBpKSByZXR1cm4gTC5zY19pbmRpY2F0b3JfZGlyID0gMCwgTy5jYWxsaW5nTmV3U2xpZGUoTC5jLCAxKSwgITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCJob3Jpem9udGFsIiA9PSBRICYmICJyaWdodCIgPT0gaSB8fCAidmVydGljYWwiID09IFEgJiYgImRvd24iID09IGkpIHJldHVybiBMLnNjX2luZGljYXRvcl9kaXIgPSAxLCBPLmNhbGxpbmdOZXdTbGlkZShMLmMsIC0xKSwgITEKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBMLmRyYWdTdGFydGVkT3ZlclNsaWRlciA9ICExLCBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA9ICExLCAhKEwuZHJhZ1N0YXJ0ZWRPdmVyVGFicyA9ICExKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIDAgPCBkICYmIChMLmRyYWdTdGFydGVkT3ZlclRodW1icyA9ICEwKSwgMCA8IGwgJiYgKEwuZHJhZ1N0YXJ0ZWRPdmVyVGFicyA9ICEwKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHUgPSBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA/ICIudHAtdGh1bWJzIiA6ICIudHAtdGFicyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjID0gTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgPyAiLnRwLXRodW1iLW1hc2siIDogIi50cC10YWItbWFzayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnID0gTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgPyAiLnRwLXRodW1icy1pbm5lci13cmFwcGVyIiA6ICIudHAtdGFicy1pbm5lci13cmFwcGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYgPSBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA/ICIudHAtdGh1bWIiIDogIi50cC10YWIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZiA9IEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID8gTC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMgOiBMLm5hdmlnYXRpb24udGFiczsKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IGkgJiYgaS5tYXRjaCgvbGVmdHx1cC9nKSA/IE1hdGgucm91bmQoLTEgKiBhKSA6IGEgPSBNYXRoLnJvdW5kKDEgKiBhKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG0gPSBDLnBhcmVudCgpLmZpbmQoYyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiID0gbS5maW5kKGcpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdyA9IGYuZGlyZWN0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgXyA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyBiLmhlaWdodCgpIDogYi53aWR0aCgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgeCA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyBtLmhlaWdodCgpIDogbS53aWR0aCgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgeSA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyBtLmZpbmQodikuZmlyc3QoKS5vdXRlckhlaWdodCghMCkgKyBmLnNwYWNlIDogbS5maW5kKHYpLmZpcnN0KCkub3V0ZXJXaWR0aCghMCkgKyBmLnNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVCA9IHZvaWQgMCA9PT0gYi5kYXRhKCJvZmZzZXQiKSA/IDAgOiBwYXJzZUludChiLmRhdGEoIm9mZnNldCIpLCAwKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFMgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgInN0YXJ0IjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDLnBhcmVudCgpLmZpbmQodSkuYWRkQ2xhc3MoImRyYWdnZWQiKSwgVCA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyBiLnBvc2l0aW9uKCkudG9wIDogYi5wb3NpdGlvbigpLmxlZnQsIGIuZGF0YSgib2Zmc2V0IiwgVCksIGIuZGF0YSgidG1tb3ZlIikgJiYgYi5kYXRhKCJ0bW1vdmUiKS5wYXVzZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAibW92ZSI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF8gPD0geCkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFMgPSAwIDwgKFMgPSBUICsgYSkgPyAiaG9yaXpvbnRhbCIgPT09IHcgPyBTIC0gYi53aWR0aCgpICogKFMgLyBiLndpZHRoKCkgKiBTIC8gYi53aWR0aCgpKSA6IFMgLSBiLmhlaWdodCgpICogKFMgLyBiLmhlaWdodCgpICogUyAvIGIuaGVpZ2h0KCkpIDogUzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgaiA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyAwIC0gKGIuaGVpZ2h0KCkgLSBtLmhlaWdodCgpKSA6IDAgLSAoYi53aWR0aCgpIC0gbS53aWR0aCgpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTID0gUyA8IGogPyAiaG9yaXpvbnRhbCIgPT09IHcgPyBTICsgYi53aWR0aCgpICogKFMgLSBqKSAvIGIud2lkdGgoKSAqIChTIC0gaikgLyBiLndpZHRoKCkgOiBTICsgYi5oZWlnaHQoKSAqIChTIC0gaikgLyBiLmhlaWdodCgpICogKFMgLSBqKSAvIGIuaGVpZ2h0KCkgOiBTLCAidmVydGljYWwiID09PSB3ID8gcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGIsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBTICsgInB4IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGIsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogUyArICJweCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJjYW5jZWwiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoKSByZXR1cm4gUyA9IFQgKyBhLCBTID0gMCA8IChTID0gInZlcnRpY2FsIiA9PT0gdyA/IFMgPCAwIC0gKGIuaGVpZ2h0KCkgLSBtLmhlaWdodCgpKSA/IDAgLSAoYi5oZWlnaHQoKSAtIG0uaGVpZ2h0KCkpIDogUyA6IFMgPCAwIC0gKGIud2lkdGgoKSAtIG0ud2lkdGgoKSkgPyAwIC0gKGIud2lkdGgoKSAtIG0ud2lkdGgoKSkgOiBTKSA/IDAgOiBTLCBTID0gTWF0aC5hYnMoYSkgPiB5IC8gMTAgPyBhIDw9IDAgPyBNYXRoLmZsb29yKFMgLyB5KSAqIHkgOiBNYXRoLmNlaWwoUyAvIHkpICogeSA6IGEgPCAwID8gTWF0aC5jZWlsKFMgLyB5KSAqIHkgOiBNYXRoLmZsb29yKFMgLyB5KSAqIHksIFMgPSAwIDwgKFMgPSAidmVydGljYWwiID09PSB3ID8gUyA8IDAgLSAoYi5oZWlnaHQoKSAtIG0uaGVpZ2h0KCkpID8gMCAtIChiLmhlaWdodCgpIC0gbS5oZWlnaHQoKSkgOiBTIDogUyA8IDAgLSAoYi53aWR0aCgpIC0gbS53aWR0aCgpKSA/IDAgLSAoYi53aWR0aCgpIC0gbS53aWR0aCgpKSA6IFMpID8gMCA6IFMsICJ2ZXJ0aWNhbCIgPT09IHcgPyBwdW5jaGdzLlR3ZWVuTGl0ZS50byhiLCAuNSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IFMgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS50byhiLCAuNSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBTICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZU91dAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBTID0gUyB8fCAoInZlcnRpY2FsIiA9PT0gdyA/IGIucG9zaXRpb24oKS50b3AgOiBiLnBvc2l0aW9uKCkubGVmdCksIGIuZGF0YSgib2Zmc2V0IiwgUyksIGIuZGF0YSgiZGlzdGFuY2UiLCBhKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTC5kcmFnU3RhcnRlZE92ZXJTbGlkZXIgPSAhMSwgTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgPSAhMSwgTC5kcmFnU3RhcnRlZE92ZXJUYWJzID0gITEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxMDApLCBDLnBhcmVudCgpLmZpbmQodSkucmVtb3ZlQ2xhc3MoImRyYWdnZWQiKSwgITEKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGYgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHQuaGlkZV9kZWxheSA9IGpRdWVyeS5pc051bWVyaWMocGFyc2VJbnQodC5oaWRlX2RlbGF5LCAwKSkgPyB0LmhpZGVfZGVsYXkgLyAxZTMgOiAuMiwgdC5oaWRlX2RlbGF5X21vYmlsZSA9IGpRdWVyeS5pc051bWVyaWMocGFyc2VJbnQodC5oaWRlX2RlbGF5X21vYmlsZSwgMCkpID8gdC5oaWRlX2RlbGF5X21vYmlsZSAvIDFlMyA6IC4yCiAgICAgICAgfSwKICAgICAgICBtID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICByZXR1cm4gdCAmJiB0LmVuYWJsZQogICAgICAgIH0sCiAgICAgICAgYSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgcmV0dXJuIHQgJiYgdC5lbmFibGUgJiYgITAgPT09IHQuaGlkZV9vbmxlYXZlICYmICh2b2lkIDAgPT09IHQucG9zaXRpb24gfHwgIXQucG9zaXRpb24ubWF0Y2goL291dGVyL2cpKQogICAgICAgIH0sCiAgICAgICAgYiA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgdmFyIGkgPSB0LnBhcmVudCgpOwogICAgICAgICAgICBhKGUubmF2aWdhdGlvbi5hcnJvd3MpICYmIHB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKEkgPyBlLm5hdmlnYXRpb24uYXJyb3dzLmhpZGVfZGVsYXlfbW9iaWxlIDogZS5uYXZpZ2F0aW9uLmFycm93cy5oaWRlX2RlbGF5LCB3LCBbaS5maW5kKCIudHBhcnJvd3MiKSwgZS5uYXZpZ2F0aW9uLmFycm93cywgImhpZGUiXSksIGEoZS5uYXZpZ2F0aW9uLmJ1bGxldHMpICYmIHB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKEkgPyBlLm5hdmlnYXRpb24uYnVsbGV0cy5oaWRlX2RlbGF5X21vYmlsZSA6IGUubmF2aWdhdGlvbi5idWxsZXRzLmhpZGVfZGVsYXksIHcsIFtpLmZpbmQoIi50cC1idWxsZXRzIiksIGUubmF2aWdhdGlvbi5idWxsZXRzLCAiaGlkZSJdKSwgYShlLm5hdmlnYXRpb24udGh1bWJuYWlscykgJiYgcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoSSA/IGUubmF2aWdhdGlvbi50aHVtYm5haWxzLmhpZGVfZGVsYXlfbW9iaWxlIDogZS5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuaGlkZV9kZWxheSwgdywgW2kuZmluZCgiLnRwLXRodW1icyIpLCBlLm5hdmlnYXRpb24udGh1bWJuYWlscywgImhpZGUiXSksIGEoZS5uYXZpZ2F0aW9uLnRhYnMpICYmIHB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKEkgPyBlLm5hdmlnYXRpb24udGFicy5oaWRlX2RlbGF5X21vYmlsZSA6IGUubmF2aWdhdGlvbi50YWJzLmhpZGVfZGVsYXksIHcsIFtpLmZpbmQoIi50cC10YWJzIiksIGUubmF2aWdhdGlvbi50YWJzLCAiaGlkZSJdKQogICAgICAgIH0sCiAgICAgICAgdyA9IGZ1bmN0aW9uKHQsIGUsIGksIGEpIHsKICAgICAgICAgICAgc3dpdGNoIChhID0gdm9pZCAwID09PSBhID8gLjUgOiBhLCBpKSB7CiAgICAgICAgICAgICAgICBjYXNlICJzaG93IjoKICAgICAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS50byh0LCBhLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0LAogICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiaGlkZSI6CiAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUudG8odCwgYSwgewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91LAogICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIgogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIF8gPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgIGUuc3R5bGUgPSB2b2lkIDAgPT09IGUuc3R5bGUgPyAiIiA6IGUuc3R5bGUsIGUubGVmdC5zdHlsZSA9IHZvaWQgMCA9PT0gZS5sZWZ0LnN0eWxlID8gIiIgOiBlLmxlZnQuc3R5bGUsIGUucmlnaHQuc3R5bGUgPSB2b2lkIDAgPT09IGUucmlnaHQuc3R5bGUgPyAiIiA6IGUucmlnaHQuc3R5bGUsIDAgPT09IHQuZmluZCgiLnRwLWxlZnRhcnJvdy50cGFycm93cyIpLmxlbmd0aCAmJiB0LmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtbGVmdGFycm93IHRwYXJyb3dzICcgKyBlLnN0eWxlICsgIiAiICsgZS5sZWZ0LnN0eWxlICsgJyI+JyArIGUudG1wICsgIjwvZGl2PiIpLCAwID09PSB0LmZpbmQoIi50cC1yaWdodGFycm93LnRwYXJyb3dzIikubGVuZ3RoICYmIHQuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1yaWdodGFycm93IHRwYXJyb3dzICcgKyBlLnN0eWxlICsgIiAiICsgZS5yaWdodC5zdHlsZSArICciPicgKyBlLnRtcCArICI8L2Rpdj4iKTsKICAgICAgICAgICAgdmFyIGEgPSB0LmZpbmQoIi50cC1sZWZ0YXJyb3cudHBhcnJvd3MiKSwKICAgICAgICAgICAgICAgIG4gPSB0LmZpbmQoIi50cC1yaWdodGFycm93LnRwYXJyb3dzIik7CiAgICAgICAgICAgIGUucnRsID8gKGEuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpLnNjX2luZGljYXRvciA9ICJhcnJvdyIsIGkuc2NfaW5kaWNhdG9yX2RpciA9IDAsIHQucmV2bmV4dCgpCiAgICAgICAgICAgIH0pLCBuLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCBpLnNjX2luZGljYXRvcl9kaXIgPSAxLCB0LnJldnByZXYoKQogICAgICAgICAgICB9KSkgOiAobi5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGkuc2NfaW5kaWNhdG9yID0gImFycm93IiwgaS5zY19pbmRpY2F0b3JfZGlyID0gMCwgdC5yZXZuZXh0KCkKICAgICAgICAgICAgfSksIGEuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpLnNjX2luZGljYXRvciA9ICJhcnJvdyIsIGkuc2NfaW5kaWNhdG9yX2RpciA9IDEsIHQucmV2cHJldigpCiAgICAgICAgICAgIH0pKSwgZS5yaWdodC5qID0gdC5maW5kKCIudHAtcmlnaHRhcnJvdy50cGFycm93cyIpLCBlLmxlZnQuaiA9IHQuZmluZCgiLnRwLWxlZnRhcnJvdy50cGFycm93cyIpLCBlLnBhZGRpbmdfdG9wID0gcGFyc2VJbnQoaS5jYXJvdXNlbC5wYWRkaW5nX3RvcCB8fCAwLCAwKSwgZS5wYWRkaW5nX2JvdHRvbSA9IHBhcnNlSW50KGkuY2Fyb3VzZWwucGFkZGluZ19ib3R0b20gfHwgMCwgMCksIFQoYSwgZS5sZWZ0LCBpKSwgVChuLCBlLnJpZ2h0LCBpKSwgZS5sZWZ0Lm9wdCA9IGksIGUucmlnaHQub3B0ID0gaSwgIm91dGVyLWxlZnQiICE9IGUucG9zaXRpb24gJiYgIm91dGVyLXJpZ2h0IiAhPSBlLnBvc2l0aW9uIHx8IChpLm91dGVybmF2ID0gITApCiAgICAgICAgfSwKICAgICAgICB1ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICB2YXIgYSA9IHQub3V0ZXJIZWlnaHQoITApLAogICAgICAgICAgICAgICAgbiA9ICh0Lm91dGVyV2lkdGgoITApLCBudWxsID09IGUub3B0ID8gMCA6IDAgPT0gaS5jb25oID8gaS5oZWlnaHQgOiBpLmNvbmgpLAogICAgICAgICAgICAgICAgciA9ICJsYXllcmdyaWQiID09IGUuY29udGFpbmVyID8gImZ1bGxzY3JlZW4iID09IGkuc2xpZGVyTGF5b3V0ID8gaS5oZWlnaHQgLyAyIC0gaS5ncmlkaGVpZ2h0W2kuY3VyV2luUmFuZ2VdICogaS5iaCAvIDIgOiAib24iID09IGkuYXV0b0hlaWdodCB8fCBudWxsICE9IGkubWluSGVpZ2h0ICYmIDAgPCBpLm1pbkhlaWdodCA/IG4gLyAyIC0gaS5ncmlkaGVpZ2h0W2kuY3VyV2luUmFuZ2VdICogaS5iaCAvIDIgOiAwIDogMCwKICAgICAgICAgICAgICAgIG8gPSAidG9wIiA9PT0gZS52X2FsaWduID8gewogICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgeTogTWF0aC5yb3VuZChlLnZfb2Zmc2V0ICsgcikgKyAicHgiCiAgICAgICAgICAgICAgICB9IDogImNlbnRlciIgPT09IGUudl9hbGlnbiA/IHsKICAgICAgICAgICAgICAgICAgICB0b3A6ICI1MCUiLAogICAgICAgICAgICAgICAgICAgIHk6IE1hdGgucm91bmQoMCAtIGEgLyAyICsgZS52X29mZnNldCkgKyAicHgiCiAgICAgICAgICAgICAgICB9IDogewogICAgICAgICAgICAgICAgICAgIHRvcDogIjEwMCUiLAogICAgICAgICAgICAgICAgICAgIHk6IE1hdGgucm91bmQoMCAtIChhICsgZS52X29mZnNldCArIHIpKSArICJweCIKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIHQuaGFzQ2xhc3MoIm91dGVyLWJvdHRvbSIpIHx8IHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCBvKQogICAgICAgIH0sCiAgICAgICAgeCA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgdmFyIGEgPSAodC5vdXRlckhlaWdodCghMCksIHQub3V0ZXJXaWR0aCghMCkpLAogICAgICAgICAgICAgICAgbiA9ICJsYXllcmdyaWQiID09IGUuY29udGFpbmVyID8gImNhcm91c2VsIiA9PT0gaS5zbGlkZXJUeXBlID8gMCA6IGkud2lkdGggLyAyIC0gaS5ncmlkd2lkdGhbaS5jdXJXaW5SYW5nZV0gKiBpLmJ3IC8gMiA6IDAsCiAgICAgICAgICAgICAgICByID0gImxlZnQiID09PSBlLmhfYWxpZ24gPyB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgeDogTWF0aC5yb3VuZChlLmhfb2Zmc2V0ICsgbikgKyAicHgiCiAgICAgICAgICAgICAgICB9IDogImNlbnRlciIgPT09IGUuaF9hbGlnbiA/IHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiNTAlIiwKICAgICAgICAgICAgICAgICAgICB4OiBNYXRoLnJvdW5kKDAgLSBhIC8gMiArIGUuaF9vZmZzZXQpICsgInB4IgogICAgICAgICAgICAgICAgfSA6IHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgeDogTWF0aC5yb3VuZCgwIC0gKGEgKyBlLmhfb2Zmc2V0ICsgbikpICsgInB4IgogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHIpCiAgICAgICAgfSwKICAgICAgICBUID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICB2YXIgYSA9IDAgPCB0LmNsb3Nlc3QoIi50cC1zaW1wbGVyZXNwb25zaXZlIikubGVuZ3RoID8gdC5jbG9zZXN0KCIudHAtc2ltcGxlcmVzcG9uc2l2ZSIpIDogMCA8IHQuY2xvc2VzdCgiLnRwLXJldnNsaWRlci1tYWludWwiKS5sZW5ndGggPyB0LmNsb3Nlc3QoIi50cC1yZXZzbGlkZXItbWFpbnVsIikgOiAwIDwgdC5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIikubGVuZ3RoID8gdC5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIikgOiB0LnBhcmVudCgpLmZpbmQoIi50cC1yZXZzbGlkZXItbWFpbnVsIiksCiAgICAgICAgICAgICAgICBuID0gYS53aWR0aCgpLAogICAgICAgICAgICAgICAgciA9IGEuaGVpZ2h0KCk7CiAgICAgICAgICAgIGlmICh1KHQsIGUsIGkpLCB4KHQsIGUsIGkpLCAib3V0ZXItbGVmdCIgIT09IGUucG9zaXRpb24gfHwgImZ1bGx3aWR0aCIgIT0gZS5zbGlkZXJMYXlvdXQgJiYgImZ1bGxzY3JlZW4iICE9IGUuc2xpZGVyTGF5b3V0ID8gIm91dGVyLXJpZ2h0IiAhPT0gZS5wb3NpdGlvbiB8fCAiZnVsbHdpZHRoIiAhPSBlLnNsaWRlckxheW91dCAmJiAiZnVsbHNjcmVlbiIgIT0gZS5zbGlkZXJMYXlvdXQgfHwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICByaWdodDogMCAtIHQub3V0ZXJXaWR0aCgpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICB4OiBlLmhfb2Zmc2V0ICsgInB4IgogICAgICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAgLSB0Lm91dGVyV2lkdGgoKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgeDogZS5oX29mZnNldCArICJweCIKICAgICAgICAgICAgICAgIH0pLCB0Lmhhc0NsYXNzKCJ0cC10aHVtYnMiKSB8fCB0Lmhhc0NsYXNzKCJ0cC10YWJzIikpIHsKICAgICAgICAgICAgICAgIHZhciBvID0gdC5kYXRhKCJ3cl9wYWRkaW5nIiksCiAgICAgICAgICAgICAgICAgICAgcyA9IHQuZGF0YSgibWF4dyIpLAogICAgICAgICAgICAgICAgICAgIGQgPSB0LmRhdGEoIm1heGgiKSwKICAgICAgICAgICAgICAgICAgICBsID0gdC5oYXNDbGFzcygidHAtdGh1bWJzIikgPyB0LmZpbmQoIi50cC10aHVtYi1tYXNrIikgOiB0LmZpbmQoIi50cC10YWItbWFzayIpLAogICAgICAgICAgICAgICAgICAgIGggPSBwYXJzZUludChlLnBhZGRpbmdfdG9wIHx8IDAsIDApLAogICAgICAgICAgICAgICAgICAgIHAgPSBwYXJzZUludChlLnBhZGRpbmdfYm90dG9tIHx8IDAsIDApOwogICAgICAgICAgICAgICAgbiA8IHMgJiYgIm91dGVyLWxlZnQiICE9PSBlLnBvc2l0aW9uICYmICJvdXRlci1yaWdodCIgIT09IGUucG9zaXRpb24gPyAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICB4OiAwLAogICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiBuIC0gMiAqIG8gKyAicHgiCiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwsIHsKICAgICAgICAgICAgICAgICAgICBtYXhXaWR0aDogbiAtIDIgKiBvICsgInB4IgogICAgICAgICAgICAgICAgfSkpIDogKHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgbWF4V2lkdGg6IHMgKyAicHgiCiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwsIHsKICAgICAgICAgICAgICAgICAgICBtYXhXaWR0aDogcyArICJweCIKICAgICAgICAgICAgICAgIH0pKSwgciA8IGQgKyAyICogbyAmJiAib3V0ZXItYm90dG9tIiAhPT0gZS5wb3NpdGlvbiAmJiAib3V0ZXItdG9wIiAhPT0gZS5wb3NpdGlvbiA/IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgeTogMCwKICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGggKyBwICsgKHIgLSAyICogbykgKyAicHgiCiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwsIHsKICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGggKyBwICsgKHIgLSAyICogbykgKyAicHgiCiAgICAgICAgICAgICAgICB9KSkgOiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGQgKyAicHgiCiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGwsIHsKICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGQgKyAicHgiCiAgICAgICAgICAgICAgICB9KSksICJvdXRlci1sZWZ0IiAhPT0gZS5wb3NpdGlvbiAmJiAib3V0ZXItcmlnaHQiICE9PSBlLnBvc2l0aW9uICYmIChwID0gaCA9IDApLCAhMCA9PT0gZS5zcGFuICYmICJ2ZXJ0aWNhbCIgPT09IGUuZGlyZWN0aW9uID8gKHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiBoICsgcCArIChyIC0gMiAqIG8pICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGggKyBwICsgKHIgLSAyICogbykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIHRvcDogMCAtIGgsCiAgICAgICAgICAgICAgICAgICAgeTogMAogICAgICAgICAgICAgICAgfSksIHUobCwgZSwgaSkpIDogITAgPT09IGUuc3BhbiAmJiAiaG9yaXpvbnRhbCIgPT09IGUuZGlyZWN0aW9uICYmIChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG4gLSAyICogbyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICB4OiAwCiAgICAgICAgICAgICAgICB9KSwgeChsLCBlLCBpKSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgeSA9IGZ1bmN0aW9uKHQsIGUsIGksIGEpIHsKICAgICAgICAgICAgMCA9PT0gdC5maW5kKCIudHAtYnVsbGV0cyIpLmxlbmd0aCAmJiAoZS5zdHlsZSA9IHZvaWQgMCA9PT0gZS5zdHlsZSA/ICIiIDogZS5zdHlsZSwgdC5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLWJ1bGxldHMgJyArIGUuc3R5bGUgKyAiICIgKyBlLmRpcmVjdGlvbiArICciPjwvZGl2PicpKTsKICAgICAgICAgICAgdmFyIG4gPSB0LmZpbmQoIi50cC1idWxsZXRzIiksCiAgICAgICAgICAgICAgICByID0gaS5kYXRhKCJpbmRleCIpLAogICAgICAgICAgICAgICAgbyA9IGUudG1wOwogICAgICAgICAgICBqUXVlcnkuZWFjaChhLnRodW1ic1tpLmluZGV4KCldLnBhcmFtcywgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgbyA9IG8ucmVwbGFjZShlLmZyb20sIGUudG8pCiAgICAgICAgICAgIH0pLCBuLmFwcGVuZCgnPGRpdiBjbGFzcz0ianVzdGFkZGVkYnVsbGV0IHRwLWJ1bGxldCI+JyArIG8gKyAiPC9kaXY+Iik7CiAgICAgICAgICAgIHZhciBzID0gdC5maW5kKCIuanVzdGFkZGVkYnVsbGV0IiksCiAgICAgICAgICAgICAgICBkID0gdC5maW5kKCIudHAtYnVsbGV0IikubGVuZ3RoLAogICAgICAgICAgICAgICAgbCA9IHMub3V0ZXJXaWR0aCgpICsgcGFyc2VJbnQodm9pZCAwID09PSBlLnNwYWNlID8gMCA6IGUuc3BhY2UsIDApLAogICAgICAgICAgICAgICAgaCA9IHMub3V0ZXJIZWlnaHQoKSArIHBhcnNlSW50KHZvaWQgMCA9PT0gZS5zcGFjZSA/IDAgOiBlLnNwYWNlLCAwKTsKICAgICAgICAgICAgInZlcnRpY2FsIiA9PT0gZS5kaXJlY3Rpb24gPyAocy5jc3MoewogICAgICAgICAgICAgICAgdG9wOiAoZCAtIDEpICogaCArICJweCIsCiAgICAgICAgICAgICAgICBsZWZ0OiAiMHB4IgogICAgICAgICAgICB9KSwgbi5jc3MoewogICAgICAgICAgICAgICAgaGVpZ2h0OiAoZCAtIDEpICogaCArIHMub3V0ZXJIZWlnaHQoKSwKICAgICAgICAgICAgICAgIHdpZHRoOiBzLm91dGVyV2lkdGgoKQogICAgICAgICAgICB9KSkgOiAocy5jc3MoewogICAgICAgICAgICAgICAgbGVmdDogKGQgLSAxKSAqIGwgKyAicHgiLAogICAgICAgICAgICAgICAgdG9wOiAiMHB4IgogICAgICAgICAgICB9KSwgbi5jc3MoewogICAgICAgICAgICAgICAgd2lkdGg6IChkIC0gMSkgKiBsICsgcy5vdXRlcldpZHRoKCksCiAgICAgICAgICAgICAgICBoZWlnaHQ6IHMub3V0ZXJIZWlnaHQoKQogICAgICAgICAgICB9KSksIHMuZmluZCgiLnRwLWJ1bGxldC1pbWFnZSIpLmNzcyh7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICJ1cmwoIiArIGEudGh1bWJzW2kuaW5kZXgoKV0uc3JjICsgIikiCiAgICAgICAgICAgIH0pLCBzLmRhdGEoImxpcmVmIiwgciksIHMuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBhLnNjX2luZGljYXRvciA9ICJidWxsZXQiLCB0LnJldmNhbGxzbGlkZXdpdGhpZChyKSwgdC5maW5kKCIudHAtYnVsbGV0IikucmVtb3ZlQ2xhc3MoInNlbGVjdGVkIiksIGpRdWVyeSh0aGlzKS5hZGRDbGFzcygic2VsZWN0ZWQiKQogICAgICAgICAgICB9KSwgcy5yZW1vdmVDbGFzcygianVzdGFkZGVkYnVsbGV0IiksIGUucGFkZGluZ190b3AgPSBwYXJzZUludChhLmNhcm91c2VsLnBhZGRpbmdfdG9wIHx8IDAsIDApLCBlLnBhZGRpbmdfYm90dG9tID0gcGFyc2VJbnQoYS5jYXJvdXNlbC5wYWRkaW5nX2JvdHRvbSB8fCAwLCAwKSwgZS5vcHQgPSBhLCAib3V0ZXItbGVmdCIgIT0gZS5wb3NpdGlvbiAmJiAib3V0ZXItcmlnaHQiICE9IGUucG9zaXRpb24gfHwgKGEub3V0ZXJuYXYgPSAhMCksIG4uYWRkQ2xhc3MoIm5hdi1wb3MtaG9yLSIgKyBlLmhfYWxpZ24pLCBuLmFkZENsYXNzKCJuYXYtcG9zLXZlci0iICsgZS52X2FsaWduKSwgbi5hZGRDbGFzcygibmF2LWRpci0iICsgZS5kaXJlY3Rpb24pLCBUKG4sIGUsIGEpCiAgICAgICAgfSwKICAgICAgICBTID0gZnVuY3Rpb24oZSwgdCwgaSwgYSwgbikgewogICAgICAgICAgICB2YXIgciA9ICJ0cC10aHVtYiIgPT09IGEgPyAiLnRwLXRodW1icyIgOiAiLnRwLXRhYnMiLAogICAgICAgICAgICAgICAgbyA9ICJ0cC10aHVtYiIgPT09IGEgPyAiLnRwLXRodW1iLW1hc2siIDogIi50cC10YWItbWFzayIsCiAgICAgICAgICAgICAgICBzID0gInRwLXRodW1iIiA9PT0gYSA/ICIudHAtdGh1bWJzLWlubmVyLXdyYXBwZXIiIDogIi50cC10YWJzLWlubmVyLXdyYXBwZXIiLAogICAgICAgICAgICAgICAgZCA9ICJ0cC10aHVtYiIgPT09IGEgPyAiLnRwLXRodW1iIiA6ICIudHAtdGFiIiwKICAgICAgICAgICAgICAgIGwgPSAidHAtdGh1bWIiID09PSBhID8gIi50cC10aHVtYi1pbWFnZSIgOiAiLnRwLXRhYi1pbWFnZSI7CiAgICAgICAgICAgIGlmICh0LnZpc2libGVBbW91bnQgPSB0LnZpc2libGVBbW91bnQgPiBuLnNsaWRlYW1vdW50ID8gbi5zbGlkZWFtb3VudCA6IHQudmlzaWJsZUFtb3VudCwgdC5zbGlkZXJMYXlvdXQgPSBuLnNsaWRlckxheW91dCwgMCA9PT0gZS5wYXJlbnQoKS5maW5kKHIpLmxlbmd0aCkgewogICAgICAgICAgICAgICAgdC5zdHlsZSA9IHZvaWQgMCA9PT0gdC5zdHlsZSA/ICIiIDogdC5zdHlsZTsKICAgICAgICAgICAgICAgIHZhciBoID0gJzxkaXYgY2xhc3M9IicgKyBhICsgInMgIiArICghMCA9PT0gdC5zcGFuID8gInRwLXNwYW4td3JhcHBlciIgOiAiIikgKyAiICIgKyB0LnBvc2l0aW9uICsgIiAiICsgdC5zdHlsZSArICciPjxkaXYgY2xhc3M9IicgKyBhICsgJy1tYXNrIj48ZGl2IGNsYXNzPSInICsgYSArICdzLWlubmVyLXdyYXBwZXIiIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsiPjwvZGl2PjwvZGl2PjwvZGl2Pic7CiAgICAgICAgICAgICAgICAib3V0ZXItdG9wIiA9PT0gdC5wb3NpdGlvbiA/IGUucGFyZW50KCkucHJlcGVuZChoKSA6ICJvdXRlci1ib3R0b20iID09PSB0LnBvc2l0aW9uID8gZS5hZnRlcihoKSA6IGUuYXBwZW5kKGgpLCB0LnBhZGRpbmdfdG9wID0gcGFyc2VJbnQobi5jYXJvdXNlbC5wYWRkaW5nX3RvcCB8fCAwLCAwKSwgdC5wYWRkaW5nX2JvdHRvbSA9IHBhcnNlSW50KG4uY2Fyb3VzZWwucGFkZGluZ19ib3R0b20gfHwgMCwgMCksICJvdXRlci1sZWZ0IiAhPSB0LnBvc2l0aW9uICYmICJvdXRlci1yaWdodCIgIT0gdC5wb3NpdGlvbiB8fCAobi5vdXRlcm5hdiA9ICEwKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBwID0gaS5kYXRhKCJpbmRleCIpLAogICAgICAgICAgICAgICAgdSA9IGUucGFyZW50KCkuZmluZChyKSwKICAgICAgICAgICAgICAgIGMgPSB1LmZpbmQobyksCiAgICAgICAgICAgICAgICBnID0gYy5maW5kKHMpLAogICAgICAgICAgICAgICAgdiA9ICJob3Jpem9udGFsIiA9PT0gdC5kaXJlY3Rpb24gPyB0LndpZHRoICogdC52aXNpYmxlQW1vdW50ICsgdC5zcGFjZSAqICh0LnZpc2libGVBbW91bnQgLSAxKSA6IHQud2lkdGgsCiAgICAgICAgICAgICAgICBmID0gImhvcml6b250YWwiID09PSB0LmRpcmVjdGlvbiA/IHQuaGVpZ2h0IDogdC5oZWlnaHQgKiB0LnZpc2libGVBbW91bnQgKyB0LnNwYWNlICogKHQudmlzaWJsZUFtb3VudCAtIDEpLAogICAgICAgICAgICAgICAgbSA9IHQudG1wOwogICAgICAgICAgICBqUXVlcnkuZWFjaChuLnRodW1ic1tpLmluZGV4KCldLnBhcmFtcywgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgbSA9IG0ucmVwbGFjZShlLmZyb20sIGUudG8pCiAgICAgICAgICAgIH0pLCBnLmFwcGVuZCgnPGRpdiBkYXRhLWxpaW5kZXg9IicgKyBpLmluZGV4KCkgKyAnIiBkYXRhLWxpcmVmPSInICsgcCArICciIGNsYXNzPSJqdXN0YWRkZWR0aHVtYiAnICsgYSArICciIHN0eWxlPSJ3aWR0aDonICsgdC53aWR0aCArICJweDtoZWlnaHQ6IiArIHQuaGVpZ2h0ICsgJ3B4OyI+JyArIG0gKyAiPC9kaXY+Iik7CiAgICAgICAgICAgIHZhciBiID0gdS5maW5kKCIuanVzdGFkZGVkdGh1bWIiKSwKICAgICAgICAgICAgICAgIHcgPSB1LmZpbmQoZCkubGVuZ3RoLAogICAgICAgICAgICAgICAgXyA9IGIub3V0ZXJXaWR0aCgpICsgcGFyc2VJbnQodm9pZCAwID09PSB0LnNwYWNlID8gMCA6IHQuc3BhY2UsIDApLAogICAgICAgICAgICAgICAgeCA9IGIub3V0ZXJIZWlnaHQoKSArIHBhcnNlSW50KHZvaWQgMCA9PT0gdC5zcGFjZSA/IDAgOiB0LnNwYWNlLCAwKTsKICAgICAgICAgICAgYi5maW5kKGwpLmNzcyh7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICJ1cmwoIiArIG4udGh1bWJzW2kuaW5kZXgoKV0uc3JjICsgIikiCiAgICAgICAgICAgIH0pLCAidmVydGljYWwiID09PSB0LmRpcmVjdGlvbiA/IChiLmNzcyh7CiAgICAgICAgICAgICAgICB0b3A6ICh3IC0gMSkgKiB4ICsgInB4IiwKICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiCiAgICAgICAgICAgIH0pLCBnLmNzcyh7CiAgICAgICAgICAgICAgICBoZWlnaHQ6ICh3IC0gMSkgKiB4ICsgYi5vdXRlckhlaWdodCgpLAogICAgICAgICAgICAgICAgd2lkdGg6IGIub3V0ZXJXaWR0aCgpCiAgICAgICAgICAgIH0pKSA6IChiLmNzcyh7CiAgICAgICAgICAgICAgICBsZWZ0OiAodyAtIDEpICogXyArICJweCIsCiAgICAgICAgICAgICAgICB0b3A6ICIwcHgiCiAgICAgICAgICAgIH0pLCBnLmNzcyh7CiAgICAgICAgICAgICAgICB3aWR0aDogKHcgLSAxKSAqIF8gKyBiLm91dGVyV2lkdGgoKSwKICAgICAgICAgICAgICAgIGhlaWdodDogYi5vdXRlckhlaWdodCgpCiAgICAgICAgICAgIH0pKSwgdS5kYXRhKCJtYXh3IiwgdiksIHUuZGF0YSgibWF4aCIsIGYpLCB1LmRhdGEoIndyX3BhZGRpbmciLCB0LndyYXBwZXJfcGFkZGluZyk7CiAgICAgICAgICAgIHZhciB5ID0gIm91dGVyLXRvcCIgPT09IHQucG9zaXRpb24gfHwgIm91dGVyLWJvdHRvbSIgPT09IHQucG9zaXRpb24gPyAicmVsYXRpdmUiIDogImFic29sdXRlIjsKICAgICAgICAgICAgIm91dGVyLXRvcCIgIT09IHQucG9zaXRpb24gJiYgIm91dGVyLWJvdHRvbSIgIT09IHQucG9zaXRpb24gfHwgdC5oX2FsaWduLCBjLmNzcyh7CiAgICAgICAgICAgICAgICBtYXhXaWR0aDogdiArICJweCIsCiAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGYgKyAicHgiLAogICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJoaWRkZW4iLAogICAgICAgICAgICAgICAgcG9zaXRpb246ICJyZWxhdGl2ZSIKICAgICAgICAgICAgfSksIHUuY3NzKHsKICAgICAgICAgICAgICAgIG1heFdpZHRoOiB2ICsgInB4IiwKICAgICAgICAgICAgICAgIG1heEhlaWdodDogZiArICJweCIsCiAgICAgICAgICAgICAgICBvdmVyZmxvdzogInZpc2libGUiLAogICAgICAgICAgICAgICAgcG9zaXRpb246IHksCiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0LndyYXBwZXJfY29sb3IsCiAgICAgICAgICAgICAgICBwYWRkaW5nOiB0LndyYXBwZXJfcGFkZGluZyArICJweCIsCiAgICAgICAgICAgICAgICBib3hTaXppbmc6ICJjb250ZXQtYm94IgogICAgICAgICAgICB9KSwgYi5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG4uc2NfaW5kaWNhdG9yID0gImJ1bGxldCI7CiAgICAgICAgICAgICAgICB2YXIgdCA9IGUucGFyZW50KCkuZmluZChzKS5kYXRhKCJkaXN0YW5jZSIpOwogICAgICAgICAgICAgICAgdCA9IHZvaWQgMCA9PT0gdCA/IDAgOiB0LCBNYXRoLmFicyh0KSA8IDEwICYmIChlLnJldmNhbGxzbGlkZXdpdGhpZChwKSwgZS5wYXJlbnQoKS5maW5kKHIpLnJlbW92ZUNsYXNzKCJzZWxlY3RlZCIpLCBqUXVlcnkodGhpcykuYWRkQ2xhc3MoInNlbGVjdGVkIikpCiAgICAgICAgICAgIH0pLCBiLnJlbW92ZUNsYXNzKCJqdXN0YWRkZWR0aHVtYiIpLCB0Lm9wdCA9IG4sIHUuYWRkQ2xhc3MoIm5hdi1wb3MtaG9yLSIgKyB0LmhfYWxpZ24pLCB1LmFkZENsYXNzKCJuYXYtcG9zLXZlci0iICsgdC52X2FsaWduKSwgdS5hZGRDbGFzcygibmF2LWRpci0iICsgdC5kaXJlY3Rpb24pLCBUKHUsIHQsIG4pCiAgICAgICAgfSwKICAgICAgICBsID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICB2YXIgZSA9IHQuYy5wYXJlbnQoKS5maW5kKCIub3V0ZXItdG9wIiksCiAgICAgICAgICAgICAgICBpID0gdC5jLnBhcmVudCgpLmZpbmQoIi5vdXRlci1ib3R0b20iKTsKICAgICAgICAgICAgdC50b3Bfb3V0ZXIgPSBlLmhhc0NsYXNzKCJ0cC1mb3JjZW5vdHZpc2libGUiKSA/IDAgOiBlLm91dGVySGVpZ2h0KCkgfHwgMCwgdC5ib3R0b21fb3V0ZXIgPSBpLmhhc0NsYXNzKCJ0cC1mb3JjZW5vdHZpc2libGUiKSA/IDAgOiBpLm91dGVySGVpZ2h0KCkgfHwgMAogICAgICAgIH0sCiAgICAgICAgbyA9IGZ1bmN0aW9uKHQsIGUsIGksIGEpIHsKICAgICAgICAgICAgaSA8IGUgfHwgYSA8IGkgPyB0LmFkZENsYXNzKCJ0cC1mb3JjZW5vdHZpc2libGUiKSA6IHQucmVtb3ZlQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpCiAgICAgICAgfQp9KGpRdWVyeSk7CiEgZnVuY3Rpb24odCkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIE8gPSBqUXVlcnkuZm4ucmV2b2x1dGlvbiwKICAgICAgICBJID0gTy5pc19tb2JpbGUoKSwKICAgICAgICBlID0gewogICAgICAgICAgICBhbGlhczogIk5hdmlnYXRpb24gTWluIEpTIiwKICAgICAgICAgICAgbmFtZTogInJldm9sdXRpb24uZXh0ZW5zaW9ucy5uYXZpZ2F0aW9uLm1pbi5qcyIsCiAgICAgICAgICAgIG1pbl9jb3JlOiAiNS40LjAiLAogICAgICAgICAgICB2ZXJzaW9uOiAiMS4zLjUiCiAgICAgICAgfTsKICAgIGpRdWVyeS5leHRlbmQoITAsIE8sIHsKICAgICAgICBoaWRlVW5IaWRlTmF2OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBlID0gdC5jLndpZHRoKCksCiAgICAgICAgICAgICAgICBpID0gdC5uYXZpZ2F0aW9uLmFycm93cywKICAgICAgICAgICAgICAgIGEgPSB0Lm5hdmlnYXRpb24uYnVsbGV0cywKICAgICAgICAgICAgICAgIG4gPSB0Lm5hdmlnYXRpb24udGh1bWJuYWlscywKICAgICAgICAgICAgICAgIHIgPSB0Lm5hdmlnYXRpb24udGFiczsKICAgICAgICAgICAgbShpKSAmJiBvKHQuYy5maW5kKCIudHBhcnJvd3MiKSwgaS5oaWRlX3VuZGVyLCBlLCBpLmhpZGVfb3ZlciksIG0oYSkgJiYgbyh0LmMuZmluZCgiLnRwLWJ1bGxldHMiKSwgYS5oaWRlX3VuZGVyLCBlLCBhLmhpZGVfb3ZlciksIG0obikgJiYgbyh0LmMucGFyZW50KCkuZmluZCgiLnRwLXRodW1icyIpLCBuLmhpZGVfdW5kZXIsIGUsIG4uaGlkZV9vdmVyKSwgbShyKSAmJiBvKHQuYy5wYXJlbnQoKS5maW5kKCIudHAtdGFicyIpLCByLmhpZGVfdW5kZXIsIGUsIHIuaGlkZV9vdmVyKSwgbCh0KQogICAgICAgIH0sCiAgICAgICAgcmVzaXplVGh1bWJzVGFiczogZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICBpZiAodC5uYXZpZ2F0aW9uICYmIHQubmF2aWdhdGlvbi50YWJzLmVuYWJsZSB8fCB0Lm5hdmlnYXRpb24gJiYgdC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuZW5hYmxlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IChqUXVlcnkod2luZG93KS53aWR0aCgpIC0gNDgwKSAvIDUwMCwKICAgICAgICAgICAgICAgICAgICBhID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLAogICAgICAgICAgICAgICAgICAgIG4gPSB0Lm5hdmlnYXRpb24udGFicywKICAgICAgICAgICAgICAgICAgICByID0gdC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMsCiAgICAgICAgICAgICAgICAgICAgbyA9IHQubmF2aWdhdGlvbi5idWxsZXRzOwogICAgICAgICAgICAgICAgaWYgKGEucGF1c2UoKSwgaSA9IDEgPCBpID8gMSA6IGkgPCAwID8gMCA6IGksIG0obikgJiYgKGUgfHwgbi53aWR0aCA+IG4ubWluX3dpZHRoKSAmJiBkKGksIGEsIHQuYywgbiwgdC5zbGlkZWFtb3VudCwgInRhYiIpLCBtKHIpICYmIChlIHx8IHIud2lkdGggPiByLm1pbl93aWR0aCkgJiYgZChpLCBhLCB0LmMsIHIsIHQuc2xpZGVhbW91bnQsICJ0aHVtYiIpLCBtKG8pICYmIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IHQuYy5maW5kKCIudHAtYnVsbGV0cyIpOwogICAgICAgICAgICAgICAgICAgIHMuZmluZCgiLnRwLWJ1bGxldCIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSB0ICsgMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBlLm91dGVyV2lkdGgoKSArIHBhcnNlSW50KHZvaWQgMCA9PT0gby5zcGFjZSA/IDAgOiBvLnNwYWNlLCAwKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBlLm91dGVySGVpZ2h0KCkgKyBwYXJzZUludCh2b2lkIDAgPT09IG8uc3BhY2UgPyAwIDogby5zcGFjZSwgMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2ZXJ0aWNhbCIgPT09IG8uZGlyZWN0aW9uID8gKGUuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogKGkgLSAxKSAqIG4gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogIjBweCIKICAgICAgICAgICAgICAgICAgICAgICAgfSksIHMuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogKGkgLSAxKSAqIG4gKyBlLm91dGVySGVpZ2h0KCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogZS5vdXRlcldpZHRoKCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkpIDogKGUuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IChpIC0gMSkgKiBhICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIKICAgICAgICAgICAgICAgICAgICAgICAgfSksIHMuY3NzKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAoaSAtIDEpICogYSArIGUub3V0ZXJXaWR0aCgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBlLm91dGVySGVpZ2h0KCkKICAgICAgICAgICAgICAgICAgICAgICAgfSkpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGEucGxheSgpLCBsKHQpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICEwCiAgICAgICAgfSwKICAgICAgICB1cGRhdGVOYXZJbmRleGVzOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIGUodCkgewogICAgICAgICAgICAgICAgMCA8IGkuZmluZCh0KS5sZW5naHQgJiYgaS5maW5kKHQpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIGpRdWVyeSh0aGlzKS5kYXRhKCJsaWluZGV4IiwgdCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGkgPSB0LmM7CiAgICAgICAgICAgIGUoIi50cC10YWIiKSwgZSgiLnRwLWJ1bGxldCIpLCBlKCIudHAtdGh1bWIiKSwgTy5yZXNpemVUaHVtYnNUYWJzKHQsICEwKSwgTy5tYW5hZ2VOYXZpZ2F0aW9uKHQpCiAgICAgICAgfSwKICAgICAgICBtYW5hZ2VOYXZpZ2F0aW9uOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBlID0gTy5nZXRIb3Jpem9udGFsT2Zmc2V0KHQuYy5wYXJlbnQoKSwgImxlZnQiKSwKICAgICAgICAgICAgICAgIGkgPSBPLmdldEhvcml6b250YWxPZmZzZXQodC5jLnBhcmVudCgpLCAicmlnaHQiKTsKICAgICAgICAgICAgbSh0Lm5hdmlnYXRpb24uYnVsbGV0cykgJiYgKCJmdWxsc2NyZWVuIiAhPSB0LnNsaWRlckxheW91dCAmJiAiZnVsbHdpZHRoIiAhPSB0LnNsaWRlckxheW91dCAmJiAodC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXRfb2xkID0gdm9pZCAwID09PSB0Lm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQgPyB0Lm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldCA6IHQubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0X29sZCwgdC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXQgPSAiY2VudGVyIiA9PT0gdC5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9hbGlnbiA/IHQubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0X29sZCArIGUgLyAyIC0gaSAvIDIgOiB0Lm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQgKyBlIC0gaSksIFQodC5jLmZpbmQoIi50cC1idWxsZXRzIiksIHQubmF2aWdhdGlvbi5idWxsZXRzLCB0KSksIG0odC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMpICYmIFQodC5jLnBhcmVudCgpLmZpbmQoIi50cC10aHVtYnMiKSwgdC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMsIHQpLCBtKHQubmF2aWdhdGlvbi50YWJzKSAmJiBUKHQuYy5wYXJlbnQoKS5maW5kKCIudHAtdGFicyIpLCB0Lm5hdmlnYXRpb24udGFicywgdCksIG0odC5uYXZpZ2F0aW9uLmFycm93cykgJiYgKCJmdWxsc2NyZWVuIiAhPSB0LnNsaWRlckxheW91dCAmJiAiZnVsbHdpZHRoIiAhPSB0LnNsaWRlckxheW91dCAmJiAodC5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0X29sZCA9IHZvaWQgMCA9PT0gdC5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0X29sZCA/IHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldCA6IHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQsIHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldCA9ICJyaWdodCIgPT09IHQubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX2FsaWduID8gdC5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0X29sZCArIGkgOiB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXRfb2xkICsgZSwgdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldF9vbGQgPSB2b2lkIDAgPT09IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkID8gdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldCA6IHQubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkLCB0Lm5hdmlnYXRpb24uYXJyb3dzLnJpZ2h0Lmhfb2Zmc2V0ID0gInJpZ2h0IiA9PT0gdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX2FsaWduID8gdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldF9vbGQgKyBpIDogdC5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldF9vbGQgKyBlKSwgVCh0LmMuZmluZCgiLnRwLWxlZnRhcnJvdy50cGFycm93cyIpLCB0Lm5hdmlnYXRpb24uYXJyb3dzLmxlZnQsIHQpLCBUKHQuYy5maW5kKCIudHAtcmlnaHRhcnJvdy50cGFycm93cyIpLCB0Lm5hdmlnYXRpb24uYXJyb3dzLnJpZ2h0LCB0KSksIG0odC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMpICYmIGModC5jLnBhcmVudCgpLmZpbmQoIi50cC10aHVtYnMiKSwgdC5uYXZpZ2F0aW9uLnRodW1ibmFpbHMpLCBtKHQubmF2aWdhdGlvbi50YWJzKSAmJiBjKHQuYy5wYXJlbnQoKS5maW5kKCIudHAtdGFicyIpLCB0Lm5hdmlnYXRpb24udGFicykKICAgICAgICB9LAogICAgICAgIGNyZWF0ZU5hdmlnYXRpb246IGZ1bmN0aW9uKG8sIHMpIHsKICAgICAgICAgICAgaWYgKCJzdG9wIiA9PT0gTy5jb21wYXJlX3ZlcnNpb24oZSkuY2hlY2spIHJldHVybiAhMTsKICAgICAgICAgICAgdmFyIGQgPSBvLnBhcmVudCgpLAogICAgICAgICAgICAgICAgbCA9IHMubmF2aWdhdGlvbi5hcnJvd3MsCiAgICAgICAgICAgICAgICBhID0gcy5uYXZpZ2F0aW9uLmJ1bGxldHMsCiAgICAgICAgICAgICAgICBoID0gcy5uYXZpZ2F0aW9uLnRodW1ibmFpbHMsCiAgICAgICAgICAgICAgICBwID0gcy5uYXZpZ2F0aW9uLnRhYnMsCiAgICAgICAgICAgICAgICB0ID0gbShsKSwKICAgICAgICAgICAgICAgIG4gPSBtKGEpLAogICAgICAgICAgICAgICAgciA9IG0oaCksCiAgICAgICAgICAgICAgICB1ID0gbShwKTsKICAgICAgICAgICAgaShvLCBzKSwgZyhvLCBzKSwgdCAmJiBfKG8sIGwsIHMpLCBzLmxpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkocy5saVtzLmxpLmxlbmd0aCAtIDEgLSB0XSksCiAgICAgICAgICAgICAgICAgICAgaSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIG4gJiYgKHMubmF2aWdhdGlvbi5idWxsZXRzLnJ0bCA/IHkobywgYSwgZSwgcykgOiB5KG8sIGEsIGksIHMpKSwgciAmJiAocy5uYXZpZ2F0aW9uLnRodW1ibmFpbHMucnRsID8gUyhvLCBoLCBlLCAidHAtdGh1bWIiLCBzKSA6IFMobywgaCwgaSwgInRwLXRodW1iIiwgcykpLCB1ICYmIChzLm5hdmlnYXRpb24udGFicy5ydGwgPyBTKG8sIHAsIGUsICJ0cC10YWIiLCBzKSA6IFMobywgcCwgaSwgInRwLXRhYiIsIHMpKQogICAgICAgICAgICB9KSwgby5iaW5kKCJyZXZvbHV0aW9uLnNsaWRlLm9uYWZ0ZXJzd2FwIHJldm9sdXRpb24ubmV4dHNsaWRlLndhaXRpbmciLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciBpID0gMCA9PSBvLmZpbmQoIi5uZXh0LXJldnNsaWRlIikubGVuZ3RoID8gby5maW5kKCIuYWN0aXZlLXJldnNsaWRlIikuZGF0YSgiaW5kZXgiKSA6IG8uZmluZCgiLm5leHQtcmV2c2xpZGUiKS5kYXRhKCJpbmRleCIpOwogICAgICAgICAgICAgICAgby5maW5kKCIudHAtYnVsbGV0IikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoImxpcmVmIikgPT09IGkgPyB0LmFkZENsYXNzKCJzZWxlY3RlZCIpIDogdC5yZW1vdmVDbGFzcygic2VsZWN0ZWQiKQogICAgICAgICAgICAgICAgfSksIGQuZmluZCgiLnRwLXRodW1iLCAudHAtdGFiIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB0LmRhdGEoImxpcmVmIikgPT09IGkgPyAodC5hZGRDbGFzcygic2VsZWN0ZWQiKSwgdC5oYXNDbGFzcygidHAtdGFiIikgPyBjKGQuZmluZCgiLnRwLXRhYnMiKSwgcCkgOiBjKGQuZmluZCgiLnRwLXRodW1icyIpLCBoKSkgOiB0LnJlbW92ZUNsYXNzKCJzZWxlY3RlZCIpCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciBhID0gMCwKICAgICAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgICAgICBzLnRodW1icyAmJiBqUXVlcnkuZWFjaChzLnRodW1icywgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIGEgPSAhMSA9PT0gbiA/IHQgOiBhLCBuID0gZS5pZCA9PT0gaSB8fCB0ID09PSBpIHx8IG4KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmFyIHQgPSAwIDwgYSA/IGEgLSAxIDogcy5zbGlkZWFtb3VudCAtIDEsCiAgICAgICAgICAgICAgICAgICAgZSA9IGEgKyAxID09IHMuc2xpZGVhbW91bnQgPyAwIDogYSArIDE7CiAgICAgICAgICAgICAgICBpZiAoITAgPT09IGwuZW5hYmxlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIgPSBsLnRtcDsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCAhPSBzLnRodW1ic1t0XSAmJiBqUXVlcnkuZWFjaChzLnRodW1ic1t0XS5wYXJhbXMsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSByLnJlcGxhY2UoZS5mcm9tLCBlLnRvKQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgbC5sZWZ0LmouaHRtbChyKSwgciA9IGwudG1wLCBlID4gcy5zbGlkZWFtb3VudCkgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIGpRdWVyeS5lYWNoKHMudGh1bWJzW2VdLnBhcmFtcywgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICByID0gci5yZXBsYWNlKGUuZnJvbSwgZS50bykKICAgICAgICAgICAgICAgICAgICB9KSwgbC5yaWdodC5qLmh0bWwociksIGwucnRsID8gKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChsLmxlZnQuai5maW5kKCIudHAtYXJyLWltZ2hvbGRlciIpLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogInVybCgiICsgcy50aHVtYnNbZV0uc3JjICsgIikiCiAgICAgICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChsLnJpZ2h0LmouZmluZCgiLnRwLWFyci1pbWdob2xkZXIiKSwgewogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICJ1cmwoIiArIHMudGh1bWJzW3RdLnNyYyArICIpIgogICAgICAgICAgICAgICAgICAgIH0pKSA6IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobC5sZWZ0LmouZmluZCgiLnRwLWFyci1pbWdob2xkZXIiKSwgewogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6ICJ1cmwoIiArIHMudGh1bWJzW3RdLnNyYyArICIpIgogICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobC5yaWdodC5qLmZpbmQoIi50cC1hcnItaW1naG9sZGVyIiksIHsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiAidXJsKCIgKyBzLnRodW1ic1tlXS5zcmMgKyAiKSIKICAgICAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIGYobCksIGYoYSksIGYoaCksIGYocCksIGQub24oIm1vdXNlZW50ZXIgbW91c2Vtb3ZlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBkLmhhc0NsYXNzKCJ0cC1tb3VzZW92ZXIiKSB8fCAoZC5hZGRDbGFzcygidHAtbW91c2VvdmVyIiksIHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxEZWxheWVkQ2FsbHNUbyh3KSwgdCAmJiBsLmhpZGVfb25sZWF2ZSAmJiB3KGQuZmluZCgiLnRwYXJyb3dzIiksIGwsICJzaG93IiksIG4gJiYgYS5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cC1idWxsZXRzIiksIGEsICJzaG93IiksIHIgJiYgaC5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cC10aHVtYnMiKSwgaCwgInNob3ciKSwgdSAmJiBwLmhpZGVfb25sZWF2ZSAmJiB3KGQuZmluZCgiLnRwLXRhYnMiKSwgcCwgInNob3ciKSwgSSAmJiAoZC5yZW1vdmVDbGFzcygidHAtbW91c2VvdmVyIiksIGIobywgcykpKQogICAgICAgICAgICB9KSwgZC5vbigibW91c2VsZWF2ZSIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgZC5yZW1vdmVDbGFzcygidHAtbW91c2VvdmVyIiksIGIobywgcykKICAgICAgICAgICAgfSksIHQgJiYgbC5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cGFycm93cyIpLCBsLCAiaGlkZSIsIDApLCBuICYmIGEuaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHAtYnVsbGV0cyIpLCBhLCAiaGlkZSIsIDApLCByICYmIGguaGlkZV9vbmxlYXZlICYmIHcoZC5maW5kKCIudHAtdGh1bWJzIiksIGgsICJoaWRlIiwgMCksIHUgJiYgcC5oaWRlX29ubGVhdmUgJiYgdyhkLmZpbmQoIi50cC10YWJzIiksIHAsICJoaWRlIiwgMCksIHIgJiYgdihkLmZpbmQoIi50cC10aHVtYnMiKSwgcyksIHUgJiYgdihkLmZpbmQoIi50cC10YWJzIiksIHMpLCAiY2Fyb3VzZWwiID09PSBzLnNsaWRlclR5cGUgJiYgdihvLCBzLCAhMCksICgib24iID09PSBzLm5hdmlnYXRpb24udG91Y2gudG91Y2hPbkRlc2t0b3AgfHwgIm9uIiA9PSBzLm5hdmlnYXRpb24udG91Y2gudG91Y2hlbmFibGVkICYmIEkpICYmIHYobywgcywgInN3aXBlYmFzZWQiKQogICAgICAgIH0KICAgIH0pOwogICAgdmFyIGMgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgIHZhciBpID0gKHQuaGFzQ2xhc3MoInRwLXRodW1icyIpLCB0Lmhhc0NsYXNzKCJ0cC10aHVtYnMiKSA/ICIudHAtdGh1bWItbWFzayIgOiAiLnRwLXRhYi1tYXNrIiksCiAgICAgICAgICAgICAgICBhID0gdC5oYXNDbGFzcygidHAtdGh1bWJzIikgPyAiLnRwLXRodW1icy1pbm5lci13cmFwcGVyIiA6ICIudHAtdGFicy1pbm5lci13cmFwcGVyIiwKICAgICAgICAgICAgICAgIG4gPSB0Lmhhc0NsYXNzKCJ0cC10aHVtYnMiKSA/ICIudHAtdGh1bWIiIDogIi50cC10YWIiLAogICAgICAgICAgICAgICAgciA9IHQuZmluZChpKSwKICAgICAgICAgICAgICAgIG8gPSByLmZpbmQoYSksCiAgICAgICAgICAgICAgICBzID0gZS5kaXJlY3Rpb24sCiAgICAgICAgICAgICAgICBkID0gInZlcnRpY2FsIiA9PT0gcyA/IHIuZmluZChuKS5maXJzdCgpLm91dGVySGVpZ2h0KCEwKSArIGUuc3BhY2UgOiByLmZpbmQobikuZmlyc3QoKS5vdXRlcldpZHRoKCEwKSArIGUuc3BhY2UsCiAgICAgICAgICAgICAgICBsID0gInZlcnRpY2FsIiA9PT0gcyA/IHIuaGVpZ2h0KCkgOiByLndpZHRoKCksCiAgICAgICAgICAgICAgICBoID0gcGFyc2VJbnQoci5maW5kKG4gKyAiLnNlbGVjdGVkIikuZGF0YSgibGlpbmRleCIpLCAwKSwKICAgICAgICAgICAgICAgIHAgPSBsIC8gZCwKICAgICAgICAgICAgICAgIHUgPSAidmVydGljYWwiID09PSBzID8gci5oZWlnaHQoKSA6IHIud2lkdGgoKSwKICAgICAgICAgICAgICAgIGMgPSAwIC0gaCAqIGQsCiAgICAgICAgICAgICAgICBnID0gInZlcnRpY2FsIiA9PT0gcyA/IG8uaGVpZ2h0KCkgOiBvLndpZHRoKCksCiAgICAgICAgICAgICAgICB2ID0gYyA8IDAgLSAoZyAtIHUpID8gMCAtIChnIC0gdSkgOiAwIDwgdiA/IDAgOiBjLAogICAgICAgICAgICAgICAgZiA9IG8uZGF0YSgib2Zmc2V0Iik7CiAgICAgICAgICAgIDIgPCBwICYmICh2ID0gYyAtIChmICsgZCkgPD0gMCA/IGMgLSAoZiArIGQpIDwgMCAtIGQgPyBmIDogdiArIGQgOiB2LCB2ID0gYyAtIGQgKyBmICsgbCA8IGQgJiYgYyArIChNYXRoLnJvdW5kKHApIC0gMikgKiBkIDwgZiA/IGMgKyAoTWF0aC5yb3VuZChwKSAtIDIpICogZCA6IHYpLCB2ID0gdiA8IDAgLSAoZyAtIHUpID8gMCAtIChnIC0gdSkgOiAwIDwgdiA/IDAgOiB2LCAidmVydGljYWwiICE9PSBzICYmIHIud2lkdGgoKSA+PSBvLndpZHRoKCkgJiYgKHYgPSAwKSwgInZlcnRpY2FsIiA9PT0gcyAmJiByLmhlaWdodCgpID49IG8uaGVpZ2h0KCkgJiYgKHYgPSAwKSwgdC5oYXNDbGFzcygiZHJhZ2dlZCIpIHx8ICgidmVydGljYWwiID09PSBzID8gby5kYXRhKCJ0bW1vdmUiLCBwdW5jaGdzLlR3ZWVuTGl0ZS50byhvLCAuNSwgewogICAgICAgICAgICAgICAgdG9wOiB2ICsgInB4IiwKICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICB9KSkgOiBvLmRhdGEoInRtbW92ZSIsIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKG8sIC41LCB7CiAgICAgICAgICAgICAgICBsZWZ0OiB2ICsgInB4IiwKICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICB9KSksIG8uZGF0YSgib2Zmc2V0IiwgdikpCiAgICAgICAgfSwKICAgICAgICBkID0gZnVuY3Rpb24odCwgaSwgZSwgYSwgbiwgcikgewogICAgICAgICAgICB2YXIgbyA9IGUucGFyZW50KCkuZmluZCgiLnRwLSIgKyByICsgInMiKSwKICAgICAgICAgICAgICAgIHMgPSBvLmZpbmQoIi50cC0iICsgciArICJzLWlubmVyLXdyYXBwZXIiKSwKICAgICAgICAgICAgICAgIGQgPSBvLmZpbmQoIi50cC0iICsgciArICItbWFzayIpLAogICAgICAgICAgICAgICAgbCA9IGEud2lkdGggKiB0IDwgYS5taW5fd2lkdGggPyBhLm1pbl93aWR0aCA6IE1hdGgucm91bmQoYS53aWR0aCAqIHQpLAogICAgICAgICAgICAgICAgaCA9IE1hdGgucm91bmQobCAvIGEud2lkdGggKiBhLmhlaWdodCksCiAgICAgICAgICAgICAgICBwID0gInZlcnRpY2FsIiA9PT0gYS5kaXJlY3Rpb24gPyBsIDogbCAqIG4gKyBhLnNwYWNlICogKG4gLSAxKSwKICAgICAgICAgICAgICAgIHUgPSAidmVydGljYWwiID09PSBhLmRpcmVjdGlvbiA/IGggKiBuICsgYS5zcGFjZSAqIChuIC0gMSkgOiBoLAogICAgICAgICAgICAgICAgYyA9ICJ2ZXJ0aWNhbCIgPT09IGEuZGlyZWN0aW9uID8gewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBsICsgInB4IgogICAgICAgICAgICAgICAgfSA6IHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGggKyAicHgiCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBpLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobywgYykpLCBpLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQocywgewogICAgICAgICAgICAgICAgd2lkdGg6IHAgKyAicHgiLAogICAgICAgICAgICAgICAgaGVpZ2h0OiB1ICsgInB4IgogICAgICAgICAgICB9KSksIGkuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChkLCB7CiAgICAgICAgICAgICAgICB3aWR0aDogcCArICJweCIsCiAgICAgICAgICAgICAgICBoZWlnaHQ6IHUgKyAicHgiCiAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgdmFyIGcgPSBzLmZpbmQoIi50cC0iICsgcik7CiAgICAgICAgICAgIHJldHVybiBnICYmIGpRdWVyeS5lYWNoKGcsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICJ2ZXJ0aWNhbCIgPT09IGEuZGlyZWN0aW9uID8gaS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICB0b3A6IHQgKiAoaCArIHBhcnNlSW50KHZvaWQgMCA9PT0gYS5zcGFjZSA/IDAgOiBhLnNwYWNlLCAwKSksCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGwgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogaCArICJweCIKICAgICAgICAgICAgICAgIH0pKSA6ICJob3Jpem9udGFsIiA9PT0gYS5kaXJlY3Rpb24gJiYgaS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiB0ICogKGwgKyBwYXJzZUludCh2b2lkIDAgPT09IGEuc3BhY2UgPyAwIDogYS5zcGFjZSwgMCkpLAogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBsICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGggKyAicHgiCiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfSksIGkKICAgICAgICB9LAogICAgICAgIGkgPSBmdW5jdGlvbihlLCBpKSB7CiAgICAgICAgICAgICJvbiIgPT09IGkubmF2aWdhdGlvbi5rZXlib2FyZE5hdmlnYXRpb24gJiYgalF1ZXJ5KGRvY3VtZW50KS5rZXlkb3duKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICgiaG9yaXpvbnRhbCIgPT0gaS5uYXZpZ2F0aW9uLmtleWJvYXJkX2RpcmVjdGlvbiAmJiAzOSA9PSB0LmtleUNvZGUgfHwgInZlcnRpY2FsIiA9PSBpLm5hdmlnYXRpb24ua2V5Ym9hcmRfZGlyZWN0aW9uICYmIDQwID09IHQua2V5Q29kZSkgJiYgKGkuc2NfaW5kaWNhdG9yID0gImFycm93IiwgaS5zY19pbmRpY2F0b3JfZGlyID0gMCwgTy5jYWxsaW5nTmV3U2xpZGUoZSwgMSkpLCAoImhvcml6b250YWwiID09IGkubmF2aWdhdGlvbi5rZXlib2FyZF9kaXJlY3Rpb24gJiYgMzcgPT0gdC5rZXlDb2RlIHx8ICJ2ZXJ0aWNhbCIgPT0gaS5uYXZpZ2F0aW9uLmtleWJvYXJkX2RpcmVjdGlvbiAmJiAzOCA9PSB0LmtleUNvZGUpICYmIChpLnNjX2luZGljYXRvciA9ICJhcnJvdyIsIGkuc2NfaW5kaWNhdG9yX2RpciA9IDEsIE8uY2FsbGluZ05ld1NsaWRlKGUsIC0xKSkKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIGcgPSBmdW5jdGlvbihnLCB2KSB7CiAgICAgICAgICAgIGlmICgib24iID09PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uIHx8ICJjYXJvdXNlbCIgPT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbE5hdmlnYXRpb24pIHsKICAgICAgICAgICAgICAgIHYuaXNJRUVsZXZlbiA9ICEhbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvVHJpZGVudC4qcnZcOjExXC4vKSwgdi5pc1NhZmFyaSA9ICEhbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvc2FmYXJpL2kpLCB2LmlzY2hyb21lID0gISFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9jaHJvbWUvaSk7CiAgICAgICAgICAgICAgICB2YXIgZiA9IHYuaXNjaHJvbWUgPyAtNDkgOiB2LmlzSUVFbGV2ZW4gfHwgdi5pc1NhZmFyaSA/IC05IDogbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvbW96aWxsYS9pKSA/IC0yOSA6IC00OSwKICAgICAgICAgICAgICAgICAgICBtID0gdi5pc2Nocm9tZSA/IDQ5IDogdi5pc0lFRWxldmVuIHx8IHYuaXNTYWZhcmkgPyA5IDogbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvbW96aWxsYS9pKSA/IDI5IDogNDk7CiAgICAgICAgICAgICAgICBnLm9uKCJtb3VzZXdoZWVsIERPTU1vdXNlU2Nyb2xsIiwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBhLCBuLCByLCBvID0gKGUgPSB0Lm9yaWdpbmFsRXZlbnQsIHIgPSBuID0gYSA9IGkgPSAwLCAiZGV0YWlsIiBpbiBlICYmIChhID0gZS5kZXRhaWwpLCAid2hlZWxEZWx0YSIgaW4gZSAmJiAoYSA9IC1lLndoZWVsRGVsdGEgLyAxMjApLCAid2hlZWxEZWx0YVkiIGluIGUgJiYgKGEgPSAtZS53aGVlbERlbHRhWSAvIDEyMCksICJ3aGVlbERlbHRhWCIgaW4gZSAmJiAoaSA9IC1lLndoZWVsRGVsdGFYIC8gMTIwKSwgImF4aXMiIGluIGUgJiYgZS5heGlzID09PSBlLkhPUklaT05UQUxfQVhJUyAmJiAoaSA9IGEsIGEgPSAwKSwgbiA9IDEgKiBpLCByID0gMSAqIGEsICJkZWx0YVkiIGluIGUgJiYgKHIgPSBlLmRlbHRhWSksICJkZWx0YVgiIGluIGUgJiYgKG4gPSBlLmRlbHRhWCksIChuIHx8IHIpICYmIGUuZGVsdGFNb2RlICYmIChlLmRlbHRhTW9kZSwgbiAqPSAxLCByICo9IDEpLCBuICYmICFpICYmIChpID0gbiA8IDEgPyAtMSA6IDEpLCByICYmICFhICYmIChhID0gciA8IDEgPyAtMSA6IDEpLCAoMzAwIDwgKHIgPSBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9tb3ppbGxhL2kpID8gMTAgKiByIDogcikgfHwgciA8IC0zMDApICYmIChyIC89IDEwKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Bpblg6IGksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGluWTogYSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpeGVsWDogbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpeGVsWTogcgogICAgICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IGcuZmluZCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaS5hY3RpdmUtcmV2c2xpZGUiKS5pbmRleCgpLAogICAgICAgICAgICAgICAgICAgICAgICBkID0gZy5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5pbmRleCgpLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gLTEgIT0gcyAmJiAwID09IHMgfHwgLTEgIT0gZCAmJiAwID09IGQsCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSAtMSAhPSBzICYmIHMgPT0gdi5zbGlkZWFtb3VudCAtIDEgfHwgMSAhPSBkICYmIGQgPT0gdi5zbGlkZWFtb3VudCAtIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHAgPSAhMDsKICAgICAgICAgICAgICAgICAgICAiY2Fyb3VzZWwiID09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbE5hdmlnYXRpb24gJiYgKGwgPSBoID0gITEpLCAtMSA9PSBkID8gby5waXhlbFkgPCBmID8gKGwgfHwgKHYuc2NfaW5kaWNhdG9yID0gImFycm93IiwgInJldmVyc2UiICE9PSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlICYmICh2LnNjX2luZGljYXRvcl9kaXIgPSAxLCBPLmNhbGxpbmdOZXdTbGlkZShnLCAtMSkpLCBwID0gITEpLCBoIHx8ICh2LnNjX2luZGljYXRvciA9ICJhcnJvdyIsICJyZXZlcnNlIiA9PT0gdi5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsUmV2ZXJzZSAmJiAodi5zY19pbmRpY2F0b3JfZGlyID0gMCwgTy5jYWxsaW5nTmV3U2xpZGUoZywgMSkpLCBwID0gITEpKSA6IG0gPCBvLnBpeGVsWSAmJiAoaCB8fCAodi5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCAicmV2ZXJzZSIgIT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UgJiYgKHYuc2NfaW5kaWNhdG9yX2RpciA9IDAsIE8uY2FsbGluZ05ld1NsaWRlKGcsIDEpKSwgcCA9ICExKSwgbCB8fCAodi5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCAicmV2ZXJzZSIgPT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UgJiYgKHYuc2NfaW5kaWNhdG9yX2RpciA9IDEsIE8uY2FsbGluZ05ld1NsaWRlKGcsIC0xKSksIHAgPSAhMSkpIDogcCA9ICExOwogICAgICAgICAgICAgICAgICAgIHZhciB1ID0gdi5jLm9mZnNldCgpLnRvcCAtIGpRdWVyeSgiYm9keSIpLnNjcm9sbFRvcCgpLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gdSArIHYuYy5oZWlnaHQoKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gImNhcm91c2VsIiAhPSB2Lm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uID8gKCJyZXZlcnNlIiAhPT0gdi5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsUmV2ZXJzZSAmJiAoMCA8IHUgJiYgMCA8IG8ucGl4ZWxZIHx8IGMgPCBqUXVlcnkod2luZG93KS5oZWlnaHQoKSAmJiBvLnBpeGVsWSA8IDApICYmIChwID0gITApLCAicmV2ZXJzZSIgPT09IHYubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UgJiYgKHUgPCAwICYmIG8ucGl4ZWxZIDwgMCB8fCBjID4galF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkgJiYgMCA8IG8ucGl4ZWxZKSAmJiAocCA9ICEwKSkgOiBwID0gITEsIDAgPT0gcCA/ICh0LnByZXZlbnREZWZhdWx0KHQpLCAhMSkgOiB2b2lkIDAKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIEggPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgIHJldHVybiAhMCA9PT0gKHQgPSBJID8galF1ZXJ5KGkudGFyZ2V0KS5jbG9zZXN0KCIuIiArIHQpLmxlbmd0aCB8fCBqUXVlcnkoaS5zcmNFbGVtZW50KS5jbG9zZXN0KCIuIiArIHQpLmxlbmd0aCA6IGpRdWVyeShpLnRvRWxlbWVudCkuY2xvc2VzdCgiLiIgKyB0KS5sZW5ndGggfHwgalF1ZXJ5KGkub3JpZ2luYWxUYXJnZXQpLmNsb3Nlc3QoIi4iICsgdCkubGVuZ3RoKSB8fCAxID09PSB0ID8gMSA6IDAKICAgICAgICB9LAogICAgICAgIHYgPSBmdW5jdGlvbihDLCBMLCB0KSB7CiAgICAgICAgICAgIHZhciBrID0gTC5jYXJvdXNlbDsKICAgICAgICAgICAgalF1ZXJ5KCIuYnVsbGV0LCAuYnVsbGV0cywgLnRwLWJ1bGxldHMsIC50cGFycm93cyIpLmFkZENsYXNzKCJub1N3aXBlIiksIGsuTGltaXQgPSAiZW5kbGVzcyI7CiAgICAgICAgICAgIHZhciBlID0gKEkgfHwgTy5nZXRfYnJvd3NlcigpLCBDKSwKICAgICAgICAgICAgICAgIGkgPSAidmVydGljYWwiID09PSBMLm5hdmlnYXRpb24udGh1bWJuYWlscy5kaXJlY3Rpb24gfHwgInZlcnRpY2FsIiA9PT0gTC5uYXZpZ2F0aW9uLnRhYnMuZGlyZWN0aW9uID8gIm5vbmUiIDogInZlcnRpY2FsIiwKICAgICAgICAgICAgICAgIFEgPSBMLm5hdmlnYXRpb24udG91Y2guc3dpcGVfZGlyZWN0aW9uIHx8ICJob3Jpem9udGFsIjsKICAgICAgICAgICAgaSA9ICJzd2lwZWJhc2VkIiA9PSB0ICYmICJ2ZXJ0aWNhbCIgPT0gUSA/ICJub25lIiA6IHQgPyAidmVydGljYWwiIDogaSwgalF1ZXJ5LmZuLnN3aXBldHAgfHwgKGpRdWVyeS5mbi5zd2lwZXRwID0galF1ZXJ5LmZuLnN3aXBlKSwgalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMgJiYgalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMuZXhjbHVkZWRFbGVtZW50cyB8fCBqUXVlcnkuZm4uc3dpcGV0cC5kZWZhdWx0cyB8fCAoalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMgPSBuZXcgT2JqZWN0KSwgalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMuZXhjbHVkZWRFbGVtZW50cyA9ICJsYWJlbCwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgLm5vU3dpcGUiLCBlLnN3aXBldHAoewogICAgICAgICAgICAgICAgYWxsb3dQYWdlU2Nyb2xsOiBpLAogICAgICAgICAgICAgICAgdHJpZ2dlck9uVG91Y2hMZWF2ZTogITAsCiAgICAgICAgICAgICAgICB0cmVzaG9sZDogTC5uYXZpZ2F0aW9uLnRvdWNoLnN3aXBlX3RyZXNob2xkLAogICAgICAgICAgICAgICAgZmluZ2VyczogTC5uYXZpZ2F0aW9uLnRvdWNoLnN3aXBlX21pbl90b3VjaGVzLAogICAgICAgICAgICAgICAgZXhjbHVkZUVsZW1lbnRzOiBqUXVlcnkuZm4uc3dpcGV0cC5kZWZhdWx0cy5leGNsdWRlZEVsZW1lbnRzLAogICAgICAgICAgICAgICAgc3dpcGVTdGF0dXM6IGZ1bmN0aW9uKHQsIGUsIGksIGEsIG4sIHIsIG8pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IEgoInJldl9zbGlkZXJfd3JhcHBlciIsIDAsIHQpLAogICAgICAgICAgICAgICAgICAgICAgICBkID0gSCgidHAtdGh1bWJzIiwgMCwgdCksCiAgICAgICAgICAgICAgICAgICAgICAgIGwgPSBIKCJ0cC10YWJzIiwgMCwgdCksCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSAhIWpRdWVyeSh0aGlzKS5hdHRyKCJjbGFzcyIpLm1hdGNoKC90cC10YWJzfHRwLXRodW1iL2dpKTsKICAgICAgICAgICAgICAgICAgICBpZiAoImNhcm91c2VsIiA9PT0gTC5zbGlkZXJUeXBlICYmICgoIm1vdmUiID09PSBlIHx8ICJlbmQiID09PSBlIHx8ICJjYW5jZWwiID09IGUpICYmIEwuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyICYmICFMLmRyYWdTdGFydGVkT3ZlclRodW1icyAmJiAhTC5kcmFnU3RhcnRlZE92ZXJUYWJzIHx8ICJzdGFydCIgPT09IGUgJiYgMCA8IHMgJiYgMCA9PT0gZCAmJiAwID09PSBsKSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoSSAmJiAoInVwIiA9PT0gaSB8fCAiZG93biIgPT09IGkpKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoTC5kcmFnU3RhcnRlZE92ZXJTbGlkZXIgPSAhMCwgYSA9IGkgJiYgaS5tYXRjaCgvbGVmdHx1cC9nKSA/IE1hdGgucm91bmQoLTEgKiBhKSA6IGEgPSBNYXRoLnJvdW5kKDEgKiBhKSwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAic3RhcnQiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gay5wb3NpdGlvbmFuaW0gJiYgKGsucG9zaXRpb25hbmltLmtpbGwoKSwgay5zbGlkZV9nbG9iYWxvZmZzZXQgPSAib2ZmIiA9PT0gay5pbmZpbml0eSA/IGsuc2xpZGVfb2Zmc2V0IDogTy5zaW1wKGsuc2xpZGVfb2Zmc2V0LCBrLm1heHdpZHRoKSksIGsub3ZlcnB1bGwgPSAibm9uZSIsIGsud3JhcC5hZGRDbGFzcygiZHJhZ2dlZCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAibW92ZSI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEwuYy5maW5kKCIudHAtd2l0aGFjdGlvbiIpLmFkZENsYXNzKCJ0cC10ZW1wb3JhcnlkaXNhYmxlZCIpLCBrLnNsaWRlX29mZnNldCA9ICJvZmYiID09PSBrLmluZmluaXR5ID8gay5zbGlkZV9nbG9iYWxvZmZzZXQgKyBhIDogTy5zaW1wKGsuc2xpZGVfZ2xvYmFsb2Zmc2V0ICsgYSwgay5tYXh3aWR0aCksICJvZmYiID09PSBrLmluZmluaXR5KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwID0gImNlbnRlciIgPT09IGsuaG9yaXpvbnRhbF9hbGlnbiA/IChrLndyYXB3aWR0aCAvIDIgLSBrLnNsaWRlX3dpZHRoIC8gMiAtIGsuc2xpZGVfb2Zmc2V0KSAvIGsuc2xpZGVfd2lkdGggOiAoMCAtIGsuc2xpZGVfb2Zmc2V0KSAvIGsuc2xpZGVfd2lkdGg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJub25lIiAhPT0gay5vdmVycHVsbCAmJiAwICE9PSBrLm92ZXJwdWxsIHx8ICEocCA8IDAgfHwgcCA+IEwuc2xpZGVhbW91bnQgLSAxKSA/IDAgPD0gcCAmJiBwIDw9IEwuc2xpZGVhbW91bnQgLSAxICYmICgwIDw9IHAgJiYgYSA+IGsub3ZlcnB1bGwgfHwgcCA8PSBMLnNsaWRlYW1vdW50IC0gMSAmJiBhIDwgay5vdmVycHVsbCkgJiYgKGsub3ZlcnB1bGwgPSAwKSA6IGsub3ZlcnB1bGwgPSBhLCBrLnNsaWRlX29mZnNldCA9IHAgPCAwID8gay5zbGlkZV9vZmZzZXQgKyAoay5vdmVycHVsbCAtIGEpIC8gMS4xICsgTWF0aC5zcXJ0KE1hdGguYWJzKChrLm92ZXJwdWxsIC0gYSkgLyAxLjEpKSA6IHAgPiBMLnNsaWRlYW1vdW50IC0gMSA/IGsuc2xpZGVfb2Zmc2V0ICsgKGsub3ZlcnB1bGwgLSBhKSAvIDEuMSAtIE1hdGguc3FydChNYXRoLmFicygoay5vdmVycHVsbCAtIGEpIC8gMS4xKSkgOiBrLnNsaWRlX29mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPLm9yZ2FuaXNlQ2Fyb3VzZWwoTCwgaSwgITAsICEwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJjYW5jZWwiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGsuc2xpZGVfZ2xvYmFsb2Zmc2V0ID0gay5zbGlkZV9vZmZzZXQsIGsud3JhcC5yZW1vdmVDbGFzcygiZHJhZ2dlZCIpLCBPLmNhcm91c2VsVG9FdmFsUG9zaXRpb24oTCwgaSksIEwuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyID0gITEsIEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID0gITEsIEwuZHJhZ1N0YXJ0ZWRPdmVyVGFicyA9ICExLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMLmMuZmluZCgiLnRwLXdpdGhhY3Rpb24iKS5yZW1vdmVDbGFzcygidHAtdGVtcG9yYXJ5ZGlzYWJsZWQiKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDE5KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCgibW92ZSIgIT09IGUgJiYgImVuZCIgIT09IGUgJiYgImNhbmNlbCIgIT0gZSB8fCBMLmRyYWdTdGFydGVkT3ZlclNsaWRlciB8fCAhTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgJiYgIUwuZHJhZ1N0YXJ0ZWRPdmVyVGFicykgJiYgISgic3RhcnQiID09PSBlICYmIDAgPCBzICYmICgwIDwgZCB8fCAwIDwgbCkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoImVuZCIgPT0gZSAmJiAhaCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChMLnNjX2luZGljYXRvciA9ICJhcnJvdyIsICJob3Jpem9udGFsIiA9PSBRICYmICJsZWZ0IiA9PSBpIHx8ICJ2ZXJ0aWNhbCIgPT0gUSAmJiAidXAiID09IGkpIHJldHVybiBMLnNjX2luZGljYXRvcl9kaXIgPSAwLCBPLmNhbGxpbmdOZXdTbGlkZShMLmMsIDEpLCAhMTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoImhvcml6b250YWwiID09IFEgJiYgInJpZ2h0IiA9PSBpIHx8ICJ2ZXJ0aWNhbCIgPT0gUSAmJiAiZG93biIgPT0gaSkgcmV0dXJuIEwuc2NfaW5kaWNhdG9yX2RpciA9IDEsIE8uY2FsbGluZ05ld1NsaWRlKEwuYywgLTEpLCAhMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEwuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyID0gITEsIEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID0gITEsICEoTC5kcmFnU3RhcnRlZE92ZXJUYWJzID0gITEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgMCA8IGQgJiYgKEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID0gITApLCAwIDwgbCAmJiAoTC5kcmFnU3RhcnRlZE92ZXJUYWJzID0gITApOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdSA9IEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID8gIi50cC10aHVtYnMiIDogIi50cC10YWJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA/ICIudHAtdGh1bWItbWFzayIgOiAiLnRwLXRhYi1tYXNrIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGcgPSBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA/ICIudHAtdGh1bWJzLWlubmVyLXdyYXBwZXIiIDogIi50cC10YWJzLWlubmVyLXdyYXBwZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdiA9IEwuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzID8gIi50cC10aHVtYiIgOiAiLnRwLXRhYiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmID0gTC5kcmFnU3RhcnRlZE92ZXJUaHVtYnMgPyBMLm5hdmlnYXRpb24udGh1bWJuYWlscyA6IEwubmF2aWdhdGlvbi50YWJzOwogICAgICAgICAgICAgICAgICAgICAgICBhID0gaSAmJiBpLm1hdGNoKC9sZWZ0fHVwL2cpID8gTWF0aC5yb3VuZCgtMSAqIGEpIDogYSA9IE1hdGgucm91bmQoMSAqIGEpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbSA9IEMucGFyZW50KCkuZmluZChjKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGIgPSBtLmZpbmQoZyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ID0gZi5kaXJlY3Rpb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfID0gInZlcnRpY2FsIiA9PT0gdyA/IGIuaGVpZ2h0KCkgOiBiLndpZHRoKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4ID0gInZlcnRpY2FsIiA9PT0gdyA/IG0uaGVpZ2h0KCkgOiBtLndpZHRoKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ID0gInZlcnRpY2FsIiA9PT0gdyA/IG0uZmluZCh2KS5maXJzdCgpLm91dGVySGVpZ2h0KCEwKSArIGYuc3BhY2UgOiBtLmZpbmQodikuZmlyc3QoKS5vdXRlcldpZHRoKCEwKSArIGYuc3BhY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUID0gdm9pZCAwID09PSBiLmRhdGEoIm9mZnNldCIpID8gMCA6IHBhcnNlSW50KGIuZGF0YSgib2Zmc2V0IiksIDApLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgUyA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAic3RhcnQiOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMucGFyZW50KCkuZmluZCh1KS5hZGRDbGFzcygiZHJhZ2dlZCIpLCBUID0gInZlcnRpY2FsIiA9PT0gdyA/IGIucG9zaXRpb24oKS50b3AgOiBiLnBvc2l0aW9uKCkubGVmdCwgYi5kYXRhKCJvZmZzZXQiLCBUKSwgYi5kYXRhKCJ0bW1vdmUiKSAmJiBiLmRhdGEoInRtbW92ZSIpLnBhdXNlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJtb3ZlIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXyA8PSB4KSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUyA9IDAgPCAoUyA9IFQgKyBhKSA/ICJob3Jpem9udGFsIiA9PT0gdyA/IFMgLSBiLndpZHRoKCkgKiAoUyAvIGIud2lkdGgoKSAqIFMgLyBiLndpZHRoKCkpIDogUyAtIGIuaGVpZ2h0KCkgKiAoUyAvIGIuaGVpZ2h0KCkgKiBTIC8gYi5oZWlnaHQoKSkgOiBTOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBqID0gInZlcnRpY2FsIiA9PT0gdyA/IDAgLSAoYi5oZWlnaHQoKSAtIG0uaGVpZ2h0KCkpIDogMCAtIChiLndpZHRoKCkgLSBtLndpZHRoKCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFMgPSBTIDwgaiA/ICJob3Jpem9udGFsIiA9PT0gdyA/IFMgKyBiLndpZHRoKCkgKiAoUyAtIGopIC8gYi53aWR0aCgpICogKFMgLSBqKSAvIGIud2lkdGgoKSA6IFMgKyBiLmhlaWdodCgpICogKFMgLSBqKSAvIGIuaGVpZ2h0KCkgKiAoUyAtIGopIC8gYi5oZWlnaHQoKSA6IFMsICJ2ZXJ0aWNhbCIgPT09IHcgPyBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYiwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IFMgKyAicHgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYiwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBTICsgInB4IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgImNhbmNlbCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGgpIHJldHVybiBTID0gVCArIGEsIFMgPSAwIDwgKFMgPSAidmVydGljYWwiID09PSB3ID8gUyA8IDAgLSAoYi5oZWlnaHQoKSAtIG0uaGVpZ2h0KCkpID8gMCAtIChiLmhlaWdodCgpIC0gbS5oZWlnaHQoKSkgOiBTIDogUyA8IDAgLSAoYi53aWR0aCgpIC0gbS53aWR0aCgpKSA/IDAgLSAoYi53aWR0aCgpIC0gbS53aWR0aCgpKSA6IFMpID8gMCA6IFMsIFMgPSBNYXRoLmFicyhhKSA+IHkgLyAxMCA/IGEgPD0gMCA/IE1hdGguZmxvb3IoUyAvIHkpICogeSA6IE1hdGguY2VpbChTIC8geSkgKiB5IDogYSA8IDAgPyBNYXRoLmNlaWwoUyAvIHkpICogeSA6IE1hdGguZmxvb3IoUyAvIHkpICogeSwgUyA9IDAgPCAoUyA9ICJ2ZXJ0aWNhbCIgPT09IHcgPyBTIDwgMCAtIChiLmhlaWdodCgpIC0gbS5oZWlnaHQoKSkgPyAwIC0gKGIuaGVpZ2h0KCkgLSBtLmhlaWdodCgpKSA6IFMgOiBTIDwgMCAtIChiLndpZHRoKCkgLSBtLndpZHRoKCkpID8gMCAtIChiLndpZHRoKCkgLSBtLndpZHRoKCkpIDogUykgPyAwIDogUywgInZlcnRpY2FsIiA9PT0gdyA/IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGIsIC41LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogUyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VPdXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGIsIC41LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IFMgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIFMgPSBTIHx8ICgidmVydGljYWwiID09PSB3ID8gYi5wb3NpdGlvbigpLnRvcCA6IGIucG9zaXRpb24oKS5sZWZ0KSwgYi5kYXRhKCJvZmZzZXQiLCBTKSwgYi5kYXRhKCJkaXN0YW5jZSIsIGEpLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMLmRyYWdTdGFydGVkT3ZlclNsaWRlciA9ICExLCBMLmRyYWdTdGFydGVkT3ZlclRodW1icyA9ICExLCBMLmRyYWdTdGFydGVkT3ZlclRhYnMgPSAhMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMCksIEMucGFyZW50KCkuZmluZCh1KS5yZW1vdmVDbGFzcygiZHJhZ2dlZCIpLCAhMQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgZiA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgdC5oaWRlX2RlbGF5ID0galF1ZXJ5LmlzTnVtZXJpYyhwYXJzZUludCh0LmhpZGVfZGVsYXksIDApKSA/IHQuaGlkZV9kZWxheSAvIDFlMyA6IC4yLCB0LmhpZGVfZGVsYXlfbW9iaWxlID0galF1ZXJ5LmlzTnVtZXJpYyhwYXJzZUludCh0LmhpZGVfZGVsYXlfbW9iaWxlLCAwKSkgPyB0LmhpZGVfZGVsYXlfbW9iaWxlIC8gMWUzIDogLjIKICAgICAgICB9LAogICAgICAgIG0gPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHJldHVybiB0ICYmIHQuZW5hYmxlCiAgICAgICAgfSwKICAgICAgICBhID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICByZXR1cm4gdCAmJiB0LmVuYWJsZSAmJiAhMCA9PT0gdC5oaWRlX29ubGVhdmUgJiYgKHZvaWQgMCA9PT0gdC5wb3NpdGlvbiB8fCAhdC5wb3NpdGlvbi5tYXRjaCgvb3V0ZXIvZykpCiAgICAgICAgfSwKICAgICAgICBiID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICB2YXIgaSA9IHQucGFyZW50KCk7CiAgICAgICAgICAgIGEoZS5uYXZpZ2F0aW9uLmFycm93cykgJiYgcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoSSA/IGUubmF2aWdhdGlvbi5hcnJvd3MuaGlkZV9kZWxheV9tb2JpbGUgOiBlLm5hdmlnYXRpb24uYXJyb3dzLmhpZGVfZGVsYXksIHcsIFtpLmZpbmQoIi50cGFycm93cyIpLCBlLm5hdmlnYXRpb24uYXJyb3dzLCAiaGlkZSJdKSwgYShlLm5hdmlnYXRpb24uYnVsbGV0cykgJiYgcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoSSA/IGUubmF2aWdhdGlvbi5idWxsZXRzLmhpZGVfZGVsYXlfbW9iaWxlIDogZS5uYXZpZ2F0aW9uLmJ1bGxldHMuaGlkZV9kZWxheSwgdywgW2kuZmluZCgiLnRwLWJ1bGxldHMiKSwgZS5uYXZpZ2F0aW9uLmJ1bGxldHMsICJoaWRlIl0pLCBhKGUubmF2aWdhdGlvbi50aHVtYm5haWxzKSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5kZWxheWVkQ2FsbChJID8gZS5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuaGlkZV9kZWxheV9tb2JpbGUgOiBlLm5hdmlnYXRpb24udGh1bWJuYWlscy5oaWRlX2RlbGF5LCB3LCBbaS5maW5kKCIudHAtdGh1bWJzIiksIGUubmF2aWdhdGlvbi50aHVtYm5haWxzLCAiaGlkZSJdKSwgYShlLm5hdmlnYXRpb24udGFicykgJiYgcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoSSA/IGUubmF2aWdhdGlvbi50YWJzLmhpZGVfZGVsYXlfbW9iaWxlIDogZS5uYXZpZ2F0aW9uLnRhYnMuaGlkZV9kZWxheSwgdywgW2kuZmluZCgiLnRwLXRhYnMiKSwgZS5uYXZpZ2F0aW9uLnRhYnMsICJoaWRlIl0pCiAgICAgICAgfSwKICAgICAgICB3ID0gZnVuY3Rpb24odCwgZSwgaSwgYSkgewogICAgICAgICAgICBzd2l0Y2ggKGEgPSB2b2lkIDAgPT09IGEgPyAuNSA6IGEsIGkpIHsKICAgICAgICAgICAgICAgIGNhc2UgInNob3ciOgogICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHQsIGEsIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQsCiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImF1dG8iCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJoaWRlIjoKICAgICAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS50byh0LCBhLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3UsCiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImF1dG8iCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgXyA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgZS5zdHlsZSA9IHZvaWQgMCA9PT0gZS5zdHlsZSA/ICIiIDogZS5zdHlsZSwgZS5sZWZ0LnN0eWxlID0gdm9pZCAwID09PSBlLmxlZnQuc3R5bGUgPyAiIiA6IGUubGVmdC5zdHlsZSwgZS5yaWdodC5zdHlsZSA9IHZvaWQgMCA9PT0gZS5yaWdodC5zdHlsZSA/ICIiIDogZS5yaWdodC5zdHlsZSwgMCA9PT0gdC5maW5kKCIudHAtbGVmdGFycm93LnRwYXJyb3dzIikubGVuZ3RoICYmIHQuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1sZWZ0YXJyb3cgdHBhcnJvd3MgJyArIGUuc3R5bGUgKyAiICIgKyBlLmxlZnQuc3R5bGUgKyAnIj4nICsgZS50bXAgKyAiPC9kaXY+IiksIDAgPT09IHQuZmluZCgiLnRwLXJpZ2h0YXJyb3cudHBhcnJvd3MiKS5sZW5ndGggJiYgdC5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLXJpZ2h0YXJyb3cgdHBhcnJvd3MgJyArIGUuc3R5bGUgKyAiICIgKyBlLnJpZ2h0LnN0eWxlICsgJyI+JyArIGUudG1wICsgIjwvZGl2PiIpOwogICAgICAgICAgICB2YXIgYSA9IHQuZmluZCgiLnRwLWxlZnRhcnJvdy50cGFycm93cyIpLAogICAgICAgICAgICAgICAgbiA9IHQuZmluZCgiLnRwLXJpZ2h0YXJyb3cudHBhcnJvd3MiKTsKICAgICAgICAgICAgZS5ydGwgPyAoYS5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGkuc2NfaW5kaWNhdG9yID0gImFycm93IiwgaS5zY19pbmRpY2F0b3JfZGlyID0gMCwgdC5yZXZuZXh0KCkKICAgICAgICAgICAgfSksIG4uY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBpLnNjX2luZGljYXRvciA9ICJhcnJvdyIsIGkuc2NfaW5kaWNhdG9yX2RpciA9IDEsIHQucmV2cHJldigpCiAgICAgICAgICAgIH0pKSA6IChuLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaS5zY19pbmRpY2F0b3IgPSAiYXJyb3ciLCBpLnNjX2luZGljYXRvcl9kaXIgPSAwLCB0LnJldm5leHQoKQogICAgICAgICAgICB9KSwgYS5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGkuc2NfaW5kaWNhdG9yID0gImFycm93IiwgaS5zY19pbmRpY2F0b3JfZGlyID0gMSwgdC5yZXZwcmV2KCkKICAgICAgICAgICAgfSkpLCBlLnJpZ2h0LmogPSB0LmZpbmQoIi50cC1yaWdodGFycm93LnRwYXJyb3dzIiksIGUubGVmdC5qID0gdC5maW5kKCIudHAtbGVmdGFycm93LnRwYXJyb3dzIiksIGUucGFkZGluZ190b3AgPSBwYXJzZUludChpLmNhcm91c2VsLnBhZGRpbmdfdG9wIHx8IDAsIDApLCBlLnBhZGRpbmdfYm90dG9tID0gcGFyc2VJbnQoaS5jYXJvdXNlbC5wYWRkaW5nX2JvdHRvbSB8fCAwLCAwKSwgVChhLCBlLmxlZnQsIGkpLCBUKG4sIGUucmlnaHQsIGkpLCBlLmxlZnQub3B0ID0gaSwgZS5yaWdodC5vcHQgPSBpLCAib3V0ZXItbGVmdCIgIT0gZS5wb3NpdGlvbiAmJiAib3V0ZXItcmlnaHQiICE9IGUucG9zaXRpb24gfHwgKGkub3V0ZXJuYXYgPSAhMCkKICAgICAgICB9LAogICAgICAgIHUgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgIHZhciBhID0gdC5vdXRlckhlaWdodCghMCksCiAgICAgICAgICAgICAgICBuID0gKHQub3V0ZXJXaWR0aCghMCksIG51bGwgPT0gZS5vcHQgPyAwIDogMCA9PSBpLmNvbmggPyBpLmhlaWdodCA6IGkuY29uaCksCiAgICAgICAgICAgICAgICByID0gImxheWVyZ3JpZCIgPT0gZS5jb250YWluZXIgPyAiZnVsbHNjcmVlbiIgPT0gaS5zbGlkZXJMYXlvdXQgPyBpLmhlaWdodCAvIDIgLSBpLmdyaWRoZWlnaHRbaS5jdXJXaW5SYW5nZV0gKiBpLmJoIC8gMiA6ICJvbiIgPT0gaS5hdXRvSGVpZ2h0IHx8IG51bGwgIT0gaS5taW5IZWlnaHQgJiYgMCA8IGkubWluSGVpZ2h0ID8gbiAvIDIgLSBpLmdyaWRoZWlnaHRbaS5jdXJXaW5SYW5nZV0gKiBpLmJoIC8gMiA6IDAgOiAwLAogICAgICAgICAgICAgICAgbyA9ICJ0b3AiID09PSBlLnZfYWxpZ24gPyB7CiAgICAgICAgICAgICAgICAgICAgdG9wOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICB5OiBNYXRoLnJvdW5kKGUudl9vZmZzZXQgKyByKSArICJweCIKICAgICAgICAgICAgICAgIH0gOiAiY2VudGVyIiA9PT0gZS52X2FsaWduID8gewogICAgICAgICAgICAgICAgICAgIHRvcDogIjUwJSIsCiAgICAgICAgICAgICAgICAgICAgeTogTWF0aC5yb3VuZCgwIC0gYSAvIDIgKyBlLnZfb2Zmc2V0KSArICJweCIKICAgICAgICAgICAgICAgIH0gOiB7CiAgICAgICAgICAgICAgICAgICAgdG9wOiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgeTogTWF0aC5yb3VuZCgwIC0gKGEgKyBlLnZfb2Zmc2V0ICsgcikpICsgInB4IgogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgdC5oYXNDbGFzcygib3V0ZXItYm90dG9tIikgfHwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIG8pCiAgICAgICAgfSwKICAgICAgICB4ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICB2YXIgYSA9ICh0Lm91dGVySGVpZ2h0KCEwKSwgdC5vdXRlcldpZHRoKCEwKSksCiAgICAgICAgICAgICAgICBuID0gImxheWVyZ3JpZCIgPT0gZS5jb250YWluZXIgPyAiY2Fyb3VzZWwiID09PSBpLnNsaWRlclR5cGUgPyAwIDogaS53aWR0aCAvIDIgLSBpLmdyaWR3aWR0aFtpLmN1cldpblJhbmdlXSAqIGkuYncgLyAyIDogMCwKICAgICAgICAgICAgICAgIHIgPSAibGVmdCIgPT09IGUuaF9hbGlnbiA/IHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICB4OiBNYXRoLnJvdW5kKGUuaF9vZmZzZXQgKyBuKSArICJweCIKICAgICAgICAgICAgICAgIH0gOiAiY2VudGVyIiA9PT0gZS5oX2FsaWduID8gewogICAgICAgICAgICAgICAgICAgIGxlZnQ6ICI1MCUiLAogICAgICAgICAgICAgICAgICAgIHg6IE1hdGgucm91bmQoMCAtIGEgLyAyICsgZS5oX29mZnNldCkgKyAicHgiCiAgICAgICAgICAgICAgICB9IDogewogICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICB4OiBNYXRoLnJvdW5kKDAgLSAoYSArIGUuaF9vZmZzZXQgKyBuKSkgKyAicHgiCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgcikKICAgICAgICB9LAogICAgICAgIFQgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgIHZhciBhID0gMCA8IHQuY2xvc2VzdCgiLnRwLXNpbXBsZXJlc3BvbnNpdmUiKS5sZW5ndGggPyB0LmNsb3Nlc3QoIi50cC1zaW1wbGVyZXNwb25zaXZlIikgOiAwIDwgdC5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLW1haW51bCIpLmxlbmd0aCA/IHQuY2xvc2VzdCgiLnRwLXJldnNsaWRlci1tYWludWwiKSA6IDAgPCB0LmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKS5sZW5ndGggPyB0LmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKSA6IHQucGFyZW50KCkuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwiKSwKICAgICAgICAgICAgICAgIG4gPSBhLndpZHRoKCksCiAgICAgICAgICAgICAgICByID0gYS5oZWlnaHQoKTsKICAgICAgICAgICAgaWYgKHUodCwgZSwgaSksIHgodCwgZSwgaSksICJvdXRlci1sZWZ0IiAhPT0gZS5wb3NpdGlvbiB8fCAiZnVsbHdpZHRoIiAhPSBlLnNsaWRlckxheW91dCAmJiAiZnVsbHNjcmVlbiIgIT0gZS5zbGlkZXJMYXlvdXQgPyAib3V0ZXItcmlnaHQiICE9PSBlLnBvc2l0aW9uIHx8ICJmdWxsd2lkdGgiICE9IGUuc2xpZGVyTGF5b3V0ICYmICJmdWxsc2NyZWVuIiAhPSBlLnNsaWRlckxheW91dCB8fCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwIC0gdC5vdXRlcldpZHRoKCkgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIHg6IGUuaF9vZmZzZXQgKyAicHgiCiAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIHQub3V0ZXJXaWR0aCgpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICB4OiBlLmhfb2Zmc2V0ICsgInB4IgogICAgICAgICAgICAgICAgfSksIHQuaGFzQ2xhc3MoInRwLXRodW1icyIpIHx8IHQuaGFzQ2xhc3MoInRwLXRhYnMiKSkgewogICAgICAgICAgICAgICAgdmFyIG8gPSB0LmRhdGEoIndyX3BhZGRpbmciKSwKICAgICAgICAgICAgICAgICAgICBzID0gdC5kYXRhKCJtYXh3IiksCiAgICAgICAgICAgICAgICAgICAgZCA9IHQuZGF0YSgibWF4aCIpLAogICAgICAgICAgICAgICAgICAgIGwgPSB0Lmhhc0NsYXNzKCJ0cC10aHVtYnMiKSA/IHQuZmluZCgiLnRwLXRodW1iLW1hc2siKSA6IHQuZmluZCgiLnRwLXRhYi1tYXNrIiksCiAgICAgICAgICAgICAgICAgICAgaCA9IHBhcnNlSW50KGUucGFkZGluZ190b3AgfHwgMCwgMCksCiAgICAgICAgICAgICAgICAgICAgcCA9IHBhcnNlSW50KGUucGFkZGluZ19ib3R0b20gfHwgMCwgMCk7CiAgICAgICAgICAgICAgICBuIDwgcyAmJiAib3V0ZXItbGVmdCIgIT09IGUucG9zaXRpb24gJiYgIm91dGVyLXJpZ2h0IiAhPT0gZS5wb3NpdGlvbiA/IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiLAogICAgICAgICAgICAgICAgICAgIHg6IDAsCiAgICAgICAgICAgICAgICAgICAgbWF4V2lkdGg6IG4gLSAyICogbyArICJweCIKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobCwgewogICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiBuIC0gMiAqIG8gKyAicHgiCiAgICAgICAgICAgICAgICB9KSkgOiAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBtYXhXaWR0aDogcyArICJweCIKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobCwgewogICAgICAgICAgICAgICAgICAgIG1heFdpZHRoOiBzICsgInB4IgogICAgICAgICAgICAgICAgfSkpLCByIDwgZCArIDIgKiBvICYmICJvdXRlci1ib3R0b20iICE9PSBlLnBvc2l0aW9uICYmICJvdXRlci10b3AiICE9PSBlLnBvc2l0aW9uID8gKHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgdG9wOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogaCArIHAgKyAociAtIDIgKiBvKSArICJweCIKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobCwgewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogaCArIHAgKyAociAtIDIgKiBvKSArICJweCIKICAgICAgICAgICAgICAgIH0pKSA6IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogZCArICJweCIKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobCwgewogICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogZCArICJweCIKICAgICAgICAgICAgICAgIH0pKSwgIm91dGVyLWxlZnQiICE9PSBlLnBvc2l0aW9uICYmICJvdXRlci1yaWdodCIgIT09IGUucG9zaXRpb24gJiYgKHAgPSBoID0gMCksICEwID09PSBlLnNwYW4gJiYgInZlcnRpY2FsIiA9PT0gZS5kaXJlY3Rpb24gPyAocHVuY2hncy5Ud2VlbkxpdGUuc2V0KHQsIHsKICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6IGggKyBwICsgKHIgLSAyICogbykgKyAicHgiLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogaCArIHAgKyAociAtIDIgKiBvKSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAwIC0gaCwKICAgICAgICAgICAgICAgICAgICB5OiAwCiAgICAgICAgICAgICAgICB9KSwgdShsLCBlLCBpKSkgOiAhMCA9PT0gZS5zcGFuICYmICJob3Jpem9udGFsIiA9PT0gZS5kaXJlY3Rpb24gJiYgKHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh0LCB7CiAgICAgICAgICAgICAgICAgICAgbWF4V2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICB3aWR0aDogbiAtIDIgKiBvICsgInB4IiwKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgIHg6IDAKICAgICAgICAgICAgICAgIH0pLCB4KGwsIGUsIGkpKQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB5ID0gZnVuY3Rpb24odCwgZSwgaSwgYSkgewogICAgICAgICAgICAwID09PSB0LmZpbmQoIi50cC1idWxsZXRzIikubGVuZ3RoICYmIChlLnN0eWxlID0gdm9pZCAwID09PSBlLnN0eWxlID8gIiIgOiBlLnN0eWxlLCB0LmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtYnVsbGV0cyAnICsgZS5zdHlsZSArICIgIiArIGUuZGlyZWN0aW9uICsgJyI+PC9kaXY+JykpOwogICAgICAgICAgICB2YXIgbiA9IHQuZmluZCgiLnRwLWJ1bGxldHMiKSwKICAgICAgICAgICAgICAgIHIgPSBpLmRhdGEoImluZGV4IiksCiAgICAgICAgICAgICAgICBvID0gZS50bXA7CiAgICAgICAgICAgIGpRdWVyeS5lYWNoKGEudGh1bWJzW2kuaW5kZXgoKV0ucGFyYW1zLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBvID0gby5yZXBsYWNlKGUuZnJvbSwgZS50bykKICAgICAgICAgICAgfSksIG4uYXBwZW5kKCc8ZGl2IGNsYXNzPSJqdXN0YWRkZWRidWxsZXQgdHAtYnVsbGV0Ij4nICsgbyArICI8L2Rpdj4iKTsKICAgICAgICAgICAgdmFyIHMgPSB0LmZpbmQoIi5qdXN0YWRkZWRidWxsZXQiKSwKICAgICAgICAgICAgICAgIGQgPSB0LmZpbmQoIi50cC1idWxsZXQiKS5sZW5ndGgsCiAgICAgICAgICAgICAgICBsID0gcy5vdXRlcldpZHRoKCkgKyBwYXJzZUludCh2b2lkIDAgPT09IGUuc3BhY2UgPyAwIDogZS5zcGFjZSwgMCksCiAgICAgICAgICAgICAgICBoID0gcy5vdXRlckhlaWdodCgpICsgcGFyc2VJbnQodm9pZCAwID09PSBlLnNwYWNlID8gMCA6IGUuc3BhY2UsIDApOwogICAgICAgICAgICAidmVydGljYWwiID09PSBlLmRpcmVjdGlvbiA/IChzLmNzcyh7CiAgICAgICAgICAgICAgICB0b3A6IChkIC0gMSkgKiBoICsgInB4IiwKICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiCiAgICAgICAgICAgIH0pLCBuLmNzcyh7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IChkIC0gMSkgKiBoICsgcy5vdXRlckhlaWdodCgpLAogICAgICAgICAgICAgICAgd2lkdGg6IHMub3V0ZXJXaWR0aCgpCiAgICAgICAgICAgIH0pKSA6IChzLmNzcyh7CiAgICAgICAgICAgICAgICBsZWZ0OiAoZCAtIDEpICogbCArICJweCIsCiAgICAgICAgICAgICAgICB0b3A6ICIwcHgiCiAgICAgICAgICAgIH0pLCBuLmNzcyh7CiAgICAgICAgICAgICAgICB3aWR0aDogKGQgLSAxKSAqIGwgKyBzLm91dGVyV2lkdGgoKSwKICAgICAgICAgICAgICAgIGhlaWdodDogcy5vdXRlckhlaWdodCgpCiAgICAgICAgICAgIH0pKSwgcy5maW5kKCIudHAtYnVsbGV0LWltYWdlIikuY3NzKHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogInVybCgiICsgYS50aHVtYnNbaS5pbmRleCgpXS5zcmMgKyAiKSIKICAgICAgICAgICAgfSksIHMuZGF0YSgibGlyZWYiLCByKSwgcy5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIGEuc2NfaW5kaWNhdG9yID0gImJ1bGxldCIsIHQucmV2Y2FsbHNsaWRld2l0aGlkKHIpLCB0LmZpbmQoIi50cC1idWxsZXQiKS5yZW1vdmVDbGFzcygic2VsZWN0ZWQiKSwgalF1ZXJ5KHRoaXMpLmFkZENsYXNzKCJzZWxlY3RlZCIpCiAgICAgICAgICAgIH0pLCBzLnJlbW92ZUNsYXNzKCJqdXN0YWRkZWRidWxsZXQiKSwgZS5wYWRkaW5nX3RvcCA9IHBhcnNlSW50KGEuY2Fyb3VzZWwucGFkZGluZ190b3AgfHwgMCwgMCksIGUucGFkZGluZ19ib3R0b20gPSBwYXJzZUludChhLmNhcm91c2VsLnBhZGRpbmdfYm90dG9tIHx8IDAsIDApLCBlLm9wdCA9IGEsICJvdXRlci1sZWZ0IiAhPSBlLnBvc2l0aW9uICYmICJvdXRlci1yaWdodCIgIT0gZS5wb3NpdGlvbiB8fCAoYS5vdXRlcm5hdiA9ICEwKSwgbi5hZGRDbGFzcygibmF2LXBvcy1ob3ItIiArIGUuaF9hbGlnbiksIG4uYWRkQ2xhc3MoIm5hdi1wb3MtdmVyLSIgKyBlLnZfYWxpZ24pLCBuLmFkZENsYXNzKCJuYXYtZGlyLSIgKyBlLmRpcmVjdGlvbiksIFQobiwgZSwgYSkKICAgICAgICB9LAogICAgICAgIFMgPSBmdW5jdGlvbihlLCB0LCBpLCBhLCBuKSB7CiAgICAgICAgICAgIHZhciByID0gInRwLXRodW1iIiA9PT0gYSA/ICIudHAtdGh1bWJzIiA6ICIudHAtdGFicyIsCiAgICAgICAgICAgICAgICBvID0gInRwLXRodW1iIiA9PT0gYSA/ICIudHAtdGh1bWItbWFzayIgOiAiLnRwLXRhYi1tYXNrIiwKICAgICAgICAgICAgICAgIHMgPSAidHAtdGh1bWIiID09PSBhID8gIi50cC10aHVtYnMtaW5uZXItd3JhcHBlciIgOiAiLnRwLXRhYnMtaW5uZXItd3JhcHBlciIsCiAgICAgICAgICAgICAgICBkID0gInRwLXRodW1iIiA9PT0gYSA/ICIudHAtdGh1bWIiIDogIi50cC10YWIiLAogICAgICAgICAgICAgICAgbCA9ICJ0cC10aHVtYiIgPT09IGEgPyAiLnRwLXRodW1iLWltYWdlIiA6ICIudHAtdGFiLWltYWdlIjsKICAgICAgICAgICAgaWYgKHQudmlzaWJsZUFtb3VudCA9IHQudmlzaWJsZUFtb3VudCA+IG4uc2xpZGVhbW91bnQgPyBuLnNsaWRlYW1vdW50IDogdC52aXNpYmxlQW1vdW50LCB0LnNsaWRlckxheW91dCA9IG4uc2xpZGVyTGF5b3V0LCAwID09PSBlLnBhcmVudCgpLmZpbmQocikubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICB0LnN0eWxlID0gdm9pZCAwID09PSB0LnN0eWxlID8gIiIgOiB0LnN0eWxlOwogICAgICAgICAgICAgICAgdmFyIGggPSAnPGRpdiBjbGFzcz0iJyArIGEgKyAicyAiICsgKCEwID09PSB0LnNwYW4gPyAidHAtc3Bhbi13cmFwcGVyIiA6ICIiKSArICIgIiArIHQucG9zaXRpb24gKyAiICIgKyB0LnN0eWxlICsgJyI+PGRpdiBjbGFzcz0iJyArIGEgKyAnLW1hc2siPjxkaXYgY2xhc3M9IicgKyBhICsgJ3MtaW5uZXItd3JhcHBlciIgc3R5bGU9InBvc2l0aW9uOnJlbGF0aXZlOyI+PC9kaXY+PC9kaXY+PC9kaXY+JzsKICAgICAgICAgICAgICAgICJvdXRlci10b3AiID09PSB0LnBvc2l0aW9uID8gZS5wYXJlbnQoKS5wcmVwZW5kKGgpIDogIm91dGVyLWJvdHRvbSIgPT09IHQucG9zaXRpb24gPyBlLmFmdGVyKGgpIDogZS5hcHBlbmQoaCksIHQucGFkZGluZ190b3AgPSBwYXJzZUludChuLmNhcm91c2VsLnBhZGRpbmdfdG9wIHx8IDAsIDApLCB0LnBhZGRpbmdfYm90dG9tID0gcGFyc2VJbnQobi5jYXJvdXNlbC5wYWRkaW5nX2JvdHRvbSB8fCAwLCAwKSwgIm91dGVyLWxlZnQiICE9IHQucG9zaXRpb24gJiYgIm91dGVyLXJpZ2h0IiAhPSB0LnBvc2l0aW9uIHx8IChuLm91dGVybmF2ID0gITApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIHAgPSBpLmRhdGEoImluZGV4IiksCiAgICAgICAgICAgICAgICB1ID0gZS5wYXJlbnQoKS5maW5kKHIpLAogICAgICAgICAgICAgICAgYyA9IHUuZmluZChvKSwKICAgICAgICAgICAgICAgIGcgPSBjLmZpbmQocyksCiAgICAgICAgICAgICAgICB2ID0gImhvcml6b250YWwiID09PSB0LmRpcmVjdGlvbiA/IHQud2lkdGggKiB0LnZpc2libGVBbW91bnQgKyB0LnNwYWNlICogKHQudmlzaWJsZUFtb3VudCAtIDEpIDogdC53aWR0aCwKICAgICAgICAgICAgICAgIGYgPSAiaG9yaXpvbnRhbCIgPT09IHQuZGlyZWN0aW9uID8gdC5oZWlnaHQgOiB0LmhlaWdodCAqIHQudmlzaWJsZUFtb3VudCArIHQuc3BhY2UgKiAodC52aXNpYmxlQW1vdW50IC0gMSksCiAgICAgICAgICAgICAgICBtID0gdC50bXA7CiAgICAgICAgICAgIGpRdWVyeS5lYWNoKG4udGh1bWJzW2kuaW5kZXgoKV0ucGFyYW1zLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICBtID0gbS5yZXBsYWNlKGUuZnJvbSwgZS50bykKICAgICAgICAgICAgfSksIGcuYXBwZW5kKCc8ZGl2IGRhdGEtbGlpbmRleD0iJyArIGkuaW5kZXgoKSArICciIGRhdGEtbGlyZWY9IicgKyBwICsgJyIgY2xhc3M9Imp1c3RhZGRlZHRodW1iICcgKyBhICsgJyIgc3R5bGU9IndpZHRoOicgKyB0LndpZHRoICsgInB4O2hlaWdodDoiICsgdC5oZWlnaHQgKyAncHg7Ij4nICsgbSArICI8L2Rpdj4iKTsKICAgICAgICAgICAgdmFyIGIgPSB1LmZpbmQoIi5qdXN0YWRkZWR0aHVtYiIpLAogICAgICAgICAgICAgICAgdyA9IHUuZmluZChkKS5sZW5ndGgsCiAgICAgICAgICAgICAgICBfID0gYi5vdXRlcldpZHRoKCkgKyBwYXJzZUludCh2b2lkIDAgPT09IHQuc3BhY2UgPyAwIDogdC5zcGFjZSwgMCksCiAgICAgICAgICAgICAgICB4ID0gYi5vdXRlckhlaWdodCgpICsgcGFyc2VJbnQodm9pZCAwID09PSB0LnNwYWNlID8gMCA6IHQuc3BhY2UsIDApOwogICAgICAgICAgICBiLmZpbmQobCkuY3NzKHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogInVybCgiICsgbi50aHVtYnNbaS5pbmRleCgpXS5zcmMgKyAiKSIKICAgICAgICAgICAgfSksICJ2ZXJ0aWNhbCIgPT09IHQuZGlyZWN0aW9uID8gKGIuY3NzKHsKICAgICAgICAgICAgICAgIHRvcDogKHcgLSAxKSAqIHggKyAicHgiLAogICAgICAgICAgICAgICAgbGVmdDogIjBweCIKICAgICAgICAgICAgfSksIGcuY3NzKHsKICAgICAgICAgICAgICAgIGhlaWdodDogKHcgLSAxKSAqIHggKyBiLm91dGVySGVpZ2h0KCksCiAgICAgICAgICAgICAgICB3aWR0aDogYi5vdXRlcldpZHRoKCkKICAgICAgICAgICAgfSkpIDogKGIuY3NzKHsKICAgICAgICAgICAgICAgIGxlZnQ6ICh3IC0gMSkgKiBfICsgInB4IiwKICAgICAgICAgICAgICAgIHRvcDogIjBweCIKICAgICAgICAgICAgfSksIGcuY3NzKHsKICAgICAgICAgICAgICAgIHdpZHRoOiAodyAtIDEpICogXyArIGIub3V0ZXJXaWR0aCgpLAogICAgICAgICAgICAgICAgaGVpZ2h0OiBiLm91dGVySGVpZ2h0KCkKICAgICAgICAgICAgfSkpLCB1LmRhdGEoIm1heHciLCB2KSwgdS5kYXRhKCJtYXhoIiwgZiksIHUuZGF0YSgid3JfcGFkZGluZyIsIHQud3JhcHBlcl9wYWRkaW5nKTsKICAgICAgICAgICAgdmFyIHkgPSAib3V0ZXItdG9wIiA9PT0gdC5wb3NpdGlvbiB8fCAib3V0ZXItYm90dG9tIiA9PT0gdC5wb3NpdGlvbiA/ICJyZWxhdGl2ZSIgOiAiYWJzb2x1dGUiOwogICAgICAgICAgICAib3V0ZXItdG9wIiAhPT0gdC5wb3NpdGlvbiAmJiAib3V0ZXItYm90dG9tIiAhPT0gdC5wb3NpdGlvbiB8fCB0LmhfYWxpZ24sIGMuY3NzKHsKICAgICAgICAgICAgICAgIG1heFdpZHRoOiB2ICsgInB4IiwKICAgICAgICAgICAgICAgIG1heEhlaWdodDogZiArICJweCIsCiAgICAgICAgICAgICAgICBvdmVyZmxvdzogImhpZGRlbiIsCiAgICAgICAgICAgICAgICBwb3NpdGlvbjogInJlbGF0aXZlIgogICAgICAgICAgICB9KSwgdS5jc3MoewogICAgICAgICAgICAgICAgbWF4V2lkdGg6IHYgKyAicHgiLAogICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiBmICsgInB4IiwKICAgICAgICAgICAgICAgIG92ZXJmbG93OiAidmlzaWJsZSIsCiAgICAgICAgICAgICAgICBwb3NpdGlvbjogeSwKICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHQud3JhcHBlcl9jb2xvciwKICAgICAgICAgICAgICAgIHBhZGRpbmc6IHQud3JhcHBlcl9wYWRkaW5nICsgInB4IiwKICAgICAgICAgICAgICAgIGJveFNpemluZzogImNvbnRldC1ib3giCiAgICAgICAgICAgIH0pLCBiLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbi5zY19pbmRpY2F0b3IgPSAiYnVsbGV0IjsKICAgICAgICAgICAgICAgIHZhciB0ID0gZS5wYXJlbnQoKS5maW5kKHMpLmRhdGEoImRpc3RhbmNlIik7CiAgICAgICAgICAgICAgICB0ID0gdm9pZCAwID09PSB0ID8gMCA6IHQsIE1hdGguYWJzKHQpIDwgMTAgJiYgKGUucmV2Y2FsbHNsaWRld2l0aGlkKHApLCBlLnBhcmVudCgpLmZpbmQocikucmVtb3ZlQ2xhc3MoInNlbGVjdGVkIiksIGpRdWVyeSh0aGlzKS5hZGRDbGFzcygic2VsZWN0ZWQiKSkKICAgICAgICAgICAgfSksIGIucmVtb3ZlQ2xhc3MoImp1c3RhZGRlZHRodW1iIiksIHQub3B0ID0gbiwgdS5hZGRDbGFzcygibmF2LXBvcy1ob3ItIiArIHQuaF9hbGlnbiksIHUuYWRkQ2xhc3MoIm5hdi1wb3MtdmVyLSIgKyB0LnZfYWxpZ24pLCB1LmFkZENsYXNzKCJuYXYtZGlyLSIgKyB0LmRpcmVjdGlvbiksIFQodSwgdCwgbikKICAgICAgICB9LAogICAgICAgIGwgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgIHZhciBlID0gdC5jLnBhcmVudCgpLmZpbmQoIi5vdXRlci10b3AiKSwKICAgICAgICAgICAgICAgIGkgPSB0LmMucGFyZW50KCkuZmluZCgiLm91dGVyLWJvdHRvbSIpOwogICAgICAgICAgICB0LnRvcF9vdXRlciA9IGUuaGFzQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpID8gMCA6IGUub3V0ZXJIZWlnaHQoKSB8fCAwLCB0LmJvdHRvbV9vdXRlciA9IGkuaGFzQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpID8gMCA6IGkub3V0ZXJIZWlnaHQoKSB8fCAwCiAgICAgICAgfSwKICAgICAgICBvID0gZnVuY3Rpb24odCwgZSwgaSwgYSkgewogICAgICAgICAgICBpIDwgZSB8fCBhIDwgaSA/IHQuYWRkQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpIDogdC5yZW1vdmVDbGFzcygidHAtZm9yY2Vub3R2aXNpYmxlIikKICAgICAgICB9Cn0oalF1ZXJ5KTsKISBmdW5jdGlvbihlKSB7CiAgICAidXNlIHN0cmljdCI7CgogICAgZnVuY3Rpb24gbShlLCByKSB7CiAgICAgICAgZS5sYXN0c2Nyb2xsdG9wID0gcgogICAgfQogICAgdmFyIFQgPSBqUXVlcnkuZm4ucmV2b2x1dGlvbiwKICAgICAgICBfID0gVC5pc19tb2JpbGUoKSwKICAgICAgICBhID0gewogICAgICAgICAgICBhbGlhczogIlBhcmFsbGF4IE1pbiBKUyIsCiAgICAgICAgICAgIG5hbWU6ICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMucGFyYWxsYXgubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjQuNSIsCiAgICAgICAgICAgIHZlcnNpb246ICIyLjIuMyIKICAgICAgICB9OwogICAgalF1ZXJ5LmV4dGVuZCghMCwgVCwgewogICAgICAgIGNoZWNrRm9yUGFyYWxsYXg6IGZ1bmN0aW9uKGcsIHkpIHsKICAgICAgICAgICAgZnVuY3Rpb24gZShlKSB7CiAgICAgICAgICAgICAgICBpZiAoIjNEIiA9PSBiLnR5cGUgfHwgIjNkIiA9PSBiLnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICBlLmZpbmQoIi5zbG90aG9sZGVyIikud3JhcEFsbCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlciIgc3R5bGU9IndpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDtvdmVyZmxvdzpoaWRkZW4iPjwvZGl2PicpLCBlLmZpbmQoIi50cC1wYXJhbGxheC13cmFwIikud3JhcEFsbCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlci1sYXllciIgc3R5bGU9IndpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDt6LWluZGV4OjU7b3ZlcmZsb3c6JyArIGIuZGRkX2xheWVyX292ZXJmbG93ICsgJzsiPjwvZGl2PicpLCBlLmZpbmQoIi5ycy1wYXJhbGxheGxldmVsLXRvYmdncm91cCIpLmNsb3Nlc3QoIi50cC1wYXJhbGxheC13cmFwIikud3JhcEFsbCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlci1sYXllcnRvYmdncm91cCIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDowcHg7ei1pbmRleDo1MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlIj48L2Rpdj4nKTsKICAgICAgICAgICAgICAgICAgICB2YXIgciA9IGUuZmluZCgiLmRkZHdyYXBwZXIiKSwKICAgICAgICAgICAgICAgICAgICAgICAgdCA9IGUuZmluZCgiLmRkZHdyYXBwZXItbGF5ZXIiKTsKICAgICAgICAgICAgICAgICAgICBlLmZpbmQoIi5kZGR3cmFwcGVyLWxheWVydG9iZ2dyb3VwIikuYXBwZW5kVG8ociksICJjYXJvdXNlbCIgPT0geS5zbGlkZXJUeXBlICYmICgib24iID09IGIuZGRkX3NoYWRvdyAmJiByLmFkZENsYXNzKCJkZGR3cmFwcGVyc2hhZG93IiksIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChyLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogeS5jYXJvdXNlbC5ib3JkZXJfcmFkaXVzCiAgICAgICAgICAgICAgICAgICAgfSkpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZSwgewogICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogInZpc2libGUiLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogInByZXNlcnZlLTNkIiwKICAgICAgICAgICAgICAgICAgICAgICAgcGVyc3BlY3RpdmU6IDE2MDAKICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHIsIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICI1MCUgNTAlIgogICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQodCwgewogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogIjUwJSA1MCUiLAogICAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDUKICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHkudWwsIHsKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtU3R5bGU6ICJwcmVzZXJ2ZS0zZCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVBlcnNwZWN0aXZlOiAxNjAwCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoInN0b3AiID09PSBULmNvbXBhcmVfdmVyc2lvbihhKS5jaGVjaykgcmV0dXJuICExOwogICAgICAgICAgICB2YXIgYiA9IHkucGFyYWxsYXg7CiAgICAgICAgICAgIGlmICghYi5kb25lKSB7CiAgICAgICAgICAgICAgICBpZiAoYi5kb25lID0gITAsIF8gJiYgIm9uIiA9PSBiLmRpc2FibGVfb25tb2JpbGUpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgICIzRCIgIT0gYi50eXBlICYmICIzZCIgIT0gYi50eXBlIHx8IChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoeS5jLCB7CiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGIuZGRkX292ZXJmbG93CiAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHkudWwsIHsKICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogYi5kZGRfb3ZlcmZsb3cKICAgICAgICAgICAgICAgIH0pLCAiY2Fyb3VzZWwiICE9IHkuc2xpZGVyVHlwZSAmJiAib24iID09IGIuZGRkX3NoYWRvdyAmJiAoeS5jLnByZXBlbmQoJzxkaXYgY2xhc3M9ImRkZHdyYXBwZXJzaGFkb3ciPjwvZGl2PicpLCBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoeS5jLmZpbmQoIi5kZGR3cmFwcGVyc2hhZG93IiksIHsKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDE2MDAsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAiNTAlIDUwJSIsCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDAKICAgICAgICAgICAgICAgIH0pKSksIHkubGkuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBlKGpRdWVyeSh0aGlzKSkKICAgICAgICAgICAgICAgIH0pLCAoIjNEIiA9PSBiLnR5cGUgfHwgIjNkIiA9PSBiLnR5cGUpICYmIDAgPCB5LmMuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKS5sZW5ndGggJiYgKHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh5LmMuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKSwgewogICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgIHdpZHRoOiAiMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAiMTAwJSIKICAgICAgICAgICAgICAgIH0pLCBlKHkuYy5maW5kKCIudHAtc3RhdGljLWxheWVycyIpKSksIGIucGNvbnRhaW5lcnMgPSBuZXcgQXJyYXksIGIucGNvbnRhaW5lcl9kZXB0aHMgPSBuZXcgQXJyYXksIGIuYmdjb250YWluZXJzID0gbmV3IEFycmF5LCBiLmJnY29udGFpbmVyX2RlcHRocyA9IG5ldyBBcnJheSwgeS5jLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGkgLnNsb3Rob2xkZXIsIC50cC1yZXZzbGlkZXItc2xpZGVzbGkgLnJzLWJhY2tncm91bmQtdmlkZW8tbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgICAgICByID0gZS5kYXRhKCJiZ3BhcmFsbGF4IikgfHwgeS5wYXJhbGxheC5iZ3BhcmFsbGF4OwogICAgICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gKHIgPSAib24iID09IHIgPyAxIDogcikgJiYgIm9mZiIgIT09IHIgJiYgKGIuYmdjb250YWluZXJzLnB1c2goZSksIGIuYmdjb250YWluZXJfZGVwdGhzLnB1c2goeS5wYXJhbGxheC5sZXZlbHNbcGFyc2VJbnQociwgMCkgLSAxXSAvIDEwMCkpCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGZvciAodmFyIHIgPSAxOyByIDw9IGIubGV2ZWxzLmxlbmd0aDsgcisrKSB5LmMuZmluZCgiLnJzLXBhcmFsbGF4bGV2ZWwtIiArIHIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcykuY2xvc2VzdCgiLnRwLXBhcmFsbGF4LXdyYXAiKTsKICAgICAgICAgICAgICAgICAgICBlLmRhdGEoInBhcmFsbGF4bGV2ZWwiLCBiLmxldmVsc1tyIC0gMV0pLCBlLmFkZENsYXNzKCJ0cC1wYXJhbGxheC1jb250YWluZXIiKSwgYi5wY29udGFpbmVycy5wdXNoKGUpLCBiLnBjb250YWluZXJfZGVwdGhzLnB1c2goYi5sZXZlbHNbciAtIDFdKQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAibW91c2UiICE9IGIudHlwZSAmJiAic2Nyb2xsK21vdXNlIiAhPSBiLnR5cGUgJiYgIm1vdXNlK3Njcm9sbCIgIT0gYi50eXBlICYmICIzRCIgIT0gYi50eXBlICYmICIzZCIgIT0gYi50eXBlIHx8IChnLm1vdXNlZW50ZXIoZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgIHZhciByID0gZy5maW5kKCIuYWN0aXZlLXJldnNsaWRlIiksCiAgICAgICAgICAgICAgICAgICAgICAgIHQgPSBnLm9mZnNldCgpLnRvcCwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IGcub2Zmc2V0KCkubGVmdCwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGUucGFnZVggLSBhLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gZS5wYWdlWSAtIHQ7CiAgICAgICAgICAgICAgICAgICAgci5kYXRhKCJlbnRlcngiLCBpKSwgci5kYXRhKCJlbnRlcnkiLCBsKQogICAgICAgICAgICAgICAgfSksIGcub24oIm1vdXNlbW92ZS5ob3ZlcmRpciwgbW91c2VsZWF2ZS5ob3ZlcmRpciwgdHJpZ2dlcjNkcGF0aCIsIGZ1bmN0aW9uKGQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgciA9IGUgJiYgZS5saSA/IGUubGkgOiBnLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoImVudGVycG9pbnQiID09IGIub3JpZ28pIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBnLm9mZnNldCgpLnRvcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBnLm9mZnNldCgpLmxlZnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgPT0gci5kYXRhKCJlbnRlcngiKSAmJiByLmRhdGEoImVudGVyeCIsIGQucGFnZVggLSBhKSwgbnVsbCA9PSByLmRhdGEoImVudGVyeSIpICYmIHIuZGF0YSgiZW50ZXJ5IiwgZC5wYWdlWSAtIHQpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHIuZGF0YSgiZW50ZXJ4IikgfHwgZC5wYWdlWCAtIGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsID0gci5kYXRhKCJlbnRlcnkiKSB8fCBkLnBhZ2VZIC0gdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAgPSBpIC0gKGQucGFnZVggLSBhKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBsIC0gKGQucGFnZVkgLSB0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBiLnNwZWVkIC8gMWUzIHx8IC40CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHQgPSBnLm9mZnNldCgpLnRvcCwgYSA9IGcub2Zmc2V0KCkubGVmdCwgcCA9IHkuY29udyAvIDIgLSAoZC5wYWdlWCAtIGEpLCBjID0geS5jb25oIC8gMiAtIChkLnBhZ2VZIC0gdCksIHUgPSBiLnNwZWVkIC8gMWUzIHx8IDM7CiAgICAgICAgICAgICAgICAgICAgIm1vdXNlbGVhdmUiID09IGQudHlwZSAmJiAocCA9IGIuZGRkX2xhc3RoIHx8IDAsIGMgPSBiLmRkZF9sYXN0diB8fCAwLCB1ID0gMS41KTsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBvID0gMDsgbyA8IGIucGNvbnRhaW5lcnMubGVuZ3RoOyBvKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSBiLnBjb250YWluZXJzW29dLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IGIucGNvbnRhaW5lcl9kZXB0aHNbb10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoID0gIjNEIiA9PSBiLnR5cGUgfHwgIjNkIiA9PSBiLnR5cGUgPyBuIC8gMjAwIDogbiAvIDEwMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGYgPSBwICogaCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHcgPSBjICogaDsKICAgICAgICAgICAgICAgICAgICAgICAgInNjcm9sbCttb3VzZSIgPT0gYi50eXBlIHx8ICJtb3VzZStzY3JvbGwiID09IGIudHlwZSA/IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHMsIHUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg6IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYWxsIgogICAgICAgICAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHMsIHUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg6IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB5OiB3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCIzRCIgPT0gYi50eXBlIHx8ICIzZCIgPT0gYi50eXBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2ID0gIi50cC1yZXZzbGlkZXItc2xpZGVzbGkgLmRkZHdyYXBwZXIsIC5kZGR3cmFwcGVyc2hhZG93LCAudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLWxheWVyLCAudHAtc3RhdGljLWxheWVycyAuZGRkd3JhcHBlci1sYXllciI7CiAgICAgICAgICAgICAgICAgICAgICAgICJjYXJvdXNlbCIgPT09IHkuc2xpZGVyVHlwZSAmJiAodiA9ICIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLCAudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLWxheWVyLCAudHAtc3RhdGljLWxheWVycyAuZGRkd3JhcHBlci1sYXllciIpLCB5LmMuZmluZCh2KS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IGIubGV2ZWxzW2IubGV2ZWxzLmxlbmd0aCAtIDFdIC8gMjAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQgPSBwICogciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gYyAqIHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IDAgPT0geS5jb253ID8gMCA6IE1hdGgucm91bmQocCAvIHkuY29udyAqIHIgKiAxMDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IDAgPT0geS5jb25oID8gMCA6IE1hdGgucm91bmQoYyAvIHkuY29uaCAqIHIgKiAxMDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyA9IGUuY2xvc2VzdCgibGkiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLmhhc0NsYXNzKCJkZGR3cmFwcGVyLWxheWVyIikgJiYgKHMgPSBiLmRkZF96X2NvcnJlY3Rpb24gfHwgNjUsIG4gPSAhMCksIGUuaGFzQ2xhc3MoImRkZHdyYXBwZXItbGF5ZXIiKSAmJiAoYSA9IHQgPSAwKSwgby5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIikgfHwgImNhcm91c2VsIiAhPSB5LnNsaWRlclR5cGUgPyAib24iICE9IGIuZGRkX2JnZnJlZXplIHx8IG4gPyBwdW5jaGdzLlR3ZWVuTGl0ZS50byhlLCB1LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiBsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogLWksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeDogdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6OiBzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhbGwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGUsIC41LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUudG8oZSwgLjUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAibW91c2VsZWF2ZSIgPT0gZC50eXBlICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGpRdWVyeSh0aGlzKSwgMy44LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pLCBfICYmICh3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbiA9IGZ1bmN0aW9uKGQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IE1hdGgucm91bmQoZC5iZXRhIHx8IDApIC0gNzAsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBNYXRoLnJvdW5kKGQuZ2FtbWEgfHwgMCksCiAgICAgICAgICAgICAgICAgICAgICAgIHQgPSBnLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoalF1ZXJ5KHdpbmRvdykud2lkdGgoKSA+IGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBhID0gcjsKICAgICAgICAgICAgICAgICAgICAgICAgciA9IGUsIGUgPSBhCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHZhciBpID0gZy53aWR0aCgpLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gZy5oZWlnaHQoKSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IDM2MCAvIGkgKiByLAogICAgICAgICAgICAgICAgICAgICAgICBjID0gMTgwIC8gbCAqIGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHUgPSBiLnNwZWVkIC8gMWUzIHx8IDMsCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBbXTsKICAgICAgICAgICAgICAgICAgICBpZiAodC5maW5kKCIudHAtcGFyYWxsYXgtY29udGFpbmVyIikuZWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvLnB1c2goalF1ZXJ5KHRoaXMpKQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgZy5maW5kKCIudHAtc3RhdGljLWxheWVycyAudHAtcGFyYWxsYXgtY29udGFpbmVyIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8ucHVzaChqUXVlcnkodGhpcykpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBqUXVlcnkuZWFjaChvLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBwYXJzZUludChlLmRhdGEoInBhcmFsbGF4bGV2ZWwiKSwgMCkgLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdCA9IHAgKiByICogMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gYyAqIHIgKiA0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUudG8oZSwgdSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4OiB0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhbGwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgIjNEIiA9PSBiLnR5cGUgfHwgIjNkIiA9PSBiLnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHMgPSAiLnRwLXJldnNsaWRlci1zbGlkZXNsaSAuZGRkd3JhcHBlciwgLmRkZHdyYXBwZXJzaGFkb3csIC50cC1yZXZzbGlkZXItc2xpZGVzbGkgLmRkZHdyYXBwZXItbGF5ZXIsIC50cC1zdGF0aWMtbGF5ZXJzIC5kZGR3cmFwcGVyLWxheWVyIjsKICAgICAgICAgICAgICAgICAgICAgICAgImNhcm91c2VsIiA9PT0geS5zbGlkZXJUeXBlICYmIChzID0gIi50cC1yZXZzbGlkZXItc2xpZGVzbGkgLmRkZHdyYXBwZXIsIC50cC1yZXZzbGlkZXItc2xpZGVzbGkgLmRkZHdyYXBwZXItbGF5ZXIsIC50cC1zdGF0aWMtbGF5ZXJzIC5kZGR3cmFwcGVyLWxheWVyIiksIHkuYy5maW5kKHMpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByID0gYi5sZXZlbHNbYi5sZXZlbHMubGVuZ3RoIC0gMV0gLyAyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdCA9IHAgKiByLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBjICogciAqIDMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IDAgPT0geS5jb253ID8gMCA6IE1hdGgucm91bmQocCAvIHkuY29udyAqIHIgKiA1MDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IDAgPT0geS5jb25oID8gMCA6IE1hdGgucm91bmQoYyAvIHkuY29uaCAqIHIgKiA3MDApIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyA9IGUuY2xvc2VzdCgibGkiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gITE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLmhhc0NsYXNzKCJkZGR3cmFwcGVyLWxheWVyIikgJiYgKHMgPSBiLmRkZF96X2NvcnJlY3Rpb24gfHwgNjUsIG4gPSAhMCksIGUuaGFzQ2xhc3MoImRkZHdyYXBwZXItbGF5ZXIiKSAmJiAoYSA9IHQgPSAwKSwgby5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIikgfHwgImNhcm91c2VsIiAhPSB5LnNsaWRlclR5cGUgPyAib24iICE9IGIuZGRkX2JnZnJlZXplIHx8IG4gPyBwdW5jaGdzLlR3ZWVuTGl0ZS50byhlLCB1LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiBsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogLWksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeDogdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6OiBzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhbGwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGUsIC41LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUudG8oZSwgLjUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHo6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAibW91c2VsZWF2ZSIgPT0gZC50eXBlICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGpRdWVyeSh0aGlzKSwgMy44LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgICAgIHZhciB0ID0geS5zY3JvbGxlZmZlY3Q7CiAgICAgICAgICAgICAgICBpZiAodC5iZ3MgPSBuZXcgQXJyYXksIHQub24pIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIm9uIiA9PT0gdC5vbl9zbGlkZWJnKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHIgPSAwOyByIDwgeS5hbGxzbG90aG9sZGVyLmxlbmd0aDsgcisrKSB0LmJncy5wdXNoKHkuYWxsc2xvdGhvbGRlcltyXSk7CiAgICAgICAgICAgICAgICAgICAgdC5tdWx0aXBsaWNhdG9yX2xheWVycyA9IHBhcnNlRmxvYXQodC5tdWx0aXBsaWNhdG9yX2xheWVycyksIHQubXVsdGlwbGljYXRvciA9IHBhcnNlRmxvYXQodC5tdWx0aXBsaWNhdG9yKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdm9pZCAwICE9PSB0LmxheWVycyAmJiAwID09PSB0LmxheWVycy5sZW5ndGggJiYgKHQubGF5ZXJzID0gITEpLCB2b2lkIDAgIT09IHQuYmdzICYmIDAgPT09IHQuYmdzLmxlbmd0aCAmJiAodC5iZ3MgPSAhMSksIFQuc2Nyb2xsVGlja2VyKHksIGcpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHNjcm9sbFRpY2tlcjogZnVuY3Rpb24ociwgZSkgewogICAgICAgICAgICAxICE9IHIuc2Nyb2xsVGlja2VyICYmIChyLnNjcm9sbFRpY2tlciA9ICEwLCBfID8gKHB1bmNoZ3MuVHdlZW5MaXRlLnRpY2tlci5mcHMoMTUwKSwgcHVuY2hncy5Ud2VlbkxpdGUudGlja2VyLmFkZEV2ZW50TGlzdGVuZXIoInRpY2siLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIFQuc2Nyb2xsSGFuZGxpbmcocikKICAgICAgICAgICAgfSwgZSwgITEsIDEpKSA6IGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIFQuc2Nyb2xsSGFuZGxpbmcociwgITApCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIHBhc3NpdmU6ICEwCiAgICAgICAgICAgIH0pKSwgVC5zY3JvbGxIYW5kbGluZyhyLCAhMCkKICAgICAgICB9LAogICAgICAgIHNjcm9sbEhhbmRsaW5nOiBmdW5jdGlvbihlLCByLCB0KSB7CiAgICAgICAgICAgIGlmIChlLmxhc3R3aW5kb3doZWlnaHQgPSBlLmxhc3R3aW5kb3doZWlnaHQgfHwgd2luZG93LmlubmVySGVpZ2h0LCBlLmNvbmggPSAwID09PSBlLmNvbmggfHwgdm9pZCAwID09PSBlLmNvbmggPyBlLmluZnVsbHNjcmVlbm1vZGUgPyBlLm1pbkhlaWdodCA6IGUuYy5oZWlnaHQoKSA6IGUuY29uaCwgZS5sYXN0c2Nyb2xsdG9wID09IHdpbmRvdy5zY3JvbGxZICYmICFlLmR1cmluZ3NsaWRlY2hhbmdlICYmICFyKSByZXR1cm4gITE7CiAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKC4yLCBtLCBbZSwgd2luZG93LnNjcm9sbFldKTsKICAgICAgICAgICAgdmFyIGEgPSBlLmNbMF0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksCiAgICAgICAgICAgICAgICBpID0gZS52aWV3UG9ydCwKICAgICAgICAgICAgICAgIGwgPSBlLnBhcmFsbGF4LAogICAgICAgICAgICAgICAgbyA9IGEudG9wIDwgMCB8fCBhLmhlaWdodCA+IGUubGFzdHdpbmRvd2hlaWdodCA/IGEudG9wIC8gYS5oZWlnaHQgOiBhLmJvdHRvbSA+IGUubGFzdHdpbmRvd2hlaWdodCA/IChhLmJvdHRvbSAtIGUubGFzdHdpbmRvd2hlaWdodCkgLyBhLmhlaWdodCA6IDA7CiAgICAgICAgICAgIGlmIChlLnNjcm9sbHByb2MgPSBvLCBULmNhbGxCYWNrSGFuZGxpbmcgJiYgVC5jYWxsQmFja0hhbmRsaW5nKGUsICJwYXJhbGxheCIsICJzdGFydCIpLCBpLmVuYWJsZSkgewogICAgICAgICAgICAgICAgdmFyIHMgPSAxIC0gTWF0aC5hYnMobyk7CiAgICAgICAgICAgICAgICBzID0gcyA8IDAgPyAwIDogcywgalF1ZXJ5LmlzTnVtZXJpYyhpLnZpc2libGVfYXJlYSkgfHwgLTEgIT09IGkudmlzaWJsZV9hcmVhLmluZGV4T2YoIiUiKSAmJiAoaS52aXNpYmxlX2FyZWEgPSBwYXJzZUludChpLnZpc2libGVfYXJlYSkgLyAxMDApLCAxIC0gaS52aXNpYmxlX2FyZWEgPD0gcyA/IGUuaW52aWV3cG9ydCB8fCAoZS5pbnZpZXdwb3J0ID0gITAsIFQuZW50ZXJJblZpZXdQb3J0KGUpKSA6IGUuaW52aWV3cG9ydCAmJiAoZS5pbnZpZXdwb3J0ID0gITEsIFQubGVhdmVWaWV3UG9ydChlKSkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoXyAmJiAib24iID09IGwuZGlzYWJsZV9vbm1vYmlsZSkgcmV0dXJuICExOwogICAgICAgICAgICBpZiAoIjNkIiAhPSBsLnR5cGUgJiYgIjNEIiAhPSBsLnR5cGUpIHsKICAgICAgICAgICAgICAgIGlmICgoInNjcm9sbCIgPT0gbC50eXBlIHx8ICJzY3JvbGwrbW91c2UiID09IGwudHlwZSB8fCAibW91c2Urc2Nyb2xsIiA9PSBsLnR5cGUpICYmIGwucGNvbnRhaW5lcnMpCiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IDA7IG4gPCBsLnBjb250YWluZXJzLmxlbmd0aDsgbisrKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA8IGwucGNvbnRhaW5lcnNbbl0ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZCA9IGwucGNvbnRhaW5lcnNbbl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcCA9IGwucGNvbnRhaW5lcl9kZXB0aHNbbl0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYyA9IE1hdGgucm91bmQobyAqICgtcCAqIGUuY29uaCkgKiAxMCkgLyAxMCB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUgPSB2b2lkIDAgIT09IHQgPyB0IDogbC5zcGVlZGxzIC8gMWUzIHx8IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkLmRhdGEoInBhcmFsbGF4b2Zmc2V0IiwgYyksIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGQsIHUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeTogYwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGwuYmdjb250YWluZXJzKQogICAgICAgICAgICAgICAgICAgIGZvciAobiA9IDA7IG4gPCBsLmJnY29udGFpbmVycy5sZW5ndGg7IG4rKykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaCA9IGwuYmdjb250YWluZXJzW25dOwogICAgICAgICAgICAgICAgICAgICAgICBjID0gbyAqICgtbC5iZ2NvbnRhaW5lcl9kZXB0aHNbbl0gKiBlLmNvbmgpIHx8IDAsIHUgPSB2b2lkIDAgIT09IHQgPyB0IDogbC5zcGVlZGJnIC8gMWUzIHx8IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGgsIHUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2ZhY2VWaXNpYmlsaXR5OiAiaGlkZGVuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJ0cnVlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IGMgKyAicHgiCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBmID0gZS5zY3JvbGxlZmZlY3Q7CiAgICAgICAgICAgIGlmIChmLm9uICYmICgib24iICE9PSBmLmRpc2FibGVfb25fbW9iaWxlIHx8ICFfKSkgewogICAgICAgICAgICAgICAgdmFyIHcgPSBNYXRoLmFicyhvKSAtIGYudGlsdCAvIDEwMDsKICAgICAgICAgICAgICAgIGlmICh3ID0gdyA8IDAgPyAwIDogdywgITEgIT09IGYubGF5ZXJzKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHYgPSAxIC0gdyAqIGYubXVsdGlwbGljYXRvcl9sYXllcnMsCiAgICAgICAgICAgICAgICAgICAgICAgIGcgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZmFjZVZpc2liaWxpdHk6ICJoaWRkZW4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogInRydWUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgejogLjAwMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNwZWN0aXZlOiA2MDAKICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICBpZiAoInRvcCIgPT0gZi5kaXJlY3Rpb24gJiYgMCA8PSBvICYmICh2ID0gMSksICJib3R0b20iID09IGYuZGlyZWN0aW9uICYmIG8gPD0gMCAmJiAodiA9IDEpLCB2ID0gMSA8IHYgPyAxIDogdiA8IDAgPyAwIDogdiwgIm9uIiA9PT0gZi5mYWRlICYmIChnLm9wYWNpdHkgPSB2KSwgIm9uIiA9PT0gZi5zY2FsZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgeSA9IHY7CiAgICAgICAgICAgICAgICAgICAgICAgIGcuc2NhbGUgPSAxIC0geSArIDEKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCJvbiIgPT09IGYuYmx1cikgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgYiA9ICgxIC0gdikgKiBmLm1heGJsdXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGdbIi13ZWJraXQtZmlsdGVyIl0gPSAiYmx1cigiICsgYiArICJweCkiLCBnLmZpbHRlciA9ICJibHVyKCIgKyBiICsgInB4KSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCJvbiIgPT09IGYuZ3JheXNjYWxlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB4ID0gImdyYXlzY2FsZSgiICsgMTAwICogKDEgLSB2KSArICIlKSI7CiAgICAgICAgICAgICAgICAgICAgICAgIGdbIi13ZWJraXQtZmlsdGVyIl0gPSB2b2lkIDAgPT09IGdbIi13ZWJraXQtZmlsdGVyIl0gPyB4IDogZ1siLXdlYmtpdC1maWx0ZXIiXSArICIgIiArIHgsIGcuZmlsdGVyID0gdm9pZCAwID09PSBnLmZpbHRlciA/IHggOiBnLmZpbHRlciArICIgIiArIHgKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGYubGF5ZXJzLCBnKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCExICE9PSBmLmJncykgewogICAgICAgICAgICAgICAgICAgIHYgPSAxIC0gdyAqIGYubXVsdGlwbGljYXRvciwgZyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2ZhY2VWaXNpYmlsaXR5OiAiaGlkZGVuIiwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogInRydWUiCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICBpZiAoInRvcCIgPT0gZi5kaXJlY3Rpb24gJiYgMCA8PSBvICYmICh2ID0gMSksICJib3R0b20iID09IGYuZGlyZWN0aW9uICYmIG8gPD0gMCAmJiAodiA9IDEpLCB2ID0gMSA8IHYgPyAxIDogdiA8IDAgPyAwIDogdiwgIm9uIiA9PT0gZi5mYWRlICYmIChnLm9wYWNpdHkgPSB2KSwgIm9uIiA9PT0gZi5zY2FsZSkgewogICAgICAgICAgICAgICAgICAgICAgICB5ID0gdjsKICAgICAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGpRdWVyeSgiLnRwLWtiaW1nLXdyYXAiKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAiNTAlIDUwJSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogeSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICEwCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmICgib24iID09PSBmLmJsdXIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgYiA9ICgxIC0gdikgKiBmLm1heGJsdXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGdbIi13ZWJraXQtZmlsdGVyIl0gPSAiYmx1cigiICsgYiArICJweCkiLCBnLmZpbHRlciA9ICJibHVyKCIgKyBiICsgInB4KSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCJvbiIgPT09IGYuZ3JheXNjYWxlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHggPSAiZ3JheXNjYWxlKCIgKyAxMDAgKiAoMSAtIHYpICsgIiUpIjsKICAgICAgICAgICAgICAgICAgICAgICAgZ1siLXdlYmtpdC1maWx0ZXIiXSA9IHZvaWQgMCA9PT0gZ1siLXdlYmtpdC1maWx0ZXIiXSA/IHggOiBnWyItd2Via2l0LWZpbHRlciJdICsgIiAiICsgeCwgZy5maWx0ZXIgPSB2b2lkIDAgPT09IGcuZmlsdGVyID8geCA6IGcuZmlsdGVyICsgIiAiICsgeAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZi5iZ3MsIGcpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgVC5jYWxsQmFja0hhbmRsaW5nICYmIFQuY2FsbEJhY2tIYW5kbGluZyhlLCAicGFyYWxsYXgiLCAiZW5kIikKICAgICAgICB9CiAgICB9KQp9KGpRdWVyeSk7CiEgZnVuY3Rpb24odCkgewogICAgInVzZSBzdHJpY3QiOwogICAgdmFyIEwgPSBqUXVlcnkuZm4ucmV2b2x1dGlvbiwKICAgICAgICBsID0gewogICAgICAgICAgICBhbGlhczogIlNsaWRlQW5pbWF0aW9ucyBNaW4gSlMiLAogICAgICAgICAgICBuYW1lOiAicmV2b2x1dGlvbi5leHRlbnNpb25zLnNsaWRlYW5pbXMubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjQuNSIsCiAgICAgICAgICAgIHZlcnNpb246ICIxLjgiCiAgICAgICAgfTsKICAgIGpRdWVyeS5leHRlbmQoITAsIEwsIHsKICAgICAgICBhbmltYXRlU2xpZGU6IGZ1bmN0aW9uKHQsIGUsIG8sIGEsIGksIG4sIHIsIHMpIHsKICAgICAgICAgICAgcmV0dXJuICJzdG9wIiA9PT0gTC5jb21wYXJlX3ZlcnNpb24obCkuY2hlY2sgPyBzIDogZCh0LCBlLCBvLCBhLCBpLCBuLCByLCBzKQogICAgICAgIH0KICAgIH0pOwogICAgdmFyIHV0ID0gZnVuY3Rpb24odCwgZSwgbywgYSkgewogICAgICAgICAgICB2YXIgaSA9IHQsCiAgICAgICAgICAgICAgICBuID0gaS5maW5kKCIuZGVmYXVsdGltZyIpLAogICAgICAgICAgICAgICAgciA9IG4uZGF0YSgibWVkaWFmaWx0ZXIiKSwKICAgICAgICAgICAgICAgIHMgPSBpLmRhdGEoInpvb21zdGFydCIpLAogICAgICAgICAgICAgICAgbCA9IGkuZGF0YSgicm90YXRpb25zdGFydCIpOwogICAgICAgICAgICBudWxsICE9IG4uZGF0YSgiY3Vycm90YXRlIikgJiYgKGwgPSBuLmRhdGEoImN1cnJvdGF0ZSIpKSwgbnVsbCAhPSBuLmRhdGEoImN1cnNjYWxlIikgJiYgImJveCIgPT0gYSA/IHMgPSAxMDAgKiBuLmRhdGEoImN1cnNjYWxlIikgOiBudWxsICE9IG4uZGF0YSgiY3Vyc2NhbGUiKSAmJiAocyA9IG4uZGF0YSgiY3Vyc2NhbGUiKSksIEwuc2xvdFNpemUobiwgZSk7CiAgICAgICAgICAgIHZhciBkID0gbi5hdHRyKCJzcmMiKSwKICAgICAgICAgICAgICAgIGggPSBuLmRhdGEoImJnY29sb3IiKSwKICAgICAgICAgICAgICAgIGMgPSBlLndpZHRoLAogICAgICAgICAgICAgICAgdSA9IGUuaGVpZ2h0LAogICAgICAgICAgICAgICAgZiA9IG4uZGF0YSgiZnhvZiIpOwogICAgICAgICAgICB2b2lkIDAgPT09IGggJiYgKGggPSBuLmNzcygiYmFja2dyb3VuZENvbG9yIikpLCAib24iID09IGUuYXV0b0hlaWdodCAmJiAodSA9IGUuYy5oZWlnaHQoKSksIG51bGwgPT0gZiAmJiAoZiA9IDApOwogICAgICAgICAgICB2YXIgcCA9IDAsCiAgICAgICAgICAgICAgICBnID0gbi5kYXRhKCJiZ2ZpdCIpLAogICAgICAgICAgICAgICAgdyA9IG4uZGF0YSgiYmdyZXBlYXQiKSwKICAgICAgICAgICAgICAgIG0gPSBuLmRhdGEoImJncG9zaXRpb24iKTsKICAgICAgICAgICAgbnVsbCA9PSBnICYmIChnID0gImNvdmVyIiksIG51bGwgPT0gdyAmJiAodyA9ICJuby1yZXBlYXQiKSwgbnVsbCA9PSBtICYmIChtID0gImNlbnRlciBjZW50ZXIiKTsKICAgICAgICAgICAgdmFyIHY7CiAgICAgICAgICAgIHN3aXRjaCAodiA9IHZvaWQgMCAhPT0gaCAmJiAwIDw9IGguaW5kZXhPZigiZ3JhZGllbnQiKSA/ICJiYWNrZ3JvdW5kOiIgKyBoIDogImJhY2tncm91bmQtY29sb3I6IiArIGggKyAiO2JhY2tncm91bmQtaW1hZ2U6dXJsKCIgKyBkICsgIik7YmFja2dyb3VuZC1yZXBlYXQ6IiArIHcgKyAiO2JhY2tncm91bmQtc2l6ZToiICsgZyArICI7YmFja2dyb3VuZC1wb3NpdGlvbjoiICsgbSwgYSkgewogICAgICAgICAgICAgICAgY2FzZSAiYm94IjoKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciB5ID0gMCwgeCA9IDAsIFQgPSAwOyBUIDwgZS5zbG90czsgVCsrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIHogPSB4ID0gMDsgeiA8IGUuc2xvdHM7IHorKykgaS5hcHBlbmQoJzxkaXYgY2xhc3M9InNsb3QiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6JyArICgwICsgeCkgKyAicHg7bGVmdDoiICsgKGYgKyB5KSArICJweDt3aWR0aDoiICsgZS5zbG90dyArICJweDtoZWlnaHQ6IiArIGUuc2xvdGggKyAncHg7b3ZlcmZsb3c6aGlkZGVuOyI+PGRpdiBjbGFzcz0ic2xvdHNsaWRlICcgKyByICsgJyIgZGF0YS14PSInICsgeSArICciIGRhdGEteT0iJyArIHggKyAnIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDt3aWR0aDonICsgZS5zbG90dyArICJweDtoZWlnaHQ6IiArIGUuc2xvdGggKyAncHg7b3ZlcmZsb3c6aGlkZGVuOyI+PGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOicgKyAoMCAtIHgpICsgInB4O2xlZnQ6IiArICgwIC0geSkgKyAicHg7d2lkdGg6IiArIGMgKyAicHg7aGVpZ2h0OiIgKyB1ICsgInB4OyIgKyB2ICsgJzsiPjwvZGl2PjwvZGl2PjwvZGl2PicpLCB4ICs9IGUuc2xvdGgsIG51bGwgIT0gcyAmJiBudWxsICE9IGwgJiYgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiLnNsb3QiKS5sYXN0KCksIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWjogbAogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgeSArPSBlLnNsb3R3CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidmVydGljYWwiOgogICAgICAgICAgICAgICAgY2FzZSAiaG9yaXpvbnRhbCI6CiAgICAgICAgICAgICAgICAgICAgaWYgKCJob3Jpem9udGFsIiA9PSBhKQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKG8gfHwgKHAgPSAwIC0gZS5zbG90dyksIHogPSAwOyB6IDwgZS5zbG90czsgeisrKSBpLmFwcGVuZCgnPGRpdiBjbGFzcz0ic2xvdCIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDonICsgKGYgKyB6ICogZS5zbG90dykgKyAicHg7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOiIgKyAoZS5zbG90dyArIC4zKSArICJweDtoZWlnaHQ6IiArIHUgKyAncHgiPjxkaXYgY2xhc3M9InNsb3RzbGlkZSAnICsgciArICciIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6JyArIHAgKyAicHg7d2lkdGg6IiArIChlLnNsb3R3ICsgLjYpICsgInB4O2hlaWdodDoiICsgdSArICdweDtvdmVyZmxvdzpoaWRkZW47Ij48ZGl2IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6JyArICgwIC0geiAqIGUuc2xvdHcpICsgInB4O3dpZHRoOiIgKyBjICsgInB4O2hlaWdodDoiICsgdSArICJweDsiICsgdiArICc7Ij48L2Rpdj48L2Rpdj48L2Rpdj4nKSwgbnVsbCAhPSBzICYmIG51bGwgIT0gbCAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCIuc2xvdCIpLmxhc3QoKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25aOiBsCiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChvIHx8IChwID0gMCAtIGUuc2xvdGgpLCB6ID0gMDsgeiA8IGUuc2xvdHMgKyAyOyB6KyspIGkuYXBwZW5kKCc8ZGl2IGNsYXNzPSJzbG90IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOicgKyAoMCArIHogKiBlLnNsb3RoKSArICJweDtsZWZ0OiIgKyBmICsgInB4O292ZXJmbG93OmhpZGRlbjt3aWR0aDoiICsgYyArICJweDtoZWlnaHQ6IiArIGUuc2xvdGggKyAncHgiPjxkaXYgY2xhc3M9InNsb3RzbGlkZSAnICsgciArICciIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6JyArIHAgKyAicHg7bGVmdDowcHg7d2lkdGg6IiArIGMgKyAicHg7aGVpZ2h0OiIgKyBlLnNsb3RoICsgJ3B4O292ZXJmbG93OmhpZGRlbjsiPjxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDonICsgKDAgLSB6ICogZS5zbG90aCkgKyAicHg7bGVmdDowcHg7d2lkdGg6IiArIGMgKyAicHg7aGVpZ2h0OiIgKyB1ICsgInB4OyIgKyB2ICsgJzsiPjwvZGl2PjwvZGl2PjwvZGl2PicpLCBudWxsICE9IHMgJiYgbnVsbCAhPSBsICYmIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLmZpbmQoIi5zbG90IikubGFzdCgpLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblo6IGwKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgZnQgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsID09IGUgfHwgalF1ZXJ5LmlzTnVtZXJpYyh0KSA/IHQgOiBudWxsID09IHQgPyB0IDogdC5zcGxpdCgiLCIpW2VdCiAgICAgICAgfSwKICAgICAgICBkID0gZnVuY3Rpb24oYSwgdCwgeiwgZSwgbywgaSwgbiwgcikgewogICAgICAgICAgICB2YXIgcyA9IHpbMF0ub3B0LAogICAgICAgICAgICAgICAgbCA9IG8uaW5kZXgoKSwKICAgICAgICAgICAgICAgIGQgPSBlLmluZGV4KCkgPCBsID8gMSA6IDA7CiAgICAgICAgICAgICJhcnJvdyIgPT0gcy5zY19pbmRpY2F0b3IgJiYgKGQgPSBzLnNjX2luZGljYXRvcl9kaXIpOwogICAgICAgICAgICB2YXIgaCA9IGZ1bmN0aW9uKHQsIG8sIGUsIGEpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHpbMF0ub3B0LAogICAgICAgICAgICAgICAgICAgICAgICBuID0gcHVuY2hncy5Qb3dlcjEuZWFzZUluLAogICAgICAgICAgICAgICAgICAgICAgICByID0gcHVuY2hncy5Qb3dlcjEuZWFzZU91dCwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IHB1bmNoZ3MuUG93ZXIxLmVhc2VJbk91dCwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9IHB1bmNoZ3MuUG93ZXIyLmVhc2VJbiwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IHB1bmNoZ3MuUG93ZXIyLmVhc2VPdXQsCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSBwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQsCiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSAocHVuY2hncy5Qb3dlcjMuZWFzZUluLCBwdW5jaGdzLlBvd2VyMy5lYXNlT3V0KSwKICAgICAgICAgICAgICAgICAgICAgICAgdSA9IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dCwKICAgICAgICAgICAgICAgICAgICAgICAgZiA9IFswLCAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLCAzNCwgMzUsIDM2LCAzNywgMzgsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1XSwKICAgICAgICAgICAgICAgICAgICAgICAgcCA9IFsxNiwgMTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjddLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgdyA9IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIG0gPSAwLAogICAgICAgICAgICAgICAgICAgICAgICB2ID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgeSA9IChuZXcgQXJyYXksIFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiYm94c2xpZGUiLCAwLCAxLCAxMCwgMCwgImJveCIsICExLCBudWxsLCAwLCByLCByLCA1MDAsIDZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJib3hmYWRlIiwgMSwgMCwgMTAsIDAsICJib3giLCAhMSwgbnVsbCwgMSwgcywgcywgNzAwLCA1XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xvdHNsaWRlLWhvcml6b250YWwiLCAyLCAwLCAwLCAyMDAsICJob3Jpem9udGFsIiwgITAsICExLCAyLCBoLCBoLCA3MDAsIDNdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbG90c2xpZGUtdmVydGljYWwiLCAzLCAwLCAwLCAyMDAsICJ2ZXJ0aWNhbCIsICEwLCAhMSwgMywgaCwgaCwgNzAwLCAzXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiY3VydGFpbi0xIiwgNCwgMywgMCwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDQsIHIsIHIsIDMwMCwgNV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImN1cnRhaW4tMiIsIDUsIDMsIDAsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA1LCByLCByLCAzMDAsIDVdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJjdXJ0YWluLTMiLCA2LCAzLCAyNSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDYsIHIsIHIsIDMwMCwgNV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsb3R6b29tLWhvcml6b250YWwiLCA3LCAwLCAwLCA0MDAsICJob3Jpem9udGFsIiwgITAsICEwLCA3LCByLCByLCAzMDAsIDddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbG90em9vbS12ZXJ0aWNhbCIsIDgsIDAsIDAsIDAsICJ2ZXJ0aWNhbCIsICEwLCAhMCwgOCwgZCwgZCwgNTAwLCA4XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xvdGZhZGUtaG9yaXpvbnRhbCIsIDksIDAsIDAsIDFlMywgImhvcml6b250YWwiLCAhMCwgbnVsbCwgOSwgZCwgZCwgMmUzLCAxMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsb3RmYWRlLXZlcnRpY2FsIiwgMTAsIDAsIDAsIDFlMywgInZlcnRpY2FsIiwgITAsIG51bGwsIDEwLCBkLCBkLCAyZTMsIDEwXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZSIsIDExLCAwLCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJjcm9zc2ZhZGUiLCAxMSwgMSwgMSwgMzAwLCAiaG9yaXpvbnRhbCIsICEwLCBudWxsLCAxMSwgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZXRocm91Z2hkYXJrIiwgMTEsIDIsIDEsIDMwMCwgImhvcml6b250YWwiLCAhMCwgbnVsbCwgMTEsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImZhZGV0aHJvdWdobGlnaHQiLCAxMSwgMywgMSwgMzAwLCAiaG9yaXpvbnRhbCIsICEwLCBudWxsLCAxMSwgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZXRocm91Z2h0cmFuc3BhcmVudCIsIDExLCA0LCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZWxlZnQiLCAxMiwgMCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDEyLCB1LCB1LCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZXVwIiwgMTMsIDAsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAxMywgdSwgdSwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xpZGVkb3duIiwgMTQsIDAsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAxNCwgdSwgdSwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xpZGVyaWdodCIsIDE1LCAwLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMTUsIHUsIHUsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsaWRlb3ZlcmxlZnQiLCAxMiwgNywgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDEyLCB1LCB1LCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZW92ZXJ1cCIsIDEzLCA3LCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMTMsIHUsIHUsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsaWRlb3ZlcmRvd24iLCAxNCwgNywgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDE0LCB1LCB1LCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZW92ZXJyaWdodCIsIDE1LCA3LCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMTUsIHUsIHUsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsaWRlcmVtb3ZlbGVmdCIsIDEyLCA4LCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMTIsIHUsIHUsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsaWRlcmVtb3ZldXAiLCAxMywgOCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDEzLCB1LCB1LCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZXJlbW92ZWRvd24iLCAxNCwgOCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDE0LCB1LCB1LCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkZXJlbW92ZXJpZ2h0IiwgMTUsIDgsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAxNSwgdSwgdSwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsicGFwZXJjdXQiLCAxNiwgMCwgMCwgNjAwLCAiIiwgbnVsbCwgbnVsbCwgMTYsIHUsIHUsIDFlMywgMl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIjNkY3VydGFpbi1ob3Jpem9udGFsIiwgMTcsIDAsIDIwLCAxMDAsICJ2ZXJ0aWNhbCIsICExLCAhMCwgMTcsIHMsIHMsIDUwMCwgN10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIjNkY3VydGFpbi12ZXJ0aWNhbCIsIDE4LCAwLCAxMCwgMTAwLCAiaG9yaXpvbnRhbCIsICExLCAhMCwgMTgsIHMsIHMsIDUwMCwgNV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImN1YmljIiwgMTksIDAsIDIwLCA2MDAsICJob3Jpem9udGFsIiwgITEsICEwLCAxOSwgdSwgdSwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiY3ViZSIsIDE5LCAwLCAyMCwgNjAwLCAiaG9yaXpvbnRhbCIsICExLCAhMCwgMjAsIHUsIHUsIDUwMCwgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImZseWluIiwgMjAsIDAsIDQsIDYwMCwgInZlcnRpY2FsIiwgITEsICEwLCAyMSwgYywgdSwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsidHVybm9mZiIsIDIxLCAwLCAxLCA1MDAsICJob3Jpem9udGFsIiwgITEsICEwLCAyMiwgdSwgdSwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiaW5jdWJlIiwgMjIsIDAsIDIwLCAyMDAsICJob3Jpem9udGFsIiwgITEsICEwLCAyMywgaCwgaCwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiY3ViaWMtaG9yaXpvbnRhbCIsIDIzLCAwLCAyMCwgNTAwLCAidmVydGljYWwiLCAhMSwgITAsIDI0LCBkLCBkLCA1MDAsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJjdWJlLWhvcml6b250YWwiLCAyMywgMCwgMjAsIDUwMCwgInZlcnRpY2FsIiwgITEsICEwLCAyNSwgZCwgZCwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiaW5jdWJlLWhvcml6b250YWwiLCAyNCwgMCwgMjAsIDUwMCwgInZlcnRpY2FsIiwgITEsICEwLCAyNiwgaCwgaCwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsidHVybm9mZi12ZXJ0aWNhbCIsIDI1LCAwLCAxLCAyMDAsICJob3Jpem9udGFsIiwgITEsICEwLCAyNywgaCwgaCwgNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZWZyb21yaWdodCIsIDEyLCAxLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMjgsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImZhZGVmcm9tbGVmdCIsIDE1LCAxLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMjksIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImZhZGVmcm9tdG9wIiwgMTQsIDEsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAzMCwgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZWZyb21ib3R0b20iLCAxMywgMSwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDMxLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJmYWRldG9sZWZ0ZmFkZWZyb21yaWdodCIsIDEyLCAyLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMzIsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImZhZGV0b3JpZ2h0ZmFkZWZyb21sZWZ0IiwgMTUsIDIsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAzMywgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiZmFkZXRvYm90dG9tZmFkZWZyb210b3AiLCAxNCwgMiwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDM0LCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJmYWRldG90b3BmYWRlZnJvbWJvdHRvbSIsIDEzLCAyLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMzUsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4dG9yaWdodCIsIDE1LCAzLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMzYsIGgsIGwsIDE1MDAsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJwYXJhbGxheHRvbGVmdCIsIDEyLCAzLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgMzcsIGgsIGwsIDE1MDAsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJwYXJhbGxheHRvdG9wIiwgMTQsIDMsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCAzOCwgaCwgbiwgMTUwMCwgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4dG9ib3R0b20iLCAxMywgMywgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDM5LCBoLCBuLCAxNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2NhbGVkb3duZnJvbXJpZ2h0IiwgMTIsIDQsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA0MCwgaCwgbCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2NhbGVkb3duZnJvbWxlZnQiLCAxNSwgNCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDQxLCBoLCBsLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzY2FsZWRvd25mcm9tdG9wIiwgMTQsIDQsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA0MiwgaCwgbCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2NhbGVkb3duZnJvbWJvdHRvbSIsIDEzLCA0LCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgNDMsIGgsIGwsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInpvb21vdXQiLCAxMywgNSwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDQ0LCBoLCBsLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJ6b29taW4iLCAxMywgNiwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDQ1LCBoLCBsLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJzbGlkaW5nb3ZlcmxheXVwIiwgMjcsIDAsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA0NywgcywgciwgMmUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xpZGluZ292ZXJsYXlkb3duIiwgMjgsIDAsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA0OCwgcywgciwgMmUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsic2xpZGluZ292ZXJsYXlyaWdodCIsIDMwLCAwLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgNDksIHMsIHIsIDJlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInNsaWRpbmdvdmVybGF5bGVmdCIsIDI5LCAwLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgNTAsIHMsIHIsIDJlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4Y2lyY2xlc3VwIiwgMzEsIDAsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA1MSwgaCwgbiwgMTUwMCwgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4Y2lyY2xlc2Rvd24iLCAzMiwgMCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDUyLCBoLCBuLCAxNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsicGFyYWxsYXhjaXJjbGVzcmlnaHQiLCAzMywgMCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDUzLCBoLCBuLCAxNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsicGFyYWxsYXhjaXJjbGVzbGVmdCIsIDM0LCAwLCAxLCAwLCAiaG9yaXpvbnRhbCIsICEwLCAhMCwgNTQsIGgsIG4sIDE1MDAsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJub3RyYW5zaXRpb24iLCAyNiwgMCwgMSwgMCwgImhvcml6b250YWwiLCAhMCwgbnVsbCwgNDYsIGgsIGwsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4cmlnaHQiLCAxNSwgMywgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDU1LCBoLCBsLCAxNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsicGFyYWxsYXhsZWZ0IiwgMTIsIDMsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA1NiwgaCwgbCwgMTUwMCwgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInBhcmFsbGF4dXAiLCAxNCwgMywgMSwgMCwgImhvcml6b250YWwiLCAhMCwgITAsIDU3LCBoLCBuLCAxNTAwLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsicGFyYWxsYXhkb3duIiwgMTMsIDMsIDEsIDAsICJob3Jpem9udGFsIiwgITAsICEwLCA1OCwgaCwgbiwgMTUwMCwgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImdyYXlzY2FsZSIsIDExLCA1LCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJncmF5c2NhbGVjcm9zcyIsIDExLCA2LCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJicmlnaHRuZXNzIiwgMTEsIDcsIDEsIDMwMCwgImhvcml6b250YWwiLCAhMCwgbnVsbCwgMTEsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImJyaWdodG5lc3Njcm9zcyIsIDExLCA4LCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJibHVybGlnaHQiLCAxMSwgOSwgMSwgMzAwLCAiaG9yaXpvbnRhbCIsICEwLCBudWxsLCAxMSwgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiYmx1cmxpZ2h0Y3Jvc3MiLCAxMSwgMTAsIDEsIDMwMCwgImhvcml6b250YWwiLCAhMCwgbnVsbCwgMTEsIGgsIGgsIDFlMywgMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbImJsdXJzdHJvbmciLCAxMSwgOSwgMSwgMzAwLCAiaG9yaXpvbnRhbCIsICEwLCBudWxsLCAxMSwgaCwgaCwgMWUzLCAxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiYmx1cnN0cm9uZ2Nyb3NzIiwgMTEsIDEwLCAxLCAzMDAsICJob3Jpem9udGFsIiwgITAsIG51bGwsIDExLCBoLCBoLCAxZTMsIDFdCiAgICAgICAgICAgICAgICAgICAgICAgIF0pOwogICAgICAgICAgICAgICAgICAgIGlmIChpLmR1cmluZ3NsaWRlY2hhbmdlID0gITAsIGkudGVzdGFuaW1zID0gITEsIDEgPT0gaS50ZXN0YW5pbXMgJiYgKGkubmV4dHRlc3R0cmFuc2Zvcm0gPSB2b2lkIDAgPT09IGkubmV4dHRlc3R0cmFuc2Zvcm0gPyAzNCA6IGkubmV4dHRlc3R0cmFuc2Zvcm0gKyAxLCBpLm5leHR0ZXN0dHJhbnNmb3JtID0gNzAgPCBpLm5leHR0ZXN0dHJhbnNmb3JtID8gMCA6IGkubmV4dHRlc3R0cmFuc2Zvcm0sIG8gPSB5W2kubmV4dHRlc3R0cmFuc2Zvcm1dWzBdLCBjb25zb2xlLmxvZyhvICsgIiAgIiArIGkubmV4dHRlc3R0cmFuc2Zvcm0gKyAiICAiICsgeVtpLm5leHR0ZXN0dHJhbnNmb3JtXVsxXSArICIgICIgKyB5W2kubmV4dHRlc3R0cmFuc2Zvcm1dWzJdKSksIGpRdWVyeS5lYWNoKFsicGFyYWxsYXhjaXJjbGVzIiwgInNsaWRpbmdvdmVybGF5IiwgInNsaWRlIiwgInNsaWRlb3ZlciIsICJzbGlkZXJlbW92ZSIsICJwYXJhbGxheCIsICJwYXJyYWxheHRvIl0sIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPT0gZSArICJob3Jpem9udGFsIiAmJiAobyA9IDEgIT0gYSA/IGUgKyAibGVmdCIgOiBlICsgInJpZ2h0IiksIG8gPT0gZSArICJ2ZXJ0aWNhbCIgJiYgKG8gPSAxICE9IGEgPyBlICsgInVwIiA6IGUgKyAiZG93biIpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAicmFuZG9tIiA9PSBvICYmIChvID0gTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpICogeS5sZW5ndGggLSAxKSwgeS5sZW5ndGggLSAxIDwgbyAmJiAobyA9IHkubGVuZ3RoIC0gMSkpLCAicmFuZG9tLXN0YXRpYyIgPT0gbyAmJiAobyA9IE1hdGgucm91bmQoTWF0aC5yYW5kb20oKSAqIGYubGVuZ3RoIC0gMSksIGYubGVuZ3RoIC0gMSA8IG8gJiYgKG8gPSBmLmxlbmd0aCAtIDEpLCBvID0gZltvXSksICJyYW5kb20tcHJlbWl1bSIgPT0gbyAmJiAobyA9IE1hdGgucm91bmQoTWF0aC5yYW5kb20oKSAqIHAubGVuZ3RoIC0gMSksIHAubGVuZ3RoIC0gMSA8IG8gJiYgKG8gPSBwLmxlbmd0aCAtIDEpLCBvID0gcFtvXSksIDEgPT0gaS5pc0pvb21sYSAmJiBudWxsICE9IHdpbmRvdy5Nb29Ub29scyAmJiAtMSAhPSBbMTIsIDEzLCAxNCwgMTUsIDE2LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLCAzNCwgMzUsIDM2LCAzNywgMzgsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1XS5pbmRleE9mKG8pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB4ID0gTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpICogKHAubGVuZ3RoIC0gMikpICsgMTsKICAgICAgICAgICAgICAgICAgICAgICAgcC5sZW5ndGggLSAxIDwgeCAmJiAoeCA9IHAubGVuZ3RoIC0gMSksIDAgPT0geCAmJiAoeCA9IDEpLCBvID0gcFt4XQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBqUXVlcnkuZWFjaCh5LCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVbMF0gIT0gbyAmJiBlWzhdICE9IG8gfHwgKGcgPSBlWzFdLCB3ID0gZVsyXSwgbSA9IHYpLCB2ICs9IDEKICAgICAgICAgICAgICAgICAgICB9KSwgMzAgPCBnICYmIChnID0gMzApLCBnIDwgMCAmJiAoZyA9IDApOwogICAgICAgICAgICAgICAgICAgIHZhciBUID0gbmV3IE9iamVjdDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gVC5uZXh0dHJhbnMgPSBnLCBULlNUQSA9IHlbbV0sIFQuc3BlY2lhbHMgPSB3LCBUCiAgICAgICAgICAgICAgICB9KDAsIHQsIDAsIGQpLAogICAgICAgICAgICAgICAgYyA9IGguU1RBLAogICAgICAgICAgICAgICAgdSA9IGguc3BlY2lhbHM7CiAgICAgICAgICAgIGEgPSBoLm5leHR0cmFucywgIm9uIiA9PSBpLmRhdGEoImtlbmJ1cm5zIikgJiYgKGEgPSAxMSk7CiAgICAgICAgICAgIHZhciBmID0gZS5kYXRhKCJuZXh0dHJhbnNpZCIpIHx8IDAsCiAgICAgICAgICAgICAgICBwID0gZnQoZS5kYXRhKCJtYXN0ZXJzcGVlZCIpLCBmKTsKICAgICAgICAgICAgcCA9IChwID0gImRlZmF1bHQiID09PSBwID8gY1sxMV0gOiAicmFuZG9tIiA9PT0gcCA/IE1hdGgucm91bmQoMWUzICogTWF0aC5yYW5kb20oKSArIDMwMCkgOiBudWxsICE9IHAgPyBwYXJzZUludChwLCAwKSA6IGNbMTFdKSA+IHMuZGVsYXkgPyBzLmRlbGF5IDogcCwgcCArPSBjWzRdLCBzLnNsb3RzID0gZnQoZS5kYXRhKCJzbG90YW1vdW50IiksIGYpLCBzLnNsb3RzID0gbnVsbCA9PSBzLnNsb3RzIHx8ICJkZWZhdWx0IiA9PSBzLnNsb3RzID8gY1sxMl0gOiAicmFuZG9tIiA9PSBzLnNsb3RzID8gTWF0aC5yb3VuZCgxMiAqIE1hdGgucmFuZG9tKCkgKyA0KSA6IHMuc2xvdHMsIHMuc2xvdHMgPSBzLnNsb3RzIDwgMSA/ICJib3hzbGlkZSIgPT0gdCA/IE1hdGgucm91bmQoNiAqIE1hdGgucmFuZG9tKCkgKyAzKSA6ICJmbHlpbiIgPT0gdCA/IE1hdGgucm91bmQoNCAqIE1hdGgucmFuZG9tKCkgKyAxKSA6IHMuc2xvdHMgOiBzLnNsb3RzLCBzLnNsb3RzID0gKDQgPT0gYSB8fCA1ID09IGEgfHwgNiA9PSBhKSAmJiBzLnNsb3RzIDwgMyA/IDMgOiBzLnNsb3RzLCBzLnNsb3RzID0gMCAhPSBjWzNdID8gTWF0aC5taW4ocy5zbG90cywgY1szXSkgOiBzLnNsb3RzLCBzLnNsb3RzID0gOSA9PSBhID8gcy53aWR0aCAvIHMuc2xvdHMgOiAxMCA9PSBhID8gcy5oZWlnaHQgLyBzLnNsb3RzIDogcy5zbG90cywgcy5yb3RhdGUgPSBmdChlLmRhdGEoInJvdGF0ZSIpLCBmKSwgcy5yb3RhdGUgPSBudWxsID09IHMucm90YXRlIHx8ICJkZWZhdWx0IiA9PSBzLnJvdGF0ZSA/IDAgOiA5OTkgPT0gcy5yb3RhdGUgfHwgInJhbmRvbSIgPT0gcy5yb3RhdGUgPyBNYXRoLnJvdW5kKDM2MCAqIE1hdGgucmFuZG9tKCkpIDogcy5yb3RhdGUsIHMucm90YXRlID0gcy5pZSB8fCBzLmllOSA/IDAgOiBzLnJvdGF0ZSwgMTEgIT0gYSAmJiAobnVsbCAhPSBjWzddICYmIHV0KG4sIHMsIGNbN10sIGNbNV0pLCBudWxsICE9IGNbNl0gJiYgdXQoaSwgcywgY1s2XSwgY1s1XSkpLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCIuZGVmYXVsdHZpZCIpLCB7CiAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgeDogMCwKICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICBzY2FsZTogMQogICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLmZpbmQoIi5kZWZhdWx0dmlkIiksIHsKICAgICAgICAgICAgICAgIHk6IDAsCiAgICAgICAgICAgICAgICB4OiAwLAogICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgIHNjYWxlOiAxCiAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiLmRlZmF1bHR2aWQiKSwgewogICAgICAgICAgICAgICAgeTogIiswJSIsCiAgICAgICAgICAgICAgICB4OiAiKzAlIgogICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLmZpbmQoIi5kZWZhdWx0dmlkIiksIHsKICAgICAgICAgICAgICAgIHk6ICIrMCUiLAogICAgICAgICAgICAgICAgeDogIiswJSIKICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaSwgewogICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgeTogIiswJSIsCiAgICAgICAgICAgICAgICB4OiAiKzAlIgogICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLCB7CiAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICB5OiAiKzAlIiwKICAgICAgICAgICAgICAgIHg6ICIrMCUiCiAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkucGFyZW50KCksIHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogInRyYW5zcGFyZW50IgogICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLnBhcmVudCgpLCB7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICJ0cmFuc3BhcmVudCIKICAgICAgICAgICAgfSksIDApOwogICAgICAgICAgICB2YXIgZywgdyA9IGZ0KGUuZGF0YSgiZWFzZWluIiksIGYpLAogICAgICAgICAgICAgICAgbSA9IGZ0KGUuZGF0YSgiZWFzZW91dCIpLCBmKTsKICAgICAgICAgICAgaWYgKHcgPSAiZGVmYXVsdCIgPT09IHcgPyBjWzldIHx8IHB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dCA6IHcgfHwgY1s5XSB8fCBwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQsIG0gPSAiZGVmYXVsdCIgPT09IG0gPyBjWzEwXSB8fCBwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQgOiBtIHx8IGNbMTBdIHx8IHB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dCwgMCA9PSBhKSB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IE1hdGguY2VpbChzLmhlaWdodCAvIHMuc2xvdGgpLAogICAgICAgICAgICAgICAgICAgIHkgPSAwOwogICAgICAgICAgICAgICAgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgKHkgKz0gMSkgPT0gdiAmJiAoeSA9IDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tKGUsIHAgLyA2MDAsIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwIC0gcy5zbG90aCwKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIHMuc2xvdHcsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBzLnJvdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICAgICAgfSksICgxNSAqIHQgKyAzMCAqIHkpIC8gMTUwMCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgMSA9PSBhICYmIGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgbyA9IE1hdGgucmFuZG9tKCkgKiBwICsgMzAwLAogICAgICAgICAgICAgICAgICAgIGEgPSA1MDAgKiBNYXRoLnJhbmRvbSgpICsgMjAwOwogICAgICAgICAgICAgICAgZyA8IG8gKyBhICYmIChnID0gYSArIGEpLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tKGUsIG8gLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBzLnJvdGF0ZSwKICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICB9KSwgYSAvIDFlMykKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlmICgyID09IGEpIHsKICAgICAgICAgICAgICAgIHZhciB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlOwogICAgICAgICAgICAgICAgbi5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgICAgICB4LmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS50byh0LCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHMuc2xvdHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IDAgLSBzLnJvdGF0ZQogICAgICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQoeCwgMCkKICAgICAgICAgICAgICAgIH0pLCBpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb20odCwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwIC0gcy5zbG90dywKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdywKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogcy5yb3RhdGUKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgzID09IGEgJiYgKHggPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGUsIG4uZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgeC5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8odCwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IHMuc2xvdGgsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBzLnJvdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogNjAwCiAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZCh4LCAwKQogICAgICAgICAgICAgICAgfSksIGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgeC5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbSh0LCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCAtIHMuc2xvdGgsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBzLnJvdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogNjAwCiAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZCh4LCAwKQogICAgICAgICAgICAgICAgfSkpLCA0ID09IGEgfHwgNSA9PSBhKSB7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIG4uZmluZCgiLmRlZmF1bHRpbWciKS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIDEwMCk7CiAgICAgICAgICAgICAgICB2YXIgVCA9IHAgLyAxZTM7CiAgICAgICAgICAgICAgICB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCBuLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHQgKiBUIC8gcy5zbG90czsKICAgICAgICAgICAgICAgICAgICA1ID09IGEgJiYgKG8gPSAocy5zbG90cyAtIHQgLSAxKSAqIFQgLyBzLnNsb3RzIC8gMS41KSwgeC5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oZSwgMyAqIFQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgKyBzLmhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjUsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBzLnJvdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdywKICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk6IG8KICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KSwgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSB0ICogVCAvIHMuc2xvdHM7CiAgICAgICAgICAgICAgICAgICAgNSA9PSBhICYmIChvID0gKHMuc2xvdHMgLSB0IC0gMSkgKiBUIC8gcy5zbG90cyAvIDEuNSksIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb20oZSwgMyAqIFQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwIC0gcy5oZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41LAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogcy5yb3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5lbywKICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk6IG8KICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICg2ID09IGEgJiYgKHMuc2xvdHMgPCAyICYmIChzLnNsb3RzID0gMiksIHMuc2xvdHMgJSAyICYmIChzLnNsb3RzID0gcy5zbG90cyArIDEpLCB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIG4uZmluZCgiLmRlZmF1bHRpbWciKS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIDEwMCksIG4uZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGlmICh0ICsgMSA8IHMuc2xvdHMgLyAyKSB2YXIgbyA9IDkwICogKHQgKyAyKTsKICAgICAgICAgICAgICAgICAgICBlbHNlIG8gPSA5MCAqICgyICsgcy5zbG90cyAtIHQpOwogICAgICAgICAgICAgICAgICAgIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGUsIChwICsgbykgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwICsgcy5oZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZCh4LCAwKQogICAgICAgICAgICAgICAgfSksIGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGlmICh0ICsgMSA8IHMuc2xvdHMgLyAyKSB2YXIgbyA9IDkwICogKHQgKyAyKTsKICAgICAgICAgICAgICAgICAgICBlbHNlIG8gPSA5MCAqICgyICsgcy5zbG90cyAtIHQpOwogICAgICAgICAgICAgICAgICAgIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb20oZSwgKHAgKyBvKSAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgLSBzLmhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogcy5yb3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IG0KICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KSksIDcgPT0gYSAmJiAoKHAgKj0gMikgPiBzLmRlbGF5ICYmIChwID0gcy5kZWxheSksIHggPSBuZXcgcHVuY2hncy5UaW1lbGluZUxpdGUsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbi5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSwgMTAwKSwgbi5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGpRdWVyeSh0aGlzKS5maW5kKCJkaXYiKTsKICAgICAgICAgICAgICAgICAgICB4LmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS50byh0LCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAgLSBzLnNsb3R3IC8gMiArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCAtIHMuaGVpZ2h0IC8gMiArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyICogcy5zbG90dyArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMiAqIHMuaGVpZ2h0ICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KSwgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcykuZmluZCgiZGl2Iik7CiAgICAgICAgICAgICAgICAgICAgeC5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogNjAwCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwIC0gdCAqIHMuc2xvdHcgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBtLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBzLndpZHRoLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHMuaGVpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk6IC4xCiAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZCh4LCAwKQogICAgICAgICAgICAgICAgfSkpLCA4ID09IGEgJiYgKChwICo9IDMpID4gcy5kZWxheSAmJiAocCA9IHMuZGVsYXkpLCB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCBuLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0galF1ZXJ5KHRoaXMpLmZpbmQoImRpdiIpOwogICAgICAgICAgICAgICAgICAgIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHQsIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIHMud2lkdGggLyAyICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwIC0gcy5zbG90aCAvIDIgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMiAqIHMud2lkdGggKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIgKiBzLnNsb3RoICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3LAogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogcy5yb3RhdGUKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KSwgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcykuZmluZCgiZGl2Iik7CiAgICAgICAgICAgICAgICAgICAgeC5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAgLSB0ICogcy5zbG90aCArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpLmZpbmQoIi5kZWZhdWx0aW1nIikuZGF0YSgibmV3dyIpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBpLmZpbmQoIi5kZWZhdWx0aW1nIikuZGF0YSgibmV3aCIpICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IDAKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgICAgICB9KSksIDkgIT0gYSAmJiAxMCAhPSBhIHx8IGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCBwIC8gMmUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogNjAwCiAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiB0ICogcy5zbG90cyAvIDEwMCAvIDJlMwogICAgICAgICAgICAgICAgICAgIH0pLCAwKQogICAgICAgICAgICAgICAgfSksIDI3ID09IGEgfHwgMjggPT0gYSB8fCAyOSA9PSBhIHx8IDMwID09IGEpIHsKICAgICAgICAgICAgICAgIHZhciBMID0gaS5maW5kKCIuc2xvdCIpLAogICAgICAgICAgICAgICAgICAgIGIgPSAyNyA9PSBhIHx8IDI5ID09IGEgPyAiLTEwMCUiIDogIisxMDAlIiwKICAgICAgICAgICAgICAgICAgICBBID0gMjcgPT0gYSB8fCAyOSA9PSBhID8gIisxMDAlIiA6ICItMTAwJSIsCiAgICAgICAgICAgICAgICAgICAgRCA9IDI3ID09IGEgfHwgMjkgPT0gYSA/ICItODAlIiA6ICI4MCUiLAogICAgICAgICAgICAgICAgICAgIGogPSAyNyA9PSBhIHx8IDI5ID09IGEgPyAiKzgwJSIgOiAiLTgwJSIsCiAgICAgICAgICAgICAgICAgICAgUSA9IDI3ID09IGEgfHwgMjkgPT0gYSA/ICIrMTAlIiA6ICItMTAlIiwKICAgICAgICAgICAgICAgICAgICBNID0gewogICAgICAgICAgICAgICAgICAgICAgICBvdmVyd3JpdGU6ICJhbGwiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBQID0gewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBrID0gewogICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImluaGVyaXQiLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogMQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgTyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IG0KICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIEkgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJ3cml0ZTogImFsbCIsCiAgICAgICAgICAgICAgICAgICAgICAgIHpJbmRleDogMiwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBYID0gewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYWxsIiwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgWSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcndyaXRlOiAiYWxsIiwKICAgICAgICAgICAgICAgICAgICAgICAgekluZGV4OiAyLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIFMgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBfID0gMSA9PSAoMjcgPT0gYSB8fCAyOCA9PSBhID8gMSA6IDIpID8gInkiIDogIngiOwogICAgICAgICAgICAgICAgTVtfXSA9ICIwcHgiLCBQW19dID0gYiwga1tfXSA9IFEsIE9bX10gPSAiMCUiLCBJW19dID0gQSwgWFtfXSA9IGIsIFlbX10gPSBELCBTW19dID0gaiwgTC5hcHBlbmQoJzxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDowcHg7ZGlzcGxheTpibG9jazt6LWluZGV4OjIiPjwvc3Bhbj4nKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKG4sIHAgLyAxZTMsIE0sIFApLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGkuZmluZCgiLmRlZmF1bHRpbWciKSwgcCAvIDJlMywgaywgTyksIHAgLyAyZTMpLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oTCwgcCAvIDFlMywgSSwgWCksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oTC5maW5kKCIuc2xvdHNsaWRlIGRpdiIpLCBwIC8gMWUzLCBZLCBTKSwgMCkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoMzEgPT0gYSB8fCAzMiA9PSBhIHx8IDMzID09IGEgfHwgMzQgPT0gYSkgewogICAgICAgICAgICAgICAgcCA9IDZlMywgdyA9IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dDsKICAgICAgICAgICAgICAgIHZhciBDID0gcCAvIDFlMzsKICAgICAgICAgICAgICAgIG1hcyA9IEMgLSBDIC8gNSwgX250ID0gYSwgZnkgPSAzMSA9PSBfbnQgPyAiKzEwMCUiIDogMzIgPT0gX250ID8gIi0xMDAlIiA6ICIwJSIsIGZ4ID0gMzMgPT0gX250ID8gIisxMDAlIiA6IDM0ID09IF9udCA/ICItMTAwJSIgOiAiMCUiLCB0eSA9IDMxID09IF9udCA/ICItMTAwJSIgOiAzMiA9PSBfbnQgPyAiKzEwMCUiIDogIjAlIiwgdHggPSAzMyA9PSBfbnQgPyAiLTEwMCUiIDogMzQgPT0gX250ID8gIisxMDAlIiA6ICIwJSIsIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhuLCBDIC0gLjIgKiBDLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHg6IDAKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHk6IHR5LAogICAgICAgICAgICAgICAgICAgICAgICB4OiB0eCwKICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbQogICAgICAgICAgICAgICAgICAgIH0pLCAuMiAqIEMpLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSwgQywgewogICAgICAgICAgICAgICAgICAgICAgICB5OiBmeSwKICAgICAgICAgICAgICAgICAgICAgICAgeDogZngKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHk6ICIwJSIsCiAgICAgICAgICAgICAgICAgICAgICAgIHg6ICIwJSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIGkuZmluZCgiLnNsb3QiKS5yZW1vdmUoKSwgaS5maW5kKCIuZGVmYXVsdGltZyIpLmNsb25lKCkuYXBwZW5kVG8oaSkuYWRkQ2xhc3MoInNsb3QiKSwKICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbih0LCBjLCB1LCBlLCBmKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gdC5maW5kKCIuc2xvdCIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcCA9IFsyLCAxLjIsIC45LCAuNywgLjU1LCAuNDJdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZyA9IHQud2lkdGgoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHcgPSB0LmhlaWdodCgpOwogICAgICAgICAgICAgICAgICAgICAgICBvLndyYXAoJzxkaXYgY2xhc3M9InNsb3QtY2lyY2xlLXdyYXBwZXIiIHN0eWxlPSJvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjFweCBzb2xpZCAjZmZmIj48L2Rpdj4nKTsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgYSA9IDA7IGEgPCA2OyBhKyspIG8ucGFyZW50KCkuY2xvbmUoITEpLmFwcGVuZFRvKG5leHRzaCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHQuZmluZCgiLnNsb3QtY2lyY2xlLXdyYXBwZXIiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0IDwgNikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvID0gZS5maW5kKCIuc2xvdCIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gdyA8IGcgPyBwW3RdICogZyA6IHBbdF0gKiB3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gYSAvIDIgLSBnIC8gMiArIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBhIC8gMiAtIHcgLyAyICsgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ286ICI1MCUgNTAlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhICsgInB4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IHcgLyAyIC0gYSAvIDIgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogKDMzID09IHUgPyBnIC8gMiAtIGEgLyAyIDogMzQgPT0gdSA/IGcgLSBhIDogZyAvIDIgLSBhIC8gMikgKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAwICE9IHQgPyAiNTAlIiA6ICIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IHcgLyAyIC0gYSAvIDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBnIC8gMiAtIGEgLyAyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogZgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IG4gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJhYnNvbHV0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAoMzMgPT0gdSA/IGkgOiAzNCA9PSB1ID8gaSArIGcgLyAyIDogaSkgKyAicHgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IG4gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogaSArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBmCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGggPSBjOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG10bC5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIGgsIHIsIHMpLCAwKSwgbXRsLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8obywgaCwgbCwgZCksIDApLCBtdGwuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCAuMDAxLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfShpLCBDLCBfbnQsIDAsIHcpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKDExID09IGEpIHsKICAgICAgICAgICAgICAgIDEyIDwgdSAmJiAodSA9IDApOwogICAgICAgICAgICAgICAgdmFyIFYgPSAyID09IHUgPyAiIzAwMDAwMCIgOiAzID09IHUgPyAiI2ZmZmZmZiIgOiAidHJhbnNwYXJlbnQiOwogICAgICAgICAgICAgICAgc3dpdGNoICh1KSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICAgICAgfSksIDApOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhpLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhuLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEKICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobi5wYXJlbnQoKSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBWLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkucGFyZW50KCksIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogInRyYW5zcGFyZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIgogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKG4sIHAgLyAyZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSwgcCAvIDJlMywgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICAgICAgfSksIHAgLyAyZTMpOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgICAgICAgICAgICB2YXIgWiA9ICJibHVyKCIgKyAoMCA8PSBqUXVlcnkuaW5BcnJheSh1LCBbOSwgMTBdKSA/IDUgOiAwIDw9IGpRdWVyeS5pbkFycmF5KHUsIFsxMSwgMTJdKSA/IDEwIDogMCkgKyAicHgpIGdyYXlzY2FsZSgiICsgKDAgPD0galF1ZXJ5LmluQXJyYXkodSwgWzUsIDYsIDcsIDhdKSA/IDEwMCA6IDApICsgIiUpIGJyaWdodG5lc3MoIiArICgwIDw9IGpRdWVyeS5pbkFycmF5KHUsIFs3LCA4XSkgPyAzMDAgOiAwKSArICIlKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBIID0gImJsdXIoMHB4KSBncmF5c2NhbGUoMCUpIGJyaWdodG5lc3MoMTAwJSkiOwogICAgICAgICAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBaLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIi13ZWJraXQtZmlsdGVyIjogWgogICAgICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IEgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLXdlYmtpdC1maWx0ZXIiOiBILAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCksIDAgPD0galF1ZXJ5LmluQXJyYXkodSwgWzYsIDgsIDEwXSkgJiYgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKG4sIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogSCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICItd2Via2l0LWZpbHRlciI6IEgKICAgICAgICAgICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogdywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogWiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICItd2Via2l0LWZpbHRlciI6IFoKICAgICAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCIuZGVmYXVsdGltZyIpLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxCiAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLmZpbmQoImRlZmF1bHRpbWciKSwgewogICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMQogICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKDI2ID09IGEgJiYgKHAgPSAwLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMAogICAgICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS50byhuLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLmZpbmQoIi5kZWZhdWx0aW1nIiksIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEKICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KG4uZmluZCgiZGVmYXVsdGltZyIpLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxCiAgICAgICAgICAgICAgICB9KSwgMCkpLCAxMiA9PSBhIHx8IDEzID09IGEgfHwgMTQgPT0gYSB8fCAxNSA9PSBhKSB7CiAgICAgICAgICAgICAgICAocCA9IHApID4gcy5kZWxheSAmJiAocCA9IHMuZGVsYXkpLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChuLmZpbmQoIi5kZWZhdWx0aW1nIiksIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0sIDEwMCk7CiAgICAgICAgICAgICAgICB2YXIgSiA9IHMud2lkdGgsCiAgICAgICAgICAgICAgICAgICAgTiA9IHMuaGVpZ2h0LAogICAgICAgICAgICAgICAgICAgIFIgPSBpLmZpbmQoIi5zbG90c2xpZGUsIC5kZWZhdWx0dmlkIiksCiAgICAgICAgICAgICAgICAgICAgcSA9IDAsCiAgICAgICAgICAgICAgICAgICAgQiA9IDAsCiAgICAgICAgICAgICAgICAgICAgRSA9IDEsCiAgICAgICAgICAgICAgICAgICAgRiA9IDEsCiAgICAgICAgICAgICAgICAgICAgRyA9IDEsCiAgICAgICAgICAgICAgICAgICAgSyA9IHAgLyAxZTMsCiAgICAgICAgICAgICAgICAgICAgVSA9IEs7CiAgICAgICAgICAgICAgICAiZnVsbHdpZHRoIiAhPSBzLnNsaWRlckxheW91dCAmJiAiZnVsbHNjcmVlbiIgIT0gcy5zbGlkZXJMYXlvdXQgfHwgKEogPSBSLndpZHRoKCksIE4gPSBSLmhlaWdodCgpKSwgMTIgPT0gYSA/IHEgPSBKIDogMTUgPT0gYSA/IHEgPSAwIC0gSiA6IDEzID09IGEgPyBCID0gTiA6IDE0ID09IGEgJiYgKEIgPSAwIC0gTiksIDEgPT0gdSAmJiAoRSA9IDApLCAyID09IHUgJiYgKEUgPSAwKSwgMyA9PSB1ICYmIChLID0gcCAvIDEzMDApLCA0ICE9IHUgJiYgNSAhPSB1IHx8IChGID0gLjYpLCA2ID09IHUgJiYgKEYgPSAxLjQpLCA1ICE9IHUgJiYgNiAhPSB1IHx8IChHID0gMS40LCBCID0gcSA9IE4gPSBKID0gRSA9IDApLCA2ID09IHUgJiYgKEcgPSAuNiksIDcgPT0gdSAmJiAoTiA9IEogPSAwKTsKICAgICAgICAgICAgICAgIHZhciBXID0gaS5maW5kKCIuc2xvdHNsaWRlIiksCiAgICAgICAgICAgICAgICAgICAgJCA9IG4uZmluZCgiLnNsb3RzbGlkZSwgLmRlZmF1bHR2aWQiKTsKICAgICAgICAgICAgICAgIGlmIChyLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobywgewogICAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDE1CiAgICAgICAgICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZSwgewogICAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDIwCiAgICAgICAgICAgICAgICAgICAgfSksIDApLCA4ID09IHUgPyAoci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KG8sIHsKICAgICAgICAgICAgICAgICAgICAgICAgekluZGV4OiAyMAogICAgICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgekluZGV4OiAxNQogICAgICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KFcsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIgogICAgICAgICAgICAgICAgICAgIH0pLCAwKSkgOiByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tKFcsIEssIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogcSwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBCLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogRywKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogRSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3LAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIDQgIT0gdSAmJiA1ICE9IHUgfHwgKE4gPSBKID0gMCksIDEgIT0gdSkgc3dpdGNoIChhKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMjoKICAgICAgICAgICAgICAgICAgICAgICAgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oJCwgVSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCAtIEogKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IEYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiBFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMTU6CiAgICAgICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKCQsIFUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IEogKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IEYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiBFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKCQsIFUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCAtIE4gKyAicHgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IEYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiBFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogbQogICAgICAgICAgICAgICAgICAgICAgICB9KSwgMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKCQsIFUsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogTiArICJweCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogRiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogcy5yb3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBtCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAwKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgxNiA9PSBhKSB7CiAgICAgICAgICAgICAgICB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobywgewogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiLAogICAgICAgICAgICAgICAgICAgICJ6LWluZGV4IjogMjAKICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgICAgICAgICAiei1pbmRleCI6IDE1CiAgICAgICAgICAgICAgICB9KSwgMCksIG8ud3JhcElubmVyKCc8ZGl2IGNsYXNzPSJ0cC1oYWxmLW9uZSIgc3R5bGU9InBvc2l0aW9uOnJlbGF0aXZlOyB3aWR0aDoxMDAlO2hlaWdodDoxMDAlIj48L2Rpdj4nKSwgby5maW5kKCIudHAtaGFsZi1vbmUiKS5jbG9uZSghMCkuYXBwZW5kVG8obykuYWRkQ2xhc3MoInRwLWhhbGYtdHdvIiksIG8uZmluZCgiLnRwLWhhbGYtdHdvIikucmVtb3ZlQ2xhc3MoInRwLWhhbGYtb25lIiksIEogPSBzLndpZHRoLCBOID0gcy5oZWlnaHQsICJvbiIgPT0gcy5hdXRvSGVpZ2h0ICYmIChOID0gei5oZWlnaHQoKSksIG8uZmluZCgiLnRwLWhhbGYtb25lIC5kZWZhdWx0aW1nIikud3JhcCgnPGRpdiBjbGFzcz0idHAtcGFwZXJjdXQiIHN0eWxlPSJ3aWR0aDonICsgSiArICJweDtoZWlnaHQ6IiArIE4gKyAncHg7Ij48L2Rpdj4nKSwgby5maW5kKCIudHAtaGFsZi10d28gLmRlZmF1bHRpbWciKS53cmFwKCc8ZGl2IGNsYXNzPSJ0cC1wYXBlcmN1dCIgc3R5bGU9IndpZHRoOicgKyBKICsgInB4O2hlaWdodDoiICsgTiArICdweDsiPjwvZGl2PicpLCBvLmZpbmQoIi50cC1oYWxmLXR3byAuZGVmYXVsdGltZyIpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJhYnNvbHV0ZSIsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAiLTUwJSIKICAgICAgICAgICAgICAgIH0pLCBvLmZpbmQoIi50cC1oYWxmLXR3byAudHAtY2FwdGlvbiIpLndyYXBBbGwoJzxkaXYgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDotNTAlO2xlZnQ6MHB4OyI+PC9kaXY+JyksIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChvLmZpbmQoIi50cC1oYWxmLXR3byIpLCB7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IEosCiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBOLAogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiAiaGlkZGVuIiwKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDE1LAogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiLAogICAgICAgICAgICAgICAgICAgIHRvcDogTiAvIDIsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICJjZW50ZXIgYm90dG9tIgogICAgICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoby5maW5kKCIudHAtaGFsZi1vbmUiKSwgewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBKLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogTiAvIDIsCiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJ2aXNpYmxlIiwKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDEwLAogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiLAogICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICJjZW50ZXIgdG9wIgogICAgICAgICAgICAgICAgfSksIDApLCBvLmZpbmQoIi5kZWZhdWx0aW1nIik7CiAgICAgICAgICAgICAgICB2YXIgdHQgPSBNYXRoLnJvdW5kKDIwICogTWF0aC5yYW5kb20oKSAtIDEwKSwKICAgICAgICAgICAgICAgICAgICBldCA9IE1hdGgucm91bmQoMjAgKiBNYXRoLnJhbmRvbSgpIC0gMTApLAogICAgICAgICAgICAgICAgICAgIG90ID0gTWF0aC5yb3VuZCgyMCAqIE1hdGgucmFuZG9tKCkgLSAxMCksCiAgICAgICAgICAgICAgICAgICAgYXQgPSAuNCAqIE1hdGgucmFuZG9tKCkgLSAuMiwKICAgICAgICAgICAgICAgICAgICBpdCA9IC40ICogTWF0aC5yYW5kb20oKSAtIC4yLAogICAgICAgICAgICAgICAgICAgIG50ID0gMSAqIE1hdGgucmFuZG9tKCkgKyAxLAogICAgICAgICAgICAgICAgICAgIHJ0ID0gMSAqIE1hdGgucmFuZG9tKCkgKyAxLAogICAgICAgICAgICAgICAgICAgIHN0ID0gLjMgKiBNYXRoLnJhbmRvbSgpICsgLjM7CiAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoby5maW5kKCIudHAtaGFsZi1vbmUiKSwgewogICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiAiaGlkZGVuIgogICAgICAgICAgICAgICAgfSksIDApLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oby5maW5kKCIudHAtaGFsZi1vbmUiKSwgcCAvIDgwMCwgewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBKLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogTiAvIDIsCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJhYnNvbHV0ZSIsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAiMHB4IiwKICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAiY2VudGVyIHRvcCIKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBzY2FsZTogbnQsCiAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IHR0LAogICAgICAgICAgICAgICAgICAgIHk6IDAgLSBOIC0gTiAvIDQsCiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKG8uZmluZCgiLnRwLWhhbGYtdHdvIiksIHAgLyA4MDAsIHsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogSiwKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IE4sCiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICJoaWRkZW4iLAogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiLAogICAgICAgICAgICAgICAgICAgIHRvcDogTiAvIDIsCiAgICAgICAgICAgICAgICAgICAgbGVmdDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogImNlbnRlciBib3R0b20iCiAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IHJ0LAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiBldCwKICAgICAgICAgICAgICAgICAgICB5OiBOICsgTiAvIDQsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogdywKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgb25Db21wbGV0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChvLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ6LWluZGV4IjogMTUKICAgICAgICAgICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnNldChlLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogImFic29sdXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ6LWluZGV4IjogMjAKICAgICAgICAgICAgICAgICAgICAgICAgfSksIDAgPCBvLmZpbmQoIi50cC1oYWxmLW9uZSIpLmxlbmd0aCAmJiAoby5maW5kKCIudHAtaGFsZi1vbmUgLmRlZmF1bHRpbWciKS51bndyYXAoKSwgby5maW5kKCIudHAtaGFsZi1vbmUgLnNsb3Rob2xkZXIiKS51bndyYXAoKSksIG8uZmluZCgiLnRwLWhhbGYtdHdvIikucmVtb3ZlKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSwgMCksIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLmZpbmQoIi5kZWZhdWx0aW1nIiksIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEKICAgICAgICAgICAgICAgIH0pLCAwKSwgbnVsbCAhPSBvLmh0bWwoKSAmJiByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oZSwgKHAgLSAyMDApIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IHN0LAogICAgICAgICAgICAgICAgICAgIHg6IHMud2lkdGggLyA0ICogYXQsCiAgICAgICAgICAgICAgICAgICAgeTogTiAvIDQgKiBpdCwKICAgICAgICAgICAgICAgICAgICByb3RhdGlvbjogb3QsCiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogImNlbnRlciBjZW50ZXIiLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IG0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgeDogMCwKICAgICAgICAgICAgICAgICAgICB5OiAwLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uOiAwCiAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgsIDApCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKDE3ID09IGEgJiYgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyA4MDAsIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogLjksCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogLTExMCwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogNjAwLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICJjZW50ZXIgY2VudGVyIgogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiAuMDYgKiB0CiAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICB9KSwgMTggPT0gYSAmJiBpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgICAgICByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oZSwgcCAvIDUwMCwgewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogMTEwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogLjksCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMTAsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAiY2VudGVyIGNlbnRlciIKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb246IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiAuMDYgKiB0CiAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICB9KSwgMTkgPT0gYSB8fCAyMiA9PSBhKSB7CiAgICAgICAgICAgICAgICB4ID0gbmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQobywgewogICAgICAgICAgICAgICAgICAgIHpJbmRleDogMjAKICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUsIHsKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDIwCiAgICAgICAgICAgICAgICB9KSwgMCksIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbi5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSwgMTAwKTsKICAgICAgICAgICAgICAgIHZhciBsdCA9IDkwLAogICAgICAgICAgICAgICAgICAgIGR0ID0gKEUgPSAxLCAiY2VudGVyIGNlbnRlciAiKTsKICAgICAgICAgICAgICAgIDEgPT0gZCAmJiAobHQgPSAtOTApLCAxOSA9PSBhID8gKGR0ID0gZHQgKyAiLSIgKyBzLmhlaWdodCAvIDIsIEUgPSAwKSA6IGR0ICs9IHMuaGVpZ2h0IC8gMiwgcHVuY2hncy5Ud2VlbkxpdGUuc2V0KHosIHsKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogImZsYXQiLAogICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlVmlzaWJpbGl0eTogImhpZGRlbiIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMAogICAgICAgICAgICAgICAgfSksIGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0galF1ZXJ5KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVN0eWxlOiAiZmxhdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlVmlzaWJpbGl0eTogImhpZGRlbiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogcy5yb3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHo6IDEwLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVBlcnNwZWN0aXZlOiA2MDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogZHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogbHQKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB6OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiA1MCAqIHQgLyAxZTMsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGUsIC4xLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk6IDUwICogdCAvIDFlMwogICAgICAgICAgICAgICAgICAgIH0pLCAwKSwgci5hZGQoeCkKICAgICAgICAgICAgICAgIH0pLCBuLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IC05MDsKICAgICAgICAgICAgICAgICAgICAxID09IGQgJiYgKG8gPSA5MCksIHguYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVN0eWxlOiAiZmxhdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlVmlzaWJpbGl0eTogImhpZGRlbiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHo6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVBlcnNwZWN0aXZlOiA2MDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogZHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMAogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHo6IDEwLAogICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiBvLAogICAgICAgICAgICAgICAgICAgICAgICBkZWxheTogNTAgKiB0IC8gMWUzLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IG0KICAgICAgICAgICAgICAgICAgICB9KSwgMCksIHIuYWRkKHgpCiAgICAgICAgICAgICAgICB9KSwgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KG8sIHsKICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDE4CiAgICAgICAgICAgICAgICB9KSwgMCkKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoMjAgPT0gYSkgewogICAgICAgICAgICAgICAgaWYgKHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG4uZmluZCgiLmRlZmF1bHRpbWciKS5jc3MoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMAogICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIH0sIDEwMCksIDEgPT0gZCkgewogICAgICAgICAgICAgICAgICAgIHZhciBodCA9IC1zLndpZHRoOwogICAgICAgICAgICAgICAgICAgIGx0ID0gODAsIGR0ID0gIjIwJSA3MCUgLSIgKyBzLmhlaWdodCAvIDIKICAgICAgICAgICAgICAgIH0gZWxzZSBodCA9IHMud2lkdGgsIGx0ID0gLTgwLCBkdCA9ICI4MCUgNzAlIC0iICsgcy5oZWlnaHQgLyAyOwogICAgICAgICAgICAgICAgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSA1MCAqIHQgLyAxZTM7CiAgICAgICAgICAgICAgICAgICAgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogaHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogNDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHo6IC02MDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IEUsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiBkdCwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtU3R5bGU6ICJmbGF0IiwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiBsdAogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxLAogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHo6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiBvLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiB3CiAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICB9KSwgbi5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSA1MCAqIHQgLyAxZTM7CiAgICAgICAgICAgICAgICAgICAgaWYgKG8gPSAwIDwgdCA/IG8gKyBwIC8gOWUzIDogMCwgMSAhPSBkKSB2YXIgYSA9IC1zLndpZHRoIC8gMiwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IDMwLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gIjIwJSA3MCUgLSIgKyBzLmhlaWdodCAvIDI7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBhID0gcy53aWR0aCAvIDIsIGkgPSAtMzAsIG4gPSAiODAlIDcwJSAtIiArIHMuaGVpZ2h0IC8gMjsKICAgICAgICAgICAgICAgICAgICBtID0gcHVuY2hncy5Qb3dlcjIuZWFzZUluT3V0LCByLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oZSwgcCAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgejogMCwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDYwMCwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiBuLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogImZsYXQiLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMjAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgejogLTYwMCwKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYSwKICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IGksCiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5OiBvLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBtCiAgICAgICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgyMSA9PSBhIHx8IDI1ID09IGEpIHsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbi5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSwgMTAwKSwgbHQgPSA5MCwgaHQgPSAtcy53aWR0aDsKICAgICAgICAgICAgICAgIHZhciBjdCA9IC1sdDsKICAgICAgICAgICAgICAgIDEgPT0gZCA/IDI1ID09IGEgPyAoZHQgPSAiY2VudGVyIHRvcCAwIiwgbHQgPSBzLnJvdGF0ZSkgOiAoZHQgPSAibGVmdCBjZW50ZXIgMCIsIGN0ID0gcy5yb3RhdGUpIDogKGh0ID0gcy53aWR0aCwgbHQgPSAtOTAsIDI1ID09IGEgPyAoZHQgPSAiY2VudGVyIGJvdHRvbSAwIiwgY3QgPSAtbHQsIGx0ID0gcy5yb3RhdGUpIDogKGR0ID0gInJpZ2h0IGNlbnRlciAwIiwgY3QgPSBzLnJvdGF0ZSkpLCBpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IHAgLyAxLjUgLyAzOwogICAgICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCAyICogbyAvIDFlMywgewogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogImZsYXQiLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IGN0LAogICAgICAgICAgICAgICAgICAgICAgICB6OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDEyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogZHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogbHQKICAgICAgICAgICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB6OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk6IG8gLyAxZTMsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHcKICAgICAgICAgICAgICAgICAgICB9KSwgMCkKICAgICAgICAgICAgICAgIH0pLCAxICE9IGQgPyAoaHQgPSAtcy53aWR0aCwgbHQgPSA5MCwgMjUgPT0gYSA/IChkdCA9ICJjZW50ZXIgdG9wIDAiLCBjdCA9IC1sdCwgbHQgPSBzLnJvdGF0ZSkgOiAoZHQgPSAibGVmdCBjZW50ZXIgMCIsIGN0ID0gcy5yb3RhdGUpKSA6IChodCA9IHMud2lkdGgsIGx0ID0gLTkwLCAyNSA9PSBhID8gKGR0ID0gImNlbnRlciBib3R0b20gMCIsIGN0ID0gLWx0LCBsdCA9IHMucm90YXRlKSA6IChkdCA9ICJyaWdodCBjZW50ZXIgMCIsIGN0ID0gcy5yb3RhdGUpKSwgbi5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBqUXVlcnkodGhpcyk7CiAgICAgICAgICAgICAgICAgICAgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyAxZTMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtU3R5bGU6ICJmbGF0IiwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB6OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDEyMDAsCiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbjogZHQsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogMAogICAgICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgcm90YXRpb25YOiBjdCwKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB6OiAwLAogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogbHQsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IG0KICAgICAgICAgICAgICAgICAgICB9KSwgMCkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIDIzICE9IGEgJiYgMjQgIT0gYSB8fCAoc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG4uZmluZCgiLmRlZmF1bHRpbWciKS5jc3MoewogICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0sIDEwMCksIGx0ID0gLTkwLCAoRSA9IDEpID09IGQgJiYgKGx0ID0gOTApLCAyMyA9PSBhID8gKGR0ID0gImNlbnRlciBjZW50ZXIgLSIgKyBzLndpZHRoIC8gMiwgRSA9IDApIDogZHQgPSAiY2VudGVyIGNlbnRlciAiICsgcy53aWR0aCAvIDIsIHB1bmNoZ3MuVHdlZW5MaXRlLnNldCh6LCB7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1TdHlsZTogInByZXNlcnZlLTNkIiwKICAgICAgICAgICAgICAgIGJhY2tmYWNlVmlzaWJpbGl0eTogImhpZGRlbiIsCiAgICAgICAgICAgICAgICBwZXJzcGVjdGl2ZTogMjUwMAogICAgICAgICAgICB9KSwgaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IHMucm90YXRlLAogICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiBFLAogICAgICAgICAgICAgICAgICAgIHRvcDogMCwKICAgICAgICAgICAgICAgICAgICBzY2FsZTogMSwKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogMTIwMCwKICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46IGR0LAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogbHQKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogMCwKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgIHo6IDAsCiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgcm90YXRpb25ZOiAwLAogICAgICAgICAgICAgICAgICAgIGRlbGF5OiA1MCAqIHQgLyA1MDAsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogdwogICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgIH0pLCBsdCA9IDkwLCAxID09IGQgJiYgKGx0ID0gLTkwKSwgbi5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgIHIuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhlLCBwIC8gMWUzLCB7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCwKICAgICAgICAgICAgICAgICAgICByb3RhdGlvblg6IDAsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgIHo6IDAsCiAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEsCiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVN0eWxlOiAiZmxhdCIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtUGVyc3BlY3RpdmU6IDEyMDAsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiBkdCwKICAgICAgICAgICAgICAgICAgICByb3RhdGlvblk6IDAKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWDogcy5yb3RhdGUsCiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLAogICAgICAgICAgICAgICAgICAgIHNjYWxlOiAxLAogICAgICAgICAgICAgICAgICAgIHJvdGF0aW9uWTogbHQsCiAgICAgICAgICAgICAgICAgICAgZGVsYXk6IDUwICogdCAvIDUwMCwKICAgICAgICAgICAgICAgICAgICBlYXNlOiBtCiAgICAgICAgICAgICAgICB9KSwgMCksIDIzID09IGEgJiYgci5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGUsIHAgLyAyZTMsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEKICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgZGVsYXk6IDUwICogdCAvIDUwMCArIHAgLyAzZTMsCiAgICAgICAgICAgICAgICAgICAgZWFzZTogbQogICAgICAgICAgICAgICAgfSksIDApCiAgICAgICAgICAgIH0pKSwgcgogICAgICAgIH0KfShqUXVlcnkpOwohIGZ1bmN0aW9uKGUpIHsKICAgICJ1c2Ugc3RyaWN0IjsKICAgIHZhciBJID0galF1ZXJ5LmZuLnJldm9sdXRpb24sCiAgICAgICAgXyA9IEkuaXNfbW9iaWxlKCksCiAgICAgICAgUyA9IChJLmlzX2FuZHJvaWQoKSwgewogICAgICAgICAgICBhbGlhczogIlZpZGVvIE1pbiBKUyIsCiAgICAgICAgICAgIG5hbWU6ICJyZXZvbHV0aW9uLmV4dGVuc2lvbnMudmlkZW8ubWluLmpzIiwKICAgICAgICAgICAgbWluX2NvcmU6ICI1LjQuOCIsCiAgICAgICAgICAgIHZlcnNpb246ICIyLjIuMiIKICAgICAgICB9KTsKCiAgICBmdW5jdGlvbiBqKGUpIHsKICAgICAgICByZXR1cm4gbnVsbCA9PSBlID8gLTEgOiBqUXVlcnkuaXNOdW1lcmljKGUpID8gZSA6IDEgPCBlLnNwbGl0KCI6IikubGVuZ3RoID8gNjAgKiBwYXJzZUludChlLnNwbGl0KCI6IilbMF0sIDApICsgcGFyc2VJbnQoZS5zcGxpdCgiOiIpWzFdLCAwKSA6IGUKICAgIH0KICAgIGpRdWVyeS5leHRlbmQoITAsIEksIHsKICAgICAgICBwcmVMb2FkQXVkaW86IGZ1bmN0aW9uKGUsIGEpIHsKICAgICAgICAgICAgaWYgKCJzdG9wIiA9PT0gSS5jb21wYXJlX3ZlcnNpb24oUykuY2hlY2spIHJldHVybiAhMTsKICAgICAgICAgICAgZS5maW5kKCIudHAtYXVkaW9sYXllciIpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IGpRdWVyeSh0aGlzKSwKICAgICAgICAgICAgICAgICAgICB0ID0ge307CiAgICAgICAgICAgICAgICAwID09PSBlLmZpbmQoImF1ZGlvIikubGVuZ3RoICYmICh0LnNyYyA9IG51bGwgIT0gZS5kYXRhKCJ2aWRlb21wNCIpID8gZS5kYXRhKCJ2aWRlb21wNCIpIDogIiIsIHQucHJlID0gZS5kYXRhKCJ2aWRlb3ByZWxvYWQiKSB8fCAiIiwgdm9pZCAwID09PSBlLmF0dHIoImlkIikgJiYgZS5hdHRyKCJhdWRpby1sYXllci0iICsgTWF0aC5yb3VuZCgxOTk5OTkgKiBNYXRoLnJhbmRvbSgpKSksIHQuaWQgPSBlLmF0dHIoImlkIiksIHQuc3RhdHVzID0gInByZXBhcmVkIiwgdC5zdGFydCA9IGpRdWVyeS5ub3coKSwgdC53YWl0dGltZSA9IDFlMyAqIGUuZGF0YSgidmlkZW9wcmVsb2Fkd2FpdCIpIHx8IDVlMywgImF1dG8iICE9IHQucHJlICYmICJjYW5wbGF5dGhyb3VnaCIgIT0gdC5wcmUgJiYgImNhbnBsYXkiICE9IHQucHJlICYmICJwcm9ncmVzcyIgIT0gdC5wcmUgfHwgKHZvaWQgMCA9PT0gYS5hdWRpb3F1ZXVlICYmIChhLmF1ZGlvcXVldWUgPSBbXSksIGEuYXVkaW9xdWV1ZS5wdXNoKHQpLCBJLm1hbmFnZVZpZGVvTGF5ZXIoZSwgYSkpKQogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgcHJlTG9hZEF1ZGlvRG9uZTogZnVuY3Rpb24oYSwgZSwgaSkgewogICAgICAgICAgICBlLmF1ZGlvcXVldWUgJiYgMCA8IGUuYXVkaW9xdWV1ZS5sZW5ndGggJiYgalF1ZXJ5LmVhY2goZS5hdWRpb3F1ZXVlLCBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgICAgICBhLmRhdGEoInZpZGVvbXA0IikgIT09IHQuc3JjIHx8IHQucHJlICE9PSBpICYmICJhdXRvIiAhPT0gdC5wcmUgfHwgKHQuc3RhdHVzID0gImxvYWRlZCIpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwKICAgICAgICByZXNldFZpZGVvOiBmdW5jdGlvbihlLCB0LCBhLCBpKSB7CiAgICAgICAgICAgIHZhciBvID0gZS5kYXRhKCk7CiAgICAgICAgICAgIHN3aXRjaCAoby52aWRlb3R5cGUpIHsKICAgICAgICAgICAgICAgIGNhc2UgInlvdXR1YmUiOgogICAgICAgICAgICAgICAgICAgIG8ucGxheWVyOwogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgib24iID09IG8uZm9yY2VyZXdpbmQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkID0gLTEgPT0gKGwgPSBqKGUuZGF0YSgidmlkZW9zdGFydGF0IikpKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gMSA9PT0gby5iZ3ZpZGVvIHx8IDAgPCBlLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLmxlbmd0aDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIT0gby5wbGF5ZXIgJiYgKGwgPSAtMSA9PSBsID8gMCA6IGwsIG8ucGxheWVyLnNlZWtUbyhsKSwgby5wbGF5ZXIucGF1c2VWaWRlbygpKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgICAgICAwID09IGUuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoICYmIDEgIT09IG8uYmd2aWRlbyAmJiAhMCAhPT0gYSAmJiBwdW5jaGdzLlR3ZWVuTGl0ZS50byhlLmZpbmQoImlmcmFtZSIpLCAuMywgewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidmltZW8iOgogICAgICAgICAgICAgICAgICAgIHZhciByID0gZS5kYXRhKCJ2aW1lb3BsYXllciIpOwogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgib24iID09IG8uZm9yY2VyZXdpbmQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsID0gaihvLnZpZGVvc3RhcnRhdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkID0gLTEgPT0gbCwgbiA9IDEgPT09IG8uYmd2aWRlbyB8fCAwIDwgZS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGgsICgwICE9PSAobCA9IC0xID09IGwgPyAwIDogbCkgJiYgIWQgfHwgbikgJiYgci5wYXVzZSgpLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgci5zZXRDdXJyZW50VGltZShsKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICAgICAgMCA9PSBlLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLmxlbmd0aCAmJiAxICE9PSBvLmJndmlkZW8gJiYgITAgIT09IGEgJiYgcHVuY2hncy5Ud2VlbkxpdGUudG8oZS5maW5kKCJpZnJhbWUiKSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAiYmxvY2siLAogICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgImh0bWw1IjoKICAgICAgICAgICAgICAgICAgICBpZiAoXyAmJiAxID09IG8uZGlzYWJsZXZpZGVvb25tb2JpbGUpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgICAgICB2YXIgcyA9ICJodG1sNSIgPT0gby5hdWRpbyA/ICJhdWRpbyIgOiAidmlkZW8iLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gZS5maW5kKHMpLAogICAgICAgICAgICAgICAgICAgICAgICBwID0gdVswXTsKICAgICAgICAgICAgICAgICAgICBpZiAocHVuY2hncy5Ud2VlbkxpdGUudG8odSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgICAgICAgICAgfSksICJvbiIgPT0gby5mb3JjZXJld2luZCAmJiAhZS5oYXNDbGFzcygidmlkZW9pc3BsYXlpbmciKSkgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgbCA9IGooby52aWRlb3N0YXJ0YXQpLCBwLmN1cnJlbnRUaW1lID0gLTEgPT0gbCA/IDAgOiBsCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30oIm11dGUiID09IG8udm9sdW1lIHx8IEkubGFzdFRvZ2dsZVN0YXRlKGUudmlkZW9tdXRldG9nZ2xlZGJ5KSB8fCAhMCA9PT0gdC5nbG9iYWxtdXRlKSAmJiAocC5tdXRlZCA9ICEwKQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBpc1ZpZGVvTXV0ZWQ6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIGEgPSAhMSwKICAgICAgICAgICAgICAgIGkgPSBlLmRhdGEoKTsKICAgICAgICAgICAgc3dpdGNoIChpLnZpZGVvdHlwZSkgewogICAgICAgICAgICAgICAgY2FzZSAieW91dHViZSI6CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IGkucGxheWVyLmlzTXV0ZWQoKQogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJ2aW1lbyI6CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgIm11dGUiID09IGkudm9sdW1lICYmIChhID0gITApCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgImh0bWw1IjoKICAgICAgICAgICAgICAgICAgICB2YXIgbyA9ICJodG1sNSIgPT0gaS5hdWRpbyA/ICJhdWRpbyIgOiAidmlkZW8iOwogICAgICAgICAgICAgICAgICAgIGUuZmluZChvKVswXS5tdXRlZCAmJiAoYSA9ICEwKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhCiAgICAgICAgfSwKICAgICAgICBtdXRlVmlkZW86IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgdmFyIGEgPSBlLmRhdGEoKTsKICAgICAgICAgICAgc3dpdGNoIChhLnZpZGVvdHlwZSkgewogICAgICAgICAgICAgICAgY2FzZSAieW91dHViZSI6CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgYS5wbGF5ZXIubXV0ZSgpCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInZpbWVvIjoKICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IGUuZGF0YSgidmltZW9wbGF5ZXIiKTsKICAgICAgICAgICAgICAgICAgICAgICAgZS5kYXRhKCJ2b2x1bWUiLCAibXV0ZSIpLCBpLnNldFZvbHVtZSgwKQogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJodG1sNSI6CiAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSAiaHRtbDUiID09IGEuYXVkaW8gPyAiYXVkaW8iIDogInZpZGVvIjsKICAgICAgICAgICAgICAgICAgICBlLmZpbmQobylbMF0ubXV0ZWQgPSAhMAogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB1bk11dGVWaWRlbzogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICBpZiAoITAgIT09IHQuZ2xvYmFsbXV0ZSkgewogICAgICAgICAgICAgICAgdmFyIGEgPSBlLmRhdGEoKTsKICAgICAgICAgICAgICAgIHN3aXRjaCAoYS52aWRlb3R5cGUpIHsKICAgICAgICAgICAgICAgICAgICBjYXNlICJ5b3V0dWJlIjoKICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEucGxheWVyLnVuTXV0ZSgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgInZpbWVvIjoKICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0gZS5kYXRhKCJ2aW1lb3BsYXllciIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5kYXRhKCJ2b2x1bWUiLCAiMSIpLCBpLnNldFZvbHVtZSgxKQogICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICJodG1sNSI6CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvID0gImh0bWw1IiA9PSBhLmF1ZGlvID8gImF1ZGlvIiA6ICJ2aWRlbyI7CiAgICAgICAgICAgICAgICAgICAgICAgIGUuZmluZChvKVswXS5tdXRlZCA9ICExCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHN0b3BWaWRlbzogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICB2YXIgYSA9IGUuZGF0YSgpOwogICAgICAgICAgICBzd2l0Y2ggKHQubGVhdmVWaWV3UG9ydEJhc2VkU3RvcCB8fCAodC5sYXN0cGxheWVkdmlkZW9zID0gW10pLCB0LmxlYXZlVmlld1BvcnRCYXNlZFN0b3AgPSAhMSwgYS52aWRlb3R5cGUpIHsKICAgICAgICAgICAgICAgIGNhc2UgInlvdXR1YmUiOgogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0gYS5wbGF5ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgyID09PSBpLmdldFBsYXllclN0YXRlKCkgfHwgNSA9PT0gaS5nZXRQbGF5ZXJTdGF0ZSgpKSByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgIGkucGF1c2VWaWRlbygpLCBhLnlvdXR1YmVwYXVzZWNhbGxlZCA9ICEwLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYS55b3V0dWJlcGF1c2VjYWxsZWQgPSAhMQogICAgICAgICAgICAgICAgICAgICAgICB9LCA4MCkKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJJc3N1ZSBhdCBZb3VUdWJlIFZpZGVvIFBhdXNlOiIpLCBjb25zb2xlLmxvZyhlKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgInZpbWVvIjoKICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBlLmRhdGEoInZpbWVvcGxheWVyIikucGF1c2UoKSwgYS52aW1lb3BhdXNlY2FsbGVkID0gITAsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLnZpbWVvcGF1c2VjYWxsZWQgPSAhMQogICAgICAgICAgICAgICAgICAgICAgICB9LCA4MCkKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJJc3N1ZSBhdCBWaW1lbyBWaWRlbyBQYXVzZToiKSwgY29uc29sZS5sb2coZSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJodG1sNSI6CiAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSAiaHRtbDUiID09IGEuYXVkaW8gPyAiYXVkaW8iIDogInZpZGVvIiwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGUuZmluZChvKSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IGRbMF07CiAgICAgICAgICAgICAgICAgICAgbnVsbCAhPSBkICYmIG51bGwgIT0gbiAmJiBuLnBhdXNlKCkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgcGxheVZpZGVvOiBmdW5jdGlvbihhLCBpKSB7CiAgICAgICAgICAgIGNsZWFyVGltZW91dChhLmRhdGEoInZpZGVvcGxheXdhaXQiKSk7CiAgICAgICAgICAgIHZhciBlID0gYS5kYXRhKCk7CiAgICAgICAgICAgIHN3aXRjaCAoZS52aWRlb3R5cGUpIHsKICAgICAgICAgICAgICAgIGNhc2UgInlvdXR1YmUiOgogICAgICAgICAgICAgICAgICAgIGlmICgwID09IGEuZmluZCgiaWZyYW1lIikubGVuZ3RoKSBhLmFwcGVuZChhLmRhdGEoInZpZGVvbWFya3VwIikpLCBPKGEsIGksICEwKTsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChudWxsICE9IGUucGxheWVyLnBsYXlWaWRlbykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IGooYS5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvID0gZS5wbGF5ZXIuZ2V0Q3VycmVudFRpbWUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgMSA9PSBhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIpICYmIChvID0gLTEsIGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwgMCkpLCAtMSAhPSB0ICYmIG8gPCB0ICYmIGUucGxheWVyLnNlZWtUbyh0KSwgITAgIT09IGUueW91dHViZXBhdXNlY2FsbGVkICYmIGUucGxheWVyLnBsYXlWaWRlbygpCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGEuZGF0YSgidmlkZW9wbGF5d2FpdCIsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICEwICE9PSBlLnlvdXR1YmVwYXVzZWNhbGxlZCAmJiBJLnBsYXlWaWRlbyhhLCBpKQogICAgICAgICAgICAgICAgICAgIH0sIDUwKSk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJ2aW1lbyI6CiAgICAgICAgICAgICAgICAgICAgaWYgKDAgPT0gYS5maW5kKCJpZnJhbWUiKS5sZW5ndGgpIGEucmVtb3ZlRGF0YSgidmltZW9wbGF5ZXIiKSwgYS5hcHBlbmQoYS5kYXRhKCJ2aWRlb21hcmt1cCIpKSwgTyhhLCBpLCAhMCk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYS5oYXNDbGFzcygicnMtYXBpcmVhZHkiKSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZCwgbiA9IGEuZmluZCgiaWZyYW1lIikuYXR0cigiaWQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgYS5kYXRhKCJ2aW1lb3BsYXllciIpID8gZCA9IGEuZGF0YSgidmltZW9wbGF5ZXIiKSA6IChkID0gbmV3IFZpbWVvLlBsYXllcihuKSwgYS5kYXRhKCJ2aW1lb3BsYXllciIsIGQpKSwgZC5nZXRQYXVzZWQoKSA/IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGooYS5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdCA9IGEuZGF0YSgiY3VycmVudHRpbWUiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQgfHwgKHQgPSAwKSwgMSA9PSBhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIpICYmICh0ID0gLTEsIGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwgMCkpLCAtMSAhPSBlICYmIHQgPCBlICYmIGQuc2V0Q3VycmVudFRpbWUoZSksIGQucGxheSgpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIDUxMCkgOiBhLmRhdGEoInZpZGVvcGxheXdhaXQiLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgITAgIT09IGUudmltZW9wYXVzZWNhbGxlZCAmJiBJLnBsYXlWaWRlbyhhLCBpKQogICAgICAgICAgICAgICAgICAgICAgICB9LCA1MCkpCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGEuZGF0YSgidmlkZW9wbGF5d2FpdCIsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICEwICE9PSBlLnZpbWVvcGF1c2VjYWxsZWQgJiYgSS5wbGF5VmlkZW8oYSwgaSkKICAgICAgICAgICAgICAgICAgICB9LCA1MCkpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiaHRtbDUiOgogICAgICAgICAgICAgICAgICAgIHZhciByID0gImh0bWw1IiA9PSBlLmF1ZGlvID8gImF1ZGlvIiA6ICJ2aWRlbyIsCiAgICAgICAgICAgICAgICAgICAgICAgIGwgPSBhLmZpbmQociksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBsWzBdOwogICAgICAgICAgICAgICAgICAgIDEgIT0gbC5wYXJlbnQoKS5kYXRhKCJtZXRhbG9hZGVkIikgPyBBKHMsICJsb2FkZWRtZXRhZGF0YSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgSS5yZXNldFZpZGVvKGUsIGkpLCBzLnBsYXkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBqKGUuZGF0YSgidmlkZW9zdGFydGF0IikpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA9IHMuY3VycmVudFRpbWU7CiAgICAgICAgICAgICAgICAgICAgICAgIDEgPT0gZS5kYXRhKCJuZXh0c2xpZGVhdGVuZC10cmlnZ2VyZWQiKSAmJiAoYSA9IC0xLCBlLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsIDApKSwgLTEgIT0gdCAmJiBhIDwgdCAmJiAocy5jdXJyZW50VGltZSA9IHQpCiAgICAgICAgICAgICAgICAgICAgfShhKSkgOiAocy5wbGF5KCksIHQgPSBqKGEuZGF0YSgidmlkZW9zdGFydGF0IikpLCBvID0gcy5jdXJyZW50VGltZSwgMSA9PSBhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIpICYmIChvID0gLTEsIGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwgMCkpLCAtMSAhPSB0ICYmIG8gPCB0ICYmIChzLmN1cnJlbnRUaW1lID0gdCkpCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGlzVmlkZW9QbGF5aW5nOiBmdW5jdGlvbihhLCBlKSB7CiAgICAgICAgICAgIHZhciBpID0gITE7CiAgICAgICAgICAgIHJldHVybiBudWxsICE9IGUucGxheWluZ3ZpZGVvcyAmJiBqUXVlcnkuZWFjaChlLnBsYXlpbmd2aWRlb3MsIGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgICAgIGEuYXR0cigiaWQiKSA9PSB0LmF0dHIoImlkIikgJiYgKGkgPSAhMCkKICAgICAgICAgICAgfSksIGkKICAgICAgICB9LAogICAgICAgIHJlbW92ZU1lZGlhRnJvbUxpc3Q6IGZ1bmN0aW9uKGUsIHQpIHsKICAgICAgICAgICAgVihlLCB0KQogICAgICAgIH0sCiAgICAgICAgcHJlcGFyZUNvdmVyZWRWaWRlbzogZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICBpZiAoKCF0Lmhhc0NsYXNzKCJ0cC1jYXB0aW9uIikgfHwgdC5oYXNDbGFzcygiY292ZXJzY3JlZW52aWRlbyIpKSAmJiAodm9pZCAwID09PSB0LmRhdGEoInZpbWVvaWQiKSB8fCB2b2lkIDAgIT09IHQuZGF0YSgidmltZW9wbGF5ZXJsb2FkZWQiKSkpIHsKICAgICAgICAgICAgICAgIHZhciBhID0ge307CiAgICAgICAgICAgICAgICBhLmlmciA9IHQuZmluZCgiaWZyYW1lLCB2aWRlbyIpLCBhLmFzcCA9IHQuZGF0YSgiYXNwZWN0cmF0aW8iKSwgYS53YSA9IGEuYXNwLnNwbGl0KCI6IilbMF0sIGEuaGEgPSBhLmFzcC5zcGxpdCgiOiIpWzFdLCBhLnZkID0gYS53YSAvIGEuaGE7CiAgICAgICAgICAgICAgICB2YXIgaSA9ICJjYXJvdXNlbCIgIT09IGUuc2xpZGVyVHlwZSA/IGUuY29udyA6IHQuY2xvc2VzdCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLndpZHRoKCk7CiAgICAgICAgICAgICAgICBpZiAoMCA9PT0gaSB8fCAwID09PSBlLmNvbmgpIHJldHVybiBJLnNldFNpemUoZSksIGNsZWFyVGltZW91dChhLmlmci5kYXRhKCJyZXNpemVsaXN0ZW5lciIpKSwgdm9pZCBhLmlmci5kYXRhKCJyZXNpemVsaXN0ZW5lciIsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgSS5wcmVwYXJlQ292ZXJlZFZpZGVvKGUsIHQpCiAgICAgICAgICAgICAgICB9LCAxMDApKTsKICAgICAgICAgICAgICAgIHZhciBvID0gaSAvIGUuY29uaCwKICAgICAgICAgICAgICAgICAgICBkID0gbyAvIGEudmQgKiAxMDAsCiAgICAgICAgICAgICAgICAgICAgbiA9IGEudmQgLyBvICogMTAwOwogICAgICAgICAgICAgICAgbyA+IGEudmQgPyBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS5pZnIsIHsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGQgKyAiJSIsCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgICB0b3A6IC0oZCAtIDEwMCkgLyAyICsgIiUiLAogICAgICAgICAgICAgICAgICAgIGxlZnQ6ICIwcHgiLAogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAiYWJzb2x1dGUiCiAgICAgICAgICAgICAgICB9KSA6IHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLmlmciwgewogICAgICAgICAgICAgICAgICAgIHdpZHRoOiBuICsgIiUiLAogICAgICAgICAgICAgICAgICAgIGhlaWdodDogIjEwMCUiLAogICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0obiAtIDEwMCkgLyAyICsgIiUiLAogICAgICAgICAgICAgICAgICAgIHRvcDogIjBweCIsCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICJhYnNvbHV0ZSIKICAgICAgICAgICAgICAgIH0pLCBhLmlmci5oYXNDbGFzcygicmVzaXplbGlzdGVuZXIiKSB8fCAoYS5pZnIuYWRkQ2xhc3MoInJlc2l6ZWxpc3RlbmVyIiksIGpRdWVyeSh3aW5kb3cpLnJlc2l6ZShmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBJLnByZXBhcmVDb3ZlcmVkVmlkZW8oZSwgdCksIGNsZWFyVGltZW91dChhLmlmci5kYXRhKCJyZXNpemVsaXN0ZW5lciIpKSwgYS5pZnIuZGF0YSgicmVzaXplbGlzdGVuZXIiLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBJLnByZXBhcmVDb3ZlcmVkVmlkZW8oZSwgdCkKICAgICAgICAgICAgICAgICAgICB9LCA5MCkpCiAgICAgICAgICAgICAgICB9KSkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgY2hlY2tWaWRlb0FwaXM6IGZ1bmN0aW9uKGUsIHQsIGEpIHsKICAgICAgICAgICAgaWYgKGxvY2F0aW9uLnByb3RvY29sLCAobnVsbCAhPSBlLmRhdGEoInl0aWQiKSB8fCAwIDwgZS5maW5kKCJpZnJhbWUiKS5sZW5ndGggJiYgMCA8IGUuZmluZCgiaWZyYW1lIikuYXR0cigic3JjIikudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ5b3V0dWJlIikpICYmICh0LnlvdXR1YmVhcGluZWVkZWQgPSAhMCksIChudWxsICE9IGUuZGF0YSgieXRpZCIpIHx8IDAgPCBlLmZpbmQoImlmcmFtZSIpLmxlbmd0aCAmJiAwIDwgZS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInlvdXR1YmUiKSkgJiYgMCA9PSBhLmFkZGVkeXQpIHsKICAgICAgICAgICAgICAgIHQueW91dHViZXN0YXJ0dGltZSA9IGpRdWVyeS5ub3coKSwgYS5hZGRlZHl0ID0gMTsKICAgICAgICAgICAgICAgIHZhciBpID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgICAgICAgICAgICAgICBpLnNyYyA9ICJodHRwczovL3d3dy55b3V0dWJlLmNvbS9pZnJhbWVfYXBpIjsKICAgICAgICAgICAgICAgIHZhciBvID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdLAogICAgICAgICAgICAgICAgICAgIGQgPSAhMDsKICAgICAgICAgICAgICAgIGpRdWVyeSgiaGVhZCIpLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICJodHRwczovL3d3dy55b3V0dWJlLmNvbS9pZnJhbWVfYXBpIiA9PSBqUXVlcnkodGhpcykuYXR0cigic3JjIikgJiYgKGQgPSAhMSkKICAgICAgICAgICAgICAgIH0pLCBkICYmIG8ucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaSwgbykKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoKG51bGwgIT0gZS5kYXRhKCJ2aW1lb2lkIikgfHwgMCA8IGUuZmluZCgiaWZyYW1lIikubGVuZ3RoICYmIDAgPCBlLmZpbmQoImlmcmFtZSIpLmF0dHIoInNyYyIpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigidmltZW8iKSkgJiYgKHQudmltZW9hcGluZWVkZWQgPSAhMCksIChudWxsICE9IGUuZGF0YSgidmltZW9pZCIpIHx8IDAgPCBlLmZpbmQoImlmcmFtZSIpLmxlbmd0aCAmJiAwIDwgZS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInZpbWVvIikpICYmIDAgPT0gYS5hZGRlZHZpbSkgewogICAgICAgICAgICAgICAgdC52aW1lb3N0YXJ0dGltZSA9IGpRdWVyeS5ub3coKSwgYS5hZGRlZHZpbSA9IDE7CiAgICAgICAgICAgICAgICB2YXIgbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOwogICAgICAgICAgICAgICAgbyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXSwgZCA9ICEwLCBuLnNyYyA9ICJodHRwczovL3BsYXllci52aW1lby5jb20vYXBpL3BsYXllci5qcyIsIGpRdWVyeSgiaGVhZCIpLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICJodHRwczovL3BsYXllci52aW1lby5jb20vYXBpL3BsYXllci5qcyIgPT0galF1ZXJ5KHRoaXMpLmF0dHIoInNyYyIpICYmIChkID0gITEpCiAgICAgICAgICAgICAgICB9KSwgZCAmJiBvLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG4sIG8pCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGEKICAgICAgICB9LAogICAgICAgIG1hbmFnZVZpZGVvTGF5ZXI6IGZ1bmN0aW9uKGksIG8sIGUsIHQpIHsKICAgICAgICAgICAgaWYgKCJzdG9wIiA9PT0gSS5jb21wYXJlX3ZlcnNpb24oUykuY2hlY2spIHJldHVybiAhMTsKICAgICAgICAgICAgdmFyIGEgPSBpLmRhdGEoKSwKICAgICAgICAgICAgICAgIGQgPSBhLnZpZGVvYXR0cmlidXRlcywKICAgICAgICAgICAgICAgIG4gPSBhLnl0aWQsCiAgICAgICAgICAgICAgICByID0gYS52aW1lb2lkLAogICAgICAgICAgICAgICAgbCA9ICJhdXRvIiA9PT0gYS52aWRlb3ByZWxvYWQgfHwgImNhbnBsYXkiID09PSBhLnZpZGVvcHJlbG9hZCB8fCAiY2FucGxheXRocm91Z2giID09PSBhLnZpZGVvcHJlbG9hZCB8fCAicHJvZ3Jlc3MiID09PSBhLnZpZGVvcHJlbG9hZCA/ICJhdXRvIiA6IGEudmlkZW9wcmVsb2FkLAogICAgICAgICAgICAgICAgcyA9IGEudmlkZW9tcDQsCiAgICAgICAgICAgICAgICB1ID0gYS52aWRlb3dlYm0sCiAgICAgICAgICAgICAgICBwID0gYS52aWRlb29ndiwKICAgICAgICAgICAgICAgIHYgPSBhLmFsbG93ZnVsbHNjcmVlbnZpZGVvLAogICAgICAgICAgICAgICAgYyA9IGEudmlkZW9jb250cm9scywKICAgICAgICAgICAgICAgIG0gPSAiaHR0cCIsCiAgICAgICAgICAgICAgICBnID0gImxvb3AiID09IGEudmlkZW9sb29wID8gImxvb3AiIDogImxvb3BhbmRub3NsaWRlc3RvcCIgPT0gYS52aWRlb2xvb3AgPyAibG9vcCIgOiAiIiwKICAgICAgICAgICAgICAgIHkgPSBudWxsICE9IHMgfHwgbnVsbCAhPSB1ID8gImh0bWw1IiA6IG51bGwgIT0gbiAmJiAxIDwgU3RyaW5nKG4pLmxlbmd0aCA/ICJ5b3V0dWJlIiA6IG51bGwgIT0gciAmJiAxIDwgU3RyaW5nKHIpLmxlbmd0aCA/ICJ2aW1lbyIgOiAibm9uZSIsCiAgICAgICAgICAgICAgICBmID0gImh0bWw1IiA9PSBhLmF1ZGlvID8gImF1ZGlvIiA6ICJ2aWRlbyIsCiAgICAgICAgICAgICAgICBoID0gImh0bWw1IiA9PSB5ICYmIDAgPT0gaS5maW5kKGYpLmxlbmd0aCA/ICJodG1sNSIgOiAieW91dHViZSIgPT0geSAmJiAwID09IGkuZmluZCgiaWZyYW1lIikubGVuZ3RoID8gInlvdXR1YmUiIDogInZpbWVvIiA9PSB5ICYmIDAgPT0gaS5maW5kKCJpZnJhbWUiKS5sZW5ndGggPyAidmltZW8iIDogIm5vbmUiOwogICAgICAgICAgICBzd2l0Y2ggKGcgPSAhMCA9PT0gYS5uZXh0c2xpZGVhdGVuZCA/ICIiIDogZywgYS52aWRlb3R5cGUgPSB5LCBoKSB7CiAgICAgICAgICAgICAgICBjYXNlICJodG1sNSI6CiAgICAgICAgICAgICAgICAgICAgImNvbnRyb2xzIiAhPSBjICYmIChjID0gIiIpLCBmID0gInZpZGVvIiwgImh0bWw1IiA9PSBhLmF1ZGlvICYmIChmID0gImF1ZGlvIiwgaS5hZGRDbGFzcygidHAtYXVkaW8taHRtbDUiKSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGIgPSAiIjsKICAgICAgICAgICAgICAgICAgICAidmlkZW8iID09PSBmICYmIChJLmlzX21vYmlsZSgpIHx8IEkuaXNTYWZhcmkxMSgpKSAmJiAoIm9uIiA9PT0gYS5hdXRvcGxheSB8fCAidHJ1ZSIgPT09IGEuYXV0b3BsYXkgfHwgITAgPT09IGEuYXV0b3BsYXkgPyBiID0gIm11dGVkIHBsYXlzaW5saW5lIGF1dG9wbGF5IiA6IDEgIT0gYS52aWRlb2lubGluZSAmJiAidHJ1ZSIgIT09IGEudmlkZW9pbmxpbmUgJiYgMSAhPT0gYS52aWRlb2lubGluZSB8fCAoYiArPSAiIHBsYXlzaW5saW5lIikpOwogICAgICAgICAgICAgICAgICAgIHZhciB3ID0gIjwiICsgZiArICIgIiArIGIgKyAnIHN0eWxlPSJvYmplY3QtZml0OmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjt2aXNpYmxlOmhpZGRlbjt3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJSIgY2xhc3M9IiIgJyArIGcgKyAnIHByZWxvYWQ9IicgKyBsICsgJyI+JzsKICAgICAgICAgICAgICAgICAgICAiYXV0byIgPT0gbCAmJiAoby5tZWRpYXByZWxvYWQgPSAhMCksICJ2aWRlbyIgPT09IGYgPyAobnVsbCAhPSB1ICYmICJmaXJlZm94IiA9PSBJLmdldF9icm93c2VyKCkudG9Mb3dlckNhc2UoKSAmJiAodyA9IHcgKyAnPHNvdXJjZSBzcmM9IicgKyB1ICsgJyIgdHlwZT0idmlkZW8vd2VibSIgLz4nKSwgbnVsbCAhPSBzICYmICh3ID0gdyArICc8c291cmNlIHNyYz0iJyArIHMgKyAnIiB0eXBlPSJ2aWRlby9tcDQiIC8+JyksIG51bGwgIT0gcCAmJiAodyA9IHcgKyAnPHNvdXJjZSBzcmM9IicgKyBwICsgJyIgdHlwZT0idmlkZW8vb2dnIiAvPicpKSA6ICJhdWRpbyIgPT09IGYgJiYgKG51bGwgIT0gcyAmJiAodyA9IHcgKyAnPHNvdXJjZSBzcmM9IicgKyBzICsgJyIgdHlwZT0iYXVkaW8vbXBlZyIgLz4nKSwgbnVsbCAhPSBwICYmICh3ID0gdyArICc8c291cmNlIHNyYz0iJyArIHAgKyAnIiB0eXBlPSJhdWRpby9vZ2ciIC8+JykpLCB3ID0gdyArICI8LyIgKyBmICsgIj4iOwogICAgICAgICAgICAgICAgICAgIHZhciBUID0gIiI7CiAgICAgICAgICAgICAgICAgICAgInRydWUiICE9PSB2ICYmICEwICE9PSB2IHx8IChUID0gJzxkaXYgY2xhc3M9InRwLXZpZGVvLWJ1dHRvbi13cmFwIj48YnV0dG9uICB0eXBlPSJidXR0b24iIGNsYXNzPSJ0cC12aWRlby1idXR0b24gdHAtdmlkLWZ1bGwtc2NyZWVuIj5GdWxsLVNjcmVlbjwvYnV0dG9uPjwvZGl2PicpLCAiY29udHJvbHMiID09IGMgJiYgKHcgPSB3ICsgJzxkaXYgY2xhc3M9InRwLXZpZGVvLWNvbnRyb2xzIj48ZGl2IGNsYXNzPSJ0cC12aWRlby1idXR0b24td3JhcCI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ0cC12aWRlby1idXR0b24gdHAtdmlkLXBsYXktcGF1c2UiPlBsYXk8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJ0cC12aWRlby1zZWVrLWJhci13cmFwIj48aW5wdXQgIHR5cGU9InJhbmdlIiBjbGFzcz0idHAtc2Vlay1iYXIiIHZhbHVlPSIwIj48L2Rpdj48ZGl2IGNsYXNzPSJ0cC12aWRlby1idXR0b24td3JhcCI+PGJ1dHRvbiAgdHlwZT0iYnV0dG9uIiBjbGFzcz0idHAtdmlkZW8tYnV0dG9uIHRwLXZpZC1tdXRlIj5NdXRlPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0idHAtdmlkZW8tdm9sLWJhci13cmFwIj48aW5wdXQgIHR5cGU9InJhbmdlIiBjbGFzcz0idHAtdm9sdW1lLWJhciIgbWluPSIwIiBtYXg9IjEiIHN0ZXA9IjAuMSIgdmFsdWU9IjEiPjwvZGl2PicgKyBUICsgIjwvZGl2PiIpLCBpLmRhdGEoInZpZGVvbWFya3VwIiwgdyksIGkuYXBwZW5kKHcpLCAoXyAmJiAxID09IGkuZGF0YSgiZGlzYWJsZXZpZGVvb25tb2JpbGUiKSB8fCBJLmlzSUUoOCkpICYmIGkuZmluZChmKS5yZW1vdmUoKSwgaS5maW5kKGYpLmVhY2goZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCwgYSA9IGpRdWVyeSh0aGlzKTsKICAgICAgICAgICAgICAgICAgICAgICAgYS5wYXJlbnQoKS5oYXNDbGFzcygiaHRtbDV2aWQiKSB8fCBhLndyYXAoJzxkaXYgY2xhc3M9Imh0bWw1dmlkIiBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7dG9wOjBweDtsZWZ0OjBweDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOyBvdmVyZmxvdzpoaWRkZW47Ij48L2Rpdj4nKSwgMSAhPSBhLnBhcmVudCgpLmRhdGEoIm1ldGFsb2FkZWQiKSAmJiBBKHRoaXMsICJsb2FkZWRtZXRhZGF0YSIsIChRKHQgPSBpLCBvKSwgdm9pZCBJLnJlc2V0VmlkZW8odCwgbykpKQogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAieW91dHViZSI6CiAgICAgICAgICAgICAgICAgICAgbSA9ICJodHRwcyIsICJub25lIiA9PSBjICYmIC0xID09IChkID0gZC5yZXBsYWNlKCJjb250cm9scz0xIiwgImNvbnRyb2xzPTAiKSkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJjb250cm9scyIpICYmIChkICs9ICImY29udHJvbHM9MCIpLCAoITAgPT09IGEudmlkZW9pbmxpbmUgfHwgInRydWUiID09PSBhLnZpZGVvaW5saW5lIHx8IDEgPT09IGEudmlkZW9pbmxpbmUgfHwgaS5oYXNDbGFzcygicnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpIHx8ICJvbiIgPT09IGkuZGF0YSgiYXV0b3BsYXkiKSkgJiYgKGQgKz0gIiZwbGF5c2lubGluZT0xIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIGsgPSBqKGkuZGF0YSgidmlkZW9zdGFydGF0IikpLAogICAgICAgICAgICAgICAgICAgICAgICB4ID0gaihpLmRhdGEoInZpZGVvZW5kYXQiKSk7IC0gMSAhPSBrICYmIChkID0gZCArICImc3RhcnQ9IiArIGspLCAtMSAhPSB4ICYmIChkID0gZCArICImZW5kPSIgKyB4KTsKICAgICAgICAgICAgICAgICAgICB2YXIgViA9IGQuc3BsaXQoIm9yaWdpbj0iICsgbSArICI6Ly8iKSwKICAgICAgICAgICAgICAgICAgICAgICAgTCA9ICIiOwogICAgICAgICAgICAgICAgICAgIDEgPCBWLmxlbmd0aCA/IChMID0gVlswXSArICJvcmlnaW49IiArIG0gKyAiOi8vIiwgc2VsZi5sb2NhdGlvbi5ocmVmLm1hdGNoKC93d3cvZ2kpICYmICFWWzFdLm1hdGNoKC93d3cvZ2kpICYmIChMICs9ICJ3d3cuIiksIEwgKz0gVlsxXSkgOiBMID0gZDsKICAgICAgICAgICAgICAgICAgICB2YXIgQyA9ICJ0cnVlIiA9PT0gdiB8fCAhMCA9PT0gdiA/ICJhbGxvd2Z1bGxzY3JlZW4iIDogIiI7CiAgICAgICAgICAgICAgICAgICAgaS5kYXRhKCJ2aWRlb21hcmt1cCIsICc8aWZyYW1lIHR5cGU9InRleHQvaHRtbCIgc3JjPSInICsgbSArICI6Ly93d3cueW91dHViZS1ub2Nvb2tpZS5jb20vZW1iZWQvIiArIG4gKyAiPyIgKyBMICsgJyIgJyArIEMgKyAnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJvcGFjaXR5OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJSI+PC9pZnJhbWU+Jyk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICJ2aW1lbyI6CiAgICAgICAgICAgICAgICAgICAgbSA9ICJodHRwcyIsIGkuZGF0YSgidmlkZW9tYXJrdXAiLCAnPGlmcmFtZSBzcmM9IicgKyBtICsgIjovL3BsYXllci52aW1lby5jb20vdmlkZW8vIiArIHIgKyAiPyIgKyBkICsgJyIgd2Via2l0YWxsb3dmdWxsc2NyZWVuIG1vemFsbG93ZnVsbHNjcmVlbiBhbGxvd2Z1bGxzY3JlZW4gd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9Im9wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlIj48L2lmcmFtZT4nKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBQID0gXyAmJiAib24iID09IGkuZGF0YSgibm9wb3N0ZXJvbm1vYmlsZSIpOwogICAgICAgICAgICBpZiAobnVsbCAhPSBhLnZpZGVvcG9zdGVyICYmIDIgPCBhLnZpZGVvcG9zdGVyLmxlbmd0aCAmJiAhUCkgMCA9PSBpLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLmxlbmd0aCAmJiBpLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtdmlkZW9wb3N0ZXIgbm9Td2lwZSIgc3R5bGU9ImN1cnNvcjpwb2ludGVyOyBwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6MHB4O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDozO2JhY2tncm91bmQtaW1hZ2U6dXJsKCcgKyBhLnZpZGVvcG9zdGVyICsgJyk7IGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7Ij48L2Rpdj4nKSwgMCA9PSBpLmZpbmQoImlmcmFtZSIpLmxlbmd0aCAmJiBpLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgaWYgKEkucGxheVZpZGVvKGksIG8pLCBfKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKDEgPT0gaS5kYXRhKCJkaXNhYmxldmlkZW9vbm1vYmlsZSIpKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAgICAgcHVuY2hncy5Ud2VlbkxpdGUudG8oaS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS50byhpLmZpbmQoImlmcmFtZSIpLCAuMywgewogICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIsCiAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGlmIChfICYmIDEgPT0gaS5kYXRhKCJkaXNhYmxldmlkZW9vbm1vYmlsZSIpKSByZXR1cm4gITE7CiAgICAgICAgICAgICAgICAwICE9IGkuZmluZCgiaWZyYW1lIikubGVuZ3RoIHx8ICJ5b3V0dWJlIiAhPSB5ICYmICJ2aW1lbyIgIT0geSB8fCAoaS5yZW1vdmVEYXRhKCJ2aW1lb3BsYXllciIpLCBpLmFwcGVuZChpLmRhdGEoInZpZGVvbWFya3VwIikpLCBPKGksIG8sICExKSkKICAgICAgICAgICAgfQogICAgICAgICAgICAibm9uZSIgIT0gaS5kYXRhKCJkb3R0ZWRvdmVybGF5IikgJiYgbnVsbCAhPSBpLmRhdGEoImRvdHRlZG92ZXJsYXkiKSAmJiAxICE9IGkuZmluZCgiLnRwLWRvdHRlZG92ZXJsYXkiKS5sZW5ndGggJiYgaS5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLWRvdHRlZG92ZXJsYXkgJyArIGkuZGF0YSgiZG90dGVkb3ZlcmxheSIpICsgJyI+PC9kaXY+JyksIGkuYWRkQ2xhc3MoIkhhc0xpc3RlbmVyIiksIDEgPT0gaS5kYXRhKCJiZ3ZpZGVvIikgJiYgKGkuZGF0YSgieXRpZCIpID8gcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiaWZyYW1lIiksIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAKICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCJ2aWRlbywgaWZyYW1lIiksIHsKICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMAogICAgICAgICAgICB9KSkKICAgICAgICB9CiAgICB9KTsKICAgIHZhciBBID0gZnVuY3Rpb24oZSwgdCwgYSkgewogICAgICAgICAgICBlLmFkZEV2ZW50TGlzdGVuZXIgPyBlLmFkZEV2ZW50TGlzdGVuZXIodCwgYSwgewogICAgICAgICAgICAgICAgY2FwdHVyZTogITEsCiAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICB9KSA6IGUuYXR0YWNoRXZlbnQodCwgYSwgewogICAgICAgICAgICAgICAgY2FwdHVyZTogITEsCiAgICAgICAgICAgICAgICBwYXNzaXZlOiAhMAogICAgICAgICAgICB9KQogICAgICAgIH0sCiAgICAgICAgYiA9IGZ1bmN0aW9uKGUsIHQsIGEpIHsKICAgICAgICAgICAgdmFyIGkgPSB7fTsKICAgICAgICAgICAgcmV0dXJuIGkudmlkZW8gPSBlLCBpLnZpZGVvdHlwZSA9IHQsIGkuc2V0dGluZ3MgPSBhLCBpCiAgICAgICAgfSwKICAgICAgICB3ID0gZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICBpZiAoMSA9PSB0LmRhdGEoImJndmlkZW8iKSB8fCAxID09IHQuZGF0YSgiZm9yY2Vjb3ZlciIpKSB7CiAgICAgICAgICAgICAgICAxID09PSB0LmRhdGEoImZvcmNlY292ZXIiKSAmJiB0LnJlbW92ZUNsYXNzKCJmdWxsc2NyZWVudmlkZW8iKS5hZGRDbGFzcygiY292ZXJzY3JlZW52aWRlbyIpOwogICAgICAgICAgICAgICAgdmFyIGEgPSB0LmRhdGEoImFzcGVjdHJhdGlvIik7CiAgICAgICAgICAgICAgICB2b2lkIDAgPT09IGEgJiYgYS5zcGxpdCgiOiIpLmxlbmd0aCA8PSAxICYmIHQuZGF0YSgiYXNwZWN0cmF0aW8iLCAiMTY6OSIpLCBJLnByZXBhcmVDb3ZlcmVkVmlkZW8oZSwgdCkKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgTyA9IGZ1bmN0aW9uKHIsIG8sIGUpIHsKICAgICAgICAgICAgdmFyIGwgPSByLmRhdGEoKSwKICAgICAgICAgICAgICAgIHQgPSByLmZpbmQoImlmcmFtZSIpLAogICAgICAgICAgICAgICAgYSA9ICJpZnJhbWUiICsgTWF0aC5yb3VuZCgxZTUgKiBNYXRoLnJhbmRvbSgpICsgMSksCiAgICAgICAgICAgICAgICBkID0gbC52aWRlb2xvb3AsCiAgICAgICAgICAgICAgICBuID0gImxvb3BhbmRub3NsaWRlc3RvcCIgIT0gZDsKICAgICAgICAgICAgaWYgKGQgPSAibG9vcCIgPT0gZCB8fCAibG9vcGFuZG5vc2xpZGVzdG9wIiA9PSBkLCB3KG8sIHIpLCB0LmF0dHIoImlkIiwgYSksIGUgJiYgci5kYXRhKCJzdGFydHZpZGVvbm93IiwgITApLCAxICE9PSByLmRhdGEoInZpZGVvbGlzdGVuZXJleGlzdCIpKSBzd2l0Y2ggKGwudmlkZW90eXBlKSB7CiAgICAgICAgICAgICAgICBjYXNlICJ5b3V0dWJlIjoKICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IG5ldyBZVC5QbGF5ZXIoYSwgewogICAgICAgICAgICAgICAgICAgICAgICBldmVudHM6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uU3RhdGVDaGFuZ2U6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHIuY2xvc2VzdCgiLnRwLXNpbXBsZXJlc3BvbnNpdmUiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA9IChsLnZpZGVvcmF0ZSwgci5kYXRhKCJ2aWRlb3N0YXJ0IiksIGsoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUuZGF0YSA9PSBZVC5QbGF5ZXJTdGF0ZS5QTEFZSU5HKSBwdW5jaGdzLlR3ZWVuTGl0ZS50byhyLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLCAuMywgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHIuZmluZCgiaWZyYW1lIiksIC4zLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogImJsb2NrIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksICJtdXRlIiA9PSByLmRhdGEoInZvbHVtZSIpIHx8IEkubGFzdFRvZ2dsZVN0YXRlKHIuZGF0YSgidmlkZW9tdXRldG9nZ2xlZGJ5IikpIHx8ICEwID09PSBvLmdsb2JhbG11dGUgPyBzLm11dGUoKSA6IChzLnVuTXV0ZSgpLCBzLnNldFZvbHVtZShwYXJzZUludChyLmRhdGEoInZvbHVtZSIpLCAwKSB8fCA3NSkpLCBvLnZpZGVvcGxheWluZyA9ICEwLCB4KHIsIG8pLCBuID8gby5jLnRyaWdnZXIoInN0b3B0aW1lciIpIDogby52aWRlb3BsYXlpbmcgPSAhMSwgby5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3BsYXkiLCBiKHMsICJ5b3V0dWJlIiwgci5kYXRhKCkpKSwgSS50b2dnbGVTdGF0ZShsLnZpZGVvdG9nZ2xlZGJ5KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKDAgPT0gZS5kYXRhICYmIGQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpID0gaihyLmRhdGEoInZpZGVvc3RhcnRhdCIpKTsgLSAxICE9IGkgJiYgcy5zZWVrVG8oaSksIHMucGxheVZpZGVvKCksIEkudG9nZ2xlU3RhdGUobC52aWRlb3RvZ2dsZWRieSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHx8IDAgIT0gZS5kYXRhICYmIDIgIT0gZS5kYXRhIHx8ICEoIm9uIiA9PSByLmRhdGEoInNob3djb3Zlcm9ucGF1c2UiKSAmJiAwIDwgci5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGggfHwgMSA9PT0gci5kYXRhKCJiZ3ZpZGVvIikgJiYgMCA8IHIuZmluZCgiLnJzLWZ1bGx2aWRlby1jb3ZlciIpLmxlbmd0aCkgfHwgKDEgPT09IHIuZGF0YSgiYmd2aWRlbyIpID8gcHVuY2hncy5Ud2VlbkxpdGUudG8oci5maW5kKCIucnMtZnVsbHZpZGVvLWNvdmVyIiksIC4xLCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZTNEOiAiYXV0byIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkgOiBwdW5jaGdzLlR3ZWVuTGl0ZS50byhyLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLCAuMSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS50byhyLmZpbmQoImlmcmFtZSIpLCAuMSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKSwgLTEgIT0gZS5kYXRhICYmIDMgIT0gZS5kYXRhICYmIChvLnZpZGVvcGxheWluZyA9ICExLCBvLnRvbnBhdXNlID0gITEsIFYociwgbyksIHQudHJpZ2dlcigic3RhcnR0aW1lciIpLCBvLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsIGIocywgInlvdXR1YmUiLCByLmRhdGEoKSkpLCBudWxsICE9IG8uY3VycmVudExheWVyVmlkZW9Jc1BsYXlpbmcgJiYgby5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZy5hdHRyKCJpZCIpICE9IHIuYXR0cigiaWQiKSB8fCBJLnVuVG9nZ2xlU3RhdGUobC52aWRlb3RvZ2dsZWRieSkpLCAwID09IGUuZGF0YSAmJiAxID09IHIuZGF0YSgibmV4dHNsaWRlYXRlbmQiKSA/IChUKCksIHIuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwgMSksIG8uYy5yZXZuZXh0KCksIFYociwgbykpIDogKFYociwgbyksIG8udmlkZW9wbGF5aW5nID0gITEsIHQudHJpZ2dlcigic3RhcnR0aW1lciIpLCBvLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsIGIocywgInlvdXR1YmUiLCByLmRhdGEoKSkpLCBudWxsICE9IG8uY3VycmVudExheWVyVmlkZW9Jc1BsYXlpbmcgJiYgby5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZy5hdHRyKCJpZCIpICE9IHIuYXR0cigiaWQiKSB8fCBJLnVuVG9nZ2xlU3RhdGUobC52aWRlb3RvZ2dsZWRieSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uUmVhZHk6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCwgYSA9IEkuaXNfbW9iaWxlKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSByLmhhc0NsYXNzKCJ0cC12aWRlb2xheWVyIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGEgfHwgSS5pc1NhZmFyaTExKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG8gPSBpICYmICJvZmYiICE9PSByLmRhdGEoImF1dG9wbGF5Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyLmhhc0NsYXNzKCJycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikgfHwgbykgJiYgKGEgJiYgaSB8fCAodCA9ICEwLCBzLnNldFZvbHVtZSgwKSwgci5kYXRhKCJ2b2x1bWUiLCAibXV0ZSIpLCBzLm11dGUoKSwgY2xlYXJUaW1lb3V0KHIuZGF0YSgibW9iaWxldmlkZW90aW1yIikpLCByLmRhdGEoIm1vYmlsZXZpZGVvdGltciIsIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLnBsYXlWaWRlbygpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDUwMCkpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdCB8fCAibXV0ZSIgIT0gci5kYXRhKCJ2b2x1bWUiKSB8fCAocy5zZXRWb2x1bWUoMCksIHMubXV0ZSgpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZCA9IGwudmlkZW9yYXRlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyLmRhdGEoInZpZGVvc3RhcnQiKSwgci5hZGRDbGFzcygicnMtYXBpcmVhZHkiKSwgbnVsbCAhPSBkICYmIGUudGFyZ2V0LnNldFBsYXliYWNrUmF0ZShwYXJzZUZsb2F0KGQpKSwgci5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS51bmJpbmQoImNsaWNrIiksIHIuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfIHx8IHMucGxheVZpZGVvKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIHIuZGF0YSgic3RhcnR2aWRlb25vdyIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGwucGxheWVyLnBsYXlWaWRlbygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IGooci5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSk7IC0gMSAhPSBuICYmIGwucGxheWVyLnNlZWtUbyhuKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByLmRhdGEoInZpZGVvbGlzdGVuZXJleGlzdCIsIDEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICByLmRhdGEoInBsYXllciIsIHMpOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAidmltZW8iOgogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGksIHUgPSB0LmF0dHIoInNyYyIpLCBwID0ge30sIHYgPSB1LCBjID0gLyhbXiY9XSspPShbXiZdKikvZzsgaSA9IGMuZXhlYyh2KTspIHBbZGVjb2RlVVJJQ29tcG9uZW50KGlbMV0pXSA9IGRlY29kZVVSSUNvbXBvbmVudChpWzJdKTsKICAgICAgICAgICAgICAgICAgICB1ID0gKHUgPSBudWxsICE9IHAucGxheWVyX2lkID8gdS5yZXBsYWNlKHAucGxheWVyX2lkLCBhKSA6IHUgKyAiJnBsYXllcl9pZD0iICsgYSkucmVwbGFjZSgvJmFwaT0wfCZhcGk9MS9nLCAiIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIG0gPSBJLmlzX21vYmlsZSgpLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gci5kYXRhKCJhdXRvcGxheSIpLAogICAgICAgICAgICAgICAgICAgICAgICB5ID0gKHIuZGF0YSgidm9sdW1lIiksIG0gfHwgSS5pc1NhZmFyaTExKCkpOwogICAgICAgICAgICAgICAgICAgIHIuaGFzQ2xhc3MoInJzLWJhY2tncm91bmQtdmlkZW8tbGF5ZXIiKSwgKGcgPSAib24iID09PSBnIHx8ICJ0cnVlIiA9PT0gZyB8fCAhMCA9PT0gZykgJiYgeSAmJiAodSArPSAiP2F1dG9wbGF5PTEmYXV0b3BhdXNlPTAmbXV0ZWQ9MSZiYWNrZ3JvdW5kPTEmcGxheXNpbmxpbmU9MSIsIHIuZGF0YSh7CiAgICAgICAgICAgICAgICAgICAgICAgIHZpbWVvcGxheXNpbmxpbmU6ICEwLAogICAgICAgICAgICAgICAgICAgICAgICB2b2x1bWU6ICJtdXRlIgogICAgICAgICAgICAgICAgICAgIH0pKSwgdC5hdHRyKCJzcmMiLCB1KSwgcyA9IHIuZmluZCgiaWZyYW1lIilbMF0sIGpRdWVyeSgiIyIgKyBhKSwgci5kYXRhKCJ2aW1lb3BsYXllciIpID8gaCA9IHIuZGF0YSgidmltZW9wbGF5ZXIiKSA6IChoID0gbmV3IFZpbWVvLlBsYXllcihhKSwgci5kYXRhKCJ2aW1lb3BsYXllciIsIGgpKSwgaC5vbigibG9hZGVkIiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHt9OwogICAgICAgICAgICAgICAgICAgICAgICBoLmdldFZpZGVvV2lkdGgoKS50aGVuKGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQud2lkdGggPSBlLCB2b2lkIDAgIT09IHQud2lkdGggJiYgdm9pZCAwICE9PSB0LmhlaWdodCAmJiAoci5kYXRhKCJhc3BlY3RyYXRpbyIsIHQud2lkdGggKyAiOiIgKyB0LmhlaWdodCksIHIuZGF0YSgidmltZW9wbGF5ZXJsb2FkZWQiLCAhMCksIHcobywgcikpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBoLmdldFZpZGVvSGVpZ2h0KCkudGhlbihmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0LmhlaWdodCA9IGUsIHZvaWQgMCAhPT0gdC53aWR0aCAmJiB2b2lkIDAgIT09IHQuaGVpZ2h0ICYmIChyLmRhdGEoImFzcGVjdHJhdGlvIiwgdC53aWR0aCArICI6IiArIHQuaGVpZ2h0KSwgci5kYXRhKCJ2aW1lb3BsYXllcmxvYWRlZCIsICEwKSwgdyhvLCByKSkKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9KSwgci5hZGRDbGFzcygicnMtYXBpcmVhZHkiKSwgaC5vbigicGxheSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgci5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiLCAwKSwgcHVuY2hncy5Ud2VlbkxpdGUudG8oci5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUudG8oci5maW5kKCJpZnJhbWUiKSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICJibG9jayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgICAgICAgICAgfSksIG8uYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9udmlkZW9wbGF5IiwgYihoLCAidmltZW8iLCByLmRhdGEoKSkpLCBvLnZpZGVvcGxheWluZyA9ICEwLCB4KHIsIG8pLCBuID8gby5jLnRyaWdnZXIoInN0b3B0aW1lciIpIDogby52aWRlb3BsYXlpbmcgPSAhMSwgci5kYXRhKCJ2aW1lb3BsYXlzaW5saW5lIikgfHwgKCJtdXRlIiA9PSByLmRhdGEoInZvbHVtZSIpIHx8IEkubGFzdFRvZ2dsZVN0YXRlKHIuZGF0YSgidmlkZW9tdXRldG9nZ2xlZGJ5IikpIHx8ICEwID09PSBvLmdsb2JhbG11dGUgPyBoLnNldFZvbHVtZSgwKSA6IGguc2V0Vm9sdW1lKHBhcnNlSW50KHIuZGF0YSgidm9sdW1lIiksIDApIC8gMTAwIHx8IC43NSksIEkudG9nZ2xlU3RhdGUobC52aWRlb3RvZ2dsZWRieSkpCiAgICAgICAgICAgICAgICAgICAgfSksIGgub24oInRpbWV1cGRhdGUiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gaihyLmRhdGEoInZpZGVvZW5kYXQiKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyLmRhdGEoImN1cnJlbnR0aW1lIiwgZS5zZWNvbmRzKSwgMCAhPSB0ICYmIE1hdGguYWJzKHQgLSBlLnNlY29uZHMpIDwgMSAmJiB0ID4gZS5zZWNvbmRzICYmIDEgIT0gci5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaC5wbGF5KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSBqKHIuZGF0YSgidmlkZW9zdGFydGF0IikpOyAtIDEgIT0gYSAmJiBoLnNldEN1cnJlbnRUaW1lKGEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgMSA9PSByLmRhdGEoIm5leHRzbGlkZWF0ZW5kIikgJiYgKHIuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwgMSksIHIuZGF0YSgibmV4dHNsaWRlY2FsbGVkIiwgMSksIG8uYy5yZXZuZXh0KCkpLCBoLnBhdXNlKCkKICAgICAgICAgICAgICAgICAgICB9KSwgaC5vbigiZW5kZWQiLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIFYociwgbyksIG8udmlkZW9wbGF5aW5nID0gITEsIG8uYy50cmlnZ2VyKCJzdGFydHRpbWVyIiksIG8uYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9udmlkZW9zdG9wIiwgYihoLCAidmltZW8iLCByLmRhdGEoKSkpLCAxID09IHIuZGF0YSgibmV4dHNsaWRlYXRlbmQiKSAmJiAoci5kYXRhKCJuZXh0c2xpZGVhdGVuZC10cmlnZ2VyZWQiLCAxKSwgby5jLnJldm5leHQoKSksIG51bGwgIT0gby5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyAmJiBvLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nLmF0dHIoImlkIikgIT0gci5hdHRyKCJpZCIpIHx8IEkudW5Ub2dnbGVTdGF0ZShsLnZpZGVvdG9nZ2xlZGJ5KQogICAgICAgICAgICAgICAgICAgIH0pLCBoLm9uKCJwYXVzZSIsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgKCJvbiIgPT0gci5kYXRhKCJzaG93Y292ZXJvbnBhdXNlIikgJiYgMCA8IHIuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoIHx8IDEgPT09IHIuZGF0YSgiYmd2aWRlbyIpICYmIDAgPCByLmZpbmQoIi5ycy1mdWxsdmlkZW8tY292ZXIiKS5sZW5ndGgpICYmICgxID09PSByLmRhdGEoImJndmlkZW8iKSA/IHB1bmNoZ3MuVHdlZW5MaXRlLnRvKHIuZmluZCgiLnJzLWZ1bGx2aWRlby1jb3ZlciIpLCAuMSwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZTogcHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0CiAgICAgICAgICAgICAgICAgICAgICAgIH0pIDogcHVuY2hncy5Ud2VlbkxpdGUudG8oci5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwgLjEsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgICAgICB9KSwgcHVuY2hncy5Ud2VlbkxpdGUudG8oci5maW5kKCJpZnJhbWUiKSwgLjEsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9BbHBoYTogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgICAgICAgICB9KSksIG8udmlkZW9wbGF5aW5nID0gITEsIG8udG9ucGF1c2UgPSAhMSwgVihyLCBvKSwgby5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSwgby5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3N0b3AiLCBiKGgsICJ2aW1lbyIsIHIuZGF0YSgpKSksIG51bGwgIT0gby5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyAmJiBvLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nLmF0dHIoImlkIikgIT0gci5hdHRyKCJpZCIpIHx8IEkudW5Ub2dnbGVTdGF0ZShsLnZpZGVvdG9nZ2xlZGJ5KQogICAgICAgICAgICAgICAgICAgIH0pLCByLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLnVuYmluZCgiY2xpY2siKSwgci5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFfKSByZXR1cm4gaC5wbGF5KCksICExCiAgICAgICAgICAgICAgICAgICAgfSksIHIuZGF0YSgic3RhcnR2aWRlb25vdyIpICYmIChoLnBsYXkoKSwgLTEgIT0gKGYgPSBqKHIuZGF0YSgidmlkZW9zdGFydGF0IikpKSAmJiBoLnNldEN1cnJlbnRUaW1lKGYpKSwgci5kYXRhKCJ2aWRlb2xpc3RlbmVyZXhpc3QiLCAxKQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGYgPSBqKHIuZGF0YSgidmlkZW9zdGFydGF0IikpOwogICAgICAgICAgICAgICAgc3dpdGNoIChsLnZpZGVvdHlwZSkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgInlvdXR1YmUiOgogICAgICAgICAgICAgICAgICAgICAgICBlICYmIChsLnBsYXllci5wbGF5VmlkZW8oKSwgLTEgIT0gZiAmJiBsLnBsYXllci5zZWVrVG8oKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgInZpbWVvIjoKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGg7CiAgICAgICAgICAgICAgICAgICAgICAgIGUgJiYgKChoID0gci5kYXRhKCJ2aW1lb3BsYXllciIpKS5wbGF5KCksIC0xICE9IGYgJiYgaC5zZWVrVG8oZikpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIFQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgZG9jdW1lbnQuZXhpdEZ1bGxzY3JlZW4gPyBkb2N1bWVudC5leGl0RnVsbHNjcmVlbigpIDogZG9jdW1lbnQubW96Q2FuY2VsRnVsbFNjcmVlbiA/IGRvY3VtZW50Lm1vekNhbmNlbEZ1bGxTY3JlZW4oKSA6IGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuICYmIGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCkKICAgICAgICB9LAogICAgICAgIGsgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGlmICh2b2lkIDAgIT09IHdpbmRvdy5mdWxsU2NyZWVuKSByZXR1cm4gd2luZG93LmZ1bGxTY3JlZW47CiAgICAgICAgICAgICAgICB2YXIgZSA9IDU7CiAgICAgICAgICAgICAgICByZXR1cm4galF1ZXJ5LmJyb3dzZXIud2Via2l0ICYmIC9BcHBsZSBDb21wdXRlci8udGVzdChuYXZpZ2F0b3IudmVuZG9yKSAmJiAoZSA9IDQyKSwgc2NyZWVuLndpZHRoID09IHdpbmRvdy5pbm5lcldpZHRoICYmIE1hdGguYWJzKHNjcmVlbi5oZWlnaHQgLSB3aW5kb3cuaW5uZXJIZWlnaHQpIDwgZQogICAgICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICAgIH0sCiAgICAgICAgUSA9IGZ1bmN0aW9uKG8sIGQsIGUpIHsKICAgICAgICAgICAgaWYgKF8gJiYgMSA9PSBvLmRhdGEoImRpc2FibGV2aWRlb29ubW9iaWxlIikpIHJldHVybiAhMTsKICAgICAgICAgICAgdmFyIG4gPSBvLmRhdGEoKSwKICAgICAgICAgICAgICAgIHQgPSAiaHRtbDUiID09IG4uYXVkaW8gPyAiYXVkaW8iIDogInZpZGVvIiwKICAgICAgICAgICAgICAgIGEgPSBvLmZpbmQodCksCiAgICAgICAgICAgICAgICByID0gYVswXSwKICAgICAgICAgICAgICAgIGkgPSBhLnBhcmVudCgpLAogICAgICAgICAgICAgICAgbCA9IG4udmlkZW9sb29wLAogICAgICAgICAgICAgICAgcyA9ICJsb29wYW5kbm9zbGlkZXN0b3AiICE9IGw7CiAgICAgICAgICAgIGlmIChsID0gImxvb3AiID09IGwgfHwgImxvb3BhbmRub3NsaWRlc3RvcCIgPT0gbCwgaS5kYXRhKCJtZXRhbG9hZGVkIiwgMSksIDEgIT0gby5kYXRhKCJiZ3ZpZGVvIikgfHwgIm5vbmUiICE9PSBuLnZpZGVvbG9vcCAmJiAhMSAhPT0gbi52aWRlb2xvb3AgfHwgKHMgPSAhMSksIG51bGwgPT0gYS5hdHRyKCJjb250cm9sIikgJiYgKDAgIT0gby5maW5kKCIudHAtdmlkZW8tcGxheS1idXR0b24iKS5sZW5ndGggfHwgXyB8fCBvLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtdmlkZW8tcGxheS1idXR0b24iPjxpIGNsYXNzPSJyZXZpY29uLXJpZ2h0LWRpciI+PC9pPjxzcGFuIGNsYXNzPSJ0cC1yZXZzdG9wIj4mbmJzcDs8L3NwYW4+PC9kaXY+JyksIG8uZmluZCgidmlkZW8sIC50cC1wb3N0ZXIsIC50cC12aWRlby1wbGF5LWJ1dHRvbiIpLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIG8uaGFzQ2xhc3MoInZpZGVvaXNwbGF5aW5nIikgPyByLnBhdXNlKCkgOiByLnBsYXkoKQogICAgICAgICAgICAgICAgfSkpLCAxID09IG8uZGF0YSgiZm9yY2Vjb3ZlciIpIHx8IG8uaGFzQ2xhc3MoImZ1bGxzY3JlZW52aWRlbyIpIHx8IDEgPT0gby5kYXRhKCJiZ3ZpZGVvIikpCiAgICAgICAgICAgICAgICBpZiAoMSA9PSBvLmRhdGEoImZvcmNlY292ZXIiKSB8fCAxID09IG8uZGF0YSgiYmd2aWRlbyIpKSB7CiAgICAgICAgICAgICAgICAgICAgaS5hZGRDbGFzcygiZnVsbGNvdmVyZWR2aWRlbyIpOwogICAgICAgICAgICAgICAgICAgIHZhciB1ID0gby5kYXRhKCJhc3BlY3RyYXRpbyIpOwogICAgICAgICAgICAgICAgICAgIHZvaWQgMCAhPT0gdSAmJiAxICE9IHUuc3BsaXQoIjoiKS5sZW5ndGggfHwgby5kYXRhKCJhc3BlY3RyYXRpbyIsICIxNjo5IiksIEkucHJlcGFyZUNvdmVyZWRWaWRlbyhkLCBvKQogICAgICAgICAgICAgICAgfSBlbHNlIGkuYWRkQ2xhc3MoImZ1bGxzY3JlZW52aWRlbyIpOwogICAgICAgICAgICB2YXIgcCA9IG8uZmluZCgiLnRwLXZpZC1wbGF5LXBhdXNlIilbMF0sCiAgICAgICAgICAgICAgICB2ID0gby5maW5kKCIudHAtdmlkLW11dGUiKVswXSwKICAgICAgICAgICAgICAgIGMgPSBvLmZpbmQoIi50cC12aWQtZnVsbC1zY3JlZW4iKVswXSwKICAgICAgICAgICAgICAgIG0gPSBvLmZpbmQoIi50cC1zZWVrLWJhciIpWzBdLAogICAgICAgICAgICAgICAgZyA9IG8uZmluZCgiLnRwLXZvbHVtZS1iYXIiKVswXTsKICAgICAgICAgICAgbnVsbCAhPSBwICYmIEEocCwgImNsaWNrIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAxID09IHIucGF1c2VkID8gci5wbGF5KCkgOiByLnBhdXNlKCkKICAgICAgICAgICAgfSksIG51bGwgIT0gdiAmJiBBKHYsICJjbGljayIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgMCA9PSByLm11dGVkID8gKHIubXV0ZWQgPSAhMCwgdi5pbm5lckhUTUwgPSAiVW5tdXRlIikgOiAoci5tdXRlZCA9ICExLCB2LmlubmVySFRNTCA9ICJNdXRlIikKICAgICAgICAgICAgfSksIG51bGwgIT0gYyAmJiBjICYmIEEoYywgImNsaWNrIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByLnJlcXVlc3RGdWxsc2NyZWVuID8gci5yZXF1ZXN0RnVsbHNjcmVlbigpIDogci5tb3pSZXF1ZXN0RnVsbFNjcmVlbiA/IHIubW96UmVxdWVzdEZ1bGxTY3JlZW4oKSA6IHIud2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4gJiYgci53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbigpCiAgICAgICAgICAgIH0pLCBudWxsICE9IG0gJiYgKEEobSwgImNoYW5nZSIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSByLmR1cmF0aW9uICogKG0udmFsdWUgLyAxMDApOwogICAgICAgICAgICAgICAgci5jdXJyZW50VGltZSA9IGUKICAgICAgICAgICAgfSksIEEobSwgIm1vdXNlZG93biIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgby5hZGRDbGFzcygic2Vla2JhcmRyYWdnZWQiKSwgci5wYXVzZSgpCiAgICAgICAgICAgIH0pLCBBKG0sICJtb3VzZXVwIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBvLnJlbW92ZUNsYXNzKCJzZWVrYmFyZHJhZ2dlZCIpLCByLnBsYXkoKQogICAgICAgICAgICB9KSksIEEociwgImNhbnBsYXl0aHJvdWdoIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBJLnByZUxvYWRBdWRpb0RvbmUobywgZCwgImNhbnBsYXl0aHJvdWdoIikKICAgICAgICAgICAgfSksIEEociwgImNhbnBsYXkiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIEkucHJlTG9hZEF1ZGlvRG9uZShvLCBkLCAiY2FucGxheSIpCiAgICAgICAgICAgIH0pLCBBKHIsICJwcm9ncmVzcyIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgSS5wcmVMb2FkQXVkaW9Eb25lKG8sIGQsICJwcm9ncmVzcyIpCiAgICAgICAgICAgIH0pLCBBKHIsICJ0aW1ldXBkYXRlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IDEwMCAvIHIuZHVyYXRpb24gKiByLmN1cnJlbnRUaW1lLAogICAgICAgICAgICAgICAgICAgIHQgPSBqKG8uZGF0YSgidmlkZW9lbmRhdCIpKSwKICAgICAgICAgICAgICAgICAgICBhID0gci5jdXJyZW50VGltZTsKICAgICAgICAgICAgICAgIGlmIChudWxsICE9IG0gJiYgKG0udmFsdWUgPSBlKSwgMCAhPSB0ICYmIC0xICE9IHQgJiYgTWF0aC5hYnModCAtIGEpIDw9IC4zICYmIGEgPCB0ICYmIDEgIT0gby5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiKSkKICAgICAgICAgICAgICAgICAgICBpZiAobCkgewogICAgICAgICAgICAgICAgICAgICAgICByLnBsYXkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBqKG8uZGF0YSgidmlkZW9zdGFydGF0IikpOyAtIDEgIT0gaSAmJiAoci5jdXJyZW50VGltZSA9IGkpCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIDEgPT0gby5kYXRhKCJuZXh0c2xpZGVhdGVuZCIpICYmIChvLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsIDEpLCBvLmRhdGEoIm5leHRzbGlkZWNhbGxlZCIsIDEpLCBkLmp1c3RfY2FsbGVkX25leHRzbGlkZV9hdF9odG1sdGltZXIgPSAhMCwgZC5jLnJldm5leHQoKSwgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZC5qdXN0X2NhbGxlZF9uZXh0c2xpZGVfYXRfaHRtbHRpbWVyID0gITEKICAgICAgICAgICAgICAgICAgICB9LCAxZTMpKSwgci5wYXVzZSgpCiAgICAgICAgICAgIH0pLCBudWxsICE9IGcgJiYgQShnLCAiY2hhbmdlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByLnZvbHVtZSA9IGcudmFsdWUKICAgICAgICAgICAgfSksIEEociwgInBsYXkiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIG8uZGF0YSgibmV4dHNsaWRlY2FsbGVkIiwgMCk7CiAgICAgICAgICAgICAgICB2YXIgZSA9IG8uZGF0YSgidm9sdW1lIik7CiAgICAgICAgICAgICAgICBlID0gbnVsbCAhPSBlICYmICJtdXRlIiAhPSBlID8gcGFyc2VGbG9hdChlKSAvIDEwMCA6IGUsIEkuaXNfbW9iaWxlKCkgfHwgSS5pc1NhZmFyaTExKCkgfHwgKCEwID09PSBkLmdsb2JhbG11dGUgPyByLm11dGVkID0gITAgOiByLm11dGVkID0gITEsIDEgPCBlICYmIChlIC89IDEwMCksICJtdXRlIiA9PSBlID8gci5tdXRlZCA9ICEwIDogbnVsbCAhPSBlICYmIChyLnZvbHVtZSA9IGUpKSwgby5hZGRDbGFzcygidmlkZW9pc3BsYXlpbmciKTsKICAgICAgICAgICAgICAgIHZhciB0ID0gImh0bWw1IiA9PSBuLmF1ZGlvID8gImF1ZGlvIiA6ICJ2aWRlbyI7CiAgICAgICAgICAgICAgICB4KG8sIGQpLCBzICYmICJhdWRpbyIgIT0gdCA/IChkLnZpZGVvcGxheWluZyA9ICEwLCBkLmMudHJpZ2dlcigic3RvcHRpbWVyIiksIGQuYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9udmlkZW9wbGF5IiwgYihyLCAiaHRtbDUiLCBuKSkpIDogKGQudmlkZW9wbGF5aW5nID0gITEsICJhdWRpbyIgIT0gdCAmJiBkLmMudHJpZ2dlcigic3RhcnR0aW1lciIpLCBkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsIGIociwgImh0bWw1IiwgbikpKSwgcHVuY2hncy5Ud2VlbkxpdGUudG8oby5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDAsCiAgICAgICAgICAgICAgICAgICAgZm9yY2UzRDogImF1dG8iLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgfSksIHB1bmNoZ3MuVHdlZW5MaXRlLnRvKG8uZmluZCh0KSwgLjMsIHsKICAgICAgICAgICAgICAgICAgICBhdXRvQWxwaGE6IDEsCiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogImJsb2NrIiwKICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmFyIGEgPSBvLmZpbmQoIi50cC12aWQtcGxheS1wYXVzZSIpWzBdLAogICAgICAgICAgICAgICAgICAgIGkgPSBvLmZpbmQoIi50cC12aWQtbXV0ZSIpWzBdOwogICAgICAgICAgICAgICAgbnVsbCAhPSBhICYmIChhLmlubmVySFRNTCA9ICJQYXVzZSIpLCBudWxsICE9IGkgJiYgci5tdXRlZCAmJiAoaS5pbm5lckhUTUwgPSAiVW5tdXRlIiksIEkudG9nZ2xlU3RhdGUobi52aWRlb3RvZ2dsZWRieSkKICAgICAgICAgICAgfSksIEEociwgInBhdXNlIiwgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgdmFyIHQgPSAiaHRtbDUiID09IG4uYXVkaW8gPyAiYXVkaW8iIDogInZpZGVvIjsKICAgICAgICAgICAgICAgICFrKCkgJiYgMCA8IG8uZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoICYmICJvbiIgPT0gby5kYXRhKCJzaG93Y292ZXJvbnBhdXNlIikgJiYgIW8uaGFzQ2xhc3MoInNlZWtiYXJkcmFnZ2VkIikgJiYgKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKG8uZmluZCgiLnRwLXZpZGVvcG9zdGVyIiksIC4zLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAxLAogICAgICAgICAgICAgICAgICAgIGZvcmNlM0Q6ICJhdXRvIiwKICAgICAgICAgICAgICAgICAgICBlYXNlOiBwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQKICAgICAgICAgICAgICAgIH0pLCBwdW5jaGdzLlR3ZWVuTGl0ZS50byhvLmZpbmQodCksIC4zLCB7CiAgICAgICAgICAgICAgICAgICAgYXV0b0FscGhhOiAwLAogICAgICAgICAgICAgICAgICAgIGVhc2U6IHB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dAogICAgICAgICAgICAgICAgfSkpLCBvLnJlbW92ZUNsYXNzKCJ2aWRlb2lzcGxheWluZyIpLCBkLnZpZGVvcGxheWluZyA9ICExLCBWKG8sIGQpLCAiYXVkaW8iICE9IHQgJiYgZC5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSwgZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3N0b3AiLCBiKHIsICJodG1sNSIsIG8uZGF0YSgpKSk7CiAgICAgICAgICAgICAgICB2YXIgYSA9IG8uZmluZCgiLnRwLXZpZC1wbGF5LXBhdXNlIilbMF07CiAgICAgICAgICAgICAgICBudWxsICE9IGEgJiYgKGEuaW5uZXJIVE1MID0gIlBsYXkiKSwgbnVsbCAhPSBkLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nICYmIGQuY3VycmVudExheWVyVmlkZW9Jc1BsYXlpbmcuYXR0cigiaWQiKSAhPSBvLmF0dHIoImlkIikgfHwgSS51blRvZ2dsZVN0YXRlKG4udmlkZW90b2dnbGVkYnkpCiAgICAgICAgICAgIH0pLCBBKHIsICJlbmRlZCIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgVCgpLCBWKG8sIGQpLCBkLnZpZGVvcGxheWluZyA9ICExLCBWKG8sIGQpLCAiYXVkaW8iICE9IHQgJiYgZC5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSwgZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3N0b3AiLCBiKHIsICJodG1sNSIsIG8uZGF0YSgpKSksICEwID09PSBvLmRhdGEoIm5leHRzbGlkZWF0ZW5kIikgJiYgMCA8IHIuY3VycmVudFRpbWUgJiYgKDEgPT0gIWQuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lciAmJiAoby5kYXRhKCJuZXh0c2xpZGVhdGVuZC10cmlnZ2VyZWQiLCAxKSwgZC5jLnJldm5leHQoKSwgZC5qdXN0X2NhbGxlZF9uZXh0c2xpZGVfYXRfaHRtbHRpbWVyID0gITApLCBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGQuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lciA9ICExCiAgICAgICAgICAgICAgICB9LCAxNTAwKSksIG8ucmVtb3ZlQ2xhc3MoInZpZGVvaXNwbGF5aW5nIikKICAgICAgICAgICAgfSkKICAgICAgICB9LAogICAgICAgIHggPSBmdW5jdGlvbihlLCBhKSB7CiAgICAgICAgICAgIG51bGwgPT0gYS5wbGF5aW5ndmlkZW9zICYmIChhLnBsYXlpbmd2aWRlb3MgPSBuZXcgQXJyYXkpLCBlLmRhdGEoInN0b3BhbGx2aWRlb3MiKSAmJiBudWxsICE9IGEucGxheWluZ3ZpZGVvcyAmJiAwIDwgYS5wbGF5aW5ndmlkZW9zLmxlbmd0aCAmJiAoYS5sYXN0cGxheWVkdmlkZW9zID0galF1ZXJ5LmV4dGVuZCghMCwgW10sIGEucGxheWluZ3ZpZGVvcyksIGpRdWVyeS5lYWNoKGEucGxheWluZ3ZpZGVvcywgZnVuY3Rpb24oZSwgdCkgewogICAgICAgICAgICAgICAgSS5zdG9wVmlkZW8odCwgYSkKICAgICAgICAgICAgfSkpLCBhLnBsYXlpbmd2aWRlb3MucHVzaChlKSwgYS5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyA9IGUKICAgICAgICB9LAogICAgICAgIFYgPSBmdW5jdGlvbihlLCB0KSB7CiAgICAgICAgICAgIG51bGwgIT0gdC5wbGF5aW5ndmlkZW9zICYmIDAgPD0galF1ZXJ5LmluQXJyYXkoZSwgdC5wbGF5aW5ndmlkZW9zKSAmJiB0LnBsYXlpbmd2aWRlb3Muc3BsaWNlKGpRdWVyeS5pbkFycmF5KGUsIHQucGxheWluZ3ZpZGVvcyksIDEpCiAgICAgICAgfQp9KGpRdWVyeSk7CiEgZnVuY3Rpb24odCkgewogICAgIm9iamVjdCIgPT0gdHlwZW9mIGV4cG9ydHMgJiYgInVuZGVmaW5lZCIgIT0gdHlwZW9mIG1vZHVsZSA/IG1vZHVsZS5leHBvcnRzID0gdCgpIDogImZ1bmN0aW9uIiA9PSB0eXBlb2YgZGVmaW5lICYmIGRlZmluZS5hbWQgPyBkZWZpbmUoW10sIHQpIDogKCJ1bmRlZmluZWQiICE9IHR5cGVvZiB3aW5kb3cgPyB3aW5kb3cgOiAidW5kZWZpbmVkIiAhPSB0eXBlb2YgZ2xvYmFsID8gZ2xvYmFsIDogInVuZGVmaW5lZCIgIT0gdHlwZW9mIHNlbGYgPyBzZWxmIDogdGhpcykuQ2hhcnQgPSB0KCkKfShmdW5jdGlvbigpIHsKICAgIHJldHVybiBmdW5jdGlvbiByKG8sIHMsIGwpIHsKICAgICAgICBmdW5jdGlvbiB1KGUsIHQpIHsKICAgICAgICAgICAgaWYgKCFzW2VdKSB7CiAgICAgICAgICAgICAgICBpZiAoIW9bZV0pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9ICJmdW5jdGlvbiIgPT0gdHlwZW9mIHJlcXVpcmUgJiYgcmVxdWlyZTsKICAgICAgICAgICAgICAgICAgICBpZiAoIXQgJiYgaSkgcmV0dXJuIGkoZSwgITApOwogICAgICAgICAgICAgICAgICAgIGlmIChkKSByZXR1cm4gZChlLCAhMCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBuZXcgRXJyb3IoIkNhbm5vdCBmaW5kIG1vZHVsZSAnIiArIGUgKyAiJyIpOwogICAgICAgICAgICAgICAgICAgIHRocm93IG4uY29kZSA9ICJNT0RVTEVfTk9UX0ZPVU5EIiwgbgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmFyIGEgPSBzW2VdID0gewogICAgICAgICAgICAgICAgICAgIGV4cG9ydHM6IHt9CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgb1tlXVswXS5jYWxsKGEuZXhwb3J0cywgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB1KG9bZV1bMV1bdF0gfHwgdCkKICAgICAgICAgICAgICAgIH0sIGEsIGEuZXhwb3J0cywgciwgbywgcywgbCkKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gc1tlXS5leHBvcnRzCiAgICAgICAgfQogICAgICAgIGZvciAodmFyIGQgPSAiZnVuY3Rpb24iID09IHR5cGVvZiByZXF1aXJlICYmIHJlcXVpcmUsIHQgPSAwOyB0IDwgbC5sZW5ndGg7IHQrKykgdShsW3RdKTsKICAgICAgICByZXR1cm4gdQogICAgfSh7CiAgICAgICAgMTogW2Z1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgZnVuY3Rpb24gbih0KSB7CiAgICAgICAgICAgICAgICBpZiAodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gWzAsIDAsIDBdLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQubWF0Y2goL14jKFthLWZBLUYwLTldezN9KSQvaSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKG4pCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IG5bMV0sIGEgPSAwOyBhIDwgZS5sZW5ndGg7IGErKykgZVthXSA9IHBhcnNlSW50KG5bYV0gKyBuW2FdLCAxNik7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAobiA9IHQubWF0Y2goL14jKFthLWZBLUYwLTldezZ9KSQvaSkpCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobiA9IG5bMV0sIGEgPSAwOyBhIDwgZS5sZW5ndGg7IGErKykgZVthXSA9IHBhcnNlSW50KG4uc2xpY2UoMiAqIGEsIDIgKiBhICsgMiksIDE2KTsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChuID0gdC5tYXRjaCgvXnJnYmE/XChccyooWystXT9cZCspXHMqLFxzKihbKy1dP1xkKylccyosXHMqKFsrLV0/XGQrKVxzKig/OixccyooWystXT9bXGRcLl0rKVxzKik/XCkkL2kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IDA7IGEgPCBlLmxlbmd0aDsgYSsrKSBlW2FdID0gcGFyc2VJbnQoblthICsgMV0pOwogICAgICAgICAgICAgICAgICAgICAgICBpID0gcGFyc2VGbG9hdChuWzRdKQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobiA9IHQubWF0Y2goL15yZ2JhP1woXHMqKFsrLV0/W1xkXC5dKylcJVxzKixccyooWystXT9bXGRcLl0rKVwlXHMqLFxzKihbKy1dP1tcZFwuXSspXCVccyooPzosXHMqKFsrLV0/W1xkXC5dKylccyopP1wpJC9pKSkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGEgPSAwOyBhIDwgZS5sZW5ndGg7IGErKykgZVthXSA9IE1hdGgucm91bmQoMi41NSAqIHBhcnNlRmxvYXQoblthICsgMV0pKTsKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHBhcnNlRmxvYXQobls0XSkKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG4gPSB0Lm1hdGNoKC8oXHcrKS8pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgidHJhbnNwYXJlbnQiID09IG5bMV0pIHJldHVybiBbMCwgMCwgMCwgMF07CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghKGUgPSBoW25bMV1dKSkgcmV0dXJuCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGEgPSAwOyBhIDwgZS5sZW5ndGg7IGErKykgZVthXSA9IHUoZVthXSwgMCwgMjU1KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaSA9IGkgfHwgMCA9PSBpID8gdShpLCAwLCAxKSA6IDEsIGVbM10gPSBpLCBlCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGEodCkgewogICAgICAgICAgICAgICAgaWYgKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHQubWF0Y2goL15oc2xhP1woXHMqKFsrLV0/XGQrKSg/OmRlZyk/XHMqLFxzKihbKy1dP1tcZFwuXSspJVxzKixccyooWystXT9bXGRcLl0rKSVccyooPzosXHMqKFsrLV0/W1xkXC5dKylccyopP1wpLyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBwYXJzZUZsb2F0KGVbNF0pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3UocGFyc2VJbnQoZVsxXSksIDAsIDM2MCksIHUocGFyc2VGbG9hdChlWzJdKSwgMCwgMTAwKSwgdShwYXJzZUZsb2F0KGVbM10pLCAwLCAxMDApLCB1KGlzTmFOKGkpID8gMSA6IGksIDAsIDEpXQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gcih0KSB7CiAgICAgICAgICAgICAgICBpZiAodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdC5tYXRjaCgvXmh3YlwoXHMqKFsrLV0/XGQrKSg/OmRlZyk/XHMqLFxzKihbKy1dP1tcZFwuXSspJVxzKixccyooWystXT9bXGRcLl0rKSVccyooPzosXHMqKFsrLV0/W1xkXC5dKylccyopP1wpLyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBwYXJzZUZsb2F0KGVbNF0pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3UocGFyc2VJbnQoZVsxXSksIDAsIDM2MCksIHUocGFyc2VGbG9hdChlWzJdKSwgMCwgMTAwKSwgdShwYXJzZUZsb2F0KGVbM10pLCAwLCAxMDApLCB1KGlzTmFOKGkpID8gMSA6IGksIDAsIDEpXQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gbyh0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSBlICYmIChlID0gdm9pZCAwICE9PSB0WzNdID8gdFszXSA6IDEpLCAicmdiYSgiICsgdFswXSArICIsICIgKyB0WzFdICsgIiwgIiArIHRbMl0gKyAiLCAiICsgZSArICIpIgogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBzKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiAicmdiYSgiICsgTWF0aC5yb3VuZCh0WzBdIC8gMjU1ICogMTAwKSArICIlLCAiICsgTWF0aC5yb3VuZCh0WzFdIC8gMjU1ICogMTAwKSArICIlLCAiICsgTWF0aC5yb3VuZCh0WzJdIC8gMjU1ICogMTAwKSArICIlLCAiICsgKGUgfHwgdFszXSB8fCAxKSArICIpIgogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBsKHQsIGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiB2b2lkIDAgPT09IGUgJiYgKGUgPSB2b2lkIDAgIT09IHRbM10gPyB0WzNdIDogMSksICJoc2xhKCIgKyB0WzBdICsgIiwgIiArIHRbMV0gKyAiJSwgIiArIHRbMl0gKyAiJSwgIiArIGUgKyAiKSIKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gdSh0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgoZSwgdCksIGkpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGQodCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0LnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOwogICAgICAgICAgICAgICAgcmV0dXJuIGUubGVuZ3RoIDwgMiA/ICIwIiArIGUgOiBlCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdmFyIGggPSB0KDUpOwogICAgICAgICAgICBlLmV4cG9ydHMgPSB7CiAgICAgICAgICAgICAgICBnZXRSZ2JhOiBuLAogICAgICAgICAgICAgICAgZ2V0SHNsYTogYSwKICAgICAgICAgICAgICAgIGdldFJnYjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gbih0KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSAmJiBlLnNsaWNlKDAsIDMpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZ2V0SHNsOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBhKHQpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlICYmIGUuc2xpY2UoMCwgMykKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBnZXRId2I6IHIsCiAgICAgICAgICAgICAgICBnZXRBbHBoYTogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gbih0KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSA/IGVbM10gOiAoZSA9IGEodCkpID8gZVszXSA6IChlID0gcih0KSkgPyBlWzNdIDogdm9pZCAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaGV4U3RyaW5nOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICIjIiArIGQodFswXSkgKyBkKHRbMV0pICsgZCh0WzJdKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHJnYlN0cmluZzogZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlIDwgMSB8fCB0WzNdICYmIHRbM10gPCAxID8gbyh0LCBlKSA6ICJyZ2IoIiArIHRbMF0gKyAiLCAiICsgdFsxXSArICIsICIgKyB0WzJdICsgIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcmdiYVN0cmluZzogbywKICAgICAgICAgICAgICAgIHBlcmNlbnRTdHJpbmc6IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSA8IDEgfHwgdFszXSAmJiB0WzNdIDwgMSA/IHModCwgZSkgOiAicmdiKCIgKyBNYXRoLnJvdW5kKHRbMF0gLyAyNTUgKiAxMDApICsgIiUsICIgKyBNYXRoLnJvdW5kKHRbMV0gLyAyNTUgKiAxMDApICsgIiUsICIgKyBNYXRoLnJvdW5kKHRbMl0gLyAyNTUgKiAxMDApICsgIiUpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHBlcmNlbnRhU3RyaW5nOiBzLAogICAgICAgICAgICAgICAgaHNsU3RyaW5nOiBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUgPCAxIHx8IHRbM10gJiYgdFszXSA8IDEgPyBsKHQsIGUpIDogImhzbCgiICsgdFswXSArICIsICIgKyB0WzFdICsgIiUsICIgKyB0WzJdICsgIiUpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbGFTdHJpbmc6IGwsCiAgICAgICAgICAgICAgICBod2JTdHJpbmc6IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSBlICYmIChlID0gdm9pZCAwICE9PSB0WzNdID8gdFszXSA6IDEpLCAiaHdiKCIgKyB0WzBdICsgIiwgIiArIHRbMV0gKyAiJSwgIiArIHRbMl0gKyAiJSIgKyAodm9pZCAwICE9PSBlICYmIDEgIT09IGUgPyAiLCAiICsgZSA6ICIiKSArICIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGtleXdvcmQ6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gY1t0LnNsaWNlKDAsIDMpXQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgICB2YXIgYyA9IHt9OwogICAgICAgICAgICBmb3IgKHZhciBmIGluIGgpIGNbaFtmXV0gPSBmCiAgICAgICAgfSwgewogICAgICAgICAgICA1OiA1CiAgICAgICAgfV0sCiAgICAgICAgMjogW2Z1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgdmFyIGQgPSB0KDQpLAogICAgICAgICAgICAgICAgbiA9IHQoMSksCiAgICAgICAgICAgICAgICBvID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IGluc3RhbmNlb2YgbyA/IHQgOiB0aGlzIGluc3RhbmNlb2YgbyA/ICh0aGlzLnZhbGlkID0gITEsIHRoaXMudmFsdWVzID0gewogICAgICAgICAgICAgICAgICAgICAgICByZ2I6IFswLCAwLCAwXSwKICAgICAgICAgICAgICAgICAgICAgICAgaHNsOiBbMCwgMCwgMF0sCiAgICAgICAgICAgICAgICAgICAgICAgIGhzdjogWzAsIDAsIDBdLAogICAgICAgICAgICAgICAgICAgICAgICBod2I6IFswLCAwLCAwXSwKICAgICAgICAgICAgICAgICAgICAgICAgY215azogWzAsIDAsIDAsIDBdLAogICAgICAgICAgICAgICAgICAgICAgICBhbHBoYTogMQogICAgICAgICAgICAgICAgICAgIH0sIHZvaWQoInN0cmluZyIgPT0gdHlwZW9mIHQgPyAoZSA9IG4uZ2V0UmdiYSh0KSkgPyB0aGlzLnNldFZhbHVlcygicmdiIiwgZSkgOiAoZSA9IG4uZ2V0SHNsYSh0KSkgPyB0aGlzLnNldFZhbHVlcygiaHNsIiwgZSkgOiAoZSA9IG4uZ2V0SHdiKHQpKSAmJiB0aGlzLnNldFZhbHVlcygiaHdiIiwgZSkgOiAib2JqZWN0IiA9PSB0eXBlb2YgdCAmJiAodm9pZCAwICE9PSAoZSA9IHQpLnIgfHwgdm9pZCAwICE9PSBlLnJlZCA/IHRoaXMuc2V0VmFsdWVzKCJyZ2IiLCBlKSA6IHZvaWQgMCAhPT0gZS5sIHx8IHZvaWQgMCAhPT0gZS5saWdodG5lc3MgPyB0aGlzLnNldFZhbHVlcygiaHNsIiwgZSkgOiB2b2lkIDAgIT09IGUudiB8fCB2b2lkIDAgIT09IGUudmFsdWUgPyB0aGlzLnNldFZhbHVlcygiaHN2IiwgZSkgOiB2b2lkIDAgIT09IGUudyB8fCB2b2lkIDAgIT09IGUud2hpdGVuZXNzID8gdGhpcy5zZXRWYWx1ZXMoImh3YiIsIGUpIDogdm9pZCAwID09PSBlLmMgJiYgdm9pZCAwID09PSBlLmN5YW4gfHwgdGhpcy5zZXRWYWx1ZXMoImNteWsiLCBlKSkpKSA6IG5ldyBvKHQpOwogICAgICAgICAgICAgICAgICAgIHZhciBlCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICBvLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgIGlzVmFsaWQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcmdiOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRTcGFjZSgicmdiIiwgYXJndW1lbnRzKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0U3BhY2UoImhzbCIsIGFyZ3VtZW50cykKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBoc3Y6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldFNwYWNlKCJoc3YiLCBhcmd1bWVudHMpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHdiOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRTcGFjZSgiaHdiIiwgYXJndW1lbnRzKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNteWs6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldFNwYWNlKCJjbXlrIiwgYXJndW1lbnRzKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHJnYkFycmF5OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy52YWx1ZXMucmdiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHNsQXJyYXk6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbHVlcy5oc2wKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBoc3ZBcnJheTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVzLmhzdgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGh3YkFycmF5OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMudmFsdWVzOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAxICE9PSB0LmFscGhhID8gdC5od2IuY29uY2F0KFt0LmFscGhhXSkgOiB0Lmh3YgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNteWtBcnJheTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVzLmNteWsKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByZ2JhQXJyYXk6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy52YWx1ZXM7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQucmdiLmNvbmNhdChbdC5hbHBoYV0pCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHNsYUFycmF5OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMudmFsdWVzOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0LmhzbC5jb25jYXQoW3QuYWxwaGFdKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGFscGhhOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdCA/IHRoaXMudmFsdWVzLmFscGhhIDogKHRoaXMuc2V0VmFsdWVzKCJhbHBoYSIsIHQpLCB0aGlzKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHJlZDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldENoYW5uZWwoInJnYiIsIDAsIHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZ3JlZW46IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJyZ2IiLCAxLCB0KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGJsdWU6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJyZ2IiLCAyLCB0KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGh1ZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0ICYmICh0ID0gKHQgJT0gMzYwKSA8IDAgPyAzNjAgKyB0IDogdCksIHRoaXMuc2V0Q2hhbm5lbCgiaHNsIiwgMCwgdCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBzYXR1cmF0aW9uOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0Q2hhbm5lbCgiaHNsIiwgMSwgdCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBsaWdodG5lc3M6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJoc2wiLCAyLCB0KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHNhdHVyYXRpb252OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0Q2hhbm5lbCgiaHN2IiwgMSwgdCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB3aGl0ZW5lc3M6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJod2IiLCAxLCB0KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGJsYWNrbmVzczogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldENoYW5uZWwoImh3YiIsIDIsIHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdmFsdWU6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJoc3YiLCAyLCB0KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGN5YW46IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJjbXlrIiwgMCwgdCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBtYWdlbnRhOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0Q2hhbm5lbCgiY215ayIsIDEsIHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgeWVsbG93OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0Q2hhbm5lbCgiY215ayIsIDIsIHQpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYmxhY2s6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRDaGFubmVsKCJjbXlrIiwgMywgdCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBoZXhTdHJpbmc6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuLmhleFN0cmluZyh0aGlzLnZhbHVlcy5yZ2IpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcmdiU3RyaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbi5yZ2JTdHJpbmcodGhpcy52YWx1ZXMucmdiLCB0aGlzLnZhbHVlcy5hbHBoYSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByZ2JhU3RyaW5nOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbi5yZ2JhU3RyaW5nKHRoaXMudmFsdWVzLnJnYiwgdGhpcy52YWx1ZXMuYWxwaGEpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcGVyY2VudFN0cmluZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4ucGVyY2VudFN0cmluZyh0aGlzLnZhbHVlcy5yZ2IsIHRoaXMudmFsdWVzLmFscGhhKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbFN0cmluZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4uaHNsU3RyaW5nKHRoaXMudmFsdWVzLmhzbCwgdGhpcy52YWx1ZXMuYWxwaGEpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHNsYVN0cmluZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4uaHNsYVN0cmluZyh0aGlzLnZhbHVlcy5oc2wsIHRoaXMudmFsdWVzLmFscGhhKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGh3YlN0cmluZzogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4uaHdiU3RyaW5nKHRoaXMudmFsdWVzLmh3YiwgdGhpcy52YWx1ZXMuYWxwaGEpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAga2V5d29yZDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG4ua2V5d29yZCh0aGlzLnZhbHVlcy5yZ2IsIHRoaXMudmFsdWVzLmFscGhhKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHJnYk51bWJlcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLnZhbHVlcy5yZ2I7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRbMF0gPDwgMTYgfCB0WzFdIDw8IDggfCB0WzJdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbHVtaW5vc2l0eTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IHRoaXMudmFsdWVzLnJnYiwgZSA9IFtdLCBpID0gMDsgaSA8IHQubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSB0W2ldIC8gMjU1OwogICAgICAgICAgICAgICAgICAgICAgICBlW2ldID0gbiA8PSAuMDM5MjggPyBuIC8gMTIuOTIgOiBNYXRoLnBvdygobiArIC4wNTUpIC8gMS4wNTUsIDIuNCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC4yMTI2ICogZVswXSArIC43MTUyICogZVsxXSArIC4wNzIyICogZVsyXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNvbnRyYXN0OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLmx1bWlub3NpdHkoKSwKICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHQubHVtaW5vc2l0eSgpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBpIDwgZSA/IChlICsgLjA1KSAvIChpICsgLjA1KSA6IChpICsgLjA1KSAvIChlICsgLjA1KQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGxldmVsOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLmNvbnRyYXN0KHQpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiA3LjEgPD0gZSA/ICJBQUEiIDogNC41IDw9IGUgPyAiQUEiIDogIiIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBkYXJrOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMudmFsdWVzLnJnYjsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gKDI5OSAqIHRbMF0gKyA1ODcgKiB0WzFdICsgMTE0ICogdFsyXSkgLyAxZTMgPCAxMjgKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBsaWdodDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF0aGlzLmRhcmsoKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG5lZ2F0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgdCA9IFtdLCBlID0gMDsgZSA8IDM7IGUrKykgdFtlXSA9IDI1NSAtIHRoaXMudmFsdWVzLnJnYltlXTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRWYWx1ZXMoInJnYiIsIHQpLCB0aGlzCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbGlnaHRlbjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy52YWx1ZXMuaHNsOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlWzJdICs9IGVbMl0gKiB0LCB0aGlzLnNldFZhbHVlcygiaHNsIiwgZSksIHRoaXMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBkYXJrZW46IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMudmFsdWVzLmhzbDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVsyXSAtPSBlWzJdICogdCwgdGhpcy5zZXRWYWx1ZXMoImhzbCIsIGUpLCB0aGlzCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgc2F0dXJhdGU6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMudmFsdWVzLmhzbDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVsxXSArPSBlWzFdICogdCwgdGhpcy5zZXRWYWx1ZXMoImhzbCIsIGUpLCB0aGlzCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZGVzYXR1cmF0ZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy52YWx1ZXMuaHNsOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlWzFdIC09IGVbMV0gKiB0LCB0aGlzLnNldFZhbHVlcygiaHNsIiwgZSksIHRoaXMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB3aGl0ZW46IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IHRoaXMudmFsdWVzLmh3YjsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVsxXSArPSBlWzFdICogdCwgdGhpcy5zZXRWYWx1ZXMoImh3YiIsIGUpLCB0aGlzCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgYmxhY2tlbjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy52YWx1ZXMuaHdiOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBlWzJdICs9IGVbMl0gKiB0LCB0aGlzLnNldFZhbHVlcygiaHdiIiwgZSksIHRoaXMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBncmV5c2NhbGU6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy52YWx1ZXMucmdiLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gLjMgKiB0WzBdICsgLjU5ICogdFsxXSArIC4xMSAqIHRbMl07CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0VmFsdWVzKCJyZ2IiLCBbZSwgZSwgZV0pLCB0aGlzCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgY2xlYXJlcjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy52YWx1ZXMuYWxwaGE7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0VmFsdWVzKCJhbHBoYSIsIGUgLSBlICogdCksIHRoaXMKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBvcGFxdWVyOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLnZhbHVlcy5hbHBoYTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXRWYWx1ZXMoImFscGhhIiwgZSArIGUgKiB0KSwgdGhpcwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHJvdGF0ZTogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy52YWx1ZXMuaHNsLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gKGVbMF0gKyB0KSAlIDM2MDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZVswXSA9IGkgPCAwID8gMzYwICsgaSA6IGksIHRoaXMuc2V0VmFsdWVzKCJoc2wiLCBlKSwgdGhpcwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG1peDogZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0gdGhpcywKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHQsCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSB2b2lkIDAgPT09IGUgPyAuNSA6IGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSAyICogYSAtIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBpLmFscGhhKCkgLSBuLmFscGhhKCksCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSAoKHIgKiBvID09IC0xID8gciA6IChyICsgbykgLyAoMSArIHIgKiBvKSkgKyAxKSAvIDIsCiAgICAgICAgICAgICAgICAgICAgICAgIGwgPSAxIC0gczsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZ2IocyAqIGkucmVkKCkgKyBsICogbi5yZWQoKSwgcyAqIGkuZ3JlZW4oKSArIGwgKiBuLmdyZWVuKCksIHMgKiBpLmJsdWUoKSArIGwgKiBuLmJsdWUoKSkuYWxwaGEoaS5hbHBoYSgpICogYSArIG4uYWxwaGEoKSAqICgxIC0gYSkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgdG9KU09OOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZ2IoKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNsb25lOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCwgZSwgaSA9IG5ldyBvLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gdGhpcy52YWx1ZXMsCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBpLnZhbHVlczsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciByIGluIG4pIG4uaGFzT3duUHJvcGVydHkocikgJiYgKHQgPSBuW3JdLCAiW29iamVjdCBBcnJheV0iID09PSAoZSA9IHt9LnRvU3RyaW5nLmNhbGwodCkpID8gYVtyXSA9IHQuc2xpY2UoMCkgOiAiW29iamVjdCBOdW1iZXJdIiA9PT0gZSA/IGFbcl0gPSB0IDogY29uc29sZS5lcnJvcigidW5leHBlY3RlZCBjb2xvciB2YWx1ZToiLCB0KSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSwgby5wcm90b3R5cGUuc3BhY2VzID0gewogICAgICAgICAgICAgICAgcmdiOiBbInJlZCIsICJncmVlbiIsICJibHVlIl0sCiAgICAgICAgICAgICAgICBoc2w6IFsiaHVlIiwgInNhdHVyYXRpb24iLCAibGlnaHRuZXNzIl0sCiAgICAgICAgICAgICAgICBoc3Y6IFsiaHVlIiwgInNhdHVyYXRpb24iLCAidmFsdWUiXSwKICAgICAgICAgICAgICAgIGh3YjogWyJodWUiLCAid2hpdGVuZXNzIiwgImJsYWNrbmVzcyJdLAogICAgICAgICAgICAgICAgY215azogWyJjeWFuIiwgIm1hZ2VudGEiLCAieWVsbG93IiwgImJsYWNrIl0KICAgICAgICAgICAgfSwgby5wcm90b3R5cGUubWF4ZXMgPSB7CiAgICAgICAgICAgICAgICByZ2I6IFsyNTUsIDI1NSwgMjU1XSwKICAgICAgICAgICAgICAgIGhzbDogWzM2MCwgMTAwLCAxMDBdLAogICAgICAgICAgICAgICAgaHN2OiBbMzYwLCAxMDAsIDEwMF0sCiAgICAgICAgICAgICAgICBod2I6IFszNjAsIDEwMCwgMTAwXSwKICAgICAgICAgICAgICAgIGNteWs6IFsxMDAsIDEwMCwgMTAwLCAxMDBdCiAgICAgICAgICAgIH0sIG8ucHJvdG90eXBlLmdldFZhbHVlcyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSB0aGlzLnZhbHVlcywgaSA9IHt9LCBuID0gMDsgbiA8IHQubGVuZ3RoOyBuKyspIGlbdC5jaGFyQXQobildID0gZVt0XVtuXTsKICAgICAgICAgICAgICAgIHJldHVybiAxICE9PSBlLmFscGhhICYmIChpLmEgPSBlLmFscGhhKSwgaQogICAgICAgICAgICB9LCBvLnByb3RvdHlwZS5zZXRWYWx1ZXMgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSwgbiwgYSA9IHRoaXMudmFsdWVzLAogICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzLnNwYWNlcywKICAgICAgICAgICAgICAgICAgICBvID0gdGhpcy5tYXhlcywKICAgICAgICAgICAgICAgICAgICBzID0gMTsKICAgICAgICAgICAgICAgIGlmICh0aGlzLnZhbGlkID0gITAsICJhbHBoYSIgPT09IHQpIHMgPSBlOwogICAgICAgICAgICAgICAgZWxzZSBpZiAoZS5sZW5ndGgpIGFbdF0gPSBlLnNsaWNlKDAsIHQubGVuZ3RoKSwgcyA9IGVbdC5sZW5ndGhdOwogICAgICAgICAgICAgICAgZWxzZSBpZiAodm9pZCAwICE9PSBlW3QuY2hhckF0KDApXSkgewogICAgICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCB0Lmxlbmd0aDsgaSsrKSBhW3RdW2ldID0gZVt0LmNoYXJBdChpKV07CiAgICAgICAgICAgICAgICAgICAgcyA9IGUuYQogICAgICAgICAgICAgICAgfSBlbHNlIGlmICh2b2lkIDAgIT09IGVbclt0XVswXV0pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbCA9IHJbdF07CiAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHQubGVuZ3RoOyBpKyspIGFbdF1baV0gPSBlW2xbaV1dOwogICAgICAgICAgICAgICAgICAgIHMgPSBlLmFscGhhCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoYS5hbHBoYSA9IE1hdGgubWF4KDAsIE1hdGgubWluKDEsIHZvaWQgMCA9PT0gcyA/IGEuYWxwaGEgOiBzKSksICJhbHBoYSIgPT09IHQpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCB0Lmxlbmd0aDsgaSsrKSBuID0gTWF0aC5tYXgoMCwgTWF0aC5taW4ob1t0XVtpXSwgYVt0XVtpXSkpLCBhW3RdW2ldID0gTWF0aC5yb3VuZChuKTsKICAgICAgICAgICAgICAgIGZvciAodmFyIHUgaW4gcikgdSAhPT0gdCAmJiAoYVt1XSA9IGRbdF1bdV0oYVt0XSkpOwogICAgICAgICAgICAgICAgcmV0dXJuICEwCiAgICAgICAgICAgIH0sIG8ucHJvdG90eXBlLnNldFNwYWNlID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgdmFyIGkgPSBlWzBdOwogICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gaSA/IHRoaXMuZ2V0VmFsdWVzKHQpIDogKCJudW1iZXIiID09IHR5cGVvZiBpICYmIChpID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSkpLCB0aGlzLnNldFZhbHVlcyh0LCBpKSwgdGhpcykKICAgICAgICAgICAgfSwgby5wcm90b3R5cGUuc2V0Q2hhbm5lbCA9IGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgIHZhciBuID0gdGhpcy52YWx1ZXNbdF07CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSBpID8gbltlXSA6IChpID09PSBuW2VdIHx8IChuW2VdID0gaSwgdGhpcy5zZXRWYWx1ZXModCwgbikpLCB0aGlzKQogICAgICAgICAgICB9LCAidW5kZWZpbmVkIiAhPSB0eXBlb2Ygd2luZG93ICYmICh3aW5kb3cuQ29sb3IgPSBvKSwgZS5leHBvcnRzID0gbwogICAgICAgIH0sIHsKICAgICAgICAgICAgMTogMSwKICAgICAgICAgICAgNDogNAogICAgICAgIH1dLAogICAgICAgIDM6IFtmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgIGZ1bmN0aW9uIGEodCkgewogICAgICAgICAgICAgICAgdmFyIGUsIGksIG4gPSB0WzBdIC8gMjU1LAogICAgICAgICAgICAgICAgICAgIGEgPSB0WzFdIC8gMjU1LAogICAgICAgICAgICAgICAgICAgIHIgPSB0WzJdIC8gMjU1LAogICAgICAgICAgICAgICAgICAgIG8gPSBNYXRoLm1pbihuLCBhLCByKSwKICAgICAgICAgICAgICAgICAgICBzID0gTWF0aC5tYXgobiwgYSwgciksCiAgICAgICAgICAgICAgICAgICAgbCA9IHMgLSBvOwogICAgICAgICAgICAgICAgcmV0dXJuIHMgPT0gbyA/IGUgPSAwIDogbiA9PSBzID8gZSA9IChhIC0gcikgLyBsIDogYSA9PSBzID8gZSA9IDIgKyAociAtIG4pIC8gbCA6IHIgPT0gcyAmJiAoZSA9IDQgKyAobiAtIGEpIC8gbCksIChlID0gTWF0aC5taW4oNjAgKiBlLCAzNjApKSA8IDAgJiYgKGUgKz0gMzYwKSwgaSA9IChvICsgcykgLyAyLCBbZSwgMTAwICogKHMgPT0gbyA/IDAgOiBpIDw9IC41ID8gbCAvIChzICsgbykgOiBsIC8gKDIgLSBzIC0gbykpLCAxMDAgKiBpXQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBuKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gdFswXSwKICAgICAgICAgICAgICAgICAgICBhID0gdFsxXSwKICAgICAgICAgICAgICAgICAgICByID0gdFsyXSwKICAgICAgICAgICAgICAgICAgICBvID0gTWF0aC5taW4obiwgYSwgciksCiAgICAgICAgICAgICAgICAgICAgcyA9IE1hdGgubWF4KG4sIGEsIHIpLAogICAgICAgICAgICAgICAgICAgIGwgPSBzIC0gbzsKICAgICAgICAgICAgICAgIHJldHVybiBpID0gMCA9PSBzID8gMCA6IGwgLyBzICogMWUzIC8gMTAsIHMgPT0gbyA/IGUgPSAwIDogbiA9PSBzID8gZSA9IChhIC0gcikgLyBsIDogYSA9PSBzID8gZSA9IDIgKyAociAtIG4pIC8gbCA6IHIgPT0gcyAmJiAoZSA9IDQgKyAobiAtIGEpIC8gbCksIChlID0gTWF0aC5taW4oNjAgKiBlLCAzNjApKSA8IDAgJiYgKGUgKz0gMzYwKSwgW2UsIGksIHMgLyAyNTUgKiAxZTMgLyAxMF0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gbyh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRbMF0sCiAgICAgICAgICAgICAgICAgICAgaSA9IHRbMV0sCiAgICAgICAgICAgICAgICAgICAgbiA9IHRbMl07CiAgICAgICAgICAgICAgICByZXR1cm4gW2EodClbMF0sIDEgLyAyNTUgKiBNYXRoLm1pbihlLCBNYXRoLm1pbihpLCBuKSkgKiAxMDAsIDEwMCAqIChuID0gMSAtIDEgLyAyNTUgKiBNYXRoLm1heChlLCBNYXRoLm1heChpLCBuKSkpXQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBzKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpID0gdFswXSAvIDI1NSwKICAgICAgICAgICAgICAgICAgICBuID0gdFsxXSAvIDI1NSwKICAgICAgICAgICAgICAgICAgICBhID0gdFsyXSAvIDI1NTsKICAgICAgICAgICAgICAgIHJldHVybiBbMTAwICogKCgxIC0gaSAtIChlID0gTWF0aC5taW4oMSAtIGksIDEgLSBuLCAxIC0gYSkpKSAvICgxIC0gZSkgfHwgMCksIDEwMCAqICgoMSAtIG4gLSBlKSAvICgxIC0gZSkgfHwgMCksIDEwMCAqICgoMSAtIGEgLSBlKSAvICgxIC0gZSkgfHwgMCksIDEwMCAqIGVdCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGwodCkgewogICAgICAgICAgICAgICAgcmV0dXJuIFNbSlNPTi5zdHJpbmdpZnkodCldCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHUodCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0WzBdIC8gMjU1LAogICAgICAgICAgICAgICAgICAgIGkgPSB0WzFdIC8gMjU1LAogICAgICAgICAgICAgICAgICAgIG4gPSB0WzJdIC8gMjU1OwogICAgICAgICAgICAgICAgcmV0dXJuIFsxMDAgKiAoLjQxMjQgKiAoZSA9IC4wNDA0NSA8IGUgPyBNYXRoLnBvdygoZSArIC4wNTUpIC8gMS4wNTUsIDIuNCkgOiBlIC8gMTIuOTIpICsgLjM1NzYgKiAoaSA9IC4wNDA0NSA8IGkgPyBNYXRoLnBvdygoaSArIC4wNTUpIC8gMS4wNTUsIDIuNCkgOiBpIC8gMTIuOTIpICsgLjE4MDUgKiAobiA9IC4wNDA0NSA8IG4gPyBNYXRoLnBvdygobiArIC4wNTUpIC8gMS4wNTUsIDIuNCkgOiBuIC8gMTIuOTIpKSwgMTAwICogKC4yMTI2ICogZSArIC43MTUyICogaSArIC4wNzIyICogbiksIDEwMCAqICguMDE5MyAqIGUgKyAuMTE5MiAqIGkgKyAuOTUwNSAqIG4pXQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBkKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlID0gdSh0KSwKICAgICAgICAgICAgICAgICAgICBpID0gZVswXSwKICAgICAgICAgICAgICAgICAgICBuID0gZVsxXSwKICAgICAgICAgICAgICAgICAgICBhID0gZVsyXTsKICAgICAgICAgICAgICAgIHJldHVybiBuIC89IDEwMCwgYSAvPSAxMDguODgzLCBpID0gLjAwODg1NiA8IChpIC89IDk1LjA0NykgPyBNYXRoLnBvdyhpLCAxIC8gMykgOiA3Ljc4NyAqIGkgKyAxNiAvIDExNiwgWzExNiAqIChuID0gLjAwODg1NiA8IG4gPyBNYXRoLnBvdyhuLCAxIC8gMykgOiA3Ljc4NyAqIG4gKyAxNiAvIDExNikgLSAxNiwgNTAwICogKGkgLSBuKSwgMjAwICogKG4gLSAoYSA9IC4wMDg4NTYgPCBhID8gTWF0aC5wb3coYSwgMSAvIDMpIDogNy43ODcgKiBhICsgMTYgLyAxMTYpKV0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gaCh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgYSwgciwgbyA9IHRbMF0gLyAzNjAsCiAgICAgICAgICAgICAgICAgICAgcyA9IHRbMV0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgbCA9IHRbMl0gLyAxMDA7CiAgICAgICAgICAgICAgICBpZiAoMCA9PSBzKSByZXR1cm4gW3IgPSAyNTUgKiBsLCByLCByXTsKICAgICAgICAgICAgICAgIGUgPSAyICogbCAtIChpID0gbCA8IC41ID8gbCAqICgxICsgcykgOiBsICsgcyAtIGwgKiBzKSwgYSA9IFswLCAwLCAwXTsKICAgICAgICAgICAgICAgIGZvciAodmFyIHUgPSAwOyB1IDwgMzsgdSsrKShuID0gbyArIDEgLyAzICogLSh1IC0gMSkpIDwgMCAmJiBuKyssIDEgPCBuICYmIG4tLSwgciA9IDYgKiBuIDwgMSA/IGUgKyA2ICogKGkgLSBlKSAqIG4gOiAyICogbiA8IDEgPyBpIDogMyAqIG4gPCAyID8gZSArIChpIC0gZSkgKiAoMiAvIDMgLSBuKSAqIDYgOiBlLCBhW3VdID0gMjU1ICogcjsKICAgICAgICAgICAgICAgIHJldHVybiBhCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGModCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0WzBdIC8gNjAsCiAgICAgICAgICAgICAgICAgICAgaSA9IHRbMV0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgbiA9IHRbMl0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgYSA9IE1hdGguZmxvb3IoZSkgJSA2LAogICAgICAgICAgICAgICAgICAgIHIgPSBlIC0gTWF0aC5mbG9vcihlKSwKICAgICAgICAgICAgICAgICAgICBvID0gMjU1ICogbiAqICgxIC0gaSksCiAgICAgICAgICAgICAgICAgICAgcyA9IDI1NSAqIG4gKiAoMSAtIGkgKiByKSwKICAgICAgICAgICAgICAgICAgICBsID0gMjU1ICogbiAqICgxIC0gaSAqICgxIC0gcikpOwogICAgICAgICAgICAgICAgbiAqPSAyNTU7CiAgICAgICAgICAgICAgICBzd2l0Y2ggKGEpIHsKICAgICAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbbiwgbCwgb107CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3MsIG4sIG9dOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtvLCBuLCBsXTsKICAgICAgICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbbywgcywgbl07CiAgICAgICAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW2wsIG8sIG5dOwogICAgICAgICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtuLCBvLCBzXQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBmKHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCBvID0gdFswXSAvIDM2MCwKICAgICAgICAgICAgICAgICAgICBzID0gdFsxXSAvIDEwMCwKICAgICAgICAgICAgICAgICAgICBsID0gdFsyXSAvIDEwMCwKICAgICAgICAgICAgICAgICAgICB1ID0gcyArIGw7CiAgICAgICAgICAgICAgICBzd2l0Y2ggKDEgPCB1ICYmIChzIC89IHUsIGwgLz0gdSksIG4gPSA2ICogbyAtIChlID0gTWF0aC5mbG9vcig2ICogbykpLCAwICE9ICgxICYgZSkgJiYgKG4gPSAxIC0gbiksIGEgPSBzICsgbiAqICgoaSA9IDEgLSBsKSAtIHMpLCBlKSB7CiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBpLAogICAgICAgICAgICAgICAgICAgIGcgPSBhLAogICAgICAgICAgICAgICAgICAgIGIgPSBzOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBhLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gaSwKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IHM7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBzLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gaSwKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IGE7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBzLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gYSwKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IGk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBhLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gcywKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IGk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBpLAogICAgICAgICAgICAgICAgICAgICAgICBnID0gcywKICAgICAgICAgICAgICAgICAgICAgICAgYiA9IGEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBbMjU1ICogciwgMjU1ICogZywgMjU1ICogYl0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gbSh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSA9IHRbMF0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgaSA9IHRbMV0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgbiA9IHRbMl0gLyAxMDAsCiAgICAgICAgICAgICAgICAgICAgYSA9IHRbM10gLyAxMDA7CiAgICAgICAgICAgICAgICByZXR1cm4gWzI1NSAqICgxIC0gTWF0aC5taW4oMSwgZSAqICgxIC0gYSkgKyBhKSksIDI1NSAqICgxIC0gTWF0aC5taW4oMSwgaSAqICgxIC0gYSkgKyBhKSksIDI1NSAqICgxIC0gTWF0aC5taW4oMSwgbiAqICgxIC0gYSkgKyBhKSldCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHAodCkgewogICAgICAgICAgICAgICAgdmFyIGUsIGksIG4sIGEgPSB0WzBdIC8gMTAwLAogICAgICAgICAgICAgICAgICAgIHIgPSB0WzFdIC8gMTAwLAogICAgICAgICAgICAgICAgICAgIG8gPSB0WzJdIC8gMTAwOwogICAgICAgICAgICAgICAgcmV0dXJuIGkgPSAtLjk2ODkgKiBhICsgMS44NzU4ICogciArIC4wNDE1ICogbywgbiA9IC4wNTU3ICogYSArIC0uMjA0ICogciArIDEuMDU3ICogbywgZSA9IC4wMDMxMzA4IDwgKGUgPSAzLjI0MDYgKiBhICsgLTEuNTM3MiAqIHIgKyAtLjQ5ODYgKiBvKSA/IDEuMDU1ICogTWF0aC5wb3coZSwgMSAvIDIuNCkgLSAuMDU1IDogZSAqPSAxMi45MiwgaSA9IC4wMDMxMzA4IDwgaSA/IDEuMDU1ICogTWF0aC5wb3coaSwgMSAvIDIuNCkgLSAuMDU1IDogaSAqPSAxMi45MiwgbiA9IC4wMDMxMzA4IDwgbiA/IDEuMDU1ICogTWF0aC5wb3cobiwgMSAvIDIuNCkgLSAuMDU1IDogbiAqPSAxMi45MiwgWzI1NSAqIChlID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgZSksIDEpKSwgMjU1ICogKGkgPSBNYXRoLm1pbihNYXRoLm1heCgwLCBpKSwgMSkpLCAyNTUgKiAobiA9IE1hdGgubWluKE1hdGgubWF4KDAsIG4pLCAxKSldCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHYodCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0WzBdLAogICAgICAgICAgICAgICAgICAgIGkgPSB0WzFdLAogICAgICAgICAgICAgICAgICAgIG4gPSB0WzJdOwogICAgICAgICAgICAgICAgcmV0dXJuIGkgLz0gMTAwLCBuIC89IDEwOC44ODMsIGUgPSAuMDA4ODU2IDwgKGUgLz0gOTUuMDQ3KSA/IE1hdGgucG93KGUsIDEgLyAzKSA6IDcuNzg3ICogZSArIDE2IC8gMTE2LCBbMTE2ICogKGkgPSAuMDA4ODU2IDwgaSA/IE1hdGgucG93KGksIDEgLyAzKSA6IDcuNzg3ICogaSArIDE2IC8gMTE2KSAtIDE2LCA1MDAgKiAoZSAtIGkpLCAyMDAgKiAoaSAtIChuID0gLjAwODg1NiA8IG4gPyBNYXRoLnBvdyhuLCAxIC8gMykgOiA3Ljc4NyAqIG4gKyAxNiAvIDExNikpXQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiB5KHQpIHsKICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByID0gdFswXSwKICAgICAgICAgICAgICAgICAgICBvID0gdFsxXSwKICAgICAgICAgICAgICAgICAgICBzID0gdFsyXTsKICAgICAgICAgICAgICAgIHJldHVybiBhID0gciA8PSA4ID8gKGkgPSAxMDAgKiByIC8gOTAzLjMpIC8gMTAwICogNy43ODcgKyAxNiAvIDExNiA6IChpID0gMTAwICogTWF0aC5wb3coKHIgKyAxNikgLyAxMTYsIDMpLCBNYXRoLnBvdyhpIC8gMTAwLCAxIC8gMykpLCBbZSA9IGUgLyA5NS4wNDcgPD0gLjAwODg1NiA/IGUgPSA5NS4wNDcgKiAobyAvIDUwMCArIGEgLSAxNiAvIDExNikgLyA3Ljc4NyA6IDk1LjA0NyAqIE1hdGgucG93KG8gLyA1MDAgKyBhLCAzKSwgaSwgbiA9IG4gLyAxMDguODgzIDw9IC4wMDg4NTkgPyBuID0gMTA4Ljg4MyAqIChhIC0gcyAvIDIwMCAtIDE2IC8gMTE2KSAvIDcuNzg3IDogMTA4Ljg4MyAqIE1hdGgucG93KGEgLSBzIC8gMjAwLCAzKV0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24geCh0KSB7CiAgICAgICAgICAgICAgICB2YXIgZSwgaSA9IHRbMF0sCiAgICAgICAgICAgICAgICAgICAgbiA9IHRbMV0sCiAgICAgICAgICAgICAgICAgICAgYSA9IHRbMl07CiAgICAgICAgICAgICAgICByZXR1cm4gKGUgPSAzNjAgKiBNYXRoLmF0YW4yKGEsIG4pIC8gMiAvIE1hdGguUEkpIDwgMCAmJiAoZSArPSAzNjApLCBbaSwgTWF0aC5zcXJ0KG4gKiBuICsgYSAqIGEpLCBlXQogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBfKHQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBwKHkodCkpCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGsodCkgewogICAgICAgICAgICAgICAgdmFyIGUsIGkgPSB0WzBdLAogICAgICAgICAgICAgICAgICAgIG4gPSB0WzFdOwogICAgICAgICAgICAgICAgcmV0dXJuIGUgPSB0WzJdIC8gMzYwICogMiAqIE1hdGguUEksIFtpLCBuICogTWF0aC5jb3MoZSksIG4gKiBNYXRoLnNpbihlKV0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gdyh0KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gTVt0XQogICAgICAgICAgICB9CiAgICAgICAgICAgIGUuZXhwb3J0cyA9IHsKICAgICAgICAgICAgICAgIHJnYjJoc2w6IGEsCiAgICAgICAgICAgICAgICByZ2IyaHN2OiBuLAogICAgICAgICAgICAgICAgcmdiMmh3YjogbywKICAgICAgICAgICAgICAgIHJnYjJjbXlrOiBzLAogICAgICAgICAgICAgICAgcmdiMmtleXdvcmQ6IGwsCiAgICAgICAgICAgICAgICByZ2IyeHl6OiB1LAogICAgICAgICAgICAgICAgcmdiMmxhYjogZCwKICAgICAgICAgICAgICAgIHJnYjJsY2g6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4geChkKHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbDJyZ2I6IGgsCiAgICAgICAgICAgICAgICBoc2wyaHN2OiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB0WzBdLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gdFsxXSAvIDEwMCwKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IHRbMl0gLyAxMDA7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDAgPT09IG4gPyBbMCwgMCwgMF0gOiBbZSwgMTAwICogKDIgKiAoaSAqPSAobiAqPSAyKSA8PSAxID8gbiA6IDIgLSBuKSAvIChuICsgaSkpLCAxMDAgKiAoKG4gKyBpKSAvIDIpXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbDJod2I6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbyhoKHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzbDJjbXlrOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMoaCh0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBoc2wya2V5d29yZDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBsKGgodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHN2MnJnYjogYywKICAgICAgICAgICAgICAgIGhzdjJoc2w6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiA9IHRbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSB0WzFdIC8gMTAwLAogICAgICAgICAgICAgICAgICAgICAgICByID0gdFsyXSAvIDEwMDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSA9IGEgKiByLCBbbiwgMTAwICogKGUgPSAoZSAvPSAoaSA9ICgyIC0gYSkgKiByKSA8PSAxID8gaSA6IDIgLSBpKSB8fCAwKSwgMTAwICogKGkgLz0gMildCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHN2Mmh3YjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBvKGModCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHN2MmNteWs6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcyhjKHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGhzdjJrZXl3b3JkOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGwoYyh0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBod2IycmdiOiBmLAogICAgICAgICAgICAgICAgaHdiMmhzbDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBhKGYodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHdiMmhzdjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuKGYodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgaHdiMmNteWs6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcyhmKHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGh3YjJrZXl3b3JkOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGwoZih0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjbXlrMnJnYjogbSwKICAgICAgICAgICAgICAgIGNteWsyaHNsOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEobSh0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBjbXlrMmhzdjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuKG0odCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgY215azJod2I6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbyhtKHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGNteWsya2V5d29yZDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBsKG0odCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAga2V5d29yZDJyZ2I6IHcsCiAgICAgICAgICAgICAgICBrZXl3b3JkMmhzbDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBhKHcodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAga2V5d29yZDJoc3Y6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbih3KHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGtleXdvcmQyaHdiOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8odyh0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBrZXl3b3JkMmNteWs6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcyh3KHQpKQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIGtleXdvcmQybGFiOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGQodyh0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBrZXl3b3JkMnh5ejogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB1KHcodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgeHl6MnJnYjogcCwKICAgICAgICAgICAgICAgIHh5ejJsYWI6IHYsCiAgICAgICAgICAgICAgICB4eXoybGNoOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHgodih0KSkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBsYWIyeHl6OiB5LAogICAgICAgICAgICAgICAgbGFiMnJnYjogXywKICAgICAgICAgICAgICAgIGxhYjJsY2g6IHgsCiAgICAgICAgICAgICAgICBsY2gybGFiOiBrLAogICAgICAgICAgICAgICAgbGNoMnh5ejogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB5KGsodCkpCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbGNoMnJnYjogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBfKGsodCkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHZhciBNID0gewogICAgICAgICAgICAgICAgICAgIGFsaWNlYmx1ZTogWzI0MCwgMjQ4LCAyNTVdLAogICAgICAgICAgICAgICAgICAgIGFudGlxdWV3aGl0ZTogWzI1MCwgMjM1LCAyMTVdLAogICAgICAgICAgICAgICAgICAgIGFxdWE6IFswLCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgYXF1YW1hcmluZTogWzEyNywgMjU1LCAyMTJdLAogICAgICAgICAgICAgICAgICAgIGF6dXJlOiBbMjQwLCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgYmVpZ2U6IFsyNDUsIDI0NSwgMjIwXSwKICAgICAgICAgICAgICAgICAgICBiaXNxdWU6IFsyNTUsIDIyOCwgMTk2XSwKICAgICAgICAgICAgICAgICAgICBibGFjazogWzAsIDAsIDBdLAogICAgICAgICAgICAgICAgICAgIGJsYW5jaGVkYWxtb25kOiBbMjU1LCAyMzUsIDIwNV0sCiAgICAgICAgICAgICAgICAgICAgYmx1ZTogWzAsIDAsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgYmx1ZXZpb2xldDogWzEzOCwgNDMsIDIyNl0sCiAgICAgICAgICAgICAgICAgICAgYnJvd246IFsxNjUsIDQyLCA0Ml0sCiAgICAgICAgICAgICAgICAgICAgYnVybHl3b29kOiBbMjIyLCAxODQsIDEzNV0sCiAgICAgICAgICAgICAgICAgICAgY2FkZXRibHVlOiBbOTUsIDE1OCwgMTYwXSwKICAgICAgICAgICAgICAgICAgICBjaGFydHJldXNlOiBbMTI3LCAyNTUsIDBdLAogICAgICAgICAgICAgICAgICAgIGNob2NvbGF0ZTogWzIxMCwgMTA1LCAzMF0sCiAgICAgICAgICAgICAgICAgICAgY29yYWw6IFsyNTUsIDEyNywgODBdLAogICAgICAgICAgICAgICAgICAgIGNvcm5mbG93ZXJibHVlOiBbMTAwLCAxNDksIDIzN10sCiAgICAgICAgICAgICAgICAgICAgY29ybnNpbGs6IFsyNTUsIDI0OCwgMjIwXSwKICAgICAgICAgICAgICAgICAgICBjcmltc29uOiBbMjIwLCAyMCwgNjBdLAogICAgICAgICAgICAgICAgICAgIGN5YW46IFswLCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgZGFya2JsdWU6IFswLCAwLCAxMzldLAogICAgICAgICAgICAgICAgICAgIGRhcmtjeWFuOiBbMCwgMTM5LCAxMzldLAogICAgICAgICAgICAgICAgICAgIGRhcmtnb2xkZW5yb2Q6IFsxODQsIDEzNCwgMTFdLAogICAgICAgICAgICAgICAgICAgIGRhcmtncmF5OiBbMTY5LCAxNjksIDE2OV0sCiAgICAgICAgICAgICAgICAgICAgZGFya2dyZWVuOiBbMCwgMTAwLCAwXSwKICAgICAgICAgICAgICAgICAgICBkYXJrZ3JleTogWzE2OSwgMTY5LCAxNjldLAogICAgICAgICAgICAgICAgICAgIGRhcmtraGFraTogWzE4OSwgMTgzLCAxMDddLAogICAgICAgICAgICAgICAgICAgIGRhcmttYWdlbnRhOiBbMTM5LCAwLCAxMzldLAogICAgICAgICAgICAgICAgICAgIGRhcmtvbGl2ZWdyZWVuOiBbODUsIDEwNywgNDddLAogICAgICAgICAgICAgICAgICAgIGRhcmtvcmFuZ2U6IFsyNTUsIDE0MCwgMF0sCiAgICAgICAgICAgICAgICAgICAgZGFya29yY2hpZDogWzE1MywgNTAsIDIwNF0sCiAgICAgICAgICAgICAgICAgICAgZGFya3JlZDogWzEzOSwgMCwgMF0sCiAgICAgICAgICAgICAgICAgICAgZGFya3NhbG1vbjogWzIzMywgMTUwLCAxMjJdLAogICAgICAgICAgICAgICAgICAgIGRhcmtzZWFncmVlbjogWzE0MywgMTg4LCAxNDNdLAogICAgICAgICAgICAgICAgICAgIGRhcmtzbGF0ZWJsdWU6IFs3MiwgNjEsIDEzOV0sCiAgICAgICAgICAgICAgICAgICAgZGFya3NsYXRlZ3JheTogWzQ3LCA3OSwgNzldLAogICAgICAgICAgICAgICAgICAgIGRhcmtzbGF0ZWdyZXk6IFs0NywgNzksIDc5XSwKICAgICAgICAgICAgICAgICAgICBkYXJrdHVycXVvaXNlOiBbMCwgMjA2LCAyMDldLAogICAgICAgICAgICAgICAgICAgIGRhcmt2aW9sZXQ6IFsxNDgsIDAsIDIxMV0sCiAgICAgICAgICAgICAgICAgICAgZGVlcHBpbms6IFsyNTUsIDIwLCAxNDddLAogICAgICAgICAgICAgICAgICAgIGRlZXBza3libHVlOiBbMCwgMTkxLCAyNTVdLAogICAgICAgICAgICAgICAgICAgIGRpbWdyYXk6IFsxMDUsIDEwNSwgMTA1XSwKICAgICAgICAgICAgICAgICAgICBkaW1ncmV5OiBbMTA1LCAxMDUsIDEwNV0sCiAgICAgICAgICAgICAgICAgICAgZG9kZ2VyYmx1ZTogWzMwLCAxNDQsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgZmlyZWJyaWNrOiBbMTc4LCAzNCwgMzRdLAogICAgICAgICAgICAgICAgICAgIGZsb3JhbHdoaXRlOiBbMjU1LCAyNTAsIDI0MF0sCiAgICAgICAgICAgICAgICAgICAgZm9yZXN0Z3JlZW46IFszNCwgMTM5LCAzNF0sCiAgICAgICAgICAgICAgICAgICAgZnVjaHNpYTogWzI1NSwgMCwgMjU1XSwKICAgICAgICAgICAgICAgICAgICBnYWluc2Jvcm86IFsyMjAsIDIyMCwgMjIwXSwKICAgICAgICAgICAgICAgICAgICBnaG9zdHdoaXRlOiBbMjQ4LCAyNDgsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgZ29sZDogWzI1NSwgMjE1LCAwXSwKICAgICAgICAgICAgICAgICAgICBnb2xkZW5yb2Q6IFsyMTgsIDE2NSwgMzJdLAogICAgICAgICAgICAgICAgICAgIGdyYXk6IFsxMjgsIDEyOCwgMTI4XSwKICAgICAgICAgICAgICAgICAgICBncmVlbjogWzAsIDEyOCwgMF0sCiAgICAgICAgICAgICAgICAgICAgZ3JlZW55ZWxsb3c6IFsxNzMsIDI1NSwgNDddLAogICAgICAgICAgICAgICAgICAgIGdyZXk6IFsxMjgsIDEyOCwgMTI4XSwKICAgICAgICAgICAgICAgICAgICBob25leWRldzogWzI0MCwgMjU1LCAyNDBdLAogICAgICAgICAgICAgICAgICAgIGhvdHBpbms6IFsyNTUsIDEwNSwgMTgwXSwKICAgICAgICAgICAgICAgICAgICBpbmRpYW5yZWQ6IFsyMDUsIDkyLCA5Ml0sCiAgICAgICAgICAgICAgICAgICAgaW5kaWdvOiBbNzUsIDAsIDEzMF0sCiAgICAgICAgICAgICAgICAgICAgaXZvcnk6IFsyNTUsIDI1NSwgMjQwXSwKICAgICAgICAgICAgICAgICAgICBraGFraTogWzI0MCwgMjMwLCAxNDBdLAogICAgICAgICAgICAgICAgICAgIGxhdmVuZGVyOiBbMjMwLCAyMzAsIDI1MF0sCiAgICAgICAgICAgICAgICAgICAgbGF2ZW5kZXJibHVzaDogWzI1NSwgMjQwLCAyNDVdLAogICAgICAgICAgICAgICAgICAgIGxhd25ncmVlbjogWzEyNCwgMjUyLCAwXSwKICAgICAgICAgICAgICAgICAgICBsZW1vbmNoaWZmb246IFsyNTUsIDI1MCwgMjA1XSwKICAgICAgICAgICAgICAgICAgICBsaWdodGJsdWU6IFsxNzMsIDIxNiwgMjMwXSwKICAgICAgICAgICAgICAgICAgICBsaWdodGNvcmFsOiBbMjQwLCAxMjgsIDEyOF0sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRjeWFuOiBbMjI0LCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRnb2xkZW5yb2R5ZWxsb3c6IFsyNTAsIDI1MCwgMjEwXSwKICAgICAgICAgICAgICAgICAgICBsaWdodGdyYXk6IFsyMTEsIDIxMSwgMjExXSwKICAgICAgICAgICAgICAgICAgICBsaWdodGdyZWVuOiBbMTQ0LCAyMzgsIDE0NF0sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRncmV5OiBbMjExLCAyMTEsIDIxMV0sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRwaW5rOiBbMjU1LCAxODIsIDE5M10sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRzYWxtb246IFsyNTUsIDE2MCwgMTIyXSwKICAgICAgICAgICAgICAgICAgICBsaWdodHNlYWdyZWVuOiBbMzIsIDE3OCwgMTcwXSwKICAgICAgICAgICAgICAgICAgICBsaWdodHNreWJsdWU6IFsxMzUsIDIwNiwgMjUwXSwKICAgICAgICAgICAgICAgICAgICBsaWdodHNsYXRlZ3JheTogWzExOSwgMTM2LCAxNTNdLAogICAgICAgICAgICAgICAgICAgIGxpZ2h0c2xhdGVncmV5OiBbMTE5LCAxMzYsIDE1M10sCiAgICAgICAgICAgICAgICAgICAgbGlnaHRzdGVlbGJsdWU6IFsxNzYsIDE5NiwgMjIyXSwKICAgICAgICAgICAgICAgICAgICBsaWdodHllbGxvdzogWzI1NSwgMjU1LCAyMjRdLAogICAgICAgICAgICAgICAgICAgIGxpbWU6IFswLCAyNTUsIDBdLAogICAgICAgICAgICAgICAgICAgIGxpbWVncmVlbjogWzUwLCAyMDUsIDUwXSwKICAgICAgICAgICAgICAgICAgICBsaW5lbjogWzI1MCwgMjQwLCAyMzBdLAogICAgICAgICAgICAgICAgICAgIG1hZ2VudGE6IFsyNTUsIDAsIDI1NV0sCiAgICAgICAgICAgICAgICAgICAgbWFyb29uOiBbMTI4LCAwLCAwXSwKICAgICAgICAgICAgICAgICAgICBtZWRpdW1hcXVhbWFyaW5lOiBbMTAyLCAyMDUsIDE3MF0sCiAgICAgICAgICAgICAgICAgICAgbWVkaXVtYmx1ZTogWzAsIDAsIDIwNV0sCiAgICAgICAgICAgICAgICAgICAgbWVkaXVtb3JjaGlkOiBbMTg2LCA4NSwgMjExXSwKICAgICAgICAgICAgICAgICAgICBtZWRpdW1wdXJwbGU6IFsxNDcsIDExMiwgMjE5XSwKICAgICAgICAgICAgICAgICAgICBtZWRpdW1zZWFncmVlbjogWzYwLCAxNzksIDExM10sCiAgICAgICAgICAgICAgICAgICAgbWVkaXVtc2xhdGVibHVlOiBbMTIzLCAxMDQsIDIzOF0sCiAgICAgICAgICAgICAgICAgICAgbWVkaXVtc3ByaW5nZ3JlZW46IFswLCAyNTAsIDE1NF0sCiAgICAgICAgICAgICAgICAgICAgbWVkaXVtdHVycXVvaXNlOiBbNzIsIDIwOSwgMjA0XSwKICAgICAgICAgICAgICAgICAgICBtZWRpdW12aW9sZXRyZWQ6IFsxOTksIDIxLCAxMzNdLAogICAgICAgICAgICAgICAgICAgIG1pZG5pZ2h0Ymx1ZTogWzI1LCAyNSwgMTEyXSwKICAgICAgICAgICAgICAgICAgICBtaW50Y3JlYW06IFsyNDUsIDI1NSwgMjUwXSwKICAgICAgICAgICAgICAgICAgICBtaXN0eXJvc2U6IFsyNTUsIDIyOCwgMjI1XSwKICAgICAgICAgICAgICAgICAgICBtb2NjYXNpbjogWzI1NSwgMjI4LCAxODFdLAogICAgICAgICAgICAgICAgICAgIG5hdmFqb3doaXRlOiBbMjU1LCAyMjIsIDE3M10sCiAgICAgICAgICAgICAgICAgICAgbmF2eTogWzAsIDAsIDEyOF0sCiAgICAgICAgICAgICAgICAgICAgb2xkbGFjZTogWzI1MywgMjQ1LCAyMzBdLAogICAgICAgICAgICAgICAgICAgIG9saXZlOiBbMTI4LCAxMjgsIDBdLAogICAgICAgICAgICAgICAgICAgIG9saXZlZHJhYjogWzEwNywgMTQyLCAzNV0sCiAgICAgICAgICAgICAgICAgICAgb3JhbmdlOiBbMjU1LCAxNjUsIDBdLAogICAgICAgICAgICAgICAgICAgIG9yYW5nZXJlZDogWzI1NSwgNjksIDBdLAogICAgICAgICAgICAgICAgICAgIG9yY2hpZDogWzIxOCwgMTEyLCAyMTRdLAogICAgICAgICAgICAgICAgICAgIHBhbGVnb2xkZW5yb2Q6IFsyMzgsIDIzMiwgMTcwXSwKICAgICAgICAgICAgICAgICAgICBwYWxlZ3JlZW46IFsxNTIsIDI1MSwgMTUyXSwKICAgICAgICAgICAgICAgICAgICBwYWxldHVycXVvaXNlOiBbMTc1LCAyMzgsIDIzOF0sCiAgICAgICAgICAgICAgICAgICAgcGFsZXZpb2xldHJlZDogWzIxOSwgMTEyLCAxNDddLAogICAgICAgICAgICAgICAgICAgIHBhcGF5YXdoaXA6IFsyNTUsIDIzOSwgMjEzXSwKICAgICAgICAgICAgICAgICAgICBwZWFjaHB1ZmY6IFsyNTUsIDIxOCwgMTg1XSwKICAgICAgICAgICAgICAgICAgICBwZXJ1OiBbMjA1LCAxMzMsIDYzXSwKICAgICAgICAgICAgICAgICAgICBwaW5rOiBbMjU1LCAxOTIsIDIwM10sCiAgICAgICAgICAgICAgICAgICAgcGx1bTogWzIyMSwgMTYwLCAyMjFdLAogICAgICAgICAgICAgICAgICAgIHBvd2RlcmJsdWU6IFsxNzYsIDIyNCwgMjMwXSwKICAgICAgICAgICAgICAgICAgICBwdXJwbGU6IFsxMjgsIDAsIDEyOF0sCiAgICAgICAgICAgICAgICAgICAgcmViZWNjYXB1cnBsZTogWzEwMiwgNTEsIDE1M10sCiAgICAgICAgICAgICAgICAgICAgcmVkOiBbMjU1LCAwLCAwXSwKICAgICAgICAgICAgICAgICAgICByb3N5YnJvd246IFsxODgsIDE0MywgMTQzXSwKICAgICAgICAgICAgICAgICAgICByb3lhbGJsdWU6IFs2NSwgMTA1LCAyMjVdLAogICAgICAgICAgICAgICAgICAgIHNhZGRsZWJyb3duOiBbMTM5LCA2OSwgMTldLAogICAgICAgICAgICAgICAgICAgIHNhbG1vbjogWzI1MCwgMTI4LCAxMTRdLAogICAgICAgICAgICAgICAgICAgIHNhbmR5YnJvd246IFsyNDQsIDE2NCwgOTZdLAogICAgICAgICAgICAgICAgICAgIHNlYWdyZWVuOiBbNDYsIDEzOSwgODddLAogICAgICAgICAgICAgICAgICAgIHNlYXNoZWxsOiBbMjU1LCAyNDUsIDIzOF0sCiAgICAgICAgICAgICAgICAgICAgc2llbm5hOiBbMTYwLCA4MiwgNDVdLAogICAgICAgICAgICAgICAgICAgIHNpbHZlcjogWzE5MiwgMTkyLCAxOTJdLAogICAgICAgICAgICAgICAgICAgIHNreWJsdWU6IFsxMzUsIDIwNiwgMjM1XSwKICAgICAgICAgICAgICAgICAgICBzbGF0ZWJsdWU6IFsxMDYsIDkwLCAyMDVdLAogICAgICAgICAgICAgICAgICAgIHNsYXRlZ3JheTogWzExMiwgMTI4LCAxNDRdLAogICAgICAgICAgICAgICAgICAgIHNsYXRlZ3JleTogWzExMiwgMTI4LCAxNDRdLAogICAgICAgICAgICAgICAgICAgIHNub3c6IFsyNTUsIDI1MCwgMjUwXSwKICAgICAgICAgICAgICAgICAgICBzcHJpbmdncmVlbjogWzAsIDI1NSwgMTI3XSwKICAgICAgICAgICAgICAgICAgICBzdGVlbGJsdWU6IFs3MCwgMTMwLCAxODBdLAogICAgICAgICAgICAgICAgICAgIHRhbjogWzIxMCwgMTgwLCAxNDBdLAogICAgICAgICAgICAgICAgICAgIHRlYWw6IFswLCAxMjgsIDEyOF0sCiAgICAgICAgICAgICAgICAgICAgdGhpc3RsZTogWzIxNiwgMTkxLCAyMTZdLAogICAgICAgICAgICAgICAgICAgIHRvbWF0bzogWzI1NSwgOTksIDcxXSwKICAgICAgICAgICAgICAgICAgICB0dXJxdW9pc2U6IFs2NCwgMjI0LCAyMDhdLAogICAgICAgICAgICAgICAgICAgIHZpb2xldDogWzIzOCwgMTMwLCAyMzhdLAogICAgICAgICAgICAgICAgICAgIHdoZWF0OiBbMjQ1LCAyMjIsIDE3OV0sCiAgICAgICAgICAgICAgICAgICAgd2hpdGU6IFsyNTUsIDI1NSwgMjU1XSwKICAgICAgICAgICAgICAgICAgICB3aGl0ZXNtb2tlOiBbMjQ1LCAyNDUsIDI0NV0sCiAgICAgICAgICAgICAgICAgICAgeWVsbG93OiBbMjU1LCAyNTUsIDBdLAogICAgICAgICAgICAgICAgICAgIHllbGxvd2dyZWVuOiBbMTU0LCAyMDUsIDUwXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFMgPSB7fTsKICAgICAgICAgICAgZm9yICh2YXIgRCBpbiBNKSBTW0pTT04uc3RyaW5naWZ5KE1bRF0pXSA9IEQKICAgICAgICB9LCB7fV0sCiAgICAgICAgNDogW2Z1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgdmFyIGEgPSB0KDMpLAogICAgICAgICAgICAgICAgciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgdQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgZm9yICh2YXIgbiBpbiBhKSB7CiAgICAgICAgICAgICAgICByW24gKyAiUmF3Il0gPSBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJudW1iZXIiID09IHR5cGVvZiB0ICYmICh0ID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSksIGFbZV0odCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KG4pOwogICAgICAgICAgICAgICAgdmFyIG8gPSAvKFx3KykyKFx3KykvLmV4ZWMobiksCiAgICAgICAgICAgICAgICAgICAgcyA9IG9bMV0sCiAgICAgICAgICAgICAgICAgICAgbCA9IG9bMl07CiAgICAgICAgICAgICAgICAocltzXSA9IHJbc10gfHwge30pW2xdID0gcltuXSA9IGZ1bmN0aW9uKG4pIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICAibnVtYmVyIiA9PSB0eXBlb2YgdCAmJiAodCA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cykpOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IGFbbl0odCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgZSB8fCB2b2lkIDAgPT09IGUpIHJldHVybiBlOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGUubGVuZ3RoOyBpKyspIGVbaV0gPSBNYXRoLnJvdW5kKGVbaV0pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0obikKICAgICAgICAgICAgfQogICAgICAgICAgICB2YXIgdSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdGhpcy5jb252cyA9IHt9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHUucHJvdG90eXBlLnJvdXRlU3BhY2UgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICB2YXIgaSA9IGVbMF07CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSBpID8gdGhpcy5nZXRWYWx1ZXModCkgOiAoIm51bWJlciIgPT0gdHlwZW9mIGkgJiYgKGkgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlKSksIHRoaXMuc2V0VmFsdWVzKHQsIGkpKQogICAgICAgICAgICB9LCB1LnByb3RvdHlwZS5zZXRWYWx1ZXMgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zcGFjZSA9IHQsIHRoaXMuY29udnMgPSB7fSwgdGhpcy5jb252c1t0XSA9IGUsIHRoaXMKICAgICAgICAgICAgfSwgdS5wcm90b3R5cGUuZ2V0VmFsdWVzID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgdmFyIGUgPSB0aGlzLmNvbnZzW3RdOwogICAgICAgICAgICAgICAgaWYgKCFlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSB0aGlzLnNwYWNlLAogICAgICAgICAgICAgICAgICAgICAgICBuID0gdGhpcy5jb252c1tpXTsKICAgICAgICAgICAgICAgICAgICBlID0gcltpXVt0XShuKSwgdGhpcy5jb252c1t0XSA9IGUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBlCiAgICAgICAgICAgIH0sIFsicmdiIiwgImhzbCIsICJoc3YiLCAiY215ayIsICJrZXl3b3JkIl0uZm9yRWFjaChmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICB1LnByb3RvdHlwZVtlXSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZVNwYWNlKGUsIGFyZ3VtZW50cykKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksIGUuZXhwb3J0cyA9IHIKICAgICAgICB9LCB7CiAgICAgICAgICAgIDM6IDMKICAgICAgICB9XSwKICAgICAgICA1OiBbZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAidXNlIHN0cmljdCI7CiAgICAgICAgICAgIGUuZXhwb3J0cyA9IHsKICAgICAgICAgICAgICAgIGFsaWNlYmx1ZTogWzI0MCwgMjQ4LCAyNTVdLAogICAgICAgICAgICAgICAgYW50aXF1ZXdoaXRlOiBbMjUwLCAyMzUsIDIxNV0sCiAgICAgICAgICAgICAgICBhcXVhOiBbMCwgMjU1LCAyNTVdLAogICAgICAgICAgICAgICAgYXF1YW1hcmluZTogWzEyNywgMjU1LCAyMTJdLAogICAgICAgICAgICAgICAgYXp1cmU6IFsyNDAsIDI1NSwgMjU1XSwKICAgICAgICAgICAgICAgIGJlaWdlOiBbMjQ1LCAyNDUsIDIyMF0sCiAgICAgICAgICAgICAgICBiaXNxdWU6IFsyNTUsIDIyOCwgMTk2XSwKICAgICAgICAgICAgICAgIGJsYWNrOiBbMCwgMCwgMF0sCiAgICAgICAgICAgICAgICBibGFuY2hlZGFsbW9uZDogWzI1NSwgMjM1LCAyMDVdLAogICAgICAgICAgICAgICAgYmx1ZTogWzAsIDAsIDI1NV0sCiAgICAgICAgICAgICAgICBibHVldmlvbGV0OiBbMTM4LCA0MywgMjI2XSwKICAgICAgICAgICAgICAgIGJyb3duOiBbMTY1LCA0MiwgNDJdLAogICAgICAgICAgICAgICAgYnVybHl3b29kOiBbMjIyLCAxODQsIDEzNV0sCiAgICAgICAgICAgICAgICBjYWRldGJsdWU6IFs5NSwgMTU4LCAxNjBdLAogICAgICAgICAgICAgICAgY2hhcnRyZXVzZTogWzEyNywgMjU1LCAwXSwKICAgICAgICAgICAgICAgIGNob2NvbGF0ZTogWzIxMCwgMTA1LCAzMF0sCiAgICAgICAgICAgICAgICBjb3JhbDogWzI1NSwgMTI3LCA4MF0sCiAgICAgICAgICAgICAgICBjb3JuZmxvd2VyYmx1ZTogWzEwMCwgMTQ5LCAyMzddLAogICAgICAgICAgICAgICAgY29ybnNpbGs6IFsyNTUsIDI0OCwgMjIwXSwKICAgICAgICAgICAgICAgIGNyaW1zb246IFsyMjAsIDIwLCA2MF0sCiAgICAgICAgICAgICAgICBjeWFuOiBbMCwgMjU1LCAyNTVdLAogICAgICAgICAgICAgICAgZGFya2JsdWU6IFswLCAwLCAxMzldLAogICAgICAgICAgICAgICAgZGFya2N5YW46IFswLCAxMzksIDEzOV0sCiAgICAgICAgICAgICAgICBkYXJrZ29sZGVucm9kOiBbMTg0LCAxMzQsIDExXSwKICAgICAgICAgICAgICAgIGRhcmtncmF5OiBbMTY5LCAxNjksIDE2OV0sCiAgICAgICAgICAgICAgICBkYXJrZ3JlZW46IFswLCAxMDAsIDBdLAogICAgICAgICAgICAgICAgZGFya2dyZXk6IFsxNjksIDE2OSwgMTY5XSwKICAgICAgICAgICAgICAgIGRhcmtraGFraTogWzE4OSwgMTgzLCAxMDddLAogICAgICAgICAgICAgICAgZGFya21hZ2VudGE6IFsxMzksIDAsIDEzOV0sCiAgICAgICAgICAgICAgICBkYXJrb2xpdmVncmVlbjogWzg1LCAxMDcsIDQ3XSwKICAgICAgICAgICAgICAgIGRhcmtvcmFuZ2U6IFsyNTUsIDE0MCwgMF0sCiAgICAgICAgICAgICAgICBkYXJrb3JjaGlkOiBbMTUzLCA1MCwgMjA0XSwKICAgICAgICAgICAgICAgIGRhcmtyZWQ6IFsxMzksIDAsIDBdLAogICAgICAgICAgICAgICAgZGFya3NhbG1vbjogWzIzMywgMTUwLCAxMjJdLAogICAgICAgICAgICAgICAgZGFya3NlYWdyZWVuOiBbMTQzLCAxODgsIDE0M10sCiAgICAgICAgICAgICAgICBkYXJrc2xhdGVibHVlOiBbNzIsIDYxLCAxMzldLAogICAgICAgICAgICAgICAgZGFya3NsYXRlZ3JheTogWzQ3LCA3OSwgNzldLAogICAgICAgICAgICAgICAgZGFya3NsYXRlZ3JleTogWzQ3LCA3OSwgNzldLAogICAgICAgICAgICAgICAgZGFya3R1cnF1b2lzZTogWzAsIDIwNiwgMjA5XSwKICAgICAgICAgICAgICAgIGRhcmt2aW9sZXQ6IFsxNDgsIDAsIDIxMV0sCiAgICAgICAgICAgICAgICBkZWVwcGluazogWzI1NSwgMjAsIDE0N10sCiAgICAgICAgICAgICAgICBkZWVwc2t5Ymx1ZTogWzAsIDE5MSwgMjU1XSwKICAgICAgICAgICAgICAgIGRpbWdyYXk6IFsxMDUsIDEwNSwgMTA1XSwKICAgICAgICAgICAgICAgIGRpbWdyZXk6IFsxMDUsIDEwNSwgMTA1XSwKICAgICAgICAgICAgICAgIGRvZGdlcmJsdWU6IFszMCwgMTQ0LCAyNTVdLAogICAgICAgICAgICAgICAgZmlyZWJyaWNrOiBbMTc4LCAzNCwgMzRdLAogICAgICAgICAgICAgICAgZmxvcmFsd2hpdGU6IFsyNTUsIDI1MCwgMjQwXSwKICAgICAgICAgICAgICAgIGZvcmVzdGdyZWVuOiBbMzQsIDEzOSwgMzRdLAogICAgICAgICAgICAgICAgZnVjaHNpYTogWzI1NSwgMCwgMjU1XSwKICAgICAgICAgICAgICAgIGdhaW5zYm9ybzogWzIyMCwgMjIwLCAyMjBdLAogICAgICAgICAgICAgICAgZ2hvc3R3aGl0ZTogWzI0OCwgMjQ4LCAyNTVdLAogICAgICAgICAgICAgICAgZ29sZDogWzI1NSwgMjE1LCAwXSwKICAgICAgICAgICAgICAgIGdvbGRlbnJvZDogWzIxOCwgMTY1LCAzMl0sCiAgICAgICAgICAgICAgICBncmF5OiBbMTI4LCAxMjgsIDEyOF0sCiAgICAgICAgICAgICAgICBncmVlbjogWzAsIDEyOCwgMF0sCiAgICAgICAgICAgICAgICBncmVlbnllbGxvdzogWzE3MywgMjU1LCA0N10sCiAgICAgICAgICAgICAgICBncmV5OiBbMTI4LCAxMjgsIDEyOF0sCiAgICAgICAgICAgICAgICBob25leWRldzogWzI0MCwgMjU1LCAyNDBdLAogICAgICAgICAgICAgICAgaG90cGluazogWzI1NSwgMTA1LCAxODBdLAogICAgICAgICAgICAgICAgaW5kaWFucmVkOiBbMjA1LCA5MiwgOTJdLAogICAgICAgICAgICAgICAgaW5kaWdvOiBbNzUsIDAsIDEzMF0sCiAgICAgICAgICAgICAgICBpdm9yeTogWzI1NSwgMjU1LCAyNDBdLAogICAgICAgICAgICAgICAga2hha2k6IFsyNDAsIDIzMCwgMTQwXSwKICAgICAgICAgICAgICAgIGxhdmVuZGVyOiBbMjMwLCAyMzAsIDI1MF0sCiAgICAgICAgICAgICAgICBsYXZlbmRlcmJsdXNoOiBbMjU1LCAyNDAsIDI0NV0sCiAgICAgICAgICAgICAgICBsYXduZ3JlZW46IFsxMjQsIDI1MiwgMF0sCiAgICAgICAgICAgICAgICBsZW1vbmNoaWZmb246IFsyNTUsIDI1MCwgMjA1XSwKICAgICAgICAgICAgICAgIGxpZ2h0Ymx1ZTogWzE3MywgMjE2LCAyMzBdLAogICAgICAgICAgICAgICAgbGlnaHRjb3JhbDogWzI0MCwgMTI4LCAxMjhdLAogICAgICAgICAgICAgICAgbGlnaHRjeWFuOiBbMjI0LCAyNTUsIDI1NV0sCiAgICAgICAgICAgICAgICBsaWdodGdvbGRlbnJvZHllbGxvdzogWzI1MCwgMjUwLCAyMTBdLAogICAgICAgICAgICAgICAgbGlnaHRncmF5OiBbMjExLCAyMTEsIDIxMV0sCiAgICAgICAgICAgICAgICBsaWdodGdyZWVuOiBbMTQ0LCAyMzgsIDE0NF0sCiAgICAgICAgICAgICAgICBsaWdodGdyZXk6IFsyMTEsIDIxMSwgMjExXSwKICAgICAgICAgICAgICAgIGxpZ2h0cGluazogWzI1NSwgMTgyLCAxOTNdLAogICAgICAgICAgICAgICAgbGlnaHRzYWxtb246IFsyNTUsIDE2MCwgMTIyXSwKICAgICAgICAgICAgICAgIGxpZ2h0c2VhZ3JlZW46IFszMiwgMTc4LCAxNzBdLAogICAgICAgICAgICAgICAgbGlnaHRza3libHVlOiBbMTM1LCAyMDYsIDI1MF0sCiAgICAgICAgICAgICAgICBsaWdodHNsYXRlZ3JheTogWzExOSwgMTM2LCAxNTNdLAogICAgICAgICAgICAgICAgbGlnaHRzbGF0ZWdyZXk6IFsxMTksIDEzNiwgMTUzXSwKICAgICAgICAgICAgICAgIGxpZ2h0c3RlZWxibHVlOiBbMTc2LCAxOTYsIDIyMl0sCiAgICAgICAgICAgICAgICBsaWdodHllbGxvdzogWzI1NSwgMjU1LCAyMjRdLAogICAgICAgICAgICAgICAgbGltZTogWzAsIDI1NSwgMF0sCiAgICAgICAgICAgICAgICBsaW1lZ3JlZW46IFs1MCwgMjA1LCA1MF0sCiAgICAgICAgICAgICAgICBsaW5lbjogWzI1MCwgMjQwLCAyMzBdLAogICAgICAgICAgICAgICAgbWFnZW50YTogWzI1NSwgMCwgMjU1XSwKICAgICAgICAgICAgICAgIG1hcm9vbjogWzEyOCwgMCwgMF0sCiAgICAgICAgICAgICAgICBtZWRpdW1hcXVhbWFyaW5lOiBbMTAyLCAyMDUsIDE3MF0sCiAgICAgICAgICAgICAgICBtZWRpdW1ibHVlOiBbMCwgMCwgMjA1XSwKICAgICAgICAgICAgICAgIG1lZGl1bW9yY2hpZDogWzE4NiwgODUsIDIxMV0sCiAgICAgICAgICAgICAgICBtZWRpdW1wdXJwbGU6IFsxNDcsIDExMiwgMjE5XSwKICAgICAgICAgICAgICAgIG1lZGl1bXNlYWdyZWVuOiBbNjAsIDE3OSwgMTEzXSwKICAgICAgICAgICAgICAgIG1lZGl1bXNsYXRlYmx1ZTogWzEyMywgMTA0LCAyMzhdLAogICAgICAgICAgICAgICAgbWVkaXVtc3ByaW5nZ3JlZW46IFswLCAyNTAsIDE1NF0sCiAgICAgICAgICAgICAgICBtZWRpdW10dXJxdW9pc2U6IFs3MiwgMjA5LCAyMDRdLAogICAgICAgICAgICAgICAgbWVkaXVtdmlvbGV0cmVkOiBbMTk5LCAyMSwgMTMzXSwKICAgICAgICAgICAgICAgIG1pZG5pZ2h0Ymx1ZTogWzI1LCAyNSwgMTEyXSwKICAgICAgICAgICAgICAgIG1pbnRjcmVhbTogWzI0NSwgMjU1LCAyNTBdLAogICAgICAgICAgICAgICAgbWlzdHlyb3NlOiBbMjU1LCAyMjgsIDIyNV0sCiAgICAgICAgICAgICAgICBtb2NjYXNpbjogWzI1NSwgMjI4LCAxODFdLAogICAgICAgICAgICAgICAgbmF2YWpvd2hpdGU6IFsyNTUsIDIyMiwgMTczXSwKICAgICAgICAgICAgICAgIG5hdnk6IFswLCAwLCAxMjhdLAogICAgICAgICAgICAgICAgb2xkbGFjZTogWzI1MywgMjQ1LCAyMzBdLAogICAgICAgICAgICAgICAgb2xpdmU6IFsxMjgsIDEyOCwgMF0sCiAgICAgICAgICAgICAgICBvbGl2ZWRyYWI6IFsxMDcsIDE0MiwgMzVdLAogICAgICAgICAgICAgICAgb3JhbmdlOiBbMjU1LCAxNjUsIDBdLAogICAgICAgICAgICAgICAgb3JhbmdlcmVkOiBbMjU1LCA2OSwgMF0sCiAgICAgICAgICAgICAgICBvcmNoaWQ6IFsyMTgsIDExMiwgMjE0XSwKICAgICAgICAgICAgICAgIHBhbGVnb2xkZW5yb2Q6IFsyMzgsIDIzMiwgMTcwXSwKICAgICAgICAgICAgICAgIHBhbGVncmVlbjogWzE1MiwgMjUxLCAxNTJdLAogICAgICAgICAgICAgICAgcGFsZXR1cnF1b2lzZTogWzE3NSwgMjM4LCAyMzhdLAogICAgICAgICAgICAgICAgcGFsZXZpb2xldHJlZDogWzIxOSwgMTEyLCAxNDddLAogICAgICAgICAgICAgICAgcGFwYXlhd2hpcDogWzI1NSwgMjM5LCAyMTNdLAogICAgICAgICAgICAgICAgcGVhY2hwdWZmOiBbMjU1LCAyMTgsIDE4NV0sCiAgICAgICAgICAgICAgICBwZXJ1OiBbMjA1LCAxMzMsIDYzXSwKICAgICAgICAgICAgICAgIHBpbms6IFsyNTUsIDE5MiwgMjAzXSwKICAgICAgICAgICAgICAgIHBsdW06IFsyMjEsIDE2MCwgMjIxXSwKICAgICAgICAgICAgICAgIHBvd2RlcmJsdWU6IFsxNzYsIDIyNCwgMjMwXSwKICAgICAgICAgICAgICAgIHB1cnBsZTogWzEyOCwgMCwgMTI4XSwKICAgICAgICAgICAgICAgIHJlYmVjY2FwdXJwbGU6IFsxMDIsIDUxLCAxNTNdLAogICAgICAgICAgICAgICAgcmVkOiBbMjU1LCAwLCAwXSwKICAgICAgICAgICAgICAgIHJvc3licm93bjogWzE4OCwgMTQzLCAxNDNdLAogICAgICAgICAgICAgICAgcm95YWxibHVlOiBbNjUsIDEwNSwgMjI1XSwKICAgICAgICAgICAgICAgIHNhZGRsZWJyb3duOiBbMTM5LCA2OSwgMTldLAogICAgICAgICAgICAgICAgc2FsbW9uOiBbMjUwLCAxMjgsIDExNF0sCiAgICAgICAgICAgICAgICBzYW5keWJyb3duOiBbMjQ0LCAxNjQsIDk2XSwKICAgICAgICAgICAgICAgIHNlYWdyZWVuOiBbNDYsIDEzOSwgODddLAogICAgICAgICAgICAgICAgc2Vhc2hlbGw6IFsyNTUsIDI0NSwgMjM4XSwKICAgICAgICAgICAgICAgIHNpZW5uYTogWzE2MCwgODIsIDQ1XSwKICAgICAgICAgICAgICAgIHNpbHZlcjogWzE5MiwgMTkyLCAxOTJdLAogICAgICAgICAgICAgICAgc2t5Ymx1ZTogWzEzNSwgMjA2LCAyMzVdLAogICAgICAgICAgICAgICAgc2xhdGVibHVlOiBbMTA2LCA5MCwgMjA1XSwKICAgICAgICAgICAgICAgIHNsYXRlZ3JheTogWzExMiwgMTI4LCAxNDRdLAogICAgICAgICAgICAgICAgc2xhdGVncmV5OiBbMTEyLCAxMjgsIDE0NF0sCiAgICAgICAgICAgICAgICBzbm93OiBbMjU1LCAyNTAsIDI1MF0sCiAgICAgICAgICAgICAgICBzcHJpbmdncmVlbjogWzAsIDI1NSwgMTI3XSwKICAgICAgICAgICAgICAgIHN0ZWVsYmx1ZTogWzcwLCAxMzAsIDE4MF0sCiAgICAgICAgICAgICAgICB0YW46IFsyMTAsIDE4MCwgMTQwXSwKICAgICAgICAgICAgICAgIHRlYWw6IFswLCAxMjgsIDEyOF0sCiAgICAgICAgICAgICAgICB0aGlzdGxlOiBbMjE2LCAxOTEsIDIxNl0sCiAgICAgICAgICAgICAgICB0b21hdG86IFsyNTUsIDk5LCA3MV0sCiAgICAgICAgICAgICAgICB0dXJxdW9pc2U6IFs2NCwgMjI0LCAyMDhdLAogICAgICAgICAgICAgICAgdmlvbGV0OiBbMjM4LCAxMzAsIDIzOF0sCiAgICAgICAgICAgICAgICB3aGVhdDogWzI0NSwgMjIyLCAxNzldLAogICAgICAgICAgICAgICAgd2hpdGU6IFsyNTUsIDI1NSwgMjU1XSwKICAgICAgICAgICAgICAgIHdoaXRlc21va2U6IFsyNDUsIDI0NSwgMjQ1XSwKICAgICAgICAgICAgICAgIHllbGxvdzogWzI1NSwgMjU1LCAwXSwKICAgICAgICAgICAgICAgIHllbGxvd2dyZWVuOiBbMTU0LCAyMDUsIDUwXQogICAgICAgICAgICB9CiAgICAgICAgfSwge31dLAogICAgICAgIDY6IFtmdW5jdGlvbihZaSwgTmksIHQpIHsKICAgICAgICAgICAgdmFyIGUsIGk7CiAgICAgICAgICAgIGUgPSB0aGlzLCBpID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAidXNlIHN0cmljdCI7CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gcCgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gVXQuYXBwbHkobnVsbCwgYXJndW1lbnRzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHModCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IGluc3RhbmNlb2YgQXJyYXkgfHwgIltvYmplY3QgQXJyYXldIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gbCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgIT0gdCAmJiAiW29iamVjdCBPYmplY3RdIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gdSh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdAogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGQodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAibnVtYmVyIiA9PSB0eXBlb2YgdCB8fCAiW29iamVjdCBOdW1iZXJdIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gaCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgaW5zdGFuY2VvZiBEYXRlIHx8ICJbb2JqZWN0IERhdGVdIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gYyh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4gPSBbXTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdC5sZW5ndGg7ICsraSkgbi5wdXNoKGUodFtpXSwgaSkpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gdih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LCBlKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGYodCwgZSkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgaW4gZSkgdihlLCBpKSAmJiAodFtpXSA9IGVbaV0pOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB2KGUsICJ0b1N0cmluZyIpICYmICh0LnRvU3RyaW5nID0gZS50b1N0cmluZyksIHYoZSwgInZhbHVlT2YiKSAmJiAodC52YWx1ZU9mID0gZS52YWx1ZU9mKSwgdAogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGcodCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBndCh0LCBlLCBpLCBuLCAhMCkudXRjKCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiB5KHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCA9PSB0Ll9wZiAmJiAodC5fcGYgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVtcHR5OiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgdW51c2VkVG9rZW5zOiBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgdW51c2VkSW5wdXQ6IFtdLAogICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogLTIsCiAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJzTGVmdE92ZXI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG51bGxJbnB1dDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWRNb250aDogbnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgaW52YWxpZEZvcm1hdDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJJbnZhbGlkYXRlZDogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIGlzbzogITEsCiAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlZERhdGVQYXJ0czogW10sCiAgICAgICAgICAgICAgICAgICAgICAgIG1lcmlkaWVtOiBudWxsLAogICAgICAgICAgICAgICAgICAgICAgICByZmMyODIyOiAhMSwKICAgICAgICAgICAgICAgICAgICAgICAgd2Vla2RheU1pc21hdGNoOiAhMQogICAgICAgICAgICAgICAgICAgIH0pLCB0Ll9wZgogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG0odCkgewogICAgICAgICAgICAgICAgICAgIGlmIChudWxsID09IHQuX2lzVmFsaWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSB5KHQpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IHF0LmNhbGwoZS5wYXJzZWREYXRlUGFydHMsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSB0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPSAhaXNOYU4odC5fZC5nZXRUaW1lKCkpICYmIGUub3ZlcmZsb3cgPCAwICYmICFlLmVtcHR5ICYmICFlLmludmFsaWRNb250aCAmJiAhZS5pbnZhbGlkV2Vla2RheSAmJiAhZS5udWxsSW5wdXQgJiYgIWUuaW52YWxpZEZvcm1hdCAmJiAhZS51c2VySW52YWxpZGF0ZWQgJiYgKCFlLm1lcmlkaWVtIHx8IGUubWVyaWRpZW0gJiYgaSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0Ll9zdHJpY3QgJiYgKG4gPSBuICYmIDAgPT09IGUuY2hhcnNMZWZ0T3ZlciAmJiAwID09PSBlLnVudXNlZFRva2Vucy5sZW5ndGggJiYgdm9pZCAwID09PSBlLmJpZ0hvdXIpLCBudWxsICE9IE9iamVjdC5pc0Zyb3plbiAmJiBPYmplY3QuaXNGcm96ZW4odCkpIHJldHVybiBuOwogICAgICAgICAgICAgICAgICAgICAgICB0Ll9pc1ZhbGlkID0gbgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdC5faXNWYWxpZAogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGIodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gZyhOYU4pOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHQgPyBmKHkoZSksIHQpIDogeShlKS51c2VySW52YWxpZGF0ZWQgPSAhMCwgZQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHgodCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpLCBuLCBhOwogICAgICAgICAgICAgICAgICAgIGlmICh1KGUuX2lzQU1vbWVudE9iamVjdCkgfHwgKHQuX2lzQU1vbWVudE9iamVjdCA9IGUuX2lzQU1vbWVudE9iamVjdCksIHUoZS5faSkgfHwgKHQuX2kgPSBlLl9pKSwgdShlLl9mKSB8fCAodC5fZiA9IGUuX2YpLCB1KGUuX2wpIHx8ICh0Ll9sID0gZS5fbCksIHUoZS5fc3RyaWN0KSB8fCAodC5fc3RyaWN0ID0gZS5fc3RyaWN0KSwgdShlLl90em0pIHx8ICh0Ll90em0gPSBlLl90em0pLCB1KGUuX2lzVVRDKSB8fCAodC5faXNVVEMgPSBlLl9pc1VUQyksIHUoZS5fb2Zmc2V0KSB8fCAodC5fb2Zmc2V0ID0gZS5fb2Zmc2V0KSwgdShlLl9wZikgfHwgKHQuX3BmID0geShlKSksIHUoZS5fbG9jYWxlKSB8fCAodC5fbG9jYWxlID0gZS5fbG9jYWxlKSwgMCA8IEd0Lmxlbmd0aCkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IEd0Lmxlbmd0aDsgaSsrKSB1KGEgPSBlW24gPSBHdFtpXV0pIHx8ICh0W25dID0gYSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBfKHQpIHsKICAgICAgICAgICAgICAgICAgICB4KHRoaXMsIHQpLCB0aGlzLl9kID0gbmV3IERhdGUobnVsbCAhPSB0Ll9kID8gdC5fZC5nZXRUaW1lKCkgOiBOYU4pLCB0aGlzLmlzVmFsaWQoKSB8fCAodGhpcy5fZCA9IG5ldyBEYXRlKE5hTikpLCAhMSA9PT0gWnQgJiYgKFp0ID0gITAsIHAudXBkYXRlT2Zmc2V0KHRoaXMpLCBadCA9ICExKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGsodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IGluc3RhbmNlb2YgXyB8fCBudWxsICE9IHQgJiYgbnVsbCAhPSB0Ll9pc0FNb21lbnRPYmplY3QKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiB3KHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdCA8IDAgPyBNYXRoLmNlaWwodCkgfHwgMCA6IE1hdGguZmxvb3IodCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBNKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9ICt0LAogICAgICAgICAgICAgICAgICAgICAgICBpID0gMDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gMCAhPT0gZSAmJiBpc0Zpbml0ZShlKSAmJiAoaSA9IHcoZSkpLCBpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gbyh0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIGEgPSBNYXRoLm1pbih0Lmxlbmd0aCwgZS5sZW5ndGgpLAogICAgICAgICAgICAgICAgICAgICAgICByID0gTWF0aC5hYnModC5sZW5ndGggLSBlLmxlbmd0aCksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSAwOwogICAgICAgICAgICAgICAgICAgIGZvciAobiA9IDA7IG4gPCBhOyBuKyspKGkgJiYgdFtuXSAhPT0gZVtuXSB8fCAhaSAmJiBNKHRbbl0pICE9PSBNKGVbbl0pKSAmJiBvKys7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8gKyByCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gUyh0KSB7CiAgICAgICAgICAgICAgICAgICAgITEgPT09IHAuc3VwcHJlc3NEZXByZWNhdGlvbldhcm5pbmdzICYmICJ1bmRlZmluZWQiICE9IHR5cGVvZiBjb25zb2xlICYmIGNvbnNvbGUud2FybiAmJiBjb25zb2xlLndhcm4oIkRlcHJlY2F0aW9uIHdhcm5pbmc6ICIgKyB0KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHQoYSwgcikgewogICAgICAgICAgICAgICAgICAgIHZhciBvID0gITA7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGYoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChudWxsICE9IHAuZGVwcmVjYXRpb25IYW5kbGVyICYmIHAuZGVwcmVjYXRpb25IYW5kbGVyKG51bGwsIGEpLCBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciB0LCBlID0gW10sIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHQgPSAiIiwgIm9iamVjdCIgPT0gdHlwZW9mIGFyZ3VtZW50c1tpXSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBuIGluIHQgKz0gIlxuWyIgKyBpICsgIl0gIiwgYXJndW1lbnRzWzBdKSB0ICs9IG4gKyAiOiAiICsgYXJndW1lbnRzWzBdW25dICsgIiwgIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdCA9IHQuc2xpY2UoMCwgLTIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHQgPSBhcmd1bWVudHNbaV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5wdXNoKHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTKGEgKyAiXG5Bcmd1bWVudHM6ICIgKyBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlKS5qb2luKCIiKSArICJcbiIgKyAobmV3IEVycm9yKS5zdGFjayksIG8gPSAhMQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykKICAgICAgICAgICAgICAgICAgICB9LCByKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHIodCwgZSkgewogICAgICAgICAgICAgICAgICAgIG51bGwgIT0gcC5kZXByZWNhdGlvbkhhbmRsZXIgJiYgcC5kZXByZWNhdGlvbkhhbmRsZXIodCwgZSksIFh0W3RdIHx8IChTKGUpLCBYdFt0XSA9ICEwKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIEQodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IGluc3RhbmNlb2YgRnVuY3Rpb24gfHwgIltvYmplY3QgRnVuY3Rpb25dIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gYSh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4gPSBmKHt9LCB0KTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgaW4gZSkgdihlLCBpKSAmJiAobCh0W2ldKSAmJiBsKGVbaV0pID8gKG5baV0gPSB7fSwgZihuW2ldLCB0W2ldKSwgZihuW2ldLCBlW2ldKSkgOiBudWxsICE9IGVbaV0gPyBuW2ldID0gZVtpXSA6IGRlbGV0ZSBuW2ldKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgaW4gdCkgdih0LCBpKSAmJiAhdihlLCBpKSAmJiBsKHRbaV0pICYmIChuW2ldID0gZih7fSwgbltpXSkpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBuCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gQyh0KSB7CiAgICAgICAgICAgICAgICAgICAgbnVsbCAhPSB0ICYmIHRoaXMuc2V0KHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gZSh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSB0LnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgICAgICAgICAgS3RbaV0gPSBLdFtpICsgInMiXSA9IEt0W2VdID0gdAogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIFAodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAic3RyaW5nIiA9PSB0eXBlb2YgdCA/IEt0W3RdIHx8IEt0W3QudG9Mb3dlckNhc2UoKV0gOiB2b2lkIDAKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBUKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiA9IHt9OwogICAgICAgICAgICAgICAgICAgIGZvciAoaSBpbiB0KSB2KHQsIGkpICYmIChlID0gUChpKSkgJiYgKG5bZV0gPSB0W2ldKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbgogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGkodCwgZSkgewogICAgICAgICAgICAgICAgICAgIFF0W3RdID0gZQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG4oZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHQgPyAoSSh0aGlzLCBlLCB0KSwgcC51cGRhdGVPZmZzZXQodGhpcywgaSksIHRoaXMpIDogQSh0aGlzLCBlKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBBKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdC5pc1ZhbGlkKCkgPyB0Ll9kWyJnZXQiICsgKHQuX2lzVVRDID8gIlVUQyIgOiAiIikgKyBlXSgpIDogTmFOCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gSSh0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdC5pc1ZhbGlkKCkgJiYgdC5fZFsic2V0IiArICh0Ll9pc1VUQyA/ICJVVEMiIDogIiIpICsgZV0oaSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBPKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9ICIiICsgTWF0aC5hYnModCksCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBlIC0gbi5sZW5ndGg7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgwIDw9IHQgPyBpID8gIisiIDogIiIgOiAiLSIpICsgTWF0aC5wb3coMTAsIE1hdGgubWF4KDAsIGEpKS50b1N0cmluZygpLnN1YnN0cigxKSArIG4KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBGKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IG47CiAgICAgICAgICAgICAgICAgICAgInN0cmluZyIgPT0gdHlwZW9mIG4gJiYgKGEgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXNbbl0oKQogICAgICAgICAgICAgICAgICAgIH0pLCB0ICYmIChpZVt0XSA9IGEpLCBlICYmIChpZVtlWzBdXSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTyhhLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyksIGVbMV0sIGVbMl0pCiAgICAgICAgICAgICAgICAgICAgfSksIGkgJiYgKGllW2ldID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5vcmRpbmFsKGEuYXBwbHkodGhpcywgYXJndW1lbnRzKSwgdCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIFIodCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0LmlzVmFsaWQoKSA/IChlID0gTChlLCB0LmxvY2FsZURhdGEoKSksIGVlW2VdID0gZWVbZV0gfHwgZnVuY3Rpb24obikgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCwgYSwgZSwgciA9IG4ubWF0Y2goJHQpOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHQgPSAwLCBhID0gci5sZW5ndGg7IHQgPCBhOyB0KyspIGllW3JbdF1dID8gclt0XSA9IGllW3JbdF1dIDogclt0XSA9IChlID0gclt0XSkubWF0Y2goL1xbW1xzXFNdLykgPyBlLnJlcGxhY2UoL15cW3xcXSQvZywgIiIpIDogZS5yZXBsYWNlKC9cXC9nLCAiIik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSA9ICIiOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChlID0gMDsgZSA8IGE7IGUrKykgaSArPSBEKHJbZV0pID8gcltlXS5jYWxsKHQsIG4pIDogcltlXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KGUpLCBlZVtlXSh0KSkgOiB0LmxvY2FsZURhdGEoKS5pbnZhbGlkRGF0ZSgpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gTCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSA1OwogICAgICAgICAgICAgICAgICAgIGZvciAodGUubGFzdEluZGV4ID0gMDsgMCA8PSBpICYmIHRlLnRlc3QodCk7KSB0ID0gdC5yZXBsYWNlKHRlLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmxvbmdEYXRlRm9ybWF0KHQpIHx8IHQKICAgICAgICAgICAgICAgICAgICB9KSwgdGUubGFzdEluZGV4ID0gMCwgaSAtPSAxOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gVyh0LCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgYmVbdF0gPSBEKGkpID8gaSA6IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgJiYgbiA/IG4gOiBpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIFkodCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB2KGJlLCB0KSA/IGJlW3RdKGUuX3N0cmljdCwgZS5fbG9jYWxlKSA6IG5ldyBSZWdFeHAoTih0LnJlcGxhY2UoIlxcIiwgIiIpLnJlcGxhY2UoL1xcKFxbKXxcXChcXSl8XFsoW15cXVxbXSopXF18XFwoLikvZywgZnVuY3Rpb24odCwgZSwgaSwgbiwgYSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZSB8fCBpIHx8IG4gfHwgYQogICAgICAgICAgICAgICAgICAgIH0pKSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBOKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdC5yZXBsYWNlKC9bLVwvXFxeJCorPy4oKXxbXF17fV0vZywgIlxcJCYiKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHoodCwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBuID0gaTsKICAgICAgICAgICAgICAgICAgICBmb3IgKCJzdHJpbmciID09IHR5cGVvZiB0ICYmICh0ID0gW3RdKSwgZChpKSAmJiAobiA9IGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVbaV0gPSBNKHQpCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBlID0gMDsgZSA8IHQubGVuZ3RoOyBlKyspIHhlW3RbZV1dID0gbgogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIEIodCwgYSkgewogICAgICAgICAgICAgICAgICAgIHoodCwgZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgICAgICBpLl93ID0gaS5fdyB8fCB7fSwgYSh0LCBpLl93LCBpLCBuKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gVih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKHQsIGUgKyAxLCAwKSkuZ2V0VVRDRGF0ZSgpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gSCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0LmlzVmFsaWQoKSkgcmV0dXJuIHQ7CiAgICAgICAgICAgICAgICAgICAgaWYgKCJzdHJpbmciID09IHR5cGVvZiBlKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoL15cZCskLy50ZXN0KGUpKSBlID0gTShlKTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoIWQoZSA9IHQubG9jYWxlRGF0YSgpLm1vbnRoc1BhcnNlKGUpKSkgcmV0dXJuIHQ7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkgPSBNYXRoLm1pbih0LmRhdGUoKSwgVih0LnllYXIoKSwgZSkpLCB0Ll9kWyJzZXQiICsgKHQuX2lzVVRDID8gIlVUQyIgOiAiIikgKyAiTW9udGgiXShlLCBpKSwgdAogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIEUodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsICE9IHQgPyAoSCh0aGlzLCB0KSwgcC51cGRhdGVPZmZzZXQodGhpcywgITApLCB0aGlzKSA6IEEodGhpcywgIk1vbnRoIikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBqKCkgewogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHQodCwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5sZW5ndGggLSB0Lmxlbmd0aAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiA9IFtdLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gW10sCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBbXTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGUgPSAwOyBlIDwgMTI7IGUrKykgaSA9IGcoWzJlMywgZV0pLCBuLnB1c2godGhpcy5tb250aHNTaG9ydChpLCAiIikpLCBhLnB1c2godGhpcy5tb250aHMoaSwgIiIpKSwgci5wdXNoKHRoaXMubW9udGhzKGksICIiKSksIHIucHVzaCh0aGlzLm1vbnRoc1Nob3J0KGksICIiKSk7CiAgICAgICAgICAgICAgICAgICAgZm9yIChuLnNvcnQodCksIGEuc29ydCh0KSwgci5zb3J0KHQpLCBlID0gMDsgZSA8IDEyOyBlKyspIG5bZV0gPSBOKG5bZV0pLCBhW2VdID0gTihhW2VdKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGUgPSAwOyBlIDwgMjQ7IGUrKykgcltlXSA9IE4ocltlXSk7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbW9udGhzUmVnZXggPSBuZXcgUmVnRXhwKCJeKCIgKyByLmpvaW4oInwiKSArICIpIiwgImkiKSwgdGhpcy5fbW9udGhzU2hvcnRSZWdleCA9IHRoaXMuX21vbnRoc1JlZ2V4LCB0aGlzLl9tb250aHNTdHJpY3RSZWdleCA9IG5ldyBSZWdFeHAoIl4oIiArIGEuam9pbigifCIpICsgIikiLCAiaSIpLCB0aGlzLl9tb250aHNTaG9ydFN0cmljdFJlZ2V4ID0gbmV3IFJlZ0V4cCgiXigiICsgbi5qb2luKCJ8IikgKyAiKSIsICJpIikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBVKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gcSh0KSA/IDM2NiA6IDM2NQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHEodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0ICUgNCA9PSAwICYmIHQgJSAxMDAgIT0gMCB8fCB0ICUgNDAwID09IDAKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBHKHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IG5ldyBEYXRlKERhdGUuVVRDLmFwcGx5KG51bGwsIGFyZ3VtZW50cykpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IDwgMTAwICYmIDAgPD0gdCAmJiBpc0Zpbml0ZShlLmdldFVUQ0Z1bGxZZWFyKCkpICYmIGUuc2V0VVRDRnVsbFllYXIodCksIGUKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBaKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IDcgKyBlIC0gaTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gLSg3ICsgRyh0LCAwLCBuKS5nZXRVVENEYXkoKSAtIGUpICUgNyArIG4gLSAxCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gWCh0LCBlLCBpLCBuLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIsIG8sIHMgPSAxICsgNyAqIChlIC0gMSkgKyAoNyArIGkgLSBuKSAlIDcgKyBaKHQsIG4sIGEpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBvID0gcyA8PSAwID8gVShyID0gdCAtIDEpICsgcyA6IHMgPiBVKHQpID8gKHIgPSB0ICsgMSwgcyAtIFUodCkpIDogKHIgPSB0LCBzKSwgewogICAgICAgICAgICAgICAgICAgICAgICB5ZWFyOiByLAogICAgICAgICAgICAgICAgICAgICAgICBkYXlPZlllYXI6IG8KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gSih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIGEsIHIgPSBaKHQueWVhcigpLCBlLCBpKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IE1hdGguZmxvb3IoKHQuZGF5T2ZZZWFyKCkgLSByIC0gMSkgLyA3KSArIDE7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8gPCAxID8gbiA9IG8gKyBLKGEgPSB0LnllYXIoKSAtIDEsIGUsIGkpIDogbyA+IEsodC55ZWFyKCksIGUsIGkpID8gKG4gPSBvIC0gSyh0LnllYXIoKSwgZSwgaSksIGEgPSB0LnllYXIoKSArIDEpIDogKGEgPSB0LnllYXIoKSwgbiA9IG8pLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHdlZWs6IG4sCiAgICAgICAgICAgICAgICAgICAgICAgIHllYXI6IGEKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gSyh0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSBaKHQsIGUsIGkpLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gWih0ICsgMSwgZSwgaSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChVKHQpIC0gbiArIGEpIC8gNwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIFEoKSB7CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLmxlbmd0aCAtIHQubGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByLCBvID0gW10sCiAgICAgICAgICAgICAgICAgICAgICAgIHMgPSBbXSwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9IFtdLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gW107CiAgICAgICAgICAgICAgICAgICAgZm9yIChlID0gMDsgZSA8IDc7IGUrKykgaSA9IGcoWzJlMywgMV0pLmRheShlKSwgbiA9IHRoaXMud2Vla2RheXNNaW4oaSwgIiIpLCBhID0gdGhpcy53ZWVrZGF5c1Nob3J0KGksICIiKSwgciA9IHRoaXMud2Vla2RheXMoaSwgIiIpLCBvLnB1c2gobiksIHMucHVzaChhKSwgbC5wdXNoKHIpLCB1LnB1c2gobiksIHUucHVzaChhKSwgdS5wdXNoKHIpOwogICAgICAgICAgICAgICAgICAgIGZvciAoby5zb3J0KHQpLCBzLnNvcnQodCksIGwuc29ydCh0KSwgdS5zb3J0KHQpLCBlID0gMDsgZSA8IDc7IGUrKykgc1tlXSA9IE4oc1tlXSksIGxbZV0gPSBOKGxbZV0pLCB1W2VdID0gTih1W2VdKTsKICAgICAgICAgICAgICAgICAgICB0aGlzLl93ZWVrZGF5c1JlZ2V4ID0gbmV3IFJlZ0V4cCgiXigiICsgdS5qb2luKCJ8IikgKyAiKSIsICJpIiksIHRoaXMuX3dlZWtkYXlzU2hvcnRSZWdleCA9IHRoaXMuX3dlZWtkYXlzUmVnZXgsIHRoaXMuX3dlZWtkYXlzTWluUmVnZXggPSB0aGlzLl93ZWVrZGF5c1JlZ2V4LCB0aGlzLl93ZWVrZGF5c1N0cmljdFJlZ2V4ID0gbmV3IFJlZ0V4cCgiXigiICsgbC5qb2luKCJ8IikgKyAiKSIsICJpIiksIHRoaXMuX3dlZWtkYXlzU2hvcnRTdHJpY3RSZWdleCA9IG5ldyBSZWdFeHAoIl4oIiArIHMuam9pbigifCIpICsgIikiLCAiaSIpLCB0aGlzLl93ZWVrZGF5c01pblN0cmljdFJlZ2V4ID0gbmV3IFJlZ0V4cCgiXigiICsgby5qb2luKCJ8IikgKyAiKSIsICJpIikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiAkKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmhvdXJzKCkgJSAxMiB8fCAxMgogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHR0KHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBGKHQsIDAsIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkubWVyaWRpZW0odGhpcy5ob3VycygpLCB0aGlzLm1pbnV0ZXMoKSwgZSkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGV0KHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5fbWVyaWRpZW1QYXJzZQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGl0KHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdCA/IHQudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCJfIiwgIi0iKSA6IHQKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBudCh0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIGlmICghcWVbdF0gJiYgdm9pZCAwICE9PSBOaSAmJiBOaSAmJiBOaS5leHBvcnRzKSB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBlID0gRWUuX2FiYnIsIFlpKCIuL2xvY2FsZS8iICsgdCksIGF0KGUpCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAodCkge30KICAgICAgICAgICAgICAgICAgICByZXR1cm4gcWVbdF0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBhdCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgJiYgKGkgPSB1KGUpID8gb3QodCkgOiBydCh0LCBlKSkgJiYgKEVlID0gaSksIEVlLl9hYmJyCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gcnQodCwgZSkgewogICAgICAgICAgICAgICAgICAgIGlmIChudWxsID09PSBlKSByZXR1cm4gZGVsZXRlIHFlW3RdLCBudWxsOwogICAgICAgICAgICAgICAgICAgIHZhciBpID0gVWU7CiAgICAgICAgICAgICAgICAgICAgaWYgKGUuYWJiciA9IHQsIG51bGwgIT0gcWVbdF0pIHIoImRlZmluZUxvY2FsZU92ZXJyaWRlIiwgInVzZSBtb21lbnQudXBkYXRlTG9jYWxlKGxvY2FsZU5hbWUsIGNvbmZpZykgdG8gY2hhbmdlIGFuIGV4aXN0aW5nIGxvY2FsZS4gbW9tZW50LmRlZmluZUxvY2FsZShsb2NhbGVOYW1lLCBjb25maWcpIHNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIGNyZWF0aW5nIGEgbmV3IGxvY2FsZSBTZWUgaHR0cDovL21vbWVudGpzLmNvbS9ndWlkZXMvIy93YXJuaW5ncy9kZWZpbmUtbG9jYWxlLyBmb3IgbW9yZSBpbmZvLiIpLCBpID0gcWVbdF0uX2NvbmZpZzsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChudWxsICE9IGUucGFyZW50TG9jYWxlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChudWxsID09IHFlW2UucGFyZW50TG9jYWxlXSkgcmV0dXJuIEdlW2UucGFyZW50TG9jYWxlXSB8fCAoR2VbZS5wYXJlbnRMb2NhbGVdID0gW10pLCBHZVtlLnBhcmVudExvY2FsZV0ucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiB0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnOiBlCiAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICBpID0gcWVbZS5wYXJlbnRMb2NhbGVdLl9jb25maWcKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHFlW3RdID0gbmV3IEMoYShpLCBlKSksIEdlW3RdICYmIEdlW3RdLmZvckVhY2goZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICBydCh0Lm5hbWUsIHQuY29uZmlnKQogICAgICAgICAgICAgICAgICAgIH0pLCBhdCh0KSwgcWVbdF0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBvdCh0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGU7CiAgICAgICAgICAgICAgICAgICAgaWYgKHQgJiYgdC5fbG9jYWxlICYmIHQuX2xvY2FsZS5fYWJiciAmJiAodCA9IHQuX2xvY2FsZS5fYWJiciksICF0KSByZXR1cm4gRWU7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFzKHQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlID0gbnQodCkpIHJldHVybiBlOwogICAgICAgICAgICAgICAgICAgICAgICB0ID0gW3RdCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGUsIGksIG4sIGEsIHIgPSAwOyByIDwgdC5sZW5ndGg7KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGUgPSAoYSA9IGl0KHRbcl0pLnNwbGl0KCItIikpLmxlbmd0aCwgaSA9IChpID0gaXQodFtyICsgMV0pKSA/IGkuc3BsaXQoIi0iKSA6IG51bGw7IDAgPCBlOykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuID0gbnQoYS5zbGljZSgwLCBlKS5qb2luKCItIikpKSByZXR1cm4gbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSAmJiBpLmxlbmd0aCA+PSBlICYmIG8oYSwgaSwgITApID49IGUgLSAxKSBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLS0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIrKwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsCiAgICAgICAgICAgICAgICAgICAgfSh0KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHN0KHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSA9IHQuX2E7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkgJiYgLTIgPT09IHkodCkub3ZlcmZsb3cgJiYgKGUgPSBpW2tlXSA8IDAgfHwgMTEgPCBpW2tlXSA/IGtlIDogaVt3ZV0gPCAxIHx8IGlbd2VdID4gVihpW19lXSwgaVtrZV0pID8gd2UgOiBpW01lXSA8IDAgfHwgMjQgPCBpW01lXSB8fCAyNCA9PT0gaVtNZV0gJiYgKDAgIT09IGlbU2VdIHx8IDAgIT09IGlbRGVdIHx8IDAgIT09IGlbQ2VdKSA/IE1lIDogaVtTZV0gPCAwIHx8IDU5IDwgaVtTZV0gPyBTZSA6IGlbRGVdIDwgMCB8fCA1OSA8IGlbRGVdID8gRGUgOiBpW0NlXSA8IDAgfHwgOTk5IDwgaVtDZV0gPyBDZSA6IC0xLCB5KHQpLl9vdmVyZmxvd0RheU9mWWVhciAmJiAoZSA8IF9lIHx8IHdlIDwgZSkgJiYgKGUgPSB3ZSksIHkodCkuX292ZXJmbG93V2Vla3MgJiYgLTEgPT09IGUgJiYgKGUgPSBQZSksIHkodCkuX292ZXJmbG93V2Vla2RheSAmJiAtMSA9PT0gZSAmJiAoZSA9IFRlKSwgeSh0KS5vdmVyZmxvdyA9IGUpLCB0CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gbHQodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByLCBvLCBzID0gdC5faSwKICAgICAgICAgICAgICAgICAgICAgICAgbCA9IFplLmV4ZWMocykgfHwgWGUuZXhlYyhzKTsKICAgICAgICAgICAgICAgICAgICBpZiAobCkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHkodCkuaXNvID0gITAsIGUgPSAwLCBpID0gS2UubGVuZ3RoOyBlIDwgaTsgZSsrKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEtlW2VdWzFdLmV4ZWMobFsxXSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gS2VbZV1bMF0sIG4gPSAhMSAhPT0gS2VbZV1bMl07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG51bGwgPT0gYSkgcmV0dXJuIHZvaWQodC5faXNWYWxpZCA9ICExKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxbM10pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoZSA9IDAsIGkgPSBRZS5sZW5ndGg7IGUgPCBpOyBlKyspCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFFlW2VdWzFdLmV4ZWMobFszXSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciA9IChsWzJdIHx8ICIgIikgKyBRZVtlXVswXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCA9PSByKSByZXR1cm4gdm9pZCh0Ll9pc1ZhbGlkID0gITEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFuICYmIG51bGwgIT0gcikgcmV0dXJuIHZvaWQodC5faXNWYWxpZCA9ICExKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxbNF0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghSmUuZXhlYyhsWzRdKSkgcmV0dXJuIHZvaWQodC5faXNWYWxpZCA9ICExKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPSAiWiIKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB0Ll9mID0gYSArIChyIHx8ICIiKSArIChvIHx8ICIiKSwgY3QodCkKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgdC5faXNWYWxpZCA9ICExCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gdXQodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByLCBvLCBzLCBsID0gewogICAgICAgICAgICAgICAgICAgICAgICAiIEdNVCI6ICIgKzAwMDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIEVEVCI6ICIgLTA0MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIEVTVCI6ICIgLTA1MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIENEVCI6ICIgLTA1MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIENTVCI6ICIgLTA2MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIE1EVCI6ICIgLTA2MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIE1TVCI6ICIgLTA3MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIFBEVCI6ICIgLTA3MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAiIFBTVCI6ICIgLTA4MDAiCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICBpZiAoZSA9IHQuX2kucmVwbGFjZSgvXChbXlwpXSpcKXxbXG5cdF0vZywgIiAiKS5yZXBsYWNlKC8oXHNccyspL2csICIgIikucmVwbGFjZSgvXlxzfFxzJC9nLCAiIiksIGkgPSB0aS5leGVjKGUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuID0gaVsxXSA/ICJkZGQiICsgKDUgPT09IGlbMV0ubGVuZ3RoID8gIiwgIiA6ICIgIikgOiAiIiwgYSA9ICJEIE1NTSAiICsgKDEwIDwgaVsyXS5sZW5ndGggPyAiWVlZWSAiIDogIllZICIpLCByID0gIkhIOm1tIiArIChpWzRdID8gIjpzcyIgOiAiIiksIGlbMV0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB1ID0gWyJTdW4iLCAiTW9uIiwgIlR1ZSIsICJXZWQiLCAiVGh1IiwgIkZyaSIsICJTYXQiXVtuZXcgRGF0ZShpWzJdKS5nZXREYXkoKV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaVsxXS5zdWJzdHIoMCwgMykgIT09IHUpIHJldHVybiB5KHQpLndlZWtkYXlNaXNtYXRjaCA9ICEwLCB2b2lkKHQuX2lzVmFsaWQgPSAhMSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGlbNV0ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyA9IDAgPT09IHMgPyAiICswMDAwIiA6ICgocyA9ICJZWFdWVVRTUlFQT05aQUJDREVGR0hJS0xNIi5pbmRleE9mKGlbNV1bMV0udG9VcHBlckNhc2UoKSkgLSAxMikgPCAwID8gIiAtIiA6ICIgKyIpICsgKCIiICsgcykucmVwbGFjZSgvXi0/LywgIjAiKS5tYXRjaCgvLi4kLylbMF0gKyAiMDAiOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBsW2lbNV1dOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvID0gbFsiIEdNVCJdCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaVs1XSA9IG8sIHQuX2kgPSBpLnNwbGljZSgxKS5qb2luKCIiKSwgIiBaWiIsIHQuX2YgPSBuICsgYSArIHIgKyAiIFpaIiwgY3QodCksIHkodCkucmZjMjgyMiA9ICEwCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHQuX2lzVmFsaWQgPSAhMQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGR0KHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSB0ID8gdCA6IG51bGwgIT0gZSA/IGUgOiBpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gaHQodCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByLCBvLCBzID0gW107CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0Ll9kKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAociA9IHQsIG8gPSB2b2lkIDAsIG8gPSBuZXcgRGF0ZShwLm5vdygpKSwgbiA9IHIuX3VzZVVUQyA/IFtvLmdldFVUQ0Z1bGxZZWFyKCksIG8uZ2V0VVRDTW9udGgoKSwgby5nZXRVVENEYXRlKCldIDogW28uZ2V0RnVsbFllYXIoKSwgby5nZXRNb250aCgpLCBvLmdldERhdGUoKV0sIHQuX3cgJiYgbnVsbCA9PSB0Ll9hW3dlXSAmJiBudWxsID09IHQuX2Fba2VdICYmIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgYSwgciwgbywgcywgbDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCAhPSAoZSA9IHQuX3cpLkdHIHx8IG51bGwgIT0gZS5XIHx8IG51bGwgIT0gZS5FKSByID0gMSwgbyA9IDQsIGkgPSBkdChlLkdHLCB0Ll9hW19lXSwgSihtdCgpLCAxLCA0KS55ZWFyKSwgbiA9IGR0KGUuVywgMSksICgoYSA9IGR0KGUuRSwgMSkpIDwgMSB8fCA3IDwgYSkgJiYgKGwgPSAhMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgPSB0Ll9sb2NhbGUuX3dlZWsuZG93LCBvID0gdC5fbG9jYWxlLl93ZWVrLmRveTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHUgPSBKKG10KCksIHIsIG8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpID0gZHQoZS5nZywgdC5fYVtfZV0sIHUueWVhciksIG4gPSBkdChlLncsIHUud2VlayksIG51bGwgIT0gZS5kID8gKChhID0gZS5kKSA8IDAgfHwgNiA8IGEpICYmIChsID0gITApIDogbnVsbCAhPSBlLmUgPyAoYSA9IGUuZSArIHIsIChlLmUgPCAwIHx8IDYgPCBlLmUpICYmIChsID0gITApKSA6IGEgPSByCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4gPCAxIHx8IG4gPiBLKGksIHIsIG8pID8geSh0KS5fb3ZlcmZsb3dXZWVrcyA9ICEwIDogbnVsbCAhPSBsID8geSh0KS5fb3ZlcmZsb3dXZWVrZGF5ID0gITAgOiAocyA9IFgoaSwgbiwgYSwgciwgbyksIHQuX2FbX2VdID0gcy55ZWFyLCB0Ll9kYXlPZlllYXIgPSBzLmRheU9mWWVhcikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0odCksIG51bGwgIT0gdC5fZGF5T2ZZZWFyICYmIChhID0gZHQodC5fYVtfZV0sIG5bX2VdKSwgKHQuX2RheU9mWWVhciA+IFUoYSkgfHwgMCA9PT0gdC5fZGF5T2ZZZWFyKSAmJiAoeSh0KS5fb3ZlcmZsb3dEYXlPZlllYXIgPSAhMCksIGkgPSBHKGEsIDAsIHQuX2RheU9mWWVhciksIHQuX2Fba2VdID0gaS5nZXRVVENNb250aCgpLCB0Ll9hW3dlXSA9IGkuZ2V0VVRDRGF0ZSgpKSwgZSA9IDA7IGUgPCAzICYmIG51bGwgPT0gdC5fYVtlXTsgKytlKSB0Ll9hW2VdID0gc1tlXSA9IG5bZV07CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoOyBlIDwgNzsgZSsrKSB0Ll9hW2VdID0gc1tlXSA9IG51bGwgPT0gdC5fYVtlXSA/IDIgPT09IGUgPyAxIDogMCA6IHQuX2FbZV07CiAgICAgICAgICAgICAgICAgICAgICAgIDI0ID09PSB0Ll9hW01lXSAmJiAwID09PSB0Ll9hW1NlXSAmJiAwID09PSB0Ll9hW0RlXSAmJiAwID09PSB0Ll9hW0NlXSAmJiAodC5fbmV4dERheSA9ICEwLCB0Ll9hW01lXSA9IDApLCB0Ll9kID0gKHQuX3VzZVVUQyA/IEcgOiBmdW5jdGlvbih0LCBlLCBpLCBuLCBhLCByLCBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcyA9IG5ldyBEYXRlKHQsIGUsIGksIG4sIGEsIHIsIG8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgPCAxMDAgJiYgMCA8PSB0ICYmIGlzRmluaXRlKHMuZ2V0RnVsbFllYXIoKSkgJiYgcy5zZXRGdWxsWWVhcih0KSwgcwogICAgICAgICAgICAgICAgICAgICAgICB9KS5hcHBseShudWxsLCBzKSwgbnVsbCAhPSB0Ll90em0gJiYgdC5fZC5zZXRVVENNaW51dGVzKHQuX2QuZ2V0VVRDTWludXRlcygpIC0gdC5fdHptKSwgdC5fbmV4dERheSAmJiAodC5fYVtNZV0gPSAyNCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gY3QodCkgewogICAgICAgICAgICAgICAgICAgIGlmICh0Ll9mICE9PSBwLklTT184NjAxKQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodC5fZiAhPT0gcC5SRkNfMjgyMikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdC5fYSA9IFtdLCB5KHQpLmVtcHR5ID0gITA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgYSwgciwgbyA9ICIiICsgdC5faSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzID0gby5sZW5ndGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKG4gPSBMKHQuX2YsIHQuX2xvY2FsZSkubWF0Y2goJHQpIHx8IFtdLCBlID0gMDsgZSA8IG4ubGVuZ3RoOyBlKyspIGEgPSBuW2VdLCAoaSA9IChvLm1hdGNoKFkoYSwgdCkpIHx8IFtdKVswXSkgJiYgKDAgPCAociA9IG8uc3Vic3RyKDAsIG8uaW5kZXhPZihpKSkpLmxlbmd0aCAmJiB5KHQpLnVudXNlZElucHV0LnB1c2gociksIG8gPSBvLnNsaWNlKG8uaW5kZXhPZihpKSArIGkubGVuZ3RoKSwgbCArPSBpLmxlbmd0aCksIGllW2FdID8gKGkgPyB5KHQpLmVtcHR5ID0gITEgOiB5KHQpLnVudXNlZFRva2Vucy5wdXNoKGEpLCBmID0gYSwgbSA9IHQsIG51bGwgIT0gKGcgPSBpKSAmJiB2KHhlLCBmKSAmJiB4ZVtmXShnLCBtLl9hLCBtLCBmKSkgOiB0Ll9zdHJpY3QgJiYgIWkgJiYgeSh0KS51bnVzZWRUb2tlbnMucHVzaChhKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkodCkuY2hhcnNMZWZ0T3ZlciA9IHMgLSBsLCAwIDwgby5sZW5ndGggJiYgeSh0KS51bnVzZWRJbnB1dC5wdXNoKG8pLCB0Ll9hW01lXSA8PSAxMiAmJiAhMCA9PT0geSh0KS5iaWdIb3VyICYmIDAgPCB0Ll9hW01lXSAmJiAoeSh0KS5iaWdIb3VyID0gdm9pZCAwKSwgeSh0KS5wYXJzZWREYXRlUGFydHMgPSB0Ll9hLnNsaWNlKDApLCB5KHQpLm1lcmlkaWVtID0gdC5fbWVyaWRpZW0sIHQuX2FbTWVdID0gKHUgPSB0Ll9sb2NhbGUsIGQgPSB0Ll9hW01lXSwgbnVsbCA9PSAoaCA9IHQuX21lcmlkaWVtKSA/IGQgOiBudWxsICE9IHUubWVyaWRpZW1Ib3VyID8gdS5tZXJpZGllbUhvdXIoZCwgaCkgOiAobnVsbCAhPSB1LmlzUE0gJiYgKChjID0gdS5pc1BNKGgpKSAmJiBkIDwgMTIgJiYgKGQgKz0gMTIpLCBjIHx8IDEyICE9PSBkIHx8IChkID0gMCkpLCBkKSksIGh0KHQpLCBzdCh0KQogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgdXQodCk7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBsdCh0KTsKICAgICAgICAgICAgICAgICAgICB2YXIgdSwgZCwgaCwgYywgZiwgZywgbQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZ0KHQpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZSwgaSwgbiwgYSwgciA9IHQuX2ksCiAgICAgICAgICAgICAgICAgICAgICAgIG8gPSB0Ll9mOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0Ll9sb2NhbGUgPSB0Ll9sb2NhbGUgfHwgb3QodC5fbCksIG51bGwgPT09IHIgfHwgdm9pZCAwID09PSBvICYmICIiID09PSByID8gYih7CiAgICAgICAgICAgICAgICAgICAgICAgIG51bGxJbnB1dDogITAKICAgICAgICAgICAgICAgICAgICB9KSA6ICgic3RyaW5nIiA9PSB0eXBlb2YgciAmJiAodC5faSA9IHIgPSB0Ll9sb2NhbGUucHJlcGFyc2UocikpLCBrKHIpID8gbmV3IF8oc3QocikpIDogKGgocikgPyB0Ll9kID0gciA6IHMobykgPyBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuLCBhLCByOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoMCA9PT0gdC5fZi5sZW5ndGgpIHJldHVybiB5KHQpLmludmFsaWRGb3JtYXQgPSAhMCwgdC5fZCA9IG5ldyBEYXRlKE5hTik7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoYSA9IDA7IGEgPCB0Ll9mLmxlbmd0aDsgYSsrKSByID0gMCwgZSA9IHgoe30sIHQpLCBudWxsICE9IHQuX3VzZVVUQyAmJiAoZS5fdXNlVVRDID0gdC5fdXNlVVRDKSwgZS5fZiA9IHQuX2ZbYV0sIGN0KGUpLCBtKGUpICYmIChyICs9IHkoZSkuY2hhcnNMZWZ0T3ZlciwgciArPSAxMCAqIHkoZSkudW51c2VkVG9rZW5zLmxlbmd0aCwgeShlKS5zY29yZSA9IHIsIChudWxsID09IG4gfHwgciA8IG4pICYmIChuID0gciwgaSA9IGUpKTsKICAgICAgICAgICAgICAgICAgICAgICAgZih0LCBpIHx8IGUpCiAgICAgICAgICAgICAgICAgICAgfSh0KSA6IG8gPyBjdCh0KSA6IHUoaSA9IChlID0gdCkuX2kpID8gZS5fZCA9IG5ldyBEYXRlKHAubm93KCkpIDogaChpKSA/IGUuX2QgPSBuZXcgRGF0ZShpLnZhbHVlT2YoKSkgOiAic3RyaW5nIiA9PSB0eXBlb2YgaSA/IChuID0gZSwgbnVsbCA9PT0gKGEgPSAkZS5leGVjKG4uX2kpKSA/IChsdChuKSwgITEgPT09IG4uX2lzVmFsaWQgJiYgKGRlbGV0ZSBuLl9pc1ZhbGlkLCB1dChuKSwgITEgPT09IG4uX2lzVmFsaWQgJiYgKGRlbGV0ZSBuLl9pc1ZhbGlkLCBwLmNyZWF0ZUZyb21JbnB1dEZhbGxiYWNrKG4pKSkpIDogbi5fZCA9IG5ldyBEYXRlKCthWzFdKSkgOiBzKGkpID8gKGUuX2EgPSBjKGkuc2xpY2UoMCksIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlSW50KHQsIDEwKQogICAgICAgICAgICAgICAgICAgIH0pLCBodChlKSkgOiBsKGkpID8gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXQuX2QpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0gVCh0Ll9pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQuX2EgPSBjKFtlLnllYXIsIGUubW9udGgsIGUuZGF5IHx8IGUuZGF0ZSwgZS5ob3VyLCBlLm1pbnV0ZSwgZS5zZWNvbmQsIGUubWlsbGlzZWNvbmRdLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgJiYgcGFyc2VJbnQodCwgMTApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSwgaHQodCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0oZSkgOiBkKGkpID8gZS5fZCA9IG5ldyBEYXRlKGkpIDogcC5jcmVhdGVGcm9tSW5wdXRGYWxsYmFjayhlKSwgbSh0KSB8fCAodC5fZCA9IG51bGwpLCB0KSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBndCh0LCBlLCBpLCBuLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHIsIG8gPSB7fTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gITAgIT09IGkgJiYgITEgIT09IGkgfHwgKG4gPSBpLCBpID0gdm9pZCAwKSwgKGwodCkgJiYgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZTsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChlIGluIHQpIHJldHVybiAhMTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICEwCiAgICAgICAgICAgICAgICAgICAgfSh0KSB8fCBzKHQpICYmIDAgPT09IHQubGVuZ3RoKSAmJiAodCA9IHZvaWQgMCksIG8uX2lzQU1vbWVudE9iamVjdCA9ICEwLCBvLl91c2VVVEMgPSBvLl9pc1VUQyA9IGEsIG8uX2wgPSBpLCBvLl9pID0gdCwgby5fZiA9IGUsIG8uX3N0cmljdCA9IG4sIChyID0gbmV3IF8oc3QoZnQobykpKSkuX25leHREYXkgJiYgKHIuYWRkKDEsICJkIiksIHIuX25leHREYXkgPSB2b2lkIDApLCByCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gbXQodCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBndCh0LCBlLCBpLCBuLCAhMSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBwdCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG47CiAgICAgICAgICAgICAgICAgICAgaWYgKDEgPT09IGUubGVuZ3RoICYmIHMoZVswXSkgJiYgKGUgPSBlWzBdKSwgIWUubGVuZ3RoKSByZXR1cm4gbXQoKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSBlWzBdLCBuID0gMTsgbiA8IGUubGVuZ3RoOyArK24pIGVbbl0uaXNWYWxpZCgpICYmICFlW25dW3RdKGkpIHx8IChpID0gZVtuXSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiB2dCh0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBUKHQpLAogICAgICAgICAgICAgICAgICAgICAgICBpID0gZS55ZWFyIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBlLnF1YXJ0ZXIgfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IGUubW9udGggfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgciA9IGUud2VlayB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gZS5kYXkgfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IGUuaG91ciB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICBsID0gZS5taW51dGUgfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgdSA9IGUuc2Vjb25kIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGQgPSBlLm1pbGxpc2Vjb25kIHx8IDA7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNWYWxpZCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgZSBpbiB0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKC0xID09PSBuaS5pbmRleE9mKGUpIHx8IG51bGwgIT0gdFtlXSAmJiBpc05hTih0W2VdKSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gITEsIG4gPSAwOyBuIDwgbmkubGVuZ3RoOyArK24pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodFtuaVtuXV0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSkgcmV0dXJuICExOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlRmxvYXQodFtuaVtuXV0pICE9PSBNKHRbbmlbbl1dKSAmJiAoaSA9ICEwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gITAKICAgICAgICAgICAgICAgICAgICB9KGUpLCB0aGlzLl9taWxsaXNlY29uZHMgPSArZCArIDFlMyAqIHUgKyA2ZTQgKiBsICsgMWUzICogcyAqIDYwICogNjAsIHRoaXMuX2RheXMgPSArbyArIDcgKiByLCB0aGlzLl9tb250aHMgPSArYSArIDMgKiBuICsgMTIgKiBpLCB0aGlzLl9kYXRhID0ge30sIHRoaXMuX2xvY2FsZSA9IG90KCksIHRoaXMuX2J1YmJsZSgpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24geXQodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0IGluc3RhbmNlb2YgdnQKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBidCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgPCAwID8gLTEgKiBNYXRoLnJvdW5kKC0xICogdCkgOiBNYXRoLnJvdW5kKHQpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24geHQodCwgaSkgewogICAgICAgICAgICAgICAgICAgIEYodCwgMCwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy51dGNPZmZzZXQoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUgPSAiKyI7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0IDwgMCAmJiAodCA9IC10LCBlID0gIi0iKSwgZSArIE8ofn4odCAvIDYwKSwgMikgKyBpICsgTyh+fnQgJSA2MCwgMikKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIF90KHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IChlIHx8ICIiKS5tYXRjaCh0KTsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCA9PT0gaSkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4gPSAoKGlbaS5sZW5ndGggLSAxXSB8fCBbXSkgKyAiIikubWF0Y2goYWkpIHx8IFsiLSIsIDAsIDBdLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gNjAgKiBuWzFdICsgTShuWzJdKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gMCA9PT0gYSA/IDAgOiAiKyIgPT09IG5bMF0gPyBhIDogLWEKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBrdCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG47CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuX2lzVVRDID8gKGkgPSBlLmNsb25lKCksIG4gPSAoayh0KSB8fCBoKHQpID8gdC52YWx1ZU9mKCkgOiBtdCh0KS52YWx1ZU9mKCkpIC0gaS52YWx1ZU9mKCksIGkuX2Quc2V0VGltZShpLl9kLnZhbHVlT2YoKSArIG4pLCBwLnVwZGF0ZU9mZnNldChpLCAhMSksIGkpIDogbXQodCkubG9jYWwoKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHd0KHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTUgKiAtTWF0aC5yb3VuZCh0Ll9kLmdldFRpbWV6b25lT2Zmc2V0KCkgLyAxNSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBNdCgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gISF0aGlzLmlzVmFsaWQoKSAmJiB0aGlzLl9pc1VUQyAmJiAwID09PSB0aGlzLl9vZmZzZXQKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBTdCh0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGksIG4sIGEsIHIsIG8sIHMsIGwgPSB0LAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4geXQodCkgPyBsID0gewogICAgICAgICAgICAgICAgICAgICAgICBtczogdC5fbWlsbGlzZWNvbmRzLAogICAgICAgICAgICAgICAgICAgICAgICBkOiB0Ll9kYXlzLAogICAgICAgICAgICAgICAgICAgICAgICBNOiB0Ll9tb250aHMKICAgICAgICAgICAgICAgICAgICB9IDogZCh0KSA/IChsID0ge30sIGUgPyBsW2VdID0gdCA6IGwubWlsbGlzZWNvbmRzID0gdCkgOiAodSA9IHJpLmV4ZWModCkpID8gKGkgPSAiLSIgPT09IHVbMV0gPyAtMSA6IDEsIGwgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHk6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIGQ6IE0odVt3ZV0pICogaSwKICAgICAgICAgICAgICAgICAgICAgICAgaDogTSh1W01lXSkgKiBpLAogICAgICAgICAgICAgICAgICAgICAgICBtOiBNKHVbU2VdKSAqIGksCiAgICAgICAgICAgICAgICAgICAgICAgIHM6IE0odVtEZV0pICogaSwKICAgICAgICAgICAgICAgICAgICAgICAgbXM6IE0oYnQoMWUzICogdVtDZV0pKSAqIGkKICAgICAgICAgICAgICAgICAgICB9KSA6ICh1ID0gb2kuZXhlYyh0KSkgPyAoaSA9ICItIiA9PT0gdVsxXSA/IC0xIDogMSwgbCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgeTogRHQodVsyXSwgaSksCiAgICAgICAgICAgICAgICAgICAgICAgIE06IER0KHVbM10sIGkpLAogICAgICAgICAgICAgICAgICAgICAgICB3OiBEdCh1WzRdLCBpKSwKICAgICAgICAgICAgICAgICAgICAgICAgZDogRHQodVs1XSwgaSksCiAgICAgICAgICAgICAgICAgICAgICAgIGg6IER0KHVbNl0sIGkpLAogICAgICAgICAgICAgICAgICAgICAgICBtOiBEdCh1WzddLCBpKSwKICAgICAgICAgICAgICAgICAgICAgICAgczogRHQodVs4XSwgaSkKICAgICAgICAgICAgICAgICAgICB9KSA6IG51bGwgPT0gbCA/IGwgPSB7fSA6ICJvYmplY3QiID09IHR5cGVvZiBsICYmICgiZnJvbSIgaW4gbCB8fCAidG8iIGluIGwpICYmIChyID0gbXQobC5mcm9tKSwgbyA9IG10KGwudG8pLCBhID0gci5pc1ZhbGlkKCkgJiYgby5pc1ZhbGlkKCkgPyAobyA9IGt0KG8sIHIpLCByLmlzQmVmb3JlKG8pID8gcyA9IEN0KHIsIG8pIDogKChzID0gQ3QobywgcikpLm1pbGxpc2Vjb25kcyA9IC1zLm1pbGxpc2Vjb25kcywgcy5tb250aHMgPSAtcy5tb250aHMpLCBzKSA6IHsKICAgICAgICAgICAgICAgICAgICAgICAgbWlsbGlzZWNvbmRzOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBtb250aHM6IDAKICAgICAgICAgICAgICAgICAgICB9LCAobCA9IHt9KS5tcyA9IGEubWlsbGlzZWNvbmRzLCBsLk0gPSBhLm1vbnRocyksIG4gPSBuZXcgdnQobCksIHl0KHQpICYmIHYodCwgIl9sb2NhbGUiKSAmJiAobi5fbG9jYWxlID0gdC5fbG9jYWxlKSwgbgogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIER0KHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHQgJiYgcGFyc2VGbG9hdCh0LnJlcGxhY2UoIiwiLCAiLiIpKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gKGlzTmFOKGkpID8gMCA6IGkpICogZQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIEN0KHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgbWlsbGlzZWNvbmRzOiAwLAogICAgICAgICAgICAgICAgICAgICAgICBtb250aHM6IDAKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgIHJldHVybiBpLm1vbnRocyA9IGUubW9udGgoKSAtIHQubW9udGgoKSArIDEyICogKGUueWVhcigpIC0gdC55ZWFyKCkpLCB0LmNsb25lKCkuYWRkKGkubW9udGhzLCAiTSIpLmlzQWZ0ZXIoZSkgJiYgLS1pLm1vbnRocywgaS5taWxsaXNlY29uZHMgPSArZSAtICt0LmNsb25lKCkuYWRkKGkubW9udGhzLCAiTSIpLCBpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gUHQobiwgYSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCA9PT0gZSB8fCBpc05hTigrZSkgfHwgKHIoYSwgIm1vbWVudCgpLiIgKyBhICsgIihwZXJpb2QsIG51bWJlcikgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBtb21lbnQoKS4iICsgYSArICIobnVtYmVyLCBwZXJpb2QpLiBTZWUgaHR0cDovL21vbWVudGpzLmNvbS9ndWlkZXMvIy93YXJuaW5ncy9hZGQtaW52ZXJ0ZWQtcGFyYW0vIGZvciBtb3JlIGluZm8uIiksIGkgPSB0LCB0ID0gZSwgZSA9IGkpLCBUdCh0aGlzLCBTdCh0ID0gInN0cmluZyIgPT0gdHlwZW9mIHQgPyArdCA6IHQsIGUpLCBuKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBUdCh0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSBlLl9taWxsaXNlY29uZHMsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBidChlLl9kYXlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgbyA9IGJ0KGUuX21vbnRocyk7CiAgICAgICAgICAgICAgICAgICAgdC5pc1ZhbGlkKCkgJiYgKG4gPSBudWxsID09IG4gfHwgbiwgYSAmJiB0Ll9kLnNldFRpbWUodC5fZC52YWx1ZU9mKCkgKyBhICogaSksIHIgJiYgSSh0LCAiRGF0ZSIsIEEodCwgIkRhdGUiKSArIHIgKiBpKSwgbyAmJiBIKHQsIEEodCwgIk1vbnRoIikgKyBvICogaSksIG4gJiYgcC51cGRhdGVPZmZzZXQodCwgciB8fCBvKSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBBdCh0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGU7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdCA/IHRoaXMuX2xvY2FsZS5fYWJiciA6IChudWxsICE9IChlID0gb3QodCkpICYmICh0aGlzLl9sb2NhbGUgPSBlKSwgdGhpcykKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBJdCgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fbG9jYWxlCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gT3QodCwgZSkgewogICAgICAgICAgICAgICAgICAgIEYoMCwgW3QsIHQubGVuZ3RoXSwgMCwgZSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBGdCh0LCBlLCBpLCBuLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHI7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gdCA/IEoodGhpcywgbiwgYSkueWVhciA6ICgociA9IEsodCwgbiwgYSkpIDwgZSAmJiAoZSA9IHIpLCBmdW5jdGlvbih0LCBlLCBpLCBuLCBhKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByID0gWCh0LCBlLCBpLCBuLCBhKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gPSBHKHIueWVhciwgMCwgci5kYXlPZlllYXIpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy55ZWFyKG8uZ2V0VVRDRnVsbFllYXIoKSksIHRoaXMubW9udGgoby5nZXRVVENNb250aCgpKSwgdGhpcy5kYXRlKG8uZ2V0VVRDRGF0ZSgpKSwgdGhpcwogICAgICAgICAgICAgICAgICAgIH0uY2FsbCh0aGlzLCB0LCBlLCBpLCBuLCBhKSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBSdCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBMdCh0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSBvdCgpLAogICAgICAgICAgICAgICAgICAgICAgICByID0gZygpLnNldChuLCBlKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gYVtpXShyLCB0KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIFd0KHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoZCh0KSAmJiAoZSA9IHQsIHQgPSB2b2lkIDApLCB0ID0gdCB8fCAiIiwgbnVsbCAhPSBlKSByZXR1cm4gTHQodCwgZSwgaSwgIm1vbnRoIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIGEgPSBbXTsKICAgICAgICAgICAgICAgICAgICBmb3IgKG4gPSAwOyBuIDwgMTI7IG4rKykgYVtuXSA9IEx0KHQsIG4sIGksICJtb250aCIpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBhCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gWXQodCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIGUgPSAoImJvb2xlYW4iID09IHR5cGVvZiB0IHx8IChpID0gZSA9IHQsIHQgPSAhMSksIGQoZSkgJiYgKGkgPSBlLCBlID0gdm9pZCAwKSwgZSB8fCAiIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIGEgPSBvdCgpLAogICAgICAgICAgICAgICAgICAgICAgICByID0gdCA/IGEuX3dlZWsuZG93IDogMDsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCAhPSBpKSByZXR1cm4gTHQoZSwgKGkgKyByKSAlIDcsIG4sICJkYXkiKTsKICAgICAgICAgICAgICAgICAgICB2YXIgbywgcyA9IFtdOwogICAgICAgICAgICAgICAgICAgIGZvciAobyA9IDA7IG8gPCA3OyBvKyspIHNbb10gPSBMdChlLCAobyArIHIpICUgNywgbiwgImRheSIpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBzCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gTnQodCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIHZhciBhID0gU3QoZSwgaSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQuX21pbGxpc2Vjb25kcyArPSBuICogYS5fbWlsbGlzZWNvbmRzLCB0Ll9kYXlzICs9IG4gKiBhLl9kYXlzLCB0Ll9tb250aHMgKz0gbiAqIGEuX21vbnRocywgdC5fYnViYmxlKCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiB6dCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgPCAwID8gTWF0aC5mbG9vcih0KSA6IE1hdGguY2VpbCh0KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIEJ0KHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gNDgwMCAqIHQgLyAxNDYwOTcKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBWdCh0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE0NjA5NyAqIHQgLyA0ODAwCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gSHQodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXModCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgZnVuY3Rpb24gRXQodCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNWYWxpZCgpID8gdGhpcy5fZGF0YVt0XSA6IE5hTgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBqdCgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNWYWxpZCgpKSByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkuaW52YWxpZERhdGUoKTsKICAgICAgICAgICAgICAgICAgICB2YXIgdCwgZSwgaSA9IExpKHRoaXMuX21pbGxpc2Vjb25kcykgLyAxZTMsCiAgICAgICAgICAgICAgICAgICAgICAgIG4gPSBMaSh0aGlzLl9kYXlzKSwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IExpKHRoaXMuX21vbnRocyk7CiAgICAgICAgICAgICAgICAgICAgZSA9IHcoKHQgPSB3KGkgLyA2MCkpIC8gNjApLCBpICU9IDYwLCB0ICU9IDYwOwogICAgICAgICAgICAgICAgICAgIHZhciByID0gdyhhIC8gMTIpLAogICAgICAgICAgICAgICAgICAgICAgICBvID0gYSAlPSAxMiwKICAgICAgICAgICAgICAgICAgICAgICAgcyA9IG4sCiAgICAgICAgICAgICAgICAgICAgICAgIGwgPSBlLAogICAgICAgICAgICAgICAgICAgICAgICB1ID0gdCwKICAgICAgICAgICAgICAgICAgICAgICAgZCA9IGksCiAgICAgICAgICAgICAgICAgICAgICAgIGggPSB0aGlzLmFzU2Vjb25kcygpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBoID8gKGggPCAwID8gIi0iIDogIiIpICsgIlAiICsgKHIgPyByICsgIlkiIDogIiIpICsgKG8gPyBvICsgIk0iIDogIiIpICsgKHMgPyBzICsgIkQiIDogIiIpICsgKGwgfHwgdSB8fCBkID8gIlQiIDogIiIpICsgKGwgPyBsICsgIkgiIDogIiIpICsgKHUgPyB1ICsgIk0iIDogIiIpICsgKGQgPyBkICsgIlMiIDogIiIpIDogIlAwRCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHZhciBVdCwgcXQgPSBBcnJheS5wcm90b3R5cGUuc29tZSA/IEFycmF5LnByb3RvdHlwZS5zb21lIDogZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBlID0gT2JqZWN0KHRoaXMpLCBpID0gZS5sZW5ndGggPj4+IDAsIG4gPSAwOyBuIDwgaTsgbisrKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG4gaW4gZSAmJiB0LmNhbGwodGhpcywgZVtuXSwgbiwgZSkpIHJldHVybiAhMDsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICExCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBHdCA9IHAubW9tZW50UHJvcGVydGllcyA9IFtdLAogICAgICAgICAgICAgICAgICAgIFp0ID0gITEsCiAgICAgICAgICAgICAgICAgICAgWHQgPSB7fTsKICAgICAgICAgICAgICAgIHAuc3VwcHJlc3NEZXByZWNhdGlvbldhcm5pbmdzID0gITEsIHAuZGVwcmVjYXRpb25IYW5kbGVyID0gbnVsbDsKICAgICAgICAgICAgICAgIHZhciBKdCA9IE9iamVjdC5rZXlzID8gT2JqZWN0LmtleXMgOiBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlLCBpID0gW107CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoZSBpbiB0KSB2KHQsIGUpICYmIGkucHVzaChlKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGkKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIEt0ID0ge30sCiAgICAgICAgICAgICAgICAgICAgUXQgPSB7fSwKICAgICAgICAgICAgICAgICAgICAkdCA9IC8oXFtbXlxbXSpcXSl8KFxcKT8oW0hoXW1tKHNzKT98TW98TU0/TT9NP3xEb3xERERvfEREP0Q/RD98ZGRkP2Q/fGRvP3x3W298d10/fFdbb3xXXT98UW8/fFlZWVlZWXxZWVlZWXxZWVlZfFlZfGdnKGdnZz8pP3xHRyhHR0c/KT98ZXxFfGF8QXxoaD98SEg/fGtrP3xtbT98c3M/fFN7MSw5fXx4fFh8eno/fFpaP3wuKS9nLAogICAgICAgICAgICAgICAgICAgIHRlID0gLyhcW1teXFtdKlxdKXwoXFwpPyhMVFN8TFR8TEw/TD9MP3xsezEsNH0pL2csCiAgICAgICAgICAgICAgICAgICAgZWUgPSB7fSwKICAgICAgICAgICAgICAgICAgICBpZSA9IHt9LAogICAgICAgICAgICAgICAgICAgIG5lID0gL1xkLywKICAgICAgICAgICAgICAgICAgICBhZSA9IC9cZFxkLywKICAgICAgICAgICAgICAgICAgICByZSA9IC9cZHszfS8sCiAgICAgICAgICAgICAgICAgICAgb2UgPSAvXGR7NH0vLAogICAgICAgICAgICAgICAgICAgIHNlID0gL1srLV0/XGR7Nn0vLAogICAgICAgICAgICAgICAgICAgIGxlID0gL1xkXGQ/LywKICAgICAgICAgICAgICAgICAgICB1ZSA9IC9cZFxkXGRcZD8vLAogICAgICAgICAgICAgICAgICAgIGRlID0gL1xkXGRcZFxkXGRcZD8vLAogICAgICAgICAgICAgICAgICAgIGhlID0gL1xkezEsM30vLAogICAgICAgICAgICAgICAgICAgIGNlID0gL1xkezEsNH0vLAogICAgICAgICAgICAgICAgICAgIGZlID0gL1srLV0/XGR7MSw2fS8sCiAgICAgICAgICAgICAgICAgICAgZ2UgPSAvXGQrLywKICAgICAgICAgICAgICAgICAgICBtZSA9IC9bKy1dP1xkKy8sCiAgICAgICAgICAgICAgICAgICAgcGUgPSAvWnxbKy1dXGRcZDo/XGRcZC9naSwKICAgICAgICAgICAgICAgICAgICB2ZSA9IC9afFsrLV1cZFxkKD86Oj9cZFxkKT8vZ2ksCiAgICAgICAgICAgICAgICAgICAgeWUgPSAvWzAtOV0qWydhLXpcdTAwQTAtXHUwNUZGXHUwNzAwLVx1RDdGRlx1RjkwMC1cdUZEQ0ZcdUZERjAtXHVGRkVGXSt8W1x1MDYwMC1cdTA2RkZcL10rKFxzKj9bXHUwNjAwLVx1MDZGRl0rKXsxLDJ9L2ksCiAgICAgICAgICAgICAgICAgICAgYmUgPSB7fSwKICAgICAgICAgICAgICAgICAgICB4ZSA9IHt9LAogICAgICAgICAgICAgICAgICAgIF9lID0gMCwKICAgICAgICAgICAgICAgICAgICBrZSA9IDEsCiAgICAgICAgICAgICAgICAgICAgd2UgPSAyLAogICAgICAgICAgICAgICAgICAgIE1lID0gMywKICAgICAgICAgICAgICAgICAgICBTZSA9IDQsCiAgICAgICAgICAgICAgICAgICAgRGUgPSA1LAogICAgICAgICAgICAgICAgICAgIENlID0gNiwKICAgICAgICAgICAgICAgICAgICBQZSA9IDcsCiAgICAgICAgICAgICAgICAgICAgVGUgPSA4LAogICAgICAgICAgICAgICAgICAgIEFlID0gQXJyYXkucHJvdG90eXBlLmluZGV4T2YgPyBBcnJheS5wcm90b3R5cGUuaW5kZXhPZiA6IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGU7CiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoZSA9IDA7IGUgPCB0aGlzLmxlbmd0aDsgKytlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXNbZV0gPT09IHQpIHJldHVybiBlOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTEKICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgRigiTSIsIFsiTU0iLCAyXSwgIk1vIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubW9udGgoKSArIDEKICAgICAgICAgICAgICAgIH0pLCBGKCJNTU0iLCAwLCAwLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxlRGF0YSgpLm1vbnRoc1Nob3J0KHRoaXMsIHQpCiAgICAgICAgICAgICAgICB9KSwgRigiTU1NTSIsIDAsIDAsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkubW9udGhzKHRoaXMsIHQpCiAgICAgICAgICAgICAgICB9KSwgZSgibW9udGgiLCAiTSIpLCBpKCJtb250aCIsIDgpLCBXKCJNIiwgbGUpLCBXKCJNTSIsIGxlLCBhZSksIFcoIk1NTSIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5tb250aHNTaG9ydFJlZ2V4KHQpCiAgICAgICAgICAgICAgICB9KSwgVygiTU1NTSIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5tb250aHNSZWdleCh0KQogICAgICAgICAgICAgICAgfSksIHooWyJNIiwgIk1NIl0sIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBlW2tlXSA9IE0odCkgLSAxCiAgICAgICAgICAgICAgICB9KSwgeihbIk1NTSIsICJNTU1NIl0sIGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IGkuX2xvY2FsZS5tb250aHNQYXJzZSh0LCBuLCBpLl9zdHJpY3QpOwogICAgICAgICAgICAgICAgICAgIG51bGwgIT0gYSA/IGVba2VdID0gYSA6IHkoaSkuaW52YWxpZE1vbnRoID0gdAogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgSWUgPSAvRFtvRF0/KFxbW15cW1xdXSpcXXxccykrTU1NTT8vLAogICAgICAgICAgICAgICAgICAgIE9lID0gIkphbnVhcnlfRmVicnVhcnlfTWFyY2hfQXByaWxfTWF5X0p1bmVfSnVseV9BdWd1c3RfU2VwdGVtYmVyX09jdG9iZXJfTm92ZW1iZXJfRGVjZW1iZXIiLnNwbGl0KCJfIiksCiAgICAgICAgICAgICAgICAgICAgRmUgPSAiSmFuX0ZlYl9NYXJfQXByX01heV9KdW5fSnVsX0F1Z19TZXBfT2N0X05vdl9EZWMiLnNwbGl0KCJfIiksCiAgICAgICAgICAgICAgICAgICAgUmUgPSB5ZSwKICAgICAgICAgICAgICAgICAgICBMZSA9IHllOwogICAgICAgICAgICAgICAgRigiWSIsIDAsIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHZhciB0ID0gdGhpcy55ZWFyKCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQgPD0gOTk5OSA/ICIiICsgdCA6ICIrIiArIHQKICAgICAgICAgICAgICAgIH0pLCBGKDAsIFsiWVkiLCAyXSwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMueWVhcigpICUgMTAwCiAgICAgICAgICAgICAgICB9KSwgRigwLCBbIllZWVkiLCA0XSwgMCwgInllYXIiKSwgRigwLCBbIllZWVlZIiwgNV0sIDAsICJ5ZWFyIiksIEYoMCwgWyJZWVlZWVkiLCA2LCAhMF0sIDAsICJ5ZWFyIiksIGUoInllYXIiLCAieSIpLCBpKCJ5ZWFyIiwgMSksIFcoIlkiLCBtZSksIFcoIllZIiwgbGUsIGFlKSwgVygiWVlZWSIsIGNlLCBvZSksIFcoIllZWVlZIiwgZmUsIHNlKSwgVygiWVlZWVlZIiwgZmUsIHNlKSwgeihbIllZWVlZIiwgIllZWVlZWSJdLCBfZSksIHooIllZWVkiLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgZVtfZV0gPSAyID09PSB0Lmxlbmd0aCA/IHAucGFyc2VUd29EaWdpdFllYXIodCkgOiBNKHQpCiAgICAgICAgICAgICAgICB9KSwgeigiWVkiLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgZVtfZV0gPSBwLnBhcnNlVHdvRGlnaXRZZWFyKHQpCiAgICAgICAgICAgICAgICB9KSwgeigiWSIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBlW19lXSA9IHBhcnNlSW50KHQsIDEwKQogICAgICAgICAgICAgICAgfSksIHAucGFyc2VUd29EaWdpdFllYXIgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE0odCkgKyAoNjggPCBNKHQpID8gMTkwMCA6IDJlMykKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICB2YXIgV2UgPSBuKCJGdWxsWWVhciIsICEwKTsKICAgICAgICAgICAgICAgIEYoInciLCBbInd3IiwgMl0sICJ3byIsICJ3ZWVrIiksIEYoIlciLCBbIldXIiwgMl0sICJXbyIsICJpc29XZWVrIiksIGUoIndlZWsiLCAidyIpLCBlKCJpc29XZWVrIiwgIlciKSwgaSgid2VlayIsIDUpLCBpKCJpc29XZWVrIiwgNSksIFcoInciLCBsZSksIFcoInd3IiwgbGUsIGFlKSwgVygiVyIsIGxlKSwgVygiV1ciLCBsZSwgYWUpLCBCKFsidyIsICJ3dyIsICJXIiwgIldXIl0sIGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICBlW24uc3Vic3RyKDAsIDEpXSA9IE0odCkKICAgICAgICAgICAgICAgIH0pLCBGKCJkIiwgMCwgImRvIiwgImRheSIpLCBGKCJkZCIsIDAsIDAsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkud2Vla2RheXNNaW4odGhpcywgdCkKICAgICAgICAgICAgICAgIH0pLCBGKCJkZGQiLCAwLCAwLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxlRGF0YSgpLndlZWtkYXlzU2hvcnQodGhpcywgdCkKICAgICAgICAgICAgICAgIH0pLCBGKCJkZGRkIiwgMCwgMCwgZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS53ZWVrZGF5cyh0aGlzLCB0KQogICAgICAgICAgICAgICAgfSksIEYoImUiLCAwLCAwLCAid2Vla2RheSIpLCBGKCJFIiwgMCwgMCwgImlzb1dlZWtkYXkiKSwgZSgiZGF5IiwgImQiKSwgZSgid2Vla2RheSIsICJlIiksIGUoImlzb1dlZWtkYXkiLCAiRSIpLCBpKCJkYXkiLCAxMSksIGkoIndlZWtkYXkiLCAxMSksIGkoImlzb1dlZWtkYXkiLCAxMSksIFcoImQiLCBsZSksIFcoImUiLCBsZSksIFcoIkUiLCBsZSksIFcoImRkIiwgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBlLndlZWtkYXlzTWluUmVnZXgodCkKICAgICAgICAgICAgICAgIH0pLCBXKCJkZGQiLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUud2Vla2RheXNTaG9ydFJlZ2V4KHQpCiAgICAgICAgICAgICAgICB9KSwgVygiZGRkZCIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS53ZWVrZGF5c1JlZ2V4KHQpCiAgICAgICAgICAgICAgICB9KSwgQihbImRkIiwgImRkZCIsICJkZGRkIl0sIGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYSA9IGkuX2xvY2FsZS53ZWVrZGF5c1BhcnNlKHQsIG4sIGkuX3N0cmljdCk7CiAgICAgICAgICAgICAgICAgICAgbnVsbCAhPSBhID8gZS5kID0gYSA6IHkoaSkuaW52YWxpZFdlZWtkYXkgPSB0CiAgICAgICAgICAgICAgICB9KSwgQihbImQiLCAiZSIsICJFIl0sIGZ1bmN0aW9uKHQsIGUsIGksIG4pIHsKICAgICAgICAgICAgICAgICAgICBlW25dID0gTSh0KQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgWWUgPSAiU3VuZGF5X01vbmRheV9UdWVzZGF5X1dlZG5lc2RheV9UaHVyc2RheV9GcmlkYXlfU2F0dXJkYXkiLnNwbGl0KCJfIiksCiAgICAgICAgICAgICAgICAgICAgTmUgPSAiU3VuX01vbl9UdWVfV2VkX1RodV9GcmlfU2F0Ii5zcGxpdCgiXyIpLAogICAgICAgICAgICAgICAgICAgIHplID0gIlN1X01vX1R1X1dlX1RoX0ZyX1NhIi5zcGxpdCgiXyIpLAogICAgICAgICAgICAgICAgICAgIEJlID0geWUsCiAgICAgICAgICAgICAgICAgICAgVmUgPSB5ZSwKICAgICAgICAgICAgICAgICAgICBIZSA9IHllOwogICAgICAgICAgICAgICAgRigiSCIsIFsiSEgiLCAyXSwgMCwgImhvdXIiKSwgRigiaCIsIFsiaGgiLCAyXSwgMCwgJCksIEYoImsiLCBbImtrIiwgMl0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmhvdXJzKCkgfHwgMjQKICAgICAgICAgICAgICAgIH0pLCBGKCJobW0iLCAwLCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIiIgKyAkLmFwcGx5KHRoaXMpICsgTyh0aGlzLm1pbnV0ZXMoKSwgMikKICAgICAgICAgICAgICAgIH0pLCBGKCJobW1zcyIsIDAsIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAiIiArICQuYXBwbHkodGhpcykgKyBPKHRoaXMubWludXRlcygpLCAyKSArIE8odGhpcy5zZWNvbmRzKCksIDIpCiAgICAgICAgICAgICAgICB9KSwgRigiSG1tIiwgMCwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICIiICsgdGhpcy5ob3VycygpICsgTyh0aGlzLm1pbnV0ZXMoKSwgMikKICAgICAgICAgICAgICAgIH0pLCBGKCJIbW1zcyIsIDAsIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAiIiArIHRoaXMuaG91cnMoKSArIE8odGhpcy5taW51dGVzKCksIDIpICsgTyh0aGlzLnNlY29uZHMoKSwgMikKICAgICAgICAgICAgICAgIH0pLCB0dCgiYSIsICEwKSwgdHQoIkEiLCAhMSksIGUoImhvdXIiLCAiaCIpLCBpKCJob3VyIiwgMTMpLCBXKCJhIiwgZXQpLCBXKCJBIiwgZXQpLCBXKCJIIiwgbGUpLCBXKCJoIiwgbGUpLCBXKCJrIiwgbGUpLCBXKCJISCIsIGxlLCBhZSksIFcoImhoIiwgbGUsIGFlKSwgVygia2siLCBsZSwgYWUpLCBXKCJobW0iLCB1ZSksIFcoImhtbXNzIiwgZGUpLCBXKCJIbW0iLCB1ZSksIFcoIkhtbXNzIiwgZGUpLCB6KFsiSCIsICJISCJdLCBNZSksIHooWyJrIiwgImtrIl0sIGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IE0odCk7CiAgICAgICAgICAgICAgICAgICAgZVtNZV0gPSAyNCA9PT0gbiA/IDAgOiBuCiAgICAgICAgICAgICAgICB9KSwgeihbImEiLCAiQSJdLCBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgaS5faXNQbSA9IGkuX2xvY2FsZS5pc1BNKHQpLCBpLl9tZXJpZGllbSA9IHQKICAgICAgICAgICAgICAgIH0pLCB6KFsiaCIsICJoaCJdLCBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgZVtNZV0gPSBNKHQpLCB5KGkpLmJpZ0hvdXIgPSAhMAogICAgICAgICAgICAgICAgfSksIHooImhtbSIsIGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHQubGVuZ3RoIC0gMjsKICAgICAgICAgICAgICAgICAgICBlW01lXSA9IE0odC5zdWJzdHIoMCwgbikpLCBlW1NlXSA9IE0odC5zdWJzdHIobikpLCB5KGkpLmJpZ0hvdXIgPSAhMAogICAgICAgICAgICAgICAgfSksIHooImhtbXNzIiwgZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gdC5sZW5ndGggLSA0LAogICAgICAgICAgICAgICAgICAgICAgICBhID0gdC5sZW5ndGggLSAyOwogICAgICAgICAgICAgICAgICAgIGVbTWVdID0gTSh0LnN1YnN0cigwLCBuKSksIGVbU2VdID0gTSh0LnN1YnN0cihuLCAyKSksIGVbRGVdID0gTSh0LnN1YnN0cihhKSksIHkoaSkuYmlnSG91ciA9ICEwCiAgICAgICAgICAgICAgICB9KSwgeigiSG1tIiwgZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuID0gdC5sZW5ndGggLSAyOwogICAgICAgICAgICAgICAgICAgIGVbTWVdID0gTSh0LnN1YnN0cigwLCBuKSksIGVbU2VdID0gTSh0LnN1YnN0cihuKSkKICAgICAgICAgICAgICAgIH0pLCB6KCJIbW1zcyIsIGZ1bmN0aW9uKHQsIGUsIGkpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IHQubGVuZ3RoIC0gNCwKICAgICAgICAgICAgICAgICAgICAgICAgYSA9IHQubGVuZ3RoIC0gMjsKICAgICAgICAgICAgICAgICAgICBlW01lXSA9IE0odC5zdWJzdHIoMCwgbikpLCBlW1NlXSA9IE0odC5zdWJzdHIobiwgMikpLCBlW0RlXSA9IE0odC5zdWJzdHIoYSkpCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciBFZSwgamUgPSBuKCJIb3VycyIsICEwKSwKICAgICAgICAgICAgICAgICAgICBVZSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgY2FsZW5kYXI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbWVEYXk6ICJbVG9kYXkgYXRdIExUIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5leHREYXk6ICJbVG9tb3Jyb3cgYXRdIExUIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5leHRXZWVrOiAiZGRkZCBbYXRdIExUIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3REYXk6ICJbWWVzdGVyZGF5IGF0XSBMVCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0V2VlazogIltMYXN0XSBkZGRkIFthdF0gTFQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtZUVsc2U6ICJMIgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICBsb25nRGF0ZUZvcm1hdDogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRTOiAiaDptbTpzcyBBIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIExUOiAiaDptbSBBIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEw6ICJNTS9ERC9ZWVlZIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIExMOiAiTU1NTSBELCBZWVlZIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIExMTDogIk1NTU0gRCwgWVlZWSBoOm1tIEEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTExMTDogImRkZGQsIE1NTU0gRCwgWVlZWSBoOm1tIEEiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWREYXRlOiAiSW52YWxpZCBkYXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgb3JkaW5hbDogIiVkIiwKICAgICAgICAgICAgICAgICAgICAgICAgZGF5T2ZNb250aE9yZGluYWxQYXJzZTogL1xkezEsMn0vLAogICAgICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVRpbWU6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1dHVyZTogImluICVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3Q6ICIlcyBhZ28iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgczogImEgZmV3IHNlY29uZHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3M6ICIlZCBzZWNvbmRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG06ICJhIG1pbnV0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbTogIiVkIG1pbnV0ZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaDogImFuIGhvdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGg6ICIlZCBob3VycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkOiAiYSBkYXkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGQ6ICIlZCBkYXlzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE06ICJhIG1vbnRoIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1NOiAiJWQgbW9udGhzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6ICJhIHllYXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgeXk6ICIlZCB5ZWFycyIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgbW9udGhzOiBPZSwKICAgICAgICAgICAgICAgICAgICAgICAgbW9udGhzU2hvcnQ6IEZlLAogICAgICAgICAgICAgICAgICAgICAgICB3ZWVrOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3c6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3k6IDYKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgd2Vla2RheXM6IFllLAogICAgICAgICAgICAgICAgICAgICAgICB3ZWVrZGF5c01pbjogemUsCiAgICAgICAgICAgICAgICAgICAgICAgIHdlZWtkYXlzU2hvcnQ6IE5lLAogICAgICAgICAgICAgICAgICAgICAgICBtZXJpZGllbVBhcnNlOiAvW2FwXVwuP20/XC4/L2kKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHFlID0ge30sCiAgICAgICAgICAgICAgICAgICAgR2UgPSB7fSwKICAgICAgICAgICAgICAgICAgICBaZSA9IC9eXHMqKCg/OlsrLV1cZHs2fXxcZHs0fSktKD86XGRcZC1cZFxkfFdcZFxkLVxkfFdcZFxkfFxkXGRcZHxcZFxkKSkoPzooVHwgKShcZFxkKD86OlxkXGQoPzo6XGRcZCg/OlsuLF1cZCspPyk/KT8pKFtcK1wtXVxkXGQoPzo6P1xkXGQpP3xccypaKT8pPyQvLAogICAgICAgICAgICAgICAgICAgIFhlID0gL15ccyooKD86WystXVxkezZ9fFxkezR9KSg/OlxkXGRcZFxkfFdcZFxkXGR8V1xkXGR8XGRcZFxkfFxkXGQpKSg/OihUfCApKFxkXGQoPzpcZFxkKD86XGRcZCg/OlsuLF1cZCspPyk/KT8pKFtcK1wtXVxkXGQoPzo6P1xkXGQpP3xccypaKT8pPyQvLAogICAgICAgICAgICAgICAgICAgIEplID0gL1p8WystXVxkXGQoPzo6P1xkXGQpPy8sCiAgICAgICAgICAgICAgICAgICAgS2UgPSBbCiAgICAgICAgICAgICAgICAgICAgICAgIFsiWVlZWVlZLU1NLUREIiwgL1srLV1cZHs2fS1cZFxkLVxkXGQvXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJZWVlZLU1NLUREIiwgL1xkezR9LVxkXGQtXGRcZC9dLAogICAgICAgICAgICAgICAgICAgICAgICBbIkdHR0ctW1ddV1ctRSIsIC9cZHs0fS1XXGRcZC1cZC9dLAogICAgICAgICAgICAgICAgICAgICAgICBbIkdHR0ctW1ddV1ciLCAvXGR7NH0tV1xkXGQvLCAhMV0sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiWVlZWS1EREQiLCAvXGR7NH0tXGR7M30vXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJZWVlZLU1NIiwgL1xkezR9LVxkXGQvLCAhMV0sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiWVlZWVlZTU1ERCIsIC9bKy1dXGR7MTB9L10sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiWVlZWU1NREQiLCAvXGR7OH0vXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJHR0dHW1ddV1dFIiwgL1xkezR9V1xkezN9L10sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiR0dHR1tXXVdXIiwgL1xkezR9V1xkezJ9LywgITFdLAogICAgICAgICAgICAgICAgICAgICAgICBbIllZWVlEREQiLCAvXGR7N30vXQogICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgUWUgPSBbCiAgICAgICAgICAgICAgICAgICAgICAgIFsiSEg6bW06c3MuU1NTUyIsIC9cZFxkOlxkXGQ6XGRcZFwuXGQrL10sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiSEg6bW06c3MsU1NTUyIsIC9cZFxkOlxkXGQ6XGRcZCxcZCsvXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJISDptbTpzcyIsIC9cZFxkOlxkXGQ6XGRcZC9dLAogICAgICAgICAgICAgICAgICAgICAgICBbIkhIOm1tIiwgL1xkXGQ6XGRcZC9dLAogICAgICAgICAgICAgICAgICAgICAgICBbIkhIbW1zcy5TU1NTIiwgL1xkXGRcZFxkXGRcZFwuXGQrL10sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiSEhtbXNzLFNTU1MiLCAvXGRcZFxkXGRcZFxkLFxkKy9dLAogICAgICAgICAgICAgICAgICAgICAgICBbIkhIbW1zcyIsIC9cZFxkXGRcZFxkXGQvXSwKICAgICAgICAgICAgICAgICAgICAgICAgWyJISG1tIiwgL1xkXGRcZFxkL10sCiAgICAgICAgICAgICAgICAgICAgICAgIFsiSEgiLCAvXGRcZC9dCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAkZSA9IC9eXC8/RGF0ZVwoKFwtP1xkKykvaSwKICAgICAgICAgICAgICAgICAgICB0aSA9IC9eKCg/Ok1vbnxUdWV8V2VkfFRodXxGcml8U2F0fFN1biksP1xzKT8oXGQ/XGRccyg/OkphbnxGZWJ8TWFyfEFwcnxNYXl8SnVufEp1bHxBdWd8U2VwfE9jdHxOb3Z8RGVjKVxzKD86XGRcZCk/XGRcZFxzKShcZFxkOlxkXGQpKFw6XGRcZCk/KFxzKD86VVR8R01UfFtFQ01QXVtTRF1UfFtBLUlLLVphLWlrLXpdfFsrLV1cZHs0fSkpJC87CiAgICAgICAgICAgICAgICBwLmNyZWF0ZUZyb21JbnB1dEZhbGxiYWNrID0gdCgidmFsdWUgcHJvdmlkZWQgaXMgbm90IGluIGEgcmVjb2duaXplZCBSRkMyODIyIG9yIElTTyBmb3JtYXQuIG1vbWVudCBjb25zdHJ1Y3Rpb24gZmFsbHMgYmFjayB0byBqcyBEYXRlKCksIHdoaWNoIGlzIG5vdCByZWxpYWJsZSBhY3Jvc3MgYWxsIGJyb3dzZXJzIGFuZCB2ZXJzaW9ucy4gTm9uIFJGQzI4MjIvSVNPIGRhdGUgZm9ybWF0cyBhcmUgZGlzY291cmFnZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBhbiB1cGNvbWluZyBtYWpvciByZWxlYXNlLiBQbGVhc2UgcmVmZXIgdG8gaHR0cDovL21vbWVudGpzLmNvbS9ndWlkZXMvIy93YXJuaW5ncy9qcy1kYXRlLyBmb3IgbW9yZSBpbmZvLiIsIGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICB0Ll9kID0gbmV3IERhdGUodC5faSArICh0Ll91c2VVVEMgPyAiIFVUQyIgOiAiIikpCiAgICAgICAgICAgICAgICB9KSwgcC5JU09fODYwMSA9IGZ1bmN0aW9uKCkge30sIHAuUkZDXzI4MjIgPSBmdW5jdGlvbigpIHt9OwogICAgICAgICAgICAgICAgdmFyIGVpID0gdCgibW9tZW50KCkubWluIGlzIGRlcHJlY2F0ZWQsIHVzZSBtb21lbnQubWF4IGluc3RlYWQuIGh0dHA6Ly9tb21lbnRqcy5jb20vZ3VpZGVzLyMvd2FybmluZ3MvbWluLW1heC8iLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBtdC5hcHBseShudWxsLCBhcmd1bWVudHMpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKCkgJiYgdC5pc1ZhbGlkKCkgPyB0IDwgdGhpcyA/IHRoaXMgOiB0IDogYigpCiAgICAgICAgICAgICAgICAgICAgfSksCiAgICAgICAgICAgICAgICAgICAgaWkgPSB0KCJtb21lbnQoKS5tYXggaXMgZGVwcmVjYXRlZCwgdXNlIG1vbWVudC5taW4gaW5zdGVhZC4gaHR0cDovL21vbWVudGpzLmNvbS9ndWlkZXMvIy93YXJuaW5ncy9taW4tbWF4LyIsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IG10LmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSAmJiB0LmlzVmFsaWQoKSA/IHRoaXMgPCB0ID8gdGhpcyA6IHQgOiBiKCkKICAgICAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgICAgICBuaSA9IFsieWVhciIsICJxdWFydGVyIiwgIm1vbnRoIiwgIndlZWsiLCAiZGF5IiwgImhvdXIiLCAibWludXRlIiwgInNlY29uZCIsICJtaWxsaXNlY29uZCJdOwogICAgICAgICAgICAgICAgeHQoIloiLCAiOiIpLCB4dCgiWloiLCAiIiksIFcoIloiLCB2ZSksIFcoIlpaIiwgdmUpLCB6KFsiWiIsICJaWiJdLCBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgaS5fdXNlVVRDID0gITAsIGkuX3R6bSA9IF90KHZlLCB0KQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB2YXIgYWkgPSAvKFtcK1wtXXxcZFxkKS9naTsKICAgICAgICAgICAgICAgIHAudXBkYXRlT2Zmc2V0ID0gZnVuY3Rpb24oKSB7fTsKICAgICAgICAgICAgICAgIHZhciByaSA9IC9eKFwtKT8oPzooXGQqKVsuIF0pPyhcZCspXDooXGQrKSg/Olw6KFxkKykoXC5cZCopPyk/JC8sCiAgICAgICAgICAgICAgICAgICAgb2kgPSAvXigtKT9QKD86KC0/WzAtOSwuXSopWSk/KD86KC0/WzAtOSwuXSopTSk/KD86KC0/WzAtOSwuXSopVyk/KD86KC0/WzAtOSwuXSopRCk/KD86VCg/OigtP1swLTksLl0qKUgpPyg/OigtP1swLTksLl0qKU0pPyg/OigtP1swLTksLl0qKVMpPyk/JC87CiAgICAgICAgICAgICAgICBTdC5mbiA9IHZ0LnByb3RvdHlwZSwgU3QuaW52YWxpZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBTdChOYU4pCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgdmFyIHNpID0gUHQoMSwgImFkZCIpLAogICAgICAgICAgICAgICAgICAgIGxpID0gUHQoLTEsICJzdWJ0cmFjdCIpOwogICAgICAgICAgICAgICAgcC5kZWZhdWx0Rm9ybWF0ID0gIllZWVktTU0tRERUSEg6bW06c3NaIiwgcC5kZWZhdWx0Rm9ybWF0VXRjID0gIllZWVktTU0tRERUSEg6bW06c3NbWl0iOwogICAgICAgICAgICAgICAgdmFyIHVpID0gdCgibW9tZW50KCkubGFuZygpIGlzIGRlcHJlY2F0ZWQuIEluc3RlYWQsIHVzZSBtb21lbnQoKS5sb2NhbGVEYXRhKCkgdG8gZ2V0IHRoZSBsYW5ndWFnZSBjb25maWd1cmF0aW9uLiBVc2UgbW9tZW50KCkubG9jYWxlKCkgdG8gY2hhbmdlIGxhbmd1YWdlcy4iLCBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gdCA/IHRoaXMubG9jYWxlRGF0YSgpIDogdGhpcy5sb2NhbGUodCkKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgRigwLCBbImdnIiwgMl0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLndlZWtZZWFyKCkgJSAxMDAKICAgICAgICAgICAgICAgIH0pLCBGKDAsIFsiR0ciLCAyXSwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNvV2Vla1llYXIoKSAlIDEwMAogICAgICAgICAgICAgICAgfSksIE90KCJnZ2dnIiwgIndlZWtZZWFyIiksIE90KCJnZ2dnZyIsICJ3ZWVrWWVhciIpLCBPdCgiR0dHRyIsICJpc29XZWVrWWVhciIpLCBPdCgiR0dHR0ciLCAiaXNvV2Vla1llYXIiKSwgZSgid2Vla1llYXIiLCAiZ2ciKSwgZSgiaXNvV2Vla1llYXIiLCAiR0ciKSwgaSgid2Vla1llYXIiLCAxKSwgaSgiaXNvV2Vla1llYXIiLCAxKSwgVygiRyIsIG1lKSwgVygiZyIsIG1lKSwgVygiR0ciLCBsZSwgYWUpLCBXKCJnZyIsIGxlLCBhZSksIFcoIkdHR0ciLCBjZSwgb2UpLCBXKCJnZ2dnIiwgY2UsIG9lKSwgVygiR0dHR0ciLCBmZSwgc2UpLCBXKCJnZ2dnZyIsIGZlLCBzZSksIEIoWyJnZ2dnIiwgImdnZ2dnIiwgIkdHR0ciLCAiR0dHR0ciXSwgZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIGVbbi5zdWJzdHIoMCwgMildID0gTSh0KQogICAgICAgICAgICAgICAgfSksIEIoWyJnZyIsICJHRyJdLCBmdW5jdGlvbih0LCBlLCBpLCBuKSB7CiAgICAgICAgICAgICAgICAgICAgZVtuXSA9IHAucGFyc2VUd29EaWdpdFllYXIodCkKICAgICAgICAgICAgICAgIH0pLCBGKCJRIiwgMCwgIlFvIiwgInF1YXJ0ZXIiKSwgZSgicXVhcnRlciIsICJRIiksIGkoInF1YXJ0ZXIiLCA3KSwgVygiUSIsIG5lKSwgeigiUSIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICBlW2tlXSA9IDMgKiAoTSh0KSAtIDEpCiAgICAgICAgICAgICAgICB9KSwgRigiRCIsIFsiREQiLCAyXSwgIkRvIiwgImRhdGUiKSwgZSgiZGF0ZSIsICJEIiksIGkoImRhdGUiLCA5KSwgVygiRCIsIGxlKSwgVygiREQiLCBsZSwgYWUpLCBXKCJEbyIsIGZ1bmN0aW9uKHQsIGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdCA/IGUuX2RheU9mTW9udGhPcmRpbmFsUGFyc2UgfHwgZS5fb3JkaW5hbFBhcnNlIDogZS5fZGF5T2ZNb250aE9yZGluYWxQYXJzZUxlbmllbnQKICAgICAgICAgICAgICAgIH0pLCB6KFsiRCIsICJERCJdLCB3ZSksIHooIkRvIiwgZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIGVbd2VdID0gTSh0Lm1hdGNoKGxlKVswXSkKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmFyIGRpID0gbigiRGF0ZSIsICEwKTsKICAgICAgICAgICAgICAgIEYoIkRERCIsIFsiRERERCIsIDNdLCAiREREbyIsICJkYXlPZlllYXIiKSwgZSgiZGF5T2ZZZWFyIiwgIkRERCIpLCBpKCJkYXlPZlllYXIiLCA0KSwgVygiREREIiwgaGUpLCBXKCJEREREIiwgcmUpLCB6KFsiREREIiwgIkREREQiXSwgZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIGkuX2RheU9mWWVhciA9IE0odCkKICAgICAgICAgICAgICAgIH0pLCBGKCJtIiwgWyJtbSIsIDJdLCAwLCAibWludXRlIiksIGUoIm1pbnV0ZSIsICJtIiksIGkoIm1pbnV0ZSIsIDE0KSwgVygibSIsIGxlKSwgVygibW0iLCBsZSwgYWUpLCB6KFsibSIsICJtbSJdLCBTZSk7CiAgICAgICAgICAgICAgICB2YXIgaGkgPSBuKCJNaW51dGVzIiwgITEpOwogICAgICAgICAgICAgICAgRigicyIsIFsic3MiLCAyXSwgMCwgInNlY29uZCIpLCBlKCJzZWNvbmQiLCAicyIpLCBpKCJzZWNvbmQiLCAxNSksIFcoInMiLCBsZSksIFcoInNzIiwgbGUsIGFlKSwgeihbInMiLCAic3MiXSwgRGUpOwogICAgICAgICAgICAgICAgdmFyIGNpLCBmaSA9IG4oIlNlY29uZHMiLCAhMSk7CiAgICAgICAgICAgICAgICBmb3IgKEYoIlMiLCAwLCAwLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIH5+KHRoaXMubWlsbGlzZWNvbmQoKSAvIDEwMCkKICAgICAgICAgICAgICAgICAgICB9KSwgRigwLCBbIlNTIiwgMl0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gfn4odGhpcy5taWxsaXNlY29uZCgpIC8gMTApCiAgICAgICAgICAgICAgICAgICAgfSksIEYoMCwgWyJTU1MiLCAzXSwgMCwgIm1pbGxpc2Vjb25kIiksIEYoMCwgWyJTU1NTIiwgNF0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTAgKiB0aGlzLm1pbGxpc2Vjb25kKCkKICAgICAgICAgICAgICAgICAgICB9KSwgRigwLCBbIlNTU1NTIiwgNV0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTAwICogdGhpcy5taWxsaXNlY29uZCgpCiAgICAgICAgICAgICAgICAgICAgfSksIEYoMCwgWyJTU1NTU1MiLCA2XSwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxZTMgKiB0aGlzLm1pbGxpc2Vjb25kKCkKICAgICAgICAgICAgICAgICAgICB9KSwgRigwLCBbIlNTU1NTU1MiLCA3XSwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxZTQgKiB0aGlzLm1pbGxpc2Vjb25kKCkKICAgICAgICAgICAgICAgICAgICB9KSwgRigwLCBbIlNTU1NTU1NTIiwgOF0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMWU1ICogdGhpcy5taWxsaXNlY29uZCgpCiAgICAgICAgICAgICAgICAgICAgfSksIEYoMCwgWyJTU1NTU1NTU1MiLCA5XSwgMCwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxZTYgKiB0aGlzLm1pbGxpc2Vjb25kKCkKICAgICAgICAgICAgICAgICAgICB9KSwgZSgibWlsbGlzZWNvbmQiLCAibXMiKSwgaSgibWlsbGlzZWNvbmQiLCAxNiksIFcoIlMiLCBoZSwgbmUpLCBXKCJTUyIsIGhlLCBhZSksIFcoIlNTUyIsIGhlLCByZSksIGNpID0gIlNTU1MiOyBjaS5sZW5ndGggPD0gOTsgY2kgKz0gIlMiKSBXKGNpLCBnZSk7CiAgICAgICAgICAgICAgICBmb3IgKGNpID0gIlMiOyBjaS5sZW5ndGggPD0gOTsgY2kgKz0gIlMiKSB6KGNpLCBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgZVtDZV0gPSBNKDFlMyAqICgiMC4iICsgdCkpCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZhciBnaSA9IG4oIk1pbGxpc2Vjb25kcyIsICExKTsKICAgICAgICAgICAgICAgIEYoInoiLCAwLCAwLCAiem9uZUFiYnIiKSwgRigienoiLCAwLCAwLCAiem9uZU5hbWUiKTsKICAgICAgICAgICAgICAgIHZhciBtaSA9IF8ucHJvdG90eXBlOwogICAgICAgICAgICAgICAgbWkuYWRkID0gc2ksIG1pLmNhbGVuZGFyID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0gdCB8fCBtdCgpLAogICAgICAgICAgICAgICAgICAgICAgICBuID0ga3QoaSwgdGhpcykuc3RhcnRPZigiZGF5IiksCiAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBwLmNhbGVuZGFyRm9ybWF0KHRoaXMsIG4pIHx8ICJzYW1lRWxzZSIsCiAgICAgICAgICAgICAgICAgICAgICAgIHIgPSBlICYmIChEKGVbYV0pID8gZVthXS5jYWxsKHRoaXMsIGkpIDogZVthXSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0KHIgfHwgdGhpcy5sb2NhbGVEYXRhKCkuY2FsZW5kYXIoYSwgdGhpcywgbXQoaSkpKQogICAgICAgICAgICAgICAgfSwgbWkuY2xvbmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IF8odGhpcykKICAgICAgICAgICAgICAgIH0sIG1pLmRpZmYgPSBmdW5jdGlvbih0LCBlLCBpKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG4sIGEsIHIsIG8sIHMsIGwsIHUsIGQ7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNWYWxpZCgpICYmIChuID0ga3QodCwgdGhpcykpLmlzVmFsaWQoKSA/IChhID0gNmU0ICogKG4udXRjT2Zmc2V0KCkgLSB0aGlzLnV0Y09mZnNldCgpKSwgInllYXIiID09PSAoZSA9IFAoZSkpIHx8ICJtb250aCIgPT09IGUgfHwgInF1YXJ0ZXIiID09PSBlID8gKHMgPSB0aGlzLCB1ID0gMTIgKiAoKGwgPSBuKS55ZWFyKCkgLSBzLnllYXIoKSkgKyAobC5tb250aCgpIC0gcy5tb250aCgpKSwgZCA9IHMuY2xvbmUoKS5hZGQodSwgIm1vbnRocyIpLCBvID0gLSh1ICsgKGwgLSBkIDwgMCA/IChsIC0gZCkgLyAoZCAtIHMuY2xvbmUoKS5hZGQodSAtIDEsICJtb250aHMiKSkgOiAobCAtIGQpIC8gKHMuY2xvbmUoKS5hZGQodSArIDEsICJtb250aHMiKSAtIGQpKSkgfHwgMCwgInF1YXJ0ZXIiID09PSBlID8gbyAvPSAzIDogInllYXIiID09PSBlICYmIChvIC89IDEyKSkgOiAociA9IHRoaXMgLSBuLCBvID0gInNlY29uZCIgPT09IGUgPyByIC8gMWUzIDogIm1pbnV0ZSIgPT09IGUgPyByIC8gNmU0IDogImhvdXIiID09PSBlID8gciAvIDM2ZTUgOiAiZGF5IiA9PT0gZSA/IChyIC0gYSkgLyA4NjRlNSA6ICJ3ZWVrIiA9PT0gZSA/IChyIC0gYSkgLyA2MDQ4ZTUgOiByKSwgaSA/IG8gOiB3KG8pKSA6IE5hTgogICAgICAgICAgICAgICAgfSwgbWkuZW5kT2YgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gKHQgPSBQKHQpKSB8fCAibWlsbGlzZWNvbmQiID09PSB0ID8gdGhpcyA6ICgiZGF0ZSIgPT09IHQgJiYgKHQgPSAiZGF5IiksIHRoaXMuc3RhcnRPZih0KS5hZGQoMSwgImlzb1dlZWsiID09PSB0ID8gIndlZWsiIDogdCkuc3VidHJhY3QoMSwgIm1zIikpCiAgICAgICAgICAgICAgICB9LCBtaS5mb3JtYXQgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdCB8fCAodCA9IHRoaXMuaXNVdGMoKSA/IHAuZGVmYXVsdEZvcm1hdFV0YyA6IHAuZGVmYXVsdEZvcm1hdCk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBSKHRoaXMsIHQpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5wb3N0Zm9ybWF0KGUpCiAgICAgICAgICAgICAgICB9LCBtaS5mcm9tID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSAmJiAoayh0KSAmJiB0LmlzVmFsaWQoKSB8fCBtdCh0KS5pc1ZhbGlkKCkpID8gU3QoewogICAgICAgICAgICAgICAgICAgICAgICB0bzogdGhpcywKICAgICAgICAgICAgICAgICAgICAgICAgZnJvbTogdAogICAgICAgICAgICAgICAgICAgIH0pLmxvY2FsZSh0aGlzLmxvY2FsZSgpKS5odW1hbml6ZSghZSkgOiB0aGlzLmxvY2FsZURhdGEoKS5pbnZhbGlkRGF0ZSgpCiAgICAgICAgICAgICAgICB9LCBtaS5mcm9tTm93ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZyb20obXQoKSwgdCkKICAgICAgICAgICAgICAgIH0sIG1pLnRvID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSAmJiAoayh0KSAmJiB0LmlzVmFsaWQoKSB8fCBtdCh0KS5pc1ZhbGlkKCkpID8gU3QoewogICAgICAgICAgICAgICAgICAgICAgICBmcm9tOiB0aGlzLAogICAgICAgICAgICAgICAgICAgICAgICB0bzogdAogICAgICAgICAgICAgICAgICAgIH0pLmxvY2FsZSh0aGlzLmxvY2FsZSgpKS5odW1hbml6ZSghZSkgOiB0aGlzLmxvY2FsZURhdGEoKS5pbnZhbGlkRGF0ZSgpCiAgICAgICAgICAgICAgICB9LCBtaS50b05vdyA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50byhtdCgpLCB0KQogICAgICAgICAgICAgICAgfSwgbWkuZ2V0ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBEKHRoaXNbdCA9IFAodCldKSA/IHRoaXNbdF0oKSA6IHRoaXMKICAgICAgICAgICAgICAgIH0sIG1pLmludmFsaWRBdCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB5KHRoaXMpLm92ZXJmbG93CiAgICAgICAgICAgICAgICB9LCBtaS5pc0FmdGVyID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpID0gayh0KSA/IHQgOiBtdCh0KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gISghdGhpcy5pc1ZhbGlkKCkgfHwgIWkuaXNWYWxpZCgpKSAmJiAoIm1pbGxpc2Vjb25kIiA9PT0gKGUgPSBQKHUoZSkgPyAibWlsbGlzZWNvbmQiIDogZSkpID8gdGhpcy52YWx1ZU9mKCkgPiBpLnZhbHVlT2YoKSA6IGkudmFsdWVPZigpIDwgdGhpcy5jbG9uZSgpLnN0YXJ0T2YoZSkudmFsdWVPZigpKQogICAgICAgICAgICAgICAgfSwgbWkuaXNCZWZvcmUgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGkgPSBrKHQpID8gdCA6IG10KHQpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAhKCF0aGlzLmlzVmFsaWQoKSB8fCAhaS5pc1ZhbGlkKCkpICYmICgibWlsbGlzZWNvbmQiID09PSAoZSA9IFAodShlKSA/ICJtaWxsaXNlY29uZCIgOiBlKSkgPyB0aGlzLnZhbHVlT2YoKSA8IGkudmFsdWVPZigpIDogdGhpcy5jbG9uZSgpLmVuZE9mKGUpLnZhbHVlT2YoKSA8IGkudmFsdWVPZigpKQogICAgICAgICAgICAgICAgfSwgbWkuaXNCZXR3ZWVuID0gZnVuY3Rpb24odCwgZSwgaSwgbikgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAoIigiID09PSAobiA9IG4gfHwgIigpIilbMF0gPyB0aGlzLmlzQWZ0ZXIodCwgaSkgOiAhdGhpcy5pc0JlZm9yZSh0LCBpKSkgJiYgKCIpIiA9PT0gblsxXSA/IHRoaXMuaXNCZWZvcmUoZSwgaSkgOiAhdGhpcy5pc0FmdGVyKGUsIGkpKQogICAgICAgICAgICAgICAgfSwgbWkuaXNTYW1lID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIHZhciBpLCBuID0gayh0KSA/IHQgOiBtdCh0KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gISghdGhpcy5pc1ZhbGlkKCkgfHwgIW4uaXNWYWxpZCgpKSAmJiAoIm1pbGxpc2Vjb25kIiA9PT0gKGUgPSBQKGUgfHwgIm1pbGxpc2Vjb25kIikpID8gdGhpcy52YWx1ZU9mKCkgPT09IG4udmFsdWVPZigpIDogKGkgPSBuLnZhbHVlT2YoKSwgdGhpcy5jbG9uZSgpLnN0YXJ0T2YoZSkudmFsdWVPZigpIDw9IGkgJiYgaSA8PSB0aGlzLmNsb25lKCkuZW5kT2YoZSkudmFsdWVPZigpKSkKICAgICAgICAgICAgICAgIH0sIG1pLmlzU2FtZU9yQWZ0ZXIgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNTYW1lKHQsIGUpIHx8IHRoaXMuaXNBZnRlcih0LCBlKQogICAgICAgICAgICAgICAgfSwgbWkuaXNTYW1lT3JCZWZvcmUgPSBmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNTYW1lKHQsIGUpIHx8IHRoaXMuaXNCZWZvcmUodCwgZSkKICAgICAgICAgICAgICAgIH0sIG1pLmlzVmFsaWQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbSh0aGlzKQogICAgICAgICAgICAgICAgfSwgbWkubGFuZyA9IHVpLCBtaS5sb2NhbGUgPSBBdCwgbWkubG9jYWxlRGF0YSA9IEl0LCBtaS5tYXggPSBpaSwgbWkubWluID0gZWksIG1pLnBhcnNpbmdGbGFncyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmKHt9LCB5KHRoaXMpKQogICAgICAgICAgICAgICAgfSwgbWkuc2V0ID0gZnVuY3Rpb24odCwgZSkgewogICAgICAgICAgICAgICAgICAgIGlmICgib2JqZWN0IiA9PSB0eXBlb2YgdCkKICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9IFtdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgaW4gdCkgZS5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdDogaSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IFF0W2ldCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGUuc29ydChmdW5jdGlvbih0LCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0LnByaW9yaXR5IC0gZS5wcmlvcml0eQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCBlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KHQgPSBUKHQpKSwgbiA9IDA7IG4gPCBpLmxlbmd0aDsgbisrKSB0aGlzW2lbbl0udW5pdF0odFtpW25dLnVuaXRdKTsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChEKHRoaXNbdCA9IFAodCldKSkgcmV0dXJuIHRoaXNbdF0oZSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMKICAgICAgICAgICAgICAgIH0sIG1pLnN0YXJ0T2YgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgc3dpdGNoICh0ID0gUCh0KSkgewogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJ5ZWFyIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9udGgoMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgInF1YXJ0ZXIiOgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJtb250aCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGUoMSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIndlZWsiOgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJpc29XZWVrIjoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiZGF5IjoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAiZGF0ZSI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvdXJzKDApOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJob3VyIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWludXRlcygwKTsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAibWludXRlIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2Vjb25kcygwKTsKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAic2Vjb25kIjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWlsbGlzZWNvbmRzKDApCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJldHVybiAid2VlayIgPT09IHQgJiYgdGhpcy53ZWVrZGF5KDApLCAiaXNvV2VlayIgPT09IHQgJiYgdGhpcy5pc29XZWVrZGF5KDEpLCAicXVhcnRlciIgPT09IHQgJiYgdGhpcy5tb250aCgzICogTWF0aC5mbG9vcih0aGlzLm1vbnRoKCkgLyAzKSksIHRoaXMKICAgICAgICAgICAgICAgIH0sIG1pLnN1YnRyYWN0ID0gbGksIG1pLnRvQXJyYXkgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXM7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFt0LnllYXIoKSwgdC5tb250aCgpLCB0LmRhdGUoKSwgdC5ob3VyKCksIHQubWludXRlKCksIHQuc2Vjb25kKCksIHQubWlsbGlzZWNvbmQoKV0KICAgICAgICAgICAgICAgIH0sIG1pLnRvT2JqZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHllYXJzOiB0LnllYXIoKSwKICAgICAgICAgICAgICAgICAgICAgICAgbW9udGhzOiB0Lm1vbnRoKCksCiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGU6IHQuZGF0ZSgpLAogICAgICAgICAgICAgICAgICAgICAgICBob3VyczogdC5ob3VycygpLAogICAgICAgICAgICAgICAgICAgICAgICBtaW51dGVzOiB0Lm1pbnV0ZXMoKSwKICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kczogdC5zZWNvbmRzKCksCiAgICAgICAgICAgICAgICAgICAgICAgIG1pbGxpc2Vjb25kczogdC5taWxsaXNlY29uZHMoKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sIG1pLnRvRGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLnZhbHVlT2YoKSkKICAgICAgICAgICAgICAgIH0sIG1pLnRvSVNPU3RyaW5nID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWQoKSkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSB0aGlzLmNsb25lKCkudXRjKCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQueWVhcigpIDwgMCB8fCA5OTk5IDwgdC55ZWFyKCkgPyBSKHQsICJZWVlZWVktTU0tRERbVF1ISDptbTpzcy5TU1NbWl0iKSA6IEQoRGF0ZS5wcm90b3R5cGUudG9JU09TdHJpbmcpID8gdGhpcy50b0RhdGUoKS50b0lTT1N0cmluZygpIDogUih0LCAiWVlZWS1NTS1ERFtUXUhIOm1tOnNzLlNTU1taXSIpCiAgICAgICAgICAgICAgICB9LCBtaS5pbnNwZWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWQoKSkgcmV0dXJuICJtb21lbnQuaW52YWxpZCgvKiAiICsgdGhpcy5faSArICIgKi8pIjsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9ICJtb21lbnQiLAogICAgICAgICAgICAgICAgICAgICAgICBlID0gIiI7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0xvY2FsKCkgfHwgKHQgPSAwID09PSB0aGlzLnV0Y09mZnNldCgpID8gIm1vbWVudC51dGMiIDogIm1vbWVudC5wYXJzZVpvbmUiLCBlID0gIloiKTsKICAgICAgICAgICAgICAgICAgICB2YXIgaSA9ICJbIiArIHQgKyAnKCJdJywKICAgICAgICAgICAgICAgICAgICAgICAgbiA9IDAgPD0gdGhpcy55ZWFyKCkgJiYgdGhpcy55ZWFyKCkgPD0gOTk5OSA/ICJZWVlZIiA6ICJZWVlZWVkiLAogICAgICAgICAgICAgICAgICAgICAgICBhID0gZSArICdbIildJzsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mb3JtYXQoaSArIG4gKyAiLU1NLUREW1RdSEg6bW06c3MuU1NTIiArIGEpCiAgICAgICAgICAgICAgICB9LCBtaS50b0pTT04gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkKCkgPyB0aGlzLnRvSVNPU3RyaW5nKCkgOiBudWxsCiAgICAgICAgICAgICAgICB9LCBtaS50b1N0cmluZyA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNsb25lKCkubG9jYWxlKCJlbiIpLmZvcm1hdCgiZGRkIE1NTSBERCBZWVlZIEhIOm1tOnNzIFtHTVRdWloiKQogICAgICAgICAgICAgICAgfSwgbWkudW5peCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBNYXRoLmZsb29yKHRoaXMudmFsdWVPZigpIC8gMWUzKQogICAgICAgICAgICAgICAgfSwgbWkudmFsdWVPZiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9kLnZhbHVlT2YoKSAtIDZlNCAqICh0aGlzLl9vZmZzZXQgfHwgMCkKICAgICAgICAgICAgICAgIH0sIG1pLmNyZWF0aW9uRGF0YSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiB0aGlzLl9pLAogICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ6IHRoaXMuX2YsCiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5fbG9jYWxlLAogICAgICAgICAgICAgICAgICAgICAgICBpc1VUQzogdGhpcy5faXNVVEMsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmljdDogdGhpcy5fc3RyaWN0CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgbWkueWVhciA9IFdlLCBtaS5pc0xlYXBZZWFyID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHEodGhpcy55ZWFyKCkpCiAgICAgICAgICAgICAgICB9LCBtaS53ZWVrWWVhciA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gRnQuY2FsbCh0aGlzLCB0LCB0aGlzLndlZWsoKSwgdGhpcy53ZWVrZGF5KCksIHRoaXMubG9jYWxlRGF0YSgpLl93ZWVrLmRvdywgdGhpcy5sb2NhbGVEYXRhKCkuX3dlZWsuZG95KQogICAgICAgICAgICAgICAgfSwgbWkuaXNvV2Vla1llYXIgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZ0LmNhbGwodGhpcywgdCwgdGhpcy5pc29XZWVrKCksIHRoaXMuaXNvV2Vla2RheSgpLCAxLCA0KQogICAgICAgICAgICAgICAgfSwgbWkucXVhcnRlciA9IG1pLnF1YXJ0ZXJzID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IHQgPyBNYXRoLmNlaWwoKHRoaXMubW9udGgoKSArIDEpIC8gMykgOiB0aGlzLm1vbnRoKDMgKiAodCAtIDEpICsgdGhpcy5tb250aCgpICUgMykKICAgICAgICAgICAgICAgIH0sIG1pLm1vbnRoID0gRSwgbWkuZGF5c0luTW9udGggPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gVih0aGlzLnllYXIoKSwgdGhpcy5tb250aCgpKQogICAgICAgICAgICAgICAgfSwgbWkud2VlayA9IG1pLndlZWtzID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gdGhpcy5sb2NhbGVEYXRhKCkud2Vlayh0aGlzKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCA9PSB0ID8gZSA6IHRoaXMuYWRkKDcgKiAodCAtIGUpLCAiZCIpCiAgICAgICAgICAgICAgICB9LCBtaS5pc29XZWVrID0gbWkuaXNvV2Vla3MgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGUgPSBKKHRoaXMsIDEsIDQpLndlZWs7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gdCA/IGUgOiB0aGlzLmFkZCg3ICogKHQgLSBlKSwgImQiKQogICAgICAgICAgICAgICAgfSwgbWkud2Vla3NJblllYXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHRoaXMubG9jYWxlRGF0YSgpLl93ZWVrOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBLKHRoaXMueWVhcigpLCB0LmRvdywgdC5kb3kpCiAgICAgICAgICAgICAgICB9LCBtaS5pc29XZWVrc0luWWVhciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBLKHRoaXMueWVhcigpLCAxLCA0KQogICAgICAgICAgICAgICAgfSwgbWkuZGF0ZSA9IGRpLCBtaS5kYXkgPSBtaS5kYXlzID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1ZhbGlkKCkpIHJldHVybiBudWxsICE9IHQgPyB0aGlzIDogTmFOOwogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gdGhpcy5faXNVVEMgPyB0aGlzLl9kLmdldFVUQ0RheSgpIDogdGhpcy5fZC5nZXREYXkoKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbCAhPSB0ID8gKGUgPSB0LCBpID0gdGhpcy5sb2NhbGVEYXRhKCksIHQgPSAic3RyaW5nIiAhPSB0eXBlb2YgZSA/IGUgOiBpc05hTihlKSA/ICJudW1iZXIiID09IHR5cGVvZihlID0gaS53ZWVrZGF5c1BhcnNlKGUpKSA/IGUgOiBudWxsIDogcGFyc2VJbnQoZSwgMTApLCB0aGlzLmFkZCh0IC0gbiwgImQiKSkgOiBuCiAgICAgICAgICAgICAgICB9LCBtaS53ZWVrZGF5ID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1ZhbGlkKCkpIHJldHVybiBudWxsICE9IHQgPyB0aGlzIDogTmFOOwogICAgICAgICAgICAgICAgICAgIHZhciBlID0gKHRoaXMuZGF5KCkgKyA3IC0gdGhpcy5sb2NhbGVEYXRhKCkuX3dlZWsuZG93KSAlIDc7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgPT0gdCA/IGUgOiB0aGlzLmFkZCh0IC0gZSwgImQiKQogICAgICAgICAgICAgICAgfSwgbWkuaXNvV2Vla2RheSA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNWYWxpZCgpKSByZXR1cm4gbnVsbCAhPSB0ID8gdGhpcyA6IE5hTjsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCA9PSB0KSByZXR1cm4gdGhpcy5kYXkoKSB8fCA3OwogICAgICAgICAgICAgICAgICAgIHZhciBlLCBpLCBuID0gKGUgPSB0LCBpID0gdGhpcy5sb2NhbGVEYXRhKCksICJzdHJpbmciID09IHR5cGVvZiBlID8gaS53ZWVrZGF5c1BhcnNlKGUpICUgNyB8fCA3IDogaXNOYU4oZSkgPyBudWxsIDogZSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF5KHRoaXMuZGF5KCkgJSA3ID8gbiA6IG4gLSA3KQogICAgICAgICAgICAgICAgfSwgbWkuZGF5T2ZZZWFyID0gZnVuY3Rpb24odCkgewogICAgICAgICAgICAgICAgICAgIHZhciBlID0gTWF0aC5yb3VuZCgodGhpcy5jbG9uZSgpLnN0YXJ0T2YoImRheSIpIC0gdGhpcy5jbG9uZSgpLnN0YXJ0T2YoInllYXIiKSkgLyA4NjRlNSkgKyAxOwogICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsID09IHQgPyBlIDogdGhpcy5hZGQodCAtIGUsICJkIikKICAgICAgICAgICAgICAgIH0sIG1pLmhvdXIgPSBtaS5ob3VycyA9IGplLCBtaS5taW51dGUgPSBtaS5taW51dGVzID0gaGksIG1pLnNlY29uZCA9IG1pLnNlY29uZHMgPSBmaSwgbWkubWlsbGlzZWNvbmQgPSBtaS5taWxsaXNlY29uZHMgPSBnaSwgbWkudXRjT2Zmc2V0ID0gZnVuY3Rpb24odCwgZSwgaSkgewogICAgICAgICAgICAgICAgICAgIHZhciBuLCBhID0gdGhpcy5fb2Zmc2V0IHx8IDA7CiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWQoKSkgcmV0dXJuIG51bGwgIT0gdCA/IHRoaXMgOiBOYU47CiAgICAgICAgICAgICAgICAgICAgaWYgKG51bGwgPT0gdCkgcmV0dXJuIHRoaXMuX2lzVVRDID8gYSA6IHd0KHRoaXMpOwogICAgICAgICAgICAgICAgICAgIGlmICgic3RyaW5nIiA9PSB0eXBlb2YgdCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCA9PT0gKHQgPSBfdCh2ZSwgdCkpKSByZXR1cm4gdGhpcwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBNYXRoLmFicyh0KSA8IDE2ICYmICFpICYmICh0ICo9IDYwKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXRoaXMuX2lzVVRDICYmIGUgJiYgKG4gPSB3dCh0aGlzKSksIHRoaXMuX29mZnNldCA9IHQsIHRoaXMuX2lzVVRDID0gITAsIG51bGwgIT0gbiAmJiB0aGlzLmFkZChuLCAibSIpLCBhICE9PSB0ICYmICghZSB8fCB0aGlzLl9jaGFuZ2VJblByb2dyZXNzID8gVHQodGhpcywgU3QodCAtIGEsICJtIiksIDEsICExKSA6IHRoaXMuX2NoYW5nZUluUHJvZ3Jlc3MgfHwgKHRoaXMuX2NoYW5nZUluUHJvZ3Jlc3MgPSAhMCwgcC51cGRhdGVPZmZzZXQodGhpcywgITApLCB0aGlzLl9jaGFuZ2VJblByb2dyZXNzID0gbnVsbCkpLCB0aGlzCiAgICAgICAgICAgICAgICB9LCBtaS51dGMgPSBmdW5jdGlvbih0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudXRjT2Zmc2V0KDAsIHQpCiAgICAgICAgICAgICAgICB9LCBtaS5sb2NhbCA9IGZ1bmN0aW9uKHQpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5faXNVVEMgJiYgKHRoaXMudXRjT2Zmc2V0KDAsIHQpLCB0aGlzLl9pc1VUQyA9ICExLCB0ICYmIHRoaXMuc3VidHJhY3Qod3QodGhpcyksICJtIikpLCB0aGlzCiAgICAgICAgICAgICAgICB9LCBtaS5wYXJzZVpvbmUgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBpZiAobnVsbCAhPSB0aGlzLg=="}},"time_used":110,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"receive":84,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"persimmontrades.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.207Z","timestamp":1785154590207,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-6bea\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 99be6c4db51cea2ff9d50347825462e4\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":27626,"size_decoded":6249,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3069)","md5":"c37495f6ca72950f28ad5a6a79a0bab4","sha1":"b23429fd2dea7f2557a8a68545083949759c3ad4","sha256":"b4511e0c850bde295127e6af14148f016b9aea35ea705cdf3106a5a1edbd93b8","sha512":"ddee6e0c9cd60676d9195e2fb635982af76e72cf188acf0f42ba7ac648dbd5acc579a186a2c51fb5ac9d5e758c5289ab285ea4e80694b19f70a1715a5707b77c","ssdeep":"384:L+x0EMPsBRgXD2PTmdN2/5dQ1tHSJm/BtU:L7E2NJuJmI","tlshash":"2cc2c007cd96b099f3f6e24e0eb4d50c2cb453495270d702be868e289ae5ee69d2f315","first_seen":"2026-05-05T10:36:04.872376Z","last_seen":"2026-07-27T14:18:36.415557Z","times_seen":4159,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1ODY2N10sezI1ODY2NyhvKXtvLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZShudWxsKSxvLmV4cG9ydHNbIiNBQVBMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXBwbGUgSW5jIl0sby5leHBvcnRzWyIjQU1FWDpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nod2FiIFNob3J0LVRlcm0gVS5TLiBUcmVhc3VyeSBFVEYiXSxvLmV4cG9ydHNbIiNBTUVYOlNIWUctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFyZXMgMC01IFlFQVIgSGlnaCBZaWVsZCBDb3Jwb3JhdGUgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNBU1g6WEFGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBBbGwgQXVzdHJhbGlhbiA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYQVQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIEFsbCBBdXN0cmFsaWFuIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYSk8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FVRENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyL0NhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0FVRENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gU3dpc3MgRnJhbmMiXSxvLmV4cG9ydHNbIiNBVURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0FVRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjQVVEUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQVVEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JDQkE6SU1WLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIE1FUlZBTCBJbmRleCJdLG8uZXhwb3J0c1siI0JDSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gQ2FzaCAvIEV1cm8iXSxvLmV4cG9ydHNbIiNCQ0hVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIENhc2ggLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JFTEVYOkJFTEVYMTUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUxFWCAxNSBJbmRleCJdLG8uZXhwb3J0c1siI0JJU1Q6WFUxMDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCSVNUIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0JJVE1FWDpYQlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUU6SUJDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSUJFWCAzNSBJbmRleCJdLG8uZXhwb3J0c1siI0JNRkJPVkVTUEE6SUJPVi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJvdmVzcGEgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUZCT1ZFU1BBOklCUkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJQnJhc2lsIEluZGV4Il0sby5leHBvcnRzWyIjQk1GQk9WRVNQQTpJQlhMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJhemlsIDUwIEluZGV4Il0sby5leHBvcnRzWyIjQk1WOkNULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgU1gyMCBSVCJdLG8uZXhwb3J0c1siI0JNVjpGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRm9yZCBNb3RvciBDb21wYW55Il0sby5leHBvcnRzWyIjQk1WOk1FLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0JNViBJUEMgSW5kZXgiXSxvLmV4cG9ydHNbIiNCUkxKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWxpYW4gUmVhbCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JTRTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJVEkgTHRkIl0sby5leHBvcnRzWyIjQlNFOlNFTlNFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCBCU0UgU2Vuc2V4IEluZGV4Il0sby5leHBvcnRzWyIjQlRDQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjQlRDQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUQ0NOWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNCVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gRXVybyJdLG8uZXhwb3J0c1siI0JUQ0dCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjQlRDSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JUQ0tSVy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjQlRDUExOLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI0JUQ1JVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQlRDVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFRoYWkgQmFodCJdLG8uZXhwb3J0c1siI0JUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gR29sZCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQlZMOlNQQkxQR1BULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gQlZMIFBlcnUgR2VuZXJhbCBJbmRleCAoUEVOKSJdLG8uZXhwb3J0c1siI0JWU1Atc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWwgQm92ZXNwYSBJbmRleCJdLApvLmV4cG9ydHNbIiNDQURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDQURVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0NCT0U6T0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0NCT0U6VklYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVm9sYXRpbGl0eSBTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjQ0JPVDpaQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVC1Cb25kIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3JuIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpNMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb3liZWFuIE1lYWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6Wk4xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjEwIFllYXIgVC1Ob3RlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPYXQgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjMwIERheSBGZWRlcmFsIEZ1bmRzIEludGVyZXN0IFJhdGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJpY2UgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlMxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIldoZWF0IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WEsxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gTWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0JPVF9NSU5JOlhXMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJXaGVhdCBNaW5pIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WU0xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBEb3cgSm9uZXMgKCQ1KSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0hGSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgRnJhbmMgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDSEZVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBGcmFuYyAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQ01FOkJUQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBDTUUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpDQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnV0dGVyIEZ1dHVyZXMtQ2FzaCAoQ29udGludW91czogQ3VycmVudCBjb250cmFjdCBpbiBmcm9udCkiXSxvLmV4cG9ydHNbIiNDTUU6R0YxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZlZWRlciBDYXR0bGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpIRTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGVhbiBIb2dzIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUU6TEUxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdmUgQ2F0dGxlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUVfTUlOSTpFNzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOkVTMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6SjcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOk5RMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOQVNEQVEgMTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6UlRZMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLU1pbmkgUnVzc2VsbCAyMDAwIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBRVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbml1bSBFdXJvcGVhbiBQcmVtaXVtIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBVVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbnVtIE1XIFUuUy4gVHJhbnNhY3Rpb24gUHJlbWl1bSBQbGF0dHMgKDI1TVQpIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpHQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6SEcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6U0kxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIENvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIChNaW5pKSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRTzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCAoTWluaSkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NPUFBFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29wcGVyIl0sby5leHBvcnRzWyIjQ09STlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29ybiJdLG8uZXhwb3J0c1siI0NPVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ290dG9uIl0sby5leHBvcnRzWyIjQ1JZUFRPQ0FQOlRPVEFMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ3J5cHRvIFRvdGFsIE1hcmtldCBDYXAsICQiXSxvLmV4cG9ydHNbIiNERk06REZNR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJERk0gSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tcG9zaXRlIEF2ZXJhZ2UgSW5kZXgiXSwKby5leHBvcnRzWyIjREo6REpDSUFHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQWdyaWN1bHR1cmUgQ2FwcGVkIENvbXBvbmVudCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lDQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQ29jb2EiXSxvLmV4cG9ydHNbIiNESjpESkNJRU4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEVuZXJneSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR29sZCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR3JhaW5zIl0sby5leHBvcnRzWyIjREo6REpDSUlLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBOaWNrZWwiXSxvLmV4cG9ydHNbIiNESjpESkNJS0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IENvZmZlZSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lTQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggU3VnYXIiXSxvLmV4cG9ydHNbIiNESjpESkNJU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IFNpbHZlciJdLG8uZXhwb3J0c1siI0RKOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVHJhbnNwb3J0YXRpb24gQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI0RKOkRKVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBVdGlsaXR5IEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlVTQ0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVS5TLiBDb2FsIEluZGV4Il0sby5leHBvcnRzWyIjRUdYOkVHWDMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRUdYIDMwIEluZGV4Il0sby5leHBvcnRzWyIjRVRDQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gQ2xhc3NpYyAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNFVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSBDbGFzc2ljIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIENsYXNzaWMgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0VUSEJUQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQml0Y29pbiJdLG8uZXhwb3J0c1siI0VUSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUSEdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQnJpdGlzaCBQb3VuZCJdLG8uZXhwb3J0c1siI0VUSEpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjRVRIS1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjRVRIVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNFVEhVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVCVU5ELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBCdW5kIl0sby5leHBvcnRzWyIjRVVSQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVSQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjRVVSQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0VVUkNIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0VVUkdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjRVVSSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0VVUk5PSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBOb3J3ZWdpYW4gS3JvbmUiXSxvLmV4cG9ydHNbIiNFVVJOWkQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjRVVST05FWFQ6QUVYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQUVYIEluZGV4Il0sby5leHBvcnRzWyIjRVVST05FWFQ6QkVMMjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUwgMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJPTkVYVDpQWDEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDQUMgNDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0VVUlJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSBUT00iXSxvLmV4cG9ydHNbIiNFVVJTRUstc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gU3dlZGlzaCBLcm9uYSJdLG8uZXhwb3J0c1siI0VVUlRSWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBUdXJraXNoIExpcmEiXSxvLmV4cG9ydHNbIiNFVVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNFVVNUWDUwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBTdG94eCA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0ZPUkVYQ09NOlVTMjAwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIFNtYWxsIENhcCAyMDAwIl0sCm8uZXhwb3J0c1siI0ZSQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0FDIDQwIEluZGV4Il0sby5leHBvcnRzWyIjRlJFRDpHRFAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHcm9zcyBEb21lc3RpYyBQcm9kdWN0LCAxIERlY2ltYWwiXSxvLmV4cG9ydHNbIiNGUkVEOlBPUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRvdGFsIFBvcHVsYXRpb246IEFsbCBBZ2VzIEluY2x1ZGluZyBBcm1lZCBGb3JjZXMgT3ZlcnNlYXMiXSxvLmV4cG9ydHNbIiNGUkVEOlVOUkFURS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNpdmlsaWFuIFVuZW1wbG95bWVudCBSYXRlIl0sby5leHBvcnRzWyIjRlRTRU1ZWDpGQk1LTENJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSBCdXJzYSBNYWxheXNpYSBLTENJIEluZGV4Il0sby5leHBvcnRzWyIjRldCOktUMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktleSBUcm9uaWMgQ29y0YAuIl0sby5leHBvcnRzWyIjRlg6QVVTMjAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBJbmRleCJdLG8uZXhwb3J0c1siI0ZYOlVTMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIEluZGV4Il0sby5leHBvcnRzWyIjR0JQQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjR0JQQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0dCUENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0dCUEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBFdXJvIl0sby5leHBvcnRzWyIjR0JQSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0dCUE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHQlBQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gUG9saXNoIFpsb3R5Il0sby5leHBvcnRzWyIjR0JQUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIFJ1c3NpYW4gUnVibGUiXSxvLmV4cG9ydHNbIiNHQlBVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHRVIzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRBWCBJbmRleCJdLG8uZXhwb3J0c1siI0dPT0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQyJdLG8uZXhwb3J0c1siI0dPT0dMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEEiXSxvLmV4cG9ydHNbIiNHUFc6QUNHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWNhdXRvZ2F6Il0sby5leHBvcnRzWyIjR1BXOldJRzIwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiV0lHMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNIU0k6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjSUNFVVM6RFgxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNJRFg6Q09NUE9TSVRFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSURYIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOkhTQ0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgQ2hpbmEgRW50ZXJwcmlzZXMgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpKS1NFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFrYXJ0YSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpLTFNFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnVyc2EgTWFsYXlzaWEgS0xDSSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1JQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQiBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1PWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6U1RJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU1RJIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6VFdJSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBXZWlnaHRlZCBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOlhMWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFuZ2hhaSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJT1RVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJT1RBIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNKUE4yMjUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNKUFlLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbmVzZSBZZW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjSlBZUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0pQWVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTEtPSC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxVS09JTCJdLG8uZXhwb3J0c1siI0xTRTpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nob2xpdW0gR3JvdXAgUGxjIE9yZCAxUCJdLG8uZXhwb3J0c1siI0xUQ0JSTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gQnJhemlsaWFuIFJlYWwiXSxvLmV4cG9ydHNbIiNMVENCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNMVENVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTFVOQVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkx1bmEgLyBVLlMuIERvbGxhciJdLApvLmV4cG9ydHNbIiNNT0VYOkJSMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmVudCBPaWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6R0FaUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdBWlBST00iXSxvLmV4cG9ydHNbIiNNT0VYOklNT0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTU9FWCBSdXNzaWEgSW5kZXgiXSxvLmV4cG9ydHNbIiNNT0VYOk1HTlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNQUdOSVQiXSxvLmV4cG9ydHNbIiNNT0VYOk1JQ0VYSU5ERVhDRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1PRVggUnVzc2lhIEluZGV4Il0sby5leHBvcnRzWyIjTU9FWDpNWDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUlDRVggSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6TVgyIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQ0VYIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNNT0VYOlJJMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSVFMgSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6UlRTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJUUyBJbmRleCJdLG8uZXhwb3J0c1siI01PRVg6UlVBTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVuaXRlZCBDb21wYW55IFJVU0FMIFBMQyJdLG8uZXhwb3J0c1siI01PRVg6U0JFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNCRVJCQU5LIl0sby5leHBvcnRzWyIjTU9FWDpWVEJSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVlRCIl0sby5leHBvcnRzWyIjTVNGVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1pY3Jvc29mdCBDb3JwLiJdLG8uZXhwb3J0c1siI05BUzEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIDEwMCBDYXNoIENGRCJdLG8uZXhwb3J0c1siI05BU0RBUTpBTUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBZHZhbmNlZCBNaWNybyBEZXZpY2VzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpHT09HLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEMiXSxvLmV4cG9ydHNbIiNOQVNEQVE6R09PR0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQSJdLG8uZXhwb3J0c1siI05BU0RBUTpIR1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIEhvdXNpbmcgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROklFRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgNy0xMCBZZWFyIFRyZWFzdXJ5IEJvbmQgRVRGIl0sby5leHBvcnRzWyIjTkFTREFROklFSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMy03IFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRlcmlzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpJWElDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmFzZGFxIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpMQ0lELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTHVjaWQgR3JvdXAsIEluYy4iXSxvLmV4cG9ydHNbIiNOQVNEQVE6TEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMYW5kcycgRW5kIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpORFgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXNkYXEgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROk9TWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggT2lsIFNlcnZpY2UgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlNIWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMS0zIFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6U09YLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGhpbGFkZWxwaGlhIFNlbWljb25kdWN0b3IgSW5kZXgiXSxvLmV4cG9ydHNbIiNOQVNEQVE6VExULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAyMCsgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLG8uZXhwb3J0c1siI05BU0RBUTpVVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIFV0aWxpdHkgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlhBVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggR29sZCBhbmQgU2lsdmVyIFNlY3RvciBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpaUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlpzY2FsZXIgSW5jIl0sby5leHBvcnRzWyIjTkVPVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTkVPIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNOR0FTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmF0dXJhbCBHYXMgKEhlbnJ5IEh1YikiXSxvLmV4cG9ydHNbIiNOS1ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOU0U6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kaWFuIFRlbGVwaG9uZSBJbmR1c3RyaWVzIExpbWl0ZWQiXSxvLmV4cG9ydHNbIiNOU0U6TklGVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOaWZ0eSA1MCBJbmRleCJdLG8uZXhwb3J0c1siI05ZTUVYOkFFWjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgRXRoYW5vbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6Q0oxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvY29hIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpDTDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGlnaHQgQ3J1ZGUgT2lsIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpITzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgSGFyYm9yIFVMU0QgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOktUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb2ZmZWUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOk5HMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBhbGxhZGl1bSBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEwxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIEZ1dHVyZXMiXSwKby5leHBvcnRzWyIjTllNRVg6UkIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJCT0IgR2Fzb2xpbmUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOlRUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3R0b24gRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYX01JTkk6UUcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIExpZ2h0IENydWRlIE9pbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRVTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIEdhc29saW5lIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWVNFOkJBQkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbGliYWJhIEdyb3VwIEhvbGRpbmdzIEx0ZC4iXSxvLmV4cG9ydHNbIiNOWVNFOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGT1JEIE1UUiBDTyBERUwiXSxvLmV4cG9ydHNbIiNOWVNFOkhFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGF3YWlpYW4gRWxlY3RyaWMgSW5kdXN0cmllcyJdLG8uZXhwb3J0c1siI05ZU0U6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlBCUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBFVFJPTEVPIEJSQVNJTEVJUk8gU0EgUEVUUk9CUiJdLG8uZXhwb3J0c1siI05ZU0U6WEFYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQU1FWCBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlhNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ZU0UgQVJDQSBNYWpvciBNYXJrZXQgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWkRKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNOWkRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI05aWDpBTExDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL05aWCBBbGwgSW5kZXggKENhcGl0YWwgSW5kZXgpIl0sby5leHBvcnRzWyIjTlpYOk5aNTBHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gTlpYIDUwIEluZGV4IEdyb3NzIl0sby5leHBvcnRzWyIjT0FOREE6TkFUR0FTVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBOYXR1cmFsIEdhcyJdLG8uZXhwb3J0c1siI09BTkRBOlNQWDUwMFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPQU5EQTpYQ1VVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENvcHBlciAoVVMkIC8gbGIpIl0sby5leHBvcnRzWyIjT01YQ09QOk9NWEMyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBDb3BlbmhhZ2VuIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YQ09QOlNDSE8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTY2hvdXcgJiBDbyBBL1MiXSxvLmV4cG9ydHNbIiNPTVhIRVg6T01YSDI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIEhlbHNpbmtpIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YUlNFOk9NWFJHSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBSaWdhIEdyb3NzIEluZGV4Il0sby5leHBvcnRzWyIjT01YU1RPOk9NWFMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBTdG9ja2hvbG0gMzAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhUU0U6T01YVEdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFRhbGxpbm4gR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhWU0U6T01YVkdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFZpbG5pdXMgR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPVEM6SUhSTUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJc2hhcmVzIE1TQ0kgSmFwYW4gU0hTIl0sby5leHBvcnRzWyIjUVNFOkdOUkktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJRRSBJbmRleCJdLG8uZXhwb3J0c1siI1JUUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NpYW4gUlRTIEluZGV4Il0sby5leHBvcnRzWyIjUlVTU0VMTDpSVUEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSdXNzZWxsIDMwMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNSVVNTRUxMOlJVSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NlbGwgMTAwMCBJbmRleCJdLG8uZXhwb3J0c1siI1JVU1NFTEw6UlVULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2VsbCAyMDAwIEluZGV4Il0sby5leHBvcnRzWyIjU0VUOkdDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR2xvYmFsIENvbm5lY3Rpb25zIFB1YmxpYyBDb21wYW55Il0sby5leHBvcnRzWyIjU0lYOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGb3JkIE1vdG9yIENvbXBhbnkiXSxvLmV4cG9ydHNbIiNTSVg6U01JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgTWFya2V0IEluZGV4Il0sby5leHBvcnRzWyIjU09MVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU29sYW5hIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNTT1lCTlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU295YmVhbnMiXSxvLmV4cG9ydHNbIiNTUDpPRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BHU0NJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIEdvbGRtYW4gU2FjaHMgQ29tbW9kaXR5IEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1NQOlNWWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgVmFsdWUgSW5kZXgiXSxvLmV4cG9ydHNbIiNTUFg1MDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1VHQVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFN1Z2FyIl0sCm8uZXhwb3J0c1siI1NaU0U6Mzk5MDAxLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2hlbnpoZW4gQ29tcG9uZW50IEluZGV4Il0sby5leHBvcnRzWyIjVEFEQVdVTDoyMzcwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlkZGxlIEVhc3QgU3BlY2lhbGl6ZWQgQ2FibGVzIENvLiJdLG8uZXhwb3J0c1siI1RBREFXVUw6VEFTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhZGF3dWwgQWxsIFNoYXJlcyBJbmRleCJdLG8uZXhwb3J0c1siI1RBU0U6VEEzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRBLTM1IEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRTWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9UU1ggQ29tcG9zaXRlIEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRYNjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvVFNYIDYwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkFVMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpBVTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkFYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkJYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6Q0ExMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNhbmFkaWFuIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkNBMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpDQUM0MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpDTjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpDTjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNoaW5hIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6Q1hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRFMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHZXJtYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpERTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdlcm1hbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkRFVTMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiREFYIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RFhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNwYWluIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTcGFpbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkVVQlVORC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gQnVuZCJdLG8uZXhwb3J0c1siI1RWQzpFWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkZSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGcmFuY2UgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpGUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZyYW5jZSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkZUTUlCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlsYW5vIEl0YWxpYSBCb3JzYSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpHQjAyLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAyIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpHT0xELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBHb2xkIChVUyQgLyBPWikiXSxvLmV4cG9ydHNbIiNUVkM6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOklCRVgzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklCRVggMzUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6SUQwMy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDMgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SUQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklEMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOklUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGFseSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRhbHkgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLApvLmV4cG9ydHNbIiNUVkM6SVhJQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpKUDEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpKUDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SlhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktPU1BJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgQ29tcG9zaXRlIFN0b2NrIFByaWNlIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJLb3JlYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOktSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpNWTEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWFsYXlzaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpNWTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1hbGF5c2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TkRYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5JMjI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gMjI1IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5MMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXRoZXJsYW5kcyBHb3Zlcm5tZW50IEJvbmRzLCAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpOTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldGhlcmxhbmRzIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6TloxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOk5aMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQQUxMQURJVU0tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFBhbGxhZGl1bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBMMDVZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9sYW5kIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBvbGFuZCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlBMQVRJTlVNLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBQbGF0aW51bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb3J0dWdhbCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOlBUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9ydHVnYWwgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpTQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU291dGggQWZyaWNhIFRvcCA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTSUxWRVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFNpbHZlciAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlNQWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6U1NNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIE1hcmtldCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTdHJhaXRzIFRpbWVzIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYNUUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIEZyYW5jIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlRSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUdXJrZXkgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpUUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlR1cmtleSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlVLT0lMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBCcmVudCBDcnVkZSBPaWwiXSxvLmV4cG9ydHNbIiNUVkM6VUtYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlVTMDItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVMwMlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMwNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzA1WS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpVUzEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMzAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFdUSSBDcnVkZSBPaWwiXSwKby5leHBvcnRzWyIjVFZDOlZJWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZvbGF0aWxpdHkgUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpaWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUV0lJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVGFpd2FuIFdlaWdodGVkIEluZGV4Il0sby5leHBvcnRzWyIjVFdTRTpUQUlFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBDYXBpdGFsaXphdGlvbiBXZWlnaHRlZCBTdG9jayBJbmRleCJdLG8uZXhwb3J0c1siI1RXVFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUd2l0dGVyIEluYyJdLG8uZXhwb3J0c1siI1VLMTAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSAxMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNVS09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ3J1ZGUgT2lsIChCcmVudCkiXSxvLmV4cG9ydHNbIiNVTklVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVbmlzd2FwIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI1VTREFVRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gQXVzdHJhbGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjVVNEQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDYW5hZGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFN3aXNzIEZyYW5jIl0sby5leHBvcnRzWyIjVVNEQ05ZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNVU0RES0stc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIERhbmlzaCBLcm9uZSJdLG8uZXhwb3J0c1siI1VTREVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gRXVybyJdLG8uZXhwb3J0c1siI1VTREdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUG91bmQgU3RlcmxpbmciXSxvLmV4cG9ydHNbIiNVU0RIS0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEhvbmcgS29uZyBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RIVUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEh1bmdhcmlhbiBGb3JpbnQiXSxvLmV4cG9ydHNbIiNVU0RJRFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1cGlhaCJdLG8uZXhwb3J0c1siI1VTRElMUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSXNyYWVsaSBTaGVrZWwiXSxvLmV4cG9ydHNbIiNVU0RJTlItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEluZGlhbiBSdXBlZSJdLG8uZXhwb3J0c1siI1VTREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjVVNES1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTb3V0aCBLb3JlYW4iXSxvLmV4cG9ydHNbIiNVU0RNWE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIE1leGljYW4gUGVzbyJdLG8uZXhwb3J0c1siI1VTRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEUEhQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBQaGlsaXBwaW5lIHBlc28iXSxvLmV4cG9ydHNbIiNVU0RQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI1VTRFJVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI1VTRFJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1c3NpYW4gUnVibGUgVE9NIl0sby5leHBvcnRzWyIjVVNEU0VLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTd2VkaXNoIEtyb25hIl0sby5leHBvcnRzWyIjVVNEU0dELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTaW5nYXBvcmUgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNVU0RUUlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFR1cmtpc2ggTGlyYSJdLG8uZXhwb3J0c1siI1VTRFpBUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gU291dGggQWZyaWNhbiBSYW5kIl0sby5leHBvcnRzWyIjVVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENydWRlIE9pbCAoV1RJKSJdLG8uZXhwb3J0c1siI1dIRUFUVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBXaGVhdCJdLG8uZXhwb3J0c1siI1hBR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEFVVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBTcG90IC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYQlRDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQ2FuYWRpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEVUUjpEQVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEQVggSW5kZXgiXSxvLmV4cG9ydHNbIiNYTVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNb25lcm8gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI1hQRFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gUGFsbGFkaXVtIl0sCm8uZXhwb3J0c1siI1hQVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYUlBCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJYUlAgLyBCaXRjb2luIl0sby5leHBvcnRzWyIjWFJQRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWFJQIC8gRXVybyJdLG8uZXhwb3J0c1siI1hSUFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlhSUCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWkVDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWmNhc2ggLyBVLlMuIERvbGxhciJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94708.73d2bca37207c67a41f4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FOREXCOM%3ASPXUSD%22%2C%22title%22%3A%22S%26P%20500%22%7D%2C%7B%22proName%22%3A%22FOREXCOM%3ANSXUSD%22%2C%22title%22%3A%22Nasdaq%20100%22%7D%2C%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22showSymbolLogo%22%3Atrue%2C%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.222Z","timestamp":1785154590222,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/94708.73d2bca37207c67a41f4.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-8b98\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 87913cf2e13505f8f301537d93cf8a5f\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":35736,"size_decoded":12654,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3065)","md5":"eb8c592becd98b3361efe0b94719d5c6","sha1":"a0d1ee8521cfba7aa407ac50937aedd5f39bf878","sha256":"647fb8708ead9f5ba58a75d3b5e6d45f3df1f26a67f068d19a46752de40e327d","sha512":"27e850e1b55df1bfb523a33007db88c5bf3fca11c34b9f448fad508275031d48062410c7e49cd891d38f4058b2dad657828a8ce9f5a047b24a8804c477a90feb","ssdeep":"768:Qy2uEBDBP0oAifg+OMQjn3FMjhYVwPn9/meP+Tjwqcq8xGQKpb5dg+xU7wbwpEvK:k950TT3WOOP9AsqcK555x/dMDjcXRdH6","tlshash":"f4f2f917f1a7b46693db809ae4724213a33c18013d05486dbabc9ddd2a3f942b663f7d","first_seen":"2026-07-23T13:38:20.417189Z","last_seen":"2026-07-27T14:18:36.345123Z","times_seen":1474,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbOTQ3MDhdLHs5MzAyMzEoZSx0LHMpe3MuZCh0LHtpc0ZlYXR1cmVzZXRFbmFibGVkOigpPT5hfSk7dmFyIG49cyg2MzUxOCk7Y29uc3QgaT1uZXcgTWFwLG89bmV3IE1hcCxyPW5ldyBTZXQ7ZnVuY3Rpb24gYShlKXtjb25zdCB0PWkuZ2V0KGUpO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQ7Y29uc3Qgcz1vLmdldChlKTtyZXR1cm4hIXMmJnMuc29tZShhKX1mdW5jdGlvbiBkKGUsdCl7aS5zZXQoU3RyaW5nKGUpLEJvb2xlYW4odCkpfSFmdW5jdGlvbigpe2Zvcihjb25zdFtlLHRdb2YgT2JqZWN0LmVudHJpZXMobikpaWYoci5hZGQoZSksInN1YnNldHMiaW4gdClmb3IoY29uc3QgcyBvZiB0LnN1YnNldHMpe3IuYWRkKHMpO2xldCB0PW8uZ2V0KHMpO3ZvaWQgMD09PXQmJih0PVtdLG8uc2V0KHMsdCkpLHQucHVzaChlKX19KCksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzJiZBcnJheS5pc0FycmF5KF9faW5pdGlhbERpc2FibGVkRmVhdHVyZXNldHMpJiZfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMSl9KSksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMmJkFycmF5LmlzQXJyYXkoX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzKSYmX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMCl9KSl9LDg1NjE5NihlLHQscyl7cy5kKHQse3Nob3VsZEFmZmVjdFVzZXI6KCk9PmR9KTt2YXIgbj1zKDEwMDU5NSksaT1zLm4obiksbz1zKDkzMjM2NSk7Y29uc3Qgcj0iZmVhdHVyZXRvZ2dsZV9zZWVkIjtmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWkoKShlK2Z1bmN0aW9uKCl7aWYod2luZG93LnVzZXImJndpbmRvdy51c2VyLmlkKXJldHVybiB3aW5kb3cudXNlci5pZDtjb25zdCBlPW8uVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShyKTtpZihudWxsIT09ZSlyZXR1cm4gZTtjb25zdCB0PU1hdGguZmxvb3IoMWU2Kk1hdGgucmFuZG9tKCkpO3JldHVybiBvLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0ocixgJHt0fWApLHR9KCkpLHM9bmV3IERhdGFWaWV3KHQpO3JldHVybiBzLmdldFVpbnQzMigwLCEwKS80Mjk0OTY3Mjk2fWNhdGNoKGUpe3JldHVybi41fX1mdW5jdGlvbiBkKGUsdCl7cmV0dXJuIGEoZSk8PXR9fSwxNTk1MTMoZSx0LHMpe3MuZCh0LHtnZXRRdW90ZVNlc3Npb25JbnN0YW5jZTooKT0+YX0pO3ZhciBuPXMoOTI3NTkzKSxpPXMoNzU1NjI3KSxvPXMoMTUwMTUwKTtjb25zdCByPXt9O2Z1bmN0aW9uIGEoZT0iZnVsbCIpe3JldHVybiByW2VdfHxmdW5jdGlvbihlPSJmdWxsIix0KXtyW2VdPXR9KGUsbmV3IG4uUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIoe25hbWU6ZSxhcGk6d2luZG93LkNoYXJ0QXBpSW5zdGFuY2UsZmllbGRzOmRbZV0sZXh0ZW5zaW9uczp7Zm9ybWF0dGVyOmU9Pm5ldyB1KGUpLmZvcm1hdHRlcixzbmFwc2hvdDplPT5uZXcgYyhlKS5zbmFwc2hvdH19KSkscltlXX1jb25zdCBkPXtzaW1wbGU6WyJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJjaCIsImNocCIsImN1cnJlbmN5LWxvZ29pZCIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImJhc2VfY3VycmVuY3lfaWQiLCJjdXJyZW50X3Nlc3Npb24iLCJkZXNjcmlwdGlvbiIsImV4Y2hhbmdlIiwiZm9ybWF0IiwiZnJhY3Rpb25hbCIsImlzX3RyYWRhYmxlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxpc3RlZF9leGNoYW5nZSIsImxvZ29pZCIsImxwIiwibHBfdGltZSIsIm1pbm1vdiIsIm1pbm1vdmUyIiwib3JpZ2luYWxfbmFtZSIsInByaWNlc2NhbGUiLCJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIiwidXBkYXRlX21vZGUiLCJ2b2x1bWUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJ2YWx1ZV91bml0X2lkIiwidW5pdF9pZCIsIm1lYXN1cmUiXX07ZC5zaW1wbGVEZXRhaWxlZD1bLi4uZC5zaW1wbGUsImFzayIsImJpZCIsImZ1bmRhbWVudGFscyIsImhpZ2hfcHJpY2UiLCJpc190cmFkYWJsZSIsImxvd19wcmljZSIsIm9wZW5fcHJpY2UiLCJwcmV2X2Nsb3NlX3ByaWNlIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwic3RhdHVzIiwiYmFzaWNfZXBzX25ldF9pbmNvbWUiLCJiZXRhXzFfeWVhciIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJpbmR1c3RyeSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJzZWN0b3IiLCJ2b2x1bWUiLCJkaXZpZGVuZHNfeWllbGQiLCJ0aW1lem9uZSJdLGQuZnVsbD1bXSxkLndhdGNobGlzdD1bLi4uZC5zaW1wbGUsInJjaHAiLCJuY2hwIiwicnRjIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJkaXZpZGVuZHNfYXZhaWxhYmlsaXR5IiwiZmluYW5jaWFsc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiXSwKZC5wb3J0Zm9saW89WyJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJleGNoYW5nZSIsImxpc3RlZF9leGNoYW5nZSIsImRlc2NyaXB0aW9uIiwibG9jYWxfZGVzY3JpcHRpb24iLCJsYW5ndWFnZSIsInNlY3RvciIsInR5cGUiLCJ0eXBlc3BlY3MiLCJpbmR1c3RyeSIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImNoIiwiY2hwIiwibG9nbyIsImxvZ29pZCIsImN1cnJlbmN5LWxvZ29pZCIsImJhc2UtY3VycmVuY3ktbG9nb2lkIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImxwIiwiZnJhY3Rpb25hbCIsIm1pbm1vdiIsIm1pbm1vdmUyIiwicHJpY2VzY2FsZSIsInZvbHVtZSIsImF2ZXJhZ2Vfdm9sdW1lIiwibWFya2V0X2NhcF9jYWxjIiwibWFya2V0X2NhcF9iYXNpYyIsInRvdGFsX3JldmVudWUiLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwicHJpY2VfZWFybmluZ3NfdHRtIiwiYmV0YV8xX3llYXIiLCJkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnkiLCJkaXZpZGVuZHNfeWllbGQiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwicmF0ZXNfbWMiLCJyYXRlc19meSIsInJhdGVzX3R0bSIsImZvcm1hdCIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQubm90ZXM9WyJzaG9ydF9uYW1lIiwicHJvX25hbWUiLCJsb2dvaWQiLCJjdXJyZW5jeS1sb2dvaWQiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJzeW1ib2wtcHJpbWFyeW5hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIl0sZC5lc3RpbWF0ZXM9WyJmdW5kYW1lbnRhbF9kYXRhIiwidHlwZSIsInR5cGVzcGVjcyIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X3N5bWJvbF9jdXJyZW5jeV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9hbGlnbmVkX2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfY2FsZW5kYXJfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIl0sZC5lY29ub21pYz1bInJlZmVyZW5jZS1sYXN0LXBlcmlvZCIsImxwIiwiY3VycmVuY3lfY29kZSIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQub3B0aW9ucz1bImFzayIsImJpZCIsImxwIiwidm9sdW1lIiwiY2giLCJjaHAiXTtjbGFzcyB1e2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlPXt9LHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzPXt9LHRoaXMuZm9ybWF0dGVyPShlLHQpPT57aWYodGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnNbZV0pcmV0dXJuIHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdO2Z1bmN0aW9uIHMoZSl7Y29uc3Qgcz10JiYhZS5mcmFjdGlvbmFsPzE6ZS5taW5tb3Y7cmV0dXJuIG5ldyBpLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOmUucHJpY2VzY2FsZSxtaW5Nb3ZlOnMsZnJhY3Rpb25hbDplLmZyYWN0aW9uYWwsbWluTW92ZTI6ZS5taW5tb3ZlMn0pfWNvbnN0IG49bmV3IFByb21pc2UoKCh0LG4pPT57aWYodGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV0pdChzKHRoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlW2VdKSk7ZWxzZXtjb25zdCBpPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUoaSxbZV0sKG89PnsiZXJyb3IiPT09by5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1udWxsLG4oIlF1b3RlcyBzbmFwc2hvdCBpcyBub3QgcmVjZWl2ZWQiKSksZnVuY3Rpb24oZSl7cmV0dXJuIGUmJm51bGwhPWUucHJpY2VzY2FsZSYmbnVsbCE9ZS5taW5tb3Z9KG8udmFsdWVzKSYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsdGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV09by52YWx1ZXMsdChzKG8udmFsdWVzKSksdGhpcy5fbXVsdGlwbGV4ZXIudW5zdWJzY3JpYmUoaSxlKSl9KSl9fSkpO3JldHVybiB0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1uLG59LHRoaXMuX211bHRpcGxleGVyPWV9fWNsYXNzIGN7Y29uc3RydWN0b3IoZSl7dGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZT17fSx0aGlzLl93YWl0aW5nRm9yU25hcHNob3Q9e30sdGhpcy5zbmFwc2hvdD1lPT57aWYodGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdKXJldHVybiB0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV07Y29uc3QgdD1uZXcgUHJvbWlzZSgoKHQscyk9PntpZih0aGlzLl9zbmFwc2hvdFZhbHVlc0NhY2hlW2VdKXQodGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZVtlXSk7ZWxzZXtjb25zdCBuPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUobixbZV0sKGk9PnsiZXJyb3IiPT09aS5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV09bnVsbCxzKCJRdW90ZXMgc25hcHNob3QgaXMgbm90IHJlY2VpdmVkIikpO2NvbnN0IG89aS52YWx1ZXM7byYmby5taW5tb3YmJm8ucHJpY2VzY2FsZSYmby5kZXNjcmlwdGlvbiYmKHRoaXMuX3dhaXRpbmdGb3JTbmFwc2hvdFtlXT1udWxsLHRoaXMuX3NuYXBzaG90VmFsdWVzQ2FjaGVbZV09byx0KG8pLHRoaXMuX211bHRpcGxleGVyLnVuc3Vic2NyaWJlKG4sZSkpfSkpfX0pKTtyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdPXQsdH0sdGhpcy5fbXVsdGlwbGV4ZXI9ZX19InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2U9YSl9LDUzNTMwKGUsdCxzKXtzLmQodCx7Z2V0TWluVGlja0RhdGE6KCk9PmQsbWFrZVZhcmlhYmxlTWluVGlja0RhdGE6KCk9PmN9KTt2YXIgbj1zKDcxMjc0NSksaT1zKDYwMTg0MSksbz1zKDUzNDQ0MCkscj1zKDY0MDc0NCk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZT8oMCxuLkJpZykoZS5taW5Nb3ZlKS5kaXYoZS5wcmljZVNjYWxlKS50b051bWJlcigpOk5hTn1mdW5jdGlvbiBkKGUpe2NvbnN0e21pblRpY2s6dCxwcmljZTpzLHZhcmlhYmxlTWluVGlja0RhdGE6bixzaG91bGRDaGVja0ZvckVxdWFsaXR5Om99PWUscj0oMCwKaS5pc051bWJlcikodCk/dSh0KTp0O3JldHVybiB2b2lkIDA9PT1uP3I6ZnVuY3Rpb24oZSx0LHM9ITEpe2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtpZihlPHRbbl0ucHJpY2UpcmV0dXJuIHRbbl0ubWluVGljaztpZihzJiZlPT09dFtuXS5wcmljZSlyZXR1cm4gdFtuXS5taW5UaWNrfXJldHVybiB0W3QubGVuZ3RoLTFdLm1pblRpY2t9KHMsbixvKX1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9KDAsby5udW1PZkRlY2ltYWxQbGFjZXMpKGUpLHM9TWF0aC5wb3coMTAsdCk7cmV0dXJue3ByaWNlU2NhbGU6cyxtaW5Nb3ZlOigwLG4uQmlnKShlKS5tdWwocykudG9OdW1iZXIoKX19ZnVuY3Rpb24gYyhlLHQpe2NvbnN0IHM9W3ttaW5UaWNrOigwLGkuaXNOdW1iZXIpKGUpP3UoZSk6ZSxwcmljZToxLzAsbWF4SW5kZXg6MS8wfV07dHJ5e2NvbnN0IGU9dC5zcGxpdCgiICIpLm1hcCgoKGUsdCk9PigwLHIuaXNFdmVuKSh0KT9mdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNGaW5pdGUodCkpcmV0dXJuIHUodCk7e2NvbnN0IHQ9ZS5zcGxpdCgiLyIpO2lmKHQubGVuZ3RoPDJ8fHQubGVuZ3RoPjMpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCBzPU51bWJlcih0WzFdKSxuPU51bWJlcih0WzBdKTtpZighTnVtYmVyLmlzRmluaXRlKHMpfHwhTnVtYmVyLmlzRmluaXRlKG4pKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3QgaT0zPT09dC5sZW5ndGg/TnVtYmVyKHRbMl0pOnZvaWQgMDtpZih2b2lkIDAhPT1pJiYhTnVtYmVyLmlzRmluaXRlKGkpKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3Qgbz17cHJpY2VTY2FsZTpzLG1pbk1vdmU6bn07cmV0dXJuIHZvaWQgMCE9PWkmJihvLm1pbk1vdmUyPWkpLG99fShlKTpmdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNOYU4odCkpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIHByaWNlIGxpbWl0OiAke2V9YCk7cmV0dXJuIHR9KGUpKSk7aWYoKDAsci5pc0V2ZW4pKGUubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIlRoZW1lIG11c3Qgbm90IGJlIGV2ZW50IG51bWJlciBvZiBlbGVtZW50cyIpO2NvbnN0IHM9W107Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kz0yKXtjb25zdCBpPWVbdCsxXT8/MS8wLG89c1tzLmxlbmd0aC0xXT8ucHJpY2U/PzAscj1zW3MubGVuZ3RoLTFdPy5tYXhJbmRleD8/MCxkPWk9PT0xLzA/MS8wOm5ldyBuLkJpZyhpKS5taW51cyhvKS5kaXYoYShlW3RdKSkucGx1cyhyKS50b051bWJlcigpO3MucHVzaCh7bWluVGljazplW3RdLHByaWNlOmksbWF4SW5kZXg6ZH0pfXJldHVybiBzfWNhdGNoe3JldHVybiBzfX19LDgyMjQzMShlLHQscyl7cy5kKHQse251bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvOigpPT5pfSk7dmFyIG49cyg2MDE4NDEpO2Z1bmN0aW9uIGkoZSx0KXtpZighKDAsbi5pc051bWJlcikoZSkpcmV0dXJuIm4vYSI7aWYoISgwLG4uaXNJbnRlZ2VyKSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKHQ8MHx8dD4yNCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKDA9PT10KXJldHVybiBlLnRvU3RyaW5nKCk7cmV0dXJuKCIwMDAwMDAwMDAwMDAwMDAwMDAwMCIrZS50b1N0cmluZygpKS5zbGljZSgtdCl9fSwzNjc5NDYoZSx0LHMpe2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtpZih2b2lkIDA9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5tYXRjaCgvKGRlbGF5ZWRfc3RyZWFtaW5nKV8oXGQrKS8pO3JldHVybiBudWxsPT09dD9udWxsOnttb2RlOnRbMV0saW50ZXJ2YWw6cGFyc2VJbnQodFsyXSl9fShlLnVwZGF0ZV9tb2RlKTtyZXR1cm4gbnVsbD09PXR8fChlLnVwZGF0ZV9tb2RlPXQubW9kZSxlLnVwZGF0ZV9tb2RlX3NlY29uZHM9dC5pbnRlcnZhbCksZX1zLmQodCx7bm9ybWFsaXplVXBkYXRlTW9kZTooKT0+bn0pfSw3MjI1NzEoZSx0LHMpe3ZhciBuPXMoMjAzNjgxKSxpPXMoNTQ3ODUxKSxvPXMoMjA2NjczKSxyPXMoMzA0MjIxKSxhPXMoODE3MzUwKSxkPXMoMTM4NjM4KSx1PXMoNjAxODQxKSxjPXMoMjMyMzY0KSxsPXMoMjIxMDYxKSxoPXMoNzgwOTc1KSxfPXMoNzczMDg4KSxtPXMoOTMwMjMxKSxmPXMoNjA2MTApLHA9cyg0MDM2KSxnPXMoNTIxMzMzKSx5PXMoMjE3NTI3KSxiPXMoNzQ2OTQ5KSx3PXMoNjYxODU4KSxDPXMoMzg0MDE3KSxrPXMoODg5NTE1KSx2PXMoNzY4NzYwKSxTPXMoNTg5NzQ5KSxNPXMoMTE2MzEwKSxSPXMoNDc5MzQpLFQ9cyg1NjkzOTgpLHE9cyg4NjIyMTMpLE49cygxMTczMTMpLEQ9cygxNTY4NTApLEk9cyg2NDA3NDQpLFA9cyg3ODMzNDApLEU9cyg5MzAwNDUpLEY9cyg0NjM0NDcpO2NvbnN0IHg9KDAsbC5nZXRMb2dnZXIpKCJDaGFydC5TdHVkaWVzLlN0dWR5TWV0YUluZm9SZXBvc2l0b3J5Iix7Y29sb3I6IiM2MDYifSksSD0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLlRyYWZmaWNNZXRlciIse21heENvdW50OjIwLGNvbG9yOiIjMjY4In0pLEE9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5Db3JlIix7Y29sb3I6IiM3MDYifSksQj0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse2NvbG9yOiIjNzA2In0pLEw9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5DaGFydFNlc3Npb24iLHtoaWdoUmF0ZTohMCxtYXhDb3VudDoxMDAsY29sb3I6IiM3MDYifSksTz0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjAsY29sb3I6IiM3MDYifSksUT0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjUwLGNvbG9yOiIjNzA2In0pLFY9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5RdW90ZVNlc3Npb24iLHttYXhDb3VudDo1MCxjb2xvcjoiIzY2MCJ9KSwkPSgwLGwuZ2V0TG9nZ2VyKSgiQ2hhcnRBcGkuUXVvdGVTZXNzaW9uIix7aGlnaFJhdGU6ITAsbWF4Q291bnQ6MTAsY29sb3I6IiM2NjAifSksVT0hKDAsCk4uaXNPbk1vYmlsZUFwcFBhZ2UpKCJhbnkiKSxXPSgwLFQuaXNGZWF0dXJlRW5hYmxlZCkoImJyb2tlcl9pZF9zZXNzaW9uIiksaj0oMCxULmlzRmVhdHVyZUVuYWJsZWQpKCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCIpO2xldCB6PSExLEo9ITEsRz0hMTtjb25zdCBZPVsiIiwiS0IiLCJNQiIsIkdCIiwiVEIiXTtmdW5jdGlvbiBLKGUpe2lmKDA9PT1lKXJldHVybiIwIjtjb25zdCB0PSgwLEkudG9JbnQpKE1hdGguZmxvb3IoTWF0aC5sb2coZSkvTWF0aC5sb2coMTAyNCkpKTtyZXR1cm4oZS9NYXRoLnBvdygxMDI0LHQpKS50b0ZpeGVkKDIpK1lbdF19ZnVuY3Rpb24gWihlLHQpe3JldHVybmAke2V9X18ke3R9YH1mdW5jdGlvbiBYKGUsdCxzKXtjb25zdCBuPXRbc10/PzA7dFtzXT1uK2V9Y29uc3QgZWU9WC5iaW5kKG51bGwsMSksdGU9WC5iaW5kKG51bGwsLTEpLHNlPSgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpPyJzdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6InN0dWRpZXNfbWV0YWRhdGEiLG5lPSIvY2hhcnQtYXBpL3Byb19oYXNoIixpZT0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKT8iL2NoYXJ0LWFwaS9zdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6Ii9jaGFydC1hcGkvc3R1ZGllc19tZXRhZGF0YSI7bGV0IG9lPW51bGw7ZnVuY3Rpb24gcmUoKXtpZihudWxsPT09b2Upe2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbGlua1tyZWx+PSJjb252ZXJzaW9ucy1jb25maWciXScpLHQ9bmV3IFVSTCgoMCxkLmVuc3VyZU5vdE51bGwpKGUpLmhyZWYpO29lPSgwLEMuZmV0Y2gpKHQudG9TdHJpbmcoKSx7bWV0aG9kOiJHRVQifSkudGhlbigoZT0+e2lmKCFlLm9rKXRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgY29udmVyc2lvbnMgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO3JldHVybiBlLmpzb24oKX0pKS50aGVuKChlPT57Y29uc3QgdD0oMCxxLmdldExvZ29VcmxSZXNvbHZlcikoKTtyZXR1cm4gZS5jdXJyZW5jaWVzLmZvckVhY2goKGU9Pnt2b2lkIDAhPT1lLmxvZ29pZCYmKGUubG9nb1VybD10LmdldFN5bWJvbExvZ29VcmwoZS5sb2dvaWQscS5Mb2dvU2l6ZS5NZWRpdW0pKX0pKSxlfSkpfXJldHVybiBvZX1sZXQgYWU9bnVsbDtjbGFzcyBkZXtjb25zdHJ1Y3RvcihlKXt0aGlzLnNlc3Npb25pZD1udWxsLHRoaXMuX2JhbkluZm89bmV3IGMuV2F0Y2hlZFZhbHVlKG51bGwpLHRoaXMuX2lzQXV0aFRva2VuTG9hZGVkPSExLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQ9RGF0ZS5ub3coKS1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9pbml0Q2FjaGVQcm9taXNlPSgwLE0uY3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlKSgiVFZDaGFydEFwaSIpLHRoaXMuX3RyYWZmaWNTdGF0cz17dG90YWw6MCxzaW5jZUNvbm5lY3Q6MCxsYXN0Q2h1bms6MH0sdGhpcy5fbG93UXVhbGl0eUVuYWJsZWQ9ITEsdGhpcy5fYnJva2VySWQ9IiIsdGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQ9MCx0aGlzLl9tb2RpZnlTdHVkeU1hcD1uZXcgTWFwLHRoaXMuX2Rpc2Nvbm5lY3RDb3VudD0wLHRoaXMuX2lzQ29ubmVjdGVkPSExLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGwsdGhpcy5fZGF0YUhhbmRsZU1vZHVsZT1uZXcgRS5KU09ORGF0YUhhbmRsZXIsdGhpcy5fc2Vzc2lvbnM9e30sdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnM9e30sdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W10sdGhpcy5fbG9hZE5ld0JhcnM9ITEsdGhpcy5fbWV0YWRhdGFSZXF1ZXN0TmV4dE51bWJlcj0xLHRoaXMuX2Z1bmRhbWVudGFsQ291bnRlcj17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcz1uZXcgTWFwLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkPW5ldyBjLldhdGNoZWRWYWx1ZSghMSksdGhpcy5fc2VudE1ldGhvZHNDb3VudGVycz1uZXcgTWFwLHRoaXMuX3JlY2VpdmVkTWV0aG9kc0NvdW50ZXJzPW5ldyBNYXAsdGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9bnVsbCx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vblJlY29ubmVjdCh0aGlzLl9iaW5kU29ja2V0RXZlbnRzLmJpbmQodGhpcykpLHRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uc2V0TG9nZ2VyKEEsbC5nZXRMb2dIaXN0b3J5KSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNldFRlbGVtZXRyeShELnRlbGVtZXRyeSksdGhpcy5fYmluZFNvY2tldEV2ZW50cygpLHRoaXMuX2lzTm9uQ291bnRlZFN0dWR5PSgpPT4hMCx3aW5kb3c/LlRyYWRpbmdWaWV3Py5vbkNoYXJ0UGFnZXx8dGhpcy5fZW5hYmxlTG93UXVhbGl0eU1vZGUoKSxzZXRJbnRlcnZhbCgoKCk9PntILmxvZ05vcm1hbCgiTGFzdCAzMCBzZWNvbmRzOiIrSyh0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKSsiIFNpbmNlIGxhc3QgY29ubmVjdDoiK0sodGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCkrIiBUb3RhbCB0cmFmZmljOiIrSyh0aGlzLl90cmFmZmljU3RhdHMudG90YWwpKSx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rPTB9KSwzZTQpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnN1YnNjcmliZSgoZT0+e2UmJnRoaXMuZGlzY29ubmVjdCgpfSkpfWNvbm5lY3QoZSl7dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc0Nvbm5lY3RlZCgpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGluZygpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5kaXNjb25uZWN0KCl9c2VudE1ldGhvZHNDb3VudGVycygpe3JldHVybiB0aGlzLl9zZW50TWV0aG9kc0NvdW50ZXJzfXJlY2VpdmVkTWV0aG9kc0NvdW50ZXJzKCl7CnJldHVybiB0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVyc31kZWZhdWx0UmVzb2x1dGlvbnMoKXtyZXR1cm4oMCxnLmdldERlZmF1bHRSZXNvbHV0aW9ucykoKX1hdmFpbGFibGVDdXJyZW5jaWVzKCl7cmV0dXJuIHJlKCkudGhlbigoZT0+ZS5jdXJyZW5jaWVzKSl9YXZhaWxhYmxlVW5pdHMoKXtyZXR1cm4gcmUoKS50aGVuKChlPT57Y29uc3QgdD17fTtmb3IoY29uc3QgcyBvZiBlLnVuaXRzKXRbcy50eXBlXXx8KHRbcy50eXBlXT1bXSksdFtzLnR5cGVdLnB1c2gocyk7cmV0dXJuIHR9KSl9YXN5bmMgYXZhaWxhYmxlTWV0cmljcygpe3JldHVybiBmdW5jdGlvbigpe2lmKG51bGw9PT1hZSl7Y29uc3QgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW3JlbH49Im1ldHJpY3MtY29uZmlnIl0nKSx0PW5ldyBVUkwoKDAsZC5lbnN1cmVOb3ROdWxsKShlKS5ocmVmKTthZT0oMCxDLmZldGNoKSh0LnRvU3RyaW5nKCkse21ldGhvZDoiR0VUIn0pLnRoZW4oKGFzeW5jIGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIG1ldHJpY3MgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO2NvbnN0IHQ9YXdhaXQgZS5qc29uKCk7cmV0dXJuIHQubWV0cmljc19mdWxsX25hbWU/LmZvckVhY2goKGU9Pntjb25zdCBzPXQubWV0cmljcy5maW5kKCh0PT50LmlkPT09ZS5pZCkpO3MmJihzLmRlc2NyaXB0aW9uPWUubmFtZSl9KSksdH0pKX1yZXR1cm4gYWV9KCkudGhlbigoZT0+ZS5tZXRyaWNzKSl9YXZhaWxhYmxlUHJpY2VTb3VyY2VzKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSl9c3VwcG9ydGVkU3ltYm9sc1R5cGVzKCl7Y29uc3QgZT13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyPz8iIjtyZXR1cm4iYm92ZXNwYSI9PT1lP3cuZmlsdGVyKChlPT5bIiIsInN0b2NrIiwiZnV0dXJlcyIsImluZGV4Il0uaW5jbHVkZXMoZS52YWx1ZSkpKToiY21lIj09PWU/dy5maWx0ZXIoKGU9PmUudmFsdWUhPT15LnR5cGVzLlFVQU5ETCkpOnd9c3ltYm9sc0dyb3VwaW5nKCl7cmV0dXJue2Z1dHVyZXM6L14oLis/KShbMTJdIXxcd1xkezR9KT8kL319Y29ubmVjdGVkKCl7cmV0dXJuISF0aGlzLl9pc0Nvbm5lY3RlZH1hdXRoVG9rZW5NYW5hZ2VyKCl7cmV0dXJuKDAsZC5lbnN1cmVEZWZpbmVkKSh0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyKX1jcmVhdGVTZXNzaW9uKGUsdCl7dGhpcy5fc2Vzc2lvbnNbZV09dCx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXT17fSx0aGlzLmNvbm5lY3RlZCgpJiZ0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZCYmdC5vbk1lc3NhZ2Uoe21ldGhvZDpoLkNoYXJ0QXBpTWVzc2FnZU1ldGhvZC5Db25uZWN0ZWQscGFyYW1zOltdfSl9cmVtb3ZlU2Vzc2lvbihlKXtkZWxldGUgdGhpcy5fc2Vzc2lvbnNbZV0sZGVsZXRlIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdfWRpc2Nvbm5lY3RDb3VudCgpe3JldHVybiB0aGlzLl9kaXNjb25uZWN0Q291bnR8fDB9Z2V0UGluZ0luZm8oKXtyZXR1cm4gdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRQaW5nSW5mbygpfWNvbm5lY3Rpb25CYW5JbmZvKCl7cmV0dXJuIHRoaXMuX2JhbkluZm8ucmVhZG9ubHkoKX1jb25uZWN0aW9uc0xpbWl0UmVhY2hlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uc0xpbWl0UmVhY2hlZC5yZWFkb25seSgpfXNlcnZlclRpbWUoKXtyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9zZXJ2ZXJUaW1lQmFzZVBvaW50K3BlcmZvcm1hbmNlLm5vdygpKX1jb21wZW5zYXRlQ29ubmVjdGlvbkxhZyhlKXtjb25zdCB0PXRoaXMuc2VydmVyVGltZSgpLHM9TWF0aC5mbG9vcihlLXQpO3M+MCYmKHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQrPXMpfXNldEJyb2tlcihlKXtyZXR1cm4gZT09PXRoaXMuX2Jyb2tlcklkfHwodGhpcy5fYnJva2VySWQ9ZSx0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpKX1jaGFydENyZWF0ZVNlc3Npb24oZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImNoYXJ0X2NyZWF0ZV9zZXNzaW9uIixbZSx0XSl9Y2hhcnREZWxldGVTZXNzaW9uKGUpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiY2hhcnRfZGVsZXRlX3Nlc3Npb24iLFtlXSl9c3dpdGNoVGltZXpvbmUoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInN3aXRjaF90aW1lem9uZSIsW2UsdF0pfXJlc29sdmVTeW1ib2woZSx0LHMsbil7cmV0dXJuIEQudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXNbInJlc29sdmVfc3ltYm9sXyIrZV09d2luZG93LnBlcmZvcm1hbmNlLm5vdygpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCwhMCksdGhpcy5fc2VuZFJlcXVlc3QoInJlc29sdmVfc3ltYm9sIixbZSx0LHNdKX1yZXF1ZXN0Rmlyc3RCYXJUaW1lKGUsdCxzLG4pe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhuLHQsITApLHRoaXMuX3NlbmRSZXF1ZXN0KCJnZXRfZmlyc3RfYmFyX3RpbWUiLFtlLHQsc10pfWNyZWF0ZVNlcmllcyhlLHQscyxuLGksbyxyLGEpe0QudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXMubWFya3MucHVzaCgiY3JlYXRlX3Nlcmllc18iK2UpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGEsdCk7Y29uc3QgZD1udWxsPT09cj8iIjooMCxfLmNvbnZlcnRUaW1lRnJhbWVUb1N0cikociwhMCk7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc2VyaWVzIixbZSx0LHMsbixpLG8sZF0pfXJlbW92ZVNlcmllcyhlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zZXJpZXMiLFtlLHRdKX1tb2RpZnlTZXJpZXMoZSx0LHMsbixpLG8scixhKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhhLHQpO2NvbnN0IGQ9bnVsbD09PXI/IiI6KDAsCl8uY29udmVydFRpbWVGcmFtZVRvU3RyKShyLCEwKTtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9zZXJpZXMiLFtlLHQscyxuLGksZF0pfWdldFN0dWR5Q291bnRlcihlKXtyZXR1cm4gdGhpcy5fc3R1ZHlDb3VudGVyW2VdPz8wfWdldEZ1bmRhbWVudGFsQ291bnRlcihlKXtyZXR1cm4gdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyW2VdPz8wfWdldENoaWxkU3R1ZHlDb3VudGVyKGUpe3JldHVybiB0aGlzLl9jaGlsZFN0dWR5Q291bnRlcltlXT8/MH1yZXF1ZXN0TW9yZURhdGEoZSx0LHMsbil7aWYodm9pZCAwPT09c3x8dm9pZCAwPT09bil0aHJvdyBuZXcgRXJyb3IoInVuc3VwcG9ydGVkIHJlcXVlc3QgdG8gbG9hZCBtb3JlIGRhdGEsIGJhcnM9IitzKTtjb25zdCBpPXQ7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW2ldPW5ldyBGLkhhbmRsZXJJbmZvKG4saSksdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfbW9yZV9kYXRhIixbZSxpLHNdKX1yZXF1ZXN0TW9yZVRpY2ttYXJrcyhlLHQscyxuKXtyZXR1cm4gbiYmKHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCkpLHRoaXMuX3NlbmRSZXF1ZXN0KCJyZXF1ZXN0X21vcmVfdGlja21hcmtzIixbZSx0LHNdKX1zZXRGdXR1cmVUaWNrbWFya3NNb2RlKGUsdCl7dGhpcy5fc2VuZFJlcXVlc3QoInNldF9mdXR1cmVfdGlja21hcmtzX21vZGUiLFtlLHRdKX1yZXF1ZXN0RGF0YVByb2JsZW1zKCl7cmV0dXJuIHRoaXMuX3JlcXVlc3REYXRhUHJvYmxlbXNQcm9taXNlfHwodGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9dGhpcy5jb25uZWN0RGZkLnRoZW4oKCgpPT5uZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VFcnJiYWNrPXQsdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfZGF0YV9wcm9ibGVtcyIsW10pP3RoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUNiPWU6dCgpfSkpKSkuZmluYWxseSgoKCk9Pnt0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZT1udWxsfSkpKSx0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZX1hc3luYyByZXF1ZXN0TWV0YWRhdGEoKXtyZXR1cm4gbnVsbD09PXRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlJiYodGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2U9KDAsdi5jcmVhdGVEZWZlcnJlZFByb21pc2UpKCksdGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UucHJvbWlzZS5maW5hbGx5KCgoKT0+e3RoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGx9KSksdGhpcy5fcmVxdWVzdE1ldGFkYXRhKCkpLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlLnByb21pc2V9YWxsU3R1ZGllc01ldGFkYXRhKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBpcyBub3QgaW1wbGVtZW50ZWQiKX1zZXRMb2FkTmV3KGUpe3RoaXMuX2xvYWROZXdCYXJzPSEhZX1zZXRJc05vbkNvdW50ZWRTdHVkeUZuKGUpe3RoaXMuX2lzTm9uQ291bnRlZFN0dWR5PWV9Y2FuQ3JlYXRlU3R1ZHkoZSx0LHMpe2NvbnN0e2lkOm4sY2hpbGQ6aSxmdW5kYW1lbnRhbDpvLGZvcmVjYXN0OnIsc3R1YlRpdGxlOmF9PXQsdT0oMCxkLmVuc3VyZU5vdE51bGwpKCgwLFIuZ2V0Q29uZmlnKSgiU1RVRFlfT05fU1RVRFkiKSkuY2hpbGRfbGltaXQ7aWYoaSYmKCEoMCxSLmVuYWJsZWQpKCJTVFVEWV9PTl9TVFVEWSIpfHwodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXJbZV0/PzApPj11KSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImNoaWxkIixsaW1pdFZhbHVlOnV9O2lmKHMpcmV0dXJue3N1Y2Nlc3M6ITB9O2lmKHImJiEoMCxSLmVuYWJsZWQpKCJGVU5EQU1FTlRBTFNfRk9SRUNBU1QiKSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImZvcmVjYXN0IixzY3JpcHROYW1lOmF9O2NvbnN0IGM9KDAsZC5lbnN1cmVOb3ROdWxsKSgoMCxSLmdldENvbmZpZykoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpKS5saW1pdDtpZihvJiYoISgwLFIuZW5hYmxlZCkoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpfHx0aGlzLmdldEZ1bmRhbWVudGFsQ291bnRlcihlKT49YykpcmV0dXJue3N1Y2Nlc3M6ITEscmVhc29uOiJmdW5kYW1lbnRhbCIsbGltaXRWYWx1ZTpjfTtjb25zdCBsPSgwLGQuZW5zdXJlTm90TnVsbCkoKDAsUi5nZXRDb25maWcpKCJJTkRJQ0FUT1JTX09OX0NIQVJUIikpLmxpbWl0O3JldHVybiBvfHx0aGlzLl9pc05vbkNvdW50ZWRTdHVkeShuKXx8KDAsUi5lbmFibGVkKSgiSU5ESUNBVE9SU19PTl9DSEFSVCIpJiYhKHRoaXMuZ2V0U3R1ZHlDb3VudGVyKGUpPj1sKT97c3VjY2VzczohMH06e3N1Y2Nlc3M6ITEscmVhc29uOiJnZW5lcmFsIixsaW1pdFZhbHVlOmx9fWNyZWF0ZVN0dWR5KGUsdCxzLG4saSxvLHIsYSl7Y29uc3QgZD10aGlzLmNhbkNyZWF0ZVN0dWR5KGUsYSk7cmV0dXJuIGQuc3VjY2Vzc3x8ImNoaWxkIiE9PWQucmVhc29uPyh0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc3R1ZHkiLFtlLHQscyxuLGksb10pLGEuZnVuZGFtZW50YWw/ZWUodGhpcy5fZnVuZGFtZW50YWxDb3VudGVyLGUpOnRoaXMuX2lzTm9uQ291bnRlZFN0dWR5KGEuaWQpfHxlZSh0aGlzLl9zdHVkeUNvdW50ZXIsZSksYS5jaGlsZCYmZWUodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXIsZSksdGhpcy5fc3R1ZHlTcGVjcy5zZXQoWihlLHQpLGEpLCEwKTooKDAsay5zaG93VG9vTWFueVN0dWRpZXNOb3RpY2UpKGQubGltaXRWYWx1ZSksITEpfW1vZGlmeVN0dWR5KGUsdCxzLG4sbyxyKXtYKHI9cj8/MCx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSwwIT09ciYmKCgwLGQuZW5zdXJlRGVmaW5lZCkodGhpcy5fc3R1ZHlTcGVjcy5nZXQoWihlLHQpKSkuY2hpbGQ9cj4wKSx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhvLHQpO2NvbnN0IGE9ZSt0O2lmKHRoaXMuX21vZGlmeVN0dWR5TWFwLmhhcyhhKSl7cmV0dXJuKDAsCmQuZW5zdXJlRGVmaW5lZCkodGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KGEpKShlLHQscyxuKT8/ITB9e2NvbnN0IG89KDAsaS5kZWZhdWx0KSgoKGUsdCxzLG4pPT50aGlzLl9zZW5kUmVxdWVzdCgibW9kaWZ5X3N0dWR5IixbZSx0LHMsbl0pKSw1MDAse21heFdhaXQ6NTUwfSk7cmV0dXJuIHRoaXMuX21vZGlmeVN0dWR5TWFwLnNldChhLG8pLG8oZSx0LHMsbik/PyEwfX1ub3RpZnlTdHVkeShlLHQscyxuKXtyZXR1cm4gQS5sb2dOb3JtYWwoYFNlbmQgbm90aWZ5X3N0dWR5LCBbJHtlfSwgJHt0fSwgJHtzfSwgJHtKU09OLnN0cmluZ2lmeShuKX1dYCksdGhpcy5fc2VuZFJlcXVlc3QoIm5vdGlmeV9zdHVkeSIsW2UsdCxzLEpTT04uc3RyaW5naWZ5KG4pXSl9cmVtb3ZlU3R1ZHkoZSx0KXtjb25zdCBzPWUrdDtkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KHMpPy5mbHVzaCgpO2NvbnN0IG49dGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zdHVkeSIsW2UsdF0pO2lmKCExPT09bilyZXR1cm4hMTt0aGlzLl9tb2RpZnlTdHVkeU1hcC5kZWxldGUocyk7Y29uc3QgaT1aKGUsdCksbz0oMCxkLmVuc3VyZURlZmluZWQpKHRoaXMuX3N0dWR5U3BlY3MuZ2V0KGkpKTtyZXR1cm4gdGhpcy5fc3R1ZHlTcGVjcy5kZWxldGUoaSksby5mdW5kYW1lbnRhbD90ZSh0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXIsZSk6dGhpcy5faXNOb25Db3VudGVkU3R1ZHkoby5pZCl8fHRlKHRoaXMuX3N0dWR5Q291bnRlcixlKSxvLmNoaWxkJiZ0ZSh0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSxufWNyZWF0ZVBvaW50c2V0KGUsdCxzLG4saSxvLHIpe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfcG9pbnRzZXQiLFtlLHQscyxuLGksb10pfW1vZGlmeVBvaW50c2V0KGUsdCxzLG4saSl7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGksdCksdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9wb2ludHNldCIsW2UsdCxzLG5dKX1yZW1vdmVQb2ludHNldChlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9wb2ludHNldCIsW2UsdF0pfWdldE1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfWdldFRpbWVzY2FsZU1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfXF1b3RlQ3JlYXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2NyZWF0ZV9zZXNzaW9uIixbZV0pfXF1b3RlRGVsZXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2RlbGV0ZV9zZXNzaW9uIixbZV0pfXF1b3RlQWRkU3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfYWRkX3N5bWJvbHMiLFtlLHRdKX1xdW90ZVJlbW92ZVN5bWJvbHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3JlbW92ZV9zeW1ib2xzIixbZSx0XSl9cXVvdGVGYXN0U3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfZmFzdF9zeW1ib2xzIixbZSx0XSl9cXVvdGVTZXRGaWVsZHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3NldF9maWVsZHMiLFtlLHRdKX1xdW90ZUhpYmVybmF0ZUFsbChlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2hpYmVybmF0ZV9hbGwiLFtlXSl9ZGVwdGhDcmVhdGVTZXNzaW9uKGUsdCxzKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImRlcHRoX2NyZWF0ZV9zZXNzaW9uIixbZSx0LHNdKX1kZXB0aERlbGV0ZVNlc3Npb24oZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9kZWxldGVfc2Vzc2lvbiIsW2VdKX1kZXB0aFNldFN5bWJvbChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3N5bWJvbCIsW2UsdF0pfWRlcHRoQ2xlYXJTeW1ib2woZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9jbGVhcl9zeW1ib2wiLFtlXSl9ZGVwdGhTZXRTY2FsZShlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3NjYWxlIixbZSx0XSl9dW5wYWNrKGUpe3JldHVybiB0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnVucGFjayhlKX1zZW5kUmVxdWVzdChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdChlLHQpfXNldFZpc2libGVUaW1lUmFuZ2UoKXt0aHJvdyBuZXcgRXJyb3IoInNldFZpc2libGVUaW1lUmFuZ2UgaXMgZGVwcmVjYXRlZCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIil9X2luaXQoKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVycz17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyPXt9LHRoaXMuX21vZGlmeVN0dWR5TWFwPW5ldyBNYXB9X2NoZWNrQXV0aFRva2VuRXhwaXJhdGlvbihlKXswPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2F1dGhUb2tlbk1hbmFnZXImJiF0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmKEEubG9nSW5mbyhlKSx0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLnJlc2V0KCkpfV9zZW5kUmVxdWVzdChlLHQpe3JldHVybiBqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gc2VuZGluZyBhIG1lc3NhZ2UsIHJlcXVlc3RpbmcgbmV3IHRva2VuIiksMCE9PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Pyh0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5wdXNoKHttZXRob2Q6ZSxhcmdzOnR9KSwhMCk6dGhpcy5fc2VuZFJlcXVlc3RJbXBsKGUsdCl9X3NlbmRSZXF1ZXN0SW1wbChlLHQpewpjb25zdCBzPXRoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuZ2V0KGUpPz8wO3RoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuc2V0KGUscysxKTtjb25zdCBpPXRoaXMuX2RhdGFIYW5kbGVNb2R1bGVbZV0uYXBwbHkodGhpcy5fZGF0YUhhbmRsZU1vZHVsZSx0KSxkPXttOmUscDooMCxuLmRlZmF1bHQpKGkpfSxjPWQubS5pbmNsdWRlcygic3R1ZHkiKSYmZC5wWzVdO2MmJmZ1bmN0aW9uKGUpe2lmKCEoMCx1LmlzT2JqZWN0KShlKSlyZXR1cm4hMTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhlKSl7Y29uc3Qgcz1lW3RdO2lmKCEoKDAsdS5pc09iamVjdCkocyl8fCgwLHIuZGVmYXVsdCkocyl8fCgwLG8uZGVmYXVsdCkocyl8fCgwLGEuZGVmYXVsdCkocykpKXJldHVybiExfXJldHVybiEwfShjKSYmInRleHQiaW4gYyYmKGMudGV4dD1jLnRleHQuc2xpY2UoMCwxMCkpO2NvbnN0IGw9SlNPTi5zdHJpbmdpZnkoZCk7aWYoaS5sZW5ndGg+MCl7Y29uc3QgZT1pWzBdO2Uuc3RhcnRzV2l0aCgicXNfIik/Vi5sb2dOb3JtYWwoInNlbmQ6ICIrbCk6ZS5zdGFydHNXaXRoKCJjc18iKSYmQi5sb2dOb3JtYWwoInNlbmQ6ICIrbCw0MDk2KX1lbHNlIEEubG9nTm9ybWFsKCJzZW5kOiAiK2wpO2NvbnN0IGg9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRW5jb2RlTWVzc2FnZShlLGkpO3JldHVybiB0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNlbmQoaCl9X29uQ29ubmVjdCgpe2lmKHRoaXMuY29ubmVjdGVkKCkpcmV0dXJuO2lmKHRoaXMuX3RyYWZmaWNTdGF0cy5zaW5jZUNvbm5lY3Q9MCx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zfHx7fSx0aGlzLl9hdXRoVG9rZW5EZmQ9dGhpcy5fZ2V0QXV0aFRva2VuRGZkKHRoaXMuX2Nvbm5lY3RPbmx5T3B0aW9ucy50b2tlbkdyYWJTZXNzaW9uKSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9e30sdGhpcy5zZXNzaW9uaWQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRTZXNzaW9uSWQoKSwhdGhpcy5zZXNzaW9uaWR8fHRoaXMuX2lzQ29ubmVjdGVkKXJldHVybjt0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZT1bXSx0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudD0wLHRoaXMuX3N0dWR5Q291bnRlcj17fSx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcj17fSx0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcy5jbGVhcigpLHRoaXMuX2lzQ29ubmVjdGVkPSEwLHRoaXMuX2JhbkluZm8uc2V0VmFsdWUobnVsbCksdGhpcy5fY29ubmVjdGlvbnNMaW1pdFJlYWNoZWQuc2V0VmFsdWUoITEpO2NvbnN0IGU9SlNPTi5wYXJzZSh0aGlzLnNlc3Npb25pZCk7dGhpcy5fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCksdGhpcy5fbWV0YWRhdGFTZXJ2ZXJIYXNoPWUuc3R1ZGllc19tZXRhZGF0YV9oYXNofHxudWxsO2NvbnN0IHQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uRXN0YWJsaXNoZWQoKTt0cnl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1NYXRoLnJvdW5kKGUudGltZXN0YW1wTXMtdCl9Y2F0Y2goZSl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1EYXRlLm5vdygpLXBlcmZvcm1hbmNlLm5vdygpfWlmKEEubG9nSW5mbygiVGltZSBzaGlmdCB3aXRoIHNlcnZlcjogIit0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLURhdGUubm93KCkpKSx0aGlzLl9hdXRoVG9rZW5EZmQpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Kz0xLEEubG9nSW5mbygiV2FpdCBmb3IgYXV0aCB0b2tlbiBiZWZvcmUgc2VuZCBtZXNzYWdlcyIpO2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuRGZkO2UudGhlbigodD0+e2lmKG51bGwhPT10aGlzLl9hdXRoVG9rZW5EZmQmJnRoaXMuX2F1dGhUb2tlbkRmZD09PWUpe2lmKEEubG9nTm9ybWFsKCJBdXRoIHRva2VuIHJlcXVlc3QgaXMgZmluaXNoZWQsIHRva2VuOiAiK0Jvb2xlYW4odCkpLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHQpe2NvbnN0IGU9W3ttZXRob2Q6InNldF9hdXRoX3Rva2VuIixhcmdzOlt0XX1dO2lmKFUpe2NvbnN0IHQ9d2luZG93LmluaXREYXRhJiZ3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm87dCYmZS5wdXNoKHttZXRob2Q6InNldF9sb2NhbGUiLGFyZ3M6W3QuaXNvLHQuZmxhZy50b1VwcGVyQ2FzZSgpXX0pfXRoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLnVuc2hpZnQoLi4uZSl9dGhpcy5fb25TZW5kaW5nUXVldWVSZXF1ZXN0RmluaXNoZWQoKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMCx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkNvbm5lY3RlZCxwYXJhbXM6W119KX1lbHNlIEEubG9nTm9ybWFsKCJDb21lcyBhdXRoIHRva2VuIGFmdGVyIHJlcXVlc3RpbmcgbmV3IHRva2VuIG9yIGFmdGVyIHNvY2tldCBkaXNjb25uZWN0ZWQiKX0pKS5jYXRjaCgoZT0+e0EubG9nTm9ybWFsKCgwLFMuZXJyb3JUb1N0cmluZykoZSkpfSkpfWVsc2UgQS5sb2dXYXJuKCJEZWZlcnJlZCBhdXRoIHRva2VuIG9iamVjdCBpcyBub3QgdmFsaWQiKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMDsiIiE9PXRoaXMuX2Jyb2tlcklkJiZ0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpO2NvbnN0IHM9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uU3RhcnQoKTtELnRlbGVtZXRyeS5zZXRTZXNzaW9uSW5mbyh0aGlzLnNlc3Npb25pZCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGVkIiksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIix7dmFsdWU6dC1zfSksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfY291bnRfZnJhbWUiLHt2YWx1ZTp0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldFJlY29ubmVjdENvdW50KCl9KSwKRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWRpcmVjdF9jb3VudF9mcmFtZSIse3ZhbHVlOnRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uZ2V0UmVkaXJlY3RDb3VudCgpfSksenx8KHo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJiZWZvcmVfd2Vic29ja2V0X2Nvbm5lY3Rpb25fdGltZV9mcmFtZSIse3ZhbHVlOnN9KSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5yZXNldENvdW50ZXJzKCksY2xlYXJUaW1lb3V0KHRoaXMuX3RlbGVtZXRyeURpc2Nvbm5lY3RUaW1lb3V0KX1fZm9ybWF0VGltZShlKXtyZXR1cm5gJHsoZS8xZTMpLnRvRml4ZWQoMil9IHNlY29uZHMuYH1fZGlzcGF0Y2hOb3RpZmljYXRpb24oZSx0KXtpZigicmVxdWVzdF9kYXRhX3Byb2JsZW1zIj09PWUubWV0aG9kJiZ0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYilyZXR1cm4gdm9pZCB0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYihlLnBhcmFtcyk7aWYoZS5tZXRob2Q9PT1QLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuU3R1ZGllc01ldGFkYXRhJiZudWxsIT09dGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UpcmV0dXJuIHZvaWQgdGhpcy5fcHJvY2Vzc2VkTWV0YWRhdGEoZSk7Y29uc3Qgcz1lLnBhcmFtcy5zaGlmdCgpO2lmKCF0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tzXSlyZXR1cm47aWYoInN5bWJvbF9yZXNvbHZlZCI9PT1lLm1ldGhvZCl7Y29uc3QgdD1lLnBhcmFtc1sxXS5mdWxsX25hbWU7RC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJzeW1ib2xfcmVzb2x2ZWQiLHtjb3VudDoxLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pO2NvbnN0IG49RC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllc1sicmVzb2x2ZV9zeW1ib2xfIitzXTsibnVtYmVyIj09dHlwZW9mIG4mJkQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgic3ltYm9sX3Jlc29sdmVfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1uLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pfWlmKFsic2VyaWVzX2Vycm9yIiwic2VyaWVzX2NvbXBsZXRlZCJdLmluY2x1ZGVzKGUubWV0aG9kKSYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5sZW5ndGg+MCl7Y29uc3QgZT0iY3JlYXRlX3Nlcmllc18iK3MsdD1ELnRlbGVtZXRyeS50aW1lQ291bnRlcnMuc2VyaWVzLm1hcmtzLmluZGV4T2YoZSk7dD49MCYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5zcGxpY2UodCwxKX1HfHwic2VyaWVzX2Vycm9yIiE9PWUubWV0aG9kfHwoRz0hMCk7Y29uc3Qgbj10aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldENvbm5lY3Rpb25Fc3RhYmxpc2hlZCgpO2lmKG51bGwhPT1uJiYic2VyaWVzX2NvbXBsZXRlZCI9PT1lLm1ldGhvZCYmKEd8fChHPSEwLEQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1ufSksRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcz1bXSksSnx8KEo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJwYWdlX2Z1bGxfbG9hZF90aW1lX2ZyYW1lIix7dmFsdWU6d2luZG93LnBlcmZvcm1hbmNlLm5vdygpfSkpKSxzLnN0YXJ0c1dpdGgoImNzXyIpKXtsZXQgcz0icmVjdjogIit0OyJkYXRhX3VwZGF0ZSI9PT1lLm1ldGhvZD8ocz0oMCxsLmlzSGlnaFJhdGVFbmFibGVkKSgpP3M6cy5zbGljZSgwLDUwMCksTC5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKSk6InN0dWR5X2xvYWRpbmciPT09ZS5tZXRob2Q/Ty5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKToidGlja21hcmtfdXBkYXRlIj09PWUubWV0aG9kP1EubG9nTm9ybWFsKHRoaXMuX2FwcGVuZER1cmF0aW9uKHMsZS50aW1lKSk6Qi5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKX1pZihzLnN0YXJ0c1dpdGgoInFzXyIpKXsoInF1b3RlX3N5bWJvbF9kYXRhIj09PWUubWV0aG9kPyQubG9nTm9ybWFsOlYubG9nTm9ybWFsKSgicmVjdjogIit0KX1zd2l0Y2goZS5tZXRob2Qpe2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZTp7Y29uc3QgdD10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZU9iamVjdHMoZSksbj10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZUNoYW5nZXNldChlKSxpPXRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShuKTt0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDpQLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuVGltZVNjYWxlVXBkYXRlLHBhcmFtczppfSksdGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRGF0YVVwZGF0ZU9iamVjdHMocyx0LCgoZSx0LHMpPT57dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl9KSk7YnJlYWt9Y2FzZSJ0aWNrbWFya191cGRhdGUiOmNvbnN0IHQ9ey4uLnRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShlLnBhcmFtc1swXSksY2hhbmdlczpbXX07dGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZSxwYXJhbXM6dH0pO2JyZWFrO2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLkRhdGFVcGRhdGU6e2NvbnN0IHQ9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5nZXREYXRhVXBkYXRlT2JqZWN0cyhlKTt0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhzLHQsKChlLHQscyk9Pnt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKGUsdCxzKX0pKTticmVha31jYXNlImluZGV4X3VwZGF0ZSI6Zm9yKGNvbnN0IHQgaW4gZS5wYXJhbXNbMF0paWYoZS5wYXJhbXNbMF0uaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IG49e21ldGhvZDoiaW5kZXhfdXBkYXRlIiwKcGFyYW1zOmUucGFyYW1zWzBdW3RdfTt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCxuKX1icmVhaztjYXNlIFAuV2ViY2hhcnRSZXNwb25zZU1ldGhvZC5Dcml0aWNhbEVycm9yOkEubG9nSW5mbyhuZXcgRGF0ZSsiIGNyaXRpY2FsX2Vycm9yIHNlc3Npb246Iit0aGlzLnNlc3Npb25pZCsiIHJlYXNvbjoiK2UucGFyYW1zWzBdKSxELnRlbGVtZXRyeS5zZW5kQ2hhcnRSZXBvcnQoImNyaXRpY2FsX2Vycm9yIiksdGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydFJlc3BvbnNlTWV0aG9kLkNyaXRpY2FsRXJyb3IscGFyYW1zOmUucGFyYW1zfSk7YnJlYWs7Y2FzZSJ0aW1lc2NhbGVfY29tcGxldGVkIjpjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjpjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpjYXNlInF1b3RlX2NvbXBsZXRlZCI6Y2FzZSJkZXB0aF9zeW1ib2xfZXJyb3IiOmNhc2UiZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiOmNhc2UiZGQiOmNhc2UiZHB1IjpjYXNlImRlcHRoX2Jhcl9sYXN0X3ZhbHVlIjp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDplLm1ldGhvZCxwYXJhbXM6ZS5wYXJhbXN9KTticmVhaztjYXNlImNsZWFyX2RhdGEiOmZvcihjb25zdCB0IGluIGUucGFyYW1zWzBdKWUucGFyYW1zWzBdLmhhc093blByb3BlcnR5KHQpJiZ0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCx7bWV0aG9kOlAuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5DbGVhckRhdGEscGFyYW1zOmUucGFyYW1zWzBdW3RdfSk7YnJlYWs7Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheVBvaW50OmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlSZXNvbHV0aW9uczpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGF0YUVuZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5SW5zdGFuY2VJZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGVwdGg6Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheUVycm9yOmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlPazp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2UoZSk7YnJlYWs7Y2FzZSJzZXJpZXNfdGltZWZyYW1lIjpjb25zdCBuPWUucGFyYW1zWzRdO2UucGFyYW1zWzRdPW51bGw9PW4/bnVsbDooMCxfLmNvbnZlcnRTdHJUb1RpbWVGcmFtZSkobiksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2Nhc2Uic3ltYm9sX3Jlc29sdmVkIjohZnVuY3Rpb24oZSl7aWYodm9pZCAwPT09ZS5jb3JyZWN0aW9ucyl7Y29uc3QgdD0oZS5zdWJzZXNzaW9ucz8/W10pLmZpbmQoKHQ9PnQuaWQ9PT1lLnN1YnNlc3Npb25faWQpKTt2b2lkIDAhPT10JiYoZS5jb3JyZWN0aW9ucz10WyJzZXNzaW9uLWNvcnJlY3Rpb24iXSl9fShlLnBhcmFtc1sxXSksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2RlZmF1bHQ6dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpfX1fbm90aWZ5U2Vzc2lvbnMoZSl7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fc2Vzc2lvbnMpaWYodGhpcy5fc2Vzc2lvbnMuaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IHM9dGhpcy5fc2Vzc2lvbnNbdF07ImZ1bmN0aW9uIj09dHlwZW9mIHMub25NZXNzYWdlJiZzLm9uTWVzc2FnZShlKX19X29uTWVzc2FnZShlKXtqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gcmVjZWl2aW5nIGEgbWVzc2FnZSwgcmVxdWVzdGluZyBuZXcgdG9rZW4iKSx0aGlzLl9jYWxjVHJhZmZpY1N0YXRzKGUpO2NvbnN0IHQ9dGhpcy51bnBhY2soZSk7dGhpcy5fcmVjZWl2ZWRNZXRob2RzQ291bnRlcnMuc2V0KHQubWV0aG9kLCh0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVycy5nZXQodC5tZXRob2QpPz8wKSsxKSwidF9tcyJpbiB0JiYoMCxvLmRlZmF1bHQpKHQudF9tcykmJndpbmRvdy5DaGFydEFwaUluc3RhbmNlLmNvbXBlbnNhdGVDb25uZWN0aW9uTGFnKHQudF9tcyksInByb3RvY29sX3N3aXRjaGVkIiE9PXQubWV0aG9kPyJwcm90b2NvbF9lcnJvciIhPT10Lm1ldGhvZD90aGlzLl9kaXNwYXRjaE5vdGlmaWNhdGlvbih0LGUpOnRoaXMuX3Byb2Nlc3NQcm90b2NvbEVycm9yKHQpOkEubG9nRXJyb3IoIlVuZXhwZWN0ZWQgcHJvdG9jb2wgY2hhbmdpbmcgcmVxdWVzdCwgdHJ5IHNraXBwaW5nLiBSZXF1ZXN0ZWQgcHJvdG9jb2w6Iit0LnBhcmFtc1swXSl9YXN5bmMgX3Byb2Nlc3NlZE1ldGFkYXRhKGUpe2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz1hd2FpdCB0aGlzLl9pbml0Q2FjaGVQcm9taXNlLGk9d2luZG93LnByby5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTt0cnl7YXdhaXQgcy5zZXRWYWx1ZShpZSwoMCxuLmRlZmF1bHQpKGUpKTtjb25zdCByPUFycmF5LmZyb20obmV3IFNldChlLnBhcmFtc1sxXS5tZXRhaW5mby5tYXAoKGU9PntyZXR1cm5gJHsodD0oMCxwLnBhcnNlSWRTdHJpbmcpKGUuaWQpKS5wYWNrYWdlSWR9LSR7dC52ZXJzaW9ufWA7dmFyIHR9KSkpKTtpZihBLmxvZ05vcm1hbChgVXBkYXRlZCBzdHVkaWVzX21ldGFkYXRhIGNhY2hlLCB1bmlxdWUgcGFja2FnZSBpZHM6ICR7ci5qb2luKCIsICIpfWApLCFvKXRyeXthd2FpdCBzLnNldFZhbHVlKG5lLCgwLG4uZGVmYXVsdCkoaSkpLEEubG9nTm9ybWFsKCJVcGRhdGVkIHByb19oYXNoIGNhY2hlIil9Y2F0Y2goZSl7dC5yZWplY3QoKSxBLmxvZ0Vycm9yKCJDYW5ub3QgdXBkYXRlIHByb19oYXNoIGNhY2hlLCByZWFzb246ICIrZSl9fWNhdGNoKGUpe3QucmVqZWN0KCksCkEubG9nRXJyb3IoIkNhbm5vdCB1cGRhdGUgc3R1ZGllc19tZXRhZGF0YSBjYWNoZSwgcmVhc29uOiAiK2UpfXQucmVzb2x2ZSgoMCxuLmRlZmF1bHQpKGUpKX1faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl7aWYodm9pZCAwPT09dClyZXR1cm47Y29uc3Qgbj10aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XTt2b2lkIDAhPT1uJiYobi5zaW5nbGVTaG90JiZkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sbi5oYW5kbGVyPy4ocykpfV9jb252ZXJ0VGltZXNjYWxlUmVzcG9uc2UoZSl7cmV0dXJuIHRoaXMuX2RhdGFIYW5kbGVNb2R1bGUuY29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpfV9hcHBlbmREdXJhdGlvbihlLHQpe3JldHVybiB0P2Ake2V9LCBkdXJhdGlvbjogJHt0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLTFlMyp0KX1gOmV9YXN5bmMgX3JlcXVlc3RNZXRhZGF0YSgpe2NvbnN0IGU9dGhpcy5fbWFrZU5leHRSZXF1ZXN0SWQoKTt4LmxvZ05vcm1hbChgUmVxdWVzdGluZyBtZXRhaW5mbyAjJHtlfWApO2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz13aW5kb3cucHJvLGk9cy5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTtBLmxvZ05vcm1hbCgiUmVxdWVzdGluZyBwcm8gaGFzaCIpO3RyeXtjb25zdCByPWF3YWl0IHRoaXMuX2luaXRDYWNoZVByb21pc2U7YXdhaXQgci5taWdyYXRlVmFsdWUoInByb19oYXNoIixuZSksYXdhaXQgci5taWdyYXRlVmFsdWUoc2UsaWUpO2NvbnN0IGE9YXdhaXQgci5nZXRWYWx1ZShuZSk7aWYobnVsbCE9PWEmJmE9PT1pfHxvKXtBLmxvZ05vcm1hbCgiUHJvIGhhc2ggaGFzIG5vdCBjaGFuZ2VkLCByZXF1ZXN0aW5nIGZyb20gbG9jYWwiKTtjb25zdCBvPWF3YWl0IHIuZ2V0VmFsdWUoaWUpLGE9bnVsbCE9PW8mJm8ucGFyYW1zWzFdLmhhc2h8fG51bGw7aWYobnVsbD09PWF8fG51bGw9PT10aGlzLl9tZXRhZGF0YVNlcnZlckhhc2h8fHRoaXMuX21ldGFkYXRhU2VydmVySGFzaCE9PWEpQS5sb2dOb3JtYWwoYE1ldGFkYXRhIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBzZXJ2ZXI6ICcke3RoaXMuX21ldGFkYXRhU2VydmVySGFzaH0nKWApLHRoaXMuX3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSk7ZWxzZXtpZighcy5oYXNQYWNrYWdlKCJ0di12b2x1bWVieXByaWNlIil8fHZvaWQgMCE9PW8ucGFyYW1zWzFdLm1ldGFpbmZvLmZpbmQoKGU9PmUuaWQuaW5jbHVkZXMoIkB0di12b2x1bWVieXByaWNlIikpKSlyZXR1cm4gQS5sb2dOb3JtYWwoIlVzaW5nIHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBicm93c2VyIGNhY2hlIiksdm9pZCB0LnJlc29sdmUoKDAsbi5kZWZhdWx0KShvKSk7QS5sb2dOb3JtYWwoYERlLXN5bmMgZGV0ZWN0ZWQhIHByby5oYXNoIGNvbnRhaW5zIFZiUFIgc3R1ZGllcywgYnV0IGRhdGEgZnJvbSBjYWNoZSBkb2Vzbid0IGFuZCBwcm8uaGFzaCBpc24ndCBjaGFuZ2VkLCBwcm8uaGFzaD0ke2l9YCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX19ZWxzZSBBLmxvZ05vcm1hbChgUHJvIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBjdXJyZW50OiAnJHtpfScpYCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX1jYXRjaCh0KXtBLmxvZ0Vycm9yKCJDYW5ub3QgZ2V0IHN0dWRpZXNfbWV0YWRhdGEsIHJlYXNvbjogIit0KSx0aGlzLl9yZXF1ZXN0TWV0YWRhdGFGcm9tU2VydmVyKGUpfWZpbmFsbHl7eC5sb2dOb3JtYWwoYFJlcXVlc3Rpbmcgc3R1ZGllcyBtZXRhZGF0YSAjJHtlfSBmaW5pc2hlZGApfX1fbWFrZU5leHRSZXF1ZXN0SWQoKXtyZXR1cm4ibWV0YWRhdGFfIit0aGlzLl9tZXRhZGF0YVJlcXVlc3ROZXh0TnVtYmVyKyt9X3Byb2Nlc3NQcm90b2NvbEVycm9yKGUpe2NvbnN0IHQ9ZS5wYXJhbXNbMF07QS5sb2dFcnJvcihgUHJvdG9jb2wgZXJyb3IuIFJlYXNvbj0ke3R9LmApLCJiYW5uZWQiIT09dCYmImJhbm5lZCBieSB1c2VyX2lkIiE9PXQmJiJiYW5uZWQgYnkgaXAiIT09dHx8KHRoaXMuX2JhbkluZm8uc2V0VmFsdWUoe3JlYXNvbjp0fSksdGhpcy5kaXNjb25uZWN0KCkpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnNldFZhbHVlKCJ1c2VyIGNvbm5lY3Rpb25zIGxpbWl0IHJlYWNoZWQiPT09dCl9X3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSl7cmV0dXJuIEEubG9nTm9ybWFsKCJSZXF1ZXN0IHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBzZXJ2ZXIiKSx0aGlzLl9zZW5kUmVxdWVzdCgicmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhIixbZV0pfV9iaW5kU29ja2V0RXZlbnRzKCl7dGhpcy5jb25uZWN0RGZkPW5ldyBQcm9taXNlKCgoZSx0KT0+e3RoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24ub24oImNvbm5lY3QiLCgoKT0+e3RoaXMuX29uQ29ubmVjdCgpLGUoKX0pKSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLm9uKCJtZXNzYWdlIix0aGlzLl9vbk1lc3NhZ2UuYmluZCh0aGlzKSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vbigiZGlzY29ubmVjdCIsKCgpPT57dGhpcy5fYXV0aFRva2VuRGZkJiYodGhpcy5fYXV0aFRva2VuRGZkPW51bGwpLHRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2smJnRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2soKSx0aGlzLl9pc0Nvbm5lY3RlZD0hMSx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkRpc2Nvbm5lY3RlZCxwYXJhbXM6W119KSx0aGlzLl9iYW5JbmZvLnZhbHVlKCl8fCh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZT1udWxsKSx0aGlzLl9kaXNjb25uZWN0Q291bnQ9KHRoaXMuX2Rpc2Nvbm5lY3RDb3VudHx8MCkrMSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGVkKCkmJih0aGlzLl90ZWxlbWV0cnlEaXNjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KCgoKT0+e0QudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZGlzY29ubmVjdCIpfSksNWUzKSwKdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc01heFJlY29ubmVjdHMoKSYmKHRoaXMuX25vdGlmeVNlc3Npb25zKHttZXRob2Q6aC5DaGFydEFwaU1lc3NhZ2VNZXRob2QuUmVjb25uZWN0QmFpbG91dCxwYXJhbXM6W119KSx0KCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfYmFpbG91dCIpKSl9KSl9KSl9X2NhbGNUcmFmZmljU3RhdHMoZSl7Y29uc3QgdD1lLmxlbmd0aDt0aGlzLl90cmFmZmljU3RhdHMudG90YWwrPXQsdGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCs9dCx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKz10fV9zZW5kQnJva2VySWRUb1Nlc3Npb24oZSl7cmV0dXJuIVd8fHRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfYnJva2VyIixbZV0pfV9lbmFibGVMb3dRdWFsaXR5TW9kZSgpe0EubG9nTm9ybWFsKCJsb3cgcXVhbGl0eSBtb2RlIGlzIGVuYWJsZWQiKSx0aGlzLl9sb3dRdWFsaXR5RW5hYmxlZD0hMCx0aGlzLl9zZW5kTG93UXVhbGl0eU1vZGVJZkVuYWJsZWQoKX1fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCl7dGhpcy5fbG93UXVhbGl0eUVuYWJsZWQmJnRoaXMuY29ubmVjdGVkKCkmJnRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfZGF0YV9xdWFsaXR5IixbXSl9X2dldEF1dGhUb2tlbkRmZChlKXtpZih0aGlzLl9sb2FkTmV3QmFycylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJsb2FkX25ld190b2tlbiIpO2lmKCgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpfHwtMSE9PXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIil8fC0xIT09d2luZG93LmxvY2F0aW9uLmhhc2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIikpe2NvbnN0IGU9d2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiO3JldHVybiBQcm9taXNlLnJlc29sdmUoYltlXXx8IndpZGdldF91c2VyX3Rva2VuIil9aWYoIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKXJldHVybiBQcm9taXNlLnJlc29sdmUoInVuYXV0aG9yaXplZF91c2VyX3Rva2VuIik7aWYoIXRoaXMuX2F1dGhUb2tlbk1hbmFnZXIpe2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuTWFuYWdlcj1uZXcgZi5BdXRoVG9rZW47ZS5pbnZhbGlkYXRlZC5zdWJzY3JpYmUobnVsbCwoYXN5bmMoKT0+e3RyeXt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudCs9MTtjb25zdCB0PWF3YWl0IGUuZ2V0KCk7aWYoIXQpcmV0dXJuIHZvaWQgQS5sb2dJbmZvKCJBdXRoVG9rZW4gaW52YWxpZGF0ZWQsIGJ1dCBuZXcgdG9rZW4gaXMgZW1wdHkiKTtpZighdGhpcy5jb25uZWN0ZWQoKSlyZXR1cm4gdm9pZCBBLmxvZ0luZm8oYEF1dGhUb2tlbiBpbnZhbGlkYXRlZCwgYnV0IHNvY2tldCBpcyBub3QgY29ubmVjdGVkLiBUb2tlbjogJHt0fWApO0EubG9nSW5mbygiQXV0aFRva2VuIGludmFsaWRhdGVkLCByZWZyZXNoaW5nIHRva2VuIGFuZCByZXNlbmRpbmcgdG8gc2Vzc2lvbiIpLHRoaXMuX3NlbmRSZXF1ZXN0SW1wbCgic2V0X2F1dGhfdG9rZW4iLFt0XSl9Y2F0Y2goZSl7dGhyb3cgQS5sb2dFcnJvcihgRmFpbGVkIHRvIHJlZnJlc2ggYXV0aCB0b2tlbiBhZnRlciBpbnZhbGlkYXRpb246ICR7KDAsUy5lcnJvclRvU3RyaW5nKShlKX1gKSxlfWZpbmFsbHl7dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQtPTEsMD09PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50JiZlLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmdGhpcy5fZmx1c2hQZW5kaW5nTWVzc2FnZXMoKX19KSl9cmV0dXJuIHRoaXMuX2F1dGhUb2tlbk1hbmFnZXIuZ2V0KGUpfV9vblNlbmRpbmdRdWV1ZVJlcXVlc3RGaW5pc2hlZCgpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50LT0xLEEubG9nSW5mbyhgU2VuZGluZyBxdWV1ZSByZXF1ZXN0IGZpbmlzaGVkLiBSZW1haW5pbmcgcGVuZGluZyByZXF1ZXN0cz0ke3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50fWApLHRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50PDAmJkEubG9nRXJyb3IoYEludmFsaWQgcXVldWUgc3RhdGU9JHt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudH1gKSwwPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl9X2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl7QS5sb2dJbmZvKGBGbHVzaCBwZW5kaW5nIG1lc3NhZ2VzLiBDb3VudD0ke3RoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLmxlbmd0aH1gKSx0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5mb3JFYWNoKChlPT50aGlzLl9zZW5kUmVxdWVzdChlLm1ldGhvZCxlLmFyZ3MpKSksdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W119fSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYod2luZG93LkNoYXJ0QXBpSW5zdGFuY2U9bmV3IGRlKHdpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uKSl9LDg4OTUxNShlLHQscyl7cy5kKHQse3Nob3dUb29NYW55U3R1ZGllc05vdGljZTooKT0+b30pO3ZhciBuPXMoMTg1MjcxKSxpPXMoMjM0OTY0KTtmdW5jdGlvbiBvKGUpeygwLGkuc2hvd1dhcm5pbmcpKHt0aXRsZTpuLnQobnVsbCx2b2lkIDAscyg5MzcwMTcpKSx0ZXh0Om4udChudWxsLHtyZXBsYWNlOntudW1iZXI6YCR7ZX1gfX0scyg5OTIzNjIpKX0pfX19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/46907.c5af8aa7b5082b1875a5.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.474Z","timestamp":1785154590474,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/46907.c5af8aa7b5082b1875a5.css HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-6bc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5050af438cc64aefb0e58db10856e0a3\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":1724,"size_decoded":1396,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1724), with no line terminators","md5":"8212d60d44748bb18233778e23b8f7b2","sha1":"35debdd9067ec06aa3648e5d7a9cddde39873397","sha256":"cc31664050fc2b670129f7e7d1a11bda8d20efa47a713598bbb96d4da6e297ba","sha512":"3f0235fe9fb761707020a01990077cf65fd4d774216e7d49fe218ea8e4ffa73a0d3d662536e662eb978f3d790446e7ee75ab139468bc6a0371653a48512aa994","ssdeep":"","tlshash":"d931cc75936ad2387a770b376241558a3199f64773730239e680bda881e16ba3b333c4","first_seen":"2026-07-16T11:36:17.893966Z","last_seen":"2026-07-27T14:18:36.405932Z","times_seen":2008,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtQUVROTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLUFFUTk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LndyYXBwZXItaGN0MnlKdkt7Y29sb3I6dmFyKC0tXzAtQUVROSl9LmFuaW1hdGVkLWhjdDJ5SnZLe2FuaW1hdGlvbjoxcyBlYXNlLWluLW91dCAwcyBpbmZpbml0ZSBhbHRlcm5hdGUgbm9uZSBydW5uaW5nO2FuaW1hdGlvbi1uYW1lOnB1bHNhdGlvbi1oY3QyeUp2S31Aa2V5ZnJhbWVzIHB1bHNhdGlvbi1oY3QyeUp2S3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtX19ycTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1fX3JxOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtX19ycTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8xLV9fcnE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LmxvZ28tVkNOS3ViV3F7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubG9nby1WQ05LdWJXcTpub3QoaW1nKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLV9fcnEpfS5oaWRkZW4tVkNOS3ViV3F7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlfS54eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3F7Zm9udC1zaXplOjEwcHg7aGVpZ2h0OjEycHg7bGluZS1oZWlnaHQ6MTBweDttaW4td2lkdGg6MTJweDt3aWR0aDoxMnB4fS54eHhzbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTFweDtoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoxOHB4O3dpZHRoOjE4cHh9Lnh4c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjIwcHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt3aWR0aDoyMHB4fS54c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjRweDt3aWR0aDoyNHB4fS5zbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTRweDtoZWlnaHQ6MjhweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoyOHB4O3dpZHRoOjI4cHh9Lm1lZGl1bS1WQ05LdWJXcXtmb250LXNpemU6MTZweDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDozNnB4O3dpZHRoOjM2cHh9LmxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToyNHB4O2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjMycHg7bWluLXdpZHRoOjQ4cHg7d2lkdGg6NDhweH0ueGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZTo0MHB4O2hlaWdodDo1NnB4O2xpbmUtaGVpZ2h0OjQwcHg7bWluLXdpZHRoOjU2cHg7d2lkdGg6NTZweH0ueHhsYXJnZS1WQ05LdWJXcXtmb250LXNpemU6ODBweDtoZWlnaHQ6MTEycHg7bGluZS1oZWlnaHQ6ODBweDttaW4td2lkdGg6MTEycHg7d2lkdGg6MTEycHh9Lnh4eGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToxNjBweDtoZWlnaHQ6MTY4cHg7bGluZS1oZWlnaHQ6MTYwcHg7bWluLXdpZHRoOjE2OHB4O3dpZHRoOjE2OHB4fS5za2VsZXRvbi1WQ05LdWJXcXtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0ubGV0dGVyLVZDTkt1Yldxe2NvbG9yOnZhcigtLV8wLV9fcnEpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMH0="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_timeline_widget.e5191b4c73374dc05339.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/timeline/#%7B%22colorTheme%22%3A%22light%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22regular%22%2C%22width%22%3A400%2C%22height%22%3A830%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22timeline%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.495Z","timestamp":1785154590495,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/runtime-embed_timeline_widget.e5191b4c73374dc05339.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/timeline/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1ebe\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:29:51\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: aff4d480e8595569ccc3bbd505043e64\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":7870,"size_decoded":4644,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3070)","md5":"535549135f01435f70d28ed1fb164308","sha1":"8088bad59988a235e1c06408cac8975133ec14fb","sha256":"3aa764c015f8145394216beb6c32086072356d506874f177f274baac2c704dbf","sha512":"595799f8052203f67e32e9ab0821afe1258b7663d9a81ce9f476193e3d2e3465417ae0e2f55834a465f22febf1f62a80c655e83773727e1666619da4b65af985","ssdeep":"192:44ZIR0wTbdhqy1pxKf8lJkiomn1xnRAG4pUk0Afm92:PeR0wOq3Kf8/kdm1xnRAG4pUk0Afm4","tlshash":"def1c49c3018e53121fb0852003ae4a2f72c63eb5f0bd4a09267fcf96868ed47633e95","first_seen":"2026-07-24T21:10:00.145585Z","last_seen":"2026-07-27T14:14:25.42539Z","times_seen":142,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLHQscixuPXt9LGE9e307ZnVuY3Rpb24gbChlKXt2YXIgdD1hW2VdO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQuZXhwb3J0czt2YXIgcj1hW2VdPXtleHBvcnRzOnt9fTtyZXR1cm4gbltlXShyLHIuZXhwb3J0cyxsKSxyLmV4cG9ydHN9bC5tPW4sbC5fcGx1cmFsPXthcjooZSx0PTYscj0oMD09ZT8wOjE9PWU/MToyPT1lPzI6ZSUxMDA+PTMmJmUlMTAwPD0xMD8zOmUlMTAwPj0xMSYmZSUxMDA8PTk5PzQ6NSkpPT5udWxsPT1lPzA6K3IsY3M6KGUsdD0zLHI9KDE9PWU/MDplPj0yJiZlPD00PzE6MikpPT5udWxsPT1lPzA6K3IscnU6KGUsdD0zLHI9KGUlMTA9PTEmJmUlMTAwIT0xMT8wOmUlMTA+PTImJmUlMTA8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjIpKT0+bnVsbD09ZT8wOityLHJvOihlLHQ9MyxyPSgxPT1lPzA6ZSUxMDA+MTl8fGUlMTAwPT0wJiYwIT1lPzI6MSkpPT5udWxsPT1lPzA6K3IscGw6KGUsdD0zLHI9KDE9PWU/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorcixwdDooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGRlOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZW46KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcixlczooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLHN2OihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaXQ6KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcix0cjooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGVsOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZnI6KGUsdD0yLHI9ZT4xKT0+bnVsbD09ZT8wOityLGZhOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsamE6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixrbzooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLHRoOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3Isdmk6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcix6aDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLGhlX0lMOihlLHQ9NCxyPSgxPT1lPzA6Mj09ZT8xOmU+MTAmJmUlMTA9PTA/MjozKSk9Pm51bGw9PWU/MDorcixjYV9FUzooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLG5sX05MOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaHVfSFU6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixpZF9JRDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLG1zX01ZOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsemhfVFc6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcn0sZT1bXSxsLk89KHQscixuLGEpPT57aWYoIXIpe3ZhciBvPTEvMDtmb3IoZD0wO2Q8ZS5sZW5ndGg7ZCsrKXtmb3IodmFyW3IsbixhXT1lW2RdLGk9ITAsdT0wO3U8ci5sZW5ndGg7dSsrKSghMSZhfHxvPj1hKSYmT2JqZWN0LmtleXMobC5PKS5ldmVyeSgoZT0+bC5PW2VdKHJbdV0pKSk/ci5zcGxpY2UodS0tLDEpOihpPSExLGE8byYmKG89YSkpO2lmKGkpe2Uuc3BsaWNlKGQtLSwxKTt2YXIgYz1uKCk7dm9pZCAwIT09YyYmKHQ9Yyl9fXJldHVybiB0fWE9YXx8MDtmb3IodmFyIGQ9ZS5sZW5ndGg7ZD4wJiZlW2QtMV1bMl0+YTtkLS0pZVtkXT1lW2QtMV07ZVtkXT1bcixuLGFdfSxsLm49ZT0+e3ZhciB0PWUmJmUuX19lc01vZHVsZT8oKT0+ZS5kZWZhdWx0OigpPT5lO3JldHVybiBsLmQodCx7YTp0fSksdH0sbC5kPShlLHQpPT57Zm9yKHZhciByIGluIHQpbC5vKHQscikmJiFsLm8oZSxyKSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscix7ZW51bWVyYWJsZTohMCxnZXQ6dFtyXX0pfSxsLmY9e30sbC5lPWU9PlByb21pc2UuYWxsKE9iamVjdC5rZXlzKGwuZikucmVkdWNlKCgodCxyKT0+KGwuZltyXShlLHQpLHQpKSxbXSkpLGwudT1lPT4oKHsxMzk5MzoicHVzaHN0cmVhbS1tdWx0aXBsZXhlciIsMTY4MTM6InRyYWRpbmd2aWV3LWNvcHlyaWdodC13aXRoLWJvcmRlci1kYXRhLWltcGwiLDIwNjkxOiJibG9ja3Mvb3ZlcmZsb3ctdG9vbHRpcHMiLDM1NjU3OiJibG9ja3MvY29tbW9uLXRvb2x0aXAiLDcxMzk0OiJjbW9uZXljb210dy1jb3B5cmlnaHQtZGF0YS1pbXBsIiw3NjA0MDoidHJhZGluZ3ZpZXctY29weXJpZ2h0LW5ldy1kYXRhLWltcGwiLDc5MDQxOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtdHJhZGUtd2l0aC1kYXRhLWltcGwiLDg1MDM4OiJsZW50YXJ1LWNvcHlyaWdodC1kYXRhLWltcGwiLDk1MjA3OiJzbm93cGxvdy10cmFja2VyLWJhc2UiLDk3NTA5OiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtZGF0YS1pbXBsIn1bZV18fGUpKyIuIit7NzI4NToiOGJjODI5MjY2NTI4ZmE3NGFmNWMiLDEyOTY1OiI0MDZlZTU5ZmEwMDlmMGU5YzI2YiIsMTM5OTM6IjNiMTk5YzZhZDhiZjVjM2NhYzY3IiwxNjgxMzoiN2U0NTI3YmM1NTIxOWVhM2FkNzYiLDIwNjkxOiI2YzllN2E5ZTg0Y2ZmM2U3NTY4ZCIsMzU2NTc6IjQ0M2UyOTAxZmJlNzgxZjI3Y2I0Iiw3MDY0NDoiNDQ4NzQzZGVmMzI1ZmViNjE5NjciLDcxMzk0OiJlNjM5NzViYTFkMzY3ZGY3YTlkOCIsNzYwNDA6Ijg5YTUxYjk4OGVjNDNlZDA0ZWU3Iiw3OTA0MToiYmI0ZjdjYjA2OGZmYmVlOGNiYmEiLDg1MDM4OiI0YzBkNmRmMzA0NWRlNDE3MzE3OCIsODU0MzQ6ImI4NWI3NWRmOTFiMjJiYWM4ZDM5Iiw5NTIwNzoiNDY1ZjhhZjFhYTcyYWMzYTFjMzIiLDk3NTA5OiIyN2YzNDlhMWQ1ODQ4M2YyN2VhYSJ9W2VdKyIuanMiKSxsLm1pbmlDc3NGPWU9Pjk3Nzk3PT09ZT9lKyIuZDk4NWVlYmU2NzM5N2YwMmZhNjQuY3NzIjozOTA1PT09ZT8iMzkwNS42ODJlODllZjJkYzRjNzA0MjNjNi5jc3MiOmUrIi4iK3s2NDQ1OiJhYzYzNWJhMTUxOTRkZjQ4NDYxNiIsNDQyNTM6Ijg0MDViYWYzM2MzZWZkMDE1MjhlIiw1MzUyMToiZGM5YmM3MGE2YTgwZjJjOTRmNTUiLDU5OTQxOiJhZjIyZjNhYjgzY2RmY2MzOTM1YSIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0In1bZV0rIi5jc3MiLGwuZz1mdW5jdGlvbigpe2lmKCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcylyZXR1cm4gZ2xvYmFsVGhpczt0cnl7cmV0dXJuIHRoaXN8fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKGUpewppZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdylyZXR1cm4gd2luZG93fX0oKSxsLm89KGUsdCk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpLHQ9e30scj0idHJhZGluZ3ZpZXc6IixsLmw9KGUsbixhLG8pPT57aWYodFtlXSl0W2VdLnB1c2gobik7ZWxzZXt2YXIgaSx1O2lmKHZvaWQgMCE9PWEpZm9yKHZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBzPWNbZF07aWYocy5nZXRBdHRyaWJ1dGUoInNyYyIpPT1lfHxzLmdldEF0dHJpYnV0ZSgiZGF0YS13ZWJwYWNrIik9PXIrYSl7aT1zO2JyZWFrfX1pfHwodT0hMCwoaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuY2hhcnNldD0idXRmLTgiLGwubmMmJmkuc2V0QXR0cmlidXRlKCJub25jZSIsbC5uYyksaS5zZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIscithKSxpLnNyYz1lLDAhPT1pLnNyYy5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKGkuY3Jvc3NPcmlnaW49ImFub255bW91cyIpKSx0W2VdPVtuXTt2YXIgZj0ocixuKT0+e2kub25lcnJvcj1pLm9ubG9hZD1udWxsLGNsZWFyVGltZW91dChwKTt2YXIgYT10W2VdO2lmKGRlbGV0ZSB0W2VdLGkucGFyZW50Tm9kZSYmaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpLGEmJmEuZm9yRWFjaCgoZT0+ZShuKSkpLHIpcmV0dXJuIHIobil9LHA9c2V0VGltZW91dChmLmJpbmQobnVsbCx2b2lkIDAse3R5cGU6InRpbWVvdXQiLHRhcmdldDppfSksMTJlNCk7aS5vbmVycm9yPWYuYmluZChudWxsLGkub25lcnJvciksaS5vbmxvYWQ9Zi5iaW5kKG51bGwsaS5vbmxvYWQpLHUmJmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoaSl9fSxsLnI9ZT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LCgoKT0+e3ZhciBlO2wuZy5pbXBvcnRTY3JpcHRzJiYoZT1sLmcubG9jYXRpb24rIiIpO3ZhciB0PWwuZy5kb2N1bWVudDtpZighZSYmdCYmKHQuY3VycmVudFNjcmlwdCYmIlNDUklQVCI9PT10LmN1cnJlbnRTY3JpcHQudGFnTmFtZS50b1VwcGVyQ2FzZSgpJiYoZT10LmN1cnJlbnRTY3JpcHQuc3JjKSwhZSkpe3ZhciByPXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpO2lmKHIubGVuZ3RoKWZvcih2YXIgbj1yLmxlbmd0aC0xO24+LTEmJighZXx8IS9eaHR0cChzPyk6Ly50ZXN0KGUpKTspZT1yW24tLV0uc3JjfWlmKCFlKXRocm93IG5ldyBFcnJvcigiQXV0b21hdGljIHB1YmxpY1BhdGggaXMgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGJyb3dzZXIiKTtlPWUucmVwbGFjZSgvXmJsb2I6LywiIikucmVwbGFjZSgvIy4qJC8sIiIpLnJlcGxhY2UoL1w/LiokLywiIikucmVwbGFjZSgvXC9bXlwvXSskLywiLyIpLGwucD1lfSkoKSxsLmcubG9jYXRpb24mJmwucC5zdGFydHNXaXRoKGwuZy5sb2NhdGlvbi5vcmlnaW4pJiYobC5wPWwucC5zbGljZShsLmcubG9jYXRpb24ub3JpZ2luLmxlbmd0aCkpLCgoKT0+e2NvbnN0IGU9bC51O2wudT10PT5lKHQpLnJlcGxhY2UoIl9fTEFOR19fIixsLmcubGFuZ3VhZ2UpfSkoKSwoKCk9Pnt2YXIgZT1sLmUsdD1PYmplY3QuY3JlYXRlKG51bGwpO2Z1bmN0aW9uIHIodCxuKXtyZXR1cm4gZSh0KS5jYXRjaCgoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGEpe3ZhciBsPWZ1bmN0aW9uKCl7c2VsZi5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLGwsITEpLCExPT09bmF2aWdhdG9yLm9uTGluZT9zZWxmLmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbCwhMSk6YShuPDI/cih0LG4rMSk6ZSh0KSl9O3NldFRpbWVvdXQobCxuKm4qMWUzKX0pKX0pKX1sLmU9ZnVuY3Rpb24oZSl7aWYoIXRbZV0pe3RbZV09cihlLDApO3ZhciBuPWZ1bmN0aW9uKCl7ZGVsZXRlIHRbZV19O3RbZV0udGhlbihuLG4pfXJldHVybiB0W2VdfX0pKCksKCgpPT57aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCl7dmFyIGU9ZT0+bmV3IFByb21pc2UoKCh0LHIpPT57dmFyIG49bC5taW5pQ3NzRihlKSxhPWwucCtuO2lmKCgoZSx0KT0+e2Zvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGE9KG89cltuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKXx8by5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZigic3R5bGVzaGVldCI9PT1vLnJlbCYmKGE9PT1lfHxhPT09dCkpcmV0dXJuIG99dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIik7Zm9yKG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIG87aWYoKGE9KG89bFtuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKSk9PT1lfHxhPT09dClyZXR1cm4gb319KShuLGEpKXJldHVybiB0KCk7KChlLHQscixuLGEpPT57dmFyIGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2wucmVsPSJzdHlsZXNoZWV0IixsLnR5cGU9InRleHQvY3NzIixsLm9uZXJyb3I9bC5vbmxvYWQ9cj0+e2lmKGwub25lcnJvcj1sLm9ubG9hZD1udWxsLCJsb2FkIj09PXIudHlwZSluKCk7ZWxzZXt2YXIgbz1yJiYoImxvYWQiPT09ci50eXBlPyJtaXNzaW5nIjpyLnR5cGUpLGk9ciYmci50YXJnZXQmJnIudGFyZ2V0LmhyZWZ8fHQsdT1uZXcgRXJyb3IoIkxvYWRpbmcgQ1NTIGNodW5rICIrZSsiIGZhaWxlZC5cbigiK2krIikiKTt1LmNvZGU9IkNTU19DSFVOS19MT0FEX0ZBSUxFRCIsdS50eXBlPW8sdS5yZXF1ZXN0PWksbC5wYXJlbnROb2RlJiZsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobCksYSh1KX19LGwuaHJlZj10LDAhPT1sLmhyZWYuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihsLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSwKcj9yLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGwsci5uZXh0U2libGluZyk6ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChsKX0pKGUsYSxudWxsLHQscil9KSksdD17NDIxNTI6MH07bC5mLm1pbmlDc3M9KHIsbik9Pnt0W3JdP24ucHVzaCh0W3JdKTowIT09dFtyXSYmezM5MDU6MSw2NDQ1OjEsNDQyNTM6MSw1MzUyMToxLDU5OTQxOjEsNzQwMTE6MSw5Nzc5NzoxfVtyXSYmbi5wdXNoKHRbcl09ZShyKS50aGVuKCgoKT0+e3Rbcl09MH0pLChlPT57dGhyb3cgZGVsZXRlIHRbcl0sZX0pKSl9fX0pKCksbC5pMThuZXh0PShlLHQ9e30scixuPWwuZy5sYW5ndWFnZSk9PntpZihudWxsPT09ZSl7aWYoQXJyYXkuaXNBcnJheShyKSlyZXR1cm4gclt2b2lkIDA9PT10LmNvdW50PzA6bC5fcGx1cmFsW25dKHQuY291bnQpXS5yZXBsYWNlKC97KFx3Kyl9L2csKChlLHIpPT52b2lkIDAhPT0odC5yZXBsYWNlfHx0KVtyXT8odC5yZXBsYWNlfHx0KVtyXTplKSk7aWYoIm9iamVjdCI9PXR5cGVvZiByKXJldHVybiByW2wuZy5sYW5ndWFnZV0/bC5pMThuZXh0KG51bGwsdCxyW2wuZy5sYW5ndWFnZV0pOmwuaTE4bmV4dChudWxsLHQsci5lbiwiZW4iKX1lbHNlIGlmKHImJmUpe2NvbnN0IG49YCR7ZX0ke3QuY29udGV4dD9gXyR7dC5jb250ZXh0fWA6IiJ9YDtpZihyW25dKXJldHVybiBsLmkxOG5leHQobnVsbCx0LHJbbl0pfXJldHVybiJudW1iZXIiPT10eXBlb2YgZT9lLnRvU3RyaW5nKCk6InN0cmluZyIhPXR5cGVvZiBlPyIiOmV9LCgoKT0+e3ZhciBlPXs0MjE1MjowLDQ2OTA3OjAsMjAzNTQ6MCwxMTIxODowLDQzMzI1OjAsMTU5MzI6MCw0MzY0NDowLDQ1MzY4OjAsMTg0NzI6MCwyNTgwOTowLDI2NTkyOjAsNzM3NDU6MH07bC5mLmo9KHQscik9Pnt2YXIgbj1sLm8oZSx0KT9lW3RdOnZvaWQgMDtpZigwIT09bilpZihuKXIucHVzaChuWzJdKTtlbHNlIGlmKC9eKDEoMTMxMnwyOTY1fDM5OTN8NjgxMyl8NygwNjQ0fDEzOTR8Mjg1fDU1MDN8NjA0MHw5MDQxKXw4KDMwMzF8NTAzOHw1NDM0KXwoMzIzOHwzNTY1fDk1MjApN3wyMDY5MXw5NzUwOSkkLy50ZXN0KHQpKXt2YXIgYT1uZXcgUHJvbWlzZSgoKHIsYSk9Pm49ZVt0XT1bcixhXSkpO3IucHVzaChuWzJdPWEpO3ZhciBvPWwucCtsLnUodCksaT1uZXcgRXJyb3I7bC5sKG8sKHI9PntpZihsLm8oZSx0KSYmKDAhPT0obj1lW3RdKSYmKGVbdF09dm9pZCAwKSxuKSl7dmFyIGE9ciYmKCJsb2FkIj09PXIudHlwZT8ibWlzc2luZyI6ci50eXBlKSxvPXImJnIudGFyZ2V0JiZyLnRhcmdldC5zcmM7aS5tZXNzYWdlPSJMb2FkaW5nIGNodW5rICIrdCsiIGZhaWxlZC5cbigiK2ErIjogIitvKyIpIixpLm5hbWU9IkNodW5rTG9hZEVycm9yIixpLnR5cGU9YSxpLnJlcXVlc3Q9byxuWzFdKGkpfX0pLCJjaHVuay0iK3QsdCl9ZWxzZSBlW3RdPTB9LGwuTy5qPXQ9PjA9PT1lW3RdO3ZhciB0PSh0LHIpPT57dmFyIG4sYSxbbyxpLHVdPXIsYz0wO2lmKG8uc29tZSgodD0+MCE9PWVbdF0pKSl7Zm9yKG4gaW4gaSlsLm8oaSxuKSYmKGwubVtuXT1pW25dKTtpZih1KXZhciBkPXUobCl9Zm9yKHQmJnQocik7YzxvLmxlbmd0aDtjKyspYT1vW2NdLGwubyhlLGEpJiZlW2FdJiZlW2FdWzBdKCksZVthXT0wO3JldHVybiBsLk8oZCl9LHI9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlldz1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3fHxbXTtyLmZvckVhY2godC5iaW5kKG51bGwsMCkpLHIucHVzaD10LmJpbmQobnVsbCxyLnB1c2guYmluZChyKSl9KSgpLGwucD1sLmcmJmwuZy5XRUJQQUNLX1BVQkxJQ19QQVRIfHxsLnB9KSgpOw=="}},"time_used":4,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_screener_v1_widget.3c6dcb48241b38ad20cd.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A400%2C%22height%22%3A490%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22USD%22%2C%22colorTheme%22%3A%22light%22%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22persimmontrades.com%22%2C%22utm_medium%22%3A%22widget_new%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22persimmontrades.com%2F%22%7D","date":"2026-07-27T12:16:30.561Z","timestamp":1785154590561,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/embed_screener_v1_widget.3c6dcb48241b38ad20cd.js HTTP/1.1\r\nHost: www.tradingview-widget.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 12:16:30 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-9324c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7e53c8c241f26ec5cc15e937c8c0fede\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":602700,"size_decoded":163680,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (6334)","md5":"b07d7762afc64303abb48d31f9b49b37","sha1":"1c890e25377b837bc68ec086492e285e65d16c18","sha256":"1eb5c13d7babdf9d1b73d7ad5a55022781e5d3f382adc1ee187565d64a40827f","sha512":"a8f88cc675c375635ddd8bede571efff87e5328f1d0d90c979d7b07ebc0ae4eb81802b64a9d6eff50ce17142110fbbb224ff8fc3c4c22a1338431110a908c8b5","ssdeep":"12288:N5WOCvvhWwgPkUciIrBbM37JDMclwUYGZTw7yhLrLl1wrFh:N5WOitgPkDiIrBbM37JDMclwUYGZTw7N","tlshash":"8dd43a71a1a5293011f6c2dad8b66406623d2647f80604adfe7d8cdf168ee45f13bf3a","first_seen":"2026-07-25T03:24:57.336653Z","last_seen":"2026-07-27T14:22:59.629809Z","times_seen":282,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NSw0NjQ4Miw2NDAxOSw4MDkzOSw4NTYwNyw4NjkxNCw5MTI5Ml0sezg0ODUyNyhlKXtlLmV4cG9ydHM9e319LDE5NjIxKGUpe2UuZXhwb3J0cz17bGlzdDoibGlzdC1HTlc2QnZHbyIsaXRlbToiaXRlbS1HTlc2QnZHbyJ9fSw5MjQ1MDcoZSl7ZS5leHBvcnRzPXsidGFibGV0LW5vcm1hbC1icmVha3BvaW50IjoiKG1heC13aWR0aDogNzY4cHgpIiwic21hbGwtaGVpZ2h0LWJyZWFrcG9pbnQiOiIobWF4LWhlaWdodDogMzYwcHgpIiwidGFibGV0LXNtYWxsLWJyZWFrcG9pbnQiOiIobWF4LXdpZHRoOiA0NDBweCkifX0sMjQ0NTI1KGUpe2UuZXhwb3J0cz17bG9hZGVyOiJsb2FkZXItTWdmOEVGd0siLHN0YXRpYzoic3RhdGljLU1nZjhFRndLIixpdGVtOiJpdGVtLU1nZjhFRndLIiwidHYtYnV0dG9uLWxvYWRlciI6InR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0siLG1lZGl1bToibWVkaXVtLU1nZjhFRndLIixzbWFsbDoic21hbGwtTWdmOEVGd0siLGJsYWNrOiJibGFjay1NZ2Y4RUZ3SyIsd2hpdGU6IndoaXRlLU1nZjhFRndLIixncmF5OiJncmF5LU1nZjhFRndLIixwcmltYXJ5OiJwcmltYXJ5LU1nZjhFRndLIn19LDg0NTU3NyhlKXtlLmV4cG9ydHM9eyJ0di1zcGlubmVyX19jb250YWluZXItcm90YXRlIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSCIsInR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtcnRsIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1ydGwtajRKbHJZVkgifX0sNjI1NzA5KGUpe2UuZXhwb3J0cz17c21hbGw6InNtYWxsLXRXRElDVGF5IixtZWRpdW06Im1lZGl1bS10V0RJQ1RheSIsbGFyZ2U6ImxhcmdlLXRXRElDVGF5Iixzd2l0Y2hWaWV3OiJzd2l0Y2hWaWV3LXRXRElDVGF5IixjaGVja2VkOiJjaGVja2VkLXRXRElDVGF5IixkaXNhYmxlZDoiZGlzYWJsZWQtdFdESUNUYXkiLHRyYWNrOiJ0cmFjay10V0RJQ1RheSIsdGh1bWI6InRodW1iLXRXRElDVGF5In19LDY4NzU0NyhlKXtlLmV4cG9ydHM9e3N3aXRjaGVyOiJzd2l0Y2hlci1sM0R0S0xzTCIsaW5wdXQ6ImlucHV0LWwzRHRLTHNMIix0aHVtYldyYXBwZXI6InRodW1iV3JhcHBlci1sM0R0S0xzTCIsZGlzYWJsZWQ6ImRpc2FibGVkLWwzRHRLTHNMIixjaGVja2VkOiJjaGVja2VkLWwzRHRLTHNMIn19LDE3MjM3MShlKXtlLmV4cG9ydHM9e319LDc5MDUwMShlKXtlLmV4cG9ydHM9e319LDE2NzU1OShlKXtlLmV4cG9ydHM9e319LDQ4OTc1MihlKXtlLmV4cG9ydHM9e319LDQ1NTU3KGUpe2UuZXhwb3J0cz17fX0sNTUwNzA1KGUpe2UuZXhwb3J0cz17fX0sNTkzMjYzKGUpe2UuZXhwb3J0cz17fX0sOTIyMjA2KGUpe2UuZXhwb3J0cz17fX0sNTUxMjE1KGUpe2UuZXhwb3J0cz17ImZsaWNrLXRoZW1lLWRhcmsiOiJmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0IixmbGljazoiZmxpY2stelBpVjZTWTQifX0sNDQ2OTU2KGUpe2UuZXhwb3J0cz17InR2LXB1bHNlLWFuaW1hdGlvbi1idXR0b24iOiJ0di1wdWxzZS1hbmltYXRpb24tYnV0dG9uLUFSZGJNMHlEIn19LDk1MjY4NihlKXtlLmV4cG9ydHM9e319LDk3NTI0NChlKXtlLmV4cG9ydHM9e319LDExMjYxMyhlKXtlLmV4cG9ydHM9e319LDgwNDYxOShlKXtlLmV4cG9ydHM9e319LDE1Mzc3KGUpe2UuZXhwb3J0cz17bW9kZVRpdGxlOiJtb2RlVGl0bGUtanNUM1M0TUEiLG1vZGVUaXRsZUFjdGl2ZToibW9kZVRpdGxlQWN0aXZlLWpzVDNTNE1BIixzd2l0Y2hlckNvbnRhaW5lcjoic3dpdGNoZXJDb250YWluZXItanNUM1M0TUEifX0sMzUxODI3KGUpe2UuZXhwb3J0cz17bGluazoibGluay1VSVFwTExOcyJ9fSw0NTAyOTUoZSl7ZS5leHBvcnRzPXt9fSw0NDM2MjAoZSl7ZS5leHBvcnRzPXt9fSw2NjIzOTIoZSl7ZS5leHBvcnRzPXt9fSwxMTQwNjgoZSl7ZS5leHBvcnRzPXsiY29tbW9uLXRvb2x0aXAiOiJjb21tb24tdG9vbHRpcC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1oaWRkZW4iOiJjb21tb24tdG9vbHRpcC0taGlkZGVuLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwiOiJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1mYXJ0aGVyIjoiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0tdmVydGljYWwiOiJjb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC1mYXJ0aGVyIjoiY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIjoiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keSI6ImNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXIiOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdyI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVmb3JlLUVKQkQ5NnpYIiwKImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS13aXRoLWhvdGtleSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aXRoLWhvdGtleS1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX3dpZGUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLXBhZGRpbmctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXIiOiJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0IjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24iOiJjb21tb24tdG9vbHRpcF9faG90a2V5LWJ1dHRvbi1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19wbHVzLXNpZ24iOiJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduLUVKQkQ5NnpYIn19LDg1NzAxOShlKXtlLmV4cG9ydHM9e319LDI2MjMxOShlKXtlLmV4cG9ydHM9e319LDk1MDc3MShlKXtlLmV4cG9ydHM9e319LDgzMjIyNihlKXtlLmV4cG9ydHM9e319LDIwMjgxNShlKXtlLmV4cG9ydHM9e319LDM3NjQ1MChlKXtlLmV4cG9ydHM9e319LDYzODI4MihlKXtlLmV4cG9ydHM9e319LDg1NTc0MihlKXtlLmV4cG9ydHM9e319LDYyNTQxMShlKXtlLmV4cG9ydHM9e3dyYXBwZXI6IndyYXBwZXItUFE1T18xTTciLHRvdWNoOiJ0b3VjaC1QUTVPXzFNNyJ9fSwyODY4MjAoZSl7ZS5leHBvcnRzPXt9fSwxMzMyNDMoZSl7ZS5leHBvcnRzPXt9fSwxMjE2NDUoZSl7ZS5leHBvcnRzPXtjb250YWluZXI6ImNvbnRhaW5lci1IVEJKbzliYSIsdG9wOiJ0b3AtSFRCSm85YmEifX0sNTcyMjQ5KGUpe2UuZXhwb3J0cz17d3JhcDoid3JhcC15emo3bHZLbiIsbGlzdDoibGlzdC15emo3bHZLbiIsaXRlbToiaXRlbS15emo3bHZLbiIsc2VsZWN0ZWQ6InNlbGVjdGVkLXl6ajdsdktuIixibHVpc2hJdGVtOiJibHVpc2hJdGVtLXl6ajdsdktuIixub1BhZGRpbmc6Im5vUGFkZGluZy15emo3bHZLbiJ9fSw2ODAyNShlKXtlLmV4cG9ydHM9e2VsZW1lbnRXcmFwOiJlbGVtZW50V3JhcC1MZVp3R2lCNiIsaXRlbXNXcmFwOiJpdGVtc1dyYXAtTGVad0dpQjYiLGl0ZW06Iml0ZW0tTGVad0dpQjYiLGFjdGl2ZToiYWN0aXZlLUxlWndHaUI2IixpdGVtQ29udGVudDoiaXRlbUNvbnRlbnQtTGVad0dpQjYiLGRyb3Bkb3duSXRlbToiZHJvcGRvd25JdGVtLUxlWndHaUI2Iixkcm9wZG93bkljb246ImRyb3Bkb3duSWNvbi1MZVp3R2lCNiIsZHJvcGRvd25MaXN0SXRlbToiZHJvcGRvd25MaXN0SXRlbS1MZVp3R2lCNiJ9fSw5MzAyMzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW5hYmxlOigpPT5jLGlzRmVhdHVyZXNldEVuYWJsZWQ6KCk9PmF9KTt2YXIgaT1vKDYzNTE4KTtjb25zdCBuPW5ldyBNYXAscj1uZXcgTWFwLHM9bmV3IFNldDtmdW5jdGlvbiBhKGUpe2NvbnN0IHQ9bi5nZXQoZSk7aWYodm9pZCAwIT09dClyZXR1cm4gdDtjb25zdCBvPXIuZ2V0KGUpO3JldHVybiEhbyYmby5zb21lKGEpfWZ1bmN0aW9uIGwoZSx0KXtuLnNldChTdHJpbmcoZSksQm9vbGVhbih0KSl9ZnVuY3Rpb24gYyhlKXtsKGUsITApfSFmdW5jdGlvbigpe2Zvcihjb25zdFtlLHRdb2YgT2JqZWN0LmVudHJpZXMoaSkpaWYocy5hZGQoZSksInN1YnNldHMiaW4gdClmb3IoY29uc3QgbyBvZiB0LnN1YnNldHMpe3MuYWRkKG8pO2xldCB0PXIuZ2V0KG8pO3ZvaWQgMD09PXQmJih0PVtdLHIuc2V0KG8sdCkpLHQucHVzaChlKX19KCksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzJiZBcnJheS5pc0FycmF5KF9faW5pdGlhbERpc2FibGVkRmVhdHVyZXNldHMpJiZfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2woZSwhMSl9KSksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMmJkFycmF5LmlzQXJyYXkoX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzKSYmX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goYyl9LDM4NDAxNyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtmZXRjaDooKT0+cn0pO3ZhciBpPW8oMjIxMDYxKTtvKDMwMDI4Nik7Y29uc3Qgbj0oMCxpLmdldExvZ2dlcikoIkZldGNoIik7ZnVuY3Rpb24gcihlLHQsbz17fSl7e2NvbnN0e2xvZ09uRXJyb3JTdGF0dXM6aT0hMCxsb2dCb2R5T25FcnJvcjpyPSExfT1vO3Q9dHx8e30sZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKS5vcmlnaW49PT1sb2NhdGlvbi5vcmlnaW59KGUpJiYodC5oZWFkZXJzP3QuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnN8fCh0LmhlYWRlcnM9bmV3IEhlYWRlcnModC5oZWFkZXJzKSk6dC5oZWFkZXJzPW5ldyBIZWFkZXJzLHdpbmRvdy5sb2NhbGUmJnQuaGVhZGVycy5zZXQoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpLHQuaGVhZGVycy5zZXQoIlgtUmVxdWVzdGVkLVdpdGgiLCJYTUxIdHRwUmVxdWVzdCIpKSx2b2lkIDA9PT10LmNyZWRlbnRpYWxzJiYodC5jcmVkZW50aWFscz0ic2FtZS1vcmlnaW4iKTtjb25zdCBzPXdpbmRvdy5mZXRjaChlLHQpO3JldHVybiBzLnRoZW4oKG89PntpZighby5vayYmaSl7bGV0IGk9IiI7dC5tZXRob2QmJihpKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxpKz1lLGkrPWAuIFN0YXR1cyAke28uc3RhdHVzfWAsby5zdGF0dXNUZXh0JiYoaSs9YC4gJHtvLnN0YXR1c1RleHR9YCksCm8uaGVhZGVycy52aWEmJihpKz1gLiBWaWE6ICR7by5oZWFkZXJzLnZpYX1gKSxyJiYic3RyaW5nIj09dHlwZW9mIHQuYm9keSYmKGkrPWAuIEJvZHk6ICR7dC5ib2R5LnNsaWNlKDAsMTAyNCl9YCksbi5sb2dFcnJvcihpKX1yZXR1cm4gb30pLChvPT57aWYobyYmIkFib3J0RXJyb3IiPT09by5uYW1lKXJldHVybjtsZXQgaT0iIjt0Lm1ldGhvZCYmKGkrPWAke3QubWV0aG9kLnRvVXBwZXJDYXNlKCl9IGApLGkrPWUsbmF2aWdhdG9yLm9uTGluZT9pKz1gLiAke1N0cmluZyhvKX1gOmkrPSIuIFVzZXIgaXMgb2ZmbGluZS4iLG4ubG9nRXJyb3IoaSl9KSksc319fSwxNzk3NzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW1pdDooKT0+YyxzdWJzY3JpYmU6KCk9PmwsdW5zdWJzY3JpYmU6KCk9PmF9KTt2YXIgaT1vKDk0ODM4MCk7Y29uc3Qgbj17fSxyPVtdLHM9e307ZnVuY3Rpb24gYShlLHQsbyl7bltlXS51bnN1YnNjcmliZShvLHQpfWZ1bmN0aW9uIGwoZSx0LG8scil7bi5oYXNPd25Qcm9wZXJ0eShlKXx8KG5bZV09bmV3IGkuRGVsZWdhdGUpLHNbZV0/dC5jYWxsKG8pOm5bZV0uc3Vic2NyaWJlKG8sdCxyKX1mdW5jdGlvbiBjKGUsLi4udCl7Y29uc3Qgbz1bZV0uY29uY2F0KHQpO3IuZm9yRWFjaCgoZT0+e2UuYXBwbHkobnVsbCxvKX0pKSxuLmhhc093blByb3BlcnR5KGUpJiZuW2VdLmZpcmUuYXBwbHkobltlXSx0KX19LDkzMjM2NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtUVkxvY2FsU3RvcmFnZTooKT0+cn0pO2NvbnN0IGk9KDAsbygyMjEwNjEpLmdldExvZ2dlcikoIlRWTG9jYWxTdG9yYWdlIik7dmFyIG49ZnVuY3Rpb24oKXt0cnl7dGhpcy5pc0F2YWlsYWJsZT0hMCx0aGlzLmxvY2FsU3RvcmFnZT13aW5kb3cubG9jYWxTdG9yYWdlLHRoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oInR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSIsInRydWUiKX1jYXRjaChlKXtkZWxldGUgdGhpcy5pc0F2YWlsYWJsZSxkZWxldGUgdGhpcy5sb2NhbFN0b3JhZ2V9dGhpcy5fdXBkYXRlTGVuZ3RoKCk7dHJ5e3RoaXMuX3JlcG9ydCgpfWNhdGNoKGUpe319O24ucHJvdG90eXBlLl9yZXBvcnQ9ZnVuY3Rpb24oKXtpZih0aGlzLmlzQXZhaWxhYmxlKXtjb25zdCBlPTEwLHQ9W107Zm9yKGxldCBlPTA7ZTx0aGlzLmxvY2FsU3RvcmFnZS5sZW5ndGg7ZSsrKXtjb25zdCBvPXRoaXMua2V5KGUpO3QucHVzaCh7a2V5Om8sbGVuZ3RoOlN0cmluZyh0aGlzLmdldEl0ZW0obykpLmxlbmd0aH0pfXQuc29ydCgoKGUsdCk9PnQubGVuZ3RoLWUubGVuZ3RoKSk7Y29uc3Qgbz10LnNsaWNlKDAsZSk7dC5zb3J0KCgoZSx0KT0+dC5rZXkubGVuZ3RoLWUua2V5Lmxlbmd0aCkpO2NvbnN0IG49dC5zbGljZSgwLGUpO2kubG9nTm9ybWFsKGBUb3RhbCBhbW91bnQgb2Yga2V5cyBpbiBMb2NhbCBTdG9yYWdlOiAke3RoaXMubGVuZ3RofWApLGkubG9nTm9ybWFsKGBUb3AgJHtlfSBrZXlzIHdpdGggbG9uZ2VzdCB2YWx1ZXM6ICR7SlNPTi5zdHJpbmdpZnkobyl9YCksaS5sb2dOb3JtYWwoYFRvcCAke2V9IGxvbmdlc3Qga2V5IG5hbWVzOiAke0pTT04uc3RyaW5naWZ5KG4pfWApO3RyeXtuYXZpZ2F0b3Iuc3RvcmFnZS5lc3RpbWF0ZSgpLnRoZW4oKGU9PntpLmxvZ05vcm1hbChgU3RvcmFnZSBlc3RpbWF0ZTogJHtKU09OLnN0cmluZ2lmeShlKX1gKX0pKX1jYXRjaChlKXt9fX0sbi5wcm90b3R5cGUubGVuZ3RoPTAsbi5wcm90b3R5cGUuaXNBdmFpbGFibGU9ITEsbi5wcm90b3R5cGUubG9jYWxTdG9yYWdlPXsidHZsb2NhbHN0b3JhZ2UuYXZhaWxhYmxlIjoiZmFsc2UifSxuLnByb3RvdHlwZS5fdXBkYXRlTGVuZ3RoPWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl0aGlzLmxlbmd0aD10aGlzLmxvY2FsU3RvcmFnZS5sZW5ndGg7ZWxzZXt2YXIgZSx0PTA7Zm9yKGUgaW4gdGhpcy5sb2NhbFN0b3JhZ2UpdGhpcy5sb2NhbFN0b3JhZ2UuaGFzT3duUHJvcGVydHkoZSkmJnQrKzt0aGlzLmxlbmd0aD10fX0sbi5wcm90b3R5cGUua2V5PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmtleShlKTpPYmplY3Qua2V5cyh0aGlzLmxvY2FsU3RvcmFnZSlbZV19LG4ucHJvdG90eXBlLmdldEl0ZW09ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTp2b2lkIDA9PT10aGlzLmxvY2FsU3RvcmFnZVtlXT9udWxsOnRoaXMubG9jYWxTdG9yYWdlW2VdfSxuLnByb3RvdHlwZS5zZXRJdGVtPWZ1bmN0aW9uKGUsdCl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGUsdCk6dGhpcy5sb2NhbFN0b3JhZ2VbZV09dCx0aGlzLl91cGRhdGVMZW5ndGgoKX0sbi5wcm90b3R5cGUucmVtb3ZlSXRlbT1mdW5jdGlvbihlKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZSk6ZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlW2VdLHRoaXMuX3VwZGF0ZUxlbmd0aCgpfSxuLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UuY2xlYXIoKTp0aGlzLmxvY2FsU3RvcmFnZT17fSx0aGlzLl91cGRhdGVMZW5ndGgoKX07Y29uc3Qgcj1uZXcgbjt3aW5kb3cuVFZMb2NhbFN0b3JhZ2U9cn0sODY1NTYwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1RWQXBwQ29udGV4dDooKT0+YyxUVkFwcENvbnRleHRQcm92aWRlcjooKT0+bH0pO3ZhciBpPW8oNzc5NDc0KSxuPW8oMTE1MjkzKSxyPW8oOTk5NTEpLHM9bygxMTczMTMpO2NvbnN0IGE9e2lPczoib2xkIixhbmRyb2lkOiJuZXciLG9sZDoib2xkIixuZXc6Im5ldyIsYW55OiJhbnkifTtmdW5jdGlvbiBsKGUpe2NvbnN0W3RdPSgwLGkudXNlU3RhdGUpKHtpc09uTW9iaWxlQXBwUGFnZTplPT4oMCxzLmlzT25Nb2JpbGVBcHBQYWdlKShhW2VdKSxpc1J0bDooMCxuLmlzUnRsKSgpLGxvY2FsZTp3aW5kb3cubG9jYWxlLHJlbmRlck1vZGU6ZS5yZW5kZXJNb2RlPz8ibGVnYWN5In0pO3JldHVybiBpLmNyZWF0ZUVsZW1lbnQoci5BcHBDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTp0Cn0sZS5jaGlsZHJlbil9Y29uc3QgYz1yLkFwcENvbnRleHR9LDU3MTMwMChlLHQsbyl7InVzZSBzdHJpY3QiO28ucih0KSxvLmQodCx7Y3JlYXRlUmVhY3RSb290OigpPT5hfSk7dmFyIGk9byg3Nzk0NzQpLG49bygxMjkzNjUpLHI9bygzMzYzMzQpLHM9byg4NjU1NjApO2Z1bmN0aW9uIGEoZSx0LG89ImxlZ2FjeSIpe2NvbnN0IGE9aS5jcmVhdGVFbGVtZW50KHMuVFZBcHBDb250ZXh0UHJvdmlkZXIse3JlbmRlck1vZGU6b30sZSk7aWYoIm1vZGVybiI9PT1vKXtjb25zdCBlPSgwLHIuY3JlYXRlUm9vdCkodCk7cmV0dXJuIGUucmVuZGVyKGEpLHtyZW5kZXIodCl7ZS5yZW5kZXIoaS5jcmVhdGVFbGVtZW50KHMuVFZBcHBDb250ZXh0UHJvdmlkZXIse3JlbmRlck1vZGU6b30sdCkpfSx1bm1vdW50KCl7ZS51bm1vdW50KCl9fX1yZXR1cm4gbi5yZW5kZXIoYSx0KSx7cmVuZGVyKGUpe24ucmVuZGVyKGkuY3JlYXRlRWxlbWVudChzLlRWQXBwQ29udGV4dFByb3ZpZGVyLHtyZW5kZXJNb2RlOm99LGUpLHQpfSx1bm1vdW50KCl7bi51bm1vdW50Q29tcG9uZW50QXROb2RlKHQpfX19fSw5MDk3OTgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Zmx1c2hEZWxlZ2F0ZTooKT0+aX0pO2NvbnN0IGk9bmV3KG8oOTQ4MzgwKS5EZWxlZ2F0ZSl9LDg1NjE5NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzaG91bGRBZmZlY3RVc2VyOigpPT5sfSk7dmFyIGk9bygxMDA1OTUpLG49by5uKGkpLHI9byg5MzIzNjUpO2NvbnN0IHM9ImZlYXR1cmV0b2dnbGVfc2VlZCI7ZnVuY3Rpb24gYShlKXt0cnl7Y29uc3QgdD1uKCkoZStmdW5jdGlvbigpe2lmKHdpbmRvdy51c2VyJiZ3aW5kb3cudXNlci5pZClyZXR1cm4gd2luZG93LnVzZXIuaWQ7Y29uc3QgZT1yLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0ocyk7aWYobnVsbCE9PWUpcmV0dXJuIGU7Y29uc3QgdD1NYXRoLmZsb29yKDFlNipNYXRoLnJhbmRvbSgpKTtyZXR1cm4gci5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHMsYCR7dH1gKSx0fSgpKSxvPW5ldyBEYXRhVmlldyh0KTtyZXR1cm4gby5nZXRVaW50MzIoMCwhMCkvNDI5NDk2NzI5Nn1jYXRjaChlKXtyZXR1cm4uNX19ZnVuY3Rpb24gbChlLHQpe3JldHVybiBhKGUpPD10fX0sMTU2ODUwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3RlbGVtZXRyeTooKT0+aH0pO3ZhciBpPW8oOTQ4MzgwKSxuPW8oMjIxMDYxKSxyPW8oMzg0MDE3KSxzPW8oMzc3MjI2KSxhPW8oMTE3MzEzKTtvKDMwMDI4Nik7Y29uc3QgbD0oMCxuLmdldExvZ2dlcikoIkNvbW1vbi5UZWxlbWV0cnkiKSxjPXtkZWZhdWx0OjE1ZTMsc2l0ZTozZTV9LGQ9WyJiZWZvcmVfd2Vic29ja2V0X2Nvbm5lY3Rpb25fdGltZV9mcmFtZSIsIndlYnNvY2tldF9jb25uZWN0aW9uX3RpbWVfZnJhbWUiLCJmaXJzdF9zZXJpZXNfZnVsbF90aW1lX2ZyYW1lIiwicGFnZV9mdWxsX2xvYWRfdGltZV9mcmFtZSIsInBhZ2VfbG9hZF90aW1lX2ZyYW1lIl07Y29uc3QgaD1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnJlcG9ydFNlbnQ9bmV3IGkuRGVsZWdhdGUsdGhpcy50aW1lQ291bnRlcnM9e3Nlcmllczp7bWFya3M6W119LHN0dWR5Ont9LHBpbmU6e319LHRoaXMuX3RpbWVvdXRJZHM9e30sdGhpcy5fY29tbW9uQWRkaXRpb25hbERhdGE9e2NsdXN0ZXI6bnVsbCx1c2VySWQ6IjAifSx0aGlzLl9yZXBvcnRTdGFzaD17fX1zZXRTZXNzaW9uSW5mbyhlKXtjb25zdCB0PXRoaXMuX3BhcnNlQ2x1c3RlcihlKTtudWxsIT09dCYmKHRoaXMuX2NvbW1vbkFkZGl0aW9uYWxEYXRhLmNsdXN0ZXI9dCl9c2VuZFJlcG9ydChlLHQsbyl7aWYoIXRoaXMuX2lzQWJsZVRvU2VuZFJlcG9ydCh0KSlyZXR1cm47Y29uc3QgaT10aGlzLl9nZXRTdWJzZXJ2aWNlVHlwZShlKSxuPXRoaXMuX2dldEhvc3QoZSxpKTtpZihudWxsIT09bil7aWYobz12b2lkIDA9PT1vP3tjb3VudDoxfTpvLHRoaXMuX2FkZFJlcG9ydFRvU3Rhc2gobyx0LG4pLCF0aGlzLl90aW1lb3V0SWRzW2VdKXtjb25zdCB0PWNbZV0/P2MuZGVmYXVsdDt0aGlzLl90aW1lb3V0SWRzW2VdPXNldFRpbWVvdXQodGhpcy5fc2VuZFRlbGVtZXRyeVRvU2VydmljZS5iaW5kKHRoaXMsZSxuKSx0KX19ZWxzZSBsLmxvZ0Vycm9yKGBVbmFibGUgdG8gZ2V0IGhvc3QgZm9yIGNvdW50ZXI6ICR7dH0sIG1ldHJpYyB0eXBlOiAke2V9LCBzZXJpdmNlIHR5cGU6ICR7aX1gKX1zZW5kQ2hhcnRSZXBvcnQoZSx0LG89ITApe3RoaXMuX3NlbmRTZXJ2aWNlU3BlY2lmaWVkUmVwb3J0KCJjaGFydHMiLGUsdCxvKX1zZW5kTGluZVRvb2xzU3RvcmFnZVJlcG9ydChlLHQsbz0hMCl7dGhpcy5fc2VuZFNlcnZpY2VTcGVjaWZpZWRSZXBvcnQoImxpbmVfdG9vbHNfc3RvcmFnZSIsZSx0LG8pfV9zZW5kU2VydmljZVNwZWNpZmllZFJlcG9ydChlLHQsbyxpPSEwKXt0aGlzLl91cGRhdGVVc2VySW5mbygpLG89dm9pZCAwPT09bz97Y291bnQ6MX06byxpJiYobz10aGlzLl9hcHBlbmRDb21tb25BZGRpdGlvbmFsSW5mbyhvLFsiY2x1c3RlciIsInVzZXJJZCJdKSksdGhpcy5zZW5kUmVwb3J0KGUsdCxvKX1fdXBkYXRlVXNlckluZm8oKXtjb25zdCBlPSJ1c2VyImluIHdpbmRvdyYmImlkImluIHdpbmRvdy51c2VyP3dpbmRvdy51c2VyLmlkOiIwIjt0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YS51c2VySWQ9U3RyaW5nKGUpfV9pc0FibGVUb1NlbmRSZXBvcnQoZSl7Y29uc3QgdD13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLG89ZC5pbmNsdWRlcyhlKSxpPUJvb2xlYW4od2luZG93LlRyYWRpbmdWaWV3Py5vbkNoYXJ0UGFnZXx8KDAscy5vbldpZGdldCkoKSk7cmV0dXJuIHQmJighb3x8aSl9X3NlbmRUZWxlbWV0cnlUb1NlcnZpY2UoZSx0KXtpZih0aGlzLl9yZXBvcnRTdGFzaC5oYXNPd25Qcm9wZXJ0eSh0KSl7Y29uc3QgZT10aGlzLl9jcm9wUGFyYW1zKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxvPXRoaXMuX3JlbmFtZUFsbFBhcmFtcyhlKSxpPXtldmVudDoicmVwb3J0X3N0YXNoIixwYXJhbXM6dGhpcy5fY2xlYW5BbGxQYXJhbXMobyl9CjtsLmxvZ0RlYnVnKGBSZXBvcnQgdG8gaG9zdDogJHt0fTsgc3Rhc2g6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5fcmVwb3J0U3Rhc2hbdF0pfWApLHRoaXMucmVwb3J0U2VudC5maXJlKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxkZWxldGUgdGhpcy5fcmVwb3J0U3Rhc2hbdF0sKDAsci5mZXRjaCkoYCR7dH0vcmVwb3J0YCx7bWV0aG9kOiJQT1NUIixib2R5OkpTT04uc3RyaW5naWZ5KGkpfSl9dGhpcy5fdGltZW91dElkc1tlXT1udWxsfV9nZXRIb3N0KGUsdCl7Y29uc3Qgbz13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLGk9b1tlXSYmb1tlXVt0XTtyZXR1cm4gQm9vbGVhbihpKT9pOm51bGx9X2dldFN1YnNlcnZpY2VUeXBlKGUpe2lmKCFbImNoYXJ0cyIsInNpdGUiXS5pbmNsdWRlcyhlKSlyZXR1cm4iYWxsIjtsZXQgdD0iZnJlZSI7Y29uc3Qgbz13aW5kb3cudXNlci5pc19wcm87cmV0dXJuImNoYXJ0cyI9PT1lJiYoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/dD1vPyJpb3NfcHJvIjoiaW9zX2ZyZWUiOiJjaGFydHMiPT09ZSYmKDAsYS5pc09uTW9iaWxlQXBwUGFnZSkoIm5ldyIpP3Q9bz8iYW5kcm9pZF9wcm8iOiJhbmRyb2lkX2ZyZWUiOigwLHMub25XaWRnZXQpKCk/dD0id2lkZ2V0IjpvJiYodD0icHJvIiksdH1fcGFyc2VDbHVzdGVyKGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UoZSkuc2Vzc2lvbl9pZH1jYXRjaChlKXtyZXR1cm4gbC5sb2dFcnJvcigiQ291bGQgbm90IHBhcnNlIGNsdXN0ZXIgaWQgKHNlc3Npb24gaWQpIiksbnVsbH1jb25zdCBvPS8oLipAKSguKikvZ2kuZXhlYyh0KTtyZXR1cm4gbnVsbCE9PW8mJm8ubGVuZ3RoPj0zP29bMl06bnVsbH1fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oZSx0KXtyZXR1cm4gdC5mb3JFYWNoKCh0PT57dCBpbiB0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YSYmKGUuYWRkaXRpb25hbD1lLmFkZGl0aW9uYWx8fHt9LGUuYWRkaXRpb25hbFt0XT10aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YVt0XSl9KSksZX1fY3JvcFBhcmFtcyhlKXtmb3IoY29uc3QgdCBpbiBlKWUuaGFzT3duUHJvcGVydHkodCkmJmVbdF0ubGVuZ3RoPjFlMyYmKGUudG9vX211Y2hfbWV0cmljc19mcmFtZT1lLnRvb19tdWNoX21ldHJpY3NfZnJhbWU/P1tdLGUudG9vX211Y2hfbWV0cmljc19mcmFtZS5wdXNoKHt2YWx1ZTplW3RdLmxlbmd0aCxhZGRpdGlvbmFsOntldmVudDp0fX0pLGRlbGV0ZSBlW3RdKTtyZXR1cm4gZX1fcmVuYW1lQWxsUGFyYW1zKGUpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IG8gaW4gZSllLmhhc093blByb3BlcnR5KG8pJiYodFtvXT1bXSxlW29dLmZvckVhY2goKGU9Pnt0W29dLnB1c2godGhpcy5fcmVuYW1lRW50cnlQYXJhbXMoZSkpfSkpKTtyZXR1cm4gdH1fcmVuYW1lRW50cnlQYXJhbXMoZSl7Y29uc3QgdD17Y291bnQ6ImMiLHZhbHVlOiJ2Iix0ZXh0OiJ0IixhZGRpdGlvbmFsOiJhIn07cmV0dXJuIE9iamVjdC5rZXlzKGUpLnJlZHVjZSgoKG8saSk9PihvW3RbaV1dPWVbaV0sbykpLHt9KX1fY2xlYW5BbGxQYXJhbXMoZSl7Y29uc3QgdD17fTtmb3IoY29uc3QgbyBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkobykpe3Rbb109W107Y29uc3QgaT17YzowfTtlW29dLmZvckVhY2goKGU9Pntjb25zdCBuPXRoaXMuX2NsZWFuRW50cnlQYXJhbXMoZSkscj1PYmplY3Qua2V5cyhuKS5sZW5ndGg7MT09PXImJnZvaWQgMCE9PW4uYz9pLmMrPW4uYzpyPjAmJnRbb10ucHVzaChuKX0pKSxpLmM+MCYmdFtvXS5wdXNoKGkpLDA9PT10W29dLmxlbmd0aCYmZGVsZXRlIHRbb119cmV0dXJuIHR9X2NsZWFuRW50cnlQYXJhbXMoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlKS5yZWR1Y2UoKCh0LG8pPT4iYyIhPT1vJiYidCIhPT1vfHxlW29dPyh0W29dPWVbb10sdCk6dCkse30pO3JldHVybiJjImluIHR8fCJ2ImluIHR8fCJ0ImluIHQ/dDp7fX1fYWRkUmVwb3J0VG9TdGFzaChlLHQsbyl7byBpbiB0aGlzLl9yZXBvcnRTdGFzaHx8KHRoaXMuX3JlcG9ydFN0YXNoW29dPXt9KSx0IGluIHRoaXMuX3JlcG9ydFN0YXNoW29dfHwodGhpcy5fcmVwb3J0U3Rhc2hbb11bdF09W10pLE9iamVjdC5rZXlzKGUpLmxlbmd0aD4wJiZ0aGlzLl9yZXBvcnRTdGFzaFtvXVt0XS5wdXNoKGUpfX19LDczMjA0MChlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpO2Z1bmN0aW9uIG4oZSx0PXdpbmRvdyl7Y29uc3Qgbz0idGhlbWUtIitlLGk9dC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCBlIG9mIEFycmF5LmZyb20oaSkpZS5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmZSE9PW8mJmkucmVtb3ZlKGUpO2kuYWRkKG8pLHQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9ZX1vLmQodCx7YXBwbHlUaGVtZTooKT0+bn0pLGZ1bmN0aW9uKGUpe2UuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oaXx8KGk9e30pKX0sMjQ3OTAxKGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse1N0ZFRoZW1lOigpPT5pfSksZnVuY3Rpb24oZSl7ZS5MaWdodD0ibGlnaHQiLGUuRGFyaz0iZGFyayJ9KGl8fChpPXt9KSl9LDIwMDY2NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzZXRUaGVtZTooKT0+cyx3YXRjaGVkVGhlbWU6KCk9PnJ9KTt2YXIgaT1vKDIzMjM2NCksbj1vKDczMjA0MCk7Y29uc3Qgcj1uZXcgaS5XYXRjaGVkVmFsdWU7ZnVuY3Rpb24gcyhlKXtyLnNldFZhbHVlKGUpfXIuc3Vic2NyaWJlKChlPT57KDAsbi5hcHBseVRoZW1lKShlLHdpbmRvdyl9KSl9LDM4NjkzMShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt0cmFja0V2ZW50OigpPT5hfSk7dmFyIGk9bygyMjEwNjEpLG49byg5MzAyMzEpO28oMTc5NzcxKTtjb25zdCByPSgwLGkuZ2V0TG9nZ2VyKSgiQ29tbW9uLlRyYWNrRXZlbnQiKTtsZXQgcz0hMTtjb25zdCBhPShlLHQsbyk9PntpZihzKXJldHVybjtsZXQgaT0oZT9lKyI6IjoiIikrdDtvJiYoaSs9IiAiK28pLHIubG9nTm9ybWFsKGkpLCgwLG4uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpfHwhd2luZG93Ll9VTklUX1RFU1RTJiZ3aW5kb3cuZ3RhZyYmd2luZG93Lmd0YWcoImV2ZW50Iix0LHsKZXZlbnRfY2F0ZWdvcnk6ZSxldmVudF9sYWJlbDpvfSl9O3ZhciBsLGMsZDshZnVuY3Rpb24oZSl7ZS5HVUk9IkdVSSJ9KGx8fChsPXt9KSksZnVuY3Rpb24oZSl7ZS5DaGFydEhlYWRlclRvb2xiYXI9IkNoYXJ0IEhlYWRlciBUb29sYmFyIixlLkNoYXJ0Qm90dG9tVG9vbGJhcj0iQ2hhcnQgQm90dG9tIFRvb2xiYXIiLGUuQ2hhcnRMZWZ0VG9vbGJhcj0iQ2hhcnQgTGVmdCBUb29sYmFyIixlLlRpbWVJbnRlcnZhbD0iVGltZSBJbnRlcnZhbCIsZS5Mb2FkQ2hhcnRMYXlvdXQ9IkxvYWQgY2hhcnQgbGF5b3V0In0oY3x8KGM9e30pKSxmdW5jdGlvbihlKXtlLlJhbmdlPSJyYW5nZSIsZS5Hb1RvPSJnbyB0byIsZS5DaGFydFByb3BlcnRpZXM9ImNoYXJ0IHByb3BlcnRpZXMiLGUuQ29tcGFyZT0iY29tcGFyZSIsZS5TZWxlY3RMYXlvdXQ9InNlbGVjdCBsYXlvdXQiLGUuTWFnbmV0TW9kZT0ibWFnbmV0IG1vZGUiLGUuTWFnbmV0U25hcHM9Im1hZ25ldCBzbmFwcyIsZS5EcmF3aW5nTW9kZT0iZHJhd2luZyBtb2RlIixlLkxvY2tBbGxEcmF3aW5nPSJsb2NrIGFsbCBkcmF3aW5nIixlLlJlbW92ZURyYXdpbmc9InJlbW92ZSBkcmF3aW5nIixlLlJlbW92ZUluZGljYXRvcj0icmVtb3ZlIGluZGljYXRvciIsZS5SZW1vdmVBbGw9InJlbW92ZSBhbGwiLGUuSGlkZURyYXdpbmdzPSJoaWRlIGRyYXdpbmdzIixlLkhpZGVJbmRpY2F0b3JzPSJoaWRlIGluZGljYXRvcnMiLGUuSGlkZVBvc2l0aW9ucz0iaGlkZSBwb3NpdGlvbnMiLGUuSGlkZUFsbD0iaGlkZSBhbGwiLGUuU3luYz0ic3luYyIsZS5TeW5jTW9kZT0ic3luYyBtb2RlIixlLlN3aXRjaENoYXJ0TGF5b3V0PSJTd2l0Y2ggY2hhcnQgbGF5b3V0IixlLkRlbGV0ZUNoYXJ0TGF5b3V0PSJEZWxldGUgY2hhcnQgbGF5b3V0IixlLkxvYWRDaGFydExheW91dD0iTG9hZCBjaGFydCBsYXlvdXQiLGUuQWRkVG9GYXZvcml0ZXM9IkFkZCB0byBmYXZvcml0ZXMiLGUuU29ydD0iU29ydCJ9KGR8fChkPXt9KSl9LDE1MjY5OShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtUVlhXaW5kb3dFdmVudHM6KCk9PnN9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDkzMjM2NSk7Y29uc3Qgcj0oMCxpLmdldExvZ2dlcikoIlhXaW5kb3dFdmVudHMiKTt2YXIgczshZnVuY3Rpb24oZSl7Y29uc3QgdD0idHZ4d2V2ZW50cy4iLG89e307bGV0IGk7d2luZG93LkJyb2FkY2FzdENoYW5uZWw/KGk9bmV3IEJyb2FkY2FzdENoYW5uZWwoInR2eHdldmVudHMiKSxpLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLChmdW5jdGlvbihlKXtjb25zdHtkYXRhOntldmVudDp0LHZhbHVlOml9fT1lO29bdF0mJm9bdF0uZm9yRWFjaCgoZT0+e2UoaSl9KSl9KSksZnVuY3Rpb24oKXtjb25zdCBlPVtdLG89cGVyZm9ybWFuY2Uubm93KCk7Zm9yKGxldCBvPTA7bzxuLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDtvKyspe2NvbnN0IGk9bi5UVkxvY2FsU3RvcmFnZS5rZXkobyk7aS5zdGFydHNXaXRoKHQpJiZlLnB1c2goaSl9Y29uc3QgaT1uLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDtmb3IoY29uc3QgdCBvZiBlKW4uVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0KTtjb25zdCBzPXBlcmZvcm1hbmNlLm5vdygpLW87ci5sb2dOb3JtYWwoYFRvdGFsIGtleXMgYW1vdW50IGluIGxvY2FsIHN0b3JhZ2Ugb24gb3BlcmF0aW9uIHN0YXJ0OiAke2l9YCksci5sb2dOb3JtYWwoYEtleXMgYW1vdW50IGluIGxvY2FsIHN0b3JhZ2UgdG8gYmUgZGVsZXRlZDogJHtlLmxlbmd0aH1gKSxyLmxvZ05vcm1hbChgS2V5cyB0byBiZSBkZWxldGVkIGZyb20gbG9jYWwgc3RvcmFnZTogJHtKU09OLnN0cmluZ2lmeShlKX1gKSxyLmxvZ05vcm1hbChgUmVtb3Zpbmcga2V5cyBmcm9tIGxvY2FsIHN0b3JhZ2UgdG9vayAke3N9IG1zYCl9KCkpOndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdG9yYWdlIiwoZnVuY3Rpb24oZSl7Y29uc3R7bmV3VmFsdWU6aSxrZXk6cn09ZTtpZihudWxsPT09aXx8IXJ8fCFyLnN0YXJ0c1dpdGgodCkpcmV0dXJuO2NvbnN0IHM9ci5zdWJzdHJpbmcoMTEpO29bc10mJm9bc10uZm9yRWFjaCgodD0+e3QoZS5uZXdWYWx1ZSl9KSk7bi5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHIpfSkpLGUub249ZnVuY3Rpb24oZSx0KXtvW2VdfHwob1tlXT1bXSksb1tlXS5wdXNoKHQpfSxlLm9mZj1mdW5jdGlvbihlLHQpe2lmKCFvW2VdKXJldHVybjtjb25zdCBpPW9bZV0uaW5kZXhPZih0KTstMSE9PWkmJigxPT09b1tlXS5sZW5ndGg/ZGVsZXRlIG9bZV06b1tlXS5zcGxpY2UoaSwxKSl9LGUuZW1pdD1mdW5jdGlvbihlLG89RGF0ZS5ub3coKSl7dHJ5e2k/aS5wb3N0TWVzc2FnZSh7ZXZlbnQ6ZSx2YWx1ZTpvfSk6bi5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHQrZSxvLnRvU3RyaW5nKCkpfWNhdGNoKGUpe3IubG9nRXJyb3IoZS5tZXNzYWdlKX19fShzfHwocz17fSkpfSw3MDA4MDkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7REVDRU1CRVI6KCk9PmcsRklSU1RfREFZX09GX1dFRUs6KCk9Pl8sRlJJREFZOigpPT5oLEpBTlVBUlk6KCk9Pm0sTEFTVF9EQVlfT0ZfV0VFSzooKT0+cCxNT05EQVk6KCk9PmEsU0FUVVJEQVk6KCk9PnUsU1VOREFZOigpPT5zLFRIVVJTREFZOigpPT5kLFRVRVNEQVk6KCk9PmwsV0VETkVTREFZOigpPT5jLGFkZF9kYXRlOigpPT5JLGFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdDooKT0+TSxhZGRfbWludXRlczooKT0+UixjYWxfdG9fdXRjOigpPT5WLGNsb25lOigpPT5MLGRheXNfcGVyX3llYXI6KCk9PkQsZ2V0X2NhbDooKT0+JCxnZXRfY2FsX2Zyb21fdW5peF90aW1lc3RhbXBfbXM6KCk9PlcsZ2V0X2NhbF91dGM6KCk9PnEsZ2V0X2RheV9vZl9tb250aDooKT0+QyxnZXRfZGF5X29mX3dlZWs6KCk9PmssZ2V0X2RheV9vZl95ZWFyOigpPT5ULGdldF9taW51dGVzX2Zyb21fbWlkbmlnaHQ6KCk9PkUsZ2V0X21pbnV0ZXNfd2l0aF9ob3VyczooKT0+eCxnZXRfbW9udGg6KCk9PmIsZ2V0X3RpbWV6b25lOigpPT5ILGdldF95ZWFyOigpPT55LGlzX2xlYXBfeWVhcjooKT0+TyxtaW51dGVzUGVyRGF5OigpPT52LG1pbnV0ZXNQZXJXZWVrOigpPT5mLHNldF9obXM6KCk9PkEsCnNldF9zZWNvbmRzOigpPT5GLHRpbWVfc2Vjb25kczooKT0+Tix0aW1lX3NlY29uZHNfZGlmZjooKT0+UCx1dGNfdG9fY2FsOigpPT5CfSk7dmFyIGk9byg3MTIxODEpO2NvbnN0IG49ezA6MCwxOjMxLDI6NTksMzo5MCw0OjEyMCw1OjE1MSw2OjE4MSw3OjIxMiw4OjI0Myw5OjI3MywxMDozMDQsMTE6MzM0fTtjbGFzcyBye2NvbnN0cnVjdG9yKGUpe3RoaXMuX2ludmFsaWQ9ITEsdGhpcy5fbmFtZT1lO2xldCB0PWkudHpEYXRhPy5bZV0/P251bGw7IXQmJlUmJih0PVUuaW5zdGFuY2UoKS5nZXRUaW1lem9uZURhdGEoZSkpLHR8fCh0PXt0aW1lOltdLG9mZnNldDpbXX0sdGhpcy5faW52YWxpZD0hMCksdC50aW1lLmxlbmd0aCE9PXQub2Zmc2V0Lmxlbmd0aCYmKHQ9e3RpbWU6W10sb2Zmc2V0OltdfSx0aGlzLl9pbnZhbGlkPSEwKTtjb25zdCBvPXQ7aWYoIW8udGltZV91dGMpe2NvbnN0IGU9dC50aW1lLGk9dC5vZmZzZXQsbj1lLmxlbmd0aCxyPW5ldyBBcnJheShuKTtmb3IobGV0IHQ9MDt0PG47dCsrKWVbdF0qPTFlMyxpW3RdKj0xZTMsclt0XT1lW3RdLWlbdF07by50aW1lX3V0Yz1yfXRoaXMudHo9b31vZmZzZXRfdXRjKGUpe3JldHVybiByLm9mZnNldCh0aGlzLnR6LnRpbWVfdXRjLHRoaXMudHoub2Zmc2V0LGUpfW9mZnNldF9sb2MoZSl7cmV0dXJuIHIub2Zmc2V0KHRoaXMudHoudGltZSx0aGlzLnR6Lm9mZnNldCxlKX1uYW1lKCl7cmV0dXJuIHRoaXMuX25hbWV9aXNfdmFsaWQoKXtyZXR1cm4hdGhpcy5faW52YWxpZH1jb3JyZWN0aW9uX2xvYyhlKXtjb25zdCB0PXRoaXMudHoudGltZSxvPXRoaXMudHoub2Zmc2V0LGk9eih0LGUpO2lmKGk8MSlyZXR1cm4gMDtjb25zdCBuPW9baV0tb1tpLTFdO2lmKG4+MCl7aWYoZS10W2ktMV08PW4pcmV0dXJuIG59cmV0dXJuIDB9c3RhdGljIG9mZnNldChlLHQsbyl7Y29uc3QgaT16KGUsbyk7cmV0dXJuLTE9PT1pPzA6dFtpXX19Y29uc3Qgcz0xLGE9MixsPTMsYz00LGQ9NSxoPTYsdT03LF89cyxwPXUsbT0wLGc9MTEsdj0xNDQwLGY9MTAwODA7ZnVuY3Rpb24geShlKXtyZXR1cm4gZS5nZXRVVENGdWxsWWVhcigpfWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGUuZ2V0VVRDTW9udGgoKX1mdW5jdGlvbiBTKGUpe3JldHVybiBlLmdldFVUQ0hvdXJzKCl9ZnVuY3Rpb24gdyhlKXtyZXR1cm4gZS5nZXRVVENNaW51dGVzKCl9ZnVuY3Rpb24gQyhlKXtyZXR1cm4gZS5nZXRVVENEYXRlKCl9ZnVuY3Rpb24gayhlKXtyZXR1cm4gZS5nZXRVVENEYXkoKSsxfWZ1bmN0aW9uIFQoZSl7Y29uc3QgdD1lLmdldFVUQ01vbnRoKCk7bGV0IG89blt0XTtyZXR1cm4gdD5tKzEmJk8oZS5nZXRVVENGdWxsWWVhcigpKSYmKG8rPTEpLG8rZS5nZXRVVENEYXRlKCl9ZnVuY3Rpb24gRShlKXtyZXR1cm4gNjAqUyhlKSt3KGUpfWZ1bmN0aW9uIHgoZSl7cmV0dXJuIEUoZSl9ZnVuY3Rpb24gQShlLHQsbyxpLG4scil7ZS5zZXRVVENIb3Vycyh0KSxlLnNldFVUQ01pbnV0ZXMobyksZS5zZXRVVENTZWNvbmRzKGkpLGUuc2V0VVRDTWlsbGlzZWNvbmRzKG4pLHZvaWQgMCE9PXImJmZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1lLmdldFRpbWUoKSxpPXQuY29ycmVjdGlvbl9sb2Mobyk7ZS5zZXRUaW1lKG8raSl9KGUscil9ZnVuY3Rpb24gTShlLHQsbyl7Y29uc3QgaT1lLm9mZnNldF91dGModC5nZXRUaW1lKCkpLG49TCh0KTtJKG4sbyk7Y29uc3Qgcj1lLm9mZnNldF91dGMobi5nZXRUaW1lKCkpO3JldHVybiBuLnNldFRpbWUobi5nZXRUaW1lKCkraS1yKSxufWZ1bmN0aW9uIEkoZSx0KXtlLnNldFRpbWUoZS5nZXRUaW1lKCkrODY0ZTUqdCl9ZnVuY3Rpb24gUihlLHQpe2Uuc2V0VGltZShlLmdldFRpbWUoKSs2MCp0KjFlMyl9ZnVuY3Rpb24gRihlLHQpe2NvbnN0IG89ODY0MDAsaT10JW88MD8tMTowLG49TWF0aC50cnVuYyh0L28pK2kscj10LW4qbyxzPU1hdGgudHJ1bmMoci8zNjAwKSxhPU1hdGgudHJ1bmMociUzNjAwLzYwKTtBKGUscyxhLHItMzYwMCpzLTYwKmEsMCksSShlLG4pfWZ1bmN0aW9uIEwoZSl7cmV0dXJuIG5ldyBEYXRlKGUuZ2V0VGltZSgpKX1mdW5jdGlvbiBEKGUpe3JldHVybiBPKGUpPzM2NjozNjV9ZnVuY3Rpb24gTyhlKXtyZXR1cm4gZSU0PT0wJiYoZSUxMDAhPTB8fGUlNDAwPT0wKX1mdW5jdGlvbiBOKGUpe3JldHVybiAxZTMqZX1mdW5jdGlvbiBQKGUsdCl7cmV0dXJuIEcoZSktRyh0KX1mdW5jdGlvbiBCKGUsdCl7cmV0dXJuIG5ldyBEYXRlKGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1lLm9mZnNldF91dGModCk7cmV0dXJuIHQrb30oZSx0KSl9ZnVuY3Rpb24gJChlLHQsbyxpLG4scixzKXtjb25zdCBhPW5ldyBEYXRlKERhdGUuVVRDKHQsbyxpLG58fDAscnx8MCxzfHwwKSksbD1lLm9mZnNldF91dGMoK2EpO3JldHVybiBuZXcgRGF0ZShhLnZhbHVlT2YoKS1sKX1mdW5jdGlvbiBXKGUsdCl7cmV0dXJuIG5ldyBEYXRlKHQrZS5vZmZzZXRfdXRjKHQpKX1mdW5jdGlvbiBxKGUsdCxvLGk9MCxuPTAscj0wKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEMoZSx0LG8saSxuLHIpKX1mdW5jdGlvbiBWKGUsdCxvKXtsZXQgaT10LmdldFRpbWUoKTtvJiYoaSs9ZS5jb3JyZWN0aW9uX2xvYyhpKSk7cmV0dXJuIGktZS5vZmZzZXRfbG9jKGkpfWZ1bmN0aW9uIEgoZSl7cmV0dXJuIG5ldyByKGUpfWxldCBVO2Z1bmN0aW9uIHooZSx0KXtjb25zdCBvPWUubGVuZ3RoO2lmKDA9PT1vKXJldHVybi0xO2lmKGlzTmFOKHQpKXRocm93IEVycm9yKCJLZXkgaXMgTmFOIik7bGV0IGk9MCxuPW8tMSxyPWooKGkrbikvMik7Zm9yKDs7KXtpZihlW3JdPnQpe2lmKG49ci0xLG48aSlyZXR1cm4gcn1lbHNlIGlmKGk9cisxLG48aSlyZXR1cm4gcjxvLTE/cisxOi0xO3I9aigoaStuKS8yKX19ZnVuY3Rpb24gaihlKXtyZXR1cm4gTWF0aC50cnVuYyhlKX1mdW5jdGlvbiBHKGUpe3JldHVybiBlPDA/aihlLzFlMyktKGUlMWUzIT0wPzE6MCk6aihlLzFlMyl9fSw3NzkzODkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWN0aW9uR3JvdXA6KCk9Pm59KTt2YXIgaT1vKDk5MjgwMyk7Y2xhc3Mgbntjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2FjdGlvbnM9bmV3IE1hcCx0aGlzLl9tYW5hZ2VyPWUsCnRoaXMub3JkZXI9dD8ub3JkZXI/PzAsdGhpcy5tb2RhbD0hKCF0fHwhdC5tb2RhbCksdCYmKHRoaXMuZGVzYz10LmRlc2MpLHQmJnQuaXNEaXNhYmxlZD8iZnVuY3Rpb24iPT10eXBlb2YgdC5pc0Rpc2FibGVkP3RoaXMuaXNEaXNhYmxlZD10LmlzRGlzYWJsZWQ6dGhpcy5pc0Rpc2FibGVkPSgpPT4hMDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiExLHRoaXMuX21hbmFnZXIucmVnaXN0ZXJHcm91cCh0aGlzKX1hZGQoZSl7bGV0IHQ9dGhpcy5fYWN0aW9ucy5nZXQoZS5ob3RrZXkpO3R8fCh0PVtdLHRoaXMuX2FjdGlvbnMuc2V0KGUuaG90a2V5LHQpKTtjb25zdCBvPW5ldyBpLkFjdGlvbih0aGlzLGUpO3JldHVybiB0LnB1c2gobyksb31yZW1vdmUoZSl7Y29uc3QgdD10aGlzLl9hY3Rpb25zLmdldChlLmhvdGtleSk7aWYoIXQpcmV0dXJuO2NvbnN0IG89dC5maW5kSW5kZXgoKHQ9PnQ9PT1lKSk7bz49MCYmKDE9PT10Lmxlbmd0aD90aGlzLl9hY3Rpb25zLmRlbGV0ZShlLmhvdGtleSk6dC5zcGxpY2UobywxKSl9aGFuZGxlSG90a2V5KGUsdCl7Y29uc3Qgbz10aGlzLl9hY3Rpb25zLmdldChlKTtpZighbylyZXR1cm4hMTtmb3IoY29uc3QgaSBvZiBvKWlmKCghaS5lbGVtZW50fHx0LnRhcmdldCYmaS5lbGVtZW50LmNvbnRhaW5zKHQudGFyZ2V0KSkmJiFpLmlzRGlzYWJsZWQodCkpcmV0dXJuIHQucmVwZWF0JiYhaS5pc1JlcGVhdEFjY2VwdGVkfHwoaS5oYW5kbGVyKHQpLHRoaXMuX2NhbGxNYXRjaGVkSG90a2V5SGFuZGxlcihlKSksdC5wcmV2ZW50RGVmYXVsdCgpLCEwO3JldHVybiExfXByb21vdGUoKXt0aGlzLl9tYW5hZ2VyLnByb21vdGVHcm91cCh0aGlzKX1kZXN0cm95KCl7Zm9yKGNvbnN0WyxlXW9mIHRoaXMuX2FjdGlvbnMpZm9yKGNvbnN0IHQgb2YgZSl0LmRlc3Ryb3koKTt0aGlzLl9hY3Rpb25zLmNsZWFyKCksdGhpcy5fbWFuYWdlci51bnJlZ2lzdGVyR3JvdXAodGhpcyl9c3RhdGljIHNldE1hdGNoZWRIb3RrZXlIYW5kbGVyKGUpe24uX21hdGNoZWRIb3RrZXlIYW5kbGVyPWV9X2NhbGxNYXRjaGVkSG90a2V5SGFuZGxlcihlKXtuLl9tYXRjaGVkSG90a2V5SGFuZGxlciYmbi5fbWF0Y2hlZEhvdGtleUhhbmRsZXIoZSl9fX0sMjkxMzQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0FjdGlvbk1hbmFnZXI6KCk9Pmx9KTt2YXIgaT1vKDIzMjM2NCksbj1vKDIzNTcyNCkscj1vKDcyMTM2OSkscz1vKDY5NjIwOCk7Y2xhc3MgYSBleHRlbmRzIGkuV2F0Y2hlZFZhbHVle3NldFZhbHVlKGUsdCl7Y29uc3Qgbz10aGlzLnZhbHVlKCk7KHR8fHZvaWQgMD09PW98fG8uY29kZSE9PWUuY29kZXx8by5tb2RpZmllcnMhPT1lLm1vZGlmaWVycykmJnN1cGVyLnNldFZhbHVlKGUpfX1jbGFzcyBse2NvbnN0cnVjdG9yKCl7dGhpcy5fZ3JvdXBzPVtdLHRoaXMuX3ByZXNzZWRLZXlzPW5ldyBpLldhdGNoZWRWYWx1ZSgwKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGU9bmV3IGEobmV3IHMuS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKDApKSx0aGlzLl9rZXlEb3duTGlzdGVuZXI9ZT0+e2lmKGUuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3QgdD0oMCxuLmhhc2hGcm9tRXZlbnQpKGUpO2lmKHRoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKHQpLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgcy5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAsbi5tb2RpZmllcnNGcm9tRXZlbnQpKGUpLGUuY29kZSkpLCEoMCxyLmlzTmF0aXZlVUlJbnRlcmFjdGlvbikodCxlLnRhcmdldCkpZm9yKGxldCBvPXRoaXMuX2dyb3Vwcy5sZW5ndGg7by0tID4wOyl7Y29uc3QgaT10aGlzLl9ncm91cHNbb107aWYoIWkuaXNEaXNhYmxlZCgpKXtpZihpLmhhbmRsZUhvdGtleSh0LGUpKXJldHVybjtpZihpLm1vZGFsKXJldHVybn19fSx0aGlzLl9rZXlVcExpc3RlbmVyPWU9Pntjb25zdCB0PSgwLG4uaGFzaEZyb21FdmVudCkoZSk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUodCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyBzLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgoMCxuLm1vZGlmaWVyc0Zyb21FdmVudCkoZSksIiIpKX0sdGhpcy5fYmx1ckV2ZW50PSgpPT57dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyBzLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwLCIiKSl9LHRoaXMuX21vdXNlRXZlbnQ9ZT0+e2NvbnN0IHQ9KDAsbi5tb2RpZmllcnNGcm9tRXZlbnQpKGUpLG89MjU1Jih0aGlzLl9wcmVzc2VkS2V5cy52YWx1ZSgpPz8wKTt0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZSh0fG8pfX1saXN0ZW4oZSl7ZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLGUuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9dW5saXN0ZW4oZSl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9cmVnaXN0ZXJHcm91cChlKXt0aGlzLl9ncm91cHMucHVzaChlKSx0aGlzLnNvcnRHcm91cHMoKX11bnJlZ2lzdGVyR3JvdXAoZSl7Zm9yKGxldCB0PXRoaXMuX2dyb3Vwcy5sZW5ndGg7dC0tOyl0aGlzLl9ncm91cHNbdF09PT1lJiZ0aGlzLl9ncm91cHMuc3BsaWNlKHQsMSl9cHJvbW90ZUdyb3VwKGUpe2NvbnN0IHQ9dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCksbz1jKGUsdCk7bGV0IGk9dGhpcy5fZ3JvdXBzLmZpbmRJbmRleCgoZT0+YyhlLHQpPT09bykpLG49MAo7Zm9yKDtpPHRoaXMuX2dyb3Vwcy5sZW5ndGgmJmModGhpcy5fZ3JvdXBzW2ldLHQpPT09bzspe2NvbnN0IHI9dGhpcy5fZ3JvdXBzW2ldO3I9PT1lP249MTpjKHIsdCk9PT1vJiYodGhpcy5fZ3JvdXBzW2ktbl09ciksaSsrfXRoaXMuX2dyb3Vwc1tpLW5dPWV9cHJlc3NlZEtleXMoKXtyZXR1cm4gdGhpcy5fcHJlc3NlZEtleXMucmVhZG9ubHkoKX1rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKXtyZXR1cm4gdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnJlYWRvbmx5KCl9c29ydEdyb3Vwcygpe2NvbnN0IGU9dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCk7dGhpcy5fZ3JvdXBzLnNvcnQoKCh0LG8pPT5jKG8sZSktYyh0LGUpKSl9X2dldE1pbk9yZGVyKCl7cmV0dXJuIHRoaXMuX2dyb3Vwcy5yZWR1Y2UoKChlLHQpPT5NYXRoLm1pbihlLHQub3JkZXIpKSwwKX1fZ2V0TW9kYWxPcmRlckVwb2NoKCl7cmV0dXJuLTIqKE1hdGguYWJzKHRoaXMuX2dldE1pbk9yZGVyKCkpLTEpfX1mdW5jdGlvbiBjKGUsdCl7cmV0dXJuIGUub3JkZXIrKGUubW9kYWw/dDowKX19LDk5MjgwMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtBY3Rpb246KCk9Pml9KTtjbGFzcyBpe2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fZ3JvdXA9ZTtjb25zdHtob3RrZXk6byxoYW5kbGVyOmksZGVzYzpuLGlzRGlzYWJsZWQ6cixlbGVtZW50OnM9bnVsbCxpc1JlcGVhdEFjY2VwdGVkOmE9ITF9PXQ7dGhpcy5ob3RrZXk9byx0aGlzLmhhbmRsZXI9aSx0aGlzLmRlc2M9bix0aGlzLmVsZW1lbnQ9cyx0aGlzLmlzUmVwZWF0QWNjZXB0ZWQ9YSx0aGlzLmlzRGlzYWJsZWQ9cj8iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOigpPT4hMDooKT0+ITF9ZGVzdHJveSgpe3RoaXMuX2dyb3VwJiYodGhpcy5fZ3JvdXAucmVtb3ZlKHRoaXMpLHRoaXMuX2dyb3VwPW51bGwpfX19LDcyNzA5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NyZWF0ZUdyb3VwOigpPT5zfSk7dmFyIGk9bygyOTEzNDEpLG49byg3NzkzODkpO2NvbnN0IHI9bmV3IGkuQWN0aW9uTWFuYWdlcjtyLnByZXNzZWRLZXlzKCksci5rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKTtmdW5jdGlvbiBzKGUpe3JldHVybiBuZXcgbi5BY3Rpb25Hcm91cChyLGUpfX0sMjM1NzI0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse01vZGlmaWVyczooKT0+cyxoYXNoRnJvbUV2ZW50OigpPT5sLGhvdGtleUhhc2hUb0FyaWFLZXlzaG9ydGN1dHM6KCk9PnAsaHVtYW5SZWFkYWJsZUhhc2g6KCk9PnUsaHVtYW5SZWFkYWJsZU1vZGlmaWVyczooKT0+Yyxpc01hY0tleWJvYXJkOigpPT5yLG1vZGlmaWVyc0Zyb21FdmVudDooKT0+YX0pO3ZhciBpLG49byg3Mzg0NTgpOyFmdW5jdGlvbihlKXtlW2UuS2V5Q29kZT0yNTVdPSJLZXlDb2RlIixlW2UuQ29udHJvbD0yNTZdPSJDb250cm9sIixlW2UuQWx0PTUxMl09IkFsdCIsZVtlLlNoaWZ0PTEwMjRdPSJTaGlmdCIsZVtlLk1ldGE9MjA0OF09Ik1ldGEifShpfHwoaT17fSkpO2NvbnN0IHI9bi5pc01hY3x8bi5pc0lPUzt2YXIgcztmdW5jdGlvbiBhKGUpe2xldCB0PTA7cmV0dXJuIGUuc2hpZnRLZXkmJih0Kz0xMDI0KSxlLmFsdEtleSYmKHQrPTUxMiksZS5jdHJsS2V5JiYodCs9MjU2KSxlLm1ldGFLZXkmJih0Kz0yMDQ4KSx0fWZ1bmN0aW9uIGwoZSl7cmV0dXJuIGEoZSl8ZS5rZXlDb2RlfSFmdW5jdGlvbihlKXtlW2UuTm9uZT0wXT0iTm9uZSIsZVtlLkFsdD01MTJdPSJBbHQiLGVbZS5TaGlmdD0xMDI0XT0iU2hpZnQiLGVbZS5Nb2Q9cj8yMDQ4OjI1Nl09Ik1vZCIsZVtlLkNvbnRyb2w9MjU2XT0iQ29udHJvbCIsZVtlLk1ldGE9MjA0OF09Ik1ldGEifShzfHwocz17fSkpO2Z1bmN0aW9uIGMoZSx0PSFyKXtsZXQgbz0iIjtyZXR1cm4gMjU2JmUmJihvKz1fKHI/Il4iOiJDdHJsIix0KSksNTEyJmUmJihvKz1fKHI/IuKMpSI6IkFsdCIsdCkpLDEwMjQmZSYmKG8rPV8ocj8i4oenIjoiU2hpZnQiLHQpKSwyMDQ4JmUmJihvKz1fKHI/IuKMmCI6IldpbiIsdCkpLG99Y29uc3QgZD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4OnI/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0saD17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCBlPTE7ZTw9MTY7ZSsrKWRbZSsxMTFdPWBGJHtlfWAsaFtlKzExMV09YEYke2V9YDtmdW5jdGlvbiB1KGUpe2xldCB0PWMoZSk7Y29uc3Qgbz0yNTUmZTtyZXR1cm4gdCs9byBpbiBkP2Rbb106U3RyaW5nLmZyb21DaGFyQ29kZShvKSx0fWZ1bmN0aW9uIF8oZSx0KXtyZXR1cm5gJHtlfSR7dD8iICsgIjpyPyIgIjoiIn1gfWZ1bmN0aW9uIHAoZSl7Y29uc3QgdD1bXTsyNTYmZSYmdC5wdXNoKCJDdHJsIiksNTEyJmUmJnQucHVzaCgiQWx0IiksMTAyNCZlJiZ0LnB1c2goIlNoaWZ0IiksMjA0OCZlJiZ0LnB1c2goIk1ldGEiKTtjb25zdCBvPTI1NSZlO3JldHVybiBvIGluIGQ/dC5wdXNoKGRbb10pOnQucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKSx0LmpvaW4oIisiKX19LDY5NjIwOChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9Pm59KTt2YXIgaT1vKDIzNTcyNCk7Y2xhc3Mgbntjb25zdHJ1Y3RvcihlLHQpe3RoaXMubW9kaWZpZXJzPWUsdGhpcy5jb2RlPXR9YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7CnJldHVybiBpLmlzTWFjS2V5Ym9hcmQ/Ik1ldGFMZWZ0Ij09PXRoaXMuY29kZXx8Ik1ldGFSaWdodCI9PT10aGlzLmNvZGV8fCJPU0xlZnQiPT09dGhpcy5jb2RlfHwiT1NSaWdodCI9PT10aGlzLmNvZGU6IkNvbnRyb2xMZWZ0Ij09PXRoaXMuY29kZXx8IkNvbnRyb2xSaWdodCI9PT10aGlzLmNvZGV9fX0sNzIxMzY5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2lzTmF0aXZlVUlJbnRlcmFjdGlvbjooKT0+cixpc1RleHRFZGl0aW5nRmllbGQ6KCk9Pm59KTt2YXIgaT1vKDIzNTcyNCk7ZnVuY3Rpb24gbihlKXtpZigiSU5QVVQiPT09ZS50YWdOYW1lKXtjb25zdCB0PWUudHlwZTtyZXR1cm4idGV4dCI9PT10fHwiZW1haWwiPT09dHx8Im51bWJlciI9PT10fHwicGFzc3dvcmQiPT09dHx8InNlYXJjaCI9PT10fHwidGVsIj09PXR8fCJ1cmwiPT09dH1yZXR1cm4iVEVYVEFSRUEiPT09ZS50YWdOYW1lfHxlLmlzQ29udGVudEVkaXRhYmxlfWZ1bmN0aW9uIHIoZSx0KXtpZighdClyZXR1cm4hMTtjb25zdCBvPTI1NSZlO2lmKDI3PT09b3x8bz4+PjQ9PTcpcmV0dXJuITE7c3dpdGNoKGVebyl7Y2FzZSBpLk1vZGlmaWVycy5BbHQ6cmV0dXJuKDM4PT09b3x8NDA9PT1vKSYmIlNFTEVDVCI9PT10LnRhZ05hbWV8fG4odCk7Y2FzZSBpLk1vZGlmaWVycy5BbHQraS5Nb2RpZmllcnMuU2hpZnQ6cmV0dXJuIG4odCk7Y2FzZSBpLk1vZGlmaWVycy5Nb2Q6aWYoNjc9PT1vfHwhaS5pc01hY0tleWJvYXJkJiY0NT09PW8pe2NvbnN0IGU9dC5vd25lckRvY3VtZW50JiZ0Lm93bmVyRG9jdW1lbnQuZ2V0U2VsZWN0aW9uKCk7aWYoZSYmIWUuaXNDb2xsYXBzZWQpcmV0dXJuITB9cmV0dXJuIG4odCk7Y2FzZSBpLk1vZGlmaWVycy5Nb2QraS5Nb2RpZmllcnMuU2hpZnQ6cmV0dXJuIG8+PTMzJiZvPD00MCYmbih0KTtjYXNlIGkuTW9kaWZpZXJzLlNoaWZ0OmNhc2UgMDpyZXR1cm4gOT09PW8/ISghdC5vd25lckRvY3VtZW50fHx0PT09dC5vd25lckRvY3VtZW50LmJvZHl8fHQ9PT10Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KTooIWZ1bmN0aW9uKGUpe2lmKCJCVVRUT04iPT09ZS50YWdOYW1lKXJldHVybiEwO2lmKCJJTlBVVCI9PT1lLnRhZ05hbWUpe2NvbnN0IHQ9ZS50eXBlO2lmKCJzdWJtaXQiPT09dHx8ImJ1dHRvbiI9PT10fHwicmVzZXQiPT09dHx8ImNoZWNrYm94Ij09PXR8fCJyYWRpbyI9PT10KXJldHVybiEwfXJldHVybiExfSh0KXx8MTM9PT1vfHwzMj09PW98fDk9PT1vKSYmKCJmb3JtImluIHR8fHQuaXNDb250ZW50RWRpdGFibGUpfXJldHVybiExfX0sODY4MTEwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2FuY2hvcnM6KCk9PnIsbWFrZUFuY2hvcmFibGU6KCk9PnN9KTt2YXIgaSxuPW8oNzc5NDc0KTshZnVuY3Rpb24oZSl7ZS5Ub3A9InRvcCIsZS5Cb3R0b209ImJvdHRvbSIsZS5Ub3BSaWdodD0idG9wUmlnaHQifShpfHwoaT17fSkpO2NvbnN0IHI9e2JvdHRvbTp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoibGVmdCIsdmVydGljYWw6InRvcCJ9LHRhcmdldEF0dGFjaG1lbnQ6e2hvcml6b250YWw6ImxlZnQiLHZlcnRpY2FsOiJib3R0b20ifX0sdG9wOnthdHRhY2htZW50Ontob3Jpem9udGFsOiJsZWZ0Iix2ZXJ0aWNhbDoiYm90dG9tIn0sdGFyZ2V0QXR0YWNobWVudDp7aG9yaXpvbnRhbDoibGVmdCIsdmVydGljYWw6InRvcCJ9fSx0b3BSaWdodDp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoicmlnaHQiLHZlcnRpY2FsOiJib3R0b20ifSx0YXJnZXRBdHRhY2htZW50Ontob3Jpem9udGFsOiJyaWdodCIsdmVydGljYWw6InRvcCJ9fSxib3R0b21SaWdodDp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoicmlnaHQiLHZlcnRpY2FsOiJ0b3AifSx0YXJnZXRBdHRhY2htZW50Ontob3Jpem9udGFsOiJyaWdodCIsdmVydGljYWw6ImJvdHRvbSJ9fX07ZnVuY3Rpb24gcyhlKXt2YXIgdDtyZXR1cm4odD1jbGFzcyBleHRlbmRzIG4uUHVyZUNvbXBvbmVudHtyZW5kZXIoKXtjb25zdHthbmNob3I6dD0iYm90dG9tIn09dGhpcy5wcm9wcztyZXR1cm4gbi5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMsYXR0YWNobWVudDpyW3RdLmF0dGFjaG1lbnQsdGFyZ2V0QXR0YWNobWVudDpyW3RdLnRhcmdldEF0dGFjaG1lbnR9KX19KS5kaXNwbGF5TmFtZT0iQW5jaG9yYWJsZSBDb21wb25lbnQiLHR9fSwzODQzNzAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7bWFrZUF0dGFjaGFibGU6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDEyOTM2NSk7ZnVuY3Rpb24gcihlKXt2YXIgdDtyZXR1cm4odD1jbGFzcyBleHRlbmRzIGkuUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3RvcihlKXtzdXBlcihlKSx0aGlzLl9nZXRDb21wb25lbnRJbnN0YW5jZT1lPT57dGhpcy5faW5zdGFuY2U9ZX0sdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHM9KCk9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT50aGlzLnNldFN0YXRlKHRoaXMuX2NhbGNQcm9wcyh0aGlzLnByb3BzKSkpKX0sdGhpcy5zdGF0ZT10aGlzLl9nZXRTdGF0ZUZyb21Qcm9wcygpfWNvbXBvbmVudERpZE1vdW50KCl7dGhpcy5faW5zdGFuY2VFbGVtPW4uZmluZERPTU5vZGUodGhpcy5faW5zdGFuY2UpLHRoaXMucHJvcHMuYXR0YWNoT25jZXx8dGhpcy5fc3Vic2NyaWJlKCksdGhpcy5zZXRTdGF0ZSh0aGlzLl9jYWxjUHJvcHModGhpcy5wcm9wcykpfWNvbXBvbmVudERpZFVwZGF0ZShlKXtlLmNoaWxkcmVuPT09dGhpcy5wcm9wcy5jaGlsZHJlbiYmZS50b3A9PT10aGlzLnByb3BzLnRvcCYmZS5sZWZ0PT09dGhpcy5wcm9wcy5sZWZ0JiZlLndpZHRoPT09dGhpcy5wcm9wcy53aWR0aHx8dGhpcy5zZXRTdGF0ZSh0aGlzLl9nZXRTdGF0ZUZyb21Qcm9wcygpLCgoKT0+dGhpcy5zZXRTdGF0ZSh0aGlzLl9jYWxjUHJvcHModGhpcy5wcm9wcykpKSl9cmVuZGVyKCl7cmV0dXJuIGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7c3R5bGU6e3Bvc2l0aW9uOiJhYnNvbHV0ZSIsd2lkdGg6IjEwMCUiLHRvcDowLGxlZnQ6MH19LGkuY3JlYXRlRWxlbWVudChlLHsuLi50aGlzLnByb3BzLHJlZjp0aGlzLl9nZXRDb21wb25lbnRJbnN0YW5jZSx0b3A6dGhpcy5zdGF0ZS50b3AsCmJvdHRvbTp2b2lkIDAhPT10aGlzLnN0YXRlLmJvdHRvbT90aGlzLnN0YXRlLmJvdHRvbToiYXV0byIscmlnaHQ6dm9pZCAwIT09dGhpcy5zdGF0ZS5yaWdodD90aGlzLnN0YXRlLnJpZ2h0OiJhdXRvIixsZWZ0OnRoaXMuc3RhdGUubGVmdCx3aWR0aDp0aGlzLnN0YXRlLndpZHRoLG1heFdpZHRoOnRoaXMuc3RhdGUubWF4V2lkdGh9LHRoaXMucHJvcHMuY2hpbGRyZW4pKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMuX3Vuc3Vic3JpYmUoKX1fZ2V0U3RhdGVGcm9tUHJvcHMoKXtyZXR1cm57Ym90dG9tOnRoaXMucHJvcHMuYm90dG9tLGxlZnQ6dGhpcy5wcm9wcy5sZWZ0LHJpZ2h0OnRoaXMucHJvcHMucmlnaHQsdG9wOnZvaWQgMCE9PXRoaXMucHJvcHMudG9wP3RoaXMucHJvcHMudG9wOi0xZTQsd2lkdGg6dGhpcy5wcm9wcy5pbmhlcml0V2lkdGhGcm9tVGFyZ2V0P3RoaXMucHJvcHMudGFyZ2V0JiZ0aGlzLnByb3BzLnRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDp0aGlzLnByb3BzLndpZHRoLG1heFdpZHRoOnRoaXMucHJvcHMuaW5oZXJpdE1heFdpZHRoRnJvbVRhcmdldCYmdGhpcy5wcm9wcy50YXJnZXQmJnRoaXMucHJvcHMudGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRofX1fY2FsY1Byb3BzKGUpe2lmKGUudGFyZ2V0JiZlLmF0dGFjaG1lbnQmJmUudGFyZ2V0QXR0YWNobWVudCl7Y29uc3QgdD10aGlzLl9jYWxjVGFyZ2V0UHJvcHMoZS50YXJnZXQsZS5hdHRhY2htZW50LGUudGFyZ2V0QXR0YWNobWVudCk7aWYobnVsbD09PXQpcmV0dXJue307Y29uc3R7d2lkdGg6byxpbmhlcml0V2lkdGhGcm9tVGFyZ2V0Omk9ITAsaW5oZXJpdE1heFdpZHRoRnJvbVRhcmdldDpuPSExfT10aGlzLnByb3BzLHI9e3dpZHRoOmk/dC53aWR0aDpvLG1heFdpZHRoOm4/dC53aWR0aDp2b2lkIDB9O3N3aXRjaChlLmF0dGFjaG1lbnQudmVydGljYWwpe2Nhc2UiYm90dG9tIjpjYXNlIm1pZGRsZSI6ci50b3A9dC55O2JyZWFrO2RlZmF1bHQ6cltlLmF0dGFjaG1lbnQudmVydGljYWxdPXQueX1zd2l0Y2goZS5hdHRhY2htZW50Lmhvcml6b250YWwpe2Nhc2UicmlnaHQiOmNhc2UiY2VudGVyIjpyLmxlZnQ9dC54O2JyZWFrO2RlZmF1bHQ6cltlLmF0dGFjaG1lbnQuaG9yaXpvbnRhbF09dC54fXJldHVybiByfXJldHVybnt9fV9jYWxjVGFyZ2V0UHJvcHMoZSx0LG8pe2NvbnN0IGk9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXRoaXMuX2luc3RhbmNlRWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxyPSJwYXJlbnQiPT09dGhpcy5wcm9wcy5yb290P3RoaXMuX2dldENvb3Jkc1JlbFRvUGFyZW50RWwoZSxpKTp0aGlzLl9nZXRDb29yZHNSZWxUb0RvY3VtZW50KGkpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO2NvbnN0IHM9dGhpcy5fZ2V0RGltZW5zaW9ucyhuKSxhPXRoaXMuX2dldERpbWVuc2lvbnMoaSkud2lkdGg7bGV0IGw9MCxjPTA7c3dpdGNoKHQudmVydGljYWwpe2Nhc2UidG9wIjpjPXJbby52ZXJ0aWNhbF07YnJlYWs7Y2FzZSJib3R0b20iOmM9cltvLnZlcnRpY2FsXS1zLmhlaWdodDticmVhaztjYXNlIm1pZGRsZSI6Yz1yW28udmVydGljYWxdLXMuaGVpZ2h0LzJ9c3dpdGNoKHQuaG9yaXpvbnRhbCl7Y2FzZSJsZWZ0IjpsPXJbby5ob3Jpem9udGFsXTticmVhaztjYXNlInJpZ2h0IjpsPXJbby5ob3Jpem9udGFsXS1zLndpZHRoO2JyZWFrO2Nhc2UiY2VudGVyIjpsPXJbby5ob3Jpem9udGFsXS1zLndpZHRoLzJ9cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0aGlzLnByb3BzLmF0dGFjaG1lbnRPZmZzZXRZJiYoYys9dGhpcy5wcm9wcy5hdHRhY2htZW50T2Zmc2V0WSksIm51bWJlciI9PXR5cGVvZiB0aGlzLnByb3BzLmF0dGFjaG1lbnRPZmZzZXRYJiYobCs9dGhpcy5wcm9wcy5hdHRhY2htZW50T2Zmc2V0WCkse3g6bCx5OmMsd2lkdGg6YX19X2dldENvb3Jkc1JlbFRvRG9jdW1lbnQoZSl7Y29uc3QgdD1wYWdlWU9mZnNldCxvPXBhZ2VYT2Zmc2V0LGk9ZS50b3ArdCxuPWUuYm90dG9tK3Qscj1lLmxlZnQrbztyZXR1cm57dG9wOmksYm90dG9tOm4sbGVmdDpyLHJpZ2h0OmUucmlnaHQrbyxtaWRkbGU6KGkrZS5oZWlnaHQpLzIsY2VudGVyOnIrZS53aWR0aC8yfX1fZ2V0Q29vcmRzUmVsVG9QYXJlbnRFbChlLHQpe2NvbnN0IG89ZS5vZmZzZXRQYXJlbnQ7aWYobnVsbD09PW8pcmV0dXJuIG51bGw7Y29uc3QgaT1vLnNjcm9sbFRvcCxuPW8uc2Nyb2xsTGVmdCxyPWUub2Zmc2V0VG9wK2kscz1lLm9mZnNldExlZnQrbixhPXQud2lkdGgrcztyZXR1cm57dG9wOnIsYm90dG9tOnQuaGVpZ2h0K3IsbGVmdDpzLHJpZ2h0OmEsbWlkZGxlOihyK3QuaGVpZ2h0KS8yLGNlbnRlcjoocyt0LndpZHRoKS8yfX1fZ2V0RGltZW5zaW9ucyhlKXtyZXR1cm57aGVpZ2h0OmUuaGVpZ2h0LHdpZHRoOmUud2lkdGh9fV9zdWJzY3JpYmUoKXsiZG9jdW1lbnQiPT09dGhpcy5wcm9wcy5yb290JiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHMsITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuX3Rocm90dGxlQ2FsY1Byb3BzKSl9X3Vuc3Vic3JpYmUoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLl90aHJvdHRsZUNhbGNQcm9wcywhMCksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHMpfX0pLmRpc3BsYXlOYW1lPSJBdHRhY2hhYmxlIENvbXBvbmVudCIsdH19LDM0Mjc4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RvQW5pbWF0ZTooKT0+cn0pO2NvbnN0IGk9e2Zyb206MCxkdXJhdGlvbjoyNTAsZWFzaW5nOm8oMjE4ODE0KS5lYXNpbmdGdW5jLmVhc2VPdXRDdWJpY307Y2xhc3Mgbntjb25zdHJ1Y3RvcihlKXt0aGlzLl9kb2luZz0hMCx0aGlzLl9jb21wbGV0ZWQ9ITEsdGhpcy5fb3B0aW9ucz17Li4uaSwuLi5lfTtjb25zdCB0PXBlcmZvcm1hbmNlLm5vdygpO3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGU9Pnt0aGlzLl9hbmltYXRpb24odCx0aGlzLl9vcHRpb25zLmZyb20sZSl9KSl9c3RvcCgpewp0aGlzLl9kb2luZz0hMX1jb21wbGV0ZWQoKXtyZXR1cm4gdGhpcy5fY29tcGxldGVkfV9hbmltYXRpb24oZSx0LG8pe2lmKCF0aGlzLl9kb2luZylyZXR1cm4gdm9pZCB0aGlzLl9maW5pc2hBbmltYXRpb24oKTtjb25zdCBpPShvPSFvfHxvPDFlMTI/cGVyZm9ybWFuY2Uubm93KCk6byktZSxuPWk+PXRoaXMuX29wdGlvbnMuZHVyYXRpb258fHQ9PT10aGlzLl9vcHRpb25zLnRvLHI9KHM9dGhpcy5fb3B0aW9ucy5mcm9tLGE9dGhpcy5fb3B0aW9ucy50byxsPXRoaXMuX29wdGlvbnMuZWFzaW5nKGkvdGhpcy5fb3B0aW9ucy5kdXJhdGlvbikscyooMS1sKSthKmwpO3ZhciBzLGEsbDtjb25zdCBjPW4/dGhpcy5fb3B0aW9ucy50bzpyLGQ9Yy10O3RoaXMuX29wdGlvbnMub25TdGVwKGQsYyksbj90aGlzLl9maW5pc2hBbmltYXRpb24oKTp3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCh0PT57dGhpcy5fYW5pbWF0aW9uKGUsYyx0KX0pKX1fZmluaXNoQW5pbWF0aW9uKCl7dGhpcy5fb3B0aW9ucy5vbkNvbXBsZXRlJiZ0aGlzLl9vcHRpb25zLm9uQ29tcGxldGUoKSx0aGlzLl9jb21wbGV0ZWQ9ITB9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIG5ldyBuKGUpfX0sNzgwMzc0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RyYWdnYWJsZTooKT0+cn0pO3ZhciBpPW8oMTM4NjM4KSxuPW8oMzE0NzIwKTtvKDg0ODUyNyk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihlKXt0aGlzLl9oZWxwZXI9bnVsbCx0aGlzLl9oYW5kbGVEcmFnU3RhcnQ9ZT0+e2lmKG51bGwhPT10aGlzLl9oZWxwZXIpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fc291cmNlO3QuY2xhc3NMaXN0LmFkZCgidWktZHJhZ2dhYmxlLWRyYWdnaW5nIik7Y29uc3RbbyxpXT1bKDAsbi5vdXRlcldpZHRoKSh0KSwoMCxuLm91dGVySGVpZ2h0KSh0KV07dGhpcy5faGVscGVyPXtzdGFydFRvcDpwYXJzZUZsb2F0KHQuc3R5bGUudG9wKXx8MCxzdGFydExlZnQ6cGFyc2VGbG9hdCh0LnN0eWxlLmxlZnQpfHwwLG5leHRUb3A6bnVsbCxuZXh0TGVmdDpudWxsLHJhZjpudWxsLHNpemU6W28saV0sY29udGFpbm1lbnQ6dGhpcy5fY29udGFpbm1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9bcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkuYm9yZGVyTGVmdFdpZHRoKStwYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRhaW5tZW50KS5wYWRkaW5nTGVmdCkscGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkuYm9yZGVyVG9wV2lkdGgpK3BhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLnBhZGRpbmdUb3ApLHRoaXMuX2NvbnRhaW5tZW50Lm9mZnNldFdpZHRoLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLmJvcmRlclJpZ2h0V2lkdGgpLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLnBhZGRpbmdSaWdodCktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0KS5tYXJnaW5MZWZ0KS1wYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHQpLm1hcmdpblJpZ2h0KS1vLHRoaXMuX2NvbnRhaW5tZW50Lm9mZnNldEhlaWdodC1wYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRhaW5tZW50KS5ib3JkZXJCb3R0b21XaWR0aCktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkucGFkZGluZ0JvdHRvbSktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0KS5tYXJnaW5Ub3ApLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodCkubWFyZ2luQm90dG9tKS1pXToid2luZG93Ij09PXRoaXMuX2NvbnRhaW5tZW50P1t3aW5kb3cuc2Nyb2xsWCx3aW5kb3cuc2Nyb2xsWSx3aW5kb3cuc2Nyb2xsWCtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0V2lkdGgtbyx3aW5kb3cuc2Nyb2xsWStkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0SGVpZ2h0LWldOm51bGx9LHRoaXMuX3N0YXJ0Py4oKX0sdGhpcy5faGFuZGxlRHJhZ01vdmU9ZT0+e2lmKG51bGw9PT10aGlzLl9oZWxwZXIpcmV0dXJuO2NvbnN0e2N1cnJlbnQ6dCxpbml0aWFsOm99PWUuZGV0YWlsLGk9dGhpcy5fc291cmNlLG49dGhpcy5faGVscGVyLm5leHRUb3Ascj10aGlzLl9oZWxwZXIubmV4dExlZnQscz0ieSI9PT10aGlzLl9heGlzfHwhMT09PXRoaXMuX2F4aXN8fDAhPT10Lm1vdmVtZW50WTtpZihzKXtjb25zdCBlPXRoaXMuX2hlbHBlci5zdGFydFRvcDtpc0Zpbml0ZShlKSYmKHRoaXMuX2hlbHBlci5uZXh0VG9wPXQuY2xpZW50WS1vLmNsaWVudFkrZSl9Y29uc3QgYT0ieCI9PT10aGlzLl9heGlzfHwhMT09PXRoaXMuX2F4aXN8fDAhPT10Lm1vdmVtZW50WTtpZihhKXtjb25zdCBlPXRoaXMuX2hlbHBlci5zdGFydExlZnQ7aXNGaW5pdGUoZSkmJih0aGlzLl9oZWxwZXIubmV4dExlZnQ9dC5jbGllbnRYLW8uY2xpZW50WCtlKX1pZihudWxsIT09dGhpcy5faGVscGVyLmNvbnRhaW5tZW50KXtjb25zdFtlLHQsbyxpXT10aGlzLl9oZWxwZXIuY29udGFpbm1lbnQ7cyYmdGhpcy5faGVscGVyLm5leHRUb3AmJih0aGlzLl9oZWxwZXIubmV4dFRvcD1NYXRoLm1pbih0aGlzLl9oZWxwZXIubmV4dFRvcCxpKSx0aGlzLl9oZWxwZXIubmV4dFRvcD1NYXRoLm1heCh0aGlzLl9oZWxwZXIubmV4dFRvcCx0KSksYSYmdGhpcy5faGVscGVyLm5leHRMZWZ0JiYodGhpcy5faGVscGVyLm5leHRMZWZ0PU1hdGgubWluKHRoaXMuX2hlbHBlci5uZXh0TGVmdCxvKSx0aGlzLl9oZWxwZXIubmV4dExlZnQ9TWF0aC5tYXgodGhpcy5faGVscGVyLm5leHRMZWZ0LGUpKX1udWxsIT09dGhpcy5faGVscGVyLnJhZnx8bj09PXRoaXMuX2hlbHBlci5uZXh0VG9wJiZyPT09dGhpcy5faGVscGVyLm5leHRMZWZ0fHwodGhpcy5faGVscGVyLnJhZj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57bnVsbCE9PXRoaXMuX2hlbHBlciYmKG51bGwhPT10aGlzLl9oZWxwZXIubmV4dFRvcCYmKGkuc3R5bGUudG9wPXRoaXMuX2hlbHBlci5uZXh0VG9wKyJweCIsdGhpcy5faGVscGVyLm5leHRUb3A9bnVsbCksCm51bGwhPT10aGlzLl9oZWxwZXIubmV4dExlZnQmJihpLnN0eWxlLmxlZnQ9dGhpcy5faGVscGVyLm5leHRMZWZ0KyJweCIsdGhpcy5faGVscGVyLm5leHRMZWZ0PW51bGwpLHRoaXMuX2hlbHBlci5yYWY9bnVsbCl9KSkpLHRoaXMuX2RyYWc/LigpfSx0aGlzLl9oYW5kbGVEcmFnU3RvcD1lPT57aWYobnVsbD09PXRoaXMuX2hlbHBlcilyZXR1cm47dGhpcy5fc291cmNlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZS1kcmFnZ2luZyIpLHRoaXMuX2hlbHBlcj1udWxsLHRoaXMuX3N0b3A/LigpfTtjb25zdCB0PXRoaXMuX3NvdXJjZT1lLnNvdXJjZTt0LmNsYXNzTGlzdC5hZGQoInVpLWRyYWdnYWJsZSIpO2NvbnN0IG89dGhpcy5faGFuZGxlPShlLmhhbmRsZT90LnF1ZXJ5U2VsZWN0b3IoZS5oYW5kbGUpOm51bGwpPz90O28uY2xhc3NMaXN0LmFkZCgidWktZHJhZ2dhYmxlLWhhbmRsZSIpLHRoaXMuX3N0YXJ0PWUuc3RhcnQsdGhpcy5fc3RvcD1lLnN0b3AsdGhpcy5fZHJhZz1lLmRyYWcsdGhpcy5fYmFja2VuZD1uZXcgcyh7aGFuZGxlOm8sb25EcmFnU3RhcnQ6dGhpcy5faGFuZGxlRHJhZ1N0YXJ0LG9uRHJhZ01vdmU6dGhpcy5faGFuZGxlRHJhZ01vdmUsb25EcmFnU3RvcDp0aGlzLl9oYW5kbGVEcmFnU3RvcH0pLHRoaXMuX2F4aXM9ZS5heGlzPz8hMSx0aGlzLl9jb250YWlubWVudD1lLmNvbnRhaW5tZW50fWRlc3Ryb3koKXtjb25zdCBlPXRoaXMuX3NvdXJjZTtlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgidWktZHJhZ2dhYmxlLWRyYWdnaW5nIik7dGhpcy5faGFuZGxlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZS1oYW5kbGUiKSx0aGlzLl9iYWNrZW5kLmRlc3Ryb3koKSxudWxsIT09dGhpcy5faGVscGVyJiYodGhpcy5faGVscGVyLnJhZiYmY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5faGVscGVyLnJhZiksdGhpcy5faGVscGVyPW51bGwpfX1jbGFzcyBze2NvbnN0cnVjdG9yKGUpe3RoaXMuX3BvaW50ZXJTdGFydGVkPSExLHRoaXMuX2luaXRpYWw9bnVsbCx0aGlzLl9oYW5kbGVQb2ludGVyRG93bj1lPT57aWYobnVsbCE9PXRoaXMuX2luaXRpYWx8fDAhPT1lLmJ1dHRvbilyZXR1cm47aWYoIShlLnRhcmdldCBpbnN0YW5jZW9mIEVsZW1lbnQmJnRoaXMuX2hhbmRsZS5jb250YWlucyhlLnRhcmdldCkpKXJldHVybjtpZih0aGlzLl9pbml0aWFsPWUsIXRoaXMuX2Rpc3RhbmNlJiYodGhpcy5fcG9pbnRlclN0YXJ0KCksIXRoaXMuX3BvaW50ZXJTdGFydGVkKSlyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IHQ9dGhpcy5fZ2V0RXZlbnRUYXJnZXQoKTt0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0aGlzLl9oYW5kbGVQb2ludGVyTW92ZSksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLHQuYWRkRXZlbnRMaXN0ZW5lcigibG9zdHBvaW50ZXJjYXB0dXJlIix0aGlzLl9oYW5kbGVMb3N0UG9pbnRlckNhcHR1cmUpfSx0aGlzLl9oYW5kbGVMb3N0UG9pbnRlckNhcHR1cmU9ZT0+e3RoaXMuX2dldEV2ZW50VGFyZ2V0KCk9PT1lLnRhcmdldCYmdGhpcy5faGFuZGxlUG9pbnRlclVwKGUpfSx0aGlzLl9oYW5kbGVQb2ludGVyTW92ZT1lPT57aWYobnVsbCE9PXRoaXMuX2luaXRpYWwmJnRoaXMuX2luaXRpYWwucG9pbnRlcklkPT09ZS5wb2ludGVySWQpaWYodGhpcy5fcG9pbnRlclN0YXJ0ZWQpdGhpcy5fcG9pbnRlckRyYWcoZSk7ZWxzZSBpZih0aGlzLl9wb2ludGVyRGlzdGFuY2VNZXQoZSkpe2lmKHRoaXMuX3BvaW50ZXJTdGFydCgpLHRoaXMuX3BvaW50ZXJTdGFydGVkKXJldHVybiB2b2lkIHRoaXMuX3BvaW50ZXJEcmFnKGUpO3RoaXMuX2hhbmRsZVBvaW50ZXJVcChlKX19LHRoaXMuX2hhbmRsZVBvaW50ZXJVcD1lPT57aWYobnVsbD09PXRoaXMuX2luaXRpYWx8fHRoaXMuX2luaXRpYWwucG9pbnRlcklkIT09ZS5wb2ludGVySWQpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKTtjb25zdCB0PXRoaXMuX2dldEV2ZW50VGFyZ2V0KCk7dC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdGhpcy5faGFuZGxlUG9pbnRlck1vdmUpLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsdGhpcy5faGFuZGxlUG9pbnRlclVwKSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvc3Rwb2ludGVyY2FwdHVyZSIsdGhpcy5faGFuZGxlUG9pbnRlclVwKSx0aGlzLl9wb2ludGVyU3RhcnRlZCYmKHRoaXMuX3BvaW50ZXJTdGFydGVkPSExLHQucmVsZWFzZVBvaW50ZXJDYXB0dXJlKHRoaXMuX2luaXRpYWwucG9pbnRlcklkKSx0aGlzLl9kaXNwYXRjaEV2ZW50KHRoaXMuX2NyZWF0ZUV2ZW50KCJwb2ludGVyLWRyYWctc3RvcCIsZSkpKSx0aGlzLl9pbml0aWFsPW51bGx9O2NvbnN0IHQ9dGhpcy5faGFuZGxlPWUuaGFuZGxlO3RoaXMuX29uRHJhZ1N0YXJ0PWUub25EcmFnU3RhcnQsdGhpcy5fb25EcmFnTW92ZT1lLm9uRHJhZ01vdmUsdGhpcy5fb25EcmFnU3RvcD1lLm9uRHJhZ1N0b3AsdGhpcy5fZGlzdGFuY2U9ZS5kaXN0YW5jZT8/MCx0aGlzLl9yb290RWxlbWVudD1lLnJvb3RFbGVtZW50LHQuc3R5bGUudG91Y2hBY3Rpb249Im5vbmUiLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLHRoaXMuX2hhbmRsZVBvaW50ZXJEb3duKX1kZXN0cm95KCl7Y29uc3QgZT10aGlzLl9oYW5kbGU7ZS5zdHlsZS50b3VjaEFjdGlvbj0iIixlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIix0aGlzLl9oYW5kbGVQb2ludGVyRG93biksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdGhpcy5faGFuZGxlUG9pbnRlck1vdmUpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLAplLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb3N0cG9pbnRlcmNhcHR1cmUiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksbnVsbCE9PXRoaXMuX2luaXRpYWwmJihlLnJlbGVhc2VQb2ludGVyQ2FwdHVyZSh0aGlzLl9pbml0aWFsLnBvaW50ZXJJZCksdGhpcy5faW5pdGlhbD1udWxsKSx0aGlzLl9wb2ludGVyU3RhcnRlZD0hMX1fcG9pbnRlclN0YXJ0KCl7aWYoIXRoaXMuX2luaXRpYWwpcmV0dXJuO2NvbnN0IGU9dGhpcy5fZ2V0RXZlbnRUYXJnZXQoKTt0aGlzLl9kaXNwYXRjaEV2ZW50KHRoaXMuX2NyZWF0ZUV2ZW50KCJwb2ludGVyLWRyYWctc3RhcnQiLHRoaXMuX2luaXRpYWwpKT8odGhpcy5fcG9pbnRlclN0YXJ0ZWQ9ITAsZS5zZXRQb2ludGVyQ2FwdHVyZSh0aGlzLl9pbml0aWFsLnBvaW50ZXJJZCkpOnRoaXMuX2luaXRpYWw9bnVsbH1fcG9pbnRlckRyYWcoZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuX2Rpc3BhdGNoRXZlbnQodGhpcy5fY3JlYXRlRXZlbnQoInBvaW50ZXItZHJhZy1tb3ZlIixlKSl9X3BvaW50ZXJEaXN0YW5jZU1ldChlKXtyZXR1cm4hdGhpcy5faW5pdGlhbHx8IXRoaXMuX2Rpc3RhbmNlfHxNYXRoLm1heChNYXRoLmFicyh0aGlzLl9pbml0aWFsLmNsaWVudFgtZS5jbGllbnRYKSxNYXRoLmFicyh0aGlzLl9pbml0aWFsLmNsaWVudFktZS5jbGllbnRZKSk+PXRoaXMuX2Rpc3RhbmNlfV9nZXRFdmVudFRhcmdldCgpe3JldHVybiB0aGlzLl9yb290RWxlbWVudD8/dGhpcy5faGFuZGxlfV9kaXNwYXRjaEV2ZW50KGUpe3N3aXRjaChlLnR5cGUpe2Nhc2UicG9pbnRlci1kcmFnLXN0YXJ0Ijp0aGlzLl9vbkRyYWdTdGFydChlKTticmVhaztjYXNlInBvaW50ZXItZHJhZy1tb3ZlIjp0aGlzLl9vbkRyYWdNb3ZlKGUpO2JyZWFrO2Nhc2UicG9pbnRlci1kcmFnLXN0b3AiOnRoaXMuX29uRHJhZ1N0b3AoZSl9cmV0dXJuIWUuZGVmYXVsdFByZXZlbnRlZH1fY3JlYXRlRXZlbnQoZSx0KXtyZXR1cm4oMCxpLmFzc2VydCkobnVsbCE9PXRoaXMuX2luaXRpYWwpLG5ldyBDdXN0b21FdmVudChlLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITAsZGV0YWlsOntiYWNrZW5kOnRoaXMsaW5pdGlhbDp0aGlzLl9pbml0aWFsLGN1cnJlbnQ6dH19KX19fSw0MDYxMTAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7TWF0Y2hNZWRpYTooKT0+bn0pO3ZhciBpPW8oNzc5NDc0KTtjbGFzcyBuIGV4dGVuZHMgaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2hhbmRsZUNoYW5nZT0oKT0+e3RoaXMuZm9yY2VVcGRhdGUoKX0sdGhpcy5zdGF0ZT17cXVlcnk6d2luZG93Lm1hdGNoTWVkaWEodGhpcy5wcm9wcy5ydWxlKX19Y29tcG9uZW50RGlkTW91bnQoKXt0aGlzLl9zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSl9Y29tcG9uZW50RGlkVXBkYXRlKGUsdCl7dGhpcy5zdGF0ZS5xdWVyeSE9PXQucXVlcnkmJih0aGlzLl91bnN1YnNjcmliZSh0LnF1ZXJ5KSx0aGlzLl9zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSkpfWNvbXBvbmVudFdpbGxVbm1vdW50KCl7dGhpcy5fdW5zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSl9cmVuZGVyKCl7cmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW4odGhpcy5zdGF0ZS5xdWVyeS5tYXRjaGVzKX1zdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKGUsdCl7cmV0dXJuIGUucnVsZSE9PXQucXVlcnkubWVkaWE/e3F1ZXJ5OndpbmRvdy5tYXRjaE1lZGlhKGUucnVsZSl9Om51bGx9X3N1YnNjcmliZShlKXtlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdGhpcy5faGFuZGxlQ2hhbmdlKX1fdW5zdWJzY3JpYmUoZSl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHRoaXMuX2hhbmRsZUNoYW5nZSl9fX0sNzc4NDU4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2JyZWFrcG9pbnRzOigpPT5pLG1vYmlsZUZpcnN0QnJlYWtwb2ludHM6KCk9Pm4sbW9iaWxlRmlyc3RMZWdhY3lCcmVha3BvaW50czooKT0+cn0pO2NvbnN0IGk9e2Rlc2t0b3A6MS8wLGRlc2t0b3BIZDoxOTE5LHBob25lOjc2NywicGhvbmUtdmVydGljYWwiOjQ3OSx0YWJsZXQ6MTAxOX0sbj17YmFzZTowLCJtZWRpYS1tZi1waG9uZS12ZXJ0aWNhbCI6MzIwLCJtZWRpYS1tZi1waG9uZS1sYW5kc2NhcGUiOjU2OCwibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIjo3NjgsIm1lZGlhLW1mLXRhYmxldC1sYW5kc2NhcGUiOjEwMjQsIm1lZGlhLW1mLWxhcHRvcCI6MTI4MCwibWVkaWEtbWYtZGVza3RvcC1tZWRpdW0iOjE0NDAsIm1lZGlhLW1mLWRlc2t0b3AtbGFyZ2UiOjE5MjAsIm1lZGlhLW1mLWRlc2t0b3AtZXh0cmEtbGFyZ2UiOjI1NjB9LHI9eyJtZWRpYS1tZi1sZWdhY3ktcGhvbmUtdmVydGljYWwiOjMzMCwibWVkaWEtbWYtbGVnYWN5LXBob25lIjo0ODAsIm1lZGlhLW1mLWxlZ2FjeS1ub3RlYm9vayI6MTAyMCwibWVkaWEtbWYtbGVnYWN5LWRlc2t0b3AtbWVkaXVtIjoxNDgwLCJtZWRpYS1tZi1sZWdhY3ktZGVza3RvcCI6MTUzMX19LDI3NjAxOShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnbG9iYWxDbG9zZURlbGVnYXRlOigpPT5pLGdsb2JhbENsb3NlTWVudTooKT0+bn0pO2NvbnN0IGk9bmV3KG8oOTQ4MzgwKS5EZWxlZ2F0ZSk7ZnVuY3Rpb24gbigpe2kuZmlyZSgpfX0sNjA5NTI4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RpYWxvZ0JyZWFrcG9pbnRzOigpPT5ufSk7dmFyIGk9byg5MjQ1MDcpO2NvbnN0IG49e1NtYWxsSGVpZ2h0OmlbInNtYWxsLWhlaWdodC1icmVha3BvaW50Il0sVGFibGV0U21hbGw6aVsidGFibGV0LXNtYWxsLWJyZWFrcG9pbnQiXSxUYWJsZXROb3JtYWw6aVsidGFibGV0LW5vcm1hbC1icmVha3BvaW50Il19fSw5OTU2NzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cmVsZWFzZU1vZGFsU2Nyb2xsTG9jazooKT0+cyxyZXF1ZXN0TW9kYWxTY3JvbGxMb2NrOigpPT5yfSk7Y29uc3QgaT0ibW9kYWwtc2Nyb2xsLWxvY2stcmVxdWVzdCIsbj0ibW9kYWwtc2Nyb2xsLWxvY2stcmVsZWFzZSIKO2Z1bmN0aW9uIHIoZSl7ZS5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudChpKSl9ZnVuY3Rpb24gcyhlKXtlLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KG4pKX19LDY1OTg3OChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHttYWtlT3ZlcmxhcGFibGU6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDU4NTQ4KTtmdW5jdGlvbiByKGUsdCl7cmV0dXJuIGNsYXNzIGV4dGVuZHMgaS5QdXJlQ29tcG9uZW50e3JlbmRlcigpe2NvbnN0e2lzT3BlbmVkOm8scm9vdDpyfT10aGlzLnByb3BzO2lmKCFvKXJldHVybiBudWxsO2NvbnN0IHM9aS5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMscmVmOnRoaXMucHJvcHMuY29tcG9uZW50UmVmLHpJbmRleDoxNTB9KTtyZXR1cm4icGFyZW50Ij09PXI/czppLmNyZWF0ZUVsZW1lbnQobi5Qb3J0YWwse3Nob3VsZFRyYXBGb2N1czp0fSxzKX19fX0sNTU4MDMwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1RvdWNoU2Nyb2xsQ29udGFpbmVyOigpPT5jfSk7dmFyIGk9byg3Nzk0NzQpLG49byg4NTMzMzYpLHI9bygxMzg2MzgpLHM9byg3Mzg0NTgpO2NvbnN0IGE9Q1NTLnN1cHBvcnRzKCJvdmVyc2Nyb2xsLWJlaGF2aW9yIiwibm9uZSIpO2xldCBsPTA7Y29uc3QgYz0oMCxpLmZvcndhcmRSZWYpKCgoZSx0KT0+e2NvbnN0e2NoaWxkcmVuOm8sLi4ucn09ZSxjPSgwLGkudXNlUmVmKShudWxsKTtyZXR1cm4oMCxpLnVzZUltcGVyYXRpdmVIYW5kbGUpKHQsKCgpPT5jLmN1cnJlbnQpKSwoMCxpLnVzZUxheW91dEVmZmVjdCkoKCgpPT57aWYocy5pc0lPUylyZXR1cm4gbCsrLG51bGwhPT1jLmN1cnJlbnQmJihhPzE9PT1sJiYoZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyc2Nyb2xsQmVoYXZpb3I9Im5vbmUiKTooMCxuLmRpc2FibGVCb2R5U2Nyb2xsKShjLmN1cnJlbnQse2FsbG93VG91Y2hNb3ZlOmQoYyl9KSksKCk9PntsLS0sbnVsbCE9PWMuY3VycmVudCYmKGE/MD09PWwmJihkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0iIik6KDAsbi5lbmFibGVCb2R5U2Nyb2xsKShjLmN1cnJlbnQpKX19KSxbXSksaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtyZWY6YywuLi5yfSxvKX0pKTtmdW5jdGlvbiBkKGUpe3JldHVybiB0PT57Y29uc3Qgbz0oMCxyLmVuc3VyZU5vdE51bGwpKGUuY3VycmVudCksaT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3JldHVybiFvLmNvbnRhaW5zKHQpfHxudWxsIT09aSYmby5jb250YWlucyhpKSYmaS5jb250YWlucyh0KX19fSw5OTk1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtBcHBDb250ZXh0OigpPT5pfSk7Y29uc3QgaT0oMCxvKDc3OTQ3NCkuY3JlYXRlQ29udGV4dCkoe2lzT25Nb2JpbGVBcHBQYWdlOigpPT4hMSxpc1J0bDohMSxsb2NhbGU6ImVuIixyZW5kZXJNb2RlOiJsZWdhY3kifSl9LDE1NDYyMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtwcmVzZXREZWZhdWx0OigpPT5pLHByZXNldFBsYXRmb3JtOigpPT5ufSk7Y29uc3QgaT17ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9LG49e2VuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOiExfX0sMjE4ODE0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NvbG9yOigpPT5yLGR1cjooKT0+aSxlYXNpbmdGdW5jOigpPT5ufSk7Y29uc3QgaT0zNTAsbj17bGluZWFyOmU9PmUsZWFzZUluUXVhZDplPT5lKmUsZWFzZU91dFF1YWQ6ZT0+ZSooMi1lKSxlYXNlSW5PdXRRdWFkOmU9PmU8LjU/MiplKmU6KDQtMiplKSplLTEsZWFzZUluQ3ViaWM6ZT0+ZSplKmUsZWFzZU91dEN1YmljOmU9Pi0tZSplKmUrMSxlYXNlSW5PdXRDdWJpYzplPT5lPC41PzQqZSplKmU6KGUtMSkqKDIqZS0yKSooMiplLTIpKzEsZWFzZUluUXVhcnQ6ZT0+ZSplKmUqZSxlYXNlT3V0UXVhcnQ6ZT0+MS0gLS1lKmUqZSplLGVhc2VJbk91dFF1YXJ0OmU9PmU8LjU/OCplKmUqZSplOjEtOCotLWUqZSplKmUsZWFzZUluUXVpbnQ6ZT0+ZSplKmUqZSplLGVhc2VPdXRRdWludDplPT4xKy0tZSplKmUqZSplLGVhc2VJbk91dFF1aW50OmU9PmU8LjU/MTYqZSplKmUqZSplOjErMTYqLS1lKmUqZSplKmV9O2NvbnN0IHI9e2JsYWNrNzA6IiM0QTRBNEEiLGJsYWNrODA6IiM1MzUzNTMifX0sNzg3ODk1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3VzZUZ1bmN0aW9uYWxSZWZPYmplY3Q6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDYxNjMxMSk7ZnVuY3Rpb24gcihlKXtjb25zdCB0PSgwLGkudXNlTWVtbykoKCgpPT5mdW5jdGlvbihlKXtjb25zdCB0PW89PntlKG8pLHQuY3VycmVudD1vfTtyZXR1cm4gdC5jdXJyZW50PW51bGwsdH0oKGU9PnthLmN1cnJlbnQoZSl9KSkpLFtdKSxvPSgwLGkudXNlUmVmKShudWxsKSxyPXQ9PntpZihudWxsPT09dClyZXR1cm4gcyhvLmN1cnJlbnQsdCksdm9pZChvLmN1cnJlbnQ9bnVsbCk7by5jdXJyZW50IT09ZSYmKG8uY3VycmVudD1lLHMoby5jdXJyZW50LHQpKX0sYT0oMCxpLnVzZVJlZikocik7cmV0dXJuIGEuY3VycmVudD1yLCgwLG4udXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCkoKCgpPT57aWYobnVsbCE9PXQuY3VycmVudClyZXR1cm4gYS5jdXJyZW50KHQuY3VycmVudCksKCk9PmEuY3VycmVudChudWxsKX0pLFtlXSksdH1mdW5jdGlvbiBzKGUsdCl7bnVsbCE9PWUmJigiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQpOmUuY3VycmVudD10KX19LDcxOTQyNShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt1c2VSZXNpemVPYnNlcnZlcjooKT0+c30pO3ZhciBpPW8oNzc5NDc0KSxuPW8oNjE2MzExKSxyPW8oNzg3ODk1KTtmdW5jdGlvbiBzKGUsdD1bXSl7Y29uc3R7Y2FsbGJhY2s6byxyZWY6cz1udWxsfT1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZT97Y2FsbGJhY2s6ZX06ZX0oZSksYT0oMCxpLnVzZVJlZikobnVsbCksbD0oMCxpLnVzZVJlZikobyk7bC5jdXJyZW50PW87Y29uc3QgYz0oMCxyLnVzZUZ1bmN0aW9uYWxSZWZPYmplY3QpKHMpLGQ9KDAsaS51c2VDYWxsYmFjaykoKGU9PntjKGUpLG51bGwhPT1hLmN1cnJlbnQmJihhLmN1cnJlbnQuZGlzY29ubmVjdCgpLApudWxsIT09ZSYmYS5jdXJyZW50Lm9ic2VydmUoZSkpfSksW2MsYV0pO3JldHVybigwLG4udXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCkoKCgpPT4oYS5jdXJyZW50PW5ldyBSZXNpemVPYnNlcnZlcigoKGUsdCk9PntsLmN1cnJlbnQoZSx0KX0pKSxjLmN1cnJlbnQmJmQoYy5jdXJyZW50KSwoKT0+e2EuY3VycmVudD8uZGlzY29ubmVjdCgpfSkpLFtjLC4uLnRdKSxkfX0sNjQ5MTY2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0xvYWRlcjooKT0+Y30pO3ZhciBpLG49byg3Nzk0NzQpLHI9byg5MTQ0ODcpLHM9by5uKHIpLGE9bygyNDQ1MjUpLGw9by5uKGEpO2Z1bmN0aW9uIGMoZSl7Y29uc3R7Y2xhc3NOYW1lOnQsc2l6ZTpvPSJtZWRpdW0iLHN0YXRpY1Bvc2l0aW9uOmksY29sb3I6cj0iYmxhY2sifT1lLGE9cygpKGwoKS5pdGVtLGwoKVtyXSxsKClbb10pO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKGwoKS5sb2FkZXIsaSYmbCgpLnN0YXRpYyx0KX0sbi5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOmF9KSxuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6YX0pLG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTphfSkpfSFmdW5jdGlvbihlKXtlLk1lZGl1bT0ibWVkaXVtIixlLlNtYWxsPSJzbWFsbCJ9KGl8fChpPXt9KSl9LDU4NTQ4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1BvcnRhbDooKT0+YyxQb3J0YWxDb250ZXh0OigpPT5kfSk7dmFyIGk9byg3Nzk0NzQpLG49bygxMjkzNjUpLHI9byg4NTY3NzApLHM9byg5MDM0MiksYT1vKDU3MDE5MyksbD1vKDYwNzgzMik7Y2xhc3MgYyBleHRlbmRzIGkuUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fdXVpZD0oMCxyLm5hbm9pZCkoKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMuX21hbmFnZXIoKS5yZW1vdmVXaW5kb3codGhpcy5fdXVpZCl9cmVuZGVyKCl7Y29uc3QgZT10aGlzLl9tYW5hZ2VyKCkuZW5zdXJlV2luZG93KHRoaXMuX3V1aWQsdGhpcy5wcm9wcy5sYXllck9wdGlvbnMpO2Uuc3R5bGUudG9wPXRoaXMucHJvcHMudG9wfHwiIixlLnN0eWxlLmJvdHRvbT10aGlzLnByb3BzLmJvdHRvbXx8IiIsZS5zdHlsZS5sZWZ0PXRoaXMucHJvcHMubGVmdHx8IiIsZS5zdHlsZS5yaWdodD10aGlzLnByb3BzLnJpZ2h0fHwiIixlLnN0eWxlLnBvaW50ZXJFdmVudHM9dGhpcy5wcm9wcy5wb2ludGVyRXZlbnRzfHwiIjtjb25zdCB0PXRoaXMucHJvcHMuY2xhc3NOYW1lO3JldHVybiB0JiYoInN0cmluZyI9PXR5cGVvZiB0P2UuY2xhc3NMaXN0LmFkZCh0KTplLmNsYXNzTGlzdC5hZGQoLi4udCkpLHRoaXMucHJvcHMuc2hvdWxkVHJhcEZvY3VzJiYhZS5oYXNBdHRyaWJ1dGUoYS5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFKSYmZS5zZXRBdHRyaWJ1dGUoYS5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFLCJ0cnVlIiksdGhpcy5wcm9wc1siYXJpYS1oaWRkZW4iXSYmZS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLG4uY3JlYXRlUG9ydGFsKGkuY3JlYXRlRWxlbWVudChkLlByb3ZpZGVyLHt2YWx1ZTp0aGlzfSx0aGlzLnByb3BzLmNoaWxkcmVuKSxlKX1tb3ZlVG9Ub3AoKXt0aGlzLl9tYW5hZ2VyKCkubW92ZVRvVG9wKHRoaXMuX3V1aWQpfV9tYW5hZ2VyKCl7cmV0dXJuIG51bGw9PT10aGlzLmNvbnRleHQ/KDAscy5nZXRSb290T3ZlcmxhcE1hbmFnZXIpKCk6dGhpcy5jb250ZXh0fX1jLmNvbnRleHRUeXBlPWwuU2xvdENvbnRleHQ7Y29uc3QgZD1pLmNyZWF0ZUNvbnRleHQobnVsbCl9LDYwNzgzMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTbG90OigpPT5uLFNsb3RDb250ZXh0OigpPT5yfSk7dmFyIGk9byg3Nzk0NzQpO2NsYXNzIG4gZXh0ZW5kcyBpLkNvbXBvbmVudHtzaG91bGRDb21wb25lbnRVcGRhdGUoKXtyZXR1cm4hMX1yZW5kZXIoKXtyZXR1cm4gaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtzdHlsZTp7cG9zaXRpb246ImZpeGVkIix6SW5kZXg6MTUwLGxlZnQ6MCx0b3A6MH0scmVmOnRoaXMucHJvcHMucmVmZXJlbmNlfSl9fWNvbnN0IHI9aS5jcmVhdGVDb250ZXh0KG51bGwpfSw1Njc0NzkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7REVGQVVMVF9TSVpFOigpPT5pLHNwaW5uZXJTaXplTWFwOigpPT5ufSk7Y29uc3QgaT0ibGFyZ2UiLG49e21pbmk6InhzbWFsbCIseHhzbWFsbDoieHhzbWFsbCIseHNtYWxsOiJ4c21hbGwiLHNtYWxsOiJzbWFsbCIsbWVkaXVtOiJtZWRpdW0iLGxhcmdlOiJsYXJnZSJ9fSwzMDgyMTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7U3dpdGNoVmlldzooKT0+Y30pO3ZhciBpLG49byg3Nzk0NzQpLHI9byg5MTQ0ODcpLHM9by5uKHIpLGE9byg2MjU3MDkpLGw9by5uKGEpO2Z1bmN0aW9uIGMoZSl7Y29uc3R7c2l6ZTp0PSJzbWFsbCIsY2hlY2tlZDpvLGRpc2FibGVkOml9PWU7cmV0dXJuIG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpzKCkobCgpLnN3aXRjaFZpZXcsbCgpW3RdLGkmJmwoKS5kaXNhYmxlZCxvJiZsKCkuY2hlY2tlZCl9LG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpsKCkudHJhY2t9KSxuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6bCgpLnRodW1ifSkpfSFmdW5jdGlvbihlKXtlLlNtYWxsPSJzbWFsbCIsZS5NZWRpdW09Im1lZGl1bSIsZS5MYXJnZT0ibGFyZ2UifShpfHwoaT17fSkpfSwxMjgzMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTd2l0Y2g6KCk9PnV9KTt2YXIgaSxuPW8oNzc5NDc0KSxyPW8oOTE0NDg3KSxzPW8ubihyKSxhPW8oMzA5OTIwKSxsPW8oMzA4MjE2KSxjPW8oMjM1NzI0KSxkPW8oNjg3NTQ3KSxoPW8ubihkKTtmdW5jdGlvbiB1KGUpe2NvbnN0IHQ9KDAsCm4udXNlQ29udGV4dCkoYS5DdXN0b21CZWhhdmlvdXJDb250ZXh0KSx7c2l6ZTpvLGludGVudDppPSJkZWZhdWx0IixjaGVja2VkOnIsY2xhc3NOYW1lOmQsZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6dT10LmVuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzLGRpc2FibGVkOl8sb25DaGFuZ2U6cCx0aXRsZTptLGlkOmcsbmFtZTp2LHZhbHVlOmYsdGFiSW5kZXg6eSxyb2xlOmI9InN3aXRjaCIsYXJpYURpc2FibGVkOlMscmVmZXJlbmNlOncsYXJpYUxhYmVsbGVkQnk6QyxhcmlhTGFiZWw6aywuLi5UfT1lO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKGQsaCgpLnN3aXRjaGVyKX0sbi5jcmVhdGVFbGVtZW50KCJpbnB1dCIsey4uLlQsdHlwZToiY2hlY2tib3giLGNsYXNzTmFtZTpzKCkoaCgpLmlucHV0LHUmJmgoKS5hY3RpdmVTdHlsZXNFbmFibGVkLHImJmgoKS5jaGVja2VkLF8mJmgoKS5kaXNhYmxlZCkscm9sZTpiLCJhcmlhLWNoZWNrZWQiOnIsY2hlY2tlZDpyLG9uS2V5RG93bjplPT57MTM9PT0oMCxjLmhhc2hGcm9tRXZlbnQpKGUpJiZlLmN1cnJlbnRUYXJnZXQ/LmNsaWNrKCl9LG9uQ2hhbmdlOnAsZGlzYWJsZWQ6XywiYXJpYS1kaXNhYmxlZCI6Uyx0YWJJbmRleDp5LHRpdGxlOm0saWQ6ZyxuYW1lOnYsdmFsdWU6ZixyZWY6dywiYXJpYS1sYWJlbCI6aywiYXJpYS1sYWJlbGxlZGJ5IjpDfSksbi5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShoKCkudGh1bWJXcmFwcGVyLGgoKVtpXSl9LG4uY3JlYXRlRWxlbWVudChsLlN3aXRjaFZpZXcse2NoZWNrZWQ6cixzaXplOm8sZGlzYWJsZWQ6X30pKSl9IWZ1bmN0aW9uKGUpe2UuRGVmYXVsdD0iZGVmYXVsdCIsZS5TZWxlY3Q9InNlbGVjdCJ9KGl8fChpPXt9KSl9LDU3MDE5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtGT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFOigpPT5pfSk7Y29uc3QgaT0iZGF0YS1mb2N1cy10cmFwIn0sNjgyMzgxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NyZWF0ZVNjb3BlZFZpc2libGVFbGVtZW50RmlsdGVyOigpPT5kLGdldEFjdGl2ZUVsZW1lbnRTZWxlY3RvcnM6KCk9PmMsaXNIVE1MT3JTVkdFbGVtZW50OigpPT5oLGlzSW5lcnRSb290OigpPT5hLGlzVmlzaWJpbGl0eVZpc2libGU6KCk9PnJ9KTtjb25zdCBpPVsiYnV0dG9uIiwiZmllbGRzZXQiLCJvcHRncm91cCIsIm9wdGlvbiIsInNlbGVjdCIsInRleHRhcmVhIiwiaW5wdXQiXSxuPVsiYnV0dG9uIiwiaW5wdXQiLCJzZWxlY3QiLCJ0ZXh0YXJlYSIsImFbaHJlZl0iLCJhdWRpb1tjb250cm9sc10iLCJ2aWRlb1tjb250cm9sc10iLCdbdGFiaW5kZXg9IjAiXScsJ1tjb250ZW50ZWRpdGFibGU9InRydWUiXSddLm1hcCgoZT0+aS5pbmNsdWRlcyhlKT9gJHtlfTpub3QoOmRpc2FibGVkKWA6ZSkpLm1hcCgoZT0+YCR7ZX06bm90KFt0YWJpbmRleD0iLTEiXSlgKSkuam9pbigiLCIpO2Z1bmN0aW9uIHIoZSl7cmV0dXJuInZpc2libGUiPT09Z2V0Q29tcHV0ZWRTdHlsZShlKS52aXNpYmlsaXR5fWZ1bmN0aW9uIHMoZSx0KXtpZihlLm1hdGNoZXMoIltpbmVydF0sW2luZXJ0XSAqIikpcmV0dXJuITA7bGV0IG89ZTtmb3IoO28hPT10JiZudWxsIT09bzspe2lmKGwobykpcmV0dXJuITA7bz1vLnBhcmVudEVsZW1lbnR9cmV0dXJuITF9ZnVuY3Rpb24gYShlKXtyZXR1cm4gZS5tYXRjaGVzKCJbaW5lcnRdIil8fGwoZSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4ibm9uZSI9PT1nZXRDb21wdXRlZFN0eWxlKGUpLmRpc3BsYXl9ZnVuY3Rpb24gYygpe3JldHVybiBufWZ1bmN0aW9uIGQoZSl7cmV0dXJuIHQ9PnIodCkmJiFzKHQsZSl9ZnVuY3Rpb24gaChlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50fHxlIGluc3RhbmNlb2YgU1ZHRWxlbWVudH19LDk2NDU5NChlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSl7cmV0dXJuIHQ9PntlLmZvckVhY2goKGU9PnsiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQpOm51bGwhPWUmJihlLmN1cnJlbnQ9dCl9KSl9fWZ1bmN0aW9uIG4oZSl7cmV0dXJuIGkoW2VdKX1vLmQodCx7aXNvbW9ycGhpY1JlZjooKT0+bixtZXJnZVJlZnM6KCk9Pml9KX0sNzE4NTUzKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse091dHNpZGVFdmVudDooKT0+bn0pO3ZhciBpPW8oMjM2NzY1KTtmdW5jdGlvbiBuKGUpe2NvbnN0e2NoaWxkcmVuOnQsLi4ub309ZTtyZXR1cm4gdCgoMCxpLnVzZU91dHNpZGVFdmVudCkobykpfX0sOTAzNDIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7T3ZlcmxhcE1hbmFnZXI6KCk9PnMsZ2V0Um9vdE92ZXJsYXBNYW5hZ2VyOigpPT5sfSk7dmFyIGk9bygxMzg2MzgpLG49byg1NzAxOTMpO2NsYXNzIHJ7Y29uc3RydWN0b3IoKXt0aGlzLl9zdG9yYWdlPVtdfWFkZChlKXt0aGlzLl9zdG9yYWdlLnB1c2goZSl9cmVtb3ZlKGUpe3RoaXMuX3N0b3JhZ2U9dGhpcy5fc3RvcmFnZS5maWx0ZXIoKHQ9PmUhPT10KSl9aGFzKGUpe3JldHVybiB0aGlzLl9zdG9yYWdlLmluY2x1ZGVzKGUpfWdldEl0ZW1zKCl7cmV0dXJuIHRoaXMuX3N0b3JhZ2V9fWNsYXNzIHN7Y29uc3RydWN0b3IoZT1kb2N1bWVudCl7dGhpcy5fc3RvcmFnZT1uZXcgcix0aGlzLl93aW5kb3dzPW5ldyBNYXAsdGhpcy5faW5kZXg9MCx0aGlzLl9kb2N1bWVudD1lLHRoaXMuX2NvbnRhaW5lcj1lLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKX1zZXRDb250YWluZXIoZSl7Y29uc3QgdD10aGlzLl9jb250YWluZXIsbz1udWxsPT09ZT90aGlzLl9kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk6ZTshZnVuY3Rpb24oZSx0KXtBcnJheS5mcm9tKGUuY2hpbGROb2RlcykuZm9yRWFjaCgoZT0+e2Uubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmdC5hcHBlbmRDaGlsZChlKX0pKX0odCxvKSx0aGlzLl9jb250YWluZXI9b31yZWdpc3RlcldpbmRvdyhlKXt0aGlzLl9zdG9yYWdlLmhhcyhlKXx8dGhpcy5fc3RvcmFnZS5hZGQoZSl9ZW5zdXJlV2luZG93KGUsdD17cG9zaXRpb246ImZpeGVkIixkaXJlY3Rpb246Im5vcm1hbCJ9KXtjb25zdCBvPXRoaXMuX3dpbmRvd3MuZ2V0KGUpCjtpZih2b2lkIDAhPT1vKXJldHVybiBvO3RoaXMucmVnaXN0ZXJXaW5kb3coZSk7Y29uc3QgaT10aGlzLl9kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpZihpLnN0eWxlLnBvc2l0aW9uPXQucG9zaXRpb24saS5zdHlsZS56SW5kZXg9dGhpcy5faW5kZXgudG9TdHJpbmcoKSxpLmRhdGFzZXQuaWQ9ZSx2b2lkIDAhPT10LmluZGV4KXtjb25zdCBlPXRoaXMuX2NvbnRhaW5lci5jaGlsZE5vZGVzLmxlbmd0aDtpZih0LmluZGV4Pj1lKXRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChpKTtlbHNlIGlmKHQuaW5kZXg8PTApdGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLHRoaXMuX2NvbnRhaW5lci5maXJzdENoaWxkKTtlbHNle2NvbnN0IGU9dGhpcy5fY29udGFpbmVyLmNoaWxkTm9kZXNbdC5pbmRleF07dGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLGUpfX1lbHNlInJldmVyc2UiPT09dC5kaXJlY3Rpb24/dGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLHRoaXMuX2NvbnRhaW5lci5maXJzdENoaWxkKTp0aGlzLl9jb250YWluZXIuYXBwZW5kQ2hpbGQoaSk7cmV0dXJuIHRoaXMuX3dpbmRvd3Muc2V0KGUsaSksKyt0aGlzLl9pbmRleCxpfXVucmVnaXN0ZXJXaW5kb3coZSl7dGhpcy5fc3RvcmFnZS5yZW1vdmUoZSk7Y29uc3QgdD10aGlzLl93aW5kb3dzLmdldChlKTt2b2lkIDAhPT10JiYobnVsbCE9PXQucGFyZW50RWxlbWVudCYmdC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHQpLHRoaXMuX3dpbmRvd3MuZGVsZXRlKGUpKX1nZXRaaW5kZXgoZSl7Y29uc3QgdD10aGlzLmVuc3VyZVdpbmRvdyhlKTtyZXR1cm4gcGFyc2VJbnQodC5zdHlsZS56SW5kZXh8fCIwIil9bW92ZUxhc3RXaW5kb3dUb1RvcCgpe2NvbnN0IGU9dGhpcy5fc3RvcmFnZS5nZXRJdGVtcygpLHQ9ZVtlLmxlbmd0aC0xXTt0JiZ0aGlzLm1vdmVUb1RvcCh0KX1tb3ZlVG9Ub3AoZSl7aWYodGhpcy5nZXRaaW5kZXgoZSkhPT10aGlzLl9pbmRleCl7Y29uc3QgdD10aGlzLmVuc3VyZVdpbmRvdyhlKTt0aGlzLl93aW5kb3dzLmZvckVhY2goKChlLG8pPT57ZS5oYXNBdHRyaWJ1dGUobi5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFKSYmZS5zZXRBdHRyaWJ1dGUobi5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFLGU9PT10PyJ0cnVlIjoiZmFsc2UiKX0pKSx0LnN0eWxlLnpJbmRleD0oKyt0aGlzLl9pbmRleCkudG9TdHJpbmcoKX19cmVtb3ZlV2luZG93KGUpe3RoaXMudW5yZWdpc3RlcldpbmRvdyhlKX19Y29uc3QgYT1uZXcgV2Vha01hcDtmdW5jdGlvbiBsKGU9ZG9jdW1lbnQpe2NvbnN0IHQ9ZS5nZXRFbGVtZW50QnlJZCgib3ZlcmxhcC1tYW5hZ2VyLXJvb3QiKTtpZihudWxsIT09dClyZXR1cm4oMCxpLmVuc3VyZURlZmluZWQpKGEuZ2V0KHQpKTt7Y29uc3QgdD1uZXcgcyhlKSxvPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gdC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLHQuc3R5bGUuekluZGV4PTE1MC4udG9TdHJpbmcoKSx0LnN0eWxlLnRvcD0iMHB4Iix0LnN0eWxlLmxlZnQ9IjBweCIsdC5pZD0ib3ZlcmxhcC1tYW5hZ2VyLXJvb3QiLHQuZGF0YXNldC5xYUlkPSJvdmVybGFwLW1hbmFnZXItcm9vdCIsdH0oZSk7cmV0dXJuIGEuc2V0KG8sdCksdC5zZXRDb250YWluZXIobyksZS5ib2R5LmFwcGVuZENoaWxkKG8pLHR9fXZhciBjOyFmdW5jdGlvbihlKXtlW2UuQmFzZVppbmRleD0xNTBdPSJCYXNlWmluZGV4In0oY3x8KGM9e30pKX0sOTM0MDgxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1NUT1JZX1BPU1RFUlM6KCk9Pml9KTtjb25zdCBpPVt7bmFtZToibmVvbiIscG9zdGVyOm8ucCsibmVvbi5mZjkzMzEwZTc5NWQ1NGE1ZDM5Yi53ZWJwIn0se25hbWU6Im1hcnMiLHBvc3RlcjpvLnArIm1hcnMuY2I2YTM3MWZhNzgyMzY2MzQzYmUud2VicCJ9LHtuYW1lOiJzbm93Iixwb3N0ZXI6by5wKyJzbm93LjhmNWVjOWNkODRhNzUyZjQ2YjY4LndlYnAifV19LDg0MjEwMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtpc1Nob3dQcm9tb1ZpZGVvOigpPT5zfSk7dmFyIGk9byg4MDk0MzYpO2NvbnN0IG49aVsibWVkaWEtbWYtdGFibGV0LWxhbmRzY2FwZSJdLHI9aVsibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIl07ZnVuY3Rpb24gcygpe2NvbnN0IGU9d2luZG93Lm1hdGNoTWVkaWEobikubWF0Y2hlcyx0PXdpbmRvdy5tYXRjaE1lZGlhKHIpLm1hdGNoZXMsbz13aW5kb3cuaW5uZXJXaWR0aCxpPXdpbmRvdy5pbm5lckhlaWdodDtyZXR1cm4hIWV8fCEhdCYmaT49b319LDk3ODU0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse29uZVRhcFNpZ25Nb2RhbERlbGVnYXRlOigpPT5pfSk7Y29uc3QgaT1uZXcobyg5NDgzODApLkRlbGVnYXRlKX0sNjEzODcwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2lzU2lnbk1vZGFsT3BlbjooKT0+ZCxzaG93U2lnbk1vZGFsOigpPT5jfSk7dmFyIGk9byg4NDIxMDIpLG49byg5Nzg1NCkscj1vKDcxOTE5NCkscz1vKDc1NjI3MSksYT1vKDkzNDA4MSk7bGV0IGw9KCk9PiExO2FzeW5jIGZ1bmN0aW9uIGMoZSl7Y29uc3QgdD0oMCxpLmlzU2hvd1Byb21vVmlkZW8pKCksbj1PYmplY3QuYXNzaWduKHt9LGUse2lzU2hvd1ZpZGVvOnR9KTtpZih3aW5kb3cuVFZEJiZ3aW5kb3cuVFZELnNpZ25JbilyZXR1cm4gd2luZG93LlRWRC5zaWduSW4obik7e3QmJmZ1bmN0aW9uKCl7Y29uc3R7cG9zdGVyOmV9PWEuU1RPUllfUE9TVEVSU1soMCxyLnBpY2tTdG9yeUluZGV4KShzLlNUT1JZX05BTUVTKV0sdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7dC5yZWw9InByZWxvYWQiLHQuYXM9ImltYWdlIix0LmhyZWY9ZSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpfSgpCjtjb25zdCBlPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODU1MzcpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMzg1KSxvLmUoOTQ5NDgpLG8uZSg5NDIzMiksby5lKDE5NTk1KSxvLmUoMTk3ODcpLG8uZSgyNDU4MSksby5lKDExMjE4KSxvLmUoODU3OSksby5lKDcyNjY2KSxvLmUoNzA4MTUpLG8uZSg3NDM4MSksby5lKDE1NTI2KSxvLmUoOTM0MTYpLG8uZSgzNzc2Nyksby5lKDMyNjMyKSxvLmUoMzUxOTgpLG8uZSg0NjU5MSksby5lKDk0MDU0KSxvLmUoNTA2MjIpLG8uZSgzODg2OCksby5lKDU5MzUwKSxvLmUoMjA5ODYpLG8uZSgzMjM4Nyksby5lKDQ0NzgwKSxvLmUoNzU5MzApLG8uZSg4NTk3NCldKS50aGVuKG8uYmluZChvLDczMDg0MSkpO3JldHVybiBsPWUuaXNTaWduTW9kYWxPcGVuLGUuc2hvd1NpZ25Nb2RhbChuKX19ZnVuY3Rpb24gZCgpe3JldHVybiBsKCl9bi5vbmVUYXBTaWduTW9kYWxEZWxlZ2F0ZS5zdWJzY3JpYmUobnVsbCxjKX0sNzE5MTk0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3BpY2tTdG9yeUluZGV4OigpPT5yfSk7dmFyIGk9byg5MzIzNjUpO2NvbnN0IG49InNpZ25pbi1wcm9tby1zdG9yeSI7ZnVuY3Rpb24gcihlKXtjb25zdCB0PWZ1bmN0aW9uKCl7dHJ5e2NvbnN0IGU9aS5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pO2lmKG51bGw9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYic3RyaW5nIj09dHlwZW9mIHQubmFtZSYmIm51bWJlciI9PXR5cGVvZiB0LnRpbWVzdGFtcD90Om51bGx9Y2F0Y2h7cmV0dXJuIG51bGx9fSgpLG89bnVsbCE9PXQ/ZS5pbmRleE9mKHQubmFtZSk6LTE7aWYobnVsbCE9PXQmJi0xIT09byYmRGF0ZS5ub3coKS10LnRpbWVzdGFtcDw4NjRlNSlyZXR1cm4gbztjb25zdCByPWZ1bmN0aW9uKGUsdCl7aWYoZTw9MXx8dDwwKXJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZSk7cmV0dXJuKHQrMStNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqKGUtMSkpKSVlfShlLmxlbmd0aCxvKTtyZXR1cm4gaS5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKG4sSlNPTi5zdHJpbmdpZnkoe25hbWU6ZVtyXSx0aW1lc3RhbXA6RGF0ZS5ub3coKX0pKSxyfX0sNzU2MjcxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1NUT1JZX05BTUVTOigpPT5pfSk7Y29uc3QgaT1bIm5lb24iLCJtYXJzIiwic25vdyJdfSwyMjI0MjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWdncmVnYXRlRXJyb3I6KCk9PlMsQXBpRXJyb3I6KCk9PnksU01TX0JBTk5FRF9TVEFUVVM6KCk9PnIsYWNjdW11bGF0ZUVycm9yczooKT0+YSxjaGVja1Bob25lQ29kZTooKT0+dSxjb250aW51ZVBhcnRpYWxBdXRoOigpPT5FLGZpcnN0TG9naW5EYXRhOigpPT5kLGZpcnN0TG9naW5EYXRhVXJsOigpPT5zLGdlbmVyYXRlU2lnbmluQ2hhbGxlbmdlOigpPT54LGdldEFwaUVycm9yTWVzc2FnZTooKT0+YixyZWNvdmVyUGFzc3dvcmQ6KCk9PkMscmVjb3ZlclBhc3N3b3JkVXJsOigpPT53LHJlY292ZXJ5UGFzc3dvcmQ6KCk9Pl8scmVzZW5kTGluazooKT0+aCxzZWNvbmRGYWN0b3JTaWduaW46KCk9PkEsc2lnbmluOigpPT5nLHNpZ25pblVybDooKT0+cCxzaWdudXA6KCk9PmYsc2lnbnVwVXJsOigpPT52LHNvY2lhbEF1dGg6KCk9PlR9KTt2YXIgaT1vKDM4NDAxNyksbj1vKDE4NTI3MSk7Y29uc3Qgcj00MDMscz0iL2FjY291bnRzL2ZpcnN0X2xvZ2luX2RhdGEvIjtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLm1hcCgoZT0+bmV3IHkoZVsxXS5qb2luKCJcbiIpLHQsZVswXSkpKX1mdW5jdGlvbiBsKGUsdCl7cmV0dXJuKDAsaS5mZXRjaCkoZSx7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoiaW5jbHVkZSIsbW9kZToic2FtZS1vcmlnaW4iLGJvZHk6dH0pfWFzeW5jIGZ1bmN0aW9uIGMoZSl7dHJ5e3JldHVybiBhd2FpdCBlLmpzb24oKX1jYXRjaHt0aHJvdyBuZXcgeShuLnQobnVsbCx7Y29udGV4dDoiYXBpIGVycm9yIn0sbyg2ODM2MjcpKSxlLnN0YXR1cywic2VydmVyX2Vycm9yIil9fWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGwocyxlKS50aGVuKChlPT5lLm9rP2MoZSk6YyhlKS50aGVuKCh0PT57dGhyb3cgbmV3IFMoYSh0LmVycm9ycyxlLnN0YXR1cykpfSkpKSl9ZnVuY3Rpb24gaCgpe3JldHVybiBsKCIvYXBpL3YxL3VzZXJzL2Fub24vY2hhbmdlLWVtYWlsL3Jlc2VuZC8iKS50aGVuKChlPT5lLm9rP2MoZSk6YyhlKS50aGVuKChlPT57dGhyb3cgRXJyb3IoZS5lcnJvcil9KSkpKX1mdW5jdGlvbiB1KGUpe3JldHVybiBsKCIvYXBpL3YxL3JlY292ZXJfcGFzc3dvcmQvY2hlY2tfcGhvbmVfY29kZS8iLGUpLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKGU9Pnt0aHJvdyBFcnJvcihlLmVycm9yKX0pKSkpfWZ1bmN0aW9uIF8oZSl7cmV0dXJuIGwoIi9hcGkvdjEvcmVjb3Zlcl9wYXNzd29yZC8iLGUpLnRoZW4oKGU9PmUpKX1jb25zdCBwPSIvYWNjb3VudHMvc2lnbmluLyI7ZnVuY3Rpb24gbShlKXtyZXR1cm4gYyhlKS50aGVuKCh0PT57aWYoImVycm9ycyJpbiB0JiZPYmplY3Qua2V5cyh0LmVycm9ycykubGVuZ3RoKXRocm93IG5ldyBTKGEodC5lcnJvcnMsZS5zdGF0dXMpKTtpZigiZXJyb3IiaW4gdCYmIiIhPT10LmVycm9yfHwiY29kZSJpbiB0fHwhZS5vayl0aHJvdyBuZXcgeSh0LmVycm9yfHx0LmRldGFpbCxlLnN0YXR1cyx0LmNvZGUsdC5jb25maXJtX2F1dGhfZGF0YSx0LnR3b19mYWN0b3JfdHlwZXMsZnVuY3Rpb24oZSl7aWYoZS5zaWduYXR1cmUpcmV0dXJue3NpZ25hdHVyZTplLnNpZ25hdHVyZSxlbWFpbDplLmVtYWlsfHwiIixwaG9uZTplLnBob25lfHwiIixzb2NpYWxzOltdfTtyZXR1cm59KHQpKTtyZXR1cm4gdH0pKX1mdW5jdGlvbiBnKGUpe3JldHVybiBsKHAsZSkudGhlbihtKX1jb25zdCB2PSIvYWNjb3VudHMvc2lnbnVwLyI7ZnVuY3Rpb24gZihlKXtyZXR1cm4gbCh2LGUpLnRoZW4oKGU9PmMoZSkudGhlbigodD0+ewppZigiZXJyb3JzImluIHQmJiIiIT09dC5lcnJvcnMpdGhyb3cgbmV3IFMoYSh0LmVycm9ycyxlLnN0YXR1cykpfSkpKSl9Y2xhc3MgeSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUsdCxvLGksbixyKXtzdXBlcihlKSx0aGlzLnR5cGU9byx0aGlzLnN0YXR1cz10LHRoaXMuc2Vjb25kRmFjdG9yVHlwZXM9bix0aGlzLnNvY2lhbENvbmZpcm1EYXRhPWksdGhpcy5yZXNldFBhc3N3b3JkRGF0YT1yfX1mdW5jdGlvbiBiKGUsdCl7cmV0dXJuIGUgaW5zdGFuY2VvZiB5JiZ2b2lkIDAhPT1lLnN0YXR1cz9gJHtlLm1lc3NhZ2V8fHR8fG4udChudWxsLHtjb250ZXh0OiJhcGkgZXJyb3IifSxvKDY4MzYyNykpfSAoJHtlLnN0YXR1c30pYDplIGluc3RhbmNlb2YgRXJyb3ImJmUubWVzc2FnZT9lLm1lc3NhZ2U6dHx8bi50KG51bGwse2NvbnRleHQ6ImFwaSBlcnJvciJ9LG8oNjgzNjI3KSl9Y2xhc3MgUyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUubWFwKChlPT5lLm1lc3NhZ2UpKS5qb2luKCJcbiIpKSx0aGlzLmVycm9ycz1bXSx0aGlzLmVycm9ycz1lfX1jb25zdCB3PSIvYXBpL3YxL3JlY292ZXJfcGFzc3dvcmQvc2VhcmNoLyI7ZnVuY3Rpb24gQyhlKXtyZXR1cm4gbCh3LGUpLnRoZW4obSl9Y29uc3Qgaz17QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIn07ZnVuY3Rpb24gVChlLHQpe2NvbnN0IG89bmV3IFVSTCh3aW5kb3cub3JpZ2luKyIvYWNjb3VudHMvY29tcGxldGUvYW5kcm9pZC1qd3QvIik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKHQpLmZvckVhY2goKChbZSx0XSk9PnQmJm8uc2VhcmNoUGFyYW1zLmFwcGVuZChlLHQpKSksKDAsaS5mZXRjaCkoby5ocmVmLHttZXRob2Q6IlBPU1QiLGJvZHk6ZSxoZWFkZXJzOmt9KS50aGVuKG0pfWZ1bmN0aW9uIEUoZSx0KXtjb25zdCBvPW5ldyBVUkwod2luZG93Lm9yaWdpbitgL2FjY291bnRzL2NvbXBsZXRlLyR7ZX0vYCksbj1uZXcgRm9ybURhdGE7cmV0dXJuIG4uYXBwZW5kKCJwYXJ0aWFsX3Rva2VuIix0KSwoMCxpLmZldGNoKShvLmhyZWYse21ldGhvZDoiUE9TVCIsYm9keTpuLGhlYWRlcnM6a30pLnRoZW4obSl9ZnVuY3Rpb24geChlKXtyZXR1cm4gbChgL2FjY291bnRzL3R3by1mYWN0b3Ivc2lnbmluLyR7ZX0vZ2VuZXJhdGUtY2hhbGxlbmdlL2ApLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKCh7ZGV0YWlsOmV9KT0+e3Rocm93IEVycm9yKGUpfSkpKSl9ZnVuY3Rpb24gQShlLHQpe3JldHVybiBsKGAvYWNjb3VudHMvdHdvLWZhY3Rvci9zaWduaW4vJHtlfS9gLHQpLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKHQ9PntpZigicmVxdWlyZV9wYXJhbWV0ZXJzIj09PXQuY29kZSl0aHJvdyBuZXcgUyhhKHQuZXJyb3JzLGUuc3RhdHVzKSk7dGhyb3cgbmV3IHkodC5kZXRhaWwsZS5zdGF0dXMsdC5jb2RlKX0pKSkpfX0sOTczMDQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3RyaWVzVHJhbnNsYXRlQ291bnRyaWVOYW1lOigpPT5ufSk7dmFyIGk9bygxODUyNzEpO2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1yLmdldChlKTtyZXR1cm4gdm9pZCAwIT09dD90KCk6ZX0KY29uc3Qgcj1uZXcgTWFwKFtbIkFmcmljYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MDM0NCkpXSxbIkFtZXJpY2FzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkxNDY0KSldLFsiQXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY4OTE4MikpXSxbIkV1cm9wZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk1MjM2NykpXSxbIlBhY2lmaWMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5OTA1NzUpKV0sWyJNaWRkbGUgRWFzdCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY4NTc1MSkpXSxbIkFmZ2hhbmlzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkzMTAxKSldLFsiw4VsYW5kIElzbGFuZHMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MDY1NTQpKV0sWyJBbGFuZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTA2NTU0KSldLFsiQWxiYW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI4MDAyNSkpXSxbIkFsZ2VyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyOTYxODEpKV0sWyJBbWVyaWNhbiBTYW1vYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwNDU1MykpXSxbIkFuZG9ycmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NjUyMTMpKV0sWyJBbmdvbGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NzcyMCkpXSxbIkFuZ3VpbGxhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODU0OTAyKSldLFsiQW50YXJjdGljYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI5NzU3MCkpXSxbIkFudGlndWEgYW5kIEJhcmJ1ZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NDU4OSkpXSxbIkFyZ2VudGluYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg1NzU4NykpXSxbIkFybWVuaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3Nzk5NTIpKV0sWyJBcnViYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDExNDc1NikpXSxbIkF1c3RyYWxpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3OTIzMykpXSxbIkF1c3RyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMzgyNzgpKV0sWyJBemVyYmFpamFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDY4MTcpKV0sWyJCYWhhbWFzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzM1MjU5KSldLFsiQmFocmFpbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU3ODY2NSkpXSxbIkJhbmdsYWRlc2giLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTIwMTUpKV0sWyJCYXJiYWRvcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgyOTM4NykpXSxbIkJlbGFydXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1MjM1NTIpKV0sWyJCZWxnaXVtIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODMzMjQpKV0sWyJCZWxpemUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3ODc3MDEpKV0sWyJCZW5pbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU4ODg0OCkpXSxbIkJlcm11ZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTQ3MzcpKV0sWyJCaHV0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODQ0NDIpKV0sWyJCb2xpdmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTMxMzA0KSldLFsiQm9uYWlyZSwgU2ludCBFdXN0YXRpdXMgYW5kIFNhYmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NTcyMzUpKV0sWyJCb3NuaWEgYW5kIEhlcnplZ292aW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTcwNjkxKSldLFsiQm90c3dhbmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0MjUzNzgpKV0sWyJCb3V2ZXQgSXNsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzMwNzYzKSldLFsiQnJhemlsIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjEyOTY3KSldLFsiQnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzQ0MjQ2KSldLFsiQnJpdGlzaCBWaXJnaW4gSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MzM0MCkpXSxbIkJydW5laSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDM5MTkwNikpXSxbIkJ1bGdhcmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzE0MDMxKSldLFsiQnVya2luYSBGYXNvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk4Mjk3KSldLFsiQnVydW5kaSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc1ODIyKSldLFsiQ2FibyBWZXJkZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYwMTA5NykpXSxbIkNhbWJvZGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTU1NDg5KSldLFsiQ2FtZXJvb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NzcwMjgpKV0sWyJDYW5hZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNTE4OSkpXSxbIkNheW1hbiBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjQxMDI2KSldLFsiQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzc0NzgpKV0sWyJDaGFkIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDgzNTUpKV0sWyJDaGlsZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkwNDMzOCkpXSxbIkNoaW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjAyNTE5KSldLFsiQ2hyaXN0bWFzIElzbGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk1NjQ2NCkpXSxbIkNvY29zIChLZWVsaW5nKSBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzI1NzMyKSldLFsiQ29sb21iaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMzU4NjcpKV0sWyJDb21vcm9zIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDg0MTM2KSldLFsiQ29uZ28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NjQ4NTgpKV0sWyJDb25nbyAodGhlIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3MTU1OCkpXSxbIkNvb2sgSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcwODg1OSkpXSxbIkN1cmFjYW8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1ODk0MTcpKV0sWyJDb3N0YSBSaWNhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjY4ODQ0KSldLFsiQ8O0dGUgZCdJdm9pcmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0OTg3NjIpKV0sWyJDcm9hdGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA3NCkpXSxbIkN1YmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NjkxNDApKV0sWyJDdXJhw6dhbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk0NTE3MSkpXSxbIkN5cHJ1cyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYzNDczNykpXSxbIkN6ZWNoaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyNjE5OTApKV0sWyJDemVjaCBSZXB1YmxpYyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEyOTgwOCkpXSxbIkRlbm1hcmsiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NTI1MDEpKV0sWyJEamlib3V0aSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDUwNzc5OCkpXSxbIkRvbWluaWNhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk0MzI2KSldLFsiRG9taW5pY2FuIFJlcHVibGljIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODE4NjA0KSldLFsiRWN1YWRvciIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQxMzM5NykpXSxbIkVneXB0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzM3NDM3KSldLFsiRWwgU2FsdmFkb3IiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4ODA4NzIpKV0sWyJFcXVhdG9yaWFsIEd1aW5lYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc0NjUyNCkpXSxbIkVyaXRyZWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzA4NzMpKV0sWyJFc3RvbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTQxMjApKV0sWyJGYWxrbGFuZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkzNDc1KSldLFsiRXN3YXRpbmkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4OTgzMDMpKV0sWyJFdGhpb3BpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMzMTkxKSldLFsiRXVyb3BlYW4gVW5pb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1MzUxNDYpKV0sWyJGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcykiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2MDc3MjMpKV0sWyJGYXJvZSBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDUyNDg3KSldLFsiRmlqaSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE1MjQwOSkpXSxbIkZpbmxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NzY0NTQpKV0sWyJGcmFuY2UiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMzYyMzgpKV0sWyJGcmVuY2ggR3VpYW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTc2MDc5KSldLFsiRnJlbmNoIFBvbHluZXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg2MzgyNSkpXSxbIkZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMyODYwNykpXSxbIkdhYm9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzY3NjkwKSldLFsiR2FtYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzA4Nzg1KSldLFsiR2VvcmdpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NTk1MSkpXSxbIkdlcm1hbnkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NjY2OTgpKV0sWyJHaGFuYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ5ODY3OSkpXSxbIkdpYnJhbHRhciIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc3MTAxNykpXSxbIkdyZWVjZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5MzI4OSkpXSxbIkdyZWVubGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMxODM5OSkpXSxbIkdyZW5hZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MzIwODYpKV0sWyJHdWFkZWxvdXBlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTY0ODc3KSldLFsiR3VhbSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU0NDMyNSkpXSxbIkd1YXRlbWFsYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg3NzQ4NykpXSxbIkd1ZXJuc2V5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA4OTE2KSldLFsiR3VpbmVhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDM2NDU1KSldLFsiR3VpbmVhLUJpc3NhdSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwODIyOSkpXSxbIkd1eWFuYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0MjExNikpXSxbIkhhaXRpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODk0NzA5KSldLFsiSGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjM2MTIzKSldLFsiSG9seSBTZWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMjc0OSkpXSxbIkhvbmR1cmFzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjAyODE2KSldLFsiSG9uZyBLb25nIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDYzNzc5KSldLFsiSHVuZ2FyeSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY2MTM2NikpXSxbIkljZWxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NDAxODgpKV0sWyJJbmRpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDM3MjUyMCkpXSxbIkluZG9uZXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgwMjk3NSkpXSxbIklyYXEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzNzE3NDYpKV0sWyJJcmVsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzExNTI3KSldLFsiSXNsZSBvZiBNYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDc4MjUpKV0sWyJJc3JhZWwiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MDMzNTQpKV0sWyJJdGFseSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg5ODE2MykpXSxbIkphbWFpY2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNjM1KSldLFsiSmFwYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDAwNjgpKV0sWyJKZXJzZXkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMTg1OTgpKV0sWyJKb3JkYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1ODMwMDkpKV0sWyJLYXpha2hzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjc3NTYwKSldLFsiS2VueWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MTQ5NjYpKV0sWyJLaXJpYmF0aSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ0NjI5MykpXSxbIktvc292byIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY3Njg2KSldLFsiS3V3YWl0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzk1MTMwKSldLFsiS3lyZ3l6c3RhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ1ODY2MCkpXSxbIkxhb3MiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTExODApKV0sWyJMYXR2aWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODI3NzMpKV0sWyJMZWJhbm9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTQ1NjEzKSldLFsiTGVzb3RobyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MzM5NSkpXSxbIkxpYmVyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2NjIxKSldLFsiTGlieWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NTUzNTIpKV0sWyJMaWVjaHRlbnN0ZWluIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzg2NjY3KSldLFsiTGl0aHVhbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODkyMTAwKSldLFsiTHV4ZW1ib3VyZyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk3NTQ0NykpXSxbIk1hY2F1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTMyMjY5KSldLFsiTWFjYW8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMDcwNjIpKV0sWyJNYWNlZG9uaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTkxMDgpKV0sWyJNYWRhZ2FzY2FyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjYwMTg4KSldLFsiTWFsYXdpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjQ1OTQ4KSldLFsiTWFsYXlzaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2Mjc5NjcpKV0sWyJNYWxkaXZlcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMzMTYxNSkpXSxbIk1hbGkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2MjM0NjUpKV0sWyJNYWx0YSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU2MzIzNykpXSxbIk1hcnNoYWxsIElzbGFuZHMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0Nzc4NDMpKV0sWyJNYXJ0aW5pcXVlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTM1MTUyKSldLFsiTWF1cml0YW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY2Nzk5NikpXSxbIk1hdXJpdGl1cyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE1MDA1NCkpXSxbIk1heW90dGUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0ODMxNDkpKV0sWyJNZXhpY28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NjU3MDApKV0sWyJNaWNyb25lc2lhIChGZWRlcmF0ZWQgU3RhdGVzIG9mKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI5MTA5OCkpXSxbIk1vbGRvdmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMjEzMzYpKV0sWyJNb25hY28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDg5MDQpKV0sWyJNb25nb2xpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkxMzcwOSkpXSxbIk1vbnRlbmVncm8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzkzNjUpKV0sWyJNb250c2VycmF0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzMzMjYyKSldLFsiTW9yb2NjbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcyMTQzMykpXSxbIk1vemFtYmlxdWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMDAwMjYpKV0sWyJNeWFubWFyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjM5NDMpKV0sWyJOYW1pYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTcwNjE4KSldLFsiTmF1cnUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NzM0MzcpKV0sWyJOZXBhbCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ3MTI4OCkpXSxbIk5ldGhlcmxhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjE2ODYyKSldLFsiTmV3IENhbGVkb25pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0OTU4OCkpXSxbIk5ldyBaZWFsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDIxNikpXSxbIk5pY2FyYWd1YSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYyMzQ0MCkpXSxbIk5pZ2VyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTkyMTg5KSldLFsiTmlnZXJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0OTg2OCkpXSxbIk5pdWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MDc0NzApKV0sWyJOb3Jmb2xrIElzbGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk2NzQxMikpXSxbIk5vcnRoIE1hY2Vkb25pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcyOTc4MikpXSxbIk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYxMjU1NykpXSxbIk5vcndheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0NTUyMykpXSxbIk9tYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODUyOTMpKV0sWyJQYWtpc3RhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0NDQzNikpXSxbIlBhbGF1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzk4NDc2KSldLFsiUGFsZXN0aW5lLCBTdGF0ZSBvZiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY5ODA4MykpXSxbIlBhbmFtYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwMDcyOSkpXSxbIlBhcHVhIE5ldyBHdWluZWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MjU2OTcpKV0sWyJQYXJhZ3VheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQyMDEzNSkpXSxbIlBlcnUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NTExMTEpKV0sWyJQaGlsaXBwaW5lcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYxMzY0NykpXSxbIlBpdGNhaXJuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzg0MzgyKSldLFsiUG9sYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTY4NjA5KSldLFsiUG9ydHVnYWwiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzOTg5NCkpXSxbIlB1ZXJ0byBSaWNvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODQzMzI3KSldLFsiUWF0YXIiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MzM3NTMpKV0sWyJSw6l1bmlvbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg3MjY4MCkpXSxbIkxhIFJldW5pb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NzI2ODApKV0sWyJSb21hbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTA1OTQ1KSldLFsiUnVzc2lhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTM0ODgzKSldLFsiUnVzc2lhbiBGZWRlcmF0aW9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzkwNTk4KSldLFsiU0lOVCBNQUFSVEVOIChEVVRDSCBQQVJUKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NTAyMSkpXSxbIlJ3YW5kYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc1ODI5NykpXSxbIlNhaW50IEJhcnRow6lsZW15IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk5NDgzKSldLFsiU2FpbnQgSGVsZW5hLCBBc2NlbnNpb24gYW5kIFRyaXN0YW4gZGEgQ3VuaGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NTU4MzUpKV0sWyJTYWludCBLaXR0cyBhbmQgTmV2aXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NzY5NzUpKV0sWyJTYWludCBMdWNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI1ODMxMSkpXSxbIlNhaW50IE1hcnRpbiAoRnJlbmNoIHBhcnQpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDI1MDY0KSldLFsiU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NzAzNSkpXSxbIlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjIyNjEzKSldLFsiU2Ftb2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTg5NjMpKV0sWyJTYW4gTWFyaW5vIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTk5NzYyKSldLFsiU2FvIFRvbWUgYW5kIFByaW5jaXBlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjc5MzgyKSldLFsiU2F1ZGkgQXJhYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzYxNTIzKSldLFsiU2VuZWdhbCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDIyNDI4OSkpXSxbIlNlcmJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcxODUyOSkpXSxbIlNleWNoZWxsZXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0MjA4MjEpKV0sWyJTaWVycmEgTGVvbmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNjQ5OTIpKV0sWyJTaW5nYXBvcmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2NDM3OTUpKV0sWyJTaW50IE1hYXJ0ZW4gKER1dGNoIHBhcnQpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM2NDApKV0sWyJTbG92YWtpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI2MzQzMikpXSxbIlNsb3ZlbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzIxODIxKSldLFsiU29sb21vbiBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTgxNzgpKV0sWyJTb21hbGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjAwNTcpKV0sWyJTb3V0aCBBZnJpY2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTAwODIpKV0sWyJTb3V0aCBHZW9yZ2lhIGFuZCB0aGUgU291dGggU2FuZHdpY2ggSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ0Nzg1NCkpXSxbIlNvdXRoIEtvcmVhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTg3NzUyKSldLFsiU291dGggU3VkYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTcxODYpKV0sWyJTcGFpbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc4ODMyMSkpXSxbIlNyaSBMYW5rYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgwNDc2NikpXSxbIlN1ZGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTc0NDA0KSldLFsiU3VyaW5hbWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MTg4MzcpKV0sWyJTdmFsYmFyZCBhbmQgSmFuIE1heWVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTczOTE1KSldLFsiU3dlZGVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzY5OTYzKSldLFsiU3dpdHplcmxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzM5NzEpKV0sWyJTeXJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3NDQ4NSkpXSxbIlRhaXdhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3MzE1NykpXSxbIlRhamlraXN0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5Njg0NTgpKV0sWyJUYW56YW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ5ODE4MykpXSxbIlRoYWlsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTUzMDQ0KSldLFsiVGltb3ItTGVzdGUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MDMwNTEpKV0sWyJUb2dvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODMyNDQ4KSldLFsiVG9rZWxhdSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwNDE3NykpXSxbIlRvbmdhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjUwNTU1KSldLFsiVHJpbmlkYWQgYW5kIFRvYmFnbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMxNDg3KSldLFsiVHVuaXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY3NzU5KSldLFsiVHVya2V5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjMxODEwKSldLFsiVHVya21lbmlzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM1NjgzKSldLFsiVHVya3MgYW5kIENhaWNvcyBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTcwNjI0KSldLFsiVHV2YWx1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDMwMTM0KSldLFsiVS5TLiBWaXJnaW4gSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQzMTM3NykpXSxbIlVBRSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE2MzExMCkpXSxbIlVTQSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwMTExNykpXSxbIlVnYW5kYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU4ODY5MykpXSxbIlVrcmFpbmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTc0NzUpKV0sWyJVbml0ZWQgQXJhYiBFbWlyYXRlcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0OTA5MSkpXSxbIlVuaXRlZCBLaW5nZG9tIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjgyNzMpKV0sWyJVbml0ZWQgU3RhdGVzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTY3OTQxKSldLFsiVW5pdGVkIFN0YXRlcyBNaW5vciBPdXRseWluZyBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM2Nzk5KSldLFsiVXJ1Z3VheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkyODU1MykpXSxbIlVTQSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwMTExNykpXSxbIlV6YmVraXN0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3ODM5NzApKV0sWyJWYW51YXR1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDE2MjU3KSldLFsiVmVuZXp1ZWxhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjQzNTAzKSldLFsiVmlldG5hbSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg1MjIxKSldLFsiVmlyZ2luIElzbGFuZHMgKEJyaXRpc2gpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDIzMjA2KSldLFsiVmlyZ2luIElzbGFuZHMgKFUuUy4pIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzAxMjI5KSldLFsiV2FsbGlzIGFuZCBGdXR1bmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTA1MDUpKV0sWyJXZXN0ZXJuIFNhaGFyYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg4MTI3NykpXSxbIlllbWVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA5Mzg0KSldLFsiWmFtYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODY3MzkzKSldLFsiWmltYmFid2UiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NTkxNTUpKV1dKQp9LDE1OTUxMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRRdW90ZVNlc3Npb25JbnN0YW5jZTooKT0+YX0pO3ZhciBpPW8oOTI3NTkzKSxuPW8oNzU1NjI3KSxyPW8oMTUwMTUwKTtjb25zdCBzPXt9O2Z1bmN0aW9uIGEoZT0iZnVsbCIpe3JldHVybiBzW2VdfHxmdW5jdGlvbihlPSJmdWxsIix0KXtzW2VdPXR9KGUsbmV3IGkuUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIoe25hbWU6ZSxhcGk6d2luZG93LkNoYXJ0QXBpSW5zdGFuY2UsZmllbGRzOmxbZV0sZXh0ZW5zaW9uczp7Zm9ybWF0dGVyOmU9Pm5ldyBjKGUpLmZvcm1hdHRlcixzbmFwc2hvdDplPT5uZXcgZChlKS5zbmFwc2hvdH19KSksc1tlXX1jb25zdCBsPXtzaW1wbGU6WyJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJjaCIsImNocCIsImN1cnJlbmN5LWxvZ29pZCIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImJhc2VfY3VycmVuY3lfaWQiLCJjdXJyZW50X3Nlc3Npb24iLCJkZXNjcmlwdGlvbiIsImV4Y2hhbmdlIiwiZm9ybWF0IiwiZnJhY3Rpb25hbCIsImlzX3RyYWRhYmxlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxpc3RlZF9leGNoYW5nZSIsImxvZ29pZCIsImxwIiwibHBfdGltZSIsIm1pbm1vdiIsIm1pbm1vdmUyIiwib3JpZ2luYWxfbmFtZSIsInByaWNlc2NhbGUiLCJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIiwidXBkYXRlX21vZGUiLCJ2b2x1bWUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJ2YWx1ZV91bml0X2lkIiwidW5pdF9pZCIsIm1lYXN1cmUiXX07bC5zaW1wbGVEZXRhaWxlZD1bLi4ubC5zaW1wbGUsImFzayIsImJpZCIsImZ1bmRhbWVudGFscyIsImhpZ2hfcHJpY2UiLCJpc190cmFkYWJsZSIsImxvd19wcmljZSIsIm9wZW5fcHJpY2UiLCJwcmV2X2Nsb3NlX3ByaWNlIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwic3RhdHVzIiwiYmFzaWNfZXBzX25ldF9pbmNvbWUiLCJiZXRhXzFfeWVhciIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJpbmR1c3RyeSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJzZWN0b3IiLCJ2b2x1bWUiLCJkaXZpZGVuZHNfeWllbGQiLCJ0aW1lem9uZSJdLGwuZnVsbD1bXSxsLndhdGNobGlzdD1bLi4ubC5zaW1wbGUsInJjaHAiLCJuY2hwIiwicnRjIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJkaXZpZGVuZHNfYXZhaWxhYmlsaXR5IiwiZmluYW5jaWFsc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiXSxsLnBvcnRmb2xpbz1bInByb19uYW1lIiwic2hvcnRfbmFtZSIsImV4Y2hhbmdlIiwibGlzdGVkX2V4Y2hhbmdlIiwiZGVzY3JpcHRpb24iLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxhbmd1YWdlIiwic2VjdG9yIiwidHlwZSIsInR5cGVzcGVjcyIsImluZHVzdHJ5IiwiY3VycmVuY3lfY29kZSIsImN1cnJlbmN5X2lkIiwiY2giLCJjaHAiLCJsb2dvIiwibG9nb2lkIiwiY3VycmVuY3ktbG9nb2lkIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxIiwibHAiLCJmcmFjdGlvbmFsIiwibWlubW92IiwibWlubW92ZTIiLCJwcmljZXNjYWxlIiwidm9sdW1lIiwiYXZlcmFnZV92b2x1bWUiLCJtYXJrZXRfY2FwX2NhbGMiLCJtYXJrZXRfY2FwX2Jhc2ljIiwidG90YWxfcmV2ZW51ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJwcmljZV9lYXJuaW5nc190dG0iLCJiZXRhXzFfeWVhciIsImRwc19jb21tb25fc3RvY2tfcHJpbV9pc3N1ZV9meSIsImRpdmlkZW5kc195aWVsZCIsImZ1bmRhbWVudGFsX2N1cnJlbmN5X2NvZGUiLCJyYXRlc19tYyIsInJhdGVzX2Z5IiwicmF0ZXNfdHRtIiwiZm9ybWF0IiwidmFsdWVfdW5pdF9pZCIsInVuaXRfaWQiLCJtZWFzdXJlIl0sbC5ub3Rlcz1bInNob3J0X25hbWUiLCJwcm9fbmFtZSIsImxvZ29pZCIsImN1cnJlbmN5LWxvZ29pZCIsImJhc2UtY3VycmVuY3ktbG9nb2lkIiwibG9nbyIsInN5bWJvbC1wcmltYXJ5bmFtZSIsInR5cGUiLCJ0eXBlc3BlY3MiXSxsLmVzdGltYXRlcz1bImZ1bmRhbWVudGFsX2RhdGEiLCJ0eXBlIiwidHlwZXNwZWNzIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfc3ltYm9sX2N1cnJlbmN5X2ZxIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2FsaWduZWRfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9jYWxlbmRhcl9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiXSxsLmVjb25vbWljPVsicmVmZXJlbmNlLWxhc3QtcGVyaW9kIiwibHAiLCJjdXJyZW5jeV9jb2RlIiwidmFsdWVfdW5pdF9pZCIsInVuaXRfaWQiLCJtZWFzdXJlIl0sbC5vcHRpb25zPVsiYXNrIiwiYmlkIiwibHAiLCJ2b2x1bWUiLCJjaCIsImNocCJdO2NsYXNzIGN7Y29uc3RydWN0b3IoZSl7dGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGU9e30sdGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnM9e30sdGhpcy5mb3JtYXR0ZXI9KGUsdCk9PntpZih0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXSlyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnNbZV07ZnVuY3Rpb24gbyhlKXtjb25zdCBvPXQmJiFlLmZyYWN0aW9uYWw/MTplLm1pbm1vdjtyZXR1cm4gbmV3IG4uUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6ZS5wcmljZXNjYWxlLG1pbk1vdmU6byxmcmFjdGlvbmFsOmUuZnJhY3Rpb25hbCxtaW5Nb3ZlMjplLm1pbm1vdmUyfSl9Y29uc3QgaT1uZXcgUHJvbWlzZSgoKHQsaSk9PntpZih0aGlzLl9mb3JtYXR0ZXJWYWx1ZXNDYWNoZVtlXSl0KG8odGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV0pKTtlbHNle2NvbnN0IG49KDAsci5ndWlkKSgpO3RoaXMuX211bHRpcGxleGVyLnN1YnNjcmliZShuLFtlXSwocj0+eyJlcnJvciI9PT1yLnN0YXR1cyYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsCmkoIlF1b3RlcyBzbmFwc2hvdCBpcyBub3QgcmVjZWl2ZWQiKSksZnVuY3Rpb24oZSl7cmV0dXJuIGUmJm51bGwhPWUucHJpY2VzY2FsZSYmbnVsbCE9ZS5taW5tb3Z9KHIudmFsdWVzKSYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsdGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV09ci52YWx1ZXMsdChvKHIudmFsdWVzKSksdGhpcy5fbXVsdGlwbGV4ZXIudW5zdWJzY3JpYmUobixlKSl9KSl9fSkpO3JldHVybiB0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1pLGl9LHRoaXMuX211bHRpcGxleGVyPWV9fWNsYXNzIGR7Y29uc3RydWN0b3IoZSl7dGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZT17fSx0aGlzLl93YWl0aW5nRm9yU25hcHNob3Q9e30sdGhpcy5zbmFwc2hvdD1lPT57aWYodGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdKXJldHVybiB0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV07Y29uc3QgdD1uZXcgUHJvbWlzZSgoKHQsbyk9PntpZih0aGlzLl9zbmFwc2hvdFZhbHVlc0NhY2hlW2VdKXQodGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZVtlXSk7ZWxzZXtjb25zdCBpPSgwLHIuZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUoaSxbZV0sKG49PnsiZXJyb3IiPT09bi5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV09bnVsbCxvKCJRdW90ZXMgc25hcHNob3QgaXMgbm90IHJlY2VpdmVkIikpO2NvbnN0IHI9bi52YWx1ZXM7ciYmci5taW5tb3YmJnIucHJpY2VzY2FsZSYmci5kZXNjcmlwdGlvbiYmKHRoaXMuX3dhaXRpbmdGb3JTbmFwc2hvdFtlXT1udWxsLHRoaXMuX3NuYXBzaG90VmFsdWVzQ2FjaGVbZV09cix0KHIpLHRoaXMuX211bHRpcGxleGVyLnVuc3Vic2NyaWJlKGksZSkpfSkpfX0pKTtyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdPXQsdH0sdGhpcy5fbXVsdGlwbGV4ZXI9ZX19InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2U9YSl9LDk3MTA1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtHUk9VUF9QQVRIX1BBVFRFUk46KCk9Pm4sTk9URVNfUEFUSF9QQVRURVJOOigpPT5pLFVOQVRURU5ERURfUEFUSF9QQVRURVJOOigpPT5yLHBhdGhUb0dyb3VwOigpPT5zfSk7Y29uc3QgaT0iL25vdGVzLyIsbj0iL25vdGVzL2dyb3Vwcy86c3ltYm9sLyIscj0iL25vdGVzL3VuYXR0ZW5kZWQvIjtmdW5jdGlvbiBzKGUpe3JldHVybiBlP24ucmVwbGFjZSgiOnN5bWJvbCIsZW5jb2RlVVJJQ29tcG9uZW50KGUpKTpyfX0sODI3MDEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7YXZhaWxhYmxlT2ZmZXJzOigpPT5ufSk7dmFyIGk9bygzODQwMTcpO2NvbnN0IG49bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5faXNJbnZhbGlkPSEwLHRoaXMuX29mZmVycz17fX1ydW5PclVwZGF0ZShlKXt0aGlzLl9pc0ludmFsaWQ/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2s/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2soKCgpPT50aGlzLl91cGRhdGVPZmZlcnMoKS50aGVuKGUpKSk6c2V0VGltZW91dCgoKCk9PnRoaXMuX3VwZGF0ZU9mZmVycygpLnRoZW4oZSkpLDApOmUodGhpcy5fb2ZmZXJzKX1nZXREYXRhKCl7cmV0dXJuIHRoaXMuX29mZmVyc31pbnZhbGlkYXRlKGUpe3RoaXMuX2lzSW52YWxpZD0hMCx3aW5kb3cudXNlci5hdmFpbGFibGVfb2ZmZXJzPXt9LHRoaXMucnVuT3JVcGRhdGUoZT8/KCgpPT57fSkpfXNldEluaXRpYWwoZSl7dGhpcy5faXNJbnZhbGlkPSExLHRoaXMuX29mZmVycz1lLHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnM9dGhpcy5fb2ZmZXJzfWVuc3VyZU9mZmVycygpe3JldHVybiBuZXcgUHJvbWlzZSgoZT0+dGhpcy5ydW5PclVwZGF0ZShlKSkpfXdpdGhBdmFpbGFibGVPZmZlcnMoZSl7cmV0dXJuIGFzeW5jKC4uLnQpPT4oYXdhaXQgdGhpcy5lbnN1cmVPZmZlcnMoKSxlKC4uLnQpKX1hc3luYyBfdXBkYXRlT2ZmZXJzKCl7cmV0dXJuIHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnN8fCh3aW5kb3cudXNlci5hdmFpbGFibGVfb2ZmZXJzPXt9KSx0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlP3RoaXMuX3VwZGF0ZU9mZmVyc1Byb21pc2U6dGhpcy5faXNJbnZhbGlkPyh0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlPSgwLGkuZmV0Y2gpKCIvYXBpL3YxL29mZmVycy8iLHttZXRob2Q6IkdFVCIsY3JlZGVudGlhbHM6ImluY2x1ZGUifSkudGhlbigoYXN5bmMgZT0+e2NvbnN0IHQ9YXdhaXQgZS5qc29uKCk7cmV0dXJuIGRlbGV0ZSB0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlLHRoaXMuX2lzSW52YWxpZD0hMSx0aGlzLl9vZmZlcnM9T2JqZWN0LmVudHJpZXModCkucmVkdWNlKCgoZSxbdCxvXSk9PihvJiYoZVt0XT1vKSxlKSkse30pLHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnM9dGhpcy5fb2ZmZXJzLHR9KSkuY2F0Y2goKCgpPT4oe30pKSksdGhpcy5fdXBkYXRlT2ZmZXJzUHJvbWlzZSk6dGhpcy5fb2ZmZXJzfX19LDc3NDUwNyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtVc2VyU3RhdHVzOigpPT5pfSk7dmFyIGksbj1vKDg2NDAzNCkscj1vKDYzODU3MSk7IWZ1bmN0aW9uKGUpe2UuTm9uUHJvPSJub25fcHJvIixlLlBybz0icHJvIn0oaXx8KGk9e30pKTsoMCxyLm1lbW9pemUpKCgoKT0+d2luZG93LnVzZXIuaXNfdHJpYWwmJndpbmRvdy51c2VyLnByb19wbGFuP3dpbmRvdy51c2VyLmlzX2V4cGVydHx8d2luZG93LnVzZXIuZGVjbGFyZWRfc3RhdHVzIT09aS5Qcm8/bi5XRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOOm4uTU9OVEhMWV9TVUJTQ1JJUFRJT05fREFZU19MRU46bi5XRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOKSl9LDk2MDIyOShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRTY3JlZW5lckNvdW50cmllc01hcDooKT0+c30pO3ZhciBpPW8oMTM3ODc5KSxuPW8oMzg5OTk0KTtsZXQgcj1udWxsO2Z1bmN0aW9uIHMoKXtpZihyKXJldHVybiByO3I9e307Zm9yKGNvbnN0IGUgb2YgbilpZihpLmNvdW50cmllcy5oYXNPd25Qcm9wZXJ0eShlKSl7CmNvbnN0IHQ9ZSxvPWkuY291bnRyaWVzW3RdLG49by5zY3JlZW5lck5hbWUscz1vLmV4Y2hhbmdlc1N0b2Nrc3x8W107clt0XT17Li4ubyxzY3JlZW5lck5hbWU6bixleGNoYW5nZXNTdG9ja3M6cyxncm91cDpvLmdyb3VwfX1yZXR1cm4gcn19LDIxNDA2MChlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpPW8oNDgyNTA0KTtjb25zdCBuPW8oMjIxMDYxKS5nZXRMb2dnZXIoIkNvbW1vblVJLkNyZWF0ZVRWQmxvY2tQbHVnaW4iKTtlLmV4cG9ydHMuY3JlYXRlVHZCbG9ja1dpdGhJbnN0YW5jZT1mdW5jdGlvbihlLHQpe2lmKGUmJnQpcmV0dXJuIGU9ZS50b1N0cmluZygpLGZ1bmN0aW9uKHIscyxhKXt2YXIgbCxjLGQ7cmV0dXJuImdldCI9PT1yP2w9czooYz1zLCJvYmplY3QiPT10eXBlb2YgciYmdm9pZCAwPT09cz8oYz1yLHI9ImluaXQiKToic3RyaW5nIiE9dHlwZW9mIHImJihyPSJpbml0IikpLCJnZXRJbnN0YW5jZSI9PT1yP2kodGhpcykuZXEoMCkuZGF0YShlKToiZGVzdHJveSI9PT1yPyhkPWkodGhpcykuZXEoMCkuZGF0YShlKSk/dm9pZCgiZnVuY3Rpb24iPT10eXBlb2YgZC5kZXN0cm95PyhvKGQsImRlc3Ryb3kiLGMpLGkodGhpcykuZXEoMCkucmVtb3ZlRGF0YShlKSk6bi5sb2dFcnJvcigiW0Jsb2NrIFBsdWdpbl0gIitlKyIgZG9lcyBub3Qgc3VwcG9ydCBkZXN0cm95IGNvbW1hbmQiKSk6dm9pZCBjb25zb2xlLndhcm4oIltCbG9jayBQbHVnaW5dIFRyeWluZyB0byBleGVjdXRlIGRlc3Ryb3kgbWV0aG9kIG9mICIrZSsiIGJ1dCBpdCBoYXMgbm90IGJlZW4gaW5pdGVkIik6ImdldCI9PT1yPyhkPWkodGhpcykuZXEoMCkuZGF0YShlKSk/ImZ1bmN0aW9uIj09dHlwZW9mIGRbbF0/byhkLGwsYSk6ZFtsXTp2b2lkIGNvbnNvbGUud2FybigiW0Jsb2NrIFBsdWdpbl0gVHJ5aW5nIHRvIGdldCBwcm9wIG9yIGV4ZWN1dGUgbWV0aG9kIG9mICIrZSsiIGJ1dCBpdCBoYXMgbm90IGJlZW4gaW5pdGVkIik6aSh0aGlzKS5lYWNoKChmdW5jdGlvbigpe3ZhciBzPWkodGhpcyksYT1zLmRhdGEoZSk7dm9pZCAwPT09YSYmKGE9dm9pZCAwPT09Yz90KHMpOnQocyxjKSxzLmRhdGEoZSxhKSksImluaXQiIT09ciYmKCJmdW5jdGlvbiI9PXR5cGVvZiBhW3JdP28oYSxyLGMpOm4ubG9nRXJyb3IoIltCbG9jayBQbHVnaW5dICIrZSsiIGRvZXMgbm90IHN1cHBvcnQgY29tbWFuZCAiK3IpKX0pKX07ZnVuY3Rpb24gbyhlLHQsbyl7cmV0dXJuIHZvaWQgMD09PW8/ZVt0XSgpOmVbdF0obyl9fX0sMjE1NTM5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RlZmF1bHQ6KCk9Pmh9KTt2YXIgaT1vKDIxNDA2MCksbj0obygyNjIzMTkpLG8oNDgyNTA0KSkscj1vKDQ5MTg2KSx7bWVyZ2U6c309byg2MDE4NDEpO2NvbnN0IGE9bygyMjEwNjEpLmdldExvZ2dlcigiVWkuVHZDb250cm9sQ2hlY2tib3giKSxsPXtsYWJlbFdyYXBwZXI6J3t7I2hhc0xhYmVsfX08bGFiZWw+e3sjbGFiZWxMZWZ0fX08c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwge3sjbGFiZWxBZGRDbGFzc319e3tsYWJlbEFkZENsYXNzfX17ey9sYWJlbEFkZENsYXNzfX0iPnt7bGFiZWxMZWZ0fX08L3NwYW4+e3svbGFiZWxMZWZ0fX17ez4gaW5wdXRXcmFwcGVyIH19e3sjbGFiZWxSaWdodH19PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIHt7I2xhYmVsQWRkQ2xhc3N9fXt7bGFiZWxBZGRDbGFzc319e3svbGFiZWxBZGRDbGFzc319Ij57e2xhYmVsUmlnaHR9fTwvc3Bhbj57ey9sYWJlbFJpZ2h0fX08L2xhYmVsPnt7L2hhc0xhYmVsfX17e15oYXNMYWJlbH19e3s+IGlucHV0V3JhcHBlciB9fXt7L2hhc0xhYmVsfX0nLGlucHV0V3JhcHBlcjonPHt7IHRhZyB9fSBjbGFzcz0ie3sgY3VzdG9tQ2xhc3MgfX17eyNkaXNhYmxlZH19IGktZGlzYWJsZWR7ey9kaXNhYmxlZH19Ij57e15oYXNDaGVja2JveH19e3s+IGNoZWNrYm94IH19e3svaGFzQ2hlY2tib3h9fXt7PiBib3ggfX08L3t7IHRhZyB9fT4nLGNoZWNrYm94Oic8aW5wdXR7eyNpZH19IGlkPSJ7eyBpZCB9fSJ7ey9pZH19IGNsYXNzPSJ7ez4gY2hlY2tib3hDbGFzcyB9fSIgdHlwZT0iY2hlY2tib3gie3sjbmFtZX19IG5hbWU9Int7IG5hbWUgfX0ie3svbmFtZX19e3sjY2hlY2tlZH19IGNoZWNrZWR7ey9jaGVja2VkfX17eyNkaXNhYmxlZH19IGRpc2FibGVke3svZGlzYWJsZWR9fT4nLGNoZWNrYm94Q2xhc3M6Int7IGN1c3RvbUNsYXNzIH19X19pbnB1dCIsYm94Oic8c3BhbiBjbGFzcz0ie3sgY3VzdG9tQ2xhc3MgfX1fX2JveCB7eyNib3hBZGRDbGFzc319e3tib3hBZGRDbGFzc319e3svYm94QWRkQ2xhc3N9fSI+JytvKDQ4ODg3NSkrIjwvc3Bhbj4ifSxjPSJpLWluaXRlZCI7Y2xhc3MgZHtjb25zdHJ1Y3Rvcih7Y3VzdG9tQ2xhc3M6ZT0idHYtY29udHJvbC1jaGVja2JveCIsJGNoZWNrYm94OnQsdGFnOm8saWQ6aSxuYW1lOnIsY2hlY2tlZDpzLGRpc2FibGVkOmwsbGFiZWxMZWZ0OmQsbGFiZWxSaWdodDpoLGxhYmVsQWRkQ2xhc3M6dSxib3hBZGRDbGFzczpffSl7dGhpcy4kZWw9bnVsbCx2b2lkIDA9PT1vJiYobz1kfHxoPyJzcGFuIjoibGFiZWwiKTtjb25zdCBwPXQgaW5zdGFuY2VvZiBuJiYhIXQubGVuZ3RoO2lmKHApe2lmKCF0LmlzKCJpbnB1dFt0eXBlPWNoZWNrYm94XSIpKXJldHVybiB2b2lkIGEubG9nRXJyb3IoImAkY2hlY2tib3hgIG5lZWQgdG8gYmUgaW5wdXRbdHlwZT1jaGVja2JveF0iKTtpZih0Lmhhc0NsYXNzKGMpKXJldHVybjt0aGlzLl9zZXRJbnB1dElkKHQsaSksdGhpcy5fc2V0SW5wdXRDbGFzcyh0LGUpLHRoaXMuX3NldElucHV0TmFtZSh0LHIpLHRoaXMuX3NldElucHV0Q2hlY2tlZCh0LHMpLHRoaXMuX3NldElucHV0RGlzYWJsZWQodCxsKSxzPSEhdC5wcm9wKCJjaGVja2VkIiksbD0hIXQuYXR0cigiZGlzYWJsZWQiKX10aGlzLiRlbD10aGlzLnJlbmRlcih7JGNoZWNrYm94OnQsaGFzQ2hlY2tib3g6cCxjdXN0b21DbGFzczplLHRhZzpvLGlkOmksbmFtZTpyLGNoZWNrZWQ6cyxkaXNhYmxlZDpsLGxhYmVsTGVmdDpkLGxhYmVsUmlnaHQ6aCxoYXNMYWJlbDpkfHxoLGxhYmVsQWRkQ2xhc3M6dSxib3hBZGRDbGFzczpffSksCnRoaXMuJGNoZWNrYm94PXA/dDp0aGlzLiRlbC5maW5kKCJpbnB1dFt0eXBlPWNoZWNrYm94XSIpfV9zZXRJbnB1dElkKGUsdCl7dm9pZCAwIT09dCYmZS5hdHRyKCJpZCIsdCl9X3NldElucHV0Q2xhc3MoZSx0KXtjb25zdCBvPXIucmVuZGVyKGwuY2hlY2tib3hDbGFzcyx7Y3VzdG9tQ2xhc3M6dH0pO2UuYWRkQ2xhc3Mobyl9X3NldElucHV0TmFtZShlLHQpe3ZvaWQgMCE9PXQmJmUuYXR0cigibmFtZSIsdCl9X3NldElucHV0Q2hlY2tlZChlLHQpe3ZvaWQgMCE9PXQmJmUucHJvcCgiY2hlY2tlZCIsISF0KX1fc2V0SW5wdXREaXNhYmxlZChlLHQpe3ZvaWQgMCE9PXQmJih0P2Uuc2V0QXR0cmlidXRlKCJkaXNhYmxlZCIsImRpc2FibGVkIik6ZS5yZW1vdmVBdHRyKCJkaXNhYmxlZCIpKX1yZW5kZXIoZSl7Y29uc3QgdD1lLiRjaGVja2JveCxvPW4oci5yZW5kZXIobC5sYWJlbFdyYXBwZXIsZSxsKSk7aWYoZS5oYXNDaGVja2JveCl7by5pbnNlcnRCZWZvcmUodCk7by5maW5kKCIuIitlLmN1c3RvbUNsYXNzKS5hbmRTZWxmKCkuZmlsdGVyKCIuIitlLmN1c3RvbUNsYXNzKS5lcSgwKS5wcmVwZW5kKHQuZGV0YWNoKCkpLHQuYWRkQ2xhc3MoYyl9cmV0dXJuIG99c2V0IGNoZWNrZWQoZSl7dGhpcy5fc2V0SW5wdXRDaGVja2VkKHRoaXMuJGNoZWNrYm94LCEhZSl9Z2V0IGNoZWNrZWQoKXtyZXR1cm4hIXRoaXMuJGNoZWNrYm94LnByb3AoImNoZWNrZWQiKX19bi5mbi50dkNvbnRyb2xDaGVja2JveD0oMCxpLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1jb250cm9sLWNoZWNrYm94IiwoZnVuY3Rpb24oZSx0PXt9KXtyZXR1cm4gbmV3IGQocyh0LHskY2hlY2tib3g6ZX0pKX0pKTtjb25zdCBoPWR9LDU1MDY4MihlLHQsbyl7InVzZSBzdHJpY3QiO28ucih0KSxvLmQodCx7RHJvcGRvd25WaWV3OigpPT5sfSk7byg5ODY3MDUpLG8oMzc2NDUwKTt2YXIgaT1vKDkzMDIzMSksbj1vKDIxNDA2MCkscj1vKDE4OTMpLHM9bygzMzczNjIpLGE9byg0ODI1MDQpO2NsYXNzIGx7Y29uc3RydWN0b3IoZSx0PXt9KXt0aGlzLiRlbD1lLHRoaXMuJHdyYXA9dC4kd3JhcHx8ZS5maW5kKCIudHYtZHJvcGRvd24tYmVoYXZpb3JfX2J1dHRvbiIpLHRoaXMuJGJvZHk9dC4kYm9keXx8ZS5maW5kKCIudHYtZHJvcGRvd24tYmVoYXZpb3JfX2JvZHkiKSx0aGlzLm5vdENsb3NlV2l0aEN0cmw9ISF0Lm5vdENsb3NlV2l0aEN0cmwmJnQubm90Q2xvc2VXaXRoQ3RybCx0aGlzLmNsb3NlV2l0aEVzYz12b2lkIDA9PT10LmNsb3NlV2l0aEVzY3x8dC5jbG9zZVdpdGhFc2MsdGhpcy5jbG9zZVdpdGhFc2MmJnRoaXMuJGVsLmF0dHIoInRhYkluZGV4IiwwKSwoZS5kYXRhKCJzY3JvbGwiKXx8dC5zY3JvbGwpJiYodGhpcy4kc2Nyb2xsPXRoaXMuJGJvZHkuZmluZCgiLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiKSx0aGlzLiRpblNjcm9sbD10aGlzLiRzY3JvbGwuZmluZCgiLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19pbnNjcm9sbCIpLHRoaXMuc2Nyb2xsPW5ldyByLlNpZGViYXJDdXN0b21TY3JvbGwodGhpcy4kc2Nyb2xsWzBdLHRoaXMuJGluU2Nyb2xsWzBdLHtzaG93VG9wU2hhZG93OiExLHNob3dCb3R0b21TaGFkb3c6ITF9KSx0aGlzLiRzY3JvbGxCYXI9YSh0aGlzLnNjcm9sbC5nZXRTY3JvbGxCYXIoKSksdGhpcy4kc2Nyb2xsQmFyJiZ0aGlzLiRzY3JvbGxCYXIub24oIm1vdXNlZG93bi50di1kcm9wZG93bi12aWV3LXNjcm9sbCIsKCgpPT57dGhpcy5vZmZDbGlja091dHNpZGUoKSxhKGRvY3VtZW50KS5vbigibW91c2V1cC50di1kcm9wZG93bi12aWV3LXNjcm9sbCIsKCgpPT57dGhpcy5vbkNsaWNrT3V0c2lkZSgpLGEoZG9jdW1lbnQpLm9mZigibW91c2V1cC50di1kcm9wZG93bi12aWV3LXNjcm9sbCIpfSkpfSkpKSwoZS5kYXRhKCJhZGFwdEJvZHkiKXx8dC5hZGFwdEJvZHkpJiYodGhpcy5fYWRhcHRCb2R5PSEwKSwoZS5kYXRhKCJhZGFwdE9ubHlJblNjcm9sbEhlaWdodCIpfHx0LmFkYXB0T25seUluU2Nyb2xsSGVpZ2h0KSYmKHRoaXMuX2FkYXB0T25seUluU2Nyb2xsSGVpZ2h0PSEwKSx0aGlzLl9maXRTY3JlZW49ZS5kYXRhKCJmaXRTY3JlZW4iKXx8dC5maXRTY3JlZW4sdGhpcy5fbWF4SGVpZ2h0PWUuZGF0YSgibWF4SGVpZ2h0Iil8fHQubWF4SGVpZ2h0LHRoaXMuX2Ryb3Bkb3duV2lkdGg9ZS5kYXRhKCJkcm9wZG93bldpZHRoIil8fHQuZHJvcGRvd25XaWR0aCx0aGlzLl9ib3VuZGluZ0VsZW1lbnQ9dC5ib3VuZGluZ0VsZW1lbnQsdGhpcy4kd3JhcC5hZGQoZS5maW5kKCIuanMtZHJvcGRvd24tdG9nZ2xlIikpLm9uKCJjbGljayIsKGU9PnthKGUuY3VycmVudFRhcmdldCkuaGFzQ2xhc3MoImpzLXByZXZlbnQtZHJvcGRvd24iKXx8dGhpcy50b2dnbGUoKX0pKSx0aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZT1bXSwoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpJiZzLkVtYmVkVmlld3BvcnREaW1lbnNpb25zUHJvdmlkZXIuZ2V0SW5zdGFuY2UoKS5zdGFydExpc3RlbmluZygpfXRvZ2dsZSgpe3RoaXMub3BlbmVkP3RoaXMuY2xvc2UoITApOnRoaXMub3BlbigpfW9wZW4oKXt0aGlzLm9wZW5lZHx8dGhpcy5kaXNhYmxlZHx8dGhpcy5yZWFkb25seXx8KHRoaXMuJGVsLnRyaWdnZXIoImJlZm9yZU9wZW5NZW51IiksdGhpcy4kYm9keS5yZW1vdmVDbGFzcygiaS1oaWRkZW4iKS5hZGRDbGFzcygiaS1vcGVuZWQiKSx0aGlzLiR3cmFwLmFkZENsYXNzKCJpLWRyb3BwZWQiKSx0aGlzLiRlbC5hZGRDbGFzcygiaS1vcGVuZWQiKSwiaG9yeiI9PT10aGlzLl9maXRTY3JlZW4mJnRoaXMuZml0SG9yaXpvbnRhbGx5KCksdGhpcy5fYWRhcHRCb2R5JiZ0aGlzLmFkYXB0Qm9keSgpLHRoaXMub25DbGlja091dHNpZGUoKSx0aGlzLiRlbC50cmlnZ2VyKCJ1cGRhdGVTY3JvbGwiKSx0aGlzLiRlbC50cmlnZ2VyKCJhZnRlck9wZW5NZW51IiksdGhpcy5vcGVuZWQ9ITAsdGhpcy5jbG9zZVdpdGhFc2MmJnRoaXMuJGVsLm9uKCJrZXlwcmVzcyBrZXl1cCIsKGU9PnsyNz09PWUua2V5Q29kZSYmdGhpcy5jbG9zZSghMCl9KSkpfW9uQ2xpY2tPdXRzaWRlKCl7CnNldFRpbWVvdXQoKCgpPT57dGhpcy4kYm9keS5vbigiY2xpY2tvdXRzaWRlIiwoZT0+e3RoaXMuX2NoZWNrSWdub3JlQ2xpY2tPdXRzaWRlLmxlbmd0aCYmdGhpcy5fY2hlY2tJZ25vcmVDbGlja091dHNpZGUuc29tZSgodD0+dChlKSkpfHx0aGlzLmNsb3NlKCEwKX0pKX0pLDApfW9mZkNsaWNrT3V0c2lkZSgpe3RoaXMuJGJvZHkub2ZmKCJjbGlja291dHNpZGUiKX1zZXRDaGVja0lnbm9yZUNsaWNrT3V0c2lkZShlKXt0aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZS5wdXNoKGUpfWRyb3BDaGVja0lnbm9yZUNsaWNrT3V0c2lkZShlKXt2YXIgdD10aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZS5pbmRleE9mKGUpOy0xIT09dCYmdGhpcy5fY2hlY2tJZ25vcmVDbGlja091dHNpZGUuc3BsaWNlKHQsMSl9Y2xvc2UoZT0hMSl7IXRoaXMub3BlbmVkfHx0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwhZSYmdGhpcy5ub3RDbG9zZVdpdGhDdHJsJiYod2luZG93LmV2ZW50LmN0cmxLZXl8fHdpbmRvdy5ldmVudC5tZXRhS2V5KXx8KHRoaXMub2ZmQ2xpY2tPdXRzaWRlKCksdGhpcy4kd3JhcC5yZW1vdmVDbGFzcygiaS1kcm9wcGVkIiksdGhpcy4kZWwudHJpZ2dlcigiYmVmb3JlQ2xvc2VNZW51IiksdGhpcy4kYm9keS5yZW1vdmVDbGFzcygiaS1vcGVuZWQiKS5hZGRDbGFzcygiaS1oaWRkZW4iKSx0aGlzLiRlbC5yZW1vdmVDbGFzcygiaS1vcGVuZWQiKSx0aGlzLmNsb3NlV2l0aEVzYyYmdGhpcy4kZWwub2ZmKCJrZXlwcmVzcyBrZXl1cCIpLHRoaXMub3BlbmVkPSExLHRoaXMuJGVsLnRyaWdnZXIoImFmdGVyQ2xvc2VNZW51IikpfWlzT3BlbmVkKCl7cmV0dXJuIHRoaXMub3BlbmVkfXVwZGF0ZVNjcm9sbCgpe3RoaXMuc2Nyb2xsJiYodGhpcy5zY3JvbGwudXBkYXRlU2Nyb2xsQmFyKCksdGhpcy5zY3JvbGwuc2Nyb2xsVG9TdGFydCgpKX1lbmFibGUoKXt0aGlzLiR3cmFwLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdGhpcy5kaXNhYmxlZD0hMX1kaXNhYmxlKCl7dGhpcy4kd3JhcC5hZGRDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMuZGlzYWJsZWQ9ITB9c2V0UmVhZG9ubHkoZSl7dGhpcy5yZWFkb25seT1lfWFkYXB0Qm9keSgpe2NvbnN0IGU9dGhpcy4kYm9keSx0PXRoaXMuJHdyYXAuZ2V0KDApLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89dGhpcy5fYm91bmRpbmdFbGVtZW50P3RoaXMuX2JvdW5kaW5nRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTp7dG9wOjAsYm90dG9tOndpbmRvdy5pbm5lckhlaWdodCxoZWlnaHQ6d2luZG93LmlubmVySGVpZ2h0fTtpZigoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpKXtjb25zdCBlPXMuRW1iZWRWaWV3cG9ydERpbWVuc2lvbnNQcm92aWRlci5nZXRJbnN0YW5jZSgpLmRhdGEoKTtlJiYoby50b3A9TWF0aC5tYXgoby50b3AsZS50b3AtMzIpLG8uaGVpZ2h0PU1hdGgubWluKG8uaGVpZ2h0LGUuaGVpZ2h0KSxvLmJvdHRvbT1NYXRoLm1pbihvLmJvdHRvbSxlLmJvdHRvbSkpfWNvbnN0IG49cGFyc2VGbG9hdChlLmNzcygicGFkZGluZy10b3AiKSkscj1wYXJzZUZsb2F0KGUuY3NzKCJwYWRkaW5nLWJvdHRvbSIpKSxhPXRoaXMuJGluU2Nyb2xsLm91dGVySGVpZ2h0KCEwKStuK3I7aWYodGhpcy5zY3JvbGwmJnRoaXMuc2Nyb2xsLnNjcm9sbFRvU3RhcnQoKSx0aGlzLl9hZGFwdE9ubHlJblNjcm9sbEhlaWdodCl7Y29uc3QgaT1lLmZpbmQoIi5qcy1kcm9wZG93bi1kdW1teSIpLG49aT9wYXJzZUZsb2F0KGkuY3NzKCJwYWRkaW5nLWJvdHRvbSIpKStwYXJzZUZsb2F0KGkuY3NzKCJtYXJnaW4tYm90dG9tIikpOjAscz10LnRvcCt0LmhlaWdodCtuO3JldHVybiB2b2lkIHRoaXMuJGVsLmZpbmQoIi50di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIikuY3NzKCJtYXhIZWlnaHQiLG8uYm90dG9tLXItcy0yNSl9Y29uc3QgbD10aGlzLl9tYXhIZWlnaHR8fGEsYz10LnRvcCtsKzI1PD1vLmJvdHRvbSxkPW8udG9wKzE1K2w8PXQuYm90dG9tO2xldCBoLHU9dGhpcy5fbWF4SGVpZ2h0fHwiYXV0byI7aWYoYyloPS1uO2Vsc2UgaWYoZCloPS1sK3QuaGVpZ2h0K3I7ZWxzZXtoPS10LnRvcCtvLnRvcCsxNSsyNStuK3I7Y29uc3QgZT1vLmhlaWdodC0xNS0yNS1yO2w+ZSYmKHU9ZSl9ZS5jc3MoInRvcCIsaCksZS5oZWlnaHQodSksdGhpcy5fZHJvcGRvd25XaWR0aCYmZS53aWR0aCh0aGlzLl9kcm9wZG93bldpZHRoKX1maXRIb3Jpem9udGFsbHkoKXt0aGlzLiRib2R5LmNzcygibWFyZ2luTGVmdCIsMCk7Y29uc3QgZT1kb2N1bWVudC5ib2R5LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHQ9cGFyc2VGbG9hdChhKGRvY3VtZW50LmJvZHkpLmNzcygicGFkZGluZ1JpZ2h0IikpLG89dGhpcy4kYm9keS5vZmZzZXQoKTtvLnJpZ2h0PW8ubGVmdCt0aGlzLiRib2R5Lm91dGVyV2lkdGgoKTtjb25zdCBpPU1hdGgubWF4KE1hdGgubWluKDAsZS5yaWdodC10LW8ucmlnaHQpLGUubGVmdC1vLmxlZnQpO2kmJnRoaXMuJGJvZHkuY3NzKCJtYXJnaW5MZWZ0IixpKX1kZXN0cm95KCl7dGhpcy5zY3JvbGwmJnRoaXMuc2Nyb2xsLmRlc3Ryb3koKSx0aGlzLm9mZkNsaWNrT3V0c2lkZSgpLHRoaXMuJGVsLmZpbmQoIi5qcy1kcm9wZG93bi10b2dnbGUiKS5vZmYoImNsaWNrIiksdGhpcy4kd3JhcC5vZmYoImNsaWNrIil9fWEuZm4udHZEcm9wZG93bj0oMCxuLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1kcm9wZG93biIsKGZ1bmN0aW9uKGUsdD17fSl7cmV0dXJuIG5ldyBsKGUsdCl9KSl9LDkyNjk5NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzaG93U3VwcG9ydERpYWxvZzooKT0+bn0pO28oMzAwMjg2KTt2YXIgaT1vKDgyNzAxKTthc3luYyBmdW5jdGlvbiBuKGUpewpjb25zdCB0PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoMjY5NzMpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNjAwNjIpLG8uZSg0NjkwNyksby5lKDIwMzU0KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0OTQ4KSxvLmUoMjM2MjQpLG8uZSgzNjIyMiksby5lKDk0MjMyKSxvLmUoODM0ODgpLG8uZSgxOTU5NSksby5lKDE5Nzg3KSxvLmUoNjc3OTkpLG8uZSgxMTQ2MSksby5lKDk2NTg3KSxvLmUoMTEyMTgpLG8uZSg4NjQyMyksby5lKDM3NTEzKSxvLmUoODU3OSksby5lKDk1MDQpLG8uZSg0MDgzNSksby5lKDcyNjY2KSxvLmUoOTM0MjEpLG8uZSg0OTU4OCksby5lKDQ3NjMyKSxvLmUoNzQzODEpLG8uZSgxNTUyNiksby5lKDcxNDE0KSxvLmUoNjE4MjEpLG8uZSg1NDY4MSksby5lKDY2MjcwKSxvLmUoMzE4MzcpLG8uZSg5NzQ0KSxvLmUoMjA5NzEpLG8uZSg0OTUxOCksby5lKDM3NzY3KSxvLmUoMTk1MTMpLG8uZSgzMjYzMiksby5lKDM1MTk4KSxvLmUoNDY1OTEpLG8uZSg5NDA1NCksby5lKDE1MDkpLG8uZSg3NjY1KSxvLmUoODA3MzEpLG8uZSg1NDMxMCksby5lKDM2MzU2KSxvLmUoNzg0NzEpLG8uZSgyNTY5OCksby5lKDMzMzY4KSxvLmUoOTUxNTgpLG8uZSgzMjM4Nyksby5lKDc1MDQpLG8uZSg0NDc4MCksby5lKDcwNzEyKSxvLmUoODc4NTgpLG8uZSg1OTYxOSksby5lKDk5ODI3KSxvLmUoODE4NjgpLG8uZSgyMzM2NCksby5lKDIzNzQzKSxvLmUoNDIyODgpLG8uZSg3NzU3OCksby5lKDQ4ODU0KSxvLmUoMTk0NjMpLG8uZSg4NjA4KV0pLnRoZW4oby5iaW5kKG8sOTEyMjk5KSk7YXdhaXQgaS5hdmFpbGFibGVPZmZlcnMuZW5zdXJlT2ZmZXJzKCksbmV3IHQuU3VwcG9ydERpYWxvZyhlKS5vcGVuKCl9fSw5ODM2MTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7bWFwS2V5Q29kZVRvRGlyZWN0aW9uOigpPT5jLG5hdmlnYXRpb25PcmRlckNvbXBhcmF0b3I6KCk9PnMscXVlcnlGb2N1c2FibGVFbGVtZW50czooKT0+bCxxdWVyeVRhYmJhYmxlRWxlbWVudHM6KCk9PmF9KTt2YXIgaSxuPW8oOTY5MTY4KSxyPW8oNjgyMzgxKTtmdW5jdGlvbiBzKGUsdCl7cmV0dXJuIGU9PT10PzA6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORz8tMToxfWZ1bmN0aW9uIGEoZSl7cmV0dXJuIEFycmF5LmZyb20oZS5xdWVyeVNlbGVjdG9yQWxsKCdidXR0b246bm90KDpkaXNhYmxlZCk6bm90KFthcmlhLWRpc2FibGVkPSJ0cnVlIiBpXSk6bm90KFt0YWJpbmRleD0iLTEiXSksIFt0YWJpbmRleF06bm90KFtkaXNhYmxlZF0pOm5vdChbYXJpYS1kaXNhYmxlZD0idHJ1ZSIgaV0pOm5vdChbdGFiaW5kZXg9Ii0xIl0pJykpLmZpbHRlcigoMCxyLmNyZWF0ZVNjb3BlZFZpc2libGVFbGVtZW50RmlsdGVyKShlKSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4gQXJyYXkuZnJvbShlLnF1ZXJ5U2VsZWN0b3JBbGwoJ2J1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoW2FyaWEtZGlzYWJsZWQ9InRydWUiIGldKTpub3QoW2FyaWEtZGlzYWJsZWQ9IiJdKSwgW3RhYmluZGV4XTpub3QoW2Rpc2FibGVkXSk6bm90KFthcmlhLWRpc2FibGVkPSJ0cnVlIiBpXSk6bm90KFthcmlhLWRpc2FibGVkPSIiXSknKSkuZmlsdGVyKCgwLHIuY3JlYXRlU2NvcGVkVmlzaWJsZUVsZW1lbnRGaWx0ZXIpKGUpKX1mdW5jdGlvbiBjKGUpe2NvbnN0IHQ9KDAsbi5pc1J0bCkoKTtzd2l0Y2goZSl7Y2FzZSAzODpyZXR1cm4iYmxvY2tQcmV2IjtjYXNlIDQwOnJldHVybiJibG9ja05leHQiO2Nhc2UgMzc6cmV0dXJuIHQ/ImlubGluZU5leHQiOiJpbmxpbmVQcmV2IjtjYXNlIDM5OnJldHVybiB0PyJpbmxpbmVQcmV2IjoiaW5saW5lTmV4dCI7ZGVmYXVsdDpyZXR1cm4gbnVsbH19IWZ1bmN0aW9uKGUpe2UuQmxvY2tQcmV2PSJibG9ja1ByZXYiLGUuQmxvY2tOZXh0PSJibG9ja05leHQiLGUuSW5saW5lUHJldj0iaW5saW5lUHJldiIsZS5JbmxpbmVOZXh0PSJpbmxpbmVOZXh0In0oaXx8KGk9e30pKX0sMzg5ODQ0KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbigpPzA6cigpPzQ1Ok1hdGgubWluKE1hdGgubWF4KGUsNDUpLDQ1MCl9by5kKHQse2dldFdpZGdldEJhclBhZGRpbmc6KCk9Pml9KTtjb25zdCBuPSgpPT4hd2luZG93Lm1hdGNoTWVkaWEoIihtaW4td2lkdGg6IDc2OHB4KSIpLm1hdGNoZXMscj0oKT0+IXdpbmRvdy5tYXRjaE1lZGlhKCIobWluLXdpZHRoOiAxMjgwcHgpIikubWF0Y2hlc30sNzEyMTM0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0xJU1RfQ09MT1JTOigpPT51LExpc3RDb2xvcjooKT0+aSxjaGFuZ2VEZXNjcmlwdGlvbjooKT0+QyxjcmVhdGVDcm9zc1RhYlN5bmNNaWRkbGV3YXJlOigpPT5NLGdldENvbW1hbmRzOigpPT5MLGdldExpc3RCeUNvbG9yOigpPT5SLGdldFN5bWJvbENvbG9yOigpPT5JLGdldFN5bWJvbHNCeUNvbG9yOigpPT5GLGdldFRpbWVzdGFtcDooKT0+RCxpc0xpc3RDb2xvcjooKT0+XyxtYXJrTWFueTooKT0+ZixyZWR1Y2VyOigpPT5BLHJlbW92ZTooKT0+UyxyZW5hbWU6KCk9PncscmVuYW1lU2VwYXJhdG9yOigpPT5rLHJlc2V0OigpPT5iLHNldHVwOigpPT55LHNoaWZ0Q29tbWFuZDooKT0+VCx1cGRhdGVQZXJzaXN0ZWRTdGF0ZTooKT0+eH0pO3ZhciBpLG49bygxMzA2OTkpLHI9bygzMjcyMzkpLHM9bygxMzg2MzgpLGE9byg0MzMyMCksbD1vKDI5NTIzNSksYz1vKDYxMjQ0NiksZD1vKDkwMTAyMiksaD1vKDk3MzUyNCk7IWZ1bmN0aW9uKGUpe2UuUmVkPSJyZWQiLGUuQmx1ZT0iYmx1ZSIsZS5HcmVlbj0iZ3JlZW4iLGUuT3JhbmdlPSJvcmFuZ2UiLGUuUHVycGxlPSJwdXJwbGUiLGUuQ3lhbj0iY3lhbiIsZS5QaW5rPSJwaW5rIn0oaXx8KGk9e30pKTtjb25zdCB1PVtpLlJlZCxpLkJsdWUsaS5HcmVlbixpLk9yYW5nZSxpLlB1cnBsZSxpLkN5YW4saS5QaW5rXTtmdW5jdGlvbiBfKGUpe3JldHVybiBuZXcgU2V0KHUpLmhhcyhlKX1jb25zdCBwPXtsaXN0czp7Y29sb3JzOltdLGJ5Q29sb3I6e30sYnlTeW1ib2w6e319LGNvbW1hbmRzOltdLHRpbWVzdGFtcDpudWxsfTtmdW5jdGlvbiBtKGUsdCl7CmNvbnN0e2xpc3RzOm99PWUsaT1vLmJ5Q29sb3JbdF07aSYmMD09PWkuc3ltYm9scy5sZW5ndGgmJihvLmNvbG9ycz1vLmNvbG9ycy5maWx0ZXIoKGU9PmUhPT10KSkpfWZ1bmN0aW9uIGcoZSl7cmV0dXJuKDAsZC5pc1NlcGFyYXRvckl0ZW0pKGUpfWNvbnN0IHY9KDAsbi5jcmVhdGVTbGljZSkoe25hbWU6Im1hcmtlZC1saXN0cyIsaW5pdGlhbFN0YXRlOnAscmVkdWNlcnM6e3NldHVwOihlLHQpPT57Y29uc3R7bGlzdHM6byx0aW1lc3RhbXA6aX09dC5wYXlsb2FkLG49e2xpc3RzOntjb2xvcnM6W10sYnlDb2xvcjp7fSxieVN5bWJvbDp7fX0sY29tbWFuZHM6W10sdGltZXN0YW1wOm51bGx9O24udGltZXN0YW1wPWk7Zm9yKGNvbnN0IGUgb2YgZnVuY3Rpb24oZSx0KXtyZXR1cm5bLi4uZV0uc29ydCgoKGUsbyk9PnQuaW5kZXhPZihlLmNvbG9yKS10LmluZGV4T2Yoby5jb2xvcikpKX0obyx1KSl7Y29uc3QgdD1lLnN5bWJvbHMuZmlsdGVyKCh0PT52b2lkIDA9PT1uLmxpc3RzLmJ5U3ltYm9sW3RdJiYoZyh0KXx8KG4ubGlzdHMuYnlTeW1ib2xbdF09ZS5jb2xvciksITApKSk7bi5saXN0cy5ieUNvbG9yW2UuY29sb3JdPXtjb2xvcjplLmNvbG9yLG5hbWU6ZS5uYW1lLGRlc2NyaXB0aW9uOmUuZGVzY3JpcHRpb24sc2hhcmVkOmUuc2hhcmVkLHN5bWJvbHM6dCxwZXJzaXN0ZWRTdGF0ZTplLnBlcnNpc3RlZFN0YXRlfSx0Lmxlbmd0aD4wJiZuLmxpc3RzLmNvbG9ycy5wdXNoKGUuY29sb3IpfXJldHVybiBufSxyZW1vdmU6KGUsdCk9Pntjb25zdHtjb2xvcjpvLHN5bWJvbHM6aSxzaWxlbnQ6bn09dC5wYXlsb2FkLHtsaXN0czphLGNvbW1hbmRzOmx9PWUsZD1hLmJ5Q29sb3Jbb107aWYodm9pZCAwPT09ZHx8MD09PWQuc3ltYm9scy5sZW5ndGgpcmV0dXJuO2NvbnN0IGg9bmV3IFNldChpKSx1PWQuc3ltYm9scy5maWx0ZXIoKGU9PiFoLmhhcyhlKSkpO2lmKCEoMCxjLmVxdWFsQXJyYXlzKSh1LGQuc3ltYm9scykpe2Quc3ltYm9scz11O2Zvcihjb25zdCBlIG9mIGgpZGVsZXRlIGEuYnlTeW1ib2xbZV07bnx8bC5wdXNoKHt0eXBlOiJyZW1vdmUiLGNvbG9yOm8sc3ltYm9sczpbLi4uaF0scHJldkxpc3RzOigwLHMuZW5zdXJlRGVmaW5lZCkoKDAsci5vcmlnaW5hbCkoZSkpLmxpc3RzfSksbShlLG8pfX0sbWFya01hbnk6KGUsdCk9Pntjb25zdHtjb2xvcjpvLGJlZm9yZTppLHNpbGVudDpufT10LnBheWxvYWQse2xpc3RzOmEsY29tbWFuZHM6bH09ZSx7dW5pcXVlOmQsZXhjbHVzaW9uczp1fT1mdW5jdGlvbihlLHQpe2NvbnN0e2NvbG9yOm8sc3ltYm9sczppLHNlcGFyYXRvcnM6bn09dC5wYXlsb2FkLHtsaXN0czpyfT1lLGE9e30sbD1uZXcgU2V0LGM9ZT0+ZyhlKT8oKDAscy5hc3NlcnQpKG51bGwhPT1vKSxvKTpyLmJ5U3ltYm9sW2VdO2ZvcihsZXQgZT0wO2U8aS5sZW5ndGg7KytlKXtjb25zdCB0PWlbZV07aWYobC5oYXModCl8fGcodCkmJiFuKWNvbnRpbnVlO2wuYWRkKHQpO2NvbnN0IG89Yyh0KTt2b2lkIDAhPT1vJiYoYVtvXT1hW29dPz9uZXcgU2V0KS5hZGQodCl9cmV0dXJue2V4Y2x1c2lvbnM6YSx1bmlxdWU6bH19KGUsdCk7aWYoMD09PWQuc2l6ZSlyZXR1cm47Y29uc3QgXz1mdW5jdGlvbihlLHQsbyxpKXtjb25zdHtjb2xvcjpuLGJlZm9yZTpyfT10LnBheWxvYWQse2xpc3RzOnN9PWU7bGV0IGE7aWYobnVsbCE9PW4mJnZvaWQgMCE9PXImJm8uaGFzKHIpKXtjb25zdCBlPXMuYnlDb2xvcltuXTtpZih2b2lkIDAhPT1lKXthPWk7Zm9yKGxldCB0PWUuc3ltYm9scy5pbmRleE9mKHIpO3Q+PTA7LS10KWlmKCFvLmhhcyhlLnN5bWJvbHNbdF0pKXthPWUuc3ltYm9sc1t0XTticmVha319fXJldHVybiBhfShlLHQsZCxoLkxJU1RfU1RBUlQpO2lmKG51bGwhPT1vJiZ2b2lkIDAhPT11W29dJiYxPT09T2JqZWN0LmtleXModSkubGVuZ3RoKXtjb25zdCB0PWEuYnlDb2xvcltvXTsoMCxzLmFzc2VydCkodm9pZCAwIT09dCk7Y29uc3QgcD10LnN5bWJvbHMuZmlsdGVyKChlPT4hZC5oYXMoZSkpKSx2PSgwLGguZ2V0VGFyZ2V0SW5kZXgpKHAsaSxfKTtpZih2b2lkIDA9PT12P3AucHVzaCguLi5kKTpwLnNwbGljZSh2LDAsLi4uZCksKDAsYy5lcXVhbEFycmF5cykocCx0LnN5bWJvbHMpKXJldHVybjt7Y29uc3QgaT11W29dOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1pKSx0LnN5bWJvbHM9cDtmb3IoY29uc3QgZSBvZiBpKWRlbGV0ZSBhLmJ5U3ltYm9sW2VdO2Zvcihjb25zdCBlIG9mIGQpZyhlKXx8KGEuYnlTeW1ib2xbZV09byk7cmV0dXJuIG0oZSxvKSx2b2lkKG58fGwucHVzaCh7dHlwZToicmVwbGFjZSIsY29sb3I6byxzeW1ib2xzOlsuLi50LnN5bWJvbHNdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pKX19Zm9yKGNvbnN0IHQgaW4gdSl7aWYoIXUuaGFzT3duUHJvcGVydHkodCkpY29udGludWU7Y29uc3Qgbz11W3RdOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1vKTtjb25zdCBpPWEuYnlDb2xvclt0XTsoMCxzLmFzc2VydCkodm9pZCAwIT09aSksaS5zeW1ib2xzPWkuc3ltYm9scy5maWx0ZXIoKGU9PiFvLmhhcyhlKXx8KGRlbGV0ZSBhLmJ5U3ltYm9sW2VdLCExKSkpLG0oZSx0KX1pZihudWxsPT09bylyZXR1cm4gdm9pZChufHxsLnB1c2goe3R5cGU6InJlc2V0IixzeW1ib2xzOlsuLi5kXSxwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSk7Y29uc3QgcD1hLmJ5Q29sb3Jbb107aWYoYS5jb2xvcnMuaW5jbHVkZXMobykpeygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1wKTtjb25zdCB0PSgwLGguZ2V0VGFyZ2V0SW5kZXgpKHAuc3ltYm9scyxpLF8pO3ZvaWQgMD09PXQ/KHAuc3ltYm9scy5wdXNoKC4uLmQpLG58fCh2b2lkIDA9PT11W29dP2wucHVzaCh7dHlwZToiYXBwZW5kIixjb2xvcjpvLHN5bWJvbHM6Wy4uLmRdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pOmwucHVzaCh7dHlwZToicmVwbGFjZSIsY29sb3I6byxzeW1ib2xzOlsuLi5wLnN5bWJvbHNdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLApyLm9yaWdpbmFsKShlKSkubGlzdHN9KSkpOihwLnN5bWJvbHMuc3BsaWNlKHQsMCwuLi5kKSxufHxsLnB1c2goe3R5cGU6InJlcGxhY2UiLGNvbG9yOm8sc3ltYm9sczpbLi4ucC5zeW1ib2xzXSxwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9ZWxzZSB2b2lkIDA9PT1wP2EuYnlDb2xvcltvXT17Y29sb3I6byxzeW1ib2xzOlsuLi5kXSxuYW1lOm51bGwsZGVzY3JpcHRpb246bnVsbCxzaGFyZWQ6ITEscGVyc2lzdGVkU3RhdGU6bnVsbH06cC5zeW1ib2xzPVsuLi5kXSxhLmNvbG9ycy5wdXNoKG8pLG58fGwucHVzaCh7dHlwZToiYXBwZW5kIixjb2xvcjpvLHN5bWJvbHM6Wy4uLmRdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pO2Zvcihjb25zdCBlIG9mIGQpZyhlKXx8KGEuYnlTeW1ib2xbZV09byl9LHJlbmFtZVNlcGFyYXRvcjooZSx0KT0+e2NvbnN0e2NvbG9yOm8sc2VwYXJhdG9yOmksbmFtZTpuLHNpbGVudDphfT10LnBheWxvYWQ7aWYoaT09PW58fCFnKGkpfHwhZyhuKSlyZXR1cm47Y29uc3QgbD1lLmxpc3RzLmJ5Q29sb3Jbb107KDAscy5hc3NlcnQpKHZvaWQgMCE9PWwpO2NvbnN0IGM9bC5zeW1ib2xzLmluZGV4T2YoaSk7LTEhPT1jJiYtMT09PWwuc3ltYm9scy5pbmRleE9mKG4pJiYobC5zeW1ib2xzLnNwbGljZShjLDEsbiksYXx8ZS5jb21tYW5kcy5wdXNoKHt0eXBlOiJyZW5hbWUtc2VwYXJhdG9yIixjb2xvcjpvLHNlcGFyYXRvcjppLG5hbWU6bixwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9LHJlbmFtZTooZSx0KT0+e2NvbnN0e25hbWU6byxjb2xvcjppLHNpbGVudDpufT10LnBheWxvYWQsYT1lLmxpc3RzLmJ5Q29sb3JbaV07KDAscy5hc3NlcnQpKHZvaWQgMCE9PWEpLGEubmFtZSE9PW8mJihhLm5hbWU9byxufHxlLmNvbW1hbmRzLnB1c2goe3R5cGU6InJlbmFtZSIsY29sb3I6aSxuYW1lOm8scHJldkxpc3RzOigwLHMuZW5zdXJlRGVmaW5lZCkoKDAsci5vcmlnaW5hbCkoZSkpLmxpc3RzfSkpfSxjaGFuZ2VEZXNjcmlwdGlvbjooZSx0KT0+e2NvbnN0e2NvbG9yOm8sZGVzY3JpcHRpb246aSxzaWxlbnQ6bn09dC5wYXlsb2FkLGE9ZS5saXN0cy5ieUNvbG9yW29dOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1hKSxhLmRlc2NyaXB0aW9uIT09aSYmKGEuZGVzY3JpcHRpb249aSxufHxlLmNvbW1hbmRzLnB1c2goe3R5cGU6ImNoYW5nZS1kZXNjcmlwdGlvbiIsY29sb3I6byxkZXNjcmlwdGlvbjppLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pKX0scmVzZXQ6KGUsdCk9Pntjb25zdHtzaWxlbnQ6b309dC5wYXlsb2FkLHtsaXN0czppfT1lO2Zvcihjb25zdCBlIG9mIHUpe2NvbnN0IHQ9aS5ieUNvbG9yW2VdO3ZvaWQgMCE9PXQmJih0LnN5bWJvbHM9W10pfWkuY29sb3JzPVtdLGkuYnlTeW1ib2w9e30sb3x8ZS5jb21tYW5kcy5wdXNoKHt0eXBlOiJyZXNldC1hbGwiLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pfSxzaGFyZTooZSx0KT0+e2NvbnN0e2xpc3RzOm8sY29tbWFuZHM6aX09ZSx7c2hhcmVkOm4sY29sb3I6YSxzaWxlbnQ6bH09dC5wYXlsb2FkLGM9by5ieUNvbG9yW2FdO3ZvaWQgMCE9PWMmJmMuc2hhcmVkIT09biYmKGMuc2hhcmVkPW4sbHx8aS5wdXNoKHt0eXBlOiJzaGFyZSIsY29sb3I6YSxzaGFyZWQ6bixwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9LHVwZGF0ZVBlcnNpc3RlZFN0YXRlOihlLHQpPT57Y29uc3R7bGlzdHM6b309ZTtmb3IoY29uc3QgZSBvZiB1KXtjb25zdCBpPW8uYnlDb2xvcltlXSxuPXQucGF5bG9hZFtlXTt2b2lkIDAhPT1pJiZpLnBlcnNpc3RlZFN0YXRlJiZuJiYoaS5wZXJzaXN0ZWRTdGF0ZT17Li4uaS5wZXJzaXN0ZWRTdGF0ZSwuLi5ufSl9fSxzaGlmdENvbW1hbmQ6KGUsdCk9Pntjb25zdHtjb3VudDpvfT10LnBheWxvYWQ7ZS5jb21tYW5kcy5zcGxpY2UoMCxvKX19fSkse21hcmtNYW55OmYsc2V0dXA6eSxyZXNldDpiLHJlbW92ZTpTLHJlbmFtZTp3LGNoYW5nZURlc2NyaXB0aW9uOkMscmVuYW1lU2VwYXJhdG9yOmssc2hpZnRDb21tYW5kOlQsc2hhcmU6RSx1cGRhdGVQZXJzaXN0ZWRTdGF0ZTp4fT12LmFjdGlvbnMse3JlZHVjZXI6QX09djtmdW5jdGlvbiBNKGUsdCxvPXYpe3JldHVybigwLGEuY3JlYXRlQ3Jvc3NUYWJTeW5jTWlkZGxld2FyZSkoe2lkOmUsY2hhbm5lbDp0LGV2ZW50OiJtYXJrZWQtbGlzdC1jcm9zcy10YWItc3luYyIsZmlsdGVyOmU9PmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQuYWN0aW9ucy5tYXJrTWFueS5tYXRjaChlKXx8dC5hY3Rpb25zLnJlbmFtZS5tYXRjaChlKXx8dC5hY3Rpb25zLmNoYW5nZURlc2NyaXB0aW9uLm1hdGNoKGUpfHx0LmFjdGlvbnMucmVtb3ZlLm1hdGNoKGUpfHx0LmFjdGlvbnMuc2V0dXAubWF0Y2goZSl8fHQuYWN0aW9ucy5yZW5hbWVTZXBhcmF0b3IubWF0Y2goZSl8fHQuYWN0aW9ucy5yZXNldC5tYXRjaChlKXx8dC5hY3Rpb25zLnNoYXJlLm1hdGNoKGUpfHx0LmFjdGlvbnMudXBkYXRlUGVyc2lzdGVkU3RhdGUubWF0Y2goZSl9KGUsbyl9KX1mdW5jdGlvbiBJKGUsdCl7cmV0dXJuIGUubGlzdHMuYnlTeW1ib2xbbC5xdWFsaWZpZWQuY2FzdCh0KV0/P251bGx9ZnVuY3Rpb24gUihlLHQpe3JldHVybiBlLmxpc3RzLmJ5Q29sb3JbdF0/P251bGx9ZnVuY3Rpb24gRihlLHQpe3JldHVybiBSKGUsdCk/LnN5bWJvbHM/P251bGx9ZnVuY3Rpb24gTChlKXtyZXR1cm4gZS5jb21tYW5kc31mdW5jdGlvbiBEKGUpe3JldHVybiBlLnRpbWVzdGFtcH19LDUxODc1KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtlLnByZXZlbnREZWZhdWx0KCl9by5kKHQse3ByZXZlbnREZWZhdWx0OigpPT5pLHByZXZlbnREZWZhdWx0Rm9yQ29udGV4dE1lbnU6KCk9PnJ9KQo7Y29uc3Qgbj1bImlucHV0Om5vdChbdHlwZV0pIiwnaW5wdXRbdHlwZT0idGV4dCJdJywnaW5wdXRbdHlwZT0iZW1haWwiXScsJ2lucHV0W3R5cGU9InBhc3N3b3JkIl0nLCdpbnB1dFt0eXBlPSJzZWFyY2giXScsJ2lucHV0W3R5cGU9Im51bWJlciJdJywnaW5wdXRbdHlwZT0idXJsIl0nLCJ0ZXh0YXJlYSIsImFbaHJlZl0iLCcqW2NvbnRlbnRlZGl0YWJsZT0idHJ1ZSJdJywiW2RhdGEtYWxsb3ctY29udGV4dC1tZW51XSJdO2Z1bmN0aW9uIHIoZSl7Y29uc3QgdD1lLnRhcmdldDt0JiYhdC5jbG9zZXN0KG4uam9pbigiLCAiKSkmJmUucHJldmVudERlZmF1bHQoKX19LDYxNjMxMShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt1c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0OigpPT5ufSk7dmFyIGk9byg3Nzk0NzQpO2Z1bmN0aW9uIG4oZSx0KXsoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3c/aS51c2VFZmZlY3Q6aS51c2VMYXlvdXRFZmZlY3QpKGUsdCl9fSw3NjI4NTEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe3JldHVybiBlKyLigKYifW8uZCh0LHthcHBlbmRFbGxpcHNpczooKT0+aX0pfSwxMzg2MzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBc3NlcnRpb24gZmFpbGVkIisodD9gOiAke3R9YDoiIikpfWZ1bmN0aW9uIG4oZSx0KXtpZih2b2lkIDA9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyB1bmRlZmluZWRgKTtyZXR1cm4gZX1mdW5jdGlvbiByKGUsdCl7aWYobnVsbD09PWUpdGhyb3cgbmV3IEVycm9yKGAke3Q/PyJWYWx1ZSJ9IGlzIG51bGxgKTtyZXR1cm4gZX1mdW5jdGlvbiBzKGUsdCl7cmV0dXJuIHIobihlLHQpLHQpfW8uZCh0LHthc3NlcnQ6KCk9PmksZW5zdXJlOigpPT5zLGVuc3VyZURlZmluZWQ6KCk9Pm4sZW5zdXJlTm90TnVsbDooKT0+cn0pfSwyMTQ5ODcoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe2xldCB0PW51bGw7cmV0dXJuKG8sLi4uaSk9Pih0Py5hYm9ydCgpLHQ9bmV3IEFib3J0Q29udHJvbGxlcixvPy5hYm9ydGVkP3QuYWJvcnQoKTpvPy5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCgpPT50Py5hYm9ydCgpKSx7b25jZTohMH0pLGUodC5zaWduYWwsLi4uaSkpfWZ1bmN0aW9uIG4oZSl7aWYoIWwoZSkpdGhyb3cgZX1mdW5jdGlvbiByKGUpe2lmKGwoZSkpdGhyb3cgZX1mdW5jdGlvbiBzKGUpe3JldHVybiBlPy5hYm9ydGVkP1Byb21pc2UucmVqZWN0KGEoKSk6bmV3IFByb21pc2UoKCh0LG8pPT57ZT8uYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgoKT0+byhhKCkpKSx7b25jZTohMH0pfSkpfWZ1bmN0aW9uIGEoKXtyZXR1cm4gbmV3IERPTUV4Y2VwdGlvbigiQWJvcnRlZCIsIkFib3J0RXJyb3IiKX1mdW5jdGlvbiBsKGUpe3JldHVybiBlIGluc3RhbmNlb2YgRXJyb3ImJiJBYm9ydEVycm9yIj09PWUubmFtZXx8Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmIm5hbWUiaW4gZSYmIkFib3J0RXJyb3IiPT09ZS5uYW1lfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gUHJvbWlzZS5yYWNlKFtzKGUpLHRdKX1hc3luYyBmdW5jdGlvbiBkKGUsdCl7bGV0IG87dHJ5e2F3YWl0IGMoZSxuZXcgUHJvbWlzZSgoZT0+e289c2V0VGltZW91dChlLHQpfSkpKX1maW5hbGx5e2NsZWFyVGltZW91dChvKX19by5kKHQse2NyZWF0ZUFib3J0RXJyb3I6KCk9PmEsZGVsYXk6KCk9PmQsaXNBYm9ydEVycm9yOigpPT5sLHJlc3BlY3RBYm9ydDooKT0+YyxyZXNwZWN0TGF0ZXN0OigpPT5pLHJldGhyb3dBYm9ydEVycm9yOigpPT5yLHNraXBBYm9ydEVycm9yOigpPT5ufSl9LDk2NDQ4NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtkZWVwRXh0ZW5kOigpPT5ufSk7Y29uc3QgaT1uZXcgU2V0KFsiX19wcm90b19fIiwicHJvdG90eXBlIiwiY29uc3RydWN0b3IiXSk7ZnVuY3Rpb24gbihlLC4uLnQpe3JldHVybiBlJiYib2JqZWN0Ij09dHlwZW9mIGU/KDA9PT10Lmxlbmd0aHx8dC5mb3JFYWNoKCh0PT57bnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0JiZPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChvPT57aWYoZnVuY3Rpb24oZSl7cmV0dXJuIGkuaGFzKGUpfShvKSlyZXR1cm47Y29uc3Qgcz1lW29dLGE9dFtvXTtpZihhPT09ZSlyZXR1cm47Y29uc3QgbD1BcnJheS5pc0FycmF5KGEpO2lmKGEmJihyKGEpfHxsKSl7bGV0IHQ7dD1sP3MmJkFycmF5LmlzQXJyYXkocyk/czpbXTpzJiZyKHMpP3M6e30sZVtvXT1uKHQsYSl9ZWxzZSB2b2lkIDAhPT1hJiYoZVtvXT1hKX0pKX0pKSxlKTplfWZ1bmN0aW9uIHIoZSl7aWYoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKXJldHVybiExO2NvbnN0IHQ9T2JqZWN0LmdldFByb3RvdHlwZU9mKGUpO2lmKCF0KXJldHVybiEwO2NvbnN0IG89T2JqZWN0Lmhhc093blByb3BlcnR5LnRvU3RyaW5nLGk9dC5oYXNPd25Qcm9wZXJ0eSgiY29uc3RydWN0b3IiKSYmdC5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgaSYmby5jYWxsKGkpPT09by5jYWxsKE9iamVjdCl9fSw2Mzg1NzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7Y29uc3Qgbz1uZXcgTWFwO3JldHVybiBmdW5jdGlvbiguLi5pKXtjb25zdCBuPSIiKyh0P3QuYXBwbHkobnVsbCxpKTppWzBdKTtpZighby5oYXMobikpe2NvbnN0IHQ9ZS5hcHBseSh0aGlzLGkpO3JldHVybiBvLnNldChuLHQpLHR9cmV0dXJuIG8uZ2V0KG4pfX1vLmQodCx7bWVtb2l6ZTooKT0+aX0pfSw1NDA1NzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe3JldHVybiBlLnJlcGxhY2UoL1stL1xcXiQqKz8uKCl8W1xde31dL2csIlxcJCYiKX1vLmQodCx7cmVnRXhwRXNjYXBlOigpPT5pfSl9LDExNTI5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtmb3JjZUxUUlN0cjooKT0+aCxnZXRMVFJTY3JvbGxMZWZ0OigpPT51LGlzUnRsOigpPT5zLHNldERvY3VtZW50RGlyR2V0dGVyOigpPT5yLHN0cmlwTFRSTWFya3M6KCk9PmR9KTt2YXIgaT1vKDMyMDQwMyk7bGV0IG49KCk9Pm51bGwKO2Z1bmN0aW9uIHIoZSl7bj1lfWNvbnN0IHM9KCk9PiJydGwiPT09ZnVuY3Rpb24oKXtjb25zdCBlPW4oKTtpZihudWxsPT09ZSl0aHJvdyBuZXcgRXJyb3IoIkRvY3VtZW50IGRpcmVjdGlvbiBnZXR0ZXIgaXMgbm90IHNldCwgY2FsbCBzZXREb2N1bWVudERpckdldHRlciB0byBzZXQgaXQiKTtyZXR1cm4gZX0oKSxhPSLigKoiLGw9IuKArCIsYz1uZXcgUmVnRXhwKCLigI584oCPfOKAqnzigKt84oCsIiwiZyIpO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIiIhPT1lJiZzKCkmJm51bGwhPWU/ZS5yZXBsYWNlKGMsIiIpOmV9ZnVuY3Rpb24gaChlKXtyZXR1cm4iIiE9PWUmJnMoKSYmbnVsbCE9ZT9hK2UrbDplfWZ1bmN0aW9uIHUoZSl7cmV0dXJuKDAsaS5nZXROb3JtYWxpemVkU2Nyb2xsTGVmdCkoZSwicnRsIil9dmFyIF87IWZ1bmN0aW9uKGUpe2UuTFRSPSJsdHIiLGUuUlRMPSJydGwiLGUuVU5LTk9XTj0iIn0oX3x8KF89e30pKX0sNTM1MzAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TWluVGlja0RhdGE6KCk9PmwsbWFrZVZhcmlhYmxlTWluVGlja0RhdGE6KCk9PmR9KTt2YXIgaT1vKDcxMjc0NSksbj1vKDYwMTg0MSkscj1vKDUzNDQ0MCkscz1vKDY0MDc0NCk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZT8oMCxpLkJpZykoZS5taW5Nb3ZlKS5kaXYoZS5wcmljZVNjYWxlKS50b051bWJlcigpOk5hTn1mdW5jdGlvbiBsKGUpe2NvbnN0e21pblRpY2s6dCxwcmljZTpvLHZhcmlhYmxlTWluVGlja0RhdGE6aSxzaG91bGRDaGVja0ZvckVxdWFsaXR5OnJ9PWUscz0oMCxuLmlzTnVtYmVyKSh0KT9jKHQpOnQ7cmV0dXJuIHZvaWQgMD09PWk/czpmdW5jdGlvbihlLHQsbz0hMSl7Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspe2lmKGU8dFtpXS5wcmljZSlyZXR1cm4gdFtpXS5taW5UaWNrO2lmKG8mJmU9PT10W2ldLnByaWNlKXJldHVybiB0W2ldLm1pblRpY2t9cmV0dXJuIHRbdC5sZW5ndGgtMV0ubWluVGlja30obyxpLHIpfWZ1bmN0aW9uIGMoZSl7Y29uc3QgdD0oMCxyLm51bU9mRGVjaW1hbFBsYWNlcykoZSksbz1NYXRoLnBvdygxMCx0KTtyZXR1cm57cHJpY2VTY2FsZTpvLG1pbk1vdmU6KDAsaS5CaWcpKGUpLm11bChvKS50b051bWJlcigpfX1mdW5jdGlvbiBkKGUsdCl7Y29uc3Qgbz1be21pblRpY2s6KDAsbi5pc051bWJlcikoZSk/YyhlKTplLHByaWNlOjEvMCxtYXhJbmRleDoxLzB9XTt0cnl7Y29uc3QgZT10LnNwbGl0KCIgIikubWFwKCgoZSx0KT0+KDAscy5pc0V2ZW4pKHQpP2Z1bmN0aW9uKGUpe2NvbnN0IHQ9TnVtYmVyKGUpO2lmKE51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gYyh0KTt7Y29uc3QgdD1lLnNwbGl0KCIvIik7aWYodC5sZW5ndGg8Mnx8dC5sZW5ndGg+Myl0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgbWludGljazogJHtlfWApO2NvbnN0IG89TnVtYmVyKHRbMV0pLGk9TnVtYmVyKHRbMF0pO2lmKCFOdW1iZXIuaXNGaW5pdGUobyl8fCFOdW1iZXIuaXNGaW5pdGUoaSkpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCBuPTM9PT10Lmxlbmd0aD9OdW1iZXIodFsyXSk6dm9pZCAwO2lmKHZvaWQgMCE9PW4mJiFOdW1iZXIuaXNGaW5pdGUobikpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCByPXtwcmljZVNjYWxlOm8sbWluTW92ZTppfTtyZXR1cm4gdm9pZCAwIT09biYmKHIubWluTW92ZTI9bikscn19KGUpOmZ1bmN0aW9uKGUpe2NvbnN0IHQ9TnVtYmVyKGUpO2lmKE51bWJlci5pc05hTih0KSl0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgcHJpY2UgbGltaXQ6ICR7ZX1gKTtyZXR1cm4gdH0oZSkpKTtpZigoMCxzLmlzRXZlbikoZS5sZW5ndGgpKXRocm93IG5ldyBFcnJvcigiVGhlbWUgbXVzdCBub3QgYmUgZXZlbnQgbnVtYmVyIG9mIGVsZW1lbnRzIik7Y29uc3Qgbz1bXTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrPTIpe2NvbnN0IG49ZVt0KzFdPz8xLzAscj1vW28ubGVuZ3RoLTFdPy5wcmljZT8/MCxzPW9bby5sZW5ndGgtMV0/Lm1heEluZGV4Pz8wLGw9bj09PTEvMD8xLzA6bmV3IGkuQmlnKG4pLm1pbnVzKHIpLmRpdihhKGVbdF0pKS5wbHVzKHMpLnRvTnVtYmVyKCk7by5wdXNoKHttaW5UaWNrOmVbdF0scHJpY2U6bixtYXhJbmRleDpsfSl9cmV0dXJuIG99Y2F0Y2h7cmV0dXJuIG99fX0sNDkxMTY1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RhdGVGb3JtYXRGdW5jdGlvbnM6KCk9PmYsZ2V0RGF0ZUZvcm1hdFdpdGhXZWVrZGF5OigpPT55fSk7dmFyIGk9byg3ODMyNTQpLG49byg4MjI0MzEpLHI9byg4NTYzMjQpO2NvbnN0IHM9ezE6KCk9PmkudChudWxsLHZvaWQgMCxvKDY1NzM3NCkpLDI6KCk9PmkudChudWxsLHZvaWQgMCxvKDYxNzM0MSkpLDM6KCk9PmkudChudWxsLHZvaWQgMCxvKDEwMzMwNSkpLDQ6KCk9PmkudChudWxsLHZvaWQgMCxvKDUyNjc4NSkpLDU6KCk9PmkudChudWxsLHtjb250ZXh0OiJzaG9ydCJ9LG8oNzM0NzUwKSksNjooKT0+aS50KG51bGwsdm9pZCAwLG8oODc3NDUpKSw3OigpPT5pLnQobnVsbCx2b2lkIDAsbygxODM5NTkpKSw4OigpPT5pLnQobnVsbCx2b2lkIDAsbyg5Mzc2MikpLDk6KCk9PmkudChudWxsLHZvaWQgMCxvKDE3ODQ2OSkpLDEwOigpPT5pLnQobnVsbCx2b2lkIDAsbyg3MjgzMzcpKSwxMTooKT0+aS50KG51bGwsdm9pZCAwLG8oNjQ2NTQ1KSksMTI6KCk9PmkudChudWxsLHZvaWQgMCxvKDc2OTAzNikpfSxhPXsxOigpPT5pLnQobnVsbCx2b2lkIDAsbyg4OTc2NykpLDI6KCk9PmkudChudWxsLHZvaWQgMCxvKDk0ODkyMykpLDM6KCk9PmkudChudWxsLHZvaWQgMCxvKDM2NzkzNSkpLDQ6KCk9PmkudChudWxsLHZvaWQgMCxvKDE3NTUwNykpfSxsPShlLHQpPT4odD9lLmdldE1vbnRoKCk6ZS5nZXRVVENNb250aCgpKSsxLGM9KGUsdCk9PnQ/ZS5nZXREYXRlKCk6ZS5nZXRVVENEYXRlKCksZD0oZSx0KT0+dD9lLmdldEZ1bGxZZWFyKCk6ZS5nZXRVVENGdWxsWWVhcigpLGg9KGUsdCk9PmUudG9Mb2NhbGVEYXRlU3RyaW5nKCgwLHIuZ2V0TGFuZ3VhZ2UpKCk/KDAsci5tYXBMYW5ndWFnZUNvZGUpKCgwLApyLmdldExhbmd1YWdlKSgpKTp2b2lkIDAse3dlZWtkYXk6InNob3J0Iix0aW1lWm9uZToibG9jYWwiPT09dD92b2lkIDA6dH0pLHU9KGUsdCk9PmFbKChlLHQpPT5NYXRoLmZsb29yKChsKGUsdCktMSkvMykrMSkoZSx0KV0oKSxfPShlLHQpPT4oMCxuLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjKGUsdCksMikscD0oZSx0KT0+c1tsKGUsdCldKCksbT0oZSx0KT0+KDAsbi5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykobChlLHQpLDIpLGc9KGUsdCk9PigwLG4ubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGQoZSx0KSUxMDAsMiksdj0oZSx0KT0+KDAsbi5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZChlLHQpLDQpLGY9eyJxcSAneXkiOihlLHQpPT5gJHt1KGUsdCl9ICcke2coZSx0KX1gLCJxcSB5eXl5IjooZSx0KT0+YCR7dShlLHQpfSAke3YoZSx0KX1gLCJkZCBNTU0gJ3l5IjooZSx0KT0+YCR7XyhlLHQpfSAke3AoZSx0KX0gJyR7ZyhlLHQpfWAsIk1NTSAneXkiOihlLHQpPT5gJHtwKGUsdCl9ICcke2coZSx0KX1gLCJNTU0gZGQsIHl5eXkiOihlLHQpPT5gJHtwKGUsdCl9ICR7XyhlLHQpfSwgJHt2KGUsdCl9YCwiTU1NIGQsIHl5eXkiOihlLHQpPT5gJHtwKGUsdCl9ICR7KChlLHQpPT4oMCxuLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjKGUsdCksMCkpKGUsdCl9LCAke3YoZSx0KX1gLCJNTU0geXl5eSI6KGUsdCk9PmAke3AoZSx0KX0gJHt2KGUsdCl9YCwiTU1NIGRkIjooZSx0KT0+YCR7cChlLHQpfSAke18oZSx0KX1gLCJkZCBNTU0iOihlLHQpPT5gJHtfKGUsdCl9ICR7cChlLHQpfWAsInl5eXktTU0tZGQiOihlLHQpPT5gJHt2KGUsdCl9LSR7bShlLHQpfS0ke18oZSx0KX1gLCJ5eS1NTS1kZCI6KGUsdCk9PmAke2coZSx0KX0tJHttKGUsdCl9LSR7XyhlLHQpfWAsInl5L01NL2RkIjooZSx0KT0+YCR7ZyhlLHQpfS8ke20oZSx0KX0vJHtfKGUsdCl9YCwieXl5eS9NTS9kZCI6KGUsdCk9PmAke3YoZSx0KX0vJHttKGUsdCl9LyR7XyhlLHQpfWAsImRkLU1NLXl5eXkiOihlLHQpPT5gJHtfKGUsdCl9LSR7bShlLHQpfS0ke3YoZSx0KX1gLCJkZC1NTS15eSI6KGUsdCk9PmAke18oZSx0KX0tJHttKGUsdCl9LSR7ZyhlLHQpfWAsImRkL01NL3l5IjooZSx0KT0+YCR7XyhlLHQpfS8ke20oZSx0KX0vJHtnKGUsdCl9YCwiZGQvTU0veXl5eSI6KGUsdCk9PmAke18oZSx0KX0vJHttKGUsdCl9LyR7dihlLHQpfWAsIk1NL2RkL3l5IjooZSx0KT0+YCR7bShlLHQpfS8ke18oZSx0KX0vJHtnKGUsdCl9YCwiTU0vZGQveXl5eSI6KGUsdCk9PmAke20oZSx0KX0vJHtfKGUsdCl9LyR7dihlLHQpfWB9O2Z1bmN0aW9uIHkoZSx0KXtyZXR1cm4iamEiPT09KDAsci5nZXRMYW5ndWFnZSkoKT8obyxpKT0+YCR7ZltlXShvLGkpfSAoJHtoKG8sdCl9KWA6KG8saSk9PmAke2gobyx0KX0gJHtmW2VdKG8saSl9YH1PYmplY3Qua2V5cyhmKX0sODIyNDMxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse251bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvOigpPT5ufSk7dmFyIGk9byg2MDE4NDEpO2Z1bmN0aW9uIG4oZSx0KXtpZighKDAsaS5pc051bWJlcikoZSkpcmV0dXJuIm4vYSI7aWYoISgwLGkuaXNJbnRlZ2VyKSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKHQ8MHx8dD4yNCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKDA9PT10KXJldHVybiBlLnRvU3RyaW5nKCk7cmV0dXJuKCIwMDAwMDAwMDAwMDAwMDAwMDAwMCIrZS50b1N0cmluZygpKS5zbGljZSgtdCl9fSw4NTYzMjQoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TGFuZ3VhZ2U6KCk9PnIsbWFwTGFuZ3VhZ2VDb2RlOigpPT5sLHJlZ2lzdGVyTGFuZ3VhZ2VDb2RlTWFwcGVyOigpPT5hLHJlZ2lzdGVyTGFuZ3VhZ2VHZXR0ZXI6KCk9Pm59KTtsZXQgaT1udWxsO2Z1bmN0aW9uIG4oZSl7aT1lfWZ1bmN0aW9uIHIoKXtpZighaSl0aHJvdyBuZXcgRXJyb3IoIkxhbmd1YWdlIGdldHRlciBub3QgcmVnaXN0ZXJlZC4gQ2FsbCByZWdpc3Rlckxhbmd1YWdlR2V0dGVyKCkgZmlyc3QuIik7cmV0dXJuIGkoKX1sZXQgcz1lPT5lO2Z1bmN0aW9uIGEoZSl7cz1lfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIHMoZSl9fSw5NzM1MjQoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7TElTVF9TVEFSVDooKT0+aSxnZXRUYXJnZXRJbmRleDooKT0+bn0pO2NvbnN0IGk9U3ltYm9sKCk7ZnVuY3Rpb24gbihlLHQsbyl7Y29uc3Qgbj12b2lkIDA9PT1vP3ZvaWQgMCE9PXQ/ZS5pbmRleE9mKHQpOnZvaWQgMDpvPT09aT8wOmUuaW5kZXhPZihvKSsxO3JldHVybi0xIT09bj9uOnZvaWQgMH19LDQzMzIwKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtjb25zdHtpZDp0LGV2ZW50Om8sY2hhbm5lbDppLGZpbHRlcjpufT1lO3JldHVybiBlPT4oaS5vbihvLChvPT57Y29uc3R7YWN0aW9uOmksZW1pdHRlcjpyfT1KU09OLnBhcnNlKG8pO3IhPT10JiZuKGkpJiZlLmRpc3BhdGNoKHsuLi5pLHBheWxvYWQ6ey4uLmkucGF5bG9hZCxzaWxlbnQ6ITB9fSl9KSksZT0+cj0+e2NvbnN0IHM9ZShyKTtyZXR1cm4gbihyKSYmKHIucGF5bG9hZC5zaWxlbnR8fGkuZW1pdChvLEpTT04uc3RyaW5naWZ5KHthY3Rpb246cixlbWl0dGVyOnR9KSkpLHN9KX1vLmQodCx7Y3JlYXRlQ3Jvc3NUYWJTeW5jTWlkZGxld2FyZTooKT0+aX0pfSwyOTUyMzUoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cXVhbGlmaWVkOigpPT5pfSk7Y29uc3QgaT17Y2FzdDplPT5lLGNhc3RNYW55OmU9PmUubWFwKGkuY2FzdCl9fSw2MTI0NDYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7aWYoZS5sZW5ndGghPT10Lmxlbmd0aClyZXR1cm4hMTtmb3IobGV0IG89MDtvPGUubGVuZ3RoOysrbylpZihlW29dIT09dFtvXSlyZXR1cm4hMTtyZXR1cm4hMH1vLmQodCx7ZXF1YWxBcnJheXM6KCk9Pml9KX0sODUyOTgwKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlLHQsbyxpLG4pewpjb25zdHtwYXlBdHRlbnRpb25Ub1RpY2tlck5vdFN5bWJvbDpyLHVzZVRpY2tlck9uU3ltYm9sSW5mb1VwZGF0ZTpzLGNoYXJ0aW5nTGlicmFyeVNpbmdsZVN5bWJvbFJlcXVlc3Q6YSx1cHBlcmNhc2VJbnN0cnVtZW50TmFtZXM6bH09ZTtsZXQgYz10JiYoaSYmdC5wcm9fbmFtZXx8dC5mdWxsX25hbWV8fHQubmFtZSk7cmV0dXJuIGEmJm8/Yz1vOihzfHwhbiYmcikmJnQmJnQudGlja2VyJiYoYz10LnRpY2tlciksbCYmYyYmKGM9Yy50b1VwcGVyQ2FzZSgpKSxjfW8uZCh0LHtleHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvOigpPT5pfSl9LDMwOTA1MihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtRVU9URV9GSUVMRFM6KCk9Pm4sUVVPVEVfRklFTERTX0NBQ0hFOigpPT5yfSk7dmFyIGk9bygxMzg2MzgpCjtjb25zdCBuPW5ldyBTZXQoWyJwcm9fbmFtZSIsImJhc2VfbmFtZSIsImxvZ28iLCJsb2dvaWQiLCJjdXJyZW5jeS1sb2dvaWQiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsInNvdXJjZS1sb2dvaWQiLCJzaG9ydF9uYW1lIiwid2ViX3NpdGVfdXJsIiwicHJvX3Blcm0iLCJ0aW1lem9uZSIsImN1cnJlbnRfc2Vzc2lvbiIsInNlc3Npb25faG9saWRheXMiLCJsYXN0X3ByaWNlIiwibHBfdGltZSIsInN1YnNlc3Npb25zIiwicHJldl9jbG9zZV9wcmljZSIsIm9wZW5fcHJpY2UiLCJoaWdoX3ByaWNlIiwibG93X3ByaWNlIiwicHJpY2VfNTJfd2Vla19oaWdoIiwicHJpY2VfNTJfd2Vla19sb3ciLCJhc2siLCJhc2tfc2l6ZSIsImJpZCIsImJpZF9zaXplIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwibmNoIiwibmNocCIsIm50YyIsIm50Y190aW1lIiwiZGF0YV9mcmVxdWVuY3kiLCJyZWZlcmVuY2UtbGFzdC1wZXJpb2Qtc3RhcnQiLCJidXNpbmVzc19kZXNjcmlwdGlvbiIsIndlYl9zaXRlX3VybCIsImZpZ2kiLCJudW1iZXJfb2ZfZW1wbG95ZWVzIiwiZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2NhbGVuZGFyX2RhdGUiLCJyb290IiwiZGVzY3JpcHRpb24iLCJleGNoYW5nZSIsImxpc3RlZF9leGNoYW5nZSIsInR5cGUiLCJjb3VudHJ5X2NvZGUiLCJwcm92aWRlcl9pZCIsImlzX3RyYWRhYmxlIiwic2VjdG9yIiwidHlwZXNwZWNzIiwidmlzaWJsZS1wbG90cy1zZXQiLCJpbmR1c3RyeSIsImN1cnJlbmN5X2lkIiwibGFzdF9wcmljZSIsImZyYWN0aW9uYWwiLCJtaW5tb3YiLCJtaW5tb3ZlMiIsInByaWNlc2NhbGUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJjaGFuZ2UiLCJjaGFuZ2VfcGVyY2VudCIsInZvbHVtZSIsImF2ZXJhZ2Vfdm9sdW1lIiwibWFya2V0X2NhcF9iYXNpYyIsIm1hcmtldF9jYXBfY2FsYyIsInRvdGFsX3JldmVudWUiLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwicHJpY2VfZWFybmluZ3NfdHRtIiwiYmV0YV8xX3llYXIiLCJkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnkiLCJkaXZpZGVuZHNfeWllbGQiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxIiwiZWFybmluZ3NfcHVibGljYXRpb25fdHlwZV9uZXh0X2ZxIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2ZxIiwiZm9yZWNhc3RfcmF3IiwibGFzdF9yZWxlYXNlX2RhdGUiLCJuZXh0X3JlbGVhc2VfZGF0ZSIsInJlZmVyZW5jZV9sYXN0X3BlcmlvZCIsImZ1bmRhbWVudGFsX2N1cnJlbmN5X2NvZGUiLCJudW1iZXJfb2ZfZW1wbG95ZWVzIiwid2ViX3NpdGVfdXJsIiwiYnVzaW5lc3NfZGVzY3JpcHRpb24iLCJmb3VuZGVkIiwiY2VvIiwiZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nIiwiZGl2aWRlbmRfcGF5b3V0X3JhdGlvX3R0bSIsImRpdmlkZW5kc195aWVsZF9jdXJyZW50IiwiZGl2aWRlbmRfZXhfZGF0ZV91cGNvbWluZyIsImRpdmlkZW5kX2Ftb3VudF91cGNvbWluZyIsImRpdmlkZW5kX2Ftb3VudF9yZWNlbnQiLCJkaXZpZGVuZF9leF9kYXRlX3JlY2VudCIsImRpdmlkZW5kX2Ftb3VudF9oIiwiZGl2aWRlbmRfcGF5bWVudF9kYXRlX3VwY29taW5nIiwiZGl2aWRlbmRfcGF5bWVudF9kYXRlX3JlY2VudCIsInRvdGFsX3JldmVudWVfZnFfaCIsInRvdGFsX3JldmVudWVfZnlfaCIsIm5ldF9pbmNvbWVfZnlfaCIsIm5ldF9pbmNvbWVfZnFfaCIsInRvdGFsX2Fzc2V0c19meV9oIiwidG90YWxfYXNzZXRzX2ZxX2giLCJ0b3RhbF9saWFiaWxpdGllc19meV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19meV9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2ZxX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnFfaCIsImZpc2NhbF9wZXJpb2RfZnlfaCIsImZpc2NhbF9wZXJpb2RfZnFfaCIsImZpc2NhbF9wZXJpb2RfZmhfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9mcV9oIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxX2giLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnEiLCJpc19uZXh0X2Vhcm5pbmdzX3JlbGVhc2VfZGF0ZV9lc3RpbWF0ZWQiLCJzeW1ib2wtcHJpbWFyeW5hbWUiLCJjdXJyZW5jeV9jb2RlIiwicmF0ZXNfbWMiLCJyYXRlc19meSIsInJhdGVzX3R0bSIsIm1lYXN1cmUiLCJ2YWx1ZV91bml0X2lkIiwidmFsdWUtdW5pdC1pZCIsInVwZGF0ZV9tb2RlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsInNob3J0X2Rlc2NyaXB0aW9uIiwic291cmNlIiwic291cmNlMiIsImZvcm1hdCIsInJlY29tbWVuZGF0aW9uX21hcmsiLCJsYXN0X3JlcG9ydF9mcmVxdWVuY3kiLCJwcmljZV90YXJnZXRfZXN0aW1hdGVzX251bSIsInByaWNlX3RhcmdldF9hdmVyYWdlIiwidXBkYXRlX21vZGVfc2Vjb25kcyIsInJlY29tbWVuZGF0aW9uX3RvdGFsIiwicmVjb21tZW5kYXRpb25fYnV5IiwicmVjb21tZW5kYXRpb25fb3ZlciIsInJlY29tbWVuZGF0aW9uX2hvbGQiLCJyZWNvbW1lbmRhdGlvbl91bmRlciIsInJlY29tbWVuZGF0aW9uX3NlbGwiLCJyZWNvbW1lbmRhdGlvbl90b3RhbCIsInByaWNlX3RhcmdldF9oaWdoIiwicHJpY2VfdGFyZ2V0X2xvdyIsInJhdGVzX3B0IiwicmF0ZXNfcHQiLCJ0b3RhbF9yZXZlbnVlX2Z5X2giLCJ0b3RhbF9yZXZlbnVlX2ZxX2giLCJ0b3RhbF9yZXZlbnVlX2ZoX2giLCJuZXRfcmV2ZW51ZV9meV9oIiwibmV0X3JldmVudWVfZnFfaCIsIm5ldF9yZXZlbnVlX2ZoX2giLCJuZXRfaW5jb21lX2Z5X2giLCJuZXRfaW5jb21lX2ZxX2giLCJuZXRfaW5jb21lX2ZoX2giLCJ0b3RhbF9hc3NldHNfZnlfaCIsInRvdGFsX2Fzc2V0c19mcV9oIiwidG90YWxfYXNzZXRzX2ZoX2giLCJ0b3RhbF9saWFiaWxpdGllc19meV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnFfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZoX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2ZoX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2ZoX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2ZoX2giLCJmaXNjYWxfcGVyaW9kX2Z5IiwiZmlzY2FsX3BlcmlvZF9mcSIsImZpc2NhbF9wZXJpb2RfZmgiLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnFfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9meV9oIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlX2ZoX2giLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2Z5IiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZmgiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSIsImVhcm5pbmdzX3JlbGVhc2VfdGltZSIsImlzX25leHRfZWFybmluZ3NfcmVsZWFzZV9kYXRlX2VzdGltYXRlZCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnkiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9maCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2Z5X2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZmhfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2Z5X2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZmhfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnFfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnlfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZmhfaCIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9mcSIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9meSIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9maCIsInJldmVudWVfZnFfaCIsInJldmVudWVfZnlfaCIsInJldmVudWVfZmhfaCIsInJldmVudWVfZm9yZWNhc3RfZnFfaCIsInJldmVudWVfZm9yZWNhc3RfZnlfaCIsInJldmVudWVfZm9yZWNhc3RfZmhfaCIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9mcSIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9meSIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9maCIsInJldmVudWVfc2VnX2J5X2J1c2luZXNzX2giLCJyZXZlbnVlX3NlZ19ieV9yZWdpb25faCIsInRvdGFsX3JldmVudWVfZnkiLCJ0b3RhbF9yZXZlbnVlX2ZxIiwidG90YWxfcmV2ZW51ZV9maCIsImdyb3NzX3Byb2ZpdF9meSIsImdyb3NzX3Byb2ZpdF9mcSIsImdyb3NzX3Byb2ZpdF9maCIsImViaXRkYV9meSIsImViaXRfZnkiLCJuZXRfaW5jb21lX2Z5IiwibmV0X2luY29tZV9mcSIsIm5ldF9pbmNvbWVfZmgiLCJ0b3RhbF9kZWJ0X2Z5X2giLCJ0b3RhbF9kZWJ0X2ZxX2giLCJ0b3RhbF9kZWJ0X2ZoX2giLCJmcmVlX2Nhc2hfZmxvd19meV9oIiwiZnJlZV9jYXNoX2Zsb3dfZnFfaCIsImZyZWVfY2FzaF9mbG93X2ZoX2giLCJjYXNoX25fZXF1aXZhbGVudHNfZnlfaCIsImNhc2hfbl9lcXVpdmFsZW50c19mcV9oIiwiY2FzaF9uX2VxdWl2YWxlbnRzX2ZoX2giLCJ0b3RhbF9jdXJyZW50X2Fzc2V0c19meSIsInRvdGFsX2N1cnJlbnRfYXNzZXRzX2ZxIiwidG90YWxfY3VycmVudF9hc3NldHNfZmgiLCJ0b3RhbF9jdXJyZW50X2xpYWJpbGl0aWVzX2Z5IiwidG90YWxfY3VycmVudF9saWFiaWxpdGllc19mcSIsInRvdGFsX2N1cnJlbnRfbGlhYmlsaXRpZXNfZmgiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZnkiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZnEiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZmgiLCJ0b3RhbF9ub25fY3VycmVudF9saWFiaWxpdGllc19meSIsInRvdGFsX25vbl9jdXJyZW50X2xpYWJpbGl0aWVzX2ZxIiwidG90YWxfbm9uX2N1cnJlbnRfbGlhYmlsaXRpZXNfZmgiLCJsb2Fuc19uZXRfZnkiLCJsb2Fuc19uZXRfZnlfaCIsImxvYW5zX25ldF9mcV9oIiwibG9hbnNfbmV0X2ZoX2giLCJ0b3RhbF9kZXBvc2l0c19meSIsInRvdGFsX2RlcG9zaXRzX2Z5X2giLCJ0b3RhbF9kZXBvc2l0c19mcV9oIiwidG90YWxfZGVwb3NpdHNfZmhfaCIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2Z5IiwibG9hbl9sb3NzX2FsbG93YW5jZXNfZnlfaCIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2ZxX2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19maF9oIiwicmVzZXJ2ZV90b190b3RhbF9jYXBpdGFsX2Z5X2giLCJyZXNlcnZlX3RvX3RvdGFsX2NhcGl0YWxfZnFfaCIsInJlc2VydmVfdG9fdG90YWxfY2FwaXRhbF9maF9oIiwidW5lYXJuZWRfcHJlbWl1bV90b190b3RhbF9jYXBpdGFsX2Z5X2giLCJ1bmVhcm5lZF9wcmVtaXVtX3RvX3RvdGFsX2NhcGl0YWxfZnFfaCIsInVuZWFybmVkX3ByZW1pdW1fdG9fdG90YWxfY2FwaXRhbF9maF9oIiwiaW5zdXJhbmNlX3Jlc2VydmVzX2Z5X2giLCJpbnN1cmFuY2VfcmVzZXJ2ZXNfZnFfaCIsImluc3VyYW5jZV9yZXNlcnZlc19maF9oIiwicG9saWN5X2NsYWltc19meV9oIiwicG9saWN5X2NsYWltc19mcV9oIiwicG9saWN5X2NsYWltc19maF9oIiwicHJlbWl1bXNfZWFybmVkX2Z5X2giLCJwcmVtaXVtc19lYXJuZWRfZnFfaCIsInByZW1pdW1zX2Vhcm5lZF9maF9oIiwicHJpY2VfZWFybmluZ3NfZnFfaCIsInByaWNlX2Vhcm5pbmdzX2Z5X2giLCJwcmljZV9lYXJuaW5nc19maF9oIiwicHJpY2Vfc2FsZXNfZnFfaCIsInByaWNlX3NhbGVzX2Z5X2giLCJwcmljZV9zYWxlc19maF9oIiwiZGlsdXRlZF9uZXRfaW5jb21lX3R0bSIsInRvdGFsX3JldmVudWVfdHRtIiwibmV0X3JldmVudWVfdHRtIiwicHJpY2VfZWFybmluZ3NfY3VycmVudCIsInByaWNlX3NhbGVzX2N1cnJlbnQiLCJpc2luLWRpc3BsYXllZCIsImN1c2lwIiwiY2ZpX2NvZGUiLCJpbnRlcmVzdF9pbmNvbWVfZnlfaCIsImludGVyZXN0X2luY29tZV9mcV9oIiwiaW50ZXJlc3RfaW5jb21lX2ZoX2giLCJub25faW50ZXJlc3RfaW5jb21lX2Z5X2giLCJub25faW50ZXJlc3RfaW5jb21lX2ZxX2giLCJub25faW50ZXJlc3RfaW5jb21lX2ZoX2giLCJ3ZWJzaXRlIiwiZG9jIiwiZXhwbG9yZXIiLCJzb3VyY2VzIiwiY29udHJhY3RzIiwiY3J5cHRvX2NvbW1vbl9jYXRlZ29yaWVzIiwiY3J5cHRvX2Fzc2V0IiwiY29tbXVuaXR5IiwiZGl2aWRlbmRzX2F2YWlsYWJpbGl0eSIsImVhcm5pbmdzX2F2YWlsYWJpbGl0eSIsImZpbmFuY2lhbHNfYXZhaWxhYmlsaXR5IiwiZG9jdW1lbnRzIiwiZXRmX2Fzc2V0X3R5cGVfZXhwb3N1cmUiLCJldGZfcmVnaW9uX2V4cG9zdXJlIiwidG9wX2hvbGRpbmdzIiwidW5pdC1pZCIsIm9wdGlvbnMtaW5mbyIsIm9wdGlvbi10eXBlIiwiaW50ZXJlc3RfaW5jb21lX2Z5IiwiaW50ZXJlc3RfaW5jb21lX2ZxIiwiaW50ZXJlc3RfaW5jb21lX2ZoIiwibm9uX2ludGVyZXN0X2luY29tZV9meSIsIm5vbl9pbnRlcmVzdF9pbmNvbWVfZnEiLCJub25faW50ZXJlc3RfaW5jb21lX2ZoIiwiaW50ZXJlc3RfZXhwZW5zZV9meSIsImludGVyZXN0X2V4cGVuc2VfZnEiLCJpbnRlcmVzdF9leHBlbnNlX2ZoIiwibG9hbl9sb3NzX3Byb3Zpc2lvbl9meSIsImxvYW5fbG9zc19wcm92aXNpb25fZnEiLCJsb2FuX2xvc3NfcHJvdmlzaW9uX2ZoIiwibm9uX2ludGVyZXN0X2V4cGVuc2VfZnkiLCJub25faW50ZXJlc3RfZXhwZW5zZV9mcSIsIm5vbl9pbnRlcmVzdF9leHBlbnNlX2ZoIiwibm9uX29wZXJfaW5jb21lX2Z5Iiwibm9uX29wZXJfaW5jb21lX2ZxIiwibm9uX29wZXJfaW5jb21lX2ZoIiwidW51c3VhbF9leHBlbnNlX2luY19meSIsInVudXN1YWxfZXhwZW5zZV9pbmNfZnEiLCJ1bnVzdWFsX2V4cGVuc2VfaW5jX2ZoIiwicHJldGF4X2luY29tZV9meSIsInByZXRheF9pbmNvbWVfZnEiLCJwcmV0YXhfaW5jb21lX2ZoIiwiaW5jb21lX3RheF9meSIsImluY29tZV90YXhfZnEiLCJpbmNvbWVfdGF4X2ZoIiwiYWZ0ZXJfdGF4X290aGVyX2luY29tZV9meSIsImFmdGVyX3RheF9vdGhlcl9pbmNvbWVfZnEiLCJhZnRlcl90YXhfb3RoZXJfaW5jb21lX2ZoIiwidG90YWxfbm9uX29wZXJfaW5jb21lX2Z5IiwidG90YWxfbm9uX29wZXJfaW5jb21lX2ZxIiwidG90YWxfbm9uX29wZXJfaW5jb21lX2ZoIiwib3Blcl9pbmNvbWVfZnkiLCJvcGVyX2luY29tZV9mcSIsIm9wZXJfaW5jb21lX2ZoIiwib3BlcmF0aW5nX2V4cGVuc2VzX2Z5Iiwib3BlcmF0aW5nX2V4cGVuc2VzX2ZxIiwib3BlcmF0aW5nX2V4cGVuc2VzX2ZoIiwiY29zdF9vZl9nb29kc19meSIsImNvc3Rfb2ZfZ29vZHNfZnEiLCJjb3N0X29mX2dvb2RzX2ZoIiwiZXF1aXR5X2luX2Vhcm5pbmdzX2Z5IiwiZXF1aXR5X2luX2Vhcm5pbmdzX2ZxIiwiZXF1aXR5X2luX2Vhcm5pbmdzX2ZoIiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2Z5IiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2ZxIiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2ZoIiwiZGlzY29udGludWVkX29wZXJhdGlvbnNfZnkiLCJkaXNjb250aW51ZWRfb3BlcmF0aW9uc19mcSIsImRpc2NvbnRpbnVlZF9vcGVyYXRpb25zX2ZoIiwiZnJvbnRfY29udHJhY3QiLCJtaW5fY29udHJhY3QiLCJwb2ludHZhbHVlIiwidW5pdF9pZCIsImV4cGlyYXRpb24iLCJhdW0iLCJhc3NldF9jbGFzcyIsImZvY3VzIiwiZXhwZW5zZV9yYXRpbyIsImxhdW5jaF9kYXRlIiwiaXNzdWVyIiwiYnJhbmQiLCJob21lcGFnZSIsImluZGV4X3RyYWNrZWQiLCJhY3RpdmVseV9tYW5hZ2VkIiwiZnVuZF92aWV3X21vZGVzIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19meV9oIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19mcV9oIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19maF9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19meV9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19mcV9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19maF9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19meV9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19mcV9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19maF9oIiwicHJlZmVycmVkX3N0b2NrX2NhcnJ5aW5nX3ZhbHVlX2ZoIiwicHJlZmVycmVkX3N0b2NrX2NhcnJ5aW5nX3ZhbHVlX2ZxIiwidG90YWxfZGVidF9mcSIsIm1pbm9yaXR5X2ludGVyZXN0X2ZoIiwibWlub3JpdHlfaW50ZXJlc3RfZnEiLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZnEiLCJjYXNoX25fZHVlX2ZfYmFua3NfZmgiLCJjYXNoX25fZHVlX2ZfYmFua3NfZnEiLCJlbnRlcnByaXNlX3ZhbHVlX2N1cnJlbnQiLCJldGZfaG9sZGluZ3NfY291bnQiLCJjb250cmFjdC1kZXNjcmlwdGlvbiIsInJlZmVyZW5jZS1sYXN0LXBlcmlvZCIsImFsbF90aW1lX2hpZ2giLCJhbGxfdGltZV9oaWdoX2RheSIsImFsbF90aW1lX2xvdyIsImFsbF90aW1lX2xvd19kYXkiLCJvdXRzdGFuZGluZ19hbW91bnQiLCJub21pbmFsX3ZhbHVlIiwiZGVub21fbWluIiwiY3VycmVudF9jb3Vwb24iLCJjb3Vwb25fdHlwZV9nZW5lcmFsIiwiY291cG9uX2ZyZXF1ZW5jeSIsInlpZWxkX3RvX21hdHVyaXR5IiwibWF0dXJpdHktZGF0ZSIsImRheXNfdG9fbWF0dXJpdHkiLCJib25kX2lzc3VlciIsImlzc3VlX2RhdGUiLCJib25kX2lzc3Vlcl9zdG9ja19zeW1ib2wiLCJ0b3RhbF9pc3N1ZWRfYW1vdW50IiwicGFpZF9hbW91bnQiLCJib25kX3NucF9yYXRpbmdfbHRfaCIsInBsYWNlbWVudF90eXBlIiwiZHVyYXRpb25fdHlwZSIsIm1hdHVyaXR5X3R5cGUiLCJvZmZlcl90eXBlIiwicmVkZW1wdGlvbl90eXBlIiwiY29udmVyc2lvbl9vcHRpb24iLCJzaW5raW5nX2Z1bmQiLCJvd25lcnNoaXBfZm9ybSIsImRhaWx5LXN1bW1hcnktYXN0IiwiaXNzdWVfc3RhdHVzIiwiY291cG9uX2giLCJzaW5raW5nX2Z1bmRfbmV4dF9kYXRlIiwic2lua2luZ19mdW5kX21pbl9hbW91bnRfbmV4dCIsImNhbGxfbmV4dF9kYXRlIiwicmVkZW1wdGlvbnNfaCIsImNhbGxfbm90aWNlX2RheXMiLCJwdXRfbmV4dF9kYXRlIiwicHV0X25vdGljZV9kYXlzX21pbiIsInNlbmlvcml0eV9sZXZlbCIsImluZmxhdGlvbl9wcm90ZWN0aW9uIiwicGxlZGdlX3N0YXR1cyIsImJvbmRfaXNzdWVyX2NvdW50cnlfb2ZfcmlzayIsImJvbmRfaXNzdWVyX2NyX3BhcmVudCIsImNyZWRpdF9lbmhhbmNlbWVudF90eXBlIiwiY3JlZGl0X2VuaGFuY2VtZW50X3N0YXR1cyIsInVzZV9vZl9wcm9jZWVkcyIsImJvbmRfaXNzdWVyX3NucF9yYXRpbmdfbHRfaCIsImJvbmRfaXNzdWVyX3NucF9yYXRpbmdfc3RfaCIsImJvbmRfYWdlbnRzX3RyIiwiZmlyc3RfYmFyX3RpbWVfMWQiLCJmaW5hbmNpYWwtaW5kaWNhdG9yLWlkIiwiZXhjaGFuZ2UtaW5mbyIsInVuZGVybHlpbmctc3ltYm9sIiwic3RyaWtlIiwibG90c2l6ZSIsIm9wdGlvbi1zdHlsZSIsImhhc19ib25kcyIsIm9wZW5fdGltZSIsImhhc19ib25kcyIsImRleF9idXlzXzE1bSIsImRleF9zZWxsc18xNW0iLCJkZXhfYnV5X3ZvbHVtZV8xNW0iLCJkZXhfc2VsbF92b2x1bWVfMTVtIiwiZGV4X2J1eWVyc18xNW0iLCJkZXhfc2VsbGVyc18xNW0iLCJkZXhfYnV5c18xaCIsImRleF9zZWxsc18xaCIsImRleF9idXlfdm9sdW1lXzFoIiwiZGV4X3NlbGxfdm9sdW1lXzFoIiwiZGV4X2J1eWVyc18xaCIsImRleF9zZWxsZXJzXzFoIiwiZGV4X2J1eXNfNGgiLCJkZXhfc2VsbHNfNGgiLCJkZXhfYnV5X3ZvbHVtZV80aCIsImRleF9zZWxsX3ZvbHVtZV80aCIsImRleF9idXllcnNfNGgiLCJkZXhfc2VsbGVyc180aCIsImRleF9idXlzXzEyaCIsImRleF9zZWxsc18xMmgiLCJkZXhfYnV5X3ZvbHVtZV8xMmgiLCJkZXhfc2VsbF92b2x1bWVfMTJoIiwiZGV4X2J1eWVyc18xMmgiLCJkZXhfc2VsbGVyc18xMmgiLCJkZXhfYnV5c18yNGgiLCJkZXhfc2VsbHNfMjRoIiwiZGV4X2J1eV92b2x1bWVfMjRoIiwiZGV4X3NlbGxfdm9sdW1lXzI0aCIsImRleF9idXllcnNfMjRoIiwiZGV4X3NlbGxlcnNfMjRoIiwiZGV4X2NvbnZlcnRlZF9zeW1ib2wiLCJkZXhfdHJhZGluZ192b2x1bWVfMjRoIiwiZGV4X2NyZWF0ZWRfdGltZSIsImRleF9jdXJyZW5jeSIsImRleF9jdXJyZW5jeV9sb2dvaWQiLCJibG9ja2NoYWluX2FkZHJlc3Nlc191cmxzIiwiYmxvY2tjaGFpbl9hZGRyZXNzZXMiLCJiYXNlX2N1cnJlbmN5IiwiaXBvX29mZmVyX3N0YXR1cyIsImhhc19pcG9fZGV0YWlsc192aXNpYmxlIiwiaXBvX3ByaWNlX3JhbmdlX3VzZF9tYXgiLCJpcG9fcHJpY2VfcmFuZ2VfdXNkX21pbiIsImlwb19vZmZlcl9wcmljZV91c2QiLCJpcG9fb2ZmZXJlZF9zaGFyZXMiLCJpcG9fZGVhbF9hbW91bnRfdXNkIiwiaXBvX2Fubm91bmNlbWVudF9kYXRlIiwiaXBvX29mZmVyX2RhdGUiLCJhdmFpbGFibGVfZGF0YV9yYW5nZV9iZWdpbl9kYXRlIiwiYXZhaWxhYmxlX2RhdGFfcmFuZ2VfZW5kX2RhdGUiLCJoYXNfZXRmX293bmVyc2hpcCIsInN5bWJvbF9wcmltYXJ5X2xpc3RpbmciLCJtZXRyaWNfeXRtIiwibWV0cmljcyIsImVwc19lc3RpbWF0ZXNfZnlfaCIsImVwc19lc3RpbWF0ZXNfZnFfaCIsImVwc19lc3RpbWF0ZXNfZmhfaCIsInJldmVudWVfZXN0aW1hdGVzX2Z5X2giLCJyZXZlbnVlX2VzdGltYXRlc19mcV9oIiwicmV2ZW51ZV9lc3RpbWF0ZXNfZmhfaCIsImRwc19lc3RpbWF0ZXNfZnlfaCIsImRwc19lc3RpbWF0ZXNfZnFfaCIsImRwc19lc3RpbWF0ZXNfZmhfaCIsImNvc3Rfb2ZfZ29vZHNfZXN0aW1hdGVzX2Z5X2giLCJjb3N0X29mX2dvb2RzX2VzdGltYXRlc19mcV9oIiwiY29zdF9vZl9nb29kc19lc3RpbWF0ZXNfZmhfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZnlfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZnFfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZmhfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZnlfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZnFfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZmhfaCIsInJlc2VhcmNoX2FuZF9kZXZfZXN0aW1hdGVzX2Z5X2giLCJyZXNlYXJjaF9hbmRfZGV2X2VzdGltYXRlc19mcV9oIiwicmVzZWFyY2hfYW5kX2Rldl9lc3RpbWF0ZXNfZmhfaCIsImViaXRkYV9lc3RpbWF0ZXNfZnlfaCIsImViaXRkYV9lc3RpbWF0ZXNfZnFfaCIsImViaXRkYV9lc3RpbWF0ZXNfZmhfaCIsImViaXRfZXN0aW1hdGVzX2Z5X2giLCJlYml0X2VzdGltYXRlc19mcV9oIiwiZWJpdF9lc3RpbWF0ZXNfZmhfaCIsIm5ldF9pbmNvbWVfZXN0aW1hdGVzX2Z5X2giLCJuZXRfaW5jb21lX2VzdGltYXRlc19mcV9oIiwibmV0X2luY29tZV9lc3RpbWF0ZXNfZmhfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZnlfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZnFfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZnlfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZnFfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZmhfaCIsInRvdGFsX2RlYnRfZXN0aW1hdGVzX2Z5X2giLCJ0b3RhbF9kZWJ0X2VzdGltYXRlc19mcV9oIiwidG90YWxfZGVidF9lc3RpbWF0ZXNfZmhfaCIsImJvb2tfdmFsdWVfcGVyX3NoYXJlX2VzdGltYXRlc19meV9oIiwiYm9va192YWx1ZV9wZXJfc2hhcmVfZXN0aW1hdGVzX2ZxX2giLCJib29rX3ZhbHVlX3Blcl9zaGFyZV9lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImNhcGl0YWxfZXhwZW5kaXR1cmVzX2VzdGltYXRlc19meV9oIiwiY2FwaXRhbF9leHBlbmRpdHVyZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXBpdGFsX2V4cGVuZGl0dXJlc19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImZyZWVfY2FzaF9mbG93X2VzdGltYXRlc19meV9oIiwiZnJlZV9jYXNoX2Zsb3dfZXN0aW1hdGVzX2ZxX2giLCJmcmVlX2Nhc2hfZmxvd19lc3RpbWF0ZXNfZmhfaCIsImVzdGltYXRlc19maXNjYWxfcGVyaW9kX2Z5X2giLCJlc3RpbWF0ZXNfZmlzY2FsX3BlcmlvZF9mcV9oIiwiZXN0aW1hdGVzX2Zpc2NhbF9wZXJpb2RfZmhfaCIsImZvcmVjYXN0X2F2YWlsYWJpbGl0eSJdKSxyPW5ldyBjbGFzc3sKY29uc3RydWN0b3IoZSl7dGhpcy5fY2FjaGU9bmV3IE1hcCx0aGlzLl90aW1lcz1uZXcgTWFwLHRoaXMuX2ZpZWxkcz1bLi4uZS5maWVsZHNdfXVwZGF0ZShlLHQsbyl7Y29uc3Qgbj0oMCxpLmVuc3VyZURlZmluZWQpKGUuc3ltYm9sbmFtZSkscj1EYXRlLm5vdygpO2lmKHRoaXMuX2NhY2hlLmhhcyhuKXx8dGhpcy5fY2FjaGUuc2V0KG4se3N5bWJvbG5hbWU6bixzdGF0dXM6ZS5zdGF0dXMsdmFsdWVzOnt9fSksdGhpcy5fdGltZXMuaGFzKG4pfHx0aGlzLl90aW1lcy5zZXQobixuZXcgTWFwKSwiZXJyb3IiPT09ZS5zdGF0dXMpcmV0dXJuO2NvbnN0IHM9KDAsaS5lbnN1cmVEZWZpbmVkKSh0aGlzLl9jYWNoZS5nZXQobikpLGE9KDAsaS5lbnN1cmVEZWZpbmVkKSh0aGlzLl90aW1lcy5nZXQobikpO3Muc3RhdHVzPWUuc3RhdHVzO2Zvcihjb25zdCBpIG9mIHRoaXMuX2ZpZWxkcyl0LmhhcyhpKSYmKG98fHZvaWQgMCE9PWUudmFsdWVzW2ldKSYmKHMudmFsdWVzW2ldPWUudmFsdWVzW2ldLGEuc2V0KGkscikpfWdldChlKXtyZXR1cm4gdGhpcy5fY2FjaGUuZ2V0KGUpPz9udWxsfWdldFRpbWVzKGUpe3JldHVybiB0aGlzLl90aW1lcy5nZXQoZSk/P251bGx9ZmllbGRzKCl7cmV0dXJuIHRoaXMuX2ZpZWxkc319KHtmaWVsZHM6bn0pfSw5Mjc1OTMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7UXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXI6KCk9Pmd9KTt2YXIgaT1vKDU4NzE2OCksbj1vKDU0Nzg1MSkscj1vKDM1MjgzNykscz1vKDEzODYzOCksYT1vKDIyMTA2MSksbD1vKDk0ODM4MCksYz1vKDk2NDQ4NiksZD1vKDE1MDE1MCksaD1vKDMwOTA1MiksdT1vKDM2Nzk0Nik7bGV0IF89ITE7dmFyIHA9byg5NzA3NzQpO2NvbnN0IG09KDAsYS5nZXRMb2dnZXIpKCJXZWJjaGFydENsaWVudC5RdW90ZVNlc3Npb25NdWx0aXBsZXhlciIpO2NsYXNzIGd7Y29uc3RydWN0b3IoZSl7dGhpcy5vbkNvbm5lY3Q9bmV3IGwuRGVsZWdhdGUsdGhpcy5vbkRpc2Nvbm5lY3Q9bmV3IGwuRGVsZWdhdGUsdGhpcy5fY29ubmVjdGVkPSExLHRoaXMuX3N1YnNjcmlwdGlvbnM9e30sdGhpcy5fc3ltYm9sX2RhdGE9e30sdGhpcy5fZGVsYXlVcGRhdGVGYXN0U3ltYm9scz0oMCxuLmRlZmF1bHQpKHRoaXMuX3VwZGF0ZUZhc3RTeW1ib2xzLDI1MCksdGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YT17fSx0aGlzLl9leHRlbnNpb25zPXt9LHRoaXMub3B0aW9ucz17dGhyb3R0bGVUaW1lb3V0OjEyNSwuLi5lfSx0aGlzLl9zZXNzaW9uPW5ldyBwLlF1b3RlU2Vzc2lvbihlLmFwaSxbIm11bHRpcGxleGVyIixlLm5hbWUsKDAsZC5yYW5kb21IYXNoKSgpXS5maWx0ZXIoQm9vbGVhbikuam9pbigiXyIpKSx0aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucz8uZm9ybWF0dGVyJiYodGhpcy5fZXh0ZW5zaW9ucy5mb3JtYXR0ZXI9dGhpcy5vcHRpb25zLmV4dGVuc2lvbnMuZm9ybWF0dGVyKHRoaXMpKSx0aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucz8uc25hcHNob3QmJih0aGlzLl9leHRlbnNpb25zLnNuYXBzaG90PXRoaXMub3B0aW9ucy5leHRlbnNpb25zLnNuYXBzaG90KHRoaXMpKSx0aGlzLmNvbm5lY3QoKX1kZXN0cm95KCl7dGhpcy5fc2Vzc2lvbi5kZXN0cm95KCksdGhpcy5fY29ubmVjdGVkPSExLHRoaXMub25EaXNjb25uZWN0LmZpcmUoKX1pbnRlcm5hbHMoKXtyZXR1cm57c2Vzc2lvbjooKT0+dGhpcy5fc2Vzc2lvbixzdWJzY3JpcHRpb25zOigpPT50aGlzLl9zdWJzY3JpcHRpb25zLGRhdGE6KCk9PnRoaXMuX3N5bWJvbF9kYXRhfX1jb25uZWN0KCl7dGhpcy5fc2Vzc2lvbi5jb25uZWN0KHRoaXMucXVvdGVIYW5kbGVyLmJpbmQodGhpcykpfXF1b3RlSGFuZGxlcihlKXtjb25zdHttZXRob2Q6dCxwYXJhbXM6b309ZTtzd2l0Y2godCl7Y2FzZSJjb25uZWN0ZWQiOnRoaXMuX2Nvbm5lY3RlZHx8KHRoaXMuX2Nvbm5lY3RlZD0hMCx0aGlzLm9uQ29ubmVjdGVkKCkpO2JyZWFrO2Nhc2UicXVvdGVfbGlzdF9maWVsZHMiOmJyZWFrO2Nhc2UicXVvdGVfc3ltYm9sX2RhdGEiOnRoaXMuX2Nvbm5lY3RlZCYmdGhpcy5vblN5bWJvbERhdGEob1swXSk7YnJlYWs7Y2FzZSJxdW90ZV9jb21wbGV0ZWQiOnRoaXMuX2Nvbm5lY3RlZCYmdGhpcy5vblN5bWJvbERhdGEoe3N5bWJvbG5hbWU6b1swXSxjb21wbGV0ZTpwZXJmb3JtYW5jZS5ub3coKSx2YWx1ZXM6e319KTticmVhaztjYXNlImRpc2Nvbm5lY3RlZCI6dGhpcy5fY29ubmVjdGVkJiYodGhpcy5fY29ubmVjdGVkPSExLHRoaXMub25EaXNjb25uZWN0LmZpcmUoKSl9fW9uQ29ubmVjdGVkKCl7dGhpcy5zZXRGaWVsZHMoKTtjb25zdCBlPU9iamVjdC5rZXlzKHRoaXMuX3N5bWJvbF9kYXRhKTtlLmxlbmd0aCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVBZGRTeW1ib2xzKGUpLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSksdGhpcy5vbkNvbm5lY3QuZmlyZSgpfXNldEZpZWxkcygpe2NvbnN0e2ZpZWxkczplfT10aGlzLm9wdGlvbnM7ZSYmZS5sZW5ndGgmJnRoaXMuX3Nlc3Npb24ucXVvdGVTZXRGaWVsZHMoZSl9b25TeW1ib2xEYXRhKGUpe3RyeXtlLnN0YXR1cyYmaC5RVU9URV9GSUVMRFNfQ0FDSEUudXBkYXRlKGUsaC5RVU9URV9GSUVMRFMsITEpfWNhdGNoKGUpe31jb25zdCB0PWUuc3ltYm9sbmFtZTtsZXQgbz10aGlzLl90aHJvdHRsZWRTeW1ib2xEYXRhW3RdO18mJihkZWxldGUgZS52YWx1ZXMucHJldl9jbG9zZV9wcmljZSx2b2lkIDAhPT1lLnZhbHVlcy5yZWd1bGFyX2Nsb3NlJiYoZS52YWx1ZXMucHJldl9jbG9zZV9wcmljZT1lLnZhbHVlcy5yZWd1bGFyX2Nsb3NlKSksb3x8KG89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVt0XT17Zm5EaXNwYXRjaDooMCxpLmRlZmF1bHQpKHRoaXMuZGlzcGF0Y2hTeW1ib2xEYXRhLmJpbmQodGhpcyksdGhpcy5vcHRpb25zLnRocm90dGxlVGltZW91dCl9KSxvLmNhY2hlPygwLGMuZGVlcEV4dGVuZCkoby5jYWNoZSxlKTpvLmNhY2hlPWUsby5mbkRpc3BhdGNoKHQpfWRpc3BhdGNoU3ltYm9sRGF0YShlKXtjb25zdCB0PXRoaXMuX3N5bWJvbF9kYXRhW2VdLG89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVtlXS5jYWNoZQo7aWYoZGVsZXRlIHRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbZV0uY2FjaGUsdGhpcy5fc3ltYm9sX2RhdGFbZV0peygwLGMuZGVlcEV4dGVuZCkodCxvKSx0LnZhbHVlcyYmdGhpcy5fcGFyc2VVcGRhdGVNb2RlKHQudmFsdWVzKTtmb3IoY29uc3QgaSBpbiB0aGlzLl9zdWJzY3JpcHRpb25zKXtjb25zdCBuPXRoaXMuX3N1YnNjcmlwdGlvbnNbaV07aWYobi5oYXMoZSkpe1suLi4oMCxzLmVuc3VyZURlZmluZWQpKG4uZ2V0KGUpKV0uZm9yRWFjaCgoZT0+e2UodCxvKX0pKX19fX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX3N1YnNjcmlwdGlvbnNbZV09dGhpcy5fc3Vic2NyaXB0aW9uc1tlXXx8bmV3IE1hcDtjb25zdCBpPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV07dD1BcnJheS5pc0FycmF5KHQpP1suLi50XTpbdF07Y29uc3Qgbj1bXTt0LmZvckVhY2goKGU9Pnt0aGlzLl9zeW1ib2xfZGF0YVtlXT9pJiZpLmhhcyhlKXx8dGhpcy5fc3ltYm9sX2RhdGFbZV0uc3Vic2NyaWJlcnNfY291bnQrKzoodGhpcy5fc3ltYm9sX2RhdGFbZV09e3N1YnNjcmliZXJzX2NvdW50OjF9LG4ucHVzaChlKSksaS5oYXMoZSl8fGkuc2V0KGUsW10pO2NvbnN0IHQ9KDAscy5lbnN1cmVEZWZpbmVkKShpLmdldChlKSk7dC5wdXNoKG8pLHQuZmFzdD0hMCx0aGlzLl9zeW1ib2xfZGF0YVtlXSYmdGhpcy5fc3ltYm9sX2RhdGFbZV0udmFsdWVzJiZvKHRoaXMuX3N5bWJvbF9kYXRhW2VdLHRoaXMuX3N5bWJvbF9kYXRhW2VdKX0pKSxuLmxlbmd0aCYmdGhpcy5fY29ubmVjdGVkJiYodGhpcy5fc2Vzc2lvbi5xdW90ZUFkZFN5bWJvbHMobiksdGhpcy5fZGVsYXlVcGRhdGVGYXN0U3ltYm9scygpKX11bnN1YnNjcmliZShlLHQsbyl7dD1BcnJheS5pc0FycmF5KHQpP1suLi50XTpbdF07Y29uc3QgaT10aGlzLl9zdWJzY3JpcHRpb25zW2VdLG49W107Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKyspe2NvbnN0IGE9dFtyXTtpZihpJiZpLmhhcyhhKSl7aWYobyl7Y29uc3QgZT0oMCxzLmVuc3VyZURlZmluZWQpKGkuZ2V0KGEpKSx0PWUuaW5kZXhPZihvKTt+dCYmZS5zcGxpY2UodCwxKSxlLmxlbmd0aHx8aS5kZWxldGUoYSl9ZWxzZSBpLmRlbGV0ZShhKTswPT09aS5zaXplJiZkZWxldGUgdGhpcy5fc3Vic2NyaXB0aW9uc1tlXSx0aGlzLl9zeW1ib2xfZGF0YS5oYXNPd25Qcm9wZXJ0eShhKSYmKGkuaGFzKGEpfHx0aGlzLl9zeW1ib2xfZGF0YVthXS5zdWJzY3JpYmVyc19jb3VudC0tLHRoaXMuX3N5bWJvbF9kYXRhW2FdLnN1YnNjcmliZXJzX2NvdW50fHwoZGVsZXRlIHRoaXMuX3N5bWJvbF9kYXRhW2FdLG4ucHVzaChhKSkpfWVsc2UgbS5sb2dXYXJuKGBDaGVjayB5b3VyIHN1Yi91bnN1YiBsb29rcyBpdCBpcyBsZWFraW5nIChjbGllbnRfaWQ9JHtlfSwgc3ltYm9sPSR7YX0pYCl9bi5sZW5ndGgmJnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVSZW1vdmVTeW1ib2xzKG4pLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSl9c2V0RmFzdFN5bWJvbHMoZSx0KXtpZih0aGlzLl9zdWJzY3JpcHRpb25zW2VdKXtjb25zdCBvPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV0saT1BcnJheS5mcm9tKG8ua2V5cygpKTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoOysrZSl7Y29uc3Qgbj1pW2VdOygwLHMuZW5zdXJlRGVmaW5lZCkoby5nZXQobikpLmZhc3Q9LTEhPT10LmluZGV4T2Yobil9fXRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKX1zbmFwc2hvdChlKXtyZXR1cm4gdm9pZCAwPT09dGhpcy5fZXh0ZW5zaW9ucy5zbmFwc2hvdD9Qcm9taXNlLnJlamVjdCgiTm8gZm9ybWF0dGVyIGV4dGVuc2lvbiBwcm92aWRlZCIpOnRoaXMuX2V4dGVuc2lvbnMuc25hcHNob3QoZSl9Zm9ybWF0dGVyKGUsdCl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyP1Byb21pc2UucmVqZWN0KCJObyBmb3JtYXR0ZXIgZXh0ZW5zaW9uIHByb3ZpZGVkIik6dGhpcy5fZXh0ZW5zaW9ucy5mb3JtYXR0ZXIoZSx0KX1fdXBkYXRlRmFzdFN5bWJvbHMoKXtpZighdGhpcy5fY29ubmVjdGVkKXJldHVybjtjb25zdCBlPXRoaXMuX2Zhc3RTeW1ib2xzKCk7MD09PWUubGVuZ3RoP3RoaXMuX3Nlc3Npb24ucXVvdGVIaWJlcm5hdGVBbGwoKTp0aGlzLl9zZXNzaW9uLnF1b3RlRmFzdFN5bWJvbHMoZSl9X2Zhc3RTeW1ib2xzKCl7bGV0IGU9W107Zm9yKGNvbnN0IHQgaW4gdGhpcy5fc3Vic2NyaXB0aW9ucyl7Y29uc3Qgbz10aGlzLl9zdWJzY3JpcHRpb25zW3RdLGk9QXJyYXkuZnJvbShvLmtleXMoKSk7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDsrK3Qpe2NvbnN0IG49aVt0XTsoMCxzLmVuc3VyZURlZmluZWQpKG8uZ2V0KG4pKS5mYXN0JiZlLnB1c2gobil9fXJldHVybiBlPSgwLHIuZGVmYXVsdCkoZSksZX1fcGFyc2VVcGRhdGVNb2RlKGUpeygwLHUubm9ybWFsaXplVXBkYXRlTW9kZSkoZSl9fX0sOTcwNzc0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1F1b3RlU2Vzc2lvbjooKT0+bn0pO3ZhciBpPW8oMTUwMTUwKTtjbGFzcyBue2NvbnN0cnVjdG9yKGUsdD0oMCxpLnJhbmRvbUhhc2gpKCkpe3RoaXMuX3Nlc3Npb25zdGFydGVkPSExLHRoaXMuX2dsb2JhbEhhbmRsZXI9bnVsbCx0aGlzLl9jaGFydEFwaT1lLHRoaXMuX3Nlc3Npb25pZD0icXNfIit0fWRlc3Ryb3koKXt0aGlzLl9zZXNzaW9uc3RhcnRlZCYmKHRoaXMuX2NoYXJ0QXBpLnF1b3RlRGVsZXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQpLHRoaXMuX3Nlc3Npb25zdGFydGVkPSExKX1jb25uZWN0ZWQoKXtyZXR1cm4gdGhpcy5fY2hhcnRBcGkuY29ubmVjdGVkKCl9Y29ubmVjdChlKXt0aGlzLl9nbG9iYWxIYW5kbGVyPWUsdGhpcy5fY2hhcnRBcGkuY3JlYXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQsdGhpcyksdGhpcy5fY2hhcnRBcGkuY29ubmVjdCgpfWRpc2Nvbm5lY3QoKXt0aGlzLl9jaGFydEFwaS5kaXNjb25uZWN0KCl9cXVvdGVBZGRTeW1ib2xzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlQWRkU3ltYm9scyh0aGlzLl9zZXNzaW9uaWQsZSl9cXVvdGVSZW1vdmVTeW1ib2xzKGUpewp0aGlzLl9jaGFydEFwaS5xdW90ZVJlbW92ZVN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlRmFzdFN5bWJvbHMoZSl7dGhpcy5fY2hhcnRBcGkucXVvdGVGYXN0U3ltYm9scyh0aGlzLl9zZXNzaW9uaWQsZSl9cXVvdGVTZXRGaWVsZHMoZSl7dGhpcy5fY2hhcnRBcGkucXVvdGVTZXRGaWVsZHModGhpcy5fc2Vzc2lvbmlkLGUpfW9uTWVzc2FnZShlKXtzd2l0Y2goZS5tZXRob2Qpe2Nhc2UiY29ubmVjdGVkIjp0aGlzLl9zZXNzaW9uc3RhcnRlZHx8KHRoaXMuX2NoYXJ0QXBpLnF1b3RlQ3JlYXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQpLHRoaXMuX3Nlc3Npb25zdGFydGVkPSEwKTticmVhaztjYXNlImRpc2Nvbm5lY3RlZCI6dGhpcy5fc2Vzc2lvbnN0YXJ0ZWQ9ITF9dGhpcy5fZ2xvYmFsSGFuZGxlcj8uKGUpfXF1b3RlSGliZXJuYXRlQWxsKCl7dGhpcy5fY2hhcnRBcGkucXVvdGVIaWJlcm5hdGVBbGwodGhpcy5fc2Vzc2lvbmlkKX19fSwzNjc5NDYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe2lmKHZvaWQgMD09PWUpcmV0dXJuIG51bGw7Y29uc3QgdD1lLm1hdGNoKC8oZGVsYXllZF9zdHJlYW1pbmcpXyhcZCspLyk7cmV0dXJuIG51bGw9PT10P251bGw6e21vZGU6dFsxXSxpbnRlcnZhbDpwYXJzZUludCh0WzJdKX19ZnVuY3Rpb24gbihlKXtjb25zdCB0PWkoZS51cGRhdGVfbW9kZSk7cmV0dXJuIG51bGw9PT10fHwoZS51cGRhdGVfbW9kZT10Lm1vZGUsZS51cGRhdGVfbW9kZV9zZWNvbmRzPXQuaW50ZXJ2YWwpLGV9by5kKHQse25vcm1hbGl6ZVVwZGF0ZU1vZGU6KCk9Pm4scGFyc2VVcGRhdGVNb2RlOigpPT5pfSl9LDM1NjM4MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRUb29sdGlwRGF0YTooKT0+bixzZXRUb29sdGlwRGF0YTooKT0+cn0pO2NvbnN0IGk9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbihlLHQpe2NvbnN0IG89aS5nZXQoZSk7cmV0dXJuIG8gaW5zdGFuY2VvZiBGdW5jdGlvbj9vKHQpOm8mJm9bdF19ZnVuY3Rpb24gcihlLHQsbyl7aWYobyBpbnN0YW5jZW9mIEZ1bmN0aW9uKXJldHVybiB2b2lkIGkuc2V0KGUsbyk7Y29uc3Qgbj1pLmdldChlKSxyPXZvaWQgMD09PW58fG4gaW5zdGFuY2VvZiBGdW5jdGlvbj97fTpuO3JbdF09byxpLnNldChlLHIpfX0sNDkwMzc4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldERhdGFGcm9tVGFyZ2V0OigpPT5wLGdldFRvb2x0aXA6KCk9Pm0saGlkZVRvb2x0aXA6KCk9PmYsc2V0U3R5bGU6KCk9Pmcsc2hvd1Rvb2x0aXA6KCk9PnZ9KTt2YXIgaSxuPW8oMTM4NjM4KSxyPW8oNDQzNTU3KSxzPW8oOTY5MTY4KSxhPShvKDgyOTE4MCksbyg1MTg3NSkpLGw9byg2NDA3NDQpLGM9bygzMTg5NzQpLGQ9byg2ODY2NTApLGg9bygzNTYzODApLHU9bygzNDUxNTEpLF89bygxMTQwNjgpO2Z1bmN0aW9uIHAoZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PWUuaGFzQXR0cmlidXRlKCJkYXRhLXRvb2x0aXAiKT9lLmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik6ZS5nZXRBdHRyaWJ1dGUoInRpdGxlIik7cmV0dXJuIHQmJigoMCxoLnNldFRvb2x0aXBEYXRhKShlLCJ0ZXh0Iix0KSxlLnJlbW92ZUF0dHJpYnV0ZSgidGl0bGUiKSksKDAsaC5nZXRUb29sdGlwRGF0YSkoZSwidGV4dCIpfHwiIn0oZSksbz1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGk9e2g6by5oZWlnaHQsdzpvLndpZHRoLHg6by5sZWZ0LHk6by50b3B9LG49ZS5nZXRBdHRyaWJ1dGUoImRhdGEtY29sb3ItdGhlbWUiKXx8IiIscj1lLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtaHRtbCIpLHM9cGFyc2VJbnQoZS5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1kZWxheSIpfHwiIiksYT1wYXJzZUludChlLmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwLWRlYm91bmNlIil8fCIiKTtsZXQgbD17dHlwZToibm9uZSJ9O3JldHVybiB0JiYobD17dHlwZTpyPyJodG1sIjoidGV4dCIsZGF0YTp0fSkse2Fib3ZlOmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1hYm92ZSIpLGJlbG93OmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1iZWxvdyIpLG90bDplLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtb3RsIiksb3RyOmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1vdHIiKSx2ZXJ0aWNhbDplLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtdmVydGljYWwiKSxob3RrZXk6ZS5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1ob3RrZXkiKSxuYXJyb3c6ZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW5hcnJvdyIpLHdpZGU6ZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLXdpZGUiKSxjb2xvclRoZW1lOm4sdG9vbHRpcERlbGF5OnMsdG9vbHRpcERlYm91bmNlOmEscmVjdDppLGNvbnRlbnQ6bCx0YXJnZXQ6ZX19ZnVuY3Rpb24gbShlKXtjb25zdCB0PSgwLG4uZW5zdXJlTm90TnVsbCkoQykuY2xvbmVOb2RlKCEwKSxvPUUodCkse2NvbnRlbnQ6aX09ZTtzd2l0Y2goaS50eXBlKXtjYXNlImVsZW1lbnQiOm8uaW5uZXJIVE1MPSIiLG8uYXBwZW5kQ2hpbGQoaS5kYXRhKTticmVhaztjYXNlImh0bWwiOm8uaW5uZXJIVE1MPWkuZGF0YTticmVhaztjYXNlInRleHQiOmlmKGUuaG90a2V5KXtjb25zdCBlPSgwLG4uZW5zdXJlTm90TnVsbCkoVCkuY2xvbmVOb2RlKCEwKTtlLmlubmVyVGV4dD1pLmRhdGEsby5hcHBlbmRDaGlsZChlKX1lbHNlIG8uaW5uZXJUZXh0PWkuZGF0YX1pZihlLmhvdGtleSl7Y29uc3QgdD0ibm9uZSIhPT1pLnR5cGUscj0oMCxuLmVuc3VyZU5vdE51bGwpKGspLmNsb25lTm9kZSghMCkscz0oMCx1LmhvdEtleURlc2VyaWFsaXplKShlLmhvdGtleSksYT1zLmtleXMubWFwKChlPT5gPHNwYW4gY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24iXX0iPiR7ZX08L3NwYW4+YCkpO3IuaW5uZXJIVE1MPWZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz0ve1xkfXx7aG90a2V5X1xkfS9naTtyZXR1cm4gZS5yZXBsYWNlKG8sKGU9Pntjb25zdCBvPU51bWJlcihlLm1hdGNoKC9cZC8pKQo7cmV0dXJuIHRbb119KSl9KHMudGV4dCxhKS5yZXBsYWNlKC9cc1wrXHMvZyxgPHNwYW4gY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbiJdfSI+Kzwvc3Bhbj5gKSxvLmNsYXNzTGlzdC5hZGQoX1siY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5Il0pLHQmJnIuY2xhc3NMaXN0LmFkZChfWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIl0pLG8uYXBwZW5kQ2hpbGQocil9cmV0dXJuIHQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGEucHJldmVudERlZmF1bHQpLHR9ZnVuY3Rpb24gZyhlLHQpe2NvbnN0IG89dC5yZWN0O2lmKCFvKXJldHVybjsoMCxkLnNldFRvb2x0aXBDb2xvclRoZW1lKShlLHQuY29sb3JUaGVtZXx8ImRlZmF1bHQiKTtjb25zdCBpPUUoZSksbj1lLnF1ZXJ5U2VsZWN0b3IoYC4ke19bImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19YCk7dC5hZGRDbGFzcyYmZS5jbGFzc0xpc3QuYWRkKHQuYWRkQ2xhc3MpLHQuYWRkQm9keUNsYXNzJiZpLmNsYXNzTGlzdC5hZGQodC5hZGRCb2R5Q2xhc3MpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSJdLEJvb2xlYW4odC53aWRlKSksaS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIl0sQm9vbGVhbih0Lm5vUGFkZGluZykpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93Il0sQm9vbGVhbih0Lm5hcnJvdykpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucyJdLCEwKSxpLnN0eWxlLmxlZnQ9eSgwKSxpLnN0eWxlLndpZHRoPXkoaS5jbGllbnRXaWR0aCsoQm9vbGVhbih0Lm5vUGFkZGluZyk/MDoyKSk7Y29uc3Qgcj1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLGE9Yy5DaGVja01vYmlsZS5pT1MoKXx8Yy5DaGVja01vYmlsZS5BbmRyb2lkKCl8fCgwLGMuc3VwcG9ydFRvdWNoKSgpJiYoMCxjLmlzTWFjKSgpP3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCxoPXQudmVydGljYWwsdT10LmV4dGVuZE1hcmdpbnx8aCYmby53PDIwfHwhaCYmby5oPDIwO2UuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcC0tZmFydGhlciJdLHUpLGUuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcC0tdmVydGljYWwiXSxoKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwiXSwhaCk7Y29uc3QgcD1mdW5jdGlvbihlKXtyZXR1cm4gZS5xdWVyeVNlbGVjdG9yKGAuJHtfWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciJdfWApfShlKSxtPWUub2Zmc2V0SGVpZ2h0O2lmKGgpe2NvbnN0IGM9MTAsZD1hLTEwLGg9MTIsdT1jK2gsZz1kLWgsdj0oMCxsLmNsYW1wKShvLnkrby5oLzIsdSxnKS1tLzIsZj12K207ZS5zdHlsZS5sZWZ0PXkoby54K28udyksZS5zdHlsZS50b3A9eSh2KSx2PGM/aS5zdHlsZS50b3A9bi5zdHlsZS50b3A9eShjLXYpOmY+ZCYmKGkuc3R5bGUudG9wPW4uc3R5bGUudG9wPXkoZC1mKSk7Y29uc3R7cmlnaHQ6Yn09KGUucXVlcnlTZWxlY3RvcigiOmxhc3QtY2hpbGQiKXx8aSkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksUz1iKzEwPnI7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiXSxTKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiXSwhUyk7bGV0IHc9Uz8iYWZ0ZXIiOiJiZWZvcmUiOygwLHMuaXNSdGwpKCk/KHc9dC5vdHI/ImFmdGVyIjp3LHc9dC5vdGw/ImJlZm9yZSI6dyk6KHc9dC5vdHI/ImJlZm9yZSI6dyx3PXQub3RsPyJhZnRlciI6dykscC5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUiXSwiYmVmb3JlIj09PXcpLHAuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiXSwiYWZ0ZXIiPT09dyksImFmdGVyIj09PXcmJihlLnN0eWxlLmxlZnQ9ImF1dG8iLGUuc3R5bGUucmlnaHQ9eShyLW8ueCkpfWVsc2V7Y29uc3Qgcz1vLngtKGkub2Zmc2V0V2lkdGgtby53KS8yLGw9ci1lLm9mZnNldFdpZHRoLTIwPD0wPyhyLWUub2Zmc2V0V2lkdGgpLzI6MTAsYz1yLWwtZS5vZmZzZXRXaWR0aCxkPU1hdGgubWF4KGwsTWF0aC5taW4ocyxjKSk7ZS5zdHlsZS5sZWZ0PXkoZCk7Y29uc3QgaD1jPHM7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiXSxoKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiXSwhaCk7Y29uc3QgdT1mdW5jdGlvbihlLHQsbyxpKXtpZihlLmFib3ZlKXJldHVybiB4KHQsaSk/ImFib3ZlIjoiYmVsb3ciO2lmKGUuYmVsb3cpcmV0dXJuIGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gby55K28uaCt0KzEwPGV9KHQsbyxpKT8iYmVsb3ciOiJhYm92ZSI7cmV0dXJuIHgobyxpKT8iYWJvdmUiOiJiZWxvdyJ9KHQsYSxtLG8pOyJhYm92ZSI9PT11P2Uuc3R5bGUuYm90dG9tPXkoYS1vLnkpOmUuc3R5bGUudG9wPXkoby55K28uaCkscC5jbGFzc0xpc3QuYWRkKCJhYm92ZSI9PT11P19bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZSJdOl9bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdyJdKTtjb25zdHtsZWZ0Omd9PWkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bGV0IHY9TWF0aC50cnVuYyhvLngrby53LzItKGcraS5jbGllbnRXaWR0aC8yKSk7ZS5zdHlsZS5sZWZ0PXkoZCt2KSxlLnN0eWxlLndpZHRoPXkoaS5jbGllbnRXaWR0aCtuLmNsaWVudFdpZHRoKSx2PWg/TWF0aC5tYXgoMCx2KTpNYXRoLm1pbigwLHYpLG4uc3R5bGUubGVmdD15KC12KSxpLnN0eWxlLmxlZnQ9eSgtdil9fWZ1bmN0aW9uIHYoZSl7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMSl9ZnVuY3Rpb24gZihlKXsKZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMCl9ZnVuY3Rpb24geShlKXtyZXR1cm5gJHtNYXRoLmZsb29yKGUpfXB4YH0hZnVuY3Rpb24oZSl7ZVtlLlZpZXdwb3J0UGFkZGluZz0xMF09IlZpZXdwb3J0UGFkZGluZyJ9KGl8fChpPXt9KSk7Y29uc3QgYj1gXG5cdDxkaXYgaWQ9ImNvbW1vbi10b29sdGlwLXdyYXBwZXIiIGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwIl19Ij5cblx0XHQ8ZGl2IGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19IiA+XG5cdFx0XHQ8ZGl2IGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwX19ib2R5Il19IGpzLXRvb2x0aXAtYm9keSI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz0iJHtfWyJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciJdfSI+PC9kaXY+XG5cdDwvZGl2PlxuYCxTPWBcblx0PGRpdiBjbGFzcz0iJHtfWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIl19Ij48L2Rpdj5cbmAsdz1gXG5cdDxkaXYgY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0Il19Ij48L2Rpdj5cbmAsQz0oMCxyLnBhcnNlSHRtbEVsZW1lbnQpKGIpLGs9KDAsci5wYXJzZUh0bWxFbGVtZW50KShTKSxUPSgwLHIucGFyc2VIdG1sRWxlbWVudCkodyk7ZnVuY3Rpb24gRShlKXtyZXR1cm4gZS5xdWVyeVNlbGVjdG9yKGAuJHtfWyJjb21tb24tdG9vbHRpcF9fYm9keSJdfWApfWZ1bmN0aW9uIHgoZSx0KXtyZXR1cm4gMTArZTx0Lnl9fSwzNDUxNTEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7aG90S2V5RGVzZXJpYWxpemU6KCk9PnIsaG90S2V5U2VyaWFsaXplOigpPT5ufSk7dmFyIGk9byg2NDE1OTMpO2Z1bmN0aW9uIG4oZSl7cmV0dXJuKDAsaS5odG1sRXNjYXBlKShKU09OLnN0cmluZ2lmeShlKSl9ZnVuY3Rpb24gcihlKXtyZXR1cm4gSlNPTi5wYXJzZSgoMCxpLmRlY29kZUhUTUxFbnRpdGllcykoZSkpfX0sMTY3ODk2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2VtcHR5OigpPT5zLHNldFRvb2x0aXA6KCk9PmF9KTtjb25zdCBpPSJ0b29sdGlwLXJvb3QtZWxlbWVudCI7bGV0IG47ZnVuY3Rpb24gcigpe2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaSk7ZT9uPWU6KG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iiksbi5pZD1pLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobikpfWZ1bmN0aW9uIHMoKXtuJiYobi5pbm5lckhUTUw9IiIpfWZ1bmN0aW9uIGEoZSl7cygpLG58fHIoKSxuLmFwcGVuZENoaWxkKGUpfSJpbnRlcmFjdGl2ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlP3IoKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKX0sNjU4OTk1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NsZWFyU2NoZWR1bGU6KCk9PnMsc2NoZWR1bGVIaWRlOigpPT5sLHNjaGVkdWxlUmVtb3ZlOigpPT5hLHNjaGVkdWxlUmVuZGVyOigpPT5jfSk7bGV0IGk9MCxuPTAscj0wO2Z1bmN0aW9uIHMoKXtjbGVhclRpbWVvdXQoaSksY2xlYXJUaW1lb3V0KG4pLGNsZWFyVGltZW91dChyKX1mdW5jdGlvbiBhKGUsdCl7cj1zZXRUaW1lb3V0KGUsdCl9ZnVuY3Rpb24gbChlLHQpe249c2V0VGltZW91dChlLHQpfWZ1bmN0aW9uIGMoZSx0KXtpPXNldFRpbWVvdXQoZSx0KX19LDY4NjY1MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzZXRUb29sdGlwQ29sb3JUaGVtZTooKT0+cn0pO2NvbnN0IGk9e2RlZmF1bHQ6IiIsd2hpdGU6InRoZW1lLXdoaXRlIixjaGFydDoidGhlbWUtY2hhcnQiLG5ld3M6InRoZW1lLW5ld3MiLCJyb3VuZC1zaGFkb3ciOiJ0aGVtZS1yb3VuZC1zaGFkb3cifSxuPU9iamVjdC5rZXlzKGkpO2Z1bmN0aW9uIHIoZSx0KXtjb25zdCBvPW4uaW5jbHVkZXModCk/aVt0XToiIjtlLmNsYXNzTGlzdC5yZW1vdmUoLi4ubi5tYXAoKGU9PmlbZV0pKS5maWx0ZXIoKGU9PiEhZSkpKSxvJiYhZS5jbGFzc0xpc3QuY29udGFpbnMobykmJmUuY2xhc3NMaXN0LmFkZChvKX19LDM0NDc4NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtoaWRlOigpPT52LHNob3dPbkVsZW1lbnQ6KCk9Pl99KTt2YXIgaT1vKDM2MzI2OSksbj1vKDEzODYzOCkscj1vKDcyNzA5KSxzPW8oNjU4OTk1KSxhPW8oMTY3ODk2KSxsPW8oNDkwMzc4KTtsZXQgYz0hMSxkPW51bGwsaD1udWxsO2kubW9iaWxldG91Y2h8fChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW92ZXIiLG0sITApLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwoZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnRhcmdldDtpZighKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmdC5jbG9zZXN0KCdbZGF0YS10b29sdGlwLXNob3ctb24tZm9jdXM9InRydWUiXScpJiZ0Lm1hdGNoZXMoIjpmb2N1cy12aXNpYmxlIikpKXJldHVybjttKGUsITApfSkse2NhcHR1cmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1mb2N1cyIsKGZ1bmN0aW9uKGUpe2UudGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJm0oZSwhMCl9KSx7Y2FwdHVyZTohMH0pKTtjb25zdCB1PW5ldyBNdXRhdGlvbk9ic2VydmVyKCgoKT0+e2lmKGQmJmQub3B0aW9ucy50YXJnZXQpe2xldCBlO2U9ImlzQ29ubmVjdGVkImluIGQub3B0aW9ucy50YXJnZXQ/ZC5vcHRpb25zLnRhcmdldC5pc0Nvbm5lY3RlZDpkb2N1bWVudC5ib2R5LmNvbnRhaW5zKGQub3B0aW9ucy50YXJnZXQpLGV8fHYoKX19KSksXz0oZSx0PXt9KT0+e2NvbnN0e2NvbnRlbnQ6bywuLi5pfT1iKHQpLG49bC5nZXREYXRhRnJvbVRhcmdldChlKSxyPU9iamVjdC5hc3NpZ24obixpKTtyZXR1cm4ibm9uZSIhPT1vLnR5cGUmJihyLmNvbnRlbnQ9byksISgibm9uZSI9PT1yLmNvbnRlbnQudHlwZSYmIXIuaG90a2V5KSYmKHIudGFyZ2V0PWUscChyKSwhMCl9LHA9ZT0+e2NvbnN0IHQ9YihlKSxvPWwuZ2V0VG9vbHRpcCh0KTtpZihkPXtvcHRpb25zOnQsZWxlbWVudDpvfSwoMCxhLnNldFRvb2x0aXApKG8pLCgwLHMuY2xlYXJTY2hlZHVsZSkoKSwKIWMpcmV0dXJuIGwuaGlkZVRvb2x0aXAobyksdm9pZCgwLHMuc2NoZWR1bGVSZW5kZXIpKCgoKT0+ZihvKSksZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLnRvb2x0aXBEZWxheXx8aXNOYU4oZS50b29sdGlwRGVsYXkpPzUwMDplLnRvb2x0aXBEZWxheX0odCkpO2NvbnN0e3Rvb2x0aXBEZWJvdW5jZTppfT1lOyJudW1iZXIiIT10eXBlb2YgaXx8aXNOYU4oaSk/ZihvKTooMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9PmYobykpLGkpfTtmdW5jdGlvbiBtKGUsdCl7aWYoInNvdXJjZUNhcGFiaWxpdGllcyJpbiBlJiZlLnNvdXJjZUNhcGFiaWxpdGllcz8uZmlyZXNUb3VjaEV2ZW50cylyZXR1cm47Y29uc3Qgbz1mdW5jdGlvbihlLHQsbyl7Y29uc3QgaT1bXTtmb3IoO2UmJmUhPT10OyllLmNsYXNzTGlzdCYmZS5jbGFzc0xpc3QuY29udGFpbnMobykmJmkucHVzaChlKSxlPWUucGFyZW50RWxlbWVudHx8eShlLnBhcmVudE5vZGUpO3JldHVybiBpfShlLnRhcmdldCxlLmN1cnJlbnRUYXJnZXQsImFwcGx5LWNvbW1vbi10b29sdGlwIik7Zm9yKGNvbnN0IGkgb2Ygbyl7aWYoZSBpbnN0YW5jZW9mIE1vdXNlRXZlbnQpaWYoImJ1dHRvbnMiaW4gZSl7aWYoMSZlLmJ1dHRvbnMpY29udGludWV9ZWxzZSBpZigxPT09ZS53aGljaCljb250aW51ZTtjb25zdCBvPSgpPT5fKGkpO2lmKG8oKSl7Y29uc3QgZT1lPT5uKG51bGwsITApLG49KHIscz0hMSk9PntpLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNvbW1vbi10b29sdGlwLXVwZGF0ZSIsbyksaS5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixuKSxpLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLHtjYXB0dXJlOiEwfSksdCYmKGkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsbiksaS5yZW1vdmVFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixuKSksaCYmKGguZGVzdHJveSgpLGg9bnVsbCksdihzKX07aS5hZGRFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLG8pLGkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsbiksaS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLG4pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZSx7Y2FwdHVyZTohMH0pLHQmJihpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLG4pLGkuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsbikpLG51bGw9PT1oJiYoaD0oMCxyLmNyZWF0ZUdyb3VwKSh7ZGVzYzoiVG9vbHRpcCJ9KSxoLmFkZCh7ZGVzYzoiSGlkZSIsaG90a2V5OjI3LGhhbmRsZXI6bn0pKTticmVha319fWZ1bmN0aW9uIGcoKXsoMCxhLmVtcHR5KSgpLGM9ITEsZD1udWxsfWNvbnN0IHY9KGUsdCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsbi5lbnN1cmVOb3ROdWxsKSh1KS5kaXNjb25uZWN0KCksIWQpcmV0dXJuO2lmKCFlJiYhYylyZXR1cm47Y29uc3R7ZWxlbWVudDpvLG9wdGlvbnM6aX09ZCxyPSgpPT57by5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixyKSxsLmhpZGVUb29sdGlwKG8pLGU/ZygpOigwLHMuc2NoZWR1bGVSZW1vdmUpKCgoKT0+e2coKX0pLDI1MCksdD8uKCl9O2kudG9vbHRpcEhpZGVEZWxheT8oMCxzLnNjaGVkdWxlSGlkZSkoKCgpPT57by5xdWVyeVNlbGVjdG9yKCI6aG92ZXIiKT9vLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpOnIoKX0pLGkudG9vbHRpcEhpZGVEZWxheSk6cigpfTtmdW5jdGlvbiBmKGUpe2NvbnN0e29wdGlvbnM6dH09KDAsbi5lbnN1cmVOb3ROdWxsKShkKTtpZihsLnNldFN0eWxlKGUsdCksbC5zaG93VG9vbHRpcChlKSwoMCxuLmVuc3VyZU5vdE51bGwpKHUpLm9ic2VydmUoZG9jdW1lbnQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSksYz0hMCx0LmZvcmNlSGlkZU9uTW92ZSl7Y29uc3QgZT0oKT0+e2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKSx2KCl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKX19ZnVuY3Rpb24geShlKXtyZXR1cm4gZSYmKGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERT9lOm51bGwpfWZ1bmN0aW9uIGIoZSl7aWYoZnVuY3Rpb24oZSl7cmV0dXJuImNvbnRlbnQiaW4gZX0oZSkpcmV0dXJuIGU7Y29uc3R7aW5uZXI6dCxodG1sOm8sdGV4dDppLC4uLm59PWU7bGV0IHI9e3R5cGU6Im5vbmUifTtyZXR1cm4gdCYmKHI9e3R5cGU6ImVsZW1lbnQiLGRhdGE6dH0pLGkmJihyPXt0eXBlOm8/Imh0bWwiOiJ0ZXh0IixkYXRhOml9KSx7Y29udGVudDpyLC4uLm59fX0sNzAzMDQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse01hcmtldERpYWxvZ0NvbnRleHQ6KCk9PnIsTWFya2V0RGlhbG9nTW9kZTooKT0+aX0pO3ZhciBpLG49byg3Nzk0NzQpOyFmdW5jdGlvbihlKXtlLlNpbmdsZT0ic2luZ2xlIixlLk11bHRpPSJtdWx0aSJ9KGl8fChpPXt9KSk7Y29uc3Qgcj0oMCxuLmNyZWF0ZUNvbnRleHQpKG51bGwpfSwyNDk0NjkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW50aXJlV29ybGRNYXJrZXRzUHJlc2V0OigpPT5hLGdldE1hcmtldEdyb3VwTmFtZU1hcDooKT0+cixpc01hcmtldHNQcmVzZXQ6KCk9Pmx9KTt2YXIgaT1vKDE4NTI3MSksbj1vKDE5NjIwMSk7Y29uc3Qgcj0oKT0+KHtbbi5NYXJrZXRHcm91cC5DdXN0b21dOiIiLFtuLk1hcmtldEdyb3VwLkVudGlyZVdvcmxkXToiIixbbi5NYXJrZXRHcm91cC5Ob3J0aEFtZXJpY2FdOmkudChudWxsLHZvaWQgMCxvKDY4OTcxNikpLFtuLk1hcmtldEdyb3VwLkV1cm9wZV06aS50KG51bGwsdm9pZCAwLG8oOTUyMzY3KSksW24uTWFya2V0R3JvdXAuTWlkZGxlRWFzdEFmcmljYV06aS50KG51bGwsdm9pZCAwLG8oNjAzMDY1KSksW24uTWFya2V0R3JvdXAuTWV4aWNvU291dGhBbWVyaWNhXTppLnQobnVsbCx2b2lkIDAsbyg1OTgyNDcpKSwKW24uTWFya2V0R3JvdXAuQXNpYVBhY2lmaWNdOmkudChudWxsLHZvaWQgMCxvKDc2NDE3MSkpLFtuLk1hcmtldEdyb3VwLldvcmxkd2lkZV06aS50KG51bGwsdm9pZCAwLG8oNjQzMDc1KSksW24uTWFya2V0R3JvdXAuRzIwXTppLnQobnVsbCx2b2lkIDAsbyg5Nzg1NjEpKX0pO3ZhciBzOyFmdW5jdGlvbihlKXtlLkVudGlyZVdvcmxkPSJlbnRpcmVfd29ybGQiLGUuRzIwPSJnMjAifShzfHwocz17fSkpO2NvbnN0IGE9ZT0+KHt2YWx1ZToiZW50aXJlX3dvcmxkIixuYW1lOmkudChudWxsLHZvaWQgMCxvKDkxNTEyNCkpLGRlc2M6IiIsZ3JvdXA6bi5NYXJrZXRHcm91cC5DdXN0b20sY291bnRyaWVzOmU/P1tdfSk7ZnVuY3Rpb24gbChlKXtyZXR1cm4gZS5ncm91cD09PW4uTWFya2V0R3JvdXAuQ3VzdG9tJiZlLmhhc093blByb3BlcnR5KCJjb3VudHJpZXMiKX19LDE5NjIwMShlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpO28uZCh0LHtNYXJrZXRHcm91cDooKT0+aX0pLGZ1bmN0aW9uKGUpe2UuQ3VzdG9tPSJDdXN0b20iLGUuRW50aXJlV29ybGQ9IkVudGlyZSBXb3JsZCIsZS5Ob3J0aEFtZXJpY2E9Ik5vcnRoIEFtZXJpY2EiLGUuRXVyb3BlPSJFdXJvcGUiLGUuTWlkZGxlRWFzdEFmcmljYT0iTWlkZGxlIEVhc3QgLyBBZnJpY2EiLGUuTWV4aWNvU291dGhBbWVyaWNhPSJNZXhpY28gYW5kIFNvdXRoIEFtZXJpY2EiLGUuQXNpYVBhY2lmaWM9IkFzaWEgLyBQYWNpZmljIixlLldvcmxkd2lkZT0iV29ybGR3aWRlIixlLkcyMD0iRzIwIn0oaXx8KGk9e30pKX0sOTk4NjYxKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtjb25zdCB0PW5ldyBNYXA7cmV0dXJuIGUuZm9yRWFjaCgoZT0+e3QuaGFzKGUuZ3JvdXApP3QuZ2V0KGUuZ3JvdXApLnB1c2goZSk6dC5zZXQoZS5ncm91cCxbZV0pfSkpLHR9ZnVuY3Rpb24gbihlLHQpe3JldHVybiB0Lm1hcCgodD0+ZS5maW5kKChlPT5lLnZhbHVlPT09dCkpKSkuZmlsdGVyKChlPT5Cb29sZWFuKGUpKSl9ZnVuY3Rpb24gcihlLHQ9Mil7aWYoMD09PWUubGVuZ3RoKXJldHVybltdO2lmKDE9PT10KXJldHVybltlXTtjb25zdCBvPU1hdGguZmxvb3IoZS5sZW5ndGgvMikrZS5sZW5ndGglMjtyZXR1cm5bZS5zbGljZSgwLG8pLGUuc2xpY2UobyldLmZpbHRlcigoZT0+ZS5sZW5ndGg+MCkpfW8uZCh0LHtjcmVhdGVHcm91cENvbHVtbnM6KCk9PnIsZ2V0TWFya2V0c0J5TmFtZXM6KCk9Pm4sc3BsaXRNYXJrZXRzQnlHcm91cDooKT0+aX0pfSwxODk4NjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7U3Bpbm5lcjooKT0+cn0pO28oODQ1NTc3KTt2YXIgaT1vKDQ0MzU1Nyksbj1vKDU2NzQ3OSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihlKXt0aGlzLl9zaG93bj0hMSx0aGlzLl9lbD0oMCxpLnBhcnNlSHRtbEVsZW1lbnQpKGZ1bmN0aW9uKGU9IiIpe3JldHVybmA8ZGl2IGNsYXNzPSJ0di1zcGlubmVyICR7ZX0iIHJvbGU9InByb2dyZXNzYmFyIj48L2Rpdj5gfSgpKSx0aGlzLnNldFNpemUobi5zcGlubmVyU2l6ZU1hcFtlfHxuLkRFRkFVTFRfU0laRV0pfXNwaW4oZSl7cmV0dXJuIHRoaXMuX2VsLmNsYXNzTGlzdC5hZGQoInR2LXNwaW5uZXItLXNob3duIiksdm9pZCAwPT09dGhpcy5fY29udGFpbmVyJiYodGhpcy5fY29udGFpbmVyPWUsdm9pZCAwIT09ZSYmZS5hcHBlbmRDaGlsZCh0aGlzLl9lbCkpLHRoaXMuX3Nob3duPSEwLHRoaXN9c3RvcChlKXtyZXR1cm4gZSYmdm9pZCAwIT09dGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIucmVtb3ZlQ2hpbGQodGhpcy5fZWwpLHRoaXMuX2VsJiZ0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKCJ0di1zcGlubmVyLS1zaG93biIpLHRoaXMuX3Nob3duPSExLHRoaXN9c2V0U3R5bGUoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2goKHQ9Pntjb25zdCBvPWVbdF07dm9pZCAwIT09byYmdGhpcy5fZWwuc3R5bGUuc2V0UHJvcGVydHkodCxvKX0pKSx0aGlzfXN0eWxlKCl7cmV0dXJuIHRoaXMuX2VsLnN0eWxlfXNldFNpemUoZSl7Y29uc3QgdD12b2lkIDAhPT1lP2B0di1zcGlubmVyLS1zaXplXyR7ZX1gOiIiO3JldHVybiB0aGlzLl9lbC5jbGFzc05hbWU9YHR2LXNwaW5uZXIgJHt0fSAke3RoaXMuX3Nob3duPyJ0di1zcGlubmVyLS1zaG93biI6IiJ9YCx0aGlzfWdldEVsKCl7cmV0dXJuIHRoaXMuX2VsfWRlc3Ryb3koKXt0aGlzLnN0b3AoKSxkZWxldGUgdGhpcy5fZWwsZGVsZXRlIHRoaXMuX2NvbnRhaW5lcn19fSwyMDI0NjAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWJzdHJhY3RJbmRpY2F0b3I6KCk9PmF9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDE1MDE1MCkscj1vKDE1OTUxMyk7bygzNDQ3ODUpO2NvbnN0IHM9KDAsaS5nZXRMb2dnZXIpKCJHVUkuQmxvY2tzLkFic3RyYWN0SW5kaWNhdG9yIik7Y2xhc3MgYXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9jbGFzc1N1ZmZpeD0iIix0aGlzLl9xdW90ZVNlc3Npb25QcmVmaXg9ImFic3RyYWN0LWluZGljYXRvciIsdGhpcy5fc2hvcnRNb2RlPSExLHRoaXMuX3Nob3dUb29sdGlwPSEwLHRoaXMuX3N1YnNjcmliZWQ9ITEsdGhpcy5fdG9vbHRpcFR5cGU9ImN1c3RvbSIsdGhpcy5fbGFzdFRvb2x0aXBUZXh0PSIiLHRoaXMuX3F1b3RlU2Vzc2lvbj1lLnF1b3RlU2Vzc2lvbn1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLl92YWx1ZX1nZXRUb29sdGlwVGV4dCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldExhYmVsKCl7cmV0dXJuIHRoaXMuX2xhYmVsTWFwW3RoaXMuX3ZhbHVlXXx8IiJ9Z2V0RWxlbWVudCgpe3JldHVybiB0aGlzLl9lbH11cGRhdGUoZSx0KXt0aGlzLl91cGRhdGVWYWx1ZShlLHQpLHRoaXMuX3JlbmRlcigpfXNldFRvb2x0aXBFbmFibGVkKGU9ITEpe3RoaXMuX3Nob3dUb29sdGlwIT09ZSYmKHRoaXMuX3Nob3dUb29sdGlwPWUsdGhpcy5fcmVuZGVyVG9vbHRpcCgpKX1lbmFibGVTaG9ydE1vZGUoKXshMCE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMCx0aGlzLl9yZW5kZXIoKSl9ZGlzYWJsZVNob3J0TW9kZSgpeyExIT09dGhpcy5fc2hvcnRNb2RlJiYodGhpcy5fc2hvcnRNb2RlPSExLAp0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLHIuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKGUpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09ZSYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPWUsdGhpcy5fcmVuZGVyKCkpfV9pbml0KGUpe3RoaXMuX2VsPWUuZWw/ZS5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPWUuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPWUuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPWUubGFiZWxNYXAsdGhpcy5fc2hvd1Rvb2x0aXA9ZS5zaG93VG9vbHRpcCx0aGlzLl9jbGFzc1N1ZmZpeD1lLmNsYXNzU3VmZml4LHRoaXMuX3N5bWJvbE5hbWU9ZS5zeW1ib2wsdGhpcy5fc2Vzc2lvblN0YXR1c0ljb249ZS5zZXNzaW9uU3RhdHVzSWNvbix0aGlzLl9vblZhbHVlQ2hhbmdlPWUub25WYWx1ZUNoYW5nZSxlLnRvb2x0aXBUeXBlJiYodGhpcy5fdG9vbHRpcFR5cGU9ZS50b29sdGlwVHlwZSksdGhpcy5fcXVvdGVTZXNzaW9uR1VJRD0oMCxuLmd1aWQpKCksITA9PT1lLnNob3J0JiZ0aGlzLmVuYWJsZVNob3J0TW9kZSgpLGUuZGF0YSYmdGhpcy5fdXBkYXRlVmFsdWUoZS5kYXRhKX1fY2xlYXJDbGFzc2VzKCl7T2JqZWN0LnZhbHVlcyh0aGlzLl9jbGFzc01hcCkubWFwKChlPT57dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZShgJHtlfWApLHRoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7ZX0ke3RoaXMuX2NsYXNzU3VmZml4fWApfSkpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJDbGFzc2VzKCksdGhpcy5fcmVuZGVyVG9vbHRpcCgpLHRoaXMuX3JlbmRlckxhYmVsKCl9X3JlbmRlckxhYmVsKCl7dGhpcy5fZWwudGV4dENvbnRlbnQ9dGhpcy5nZXRMYWJlbCgpfV91cGRhdGVWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fZ2V0VmFsdWVGcm9tRGF0YShlKTsodHx8byE9PXRoaXMuX3ZhbHVlKSYmKHRoaXMuX3ZhbHVlPW8sdGhpcy5fb25WYWx1ZUNoYW5nZT8uKHRoaXMuX3ZhbHVlKSl9X3JlbmRlckNsYXNzZXMoKXtjb25zdCBlPXRoaXMuX2VsLmNsYXNzTGlzdDtlLmFkZCh0aGlzLl9jb21wb25lbnRDbGFzcyx0aGlzLl9jb21wb25lbnRDbGFzcyt0aGlzLl9jbGFzc1N1ZmZpeCk7Y29uc3QgdD10aGlzLl9jbGFzc01hcFt0aGlzLl92YWx1ZV07Zm9yKGNvbnN0IG8gaW4gdGhpcy5fY2xhc3NNYXApe2NvbnN0IGk9dGhpcy5fY2xhc3NNYXBbb107aSYmKGk9PT10PyhlLmFkZChpLGkrdGhpcy5fY2xhc3NTdWZmaXgpLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uJiZlLmFkZChpKyJfX3dpdGhJY29uIikpOihlLnJlbW92ZShpLGkrdGhpcy5fY2xhc3NTdWZmaXgpLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uJiZlLnJlbW92ZShpKyJfX3dpdGhJY29uIikpKX0hdCYmdGhpcy5fdmFsdWUmJnMubG9nV2Fybihgbm8gY2xhc3NOYW1lIGZvciBzdGF0dXMgJHt0aGlzLl92YWx1ZX1gKX1fcmVuZGVyVG9vbHRpcCgpe2NvbnN0IGU9dGhpcy5fc2hvd1Rvb2x0aXA/dGhpcy5nZXRUb29sdGlwVGV4dCgpOiIiO2UhPT10aGlzLl9sYXN0VG9vbHRpcFRleHQmJih0aGlzLl9sYXN0VG9vbHRpcFRleHQ9ZSx0aGlzLl9lbC5zZXRBdHRyaWJ1dGUoInRpdGxlIixlKSwiY3VzdG9tIj09PXRoaXMuX3Rvb2x0aXBUeXBlJiZ0aGlzLl9lbC5jbGFzc0xpc3QudG9nZ2xlKCJhcHBseS1jb21tb24tdG9vbHRpcCIsdGhpcy5fc2hvd1Rvb2x0aXApKX1fZ2V0UXVvdGVTZXNzaW9uSWQoKXtyZXR1cm5gJHt0aGlzLl9xdW90ZVNlc3Npb25QcmVmaXh9LiR7dGhpcy5fcXVvdGVTZXNzaW9uR1VJRH1gfX19LDMwNjkwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RhdGFNb2RlSW5kaWNhdG9yOigpPT5jfSk7dmFyIGksbj1vKDE4NTI3MSkscj0obyg4MjkxODApLG8oNDUwMjk1KSxvKDIwMjQ2MCkpOyFmdW5jdGlvbihlKXtlLkRlbGF5ZWQ9ImRlbGF5ZWQiLGUuRGVsYXllZFN0cmVhbWluZz0iZGVsYXllZF9zdHJlYW1pbmciLGUuRW5kT2ZEYXk9ImVuZG9mZGF5IixlLlNuYXBzaG90PSJzbmFwc2hvdCIsZS5SZWFsdGltZT0icmVhbHRpbWUiLGUuQ29ubmVjdGluZz0iY29ubmVjdGluZyIsZS5Mb2FkaW5nPSJsb2FkaW5nIixlLkludmFsaWQ9ImludmFsaWQiLGUuRm9yYmlkZGVuPSJmb3JiaWRkZW4iLGUuU3RyZWFtaW5nPSJzdHJlYW1pbmcifShpfHwoaT17fSkpO2NvbnN0IHM9e2Nvbm5lY3Rpbmc6InR2LWRhdGEtbW9kZS0tY29ubmVjdGluZyIsZGVsYXllZDoidHYtZGF0YS1tb2RlLS1kZWxheWVkIixkZWxheWVkX3N0cmVhbWluZzoidHYtZGF0YS1tb2RlLS1kZWxheWVkIixlbmRvZmRheToidHYtZGF0YS1tb2RlLS1lbmRvZmRheSIsZm9yYmlkZGVuOiJ0di1kYXRhLW1vZGUtLWZvcmJpZGRlbiIscmVhbHRpbWU6InR2LWRhdGEtbW9kZS0tcmVhbHRpbWUiLHNuYXBzaG90OiJ0di1kYXRhLW1vZGUtLXNuYXBzaG90Iixsb2FkaW5nOiJ0di1kYXRhLW1vZGUtLWxvYWRpbmciLHJlcGxheToidHYtZGF0YS1tb2RlLS1yZXBsYXkifTtmdW5jdGlvbiBhKCl7cmV0dXJue2Nvbm5lY3Rpbmc6bi50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9jb25uZWN0aW5nX2xldHRlciJ9LG8oODU5OTk0KSksZGVsYXllZDpuLnQobnVsbCx7CmNvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LG8oODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6bi50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxvKDM5NDUwMSkpLGVuZG9mZGF5Om4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxvKDU3MDkzOSkpLGZvcmJpZGRlbjpuLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxvKDM5NDkyMSkpLHJlYWx0aW1lOm4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0sbyg4NjY0NCkpLHNuYXBzaG90Om4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0sbygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTpuLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxvKDc1NjQ1NykpfX1jb25zdCBsPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgYyBleHRlbmRzIHIuQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KGUpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9c2V0TW9kZShlLHQpe3RoaXMudXBkYXRlKHt2YWx1ZXM6e3VwZGF0ZV9tb2RlOmUsdXBkYXRlX21vZGVfc2Vjb25kczp0fX0pfWhpZGUoKXt0aGlzLl9lbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpfXNob3coKXt0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpfWdldFRvb2x0aXBUZXh0KCl7bGV0IGU9IiI7Y29uc3QgdD10aGlzLmdldFZhbHVlKCk7aWYoIiI9PT10KXJldHVybiBlO3N3aXRjaCh0KXtjYXNlImRlbGF5ZWQiOmU9bi50KG51bGwsdm9pZCAwLG8oNzkwNTI0KSk7YnJlYWs7Y2FzZSJkZWxheWVkX3N0cmVhbWluZyI6ZT1uLnQobnVsbCx2b2lkIDAsbyg4MTQ2MSkpO2JyZWFrO2RlZmF1bHQ6ZT10aGlzLl9sYWJlbE1hcFt0XXx8ZX1yZXR1cm5bImRlbGF5ZWQiLCJkZWxheWVkX3N0cmVhbWluZyJdLmluY2x1ZGVzKHQpJiYoZT1lLmZvcm1hdCh7bnVtYmVyOlN0cmluZyhNYXRoLnJvdW5kKHRoaXMuX21vZGVJbnRlcnZhbC82MCkpfSkpLGV9X2luaXQoZT17fSl7Y29uc3QgdD1PYmplY3QuYXNzaWduKHt9LHtjbGFzc01hcDpzLGNsYXNzU3VmZml4OiIiLGRhdGE6e3ZhbHVlczp7dXBkYXRlX21vZGU6ImNvbm5lY3RpbmcifX0sbGFiZWxNYXA6e2Nvbm5lY3Rpbmc6bi50KG51bGwsdm9pZCAwLG8oMTk0MTk0KSksZGVsYXllZDpuLnQobnVsbCx2b2lkIDAsbygyMjk1MjUpKSxkZWxheWVkX3N0cmVhbWluZzpuLnQobnVsbCx2b2lkIDAsbygyMjk1MjUpKSxlbmRvZmRheTpuLnQobnVsbCx2b2lkIDAsbyg2MDE3NjQpKSxmb3JiaWRkZW46bi50KG51bGwsdm9pZCAwLG8oMzI4MzEzKSkscmVhbHRpbWU6bi50KG51bGwsdm9pZCAwLG8oODgzOTI4KSksc25hcHNob3Q6bi50KG51bGwsdm9pZCAwLG8oNTYyMzk1KSksbG9hZGluZzoiIixyZXBsYXk6bi50KG51bGwsdm9pZCAwLG8oOTc3MjcpKX0sbW9kZUludGVydmFsOjYwMCxzaG9ydDohMSxzaG9ydExhYmVsTWFwOmEoKSxzaG93VG9vbHRpcDohMCx0b29sdGlwVHlwZToiY3VzdG9tIn0sZSk7dGhpcy5fbW9kZUludGVydmFsPXQubW9kZUludGVydmFsfHw2MDAsdGhpcy5fc2hvcnRMYWJlbE1hcD10LnNob3J0TGFiZWxNYXB8fGEoKSxzdXBlci5faW5pdCh0KSx0aGlzLl9yZW5kZXIoKX1fZ2V0VmFsdWVGcm9tRGF0YShlKXtsZXQgdDtyZXR1cm4gdD12b2lkIDAhPT1lLnZhbHVlcyYmdm9pZCAwIT09ZS52YWx1ZXMudXBkYXRlX21vZGU/ZS52YWx1ZXMudXBkYXRlX21vZGU6dGhpcy5nZXRWYWx1ZSgpLGxbdF18fHR9X3VwZGF0ZVZhbHVlKGUsdCl7dm9pZCAwIT09ZS52YWx1ZXMmJnZvaWQgMCE9PWUudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMmJih0aGlzLl9tb2RlSW50ZXJ2YWw9ZS52YWx1ZXMudXBkYXRlX21vZGVfc2Vjb25kcyksc3VwZXIuX3VwZGF0ZVZhbHVlKGUsdCl9fX0sNjQ3NjE0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2ZsYWdVcmw6KCk9PmwsZ2V0TW9ja2VkRmxhZzooKT0+Y30pO3ZhciBpPW8oODEwNDEpLG49byg4NjIyMTMpLHI9byg3MTcxNDEpLHM9byg0NTgwNTkpO2NvbnN0IGE9e2VybDoiRVUiLHVrOiJHQiIsYml0Y29pbjoiQlRDIn07ZnVuY3Rpb24gbChlLHQsbz1uLkxvZ29TaXplLk1lZGl1bSl7cmV0dXJuIGU/KGUudG9Mb3dlckNhc2UoKWluIGEmJihlPWFbZV0pLCgwLG4uZ2V0TG9nb1VybFJlc29sdmVyKSgpLmdldENvdW50cnlGbGFnVXJsKGUudG9VcHBlckNhc2UoKSxvKSk6Yyh0KX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPT09aS5TdGRUaGVtZS5EYXJrP3I6c319LDEzNzg3OShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtjb3VudHJpZXM6KCk9PnIsZ2V0Q291bnRyeTooKT0+c30pO2NvbnN0IGk9L15bYS16XXsyfSQvO3ZhciBuPW8oMjU1NTE2KTtjb25zdCByPW4scz1lPT57cmV0dXJuIHQ9ZSxpLnRlc3QodCkmJm5bZV18fG51bGw7dmFyIHR9fSwxNjAyOTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLnIodCksby5kKHQse2Vudmlyb25tZW50OigpPT5uLGlzRGVidWc6KCk9PmEsaXNMb2NhbDooKT0+cixpc1Byb2Q6KCk9PnN9KTtjb25zdCBpPW5ldyBTZXQoWyJiYXR0bGUiLCJzdGFnaW5nIiwidGVzdCIsImxvY2FsIl0pO2Z1bmN0aW9uIG4oKXtjb25zdCBlPXNlbGYuZW52aXJvbm1lbnQ7cmV0dXJuIGZ1bmN0aW9uKGUpe2kuaGFzKGUpfHxjb25zb2xlLndhcm4oIkludmFsaWQgZW52aXJvbm1lbnQgIitlKX0oZSksZX1mdW5jdGlvbiByKCl7cmV0dXJuImxvY2FsIj09PW4oKX1mdW5jdGlvbiBzKCl7cmV0dXJuImJhdHRsZSI9PT1uKCl9ZnVuY3Rpb24gYSgpe3JldHVybiFzKCl9fSw3Mzc4NjMoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuCjtvLmQodCx7UHJvZHVjdEZlYXR1cmVzRW51bTooKT0+bixVTkxJTUlURURfRkVBVFVSRV9MSU1JVDooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuRElTQUJMRV9PTl9UUklBTD0iZGlzYWJsZV9vbl90cmlhbCIsZS5ESVNBQkxFX09OX0xJVEVfUExBTj0iZGlzYWJsZV9vbl9saXRlX3BsYW4iLGUuQ1VTVE9NX0lOVEVSVkFMUz0iQ1VTVE9NX0lOVEVSVkFMUyIsZS5DSEFSVF9TVE9SQUdFPSJDSEFSVF9TVE9SQUdFIixlLk1VTFRJUExFX0NIQVJUUz0iTVVMVElQTEVfQ0hBUlRTIixlLk1VTFRJUExFX1dBVENITElTVFM9Ik1VTFRJUExFX1dBVENITElTVFMiLGUuSU1QT1JUX1dBVENITElTVFM9IklNUE9SVF9XQVRDSExJU1RTIixlLkVYUE9SVF9XQVRDSExJU1RTPSJFWFBPUlRfV0FUQ0hMSVNUUyIsZS5XQVRDSExJU1RfU1lNQk9MUz0iV0FUQ0hMSVNUX1NZTUJPTFMiLGUuSU5ESUNBVE9SU19PTl9DSEFSVD0iSU5ESUNBVE9SU19PTl9DSEFSVCIsZS5TVFVEWV9PTl9TVFVEWT0iU1RVRFlfT05fU1RVRFkiLGUuVElDS19CWV9USUNLX1BVU0hfREFUQT0iVElDS19CWV9USUNLX1BVU0hfREFUQSIsZS5TRVJWRVJfU0lERV9BTEVSVFM9IlNFUlZFUl9TSURFX0FMRVJUUyIsZS5TRVJWRVJfU0lERV9BTEVSVFNfVEVDSE5JQ0FMPSJTRVJWRVJfU0lERV9BTEVSVFNfVEVDSE5JQ0FMIixlLlNFUlZFUl9TSURFX0FMRVJUU19XQVRDSExJU1Q9IlNFUlZFUl9TSURFX0FMRVJUU19XQVRDSExJU1QiLGUuQUxFUlRTX01VTFRJQ09ORElUSU9OUz0iQUxFUlRTX01VTFRJQ09ORElUSU9OUyIsZS5BTEVSVFNfT05fRUFSTklOR1M9IkFMRVJUU19PTl9FQVJOSU5HUyIsZS5BTEVSVFNfT05fRlVOREFNRU5UQUxfTUVUUklDUz0iQUxFUlRTX09OX0ZVTkRBTUVOVEFMX01FVFJJQ1MiLGUuUFVCTElTSF9JTlZJVEVfT05MWV9TQ1JJUFRTPSJQVUJMSVNIX0lOVklURV9PTkxZX1NDUklQVFMiLGUuUFVCTElTSF9QUk9URUNURURfU0NSSVBUUz0iUFVCTElTSF9QUk9URUNURURfU0NSSVBUUyIsZS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0g9IlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsZS5TQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIPSJTQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIIixlLlNDUkVFTkVSX0lOVEVSVkFMUz0iU0NSRUVORVJfSU5URVJWQUxTIixlLlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEE9IlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEEiLGUuU0NSRUVORVJfTkVXX1NIT1dfUkVTVFJJQ1RFRF9EQVRBPSJTQ1JFRU5FUl9ORVdfU0hPV19SRVNUUklDVEVEX0RBVEEiLGUuUElORV9TQ1JFRU5FUj0iUElORV9TQ1JFRU5FUiIsZS5TSU1VTFRBTkVPVVNfQ09OTkVDVElPTlM9IlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyIsZS5CQUNLRU5EX0NPTk5FQ1RJT05TPSJCQUNLRU5EX0NPTk5FQ1RJT05TIixlLlNUVURZX1RFTVBMQVRFUz0iU1RVRFlfVEVNUExBVEVTIixlLkNBTl9FRElUX1BVQkxJQ19DSEFUUz0iQ0FOX0VESVRfUFVCTElDX0NIQVRTIixlLk5PX1NQT05TT1JFRF9BRFM9Ik5PX1NQT05TT1JFRF9BRFMiLGUuSURDX0FWQUlMQUJMRV9ERUxBWT0iSURDX0FWQUlMQUJMRV9ERUxBWSIsZS5TVEFUVVM9IlNUQVRVUyIsZS5BTEVSVFNfTk9fRVhQSVJBVElPTj0iQUxFUlRTX05PX0VYUElSQVRJT04iLGUuTVVMVElGTEFHR0VEX1NZTUJPTFNfTElTVFM9Ik1VTFRJRkxBR0dFRF9TWU1CT0xTX0xJU1RTIixlLkJBUl9SRVBMQVlfSU5UUkFEQVk9IkJBUl9SRVBMQVlfSU5UUkFEQVkiLGUuQkFSX1JFUExBWV8xUz0iQkFSX1JFUExBWV8xUyIsZS5CQVJfUkVQTEFZXzFUPSJCQVJfUkVQTEFZXzFUIixlLlRWX1ZPTFVNRUJZUFJJQ0U9IlRWX1ZPTFVNRUJZUFJJQ0UiLGUuQUxFUlRTX1dFQkhPT0s9IkFMRVJUU19XRUJIT09LIixlLk1BUktFVF9EQVRBX0xJTUlUUz0iTUFSS0VUX0RBVEFfTElNSVRTIixlLkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlk9IkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlkiLGUuRVhQT1JUX0NIQVJUX0RBVEE9IkVYUE9SVF9DSEFSVF9EQVRBIixlLkVYUE9SVF9GSU5BTkNJQUxTX0RBVEE9IkVYUE9SVF9GSU5BTkNJQUxTX0RBVEEiLGUuQUxFUlRTX09OX1NFQ09ORFM9IkFMRVJUU19PTl9TRUNPTkRTIixlLlBFUk1BTkVOVF9TVFJFQU1fUkVDT1JEUz0iUEVSTUFORU5UX1NUUkVBTV9SRUNPUkRTIixlLklERUFfU09DSUFMX0xJTktTPSJJREVBX1NPQ0lBTF9MSU5LUyIsZS5FWFRFTkRFRF9TT0NJQUxfTElOS1M9IkVYVEVOREVEX1NPQ0lBTF9MSU5LUyIsZS5ERUVQX0hJU1RPUllfQkFDS1RFU1Q9IkRFRVBfSElTVE9SWV9CQUNLVEVTVCIsZS5CQUNLVEVTVElOR19FWFBPUlRfWExTWD0iQkFDS1RFU1RJTkdfRVhQT1JUX1hMU1giLGUuQkFDS1RFU1RJTkdfRVhQT1JUX0NTVj0iQkFDS1RFU1RJTkdfRVhQT1JUX0NTViIsZS5GVU5EQU1FTlRBTFNfRk9SRUNBU1Q9IkZVTkRBTUVOVEFMU19GT1JFQ0FTVCIsZS5CQUNLVEVTVElOR19FWFRFTkRFRF9NRVRSSUNTPSJCQUNLVEVTVElOR19FWFRFTkRFRF9NRVRSSUNTIixlLkJBUl9ERVRBTElaQVRJT049IkJBUl9ERVRBTElaQVRJT04iLGUuU0NSSVBUX0VYRUNVVElPTl9PTl9ISVNUT1JZX0JBUlM9IlNDUklQVF9FWEVDVVRJT05fT05fSElTVE9SWV9CQVJTIixlLkJBQ0tURVNUSU5HX0NIQVJUX0VYUEFORD0iQkFDS1RFU1RJTkdfQ0hBUlRfRVhQQU5EIixlLkhJU1RPUklDQUxfQkFSUz0iSElTVE9SSUNBTF9CQVJTIixlLktBR0lfUkVOS089IktBR0lfUkVOS08iLGUuSU5UUkFEQVlfU1BSRUFEPSJJTlRSQURBWV9TUFJFQUQiLGUuU0VDT05EU19JTlRFUlZBTFM9IlNFQ09ORFNfSU5URVJWQUxTIixlLk1VTFRJQ09MT1JfRkxBR0dFRF9TWU1CT0xTPSJNVUxUSUNPTE9SX0ZMQUdHRURfU1lNQk9MUyIsZS5JTlRSQURBWV9FWENIQU5HRT0iSU5UUkFEQVlfRVhDSEFOR0UiLGUuQ1VTVE9NX0NIQVRTPSJDVVNUT01fQ0hBVFMiLGUuVk9MVU1FX1BST0ZJTEU9IlZPTFVNRV9QUk9GSUxFIixlLlZPTFVNRV9DQU5ETEVTPSJWT0xVTUVfQ0FORExFUyIsZS5UUE9fUEVSSU9ESUM9IlRQT19QRVJJT0RJQyIsZS5UUE9fQ0hBUlRfU1RZTEU9IlRQT19DSEFSVF9TVFlMRSIsCmUuUFJJTUlUSVZFX0FMRVJUUz0iUFJJTUlUSVZFX0FMRVJUUyIsZS5DT01QTEVYX0FMRVJUUz0iQ09NUExFWF9BTEVSVFMiLGUuVFZfUFJPU1RVRElFUz0iVFZfUFJPU1RVRElFUyIsZS5DSEFSVF9QQVRURVJOUz0iQ0hBUlRfUEFUVEVSTlMiLGUuU01TXzJGQV9WRVJJRklDQVRJT049IlNNU18yRkFfVkVSSUZJQ0FUSU9OIixlLlNPQ0lBTF9BQ1RJVklUWT0iU09DSUFMX0FDVElWSVRZIixlLlRJQ0tfSU5URVJWQUxTPSJUSUNLX0lOVEVSVkFMUyIsZS5DVVNUT01fRk9STVVMQVM9IkNVU1RPTV9GT1JNVUxBUyIsZS5DVVNUT01fUkFOR0VfQkFSUz0iQ1VTVE9NX1JBTkdFX0JBUlMiLGUuQlVZX1BST19EQVRBPSJCVVlfUFJPX0RBVEEiLGUuRkFTVEVTVF9EQVRBX0ZMT1c9IkZBU1RFU1RfREFUQV9GTE9XIixlLkZJUlNUX1BSSU9SSVRZX1NVUFBPUlQ9IkZJUlNUX1BSSU9SSVRZX1NVUFBPUlQiLGUuRlVOREFNRU5UQUxTX09OX0NIQVJUPSJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiLGUuRlVOREFNRU5UQUxfR1JBUEhTX0xBUkdFX1RJTUVfUkFOR0U9IkZVTkRBTUVOVEFMX0dSQVBIU19MQVJHRV9USU1FX1JBTkdFIixlLlZJREVPX0lERUFTX0xFTkdUSD0iVklERU9fSURFQVNfTEVOR1RIIixlLlZPTFVNRV9GT09UUFJJTlQ9IlZPTFVNRV9GT09UUFJJTlQiLGUuU0VTU0lPTl9WT0xVTUVfUFJPRklMRT0iU0VTU0lPTl9WT0xVTUVfUFJPRklMRSIsZS5DSEFUX0FTU0lTVEFOVD0iQ0hBVF9BU1NJU1RBTlQiLGUuUEVSU09OQUxfU1VQUE9SVD0iUEVSU09OQUxfU1VQUE9SVCIsZS5TSE9XX0JPTkRTX1JFU1RSSUNURURfREFUQT0iU0hPV19CT05EU19SRVNUUklDVEVEX0RBVEEiLGUuU0hPV19FVEZfSE9MRElOR1NfREFUQT0iU0hPV19FVEZfSE9MRElOR1NfREFUQSIsZS5DUkVBVEVfTU9SRV9QT1JURk9MSU9TPSJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIixlLlBPUlRGT0xJT19UUkFOU0FDVElPTlM9IlBPUlRGT0xJT19UUkFOU0FDVElPTlMiLGUuUE9SVEZPTElPX0hPTERJTkdTPSJQT1JURk9MSU9fSE9MRElOR1MiLGUuUE9SVEZPTElPX0RBVEFfTElNSVQ9IlBPUlRGT0xJT19EQVRBX0xJTUlUIixlLlNPQ0lBTF9UUlVTVEVEX1VTRVI9IlNPQ0lBTF9UUlVTVEVEX1VTRVIiLGUuQUNDRVNTX0FDUk9TU19ERVZJQ0VTPSJBQ0NFU1NfQUNST1NTX0RFVklDRVMiLGUuRk9MTE9XRVJTX09OTFlfTUlORFM9IkZPTExPV0VSU19PTkxZX01JTkRTIixlLkZPUkVDQVNUX0VTVElNQVRFX0RBVEE9IkZPUkVDQVNUX0VTVElNQVRFX0RBVEEiLGUuRFJBV0lOR1M9IkRSQVdJTkdTIn0oaXx8KGk9e30pKSxmdW5jdGlvbihlKXtlLkNBTl9FRElUX1BVQkxJQ19DSEFUUz0iQ0FOX0VESVRfUFVCTElDX0NIQVRTIixlLk5PX1NQT05TT1JFRF9BRFM9Ik5PX1NQT05TT1JFRF9BRFMiLGUuQUxFUlRTX05PX0VYUElSQVRJT049IkFMRVJUU19OT19FWFBJUkFUSU9OIixlLkFMRVJUU19XRUJIT09LPSJBTEVSVFNfV0VCSE9PSyIsZS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0g9IlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsZS5TQ1JFRU5FUl9JTlRFUlZBTFM9IlNDUkVFTkVSX0lOVEVSVkFMUyIsZS5TT0NJQUxfQUNUSVZJVFk9IlNPQ0lBTF9BQ1RJVklUWSJ9KG58fChuPXt9KSk7Y29uc3Qgcj05OTk5OX0sMjI1Mjk4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2xpbmtpbmc6KCk9PlR9KTt2YXIgaT1vKDU0Nzg1MSksbj1vKDEzODYzOCkscj1vKDIyMTA2MSkscz0obyg5MzAyMzEpLG8oMjMyMzY0KSksYT1vKDI1NDY3MyksbD1vKDEyODk5OCksYz1vKDk1MjkwMCksZD1vKDI0MTk1Nik7dmFyIGg9byg5MzA1NjYpLHU9byg2MzE2MzQpLF89byg3OTgzOCkscD1vKDc3ODk0NiksbT1vKDc3NDUwNyksZz1vKDM2MjIzOSk7dmFyIHY9bygzODMzNTEpLGY9byg3MDE1MDYpLHk9byg2ODI3NzkpLGI9bygyMDkzOSk7Y29uc3QgUz0oMCxyLmdldExvZ2dlcikoIkxpbmtpbmciKTt2YXIgdyxDOyFmdW5jdGlvbihlKXtlW2UuTm90Qm91bmQ9MF09Ik5vdEJvdW5kIixlW2UuQm91bmRUb1dpZGdldD0xXT0iQm91bmRUb1dpZGdldCIsZVtlLkJvdW5kVG9Nb2RlbD0yXT0iQm91bmRUb01vZGVsIn0od3x8KHc9e30pKSxmdW5jdGlvbihlKXtlW2UuU3ltYm9sPTBdPSJTeW1ib2wiLGVbZS5SZXNvbHV0aW9uPTFdPSJSZXNvbHV0aW9uIn0oQ3x8KEM9e30pKTtjbGFzcyBre2NvbnN0cnVjdG9yKGUsdCxvKXt0aGlzLndhdGNoZWRTeW1ib2xzPW5ldyBzLldhdGNoZWRWYWx1ZShbXSksdGhpcy53YXRjaGVkU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLnNlcmllc1Nob3J0U3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLnByb1N5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5lbnN1cmVkUHJvU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWRJbnRlcnZhbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy53YXRjaGVkSW50cmFkYXk9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFNlY29uZHM9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFRpY2tzPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbj1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy53YXRjaGVkUmFuZ2U9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcz1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5zeW1ib2xOYW1lc0xpc3Q9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj1udWxsLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTAsdGhpcy5fYWN0aXZlQ2hhcnRXaWRnZXQ9bnVsbCx0aGlzLl9saW5raW5nR3JvdXBDaGFydHM9bnVsbCx0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0PW51bGwsdGhpcy5fd2F0Y2hlZFN5bWJvbExpc3RlbmVyQm91bmQ9dGhpcy5fd2F0Y2hlZFN5bWJvbExpc3RlbmVyLmJpbmQodGhpcyksCnRoaXMuX3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyQm91bmQ9dGhpcy5fd2F0Y2hlZEludGVydmFsTGlzdGVuZXIuYmluZCh0aGlzKSx0aGlzLl9zZXRHcm91cFN5bWJvbENhbmNlbGxhdGlvblRva2VuPXtjYW5jZWxsZWQ6ITF9LHRoaXMuX211dGVkPSExLHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldD0oKT0+e2NvbnN0IGU9dGhpcy5fY2hhcnRUb0JpbmQoKTtlIT09dGhpcy5fYm91bmRDaGFydFdpZGdldCYmKG51bGw9PT1lP3RoaXMudW5iaW5kRnJvbUNoYXJ0V2lkZ2V0KCk6dGhpcy5iaW5kVG9DaGFydFdpZGdldChlKSl9LHRoaXMuX3VwZGF0ZUFsbEdyb3VwQ2hhcnRXaWRnZXRzPSgpPT57dGhpcy5fZGVzdHJveVN5bWJvbEludGVydmFsUHJvcGVydHlTdWJzY3JpcHRpb25zPy4oKTtjb25zdCBlPSgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzKS52YWx1ZSgpLHQ9W10sbz1bXTtmb3IoY29uc3QgaSBvZiBlKXtjb25zdCBlPWkuc3ltYm9sV1YoKS5zcGF3bigpLG49aS5yZXNvbHV0aW9uV1YoKS5zcGF3bigpO2Uuc3Vic2NyaWJlKHRoaXMuX3VwZGF0ZVN5bWJvbEJ5UHJvcGVydHkuYmluZCh0aGlzLGkpKSxuLnN1YnNjcmliZSh0aGlzLl91cGRhdGVJbnRlcnZhbEJ5UHJvcGVydHkuYmluZCh0aGlzLGkpKSx0LnB1c2goZSksby5wdXNoKG4pfXRoaXMuX2Rlc3Ryb3lTeW1ib2xJbnRlcnZhbFByb3BlcnR5U3Vic2NyaXB0aW9ucz0oKT0+e3QuZm9yRWFjaCgoZT0+ZS5kZXN0cm95KCkpKSxvLmZvckVhY2goKGU9PmUuZGVzdHJveSgpKSksdGhpcy5fZGVzdHJveVN5bWJvbEludGVydmFsUHJvcGVydHlTdWJzY3JpcHRpb25zPXZvaWQgMH07Y29uc3QgaT10aGlzLndhdGNoZWRTeW1ib2wudmFsdWUoKTtlLmxlbmd0aD4xJiZ0aGlzLl9uZWVkQXBwbHlTeW1ib2woaSkmJiF0aGlzLl9tdXRlZCYmdGhpcy5fc2V0R3JvdXBTeW1ib2woaSk7Y29uc3Qgcj10aGlzLndhdGNoZWRJbnRlcnZhbC52YWx1ZSgpO2UubGVuZ3RoPjEmJnRoaXMuX25lZWRBcHBseUludGVydmFsKHIpJiYhdGhpcy5fbXV0ZWQmJnRoaXMuX3NldEdyb3VwSW50ZXJ2YWwociksdGhpcy51cGRhdGVCb3VuZENoYXJ0V2lkZ2V0KCl9LHRoaXMuX2dyb3VwSW5kZXg9ZTtjb25zdCBpPShlLHQpPT57ZS5zdWJzY3JpYmUoKGU9PntvKCk9PT10aGlzJiZ0LnNldFZhbHVlKGUpfSkse2NhbGxXaXRoTGFzdDohMH0pfTtpKHRoaXMud2F0Y2hlZFN5bWJvbHMsdC53YXRjaGVkU3ltYm9scyksaSh0aGlzLndhdGNoZWRTeW1ib2wsdC53YXRjaGVkU3ltYm9sKSxpKHRoaXMuc2VyaWVzU2hvcnRTeW1ib2wsdC5zZXJpZXNTaG9ydFN5bWJvbCksaSh0aGlzLnByb1N5bWJvbCx0LnByb1N5bWJvbCksaSh0aGlzLmVuc3VyZWRQcm9TeW1ib2wsdC5lbnN1cmVkUHJvU3ltYm9sKSxpKHRoaXMud2F0Y2hlZEludGVydmFsLHQud2F0Y2hlZEludGVydmFsKSxpKHRoaXMud2F0Y2hlZEludHJhZGF5LHQud2F0Y2hlZEludHJhZGF5KSxpKHRoaXMud2F0Y2hlZFNlY29uZHMsdC53YXRjaGVkU2Vjb25kcyksaSh0aGlzLndhdGNoZWRUaWNrcyx0LndhdGNoZWRUaWNrcyksaSh0aGlzLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbix0LndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbiksaSh0aGlzLndhdGNoZWRSYW5nZSx0LndhdGNoZWRSYW5nZSksaSh0aGlzLndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucyx0LndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucyksaSh0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcyx0LndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcyksaSh0aGlzLnN5bWJvbE5hbWVzTGlzdCx0LnN5bWJvbE5hbWVzTGlzdCksdGhpcy53YXRjaGVkU3ltYm9sLnN1YnNjcmliZSgoZT0+e3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXQmJnRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQuaGFzTW9kZWwoKSYmdGhpcy5tYWluU2VyaWVzKCkuc3ltYm9sU2FtZUFzQ3VycmVudChlKXx8dGhpcy5wcm9TeW1ib2wuc2V0VmFsdWUoZSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSl9bXV0ZShlKXt0aGlzLl9tdXRlZD1lfWJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbihlKXt0aGlzLnVuYmluZEZyb21DaGFydFdpZGdldENvbGxlY3Rpb24oKSx0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb249ZSx0aGlzLl9hY3RpdmVDaGFydFdpZGdldD1lLmFjdGl2ZUNoYXJ0V2lkZ2V0LnNwYXduKCksdGhpcy5fYWN0aXZlQ2hhcnRXaWRnZXQuc3Vic2NyaWJlKHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCksdGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzPWUubGlua2luZ0dyb3Vwc0NoYXJ0cyh0aGlzLl9ncm91cEluZGV4KS5zcGF3bigpLHRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cy5zdWJzY3JpYmUodGhpcy5fdXBkYXRlQWxsR3JvdXBDaGFydFdpZGdldHMpLHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCgpLHRoaXMuX3VwZGF0ZUFsbEdyb3VwQ2hhcnRXaWRnZXRzKCk7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PSgwLGMuY29tYmluZSkoKCgpPT5lLmdldEFsbCgpLmZpbHRlcigoZT0+ZS5pc1Zpc2libGUoKSYmZS5oYXNNb2RlbCgpKSkubWFwKChlPT4oMCxkLmNyZWF0ZVdWRnJvbUdldHRlckFuZFN1YnNjcmlwdGlvbikoKCgpPT5lLm1vZGVsKCkubWFpblNlcmllcygpLnN5bWJvbCgpKSxlLm1vZGVsKCkubWFpblNlcmllcygpLnN5bWJvbFJlc29sdmVkKCkpLm93bmVyc2hpcCgpKSkpLGUuY2hhcnRNb2RlbHMoKS53ZWFrUmVmZXJlbmNlKCksZS5sYXlvdXQud2Vha1JlZmVyZW5jZSgpKTtyZXR1cm4oMCxjLmFjY3VtdWxhdGUpKChlPT5lKSx0Lm93bmVyc2hpcCgpKX0oZSk7dC5zdWJzY3JpYmUoKGU9Pnt0aGlzLndhdGNoZWRTeW1ib2xzLnNldFZhbHVlKGUpfSkpLHRoaXMud2F0Y2hlZFN5bWJvbHMuc2V0VmFsdWUodC52YWx1ZSgpKX11bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCl7dGhpcy51bmJpbmRGcm9tQ2hhcnRXaWRnZXQoKSx0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb249bnVsbCx0aGlzLl9hY3RpdmVDaGFydFdpZGdldD8uZGVzdHJveSgpLHRoaXMuX2FjdGl2ZUNoYXJ0V2lkZ2V0PW51bGwsCnRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cz8uZGVzdHJveSgpLHRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cz1udWxsLHRoaXMuX2Rlc3Ryb3lTeW1ib2xJbnRlcnZhbFByb3BlcnR5U3Vic2NyaXB0aW9ucz8uKCl9YmluZFRvQ2hhcnRXaWRnZXQoZSl7aWYodGhpcy51bmJpbmRGcm9tQ2hhcnRXaWRnZXQoKSx0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0PWUsZS5oYXNNb2RlbCgpKXJldHVybiB2b2lkIHRoaXMuX29uQ2hhcnRNb2RlbENyZWF0ZWQoZS5tb2RlbCgpKTtlLm1vZGVsQ3JlYXRlZCgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uQ2hhcnRNb2RlbENyZWF0ZWQsITApLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTE7Y29uc3QgdD1lLm1haW5TZXJpZXNQcm9wZXJ0aWVzKCkuY2hpbGRzKCk7dGhpcy53YXRjaGVkU3ltYm9sLnNldFZhbHVlKHQuc3ltYm9sLnZhbHVlKCkpLHRoaXMud2F0Y2hlZEludGVydmFsLnNldFZhbHVlKHQuaW50ZXJ2YWwudmFsdWUoKSksdGhpcy5fYm91bmRDaGFydFdpZGdldC5saW5raW5nR3JvdXBJbmRleCgpLnN1YnNjcmliZSh0aGlzLnVwZGF0ZUJvdW5kQ2hhcnRXaWRnZXQpfXVuYmluZEZyb21DaGFydFdpZGdldCgpe2NvbnN0IGU9dGhpcy5fYm91bmRDaGFydFdpZGdldDtpZihudWxsIT09ZSl7c3dpdGNoKHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlKXtjYXNlIDE6ZS5tb2RlbENyZWF0ZWQoKS51bnN1YnNjcmliZUFsbCh0aGlzKTticmVhaztjYXNlIDI6dGhpcy53YXRjaGVkU3ltYm9sLnVuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRTeW1ib2xMaXN0ZW5lckJvdW5kKTtjb25zdCB0PXRoaXMubWFpblNlcmllcygpLmRhdGFFdmVudHMoKTt0LnN5bWJvbFJlc29sdmVkKCkudW5zdWJzY3JpYmVBbGwodGhpcyksdC5zeW1ib2xFcnJvcigpLnVuc3Vic2NyaWJlQWxsKHRoaXMpLHRoaXMubWFpblNlcmllcygpLm9uSW50ZXJ2YWxDaGFuZ2VkKCkudW5zdWJzY3JpYmVBbGwodGhpcyksdGhpcy53YXRjaGVkSW50ZXJ2YWwudW5zdWJzY3JpYmUodGhpcy5fd2F0Y2hlZEludGVydmFsTGlzdGVuZXJCb3VuZCksZGVsZXRlIHRoaXMud2F0Y2hlZFN5bWJvbC53cml0ZUxvY2t9ZS5saW5raW5nR3JvdXBJbmRleCgpLnVuc3Vic2NyaWJlKHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCksdGhpcy5fYm91bmRDaGFydFdpZGdldD1udWxsLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTB9fWJvdW5kQ2hhcnRXaWRnZXQoKXtyZXR1cm4gdGhpcy5fYm91bmRDaGFydFdpZGdldH1tYWluU2VyaWVzKCl7aWYoIXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpdGhyb3cgbmV3IEVycm9yKCJDaGFydFdpZGdldCBpcyB1bmRlZmluZWQiKTtyZXR1cm4gdGhpcy5fYm91bmRDaGFydFdpZGdldC5tb2RlbCgpLm1haW5TZXJpZXMoKX1fd2F0Y2hlZFN5bWJvbExpc3RlbmVyKGUpe3RoaXMuX25lZWRBcHBseVN5bWJvbChlKSYmIXRoaXMuX211dGVkJiZ0aGlzLl9zZXRHcm91cFN5bWJvbChlKX1fdXBkYXRlU3ltYm9sQnlQcm9wZXJ0eShlLHQpe2NvbnN0IG89dGhpcy5fc3ltYm9sTG9jaygpO28mJnRoaXMuX25lZWRBcHBseVN5bWJvbCh0KSYmIXRoaXMuX211dGVkJiZ0aGlzLl9zZXRHcm91cFN5bWJvbCh0KSwob3x8ZT09PXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpJiZ0aGlzLndhdGNoZWRTeW1ib2wuc2V0VmFsdWUodCl9X3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyKGUpe2NvbnN0IHQ9YS5JbnRlcnZhbC5ub3JtYWxpemUoZSk7dCYmdGhpcy5fbmVlZEFwcGx5SW50ZXJ2YWwodCkmJiF0aGlzLl9tdXRlZCYmdGhpcy5fc2V0R3JvdXBJbnRlcnZhbCh0KX1fdXBkYXRlSW50ZXJ2YWxCeVByb3BlcnR5KGUsdCl7Y29uc3Qgbz10aGlzLl9pbnRlcnZhbExvY2soKSxpPWEuSW50ZXJ2YWwubm9ybWFsaXplKHQpO28mJmkmJnRoaXMuX25lZWRBcHBseUludGVydmFsKGkpJiYhdGhpcy5fbXV0ZWQmJnRoaXMuX3NldEdyb3VwSW50ZXJ2YWwoaSksKG98fGU9PT10aGlzLl9ib3VuZENoYXJ0V2lkZ2V0KSYmdGhpcy53YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUoaT8/dCl9X3VwZGF0ZVNlcmllc1N5bWJvbEluZm8oKXt0aGlzLnNlcmllc1Nob3J0U3ltYm9sLnNldFZhbHVlKCgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fYm91bmRDaGFydFdpZGdldCkuZ2V0U3ltYm9sKCEwKSk7Y29uc3QgZT10aGlzLm1haW5TZXJpZXMoKS5zeW1ib2xJbmZvKCk7aWYoZSl7Y29uc3QgdD1lLnByb19uYW1lfHwhMTt0aGlzLnByb1N5bWJvbC5zZXRWYWx1ZSh0fHx0aGlzLndhdGNoZWRTeW1ib2wudmFsdWUoKSksdGhpcy5lbnN1cmVkUHJvU3ltYm9sLnNldFZhbHVlKHRoaXMucHJvU3ltYm9sLnZhbHVlKCkpLGUuYWxpYXNlcyYmdGhpcy5zeW1ib2xOYW1lc0xpc3Quc2V0VmFsdWUoZS5hbGlhc2VzKTtsZXQgbz0oMCxmLmFsbENoYXJ0U3R5bGVzKSgpOygoMCxsLmlzQ2xvc2VCYXNlZFN5bWJvbCkoZSl8fHRoaXMubWFpblNlcmllcygpLmludGVydmFsT2JqKCkudmFsdWUoKS5pczFUaWNrKCkpJiYobz1vLmZpbHRlcigoZT0+KDAsbC5pc1NpbmdsZVZhbHVlQmFzZWRTdHlsZSkoZSkpKSksImhsYyI9PT1lLnZpc2libGVfcGxvdHNfc2V0JiYobz1vLmZpbHRlcigoZT0+KDAsbC5pc0hMQ0Jhc2VkU3R5bGUpKGUpfHwoMCxsLmlzU2luZ2xlVmFsdWVCYXNlZFN0eWxlKShlKSkpKSx0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy5zZXRWYWx1ZShvKSx0aGlzLndhdGNoZWRJbnRyYWRheS5zZXRWYWx1ZSghIWUuaGFzX2ludHJhZGF5KSx0aGlzLndhdGNoZWRTZWNvbmRzLnNldFZhbHVlKCEhZS5oYXNfc2Vjb25kcyksdGhpcy53YXRjaGVkVGlja3Muc2V0VmFsdWUoISgwLGwuaXNDbG9zZUJhc2VkU3ltYm9sKShlKSYmISFlWyJpcy10aWNrYmFycy1hdmFpbGFibGUiXSksdGhpcy53YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoISgwLGwuaXNDbG9zZUJhc2VkU3ltYm9sKShlKSk7Y29uc3QgaT1lLmRhdGFfZnJlcXVlbmN5P2UuZGF0YV9mcmVxdWVuY3k6dm9pZCAwO3RoaXMud2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uLnNldFZhbHVlKGkpfWVsc2UgdGhpcy53YXRjaGVkSW50cmFkYXkuc2V0VmFsdWUoITEpLAp0aGlzLndhdGNoZWRTZWNvbmRzLnNldFZhbHVlKCExKSx0aGlzLndhdGNoZWRUaWNrcy5zZXRWYWx1ZSghMSksdGhpcy53YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoITEpLHRoaXMubWFpblNlcmllcygpLmlzRmFpbGVkKCkmJnRoaXMuZW5zdXJlZFByb1N5bWJvbC5zZXRWYWx1ZSh0aGlzLnByb1N5bWJvbC52YWx1ZSgpKX1fb25DaGFydE1vZGVsQ3JlYXRlZChlKXtpZighdGhpcy5fYm91bmRDaGFydFdpZGdldCl0aHJvdyBuZXcgRXJyb3IoIkNoYXJ0V2lkZ2V0IGlzIHVuZGVmaW5lZCIpO3RoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTIsdGhpcy53YXRjaGVkU3ltYm9sLnNldFZhbHVlKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQuc3ltYm9sV1YoKS52YWx1ZSgpKSx0aGlzLndhdGNoZWRTeW1ib2wuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRTeW1ib2xMaXN0ZW5lckJvdW5kKTtjb25zdCB0PWUubWFpblNlcmllcygpLmRhdGFFdmVudHMoKTt0LnN5bWJvbFJlc29sdmVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbyksdC5zeW1ib2xFcnJvcigpLnN1YnNjcmliZSh0aGlzLHRoaXMuX3VwZGF0ZVNlcmllc1N5bWJvbEluZm8pLGUubWFpblNlcmllcygpLm9uSW50ZXJ2YWxDaGFuZ2VkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbyksdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbygpLHRoaXMud2F0Y2hlZEludGVydmFsLnNldFZhbHVlKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVzb2x1dGlvbldWKCkudmFsdWUoKSksdGhpcy53YXRjaGVkSW50ZXJ2YWwuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyQm91bmQpLHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVhZE9ubHkoKSYmKHRoaXMud2F0Y2hlZFN5bWJvbC53cml0ZUxvY2s9ITApfV9jaGFydFRvQmluZCgpe2NvbnN0IGU9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uO3JldHVybiBudWxsPT09ZT9udWxsOmUuYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKS5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCk9PT10aGlzLl9ncm91cEluZGV4P2UuYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKTpudWxsIT09dGhpcy5fYm91bmRDaGFydFdpZGdldCYmdGhpcy5fYm91bmRDaGFydFdpZGdldC5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCk9PT10aGlzLl9ncm91cEluZGV4P3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXQ6ZS5nZXRBbGwoKS5maW5kKChlPT5lLmxpbmtpbmdHcm91cEluZGV4KCkudmFsdWUoKT09PXRoaXMuX2dyb3VwSW5kZXgpKT8/bnVsbH1fc3ltYm9sTG9jaygpe3JldHVybiEhdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPy5sb2NrLnN5bWJvbC52YWx1ZSgpfV9pbnRlcnZhbExvY2soKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5pbnRlcnZhbC52YWx1ZSgpfV9jaGFydHNGb3JMb2NrKGUpe3JldHVybigwPT09ZT90aGlzLl9zeW1ib2xMb2NrKCk6dGhpcy5faW50ZXJ2YWxMb2NrKCkpPygwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzKS52YWx1ZSgpOnRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQ/W3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXRdOltdfV9zZXRHcm91cFN5bWJvbChlKXt0aGlzLm11dGUoITApLHRoaXMuX3NldEdyb3VwU3ltYm9sQ2FuY2VsbGF0aW9uVG9rZW4uY2FuY2VsbGVkPSEwO2NvbnN0IHQ9dGhpcy5fc2V0R3JvdXBTeW1ib2xDYW5jZWxsYXRpb25Ub2tlbj17Y2FuY2VsbGVkOiExfTsoMCxuLmVuc3VyZU5vdE51bGwpKHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbikuc2V0U3ltYm9sKGUsdGhpcy5fZ3JvdXBJbmRleCwoMCxuLmVuc3VyZU5vdE51bGwpKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpKS5maW5hbGx5KCgoKT0+e2lmKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQmJiF0LmNhbmNlbGxlZCl7Y29uc3QgdD10aGlzLl9ib3VuZENoYXJ0V2lkZ2V0Lm1vZGVsKCkubWFpblNlcmllcygpO3Quc3ltYm9sU2FtZUFzQ3VycmVudChlKXx8KHRoaXMud2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZSh0LnN5bWJvbCgpKSx0aGlzLnByb1N5bWJvbC5zZXRWYWx1ZSh0LnByb1N5bWJvbCgpKSl9fSkpLHRoaXMubXV0ZSghMSl9X25lZWRBcHBseVN5bWJvbChlKXtjb25zdCB0PXRoaXMuX2NoYXJ0c0ZvckxvY2soMCksbz10LmZpbmQoKHQ9PnQuaGFzTW9kZWwoKSYmdC5tb2RlbCgpLm1haW5TZXJpZXMoKS5zeW1ib2xJbmZvKCkmJnQubW9kZWwoKS5tYWluU2VyaWVzKCkuc3ltYm9sU2FtZUFzUmVzb2x2ZWQoZSkpKTtpZihvKXtjb25zdCBlPW8ubW9kZWwoKS5tYWluU2VyaWVzKCk7aWYodC5ldmVyeSgodD0+ZS5zeW1ib2xTYW1lQXNSZXNvbHZlZCh0LnN5bWJvbFdWKCkudmFsdWUoKSkpKSlyZXR1cm4hMX1yZXR1cm4gdC5zb21lKCh0PT50LnN5bWJvbFdWKCkudmFsdWUoKSE9PWUpKX1fc2V0R3JvdXBJbnRlcnZhbChlKXt0aGlzLm11dGUoITApLCgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uKS5zZXRSZXNvbHV0aW9uKGUsdGhpcy5fZ3JvdXBJbmRleCkuZmluYWxseSgoKCk9PntpZih0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0KXtjb25zdCB0PXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVzb2x1dGlvbldWKCkudmFsdWUoKTthLkludGVydmFsLmlzRXF1YWwodCxlKXx8dGhpcy53YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUodCl9fSkpLHRoaXMubXV0ZSghMSl9X25lZWRBcHBseUludGVydmFsKGUpe3JldHVybiB0aGlzLl9jaGFydHNGb3JMb2NrKDEpLnNvbWUoKHQ9PiFhLkludGVydmFsLmlzRXF1YWwodC5yZXNvbHV0aW9uV1YoKS52YWx1ZSgpLGUpKSl9fWNvbnN0IFQ9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5fd2F0Y2hlZFN5bWJvbHM9bmV3IHMuV2F0Y2hlZFZhbHVlKFtdKSx0aGlzLl93YXRjaGVkU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl9zZXJpZXNTaG9ydFN5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fcHJvU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSwKdGhpcy5fZW5zdXJlZFByb1N5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fd2F0Y2hlZEludGVydmFsPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkSW50cmFkYXk9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWRTZWNvbmRzPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkVGlja3M9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbj1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fd2F0Y2hlZFJhbmdlPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkU3VwcG9ydGVkUmVzb2x1dGlvbnM9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcz1uZXcgcy5XYXRjaGVkVmFsdWUoW10pLHRoaXMuX3N5bWJvbE5hbWVzTGlzdD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPW51bGwsdGhpcy5fb25TeW1ib2xMaW5rQm91bmQ9dGhpcy5fb25TeW1ib2xMaW5rLmJpbmQodGhpcyksdGhpcy5fc2VhcmNoQ2hhcnRzPW51bGwsdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD1udWxsLHRoaXMuX3NlbGZFbWl0PSExLHRoaXMuX3ByZXZlbnRGZWVkQnlTeW1ib2w9ITEsdGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyPTAsdGhpcy5fbGlua2luZ0dyb3Vwcz1uZXcgTWFwLHRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXg9bnVsbCx0aGlzLl91cGRhdGVMaW5raW5nR3JvdXBzPSgpPT57KDAsbi5lbnN1cmVOb3ROdWxsKSh0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb24pLmFsbExpbmtpbmdHcm91cHMoKS52YWx1ZSgpLmZvckVhY2goKGU9PnRoaXMuX2xpbmtpbmdHcm91cChlKSkpLHRoaXMuX2xpbmtpbmdHcm91cHMuZm9yRWFjaCgoZT0+ZS51cGRhdGVCb3VuZENoYXJ0V2lkZ2V0KCkpKX0sdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnNldFZhbHVlKHRoaXMuX2xpbmtpbmdHcm91cChudWxsKSk7Y29uc3QgZT0oZSx0KT0+e2Uuc3Vic2NyaWJlKChlPT50KCkuc2V0VmFsdWUoZSkpLHtjYWxsV2l0aExhc3Q6ITB9KX07ZSh0aGlzLl93YXRjaGVkU3ltYm9scywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRTeW1ib2xzKSksZSh0aGlzLl93YXRjaGVkU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFN5bWJvbCkpLGUodGhpcy5fc2VyaWVzU2hvcnRTeW1ib2wsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS5zZXJpZXNTaG9ydFN5bWJvbCkpLGUodGhpcy5fcHJvU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkucHJvU3ltYm9sKSksZSh0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkuZW5zdXJlZFByb1N5bWJvbCkpLGUodGhpcy5fd2F0Y2hlZEludGVydmFsLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZEludGVydmFsKSksZSh0aGlzLl93YXRjaGVkSW50cmFkYXksKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS53YXRjaGVkSW50cmFkYXkpKSxlKHRoaXMuX3dhdGNoZWRTZWNvbmRzLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFNlY29uZHMpKSxlKHRoaXMuX3dhdGNoZWRUaWNrcywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRUaWNrcykpLGUodGhpcy5fd2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uKSksZSh0aGlzLl93YXRjaGVkUmFuZ2UsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS53YXRjaGVkUmFuZ2UpKSxlKHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucykpLGUodGhpcy5fd2F0Y2hlZFN1cHBvcnRlZENoYXJ0U3R5bGVzLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFN1cHBvcnRlZENoYXJ0U3R5bGVzKSksZSh0aGlzLl9zeW1ib2xOYW1lc0xpc3QsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS5zeW1ib2xOYW1lc0xpc3QpKTtjb25zdCB0PWU9Pnt0aGlzLl93YXRjaGVkU3ltYm9sLnNldFZhbHVlKGUud2F0Y2hlZFN5bWJvbC52YWx1ZSgpKSx0aGlzLl9zZXJpZXNTaG9ydFN5bWJvbC5zZXRWYWx1ZShlLnNlcmllc1Nob3J0U3ltYm9sLnZhbHVlKCkpLHRoaXMuX3Byb1N5bWJvbC5zZXRWYWx1ZShlLnByb1N5bWJvbC52YWx1ZSgpKSx0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLnNldFZhbHVlKGUuZW5zdXJlZFByb1N5bWJvbC52YWx1ZSgpKSx0aGlzLl93YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUoZS53YXRjaGVkSW50ZXJ2YWwudmFsdWUoKSksdGhpcy5fd2F0Y2hlZEludHJhZGF5LnNldFZhbHVlKGUud2F0Y2hlZEludHJhZGF5LnZhbHVlKCkpLHRoaXMuX3dhdGNoZWRTZWNvbmRzLnNldFZhbHVlKGUud2F0Y2hlZFNlY29uZHMudmFsdWUoKSksdGhpcy5fd2F0Y2hlZFRpY2tzLnNldFZhbHVlKGUud2F0Y2hlZFRpY2tzLnZhbHVlKCkpLHRoaXMuX3dhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbi5zZXRWYWx1ZShlLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbi52YWx1ZSgpKSx0aGlzLl93YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoZS53YXRjaGVkUmFuZ2UudmFsdWUoKSksdGhpcy5fd2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLnNldFZhbHVlKGUud2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLnZhbHVlKCkpLHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy5zZXRWYWx1ZShlLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy52YWx1ZSgpKSwKdGhpcy5fc3ltYm9sTmFtZXNMaXN0LnNldFZhbHVlKGUuc3ltYm9sTmFtZXNMaXN0LnZhbHVlKCkpfTt0aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAuc3Vic2NyaWJlKHQpLHQodGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkpLCgwLGIuc2V0TXV0ZUxpbmtpbmdHcm91cCkoKChlLHQpPT57ImFsbCI9PT1lP3RoaXMuX2xpbmtpbmdHcm91cHMuZm9yRWFjaCgoZT0+ZS5tdXRlKHQpKSk6dGhpcy5fbGlua2luZ0dyb3VwKGUpLm11dGUodCl9KSl9Z2V0IHN5bWJvbHMoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZFN5bWJvbHN9Z2V0IHN5bWJvbCgpe3JldHVybiB0aGlzLl93YXRjaGVkU3ltYm9sfWdldCBwcm9TeW1ib2woKXtyZXR1cm4gdGhpcy5fcHJvU3ltYm9sLnJlYWRvbmx5KCl9c3ltYm9sU3luY0VuYWJsZWQoKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5zeW1ib2wudmFsdWUoKX1nZXQgZW5zdXJlZFByb1N5bWJvbCgpe3JldHVybiB0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLnJlYWRvbmx5KCl9Z2V0IHN5bWJvbE5hbWVzTGlzdCgpe3JldHVybiB0aGlzLl9zeW1ib2xOYW1lc0xpc3QucmVhZG9ubHkoKX1nZXQgc2VyaWVzU2hvcnRTeW1ib2woKXtyZXR1cm4gdGhpcy5fc2VyaWVzU2hvcnRTeW1ib2wucmVhZG9ubHkoKX1nZXQgaW50ZXJ2YWwoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZEludGVydmFsfWludGVydmFsU3luY0VuYWJsZWQoKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5pbnRlcnZhbC52YWx1ZSgpfWdldCBpbnRyYWRheSgpe3JldHVybiB0aGlzLl93YXRjaGVkSW50cmFkYXkucmVhZG9ubHkoKX1nZXQgc2Vjb25kcygpe3JldHVybiB0aGlzLl93YXRjaGVkU2Vjb25kcy5yZWFkb25seSgpfWdldCB0aWNrcygpe3JldHVybiB0aGlzLl93YXRjaGVkVGlja3MucmVhZG9ubHkoKX1nZXQgcmFuZ2UoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZFJhbmdlLnJlYWRvbmx5KCl9Z2V0IHN1cHBvcnRlZFJlc29sdXRpb25zKCl7cmV0dXJuIHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucy5yZWFkb25seSgpfWdldCBzdXBwb3J0ZWRDaGFydFN0eWxlcygpe3JldHVybiB0aGlzLl93YXRjaGVkU3VwcG9ydGVkQ2hhcnRTdHlsZXMucmVhZG9ubHkoKX1nZXQgcHJldmVudEZlZWRCeVN5bWJvbCgpe3JldHVybiB0aGlzLl9wcmV2ZW50RmVlZEJ5U3ltYm9sfWdldCBkYXRhRnJlcXVlbmN5UmVzb2x1dGlvbigpe3JldHVybiB0aGlzLl93YXRjaGVkRGF0YUZyZXF1ZW5jeVJlc29sdXRpb24ucmVhZG9ubHkoKX1hY3RpdmVMaW5raW5nR3JvdXAoKXtyZXR1cm4gdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnJlYWRvbmx5KCl9Z2V0Q2hhcnRXaWRnZXQoKXtyZXR1cm4gdGhpcy5hY3RpdmVMaW5raW5nR3JvdXAoKS52YWx1ZSgpLmJvdW5kQ2hhcnRXaWRnZXQoKX1iaW5kVG9DaGFydFdpZGdldENvbGxlY3Rpb24oZSl7dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPy5vbkFib3V0VG9CZURlc3Ryb3llZC51bnN1YnNjcmliZUFsbCh0aGlzKSx0aGlzLl91bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPWUsdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLm9uQWJvdXRUb0JlRGVzdHJveWVkLnN1YnNjcmliZSh0aGlzLHRoaXMuX3VuYmluZEZyb21DaGFydFdpZGdldENvbGxlY3Rpb24pLHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbi5hbGxMaW5raW5nR3JvdXBzKCkuc3Vic2NyaWJlKHRoaXMuX3VwZGF0ZUxpbmtpbmdHcm91cHMpLHRoaXMuX3VwZGF0ZUxpbmtpbmdHcm91cHMoKSx0aGlzLl9hY3RpdmVMaW5raW5nR3JvdXBJbmRleD1lLmFjdGl2ZUxpbmtpbmdHcm91cCgpLnNwYXduKCksdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXguc3Vic2NyaWJlKChlPT57dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnNldFZhbHVlKHRoaXMuX2xpbmtpbmdHcm91cChlKSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSksdGhpcy5fbGlua2luZ0dyb3Vwcy5mb3JFYWNoKCh0PT50LmJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbihlKSkpfWJpbmRUb1NlYXJjaENoYXJ0cyhlKXt0aGlzLnVuYmluZEZyb21TZWFyY2hDaGFydHMoKSx0aGlzLl9zZWFyY2hDaGFydHM9ZSxlLm9uU2VhcmNoQnlTeW1ib2wuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TZWFyY2hCeVN5bWJvbCksZS5sb2FkaW5nU3ltYm9sLnN1YnNjcmliZSgoZT0+eyExPT09ZSYmKHRoaXMuX2ZlZWRCeVN5bWJvbERlYm91bmNlQ291bnRlcj0wKX0pKSx0aGlzLl93YXRjaGVkU3ltYm9sLnN1YnNjcmliZSh0aGlzLl9vblN5bWJvbExpbmtCb3VuZCl9dW5iaW5kRnJvbVNlYXJjaENoYXJ0cygpe3RoaXMuX3NlYXJjaENoYXJ0cyYmKHRoaXMuX3NlYXJjaENoYXJ0cy5vblNlYXJjaEJ5U3ltYm9sLnVuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TZWFyY2hCeVN5bWJvbCksdGhpcy5fd2F0Y2hlZFN5bWJvbC51bnN1YnNjcmliZSh0aGlzLl9vblN5bWJvbExpbmtCb3VuZCksdGhpcy5fc2VhcmNoQ2hhcnRzPW51bGwpfXNldFByZXZlbnRGZWVkQnlTeW1ib2woZSl7dGhpcy5fcHJldmVudEZlZWRCeVN5bWJvbD1lfXNldFN5bWJvbEFuZExvZ0luaXRpYXRvcihlLHQsbyxpLG4pe2NvbnN0IHI9dm9pZCAwIT09bj90aGlzLl9saW5raW5nR3JvdXAobi5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCkpOnRoaXMuYWN0aXZlTGlua2luZ0dyb3VwKCkudmFsdWUoKTt2YXIgcyxhLGwsYzsoci53YXRjaGVkU3ltYm9sLnZhbHVlKCkhPT1lfHxvKSYmKFMubG9nSW5mbyhgQ2hhbmdlIGxpbmtpbmcgc3ltYm9sIHRvICR7ZX0sIGluaXRpYXRvcjogJHt0fWApLHIud2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZShlLG8pLGl8fG51bGw9PT10aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb258fChzPXIubWFpblNlcmllcygpLGE9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLmxheW91dC52YWx1ZSgpLGw9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLm1ldGFJbmZvLnVpZC52YWx1ZSgpfHwiIixjPXQsCndpbmRvdy51c2VyLmRvX25vdF90cmFja3x8cy5zeW1ib2xSZXNvbHZpbmdBY3RpdmUoKS5zdWJzY3JpYmUoKGU9PntpZihlKXJldHVybjtjb25zdCB0PXMuc3ltYm9sSW5mbygpO3QmJigwLGcuZ2V0VHJhY2tlcikoKS50aGVuKChlPT57bnVsbCE9PWUmJmUudHJhY2tDaGFydFN5bWJvbHMoe3N5bWJvbE5hbWU6dC5wcm9fbmFtZSxzeW1ib2xUeXBlOnQudHlwZSxyZXNvbHV0aW9uOnMuaW50ZXJ2YWwoKSxsYXlvdXRUeXBlOmEsY2hhcnRJZDpsLGNoYXJ0U3R5bGVzOl8uU1RZTEVfU0hPUlRfTkFNRVNbcy5zdHlsZSgpXSxvcGVuU291cmNlOmMscGxhdGZvcm06KDAscC5nZXRQbGF0Zm9ybSkoKSxpc0V4cGVydDp3aW5kb3cudXNlci5kZWNsYXJlZF9zdGF0dXM9PT1tLlVzZXJTdGF0dXMuUHJvfSl9KSl9KSx7b25jZTohMH0pKSl9c2V0SW50ZXJ2YWxBbmRMb2dJbml0aWF0b3IoZSx0LG8saSl7Y29uc3Qgbj12b2lkIDAhPT1pP3RoaXMuX2xpbmtpbmdHcm91cChpLmxpbmtpbmdHcm91cEluZGV4KCkudmFsdWUoKSk6dGhpcy5hY3RpdmVMaW5raW5nR3JvdXAoKS52YWx1ZSgpO2EuSW50ZXJ2YWwuaXNFcXVhbChuLndhdGNoZWRJbnRlcnZhbC52YWx1ZSgpLGUpfHwoUy5sb2dJbmZvKGBDaGFuZ2UgbGlua2luZyBpbnRlcnZhbCB0byAke2V9LCBpbml0aWF0b3I6ICR7dH1gKSxvfHwoMCx2LnRyYWNrSW50ZXJ2YWxDaGFuZ2luZykoZSx0KSxuLndhdGNoZWRJbnRlcnZhbC5zZXRWYWx1ZShlKSl9X29uU2VhcmNoQnlTeW1ib2woZSl7aWYoIWUucmVzb2x2ZWRfc3ltYm9sKXRocm93IG5ldyBFcnJvcigibm8gcmVzb2x2ZWRfc3ltYm9sIik7dGhpcy5fc2VsZkVtaXQ9ITAsdGhpcy5fd2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZShlLnJlc29sdmVkX3N5bWJvbCksdGhpcy5fc2VsZkVtaXQ9ITF9X29uU3ltYm9sTGluayhlKXtpZighdGhpcy5fc2VsZkVtaXQpe2lmKCF0aGlzLl9zZWFyY2hDaGFydHMpe2NvbnN0IGU9Ik5vIHNlYXJjaCBjaGFydHMgZGVmaW5lZCI7dGhyb3cgUy5sb2dFcnJvcihlKSxuZXcgRXJyb3IoZSl9dGhpcy5fcHJldmVudEZlZWRCeVN5bWJvbHx8dGhpcy5fbG9hZFNlYXJjaENoYXJ0cyhlKX19X2xvYWRTZWFyY2hDaGFydHMoZSl7aWYoIXRoaXMuX3NlYXJjaENoYXJ0cyl7Y29uc3QgZT0iTm8gc2VhcmNoIGNoYXJ0cyBkZWZpbmVkIjt0aHJvdyBTLmxvZ0Vycm9yKGUpLG5ldyBFcnJvcihlKX1pZih0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKXJldHVybiB2b2lkKHRoaXMuX2ZlZWRCeVN5bWJvbERlYm91bmNlQ291bnRlcjwxMDAmJih0aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXIrKyx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKSk7Y29uc3QgdD1lPT50aGlzLl9zZWFyY2hDaGFydHM/KCEwPT09dGhpcy5fc2VhcmNoQ2hhcnRzLmxvYWRpbmdTeW1ib2wudmFsdWUoKT90aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXI8MTAwJiYodGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyKyssdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD0oMCxpLmRlZmF1bHQpKHQsMmUzKSx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKTp0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkPW51bGwsdGhpcy5fc2VhcmNoQ2hhcnRzLmZlZWRCeVN5bWJvbC5jYWxsKHRoaXMuX3NlYXJjaENoYXJ0cyxlKSk6KCk9Pnt9OyEwPT09dGhpcy5fc2VhcmNoQ2hhcnRzLmxvYWRpbmdTeW1ib2wudmFsdWUoKT90aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXI8MTAwJiYodGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyKyssdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD0oMCxpLmRlZmF1bHQpKHQsMmUzKSx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKTp0aGlzLl9zZWFyY2hDaGFydHMuZmVlZEJ5U3ltYm9sKGUpfV9saW5raW5nR3JvdXAoZSl7bGV0IHQ9dGhpcy5fbGlua2luZ0dyb3Vwcy5nZXQoZSk7aWYodm9pZCAwPT09dCl7Y29uc3Qgbz17d2F0Y2hlZFN5bWJvbHM6dGhpcy5fd2F0Y2hlZFN5bWJvbHMsd2F0Y2hlZFN5bWJvbDp0aGlzLl93YXRjaGVkU3ltYm9sLHNlcmllc1Nob3J0U3ltYm9sOnRoaXMuX3Nlcmllc1Nob3J0U3ltYm9sLHByb1N5bWJvbDp0aGlzLl9wcm9TeW1ib2wsZW5zdXJlZFByb1N5bWJvbDp0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLHdhdGNoZWRJbnRlcnZhbDp0aGlzLl93YXRjaGVkSW50ZXJ2YWwsd2F0Y2hlZEludHJhZGF5OnRoaXMuX3dhdGNoZWRJbnRyYWRheSx3YXRjaGVkU2Vjb25kczp0aGlzLl93YXRjaGVkU2Vjb25kcyx3YXRjaGVkVGlja3M6dGhpcy5fd2F0Y2hlZFRpY2tzLHdhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbjp0aGlzLl93YXRjaGVkRGF0YUZyZXF1ZW5jeVJlc29sdXRpb24sd2F0Y2hlZFJhbmdlOnRoaXMuX3dhdGNoZWRSYW5nZSx3YXRjaGVkU3VwcG9ydGVkUmVzb2x1dGlvbnM6dGhpcy5fd2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLHdhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlczp0aGlzLl93YXRjaGVkU3VwcG9ydGVkQ2hhcnRTdHlsZXMsc3ltYm9sTmFtZXNMaXN0OnRoaXMuX3N5bWJvbE5hbWVzTGlzdH07dD1uZXcgayhlLG8sKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKSkpLHRoaXMuX2xpbmtpbmdHcm91cHMuc2V0KGUsdCksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uJiZ0LmJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbih0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb24pfXJldHVybiB0fV91bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCl7bnVsbCE9PXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbiYmKHRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cEluZGV4Py5kZXN0cm95KCksdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXg9bnVsbCx0aGlzLl9saW5raW5nR3JvdXBzLmZvckVhY2goKGU9PmUudW5iaW5kRnJvbUNoYXJ0V2lkZ2V0Q29sbGVjdGlvbigpKSksCnRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbi5hbGxMaW5raW5nR3JvdXBzKCkudW5zdWJzY3JpYmUodGhpcy5fdXBkYXRlTGlua2luZ0dyb3VwcyksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPW51bGwpfX07e2NvbnN0IGU9KDAsdS5nZXRGcmVzaEluaXREYXRhKSgpLnN5bWJvbEluZm8sdD1lP2UucHJvX3N5bWJvbDpoLmdldFZhbHVlKCJlZGl0Y2hhcnQubW9kZWwuc3ltYm9sIiwoMCx5LmdldERlZmF1bHRTeW1ib2wpKCkpO1Quc2V0U3ltYm9sQW5kTG9nSW5pdGlhdG9yKHQsImluaXRpYWwgZGF0YSIsITEsITApfXdpbmRvdy5UcmFkaW5nVmlld0FwaXx8KHdpbmRvdy5UcmFkaW5nVmlld0FwaT17bGlua2luZzpUfSl9LDIwOTM5KGUsdCxvKXsidXNlIHN0cmljdCI7bGV0IGk7ZnVuY3Rpb24gbihlKXtpPWV9by5kKHQse3NldE11dGVMaW5raW5nR3JvdXA6KCk9Pm59KX0sNDU5NDg4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3Bvc2l0aW9uOigpPT5yfSk7dmFyIGk9bygxMzg2MzgpO2Z1bmN0aW9uIG4oZSl7aWYoIWUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpcmV0dXJue3RvcDowLGxlZnQ6MH07Y29uc3QgdD1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89KDAsaS5lbnN1cmVOb3ROdWxsKShlLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcpO3JldHVybnt0b3A6dC50b3Arby5wYWdlWU9mZnNldCxsZWZ0OnQubGVmdCtvLnBhZ2VYT2Zmc2V0fX1mdW5jdGlvbiByKGUpe2NvbnN0IHQ9Z2V0Q29tcHV0ZWRTdHlsZShlKTtsZXQgbyxpPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9PT10LnBvc2l0aW9uKW89ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle289bihlKTtjb25zdCB0PWUub3duZXJEb2N1bWVudDtsZXQgcj1lLm9mZnNldFBhcmVudHx8dC5kb2N1bWVudEVsZW1lbnQ7Zm9yKDtyJiYocj09PXQuYm9keXx8cj09PXQuZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1nZXRDb21wdXRlZFN0eWxlKHIpLnBvc2l0aW9uOylyPXIucGFyZW50RWxlbWVudDtyJiZyIT09ZSYmMT09PXIubm9kZVR5cGUmJihpPW4ociksaS50b3ArPXBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShyKS5ib3JkZXJUb3BXaWR0aCksaS5sZWZ0Kz1wYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUocikuYm9yZGVyTGVmdFdpZHRoKSl9cmV0dXJue3RvcDpvLnRvcC1pLnRvcC1wYXJzZUZsb2F0KHQubWFyZ2luVG9wKSxsZWZ0Om8ubGVmdC1pLmxlZnQtcGFyc2VGbG9hdCh0Lm1hcmdpbkxlZnQpfX19LDM2MjIzOShlLHQsbyl7InVzZSBzdHJpY3QiO2FzeW5jIGZ1bmN0aW9uIGkoKXtpZighd2luZG93LnVzZXJ8fHdpbmRvdy51c2VyLmRvX25vdF90cmFjaylyZXR1cm4gbnVsbDtjb25zdHtnZXRUcmFja2VySW5zdGFuY2U6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW28uZSg3MDY0NCksby5lKDY2Mzk5KV0pLnRoZW4oby5iaW5kKG8sMTU4MzMyKSk7cmV0dXJuIGUoKX1vLmQodCx7Z2V0VHJhY2tlcjooKT0+aX0pfSwzNTUxMjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3BhcnNlVXNlcnNUcmFja2luZ0NvZWZmaWNpZW50OigpPT5hfSk7dmFyIGk9byg5MzIzNjUpO2NvbnN0IG49InNwYXJzZVVzZXJzVHJhY2tpbmdDb2VmZmljaWVudCIscj0oMCxvKDE2MDI5NikuaXNQcm9kKSgpP251bGw6aS5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pO2xldCBzPW51bGwhPT1yP3BhcnNlRmxvYXQocik6bnVsbDtudWxsIT09cyYmKCFOdW1iZXIuaXNGaW5pdGUocyl8fHM8MHx8cz4xKSYmKHM9bnVsbCxpLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obikpO2NvbnN0IGE9cz8/LjF9LDM4MzM1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt0cmFja0ludGVydmFsQ2hhbmdpbmc6KCk9PnN9KTt2YXIgaT1vKDg1NjE5Niksbj1vKDM2MjIzOSkscj1vKDM1NTEyMyk7ZnVuY3Rpb24gcyhlLHQpe3dpbmRvdy51c2VyLmRvX25vdF90cmFja3x8KDAsaS5zaG91bGRBZmZlY3RVc2VyKSgiSW50ZXJ2YWxDaGFuZ2luZyIsci5zcGFyc2VVc2Vyc1RyYWNraW5nQ29lZmZpY2llbnQpJiYoMCxuLmdldFRyYWNrZXIpKCkudGhlbigobz0+e251bGwhPT1vJiZvLnRyYWNrQ2hhcnRJbnRlcnZhbENoYW5naW5nKGUsdCl9KSl9fSwxNTI3MTcoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3luY1VzZXJDb252ZXJzaW9uRGF0YTooKT0+dSxzeW5jVXNlckRhdGE6KCk9Pmh9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDM4NjkzMSkscj1vKDgyNzAxKSxzPW8oMzg0MDE3KSxhPW8oNTI0MDY5KTtjb25zdCBsPSgwLGkuZ2V0TG9nZ2VyKSgiVXNlci5TeW5jIik7ZnVuY3Rpb24gYyhlKXtyZXR1cm5gJHtlfV8ke3dpbmRvdy51c2VyJiZ3aW5kb3cudXNlci51c2VybmFtZXx8IiJ9YH1mdW5jdGlvbiBkKGUpe2NvbnN0e3NvdXJjZTp0LGlzQXV0aGVudGljYXRlZDpvLHByb1BsYW46aSxvZmZlcnM6cyxmaXJlTG9naW5DaGFuZ2U6YT0hMH09ZTtpIT09d2luZG93LnVzZXIucHJvX3BsYW4mJih3aW5kb3cudXNlci5wcm9fcGxhbj1pLHdpbmRvdy51c2VyLmlzX3Bybz1Cb29sZWFuKGkpLCgwLG4udHJhY2tFdmVudCkoIlN5bmMgVXNlciBEYXRhIiwiRGlmZmVyZW50IFBybyBQbGFuIixjKHQpKSksbyE9PXdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYod2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ9byxhJiZ3aW5kb3cubG9naW5TdGF0ZUNoYW5nZS5maXJlKCksKDAsbi50cmFja0V2ZW50KSgiU3luYyBVc2VyIERhdGEiLCJEaWZmZXJlbnQgQXV0aCIsYyh0KSkpLHMmJnIuYXZhaWxhYmxlT2ZmZXJzLnNldEluaXRpYWwocyl9YXN5bmMgZnVuY3Rpb24gaChlKXt0cnl7ZCh7c291cmNlOmUsaXNBdXRoZW50aWNhdGVkOiEwLHByb1BsYW46KGF3YWl0KDAsYS5nZXRQcm9QbGFuRGV0YWlsc0ZvclVzZXIpKCkpLnByb19wbGFufSl9Y2F0Y2godCl7IWZ1bmN0aW9uKGUsdCl7NDAzPT09dC5zdGF0dXMmJlsibm90X2F1dGhlbnRpY2F0ZWQiLCJsb2dpbl9yZXF1aXJlZCJdLmluY2x1ZGVzKHQudHlwZXx8IiIpP2Qoe3NvdXJjZTplLGlzQXV0aGVudGljYXRlZDohMSxwcm9QbGFuOnZvaWQgMH0pOmwubG9nRXJyb3IodC5tZXNzYWdlKX0oZSx0KX19CmFzeW5jIGZ1bmN0aW9uIHUoZSx0PSEwKXtjb25zdCBvPW5ldyBVUkwoIi9wcmljaW5nLyIsd2luZG93LmxvY2F0aW9uLm9yaWdpbiksaT1uZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO2kuaGFzKCJfdGVzdF9jb3VudHJ5IikmJm8uc2VhcmNoUGFyYW1zLmFwcGVuZCgiX3Rlc3RfY291bnRyeSIsaS5nZXQoIl90ZXN0X2NvdW50cnkiKT8/IiIpLG8uc2VhcmNoUGFyYW1zLmFwcGVuZCgiY29tcG9uZW50LWRhdGEtb25seSIsIjEiKTtjb25zdCBuPWF3YWl0KDAscy5mZXRjaCkoby5ocmVmKSxyPWF3YWl0IG4uanNvbigpO3JldHVybiBkKHtzb3VyY2U6ZSxpc0F1dGhlbnRpY2F0ZWQ6ci5pc19hdXRoZW50aWNhdGVkLHByb1BsYW46ci51c2VyLnByb19wbGFuLGZpcmVMb2dpbkNoYW5nZTp0LG9mZmVyczpyLnVzZXIuYXZhaWxhYmxlX29mZmVyc30pLHJ9fSw4MTA0MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTdGRUaGVtZTooKT0+aS5TdGRUaGVtZX0pO3ZhciBpPW8oMjQ3OTAxKX0sMjM0OTY0KGUsdCxvKXsidXNlIHN0cmljdCI7YXN5bmMgZnVuY3Rpb24gaShlLHQpe2NvbnN0IGk9YXdhaXQgUHJvbWlzZS5hbGwoW28uZSgyODgzMSksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoMjAzNTQpLG8uZSgxMzQ5Miksby5lKDM3NzQ2KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0MjMyKSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDg1NzkpLG8uZSgxNzA4Nyksby5lKDU3MzAwKSxvLmUoMTIwNTEpLG8uZSg4OTU1OCksby5lKDEwMzY2KSxvLmUoNDA5MTQpLG8uZSg5MDk2MCksby5lKDg3NzQwKSxvLmUoNzg4OTkpLG8uZSg2NzIxMiksby5lKDgwOTE1KSxvLmUoMTUzNCksby5lKDI4MTc2KSxvLmUoMzk2MDkpLG8uZSg1NTIyOSksby5lKDY1MTAwKSxvLmUoNDI3MDYpXSkudGhlbihvLmJpbmQobyw1MDYyNzUpKTtyZXR1cm4gaS5zaG93U2ltcGxlRGlhbG9nKGUsaS5yZW5hbWVNb2R1bGUsdCl9YXN5bmMgZnVuY3Rpb24gbihlLHQpe2NvbnN0IGk9YXdhaXQgUHJvbWlzZS5hbGwoW28uZSgyODgzMSksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoMjAzNTQpLG8uZSgxMzQ5Miksby5lKDM3NzQ2KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0MjMyKSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDg1NzkpLG8uZSgxNzA4Nyksby5lKDU3MzAwKSxvLmUoMTIwNTEpLG8uZSg4OTU1OCksby5lKDEwMzY2KSxvLmUoNDA5MTQpLG8uZSg5MDk2MCksby5lKDg3NzQwKSxvLmUoNzg4OTkpLG8uZSg2NzIxMiksby5lKDgwOTE1KSxvLmUoMTUzNCksby5lKDI4MTc2KSxvLmUoMzk2MDkpLG8uZSg1NTIyOSksby5lKDY1MTAwKSxvLmUoNDI3MDYpXSkudGhlbihvLmJpbmQobyw1MDYyNzUpKTtyZXR1cm4gaS5zaG93U2ltcGxlRGlhbG9nKGUsaS5jb25maXJtTW9kdWxlLHQpfWFzeW5jIGZ1bmN0aW9uIHIoZSx0KXtjb25zdCBpPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoMjg4MzEpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMzg1KSxvLmUoODEwNzIpLG8uZSg5NDIzMiksby5lKDE5NTk1KSxvLmUoMTk3ODcpLG8uZSg4NTc5KSxvLmUoMTcwODcpLG8uZSg1NzMwMCksby5lKDEyMDUxKSxvLmUoODk1NTgpLG8uZSgxMDM2Niksby5lKDQwOTE0KSxvLmUoOTA5NjApLG8uZSg4Nzc0MCksby5lKDc4ODk5KSxvLmUoNjcyMTIpLG8uZSg4MDkxNSksby5lKDE1MzQpLG8uZSgyODE3Niksby5lKDM5NjA5KSxvLmUoNTUyMjkpLG8uZSg2NTEwMCksby5lKDQyNzA2KV0pLnRoZW4oby5iaW5kKG8sNTA2Mjc1KSk7cmV0dXJuIGkuc2hvd1NpbXBsZURpYWxvZyhlLGkud2FybmluZ01vZHVsZSx0KX1vLmQodCx7c2hvd0NvbmZpcm06KCk9Pm4sc2hvd1JlbmFtZTooKT0+aSxzaG93V2FybmluZzooKT0+cn0pfSw2NTQ2MzYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cnVuT3JTaWduSW46KCk9PnJ9KTt2YXIgaT1vKDkzMDIzMSk7byg2MjE5MjYpO2NvbnN0IG49KDAsaS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgid2lkZ2V0Iik7ZnVuY3Rpb24gcihlLHQpe24/ZSgpOndpbmRvdy5ydW5PclNpZ25JbihlLHQpfX0sODMyMzkyKGUsdCxvKXsidXNlIHN0cmljdCI7byg3OTUzODMpLG8oNDgyNTA0KTt2YXIgaT1vKDM0NDc4NSksbj1vKDkzMDU2Nikscj0obyg4MjkxODApLG8oODA0NjE5KSxvKDEzODYzOCkpLHM9byg3NDgwMDIpLGE9byg2NTM4MTcpLGw9byg3NDI1NzcpLGM9byg1Mjg4NjQpO3ZhciBkLGgsdT1vKDYwMTU4NyksXz1vKDE4NTI3MSk7IWZ1bmN0aW9uKGUpe2UuQm9uZHM9ImJvbmRzIixlLkNmZD0iY2ZkIixlLkNvbnRpbnVvdXNGdXR1cmVzPSJjb250aW51b3VzX2Z1dHVyZXMiLGUuQ3J5cHRvPSJjcnlwdG8iLGUuQ3J5cHRvQnlTeW1ib2w9ImNyeXB0b19ieV9zeW1ib2wiLGUuQ3J5cHRvTWt0PSJjcnlwdG9fbWt0IixlLkNyeXB0b01rdEJ5U3ltYm9sPSJjcnlwdG9fbWt0X2J5X3N5bWJvbCIsZS5DdXJyZW5jeT0iY3VycmVuY3kiLGUuRm9yZXg9ImZvcmV4IixlLkZ1dHVyZXM9ImZ1dHVyZXMiLGUuSW5kdXN0cnk9ImluZHVzdHJ5IixlLlBvc3RNYXJrZXQ9InBvc3RfbWFya2V0IixlLlByZU1hcmtldD0icHJlX21hcmtldCIsZS5TZWN0b3I9InNlY3RvciIsZS5TdG9jaz0ic3RvY2siLGUuU3RvY2tDb21wYWN0PSJzdG9ja19jb21wYWN0In0oZHx8KGQ9e30pKSxmdW5jdGlvbihlKXtlLkJhc2VDdXJyZW5jeUxvZ29JZD0iYmFzZV9jdXJyZW5jeV9sb2dvaWQiLGUuQ2hhbmdlPSJjaGFuZ2UiLGUuQ291bnRyeT0iY291bnRyeSIsZS5DdXJyZW5jeUxvZ29JZD0iY3VycmVuY3lfbG9nb2lkIixlLkRlc2NyaXB0aW9uPSJkZXNjcmlwdGlvbiIsZS5JbmR1c3RyeT0iaW5kdXN0cnkiLGUuTG9nb0lkPSJsb2dvaWQiLGUuTmFtZT0ibmFtZSIsZS5QZXJmb3JtYW5jZTFNPSJQZXJmLjFNIixlLlBlcmZvcm1hbmNlM009IlBlcmYuM00iLGUuUGVyZm9ybWFuY2U2TT0iUGVyZi42TSIsCmUuUGVyZm9ybWFuY2VXPSJQZXJmLlciLGUuUGVyZm9ybWFuY2VZPSJQZXJmLlkiLGUuUGVyZm9ybWFuY2VZVEQ9IlBlcmYuWVREIixlLlNlY3Rvcj0ic2VjdG9yIn0oaHx8KGg9e30pKTtjb25zdCBwPVt7aWQ6Im92ZXJ2aWV3Iix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1NjgzNDYpKSxzY3JlZW5lclR5cGVDb250ZW50OntzdG9jazp7c3RvY2s6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiUmVjb21tZW5kLkFsbCIsInZvbHVtZSIsIlZhbHVlLlRyYWRlZCIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwibnVtYmVyX29mX2VtcGxveWVlcyIsaC5TZWN0b3IsImRlc2NyaXB0aW9uIiwidHlwZSJdLF9zZWN0b3I6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiUmVjb21tZW5kLkFsbCIsInZvbHVtZSIsIlZhbHVlLlRyYWRlZCIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwibnVtYmVyX29mX2VtcGxveWVlcyIsImluZHVzdHJ5IiwiZGVzY3JpcHRpb24iLCJ0eXBlIl19LGZvcmV4OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiYmlkIiwiYXNrIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG86W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93Iiwidm9sdW1lIiwiMjRoX3ZvbHw1IiwiMjRoX3ZvbF9jaGFuZ2V8NSIsIlJlY29tbWVuZC5BbGwiLCJleGNoYW5nZSIsImRlc2NyaXB0aW9uIl0sY3J5cHRvX21rdDpbaC5CYXNlQ3VycmVuY3lMb2dvSWQsaC5TZWN0b3IsIm1hcmtldF9jYXBfY2FsYyIsIm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjIiwiY2xvc2UiLCJ0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmciLCJ0b3RhbF9zaGFyZXNfZGlsdXRlZCIsInRvdGFsX3ZhbHVlX3RyYWRlZCIsImNoYW5nZSJdLGNyeXB0b19ta3RfYnlfc3ltYm9sOltoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsInZvbHVtZSIsIlJlY29tbWVuZC5BbGwiLCJleGNoYW5nZSIsImRlc2NyaXB0aW9uIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsInZvbHVtZSIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGZ1dHVyZXM6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGNvbnRpbnVvdXNfZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJleHBpcmF0aW9uIiwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGNmZDpbaC5Mb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93IiwiUmVjb21tZW5kLkFsbCIsImRlc2NyaXB0aW9uIl0sc2VjdG9yOlsiZGVzY3JpcHRpb24iLCJtYXJrZXRfY2FwX2Jhc2ljIiwiZGl2aWRlbmRfeWllbGRfcmVjZW50IiwiY2hhbmdlIiwidm9sdW1lIiwiZWxlbWVudHMiLCJiYXNpY19lbGVtZW50cyJdLGluZHVzdHJ5OlsiZGVzY3JpcHRpb24iLCJtYXJrZXRfY2FwX2Jhc2ljIiwiZGl2aWRlbmRfeWllbGRfcmVjZW50IiwiY2hhbmdlIiwidm9sdW1lIixoLlNlY3RvciwiZWxlbWVudHMiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93IiwiUmVjb21tZW5kLkFsbCIsImRlc2NyaXB0aW9uIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiY291cG9uIiwibWF0dXJpdHlfZGF0ZSIsImNsb3NlIiwiY2hhbmdlIiwiY2hhbmdlX2FicyIsImhpZ2giLCJsb3ciLCJSZWNvbW1lbmQuQWxsIiwiZGVzY3JpcHRpb24iXSxwcmVfbWFya2V0OltoLkxvZ29JZCxoLk5hbWUsInByZW1hcmtldF9jbG9zZSIsInByZW1hcmtldF9jaGFuZ2VfYWJzIiwicHJlbWFya2V0X2NoYW5nZSIsInByZW1hcmtldF92b2x1bWUiLCJwcmVtYXJrZXRfZ2FwIiwiY2xvc2UiLCJjaGFuZ2UiLCJ2b2x1bWUiLCJtYXJrZXRfY2FwX2Jhc2ljIl0scG9zdF9tYXJrZXQ6W2guTG9nb0lkLGguTmFtZSwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2hhbmdlX2FicyIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF92b2x1bWUiLCJjbG9zZSIsImNoYW5nZSIsInZvbHVtZSIsIm1hcmtldF9jYXBfYmFzaWMiXX0sY29udGVudDpbXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5Gb3JleCxkLkZ1dHVyZXMsZC5Db250aW51b3VzRnV0dXJlcyxkLkNmZCxkLkNyeXB0byxkLkNyeXB0b01rdCxkLkNyeXB0b01rdEJ5U3ltYm9sLGQuQ3J5cHRvQnlTeW1ib2wsZC5TZWN0b3IsZC5JbmR1c3RyeSxkLkN1cnJlbmN5LGQuQm9uZHMsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoicGVyZm9ybWFuY2UiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDExMTM0MSkpLHNjcmVlbmVyVHlwZUNvbnRlbnQ6e3N0b2NrOltoLkxvZ29JZCxoLk5hbWUsImRlc2NyaXB0aW9uIiwidHlwZSIsImNoYW5nZS4xIiwiY2hhbmdlLjUiLCJjaGFuZ2UuMTUiLCJjaGFuZ2UuNjAiLCJjaGFuZ2UuMjQwIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlBlcmYuNVkiLCJQZXJmLkFsbCIsImJldGFfMV95ZWFyIiwiVm9sYXRpbGl0eS5EIl0sCmZ1dHVyZXM6W2guTG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdLGNvbnRpbnVvdXNfZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sZm9yZXg6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiUGVyZi41WSIsIlBlcmYuQWxsIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvOltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlBlcmYuNVkiLCJQZXJmLkFsbCIsIlZvbGF0aWxpdHkuRCJdLGNyeXB0b19ta3Q6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguU2VjdG9yLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvX21rdF9ieV9zeW1ib2w6W2guQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdLGNmZDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sc2VjdG9yOlsiZGVzY3JpcHRpb24iLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIl0saW5kdXN0cnk6WyJkZXNjcmlwdGlvbiIsImNoYW5nZSIsImNoYW5nZS4xVyIsImNoYW5nZS4xTSIsIlBlcmYuM00iLCJQZXJmLjZNIiwiUGVyZi5ZVEQiLCJQZXJmLlkiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdfSxjb250ZW50OltdLHNjcmVlbmVyczpbZC5TdG9jayxkLlN0b2NrQ29tcGFjdCxkLkZvcmV4LGQuRnV0dXJlcyxkLkNvbnRpbnVvdXNGdXR1cmVzLGQuQ2ZkLGQuQ3J5cHRvLGQuQ3J5cHRvTWt0LGQuQ3J5cHRvQnlTeW1ib2wsZC5DcnlwdG9Na3RCeVN5bWJvbCxkLlNlY3RvcixkLkluZHVzdHJ5LGQuQ3VycmVuY3ksZC5Cb25kcyxkLlByZU1hcmtldCxkLlBvc3RNYXJrZXRdLHNob3dPbldpZGdldDohMH0se2lkOiJleHRlbmRlZF9ob3VycyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzIxNDQxKSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInByZW1hcmtldF9jbG9zZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwcmVtYXJrZXRfZ2FwIiwicHJlbWFya2V0X3ZvbHVtZSIsImNsb3NlIiwiY2hhbmdlIiwidm9sdW1lIiwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF92b2x1bWUiLCJSZWNvbW1lbmQuQWxsIiwibWFya2V0X2NhcF9iYXNpYyJdLHNjcmVlbmVyczpbZC5TdG9ja10sc2hvd09uV2lkZ2V0OiExfSx7aWQ6InZhbHVhdGlvbiIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzk2MjU2KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjbG9zZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJwcmljZV9yZXZlbnVlX3R0bSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJsYXN0X2FubnVhbF9lcHMiLCJlbnRlcnByaXNlX3ZhbHVlX2ViaXRkYV90dG0iLCJlbnRlcnByaXNlX3ZhbHVlX2ZxIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsIl0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6ImRpdmlkZW5kcyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjU5MjY3KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjbG9zZSIsImRpdmlkZW5kX3lpZWxkX3JlY2VudCIsImRpdmlkZW5kc19wYWlkIiwiZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX2Z5Il0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6Im1hcmdpbnMiLHRpdGxlOl8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lciJ9LG8oMjA1OSkpLApjb250ZW50OltoLkxvZ29JZCxoLk5hbWUsImRlc2NyaXB0aW9uIiwidHlwZSIsImdyb3NzX21hcmdpbiIsIm9wZXJhdGluZ19tYXJnaW4iLCJwcmVfdGF4X21hcmdpbiIsImFmdGVyX3RheF9tYXJnaW4iXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoiaW5jb21lX3N0YXRlbWVudCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODQ3NTQ0KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJiYXNpY19lcHNfbmV0X2luY29tZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF90dG0iLCJlYml0ZGEiLCJncm9zc19wcm9maXRfZnEiLCJncm9zc19wcm9maXQiLCJ0b3RhbF9yZXZlbnVlIiwibGFzdF9hbm51YWxfZXBzIiwibGFzdF9hbm51YWxfcmV2ZW51ZSIsIm5ldF9pbmNvbWUiXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoiYmFsYW5jZV9zaGVldCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQ0MTU1KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjdXJyZW50X3JhdGlvIiwiZGVidF90b19lcXVpdHkiLCJuZXRfZGVidCIsInF1aWNrX3JhdGlvIiwidG90YWxfYXNzZXRzIiwidG90YWxfZGVidCIsInRvdGFsX2N1cnJlbnRfYXNzZXRzIl0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6Im9zY2lsbGF0b3JzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzNTkxNTApKSxzY3JlZW5lclR5cGVDb250ZW50OntzdG9jazpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuT3RoZXIiLCJBRFgiLCJBTyIsIkFUUiIsIkNDSTIwIiwiTUFDRC5tYWNkIiwiTUFDRC5zaWduYWwiLCJNb20iLCJSU0kiLCJTdG9jaC5LIiwiU3RvY2guRCIsImRlc2NyaXB0aW9uIiwidHlwZSJdLGZvcmV4OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxmdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY29udGludW91c19mdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvOltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLlNlY3RvciwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0X2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjZmQ6W2guTG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuT3RoZXIiLCJBRFgiLCJBTyIsIkFUUiIsIkNDSTIwIiwiTUFDRC5tYWNkIiwiTUFDRC5zaWduYWwiLCJNb20iLCJSU0kiLCJTdG9jaC5LIiwiU3RvY2guRCIsImRlc2NyaXB0aW9uIiwidHlwZSJdLGJvbmRzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl19LGNvbnRlbnQ6W10sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuRm9yZXgsZC5GdXR1cmVzLGQuQ29udGludW91c0Z1dHVyZXMsZC5DZmQsZC5DcnlwdG8sZC5DcnlwdG9Na3QsZC5DcnlwdG9Na3RCeVN5bWJvbCxkLkNyeXB0b0J5U3ltYm9sLGQuQ3VycmVuY3ksZC5Cb25kcyxkLlByZU1hcmtldCxkLlBvc3RNYXJrZXRdLHNob3dPbldpZGdldDohMH0se2lkOiJtb3ZpbmdfYXZlcmFnZXMiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDExNTI3NCkpLHNjcmVlbmVyVHlwZUNvbnRlbnQ6ewpzdG9jazpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sZm9yZXg6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY29udGludW91c19mdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG86W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvX21rdDpbaC5CYXNlQ3VycmVuY3lMb2dvSWQsaC5TZWN0b3IsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0X2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fYnlfc3ltYm9sOltoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiZXhjaGFuZ2UiLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY2ZkOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk1BIiwiY2xvc2UiLCJTTUEyMCIsIlNNQTUwIiwiU01BMjAwIiwiQkIudXBwZXIiLCJCQi5sb3dlciIsImRlc2NyaXB0aW9uIiwidHlwZSJdfSxjb250ZW50OltdLHNjcmVlbmVyczpbZC5TdG9jayxkLlN0b2NrQ29tcGFjdCxkLkZvcmV4LGQuRnV0dXJlcyxkLkNvbnRpbnVvdXNGdXR1cmVzLGQuQ2ZkLGQuQ3J5cHRvLGQuQ3J5cHRvTWt0LGQuQ3J5cHRvTWt0QnlTeW1ib2wsZC5DcnlwdG9CeVN5bWJvbCxkLkN1cnJlbmN5LGQuQm9uZHMsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9XSxtPVtoLkxvZ29JZCwibmFtZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImVwc19zdXJwcmlzZV9mcSIsImVwc19zdXJwcmlzZV9wZXJjZW50X2ZxIiwicmV2ZW51ZV9mb3JlY2FzdF9uZXh0X2ZxIiwicmV2ZW51ZV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2NhbGVuZGFyX2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSIsImRlc2NyaXB0aW9uIiwidHlwZSJdO2Z1bmN0aW9uIGcoZSl7Y29uc3QgdD17c2NyZWVuZXJUeXBlOmQuU3RvY2ssbWFya2V0czpbInN0b2NrIl0saXNDb21wYWN0OiExLHN1YnR5cGU6IiIsaXNPbldpZGdldDohMX07bGV0IG89cDtjb25zdCBpPU9iamVjdC5hc3NpZ24odCxlKSx7c2NyZWVuZXJUeXBlOm4saXNDb21wYWN0OnMsc3VidHlwZTphLGlzT25XaWRnZXQ6bH09aSx7bWFya2V0czpjfT1pO3JldHVybiBvPW8uZmlsdGVyKChlPT57aWYobj09PWQuU3RvY2spe2NvbnN0IHQ9cz9gJHtufV9jb21wYWN0YDpuO3JldHVybiBlLnNjcmVlbmVycy5pbmNsdWRlcyh0KX1yZXR1cm4gZS5zY3JlZW5lcnMuaW5jbHVkZXMobil9KSksbCYmKG89by5maWx0ZXIoKGU9PiEwPT09ZS5zaG93T25XaWRnZXQpKSksby5mb3JFYWNoKChlPT57aWYodm9pZCAwIT09ZS5zY3JlZW5lclR5cGVDb250ZW50KXtjb25zdCBvPWUuc2NyZWVuZXJUeXBlQ29udGVudFsoMCxyLmVuc3VyZURlZmluZWQpKG4pXXx8ZS5zY3JlZW5lclR5cGVDb250ZW50LnN0b2NrO2lmKHQ9byxBcnJheS5pc0FycmF5KHQpKWUuY29udGVudD0oMCxyLmVuc3VyZURlZmluZWQpKG8pO2Vsc2V7Y29uc3QgdD1PYmplY3Qua2V5cyhvKSxpPWMucmVkdWNlKCgoZSx0KT0+KGUucHVzaChgJHsoMCxyLmVuc3VyZURlZmluZWQpKHQpfV8keygwLHIuZW5zdXJlRGVmaW5lZCkoYSl9YCksZS5wdXNoKGAkeygwLHIuZW5zdXJlRGVmaW5lZCkoYSl9YCksZS5wdXNoKCgwLHIuZW5zdXJlRGVmaW5lZCkodCkpLGUpKSxbXSksbj1mdW5jdGlvbihlLHQpe2Zvcihjb25zdCBvIG9mIGUpaWYodC5pbmNsdWRlcyhvKSlyZXR1cm4gbztyZXR1cm4ic3RvY2sifShbLi4ubmV3IFNldChpKV0sdCk7ZS5jb250ZW50PW9bbl19fXZhciB0O2wmJihlLmNvbnRlbnQ9ZS5jb250ZW50LmZpbHRlcigoZT0+ImRlc2NyaXB0aW9uIiE9PWUpKSl9KSksb312YXIgdixmLHksYj1vKDk3MzA0MSk7IWZ1bmN0aW9uKGUpe2UuQW1lcmljYT0iYW1lcmljYSIsZS5BcmdlbnRpbmE9ImFyZ2VudGluYSIsZS5BdXN0cmFsaWE9ImF1c3RyYWxpYSIsZS5BdXN0cmlhPSJhdXN0cmlhIixlLkJhaHJhaW49ImJhaHJhaW4iLGUuQmFuZ2xhZGVzaD0iYmFuZ2xhZGVzaCIsZS5CZWxnaXVtPSJiZWxnaXVtIixlLkJ1bGdhcmlhPSJidWxnYXJpYSIsCmUuQnJhemlsPSJicmF6aWwiLGUuQ2FuYWRhPSJjYW5hZGEiLGUuQ2hpbGU9ImNoaWxlIixlLkNoaW5hPSJjaGluYSIsZS5Db2xvbWJpYT0iY29sb21iaWEiLGUuQ3JvYXRpYT0iY3JvYXRpYSIsZS5DeXBydXM9ImN5cHJ1cyIsZS5DemVjaD0iY3plY2giLGUuRGVubWFyaz0iZGVubWFyayIsZS5FZ3lwdD0iZWd5cHQiLGUuRXN0b25pYT0iZXN0b25pYSIsZS5GaW5sYW5kPSJmaW5sYW5kIixlLkZyYW5jZT0iZnJhbmNlIixlLkdlcm1hbnk9Imdlcm1hbnkiLGUuR3JlZWNlPSJncmVlY2UiLGUuSG9uZ0tvbmc9Imhvbmdrb25nIixlLkh1bmdhcnk9Imh1bmdhcnkiLGUuSWNlbGFuZD0iaWNlbGFuZCIsZS5JbmRpYT0iaW5kaWEiLGUuSW5kb25lc2lhPSJpbmRvbmVzaWEiLGUuSXJlbGFuZD0iaXJlbGFuZCIsZS5Jc3JhZWw9ImlzcmFlbCIsZS5JdGFseT0iaXRhbHkiLGUuSmFwYW49ImphcGFuIixlLktlbnlhPSJrZW55YSIsZS5LdXdhaXQ9Imt1d2FpdCIsZS5MYXR2aWE9ImxhdHZpYSIsZS5MaXRodWFuaWE9ImxpdGh1YW5pYSIsZS5MdXhlbWJvdXJnPSJsdXhlbWJvdXJnIixlLk1hbGF5c2lhPSJtYWxheXNpYSIsZS5NZXhpY289Im1leGljbyIsZS5Nb3JvY2NvPSJtb3JvY2NvIixlLk5ldGhlcmxhbmRzPSJuZXRoZXJsYW5kcyIsZS5OZXdaZWFsYW5kPSJuZXd6ZWFsYW5kIixlLk5pZ2VyaWE9Im5pZ2VyaWEiLGUuTm9yd2F5PSJub3J3YXkiLGUuUGFraXN0YW49InBha2lzdGFuIixlLlBlcnU9InBlcnUiLGUuUGhpbGlwcGluZXM9InBoaWxpcHBpbmVzIixlLlBvbGFuZD0icG9sYW5kIixlLlBvcnR1Z2FsPSJwb3J0dWdhbCIsZS5RYXRhcj0icWF0YXIiLGUuUm9tYW5pYT0icm9tYW5pYSIsZS5SdXNzaWE9InJ1c3NpYSIsZS5TYXVkaUFyYWJpYT0ia3NhIixlLlNlcmJpYT0ic2VyYmlhIixlLlNpbmdhcG9yZT0ic2luZ2Fwb3JlIixlLlNsb3Zha2lhPSJzbG92YWtpYSIsZS5TbG92ZW5pYT0ic2xvdmVuaWEiLGUuU291dGhBZnJpY2E9InJzYSIsZS5Tb3V0aEtvcmVhPSJrb3JlYSIsZS5TcGFpbj0ic3BhaW4iLGUuU3JpTGFua2E9InNyaWxhbmthIixlLlN3ZWRlbj0ic3dlZGVuIixlLlN3aXR6ZXJsYW5kPSJzd2l0emVybGFuZCIsZS5UYWl3YW49InRhaXdhbiIsZS5UaGFpbGFuZD0idGhhaWxhbmQiLGUuVHVuaXNpYT0idHVuaXNpYSIsZS5UdXJrZXk9InR1cmtleSIsZS5VQUU9InVhZSIsZS5VSz0idWsiLGUuVmVuZXp1ZWxhPSJ2ZW5lenVlbGEiLGUuVmlldG5hbT0idmlldG5hbSJ9KHZ8fCh2PXt9KSksZnVuY3Rpb24oZSl7ZS5Gb3JleD0iZm9yZXgiLGUuQ3J5cHRvPSJjcnlwdG8iLGUuQ29pbj0iY29pbiIsZS5DRkQ9ImNmZCIsZS5Cb25kcz0iYm9uZHMiLGUuQm9uZD0iYm9uZCIsZS5GdXR1cmVzPSJmdXR1cmVzIixlLk9wdGlvbnM9Im9wdGlvbnMifShmfHwoZj17fSkpLGZ1bmN0aW9uKGUpe2UuR2xvYmFsPSJnbG9iYWwifSh5fHwoeT17fSkpO3YuQmVsZ2l1bSx2LkN5cHJ1cyx2LkRlbm1hcmssdi5Fc3RvbmlhLHYuRmlubGFuZCx2LkZyYW5jZSx2Lkdlcm1hbnksdi5HcmVlY2Usdi5IdW5nYXJ5LHYuSWNlbGFuZCx2Lkl0YWx5LHYuTGF0dmlhLHYuTGl0aHVhbmlhLHYuTHV4ZW1ib3VyZyx2Lk5ldGhlcmxhbmRzLHYuTm9yd2F5LHYuUG9sYW5kLHYuUG9ydHVnYWwsdi5Sb21hbmlhLHYuUnVzc2lhLHYuU2VyYmlhLHYuU2xvdmFraWEsdi5TcGFpbix2LlN3ZWRlbix2LlN3aXR6ZXJsYW5kLHYuVHVya2V5LHYuVUssdi5CZWxnaXVtLHYuQ3lwcnVzLHYuRGVubWFyayx2LkVzdG9uaWEsdi5GaW5sYW5kLHYuRnJhbmNlLHYuR2VybWFueSx2LkdyZWVjZSx2Lkh1bmdhcnksdi5JdGFseSx2LkxhdHZpYSx2LkxpdGh1YW5pYSx2Lkx1eGVtYm91cmcsdi5OZXRoZXJsYW5kcyx2LlBvbGFuZCx2LlBvcnR1Z2FsLHYuUm9tYW5pYSx2LlNsb3Zha2lhLHYuU3BhaW4sdi5Td2VkZW47dmFyIFM9byg5NjAyMjkpO2xldCB3PW51bGw7Y29uc3QgQz12LkFtZXJpY2E7ZnVuY3Rpb24gayhlKXtjb25zdCB0PWV8fHdpbmRvdy5sb2NhbGU7cmV0dXJuIHQmJih3fHwodz1PYmplY3QuZW50cmllcygoMCxTLmdldFNjcmVlbmVyQ291bnRyaWVzTWFwKSgpKS5yZWR1Y2UoKChlLFt0LG9dKT0+by5zY3JlZW5lck5hbWU/KGVbby50dkxvY2FsZXx8dF09by5zY3JlZW5lck5hbWUsZSk6ZSkse30pLHcpKVt0XXx8Q31jb25zdCBUPW8oMjU1NTE2KSxFPW8oMzg5OTk0KSx4PXt9LEE9bmV3IE1hcChbWyJ1YWUiLCgpPT5vLmkxOG5leHQobnVsbCx2b2lkIDAsbygxNjMxMTApKV1dKTtmb3IoY29uc3QgZSBvZiBFKXtjb25zdCB0PVRbZV07aWYodCYmdC5zY3JlZW5lck5hbWUpe2NvbnN0IG89QS5oYXModC5zY3JlZW5lck5hbWUpP0EuZ2V0KHQuc2NyZWVuZXJOYW1lKTooKT0+KDAsYi50cmllc1RyYW5zbGF0ZUNvdW50cmllTmFtZSkodC50aXRsZSk7eFt0LnNjcmVlbmVyTmFtZV09e2ZsYWc6ZSxnZXQgdGl0bGUoKXtyZXR1cm4gbygpfSxzdG9ja3M6dC5leGNoYW5nZXNTdG9ja3N8fFtdLHRpbWV6b25lOnQuc2NyZWVuZXJUaW1lem9uZSxncm91cDp0Lmdyb3VwLGNvdW50cnk6ZX19fWNvbnN0IE09byg4MTkyOTApLEk9e2ZvcmV4OntpY29uOmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9faXRlbS1mb3JleCI+JHtvKDU2NzI0NSl9PC9zcGFuPmAsZ2V0IHRpdGxlKCl7cmV0dXJuIG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDI1NTA5MykpfSxzdG9ja3M6W119fSxSPXtjcnlwdG86e2ljb246YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19pdGVtLWJpdGNvaW4iPiR7TX08L3NwYW4+YCxnZXQgdGl0bGUoKXtyZXR1cm4gby5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjg0MDA0KSl9LHN0b2NrczpbXX19O2Z1bmN0aW9uIEYoZSl7cmV0dXJuInN0b2NrIj09PWU/eDoiZm9yZXgiPT09ZT9JOiJjcnlwdG8iPT09ZT9SOnh9Y29uc3QgTD17YW1lcmljYTp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTEsMmUxMl0sdm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSwKYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLGF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSxhdmVyYWdlX3ZvbHVtZV82MGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10sYXZlcmFnZV92b2x1bWVfOTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCw1LDEwLDE1LDIwLDUwLDc1LDEwMF0scHJlbWFya2V0X3ZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10scG9zdG1hcmtldF92b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLGNoYW5nZV9hYnM6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGNoYW5nZTpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sb3BlbjpbMTAsMjAsNTAsMTAwXSxjbG9zZTpbMTAsMjAsNTAsMTAwXSxoaWdoOlsxMCwyMCw1MCwxMDBdLGxvdzpbMTAsMjAsNTAsMTAwXSxnYXA6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLHByaWNlX2Vhcm5pbmdzX3R0bTpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwXSxwcmljZV9lYXJuaW5nc190b19ncm93dGhfdHRtOlswLDEsMiwzXSxwcmljZV9zYWxlc19yYXRpbzpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwXSxyZXR1cm5fb25fYXNzZXRzOlstNTAsLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMCw1MF0scmV0dXJuX29uX2VxdWl0eTpbLTUwLC0zMCwtMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjAsMzAsNTBdLGRlYnRfdG9fZXF1aXR5OlsuMSwuMiwuMywuNCwuNSwuNiwuNywuOCwuOSwxXSxjdXJyZW50X3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTBdLHF1aWNrX3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTBdLHByaWNlX2Jvb2tfZnE6WzAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLHByaWNlX2Jvb2tfcmF0aW86WzAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLHByaWNlX2ZyZWVfY2FzaF9mbG93X3R0bTpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwLDYwLDcwLDgwLDkwLDEwMF0sYmV0YV8xX3llYXI6Wy0yLC0xLjUsLTEsLS41LDAsLjUsMSwxLjUsMl0sb3BlcmF0aW5nX21hcmdpbjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sZWJpdGRhOls1ZTUsMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDJlOSw1ZTksMWUxMCwyNWU5LDVlMTBdLGNoYW5nZV9mcm9tX29wZW46Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sZ29vZHdpbGw6WzVlNywzZTgsMmU5LDFlMTAsMmUxMV0sbmV0X2RlYnQ6Wy0yZTExLC0xZTEwLC0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMV0sdG90YWxfZGVidDpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10scmV0dXJuX29uX2ludmVzdGVkX2NhcGl0YWw6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGFmdGVyX3RheF9tYXJnaW46Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLHByZV90YXhfbWFyZ2luOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxncm9zc19tYXJnaW46Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGRpdmlkZW5kc19wYWlkOlstMmUxMSwtMWUxMCwtMmU5LC0zZTgsLTVlNywwXSxkaXZpZGVuZF95aWVsZF9yZWNlbnQ6WzAsNSwxMCwxNSwyMCwyNSw1MCwxMDBdLGJhc2ljX2Vwc19uZXRfaW5jb21lOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxuZXRfaW5jb21lOlstNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLGdyb3NzX3Byb2ZpdDpbLTJlMTEsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxncm9zc19wcm9maXRfZnE6Wy0yZTExLC0xZTEwLC0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMV0sbnVtYmVyX29mX3NoYXJlaG9sZGVyczpbMTAwLDUwMCwxZTMsMWU0LDFlNSwxZTZdLGZsb2F0X3NoYXJlc19vdXRzdGFuZGluZzpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSx0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmdfZnVuZGFtZW50YWw6WzVlNywzZTgsMmU5LDFlMTAsMmUxMV0sdG90YWxfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX2N1cnJlbnRfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX3JldmVudWU6WzAsNWU3LDNlOCwyZTksMWUxMCwyZTExLDVlMTFdLHRvdGFsX2xpYWJpbGl0aWVzX2Z5Ols1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX2xpYWJpbGl0aWVzX2ZxOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3R0bTpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sCmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxlYXJuaW5nc19wZXJfc2hhcmVfZnE6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGVudGVycHJpc2VfdmFsdWVfZWJpdGRhX3R0bTpbLTVlMywtMWUzLDAsMWUzLDVlM10sZW50ZXJwcmlzZV92YWx1ZV9mcTpbLTJlMTEsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxlcHNfc3VycHJpc2VfZnE6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGVwc19zdXJwcmlzZV9wZXJjZW50X2ZxOlstMzAsLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwLDMwXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMCwxZTMsNWUzLDFlNF0sbnVtYmVyX29mX2VtcGxveWVlczpbMTAwLDUwMCwxZTMsMWU0LDFlNSwxZTZdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sbGFzdF9hbm51YWxfcmV2ZW51ZTpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSxDQ0kyMDpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sQ2hhaWtpbk1vbmV5RmxvdzpbLTEsLS45LC0uOCwtLjcsLS42LC0uNSwtLjQsLS4zLC0uMiwtLjEsMCwuMSwuMiwuMywuNCwuNSwuNiwuNywuOCwuOSwxXSxNb25leUZsb3c6WzAsNSwxMCwxNSwyNSw1MCwxMDBdLCJWYWx1ZS5UcmFkZWQiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3LDFlOCw1ZTgsNzVlN119LHVrOnthdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZThdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGN1cnJlbnRfcmF0aW86WzAsNSwxMCwxNSwyMCwyNSwzMCwzNSw0MCw0NSw1MCw3NSwxMDBdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU2LDFlNyw1ZTcsM2U4LDJlOSwxZTEwLDVlMTAsMWUxMV0sZGl2aWRlbmRzX3BhaWQ6Wy0yZTExLC0xNWUxMCwtNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTFlOCwtNWU3LDBdLGdyb3NzX3Byb2ZpdDpbLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXX0saW5kaWE6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLHF1aWNrX3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTAsMTAwLDUwMF0sY2hhbmdlX2Zyb21fb3BlbjpbLTIwLC0xMCwwLDEwLDIwLDUwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsM2U4LDVlOF0sZGl2aWRlbmRzX3BhaWQ6Wy01ZTEwLC0xZTEwLC0yZTksLTNlOCwtMWU4LC01ZTcsMF0sZ3Jvc3NfcHJvZml0OlstMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU3LDNlOCwyZTksNWU5LDFlMTBdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCwxZTUsMmU1XX0sc3BhaW46e21hcmtldF9jYXBfYmFzaWM6WzFlNywzZTcsNWU3LDFlOCwzZTgsNWU4LDFlOSwxZTEwLDVlMTBdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTddLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCwxLDIsMyw0LDUsMTBdLGNoYW5nZTpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSxnYXA6Wy0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMF0scXVpY2tfcmF0aW86WzAsMSwyLDMsNCw1LDEwXSxlYml0ZGE6WzVlNSwxZTYsNWU2LDFlNyw1ZTcsMWU4LDVlOCwxZTksMmU5LDVlOSwxZTEwLDE1ZTldLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5LkQiOlswLDUsMTAsMTUsMjBdLE1vbTpbLTE1LC0xMCwtNSwwLDUsMTAsMTVdLGdvb2R3aWxsOls1ZTcsM2U4LDJlOSwxZTEwLDI1ZTldLHJldmVudWVfcGVyX2VtcGxveWVlOlsxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10sZGl2aWRlbmRzX3BhaWQ6Wy01ZTksLTJlOSwtM2U4LC0xZTgsLTVlNywwXSxncm9zc19wcm9maXQ6Wy0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMF0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdfSxydXNzaWE6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlNyw1ZTgsMWU5XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlNyw1ZTgsMWU5XSxyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDUwXSxjaGFuZ2U6Wy0zMCwtMjAsLTE1LC0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sb3BlbjpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDJlMyw1ZTNdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10saGlnaDpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDJlMyw1ZTNdLApsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzXSxnYXA6Wy0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMF0scXVpY2tfcmF0aW86WzAsMSwyLDMsNCw1LDEwLDE1LDIwXSxwcmljZV9mcmVlX2Nhc2hfZmxvd190dG06WzAsNSwxMCwxNSwyMCwyNSwzMCwzNSw0MCw0NSw1MF0sY2hhbmdlX2Zyb21fb3BlbjpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSwiVm9sYXRpbGl0eS5XIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSwiVm9sYXRpbGl0eS5NIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSwiVm9sYXRpbGl0eS5EIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSxnb29kd2lsbDpbMWU3LDVlNywzZTgsMmU5LDFlMTAsMWUxMV0scmV2ZW51ZV9wZXJfZW1wbG95ZWU6WzFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDNlN10sZGl2aWRlbmRzX3BhaWQ6Wy0xNWUxMCwtNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTFlOCwtNWU3LDBdLGdyb3NzX3Byb2ZpdDpbLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMF0sbnVtYmVyX29mX2VtcGxveWVlczpbMTAwLDUwMCwxZTMsMWU0LDFlNSw1ZTVdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMCw1MDAsMWUzXX0sYXVzdHJhbGlhOnttYXJrZXRfY2FwX2Jhc2ljOls1ZTcsM2U4LDJlOSwxZTEwLDVlMTAsMWUxMSwxNWUxMF0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSxlYml0ZGE6WzVlNSwxZTYsNWU2LDFlNyw1ZTcsMWU4LDVlOCwxZTksMmU5LDVlOSwxZTEwLDJlMTBdLGRpdmlkZW5kc19wYWlkOlstNWU5LC0yZTksLTNlOCwtNWU3LDBdfSxicmF6aWw6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyXSx2b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLDEsMiwzLDQsNSwxMCwxNSwyMCw1MF0sb3BlbjpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxjbG9zZTpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTNdLGxvdzpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSxjaGFuZ2VfZnJvbV9vcGVuOlstMjAsLTEwLDAsMTAsMjBdLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjBdLGdvb2R3aWxsOls1ZTcsM2U4LDJlOSwxZTEwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sZGl2aWRlbmRzX3BhaWQ6Wy0xZTEwLC0yZTksLTNlOCwtMWU4LC01ZTcsMF0sbmV0X2luY29tZTpbLTJlMTAsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTEwXSxncm9zc19wcm9maXQ6Wy0xZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDFlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU3LDNlOCwyZTksNWU5LDFlMTBdLHRvdGFsX2N1cnJlbnRfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDFlMTFdLHRvdGFsX3JldmVudWU6WzAsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMCwxZTNdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCwxZTVdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwXX0samFwYW46e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTIsNWUxMl0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCw1LDEwLDE1LDIwLDUwXSxjaGFuZ2U6Wy0zMCwtMjAsLTEwLDAsMTAsMjAsMzBdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxjbG9zZTpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDFlNCwxZTVdLGhpZ2g6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxnYXA6Wy0yMCwtMTAsMCwxMCwyMF0sZWJpdGRhOls1ZTUsMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDJlOSw1ZTksMWUxMCwyNWU5LDVlMTAsMWUxMSwyZTExLDVlMTFdLGNoYW5nZV9mcm9tX29wZW46Wy0yMCwtMTAsLTUsMCw1LDEwLDIwXSwiVm9sYXRpbGl0eS5XIjpbMCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5NIjpbMCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5EIjpbMCw1LDEwLDE1LDIwLDMwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsNWU3XX0sbmV3emVhbGFuZDp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTddLGF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN10scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLDEsMiwzLDQsNSwxMCwxNV0sb3BlbjpbNSwxMCwyMCw1MF0sY2xvc2U6WzUsMTAsMjAsNTBdLGhpZ2g6WzUsMTAsMjAsNTBdLGxvdzpbNSwxMCwyMCw1MF0sY3VycmVudF9yYXRpbzpbMCw1LDEwLDE1LDIwLDI1XSxxdWlja19yYXRpbzpbMCw1LDEwLDE1LDIwLDI1XSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOlstMTAsLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDUsMTBdLGViaXRkYTpbNWU1LDFlNiw1ZTYsMWU3LDVlNywxZTgsNWU4LDFlOSwyZTksNWU5LDFlMTAsMmUxMF0sY2hhbmdlX2Zyb21fb3BlbjpbLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwXSwKIlZvbGF0aWxpdHkuVyI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5NIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdLCJWb2xhdGlsaXR5LkQiOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDJdLE1vbTpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLGdvb2R3aWxsOlsyNWU2LDVlNywxZTgsMjVlNyw1ZTgsMmU5XSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sZGl2aWRlbmRzX3BhaWQ6Wy01ZTksLTJlOSwtM2U4LC01ZTcsMF0sYmFzaWNfZXBzX25ldF9pbmNvbWU6Wy01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1XSxuZXRfaW5jb21lOlstNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSw1ZTldLGdyb3NzX3Byb2ZpdDpbMCwyNWU2LDVlNywyNWU3LDVlOCwyZTksMWUxMF0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsOls1ZTcsM2U4LDJlOSwxZTEwXSx0b3RhbF9jdXJyZW50X2Fzc2V0czpbNWU3LDNlOCwyZTksMWUxMF0sdG90YWxfcmV2ZW51ZTpbMCw1ZTcsM2U4LDJlOSwxZTEwLDI1ZTldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3R0bTpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLGVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxOlstNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNV0sZWFybmluZ3NfcGVyX3NoYXJlX2ZxOlstNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNV0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCw1ZTRdLGxhc3RfYW5udWFsX2VwczpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLCJWYWx1ZS5UcmFkZWQiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTddfSx0dXJrZXk6e21hcmtldF9jYXBfYmFzaWM6WzVlNiwxZTcsNWU3LDNlOCwyZTksMWUxMCwzZTEwLDVlMTBdLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCwxLDIsMyw0LDUsMTAsMTVdLGNoYW5nZTpbLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwXSxnYXA6Wy0yMCwtMTAsLTUsMCw1LDEwLDIwXSwiVm9sYXRpbGl0eS5XIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdLCJWb2xhdGlsaXR5Lk0iOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sIlZvbGF0aWxpdHkuRCI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVmFsdWUuVHJhZGVkIjpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN119LHN3aXR6ZXJsYW5kOnt2b2x1bWU6WzVlNCwxZTUsMjVlNCw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsMjVlNCw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sY2hhbmdlOlstMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjBdfSxob25na29uZzp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTEsMmUxMSwyNWUxMCw1ZTExLDc1ZTEwLDFlMTJdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlN10sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTcsMWU4LDI1ZTddfSx0YWl3YW46e2NoYW5nZTpbLTEwLC05LC04LC03LC02LC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLCJWb2xhdGlsaXR5LlciOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sIlZvbGF0aWxpdHkuTSI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5EIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdfSxuZXRoZXJsYW5kczp7fSxiZWxnaXVtOnt9LHBvcnR1Z2FsOnt9LGZyYW5jZTp7fSxtZXhpY286e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLGNoYW5nZTpbLTMwLC0yMCwtMTUsLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSxvcGVuOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10sY2xvc2U6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzXSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10sbG93OlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM119LGNhbmFkYTp7dm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN119LGNvbG9tYmlhOnt9LHVhZTp7fSxuaWdlcmlhOnt9LHNpbmdhcG9yZTp7fSxnZXJtYW55Ont2b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDI1ZTZdfSxwYWtpc3Rhbjp7fSxwZXJ1Ont9LHBvbGFuZDp7dm9sdW1lOls1ZTQsMWU1LDJlNSw1ZTUsNzVlNCwxZTYsMmU2XX0saXRhbHk6e30sYXJnZW50aW5hOnt2b2x1bWU6WzVlNCwxZTUsMmU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN119LGlzcmFlbDp7fSxpcmVsYW5kOnt9LGVneXB0Ont9LHNyaWxhbmthOnt9LHNlcmJpYTp7fSxjaGlsZTp7fSxjaGluYTp7fSxtYWxheXNpYTp7fSxtb3JvY2NvOnt9LGtzYTp7fSxiYWhyYWluOnt9LHFhdGFyOnt9LGluZG9uZXNpYTp7fSxmaW5sYW5kOnt9LGljZWxhbmQ6e30sZGVubWFyazp7fSxyb21hbmlhOnt9LGh1bmdhcnk6e30sc3dlZGVuOnt9LHNsb3Zha2lhOnt9LGxpdGh1YW5pYTp7fSxsdXhlbWJvdXJnOnt9LGVzdG9uaWE6e30sbGF0dmlhOnt9LHZpZXRuYW06e30scnNhOnt9LHRoYWlsYW5kOnt9LHR1bmlzaWE6e30sa29yZWE6e30sa2VueWE6e30sa3V3YWl0Ont9LG5vcndheTp7fSxwaGlsaXBwaW5lczp7fSxncmVlY2U6e30sdmVuZXp1ZWxhOnt9LGN5cHJ1czp7fSxiYW5nbGFkZXNoOnt9LGF1c3RyaWE6e30sY3plY2g6e319LEQ9e2ZvcmV4OntjaGFuZ2VfYWJzOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSxjaGFuZ2U6Wy01LC0xLC0uNSwtLjQsLS4zLC0uMiwtLjEsMCwtLjEsLjIsLjMsLjQsLjUsMSw1XSxiaWQ6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSwKYXNrOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sb3BlbjpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNsb3NlOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10saGlnaDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGxvdzpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNoYW5nZV9mcm9tX29wZW46Wy01LC0yLjUsLTEsLS41LC0uNCwtLjMsLS4yLC0uMSwwLC0uMSwuMiwuMywuNCwuNSwxLDIuNSw1XSwiUGVyZi5XIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuMU0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4zTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjZNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLllURCI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLCJWb2xhdGlsaXR5LkQiOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLEFEWDpbMTAsMjAsMzAsNDAsNTAsNjAsNzAsODAsOTBdLEFUUjpbLjI1LC41LC43NSwxLDEuNSwyLDIuNSwzLDMuNSw0LDQuNSw1XSxNb206Wy0zMCwtMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjAsMzBdLENDSTIwOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXX19LE89e2NyeXB0bzp7bWFya2V0X2NhcF9jYWxjOlsxZTQsMWU1LDVlNSwxZTYsMWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLG1hcmtldF9jYXBfZGlsdXRlZF9jYWxjOlsxZTQsMWU1LDVlNSwxZTYsMWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZzpbMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDVlOSwxZTEwLDVlMTAsMWUxMV0sdG90YWxfc2hhcmVzX2RpbHV0ZWQ6WzFlNiw1ZTYsMWU3LDVlNywxZTgsNWU4LDFlOSw1ZTksMWUxMCw1ZTEwLDFlMTFdLHRvdGFsX3ZhbHVlX3RyYWRlZDpbMWU0LDFlNSw1ZTUsMWU2LDFlNywzZTgsMmU5LDFlMTAsNWUxMF0sdm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywzZTgsNWU4LDJlOV0scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLC41LDEsMS41LDIsMi41LDVdLGNoYW5nZV9hYnM6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGNoYW5nZTpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sYmlkOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sYXNrOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sb3BlbjpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNsb3NlOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10saGlnaDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGxvdzpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNoYW5nZV9mcm9tX29wZW46Wy0xMCwtNSwtNCwtMywtMiwtMSwtLjUsMCwuNSwxLDIsMyw0LDUsMTBdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sQ0NJMjA6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLCIyNGhfdm9sfDUiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XX19LE49e2NmZDp7dm9sdW1lOlsxZTMsNWUzLDFlNCw1ZTQsMWU1XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWUzLDFlNCw1ZTQsMWU1LDFlNiwxZTcsMWU4LDFlOV0scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLC4xLC4yLC4zLC40LC41LC42LC43LC44LC45LDFdLGNoYW5nZV9hYnM6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLGNoYW5nZTpbLTUsLTEsLS41LC0uNCwtLjMsLS4yLC0uMSwwLC0uMSwuMiwuMywuNCwuNSwxLDVdLGJpZDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGFzazpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLG9wZW46WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxjbG9zZTpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGhpZ2g6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxsb3c6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxjaGFuZ2VfZnJvbV9vcGVuOlstNSwtNCwtMywtMiwtMSwtLjUsMCwuNSwxLDIsMyw0LDVdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sCkNDSTIwOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXX19O2Z1bmN0aW9uIFAoZSl7c3dpdGNoKGUpe2Nhc2Uic3RvY2siOmNhc2UiZnV0dXJlcyI6cmV0dXJuIEw7Y2FzZSJmb3JleCI6cmV0dXJuIEQ7Y2FzZSJjcnlwdG8iOmNhc2UiY3J5cHRvX21rdCI6cmV0dXJuIE87Y2FzZSJjZmQiOnJldHVybiBOfXJldHVybiBMfWNvbnN0IEI9e2FtZXJpY2E6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MX19LGVhcm5pbmdzX3RoaXNfd2Vlazp7Z2V0IGVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlKCl7cmV0dXJuIG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDEyNzQ4MykpfX19LHVrOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX19LGluZGlhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOjJ9fX0sc3BhaW46e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjF9fX0scnVzc2lhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6bnVsbH0sdG9wX2xvc2Vyczp7Y2xvc2U6bnVsbH0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGF1c3RyYWxpYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOm51bGx9LHRvcF9sb3NlcnM6e2Nsb3NlOm51bGx9fSxicmF6aWw6e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjV9fX0samFwYW46e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbmV3emVhbGFuZDp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19LHVudXN1YWxfdm9sdW1lOntyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTouMn19fSx0dXJrZXk6e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjJ9fX0sc3dpdHplcmxhbmQ6e3RvcF9nYWluZXJzOntjbG9zZTpbLjEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6Wy4xLDFlNF19fSxob25na29uZzp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSx0YWl3YW46e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbmV0aGVybGFuZHM6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sYmVsZ2l1bTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxwb3J0dWdhbDp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxmcmFuY2U6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbWV4aWNvOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGNhbmFkYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxzaW5nYXBvcmU6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sZ2VybWFueTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsxLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsxLDFlNF19fSxwb2xhbmQ6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjV9fX0saXNyYWVsOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGl0YWx5Ont0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGFyZ2VudGluYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19LHVudXN1YWxfdm9sdW1lOntyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTouMn19fSxmb3JleDp7dG9wX2dhaW5lcnM6e2Nsb3NlOm51bGx9LHRvcF9sb3NlcnM6e2Nsb3NlOm51bGx9LG1vc3RfY2FwaXRhbGl6ZWQ6bnVsbCxlYXJuaW5nc190aGlzX3dlZWs6bnVsbCx2b2x1bWVfbGVhZGVyczpudWxsLG1vc3Rfdm9sYXRpbGU6eyJWb2xhdGlsaXR5LkQiOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MX19LHVudXN1YWxfdm9sdW1lOm51bGwsaGlnaF9kaXZpZGVuZDpudWxsfSxjcnlwdG86e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSxtb3N0X2NhcGl0YWxpemVkOm51bGwsCmVhcm5pbmdzX3RoaXNfd2VlazpudWxsLHZvbHVtZV9sZWFkZXJzOm51bGwsbW9zdF92b2xhdGlsZTp7IlZvbGF0aWxpdHkuRCI6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZToxfX0sdW51c3VhbF92b2x1bWU6bnVsbCxoaWdoX2RpdmlkZW5kOm51bGx9LGNoaW5hOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX19LGNoaWxlOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzEsMWU0XX19LGJhaHJhaW46e3RvcF9nYWluZXJzOntjbG9zZTpbLjAxLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsuMDEsMWU0XX19LG1hbGF5c2lhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6Wy4wMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbLjAxLDFlNF19fSxzZXJiaWE6e3RvcF9nYWluZXJzOntjbG9zZTpbLjEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6Wy4xLDFlNF19fSxrc2E6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfX0sZWd5cHQ6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfX19O2Z1bmN0aW9uICQoZSl7cmV0dXJuIGUucmVkdWNlKCgoZSx0KT0+ZS5jb25jYXQoZnVuY3Rpb24oZSl7cmV0dXJuIHhbZV0mJnhbZV0uc3RvY2tzfHxbXX0odCkpKSxbXSl9Y29uc3QgVz1bInVrIiwibHV4ZW1ib3VyZyIsIm5vcndheSIsInNsb3Zha2lhIiwic3dlZGVuIiwicGhpbGlwcGluZXMiLCJrb3JlYSJdO2NvbnN0IHE9e2luZGlhOlsiTlNFIl19O2Z1bmN0aW9uIFYoKXtyZXR1cm4gcX12YXIgSD1vKDYwMTg0MSksVT1vKDcwMDgwOSksej1vKDM2Nzk0Niksaj1vKDc1NTYyNyksRz1vKDk4NDM3NiksWD1vKDEyNTIxOCksSz1vKDgyMjQzMSk7dmFyIFk9byg1NDY0ODUpO2NvbnN0IEo9bmV3IFJlZ0V4cCgvMCskLyk7Y2xhc3MgWiBleHRlbmRzIGouUHJpY2VGb3JtYXR0ZXJ7Y29uc3RydWN0b3IoZT17fSl7aWYodm9pZCAwIT09ZS5mcmFjdGlvbmFsKXRocm93IG5ldyBFcnJvcigiRnJhY3Rpb25hbCBzaG91bGQgbm90IGJlIHVzZWQgd2l0aCB0aGlzIGZvcm1hdHRlciIpO3N1cGVyKGUpfWZvcm1hdChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHRhaWxTaXplOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om59PXQscj1lLnRvU3RyaW5nKCkscz0oMCxZLmdldE51bWJlckZvcm1hdCkodGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0fHxuKTtpZigtMSE9PXIuaW5kZXhPZigiZS0iKSl7Y29uc3QgZT1yLnNwbGl0KCJlLSIpLHQ9TnVtYmVyKGVbMF0pLG89TnVtYmVyKGVbMV0pO3JldHVybiB0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoJiZvPnRoaXMuX2ZyYWN0aW9uYWxMZW5ndGgrMT9gMCR7cy5kZWNpbWFsU2lnbn0wMGA6YCR7dDwwPyLiiJIiOiIifTAke3MuZGVjaW1hbFNpZ259JHsiMCIucmVwZWF0KG8tMSl9JHtNYXRoLmFicyhNYXRoLnJvdW5kKHQpKX1gfXtsZXQgdD1zdXBlci5mb3JtYXQoZSx7c2lnblBvc2l0aXZlOm8sdGFpbFNpemU6aSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bn0pO3QuaW5jbHVkZXMoImUiKXx8KHQ9dC5yZXBsYWNlKEosIiIpKTtjb25zdFtyLGFdPXQuc3BsaXQocy5kZWNpbWFsU2lnbik7cmV0dXJuIGEmJmEubGVuZ3RoPj0yP3Q6YCR7cn0ke3MuZGVjaW1hbFNpZ259JHsoKGF8fCIiKSsiMDAiKS5zdWJzdHJpbmcoMCwyKX1gfX19dmFyIFE9bygzMDY5MCksZWU9byg1MjgzOTYpO2NvbnN0IHRlPXtTVFJPTkdfQlVZOntrZXk6IlN0cm9uZyBCdXkiLGdldCB0aXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoic2NyZWVuZXJfcmF0aW5nIn0sbyg0ODk4NjkpKX0sZ2V0IHNob3J0VGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oNDg5ODY5KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctYnV5In0sQlVZOntrZXk6IkJ1eSIsZ2V0IHRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lcl9yYXRpbmcifSxvKDU2NTk2MikpfSxnZXQgc2hvcnRUaXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoiZmlyc3RfbGV0dGVyX29mX0J1eSJ9LG8oNDEzNTM3KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1idXkifSxTVFJPTkdfU0VMTDp7a2V5OiJTdHJvbmcgU2VsbCIsZ2V0IHRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lcl9yYXRpbmcifSxvKDY5MTU0MykpfSxnZXQgc2hvcnRUaXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoic2NyZWVuZXJfcmF0aW5nIn0sbyg2OTE1NDMpKX0sY3NzQ2xhc3M6InR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1zZWxsIn0sU0VMTDp7a2V5OiJTZWxsIixnZXQgdGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oMjU3NjQzKSl9LGdldCBzaG9ydFRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJmaXJzdF9sZXR0ZXJfb2ZfU2VsbCJ9LG8oOTkxNjk3KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxsIn0sTkVVVFJBTDp7a2V5OiJOZXV0cmFsIixnZXQgdGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oNDU5NDYzKSl9LGdldCBzaG9ydFRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJmaXJzdF9sZXR0ZXJfb2ZfTmV1dHJhbCJ9LG8oMjE3Nzg4KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1uZXV0cmFsIn19LG9lPShlLHQ9ITEsbz0hMSk9Pntjb25zdCBpPXQ/IiI6IiBpLWhpZGRlbiIKO3JldHVybiBvP2A8c3BhbiB0aXRsZT0iJHtlLnRpdGxlfSIgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwgYXBwbHktY29tbW9uLXRvb2x0aXAgJHtlLmNzc0NsYXNzfSR7aX0iPiR7ZS5zaG9ydFRpdGxlfTwvc3Bhbj5gOmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbCAke2UuY3NzQ2xhc3N9JHtpfSI+JHtlLnRpdGxlfTwvc3Bhbj5gfSxpZT17Y29tcHV0ZU1BU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLGU+dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZVJTSVNpZ25hbDooZSx0KT0+e2xldCBvPXRlLk5FVVRSQUw7cmV0dXJuIGU8MzAmJnQ8ZSYmKG89dGUuQlVZKSxlPjcwJiZ0PmUmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVTdG9jaFNpZ25hbDooZSx0LG8saSk9PntsZXQgbj10ZS5ORVVUUkFMO3JldHVybiBlPDIwJiZ0PDIwJiZlPnQmJm88aSYmKG49dGUuQlVZKSxlPjgwJiZ0PjgwJiZlPHQmJm8+aSYmKG49dGUuU0VMTCksbn0sY29tcHV0ZUNDSTIwU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTwtMTAwJiZlPnQmJihvPXRlLkJVWSksZT4xMDAmJmU8dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZUFEWFNpZ25hbDooZSx0LG8saSxuKT0+e2xldCByPXRlLk5FVVRSQUw7cmV0dXJuIGU+MjAmJmk8biYmdD5vJiYocj10ZS5CVVkpLGU+MjAmJmk+biYmdDxvJiYocj10ZS5TRUxMKSxyfSxjb21wdXRlQU9TaWduYWw6KGUsdCxvKT0+e2xldCBpPXRlLk5FVVRSQUw7cmV0dXJuKGU+MCYmdDwwfHxlPjAmJnQ+MCYmZT50JiZvPnQpJiYoaT10ZS5CVVkpLChlPDAmJnQ+MHx8ZTwwJiZ0PDAmJmU8dCYmbzx0KSYmKGk9dGUuU0VMTCksaX0sY29tcHV0ZU1vbVNpZ25hbDooZSx0KT0+e2xldCBvPXRlLk5FVVRSQUw7cmV0dXJuIGU+dCYmKG89dGUuQlVZKSxlPHQmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVNQUNEU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZT50JiYobz10ZS5CVVkpLGU8dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZUJCQnV5U2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLG99LGNvbXB1dGVCQlNlbGxTaWduYWw6KGUsdCk9PntsZXQgbz10ZS5ORVVUUkFMO3JldHVybiBlPnQmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVQU0FSU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLGU+dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZVJlY29tbWVuZFNpZ25hbDplPT57bGV0IHQ7cmV0dXJuIGU+PS0xJiZlPC0uNSYmKHQ9dGUuU1RST05HX1NFTEwpLGU+PS0uNSYmZTwtLjEmJih0PXRlLlNFTEwpLGU+PS0uMSYmZTw9LjEmJih0PXRlLk5FVVRSQUwpLGU+LjEmJmU8PS41JiYodD10ZS5CVVkpLGU+LjUmJmU8PTEmJih0PXRlLlNUUk9OR19CVVkpLHR9LGNvbXB1dGVTaW1wbGVTaWduYWw6ZT0+e2xldCB0PXRlLk5FVVRSQUw7cmV0dXJuLTE9PT1lJiYodD10ZS5TRUxMKSwxPT09ZSYmKHQ9dGUuQlVZKSx0fX0sbmU9e3Byb2Nlc3NNQVNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlTUFTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzUlNJU2lnbmFsOihlLHQsbyxpKT0+e2lmKG51bGw9PT10KXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZVJTSVNpZ25hbCh0LG8pO3JldHVybmAke2V9ICR7b2UobixpLmRpc3BsYXlTaWduYWwsITApfWB9LHByb2Nlc3NTdG9jaFNpZ25hbDooZSx0LG8saSxuLHIpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IHM9aWUuY29tcHV0ZVN0b2NoU2lnbmFsKHQsbyxpLG4pO3JldHVybmAke2V9ICR7b2UocyxyLmRpc3BsYXlTaWduYWwsITApfWB9LHByb2Nlc3NDQ0kyMFNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlQ0NJMjBTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzQURYU2lnbmFsOihlLHQsbyxpLG4scixzKT0+e2lmKG51bGw9PT10fHxudWxsPT09b3x8bnVsbD09PWkpcmV0dXJuIGU7Y29uc3QgYT1pZS5jb21wdXRlQURYU2lnbmFsKHQsbyxpLG4scik7cmV0dXJuYCR7ZX0gJHtvZShhLHMuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc0FPU2lnbmFsOihlLHQsbyxpLG4pPT57aWYobnVsbD09PXR8fG51bGw9PT1vfHxudWxsPT09aSlyZXR1cm4gZTtjb25zdCByPWllLmNvbXB1dGVBT1NpZ25hbCh0LG8saSk7cmV0dXJuYCR7ZX0gJHtvZShyLG4uZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc01vbVNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlTW9tU2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc01BQ0RTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZU1BQ0RTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzQkJCdXlTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZUJCQnV5U2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc0JCU2VsbFNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlQkJTZWxsU2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc1BTQVJTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZVBTQVJTaWduYWwodCxvKQo7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc1JlY29tbWVuZFNpZ25hbDplPT57aWYobnVsbD09PWV8fCEoMCxILmlzTnVtYmVyKShlKSlyZXR1cm4gZTtjb25zdCB0PWllLmNvbXB1dGVSZWNvbW1lbmRTaWduYWwoZSk7cmV0dXJuIHZvaWQgMD09PXQ/ZTpgJHtvZSh0LCEwKX1gfSxwcm9jZXNzU2ltcGxlU2lnbmFsOihlLHQsbyk9PntpZihudWxsPT09dHx8IiZtZGFzaDsiPT09ZSlyZXR1cm4gZTtjb25zdCBpPWllLmNvbXB1dGVTaW1wbGVTaWduYWwodCk7cmV0dXJuYCR7ZX0gJHtvZShpLG8uZGlzcGxheVNpZ25hbCwhMCl9YH19LHJlPWU9PntsZXQgdCxvO3JldHVybiBlPT09dGUuU1RST05HX1NFTEwudGl0bGUmJih0PVstMSwtLjVdLG89LS41KSxlPT09dGUuU0VMTC50aXRsZSYmKHQ9Wy0uNSwtLjFdLG89LS4xKSxlPT09dGUuTkVVVFJBTC50aXRsZSYmKHQ9Wy0uMSwuMV0pLGU9PT10ZS5CVVkudGl0bGUmJih0PVsuMSwuNV0sbz0uMSksZT09PXRlLlNUUk9OR19CVVkudGl0bGUmJih0PVsuNSwxXSxvPS41KSx7cmlnaHQ6dCxub3RFcXVhbDpvfX0sc2U9KGUsdCk9PntpZihBcnJheS5pc0FycmF5KGUpKXtjb25zdCBvPWUubWFwKChlPT5yZShlKSkpLGk9W10sbj1bXTtmb3IoY29uc3QgZSBvZiBvKXtpZih2b2lkIDAhPT1lLm5vdEVxdWFsKXtvLmZpbHRlcigodD0+dC5ub3RFcXVhbCE9PWUubm90RXF1YWwmJih0LmVxdWFsPT09ZS5ub3RFcXVhbHx8dC5yaWdodCYmKHQucmlnaHRbMF09PT1lLm5vdEVxdWFsfHx0LnJpZ2h0WzFdPT09ZS5ub3RFcXVhbCkpKSkubGVuZ3RofHxpLnB1c2goe2xlZnQ6dCxvcGVyYXRpb246Im5lcXVhbCIscmlnaHQ6ZS5ub3RFcXVhbH0pfWUucmlnaHQmJm4ucHVzaCh7bGVmdDp0LG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0OmUucmlnaHR9KSx2b2lkIDAhPT1lLmVxdWFsJiZuLnB1c2goe2xlZnQ6dCxvcGVyYXRpb246ImVxdWFsIixyaWdodDplLmVxdWFsfSl9cmV0dXJue2ZpbHRlcjppLGZpbHRlcjJBbmRQYXJ0Om4sZmlsdGVyMkZsYWc6ITB9fWNvbnN0IG89cmUoZSk7aWYoMD09PW8uZXF1YWwpcmV0dXJue2xlZnQ6dCxvcGVyYXRpb246ImVxdWFsIixyaWdodDowfTtjb25zdCBpPVt7bGVmdDp0LG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0Om8ucmlnaHR9XTtyZXR1cm4gdm9pZCAwIT09by5ub3RFcXVhbCYmaS5wdXNoKHtsZWZ0OnQsb3BlcmF0aW9uOiJuZXF1YWwiLHJpZ2h0Om8ubm90RXF1YWx9KSxpfTt2YXIgYWU9byg0NDM1NTcpO2NvbnN0IGxlPVt7aWQ6IjFtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDoxLHJlcGxhY2U6e251bWJlcjpTdHJpbmcoMSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDE8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZToxfSx7aWQ6IjVtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDo1LHJlcGxhY2U6e251bWJlcjpTdHJpbmcoNSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDU8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZTo1fSx7aWQ6IjE1bSIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gbWludXRlcyIsY291bnQ6MTUscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxNSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDE1PHN1cCBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3VwIj4ke18udChudWxsLHtjb250ZXh0OiJpbnRlcnZhbF9zaG9ydCJ9LG8oNjE4NCkpfTwvc3VwPmAsdmFsdWU6MTV9LHtpZDoiMzBtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDozMCxyZXBsYWNlOntudW1iZXI6U3RyaW5nKDMwKX19LG8oNzA0OTU4KSksc2hvcnRUaXRsZTpgMzA8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZTozMH0se2lkOiIxaCIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaG91cnMiLGNvdW50OjEscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxKX19LG8oODI0MjE4KSksc2hvcnRUaXRsZTpgMTxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDI0MDczKSl9PC9zdXA+YCx2YWx1ZTo2MH0se2lkOiIyaCIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaG91cnMiLGNvdW50OjIscmVwbGFjZTp7bnVtYmVyOlN0cmluZygyKX19LG8oODI0MjE4KSksc2hvcnRUaXRsZTpgMjxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDI0MDczKSl9PC9zdXA+YCx2YWx1ZToxMjB9LHtpZDoiNGgiLHRpdGxlOl8udChudWxsLHtwbHVyYWw6IntudW1iZXJ9IGhvdXJzIixjb3VudDo0LHJlcGxhY2U6e251bWJlcjpTdHJpbmcoNCl9fSxvKDgyNDIxOCkpLHNob3J0VGl0bGU6YDQ8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbygyNDA3MykpfTwvc3VwPmAsdmFsdWU6MjQwfSx7aWQ6IjFEIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBkYXlzIixjb3VudDoxLHJlcGxhY2U6e251bWJlcjpTdHJpbmcoMSl9fSxvKDI0NTI2MikpLHNob3J0VGl0bGU6YDE8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbygxOTE0MzIpKX08L3N1cD5gLHZhbHVlOm51bGx9LHtpZDoiMVciLAp0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSB3ZWVrcyIsY291bnQ6MSxyZXBsYWNlOntudW1iZXI6U3RyaW5nKDEpfX0sbyg4MzI3MTcpKSxzaG9ydFRpdGxlOmAxPHN1cCBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3VwIj4ke18udChudWxsLHtjb250ZXh0OiJpbnRlcnZhbF9zaG9ydCJ9LG8oMzIzNTcwKSl9PC9zdXA+YCx2YWx1ZToiMVcifSx7aWQ6IjFNIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtb250aHMiLGNvdW50OjEscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxKX19LG8oNzIwODkzKSksc2hvcnRUaXRsZTpgMTxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDg4OTEwKSl9PC9zdXA+YCx2YWx1ZToiMU0ifV0sY2U9IjFEIjtmdW5jdGlvbiBkZShlKXtyZXR1cm4gbGUuZmluZCgodD0+dC5pZD09PWUpKX1mdW5jdGlvbiBoZShlLHQpe2lmKGU9ZnVuY3Rpb24oZSl7aWYoSXRbZV0mJkl0W2VdLmFsaWFzKXJldHVybiBJdFtlXS5hbGlhcztyZXR1cm4gZX0oZSksLyhjaGFuZ2V8Y2hhbmdlX2FicykuXGR7MSwzfS8udGVzdChlKXx8SXRbZV0mJkl0W2VdLnVzZURlZmF1bHRUaW1lSW50ZXJ2YWxGcm9tRmllbGROYW1lKXJldHVybiBlLnJlcGxhY2UoIi4iLCJ8Iik7aWYoIXR8fHQ9PT1jZXx8SXRbZV0mJkl0W2VdLnVzZURlZmF1bHRUaW1lSW50ZXJ2YWwpcmV0dXJuIGU7Y29uc3Qgbz1kZSh0KTtpZihvKXtjb25zdCB0PW8udmFsdWV8fCIiO2lmKEl0W2VdJiZJdFtlXS5jdXN0b21SZXNvbHV0aW9ucyl7Y29uc3Qgbz1JdFtlXS5jdXN0b21SZXNvbHV0aW9ucztpZih0JiYtMSE9PW8uaW5kZXhPZih0LnRvU3RyaW5nKCkpKXJldHVybmAke2V9fCR7dH1gfX1yZXR1cm4gZX12YXIgdWUsX2U9byg0OTExNjUpLHBlPW8oMTY4ODI0KTtmdW5jdGlvbiBtZShlKXtyZXR1cm4gZSYmKDAsSC5pc051bWJlcikoZSk/X2UuZGF0ZUZvcm1hdEZ1bmN0aW9uc1sieXl5eS1NTS1kZCJdKCgwLHBlLmdldERhdGVGcm9tWVlZWU1NREQpKGUpLCEwKToi4oCUIn0hZnVuY3Rpb24oZSl7ZS5TdG9jaz0ic3RvY2siLGUuQ29tbW9uPSJjb21tb24iLGUuRHI9ImRyIixlLlByZWZlcnJlZD0icHJlZmVycmVkIixlLkNsb3NlZGVuZD0iY2xvc2VkZW5kIixlLkV0Zj0iZXRmIixlLkV0bj0iZXRuIixlLk11dHVhbD0ibXV0dWFsIixlLlJlaXQ9InJlaXQiLGUuVHJ1c3Q9InRydXN0IixlLlVuaXQ9InVuaXQiLGUuRnVuZD0iZnVuZCIsZS5TdHJ1Y3R1cmVkPSJzdHJ1Y3R1cmVkIixlLlNwb3Q9InNwb3QiLGUuRnV0dXJlcz0iZnV0dXJlcyIsZS5QZXJwZXR1YWw9InBlcnBldHVhbCJ9KHVlfHwodWU9e30pKTtjb25zdCBnZT17Y29tbW9uOlsiY29tbW9uIiwiZm9yZWlnbi1pc3N1ZXIiXSxzdG9jazpbImNvbW1vbiJdLGRyOlsiIiwiZm9yZWlnbi1pc3N1ZXIiXSxwcmVmZXJyZWQ6WyJwcmVmZXJyZWQiXSxmdW5kOlsiZnVuZCJdLHN0cnVjdHVyZWQ6WyIiXSxzcG90Olsic3BvdCJdLGZ1dHVyZXM6WyJmdXR1cmVzIl19LHZlPXtjbG9zZWRlbmQ6WyJjbG9zZWRlbmQiXSxldGY6WyJldGYiLCJldGYsb2RkIiwiZXRmLG90YyIsImV0ZixjZmQiXSxldG46WyJldG4iXSxtdXR1YWw6WyJtdXR1YWwiXSxyZWl0OlsicmVpdCIsInJlaXQsY2ZkIiwidHJ1c3QscmVpdCJdLHRydXN0OlsidHJ1c3QiXSx1bml0OlsidW5pdCJdfSxmZT17cGVycGV0dWFsOlsicGVycGV0dWFsIl19O2Z1bmN0aW9uIHllKGUpe2xldCB0PVtdLG89W107aWYoQXJyYXkuaXNBcnJheShlKSlmb3IoY29uc3QgaSBvZiBlKXtjb25zdFtlLG5dPVNlKGkpO3Q9Wy4uLnQsLi4uZV0sbz1bLi4ubywuLi5uXX1lbHNlW3Qsb109U2UoZSk7cmV0dXJuIG89Wy4uLm5ldyBTZXQobyldLHQubGVuZ3RoJiZvLmxlbmd0aD9bd2UoInR5cGUiLHQpLHdlKCJzdWJ0eXBlIixvKV06dC5sZW5ndGg/W3dlKCJ0eXBlIix0KV06W3dlKCJzdWJ0eXBlIixvKV19ZnVuY3Rpb24gYmUoZSl7Y29uc3QgdD1bXSxvPVtdLmNvbmNhdChlKTtmb3IoY29uc3QgZSBvZiBvKUNlKGUpJiZ0LnB1c2goe2xlZnQ6InR5cGUiLG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0OmdlW2VdfSksa2UoZSkmJnQucHVzaCh7bGVmdDoidHlwZXNwZWNzIixvcGVyYXRpb246ImhhcyIscmlnaHQ6ZmVbZV19KTtyZXR1cm57ZmlsdGVyMkZsYWc6ITAsZmlsdGVyMkFuZFBhcnQ6dCxmaWx0ZXI6W119fWZ1bmN0aW9uIFNlKGUpe2xldCB0PVtdLG89W107cmV0dXJuImV0biI9PT1lP1tbInN0cnVjdHVyZWQiXSxbImV0biJdXTooIWZ1bmN0aW9uKGUpe3JldHVybiBlIGluIHZlfShlKT8hZnVuY3Rpb24oZSl7cmV0dXJuImNvbW1vbiI9PT1lfHwicHJlZmVycmVkIj09PWV8fCJzdG9jayI9PT1lfShlKT9DZShlKT8odD1bZV0sbz1nZVtlXSk6dD1bZV06KHQucHVzaCgic3RvY2siKSxvPWdlW2VdKToodC5wdXNoKCJmdW5kIiksbz12ZVtlXSksW3Qsb10pfWZ1bmN0aW9uIHdlKGUsdCl7Y29uc3Qgbz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZWR1Y2UoKGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm5+ZS5pbmRleE9mKHQpfHxlLnB1c2godCksZX0pLFtdKX0odCksaT0xPT09by5sZW5ndGg7cmV0dXJue2xlZnQ6ZSxvcGVyYXRpb246aT8iZXF1YWwiOiJpbl9yYW5nZSIscmlnaHQ6aT9vWzBdOm99fWZ1bmN0aW9uIENlKGUpe3JldHVybiBlIGluIGdlfWZ1bmN0aW9uIGtlKGUpe3JldHVybiBlIGluIGZlfXZhciBUZT1vKDM4MDIwNyk7Y29uc3QgRWU9e25hbWU6W18udChudWxsLHZvaWQgMCxvKDgyODQyMCkpLF8udChudWxsLHZvaWQgMCxvKDgyODQyMCkpXSxkZXNjcmlwdGlvbjpbXy50KG51bGwsdm9pZCAwLG8oMzk3OTg3KSksXy50KG51bGwsdm9pZCAwLG8oMzk3OTg3KSldLGNvdW50cnk6W18udChudWxsLHZvaWQgMCxvKDQ0MzYyNykpLF8udChudWxsLHZvaWQgMCxvKDQ0MzYyNykpXSx0eXBlOltfLnQobnVsbCx2b2lkIDAsbygyODcyNDQpKSxfLnQobnVsbCx2b2lkIDAsbygyODcyNDQpKV0sCmFmdGVyX3RheF9tYXJnaW46W18udChudWxsLHZvaWQgMCxvKDE3NTE0MCkpLF8udChudWxsLHZvaWQgMCxvKDE3ODExNCkpXSxhdmVyYWdlX3ZvbHVtZTpbXy50KG51bGwsdm9pZCAwLG8oMjk3OTMwKSksXy50KG51bGwsdm9pZCAwLG8oMjUyNzc4KSldLGF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjOltfLnQobnVsbCx2b2lkIDAsbyg1NjY0MzQpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTU2MzIpKV0sYXZlcmFnZV92b2x1bWVfNjBkX2NhbGM6W18udChudWxsLHZvaWQgMCxvKDk3NzA2MikpLF8udChudWxsLHZvaWQgMCxvKDI2OTE4MSkpXSxhdmVyYWdlX3ZvbHVtZV85MGRfY2FsYzpbXy50KG51bGwsdm9pZCAwLG8oNTcyNTg0KSksXy50KG51bGwsdm9pZCAwLG8oNzk3NjA0KSldLGJhc2ljX2Vwc19uZXRfaW5jb21lOltfLnQobnVsbCx2b2lkIDAsbyg3MTYxMSkpLF8udChudWxsLHZvaWQgMCxvKDMyNzE0OSkpXSxiZXRhXzFfeWVhcjpbXy50KG51bGwsdm9pZCAwLG8oMTg2NzI2KSksXy50KG51bGwsdm9pZCAwLG8oMTgxMjI4KSldLGJldGFfM195ZWFyOltfLnQobnVsbCx2b2lkIDAsbyg4OTcwMDcpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjcwNDApKV0sYmV0YV81X3llYXI6W18udChudWxsLHZvaWQgMCxvKDEyODc5MSkpLF8udChudWxsLHZvaWQgMCxvKDMwMzU3NSkpXSxjYW5kbGVzdGljazpbXy50KG51bGwse2NvbnRleHQ6ImNhbmRsZXN0aWNrX3BhdHRlcm4ifSxvKDc1NDkyNSkpLF8udChudWxsLHtjb250ZXh0OiJjYW5kbGVzdGlja19wYXR0ZXJuIn0sbyg3NTQ5MjUpKV0sY3VycmVudF9yYXRpbzpbXy50KG51bGwsdm9pZCAwLG8oNDYwMTM5KSksXy50KG51bGwsdm9pZCAwLG8oMjQzNTA3KSldLGRlYnRfdG9fYXNzZXRzOltfLnQobnVsbCx2b2lkIDAsbyg1NDczNjIpKSxfLnQobnVsbCx2b2lkIDAsbyg1NDczNjIpKV0sZGVidF90b19lcXVpdHk6W18udChudWxsLHZvaWQgMCxvKDMwNjk2NikpLF8udChudWxsLHZvaWQgMCxvKDIzNzI0MSkpXSxkaXZpZGVuZHNfcGFpZDpbXy50KG51bGwsdm9pZCAwLG8oNTUwMjE2KSksXy50KG51bGwsdm9pZCAwLG8oMTg4MzYyKSldLGRpdmlkZW5kc19wZXJfc2hhcmVfZnE6W18udChudWxsLHZvaWQgMCxvKDI5MjIyMCkpLF8udChudWxsLHZvaWQgMCxvKDExMTgyOSkpXSxkaXZpZGVuZHNfeWllbGQ6W18udChudWxsLHZvaWQgMCxvKDk3NjYwNykpLF8udChudWxsLHZvaWQgMCxvKDQzODgxMCkpXSxkaXZpZGVuZF95aWVsZF9yZWNlbnQ6W18udChudWxsLHZvaWQgMCxvKDk3NjYwNykpLF8udChudWxsLHZvaWQgMCxvKDQzODgxMCkpXSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnk6W18udChudWxsLHZvaWQgMCxvKDI3NDcyOSkpLF8udChudWxsLHZvaWQgMCxvKDExNTMwNCkpXSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxMDM3OTEpKSxfLnQobnVsbCx2b2lkIDAsbygyNTU4NTcpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg5ODY1MTYpKSxfLnQobnVsbCx2b2lkIDAsbyg5ODY1MTYpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnE6W18udChudWxsLHZvaWQgMCxvKDgwMjU5MCkpLF8udChudWxsLHZvaWQgMCxvKDIwNTU0OCkpXSxlYXJuaW5nc19wZXJfc2hhcmVfZnE6W18udChudWxsLHZvaWQgMCxvKDkzMTA5MykpLF8udChudWxsLHZvaWQgMCxvKDkzMTA5MykpXSxlYXJuaW5nc19yZWxlYXNlX2RhdGU6W18udChudWxsLHZvaWQgMCxvKDUwMjEyOSkpLF8udChudWxsLHZvaWQgMCxvKDUwMjEyOSkpXSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTpbXy50KG51bGwsdm9pZCAwLG8oNzcwNDI0KSksXy50KG51bGwsdm9pZCAwLG8oNzcwNDI0KSldLGViaXRkYTpbXy50KG51bGwsdm9pZCAwLG8oNTQwOTkpKSxfLnQobnVsbCx2b2lkIDAsbyg2OTk3KSldLGVudGVycHJpc2VfdmFsdWVfZWJpdGRhX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oMTExMTI1KSksXy50KG51bGwsdm9pZCAwLG8oNzc2NDY0KSldLGVudGVycHJpc2VfdmFsdWVfZnE6W18udChudWxsLHZvaWQgMCxvKDUzMTI4OCkpLF8udChudWxsLHZvaWQgMCxvKDI2MzIzMCkpXSxleGNoYW5nZTpbXy50KG51bGwsdm9pZCAwLG8oODI2NjA3KSksXy50KG51bGwsdm9pZCAwLG8oODI2NjA3KSldLGZyZWVfY2FzaF9mbG93X21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oNTMxMTczKSksXy50KG51bGwsdm9pZCAwLG8oNTMxMTczKSldLGZyZWVfY2FzaF9mbG93X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDkyNDU1MykpLF8udChudWxsLHZvaWQgMCxvKDkyNDU1MykpXSxncm9zc19tYXJnaW46W18udChudWxsLHZvaWQgMCxvKDY2MTg5MykpLF8udChudWxsLHZvaWQgMCxvKDM3ODM5OSkpXSxncm9zc19wcm9maXQ6W18udChudWxsLHZvaWQgMCxvKDg3MDI2MikpLF8udChudWxsLHZvaWQgMCxvKDg3MDI2MikpXSxncm9zc19wcm9maXRfZnE6W18udChudWxsLHZvaWQgMCxvKDQyNjY1MikpLF8udChudWxsLHZvaWQgMCxvKDQyNjY1MikpXSxpbmRleDpbXy50KG51bGwsdm9pZCAwLG8oMTIyOTAwKSksXy50KG51bGwsdm9pZCAwLG8oMTIyOTAwKSldLGluZHVzdHJ5OltfLnQobnVsbCx2b2lkIDAsbyg4Nzc2MSkpLF8udChudWxsLHZvaWQgMCxvKDg3NzYxKSldLGxhc3RfYW5udWFsX2VwczpbXy50KG51bGwsdm9pZCAwLG8oMTEyMjc4KSksXy50KG51bGwsdm9pZCAwLG8oMTEyMjc4KSldLGxhc3RfYW5udWFsX3JldmVudWU6W18udChudWxsLHZvaWQgMCxvKDI4NTMzMykpLF8udChudWxsLHZvaWQgMCxvKDgzMTc4MSkpXSxsb25nX3Rlcm1fY2FwaXRhbDpbXy50KG51bGwsdm9pZCAwLG8oNTQ4MzUyKSksXy50KG51bGwsdm9pZCAwLG8oNTQ4MzUyKSldLG1hcmtldF9jYXBfYmFzaWM6W18udChudWxsLHZvaWQgMCxvKDI3ODYxNCkpLF8udChudWxsLHZvaWQgMCxvKDI2NTYyKSldLG1hcmtldF9jYXBfY2FsYzpbXy50KG51bGwsdm9pZCAwLG8oMjc4NjE0KSksXy50KG51bGwsdm9pZCAwLG8oMjY1NjIpKV0sCm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjOltfLnQobnVsbCx2b2lkIDAsbyg2ODczMzIpKSxfLnQobnVsbCx2b2lkIDAsbygyMTQyNzkpKV0sbmV0X2RlYnQ6W18udChudWxsLHZvaWQgMCxvKDUyNjY5OCkpLF8udChudWxsLHZvaWQgMCxvKDg0NTQ5NikpXSxuZXRfaW5jb21lOltfLnQobnVsbCx2b2lkIDAsbygxMzE2MzMpKSxfLnQobnVsbCx2b2lkIDAsbygxODI0MzcpKV0sbnVtYmVyX29mX2VtcGxveWVlczpbXy50KG51bGwsdm9pZCAwLG8oMTY0MDQyKSksXy50KG51bGwsdm9pZCAwLG8oNjc3ODEzKSldLG51bWJlcl9vZl9zaGFyZWhvbGRlcnM6W18udChudWxsLHZvaWQgMCxvKDU3OTQwMykpLF8udChudWxsLHZvaWQgMCxvKDE2MTE1MikpXSxvcGVuX3ByaWNlOltfLnQobnVsbCx2b2lkIDAsbygzMjEwMjkpKSxfLnQobnVsbCx2b2lkIDAsbyg5Nzc4MSkpXSxvcGVyYXRpbmdfbWFyZ2luOltfLnQobnVsbCx2b2lkIDAsbyg4MDA0MzMpKSxfLnQobnVsbCx2b2lkIDAsbygzMzI5OSkpXSxwcmVfdGF4X21hcmdpbjpbXy50KG51bGwsdm9pZCAwLG8oODI2MTE1KSksXy50KG51bGwsdm9pZCAwLG8oNDIzMDUpKV0scHJlZmVycmVkX2RpdmlkZW5kczpbXy50KG51bGwsdm9pZCAwLG8oNDkzMjAwKSksXy50KG51bGwsdm9pZCAwLG8oOTIyNzE0KSldLHByZXZfY2xvc2VfcHJpY2U6W18udChudWxsLHZvaWQgMCxvKDM2NjI0OCkpLF8udChudWxsLHZvaWQgMCxvKDgzMjEyMykpXSxwcmljZV81Ml93ZWVrX2hpZ2g6W18udChudWxsLHZvaWQgMCxvKDE5MzI1OSkpLF8udChudWxsLHZvaWQgMCxvKDkwMDM3NSkpXSxwcmljZV81Ml93ZWVrX2xvdzpbXy50KG51bGwsdm9pZCAwLG8oNjY5MzA4KSksXy50KG51bGwsdm9pZCAwLG8oOTYyNjU0KSldLHByaWNlX2Jvb2tfcmF0aW86W18udChudWxsLHZvaWQgMCxvKDE3MTM5MSkpLF8udChudWxsLHZvaWQgMCxvKDYyMjE1KSldLHByaWNlX2Vhcm5pbmdzX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oOTE3NzE1KSksXy50KG51bGwsdm9pZCAwLG8oMjEzMjQ4KSldLHByaWNlX3BlcmNlbnRfY2hhbmdlXzFfd2VlazpbXy50KG51bGwsdm9pZCAwLG8oOTg0MTQpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjc0MjgpKV0scHJpY2VfcGVyY2VudF9jaGFuZ2VfNF93ZWVrOltfLnQobnVsbCx2b2lkIDAsbyg2MzYzNTEpKSxfLnQobnVsbCx2b2lkIDAsbygzOTA2NTIpKV0scHJpY2VfcGVyY2VudF9jaGFuZ2VfNTJfd2VlazpbXy50KG51bGwsdm9pZCAwLG8oODM0MTIxKSksXy50KG51bGwsdm9pZCAwLG8oMjM2Nzk4KSldLHByaWNlX3JldmVudWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbygzMTMyNDYpKSxfLnQobnVsbCx2b2lkIDAsbyg2MzE0MTApKV0scHJpY2Vfc2FsZXNfcmF0aW86W18udChudWxsLHZvaWQgMCxvKDgxOTM3MSkpLF8udChudWxsLHZvaWQgMCxvKDI3OTAxMCkpXSxxdWlja19yYXRpbzpbXy50KG51bGwsdm9pZCAwLG8oNDAzMTMxKSksXy50KG51bGwsdm9pZCAwLG8oNTkyOTgxKSldLHJldHVybl9vZl9pbnZlc3RlZF9jYXBpdGFsX3BlcmNlbnRfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxNzg1MTMpKSxfLnQobnVsbCx2b2lkIDAsbygzODk1MjUpKV0scmV0dXJuX29uX2Fzc2V0czpbXy50KG51bGwsdm9pZCAwLG8oMTg1MTAzKSksXy50KG51bGwsdm9pZCAwLG8oNTg5OTY0KSldLHJldHVybl9vbl9lcXVpdHk6W18udChudWxsLHZvaWQgMCxvKDExOTUyMykpLF8udChudWxsLHZvaWQgMCxvKDE3MDk1MikpXSxyZXR1cm5fb25faW52ZXN0ZWRfY2FwaXRhbDpbXy50KG51bGwsdm9pZCAwLG8oODA5NzI2KSksXy50KG51bGwsdm9pZCAwLG8oMzg5NTI1KSldLHJldmVudWVfcGVyX2VtcGxveWVlOltfLnQobnVsbCx2b2lkIDAsbyg5NDIwMjUpKSxfLnQobnVsbCx2b2lkIDAsbyg3OTM3NTApKV0sc2VjdG9yOltfLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKSxfLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKV0sc3VibWFya2V0OltfLnQobnVsbCx2b2lkIDAsbygzNzA2ODcpKSxfLnQobnVsbCx2b2lkIDAsbygzNzA2ODcpKV0saXNfcHJpbWFyeTpbXy50KG51bGwsdm9pZCAwLG8oODE4MjczKSksXy50KG51bGwsdm9pZCAwLG8oODE4MjczKSldLGFjdGl2ZV9zeW1ib2w6W18udChudWxsLHZvaWQgMCxvKDQ0OTA2MCkpLF8udChudWxsLHZvaWQgMCxvKDQ0OTA2MCkpXSxlcHNfc3VycHJpc2VfZnE6W18udChudWxsLHZvaWQgMCxvKDI2OTk1NSkpLF8udChudWxsLHZvaWQgMCxvKDI2OTk1NSkpXSxlcHNfc3VycHJpc2VfcGVyY2VudF9mcTpbXy50KG51bGwsdm9pZCAwLG8oNTI0ODE3KSksXy50KG51bGwsdm9pZCAwLG8oNTI0ODE3KSldLHRvdGFsX2Fzc2V0czpbXy50KG51bGwsdm9pZCAwLG8oNDAyMikpLF8udChudWxsLHZvaWQgMCxvKDY2Mzg2MCkpXSx0b3RhbF9jYXBpdGFsOltfLnQobnVsbCx2b2lkIDAsbyg4MTIzMzUpKSxfLnQobnVsbCx2b2lkIDAsbygxNDk1MDMpKV0sdG90YWxfY3VycmVudF9hc3NldHM6W18udChudWxsLHZvaWQgMCxvKDU3OTEwOSkpLF8udChudWxsLHZvaWQgMCxvKDg4NDEyMykpXSx0b3RhbF9kZWJ0OltfLnQobnVsbCx2b2lkIDAsbyg1Njg5MzQpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTUyMTApKV0sdG90YWxfcmV2ZW51ZTpbXy50KG51bGwsdm9pZCAwLG8oNDM2NDc0KSksXy50KG51bGwsdm9pZCAwLG8oNTY4MDkxKSldLHRvdGFsX2xpYWJpbGl0aWVzX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg2MDY5MjApKSxfLnQobnVsbCx2b2lkIDAsbyg4Mjk2NTYpKV0sdG90YWxfbGlhYmlsaXRpZXNfZnE6W18udChudWxsLHZvaWQgMCxvKDMzNDE3MSkpLF8udChudWxsLHZvaWQgMCxvKDE5NDA5MSkpXSx0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmdfZnVuZGFtZW50YWw6W18udChudWxsLHZvaWQgMCxvKDU0MzA5NSkpLF8udChudWxsLHZvaWQgMCxvKDM3OTkzMikpXSx2b2x1bWU6W18udChudWxsLHZvaWQgMCxvKDI0NzA2MikpLF8udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oNTk2MTY4KSldLHJlbGF0aXZlX3ZvbHVtZTpbXy50KG51bGwsdm9pZCAwLG8oNzgzMTkzKSksXy50KG51bGwsdm9pZCAwLG8oMjUwNjU0KSldLApyZWxhdGl2ZV92b2x1bWVfYXRfdGltZTpbXy50KG51bGwsdm9pZCAwLG8oMTkzMDY2KSksXy50KG51bGwsdm9pZCAwLG8oNjk5MDkwKSldLGNoYW5nZV9hYnM6W18udChudWxsLHZvaWQgMCxvKDY3MzQ4NykpLF8udChudWxsLHZvaWQgMCxvKDIwNTgzNCkpXSxjaGFuZ2U6W18udChudWxsLHZvaWQgMCxvKDk2OTQ3MikpLF8udChudWxsLHZvaWQgMCxvKDIxMDgxNSkpXSwiY2hhbmdlLjEiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDE1NzUxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDE1NzUxKSl9KV0sImNoYW5nZV9hYnMuMSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg0MTU3NTEpKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg0MTU3NTEpKX0pXSwiY2hhbmdlLjUiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oODAxNDgwKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oODAxNDgwKSl9KV0sImNoYW5nZV9hYnMuNSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MDE0ODApKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MDE0ODApKX0pXSwiY2hhbmdlLjE1IjpbXy50KG51bGwsdm9pZCAwLG8oNzkwOTQ5KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSksXy50KG51bGwsdm9pZCAwLG8oNjAyNjAxKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSldLCJjaGFuZ2VfYWJzLjE1IjpbXy50KG51bGwsdm9pZCAwLG8oNjU3MTE0KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSksXy50KG51bGwsdm9pZCAwLG8oMjk1NjIwKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSldLCJjaGFuZ2UuNjAiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KV0sImNoYW5nZV9hYnMuNjAiOltfLnQobnVsbCx2b2lkIDAsbyg2NTcxMTQpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyOTU2MjApKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KV0sImNoYW5nZS4yNDAiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNTUyNzQzKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNTUyNzQzKSl9KV0sImNoYW5nZV9hYnMuMjQwIjpbXy50KG51bGwsdm9pZCAwLG8oNjU3MTE0KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDU1Mjc0MykpfSksXy50KG51bGwsdm9pZCAwLG8oMjk1NjIwKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDU1Mjc0MykpfSldLCJjaGFuZ2UuMVciOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KV0sImNoYW5nZV9hYnMuMVciOltfLnQobnVsbCx2b2lkIDAsbyg2NTcxMTQpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyOTU2MjApKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KV0sImNoYW5nZS4xTSI6W18udChudWxsLHZvaWQgMCxvKDc5MDk0OSkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pLF8udChudWxsLHZvaWQgMCxvKDYwMjYwMSkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pXSwiY2hhbmdlX2Ficy4xTSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pXSxjdXJyZW5jeTpbXy50KG51bGwsdm9pZCAwLG8oMTkwNjk2KSksXy50KG51bGwsdm9pZCAwLG8oMTkwNjk2KSldLHByZV9jaGFuZ2U6W18udChudWxsLHZvaWQgMCxvKDMyNTcxMykpLF8udChudWxsLHZvaWQgMCxvKDIwODg0NikpXSxwb3N0X2NoYW5nZTpbXy50KG51bGwsdm9pZCAwLG8oMzk5OTY4KSksXy50KG51bGwsdm9pZCAwLG8oNjczNzAzKSldLGJpZDpbXy50KG51bGwsdm9pZCAwLG8oNDI5NTA4KSksXy50KG51bGwsdm9pZCAwLG8oNDI5NTA4KSldLGFzazpbXy50KG51bGwsdm9pZCAwLG8oNjcyNzEwKSksXy50KG51bGwsdm9pZCAwLG8oNjcyNzEwKSldLGNsb3NlOltfLnQobnVsbCx2b2lkIDAsbyg4MjA4NjYpKSxfLnQobnVsbCx2b2lkIDAsbyg4MjA4NjYpKV0sb3BlbjpbXy50KG51bGwsdm9pZCAwLG8oOTc3ODEpKSxfLnQobnVsbCx2b2lkIDAsbyg5Nzc4MSkpXSxoaWdoOltfLnQobnVsbCx2b2lkIDAsbyg4NDU1NjMpKSxfLnQobnVsbCx2b2lkIDAsbyg4NDU1NjMpKV0sCmxvdzpbXy50KG51bGwsdm9pZCAwLG8oODg4Njc4KSksXy50KG51bGwsdm9pZCAwLG8oODg4Njc4KSldLGdhcDpbXy50KG51bGwsdm9pZCAwLG8oOTMwMDY5KSksXy50KG51bGwsdm9pZCAwLG8oOTMwMDY5KSldLHByaWNlX2Vhcm5pbmdzX3RvX2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDQyNDU0NSkpLF8udChudWxsLHZvaWQgMCxvKDEyMTk2OSkpXSxwcmljZV9zYWxlczpbXy50KG51bGwsdm9pZCAwLG8oMjYzMzM1KSksXy50KG51bGwsdm9pZCAwLG8oMjYzMzM1KSldLHByaWNlX2Jvb2tfZnE6W18udChudWxsLHZvaWQgMCxvKDc5NzQ1MCkpLF8udChudWxsLHZvaWQgMCxvKDYxMTQ1OSkpXSxwcmljZV9mcmVlX2Nhc2hfZmxvd190dG06W18udChudWxsLHZvaWQgMCxvKDMwNjM1NikpLF8udChudWxsLHZvaWQgMCxvKDgxNjk0NCkpXSxmbG9hdF9zaGFyZXNfb3V0c3RhbmRpbmc6W18udChudWxsLHZvaWQgMCxvKDE4ODU3NykpLF8udChudWxsLHZvaWQgMCxvKDcyMzA4OCkpXSxmcmVlX2Nhc2hfZmxvdzpbXy50KG51bGwsdm9pZCAwLG8oMTY3Njg4KSksXy50KG51bGwsdm9pZCAwLG8oMTQ0NjMpKV0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nOltfLnQobnVsbCx2b2lkIDAsbyg2MDUxNTkpKSxfLnQobnVsbCx2b2lkIDAsbyg2MDUxNTkpKV0sdG90YWxfc2hhcmVzX2RpbHV0ZWQ6W18udChudWxsLHZvaWQgMCxvKDU0MzUzMikpLF8udChudWxsLHZvaWQgMCxvKDU0MzUzMikpXSx0b3RhbF92YWx1ZV90cmFkZWQ6W18udChudWxsLHZvaWQgMCxvKDUwOTY3OSkpLF8udChudWxsLHZvaWQgMCxvKDIzNDA3MSkpXSxjaGFuZ2VfZnJvbV9vcGVuOltfLnQobnVsbCx2b2lkIDAsbyg5MzYwMzQpKSxfLnQobnVsbCx2b2lkIDAsbyg4NTM4OTUpKV0sY2hhbmdlX2Zyb21fb3Blbl9hYnM6W18udChudWxsLHZvaWQgMCxvKDM4Mjc1MSkpLF8udChudWxsLHZvaWQgMCxvKDYzMzQ1NCkpXSwiUGVyZi5XIjpbXy50KG51bGwsdm9pZCAwLG8oODQ2NjE0KSksXy50KG51bGwsdm9pZCAwLG8oNzgxOTkzKSldLCJQZXJmLjFNIjpbXy50KG51bGwsdm9pZCAwLG8oODIyODc1KSksXy50KG51bGwsdm9pZCAwLG8oNDY3OTgyKSldLCJQZXJmLjNNIjpbXy50KG51bGwsdm9pZCAwLG8oNjY0MjQyKSksXy50KG51bGwsdm9pZCAwLG8oNzc5MDgzKSldLCJQZXJmLjZNIjpbXy50KG51bGwsdm9pZCAwLG8oOTYwNjYzKSksXy50KG51bGwsdm9pZCAwLG8oNzY4Nzg2KSldLCJQZXJmLlkiOltfLnQobnVsbCx2b2lkIDAsbygxMjk4MDkpKSxfLnQobnVsbCx2b2lkIDAsbygxODM1NjQpKV0sIlBlcmYuWVREIjpbXy50KG51bGwsdm9pZCAwLG8oODUzMTAwKSksXy50KG51bGwsdm9pZCAwLG8oNjQ3NDcxKSldLCJQZXJmLjVZIjpbXy50KG51bGwsdm9pZCAwLG8oOTM1ODE5KSksXy50KG51bGwsdm9pZCAwLG8oNDkwNTc3KSldLCJQZXJmLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDQ4NjMwMikpLF8udChudWxsLHZvaWQgMCxvKDgxNTQpKV0sIlZvbGF0aWxpdHkuVyI6W18udChudWxsLHZvaWQgMCxvKDE2MjI2NSkpLF8udChudWxsLHZvaWQgMCxvKDExMTU0OCkpXSwiVm9sYXRpbGl0eS5NIjpbXy50KG51bGwsdm9pZCAwLG8oNTYzMzYzKSksXy50KG51bGwsdm9pZCAwLG8oOTI5NTk0KSldLCJWb2xhdGlsaXR5LkQiOltfLnQobnVsbCx2b2lkIDAsbygzMzgzOTIpKSxfLnQobnVsbCx2b2lkIDAsbygzMzgzOTIpKV0sUlNJOltfLnQobnVsbCx2b2lkIDAsbyg4MTM0MzIpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTY2NzQpKV0sUlNJNzpbXy50KG51bGwsdm9pZCAwLG8oNDIzNDYpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjg2NTkpKV0sQURYOltfLnQobnVsbCx2b2lkIDAsbyg1NzgxOTgpKSxfLnQobnVsbCx2b2lkIDAsbyg4MDMwMjQpKV0sIkFEWCtESSI6W18udChudWxsLHZvaWQgMCxvKDc2NzgyNSkpLF8udChudWxsLHtjb250ZXh0OiJQb3NpdGl2ZV9EaXJlY3Rpb25hbF9JbmRpY2F0b3Jfc2hvcnRfdGl0bGUifSxvKDgxOTA0MikpXSwiQURYLURJIjpbXy50KG51bGwsdm9pZCAwLG8oMTc0MzA5KSksXy50KG51bGwse2NvbnRleHQ6Ik5lZ2F0aXZlX0RpcmVjdGlvbmFsX0luZGljYXRvcl9zaG9ydF90aXRsZSJ9LG8oMjc0ODc0KSldLEFUUjpbXy50KG51bGwsdm9pZCAwLG8oMzE1NDYyKSksXy50KG51bGwsdm9pZCAwLG8oOTYwMDY5KSldLE1vbTpbXy50KG51bGwsdm9pZCAwLG8oNTMxNTAyKSksXy50KG51bGwsdm9pZCAwLG8oNDI1MzAxKSldLCJIaWdoLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDkzMDU3OCkpLF8udChudWxsLHZvaWQgMCxvKDkzMDU3OCkpXSwiTG93LkFsbCI6W18udChudWxsLHZvaWQgMCxvKDI1MzQ3MSkpLF8udChudWxsLHZvaWQgMCxvKDI1MzQ3MSkpXSwiSGlnaC42TSI6W18udChudWxsLHZvaWQgMCxvKDk3ODc2MCkpLF8udChudWxsLHZvaWQgMCxvKDk3ODc2MCkpXSwiTG93LjZNIjpbXy50KG51bGwsdm9pZCAwLG8oNjAzNTA5KSksXy50KG51bGwsdm9pZCAwLG8oNjAzNTA5KSldLCJIaWdoLjNNIjpbXy50KG51bGwsdm9pZCAwLG8oOTkwNzcpKSxfLnQobnVsbCx2b2lkIDAsbyg5OTA3NykpXSwiTG93LjNNIjpbXy50KG51bGwsdm9pZCAwLG8oODg2OTE4KSksXy50KG51bGwsdm9pZCAwLG8oODg2OTE4KSldLCJIaWdoLjFNIjpbXy50KG51bGwsdm9pZCAwLG8oMTYxNTgzKSksXy50KG51bGwsdm9pZCAwLG8oMTYxNTgzKSldLCJMb3cuMU0iOltfLnQobnVsbCx2b2lkIDAsbygyMDA5MjApKSxfLnQobnVsbCx2b2lkIDAsbygyMDA5MjApKV0sRU1BNTpbXy50KG51bGwsdm9pZCAwLG8oNjM0NTA2KSkuZm9ybWF0KHtudW1iZXI6IjUifSksXy50KG51bGwsdm9pZCAwLG8oNTExODQ0KSldLEVNQTEwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMTAifSksXy50KG51bGwsdm9pZCAwLG8oMTA3OTA1KSldLEVNQTIwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMjAifSksXy50KG51bGwsdm9pZCAwLG8oMTQzNjMpKV0sRU1BMzA6W18udChudWxsLHZvaWQgMCxvKDYzNDUwNikpLmZvcm1hdCh7bnVtYmVyOiIzMCIKfSksXy50KG51bGwsdm9pZCAwLG8oOTU0ODU5KSldLEVNQTUwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiNTAifSksXy50KG51bGwsdm9pZCAwLG8oNTM4MDE4KSldLEVNQTEwMDpbXy50KG51bGwsdm9pZCAwLG8oNjM0NTA2KSkuZm9ybWF0KHtudW1iZXI6IjEwMCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg2NDk2NDQpKV0sRU1BMjAwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMjAwIn0pLF8udChudWxsLHZvaWQgMCxvKDYwNTQzOCkpXSxTTUE1OltfLnQobnVsbCx2b2lkIDAsbyg0ODY1NzIpKS5mb3JtYXQoe251bWJlcjoiNSJ9KSxfLnQobnVsbCx2b2lkIDAsbyg2NTk1NjApKV0sU01BMTA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIxMCJ9KSxfLnQobnVsbCx2b2lkIDAsbygxMzQwODUpKV0sU01BMjA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIyMCJ9KSxfLnQobnVsbCx2b2lkIDAsbygzOTgwMzkpKV0sU01BMzA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIzMCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg0NTc1NDMpKV0sU01BNTA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiI1MCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg1NTY0ODYpKV0sU01BMTAwOltfLnQobnVsbCx2b2lkIDAsbyg0ODY1NzIpKS5mb3JtYXQoe251bWJlcjoiMTAwIn0pLF8udChudWxsLHZvaWQgMCxvKDMyODc4NCkpXSxTTUEyMDA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIyMDAifSksXy50KG51bGwsdm9pZCAwLG8oNjgwNzQpKV0sIlN0b2NoLksiOltfLnQobnVsbCx2b2lkIDAsbygyMjA3MjUpKSxfLnQobnVsbCx2b2lkIDAsbyg1NTc4MDApKV0sIlN0b2NoLkQiOltfLnQobnVsbCx2b2lkIDAsbygzMTc4MzIpKSxfLnQobnVsbCx2b2lkIDAsbyg0MDYyOTgpKV0sIk1BQ0QubWFjZCI6W18udChudWxsLHZvaWQgMCxvKDI0NzU2MCkpLF8udChudWxsLHZvaWQgMCxvKDk0MDk0MykpXSwiTUFDRC5zaWduYWwiOltfLnQobnVsbCx2b2lkIDAsbyg5NTA2NjIpKSxfLnQobnVsbCx2b2lkIDAsbygzMjc5MTEpKV0sIkFyb29uLlVwIjpbXy50KG51bGwsdm9pZCAwLG8oNDczODUpKSxfLnQobnVsbCx2b2lkIDAsbygxNTgzOTYpKV0sIkFyb29uLkRvd24iOltfLnQobnVsbCx2b2lkIDAsbygyMTM3MDMpKSxfLnQobnVsbCx2b2lkIDAsbyg3NjU3NjUpKV0sIkJCLnVwcGVyIjpbXy50KG51bGwsdm9pZCAwLG8oOTk1NjMxKSksXy50KG51bGwsdm9pZCAwLG8oOTEzOTkyKSldLCJCQi5sb3dlciI6W18udChudWxsLHZvaWQgMCxvKDE5NjY5MSkpLF8udChudWxsLHZvaWQgMCxvKDQzMDUzMCkpXSxnb29kd2lsbDpbXy50KG51bGwsdm9pZCAwLG8oNzczOTI2KSksXy50KG51bGwsdm9pZCAwLG8oNzczOTI2KSldLGRlYnRfdG9fZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbygzMTUwOTIpKSxfLnQobnVsbCx2b2lkIDAsbygyNTk2NSkpXSxDQ0kyMDpbXy50KG51bGwsdm9pZCAwLG8oNjE3NDI3KSksXy50KG51bGwsdm9pZCAwLG8oNzUzMTYpKV0sIkRvbmNoQ2gyMC5VcHBlciI6W18udChudWxsLHZvaWQgMCxvKDM3ODAyNCkpLF8udChudWxsLHZvaWQgMCxvKDYxNzQ2OCkpXSwiRG9uY2hDaDIwLkxvd2VyIjpbXy50KG51bGwsdm9pZCAwLG8oNjA4NjU2KSksXy50KG51bGwsdm9pZCAwLG8oMzUxOTYzKSldLEh1bGxNQTk6W18udChudWxsLHZvaWQgMCxvKDc2MDcxOSkpLF8udChudWxsLHZvaWQgMCxvKDczOTIwMykpXSxBTzpbXy50KG51bGwsdm9pZCAwLG8oMzQ0NTUyKSksXy50KG51bGwsdm9pZCAwLG8oNzk5NTUzKSldLCJQaXZvdC5NLkNsYXNzaWMuUzMiOltfLnQobnVsbCx2b2lkIDAsbygxMzA0NjcpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjA4NTMpKV0sIlBpdm90Lk0uQ2xhc3NpYy5TMiI6W18udChudWxsLHZvaWQgMCxvKDUxOTAyNykpLF8udChudWxsLHZvaWQgMCxvKDQ0MTg0MSkpXSwiUGl2b3QuTS5DbGFzc2ljLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oNDk1MzE3KSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGUiOltfLnQobnVsbCx2b2lkIDAsbyg1NjU1MjYpKSxfLnQobnVsbCx2b2lkIDAsbyg3MzY2MjcpKV0sIlBpdm90Lk0uQ2xhc3NpYy5SMSI6W18udChudWxsLHZvaWQgMCxvKDYyMjgzNCkpLF8udChudWxsLHZvaWQgMCxvKDEyMzgwNSkpXSwiUGl2b3QuTS5DbGFzc2ljLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oNTE3MzAwKSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkNsYXNzaWMuUjMiOltfLnQobnVsbCx2b2lkIDAsbyg3NzE1NikpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLkZpYm9uYWNjaS5TMyI6W18udChudWxsLHZvaWQgMCxvKDcxMjU3NikpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwiUGl2b3QuTS5GaWJvbmFjY2kuUzIiOltfLnQobnVsbCx2b2lkIDAsbygyMDI1ODcpKSxfLnQobnVsbCx2b2lkIDAsbyg0NDE4NDEpKV0sIlBpdm90Lk0uRmlib25hY2NpLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oMzg5Nzc4KSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDg4NTYzNCkpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5GaWJvbmFjY2kuUjEiOltfLnQobnVsbCx2b2lkIDAsbygzNzQ0MDYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIlBpdm90Lk0uRmlib25hY2NpLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oMTg3MjE1KSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkZpYm9uYWNjaS5SMyI6W18udChudWxsLHZvaWQgMCxvKDU4MTAxMikpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5TMyI6W18udChudWxsLHZvaWQgMCxvKDk0Mjk3NykpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwKIlBpdm90Lk0uQ2FtYXJpbGxhLlMyIjpbXy50KG51bGwsdm9pZCAwLG8oNzU1Nzg2KSksXy50KG51bGwsdm9pZCAwLG8oNDQxODQxKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5TMSI6W18udChudWxsLHZvaWQgMCxvKDczNjM3MSkpLF8udChudWxsLHZvaWQgMCxvKDIyODI5KSldLCJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGUiOltfLnQobnVsbCx2b2lkIDAsbyg4NzQ0NjkpKSxfLnQobnVsbCx2b2lkIDAsbyg3MzY2MjcpKV0sIlBpdm90Lk0uQ2FtYXJpbGxhLlIxIjpbXy50KG51bGwsdm9pZCAwLG8oOTM5ODg3KSksXy50KG51bGwsdm9pZCAwLG8oMTIzODA1KSldLCJQaXZvdC5NLkNhbWFyaWxsYS5SMiI6W18udChudWxsLHZvaWQgMCxvKDc1NDk0KSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5SMyI6W18udChudWxsLHZvaWQgMCxvKDE0NjQ5MykpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLldvb2RpZS5TMyI6W18udChudWxsLHZvaWQgMCxvKDMxOTEwNikpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwiUGl2b3QuTS5Xb29kaWUuUzIiOltfLnQobnVsbCx2b2lkIDAsbyg5MzgzNjEpKSxfLnQobnVsbCx2b2lkIDAsbyg0NDE4NDEpKV0sIlBpdm90Lk0uV29vZGllLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oMTI1NTUyKSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uV29vZGllLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDE1OTA5MikpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5Xb29kaWUuUjEiOltfLnQobnVsbCx2b2lkIDAsbygyNjg3MTYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIlBpdm90Lk0uV29vZGllLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oODE1MjUpKSxfLnQobnVsbCx2b2lkIDAsbyg1OTQ0MDEpKV0sIlBpdm90Lk0uV29vZGllLlIzIjpbXy50KG51bGwsdm9pZCAwLG8oODk0MzM0KSksXy50KG51bGwsdm9pZCAwLG8oMTM0MTMpKV0sIlBpdm90Lk0uRGVtYXJrLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oODgxNzIwKSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uRGVtYXJrLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDQ5MTU0MCkpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5EZW1hcmsuUjEiOltfLnQobnVsbCx2b2lkIDAsbyg5NDEyMjQpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIktsdENobmwudXBwZXIiOltfLnQobnVsbCx2b2lkIDAsbygzMDU4ODUpKSxfLnQobnVsbCx2b2lkIDAsbygyNDA3MTUpKV0sIktsdENobmwubG93ZXIiOltfLnQobnVsbCx2b2lkIDAsbyg2Nzk1NDYpKSxfLnQobnVsbCx2b2lkIDAsbygyNTc3NjApKV0sIlAuU0FSIjpbXy50KG51bGwsdm9pZCAwLG8oOTQxMDI4KSksXy50KG51bGwsdm9pZCAwLG8oMTE0MDk5KSldLCJWYWx1ZS5UcmFkZWQiOltfLnQobnVsbCx2b2lkIDAsbyg2OTAyMDYpKSxfLnQobnVsbCx2b2lkIDAsbyg2OTAyMDYpKV0sTW9uZXlGbG93OltfLnQobnVsbCx2b2lkIDAsbygxNzgwOTYpKSxfLnQobnVsbCx7Y29udGV4dDoiTW9uZXlfRmxvd19zaG9ydF90aXRsZSJ9LG8oOTQ5NzA0KSldLENoYWlraW5Nb25leUZsb3c6W18udChudWxsLHZvaWQgMCxvKDI1ODE0MykpLF8udChudWxsLHtjb250ZXh0OiJDaGFpa2luX01vbmV5X0Zsb3dfc2hvcnRfdGl0bGUifSxvKDE2MDU2MikpXSwiUmVjb21tZW5kLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDU2OTU5NSkpLF8udChudWxsLHZvaWQgMCxvKDU2OTU5NSkpXSwiUmVjb21tZW5kLk1BIjpbXy50KG51bGwsdm9pZCAwLG8oMjAwNDUyKSksXy50KG51bGwsdm9pZCAwLG8oMjAwNDUyKSldLCJSZWNvbW1lbmQuT3RoZXIiOltfLnQobnVsbCx2b2lkIDAsbyg1NDA0NDApKSxfLnQobnVsbCx2b2lkIDAsbyg1NDA0NDApKV0sIlN0b2NoLlJTSS5LIjpbXy50KG51bGwsdm9pZCAwLG8oNTg1Njg5KSksXy50KG51bGwsdm9pZCAwLG8oNzAwNjA4KSldLCJTdG9jaC5SU0kuRCI6W18udChudWxsLHZvaWQgMCxvKDExMzczMSkpLF8udChudWxsLHZvaWQgMCxvKDYzOTU5NSkpXSwiVy5SIjpbXy50KG51bGwsdm9pZCAwLG8oMjYwOTEwKSksXy50KG51bGwsdm9pZCAwLG8oNTM5MjM4KSldLFJPQzpbXy50KG51bGwsdm9pZCAwLG8oODAyMDg4KSksXy50KG51bGwsdm9pZCAwLG8oODQ4MTU0KSldLEJCUG93ZXI6W18udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oMjQ4Nzg1KSksXy50KG51bGwsdm9pZCAwLG8oOTQ5ODI1KSldLFVPOltfLnQobnVsbCx2b2lkIDAsbyg5OTk5NjEpKSxfLnQobnVsbCx2b2lkIDAsbyg4OTU3NzQpKV0sIkljaGltb2t1LkNMaW5lIjpbXy50KG51bGwsdm9pZCAwLG8oOTI2NCkpLF8udChudWxsLHZvaWQgMCxvKDcwMjk0NikpXSwiSWNoaW1va3UuQkxpbmUiOltfLnQobnVsbCx2b2lkIDAsbyg0OTA3MjgpKSxfLnQobnVsbCx2b2lkIDAsbyg3NTI5MzQpKV0sIkljaGltb2t1LkxlYWQxIjpbXy50KG51bGwsdm9pZCAwLG8oMjk3MzEwKSksXy50KG51bGwsdm9pZCAwLG8oMzEwMTc3KSldLCJJY2hpbW9rdS5MZWFkMiI6W18udChudWxsLHZvaWQgMCxvKDcwNjU2MikpLF8udChudWxsLHZvaWQgMCxvKDgzOTU4MSkpXSxWV0FQOltfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDg2ODQxOSkpLF8udChudWxsLHZvaWQgMCxvKDI1MTE2NykpXSxWV01BOltfLnQobnVsbCx2b2lkIDAsbyg1NDMzOTEpKSxfLnQobnVsbCx2b2lkIDAsbygzMzk0MDcpKV0sQURSOltfLnQobnVsbCx2b2lkIDAsbygzMjMzOTIpKSxfLnQobnVsbCx2b2lkIDAsbygxNTA0NzQpKV0sIjI0aF92b2x8NSI6W18udChudWxsLHZvaWQgMCxvKDU1NzkzMykpLF8udChudWxsLHZvaWQgMCxvKDIzNDA3NykpXSwiMjRoX3ZvbF9jaGFuZ2V8NSI6W18udChudWxsLHZvaWQgMCxvKDcxMTE4OCkpLF8udChudWxsLHZvaWQgMCxvKDM1MjQ1NykpXSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDgwMzI4MSkpLF8udChudWxsLHZvaWQgMCxvKDgwMzI4MSkpXSwKdG90YWxfcmV2ZW51ZV9xb3FfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0ODI1NTMpKSxfLnQobnVsbCx2b2lkIDAsbyg0ODI1NTMpKV0sdG90YWxfcmV2ZW51ZV95b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbygxMjgzNzYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjgzNzYpKV0sdG90YWxfcmV2ZW51ZV95b3lfZ3Jvd3RoX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNzQwOTI4KSksXy50KG51bGwsdm9pZCAwLG8oNzQwOTI4KSldLGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbygxMDc5MDQpKSxfLnQobnVsbCx2b2lkIDAsbygxMDc5MDQpKV0sZ3Jvc3NfcHJvZml0X3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDE5MTU3NCkpLF8udChudWxsLHZvaWQgMCxvKDE5MTU3NCkpXSxncm9zc19wcm9maXRfeW95X2dyb3d0aF9meTpbXy50KG51bGwsdm9pZCAwLG8oMzU2MTI1KSksXy50KG51bGwsdm9pZCAwLG8oMzU2MTI1KSldLGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNzYxMzA1KSksXy50KG51bGwsdm9pZCAwLG8oNzYxMzA1KSldLGViaXRkYV95b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg1Mzk3MDUpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mzk3MDUpKV0sZWJpdGRhX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDc0NjIzKSksXy50KG51bGwsdm9pZCAwLG8oNzQ2MjMpKV0sZWJpdGRhX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDk4NjI5MikpLF8udChudWxsLHZvaWQgMCxvKDk4NjI5MikpXSxlYml0ZGFfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDgzNDY2OCkpLF8udChudWxsLHZvaWQgMCxvKDgzNDY2OCkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDg1MzM0NikpLF8udChudWxsLHZvaWQgMCxvKDg1MzM0NikpXSxuZXRfaW5jb21lX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDE0ODU3MCkpLF8udChudWxsLHZvaWQgMCxvKDE0ODU3MCkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDk4MzY3MSkpLF8udChudWxsLHZvaWQgMCxvKDk4MzY3MSkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3ODkwNykpLF8udChudWxsLHZvaWQgMCxvKDc4OTA3KSldLGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDI2NTA2KSksXy50KG51bGwsdm9pZCAwLG8oMjY1MDYpKV0sZnJlZV9jYXNoX2Zsb3dfcW9xX2dyb3d0aF9mcTpbXy50KG51bGwsdm9pZCAwLG8oMzQ0MzYpKSxfLnQobnVsbCx2b2lkIDAsbygzNDQzNikpXSxmcmVlX2Nhc2hfZmxvd195b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg2MDc1NjApKSxfLnQobnVsbCx2b2lkIDAsbyg2MDc1NjApKV0sZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDc4NTcxKSksXy50KG51bGwsdm9pZCAwLG8oNzg1NzEpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9mcTpbXy50KG51bGwsdm9pZCAwLG8oODIyNzgyKSksXy50KG51bGwsdm9pZCAwLG8oODIyNzgyKSldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDk2NjI1NikpLF8udChudWxsLHZvaWQgMCxvKDk2NjI1NikpXSxlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF95b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg1Mjg5NzIpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjg5NzIpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDQwNjg2MykpLF8udChudWxsLHZvaWQgMCxvKDQwNjg2MykpXSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfeW95X2dyb3d0aF9meTpbXy50KG51bGwsdm9pZCAwLG8oNTU3OTQxKSksXy50KG51bGwsdm9pZCAwLG8oNTU3OTQxKSldLHRvdGFsX2Fzc2V0c195b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg1NDgzNDIpKSxfLnQobnVsbCx2b2lkIDAsbyg1NDgzNDIpKV0sdG90YWxfYXNzZXRzX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDk3MzYwKSksXy50KG51bGwsdm9pZCAwLG8oOTczNjApKV0sdG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDQwMzY0NykpLF8udChudWxsLHZvaWQgMCxvKDQwMzY0NykpXSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDY3NTEwOCkpLF8udChudWxsLHZvaWQgMCxvKDY3NTEwOCkpXSx0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDc5MzAzNikpLF8udChudWxsLHZvaWQgMCxvKDc5MzAzNikpXSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDYyMzgzNykpLF8udChudWxsLHZvaWQgMCxvKDYyMzgzNykpXSxzZWxsX2dlbl9hZG1pbl9leHBfb3RoZXJfcmF0aW9fZnk6W18udChudWxsLHZvaWQgMCxvKDk5MjQ3MCkpLF8udChudWxsLHZvaWQgMCxvKDkzMDc1NCkpXSxzZWxsX2dlbl9hZG1pbl9leHBfb3RoZXJfcmF0aW9fdHRtOltfLnQobnVsbCx2b2lkIDAsbyg1OTM4MTIpKSxfLnQobnVsbCx2b2lkIDAsbygyNDI1MzMpKV0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb19meTpbXy50KG51bGwsdm9pZCAwLG8oODcwMzE2KSksXy50KG51bGwsdm9pZCAwLG8oMzM0MTAyKSldLHJlc2VhcmNoX2FuZF9kZXZfcmF0aW9fdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3MDEwMzUpKSxfLnQobnVsbCx2b2lkIDAsbyg1MDIwODgpKV0sZ3Jvc3NfcHJvZml0X21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oOTAwOTQ1KSksXy50KG51bGwsdm9pZCAwLG8oOTAwOTQ1KSldLG9wZXJfaW5jb21lX21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oNDM1MDcwKSksXy50KG51bGwsdm9pZCAwLG8oNDM1MDcwKSldLApuZXRfaW5jb21lX2JlZl9kaXNjX29wZXJfbWFyZ2luX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg5NDA3MTEpKSxfLnQobnVsbCx2b2lkIDAsbyg5NDA3MTEpKV0sY2FzaF9uX2VxdWl2YWxlbnRzX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3NjUwMTcpKSxfLnQobnVsbCx2b2lkIDAsbyg3NjUwMTcpKV0sY2FzaF9uX2VxdWl2YWxlbnRzX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg0NzY4MzcpKSxfLnQobnVsbCx2b2lkIDAsbyg0NzY4MzcpKV0sY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3ODg4MzgpKSxfLnQobnVsbCx2b2lkIDAsbygyNDczNjApKV0sY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2Z5OltfLnQobnVsbCx2b2lkIDAsbygyNTQ5NDcpKSxfLnQobnVsbCx2b2lkIDAsbyg5MTUxNTQpKV0sY2VudHJhbGl6YXRpb246W18udChudWxsLHZvaWQgMCxvKDYxMTExOCkpLF8udChudWxsLHZvaWQgMCxvKDYxMTExOCkpXSxmaXNjYWxfcGVyaW9kX2VuZF9meTpbXy50KG51bGwsdm9pZCAwLG8oMzE0NTIxKSksXy50KG51bGwsdm9pZCAwLG8oMzE0NTIxKSldLGZpc2NhbF9wZXJpb2RfZnE6W18udChudWxsLHZvaWQgMCxvKDk1MDgwMikpLF8udChudWxsLHZvaWQgMCxvKDk1MDgwMikpXSxmaXNjYWxfcGVyaW9kX2VuZF9mcTpbXy50KG51bGwsdm9pZCAwLG8oNTMwNDQ0KSksXy50KG51bGwsdm9pZCAwLG8oNTMwNDQ0KSldLGVudGVycHJpc2VfdmFsdWVfY3VycmVudDpbXy50KG51bGwsdm9pZCAwLG8oNjczMTYxKSksXy50KG51bGwsdm9pZCAwLG8oNjczMTYxKSldLHByaWNlX2Vhcm5pbmdzX2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDU1NzMzNikpLF8udChudWxsLHZvaWQgMCxvKDU1NzMzNikpXSxwcmljZV9zYWxlc19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg3ODI2MTQpKSxfLnQobnVsbCx2b2lkIDAsbyg3ODI2MTQpKV0scHJpY2VfYm9va19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg1OTAyMDUpKSxfLnQobnVsbCx2b2lkIDAsbyg1OTAyMDUpKV0scHJpY2VfY2FzaF9mbG93X2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDMzMjIxNCkpLF8udChudWxsLHZvaWQgMCxvKDMzMjIxNCkpXSxwcmljZV9mcmVlX2Nhc2hfZmxvd19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg4NjQ2NDgpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjQ2NDgpKV0sdG90YWxfcmV2ZW51ZV90dG06W18udChudWxsLHZvaWQgMCxvKDMwMjE2NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzAyMTY1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scmV2ZW51ZV9wZXJfc2hhcmVfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxMzI1NDgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDEzMjU0OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGdyb3NzX3Byb2ZpdF90dG06W18udChudWxsLHZvaWQgMCxvKDM5NzYwMikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzk3NjAyKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sb3Blcl9pbmNvbWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg4NTAyMTEpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDg1MDIxMSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLG5ldF9pbmNvbWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg1MTA3MjYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDUxMDcyNikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3Mjg1NDUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDcyODU0NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbygzMzYzMDMpKSxfLnQobnVsbCx2b2lkIDAsbygzMzYzMDMpKV0sZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nX2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDk4MTY0MykpLF8udChudWxsLHZvaWQgMCxvKDk4MTY0MykpXSx0b3RhbF9hc3NldHNfZnE6W18udChudWxsLHZvaWQgMCxvKDQxNDI1OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSksXy50KG51bGwsdm9pZCAwLG8oNDE0MjU4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjk4NTc2KSl9KV0sdG90YWxfZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3MzMyNikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSksXy50KG51bGwsdm9pZCAwLG8oNzMzMjYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pXSx0b3RhbF9kZWJ0X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0Njk1NTgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ2OTU1OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGJvb2tfcGVyX3NoYXJlX2ZxOltfLnQobnVsbCx2b2lkIDAsbygyNDUzMTcpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDI0NTMxNykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGN1cnJlbnRfcmF0aW9fZnE6W18udChudWxsLHZvaWQgMCxvKDQ5OTI2NSkpLmZvcm1hdCh7CnBlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ5OTI2NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGFzc2V0X3R1cm5vdmVyX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3NDgyOTApKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDc0ODI5MCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc190dG06W18udChudWxsLHZvaWQgMCxvKDM1Nzc3NCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzU3Nzc0KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNjM4NDk4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2Mzg0OTgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3Njk4NzQpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDc2OTg3NCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGZyZWVfY2FzaF9mbG93X3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNjIyNTU5KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MjI1NTkpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxjYXBpdGFsX2V4cGVuZGl0dXJlc190dG06W18udChudWxsLHZvaWQgMCxvKDUzNTEzMikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oNTM1MTMyKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sZ3Jvc3NfbWFyZ2luX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oOTY2NTA1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg5NjY1MDUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxvcGVyYXRpbmdfbWFyZ2luX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNDcyNjY5KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg0NzI2NjkpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxwcmVfdGF4X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDY1Njk3MSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oNjU2OTcxKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sbmV0X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDg5MDU0OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oODkwNTQ4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scmV0dXJuX29uX2Fzc2V0c19mcTpbXy50KG51bGwsdm9pZCAwLG8oODE4MTExKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg4MTgxMTEpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxyZXR1cm5fb25fZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0ODEwODcpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ4MTA4NykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLHJldHVybl9vbl9pbnZlc3RlZF9jYXBpdGFsX2ZxOltfLnQobnVsbCx2b2lkIDAsbygyMzE3MykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMjMxNzMpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxyZXZlbnVlX3Blcl9lbXBsb3llZV9meTpbXy50KG51bGwsdm9pZCAwLG8oNjMwNjc2KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjg3OTE4KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MzA2NzYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyODc5MTgpKX0pXSxuZXRfaW5jb21lX3Blcl9lbXBsb3llZV9meTpbXy50KG51bGwsdm9pZCAwLG8oMjM3NTg1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjg3OTE4KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyMzc1ODUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyODc5MTgpKX0pXSxkaXZpZGVuZF9hbW91bnRfcmVjZW50OltfLnQobnVsbCx2b2lkIDAsbyg3OTIyNjApKSxfLnQobnVsbCx2b2lkIDAsbyg3OTIyNjApKV0sZGl2aWRlbmRfYW1vdW50X3VwY29taW5nOltfLnQobnVsbCx2b2lkIDAsbyg5NDI1MDQpKSxfLnQobnVsbCx2b2lkIDAsbyg5NDI1MDQpKV0sZXhfZGl2aWRlbmRfZGF0ZV9yZWNlbnQ6W18udChudWxsLHZvaWQgMCxvKDU2NDA4OSkpLF8udChudWxsLHZvaWQgMCxvKDU2NDA4OSkpXSxleF9kaXZpZGVuZF9kYXRlX3VwY29taW5nOltfLnQobnVsbCx2b2lkIDAsbyg3NTAwNTMpKSxfLnQobnVsbCx2b2lkIDAsbyg3NTAwNTMpKV0sZGl2aWRlbmRfcGF5b3V0X3JhdGlvX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNDU3NTA1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg0NTc1MDUpKS5mb3JtYXQoewpwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scHJpY2VfdGFyZ2V0X2F2ZXJhZ2U6W18udChudWxsLHZvaWQgMCxvKDgxODAwMikpLF8udChudWxsLHZvaWQgMCxvKDgxODAwMikpXX07bGV0IHhlPW51bGw7Y29uc3QgQWU9KCk9PnhlO3ZhciBNZT1vKDc0NDI0MCksSWU9byg3MDI5NjcpLFJlPW8oNzY5OTM5KSxGZT1vKDQ5NTM5NiksTGU9byg2ODMzODMpLERlPW8oMjg3ODMyKSxPZT1vKDIzMTc3MCksTmU9byg2NDQ5MDUpLFBlPW8oNjM1MjcwKSxCZT1vKDM4NjcyNiksJGU9bygxMjM3MjkpLFdlPW8oNzI1NjAyKSxxZT1vKDEyOTc5NCksVmU9bygyMTcpLEhlPW8oMjY3NTg3KSxVZT1vKDkzMzEzOCksemU9bygyODU5OTMpLGplPW8oNzg2NTc4KSxHZT1vKDY3Nzc3KSxYZT1vKDM5OTQ5NCksS2U9byg0MTQ3OTYpLFllPW8oMTMwNjg2KSxKZT1vKDEyMDAzNyksWmU9bygyMjAzNDEpLFFlPW8oMjIzNDgzKSxldD1vKDgzNTE3NCksdHQ9byg4NzQ5NzMpO2NvbnN0IG90PVt7a2V5OiJDYW5kbGUuM0JsYWNrQ3Jvd3MiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODkwMzg3KSksc3ZnOk1lfSx7a2V5OiJDYW5kbGUuM1doaXRlU29sZGllcnMiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMjc3MDk3KSksc3ZnOkllfSx7a2V5OiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDE1Njk2OSkpLHN2ZzpSZX0se2tleToiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg3NjQxMzYpKSxzdmc6RmV9LHtrZXk6IkNhbmRsZS5Eb2ppIixuYW1lOl8udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oOTMwMDk4KSksc3ZnOkxlfSx7a2V5OiJDYW5kbGUuRG9qaS5EcmFnb25mbHkiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzc1NDQpKSxzdmc6RGV9LHtrZXk6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMTIzNzM2KSksc3ZnOk9lfSx7a2V5OiJDYW5kbGUuRW5ndWxmaW5nLkJlYXJpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDYyODk2KSksc3ZnOk5lfSx7a2V5OiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzM5NTI3KSksc3ZnOlBlfSx7a2V5OiJDYW5kbGUuRXZlbmluZ1N0YXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzQ5NjcwKSksc3ZnOkJlfSx7a2V5OiJDYW5kbGUuSGFtbWVyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDg2NTkwNykpLHN2ZzokZX0se2tleToiQ2FuZGxlLkhhbmdpbmdNYW4iLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzQ4MzMwKSksc3ZnOldlfSx7a2V5OiJDYW5kbGUuSGFyYW1pLkJlYXJpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDUwOTA3KSksc3ZnOnFlfSx7a2V5OiJDYW5kbGUuSGFyYW1pLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDYzODk2KSksc3ZnOlZlfSx7a2V5OiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMjcyMTYxKSksc3ZnOkhlfSx7a2V5OiJDYW5kbGUuS2lja2luZy5CZWFyaXNoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDQ1NzY5NCkpLHN2ZzpVZX0se2tleToiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg2MTg0OTIpKSxzdmc6emV9LHtrZXk6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDc0ODAxNCkpLHN2ZzpqZX0se2tleToiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODEwODE3KSksc3ZnOkdlfSx7a2V5OiJDYW5kbGUuTWFydWJvenUuQmxhY2siLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNTM1NzgzKSksc3ZnOlhlfSx7a2V5OiJDYW5kbGUuTWFydWJvenUuV2hpdGUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oOTUyNTY1KSksc3ZnOktlfSx7a2V5OiJDYW5kbGUuTW9ybmluZ1N0YXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNzE0NDYzKSksc3ZnOlllfSx7a2V5OiJDYW5kbGUuU2hvb3RpbmdTdGFyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDc3ODA0KSksc3ZnOkplfSx7a2V5OiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2siLG5hbWU6Xy50KG51bGwse2NvbnRleHQ6InN0dWR5In0sbyg3NjMyMjYpKSxzdmc6WmV9LHtrZXk6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZSIsbmFtZTpfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDMzMzkxNCkpLHN2ZzpRZX0se2tleToiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbygyOTExNzMpKSxzdmc6ZXR9LHtrZXk6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODY3MjY4KSksc3ZnOnR0fV0uc29ydCgoKGUsdCk9PmUubmFtZS5sb2NhbGVDb21wYXJlKHQubmFtZSkpKSxpdD1uZXcgWih7cHJpY2VTY2FsZToxZTgsbWluTW92ZToxfSksbnQ9bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MTAwLG1pbk1vdmU6MSxmcmFjdGlvbmFsOiExfSkscnQ9bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MSxtaW5Nb3ZlOjEsZnJhY3Rpb25hbDohMX0pLHN0PW5ldyBHLlZvbHVtZUZvcm1hdHRlcixhdD1uZXcgWC5QZXJjZW50YWdlRm9ybWF0dGVyLGx0PW5ldyBYLlBlcmNlbnRhZ2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MX0pLGN0PW5ldyBjbGFzc3tjb25zdHJ1Y3RvcihlKXt0aGlzLl9mb3JtYXRTdHI9ZXx8IiV5LSVtLSVkIn1mb3JtYXQoZSl7Y29uc3QgdD1uZXcgRGF0ZSgxZTMqZSk7cmV0dXJuIHRoaXMuX2Zvcm1hdFN0ci5yZXBsYWNlKCIleSIsKDAsSy5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykodC5nZXRVVENGdWxsWWVhcigpLDQpKS5yZXBsYWNlKCIlbSIsKDAsSy5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykodC5nZXRVVENNb250aCgpKzEsMikpLnJlcGxhY2UoIiVkIiwoMCxLLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKSh0LmdldFVUQ0RhdGUoKSwyKSl9Cn0sZHQ9W3RlLlNUUk9OR19CVVkudGl0bGUsdGUuQlVZLnRpdGxlLHRlLk5FVVRSQUwudGl0bGUsdGUuU0VMTC50aXRsZSx0ZS5TVFJPTkdfU0VMTC50aXRsZV0saHQ9e0FueTpfLnQobnVsbCx2b2lkIDAsbyg5MjE4NDcpKSxFeG90aWM6Xy50KG51bGwsdm9pZCAwLG8oNTgwODMyKSksTWFqb3I6Xy50KG51bGwsdm9pZCAwLG8oNDQ3NzUzKSksTWlub3I6Xy50KG51bGwsdm9pZCAwLG8oMjA2OTgzKSksQWZyaWNhOl8udChudWxsLHZvaWQgMCxvKDY1MDM0NCkpLEFtZXJpY2FzOl8udChudWxsLHZvaWQgMCxvKDk5MTQ2NCkpLEFzaWE6Xy50KG51bGwsdm9pZCAwLG8oNjg5MTgyKSksRXVyb3BlOl8udChudWxsLHZvaWQgMCxvKDk1MjM2NykpLFBhY2lmaWM6Xy50KG51bGwsdm9pZCAwLG8oOTkwNTc1KSksIk1pZGRsZSBFYXN0IjpfLnQobnVsbCx2b2lkIDAsbyg2ODU3NTEpKX0sdXQ9W3trZXk6InRvZGF5IixuYW1lOl8udChudWxsLHZvaWQgMCxvKDYxNDQ1MCkpfSx7a2V5OiJ0b21vcnJvdyIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg5NDA0ODMpKX0se2tleToieWVzdGVyZGF5IixuYW1lOl8udChudWxsLHZvaWQgMCxvKDk2NTU3MykpfSx7a2V5OiJuZXh0X2ZpdmUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNTYxMTYxKSl9LHtrZXk6InByZXZfZml2ZSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbygxMzcyMCkpfSx7a2V5OiJ0aGlzX3dlZWsiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMTI3NDgzKSl9LHtrZXk6Im5leHRfd2VlayIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg0ODU0NTQpKX0se2tleToicHJldl93ZWVrIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDU2NDU2MSkpfSx7a2V5OiJ0aGlzX21vbnRoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDE3MDgwOSkpfV0sX3Q9WyJ0b2RheSIsInllc3RlcmRheSIsInByZXZfZml2ZSIsInByZXZfd2VlayIsInRoaXNfd2VlayIsInRoaXNfbW9udGgiXSxwdD1bInRvZGF5IiwidG9tb3Jyb3ciLCJuZXh0X2ZpdmUiLCJuZXh0X3dlZWsiLCJ0aGlzX3dlZWsiLCJ0aGlzX21vbnRoIl0sbXQ9ZT0+bnVsbD09ZXx8IiI9PT1lLnRvU3RyaW5nKCkudHJpbSgpLGd0PWU9PnQ9Pntjb25zdCBvPWJ0KHQsdXQpO2lmKG8pe2NvbnN0IHQ9U3Qobyk7aWYodClyZXR1cm4oKGUsdCxvPSJlYXJuaW5nc19yZWxlYXNlX2RhdGUsZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiKT0+W3tsZWZ0Om8sb3BlcmF0aW9uOiJpbl9yYW5nZSIscmlnaHQ6W2UvMWUzLHQvMWUzXX0se2xlZnQ6byxvcGVyYXRpb246Im5lcXVhbCIscmlnaHQ6dC8xZTN9XSkodFswXSx0WzFdLGUpfXJldHVybiExfSx2dD0oZSx0KT0+T2JqZWN0LmtleXModCkuZmluZCgobz0+dFtvXT09PWUpKXx8ZSxmdD0oZSx0LG8saSk9Pntjb25zdCBuPWkuZmlsdGVyKCh0PT50W2VdPT09bykpO3JldHVybiBuLmxlbmd0aD4wP25bMF1bdF06IiJ9LHl0PShlLHQpPT5mdCgia2V5IiwibmFtZSIsZSx0KSxidD0oZSx0KT0+ZnQoIm5hbWUiLCJrZXkiLGUsdCksU3Q9ZT0+e2NvbnN0IHQ9VS5nZXRfdGltZXpvbmUoQWUoKSksbz0oKCk9Pntjb25zdCBlPVUuZ2V0X3RpbWV6b25lKEFlKCkpLHQ9bmV3IERhdGUsbz1VLnV0Y190b19jYWwoZSx0LmdldFRpbWUoKSk7cmV0dXJuIFUuZ2V0X2NhbChlLG8uZ2V0VVRDRnVsbFllYXIoKSxvLmdldFVUQ01vbnRoKCksby5nZXRVVENEYXRlKCkpfSkoKTtsZXQgaSxuO2lmKCJ0b2RheSI9PT1lKWk9by5nZXRUaW1lKCksbj1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpO2Vsc2UgaWYoInRvbW9ycm93Ij09PWUpaT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDIpLmdldFRpbWUoKTtlbHNlIGlmKCJ5ZXN0ZXJkYXkiPT09ZSl7Y29uc3QgZT02ZTQ7aT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sLTEpLmdldFRpbWUoKSxuPW8uZ2V0VGltZSgpLWV9ZWxzZSBpZigibmV4dF9maXZlIj09PWUpaT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDUpLmdldFRpbWUoKTtlbHNlIGlmKCJwcmV2X2ZpdmUiPT09ZSlpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtNSkuZ2V0VGltZSgpLG49by5nZXRUaW1lKCk7ZWxzZSBpZigidGhpc193ZWVrIj09PWUpe2NvbnN0IGU9KG8uZ2V0RGF5KCkrNiklNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoIm5leHRfd2VlayI9PT1lKXtjb25zdCBlPShvLmdldERheSgpKzYpJTctNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoInByZXZfd2VlayI9PT1lKXtjb25zdCBlPShvLmdldERheSgpKzYpJTcrNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoInRoaXNfbW9udGgiPT09ZSl7Y29uc3QgZT1vLmdldERhdGUoKSxyPW5ldyBEYXRlKG8uZ2V0RnVsbFllYXIoKSxvLmdldE1vbnRoKCksMCkuZ2V0RGF0ZSgpO2k9VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDEtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLHItZSkuZ2V0VGltZSgpfXJldHVybiEoIWl8fCFuKSYmW2ksbl19LHd0PXtkcjpbXy50KG51bGwsdm9pZCAwLG8oNzE0NzQ1KSksXy50KG51bGwsdm9pZCAwLG8oMjg3OTk4KSkse25vd3JhcDohMH1dLGV0ZjpbXy50KG51bGwsdm9pZCAwLG8oNjk0MDcyKSksXy50KG51bGwsdm9pZCAwLG8oNjk0MDcyKSldLGNvbW1vbjpbXy50KG51bGwsdm9pZCAwLG8oOTgxMjgzKSksIiJdLApwcmVmZXJyZWQ6W18udChudWxsLHZvaWQgMCxvKDI3NTY2MikpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSxjbG9zZWRlbmQ6W18udChudWxsLHZvaWQgMCxvKDYzNjAwMSkpLF8udChudWxsLHZvaWQgMCxvKDc5Njg5MSkpXSxldG46W18udChudWxsLHZvaWQgMCxvKDk3MjI0MCkpLF8udChudWxsLHZvaWQgMCxvKDk3MjI0MCkpXSxyZWl0OltfLnQobnVsbCx2b2lkIDAsbyg4MTAyMDIpKSxfLnQobnVsbCx2b2lkIDAsbyg4MTAyMDIpKV0sdW5pdDpbXy50KG51bGwsdm9pZCAwLG8oNjIwMjExKSksXy50KG51bGwsdm9pZCAwLG8oNjIwMjExKSldLG11dHVhbDpbXy50KG51bGwsdm9pZCAwLG8oOTQwOTg2KSksXy50KG51bGwsdm9pZCAwLG8oNTE4MDQxKSldLHRydXN0OltfLnQobnVsbCx2b2lkIDAsbyg3MjE1MjIpKSxfLnQobnVsbCx2b2lkIDAsbygzNDQzNzUpKV0sc3RydWN0dXJlZDpbXy50KG51bGwsdm9pZCAwLG8oMjU1NjIyKSksXy50KG51bGwsdm9pZCAwLG8oMzAwMjc1KSldLHNwb3Q6W18udChudWxsLHZvaWQgMCxvKDI4MzQxNikpLCIiXSxmdXR1cmVzOltfLnQobnVsbCx2b2lkIDAsbyg5NDM5MDMpKSwiIl0scGVycGV0dWFsOltfLnQobnVsbCx2b2lkIDAsbyg1NTY4NzYpKSwiIl19LEN0PVsiZHIiLCJldGYiLCJjb21tb24iLCJwcmVmZXJyZWQiLCJjbG9zZWRlbmQiLCJldG4iLCJyZWl0IiwidW5pdCIsIm11dHVhbCIsInRydXN0Iiwic3RydWN0dXJlZCJdLGt0PVsic3BvdCIsImZ1dHVyZXMiLCJwZXJwZXR1YWwiXSxUdD1lPT5bIm9wZW4iLCJoaWdoIiwibG93IiwiY2xvc2UiXS5maWx0ZXIoKHQ9PnQhPT1lKSksRXQ9ZT0+WyJTTUE1IiwiU01BMTAiLCJTTUEyMCIsIlNNQTMwIiwiU01BNTAiLCJTTUExMDAiLCJTTUEyMDAiLCJFTUE1IiwiRU1BMTAiLCJFTUEyMCIsIkVNQTMwIiwiRU1BNTAiLCJFTUExMDAiLCJFTUEyMDAiXS5maWx0ZXIoKHQ9PnQhPT1lKSkseHQ9ZT0+WyJJY2hpbW9rdS5CTGluZSIsIkljaGltb2t1LkNMaW5lIiwiSWNoaW1va3UuTGVhZDEiLCJJY2hpbW9rdS5MZWFkMiJdLmZpbHRlcigodD0+dCE9PWUpKSxBdD1bImNyb3NzZXMiLCJjcm9zc2VzX2Fib3ZlIiwiY3Jvc3Nlc19iZWxvdyJdO2Z1bmN0aW9uIE10KGUsLi4udCl7Y29uc3Qgbz10W3QubGVuZ3RoLTFdO2lmKG8uc2VhcmNoVmFsdWUpe2NvbnN0IHQ9KDAsYWUucGFyc2VIdG1sKShlKS5jaGlsZE5vZGVzO2xldCBpPSIiO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0uY2xhc3NMaXN0JiYodFtlXS5jbGFzc0xpc3QuY29udGFpbnMoInR2LXNjcmVlbmVyX19zeW1ib2wiKSYmKHRbZV0uaW5uZXJIVE1MPVJ0KHRbZV0udGV4dENvbnRlbnQudHJpbSgpLG8uc2VhcmNoVmFsdWUpKSxpKz10W2VdLm91dGVySFRNTCk7cmV0dXJuIGkrIiAifXJldHVybiBlfWNvbnN0IEl0PXtuYW1lOntmaXhlZDohMCxjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjEsaW5wbGFjZUVkaXRvckxlZnRPZmZzZXQ6MTAsZmlsdGVyVGl0bGU6RWUudHlwZVswXSxyYW5nZVRpdGxlczp3dCxhZGRpdGlvbmFsQ29sdW1uczpbImRlc2NyaXB0aW9uIiwibmFtZSIsInR5cGUiLCJzdWJ0eXBlIiwidXBkYXRlX21vZGUiXSxhZGRpdGlvbmFsRm9ybWF0dGVyOihlLHQsbyxpLG4scj0iIik9Pntjb25zdCBzPSgoZSx0KT0+SXQudHlwZS5kaXNhYmxlZHx8IUl0LnR5cGUuY2hlY2tlZD8iIjpgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyX190eXBlIiB0aXRsZT0iJHtJdC50eXBlLm11dGF0ZURpc3BsYXlWYWx1ZShlLHQpfSI+PHN1cD4ke0l0LnR5cGUubXV0YXRlRGlzcGxheVZhbHVlKGUsdCwhMCl9PC9zdXA+PC9zcGFuPmApKG8saSk7cmV0dXJuKChlLHQsbyxpLG4pPT57Y29uc3Qgcj1uZXcgUS5EYXRhTW9kZUluZGljYXRvcih7Y2xhc3NTdWZmaXg6Ii0tZm9yLXNjcmVlbmVyIixzaG9ydDohMH0pO2lmKG51bGwhPT1uJiYic3RyaW5nIj09dHlwZW9mIG4pe2NvbnN0IGU9KDAsei5wYXJzZVVwZGF0ZU1vZGUpKG4pO251bGw9PT1lP3Iuc2V0TW9kZShuKTpyLnNldE1vZGUoZS5tb2RlLGUuaW50ZXJ2YWwpfWlmKEl0LmRlc2NyaXB0aW9uLmRpc2FibGVkfHwhSXQuZGVzY3JpcHRpb24uY2hlY2tlZClyZXR1cm4gci5nZXRFbGVtZW50KCkub3V0ZXJIVE1MO2NvbnN0IHM9e2Rlc2NyaXB0aW9uOmUscHJvX25hbWU6aSxzaG9ydF9uYW1lOm99O2xldCBhPWU/KDAsZWUuZ2V0VHJhbnNsYXRlZFN5bWJvbERlc2NyaXB0aW9uKShzKS50b1N0cmluZygpLnRvVXBwZXJDYXNlKCk6IiI7SXQubmFtZS5zZWFyY2hWYWx1ZSYmKGE9UnQoYSxJdC5uYW1lLnNlYXJjaFZhbHVlKSk7Y29uc3QgbD0hSXQuZGVzY3JpcHRpb24uZGlzYWJsZWR8fEl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lcl9fZGVzY3JpcHRpb24iPiR7YX0gJHt0fTwvc3Bhbj5gOiIiO3JldHVybmAke3IuZ2V0RWxlbWVudCgpLm91dGVySFRNTH0ke2x9YH0pKGUscyx0LHIsbil9LG11dGF0ZURpc3BsYXlWYWx1ZTpNdCx0b29sdGlwOihlLHQpPT5JdC5kZXNjcmlwdGlvbi5kaXNhYmxlZHx8IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/dDplLHVzZURlZmF1bHRSYW5nZTohMCxkZWZhdWx0UmFuZ2U6Q3QsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9Pkl0LnR5cGUuY3VzdG9tRmlsdGVyQ29uZGl0aW9uKGUpLHNlYXJjaDohMH0sZGVzY3JpcHRpb246e2hpZGRlbkNvbHVtbjohMCxoaWRlU2V0dXBDb2x1bW46ITB9LGxvZ29pZDp7aGlkZGVuQ29sdW1uOiExLGhpZGVTZXR1cENvbHVtbjohMCxza2lwRmllbGQ6ITB9LGN1cnJlbmN5X2xvZ29pZDp7aGlkZGVuQ29sdW1uOiExLGhpZGVTZXR1cENvbHVtbjohMCxza2lwRmllbGQ6ITB9LGJhc2VfY3VycmVuY3lfbG9nb2lkOntoaWRkZW5Db2x1bW46ITEsaGlkZVNldHVwQ29sdW1uOiEwLHNraXBGaWVsZDohMH0sZXhjaGFuZ2U6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+IkFNRVgiPT09ZT8iTllTRSBBUkNBIjplLHJhbmdlVGl0bGVzOntBTUVYOlsiTllTRSBBUkNBIiwiTllTRSBBUkNBIix7bm93cmFwOiEwfV19fSxjZW50cmFsaXphdGlvbjp7CmNvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MSxoaWRlU2V0dXBDb2x1bW46ITAscmFuZ2VUaXRsZXM6e2NleDpbIkNFWCIsIkNFWCJdLGRleDpbIkRFWCIsIkRFWCJdfX0sc3VibWFya2V0Ontjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjF9LHNlY3Rvcjp7Y2F0ZWdvcnk6MSxmaWx0ZXJDb25kaXRpb246InNlbGVjdCIsc291cmNlUmFuZ2U6WyJNYWpvciIsIk1pbm9yIiwiRXhvdGljIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLC4uLnQpPT57Y29uc3Qgbz1NdChlLHQpO3JldHVybigwLFRlLnRyaWVzVHJhbnNsYXRlU2NyZWVuZXJEYXRhKShvKX19LGluZGV4Ontjb250cm9sOiJzZWxlY3QiLGlzU2luZ2xlOiEwLGNhdGVnb3J5OjEsaGlkZVNldHVwQ29sdW1uOiEwLGdyb3VwRmlsdGVyOiEwLGN1c3RvbUZpbHRlckNvbmRpdGlvbjplPT57Y29uc3QgdD1JdC5pbmRleC5zb3VyY2VSYW5nZT9JdC5pbmRleC5zb3VyY2VSYW5nZS5maW5kKCh0PT50Lm5hbWU9PT1lKSk6bnVsbDtyZXR1cm4hIXQmJnt0eXBlOiJpbmRleCIsdmFsdWVzOlt0LmlkXX19fSxpbmR1c3RyeTp7Y29udHJvbDoic2VsZWN0IixjYXRlZ29yeToxfSxjb3VudHJ5Ontjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjF9LHR5cGU6e2hpZGRlbkNvbHVtbjohMCxoaWRlU2V0dXBDb2x1bW46ITAsZmlsdGVyQ29uZGl0aW9uOiJzZWxlY3QiLGNhdGVnb3J5OjEscmFuZ2VUaXRsZXM6d3Qsc29ydGFibGVDb2x1bW46ITEscmVzZXR0YWJsZUZpbHRlcjohMSx1c2VEZWZhdWx0UmFuZ2U6ITAsZGVmYXVsdFJhbmdlOkN0LGFkZGl0aW9uYWxDb2x1bW5zOlsic3VidHlwZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTooZSx0LG89ITEpPT50JiZ3dFt0XT93dFt0XVtvPzE6MF06d3RbZV0/d3RbZV1bbz8xOjBdOiIiLGN1c3RvbUZpbHRlckNvbmRpdGlvbjp5ZX0sbWFya2V0X2NhcF9iYXNpYzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxfSxtYXJrZXRfY2FwX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sbWFya2V0X2NhcF9kaWx1dGVkX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sdm9sdW1lOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjF9LGF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjOnt0aXRsZTpFZS5hdmVyYWdlX3ZvbHVtZVswXSxzaG9ydFRpdGxlOkVlLmF2ZXJhZ2Vfdm9sdW1lWzFdLGNvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSx1c2VEZWZhdWx0VGltZUludGVydmFsOiEwfSxhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsYzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxLHVzZURlZmF1bHRUaW1lSW50ZXJ2YWw6ITB9LGF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjEsdXNlRGVmYXVsdFRpbWVJbnRlcnZhbDohMH0sYXZlcmFnZV92b2x1bWVfOTBkX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSx1c2VEZWZhdWx0VGltZUludGVydmFsOiEwfSxyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e3RpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZVswXSxzaG9ydFRpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZVsxXSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSwicmVsYXRpdmVfdm9sdW1lX2ludHJhZGF5LjUiOnt0aXRsZTpFZS5yZWxhdGl2ZV92b2x1bWVfYXRfdGltZVswXSxzaG9ydFRpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZV9hdF90aW1lWzFdLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjEsdXNlRGVmYXVsdFRpbWVJbnRlcnZhbEZyb21GaWVsZE5hbWU6ITB9LGNoYW5nZTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS41Ijp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xNSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2UuNjAiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6e3N0b2NrOlsiY2hhbmdlIiwicHJlbWFya2V0X2NoYW5nZSIsInBvc3RtYXJrZXRfY2hhbmdlIl0sZGVmYXVsdDpbXX0sZm9ybWF0dGVyOmF0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlLjI0MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MywKaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlLjFXIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LGNoYW5nZV9hYnM6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjEiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlX2Ficy41Ijp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZV9hYnMuMTUiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlX2Ficy42MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjI0MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjFXIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZV9hYnMuMU0iOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxiaWQ6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjEsbXV0YXRlRGlzcGxheVZhbHVlOmU9PmA8c3Bhbj4ke2V9PC9zcGFuPmB9LGFzazp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+YDxzcGFuPiR7ZX08L3NwYW4+YH0sb3Blbjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJvcGVuIikuY29uY2F0KCJwcmVtYXJrZXRfb3BlbiIsInBvc3RtYXJrZXRfb3BlbiIsInByZW1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2xvc2UiLEV0KCksIkh1bGxNQTkiLCJCQi51cHBlciIsIkJCLmxvd2VyIix4dCgpKSxmb3JleDpUdCgib3BlbiIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgib3BlbiIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxjbG9zZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODM0OTApKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgzNDkwKSksY29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJjbG9zZSIpLmNvbmNhdCgicHJlbWFya2V0X2Nsb3NlIiwicG9zdG1hcmtldF9jbG9zZSIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGZvcmV4OlR0KCJjbG9zZSIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgiY2xvc2UiKS5jb25jYXQoRXQoKSwiQkIudXBwZXIiLCJCQi5sb3dlciIsIkh1bGxNQTkiLHh0KCkpfSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+YDxzcGFuPiR7ZX08L3NwYW4+YH0saGlnaDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJoaWdoIikuY29uY2F0KCJwcmVtYXJrZXRfaGlnaCIsInBvc3RtYXJrZXRfaGlnaCIsInByZW1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2xvc2UiLEV0KCksIkh1bGxNQTkiLCJCQi51cHBlciIsIkJCLmxvd2VyIix4dCgpKSxmb3JleDpUdCgiaGlnaCIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgiaGlnaCIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxsb3c6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOnsKc3RvY2s6VHQoImxvdyIpLmNvbmNhdCgicHJlbWFya2V0X2xvdyIsInBvc3RtYXJrZXRfbG93IiwicHJlbWFya2V0X2Nsb3NlIiwicG9zdG1hcmtldF9jbG9zZSIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGZvcmV4OlR0KCJsb3ciKS5jb25jYXQoImJpZCIsImFzayIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGRlZmF1bHQ6VHQoImxvdyIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxnYXA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwcmljZV9lYXJuaW5nc190dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LHByaWNlX3NhbGVzX3JhdGlvOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxyZXR1cm5fb25fYXNzZXRzOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxyZXR1cm5fb25fZXF1aXR5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxkZWJ0X3RvX2VxdWl0eTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeToyfSxjdXJyZW50X3JhdGlvOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxxdWlja19yYXRpbzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfYm9va19mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfYm9va19yYXRpbzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfZnJlZV9jYXNoX2Zsb3dfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxiZXRhXzFfeWVhcjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSxvcGVyYXRpbmdfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWJpdGRhOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGNoYW5nZV9mcm9tX29wZW46e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxjaGFuZ2VfZnJvbV9vcGVuX2Ficzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuVyI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi4xTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi4zTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi42TSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi5ZIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJQZXJmLllURCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsCmZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuNVkiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuQWxsIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJWb2xhdGlsaXR5LlciOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LCJWb2xhdGlsaXR5Lk0iOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LCJWb2xhdGlsaXR5LkQiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LFJTSTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSU0kiLCJSU0lbMV0iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JTSVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUlNJU2lnbmFsfSxSU0k3Ontjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJTSTciLCJSU0k3WzFdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NSU0lTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVJTSVNpZ25hbH0sQURYOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkFEWCIsIkFEWCtESSIsIkFEWC1ESSIsIkFEWCtESVsxXSIsIkFEWC1ESVsxXSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzQURYU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVBRFhTaWduYWx9LCJBRFgrREkiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIkFEWC1ESSJdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6M30sIkFEWC1ESSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlsiQURYK0RJIl0sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeTozfSxBVFI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSxNb206e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiTW9tIiwiTW9tWzFdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNb21TaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1vbVNpZ25hbH0sIkhpZ2guQWxsIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkxvdy5BbGwiOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LHByaWNlXzUyX3dlZWtfaGlnaDp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30scHJpY2VfNTJfd2Vla19sb3c6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30saXNfcHJpbWFyeTp7dGl0bGU6RWUuaXNfcHJpbWFyeVswXSxjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sY2F0ZWdvcnk6MX0sYWN0aXZlX3N5bWJvbDp7aGlkZVNldHVwQ29sdW1uOiEwLGNvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxjYXRlZ29yeToxfSwiSGlnaC42TSI6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWxlc3MiLHZhbHVlOiJoaWdoIn0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJMb3cuNk0iOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJIaWdoLjNNIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkxvdy4zTSI6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkhpZ2guMU0iOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGZvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiTG93LjFNIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlZ3JlYXRlciIsdmFsdWU6ImxvdyJ9LApmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sRU1BNTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTUiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkVNQTUiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxFTUExMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTEwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUExMCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LEVNQTIwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiRU1BMjAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkVNQTIwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sRU1BMzA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJFTUEzMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiRU1BMzAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxFTUE1MDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTUwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUE1MCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LEVNQTEwMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTEwMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiRU1BMTAwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sRU1BMjAwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiRU1BMjAwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUEyMDAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUE1Ontjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BNSIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU01BNSIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LFNNQTEwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BMTAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTEwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sU01BMjA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJTTUEyMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU01BMjAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUEzMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIlNNQTMwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJTTUEzMCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LFNNQTUwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BNTAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTUwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sU01BMTAwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BMTAwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJTTUExMDAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUEyMDA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJTTUEyMDAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTIwMCIsImNsb3NlIl0sCm11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSwiU3RvY2guSyI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiU3RvY2guRCJdKSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU3RvY2guSyIsIlN0b2NoLkQiLCJTdG9jaC5LWzFdIiwiU3RvY2guRFsxXSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzU3RvY2hTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVN0b2NoU2lnbmFsfSwiU3RvY2guRCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiU3RvY2guSyJdKSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6M30sIk1BQ0QubWFjZCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiTUFDRC5zaWduYWwiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQUNEU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQUNEU2lnbmFsfSwiTUFDRC5zaWduYWwiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIk1BQ0QubWFjZCJdKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkFyb29uLlVwIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6WyJBcm9vbi5Eb3duIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LCJBcm9vbi5Eb3duIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6WyJBcm9vbi5VcCJdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSwiQkIudXBwZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIkJCLmxvd2VyIiwiS2x0Q2hubC51cHBlciIsIktsdENobmwubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbImNsb3NlIiwiQkIudXBwZXIiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0JCU2VsbFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlQkJTZWxsU2lnbmFsfSwiQkIubG93ZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIkJCLnVwcGVyIiwiS2x0Q2hubC51cHBlciIsIktsdENobmwubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbImNsb3NlIiwiQkIubG93ZXIiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0JCQnV5U2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVCQkJ1eVNpZ25hbH0sIktsdENobmwudXBwZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIktsdENobmwubG93ZXIiLCJCQi51cHBlciIsIkJCLmxvd2VyIl0pLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiS2x0Q2hubC5sb3dlciI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiS2x0Q2hubC51cHBlciIsIkJCLnVwcGVyIiwiQkIubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJQLlNBUiI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlAuU0FSIiwib3BlbiJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzUFNBUlNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUFNBUlNpZ25hbH0sIlZhbHVlLlRyYWRlZCI6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSxyYW5nZTpbTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJ8fC0oTWF0aC5wb3coMiw1MyktMSksTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJ8fE1hdGgucG93KDIsNTMpLTFdLHZhbHVlczpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN119LE1vbmV5Rmxvdzp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LENoYWlraW5Nb25leUZsb3c6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSxnb29kd2lsbDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxuZXRfZGVidDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF9kZWJ0Ontjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHJldmVudWVfcGVyX2VtcGxveWVlOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHJldHVybl9vbl9pbnZlc3RlZF9jYXBpdGFsOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sYWZ0ZXJfdGF4X21hcmdpbjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHByZV90YXhfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCwKY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGdyb3NzX3Byb2ZpdF9tYXJnaW5fZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxvcGVyX2luY29tZV9tYXJnaW5fZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxuZXRfaW5jb21lX2JlZl9kaXNjX29wZXJfbWFyZ2luX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfbWFyZ2luX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfbWFyZ2luX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHNlbGxfZ2VuX2FkbWluX2V4cF9vdGhlcl9yYXRpb19meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0sc2VsbF9nZW5fYWRtaW5fZXhwX290aGVyX3JhdGlvX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb19meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb190dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjJ9LGRpdmlkZW5kc19wYWlkOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGRpdmlkZW5kX3lpZWxkX3JlY2VudDp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGJhc2ljX2Vwc19uZXRfaW5jb21lOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxuZXRfaW5jb21lOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGdyb3NzX3Byb2ZpdDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxncm9zc19wcm9maXRfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sbnVtYmVyX29mX3NoYXJlaG9sZGVyczp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxmbG9hdF9zaGFyZXNfb3V0c3RhbmRpbmc6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF9zaGFyZXNfZGlsdXRlZDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF92YWx1ZV90cmFkZWQ6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfYXNzZXRzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX2N1cnJlbnRfYXNzZXRzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX3JldmVudWU6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfbGlhYmlsaXRpZXNfZnk6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfbGlhYmlsaXRpZXNfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sZGl2aWRlbmRzX3Blcl9zaGFyZV9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxlbnRlcnByaXNlX3ZhbHVlX2ViaXRkYV90dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LGVudGVycHJpc2VfdmFsdWVfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0scHJpY2VfcmV2ZW51ZV90dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjIKfSxudW1iZXJfb2ZfZW1wbG95ZWVzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGxhc3RfYW5udWFsX2Vwczp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sbGFzdF9hbm51YWxfcmV2ZW51ZTp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxDQ0kyMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkNDSTIwIiwiQ0NJMjBbMV0iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0NDSTIwU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVDQ0kyMFNpZ25hbH0sIkRvbmNoQ2gyMC5VcHBlciI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiRG9uY2hDaDIwLkxvd2VyIl0pLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiRG9uY2hDaDIwLkxvd2VyIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoWyJEb25jaENoMjAuVXBwZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LEh1bGxNQTk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJIdWxsTUE5IikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSZWMuSHVsbE1BOSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzU2ltcGxlU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVTaW1wbGVTaWduYWx9LEFPOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiQU8iLCJBT1sxXSIsIkFPWzJdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NBT1NpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlQU9TaWduYWx9LCJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uQ2xhc3NpYy5SMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNsYXNzaWMuUjIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DbGFzc2ljLlIzIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uQ2xhc3NpYy5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNsYXNzaWMuUzIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DbGFzc2ljLlMzIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGUiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjMiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzMiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5Xb29kaWUuTWlkZGxlIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIxIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIyIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIzIjp7CmZvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkRlbWFyay5NaWRkbGUiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5EZW1hcmsuUjEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5EZW1hcmsuUzEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSxjYW5kbGVzdGljazp7YWxpYXM6Im5hbWUiLGNvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6Myxzb3J0YWJsZUNvbHVtbjohMSxhZGRpdGlvbmFsQ29sdW1uczpvdC5tYXAoKGU9PmUua2V5KSksbXV0YXRlRGlzcGxheVZhbHVlOihlLC4uLnQpPT57Y29uc3Qgbz1bXTtmb3IobGV0IGU9MDtlPG90Lmxlbmd0aDsrK2UpdFtlXSYmby5wdXNoKG90W2VdKTtyZXR1cm4gby5sZW5ndGg/by5tYXAoKGU9PmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3BhdHRlcm5faWNvbiBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCBjb21tb24tdG9vbHRpcC1iZWxvdyBjb21tb24tdG9vbHRpcC1odG1sIiBkYXRhLWNvbG9yLXRoZW1lPSJyb3VuZC1zaGFkb3ciIHRpdGxlPSc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fcGF0dGVybl90b29sdGlwX2NvbnRhaW5lciI+JHtlLnN2Z308ZGl2PiR7ZS5uYW1lfTwvZGl2PjwvZGl2Pic+JHtlLnN2Z308L3NwYW4+YCkpLmpvaW4oIiAiKTonPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2VtcHR5Ij7igJQ8L3NwYW4+J30scmFuZ2U6b3QubWFwKChlPT5lLm5hbWUpKSxzb3VyY2VSYW5nZTpvdCxjdXN0b21GaWx0ZXJDb25kaXRpb246ZT0+e0FycmF5LmlzQXJyYXkoZSl8fChlPVtlXSk7cmV0dXJue2xlZnQ6ZS5tYXAoKGU9PmJ0KGUsb3QpKSkuam9pbigiLCIpLG9wZXJhdGlvbjoiZXF1YWwiLHJpZ2h0OjF9fX0sdXBkYXRlX21vZGU6e2hpZGRlbkNvbHVtbjohMSxoaWRlU2V0dXBDb2x1bW46ITAsc2tpcEZpZWxkOiEwfSxwcmVtYXJrZXRfY2hhbmdlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjU3MTMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDIwODg0NikpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZSJdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHByZW1hcmtldF9jaGFuZ2VfYWJzOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1OTc3NjMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ2NTU3NCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZV9hYnMiXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHByZW1hcmtldF9jaGFuZ2VfZnJvbV9vcGVuOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzODY5NjkpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY0MjMyOCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwcmVtYXJrZXRfY2hhbmdlX2Zyb21fb3Blbl9hYnM6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUwODI3NikpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNDk5NDk1KSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0scHJlbWFya2V0X2Nsb3NlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzODY0NzQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDM4NjQ3NCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjF9LHByZW1hcmtldF9nYXA6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUxMTMxMykpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTExMzEzKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOlsiZ2FwIl0sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0scHJlbWFya2V0X2hpZ2g6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDI0NTgxMikpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjQ1ODEyKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scHJlbWFya2V0X2xvdzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNDI1MjAwKSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0MjUyMDApKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwcmVtYXJrZXRfb3Blbjp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjE2NzY0KSksCnNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjE2NzY0KSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scHJlbWFya2V0X3ZvbHVtZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTcxNDE1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNzE0MTUpKSxjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjF9LHBvc3RtYXJrZXRfY2hhbmdlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzOTk5NjgpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY3MzcwMykpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZSJdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHBvc3RtYXJrZXRfY2hhbmdlX2Ficzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzAwNjU1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0NTI3MjIpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6WyJjaGFuZ2VfYWJzIl0sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwb3N0bWFya2V0X2Nsb3NlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3ODgwMDIpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc4ODAwMikpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjF9LHBvc3RtYXJrZXRfaGlnaDp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzQyMjk5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3NDIyOTkpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwb3N0bWFya2V0X2xvdzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTM2OTAyKSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxMzY5MDIpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwb3N0bWFya2V0X29wZW46e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDM5NzMzMykpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzk3MzMzKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scG9zdG1hcmtldF92b2x1bWU6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDc5OTI2KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3OTkyNikpLGNvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LGVhcm5pbmdzX3Blcl9zaGFyZV9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWFybmluZ3NfcmVsZWFzZV9kYXRlOntjb250cm9sOiJzZWxlY3QiLGlzU2luZ2xlOiEwLGNhdGVnb3J5OjIsc29ydGFibGU6ITEsdXNlRGVmYXVsdFJhbmdlOiEwLGRlZmF1bHRSYW5nZTp1dC5maWx0ZXIoKGU9Pi0xIT09X3QuaW5kZXhPZihlLmtleSkpKS5tYXAoKGU9PmUubmFtZSkpLHNvdXJjZVJhbmdlOnV0LGN1c3RvbUZpbHRlckNvbmRpdGlvbjpndCgiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiksZm9ybWF0dGVyOmN0fSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTp7Y29udHJvbDoic2VsZWN0Iixpc1NpbmdsZTohMCxjYXRlZ29yeToyLHNvcnRhYmxlOiExLHVzZURlZmF1bHRSYW5nZTohMCxkZWZhdWx0UmFuZ2U6dXQuZmlsdGVyKChlPT4tMSE9PXB0LmluZGV4T2YoZS5rZXkpKSkubWFwKChlPT5lLm5hbWUpKSxzb3VyY2VSYW5nZTp1dCxjdXN0b21GaWx0ZXJDb25kaXRpb246Z3QoImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiksZm9ybWF0dGVyOmN0fSwiUmVjb21tZW5kLkFsbCI6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MyxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JlY29tbWVuZFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUmVjb21tZW5kU2lnbmFsLHVzZURlZmF1bHRSYW5nZTohMCxzb3J0YWJsZTohMSxzb3J0U2VsZWN0ZWRGaXJzdDohMSxkZWZhdWx0UmFuZ2U6ZHQsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5BbGwiKX0sIlJlY29tbWVuZC5NQSI6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MyxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JlY29tbWVuZFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUmVjb21tZW5kU2lnbmFsLHVzZURlZmF1bHRSYW5nZTohMCxzb3J0YWJsZTohMSxzb3J0U2VsZWN0ZWRGaXJzdDohMSxkZWZhdWx0UmFuZ2U6ZHQsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5NQSIpfSwiUmVjb21tZW5kLk90aGVyIjp7Y29udHJvbDoic2VsZWN0IixjYXRlZ29yeTozLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzUmVjb21tZW5kU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVSZWNvbW1lbmRTaWduYWwsdXNlRGVmYXVsdFJhbmdlOiEwLHNvcnRhYmxlOiExLHNvcnRTZWxlY3RlZEZpcnN0OiExLGRlZmF1bHRSYW5nZTpkdCwKY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5PdGhlciIpfSwiU3RvY2guUlNJLksiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIlN0b2NoLlJTSS5EIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5TdG9jaC5SU0kiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1NpbXBsZVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlU2ltcGxlU2lnbmFsfSwiU3RvY2guUlNJLkQiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIlN0b2NoLlJTSS5LIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LCJXLlIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiUmVjLldSIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sUk9DOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6M30sQkJQb3dlcjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5CQlBvd2VyIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sVU86e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSZWMuVU8iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1NpbXBsZVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlU2ltcGxlU2lnbmFsfSxWV0FQOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sVldNQTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5WV01BIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sQURSOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiSWNoaW1va3UuQ0xpbmUiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdCh4dCgiSWNoaW1va3UuQ0xpbmUiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJJY2hpbW9rdS5CTGluZSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KHh0KCJJY2hpbW9rdS5CTGluZSIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiUmVjLkljaGltb2t1Il0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sIkljaGltb2t1LkxlYWQxIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoeHQoIkljaGltb2t1LkxlYWQxIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiSWNoaW1va3UuTGVhZDIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdCh4dCgiSWNoaW1va3UuTGVhZDIiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LGVsZW1lbnRzOntoaWRkZW5PcGVyYXRvcnM6QXQsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTA1ODM1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg5MDU4MzUpKSxjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0sYmFzaWNfZWxlbWVudHM6e2hpZGRlbk9wZXJhdG9yczpBdCx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1MjIwMTQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDUyMjAxNCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LCIyNGhfdm9sfDUiOntjYXRlZ29yeToxLGZvcm1hdHRlcjpzdCxjb250cm9sOiJyYW5nZSIsdGl0bGU6RWVbIjI0aF92b2x8NSJdWzBdLHNob3J0VGl0bGU6RWVbIjI0aF92b2x8NSJdWzFdfSwiMjRoX3ZvbF9jaGFuZ2V8NSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MSxoaWdobGlnaHRDaGFuZ2U6ITB9LGN1cnJlbmN5Ontjb250cm9sOiJzZWxlY3QiLGRlZmF1bHRSYW5nZTpbIlVTRCIsIlVTRFQiLCJVU0RDIiwiQlVTRCIsIkJUQyIsIkVUSCIsIkRBSSIsIkJOQiIsIldCVEMiLCJXRVRIIl0sZGlzYWJsZWQ6ITAsY2F0ZWdvcnk6MSxoaWRlU2V0dXBDb2x1bW46ITB9LHRvdGFsX3JldmVudWVfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHRvdGFsX3JldmVudWVfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsCmNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxncm9zc19wcm9maXRfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWJpdGRhX3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxlYml0ZGFfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGViaXRkYV95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWJpdGRhX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV9xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxmcmVlX2Nhc2hfZmxvd19xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF9meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3FvcV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwCn0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9hc3NldHNfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHRvdGFsX2Fzc2V0c19xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sdG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxjYXNoX25fZXF1aXZhbGVudHNfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sY2FzaF9uX2VxdWl2YWxlbnRzX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn19O2Z1bmN0aW9uIFJ0KGUsdCl7dD10LnJlcGxhY2UoLyhccyspLywiKDxbXj5dKz4pKiQxKDxbXj5dKz4pKiIpO2NvbnN0IG89bmV3IFJlZ0V4cCgiKCIrdCsiKSIsImdpIik7cmV0dXJuIGUucmVwbGFjZShvLCI8bWFyaz4kMTwvbWFyaz4iKX1mdW5jdGlvbiBGdChlLHQpe2ZvcihsZXQgbz0wO288ZS5sZW5ndGg7KytvKXtjb25zdCBpPWVbb107aS5sZWZ0JiZJdFtpLmxlZnRdJiYoaS5sZWZ0PWhlKGkubGVmdCx0KSl9fWZ1bmN0aW9uIEx0KGUsdCxvLGkpe2lmKEFycmF5LmlzQXJyYXkodCkmJjA9PT10Lmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkVtcHR5IHZhbHVlIik7bGV0IG49byYmb1tlXT9vW2VdOnQ7aWYoImZ1bmN0aW9uIj09dHlwZW9mIEl0W2VdLmN1c3RvbUZpbHRlckNvbmRpdGlvbil7Y29uc3QgdD1JdFtlXS5jdXN0b21GaWx0ZXJDb25kaXRpb24obik7aWYodClyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT9GdCh0LGkpOigiY2FuZGxlc3RpY2siPT09ZSYmKHQubGVmdD10LmxlZnQuc3BsaXQoIiwiKS5tYXAoKGU9PmhlKGUsaSkpKS5qb2luKCIsIikpLHQubGVmdCYmSXRbdC5sZWZ0XSYmKHQubGVmdD1oZSh0LmxlZnQsaSkpKSx0LmZpbHRlck9SJiYoRnQodC5maWx0ZXIsaSksRnQodC5maWx0ZXJPUixpKSksdC5maWx0ZXIyRmxhZyYmKEZ0KHQuZmlsdGVyLGkpLEZ0KHQuZmlsdGVyMkFuZFBhcnQsaSkpLHR9aWYoImZ1bmN0aW9uIj09dHlwZW9mIEl0W2VdLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlKXtjb25zdCB0PUl0W2VdLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlKG4pO3QmJihuPXQpfWNvbnN0IHI9QXJyYXkuaXNBcnJheShuKTtpZihuJiYib2JqZWN0Ij09dHlwZW9mIG4mJiFyKXtjb25zdCB0PXtsZWZ0OmUsb3BlcmF0aW9uOm4ub3BlcmF0b3J9O3JldHVybiBuLnZhbHVlJiYodC5yaWdodD1uLnZhbHVlKSx0fXJldHVybntsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOnI/ImluX3JhbmdlIjoiZXF1YWwiLHJpZ2h0OnI/bi5zbGljZSgpOm59fWZ1bmN0aW9uIER0KGUsdCxvLGkpe2lmKG10KHQpJiZtdChvKSl0aHJvdyBuZXcgRXJyb3IoIkVtcHR5IHZhbHVlIik7bGV0IG4scj17fTtzd2l0Y2goSXRbZV0uY29udHJvbCl7Y2FzZSJyYW5nZSI6aWYodCYmIm9iamVjdCI9PXR5cGVvZiB0JiYhQXJyYXkuaXNBcnJheSh0KSl7cj17bGVmdDplLG9wZXJhdGlvbjp0Lm9wZXJhdG9yfSx0LnZhbHVlJiYoci5yaWdodD10LnZhbHVlKTticmVha30KdmFyIHM9bz9BcnJheS5pc0FycmF5KG9bZV0pJiZvW2VdLnNsaWNlKCl8fFtdOnQuc2xpY2UoKTtyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOiJpbl9yYW5nZSIscmlnaHQ6c30sMj09PXMubGVuZ3RoJiYoMCxILmlzTnVtYmVyKShzWzBdKSYmKDAsSC5pc051bWJlcikoc1sxXSkmJigtMWUxMDA9PStzWzBdP3I9e2xlZnQ6aGUoZSxpKSxvcGVyYXRpb246ImVsZXNzIixyaWdodDpzWzFdfToxZTEwMD09K3NbMV0mJihyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOiJlZ3JlYXRlciIscmlnaHQ6c1swXX0pKTticmVhaztjYXNlImNvbmRpdGlvbiI6aWYobXQodC5vcGVyYXRvcikpdGhyb3cgbmV3IEVycm9yKCJFbXB0eSB2YWx1ZSBvcGVyYXRvciIpO2lmKG10KHQudmFsdWUpKXRocm93IG5ldyBFcnJvcigiRW1wdHkgdmFsdWUiKTtuPW8mJm9bZV0udmFsdWU/b1tlXS52YWx1ZTp0LnZhbHVlLEl0W25dJiYobj1oZShuLGkpKSxyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOm8mJm9bZV0ub3BlcmF0b3I/b1tlXS5vcGVyYXRvcjp0Lm9wZXJhdG9yLHJpZ2h0Om59O2JyZWFrO2Nhc2UidG9nZ2xlIjpyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOm8mJm9bZV0ub3BlcmF0b3I/b1tlXS5vcGVyYXRvcjpJdFtlXS5maWx0ZXIub3BlcmF0b3IscmlnaHQ6byYmb1tlXS52YWx1ZT9vW2VdLnZhbHVlOkl0W2VdLmZpbHRlci52YWx1ZX07YnJlYWs7Y2FzZSJzZWxlY3QiOnI9THQoZSx0LG8saSk7YnJlYWs7ZGVmYXVsdDoic2VsZWN0Ij09PUl0W2VdLmZpbHRlckNvbmRpdGlvbiYmKHI9THQoZSx0LG8saSkpfXJldHVybiByfWZ1bmN0aW9uIE90KGUsdCl7IWZ1bmN0aW9uKGUsdCl7Zm9yKGNvbnN0IG8gaW4gZSllW29dLmRpc2FibGVkPTI9PT1lW29dLmNhdGVnb3J5fHx0LmluY2x1ZGVzKG8pfShlLCh0fHxbXSkuY29uY2F0KCJ0eXBlIiwiaW5kdXN0cnkiLCJtYXJrZXRfY2FwX2Jhc2ljIiwiYmV0YV8xX3llYXIiLCJWYWx1ZS5UcmFkZWQiLCJNb25leUZsb3ciLCJDaGFpa2luTW9uZXlGbG93IiwiZWxlbWVudHMiLCJiYXNpY19lbGVtZW50cyIsInByZW1hcmtldF9jaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlX2FicyIsInByZW1hcmtldF9jaGFuZ2VfZnJvbV9vcGVuIiwicHJlbWFya2V0X2NoYW5nZV9mcm9tX29wZW5fYWJzIiwicHJlbWFya2V0X2Nsb3NlIiwicHJlbWFya2V0X2dhcCIsInByZW1hcmtldF9oaWdoIiwicHJlbWFya2V0X2xvdyIsInByZW1hcmtldF9vcGVuIiwicHJlbWFya2V0X3ZvbHVtZSIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2VfYWJzIiwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfaGlnaCIsInBvc3RtYXJrZXRfbG93IiwicG9zdG1hcmtldF9vcGVuIiwicG9zdG1hcmtldF92b2x1bWUiKSl9ZnVuY3Rpb24gTnQoKXtmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhFZSkpZSBpbiBJdCYmKEl0W2VdLnRpdGxlPUl0W2VdLnRpdGxlfHxFZVtlXVswXSxJdFtlXS5zaG9ydFRpdGxlPUl0W2VdLnNob3J0VGl0bGV8fEVlW2VdWzFdKX1mdW5jdGlvbiBQdChlLHQpe2lmKGRlbGV0ZSBJdC5uYW1lLmNvbnRyb2wsTnQoKSwiZm9yZXgiPT09ZSYmKEl0LmNvdW50cnkudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oMjI0ODIxKSksSXQuY291bnRyeS5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDIyNDgyMSkpLGRlbGV0ZSBJdC5zZWN0b3IuY29udHJvbCxJdC5zZWN0b3IudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODYyOTQ5KSksSXQuc2VjdG9yLnNob3J0VGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODYyOTQ5KSksSXQuc2VjdG9yLnJlc2V0dGFibGVGaWx0ZXI9ITEsSXQuc2VjdG9yLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlPWU9PiEhZSYmKEFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoKGU9PnZ0KGUsaHQpKSk6dnQoZSxodCkpKSwic3RvY2siPT09ZSl7SXQuc2VjdG9yLnRpdGxlPV8udChudWxsLHZvaWQgMCxvKDI3ODcyOSkpLEl0LnNlY3Rvci5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDI3ODcyOSkpLEl0LnR5cGUuY3VzdG9tRmlsdGVyQ29uZGl0aW9uPXllLEl0LnR5cGUuZGVmYXVsdFJhbmdlPUN0LEl0Lm5hbWUuZGVmYXVsdFJhbmdlPUN0LEl0LnNlY3Rvci5jb250cm9sPSJzZWxlY3QiLEl0LnNlY3Rvci5yZXNldHRhYmxlRmlsdGVyPSEwLGRlbGV0ZSBJdC5zZWN0b3IubXV0YXRlRmlsdGVyQ29uZGl0aW9uVmFsdWU7Zm9yKGNvbnN0IGUgaW4gSXQpSXRbZV0uZGlzYWJsZWQ9ITF9WyJzdG9jayIsImNyeXB0byJdLmluY2x1ZGVzKGUpJiYoSXQubmFtZS5jb250cm9sPSJzZWxlY3QiKSwiY3J5cHRvIj09PWUmJihJdC5zZWN0b3IudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oNTQ1OCkpLEl0LnNlY3Rvci5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDU0NTgpKSxJdC5zZWN0b3IuY29udHJvbD0ic2VsZWN0IixJdC5zZWN0b3IucmVzZXR0YWJsZUZpbHRlcj0hMCxkZWxldGUgSXQuc2VjdG9yLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlLEl0Lm5hbWUuYWRkaXRpb25hbENvbHVtbnMucHVzaCgiZXhjaGFuZ2UiKSxJdC50eXBlLmRlZmF1bHRSYW5nZT1rdCxJdC5uYW1lLmRlZmF1bHRSYW5nZT1rdCxJdC50eXBlLmN1c3RvbUZpbHRlckNvbmRpdGlvbj1iZSksImNyeXB0byIhPT1lJiYoSXQubmFtZS5hZGRpdGlvbmFsQ29sdW1ucz1JdC5uYW1lLmFkZGl0aW9uYWxDb2x1bW5zLmZpbHRlcigoZT0+ImV4Y2hhbmdlIiE9PWUpKSksImNyeXB0b19ta3QiPT09ZSYmKEl0LnNlY3Rvci50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3MzQ5OTMpKSxJdC5zZWN0b3Iuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3MzQ5OTMpKSksWyJjcnlwdG8iLCJjcnlwdG9fbWt0Il0uaW5jbHVkZXMoZSkmJihJdC50b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmcudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODM1OTYxKSksSXQudG90YWxfc2hhcmVzX291dHN0YW5kaW5nLnNob3J0VGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODEzMDc3KSkpLCJzZWN0b3IiPT09ZSYmKEl0LmRlc2NyaXB0aW9uLmhpZGRlbkNvbHVtbj0hMSwKSXQuZGVzY3JpcHRpb24udGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oMjc4NzI5KSksSXQuZGVzY3JpcHRpb24uc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKSxJdC5kZXNjcmlwdGlvbi5tdXRhdGVEaXNwbGF5VmFsdWU9TXQpLCJpbmR1c3RyeSI9PT1lJiYoSXQuZGVzY3JpcHRpb24uaGlkZGVuQ29sdW1uPSExLEl0LmRlc2NyaXB0aW9uLnRpdGxlPV8udChudWxsLHZvaWQgMCxvKDg3NzYxKSksSXQuZGVzY3JpcHRpb24uc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4Nzc2MSkpLEl0LmRlc2NyaXB0aW9uLm11dGF0ZURpc3BsYXlWYWx1ZT1NdCxJdC5lbGVtZW50cy50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg1MjIwMTQpKSxJdC5lbGVtZW50cy5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDUyMjAxNCkpLEl0LnNlY3Rvci5jb250cm9sPSJzZWxlY3QiLEl0LnNlY3Rvci5yZXNldHRhYmxlRmlsdGVyPSEwKSxbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXModCkmJihJdC5zZWN0b3IuaGlkZGVuQ29sdW1uPSEwKSwiYm9uZHMiPT09ZSYmKEl0LmNsb3NlLnRpdGxlPV8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzU0NikpLEl0LmNsb3NlLnNob3J0VGl0bGU9Xy50KG51bGwse2NvbnRleHQ6IkJvbmRzIn0sbyg3NTQ2KSksSXQuY291cG9uPXt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyMjU3MDYpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDIyNTcwNikpLGFsaWduOiJyaWdodCIsZm9ybWF0dGVyOmF0fSxJdC5tYXR1cml0eV9kYXRlPXt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyNzc5ODQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDI3Nzk4NCkpLGFsaWduOiJyaWdodCIsbXV0YXRlRGlzcGxheVZhbHVlOm1lfSksImNvbnRpbnVvdXNfZnV0dXJlcyI9PT1lJiYoSXQuZXhwaXJhdGlvbj17dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzY1NTg5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygzNjU1ODkpKSxhbGlnbjoicmlnaHQiLG11dGF0ZURpc3BsYXlWYWx1ZTptZX0pLGZ1bmN0aW9uKGUsdCl7c3dpdGNoKGUpe2Nhc2Uic3RvY2siOlsiYmlkIiwiYXNrIiwiY3VycmVuY3kiLCJjZW50cmFsaXphdGlvbiJdLmZvckVhY2goKGU9Pnt0W2VdLmRpc2FibGVkPSEwfSkpO2JyZWFrO2Nhc2UiZm9yZXgiOk90KHQsWyJleGNoYW5nZSIsInZvbHVtZSIsInJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYyIsInJlbGF0aXZlX3ZvbHVtZV9pbnRyYWRheS41IiwiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGMiLCJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsYyIsImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjIiwiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGMiLCJjdXJyZW5jeSIsImNlbnRyYWxpemF0aW9uIl0pO2JyZWFrO2Nhc2UiZnV0dXJlcyI6Y2FzZSJjZmQiOk90KHQsWyJiaWQiLCJhc2siLCJjZW50cmFsaXphdGlvbiJdKTticmVhaztjYXNlImNyeXB0byI6T3QodCxbImNvdW50cnkiLCJzZWN0b3IiXSl9fShlLEl0KTtbIm1hcmtldF9jYXBfY2FsYyIsIm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nIiwidG90YWxfc2hhcmVzX2RpbHV0ZWQiLCJ0b3RhbF92YWx1ZV90cmFkZWQiLCIyNGhfdm9sfDUiLCIyNGhfdm9sX2NoYW5nZXw1Il0uZm9yRWFjaCgodD0+e0l0W3RdLmRpc2FibGVkPSFbImNyeXB0byIsImNyeXB0b19ta3QiXS5pbmNsdWRlcyhlKX0pKTtbImVsZW1lbnRzIiwiYmFzaWNfZWxlbWVudHMiXS5mb3JFYWNoKCh0PT57SXRbdF0uZGlzYWJsZWQ9IVsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyhlKX0pKX1OdCgpO2NvbnN0IEJ0PVt7a2V5OiItMSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg3MDA1MDgpKX0se2tleToiMSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg1NzI5NjIpKX1dLCR0PVt7a2V5OiItMSIsbmFtZTonPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29uIj4nK28oNTk4NTg1KSsiPC9kaXY+In0se2tleToiMSIsbmFtZTonPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29uIj4nK28oNjkzMjM2KSsiPC9kaXY+In1dO2Z1bmN0aW9uIFd0KCl7Y29uc3QgZT0oZSx0LG8saSk9Pntjb25zdCBuPWJ0KGUsdXQpfHxudWxsLHI9bj9TdChuKTpudWxsO3JldHVybiByJiZyWzBdPD0xZTMqdCYmMWUzKnQ8PXJbMV0/aTpvfTtJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfdGltZT17aXNTaW5nbGU6ITAsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODYyMTE5KSksdG9vbHRpcDoodCxvLGkpPT57Y29uc3Qgbj1JdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZS52YWx1ZSxyPWUobix0LG8saSk7cmV0dXJuIHI/eXQoKHM9cikudG9TdHJpbmcoKSxCdCl8fHM6dm9pZCAwO3ZhciBzfSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDg2MjExOSkpLGRpc2FibGVIZWFkZXJDb250cm9sOiEwLGFsaWduOiJjZW50ZXIiLGFkZGl0aW9uYWxDb2x1bW5zOlsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX3RpbWUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSJdLG11dGF0ZURpc3BsYXlWYWx1ZToodCxvLGksbik9Pntjb25zdCByPUl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHM9ZShyLG8saSxuKTtyZXR1cm4gcz95dCgoYT1zKS50b1N0cmluZygpLCR0KXx8YTpxdDt2YXIgYX0sY2F0ZWdvcnk6Mn0sSXQuY2xvc2UudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODM0OTApKSxJdC5jbG9zZS5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDgzNDkwKSksSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGU9T2JqZWN0LmFzc2lnbihJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSx7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTA3NzI5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1MDc3MjkpKSxub0FueTohMCxhZGRpdGlvbmFsQ29sdW1uczpbImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIl0sCmRlZmF1bHRSYW5nZTp1dC5tYXAoKGU9PmUubmFtZSkpLHJlc2V0dGFibGVGaWx0ZXI6ITEsbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyxpKT0+e2lmKCFvJiZ0KXJldHVybiBjdC5mb3JtYXQodCk7aWYoaS52YWx1ZSl7Y29uc3QgZT1idChpLnZhbHVlLHV0KTtpZihlKXtjb25zdCBpPVN0KGUpO2lmKGkpe2lmKHQmJlZ0KHQsaSkpcmV0dXJuIGN0LmZvcm1hdCh0KTtpZihvJiZWdChvLGkpKXJldHVybiBjdC5mb3JtYXQobyl9fX1yZXR1cm4gZX0sY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmd0KCl9KSxJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfY2FsZW5kYXJfZGF0ZT17dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTU2ODc0KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNTY4NzQpKSxmb3JtYXR0ZXI6Y3QsY2F0ZWdvcnk6MSxhZGRpdGlvbmFsQ29sdW1uczpbImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9jYWxlbmRhcl9kYXRlIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyk9Pntjb25zdCBpPWJ0KEl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHV0KTtpZihpKXtjb25zdCBvPVN0KGkpO2lmKG8mJlZ0KHQsbykpcmV0dXJuIGV9cmV0dXJuIG8/Y3QuZm9ybWF0KG8pOnF0fX0sZGVsZXRlIEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxLmNvbnRyb2wsSXQuZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oNzg5MTU1KSksSXQuZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3ODkxNTUpKSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5kaXNhYmxlSGVhZGVyQ29udHJvbD0hMCxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5hbGlnbj0icmlnaHQiLEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxLmFkZGl0aW9uYWxDb2x1bW5zPVsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnEiXSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5tdXRhdGVEaXNwbGF5VmFsdWU9KGUsdCxvKT0+e2NvbnN0IGk9YnQoSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUudmFsdWUsdXQpO2lmKGkpe2NvbnN0IG89U3QoaSk7aWYobyYmVnQodCxvKSlyZXR1cm4gZX1yZXR1cm4gbz9udC5mb3JtYXQobyk6cXR9LEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mcS50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4NTc4OTgpKSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZnEuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4NTc4OTgpKSxJdC5lcHNfc3VycHJpc2VfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpFZS5lcHNfc3VycHJpc2VfZnFbMF0sc2hvcnRUaXRsZTpFZS5lcHNfc3VycHJpc2VfZnFbMV0sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sSXQuZXBzX3N1cnByaXNlX3BlcmNlbnRfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpFZS5lcHNfc3VycHJpc2VfcGVyY2VudF9mcVswXSxzaG9ydFRpdGxlOkVlLmVwc19zdXJwcmlzZV9wZXJjZW50X2ZxWzFdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LEl0LnJldmVudWVfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1ODgzNzMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU4ODM3MykpLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxfSxJdC5yZXZlbnVlX2ZvcmVjYXN0X25leHRfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0NTk1ODcpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ1OTU4NykpLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxLGFkZGl0aW9uYWxDb2x1bW5zOlsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJyZXZlbnVlX2ZvcmVjYXN0X2ZxIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyk9Pntjb25zdCBpPWJ0KEl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHV0KTtpZihpKXtjb25zdCBvPVN0KGkpO2lmKG8mJlZ0KHQsbykpcmV0dXJuIjAiPT09ZT9xdDplfXJldHVybiBvP3N0LmZvcm1hdChvKTpxdH19LFV0KCl9Y29uc3QgcXQ9JzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFsIj7igJQ8L3NwYW4+JztmdW5jdGlvbiBWdChlLHQpe3JldHVybiBmdW5jdGlvbihlLHQpe2NvbnN0IG89dFswXSxpPXRbMV07cmV0dXJuIG88PWUmJmU8PWl9KDFlMyplLHQpfWNvbnN0IEh0PWU9PntlLmFkZGl0aW9uYWxDb2x1bW5zPVsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiXSxlLm11dGF0ZURpc3BsYXlWYWx1ZT0oZSx0KT0+e2NvbnN0IG89YnQoSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUudmFsdWUsdXQpO2lmKG8pe2NvbnN0IGU9U3Qobyk7aWYoZSYmVnQodCxlKSlyZXR1cm4gcXR9cmV0dXJuIGV9fTtmdW5jdGlvbiBVdCgpe0h0KEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mcSksSHQoSXQuZXBzX3N1cnByaXNlX2ZxKSxIdChJdC5lcHNfc3VycHJpc2VfcGVyY2VudF9mcSksSHQoSXQucmV2ZW51ZV9mcSl9ZnVuY3Rpb24genQoZSx0PSJzdG9jayIsbz0hMCl7aWYoIWUpcmV0dXJuIG51bGw7aWYoWyJjcnlwdG9fbWt0Il0uaW5jbHVkZXModCkmJmUuY3J5cHRvRm9ybWF0dGVyKXJldHVybiBlLmNyeXB0b0Zvcm1hdHRlcjtpZihbImZvcmV4IiwiY3J5cHRvIiwiY3J5cHRvX21rdCIsImNmZCIsImZ1dHVyZXMiXS5pbmNsdWRlcyh0KSl7CmlmKGUuZm9yZXhGaWx0ZXJGb3JtYXR0ZXIpcmV0dXJuIGUuZm9yZXhGaWx0ZXJGb3JtYXR0ZXI7aWYoZS5mb3JleEZvcm1hdHRlcilyZXR1cm4gZS5mb3JleEZvcm1hdHRlcn1yZXR1cm4gbyYmZS5maWx0ZXJGb3JtYXR0ZXI/ZS5maWx0ZXJGb3JtYXR0ZXI6ZS5mb3JtYXR0ZXI/ZS5mb3JtYXR0ZXI6bnVsbH1jb25zdCBqdD17fTtmdW5jdGlvbiBHdChlLHQsbyxpKXtjb25zdCBuPWUrIjsiK3QrIjsiK28rIjsiK2k7cmV0dXJuIGp0W25dfHwoanRbbl09bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6ZSxtaW5Nb3ZlOnQsZnJhY3Rpb25hbDpvLG1pbk1vdmUyOml9KSksanRbbl19ZnVuY3Rpb24gWHQoZSl7cmV0dXJuIEl0W2VdJiYhSXRbZV0uZml4ZWQmJiFJdFtlXS5kaXNhYmxlZCYmIUl0W2VdLmhpZGVTZXR1cENvbHVtbn1mdW5jdGlvbiBLdChlKXtyZXR1cm4gZS5maWx0ZXJUaXRsZXx8ZS50aXRsZX1mdW5jdGlvbiBZdChlLHQpe3JldHVybiBBcnJheS5pc0FycmF5KGUpJiZBcnJheS5pc0FycmF5KHQpP2Z1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bLi4uZSwuLi50XTtyZXR1cm5bTWF0aC5taW4oLi4ubyksTWF0aC5tYXgoLi4ubyldfShlLHQpOiJzdHJpbmciIT10eXBlb2YgZT9mdW5jdGlvbihlLHQpe3JldHVybiBlLm9wZXJhdG9yIT09dC5vcGVyYXRvcj9udWxsOiJncmVhdGVyIj09PXQub3BlcmF0b3I/e29wZXJhdG9yOmUub3BlcmF0b3IsdmFsdWU6TWF0aC5taW4odC52YWx1ZSxlLnZhbHVlKX06e29wZXJhdG9yOmUub3BlcmF0b3IsdmFsdWU6TWF0aC5tYXgoZS52YWx1ZSx0LnZhbHVlKX19KGUsdCk6ZT09PXQ/ZTpudWxsfWNvbnN0IEp0PXtmb3JleDp7dG9wX2dhaW5lcnM6Xy50KG51bGwsdm9pZCAwLG8oNDA3NDM4KSksdG9wX2xvc2VyczpfLnQobnVsbCx2b2lkIDAsbyg0Mjg5NzgpKX0sZGVmYXVsdDp7dG9wX2dhaW5lcnM6Xy50KG51bGwsdm9pZCAwLG8oODE0MDIxKSksdG9wX2xvc2VyczpfLnQobnVsbCx2b2lkIDAsbygzODQ1NDApKX19LFp0PVt7aWQ6ImdlbmVyYWwiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDkxMDgyMSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e319fSx7aWQ6Im1vc3RfY2FwaXRhbGl6ZWQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU1NDE1MSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfYmFzaWMiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InZvbHVtZV9sZWFkZXJzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNTUyODApKSxhZGp1c3RGaWx0ZXI6e3ZvbHVtZTpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InZvbHVtZSIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoidG9wX2dhaW5lcnMiLHRpdGxlOkp0LmRlZmF1bHQudG9wX2dhaW5lcnMsYWRqdXN0RmlsdGVyOntjaGFuZ2U6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJjaGFuZ2UiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntjaGFuZ2U6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTowfSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InRvcF9sb3NlcnMiLHRpdGxlOkp0LmRlZmF1bHQudG9wX2xvc2VycyxhZGp1c3RGaWx0ZXI6e2NoYW5nZTpbMF19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6ImNoYW5nZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7Y2hhbmdlOntvcGVyYXRvcjoibGVzcyIsdmFsdWU6MH0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJhdGgiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDI0MTMxNykpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJIaWdoLkFsbCI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6ImF0bCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjI1NDg4KSksY29udGVudDp7c29ydF9maWVsZDoibmFtZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7Ikxvdy5BbGwiOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6ImhpZ2hfZGl2aWRlbmQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDg4NTkzKSksY29udGVudDp7c29ydF9maWVsZDoiZGl2aWRlbmRfeWllbGRfcmVjZW50Iixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7ZGl2aWRlbmRfeWllbGRfcmVjZW50OntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MH0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJhYm92ZV81MndrX2hpZ2giLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ1NzE5NSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e3ByaWNlXzUyX3dlZWtfaGlnaDp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGlzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoiYmVsb3dfNTJ3a19sb3ciLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgzODY5MCkpLApjb250ZW50Ontzb3J0X2ZpZWxkOiJuYW1lIixzb3J0X2RpcmVjdGlvbjoiYXNjIixmaWx0ZXJzOntwcmljZV81Ml93ZWVrX2xvdzp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJtb250aGx5X2hpZ2giLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc1OTg0MSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJIaWdoLjFNIjp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGlzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoibW9udGhseV9sb3ciLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDk5NjU3MikpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJMb3cuMU0iOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6Im1vc3Rfdm9sYXRpbGUiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY1NjYwMykpLGFkanVzdEZpbHRlcjp7IlZvbGF0aWxpdHkuRCI6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJWb2xhdGlsaXR5LkQiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InVudXN1YWxfdm9sdW1lIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyNTAwNzIpKSxhZGp1c3RGaWx0ZXI6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYyIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpudWxsLGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoib3ZlcmJvdWdodCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjIyNTk3KSksY29udGVudDp7c29ydF9maWVsZDoibmFtZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sUlNJOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6NzB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoib3ZlcnNvbGQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgxMTIwMykpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFJTSTp7b3BlcmF0b3I6Imxlc3MiLHZhbHVlOjMwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6Im91dHBlcmZvcm1pbmdfU01BNTAiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDM3NjUzMikpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFNNQTUwOntvcGVyYXRvcjoibGVzcyIsdmFsdWU6ImNsb3NlIn0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJ1bmRlcnBlcmZvcm1pbmdfU01BNTAiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc0MjMzOCkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFNNQTUwOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6ImNsb3NlIn0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJlYXJuaW5nc190aGlzX3dlZWsiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDEzNDA1OSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfYmFzaWMiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTpudWxsLGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoicHJlX21hcmtldF9nYWluZXJzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjk2NDgpKSxhZGp1c3RGaWx0ZXI6e3ByZW1hcmtldF9jaGFuZ2U6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJwcmVtYXJrZXRfY2hhbmdlIixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0scHJlbWFya2V0X2NoYW5nZTp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOjB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoiYWZ0ZXJfaG91cnNfZ2FpbmVycyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTMyMDI4KSksYWRqdXN0RmlsdGVyOntwb3N0bWFya2V0X3ZvbHVtZTpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InBvc3RtYXJrZXRfdm9sdW1lIixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0scG9zdG1hcmtldF92b2x1bWU6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTowfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fV07ZnVuY3Rpb24gUXQoZSl7WnQuZm9yRWFjaCgodD0+e2lmKHQuZGlzYWJsZWQ9ITEsCnQuaWQgaW4gQi5hbWVyaWNhKWZvcihjb25zdCBlIGluIEIuYW1lcmljYVt0LmlkXSl0LmNvbnRlbnQuZmlsdGVyc1tlXT1CLmFtZXJpY2FbdC5pZF1bZV07KHQ9PntbImZvcmV4IiwiY3J5cHRvIl0uaW5jbHVkZXMoZVswXSl8fGUuaW5jbHVkZXMoImJyYXppbCIpP2RlbGV0ZSB0LmNvbnRlbnQuZmlsdGVycy5uYW1lOnQuY29udGVudC5maWx0ZXJzLm5hbWU9WyJjb21tb24iLCJkciIsImV0ZiJdLDE9PT1lLmxlbmd0aCYmImFtZXJpY2EiPT09ZVswXT90LmNvbnRlbnQuZmlsdGVycy5leGNoYW5nZT1bIk5ZU0UiLCJOQVNEQVEiLCJBTUVYIl06ZGVsZXRlIHQuY29udGVudC5maWx0ZXJzLmV4Y2hhbmdlLCJnZW5lcmFsIj09PXQuaWQmJigiY3J5cHRvIj09PWVbMF0mJih0LmNvbnRlbnQuc29ydF9maWVsZD0iMjRoX3ZvbHw1Iix0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb249ImRlc2MiKSwiZm9yZXgiPT09ZVswXSYmKHQuY29udGVudC5zb3J0X2ZpZWxkPSJuYW1lIix0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb249ImFzYyIpKTtjb25zdCBvPVtdO2Zvcihjb25zdCByIG9mIGUpe2NvbnN0IGU9QltyXTtpZihlJiZ0LmlkIGluIGUpaWYodC5kaXNhYmxlZHx8bnVsbCE9PWVbdC5pZF0pe2NvbnN0IHI9ZVt0LmlkXTtmb3IoY29uc3QgZSBpbiByKXtjb25zdCBzPXJbZV07aWYobnVsbD09PXN8fChpPXQuY29udGVudC5maWx0ZXJzW2VdLG49cyxPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoaSkhPT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobikpKWRlbGV0ZSB0LmNvbnRlbnQuZmlsdGVyc1tlXSxvLnB1c2goZSk7ZWxzZSBpZighby5pbmNsdWRlcyhlKSYmZSBpbiB0LmNvbnRlbnQuZmlsdGVycyl7Y29uc3QgaT1ZdCh0LmNvbnRlbnQuZmlsdGVyc1tlXSxzKTtpP3QuY29udGVudC5maWx0ZXJzW2VdPWk6KGRlbGV0ZSB0LmNvbnRlbnQuZmlsdGVyc1tlXSxvLnB1c2goZSkpfWVsc2UgdC5jb250ZW50LmZpbHRlcnNbZV09c319ZWxzZSB0LmRpc2FibGVkPSEwfXZhciBpLG47ImZvcmV4Ij09PWVbMF0/SnQuZm9yZXhbdC5pZF0mJih0LnRpdGxlPUp0LmZvcmV4W3QuaWRdKTpKdC5kZWZhdWx0W3QuaWRdJiYodC50aXRsZT1KdC5kZWZhdWx0W3QuaWRdKX0pKHQpLCJnZW5lcmFsIj09PXQuaWQmJih0LmRpc2FibGVkPSJmb3JleCIhPT1lWzBdJiYiY3J5cHRvIiE9PWVbMF0pLFsicHJlX21hcmtldF9nYWluZXJzIiwiYWZ0ZXJfaG91cnNfZ2FpbmVycyJdLmluY2x1ZGVzKHQuaWQpJiYodC5kaXNhYmxlZD0hMCl9KSl9Y29uc3QgZW89SlNPTi5wYXJzZSgnWyJCQUhSQUlOIiwiQkVMRVgiLCJCTVYiLCJCU1NFIiwiQlZMIiwiQlZNVCIsIkRGTSIsIkRTRUJEIiwiRVVST05FWFRfQU1TIiwiRVVST05FWFRfQlJVIiwiRVVST05FWFRfTElTIiwiRVVST05FWFRfUEFSIiwiRVVST05FWFRBTVMiLCJFVVJPTkVYVEJSVSIsIkVVUk9ORVhUTElTIiwiRVVST05FWFRQQVIiLCJFVVJPTkVYVERVQiIsIk9TRSIsIk9TTCIsIkZTRSIsIkhLRVgiLCJIT1NFIiwiSUNFU0ciLCJJQ0VBQlVEIiwiSUNFVVNDQSIsIklDRUVOREVYIiwiSlNFIiwiTFVYU0UiLCJNT0VYIiwiTVlYIiwiTkFHIiwiTkFTREFRRFVCQUkiLCJOU0UiLCJOU0VORyIsIk5TRUtFIiwiTkdNIiwiTlpYIiwiUFNFIiwiUFNYIiwiU0FQU0UiLCJTRVQiLCJTR1giLCJTWlNFIiwiU0hGRSIsIlRBREFXVUwiLCJUU0UiLCJUV1NFIiwiRlRTRVNUIiwiTE1FIiwiUVNFIiwiTFNFIiwiTFNJTiJdJyk7Y29uc3QgdG89WyJhcnRlY2hlY29tIiwiY2luY29kaWFzIiwiY29wZWVzIiwiZWxjb25maWRlbmNpYWwiLCJlbGVzcGFub2xjb20iLCJlbG5hY2lvbmFsRCIsImVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIiwiZXBlIiwiZmluYW56YXNEIiwibGFpbmZvcm1hY2lvbmNvbSJdLG9vPVsiYm92ZXNwYSIsImZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyIsIm1hcmNvcG9sb2NvbWJyIiwibW9uZXl0aW1lc2NvbWJyIiwiTm90aWNpYXNhZ3JpY29sYUQiLCJwb2RlcjM2MCIsInNldWRpbmhlaXJvIiwic3BhY2Vtb25leWNvbWJyIiwidHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiLCJ2b2Nlc2FhYnJpbGNvbWJyIiwieHBpY29tYnIiXTtjb25zdCBpbz0iYW1lcmljYSI7ZnVuY3Rpb24gbm8oZSx0KXtjb25zdCBvPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZW8uc2xpY2UoKTtyZXR1cm4gZSYmb28uaW5jbHVkZXMoZSkmJnQuc3BsaWNlKHQuaW5kZXhPZigiQk1GQk9WRVNQQSIpLDEpLCJhbWJpdG8iPT09ZSYmdC5zcGxpY2UodC5pbmRleE9mKCJCQ0JBIiksMSksImhlZ25hcm5vIj09PWUmJnQuc3BsaWNlKHQuaW5kZXhPZigiT1NMIiksMSksZSYmdG8uaW5jbHVkZXMoZSkmJnQuc3BsaWNlKHQuaW5kZXhPZigiQk1FIiksMSksZSYmWyJyaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCJdLmluY2x1ZGVzKGUpJiYodC5zcGxpY2UodC5pbmRleE9mKCJUQURBV1VMIiksMSksdC5zcGxpY2UodC5pbmRleE9mKCJERk0iKSwxKSksIk5HWCI9PT1lJiZ0LnNwbGljZSh0LmluZGV4T2YoIk5TRU5HIiksMSksdH0odCk7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZpbHRlcigodD0+e2lmKFsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyh0KSlyZXR1cm4hMDtjb25zdCBpPWVbdF07cmV0dXJuISFpJiYoaS5zdG9ja3M9aS5zdG9ja3MuZmlsdGVyKChlPT4tMT09PW8uaW5kZXhPZihlKSkpLDAhPT1pLnN0b2Nrcy5sZW5ndGgpfSkpLm1hcCgodD0+KHtjb250ZW50OmVbdF0/ZVt0XS50aXRsZSsoZVt0XS5zdG9ja3MubGVuZ3RoP2AgKCR7cm8odCxlKX0pYDoiIik6dCx2YWx1ZTp0fSkpKS5zb3J0KCgoZSx0KT0+ZS52YWx1ZT09PWlvPy0xOnQudmFsdWU9PT1pb3x8KGU/LmNvbnRlbnQ/PyIiKT4odD8uY29udGVudD8/IiIpPzE6LTEpKX1mdW5jdGlvbiBybyhlLHQpe2xldCBvPVsuLi50W2VdLnN0b2Nrc107Y29uc3QgaT1WKClbZV07cmV0dXJuIGkmJihvPW8uZmlsdGVyKChlPT4haS5pbmNsdWRlcyhlKSkpKSxvLmpvaW4oIiwgIil9dmFyIHNvPW8oOTAyMTAwKSxhbz1vKDQwMDE4MSk7Y29uc3QgbG89ewpob3N0OiJfdW5rbm93biIscGF0aDoiIn07ZnVuY3Rpb24gY28oZSl7aWYoZSl0cnl7Y29uc3QgdD1uZXcgVVJMKGUpO3JldHVybntob3N0OnQuaG9zdG5hbWV8fHQuaG9zdHx8Il91bmtub3duIixwYXRoOnQucGF0aG5hbWV9fWNhdGNoe3JldHVybn19ZnVuY3Rpb24gaG8oKXtyZXR1cm4gY28oZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YT8uaGFzaFNldHRpbmdzPy5bInBhZ2UtdXJpIl07aWYoZSlyZXR1cm4iaHR0cHM6Ly8iK2V9KCkpfHxjbyhkb2N1bWVudC5yZWZlcnJlcil8fGNvKGxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdKXx8bG99dmFyIHVvPW8oMzg5Mjk4KSxfbz1vKDkzMDIzMSkscG89KG8oODU1NzQyKSxvKDY2MjM5MiksbygxMzMyNDMpLG8oMjg2ODIwKSxvKDIzMjM2NCkpLG1vPShvKDM2NDgzOCksbyg4MTU3MjgpLG8oMTIxNjM0KSxvKDcxMTk3OSksbyg5ODY3MDUpLG8oMjAyODE1KSxvKDk1MDc3MSksbyg2MzgyODIpLG8oMTEyNjEzKSxvKDk3NTI0NCksbyg5NTI2ODYpLG8oNDQ2OTU2KSxvKDQ1NTU3KSxvKDc5MDUwMSksbyg1NTEyMTUpLG8oMTY3NTU5KSxvKDkyMjIwNiksbyg0ODk3NTIpLG8oODU3MDE5KSxvKDIxODgxNCkpLGdvPW8oNjQ3NjE0KTtvKDQ0MzYyMCk7dmFyIHZvPW8oNTQ3ODUxKSxmbz1vKDc3ODQ1OCkseW89byg4NTU5ODkpO2Z1bmN0aW9uIGJvKGUsdCxvKXtjb25zdCBpPVtbIiYiLCImYW1wOyJdLFsiPCIsIiZsdDsiXSxbIj4iLCImZ3Q7Il0sWyciJywiJnF1b3Q7Il0sWyInIiwiJiMwMzk7Il0sWyInIiwiJiMzOTsiXV07dCYmaS5mb3JFYWNoKChlPT5lLnJldmVyc2UoKSkpO2xldCBuPWU7aWYoIWV8fCFlLnJlcGxhY2UpcmV0dXJuIG47Zm9yKGNvbnN0IGUgb2YgaSl7Y29uc3RbdCxpXT1lO28mJi0xIT09by5pbmRleE9mKHQpfHwobj1uLnJlcGxhY2UobmV3IFJlZ0V4cCh0LCJnIiksaSkpfXJldHVybiBufW8oNTUwNjgyKSxvKDIxNTUzOSk7dmFyIFNvPW8oNzgzMjU0KSx3bz1vKDM2MzI2OSksQ289KG8oODMyMjI2KSxvKDIxNDA2MCkpLGtvPW8oNDgyNTA0KSxUbz1vKDQ5MTg2KSxFbz1vKDMwNzUwNCk7Y29uc3QgeG89e3dyYXA6JzxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvciB7eyBjbGFzcyB9fXt7IyB0b3VjaCB9fSB0di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2h7ey8gdG91Y2ggfX17eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fXt7IyByZWFkb25seSB9fSB0di1jb250cm9sLXNlbGVjdF9fd3JhcC0tcmVhZG9ubHl7ey8gcmVhZG9ubHl9fSI+PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9se3teIHRvdWNoIH19IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b257ey8gdG91Y2ggfX17eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fSI+PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLWlubmVyIj48L3NwYW4+PC9zcGFuPnt7XiB0b3VjaCB9fTxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24gdHYtZHJvcGRvd24tYmVoYXZpb3JfX2JvZHkge3sgZHJvcGRvd25fY2xhc3MgfX0gaS1oaWRkZW4iPjxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fc2Nyb2xsIHR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiPjxzcGFuIGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiPnt7PiByb3V0ZSB9fTwvc3Bhbj48L3NwYW4+PC9zcGFuPnt7LyB0b3VjaCB9fTxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fY2FyZXQganMtZHJvcGRvd24tdG9nZ2xlIj48L3NwYW4+PC9zcGFuPicscm91dGU6Int7IyBpdGVtcyB9fXt7IyBvcHRpb24gfX17ez4gb3B0aW9uIH19e3svIG9wdGlvbiB9fXt7XiBvcHRpb24gfX17eyMgb3B0Z3JvdXAgfX17ez4gb3B0Z3JvdXAgfX17ey8gb3B0Z3JvdXAgfX17ey8gb3B0aW9uIH19e3svIGl0ZW1zIH19IixvcHRncm91cDone3sjIGxhYmVsIH19PHNwYW4gY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIHR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1sYWJlbCI+e3sgbGFiZWwgfX08L3NwYW4+e3svIGxhYmVsIH19e3s+IHJvdXRlIH19e3sjIHNlcGFyYXRvciB9fTxociBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGdyb3VwLXNlcGFyYXRvciI+e3svIHNlcGFyYXRvciB9fScsb3B0aW9uOmA8c3BhbiBkYXRhLWlkPSJ7eyBpZCB9fSIgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIHR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb257eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fSI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIj5cblx0XHRcdHt7IyBtdWx0aXBsZSB9fVxuXHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveCI+XG5cdFx0XHRcdFx0PGlucHV0IGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19pbnB1dCIgdHlwZT0iY2hlY2tib3giIHt7IyBzZWxlY3RlZCB9fSBjaGVja2Vke3svIHNlbGVjdGVkIH19PlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19ib3giPiR7byg0ODg4NzUpfTwvc3Bhbj5cblx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwiPnt7IGxhYmVsIH19PC9zcGFuPlxuXHRcdFx0e3svIG11bHRpcGxlIH19XG5cdFx0XHR7e14gbXVsdGlwbGUgfX1cblx0XHRcdFx0e3sgbGFiZWwgfX1cblx0XHRcdHt7LyBtdWx0aXBsZSB9fVxuXHRcdFx0PC9zcGFuPlxuXHRcdDwvc3Bhbj5gfTtjbGFzcyBBb3tjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLl9vcHRpb25zPU9iamVjdC5hc3NpZ24oe25vQW5pbWF0aW9uOiEwfSxlKSx0aGlzLnRvdWNoPXdvLm1vYmlsZXRvdWNoLHRoaXMuJHNlbGVjdD10aGlzLl9vcHRpb25zLiRzZWxlY3QsdGhpcy5fc2VsZWN0RWxlbWVudD10aGlzLiRzZWxlY3RbMF0sCnRoaXMubXVsdGlwbGU9Qm9vbGVhbih0aGlzLiRzZWxlY3QuYXR0cigibXVsdGlwbGUiKSksdGhpcy5fbWluRGlzcGxheUNvdW50PXRoaXMuX29wdGlvbnMubWluRGlzcGxheUNvdW50fHwxLHRoaXMuX2VtcHR5U3RyaW5nPXRoaXMuX29wdGlvbnMuZW1wdHlTdHJpbmd8fFNvLnQobnVsbCx7Y29udGV4dDoiY29tYm9ib3hfaW5wdXQifSxvKDMzMzM1KSksdGhpcy5fZGVmYXVsdFBsYWNlSG9kZXI9dGhpcy5fb3B0aW9ucy5kZWZhdWx0UGxhY2VIb2Rlcnx8ITEsdGhpcy5kaXNhYmxlZD1Cb29sZWFuKHRoaXMuJHNlbGVjdC5pcygiOmRpc2FibGVkIikpLHRoaXMucmVhZG9ubHk9dGhpcy5fb3B0aW9ucy5yZWFkb25seSx0aGlzLm9wdGlvbnM9W10sdGhpcy5maWx0ZXJRdWVyeT1bXSx0aGlzLml0ZW1zPXRoaXMuX3BhcnNlRG9tSXRlbXModGhpcy4kc2VsZWN0KSx0aGlzLl9yZW5kZXIoKSxlLmluaXRpYWxWYWx1ZSYmdGhpcy52YWwoZS5pbml0aWFsVmFsdWUpLHRoaXMuJGVsLmluc2VydEJlZm9yZSh0aGlzLiRzZWxlY3QpLHRoaXMuJHNlbGVjdC5kZXRhY2goKS5hZGRDbGFzcygiaS1pbml0ZWQiKS5hcHBlbmRUbyh0aGlzLiRlbCl9dmFsKGUpe3RoaXMubXVsdGlwbGU/dGhpcy5fc2V0TXVsdGlwbGVWYWx1ZXMoZSk6dGhpcy5fc2V0U2luZ2xlVmFsdWUodGhpcy5fZmluZE9wdGlvbihlKSl9ZW5hYmxlKCl7dGhpcy5kaXNhYmxlZD0hMSx0aGlzLiRlbC5hZGQodGhpcy4kZHJvcGRvd24pLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdGhpcy50b3VjaHx8KHRoaXMuJGVsLnR2RHJvcGRvd24oImVuYWJsZSIpLHRoaXMuJGNvbnRyb2wuYXR0cigidGFiaW5kZXgiLHRoaXMuJHNlbGVjdC5hdHRyKCJ0YWJpbmRleCIpfHwwKSl9ZGlzYWJsZSgpe3RoaXMuZGlzYWJsZWQ9ITAsdGhpcy4kZWwuYWRkKHRoaXMuJGRyb3Bkb3duKS5hZGRDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMudG91Y2h8fCh0aGlzLiRlbC50dkRyb3Bkb3duKCJkaXNhYmxlIiksdGhpcy4kY29udHJvbC5yZW1vdmVBdHRyKCJ0YWJpbmRleCIpKX1zZXRSZWFkb25seShlKXt0aGlzLnJlYWRvbmx5PWUsdGhpcy4kZWwudG9nZ2xlQ2xhc3MoInR2LWNvbnRyb2wtc2VsZWN0X193cmFwLS1yZWFkb25seSIsZSksdGhpcy4kY29udHJvbElubmVyLnRvZ2dsZUNsYXNzKCJ0di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lci0tcmVhZG9ubHkiLGUpLHRoaXMuJGVsLnR2RHJvcGRvd24oInNldFJlYWRvbmx5IixlKX10b2dnbGUoKXt0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwodGhpcy50b3VjaD90aGlzLiRzZWxlY3QuY2xpY2soKTp0aGlzLiRlbC50dkRyb3Bkb3duKCJ0b2dnbGUiKSl9b3Blbigpe3RoaXMuZGlzYWJsZWR8fHRoaXMucmVhZG9ubHl8fCh0aGlzLnRvdWNoP3RoaXMuJHNlbGVjdC5jbGljaygpOnRoaXMuJGVsLnR2RHJvcGRvd24oIm9wZW4iKSl9Y2xvc2UoKXt0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwodGhpcy50b3VjaD90aGlzLiRzZWxlY3QuY2xpY2soKToodGhpcy5fZm9jdXNPcHRpb24odGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSx0aGlzLiRlbC50dkRyb3Bkb3duKCJjbG9zZSIpKSl9ZGVzdHJveSgpe3RoaXMuJHNlbGVjdC5vZmYoImNoYW5nZSIpLHRoaXMuJGRyb3Bkb3duJiZ0aGlzLiRkcm9wZG93bi5vZmYoImNsaWNrIiksdGhpcy4kc2VsZWN0LnJlbW92ZUNsYXNzKCJpLWluaXRlZCIpLmluc2VydEJlZm9yZSh0aGlzLiRlbCksdGhpcy4kZWwudHZEcm9wZG93bigiZGVzdHJveSIpLHRoaXMuJGVsLnJlbW92ZSgpfXVwZGF0ZUl0ZW1zKCl7dGhpcy5vcHRpb25zPVtdLHRoaXMuaXRlbXM9dGhpcy5fcGFyc2VEb21JdGVtcyh0aGlzLiRzZWxlY3QpO2NvbnN0IGU9dGhpcy5fcmVuZGVyRHJvcGRvd24oKTtpZighdGhpcy50b3VjaCl7dGhpcy4kZHJvcGRvd24uZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKS5yZW1vdmUoKTtjb25zdCB0PXRoaXMuJGRyb3Bkb3duLmZpbmQoIi50di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiKTt0aGlzLiRvcHRpb25zPWUuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKTtmb3IobGV0IGU9MDtlPHRoaXMuJG9wdGlvbnMubGVuZ3RoO2UrKyl7Y29uc3Qgbz1rbyh0aGlzLiRvcHRpb25zW2VdKSxpPW8uZGF0YSgiaWQiKTt0aGlzLm9wdGlvbnNbaV0mJih0aGlzLm9wdGlvbnNbaV0uJGVsPW8sdC5hcHBlbmQobykpfX10aGlzLm11bHRpcGxlPyh0aGlzLl91cGRhdGVTZWxlY3RCb3hUaXRsZSgpLHRoaXMuX3VwZGF0ZUNoZWNrQm94ZXMoKSk6dGhpcy5fdXBkYXRlU2luZ2xlVmlldyh0aGlzLl9zZWxlY3RFbGVtZW50LnNlbGVjdGVkSW5kZXgpfV9mb2N1c09wdGlvbihlKXtjb25zdCB0PXRoaXMub3B0aW9uc1tlXS4kZWw7aWYodGhpcy5fZm9jdXNlZE9wdGlvbj1lLCF0aGlzLnRvdWNoKXtpZih0aGlzLl9jbGVhckZvY3VzKCksdC5hZGRDbGFzcygiaS1hY3RpdmUiKSwhdGhpcy5kcm9wZG93blNjcm9sbHx8IXRoaXMub3BlbmVkKXJldHVybjtjb25zdCBlPXRoaXMuZHJvcGRvd25TY3JvbGwuY3VycmVudFBvc2l0aW9uKCksbz10Lm91dGVySGVpZ2h0KCksaT10LnBvc2l0aW9uKCkudG9wLG49LWUrdGhpcy5kcm9wZG93blNjcm9sbC5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCk8aStvO2k8LWU/dGhpcy5kcm9wZG93blNjcm9sbC5zY3JvbGxUbyhpKTpuJiZ0aGlzLmRyb3Bkb3duU2Nyb2xsLnNjcm9sbFRvKGkrbyl9fV9zZXRTaW5nbGVWYWx1ZShlKXtjb25zdCB0PXRoaXMub3B0aW9uc1tlXS52YWx1ZTsodGhpcy4kc2VsZWN0LnZhbCgpJiZ0aGlzLiRzZWxlY3QudmFsKCkudG9TdHJpbmcoKSkhPT10LnRvU3RyaW5nKCkmJnRoaXMuJHNlbGVjdC52YWwodCkudHJpZ2dlcigiY2hhbmdlIil9X3VwZGF0ZVNpbmdsZVZpZXcoZSl7Y29uc3QgdD10aGlzLm9wdGlvbnNbZV07dCYmKHRoaXMuX2ZvY3VzT3B0aW9uKGUpLHRoaXMuX3NlbGVjdEVsZW1lbnQuc2VsZWN0ZWRJbmRleD1lLHRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KHQubGFiZWwpLAp0aGlzLiRjb250cm9sSW5uZXIudG9nZ2xlQ2xhc3MoInR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLWlubmVyLS1vcHRpb24tZGlzYWJsZWQiLHQuZGlzYWJsZWQpKX1fdG9nZ2xlT3B0aW9uKGUpe2NvbnN0IHQ9dGhpcy5vcHRpb25zW2VdLnZhbHVlLG89dGhpcy4kc2VsZWN0LnZhbCgpfHxbXSxpPW8uaW5kZXhPZih0KTtpZigtMSE9PWkpby5zcGxpY2UoaSwxKTtlbHNlIGlmKG8ubGVuZ3RoKXtjb25zdCBlPXRoaXMub3B0aW9uc1t0aGlzLl9maW5kT3B0aW9uKHQpXS5pZCxpPW8uZmluZCgodD0+dGhpcy5vcHRpb25zW3RoaXMuX2ZpbmRPcHRpb24odCldLmlkPmUpKTtvLnNwbGljZShpP28uaW5kZXhPZihpKTowLDAsdCl9ZWxzZSBvLnB1c2godCk7dGhpcy5fc2V0TXVsdGlwbGVWYWx1ZXMobyl9X3VwZGF0ZUNoZWNrQm94ZXMoKXtjb25zdCBlPXRoaXMuJHNlbGVjdC52YWwoKXx8W107Zm9yKGxldCB0PTA7dDx0aGlzLml0ZW1zLmxlbmd0aDt0Kyspe2NvbnN0IG89dGhpcy5pdGVtc1t0XTtvLiRlbC5maW5kKCIudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQiKS5wcm9wKCJjaGVja2VkIiwtMSE9PWUuaW5kZXhPZihvLnZhbHVlKSl9fV91cGRhdGVTZWxlY3RCb3hUaXRsZSgpe2NvbnN0IGU9dGhpcy4kc2VsZWN0LnZhbCgpfHxbXTtpZihlLmxlbmd0aCYmIXRoaXMuX2RlZmF1bHRQbGFjZUhvZGVyKWlmKGUubGVuZ3RoPT09dGhpcy5pdGVtcy5sZW5ndGgpdGhpcy4kY29udHJvbElubmVyLnRleHQoU28udChudWxsLHtjb250ZXh0OiJjb21ib2JveF9pbnB1dCJ9LG8oMzYyMDA0KSkpO2Vsc2UgaWYoZS5sZW5ndGg+dGhpcy5fbWluRGlzcGxheUNvdW50KXRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KFNvLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBpdGVtcyIsY291bnQ6ZS5sZW5ndGgsY29udGV4dDoiY29tYm9ib3hfaW5wdXQifSxvKDk4Mzc2NCkpLmZvcm1hdChlLmxlbmd0aCkpO2Vsc2V7Y29uc3QgdD1lLm1hcCgoZT0+dGhpcy5vcHRpb25zW3RoaXMuX2ZpbmRPcHRpb24oZSldLmxhYmVsKSk7dGhpcy4kY29udHJvbElubmVyLnRleHQodC5qb2luKCIsICIpKX1lbHNlIHRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KHRoaXMuX2VtcHR5U3RyaW5nKX1fc2V0TXVsdGlwbGVWYWx1ZXMoZSl7dGhpcy4kc2VsZWN0LmZpbmQoIm9wdGlvbiIpLnByb3AoInNlbGVjdGVkIiwhMSk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG89ZVt0XTt0aGlzLiRzZWxlY3QuZmluZChgb3B0aW9uW3ZhbHVlPSIke299Il1gKS5wcm9wKCJzZWxlY3RlZCIsITApfXRoaXMuJHNlbGVjdC50cmlnZ2VyKCJjaGFuZ2UiKX1fY2xlYXJGb2N1cygpe3RoaXMuJG9wdGlvbnMucmVtb3ZlQ2xhc3MoImktYWN0aXZlIil9X2ZpbmRPcHRpb24oZSl7Y29uc3QgdD1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMpO2ZvcihsZXQgbz0wO288dC5sZW5ndGg7bysrKWlmKHRoaXMub3B0aW9uc1t0W29dXS52YWx1ZS50b1N0cmluZygpPT09ZS50b1N0cmluZygpKXJldHVybiB0aGlzLm9wdGlvbnNbdFtvXV0uaWR9X3BhcnNlRG9tSXRlbXMoZSl7Y29uc3QgdD1lLmNoaWxkcmVuKCksbz1bXTtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrKyl7Y29uc3QgaT1rbyh0W2VdKTtsZXQgbjsib3B0Z3JvdXAiPT09aS5wcm9wKCJ0YWdOYW1lIikudG9Mb3dlckNhc2UoKT9uPXtvcHRncm91cDohMCxzZXBhcmF0b3I6Qm9vbGVhbih0aGlzLl9vcHRpb25zLnNob3dPcHRncm91cFNlcGFyYXRvcnMpLGxhYmVsOmkuYXR0cigibGFiZWwiKSxpdGVtczp0aGlzLl9wYXJzZURvbUl0ZW1zKGkpfToib3B0aW9uIj09PWkucHJvcCgidGFnTmFtZSIpLnRvTG93ZXJDYXNlKCkmJihuPXtpZDppWzBdLmluZGV4LG9wdGlvbjohMCxsYWJlbDppLnRleHQoKS5yZXBsYWNlKC9cLy9nLCLigIskJuKAiyIpLHZhbHVlOmkuYXR0cigidmFsdWUiKSxkaXNhYmxlZDppLmlzKCI6ZGlzYWJsZWQiKX0sdGhpcy5vcHRpb25zW24uaWRdPW4pLG8ucHVzaChuKX1yZXR1cm4gb31fcmVuZGVyKCl7aWYodGhpcy4kZWw9dGhpcy5fcmVuZGVyRHJvcGRvd24oKSx0aGlzLiRjb250cm9sPXRoaXMuJGVsLmZpbmQoIi50di1jb250cm9sLXNlbGVjdF9fY29udHJvbCIpLHRoaXMuJGNvbnRyb2xJbm5lcj10aGlzLiRlbC5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXIiKSwhdGhpcy50b3VjaCl7dGhpcy4kZHJvcGRvd249dGhpcy4kZWwuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93biIpLHRoaXMuJG9wdGlvbnM9dGhpcy4kZWwuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKTtmb3IobGV0IGU9MDtlPHRoaXMuJG9wdGlvbnMubGVuZ3RoO2UrKyl7Y29uc3QgdD1rbyh0aGlzLiRvcHRpb25zW2VdKSxvPXQuZGF0YSgiaWQiKTt0aGlzLm9wdGlvbnNbb10mJih0aGlzLm9wdGlvbnNbb10uJGVsPXQpfX10aGlzLm11bHRpcGxlPyh0aGlzLl91cGRhdGVTZWxlY3RCb3hUaXRsZSgpLHRoaXMuX3VwZGF0ZUNoZWNrQm94ZXMoKSk6KC0xPT09dGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4JiYodGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4PTApLHRoaXMuX3VwZGF0ZVNpbmdsZVZpZXcodGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSksdGhpcy4kc2VsZWN0Lm9uKCJjaGFuZ2UiLChlPT57dGhpcy5tdWx0aXBsZT8odGhpcy5fdXBkYXRlU2VsZWN0Qm94VGl0bGUoKSx0aGlzLl91cGRhdGVDaGVja0JveGVzKCkpOnRoaXMuX3VwZGF0ZVNpbmdsZVZpZXcodGhpcy5fZmluZE9wdGlvbih0aGlzLiRzZWxlY3QudmFsKCkpKX0pKSx0aGlzLnRvdWNofHwodGhpcy4kZWwudHZEcm9wZG93bih7c2Nyb2xsOiEwLGFkYXB0Qm9keTohMCxib3VuZGluZ0VsZW1lbnQ6dGhpcy5fb3B0aW9ucy5ib3VuZGluZ0VsZW1lbnQsbWF4SGVpZ2h0OnRoaXMuX29wdGlvbnMubWF4SGVpZ2h0LGRyb3Bkb3duV2lkdGg6dGhpcy5fb3B0aW9ucy5kcm9wZG93bldpZHRoLG5vQW5pbWF0aW9uOnRoaXMuX29wdGlvbnMubm9BbmltYXRpb24sY2xvc2VXaXRoRXNjOnRoaXMuX29wdGlvbnMuY2xvc2VXaXRoRXNjfSksCnRoaXMuZHJvcGRvd25TY3JvbGw9dGhpcy4kZWwudHZEcm9wZG93bigiZ2V0Iiwic2Nyb2xsIiksdGhpcy4kZHJvcGRvd24ub24oImNsaWNrIiwiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iLChlPT57Y29uc3QgdD1wYXJzZUludChrbyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoImlkIikpO3RoaXMub3B0aW9uc1t0XSYmIXRoaXMub3B0aW9uc1t0XS5kaXNhYmxlZCYmKHRoaXMubXVsdGlwbGU/dGhpcy5fdG9nZ2xlT3B0aW9uKHQpOih0aGlzLl9zZXRTaW5nbGVWYWx1ZSh0KSx0aGlzLmNsb3NlKCkpKX0pKSx0aGlzLiRlbC5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e3RoaXMub3BlbmVkPSEwfSkpLHRoaXMuJGVsLm9uKCJhZnRlckNsb3NlTWVudSIsKCgpPT57dGhpcy5vcGVuZWQ9ITEsdGhpcy5maWx0ZXJRdWVyeT1bXSx0aGlzLm11bHRpcGxlfHx0aGlzLl9mb2N1c2VkT3B0aW9uLnRvU3RyaW5nKCk9PT10aGlzLl9zZWxlY3RFbGVtZW50LnNlbGVjdGVkSW5kZXgudG9TdHJpbmcoKXx8dGhpcy5fZm9jdXNPcHRpb24odGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSx0aGlzLm11bHRpcGxlJiZ0aGlzLl9jbGVhckZvY3VzKCl9KSksdGhpcy4kZWwub24oImNsaWNrIiwoKCk9Pnt0aGlzLiRjb250cm9sLmZvY3VzKCl9KSksdGhpcy4kZWwub24oImtleWRvd24iLChlPT57dGhpcy5fZmlsdGVyKGUpfSkpLHRoaXMuZGlzYWJsZWQ/dGhpcy5kaXNhYmxlKCk6dGhpcy5lbmFibGUoKSl9X3JlbmRlckRyb3Bkb3duKCl7cmV0dXJuIGtvKFRvLnJlbmRlcih4by53cmFwLHtpdGVtczp0aGlzLml0ZW1zLGNsYXNzOnRoaXMuJHNlbGVjdC5hdHRyKCJjbGFzcyIpLHRvdWNoOnRoaXMudG91Y2gsbXVsdGlwbGU6dGhpcy5tdWx0aXBsZSxkaXNhYmxlZDp0aGlzLmRpc2FibGVkLHJlYWRvbmx5OnRoaXMucmVhZG9ubHksZHJvcGRvd25fY2xhc3M6dGhpcy5fb3B0aW9ucy5hZGREcm9wZG93bkNsYXNzfSx4bykpLnJlbW92ZUNsYXNzKCJ0di1jb250cm9sLXNlbGVjdCIpfV9maWx0ZXIoZSl7aWYoOT09PWUud2hpY2gpcmV0dXJuIHZvaWQgdGhpcy5jbG9zZSgpO2lmKDEzPT09ZS53aGljaCYmIXRoaXMub3BlbmVkKXJldHVybjtpZigoNDA9PT1lLndoaWNofHwzMj09PWUud2hpY2gpJiYhdGhpcy5vcGVuZWQpcmV0dXJuIHRoaXMub3BlbigpLHZvaWQgZS5wcmV2ZW50RGVmYXVsdCgpO2UucHJldmVudERlZmF1bHQoKSx0aGlzLm9wZW5lZHx8dGhpcy5vcGVuKCk7Y29uc3QgdD1TdHJpbmcuZnJvbUNoYXJDb2RlKGUud2hpY2gpLnRvTG93ZXJDYXNlKCk7aWYodCYmLTE9PT1bOSwxMywyNywzOCw0MF0uaW5kZXhPZihlLndoaWNoKSl7dGhpcy5maWx0ZXJRdWVyeS5wdXNoKHQpO2NvbnN0IGU9dGhpcy5maWx0ZXJRdWVyeS5qb2luKCIiKTtsZXQgbztjb25zdCBpPU9iamVjdC5rZXlzKHRoaXMub3B0aW9ucyk7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0KyspaWYoMD09PXRoaXMub3B0aW9uc1tpW3RdXS5sYWJlbC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSkmJiF0aGlzLm9wdGlvbnNbaVt0XV0uZGlzYWJsZWQpe289dGhpcy5vcHRpb25zW2lbdF1dLmlkO2JyZWFrfXZvaWQgMCE9PW8mJnRoaXMuX2ZvY3VzT3B0aW9uKG8pLHRoaXMuY2xlYXJGaWx0ZXImJmNsZWFyVGltZW91dCh0aGlzLmNsZWFyRmlsdGVyKSx0aGlzLmNsZWFyRmlsdGVyPXNldFRpbWVvdXQoKCgpPT57dGhpcy5maWx0ZXJRdWVyeT1bXX0pLDUwMCl9MzIhPT1lLndoaWNoJiYxMyE9PWUud2hpY2h8fCF0aGlzLm9wZW5lZHx8KHRoaXMubXVsdGlwbGU/dGhpcy5fdG9nZ2xlT3B0aW9uKHRoaXMuX2ZvY3VzZWRPcHRpb24pOih0aGlzLl9zZXRTaW5nbGVWYWx1ZSh0aGlzLl9mb2N1c2VkT3B0aW9uKSx0aGlzLmNsb3NlKCksdGhpcy4kZWwub25lKCJrZXl1cCIsKGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpKSkpO2NvbnN0IG89ZT0+e2xldCB0O2lmKHRoaXMub3B0aW9uc1t0aGlzLl9mb2N1c2VkT3B0aW9uXSl7Y29uc3Qgbz10aGlzLm9wdGlvbnNbdGhpcy5fZm9jdXNlZE9wdGlvbl0uJGVsW2VdKHRoaXMuJGRyb3Bkb3duLCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbjpub3QoLmktZGlzYWJsZWQpIik7dD1vLmxlbmd0aD9vLmRhdGEoImlkIik6dGhpcy5fZm9jdXNlZE9wdGlvbn1lbHNlIHQ9dGhpcy4kb3B0aW9ucy5maXJzdCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb246bm90KC5pLWRpc2FibGVkKSIpLmRhdGEoImlkIik7cmV0dXJuIHR9OzQwPT09ZS53aGljaCYmKHRoaXMuZmlsdGVyUXVlcnk9W10sdGhpcy5fZm9jdXNPcHRpb24obygibmV4dFVudGlsIikpKSwzOD09PWUud2hpY2gmJih0aGlzLmZpbHRlclF1ZXJ5PVtdLHRoaXMuX2ZvY3VzT3B0aW9uKG8oInByZXZVbnRpbCIpKSksMjc9PT1lLndoaWNoJiZ0aGlzLmNsb3NlKCl9fWZ1bmN0aW9uIE1vKGUpeyhhc3luYyBmdW5jdGlvbihlKXtyZXR1cm4oYXdhaXQgUHJvbWlzZS5hbGwoW28uZSg4NzIzOCksby5lKDU0NjgxKSxvLmUoMzE4MzcpLG8uZSgyMDk3MSksby5lKDQ5NTE4KSxvLmUoNzUzMDQpLG8uZSgzODAwMiksby5lKDcwMzY0KSxvLmUoODkxOTUpLG8uZSg3NTA0KSxvLmUoNDY2MDApLG8uZSgxMDcwNCldKS50aGVuKG8uYmluZChvLDIzNTcyKSkpLmNyZWF0ZURpYWxvZyh7d2lkdGg6NDAwLGRlc3Ryb3lPbkNsb3NlOiEwLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU2MTYwMCkpLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oNzIzNjMpKSxjb250ZW50V3JhcFRlbXBsYXRlOic8ZGl2IGNsYXNzPSJ0di1kaWFsb2dfX3NlY3Rpb24gdHYtZGlhbG9nX19zZWN0aW9uLS1uby1ib3JkZXIiPjxkaXYgY2xhc3M9InR2LXRleHQiPjxwPjwvcD48L2Rpdj48L2Rpdj4nLGFjdGlvbnNXcmFwVGVtcGxhdGU6JzxkaXYgY2xhc3M9InR2LWRpYWxvZ19fc2VjdGlvbiB0di1kaWFsb2dfX3NlY3Rpb24tLWFjdGlvbnMgdHYtZGlhbG9nX19zZWN0aW9uLS1uby1ib3JkZXIiPicsYWN0aW9uczpbe25hbWU6Im9rIix0eXBlOiJwcmltYXJ5Iix0ZXh0Ol8udChudWxsLHZvaWQgMCxvKDIwODA3OCkpLG1ldGhvZDoiY2xvc2UiLGtleTpbMTMsMzJdfV0sLi4uZX0pCn0pKGUpLnRoZW4oKGU9PmUub3BlbigpKSl9a28uZm4udHZDb250cm9sU2VsZWN0PSgwLENvLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1jb250cm9sLXNlbGVjdCIsKGZ1bmN0aW9uKGUsdD17fSl7cmV0dXJuIG5ldyBBbyhFby5leHRlbmQodCx7JHNlbGVjdDplfSkpfSkpO28oNTUwNzA1KTt2YXIgSW89byg3NzA3NTUpLFJvPW8oMjM0OTY0KSxGbz1vKDQ5ODY1MSk7ZnVuY3Rpb24gTG8oZSl7aWYoISgwLEZvLmlzSURDRXhjaGFuZ2UpKGUpKXJldHVybiExO2U9RG8oZSk7Y29uc3QgdD13aW5kb3cucHJvLG89dC5nZXRQcm9kdWN0KGUpO3JldHVybiB2b2lkIDAhPT1vLmlkY19zZXJ2aWNlX2NvZGVzX2RlbGF5JiYoKCFBcnJheS5pc0FycmF5KG8uaW5jbHVkZWRfZXhjaGFuZ2VzKXx8IW8uaW5jbHVkZWRfZXhjaGFuZ2VzLnNvbWUoKGU9PnQuaGFzUGFja2FnZShEbyhlKSkpKSkmJiFmdW5jdGlvbihlKXtjb25zdCB0PXdpbmRvdy5wcm87cmV0dXJuIHQuaGFzUGFja2FnZShlKXx8dC5oYXNQYWNrYWdlKGUrIl9kbHkiKX0oZSkpfWZ1bmN0aW9uIERvKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgoImV4Y2hhbmdlLSIpP2U6ImV4Y2hhbmdlLXswfSIuZm9ybWF0KGUudG9Mb3dlckNhc2UoKSl9dmFyIE9vPW8oMjU1NTE2KTtjb25zdCBObz1KU09OLnBhcnNlKCd7Ik5BU0RBUSI6ImV4Y2hhbmdlLW5hc2RhcSIsIk5ZU0UiOiJleGNoYW5nZS1ueXNlIiwiTllTRSBBUkNBIjoiZXhjaGFuZ2UtYW1leCIsIkFNRVgiOiJleGNoYW5nZS1hbWV4IiwiT1RDIjoiZXhjaGFuZ2Utb3RjIiwiREZNIjoiZXhjaGFuZ2UtZGZtIiwiQkNCQSI6ImV4Y2hhbmdlLWJjYmEiLCJBU1giOiJleGNoYW5nZS1hc3giLCJFVVJPTkVYVCI6ImV4Y2hhbmdlLWV1cm9uZXh0X3N0b2NrcyIsIkVVUk9ORVhUQlJVIjoiZXhjaGFuZ2UtZXVyb25leHRfc3RvY2tzIiwiRVVST05FWFRQQVIiOiJleGNoYW5nZS1ldXJvbmV4dF9zdG9ja3MiLCJFVVJPTkVYVExJUyI6ImV4Y2hhbmdlLWV1cm9uZXh0X3N0b2NrcyIsIkVVUk9ORVhUQU1TIjoiZXhjaGFuZ2UtZXVyb25leHRfc3RvY2tzIiwiQkFIUkFJTiI6ImV4Y2hhbmdlLWJhaHJhaW4iLCJCTUZCT1ZFU1BBIjoiZXhjaGFuZ2UtYm92ZXNwYV9zdG9ja3MiLCJUU1giOiJleGNoYW5nZS10c3giLCJUU1hWIjoiZXhjaGFuZ2UtdHN4diIsIkNTRSI6ImV4Y2hhbmdlLWNzZSIsIlNJWCI6ImV4Y2hhbmdlLXNpeCIsIkJDUyI6ImV4Y2hhbmdlLWJjcyIsIlNTRSI6ImV4Y2hhbmdlLXNzZSIsIlNaU0UiOiJleGNoYW5nZS1zenNlIiwiQlZDIjoiZXhjaGFuZ2UtYnZjIiwiRldCIjoiZXhjaGFuZ2UtZndiIiwiU1dCIjoiZXhjaGFuZ2Utc3diIiwiWEVUUiI6ImV4Y2hhbmdlLXhldHIiLCJPTVhDT1AiOiJleGNoYW5nZS1vbXhjb3AiLCJPTVhUU0UiOiJleGNoYW5nZS1vbXh0c2UiLCJFR1giOiJleGNoYW5nZS1lZ3giLCJCTUUiOiJleGNoYW5nZS1ibWUiLCJPTVhIRVgiOiJleGNoYW5nZS1vbXhoZXgiLCJIS0VYIjoiZXhjaGFuZ2UtaGtleCIsIklEWCI6ImV4Y2hhbmdlLWlkeCIsIlRBU0UiOiJleGNoYW5nZS10YXNlIiwiQlNFIjoiZXhjaGFuZ2UtYnNlIiwiTlNFIjoiZXhjaGFuZ2UtbnNlIiwiT01YSUNFIjoiZXhjaGFuZ2Utb214aWNlIiwiTUlMIjoiZXhjaGFuZ2UtbWlsIiwiTUlMU0VERVgiOiJleGNoYW5nZS1taWwiLCJGU0UiOiJleGNoYW5nZS1mc2UiLCJOQUciOiJleGNoYW5nZS1uYWciLCJTQVBTRSI6ImV4Y2hhbmdlLXNhcHNlIiwiVFNFIjoiZXhjaGFuZ2Utb214dHNlIiwiS1JYIjoiZXhjaGFuZ2Uta3J4X3N0b2NrcyIsIk9NWFZTRSI6ImV4Y2hhbmdlLW9teHZzZSIsIk9NWFJTRSI6ImV4Y2hhbmdlLW9teHJzZSIsIkJNViI6ImV4Y2hhbmdlLWJtdiIsIk1ZWCI6ImV4Y2hhbmdlLW15eCIsIk5TRU5HIjoiZXhjaGFuZ2UtbnNlbmciLCJOWlgiOiJleGNoYW5nZS1uengiLCJCVkwiOiJleGNoYW5nZS1idmwiLCJHUFciOiJleGNoYW5nZS1ncHciLCJRU0UiOiJleGNoYW5nZS1xc2UiLCJCRUxFWCI6ImV4Y2hhbmdlLWJlbGV4IiwiTEpTRSI6ImV4Y2hhbmdlLWxqc2UiLCJNT0VYIjoiZXhjaGFuZ2UtbW9leF9zdG9ja3MiLCJUQURBV1VMIjoiZXhjaGFuZ2UtdGFkYXd1bCIsIk9NWFNUTyI6ImV4Y2hhbmdlLW9teHN0byIsIlNHWCI6ImV4Y2hhbmdlLXNneF9zdG9ja3MiLCJTRVQiOiJleGNoYW5nZS1zZXQiLCJCSVNUIjoiZXhjaGFuZ2UtYmlzdCIsIlRXU0UiOiJleGNoYW5nZS10d3NlIiwiTFNFIjoiZXhjaGFuZ2UtbHNlIiwiTFNJTiI6ImV4Y2hhbmdlLWxzaW4iLCJIT1NFIjoiZXhjaGFuZ2UtaG9zZV9zdG9ja3MiLCJKU0UiOiJleGNoYW5nZS1qc2Vfc3RvY2tzIiwiT1NFIjoiZXhjaGFuZ2Utb3NsIiwiWlNFIjoiZXhjaGFuZ2UtenNlIn0nKSxQbz1bXTtmb3IoY29uc3QgZSBpbiBPbylPby5oYXNPd25Qcm9wZXJ0eShlKSYmT29bZV0uaGFzT3duUHJvcGVydHkoImV4Y2hhbmdlc1N0b2NrcyIpJiZPb1tlXS5leGNoYW5nZXNTdG9ja3MuZm9yRWFjaCgoZT0+e1BvLnB1c2goZSl9KSk7ZnVuY3Rpb24gQm8oZSl7cmV0dXJuIE5vW2VdfHxudWxsfWZ1bmN0aW9uICRvKGUpe3JldHVyblsiQVNYIiwiQVRIRVgiXS5pbmNsdWRlcyhlKX12YXIgV287IWZ1bmN0aW9uKGUpe2VbZS5Ob25lPTBdPSJOb25lIixlW2UuV2lkZ2V0PTFdPSJXaWRnZXQiLGVbZS5TaXRlPTJdPSJTaXRlIn0oV298fChXbz17fSkpO3ZhciBxbz1vKDc2Mjg1MSksVm89bygxNTI3MTcpLEhvPW8oNDc5MzQpO2Z1bmN0aW9uIFVvKGUsdCxvKXtyZXR1cm4gdC52YWx1ZXx8KDAsSG8uZW5hYmxlZCkoZSxvKX1mdW5jdGlvbiB6byhlLHQsbyl7c3dpdGNoKGUpe2Nhc2UiU0NSRUVORVJfSU5URVJWQUxTIjpyZXR1cm4gZnVuY3Rpb24oZSx0KXtjb25zdCBvPSgwLEhvLmdldENvbmZpZykoIlNDUkVFTkVSX0lOVEVSVkFMUyIsdCk7cmV0dXJuISghb3x8IW8uaW50ZXJ2YWwpJiZvLmludGVydmFsLmluY2x1ZGVzKGUuaW50ZXJ2YWwpfSh0LG8pO2Nhc2UiU0NSRUVORVJfQVVUT19SRUZSRVNIIjpyZXR1cm4gVW8oIlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsdCxvKTtjYXNlIkFMRVJUU19OT19FWFBJUkFUSU9OIjoKcmV0dXJuIFVvKCJBTEVSVFNfTk9fRVhQSVJBVElPTiIsdCxvKTtkZWZhdWx0OnJldHVybigwLEhvLmVuYWJsZWQpKGUsbyl9fXZhciBqbz1vKDYxMzg3MCk7YXN5bmMgZnVuY3Rpb24gR28oZSx0LG8saT17fSxuKXtjb25zdCByPXdpbmRvdy5pc19hdXRoZW50aWNhdGVkO3dpbmRvdy5pc19hdXRoZW50aWNhdGVkJiZ3aW5kb3cudXNlci5pc19wcm8mJmF3YWl0KDAsVm8uc3luY1VzZXJEYXRhKSgiZ29wcm8iKSxyPT09d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ/ZnVuY3Rpb24oZSx0LG8saSxuKXt6byh0LGkpP2UoKTooMCxJby5vcGVuUGF5d2FsbCkoey4uLm8scnVuT3JHb3Byb1dpdGhGZWF0dXJlQ2hlY2tPcHRpb25zOntmZWF0dXJlQ2hlY2s6KCk9PnpvKHQsaSksc2lnbkluU3VjY2VzczplfX0sbil9KGUsdCxvLGksbik6KDAsam8uc2hvd1NpZ25Nb2RhbCkoe3NvdXJjZTpvLmdvcHJvU291cmNlLGZlYXR1cmU6by5mZWF0dXJlLHNpZ25pblN1Y2Nlc3M6ZX0pfXZhciBYbz1vKDczNzg2MyksS289byg5NjkxNjgpLFlvPW8oMjExMzYwKTtjbGFzcyBKb3tjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfdGltZWZyYW1lIix0aGlzLnNvdXJjZT0idGltZWZyYW1lX3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9ZX19Y2xhc3MgWm97Y29uc3RydWN0b3IoZSx0KXt0aGlzLmV2ZW50PSJjaGFuZ2VfY29sdW1uc2V0Iix0aGlzLnNvdXJjZT0iY29sdW1zZXRfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT0oMCxZby5nZXRDb2x1bW5TZXROYW1lRm9yU25vd1Bsb3cpKHQpLHRoaXMuc291cmNlPWV9fWNsYXNzIFFve2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0iY2hhbmdlX2Zhdm9yaXRlX2NvbHVtbnNldHMiLHRoaXMuc291cmNlPSJjb2x1bW5zZXRfc3Rhcl9idXR0b24iLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMudmFsdWU9KDAsWW8uZ2V0Q29sdW1uU2V0TmFtZUZvclNub3dQbG93KSh0KSx0aGlzLnN0YXRlPWV9fWNsYXNzIGVpe2NvbnN0cnVjdG9yKCl7dGhpcy5ldmVudD0icmVuYW1lX2N1c3RvbV9jb2x1bW5zZXQiLHRoaXMuc291cmNlPSJjb2x1bW5zZXRfcGVuX2J1dHRvbiIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPSIifX1jbGFzcyB0aXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfZmlsdGVyc2V0Iix0aGlzLnNvdXJjZT0iZmlsdGVyc2V0X3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9KDAsWW8uZ2V0RmlsdGVyU2V0TmFtZUZvclNub3dQbG93KShlKX19Y2xhc3Mgb2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJyZW5hbWVfY3VzdG9tX2ZpbHRlcnNldCIsdGhpcy5zb3VyY2U9ImZpbHRlcnNldF9wZW5fYnV0dG9uIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9IiJ9fXZhciBpaT1vKDQ1MDY2NCk7Y2xhc3Mgbml7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuZXZlbnQ9ImNoYW5nZV9jb2x1bW5zIix0aGlzLnNvdXJjZT0iY29sdW1uX3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJoZWFkZXJfZmllbGRzX3BvcHVwIj09PWU/ImhlYWRlciI6InRvb2xiYXIiLHRoaXMuc3RhdGU9dD8iYWRkZWQiOiJyZW1vdmVkIix0aGlzLnZhbHVlPW99fWNsYXNzIHJpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImNvbHVtbl9tb3ZlIix0aGlzLnNvdXJjZT0iY29sdW1uX2hlYWRlciIsdGhpcy5sb2NhdGlvbj0iaGVhZGVyIix0aGlzLnN0YXRlPWlpLlVzZXJBY3Rpb25TdGF0ZS5EcmFnLHRoaXMudmFsdWU9ZX19Y2xhc3Mgc2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJyZWZyZXNoX3NjcmVlbmVyX2RhdGEiLHRoaXMuc291cmNlPSJyZWZyZXNoX2J1dHRvbiIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPSIifX1jbGFzcyBhaXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfcmVmcmVzaF9pbnRlcnZhbCIsdGhpcy5zb3VyY2U9InJlZnJlc2hfaW50ZXJ2YWxfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT0oMCxZby5nZXRTbm93UGxvd1JlZnJlc2hJbnRlcnZhbCkoZSl9fXZhciBsaT1vKDQ4MjUwNCk7Y29uc3QgY2k9bygyMjEwNjEpLmdldExvZ2dlcigiU2NyZWVuZXIuUG9wdXBzIik7Y2xhc3MgZGl7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuX21vZGVsPWUsdGhpcy5fdmlldz10LHRoaXMuX2JyaWRnZT1vLHRoaXMuX21hcmtldHM9bnVsbCx0aGlzLl9tb2RlbC5maWVsZFNldFNhdmVkLnN1YnNjcmliZShudWxsLCgoKT0+dGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiKSkpLHRoaXMuX21vZGVsLmZpbHRlclNldFNhdmVkLnN1YnNjcmliZShudWxsLCgoKT0+dGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIikpKSx0aGlzLl9maWVsZHNQb3B1cENhY2hlPXt9fXNob3dQcm9tcHREaWFsb2coZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKGk9PnsoMCxSby5zaG93UmVuYW1lKSh7dGl0bGU6ZS50aXRsZSx0ZXh0OmUubGFiZWwsaW5pdFZhbHVlOnQsbWFpbkJ1dHRvblRleHQ6Xy50KG51bGwsdm9pZCAwLG8oNjEyNjU1KSksbWF4TGVuZ3RoOjEyOCxvblJlbmFtZTooe25ld1ZhbHVlOmUsZGlhbG9nQ2xvc2U6dH0pPT57aShlKSx0KCl9LG9uQ2xvc2U6aX0pfSkpfXNob3dNYWludGVuYW5jZURpYWxvZygpe01vKHt0eXBlOiJtb2RhbCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTU0NjQpKSxjb250ZW50Ol8udChudWxsLHZvaWQgMCxvKDMzMjg1NSkpfSl9c2hvd0NvbmZpcm1EaWFsb2coZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0PT57KDAsUm8uc2hvd0NvbmZpcm0pKHt0ZXh0OmUsCm9uQ29uZmlybTooe2RpYWxvZ0Nsb3NlOmV9KT0+e3QoITApLGUoKX0sb25DbG9zZTooKT0+dCghMSl9KX0pKX1zaG93Tm90aWNlKGUsdCl7TW8oe2NvbnRlbnQ6ZSx0aXRsZTp0fSl9c2V0RmllbGRzUG9wdXAoZSx0LGkpe2UuYWRkQ2xhc3MoInR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24iKTtjb25zdCBuPWxpKGA8ZGl2IGNsYXNzPSIke3R8fCIifSI+YCk7bi5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgcj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1zY3JlZW5lci1maWVsZHMtcG9wdXAgaS1oaWRkZW4iPicpLmFwcGVuZFRvKG4pO2kmJnIuYWRkQ2xhc3MoaSk7Y29uc3Qgcz1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19zZWFyY2gtd3JhcCI+JykuYXBwZW5kVG8ociksYT1saShgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIke18udChudWxsLHZvaWQgMCxvKDg3MTExMCkpfSIgY2xhc3M9InR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0Ij5gKS5hcHBlbmRUbyhzKSxsPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIj4nKS5hcHBlbmRUbyhyKSxjPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW1zLXdyYXAgdHYtZHJvcGRvd24tYmVoYXZpb3JfX2luc2Nyb2xsIj4nKS5hcHBlbmRUbyhsKTsiaGVhZGVyX2ZpZWxkcy1idXR0b24iPT09ZS5hdHRyKCJkYXRhLW5hbWUiKSYmYy5hdHRyKHsiZGF0YS1uYW1lIjoiaGVhZGVyX2ZpZWxkc19wb3B1cCJ9KTtjb25zdCBkPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW0gdHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19pdGVtLS1uby1tYXRjaGVzIGpzLWhpZGRlbiI+Tm8gbWF0Y2hlczwvZGl2PicpLmFwcGVuZFRvKHIpO2Eub24oImNoYW5nZSBpbnB1dCIsKGU9Pntjb25zdCB0PWEudmFsKCkudHJpbSgpLnRvTG93ZXJDYXNlKCk7dD9jLmZpbmQoIi5qcy1maWVsZHMtaXRlbSIpLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT1saSh0aGlzKTtlLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCF+ZS50ZXh0KCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKHQpKX0pKTpjLmZpbmQoIi5qcy1maWVsZHMtaXRlbSIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSxkLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCEhYy5maW5kKCIuanMtZmllbGRzLWl0ZW06bm90KC5qcy1oaWRkZW4pIikuc2l6ZSgpKSxuLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpfSkpLG4ub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PnthLnZhbCgiIiksYy5maW5kKCIuanMtZmllbGRzLWl0ZW0iKS5yZW1vdmVDbGFzcygianMtaGlkZGVuIiksZC5hZGRDbGFzcygianMtaGlkZGVuIiksdGhpcy5yZXNldEZpZWxkc1BvcHVwKGMpLGwuY3NzKCJtYXhIZWlnaHQiLGxpKHdpbmRvdykuaGVpZ2h0KCktZS5vZmZzZXQoKS50b3ArbGkod2luZG93KS5zY3JvbGxUb3AoKS1lLm91dGVySGVpZ2h0KCktcy5vdXRlckhlaWdodCgpLTIwKX0pKS5vbigiYWZ0ZXJPcGVuTWVudSIsKCgpPT57YS5mb2N1cygpfSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCxub0FuaW1hdGlvbjohMH0pLHNldFRpbWVvdXQoKCgpPT50aGlzLnJlc2V0RmllbGRzUG9wdXAoYykpLDApfXJlc2V0RmllbGRzUG9wdXAoZSl7ZS5lbXB0eSgpO2NvbnN0IHQ9ZT0+e2lmKGUgaW4gdGhpcy5fZmllbGRzUG9wdXBDYWNoZSl7Y29uc3QgdD10aGlzLl9maWVsZHNQb3B1cENhY2hlW2VdO3JldHVybiB0LmNoZWNrYm94LnByb3AoImNoZWNrZWQiLEl0W2VdLmNoZWNrZWQpLHQuaXRlbX1jb25zdCB0PWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+Jyk7bGkoYDxsYWJlbCBkYXRhLWZpZWxkPSIke2V9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9faXRlbSBqcy1maWVsZHMtaXRlbSI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHtlfSIgY2xhc3M9ImpzLWZpZWxkLWNoZWNrYm94IiR7SXRbZV0uY2hlY2tlZD8iIGNoZWNrZWQiOiIifT5cblx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIj4keygwLFRlLnRyaWVzVHJhbnNsYXRlU2NyZWVuZXJEYXRhKShJdFtlXS50aXRsZSl9PC9zcGFuPlxuXHRcdFx0PC9sYWJlbD5gKS5hcHBlbmRUbyh0KTtjb25zdCBvPXQuZmluZCgiLmpzLWZpZWxkLWNoZWNrYm94IikudHZDb250cm9sQ2hlY2tib3goKTtyZXR1cm4gdGhpcy5fZmllbGRzUG9wdXBDYWNoZVtlXT17aXRlbTp0LGNoZWNrYm94Om99LHR9LG89dGhpcy5fdmlldy5zb3J0ZWRGaWVsZHMuZmlsdGVyKFh0KS5zb3J0KCgoZSx0KT0+SXRbZV0udGl0bGUubG9jYWxlQ29tcGFyZShJdFt0XS50aXRsZSx2b2lkIDAse2lnbm9yZVB1bmN0dWF0aW9uOiEwLG51bWVyaWM6ITB9KSkpLGk9by5maWx0ZXIoKGU9Pkl0W2VdLmNoZWNrZWQpKSxuPW8uZmlsdGVyKChlPT4hSXRbZV0uY2hlY2tlZCkpO2kuY29uY2F0KG4pLmZvckVhY2goKG89PnsiaXNfcHJpbWFyeSIhPT1vJiZ0KG8pLmFwcGVuZFRvKGUpfSkpLGUuZmluZCgiLmpzLWZpZWxkLWNoZWNrYm94Iikub2ZmKCJjaGFuZ2UiKSxlLmZpbmQoIi5qcy1maWVsZC1jaGVja2JveCIpLm9uKCJjaGFuZ2UiLCh0PT57Y29uc3Qgbz1saSh0LmN1cnJlbnRUYXJnZXQpLGk9by5hdHRyKCJuYW1lIik7SXRbaV0uY2hlY2tlZD1vLnByb3AoImNoZWNrZWQiKTtjb25zdCBuPWUuYXR0cigiZGF0YS1uYW1lIikscj1JdFtpXS5jaGVja2VkOygwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBuaShuLHIsaSkpO2NvbnN0IHM9SXRbaV0uY2hlY2tlZD90aGlzLl92aWV3Ll90YWJsZS5maWVsZHNPcmRlci5jb25jYXQoaSk6dGhpcy5fdmlldy5fdGFibGUuZmllbGRzT3JkZXIuZmlsdGVyKChlPT5lIT09aSkpO3RoaXMuX21vZGVsLnByZXZlbnRQcmV2U2NhblJlcXVlc3QoKSwKdGhpcy5fbW9kZWwuZmllbGRTZXRDaGFuZ2VkLmZpcmUocy5maWx0ZXIoKGU9Pkl0W2VdJiYhMCE9PUl0W2VdLmRpc2FibGVkJiYhMCE9PUl0W2VdLmhpZGRlbkNvbHVtbikpKSx0aGlzLl9tb2RlbC51cGRhdGUoKSx0aGlzLl92aWV3LiRmaWVsZFNldHNCdXR0b24udG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tdW5zYXZlZCIsdGhpcy5fbW9kZWwuaXNGaWVsZFNldENoYW5nZWQoKSl9KSl9c2V0UG9wdXAoZSx0LG8pe2UuYWRkQ2xhc3MoInR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24iKTtjb25zdCBpPWxpKGA8ZGl2IGNsYXNzPSIke3R8fCIifSI+YCk7aS5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgbj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1zY3JlZW5lci1wb3B1cCBpLWhpZGRlbiI+JykuYXBwZW5kVG8oaSk7byYmbi5hZGRDbGFzcyhvKTtjb25zdCByPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIGpzLWNvbnRhaW5lciI+JykuYXBwZW5kVG8obik7cmV0dXJuIGxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8ociksaS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e3IuY3NzKCJtYXhIZWlnaHQiLGxpKHdpbmRvdykuaGVpZ2h0KCktZS5vZmZzZXQoKS50b3ArbGkod2luZG93KS5zY3JvbGxUb3AoKS00NSl9KSkudHZEcm9wZG93bih7c2Nyb2xsOiEwLG5vQW5pbWF0aW9uOiEwfSl9c2V0RmllbGRTZXRzUG9wdXAoZSl7Y29uc3QgdD10aGlzLnNldFBvcHVwKGUsInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIik7dC50dkRyb3Bkb3duKCJkaXNhYmxlIik7Y29uc3QgaT10LmZpbmQoIi5qcy1jb250ZW50Iik7aS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IG89bGkoZS5jdXJyZW50VGFyZ2V0KTtpLmZpbmQoIi5qcy1pdGVtLWFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIGpzLWl0ZW0tYWN0aXZlIiksby5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpO2NvbnN0IG49by5hdHRyKCJkYXRhLXNldCIpO3RoaXMuX21vZGVsLmFwcGx5RmllbGRTZXQobiksdGhpcy5fdmlldy5hZGp1c3RUb29sYmFyV2lkdGgoKSx0LnR2RHJvcGRvd24oImNsb3NlIiksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfc2VsZWN0b3IiLG4pKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LWRlbGV0ZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCksbj10aGlzLl9tb2RlbC5nZXRGaWVsZFNldEJ5SWQoaS5wYXJlbnQoKS5hdHRyKCJkYXRhLXNldCIpKSxyPXRoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCk9PT1uLmlkO3RoaXMuc2hvd0NvbmZpcm1EaWFsb2coXy50KG51bGwsdm9pZCAwLG8oOTg1MjU5KSkuZm9ybWF0KHtuYW1lOm4udGl0bGV9KSkudGhlbigoZT0+e2UmJnRoaXMuX21vZGVsLnNhdmVGaWVsZFNldCh7aWQ6bi5pZCxkZWxldGU6MX0sIkRlbGV0ZSBmaWVsZCBzZXQiKS50aGVuKCgoKT0+e3RoaXMuX21vZGVsLnJlbW92ZUZhdm9yaXRlRmllbGRTZXQobi5pZCksciYmdGhpcy5fbW9kZWwuYXBwbHlGaWVsZFNldCh0aGlzLl9tb2RlbC5kZWZhdWx0RmllbGRTZXRzWzBdLmlkLG51bGwsITApLHRoaXMuX3ZpZXcuYWRqdXN0VG9vbGJhcldpZHRoKCl9KSl9KSksdC50dkRyb3Bkb3duKCJjbG9zZSIpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNsaWNrIiwiLmpzLXNldC1zdGFyIiwoZT0+e2NvbnN0IHQ9bGkoZS5jdXJyZW50VGFyZ2V0KSxvPXQucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKTt0LnBhcmVudCgpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tZmF2b3JpdGUiKSx0aGlzLl9tb2RlbC5hZGRGYXZvcml0ZUZpZWxkU2V0KG8pLGUuc3RvcFByb3BhZ2F0aW9uKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFFvKCJhZGRlZCIsbykpfSkpLm9uKCJjbGljayIsIi5qcy1zZXQtc3Rhci1hY3RpdmUiLChlPT57Y29uc3QgdD1saShlLmN1cnJlbnRUYXJnZXQpLG89dC5wYXJlbnQoKS5hdHRyKCJkYXRhLXNldCIpO3QucGFyZW50KCkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1mYXZvcml0ZSIpLHRoaXMuX21vZGVsLnJlbW92ZUZhdm9yaXRlRmllbGRTZXQobyksZS5zdG9wUHJvcGFnYXRpb24oKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgUW8oInJlbW92ZWQiLG8pKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LXJlbmFtZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCkucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKSxuPXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChpKTt0aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDY3MTIzKSksbGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oMjQ5OTc4KSl9LG4udGl0bGUpLnRoZW4oKGU9PntlJiZlIT09bi50aXRsZSYmKHRoaXMuX21vZGVsLnNhdmVGaWVsZFNldCh7aWQ6bi5pZCx0aXRsZTplfSwiUmVuYW1lIGZpZWxkIHNldCIpLHRoaXMuX3ZpZXcuJGZpZWxkU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmUganMtbm8tcG9pbnRlci1ldmVudHMiKSx0aGlzLl9tb2RlbC5jdXJyZW50RmllbGRTZXRJZCgpPT1uLmlkJiZ0aGlzLl92aWV3LiRmaWVsZFNldHNCdXR0b24udGV4dChlKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgZWkpKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIiksZS5zdG9wUHJvcGFnYXRpb24oKX0pKS5vbigiY2xpY2siLCIuanMtc2F2ZSIsKGU9Pnt0aGlzLmNvbmZpcm1BbmRTYXZlQ3VycmVudEZpZWxkU2V0KCkudGhlbigoZT0+ewpjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlLmlkKTt0aGlzLl9tb2RlbC5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuX21vZGVsLnNldHRpbmdLZXkrIi5maWVsZFNldElkIixlLmlkLHtmb3JjZUZsdXNoOiEwfSksdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRleHQodC50aXRsZSk7Y29uc3Qgbz10aGlzLiRmYXZvcml0ZXNCYXImJnRoaXMuJGZhdm9yaXRlc0Jhci5maW5kKGAuanMtZmF2b3JpdGUtaXRlbVtkYXRhLXNldD0ke2UuaWR9XWApfHxsaSgpO28uc2l6ZSgpJiZvLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbS0tYWN0aXZlIil9KSkuY2F0Y2goKGU9PntlJiZjaS5sb2dFcnJvcihlKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIil9KSksdGhpcy5fbW9kZWwubG9hZGluZ0NvbXBsZXRlLnN1YnNjcmliZShudWxsLCgoKT0+e3QudHZEcm9wZG93bigiZW5hYmxlIil9KSwhMCksdC5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+dGhpcy5zZXRGaWVsZFNldHNQb3B1cENvbnRlbnQoaSkpKX1zZXRGaWVsZFNldHNQb3B1cENvbnRlbnQoZSl7ZS5lbXB0eSgpLHRoaXMuX2JyaWRnZS5vbldpZGdldHx8bGkoYDxkaXYgY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSB0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tc2F2ZSBqcy1zYXZlIj4keygwLHFvLmFwcGVuZEVsbGlwc2lzKShfLnQobnVsbCx2b2lkIDAsbygzMDM2ODQpKSl9PC9kaXY+YCkucHJlcGVuZChsaShvKDYyNjIxOCkpLmF0dHIoe2NsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiIsd2lkdGg6IjIwIixoZWlnaHQ6IjE0IixzdHlsZToidG9wOiAtMnB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7In0pKS5hcHBlbmRUbyhlKTtjb25zdCB0PWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tcHJlc2V0cyI+PC9kaXY+JykuYXBwZW5kVG8oZSk7dGhpcy5fbW9kZWwuc2V0dGluZ3MuZmllbGRTZXRzLmZvckVhY2goKGU9Pntjb25zdCBpPWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1zZXQ9IiR7ZS5pZH0iICBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXQganMtc2V0IiB0aXRsZT0iJHtibyhlLnRpdGxlKX0iPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJqcy1maWVsZC1zZXQtbmFtZSI+PC9zcGFuPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUganMtc2V0LWRlbGV0ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNDMxNDQxKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygxOTk3ODUpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1lIGpzLXNldC1yZW5hbWUiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDkyNDgyMykpfSI+XG5cdFx0XHRcdFx0XHQke28oMjQ5NDg5KX1cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZlIGpzLXNldC1zdGFyLWFjdGl2ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNjk0MjA5KSl9Ij5cblx0XHRcdFx0XHRcdCR7byg4MDEzMjcpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciBqcy1zZXQtc3RhciIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oOTk1MjkpKX0iPlxuXHRcdFx0XHRcdFx0JHtvKDQyNzA5KX1cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+YCkuYXBwZW5kVG8odCk7aS5maW5kKCIuanMtZmllbGQtc2V0LW5hbWUiKS50ZXh0KGhpKGUudGl0bGUpKSxpLmZpbmQoIi5qcy1zZXQiKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlIiwtMSE9PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YoZS5pZCkpfSkpLHRoaXMuX21vZGVsLmRlZmF1bHRGaWVsZFNldHMuZm9yRWFjaCgodD0+e2xpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1zZXQ9IiR7dC5pZH0iIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtc2V0Ij5cblx0XHRcdFx0XHQke3QudGl0bGV9XG5cdFx0XHRcdFx0JHt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/IiI6YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFyLWFjdGl2ZSBqcy1zZXQtc3Rhci1hY3RpdmUiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDY5NDIwOSkpfSI+XG5cdFx0XHRcdFx0XHRcdCR7byg4MDEzMjcpfVxuXHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXIganMtc2V0LXN0YXIiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDk5NTI5KSl9Ij5cblx0XHRcdFx0XHRcdFx0JHtvKDQyNzA5KX1cblx0XHRcdFx0XHRcdDwvc3Bhbj5gfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpLmZpbmQoIi5qcy1zZXQiKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlIiwtMSE9PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YodC5pZCkpfSkpLGUuZmluZChgW2RhdGEtc2V0PSIke3RoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCl9Il1gKS5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpfWNvbmZpcm1BbmRTYXZlQ3VycmVudEZpZWxkU2V0KCl7CmNvbnN0IGU9dGhpcy5fbW9kZWwuZ2V0RmllbGRTZXRCeUlkKHRoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCkpLHQ9dGhpcy5fdmlldy5fdGFibGUuZmllbGRzT3JkZXIuc2xpY2UoMCk7aWYoIUl0LnR5cGUuZGlzYWJsZWQmJkl0LnR5cGUuY2hlY2tlZCl7Y29uc3QgZT10LmluZGV4T2YoIm5hbWUiKTstMSE9PWUmJnQuc3BsaWNlKGUrMSwwLCJ0eXBlIil9aWYoIUl0LmRlc2NyaXB0aW9uLmRpc2FibGVkJiZJdC5kZXNjcmlwdGlvbi5jaGVja2VkKXtjb25zdCBlPXQuaW5kZXhPZigibmFtZSIpOy0xIT09ZSYmdC5zcGxpY2UoZSsxLDAsImRlc2NyaXB0aW9uIil9Y29uc3QgaT1KU09OLnN0cmluZ2lmeSh0KSxuPWUmJiF0aGlzLl9tb2RlbC5kZWZhdWx0RmllbGRTZXRzLmZpbmQoKHQ9PnQuaWQ9PT1lLmlkKSk7cmV0dXJuIG5ldyBQcm9taXNlKCgodCxyKT0+cnVuT3JTaWduSW4oKCgpPT50aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDMwMzY4NCkpLGxhYmVsOl8udChudWxsLHZvaWQgMCxvKDI0OTk3OCkpfSxlJiZlLnRpdGxlfHwiIikudGhlbigobz0+e2lmKHZvaWQgMD09PW8pcmV0dXJuIHZvaWQgcigpO2NvbnN0IHM9e3RpdGxlOmJvKG8pLGNvbnRlbnQ6aX07bGV0IGE9IkNyZWF0ZSBmaWVsZCBzZXQiO24mJmUudGl0bGU9PT1vJiYocy5pZD1lLmlkLGE9IlVwZGF0ZSBmaWVsZCBzZXQiKSx0aGlzLl9tb2RlbC5zYXZlRmllbGRTZXQocyxhKS50aGVuKHQscil9KSkpLHtzb3VyY2U6InNhdmUgY29sdW1uc2V0In0pKSl9c2V0RmlsdGVyU2V0c1BvcHVwKGUpe2NvbnN0IHQ9dGhpcy5zZXRQb3B1cChlLCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24td3JhcCIsInR2LWRyb3Bkb3duX19ib2R5LS1wb3NpdGlvbl9yaWdodCIpO3QudHZEcm9wZG93bigiZGlzYWJsZSIpO2NvbnN0IGk9dC5maW5kKCIuanMtY29udGVudCIpLG49dGhpcy5fYnJpZGdlLiRib2R5O2Z1bmN0aW9uIHIoZSl7aWYoKDAsS28uaXNSdGwpKCkpZS50b2dnbGVDbGFzcygidHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IiwhMCk7ZWxzZXtjb25zdCBvPXQud2lkdGgoKSxpPW4uZmluZCgiLnR2LXNjcmVlbmVyLXRvb2xiYXIiKS53aWR0aCgpLHI9dC5wb3NpdGlvbigpLmxlZnQscz1pLShvK3IpO2UudG9nZ2xlQ2xhc3MoInR2LWRyb3Bkb3duX19ib2R5LS1wb3NpdGlvbl9yaWdodCIscj5zKX19aS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IG49bGkoZS5jdXJyZW50VGFyZ2V0KTtpLmZpbmQoIi5qcy1pdGVtLWFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIGpzLWl0ZW0tYWN0aXZlIiksbi5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpLHRoaXMuX3ZpZXcuJGZpbHRlclNldHNCdXR0b24udG9nZ2xlQ2xhc3MoImktZGlzYWJsZWQiLCEwKSxuZXcgUHJvbWlzZSgoZT0+e3RoaXMuX2JyaWRnZS5vbldpZGdldD9lKCk6dGhpcy5fbW9kZWwuaXNGaWx0ZXJTZXRDaGFuZ2VkKCk/dGhpcy5zaG93Q29uZmlybURpYWxvZyhfLnQobnVsbCx2b2lkIDAsbyg5NjMzMTgpKSkudGhlbigodD0+e3Q/dGhpcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKS50aGVuKGUsKHQ9Pnt0JiZjaS5sb2dFcnJvcih0KSxlKCl9KSk6ZSgpfSkpOmUoKX0pKS50aGVuKCgoKT0+e2NvbnN0IGU9aGkobi5hdHRyKCJkYXRhLXNldCIpKTt0aGlzLl9tb2RlbC5hcHBseUZpbHRlclNldChlKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJBcHBseSBmaWx0ZXIgc2V0ICIrZSksdGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyB0aShlKSl9KSksc2V0VGltZW91dCgoKCk9PnQudHZEcm9wZG93bigiY2xvc2UiKSksMjAwKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LWRlbGV0ZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCksbj10aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGkucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKSkscj10aGlzLl9tb2RlbC5jdXJyZW50RmlsdGVyU2V0SWQoKT09PW4uaWQ7dGhpcy5zaG93Q29uZmlybURpYWxvZyhfLnQobnVsbCx2b2lkIDAsbygyNzcwMTEpKS5mb3JtYXQoe25hbWU6bi50aXRsZX0pKS50aGVuKChlPT57ZSYmdGhpcy5fbW9kZWwuc2F2ZUZpbHRlclNldCh7aWQ6bi5pZCxkZWxldGU6MX0sIkRlbGV0ZSBmaWx0ZXIgc2V0IikudGhlbigoKCk9PntpZihyKXtjb25zdCBlPXRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZpbmQoKGU9PiEwIT09ZS5kaXNhYmxlZCkpfHx0aGlzLl9tb2RlbC5kZWZhdWx0RmlsdGVyU2V0c1swXTt0aGlzLl9tb2RlbC5hcHBseUZpbHRlclNldChlLmlkKX19KSl9KSksdC50dkRyb3Bkb3duKCJjbG9zZSIpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNsaWNrIiwiLmpzLXNldC1yZW5hbWUiLChlPT57Y29uc3QgaT1saShlLmN1cnJlbnRUYXJnZXQpLnBhcmVudCgpLmF0dHIoImRhdGEtc2V0Iiksbj10aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGkpO3RoaXMuc2hvd1Byb21wdERpYWxvZyh7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQxMjU3KSksbGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oODkwOTkpKX0sbi50aXRsZSkudGhlbigoZT0+e2UmJmUhPT1uLnRpdGxlJiYodGhpcy5fbW9kZWwuc2F2ZUZpbHRlclNldCh7aWQ6bi5pZCx0aXRsZTplfSwiUmVuYW1lIGZpbHRlciBzZXQiKSx0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFjdGl2ZSBqcy1uby1wb2ludGVyLWV2ZW50cyIpLHRoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpPT1uLmlkJiZ0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dChlKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgb2kpKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIiksZS5zdG9wUHJvcGFnYXRpb24oKQp9KSkub24oImNsaWNrIiwiLmpzLXNhdmUiLChlPT57dGhpcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKS50aGVuKChlPT57dm9pZCAwIT09ZS5pZD8odGhpcy5fbW9kZWwuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5zZXR0aW5nS2V5KyIuZmlsdGVyU2V0SWQiLGUuaWQse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGUuaWQpLnRpdGxlKSk6Y2kubG9nRXJyb3IoIlVuYWJsZSB0byBnZXQgaWQgb2YgY3JlYXRlZCBzZXQiKX0pKS5jYXRjaCgoZT0+e2UmJmNpLmxvZ0Vycm9yKGUpfSkpLHQudHZEcm9wZG93bigiY2xvc2UiKX0pKSx0aGlzLiRmaWx0ZXJTZXRzUG9wdXBDb250ZW50PWksdGhpcy5fYnJpZGdlLndpZHRoPyhyKGkucGFyZW50KCkucGFyZW50KCkpLHRoaXMuX2JyaWRnZS53aWR0aC5zdWJzY3JpYmUoKCgpPT57cihpLnBhcmVudCgpLnBhcmVudCgpKX0pKSk6bGkod2luZG93KS5vbigicmVzaXplIiwoKCk9PntyKGkucGFyZW50KCkucGFyZW50KCkpfSkpLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnR2RHJvcGRvd24oImVuYWJsZSIpfSksITApLHQub24oImJlZm9yZU9wZW5NZW51IiwoKCk9Pnt0aGlzLnNldEZpbHRlclNldHNQb3B1cENvbnRlbnQoKX0pKX1zZXRGaWx0ZXJTZXRzUG9wdXBDb250ZW50KCl7Y29uc3QgZT10aGlzLiRmaWx0ZXJTZXRzUG9wdXBDb250ZW50O2UuZW1wdHkoKSx0aGlzLl9icmlkZ2Uub25XaWRnZXR8fGxpKGA8ZGl2IGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0gdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXNhdmUgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXNwYWNlLWxlZnQganMtc2F2ZSI+JHsoMCxxby5hcHBlbmRFbGxpcHNpcykoXy50KG51bGwsdm9pZCAwLG8oMzk0MTMxKSkpfTwvZGl2PmApLnByZXBlbmQobGkobyg2MjYyMTgpKS5hdHRyKHtjbGFzczoidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24iLHdpZHRoOiIyMCIsaGVpZ2h0OiIxNCIsc3R5bGU6InRvcDogLTJweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyJ9KSkuYXBwZW5kVG8oZSk7Y29uc3QgdD1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXByZXNldHMiPjwvZGl2PicpLmFwcGVuZFRvKGUpO3RoaXMuX21vZGVsLnNldHRpbmdzLmZpbHRlclNldHMuZm9yRWFjaCgoZT0+e2NvbnN0IGk9bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGRpdiBkYXRhLXNldD0iJHtlLmlkfSIgY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSB0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tcHJlc2V0IHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zcGFjZS1sZWZ0IGpzLXNldCI+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9ImpzLWZpbHRlci1zZXQtbmFtZSI+PC9zcGFuPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWUganMtc2V0LXJlbmFtZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oOTI0ODIzKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygyNDk0ODkpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRlIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWRlbGV0ZS0tcmlnaHQganMtc2V0LWRlbGV0ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNDMxNDQxKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygxOTk3ODUpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5gKTtpLmZpbmQoIi5qcy1maWx0ZXItc2V0LW5hbWUiKS50ZXh0KGhpKGUudGl0bGUpKSxpLmFwcGVuZFRvKHQpfSkpLHRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZvckVhY2goKHQ9Pnt0LmRpc2FibGVkfHxsaShgPGRpdiBjbGFzcz0idHYtZHJvcGRvd24tYmVoYXZpb3JfX2l0ZW0iPlxuXHRcdFx0XHQ8ZGl2IGRhdGEtc2V0PSIke3QuaWR9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zcGFjZS1sZWZ0IGpzLXNldCI+XG5cdFx0XHRcdFx0JHt0LnRpdGxlfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpfSkpLGUuZmluZChgW2RhdGEtc2V0PSIke3RoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpfSJdYCkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1hY3RpdmUganMtaXRlbS1hY3RpdmUiKX1jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKXtjb25zdCBlPXRoaXMuX21vZGVsLmdldEZpbHRlclNldEJ5SWQodGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclNldElkKCkpLHQ9SlNPTi5zdHJpbmdpZnkodGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclN0YXRlKCkpLGk9ZSYmIXRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZpbmQoKHQ9PnQuaWQ9PT1lLmlkKSk7cmV0dXJuIG5ldyBQcm9taXNlKCgobixyKT0+cnVuT3JTaWduSW4oKCgpPT50aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDM5NDEzMSkpLGxhYmVsOl8udChudWxsLHZvaWQgMCxvKDg5MDk5KSl9LGUudGl0bGUpLnRoZW4oKG89PntpZih2b2lkIDA9PT1vKXJldHVybiB2b2lkIHIoKTtjb25zdCBzPXt0aXRsZTpibyhvKSxjb250ZW50OnR9O2xldCBhPSJDcmVhdGUgZmlsdGVyIHNldCI7aSYmZS50aXRsZT09PW8mJihzLmlkPWUuaWQsYT0iVXBkYXRlIGZpbHRlciBzZXQiKSx0aGlzLl9tb2RlbC5zYXZlRmlsdGVyU2V0KHMsYSkudGhlbihuLHIpfSkpKSx7c291cmNlOiJzYXZlIHNjcmVlbiJ9KSkpfXNldEhpZGRlbkZhdm9yaXRlc1BvcHVwKGUsdCxvLGkpewplLmFkZENsYXNzKCJ0di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uIik7Y29uc3Qgbj1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmUtd3JhcCI+Jyk7bi5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgcj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1kcm9wZG93bl9fYm9keS0tcG9zaXRpb25fcmlnaHQgaS1oaWRkZW4iPicpLmFwcGVuZFRvKG4pLHM9bGkoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwganMtY29udGFpbmVyIj4nKS5hcHBlbmRUbyhyKSxhPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8ocyk7YS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IHQ9bGkoZS5jdXJyZW50VGFyZ2V0KS5hdHRyKCJkYXRhLXNldCIpO2kodCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfZmF2b3JpdGVzX3BpY2tlciIsdCkpLG4udHZEcm9wZG93bigiY2xvc2UiKX0pKTtjb25zdCBsPSgpPT57YS5lbXB0eSgpLHQoKS5mb3JFYWNoKChlPT57bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0XHQ8ZGl2IGRhdGEtc2V0PSIke2UuaWR9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIGpzLXNldCI+XG5cdFx0XHRcdFx0XHQke2JvKGUudGl0bGUpfVxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5gKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSIsbyhlLmlkKSkuYXBwZW5kVG8oYSl9KSksbi50dkRyb3Bkb3duKCJ1cGRhdGVTY3JvbGwiKX07cmV0dXJuIG4ub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PntsKCkscy5jc3MoIm1heEhlaWdodCIsbGkod2luZG93KS5oZWlnaHQoKS1lLm9mZnNldCgpLnRvcCtsaSh3aW5kb3cpLnNjcm9sbFRvcCgpLTQ1KX0pKS5vbigicmVzZXRDb250ZW50IiwoKCk9PmwoKSkpLm9uKCJmb3JjZUNsb3NlIiwoKCk9Pm4udHZEcm9wZG93bigiY2xvc2UiKSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCxub0FuaW1hdGlvbjohMH0pfXNldFNlbGVjdFBvcHVwKGUsdCl7Y29uc3R7d3JhcENsYXNzOm8sYnV0dG9uQ2xhc3M6aSxkcm9wZG93bkNsYXNzOm59PWUse2J1dHRvblRpdGxlOnJ9PXQscz1saShgPGRpdiBjbGFzcz0iJHtvfSB0di1kcm9wZG93biB0di1kcm9wZG93bi0taW5saW5lIHR2LWRyb3Bkb3duLWJlaGF2aW9yIj5gKSxhPWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bl9fYnV0dG9uIHR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24gJHtpfSIgdGl0bGU9IiR7cn0iPmApLmFwcGVuZFRvKHMpLGw9bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5IHR2LWRyb3Bkb3duX19ib2R5LS1vdmVyLXRyaWdnZXIgdHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IGktaGlkZGVuICR7bn0iPmApLmFwcGVuZFRvKHMpLGM9bGkoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwganMtY29udGFpbmVyIj4nKS5hcHBlbmRUbyhsKSxkPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8oYyk7cmV0dXJuIHMub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PntjLmNzcygibWF4SGVpZ2h0IixsaSh3aW5kb3cpLmhlaWdodCgpLWEub2Zmc2V0KCkudG9wK2xpKHdpbmRvdykuc2Nyb2xsVG9wKCktNDUpfSkpLm9uKCJmb3JjZUNsb3NlIiwoKCk9PnMudHZEcm9wZG93bigiY2xvc2UiKSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCwkd3JhcDphLCRib2R5Omwsbm9BbmltYXRpb246ITB9KSx7JHdyYXA6cywkYnV0dG9uOmEsJGRyb3Bkb3duQm9keTpsLCRkcm9wZG93bkNvbnRlbnQ6ZH19c2V0TWFya2V0c0xpc3QoZSl7dGhpcy5fbWFya2V0cz1lfXVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKXtpZighdGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwfHwhdGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwLmxlbmd0aClyZXR1cm47dGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwLmVtcHR5KCk7Y29uc3QgZT10aGlzLl92aWV3LnJlZnJlc2hJbnRlcnZhbHM7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDsrK3Qpe2NvbnN0IGk9ZVt0XTtsZXQgbj1udWxsO2lmKC0xPT09aSluPV8udChudWxsLHZvaWQgMCxvKDk5ODYxNikpO2Vsc2V7Y29uc3QgZT1pLzYwfDA7bj0xPT09ZT9fLnQobnVsbCx2b2lkIDAsbyg4Njk3NTYpKTplPDE/dGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaD9fLnQobnVsbCx2b2lkIDAsbyg4OTg5ODcpKTpfLnQobnVsbCx7cGx1cmFsOiJSZWZyZXNoIGV2ZXJ5IHswfSBzZWNvbmRzIixjb3VudDppfSxvKDYzMTQ0NykpLmZvcm1hdChpKTpfLnQobnVsbCx7cGx1cmFsOiJSZWZyZXNoIGV2ZXJ5IHswfSBtaW51dGVzIixjb3VudDplfSxvKDU1NDcyMikpLmZvcm1hdChlKX0KbGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGxhYmVsIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtaW50ZXJ2YWwiPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXJhZGlvIj5cblx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iaW50ZXJ2YWwiIHZhbHVlPSIke2l9IiBjbGFzcz0idHYtY29udHJvbC1yYWRpb19faW5wdXQiPlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtcmFkaW9fX2JveCI+PC9zcGFuPlxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1yYWRpb19fbGFiZWwgdHYtc2NyZWVuZXItcG9wdXBfX3JlZnJlc2gtaW50ZXJ2YWwtbGFiZWwiPiR7bn08L3NwYW4+XG5cdFx0XHRcdDwvbGFiZWw+XG5cdFx0XHQ8L2Rpdj5gKS5hcHBlbmRUbyh0aGlzLiRmaWx0ZXJSZWZyZXNoSW50ZXJ2YWxzUG9wdXApfX1zZXRSZWZyZXNoSW50ZXJ2YWxzUG9wdXAoZSl7Y29uc3QgdD10aGlzLnNldFBvcHVwKGUsInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIiwidHYtc2NyZWVuZXItcG9wdXBfX3JlZnJlc2gtaW50ZXJ2YWxzIik7ZS50b2dnbGVDbGFzcygianMtcHJldmVudC1kcm9wZG93biIsIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKSxlLm9uKCJjbGljayIsKCgpPT5ydW5PclNpZ25JbigoKCk9Pnt9KSx7c291cmNlOiJTY3JlZW5lciByZWZyZXNoIG1vZGUgYnV0dG9uIn0pKSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKG51bGwsKCgpPT57ZS50b2dnbGVDbGFzcygianMtcHJldmVudC1kcm9wZG93biIsIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKX0pKTtjb25zdCBvPXQuZmluZCgiLmpzLWNvbnRlbnQiKTt0aGlzLiRmaWx0ZXJSZWZyZXNoSW50ZXJ2YWxzUG9wdXA9byx0aGlzLnVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKSx0Lm9uKCJiZWZvcmVPcGVuTWVudSIsKCgpPT57by5maW5kKGBpbnB1dFt2YWx1ZT0ke3RoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbH1dYCkucHJvcCgiY2hlY2tlZCIsITApfSkpLG8ub24oImNsaWNrIiwiLmpzLWludGVydmFsIiwoZT0+e2UucHJldmVudERlZmF1bHQoKTtjb25zdCBpPStsaShlLmN1cnJlbnRUYXJnZXQpLmZpbmQoImlucHV0IikudmFsKCk7c2V0VGltZW91dCgoKCk9PnQudHZEcm9wZG93bigiY2xvc2UiKSksbW8uZHVyLzIpLGkhPT10aGlzLl9tb2RlbC5yZWZyZXNoSW50ZXJ2YWwmJih0aGlzLl9tb2RlbC5pc0Zhc3RSZWZyZXNoPyhvLmZpbmQoYGlucHV0W3ZhbHVlPSR7aX1dYCkucHJvcCgiY2hlY2tlZCIsITApLHRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbD1pKTpHbygoKCk9PntvLmZpbmQoYGlucHV0W3ZhbHVlPSR7aX1dYCkucHJvcCgiY2hlY2tlZCIsITApLHRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbD1pfSksWG8uUHJvZHVjdEZlYXR1cmVzRW51bS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0gse2ZlYXR1cmU6InNjcmVlbmVyQXV0b1JlZnJlc2gifSx7dmFsdWU6LTE9PT1pfSksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGFpKGkpKSl9KSl9c2V0U2VsZWN0SW50ZXJ2YWxDb250ZW50KGUsdCxvPSgpPT57fSl7dC5lbXB0eSgpO2NvbnN0IGk9dGhpcy5fbW9kZWwuc2VsZWN0ZWRJbnRlcnZhbElkO2Zvcihjb25zdCBlIG9mIGxlKWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1pbnRlcnZhbD0iJHtlLmlkfSIgdGl0bGU9IiR7ZS50aXRsZX0iIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtc2VsZWN0LWludGVydmFsICR7ZS5pZD09PWk/InR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIjoiIn0iPlxuXHRcdFx0XHRcdCR7ZS5zaG9ydFRpdGxlfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKHQpO2Uub24oImFmdGVyT3Blbk1lbnUiLCgoKT0+e3Qub24oImNsaWNrIiwiLmpzLXNlbGVjdC1pbnRlcnZhbCIsKGk9PntpLnByZXZlbnREZWZhdWx0KCk7Y29uc3Qgbj10aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQ7bGV0IHI9ZGUobGkoaS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJpbnRlcnZhbCIpKTtpZighcnx8bj09PXIuaWQpcmV0dXJuO2NvbnN0IHM9dGhpcy5fbW9kZWwuZW9kUmVzdHJpY3Rpb24udmFsdWUoKTtHbygoKCk9PntzIT09V28uTm9uZSYmIjFkIiE9PXIuaWQ/KCgwLElvLm9wZW5QYXl3YWxsKSh7ZmVhdHVyZToic2NyZWVuZXJJbnRlcnZhbHNFb2QifSkscj1kZSgiMWQiKSk6KHQuZmluZCgiLnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIikucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIiksdC5maW5kKGBbZGF0YS1pbnRlcnZhbD0nJHtyLmlkfSddYCkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIiksbyhyKSl9KSxYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUyx7ZmVhdHVyZToic2NyZWVuZXJJbnRlcnZhbHMifSx7aW50ZXJ2YWw6ci5pZH0pLHNldFRpbWVvdXQoKCgpPT57ZS50dkRyb3Bkb3duKCJjbG9zZSIpLHQub2ZmKCJjbGljayIpfSksbW8uZHVyLzIpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBKbyhyLmlkKSl9KSl9KSl9fWZ1bmN0aW9uIGhpKGUpe3JldHVybiBibyhlLCEwKX12YXIgdWk9byg1ODcxNjgpLF9pPW8oMTY3NTAyKTtvKDE3MjM3MSksbyg1OTMyNjMpO2NsYXNzIHBpe2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0ib3Blbl9maWx0ZXJzX2RpYWxvZyIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy52YWx1ZT0iIix0aGlzLnNvdXJjZT1lLHRoaXMuc3RhdGU9dD4wPyJ3aXRoX2NvdW50ZXIiOiJ3aXRob3V0X2NvdW50ZXIifX1jbGFzcyBtaXtjb25zdHJ1Y3RvcihlKXsKdGhpcy5ldmVudD0iY2hhbmdlX2ZpbHRlcl9kaWFsb2dfdGFiIix0aGlzLnNvdXJjZT0iZmlsdGVyX2RpYWxvZ190YWJfYnV0dG9uIix0aGlzLmxvY2F0aW9uPSJmaWx0ZXJfZGlhbG9nIix0aGlzLnZhbHVlPSIiLHRoaXMuc3RhdGU9ZX19Y2xhc3MgZ2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJmaWx0ZXJfZGlhbG9nX3NlYXJjaF9pbnB1dF9jbGljayIsdGhpcy5zb3VyY2U9ImZpbHRlcl9kaWFsb2dfc2VhcmNoX2lucHV0Iix0aGlzLmxvY2F0aW9uPSJmaWx0ZXJfZGlhbG9nIix0aGlzLnN0YXRlPSJ1c2VyX2NsaWNrZWQiLHRoaXMudmFsdWU9IiJ9fWNsYXNzIHZpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImZpbHRlcl9kaWFsb2dfc2VhcmNoX25vX3Rlcm1zX2ZvdW5kIix0aGlzLnNvdXJjZT0iZmlsdGVyX2RpYWxvZ19zZWFyY2hfaW5wdXQiLHRoaXMubG9jYXRpb249ImZpbHRlcl9kaWFsb2ciLHRoaXMuc3RhdGU9ImVtcHR5X3NlYXJjaF9yZXN1bHQiLHRoaXMudmFsdWU9IiIsdGhpcy52YWx1ZT1lfX1jbGFzcyBmaXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJmaWx0ZXJfZGlhbG9nX2FwcGxpZWRfZmlsdGVycyIsdGhpcy5zb3VyY2U9InVua25vd24iLHRoaXMubG9jYXRpb249ImZpbHRlcl9kaWFsb2ciLHRoaXMuc3RhdGU9aWkuVXNlckFjdGlvblN0YXRlLkFwcGx5RmlsdGVycyx0aGlzLnZhbHVlPWV9fWNsYXNzIHlpe2NvbnN0cnVjdG9yKGUsdCxvLGkpe3RoaXMuZXZlbnQ9ImZpbHRlcl91c2UiLHRoaXMudmFsdWU9ZSx0aGlzLnN0YXRlPXQsdGhpcy5zb3VyY2U9byx0aGlzLmxvY2F0aW9uPWl9fWNsYXNzIGJpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImFwcGx5X2ZsYWdnZWRfZmlsdGVyIix0aGlzLnNvdXJjZT0iZmxhZ2dlZF9tYXJrZXIiLHRoaXMubG9jYXRpb249ImhlYWRlciIsdGhpcy5zdGF0ZT0iZW5hYmxlZCIsdGhpcy52YWx1ZT1lfX12YXIgU2k9byg0ODI1MDQpO2NvbnN0IHdpPXtmaWx0ZXJzU2VhcmNoOmA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zZWFyY2gganMtc2NyZWVuZXItc2VhcmNoIj5cblx0XHQ8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9InR2LXNjcmVlbmVyLXNlYXJjaF9faW5wdXQganMtc2VhcmNoLWlucHV0IiBwbGFjZWhvbGRlcj0iJHtfLnQobnVsbCx2b2lkIDAsbyg1OTg3KSl9Ij5cblx0XHQke28oNzU1MDQxKX1cblx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zZWFyY2hfX3Jlc2V0IGpzLXNlYXJjaC1yZXNldCI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItc2VhcmNoX19yZXNldC1pY29uIj4ke28oMTQ3MDc4KX08L3NwYW4+XG5cdFx0XHQke18udChudWxsLHZvaWQgMCxvKDgyNjMxNCkpfVxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5gLGZpbHRlcnNCb2R5Oic8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2cganMtc2NyZWVuZXItZGlhbG9nIj5cblx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2dfX3dyYXAganMtZmlsdGVycy13cmFwIj48L2Rpdj5cblx0PC9kaXY+J307dmFyIENpPVtfLnQobnVsbCx2b2lkIDAsbygyMzM2OTApKSxfLnQobnVsbCx2b2lkIDAsbyg5OTQwMjUpKSxfLnQobnVsbCx2b2lkIDAsbygzNjkzMjUpKSxfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDQ3NzQ3NSkpXTtjbGFzcyBraXtjb25zdHJ1Y3RvcihlLHQsbyl7dGhpcy5fbW9kZWw9ZSx0aGlzLl92aWV3PXQsdGhpcy5fYnJpZGdlPW8sdGhpcy5fZGlhbG9nVGl0bGU9InNjcmVlbmVyX2ZpbHRlcnMiLHRoaXMuX2NhdGVnb3JpZXM9bnVsbH1zaG93RmlsdGVyc0RpYWxvZyhlKXtyZXR1cm4gUHJvbWlzZS5hbGwoW28uZSg4NzIzOCksby5lKDMxODM3KSxvLmUoMjA5NzEpLG8uZSg4OTE5NSksby5lKDM3MzkwKSxvLmUoNjQ5OTcpXSkudGhlbihvLmJpbmQobyw2ODY5NzUpKS50aGVuKCgoe2NyZWF0ZVRhYmJlZERpYWxvZzp0fSk9Pnt0aGlzLl9jYXRlZ29yaWVzPXRoaXMuX2dldENhdGVnb3JpZXMoKTtjb25zdCBvPXRoaXMuX2NhdGVnb3JpZXMubWFwKChlPT4oe25hbWU6Q2lbZV19KSkpLHtkaWFsb2c6aSx0YWJzOm59PXQoe3RhYnM6byxhZGRpdGlvbmFsSGVhZGVyQ29udGVudDp3aS5maWx0ZXJzU2VhcmNoLHdpZHRoOk1hdGgubWluKDE0MDAsTWF0aC5tYXgoNjQ2LFNpKHdpbmRvdykud2lkdGgoKS0yMDApKSxoZWlnaHQ6TWF0aC5tYXgoNDUwLFNpKHdpbmRvdykuaGVpZ2h0KCktMjAwKSxjb250ZW50QWRkQ2xhc3M6ImpzLWRpYWxvZy1jb250ZW50IixkcmFnZ2FibGU6ITEsZG9Ob3RDcmVhdGVQYWdlczohMCxkZXN0cm95T25DbG9zZTohMH0pLHI9aS4kY29udGVudC5maW5kKCIuanMtZGlhbG9nLWNvbnRlbnQiKSxzPWkuJGNvbnRlbnQuZmluZCgiLmpzLXNjcmVlbmVyLXNlYXJjaCIpO3RoaXMuJGZpZWxkU2VhcmNoSW5wdXQ9cy5maW5kKCIuanMtc2VhcmNoLWlucHV0IiksdGhpcy4kZmllbGRTZWFyY2hJbnB1dC5vbigiaW5wdXQiLCgwLHVpLmRlZmF1bHQpKChlPT57dGhpcy5fdmlldy51cGRhdGVGaWx0ZXJTZWFyY2goKSxpLnVwZGF0ZVNjcm9sbCgpfSksMTAwLHtsZWFkaW5nOiExLHRyYWlsaW5nOiEwfSkpLHRoaXMuJGZpZWxkU2VhcmNoSW5wdXQub24oImNsaWNrIiwoKCk9PnsoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgZ2kpfSkpO3MuZmluZCgiLmpzLXNlYXJjaC1yZXNldCIpLm9uKCJjbGljayIsKGU9PnRoaXMuX3ZpZXcucmVzZXRBbGxGaWx0ZXJzKCkpKTtjb25zdCBhPSgpPT57Y29uc3QgZT10aGlzLiRmaWx0ZXJzUG9wdXAuZ2V0KDApLmNsaWVudFdpZHRoPj0xMjkyO2UmJiF0aGlzLl8kZmlsdGVyc1dyYXAuaXMoIi5qcy0yY29sIik/dGhpcy5fJGZpbHRlcnNXcmFwLmFkZENsYXNzKCJqcy0yY29sIHR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcC0tMmNvbCIpOiFlJiZ0aGlzLl8kZmlsdGVyc1dyYXAuaXMoIi5qcy0yY29sIikmJnRoaXMuXyRmaWx0ZXJzV3JhcC5yZW1vdmVDbGFzcygianMtMmNvbCB0di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2wiKX07dGhpcy4kZmlsdGVyc1BvcHVwPVNpKHdpLmZpbHRlcnNCb2R5KSwKdGhpcy5fJGZpbHRlcnNXcmFwPXRoaXMuJGZpbHRlcnNQb3B1cC5maW5kKCIuanMtZmlsdGVycy13cmFwIik7Y29uc3QgbD1bXTt0aGlzLl92aWV3LnNvcnRlZEZpZWxkcy5mb3JFYWNoKChlPT57SXRbZV0mJiFJdFtlXS5kaXNhYmxlZCYmSXRbZV0uY29udHJvbCYmbC5wdXNoKHRoaXMuX3ZpZXcuYWRkRmllbGRGaWx0ZXIoZSx0aGlzLl8kZmlsdGVyc1dyYXApKX0pKSxQcm9taXNlLmFsbChsKS50aGVuKCgoKT0+dGhpcy5fJGZpbHRlcnNXcmFwLmZpbmQoIi5qcy13cmFwIikuZWFjaCgoKGUsdCk9Pnt0aGlzLl92aWV3LmluaXRGaWx0ZXJIYW5kbGVycyhTaSh0KSl9KSkpKSx0aGlzLiRmaWx0ZXJzUG9wdXAuYXBwZW5kVG8ociksZSYmdGhpcy5fbW9kZWwuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5zZXR0aW5nS2V5KyIuZmlsdGVycy50YWIiLDApLG4udGFiQ2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoZT0+e3RoaXMuZmlsdGVyc0RpYWxvZ1RhYkNoYW5nZWQoZSksaS5zY3JvbGxUb1N0YXJ0KCksMCE9PWUmJigwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBtaShlKSl9KSksdGhpcy5fdmlldy4kZmlsdGVyc0J1dHRvbi5hZGRDbGFzcygianMtbm8tcG9pbnRlci1ldmVudHMiKSxpLm9uKCJzY3JvbGwiLCgoKT0+e2kuJGNvbnRlbnQuZmluZCgiLmpzLWRyb3Bkb3duLXRvZ2dsZS5pLW9wZW5lZCIpLnRyaWdnZXIoInJlc2V0UG9zaXRpb24iLG51bGwsci5wYXJlbnQoKSl9KSk7Y29uc3QgYz10aGlzLl9nZXRBY3RpdmVGaWx0ZXJzKCExKS5zb3J0KCk7aS5vbigiZGVzdHJveSIsKGU9Pntjb25zdCB0PXRoaXMuX2dldEFjdGl2ZUZpbHRlcnMoITEpLnNvcnQoKTtmb3IoY29uc3QgZSBpbiBJdCkiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wmJkl0W2VdLnZhbHVlJiYobXQoSXRbZV0udmFsdWUudmFsdWUpfHxtdChJdFtlXS52YWx1ZS5vcGVyYXRvcikpJiYoSXRbZV0udmFsdWU9bnVsbCk7U2koIi50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSx0aGlzLiRmaWVsZFNlYXJjaElucHV0LnZhbCgiIiksdGhpcy4kZmlsdGVyc1BvcHVwLnJlbW92ZSgpLGRlbGV0ZSB0aGlzLiRmaWx0ZXJzUG9wdXAsdGhpcy5fdmlldy4kZmlsdGVyc0J1dHRvbi5yZW1vdmVDbGFzcygianMtbm8tcG9pbnRlci1ldmVudHMiKSxkZWxldGUgdGhpcy5fZGlhbG9nLFNpKHdpbmRvdykub2ZmKCJyZXNpemUiLGEpLCgwLF9pLmRlZmF1bHQpKGMsdCl8fCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBmaSh0LmpvaW4oIiwgIikpKX0pKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJPcGVuIGZpbHRlcnMgZGlhbG9nIiksaS5vcGVuKCksU2kod2luZG93KS5vbigicmVzaXplIixhKSxhKCksdGhpcy4kZGlhbG9nQ29udGFpbmVyPWkuJGNvbnRlbnQsdGhpcy5fZGlhbG9nPWl9KSl9ZmlsdGVyc0RpYWxvZ1RhYkNoYW5nZWQoZSl7Y29uc3QgdD10aGlzLl9jYXRlZ29yaWVzLm1hcCgoZT0+InR2LXNjcmVlbmVyLWRpYWxvZy0tY2F0IitlKSkuam9pbigiICIpO3RoaXMuJGZpbHRlcnNQb3B1cC5yZW1vdmVDbGFzcyh0KS5hZGRDbGFzcygidHYtc2NyZWVuZXItZGlhbG9nLS1jYXQiK3RoaXMuX2NhdGVnb3JpZXNbZV0pLnNjcm9sbFRvcCgwKX1kZXN0cm95KCl7dGhpcy5fZGlhbG9nJiYodGhpcy5fZGlhbG9nLmNsb3NlKCksZGVsZXRlIHRoaXMuX2RpYWxvZyl9X2dldENhdGVnb3JpZXMoKXtjb25zdCBlPVswXTtyZXR1cm4gdGhpcy5fdmlldy5zb3J0ZWRGaWVsZHMuZm9yRWFjaCgodD0+e0l0W3RdJiYhSXRbdF0uZGlzYWJsZWQmJkl0W3RdLmNvbnRyb2wmJihlLmluY2x1ZGVzKEl0W3RdLmNhdGVnb3J5KXx8ZS5wdXNoKEl0W3RdLmNhdGVnb3J5KSl9KSksZS5zb3J0KCl9X2dldERlZmF1bHRGaWx0ZXJzRm9yQ3VycmVudEZpbHRlclNldCgpe2NvbnN0e2RlZmF1bHRGaWx0ZXJTZXRzOmV9PXRoaXMuX21vZGVsLHQ9dGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclNldElkKCk7cmV0dXJuIE9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKChlPT5lLmlkPT09dCkpWzBdLmNvbnRlbnQuZmlsdGVyc31fZmllbGRWYWx1ZUlzRXF1YWxUb0RlZmF1bHRGaWx0ZXIoZSl7Y29uc3QgdD10aGlzLl9nZXREZWZhdWx0RmlsdGVyc0ZvckN1cnJlbnRGaWx0ZXJTZXQoKVtlXSxvPUl0W2VdLnZhbHVlO3N3aXRjaChJdFtlXS5jb250cm9sKXtjYXNlImNvbmRpdGlvbiI6cmV0dXJuIG8ub3BlcmF0b3I9PT10Lm9wZXJhdG9yJiZvLnZhbHVlLnRvU3RyaW5nKCk9PT10LnZhbHVlLnRvU3RyaW5nKCk7Y2FzZSJyYW5nZSI6Y2FzZSJzZWxlY3QiOnJldHVybiBvLnNvcnQoKS50b1N0cmluZygpPT09dC5zb3J0KCkudG9TdHJpbmcoKTtkZWZhdWx0OnJldHVybiBJdFtlXS52YWx1ZT09PW99fV9nZXRBY3RpdmVGaWx0ZXJzKGU9ITApe2NvbnN0IHQ9W107Zm9yKGNvbnN0IG8gaW4gSXQpaWYoSXRbb10udmFsdWUpe2lmKCJjb25kaXRpb24iPT09SXRbb10uY29udHJvbCYmKG10KEl0W29dLnZhbHVlLm9wZXJhdG9yKXx8bXQoSXRbb10udmFsdWUudmFsdWUpKSljb250aW51ZTtlP3QucHVzaChLdChJdFtvXSkpOnQucHVzaChvKX1yZXR1cm4gdH19dmFyIFRpPW8oMTg5ODYzKSxFaT1vKDY0MTU5Myk7Y2xhc3MgeGl7Y29uc3RydWN0b3IoKXt0aGlzLl9oYW5kbGVycz1bXX1yZWdpc3RlckhhbmRsZXJzKGUpe3RoaXMuX2hhbmRsZXJzLnB1c2goZSl9YmVmb3JlQXBwZW5kU3ltYm9sKGUsdCl7dGhpcy5faGFuZGxlcnMuZm9yRWFjaCgobz0+e28uYmVmb3JlQXBwZW5kU3ltYm9sJiZvLmJlZm9yZUFwcGVuZFN5bWJvbChlLHQpfSkpfWJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXMoZSl7cmV0dXJuIHRoaXMuX2hhbmRsZXJzLnJlZHVjZSgoKHQsbyk9Pm8uYmVmb3JlQXBwZW5kQ29udGV4dE1lbnVJdGVtcz90LmNvbmNhdChvLmJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXMoZSkpOnQpLFtdKX1hZnRlclN5bWJvbENvbmZpcm0oZSx0KXt0aGlzLl9oYW5kbGVycy5mb3JFYWNoKChvPT57by5hZnRlclN5bWJvbENvbmZpcm0mJm8uYWZ0ZXJTeW1ib2xDb25maXJtKGUsdCl9KSl9CmJlZm9yZUFwcGVuZFN5bWJvbHNIZWFkZXIoZSl7dGhpcy5faGFuZGxlcnMuZm9yRWFjaCgodD0+e3QuYmVmb3JlQXBwZW5kU3ltYm9sc0hlYWRlciYmdC5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKGUpfSkpfX12YXIgQWk9byg4MzQxODgpLE1pPW8oMTc5NzcxKSxJaT1vKDIxNDk4Nyk7Y2xhc3MgUml7Y29uc3RydWN0b3IoKXt0aGlzLl9yZXRyaWVzPTUsdGhpcy5fY2FjaGU9bnVsbCx0aGlzLl90cnlMb2FkPShlLHQpPT57dGhpcy5fcmV0cmllcz10aGlzLl9yZXRyaWVzLTE7dGhpcy5fc3RhcnRMb2FkaW5nKGUpLnRoZW4odCwwIT09dGhpcy5fcmV0cmllcz9vPT57KDAsSWkuaXNBYm9ydEVycm9yKShvKXx8c2V0VGltZW91dCgoKCk9PnRoaXMuX3RyeUxvYWQoZSx0KSksM2UzKX06dm9pZCAwKX19bG9hZChlKXtyZXR1cm4gdGhpcy5fY2FjaGV8fCh0aGlzLl9jYWNoZT1uZXcgUHJvbWlzZSh0aGlzLl90cnlMb2FkLmJpbmQodGhpcyxlPz9udWxsKSkpLHRoaXMuX2NhY2hlfX1jbGFzcyBGaSBleHRlbmRzIFJpe19zdGFydExvYWRpbmcoKXtyZXR1cm4gUHJvbWlzZS5hbGwoW28uZSg3MjE0MSksby5lKDg1NjUyKV0pLnRoZW4oby5iaW5kKG8sNjAwNzc5KSkudGhlbigoZT0+ZS5IYW1tZXJKUykpfX12YXIgTGk9byg3Nzk0NzQpLERpPW8oMTI5MzY1KSxPaT1vKDkxNDQ4NyksTmk9by5uKE9pKSxQaT1vKDMwOTkyMCksQmk9bygxNTQ2MjMpLCRpPW8oMTI4MzIpLFdpPW8oMTUzNzcpO2Z1bmN0aW9uIHFpKGUpe2NvbnN0IHQ9T2JqZWN0LmtleXMoZS5tb2Rlcyksbz1PYmplY3QudmFsdWVzKGUubW9kZXMpLFtpLG5dPUxpLnVzZVN0YXRlKHRbMF0pO3JldHVybiBMaS5jcmVhdGVFbGVtZW50KFBpLkN1c3RvbUJlaGF2aW91ckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOndpbmRvdy5UcmFkaW5nVmlldy5vbkNoYXJ0UGFnZT9CaS5wcmVzZXRQbGF0Zm9ybTpCaS5wcmVzZXREZWZhdWx0fSxMaS5jcmVhdGVFbGVtZW50KFZpLHtpc0FjdGl2ZTppPT09dFswXSx0aXRsZTpvWzBdfSksTGkuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpXaS5zd2l0Y2hlckNvbnRhaW5lcn0sTGkuY3JlYXRlRWxlbWVudCgkaS5Td2l0Y2gse29uQ2hhbmdlOmZ1bmN0aW9uKG8pe2NvbnN0IGk9by5jdXJyZW50VGFyZ2V0LmNoZWNrZWQ/dFsxXTp0WzBdO24oaSksZS5vbkNoYW5nZShpKX0sY2hlY2tlZDppPT09dFsxXX0pKSxMaS5jcmVhdGVFbGVtZW50KFZpLHtpc0FjdGl2ZTppPT09dFsxXSx0aXRsZTpvWzFdfSkpfWZ1bmN0aW9uIFZpKGUpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOk5pKCkoV2kubW9kZVRpdGxlLGUuaXNBY3RpdmUmJldpLm1vZGVUaXRsZUFjdGl2ZSl9LGUudGl0bGUpfXZhciBIaT1vKDY4MDI1KSxVaT1vKDU3MjI0OSksemk9byg3MTk0MjUpO2Z1bmN0aW9uIGppKGUpe2NvbnN0e2NoaWxkcmVuOnQsb25SZXNpemU6b309ZTtyZXR1cm4gdCgoMCx6aS51c2VSZXNpemVPYnNlcnZlcikob3x8KCgpPT57fSksW251bGw9PT1vXSkpfXZhciBHaT1vKDk2NDU5NCksWGk9bygxOTYyMSk7Y2xhc3MgS2kgZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpfXJlbmRlcigpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWUsb25DbGljazp0aGlzLnByb3BzLm9uQ2xpY2sscmVmOnRoaXMucHJvcHMucmVmZXJlbmNlfSx0aGlzLnByb3BzLmNoaWxkcmVuKX19Y2xhc3MgWWkgZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2hhbmRsZVJlc2l6ZT0oW2VdKT0+e3RoaXMucHJvcHMub25NZWFzdXJlPy4oZS50YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpfX1yZW5kZXIoKXtjb25zdHt0aGVtZTplPVhpfT10aGlzLnByb3BzLHQ9TmkoKShlLmxpc3Qse1t0aGlzLnByb3BzLmNsYXNzTmFtZV06Qm9vbGVhbih0aGlzLnByb3BzLmNsYXNzTmFtZSl9KSx7Zm9udFNpemU6bz0xM309dGhpcy5wcm9wcyxpPXtib3R0b206dGhpcy5wcm9wcy5ib3R0b20sZm9udFNpemU6byxsZWZ0OnRoaXMucHJvcHMubGVmdCxoZWlnaHQ6dGhpcy5wcm9wcy5oZWlnaHR8fCJhdXRvIixyaWdodDp0aGlzLnByb3BzLnJpZ2h0LHRvcDp0aGlzLnByb3BzLnRvcCx3aWR0aDp0aGlzLnByb3BzLndpZHRoLHpJbmRleDp0aGlzLnByb3BzLnpJbmRleH07cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoamkse29uUmVzaXplOkJvb2xlYW4odGhpcy5wcm9wcy5vbk1lYXN1cmUpP3RoaXMuX2hhbmRsZVJlc2l6ZTpudWxsfSwoZT0+TGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOnQsc3R5bGU6aSxyZWY6KDAsR2kubWVyZ2VSZWZzKShbdGhpcy5wcm9wcy5yZWZlcmVuY2UsZV0pfSx0aGlzLl93cmFwSXRlbXModGhpcy5wcm9wcy5pdGVtcyx0aGlzLnByb3BzLnNlbGVjdGVkKSkpKX1jb21wb25lbnREaWRNb3VudCgpe2lmKHZvaWQgMCE9PXRoaXMucHJvcHMuc2VsZWN0ZWQmJnRoaXMucHJvcHMuc2hvdWxkU2Nyb2xsSWZOb3RWaXNpYmxlKXtjb25zdCBlPXRoaXMuX2l0ZW1zW3RoaXMucHJvcHMuc2VsZWN0ZWRdO2UmJnRoaXMuX3Njcm9sbFRvSXRlbShlKX19Y29tcG9uZW50RGlkVXBkYXRlKCl7aWYodm9pZCAwIT09dGhpcy5wcm9wcy5zZWxlY3RlZCYmdGhpcy5wcm9wcy5zaG91bGRTY3JvbGxJZk5vdFZpc2libGUpe2NvbnN0IGU9dGhpcy5faXRlbXNbdGhpcy5wcm9wcy5zZWxlY3RlZF07ZSYmdGhpcy5fc2Nyb2xsVG9JdGVtKGUpfX1fd3JhcEl0ZW1zKGU9W10sdCl7dGhpcy5faXRlbXM9W107Y29uc3R7aXRlbVdyYXA6bz1LaSx0aGVtZTppPVhpfT10aGlzLnByb3BzLG49bztyZXR1cm4gZS5tYXAoKChlLG8pPT57Y29uc3Qgcj1OaSgpKGkuaXRlbSx7W3RoaXMucHJvcHMuaXRlbXNDbGFzc05hbWVdOkJvb2xlYW4odGhpcy5wcm9wcy5pdGVtc0NsYXNzTmFtZSksW3RoaXMucHJvcHMuc2VsZWN0ZWRDbGFzc05hbWVdOnQ9PT1vfSk7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQobix7cmVmZXJlbmNlOnQ9Pnt0JiZ0aGlzLl9pdGVtcy5wdXNoKHtlbGVtOnQsaW5kZXg6bywKdmFsdWU6ZX0pfSxrZXk6byxvbkNsaWNrOigpPT50aGlzLl9vblNlbGVjdChvKSxjbGFzc05hbWU6cn0sZS5lbGVtKX0pKX1fb25TZWxlY3QoZSl7dGhpcy5wcm9wcy5vblNlbGVjdCYmdGhpcy5wcm9wcy5vblNlbGVjdChlLHRoaXMuX2l0ZW1zW2VdLnZhbHVlKX1fc2Nyb2xsVG9JdGVtKGUpe2UuZWxlbS5zY3JvbGxJbnRvVmlldyh7YmxvY2s6ImNlbnRlciJ9KX19WWkuZGVmYXVsdFByb3BzPXtzaG91bGRTY3JvbGxJZk5vdFZpc2libGU6ITB9O3ZhciBKaT1vKDM4NDM3MCksWmk9byg2NTk4NzgpO2NsYXNzIFFpIGV4dGVuZHMgTGkuUHVyZUNvbXBvbmVudHtyZW5kZXIoKXtjb25zdCBlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDp0aGlzLnByb3BzLnRvcCx3aWR0aDp0aGlzLnByb3BzLndpZHRoLGhlaWdodDp0aGlzLnByb3BzLmhlaWdodCxib3R0b206dGhpcy5wcm9wcy5ib3R0b20scmlnaHQ6dGhpcy5wcm9wcy5yaWdodCxsZWZ0OnRoaXMucHJvcHMubGVmdCx6SW5kZXg6dGhpcy5wcm9wcy56SW5kZXh9O3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWUsc3R5bGU6ZSxyZWY6dGhpcy5wcm9wcy5yZWZlcmVuY2V9LHRoaXMucHJvcHMuY2hpbGRyZW4pfX1RaS5kaXNwbGF5TmFtZT0iRHJvcGRvd24gQ29udGFpbmVyIjtjb25zdCBlbj0oMCxaaS5tYWtlT3ZlcmxhcGFibGUpKCgwLEppLm1ha2VBdHRhY2hhYmxlKShRaSkpO3ZhciB0bixvbj1vKDEyMTY0NSk7IWZ1bmN0aW9uKGUpe2UuVG9wPSJ0b3AiLGUuQm90dG9tPSJib3R0b20ifSh0bnx8KHRuPXt9KSk7Y2xhc3Mgbm4gZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl9jb250YWluZXI9bnVsbCx0aGlzLl9zZXRDb250YWluZXJSZWY9ZT0+eyJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnByb3BzLnJlZmVyZW5jZSYmdGhpcy5wcm9wcy5yZWZlcmVuY2UoZSksIm9iamVjdCI9PXR5cGVvZiB0aGlzLnByb3BzLnJlZmVyZW5jZSYmKHRoaXMucHJvcHMucmVmZXJlbmNlLmN1cnJlbnQ9ZSksdGhpcy5fY29udGFpbmVyPWV9fWNvbXBvbmVudERpZE1vdW50KCl7dGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUmJnRoaXMuX2FkZFBhc3NpdmVMaXN0ZW5lck9uV2hlZWwodGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUpfWNvbXBvbmVudERpZFVwZGF0ZShlKXt0aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZSE9PWUub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlJiZ0aGlzLl91cGRhdGVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMucHJvcHMub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlJiZ0aGlzLl9yZW1vdmVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKHRoaXMucHJvcHMub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlKX1yZW5kZXIoKXtjb25zdHtzaGFkb3c6ZT0iYm90dG9tIixjaGlsZHJlbjp0LGNsYXNzTmFtZTpvfT10aGlzLnByb3BzLGk9TmkoKShvbi5jb250YWluZXIsb25bZV0sbyksbj17bWF4SGVpZ2h0OnRoaXMucHJvcHMubWF4SGVpZ2h0fTtyZXR1cm4gTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7cmVmOnRoaXMuX3NldENvbnRhaW5lclJlZixzdHlsZTpuLGNsYXNzTmFtZTppLG9uVG91Y2hTdGFydDp0aGlzLnByb3BzLm9uRHJvcGRvd25Ub3VjaFN0YXJ0LG9uVG91Y2hNb3ZlOnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoTW92ZSxvblRvdWNoRW5kOnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoRW5kLG9uV2hlZWw6dGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWx9LHQpfV91cGRhdGVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpe2UmJnRoaXMuX3JlbW92ZVBhc3NpdmVMaXN0ZW5lck9uV2hlZWwoZSksdGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUmJnRoaXMuX2FkZFBhc3NpdmVMaXN0ZW5lck9uV2hlZWwodGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUpfV9hZGRQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpeygwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyKS5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsZSx7cGFzc2l2ZTohMX0pfV9yZW1vdmVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpeygwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyKS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsZSl9fXZhciBybj1vKDg2ODExMCk7Y29uc3Qgc249KGFuPVlpLChsbj1jbGFzcyBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5faXRlbXM9dGhpcy5wcm9wcy5pdGVtc31jb21wb25lbnREaWRVcGRhdGUoZSl7aWYoZS5jb21tYW5kIT09dGhpcy5wcm9wcy5jb21tYW5kJiZ0aGlzLnByb3BzLmNvbW1hbmQpc3dpdGNoKHRoaXMucHJvcHMuY29tbWFuZC5uYW1lKXtjYXNlIm5leHQiOnRoaXMuX25leHQoKTticmVhaztjYXNlInByZXYiOnRoaXMuX3ByZXYoKX1lLml0ZW1zIT09dGhpcy5wcm9wcy5pdGVtcyYmKHRoaXMuX2l0ZW1zPXRoaXMucHJvcHMuaXRlbXMpfXJlbmRlcigpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KGFuLHsuLi50aGlzLnByb3BzfSx0aGlzLnByb3BzLmNoaWxkcmVuKX1fbmV4dCgpe2NvbnN0e3NlbGVjdGVkOmU9LTF9PXRoaXMucHJvcHMsdD1lKzE7dGhpcy5faXRlbXMubGVuZ3RoLTE+PXQ/dGhpcy5fbmF2aWdhdGVUbyh0KTp0aGlzLl9uYXZpZ2F0ZVRvKDApfV9wcmV2KCl7Y29uc3R7c2VsZWN0ZWQ6ZT0tMX09dGhpcy5wcm9wcyx0PWUtMSxvPXRoaXMuX2l0ZW1zLmxlbmd0aC0xOzA8PXQ/dGhpcy5fbmF2aWdhdGVUbyh0KTp0aGlzLl9uYXZpZ2F0ZVRvKG8pfV9uYXZpZ2F0ZVRvKGUpe3RoaXMucHJvcHMub25OYXZpZ2F0ZSYmdGhpcy5wcm9wcy5vbk5hdmlnYXRlKGUsdGhpcy5faXRlbXNbZV0pfX0pLmRpc3BsYXlOYW1lPSJOYXZpZ2F0ZWFibGUgQ29tcG9uZW50Iixsbik7dmFyIGFuLGxuO2NvbnN0IGNuPSgwLHJuLm1ha2VBbmNob3JhYmxlKShlbiksZG49ewp0b3A6InRvcCIsYm90dG9tOiJib3R0b20iLHRvcFJpZ2h0OiJ0b3AifTtjbGFzcyBobiBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7cmVuZGVyKCl7Y29uc3R7YW5jaG9yOmU9ImJvdHRvbSIsZm9udFNpemU6dD0xNCxyb290Om89InBhcmVudCJ9PXRoaXMucHJvcHMsaT1OaSgpKFVpLmxpc3QsVWlbZV0pLHtkcm9wZG93bkNsYXNzTmFtZTpuLGhlaWdodDpyLC4uLnN9PXRoaXMucHJvcHM7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoY24sey4uLnMsY2xhc3NOYW1lOm4scm9vdDpvfSxMaS5jcmVhdGVFbGVtZW50KG5uLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5kcm9wZG93bkNvbnRhaW5lckNsYXNzTmFtZSxzaGFkb3c6ZG5bZV0sbWF4SGVpZ2h0OnRoaXMucHJvcHMubWF4SGVpZ2h0LG9uRHJvcGRvd25Ub3VjaFN0YXJ0OnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoU3RhcnQ/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hTdGFydDp2b2lkIDAsb25Ecm9wZG93blRvdWNoTW92ZTp0aGlzLnByb3BzLm9uRHJvcGRvd25Ub3VjaE1vdmU/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hNb3ZlOnZvaWQgMCxvbkRyb3Bkb3duVG91Y2hFbmQ6dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hFbmQ/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hFbmQ6dm9pZCAwLG9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZTp0aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZT90aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZTp2b2lkIDB9LExpLmNyZWF0ZUVsZW1lbnQoc24sey4uLnMsd2lkdGg6dGhpcy5wcm9wcy53aWR0aCxoZWlnaHQ6cixjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWV8fGksaXRlbXNDbGFzc05hbWU6dGhpcy5wcm9wcy5pdGVtc0NsYXNzTmFtZXx8VWkuaXRlbSxzZWxlY3RlZENsYXNzTmFtZTp0aGlzLnByb3BzLnNlbGVjdGVkQ2xhc3NOYW1lfHxVaS5zZWxlY3RlZCxmb250U2l6ZTp0LHJlZmVyZW5jZTp0aGlzLnByb3BzLnJlZmVyZW5jZX0pKSl9fXZhciB1bj1vKDI3MzMxMCksX249byg3MTg1NTMpO2Z1bmN0aW9uIHBuKGUpe2NvbnN0e2NoaWxkcmVuOnQsY2xhc3NOYW1lOm8sb25SZXNpemU6aSxvbkNsaWNrOm59PWUscj0oMCx6aS51c2VSZXNpemVPYnNlcnZlcikoKChbZV0pPT57aShlLnRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSl9KSk7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoImRpdiIse3JlZjpyLGNsYXNzTmFtZTpvLG9uQ2xpY2s6bn0sdCl9dmFyIG1uPW8oOTg3MDc2KTtjbGFzcyBnbiBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5fZ2V0RHJvcGRvd25IZWlnaHQ9KCk9PntpZighdGhpcy5fZHJvcGRvd25QYXJlbnQpcmV0dXJuO2NvbnN0IGU9d2luZG93LmlubmVySGVpZ2h0LXRoaXMuX2Ryb3Bkb3duUGFyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmJvdHRvbS0yMDtyZXR1cm4gZSYmZTw1MD92b2lkIDA6ZX0sdGhpcy5fZ2V0Rmlyc3RIaWRkZW5JdGVtSW5kZXg9KCk9PntsZXQgZTtpZih0aGlzLnN0YXRlLmF2YWlsYWJsZVdpZHRoJiYhdGhpcy5faXRlbVNpemVzLmluY2x1ZGVzKG51bGwpKXtsZXQgdD0wO2ZvcihlPTA7ZTx0aGlzLnByb3BzLml0ZW1zLmxlbmd0aDtlKyspe2NvbnN0IG89dCsodGhpcy5faXRlbVNpemVzW2VdfHwwKTtpZighKChlPT09dGhpcy5wcm9wcy5pdGVtcy5sZW5ndGgtMT9vOm8rNDEpPHRoaXMuc3RhdGUuYXZhaWxhYmxlV2lkdGgpKWJyZWFrO3Q9b319ZWxzZSBlPXRoaXMuc3RhdGUuYXZhaWxhYmxlV2lkdGg/dGhpcy5wcm9wcy5pdGVtcy5sZW5ndGg6MDtyZXR1cm4gZX0sdGhpcy5fb25FbGVtZW50UmVzaXplPShbZV0pPT57dGhpcy5zZXRTdGF0ZSh7YXZhaWxhYmxlV2lkdGg6ZS5jb250ZW50UmVjdC53aWR0aCxpc09wZW5lZDohMX0pfSx0aGlzLl9vblNlbGVjdD1lPT57dGhpcy5wcm9wcy5vblNlbGVjdCYmdGhpcy5wcm9wcy5vblNlbGVjdChlKSx0aGlzLnNldFN0YXRlKHthY3RpdmVJdGVtOmUsaXNPcGVuZWQ6ITF9KX0sdGhpcy5fb25Ecm9wZG93blNlbGVjdD0oZSx0KT0+e3RoaXMucHJvcHMub25TZWxlY3QmJnRoaXMucHJvcHMub25TZWxlY3QodC5hY3R1YWxJbmRleCksdGhpcy5zZXRTdGF0ZSh7YWN0aXZlSXRlbTp0LmFjdHVhbEluZGV4LGlzT3BlbmVkOiExfSl9LHRoaXMuX29uT3V0c2lkZUNsaWNrPWU9Pnt0aGlzLnN0YXRlLmlzT3BlbmVkJiYodGhpcy5zdGF0ZS5pc09wZW5lZCYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKSx0aGlzLnNldFN0YXRlKHtpc09wZW5lZDohMX0pKX0sdGhpcy5fb25Ecm9wZG93bkl0ZW1DbGljaz0oKT0+e3RoaXMuc2V0U3RhdGUoe2lzT3BlbmVkOiF0aGlzLnN0YXRlLmlzT3BlbmVkfSl9LHRoaXMuX29uSXRlbVJlc2l6ZT0oZSx0KT0+e3RoaXMuX2l0ZW1TaXplc1tlXT10LndpZHRoLHRoaXMuX2l0ZW1TaXplcy5pbmNsdWRlcyhudWxsKXx8dGhpcy5mb3JjZVVwZGF0ZSgpfSx0aGlzLl9pdGVtU2l6ZXM9dGhpcy5wcm9wcy5pdGVtcy5tYXAoKGU9Pm51bGwpKSx0aGlzLnN0YXRlPXthdmFpbGFibGVXaWR0aDowLGFjdGl2ZUl0ZW06dGhpcy5wcm9wcy5hY3RpdmVJdGVtfHwwLGlzT3BlbmVkOiExfX1yZW5kZXIoKXtjb25zdCBlPXRoaXMuX2dldEZpcnN0SGlkZGVuSXRlbUluZGV4KCksdD10aGlzLnByb3BzLml0ZW1zLnNsaWNlKDAsZSksbz10aGlzLnByb3BzLml0ZW1zLnNsaWNlKGUpLGk9dC5tYXAoKChlLHQpPT57Y29uc3Qgbz10aGlzLnN0YXRlLmFjdGl2ZUl0ZW09PT10LGk9TmkoKShIaS5pdGVtQ29udGVudCx7W0hpLmFjdGl2ZV06b30pO3JldHVybiBMaS5jcmVhdGVFbGVtZW50KHBuLHtrZXk6ZS50aXRsZSxjbGFzc05hbWU6TmkoKShIaS5pdGVtLHtbSGkuYWN0aXZlXTpvfSksb25DbGljazp0aGlzLl9vblNlbGVjdC5iaW5kKHRoaXMsdCksb25SZXNpemU6dGhpcy5fb25JdGVtUmVzaXplLmJpbmQodGhpcyx0KX0sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOml9LGUudGl0bGUpKX0pKSxuPW8ubWFwKCgoZSxvKT0+KHtlbGVtOmUudGl0bGUsCmFjdHVhbEluZGV4Om8rdC5sZW5ndGh9KSkpLHI9dGhpcy5zdGF0ZS5hY3RpdmVJdGVtLWUscz1yPj0wLGE9TGkuY3JlYXRlRWxlbWVudChfbi5PdXRzaWRlRXZlbnQse2hhbmRsZXI6dGhpcy5fb25PdXRzaWRlQ2xpY2ssY2xpY2s6ITB9LChlPT5MaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtyZWY6ZT0+ZSYmKHRoaXMuX2Ryb3Bkb3duUGFyZW50PURpLmZpbmRET01Ob2RlKGUpKX0sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuaXRlbSx7W0hpLmFjdGl2ZV06c30pLHJlZjplLG9uQ2xpY2s6dGhpcy5fb25Ecm9wZG93bkl0ZW1DbGlja30sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuaXRlbUNvbnRlbnQsSGkuZHJvcGRvd25JdGVtLHtbSGkuYWN0aXZlXTpzfSl9LExpLmNyZWF0ZUVsZW1lbnQodW4uSWNvbix7Y2xhc3NOYW1lOk5pKCkoSGkuZHJvcGRvd25JY29uLHtbSGkuYWN0aXZlXTp0aGlzLnN0YXRlLmlzT3BlbmVkfSksaWNvbjptbn0pLExpLmNyZWF0ZUVsZW1lbnQoaG4se2lzT3BlbmVkOnRoaXMuc3RhdGUuaXNPcGVuZWQsaXRlbXM6bixzZWxlY3RlZDpzP3I6dm9pZCAwLG9uU2VsZWN0OnRoaXMuX29uRHJvcGRvd25TZWxlY3QsdG9wOjI3LHJpZ2h0OjAsaXRlbXNDbGFzc05hbWU6TmkoKShVaS5ibHVpc2hJdGVtLEhpLmRyb3Bkb3duTGlzdEl0ZW0pLHNlbGVjdGVkQ2xhc3NOYW1lOnRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtQ2xhc3NOYW1lLG1heEhlaWdodDp0aGlzLl9nZXREcm9wZG93bkhlaWdodCgpfSkpKSkpKTtyZXR1cm4gTGkuY3JlYXRlRWxlbWVudChqaSx7b25SZXNpemU6dGhpcy5fb25FbGVtZW50UmVzaXplfSwoZT0+TGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuZWxlbWVudFdyYXAsdGhpcy5wcm9wcy5jbGFzc05hbWUpLHJlZjplfSxMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6SGkuaXRlbXNXcmFwfSxpLG8ubGVuZ3RoP2E6dm9pZCAwKSkpKX19ZnVuY3Rpb24gdm4oZSx0KXtEaS5yZW5kZXIoTGkuY3JlYXRlRWxlbWVudChnbix7Li4udH0pLGUpfXZhciBmbj1vKDY1NDYzNikseW49byg2NjcxMzIpO2NsYXNzIGJue2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0iY2hhbmdlX2ZvcmV4X2dyb3VwIix0aGlzLnNvdXJjZT0iZm9yZXhfZ3JvdXBfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9ZSx0aGlzLnZhbHVlPXR9fXZhciBTbj1vKDM4OTg0NCk7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIFByb21pc2UuYWxsKFtvLmUoOTIyOTMpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjM4NSksby5lKDk0OTQ4KSxvLmUoMTAzODUpLG8uZSg1MjA2NSksby5lKDY2MDUpLG8uZSgzMjc0OCksby5lKDMyMTc2KSxvLmUoODg2NDEpLG8uZSg1NjIxMyksby5lKDUwMDM1KSxvLmUoNjQ1KSxvLmUoNTEzMTUpLG8uZSgyODQxMyksby5lKDM5NjA5KSxvLmUoNzI2NzQpLG8uZSg2NzMwMyldKS50aGVuKG8uYmluZChvLDYzODgyMikpLnRoZW4oKHQ9PnQuc2hvd1NjcmVlbmVyTWFya2V0RGlhbG9nKGUpKSl9Y29uc3QgQ249bmV3IFNldChbImRwc19jb21tb25fc3RvY2tfcHJpbV9pc3N1ZV95b3lfZ3Jvd3RoX2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfcW9xX2dyb3d0aF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3lveV9ncm93dGhfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF95b3lfZ3Jvd3RoX2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF90dG0iLCJlYml0ZGFfcW9xX2dyb3d0aF9mcSIsImViaXRkYV95b3lfZ3Jvd3RoX2ZxIiwiZWJpdGRhX3lveV9ncm93dGhfZnkiLCJlYml0ZGFfeW95X2dyb3d0aF90dG0iLCJmcmVlX2Nhc2hfZmxvd19tYXJnaW5fZnkiLCJmcmVlX2Nhc2hfZmxvd19tYXJnaW5fdHRtIiwiZnJlZV9jYXNoX2Zsb3dfcW9xX2dyb3d0aF9mcSIsImZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnEiLCJmcmVlX2Nhc2hfZmxvd195b3lfZ3Jvd3RoX2Z5IiwiZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF90dG0iLCJncm9zc19wcm9maXRfbWFyZ2luX2Z5IiwiZ3Jvc3NfcHJvZml0X3FvcV9ncm93dGhfZnEiLCJncm9zc19wcm9maXRfeW95X2dyb3d0aF9mcSIsImdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2Z5IiwiZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfdHRtIiwibmV0X2luY29tZV9iZWZfZGlzY19vcGVyX21hcmdpbl9meSIsIm5ldF9pbmNvbWVfcW9xX2dyb3d0aF9mcSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF9mcSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF9meSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF90dG0iLCJvcGVyX2luY29tZV9tYXJnaW5fZnkiLCJ0b3RhbF9hc3NldHNfcW9xX2dyb3d0aF9mcSIsInRvdGFsX2Fzc2V0c195b3lfZ3Jvd3RoX2ZxIiwidG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnkiLCJ0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnEiLCJ0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnEiLCJ0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnkiLCJ0b3RhbF9yZXZlbnVlX3FvcV9ncm93dGhfZnEiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnEiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnkiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfdHRtIl0pO2Z1bmN0aW9uIGtuKGUsdCl7cmV0dXJuISF0LnRpdGxlJiYodC50aXRsZS50b0xvd2VyQ2FzZSgpIT09dC5zaG9ydFRpdGxlPy50b0xvd2VyQ2FzZSgpfHxmdW5jdGlvbihlKXtyZXR1cm4gQ24uaGFzKGUpfShlKSl9Y29uc3QgVG49KEVuPUYoInN0b2NrIiksT2JqZWN0LmVudHJpZXMoRW4pLm1hcCgoKFtlLHRdKT0+e2NvbnN0IG89dC5ncm91cDtyZXR1cm57ZmxhZzp0LmZsYWcsZ2V0IG5hbWUoKXtyZXR1cm4gdC50aXRsZX0sZGVzYzp0LnN0b2Nrcy5qb2luKCIsICIpLGNvdW50cnk6dC5jb3VudHJ5LGdyb3VwOm8sdmFsdWU6ZX19KSkpO3ZhciBFbjtjb25zdCB4bj1Ubi5maW5kKChlPT4iYW1lcmljYSI9PT1lLnZhbHVlKSkKO3ZhciBBbj1vKDY4NDYxMCk7ZnVuY3Rpb24gTW4oZSx0KXtjb25zdCBvPXNldEludGVydmFsKCgoKT0+e2NvbnN0IGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTtpZihpKXtjbGVhckludGVydmFsKG8pO25ldyBSZXNpemVPYnNlcnZlcih0KS5vYnNlcnZlKGkpLHQoKX19KSwyMCl9dmFyIEluLFJuPW8oODA5NDM2KSxGbj1vKDQ4MjUwNCk7IWZ1bmN0aW9uKGUpe2UuQUJTT0xVVEU9ImFic29sdXRlIixlLlNUSUNLWT0ic3RpY2t5IixlLkJPVFRPTT0iYm90dG9tIn0oSW58fChJbj17fSkpO2NvbnN0IExuPXBhcnNlSW50KFJuWyJzaXplLXN0aWNreS1zeW1ib2wtaGVhZGVyLWhlaWdodCJdKTtmdW5jdGlvbiBEbihlKXtjb25zdHskdG9vbGJhcjp0fT1lLG89dC5vdXRlckhlaWdodCgpLGk9ZS50YWJsZS4kc3RpY2t5SGVhZGVyLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLXN0aWNreS1zeW1ib2wtaGVhZGVyLWNvbnRhaW5lciIpPzY0K0xuOjY0O2Z1bmN0aW9uIHIodCl7Y29uc3Qgcj10fHxGbihkb2N1bWVudCkuc2Nyb2xsVG9wKCkse2lzU3RpY2t5OnMsdXBwZXJTY3JvbGxMaW1pdDphLGJvdHRvbVNjcm9sbExpbWl0Omx9PWZ1bmN0aW9uKHQpe2NvbnN0IHI9ZS50YWJsZS5fJGVtcHR5TWVzc2FnZT9lLnRhYmxlLl8kZW1wdHlNZXNzYWdlLm91dGVySGVpZ2h0KCk6MCxzPWUuJGNvbnRlbnQub2Zmc2V0KCkudG9wK2UuJGNvbnRlbnQub3V0ZXJIZWlnaHQoKSxhPXJ8fDQ4LGw9ZS4kY29udGVudC5vZmZzZXQoKS50b3Atbi1vLGM9cy1hLW4tby1pLm91dGVySGVpZ2h0KCk7cmV0dXJue2lzU3RpY2t5OnQ+PWwmJnQ8PWMsYm90dG9tU2Nyb2xsTGltaXQ6Yyx1cHBlclNjcm9sbExpbWl0Omx9fShyKTtpZihzKXJldHVybiJzdGlja3kiO3JldHVybiBNYXRoLmFicyhsLWEpPDIwfHxyPGE/ImFic29sdXRlIjoiYm90dG9tIn1mdW5jdGlvbiBzKCl7Y29uc3Qgbz1yKCksbj0oMCxLby5pc1J0bCkoKT9lLiRjb250ZW50Lm9mZnNldCgpLmxlZnQtRm4od2luZG93KS5zY3JvbGxMZWZ0KCk6ZS4kY29udGVudC5vZmZzZXQoKS5sZWZ0LHM9ZS4kY29udGVudC53aWR0aCgpLGE9Rm4oZS50YWJsZS5fdGFibGUpLndpZHRoKCksbD1mdW5jdGlvbih0KXtjb25zdCBvPWZvLmJyZWFrcG9pbnRzLnRhYmxldCxpPXIoKTtpZihGbih3aW5kb3cpLndpZHRoKCk+bylyZXR1cm4iYWJzb2x1dGUiPT09aT97bGVmdDoiIixyaWdodDoiIn06e2xlZnQ6dCxyaWdodDoiIn07Y29uc3Qgbj1lLiRjb250ZW50LnNjcm9sbExlZnQoKTtpZigoMCxLby5pc1J0bCkoKSl7Y29uc3QgdD1lLl9nZXRSZXNpemVyQnJpZGdlV2lkdGgoKTtyZXR1cm4iYWJzb2x1dGUiPT09aT97bGVmdDoiIixyaWdodDpufTp7bGVmdDoiIixyaWdodDp0K259fXJldHVybntsZWZ0OnQtbixyaWdodDoiIn19KG4pLGM9e2xlZnQ6bix3aWR0aDpzfSxkPXsuLi5sLHdpZHRoOmF9O2lmKHQuY3NzKHtsZWZ0OiIiLHJpZ2h0OiIifSksaS5jc3Moe2xlZnQ6IiIscmlnaHQ6IiJ9KSwiYWJzb2x1dGUiPT09bylyZXR1cm4gdC5jc3Moe3dpZHRoOnN9KSx2b2lkIGkuY3NzKGQpO3QuY3NzKGMpLGkuY3NzKGQpfWZ1bmN0aW9uIGEoZSl7dC5jc3Moe3RvcDplfSk7Y29uc3Qgbj1lK287aS5jc3Moe3RvcDpufSl9Y29uc3QgbD1mdW5jdGlvbigpe2xldCBlPUZuKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxsPXIoZSk7cmV0dXJuKCk9Pntjb25zdCBjPUZuKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxoPXIoYyk7aWYoImJvdHRvbSI9PT1oKXtkKGgpO3JldHVybiBhKGUrbi1jKSx2b2lkKGw9ImJvdHRvbSIpfWlmKGwhPT1oKXtpZihkKGgpLCJhYnNvbHV0ZSI9PT1oKXJldHVybiB0LmNzcyh7dG9wOjB9KSxpLmNzcyh7dG9wOm99KSxzKCksdm9pZChsPSJhYnNvbHV0ZSIpOyJzdGlja3kiPT09aCYmKHMoKSxhKG4pLGU9YyxsPSJzdGlja3kiKX19fSgpO2Z1bmN0aW9uIGMoKXtzKCksbCgpfWZ1bmN0aW9uIGQoZSl7Y29uc3Qgbz0iYWJzb2x1dGUiPT09ZTt0LnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRzX2Fic29sdXRlIixvKSxpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXItLW1hcmtldHNfYWJzb2x1dGUiLG8pLHQudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfc3RpY2t5IiwhbyksaS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyLS1zdGFuZGFsb25lX3N0aWNreSIsITApLGkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tbWFya2V0c19zdGlja3kiLCFvKX1jb25zdCBoPWZ1bmN0aW9uKCl7bGV0IGU7cmV0dXJuKCk9PntjbGVhclRpbWVvdXQoZSksZT1zZXRUaW1lb3V0KGMsMCl9fSgpO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsKGZ1bmN0aW9uKCl7bCgpLCgwLEtvLmlzUnRsKSgpJiZzKCl9KSx7cGFzc2l2ZTohMH0pLGUuJGNvbnRlbnRbMF0uYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixzKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixoKSxNbigiLndpZGdldGJhci13cmFwIixzKSxNbigiLnR2LXNjcmVlbmVyLXRhYmxlIixzKSxkKHIoKSksYygpfWZ1bmN0aW9uIE9uKGUpe2NvbnN0eyRiZWZvcmU6dD1udWxsLCRhcHBlbmRUbzpvPW51bGwsJGRyb3Bkb3duQ29udGFpbmVyOmk9bnVsbCxiZWZvcmVNYWtpbmdTZWxlY3RQb3B1cDpuPSgpPT57fSxtYWtlU2VsZWN0UG9wdXA6cixhZnRlck1ha2luZ1NlbGVjdFBvcHVwOnM9KCk9Pnt9LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6YT0oKT0+e319PWUsbD17JGRyb3Bkb3duQ29udGFpbmVyOml9O24oKTtjb25zdHskd3JhcDpjLCRidXR0b246ZCwkZHJvcGRvd25Db250ZW50Omh9PXIobCk7cmV0dXJuIHMoYyxkLGgpLCh0fHxvKSYmKHQ/Yy5pbnNlcnRCZWZvcmUodCk6Yy5hcHBlbmRUbyhvKSxhKGMsZCxoKSksZH1jb25zdCBObj1uZXcgcG8uV2F0Y2hlZFZhbHVlKCExKTt2YXIgUG49byg5NzEwNTEpO2xldCBCbj1udWxsO2Z1bmN0aW9uICRuKGUsdCl7aWYoQm4mJk5uLnVuc3Vic2NyaWJlKEJuKSxCbj0oKT0+ewpjb25zdCBvPXdpbmRvdz8ud2lkZ2V0YmFyPy5sYXlvdXQ/LmdldFdpZGdldEJ5VHlwZSgiZGV0YWlsIik/LndpZGdldE9iamVjdDtvLm5hdmlnYXRlKGUsdCl9LE5uLnZhbHVlKCkpcmV0dXJuIEJuKCksdm9pZChCbj1udWxsKTtObi5zdWJzY3JpYmUoQm4se29uY2U6ITB9KX1mdW5jdGlvbiBXbihlPW51bGwsdCl7Y29uc3QgaT0oMCxQbi5wYXRoVG9Hcm91cCkoZT8/IiIpKyI/bmV3PSIrcGVyZm9ybWFuY2Uubm93KCk7dCYmYXN5bmMgZnVuY3Rpb24oZSl7UHJvbWlzZS5hbGwoW28uZSgyMTg3MCksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoNDY5MDcpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgyMzYyNCksby5lKDMyODE2KSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDE3MDg3KSxvLmUoNzI2NjYpLG8uZSgxMDM4NSksby5lKDUyMDY1KSxvLmUoNjYwNSksby5lKDc0MzgxKSxvLmUoMTQ2MjUpLG8uZSg2NTcpLG8uZSg2MTgyMSksby5lKDY2MjcwKSxvLmUoNTUwMTEpLG8uZSg3MTkwMSksby5lKDgwNzMxKSxvLmUoNjg5NjQpLG8uZSgyOTEzMyksby5lKDE5ODMzKSxvLmUoMzIzODcpLG8uZSgzMDY5OSksby5lKDQ0NzgwKSxvLmUoODIyMzcpLG8uZSg0ODg1NCksby5lKDk0MTgyKSxvLmUoMTE0MzUpXSkudGhlbihvLmJpbmQobyw5OTUyMTMpKS50aGVuKCh0PT57dC5yZW5kZXJOb3Rlc0RpYWxvZyhlKX0pKX0oaSksJG4oaSl9dmFyIHFuLFZuPW8oMzQ0MTAzKTshZnVuY3Rpb24oZSl7ZVtlLkhlYWRlcj0wXT0iSGVhZGVyIixlW2UuVGFibGU9MV09IlRhYmxlIn0ocW58fChxbj17fSkpO2NvbnN0IEhuPXtbcW4uSGVhZGVyXTp7ZGVzY3JpcHRpb246Ik9wZW4gaGVhZGVyIGNvbnRleHQgbWVudSIscHJlcGVuZDohMX0sW3FuLlRhYmxlXTp7ZGVzY3JpcHRpb246Ik9wZW4gY29udGV4dCBtZW51IixwcmVwZW5kOiEwfX07ZnVuY3Rpb24gVW4oZSx0LGkpe3JldHVybiBhc3luYyBmdW5jdGlvbigpe2NvbnN0W3tBY3Rpb246ZX0se0FkZFRvV2F0Y2hsaXN0QWN0aW9uOnR9XT1hd2FpdCBQcm9taXNlLmFsbChbby5lKDQzOTgwKS50aGVuKG8uYmluZChvLDUwOTA0KSksby5lKDE3ODcpLnRoZW4oby5iaW5kKG8sMjczMjg1KSldKTtyZXR1cm57ZGVmYXVsdDplLGFkZFRvV2F0Y2hsaXN0OnR9fSgpLnRoZW4oKG89PnQoZSxvKSkpLnRoZW4oKHQ9Pntjb25zdCBvPU9iamVjdC52YWx1ZXModCk7cmV0dXJuIEhuW2ldLnByZXBlbmQ/ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5fbGlmZWN5Y2xlLmJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXModC5sZW5ndGg+MD8iYm90dG9tIjp2b2lkIDApLmNvbmNhdCh0KX0oZS52aWV3LG8pOm99KSl9ZnVuY3Rpb24gem4oZSx0LGkpe2NvbnN0e3ZpZXc6bixlOnJ9PWU7cmV0dXJuIFVuKGUsdCxpKS50aGVuKChlPT57cmV0dXJuIHQ9ZSxpPXIsby5lKDQzOTgwKS50aGVuKG8uYmluZChvLDI1MDQzOSkpLnRoZW4oKCh7Q29udGV4dE1lbnVNYW5hZ2VyOmV9KT0+ZS5zaG93TWVudSh0LGkpKSk7dmFyIHQsaX0pKS50aGVuKCgoKT0+e2NvbnN0IGU9SG5baV0uZGVzY3JpcHRpb247bi5fbW9kZWwudHJhY2tFdmVudChlKX0pKX12YXIgam4sR249byg4MTEzMTIpLFhuPW8oNjIxOTI2KSxLbj1vKDU3NjEwMyksWW49byg3NjU2OTUpLEpuPW8oNzU2Mjg4KSxabj1vKDQ4MjUwNCk7ZnVuY3Rpb24gUW4oZSx0KXtjb25zdHt2aWV3Om99PWUsaT1vLl9icmlkZ2Usbj10LmRlZmF1bHQscj1vLl9zZWxlY3RhYmxlTGlzdD9vLl9zZWxlY3RhYmxlTGlzdC5nZXRTZWxlY3RlZEtleXMoKS5sZW5ndGg6MSxzPXsuLi5lLHNlbGVjdGVkU3ltYm9sc0NvdW50OnJ9O2lmKCgwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKGkpKXJldHVybnsuLi50cihzLG4pfTtpZigoMCxBbi5pc1NjcmVlbmVyUGFnZSkoaSl8fCgwLEFuLmlzTWFya2V0UGFnZSkoaSkpe3JldHVybnsuLi4wPT09cj90cihzLG4pOnt9LC4uLmVyKHMsdC5hZGRUb1dhdGNobGlzdCl9fXJldHVybnsuLi5lcihzLHQuYWRkVG9XYXRjaGxpc3QpLC4uLm9yKHMsbiksLi4uaXIocyxuKX19ZnVuY3Rpb24gZXIoZSx0KXtjb25zdHt2aWV3Omksc3ltYm9sOm4sc2hvcnROYW1lOnIsc2VsZWN0ZWRTeW1ib2xzQ291bnQ6c309ZTtsZXQgYSxsOzA9PT1zPyhhPV8udChudWxsLHtyZXBsYWNlOntzeW1ib2xOYW1lOnJ9fSxvKDIyNDA1NikpLGw9W25dKTooYT1fLnQobnVsbCx2b2lkIDAsbyg4MTU3MTIpKSxsPWkuX3NlbGVjdGFibGVMaXN0P2kuX3NlbGVjdGFibGVMaXN0LmdldFNlbGVjdGVkS2V5cygpLnNsaWNlKDApOltdKTtyZXR1cm57YWRkVG9XYXRjaExpc3RBY3Rpb246bmV3IHQoe2xhYmVsOmEsZGlzYWJsZWQ6ITAsb25FeGVjdXRlOigpPT57KDAsWG4ucnVuT3JTaWduaW5XaXRoRmVhdHVyZSkoKCgpPT57Y29uc3QgZT1pLl9nZXRXYXRjaGxpc3QoKTtlJiYoZS5hZGRTeW1ib2xzKGwpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoam4uQWRkVG9XYXRjaGxpc3QsInJvdyIsITApKSl9KSx7ZmVhdHVyZToid2F0Y2hMaXN0Iixzb3VyY2U6ImFkZCBzeW1ib2wgdG8gd2F0Y2hsaXN0In0pfSxpY29uOkpufSl9fWZ1bmN0aW9uIHRyKGUsdCl7Y29uc3R7dmlldzppfT1lO3JldHVyblsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyhpLl9tb2RlbC5zY3JlZW5lcl90eXBlKT9mdW5jdGlvbihlLHQpe2NvbnN0e2U6aX09ZSxuPVpuKGkudGFyZ2V0KS5jbG9zZXN0KCIudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciKS5maW5kKCIudHYtc2NyZWVuZXJfX3N5bWJvbCIpO3JldHVybntvcGVuU3ltYm9sUGFnZUFjdGlvbjpuZXcgdCh7YWN0aW9uSWQ6IldhdGNobGlzdC5PcGVuU3ltYm9sT3ZlcnZpZXciLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6bi50ZXh0KCl9fSxvKDcwNjQwMCkpLG9uRXhlY3V0ZTooKT0+e3dpbmRvdy5vcGVuKG4uYXR0cigiaHJlZiIpLCJfYmxhbmsiKSwoMCwKWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudChqbi5PcGVuU3ltYm9sUGFnZSwicm93IiwhMCkpfX19KX19KGUsdCk6ZnVuY3Rpb24oZSx0KXtjb25zdHt2aWV3Omksc2hvcnROYW1lOm4sc3ltYm9sOnJ9PWU7cmV0dXJue29wZW5DaGFydEFjdGlvbjpuZXcgdCh7YWN0aW9uSWQ6IldhdGNobGlzdC5PcGVuU3ltYm9sQ2hhcnQiLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6bn19LG8oOTM2MTM1KSksb25FeGVjdXRlOigpPT57Y29uc3R7YXBwbHlTeW1ib2w6ZX09aS5fYnJpZGdlO2UmJihlKHIsITApLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoam4uT3BlbkNoYXJ0LCJyb3ciLCEwKSkpfX19KX19KGUsdCl9ZnVuY3Rpb24gb3IoZSx0KXtjb25zdHt2aWV3Omksc3ltYm9sOm4sc2hvcnROYW1lOnIsc2VsZWN0ZWRTeW1ib2xzQ291bnQ6c309ZTtsZXQgYSxsOzA9PT1zPyhhPV8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6cn19LG8oNTYwNDcwKSksbD1bbl0pOihhPV8udChudWxsLHZvaWQgMCxvKDcyMDU0NikpLGw9aS5fc2VsZWN0YWJsZUxpc3QuZ2V0U2VsZWN0ZWRLZXlzKCkpO3JldHVybntjb21wYXJlQWN0aW9uOm5ldyB0KHthY3Rpb25JZDoiV2F0Y2hsaXN0LkFkZFN5bWJvbFRvQ29tcGFyZSIsb3B0aW9uczp7bGFiZWw6YSxvbkV4ZWN1dGU6YXN5bmMoKT0+e2Zvcihjb25zdCBlIG9mIGwpYXdhaXQoaS5fYnJpZGdlLmNoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8uYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKS5hZGRDb21wYXJlQXNPdmVybGF5KGUsZmFsc2UpKX0saWNvbjpZbn19KX19ZnVuY3Rpb24gaXIoZSx0KXtjb25zdHtzeW1ib2w6aSxzaG9ydE5hbWU6bixzZWxlY3RlZFN5bWJvbHNDb3VudDpyfT1lO2lmKHI+MClyZXR1cm57fTtyZXR1cm57YWRkVG9UZXh0Tm90ZXNBY3Rpb246bmV3IHQoe2FjdGlvbklkOiJOb3RlLkNyZWF0ZSIsb3B0aW9uczp7aWNvbjpLbixsYWJlbDpfLnQobnVsbCx7cmVwbGFjZTp7c3ltYm9sOm59fSxvKDIzOTA3NykpLG9uRXhlY3V0ZTooKT0+eygwLGZuLnJ1bk9yU2lnbkluKSgoKCk9PnsoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgR24uRGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50KGpuLkFkZFRleHROb3RlLCJyb3ciLCEwKSksd2luZG93LndpZGdldGJhcj8uc2V0UGFnZSgiYmFzZSIpLFduKGkpfSkse3NvdXJjZToiQWRkIHRleHQgbm90ZSBpbiBzY3JlZW5lciJ9KX19fSl9fSFmdW5jdGlvbihlKXtlLkFkZFRvV2F0Y2hsaXN0PSJhZGRfdG9fd2F0Y2hsaXN0IixlLk9wZW5DaGFydD0ib3Blbl9jaGFydCIsZS5BZGRUb0NvbXBhcmU9ImFkZF90b19jb21wYXJlIixlLkFkZFRleHROb3RlPSJhZGRfdGV4dF9ub3RlIixlLk9wZW5TeW1ib2xQYWdlPSJvcGVuX3N5bWJvbF9wYWdlIn0oam58fChqbj17fSkpO3ZhciBucj1vKDk0ODM4MCkscnI9byg4MTA0MSksc3I9bygyMDA2NjYpLGFyPW8oODg0Nzk4KSxscj1vKDE1MjE4Mik7ZnVuY3Rpb24gY3IoZSl7Y29uc3R7c3ltYm9sSHRtbDp0LGxvZ29Vcmw6byxzeW1ib2xGaXJzdExldHRlcjppLHNpemU6bj0ieHNtYWxsIn09ZTtyZXR1cm4gZHIoe3N5bWJvbEh0bWw6dCxsb2dvSHRtbDooMCxhci5nZXRDaXJjbGVMb2dvSHRtbCkoe2xvZ29Vcmw6byxzaXplOm4scGxhY2Vob2xkZXJMZXR0ZXI6aSxjbGFzc05hbWU6InR2LXNjcmVlbmVyLXRhYmxlX19sb2dvLWNvbnRhaW5lciJ9KX0pfWZ1bmN0aW9uIGRyKGUpe2NvbnN0e2xvZ29IdG1sOnQ9IiIsc3ltYm9sSHRtbDpvPSIiLHdyYXBIdG1sQ2xhc3M6aT0iIn09ZTtyZXR1cm5gXG5cdFx0PGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1jb250YWluZXIgJHtpfSI+XG5cdFx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fc3ltYm9sLWFkZGl0aW9uIj48L2Rpdj5cblx0XHRcdCR7dH1cblx0XHRcdDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19zeW1ib2wtY29udGFpbmVyLWRlc2NyaXB0aW9uIj5cblx0XHRcdFx0JHtvfVxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdGB9dmFyIGhyPW8oODYyMjEzKTtjb25zdCB1cj0oMCxoci5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gX3IoZSl7aWYoZSYmIm51bGwiIT09ZSlyZXR1cm4gdXIuZ2V0U3ltYm9sTG9nb1VybChlLGhyLkxvZ29TaXplLk1lZGl1bSl9ZnVuY3Rpb24gcHIoZSl7Y29uc3R7ZmllbGRzT3JkZXI6dCxwcm9TeW1ib2w6byxyb3dEYXRhOmksc3ltYm9sSHRtbDpufT1lLHI9dC5pbmRleE9mKGguTG9nb0lkKTtpZigtMSE9PXIpe2NvbnN0IGU9aVtyXTtyZXR1cm4gY3Ioe3N5bWJvbEh0bWw6bixzeW1ib2xGaXJzdExldHRlcjptcihvKSxsb2dvVXJsOl9yKGUpfSl9Y29uc3Qgcz10LmluZGV4T2YoaC5CYXNlQ3VycmVuY3lMb2dvSWQpLGE9LTEhPT1zLGw9dC5pbmRleE9mKGguQ3VycmVuY3lMb2dvSWQpLGM9LTEhPT1sO2lmKGEmJmMpe2NvbnN0IGU9aVtzXSx0PWlbbF07cmV0dXJuIGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gZHIoe3N5bWJvbEh0bWw6ZSxsb2dvSHRtbDooMCxsci5nZXRDaXJjbGVMb2dvUGFpckh0bWwpKHtwcmltYXJ5TG9nb1VybDp0LHNlY29uZGFyeUxvZ29Vcmw6byxzaXplOiJ4c21hbGwiLGNsYXNzTmFtZToidHYtc2NyZWVuZXItdGFibGVfX2xvZ28tY29udGFpbmVyIn0pfSl9KG4sX3IoZSksX3IodCkpfWlmKGEpe2NvbnN0IGU9aVtzXTtyZXR1cm4gY3Ioe3N5bWJvbEh0bWw6bixzeW1ib2xGaXJzdExldHRlcjptcihvKSxsb2dvVXJsOl9yKGUpfSl9aWYoYyl7Y29uc3QgZT1pW2xdO3JldHVybiBjcih7c3ltYm9sSHRtbDpuLHN5bWJvbEZpcnN0TGV0dGVyOm1yKG8pLGxvZ29Vcmw6X3IoZSl9KX1yZXR1cm4gZHIoe3N5bWJvbEh0bWw6bn0pfWZ1bmN0aW9uIG1yKGUpe3JldHVybigwLFZuLnNob3J0TmFtZSkoZSlbMF19ZnVuY3Rpb24gZ3IoZSx0LG8pe3JldHVybiBlLmdldChoZSh0LG8pKX12YXIgdnI7IWZ1bmN0aW9uKGUpe2UuQm9vbD0iYm9vbCIsCmUuRnVuZGFtZW50YWxQcmljZT0iZnVuZGFtZW50YWxfcHJpY2UiLGUuTnVtYmVyPSJudW1iZXIiLGUuUGVyY2VudD0icGVyY2VudCIsZS5QcmljZT0icHJpY2UiLGUuVGV4dD0idGV4dCIsZS5UaW1lPSJ0aW1lIn0odnJ8fCh2cj17fSkpO2NvbnN0IGZyPVsiJm1kYXNoOyIsJzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFsIj7igJQ8L3NwYW4+J107ZnVuY3Rpb24geXIoZSx0LG8saSxuKXtpZighU3IoKSYmIW4pcmV0dXJuIiI7Y29uc3Qgcj0hZSYmbz09PXZyLlByaWNlfHwhdCYmbz09PXZyLkZ1bmRhbWVudGFsUHJpY2V8fGZyLmluY2x1ZGVzKGkpLHM9IVt2ci5QcmljZSx2ci5GdW5kYW1lbnRhbFByaWNlXS5pbmNsdWRlcyhvKTtpZihyfHxzKXJldHVybiIiO2xldCBhO3JldHVybiBhPW89PT12ci5QcmljZT9lOnQsYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC1jdXJyZW5jeS12YWx1ZSI+JHthfTwvc3Bhbj5gfWNvbnN0IGJyPSJzY3JlZW5lci5zaG93Q3VycmVuY3lMYWJlbCI7ZnVuY3Rpb24gU3IoKXtyZXR1cm4gbi5nZXRCb29sKGJyLCEwKX12YXIgd3I9bygxNDA4OTUpLENyPW8oNDg3NzUwKSxrcj1vKDg0MTg3NyksVHI9byg4MjMzNTgpLEVyPW8oNDgyNTA0KSx4cj1vKDQ4MjUwNCk7Y2xhc3MgQXJ7Y29uc3RydWN0b3IoZSl7dGhpcy5fc2V0T3B0aW9ucyhlKSx0aGlzLl9maWVsZHM9e30sdGhpcy5fZmllbGRzT3JkZXI9QXJyYXkuaXNBcnJheShlLmZpZWxkc09yZGVyKSYmZS5maWVsZHNPcmRlcnx8W10sdGhpcy5maWVsZHNPcmRlckNoYW5nZT1uZXcgbnIuRGVsZWdhdGUsdGhpcy5fY29sdW1uc01hcD1uZXcgTWFwLHRoaXMuYWZ0ZXJGaXhDb2xzPW5ldyBuci5EZWxlZ2F0ZSx0aGlzLl9hZGRpdGlvbmFsQ29sdW1ucz1bXSx0aGlzLl9oaWRkZW5Db2x1bW5zPTAsdGhpcy5fdGhyb3R0bGVGaXhDb2xzPSgwLHVpLmRlZmF1bHQpKCgoKT0+eyJtaW5pbWl6ZWQiIT09KHRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGU/dGhpcy5fbW9kZWwuX2JyaWRnZS5ib3R0b21Ub29sYmFyTW9kZS52YWx1ZSgpOiJub3JtYWwiKSYmKHRoaXMuX3VuaGlkZUNvbHVtbnMoKSx0aGlzLl91bmhpZGVDZWxscygpLHRoaXMuX2ZpeENvbHMoKSl9KSwxMCksdGhpcy5kcmFnU3RhcnRlZD1uZXcgcG8uV2F0Y2hlZFZhbHVlLHRoaXMuX2ZpZWxkc09yZGVyQ2hhbmdlPSExLHRoaXMuX3VwZGF0ZUVtcHR5TWVzc2FnZUljb249dGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbi5iaW5kKHRoaXMpLHNyLndhdGNoZWRUaGVtZS5zdWJzY3JpYmUodGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbil9X3NldE9wdGlvbnMoZSl7dGhpcy5fb3B0aW9ucz1lfHx7fSx0aGlzLl9tb2RlbD10aGlzLl9vcHRpb25zLm1vZGVsLHRoaXMuX2RlZmF1bHRGb3JtYXR0ZXI9dGhpcy5fb3B0aW9ucy5kZWZhdWx0Rm9ybWF0dGVyfHwoZT0+ZS52YWx1ZSksdGhpcy5fbnVsbEZvcm1hdHRlcj10aGlzLl9vcHRpb25zLm51bGxGb3JtYXR0ZXJ8fCgoKT0+IiZtZGFzaDsiKSx0aGlzLl93aWR0aENoYW5nZT10aGlzLl9vcHRpb25zLndpZHRoQ2hhbmdlLHRoaXMuX3Zpc2liaWxpdHlDaGFuZ2U9dGhpcy5fb3B0aW9ucy52aXNpYmlsaXR5Q2hhbmdlLHRoaXMuX25vRGF0YVN0cmluZz10aGlzLl9vcHRpb25zLm5vRGF0YVN0cmluZyx0aGlzLl9pc1VuYXZhaWxhYmxlV2lkZ2V0TWFya2V0PXRoaXMuX29wdGlvbnMuaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldCx0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyPWUuZGlzYWJsZVN0aWNreUhlYWRlcn11cGRhdGVTb3J0RmllbGQoZSx0KXtjb25zdCBvPXRoaXMuZ2V0VGgoZSk7ZSYmdCYmby5zaXplKCkmJih0aGlzLiR0aGVhZFJvdy5maW5kKCIudHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2MsLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0LS1hc2MiKS5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2MgdHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWFzYyIpLG8uZmluZCgiLmpzLXRhYmxlLXNvcnQiKS5lbXB0eSgpLmFkZENsYXNzKGB0di1zY3JlZW5lci10YWJsZV9fc29ydC0tJHt0fWApLmFwcGVuZCgiYXNjIj09PXQ/a3I6VHIpKX1oaWdobGlnaHRDZWxsKGUsdCxvKXtjb25zdCBpPXRoaXMuJHRib2R5WzBdLnF1ZXJ5U2VsZWN0b3IoYHRyW2RhdGEtc3ltYm9sPSIke2V9Il0gdGRbZGF0YS1maWVsZC1rZXk9IiR7dH0iXWApO2lmKGkpe2kuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWhpZ2hsaWdodGVkIik7Y29uc3QgZT1pLnF1ZXJ5U2VsZWN0b3IoInNwYW4iKTtpZihlKXtjb25zdCB0PW8/InR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1ncm93aW5nIjoidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmciO2UuY2xhc3NMaXN0LmFkZCh0KX19fWZsaWNrUm93KGUpe3RoaXMuJHRib2R5WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoYHRyW2RhdGEtc3ltYm9sPSIke2V9Il0gdGRgKS5mb3JFYWNoKChlPT57Y29uc3QgdD1lLnF1ZXJ5U2VsZWN0b3IoInNwYW4iKTt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1ncm93aW5nIiwidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmciKX0pKX1fY3JlYXRlVGFibGUoKXtpZih0aGlzLl90YWJsZSlyZXR1cm47Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpLHQ9WyJ0di1kYXRhLXRhYmxlIl07dGhpcy5fb3B0aW9ucy5hZGRUYWJsZUNsYXNzZXMmJnQucHVzaCguLi50aGlzLl9vcHRpb25zLmFkZFRhYmxlQ2xhc3NlcyksZS5jbGFzc0xpc3QuYWRkKC4uLnQpO2NvbnN0IG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29sZ3JvdXAiKSxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRoZWFkIiksbj1bInR2LWRhdGEtdGFibGVfX3RoZWFkIl07dGhpcy5fb3B0aW9ucy5hZGRUaGVhZENsYXNzZXMmJm4ucHVzaCguLi50aGlzLl9vcHRpb25zLmFkZFRoZWFkQ2xhc3NlcyksaS5jbGFzc0xpc3QuYWRkKC4uLm4pCjtjb25zdCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRyIikscz1bInR2LWRhdGEtdGFibGVfX3RoZWFkLXJvdyJdO3RoaXMuX29wdGlvbnMuYWRkVGhlYWRSb3dDbGFzc2VzJiZzLnB1c2goLi4udGhpcy5fb3B0aW9ucy5hZGRUaGVhZFJvd0NsYXNzZXMpLHIuY2xhc3NMaXN0LmFkZCguLi5zKTtjb25zdCBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRib2R5Iik7YS5jbGFzc0xpc3QuYWRkKCJ0di1kYXRhLXRhYmxlX190Ym9keSIpLGUuYXBwZW5kQ2hpbGQobyksZS5hcHBlbmRDaGlsZChpKSxpLmFwcGVuZENoaWxkKHIpLGUuYXBwZW5kQ2hpbGQoYSksdGhpcy5fdGFibGU9ZSx0aGlzLl9jb2xncm91cD1vLHRoaXMuX3RoZWFkUm93PXIsdGhpcy5fdGJvZHk9YSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwoKCk9PnRoaXMuX3Rocm90dGxlRml4Q29scygpKSksdGhpcy5fd2lkdGhDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMsKCgpPT50aGlzLl90aHJvdHRsZUZpeENvbHMoKSkpLHRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGUmJnRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGUuc3Vic2NyaWJlKCgoKT0+dGhpcy5fdGhyb3R0bGVGaXhDb2xzKCkpKSx0aGlzLl92aXNpYmlsaXR5Q2hhbmdlJiZ0aGlzLl92aXNpYmlsaXR5Q2hhbmdlLnN1YnNjcmliZSgoZT0+e2UmJnRoaXMuX3Rocm90dGxlRml4Q29scygpfSkpfV9jcmVhdGVTdGlja3lXcmFwcGVyKCl7aWYodGhpcy5fc3RpY2t5V3JhcHBlcilyZXR1cm47Y29uc3QgZT1bInR2LWRhdGEtdGFibGUtc3RpY2t5LXdyYXBwZXIiXTt0aGlzLl9vcHRpb25zLmFkZFN0aWNreUhlYWRlcldyYXBwZXJDbGFzc2VzJiZlLnB1c2goLi4udGhpcy5fb3B0aW9ucy5hZGRTdGlja3lIZWFkZXJXcmFwcGVyQ2xhc3Nlcyk7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTGlzdC5hZGQoLi4uZSk7Y29uc3Qgbz10aGlzLl90YWJsZS5jbG9uZU5vZGUoITApO3QuYXBwZW5kKG8pLHRoaXMuX3N0aWNreVdyYXBwZXI9dH1fY3JlYXRlSGVhZGVyKCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksdD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7dGhpcy5fZGlzYWJsZVN0aWNreUhlYWRlcnx8dGhpcy5fY3JlYXRlU3RpY2t5V3JhcHBlcigpO2ZvcihsZXQgaT0wO2k8dGhpcy5fY29sdW1uc09yZGVyLmxlbmd0aDsrK2kpe2NvbnN0IG49dGhpcy5fY29sdW1uc09yZGVyW2ldO2lmKCF0aGlzLl9maWVsZHNbbl0pY29udGludWU7Y29uc3Qgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0aCIpO3Iuc2V0QXR0cmlidXRlKCJkYXRhLWZpZWxkIixuKTtjb25zdCBzPVsidHYtZGF0YS10YWJsZV9fdGgiLCJ0di1kYXRhLXRhYmxlX19jZWxsIiwianMtdHYtZGF0YS10YWJsZS10aCIsYGpzLXR2LWRhdGEtdGFibGUtdGgtJHt0aGlzLl9lc2Mobil9YF07aWYodGhpcy5fb3B0aW9ucy5hZGRUaENsYXNzZXMpe2NvbnN0IGU9ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX29wdGlvbnMuYWRkVGhDbGFzc2VzP3RoaXMuX29wdGlvbnMuYWRkVGhDbGFzc2VzKG4sdGhpcy5fZmllbGRzW25dKTp0aGlzLl9vcHRpb25zLmFkZFRoQ2xhc3NlcztzLnB1c2goLi4uZSl9ci5jbGFzc0xpc3QuYWRkKC4uLihvPXMsby5maWx0ZXIoQm9vbGVhbikpKTtjb25zdCBhPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLnRpdGxlRm9ybWF0dGVyP3RoaXMuX29wdGlvbnMudGl0bGVGb3JtYXR0ZXIobix0aGlzLl9maWVsZHNbbl0pOnRoaXMuX2ZpZWxkc1tuXSYmKHRoaXMuX2ZpZWxkc1tuXS5jb250ZW50fHx0aGlzLl9maWVsZHNbbl0udGl0bGUpfHxuO2EgaW5zdGFuY2VvZiBFcj9yLmFwcGVuZChhWzBdKTpyLmlubmVySHRtbD1hLHRoaXMuX3NldERyYWdnYWJsZShyKSx0LmFwcGVuZChyKTtjb25zdCBsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNvbCIpO2wuY2xhc3NMaXN0LmFkZCgianMtdHYtZGF0YS10YWJsZS1jb2wiLGBqcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhuKX1gKSxlLmFwcGVuZChsKX12YXIgbztNcih0aGlzLl9jb2xncm91cCksTXIodGhpcy5fdGhlYWRSb3cpO2NvbnN0IGk9dGhpcy5fZmllbGRzW3RoaXMuX21vZGVsLnNlYXJjaEZpZWxkXT90aGlzLl9maWVsZHNbdGhpcy5fbW9kZWwuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlOnZvaWQgMDtpZih0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyKXRoaXMuX2NvbGdyb3VwLmFwcGVuZChlKSx0aGlzLl90aGVhZFJvdy5hcHBlbmQodCksdGhpcy5fc2V0U2VhcmNoSW5wdXQodGhpcy5fdGhlYWRSb3csaSk7ZWxzZXtjb25zdCBvPXRoaXMuX3N0aWNreVdyYXBwZXIucXVlcnlTZWxlY3RvcigidGFibGUiKSxuPW8ucXVlcnlTZWxlY3RvcigiY29sZ3JvdXAiKSxyPW8ucXVlcnlTZWxlY3RvcigidGhlYWQgdHIiKTtNcihuKSxNcihyKTtjb25zdCBzPWUuY2xvbmVOb2RlKCEwKTtuLmFwcGVuZChlKSx0aGlzLl9jb2xncm91cC5hcHBlbmQocyk7Y29uc3QgYT10LmNsb25lTm9kZSghMCk7ci5hcHBlbmQodCksdGhpcy5fdGhlYWRSb3cuYXBwZW5kKGEpLHRoaXMuX3RoZWFkUm93U3RpY2t5PXIsby5jbGFzc0xpc3QuYWRkKCJ0di1zY3JlZW5lci10YWJsZS0tZml4ZWQiKSx4cih0aGlzLl90aGVhZFJvdykuZmluZCgiLmpzLXRhYmxlLXNvcnQiKS5yZW1vdmUoKSx0aGlzLl9zZXRTZWFyY2hJbnB1dCh0aGlzLl90aGVhZFJvd1N0aWNreSxpKX19X3NldERyYWdnYWJsZShlKXtjb25zdCB0PXhyKGUpO2lmKHQuaXMoIi5qcy1kcmFnZ2FibGUiKSlyZXR1cm47Y29uc3QgaT14cih0aGlzLl90aGVhZFJvdyk7bGV0IG49ITE7dC5hZGRDbGFzcygianMtZHJhZ2dhYmxlIikub24oIm1vdXNlZG93biB0b3VjaHN0YXJ0IiwoZT0+e2lmKHQuZGF0YSgiZmllbGQiKT09PXRoaXMuX21vZGVsLnNlYXJjaEZpZWxkKXJldHVybjtlLnByZXZlbnREZWZhdWx0KCksdC5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIsbGVmdDowfSk7Y29uc3Qgcj10Lm9mZnNldCgpLmxlZnQ7bGV0IHM9cgo7Y29uc3QgYT1lLnBhZ2VYfHxlLm9yaWdpbmFsRXZlbnQudG91Y2hlc1swXS5wYWdlWCxsPWU9Pntjb25zdCBjPShlLnBhZ2VYfHxlLm9yaWdpbmFsRXZlbnQudG91Y2hlc1swXS5wYWdlWCktYTtpZighbil7aWYoTWF0aC5hYnMoYyk8MTApcmV0dXJuO28uZSg0Mzk4MCkudGhlbihvLmJpbmQobywyNTA0MzkpKS50aGVuKCgoe0NvbnRleHRNZW51TWFuYWdlcjplfSk9PntudWxsIT09ZS5nZXRTaG93bigpJiYobj0hMSx0LmNzcygibGVmdCIsImF1dG8iKSx4cih3aW5kb3cpLm9mZigibW91c2Vtb3ZlIHRvdWNobW92ZSIsbCksdGhpcy5fb25EcmFnU3RvcCh0KSl9KSksdGhpcy5fb25EcmFnU3RhcnQodCksdC5vbmUoImNsaWNrIiwoZT0+e24mJmUuc3RvcFByb3BhZ2F0aW9uKCl9KSl9bj0hMDtjb25zdCBkPWkub2Zmc2V0KCkubGVmdCxoPWkub3V0ZXJXaWR0aCgpLHU9dC5vdXRlcldpZHRoKCksXz1NYXRoLm1heChkLE1hdGgubWluKGQraC11LHIrYykpLHA9Xyt1LzI7bGV0IG09eHIoKSxnPSExO2NvbnN0IHY9dC5wcmV2KCk7aWYodi5zaXplKCkmJigoMCxLby5pc1J0bCkoKT9wPnYub2Zmc2V0KCkubGVmdCt2Lm91dGVyV2lkdGgoKS8yOl88PWR8fHA8di5vZmZzZXQoKS5sZWZ0K3Yub3V0ZXJXaWR0aCgpLzIpKW09djtlbHNle2NvbnN0IGU9dC5uZXh0KCk7aWYoZS5zaXplKCkmJiFlLmlzKCIuaS1oaWRkZW4iKSl7KF8rdT49ZCtofHwoKDAsS28uaXNSdGwpKCk/cDxlLm9mZnNldCgpLmxlZnQrZS5vdXRlcldpZHRoKCkvMjpwPmUub2Zmc2V0KCkubGVmdCtlLm91dGVyV2lkdGgoKS8yKSkmJihtPWUsZz0hMCl9fWNvbnN0IGY9bS5kYXRhKCJmaWVsZCIpO2lmKG0uc2l6ZSgpJiYibmFtZSIhPT1mKXtjb25zdCBlPXQuZGF0YSgiZmllbGQiKSxvPXhyKHRoaXMuX2NvbGdyb3VwKS5maW5kKGAuanMtdHYtZGF0YS10YWJsZS1jb2wtJHt0aGlzLl9lc2MoZSl9YCksaT14cih0aGlzLl9jb2xncm91cCkuZmluZChgLmpzLXR2LWRhdGEtdGFibGUtY29sLSR7dGhpcy5fZXNjKGYpfWApO2xldCBuPXhyKCkscj14cigpO3RoaXMuX3N0aWNreVdyYXBwZXImJihuPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhlKX1gKSxyPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhmKX1gKSksZz8oby5pbnNlcnRBZnRlcihpKSxuLnNpemUoKSYmci5zaXplKCkmJm4uaW5zZXJ0QWZ0ZXIocikpOihvLmluc2VydEJlZm9yZShpKSxuLnNpemUoKSYmci5zaXplKCkmJm4uaW5zZXJ0QmVmb3JlKHIpKTtsZXQgYT14cigpLGw9eHIoKTt0aGlzLl9zdGlja3lXcmFwcGVyJiYoYT14cih0aGlzLl9zdGlja3lXcmFwcGVyKS5maW5kKGAuanMtdHYtZGF0YS10YWJsZS10aC0ke3RoaXMuX2VzYyhlKX1gKSxsPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLXRoLSR7dGhpcy5fZXNjKGYpfWApKSxnPyh0Lmluc2VydEFmdGVyKG0pLHM9dC5vZmZzZXQoKS5sZWZ0LW1bMF0ub2Zmc2V0V2lkdGgsYS5zaXplKCkmJmwuc2l6ZSgpJiZhLmluc2VydEFmdGVyKGwpKToodC5pbnNlcnRCZWZvcmUobSkscz10Lm9mZnNldCgpLmxlZnQrbVswXS5vZmZzZXRXaWR0aCxhLnNpemUoKSYmbC5zaXplKCkmJmEuaW5zZXJ0QmVmb3JlKGwpKSx0aGlzLl9zd2FwQ29scyhlLGYpfXQuY3NzKCJsZWZ0IixfLXMpfTt4cih3aW5kb3cpLm9uKCJtb3VzZW1vdmUgdG91Y2htb3ZlIixsKS5vbmUoIm1vdXNldXAgdG91Y2hlbmQiLChlPT57c2V0VGltZW91dCgoKCk9PntuPSExfSksMCksdC5jc3MoImxlZnQiLCJhdXRvIikseHIod2luZG93KS5vZmYoIm1vdXNlbW92ZSB0b3VjaG1vdmUiLGwpLG4mJnRoaXMuX29uRHJhZ1N0b3AodCl9KSl9KSl9X3NldFNlYXJjaElucHV0KGUsdCl7Y29uc3Qgbz1lLnF1ZXJ5U2VsZWN0b3IoIi5qcy1zZWFyY2gtcXVlcnkiKTtpZighbylyZXR1cm47Y29uc3QgaT1vLnF1ZXJ5U2VsZWN0b3IoIi5qcy1zZWFyY2gtaW5wdXQiKSxuPW8ucXVlcnlTZWxlY3RvcigiLmpzLWlucHV0LXJlc2V0Iik7KDAsQW4uaXNTY3JlZW5lclBhZ2UpKHRoaXMuX21vZGVsLl9icmlkZ2UpJiZpLmZvY3VzKCk7Y29uc3Qgcj1Cb29sZWFuKHQpO24uY2xhc3NMaXN0LnRvZ2dsZSgiaS1oaWRkZW4iLCFyKSxyJiYoaS52YWx1ZT10KSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKCk9PntuLmNsYXNzTGlzdC50b2dnbGUoImktaGlkZGVuIiwwPT09aS52YWx1ZS5sZW5ndGgpfSkpO2NvbnN0IHM9KDAsdm8uZGVmYXVsdCkoKCgpPT57dGhpcy5fZmllbGRzW3RoaXMuX21vZGVsLnNlYXJjaEZpZWxkXS5zZWFyY2hWYWx1ZT1pLnZhbHVlLHRoaXMuX21vZGVsLmxvYWRpbmd8fHRoaXMuX21vZGVsLnVwZGF0ZSgpfSksNDAwKTtpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKCk9PnMoKSkpfV9vbkRyYWdTdGFydChlKXt0aGlzLl9tb2RlbC5wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCksdGhpcy5kcmFnU3RhcnRlZC5zZXRWYWx1ZSghMCk7Y29uc3QgdD1lLmRhdGEoImZpZWxkIiksbz10aGlzLl9nZXRDb2xCeUZpZWxkKHQpO28mJih0aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nVGhDbGFzc2VzJiZlWzBdLmNsYXNzTGlzdC5hZGQoLi4udGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ1RoQ2xhc3NlcyksdGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ0NvbENsYXNzZXMmJm8uY2xhc3NMaXN0LmFkZCguLi50aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nQ29sQ2xhc3NlcykpfV9zd2FwQ29scyhlLHQpe2NvbnN0IG89dGhpcy5fY29sdW1uc09yZGVyLmluZGV4T2YoZSksaT10aGlzLl9jb2x1bW5zT3JkZXIuaW5kZXhPZih0KTt0aGlzLl9jb2x1bW5zT3JkZXJbb109dGhpcy5fY29sdW1uc09yZGVyLnNwbGljZShpLDEsdGhpcy5fY29sdW1uc09yZGVyW29dKVswXSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZWQ9ITA7Y29uc3Qgbj1NYXRoLm1pbihvLGkpLHI9TWF0aC5tYXgobyxpKSxzPXRoaXMuX3Rib2R5LmNoaWxkcmVuO2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7ZSsrKXsKY29uc3QgdD1zW2VdLmNoaWxkcmVuLG89dFtuXTt0W3JdLmFmdGVyKG8pfWNvbnN0IGE9dGhpcy5fZmllbGRzT3JkZXIuaW5kZXhPZihlKSxsPXRoaXMuX2ZpZWxkc09yZGVyLmluZGV4T2YodCk7dGhpcy5fZmllbGRzT3JkZXJbYV09dGhpcy5fZmllbGRzT3JkZXIuc3BsaWNlKGwsMSx0aGlzLl9maWVsZHNPcmRlclthXSlbMF19X29uRHJhZ1N0b3AoZSl7dGhpcy5kcmFnU3RhcnRlZC5zZXRWYWx1ZSghMSk7Y29uc3QgdD1lLmRhdGEoImZpZWxkIiksbz10aGlzLl9nZXRDb2xCeUZpZWxkKHQpO28mJih0aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nVGhDbGFzc2VzJiZlWzBdLmNsYXNzTGlzdC5yZW1vdmUoLi4udGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ1RoQ2xhc3NlcyksdGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ0NvbENsYXNzZXMmJm8uY2xhc3NMaXN0LnJlbW92ZSguLi50aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nQ29sQ2xhc3NlcyksdGhpcy5fZmllbGRzT3JkZXJDaGFuZ2VkJiYodGhpcy5maWVsZHNPcmRlckNoYW5nZS5maXJlKCksdGhpcy5fZmllbGRzT3JkZXJDaGFuZ2VkPSExLHRoaXMuX21vZGVsLnRyYWNrRXZlbnQoYERyYWcgYW5kIGRyb3AgJHsiYmlnIj09PXRoaXMuX29wdGlvbnMudGFibGVfc3R5bGU/InF1b3RlcyI6Im5vbi1xdW90ZXMifSBjb2x1bW5gKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgcmkodCkpKSx0aGlzLl9maXhDb2xzKCkpfV9nZXRDb2xCeUZpZWxkKGUpe3JldHVybiB0aGlzLl9jb2xncm91cC5xdWVyeVNlbGVjdG9yKGAuanMtdHYtZGF0YS10YWJsZS1jb2wtJHt0aGlzLl9lc2MoZSl9YCl9X2ZpeENvbHMoKXtjb25zdCBlPUFycmF5LmZyb20odGhpcy5fdGhlYWRSb3cuY2hpbGRyZW4pO2lmKDA9PT1lLmxlbmd0aClyZXR1cm47dGhpcy5fdGFibGUuY2xhc3NMaXN0LnJlbW92ZSgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIik7Y29uc3QgdD10aGlzLl90YWJsZS5xdWVyeVNlbGVjdG9yQWxsKCJjb2wiKTtsZXQgbz1lLm1hcCgoZT0+TWF0aC5mbG9vcihlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKSkpO2NvbnN0IGk9ImJpZyI9PT10aGlzLl9vcHRpb25zLnRhYmxlX3N0eWxlLG49d2luZG93LmlubmVyV2lkdGg+Zm8uYnJlYWtwb2ludHMudGFibGV0LHI9dGhpcy5fdGFibGUucGFyZW50Tm9kZS5vZmZzZXRXaWR0aDtsZXQgcz1JcihvKTtpZihpJiZuJiZzPnIpe2Rve3M+ciYmKG8ucG9wKCksdGhpcy5faGlkZUNvbHVtbigpKSxzPUlyKG8pfXdoaWxlKHM+cik7Y29uc3QgZT1NYXRoLmZsb29yKChyLXMpL28ubGVuZ3RoKTtvPW8ubWFwKCh0PT50K2UpKTtjb25zdCB0PW8ubGVuZ3RoLTEsaT1vW3RdLG49ci1JcihvKTtvW3RdPWkrbn1pZih0LmZvckVhY2goKChlLHQpPT57Y29uc3QgaT1vW3RdO2k/ZS5zdHlsZS53aWR0aD1gJHtpfXB4YDplLmNsYXNzTGlzdC5hZGQoImktaGlkZGVuIil9KSksdGhpcy5fc3RpY2t5V3JhcHBlcil7Y29uc3QgZT10aGlzLl9zdGlja3lXcmFwcGVyLHQ9ZS5xdWVyeVNlbGVjdG9yKCJjb2xncm91cCIpLGk9ZS5xdWVyeVNlbGVjdG9yKCJ0YWJsZSIpLG49dGhpcy5fY29sZ3JvdXAuY2xvbmVOb2RlKCEwKTt0LnJlcGxhY2VXaXRoKG4pLGkuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIiksdGhpcy5fc3RpY2t5V3JhcHBlci5zdHlsZS53aWR0aD1mdW5jdGlvbihlLHQpe2lmKCEoKDAsQW4uaXNNYXJrZXRQYWdlKShlLl9tb2RlbC5fYnJpZGdlKSYmd2luZG93LmlubmVyV2lkdGg+Zm8uYnJlYWtwb2ludHMucGhvbmUpKXJldHVybjtyZXR1cm4gZS5fc3RpY2t5V3JhcHBlci5xdWVyeVNlbGVjdG9yQWxsKCJ0aCIpLmZvckVhY2goKChlLG8pPT57dFtvXT9lLmNsYXNzTGlzdC5yZW1vdmUoImktaGlkZGVuIik6ZS5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpfSkpLGAke0ZuKGUuX3RhYmxlKS53aWR0aCgpfXB4YH0odGhpcyxvKXx8YCR7c31weGB9dGhpcy5fdGFibGUuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIiksdGhpcy5hZnRlckZpeENvbHMuZmlyZSgpfV9oaWRlQ29sdW1uKCl7Y29uc3QgZT10aGlzLl90aGVhZFJvdy5jaGlsZHJlbjtmb3IobGV0IHQ9ZS5sZW5ndGgtMTt0Pj0wO3QtLSl7Y29uc3Qgbz1lW3RdO2lmKCFvLmNsYXNzTGlzdC5jb250YWlucygiaS1oaWRkZW4iKSl7by5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpO2JyZWFrfX10aGlzLl9oaWRkZW5Db2x1bW5zKyt9X3VuaGlkZUNvbHVtbnMoKXtjb25zdCBlPXRoaXMuX3RhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoImNvbCIpLHQ9dGhpcy5fdGhlYWRSb3cucXVlcnlTZWxlY3RvckFsbCgidGgiKTtlLmZvckVhY2goKChlLG8pPT57ZS5zdHlsZS53aWR0aD0iIixlLmNsYXNzTGlzdC5yZW1vdmUoImktaGlkZGVuIiksdFtvXS5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpfSkpLHRoaXMuX2hpZGRlbkNvbHVtbnM9MH1fdW5oaWRlQ2VsbHMoKXtpZighdGhpcy5fdGJvZHkpcmV0dXJuO3RoaXMuX3Rib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoInRkLmktaGlkZGVuIikuZm9yRWFjaCgoZT0+e2UuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX0pKX10b2dnbGVTaWduYWxzKGUpe2NvbnN0IHQ9dGhpcy5fZmllbGRzW2VdO3QuZGlzcGxheVNpZ25hbD0hdC5kaXNwbGF5U2lnbmFsO2NvbnN0IG89dGhpcy5fY29sdW1uc09yZGVyLmluZGV4T2YoZSk7aWYoLTE9PT1vKXJldHVybjtjb25zdCBpPXRoaXMuX3Rib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoYC50di1kYXRhLXRhYmxlX19yb3cgLnR2LWRhdGEtdGFibGVfX2NlbGw6bnRoLWNoaWxkKCR7bysxfSkgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWxgKTswIT09aS5sZW5ndGgmJihpLmZvckVhY2goKGU9PmUuY2xhc3NMaXN0LnRvZ2dsZSgiaS1oaWRkZW4iLCF0LmRpc3BsYXlTaWduYWwpKSksdGhpcy5fZml4Q29scygpKX1nZXQgJGVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fY3JlYXRlVGFibGUoKSx4cih0aGlzLl90YWJsZSl9Z2V0ICR0Ym9keSgpe3JldHVybiB0aGlzLl9jcmVhdGVUYWJsZSgpLHhyKHRoaXMuX3Rib2R5KX1nZXQgJHN0aWNreUhlYWRlcigpewpyZXR1cm4gdGhpcy5fY3JlYXRlVGFibGUoKSx0aGlzLl9jcmVhdGVTdGlja3lXcmFwcGVyKCkseHIodGhpcy5fc3RpY2t5V3JhcHBlcil9Z2V0ICR0aGVhZFJvdygpe3JldHVybiB0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyP3hyKHRoaXMuX3RoZWFkUm93KTp4cih0aGlzLl90aGVhZFJvd1N0aWNreSl9Z2V0IGFkZGl0aW9uYWxDb2x1bW5zKCl7cmV0dXJuIHRoaXMuX2FkZGl0aW9uYWxDb2x1bW5zfWdldCBmaWVsZHNPcmRlcigpe3JldHVybiB0aGlzLl9maWVsZHNPcmRlcn1nZXQgY29sdW1uc09yZGVyKCl7cmV0dXJuIHRoaXMuX2NvbHVtbnNPcmRlcn1zZXRDb2x1bW5zTWFwKGUpe3RoaXMuX2NvbHVtbnNNYXA9ZX1zZXRGaWVsZHMoZSl7dGhpcy5fZmllbGRzT3JkZXI9W10sdGhpcy5fY29sdW1uc09yZGVyPVtdO2Zvcihjb25zdFt0LG9db2YgT2JqZWN0LmVudHJpZXMoZSkpdGhpcy5fZmllbGRzT3JkZXIucHVzaCh0KSxvLnNraXBGaWVsZHx8dGhpcy5fY29sdW1uc09yZGVyLnB1c2godCk7dGhpcy5fZmllbGRzPXt9LHRoaXMuX2FkZGl0aW9uYWxDb2x1bW5zPVtdLHRoaXMuX2ZpZWxkc09yZGVyLmZvckVhY2goKHQ9Pnt0aGlzLl9maWVsZHNbdF09ZVt0XSxlW3RdJiZlW3RdLmFkZGl0aW9uYWxDb2x1bW5zJiZlW3RdLmFkZGl0aW9uYWxDb2x1bW5zLmZvckVhY2goKGU9Pnt0aGlzLl9hZGRpdGlvbmFsQ29sdW1ucy5pbmNsdWRlcyhlKXx8dGhpcy5fYWRkaXRpb25hbENvbHVtbnMucHVzaChlKX0pKX0pKSx0aGlzLmZpZWxkc09yZGVyQ2hhbmdlLmZpcmUoKSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZT0hMH11cGRhdGUoZSl7dGhpcy5fZmllbGRzT3JkZXJDaGFuZ2UmJih0aGlzLl91bmhpZGVDb2x1bW5zKCksdGhpcy5fY3JlYXRlVGFibGUoKSx0aGlzLl9jcmVhdGVIZWFkZXIoKSksdGhpcy5jbGVhckRhdGEoKSx0aGlzLmFwcGVuZChlKSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZSYmKHRoaXMuX2ZpZWxkc09yZGVyQ2hhbmdlPSExKSx0aGlzLl9maXhDb2xzKCl9X3VwZGF0ZUVtcHR5TWVzc2FnZUljb24oKXtpZighdGhpcy5fJGVtcHR5TWVzc2FnZSlyZXR1cm47Y29uc3QgZT1mdW5jdGlvbigpe2NvbnN0IGU9c3Iud2F0Y2hlZFRoZW1lLnZhbHVlKCk7cmV0dXJuIGV8fChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJodG1sIik/LmNsYXNzTGlzdC5jb250YWlucygidGhlbWUtZGFyayIpP3JyLlN0ZFRoZW1lLkRhcms6cnIuU3RkVGhlbWUuTGlnaHQpfSgpLHQ9dGhpcy5fJGVtcHR5TWVzc2FnZS5maW5kKCJpIiksbz1lPT09cnIuU3RkVGhlbWUuTGlnaHQ/Q3I6d3I7dC5odG1sKG8pfV9zZXRFbXB0eU1lc3NhZ2UoKXtsZXQgZSx0PSIiOygwLEFuLmlzU2NyZWVuZXJQYWdlKSh0aGlzLl9tb2RlbC5fYnJpZGdlKT90PSJ0di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LS1maXhlZCI6KCgwLEFuLmlzQ2hhcnRQYWdlKSh0aGlzLl9tb2RlbC5fYnJpZGdlKXx8KDAsQW4uaXNFeHRlcm5hbFdpZGdldCkodGhpcy5fbW9kZWwuX2JyaWRnZSkpJiYodD0idHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tcmVsYXRpdmUiKSxlPXRoaXMuX2lzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQ/Xy50KG51bGwsdm9pZCAwLG8oNjc2NDQyKSkuZm9ybWF0KHtvcGVuTGluazonPGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tLyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbmsiPicsY2xvc2VMaW5rOiI8L2E+In0pOnRoaXMuX25vRGF0YVN0cmluZ3x8Xy50KG51bGwsdm9pZCAwLG8oNDE3NzcpKSx0aGlzLl8kZW1wdHlNZXNzYWdlPXhyKGBcblx0XHRcdDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQgJHt0fSI+XG5cdFx0XHRcdDxpIGNsYXNzPSJqcy1uby1yZXN1bHRzLWljb24iPjwvaT5cblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LWRlc2NyaXB0aW9uIj4ke2V9PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHRgKS5pbnNlcnRBZnRlcih0aGlzLl90YWJsZSksdGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbigpLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fbW9kZWwuX2JyaWRnZSk/dGhpcy5fZml4Q29scygpOnRoaXMuX21vZGVsLl92aWV3LmZpeFN0YW5kYWxvbmVXaWR0aCgpfWFwcGVuZChlKXt0aGlzLl8kZW1wdHlNZXNzYWdlJiZ0aGlzLl8kZW1wdHlNZXNzYWdlLnJlbW92ZSgpO2NvbnN0IHQ9Z3IodGhpcy5fY29sdW1uc01hcCwiY3VycmVuY3kiLHRoaXMuX21vZGVsLnNlbGVjdGVkSW50ZXJ2YWxJZCksbz1ncih0aGlzLl9jb2x1bW5zTWFwLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIix0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpLGk9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXtjb25zdCByPWVbbl07aWYoIUFycmF5LmlzQXJyYXkoci5kKSljb250aW51ZTtjb25zdCBzPXIuZFt0XSxhPXIuZFtvXSxsPVsidHYtZGF0YS10YWJsZV9fcm93Il07aWYodGhpcy5fb3B0aW9ucy5hZGRSb3dDbGFzc2VzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZFJvd0NsYXNzZXM/dGhpcy5fb3B0aW9ucy5hZGRSb3dDbGFzc2VzKHIpOnRoaXMuX29wdGlvbnMuYWRkUm93Q2xhc3NlcztsLnB1c2goLi4uZSl9Y29uc3QgYz1bXTtpZih0aGlzLl9vcHRpb25zLmFkZFJvd0F0dHJzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZFJvd0F0dHJzP3RoaXMuX29wdGlvbnMuYWRkUm93QXR0cnMocik6dGhpcy5fb3B0aW9ucy5hZGRSb3dBdHRycztmb3IoY29uc3RbdCxvXW9mIE9iamVjdC5lbnRyaWVzKGUpKWMucHVzaChbdCxvXSl9Y29uc3QgdT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7bGV0IF89dGhpcy5faGlkZGVuQ29sdW1ucztmb3IobGV0IGU9dGhpcy5fZmllbGRzT3JkZXIubGVuZ3RoLTE7ZT49MDstLWUpe2NvbnN0IHQ9dGhpcy5fZmllbGRzT3JkZXJbZV0sbz10aGlzLl9maWVsZHNbdF0KO2lmKCFvfHxvLnNraXBGaWVsZCljb250aW51ZTtjb25zdCBpPWdyKHRoaXMuX2NvbHVtbnNNYXAsdCx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpLG49by5hZGRpdGlvbmFsQ29sdW1ucz9vLmFkZGl0aW9uYWxDb2x1bW5zLm1hcCgoZT0+UnIoci5kLGdyKHRoaXMuX2NvbHVtbnNNYXAsZSx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpKSkpOltdO2xldCBsPSIiO2NvbnN0IGM9WyJ0di1kYXRhLXRhYmxlX19jZWxsIl07bGV0IHA7aWYoby50b29sdGlwJiYoImZ1bmN0aW9uIj09dHlwZW9mIG8udG9vbHRpcD9sPW8udG9vbHRpcCguLi5uLG8pOiJzdHJpbmciPT10eXBlb2Ygby50b29sdGlwJiYobD1vLnRvb2x0aXApLGMucHVzaCgiYXBwbHktY29tbW9uLXRvb2x0aXAiKSksInByaWNlIj09PW8udHlwZSYmbi5sZW5ndGg+PTQpe2NvbnN0IGU9bi5zbGljZSgtNCk7ZVsyXT0idHJ1ZSI9PT1lWzJdLHA9R3QoLi4uZSl9ZWxzZSBwPXp0KG8sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSwhMSk7Im5hbWUiPT09dCYmbi5wdXNoKHIucyk7Y29uc3QgbT1ScihyLmQsaSk7bGV0IGc9bnVsbD09PW0/dGhpcy5fbnVsbEZvcm1hdHRlcigpOnAmJnAuZm9ybWF0KG0pfHx0aGlzLl9kZWZhdWx0Rm9ybWF0dGVyKHt2YWx1ZTptLGZpZWxkS2V5OnQsZmllbGQ6byxyb3dEYXRhOnIsZmllbGRzT3JkZXI6dGhpcy5fZmllbGRzT3JkZXIsdGl0bGU6bCxjb2x1bW5zTWFwOnRoaXMuX2NvbHVtbnNNYXB9KTtpZih0aGlzLl9vcHRpb25zLmFkZENlbGxDbGFzc2VzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZENlbGxDbGFzc2VzP3RoaXMuX29wdGlvbnMuYWRkQ2VsbENsYXNzZXMoe3ZhbHVlOm0sZmllbGRLZXk6dCxmaWVsZDpvfSk6dGhpcy5fb3B0aW9ucy5hZGRDZWxsQ2xhc3NlcztjLnB1c2goLi4uZSl9Y29uc3Qgdj1vLmFkZGl0aW9uYWxGb3JtYXR0ZXI/by5hZGRpdGlvbmFsRm9ybWF0dGVyKC4uLm4pOiIiO28ubXV0YXRlRGlzcGxheVZhbHVlJiYoZz1vLm11dGF0ZURpc3BsYXlWYWx1ZShnLC4uLm4sbykpLHRoaXMuX21vZGVsLmhhc01hcmtlZFN5bWJvbHMoKSYmYy5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aC1tYXJrZXIiKSxfPjAmJihjLnB1c2goImktaGlkZGVuIiksXy0tKTtsZXQgZj1nK3YreXIocyxhLG8udHlwZSxnLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fbW9kZWwuX2JyaWRnZSkpOyh0PT09aC5OYW1lfHx0PT09aC5TZWN0b3ImJnRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGU9PT1kLkNyeXB0b01rdCkmJihmPXByKHtzeW1ib2xIdG1sOmYsZmllbGRzT3JkZXI6dGhpcy5fZmllbGRzT3JkZXIscm93RGF0YTpyLmQscHJvU3ltYm9sOnIuc30pKTtjb25zdCB5PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7eS5jbGFzc0xpc3QuYWRkKC4uLmMpLHkudGl0bGU9bCYmIm5hbWUiIT09dD9sOiIiLHkuc2V0QXR0cmlidXRlKCJkYXRhLWZpZWxkLWtleSIsdCkseS5pbm5lckhUTUw9Zix1LnByZXBlbmQoeSl9Y29uc3QgcD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ciIpO3AuY2xhc3NMaXN0LmFkZCguLi5sKSxjLmZvckVhY2goKGU9PnAuc2V0QXR0cmlidXRlKC4uLmUpKSkscC5hcHBlbmQodSksdGhpcy5fb3B0aW9ucy5vblJvd0J1aWxkJiZ0aGlzLl9vcHRpb25zLm9uUm93QnVpbGQocCxyKSxpLmFwcGVuZENoaWxkKHApfXRoaXMuX3Rib2R5LmFwcGVuZENoaWxkKGkpLDA9PT10aGlzLl90Ym9keS5xdWVyeVNlbGVjdG9yQWxsKCJ0ciIpLmxlbmd0aCYmdGhpcy5fc2V0RW1wdHlNZXNzYWdlKCksdGhpcy5fb3B0aW9ucy5vblVwZGF0ZSYmdGhpcy5fb3B0aW9ucy5vblVwZGF0ZSgpfWNsZWFyRGF0YShlKXtpZih0aGlzLl90Ym9keSlpZihlKXtjb25zdCB0PXRoaXMuX3Rib2R5LmNoaWxkcmVuLG89dC5sZW5ndGg7Zm9yKGxldCBpPWU7aTxvO2krKyl7Y29uc3Qgbz10W2VdO3RoaXMuX3Rib2R5LnJlbW92ZUNoaWxkKG8pfX1lbHNlIHRoaXMuX3Rib2R5LmlubmVySFRNTD0iIn1zZXRUaENvbnRlbnQoZSx0KXtjb25zdCBvPXRoaXMuZ2V0VGgoZSk7by5zaXplKCkmJihvLmVtcHR5KCksdCBpbnN0YW5jZW9mIEVyP28uYXBwZW5kKHQpOm8uaHRtbCh0KSwibmFtZSI9PT1lJiZ0aGlzLl9zZXRTZWFyY2hJbnB1dCh0aGlzLiR0aGVhZFJvd1swXSx0aGlzLl9maWVsZHNbZV0uc2VhcmNoVmFsdWUpKX1zZXRDb2x1bW5UaXRsZShlLHQpe2NvbnN0IG89dGhpcy5nZXRUaChlKTtvLnNpemUoKSYmby5maW5kKCIuanMtaGVhZC10aXRsZSIpLnRleHQodCl9c2V0U2VhcmNoVGV4dChlKXtjb25zdCB0PXRoaXMuZ2V0VGgodGhpcy5fbW9kZWwuc2VhcmNoRmllbGQpO3Quc2l6ZSgpJiZ0LmZpbmQoIi5qcy1maWVsZC10b3RhbCIpLnRleHQoZSl9Z2V0VGgoZSl7Y29uc3QgdD10aGlzLiR0aGVhZFJvdztyZXR1cm4gdCYmdC5maW5kKGAuanMtdHYtZGF0YS10YWJsZS10aC0ke3RoaXMuX2VzYyhlKX1gKXx8eHIoKX1fZXNjKGUpe3JldHVybiBlLnJlcGxhY2UoL1tcLnxdL2csIl8iKX19ZnVuY3Rpb24gTXIoZSl7Y29uc3QgdD1lLmNoaWxkcmVuOzAhPT10Lmxlbmd0aCYmQXJyYXkuZnJvbSh0KS5mb3JFYWNoKCh0PT5lLnJlbW92ZUNoaWxkKHQpKSl9ZnVuY3Rpb24gSXIoZSl7cmV0dXJuIGUucmVkdWNlKCgoZSx0KT0+ZSt0KSl9ZnVuY3Rpb24gUnIoZSx0KXtyZXR1cm4gZVt0XX12YXIgRnI9bygzMDk4MzYpLExyPW8oOTExMzI3KTtjb25zdCBEcj17YW1lcmljYToidXNhIixldXJvbmV4dDoiZXVyb3BlIixob25na29uZzoiaG9uZy1rb25nIixuZXd6ZWFsYW5kOiJuZXctemVhbGFuZCIsdWs6InVuaXRlZC1raW5nZG9tIixyc2E6InNvdXRoLWFmcmljYSIsc3JpbGFua2E6InNyaS1sYW5rYSJ9O2Z1bmN0aW9uIE9yKGUsdCxvPSJzZWN0b3IiKXtyZXR1cm4gZSYmdD8oRHJbdF0mJih0PURyW3RdKSxgL21hcmtldHMvc3RvY2tzLSR7dH0vc2VjdG9yYW5kaW5kdXN0cnktJHtvfS8keyhpPWUsCmkucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCItIikucmVwbGFjZSgvLSsvZywiLSIpLnJlcGxhY2UoL14tfC0kL2csIiIpKS50b0xvd2VyQ2FzZSgpfS9gKToiL21hcmtldHMvc3RvY2tzLXVzYS9zZWN0b3JhbmRpbmR1c3RyeS1zZWN0b3IvIjt2YXIgaX1mdW5jdGlvbiBOcihlKXtjb25zdCB0PWUuX21vZGVsLG89ZS5fYnJpZGdlLGk9e3NjcmVlbmVyVHlwZTpXcih0KSxtYXJrZXQ6dC5tYXJrZXRzWzBdLHV0bTp0LnV0bSxsYXJnZUNoYXJ0VXJsOnQubGFyZ2VDaGFydFVybCx0YWJsZVN0eWxlOm8udGFibGVfc3R5bGUsc2NyZWVuZXJQbGFjZW1lbnQ6KDAsQW4uZ2V0U2NyZWVuZXJQYWdlKShvKSxvcGVuQ2hhcnRPblNhbWVUYWI6by5vcGVuX2NoYXJ0X29uX3NhbWVfdGFiLGJyaWRnZUJhc2VVcmw6by5iYXNlVXJsLHNlbGVjdGVkSW50ZXJ2YWxJZDp0LnNlbGVjdGVkSW50ZXJ2YWxJZH07cmV0dXJuIGU9PmZ1bmN0aW9uKGUpe3N3aXRjaChlLmZpZWxkS2V5KXtjYXNlIGguTmFtZTpyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3R7dmFsdWU6dCx0aXRsZTpvLHNjcmVlbmVyUGxhY2VtZW50Omksb3BlbkNoYXJ0T25TYW1lVGFiOm59PWU7aWYoImNoYXJ0IiE9PWkpe2NvbnN0IGk9cXIoZSk7cmV0dXJuYDxhIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sIGFwcGx5LWNvbW1vbi10b29sdGlwIiB0aXRsZT0iJHsoMCxFaS5odG1sRXNjYXBlKShvKX0iIGhyZWY9IiR7KDAsRWkuaHRtbEVzY2FwZSkoaSl9IiAke24/IiI6J3RhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIid9PiR7dH08L2E+YH1yZXR1cm5gPGRpdiBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCB0di1zY3JlZW5lcl9fc3ltYm9sLS10ZXh0IGFwcGx5LWNvbW1vbi10b29sdGlwIiB0aXRsZT0iJHtvfSI+JHt0fTwvZGl2PmB9KGUpO2Nhc2UgaC5EZXNjcmlwdGlvbjpyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3R7dmFsdWU6dCxzY3JlZW5lclR5cGU6byxtYXJrZXQ6aX09ZTtpZihbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXMobykpe2NvbnN0IGU9UHIodCk7cmV0dXJuYDxhIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iJHtPcih0LGksbyl9Ij5cblx0XHRcdFx0XHRcdCR7ZX1cblx0XHRcdFx0XHQ8L2E+YH1yZXR1cm4gQnIodCl9KGUpO2Nhc2UgaC5TZWN0b3I6cmV0dXJuIGZ1bmN0aW9uKGUpe2NvbnN0e3ZhbHVlOnQsZmllbGRLZXk6byxzY3JlZW5lclR5cGU6aSxtYXJrZXQ6bix0YWJsZVN0eWxlOnIsdXRtOnMsb3BlbkNoYXJ0T25TYW1lVGFiOmF9PWU7aWYoaT09PWQuQ3J5cHRvTWt0KXtjb25zdCBvPXFyKGUpO3JldHVybmA8YSBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCIgaHJlZj0iJHsoMCxFaS5odG1sRXNjYXBlKSgoMCxGci5hZGRVdG1Ub1VybCkobyxzKSl9IiAke2E/IiI6J3RhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIid9PlxuXHRcdFx0XHRcdFx0JHt0fVxuXHRcdFx0XHRcdDwvYT5gfWlmKCJiaWciPT09cilyZXR1cm4gJHIodCxuLG8pO3JldHVybiB0fShlKTtjYXNlIGguSW5kdXN0cnk6cmV0dXJuIGZ1bmN0aW9uKGUpe2NvbnN0e3ZhbHVlOnQsZmllbGRLZXk6byxzY3JlZW5lclR5cGU6aSxtYXJrZXQ6bix0YWJsZVN0eWxlOnJ9PWU7aWYoImJpZyI9PT1yJiZpIT09ZC5DcnlwdG9Na3QpcmV0dXJuICRyKHQsbixvKTtyZXR1cm4gQnIodCl9KGUpO2Nhc2UgaC5Db3VudHJ5OnJldHVybigwLGIudHJpZXNUcmFuc2xhdGVDb3VudHJpZU5hbWUpKGUudmFsdWUpO2RlZmF1bHQ6cmV0dXJuIGUudmFsdWV9fSh7Li4uZSwuLi5pfSl9ZnVuY3Rpb24gUHIoZSl7cmV0dXJuKDAsVGUudHJpZXNUcmFuc2xhdGVTY3JlZW5lckRhdGEpKGUpfWZ1bmN0aW9uIEJyKGUpe2NvbnN0IHQ9UHIoZSk7cmV0dXJuYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tZml4LXdpZHRoIiB0aXRsZT0iJHt0fSI+JHt0fTwvc3Bhbj5gfWZ1bmN0aW9uICRyKGUsdCxvKXtjb25zdCBpPVByKGUpO3JldHVybmA8YSBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGhyZWY9IiR7T3IoZSx0LG8pfSI+XG5cdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sLS1zZWNvbmRhcnkiPiR7aX08L3NwYW4+XG5cdFx0XHQ8L2E+YH1mdW5jdGlvbiBXcihlKXtyZXR1cm4gZS5zY3JlZW5lcl90eXBlfWZ1bmN0aW9uIHFyKGUpe2NvbnN0e3Jvd0RhdGE6dCxzY3JlZW5lclR5cGU6byxzY3JlZW5lclBsYWNlbWVudDppLHV0bTpuLGxhcmdlQ2hhcnRVcmw6cixjb2x1bW5zTWFwOnMsc2VsZWN0ZWRJbnRlcnZhbElkOmF9PWU7aWYobz09PWQuQ3J5cHRvTWt0KXtjb25zdCBlPXtwcm9OYW1lOnQucyx0eXBlOiJjcnlwdG8ifTtyZXR1cm4id2lkZ2V0Ij09PWkmJnI/KDAsTHIubWFrZVRlbXBsYXRlU3ltYm9sVXJsKShyLGUpOigwLExyLm1ha2VTeW1ib2xQYWdlVXJsKShlKX1jb25zdCBsPWdyKHMsImV4Y2hhbmdlIixhKTtsZXQgYztsJiYoYz10LmRbbF0pO2NvbnN0IGg9e3Byb05hbWU6dC5zLGV4Y2hhbmdlOmMsdHlwZTpvfTtyZXR1cm4gbz09PWQuQ29udGludW91c0Z1dHVyZXM/KDAsTHIubWFrZVN5bWJvbENoYXJ0VXJsKShoKToid2lkZ2V0Ij09PWkmJnI/KDAsTHIubWFrZVRlbXBsYXRlU3ltYm9sVXJsKShyLGgpOigwLExyLm1ha2VTeW1ib2xQYWdlVXJsKShoLG4pfXZhciBWcixIcj1vKDIyNTI5OCk7ZnVuY3Rpb24gVXIoZSl7Y29uc3QgdD1lLl9maWVsZHNfb3JkZXIsaT1lLl9kaXNhYmxlU3RpY2t5SGVhZGVyLG49ZS5fbGlmZWN5Y2xlLHI9ZS53aWR0aENoYW5nZSxzPWUuX21vZGVsLGE9cy5zY3JlZW5lcl90eXBlLGw9ZS5fYnJpZGdlLGM9bC50YWJsZV9zdHlsZSx1PWwuaGlkZV9jb250cm9scyxwPWwudmlzaWJsZSxtPSgwLEFuLmdldFNjcmVlbmVyUGFnZSkobCksZz1JdC5kZXNjcmlwdGlvbix2PXttb2RlbDpzLGZpZWxkc09yZGVyOnQsdGl0bGVGb3JtYXR0ZXI6KHQsbyk9Pntjb25zdCBpPWUuX2dldFRoQ29udGVudCh0LG8pCjtyZXR1cm4gdD09PWguTmFtZSYmbi5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKGkuZ2V0KDApKSxpfSxkZWZhdWx0Rm9ybWF0dGVyOk5yKGUpLGFkZFRoZWFkQ2xhc3NlczpbInR2LXNjcmVlbmVyLXRhYmxlX190aGVhZCIsaT8idHYtc2NyZWVuZXItdGFibGVfX3RoZWFkLS1zdGlja3kiOiJ0di1zY3JlZW5lci10YWJsZV9fdGhlYWQtLXJlZ3VsYXIiXSxhZGRUaENsYXNzZXM6WyJ0di1kYXRhLXRhYmxlX19zb3J0YWJsZSIsInR2LXNjcmVlbmVyLXRhYmxlX19zb3J0YWJsZSIsInR2LXNjcmVlbmVyLXRhYmxlX190aCIsYz9gdHYtc2NyZWVuZXItdGFibGVfX3RoLS0ke2N9YDoiIiwid2lkZ2V0Ij09PW0mJnU/InR2LXNjcmVlbmVyLXRhYmxlX190aC0tbm8tdG9vbGJhciI6IiJdLGFkZENlbGxDbGFzc2VzOmU9Pntjb25zdHt2YWx1ZTp0LGZpZWxkS2V5Om8sZmllbGQ6aX09ZSxuPVsidHYtc2NyZWVuZXItdGFibGVfX2NlbGwiXTtyZXR1cm4gbi5wdXNoKC4uLmZ1bmN0aW9uKGUpe2NvbnN0IHQ9W107ZS5hbGlnbj09PVZyLlJpZ2h0fHxlLmFsaWduPT09VnIuQ2VudGVyfHxlLmNvbnRyb2wmJiJzZWxlY3QiIT09ZS5jb250cm9sfHx0LnB1c2goInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0Iik7ZS5hbGlnbiE9PVZyLkNlbnRlcnx8ZS5jb250cm9sfHx0LnB1c2goInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jZW50ZXIiKTtyZXR1cm4gdH0oaSkpLGkuaGlnaGxpZ2h0Q2hhbmdlJiZ0JiZuLnB1c2godD49MD8idHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXVwIjoidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWRvd24iKSxvIT09aC5OYW1lfHwhZy5kaXNhYmxlZCYmZy5jaGVja2VkfHxuLnB1c2goIndpZGdldCI9PT1tPyJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2lkZ2V0LXdpdGhvdXQtZGVzY3JpcHRpb24iOiJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aG91dC1kZXNjcmlwdGlvbiIpLGMmJm4ucHVzaChgdHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLSR7Y31gKSwid2lkZ2V0Ij09PW0mJm4ucHVzaCguLi5mdW5jdGlvbihlLHQpe2NvbnN0IG89W107ZSYmby5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tbm8tdG9vbGJhciIpO3Q9PT1kLkNyeXB0b01rdCYmby5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY3J5cHRvX21rdCIpO3JldHVybiBvfSh1LGEpKSxufSx3aWR0aENoYW5nZTpyLHZpc2liaWxpdHlDaGFuZ2U6cCx0YWJsZV9zdHlsZTpjLG5vRGF0YVN0cmluZzplLl9ub0RhdGFTdHJpbmcsaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldDplLl9pc1VuYXZhaWxhYmxlV2lkZ2V0TWFya2V0LGRpc2FibGVTdGlja3lIZWFkZXI6aSxvblJvd0J1aWxkOih0LG8pPT57Y29uc3QgaT1lLl9zZWxlY3RhYmxlTGlzdDsiY2hhcnQiPT09bSYmSHIubGlua2luZy5wcm9TeW1ib2wudmFsdWUoKT09PW8ucyYmaSYmKGUuX3NldEFjdGl2ZUVsZW0odCksaS5mb2N1c0l0ZW0odCkpLG4uYmVmb3JlQXBwZW5kU3ltYm9sKG8ucyx0KX0sb25VcGRhdGU6KCk9Pntjb25zdCB0PWUuX3NlbGVjdGFibGVMaXN0O3QmJnQucmVzdG9yZSgpfX0sZj17Li4udixzb3J0YWJsZTohMCxhZGRUYWJsZUNsYXNzZXM6WyJ0di1zY3JlZW5lci10YWJsZSJdLGFkZFRoZWFkUm93Q2xhc3NlczpbInR2LWRhdGEtdGFibGVfX3N0cm9rZSIsInR2LXNjcmVlbmVyLXRhYmxlX19oZWFkIl0sYWRkUm93Q2xhc3NlczooKT0+WyJ0di1kYXRhLXRhYmxlX19zdHJva2UiLCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdyJdLGFkZFJvd0F0dHJzOmU9Pih7ImRhdGEtc3ltYm9sIjplLnN9KSxhZGRTdGlja3lIZWFkZXJXcmFwcGVyQ2xhc3NlczpbInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlciJdLGFkZERyYWdnaW5nVGhDbGFzc2VzOlsidHYtc2NyZWVuZXItdGFibGVfX3RoLS1kcmFnZ2luZyJdLGFkZERyYWdnaW5nQ29sQ2xhc3NlczpbInR2LXNjcmVlbmVyLXRhYmxlX19jb2wtLWRyYWdnaW5nIl19LHk9bmV3IEFyKGYpO3JldHVybiB5LnNldEZpZWxkcyh7bmFtZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODI4NDIwKSl9fSkseX0hZnVuY3Rpb24oZSl7ZS5DZW50ZXI9ImNlbnRlciIsZS5SaWdodD0icmlnaHQifShWcnx8KFZyPXt9KSk7dmFyIHpyLGpyPW8oNDgyNTA0KTtmdW5jdGlvbiBHcihlKXtjb25zdHt2aWV3OnR9PWU7cmV0dXJuIHQuX2JyaWRnZS5oaWRlX2NvbnRyb2xzP1Byb21pc2UucmVzb2x2ZSgpOnpuKGUsWHIscW4uSGVhZGVyKX1mdW5jdGlvbiBYcihlLHQpe2NvbnN0e2ZpZWxkS2V5Om99PWUsaT10LmRlZmF1bHQsbj1JdFtvXSxyPXsuLi5lLGZpZWxkOm59O3JldHVybnsuLi5LcihyLGkpLC4uLllyKHIsaSksLi4uSnIocixpKSwuLi5acihyLGkpfX1mdW5jdGlvbiBLcihlLHQpe2NvbnN0e3ZpZXc6aSxmaWVsZEtleTpyfT1lO2lmKCJuYW1lIiE9PXIpcmV0dXJue307Y29uc3Qgcz1uZXcgdCh7YWN0aW9uSWQ6IlNjcmVlbmVyLlRvZ2dsZVZpc2liaWxpdHkuRGVzY3JpcHRpb24iLG9wdGlvbnM6e2xhYmVsOiFJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZCYmSXQuZGVzY3JpcHRpb24uY2hlY2tlZD9fLnQobnVsbCx2b2lkIDAsbyg3MjEwMDEpKTpfLnQobnVsbCx2b2lkIDAsbyg4MjU5MikpLGRpc2FibGVkOkl0LmRlc2NyaXB0aW9uLmRpc2FibGVkLG9uRXhlY3V0ZTooKT0+e2NvbnN0IGU9IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ7SXQuZGVzY3JpcHRpb24uY2hlY2tlZD1lLGkudGFibGUudXBkYXRlKGkuX2RhdGEpLGkuJGZpZWxkU2V0c0J1dHRvbi50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIixpLl9tb2RlbC5pc0ZpZWxkU2V0Q2hhbmdlZCgpKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgR24uRGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50KHpyLlRvZ2dsZURlc2NyaXB0aW9uLCJoZWFkZXIiLGUpKX19fSksYT1uZXcgdCh7YWN0aW9uSWQ6IlNjcmVlbmVyLlRvZ2dsZVZpc2liaWxpdHkuU3ltYm9sVHlwZSIsb3B0aW9uczp7CmxhYmVsOiFJdC50eXBlLmRpc2FibGVkJiZJdC50eXBlLmNoZWNrZWQ/Xy50KG51bGwsdm9pZCAwLG8oOTI2ODI1KSk6Xy50KG51bGwsdm9pZCAwLG8oNjAzNTA3KSksZGlzYWJsZWQ6SXQudHlwZS5kaXNhYmxlZCxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPSFJdC50eXBlLmNoZWNrZWQ7SXQudHlwZS5jaGVja2VkPWUsaS50YWJsZS51cGRhdGUoaS5fZGF0YSksaS4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLGkuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU3ltYm9sVHlwZSwiaGVhZGVyIixlKSl9fX0pLGw9IVsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyhpLl9tb2RlbC5zY3JlZW5lcl90eXBlKSxjPW5ldyB0KHthY3Rpb25JZDoiU2NyZWVuZXIuVG9nZ2xlVmlzaWJpbGl0eS5DdXJyZW5jeSIsb3B0aW9uczp7bGFiZWw6U3IoKT9fLnQobnVsbCx2b2lkIDAsbygxMjI3NjQpKTpfLnQobnVsbCx2b2lkIDAsbyg2Nzc0MjYpKSxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPSFTcigpO3ZhciB0O3Q9ZSxuLnNldFZhbHVlKGJyLHQpLGkudGFibGUudXBkYXRlKGkuX2RhdGEpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU2hvd0N1cnJlbmN5LCJoZWFkZXIiLGUpKX19fSk7cmV0dXJuey4uLmw/e3RvZ2dsZUN1cnJlbmN5RGlzcGxheUFjdGlvbjpjfTpudWxsLHRvZ2dsZURlc2NyaXB0aW9uQWN0aW9uOnMsdG9nZ2xlU3ltYm9sVHlwZUFjdGlvbjphfX1mdW5jdGlvbiBZcihlLHQpe2NvbnN0e3ZpZXc6aSxmaWVsZEtleTpuLGZpZWxkOnJ9PWU7aWYoIm5hbWUiPT09bilyZXR1cm57fTtyZXR1cm57cmVtb3ZlQ29sdW1uQWN0aW9uOm5ldyB0KHthY3Rpb25JZDoiU2NyZWVuZXIuQ29sdW1uLlJlbW92ZSIsb3B0aW9uczp7bGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oNTkxMjI3KSksb25FeGVjdXRlOigpPT57ci5jaGVja2VkPSExO2NvbnN0IGU9aS5fdGFibGUuZmllbGRzT3JkZXIuZmlsdGVyKChlPT5lIT09bikpO2kuX21vZGVsLmZpZWxkU2V0Q2hhbmdlZC5maXJlKGUuZmlsdGVyKChlPT5JdFtlXSYmITAhPT1JdFtlXS5kaXNhYmxlZCYmITAhPT1JdFtlXS5oaWRkZW5Db2x1bW4pKSksaS5fbW9kZWwudXBkYXRlKCksaS4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLGkuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuUmVtb3ZlQ29sdW1uLCJoZWFkZXIiLG4pKX19fSl9fWZ1bmN0aW9uIEpyKGUsdCl7Y29uc3R7dmlldzppLGZpZWxkS2V5Om4sZmllbGQ6cixlOnN9PWUsYT1zLmN1cnJlbnRUYXJnZXR8fHMudGFyZ2V0LGw9bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5GaWx0ZXIuUmVzZXQiLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHZvaWQgMCxvKDMxMTczNykpLG9uRXhlY3V0ZTooKT0+e2kucmVzZXRGaWx0ZXIobiksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudCh6ci5SZXNldEZpbHRlciwiaGVhZGVyIixuKSl9fX0pLGM9bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5GaWx0ZXIuQ2hhbmdlIixvcHRpb25zOntsYWJlbDpfLnQobnVsbCx2b2lkIDAsbyg2ODEwNDMpKSxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPWpyKGEpLmNsb3Nlc3QoInRoIik7aS5zaG93SW5wbGFjZUVkaXRvcihuLGUpLHMuc3RvcFByb3BhZ2F0aW9uKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudCh6ci5DaGFuZ2VGaWx0ZXIsImhlYWRlciIsbikpfX19KTtpZihyLmNvbnRyb2wpe2kuZmllbGRWYWx1ZVN0cmluZyhuKXx8bC51cGRhdGUoe2Rpc2FibGVkOiEwfSl9ZWxzZSBsLnVwZGF0ZSh7ZGlzYWJsZWQ6ITB9KSxjLnVwZGF0ZSh7ZGlzYWJsZWQ6ITB9KTtyZXR1cm57cmVzZXRGaWx0ZXJBY3Rpb246bCxjaGFuZ2VGaWx0ZXJBY3Rpb246Y319ZnVuY3Rpb24gWnIoZSx0KXtjb25zdHt2aWV3OmksZmllbGRLZXk6bixmaWVsZDpyfT1lO2lmKCFyLmhhc093blByb3BlcnR5KCJkaXNwbGF5U2lnbmFsIikpcmV0dXJue307Y29uc3R7ZGlzcGxheVNpZ25hbDpzfT1yO3JldHVybnt0b2dnbGVTaWduYWxBY3Rpb246bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5Ub2dnbGVWaXNpYmlsaXR5LlJhdGluZyIsb3B0aW9uczp7bGFiZWw6cz9fLnQobnVsbCx2b2lkIDAsbyg3NTcyMzEpKTpfLnQobnVsbCx2b2lkIDAsbygyNzM2ODEpKSxvbkV4ZWN1dGU6KCk9PntpLl90YWJsZS50b2dnbGVTaWduYWxzKG4pLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU2lnbmFsLCJoZWFkZXIiLCFzKSl9fX0pfX0hZnVuY3Rpb24oZSl7ZS5BY3RpdmVPbmx5PSJhY3RpdmVfb25seSIsZS5Ub2dnbGVEZXNjcmlwdGlvbj0ic2hvd19kZXNjcmlwdGlvbiIsZS5Ub2dnbGVTeW1ib2xUeXBlPSJzaG93X3N5bWJvbF90eXBlIixlLlRvZ2dsZVByaW1hcnlPbmx5PSJzaG93X3ByaW1hcnlfb25seSIsZS5SZW1vdmVDb2x1bW49InJlbW92ZV9jb2x1bW4iLGUuUmVzZXRGaWx0ZXI9InJlc2V0X2ZpbHRlciIsZS5DaGFuZ2VGaWx0ZXI9ImNoYW5nZV9maWx0ZXIiLGUuVG9nZ2xlU2lnbmFsPSJzaG93X3JhdGluZyIsZS5Ub2dnbGVTaG93Q3VycmVuY3k9InRvZ2dsZV9zaG93X2N1cnJlbmN5In0oenJ8fCh6cj17fSkpO3ZhciBRcj1vKDcwMzA0MSksZXM9bygzODI3NDUpO2NvbnN0IHRzPSJzY3JlZW5lci1tYXJrZXQtc2VsZWN0LW1vZGUiO3ZhciBvcz1vKDI0OTQ2OSksaXM9byg5OTg2NjEpLG5zPW8oOTIxNzA4KSxycz1vKDQ4MjUwNCk7Y29uc3Qgc3M9bygyMjUyOTgpLmxpbmtpbmc7byg1NTA2ODIpCjtjb25zdHtEZWxlZ2F0ZTphc309byg5NDgzODApLGxzPW8oMjIxMDYxKS5nZXRMb2dnZXIoIlNjcmVlbmVyLlZpZXciKSx7b3BlcmF0b3JzOmNzLGZpZWxkczpkc309byg2NDEzMDQpLGhzPV8udChudWxsLHtjb250ZXh0OiJmb3JleF9zY3JlZW5lcl9wYWlyc19zZWxlY3QifSxvKDE4NTQ5OSkpLHVzPV8udChudWxsLHZvaWQgMCxvKDIzMzY5MCkpLF9zPV8udChudWxsLHZvaWQgMCxvKDkyMTg0NykpLHBzPW8oODQxODc3KSxtcz1vKDgyMzM1OCksZ3M9Wy0xLDEwLDYwXSx2cz1bLTEsMTBdLGZzPXtib25kczp7eWllbGRzOl8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzUxMDMzKSkscHJpY2VzOl8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNjQxNTk4KSl9LGNyeXB0b19ta3Q6e1VTRDoiVVNEIixCVEM6IkJUQyJ9fSx5cz1gPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1xdWVyeSBqcy1zZWFyY2gtcXVlcnkgJHtJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZHx8IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/InR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZGVzY3JpcHRpb24iOiIifSI+XG5cdFx0PGlucHV0XG5cdFx0XHR0eXBlPSJ0ZXh0IlxuXHRcdFx0YXV0b2NvbXBsZXRlPSJvZmYiXG5cdFx0XHRjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pbnB1dCBqcy1zZWFyY2gtaW5wdXQiXG5cdFx0Lz5cblx0XHQ8c3BhbiBjbGFzcz0idHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gdHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pY29uIj4ke28oMjYxMTc4KX08L3NwYW4+XG5cdFx0PHNwYW4gY2xhc3M9InR2LXNlYXJjaC1iYXJfX2lucHV0LXJlc2V0IHR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldCBpLWhpZGRlbiBqcy1pbnB1dC1yZXNldCI+JHtvKDIwNzc0Nil9PC9zcGFuPlxuXHQ8L2Rpdj5gO2NsYXNzIGJze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fYnJpZGdlPWUsdGhpcy5fbW9kZWw9dCx0aGlzLl9vbldpZGdldD1lLm9uV2lkZ2V0LHRoaXMuX2FjdGl2ZUVsZW09bnVsbCx0aGlzLl9jaGFuZ2VTeW1ib2w9KDAsdm8uZGVmYXVsdCkodGhpcy5fY2hhbmdlU3ltYm9sLDUwMCksdGhpcy5fbGlmZWN5Y2xlPW5ldyB4aSx0aGlzLnNvcnRlZEZpZWxkcz1PYmplY3Qua2V5cyhJdCkuZmlsdGVyKChlPT5Cb29sZWFuKEt0KEl0W2VdKSkpKSx0aGlzLl9wb3B1cHM9bmV3IGRpKHQsdGhpcyxlKSx0aGlzLl9kaWFsb2c9bmV3IGtpKHQsdGhpcyxlKSx0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyPXRoaXMuX2JyaWRnZS5kaXNhYmxlU3RpY2t5SGVhZGVyLHRoaXMuX3BlcmlvZFBpY2tlcj1lLnBlcmlvZF9waWNrZXIsdGhpcy5fbm9EYXRhU3RyaW5nPWUubm9fZGF0YV9zdHJpbmcsdGhpcy5faXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldD1lLmlzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQsdGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucz1be2lkOiJ5ZXN0ZXJkYXkiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDk2NTU3MykpfSx7aWQ6InRvZGF5Iix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg2MTQ0NTApKX0se2lkOiJ0b21vcnJvdyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQwNDgzKSl9LHtpZDoidGhpc193ZWVrIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygxMjc0ODMpKX0se2lkOiJuZXh0X3dlZWsiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ4NTQ1NCkpfV07Y29uc3QgaT0idW5kZWZpbmVkIj09PXRoaXMuX21vZGVsLnNldHRpbmdLZXk/dGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZTp0aGlzLl9tb2RlbC5zZXR0aW5nS2V5O3RoaXMuX2ZpZWxkc19vcmRlcj10aGlzLl9tb2RlbC5zZXR0aW5nc1NhdmVyLmdldEpTT04oaSsiLmZpZWxkc19vcmRlciIsW10pLHRoaXMuX2RhdGE9W10sdGhpcy5fbGFzdFNldElkPW51bGwsdGhpcy53aWR0aENoYW5nZT1uZXcgYXMsdGhpcy5fYnJpZGdlLndpZHRoJiZ0aGlzLl9icmlkZ2Uud2lkdGguc3Vic2NyaWJlKCgoKT0+e3RoaXMud2lkdGhDaGFuZ2UuZmlyZSgpfSkpLHRoaXMuXyRncm91cFNlbGVjdD1udWxsLHRoaXMuX3ByZXZlbnRIaWdobGlnaHRDaGFuZ2VzPSExLHRoaXMuX3RhYmxlPVVyKHRoaXMpLHRoaXMuX21vZGVsLmZpZWxkU2V0Q2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoZT0+e2NvbnN0IHQ9e307ZS5mb3JFYWNoKChlPT57dFtlXT1JdFtlXX0pKSx0aGlzLl90YWJsZS5zZXRGaWVsZHModCl9KSksdGhpcy5fbW9kZWwuZmlsdGVyU2V0Q2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmlsdGVyU2V0Q2hhbmdlZCgpKX0pKSx0aGlzLl90YWJsZS5maWVsZHNPcmRlckNoYW5nZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLl9tb2RlbC5maWVsZHNPcmRlci5zZXRWYWx1ZSh0aGlzLl90YWJsZS5maWVsZHNPcmRlciksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLHRoaXMuX21vZGVsLnNldHRpbmdzU2F2ZXIuc2V0SlNPTihpKyIuZmllbGRzX29yZGVyIix0aGlzLl90YWJsZS5maWVsZHNPcmRlcix7Zm9yY2VGbHVzaDohMH0pfSkpO2xldCBuPTAscj0hMTt0aGlzLl9tb2RlbC5sb2FkaW5nU3RhcnQuc3Vic2NyaWJlKG51bGwsKGU9PntlPyhyPSEwLHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiYobj1ycyhkb2N1bWVudCkuc2Nyb2xsVG9wKCkpLHRoaXMuX3Nob3dTcGlubmVyKHRoaXMuJGJvdHRvbUxvYWRpbmdTY3JlZW4pKToobj0wLHRoaXMuX21vZGVsLmlzRmFzdFJlZnJlc2h8fHRoaXMuX3Nob3dTcGlubmVyKCkpfSkpLHRoaXMuX21vZGVsLmxvYWRpbmdTdGFydC5zdWJzY3JpYmUobnVsbCwoKCk9PnRoaXMucmVzZXRSZWZyZXNoQ291bnRlcighMCkpKSx0aGlzLl9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57CnImJnRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiYwIT09biYmcnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpIT09bj8ocj0hMSxycyhkb2N1bWVudCkuc2Nyb2xsVG9wKG4pLG49MCk6dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJnRoaXMuX2lzU2Nyb2xsQm90dG9tKCkmJnJzKGRvY3VtZW50KS5zY3JvbGxUb3AocnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpLzIpLHRoaXMuX2hpZGVTcGlubmVyKCksdGhpcy5yZXNldFJlZnJlc2hDb3VudGVyKCl9KSksdGhpcy5fbW9kZWwuZW9kUmVzdHJpY3Rpb24uc3Vic2NyaWJlKCgoKT0+dGhpcy51cGRhdGVJbnRlcnZhbEJ1dHRvbigpKSx7Y2FsbFdpdGhMYXN0OiEwfSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2UmJndpbmRvdy5sb2dpblN0YXRlQ2hhbmdlLnN1YnNjcmliZShudWxsLCgoKT0+e2lmKHRoaXMucmVzZXRSZWZyZXNoQ291bnRlcigpLCJmb3JleCI9PT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKXtjb25zdCBlPXRoaXMuX21vZGVsLnNlbGVjdGVkR3JvdXBzO0l0LnNlY3Rvci52YWx1ZT1BcnJheS5pc0FycmF5KGUpJiZlWzBdPT09Xy50KG51bGwsdm9pZCAwLG8oOTIxODQ3KSk/bnVsbDplLHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbiYmKHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbi5lbXB0eSgpLHRoaXMudXBkYXRlR3JvdXBzQnV0dG9uKHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbixlKSl9fSkpLHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiZycyh3aW5kb3cpLm9uKCJzY3JvbGwiLCgoKT0+e3JzKCIuanMtZHJvcGRvd24tdG9nZ2xlLmktb3BlbmVkIikudHJpZ2dlcigicmVzZXRQb3NpdGlvbiIpfSkpO2NvbnN0IHM9KDAsdm8uZGVmYXVsdCkoKCgpPT57dGhpcy5fdGVtcEJ1c3k9ITF9KSwyNTApLGE9KCk9Pnt0aGlzLl90ZW1wQnVzeXx8KHRoaXMuX3RlbXBCdXN5PSEwKSxzKCl9O3RoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiZycyh3aW5kb3cpLm9uKCJzY3JvbGwiLGEpLHJzKHdpbmRvdykub24oInJlc2l6ZSIsYSksdGhpcy53aWR0aENoYW5nZS5zdWJzY3JpYmUodGhpcyxhKSx0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZXx8dGhpcy5fbW9kZWwubG9hZGluZ0NvbXBsZXRlLnN1YnNjcmliZShudWxsLCgoKT0+e3RoaXMuaXNFbmRSZWFjaGVkKCk/KHRoaXMuJGNvbnRlbnQuYWRkQ2xhc3MoInR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUtLWZ1bGx5LWxvYWRlZCIpLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcygibWFyZ2luLWJvdHRvbSIsLXRoaXMuX2NvbnRlbnRQYWRkaW5nKSk6KHRoaXMuJGNvbnRlbnQucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUtLWZ1bGx5LWxvYWRlZCIpLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcygibWFyZ2luLWJvdHRvbSIsIiIpKX0pKSxUcmFkaW5nVmlldy5vbkNoYXJ0UGFnZSYmTWkuc3Vic2NyaWJlKCJzY3JlZW5lci5zZWxlY3RlZF90eXBlX29uX2NoYXJ0IiwoZT0+e3RoaXMuX21vZGVsLmNoYW5nZVNjcmVlbmVyVHlwZShlKS50aGVuKCgoKT0+e3RoaXMuX2xhc3RTZXRJZD1udWxsLHRoaXMuX3BvcHVwcy5zZXRNYXJrZXRzTGlzdChGKHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpKSwiZm9yZXgiPT09dGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZT90aGlzLl8kZ3JvdXBTZWxlY3QucmVtb3ZlQ2xhc3MoImktaGlkZGVuIik6dGhpcy5fJGdyb3VwU2VsZWN0LmFkZENsYXNzKCJpLWhpZGRlbiIpLHRoaXMudXBkYXRlSW50ZXJ2YWxCdXR0b24odGhpcy5fJHNlbGVjdEludGVydmFsQnV0dG9uLHRoaXMuX21vZGVsLnNlbGVjdGVkSW50ZXJ2YWxJZCksdGhpcy5fcG9wdXBzLnVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKX0pKS50aGVuKCgoKT0+dGhpcy51cGRhdGVNYXJrZXRCdXR0b24oKSkpLmNhdGNoKChlPT57ZSYmbHMubG9nRXJyb3IoZSl9KSl9KSl9Z2V0U2VsZWN0ZWRTeW1ib2xzKCl7cmV0dXJuIHRoaXMuX3NlbGVjdGFibGVMaXN0P3RoaXMuX3NlbGVjdGFibGVMaXN0LmdldFNlbGVjdGVkS2V5cygpOltdfWdldEZvY3VzZWRTeW1ib2woKXtpZih0aGlzLl9zZWxlY3RhYmxlTGlzdClyZXR1cm4gdGhpcy5fc2VsZWN0YWJsZUxpc3QuZ2V0Rm9jdXNlZEtleSgpfXJlZ2lzdGVySG9va3NIYW5kbGVycyhlKXt0aGlzLl9saWZlY3ljbGUucmVnaXN0ZXJIYW5kbGVycyhlKX1faXNTY3JvbGxCb3R0b20oKXtyZXR1cm4gcnMod2luZG93KS5zY3JvbGxUb3AoKStycyh3aW5kb3cpLmhlaWdodCgpPT09cnMoZG9jdW1lbnQpLmhlaWdodCgpfV9pbml0U2VsZWN0YWJsZUxpc3QoKXt0aGlzLl9zZWxlY3RhYmxlTGlzdD0oMCx5by5jcmVhdGVTZWxlY3RhYmxlTGlzdCkoe2xpc3Q6dGhpcy4kY29udGVudC5nZXQoMCksbGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciLHNlbGVjdGVkTGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkIixmb2N1c2VkTGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWZvY3VzZWQiLG9uTmF2aWdhdGU6dGhpcy5fb25TeW1ib2xzTmF2aWdhdGUuYmluZCh0aGlzKSxvbkNvbmZpcm06dGhpcy5fb25TeW1ib2xDb25maXJtLmJpbmQodGhpcyksZ2V0Tm9kZUtleTplPT5lLmRhdGFzZXQuc3ltYm9sfSl9X2dldFRoQ29udGVudChlLHQpe3R8fCh0PUl0W2VdKTtjb25zdCBpPWtuKGUsdCk/cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXAganMtaGVhZC13cmFwIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHt0LnRpdGxlfSIgZGF0YS1maWVsZD0iJHtlfSI+YCk6cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXAganMtaGVhZC13cmFwIiBkYXRhLWZpZWxkPSIke2V9Ij5gKTt0LmRpc2FibGVIZWFkZXJDb250cm9sJiZpLmFkZENsYXNzKCJ0di1zY3JlZW5lci10YWJsZV9faGVhZC13cmFwLS1kaXNhYmxlLWludGVyYWN0aW9uIikKO2NvbnN0IG49cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQganMtaGVhZC1sZWZ0Ij48L2Rpdj4nKS5hcHBlbmRUbyhpKSxyPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS10ZXh0Ij48L2Rpdj4nKS5hcHBlbmRUbyhuKSxzPXJzKGA8ZGl2IGNsYXNzPSJqcy1oZWFkLXRpdGxlIj4ke3Quc2hvcnRUaXRsZXx8dC50aXRsZX08L2Rpdj5gKS5hcHBlbmRUbyhyKTtlPT09dGhpcy5fbW9kZWwuc2VhcmNoRmllbGQmJm4uYWRkQ2xhc3MoIUl0LmRlc2NyaXB0aW9uLmRpc2FibGVkJiZJdC5kZXNjcmlwdGlvbi5jaGVja2VkPyJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbCI6dGhpcy5fb25XaWRnZXQ/InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLXdpZGdldC1uYW1lLWNvbC13aXRob3V0LWRlc2NyaXB0aW9uIjoidHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbiIpO2NvbnN0IGE9cnMoYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fc29ydCBqcy10YWJsZS1zb3J0ICR7dGhpcy5fbW9kZWwuX3NvcnRGaWVsZC52YWx1ZSgpPT09ZT9gdHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLSR7dGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24udmFsdWUoKX1gOiIifSI+JHsiYXNjIj09PXRoaXMuX21vZGVsLl9zb3J0RGlyZWN0aW9uLnZhbHVlKCk/cHM6bXN9PC9zcGFuPmApO2lmKGU9PT10aGlzLl9tb2RlbC5zZWFyY2hGaWVsZCl7bGV0IGU7ZT10aGlzLl90b3RhbENvdW50P3RoaXMuX2JyaWRnZS5oaWRlX2xvYWRfbW9yZSYmdGhpcy5fYnJpZGdlLnBhZ2Vfc2l6ZSYmdGhpcy5fdG90YWxDb3VudD49dGhpcy5fYnJpZGdlLnBhZ2Vfc2l6ZT9fLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtYXRjaGVzIixjb3VudDp0aGlzLl9icmlkZ2UucGFnZV9zaXplfSxvKDU0MDU2NSkpLmZvcm1hdCh7bnVtYmVyOnRoaXMuX2JyaWRnZS5wYWdlX3NpemV9KTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtYXRjaGVzIixjb3VudDp0aGlzLl90b3RhbENvdW50fSxvKDU0MDU2NSkpLmZvcm1hdCh7bnVtYmVyOnRoaXMuX3RvdGFsQ291bnR9KTpfLnQobnVsbCx2b2lkIDAsbygyMjgyOTEpKSxycyhgPGRpdiBjbGFzcz0ianMtZmllbGQtdG90YWwgdHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlLS10b3RhbCI+JHtlfTwvZGl2PmApLmFwcGVuZFRvKG4pLHRoaXMuX29uV2lkZ2V0fHxycyh5cykuYXBwZW5kVG8obil9bGV0IGw9ITE7aWYodC5jb250cm9sJiYhdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpe2NvbnN0IHQ9cnMoYDxpIGRhdGEtZmllbGQ9IiR7ZX0iIGNsYXNzPSJqcy1maWx0ZXItYnV0dG9uIHR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uIj4ke28oNjA4MDY1KX08L2k+YCk7dC5hcHBlbmRUbyhpKTtpZih0aGlzLmZpZWxkVmFsdWVTdHJpbmcoZSkpe3QuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uLS1hY3RpdmUiKTtjb25zdCBvPXJzKGA8c3BhbiBjbGFzcz0ianMtZmllbGQtdmFsdWUgdHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAkeyJuYW1lIj09PWU/IiB0di1zY3JlZW5lci10YWJsZV9fZmllbGQtdmFsdWUtLW5hbWUiOiIifSI+JHt0aGlzLmZpZWxkVmFsdWVTdHJpbmcoZSl9PC9zcGFuPmApO24uYXBwZW5kKG8pLGw9ITB9fXJldHVybiBhLmFwcGVuZFRvKGkpLHMuYWRkQ2xhc3MobD8idHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdHdvLWxpbmVzIjoidHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdGhyZWUtbGluZXMiKSxpfV91cGRhdGVUYWJsZVNvcnRGaWVsZCgpe2NvbnN0IGU9dGhpcy5fbW9kZWwuX3NvcnRGaWVsZC52YWx1ZSgpLHQ9dGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24udmFsdWUoKTt0aGlzLl90YWJsZS51cGRhdGVTb3J0RmllbGQoZSx0KX1zZXRGaWVsZEFjdGl2ZShlLHQsbyl7dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAmJihvfHwobz10aGlzLl9kaWFsb2cuJGZpbHRlcnNQb3B1cC5maW5kKGAuanMtZmlsdGVyLWZpZWxkLSR7ZS5yZXBsYWNlKC9cVy9nLCIiKX1gKSksbyYmby5zaXplKCkmJm8udG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUiLHQpKX1fcmVzZXRTZWFyY2hDb3VudCgpe2NvbnN0IGU9dGhpcy5fZ2V0VGhDb250ZW50KHRoaXMuX21vZGVsLnNlYXJjaEZpZWxkKS5maW5kKCIuanMtZmllbGQtdG90YWwiKS50ZXh0KCk7dGhpcy5fdGFibGUuc2V0U2VhcmNoVGV4dChlKX1fcmVzZXRGaWVsZChlKXt0aGlzLnNldEZpZWxkQWN0aXZlKGUsdGhpcy5fbW9kZWwuZmllbGRBY3RpdmUoZSkpO2NvbnN0IHQ9dGhpcy5fZ2V0VGhDb250ZW50KGUpO2lmKCJuYW1lIj09PWUmJnRoaXMuX2xpZmVjeWNsZS5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKHQuZ2V0KDApKSx0aGlzLl90YWJsZS5zZXRUaENvbnRlbnQoZSx0KSwhdGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAmJnRoaXMuJGlucGxhY2VFZGl0b3ImJmU9PT10aGlzLl9pbnBsYWNlRWRpdG9yRmllbGQpe2NvbnN0IHQ9IXRoaXMuX2lzRmlsdGVyVmFsdWVFbXB0eShlKSxvPXRoaXMuJGlucGxhY2VFZGl0b3IuZmluZCgiLmpzLXJlc2V0IiksaT10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy13cmFwIik7dD8oby5yZW1vdmVDbGFzcygiaS1oaWRkZW4iKSxpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXQiKSx0aGlzLiRpbnBsYWNlRWRpdG9yLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fd2l0aG91dC1yZXNldCIpKTooby5hZGRDbGFzcygiaS1oaWRkZW4iKSxpLmFkZENsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXQiKSwKdGhpcy4kaW5wbGFjZUVkaXRvci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKSl9fV9zZXR1cFN0aWNreUhlYWRlcigpe2lmKHRoaXMuX2Rpc2FibGVTdGlja3lIZWFkZXIpcmV0dXJuO2NvbnN0IGU9dGhpcy5fdGFibGUuJHN0aWNreUhlYWRlcjtlLmluc2VydEJlZm9yZSh0aGlzLiRjb250ZW50KTtjb25zdCB0PXJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19yaWdodC1zdWJzdHJhdGUiPjwvc3Bhbj4nKS5wcmVwZW5kVG8odGhpcy4kY29udGVudCk7bGV0IG49TWF0aC5yb3VuZCh0aGlzLiR0b29sYmFyLm91dGVySGVpZ2h0KCkpO2lmKG5ldyBSZXNpemVPYnNlcnZlcigoKCk9PnRoaXMub25SZXNpemVUb29sYmFyKCkpKS5vYnNlcnZlKHRoaXMuJHRvb2xiYXJbMF0pLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fYnJpZGdlKSlEbih0aGlzKTtlbHNlIGlmKHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lKXtjb25zdCBvPTE0ODtsZXQgaTt0aGlzLiR0b29sYmFyLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1zdGFuZGFsb25lX3N0aWNreSIsITApLmNzcyh7dG9wOm99KSx0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHsicGFkZGluZy10b3AiOm59KSxlLmNzcyh7dG9wOm59KTtjb25zdCByPShpLHIpPT57cnx8KHI9cnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpKSx0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHsicGFkZGluZy10b3AiOm59KSx0aGlzLiR0b29sYmFyLmNzcyh7dG9wOmk/MDpvLXJ9KSxlLmNzcyh7dG9wOm59KSx0LmNzcyh7dG9wOmk/bjowfSl9LHM9ZT0+cnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpLSh0aGlzLiRjb250ZW50Lm9mZnNldCgpLnRvcC1lKT4wO3JzKGRvY3VtZW50KS5vbigic2Nyb2xsIiwoKCk9PntuPU1hdGgucm91bmQodGhpcy4kdG9vbGJhci5vdXRlckhlaWdodCgpKTtjb25zdCBvPXJzKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxhPXJzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCk7bGV0IGw7dGhpcy5fb25XaWRnZXR8fChsPXMobikscihsLG8pLHRoaXMuXyRtYWluQ29udGFpbmVyLmNzcygidG9wIiwtbykpLGUudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tc3RhbmRhbG9uZV9zdGlja3kiLGwpO2NvbnN0IGM9KDAsS28uaXNSdGwpKCk/ZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aC10aGlzLiRjb250ZW50WzBdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnJpZ2h0Oi1hO2UuY3NzKHtbKDAsS28uaXNSdGwpKCk/InJpZ2h0IjoibGVmdCJdOmw/YzoiYXV0byJ9KSx0LnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX3JpZ2h0LXN1YnN0cmF0ZS0tc3RhbmRhbG9uZV9zdGlja3kiLGwpLGkhPT1sJiZ0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksaT1sLHRoaXMuJGJvdHRvbUxvYWRpbmdTY3JlZW4uY3NzKHtsZWZ0OmF9KX0pKSxycyh3aW5kb3cpLm9uKCJyZXNpemUiLCgoKT0+e3RoaXMuZml4U3RhbmRhbG9uZVdpZHRoKCksbj1NYXRoLnJvdW5kKHRoaXMuJHRvb2xiYXIub3V0ZXJIZWlnaHQoKSk7Y29uc3QgZT1zKG4pO3IoZSksdGhpcy5vblJlc2l6ZVRvb2xiYXIoKX0pKSx0aGlzLmZpeFN0YW5kYWxvbmVXaWR0aCgpLHRoaXMuX3RhYmxlLmFmdGVyRml4Q29scy5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLmZpeFN0YW5kYWxvbmVIb3Jpem9udGFsU2Nyb2xsKCl9KSl9ZWxzZXt0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHtvdmVyZmxvdzoiaGlkZGVuIn0pO2xldCBvPSExLG49ITE7dGhpcy5vblJlc2l6ZVRvb2xiYXIoKTtjb25zdCByPSgpPT57Y29uc3Qgbz1NYXRoLnJvdW5kKGUub3V0ZXJIZWlnaHQoKSk7dC5jc3Moe3RvcDotb30pLHRoaXMuJGNvbnRlbnQuY3NzKHt0b3A6b30pLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcyh7dG9wOi1vLHBvc2l0aW9uOiJyZWxhdGl2ZSJ9KX07KFRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlfHx0aGlzLl9vbldpZGdldCkmJnIoKSx0aGlzLiRjb250ZW50Lm9uKCJzY3JvbGwiLCgoKT0+eygwLGkuaGlkZSkoKSxBaS5Qb3B1cENvbG9yU2VsZWN0b3IuaGlkZSgpLCgwLEtvLmlzUnRsKSgpP2UuY3NzKCJyaWdodCIsLSh0aGlzLiRjb250ZW50WzBdLnNjcm9sbFdpZHRoLXRoaXMuJGNvbnRlbnRbMF0uY2xpZW50V2lkdGgtKDAsS28uZ2V0TFRSU2Nyb2xsTGVmdCkodGhpcy4kY29udGVudFswXSkpKTplLmNzcygibGVmdCIsLXRoaXMuJGNvbnRlbnQuc2Nyb2xsTGVmdCgpKSx0aGlzLl9vbldpZGdldCYmdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMmJmUuY3NzKHt0b3A6MH0pfSkpLFRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlJiZycyhkb2N1bWVudCkub24oInNjcm9sbCIsKCgpPT57d2luZG93LmlubmVyV2lkdGg8PWZvLmJyZWFrcG9pbnRzLnRhYmxldCYmKG89dGhpcy4kY29udGVudC5nZXQoMCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wPDApLGUudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tc3RhbmRhbG9uZV9zdGlja3kiLG8pLG4hPT1vJiZlLmNzcyh7bGVmdDpvPy10aGlzLiRjb250ZW50LnNjcm9sbExlZnQoKTowfSksbj1vfSkpfXRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzfHwodGhpcy4kaGVhZGVyRmllbGRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b24gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg1NzkwNjUpKX0iPlxuXHRcdFx0XHQke28oODkzMjUxKX1cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpLHRoaXMuJGhlYWRlckZpZWxkc0J1dHRvbi5hdHRyKHsiZGF0YS1uYW1lIjoiaGVhZGVyX2ZpZWxkcy1idXR0b24ifSksCnRoaXMuX3BvcHVwcy5zZXRGaWVsZHNQb3B1cCh0aGlzLiRoZWFkZXJGaWVsZHNCdXR0b24sInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fZmllbGRzLWJ1dHRvbi13cmFwIiwidHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IikpLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnNob3coKX0pLCEwKX1fc2hvd1NwaW5uZXIoZT10aGlzLiRsb2FkaW5nU2NyZWVuKXtlLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSxjbGVhclRpbWVvdXQodGhpcy5fc3Bpbm5lclRpbWVvdXRJZCksdGhpcy5fc3Bpbm5lcnx8KHRoaXMuX3NwaW5uZXJUaW1lb3V0SWQ9c2V0VGltZW91dCgoKCk9Pnt0aGlzLl9zcGlubmVyPShuZXcgVGkuU3Bpbm5lcikuc3BpbihlLmdldCgwKSl9KSwxMDApKX1faGlkZVNwaW5uZXIoKXt0aGlzLiRsb2FkaW5nU2NyZWVuLmFkZENsYXNzKCJqcy1oaWRkZW4iKSx0aGlzLiRib3R0b21Mb2FkaW5nU2NyZWVuLmFkZENsYXNzKCJqcy1oaWRkZW4iKSxjbGVhclRpbWVvdXQodGhpcy5fc3Bpbm5lclRpbWVvdXRJZCksdGhpcy5fc3Bpbm5lciYmKHRoaXMuX3NwaW5uZXIuc3RvcCgpLGRlbGV0ZSB0aGlzLl9zcGlubmVyKX1fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCl7cmV0dXJuIHdpbmRvdy53aWRnZXRiYXI/KDAsU24uZ2V0V2lkZ2V0QmFyUGFkZGluZykod2luZG93LndpZGdldGJhci5yZXNpemVyQnJpZGdlLndpZHRoLnZhbHVlKCkpOjB9Zml4U3RhbmRhbG9uZVdpZHRoKCl7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe3RoaXMuX2JyaWRnZS4kYm9keS5jc3MoeyJwYWRkaW5nLXJpZ2h0IjoiIiwicGFkZGluZy1sZWZ0IjoiIn0pO2NvbnN0IGU9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksdD0oMCxLby5pc1J0bCkoKT8icGFkZGluZy1sZWZ0IjoicGFkZGluZy1yaWdodCI7dGhpcy4kdG9vbGJhci53aWR0aChycyh3aW5kb3cpLndpZHRoKCktZSksdGhpcy5fJG1haW5IZWFkZXIuY3NzKHtbdF06ZX0pLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKSx0aGlzLl90YWJsZSYmdGhpcy5fdGFibGUuXyRlbXB0eU1lc3NhZ2UmJiEoMCxBbi5pc01hcmtldFBhZ2UpKHRoaXMuX21vZGVsLl9icmlkZ2UpJiZ0aGlzLl90YWJsZS5fJGVtcHR5TWVzc2FnZS5jc3Moe3dpZHRoOmBjYWxjKDEwMCUgLSAke2V9cHhgfSksdGhpcy53aWR0aENoYW5nZS5maXJlKCl9fWZpeFN0YW5kYWxvbmVIb3Jpem9udGFsU2Nyb2xsKCl7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2NvbnN0IGU9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksdD10aGlzLl90YWJsZS4kZWxlbWVudC53aWR0aCgpKygoMCxLby5pc1J0bCkoKT8wOmUpLG89cnMod2luZG93KS53aWR0aCgpPHQsaT0oMCxLby5pc1J0bCkoKT8icGFkZGluZy1sZWZ0IjoicGFkZGluZy1yaWdodCI7dGhpcy5fYnJpZGdlLiRib2R5LmNzcyh7W2ldOm8/dDoiIn0pLHRoaXMuJHRvb2xiYXIud2lkdGgocnMod2luZG93KS53aWR0aCgpLWUpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKX19cHJlcGFyZUxheW91dCgpe3RoaXMuX2JyaWRnZS4kYm9keS5hZGRDbGFzcygidHYtc2NyZWVuZXIiKyh0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT8iIHR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIjoiIikpLHRoaXMuJGxvYWRpbmdTY3JlZW49cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbiR7dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJiF0aGlzLl9icmlkZ2UudGFibGVfbG9hZGluZ19zY3JlZW4/IiB0di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW4tLXN0YW5kYWxvbmUiOiIifSI+YCkuYXBwZW5kVG8odGhpcy5fYnJpZGdlLiRib2R5KSx0aGlzLiR0b29sYmFyPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyJHt0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT8iIHR2LXNjcmVlbmVyLXRvb2xiYXItLXN0YW5kYWxvbmUiOiIifSAke3RoaXMuX2Rpc2FibGVTdGlja3lIZWFkZXI/InR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHMiOiIifSI+YCkuYXBwZW5kVG8odGhpcy5fYnJpZGdlLiRib2R5KSx0aGlzLiR0b29sYmFyLm9uKCJjb250ZXh0bWVudSIsKGZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQoKX0pKSxycygiLnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUiKS5yZW1vdmUoKSx0aGlzLiRjb250ZW50PXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lcl9fY29udGVudC1wYW5lIiB0YWJpbmRleD0iMTAwIj4nKS5kYXRhKHtsb2NhbFNjcm9sbDohdGhpcy5fYnJpZGdlLnN0YW5kYWxvbmV9KS5hcHBlbmRUbyh0aGlzLl9icmlkZ2UuJGJvZHkpLHRoaXMuJGNvbnRlbnQub24oImNvbnRleHRtZW51IiwoZnVuY3Rpb24oZSl7ZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0di1zY3JlZW5lcl9fY29udGVudC1wYW5lIikmJmUucHJldmVudERlZmF1bHQoKX0pKSx0aGlzLiRib3R0b21Mb2FkaW5nU2NyZWVuPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lcl9fYm90dG9tLWxvYWRpbmctc2NyZWVuIj4nKS5hcHBlbmRUbyh0aGlzLl9icmlkZ2UuJGJvZHkpLHRoaXMuXyRtYWluQ29udGFpbmVyPXJzKCIudHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtbWFpbi1jb250YWluZXIiKSx0aGlzLl8kbWFpbkhlYWRlcj10aGlzLl8kbWFpbkNvbnRhaW5lci5maW5kKCIudHYtaGVhZGVyIiksdGhpcy5fb25XaWRnZXR8fCh0aGlzLiRyZWZyZXNoQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLW9wdGlvbnMgdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1yZWZyZXNoIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygzNzM3MjIpKX0iPjwvZGl2PmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1yZWZyZXNoIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDg5OTcwKSkuYXR0cih7CmNsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tc3RhbmRhbG9uZS1yZWZyZXNoIix3aWR0aDoiMTgiLGhlaWdodDoiMTgifSkpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJHJlZnJlc2hDb3VudGVyPXJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fcmVmcmVzaC1jb3VudGVyIj4nKS50ZXh0KCIwMDowMCIpLmFwcGVuZFRvKHRoaXMuJHJlZnJlc2hCdXR0b24pLHRoaXMuJHJlZnJlc2hJbnRlcnZhbEJ1dHRvbj1ycyhgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uIHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tb3B0aW9ucyB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNwYWNlX3JpZ2h0IGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg3ODI2MzQpKX0iPjwvZGl2PmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1yZWZyZXNoLWludGVydmFsIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDg5MzI1MSkpLmF0dHIoe3dpZHRoOjMsaGVpZ2h0OjEzLGNsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiIsc3R5bGU6InRvcDogLTFweCJ9KSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhcikpO2NvbnN0IGU9dGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKSx0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlKTt0aGlzLiRmaWVsZFNldHNCdXR0b249cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFuaW1hdGVkXG5cdFx0XHR0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtb3B0aW9ucyB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd25cblx0XHRcdHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0td2l0aC1zdGF0ZSBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCBqcy1maWVsZC1zZXRzIiB0aXRsZT0iICR7Xy50KG51bGwsdm9pZCAwLG8oMzMyNjA5KSl9Ij5cblx0XHRcdFx0JHt0P3QudGl0bGU6IiJ9XG5cdFx0XHQ8L2Rpdj5gKS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZmllbGQtc2V0cyIsImRhdGEtcm9sZSI6ImJ1dHRvbiIsImRhdGEtZmllbGQtc2V0IjplfSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhciksdGhpcy4kZmllbGRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1vcHRpb25zXG5cdFx0XHR0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNxdWFyZSBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZFxuXHRcdFx0dHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1zcGFjZV9yaWdodCIgdGl0bGU9IiAke18udChudWxsLHZvaWQgMCxvKDU3OTA2NSkpfSI+YCkuYXR0cih7ImRhdGEtbmFtZSI6InNjcmVlbmVyLWZpZWxkcyIsImRhdGEtcm9sZSI6ImJ1dHRvbiJ9KS5hcHBlbmQocnMobyg3OTAwODApKS5hdHRyKHtjbGFzczoidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24ifSkpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJGZhdm9yaXRlc0Jhcj1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzIj4nKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKSx0aGlzLiRwZXJpb2RQaWNrZXI9cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXIiPicpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpO2NvbnN0IGk9ZnNbdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZV07aSYmKHRoaXMuX2NyZWF0ZVN3aXRjaChpKSx0aGlzLiR0b29sYmFyLmFkZENsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1vbmUtbGluZSIpKTtjb25zdCBuPXRoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpLHI9dGhpcy5fbW9kZWwuZ2V0RmlsdGVyU2V0QnlJZChuKTt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLW9wdGlvbnNcblx0XHRcdHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93biB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtc3RhdGVcblx0XHRcdGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIGpzLWZpbHRlci1zZXRzIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg1NzAzNDMpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1maWx0ZXItc2V0cyIsImRhdGEtcm9sZSI6ImJ1dHRvbiIsImRhdGEtZmlsdGVyLXNldCI6bn0pLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJGZpbHRlclNldHNCdXR0b25UaXRsZT1ycyhgPHNwYW4+JHtyP3IudGl0bGU6IiJ9PC9zcGFuPmApLmFwcGVuZFRvKHRoaXMuJGZpbHRlclNldHNCdXR0b24pLHRoaXMuJGZpbHRlcnNCdXR0b249cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLW9wdGlvbnMgdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1maWx0ZXJzIGFwcGx5LWNvbW1vbi10b29sdGlwIGktZGlzYWJsZWQgY29tbW9uLXRvb2x0aXAtZml4ZWQiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDEwMzQ4NikpfSI+JHtfLnQobnVsbCx2b2lkIDAsbygxNDE3MjcpKX08L2Rpdj5gKS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZmlsdGVyIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDYwODA2NSkpLmF0dHIoe2NsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tZmlsdGVycyJ9KSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhciksCnRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLiRmaWx0ZXJzQnV0dG9uLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIil9KSwhMCk7Y29uc3Qgcz1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50LXdyYXAiPicpLm9uKCJjbGljayIsKCgpPT57dGhpcy5zaG93QWN0aXZlRmlsdGVycygpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBwaSgiZmlsdGVyX2NvdW50ZXJfYnV0dG9uIix0aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCkpKX0pKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKTtpZih0aGlzLiRmaWx0ZXJDb3VudD1ycyhgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ZpbHRlci1jb3VudCBqcy1oaWRkZW4gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygxNTc1MzgpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1maWx0ZXItY291bnQiLCJkYXRhLXJvbGUiOiJidXR0b24ifSkuYXBwZW5kVG8ocyksdGhpcy5fdGFibGUuJGVsZW1lbnQuYXBwZW5kVG8odGhpcy4kY29udGVudCksdGhpcy5pbml0SGFuZGxlcnMoKSx0aGlzLl9icmlkZ2Uuc2VsZWN0aW9uX2Rpc2FibGVkfHx0aGlzLl9pbml0U2VsZWN0YWJsZUxpc3QoKSx0aGlzLl9vbldpZGdldCYmdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMmJih0aGlzLl9jb250ZW50UGFkZGluZz10aGlzLiRjb250ZW50LmlubmVySGVpZ2h0KCktdGhpcy4kY29udGVudC5oZWlnaHQoKSx0aGlzLiRjb250ZW50LmNzcygiaGVpZ2h0IixgY2FsYygxMDAlIC0gJHt0aGlzLl9jb250ZW50UGFkZGluZ31weClgKSx0aGlzLiR0b29sYmFyLmhpZGUoKSksdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpW3RoaXMuJHJlZnJlc2hCdXR0b24sdGhpcy4kcmVmcmVzaEludGVydmFsQnV0dG9uLHRoaXMuJGZpZWxkU2V0c0J1dHRvbix0aGlzLiRmaWVsZHNCdXR0b24sdGhpcy4kZmlsdGVyU2V0c0J1dHRvbix0aGlzLiRmaWx0ZXJzQnV0dG9uLHRoaXMuJGZpbHRlckNvdW50XS5mb3JFYWNoKChlPT57ZSYmZS5oaWRlKCl9KSksdGhpcy5fb25XaWRnZXQmJih0aGlzLl9icmlkZ2UuJGJvZHkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLS1oaWRkZW4tdG9vbGJhciIpLHRoaXMuJGxvYWRpbmdTY3JlZW4uYWRkQ2xhc3MoInR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbi0taGlkZGVuLXRvb2xiYXIiKSk7ZWxzZXt0aGlzLl9vbldpZGdldHx8KHRoaXMuXyRzZWxlY3RJbnRlcnZhbEJ1dHRvbj10aGlzLmFkZEludGVydmFsU2VsZWN0KHskYmVmb3JlOnRoaXMuJGZpbHRlclNldHNCdXR0b259KS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItdGltZS1pbnRlcnZhbCIsImRhdGEtcm9sZSI6ImJ1dHRvbiJ9KSk7Y29uc3QgZT10aGlzLmFkZE1hcmtldFNlbGVjdCh7JGJlZm9yZTp0aGlzLiRmaWx0ZXJTZXRzQnV0dG9ufSksdD1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fbWFya2V0LWNvdW50LXdyYXAiPicpLm9uKCJjbGljayIsKCgpPT57dGhpcy5fc2hvd01hcmtldHNEaWFsb2coKX0pKTt0aGlzLiRtYXJrZXRDb3VudD1ycyhgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ZpbHRlci1jb3VudCB0di1zY3JlZW5lci10b29sYmFyX19maWx0ZXItY291bnQtLW1hcmtldC1jb3VudCBqcy1oaWRkZW4gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygzOTQwMzkpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1tYXJrZXQtY291bnQiLCJkYXRhLXJvbGUiOiJidXR0b24ifSkuYXBwZW5kVG8odCkscnMoZSkuYWZ0ZXIodCksdGhpcy5fJGdyb3VwU2VsZWN0QnV0dG9uPXRoaXMuYWRkR3JvdXBTZWxlY3QoeyRiZWZvcmU6dGhpcy4kZmlsdGVyU2V0c0J1dHRvbn0pLHRoaXMuX3BvcHVwcy5zZXRGaWVsZHNQb3B1cCh0aGlzLiRmaWVsZHNCdXR0b24sInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIiksdGhpcy5fcG9wdXBzLnNldEZpZWxkU2V0c1BvcHVwKHRoaXMuJGZpZWxkU2V0c0J1dHRvbiksdGhpcy5fcG9wdXBzLnNldEZpbHRlclNldHNQb3B1cCh0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uKSx0aGlzLl9vbldpZGdldHx8dGhpcy5fcG9wdXBzLnNldFJlZnJlc2hJbnRlcnZhbHNQb3B1cCh0aGlzLiRyZWZyZXNoSW50ZXJ2YWxCdXR0b24pfXZhciBhOyhhPXRoaXMuX21vZGVsLnRpbWV6b25lKSYmYSE9PXhlJiYoeGU9YSksdGhpcy5fcGVyaW9kUGlja2VyPyhXdCgpLHRoaXMuX3NlbGVjdGVkUGVyaW9kSWQ9InRvZGF5Iix0aGlzLl9zZXROZXdFYXJuaW5nc1BlcmlvZCh0aGlzLl9zZWxlY3RlZFBlcmlvZElkKSx0aGlzLnVwZGF0ZVBlcmlvZFBpY2tlcigpLHRoaXMuJGZhdm9yaXRlc0Jhci5oaWRlKCksSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUub25GaWx0ZXJDaGFuZ2U9ZT0+e2NvbnN0IHQ9dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucy5maW5kKCh0PT50LnRpdGxlPT09ZSkpO3RoaXMuY2hhbmdlRWFybmluZ3NQZXJpb2QodD90LmlkOiIiLCEwKX0pOnRoaXMuJHBlcmlvZFBpY2tlci5oaWRlKCksdGhpcy5fc2hvd1NwaW5uZXIoKSx0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksdGhpcy5vblJlc2l6ZVRvb2xiYXIoKX1vblJlc2l6ZVRvb2xiYXIoKXtpZih0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyKXJldHVybjtpZih0aGlzLl90YWJsZS4kc3RpY2t5SGVhZGVyLnBvc2l0aW9uKCkudG9wPDApcmV0dXJuO2NvbnN0IGU9TWF0aC5yb3VuZCh0aGlzLiR0b29sYmFyLm91dGVySGVpZ2h0KCkpOygwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzP3RoaXMuX3RhYmxlLiRzdGlja3lIZWFkZXIuY3NzKHt0b3A6MH0pOnRoaXMuX3RhYmxlLiRzdGlja3lIZWFkZXIuY3NzKHt0b3A6ZX0pfQpzaG93TWFpbnRlbmFuY2UoKXt0aGlzLl9icmlkZ2UuJGJvZHkuaHRtbChgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXJfX21haW50ZW5hbmNlIj4ke18udChudWxsLHZvaWQgMCxvKDMzMjg1NSkpfTwvZGl2PmApfWluaXRIYW5kbGVycygpe3RoaXMuJHRvb2xiYXIub24oImhvdmVyIix0aGlzLmFkanVzdFRvb2xiYXJXaWR0aC5iaW5kKHRoaXMpKSx0aGlzLiRmaWVsZFNldHNCdXR0b24ub24oInRyYW5zaXRpb25lbmQiLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMuYmluZCh0aGlzKSk7Y29uc3QgZT1lPT57Y29uc3QgdD1lLmRhdGEoImZpZWxkIik7aWYoITE9PT1JdFt0XS5zb3J0YWJsZUNvbHVtbilyZXR1cm47Y29uc3Qgbz10aGlzLl9tb2RlbC5fc29ydEZpZWxkLnZhbHVlKCksaT10aGlzLl9tb2RlbC5fc29ydERpcmVjdGlvbi52YWx1ZSgpO0l0W3RdLmRpc2FibGVIZWFkZXJDb250cm9sfHwobz09PXQmJnRoaXMuX21vZGVsLl9zb3J0RGlyZWN0aW9uLnNldFZhbHVlKCJhc2MiPT09aT8iZGVzYyI6ImFzYyIpLHRoaXMuX21vZGVsLl9zb3J0RmllbGQuc2V0VmFsdWUodCksdGhpcy5fbW9kZWwudXBkYXRlKCkpfTtpZih3by5tb2JpbGV0b3VjaCl7KG5ldyBGaSkubG9hZCgpLnRoZW4oKHQ9Pntjb25zdCBvPW5ldyB0KHJzKCIudHYtc2NyZWVuZXIiKVswXSx7dG91Y2hBY3Rpb246ImF1dG8ifSk7by5nZXQoInByZXNzIikuc2V0KHt0aW1lOjUwMH0pLG8ub24oInByZXNzIiwoZT0+e2NvbnN0IHQ9cnMoZS50YXJnZXQpLmNsb3Nlc3QoIi5qcy1oZWFkLXdyYXAiKTtpZih0Lmxlbmd0aCl7R3Ioe3ZpZXc6dGhpcyxmaWVsZEtleTpycyh0KS5kYXRhKCJmaWVsZCIpLGU6ZS5zcmNFdmVudH0pfWUucHJldmVudERlZmF1bHQoKX0pKSxvLm9uKCJ0YXAiLCh0PT57aWYocnModC50YXJnZXQpLmNsb3Nlc3QoIi5qcy1zZWFyY2gtaW5wdXQiKS5sZW5ndGgpcmV0dXJuO2NvbnN0IG89cnModC50YXJnZXQpLmNsb3Nlc3QoIi5qcy1oZWFkLXdyYXAiKTtvLmxlbmd0aCYmZShvKX0pKX0pKX1lbHNlIHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtaGVhZC13cmFwIiwodD0+e2NvbnN0IG89cnModC5jdXJyZW50VGFyZ2V0KTtlKG8pLHQuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNvbnRleHRtZW51IiwiLmpzLWhlYWQtd3JhcCIsKGU9PntHcih7dmlldzp0aGlzLGZpZWxkS2V5OnJzKGUuY3VycmVudFRhcmdldCkuZGF0YSgiZmllbGQiKSxlfSksZS5wcmV2ZW50RGVmYXVsdCgpfSkpLHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtZmlsdGVyLWJ1dHRvbiIsKGU9Pntjb25zdCB0PXJzKGUuY3VycmVudFRhcmdldCkuY2xvc2VzdCgidGgiKSxvPXQuZGF0YSgiZmllbGQiKTt0aGlzLnNob3dJbnBsYWNlRWRpdG9yKG8sdCksZS5zdG9wUHJvcGFnYXRpb24oKX0pKTtycygiLnR2LXNjcmVlbmVyIikub24oImNsaWNrIiwiLmpzLXNlYXJjaC1pbnB1dCIsKGU9PntlLnN0b3BQcm9wYWdhdGlvbigpfSkpLHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtaW5wdXQtcmVzZXQiLChlPT57cnMoZS5jdXJyZW50VGFyZ2V0KS5hZGRDbGFzcygiaS1oaWRkZW4iKSxycygiLnR2LXNjcmVlbmVyIikuZmluZCgiLmpzLXNlYXJjaC1pbnB1dCIpLnZhbCgiIiksSXRbdGhpcy5fbW9kZWwuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlPSIiLHRoaXMuX21vZGVsLnVwZGF0ZSgpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkscnMoIi50di1zY3JlZW5lciIpLm9uKCJjbGljayIsIi5qcy1maWx0ZXItYnV0dG9uIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5jbG9zZXN0KCJ0aCIpLG89dC5kYXRhKCJmaWVsZCIpO3RoaXMuc2hvd0lucGxhY2VFZGl0b3Iobyx0KSxlLnN0b3BQcm9wYWdhdGlvbigpfSkpLHRoaXMuX2JyaWRnZS50YWJsZV9jb250ZXh0X21lbnVfZGlzYWJsZWR8fHRoaXMuX2luaXRUYWJsZUNvbnRleHRNZW51KCksdGhpcy4kY29udGVudC5vbigic2Nyb2xsdG9lbmQiLChlPT57dGhpcy5fbW9kZWwubG9hZGluZ3x8dGhpcy5fbW9kZWwudXBkYXRlKG51bGwsITApfSkpLHRoaXMuJHJlZnJlc2hCdXR0b24mJnRoaXMuJHJlZnJlc2hCdXR0b24uY2xpY2soKGU9PnsoMCxmbi5ydW5PclNpZ25JbikoKCgpPT57dGhpcy5fbW9kZWwubG9hZGluZ3x8dGhpcy5yZWZyZXNoKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHNpKX0pLHtzb3VyY2U6IlNjcmVlbmVyIHJlZnJlc2ggYnV0dG9uIn0pfSkpLHRoaXMuJGZpbHRlcnNCdXR0b24uY2xpY2soKCgpPT57dGhpcy5fZGlhbG9nLnNob3dGaWx0ZXJzRGlhbG9nKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHBpKCJmaWx0ZXJfYnV0dG9uIix0aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCkpKX0pKSxzcy5wcm9TeW1ib2wuc3Vic2NyaWJlKChlPT57Y29uc3QgdD10aGlzLiRjb250ZW50LmZpbmQoYFtkYXRhLXN5bWJvbD0iJHtlfSJdYCkuZ2V0KDApO3RoaXMuX3NldEFjdGl2ZUVsZW0odCksdGhpcy5fc2VsZWN0YWJsZUxpc3QmJih0P3RoaXMuX3NlbGVjdGFibGVMaXN0LmZvY3VzSXRlbSh0KTp0aGlzLl9zZWxlY3RhYmxlTGlzdC5jbGVhcigpKX0pKSx0aGlzLiRmaWVsZFNldHNCdXR0b24ub24oImNsaWNrIiwoKCk9Pnt0aGlzLl9sYXN0U2V0SWQ9bnVsbH0pKSx0aGlzLiR0b29sYmFyLm9uKCJjbGljayIsIi5qcy1mYXZvcml0ZS1pdGVtIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5hdHRyKCJkYXRhLXNldCIpO3RoaXMuX2xhc3RTZXRJZCE9PXQmJih0aGlzLl9tb2RlbC5wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCksdGhpcy51cGRhdGVTZXRJZCh0LCExLHRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzKSksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfZmF2b3JpdGVzX3BpY2tlciIsdCkpfSkpLHRoaXMuJHRvb2xiYXIub24oImNsaWNrIiwiLmpzLXBlcmlvZC1waWNrZXItaXRlbSIsKGU9Pntjb25zdCB0PXJzKGUuY3VycmVudFRhcmdldCkuYXR0cigiZGF0YS1wZXJpb2QiKTt0aGlzLmNoYW5nZUVhcm5pbmdzUGVyaW9kKHQpfSkpLApycyh3aW5kb3cpLnJlc2l6ZSgoZT0+dGhpcy51cGRhdGVUb29sYmFyQnV0dG9ucygpKSksdGhpcy5fYnJpZGdlLndpZHRoJiZ0aGlzLl9icmlkZ2Uud2lkdGguc3Vic2NyaWJlKCgoKT0+dGhpcy51cGRhdGVUb29sYmFyQnV0dG9ucygpKSksdGhpcy5fYnJpZGdlLnZpc2libGUmJnRoaXMuX2JyaWRnZS52aXNpYmxlLnN1YnNjcmliZSgoZT0+e2UmJih0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksdGhpcy5hZGp1c3RUb29sYmFyV2lkdGgoKSl9KSksdGhpcy51cGRhdGVGYXZvcml0ZXNUb29sYmFyKCl9X2luaXRUYWJsZUNvbnRleHRNZW51KCl7dGhpcy4kY29udGVudC5vbigiY29udGV4dG1lbnUiLCIudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciLChlPT57Y29uc3QgdD1ycyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoInN5bWJvbCIpO3RoaXMuX3NlbGVjdGFibGVMaXN0JiZ0aGlzLl9zZWxlY3RhYmxlTGlzdC5mb2N1c0l0ZW0oZS5jdXJyZW50VGFyZ2V0KSxmdW5jdGlvbihlKXtjb25zdCB0PSgwLFZuLnRpY2tlcikoZS5zeW1ib2wpO3puKHsuLi5lLHNob3J0TmFtZTp0fSxRbixxbi5UYWJsZSl9KHt2aWV3OnRoaXMsc3ltYm9sOnQsZX0pLGUucHJldmVudERlZmF1bHQoKX0pKX1fb25TeW1ib2xzTmF2aWdhdGUoZSl7Y29uc3QgdD1lLmN1cnNvcjtpZih0KXtpZihUcmFkaW5nVmlldy5vbkNoYXJ0UGFnZSYmdGhpcy5fc2V0QWN0aXZlRWxlbSh0KSxbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXModGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkpcmV0dXJuO2NvbnN0IGU9dC5kYXRhc2V0LnN5bWJvbDt0aGlzLl9jaGFuZ2VTeW1ib2woZSl9fV9jaGFuZ2VTeW1ib2woZSl7Y29uc3QgdD1zcy5wcmV2ZW50RmVlZEJ5U3ltYm9sO3NzLnNldFByZXZlbnRGZWVkQnlTeW1ib2woITApLHNzLnNldFN5bWJvbEFuZExvZ0luaXRpYXRvcihlLCJzY3JlZW5lciIpLHNzLnNldFByZXZlbnRGZWVkQnlTeW1ib2wodCksdGhpcy5fbW9kZWwudHJhY2tFdmVudCgiQ2hhbmdlIHN5bWJvbCBmcm9tIHRhYmxlIil9X3NldEFjdGl2ZUVsZW0oZSl7dGhpcy5fYWN0aXZlRWxlbSYmdGhpcy5fYWN0aXZlRWxlbS5jbGFzc0xpc3QucmVtb3ZlKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIiksZT8oZS5jbGFzc0xpc3QuYWRkKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIiksdGhpcy5fYWN0aXZlRWxlbT1lKTp0aGlzLl9hY3RpdmVFbGVtPW51bGx9X29uU3ltYm9sQ29uZmlybShlKXtlLml0ZW1zLmZvckVhY2goKHQ9Pntjb25zdCBvPXQuZGF0YXNldC5zeW1ib2w7byYmdGhpcy5fbGlmZWN5Y2xlLmFmdGVyU3ltYm9sQ29uZmlybShvLGUuYWN0aW9uKX0pKX1jaGFuZ2VFYXJuaW5nc1BlcmlvZChlLHQ9ITEpe2lmKHRoaXMuX3NlbGVjdGVkUGVyaW9kSWQ9PT1lKXJldHVybjt0aGlzLl9zZWxlY3RlZFBlcmlvZElkPWUsdGhpcy51cGRhdGVQZXJpb2RQaWNrZXIoKSx0aGlzLl9tb2RlbC5hcHBseUZpZWxkU2V0Q29udGVudChtKTsidG9tb3Jyb3ciPT09ZXx8Im5leHRfd2VlayI9PT1lPyhJdC5lYXJuaW5nc19wZXJfc2hhcmVfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCxJdC5lcHNfc3VycHJpc2VfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCxJdC5lcHNfc3VycHJpc2VfcGVyY2VudF9mcS5tdXRhdGVEaXNwbGF5VmFsdWU9KCk9PnF0LEl0LnJldmVudWVfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCk6VXQoKSx0fHx0aGlzLl9zZXROZXdFYXJuaW5nc1BlcmlvZChlLCgoKT0+e3RoaXMuX3Jlc2V0RmllbGQoImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiksdGhpcy5fbW9kZWwucHJldmVudFByZXZTY2FuUmVxdWVzdCgpLHRoaXMuX21vZGVsLnVwZGF0ZSgpfSkpfV9zZXROZXdFYXJuaW5nc1BlcmlvZChlLHQ9KCk9Pnt9KXtjb25zdCBvPUl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnNvdXJjZVJhbmdlLmZpbmQoKHQ9PnQua2V5PT09ZSkpO28mJihJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZS52YWx1ZT1vLm5hbWUsdCgpKX1nZXQgdG90YWxDb3VudCgpe3JldHVybiB0aGlzLl90b3RhbENvdW50fWdldCBpdGVtc0NvdW50KCl7cmV0dXJuIHRoaXMuX2l0ZW1zQ291bnR9c2V0IGl0ZW1zQ291bnQoZSl7dGhpcy5faXRlbXNDb3VudD0rZX1zZXQgbGFzdFNldElkKGUpe3RoaXMuX2xhc3RTZXRJZD1lfWdldCBwb3B1cHMoKXtyZXR1cm4gdGhpcy5fcG9wdXBzfWlzRW5kUmVhY2hlZCgpe3JldHVybiAwPT09dGhpcy5fZGF0YS5sZW5ndGh8fCJudW1iZXIiPT10eXBlb2YgdGhpcy5fdG90YWxDb3VudCYmdGhpcy5fZGF0YS5sZW5ndGg+PXRoaXMuX3RvdGFsQ291bnR9ZGlzcGxheShlLHQsbyl7aWYodGhpcy5faGlkZVNwaW5uZXIoKSx0aGlzLl9zZXRGaWx0ZXJzQ291bnQoKSx0aGlzLl9zZXRNYXJrZXRzQ291bnQoKSx0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmlsdGVyU2V0Q2hhbmdlZCgpKSwhZXx8ZS5lcnJvcnx8IWUuZGF0YSYmIWUuc3ltYm9scykiYWJvcnQiIT09byYmKHRoaXMucmVzZXRJdGVtcygpLHRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKFtdKSx0aGlzLl9yZXNldEZpZWxkKCJuYW1lIiksImVycm9yIj09PW8/bHMubG9nRXJyb3IoZS5yZXNwb25zZVRleHR8fG8pOmUmJmUuZXJyb3ImJmxzLmxvZ0Vycm9yKGUuZXJyb3IpKTtlbHNle2xldCBvPWUuZGF0YXx8ZS5zeW1ib2xzO2ZvcihsZXQgZT0wO2U8by5sZW5ndGg7KytlKW9bZV0uZiYmKG9bZV0uZD1vW2VdLmYpO2lmKHZvaWQgMD09PXRoaXMuX3RvdGFsQ291bnQpdGhpcy5fYnJpZGdlLnRhYmxlX3N0eWxlfHx0aGlzLmZpeFN0YW5kYWxvbmVXaWR0aCgpLHRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKG8pLHRoaXMuX2RhdGE9bztlbHNle2NvbnN0IGU9dGhpcy5fZ2V0SW52YWxpZGF0ZWRGcm9tKG8pOzA9PT1lPyh0aGlzLl9kYXRhPW8sCnRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKG8pKTooZT4wPyhvPW8uc2xpY2UoZSksdGhpcy5fZGF0YT10aGlzLl9kYXRhLnNsaWNlKDAsZSksdGhpcy5fdGFibGUuY2xlYXJEYXRhKGUpKTpvPW8uc2xpY2UodGhpcy5fZGF0YS5sZW5ndGgpLHRoaXMuX2RhdGE9dGhpcy5fZGF0YS5jb25jYXQobyksdGhpcy5fdGFibGUuc2V0Q29sdW1uc01hcCh0KSx0aGlzLl90YWJsZS5hcHBlbmQobykpfXNldFRpbWVvdXQoKCgpPT50aGlzLmhpZ2hsaWdodENoYW5nZXMoKSksMCksdGhpcy5fdG90YWxDb3VudD1lLnRvdGFsQ291bnQsdGhpcy5fcmVzZXRTZWFyY2hDb3VudCgpLHRoaXMuX21vZGVsLl9pbml0aWFsU29ydEZpZWxkJiYodGhpcy5fbW9kZWwuX3NvcnRGaWVsZC5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5faW5pdGlhbFNvcnRGaWVsZCwhMCksdGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24uc2V0VmFsdWUodGhpcy5fbW9kZWwuX2luaXRpYWxTb3J0RGlyZWN0aW9uLCEwKSxkZWxldGUgdGhpcy5fbW9kZWwuX2luaXRpYWxTb3J0RmllbGQsZGVsZXRlIHRoaXMuX21vZGVsLl9pbml0aWFsU29ydERpcmVjdGlvbil9fV9nZXRJbnZhbGlkYXRlZEZyb20oZSl7Zm9yKGxldCB0PTA7dDx0aGlzLl9kYXRhLmxlbmd0aDsrK3Qpe2lmKCFlW3RdfHx0aGlzLl9kYXRhW3RdLnMhPT1lW3RdLnN8fCFlW3RdLmQpcmV0dXJuIHQ7Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhW3RdLmQubGVuZ3RoOysrbylpZih0aGlzLl9kYXRhW3RdLmRbb10hPT1lW3RdLmRbb10pcmV0dXJuIHR9cmV0dXJuLTF9Z2V0IHRhYmxlKCl7cmV0dXJuIHRoaXMuX3RhYmxlfXJlc2V0SXRlbXMoKXtkZWxldGUgdGhpcy5fdG90YWxDb3VudCx0aGlzLl9kYXRhPVtdfV9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCl7Y29uc3QgZT10aGlzLl9tb2RlbC5jdXJyZW50RmlsdGVyU3RhdGUoKTtyZXR1cm4gZS5maWx0ZXJzJiZPYmplY3Qua2V5cyhlLmZpbHRlcnMpLmxlbmd0aHx8MH1fc2V0RmlsdGVyc0NvdW50KCl7Y29uc3QgZT10aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCk7dGhpcy4kZmlsdGVyQ291bnQudGV4dChgJHtlfWApLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCFlKX1fc2V0TWFya2V0c0NvdW50KCl7Y29uc3QgZT10aGlzLl9tb2RlbC5tYXJrZXRzLmxlbmd0aDt0aGlzLiRtYXJrZXRDb3VudCYmdGhpcy4kbWFya2V0Q291bnQudGV4dChgJHtlfWApLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLDE9PT1lfHx0aGlzLl9tb2RlbC5pc0VudGlyZVdvcmxkKX1fY29uY2F0RmllbGRWYWx1ZXMoZSx0KXt2YXIgbz1bXTtyZXR1cm4gZS5mb3JFYWNoKChlPT57by5wdXNoKHRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMoZSx0KSl9KSksby5qb2luKCIsICIpfV9nZXRGaWVsZFZhbHVlRnJvbVJhbmdlVGl0bGVzKGUsdCxvPSExKXtyZXR1cm4gSXRbdF0ucmFuZ2VUaXRsZXMmJkl0W3RdLnJhbmdlVGl0bGVzW2VdP0l0W3RdLnJhbmdlVGl0bGVzW2VdW28/MTowXToic3RyaW5nIiE9dHlwZW9mIGU/IiI6ZX1maWVsZFZhbHVlU3RyaW5nKGUpe2NvbnN0IHQ9SXRbZV0udmFsdWU7aWYobXQodCl8fCExPT09dClyZXR1cm4iIjtpZigic2VsZWN0Ij09PUl0W2VdLmNvbnRyb2wpe2NvbnN0IGk9Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaXRlbXMiLGNvdW50OnQubGVuZ3RoLGNvbnRleHQ6ImNvbWJvYm94X2lucHV0In0sbyg5ODM3NjQpKS5mb3JtYXQoe251bWJlcjp0Lmxlbmd0aH0pO3JldHVybiBBcnJheS5pc0FycmF5KHQpP2A8c3BhbiB0aXRsZT0iJHt0aGlzLl9jb25jYXRGaWVsZFZhbHVlcyh0LGUpfSIgY2xhc3M9ImFwcGx5LWNvbW1vbi10b29sdGlwIj4ke2l9PC9zcGFuPmA6dGhpcy5fZ2V0RmllbGRWYWx1ZUZyb21SYW5nZVRpdGxlcyh0LGUsImRyIj09PXQmJiJuYW1lIj09PWUpfXJldHVybiJyYW5nZSI9PT1JdFtlXS5jb250cm9sP0FycmF5LmlzQXJyYXkodCk/dGhpcy5fcmFuZ2VMZWZ0VmFsdWUoZSkrIiDigJMgIit0aGlzLl9yYW5nZVJpZ2h0VmFsdWUoZSk6IiI6InRvZ2dsZSI9PT1JdFtlXS5jb250cm9sPy0xIT09ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImhpZ2giKT9fLnQobnVsbCx2b2lkIDAsbygzMDU0MDYpKTpfLnQobnVsbCx2b2lkIDAsbyg1MzgyNTQpKToiY29uZGl0aW9uIiE9PUl0W2VdLmNvbnRyb2x8fG10KHQub3BlcmF0b3IpfHxtdCh0LnZhbHVlKT8iIjoiaW5fcmFuZ2UiPT09dC5vcGVyYXRvcj90LnZhbHVlWzBdPT09dC52YWx1ZVsxXT9jcy5lcXVhbCsiICIrdC52YWx1ZVswXTotMWUxMDA9PT10LnZhbHVlWzBdfHx0aGlzLl9pc0xlc3NUaGVuTWluKHQudmFsdWVbMF0sZSk/Y3MubGVzcysiICIrdC52YWx1ZVsxXToxZTEwMD09PXQudmFsdWVbMV18fHRoaXMuX2lzR3JlYXRlclRoZW5NYXgodC52YWx1ZVsxXSxlKT9jcy5ncmVhdGVyKyIgIit0LnZhbHVlWzBdOnRoaXMuX3JhbmdlTGVmdFZhbHVlKGUpKyIg4oCTICIrdGhpcy5fcmFuZ2VSaWdodFZhbHVlKGUpOiJub3RfaW5fcmFuZ2UiPT09dC5vcGVyYXRvcj90LnZhbHVlWzBdPT09dC52YWx1ZVsxXT9jcy5uZXF1YWwrIiAiK3QudmFsdWVbMF06LTFlMTAwPT09dC52YWx1ZVswXXx8dGhpcy5faXNMZXNzVGhlbk1pbih0LnZhbHVlWzBdLGUpP2NzLmdyZWF0ZXIrIiAiK3QudmFsdWVbMV06MWUxMDA9PT10LnZhbHVlWzFdfHx0aGlzLl9pc0dyZWF0ZXJUaGVuTWF4KHQudmFsdWVbMV0sZSk/Y3MubGVzcysiICIrdC52YWx1ZVswXTpgJHtjcy5ub3RfaW5fcmFuZ2V9ICR7dGhpcy5fcmFuZ2VMZWZ0VmFsdWUoZSl9IOKAkyAke3RoaXMuX3JhbmdlUmlnaHRWYWx1ZShlKX1gOmNzW3Qub3BlcmF0b3JdKyIgIisoIm51bWJlciI9PXR5cGVvZiB0LnZhbHVlP3QudmFsdWU6SXRbdC52YWx1ZV0udGl0bGUpfXVwZGF0ZVRvb2xiYXJCdXR0b25zKCl7dGhpcy5fYnJpZGdlLnBlcmlvZF9waWNrZXI/dGhpcy51cGRhdGVQZXJpb2RQaWNrZXIoKTp0aGlzLl9icmlkZ2Uub3JpZ2luYWxTdGFuZGFsb25lJiZ0aGlzLnVwZGF0ZU9sZEZhdm9yaXRlc1Rvb2xiYXIoKX11cGRhdGVPbGRGYXZvcml0ZXNUb29sYmFyKCl7CnRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAmJnRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAuaGlkZSgpLHRoaXMuJGZhdm9yaXRlc0Jhci5maW5kKCIuanMtZmF2b3JpdGUtaXRlbSIpLnJlbW92ZSgpO2xldCBlPTA7dGhpcy5oaWRkZW5GYXZvcml0ZXM9W107Y29uc3QgdD10aGlzLiRmYXZvcml0ZXNCYXIud2lkdGgoKSxpPSJmb3JleCIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlfHx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scz80MDoxNjAsbj1lPT5lPT09dGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKTtpZih0aGlzLl9tb2RlbC5mYXZvcml0ZUZpZWxkU2V0cyl7bGV0IG89bnVsbDtmb3IobGV0IHI9MDtyPHRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmxlbmd0aDsrK3Ipe2NvbnN0IHM9dGhpcy5fbW9kZWwuZmF2b3JpdGVGaWVsZFNldHNbcl0sYT10aGlzLl9tb2RlbC5nZXRGaWVsZFNldEJ5SWQocyk7aWYoIWEpcmV0dXJuO2NvbnN0IGw9cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtIGpzLWZhdm9yaXRlLWl0ZW0iIGRhdGEtc2V0PSIke2EuaWR9Ij5cblx0XHRcdFx0XHQkeygwLEVpLmh0bWxFc2NhcGUpKGEudGl0bGUpfVxuXHRcdFx0XHQ8L2Rpdj5gKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZSIsbihhLmlkKSk7bz9sLmluc2VydEFmdGVyKG8pOmwucHJlcGVuZFRvKHRoaXMuJGZhdm9yaXRlc0Jhcik7bGV0IGM9bC5vdXRlcldpZHRoKCk7bFswXS5zY3JvbGxXaWR0aD5jJiZsLmFkZENsYXNzKCJhcHBseS1jb21tb24tdG9vbHRpcCIpLmF0dHIoInRpdGxlIixhLnRpdGxlKSxjKz05LGUrPWMsZStpPnQ/KGUtPWMsbC5yZW1vdmUoKSx0aGlzLmhpZGRlbkZhdm9yaXRlcy5wdXNoKHtpZDphLmlkLHRpdGxlOmEudGl0bGV9KSk6bz1sfX1pZih0aGlzLmhpZGRlbkZhdm9yaXRlcy5sZW5ndGgpe2lmKHRoaXMuaGlkZGVuRmF2b3JpdGVzLmxlbmd0aD09PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmxlbmd0aCYmdGhpcy4kaGlkZGVuRmF2b3JpdGVzQnV0dG9uV3JhcClyZXR1cm4gdm9pZCB0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwLmhpZGUoKTtpZih0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwKXRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAudHJpZ2dlcigicmVzZXRDb250ZW50Iikuc2hvdygpO2Vsc2V7Y29uc3QgZT1ycyhgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0gdHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmUgYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtZml4ZWQiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDI2MDYwNSkpfSI+YCkuYXBwZW5kVG8odGhpcy4kZmF2b3JpdGVzQmFyKTt0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwPXRoaXMuX3BvcHVwcy5zZXRIaWRkZW5GYXZvcml0ZXNQb3B1cChlLCgoKT0+dGhpcy5oaWRkZW5GYXZvcml0ZXMpLG4sKGU9PnRoaXMudXBkYXRlU2V0SWQoZSwhMSx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scykpKX19fXVwZGF0ZVNldElkKGUsdCxvKXt0aGlzLl9sYXN0U2V0SWQ9ZSx0aGlzLl9tb2RlbC5hcHBseUZpZWxkU2V0KGUsdCxvKX11cGRhdGVOZXdGYXZvcml0ZXNUb29sYmFyKCl7aWYoIXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzKXJldHVybjtjb25zdCBlPXtpdGVtczp0aGlzLl9tb2RlbC5mYXZvcml0ZUZpZWxkU2V0cy5tYXAoKGU9Pih7dGl0bGU6dGhpcy5fbW9kZWwuZ2V0RmllbGRTZXRCeUlkKGUpLnRpdGxlfSkpKSxhY3RpdmVJdGVtOnRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YodGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKSksb25TZWxlY3Q6ZT0+e2NvbnN0IHQ9dGhpcy5fbW9kZWwuZmF2b3JpdGVGaWVsZFNldHNbZV07dGhpcy5fbGFzdFNldElkIT09dCYmKHRoaXMuX21vZGVsLnByZXZlbnRQcmV2U2NhblJlcXVlc3QoKSx0aGlzLnVwZGF0ZVNldElkKHQsITEsdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpKX0sY2xhc3NOYW1lOiJ0di1zY3JlZW5lci10b29sYmFyX19uby1zY3JvbGwtY2hvaWNlci1yZWFjdC1yb290IixzZWxlY3RlZEl0ZW1DbGFzc05hbWU6InR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QtZHJvcGRvd24taXRlbS0tc2VsZWN0ZWQifTt2bih0aGlzLiRmYXZvcml0ZXNCYXIuZ2V0KDApLGUpfXVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKXt0aGlzLl9vbldpZGdldHx8KHRoaXMuX2JyaWRnZS5vcmlnaW5hbFN0YW5kYWxvbmU/dGhpcy51cGRhdGVPbGRGYXZvcml0ZXNUb29sYmFyKCk6dGhpcy51cGRhdGVOZXdGYXZvcml0ZXNUb29sYmFyKCkpfXVwZGF0ZVBlcmlvZFBpY2tlcigpe2NvbnN0IGU9e2l0ZW1zOnRoaXMuX3BlcmlvZFBpY2tlckJ1dHRvbnMubWFwKChlPT4oe3RpdGxlOmUudGl0bGV9KSkpLGFjdGl2ZUl0ZW06dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucy5maW5kSW5kZXgoKGU9PmUuaWQ9PT10aGlzLl9zZWxlY3RlZFBlcmlvZElkKSksb25TZWxlY3Q6ZT0+e2NvbnN0IHQ9dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9uc1tlXS5pZDt0aGlzLmNoYW5nZUVhcm5pbmdzUGVyaW9kKHQpfSxjbGFzc05hbWU6InR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QiLHNlbGVjdGVkSXRlbUNsYXNzTmFtZToidHYtc2NyZWVuZXItdG9vbGJhcl9fbm8tc2Nyb2xsLWNob2ljZXItcmVhY3Qtcm9vdC1kcm9wZG93bi1pdGVtLS1zZWxlY3RlZCJ9O3ZuKHRoaXMuJHBlcmlvZFBpY2tlci5nZXQoMCksZSl9X2dldFdhdGNobGlzdCgpe2lmKHdpbmRvdy53aWRnZXRiYXIpe2NvbnN0IHQ9d2luZG93LndpZGdldGJhci5zZXRQYWdlKCJiYXNlIik7bGV0IG87Zm9yKHZhciBlPTA7ZTx0LndpZGdldHMubGVuZ3RoO2UrKylpZigid2F0Y2hsaXN0Ij09PXQud2lkZ2V0c1tlXS50eXBlKXtvPXQud2lkZ2V0c1tlXS53aWRnZXRPYmplY3QKO2JyZWFrfXJldHVybiBvfXJldHVybiBudWxsfWFkanVzdFRvb2xiYXJXaWR0aChlKXtjb25zdCB0PXRoaXMuJGZpZWxkU2V0c0J1dHRvblswXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihlJiYibW91c2VlbnRlciI9PT1lLnR5cGUpdGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLHQud2lkdGgpO2Vsc2V7dGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLCJhdXRvIik7Y29uc3QgZT10aGlzLiRmaWVsZFNldHNCdXR0b25bMF0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLHQud2lkdGgpLHRoaXMuJGZpZWxkU2V0c0J1dHRvblswXS5vZmZzZXRXaWR0aCx0aGlzLiRmaWVsZFNldHNCdXR0b24uY3NzKCJ3aWR0aCIsZS53aWR0aCl9fWluaXRGaWx0ZXJIYW5kbGVycyhlKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgZT17fSx0PWlpLlVzZXJBY3Rpb25TdGF0ZS5UeXBlO3JldHVybihvLGksbixyKT0+e2xldCBzPW47ZS5oYXNPd25Qcm9wZXJ0eShvKSYmKGVbb10uc3RhdGU9PT10JiYocz10KSxjbGVhclRpbWVvdXQoZVtvXS5zZW5kZXIpLG49PT1paS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2smJiExPT09aSl8fChlW29dPXtzdGF0ZTpzLHNlbmRlcjpzZXRUaW1lb3V0KCgoKT0+KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHlpKGkudG9TdHJpbmcoKSxuLG8scikpKSwxZTQpfSl9fSgpLG89KGUsdCk9PnQucmVkdWNlKCgodCxvKT0+KG89PT1lJiYoby09MSksdCs9TWF0aC5mbG9vcihvL2UvKDEvNCkpKSksIiIpO2Uub2ZmKCJjaGFuZ2Uub3AiKS5vbigiY2hhbmdlLm9wIiwic2VsZWN0LmpzLWZpbHRlci1vcGVyYXRvciIsKG89Pntjb25zdCBpPXJzKG8udGFyZ2V0KSxuPWkuYXR0cigibmFtZSIpO0l0W25dLnZhbHVlfHwoSXRbbl0udmFsdWU9e30pLEl0W25dLnZhbHVlLm9wZXJhdG9yPWkudmFsKCksdGhpcy5fcmVzZXRGaWVsZChuKSx0aGlzLl9tb2RlbC51cGRhdGUoKTtjb25zdHtvcGVyYXRvcjpyfT1JdFtuXS52YWx1ZSxzPWUuaGFzQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkIik/ImZpbHRlcl9kaWFsb2ciOiJjb2x1bW5zIjt0KG4scixpaS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2sscyl9KSksZS5vZmYoImNoYW5nZS5vcC12YWwiKS5vbigiY2hhbmdlLm9wLXZhbCIsInNlbGVjdC5qcy1maWx0ZXItb3BlcmF0b3ItdmFsdWUiLChvPT57Y29uc3QgaT1ycyhvLnRhcmdldCkse3ZhbHVlOm59PW8udGFyZ2V0LHI9aS5hdHRyKCJuYW1lIik7SXRbcl0udmFsdWV8fChJdFtyXS52YWx1ZT17fSksSXRbcl0udmFsdWUudmFsdWU9aS52YWwoKSx0aGlzLl9yZXNldEZpZWxkKHIpLHRoaXMuX21vZGVsLnVwZGF0ZSgpO2xldHtvcGVyYXRvcjpzfT1JdFtyXS52YWx1ZTtjb25zdCBhPWUuaGFzQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkIik/ImZpbHRlcl9kaWFsb2ciOiJjb2x1bW5zIjsiIiE9PW4mJihzKz0iLiIrbiksdChyLHMsaWkuVXNlckFjdGlvblN0YXRlLkNsaWNrLGEpfSkpLGUub2ZmKCJ1cGRhdGUub3AtYXJiLXZhbCIpLm9uKCJ1cGRhdGUub3AtYXJiLXZhbCIsImlucHV0LmpzLWZpbHRlci1vcGVyYXRvci1hcmItdmFsdWUiLChvPT57Y29uc3QgaT1ycyhvLnRhcmdldCksbj1pLmF0dHIoIm5hbWUiKTtJdFtuXS52YWx1ZXx8KEl0W25dLnZhbHVlPXt9KTtsZXQgcj0raS52YWwoKTtpc0Zpbml0ZShyKSYmIW10KGkudmFsKCkpfHwocj1udWxsKSxJdFtuXS52YWx1ZS52YWx1ZT1yLHRoaXMuX3Jlc2V0RmllbGQobiksdGhpcy5fbW9kZWwudXBkYXRlKCk7Y29uc3R7b3BlcmF0b3I6c309SXRbbl0udmFsdWUsYT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyI7dChuLHMsaWkuVXNlckFjdGlvblN0YXRlLkNsaWNrLGEpfSkpO2NvbnN0IGk9ZS5maW5kKCJpbnB1dC5qcy1maWx0ZXItb3BlcmF0b3ItYmV0d2Vlbi1sZWZ0Iiksbj1lLmZpbmQoImlucHV0LmpzLWZpbHRlci1vcGVyYXRvci1iZXR3ZWVuLXJpZ2h0Iikscj1lPT57Y29uc3QgdD1ycyhlLnRhcmdldCkuYXR0cigibmFtZSIpO0l0W3RdLnZhbHVlfHwoSXRbdF0udmFsdWU9e30pO2xldCBvPStpLnZhbCgpOyghaXNGaW5pdGUobyl8fG10KGkudmFsKCkpfHx0aGlzLl9pc0xlc3NUaGVuTWluKG8sdCl8fHRoaXMuX2lzR3JlYXRlclRoZW5NYXgobyx0KSkmJihvPS0xZTEwMCk7bGV0IHI9K24udmFsKCk7aWYoKCFpc0Zpbml0ZShyKXx8bXQobi52YWwoKSl8fHRoaXMuX2lzTGVzc1RoZW5NaW4ocix0KXx8dGhpcy5faXNHcmVhdGVyVGhlbk1heChyLHQpKSYmKHI9MWUxMDApLG8+cil7Y29uc3QgZT1vO289cixyPWV9SXRbdF0udmFsdWUudmFsdWU9W28scl0sLTFlMTAwPT09SXRbdF0udmFsdWUudmFsdWVbMF0mJjFlMTAwPT09SXRbdF0udmFsdWUudmFsdWVbMV0mJihJdFt0XS52YWx1ZS52YWx1ZT0iIiksdGhpcy5fcmVzZXRGaWVsZCh0KSx0aGlzLl9tb2RlbC51cGRhdGUoKX07ZS5vZmYoInVwZGF0ZS5vcC1iZXR3ZWVuLWxlZnQtdmFsIikub24oInVwZGF0ZS5vcC1iZXR3ZWVuLWxlZnQtdmFsIiwiaW5wdXQuanMtZmlsdGVyLW9wZXJhdG9yLWJldHdlZW4tbGVmdCIsciksZS5vZmYoInVwZGF0ZS5vcC1iZXR3ZWVuLXJpZ2h0LXZhbCIpLm9uKCJ1cGRhdGUub3AtYmV0d2Vlbi1yaWdodC12YWwiLCJpbnB1dC5qcy1maWx0ZXItb3BlcmF0b3ItYmV0d2Vlbi1yaWdodCIsciksZS5vZmYoImNoYW5nZS50b2dnbGUtdmFsIikub24oImNoYW5nZS50b2dnbGUtdmFsIiwiaW5wdXQuanMtZmlsdGVyLXRvZ2dsZSIsKG89Pntjb25zdCBpPXJzKG8udGFyZ2V0KSxuPWkuYXR0cigibmFtZSIpO0l0W25dLnZhbHVlPWkucHJvcCgiY2hlY2tlZCIpLHRoaXMuX3Jlc2V0RmllbGQobiksdGhpcy5fbW9kZWwudXBkYXRlKCk7Y29uc3Qgcj1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyI7dChuLGkucHJvcCgiY2hlY2tlZCIpLGlpLlVzZXJBY3Rpb25TdGF0ZS5DbGljayxyKQp9KSksZS5vZmYoImNsaWNrLnJlc2V0Iikub24oImNsaWNrLnJlc2V0IiwiLmpzLXJlc2V0IiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJmaWVsZCIpO3RoaXMucmVzZXRGaWx0ZXIodCl9KSk7bGV0IHM9IiI7ZS5vZmYoImtleWRvd24uZmlsdGVySW5wdXQiKS5vbigia2V5ZG93bi5maWx0ZXJJbnB1dCIsImlucHV0Om5vdCguanMtc2VhcmNoLWlucHV0KTpub3QoLmpzLWZpbHRlci1vcGVyYXRvci1hcmItdmFsdWUpIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KTtzPXQudmFsKCl9KSksZS5vZmYoImtleXVwLmZpbHRlcklucHV0Iikub24oImtleXVwLmZpbHRlcklucHV0IiwiaW5wdXQ6bm90KC5qcy1zZWFyY2gtaW5wdXQpOm5vdCguanMtZmlsdGVyLW9wZXJhdG9yLWFyYi12YWx1ZSkiLChpPT57Y29uc3Qgbj1ycyhpLmN1cnJlbnRUYXJnZXQpLHI9bi5kYXRhKCJmaWVsZCIpLGE9bi5kYXRhKCJib3VuZCIpO2lmKHZvaWQgMD09PXJ8fHZvaWQgMD09PWF8fHM9PT1uLnZhbCgpKXJldHVybjtjb25zdCBsPVt0aGlzLnBhcnNlUmFuZ2VWYWx1ZShyLG4udmFsKCksYSksSXRbcl0udmFsdWU/SXRbcl0udmFsdWVbMS1hXTpJdFtyXS5yYW5nZVsxLWFdXS5zb3J0KHRoaXMuX21vZGVsLm51bWVyaWNTb3J0ZXIpLGM9dGhpcy5hcHByb3hpbWF0ZVNsaWRlclZhbHVlcyhyLGwpO2lmKGUuZmluZChgLnR2LXNsaWRlcltkYXRhLWZpZWxkPSIke3J9Il1gKS5zbGlkZXIoInZhbHVlcyIsYyksSXRbcl0udmFsdWU9bCx0aGlzLl9yZXNldEZpZWxkKHIpLHRoaXMuX21vZGVsLnVwZGF0ZSgpLEl0W3JdLnZhbHVlcyl7Y29uc3QgaT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIsbj1vKEl0W3JdLnZhbHVlcy5sZW5ndGgrMSxjKTt0KHIsbixpaS5Vc2VyQWN0aW9uU3RhdGUuVHlwZSxpKX19KSk7ZS5maW5kKCIudHYtc2xpZGVyIikub2ZmKCJzbGlkZWNoYW5nZSIpLm9uKCJzbGlkZWNoYW5nZSIsKChlLHQpPT57Y29uc3Qgbz1ycyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoImZpZWxkIik7SXRbb10udmFsdWVzPzA9PT10LnZhbHVlc1swXSYmdC52YWx1ZXNbMV09PT1JdFtvXS52YWx1ZXMubGVuZ3RoKzE/SXRbb10udmFsdWU9bnVsbDpJdFtvXS52YWx1ZT1bMD09PXQudmFsdWVzWzBdPy0xZTEwMDpwYXJzZUludChJdFtvXS52YWx1ZXNbdC52YWx1ZXNbMF0tMV0sMTApLHQudmFsdWVzWzFdPT09SXRbb10udmFsdWVzLmxlbmd0aCsxPzFlMTAwOnBhcnNlSW50KEl0W29dLnZhbHVlc1t0LnZhbHVlc1sxXS0xXSwxMCldOnQudmFsdWVzWzBdPT09SXRbb10ucmFuZ2VbMF0mJnQudmFsdWVzWzFdPT09SXRbb10ucmFuZ2VbMV0/SXRbb10udmFsdWU9bnVsbDpJdFtvXS52YWx1ZT10LnZhbHVlcyx0aGlzLl9yZXNldEZpZWxkKG8pLHRoaXMuX21vZGVsLnVwZGF0ZSgpfSkpLm9mZigic2xpZGUiKS5vbigic2xpZGUiLCgoZSx0KT0+e2NvbnN0IG89cnMoZS5jdXJyZW50VGFyZ2V0KSxpPW8uZGF0YSgiZmllbGQiKTtsZXQgbj10LnZhbHVlc1swXSxyPXQudmFsdWVzWzFdO2lmKG49PT1yKXJldHVybiExO0l0W2ldLnZhbHVlcyYmKG49MD09PXQudmFsdWVzWzBdP3RoaXMuX3JhbmdlTWluVmFsdWUoaSk6enQoSXRbaV0sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkuZm9ybWF0KEl0W2ldLnZhbHVlc1t0LnZhbHVlc1swXS0xXSkscj10LnZhbHVlc1sxXT09PUl0W2ldLnZhbHVlcy5sZW5ndGgrMT90aGlzLl9yYW5nZU1heFZhbHVlKGkpOnp0KEl0W2ldLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLmZvcm1hdChJdFtpXS52YWx1ZXNbdC52YWx1ZXNbMV0tMV0pKSx0LnZhbHVlPT09dC52YWx1ZXNbMF0/by5maW5kKCIudHYtc2xpZGVyX19sYWJlbC0tbGVmdCIpLnZhbChuKToodC52YWx1ZT09PXQudmFsdWVzWzFdfHxvLmZpbmQoIi50di1zbGlkZXJfX2xhYmVsLS1sZWZ0IikudmFsKG4pLG8uZmluZCgiLnR2LXNsaWRlcl9fbGFiZWwtLXJpZ2h0IikudmFsKHIpKX0pKS5vbigic2xpZGVjaGFuZ2UiLCgoaSxuKT0+e2NvbnN0IHI9cnMoaS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJmaWVsZCIpO2lmKEl0W3JdLnZhbHVlcyl7Y29uc3QgaT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIscz1vKEl0W3JdLnZhbHVlcy5sZW5ndGgrMSxuLnZhbHVlcyk7dChyLHMsaWkuVXNlckFjdGlvblN0YXRlLlNsaWRlLGkpfX0pKX1wYXJzZVJhbmdlVmFsdWUoZSx0LG8pe2lmKC0xIT09dC5pbmRleE9mKCI8IikpcmV0dXJuIEl0W2VdLnJhbmdlWzBdO2lmKC0xIT09dC5pbmRleE9mKCI+IikpcmV0dXJuIEl0W2VdLnJhbmdlWzFdO3Q9dC5yZXBsYWNlKC8lL2csIiIpO2xldCBpPXp0KEl0W2VdLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLnBhcnNlKHQpO2lmKCFpLnJlcylyZXR1cm4gSXRbZV0ucmFuZ2Vbb107Y29uc3Qgbj1pLnZhbHVlfHwwPT09aS52YWx1ZT9pLnZhbHVlOmkucHJpY2U7cmV0dXJuIGk9TWF0aC5taW4oSXRbZV0ucmFuZ2VbMV0sTWF0aC5tYXgoSXRbZV0ucmFuZ2VbMF0sbikpLGl9YXBwcm94aW1hdGVTbGlkZXJWYWx1ZXMoZSx0KXtjb25zdCBvPVswLDBdLGk9W10uY29uY2F0KC0xZTEwMCxJdFtlXS52YWx1ZXMsMWUxMDApO2ZvcihsZXQgZT0wO2U8MjtlKyspZm9yKGxldCBuPTA7bjxpLmxlbmd0aDtuKyspTWF0aC5hYnModFtlXS1pW25dKTxNYXRoLmFicyh0W2VdLWlbb1tlXV0pJiYob1tlXT1uKTtyZXR1cm4gb311cGRhdGVGaWx0ZXJTZWFyY2goKXtjb25zdCBlPXRoaXMuX2RpYWxvZy4kZmllbGRTZWFyY2hJbnB1dC52YWwoKS50cmltKCkucmVwbGFjZSgvXixccyp8XHMqLCQvLCIiKS50b0xvd2VyQ2FzZSgpLnNwbGl0KC9ccyosXHMqLyk7dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAuZmluZCgiLmpzLWZpbHRlci1maWVsZCIpLnJlbW92ZUNsYXNzKCJqcy1mb3VuZCIpO2NvbnN0IHQ9dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAuZmluZCgiLmpzLWZpbHRlcnMtd3JhcCIpLmdldCgwKTtlLmZvckVhY2goKGU9PnsKbGV0IG89ITE7Zm9yKGNvbnN0IGkgaW4gSXQpe2NvbnN0IG49QXJyYXkuZnJvbSh0LnF1ZXJ5U2VsZWN0b3JBbGwoYC5qcy1maWx0ZXItZmllbGQtJHtpLnJlcGxhY2UoL1xXL2csIiIpfTpub3QoLmpzLWZvdW5kKWApKSxyPUt0KEl0W2ldKSxzPS0xIT09aS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSl8fEJvb2xlYW4ocikmJi0xIT09ci50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSk7cyYmKG89ITApLG4uZm9yRWFjaCgoZT0+e2UuY2xhc3NMaXN0LnRvZ2dsZSgianMtaGlkZGVuIiwhcyksZS5jbGFzc0xpc3QudG9nZ2xlKCJqcy1mb3VuZCIscyl9KSl9b3x8MD09PWUubGVuZ3RofHwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgdmkoZSkpfSkpfXNob3dBY3RpdmVGaWx0ZXJzKCl7aWYodGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXApcmV0dXJuO2NvbnN0IGU9dGhpcy5fZGlhbG9nLl9nZXRBY3RpdmVGaWx0ZXJzKCk7dGhpcy5fZGlhbG9nLnNob3dGaWx0ZXJzRGlhbG9nKCEwKS50aGVuKCgoKT0+e3RoaXMuX2RpYWxvZy4kZGlhbG9nQ29udGFpbmVyLmZpbmQoIi5qcy1zZWFyY2gtaW5wdXQiKS52YWwoZS5qb2luKCIsICIpKSx0aGlzLnVwZGF0ZUZpbHRlclNlYXJjaCgpfSkpfXJlc2V0QWxsRmlsdGVycygpe3RoaXMuX3Jlc2V0QWxsRmlsdGVycz0hMDtmb3IoY29uc3QgZSBpbiBJdCl0aGlzLl9pc0ZpbHRlclZhbHVlRW1wdHkoZSl8fHRoaXMucmVzZXRGaWx0ZXIoZSk7dGhpcy5fZGlhbG9nLiRkaWFsb2dDb250YWluZXIuZmluZCgiLmpzLXNlYXJjaC1pbnB1dCIpLnZhbCgiIiksdGhpcy51cGRhdGVGaWx0ZXJTZWFyY2goKSx0aGlzLl9yZXNldEFsbEZpbHRlcnM9ITF9cmVzZXRGaWx0ZXIoZSl7aWYoIUl0W2VdLnZhbHVlfHwhMT09PUl0W2VdLnJlc2V0dGFibGVGaWx0ZXIpcmV0dXJuO0l0W2VdLnZhbHVlPW51bGw7Y29uc3QgdD10aGlzLl9kaWFsb2cuJGZpbHRlcnNQb3B1cHx8dGhpcy4kaW5wbGFjZUVkaXRvcjtpZih0KWlmKCJzZWxlY3QiPT09SXRbZV0uY29udHJvbCl0LmZpbmQoYC5qcy1maWx0ZXItZmllbGQtJHtlLnJlcGxhY2UoL1xXL2csIiIpfWApLnRyaWdnZXIoInJlc2V0Iik7ZWxzZSBpZigiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wpdC5maW5kKGBbbmFtZT0iJHtlfSJdYCkudmFsKCIiKS50cmlnZ2VyKCJjaGFuZ2UiKTtlbHNlIGlmKCJ0b2dnbGUiPT09SXRbZV0uY29udHJvbCl0LmZpbmQoYFtuYW1lPSIke2V9Il1gKS5wcm9wKCJjaGVja2VkIiwhMSk7ZWxzZSBpZigicmFuZ2UiPT09SXRbZV0uY29udHJvbCl7bGV0IG89SXRbZV0ucmFuZ2U7SXRbZV0udmFsdWVzJiYobz1bMCxJdFtlXS52YWx1ZXMubGVuZ3RoKzFdKSx0LmZpbmQoYC51aS1zbGlkZXJbZGF0YS1maWVsZD0iJHtlfSJdYCkuc2xpZGVyKCJ2YWx1ZXMiLG8pLnRyaWdnZXIoInNsaWRlIix7dmFsdWVzOm99KX10aGlzLl9yZXNldEZpZWxkKGUpLHRoaXMuX21vZGVsLnVwZGF0ZSgpfV9yYW5nZUxlZnRWYWx1ZShlKXtsZXQgdD1JdFtlXS52YWx1ZTtyZXR1cm4iaW5fcmFuZ2UiIT09dC5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT10Lm9wZXJhdG9yfHwodD10LnZhbHVlKSx0aGlzLl9pc0xlc3NUaGVuTWluKHRbMF0sZSk/dGhpcy5fcmFuZ2VNaW5WYWx1ZShlKTp6dChJdFtlXSx0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKS5mb3JtYXQodFswXSl9X3JhbmdlUmlnaHRWYWx1ZShlKXtsZXQgdD1JdFtlXS52YWx1ZTtyZXR1cm4iaW5fcmFuZ2UiIT09dC5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT10Lm9wZXJhdG9yfHwodD10LnZhbHVlKSx0aGlzLl9pc0dyZWF0ZXJUaGVuTWF4KHRbMV0sZSk/dGhpcy5fcmFuZ2VNYXhWYWx1ZShlKTp6dChJdFtlXSx0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKS5mb3JtYXQodFsxXSl9X2lzR3JlYXRlclRoZW5NYXgoZSx0KXtyZXR1cm4gSXRbdF0ucmFuZ2UmJmU+PUl0W3RdLnJhbmdlWzFdfV9pc0xlc3NUaGVuTWluKGUsdCl7cmV0dXJuIEl0W3RdLnJhbmdlJiZlPD1JdFt0XS5yYW5nZVswXX1fcmFuZ2VNaW5WYWx1ZShlKXtyZXR1cm4iPCIrenQoSXRbZV0sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkuZm9ybWF0KEl0W2VdLnZhbHVlc1swXSl9X3JhbmdlTWF4VmFsdWUoZSl7cmV0dXJuIj4iK3p0KEl0W2VdLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLmZvcm1hdChJdFtlXS52YWx1ZXNbSXRbZV0udmFsdWVzLmxlbmd0aC0xXSl9X2hpZ2hsaWdodEFjdGl2ZUl0ZW1zKGUpe2lmKCFlLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCIpLnNpemUoKSlyZXR1cm4gZS5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIiksdm9pZCBlLmZpbmQoIi5qcy1pdGVtLXdyYXAtYW55IC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAiKS5hZGRDbGFzcygiaS1hY3RpdmUiKTtlLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCwgLmpzLWZpbHRlci1jaGVja2JveC1hbnk6Y2hlY2tlZCIpLmVhY2goKGZ1bmN0aW9uKCl7ZS5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIikscnModGhpcykuY2xvc2VzdCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCIpLmFkZENsYXNzKCJpLWFjdGl2ZSIpfSkpfV9jbG9zZURyb3Bkb3duKGUpe2UudHZEcm9wZG93bigiY2xvc2UiKSx0aGlzLiRpbnBsYWNlRWRpdG9yJiZ0aGlzLiRpbnBsYWNlRWRpdG9yLmZvY3VzKCl9X2NyZWF0ZU11bHRpU2VsZWN0SXRlbXMoZSx0LG8saSxuKXtjb25zdCByPShJdFtlXS51c2VEZWZhdWx0UmFuZ2U/SXRbZV0uZGVmYXVsdFJhbmdlOkl0W2VdLnJhbmdlKS5zbGljZSgpLnNvcnQoKCh0LG8pPT57aWYoITEhPT1JdFtlXS5zb3J0U2VsZWN0ZWRGaXJzdCl7Y29uc3QgaT1JdFtlXS52YWx1ZT09PXR8fEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpJiZ+SXRbZV0udmFsdWUuaW5kZXhPZih0KSxuPUl0W2VdLnZhbHVlPT09b3x8QXJyYXkuaXNBcnJheShJdFtlXS52YWx1ZSkmJn5JdFtlXS52YWx1ZS5pbmRleE9mKG8pO2lmKGkmJiFuKXJldHVybi0xCjtpZihuJiYhaSlyZXR1cm4gMX1yZXR1cm4hMT09PUl0W2VdLnNvcnRhYmxlPzA6dD5vPzE6LTF9KSk7Zm9yKGxldCBzPW51bGw9PT1vPzA6LTE7czxyLmxlbmd0aDsrK3Mpe2xldCBhPS0xPT09cz9fczpyW3NdO2NvbnN0IGw9cnMoYDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHthfSIgY2xhc3M9ImpzLWZpbHRlci1jaGVja2JveCR7LTE9PT1zPyItYW55IjoiIn0iJHtJdFtlXS52YWx1ZT09PWF8fEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpJiZ+SXRbZV0udmFsdWUuaW5kZXhPZihhKT8iY2hlY2tlZCI6IiJ9PmApOy0xPT09cyYmKG89bCksLTE9PT1zJiZuJiYoYT1uKTtjb25zdCBjPUl0W2VdLnJhbmdlVGl0bGVzLGQ9YyYmY1thXSYmY1thXVsyXSxoPXRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMoYSxlKTtsZXQgdTt1PWQmJiEwPT09ZC5ub3dyYXA/YDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19sYWJlbC0tbm93cmFwIj4ke2h9PC9zcGFuPmA6ImNvdW50cnkiPT09ZT8oMCxiLnRyaWVzVHJhbnNsYXRlQ291bnRyaWVOYW1lKShoKTooMCxUZS50cmllc1RyYW5zbGF0ZVNjcmVlbmVyRGF0YSkoaCk7Y29uc3QgXz1ycyhgPGRpdiBjbGFzcz0idHYtZHJvcGRvd24tYmVoYXZpb3JfX2l0ZW0ganMtaXRlbS13cmFwJHstMT09PXM/Ii1hbnkiOiIifSI+YCkuYXBwZW5kVG8odCk7cnMoYDxsYWJlbCBkYXRhLWZpZWxkPSIke2V9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwICR7aX1fX2Ryb3Bkb3duLWNoZWNrYm94LWl0ZW0iPmApLmFwcGVuZChsKS5hcHBlbmQoYDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19sYWJlbCI+JHt1fTwvc3Bhbj5gKS5hcHBlbmRUbyhfKSxsLnR2Q29udHJvbENoZWNrYm94KCl9cmV0dXJuIG99X2NyZWF0ZU11bHRpU2VsZWN0SXRlbXNFbGVtZW50KGUsdCxvLGksbj0hMSxyPSgpPT57fSxzPSExLGEpe2NvbnN0IGw9e2NoYW5nZWQ6ITEscmVzZXRPcHRpb25zOm51bGx9O2xldCBjPXJzKCksZD1ycygpO2NvbnN0IGg9ImZvcmV4LWdyb3VwIj09PW8uYXR0cigiZGF0YS1zZWxlY3QtbmFtZSIpLHU9bz0+e2NvbnN0IGk9IXQuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkIikuc2l6ZSgpO3M/YyYmYy5wcm9wKCJjaGVja2VkIiwhMCk6ZC5wcm9wKCJjaGVja2VkIixpKSxuJiZ0aGlzLl9oaWdobGlnaHRBY3RpdmVJdGVtcyh0KSxvfHx0aGlzLl9yZXNldEZpZWxkKGUpLHRoaXMuX21vZGVsLnVwZGF0ZSgpLGwuY2hhbmdlZD0hbyxyKHQsaSl9O2xldCBfPXJzKCk7cmV0dXJuIGwucmVzZXRPcHRpb25zPW89Pnt0LmVtcHR5KCksZD10aGlzLl9jcmVhdGVNdWx0aVNlbGVjdEl0ZW1zKGUsdCxzP251bGw6ZCxpLGEpLCEwIT09byYmKHRoaXMuX3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpLHUoITApKSxfPXJzKCl9LGwucmVzZXRPcHRpb25zKCksdC5vbigiY2hhbmdlIiwiLmpzLWZpbHRlci1jaGVja2JveCIsKGk9Pntjb25zdCByPXJzKGkudGFyZ2V0KSxhPXIuYXR0cigibmFtZSIpO2lmKG4mJkl0W2VdLnZhbHVlPT09YSlyZXR1cm4gci5wcm9wKCJjaGVja2VkIiwhMCksdm9pZCB0aGlzLl9jbG9zZURyb3Bkb3duKG8pO2M9cnMoKSxyLnByb3AoImNoZWNrZWQiKT8oSXRbZV0udmFsdWU/bj8odC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94Iikubm90KHIpLnByb3AoImNoZWNrZWQiLCExKSxJdFtlXS52YWx1ZT1hKTooQXJyYXkuaXNBcnJheShJdFtlXS52YWx1ZSl8fChJdFtlXS52YWx1ZT1bSXRbZV0udmFsdWVdKSxJdFtlXS52YWx1ZS5wdXNoKGEpKTpJdFtlXS52YWx1ZT1hLGgmJigwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBibigiYWRkZWQiLGEpKSk6KEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpPyhJdFtlXS52YWx1ZS5zcGxpY2UoSXRbZV0udmFsdWUuaW5kZXhPZihhKSwxKSwxPT09SXRbZV0udmFsdWUubGVuZ3RoP0l0W2VdLnZhbHVlPUl0W2VdLnZhbHVlWzBdOkl0W2VdLnZhbHVlLmxlbmd0aHx8KHM/KGM9cixJdFtlXS52YWx1ZT1hKTpJdFtlXS52YWx1ZT1udWxsKSk6cz8oYz1yLEl0W2VdLnZhbHVlPWEpOkl0W2VdLnZhbHVlPW51bGwsaCYmKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGJuKCJyZW1vdmVkIixhKSkpLHRoaXMuX3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpLHUoKSxuJiZ0aGlzLl9jbG9zZURyb3Bkb3duKG8pfSkpLHN8fHQub24oImNsaWNrIHRvdWNoZW5kIiwiLmpzLWZpbHRlci1jaGVja2JveC1hbnkiLChpPT57Y29uc3Qgcj1ycyhpLnRhcmdldCkuYXR0cigibmFtZSIpO2kucHJldmVudERlZmF1bHQoKSxzZXRUaW1lb3V0KCgoKT0+e2lmKCFJdFtlXS52YWx1ZSlyZXR1cm4gZC5wcm9wKCJjaGVja2VkIiwhMCksdm9pZCB0aGlzLl9jbG9zZURyb3Bkb3duKG8pO2QucHJvcCgiY2hlY2tlZCIpPyhfLnByb3AoImNoZWNrZWQiLCEwKSxJdFtlXS52YWx1ZT1fLnRvQXJyYXkoKS5tYXAoKGU9PmUubmFtZSkpLEl0W2VdLnZhbHVlLmxlbmd0aD8xPT09SXRbZV0udmFsdWUubGVuZ3RoJiYoSXRbZV0udmFsdWU9SXRbZV0udmFsdWVbMF0pOkl0W2VdLnZhbHVlPW51bGwpOihfPXQuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkIiksdC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94IikucHJvcCgiY2hlY2tlZCIsITEpLEl0W2VdLnZhbHVlPW51bGwsaCYmKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGJuKCJhZGRlZCIscikpKSx0aGlzLl90cnlFeGVjdXRlRmlsdGVyQ2hhbmdlSGFuZGxlcihlKSx1KCksbiYmdGhpcy5fY2xvc2VEcm9wZG93bihvKX0pLDApfSkpLGx9X3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpe0l0W2VdLm9uRmlsdGVyQ2hhbmdlJiZJdFtlXS5vbkZpbHRlckNoYW5nZShJdFtlXS52YWx1ZSl9X2NyZWF0ZU11bHRpc2VsZWN0RmlsdGVyKGUsdCxpLG4scj0hMSl7CmNvbnN0IHM9cnMoYDxkaXYgY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1jb250YWluZXIganMtZmlsdGVyLWZpZWxkLSR7ZS5yZXBsYWNlKC9cVy9nLCIiKX0ganMtZHJvcGRvd24tdG9nZ2xlIj5gKS5hcHBlbmRUbyh0KSxhPXJzKGA8aSBjbGFzcz0iJHtufV9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZSI+YCkuYXBwZW5kKHJzKG8oODE1NjgzKSkuYXR0cih7d2lkdGg6MTIsaGVpZ2h0Ojd9KSksbD1ycyhgPHNwYW4gY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1jYXB0aW9uICR7bn1fX3NlbGVjdGJveC1jYXB0aW9uLS10ZXh0LW92ZXJmbG93Ij5cblx0XHRcdDxzcGFuIGNsYXNzPSIke259X19zZWxlY3Rib3gtY2FwdGlvbi1sYWJlbCBqcy1sYWJlbCI+PC9zcGFuPlxuXHRcdDwvc3Bhbj5gKS5hcHBlbmQoYSkuYXBwZW5kVG8ocyksYz1sLmZpbmQoIi5qcy1sYWJlbCIpLGQ9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5Ij4nKTtsZXQgaD1ycygpO2lmKChJdFtlXS51c2VEZWZhdWx0UmFuZ2U/SXRbZV0uZGVmYXVsdFJhbmdlOkl0W2VdLnJhbmdlKS5sZW5ndGg+PTE2KXtjb25zdCBlPXJzKGA8ZGl2IGNsYXNzPSIke259X19zZWFyY2gtd3JhcCI+YCkuYXBwZW5kVG8oZCk7aD1ycyhgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIke18udChudWxsLHZvaWQgMCxvKDM1MjEyNykpfSIgY2xhc3M9IiR7bn1fX3NlYXJjaC1pbnB1dCI+YCkuYXBwZW5kVG8oZSk7Y29uc3QgdD1ycyhgPGRpdiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwICR7bn1fX3NlYXJjaC1uby1tYXRjaGVzIGpzLWhpZGRlbiI+Tm8gbWF0Y2hlczwvZGl2PmApLmFwcGVuZFRvKGQpO2gub24oImNoYW5nZSBpbnB1dCIsKGU9Pntjb25zdCBvPWgudmFsKCkudHJpbSgpLnRvTG93ZXJDYXNlKCk7bz9wLmZpbmQoIi5qcy1pdGVtLXdyYXAiKS5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9cnModGhpcyk7ZS50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhfmUudGV4dCgpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihvKSl9KSk6cC5maW5kKCIuanMtaXRlbS13cmFwIikucmVtb3ZlQ2xhc3MoImpzLWhpZGRlbiIpLHAuZmluZCgiLmpzLWl0ZW0td3JhcC1hbnkiKS50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhIXAuZmluZCgiLmpzLWl0ZW0td3JhcC5qcy1oaWRkZW4iKS5zaXplKCkpLHQudG9nZ2xlQ2xhc3MoImpzLWhpZGRlbiIsISFwLmZpbmQoIi5qcy1pdGVtLXdyYXA6bm90KC5qcy1oaWRkZW4pIikuc2l6ZSgpKSxzLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpfSkpfWNvbnN0IHU9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiPicpLmFwcGVuZFRvKGQpLHA9cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiPicpLmFwcGVuZFRvKHUpLG09dGhpcy5fY3JlYXRlTXVsdGlTZWxlY3RJdGVtc0VsZW1lbnQoZSxwLHMsbixyLCgoKT0+e2MuZW1wdHkoKSxwLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCwgLmpzLWZpbHRlci1jaGVja2JveC1hbnk6Y2hlY2tlZCIpLmVhY2goKCh0LG8pPT57Yy5hcHBlbmQocnMoJzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1jb250ZW50LXZhbHVlIj4nKS50ZXh0KHRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMocnMobykuYXR0cigibmFtZSIpLGUpKSl9KSkscy5mb2N1cygpfSksSXRbZV0ubm9BbnkpLGc9ZT0+e2lmKCEwIT09ZSYmIXMuaXMoIi5pLW9wZW5lZCIpKXJldHVybjtjb25zdCB0PXMuY2xvc2VzdCgiLmktc2Nyb2xsYWJsZSIpO2lmKHQuc2l6ZSgpJiYocy5vZmZzZXQoKS50b3Arcy5oZWlnaHQoKTx0Lm9mZnNldCgpLnRvcHx8cy5vZmZzZXQoKS50b3A+dC5vZmZzZXQoKS50b3ArdC5oZWlnaHQoKSkpcmV0dXJuIHZvaWQgcy50dkRyb3Bkb3duKCJjbG9zZSIpO2NvbnN0IG89aS5vZmZzZXQoKSxuPXMub2Zmc2V0KCk7bGV0IHI9cnMod2luZG93KS5oZWlnaHQoKS1uLnRvcCtycyh3aW5kb3cpLnNjcm9sbFRvcCgpLTM1O2guc2l6ZSgpJiYoci09NDUpO2NvbnN0IGE9TWF0aC5tYXgoaS5oZWlnaHQoKS0obi50b3Atby50b3ApLDYwKTtpZih1LmNzcygibWF4SGVpZ2h0IixNYXRoLm1pbihhLHIpKSx0aGlzLl9zZXREcm9wZG93blBvc2l0aW9uKGQscyxpKSxkLnBhcmVudCgpLmlzKGkpKXtjb25zdCBlPXMudHZEcm9wZG93bigiZ2V0SW5zdGFuY2UiKS5zY3JvbGw7ZS51cGRhdGVTY3JvbGxCYXIoKSxlLnVwZGF0ZVNjcm9sbCgpfWVsc2UgZC5hcHBlbmRUbyhpKX07bGV0IHY7cy50dkRyb3Bkb3duKHskd3JhcDpsLCRib2R5OmQsc2Nyb2xsOiEwLGNsb3NlV2l0aEVzYzohMCxub0FuaW1hdGlvbjohMH0pLm9uKCJyZXNldFBvc2l0aW9uIixnKS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e20uY2hhbmdlZCYmKG0ucmVzZXRPcHRpb25zKCEwKSxtLmNoYW5nZWQ9ITEpLGcoITApLHImJihwLmZpbmQoIi50di1jb250cm9sLWNoZWNrYm94X19ib3gsIC5qcy1maWx0ZXItY2hlY2tib3gsIC5qcy1maWx0ZXItY2hlY2tib3gtYW55IikuaGlkZSgpLHRoaXMuX2hpZ2hsaWdodEFjdGl2ZUl0ZW1zKHApLHAuZmluZCgiLnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIikuY3NzKCJtYXJnaW4tcmlnaHQiLDApKSxhLmFkZENsYXNzKGAke259X19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuYCl9KSkub24oImFmdGVyT3Blbk1lbnUiLCgoKT0+e3Y9cC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94OmNoZWNrZWQiKSxoLnNpemUoKSYmc2V0VGltZW91dCgoKCk9PntoLmZvY3VzKCkub24oImZvY3Vzb3V0IiwoZnVuY3Rpb24oKXtoLmZvY3VzKCksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtoLmZvY3VzKCl9KSwxMCl9KSksaC5hZGQoIi50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZHJvcGRvd24tY2hlY2tib3gtaXRlbSIpLm9uKCJrZXlwcmVzcyBrZXl1cCIsKGU9PnsKMjc9PT1lLmtleUNvZGUmJnRoaXMuX2Nsb3NlRHJvcGRvd24ocyl9KSl9KSwwKX0pKS5vbigiYmVmb3JlQ2xvc2VNZW51IiwoKCk9PnthLnJlbW92ZUNsYXNzKGAke259X19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuYCksaC5vZmYoImZvY3Vzb3V0IGtleXByZXNzIGtleXVwIil9KSkub24oImFmdGVyQ2xvc2VNZW51IiwoKCk9PntzLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpLGQuZGV0YWNoKCk7Y29uc3QgdD1wLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCIpLG89InR2LXNjcmVlbmVyLWRpYWxvZyI9PT1uPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIsaT1BcnJheS5mcm9tKHQpLm1hcCgoZT0+ZS5uYW1lKSkuam9pbigiLCIpO2khPT1BcnJheS5mcm9tKHYpLm1hcCgoZT0+ZS5uYW1lKSkuam9pbigiLCIpJiYoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgeWkoaSxpaS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2ssZSxvKSl9KSkub24oInJlc2V0IixtLnJlc2V0T3B0aW9ucykub24oIm1vdXNlZG93bm91dHNpZGUiLCgoKT0+e3MudHZEcm9wZG93bigiY2xvc2UiKX0pKSxkLm9uKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsKGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpKX1fYXBwbHlTZWxlY3Rib3goZSx0LGk9e30pe2NvbnN0IG49aS5jbGFzc1ByZWZpeHx8InR2LXNjcmVlbmVyLWRpYWxvZyIscj1ycyhgPGxhYmVsIGNsYXNzPSIke259X19zZWxlY3Rib3gtY29udGFpbmVyIGpzLWRyb3Bkb3duLXRvZ2dsZSI+YCk7aS5hZGRDbGFzcyYmci5hZGRDbGFzcyhpLmFkZENsYXNzKSxyLmluc2VydEFmdGVyKGUpLGUuYXBwZW5kVG8ocik7Y29uc3Qgcz1ycyhgPGkgY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUiPmApLmFwcGVuZChycyhvKDgxNTY4MykpLmF0dHIoe3dpZHRoOjEyLGhlaWdodDo3fSkpLGE9cnMoYDxzcGFuIGNsYXNzPSIke259X19zZWxlY3Rib3gtY2FwdGlvbiI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0iJHtufV9fc2VsZWN0Ym94LWNhcHRpb24tbGFiZWwganMtbGFiZWwiPjwvc3Bhbj5cblx0XHQ8L3NwYW4+YCkuYXBwZW5kKHMpLmFwcGVuZFRvKHIpLGw9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5Ij4nKSxjPXJzKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIj4nKS5hcHBlbmRUbyhsKSxkPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW1zLXdyYXAgdHYtZHJvcGRvd24tYmVoYXZpb3JfX2luc2Nyb2xsIj4nKS5hcHBlbmRUbyhjKSxoPSgpPT57bC5maW5kKCIuanMtb3B0aW9uLXNlbGVjdGVkIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIGpzLW9wdGlvbi1zZWxlY3RlZCIpO2NvbnN0IHQ9bC5maW5kKGBbZGF0YS12YWx1ZT0iJHtlLnZhbCgpfSJdYCksbz0hdC5kYXRhKCJ2YWx1ZSIpO3QuYWRkQ2xhc3MoImktYWN0aXZlIGpzLW9wdGlvbi1zZWxlY3RlZCIpLnRvZ2dsZUNsYXNzKGAke259X19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZWAsbyksYS5maW5kKCIuanMtbGFiZWwiKS50b2dnbGVDbGFzcyhgJHtufV9fc2VsZWN0Ym94LWNhcHRpb24tLW5vLXZhbHVlYCxvKS50ZXh0KHQudGV4dCgpKX0sdT0oKT0+e2QuZW1wdHkoKTtjb25zdCB0PWUuZ2V0KDApLmNoaWxkTm9kZXM7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDsrK2UpcnMoYDxzcGFuIGRhdGEtdmFsdWU9IiR7dFtlXS52YWx1ZX0iIGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSB0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uIGpzLW9wdGlvbiI+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCAke259X19zZWxlY3Rib3gtb3B0aW9uLXdyYXAiPiR7dFtlXS50ZXh0Q29udGVudH08L3NwYW4+XG5cdFx0XHRcdDwvc3Bhbj5gKS5hcHBlbmRUbyhkKTtoKCl9O3UoKSxlLm9uKCJjaGFuZ2UiLGgpO2NvbnN0IF89ZT0+e2lmKCEwIT09ZSYmIXIuaXMoIi5pLW9wZW5lZCIpKXJldHVybjtjb25zdCBvPXIuY2xvc2VzdCgiLmktc2Nyb2xsYWJsZSIpO2lmKG8uc2l6ZSgpJiYoci5vZmZzZXQoKS50b3Arci5oZWlnaHQoKTxvLm9mZnNldCgpLnRvcHx8ci5vZmZzZXQoKS50b3A+by5vZmZzZXQoKS50b3Arby5oZWlnaHQoKSkpcmV0dXJuIHZvaWQgci50dkRyb3Bkb3duKCJjbG9zZSIpO2NvbnN0IGk9dC5vZmZzZXQoKSxuPXIub2Zmc2V0KCkscz1NYXRoLm1heCh0LmhlaWdodCgpLShuLnRvcC1pLnRvcCksNjApLGE9cnMod2luZG93KS5oZWlnaHQoKS1uLnRvcCtycyh3aW5kb3cpLnNjcm9sbFRvcCgpLTM1O2MuY3NzKCJtYXhIZWlnaHQiLE1hdGgubWluKHMsYSkpLHRoaXMuX3NldERyb3Bkb3duUG9zaXRpb24obCxyLHQpLGwuYXBwZW5kVG8odCl9O3JldHVybiByLm9uKCJyZXNldFBvc2l0aW9uIixfKS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e18oITApLHMuYWRkQ2xhc3MoYCR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUtLW9wZW5gKX0pKS5vbigiYmVmb3JlQ2xvc2VNZW51IiwoKCk9PnMucmVtb3ZlQ2xhc3MoYCR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUtLW9wZW5gKSkpLm9uKCJhZnRlckNsb3NlTWVudSIsKCgpPT57ci50dkRyb3Bkb3duKCJ1cGRhdGVTY3JvbGwiKSxsLmRldGFjaCgpfSkpLnR2RHJvcGRvd24oeyR3cmFwOmEsJGJvZHk6bCxzY3JvbGw6ITAsY2xvc2VXaXRoRXNjOiEwLG5vQW5pbWF0aW9uOiEwfSksZC5vbigiY2xpY2siLCIuanMtb3B0aW9uIiwodD0+e2NvbnN0IG89cnModC5jdXJyZW50VGFyZ2V0KS5kYXRhKCJ2YWx1ZSIpO2UudmFsKCkhPT1vJiYoZS52YWwobyksZS50cmlnZ2VyKCJjaGFuZ2UiKSksci50dkRyb3Bkb3duKCJjbG9zZSIpfSkpLGwub24oIm1vdXNlZG93biB0b3VjaHN0YXJ0IiwoZT0+ZS5zdG9wUHJvcGFnYXRpb24oKSkpLGUub24oInJlc2V0Iix1KSxyfV9zZXREcm9wZG93blBvc2l0aW9uKGUsdCxvKXtjb25zdCBpPW8ub2Zmc2V0KCksbj10Lm9mZnNldCgpO2UuY3NzKCJ0b3AiLG4udG9wLWkudG9wLTE1KSwoMCwKS28uaXNSdGwpKCk/ZS5jc3MoInJpZ2h0IixvWzBdLnNjcm9sbFdpZHRoLShuLmxlZnQrdC53aWR0aCgpKStpLmxlZnQtKDAsS28uZ2V0TFRSU2Nyb2xsTGVmdCkob1swXSkpOmUuY3NzKCJsZWZ0IixuLmxlZnQtaS5sZWZ0KX1faXNGaWx0ZXJWYWx1ZUVtcHR5KGUpe2NvbnN0IHQ9SXRbZV0udmFsdWU7cmV0dXJuIHQmJiJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbD8iIj09PXQudmFsdWV8fG51bGw9PXQudmFsdWU6ISh0JiYoIUFycmF5LmlzQXJyYXkodCl8fHQubGVuZ3RoKSYmKCJvYmplY3QiIT10eXBlb2YgdHx8T2JqZWN0LmtleXModCkuZmluZCgoZT0+ISF0W2VdKSkpKX1hZGRGaWVsZEZpbHRlcihlLHQsaT0idHYtc2NyZWVuZXItZGlhbG9nIixuKXtjb25zdCByPXJzKCc8ZGl2IGNsYXNzPSInK2krIl9fZmlsdGVyLWZpZWxkIGpzLWZpbHRlci1maWVsZCBqcy1maWx0ZXItZmllbGQtIitlLnJlcGxhY2UoL1xXL2csIiIpKyIgIitpKyJfX2ZpbHRlci1maWVsZC0tY2F0IitJdFtlXS5jYXRlZ29yeSsnIGpzLXdyYXAiPicpLHM9IXRoaXMuX2lzRmlsdGVyVmFsdWVFbXB0eShlKTtpZihzKXtjb25zdCBlPXQuZmluZCgiLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUiKTtlLmxlbmd0aD4wP3IuaW5zZXJ0QWZ0ZXIoZS5sYXN0KCkpOnQucHJlcGVuZChyKX1lbHNlIHIuYXBwZW5kVG8odCk7biYmKHM/dC5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKTooci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci13aXRob3V0LXJlc2V0IiksdC5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKSkpO2xldCBhPUl0W2VdLmZpbHRlclRpdGxlfHxJdFtlXS50aXRsZTsidG9nZ2xlIj09PUl0W2VdLmNvbnRyb2wmJiJpc19wcmltYXJ5IiE9PWUmJiJhY3RpdmVfc3ltYm9sIiE9PWUmJihhPV8udChudWxsLHZvaWQgMCxvKDE1OTkxMCkpLmZvcm1hdCh7dGl0bGU6YX0pKSxycyhgPGRpdiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLXRpdGxlIGpzLWZpbHRlci1maWVsZC10aXRsZS0ke2UucmVwbGFjZSgvXFcvZywiIil9Ij4ke2F9PC9kaXY+YCkuYXBwZW5kVG8ociksdGhpcy5zZXRGaWVsZEFjdGl2ZShlLHMscik7Y29uc3QgbD1ycyhgPGRpdiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQgJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLSR7SXRbZV0uY29udHJvbH0ganMtZmlsdGVyLWZpZWxkLV9jb250ZW50Ij5gKS5hcHBlbmRUbyhyKTtyZXR1cm4gcnMoYDxkaXYgY2xhc3M9IiR7aX1fX2ZpbHRlci1maWVsZC1yZXNldCAke3N8fCFuPyIiOiJpLWhpZGRlbiAifWFwcGx5LWNvbW1vbi10b29sdGlwIGpzLXJlc2V0IiBkYXRhLWZpZWxkPSIke2V9IiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg0MjU2NTApKX0iPmApLmFwcGVuZChycyhvKDE0NzA3OCkpKS5hcHBlbmRUbyhyKSxuZXcgUHJvbWlzZSgodD0+e3NldFRpbWVvdXQoKCgpPT57aWYoInNlbGVjdCI9PT1JdFtlXS5jb250cm9sKXRoaXMuX2NyZWF0ZU11bHRpc2VsZWN0RmlsdGVyKGUsbCxuP3RoaXMuX2JyaWRnZS4kYm9keTp0aGlzLl9kaWFsb2cuJGRpYWxvZ0NvbnRhaW5lcixpLEl0W2VdLmlzU2luZ2xlKTtlbHNlIGlmKCJyYW5nZSI9PT1JdFtlXS5jb250cm9sKXtjb25zdCB0PXtyYW5nZTohMH07bGV0IG89SXRbZV0ucmFuZ2VbMF0saT1JdFtlXS5yYW5nZVsxXTtJdFtlXS52YWx1ZXM/KHQubWluPTAsdC5tYXg9SXRbZV0udmFsdWVzLmxlbmd0aCsxLEl0W2VdLnZhbHVlJiZBcnJheS5pc0FycmF5KEl0W2VdLnZhbHVlKT8odC52YWx1ZXM9dGhpcy5hcHByb3hpbWF0ZVNsaWRlclZhbHVlcyhlLEl0W2VdLnZhbHVlKSxvPXRoaXMuX3JhbmdlTGVmdFZhbHVlKGUpLGk9dGhpcy5fcmFuZ2VSaWdodFZhbHVlKGUpKToodC52YWx1ZXM9WzAsSXRbZV0udmFsdWVzLmxlbmd0aCsxXSxvPXRoaXMuX3JhbmdlTWluVmFsdWUoZSksaT10aGlzLl9yYW5nZU1heFZhbHVlKGUpKSk6KHQubWluPUl0W2VdLnJhbmdlWzBdLHQubWF4PUl0W2VdLnJhbmdlWzFdLHQudmFsdWVzPUl0W2VdLnZhbHVlfHxbSXRbZV0ucmFuZ2VbMF0sSXRbZV0ucmFuZ2VbMV1dKSxycyhgPGRpdiBjbGFzcz0idHYtc2xpZGVyIiBkYXRhLWZpZWxkPSIke2V9Ij5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXNsaWRlcl9fbGFiZWxzIj5cblx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9InRleHQiIGRhdGEtZmllbGQ9IiR7ZX0iIGRhdGEtYm91bmQ9IjAiIGNsYXNzPSJ0di1zbGlkZXJfX2xhYmVsIHR2LXNsaWRlcl9fbGFiZWwtLWxlZnQiIHZhbHVlPSIke299Ii8+XG5cdFx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJ0ZXh0IiBkYXRhLWZpZWxkPSIke2V9IiBkYXRhLWJvdW5kPSIxIiBjbGFzcz0idHYtc2xpZGVyX19sYWJlbCB0di1zbGlkZXJfX2xhYmVsLS1yaWdodCIgdmFsdWU9IiR7aX0iLz5cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDwvZGl2PmApLnNsaWRlcih0KS5hcHBlbmRUbyhsKX1lbHNlIGlmKCJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbCl7Y29uc3QgdD1ycyhgPHNlbGVjdCBuYW1lPSIke2V9IiBjbGFzcz0ianMtZmlsdGVyLW9wZXJhdG9yIGpzLWhpZGRlbiI+YCkuYXBwZW5kVG8obCk7bGV0IHIscz0hMDtmb3IoY29uc3QgbyBpbiBjcylJdFtlXS5oaWRkZW5PcGVyYXRvcnMmJi0xIT09SXRbZV0uaGlkZGVuT3BlcmF0b3JzLmluZGV4T2Yobyl8fChzJiYhSXRbZV0udmFsdWUmJihzPSExLEl0W2VdLnZhbHVlPXtvcGVyYXRvcjpvfSkscnMoYDxvcHRpb24gdmFsdWU9IiR7b30iJHtvPT09KEl0W2VdLnZhbHVlJiZJdFtlXS52YWx1ZS5vcGVyYXRvcik/IiBzZWxlY3RlZCI6IiJ9PiR7Y3Nbb119PC9vcHRpb24+YCkuYXBwZW5kVG8odCkpO3RoaXMuX2FwcGx5U2VsZWN0Ym94KHQsbj90aGlzLl9icmlkZ2UuJGJvZHk6dGhpcy5fZGlhbG9nLiRkaWFsb2dDb250YWluZXIse2NsYXNzUHJlZml4OmksYWRkQ2xhc3M6YCR7aX1fX2ZpbHRlci1maWVsZC1jb250ZW50LS1sZWZ0YH0pLApyPUl0W2VdLmNvbmRpdGlvbkZpZWxkcz9BcnJheS5pc0FycmF5KEl0W2VdLmNvbmRpdGlvbkZpZWxkcyk/SXRbZV0uY29uZGl0aW9uRmllbGRzOkl0W2VdLmNvbmRpdGlvbkZpZWxkc1t0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlXXx8SXRbZV0uY29uZGl0aW9uRmllbGRzLmRlZmF1bHR8fGRzOmRzO2NvbnN0IGE9cnMoYDxzZWxlY3QgbmFtZT0iJHtlfSIgY2xhc3M9ImpzLWZpbHRlci1vcGVyYXRvci12YWx1ZSBqcy1oaWRkZW4iPmApLmFwcGVuZFRvKGwpO2xldCBjO2lmKHJzKGA8b3B0aW9uIHZhbHVlPSIiPiR7Xy50KG51bGwsdm9pZCAwLG8oMzEwODY5KSl9PC9vcHRpb24+YCkuYXBwZW5kVG8oYSksMD09PXIubGVuZ3RoKWM9cnMoYDxsYWJlbCBjbGFzcz0iJHtpfV9fc2VsZWN0Ym94LWNvbnRhaW5lciBqcy1kcm9wZG93bi10b2dnbGUgJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSBqcy1oaWRkZW4iIHRhYmluZGV4PSIwIj5cblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9IiR7aX1fX3NlbGVjdGJveC1jYXB0aW9uLWxhYmVsIGpzLWxhYmVsICR7aX1fX3NlbGVjdGJveC1jYXB0aW9uLS1uby12YWx1ZSI+JHtfLnQobnVsbCx2b2lkIDAsbygzMTA4NjkpKX08L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2xhYmVsPmApLmFwcGVuZFRvKGwpO2Vsc2V7Zm9yKGxldCB0PTA7dDxyLmxlbmd0aDsrK3Qpe2NvbnN0IG89clt0XTtycyhgPG9wdGlvbiB2YWx1ZT0iJHtvfSIke289PT0oSXRbZV0udmFsdWUmJkl0W2VdLnZhbHVlLm9wZXJhdG9yJiZJdFtlXS52YWx1ZS52YWx1ZSk/IiBzZWxlY3RlZCI6IiJ9PiR7SXRbb10udGl0bGV9PC9vcHRpb24+YCkuYXBwZW5kVG8oYSl9Yz10aGlzLl9hcHBseVNlbGVjdGJveChhLG4/dGhpcy5fYnJpZGdlLiRib2R5OnRoaXMuX2RpYWxvZy4kZGlhbG9nQ29udGFpbmVyLHtjbGFzc1ByZWZpeDppLGFkZENsYXNzOmAke2l9X19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlIGpzLWhpZGRlbmB9KX1jb25zdCBkPXJzKGA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iJHtlfSIgY2xhc3M9IiR7aX1fX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodCAke2l9X19maWx0ZXItZmllbGQtdGV4dCBqcy1maWx0ZXItb3BlcmF0b3ItYXJiLXZhbHVlIj5gKS5hcHBlbmRUbyhsKTtJdFtlXS52YWx1ZSYmIm51bWJlciI9PXR5cGVvZiBJdFtlXS52YWx1ZS52YWx1ZSYmZC52YWwoYCR7SXRbZV0udmFsdWUudmFsdWV9YCk7Y29uc3QgaD1lPT57ZS5jdHJsS2V5fHxlLm1ldGFLZXl8fCFlLmNoYXJDb2RlfHwhZS53aGljaHx8ZS53aGljaDwzMnx8L1tcZC4tXS8udGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGUuY2hhckNvZGUpKXx8ZS5wcmV2ZW50RGVmYXVsdCgpfSx1PWU9Pntjb25zdCB0PXt2YWx1ZTplLnZhbCgpfTtyZXR1cm4gZS5vbigia2V5cHJlc3MiLGgpLm9uKCJjaGFuZ2UgaW5wdXQiLCgwLHZvLmRlZmF1bHQpKChvPT57ZS52YWwoKSE9PXQudmFsdWUmJihlLnRyaWdnZXIoInVwZGF0ZSIsbyksdC52YWx1ZT1lLnZhbCgpKX0pLDUwMCkpLHR9LHA9cnMoYDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSIke2V9IiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXJpZ2h0ICR7aX1fX2ZpbHRlci1iZXR3ZWVuLWlucHV0IGpzLWZpbHRlci1vcGVyYXRvci1iZXR3ZWVuLWxlZnQganMtaGlkZGVuIj5gKS5hcHBlbmRUbyhsKTshSXRbZV0udmFsdWV8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8cC52YWwoYCR7LTFlMTAwPT09SXRbZV0udmFsdWUudmFsdWVbMF18fHRoaXMuX2lzTGVzc1RoZW5NaW4oSXRbZV0udmFsdWUudmFsdWVbMF0sZSk/IiI6SXRbZV0udmFsdWUudmFsdWVbMF19YCk7Y29uc3QgbT11KHApLGc9cnMoYDxzcGFuIGNsYXNzPSIke2l9X19maWx0ZXItYmV0d2Vlbi1zZXBhcmF0b3IganMtaGlkZGVuIj7igJQ8L3NwYW4+YCkuYXBwZW5kVG8obCksdj1ycyhgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IiR7ZX0iIGNsYXNzPSIke2l9X19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHQgJHtpfV9fZmlsdGVyLWJldHdlZW4taW5wdXQganMtZmlsdGVyLW9wZXJhdG9yLWJldHdlZW4tcmlnaHQganMtaGlkZGVuIj5gKS5hcHBlbmRUbyhsKTshSXRbZV0udmFsdWV8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8di52YWwoYCR7MWUxMDA9PT1JdFtlXS52YWx1ZS52YWx1ZVsxXXx8dGhpcy5faXNHcmVhdGVyVGhlbk1heChJdFtlXS52YWx1ZS52YWx1ZVsxXSxlKT8iIjpJdFtlXS52YWx1ZS52YWx1ZVsxXX1gKTtjb25zdCBmPXUodikseT11KGQpLGI9KCk9Pntjb25zdCBlPXQudmFsKCksbz1lJiYiaW5fcmFuZ2UiIT09ZSYmIm5vdF9pbl9yYW5nZSIhPT1lO2MudG9nZ2xlQ2xhc3MoImpzLWhpZGRlbiIsIW8pLG98fCh5LnZhbHVlPSIiLGQudmFsKCIiKSxhLnZhbCgiIikudHJpZ2dlcigiY2hhbmdlIikpfSxTPWU9Pntjb25zdCBvPXQudmFsKCksaT1vJiYiaW5fcmFuZ2UiIT09byYmIm5vdF9pbl9yYW5nZSIhPT1vJiYhYS52YWwoKTtkLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCFpKSxpJiYhMCE9PWUmJiF0aGlzLl9yZXNldEFsbEZpbHRlcnMmJnNldFRpbWVvdXQoKCgpPT57ZC5mb2N1cygpfSksNTApfSx3PWU9Pntjb25zdCBvPSJpbl9yYW5nZSI9PT10LnZhbCgpfHwibm90X2luX3JhbmdlIj09PXQudmFsKCk7cC50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksZy50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksdi50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksbyYmITAhPT1lJiYhdGhpcy5fcmVzZXRBbGxGaWx0ZXJzJiZzZXRUaW1lb3V0KCgoKT0+e3AuZm9jdXMoKX0pLDUwKSxvfHwhMD09PWV8fChtLnZhbHVlPSIiLGYudmFsdWU9IiIscC52YWwoIiIpLHYudmFsKCIiKSxhLnZhbCgiIikudHJpZ2dlcigiY2hhbmdlIikpfTsiaW5fcmFuZ2UiPT09dC52YWwoKXx8Im5vdF9pbl9yYW5nZSI9PT10LnZhbCgpP3coITApOmIoKSxTKCEwKSwKdC5vbigiY2hhbmdlIixiKS5vbigiY2hhbmdlIixTKS5vbigiY2hhbmdlIix3KSxhLm9uKCJjaGFuZ2UiLFMpfWVsc2UgaWYoInRvZ2dsZSI9PT1JdFtlXS5jb250cm9sKXtycyhgPGxhYmVsIGNsYXNzPSIke2l9X19maWx0ZXItdG9nZ2xlIj5cblx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHtlfSIgY2xhc3M9IiR7aX1fX2ZpbHRlci1kcm9wZG93bi1pdGVtLWlucHV0IHR2LXNjcmVlbmVyLWZpbHRlci1yb2xsdXBfX2l0ZW0taW5wdXQganMtZmlsdGVyLXRvZ2dsZSIgJHtJdFtlXS52YWx1ZT8iY2hlY2tlZCI6IiJ9PlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9IiR7aX1fX2ZpbHRlci10b2dnbGUtY2hlY2tib3gtdGl0bGUgdHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwiPlxuXHRcdFx0XHRcdFx0XHQkey0xIT09ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImhpZ2giKT9fLnQobnVsbCx2b2lkIDAsbygzMDU0MDYpKTpfLnQobnVsbCx2b2lkIDAsbyg1MzgyNTQpKX1cblx0XHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8L2xhYmVsPmApLmFwcGVuZFRvKGwpLmZpbmQoIi5qcy1maWx0ZXItdG9nZ2xlIikudHZDb250cm9sQ2hlY2tib3goKX10KCl9KSxuPzA6bW8uZHVyLzMuNSl9KSl9c2hvd0lucGxhY2VFZGl0b3IoZSx0KXtpZighSXRbZV0pcmV0dXJuO3RoaXMuX2lucGxhY2VFZGl0b3JGaWVsZD1lLHRoaXMuJGlucGxhY2VFZGl0b3JUYXJnZXQ9dCx0aGlzLiRpbnBsYWNlRWRpdG9yfHwodGhpcy4kaW5wbGFjZUVkaXRvcj1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3IgdHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbiI+Jykub24oIm1vdXNlZG93bm91dHNpZGUiLChlPT57Y29uc3QgdD1JdFt0aGlzLl9pbnBsYWNlRWRpdG9yRmllbGRdOyJjb25kaXRpb24iPT09dC5jb250cm9sJiZ0LnZhbHVlJiYobXQodC52YWx1ZS52YWx1ZSl8fG10KHQudmFsdWUub3BlcmF0b3IpKSYmKHRoaXMuJGlucGxhY2VFZGl0b3IuaGFzQ2xhc3MoImpzLWhpZGRlbiIpfHwodC52YWx1ZT1udWxsKSk7Y29uc3Qgbz10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy1kcm9wZG93bi10b2dnbGUuaS1vcGVuZWQiKTtvLnNpemUoKT9vLm9uZSgiYWZ0ZXJDbG9zZU1lbnUiLCgoKT0+e3RoaXMuJGlucGxhY2VFZGl0b3IuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1oaWRkZW4ganMtaGlkZGVuIil9KSk6dGhpcy4kaW5wbGFjZUVkaXRvci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbiBqcy1oaWRkZW4iKX0pKS5vbigia2V5cHJlc3Mga2V5dXAiLChlPT57MjchPT1lLmtleUNvZGV8fHJzKCIudHYtZHJvcGRvd25fX2JvZHkuaS1vcGVuZWQiKS5sZW5ndGh8fHRoaXMuJGlucGxhY2VFZGl0b3IudHJpZ2dlcigibW91c2Vkb3dub3V0c2lkZSIpfSkpLmF0dHIoInRhYkluZGV4IiwiMCIpLmFwcGVuZFRvKHRoaXMuX2JyaWRnZS4kYm9keSksdGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJih0aGlzLiRpbnBsYWNlRWRpdG9yLmFkZENsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvci0tc3RhbmRhbG9uZSIpLHJzKGRvY3VtZW50KS5vbigic2Nyb2xsIiwoKCk9Pnt0aGlzLiRpbnBsYWNlRWRpdG9yLmlzKCIuanMtaGlkZGVuIil8fHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJ0b3AiLHRoaXMuJGlucGxhY2VFZGl0b3JUYXJnZXQub2Zmc2V0KCkudG9wLXRoaXMuX2JyaWRnZS4kYm9keS5vZmZzZXQoKS50b3ApfSkpKSksdGhpcy4kaW5wbGFjZUVkaXRvci5lbXB0eSgpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fd2l0aG91dC1yZXNldCIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLXNsaW0iLCJ0b2dnbGUiPT09SXRbZV0uY29udHJvbCkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS13aWRlIiwiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wpLHRoaXMuYWRkRmllbGRGaWx0ZXIoZSx0aGlzLiRpbnBsYWNlRWRpdG9yLCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvciIsITApLnRoZW4oKCgpPT57dGhpcy5pbml0RmlsdGVySGFuZGxlcnModGhpcy4kaW5wbGFjZUVkaXRvcil9KSk7Y29uc3Qgbz10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy1yZXNldCIpLGk9SXRbZV0uaW5wbGFjZUVkaXRvckxlZnRPZmZzZXR8fDAsbj10aGlzLl9nZXRJbnBsYWNlRWRpdG9yQm91bmQoKSxyPXQucG9zaXRpb24oKS5sZWZ0O2lmKHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJ0b3AiLHQub2Zmc2V0KCkudG9wLXRoaXMuX2JyaWRnZS4kYm9keS5vZmZzZXQoKS50b3ApLCgwLEtvLmlzUnRsKSgpKXtjb25zdCBlPXIrdC53aWR0aCgpLHM9aStNYXRoLm1pbih0aGlzLiRjb250ZW50LndpZHRoKCktZSxuKS1vLndpZHRoKCk7dGhpcy4kaW5wbGFjZUVkaXRvci5jc3MoInJpZ2h0IixNYXRoLm1heChzLDApKX1lbHNlIHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJsZWZ0IixNYXRoLm1heChpK01hdGgubWluKHIsbiktby53aWR0aCgpLDApKTt0aGlzLiRpbnBsYWNlRWRpdG9yLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvci0taGlkZGVuIikuZm9jdXMoKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJPcGVuIGlucGxhY2UgZWRpdG9yIil9X2dldElucGxhY2VFZGl0b3JCb3VuZCgpe2xldCBlPXRoaXMuX2JyaWRnZS4kYm9keS53aWR0aCgpLXRoaXMuJGlucGxhY2VFZGl0b3Iub3V0ZXJXaWR0aCgpK3JzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCk7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2NvbnN0IHQ9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksbz10aGlzLl90YWJsZS4kZWxlbWVudC53aWR0aCgpK3Q7cnMod2luZG93KS53aWR0aCgpPG8mJihlPSgwLApLby5pc1J0bCkoKT9ycyh3aW5kb3cpLndpZHRoKCktdC10aGlzLiRpbnBsYWNlRWRpdG9yLm91dGVyV2lkdGgoKS1ycyhkb2N1bWVudCkuc2Nyb2xsTGVmdCgpOnJzKHdpbmRvdykud2lkdGgoKS10LXRoaXMuJGlucGxhY2VFZGl0b3Iub3V0ZXJXaWR0aCgpK3JzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCkpfXJldHVybiBlfXNldEZpbHRlclNldChlKXtjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpbHRlclNldEJ5SWQoZSk7dGhpcy4kZmlsdGVyU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIikuYXR0cigiZGF0YS1maWx0ZXItc2V0IixlKSx0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0LnRpdGxlKSx0aGlzLl9wb3B1cHMuJGZpbHRlclNldHNQb3B1cCYmKHRoaXMuX3BvcHVwcy4kZmlsdGVyU2V0c1BvcHVwLmZpbmQoIi50di1zY3JlZW5lci1wb3B1cF9faXRlbSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIiksdGhpcy5fcG9wdXBzLiRmaWx0ZXJTZXRzUG9wdXAuZmluZChgW2RhdGEtc2V0PSIke2V9Il1gKS5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSIpKX1zZXRGaWVsZFNldChlKXtjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlKTt0aGlzLiRmaWVsZFNldHNCdXR0b24ucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tdW5zYXZlZCIpLnRleHQodC50aXRsZSkuYXR0cigiZGF0YS1maWVsZC1zZXQiLGUpfXVwZGF0ZUludGVydmFsQnV0dG9uKGU9dGhpcy5fJHNlbGVjdEludGVydmFsQnV0dG9uLHQ9dGhpcy5fbW9kZWwuc2VsZWN0ZWRJbnRlcnZhbElkKXtpZighZSlyZXR1cm47Y29uc3Qgbz1kZSh0KTtvJiZlLmh0bWwoby5zaG9ydFRpdGxlKTtjb25zdCBpPXRoaXMuX21vZGVsLmVvZFJlc3RyaWN0aW9uLnZhbHVlKCk7ZS50b2dnbGVDbGFzcygiaS1oaWRkZW4iLGk9PT1Xby5XaWRnZXQpfWFkZEludGVydmFsU2VsZWN0KHskYmVmb3JlOmU9bnVsbCwkYXBwZW5kVG86dD1udWxsLCRkcm9wZG93bkNvbnRhaW5lcjppPW51bGx9KXtyZXR1cm4gT24oeyRiZWZvcmU6ZSwkYXBwZW5kVG86dCwkZHJvcGRvd25Db250YWluZXI6aSxtYWtlU2VsZWN0UG9wdXA6ZT0+e2NvbnN0IHQ9T2JqZWN0LmFzc2lnbih7YnV0dG9uVGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzY1MykpfSxlKTtyZXR1cm4gdGhpcy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHt3cmFwQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXNlbGVjdCIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRlIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIGktZGlzYWJsZWQifSx0KX0sYWZ0ZXJNYWtpbmdTZWxlY3RQb3B1cDooZSx0LG8pPT57dGhpcy5fcG9wdXBzLnNldFNlbGVjdEludGVydmFsQ29udGVudChlLG8sKGU9Pnt0aGlzLl9tb2RlbC5zZXRTZWxlY3RlZEludGVydmFsSWQoZS5pZCksdGhpcy51cGRhdGVJbnRlcnZhbEJ1dHRvbih0LGUuaWQpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKSx0aGlzLnByZXZlbnRIaWdobGlnaHRDaGFuZ2VzKCksdGhpcy5yZWZyZXNoKCl9KSl9LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6KGUsdCk9Pnt0aGlzLl9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dC5yZW1vdmVDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMudXBkYXRlSW50ZXJ2YWxCdXR0b24odCx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpfSksITApfX0pfXVwZGF0ZUdyb3Vwc0J1dHRvbihlLHQpe3Quc29ydCgoKGUsdCk9Pkl0LnNlY3Rvci5zb3VyY2VSYW5nZS5pbmRleE9mKGUpPkl0LnNlY3Rvci5zb3VyY2VSYW5nZS5pbmRleE9mKHQpPzE6LTEpKTtmb3IobGV0IGk9MDtpPHQubGVuZ3RoO2krKyl7Y29uc3Qgbj10W2ldPT09X3M/aHM6YCR7dFtpXX0ke2k9PT10Lmxlbmd0aC0xPyIgIitfLnQobnVsbCx2b2lkIDAsbyg0MDY2NzcpKToiIn1gO2UuYXBwZW5kKHJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC12YWx1ZSI+JykudGV4dChuKSl9ZS5hdHRyKCJkYXRhLWdyb3VwcyIsdCl9YWRkR3JvdXBTZWxlY3QoeyRiZWZvcmU6ZT1udWxsLCRhcHBlbmRUbzp0PW51bGwsJGRyb3Bkb3duQ29udGFpbmVyOmk9bnVsbH0pe3JldHVybiBPbih7JGJlZm9yZTplLCRhcHBlbmRUbzp0LCRkcm9wZG93bkNvbnRhaW5lcjppLGJlZm9yZU1ha2luZ1NlbGVjdFBvcHVwOigpPT57aWYoImZvcmV4Ij09PXRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpe2NvbnN0IGU9dGhpcy5fbW9kZWwuc2VsZWN0ZWRHcm91cHM7LTE9PT1lLmluZGV4T2YoX3MpJiYoSXQuc2VjdG9yLnZhbHVlPWUpfX0sbWFrZVNlbGVjdFBvcHVwOmU9Pntjb25zdCB0PXt3cmFwQ2xhc3M6IiIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNwYWNlX3JpZ2h0IHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93biB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtc3RhdGUgYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtZml4ZWQgaS1kaXNhYmxlZCJ9OyJmb3JleCIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlJiYodC53cmFwQ2xhc3MrPSIgaS1oaWRkZW4iKTtjb25zdCBpPU9iamVjdC5hc3NpZ24oe2J1dHRvblRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc5MDY1NikpfSxlKTtyZXR1cm4gdGhpcy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHQsaSl9LGFmdGVyTWFraW5nU2VsZWN0UG9wdXA6KGUsdCxvKT0+e3Qub24oImNsaWNrIiwoKCk9PntvLm9mZigiY2hhbmdlIGNsaWNrIHRvdWNoZW5kIiksZS5hdHRyKHsiZGF0YS1zZWxlY3QtbmFtZSI6ImZvcmV4LWdyb3VwIn0pLAp0aGlzLl9jcmVhdGVNdWx0aVNlbGVjdEl0ZW1zRWxlbWVudCgic2VjdG9yIixvLGUsInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yIiwhMSwoZT0+e3QuZW1wdHkoKTtjb25zdCBvPVtdO2UuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkLCAuanMtZmlsdGVyLWNoZWNrYm94LWFueTpjaGVja2VkIikuZWFjaCgoKGUsdCk9Pntjb25zdCBpPXJzKHQpLmF0dHIoIm5hbWUiKTtvLnB1c2goaSl9KSksdGhpcy5fbW9kZWwuc2V0U2VsZWN0ZWRHcm91cHMobyk7Y29uc3QgaT1vLm1hcCgoZT0+aHRbZV18fGUpKTt0aGlzLnVwZGF0ZUdyb3Vwc0J1dHRvbih0LGkpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKX0pLCExLHVzKX0pKX0sYWZ0ZXJTZWxlY3RQb3B1cEFwcGVuZDooZSx0KT0+e3RoaXMuXyRncm91cFNlbGVjdD1lLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdC5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZm9yZXgtcGFpcnMiLCJkYXRhLXJvbGUiOiJidXR0b24ifSksdGhpcy51cGRhdGVHcm91cHNCdXR0b24odCx0aGlzLl9tb2RlbC5zZWxlY3RlZEdyb3Vwcyl9KSwhMCl9fSl9dXBkYXRlTWFya2V0QnV0dG9uKGUpe2NvbnN0IHQ9dGhpcy5fbW9kZWwubWFya2V0cyxvPXJzKCIuanMtc2NyZWVuZXItbWFya2V0LWJ1dHRvbiIpO2xldCBpLG4scjtpZigxPT09dC5sZW5ndGgpe2NvbnN0IGU9dFswXSxvPUYodGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSk7aT10WzBdLG49b1tlXS5mbGFnP2A8aW1nIGFsdD0iJHtzPW9bZV0uZmxhZ30iIGNyb3Nzb3JpZ2luIHNyYz0iJHsoMCxnby5mbGFnVXJsKShzKX0iIGNsYXNzPSJ0di1mbGFnLWNvdW50cnkgdHYtZmxhZy1jb3VudHJ5LS0ke3N9Ij5gOm9bZV0uaWNvbixyPW9bZV0udGl0bGV9ZWxzZSBpPSJnbG9iYWwiLHI9Imdsb2JhbCIsbj1ycygnXG5cdFx0XHRcdDxpIGFsdD0iZ2xvYmUiIGNsYXNzPSJ0di1mbGFnLWNvdW50cnkgdHYtZmxhZy1jb3VudHJ5LS1nbG9iZSI+XG5cdFx0XHRcdDwvaT5cblx0XHRcdCcpLmh0bWwobnMpO3ZhciBzO28uYXR0cih7ImRhdGEtbmFtZSI6InNjcmVlbmVyLW1hcmtldHMiLCJkYXRhLXJvbGUiOiJidXR0b24iLCJkYXRhLW1hcmtldCI6aX0pLG8uaHRtbChuKSxvLnBhcmVudCgpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0LS1oaWRkZW4iLCJzdG9jayIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKSxlJiZlLmFwcGVuZChgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2J1dHRvbi10aXRsZSI+XG5cdFx0XHRcdCR7cn1cblx0XHRcdDwvc3Bhbj48c3BhbiBjbGFzcz0idHYtY2FyZXQiPmApfV9zaG93TWFya2V0c0RpYWxvZygpe3duKHRoaXMuZ2V0U2NyZWVuZXJNYXJrZXREaWFsb2dPcHRpb25zKCkpfWFkZE1hcmtldFNlbGVjdCh7JGJlZm9yZTplPW51bGwsJGFwcGVuZFRvOnQ9bnVsbCwkZHJvcGRvd25Db250YWluZXI6aT1udWxsLGNhcHRpb246cj0hMSxjbGFzc1N1ZmZpeDpzPW51bGx9KXtpZih0aGlzLl9vbldpZGdldClyZXR1cm47Y29uc3QgYT1Pbih7JGJlZm9yZTplLCRhcHBlbmRUbzp0LCRkcm9wZG93bkNvbnRhaW5lcjppLG1ha2VTZWxlY3RQb3B1cDooKT0+e2NvbnN0IGU9e3dyYXBDbGFzczpzPyJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0IHR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QiK3M6InR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QiLGJ1dHRvbkNsYXNzOiJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19idXR0b24ganMtc2NyZWVuZXItbWFya2V0LWJ1dHRvbiBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCJ9LHt3cmFwQ2xhc3M6dCxidXR0b25DbGFzczppfT1lLG49cnMoYDxkaXYgY2xhc3M9IiR7dH0gdHYtZHJvcGRvd24gdHYtZHJvcGRvd24tLWlubGluZSB0di1kcm9wZG93bi1iZWhhdmlvciI+YCk7cmV0dXJueyR3cmFwOm4sJGJ1dHRvbjpycyhgPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2J1dHRvbiB0di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uICR7aX0iIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDU1MzE2NCkpfSI+YCkuYXBwZW5kVG8obil9fX0pO3JldHVybiB0aGlzLmdldFNjcmVlbmVyTWFya2V0RGlhbG9nT3B0aW9ucz0oKT0+KHt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg5ODQ3OTApKSxpbml0aWFsU2VsZWN0ZWRNYXJrZXRzOnRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ/WygwLG9zLmVudGlyZVdvcmxkTWFya2V0c1ByZXNldCkoKV06KDAsaXMuZ2V0TWFya2V0c0J5TmFtZXMpKFRuLHRoaXMuX21vZGVsLm1hcmtldHMpLGF1dG9mb2N1czohMCxpbml0aWFsTW9kZTooMCxlcy5pc0dsb2JhbFNjcmVlbmVyQXZhaWxhYmxlKSgpP24uZ2V0VmFsdWUodHMsUXIuTWFya2V0RGlhbG9nTW9kZS5TaW5nbGUpOlFyLk1hcmtldERpYWxvZ01vZGUuU2luZ2xlLGRlZmF1bHRNYXJrZXQ6eG4sb25TZWxlY3RDb21wbGV0ZTplPT57dmFyIHQ7dD1lLm1vZGUsbi5zZXRWYWx1ZSh0cyx0KTtjb25zdCBvPWUubWFya2V0cy5tYXAoKGU9PmUudmFsdWUpKTt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksdGhpcy4kZmlsdGVyc0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITApLHRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ9MT09PW8ubGVuZ3RoJiYiZW50aXJlX3dvcmxkIj09PW9bMF0sdGhpcy5fbW9kZWwuc2V0TWFya2V0KHRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ/W106bykudGhlbigoKCk9Pnt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSksdGhpcy4kZmlsdGVyc0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLHRoaXMudXBkYXRlTWFya2V0QnV0dG9uKHImJmF8fG51bGwpCn0pKS5jYXRjaCgoZT0+e2UmJmxzLmxvZ0Vycm9yKGUpfSkpfSxvbkNsb3NlOigpPT57KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHluLkNoYW5nZU1hcmtldEV2ZW50KHRoaXMuX21vZGVsLm1hcmtldHMuam9pbigiLCIpKSl9fSksYS5vbigiY2xpY2siLCgoKT0+e3duKHRoaXMuZ2V0U2NyZWVuZXJNYXJrZXREaWFsb2dPcHRpb25zKCkpfSkpLHRoaXMudXBkYXRlTWFya2V0QnV0dG9uKHImJmF8fG51bGwpLGF9cmVmcmVzaCgpe2RvY3VtZW50LmhpZGRlbnx8dGhpcy5fdGVtcEJ1c3l8fCh0aGlzLl9kYXRhJiYodGhpcy5fcHJldkRhdGE9dGhpcy5fZGF0YS5zbGljZSgpKSx0aGlzLl9tb2RlbC5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMuX21vZGVsLnVwZGF0ZShudWxsLCExLCExLCExLCEwKSl9Z2V0IHJlZnJlc2hJbnRlcnZhbHMoKXtyZXR1cm4gdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaD92czpnc31yZXNldFJlZnJlc2hDb3VudGVyKGUpe2lmKGNsZWFySW50ZXJ2YWwodGhpcy5fcmVmcmVzaENvdW50ZXJJbnRlcnZhbElkKSwhMD09PWUpcmV0dXJuO2xldCB0PXRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbDtjb25zdCBvPS0xPT09dHx8IXVzZXIuaXNfcHJvJiYhdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaDtpZih0aGlzLiRyZWZyZXNoQnV0dG9uJiZ0aGlzLiRyZWZyZXNoQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtY291bnRlciIsIW8mJiF0aGlzLl9tb2RlbC5pc0Zhc3RSZWZyZXNoKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmUiLCFvKSxvKXJldHVybjtjb25zdCBpPSgpPT57aWYoIXRoaXMuX21vZGVsLmlzRmFzdFJlZnJlc2gpe2NvbnN0IGU9dC82MHwwLG89dCU2MDt0aGlzLiRyZWZyZXNoQ291bnRlci50ZXh0KGAke2AwMCR7ZX1gLnNsaWNlKC0yKX06JHtgMDAke299YC5zbGljZSgtMil9YCl9dDw9MD90aGlzLnJlZnJlc2goKTotLXR9O2koKSx0Pj0wJiYodGhpcy5fcmVmcmVzaENvdW50ZXJJbnRlcnZhbElkPXNldEludGVydmFsKGksMWUzKSl9cHJldmVudEhpZ2hsaWdodENoYW5nZXMoKXt0aGlzLl9wcmV2ZW50SGlnaGxpZ2h0Q2hhbmdlcz0hMH1oaWdobGlnaHRDaGFuZ2VzKCl7aWYodGhpcy5fcHJldmVudEhpZ2hsaWdodENoYW5nZXMpcmV0dXJuIHZvaWQodGhpcy5fcHJldmVudEhpZ2hsaWdodENoYW5nZXM9ITEpO2lmKCF0aGlzLl9wcmV2RGF0YXx8IXRoaXMuX2RhdGF8fHRoaXMuX21vZGVsLm1hcmtldENoYW5nZVByb2Nlc3MpcmV0dXJuO2NvbnN0IGU9e307Zm9yKGxldCB0PTA7dDwodGhpcy5fcHJldkRhdGF8fFtdKS5sZW5ndGg7Kyt0KWVbdGhpcy5fcHJldkRhdGFbdF0uc109dGhpcy5fcHJldkRhdGFbdF0uZDtpZihkZWxldGUgdGhpcy5fcHJldkRhdGEsdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaCl7Y29uc3QgdD1bImJpZCIsImFzayIsImNsb3NlIl07Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhLmxlbmd0aDsrK28pe2NvbnN0IGk9dGhpcy5fZGF0YVtvXS5zLG49dGhpcy5fZGF0YVtvXS5kLHI9ZVtpXTtpZighciljb250aW51ZTtjb25zdCBzPSgpPT57dGhpcy5fdGFibGUuZmxpY2tSb3coaSl9O2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXtjb25zdCBvPXRbZV0scz10aGlzLl90YWJsZS5maWVsZHNPcmRlci5pbmRleE9mKG8pO2lmKG5bc10hPT1yW3NdKXtjb25zdCBlPW5bc10+cltzXTt0aGlzLl90YWJsZS5oaWdobGlnaHRDZWxsKGksbyxlKX19c2V0VGltZW91dChzLDFlMyl9cmV0dXJufWNvbnN0IHQ9W107Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhLmxlbmd0aDsrK28pe2NvbnN0IGk9dGhpcy5fZGF0YVtvXS5zLG49dGhpcy5fZGF0YVtvXS5kLHI9ZVtpXTtpZighciljb250aW51ZTtsZXQgcz0hMTtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoOysrZSlpZihuW2VdIT09cltlXSl7cz0hMDticmVha31zJiZ0LnB1c2goaSl9dC5sZW5ndGgmJnRoaXMuX3RhYmxlLiR0Ym9keS5maW5kKGB0cltkYXRhLXN5bWJvbD0iJHt0LmpvaW4oJyJdLHRyW2RhdGEtc3ltYm9sPSInKX0iXWApLmFkZENsYXNzKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZmxpY2siKX1fY3JlYXRlU3dpdGNoKGUpe3RoaXMuJHN3aXRjaD1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fc3dpdGNoIj4nKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKTtjb25zdCB0PXttb2RlczplLG9uQ2hhbmdlOmU9PnRoaXMuX21vZGVsLmFwcGx5U3dpdGNoKGUpfTshZnVuY3Rpb24oZSx0KXtEaS5yZW5kZXIoTGkuY3JlYXRlRWxlbWVudChxaSx7Li4udH0pLGUpfSh0aGlzLiRzd2l0Y2hbMF0sdCl9Z2V0IGNvbmRpdGlvbk9wZXJhdG9ycygpe3JldHVybiBjc319dmFyIFNzPW8oMjAzNjgxKSx3cz1vKDM4NjkzMSksQ3M9bygxNTI2OTkpLGtzPW8oNTY5Mzk4KTtjb25zdCBUcz0oKT0+d2luZG93LlNDUkVFTkVSX0hPU1R8fCJodHRwczovL3NjYW5uZXIudHJhZGluZ3ZpZXcuY29tIjt2YXIgRXM9bygxNTY4NTApO2NsYXNzIHhze2NvbnN0cnVjdG9yKCl7dGhpcy5fbG9jYWxTZXR0aW5ncz17fX1nZXRWYWx1ZShlLHQpe3JldHVybiB0aGlzLl9sb2NhbFNldHRpbmdzLmhhc093blByb3BlcnR5KGUpP3RoaXMuX2xvY2FsU2V0dGluZ3NbZV06dH1zZXRWYWx1ZShlLHQpe3RoaXMuX2xvY2FsU2V0dGluZ3NbZV09dH1nZXRJbnQoZSx0KXtyZXR1cm4gdGhpcy5nZXRWYWx1ZShlLHQpfWdldEJvb2woZSx0KXtyZXR1cm4gdGhpcy5nZXRWYWx1ZShlLHQpfXNldEludChlLHQpe3RoaXMuc2V0VmFsdWUoZSx0KX1nZXRKU09OKGUsdCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUoZSx0KX1zZXRKU09OKGUsdCl7dGhpcy5zZXRWYWx1ZShlLHQpfXJlbW92ZShlKXt0aGlzLl9sb2NhbFNldHRpbmdzLmhhc093blByb3BlcnR5KGUpJiZkZWxldGUgdGhpcy5fbG9jYWxTZXR0aW5nc1tlXX19dmFyIEFzPW8oMjMyOTQ4KSxNcz1vKDMwNTQ2Nik7ZnVuY3Rpb24gSXMoZSl7Y29uc3R7dmFsdWU6dCxpc01hcmtldEN1cnJlbmN5OmksY29udGVudDpufT1lCjtyZXR1cm4gdD09PUxzLlNZTUJPTD9fLnQobnVsbCx2b2lkIDAsbyg3MDk0OTcpKTppJiZ0PT09THMuTUFSS0VUP18udChudWxsLHZvaWQgMCxvKDkzOTEzNikpOmk/Xy50KG51bGwsdm9pZCAwLG8oOTM5MTM2KSkrYCAoJHtufSlgOm59ZnVuY3Rpb24gUnMoZSl7Y29uc3R7aXNHbG9iYWw6dCxmaW5hbmNpYWxDdXJyZW5jeTppLHN5bWJvbEN1cnJlbmNpZXM6bn09ZTtsZXQgcj1bXTt0JiZyLnB1c2goe3ZhbHVlOkxzLk1BUktFVCxpc01hcmtldEN1cnJlbmN5OiEwLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oOTM5MTM2KSksZGVzY3JpcHRpb246Xy50KG51bGwsdm9pZCAwLG8oMzg3MzUyKSl9KTtjb25zdCBzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU/e3ZhbHVlOkxzLkdMT0JBTCxpc01hcmtldEN1cnJlbmN5OiExLGNvbnRlbnQ6RHMuVVNELGRlc2NyaXB0aW9uOl8udChudWxsLHZvaWQgMCxvKDYwNTY3NCkpfTp7dmFsdWU6dCxpc01hcmtldEN1cnJlbmN5OiEwLGNvbnRlbnQ6dCxkZXNjcmlwdGlvbjpfLnQobnVsbCx2b2lkIDAsbygzODczNTIpKX19KHQsaSk7ci5wdXNoKHMpO2NvbnN0IGE9T2JqZWN0LmtleXMoRHMpLmZpbHRlcigoZT0+ZSE9PWkpKSxsPWEubWFwKChlPT4oe3ZhbHVlOmUsaXNNYXJrZXRDdXJyZW5jeTohMSxjb250ZW50OmUsZGVzY3JpcHRpb246dm9pZCAwfSkpKTtyPVsuLi5yLC4uLmxdO3JldHVybiAxPT09bi5sZW5ndGgmJltpLC4uLmFdLmluY2x1ZGVzKG5bMF0pfHxyLnVuc2hpZnQoe3ZhbHVlOkxzLlNZTUJPTCxpc01hcmtldEN1cnJlbmN5OiExLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oNzA5NDk3KSksZGVzY3JpcHRpb246Xy50KG51bGwsdm9pZCAwLG8oMTk0NjAwKSl9KSx7ZGVmYXVsdEN1cnJlbmN5OnMsY3VycmVuY2llczpyfX1jbGFzcyBGc3tjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjb252ZXJ0X2N1cnJlbmN5Iix0aGlzLnNvdXJjZT0iY29udmVydF9jdXJyZW5jeV9zZWxlY3RvciIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPWV9fXZhciBMcyxEcyxPcz1vKDQ4MjUwNCk7IWZ1bmN0aW9uKGUpe2UuTUFSS0VUPSJtYXJrZXQiLGUuU1lNQk9MPSJzeW1ib2wiLGUuR0xPQkFMPSJnbG9iYWwifShMc3x8KExzPXt9KSksZnVuY3Rpb24oZSl7ZS5VU0Q9IlVTRCJ9KERzfHwoRHM9e30pKTtjbGFzcyBOc3tjb25zdHJ1Y3RvcihlLHQsaSl7dGhpcy5jcmVhdGVDdXJyZW5jeVNlbGVjdD0oKT0+KHtzZWxlY3RCdXR0b246dGhpcy5faW5pdEN1cnJlbmN5U2VsZWN0KHskYmVmb3JlOnRoaXMuX3ZpZXcuJGZpbHRlclNldHNCdXR0b24ucGFyZW50KCl9KS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItcHJpY2UtY3VycmVuY3kiLCJkYXRhLXJvbGUiOiJidXR0b24ifSksY3VycmVuY3lTZWxlY3Q6dGhpc30pLHRoaXMuZ2V0UHJpY2VDb252ZXJzaW9uT2JqZWN0PSgpPT57Y29uc3R7dmFsdWU6ZSxpc01hcmtldEN1cnJlbmN5OnR9PXRoaXMuZ2V0Q3VycmVudEN1cnJlbmN5KCk7cmV0dXJuIGU9PT1Mcy5TWU1CT0w/e3RvX3N5bWJvbDohMH06dD97dG9fc3ltYm9sOiExfTplPT09THMuR0xPQkFMP251bGw6e3RvX3N5bWJvbDohMSx0b19jdXJyZW5jeTplfX0sdGhpcy5faW5pdEN1cnJlbmN5U2VsZWN0PWU9Pntjb25zdHskYmVmb3JlOnQ9bnVsbCwkYXBwZW5kVG86bz1udWxsLCRkcm9wZG93bkNvbnRhaW5lcjppPW51bGx9PWU7aWYoISh0fHxvKSl0aHJvdyBuZXcgRXJyb3IoIlByb3ZpZGUgYXQgbGVhc3Qgb25lIG9mICRiZWZvcmUgb3IgJGFwcGVuZFRvIGZvciBTZWNyZWVuZXJDdXJyZW5jeVNlbGVjdCIpO3JldHVybiBPbih7JGJlZm9yZTp0LCRhcHBlbmRUbzpvLCRkcm9wZG93bkNvbnRhaW5lcjppLG1ha2VTZWxlY3RQb3B1cDp0aGlzLl9jcmVhdGVTZWxlY3RCdXR0b24sYWZ0ZXJNYWtpbmdTZWxlY3RQb3B1cDp0aGlzLl9zZXRTZWxlY3RDb250ZW50LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6dGhpcy5fb25Mb2FkfSl9LHRoaXMuX2NyZWF0ZVNlbGVjdEJ1dHRvbj1lPT57Y29uc3QgdD17YnV0dG9uVGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjEzMTQpKSwuLi5lfTtyZXR1cm4gdGhpcy5fdmlldy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHt3cmFwQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2N1cnJlbmN5LXNlbGVjdCIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRlIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIn0sdCl9LHRoaXMuX3NldFNlbGVjdENvbnRlbnQ9KGUsdCxvKT0+e28uZW1wdHkoKTtmb3IoY29uc3QgZSBvZiB0aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzKXtjb25zdHt2YWx1ZTp0LGNvbnRlbnQ6aSxkZXNjcmlwdGlvbjpufT1lLHI9SXMoZSk7T3MoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGRpdlxuXHRcdFx0XHRcdGRhdGEtY3VycmVuY3k9IiR7dH0iXG5cdFx0XHRcdFx0dGl0bGU9IiR7bnx8aX0iXG5cdFx0XHRcdFx0Y2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSBqcy1jdXJyZW5jeS1zZWxlY3QgJHt0PT09dGhpcy5fY3VycmVudEN1cnJlbmN5LnZhbHVlPyJ0di1zY3JlZW5lci1wb3B1cF9fY3VycmVuY3ktc2VsZWN0LS1hY3RpdmUiOiIifSJcblx0XHRcdFx0PlxuXHRcdFx0XHRcdCR7cn1cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5gKS5hcHBlbmRUbyhvKX1lLm9uKCJhZnRlck9wZW5NZW51IiwoKCk9PntvLm9uKCJjbGljayIsIi5qcy1jdXJyZW5jeS1zZWxlY3QiLCh0PT57dC5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGk9dGhpcy5fY3VycmVudEN1cnJlbmN5LnZhbHVlLG49dC5jdXJyZW50VGFyZ2V0LmRhdGFzZXQuY3VycmVuY3kKO24mJm4hPT1pJiYoby5maW5kKCIudHYtc2NyZWVuZXItcG9wdXBfX2N1cnJlbmN5LXNlbGVjdC0tYWN0aXZlIikucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19jdXJyZW5jeS1zZWxlY3QtLWFjdGl2ZSIpLG8uZmluZChgW2RhdGEtY3VycmVuY3k9JyR7bn0nXWApLmFkZENsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9fY3VycmVuY3ktc2VsZWN0LS1hY3RpdmUiKSx0aGlzLl9oYW5kbGVTZWxlY3Qobiksc2V0VGltZW91dCgoKCk9PntlLnR2RHJvcGRvd24oImNsb3NlIiksby5vZmYoImNsaWNrIil9KSxtby5kdXIvMikpfSkpfSkpfSx0aGlzLl9oYW5kbGVTZWxlY3Q9ZT0+e3RoaXMuX2N1cnJlbnRDdXJyZW5jeT10aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzLmZpbHRlcigodD0+dC52YWx1ZT09PWUpKVswXSxmdW5jdGlvbihlKXtpZihlLmlzTWFya2V0Q3VycmVuY3kpcmV0dXJuIHZvaWQoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgRnMoIm1hcmtldF9jdXJyZW5jeSIpKTtpZihlLnZhbHVlPT09THMuU1lNQk9MKXJldHVybiB2b2lkKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEZzKCJzeW1ib2xfY3VycmVuY3kiKSk7KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEZzKCJ1c2QiKSl9KHRoaXMuX2N1cnJlbnRDdXJyZW5jeSksdGhpcy5fdXBkYXRlU2VsZWN0QnV0dG9uKCksdGhpcy5fdmlldy5wcmV2ZW50SGlnaGxpZ2h0Q2hhbmdlcygpLHRoaXMuX3ZpZXcucmVmcmVzaCgpfSx0aGlzLl9vbkxvYWQ9KGUsdCk9Pnt0aGlzLl92aWV3Ll9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dC5yZW1vdmVDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMuX3VwZGF0ZVNlbGVjdEJ1dHRvbigpfSksITApfSx0aGlzLl91cGRhdGVTZWxlY3RCdXR0b249KCk9Pntjb25zdHtjb250ZW50OmV9PXRoaXMuX2N1cnJlbnRDdXJyZW5jeSx0PV8udChudWxsLHZvaWQgMCxvKDM0MTI0NCkpK2A6ICR7ZX1gO3RoaXMuX3ZpZXcuXyRjdXJyZW5jeVNlbGVjdEJ1dHRvbi5odG1sKHQpfSx0aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzPWUsdGhpcy5fY3VycmVudEN1cnJlbmN5PXQsdGhpcy5fdmlldz1pfWdldEN1cnJlbnRDdXJyZW5jeSgpe3JldHVybiB0aGlzLl9jdXJyZW50Q3VycmVuY3l9fWZ1bmN0aW9uIFBzKGUsdCxvKXtvLl8kY3VycmVuY3lTZWxlY3RCdXR0b24mJihvLl8kY3VycmVuY3lTZWxlY3RCdXR0b24ucGFyZW50KCkucmVtb3ZlKCksby5fbW9kZWwuX2N1cnJlbmN5U2VsZWN0PXZvaWQgMCk7Y29uc3QgaT1vLl9icmlkZ2U7aWYoIWV8fCgwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKGkpfHxpLmhpZGVfY29udHJvbHMpcmV0dXJuO2NvbnN0IG49ZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZS5fbW9kZWwubWFya2V0cykmJmUuX21vZGVsLm1hcmtldHMubGVuZ3RoPjF9KG8pLHtkZWZhdWx0Q3VycmVuY3k6cixjdXJyZW5jaWVzOnN9PVJzKHtpc0dsb2JhbDpuLGZpbmFuY2lhbEN1cnJlbmN5OmUsc3ltYm9sQ3VycmVuY2llczp0fSk7aWYoMT09PXMubGVuZ3RoKXJldHVybjtjb25zdCBhPW5ldyBOcyhzLHIsbykse3NlbGVjdEJ1dHRvbjpsLGN1cnJlbmN5U2VsZWN0OmN9PWEuY3JlYXRlQ3VycmVuY3lTZWxlY3QoKTtvLl8kY3VycmVuY3lTZWxlY3RCdXR0b249bCxvLl9tb2RlbC5fY3VycmVuY3lTZWxlY3Q9Y312YXIgQnM9byg5MjY5OTUpLCRzPW8oMzUxODI3KTtjb25zdCBXcz17c3RvY2s6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDU2MzUzMCkpLGNvbnRlbnRUZXh0Ol8udChudWxsLHZvaWQgMCxvKDMyNzMwNSkpLGNvbmZpcm1BY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUzMjEwOSkpLGhhbmRsZXI6KCk9PndpbmRvdy5vcGVuKCIvc2NyZWVuZXIvIiwiX2JsYW5rIil9LGNsb3NlQWN0aW9uOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjI5ODYpKSxoYW5kbGVyOigpPT4oMCxCcy5zaG93U3VwcG9ydERpYWxvZykoe3NvbHV0aW9uSWQ6NDMwMDA3MTg4NjZ9KX19LGNyeXB0bzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzQ4NTQ0KSksY29udGVudFRleHQ6Xy50KG51bGwse3JlcGxhY2U6e2NyeXB0b0NvaW5zU2NyZWVuZXJMaW5rU3RhcnQ6YDxhIGhyZWY9Ii9jcnlwdG8tY29pbnMtc2NyZWVuZXIvP2Zyb209b2xkLWNyeXB0by1wYWlycyIgY2xhc3M9IiR7JHMubGlua30iIHRhcmdldD0iX2JsYW5rIj5gLGNleFNjcmVlbmVyTGlua1N0YXJ0OmA8YSBocmVmPSIvY2V4LXNjcmVlbmVyLz9mcm9tPW9sZC1jcnlwdG8tcGFpcnMiIGNsYXNzPSIkeyRzLmxpbmt9IiB0YXJnZXQ9Il9ibGFuayI+YCxkZXhTY3JlZW5lckxpbmtTdGFydDpgPGEgaHJlZj0iL2RleC1zY3JlZW5lci8/ZnJvbT1vbGQtY3J5cHRvLXBhaXJzIiBjbGFzcz0iJHskcy5saW5rfSIgdGFyZ2V0PSJfYmxhbmsiPmAsbGlua0VuZDoiPC9hPiJ9fSxvKDUyOTE2MCkpLGNvbmZpcm1BY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDI5MjAzOCkpLGhhbmRsZXI6KCk9PndpbmRvdy5vcGVuKCIvY2V4LXNjcmVlbmVyLz9mcm9tPW9sZC1jcnlwdG8tcGFpcnMiLCJfYmxhbmsiKX0sY2xvc2VBY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDcyNDkxMikpLGhhbmRsZXI6KCk9Pnt9fX19O3ZhciBxcz1vKDc0Njk0OSksVnM9byg0ODI1MDQpO28oNzExOTc5KTtjb25zdCBIcz1vKDIyNTI5OCkubGlua2luZyx7RGVsZWdhdGU6VXN9PW8oOTQ4MzgwKSx6cz1vKDE2MDI5NiksanM9bygyMjEwNjEpLmdldExvZ2dlcigiU2NyZWVuZXIuV2lkZ2V0IiksR3M9d2luZG93LmxvY2FsZXx8ImVuIjtsZXQgWHM9MTUwO2NvbnN0IEtzPWU9Pkl0W2VdJiYhMCE9PUl0W2VdLmRpc2FibGVkJiYhMCE9PUl0W2VdLmhpZGRlbkNvbHVtbixZcz17Zm9yZXg6InNjcmVlbmVyLWZvcmV4IixjcnlwdG86InNjcmVlbmVyLWNyeXB0byIsc3RvY2s6InNjcmVlbmVyIn0sSnM9WyJwcmljZXNjYWxlIiwibWlubW92IiwiZnJhY3Rpb25hbCIsIm1pbm1vdmUyIl07dmFyIFpzPW8oNDgyNTA0KTsoMCxfby5lbmFibGUpKCJ3aWRnZXQiKTtjb25zdCBRcz0oMCwKc28uZXh0cmFjdFdpZGdldFNldHRpbmdzKSh3aW5kb3cuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMpLGVhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNqcy1zY3JlZW5lci1jb250YWluZXIiKSx0YT1Rcy5sb2NhbGV8fCJlbiI7IWZ1bmN0aW9uKGUsdCxvLGk9e30pe2lmKG51bGw9PT1lLnBhcmVudEVsZW1lbnQpcmV0dXJuIGNvbnNvbGUud2FybigiQ2FuIG5vdCB3cmFwICdlbFdpZGdldENvbnRhaW5lcicgYmVjYXVzZSBpdCBoYXMgbm8gcGFyZW50RWxlbWVudCIpLGU7bGV0IG49bnVsbCxkPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtYm9keSIpO2NvbnN0IGg9bnVsbCE9PWQ7aWYoaCl7ZD0oMCxyLmVuc3VyZU5vdE51bGwpKGQpLG49KDAsci5lbnN1cmVOb3ROdWxsKShkLnBhcmVudEVsZW1lbnQpO2xldCBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtaGVhZCIpO251bGw9PT1lJiYoZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxlLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19oZWFkZXIiKSxlLmNsYXNzTGlzdC5hZGQoImpzLWVtYmVkLXdpZGdldC1oZWFkIiksbi5pbnNlcnRCZWZvcmUoZSxkKSl9ZWxzZSBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG4uY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXIiKSxuLmlubmVySFRNTD0nPGRpdiBjbGFzcz0idHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlciBqcy1lbWJlZC13aWRnZXQtaGVhZCI+PC9kaXY+PGRpdiBjbGFzcz0idHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHkganMtZW1iZWQtd2lkZ2V0LWJvZHkiPjwvZGl2PicsZD1uLnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtYm9keSIpO2lmKGkub3ZlcmZsb3dBdXRvJiZkLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRvIiksaS5zaG93Qm9yZGVyT25UcmFuc3BhcmVudCYmZC5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keS0tYm9yZGVyLW9uLXRyYW5zcGFyZW50IiksIWkuaXNXaGl0ZUxhYmVsKXshYXN5bmMgZnVuY3Rpb24oZSx0LG8saSxuPXt9KXtjb25zdCBkPW4uaXNTaGVyaWZmRGlzYWJsZWQ/W106YXdhaXQoMCxzLmdldFdpZGdldFNoZXJpZmZBY3Rpb25zKSgpLGg9ZC5pbmNsdWRlcyhjLktub3duQWN0aW9uLkxhcmdlVHJhZGVMb2dvKSx1PWZ1bmN0aW9uKGUpe3JldHVyblsiY3J5cHRvLWNvaW5zLWhlYXRtYXAiLCJmb3JleC1jcm9zcy1yYXRlcyIsIm1hcmtldC1vdmVydmlldyIsInN5bWJvbC1vdmVydmlldyIsIm1hcmtldC1xdW90ZXMiLCJzdG9jay1oZWF0bWFwIiwic2NyZWVuZXIiLCJmb3JleC1oZWF0LW1hcCIsImNyeXB0by1ta3Qtc2NyZWVuZXIiLCJldmVudHMiLCJob3RsaXN0cyJdLmluY2x1ZGVzKGUpfSh0KSxfPWgmJnU/ImxhcmdlX3RyYWRlIjp2b2lkIDAscD1hd2FpdCgwLGwuZ2V0Q3VzdG9tZXJDb3B5cmlnaHREYXRhKShuLmN1c3RvbWVyLG4ubG9jYWxlLCgwLGwuYWRkVXRtQ2FtcGFpZ25Tb3VyY2UpKHsuLi5pfSwibG9nbyIpLF8pLG09Xz8/bi5jb3B5cmlnaHRPcHRpb25zPy5tb2RlPz8ic21hbGxfb2xkIjsoMCxyLmVuc3VyZU5vdE51bGwpKGUpLmFwcGVuZENoaWxkKCgwLGEuY3JlYXRlQ29weXJpZ2h0TGFiZWwpKHtzaGVyaWZmT3B0aW9uczpkLHNuYXBUb0VkZ2U6bywuLi5uLmNvcHlyaWdodE9wdGlvbnMsLi4ucCxtb2RlOm19KSl9KGQsdCwhZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiaXMtdHJhbnNwYXJlbnQiKXx8Qm9vbGVhbihpLnNob3dCb3JkZXJPblRyYW5zcGFyZW50KSxvLGkpfWh8fChlLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKG4sZSksZC5hcHBlbmRDaGlsZChlKSl9KGVhLCJzY3JlZW5lciIsKDAsdS5maWx0ZXJVdG1JbmZvKShRcykse2lzV2hpdGVMYWJlbDpRcy53aGl0ZWxhYmVsLGxvY2FsZTp0YSxvdmVyZmxvd0F1dG86ITB9KTtjb25zdCBvYT1acygiI2pzLXNjcmVlbmVyLWNvbnRhaW5lciIpLGlhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtaGVhZCIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKS5zdHlsZS5oZWlnaHQ9YGNhbGMoMTAwJSAtICR7aWF9cHgpYCxRcy5pc1RyYW5zcGFyZW50JiZvYS5hZGRDbGFzcygidHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50Iik7Y29uc3QgbmE9ZnVuY3Rpb24oZSl7Y29uc3QgdD1ubyhGKCJzdG9jayIpLGUpLG89bm8oRigiZm9yZXgiKSxlKSxpPW5vKEYoImNyeXB0byIpLGUpO3JldHVybiB0LmNvbmNhdChvKS5jb25jYXQoaSl9KHdpbmRvdy5UcmFkaW5nVmlldy53aWRnZXRDdXN0b21lcikubWFwKChlPT5lLnZhbHVlKSkscmE9WyJtb3JvY2NvIl0sc2E9W107aWYoUXMucGVybWlzc2lvbk92ZXJyaWRlcz8ubWFya2V0Py5pbmNsdWRlcygidWsiKXx8c2EucHVzaCgidWsiKSxRcy5tYXJrZXQpe2NvbnN0IGU9IW5hLmluY2x1ZGVzKFFzLm1hcmtldCksdD1yYS5pbmNsdWRlcyhRcy5tYXJrZXQpLG89c2EuaW5jbHVkZXMoUXMubWFya2V0KTsoZSYmIXR8fG8pJiYoUXMubWFya2V0PW5hWzBdKX12YXIgYWE7UXMuc2NyZWVuZXJfdHlwZXx8KFFzLnNjcmVlbmVyX3R5cGU9dm9pZCAwPT09KGFhPVFzLm1hcmtldCk/ZC5TdG9jazpbImZvcmV4IiwiY3J5cHRvIl0uaW5jbHVkZXMoYWEpP2FhOmQuU3RvY2spO2NvbnN0IGxhPVFzLnNjcmVlbmVyX3R5cGU9PT1kLkNyeXB0b01rdD8iY3J5cHRvbWt0c2NyZWVuZXIiOiJmb3JleHNjcmVlbmVyIixjYT1Rcy5zY3JlZW5lcl90eXBlPT09ZC5DcnlwdG9Na3Q/ImNyeXB0by1ta3Qtc2NyZWVuZXIiOiJzY3JlZW5lciI7IWFzeW5jIGZ1bmN0aW9uKGUpe2F3YWl0IG5ldyBQcm9taXNlKChlPT5zZXRUaW1lb3V0KGUsMCkpKSwoYXdhaXQoMCwKYW8uZ2V0VHJhY2tlcikoKSk/LnRyYWNrU2VsZkRlc2MoImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldHNfd2l0aG91dF93ZWJzb2NrZXQvanNvbnNjaGVtYS8xLTAtMCIsey4uLmhvKCksd2lkZ2V0X2lkOmUsZXZlbnRfbmFtZToicGFnZV92aWV3In0pfShsYSk7dHJ5eygwLHVvLnRyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvKSh7d2lkZ2V0X2lkOmNhLHN5bWJvbHM6SlNPTi5zdHJpbmdpZnkoW1FzLm1hcmtldF0pLGN1c3RvbWVyOlFzLmN1c3RvbWVyfSl9Y2F0Y2h7fWNvbnN0IGRhPXskYm9keTpvYSxzdGFuZGFsb25lOiExLG9uV2lkZ2V0OiEwLHdpZGdldFNldHRpbmdzOlFzLGhpZGVfY29udHJvbHM6IVFzLnNob3dUb29sYmFyLG1hcmtlZF9zeW1ib2xzX2Rpc2FibGVkOiEwLHRhYmxlX2NvbnRleHRfbWVudV9kaXNhYmxlZDohMSxvcGVuX2NoYXJ0X29uX3NhbWVfdGFiOiExLHNlbGVjdGlvbl9kaXNhYmxlZDohMCxkaXNhYmxlU3RpY2t5SGVhZGVyOiExLGlzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQ6ISghUXMubWFya2V0fHwhZnVuY3Rpb24oZSl7cmV0dXJuIFcuaW5jbHVkZXMoZSl9KFFzLm1hcmtldCkpfTtWKClbUXMubWFya2V0XSYmKGRhLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzPVYoKVtRcy5tYXJrZXRdKSxuZXcgY2xhc3N7Y29uc3RydWN0b3IoZSl7aWYodGhpcy5fYnJpZGdlPWUsdGhpcy5fcGVuZGluZ1Byb21pc2U9bnVsbCwhKCIkYm9keSJpbiBlKSYmImNvbnRhaW5lciJpbiBlJiYodGhpcy5fYnJpZGdlLiRib2R5PVZzKGUuY29udGFpbmVyKSksdGhpcy5fYnJpZGdlLm9uV2lkZ2V0fHwiYmlnIj09PXRoaXMuX2JyaWRnZS50YWJsZV9zdHlsZT90aGlzLnNldHRpbmdzU2F2ZXI9bmV3IHhzOnRoaXMuc2V0dGluZ3NTYXZlcj1uLHRoaXMuX2JyaWRnZS5wYWdlX3NpemUmJihYcz10aGlzLl9icmlkZ2UucGFnZV9zaXplKSx0aGlzLl9icmlkZ2Uub25XaWRnZXQpe2xldCB0O2lmKGUud2lkZ2V0U2V0dGluZ3MubGFyZ2VDaGFydFVybCl7dD1lLndpZGdldFNldHRpbmdzLmxhcmdlQ2hhcnRVcmw7dC5tYXRjaCgvXmh0dHBzPzpcL1wvLyl8fCh0PSJodHRwOi8vIit0KX1pZih0aGlzLmxhcmdlQ2hhcnRVcmw9dCx0aGlzLnV0bT0oMCx1LmZpbHRlclV0bUluZm8pKGUud2lkZ2V0U2V0dGluZ3MpLHRoaXMuc2NyZWVuZXJfdHlwZT1lLndpZGdldFNldHRpbmdzLnNjcmVlbmVyX3R5cGUsImNyeXB0b19ta3QiPT09dGhpcy5zY3JlZW5lcl90eXBlKXtjb25zdCB0PSJCVEMiPT09ZS53aWRnZXRTZXR0aW5ncy5kaXNwbGF5Q3VycmVuY3k/IkJUQyI6IlVTRCI7dGhpcy5zd2l0Y2hGaWx0ZXI9e2xlZnQ6Im5hbWUiLG9wZXJhdGlvbjoibWF0Y2giLHJpZ2h0OnQrIiQifSxadC51bnNoaWZ0KHtpZDoiY3J5cHRvX21rdCIsdGl0bGU6ImNyeXB0b19ta3QiLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfY2FsYyIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e3NlY3Rvcjp7b3BlcmF0b3I6Im5lbXB0eSJ9fX19KX19ZWxzZSB0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT90aGlzLnNjcmVlbmVyX3R5cGU9ZS5zY3JlZW5lcl90eXBlfHwic3RvY2siOnRoaXMuc2NyZWVuZXJfdHlwZT1kLkNyeXB0bzt0aGlzLnNldHRpbmdLZXk9WXNbdGhpcy5zY3JlZW5lcl90eXBlXXx8WXMuc3RvY2ssdGhpcy5fYnJpZGdlLm9uV2lkZ2V0JiZ0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUoYCR7R3N9LiR7dGhpcy5zZXR0aW5nS2V5fS5tYXJrZXRgLGUud2lkZ2V0U2V0dGluZ3MubWFya2V0LHtmb3JjZUZsdXNoOiEwfSksdGhpcy5kZWZhdWx0RmllbGRTZXRzPWcoe3NjcmVlbmVyVHlwZTp0aGlzLnNjcmVlbmVyX3R5cGUsbWFya2V0czp0aGlzLm1hcmtldHMsaXNDb21wYWN0OnRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSxzdWJ0eXBlOnRoaXMuX3NjcmVlbmVyU3VidHlwZSgpLGlzT25XaWRnZXQ6dGhpcy5fYnJpZGdlLm9uV2lkZ2V0fSksdGhpcy5fYnJpZGdlLm9uV2lkZ2V0JiYodGhpcy5fd2lkZ2V0SW5pdENvbHVtbj1lLndpZGdldFNldHRpbmdzLmRlZmF1bHRDb2x1bW58fHRoaXMuZGVmYXVsdEZpZWxkU2V0c1swXS5pZCx0aGlzLl93aWRnZXRJbml0U2NyZWVuPWUud2lkZ2V0U2V0dGluZ3MuZGVmYXVsdFNjcmVlbnx8WnRbMF0uaWQpLFB0KHRoaXMuc2NyZWVuZXJfdHlwZSx0aGlzLl9zY3JlZW5lclN1YnR5cGUoKSksImZvcmV4Ij09PXRoaXMuc2NyZWVuZXJfdHlwZSYmUXQoWyJmb3JleCJdKSx0aGlzLl9icmlkZ2UuZ2V0Q3VycmVudEZpbHRlclNldElkPSgpPT50aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpLHRoaXMuX2JyaWRnZS5hcHBseVN5bWJvbD0oZSx0PSExKT0+e2lmKCEwPT09dHx8dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2xldCB0PSIiO2NvbnN0IG89KDAsTXMuZ2V0U2hvcnROYW1lQW5kUHJvTmFtZSkoZSk7dD10aGlzLl9icmlkZ2Uub25XaWRnZXQmJnRoaXMubGFyZ2VDaGFydFVybD8oMCxMci5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKHRoaXMubGFyZ2VDaGFydFVybCxvKTooMCxMci5tYWtlU3ltYm9sQ2hhcnRVcmwpKG8sdGhpcy51dG0pLHdpbmRvdy5vcGVuKHQpfWVsc2UgSHMuc2V0U3ltYm9sQW5kTG9nSW5pdGlhdG9yKGUsInNjcmVlbmVyIil9LHRoaXMuX2JyaWRnZS5hcHBseUZpbHRlclNldD0oZSx0KT0+e2NvbnN0IG89ISgwLF9pLmRlZmF1bHQpKHQuc29ydCgpLHRoaXMubWFya2V0cy5zb3J0KCkpLGk9b3x8ZSE9PXRoaXMuY3VycmVudEZpbHRlclNldElkKCk7bGV0IG49bz90aGlzLnNldE1hcmtldCh0KS50aGVuKCgoKT0+dGhpcy5fdmlldy51cGRhdGVNYXJrZXRCdXR0b24oKSkpOlByb21pc2UucmVzb2x2ZSgpO3JldHVybiBpJiYobj1uLnRoZW4oKCgpPT50aGlzLmFwcGx5RmlsdGVyU2V0KGUpKSkpLG59LHRoaXMuZGlzYWJsZWQ9bmV3IHBvLldhdGNoZWRWYWx1ZSx0aGlzLmZpZWxkc09yZGVyPW5ldyBwby5XYXRjaGVkVmFsdWUsdGhpcy5fc29ydEZpZWxkPW5ldyBwby5XYXRjaGVkVmFsdWUsdGhpcy5fc29ydERpcmVjdGlvbj1uZXcgcG8uV2F0Y2hlZFZhbHVlLHRoaXMuZW9kUmVzdHJpY3Rpb249bmV3IHBvLldhdGNoZWRWYWx1ZShXby5Ob25lKSwKdGhpcy5fb3B0aW9ucz17fSx0aGlzLl9pbml0aWFsU29ydEZpZWxkPWUuc29ydF9maWVsZHx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZmllbGQiLCJtYXJrZXRfY2FwX2Jhc2ljIiksdGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb249ZS5zb3J0X2RpcmVjdGlvbnx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZGlyZWN0aW9uIiwiZGVzYyIpLHRoaXMudXBkYXRlPSgwLHZvLmRlZmF1bHQpKHRoaXMudXBkYXRlSW1wbC5iaW5kKHRoaXMpLDEwMCksdGhpcy5fc29ydEZpZWxkLnN1YnNjcmliZSgoZT0+e3RoaXMuX3ZpZXcuX3VwZGF0ZVRhYmxlU29ydEZpZWxkKCksdGhpcy5zYXZlRmlsdGVyc1NldHRpbmdzKCksZGVsZXRlIHRoaXMuX2luaXRpYWxTb3J0RmllbGR9KSksdGhpcy5fc29ydERpcmVjdGlvbi5zdWJzY3JpYmUoKGU9Pnt0aGlzLl92aWV3Ll91cGRhdGVUYWJsZVNvcnRGaWVsZCgpLHRoaXMuc2F2ZUZpbHRlcnNTZXR0aW5ncygpLGRlbGV0ZSB0aGlzLl9pbml0aWFsU29ydERpcmVjdGlvbn0pKSx0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbD0hMSx0aGlzLl9icmlkZ2UudmlzaWJsZSYmKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS52aXNpYmxlLnN1YnNjcmliZSgoZT0+eyF0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbCYmZSYmKHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSx0aGlzLl9icmlkZ2UuZGlzYWJsZVN0aWNreUhlYWRlcj90aGlzLnVwZGF0ZUltcGwoKTp0aGlzLnVwZGF0ZUltcGwodGhpcy5fdmlldy5fc2V0dXBTdGlja3lIZWFkZXIuYmluZCh0aGlzLl92aWV3KSksdGhpcy5pc1NjcmVlbmVyV2lkZ2V0VXBkYXRlZEltcGw9ITApfSkpLHRoaXMuc2NhblJlcXVlc3Q9bnVsbCx0aGlzLmxvYWRpbmdTdGFydD1uZXcgVXMsdGhpcy5sb2FkaW5nQ29tcGxldGU9bmV3IFVzLHRoaXMuZmllbGRTZXRDaGFuZ2VkPW5ldyBVcyx0aGlzLmZpZWxkU2V0U2F2ZWQ9bmV3IFVzLHRoaXMuZmlsdGVyU2V0Q2hhbmdlZD1uZXcgVXMsdGhpcy5maWx0ZXJTZXRTYXZlZD1uZXcgVXMsdGhpcy5maWx0ZXJTZXREZWxldGVkPW5ldyBVcyx0aGlzLm1heFNhZmVJbnRlZ2VyPU51bWJlci5NQVhfU0FGRV9JTlRFR0VSfHxNYXRoLnBvdygyLDUzKS0xLHRoaXMubWluU2FmZUludGVnZXI9TnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJ8fC0oTWF0aC5wb3coMiw1MyktMSksdGhpcy5fdGlja2Vycz1bXSwiY29udGludW91c19mdXR1cmVzIj09PXRoaXMuc2NyZWVuZXJfdHlwZSYmKHRoaXMuX2JyaWRnZS5vcGVuX2NoYXJ0X29uX3NhbWVfdGFiPSExKSx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9sc3x8dGhpcy5faW5pdFhXaW5kb3dIYW5kbGVycygpLHRoaXMuX3ZpZXc9bmV3IGJzKGUsdGhpcyk7Y29uc3QgdD1bdGhpcy5faW5pdE1hcmtlZFN5bWJvbHModGhpcy5fdmlldyldO3ZhciBpOyF0aGlzLl9icmlkZ2UuX29uV2lkZ2V0JiZ3aW5kb3cucHJvJiZ0LnB1c2god2luZG93LnByby5lbnN1cmVWYWxpZFNob3BDb25mKCkpLFByb21pc2UuYWxsKHQpLnRoZW4oKCgpPT57aWYoKDAsa3MuaXNGZWF0dXJlRW5hYmxlZCkoInNjcmVlbmVyLW1haW50ZW5hbmNlIikpcmV0dXJuIHZvaWQgdGhpcy5fdmlldy5zaG93TWFpbnRlbmFuY2UoKTt0aGlzLl92aWV3LnByZXBhcmVMYXlvdXQoKTtjb25zdCBlPSgpPT57dGhpcy5fY2hlY2tDdXJyZW50U2V0cygpLHRoaXMuX3ZpZXcuX3NlbGVjdGVkUGVyaW9kSWQmJiJ0b2RheSI9PT10aGlzLl92aWV3Ll9zZWxlY3RlZFBlcmlvZElkPyh0aGlzLmFwcGx5RmllbGRTZXRDb250ZW50KG0pLHRoaXMuX3NvcnRGaWVsZC5zZXRWYWx1ZSgibmFtZSIpLHRoaXMuX3NvcnREaXJlY3Rpb24uc2V0VmFsdWUoImFzYyIpKTp0aGlzLmFwcGx5RmllbGRTZXQodGhpcy5fd2lkZ2V0SW5pdENvbHVtbnx8dGhpcy5jdXJyZW50RmllbGRTZXRJZCgpLCEwKSx0aGlzLmFwcGx5RmlsdGVyU2V0KHRoaXMuX3dpZGdldEluaXRTY3JlZW58fHRoaXMuY3VycmVudEZpbHRlclNldElkKCksITApLHRoaXMuX3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCksKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS52aXNpYmxlJiYhdGhpcy5fYnJpZGdlLnZpc2libGUudmFsdWUoKXx8KHRoaXMuX2JyaWRnZS5kaXNhYmxlU3RpY2t5SGVhZGVyP3RoaXMudXBkYXRlSW1wbCgpOnRoaXMudXBkYXRlSW1wbCh0aGlzLl92aWV3Ll9zZXR1cFN0aWNreUhlYWRlci5iaW5kKHRoaXMuX3ZpZXcpKSx0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbD0hMCl9O2lmKHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSl0aGlzLmdldE1ldGFJbmZvKCksdGhpcy5nZXRVc2VyU2V0dGluZ3MoKSxlKCk7ZWxzZXtjb25zdCB0PVt0aGlzLmdldE1ldGFJbmZvKCksdGhpcy5nZXRVc2VyU2V0dGluZ3MoKV07UHJvbWlzZS5hbGwodCkudGhlbihlKX13aW5kb3cubG9naW5TdGF0ZUNoYW5nZSYmd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKG51bGwsKGU9PnRoaXMub25Mb2dpblN0YXRlQ2hhbmdlKGUpKSksenMuaXNQcm9kKCl8fCh3aW5kb3cuX2V4cG9zZWRfc2NyZWVuZXJXaWRnZXQ9dGhpcyksdGhpcy5pc1NlcnZlclJlbmRlcigpJiZkZWxldGUgdGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhfSkpLCgwLFlvLmluaXRTY3JlZW5lckluc3RhbmNlKSh0aGlzKSxlLnN0YW5kYWxvbmUmJlsic3RvY2siLCJjcnlwdG8iXS5pbmNsdWRlcyhlLnNjcmVlbmVyX3R5cGUpJiYhZS5wZXJpb2RfcGlja2VyJiYoaT17bm90aWZpY2F0aW9uRGF0YTpXc1tlLnNjcmVlbmVyX3R5cGVdfSxQcm9taXNlLmFsbChbby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMDUxKSxvLmUoNjg5NDIpLG8uZSgzOTYwOSksby5lKDUyNDUzKV0pLnRoZW4oby5iaW5kKG8sNzMwMjU3KSkudGhlbigoZT0+ZS5zaG93U2NyZWVuZXJOZXdTdGFuZGFsb25lRGlhbG9nKGkpKSkpfWFzeW5jIF9pbml0TWFya2VkU3ltYm9scyhlKXsKaWYoIXRoaXMuaGFzTWFya2VkU3ltYm9scygpKXJldHVybjtjb25zdCB0PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQyNjkpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjA1MSksby5lKDg5MDQ0KSxvLmUoNzg0MDQpLG8uZSgzOTYwOSksby5lKDE0ODg5KSxvLmUoODU0MzQpLG8uZSgyODUxKSxvLmUoNDM5ODApLG8uZSgzNDcpXSkudGhlbihvLmJpbmQobywyMzUxODYpKSxpPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQyNjkpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjA1MSksby5lKDg5MDQ0KSxvLmUoNzg0MDQpLG8uZSgzOTYwOSksby5lKDE0ODg5KSxvLmUoODU0MzQpLG8uZSgyODUxKSxvLmUoNDM5ODApLG8uZSgzNDcpXSkudGhlbihvLmJpbmQobyw1NjI4ODUpKTt0aGlzLm1hcmthYmxlU3ltYm9scz1uZXcgdC5NYXJrYWJsZVN5bWJvbHMoe3N5bWJvbHNWaWV3OmUsbWFya2VyQ29udGFpbmVyU2VsZWN0b3I6Ii50di1zY3JlZW5lci10YWJsZV9fc3ltYm9sLWFkZGl0aW9uIixhY3RpdmVNYXJrZXJDbGFzczoidHYtc2NyZWVuZXItdGFibGVfX21hcmtlci0tYWN0aXZlIixhZGRpdGlvbmFsTWFya2VyQ2xhc3M6InR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXIifSk7dGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlcj1uZXcgaS5NYXJrZWRTeW1ib2xzRmlsdGVyKHtzeW1ib2xzVmlldzplLGNvbnRhaW5lclNlbGVjdG9yOiIudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGV4dCIsY2xhc3NOYW1lOiJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1tYXJrZXIiLGRpc2FibGVTYXZlU3RhdGU6dGhpcy5fYnJpZGdlLmRpc2FibGVTYXZlTWFya2VkU3ltYm9sc0ZpbHRlcn0pO2NvbnN0IG49dGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlci5nZXRTdHJlYW0oKTt0aGlzLl90aWNrZXJzPXRoaXMuX2luaXRUaWNrZXJzfHx0aGlzLl9tYXJrZWRTeW1ib2xzRmlsdGVyLmdldFN5bWJvbHNGb3JTY2FuKCksdGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlci5pc0FjdGl2ZSgpJiYodGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhPW51bGwpO2xldCByPSEwO24ub24oaS5GaWx0ZXJFdmVudHMuSW5pdCwoKCk9Pnt0aGlzLl90aWNrZXJzPXRoaXMuX2luaXRUaWNrZXJzfHx0aGlzLl9tYXJrZWRTeW1ib2xzRmlsdGVyLmdldFN5bWJvbHNGb3JTY2FuKCkscj0hMX0pKSxuLm9uKGkuRmlsdGVyRXZlbnRzLkZpbHRlckJ5TWFya2VkU3ltYm9scywoZT0+e2lmKCFyKXtjb25zdCBlPXRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXIuX2NvbG9yTWFuYWdlci5nZXRDb2xvcigpOygwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBiaShlKSl9dGhpcy5fdGlja2Vycz1lLHRoaXMuX3ByZXZTY2FuRGF0YT1udWxsLHRoaXMuX3ByZXZSZXF1ZXN0RGF0YT1udWxsLHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSwoMCxBbi5pc1NjcmVlbmVyUGFnZSkodGhpcy5fYnJpZGdlKSYmcnx8dGhpcy51cGRhdGUoKX0pKSxuLm9uKGkuRmlsdGVyRXZlbnRzLkRpc2FibGUsKCgpPT57dGhpcy5fdGlja2Vycz10aGlzLl9pbml0VGlja2Vyc3x8W10sdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlKCl9KSl9X2luaXRYV2luZG93SGFuZGxlcnMoKXt0aGlzLl9icmlkZ2Uub25XaWRnZXR8fCh0aGlzLl9yZWdpc3RlclhXaW5kb3dIYW5kbGVyKCJzY3JlZW5lci5tYXJrZXQtY2hhbmdlZCIsKCgpPT57UXQodGhpcy5tYXJrZXRzKTtsZXQgZT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpO2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpO2lmKHQmJnQuZGlzYWJsZWQpe2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKChlPT4hZS5kaXNhYmxlZCkpO2U9dD90LmlkOiIifXRoaXMuZ2V0VXNlclNldHRpbmdzKCkudGhlbigoKCk9Pnt0aGlzLmFwcGx5RmlsdGVyU2V0KGUsITApLHRoaXMuX3ZpZXcudXBkYXRlTWFya2V0QnV0dG9uKCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlSW1wbCgpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnNhdmUtZmllbGQtc2V0IiwoZT0+e2NvbnN0IHQ9ZS5zZXRJZDt0aGlzLmdldFVzZXJTZXR0aW5ncygpLnRoZW4oKCgpPT57dCYmdD09PXRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSYmdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRleHQodGhpcy5nZXRGaWVsZFNldEJ5SWQodCkudGl0bGUpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnNhdmUtZmlsdGVyLXNldCIsKGU9Pntjb25zdCB0PWUuc2V0SWQ7dGhpcy5nZXRVc2VyU2V0dGluZ3MoKS50aGVuKCgoKT0+e3QmJnQ9PT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpJiZ0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0aGlzLmdldEZpbHRlclNldEJ5SWQodCkudGl0bGUpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLmFkZC1maWVsZC1zZXQtdG8tZmF2b3JpdGVzIiwoKCk9Pnt0aGlzLmdldFVzZXJTZXR0aW5ncygpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnJlbW92ZS1maWVsZC1zZXQtZnJvbS1mYXZvcml0ZXMiLCgoKT0+e3RoaXMuZ2V0VXNlclNldHRpbmdzKCl9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuYXBwbHktZmllbGQtc2V0IiwoZT0+e3RoaXMuYXBwbHlGaWVsZFNldEltcGwoZS5zZXRJZCxlLmluaXRpYWwsITEpLHRoaXMuX3ZpZXcubGFzdFNldElkPWUuc2V0SWR9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuYXBwbHktZmlsdGVyLXNldCIsKGU9Pnt0aGlzLmFwcGx5RmlsdGVyU2V0KGUuc2V0SWQsZS5kb05vdFVwZGF0ZSwhMSl9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuY2hhbmdlLXNlbGVjdGVkLWludGVydmFsLWlkIiwoZT0+ewp0aGlzLl92aWV3LnVwZGF0ZUludGVydmFsQnV0dG9uKG51bGwsZS5pZCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlSW1wbCgpfSkpKX1fcmVnaXN0ZXJYV2luZG93SGFuZGxlcihlLHQpe0NzLlRWWFdpbmRvd0V2ZW50cy5vbihlLChlPT57Y29uc3Qgbz1KU09OLnBhcnNlKGUpO3RoaXMuc2V0dGluZ0tleT09PW8uc2V0dGluZ0tleSYmdChvKX0pKX1fc2VuZFhXaW5kb3dFdmVudChlLHQpe3RoaXMuX2JyaWRnZS5vbldpZGdldHx8ImJpZyI9PT10aGlzLl9icmlkZ2UudGFibGVfc3R5bGV8fENzLlRWWFdpbmRvd0V2ZW50cy5lbWl0KGUsdCl9X2NoZWNrQ3VycmVudFNldHMoKXtjb25zdCBlPXRoaXMuY3VycmVudEZpZWxkU2V0SWQoKTtlJiYhdGhpcy5nZXRGaWVsZFNldEJ5SWQoZSkmJnRoaXMuc2V0dGluZ3NTYXZlci5yZW1vdmUodGhpcy5zZXR0aW5nS2V5KyIuZmllbGRTZXRJZCIpO2NvbnN0IHQ9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKTt0JiYhdGhpcy5nZXRGaWx0ZXJTZXRCeUlkKHQpJiZ0aGlzLnNldHRpbmdzU2F2ZXIucmVtb3ZlKHRoaXMuc2V0dGluZ0tleSsiLmZpbHRlclNldElkIil9aXNTZXJ2ZXJSZW5kZXIoKXtyZXR1cm4gd2luZG93LmluaXREYXRhLnNjcmVlbmVyX21ldGFpbmZvJiZ3aW5kb3cuaW5pdERhdGEuc2NyZWVuZXJfZGF0YSYmdGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhfXVwZGF0ZU1ldGFJbmZvKGUpe0l0LmluZGV4LmRpc2FibGVkPSEwLEl0LnN1Ym1hcmtldC5kaXNhYmxlZD0hMCwiY3J5cHRvIj09PXRoaXMuc2NyZWVuZXJfdHlwZSYmKEl0LmN1cnJlbmN5LnVzZURlZmF1bHRSYW5nZT0hMCxJdC5jdXJyZW5jeS5kaXNhYmxlZD0hMSk7Y29uc3QgdD1uZXcgU2V0LG89dGhpcy5tYXJrZXRzfHxbdGhpcy5tYXJrZXRdO0l0LmlzX3ByaW1hcnkuZGlzYWJsZWQ9WyJjcnlwdG8iLCJmb3JleCJdLmluY2x1ZGVzKG9bMF0pLGUuZmllbGRzLmZvckVhY2goKGU9PntpZigiY3VycmVuY3kiPT09ZS5uJiZlLnIuZm9yRWFjaCgoZT0+dC5hZGQoZSkpKSxlLm4gaW4gSXQpe2lmKEl0W2Uubl0udHlwZT1lLnQsImluZGV4Ij09PWUubilyZXR1cm4gSXQuaW5kZXguZGlzYWJsZWQ9ITEsSXQuaW5kZXguc291cmNlUmFuZ2U9ZS5yLHZvaWQoSXQuaW5kZXgucmFuZ2U9SXQuaW5kZXguc291cmNlUmFuZ2U/SXQuaW5kZXguc291cmNlUmFuZ2UubWFwKChlPT5lLm5hbWUpKTpbXSk7aWYoInN1Ym1hcmtldCI9PT1lLm4mJmUuci5sZW5ndGg+PTEmJihlLnI9ZS5yLmZpbHRlcigoZT0+IiIhPT1lKSksZS5yLmxlbmd0aD4wJiYoSXQuc3VibWFya2V0LmRpc2FibGVkPSExKSksIUl0W2Uubl0ucmFuZ2UmJkl0W2Uubl0udXNlRGVmYXVsdFJhbmdlP0l0W2Uubl0ucmFuZ2U9SXRbZS5uXS5kZWZhdWx0UmFuZ2U6SXRbZS5uXS51c2VEZWZhdWx0UmFuZ2V8fChJdFtlLm5dLnJhbmdlPWUuciksImV4Y2hhbmdlIj09PWUubiYmdGhpcy5fYnJpZGdlLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzJiZ0aGlzLl9icmlkZ2UudW5hdmFpbGFibGVXaWRnZXRFeGNoYW5nZXMubGVuZ3RoJiYoSXRbZS5uXS5yYW5nZT10aGlzLl9nZXRGaWx0ZXJlZEV4Y2hhbmdlc0ZvcldpZGdldChJdFtlLm5dLnJhbmdlKSksZnVuY3Rpb24oZSx0KXtjb25zdCBvPVAoZS5zY3JlZW5lcl90eXBlKSxpPVAoZC5TdG9jaykuYW1lcmljYTtsZXQgbixyPVtdO2Zvcihjb25zdCBsIG9mIGUubWFya2V0cylvW2xdJiYobj1vW2xdW3RdfHxpW3RdLG4mJkFycmF5LmlzQXJyYXkobikmJihzPXIsYT1uLHI9Wy4uLm5ldyBTZXQoWy4uLnMsLi4uYV0pXS5zb3J0KCgoZSx0KT0+ZS10KSkpKTt2YXIgcyxhO0l0W3RdLnZhbHVlcz1ufSh0aGlzLGUubiksITE9PT1JdFtlLm5dLnNvcnRhYmxlKXJldHVybjtlLnQ9PT12ci5QcmljZSYmKEl0W2Uubl0uYWRkaXRpb25hbENvbHVtbnM/SXRbZS5uXS5hZGRpdGlvbmFsQ29sdW1ucz1JdFtlLm5dLmFkZGl0aW9uYWxDb2x1bW5zLmNvbmNhdChKcyk6SXRbZS5uXS5hZGRpdGlvbmFsQ29sdW1ucz1KcyksZS50PT09dnIuVGV4dCYmKEl0W2Uubl0ucmFuZ2U9SXRbZS5uXS5yYW5nZS5zb3J0KCkpLG89ZSxbdnIuTnVtYmVyLHZyLkZ1bmRhbWVudGFsUHJpY2VdLmluY2x1ZGVzKG8udCkmJkl0W2Uubl0ucmFuZ2UmJiFJdFtlLm5dLnVzZURlZmF1bHRSYW5nZSYmKEl0W2Uubl0ucmFuZ2U9SXRbZS5uXS5yYW5nZS5tYXAoKGU9Pk1hdGgubWluKE1hdGgubWF4KGUsdGhpcy5taW5TYWZlSW50ZWdlciksdGhpcy5tYXhTYWZlSW50ZWdlcikpKS5zb3J0KHRoaXMubnVtZXJpY1NvcnRlcikpLEl0W2Uubl0udmFsdWVzJiYhSXRbZS5uXS5yYW5nZSYmKEl0W2Uubl0ucmFuZ2U9W3RoaXMubWluU2FmZUludGVnZXIsdGhpcy5tYXhTYWZlSW50ZWdlcl0pLEl0W2Uubl0udmFsdWVzJiZJdFtlLm5dLnJhbmdlJiYoSXRbZS5uXS5yYW5nZVswXT5JdFtlLm5dLnZhbHVlc1swXSYmKEl0W2Uubl0ucmFuZ2VbMF09SXRbZS5uXS52YWx1ZXNbMF0pLEl0W2Uubl0ucmFuZ2VbMV08SXRbZS5uXS52YWx1ZXNbSXRbZS5uXS52YWx1ZXMubGVuZ3RoLTFdJiYoSXRbZS5uXS5yYW5nZVsxXT1JdFtlLm5dLnZhbHVlc1tJdFtlLm5dLnZhbHVlcy5sZW5ndGgtMV0pKSwicmFuZ2UiIT09SXRbZS5uXS5jb250cm9sfHxJdFtlLm5dLnZhbHVlc3x8SXRbZS5uXS5yYW5nZXx8KEl0W2Uubl0ucmFuZ2U9W3RoaXMubWluU2FmZUludGVnZXIsdGhpcy5tYXhTYWZlSW50ZWdlcl0sSXRbZS5uXS52YWx1ZXM9W3RoaXMubWluU2FmZUludGVnZXIsMCx0aGlzLm1heFNhZmVJbnRlZ2VyXSl9ZWxzZSBpZigtMSE9PWUubi5pbmRleE9mKCJ8Iikpe2NvbnN0IHQ9ZS5uLnNwbGl0KCJ8Iik7SXRbdFswXV18fChJdFt0WzBdXT17fSksSXRbdFswXV0uY3VzdG9tUmVzb2x1dGlvbnN8fChJdFt0WzBdXS5jdXN0b21SZXNvbHV0aW9ucz1bXSksSXRbdFswXV0uY3VzdG9tUmVzb2x1dGlvbnMucHVzaCh0WzFdKX12YXIgb30pKSxQcyhlLmZpbmFuY2lhbF9jdXJyZW5jeSxbLi4udF0sdGhpcy5fdmlldyksUXQodGhpcy5tYXJrZXRzKSx0aGlzLmRlZmF1bHRGaWx0ZXJTZXRzPVp0fWdldE1ldGFJbmZvKCl7CmlmKHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSlyZXR1cm4gdGhpcy51cGRhdGVNZXRhSW5mbyhKU09OLnBhcnNlKHdpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tZXRhaW5mbykpLFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IGU9dGhpcy5fZ2V0U2NhblVybCgibWV0YWluZm8iKSx0PXQ9Pih7dHlwZToiUE9TVCIsdXJsOmUsZGF0YTpKU09OLnN0cmluZ2lmeSh7bWFya2V0czp0aGlzLm1hcmtldHN9KSxiZWZvcmVTZW5kOigpPT57bnVsbCE9PXRoaXMuX3BlbmRpbmdQcm9taXNlJiZ0aGlzLl9wZW5kaW5nUHJvbWlzZS5hYm9ydCgpfSxzdWNjZXNzOmU9Pnt0aGlzLnVwZGF0ZU1ldGFJbmZvKGUpLHQoKX0sZGF0YVR5cGU6Impzb24iLHhockZpZWxkczp7d2l0aENyZWRlbnRpYWxzOiFCb29sZWFuKHRoaXMuX2JyaWRnZS5vbldpZGdldCl9fSk7cmV0dXJuIG5ldyBQcm9taXNlKChlPT57dGhpcy5sb2FkaW5nU3RhcnQuZmlyZSgpLHRoaXMuX3BlbmRpbmdQcm9taXNlPVZzLmFqYXgodChlKSkuZmFpbCgoZT0+eyJhYm9ydCIhPT1lLnN0YXR1c1RleHQmJmpzLmxvZ0Vycm9yKCJGYWlsZWQgdG8gbG9hZCBzY3JlZW5lciBtZXRhaW5mbyIpfSkpLmFsd2F5cygoKCk9Pnt0aGlzLmxvYWRpbmdDb21wbGV0ZS5maXJlKCksdGhpcy5fcGVuZGluZ1Byb21pc2U9bnVsbH0pKX0pKX1maWVsZEFjdGl2ZShlKXtyZXR1cm4hKCFJdFtlXXx8IUl0W2VdLnZhbHVlfHwiY29uZGl0aW9uIiE9PUl0W2VdLmNvbnRyb2x8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8MiE9PUl0W2VdLnZhbHVlLnZhbHVlLmxlbmd0aCl8fCEoIUl0W2VdfHwhSXRbZV0udmFsdWV8fCJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbCYmKCFJdFtlXS52YWx1ZS5vcGVyYXRvcnx8Im51bWJlciIhPXR5cGVvZiBJdFtlXS52YWx1ZS52YWx1ZSYmIUl0W2VdLnZhbHVlLnZhbHVlKXx8InJhbmdlIj09PUl0W2VdLmNvbnRyb2wmJkl0W2VdLnZhbHVlWzBdPT09SXRbZV0ucmFuZ2VbMF0mJkl0W2VdLnZhbHVlWzFdPT09SXRbZV0ucmFuZ2VbMV0pfXBhdGNoRmlsdGVyc0Zvck1hcmtldFBhZ2VzKGUpe2xldCB0PXtydXNzaWE6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJmb3JlaWduLWlzc3VlciJ9XSxicmF6aWw6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJvZGQifV0sdGhhaWxhbmQ6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJmb3JlaWduIn1dLHVrOlt7bGVmdDoidHlwZXNwZWNzIixvcGVyYXRpb246Imhhc19ub25lX29mIixyaWdodDoiY2RpIn0se2xlZnQ6ImV4Y2hhbmdlIixvcGVyYXRpb246ImVxdWFsIixyaWdodDoiTFNFIn1dfVt0aGlzLm1hcmtldHNbMF1dO2lmKFsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpJiZ0JiYodD10LmZpbHRlcigoZT0+ImV4Y2hhbmdlIiE9PWUubGVmdCkpKSwhdHx8MD09PXQubGVuZ3RoKXJldHVybiBlO2NvbnN0IG89KDAsU3MuZGVmYXVsdCkoZSk7aWYoIWUuZmlsdGVyKXJldHVybiBvLmZpbHRlcj1bLi4udF0sbztmb3IoY29uc3QgZSBvZiB0KXswPT09by5maWx0ZXIuZmlsdGVyKCh0PT4oMCxfaS5kZWZhdWx0KSh0LGUpKSkubGVuZ3RoJiZvLmZpbHRlci5wdXNoKGUpfXJldHVybiBvfWdldFNjYW5uZXJQYXJhbXMoZSl7bGV0IHQ9bnVsbCxvPW51bGwsaT1udWxsLG49e307aWYoZSl7Y29uc3Qgcj10aGlzLmdldEZpbHRlclNldEJ5SWQoZSk7dD1yLmNvbnRlbnQuc29ydF9maWVsZCxvPXIuY29udGVudC5maWx0ZXJzfHx7fSxpPU9iamVjdC5rZXlzKHIuY29udGVudC5maWx0ZXJzfHx7fSksbj1yLmNvbnRlbnQub3B0aW9uc31lbHNlIGk9T2JqZWN0LmtleXMoSXQpLmZpbHRlcigoZT0+dGhpcy5maWVsZEFjdGl2ZShlKSkpLG49dGhpcy5fb3B0aW9uczt0fHwodD10aGlzLl9zb3J0RmllbGQudmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnRGaWVsZCk7Y29uc3Qgcj17ZmlsdGVyOltdLF9ncm91cHM6W10sb3B0aW9uczpufTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoOysrZSl7Y29uc3QgdD1pW2VdO2lmKCJjb25kaXRpb24iPT09SXRbdF0uY29udHJvbCYmIUl0W3RdLnZhbHVlKWNvbnRpbnVlO2lmKCJuYW1lIj09PXQmJkFycmF5LmlzQXJyYXkoSXRbdF0udmFsdWUpKXtsZXQgZT0hMTtjb25zdCBvPUl0W3RdLnZhbHVlO2ZvcihsZXQgdD0wO3Q8by5sZW5ndGg7Kyt0KWlmKCJuZXF1YWwiPT09b1t0XS5vcGVyYXRvcil7ZT0hMDticmVha31pZihlKWNvbnRpbnVlfWNvbnN0IG49SXRbdF0uZ3JvdXBGaWx0ZXI/ci5fZ3JvdXBzOnIuZmlsdGVyO2xldCBzPUR0KHQsSXRbdF0udmFsdWUsbyx0aGlzLnNlbGVjdGVkSW50ZXJ2YWxJZCk7aWYocy5maWx0ZXIyRmxhZyYmKHMuZmlsdGVyMkFuZFBhcnQubGVuZ3RoJiYoci5maWx0ZXIyfHwoci5maWx0ZXIyPXtvcGVyYXRvcjoiYW5kIixvcGVyYW5kczpbXX0pLHIuZmlsdGVyMi5vcGVyYW5kcy5wdXNoKHtvcGVyYXRpb246e29wZXJhdG9yOiJvciIsb3BlcmFuZHM6cy5maWx0ZXIyQW5kUGFydC5tYXAoKGU9Pih7ZXhwcmVzc2lvbjplfSkpKX19KSkscz1zLmZpbHRlciksQXJyYXkuaXNBcnJheShzKSlmb3IobGV0IGU9MDtlPHMubGVuZ3RoOysrZSluLnB1c2goc1tlXSk7ZWxzZSBuLnB1c2gocyl9aWYodGhpcy5maWx0ZXJTZXRDaGFuZ2VkLmZpcmUoKSx0aGlzLmVvZFJlc3RyaWN0aW9uLnZhbHVlKCkhPT1Xby5Ob25lJiYoci5vcHRpb25zLmRhdGFfcmVzdHJpY3Rpb25zPSJQUkVWX0JBUiIpLHIubWFya2V0cz10aGlzLm1hcmtldHMsKDAsQW4uaXNNYXJrZXRQYWdlKSh0aGlzLl9icmlkZ2UpKXJldHVybiB0aGlzLnBhdGNoRmlsdGVyc0Zvck1hcmtldFBhZ2VzKHIpO2NvbnN0IHM9ci5maWx0ZXIuZmlsdGVyKChlPT4iaXNfcHJpbWFyeSI9PT1lLmxlZnQpKTtyZXR1cm4gcyYmITE9PT1zLmxlZnQmJihyLmZpbHRlcj1yLmZpbHRlci5maWx0ZXIoKGU9PiJpc19wcmltYXJ5IiE9PWUubGVmdCkpKSxyfXVwZGF0ZUltcGwoZSx0LG8saT0hMCxuPSExLHI9ITEpewppZih0JiZ0aGlzLl92aWV3LmlzRW5kUmVhY2hlZCgpKXJldHVybjtpZih0aGlzLl92aWV3LnRhYmxlLmRyYWdTdGFydGVkLnZhbHVlKCkpcmV0dXJuO2lmKCgwLGtzLmlzRmVhdHVyZUVuYWJsZWQpKCJzY3JlZW5lci1tYWludGVuYW5jZSIpKXJldHVybiB2b2lkIHRoaXMuX3ZpZXcuX3BvcHVwcy5zaG93TWFpbnRlbmFuY2VEaWFsb2coKTtjb25zdCBzPXRoaXMuZ2VuZXJhdGVTY2FuUmVxdWVzdCgpLGE9WzAsWHNdO3MucmFuZ2U9YS5zbGljZSgpLGk/KHQmJnRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlPyhhWzBdPXRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlWzFdLGFbMV09YVswXStYcyxzLnJhbmdlWzFdPWFbMV0pOnRoaXMuX3ZpZXcucmVzZXRJdGVtcygpLHRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlPWEpOnRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlP3MucmFuZ2VbMV09dGhpcy5fY3VycmVudEl0ZW1zUmFuZ2VbMV06dGhpcy5fdmlldy5yZXNldEl0ZW1zKCksIXQmJnRoaXMuX3ByZXZSZXF1ZXN0JiYoMCxfaS5kZWZhdWx0KShzLHRoaXMuX3ByZXZSZXF1ZXN0KT8iZnVuY3Rpb24iPT10eXBlb2YgZSYmITA9PT1vJiZlKCk6KHRoaXMuX3ByZXZSZXF1ZXN0PSgwLEguY2xvbmUpKHMpLCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCksdGhpcy5zY2FuKHMsdCxuLHIpKX1fZ2V0U3ltYm9scygpe2xldCBlO3N3aXRjaCh0aGlzLnNjcmVlbmVyX3R5cGUpe2Nhc2UiZm9yZXgiOmU9WyJmb3JleCJdO2JyZWFrO2Nhc2Uic2VjdG9yIjplPVsic2VjdG9yIl07YnJlYWs7Y2FzZSJpbmR1c3RyeSI6ZT1bImluZHVzdHJ5Il07YnJlYWs7Y2FzZSJjb250aW51b3VzX2Z1dHVyZXMiOmU9WyJmdXR1cmVzIl07YnJlYWs7ZGVmYXVsdDplPXRoaXMuX2JyaWRnZS50eXBlc3x8W119cmV0dXJue3F1ZXJ5Ont0eXBlczplfSx0aWNrZXJzOnRoaXMuX3RpY2tlcnN9fWdlbmVyYXRlU2NhblJlcXVlc3QoKXtjb25zdCBlPU9iamVjdC5hc3NpZ24oe30sdGhpcy5nZXRTY2FubmVyUGFyYW1zKCkpO2lmKGUuc3ltYm9scz10aGlzLl9nZXRTeW1ib2xzKCksZS5jb2x1bW5zPXRoaXMuZ2V0UmVxdWVzdENvbHVtbnMoKSxlLnNvcnQ9e3NvcnRCeTpoZSh0aGlzLl9zb3J0RmllbGQudmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnRGaWVsZCx0aGlzLnNlbGVjdGVkSW50ZXJ2YWxJZCksc29ydE9yZGVyOnRoaXMuX3NvcnREaXJlY3Rpb24udmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb259LGUucHJlc2V0PXRoaXMucHJlc2V0LHdpbmRvdy5sYW5ndWFnZSYmKGUub3B0aW9uc3x8KGUub3B0aW9ucz17fSksZS5vcHRpb25zLmxhbmc9d2luZG93Lmxhbmd1YWdlKSx0aGlzLl9icmlkZ2Uub25XaWRnZXQmJiJmb3JleCIhPT10aGlzLm1hcmtldHNbMF0pe2NvbnN0IHQ9Rih0aGlzLnNjcmVlbmVyX3R5cGUpW3RoaXMubWFya2V0c1swXV07dCYmdC5zdG9ja3MmJnQuc3RvY2tzLmxlbmd0aCYmKGUuc3ltYm9scy5xdWVyeS5leGNoYW5nZXM9dC5zdG9ja3MubWFwKChlPT4iTllTRSBBUkNBIj09PWU/IkFNRVgiOmUpKSx0aGlzLl9icmlkZ2UudW5hdmFpbGFibGVXaWRnZXRFeGNoYW5nZXMmJnRoaXMuX2JyaWRnZS51bmF2YWlsYWJsZVdpZGdldEV4Y2hhbmdlcy5sZW5ndGgmJihlLnN5bWJvbHMucXVlcnkuZXhjaGFuZ2VzPXRoaXMuX2dldEZpbHRlcmVkRXhjaGFuZ2VzRm9yV2lkZ2V0KGUuc3ltYm9scy5xdWVyeS5leGNoYW5nZXMpKSl9aWYoZS5fZ3JvdXBzLmxlbmd0aD4wJiYoZS5zeW1ib2xzLmdyb3Vwcz1lLl9ncm91cHMpLGRlbGV0ZSBlLl9ncm91cHMsInByZWRlZmluZWRfZmlsdGVyIj09PXRoaXMuY3VycmVudEZpbHRlclNldElkKCkpe2NvbnN0IHQ9dGhpcy5nZXRGaWx0ZXJTZXRCeUlkKCJwcmVkZWZpbmVkX2ZpbHRlciIpO2lmKGUuc3ltYm9sc3x8KGUuc3ltYm9scz17fSksKDAsSC5tZXJnZSkoZS5zeW1ib2xzLHQuc3ltYm9scyksdC5jb250ZW50JiZ0LmNvbnRlbnQuZmlsdGVycylmb3IoY29uc3RbbyxpXW9mIE9iamVjdC5lbnRyaWVzKHQuY29udGVudC5maWx0ZXJzKSlpZihBcnJheS5pc0FycmF5KGkpKWZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7Kyt0KXtjb25zdCBuPWlbdF07bi5vcGVyYXRvciYmIm5lcXVhbCI9PT1uLm9wZXJhdG9yJiZlLmZpbHRlci5wdXNoKHtsZWZ0Om8sb3BlcmF0aW9uOm4ub3BlcmF0b3IscmlnaHQ6bi52YWx1ZX0pfWVsc2V7bGV0IHQ9e307dm9pZCAwIT09aS5vcGVyYXRvciYmdm9pZCAwIT09aS52YWx1ZT90PXtsZWZ0Om8sb3BlcmF0aW9uOmkub3BlcmF0b3IscmlnaHQ6aS52YWx1ZX06dm9pZCAwIT09aSYmdm9pZCAwIT09aS5vcGVyYXRvcj8odD17bGVmdDpvLG9wZXJhdGlvbjppLm9wZXJhdG9yfSxpLnJpZ2h0JiZ2b2lkIDAhPT1pLnJpZ2h0JiYodC5yaWdodD1pLnJpZ2h0KSk6dm9pZCAwIT09aSYmKHQ9e2xlZnQ6byxvcGVyYXRpb246ImVxdWFsIixyaWdodDppfSksImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLGVhcm5pbmdzX3JlbGVhc2VfZGF0ZSI9PT10LmxlZnQmJih0LmxlZnQ9ImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIpO2UuZmlsdGVyLnNvbWUoKGU9PigwLF9pLmRlZmF1bHQpKHQsZSl8fGUubGVmdD09PXQubGVmdCYmZS5vcGVyYXRpb249PT10Lm9wZXJhdGlvbikpfHxlLmZpbHRlci5wdXNoKHQpfX1mb3IobGV0IHQ9MDt0PGUuY29sdW1ucy5sZW5ndGg7Kyt0KWUuY29sdW1uc1t0XT1oZShlLmNvbHVtbnNbdF0sdGhpcy5zZWxlY3RlZEludGVydmFsSWQpO2lmKEl0W3RoaXMuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlKXtjb25zdCB0PXtsZWZ0OiFJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZCYmSXQuZGVzY3JpcHRpb24uY2hlY2tlZD9gJHt0aGlzLnNlYXJjaEZpZWxkfSxkZXNjcmlwdGlvbmA6dGhpcy5zZWFyY2hGaWVsZCxvcGVyYXRpb246Im1hdGNoIixyaWdodDpJdFt0aGlzLnNlYXJjaEZpZWxkXS5zZWFyY2hWYWx1ZX07ZS5maWx0ZXIucHVzaCh0KX1pZih0aGlzLl9icmlkZ2Uuc2NyZWVuZXJfZmllbGRfbWF0Y2gmJmUuZmlsdGVyLnB1c2goe2xlZnQ6dGhpcy5fYnJpZGdlLnNjcmVlbmVyX2ZpZWxkX21hdGNoLmZpZWxkLApvcGVyYXRpb246Im1hdGNoIixyaWdodDp0aGlzLl9icmlkZ2Uuc2NyZWVuZXJfZmllbGRfbWF0Y2gucGF0dGVybn0pLHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyJiYodGhpcy5fYnJpZGdlLmhpZGRlbl9maWx0ZXIuZmlsdGVyJiYoZS5maWx0ZXI9ZS5maWx0ZXIuY29uY2F0KHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLmZpbHRlcikpLHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLm9wdGlvbnMmJihlLm9wdGlvbnM9T2JqZWN0LmFzc2lnbihlLm9wdGlvbnN8fHt9LHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLm9wdGlvbnMpKSksdGhpcy5zd2l0Y2hGaWx0ZXImJmUuZmlsdGVyLnB1c2godGhpcy5zd2l0Y2hGaWx0ZXIpLHRoaXMuX2N1cnJlbmN5U2VsZWN0KXtjb25zdCB0PXRoaXMuX2N1cnJlbmN5U2VsZWN0LmdldFByaWNlQ29udmVyc2lvbk9iamVjdCgpO3QmJihlLnByaWNlX2NvbnZlcnNpb249dCl9cmV0dXJuIHRoaXMuZW9kUmVzdHJpY3Rpb24udmFsdWUoKSE9PVdvLk5vbmU/ZS5vcHRpb25zLmRhdGFfcmVzdHJpY3Rpb25zPSJQUkVWX0JBUiI6ZGVsZXRlIGUub3B0aW9ucy5kYXRhX3Jlc3RyaWN0aW9ucyxlfWdldFJlcXVlc3RDb2x1bW5zKCl7Y29uc3QgZT1bZC5TdG9jayxkLlNlY3RvcixkLkluZHVzdHJ5XS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpP1siY3VycmVuY3kiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIl06W107cmV0dXJuIEFycmF5LmZyb20obmV3IFNldChbLi4udGhpcy5maWVsZHNPcmRlci52YWx1ZSgpLC4uLnRoaXMuX3ZpZXcudGFibGUuYWRkaXRpb25hbENvbHVtbnMsLi4uZV0pKX1zY2FuKGUsdCxvLGk9ITEpe2lmKCFpJiZ0aGlzLl9icmlkZ2UudmlzaWJsZSYmITAhPT10aGlzLl9icmlkZ2UudmlzaWJsZS52YWx1ZSgpKXJldHVybjtjb25zdCBuPUpTT04uc3RyaW5naWZ5KGUpO3RoaXMubG9hZGluZz0hMCx0aGlzLmxvYWRpbmdTdGFydC5maXJlKHQmJiFvKTtjb25zdCByPURhdGUubm93KCkscz1mdW5jdGlvbihlKXtjb25zdCB0PWUubWFwKCgoZSx0KT0+W2UsdF0pKTtyZXR1cm4gbmV3IE1hcCh0KX0oZS5jb2x1bW5zKTtpZih0aGlzLl9icmlkZ2UuaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldClyZXR1cm4gdm9pZCB0aGlzLl92aWV3LmRpc3BsYXkoe2RhdGE6W119LHMpO2NvbnN0IGE9KHQsbyk9Pnt0aGlzLmxvYWRpbmc9ITE7Y29uc3QgaT1EYXRlLm5vdygpLXIsbj1KU09OLnBhcnNlKHQpO3RoaXMuX3Nob3VsZFJlcmVuZGVyKHQsZSkmJih0aGlzLl92aWV3LmRpc3BsYXkobixzLG8pLHRoaXMuX3ByZXZTY2FuRGF0YT10LHRoaXMuX3ByZXZSZXF1ZXN0RGF0YT0oMCxILmNsb25lKShlKSksdGhpcy5pc1NlcnZlclJlbmRlcigpJiZuLnJlcXVlc3QmJihuLnJlcXVlc3Quc3ltYm9scyYmbi5yZXF1ZXN0LnN5bWJvbHMudGlja2VycyYmKHRoaXMuX2luaXRUaWNrZXJzPW4ucmVxdWVzdC5zeW1ib2xzLnRpY2tlcnMsdGhpcy5fdGlja2Vycz10aGlzLl9pbml0VGlja2VycyksdGhpcy5fb3B0aW9ucz1uLnJlcXVlc3Qub3B0aW9ucyksdGhpcy5sb2FkaW5nQ29tcGxldGUuZmlyZSgpO2lmKG51bGwhPT1sb2NhdGlvbi5wYXRobmFtZS5tYXRjaCgvZWFybmluZ3NcL3swLDF9JC9pKSYmIXRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSl7Y29uc3QgZT0iZXJyb3IiPT09bz8iZXJyb3IiOiJvayIsdD12b2lkIDAhPT1uLnN0YXR1cyYmMCE9PW4uc3RhdHVzP24uc3RhdHVzOiJlcnJvciI9PT1lPzQwMDoyMDA7RXMudGVsZW1ldHJ5LnNlbmRSZXBvcnQoImNhbGVuZGFycyIsImVhcm5pbmdzX2h0dHBfc3RhdHVzIix7dmFsdWU6dCxhZGRpdGlvbmFsOntzb3VyY2U6IlNjcmVlbmVyV2lkZ2V0In19KSxFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIiwiZWFybmluZ3NfcmVzcG9uc2VfdGltZV9mcmFtZSIse3ZhbHVlOmksYWRkaXRpb25hbDp7c291cmNlOiJTY3JlZW5lcldpZGdldCJ9fSksRXMudGVsZW1ldHJ5LnNlbmRSZXBvcnQoImNhbGVuZGFycyIsYGVhcm5pbmdzXyR7ZX1gKX19LGw9KGUsdCk9Pntjb25zdCBvPURhdGUubm93KCktcjt0aGlzLmxvYWRpbmc9ITEsdGhpcy5fdmlldy5kaXNwbGF5KGUscyx0KSx0aGlzLmxvYWRpbmdDb21wbGV0ZS5maXJlKCk7aWYobnVsbCE9PWxvY2F0aW9uLnBhdGhuYW1lLm1hdGNoKC9lYXJuaW5nc1wvezAsMX0kL2kpJiYhdGhpcy5pc1NlcnZlclJlbmRlcigpKXtjb25zdCBpPSJlcnJvciI9PT10PyJlcnJvciI6Im9rIixuPXZvaWQgMCE9PWUuc3RhdHVzJiYwIT09ZS5zdGF0dXM/ZS5zdGF0dXM6ImVycm9yIj09PWk/NDAwOjIwMDtFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIiwiZWFybmluZ3NfaHR0cF9zdGF0dXMiLHt2YWx1ZTpuLGFkZGl0aW9uYWw6e3NvdXJjZToiU2NyZWVuZXJXaWRnZXQifX0pLEVzLnRlbGVtZXRyeS5zZW5kUmVwb3J0KCJjYWxlbmRhcnMiLCJlYXJuaW5nc19yZXNwb25zZV90aW1lX2ZyYW1lIix7dmFsdWU6byxhZGRpdGlvbmFsOntzb3VyY2U6IlNjcmVlbmVyV2lkZ2V0In19KSxFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIixgZWFybmluZ3NfJHtpfWApfX07dGhpcy5pc1NlcnZlclJlbmRlcigpP2Eod2luZG93LmluaXREYXRhLnNjcmVlbmVyX2RhdGEpOnRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXImJnRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXIuaXNBY3RpdmUoKSYmIXRoaXMuX3RpY2tlcnMubGVuZ3RoP3RoaXMuX3ZpZXcuZGlzcGxheSh7ZGF0YTpbXX0scyk6KHRoaXMuc2NhblJlcXVlc3QmJjQhPT10aGlzLnNjYW5SZXF1ZXN0LnJlYWR5U3RhdGUmJnRoaXMuc2NhblJlcXVlc3QuYWJvcnQoKSx0aGlzLnNjYW5SZXF1ZXN0PXRoaXMuX3NlbmRTY2FuUmVxdWVzdChuLGEpLHRoaXMuc2NhblJlcXVlc3QuZmFpbChsKSx0aGlzLnRyYWNrRXZlbnQoIlNjYW4gcmVxdWVzdCIpLHdpbmRvdy5pbml0RGF0YS5maWx0ZXJfaWQmJmRlbGV0ZSB3aW5kb3cuaW5pdERhdGEuZmlsdGVyX2lkKX1wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCl7dGhpcy5sb2FkaW5nJiZ0aGlzLnNjYW5SZXF1ZXN0JiYodGhpcy5zY2FuUmVxdWVzdC5hYm9ydCgpLAp0aGlzLnNjYW5SZXF1ZXN0PW51bGwpfV9zaG91bGRSZXJlbmRlcihlLHQpe3JldHVybiF0aGlzLl9pc1ByZXZTY2FuRGF0YUVxdWFsKGUpfHwhdGhpcy5faXNQcmV2UmVxdWVzdERhdGFFcXVhbCh0KX1faXNQcmV2U2NhbkRhdGFFcXVhbChlKXtyZXR1cm4gdGhpcy5fcHJldlNjYW5EYXRhPT09ZX1faXNQcmV2UmVxdWVzdERhdGFFcXVhbChlKXtyZXR1cm4oMCxfaS5kZWZhdWx0KShlLHRoaXMuX3ByZXZSZXF1ZXN0RGF0YSl9aXNGaWVsZFNldENoYW5nZWQoKXtpZih0aGlzLl9icmlkZ2Uub25XaWRnZXQpcmV0dXJuITE7Y29uc3QgZT10aGlzLmN1cnJlbnRGaWVsZFNldElkKCksdD1lJiZ0aGlzLmdldEZpZWxkU2V0QnlJZChlKTtpZighZXx8IXQpcmV0dXJuITA7Y29uc3Qgbz10LmNvbnRlbnQuc2xpY2UoKS5maWx0ZXIoS3MpLGk9dGhpcy5maWVsZHNPcmRlci52YWx1ZSgpLnNsaWNlKCkuZmlsdGVyKEtzKSxuPSFJdC50eXBlLmRpc2FibGVkJiYtMSE9PXQuY29udGVudC5pbmRleE9mKCJ0eXBlIikhPT1JdC50eXBlLmNoZWNrZWQscj0hSXQuZGVzY3JpcHRpb24uZGlzYWJsZWQmJi0xIT09dC5jb250ZW50LmluZGV4T2YoImRlc2NyaXB0aW9uIikhPT1JdC5kZXNjcmlwdGlvbi5jaGVja2VkO3JldHVybiBvLmpvaW4oKSE9PWkuam9pbigpfHxufHxyfWFwcGx5RmllbGRTZXRDb250ZW50KGUpe2Zvcihjb25zdCB0IGluIEl0KUl0W3RdLmNoZWNrZWQ9LTEhPT1lLmluZGV4T2YodCk7dGhpcy5maWVsZFNldENoYW5nZWQuZmlyZShlLmZpbHRlcigoZT0+ITAhPT1JdFtlXS5oaWRkZW5Db2x1bW4pKSl9YXBwbHlGaWVsZFNldEltcGwoZSx0LG89ITApe2NvbnN0IGk9dGhpcy5nZXRGaWVsZFNldEJ5SWQoZSksbj1pLmNvbnRlbnQuZmlsdGVyKChlPT5JdFtlXSYmIUl0W2VdLmRpc2FibGVkKSk7aWYodGhpcy5hcHBseUZpZWxkU2V0Q29udGVudChuKSx0fHx0aGlzLnVwZGF0ZSgpLHRoaXMuX3ZpZXcuc2V0RmllbGRTZXQoZSksdGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpZWxkU2V0SWQiLGkuaWQse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LnVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKSwhdCl7Y29uc3QgdD10aGlzLmRlZmF1bHRGaWVsZFNldHMuZmluZCgodD0+dC5pZD09PWUpKT9lOiJjdXN0b20iO3RoaXMudHJhY2tFdmVudChgQXBwbHkgZmllbGQgc2V0ICR7dH1gKX1vJiZ0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5hcHBseS1maWVsZC1zZXQiLEpTT04uc3RyaW5naWZ5KHtzZXRJZDplLGluaXRpYWw6dCxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKX1hcHBseUZpZWxkU2V0KGUsdCxpKXt0fHxpfHwhdGhpcy5pc0ZpZWxkU2V0Q2hhbmdlZCgpP3RoaXMuYXBwbHlGaWVsZFNldEltcGwoZSx0KTpuZXcgUHJvbWlzZSgoZT0+e3RoaXMuX2JyaWRnZS5vbldpZGdldD9lKCk6dGhpcy5fdmlldy5fcG9wdXBzLnNob3dDb25maXJtRGlhbG9nKG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDcxNzM1MCkpKS50aGVuKCh0PT57dD90aGlzLl92aWV3LnBvcHVwcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWVsZFNldCgpLnRoZW4oZSwodD0+e3QmJmpzLmxvZ0Vycm9yKHQpLGUoKX0pKTplKCl9KSl9KSkudGhlbigoKCk9Pnt0aGlzLmFwcGx5RmllbGRTZXRJbXBsKGUsdCl9KSl9aXNGaWx0ZXJTZXRDaGFuZ2VkKCl7aWYodGhpcy5fYnJpZGdlLm9uV2lkZ2V0KXJldHVybiExO2NvbnN0IGU9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKSx0PWUmJnRoaXMuZ2V0RmlsdGVyU2V0QnlJZChlKTtpZighZXx8IXQpcmV0dXJuITA7Y29uc3Qgbz10aGlzLm1hcmtldHN8fFt0aGlzLm1hcmtldF07WyJmb3JleCIsImNyeXB0byJdLmluY2x1ZGVzKG9bMF0pJiZkZWxldGUgdC5jb250ZW50LmZpbHRlcnMuaXNfcHJpbWFyeTtjb25zdCBpPXRoaXMuY3VycmVudEZpbHRlclN0YXRlKCksbj17fTtpZih0LmNvbnRlbnQuZmlsdGVycylmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyh0LmNvbnRlbnQuZmlsdGVycykpe2NvbnN0IG89dC5jb250ZW50LmZpbHRlcnNbZV0saT1tdChvLm9wZXJhdG9yKSxyPW10KG8udmFsdWUpOyhpJiZyfHwhaSYmIXIpJiYobltlXT1vKX1pZih0LmNvbnRlbnQub3B0aW9ucyYmaS5vcHRpb25zKXtpZihpLm9wdGlvbnMuYWN0aXZlX3N5bWJvbHNfb25seSE9PXQuY29udGVudC5vcHRpb25zLmFjdGl2ZV9zeW1ib2xzX29ubHkpcmV0dXJuITB9Y29uc3Qgcj1pLmZpbHRlcnMscz1PYmplY3Qua2V5cyhuKS5jb25jYXQoT2JqZWN0LmtleXMocikpLmZpbHRlcigoKGUsdCxvKT0+by5pbmRleE9mKGUpPT09dCkpO2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7KytlKXtjb25zdCB0PXNbZV07aWYoIW4uaGFzT3duUHJvcGVydHkodCl8fCFyLmhhc093blByb3BlcnR5KHQpKXJldHVybiEwO2lmKEFycmF5LmlzQXJyYXkoblt0XSleQXJyYXkuaXNBcnJheShyW3RdKSlyZXR1cm4hMDtpZihBcnJheS5pc0FycmF5KG5bdF0pJiZBcnJheS5pc0FycmF5KHJbdF0pJiZuW3RdLnNvcnQodGhpcy5udW1lcmljU29ydGVyKS5qb2luKCkhPT1yW3RdLnNvcnQodGhpcy5udW1lcmljU29ydGVyKS5qb2luKCl8fCFBcnJheS5pc0FycmF5KG5bdF0pJiYhKDAsX2kuZGVmYXVsdCkoblt0XSxyW3RdKSlyZXR1cm4hMH1yZXR1cm4hISh0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb24mJnQuY29udGVudC5zb3J0X2RpcmVjdGlvbiE9PWkuc29ydF9kaXJlY3Rpb258fHQuY29udGVudC5zb3J0X2ZpZWxkJiZ0LmNvbnRlbnQuc29ydF9maWVsZCE9PWkuc29ydF9maWVsZCl9Y3VycmVudEZpbHRlclN0YXRlKCl7Y29uc3QgZT17fTtmb3IoY29uc3QgdCBpbiBJdCl7Y29uc3Qgbz1JdFt0XS52YWx1ZTtpZihbImlzX3ByaW1hcnkiLCJhY3RpdmVfc3ltYm9sIl0uaW5jbHVkZXModCkpe2lmKCFvKWNvbnRpbnVlO2VbdF09e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9Cn1lbHNlIEl0W3RdLmNvbnRyb2wmJm8mJigib2JqZWN0Ij09dHlwZW9mIG8/ImNvbmRpdGlvbiI9PT1JdFt0XS5jb250cm9sP210KG8ub3BlcmF0b3IpfHxtdChvLnZhbHVlKXx8KGVbdF09byk6T2JqZWN0LmtleXMobykuc29tZSgoZT0+ISFvW2VdKSkmJihlW3RdPW8pOmVbdF09byl9cmV0dXJue2ZpbHRlcnM6ZSxzb3J0X2ZpZWxkOnRoaXMuX3NvcnRGaWVsZC52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydEZpZWxkLHNvcnRfZGlyZWN0aW9uOnRoaXMuX3NvcnREaXJlY3Rpb24udmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb24sb3B0aW9uczp0aGlzLl9vcHRpb25zfX1zYXZlRmllbGRTZXQoZSx0KXtyZXR1cm4gdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksZS50eXBlPSJmaWVsZFNldCIsZS5zY3JlZW5lcl90eXBlPXRoaXMuc2NyZWVuZXJfdHlwZSx0aGlzLnNhdmVTZXQoZSx0KS50aGVuKCh0PT57dGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSk7Y29uc3Qgbz10JiZ0LmlkJiZgJHt0LmlkfWA7cmV0dXJuIGUuZGVsZXRlfHx0aGlzLmZpZWxkU2V0U2F2ZWQuZmlyZSgpLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLnNhdmUtZmllbGQtc2V0IixKU09OLnN0cmluZ2lmeSh7c2V0SWQ6ZS5kZWxldGU/IiI6byxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKSx0aGlzLmFwcGx5RmllbGRTZXRJbXBsKG8pLHR9KSl9c2F2ZUZpbHRlclNldChlLHQpe3JldHVybiB0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksZS50eXBlPSJmaWx0ZXJTZXQiLGUuc2NyZWVuZXJfdHlwZT10aGlzLnNjcmVlbmVyX3R5cGUsZS5tYXJrZXRzPXRoaXMubWFya2V0cyx0aGlzLnNhdmVTZXQoZSx0KS50aGVuKCh0PT4odGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLGUuc2V0SWQ9dCYmdC5pZCYmYCR7dC5pZH1gLHRoaXMuYXBwbHlGaWx0ZXJTZXQodC5pZCksZS5kZWxldGU/dGhpcy5maWx0ZXJTZXREZWxldGVkLmZpcmUoZS5zZXRJZCk6dGhpcy5maWx0ZXJTZXRTYXZlZC5maXJlKGUuc2V0SWQsZS5tYXJrZXRzLCEhZS5jb250ZW50KSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5zYXZlLWZpbHRlci1zZXQiLEpTT04uc3RyaW5naWZ5KHtzZXRJZDplLmRlbGV0ZT8iIjplLnNldElkLHNldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5fSkpLHQpKSl9c2F2ZVNldChlLHQpe3JldHVybiBQcm9taXNlLnJlc29sdmUoe3R5cGU6IlBPU1QiLHVybDoiL3NjcmVlbmVyL3NhdmUvIixkYXRhOmV9KS50aGVuKFZzLmFqYXgpLnRoZW4oKGU9PihlLmVycm9yP2pzLmxvZ0Vycm9yKGUuZXJyb3IpOnQmJnRoaXMudHJhY2tFdmVudCh0KSx0aGlzLmdldFVzZXJTZXR0aW5ncygpLnRoZW4oKCgpPT5lKSkpKSl9X2lzRXhjaGFuZ2VSZWxldmFudChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlLnZhbHVlKT9lLnZhbHVlLmV2ZXJ5KCh0PT5lLnJhbmdlLmluY2x1ZGVzKHQpKSk6ZS5yYW5nZS5pbmNsdWRlcyhlLnZhbHVlKX1faXNTdWJtYXJrZXRSZWxldmFudChlKXtyZXR1cm4oQXJyYXkuaXNBcnJheShlLnZhbHVlKT9lLnZhbHVlOltlLnZhbHVlXSkuZXZlcnkoKHQ9PmUucmFuZ2UuaW5jbHVkZXModCkpKX1hcHBseUZpbHRlclNldChlLHQsbz0hMCl7Y29uc3QgaT10aGlzLmdldEZpbHRlclNldEJ5SWQoZSk7aWYoaSl7aS5jb250ZW50LnNvcnRfZmllbGQmJnRoaXMuX3NvcnRGaWVsZC5zZXRWYWx1ZShpLmNvbnRlbnQuc29ydF9maWVsZCksaS5jb250ZW50LnNvcnRfZGlyZWN0aW9uJiZ0aGlzLl9zb3J0RGlyZWN0aW9uLnNldFZhbHVlKGkuY29udGVudC5zb3J0X2RpcmVjdGlvbiksdGhpcy5fb3B0aW9ucz1PYmplY3QuYXNzaWduKHt9LGkuY29udGVudC5vcHRpb25zKTtmb3IoY29uc3QgZSBpbiBJdClpLmNvbnRlbnQuZmlsdGVycyYmZSBpbiBpLmNvbnRlbnQuZmlsdGVycz8oImNvbmRpdGlvbiI9PT1JdFtlXS5jb250cm9sJiZBcnJheS5pc0FycmF5KGkuY29udGVudC5maWx0ZXJzW2VdKSYmMj09PWkuY29udGVudC5maWx0ZXJzW2VdLmxlbmd0aCYmKGkuY29udGVudC5maWx0ZXJzW2VdPXtvcGVyYXRvcjoiaW5fcmFuZ2UiLHZhbHVlOmkuY29udGVudC5maWx0ZXJzW2VdfSksSXRbZV0udmFsdWU9KDAsSC5jbG9uZSkoaS5jb250ZW50LmZpbHRlcnNbZV0pLCJzdWJtYXJrZXQiIT09ZXx8IUl0W2VdLmRpc2FibGVkJiZ0aGlzLl9pc1N1Ym1hcmtldFJlbGV2YW50KEl0W2VdKXx8KEl0W2VdLnZhbHVlPW51bGwpLCJpc19wcmltYXJ5Ij09PWUmJkl0W2VdLmRpc2FibGVkJiYoSXRbZV0udmFsdWU9bnVsbCksImNvbmRpdGlvbiI9PT1JdFtlXS5jb250cm9sJiZJdFtlXS52YWx1ZSYmKG10KEl0W2VdLnZhbHVlLnZhbHVlKXx8bXQoSXRbZV0udmFsdWUub3BlcmF0b3IpKSYmKEl0W2VdLnZhbHVlPW51bGwpLCJleGNoYW5nZSIhPT1lfHx0aGlzLl9pc0V4Y2hhbmdlUmVsZXZhbnQoSXRbZV0pfHwoSXRbZV0udmFsdWU9bnVsbCkpOiExIT09SXRbZV0ucmVzZXR0YWJsZUZpbHRlciYmKEl0W2VdLnZhbHVlPW51bGwpLHRoaXMuX3ZpZXcuX3Jlc2V0RmllbGQoZSwhMSwhMCk7dGhpcy5fb3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgiYWN0aXZlX3N5bWJvbHNfb25seSIpJiYoITA9PT10aGlzLl9vcHRpb25zLmFjdGl2ZV9zeW1ib2xzX29ubHkmJihJdC5hY3RpdmVfc3ltYm9sLnZhbHVlPSEwKSxkZWxldGUgdGhpcy5fb3B0aW9ucy5hY3RpdmVfc3ltYm9sc19vbmx5KSx0aGlzLnNhdmVGaWx0ZXJzU2V0dGluZ3MoKSwhMD09PXQ/KHRoaXMuX3ZpZXcuc2V0RmlsdGVyU2V0KGUpLHRoaXMuZmlsdGVyU2V0Q2hhbmdlZC5maXJlKGUpKTp0aGlzLnVwZGF0ZUltcGwoKCgpPT57dGhpcy5fdmlldy5zZXRGaWx0ZXJTZXQoZSksdGhpcy5maWx0ZXJTZXRDaGFuZ2VkLmZpcmUoZSl9KSxudWxsLCEwKSx0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUodGhpcy5zZXR0aW5nS2V5KyIuZmlsdGVyU2V0SWQiLGkuaWQsewpmb3JjZUZsdXNoOiEwfSksdGhpcy50cmFja0V2ZW50KCJBcHBseSBmaWx0ZXIgc2V0IiksbyYmdGhpcy5fc2VuZFhXaW5kb3dFdmVudCgic2NyZWVuZXIuYXBwbHktZmlsdGVyLXNldCIsSlNPTi5zdHJpbmdpZnkoe3NldElkOmUsZG9Ob3RVcGRhdGU6dCxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKX19c2F2ZUZpbHRlcnNTZXR0aW5ncygpe3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLnNldHRpbmdLZXkrIi5zb3J0X2RpcmVjdGlvbiIsdGhpcy5fc29ydERpcmVjdGlvbi52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydERpcmVjdGlvbiksdGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZmllbGQiLHRoaXMuX3NvcnRGaWVsZC52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydEZpZWxkKX1nZXRVc2VyU2V0dGluZ3MoKXtjb25zdCBlPXtmaWx0ZXJTZXRzOltdLGZpZWxkU2V0czpbXX07cmV0dXJuIHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKT90aGlzLmZhdm9yaXRlRmllbGRTZXRzPXRoaXMuZGVmYXVsdEZpZWxkU2V0cy5tYXAoKGU9PmUuaWQpKTp0aGlzLmZhdm9yaXRlRmllbGRTZXRzPXRoaXMuc2V0dGluZ3NTYXZlci5nZXRKU09OKHRoaXMuc2V0dGluZ0tleSsiLmZhdm9yaXRlRmllbGRTZXRzIix0aGlzLmRlZmF1bHRGaWVsZFNldHMubWFwKChlPT5lLmlkKSkpLHdpbmRvdy5pc19hdXRoZW50aWNhdGVkP25ldyBQcm9taXNlKCh0PT57VnMuZ2V0KCIvc2NyZWVuZXIvc2V0dGluZ3MvIix7c2NyZWVuZXJfdHlwZTp0aGlzLnNjcmVlbmVyX3R5cGV9KS5kb25lKChvPT57KG89b3x8ZSkuZmlsdGVyU2V0cz1vLmZpbHRlclNldHMubWFwKChlPT57Y29uc3QgdD1KU09OLnBhcnNlKGUuY29udGVudCk7dmFyIG87cmV0dXJuIHQuZmlsdGVycz0obz10LmZpbHRlcnMsT2JqZWN0LmtleXMobykuZm9yRWFjaCgoZT0+e2NvbnN0IHQ9b1tlXTsibWFya2V0X2NhcF9iYXNpYyI9PT1lJiYibmVtcHR5Ij09PXQub3BlcmF0aW9uJiZkZWxldGUgb1tlXX0pKSxvKSx7aWQ6ZS5pZCsiIix0aXRsZTplLnRpdGxlLGNvbnRlbnQ6dH19KSksby5maWVsZFNldHM9by5maWVsZFNldHMubWFwKChlPT4oe2lkOmUuaWQrIiIsdGl0bGU6ZS50aXRsZSxjb250ZW50OkpTT04ucGFyc2UoZS5jb250ZW50KX0pKSksdGhpcy5zZXR0aW5ncz1vLHQoKX0pKX0pKToodGhpcy5zZXR0aW5ncz1lLFByb21pc2UucmVzb2x2ZSgpKX1nZXRGaWVsZFNldEJ5SWQoZSl7Y29uc3QgdD10PT50LmlkPT1lLG89dGhpcy5kZWZhdWx0RmllbGRTZXRzLmZpbmQodCl8fCh0aGlzLnNldHRpbmdzP3RoaXMuc2V0dGluZ3MuZmllbGRTZXRzLmZpbmQodCk6bnVsbCk7cmV0dXJuIG8/T2JqZWN0LmFzc2lnbih7fSxvLHt0aXRsZTpibyhvLnRpdGxlLCEwKX0pOm51bGx9Z2V0RmlsdGVyU2V0QnlJZChlKXtpZigicHJlZGVmaW5lZF9maWx0ZXIiPT09ZSlyZXR1cm4gdGhpcy5fYnJpZGdlLnByZWRlZmluZWRfZmlsdGVyO2NvbnN0IHQ9dD0+dC5pZD09ZSxvPVp0LmZpbmQodCl8fCh0aGlzLnNldHRpbmdzP3RoaXMuc2V0dGluZ3MuZmlsdGVyU2V0cy5maW5kKHQpOm51bGwpO3JldHVybiBvP09iamVjdC5hc3NpZ24oe30sbyx7dGl0bGU6Ym8oby50aXRsZSwhMCl9KTpudWxsfWFkZEZhdm9yaXRlRmllbGRTZXQoZSl7LTE9PT10aGlzLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YoZSkmJnRoaXMuZmF2b3JpdGVGaWVsZFNldHMucHVzaChlKSx0aGlzLnNldHRpbmdzU2F2ZXIuc2V0SlNPTih0aGlzLnNldHRpbmdLZXkrIi5mYXZvcml0ZUZpZWxkU2V0cyIsdGhpcy5mYXZvcml0ZUZpZWxkU2V0cyx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuX3ZpZXcudXBkYXRlRmF2b3JpdGVzVG9vbGJhcigpLHRoaXMudHJhY2tFdmVudCgiQWRkIGZpZWxkIHNldCB0byBmYXZvcml0ZXMiKSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5hZGQtZmllbGQtc2V0LXRvLWZhdm9yaXRlcyIsSlNPTi5zdHJpbmdpZnkoe3NldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5LGRhdGU6RGF0ZS5ub3coKX0pKX1yZW1vdmVGYXZvcml0ZUZpZWxkU2V0KGUpe3RoaXMuZmF2b3JpdGVGaWVsZFNldHM9dGhpcy5mYXZvcml0ZUZpZWxkU2V0cy5maWx0ZXIoKHQ9PnQhPT1lKSksdGhpcy5zZXR0aW5nc1NhdmVyLnNldEpTT04odGhpcy5zZXR0aW5nS2V5KyIuZmF2b3JpdGVGaWVsZFNldHMiLHRoaXMuZmF2b3JpdGVGaWVsZFNldHMse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LnVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5yZW1vdmUtZmllbGQtc2V0LWZyb20tZmF2b3JpdGVzIixKU09OLnN0cmluZ2lmeSh7c2V0dGluZ0tleTp0aGlzLnNldHRpbmdLZXksZGF0ZTpEYXRlLm5vdygpfSkpfWN1cnJlbnRGaWVsZFNldElkKCl7cmV0dXJuIHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKT93aW5kb3cuaW5pdERhdGEuZmllbGRzZXRfaWQ6dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpZWxkU2V0SWQiLHRoaXMuZGVmYXVsdEZpZWxkU2V0c1swXS5pZCl9Y3VycmVudEZpbHRlclNldElkKCl7Y29uc3QgZT1adC5maW5kKChlPT5lLmhhc093blByb3BlcnR5KCJkaXNhYmxlZCIpJiYhZS5kaXNhYmxlZCkpfHxadFswXTtyZXR1cm4gd2luZG93LmluaXREYXRhLmZpbHRlcl9pZHx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpbHRlclNldElkIixlLmlkKX1nZXRDdXJyZW50U3RhdGUoKXtyZXR1cm57cmVxdWVzdFBhcmFtczp0aGlzLl9wcmV2UmVxdWVzdHx8Im5vbmUiLGZpZWxkU2V0OnRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSxmaWx0ZXJTZXQ6dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKX19dHJhY2tFdmVudChlKXsoMCx3cy50cmFja0V2ZW50KSgiU2NyZWVuZXIiLGUsdGhpcy5tYXJrZXRzLmpvaW4oIiwiKSsiICIrKHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lPyJzdGFuZGFsb25lIjoib24gY2hhcnQiKSl9bnVtZXJpY1NvcnRlcihlLHQpe3JldHVybiBlPnQ/MTotMX1pbnZhbGlkYXRlUmVxdWVzdCgpewpkZWxldGUgdGhpcy5fcHJldlJlcXVlc3R9Z2V0IHNlbGVjdGVkSW50ZXJ2YWxJZCgpe2lmKCF0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scyl7aWYodGhpcy5lb2RSZXN0cmljdGlvbi52YWx1ZSgpIT09V28uTm9uZSlyZXR1cm4iMUQiO2NvbnN0IGU9dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke3RoaXMuc2V0dGluZ0tleX0uaW50ZXJ2YWwtaWRgLGNlKTtyZXR1cm4odGhpcy5fYnJpZGdlLm9uV2lkZ2V0fHwoMCxIby5lbmFibGVkKShYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUykmJi0xIT09KDAsSG8uZ2V0Q29uZmlnKShYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUykuaW50ZXJ2YWwuaW5kZXhPZihlKSkmJmRlKGUpP2U6Y2V9fXNldFNlbGVjdGVkSW50ZXJ2YWxJZChlKXt0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUoYCR7dGhpcy5zZXR0aW5nS2V5fS5pbnRlcnZhbC1pZGAsZSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLmNoYW5nZS1zZWxlY3RlZC1pbnRlcnZhbC1pZCIsSlNPTi5zdHJpbmdpZnkoe3NldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5LGlkOmV9KSk7Y29uc3QgdD1kZShlKTt0JiZ0aGlzLnRyYWNrRXZlbnQoYEFwcGx5IHRpbWVmcmFtZSAke3QuaWR9YCl9Z2V0IHNlbGVjdGVkR3JvdXBzKCl7cmV0dXJuIEpTT04ucGFyc2UodGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke0dzfS5zY3JlZW5lci1mb3JleC5ncm91cHNgLCdbIk1ham9yIiwiTWlub3IiXScpKS5tYXAoKGU9Pmh0W2VdfHxlKSl9c2V0U2VsZWN0ZWRHcm91cHMoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhodCksbz1lLm1hcCgoZT0+dC5maW5kKCh0PT5odFt0XT09PWUpKXx8ZSkpO3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZShgJHtHc30uc2NyZWVuZXItZm9yZXguZ3JvdXBzYCxKU09OLnN0cmluZ2lmeShvKSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIHNlbGVjdGVkIGdyb3VwcyIpfXNldCBtYXJrZXRzKGUpe2NvbnN0IHQ9QXJyYXkuaXNBcnJheShlKT9lOltlXSxvPUpTT04uc3RyaW5naWZ5KHQpO3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZShgJHtHc30uJHt0aGlzLnNldHRpbmdLZXl9Lm1hcmtldGAsbyx7Zm9yY2VGbHVzaDohMH0pLHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIG1hcmtldCIpLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLm1hcmtldC1jaGFuZ2VkIixKU09OLnN0cmluZ2lmeSh7c2V0dGluZ0tleTp0aGlzLnNldHRpbmdLZXksZGF0ZTpEYXRlLm5vdygpfSkpfWdldCBwcmVzZXQoKXtyZXR1cm4gd2luZG93LmluaXREYXRhLnNjcmVlbmVyX3ByZXNldH1nZXQgbWFya2V0cygpe2NvbnN0IGU9ZnVuY3Rpb24oZSx0PSJzdG9jayIpe3JldHVybiJmb3JleCI9PT10PyJmb3JleCI6ImNyeXB0byI9PT10PyJjcnlwdG8iOmsoZSl9KEdzLHRoaXMuc2NyZWVuZXJfdHlwZSksdD1PYmplY3Qua2V5cyhQKHRoaXMuc2NyZWVuZXJfdHlwZSkpLG89dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0ubWFya2V0YCxKU09OLnN0cmluZ2lmeShbZV0pKTtsZXQgaTtpZih0aGlzLnNldHRpbmdzU2F2ZXIuZ2V0Qm9vbChgJHtHc30uJHt0aGlzLnNldHRpbmdLZXl9LmlzLWVudGlyZS13b3JsZGAsITEpKWk9dDtlbHNlIHRyeXtpPUpTT04ucGFyc2UobyksQXJyYXkuaXNBcnJheShpKSYmIWkuc29tZSgoZT0+IXQuaW5jbHVkZXMoZSkpKXx8KGk9W2VdKX1jYXRjaChuKXtpPW4gaW5zdGFuY2VvZiBTeW50YXhFcnJvciYmdC5pbmNsdWRlcyhvKT9bb106W2VdfWlmKHdpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tYXJrZXQpcmV0dXJuW3dpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tYXJrZXRdO2lmKCEoMCxlcy5pc0dsb2JhbFNjcmVlbmVyQXZhaWxhYmxlKSgpJiZpLmxlbmd0aD4xKXJldHVybiBpPVtlXSxpO3JldHVybiBpLmV2ZXJ5KChlPT50LmluY2x1ZGVzKGUpKSk/aTpbZV19c2V0IGlzRW50aXJlV29ybGQoZSl7dGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0uaXMtZW50aXJlLXdvcmxkYCxlLHtmb3JjZUZsdXNoOiEwfSl9Z2V0IGlzRW50aXJlV29ybGQoKXtjb25zdCBlPXRoaXMuc2V0dGluZ3NTYXZlci5nZXRCb29sKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0uaXMtZW50aXJlLXdvcmxkYCwhMSk7cmV0dXJuISghKDAsZXMuaXNHbG9iYWxTY3JlZW5lckF2YWlsYWJsZSkoKSYmdGhpcy5tYXJrZXRzLmxlbmd0aD4xKSYmZX1nZXQgdGltZXpvbmUoKXtyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3QgdD1GKCJzdG9jayIpW2VdO3JldHVybiB0P3QudGltZXpvbmU6bnVsbH0odGhpcy5tYXJrZXRzWzBdKX1fdmVyaWZ5QWxsU2V0c0NoYW5nZXMoZSl7cmV0dXJuKCEwPT09ZT9Qcm9taXNlLnJlc29sdmUoKTpuZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/ZSgpOnRoaXMuaXNGaWVsZFNldENoYW5nZWQoKT90aGlzLl92aWV3LnBvcHVwcy5zaG93Q29uZmlybURpYWxvZyhvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg3MTczNTApKSkudGhlbigodD0+e3Q/dGhpcy5fdmlldy5wb3B1cHMuY29uZmlybUFuZFNhdmVDdXJyZW50RmllbGRTZXQoKS50aGVuKGUsKHQ9Pnt0JiZqcy5sb2dFcnJvcih0KSxlKCl9KSk6ZSgpfSkpOmUoKX0pKSkudGhlbigoKCk9PiEwPT09ZT9Qcm9taXNlLnJlc29sdmUoKTpuZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/ZSgpOnRoaXMuaXNGaWx0ZXJTZXRDaGFuZ2VkKCk/dGhpcy5fdmlldy5wb3B1cHMuc2hvd0NvbmZpcm1EaWFsb2coby5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjcwNjQ0KSkpLnRoZW4oKHQ9Pnt0P3RoaXMuX3ZpZXcucG9wdXBzLmNvbmZpcm1BbmRTYXZlQ3VycmVudEZpbHRlclNldCgpLnRoZW4oZSwodD0+e3QmJmpzLmxvZ0Vycm9yKHQpLGUoKX0pKTplKCl9KSk6ZSgpfSkpKSl9c2V0TWFya2V0KGUsdCxvKXtjb25zdCBpPUFycmF5LmlzQXJyYXkoZSk/ZTpbZV0KO3JldHVybiEwIT09dCYmKDAsX2kuZGVmYXVsdCkoaSx0aGlzLm1hcmtldHMpP1Byb21pc2UucmVqZWN0KCk6KHRoaXMubWFya2V0cz1pLHRoaXMuX3ZlcmlmeUFsbFNldHNDaGFuZ2VzKG8pLnRoZW4oKCgpPT50aGlzLmxvYWRpbmdTdGFydC5maXJlKCkpKS50aGVuKCgoKT0+dGhpcy5nZXRNZXRhSW5mbygpKSkudGhlbigoKCk9Pnt0aGlzLmRlZmF1bHRGaWVsZFNldHM9Zyh7c2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxpc0NvbXBhY3Q6dGhpcy5pc1NlcnZlclJlbmRlcigpLG1hcmtldHM6dGhpcy5tYXJrZXRzLHN1YnR5cGU6IiIsaXNPbldpZGdldDp0aGlzLl9icmlkZ2Uub25XaWRnZXR9KTtsZXQgZT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpO2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpO2lmKHQmJnQuZGlzYWJsZWQpe2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKChlPT4hZS5kaXNhYmxlZCkpO2U9dD90LmlkOiIifXRoaXMuYXBwbHlGaWVsZFNldCh0aGlzLmN1cnJlbnRGaWVsZFNldElkKCksITApLHRoaXMuYXBwbHlGaWx0ZXJTZXQoZSwhMCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMuX3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCksdGhpcy51cGRhdGUoKX0pKSl9X3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCl7Y29uc3QgZT17bWFya2V0czp0aGlzLm1hcmtldHMsaXNQcm86KDAsQXMuaXNQcm8pKHdpbmRvdy51c2VyKSxpc0Fub255bW91czohd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQsc2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxvbldpZGdldDooMCxBbi5pc0V4dGVybmFsV2lkZ2V0KSh0aGlzLl9icmlkZ2UpfTt0aGlzLmVvZFJlc3RyaWN0aW9uLnNldFZhbHVlKGZ1bmN0aW9uKGUpe2NvbnN0e3NjcmVlbmVyVHlwZTp0LG1hcmtldHM6byxvbldpZGdldDppLGlzUHJvOm4saXNBbm9ueW1vdXM6cn09ZTtpZihvLmxlbmd0aD4xKXJldHVybiBXby5Ob25lO2lmKCJzdG9jayIhPT10KXJldHVybiBXby5Ob25lO2NvbnN0IHM9JChvKTtpZihpKXJldHVybiBzLmV2ZXJ5KCRvKT9Xby5Ob25lOldvLldpZGdldDtpZihuKXJldHVybiBXby5Ob25lO2NvbnN0IGE9cy5tYXAoQm8pO3JldHVybiBhLnNvbWUoKGU9PigwLEZvLmlzSURDRXhjaGFuZ2UpKGUsITApKSkmJihyfHxhLnNvbWUoKGU9PiEhZSYmTG8oZSkpKSk/V28uU2l0ZTpXby5Ob25lfShlKSl9Y2hhbmdlU2NyZWVuZXJUeXBlKGUpe3JldHVybiBlPT09dGhpcy5zY3JlZW5lcl90eXBlP1Byb21pc2UucmVqZWN0KCk6KHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIHNjcmVlbmVyIHR5cGUiKSx0aGlzLl92ZXJpZnlBbGxTZXRzQ2hhbmdlcygpLnRoZW4oKCgpPT57dGhpcy5kaXNhYmxlZC5zZXRWYWx1ZSghMCksdGhpcy5tYXJrZXRDaGFuZ2VQcm9jZXNzPSEwLHRoaXMuc2NyZWVuZXJfdHlwZT1lLHRoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSgic2NyZWVuZXIuc2VsZWN0ZWRfdHlwZV9vbl9jaGFydCIsZSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuc2V0dGluZ0tleT1Zc1t0aGlzLnNjcmVlbmVyX3R5cGVdfHxZcy5zdG9jayx0aGlzLmRlZmF1bHRGaWVsZFNldHM9Zyh7c2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxtYXJrZXRzOnRoaXMubWFya2V0cyxpc0NvbXBhY3Q6dGhpcy5pc1NlcnZlclJlbmRlcigpLHN1YnR5cGU6IiIsaXNPbldpZGdldDp0aGlzLl9icmlkZ2Uub25XaWRnZXR9KSxQdCh0aGlzLnNjcmVlbmVyX3R5cGUpLFF0KHRoaXMubWFya2V0cyk7Y29uc3QgdD10aGlzLnNlbGVjdGVkR3JvdXBzO0l0LnNlY3Rvci52YWx1ZT1BcnJheS5pc0FycmF5KHQpJiZ0WzBdPT09by5pMThuZXh0KG51bGwsdm9pZCAwLG8oOTIxODQ3KSk/bnVsbDp0fSkpLnRoZW4oKCgpPT50aGlzLmxvYWRpbmdTdGFydC5maXJlKCkpKS50aGVuKCgoKT0+dGhpcy5nZXRNZXRhSW5mbygpKSkudGhlbigoKCk9PnRoaXMuZ2V0VXNlclNldHRpbmdzKCkpKS50aGVuKCgoKT0+e3RoaXMuX2NoZWNrQ3VycmVudFNldHMoKSx0aGlzLmFwcGx5RmllbGRTZXQodGhpcy5jdXJyZW50RmllbGRTZXRJZCgpLCEwKSx0aGlzLmFwcGx5RmlsdGVyU2V0KHRoaXMuY3VycmVudEZpbHRlclNldElkKCksITApfSkpLnRoZW4oKCgpPT57bGV0IGU9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKTtjb25zdCB0PXRoaXMuZGVmYXVsdEZpbHRlclNldHMuZmluZCgodD0+dC5pZD09PWUpKTtpZih0JiZ0LmRpc2FibGVkKXtjb25zdCB0PXRoaXMuZGVmYXVsdEZpbHRlclNldHMuZmluZCgoZT0+IWUuZGlzYWJsZWQpKTtlPXQ/dC5pZDoiIn10aGlzLmFwcGx5RmlsdGVyU2V0KGUsITApLHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSx0aGlzLl91cGRhdGVFb2RSZXN0cmljdGlvbigpLHRoaXMudXBkYXRlSW1wbCh2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLCEwKSx0aGlzLm1hcmtldENoYW5nZVByb2Nlc3M9ITEsdGhpcy5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dGhpcy5kaXNhYmxlZC5zZXRWYWx1ZSghMSl9KSwhMCl9KSkpfWJhY2tlbmRVcmwoZSl7cmV0dXJuIGZ1bmN0aW9uKGUsdD1lKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lLmxlbmd0aD4xP2Ake1RzKCl9L2dsb2JhbC9gOmAke1RzKCl9LyR7dFswXX0vYDpgJHtUcygpfS8ke3R9L2B9KHRoaXMubWFya2V0cyxlKX1vbkxvZ2luU3RhdGVDaGFuZ2UoZSl7ZXx8dGhpcy5nZXRVc2VyU2V0dGluZ3MoKS50aGVuKCgoKT0+dGhpcy5hcHBseUZpZWxkU2V0KHRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSwhMCkpKS50aGVuKCgoKT0+dGhpcy5zZXRNYXJrZXQodGhpcy5tYXJrZXRzLCEwLCEwKSkpLnRoZW4oKCgpPT50aGlzLl92aWV3LnVwZGF0ZU1hcmtldEJ1dHRvbigpKSl9c2hvd05vdGljZUlmTm9GaWx0ZXJzKGUpe2xldCB0O2lmKGUpe2NvbnN0IG89dGhpcy5nZXRGaWx0ZXJTZXRCeUlkKGUpO3Q9byYmby5jb250ZW50fWVsc2UgdD10aGlzLmN1cnJlbnRGaWx0ZXJTdGF0ZSgpCjtyZXR1cm4oIXR8fCFPYmplY3Qua2V5cyh0LmZpbHRlcnN8fHt9KS5sZW5ndGgpJiYodGhpcy5fdmlldy5wb3B1cHMuc2hvd05vdGljZShvLmkxOG5leHQobnVsbCx2b2lkIDAsbygxNjA4MikpLG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDUxOTQ3NCkpKSwhMCl9YmluZFNjcm9sbFRvQm90dG9tKGUpe2NvbnN0IHQ9KCk9Pnt0aGlzLmxvYWRpbmd8fHRoaXMudXBkYXRlKG51bGwsITApfSxvPSgpPT57VnMod2luZG93KS5iaW5kKCJzY3JvbGx0byIse3RvOiJib3R0b20iLHRvbGVyYW5jZTplfSx0KSx0aGlzLmxvYWRpbmdDb21wbGV0ZS51bnN1YnNjcmliZShudWxsLG8pfTt0aGlzLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCxvKX1nZXQgaXNGYXN0UmVmcmVzaCgpe3JldHVyblsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpfWdldCByZWZyZXNoSW50ZXJ2YWwoKXtpZih0aGlzLmlzRmFzdFJlZnJlc2gmJiF0aGlzLl9icmlkZ2Uub25XaWRnZXQpe2lmKHRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzKXJldHVybiAxMDtpZighd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQpcmV0dXJuLTE7Y29uc3QgZT10aGlzLnNldHRpbmdzU2F2ZXIuZ2V0SW50KHRoaXMuc2V0dGluZ0tleSsiLnJlZnJlc2hJbnRlcnZhbCIsLTEpfHwtMTtyZXR1cm4gMT09PWU/MTA6ZX1yZXR1cm4gd2luZG93LnVzZXImJndpbmRvdy51c2VyLmlzX3BybyYmdGhpcy5zZXR0aW5nc1NhdmVyLmdldEludCh0aGlzLnNldHRpbmdLZXkrIi5yZWZyZXNoSW50ZXJ2YWwiLC0xKXx8LTF9c2V0IHJlZnJlc2hJbnRlcnZhbChlKXt0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUodGhpcy5zZXR0aW5nS2V5KyIucmVmcmVzaEludGVydmFsIixlLHtmb3JjZUZsdXNoOiEwfSksdGhpcy5fdmlldy5yZXNldFJlZnJlc2hDb3VudGVyKCksLTEhPT1lJiZ0aGlzLnRyYWNrRXZlbnQoIlNldCByZWZyZXNoIGludGVydmFsIil9Z2V0IHZpZXcoKXtyZXR1cm4gdGhpcy5fdmlld31nZXQgc2VhcmNoRmllbGQoKXtyZXR1cm4ic2VjdG9yIj09PXRoaXMuc2NyZWVuZXJfdHlwZXx8ImluZHVzdHJ5Ij09PXRoaXMuc2NyZWVuZXJfdHlwZT8iZGVzY3JpcHRpb24iOiJjcnlwdG9fbWt0Ij09PXRoaXMuc2NyZWVuZXJfdHlwZT8ic2VjdG9yIjoibmFtZSJ9Z2V0IHNjcmVlbmVyVHlwZSgpe3JldHVybiB0aGlzLnNjcmVlbmVyX3R5cGV9Z2V0IHNjcmVlbmVyQnJpZGdlKCl7cmV0dXJuIHRoaXMuX2JyaWRnZX1hcHBseVN3aXRjaChlKXtpZihkZWxldGUgdGhpcy5fYnJpZGdlLnNjcmVlbmVyX2ZpZWxkX21hdGNoLCJjcnlwdG9fbWt0Ij09PXRoaXMuc2NyZWVuZXJfdHlwZSl0aGlzLnN3aXRjaEZpbHRlcj17bGVmdDoibmFtZSIsb3BlcmF0aW9uOiJtYXRjaCIscmlnaHQ6ZSsiJCJ9O2Vsc2UgaWYoImJvbmRzIj09PXRoaXMuc2NyZWVuZXJfdHlwZSl7dGhpcy5zd2l0Y2hGaWx0ZXI9e2xlZnQ6ImRlc2NyaXB0aW9uIixvcGVyYXRpb246InlpZWxkcyI9PT1lPyJtYXRjaCI6Im5tYXRjaCIscmlnaHQ6IllJRUxEJCJ9O2NvbnN0IHQ9InlpZWxkcyI9PT1lP28uaTE4bmV4dChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzU0NikpOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDgyMDg2NikpO0l0LmNsb3NlLnRpdGxlPXQsSXQuY2xvc2Uuc2hvcnRUaXRsZT10LHRoaXMuX3ZpZXcudGFibGUuc2V0Q29sdW1uVGl0bGUoImNsb3NlIix0KX10aGlzLnVwZGF0ZSgpfWhhc01hcmtlZFN5bWJvbHMoKXtyZXR1cm4oMCxfby5pc0ZlYXR1cmVzZXRFbmFibGVkKSgibWFya2VkX3N5bWJvbHMiKSYmIXRoaXMuX2JyaWRnZS5tYXJrZWRfc3ltYm9sc19kaXNhYmxlZH1fc2NyZWVuZXJTdWJ0eXBlKCl7cmV0dXJuIHRoaXMuX2JyaWRnZS5zY3JlZW5lcl9zdWJ0eXBlfHwiIn1fYnVpbGRSZXF1ZXN0RGF0YShlKXtpZigiZ2xvYmFsIj09PXRoaXMubWFya2V0c1swXSl7Y29uc3QgdD1KU09OLnBhcnNlKGUpO3JldHVybiBkZWxldGUgdC5tYXJrZXRzLEpTT04uc3RyaW5naWZ5KHQpfXJldHVybiBlfV9zZW5kU2NhblJlcXVlc3QoZSx0KXtjb25zdCBvPXt0eXBlOiJQT1NUIix1cmw6dGhpcy5fZ2V0U2NhblVybCgic2NhbiIpLGRhdGE6dGhpcy5fYnVpbGRSZXF1ZXN0RGF0YShlKSxzdWNjZXNzOnQsZGF0YVR5cGU6InRleHQiLHhockZpZWxkczp7d2l0aENyZWRlbnRpYWxzOiFCb29sZWFuKHRoaXMuX2JyaWRnZS5vbldpZGdldCl9fTtyZXR1cm4gVnMuYWpheChvKX1fZ2V0RmlsdGVyZWRFeGNoYW5nZXNGb3JXaWRnZXQoZSl7cmV0dXJuIGUuZmlsdGVyKChlPT4hdGhpcy5fYnJpZGdlLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzLmluY2x1ZGVzKGUpKSl9X2dldFNjYW5VcmwoZSl7Y29uc3QgdD1uZXcgVVJMKHRoaXMuYmFja2VuZFVybCgpK2UpLG89d2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiO3JldHVybiBvJiZxc1tvXT90LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFwaV9rZXkiLHFzW29dKTooMCxBbi5pc0V4dGVybmFsV2lkZ2V0KSh0aGlzLl9icmlkZ2UpJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFwaV9rZXkiLCJ3aWRnZXRfdXNlcl90b2tlbiIpLHQuc2VhcmNoUGFyYW1zLmFwcGVuZCgibGFiZWwtcHJvZHVjdCIsKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSk/YHVuZGVyY2hhcnQtc2NyZWVuZXItJHt0aGlzLnNjcmVlbmVyX3R5cGV9YDpgc2NyZWVuZXItJHt0aGlzLnNjcmVlbmVyX3R5cGV9LW9sZGApLHQudG9TdHJpbmcoKX19KGRhKX0sMTg5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTaWRlYmFyQ3VzdG9tU2Nyb2xsOigpPT51fSk7dmFyIGk9bygzNjMyNjkpLG49byg5NDgzODApLHI9byg0NTk0ODgpLHM9bygzMTQ3MjApLGE9bygzNDI3OCksbD1vKDc4MDM3NCk7Y29uc3QgYz1bKCk9Pm5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoIldpbiIpJiZuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCJDaHJvbWUiKT8xL3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvOjEsKCk9PjE2LChlPSgpPT4wKT0+LjgqKGUoKT8/MCldO28oMTEyNjEzKTt2YXIgZD1vKDYyNTQxMSkKO2NvbnN0IGg9e2hlYWRlckhlaWdodDowLGFkZGl0aW9uYWxDbGFzczoiIixhbHdheXNWaXNpYmxlOiExLHNob3dCb3R0b21TaGFkb3c6ITAsc2Nyb2xsTWFyZ2luVG9wOjEsYnViYmxlU2Nyb2xsRXZlbnQ6ITF9O2NsYXNzIHV7Y29uc3RydWN0b3IoZSx0LG89e30pe2lmKHRoaXMuc2Nyb2xsZWQ9bmV3IG4uRGVsZWdhdGUsdGhpcy5zY3JvbGx0b2VuZD1uZXcgbi5EZWxlZ2F0ZSx0aGlzLnNjcm9sbHRvc3RhcnQ9bmV3IG4uRGVsZWdhdGUsdGhpcy52aXNpYmlsaXR5Q2FsbGJhY2tzPVtdLHRoaXMuX3Njcm9sbFRhcmdldFRvcD0wLHRoaXMuX3Njcm9sbFNwZWVkPTQwLHRoaXMuX3NoYWRvd09mZnNldD0xMCx0aGlzLl9zaGFkb3dUb3A9bnVsbCx0aGlzLl9zaGFkb3dCb3R0b209bnVsbCx0aGlzLl9kcmFnSW5pdGlhbGl6ZWQ9ITEsdGhpcy5fZHJhZ2dpbmc9ITEsdGhpcy5fZHJhZ2dhYmxlPW51bGwsdGhpcy5fYXRTdGFydD0hMSx0aGlzLl9hdEVuZD0hMSx0aGlzLl9zdGlja3lCb3R0b209bnVsbCx0aGlzLl9hbmltYXRpb249bnVsbCx0aGlzLl9zYXZlZD1udWxsLHRoaXMuX29wdGlvbnM9ey4uLmgsLi4ub30sdGhpcy5fd3JhcHBlcj1lLHRoaXMuX3dyYXBwZXIuY2xhc3NMaXN0LmFkZChkLndyYXBwZXIpLHRoaXMuX2NvbnRlbnQ9dCx0aGlzLl9oZWFkZXJIZWlnaHQ9dGhpcy5fb3B0aW9ucy5oZWFkZXJIZWlnaHQsdGhpcy5fc2Nyb2xsTWFyZ2luVG9wPXRoaXMuX29wdGlvbnMuc2Nyb2xsTWFyZ2luVG9wLHRoaXMuX3Njcm9sbEJhcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9zY3JvbGxCYXIuY2xhc3NMaXN0LmFkZCgic2Itc2Nyb2xsYmFyIiwic2Itc2Nyb2xsYmFyLWJvZHkiKSx0aGlzLl9vcHRpb25zLmFkZGl0aW9uYWxDbGFzcyYmdGhpcy5fc2Nyb2xsQmFyLmNsYXNzTGlzdC5hZGQodGhpcy5fb3B0aW9ucy5hZGRpdGlvbmFsQ2xhc3MpLHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUtYWx3YXlzIix0aGlzLl9vcHRpb25zLmFsd2F5c1Zpc2libGUpLHRoaXMuX3Njcm9sbEJhcldyYXBwZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fc2Nyb2xsQmFyV3JhcHBlci5jbGFzc0xpc3QuYWRkKCJzYi1zY3JvbGxiYXItd3JhcCIpLHRoaXMuX3RvdWNoPWkudG91Y2gsdGhpcy5fdG91Y2gpcmV0dXJuIHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIix0aGlzLl93cmFwcGVyLmNsYXNzTGlzdC5hZGQoZC50b3VjaCksdm9pZCB0aGlzLl93cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsKCgpPT50aGlzLl9vblNjcm9sbCgpKSk7dGhpcy5fd3JhcHBlci5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIix0aGlzLl91bnN1YnNjcmliZT0oKCk9Pntjb25zdCBlPSgpPT57dGhpcy5fZHJhZ2dpbmd8fCh0aGlzLl9vcHRpb25zLmFsd2F5c1Zpc2libGV8fHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSx0aGlzLl9vblNjcm9sbCgpKX0sdD0oKT0+e3RoaXMuX2RyYWdnaW5nfHwodGhpcy5fb3B0aW9ucy5hbHdheXNWaXNpYmxlfHx0aGlzLl9zY3JvbGxCYXIuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksdGhpcy5fb25TY3JvbGwoKSl9LG89ZT0+e2NvbnN0IHQ9ZS50YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9lLnRhcmdldDpudWxsO2lmKCghISF0Py5jbG9zZXN0KCIuaWdub3JlLWhvcml6b250YWwtc2Nyb2xsIil8fGUuZGVsdGFZKSYmIWUuZGVmYXVsdFByZXZlbnRlZCl7Y29uc3QgdD1mdW5jdGlvbihlLHQ9KCk9Pih7fSkpe3JldHVybnt4OmUuZGVsdGFYKmNbZS5kZWx0YU1vZGVdKCgoKT0+dCgpLndpZHRoKSkseTplLmRlbHRhWSpjW2UuZGVsdGFNb2RlXSgoKCk9PnQoKS5oZWlnaHQpKX19KGUsKCgpPT4oe2hlaWdodDp0aGlzLl93cmFwcGVyLmNsaWVudEhlaWdodH0pKSkueTt0aGlzLnNjcm9sbCgtdCwxKXx8KGUuc3RvcFByb3BhZ2F0aW9uKCksZS5wcmV2ZW50RGVmYXVsdCgpKX19O3JldHVybiB0aGlzLl93cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGUpLHRoaXMuX3dyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdCksdGhpcy5fd3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsbyksKCk9Pnt0aGlzLl93cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGUpLHRoaXMuX3dyYXBwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdCksdGhpcy5fd3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsbyl9fSkoKSwhMSE9PXRoaXMuX29wdGlvbnMuc2hvd1RvcFNoYWRvdyYmKHRoaXMuX3NoYWRvd1RvcD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9zaGFkb3dUb3AuY2xhc3NMaXN0LmFkZCgic2ItaW5uZXItc2hhZG93IiwidG9wIiwiaS1pbnZpc2libGUiKSx0aGlzLl93cmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuX3NoYWRvd1RvcCkpLCExIT09dGhpcy5fb3B0aW9ucy5zaG93Qm90dG9tU2hhZG93JiYodGhpcy5fc2hhZG93Qm90dG9tPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3NoYWRvd0JvdHRvbS5jbGFzc0xpc3QuYWRkKCJzYi1pbm5lci1zaGFkb3ciKSx0aGlzLl93cmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuX3NoYWRvd0JvdHRvbSkpLHRoaXMuX3NoYWRvd1RvcCYmdGhpcy5faGVhZGVySGVpZ2h0JiYodGhpcy5fc2hhZG93VG9wLnN0eWxlLnRvcD10aGlzLl9oZWFkZXJIZWlnaHQtdGhpcy5fc2hhZG93T2Zmc2V0KyJweCIpLHRoaXMuX3dyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5fc2Nyb2xsQmFyV3JhcHBlciksdGhpcy5fc2Nyb2xsQmFyV3JhcHBlci5hcHBlbmRDaGlsZCh0aGlzLl9zY3JvbGxCYXIpLHRoaXMuX29uU2Nyb2xsKCl9aXNUb3VjaCgpe3JldHVybiB0aGlzLl90b3VjaH1nZXRTY3JvbGxCYXIoKXtyZXR1cm4gdGhpcy5fc2Nyb2xsQmFyfWluaXREcmFnZ2FibGUoKXtyZXR1cm4gdGhpcy5fZHJhZ0luaXRpYWxpemVkfHwodGhpcy5fZHJhZ2dhYmxlPW5ldyBsLkRyYWdnYWJsZSh7YXhpczoieSIsCnNvdXJjZTp0aGlzLl9zY3JvbGxCYXIsY29udGFpbm1lbnQ6dGhpcy5fc2Nyb2xsQmFyV3JhcHBlcixzdGFydDooKT0+e3RoaXMuX2RyYWdnaW5nPSEwfSxzdG9wOigpPT57dGhpcy5fZHJhZ2dpbmc9ITF9LGRyYWc6KCk9Pnt0aGlzLnVwZGF0ZVNjcm9sbCgpfX0pLHRoaXMuX2RyYWdJbml0aWFsaXplZD0hMCksdGhpc311cGRhdGVTY3JvbGwoKXtpZih0aGlzLl90b3VjaClyZXR1cm4gdGhpcztjb25zdCBlPU1hdGguY2VpbCgoMCxyLnBvc2l0aW9uKSh0aGlzLl9zY3JvbGxCYXIpLnRvcC10aGlzLl9zY3JvbGxNYXJnaW5Ub3AtdGhpcy5faGVhZGVySGVpZ2h0KSx0PXRoaXMuZ2V0Q29udGFpbmVySGVpZ2h0V2l0aG91dEhlYWRlcigpLG89KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCksaT1vLXQtMTtyZXR1cm4gdDw9MHx8KHRoaXMuX3Njcm9sbFRhcmdldFRvcD1pPD0wP3RoaXMuX2hlYWRlckhlaWdodDpNYXRoLm1pbigtZSpvL3QrdGhpcy5faGVhZGVySGVpZ2h0LHRoaXMuX2hlYWRlckhlaWdodCksZSsoMCxzLmNvbnRlbnRIZWlnaHQpKHRoaXMuX3Njcm9sbEJhcikrMj49dD90aGlzLnNjcm9sbFRvRW5kKCk6KHRoaXMuX2NvbnRlbnQuc3R5bGUudG9wPXRoaXMuX3Njcm9sbFRhcmdldFRvcCsicHgiLHRoaXMuX29uU2Nyb2xsKCkpKSx0aGlzfWdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKXtyZXR1cm4gdGhpcy5fd3JhcHBlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQtdGhpcy5faGVhZGVySGVpZ2h0fWdldENvbnRhaW5lckhlaWdodCgpe3JldHVybiB0aGlzLl93cmFwcGVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodH1nZXRDb250ZW50SGVpZ2h0KCl7cmV0dXJuIHRoaXMuX2NvbnRlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0fXVwZGF0ZVNjcm9sbEJhcigpe2lmKHRoaXMuX3RvdWNoKXJldHVybiB0aGlzO2NvbnN0IGU9KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLHQ9dGhpcy5nZXRDb250ZW50SGVpZ2h0KCksbz10aGlzLmdldENvbnRhaW5lckhlaWdodCgpLGk9dGhpcy5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCksbj0xK3RoaXMuX2hlYWRlckhlaWdodCxzPWktMixhPShNYXRoLmFicyhlKS10aGlzLl9oZWFkZXJIZWlnaHQpKnMvdCxsPW8qby90O3JldHVybiB0aGlzLmlzQ29udGVudFNob3J0KCk/KHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QuYWRkKCJqcy1oaWRkZW4iKSx0aGlzLl93cmFwcGVyLmNsYXNzTGlzdC5yZW1vdmUoInNiLXNjcm9sbC1hY3RpdmUiKSk6KHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QucmVtb3ZlKCJqcy1oaWRkZW4iKSx0aGlzLl9zY3JvbGxCYXIuc3R5bGUuaGVpZ2h0PWwrInB4Iix0aGlzLl9zY3JvbGxCYXIuc3R5bGUudG9wPW4rYSsicHgiLHRoaXMuX3dyYXBwZXIuY2xhc3NMaXN0LmFkZCgic2Itc2Nyb2xsLWFjdGl2ZSIpLHRoaXMuaW5pdERyYWdnYWJsZSgpKSx0aGlzfXNjcm9sbChlLHQpe2NvbnN0IG89KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLGk9KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCktdGhpcy5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCktMSxuPXR8fHRoaXMuX3Njcm9sbFNwZWVkO3JldHVybiBpPD0wfHwodGhpcy5fc2Nyb2xsVGFyZ2V0VG9wPU1hdGgubWF4KC1pK3RoaXMuX2hlYWRlckhlaWdodCxNYXRoLm1pbih0aGlzLl9oZWFkZXJIZWlnaHQsbytlKm4pKSx0aGlzLnNldENvbnRlbnRUb3AodGhpcy5fc2Nyb2xsVGFyZ2V0VG9wKSx0aGlzLl9vblNjcm9sbCgpKX1hbmltYXRlVG8oZSl7aWYodGhpcy5fdG91Y2gpcmV0dXJuIHRoaXM7Y29uc3QgdD0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KS10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKS0xO2lmKHQ8PTApcmV0dXJuITA7dGhpcy5fc2Nyb2xsVGFyZ2V0VG9wPU1hdGgubWF4KC10K3RoaXMuX2hlYWRlckhlaWdodCxNYXRoLm1pbih0aGlzLl9oZWFkZXJIZWlnaHQsLWUpKSx0aGlzLl9hbmltYXRpb24mJnRoaXMuX2FuaW1hdGlvbi5zdG9wKCksdGhpcy5fYW5pbWF0aW9uPSgwLGEuZG9BbmltYXRlKSh7ZHVyYXRpb246NTAwLGZyb206cGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRlbnQpLnRvcCksdG86dGhpcy5fc2Nyb2xsVGFyZ2V0VG9wLG9uU3RlcDooZSx0KT0+e3RoaXMuX2NvbnRlbnQuc3R5bGUudG9wPXQrInB4In0sb25Db21wbGV0ZTooKT0+e3RoaXMuX29uU2Nyb2xsKCl9fSl9cmVzaXplKCl7Y29uc3QgZT0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KSx0PSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX3dyYXBwZXIpOyF0aGlzLl9vcHRpb25zLnZBbGlnbkJvdHRvbSYmZTx0P3RoaXMuYXRTdGFydCgpfHx0aGlzLnNjcm9sbFRvU3RhcnQoKTp0aGlzLmF0RW5kKCk/dGhpcy5zY3JvbGxUb0VuZCgpOiJudW1iZXIiPT10eXBlb2YgdGhpcy5fc3RpY2t5Qm90dG9tJiZ0aGlzLnNldENvbnRlbnRUb3AoTWF0aC5taW4oMCx0aGlzLl9zdGlja3lCb3R0b20rKDAscy5vdXRlckhlaWdodCkodGhpcy5fd3JhcHBlciktKDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCkpKX1yZXNpemVIZWFkZXIoZSl7Y29uc3QgdD1lLXRoaXMuX2hlYWRlckhlaWdodDt0aGlzLl9oZWFkZXJIZWlnaHQ9ZSx0aGlzLl9zY3JvbGxUYXJnZXRUb3ArPXQsdGhpcy5fc2hhZG93VG9wJiYodGhpcy5fc2hhZG93VG9wLnN0eWxlLnRvcD10aGlzLl9oZWFkZXJIZWlnaHQtdGhpcy5fc2hhZG93T2Zmc2V0KyJweCIpLHRoaXMucmVzaXplKCl9c2Nyb2xsVG8oZSx0KXtjb25zdCBvPXtwb3NpdGlvbjoidmlzaWJsZSIsYXJlYUhlaWdodDplIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/KDAscy5jb250ZW50SGVpZ2h0KShlKTowLC4uLnR9O2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmKGU9by5vZmZzZXRUb3B8fCgwLHIucG9zaXRpb24pKGUpLnRvcCk7Y29uc3QgaT0oMCwKci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLG49dGhpcy5fY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQsYT10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKTtpZihuLWEtMTw9MClyZXR1cm4hMDtjb25zdCBsPS0xKihpLXRoaXMuX2hlYWRlckhlaWdodCksYz1sK2E7bGV0IGQ9MDtpZigidmlzaWJsZSI9PT1vLnBvc2l0aW9uKXtpZihlPmwmJmUrby5hcmVhSGVpZ2h0PGMpcmV0dXJuITE7ZD1lK28uYXJlYUhlaWdodD5jP2MtZS1vLmFyZWFIZWlnaHQ6bC1lfWVsc2UidG9wIj09PW8ucG9zaXRpb24mJihkPWwtZSk7cmV0dXJuIHRoaXMuc2Nyb2xsKGQsMSksdGhpcy5fb25TY3JvbGwoKSwhMX1zY3JvbGxUb0VuZCgpe2NvbnN0IGU9KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLHQ9KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCksbz0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKSxpPXQ+bz9lKyhvLSh0K2UpKSsxOjE7cmV0dXJuIHRoaXMuc2V0Q29udGVudFRvcChpKSx0aGlzLl9vblNjcm9sbCgpLHRoaXN9c2Nyb2xsVG9TdGFydCgpe3JldHVybiB0aGlzLnNldENvbnRlbnRUb3AodGhpcy5faGVhZGVySGVpZ2h0KSx0aGlzLl9vblNjcm9sbCgpLHRoaXN9Y3VycmVudFBvc2l0aW9uKCl7cmV0dXJuIE1hdGgucm91bmQoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKX1hdFN0YXJ0KCl7cmV0dXJuIE1hdGgucm91bmQoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKT49dGhpcy5faGVhZGVySGVpZ2h0fWF0RW5kKGUpeyJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSl8fChlPTApO2NvbnN0IHQ9TWF0aC5yb3VuZCgoMCxyLnBvc2l0aW9uKSh0aGlzLl9jb250ZW50KS50b3ApLG89TWF0aC5mbG9vcigoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KSksaT1NYXRoLmZsb29yKCgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX3dyYXBwZXIpKTtyZXR1cm4gby1NYXRoLmFicyh0KS0xPD1pK2V9Y2hlY2tDb250ZW50VmlzaWJpbGl0eSgpe3RoaXMuX29uQ29udGVudFZpc2libGUoKX1zdWJzY3JpYmVUb0NvbnRlbnRWaXNpYmxlKGUsdCxvKXt0aGlzLnZpc2liaWxpdHlDYWxsYmFja3MucHVzaCh7aWQ6ZSxlbGVtZW50OnQsY2FsbGJhY2s6b30pfXRyaWdnZXJWaXNpYmlsaXR5Q2FsbGJhY2tzKGUpe3RoaXMuX29uQ29udGVudFZpc2libGUoZSl9c2F2ZSgpe3JldHVybiB0aGlzLl9zYXZlZD17dG9wOigwLHIucG9zaXRpb24pKHRoaXMuX2NvbnRlbnQpLnRvcCxoZWlnaHQ6KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCl9LHRoaXN9cmVzdG9yZSgpe2lmKHRoaXMuX3NhdmVkKXtpZih0aGlzLl9zYXZlZC50b3A9PT0oMCxyLnBvc2l0aW9uKSh0aGlzLl9jb250ZW50KS50b3AmJnRoaXMuX3NhdmVkLmhlaWdodD09PSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX2NvbnRlbnQpKXJldHVybiB0aGlzLl9zYXZlZD1udWxsLHRoaXM7dGhpcy5fb3B0aW9ucy52QWxpZ25Cb3R0b20mJih0aGlzLl9zYXZlZC50b3AtPSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX2NvbnRlbnQpLXRoaXMuX3NhdmVkLmhlaWdodCx0aGlzLl9zYXZlZC50b3A+dGhpcy5faGVhZGVySGVpZ2h0JiYodGhpcy5fc2F2ZWQudG9wPXRoaXMuX2hlYWRlckhlaWdodCkpLHRoaXMuc2V0Q29udGVudFRvcCh0aGlzLl9zYXZlZC50b3ApLHRoaXMuX3NhdmVkPW51bGwsdGhpcy5fb25TY3JvbGwoITApfXJldHVybiB0aGlzfXNldENvbnRlbnRUb3AoZSl7cmV0dXJuIHRoaXMuX3RvdWNoP3RoaXMuX29wdGlvbnMudkFsaWduQm90dG9tJiYoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KTwoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKT8odGhpcy5fd3JhcHBlci5zdHlsZS5vdmVyZmxvd1k9InZpc2libGUiLHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249ImFic29sdXRlIix0aGlzLl9jb250ZW50LnN0eWxlLmJvdHRvbT0iMHB4Iik6KHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIix0aGlzLl9jb250ZW50LnN0eWxlLnBvc2l0aW9uPSJhdXRvIix0aGlzLl93cmFwcGVyLnN0eWxlLm92ZXJmbG93WT0iYXV0byIsdGhpcy5fd3JhcHBlci5zY3JvbGxUb3A9LWUpOnRoaXMuX2NvbnRlbnQuc3R5bGUudG9wPWUrInB4Iix0aGlzfWlzQ29udGVudFNob3J0KCl7cmV0dXJuIHRoaXMuZ2V0Q29udGVudEhlaWdodCgpPD10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKX1kZXN0cm95KCl7dGhpcy5fYW5pbWF0aW9uJiZ0aGlzLl9hbmltYXRpb24uc3RvcCgpLHRoaXMuX3Njcm9sbEJhcldyYXBwZXImJnRoaXMuX3Njcm9sbEJhcldyYXBwZXIucmVtb3ZlKCksdGhpcy5fc2hhZG93Qm90dG9tJiZ0aGlzLl9zaGFkb3dCb3R0b20ucmVtb3ZlKCksdGhpcy5fc2hhZG93VG9wJiZ0aGlzLl9zaGFkb3dUb3AucmVtb3ZlKCksdGhpcy5fZHJhZ2dhYmxlJiYodGhpcy5fZHJhZ2dhYmxlLmRlc3Ryb3koKSx0aGlzLl9kcmFnZ2FibGU9bnVsbCksdGhpcy5fY29udGVudC5zdHlsZS5jc3NUZXh0PSIiLHRoaXMuX3dyYXBwZXIuc3R5bGUuY3NzVGV4dD0iIix0aGlzLl91bnN1YnNjcmliZT8uKCl9X29uU2Nyb2xsKGUpe3RoaXMuX3RvdWNofHwodGhpcy5fY29udGVudC5zdHlsZS5ib3R0b209ImF1dG8iKSx0aGlzLnNjcm9sbGVkLmZpcmUoKSx0aGlzLl9kcmFnZ2luZyYmITAhPT1lfHx0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO2NvbnN0IHQ9dGhpcy5hdFN0YXJ0KCksbz10aGlzLmF0RW5kKCk7cmV0dXJuIHRoaXMuX3NoYWRvd1RvcCYmdGhpcy5fc2hhZG93VG9wLmNsYXNzTGlzdC50b2dnbGUoImktaW52aXNpYmxlIiwhIXQpLHRoaXMuX3NoYWRvd0JvdHRvbSYmdGhpcy5fc2hhZG93Qm90dG9tLmNsYXNzTGlzdC50b2dnbGUoImktaW52aXNpYmxlIiwhIW8pLHRoaXMuX29uQ29udGVudFZpc2libGUoKSwhdGhpcy5fYXRTdGFydCYmdD8odGhpcy5fYXRTdGFydD0hMCx0aGlzLnNjcm9sbHRvc3RhcnQuZmlyZSgpKTp0aGlzLl9hdFN0YXJ0JiYhdCYmKHRoaXMuX2F0U3RhcnQ9ITEpLAohdGhpcy5fYXRFbmQmJm8/KHRoaXMuX2F0RW5kPSEwLHRoaXMuc2Nyb2xsdG9lbmQuZmlyZSgpKTp0aGlzLl9hdEVuZCYmIW8mJih0aGlzLl9hdEVuZD0hMSksdGhpcy5fb3B0aW9ucy52QWxpZ25Cb3R0b20mJih0aGlzLl9zdGlja3lCb3R0b209KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCktTWF0aC5hYnMoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKS0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKSksKHRoaXMuX2F0U3RhcnR8fHRoaXMuX2F0RW5kKSYmKCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmJ1YmJsZVNjcm9sbEV2ZW50P0Jvb2xlYW4odGhpcy5fb3B0aW9ucy5idWJibGVTY3JvbGxFdmVudCgpKTpCb29sZWFuKHRoaXMuX29wdGlvbnMuYnViYmxlU2Nyb2xsRXZlbnQpKX1fY29udGVudElzVmlzaWJsZShlKXtyZXR1cm4oMCxyLnBvc2l0aW9uKShlLmVsZW1lbnQpLnRvcD4tMSp0aGlzLmN1cnJlbnRQb3NpdGlvbigpfV9vbkNvbnRlbnRWaXNpYmxlKGUpe2lmKCF0aGlzLnZpc2liaWxpdHlDYWxsYmFja3MubGVuZ3RoKXJldHVybjtjb25zdCB0PWV8fHRoaXMuX2NvbnRlbnRJc1Zpc2libGUuYmluZCh0aGlzKSxvPVtdLGk9dGhpcy52aXNpYmlsaXR5Q2FsbGJhY2tzLmZpbHRlcigoKGUsaSk9PntpZighdGhpcy5fY29udGVudC5jb250YWlucyhlLmVsZW1lbnQpKXJldHVybiExO2NvbnN0IG49dChlKTtyZXR1cm4gbiYmby5wdXNoKGkpLCFufSkpO28uZm9yRWFjaCgodD0+e3RoaXMudmlzaWJpbGl0eUNhbGxiYWNrc1t0XS5jYWxsYmFjayghIWUpfSkpLHRoaXMudmlzaWJpbGl0eUNhbGxiYWNrcz1pfX19LDcwMTUwNihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHthbGxDaGFydFN0eWxlczooKT0+cn0pO3ZhciBpPW8oOTMwMjMxKTtjb25zdCBuPSgwLG8oMzE4OTc0KS5vbldpZGdldCkoKTtmdW5jdGlvbiByKCl7cmV0dXJuIGZ1bmN0aW9uKCl7Y29uc3QgZT1bMCwxLDksMTMsMiwxNCwxNSwzLDE2LDEwXTtyZXR1cm4gZS5wdXNoKDEyKSxufHxlLnB1c2goMTcpLG58fGUucHVzaCgxOCksbnx8ZS5wdXNoKDIwKSxufHxlLnB1c2goMTkpLGV9KCkuY29uY2F0KGZ1bmN0aW9uKCl7Y29uc3QgZT1bOF07cmV0dXJuKDAsaS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgiamFwYW5lc2VfY2hhcnRfc3R5bGVzIikmJihlLnB1c2goNCw3LDUsNiksZS5wdXNoKDExKSksZX0oKSl9fSwzMTQ5MTQoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1vKDg1Mjk4MCksbj1vKDkzMDIzMSk7Y29uc3Qgcj0oMCxuLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJwYXlfYXR0ZW50aW9uX3RvX3RpY2tlcl9ub3Rfc3ltYm9sIikscz0oMCxuLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJjaGFydGluZ19saWJyYXJ5X3NpbmdsZV9zeW1ib2xfcmVxdWVzdCIpLGE9KDAsbi5pc0ZlYXR1cmVzZXRFbmFibGVkKSgidXNlX3RpY2tlcl9vbl9zeW1ib2xfaW5mb191cGRhdGUiKSxsPSgwLG4uaXNGZWF0dXJlc2V0RW5hYmxlZCkoInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIik7aS5leHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvLmJpbmQobnVsbCx7cGF5QXR0ZW50aW9uVG9UaWNrZXJOb3RTeW1ib2w6cixjaGFydGluZ0xpYnJhcnlTaW5nbGVTeW1ib2xSZXF1ZXN0OnMsdXNlVGlja2VyT25TeW1ib2xJbmZvVXBkYXRlOmEsdXBwZXJjYXNlSW5zdHJ1bWVudE5hbWVzOmx9KX0sNTgwMzcoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuOyFmdW5jdGlvbihlKXtlW2UuT2ZmbGluZT0wXT0iT2ZmbGluZSIsZVtlLlJlc29sdmluZz0xXT0iUmVzb2x2aW5nIixlW2UuTG9hZGluZz0yXT0iTG9hZGluZyIsZVtlLlJlYWR5PTNdPSJSZWFkeSIsZVtlLkludmFsaWRTeW1ib2w9NF09IkludmFsaWRTeW1ib2wiLGVbZS5TbmFwc2hvdD01XT0iU25hcHNob3QiLGVbZS5FT0Q9Nl09IkVPRCIsZVtlLlB1bHNlPTddPSJQdWxzZSIsZVtlLkRlbGF5ZWQ9OF09IkRlbGF5ZWQiLGVbZS5EZWxheWVkU3RlYW1pbmc9OV09IkRlbGF5ZWRTdGVhbWluZyIsZVtlLk5vQmFycz0xMF09Ik5vQmFycyIsZVtlLlJlcGxheT0xMV09IlJlcGxheSIsZVtlLkVycm9yPTEyXT0iRXJyb3IiLGVbZS5DYWxjdWxhdGlvbkVycm9yPTEzXT0iQ2FsY3VsYXRpb25FcnJvciIsZVtlLlVuc3VwcG9ydGVkUmVzb2x1dGlvbj0xNF09IlVuc3VwcG9ydGVkUmVzb2x1dGlvbiJ9KGl8fChpPXt9KSksZnVuY3Rpb24oZSl7ZVtlLk1hcmtlcnM9MF09Ik1hcmtlcnMiLGVbZS5TdGVwbGluZT0xXT0iU3RlcGxpbmUiLGVbZS5TaW1wbGU9Ml09IlNpbXBsZSJ9KG58fChuPXt9KSl9LDEyODk5OChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtjcmVhdGVTZXJpZXNGb3JtYXR0ZXI6KCk9PmgsaXNDbG9zZUJhc2VkU3ltYm9sOigpPT5fLGlzSExDQmFzZWRTdHlsZTooKT0+ZCxpc1JlZ3VsYXJTZXNzaW9uSWQ6KCk9PnUsaXNTaW5nbGVWYWx1ZUJhc2VkU3R5bGU6KCk9PmN9KTtvKDE4NTI3MSk7dmFyIGk9byg5MzAyMzEpLG49KG8oOTMwNTY2KSxvKDMxODk3NCksbygxNTY4MjkpKSxyPShvKDc5ODM4KSxvKDc1NTYyNykpLHM9byg5ODQzNzYpLGE9bygxMjUyMTgpO28oMzE0OTE0KTsoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyIpLCgwLGkuaXNGZWF0dXJlc2V0RW5hYmxlZCkoImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIik7dmFyIGw7IWZ1bmN0aW9uKGUpe2UuTGFzdFVzZWRTdHlsZUtleT0iY2hhcnQubGFzdFVzZWRTdHlsZSIsZS5MYXN0VXNlZFNpbmdsZVZhbHVlQmFzZWRTdHlsZT0iY2hhcnQubGFzdFVzZWRTaW5nbGVWYWx1ZUJhc2VkU3R5bGUiLGUuTGFzdFVzZWRSYXdEYXRhU3R5bGU9ImNoYXJ0LnJhd0RhdGFTdHlsZSIsZS5MYXN0VXNlZE1ldHJpYz0iY2hhcnQubGFzdFVzZWRNZXRyaWMifShsfHwobD17fSkpO2Z1bmN0aW9uIGMoZSl7c3dpdGNoKGUpe2Nhc2UgMzpjYXNlIDEwOmNhc2UgMjpjYXNlIDE0OmNhc2UgMTU6Y2FzZSAxMzpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBkKGUpe3N3aXRjaChlKXtjYXNlIDE2OgpjYXNlIDIxOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGgoZSx0LG89ITEpe2NvbnN0e3ByaWNlU2NhbGU6aSxtaW5Nb3ZlOm4sZnJhY3Rpb25hbDpsLG1pbk1vdmUyOmMsdmFyaWFibGVNaW5UaWNrOmQsbm9FeHBvbmVudGlhbEZvcm06aH09ZnVuY3Rpb24oZSx0PSJkZWZhdWx0IixvPSExKXtsZXQgaSxuLHIscyxhPTEwMCxsPTE7aWYoImRlZmF1bHQiPT09dCludWxsIT1lJiYoKHtwcmljZXNjYWxlOmEsbWlubW92OmwsbWlubW92ZTI6bixmcmFjdGlvbmFsOml9PWUpLHI9ZS52YXJpYWJsZV90aWNrX3NpemV8fHZvaWQgMCk7ZWxzZXtsZXQgZT10LnNwbGl0KCIsIik7MyE9PWUubGVuZ3RoJiYoZT1bIjEwMCIsIjEiLCJmYWxzZSJdKSxhPXBhcnNlSW50KGVbMF0pLGw9cGFyc2VJbnQoZVsxXSksaT0idHJ1ZSI9PT1lWzJdLHM9ITB9cmV0dXJuIG8mJihsPTEpLHtwcmljZVNjYWxlOmEsbWluTW92ZTpsLGZyYWN0aW9uYWw6aSxtaW5Nb3ZlMjpuLHZhcmlhYmxlTWluVGljazpyLGlnbm9yZU1pbk1vdmU6byxub0V4cG9uZW50aWFsRm9ybTpzfX0oZSx0LG8pO2lmKG51bGwhPWUpe2NvbnN0IHI9ZS5mb3JtYXQ7aWYoImRlZmF1bHQiPT09dCYmInZvbHVtZSI9PT1yKXJldHVybiBuZXcgcy5Wb2x1bWVGb3JtYXR0ZXIoe3ByZWNpc2lvbjoyfSk7aWYoInBlcmNlbnQiPT09cilyZXR1cm4gbmV3IGEuUGVyY2VudGFnZUZvcm1hdHRlcih7cHJpY2VTY2FsZTppLG1pbk1vdmU6bixmcmFjdGlvbmFsOmwsbWluTW92ZTI6Yyx2YXJpYWJsZU1pblRpY2s6ZCxpZ25vcmVNaW5Nb3ZlOm99KX1yZXR1cm4gbmV3IHIuUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6aSxtaW5Nb3ZlOm4sZnJhY3Rpb25hbDpsLG1pbk1vdmUyOmMsdmFyaWFibGVNaW5UaWNrOmQsaWdub3JlTWluTW92ZTpvLG5vRXhwb25lbnRpYWxGb3JtOmh9KX1mdW5jdGlvbiB1KGUsdCl7d2luZG93O3JldHVyblsic3RvY2siLCJmdW5kIiwiaW5kZXgiLCJkciJdLmluY2x1ZGVzKHQudHlwZSkmJiJyZWd1bGFyIj09PWV8fCgwLG4uaXNGdXR1cmVzKSh0LnR5cGUpJiYidXNfcmVndWxhciI9PT1lfWZ1bmN0aW9uIF8oZSl7cmV0dXJuImMiPT09ZT8udmlzaWJsZV9wbG90c19zZXR9fSw3Nzc2NjEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3R1ZHlUcG9QcmVyaW9kaWNJZDooKT0+aSxzdHVkeVRwb1Nlc3Npb25zSWQ6KCk9Pm59KTtjb25zdCBpPSJUUE9QZXJpb2RpY0B0di12b2x1bWVieXByaWNlIixuPSJUUE9TZXNzaW9uc0B0di12b2x1bWVieXByaWNlIn0sNzI4NDM2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3N0dWR5Vm9sRm9vdHByaW50SWQ6KCk9Pml9KTtjb25zdCBpPSJGb290cHJpbnRAdHYtdm9sdW1lYnlwcmljZSJ9LDU1MDM5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzdHVkeVZiUFNlc3Npb25zSWQ6KCk9Pml9KTtjb25zdCBpPSJWYlBTZXNzaW9uc0B0di12b2x1bWVieXByaWNlIn0sNjQxMzA0KGUsdCxvKXsidXNlIHN0cmljdCI7dC5vcGVyYXRvcnM9e2xlc3M6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTc3NTA2KSksZWxlc3M6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjA0ODA0KSksZ3JlYXRlcjpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg5ODY1MDUpKSxlZ3JlYXRlcjpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg2ODc0NzkpKSxjcm9zc2VzOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDk1NDgzOSkpLGNyb3NzZXNfYWJvdmU6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTY3NjEzKSksY3Jvc3Nlc19iZWxvdzpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg1NjM2NjYpKSxpbl9yYW5nZTpvLmkxOG5leHQobnVsbCx2b2lkIDAsbygzNjU2NjApKSxub3RfaW5fcmFuZ2U6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTcyNTQzKSksZXF1YWw6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMzQwMjM5KSksbmVxdWFsOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDM0OTg4OSkpfX0sMzgyNzQ1KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSgpe3JldHVybiB3aW5kb3cuaXNfYXV0aGVudGljYXRlZH1vLmQodCx7aXNHbG9iYWxTY3JlZW5lckF2YWlsYWJsZTooKT0+aX0pfSw2ODQ2MTAoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtmdW5jdGlvbiBuKGUpe3JldHVybntzdGFuZGFsb25lOkJvb2xlYW4oZS5zdGFuZGFsb25lKSxvcmlnaW5hbFN0YW5kYWxvbmU6Qm9vbGVhbihlLm9yaWdpbmFsU3RhbmRhbG9uZSksb25XaWRnZXQ6Qm9vbGVhbihlLm9uV2lkZ2V0KX19ZnVuY3Rpb24gcihlKXtjb25zdCB0PW4oZSk7cmV0dXJuIHQuc3RhbmRhbG9uZSYmdC5vcmlnaW5hbFN0YW5kYWxvbmUmJiF0Lm9uV2lkZ2V0fWZ1bmN0aW9uIHMoZSl7Y29uc3QgdD1uKGUpO3JldHVybiB0LnN0YW5kYWxvbmUmJiF0Lm9yaWdpbmFsU3RhbmRhbG9uZSYmIXQub25XaWRnZXR9ZnVuY3Rpb24gYShlKXtjb25zdCB0PW4oZSk7cmV0dXJuIXQuc3RhbmRhbG9uZSYmdC5vcmlnaW5hbFN0YW5kYWxvbmUmJiF0Lm9uV2lkZ2V0fWZ1bmN0aW9uIGwoZSl7cmV0dXJuIG4oZSkub25XaWRnZXR9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gcihlKT8ic2NyZWVuZXIiOnMoZSk/Im1hcmtldCI6YShlKT8iY2hhcnQiOiJ3aWRnZXQifW8uZCh0LHtnZXRTY3JlZW5lclBhZ2U6KCk9PmMsaXNDaGFydFBhZ2U6KCk9PmEsaXNFeHRlcm5hbFdpZGdldDooKT0+bCxpc01hcmtldFBhZ2U6KCk9PnMsaXNTY3JlZW5lclBhZ2U6KCk9PnJ9KSxmdW5jdGlvbihlKXtlLlNjcmVlbmVyPSJzY3JlZW5lciIsZS5NYXJrZXQ9Im1hcmtldCIsZS5DaGFydD0iY2hhcnQiLGUuV2lkZ2V0PSJ3aWRnZXQifShpfHwoaT17fSkpfSw0NTA2NjQoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuLHI7by5kKHQse1VzZXJBY3Rpb25TdGF0ZTooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuQXBwbHlGbGFnZ2VkRmlsdGVyPSJhcHBseV9mbGFnZ2VkX2ZpbHRlciIsZS5DaGFuZ2VDb2x1bW5TZXQ9ImNoYW5nZV9jb2x1bW5zZXQiLGUuQ2hhbmdlQ29sdW1ucz0iY2hhbmdlX2NvbHVtbnMiLGUuQ2hhbmdlRmF2b3JpdGVDb2x1bW5TZXRzPSJjaGFuZ2VfZmF2b3JpdGVfY29sdW1uc2V0cyIsCmUuQ2hhbmdlRmlsdGVyRGlhbG9nVGFiPSJjaGFuZ2VfZmlsdGVyX2RpYWxvZ190YWIiLGUuQ2hhbmdlRmlsdGVyU2V0PSJjaGFuZ2VfZmlsdGVyc2V0IixlLkNoYW5nZUZvcmV4R3JvdXA9ImNoYW5nZV9mb3JleF9ncm91cCIsZS5DaGFuZ2VNYXJrZXQ9ImNoYW5nZV9tYXJrZXQiLGUuQ2hhbmdlTWFya2V0U2VsZWN0aW9uTW9kZT0iY2hhbmdlX21hcmtldF9zZWxlY3Rpb25fbW9kZSIsZS5DaGFuZ2VSZWZyZXNoSW50ZXJ2YWw9ImNoYW5nZV9yZWZyZXNoX2ludGVydmFsIixlLkNoYW5nZVRpbWVmcmFtZT0iY2hhbmdlX3RpbWVmcmFtZSIsZS5Db2x1bW5Nb3ZlPSJjb2x1bW5fbW92ZSIsZS5GaWx0ZXJEaWFsb2dBcHBsaWVkRmlsdGVycz0iZmlsdGVyX2RpYWxvZ19hcHBsaWVkX2ZpbHRlcnMiLGUuRmlsdGVyRGlhbG9nU2VhcmNoSW5wdXRDbGljaz0iZmlsdGVyX2RpYWxvZ19zZWFyY2hfaW5wdXRfY2xpY2siLGUuRmlsdGVyRGlhbG9nU2VhcmNoTm9UZXJtc0ZvdW5kPSJmaWx0ZXJfZGlhbG9nX3NlYXJjaF9ub190ZXJtc19mb3VuZCIsZS5GaWx0ZXJVc2U9ImZpbHRlcl91c2UiLGUuRmxhZ0NsaWNrPSJmbGFnX2NsaWNrIixlLkNvbnRleHRNZW51QWN0aW9uPSJjb250ZXh0X21lbnVfYWN0aW9uIixlLk9wZW5Db250ZXh0TWVudT0ib3Blbl9jb250ZXh0X21lbnUiLGUuT3BlbkZpbHRlcnNEaWFsb2c9Im9wZW5fZmlsdGVyc19kaWFsb2ciLGUuUmVmcmVzaFNjcmVlbmVyRGF0YT0icmVmcmVzaF9zY3JlZW5lcl9kYXRhIixlLlJlbmFtZUN1c3RvbUNvbHVtblNldD0icmVuYW1lX2N1c3RvbV9jb2x1bW5zZXQiLGUuUmVuYW1lQ3VzdG9tRmlsdGVyc2V0PSJyZW5hbWVfY3VzdG9tX2ZpbHRlcnNldCIsZS5Db252ZXJ0Q3VycmVuY3k9ImNvbnZlcnRfY3VycmVuY3kifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuVG9vbGJhcj0idG9vbGJhciIsZS5IZWFkZXI9ImhlYWRlciIsZS5GaWx0ZXJEaWFsb2c9ImZpbHRlcl9kaWFsb2ciLGUuQ29sdW1ucz0iY29sdW1ucyIsZS5Sb3c9InJvdyIsZS5NYXJrZXRzRGlhbG9nPSJtYXJrZXRfZGlhbG9nIixlLlVua25vd249IiJ9KG58fChuPXt9KSksZnVuY3Rpb24oZSl7ZS5DbGljaz0iY2xpY2tlZCIsZS5BcHBseUZpbHRlcnM9ImZpbHRlcnNfYXBwbGllZCIsZS5UeXBlPSJ0eXBlZCIsZS5TbGlkZT0ic2xpZGVkIixlLkRyYWc9ImRyYWcifShyfHwocj17fSkpfSw4MTEzMTIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7RGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50OigpPT5ufSk7dmFyIGk9byg0NTA2NjQpO2NsYXNzIG57Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuZXZlbnQ9ImNvbnRleHRfbWVudV9hY3Rpb24iLHRoaXMuc3RhdGU9aS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2ssdGhpcy5zb3VyY2U9ZSx0aGlzLnZhbHVlPW8udG9TdHJpbmcoKSx0aGlzLmxvY2F0aW9uPXR9fX0sNjY3MTMyKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0NoYW5nZU1hcmtldEV2ZW50OigpPT5pLENoYW5nZU1hcmtldFNlbGVjdGlvbk1vZGVFdmVudDooKT0+bn0pO2NsYXNzIGl7Y29uc3RydWN0b3IoZSl7dGhpcy5ldmVudD0iY2hhbmdlX21hcmtldCIsdGhpcy5zb3VyY2U9Im1hcmtldF9zZWxlY3RvciIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPWV9fWNsYXNzIG57Y29uc3RydWN0b3IoZSl7dGhpcy5ldmVudD0iY2hhbmdlX21hcmtldF9zZWxlY3Rpb25fbW9kZSIsdGhpcy5zb3VyY2U9Im1hcmtldF9zZWxlY3Rpb25fbW9kZV9zd2l0Y2giLHRoaXMubG9jYXRpb249Im1hcmtldF9kaWFsb2ciLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT1lfX19LDIxMTM2MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRDb2x1bW5TZXROYW1lRm9yU25vd1Bsb3c6KCk9PmMsZ2V0RmlsdGVyU2V0TmFtZUZvclNub3dQbG93OigpPT5kLGdldFNub3dQbG93UmVmcmVzaEludGVydmFsOigpPT5sLGluaXRTY3JlZW5lckluc3RhbmNlOigpPT5zLHNlbmRTbm93UGxvd0RhdGE6KCk9PmF9KTt2YXIgaT1vKDM2MjIzOSksbj1vKDY4NDYxMCk7bGV0IHI7ZnVuY3Rpb24gcyhlKXtyPWV9ZnVuY3Rpb24gYShlKXtsZXQgdD0iIixvPSIiO3ImJih0PSgwLG4uZ2V0U2NyZWVuZXJQYWdlKShyLnNjcmVlbmVyQnJpZGdlKSxvPXIuc2NyZWVuZXJUeXBlKTsoIXJ8fCEoMCxuLmlzRXh0ZXJuYWxXaWRnZXQpKHIuc2NyZWVuZXJCcmlkZ2UpKSYmKDAsaS5nZXRUcmFja2VyKSgpLnRoZW4oKGk9PntpJiZpLnRyYWNrU2NyZWVuZXJIaWdoTGV2ZWwoZSxvLHQpfSkpfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIDE9PT1lPyJhdXRvIjotMT09PWU/Im1hbnVhbCI6YCR7ZX1gfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIHIuZGVmYXVsdEZpZWxkU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpP2U6ImN1c3RvbSJ9ZnVuY3Rpb24gZChlKXtyZXR1cm4gci5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpP2U6ImN1c3RvbSJ9fSw5NjkxNjgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TFRSU2Nyb2xsTGVmdDooKT0+aS5nZXRMVFJTY3JvbGxMZWZ0LGlzUnRsOigpPT5pLmlzUnRsfSk7byg2MTAyNjgpO3ZhciBpPW8oMTE1MjkzKX0sNjgyNzc5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldERlZmF1bHRTeW1ib2w6KCk9PnJ9KTt2YXIgaT1vKDgzOTQyNik7Y29uc3Qgbj1KU09OLnBhcnNlKCd7ImVuIjoiTkFTREFROkFBUEwiLCJiciI6IkJNRkJPVkVTUEE6SUJPViIsImVzIjoiQk1FOlNBTiIsImZyIjoiVFZDOkNBQzQwIiwiaWQiOiJGWF9JREM6VVNESURSIiwiaW4iOiJOU0U6TklGVFkiLCJpdCI6Ik1JTDpKVVZFIiwiamEiOiJGWDpKUE4yMjUiLCJrciI6IkZYX0lEQzpVU0RLUlciLCJwbCI6IkZYX0lEQzpVU0RQTE4iLCJydSI6IlJVUzpVU0RSVUJfVE9NIiwidHIiOiJGWDpVU0RUUlkiLCJ1ayI6IkxTRTpMQU5EIn0nKSxyPSgwLGkuZGVmYXVsdCkoKGZ1bmN0aW9uKCl7cmV0dXJuIG5bd2luZG93LmxvY2FsZXx8ImVuIl18fCJOQVNEQVE6QUFQTCJ9KSl9LDI0MTkzNyhlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0KXsKY29uc3Qgbz10fHx3aW5kb3cubG9jYWxlfHwiZW4iO2xldCBpPWVbb10/ZVtvXTplLmVuO3JldHVybiBpPSJ0cmFkaW5ndmlldy5jb20iPT09aT8id3d3LnRyYWRpbmd2aWV3LmNvbSI6aSxpP2RvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKyIvLyIraToiIn1vLmQodCx7ZGV0ZXJtaW5lQmFzZVVybDooKT0+aX0pfSw0Mzg1MzkoZSx0LG8peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiBpKGUpe2NvbnN0e3JlbmRlckdvVG9UcmFkaW5nVmlld1JlZmVycmFsRGlhbG9nOnR9PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoNTQ5OCksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMjk1MzYpLG8uZSg1MTg0KSxvLmUoNTYyNTIpLG8uZSgzOTA1KSxvLmUoNzQ4MzApLG8uZSg1MDYyMiksby5lKDMzMjIxKSxvLmUoMTE3MjUpLG8uZSg1MTMwOSksby5lKDExMjU3KSxvLmUoMzIzODcpLG8uZSgxNzk5MSksby5lKDEyOTY1KSxvLmUoNjg3NDEpLG8uZSg4Mzc4MSksby5lKDUyODExKSxvLmUoNTM4ODEpXSkudGhlbihvLmJpbmQobyw0NzU4MDYpKTt0KGUpfW8uZCh0LHtzaG93R29Ub1RyYWRpbmdWaWV3UmVmZXJyYWxEaWFsb2c6KCk9Pml9KX0sOTk5NjQwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3BheXdhbGxNb2JpbGVJbnRlcmNlcHRvcjooKT0+aX0pO2NvbnN0IGk9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5faGlkZGVuRmVhdHVyZXM9bmV3IFNldCx0aGlzLl9saXN0ZW5lcnM9W10sdGhpcy5oaWRlPWU9Pnt0aGlzLl9oaWRkZW5GZWF0dXJlcy5hZGQoZSl9LHRoaXMuaXNIaWRkZW5GZWF0dXJlPWU9PnRoaXMuX2hpZGRlbkZlYXR1cmVzLmhhcyhlKSx0aGlzLnN1YnNjcmliZT1lPT57dGhpcy5fbGlzdGVuZXJzLnB1c2goZSl9LHRoaXMuaW52b2tlPWU9Pnt0aGlzLl9saXN0ZW5lcnMuZm9yRWFjaCgodD0+dChlKSkpfX19fSw3NzA3NTUoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7b3BlblBheXdhbGw6KCk9PnN9KTt2YXIgaT1vKDkzMDIzMSksbj1vKDk5OTY0MCkscj1vKDQzODUzOSk7bygzMDAyODYpO2FzeW5jIGZ1bmN0aW9uIHMoZSx0PXt9KXtpZihuLnBheXdhbGxNb2JpbGVJbnRlcmNlcHRvci5pc0hpZGRlbkZlYXR1cmUoZS5mZWF0dXJlKSlyZXR1cm4gdm9pZCBuLnBheXdhbGxNb2JpbGVJbnRlcmNlcHRvci5pbnZva2UoZS5mZWF0dXJlKTtpZigoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJyZWZlcnJhbF9wcm9ncmFtX2Zvcl93aWRnZXRfb3duZXJzIikpcmV0dXJuKDAsci5zaG93R29Ub1RyYWRpbmdWaWV3UmVmZXJyYWxEaWFsb2cpKHtmZWF0dXJlOmUuZmVhdHVyZX0pO2NvbnN0e3BheXdhbGxzOnN9PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQ2OTMpLG8uZSg0OTY4NCksby5lKDI5Mjk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDUxODQpLG8uZSgxMTIxOCksby5lKDcyNjY2KSxvLmUoMzI2MzIpLG8uZSg1MDYyMiksby5lKDMzMjIxKSxvLmUoNTkzNTApLG8uZSgzMzIzKSxvLmUoMzgyNjIpLG8uZSg4NzQ3NCksby5lKDMyMzg3KSxvLmUoNzU0ODkpLG8uZSg2ODc0MSksby5lKDcwNTkwKSxvLmUoODYwMDEpXSkudGhlbihvLmJpbmQobyw4MTc4MTYpKTtzLm9wZW4oZSx0KX19LDYyMTkyNihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtydW5PclNpZ25pbldpdGhGZWF0dXJlOigpPT5ufSk7bygzMDAyODYpO3ZhciBpPW8oMTE3MzEzKTtjb25zdCBuPWFzeW5jKGUsdCxuPXt9KT0+e3tpZih3aW5kb3cuaXNfYXV0aGVudGljYXRlZClyZXR1cm4gdm9pZCBlKCk7aWYoKDAsaS5pc09uTW9iaWxlQXBwUGFnZSkoImFueSIpKXJldHVybiB2b2lkIHdpbmRvdy5ydW5PclNpZ25JbihlLHtzb3VyY2U6dC5zb3VyY2UsZmVhdHVyZTp0LmZlYXR1cmV9KTtjb25zdHtyZWd3YWxsczpyfT1hd2FpdCBQcm9taXNlLmFsbChbby5lKDE3NjYyKSxvLmUoMjkyOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMjk1MzYpLG8uZSg1NjI1Miksby5lKDUwNjIyKSxvLmUoNTkzNTApLG8uZSgzMzIzKSxvLmUoNTgzODQpLG8uZSgzMjM4Nyksby5lKDcwNTkwKSxvLmUoMjI4NCldKS50aGVuKG8uYmluZChvLDIxNDY3KSk7ci5vcGVuKHsuLi50LG9uU2lnbmluU3VjY2VzczplfSxuKX19fSwzMzczNjIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7RW1iZWRWaWV3cG9ydERpbWVuc2lvbnNQcm92aWRlcjooKT0+bn0pO3ZhciBpPW8oOTMwMjMxKTtjbGFzcyBue2NvbnN0cnVjdG9yKCl7dGhpcy5fZGF0YT1udWxsLHRoaXMuX21lc3NhZ2VSZWNlaXZlcj1udWxsfXN0YXJ0TGlzdGVuaW5nKCl7dGhpcy5fbWVzc2FnZVJlY2VpdmVyfHwodGhpcy5fbWVzc2FnZVJlY2VpdmVyPWU9PntpZihlLmRhdGEpdHJ5e2NvbnN0IHQ9SlNPTi5wYXJzZShlLmRhdGEpOyJzZXQtZW1iZWQtcmVzaXplci1vdmVycmlkZXMiPT09dC5ldmVudCYmKHRoaXMuX2RhdGE9dC5lZGdlcyl9Y2F0Y2h7fX0sdGhpcy5fYWRkTWVzc2FnZUxpc3RlbmVyKCkpfWRlc3Ryb3koKXt0aGlzLl9yZW1vdmVNZXNzYWdlTGlzdGVuZXIoKX1kYXRhKCl7cmV0dXJuIHRoaXMuX2RhdGF9c3RhdGljIGdldEluc3RhbmNlKCl7cmV0dXJuIHRoaXMuX2luc3RhbmNlfHwodGhpcy5faW5zdGFuY2U9bmV3IG4pLHRoaXMuX2luc3RhbmNlfV9hZGRNZXNzYWdlTGlzdGVuZXIoKXt0aGlzLl9tZXNzYWdlUmVjZWl2ZXImJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLl9tZXNzYWdlUmVjZWl2ZXIpfV9yZW1vdmVNZXNzYWdlTGlzdGVuZXIoKXt0aGlzLl9tZXNzYWdlUmVjZWl2ZXImJndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLl9tZXNzYWdlUmVjZWl2ZXIpLHRoaXMuX21lc3NhZ2VSZWNlaXZlcj1udWxsfX0oMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpJiZuLmdldEluc3RhbmNlKCkuc3RhcnRMaXN0ZW5pbmcoKX0sOTExMzI3KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldFN5bWJvbFBhZ2VQYXRoOigpPT5kLG1ha2VTeW1ib2xDaGFydFVybDooKT0+ZixtYWtlU3ltYm9sUGFnZVVybDooKT0+diwKbWFrZVRlbXBsYXRlU3ltYm9sVXJsOigpPT5tfSk7byg5NjM5MDApO3ZhciBpPW8oMzA5ODM2KSxuPW8oMjQxOTM3KSxyPW8oNzMwNjQ1KSxzPW8oODUxNDU4KSxhPW8oMTU2ODI5KTtjb25zdCBsPW5ldyBTZXQoWyJTUDpTUFgiLCJDQk9FOlNQWCJdKTtmdW5jdGlvbiBjKGUpe2NvbnN0IHQ9ey4uLmV9O2lmKCJzcHJlYWQiPT09dC50eXBlfHwiZXhwcmVzc2lvbiI9PT10LnR5cGUpe2NvbnN0IGU9dC5zaG9ydE5hbWUmJmgodC5zaG9ydE5hbWUpLG89dC5wcm9OYW1lJiZoKHQucHJvTmFtZSk7dC50eXBlPXZvaWQgMCx0LnNob3J0TmFtZT1lLHQucHJvTmFtZT1vfXJldHVybiB0fWZ1bmN0aW9uIGQoZSx0KXtjb25zdCBvPWMoZSk7cmV0dXJuIF8ocChvLHQpLHUobykpfWZ1bmN0aW9uIGgoZSl7cmV0dXJuKDAscy50b2tlbml6ZSkoZSkuZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV9ZnVuY3Rpb24gdShlKXtjb25zdCB0PXtzaG9ydE5hbWU6ZS5zaG9ydE5hbWUsZXhjaGFuZ2U6ZS5leGNoYW5nZSxwcm9OYW1lOmUucHJvTmFtZSx0eXBlOmUudHlwZSx0eXBlc3BlY3M6ZS50eXBlc3BlY3Mscm9vdDplLnJvb3R9O3JldHVybiB0LnByb05hbWUmJnQucHJvTmFtZS5pbmNsdWRlcygiOiIpJiYoW3QuZXhjaGFuZ2UsdC5zaG9ydE5hbWVdPXQucHJvTmFtZS5zcGxpdCgiOiIpKSx0fWZ1bmN0aW9uIF8oZSx0KXtjb25zdCBvPWVuY29kZVVSSUNvbXBvbmVudCh0LnNob3J0TmFtZXx8IiIpLGk9ZW5jb2RlVVJJQ29tcG9uZW50KHQuZXhjaGFuZ2V8fCIiKSxuPWVuY29kZVVSSUNvbXBvbmVudCh0LnByb05hbWV8fCIiKSxyPWVuY29kZVVSSUNvbXBvbmVudCh0LnJvb3R8fCIiKTtyZXR1cm4gZS5yZXBsYWNlKCJ7dHZleGNoYW5nZX0iLGkpLnJlcGxhY2UoInt0dnN5bWJvbH0iLG8pLnJlcGxhY2UoInt0dnByb3N5bWJvbH0iLG4pLnJlcGxhY2UoInt0dnJvb3R9IixyKX1mdW5jdGlvbiBwKGUsdD0iIil7Y29uc3Qgbz11KGUpLHt0eXBlOmksdHlwZXNwZWNzOm4sc2hvcnROYW1lOnIscHJvTmFtZTpzLGV4Y2hhbmdlOmMscm9vdDpkfT1vO3JldHVybiB2b2lkIDA9PT1yJiZ2b2lkIDA9PT1zPyhjb25zb2xlLndhcm4oIlBhcmFtcyBtaXNzZWQiKSwiLyIpOnMmJmwuaGFzKHMpP2Avc3ltYm9scy97dHZzeW1ib2x9LyR7dH1gOml8fG4/ImNvbW1vZGl0eSI9PT1pJiZuJiZuLmluY2x1ZGVzKCJjZmQiKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjohZHx8IW58fCJmdXR1cmVzIiE9PWl8fG4uaW5jbHVkZXMoImNvbnRpbnVvdXMiKSYmcj8uZW5kc1dpdGgoIjEhIil8fG4uaW5jbHVkZXMoImV4Y2hhbmdlLWNvbnRpbnVvdXMiKT9jJiYoImZvcmV4Ij09PWl8fG4mJigwLGEuaGFzQ3J5cHRvVHlwZXNwZWMpKG4pKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjpjP2Avc3ltYm9scy97dHZleGNoYW5nZX0te3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnJvb3R9MSEvJHt0fT9jb250cmFjdD17dHZzeW1ib2x9YDpjP2Avc3ltYm9scy97dHZleGNoYW5nZX0te3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2c3ltYm9sfS8ke3R9YH1mdW5jdGlvbiBtKGUsdCl7bGV0IG89ZTtpZighL3t0dnN5bWJvbH18e3R2ZXhjaGFuZ2V9fHt0dnByb3N5bWJvbH0vLnRlc3QoZSkpe2xldCBpPSJ0dnByb3N5bWJvbCI7dm9pZCAwPT09dC5wcm9OYW1lJiYoaT0idHZzeW1ib2wiKSxvPWAke2V9P3R2d2lkZ2V0c3ltYm9sPXske2l9fWB9Y29uc3QgaT1fKG8sdShjKHQpKSk7aWYoISgwLHIuaXNTYWZlVXJsKShpKSl0aHJvdyBuZXcgRXJyb3IoYFRoZSBzeW1ib2wgVVJMICR7aX0gaXMgbm90IGFsbG93ZWQuYCk7cmV0dXJuIGl9ZnVuY3Rpb24gZyhlLHQsbyxyKXtjb25zdCBzPSh3aW5kb3cubG9jYWxlX2RvbWFpbnM/KDAsbi5kZXRlcm1pbmVCYXNlVXJsKSh3aW5kb3cubG9jYWxlX2RvbWFpbnMscik6d2luZG93LmxvY2F0aW9uLm9yaWdpbikrXyhlLHUoYyh0KSkpO3JldHVybiBvPygwLGkuYWRkVXRtVG9VcmwpKHMsbyk6c31mdW5jdGlvbiB2KGUsdCxvLGkpe2NvbnN0IG49YyhlKTtyZXR1cm4gZyhwKG4saSksbix0LG8pfWZ1bmN0aW9uIGYoZSx0KXtyZXR1cm4gZygiL2NoYXJ0Lz9zeW1ib2w9e3R2cHJvc3ltYm9sfSIsZSx0KX19LDQ4MjUwNChlLHQsbyl7Y29uc3QgaT1vKDE5OTgyNyk7ZS5leHBvcnRzPWksaShkb2N1bWVudCkuYWpheFNlbmQoKChlLHQsbyk9PntvLmNyb3NzRG9tYWluJiYhby5mb3JjZUxhbmd1YWdlSGVhZGVyfHwod2luZG93LmxvY2FsZT90LnNldFJlcXVlc3RIZWFkZXIoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpOmNvbnNvbGUud2Fybigid2luZG93LmxvY2FsZSBpcyBub3QgZGVmaW5lZCIpKX0pKX0sNzc4OTQ2KGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse2dldFBsYXRmb3JtOigpPT5zfSksZnVuY3Rpb24oZSl7ZS5EZXNrdG9wPSJkZXNrdG9wIixlLldlYj0id2ViIixlLklPUz0iaW9zIixlLkFuZHJvaWQ9ImFuZHJvaWQifShpfHwoaT17fSkpO3ZhciBuPW8oMTE3MzEzKSxyPW8oMzE4OTc0KTtmdW5jdGlvbiBzKCl7cmV0dXJuKDAsci5pc0Rlc2t0b3BBcHApKCk/ImRlc2t0b3AiOigwLG4uaXNPbk1vYmlsZUFwcFBhZ2UpKCJvbGQiKT8iaW9zIjooMCxuLmlzT25Nb2JpbGVBcHBQYWdlKSgibmV3Iik/ImFuZHJvaWQiOiJ3ZWIifX0sNTI0MDY5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldFByb1BsYW5EZXRhaWxzRm9yVXNlcjooKT0+YSxnZXRQcm9QbGFuV2VpZ2h0OigpPT5zfSk7byg0NzkzNCk7dmFyIGk9bygyMTIyMjkpLG49bygzODQwMTcpLHI9bygyMjI0MjMpO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIHdpbmRvdy5wcm8/ImZyZWUiPT09ZT8tMTp3aW5kb3cucHJvLmdldFByb2R1Y3QoKDAsaS5nZXRQcm9kdWN0Rm9yVHJpYWwpKGUpKS51cGdyYWRlX3dlaWdodDowfWFzeW5jIGZ1bmN0aW9uIGEoKXtjb25zdCBlPWF3YWl0KDAsbi5mZXRjaCkoIi9wcm8tcGxhbnMvcHJvZmlsZS8iKSx0PWF3YWl0IGUuanNvbigpCjtpZihlLm9rKXJldHVybiB0O2lmKDQwMz09PWUuc3RhdHVzKXtjb25zdCBvPXQ7dGhyb3cgbmV3IHIuQXBpRXJyb3Ioby5kZXRhaWwsZS5zdGF0dXMsby5jb2RlKX10aHJvdyBuZXcgRXJyb3IoYFVuYWJsZSB0byBoYW5kbGUgdW5leHBlY3RlZCByZXNwb25zZTogJHtTdHJpbmcoZS50ZXh0KCkpfWApfX0sNTI4Mzk2KGUsdCxvKXsidXNlIHN0cmljdCI7by5yKHQpLG8uZCh0LHtnZXRUcmFuc2xhdGVkU3ltYm9sRGVzY3JpcHRpb246KCk9PnJ9KTt2YXIgaT1vKDE4NTI3MSk7ZnVuY3Rpb24gbihlKXtjb25zdCB0PWAjJHtlfS1zeW1ib2wtZGVzY3JpcHRpb25gLG49aS50KHQsdm9pZCAwLG8oMjU4NjY3KSk7cmV0dXJuIG49PT10P251bGw6bn1mdW5jdGlvbiByKGUpe2lmKHZvaWQgMCE9PWUucHJvX25hbWUpe2NvbnN0IHQ9bihlLnByb19uYW1lKTtpZihudWxsIT09dClyZXR1cm4gdDtpZih2b2lkIDAhPT1lLnNob3J0X25hbWUpe2NvbnN0IHQ9bihlLnNob3J0X25hbWUpO2lmKG51bGwhPT10KXJldHVybiB0fX1yZXR1cm4iZW4iIT09ZS5sYW5ndWFnZSYmdm9pZCAwIT09ZS5sb2NhbF9kZXNjcmlwdGlvbiYmZS5sYW5ndWFnZT09PXdpbmRvdy5sYW5ndWFnZXx8ImVuIj09PWUubGFuZ3VhZ2UmJnZvaWQgMCE9PWUubG9jYWxfZGVzY3JpcHRpb24mJmUubGFuZ3VhZ2U9PT13aW5kb3cubGFuZ3VhZ2U/ZS5sb2NhbF9kZXNjcmlwdGlvbjplLmRlc2NyaXB0aW9ufHwiIn19LDczMDY0NShlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSl7Y29uc3QgdD1uZXcgVVJMKGUsZG9jdW1lbnQuYmFzZVVSSSk7cmV0dXJuIGEodCkmJnModCkmJnIodCl9ZnVuY3Rpb24gbihlKXtjb25zdCB0PW5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm4gcyh0KSYmcih0KX1vLmQodCx7aXNJbnRlcm5hbEhvc3Q6KCk9PmwsaXNJbnRlcm5hbFVybDooKT0+aSxpc1NhZmVVcmw6KCk9Pm4saXNUdkxpbms6KCk9PmN9KTtjb25zdCByPWU9PiFlLnVzZXJuYW1lLHM9ZT0+Imh0dHA6Ij09PWUucHJvdG9jb2x8fCJodHRwczoiPT09ZS5wcm90b2NvbCxhPWU9PmUuaG9zdG5hbWU9PT1sb2NhdGlvbi5ob3N0bmFtZXx8IS9eXGQrXC5cZCtcLlxkK1wuXGQrJC8udGVzdChlLmhvc3RuYW1lKSYmbChlLmhvc3RuYW1lKTtmdW5jdGlvbiBsKGUsdD13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpe2NvbnN0IG89Ii4iPT09dC5zbGljZSgtMSk/MzoyLGk9dC50b0xvd2VyQ2FzZSgpLnNwbGl0KCIuIikuc2xpY2UoLW8pLG49ZS50b0xvd2VyQ2FzZSgpLnNwbGl0KCIuIikuc2xpY2UoLWkubGVuZ3RoKTtyZXR1cm4gaS5qb2luKCIuIik9PT1uLmpvaW4oIi4iKX1mdW5jdGlvbiBjKGUpe3RyeXtyZXR1cm4gZS5zdGFydHNXaXRoKCIvIil8fGwobmV3IFVSTChlKS5ob3N0bmFtZSwidHJhZGluZ3ZpZXcuY29tIil9Y2F0Y2h7cmV0dXJuITF9fX0sMzA1NDY2KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtsZXQgdCxvO3JldHVybiBlLmluY2x1ZGVzKCI6Iik/KG89ZS5zcGxpdCgiOiIpWzFdLHQ9ZSk6bz1lLHtwcm9OYW1lOnQsc2hvcnROYW1lOm99fW8uZCh0LHtnZXRTaG9ydE5hbWVBbmRQcm9OYW1lOigpPT5pfSl9LDU3NjEwMyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjggMjgiIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgNUg2LjVDNS42NyA1IDUgNS42NyA1IDYuNXYxNWMwIC44My42NyAxLjUgMS41IDEuNWgxNWMuODMgMCAxLjUtLjY3IDEuNS0xLjVWMTZoMXY1LjVhMi41IDIuNSAwIDAgMS0yLjUgMi41aC0xNUEyLjUgMi41IDAgMCAxIDQgMjEuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgNEgxNXYxWm03LjQxLS4zYTIgMiAwIDAgMC0yLjgyIDBsLS45NC45NS03LjUgNy41LTEgMS0uMTUuMTRWMTloNC43bC4xNS0uMTUgMS0xIDcuNS03LjUuOTQtLjk0YTIgMiAwIDAgMCAwLTIuODJMMjIuNDEgNC43Wm0tMi4xMi43MWExIDEgMCAwIDEgMS40MiAwbDEuODggMS44OGExIDEgMCAwIDEgMCAxLjQybC0uNTkuNTgtMS42NS0xLjY0TDE5LjcxIDZsLjU4LS41OVptLjM2IDIuOTRMMjIuMjkgMTBsLTYuNzkgNi44LTEuNjUtMS42NS0xLjY0LTEuNjVMMTkgNi43bDEuNjUgMS42NVptLTcuNSA3LjUgMS42NCAxLjY1LS41LjVIMTF2LTMuM2wuNS0uNSAxLjY1IDEuNjVaIi8+PC9zdmc+J30sNzU2Mjg4KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0yMyAxM2gtMVY0SDZ2MTkuNDc2TDE0IDIwbDMuMDA4IDEuMzA3LS40Mi45MDdMMTQgMjEuMDkgNSAyNVYzaDE4em0wIDZoNHYxaC00djRoLTF2LTRoLTR2LTFoNHYtNGgxem0tNi0zSDl2LTFoOHptMi00SDl2LTFoMTB6bTAtNC4wMDVIOXYtMWgxMHoiLz48L3N2Zz4nfSw1ODA1OTYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNOCA1bDMuNSAzLjVMOCAxMiIvPjwvc3ZnPid9LDYyNjIxOChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjIgMTUiIHdpZHRoPSIyMiIgaGVpZ2h0PSIxNSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIHN0cm9rZT0iIzc1NzU3NSIgZD0iTTYuMjUgNS44MTJMMTEgMTAuMDg3bDQuNzUtNC4yNzVNMTEgOS44NjhWLjMxNSIvPjxwYXRoIHN0cm9rZT0iI0FEQUVCMCIgZD0iTTIxIDEwdjRIMXYtNCIvPjwvZz48L3N2Zz4nfSw4OTk3MChlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04IC03KSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTcgMTFjMS4zOCAwIDIuNjMuNTYgMy41NCAxLjQ2TDE4IDE1aDZWOWwtMi4wNSAyLjA1QTYuOTc2IDYuOTc2IDAgMCAwIDE3IDljLTMuNTMgMC02LjQzIDIuNjEtNi45MiA2aDIuMDJhNSA1IDAgMCAxIDQuOS00em02LjkyIDZIMjEuOWE1IDUgMCAwIDEtNC45IDRjLTEuMzggMC0yLjYzLS41Ni0zLjU0LTEuNDZMMTYgMTdoLTZ2NmwyLjA1LTIuMDVBNi45NzYgNi45NzYgMCAwIDAgMTcgMjNjMS41NSAwIDIuOTgtLjUxIDQuMTQtMS4zNmwxLjUtMS41QTYuODkgNi44OSAwIDAgMCAyMy45MiAxN3oiLz48L2c+PC9zdmc+J30sNzY1Njk1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMy41IDZhOC41IDguNSAwIDEgMCAwIDE3IDguNSA4LjUgMCAwIDAgMC0xN3pNNCAxNC41YTkuNSA5LjUgMCAxIDEgMTkgMCA5LjUgOS41IDAgMCAxLTE5IDB6Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNOSAxNGg0di00aDF2NGg0djFoLTR2NGgtMXYtNEg5di0xeiIvPjwvc3ZnPid9LDgxNTY4MyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIyOTkgMTMxIDEyIDciIHdpZHRoPSIxMiIgaGVpZ2h0PSI3Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMzAwIDEzMmw1IDUgNS01Ii8+PC9zdmc+J30sODAxMzI3KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0Ij48cGF0aCBkPSJNMTAuODkzIDkuNTEybC40NTggMy42MjRjLjAxNC4xMDUtLjAwNi4xNi0uMDIuMTc2LS4wMjguMDMtLjEwOS4wMDUtLjE4Mi0uMDNMNy44MTIgMTEuNzNhMS45NzMgMS45NzMgMCAwIDAtLjgxMS0uMTZjLS4zMDIgMC0uNTkuMDU3LS44MS4xNmwtMy4zMzggMS41NTJjLS4xMTguMDU2LS4xNjQuMDUxLS4xODIuMDMtLjAxNC0uMDE2LS4wMzQtLjA3LS4wMi0uMTc4TDMuMTEgOS41MWMuMDYtLjUwMy0uMTYyLTEuMTgtLjUwNS0xLjU0TC4wODcgNS4zMDJjLS4wODUtLjA5MS0uMDktLjE0OC0uMDg2LS4xNTguMDAzLS4wMS4wNC0uMDUzLjE2LS4wNzdsMy42MjEtLjY4OWMuNDkxLS4wOSAxLjA2OS0uNTA2IDEuMzE1LS45NDhMNy4wMDQgMGwxLjkwMiAzLjQzYy4yNDYuNDQyLjgyNC44NTkgMS4zMTIuOTQ3bDMuNjE3LjY5Yy4xMjMuMDI0LjE2Mi4wNjguMTY0LjA3Ny4wMDMuMDEtLjAwMy4wNjYtLjA4OS4xNTdMMTEuNCA3Ljk3Yy0uMzQ4LjM2Ny0uNTcgMS4wNDUtLjUwNiAxLjU0M3oiLz48L3N2Zz4nfSw0MjcwOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTQgMTQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCI+PHBhdGggZD0iTTkuOTAxIDkuNjM5Yy0uMTAyLS43OTcuMjE4LTEuNzc1Ljc3LTIuMzU2bDEuNDM4LTEuNTI3LTIuMDctLjM5NWMtLjc4NC0uMTQyLTEuNjE1LS43NDItMi4wMDgtMS40NDZMNy4wMDMgMi4wNiA1Ljk3IDMuOTE3Yy0uMzkxLjcwMi0xLjIyMiAxLjMwMS0yIDEuNDQzbC0yLjA4LjM5NiAxLjQ0IDEuNTI2Yy41NDcuNTc3Ljg2NiAxLjU0OS43NyAyLjM1M2wtLjI2MiAyLjA4NiAxLjkzLS44OTdhMi45NSAyLjk1IDAgMCAxIDEuMjMzLS4yNTRjLjQ0IDAgLjg3LjA4NSAxLjIzMy4yNTRsMS45My44OTctLjI2My0yLjA4MnptLjk5Mi0uMTI3bC40NTggMy42MjRjLjAxNC4xMDUtLjAwNi4xNi0uMDIuMTc2LS4wMjguMDMtLjEwOS4wMDUtLjE4Mi0uMDNMNy44MTIgMTEuNzNhMS45NzMgMS45NzMgMCAwIDAtLjgxMS0uMTZjLS4zMDIgMC0uNTkuMDU3LS44MS4xNmwtMy4zMzggMS41NTJjLS4xMTguMDU2LS4xNjQuMDUxLS4xODIuMDMtLjAxNC0uMDE2LS4wMzQtLjA3LS4wMi0uMTc4TDMuMTEgOS41MWMuMDYtLjUwMy0uMTYyLTEuMTgtLjUwNS0xLjU0TC4wODcgNS4zMDJjLS4wODUtLjA5MS0uMDktLjE0OC0uMDg2LS4xNTguMDAzLS4wMS4wNC0uMDUzLjE2LS4wNzdsMy42MjEtLjY4OWMuNDkxLS4wOSAxLjA2OS0uNTA2IDEuMzE1LS45NDhMNy4wMDQgMGwxLjkwMiAzLjQzYy4yNDYuNDQyLjgyNC44NTkgMS4zMTIuOTQ3bDMuNjE3LjY5Yy4xMjMuMDI0LjE2Mi4wNjguMTY0LjA3Ny4wMDMuMDEtLjAwMy4wNjYtLjA4OS4xNTdMMTEuNCA3Ljk3Yy0uMzQ4LjM2Ny0uNTcgMS4wNDUtLjUwNiAxLjU0M3oiLz48L3N2Zz4nfSw4MTkyOTAoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTTkuNSA4LjVjMS4xMDUgMCAyLS4zOTUgMi0xLjVzLS44OTUtMS41LTItMS41aC0zdjNoM3ptLjUgNGMxLjM4IDAgMi41LS42MiAyLjUtMnMtMS4xMi0yLTIuNS0ySDYuNXY0SDEweiIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik05LjUgMy41VjVtMCA4djEuNW0tMi0xLjV2MS41bS0yLTJINm0tLjUtN0g2bTEuNS0yVjUiLz48Y2lyY2xlIGN4PSI5IiBjeT0iOSIgcj0iOC41Ii8+PC9nPjwvc3ZnPid9LDQ4ODg3NShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTEgOSIgd2lkdGg9IjExcHgiIGhlaWdodD0iOXB4Ij48cGF0aCBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTEgMy4yMmwzLjQxNSAzLjQ5NkwxMCAxIi8+PC9zdmc+J30sOTg3MDc2KGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNiA5IiB3aWR0aD0iNiIgaGVpZ2h0PSI5Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEgMWwzLjUgMy41TDEgOCIvPjwvc3ZnPid9LDI0OTQ4OShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjAgNjAiPjxwYXRoIGQ9Ik0wIDQ2bDM1LTM1IDE0IDE0LTM1IDM1SDB6TTM5IDdsNi02YzUtNSAxOSA5IDE0IDE0bC02IDZ6Ii8+PC9zdmc+J30sNTY3MjQ1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciI+PGNpcmNsZSBjeD0iOSIgY3k9IjkiIHI9IjguNSIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik01LjUgMTMuNXYtOWg0bS0yIDRINm0zLjUgMWwzIDRtMC00bC0zIDQiLz48L2c+PC9zdmc+J30sOTIxNzA4KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiBmaWxsPSJub25lIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTIuNSAxNC41YzEuNjgtMS4yNiAzLjctMiA2LjUtMnM0LjkxLjc0IDYuNSAybS0xMy0xMWMxLjY4IDEuMjYgMy43IDIgNi41IDJzNC45MS0uNzQgNi41LTIiLz48Y2lyY2xlIHN0cm9rZT0iY3VycmVudENvbG9yIiBjeD0iOSIgY3k9IjkiIHI9IjguNSIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTMuNSA5YzAgMi40Mi0uNTUgNC41OC0xLjQgNi4xMi0uODcgMS41Ni0xLjk4IDIuMzgtMy4xIDIuMzhzLTIuMjMtLjgyLTMuMS0yLjM4Yy0uODUtMS41NC0xLjQtMy43LTEuNC02LjEycy41NS00LjU4IDEuNC02LjEyQzYuNzcgMS4zMiA3Ljg4LjUgOSAuNXMyLjIzLjgyIDMuMSAyLjM4Yy44NSAxLjU0IDEuNCAzLjcgMS40IDYuMTJ6Ii8+PC9zdmc+J30sMjA3NzQ2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxMiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjEyIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzlEQjJCRCI+PHBhdGggZD0iTTEgMGwxMiAxMk0xMyAwTDEgMTIiLz48L2c+PC9zdmc+J30sNjA4MDY1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOSAyMiIgd2lkdGg9IjE5IiBoZWlnaHQ9IjIyIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTUgMXY5LjEzYTQgNCAwIDAgMSAwIDcuNzVWMjFhMSAxIDAgMSAxLTIgMHYtMy0uMTJhNCA0IDAgMCAxIDAtNy43NVYxYTEgMSAwIDAgMSAyIDB6TTIgMTRhMiAyIDAgMSAxIDQgMCAyIDIgMCAwIDEtNCAwem0xMi05Ljg4VjFhMSAxIDAgMSAxIDIgMHYzLjEyYTQgNCAwIDAgMSAwIDcuNzVWMjFhMSAxIDAgMSAxLTIgMHYtOS4xM2E0IDQgMCAwIDEgMC03Ljc1ek0xNSAxMGEyIDIgMCAxIDAgMC00IDIgMiAwIDAgMCAwIDR6Ii8+PC9zdmc+J30sNjkzMjM2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48cGF0aCBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTguMzYgMy42MDhhNi4wMDIgNi4wMDIgMCAxIDAgMi43NTUgMTEuNjcyIDYuMDEgNi4wMSAwIDAgMCA0LjI3Ny00LjY0IDUgNSAwIDEgMS03LjAzLTcuMDN6Ii8+PC9zdmc+J30sMTQwODk1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjAgMTIwIiB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCI+PHBhdGggZmlsbD0iI0IyQjVCRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMjMgMzlhMzYgMzYgMCAwIDEgNzIgMHYxMy4xNWwxNS4xIDguNDQgMi4xNiAxLjItMS42NCAxLjg2LTEyLjg1IDE0LjU5IDMuNzMgNC4wM0w5OC41NyA4NSA5NSA4MS4xM1YxMTdINzd2LTEySDY3djlINTBWOTVINDB2MjJIMjNWODEuMjhsLTMuOCAzLjYxLTIuNzYtMi45IDQuMDUtMy44NC0xMi43Ny0xNC41LTEuNjQtMS44NiAyLjE2LTEuMkwyMyA1Mi4zNFYzOVptNzIgMzYuMzMgMTAuOTgtMTIuNDZMOTUgNTYuNzN2MTguNlpNMjMgNTYuOTJ2MTguMDNMMTIuMzUgNjIuODcgMjMgNTYuOTJaTTU5IDdhMzIgMzIgMCAwIDAtMzIgMzJ2NzRoOVY5MWgxOHYxOWg5di05aDE4djEyaDEwVjM5QTMyIDMyIDAgMCAwIDU5IDdabS03IDM2YTMgMyAwIDEgMS02IDAgMyAzIDAgMCAxIDYgMFptMTkgM2EzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZaIi8+PC9zdmc+J30sNDg3NzUwKGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgd2lkdGg9IjEyMCIgaGVpZ2h0PSIxMjAiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIzIDM5YTM2IDM2IDAgMCAxIDcyIDB2MTMuMTVsMTUuMSA4LjQ0IDIuMTYgMS4yLTEuNjQgMS44Ni0xMi44NSAxNC41OSAzLjczIDQuMDNMOTguNTcgODUgOTUgODEuMTNWMTE3SDc3di0xMkg2N3Y5SDUwVjk1SDQwdjIySDIzVjgxLjI4bC0zLjggMy42MS0yLjc2LTIuOSA0LjA1LTMuODQtMTIuNzctMTQuNS0xLjY0LTEuODYgMi4xNi0xLjJMMjMgNTIuMzRWMzlabTcyIDM2LjMzIDEwLjk4LTEyLjQ2TDk1IDU2LjczdjE4LjZaTTIzIDU2LjkydjE4LjAzTDEyLjM1IDYyLjg3IDIzIDU2LjkyWk01OSA3YTMyIDMyIDAgMCAwLTMyIDMydjc0aDlWOTFoMTh2MTloOXYtOWgxOHYxMmgxMFYzOUEzMiAzMiAwIDAgMCA1OSA3Wm0tNyAzNmEzIDMgMCAxIDEtNiAwIDMgMyAwIDAgMSA2IDBabTE5IDNhMyAzIDAgMSAwIDAtNiAzIDMgMCAwIDAgMCA2WiIvPjwvc3ZnPid9LDI2MTE3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSI+PGNpcmNsZSBjeD0iNiIgY3k9IjYiIHI9IjYiLz48cGF0aCBkPSJNMTAgMTBsNCA0Ii8+PC9nPjwvc3ZnPid9LDE0NzA3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZD0iTTMuMDYgNi4yOTVDMi4zNyA3LjM5NyAyIDguNjcgMiAxMGMwIDMuODY2IDMuMTM0IDcgNyA3czctMy4xMzQgNy03LTMuMTM0LTctNy03VjJjNC40MTggMCA4IDMuNTgyIDggOHMtMy41ODIgOC04IDgtOC0zLjU4Mi04LThjMC0xLjU1Ni40NDQtMy4wMDcgMS4yMTItNC4yMzZsLjg0OC41M3ptMCAwQzIuMzcgNy4zOTcgMiA4LjY3IDIgMTBjMCAzLjg2NiAzLjEzNCA3IDcgN3M3LTMuMTM0IDctNy0zLjEzNC03LTctN1YyYzQuNDE4IDAgOCAzLjU4MiA4IDhzLTMuNTgyIDgtOCA4LTgtMy41ODItOC04YzAtMS41NTYuNDQ0LTMuMDA3IDEuMjEyLTQuMjM2bC44NDguNTN6TTYgMi41TDkgMHY1TDYgMi41eiIvPjwvc3ZnPid9LDc2OTkzOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTMuNSAxMC41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTQuNSA4LjV2Mm0wIDV2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE0IDhoM3Y2aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTUuNSA2LjV2OW0tNy0xMWg0bS0yLTJ2NCIvPjwvZz48L3N2Zz4nfSw0OTUzOTYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNC41IDQuNWgydjZoLTJ6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNS41IDIuNXYybTAgNnYyIi8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMyA0aDN2NkgzeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNC41IDIuNXY5bTQgNGg0bS0yLTJ2NCIvPjwvZz48L3N2Zz4nfSwyODc4MzIoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDEwLjV2N20tMS03aDJtLTUgMXYtNG0tMyAydi00bS0zIDJ2LTQiLz48L3N2Zz4nfSwyMzE3NzAoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDIuNXY3bS0xIDBoMm0tNSAydi00bS0zIDd2LTRtLTMgNnYtNCIvPjwvc3ZnPid9LDY4MzM4MyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEwLjUgNi41djdtLTItNGg0Ii8+PC9zdmc+J30sNjQ0OTA1KGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNSA0aDN2MTJoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNi41IDE3LjV2LTE1Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMC41IDcuNWgydjRoLTJ6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDUuNXYybTAgNHYybS00IDJ2LTRtLTMgNXYtNG0tMyA1di00Ii8+PC9nPjwvc3ZnPid9LDYzNTI3MChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik05IDhoM3Y2SDl6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMC41IDYuNXY5Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNC41IDQuNWgydjExaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTUuNSAyLjV2Mm0tOSA0di00bS0zIDN2LTRtMTIgMTJ2MiIvPjwvZz48L3N2Zz4nfSwzODY3MjYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik02LjUgNi41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTcuNSA0LjV2Mm0wIDV2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE2IDVoM3Y2aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTcuNSAzLjV2OSIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTExIDNoM3YyaC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTIuNSAyLjV2M20tOCAxMXYtNG0tMiA2di00Ii8+PC9nPjwvc3ZnPid9LDEyMzcyOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTExLjUgOS41djhtLTQtOHYtNG04IDR2LTRtLTExIDJ2LTQiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMCA5aDN2NGgtM3oiLz48L2c+PC9zdmc+J30sNzI1NjAyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSA0LjV2MTBtLTQtM3YtNG0tMyA3di00Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTAgNGgzdjNoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNS41IDExLjV2LTQiLz48L2c+PC9zdmc+J30sMTI5Nzk0KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTAuNSA1LjVoMnY3aC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSAzLjV2Mm0wIDd2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDVoM3YzaC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTYuNSAzLjV2Ni4wN20tOSAzLjkzdi00bS0zIDZ2LTRtLTMgNnYtNCIvPjwvZz48L3N2Zz4nfSwyMTcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTAgN2gzdjhoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDUuNXYxMSIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTUuNSA3LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTYuNSA1LjV2Mm0wIDN2Mm0tOS0ydi00bS0zIDJ2LTRtLTMgMnYtNCIvPjwvZz48L3N2Zz4nfSwyNjc1ODcoZSl7CmUuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSA2LjV2N20tNCAwdi00bTggNHYtNG0tMTEgMnYtNCIvPjxwYXRoIGQ9Ik0xMC41IDEzLjVoMnYzaC0yeiIvPjwvZz48L3N2Zz4nfSw5MzMxMzgoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgOWgzdjRoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDkuNXYtMm0wLTV2Mm01IDN2N20wLTV2MiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTAuNSA0LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNy41IDEzLjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTYuNSA4LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMy41IDE3LjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTIuNSAxMi41aDJ2M2gtMnoiLz48L2c+PC9zdmc+J30sMjg1OTkzKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDdoM3Y0aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSAxNy41di0ybTAtNXYybTUtN3Y3bTAtM3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMC41IDEyLjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNy41IDEzLjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTYuNSA4LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMy41IDkuNXYtMm0wLTV2MiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMi41IDQuNWgydjNoLTJ6Ii8+PC9nPjwvc3ZnPid9LDc4NjU3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSA5LjV2OG0tNC05di00bS0zIDJ2LTQiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik04IDdoM3Y1SDh6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDExLjV2NCIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTMuNSA3LjVoMnY0aC0yeiIvPjwvZz48L3N2Zz4nfSw2Nzc3NyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSAxMS41djJtLTQgMnYtNG0tMyA2di00Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik04LjUgNy41aDJ2NGgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgMi41djUiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMyA3aDN2NWgtM3oiLz48L2c+PC9zdmc+J30sMzk5NDk0KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTEzIDRoM3YxMmgtM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEwLjUgMTEuNXYtNG0tMyAydi00bS0zIDJ2LTQiLz48L2c+PC9zdmc+J30sNDE0Nzk2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNMTMuNSA0LjVoMnYxMWgtMnoiLz48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTAuNSAxMi41di00bS0zIDZ2LTRtLTMgNnYtNCIvPjwvZz48L3N2Zz4nfSwxMzA2ODYoZSl7CmUuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNC41IDIuNXYxMSIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTMgNGgzdjhIM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgNC41djJtMCA3djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEzLjUgNi41aDJ2N2gtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSAxMi41djUiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik04IDE0aDN2Mkg4eiIvPjwvZz48L3N2Zz4nfSwxMjAwMzcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik0xMC41IDkuNWgydjNoLTJ6Ii8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTExLjUgOC41di02bS00IDEzdi00bTggNHYtNG0tMTEgNnYtNCIvPjwvZz48L3N2Zz4nfSwyMjAzNDEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMC41IDMuNXYxMyIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTkgOGgzdjRIOXoiLz48L2c+PC9zdmc+J30sMjIzNDgzKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTAuNSAzLjV2NW0wIDN2NSIvPjxwYXRoIGQ9Ik05LjUgOC41aDJ2M2gtMnoiLz48L2c+PC9zdmc+J30sNzQ0MjQwKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDEyaDN2NGgtM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE2LjUgMTAuNXY3Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTEgOGgzdjRoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMi41IDYuNXY3Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNNyA0aDN2NEg3eiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNOC41IDIuNXY3bS00IDF2LTRtLTIgNnYtNCIvPjwvZz48L3N2Zz4nfSw3MDI5NjcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgNGgzdjJoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDExLjV2LTJtMC03djJtNS0ydjUiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEwLjUgNC41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTcuNSAxNC41di0ybTAtN3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik02LjUgNy41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTMuNSAxNy41di0ybTAtN3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0yLjUgMTAuNWgydjVoLTJ6Ii8+PC9nPjwvc3ZnPid9LDgzNTE3NChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgOC41aDRtLTItMnY0bS03LTZoNG0tMi0ydjRtLTYgMmg0bS0yLTJ2NG0tMyA1di00bS0yIDZ2LTQiLz48L3N2Zz4nfSw4NzQ5NzMoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDExLjVoNG0tMi0ydjRtLTcgMmg0bS0yLTJ2NG0tNi02aDRtLTItMnY0bS0zLTV2LTRtLTIgMnYtNCIvPjwvc3ZnPid9LDc5MDA4MChlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE0IDEyIiB3aWR0aD0iMTQiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjcxIDEuMjlIMS4zdjkuNDJIMi43VjEuM3pNMS4zIDBDLjU4IDAgMCAuNTggMCAxLjI5djkuNDJDMCAxMS40Mi41OCAxMiAxLjI5IDEySDIuN0MzLjQyIDEyIDQgMTEuNDIgNCAxMC43MVYxLjNDNCAuNTggMy40MiAwIDIuNzEgMEgxLjN6TTcuNyAxLjI5SDYuM3Y5LjQySDcuN1YxLjN6TTYuMyAwQzUuNTggMCA1IC41OCA1IDEuMjl2OS40MmMwIC43MS41OCAxLjI5IDEuMjkgMS4yOUg3LjdDOC40MiAxMiA5IDExLjQyIDkgMTAuNzFWMS4zQzkgLjU4IDguNDIgMCA3LjcxIDBINi4zem01IDEuMjloMS40MnY5LjQySDExLjNWMS4zem0tMS4yOSAwQzEwIC41OCAxMC41OCAwIDExLjI5IDBoMS40MkMxMy40MiAwIDE0IC41OCAxNCAxLjI5djkuNDJjMCAuNzEtLjU4IDEuMjktMS4yOSAxLjI5SDExLjNjLS43MSAwLTEuMjktLjU4LTEuMjktMS4yOVYxLjN6Ii8+PC9zdmc+J30sNzU1MDQxKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSIjQURBRUIwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi41IDExaC0uNzlsLS4yOC0uMjdBNi40NyA2LjQ3IDAgMCAwIDEzIDYuNSA2LjUgNi41IDAgMSAwIDYuNSAxM2MxLjYxIDAgMy4wOS0uNTkgNC4yMy0xLjU3bC4yNy4yOHYuNzlsNSA0Ljk5TDE3LjQ5IDE2bC00Ljk5LTV6bS02IDBDNC4wMSAxMSAyIDguOTkgMiA2LjVTNC4wMSAyIDYuNSAyIDExIDQuMDEgMTEgNi41IDguOTkgMTEgNi41IDExeiIvPjwvc3ZnPid9LDE5OTc4NShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTAgMTAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNzU4Njk2IiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Ik0xLjEyNSA5LjExTDkuMTMgMS4xMDRNMS4xMjUgMS4xMDVMOS4xMyA5LjExIi8+PC9nPjwvc3ZnPid9LDgyMzM1OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgOCAzIiB3aWR0aD0iOCIgaGVpZ2h0PSIzIj48cGF0aCBkPSJNMCAwIEw0IDMgTDggMCBaIi8+PC9zdmc+J30sODQxODc3KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4IDMiIHdpZHRoPSI4IiBoZWlnaHQ9IjMiPjxwYXRoIGQ9Ik0wIDMgTDQgMCBMOCAzIFoiLz48L3N2Zz4nfSw1OTg1ODUoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSI+PGNpcmNsZSBjeD0iOC41IiBjeT0iOC41IiByPSIzIi8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEzLjUgOC41aDNNLjUgOC41aDNNOC41IDMuNXYtM00xMyA0bDItMk0yIDE1bDItMiIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0iYmV2ZWwiIGQ9Ik0yIDJsMiAyIi8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEzIDEzbDIgMk04LjUgMTYuNXYtMyIvPjwvZz48L3N2Zz4nfSw4OTMyNTEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDYgMjYiIHdpZHRoPSIzIiBoZWlnaHQ9IjEzIiBmaWxsPSJjdXJyZW50Q29sb3IiPjxjaXJjbGUgY3g9IjMiIGN5PSIzIiByPSIzIi8+PGNpcmNsZSBjeD0iMyIgY3k9IjEzIiByPSIzIi8+PGNpcmNsZSBjeD0iMyIgY3k9IjIzIiByPSIzIi8+PC9zdmc+J30sNzE3MTQxKGUsdCxvKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPW8ucCsibW9jay1kYXJrLjE2YjVmM2E0MzFmNTAyYjAzYWUzLnN2ZyJ9LDQ1ODA1OShlLHQsbyl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1vLnArIm1vY2stbGlnaHQuZDIwMTMxMzAxN2ViMmMxYjk4OWYuc3ZnIn0sMjIxMDYxKGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse2dldExvZ2dlcjooKT0+bSxnZXRSYXdMb2dIaXN0b3J5OigpPT51LHNlcmlhbGl6ZUxvZ0hpc3RvcnlFbnRyeTooKT0+X30pLGZ1bmN0aW9uKGUpe2VbZS5FUlJPUj0xXT0iRVJST1IiLGVbZS5XQVJOSU5HPTJdPSJXQVJOSU5HIixlW2UuSU5GTz0zXT0iSU5GTyIsZVtlLk5PUk1BTD00XT0iTk9STUFMIixlW2UuREVCVUc9NV09IkRFQlVHIn0oaXx8KGk9e30pKTtsZXQgbj0wO2NvbnN0IHI9W107bGV0IHM9bnVsbCxhPW51bGwsbD1udWxsLGM9bnVsbCxkPWkuV0FSTklORyxoPSExO2Z1bmN0aW9uIHUoZSx0KXtsZXQgbz1yLnJlZHVjZSgoKGUsdCk9PmUuY29uY2F0KHQpKSxbXSk7cmV0dXJuIG8uc29ydCgoKGUsdCk9PmUuaWQtdC5pZCkpLHZvaWQgMCE9PXQmJihvPW8uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihvPW8uc2xpY2UoLWUpKSxvfWZ1bmN0aW9uIF8oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9ZnVuY3Rpb24gcChlLHQsbyxyLHUpe2lmKHQ9PT1hJiZyLmlkPT09bClyZXR1cm47Y29uc3QgXz1uZXcgRGF0ZTtpZihlPD1pLk5PUk1BTCYmZnVuY3Rpb24oZSx0LG8saSxyLHMpeyJmdW5jdGlvbiI9PXR5cGVvZiBzdHJ1Y3R1cmVkQ2xvbmUmJih0PXN0cnVjdHVyZWRDbG9uZSh0KSksdD10LnNsaWNlKDAscz8/MWUzKTtjb25zdCBhPXtpZDpuLAptZXNzYWdlOnQsc3ViU3lzdGVtSWQ6aSx0aW1lc3RhbXA6TnVtYmVyKGUpfTtuKz0xLG8ucHVzaChhKSx2b2lkIDAhPT1yJiZvLmxlbmd0aD5yJiZvLnNwbGljZSgwLDEpfShfLHQsbyxyLmlkLHIubWF4Q291bnQsdSksZTw9ZCYmKCFyLmhpZ2hSYXRlfHxoKSYmKCFzfHxyLmlkLm1hdGNoKHMpKSl7Y29uc3Qgbz1fLnRvSVNPU3RyaW5nKCkrIjoiK3IuaWQrIjoiK3Q7c3dpdGNoKGUpe2Nhc2UgaS5ERUJVRzpjb25zb2xlLmRlYnVnKG8pO2JyZWFrO2Nhc2UgaS5JTkZPOmNhc2UgaS5OT1JNQUw6ci5jb2xvcj9jb25zb2xlLmxvZygiJWMiK28sImNvbG9yOiAiK3IuY29sb3IpOmNvbnNvbGUubG9nKG8pO2JyZWFrO2Nhc2UgaS5XQVJOSU5HOmNvbnNvbGUud2FybihvKTticmVhaztjYXNlIGkuRVJST1I6Y29uc29sZS5lcnJvcihvKX1hPXQsbD1yLmlkLG51bGwhPT1jJiZjbGVhclRpbWVvdXQoYyksYz1zZXRUaW1lb3V0KCgoKT0+e2E9bnVsbCxsPW51bGwsYz1udWxsfSksMWUzKX19ZnVuY3Rpb24gbShlLHQ9e30pe2NvbnN0IG89W107ci5wdXNoKG8pO2NvbnN0IG49T2JqZWN0LmFzc2lnbih0LHtpZDplfSk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4odCxpKT0+cChlLFN0cmluZyh0KSxvLG4saSl9cmV0dXJue2xvZ0RlYnVnOnMoaS5ERUJVRyksbG9nRXJyb3I6cyhpLkVSUk9SKSxsb2dJbmZvOnMoaS5JTkZPKSxsb2dOb3JtYWw6cyhpLk5PUk1BTCksbG9nV2FybjpzKGkuV0FSTklORyl9fX0sODA5NDM2KGUpeyJ1c2Ugc3RyaWN0Igo7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siZHVyIjoiMzUwbXMiLCJkdXItZmFzdCI6IjYwbXMiLCJlYXNlLWluLWxpa2UiOiJjdWJpYy1iZXppZXIoMC4zMywgMCwgMC4xMSwgMSkiLCJlYXNlLW91dC1saWtlIjoiY3ViaWMtYmV6aWVyKDAuODksIDAsIDAuNjcsIDEpIiwic2l6ZS1mZWVkLWl0ZW0td2lkdGgiOiI0ODBweCIsInNpemUtZmVlZC1oaWRlbnQiOiIyMHB4Iiwic2l6ZS1mZWVkLXZpZGVudCI6IjIwcHgiLCJzaXplLWJhc2UtaW5kZW50IjoiNHB4Iiwic2l6ZS1sYXlvdXQtc21hbGwtaG9yenBhZGRpbmciOiIxMnB4Iiwic2l6ZS1sYXlvdXQtaG9yenBhZGRpbmciOiIyMHB4Iiwic2l6ZS1kcmF3aW5ncy10b29sYmFyLWl0ZW0taGVpZ2h0IjoiMzhweCIsInNpemUtaGVhZGVyLWxpbmtpbmRlbnQiOiIxNXB4Iiwic2l6ZS1oZWFkZXItaGVpZ2h0IjoiNjRweCIsInNpemUtbmF2LWhlYWRlci1oZWlnaHQiOiI1OHB4Iiwic2l6ZS1zdGlja3ktc3ltYm9sLWhlYWRlci1oZWlnaHQiOiI2NHB4Iiwic2l6ZS1kaWFsb2ctZml4ZWQtaGVhZGVyLWhlaWdodCI6IjcycHgiLCJzaXplLXNpdGUtd2lkZ2V0LXBhZGRpbmciOiIyMHB4Iiwic2l6ZS1zaXRlLXdpZGdldC1wYWRkaW5nLXRhYmxldCI6IjEycHgiLCJzaXplLWNvbGxhcHNlLXRhYnMtaGVpZ2h0IjoiNTZweCIsInNpemUtbm8tc2Nyb2xsLWNob2ljZXItaGVpZ2h0IjoiNTZweCIsInNpemUtbWFpbi1jaGFydC1hcmVhLWluZGVudCI6IjRweCIsInNpemUtbWFpbi1jaGFydC1hcmVhLXJhZGl1cyI6IjAiLCJzaXplLXNlYXJjaGJhci1oZWlnaHQiOiI4MHB4Iiwic2l6ZS1zZWFyY2hiYXItaGVpZ2h0LXRhYmxldCI6IjU0cHgiLCJzaXplLXNlYXJjaGJhci1idG4td2lkdGgtdGFibGV0IjoiNjZweCIsInNpemUtY29udGVudC10b3AtdmluZGVudCI6IjQ4cHgiLCJzaXplLWxheW91dC13aWR0aCI6IjEwMjBweCIsInNpemUtbGF5b3V0LXdpZHRoLXdpZGUiOiIxNTIwcHgiLCJzaXplLWNoZWNrYm94LXNpZGUiOiIxOHB4Iiwic2l6ZS1jaGVja2JveC1jbGljay1leHBhbmQiOiIxMHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodC0teHNtYWxsIjoiMTlweCIsInNpemUtY29udHJvbC1pbnB1dC1oZWlnaHQtLXNtYWxsIjoiMjdweCIsInNpemUtY29udHJvbC1pbnB1dC1oZWlnaHQiOiIzNHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodC0tbGFyZ2UiOiI0OHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LXBhZGRpbmctaG9yeiI6IjEycHgiLCJzaXplLXRhYnMtaG9yei1pbmRlbnQiOiIxNnB4Iiwic2l6ZS1hdmF0YXItYm9yZGVyLXJhZGl1cyI6IjNweCIsInNpemUtY2hhcnQtdmlldy1zcGFjaW5nIjoiMjVweCIsInNpemUtY2hhcnQtdmlldy1zcGFjaW5nLXRhYmxldCI6IjIwcHgiLCJyYWRpdXMtZW1iZWQtd2lkZ2V0LXdyYXBwZXIiOiIzcHgiLCJ0eXBvZ3JhcGh5LXBsYXRmb3JtLXJlZ3VsYXItMTZweC1saW5lLWhlaWdodCI6IjI0cHgiLCJ0eXBvZ3JhcGh5LXBsYXRmb3JtLXJlZ3VsYXItMThweC1saW5lLWhlaWdodCI6IjI4cHgiLCJtZWRpYS1ub3RlYm9vayI6ImFsbCBhbmQgKG1heC13aWR0aDogMTUzMHB4KSIsIm1lZGlhLXRhYmxldCI6ImFsbCBhbmQgKG1heC13aWR0aDogMTAxOXB4KSIsIm1lZGlhLXBob25lIjoiYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkiLCJtZWRpYS1waG9uZS12ZXJ0aWNhbCI6ImFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIiwibWVkaWEtZXh0cmVtZS10aGluIjoiYWxsIGFuZCAobWF4LXdpZHRoOiAzMjlweCkiLCJtZWRpYS1zaG93LWRyYXdlciI6ImFsbCBhbmQgKG1heC13aWR0aDogNTY3cHgpIiwibWVkaWEtbWYtbGVnYWN5LXBob25lLXZlcnRpY2FsIjoiYWxsIGFuZCAobWluLXdpZHRoOiAzMzBweCkiLCJtZWRpYS1tZi1sZWdhY3ktcGhvbmUiOiJhbGwgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1ub3RlYm9vayI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTAyMHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1kZXNrdG9wLW1lZGl1bSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTQ4MHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1kZXNrdG9wIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxNTMxcHgpIiwibWVkaWEtbWYtcGhvbmUtdmVydGljYWwiOiJhbGwgYW5kIChtaW4td2lkdGg6IDMyMHB4KSIsIm1lZGlhLW1mLXBob25lLWxhbmRzY2FwZSI6ImFsbCBhbmQgKG1pbi13aWR0aDogNTY4cHgpIiwibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIjoiYWxsIGFuZCAobWluLXdpZHRoOiA3NjhweCkiLCJtZWRpYS1tZi10YWJsZXQtbGFuZHNjYXBlIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIiwibWVkaWEtbWYtbGFwdG9wIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIiwibWVkaWEtbWYtZGVza3RvcC1tZWRpdW0iOiJhbGwgYW5kIChtaW4td2lkdGg6IDE0NDBweCkiLCJtZWRpYS1tZi1kZXNrdG9wLWxhcmdlIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIiwibWVkaWEtbWYtZGVza3RvcC1leHRyYS1sYXJnZSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMjU2MHB4KSIsImNvbnRhaW5lci10YWJsZXQiOiIobWF4LXdpZHRoOiAxMDE5cHgpIiwiY29udGFpbmVyLXBob25lIjoiKG1heC13aWR0aDogNzY3cHgpIiwiY29udGFpbmVyLXBob25lLXZlcnRpY2FsIjoiKG1heC13aWR0aDogNDc5cHgpIiwiY29udGFpbmVyLW1mLXBob25lLXZlcnRpY2FsIjoiKG1pbi13aWR0aDogMzAwcHgpIiwiY29udGFpbmVyLW1mLXBob25lLWxhbmRzY2FwZSI6IihtaW4td2lkdGg6IDU0OHB4KSIsImNvbnRhaW5lci1tZi10YWJsZXQtdmVydGljYWwiOiIobWluLXdpZHRoOiA3MDJweCkiLCJjb250YWluZXItbWYtdGFibGV0LWxhbmRzY2FwZSI6IihtaW4td2lkdGg6IDk1OHB4KSIsImNvbnRhaW5lci1tZi1sYXB0b3AiOiIobWluLXdpZHRoOiAxMjE0cHgpIiwiY29udGFpbmVyLW1mLWRlc2t0b3AtbWVkaXVtIjoiKG1pbi13aWR0aDogMTM3NHB4KSIsImNvbnRhaW5lci1tZi1kZXNrdG9wLWxhcmdlIjoiKG1pbi13aWR0aDogMTg1NHB4KSIsImNvbnRhaW5lci1tZi1kZXNrdG9wLWV4dHJhLWxhcmdlIjoiKG1pbi13aWR0aDogMjQ5NHB4KSIsIm1lZGlhLWxhcHRvcCI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQzOXB4KSIsIm1lZGlhLWxhcHRvcC1hbmQtZGVza3RvcC1tZWRpdW0iOiJhbGwgYW5kIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTlweCkiLCJtZWRpYS1sYW5kc2NhcGUiOiJhbGwgYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzNzVweCkgYW5kIChtYXgtZGV2aWNlLWhlaWdodDogODEycHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkiLCJtZWRpYS1waG9uZS1sYW5kc2NhcGUiOiJhbGwgYW5kIChtYXgtaGVpZ2h0OiA0NDBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSIsIm1lZGlhLXdpZGdldGJhci1icmVha3BvaW50IjoiYWxsIGFuZCAobWF4LXdpZHRoOiAxMDY0cHgpIiwiei1pbmRleC1jb250ZW50LXBhZ2UiOjEsInotaW5kZXgtY2hhcnQtbGVnZW5kIjo2LCJ6LWluZGV4LWNoYXJ0LXJpZ2h0LWNvcm5lci1jb250cm9scyI6Nywiei1pbmRleC1sb2FkaW5nLXNjcmVlbiI6OCwiei1pbmRleC1kcm9wZG93biI6OTksInotaW5kZXgtdG9vbGJhci1wb3B1cC1tZW51IjoxMDAsInotaW5kZXgtdG9vbHRpcCI6MTAwMCwiei1pbmRleC11c2VyLWxpbmstcG9wdXAiOjkwMCwiei1pbmRleC1zdGlja3ktc2VhcmNoLWJhciI6MTAxLCJ6LWluZGV4LXJlc2l6YWJsZS1kcmF3ZXIiOjgwMCwiei1pbmRleC1mdWxsc2NyZWVuIjoxMDIsImRpc2FibGVkLXN0YXRlLW9wYWNpdHkiOjAuNSwic2l6ZS1nYXAtbWluaW11bSI6IjIwcHgiLCJzaXplLWdhcC1tZWRpdW0iOiI0MHB4Iiwic2l6ZS1nYXAtbWF4aW11bSI6IjEwMHB4In0nKQp9LDI1NTUxNihlKXsidXNlIHN0cmljdCIKO2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7InVzIjp7InRpdGxlIjoiVVNBIiwic2NyZWVuZXJOYW1lIjoiYW1lcmljYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL05ld19Zb3JrIiwiZGVmYXVsdEV4Y2hhbmdlIjoiVVMiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkFNRVgiLCJOQVNEQVEiLCJOWVNFIiwiT1RDIiwiVVMiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIk5BU0RBUSIsIk5ZU0UiLCJOWVNFIEFSQ0EiLCJPVEMiXSwiZ3JvdXAiOiJOb3J0aCBBbWVyaWNhIiwibWFya2V0Um91dGUiOiJ1c2EvIn0sImFlIjp7InRpdGxlIjoiVW5pdGVkIEFyYWIgRW1pcmF0ZXMiLCJzY3JlZW5lck5hbWUiOiJ1YWUiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9EdWJhaSIsImRlZmF1bHRFeGNoYW5nZSI6IkFEWCIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiREZNIiwiQURYIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJERk0iLCJBRFgiLCJOQVNEQVFEVUJBSSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJ1YWUvIn0sImFyIjp7InRpdGxlIjoiQXJnZW50aW5hIiwic2NyZWVuZXJOYW1lIjoiYXJnZW50aW5hIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvQXJnZW50aW5hL0J1ZW5vc19BaXJlcyIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQkNCQSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiQllNQSIsIkJDQkEiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiQkNCQSIsImdyb3VwIjoiTWV4aWNvIGFuZCBTb3V0aCBBbWVyaWNhIiwibWFya2V0Um91dGUiOiJhcmdlbnRpbmEvIn0sImF0Ijp7InRpdGxlIjoiQXVzdHJpYSIsInNjcmVlbmVyTmFtZSI6ImF1c3RyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1ZpZW5uYSIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiVklFIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJWSUUiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiVklFIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImF1c3RyaWEvIn0sImF1Ijp7InRpdGxlIjoiQXVzdHJhbGlhIiwic2NyZWVuZXJOYW1lIjoiYXVzdHJhbGlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkF1c3RyYWxpYS9TeWRuZXkiLCJleGNoYW5nZXNTdG9ja3MiOlsiQVNYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImF1c3RyYWxpYS8ifSwiYmQiOnsidGl0bGUiOiJCYW5nbGFkZXNoIiwic2NyZWVuZXJOYW1lIjoiYmFuZ2xhZGVzaCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0RoYWthIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkRTRUJEIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRFNFQkQiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiYmFuZ2xhZGVzaC8ifSwiYmUiOnsidGl0bGUiOiJCZWxnaXVtIiwic2NyZWVuZXJOYW1lIjoiYmVsZ2l1bSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnJ1c3NlbHMiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkVVUk9ORVhUX0JSVSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRCUlUiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiRVVST05FWFRfQlJVIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImJlbGdpdW0vIn0sImJoIjp7InRpdGxlIjoiQmFocmFpbiIsInNjcmVlbmVyTmFtZSI6ImJhaHJhaW4iLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9CYWhyYWluIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJBSFJBSU4iXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoiYmFocmFpbi8ifSwiYnIiOnsidGl0bGUiOiJCcmF6aWwiLCJzY3JlZW5lck5hbWUiOiJicmF6aWwiLCJzY3JlZW5lclRpbWV6b25lIjoiQW1lcmljYS9TYW9fUGF1bG8iLCJleGNoYW5nZXNTdG9ja3MiOlsiQk1GQk9WRVNQQSJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiYnJhemlsLyJ9LCJiZyI6eyJ0aXRsZSI6IkJ1bGdhcmlhIiwic2NyZWVuZXJOYW1lIjoiYnVsZ2FyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1NvZmlhIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJTRVNPRiJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiYnVsZ2FyaWEvIn0sImNhIjp7InRpdGxlIjoiQ2FuYWRhIiwic2NyZWVuZXJOYW1lIjoiY2FuYWRhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvVG9yb250byIsImV4Y2hhbmdlc1N0b2NrcyI6WyJUU1giLCJUU1hWIiwiQ1NFIiwiTkVPIl0sImdyb3VwIjoiTm9ydGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiY2FuYWRhLyJ9LCJjaCI6eyJ0aXRsZSI6IlN3aXR6ZXJsYW5kIiwic2NyZWVuZXJOYW1lIjoic3dpdHplcmxhbmQiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1p1cmljaCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJTSVgiLCJCWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoic3dpdHplcmxhbmQvIn0sImNsIjp7InRpdGxlIjoiQ2hpbGUiLCJzY3JlZW5lck5hbWUiOiJjaGlsZSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL1NhbnRpYWdvIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJDUyJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiY2hpbGUvIn0sImNuIjp7InRpdGxlIjoiTWFpbmxhbmQgQ2hpbmEiLCJ0dkxvY2FsZSI6InpoX0NOIiwic2NyZWVuZXJOYW1lIjoiY2hpbmEiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9Ib25nX0tvbmciLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlNTRSIsIlNaU0UiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIlNTRSIsIlNaU0UiLCJTSEZFIiwiWkNFIiwiQ0ZGRVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiY2hpbmEvIn0sImNvIjp7InRpdGxlIjoiQ29sb21iaWEiLCJzY3JlZW5lck5hbWUiOiJjb2xvbWJpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL0JvZ290YSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVkMiXSwiZ3JvdXAiOiJNZXhpY28gYW5kIFNvdXRoIEFtZXJpY2EiLCJtYXJrZXRSb3V0ZSI6ImNvbG9tYmlhLyJ9LCJociI6eyJ0aXRsZSI6IkNyb2F0aWEiLCJzY3JlZW5lck5hbWUiOiJjcm9hdGlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9aYWdyZWIiLCJleGNoYW5nZXNTdG9ja3MiOlsiWlNFIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiWlNFIl0sImRlZmF1bHRFeGNoYW5nZSI6IlpTRSIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJjcm9hdGlhLyJ9LCJjeSI6eyJ0aXRsZSI6IkN5cHJ1cyIsInNjcmVlbmVyTmFtZSI6ImN5cHJ1cyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQ3lwcnVzIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkNTRUNZIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQ1NFQ1kiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImN5cHJ1cy8ifSwiY3oiOnsidGl0bGUiOiJDemVjaCBSZXB1YmxpYyIsInNjcmVlbmVyTmFtZSI6ImN6ZWNoIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9DemVjaCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJQU0VDWiJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlBTRUNaIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJjemVjaC8ifSwiZGUiOnsidGl0bGUiOiJHZXJtYW55IiwidHZMb2NhbGUiOiJkZV9ERSIsInNjcmVlbmVyTmFtZSI6Imdlcm1hbnkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0JlcmxpbiIsImRlZmF1bHRFeGNoYW5nZSI6IlhFVFIiLCJleGNoYW5nZXNTdG9ja3MiOlsiRldCIiwiU1dCIiwiWEVUUiIsIkRVUyIsIkhBTSIsIkhBTiIsIk1VTiIsIlRSQURFR0FURSIsIkxTIiwiTFNYIiwiR0VUVEVYIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRldCIiwiU1dCIiwiWEVUUiIsIkRVUyIsIkhBTSIsIkhBTiIsIk1VTiIsIlRSQURFR0FURSIsIkxTIiwiTFNYIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJnZXJtYW55LyJ9LCJkayI6eyJ0aXRsZSI6IkRlbm1hcmsiLCJzY3JlZW5lck5hbWUiOiJkZW5tYXJrIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9Db3BlbmhhZ2VuIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk9NWENPUCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZGVubWFyay8ifSwiZWUiOnsidGl0bGUiOiJFc3RvbmlhIiwic2NyZWVuZXJOYW1lIjoiZXN0b25pYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvVGFsbGlubiIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhUU0UiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImVzdG9uaWEvIn0sImVnIjp7InRpdGxlIjoiRWd5cHQiLCJzY3JlZW5lck5hbWUiOiJlZ3lwdCIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvQ2Fpcm8iLCJleGNoYW5nZXNTdG9ja3MiOlsiRUdYIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6ImVneXB0LyJ9LCJlcyI6eyJ0aXRsZSI6IlNwYWluIiwic2NyZWVuZXJOYW1lIjoic3BhaW4iLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL01hZHJpZCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCTUUiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InNwYWluLyJ9LCJldSI6eyJ0aXRsZSI6IkV1cm9wZWFuIFVuaW9uIiwic2NyZWVuZXJOYW1lIjoiZXVyb25leHQiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1BhcmlzIiwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6W10sImV4Y2hhbmdlc1N0b2NrcyI6WyJFVVJPTkVYVCIsIkVVUk9ORVhUQ09NTSJdLCJncm91cCI6IkV1cm9wZSJ9LCJmaSI6eyJ0aXRsZSI6IkZpbmxhbmQiLCJzY3JlZW5lck5hbWUiOiJmaW5sYW5kIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9IZWxzaW5raSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhIRVgiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImZpbmxhbmQvIn0sImZyIjp7InRpdGxlIjoiRnJhbmNlIiwic2NyZWVuZXJOYW1lIjoiZnJhbmNlIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9QYXJpcyIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRVVST05FWFRfUEFSIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJFVVJPTkVYVFBBUiJdLCJkZWZhdWx0RXhjaGFuZ2UiOiJFVVJPTkVYVF9QQVIiLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZnJhbmNlLyJ9LCJnZSI6eyJ0aXRsZSI6Ikdlb3JnaWEifSwiZ3IiOnsidGl0bGUiOiJHcmVlY2UiLCJzY3JlZW5lck5hbWUiOiJncmVlY2UiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0F0aGVucyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJBVEhFWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZ3JlZWNlLyJ9LCJoayI6eyJ0aXRsZSI6IkhvbmcgS29uZywgQ2hpbmEiLCJzY3JlZW5lck5hbWUiOiJob25na29uZyIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0hvbmdfS29uZyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJIS0VYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6Imhvbmcta29uZy8ifSwiaHUiOnsidGl0bGUiOiJIdW5nYXJ5Iiwic2NyZWVuZXJOYW1lIjoiaHVuZ2FyeSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnVkYXBlc3QiLCJleGNoYW5nZXNTdG9ja3MiOlsiQkVUIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQkVUIl0sImRlZmF1bHRFeGNoYW5nZSI6IkJFVCIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJodW5nYXJ5LyJ9LCJpZCI6eyJ0aXRsZSI6IkluZG9uZXNpYSIsInNjcmVlbmVyTmFtZSI6ImluZG9uZXNpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0pha2FydGEiLCJleGNoYW5nZXNTdG9ja3MiOlsiSURYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImluZG9uZXNpYS8ifSwiaWUiOnsidGl0bGUiOiJJcmVsYW5kIiwic2NyZWVuZXJOYW1lIjoiaXJlbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvRHVibGluIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkVVUk9ORVhURFVCIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJpcmVsYW5kLyJ9LCJpbCI6eyJ0aXRsZSI6IklzcmFlbCIsInR2TG9jYWxlIjoiaGVfSUwiLCJzY3JlZW5lck5hbWUiOiJpc3JhZWwiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9KZXJ1c2FsZW0iLCJleGNoYW5nZXNTdG9ja3MiOlsiVEFTRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJpc3JhZWwvIn0sImluIjp7InRpdGxlIjoiSW5kaWEiLCJzY3JlZW5lck5hbWUiOiJpbmRpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0tvbGthdGEiLCJleGNoYW5nZXNTdG9ja3MiOlsiQlNFIiwiTlNFIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImluZGlhLyJ9LCJpciI6eyJ0aXRsZSI6IklyYW4ifSwiaXMiOnsidGl0bGUiOiJJY2VsYW5kIiwic2NyZWVuZXJOYW1lIjoiaWNlbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJBdGxhbnRpYy9SZXlramF2aWsiLCJleGNoYW5nZXNTdG9ja3MiOlsiT01YSUNFIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJpY2VsYW5kLyJ9LCJpdCI6eyJ0aXRsZSI6Ikl0YWx5Iiwic2NyZWVuZXJOYW1lIjoiaXRhbHkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1JvbWUiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk1JTCIsIkVVUk9UTFgiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIk1JTCIsIkVVUk9UTFgiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Iml0YWx5LyJ9LCJqcCI6eyJ0aXRsZSI6IkphcGFuIiwidHZMb2NhbGUiOiJqYSIsInNjcmVlbmVyTmFtZSI6ImphcGFuIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvVG9reW8iLCJkZWZhdWx0RXhjaGFuZ2UiOiJUU0UiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk5BRyIsIlRTRSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiVFNFIiwiTkFHIiwiRlNFIiwiU0FQU0UiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiamFwYW4vIn0sImtlIjp7InRpdGxlIjoiS2VueWEiLCJzY3JlZW5lck5hbWUiOiJrZW55YSIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvTmFpcm9iaSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJOU0VLRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJrZW55YS8ifSwia3AiOnsidGl0bGUiOiJOb3J0aCBLb3JlYSJ9LCJrciI6eyJ0aXRsZSI6IlNvdXRoIEtvcmVhIiwidHZMb2NhbGUiOiJrciIsInNjcmVlbmVyTmFtZSI6ImtvcmVhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvU2VvdWwiLCJleGNoYW5nZXNTdG9ja3MiOlsiS1JYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImtvcmVhLyJ9LCJrdyI6eyJ0aXRsZSI6Ikt1d2FpdCIsInNjcmVlbmVyTmFtZSI6Imt1d2FpdCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0t1d2FpdCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJLU0UiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoia3V3YWl0LyJ9LCJsayI6eyJ0aXRsZSI6IlNyaSBMYW5rYSIsInNjcmVlbmVyTmFtZSI6InNyaWxhbmthIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvQ29sb21ibyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJDU0VMSyJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJzcmktbGFua2EvIn0sImx0Ijp7InRpdGxlIjoiTGl0aHVhbmlhIiwic2NyZWVuZXJOYW1lIjoibGl0aHVhbmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9WaWxuaXVzIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk9NWFZTRSJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoibGl0aHVhbmlhLyJ9LCJsdiI6eyJ0aXRsZSI6IkxhdHZpYSIsInNjcmVlbmVyTmFtZSI6ImxhdHZpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvUmlnYSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhSU0UiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImxhdHZpYS8ifSwibHUiOnsidGl0bGUiOiJMdXhlbWJvdXJnIiwic2NyZWVuZXJOYW1lIjoibHV4ZW1ib3VyZyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvTHV4ZW1ib3VyZyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJMVVhTRSJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkxVWFNFIl0sImRlZmF1bHRFeGNoYW5nZSI6IkxVWFNFIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Imx1eGVtYm91cmcvIn0sIm14Ijp7InRpdGxlIjoiTWV4aWNvIiwic2NyZWVuZXJOYW1lIjoibWV4aWNvIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvTWV4aWNvX0NpdHkiLCJleGNoYW5nZXNTdG9ja3MiOlsiQk1WIiwiQklWQSJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoibWV4aWNvLyJ9LCJtYSI6eyJ0aXRsZSI6Ik1vcm9jY28iLCJzY3JlZW5lck5hbWUiOiJtb3JvY2NvIiwic2NyZWVuZXJUaW1lem9uZSI6IkFmcmljYS9Nb3JvY2NvIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkNTRU1BIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQ1NFTUEiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoibW9yb2Njby8ifSwibXkiOnsidGl0bGUiOiJNYWxheXNpYSIsInR2TG9jYWxlIjoibXNfTVkiLCJzY3JlZW5lck5hbWUiOiJtYWxheXNpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL1NpbmdhcG9yZSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJNWVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoibWFsYXlzaWEvIn0sIm5nIjp7InRpdGxlIjoiTmlnZXJpYSIsInNjcmVlbmVyTmFtZSI6Im5pZ2VyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiQWZyaWNhL0xhZ29zIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk5TRU5HIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6Im5pZ2VyaWEvIn0sIm5sIjp7InRpdGxlIjoiTmV0aGVybGFuZHMiLCJzY3JlZW5lck5hbWUiOiJuZXRoZXJsYW5kcyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQW1zdGVyZGFtIiwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6WyJFVVJPTkVYVF9BTVMiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIkVVUk9ORVhUQU1TIl0sImRlZmF1bHRFeGNoYW5nZSI6IkVVUk9ORVhUX0FNUyIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJuZXRoZXJsYW5kcy8ifSwibm8iOnsidGl0bGUiOiJOb3J3YXkiLCJzY3JlZW5lck5hbWUiOiJub3J3YXkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL09zbG8iLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk9TTCJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRPU0UiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiT1NMIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Im5vcndheS8ifSwibnoiOnsidGl0bGUiOiJOZXcgWmVhbGFuZCIsInNjcmVlbmVyTmFtZSI6Im5ld3plYWxhbmQiLCJzY3JlZW5lclRpbWV6b25lIjoiUGFjaWZpYy9BdWNrbGFuZCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJOWlgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoibmV3LXplYWxhbmQvIn0sInBlIjp7InRpdGxlIjoiUGVydSIsInNjcmVlbmVyTmFtZSI6InBlcnUiLCJzY3JlZW5lclRpbWV6b25lIjoiQW1lcmljYS9MaW1hIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJWTCJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoicGVydS8ifSwicGgiOnsidGl0bGUiOiJQaGlsaXBwaW5lcyIsInNjcmVlbmVyTmFtZSI6InBoaWxpcHBpbmVzIiwic2NyZWVuZXJUaW1lem9uZSI6IlBoaWxpcHBpbmVzL01hbmlsYSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJQU0UiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoicGhpbGlwcGluZXMvIn0sInBrIjp7InRpdGxlIjoiUGFraXN0YW4iLCJzY3JlZW5lck5hbWUiOiJwYWtpc3RhbiIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0thcmFjaGkiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlBTWCJdLCJleGNoYW5nZXNTdG9ja3MiOlsiUFNYIl0sImRlZmF1bHRFeGNoYW5nZSI6IlBTWCIsImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6InBha2lzdGFuLyJ9LCJwbCI6eyJ0aXRsZSI6IlBvbGFuZCIsInNjcmVlbmVyTmFtZSI6InBvbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvV2Fyc2F3IiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkdQVyIsIk5FV0NPTk5FQ1QiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InBvbGFuZC8ifSwicHQiOnsidGl0bGUiOiJQb3J0dWdhbCIsInNjcmVlbmVyTmFtZSI6InBvcnR1Z2FsIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9MaXNib24iLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkVVUk9ORVhUX0xJUyJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRMSVMiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiRVVST05FWFRfTElTIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InBvcnR1Z2FsLyJ9LCJxYSI6eyJ0aXRsZSI6IlFhdGFyIiwic2NyZWVuZXJOYW1lIjoicWF0YXIiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9RYXRhciIsImV4Y2hhbmdlc1N0b2NrcyI6WyJRU0UiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoicWF0YXIvIn0sInJvIjp7InRpdGxlIjoiUm9tYW5pYSIsInNjcmVlbmVyTmFtZSI6InJvbWFuaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0J1Y2hhcmVzdCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVkIiXSwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6WyJCVkIiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiQlZCIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InJvbWFuaWEvIn0sInJzIjp7InRpdGxlIjoiU2VyYmlhIiwic2NyZWVuZXJOYW1lIjoic2VyYmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9CZWxncmFkZSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCRUxFWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoic2VyYmlhLyJ9LCJydSI6eyJ0aXRsZSI6IlJ1c3NpYSIsInNjcmVlbmVyTmFtZSI6InJ1c3NpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvTW9zY293IiwiZXhjaGFuZ2VzU3RvY2tzIjpbIlJVUyJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoicnVzc2lhLyJ9LCJzYSI6eyJ0aXRsZSI6IlNhdWRpIEFyYWJpYSIsInR2TG9jYWxlIjoiYXJfQUUiLCJzY3JlZW5lck5hbWUiOiJrc2EiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9SaXlhZGgiLCJleGNoYW5nZXNTdG9ja3MiOlsiVEFEQVdVTCJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJrc2EvIn0sInNlIjp7InRpdGxlIjoiU3dlZGVuIiwic2NyZWVuZXJOYW1lIjoic3dlZGVuIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9TdG9ja2hvbG0iLCJleGNoYW5nZXNTdG9ja3MiOlsiTkdNIiwiT01YU1RPIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiTkdNIiwiT01YU1RPIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzd2VkZW4vIn0sInNnIjp7InRpdGxlIjoiU2luZ2Fwb3JlIiwic2NyZWVuZXJOYW1lIjoic2luZ2Fwb3JlIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvU2luZ2Fwb3JlIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIlNHWCJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJzaW5nYXBvcmUvIn0sInNrIjp7InRpdGxlIjoiU2xvdmFraWEiLCJzY3JlZW5lck5hbWUiOiJzbG92YWtpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnJhdGlzbGF2YSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCU1NFIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzbG92YWtpYS8ifSwic2kiOnsidGl0bGUiOiJTbG92ZW5pYSIsInNjcmVlbmVyTmFtZSI6InNsb3ZlbmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9ManVibGphbmEiLCJleGNoYW5nZXNTdG9ja3MiOlsiTEpTRSJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkxKU0UiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiTEpTRSIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzbG92ZW5pYS8ifSwidGgiOnsidGl0bGUiOiJUaGFpbGFuZCIsInR2TG9jYWxlIjoidGhfVEgiLCJzY3JlZW5lck5hbWUiOiJ0aGFpbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0Jhbmdrb2siLCJleGNoYW5nZXNTdG9ja3MiOlsiU0VUIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6InRoYWlsYW5kLyJ9LCJ0biI6eyJ0aXRsZSI6IlR1bmlzaWEiLCJzY3JlZW5lck5hbWUiOiJ0dW5pc2lhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFmcmljYS9UdW5pcyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVk1UIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6InR1bmlzaWEvIn0sInRyIjp7InRpdGxlIjoiVHVya2V5Iiwic2NyZWVuZXJOYW1lIjoidHVya2V5Iiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9Jc3RhbmJ1bCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCSVNUIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJ0dXJrZXkvIn0sInR3Ijp7InRpdGxlIjoiVGFpd2FuLCBDaGluYSIsInR2TG9jYWxlIjoiemhfVFciLCJzY3JlZW5lck5hbWUiOiJ0YWl3YW4iLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9UYWlwZWkiLCJleGNoYW5nZXNTdG9ja3MiOlsiVFdTRSIsIlRQRVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoidGFpd2FuLyJ9LCJnYiI6eyJ0aXRsZSI6IlVuaXRlZCBLaW5nZG9tIiwic2NyZWVuZXJOYW1lIjoidWsiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0xvbmRvbiIsImRlZmF1bHRFeGNoYW5nZSI6IkxTRSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJMU0UiLCJMU0lOIiwiQVFVSVMiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InVuaXRlZC1raW5nZG9tLyJ9LCJ2ZSI6eyJ0aXRsZSI6IlZlbmV6dWVsYSIsInNjcmVlbmVyTmFtZSI6InZlbmV6dWVsYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL0NhcmFjYXMiLCJleGNoYW5nZXNTdG9ja3MiOlsiQlZDViJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoidmVuZXp1ZWxhLyJ9LCJ2biI6eyJ0aXRsZSI6IlZpZXRuYW0iLCJ0dkxvY2FsZSI6InZpX1ZOIiwic2NyZWVuZXJOYW1lIjoidmlldG5hbSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0hvX0NoaV9NaW5oIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkhPU0UiLCJITlgiLCJVUENPTSJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJ2aWV0bmFtLyJ9LCJ6YSI6eyJ0aXRsZSI6IlNvdXRoIEFmcmljYSIsInNjcmVlbmVyTmFtZSI6InJzYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvSm9oYW5uZXNidXJnIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkpTRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJzb3V0aC1hZnJpY2EvIn0sInd3Ijp7InRpdGxlIjoiV29ybGR3aWRlIiwic2NyZWVuZXJOYW1lIjoiZ2xvYmFsIiwiZXhjaGFuZ2VzU3RvY2tzIjpbXX19JykKfSwxMjc3MTEoZSl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNtZSI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19LCJib3Zlc3BhIjp7IklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjk5OTk5fX0sInFlY29tcWEiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fSwic2FudGFuZGVyY29tYXIiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fX0nKX0sNTAyNTg3KGUpeyJ1c2Ugc3RyaWN0Igo7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siZnJlZSI6eyJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjF9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjF9LCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjoyfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0IjoxfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0Ijo1fSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjF9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6NTAsImxpbWl0IjozLCJjb21wbGV4X2xpbWl0IjowLCJwcmltaXRpdmVfbGltaXQiOjN9LCJTQ1JFRU5FUl9JTlRFUlZBTFMiOnsiaW50ZXJ2YWwiOlsiMUQiLCIxVyIsIjFNIl19LCJTVFVEWV9URU1QTEFURVMiOnsibGltaXQiOjF9LCJTSU1VTFRBTkVPVVNfQ09OTkVDVElPTlMiOnsibGltaXQiOjF9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyfSwiSURFQV9TT0NJQUxfTElOS1MiOnsic29jaWFscyI6WyJUd2l0dGVyIiwiWW91dHViZSJdfSwiTVVMVElDT0xPUl9GTEFHR0VEX1NZTUJPTFMiOnsibGltaXQiOjF9LCJXQVRDSExJU1RfU1lNQk9MUyI6eyJsaW1pdCI6MzB9LCJWSURFT19JREVBU19MRU5HVEgiOnsibGltaXQiOjIwfSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6MX0sIlBPUlRGT0xJT19UUkFOU0FDVElPTlMiOnsibGltaXQiOjIwMDB9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjIwfX0sInBybyI6eyJEUkFXSU5HUyI6e30sIkJBQ0tURVNUSU5HX0NIQVJUX0VYUEFORCI6e30sIkJBQ0tURVNUSU5HX0VYVEVOREVEX01FVFJJQ1MiOnt9LCJCQUNLVEVTVElOR19FWFBPUlRfWExTWCI6e30sIkJBQ0tURVNUSU5HX0VYUE9SVF9DU1YiOnt9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIlBFUlNPTkFMX1NVUFBPUlQiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjV9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjJ9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjIsInByaW1pdGl2ZV9saW1pdCI6Mn0sIkNVU1RPTV9JTlRFUlZBTFMiOnt9LCJNVUxUSVBMRV9XQVRDSExJU1RTIjp7fSwiSU1QT1JUX1dBVENITElTVFMiOnt9LCJFWFBPUlRfV0FUQ0hMSVNUUyI6e30sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjV9LCJGVU5EQU1FTlRBTFNfRk9SRUNBU1QiOnt9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjR9LCJUVl9QUk9TVFVESUVTIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LWNoYXJ0cGF0dGVybnMiXX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MTB9LCJUVl9WT0xVTUVCWVBSSUNFIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LXZvbHVtZWJ5cHJpY2UiXX0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0IjoxfSwiVElDS19CWV9USUNLX1BVU0hfREFUQSI6e30sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6MjAsImNvbXBsZXhfbGltaXQiOjIwLCJwcmltaXRpdmVfbGltaXQiOjIwfSwiU0NSRUVORVJfQVVUT19SRUZSRVNIIjp7fSwiU0NSRUVORVJfTkVXX0FVVE9fUkVGUkVTSCI6e30sIlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEEiOnt9LCJTQ1JFRU5FUl9ORVdfU0hPV19SRVNUUklDVEVEX0RBVEEiOnt9LCJTSE9XX0JPTkRTX1JFU1RSSUNURURfREFUQSI6e30sIlBPUlRGT0xJT19EQVRBX0xJTUlUIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6M30sIlBPUlRGT0xJT19UUkFOU0FDVElPTlMiOnsibGltaXQiOjUwMDB9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjUwfSwiU0NSRUVORVJfSU5URVJWQUxTIjp7ImludGVydmFsIjpbIjFtIiwiNW0iLCIxNW0iLCIzMG0iLCIxaCIsIjJoIiwiNGgiLCIxRCIsIjFXIiwiMU0iXX0sIk5PX1NQT05TT1JFRF9BRFMiOnsiZGlzYWJsZV9vbl9saXRlX3BsYW4iOiJleGNsdWRlX21vYmlsZSJ9LCJTVFVEWV9URU1QTEFURVMiOnsibGltaXQiOjk5OTk5fSwiU0lNVUxUQU5FT1VTX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoxfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MTB9LCJJRENfQVZBSUxBQkxFX0RFTEFZIjp7fSwiU1RBVFVTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0IjoxfSwiTVVMVElGTEFHR0VEX1NZTUJPTFNfTElTVFMiOnt9LCJTSE9XUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQUxFUlRTX1dFQkhPT0siOnt9LCJBTEVSVFNfT05fRUFSTklOR1MiOnt9LCJBTEVSVFNfT05fRlVOREFNRU5UQUxfTUVUUklDUyI6e30sIkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlkiOnt9LCJQVUJMSVNIX1BST1RFQ1RFRF9TQ1JJUFRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJJREVBX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIlR3aXR0ZXIiLCJZb3V0dWJlIl19LCJFWFRFTkRFRF9TT0NJQUxfTElOS1MiOnsic29jaWFscyI6WyJGYWNlYm9vayIsIkluc3RhZ3JhbSJdLCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiTVVMVElfTU9OSVRPUiI6e30sIk1VTFRJQ09MT1JfRkxBR0dFRF9TWU1CT0xTIjp7ImxpbWl0Ijo3fSwiSU5UUkFEQVlfRVhDSEFOR0UiOnt9LCJWT0xVTUVfUFJPRklMRSI6e30sIlNUUkVBTVNfQUNDRVNTIjp7ImZvbGxvd2VycyI6MTB9LCJTTVNfMkZBX1ZFUklGSUNBVElPTiI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiU09DSUFMX0FDVElWSVRZIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJXQVRDSExJU1RfU1lNQk9MUyI6eyJsaW1pdCI6MTAwMH0sIkZJRUxEU19QRVJNSVNTSU9OUyI6eyJpdGVtcyI6WyJyZWZib25kcyJdfSwiQ1VTVE9NX1JBTkdFX0JBUlMiOnt9LCJGQVNURVNUX0RBVEFfRkxPVyI6e30sIlNFU1NJT05fVk9MVU1FX1BST0ZJTEUiOnt9LCJTSE9XX0VURl9IT0xESU5HU19EQVRBIjp7fX0sInByb19yZWFsdGltZSI6eyJleHRlbmRzIjoicHJvIiwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6MTB9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjR9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjQsInByaW1pdGl2ZV9saW1pdCI6NH0sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjEwfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0Ijo3fSwiVFZfUFJPU1RVRElFUyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di1wcm9zdHVkaWVzIiwidHYtY2hhcnRwYXR0ZXJucyJdfSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjl9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjEwMCwiY29tcGxleF9saW1pdCI6MTAwLCJwcmltaXRpdmVfbGltaXQiOjEwMH0sIkFMRVJUU19NVUxUSUNPTkRJVElPTlMiOnsiY29uZGl0aW9uX2xpbWl0Ijo1fSwiQ0hBVF9BU1NJU1RBTlQiOnsibGltaXQiOjUsImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJDQU5fRURJVF9QVUJMSUNfQ0hBVFMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjIwfSwiRVhQT1JUX0NIQVJUX0RBVEEiOnt9LCJDVVNUT01fRk9STVVMQVMiOnt9LCJJTlRSQURBWV9FWE9USUNfQ0hBUlRTIjp7fSwiS0FHSV9SRU5LTyI6e30sIklOVFJBREFZX1NQUkVBRCI6e30sIkNVU1RPTV9DSEFUUyI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjR9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjc1fX0sInByb19wcmVtaXVtIjp7ImV4dGVuZHMiOiJwcm9fcmVhbHRpbWUiLCJCQVJfREVUQUxJWkFUSU9OIjp7fSwiU0NSSVBUX0VYRUNVVElPTl9PTl9ISVNUT1JZX0JBUlMiOnt9LCJDSEFSVF9TVE9SQUdFIjp7ImxpbWl0Ijo5OTk5OX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6OH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6NiwicHJpbWl0aXZlX2xpbWl0Ijo2fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MjV9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjEwfSwiRlVOREFNRU5UQUxfR1JBUEhTX0xBUkdFX1RJTUVfUkFOR0UiOnt9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6OTk5OTksImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJDSEFSVF9QQVRURVJOUyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di1jaGFydHBhdHRlcm5zIiwidHYtY2hhcnRfcGF0dGVybnMiXX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MjB9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6MjR9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjQwMCwiY29tcGxleF9saW1pdCI6NDAwLCJwcmltaXRpdmVfbGltaXQiOjQwMCwid2F0Y2hsaXN0X2xpbWl0IjoyLCJvdmVyYWxsX3dhdGNobGlzdF9saW1pdCI6NX0sIlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyI6eyJsaW1pdCI6Mn0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjUwfSwiSURFQV9TSUdOQVRVUkUiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIlBST0ZJTEVfV0VCU0lURV9GSUVMRCI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6NH0sIkJBUl9SRVBMQVlfMVMiOnt9LCJBTEVSVFNfTk9fRVhQSVJBVElPTiI6e30sIlBVQkxJU0hfSU5WSVRFX09OTFlfU0NSSVBUUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiRVhQT1JUX0NIQVJUX0RBVEEiOnt9LCJERUVQX0hJU1RPUllfQkFDS1RFU1QiOnt9LCJBTEVSVFNfT05fU0VDT05EUyI6e30sIlBFUk1BTkVOVF9TVFJFQU1fUkVDT1JEUyI6e30sIkVYVEVOREVEX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIkZhY2Vib29rIiwiSW5zdGFncmFtIiwiV2Vic2l0ZSJdLCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiU0VDT05EU19JTlRFUlZBTFMiOnt9LCJUUE9fUEVSSU9ESUMiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtdm9sdW1lYnlwcmljZSJdfSwiVFBPX0NIQVJUX1NUWUxFIjp7fSwiVk9MVU1FX0NBTkRMRVMiOnt9LCJWSURFT19JREVBU19MRU5HVEgiOnsibGltaXQiOjYwfSwiVk9MVU1FX0ZPT1RQUklOVCI6e30sIlBJTkVfU0NSRUVORVIiOnt9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0Ijo1fSwiUE9SVEZPTElPX0hPTERJTkdTIjp7ImxpbWl0IjoxMDB9LCJTT0NJQUxfVFJVU1RFRF9VU0VSIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJGT0xMT1dFUlNfT05MWV9NSU5EUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfX0sInByb19leHBlcnQiOnsiZXh0ZW5kcyI6InByb19wcmVtaXVtIiwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MzB9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjE1fSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjI5fSwiTVVMVElQTEVfQ0hBUlRTIjp7ImxpbWl0IjoxMH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6MTIsInByaW1pdGl2ZV9saW1pdCI6MTJ9LCJISVNUT1JJQ0FMX0JBUlMiOnsibGltaXQiOjI1fSwiU0VSVkVSX1NJREVfQUxFUlRTIjp7Im92ZXJhbGxfbGltaXQiOjIwMDAsImxpbWl0Ijo2MDAsImNvbXBsZXhfbGltaXQiOjYwMCwicHJpbWl0aXZlX2xpbWl0Ijo2MDAsIndhdGNobGlzdF9saW1pdCI6MTAsIm92ZXJhbGxfd2F0Y2hsaXN0X2xpbWl0IjoyMH0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjgwfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6Nn0sIkJBUl9SRVBMQVlfMVMiOnt9LCJCQVJfUkVQTEFZXzFUIjp7fSwiRVhQT1JUX0ZJTkFOQ0lBTFNfREFUQSI6e30sIlRJQ0tfSU5URVJWQUxTIjp7fSwiRklSU1RfUFJJT1JJVFlfU1VQUE9SVCI6e30sIkJVWV9QUk9fREFUQSI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjZ9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjEyNX19LCJwcm9fcHJlbWl1bV9leHBlcnQiOnsiZXh0ZW5kcyI6InByb19leHBlcnQiLCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo1MH0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MjV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6NDl9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjE2fSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0Ijo5OTk5OSwicHJpbWl0aXZlX2xpbWl0IjoyNX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6NDB9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6NDAwMCwibGltaXQiOjEwMDAsImNvbXBsZXhfbGltaXQiOjEwMDAsInByaW1pdGl2ZV9saW1pdCI6MTAwMCwid2F0Y2hsaXN0X2xpbWl0IjoxNSwib3ZlcmFsbF93YXRjaGxpc3RfbGltaXQiOjMwfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MjAwfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6MTB9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0Ijo3fSwiUE9SVEZPTElPX0hPTERJTkdTIjp7ImxpbWl0IjoxNTB9fX0nKQp9LDM4OTk5NChlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ1sidXMiLCJhZSIsImFyIiwiYXQiLCJhdSIsImJkIiwiYmUiLCJiZyIsImJoIiwiYnIiLCJjYSIsImNoIiwiY2wiLCJjbiIsImNvIiwiaHIiLCJjeSIsImN6IiwiZGUiLCJkayIsImVlIiwiZWciLCJlcyIsImZpIiwiZnIiLCJnciIsImhrIiwiaHUiLCJpZCIsImllIiwiaWwiLCJpbiIsImlzIiwiaXQiLCJqcCIsImtlIiwia3IiLCJrdyIsImxrIiwibHQiLCJsdiIsImx1IiwibXgiLCJtYSIsIm15IiwibmciLCJubCIsIm5vIiwibnoiLCJwZSIsInBoIiwicGsiLCJwbCIsInB0IiwicWEiLCJycyIsInJ1Iiwicm8iLCJzYSIsInNlIiwic2ciLCJzaSIsInNrIiwidGgiLCJ0biIsInRyIiwidHciLCJnYiIsInZlIiwidm4iLCJ6YSJdJyl9fSxlPT57ZS5PKDAsWzQ2MDI0LDg0MzA2LDQ2OTA3LDk0MjMyLDMyODE2LDE3MDg3LDQzMzI1LDM5MDUsMzU3OTQsMTU5MzIsNTQ2ODEsNTE1MDgsNDk1MTgsMzI2MzIsMTU2MzQsNzUzMDQsNTIwOTUsMzgwMDIsNDQwMzEsNDM3OTIsNzAzNjQsOTQ4OCwzNzg2Nyw2MjY4MSwzMDIwMCwzMTM5NiwzMjM4NywxMzE0OCw0OTI2NSw3NTA0LDk5ODI3LDM2MTY2LDc2NTc3LDY1ODYyLDgwMjA3LDEyMTgxLDYxNDk1LDMwMjg4XSwoKCk9PntyZXR1cm4gdD04MzIzOTIsZShlLnM9dCk7dmFyIHR9KSk7ZS5PKCl9XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}}]}
